From 9b3f4d3ae7c6031d00ef8fdc5a2098efadcbf6b0 Mon Sep 17 00:00:00 2001 From: bherr2 Date: Fri, 8 Apr 2022 15:02:00 +0000 Subject: [PATCH] Production deploy -- 9c2c324ba5baa484cf2e08bfb516e56233b01259 --- docs/ccf-api/coverage.html | 2 +- docs/ccf-api/interfaces/GtexTissue.html | 948 +------------------ docs/ccf-api/js/search/search_index.js | 4 +- docs/ccf-api/miscellaneous/variables.html | 2 +- docs/ccf-eui/components/AppWebComponent.html | 3 +- docs/ccf-eui/js/search/search_index.js | 4 +- main-es2015.js | 2 +- main-es5.js | 2 +- wc.js | 2 +- 9 files changed, 60 insertions(+), 909 deletions(-) diff --git a/docs/ccf-api/coverage.html b/docs/ccf-api/coverage.html index 9042128ac..7f54a9460 100644 --- a/docs/ccf-api/coverage.html +++ b/docs/ccf-api/coverage.html @@ -434,7 +434,7 @@ GtexTissue 0 % - (0/26) + (0/4) diff --git a/docs/ccf-api/interfaces/GtexTissue.html b/docs/ccf-api/interfaces/GtexTissue.html index 970627791..41553c790 100644 --- a/docs/ccf-api/interfaces/GtexTissue.html +++ b/docs/ccf-api/interfaces/GtexTissue.html @@ -82,48 +82,6 @@
Properties
@@ -247,9 +115,9 @@

Properties

- - colorHex - + + mappedInHubmap + @@ -257,7 +125,7 @@

Properties

- colorHex: string + mappedInHubmap: boolean @@ -265,7 +133,7 @@

Properties

- Type : string + Type : boolean @@ -280,9 +148,9 @@

Properties

- - colorRgb - + + rnaSeqSampleSummary + @@ -290,7 +158,7 @@

Properties

- colorRgb: string + rnaSeqSampleSummary: literal type @@ -298,7 +166,7 @@

Properties

- Type : string + Type : literal type @@ -313,9 +181,9 @@

Properties

- - datasetId - + + tissueSiteDetailId + @@ -323,7 +191,7 @@

Properties

- datasetId: string + tissueSiteDetailId: string @@ -342,759 +210,44 @@

Properties

- - - - - - - - - - - - - - - - - - - -
- - eGeneCount - - - - -
- eGeneCount: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - expressedGeneCount - - - - -
- expressedGeneCount: number - -
- Type : number - -
- - - - - - - - - - - - - - - - -
- - hasEGenes - - - - -
- hasEGenes: - -
- - - - - - - - - - - - - - - - -
- - hasSGenes - - - - -
- hasSGenes: - -
- - - - - - - - - - - - - - - - -
- - mappedInHubmap - - - - -
- mappedInHubmap: - -
- - - - - - - - - - - - - +
+
import { CCFDatabaseOptions } from 'ccf-database';
+import { RequestHandler } from 'express';
+import { readFileSync } from 'fs';
+import fetch from 'node-fetch';
 
-
-
-
-                        
-
- - rnaSeqAgeMaxFemale - - - - -
- rnaSeqAgeMaxFemale: number - -
- Type : number + + -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqAgeMaxMale - - - - -
- rnaSeqAgeMaxMale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqAgeMeanFemale - - - - -
- rnaSeqAgeMeanFemale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqAgeMeanMale - - - - -
- rnaSeqAgeMeanMale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqAgeMinFemale - - - - -
- rnaSeqAgeMinFemale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqAgeMinMale - - - - -
- rnaSeqAgeMinMale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqAndGenotypeSampleCount - - - - -
- rnaSeqAndGenotypeSampleCount: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqSampleCount - - - - -
- rnaSeqSampleCount: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqSampleCountFemale - - - - -
- rnaSeqSampleCountFemale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - rnaSeqSampleCountMale - - - - -
- rnaSeqSampleCountMale: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - samplingSite - - - - -
- samplingSite: string - -
- Type : string - -
- - - - - - - - - - - - - - - - - - - -
- - sGeneCount - - - - -
- sGeneCount: number - -
- Type : number - -
- - - - - - - - - - - - - - - - - - - -
- - tissueSite - - - - -
- tissueSite: string - -
- Type : string - -
- - - - - - - - - - - - - - - - - - - -
- - tissueSiteDetail - - - - -
- tissueSiteDetail: string - -
- Type : string - -
- - - - - - - - - - - - - - - - - - - -
- - tissueSiteDetailAbbr - - - - -
- tissueSiteDetailAbbr: string - -
- Type : string - -
- - - - - - - - - - - - - - - - - - - -
- - tissueSiteDetailId - - - - -
- tissueSiteDetailId: string - -
- Type : string - -
- - - - - - - - - - - - - - - - - - - -
- - uberonId - - - - -
- uberonId: string - -
- Type : string - -
- - - - -
-
import { CCFDatabaseOptions } from 'ccf-database';
-import { RequestHandler } from 'express';
-import { readFileSync } from 'fs';
-import fetch from 'node-fetch';
-
-import { AutoPruneLRUCache } from '../../../utils/auto-prune-lru-cache';
-import { RequestCache } from '../../../utils/request-cache';
-import { JsonLdObj } from 'jsonld/jsonld-spec';
-import { get } from '../../../environment';
+import { AutoPruneLRUCache } from '../../../utils/auto-prune-lru-cache';
+import { RequestCache } from '../../../utils/request-cache';
+import { JsonLdObj } from 'jsonld/jsonld-spec';
+import { get } from '../../../environment';
 
 export interface GtexTissue {
-  colorHex: string;
-  colorRgb: string;
-  datasetId: string;
-  eGeneCount: number;
-  expressedGeneCount: number;
-  hasEGenes: true;
-  hasSGenes: true;
-  mappedInHubmap: true;
-  rnaSeqAgeMaxFemale: number;
-  rnaSeqAgeMaxMale: number;
-  rnaSeqAgeMeanFemale: number;
-  rnaSeqAgeMeanMale: number;
-  rnaSeqAgeMinFemale: number;
-  rnaSeqAgeMinMale: number;
-  rnaSeqAndGenotypeSampleCount: number;
-  rnaSeqSampleCount: number;
-  rnaSeqSampleCountFemale: number;
-  rnaSeqSampleCountMale: number;
-  sGeneCount: number;
-  samplingSite: string;
-  tissueSite: string;
-  tissueSiteDetail: string;
-  tissueSiteDetailAbbr: string;
+  // NOTE: The API response includes more fields, but we only map the ones we actually use here
   tissueSiteDetailId: string;
-  uberonId: string;
+  mappedInHubmap: boolean;
+  rnaSeqSampleSummary: {
+    totalCount: number;
+    female: {
+      ageMax: number;
+      ageMin: number;
+      ageMean: number;
+      count: number;
+    };
+    male: {
+      ageMax: number;
+      ageMin: number;
+      ageMean: number;
+      count: number;
+    };
+  };
 }
 
 const DEFAULT_GTEX_RUI_LOCATIONS = 'projects/ccf-eui/src/assets/gtex/data/rui_locations.jsonld';
-const GTEX_API_URL = 'https://gtexportal.org/rest/v1/dataset/tissueInfo?datasetId=gtex_v8&format=json';
+const GTEX_API_URL = 'https://gtexportal.org/api/v2/tissueSiteDetail';
 
 async function getLocations(): Promise<unknown> {
   try {
@@ -1104,8 +257,8 @@ 

Properties

const jsonld: JsonLdObj = JSON.parse(data); const results = jsonld['@graph'] as JsonLdObj[]; - const response: { tissueInfo: GtexTissue[] } = await fetch(GTEX_API_URL).then(r => r.json()); - const mappedEntries = response.tissueInfo.filter(entry => entry.mappedInHubmap); + const response: GtexTissue[] = await fetch(GTEX_API_URL).then(r => r.json()); + const mappedEntries = response.filter(entry => entry.mappedInHubmap); for (const tissue of mappedEntries) { updateEntry(results, tissue, 'Female'); updateEntry(results, tissue, 'Male'); @@ -1119,13 +272,10 @@

Properties

export function updateEntry(resultsList: JsonLdObj[], tissueInfo: GtexTissue, sex: 'Male' | 'Female'): void { const matchingEntry = resultsList.find(entry => entry['@id']?.includes(tissueInfo.tissueSiteDetailId) && (entry.label as string).includes(sex)); - let newLabel = ''; if (matchingEntry) { const index = resultsList.indexOf(matchingEntry); - newLabel = sex === 'Male' ? - `Males (n=${tissueInfo.rnaSeqSampleCountMale}), Mean Age ${tissueInfo.rnaSeqAgeMeanMale} (range ${tissueInfo.rnaSeqAgeMinMale}-${tissueInfo.rnaSeqAgeMaxMale})` : - `Females (n=${tissueInfo.rnaSeqSampleCountFemale}), Mean Age ${tissueInfo.rnaSeqAgeMeanFemale} (range ${tissueInfo.rnaSeqAgeMinFemale}-${tissueInfo.rnaSeqAgeMaxFemale})`; - resultsList[index].label = newLabel; + const sexStats = sex === 'Male' ? tissueInfo.rnaSeqSampleSummary.male : tissueInfo.rnaSeqSampleSummary.female; + resultsList[index].label = `${sex}s (n=${sexStats.count}) Mean Age ${sexStats.ageMean} (range ${sexStats.ageMin} - ${sexStats.ageMax})`; resultsList[index].sex = sex; } } diff --git a/docs/ccf-api/js/search/search_index.js b/docs/ccf-api/js/search/search_index.js index fdc31b453..4be0d8c7c 100644 --- a/docs/ccf-api/js/search/search_index.js +++ b/docs/ccf-api/js/search/search_index.js @@ -1,4 +1,4 @@ var COMPODOC_SEARCH_INDEX = { - "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/interfaces/AppOptions.html",[0,0.099,1,1.69]],["body/interfaces/AppOptions.html",[0,0.116,1,2.783,2,0.732,3,0.732,4,1.03,5,0.732,6,0.606,7,2.413,8,3.887,9,1.987,10,0.606,11,1.31,12,1.539,13,3.553,14,4.275,15,0.492,16,0.064,17,1.646,18,2.413,19,3.056,20,1.673,21,3.07,22,3.07,23,1.566,24,3.07,25,3.07,26,3.887,27,2.413,28,3.056,29,3.056,30,2.531,31,3.887,32,3.056,33,3.887,34,3.056,35,1.31,36,0.932,37,3.056,38,0.872,39,3.887,40,3.056,41,1.03,42,1.989,43,3.056,44,3.056,45,1.42,46,1.11,47,3.056,48,3.056,49,2.128,50,3.056,51,3.056,52,3.056,53,3.056,54,3.056,55,3.056,56,3.056,57,3.056,58,3.887,59,3.056,60,3.056,61,3.056,62,3.056,63,2.413,64,3.056,65,3.056,66,3.056,67,3.056,68,3.056,69,3.056,70,0.038,71,0.048,72,0.038]],["title/interfaces/CCFDatabaseInstance.html",[0,0.099,73,1.206]],["body/interfaces/CCFDatabaseInstance.html",[0,0.121,2,0.762,3,0.762,4,1.071,5,0.762,6,0.631,10,0.631,11,1.343,15,0.641,16,0.064,17,1.538,35,1.343,36,1.043,38,1.243,41,1.071,46,0.907,70,0.039,71,0.049,72,0.039,73,1.852,74,2.509,75,1.674,76,2.509,77,3.123,78,4.701,79,2.181,80,1.343,81,3.177,82,3.177,83,2.509,84,3.177,85,3.177,86,3.177,87,2.594,88,3.177,89,1.852,90,2.594,91,3.177,92,1.071,93,3.177,94,2.509,95,3.177,96,3.177,97,3.177,98,2.594,99,3.177,100,3.177,101,3.177,102,2.068,103,3.177,104,3.177,105,3.177,106,2.509,107,2.509,108,3.177,109,2.068]],["title/interfaces/CacheOptions.html",[0,0.099,110,1.69]],["body/interfaces/CacheOptions.html",[0,0.113,2,0.709,3,0.709,4,0.997,5,0.709,6,0.587,10,0.587,11,1.284,12,1.761,15,0.613,16,0.065,17,1.284,20,2.305,23,0.997,35,1.284,36,0.913,38,1.345,41,0.997,46,1.269,49,2.085,70,0.036,71,0.047,72,0.036,92,0.997,109,1.926,110,2.741,111,2.336,112,1.375,113,2.138,114,2.138,115,2.189,116,1.77,117,1.508,118,1.62,119,0.997,120,0.709,121,1.284,122,2.959,123,3.808,124,2.959,125,2.959,126,2.336,127,2.085,128,2.959,129,2.959,130,2.959,131,2.085,132,1.62,133,2.085,134,1.926,135,1.957,136,2.336,137,3.808,138,3.007,139,3.808,140,2.959,141,2.336,142,2.959,143,3.808,144,2.336,145,2.959,146,2.959,147,3.808,148,2.336,149,2.959]],["title/interfaces/DatabaseCacheOptions.html",[0,0.099,150,1.421]],["body/interfaces/DatabaseCacheOptions.html",[0,0.135,2,0.635,3,0.635,4,0.894,5,0.635,6,0.526,9,1.647,10,0.526,11,1.194,12,1.687,15,0.57,16,0.065,17,1.497,23,0.894,35,1.345,36,0.957,38,1.14,41,1.194,42,1.726,45,2.124,46,1.268,70,0.033,71,0.044,72,0.033,73,1.232,75,1.345,77,1.726,79,2.185,80,0.894,87,1.726,89,1.232,92,1.194,113,2.064,114,2.064,115,2.124,116,1.647,117,1.403,118,1.451,119,0.894,120,0.635,121,1.436,127,1.94,131,1.94,132,1.451,133,1.94,135,1.855,150,2.185,151,1.726,152,1.726,153,2.307,154,2.307,155,2.093,156,1.403,157,1.726,158,2.093,159,3.364,160,1.726,161,2.89,162,2.307,163,2.798,164,2.093,165,2.093,166,2.093,167,1.726,168,2.093,169,2.093,170,2.093,171,2.798,172,2.093,173,2.093,174,1.451,175,2.093,176,1.726,177,1.232,178,1.451,179,2.093,180,2.093,181,2.093,182,2.798,183,2.093,184,2.093,185,2.093,186,1.451,187,2.093,188,2.093,189,2.093,190,2.093,191,2.093,192,1.726,193,2.093,194,2.093,195,2.093,196,2.093]],["title/interfaces/DatabaseLoaderOptions.html",[0,0.099,9,1.206]],["body/interfaces/DatabaseLoaderOptions.html",[0,0.135,2,0.637,3,0.637,4,0.896,5,0.637,6,0.528,9,1.858,10,0.528,11,1.197,12,1.406,15,0.572,16,0.065,17,1.498,23,0.896,35,1.347,36,0.958,38,1.141,41,1.197,42,1.731,45,2.125,46,1.269,70,0.033,71,0.044,72,0.033,73,1.236,75,1.541,77,1.731,79,2.433,80,0.896,87,1.731,89,1.236,92,1.197,113,1.651,114,1.651,115,1.651,116,1.651,117,1.406,118,1.456,119,0.896,120,0.637,121,1.574,127,1.944,131,1.944,132,1.456,133,1.944,135,1.858,150,2.335,151,1.731,152,1.731,153,2.312,154,2.312,155,2.1,156,1.406,157,1.731,158,2.1,159,3.368,160,1.731,161,2.894,162,2.312,163,2.804,164,2.1,165,2.1,166,2.1,167,1.731,168,2.1,169,2.1,170,2.1,171,2.804,172,2.1,173,2.1,174,1.456,175,2.1,176,1.731,177,1.236,178,1.456,179,2.1,180,2.1,181,2.1,182,2.804,183,2.1,184,2.1,185,2.1,186,1.456,187,2.1,188,2.1,189,2.1,190,2.1,191,2.1,192,1.731,193,2.1,194,2.1,195,2.1,196,2.1]],["title/interfaces/GtexTissue.html",[0,0.099,197,1.69]],["body/interfaces/GtexTissue.html",[0,0.071,2,0.449,3,0.449,4,1.114,5,0.665,6,0.551,10,0.551,11,0.935,15,0.793,16,0.064,17,1.462,23,0.632,35,1.114,36,0.792,38,1.367,41,1.114,45,2.329,46,0.792,49,1.809,70,0.034,71,0.034,72,0.034,75,0.632,79,1.519,80,0.632,89,0.871,90,1.806,92,1.114,98,1.806,113,0.871,114,0.871,115,2.37,116,1.29,117,1.099,118,1.026,119,0.632,120,0.449,121,1.114,131,1.519,132,1.026,133,1.026,134,1.22,138,1.48,156,1.099,157,1.22,160,1.22,161,1.22,162,1.22,178,1.519,186,1.026,197,2.377,198,1.22,199,1.22,200,3.652,201,3.652,202,3.652,203,3.652,204,3.652,205,3.652,206,3.652,207,3.652,208,3.652,209,3.652,210,3.652,211,3.652,212,3.652,213,3.652,214,3.652,215,3.652,216,3.652,217,3.652,218,3.652,219,3.652,220,3.652,221,3.652,222,3.652,223,3.652,224,3.652,225,1.874,226,1.48,227,2.191,228,1.48,229,3.652,230,1.874,231,1.48,232,1.874,233,1.806,234,1.48,235,1.22,236,1.48,237,2.191,238,1.22,239,1.874,240,1.874,241,1.22,242,1.874,243,1.874,244,1.874,245,1.874,246,1.48,247,2.191,248,1.874,249,1.874,250,1.874,251,2.775,252,1.874,253,1.874,254,2.775,255,1.874,256,1.874,257,2.609,258,2.775,259,2.775,260,3.304,261,1.48,262,1.48,263,1.874,264,1.874,265,1.48,266,1.874,267,2.151,268,1.48,269,2.775,270,1.874,271,1.874,272,1.874,273,1.874,274,3.304,275,1.874,276,1.874,277,1.874,278,2.775,279,2.191,280,1.874,281,2.775,282,1.874,283,1.874,284,1.874,285,1.874,286,1.874,287,1.874,288,1.874,289,1.874,290,1.874,291,1.22,292,1.48,293,1.874,294,3.304,295,1.874,296,1.874]],["title/classes/RequestCache.html",[156,1.028,297,1.421]],["body/classes/RequestCache.html",[3,0.655,4,0.921,5,0.655,6,0.89,10,0.542,12,1.708,15,0.694,16,0.064,17,0.921,35,0.921,36,0.655,38,1.032,46,1.032,70,0.058,71,0.044,72,0.034,89,2.266,90,3,98,1.779,109,2.638,112,1.27,120,0.655,121,1.512,141,3.541,144,2.855,148,2.158,153,2.92,156,1.432,238,1.779,261,2.158,262,2.158,268,2.158,297,1.496,298,2.733,299,3.541,300,2.354,301,4.608,302,3.616,303,3.616,304,3.616,305,2.733,306,4.312,307,4.052,308,2.733,309,3.405,310,2.733,311,4.312,312,4.312,313,3.616,314,4.876,315,4.829,316,2.733,317,4.052,318,3.616,319,2.733,320,3.616,321,2.733,322,3.616,323,2.733,324,2.733,325,2.733,326,2.733,327,2.733]],["title/changelog.html",[328,1.427,329,1.2,330,1.427]],["body/changelog.html",[0,0.117,2,0.21,3,0.74,11,0.295,12,0.346,13,0.69,15,0.141,16,0.045,18,0.69,20,1.865,41,0.295,63,0.69,70,0.011,71,0.018,72,0.04,75,0.666,80,1.495,92,1.148,102,0.978,106,1.187,107,2.278,115,0.406,135,1.435,136,0.69,167,0.978,174,0.479,176,0.569,177,1.584,178,2.373,186,1.579,231,2.438,238,0.978,241,1.286,246,1.187,257,3.09,265,1.56,267,0.978,279,1.187,309,0.69,329,1.082,330,0.978,331,1.187,332,0.69,333,0.69,334,2.574,335,1.503,336,1.503,337,1.976,338,2.346,339,4.992,340,2.885,341,1.852,342,3.26,343,0.874,344,0.874,345,2.346,346,0.874,347,1.503,348,3.647,349,1.56,350,2.278,351,0.874,352,1.503,353,1.976,354,0.874,355,0.874,356,2.061,357,1.976,358,0.874,359,1.976,360,3.706,361,0.874,362,1.503,363,0.874,364,1.503,365,3.09,366,0.874,367,0.874,368,0.874,369,3.834,370,3.913,371,0.874,372,0.874,373,0.874,374,0.874,375,2.086,376,0.874,377,0.874,378,1.503,379,0.69,380,0.874,381,1.503,382,2.346,383,2.346,384,0.874,385,1.503,386,1.976,387,0.874,388,0.874,389,0.69,390,1.503,391,0.874,392,0.874,393,2.885,394,1.878,395,2.086,396,1.56,397,0.874,398,3.535,399,3.535,400,2.642,401,2.642,402,2.086,403,0.874,404,1.503,405,0.874,406,1.976,407,2.574,408,3.834,409,2.885,410,1.503,411,0.874,412,0.874,413,1.503,414,3.647,415,1.56,416,0.874,417,2.885,418,2.642,419,0.874,420,0.874,421,2.642,422,0.874,423,0.874,424,0.874,425,0.874,426,1.976,427,0.874,428,1.187,429,1.503,430,0.874,431,2.574,432,3.546,433,0.874,434,0.874,435,2.88,436,2.642,437,1.56,438,0.874,439,3.984,440,2.574,441,0.874,442,0.874,443,2.086,444,2.086,445,0.874,446,1.503,447,0.874,448,0.874,449,1.976,450,1.503,451,0.874,452,0.874,453,1.503,454,1.503,455,1.503,456,1.503,457,0.874,458,1.976,459,0.874,460,0.874,461,0.69,462,0.874,463,1.56,464,1.503,465,1.503,466,0.874,467,0.874,468,0.874,469,4.16,470,0.874,471,1.503,472,1.503,473,1.503,474,2.346,475,1.503,476,0.874,477,0.874,478,0.874,479,0.874,480,1.976,481,0.874,482,1.503,483,0.874,484,0.874,485,1.187,486,2.885,487,1.503,488,0.874,489,0.69,490,0.874,491,0.874,492,2.642,493,2.346,494,0.874,495,1.976,496,1.503,497,2.885,498,1.187,499,1.503,500,2.346,501,0.874,502,0.874,503,1.187,504,2.346,505,2.642,506,0.874,507,0.874,508,0.874,509,0.874,510,0.874,511,1.503,512,1.503,513,0.874,514,1.503,515,0.874,516,0.69,517,1.503,518,0.874,519,1.503,520,0.874,521,0.874,522,1.852,523,0.874,524,0.874,525,0.874,526,0.874,527,0.874,528,1.503,529,0.874,530,0.874,531,0.69,532,0.874,533,0.874,534,0.874,535,0.874,536,1.503,537,0.874,538,0.874,539,0.874,540,0.874,541,0.874,542,1.503,543,0.874,544,2.885,545,0.874,546,0.874,547,1.976,548,1.976,549,1.503,550,0.874,551,1.503,552,0.874,553,0.69,554,0.69,555,0.874,556,1.503,557,1.503,558,0.874,559,0.874,560,1.527,561,0.874,562,0.874,563,1.503,564,1.503,565,0.874,566,0.874,567,1.503,568,1.503,569,0.874,570,1.503,571,2.346,572,1.976,573,0.874,574,0.874,575,0.874,576,0.874,577,0.69,578,0.69,579,0.874,580,1.503,581,0.874,582,0.874,583,0.874,584,0.874,585,1.503,586,2.346,587,0.874,588,0.874,589,0.874,590,0.874,591,2.885,592,1.976,593,0.874,594,0.874,595,1.976,596,1.503,597,1.503,598,1.503,599,2.346,600,0.874,601,0.69,602,2.346,603,0.874,604,0.874,605,1.503,606,0.874,607,0.874,608,0.874,609,0.874,610,0.874,611,2.346,612,0.874,613,1.976,614,2.346,615,0.874,616,1.976,617,2.642,618,1.503,619,1.503,620,1.503,621,1.503,622,1.976,623,2.346,624,2.642,625,1.503,626,1.976,627,0.874,628,0.874,629,3.088,630,1.976,631,0.874,632,2.346,633,2.346,634,3.407,635,0.874,636,0.874,637,0.874,638,0.874,639,0.874,640,0.874,641,1.503,642,0.874,643,1.503,644,0.874,645,0.874,646,0.874,647,0.874,648,1.503,649,0.874,650,1.976,651,0.874,652,0.874,653,1.503,654,1.56,655,1.503,656,1.976,657,0.874,658,0.874,659,0.874,660,1.503,661,0.874,662,0.874,663,0.874,664,0.874,665,0.874,666,0.874,667,0.874,668,0.874,669,0.874,670,2.346,671,2.885,672,1.503,673,1.976,674,2.346,675,1.503,676,2.346,677,0.874,678,0.874,679,0.874,680,0.874,681,1.976,682,0.874,683,0.874,684,0.874,685,1.503,686,1.503,687,1.503,688,1.503,689,1.976,690,0.874,691,0.874,692,0.874,693,0.874,694,0.874,695,0.874,696,0.874,697,0.69,698,0.874,699,0.874,700,0.874,701,0.874,702,1.503,703,0.874,704,0.874,705,1.503,706,0.874,707,0.874,708,0.874,709,0.874,710,0.874,711,0.874,712,0.874,713,0.874,714,0.874,715,3.26,716,0.874,717,1.56,718,3.26,719,1.976,720,2.346,721,1.503,722,1.976,723,0.874,724,1.503,725,0.874,726,0.874,727,0.874,728,1.503,729,1.503,730,0.874,731,0.874,732,0.874,733,0.874,734,1.503,735,0.874,736,0.874,737,0.874,738,0.874,739,2.346,740,0.874,741,0.69,742,0.874,743,0.874,744,0.874,745,0.874,746,0.874,747,0.874,748,0.874,749,0.874,750,0.874,751,0.874,752,0.874,753,1.852,754,2.642,755,0.874,756,0.874,757,0.874,758,0.874,759,0.874,760,0.874,761,0.874,762,0.874,763,0.874,764,0.874,765,0.874,766,0.874,767,0.874,768,0.874,769,0.874,770,0.874,771,1.503,772,0.874,773,1.503,774,0.874,775,1.503,776,1.503,777,2.346,778,2.346,779,1.503,780,1.503,781,0.874,782,0.874,783,0.874,784,1.976,785,0.874,786,0.69,787,0.874,788,0.874,789,0.874,790,0.874,791,0.874,792,0.874,793,1.503,794,3.535,795,1.976,796,1.503,797,0.874,798,1.503,799,0.874,800,0.874,801,0.874,802,0.874,803,1.187,804,0.874,805,0.874,806,0.874,807,0.874,808,1.503,809,2.438,810,1.503,811,0.874,812,0.874,813,0.874,814,0.978,815,0.874,816,0.874,817,2.346,818,0.874,819,1.503,820,0.874,821,0.874,822,0.874,823,1.527,824,0.874,825,1.503,826,0.874,827,0.874,828,0.874,829,1.503,830,1.503,831,0.874,832,0.874,833,0.874,834,0.874,835,1.503,836,1.976,837,1.503,838,0.874,839,0.69,840,1.187,841,0.874,842,0.874,843,0.874,844,0.874,845,0.874,846,0.874,847,0.874,848,0.874,849,0.874,850,0.69,851,0.874,852,0.874,853,1.503,854,0.874,855,0.874,856,0.874,857,0.874,858,0.874,859,0.874,860,0.874,861,1.503,862,1.503,863,0.874,864,0.69,865,0.874,866,0.69,867,0.69,868,0.874,869,0.874,870,0.874,871,1.503,872,0.874,873,0.874,874,0.874,875,0.874,876,0.874,877,0.874,878,0.874,879,0.874,880,0.874,881,0.874,882,0.874,883,0.874,884,1.503,885,0.69,886,0.874,887,0.874,888,1.503,889,0.874,890,0.874,891,0.69,892,0.874,893,0.874,894,0.874,895,0.874,896,0.874,897,0.874,898,0.874,899,0.874]],["title/coverage.html",[823,2.274]],["body/coverage.html",[0,0.152,1,1.159,5,0.427,6,1.03,7,2.109,9,0.828,15,0.287,16,0.064,27,1.406,30,2.318,36,1.225,70,0.022,71,0.033,72,0.022,73,0.828,74,2.109,75,1.08,76,2.109,92,0.6,110,1.159,111,2.531,112,1.931,119,1.08,120,0.768,150,0.975,151,2.484,152,2.484,154,1.159,156,0.705,197,1.159,198,2.608,199,2.782,233,1.159,235,1.159,237,2.109,291,1.739,297,0.975,299,1.406,300,1.159,356,1.242,394,1.159,823,1.159,900,1.781,901,1.781,902,5.189,903,1.781,904,1.781,905,5.172,906,3.043,907,1.781,908,3.205,909,1.781,910,2.671,911,1.781,912,4.779,913,1.406,914,1.406,915,3.561,916,1.781,917,1.781,918,1.781,919,1.406,920,1.781,921,2.531,922,1.406,923,1.406,924,2.109,925,2.109,926,1.781,927,1.781,928,2.109,929,2.671,930,1.406,931,2.109,932,2.109,933,1.406,934,1.781,935,1.406,936,1.406,937,1.781,938,3.451,939,3.451,940,1.781,941,1.781,942,1.781,943,1.781,944,1.781,945,1.781,946,1.781,947,1.781,948,1.406,949,2.109,950,2.109,951,2.109,952,1.781,953,1.406,954,3.28,955,1.781,956,1.781,957,1.781,958,1.781,959,1.781,960,1.781,961,1.781,962,2.087,963,1.406,964,1.406,965,1.781,966,1.781,967,1.781]],["title/dependencies.html",[379,1.731,560,2.023]],["body/dependencies.html",[5,0.622,16,0.065,20,1.42,21,2.757,22,2.048,23,0.874,24,2.048,25,2.048,70,0.032,71,0.043,72,0.032,83,2.048,120,0.622,121,1.177,226,2.048,227,2.048,228,2.048,247,2.048,375,2.048,402,2.048,428,2.048,498,2.048,553,2.048,554,2.048,560,1.689,578,2.757,654,2.048,717,2.757,814,2.273,968,2.594,969,2.594,970,2.594,971,4.872,972,2.594,973,2.594,974,2.594,975,2.594,976,2.594,977,2.594,978,2.594,979,2.594,980,3.492,981,2.594,982,2.594,983,2.594,984,2.594,985,2.594,986,4.407,987,2.594,988,3.492,989,2.594,990,2.594,991,2.594,992,3.947,993,2.594,994,2.594,995,2.594,996,2.594,997,2.594,998,2.594,999,2.594,1000,2.594,1001,2.594,1002,3.492,1003,3.947,1004,2.594,1005,2.594,1006,2.594,1007,2.048,1008,2.594,1009,2.594,1010,2.594,1011,2.594,1012,2.594,1013,2.594,1014,2.594,1015,2.594,1016,2.594,1017,2.594,1018,2.594,1019,2.594,1020,2.594,1021,2.594,1022,2.594,1023,2.594,1024,2.594,1025,2.594,1026,2.594,1027,2.594,1028,2.594,1029,3.492,1030,2.594,1031,2.594,1032,2.594,1033,2.594,1034,3.492,1035,2.594,1036,2.594,1037,2.594,1038,2.594,1039,2.594,1040,2.594,1041,2.594,1042,2.594,1043,2.594,1044,2.594,1045,2.594,1046,2.594,1047,2.594,1048,2.594,1049,2.594,1050,2.594,1051,2.594,1052,2.594,1053,2.594,1054,2.594,1055,3.492,1056,2.594,1057,2.594,1058,2.594,1059,2.594,1060,2.594,1061,2.594,1062,2.594,1063,2.594,1064,2.594,1065,2.594,1066,3.492,1067,2.594,1068,2.594,1069,2.594,1070,2.594,1071,2.594,1072,2.594,1073,2.594,1074,2.594,1075,2.594,1076,2.594,1077,2.594,1078,2.594,1079,2.594,1080,2.594]],["title/index.html",[10,0.435,328,1.427,329,1.2]],["body/index.html",[0,0.15,2,0.747,3,1.12,16,0.048,70,0.038,71,0.048,72,0.038,80,1.732,177,2.107,330,2.03,331,3.109,332,3.109,333,3.109,334,3.408,341,2.462,356,2.006,360,3.109,395,3.579,396,3.408,407,3.109,415,2.462,431,2.462,432,3.408,435,2.462,437,2.462,444,2.462,463,2.462,503,3.109,577,2.462,601,3.109,741,2.462,753,3.109,840,2.462,850,2.462,864,2.462,1081,3.938,1082,3.118,1083,3.118,1084,3.118,1085,3.118,1086,3.109,1087,3.118,1088,3.118,1089,3.118,1090,3.938,1091,3.938,1092,3.938,1093,4.316,1094,3.118,1095,3.118,1096,4.533,1097,4.316,1098,3.118,1099,3.118,1100,3.938,1101,3.118,1102,3.118,1103,3.118,1104,3.118,1105,3.118,1106,3.118,1107,3.118,1108,3.118,1109,3.118,1110,3.118,1111,3.118,1112,3.118,1113,3.118,1114,3.118,1115,3.118,1116,3.118]],["title/license.html",[328,1.427,329,1.2,1117,1.731]],["body/license.html",[16,0.05,23,1.115,70,0.041,71,0.05,72,0.041,174,2.237,177,1.538,394,2.154,443,3.226,461,3.5,489,2.612,697,3.226,786,2.612,809,2.612,867,2.612,891,2.612,1086,3.948,1117,2.612,1118,3.308,1119,4.433,1120,3.308,1121,3.308,1122,4.086,1123,3.308,1124,3.308,1125,3.308,1126,3.308,1127,3.308,1128,3.308,1129,4.086,1130,3.308,1131,3.308,1132,3.308,1133,3.308,1134,3.308,1135,3.308,1136,3.308,1137,3.308,1138,3.308,1139,3.308,1140,3.308,1141,3.308,1142,4.086,1143,3.308,1144,3.308,1145,3.308,1146,3.308,1147,3.308,1148,3.308,1149,4.086,1150,3.308,1151,3.308,1152,3.308,1153,3.308,1154,3.308,1155,3.308,1156,3.308,1157,3.308,1158,3.308,1159,3.308,1160,3.308,1161,3.308,1162,3.308,1163,3.308,1164,3.308,1165,3.308,1166,3.308,1167,3.308,1168,3.308,1169,3.308,1170,3.308,1171,3.308,1172,3.308,1173,3.308,1174,3.308,1175,3.308,1176,3.308,1177,3.308]],["title/modules.html",[1178,2.758]],["body/modules.html",[16,0.057,70,0.05,71,0.057,72,0.05,1178,3.189]],["title/overview.html",[1179,2.758]],["body/overview.html",[2,0.959,16,0.056,70,0.049,71,0.056,72,0.049,297,2.19,803,3.159,1179,3.159,1180,4.001]],["title/miscellaneous/typealiases.html",[1181,1.2,1182,3.108]],["body/miscellaneous/typealiases.html",[6,0.975,10,0.696,15,0.565,16,0.052,36,1.015,70,0.043,71,0.052,72,0.043,75,1.592,112,1.969,117,1.389,119,1.427,120,1.015,356,1.969,906,2.284,919,2.77,931,2.77,932,3.344,935,2.77,936,3.73,954,2.77,962,2.284,1181,1.921,1183,3.508,1184,4.235,1185,2.77,1186,4.724,1187,3.508,1188,4.549,1189,4.235,1190,4.235,1191,4.235,1192,4.235,1193,4.235,1194,3.508,1195,4.235,1196,4.235,1197,2.77]],["title/miscellaneous/variables.html",[1181,1.2,1198,2.454]],["body/miscellaneous/variables.html",[6,0.935,10,0.43,15,0.773,16,0.064,30,2.939,38,1.024,45,1.433,46,0.618,49,1.688,70,0.027,71,0.038,72,0.038,80,0.73,94,1.71,102,1.41,112,1.817,113,1.007,114,1.007,116,1.817,117,0.858,119,1.392,120,0.937,121,0.73,126,3.883,127,1.688,134,2.007,135,1.817,192,2.007,198,1.41,199,2.336,233,2.007,234,1.71,235,2.007,236,1.71,241,1.41,267,1.41,291,2.007,292,2.434,300,2.007,349,1.71,350,2.833,356,1.007,365,1.71,389,3.883,440,1.71,485,1.71,516,1.71,522,1.71,531,2.434,814,1.41,839,3.086,866,1.71,885,1.71,906,1.41,913,2.434,914,2.434,921,1.71,922,2.833,923,2.833,924,1.71,925,3.086,928,1.71,930,1.71,933,1.71,938,1.71,939,2.434,948,2.434,949,1.71,950,2.434,951,2.434,953,2.434,962,1.41,963,2.434,964,2.434,1007,2.434,1181,1.186,1185,2.833,1197,2.434,1198,1.71,1199,3.588,1200,2.166,1201,4.13,1202,3.082,1203,2.166,1204,3.909,1205,2.166,1206,2.166,1207,2.166,1208,3.082,1209,2.166,1210,3.909,1211,2.166,1212,2.166,1213,3.909,1214,2.166,1215,3.082,1216,3.082,1217,3.082,1218,2.166,1219,2.166,1220,2.166,1221,2.166,1222,2.166,1223,2.166,1224,2.166,1225,2.166,1226,2.166,1227,2.166,1228,2.166,1229,2.166,1230,2.166,1231,2.166,1232,2.166,1233,2.166,1234,2.166,1235,2.166,1236,2.166,1237,2.166,1238,2.166,1239,2.166,1240,2.166,1241,2.166,1242,2.166,1243,2.166,1244,2.166,1245,2.166,1246,2.166,1247,2.166,1248,2.166,1249,2.166,1250,2.166,1251,2.166,1252,2.166,1253,2.166,1254,2.166,1255,3.082,1256,3.082,1257,3.082,1258,2.166,1259,3.082,1260,2.166,1261,2.166,1262,3.082,1263,2.166,1264,2.166,1265,2.166,1266,3.082,1267,2.166,1268,2.166,1269,2.166,1270,2.166,1271,2.166]]],"invertedIndex":[["",{"_index":16,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["0",{"_index":902,"title":{},"body":{"coverage.html":{}}}],["0.1.0",{"_index":888,"title":{},"body":{"changelog.html":{}}}],["0.11.4",{"_index":1080,"title":{},"body":{"dependencies.html":{}}}],["0.18.0",{"_index":1017,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":884,"title":{},"body":{"changelog.html":{}}}],["0.20.0",{"_index":1035,"title":{},"body":{"dependencies.html":{}}}],["0.5.0",{"_index":871,"title":{},"body":{"changelog.html":{}}}],["0.6.0",{"_index":840,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["0/1",{"_index":905,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":903,"title":{},"body":{"coverage.html":{}}}],["0/26",{"_index":926,"title":{},"body":{"coverage.html":{}}}],["0/3",{"_index":915,"title":{},"body":{"coverage.html":{}}}],["0/5",{"_index":965,"title":{},"body":{"coverage.html":{}}}],["01",{"_index":403,"title":{},"body":{"changelog.html":{}}}],["02",{"_index":682,"title":{},"body":{"changelog.html":{}}}],["03",{"_index":617,"title":{},"body":{"changelog.html":{}}}],["04",{"_index":337,"title":{},"body":{"changelog.html":{}}}],["05",{"_index":586,"title":{},"body":{"changelog.html":{}}}],["06",{"_index":796,"title":{},"body":{"changelog.html":{}}}],["07",{"_index":338,"title":{},"body":{"changelog.html":{}}}],["08",{"_index":810,"title":{},"body":{"changelog.html":{}}}],["09",{"_index":474,"title":{},"body":{"changelog.html":{}}}],["1",{"_index":803,"title":{},"body":{"changelog.html":{},"overview.html":{}}}],["1.0",{"_index":718,"title":{},"body":{"changelog.html":{}}}],["1.0.0",{"_index":794,"title":{},"body":{"changelog.html":{}}}],["1.0.11",{"_index":1013,"title":{},"body":{"dependencies.html":{}}}],["1.0.3",{"_index":1020,"title":{},"body":{"dependencies.html":{}}}],["1.0.6",{"_index":1075,"title":{},"body":{"dependencies.html":{}}}],["1.1.0",{"_index":771,"title":{},"body":{"changelog.html":{}}}],["1.19.0",{"_index":1014,"title":{},"body":{"dependencies.html":{}}}],["1.2.0",{"_index":717,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.2.3",{"_index":1024,"title":{},"body":{"dependencies.html":{}}}],["1.2.6",{"_index":1054,"title":{},"body":{"dependencies.html":{}}}],["1.3.5",{"_index":681,"title":{},"body":{"changelog.html":{}}}],["1.4.0",{"_index":654,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.4.1",{"_index":1038,"title":{},"body":{"dependencies.html":{}}}],["1.5.0",{"_index":616,"title":{},"body":{"changelog.html":{}}}],["1.6.0",{"_index":599,"title":{},"body":{"changelog.html":{}}}],["1.7.0",{"_index":585,"title":{},"body":{"changelog.html":{}}}],["1.7.2",{"_index":1027,"title":{},"body":{"dependencies.html":{}}}],["1.8.1",{"_index":1051,"title":{},"body":{"dependencies.html":{}}}],["10",{"_index":186,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["10.0.0",{"_index":1029,"title":{},"body":{"dependencies.html":{}}}],["100",{"_index":130,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["1000",{"_index":132,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["10x",{"_index":783,"title":{},"body":{"changelog.html":{}}}],["11",{"_index":656,"title":{},"body":{"changelog.html":{}}}],["11.2.1",{"_index":1056,"title":{},"body":{"dependencies.html":{}}}],["12",{"_index":409,"title":{},"body":{"changelog.html":{}}}],["12.0.1",{"_index":1058,"title":{},"body":{"dependencies.html":{}}}],["12.1.1",{"_index":971,"title":{},"body":{"dependencies.html":{}}}],["12.1.3",{"_index":979,"title":{},"body":{"dependencies.html":{}}}],["13",{"_index":475,"title":{},"body":{"changelog.html":{}}}],["15.126.1",{"_index":969,"title":{},"body":{"dependencies.html":{}}}],["16",{"_index":549,"title":{},"body":{"changelog.html":{}}}],["17",{"_index":410,"title":{},"body":{"changelog.html":{}}}],["2",{"_index":739,"title":{},"body":{"changelog.html":{}}}],["2.0.0",{"_index":548,"title":{},"body":{"changelog.html":{}}}],["2.0.5",{"_index":1032,"title":{},"body":{"dependencies.html":{}}}],["2.1.0",{"_index":498,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.2.0",{"_index":487,"title":{},"body":{"changelog.html":{}}}],["2.3.0",{"_index":482,"title":{},"body":{"changelog.html":{}}}],["2.3.1",{"_index":473,"title":{},"body":{"changelog.html":{}}}],["2.4.0",{"_index":455,"title":{},"body":{"changelog.html":{}}}],["2.5.0",{"_index":428,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.6.7",{"_index":1059,"title":{},"body":{"dependencies.html":{}}}],["2.8.5",{"_index":1021,"title":{},"body":{"dependencies.html":{}}}],["2019",{"_index":809,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["2020",{"_index":720,"title":{},"body":{"changelog.html":{}}}],["2021",{"_index":408,"title":{},"body":{"changelog.html":{}}}],["2022",{"_index":336,"title":{},"body":{"changelog.html":{}}}],["21",{"_index":587,"title":{},"body":{"changelog.html":{}}}],["22",{"_index":797,"title":{},"body":{"changelog.html":{}}}],["24",{"_index":872,"title":{},"body":{"changelog.html":{}}}],["26",{"_index":618,"title":{},"body":{"changelog.html":{}}}],["26th",{"_index":659,"title":{},"body":{"changelog.html":{}}}],["27",{"_index":404,"title":{},"body":{"changelog.html":{}}}],["3",{"_index":705,"title":{},"body":{"changelog.html":{}}}],["3.0",{"_index":1091,"title":{},"body":{"index.html":{}}}],["3.0.0",{"_index":402,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["3.0.12",{"_index":992,"title":{},"body":{"dependencies.html":{}}}],["3.1.0",{"_index":335,"title":{},"body":{"changelog.html":{}}}],["3.5.5",{"_index":997,"title":{},"body":{"dependencies.html":{}}}],["3.6.0",{"_index":1067,"title":{},"body":{"dependencies.html":{}}}],["3.7.1",{"_index":1003,"title":{},"body":{"dependencies.html":{}}}],["30",{"_index":499,"title":{},"body":{"changelog.html":{}}}],["31",{"_index":772,"title":{},"body":{"changelog.html":{}}}],["3d",{"_index":439,"title":{},"body":{"changelog.html":{}}}],["4",{"_index":738,"title":{},"body":{"changelog.html":{}}}],["4.17.1",{"_index":1030,"title":{},"body":{"dependencies.html":{}}}],["4.17.21",{"_index":1048,"title":{},"body":{"dependencies.html":{}}}],["4.3.0",{"_index":1018,"title":{},"body":{"dependencies.html":{}}}],["4.6.0",{"_index":1039,"title":{},"body":{"dependencies.html":{}}}],["5.0.0",{"_index":1042,"title":{},"body":{"dependencies.html":{}}}],["5.1.1",{"_index":1009,"title":{},"body":{"dependencies.html":{}}}],["5.2.0",{"_index":1046,"title":{},"body":{"dependencies.html":{}}}],["6",{"_index":1180,"title":{},"body":{"overview.html":{}}}],["6.0.0",{"_index":1049,"title":{},"body":{"dependencies.html":{}}}],["6.0.1",{"_index":1045,"title":{},"body":{"dependencies.html":{}}}],["6.10.2",{"_index":1060,"title":{},"body":{"dependencies.html":{}}}],["6.2.0",{"_index":1000,"title":{},"body":{"dependencies.html":{}}}],["6.5.1",{"_index":1072,"title":{},"body":{"dependencies.html":{}}}],["6.6.7",{"_index":1069,"title":{},"body":{"dependencies.html":{}}}],["60",{"_index":131,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["8",{"_index":246,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["8.3.2",{"_index":1078,"title":{},"body":{"dependencies.html":{}}}],["8.5.7",{"_index":986,"title":{},"body":{"dependencies.html":{}}}],["85",{"_index":883,"title":{},"body":{"changelog.html":{}}}],["90",{"_index":822,"title":{},"body":{"changelog.html":{}}}],["95",{"_index":882,"title":{},"body":{"changelog.html":{}}}],["9th",{"_index":628,"title":{},"body":{"changelog.html":{}}}],["__",{"_index":142,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["_error",{"_index":262,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["_key",{"_index":187,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["_next",{"_index":292,"title":{},"body":{"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["_req",{"_index":1204,"title":{},"body":{"miscellaneous/variables.html":{}}}],["_res",{"_index":192,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"miscellaneous/variables.html":{}}}],["ability",{"_index":517,"title":{},"body":{"changelog.html":{}}}],["above",{"_index":867,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["accurate",{"_index":615,"title":{},"body":{"changelog.html":{}}}],["action",{"_index":1170,"title":{},"body":{"license.html":{}}}],["actions",{"_index":709,"title":{},"body":{"changelog.html":{}}}],["adapter",{"_index":86,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["added",{"_index":339,"title":{},"body":{"changelog.html":{}}}],["additional",{"_index":868,"title":{},"body":{"changelog.html":{}}}],["addressed",{"_index":764,"title":{},"body":{"changelog.html":{}}}],["adds",{"_index":344,"title":{},"body":{"changelog.html":{}}}],["adjusting",{"_index":757,"title":{},"body":{"changelog.html":{}}}],["adjustment",{"_index":652,"title":{},"body":{"changelog.html":{}}}],["advanced",{"_index":552,"title":{},"body":{"changelog.html":{}}}],["again",{"_index":729,"title":{},"body":{"changelog.html":{}}}],["age",{"_index":279,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["agerange",{"_index":1224,"title":{},"body":{"miscellaneous/variables.html":{}}}],["ala",{"_index":479,"title":{},"body":{"changelog.html":{}}}],["aliases",{"_index":1183,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["allowdots",{"_index":48,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["allows",{"_index":635,"title":{},"body":{"changelog.html":{}}}],["allowstale",{"_index":1239,"title":{},"body":{"miscellaneous/variables.html":{}}}],["alpha",{"_index":852,"title":{},"body":{"changelog.html":{}}}],["alpha.1",{"_index":830,"title":{},"body":{"changelog.html":{}}}],["alpha.2",{"_index":825,"title":{},"body":{"changelog.html":{}}}],["alpha.3",{"_index":808,"title":{},"body":{"changelog.html":{}}}],["alt",{"_index":1095,"title":{},"body":{"index.html":{}}}],["analytics",{"_index":554,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["anatomical",{"_index":650,"title":{},"body":{"changelog.html":{}}}],["and/or",{"_index":1140,"title":{},"body":{"license.html":{}}}],["angular",{"_index":375,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["angular/animations",{"_index":970,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk",{"_index":972,"title":{},"body":{"dependencies.html":{}}}],["angular/common",{"_index":973,"title":{},"body":{"dependencies.html":{}}}],["angular/compiler",{"_index":974,"title":{},"body":{"dependencies.html":{}}}],["angular/core",{"_index":975,"title":{},"body":{"dependencies.html":{}}}],["angular/elements",{"_index":976,"title":{},"body":{"dependencies.html":{}}}],["angular/forms",{"_index":977,"title":{},"body":{"dependencies.html":{}}}],["angular/material",{"_index":978,"title":{},"body":{"dependencies.html":{}}}],["angular/platform",{"_index":980,"title":{},"body":{"dependencies.html":{}}}],["angular/router",{"_index":982,"title":{},"body":{"dependencies.html":{}}}],["angular/youtube",{"_index":983,"title":{},"body":{"dependencies.html":{}}}],["anyautoprunelrucache",{"_index":1184,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["api",{"_index":350,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["api/ccf",{"_index":94,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/app.ts",{"_index":7,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["api/src/lib/environment.ts",{"_index":906,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/middleware/database",{"_index":151,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["api/src/lib/middleware/response",{"_index":111,"title":{},"body":{"interfaces/CacheOptions.html":{},"coverage.html":{}}}],["api/src/lib/polyfills.ts",{"_index":919,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/routes/browser.ts",{"_index":921,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/gtex/index.ts",{"_index":924,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/gtex/rui",{"_index":198,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/hubmap/index.ts",{"_index":928,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/hubmap/rui",{"_index":929,"title":{},"body":{"coverage.html":{}}}],["api/src/lib/routes/v1/index.ts",{"_index":930,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/reference",{"_index":931,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/routes/v1/utils/forward",{"_index":935,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/routes/v1/utils/parse",{"_index":938,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/utils/use",{"_index":949,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/server.ts",{"_index":954,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/utils/auto",{"_index":962,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/utils/ccf",{"_index":74,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"coverage.html":{}}}],["api/src/lib/utils/request",{"_index":299,"title":{},"body":{"classes/RequestCache.html":{},"coverage.html":{}}}],["apifile",{"_index":1206,"title":{},"body":{"miscellaneous/variables.html":{}}}],["app",{"_index":39,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.set('database",{"_index":40,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.set('query",{"_index":43,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use",{"_index":68,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use('/v1",{"_index":69,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(cors",{"_index":64,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(databaseloader(options",{"_index":67,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(helmet",{"_index":53,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(json",{"_index":66,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(urlencoded",{"_index":65,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["appear",{"_index":422,"title":{},"body":{"changelog.html":{}}}],["application",{"_index":639,"title":{},"body":{"changelog.html":{}}}],["applied",{"_index":690,"title":{},"body":{"changelog.html":{}}}],["appoptions",{"_index":1,"title":{"interfaces/AppOptions.html":{}},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["appropriate",{"_index":378,"title":{},"body":{"changelog.html":{}}}],["april",{"_index":627,"title":{},"body":{"changelog.html":{}}}],["args",{"_index":315,"title":{},"body":{"classes/RequestCache.html":{}}}],["arising",{"_index":1174,"title":{},"body":{"license.html":{}}}],["asct+b",{"_index":411,"title":{},"body":{"changelog.html":{}}}],["assignment/selection",{"_index":603,"title":{},"body":{"changelog.html":{}}}],["associated",{"_index":489,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["async",{"_index":90,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["async/await",{"_index":108,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["attempt",{"_index":240,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["attempts",{"_index":459,"title":{},"body":{"changelog.html":{}}}],["authors",{"_index":1163,"title":{},"body":{"license.html":{}}}],["automatic",{"_index":743,"title":{},"body":{"changelog.html":{}}}],["automatically",{"_index":691,"title":{},"body":{"changelog.html":{}}}],["autoprunelrucache",{"_index":117,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["available",{"_index":265,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["avoid",{"_index":537,"title":{},"body":{"changelog.html":{}}}],["await",{"_index":98,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["award",{"_index":1115,"title":{},"body":{"index.html":{}}}],["backend",{"_index":434,"title":{},"body":{"changelog.html":{}}}],["background",{"_index":864,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["base",{"_index":835,"title":{},"body":{"changelog.html":{}}}],["based",{"_index":524,"title":{},"body":{"changelog.html":{}}}],["basic",{"_index":550,"title":{},"body":{"changelog.html":{}}}],["before",{"_index":426,"title":{},"body":{"changelog.html":{}}}],["being",{"_index":584,"title":{},"body":{"changelog.html":{}}}],["beta",{"_index":407,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["better",{"_index":500,"title":{},"body":{"changelog.html":{}}}],["between",{"_index":801,"title":{},"body":{"changelog.html":{}}}],["bind",{"_index":1011,"title":{},"body":{"dependencies.html":{}}}],["block",{"_index":357,"title":{},"body":{"changelog.html":{}}}],["blocks",{"_index":349,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["bmi",{"_index":452,"title":{},"body":{"changelog.html":{}}}],["bmirange",{"_index":1225,"title":{},"body":{"miscellaneous/variables.html":{}}}],["board",{"_index":827,"title":{},"body":{"changelog.html":{}}}],["body",{"_index":20,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"changelog.html":{},"dependencies.html":{}}}],["boolean",{"_index":125,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["both",{"_index":485,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["box",{"_index":536,"title":{},"body":{"changelog.html":{}}}],["breaking",{"_index":574,"title":{},"body":{"changelog.html":{}}}],["bringing",{"_index":593,"title":{},"body":{"changelog.html":{}}}],["browser",{"_index":814,"title":{},"body":{"changelog.html":{},"dependencies.html":{},"miscellaneous/variables.html":{}}}],["browserify",{"_index":1070,"title":{},"body":{"dependencies.html":{}}}],["browserroute",{"_index":922,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["browserroutes",{"_index":31,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["browsing",{"_index":894,"title":{},"body":{"changelog.html":{}}}],["bug",{"_index":398,"title":{},"body":{"changelog.html":{}}}],["build",{"_index":1087,"title":{},"body":{"index.html":{}}}],["builds",{"_index":397,"title":{},"body":{"changelog.html":{}}}],["button",{"_index":829,"title":{},"body":{"changelog.html":{}}}],["c",{"_index":1120,"title":{},"body":{"license.html":{}}}],["cache",{"_index":121,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"dependencies.html":{},"miscellaneous/variables.html":{}}}],["cache.del(key",{"_index":327,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.get(key",{"_index":144,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["cache.get(selecttoken(token",{"_index":194,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["cache.get(token",{"_index":295,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["cache.set(key",{"_index":148,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["cache.ts",{"_index":112,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["cache.ts:10",{"_index":316,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.ts:23",{"_index":321,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.ts:27",{"_index":319,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.ts:4",{"_index":310,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache_dir",{"_index":953,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["cacheable",{"_index":1074,"title":{},"body":{"dependencies.html":{}}}],["cached",{"_index":950,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["cachedresponse",{"_index":143,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["cacheoptions",{"_index":110,"title":{"interfaces/CacheOptions.html":{}},"body":{"interfaces/CacheOptions.html":{},"coverage.html":{}}}],["cacheresponses",{"_index":918,"title":{},"body":{"coverage.html":{}}}],["cacheresponses(options",{"_index":129,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["callback",{"_index":521,"title":{},"body":{"changelog.html":{}}}],["called",{"_index":580,"title":{},"body":{"changelog.html":{}}}],["cancelregistration",{"_index":520,"title":{},"body":{"changelog.html":{}}}],["candidate",{"_index":799,"title":{},"body":{"changelog.html":{}}}],["cannon",{"_index":1015,"title":{},"body":{"dependencies.html":{}}}],["card",{"_index":558,"title":{},"body":{"changelog.html":{}}}],["carousel",{"_index":563,"title":{},"body":{"changelog.html":{}}}],["cases",{"_index":770,"title":{},"body":{"changelog.html":{}}}],["catch",{"_index":261,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["ccf",{"_index":80,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["ccf's",{"_index":714,"title":{},"body":{"changelog.html":{}}}],["ccfdatabase",{"_index":78,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["ccfdatabaseinstance",{"_index":73,"title":{"interfaces/CCFDatabaseInstance.html":{}},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["ccfdatabaseoptions",{"_index":79,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["cdn.jsdelivr.net",{"_index":62,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["cell",{"_index":345,"title":{},"body":{"changelog.html":{}}}],["celltypeterms",{"_index":1227,"title":{},"body":{"miscellaneous/variables.html":{}}}],["center",{"_index":1110,"title":{},"body":{"index.html":{}}}],["change",{"_index":577,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["changed",{"_index":861,"title":{},"body":{"changelog.html":{}}}],["changelog",{"_index":330,"title":{"changelog.html":{}},"body":{"changelog.html":{},"index.html":{}}}],["changes",{"_index":359,"title":{},"body":{"changelog.html":{}}}],["charge",{"_index":1126,"title":{},"body":{"license.html":{}}}],["checkroutesenabled",{"_index":925,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["choose",{"_index":736,"title":{},"body":{"changelog.html":{}}}],["ci/cd",{"_index":712,"title":{},"body":{"changelog.html":{}}}],["claim",{"_index":1166,"title":{},"body":{"license.html":{}}}],["clamp",{"_index":940,"title":{},"body":{"coverage.html":{}}}],["class",{"_index":297,"title":{"classes/RequestCache.html":{}},"body":{"classes/RequestCache.html":{},"coverage.html":{},"overview.html":{}}}],["classes",{"_index":298,"title":{},"body":{"classes/RequestCache.html":{}}}],["cleanup",{"_index":406,"title":{},"body":{"changelog.html":{}}}],["click",{"_index":468,"title":{},"body":{"changelog.html":{}}}],["clicking",{"_index":570,"title":{},"body":{"changelog.html":{}}}],["coalescing",{"_index":170,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["code",{"_index":393,"title":{},"body":{"changelog.html":{}}}],["codebase",{"_index":723,"title":{},"body":{"changelog.html":{}}}],["codex",{"_index":782,"title":{},"body":{"changelog.html":{}}}],["codifies",{"_index":845,"title":{},"body":{"changelog.html":{}}}],["collaboration",{"_index":721,"title":{},"body":{"changelog.html":{}}}],["collisions",{"_index":745,"title":{},"body":{"changelog.html":{}}}],["color",{"_index":602,"title":{},"body":{"changelog.html":{}}}],["colorhex",{"_index":200,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["colorizing",{"_index":791,"title":{},"body":{"changelog.html":{}}}],["colorrgb",{"_index":201,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["combination",{"_index":737,"title":{},"body":{"changelog.html":{}}}],["come",{"_index":787,"title":{},"body":{"changelog.html":{}}}],["coming",{"_index":779,"title":{},"body":{"changelog.html":{}}}],["comlink",{"_index":83,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"dependencies.html":{}}}],["comlink/dist/umd/node",{"_index":85,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["common",{"_index":331,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["complexity",{"_index":610,"title":{},"body":{"changelog.html":{}}}],["compodoc",{"_index":391,"title":{},"body":{"changelog.html":{}}}],["component",{"_index":437,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["components",{"_index":551,"title":{},"body":{"changelog.html":{}}}],["concat",{"_index":1019,"title":{},"body":{"dependencies.html":{}}}],["conditions",{"_index":1148,"title":{},"body":{"license.html":{}}}],["config",{"_index":516,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["configuration",{"_index":504,"title":{},"body":{"changelog.html":{}}}],["configurations",{"_index":515,"title":{},"body":{"changelog.html":{}}}],["confirmation",{"_index":457,"title":{},"body":{"changelog.html":{}}}],["conform",{"_index":529,"title":{},"body":{"changelog.html":{}}}],["connect",{"_index":63,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["connection",{"_index":1176,"title":{},"body":{"license.html":{}}}],["consortium",{"_index":1121,"title":{},"body":{"license.html":{}}}],["const",{"_index":38,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"miscellaneous/variables.html":{}}}],["constructor",{"_index":304,"title":{},"body":{"classes/RequestCache.html":{}}}],["constructor(cache",{"_index":305,"title":{},"body":{"classes/RequestCache.html":{}}}],["container",{"_index":565,"title":{},"body":{"changelog.html":{}}}],["containers",{"_index":502,"title":{},"body":{"changelog.html":{}}}],["containing",{"_index":1085,"title":{},"body":{"index.html":{}}}],["contentsecuritypolicy",{"_index":54,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["contract",{"_index":1171,"title":{},"body":{"license.html":{}}}],["control",{"_index":677,"title":{},"body":{"changelog.html":{}}}],["coordinate",{"_index":332,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["copies",{"_index":1142,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1129,"title":{},"body":{"license.html":{}}}],["copyright",{"_index":1119,"title":{},"body":{"license.html":{}}}],["cors",{"_index":22,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["coverage",{"_index":823,"title":{"coverage.html":{}},"body":{"changelog.html":{},"coverage.html":{}}}],["createapp",{"_index":904,"title":{},"body":{"coverage.html":{}}}],["createapp(options",{"_index":37,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["createccfdatabaseworker",{"_index":154,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["createccfdatabaseworker(options",{"_index":91,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["created",{"_index":686,"title":{},"body":{"changelog.html":{}}}],["createdatabase",{"_index":916,"title":{},"body":{"coverage.html":{}}}],["createdatabase(token",{"_index":163,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["credits",{"_index":1105,"title":{},"body":{"index.html":{}}}],["css",{"_index":1022,"title":{},"body":{"dependencies.html":{}}}],["cuboid",{"_index":821,"title":{},"body":{"changelog.html":{}}}],["cuboids",{"_index":818,"title":{},"body":{"changelog.html":{}}}],["currently",{"_index":449,"title":{},"body":{"changelog.html":{}}}],["cyberinfrastructure",{"_index":1107,"title":{},"body":{"index.html":{}}}],["cycle",{"_index":621,"title":{},"body":{"changelog.html":{}}}],["damages",{"_index":1167,"title":{},"body":{"license.html":{}}}],["dark/light",{"_index":523,"title":{},"body":{"changelog.html":{}}}],["data",{"_index":178,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["database",{"_index":75,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["database.connect",{"_index":99,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["database.worker.js",{"_index":95,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["database[releaseproxy",{"_index":100,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["databasecacheoptions",{"_index":150,"title":{"interfaces/DatabaseCacheOptions.html":{}},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["databasegetter",{"_index":1186,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["databaseloader",{"_index":27,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["databaseloader(options",{"_index":185,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["databaseloaderoptions",{"_index":9,"title":{"interfaces/DatabaseLoaderOptions.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["databasequerymethods",{"_index":1189,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["databasesource",{"_index":1190,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["databasesources",{"_index":1192,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["datasetid",{"_index":202,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["datasets",{"_index":633,"title":{},"body":{"changelog.html":{}}}],["datasources",{"_index":180,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["deal",{"_index":1131,"title":{},"body":{"license.html":{}}}],["dealings",{"_index":1177,"title":{},"body":{"license.html":{}}}],["december",{"_index":730,"title":{},"body":{"changelog.html":{}}}],["deck.gl/core",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/geo",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/layers",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/mesh",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["decorator",{"_index":1012,"title":{},"body":{"dependencies.html":{}}}],["deeply",{"_index":441,"title":{},"body":{"changelog.html":{}}}],["default",{"_index":389,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["default_gtex_rui_locations",{"_index":233,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["defaultvalue",{"_index":123,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["defined",{"_index":309,"title":{},"body":{"classes/RequestCache.html":{},"changelog.html":{}}}],["del",{"_index":1230,"title":{},"body":{"miscellaneous/variables.html":{}}}],["demo",{"_index":471,"title":{},"body":{"changelog.html":{}}}],["dependencies",{"_index":560,"title":{"dependencies.html":{}},"body":{"changelog.html":{},"dependencies.html":{}}}],["depending",{"_index":583,"title":{},"body":{"changelog.html":{}}}],["deprecated",{"_index":175,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["details",{"_index":870,"title":{},"body":{"changelog.html":{}}}],["developed",{"_index":1106,"title":{},"body":{"index.html":{}}}],["developments",{"_index":850,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["dialog",{"_index":458,"title":{},"body":{"changelog.html":{}}}],["different",{"_index":501,"title":{},"body":{"changelog.html":{}}}],["digits",{"_index":706,"title":{},"body":{"changelog.html":{}}}],["direct",{"_index":879,"title":{},"body":{"changelog.html":{}}}],["directives",{"_index":56,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["directly",{"_index":780,"title":{},"body":{"changelog.html":{}}}],["disable",{"_index":165,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["display",{"_index":492,"title":{},"body":{"changelog.html":{}}}],["displayed",{"_index":819,"title":{},"body":{"changelog.html":{}}}],["displaying",{"_index":488,"title":{},"body":{"changelog.html":{}}}],["dispose",{"_index":77,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["distribute",{"_index":1138,"title":{},"body":{"license.html":{}}}],["doc",{"_index":833,"title":{},"body":{"changelog.html":{}}}],["document",{"_index":1025,"title":{},"body":{"dependencies.html":{}}}],["documentation",{"_index":394,"title":{},"body":{"changelog.html":{},"coverage.html":{},"license.html":{}}}],["done",{"_index":575,"title":{},"body":{"changelog.html":{}}}],["donor",{"_index":557,"title":{},"body":{"changelog.html":{}}}],["donors",{"_index":636,"title":{},"body":{"changelog.html":{}}}],["dorequest",{"_index":307,"title":{},"body":{"classes/RequestCache.html":{}}}],["dotenv",{"_index":1028,"title":{},"body":{"dependencies.html":{}}}],["download",{"_index":862,"title":{},"body":{"changelog.html":{}}}],["dump",{"_index":1237,"title":{},"body":{"miscellaneous/variables.html":{}}}],["during",{"_index":620,"title":{},"body":{"changelog.html":{}}}],["dynamic",{"_index":981,"title":{},"body":{"dependencies.html":{}}}],["dynamically",{"_index":351,"title":{},"body":{"changelog.html":{}}}],["easier",{"_index":367,"title":{},"body":{"changelog.html":{}}}],["effect",{"_index":761,"title":{},"body":{"changelog.html":{}}}],["efficiency",{"_index":664,"title":{},"body":{"changelog.html":{}}}],["egenecount",{"_index":203,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["element",{"_index":578,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["embedded",{"_index":512,"title":{},"body":{"changelog.html":{}}}],["embedding",{"_index":497,"title":{},"body":{"changelog.html":{}}}],["embedding.md",{"_index":495,"title":{},"body":{"changelog.html":{}}}],["enabled",{"_index":1213,"title":{},"body":{"miscellaneous/variables.html":{}}}],["encoding",{"_index":244,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["entry.label",{"_index":272,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["entry.mappedinhubmap",{"_index":256,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["entry['@id']?.includes(tissueinfo.tissuesitedetailid",{"_index":271,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["env",{"_index":913,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["env.gtex_routes",{"_index":1214,"title":{},"body":{"miscellaneous/variables.html":{}}}],["env.hubmap_routes",{"_index":1218,"title":{},"body":{"miscellaneous/variables.html":{}}}],["environment",{"_index":232,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["error",{"_index":1221,"title":{},"body":{"miscellaneous/variables.html":{}}}],["error('no",{"_index":264,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["es",{"_index":1016,"title":{},"body":{"dependencies.html":{}}}],["eslint",{"_index":164,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["eslint/prefer",{"_index":168,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["etc",{"_index":534,"title":{},"body":{"changelog.html":{}}}],["eui",{"_index":432,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["eui/rui",{"_index":386,"title":{},"body":{"changelog.html":{}}}],["eui/src/assets/gtex/data/rui_locations.jsonld",{"_index":234,"title":{},"body":{"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["eval",{"_index":61,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["event",{"_index":1162,"title":{},"body":{"license.html":{}}}],["expanded",{"_index":361,"title":{},"body":{"changelog.html":{}}}],["exploration",{"_index":1089,"title":{},"body":{"index.html":{}}}],["export",{"_index":35,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["express",{"_index":23,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"dependencies.html":{},"license.html":{}}}],["expressedgenecount",{"_index":204,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["extends",{"_index":8,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["external",{"_index":519,"title":{},"body":{"changelog.html":{}}}],["extra",{"_index":1033,"title":{},"body":{"dependencies.html":{}}}],["extraction",{"_index":464,"title":{},"body":{"changelog.html":{}}}],["fail",{"_index":727,"title":{},"body":{"changelog.html":{}}}],["fails",{"_index":766,"title":{},"body":{"changelog.html":{}}}],["false",{"_index":124,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["favor",{"_index":716,"title":{},"body":{"changelog.html":{}}}],["feature",{"_index":347,"title":{},"body":{"changelog.html":{}}}],["features",{"_index":622,"title":{},"body":{"changelog.html":{}}}],["feel",{"_index":662,"title":{},"body":{"changelog.html":{}}}],["female",{"_index":259,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["females",{"_index":284,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["fetch",{"_index":227,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["fetch(gtex_api_url).then(r",{"_index":252,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["field",{"_index":530,"title":{},"body":{"changelog.html":{}}}],["file",{"_index":5,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"dependencies.html":{}}}],["files",{"_index":1130,"title":{},"body":{"license.html":{}}}],["filter",{"_index":676,"title":{},"body":{"changelog.html":{}}}],["filter.ts",{"_index":939,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["filter_defaults",{"_index":948,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["final",{"_index":719,"title":{},"body":{"changelog.html":{}}}],["finishing",{"_index":462,"title":{},"body":{"changelog.html":{}}}],["first",{"_index":731,"title":{},"body":{"changelog.html":{}}}],["fit",{"_index":630,"title":{},"body":{"changelog.html":{}}}],["fitness",{"_index":1158,"title":{},"body":{"license.html":{}}}],["fixed",{"_index":612,"title":{},"body":{"changelog.html":{}}}],["fixes",{"_index":399,"title":{},"body":{"changelog.html":{}}}],["fixes/performance",{"_index":792,"title":{},"body":{"changelog.html":{}}}],["fly",{"_index":887,"title":{},"body":{"changelog.html":{}}}],["following",{"_index":1147,"title":{},"body":{"license.html":{}}}],["foreach",{"_index":1234,"title":{},"body":{"miscellaneous/variables.html":{}}}],["form",{"_index":665,"title":{},"body":{"changelog.html":{}}}],["format",{"_index":748,"title":{},"body":{"changelog.html":{}}}],["forwarddatabasequery",{"_index":937,"title":{},"body":{"coverage.html":{}}}],["forwarddatabasequery('getaggregateresults",{"_index":1254,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getcelltypetermoccurences",{"_index":1260,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getcelltypetreemodel",{"_index":1265,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getdatasettechnologynames",{"_index":1250,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getontologytermoccurences",{"_index":1258,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getontologytreemodel",{"_index":1263,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getprovidernames",{"_index":1252,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getreferenceorgans",{"_index":1269,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getscene",{"_index":1271,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('gettissueblockresults",{"_index":1248,"title":{},"body":{"miscellaneous/variables.html":{}}}],["frame",{"_index":637,"title":{},"body":{"changelog.html":{}}}],["framework",{"_index":333,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["free",{"_index":1125,"title":{},"body":{"license.html":{}}}],["fs",{"_index":226,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["full",{"_index":568,"title":{},"body":{"changelog.html":{}}}],["fullscreen",{"_index":828,"title":{},"body":{"changelog.html":{}}}],["fully",{"_index":623,"title":{},"body":{"changelog.html":{}}}],["function",{"_index":36,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["funded",{"_index":1113,"title":{},"body":{"index.html":{}}}],["furnished",{"_index":1145,"title":{},"body":{"license.html":{}}}],["further",{"_index":824,"title":{},"body":{"changelog.html":{}}}],["future",{"_index":613,"title":{},"body":{"changelog.html":{}}}],["generate",{"_index":352,"title":{},"body":{"changelog.html":{}}}],["generated",{"_index":392,"title":{},"body":{"changelog.html":{}}}],["generating",{"_index":371,"title":{},"body":{"changelog.html":{}}}],["get('/aggregate",{"_index":1253,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/ccf",{"_index":1211,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/cell",{"_index":1259,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/ontology",{"_index":1255,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/provider",{"_index":1251,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/reference",{"_index":1266,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/rui_locations.jsonld",{"_index":1217,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/scene",{"_index":1270,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/technology",{"_index":1249,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/tissue",{"_index":1247,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('ccf_api_cache",{"_index":1212,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('gtex_rui_locations",{"_index":239,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["get(key",{"_index":313,"title":{},"body":{"classes/RequestCache.html":{}}}],["getboolean",{"_index":907,"title":{},"body":{"coverage.html":{}}}],["getcacheoptions",{"_index":955,"title":{},"body":{"coverage.html":{}}}],["getdatabaseoptions",{"_index":956,"title":{},"body":{"coverage.html":{}}}],["getlocations",{"_index":237,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{}}}],["getnumber",{"_index":908,"title":{},"body":{"coverage.html":{}}}],["getport",{"_index":957,"title":{},"body":{"coverage.html":{}}}],["getreferenceorganscenehandler",{"_index":933,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["getting",{"_index":328,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{}}],["github",{"_index":708,"title":{},"body":{"changelog.html":{}}}],["gizmo",{"_index":540,"title":{},"body":{"changelog.html":{}}}],["globalconfig",{"_index":508,"title":{},"body":{"changelog.html":{}}}],["globalthis",{"_index":1193,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["good",{"_index":763,"title":{},"body":{"changelog.html":{}}}],["google",{"_index":553,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["granted",{"_index":1124,"title":{},"body":{"license.html":{}}}],["graphology",{"_index":1034,"title":{},"body":{"dependencies.html":{}}}],["greatly",{"_index":483,"title":{},"body":{"changelog.html":{}}}],["gtex",{"_index":353,"title":{},"body":{"changelog.html":{}}}],["gtex_api_url",{"_index":235,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["gtexroutes",{"_index":1246,"title":{},"body":{"miscellaneous/variables.html":{}}}],["gtextissue",{"_index":197,"title":{"interfaces/GtexTissue.html":{}},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{}}}],["guide",{"_index":751,"title":{},"body":{"changelog.html":{}}}],["hand",{"_index":759,"title":{},"body":{"changelog.html":{}}}],["handleerrors",{"_index":302,"title":{},"body":{"classes/RequestCache.html":{}}}],["handleerrors(key",{"_index":318,"title":{},"body":{"classes/RequestCache.html":{}}}],["happen",{"_index":800,"title":{},"body":{"changelog.html":{}}}],["happens",{"_index":728,"title":{},"body":{"changelog.html":{}}}],["hasegenes",{"_index":205,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["hassgenes",{"_index":206,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["helmet",{"_index":24,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["help",{"_index":750,"title":{},"body":{"changelog.html":{}}}],["here",{"_index":756,"title":{},"body":{"changelog.html":{}}}],["hereby",{"_index":1123,"title":{},"body":{"license.html":{}}}],["hex",{"_index":1040,"title":{},"body":{"dependencies.html":{}}}],["hidden",{"_index":851,"title":{},"body":{"changelog.html":{}}}],["highlight",{"_index":447,"title":{},"body":{"changelog.html":{}}}],["highlights",{"_index":450,"title":{},"body":{"changelog.html":{}}}],["holders",{"_index":1164,"title":{},"body":{"license.html":{}}}],["hooked",{"_index":673,"title":{},"body":{"changelog.html":{}}}],["hovering",{"_index":559,"title":{},"body":{"changelog.html":{}}}],["http://expressjs.com/en/advanced/best",{"_index":50,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["https://beta",{"_index":1092,"title":{},"body":{"index.html":{}}}],["https://gtexportal.org/rest/v1/dataset/tissueinfo?datasetid=gtex_v8&format=json",{"_index":236,"title":{},"body":{"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["https://hubmap",{"_index":1097,"title":{},"body":{"index.html":{}}}],["https://hubmapconsortium.github.io/ccf",{"_index":1096,"title":{},"body":{"index.html":{}}}],["https://old",{"_index":1099,"title":{},"body":{"index.html":{}}}],["https://portal.hubmapconsortium.org/ccf",{"_index":1094,"title":{},"body":{"index.html":{}}}],["https://sampledata.hubmapconsortium.org",{"_index":881,"title":{},"body":{"changelog.html":{}}}],["hubmap",{"_index":177,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{},"index.html":{},"license.html":{}}}],["hubmapdataurl",{"_index":173,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["hubmaproutes",{"_index":1244,"title":{},"body":{"miscellaneous/variables.html":{}}}],["hubmaptoken",{"_index":171,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["icon",{"_index":863,"title":{},"body":{"changelog.html":{}}}],["icons",{"_index":569,"title":{},"body":{"changelog.html":{}}}],["id",{"_index":509,"title":{},"body":{"changelog.html":{}}}],["idb",{"_index":1043,"title":{},"body":{"dependencies.html":{}}}],["identifier",{"_index":900,"title":{},"body":{"coverage.html":{}}}],["iec",{"_index":722,"title":{},"body":{"changelog.html":{}}}],["image",{"_index":715,"title":{},"body":{"changelog.html":{}}}],["images",{"_index":778,"title":{},"body":{"changelog.html":{}}}],["implementation",{"_index":430,"title":{},"body":{"changelog.html":{}}}],["implemented",{"_index":671,"title":{},"body":{"changelog.html":{}}}],["implementing",{"_index":832,"title":{},"body":{"changelog.html":{}}}],["implied",{"_index":1155,"title":{},"body":{"license.html":{}}}],["import",{"_index":17,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["improve",{"_index":663,"title":{},"body":{"changelog.html":{}}}],["improved",{"_index":382,"title":{},"body":{"changelog.html":{}}}],["improvements",{"_index":401,"title":{},"body":{"changelog.html":{}}}],["improves",{"_index":484,"title":{},"body":{"changelog.html":{}}}],["include",{"_index":733,"title":{},"body":{"changelog.html":{}}}],["included",{"_index":1150,"title":{},"body":{"license.html":{}}}],["includes",{"_index":890,"title":{},"body":{"changelog.html":{}}}],["including",{"_index":443,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["increase",{"_index":701,"title":{},"body":{"changelog.html":{}}}],["increased",{"_index":826,"title":{},"body":{"changelog.html":{}}}],["index",{"_index":10,"title":{"index.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["indiana",{"_index":1111,"title":{},"body":{"index.html":{}}}],["individual",{"_index":679,"title":{},"body":{"changelog.html":{}}}],["info",{"_index":3,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"index.html":{}}}],["information",{"_index":601,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["infrastructure",{"_index":781,"title":{},"body":{"changelog.html":{}}}],["ingestion",{"_index":735,"title":{},"body":{"changelog.html":{}}}],["initial",{"_index":591,"title":{},"body":{"changelog.html":{}}}],["instance",{"_index":188,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["instance.database",{"_index":196,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["instance.then((r",{"_index":189,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["instead",{"_index":582,"title":{},"body":{"changelog.html":{}}}],["instructions",{"_index":496,"title":{},"body":{"changelog.html":{}}}],["integrated",{"_index":624,"title":{},"body":{"changelog.html":{}}}],["integrating",{"_index":438,"title":{},"body":{"changelog.html":{}}}],["integration",{"_index":734,"title":{},"body":{"changelog.html":{}}}],["integrations",{"_index":644,"title":{},"body":{"changelog.html":{}}}],["interact",{"_index":607,"title":{},"body":{"changelog.html":{}}}],["interactions",{"_index":805,"title":{},"body":{"changelog.html":{}}}],["interest",{"_index":878,"title":{},"body":{"changelog.html":{}}}],["interface",{"_index":0,"title":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"coverage.html":{},"index.html":{}}}],["interfaces",{"_index":2,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"index.html":{},"overview.html":{}}}],["internal",{"_index":176,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{}}}],["isdebug",{"_index":909,"title":{},"body":{"coverage.html":{}}}],["issue",{"_index":696,"title":{},"body":{"changelog.html":{}}}],["issues",{"_index":418,"title":{},"body":{"changelog.html":{}}}],["it's",{"_index":433,"title":{},"body":{"changelog.html":{}}}],["item",{"_index":859,"title":{},"body":{"changelog.html":{}}}],["itemcount",{"_index":1241,"title":{},"body":{"miscellaneous/variables.html":{}}}],["iu",{"_index":848,"title":{},"body":{"changelog.html":{}}}],["javascript",{"_index":376,"title":{},"body":{"changelog.html":{}}}],["json",{"_index":18,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["json.parse(data",{"_index":248,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["jsonld",{"_index":247,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["jsonld/jsonld",{"_index":230,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["jsonld['@graph",{"_index":249,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["jsonldobj",{"_index":229,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["july",{"_index":804,"title":{},"body":{"changelog.html":{}}}],["jump",{"_index":857,"title":{},"body":{"changelog.html":{}}}],["k",{"_index":314,"title":{},"body":{"classes/RequestCache.html":{}}}],["k,args",{"_index":308,"title":{},"body":{"classes/RequestCache.html":{}}}],["key",{"_index":141,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["keyboard",{"_index":855,"title":{},"body":{"changelog.html":{}}}],["keys",{"_index":1232,"title":{},"body":{"miscellaneous/variables.html":{}}}],["keyval",{"_index":1044,"title":{},"body":{"dependencies.html":{}}}],["kidney",{"_index":480,"title":{},"body":{"changelog.html":{}}}],["kind",{"_index":1154,"title":{},"body":{"license.html":{}}}],["known",{"_index":417,"title":{},"body":{"changelog.html":{}}}],["kpmp",{"_index":725,"title":{},"body":{"changelog.html":{}}}],["labs/data",{"_index":999,"title":{},"body":{"dependencies.html":{}}}],["landmarks",{"_index":466,"title":{},"body":{"changelog.html":{}}}],["larger",{"_index":368,"title":{},"body":{"changelog.html":{}}}],["latest",{"_index":341,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["layers",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["ld",{"_index":747,"title":{},"body":{"changelog.html":{}}}],["leak",{"_index":695,"title":{},"body":{"changelog.html":{}}}],["leave",{"_index":460,"title":{},"body":{"changelog.html":{}}}],["left",{"_index":758,"title":{},"body":{"changelog.html":{}}}],["left/right",{"_index":481,"title":{},"body":{"changelog.html":{}}}],["length",{"_index":1240,"title":{},"body":{"miscellaneous/variables.html":{}}}],["lengthcalculator",{"_index":1238,"title":{},"body":{"miscellaneous/variables.html":{}}}],["level",{"_index":853,"title":{},"body":{"changelog.html":{}}}],["levels",{"_index":875,"title":{},"body":{"changelog.html":{}}}],["liability",{"_index":1168,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1165,"title":{},"body":{"license.html":{}}}],["libraries",{"_index":373,"title":{},"body":{"changelog.html":{}}}],["library",{"_index":655,"title":{},"body":{"changelog.html":{}}}],["license",{"_index":1117,"title":{"license.html":{}},"body":{"license.html":{}}}],["life",{"_index":454,"title":{},"body":{"changelog.html":{}}}],["limitation",{"_index":1133,"title":{},"body":{"license.html":{}}}],["limited",{"_index":786,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["line",{"_index":166,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["link",{"_index":472,"title":{},"body":{"changelog.html":{}}}],["linkage",{"_index":806,"title":{},"body":{"changelog.html":{}}}],["linked",{"_index":556,"title":{},"body":{"changelog.html":{}}}],["links",{"_index":415,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["list",{"_index":598,"title":{},"body":{"changelog.html":{}}}],["literal",{"_index":1062,"title":{},"body":{"dependencies.html":{}}}],["little",{"_index":605,"title":{},"body":{"changelog.html":{}}}],["load",{"_index":241,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["loaddatabasesource",{"_index":958,"title":{},"body":{"coverage.html":{}}}],["loaded",{"_index":807,"title":{},"body":{"changelog.html":{}}}],["loader",{"_index":29,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["loader.ts",{"_index":152,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["loaders.gl/core",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/draco",{"_index":993,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/gltf",{"_index":994,"title":{},"body":{"dependencies.html":{}}}],["loading",{"_index":179,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["local",{"_index":242,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["location",{"_index":702,"title":{},"body":{"changelog.html":{}}}],["locations.ts",{"_index":199,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["lodash",{"_index":1047,"title":{},"body":{"dependencies.html":{}}}],["log",{"_index":1104,"title":{},"body":{"index.html":{}}}],["logging",{"_index":355,"title":{},"body":{"changelog.html":{}}}],["longer",{"_index":579,"title":{},"body":{"changelog.html":{}}}],["look",{"_index":661,"title":{},"body":{"changelog.html":{}}}],["lru",{"_index":120,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["lrucache",{"_index":306,"title":{},"body":{"classes/RequestCache.html":{}}}],["luma.gl/core",{"_index":995,"title":{},"body":{"dependencies.html":{}}}],["made",{"_index":724,"title":{},"body":{"changelog.html":{}}}],["major",{"_index":693,"title":{},"body":{"changelog.html":{}}}],["makes",{"_index":363,"title":{},"body":{"changelog.html":{}}}],["making",{"_index":427,"title":{},"body":{"changelog.html":{}}}],["male",{"_index":260,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["males",{"_index":276,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["managers",{"_index":380,"title":{},"body":{"changelog.html":{}}}],["mappedentries",{"_index":254,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["mappedinhubmap",{"_index":207,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["march",{"_index":658,"title":{},"body":{"changelog.html":{}}}],["markdown",{"_index":1057,"title":{},"body":{"dependencies.html":{}}}],["match",{"_index":660,"title":{},"body":{"changelog.html":{}}}],["matching",{"_index":71,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["matchingentry",{"_index":269,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["math.gl/core",{"_index":996,"title":{},"body":{"dependencies.html":{}}}],["max",{"_index":113,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["maxage",{"_index":114,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["mc",{"_index":847,"title":{},"body":{"changelog.html":{}}}],["mean",{"_index":278,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["memory",{"_index":694,"title":{},"body":{"changelog.html":{}}}],["menu",{"_index":760,"title":{},"body":{"changelog.html":{}}}],["merchantability",{"_index":1157,"title":{},"body":{"license.html":{}}}],["merge",{"_index":1136,"title":{},"body":{"license.html":{}}}],["metadata",{"_index":817,"title":{},"body":{"changelog.html":{}}}],["method",{"_index":1228,"title":{},"body":{"miscellaneous/variables.html":{}}}],["methods",{"_index":300,"title":{},"body":{"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["middleware/database",{"_index":28,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["minor",{"_index":400,"title":{},"body":{"changelog.html":{}}}],["miscellaneous",{"_index":1181,"title":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["mit",{"_index":1118,"title":{},"body":{"license.html":{}}}],["mock",{"_index":843,"title":{},"body":{"changelog.html":{}}}],["modal",{"_index":589,"title":{},"body":{"changelog.html":{}}}],["mode",{"_index":514,"title":{},"body":{"changelog.html":{}}}],["model",{"_index":1007,"title":{},"body":{"dependencies.html":{},"miscellaneous/variables.html":{}}}],["model.json",{"_index":1262,"title":{},"body":{"miscellaneous/variables.html":{}}}],["modify",{"_index":1135,"title":{},"body":{"license.html":{}}}],["modules",{"_index":1178,"title":{"modules.html":{}},"body":{"modules.html":{}}}],["monorepo",{"_index":1082,"title":{},"body":{"index.html":{}}}],["more",{"_index":753,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["moved",{"_index":865,"title":{},"body":{"changelog.html":{}}}],["much",{"_index":366,"title":{},"body":{"changelog.html":{}}}],["multiple",{"_index":1083,"title":{},"body":{"index.html":{}}}],["mutableproperties",{"_index":963,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["n3",{"_index":1050,"title":{},"body":{"dependencies.html":{}}}],["n=${tissueinfo.rnaseqsamplecountfemale",{"_index":285,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["n=${tissueinfo.rnaseqsamplecountmale",{"_index":277,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["name",{"_index":312,"title":{},"body":{"classes/RequestCache.html":{}}}],["names",{"_index":531,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["navigation",{"_index":856,"title":{},"body":{"changelog.html":{}}}],["needed",{"_index":666,"title":{},"body":{"changelog.html":{}}}],["needs",{"_index":672,"title":{},"body":{"changelog.html":{}}}],["network",{"_index":1108,"title":{},"body":{"index.html":{}}}],["never",{"_index":14,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["new",{"_index":92,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"coverage.html":{}}}],["newlabel",{"_index":274,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["next",{"_index":135,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["next('router",{"_index":1215,"title":{},"body":{"miscellaneous/variables.html":{}}}],["ng5",{"_index":1052,"title":{},"body":{"dependencies.html":{}}}],["ngx",{"_index":1055,"title":{},"body":{"dependencies.html":{}}}],["ngxs",{"_index":998,"title":{},"body":{"dependencies.html":{}}}],["ngxs/logger",{"_index":1001,"title":{},"body":{"dependencies.html":{}}}],["ngxs/storage",{"_index":1004,"title":{},"body":{"dependencies.html":{}}}],["ngxs/store",{"_index":1005,"title":{},"body":{"dependencies.html":{}}}],["nih",{"_index":1114,"title":{},"body":{"index.html":{}}}],["node",{"_index":228,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["nodeendpoint",{"_index":84,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["noninfringement",{"_index":1161,"title":{},"body":{"license.html":{}}}],["note",{"_index":102,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["notice",{"_index":697,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["now",{"_index":370,"title":{},"body":{"changelog.html":{}}}],["nullish",{"_index":169,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["number",{"_index":115,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["numeric",{"_index":703,"title":{},"body":{"changelog.html":{}}}],["obtaining",{"_index":1128,"title":{},"body":{"license.html":{}}}],["occurences",{"_index":1257,"title":{},"body":{"miscellaneous/variables.html":{}}}],["off/on",{"_index":669,"title":{},"body":{"changelog.html":{}}}],["official",{"_index":802,"title":{},"body":{"changelog.html":{}}}],["old",{"_index":1098,"title":{},"body":{"index.html":{}}}],["one",{"_index":741,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["online",{"_index":812,"title":{},"body":{"changelog.html":{}}}],["ontological",{"_index":886,"title":{},"body":{"changelog.html":{}}}],["ontologies",{"_index":749,"title":{},"body":{"changelog.html":{}}}],["ontology",{"_index":342,"title":{},"body":{"changelog.html":{}}}],["ontologyterms",{"_index":1226,"title":{},"body":{"miscellaneous/variables.html":{}}}],["opacities",{"_index":678,"title":{},"body":{"changelog.html":{}}}],["opacity",{"_index":651,"title":{},"body":{"changelog.html":{}}}],["openapi",{"_index":429,"title":{},"body":{"changelog.html":{}}}],["openapiroute",{"_index":923,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["operations",{"_index":104,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["optimization",{"_index":604,"title":{},"body":{"changelog.html":{}}}],["optimizations",{"_index":793,"title":{},"body":{"changelog.html":{}}}],["optimized",{"_index":642,"title":{},"body":{"changelog.html":{}}}],["option",{"_index":446,"title":{},"body":{"changelog.html":{}}}],["optional",{"_index":12,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"classes/RequestCache.html":{},"changelog.html":{}}}],["options",{"_index":41,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["options.cache",{"_index":191,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["options.database",{"_index":42,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["options.datasources.map(s",{"_index":181,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["options.hubmaptoken",{"_index":172,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["organ",{"_index":356,"title":{},"body":{"changelog.html":{},"coverage.html":{},"index.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["organs",{"_index":365,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["organs.json",{"_index":1268,"title":{},"body":{"miscellaneous/variables.html":{}}}],["organs/anatomical",{"_index":680,"title":{},"body":{"changelog.html":{}}}],["originalsend",{"_index":146,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["originalsend.call(res",{"_index":149,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["originalurl",{"_index":137,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["orthographic",{"_index":546,"title":{},"body":{"changelog.html":{}}}],["ot2od026671",{"_index":1116,"title":{},"body":{"index.html":{}}}],["otherwise",{"_index":1173,"title":{},"body":{"license.html":{}}}],["out",{"_index":1175,"title":{},"body":{"license.html":{}}}],["over",{"_index":710,"title":{},"body":{"changelog.html":{}}}],["overlays",{"_index":876,"title":{},"body":{"changelog.html":{}}}],["overview",{"_index":1179,"title":{"overview.html":{}},"body":{"overview.html":{}}}],["overwritten",{"_index":1229,"title":{},"body":{"miscellaneous/variables.html":{}}}],["p",{"_index":838,"title":{},"body":{"changelog.html":{}}}],["package",{"_index":379,"title":{"dependencies.html":{}},"body":{"changelog.html":{}}}],["pages",{"_index":494,"title":{},"body":{"changelog.html":{}}}],["paired",{"_index":476,"title":{},"body":{"changelog.html":{}}}],["pane",{"_index":631,"title":{},"body":{"changelog.html":{}}}],["panel",{"_index":491,"title":{},"body":{"changelog.html":{}}}],["parameters",{"_index":311,"title":{},"body":{"classes/RequestCache.html":{}}}],["parent",{"_index":478,"title":{},"body":{"changelog.html":{}}}],["parsearray",{"_index":941,"title":{},"body":{"coverage.html":{}}}],["parseboolean",{"_index":910,"title":{},"body":{"coverage.html":{}}}],["parseboolean(query.cache",{"_index":140,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["parseboolean(value",{"_index":122,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["parsedatabasesources",{"_index":959,"title":{},"body":{"coverage.html":{}}}],["parsedqs",{"_index":26,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["parseminmaxrange",{"_index":942,"title":{},"body":{"coverage.html":{}}}],["parsenumber",{"_index":911,"title":{},"body":{"coverage.html":{}}}],["parser",{"_index":21,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["parserange",{"_index":943,"title":{},"body":{"coverage.html":{}}}],["parsesex",{"_index":944,"title":{},"body":{"coverage.html":{}}}],["parsestring",{"_index":934,"title":{},"body":{"coverage.html":{}}}],["partial",{"_index":1223,"title":{},"body":{"miscellaneous/variables.html":{}}}],["particular",{"_index":1159,"title":{},"body":{"license.html":{}}}],["partly",{"_index":657,"title":{},"body":{"changelog.html":{}}}],["partonomy",{"_index":572,"title":{},"body":{"changelog.html":{}}}],["patchglobal",{"_index":920,"title":{},"body":{"coverage.html":{}}}],["path",{"_index":1037,"title":{},"body":{"dependencies.html":{}}}],["peek",{"_index":1231,"title":{},"body":{"miscellaneous/variables.html":{}}}],["performance",{"_index":383,"title":{},"body":{"changelog.html":{}}}],["permission",{"_index":1122,"title":{},"body":{"license.html":{}}}],["permit",{"_index":1143,"title":{},"body":{"license.html":{}}}],["person",{"_index":1127,"title":{},"body":{"license.html":{}}}],["persons",{"_index":1144,"title":{},"body":{"license.html":{}}}],["pickbytype",{"_index":1195,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["placeholder",{"_index":13,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["placement",{"_index":752,"title":{},"body":{"changelog.html":{}}}],["player",{"_index":984,"title":{},"body":{"dependencies.html":{}}}],["plugin",{"_index":1002,"title":{},"body":{"dependencies.html":{}}}],["popup",{"_index":816,"title":{},"body":{"changelog.html":{}}}],["portal",{"_index":444,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["portal's",{"_index":785,"title":{},"body":{"changelog.html":{}}}],["portions",{"_index":1152,"title":{},"body":{"license.html":{}}}],["position",{"_index":358,"title":{},"body":{"changelog.html":{}}}],["possible",{"_index":726,"title":{},"body":{"changelog.html":{}}}],["practice",{"_index":51,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["preferences",{"_index":526,"title":{},"body":{"changelog.html":{}}}],["preparation",{"_index":849,"title":{},"body":{"changelog.html":{}}}],["presented",{"_index":874,"title":{},"body":{"changelog.html":{}}}],["preview",{"_index":543,"title":{},"body":{"changelog.html":{}}}],["previous",{"_index":685,"title":{},"body":{"changelog.html":{}}}],["previously",{"_index":419,"title":{},"body":{"changelog.html":{}}}],["private",{"_index":301,"title":{},"body":{"classes/RequestCache.html":{}}}],["process",{"_index":831,"title":{},"body":{"changelog.html":{}}}],["process.env",{"_index":1219,"title":{},"body":{"miscellaneous/variables.html":{}}}],["processed",{"_index":776,"title":{},"body":{"changelog.html":{}}}],["processing",{"_index":528,"title":{},"body":{"changelog.html":{}}}],["processparameter",{"_index":945,"title":{},"body":{"coverage.html":{}}}],["production",{"_index":395,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["programming",{"_index":372,"title":{},"body":{"changelog.html":{}}}],["project",{"_index":836,"title":{},"body":{"changelog.html":{}}}],["projects",{"_index":1084,"title":{},"body":{"index.html":{}}}],["projects/.../auto",{"_index":1185,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../browser.ts",{"_index":1199,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../environment.ts",{"_index":1197,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../forward",{"_index":1188,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../index.ts",{"_index":1201,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../parse",{"_index":1203,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../polyfills.ts",{"_index":1194,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../reference",{"_index":1187,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../rui",{"_index":1202,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../server.ts",{"_index":1191,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../use",{"_index":1200,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/ccf",{"_index":6,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["promise",{"_index":89,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["promisifieddorequest",{"_index":303,"title":{},"body":{"classes/RequestCache.html":{}}}],["promisifieddorequest(key",{"_index":320,"title":{},"body":{"classes/RequestCache.html":{}}}],["properties",{"_index":11,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["provided",{"_index":891,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["providers",{"_index":451,"title":{},"body":{"changelog.html":{}}}],["proxied",{"_index":105,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["prune",{"_index":119,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["public",{"_index":813,"title":{},"body":{"changelog.html":{}}}],["publish",{"_index":1137,"title":{},"body":{"license.html":{}}}],["publishing",{"_index":377,"title":{},"body":{"changelog.html":{}}}],["purpose",{"_index":1160,"title":{},"body":{"license.html":{}}}],["pushed",{"_index":619,"title":{},"body":{"changelog.html":{}}}],["python",{"_index":374,"title":{},"body":{"changelog.html":{}}}],["qs",{"_index":25,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["qs.parse(str",{"_index":47,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["qtoken",{"_index":159,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["qualitative",{"_index":789,"title":{},"body":{"changelog.html":{}}}],["quality",{"_index":453,"title":{},"body":{"changelog.html":{}}}],["queries",{"_index":1023,"title":{},"body":{"dependencies.html":{}}}],["query",{"_index":136,"title":{},"body":{"interfaces/CacheOptions.html":{},"changelog.html":{}}}],["query.ts",{"_index":936,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["queryparameterstofilter",{"_index":946,"title":{},"body":{"coverage.html":{}}}],["quickly",{"_index":768,"title":{},"body":{"changelog.html":{}}}],["r.dispose",{"_index":190,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["r.json",{"_index":253,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["range",{"_index":281,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rawtoken",{"_index":294,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rc.1",{"_index":795,"title":{},"body":{"changelog.html":{}}}],["rdf",{"_index":1061,"title":{},"body":{"dependencies.html":{}}}],["rdfjs/data",{"_index":1006,"title":{},"body":{"dependencies.html":{}}}],["rdfxml",{"_index":1063,"title":{},"body":{"dependencies.html":{}}}],["readable",{"_index":1065,"title":{},"body":{"dependencies.html":{}}}],["readfilesync",{"_index":225,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["readfilesync(source",{"_index":243,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["readonly",{"_index":322,"title":{},"body":{"classes/RequestCache.html":{}}}],["readonlyproperties",{"_index":964,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["real",{"_index":811,"title":{},"body":{"changelog.html":{}}}],["rectify",{"_index":425,"title":{},"body":{"changelog.html":{}}}],["reduce",{"_index":609,"title":{},"body":{"changelog.html":{}}}],["reference",{"_index":369,"title":{},"body":{"changelog.html":{}}}],["refernced",{"_index":477,"title":{},"body":{"changelog.html":{}}}],["refresh",{"_index":571,"title":{},"body":{"changelog.html":{}}}],["regions",{"_index":877,"title":{},"body":{"changelog.html":{}}}],["register",{"_index":1026,"title":{},"body":{"dependencies.html":{}}}],["registered",{"_index":420,"title":{},"body":{"changelog.html":{}}}],["registration",{"_index":463,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["registrations",{"_index":595,"title":{},"body":{"changelog.html":{}}}],["related",{"_index":648,"title":{},"body":{"changelog.html":{}}}],["release",{"_index":414,"title":{},"body":{"changelog.html":{}}}],["releaseproxy",{"_index":81,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["reliability",{"_index":700,"title":{},"body":{"changelog.html":{}}}],["reloads",{"_index":539,"title":{},"body":{"changelog.html":{}}}],["removed",{"_index":511,"title":{},"body":{"changelog.html":{}}}],["removes",{"_index":647,"title":{},"body":{"changelog.html":{}}}],["repository",{"_index":1081,"title":{},"body":{"index.html":{}}}],["req",{"_index":133,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["req))?.then((instance",{"_index":195,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["req.app.get('database",{"_index":293,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["req.query.token",{"_index":160,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["req['getdatabase",{"_index":193,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["request",{"_index":153,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"classes/RequestCache.html":{}}}],["requestcache",{"_index":156,"title":{"classes/RequestCache.html":{}},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{}}}],["requesthandler",{"_index":116,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["required",{"_index":755,"title":{},"body":{"changelog.html":{}}}],["res",{"_index":134,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["res.json",{"_index":147,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["res.json(cachedresponse",{"_index":145,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["res.json(result",{"_index":296,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["res.send",{"_index":1205,"title":{},"body":{"miscellaneous/variables.html":{}}}],["res.sendfile(apifile",{"_index":1209,"title":{},"body":{"miscellaneous/variables.html":{}}}],["reset",{"_index":1236,"title":{},"body":{"miscellaneous/variables.html":{}}}],["resets",{"_index":573,"title":{},"body":{"changelog.html":{}}}],["resolve('ccf",{"_index":1207,"title":{},"body":{"miscellaneous/variables.html":{}}}],["resolved",{"_index":625,"title":{},"body":{"changelog.html":{}}}],["respond",{"_index":564,"title":{},"body":{"changelog.html":{}}}],["response",{"_index":250,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["response.tissueinfo.filter(entry",{"_index":255,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["restriction",{"_index":1132,"title":{},"body":{"license.html":{}}}],["result",{"_index":70,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["result.ts",{"_index":951,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["results",{"_index":72,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["resultslist.find(entry",{"_index":270,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["resultslist.indexof(matchingentry",{"_index":275,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["resultslist[index].label",{"_index":289,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["resultslist[index].sex",{"_index":290,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["return",{"_index":46,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"miscellaneous/variables.html":{}}}],["returns",{"_index":317,"title":{},"body":{"classes/RequestCache.html":{}}}],["rforeach",{"_index":1235,"title":{},"body":{"miscellaneous/variables.html":{}}}],["rgb",{"_index":1041,"title":{},"body":{"dependencies.html":{}}}],["right",{"_index":815,"title":{},"body":{"changelog.html":{}}}],["rights",{"_index":1134,"title":{},"body":{"license.html":{}}}],["rnaseqagemaxfemale",{"_index":208,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqagemaxmale",{"_index":209,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqagemeanfemale",{"_index":210,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqagemeanmale",{"_index":211,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqageminfemale",{"_index":212,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqageminmale",{"_index":213,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqandgenotypesamplecount",{"_index":214,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqsamplecount",{"_index":215,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqsamplecountfemale",{"_index":216,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rnaseqsamplecountmale",{"_index":217,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["root",{"_index":581,"title":{},"body":{"changelog.html":{}}}],["rotates",{"_index":541,"title":{},"body":{"changelog.html":{}}}],["round",{"_index":683,"title":{},"body":{"changelog.html":{}}}],["rounded",{"_index":704,"title":{},"body":{"changelog.html":{}}}],["router",{"_index":1210,"title":{},"body":{"miscellaneous/variables.html":{}}}],["routes",{"_index":30,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["routes/browser",{"_index":32,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["routes/v1",{"_index":34,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ru/common",{"_index":968,"title":{},"body":{"dependencies.html":{}}}],["rui",{"_index":360,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["rui_locations.jsonld",{"_index":354,"title":{},"body":{"changelog.html":{}}}],["ruilocations",{"_index":291,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rxjs",{"_index":1068,"title":{},"body":{"dependencies.html":{}}}],["s",{"_index":182,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["s.endswith('hubmap/rui_locations.jsonld",{"_index":183,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["safe",{"_index":103,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["sample",{"_index":889,"title":{},"body":{"changelog.html":{}}}],["samples",{"_index":611,"title":{},"body":{"changelog.html":{}}}],["samplingsite",{"_index":218,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["saver",{"_index":1031,"title":{},"body":{"dependencies.html":{}}}],["scaffolding",{"_index":837,"title":{},"body":{"changelog.html":{}}}],["scene",{"_index":440,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["scene.ts",{"_index":932,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["scheduled",{"_index":626,"title":{},"body":{"changelog.html":{}}}],["schema",{"_index":841,"title":{},"body":{"changelog.html":{}}}],["schemes",{"_index":790,"title":{},"body":{"changelog.html":{}}}],["science",{"_index":1109,"title":{},"body":{"index.html":{}}}],["script",{"_index":57,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["search",{"_index":348,"title":{},"body":{"changelog.html":{}}}],["section",{"_index":596,"title":{},"body":{"changelog.html":{}}}],["security.html",{"_index":52,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["see",{"_index":503,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["select",{"_index":510,"title":{},"body":{"changelog.html":{}}}],["selected",{"_index":467,"title":{},"body":{"changelog.html":{}}}],["selecting",{"_index":364,"title":{},"body":{"changelog.html":{}}}],["selector",{"_index":362,"title":{},"body":{"changelog.html":{}}}],["selects",{"_index":858,"title":{},"body":{"changelog.html":{}}}],["selecttoken",{"_index":917,"title":{},"body":{"coverage.html":{}}}],["selecttoken(token",{"_index":158,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["self",{"_index":59,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["sell",{"_index":1141,"title":{},"body":{"license.html":{}}}],["semantic",{"_index":873,"title":{},"body":{"changelog.html":{}}}],["sennet",{"_index":388,"title":{},"body":{"changelog.html":{}}}],["server",{"_index":844,"title":{},"body":{"changelog.html":{}}}],["set",{"_index":522,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["setifdefined",{"_index":947,"title":{},"body":{"coverage.html":{}}}],["setup",{"_index":592,"title":{},"body":{"changelog.html":{}}}],["sex",{"_index":267,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["sexes",{"_index":740,"title":{},"body":{"changelog.html":{}}}],["sgenecount",{"_index":219,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["shall",{"_index":1149,"title":{},"body":{"license.html":{}}}],["shared",{"_index":532,"title":{},"body":{"changelog.html":{}}}],["shortest",{"_index":1036,"title":{},"body":{"dependencies.html":{}}}],["show",{"_index":567,"title":{},"body":{"changelog.html":{}}}],["showing",{"_index":775,"title":{},"body":{"changelog.html":{}}}],["shown",{"_index":784,"title":{},"body":{"changelog.html":{}}}],["shows",{"_index":456,"title":{},"body":{"changelog.html":{}}}],["side",{"_index":769,"title":{},"body":{"changelog.html":{}}}],["sides",{"_index":742,"title":{},"body":{"changelog.html":{}}}],["significant",{"_index":576,"title":{},"body":{"changelog.html":{}}}],["simple",{"_index":490,"title":{},"body":{"changelog.html":{}}}],["simplifies",{"_index":590,"title":{},"body":{"changelog.html":{}}}],["sites",{"_index":465,"title":{},"body":{"changelog.html":{}}}],["sizable",{"_index":698,"title":{},"body":{"changelog.html":{}}}],["slider",{"_index":1053,"title":{},"body":{"dependencies.html":{}}}],["slightly",{"_index":423,"title":{},"body":{"changelog.html":{}}}],["slow",{"_index":606,"title":{},"body":{"changelog.html":{}}}],["software",{"_index":1086,"title":{},"body":{"index.html":{},"license.html":{}}}],["solved",{"_index":692,"title":{},"body":{"changelog.html":{}}}],["sometimes",{"_index":765,"title":{},"body":{"changelog.html":{}}}],["soon",{"_index":381,"title":{},"body":{"changelog.html":{}}}],["sop",{"_index":600,"title":{},"body":{"changelog.html":{}}}],["source",{"_index":4,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["sources",{"_index":518,"title":{},"body":{"changelog.html":{}}}],["sparc",{"_index":594,"title":{},"body":{"changelog.html":{}}}],["spec",{"_index":231,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["spec.yaml",{"_index":1208,"title":{},"body":{"miscellaneous/variables.html":{}}}],["specific",{"_index":448,"title":{},"body":{"changelog.html":{}}}],["speed",{"_index":699,"title":{},"body":{"changelog.html":{}}}],["spinning",{"_index":842,"title":{},"body":{"changelog.html":{}}}],["sprint",{"_index":629,"title":{},"body":{"changelog.html":{}}}],["src",{"_index":58,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["stage",{"_index":670,"title":{},"body":{"changelog.html":{}}}],["staging",{"_index":396,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["standalone",{"_index":687,"title":{},"body":{"changelog.html":{}}}],["standard",{"_index":746,"title":{},"body":{"changelog.html":{}}}],["standards",{"_index":846,"title":{},"body":{"changelog.html":{}}}],["star2",{"_index":1090,"title":{},"body":{"index.html":{}}}],["started",{"_index":329,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{"changelog.html":{}}}],["starts",{"_index":898,"title":{},"body":{"changelog.html":{}}}],["startserver",{"_index":960,"title":{},"body":{"coverage.html":{}}}],["startup",{"_index":588,"title":{},"body":{"changelog.html":{}}}],["statements",{"_index":901,"title":{},"body":{"coverage.html":{}}}],["stay",{"_index":896,"title":{},"body":{"changelog.html":{}}}],["still",{"_index":614,"title":{},"body":{"changelog.html":{}}}],["stories",{"_index":834,"title":{},"body":{"changelog.html":{}}}],["str",{"_index":44,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["stream",{"_index":1066,"title":{},"body":{"dependencies.html":{}}}],["streaming",{"_index":1064,"title":{},"body":{"dependencies.html":{}}}],["string",{"_index":45,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["string).includes(sex",{"_index":273,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["structure",{"_index":643,"title":{},"body":{"changelog.html":{}}}],["structures",{"_index":632,"title":{},"body":{"changelog.html":{}}}],["styles",{"_index":869,"title":{},"body":{"changelog.html":{}}}],["styling",{"_index":486,"title":{},"body":{"changelog.html":{}}}],["subject",{"_index":1146,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1139,"title":{},"body":{"license.html":{}}}],["substantial",{"_index":1151,"title":{},"body":{"license.html":{}}}],["support",{"_index":340,"title":{},"body":{"changelog.html":{}}}],["swiper",{"_index":1071,"title":{},"body":{"dependencies.html":{}}}],["switched",{"_index":707,"title":{},"body":{"changelog.html":{}}}],["symbol('indicator",{"_index":1220,"title":{},"body":{"miscellaneous/variables.html":{}}}],["sync",{"_index":542,"title":{},"body":{"changelog.html":{}}}],["s}?token=${hubmaptoken",{"_index":184,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["table",{"_index":967,"title":{},"body":{"coverage.html":{}}}],["tables",{"_index":412,"title":{},"body":{"changelog.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":966,"title":{},"body":{"coverage.html":{}}}],["tagging",{"_index":744,"title":{},"body":{"changelog.html":{}}}],["take",{"_index":445,"title":{},"body":{"changelog.html":{}}}],["technologies",{"_index":866,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["technology",{"_index":675,"title":{},"body":{"changelog.html":{}}}],["telemetry",{"_index":535,"title":{},"body":{"changelog.html":{}}}],["term",{"_index":1256,"title":{},"body":{"miscellaneous/variables.html":{}}}],["test",{"_index":820,"title":{},"body":{"changelog.html":{}}}],["testing",{"_index":754,"title":{},"body":{"changelog.html":{}}}],["theme",{"_index":390,"title":{},"body":{"changelog.html":{}}}],["themes",{"_index":387,"title":{},"body":{"changelog.html":{}}}],["theming",{"_index":384,"title":{},"body":{"changelog.html":{}}}],["this.dorequest(key",{"_index":326,"title":{},"body":{"classes/RequestCache.html":{}}}],["this.handleerrors(key",{"_index":325,"title":{},"body":{"classes/RequestCache.html":{}}}],["this.promisifieddorequest(key",{"_index":324,"title":{},"body":{"classes/RequestCache.html":{}}}],["through",{"_index":767,"title":{},"body":{"changelog.html":{}}}],["throw",{"_index":263,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["throw_if_not_found",{"_index":914,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["throwindicator",{"_index":1196,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["thrown",{"_index":1222,"title":{},"body":{"miscellaneous/variables.html":{}}}],["thumbnails",{"_index":641,"title":{},"body":{"changelog.html":{}}}],["tied",{"_index":645,"title":{},"body":{"changelog.html":{}}}],["tiff",{"_index":777,"title":{},"body":{"changelog.html":{}}}],["tissue",{"_index":257,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["tissueinfo",{"_index":251,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqagemaxfemale",{"_index":288,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqagemaxmale",{"_index":283,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqagemeanfemale",{"_index":286,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqagemeanmale",{"_index":280,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqageminfemale",{"_index":287,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqageminmale",{"_index":282,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissues",{"_index":421,"title":{},"body":{"changelog.html":{}}}],["tissuesite",{"_index":220,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissuesitedetail",{"_index":221,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissuesitedetailabbr",{"_index":222,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissuesitedetailid",{"_index":223,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tmc",{"_index":885,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["toggle",{"_index":385,"title":{},"body":{"changelog.html":{}}}],["token",{"_index":161,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["tool",{"_index":688,"title":{},"body":{"changelog.html":{}}}],["tort",{"_index":1172,"title":{},"body":{"license.html":{}}}],["tracking/telemetry",{"_index":555,"title":{},"body":{"changelog.html":{}}}],["transparency",{"_index":689,"title":{},"body":{"changelog.html":{}}}],["travisci",{"_index":711,"title":{},"body":{"changelog.html":{}}}],["tree",{"_index":839,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["true",{"_index":49,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["try",{"_index":238,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{}}}],["tryjsonparse",{"_index":961,"title":{},"body":{"coverage.html":{}}}],["ts",{"_index":1073,"title":{},"body":{"dependencies.html":{}}}],["tslib",{"_index":1076,"title":{},"body":{"dependencies.html":{}}}],["tuned",{"_index":897,"title":{},"body":{"changelog.html":{}}}],["turn",{"_index":668,"title":{},"body":{"changelog.html":{}}}],["turned",{"_index":649,"title":{},"body":{"changelog.html":{}}}],["turning",{"_index":646,"title":{},"body":{"changelog.html":{}}}],["tutorial",{"_index":513,"title":{},"body":{"changelog.html":{}}}],["two",{"_index":788,"title":{},"body":{"changelog.html":{}}}],["type",{"_index":15,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["typealiases",{"_index":1182,"title":{"miscellaneous/typealiases.html":{}},"body":{}}],["typeof",{"_index":162,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["types",{"_index":346,"title":{},"body":{"changelog.html":{}}}],["types/lru",{"_index":1008,"title":{},"body":{"dependencies.html":{}}}],["typescript",{"_index":167,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{}}}],["typing",{"_index":854,"title":{},"body":{"changelog.html":{}}}],["uberonid",{"_index":224,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["ufl",{"_index":640,"title":{},"body":{"changelog.html":{}}}],["ui",{"_index":435,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["ui.netlify.app",{"_index":1093,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/organ",{"_index":1103,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/rui",{"_index":1100,"title":{},"body":{"index.html":{}}}],["ui/organ",{"_index":1102,"title":{},"body":{"index.html":{}}}],["ui/rui",{"_index":1101,"title":{},"body":{"index.html":{}}}],["undefined",{"_index":127,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"miscellaneous/variables.html":{}}}],["university",{"_index":1112,"title":{},"body":{"index.html":{}}}],["unknown",{"_index":109,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["unnecessary",{"_index":538,"title":{},"body":{"changelog.html":{}}}],["unsafe",{"_index":60,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["unselect",{"_index":608,"title":{},"body":{"changelog.html":{}}}],["until",{"_index":653,"title":{},"body":{"changelog.html":{}}}],["up",{"_index":674,"title":{},"body":{"changelog.html":{}}}],["update",{"_index":527,"title":{},"body":{"changelog.html":{}}}],["updated",{"_index":469,"title":{},"body":{"changelog.html":{}}}],["updateentry",{"_index":927,"title":{},"body":{"coverage.html":{}}}],["updateentry(results",{"_index":258,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["updateentry(resultslist",{"_index":266,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["updates",{"_index":505,"title":{},"body":{"changelog.html":{}}}],["upgraded",{"_index":773,"title":{},"body":{"changelog.html":{}}}],["upgrades",{"_index":860,"title":{},"body":{"changelog.html":{}}}],["upgrading",{"_index":561,"title":{},"body":{"changelog.html":{}}}],["upload",{"_index":684,"title":{},"body":{"changelog.html":{}}}],["url",{"_index":138,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/GtexTissue.html":{}}}],["urlencoded",{"_index":19,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["use",{"_index":174,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{},"license.html":{}}}],["use('/gtex",{"_index":1245,"title":{},"body":{"miscellaneous/variables.html":{}}}],["use('/hubmap",{"_index":1243,"title":{},"body":{"miscellaneous/variables.html":{}}}],["use(cacheresponses",{"_index":1242,"title":{},"body":{"miscellaneous/variables.html":{}}}],["use(checkroutesenabled",{"_index":1216,"title":{},"body":{"miscellaneous/variables.html":{}}}],["usecache",{"_index":139,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["usecachedresult",{"_index":952,"title":{},"body":{"coverage.html":{}}}],["usecachedresult('cell",{"_index":1264,"title":{},"body":{"miscellaneous/variables.html":{}}}],["usecachedresult('ontology",{"_index":1261,"title":{},"body":{"miscellaneous/variables.html":{}}}],["usecachedresult('reference",{"_index":1267,"title":{},"body":{"miscellaneous/variables.html":{}}}],["used",{"_index":106,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"changelog.html":{}}}],["usedefaults",{"_index":55,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["user",{"_index":334,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["user/os",{"_index":525,"title":{},"body":{"changelog.html":{}}}],["users",{"_index":880,"title":{},"body":{"changelog.html":{}}}],["uses",{"_index":545,"title":{},"body":{"changelog.html":{}}}],["using",{"_index":493,"title":{},"body":{"changelog.html":{}}}],["utf",{"_index":245,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["utilities",{"_index":533,"title":{},"body":{"changelog.html":{}}}],["utils/auto",{"_index":118,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["utils/ccf",{"_index":155,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["utils/request",{"_index":157,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["uuid",{"_index":1077,"title":{},"body":{"dependencies.html":{}}}],["v",{"_index":323,"title":{},"body":{"classes/RequestCache.html":{}}}],["v1.1",{"_index":413,"title":{},"body":{"changelog.html":{}}}],["v1.5.0",{"_index":667,"title":{},"body":{"changelog.html":{}}}],["v1.7",{"_index":416,"title":{},"body":{"changelog.html":{}}}],["v1.7.0",{"_index":405,"title":{},"body":{"changelog.html":{}}}],["v1.8.0",{"_index":343,"title":{},"body":{"changelog.html":{}}}],["v1routes",{"_index":33,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["value",{"_index":126,"title":{},"body":{"interfaces/CacheOptions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1233,"title":{},"body":{"miscellaneous/variables.html":{}}}],["value}`.tolowercase",{"_index":128,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["variable",{"_index":912,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":1198,"title":{"miscellaneous/variables.html":{}},"body":{"miscellaneous/variables.html":{}}}],["version",{"_index":431,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["very",{"_index":762,"title":{},"body":{"changelog.html":{}}}],["via",{"_index":107,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"changelog.html":{}}}],["video",{"_index":562,"title":{},"body":{"changelog.html":{}}}],["view",{"_index":544,"title":{},"body":{"changelog.html":{}}}],["viewer",{"_index":634,"title":{},"body":{"changelog.html":{}}}],["views",{"_index":547,"title":{},"body":{"changelog.html":{}}}],["visual",{"_index":893,"title":{},"body":{"changelog.html":{}}}],["visualization",{"_index":597,"title":{},"body":{"changelog.html":{}}}],["vitessce",{"_index":774,"title":{},"body":{"changelog.html":{}}}],["void",{"_index":268,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["vs",{"_index":507,"title":{},"body":{"changelog.html":{}}}],["vu",{"_index":892,"title":{},"body":{"changelog.html":{}}}],["warning",{"_index":798,"title":{},"body":{"changelog.html":{}}}],["warranties",{"_index":1156,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1153,"title":{},"body":{"license.html":{}}}],["web",{"_index":436,"title":{},"body":{"changelog.html":{}}}],["webcomponent",{"_index":506,"title":{},"body":{"changelog.html":{}}}],["webcomponents/webcomponentsjs",{"_index":1010,"title":{},"body":{"dependencies.html":{}}}],["webpages",{"_index":442,"title":{},"body":{"changelog.html":{}}}],["website",{"_index":1088,"title":{},"body":{"index.html":{}}}],["week",{"_index":899,"title":{},"body":{"changelog.html":{}}}],["whether",{"_index":1169,"title":{},"body":{"license.html":{}}}],["whole",{"_index":895,"title":{},"body":{"changelog.html":{}}}],["width",{"_index":566,"title":{},"body":{"changelog.html":{}}}],["within",{"_index":638,"title":{},"body":{"changelog.html":{}}}],["without",{"_index":461,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["worker",{"_index":87,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["worker('./projects/ccf",{"_index":93,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["worker.terminate",{"_index":101,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["worker.ts",{"_index":76,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"coverage.html":{}}}],["worker_threads",{"_index":88,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["workerdata",{"_index":96,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["workflows",{"_index":713,"title":{},"body":{"changelog.html":{}}}],["working",{"_index":424,"title":{},"body":{"changelog.html":{}}}],["works",{"_index":732,"title":{},"body":{"changelog.html":{}}}],["wrap",{"_index":82,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["wrap(nodeendpoint(worker",{"_index":97,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["youtube",{"_index":470,"title":{},"body":{"changelog.html":{}}}],["zone.js",{"_index":1079,"title":{},"body":{"dependencies.html":{}}}]],"pipeline":["stemmer"]}, - "store": {"interfaces/AppOptions.html":{"url":"interfaces/AppOptions.html","title":"interface - AppOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n AppOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/app.ts\n \n\n\n\n \n Extends\n \n \n DatabaseLoaderOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n placeholder\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n placeholder\n \n \n \n \n \n \n \n \n placeholder: never\n\n \n \n\n\n \n \n Type : never\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { json, urlencoded } from 'body-parser';\nimport cors from 'cors';\nimport express, { Express } from 'express';\nimport helmet from 'helmet';\nimport qs, { ParsedQs } from 'qs';\n\nimport { databaseLoader, DatabaseLoaderOptions } from './middleware/database-loader';\nimport { routes as browserRoutes } from './routes/browser';\nimport { routes as v1Routes } from './routes/v1';\n\n\nexport interface AppOptions extends DatabaseLoaderOptions {\n placeholder?: never;\n}\n\n\nexport function createApp(options: AppOptions): Express {\n const app = express();\n\n app.set('database-options', options.database);\n\n app.set('query parser', function (str: string): ParsedQs {\n return qs.parse(str, { allowDots: true });\n });\n\n // http://expressjs.com/en/advanced/best-practice-security.html\n app.use(helmet({\n contentSecurityPolicy: {\n useDefaults: true,\n directives: {\n 'script-src': ['\\'self\\'', '\\'unsafe-eval\\'', 'cdn.jsdelivr.net'],\n 'connect-src': ['*'],\n }\n }\n }));\n app.use(cors());\n\n app.use(urlencoded());\n app.use(json());\n\n app.use(databaseLoader(options));\n\n app.use('/', browserRoutes);\n app.use('/v1', v1Routes);\n\n return app;\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/CCFDatabaseInstance.html":{"url":"interfaces/CCFDatabaseInstance.html","title":"interface - CCFDatabaseInstance","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n CCFDatabaseInstance\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/utils/ccf-database-worker.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n database\n \n \n \n \n dispose\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n database\n \n \n \n \n \n \n \n \n database: CCFDatabase\n\n \n \n\n\n \n \n Type : CCFDatabase\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n dispose\n \n \n \n \n \n \n \n \n dispose: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabase, CCFDatabaseOptions } from 'ccf-database';\nimport { releaseProxy, wrap } from 'comlink';\nimport nodeEndpoint from 'comlink/dist/umd/node-adapter';\nimport { Worker } from 'worker_threads';\n\n\nexport interface CCFDatabaseInstance {\n database: CCFDatabase;\n dispose: () => Promise;\n}\n\nexport async function createCCFDatabaseWorker(options: CCFDatabaseOptions): Promise {\n const worker = new Worker('./projects/ccf-api/ccf-database.worker.js', { workerData: { options } });\n const database = wrap(nodeEndpoint(worker));\n await database.connect();\n const dispose = async () => {\n database[releaseProxy]();\n await worker.terminate();\n };\n return {\n // NOTE: this is safe as all ccf operations are proxied and used via async/await\n database: database as unknown as CCFDatabase,\n dispose\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/CacheOptions.html":{"url":"interfaces/CacheOptions.html","title":"interface - CacheOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n CacheOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n max\n \n \n \n Optional\n \n maxAge\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n max\n \n \n \n \n \n \n \n \n max: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n maxAge\n \n \n \n \n \n \n \n \n maxAge: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { RequestHandler } from 'express';\nimport { AutoPruneLRUCache } from '../utils/auto-prune-lru-cache';\n\n\nexport interface CacheOptions {\n max?: number;\n maxAge?: number;\n}\n\n\nfunction parseBoolean(value: unknown, defaultValue = false): boolean {\n if (value === undefined) {\n return defaultValue;\n }\n\n return `${value}`.toLowerCase() === 'true';\n}\n\n\nexport function cacheResponses(options?: CacheOptions): RequestHandler {\n const cache = new AutoPruneLRUCache({\n max: 100,\n maxAge: 60 * 60 * 1000,\n ...options\n });\n\n return (req, res, next) => {\n const { query, originalUrl, url } = req;\n const useCache = parseBoolean(query.cache, true);\n const key = `__${ originalUrl || url }`;\n const cachedResponse = cache.get(key);\n\n if (!useCache) {\n next();\n } else if (cachedResponse !== undefined) {\n res.json(cachedResponse);\n } else {\n const originalSend = res.json;\n res.json = body => {\n cache.set(key, body);\n return originalSend.call(res, body);\n };\n\n next();\n }\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DatabaseCacheOptions.html":{"url":"interfaces/DatabaseCacheOptions.html","title":"interface - DatabaseCacheOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DatabaseCacheOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n max\n \n \n \n Optional\n \n maxAge\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n max\n \n \n \n \n \n \n \n \n max: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n maxAge\n \n \n \n \n \n \n \n \n maxAge: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabaseOptions } from 'ccf-database';\nimport { Request, RequestHandler } from 'express';\n\nimport { AutoPruneLRUCache } from '../utils/auto-prune-lru-cache';\nimport { CCFDatabaseInstance, createCCFDatabaseWorker } from '../utils/ccf-database-worker';\nimport { RequestCache } from '../utils/request-cache';\n\n\nexport interface DatabaseCacheOptions {\n max?: number;\n maxAge?: number;\n}\n\nexport interface DatabaseLoaderOptions {\n database: CCFDatabaseOptions;\n cache?: DatabaseCacheOptions;\n}\n\n\nfunction selectToken(token: string | undefined, req: Request): string {\n const qtoken = req.query.token;\n\n if (token) {\n return token;\n } else if (typeof qtoken === 'string' && qtoken) {\n return qtoken;\n }\n\n return '';\n}\n\nfunction createDatabase(token: string, options: CCFDatabaseOptions): Promise {\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const hubmapToken = token || options.hubmapToken || undefined;\n\n return createCCFDatabaseWorker({\n ...options,\n hubmapDataUrl: '', // Do not use deprecated internal hubmap data loading\n dataSources: options.dataSources.map(s =>\n hubmapToken && typeof s === 'string' && s.endsWith('hubmap/rui_locations.jsonld') ? `${s}?token=${hubmapToken}` : s\n )\n });\n}\n\nexport function databaseLoader(options: DatabaseLoaderOptions): RequestHandler {\n const cache = new RequestCache(\n new AutoPruneLRUCache({\n max: 10,\n maxAge: 60 * 60 * 1000,\n dispose: (_key, instance) => instance.then((r) => r.dispose()),\n ...options.cache\n }),\n token => createDatabase(token, options.database)\n );\n\n return (req, _res, next) => {\n req['getDatabase'] = (token?: string) => cache.get(selectToken(token, req))?.then((instance) => instance.database);\n next();\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DatabaseLoaderOptions.html":{"url":"interfaces/DatabaseLoaderOptions.html","title":"interface - DatabaseLoaderOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DatabaseLoaderOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n cache\n \n \n \n \n database\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n cache\n \n \n \n \n \n \n \n \n cache: DatabaseCacheOptions\n\n \n \n\n\n \n \n Type : DatabaseCacheOptions\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n database\n \n \n \n \n \n \n \n \n database: CCFDatabaseOptions\n\n \n \n\n\n \n \n Type : CCFDatabaseOptions\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabaseOptions } from 'ccf-database';\nimport { Request, RequestHandler } from 'express';\n\nimport { AutoPruneLRUCache } from '../utils/auto-prune-lru-cache';\nimport { CCFDatabaseInstance, createCCFDatabaseWorker } from '../utils/ccf-database-worker';\nimport { RequestCache } from '../utils/request-cache';\n\n\nexport interface DatabaseCacheOptions {\n max?: number;\n maxAge?: number;\n}\n\nexport interface DatabaseLoaderOptions {\n database: CCFDatabaseOptions;\n cache?: DatabaseCacheOptions;\n}\n\n\nfunction selectToken(token: string | undefined, req: Request): string {\n const qtoken = req.query.token;\n\n if (token) {\n return token;\n } else if (typeof qtoken === 'string' && qtoken) {\n return qtoken;\n }\n\n return '';\n}\n\nfunction createDatabase(token: string, options: CCFDatabaseOptions): Promise {\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const hubmapToken = token || options.hubmapToken || undefined;\n\n return createCCFDatabaseWorker({\n ...options,\n hubmapDataUrl: '', // Do not use deprecated internal hubmap data loading\n dataSources: options.dataSources.map(s =>\n hubmapToken && typeof s === 'string' && s.endsWith('hubmap/rui_locations.jsonld') ? `${s}?token=${hubmapToken}` : s\n )\n });\n}\n\nexport function databaseLoader(options: DatabaseLoaderOptions): RequestHandler {\n const cache = new RequestCache(\n new AutoPruneLRUCache({\n max: 10,\n maxAge: 60 * 60 * 1000,\n dispose: (_key, instance) => instance.then((r) => r.dispose()),\n ...options.cache\n }),\n token => createDatabase(token, options.database)\n );\n\n return (req, _res, next) => {\n req['getDatabase'] = (token?: string) => cache.get(selectToken(token, req))?.then((instance) => instance.database);\n next();\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/GtexTissue.html":{"url":"interfaces/GtexTissue.html","title":"interface - GtexTissue","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n GtexTissue\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n colorHex\n \n \n \n \n colorRgb\n \n \n \n \n datasetId\n \n \n \n \n eGeneCount\n \n \n \n \n expressedGeneCount\n \n \n \n \n hasEGenes\n \n \n \n \n hasSGenes\n \n \n \n \n mappedInHubmap\n \n \n \n \n rnaSeqAgeMaxFemale\n \n \n \n \n rnaSeqAgeMaxMale\n \n \n \n \n rnaSeqAgeMeanFemale\n \n \n \n \n rnaSeqAgeMeanMale\n \n \n \n \n rnaSeqAgeMinFemale\n \n \n \n \n rnaSeqAgeMinMale\n \n \n \n \n rnaSeqAndGenotypeSampleCount\n \n \n \n \n rnaSeqSampleCount\n \n \n \n \n rnaSeqSampleCountFemale\n \n \n \n \n rnaSeqSampleCountMale\n \n \n \n \n samplingSite\n \n \n \n \n sGeneCount\n \n \n \n \n tissueSite\n \n \n \n \n tissueSiteDetail\n \n \n \n \n tissueSiteDetailAbbr\n \n \n \n \n tissueSiteDetailId\n \n \n \n \n uberonId\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n colorHex\n \n \n \n \n \n \n \n \n colorHex: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorRgb\n \n \n \n \n \n \n \n \n colorRgb: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n datasetId\n \n \n \n \n \n \n \n \n datasetId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n eGeneCount\n \n \n \n \n \n \n \n \n eGeneCount: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n expressedGeneCount\n \n \n \n \n \n \n \n \n expressedGeneCount: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n hasEGenes\n \n \n \n \n \n \n \n \n hasEGenes: \n\n \n \n\n\n\n\n\n\n\n \n \n \n \n \n \n \n hasSGenes\n \n \n \n \n \n \n \n \n hasSGenes: \n\n \n \n\n\n\n\n\n\n\n \n \n \n \n \n \n \n mappedInHubmap\n \n \n \n \n \n \n \n \n mappedInHubmap: \n\n \n \n\n\n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAgeMaxFemale\n \n \n \n \n \n \n \n \n rnaSeqAgeMaxFemale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAgeMaxMale\n \n \n \n \n \n \n \n \n rnaSeqAgeMaxMale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAgeMeanFemale\n \n \n \n \n \n \n \n \n rnaSeqAgeMeanFemale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAgeMeanMale\n \n \n \n \n \n \n \n \n rnaSeqAgeMeanMale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAgeMinFemale\n \n \n \n \n \n \n \n \n rnaSeqAgeMinFemale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAgeMinMale\n \n \n \n \n \n \n \n \n rnaSeqAgeMinMale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqAndGenotypeSampleCount\n \n \n \n \n \n \n \n \n rnaSeqAndGenotypeSampleCount: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqSampleCount\n \n \n \n \n \n \n \n \n rnaSeqSampleCount: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqSampleCountFemale\n \n \n \n \n \n \n \n \n rnaSeqSampleCountFemale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqSampleCountMale\n \n \n \n \n \n \n \n \n rnaSeqSampleCountMale: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n samplingSite\n \n \n \n \n \n \n \n \n samplingSite: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n sGeneCount\n \n \n \n \n \n \n \n \n sGeneCount: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueSite\n \n \n \n \n \n \n \n \n tissueSite: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueSiteDetail\n \n \n \n \n \n \n \n \n tissueSiteDetail: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueSiteDetailAbbr\n \n \n \n \n \n \n \n \n tissueSiteDetailAbbr: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueSiteDetailId\n \n \n \n \n \n \n \n \n tissueSiteDetailId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n uberonId\n \n \n \n \n \n \n \n \n uberonId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabaseOptions } from 'ccf-database';\nimport { RequestHandler } from 'express';\nimport { readFileSync } from 'fs';\nimport fetch from 'node-fetch';\n\nimport { AutoPruneLRUCache } from '../../../utils/auto-prune-lru-cache';\nimport { RequestCache } from '../../../utils/request-cache';\nimport { JsonLdObj } from 'jsonld/jsonld-spec';\nimport { get } from '../../../environment';\n\nexport interface GtexTissue {\n colorHex: string;\n colorRgb: string;\n datasetId: string;\n eGeneCount: number;\n expressedGeneCount: number;\n hasEGenes: true;\n hasSGenes: true;\n mappedInHubmap: true;\n rnaSeqAgeMaxFemale: number;\n rnaSeqAgeMaxMale: number;\n rnaSeqAgeMeanFemale: number;\n rnaSeqAgeMeanMale: number;\n rnaSeqAgeMinFemale: number;\n rnaSeqAgeMinMale: number;\n rnaSeqAndGenotypeSampleCount: number;\n rnaSeqSampleCount: number;\n rnaSeqSampleCountFemale: number;\n rnaSeqSampleCountMale: number;\n sGeneCount: number;\n samplingSite: string;\n tissueSite: string;\n tissueSiteDetail: string;\n tissueSiteDetailAbbr: string;\n tissueSiteDetailId: string;\n uberonId: string;\n}\n\nconst DEFAULT_GTEX_RUI_LOCATIONS = 'projects/ccf-eui/src/assets/gtex/data/rui_locations.jsonld';\nconst GTEX_API_URL = 'https://gtexportal.org/rest/v1/dataset/tissueInfo?datasetId=gtex_v8&format=json';\n\nasync function getLocations(): Promise {\n try {\n const source = get('GTEX_RUI_LOCATIONS', DEFAULT_GTEX_RUI_LOCATIONS);\n // Attempt to load the source url as a local file\n const data = readFileSync(source, { encoding: 'utf-8' });\n const jsonld: JsonLdObj = JSON.parse(data);\n const results = jsonld['@graph'] as JsonLdObj[];\n\n const response: { tissueInfo: GtexTissue[] } = await fetch(GTEX_API_URL).then(r => r.json());\n const mappedEntries = response.tissueInfo.filter(entry => entry.mappedInHubmap);\n for (const tissue of mappedEntries) {\n updateEntry(results, tissue, 'Female');\n updateEntry(results, tissue, 'Male');\n }\n\n return jsonld;\n } catch (_error) {\n throw new Error('No data available');\n }\n}\n\nexport function updateEntry(resultsList: JsonLdObj[], tissueInfo: GtexTissue, sex: 'Male' | 'Female'): void {\n const matchingEntry = resultsList.find(entry => entry['@id']?.includes(tissueInfo.tissueSiteDetailId) && (entry.label as string).includes(sex));\n let newLabel = '';\n if (matchingEntry) {\n const index = resultsList.indexOf(matchingEntry);\n newLabel = sex === 'Male' ?\n `Males (n=${tissueInfo.rnaSeqSampleCountMale}), Mean Age ${tissueInfo.rnaSeqAgeMeanMale} (range ${tissueInfo.rnaSeqAgeMinMale}-${tissueInfo.rnaSeqAgeMaxMale})` :\n `Females (n=${tissueInfo.rnaSeqSampleCountFemale}), Mean Age ${tissueInfo.rnaSeqAgeMeanFemale} (range ${tissueInfo.rnaSeqAgeMinFemale}-${tissueInfo.rnaSeqAgeMaxFemale})`;\n resultsList[index].label = newLabel;\n resultsList[index].sex = sex;\n }\n}\n\nexport function ruiLocations(): RequestHandler {\n const cache = new RequestCache(\n new AutoPruneLRUCache({\n max: 10,\n maxAge: 60 * 60 * 1000\n }),\n getLocations\n );\n\n return async (req, res, _next) => {\n const options: CCFDatabaseOptions = req.app.get('database-options');\n const rawToken = req.query.token;\n const token = typeof rawToken === 'string' ? rawToken : '';\n const result = await cache.get(token, options);\n\n res.json(result);\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestCache.html":{"url":"classes/RequestCache.html","title":"class - RequestCache","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestCache\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/utils/request-cache.ts\n \n\n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n get\n \n \n Private\n Async\n handleErrors\n \n \n Private\n Async\n promisifiedDoRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(cache: LRUCache>, doRequest: (key: K,args: []) => void)\n \n \n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:4\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n cache\n \n \n LRUCache>\n \n \n \n No\n \n \n \n \n doRequest\n \n \n function\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n get\n \n \n \n \n \n \nget(key: K, ...args: [])\n \n \n\n\n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:10\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n K\n \n\n \n No\n \n\n\n \n \n args\n \n []\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n Async\n handleErrors\n \n \n \n \n \n \n \n handleErrors(key: K, request: Promise)\n \n \n\n\n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:27\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n K\n \n\n \n No\n \n\n\n \n \n request\n \n Promise\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n Async\n promisifiedDoRequest\n \n \n \n \n \n \n \n promisifiedDoRequest(key: K, ...args: [])\n \n \n\n\n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:23\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n K\n \n\n \n No\n \n\n\n \n \n args\n \n []\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import LRUCache from 'lru-cache';\n\n\nexport class RequestCache {\n constructor(\n readonly cache: LRUCache>,\n readonly doRequest: (key: K, ...args: unknown[]) => V | Promise\n ) { }\n\n get(key: K, ...args: unknown[]): Promise {\n const { cache } = this;\n let result = cache.get(key);\n\n if (!result) {\n result = this.promisifiedDoRequest(key, ...args);\n cache.set(key, result);\n this.handleErrors(key, result);\n }\n\n return result;\n }\n\n private async promisifiedDoRequest(key: K, ...args: unknown[]): Promise {\n return this.doRequest(key, ...args);\n }\n\n private async handleErrors(key: K, request: Promise): Promise {\n const { cache } = this;\n\n try {\n await request;\n } catch (_error) {\n if (cache.get(key) === request) {\n cache.del(key);\n }\n }\n }\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"changelog.html":{"url":"changelog.html","title":"getting-started - changelog","body":"\n \n\nChangelog\nChangelog for the Common Coordinate Framework (CCF) User Interfaces\n3.1.0 - 2022-04-07\nAdded in 3.1.0\n\nAdded support for the latest CCF Ontology v1.8.0 which adds cell types\nAdded feature to search for tissue blocks by cell type\nAdded API feature to dynamically generate GTEx rui_locations.jsonld\nAdded logging of organ and block position changes to the RUI\nAdded an expanded organ selector that makes selecting organs much easier with the larger number of reference organs we have now\nNow generating programming libraries for the CCF-API in Python, TypeScript, TypeScript (Angular), and JavaScript. We will be publishing them to appropriate package managers soon.\nImproved performance of the CCF-API\nNew theming options and toggle for the CCF EUI/RUI\nAdded new themes for SenNet, GTEx, and a default theme\nAdded compodoc generated code documentation to production and staging builds\nBug fixes and minor improvements\n\n3.0.0 - 2022-01-27\nAdded in 3.0.0\n\nAdded support for the latest CCF Ontology v1.7.0\nBug fixes and code cleanup\n\n3.0.0 BETA - 2021-12-17\nAdded in 3.0.0 BETA\n\nAdded reference organs and ASCT+B tables from the v1.1 CCF Release\nLinks: CCF Ontology v1.7 BETA, CCF Release v1.1\n\n\n\nKnown issues in 3.0.0 BETA\n\nPreviously registered tissues may appear slightly off. We are working to rectify this before making it a production release.\n\n2.5.0 - 2021-12-17\nAdded in 2.5.0\n\nCCF-API OpenAPI Spec and implementation. Next version will connect the EUI to this as it's backend.\nAdded the CCF Body UI Web Component for integrating the 3D scene deeply in webpages (including the HuBMAP data portal).\nThe organ-info Web Component can now take an option to highlight specific blocks in the scene. Currently only highlights by providers, but age, sex, and BMI will be added in the next version.\nBug fixes and Quality of Life improvements\n\n2.4.0 - 2021-12-10\nAdded in 2.4.0\n\nRUI shows a confirmation dialog when a user attempts to leave without finishing registration\nAdded GTEx data to EUI\nRUI Common Extraction Sites are now known as Landmarks\nOrgan info now highlights the block selected on click\nUpdated RUI YouTube Demo link\nBug fixes and Quality of Life improvements\n\n2.3.1 - 2021-09-13\nAdded in 2.3.1\n\nAdded support for paired organs to be refernced by their parent (ala Kidney + Left/Right Kidney)\n\n2.3.0 - 2021-09-10\nAdded in 2.3.0\n\nGreatly improved CCF Database performance. This improves the performance in both organ-info and EUI.\nImproved styling of organ-info\n\n2.2.0 - 2021-09-10\nAdded in 2.2.0\n\nAdded an organ-info web component for displaying reference organs and associated data in a simple panel display. The hubmap portal will be using this soon for organ pages.\nEMBEDDING.md instructions have been updated for organ-info embedding.\n\n2.1.0 - 2021-07-30\nAdded in EUI / RUI 2.1.0\n\nBetter support for embedding EUI/RUI in different containers, see EMBEDDING.md for updated instructions.\nConfiguration updates:\nConfiguration of EUI/RUI via webcomponent properties (vs globalConfig)\nOptional use of ontology id to select reference organs in the RUI\nRemoved embedded and tutorial mode configurations from the RUI config\nAbility to load data sources in the eui via external configuration\nAdded cancelRegistration callback to rui external configuration\n\n\nSet dark/light theme based on user/OS preferences\nUpdate HuBMAP search processing to conform to new field names\nCode cleanup, shared utilities, etc.\nTelemetry dialog box fixes to avoid unnecessary reloads\nRUI gizmo rotates in sync with the reference organ in 3D preview view\nRUI now uses an orthographic view when in registration views\n\n2.0.0 - 2021-07-16\nAdded in EUI / RUI 2.0.0\n\nRUI and EUI are now basic web-components, see EMBEDDING.md\nAdded advanced google analytics tracking/telemetry\nLinked donor card and tissue block hovering\nUpdated dependencies, including upgrading to Angular 12\nMinor UI and Bug fixes\nUpdated demo video links\nOrgan carousel will respond to container width and show only full icons\nEUI: clicking refresh and selecting body on partonomy resets the body view\n\nBreaking changes in EUI / RUI 2.0.0\n\nEmbedding the EUI and RUI must now be done via web-components. The most significant change is the element is no longer called ccf-root but is instead called ccf-eui or ccf-rui depending on the UI being embedded.\n\n1.7.0 - 2021-05-21\nAdded in EUI / RUI 1.7.0\n\nAdded a startup modal to the RUI which simplifies the initial setup for a new registration\nAdded 8 new reference organs, bringing us to 13 Reference Organs!\nAdded SPARC Registrations to the EUI\nAdded a tissue section visualization to the results list in the EUI\n\n1.6.0 - 2021-04-09\nAdded in RUI 1.6.0\n\nAdded SOP information to the About section\n\nAdded in EUI 1.6.0\n\nAdded color assignment/selection to both 3d scene and list results\nBug fixes, code cleanup, and optimization\n\nKnown issues in 1.6.0\n\nThe 3d scene is a little slow. To be able to interact, unselect reference organs to reduce scene complexity.\nTissue samples may be a little off in the 3D scene. This will be fixed in a future release. Data is still accurate.\n\n1.5.0 - 2021-03-26\nAdded in RUI 1.5.0\n\nMinor styling updates\n\nAdded in EUI 1.5.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features not fully integrated. This should be resolved in the next release scheduled for April 9th. You can view the results of this sprint on staging.\n\nUpdated styling to better fit the user interface spec\nAdded a new results pane which structures data into Donor->Tissue Blocks (+Datasets)->Tissue Samples (+Datasets)\nAdded a link viewer that allows us to display donors, samples, and datasets in a frame within the application\nAdded UFL thumbnails\nUpdated and optimized the ccf-database for the new results structure and future integrations\nTied organ carousel to the 3D scene. Turning off an organ removes the organ and related tissues from the 3D scene.\nTurned off anatomical structure opacity adjustment until it can be fully integrated\n\n1.4.0 - 2021-03-12\nAdded in RUI 1.4.0\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec\n\nAdded in EUI 1.4.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features partly integrated. This should be resolved in the next release scheduled for March 26th. You can view the results of this sprint on staging.\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec and match RUI styling\nUpdated the Info Dialog to match the RUI look and feel\nUpdated the data processing to improve efficiency and generate data in the form needed for the v1.5.0 spec\nAdded a reference organ selector, also used in the RUI, to turn off/on reference organs on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\nAdded a technology filter\nAdded a control to set Opacities of individual organs/anatomical structures on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\n\n1.3.5 - 2021-02-26\nAdded in RUI 1.3.5\n\nUpdated with a new round of User Interface improvements\nAdded the ability to upload previous registrations created using the standalone version of the RUI tool\nOrgans now have transparency applied automatically\nSolved a major memory leak and performance issue with the 3D reference organ interface. You should notice a sizable speed and reliability increase.\nRUI location numeric data is now rounded to 3 digits\nSwitched to using GitHub Actions over TravisCI for our CI/CD workflows\n\nAdded in EUI 1.3.5\n\nRemoved CCF's internal image-viewer in favor of the image-viewer on the HuBMAP Data Portal\n\nEUI 1.2.0 / RUI 1.0 FINAL - 2020-10-30\nAdded in EUI 1.2.0 / RUI 1.0 FINAL\n\nBug fixes and improvements\nUpdated embedding API in collaboration with the IEC\nUpdated EUI codebase to be in sync with code changes made for the RUI\nAdded KPMP data to the EUI\n\nKnown Issues in EUI 1.2.0 / RUI 1.0 FINAL\n\nIt is still possible that a 3d organ may fail to load. If this happens, just refresh and try again.\nEUI has not been updated with the latest organ set. This will be added in December with its scheduled refresh.\n\nRUI 1.0 BETA - 2020-10-16\nAdded in RUI 1.0 BETA\n\nCreated the first version of the RUI 1.0. This version is a BETA and works in standalone mode only. The next version will include full support and integration into the HuBMAP Ingestion Portal.\n10 Reference Organs are available to choose from (a combination of 4 organs, 2 sexes, and one organ with 2 sides [kidney])\nImplemented automatic tagging of data via collisions with anatomical structures\nRUI Location data is in standard JSON-LD format linked via the CCF Ontology and related ontologies\nImplemented extraction sites display to help guide placement of tissues\n\nKnown Issues in RUI 1.0 BETA\n\nWhile support for embedding is implemented, more testing and collaboration with IEC is required before it is made fully available. Initial embedding documentation is available here.\nWhen adjusting transparency via the left-hand Anatomical Structures menu or Show Previous Registrations option, the transparency effect is not very good. This will be addressed before the RUI 1.0 production release.\nSometimes the 3d organ fails to load when clicking through reference organs quickly (and other side cases). If this happens, just refresh and try again.\n\n1.1.0 - 2020-07-31\nAdded in 1.1.0\n\nUpgraded to latest Vitessce Image Viewer and started showing processed TIFF images coming directly from the HuBMAP infrastructure\nProcessed CODEX and 10x datasets are shown in the HuBMAP Portal's visualization tool\nAdded a limited set of TIFF image thumbnails, with more to come\nAdded two qualitative color schemes for colorizing images in the image viewer\nBug fixes/performance optimizations\n\n1.0.0-rc.1 - 2020-06-22\n\n:warning: WARNING: This version is a release candidate. Some minor updates will likely happen between now and the official HuBMAP Data Release 1 in July.\n\nAdded in 1.0.0-rc.1\n\nBody UI interactions\nImage Viewer Integration\nPartonomy linkage to search / Body UI\nNow fully integrated into the HuBMAP Portal\n\nKnown Issues in 1.0.0-rc.1\n\nImage Viewer is using a placeholder .tiff until more .tiff images can be loaded from the IEC\n\n1.0.0-alpha.3 - 2019-05-08\nAdded in 1.0.0-alpha.3\n\nHooked up the interface to real data (not shown online as the data is not public yet)\nAdded the Tissue Browser on the right\nAdded the initial (Tissue) Image Viewer popup. Currently shows metadata, but no images yet.\nAdded an initial 3D Body. Tissues cuboids currently not displayed, but a test cuboid is shown.\nDocumentation (>90%) and testing coverage improved further\n\n1.0.0-alpha.2 - 2019-03-27\nAdded in 1.0.0-alpha.2\n\nIncreased documentation and testing coverage across the board\nAdded fullscreen button\nBug fixes and optimizations\n\n1.0.0-alpha.1 - 2019-03-06\nAdded in 1.0.0-alpha.1\n\nStarted the process of implementing the 1.0.0 UI spec\nSpec Doc\nUser Stories\n\n\nSetup the base project scaffolding for the new version\nAdded CCF Partonomy (CCF-P) search and tree display\nAdded a filter for filter tissues\n\n0.6.0 - 2019-11-08\nAdded in 0.6.0\n\nThe CCF API project was started with an initial OpenAPI Schema, documentation, and code for spinning up a mock data server. This codifies the CCF data and metadata standards defined by MC-IU and will be used by the CCF EUI and RUI.\nIn preparation for future developments, we added a hidden, alpha-level 3d organ viewer. You can toggle this on and off in the organ view, by typing 3d with your keyboard.\nUpdated navigation to directly jump to the tissue browser when a user selects an item from the search box\nUpgraded dependencies, including upgrades to Angular 8\nTesting and bug fixes\nMinor UI updates\nChanged download icon color\nChanged the background color for the search\nMoved the Technologies filter above ontology\nAdditional styles for details button\n\n\n\n0.5.0 - 2019-05-24\nAdded in 0.5.0\n\nDisplay of the CCF ontology, integrated with search\nSemantic search by ontology, results are presented at all levels\nTissue overlays showing regions of interest\nData download links to direct users to https://sampledata.hubmapconsortium.org\nData documentation (95% coverage) and testing (85% coverage)\n\n0.2.0 - 2019-05-03\nAdded in 0.2.0\n\nSprint 2 release of the CCF-UI!\nA search interface was added to query data by age, sex, technology and TMC. Ontological search will be implemented in the next sprint.\nBody, Organ, and Tissue views now respond to updates to the search on the fly\nAppropriate metadata is now displayed in the Body, Organ, Tissue, and Cell views\n\n0.1.0 - 2019-04-12\nAdded in 0.1.0\n\nSprint 1 release of the CCF-UI!\nSetup the base project scaffolding\nAdded a sample database that includes initial data provided by VU\nAdded Visual browsing of tissue samples and metadata at the whole body, organ, tissue, and cell level\nStay tuned! More features coming in Sprint 2 (starts next week!) and Sprint 3\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n projects/ccf-api/src/lib/app.ts\n \n interface\n AppOptions\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/ccf-api/src/lib/app.ts\n \n function\n createApp\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getBoolean\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n has\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n isDebug\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n parseBoolean\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n parseNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n variable\n env\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n variable\n THROW_IF_NOT_FOUND\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n interface\n DatabaseCacheOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n interface\n DatabaseLoaderOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n function\n createDatabase\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n function\n databaseLoader\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n function\n selectToken\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n interface\n CacheOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n function\n cacheResponses\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n function\n parseBoolean\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/polyfills.ts\n \n function\n patchGlobal\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/browser.ts\n \n variable\n browserRoute\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/browser.ts\n \n variable\n openApiRoute\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/browser.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/index.ts\n \n variable\n checkRoutesEnabled\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/index.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n interface\n GtexTissue\n \n 0 %\n (0/26)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n function\n getLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n function\n ruiLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n function\n updateEntry\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n variable\n DEFAULT_GTEX_RUI_LOCATIONS\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n variable\n GTEX_API_URL\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/index.ts\n \n variable\n checkRoutesEnabled\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/index.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/rui-locations.ts\n \n function\n getLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/rui-locations.ts\n \n function\n ruiLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/index.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/reference-organ-scene.ts\n \n function\n getReferenceOrganSceneHandler\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/reference-organ-scene.ts\n \n function\n parseString\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/forward-database-query.ts\n \n function\n forwardDatabaseQuery\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n clamp\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseArray\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseMinMaxRange\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseRange\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseSex\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n processParameter\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n queryParametersToFilter\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n setIfDefined\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n variable\n FILTER_DEFAULTS\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/use-cached-result.ts\n \n function\n useCachedResult\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/use-cached-result.ts\n \n variable\n CACHE_DIR\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n getCacheOptions\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n getDatabaseOptions\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n getPort\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n loadDatabaseSource\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n parseDatabaseSources\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n startServer\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n tryJsonParse\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n variable\n methods\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n variable\n mutableProperties\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n variable\n readonlyProperties\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/ccf-database-worker.ts\n \n interface\n CCFDatabaseInstance\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/ccf-database-worker.ts\n \n function\n createCCFDatabaseWorker\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/request-cache.ts\n \n class\n RequestCache\n \n 0 %\n (0/5)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @angular-ru/common : ^15.126.1\n \n @angular/animations : ^12.1.1\n \n @angular/cdk : ^12.1.1\n \n @angular/common : ^12.1.1\n \n @angular/compiler : ^12.1.1\n \n @angular/core : ^12.1.1\n \n @angular/elements : ^12.1.1\n \n @angular/forms : ^12.1.1\n \n @angular/material : ^12.1.3\n \n @angular/platform-browser : ^12.1.1\n \n @angular/platform-browser-dynamic : ^12.1.1\n \n @angular/router : ^12.1.1\n \n @angular/youtube-player : ^12.1.1\n \n @deck.gl/core : ^8.5.7\n \n @deck.gl/geo-layers : ^8.5.7\n \n @deck.gl/layers : ^8.5.7\n \n @deck.gl/mesh-layers : ^8.5.7\n \n @loaders.gl/core : ^3.0.12\n \n @loaders.gl/draco : ^3.0.12\n \n @loaders.gl/gltf : ^3.0.12\n \n @luma.gl/core : ^8.5.7\n \n @math.gl/core : ^3.5.5\n \n @ngxs-labs/data : ^6.2.0\n \n @ngxs/logger-plugin : ^3.7.1\n \n @ngxs/storage-plugin : ^3.7.1\n \n @ngxs/store : ^3.7.1\n \n @rdfjs/data-model : ^1.2.0\n \n @types/lru-cache : ^5.1.1\n \n @webcomponents/webcomponentsjs : ^2.5.0\n \n bind-decorator : ^1.0.11\n \n body-parser : ^1.19.0\n \n cannon-es : ^0.18.0\n \n comlink : ^4.3.0\n \n concat : ^1.0.3\n \n cors : ^2.8.5\n \n css-element-queries : ^1.2.3\n \n document-register-element : ^1.7.2\n \n dotenv : ^10.0.0\n \n express : ^4.17.1\n \n file-saver : ^2.0.5\n \n fs-extra : ^10.0.0\n \n graphology : ^0.20.0\n \n graphology-shortest-path : ^1.4.1\n \n helmet : ^4.6.0\n \n hex-rgb : ^5.0.0\n \n idb-keyval : ^6.0.1\n \n jsonld : ^5.2.0\n \n lodash : ^4.17.21\n \n lru-cache : ^6.0.0\n \n n3 : ^1.8.1\n \n ng5-slider : ^1.2.6\n \n ngx-google-analytics : ^11.2.1\n \n ngx-markdown : ^12.0.1\n \n node-fetch : ^2.6.7\n \n qs : ^6.10.2\n \n rdf-literal : ^1.2.0\n \n rdfxml-streaming-parser : ^1.4.0\n \n readable-stream : ^3.6.0\n \n rxjs : ^6.6.7\n \n stream-browserify : ^3.0.0\n \n swiper : ^6.5.1\n \n ts-cacheable : ^1.0.6\n \n tslib : ^2.1.0\n \n uuid : ^8.3.2\n \n zone.js : ~0.11.4\n \n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nCommon Coordinate Framework (CCF) - User Interfaces\n\n\n\n\n\n\n\nThis repository is a monorepo (multiple projects in one repository) containing the software to build the CCF-EUI, CCF-RUI, and CCF-Organ-Info.\nWebsite Links\n\nCCF Exploration User Interface (CCF-EUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app\nProduction: https://portal.hubmapconsortium.org/ccf-eui\nProduction (alt): https://hubmapconsortium.github.io/ccf-ui/\nStaging: https://hubmap-ccf-ui.netlify.app/\nOld Version 0.6.0: https://old--hubmap-ccf-ui.netlify.app\n\n\nCCF Registration User Interface (CCF-RUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app/rui/\nProduction: https://hubmapconsortium.github.io/ccf-ui/rui/\nStaging: https://hubmap-ccf-ui.netlify.app/rui/\n\n\nCCF Organ Info Component (CCF-Organ-Info)\nProduction: https://hubmapconsortium.github.io/ccf-ui/organ-info/\nStaging: https://hubmap-ccf-ui.netlify.app/organ-info/\n\n\n\nBackground and More Information\nFor more information about the Common Coordinate Framework (CCF), see the HuBMAP CCF Portal at https://hubmapconsortium.github.io/ccf/.\nChange Log\nSee the ChangeLog for the latest developments.\nCredits\nThis software is developed by the Cyberinfrastructure for Network Science Center at Indiana University. It is funded by NIH Award OT2OD026671.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\nMIT License\nCopyright (c) 2019 HuBMAP Consortium\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n \n \n \n 1 Class\n \n \n \n \n \n \n \n 6 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/typealiases.html":{"url":"miscellaneous/typealiases.html","title":"miscellaneous-typealiases - typealiases","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Type aliases\n\n\n\n Index\n \n \n \n \n \n \n AnyAutoPruneLRUCache   (projects/.../auto-prune-lru-cache.ts)\n \n \n DatabaseGetter   (projects/.../reference-organ-scene.ts)\n \n \n DatabaseGetter   (projects/.../forward-database-query.ts)\n \n \n DatabaseQueryMethods   (projects/.../forward-database-query.ts)\n \n \n DatabaseSource   (projects/.../server.ts)\n \n \n DatabaseSources   (projects/.../server.ts)\n \n \n GlobalThis   (projects/.../polyfills.ts)\n \n \n PickByType   (projects/.../forward-database-query.ts)\n \n \n ThrowIndicator   (projects/.../environment.ts)\n \n \n \n \n \n \n\n\n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n \n \n \n \n \n AnyAutoPruneLRUCache\n \n \n \n \n AutoPruneLRUCache\n\n \n \n \n \n projects/ccf-api/src/lib/routes/v1/reference-organ-scene.ts\n \n \n \n \n \n \n DatabaseGetter\n \n \n \n \n function\n\n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/forward-database-query.ts\n \n \n \n \n \n \n DatabaseGetter\n \n \n \n \n function\n\n \n \n \n \n \n \n \n \n \n DatabaseQueryMethods\n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n PickByType\n \n \n \n \n \n\n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n \n \n \n \n \n DatabaseSource\n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n DatabaseSources\n \n \n \n \n \n\n \n \n \n \n projects/ccf-api/src/lib/polyfills.ts\n \n \n \n \n \n \n GlobalThis\n \n \n \n \n \n\n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n \n \n \n \n \n ThrowIndicator\n \n \n \n \n \n\n \n \n \n \n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n browserRoute   (projects/.../browser.ts)\n \n \n CACHE_DIR   (projects/.../use-cached-result.ts)\n \n \n checkRoutesEnabled   (projects/.../index.ts)\n \n \n checkRoutesEnabled   (projects/.../index.ts)\n \n \n DEFAULT_GTEX_RUI_LOCATIONS   (projects/.../rui-locations.ts)\n \n \n env   (projects/.../environment.ts)\n \n \n FILTER_DEFAULTS   (projects/.../parse-filter.ts)\n \n \n GTEX_API_URL   (projects/.../rui-locations.ts)\n \n \n methods   (projects/.../auto-prune-lru-cache.ts)\n \n \n mutableProperties   (projects/.../auto-prune-lru-cache.ts)\n \n \n openApiRoute   (projects/.../browser.ts)\n \n \n readonlyProperties   (projects/.../auto-prune-lru-cache.ts)\n \n \n routes   (projects/.../browser.ts)\n \n \n routes   (projects/.../index.ts)\n \n \n routes   (projects/.../index.ts)\n \n \n routes   (projects/.../index.ts)\n \n \n THROW_IF_NOT_FOUND   (projects/.../environment.ts)\n \n \n \n \n \n \n\n\n projects/ccf-api/src/lib/routes/browser.ts\n \n \n \n \n \n \n \n browserRoute\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, res, _next) => {\n\n res.send(`\n\n \n \n \n CCF-API Browser\n\n \n \n \n \n \n \n`);\n\n}\n \n \n\n\n \n \n \n \n \n \n \n \n openApiRoute\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, res, _next) => {\n const apiFile = resolve('ccf-api-spec.yaml');\n res.sendFile(apiFile);\n}\n \n \n\n\n \n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .get('/', browserRoute)\n .get('/ccf-api-spec.yaml', openApiRoute)\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/utils/use-cached-result.ts\n \n \n \n \n \n \n \n CACHE_DIR\n \n \n \n \n \n \n Default value : get('CCF_API_CACHE', 'projects/ccf-api/ccf-cache')\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/gtex/index.ts\n \n \n \n \n \n \n \n checkRoutesEnabled\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, _res, next) => {\n const enabled = env.GTEX_ROUTES === 'true';\n enabled ? next() : next('router');\n}\n \n \n\n\n \n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .use(checkRoutesEnabled)\n .get('/rui_locations.jsonld', ruiLocations())\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/hubmap/index.ts\n \n \n \n \n \n \n \n checkRoutesEnabled\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, _res, next) => {\n const enabled = env.HUBMAP_ROUTES === 'true';\n enabled ? next() : next('router');\n}\n \n \n\n\n \n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .use(checkRoutesEnabled)\n .get('/rui_locations.jsonld', ruiLocations())\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n \n \n \n \n \n \n DEFAULT_GTEX_RUI_LOCATIONS\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'projects/ccf-eui/src/assets/gtex/data/rui_locations.jsonld'\n \n \n\n\n \n \n \n \n \n \n \n \n GTEX_API_URL\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'https://gtexportal.org/rest/v1/dataset/tissueInfo?datasetId=gtex_v8&format=json'\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/environment.ts\n \n \n \n \n \n \n \n env\n \n \n \n \n \n \n Default value : (() => {\n config();\n return process.env;\n})()\n \n \n\n\n \n \n \n \n \n \n \n \n THROW_IF_NOT_FOUND\n \n \n \n \n \n \n Default value : Symbol('Indicator that an error should be thrown')\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n \n \n \n \n \n \n FILTER_DEFAULTS\n \n \n \n \n \n \n Type : Partial\n\n \n \n \n \n Default value : {\n sex: 'Both',\n ageRange: undefined,\n bmiRange: undefined,\n tmc: [],\n technologies: [],\n ontologyTerms: [],\n cellTypeTerms: []\n}\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n \n \n \n \n \n \n methods\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n // NOTE: No set method as it is overwritten by AutoPruneLRUCache\n 'has', 'get', 'del', 'peek',\n 'keys', 'values',\n 'forEach', 'rforEach',\n 'prune', 'reset',\n 'dump', 'load'\n]\n \n \n\n\n \n \n \n \n \n \n \n \n mutableProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n 'lengthCalculator', 'allowStale', 'max', 'maxAge'\n]\n \n \n\n\n \n \n \n \n \n \n \n \n readonlyProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n 'length', 'itemCount'\n]\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/index.ts\n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .use(cacheResponses())\n .use('/hubmap', hubmapRoutes)\n .use('/gtex', gtexRoutes)\n .get('/tissue-blocks', forwardDatabaseQuery('getTissueBlockResults'))\n .get('/technology-names', forwardDatabaseQuery('getDatasetTechnologyNames'))\n .get('/provider-names', forwardDatabaseQuery('getProviderNames'))\n .get('/aggregate-results', forwardDatabaseQuery('getAggregateResults'))\n .get('/ontology-term-occurences', forwardDatabaseQuery('getOntologyTermOccurences'))\n .get('/cell-type-term-occurences', forwardDatabaseQuery('getCellTypeTermOccurences'))\n .get('/ontology-tree-model', useCachedResult('ontology-tree-model.json'), forwardDatabaseQuery('getOntologyTreeModel'))\n .get('/cell-type-tree-model', useCachedResult('cell-type-tree-model.json'), forwardDatabaseQuery('getCellTypeTreeModel'))\n .get('/reference-organs', useCachedResult('reference-organs.json'), forwardDatabaseQuery('getReferenceOrgans'))\n .get('/scene', forwardDatabaseQuery('getScene'))\n .get('/reference-organ-scene', getReferenceOrganSceneHandler())\n \n \n\n\n \n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}} + "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/interfaces/AppOptions.html",[0,0.099,1,1.69]],["body/interfaces/AppOptions.html",[0,0.115,1,2.771,2,0.726,3,0.726,4,1.021,5,0.726,6,0.601,7,2.391,8,3.865,9,1.979,10,0.601,11,1.303,12,1.53,13,3.541,14,4.257,15,0.487,16,0.064,17,1.643,18,2.391,19,3.028,20,1.658,21,3.051,22,3.051,23,1.562,24,3.051,25,3.051,26,3.865,27,2.391,28,3.028,29,3.028,30,2.516,31,3.865,32,3.028,33,3.865,34,3.028,35,1.303,36,0.926,37,3.028,38,0.864,39,3.865,40,3.028,41,1.021,42,1.971,43,3.028,44,3.028,45,1.407,46,1.103,47,3.028,48,3.028,49,2.516,50,3.028,51,3.028,52,3.028,53,3.028,54,3.028,55,3.028,56,3.028,57,3.028,58,3.865,59,3.028,60,3.028,61,3.028,62,3.028,63,2.391,64,3.028,65,3.028,66,3.028,67,3.028,68,3.028,69,3.028,70,0.037,71,0.048,72,0.037]],["title/interfaces/CCFDatabaseInstance.html",[0,0.099,73,1.206]],["body/interfaces/CCFDatabaseInstance.html",[0,0.12,2,0.755,3,0.755,4,1.062,5,0.755,6,0.625,10,0.625,11,1.336,15,0.638,16,0.064,17,1.534,35,1.336,36,1.039,38,1.238,41,1.062,46,0.9,70,0.039,71,0.049,72,0.039,73,1.842,74,2.488,75,1.671,76,2.488,77,3.116,78,4.689,79,2.17,80,1.336,81,3.151,82,3.151,83,2.488,84,3.151,85,3.151,86,3.151,87,2.58,88,3.151,89,1.842,90,2.58,91,3.151,92,1.062,93,3.151,94,2.488,95,3.151,96,3.151,97,3.151,98,2.58,99,3.151,100,3.151,101,3.151,102,1.725,103,3.151,104,3.151,105,3.151,106,2.488,107,2.488,108,3.151,109,2.051]],["title/interfaces/CacheOptions.html",[0,0.099,110,1.69]],["body/interfaces/CacheOptions.html",[0,0.111,2,0.702,3,0.702,4,0.987,5,0.702,6,0.581,10,0.581,11,1.275,12,1.754,15,0.609,16,0.065,17,1.275,20,2.294,23,0.987,35,1.275,36,0.907,38,1.341,41,0.987,46,1.265,49,2.463,70,0.036,71,0.047,72,0.036,92,0.987,109,1.907,110,2.728,111,2.313,112,1.362,113,2.132,114,2.132,115,2.183,116,1.759,117,1.498,118,1.604,119,0.987,120,0.702,121,1.275,122,2.929,123,3.783,124,2.929,125,2.313,126,2.313,127,2.071,128,2.929,129,2.929,130,2.929,131,2.071,132,1.604,133,2.071,134,1.907,135,1.948,136,2.313,137,3.783,138,2.987,139,3.783,140,2.929,141,2.313,142,2.929,143,3.783,144,2.313,145,2.929,146,2.929,147,3.783,148,2.313,149,2.929]],["title/interfaces/DatabaseCacheOptions.html",[0,0.099,150,1.421]],["body/interfaces/DatabaseCacheOptions.html",[0,0.134,2,0.627,3,0.627,4,0.882,5,0.627,6,0.519,9,1.633,10,0.519,11,1.184,12,1.678,15,0.566,16,0.065,17,1.49,23,0.882,35,1.337,36,0.951,38,1.132,41,1.184,42,1.704,45,2.116,46,1.262,70,0.032,71,0.043,72,0.032,73,1.217,75,1.337,77,1.704,79,2.171,80,0.882,87,1.704,89,1.217,92,1.184,113,2.055,114,2.055,115,2.116,116,1.633,117,1.391,118,1.433,119,0.882,120,0.627,121,1.429,127,1.923,131,1.923,132,1.433,133,1.923,135,1.843,150,2.171,151,1.704,152,1.704,153,2.287,154,2.287,155,2.067,156,1.391,157,1.704,158,2.067,159,3.347,160,1.704,161,2.878,162,2.287,163,2.774,164,2.067,165,2.067,166,2.067,167,1.704,168,2.067,169,2.067,170,2.067,171,2.774,172,2.067,173,2.067,174,1.217,175,2.067,176,1.704,177,1.217,178,1.433,179,2.067,180,2.067,181,2.067,182,2.774,183,2.067,184,2.067,185,2.067,186,1.433,187,2.067,188,2.067,189,2.067,190,2.067,191,2.067,192,1.704,193,2.067,194,2.067,195,2.067,196,2.067]],["title/interfaces/DatabaseLoaderOptions.html",[0,0.099,9,1.206]],["body/interfaces/DatabaseLoaderOptions.html",[0,0.134,2,0.629,3,0.629,4,0.885,5,0.629,6,0.521,9,1.846,10,0.521,11,1.187,12,1.394,15,0.567,16,0.065,17,1.492,23,0.885,35,1.339,36,0.952,38,1.134,41,1.187,42,1.709,45,2.118,46,1.264,70,0.032,71,0.043,72,0.032,73,1.221,75,1.536,77,1.709,79,2.423,80,0.885,87,1.709,89,1.221,92,1.187,113,1.637,114,1.637,115,1.637,116,1.637,117,1.394,118,1.438,119,0.885,120,0.629,121,1.569,127,1.928,131,1.928,132,1.438,133,1.928,135,1.846,150,2.323,151,1.709,152,1.709,153,2.292,154,2.292,155,2.073,156,1.394,157,1.709,158,2.073,159,3.351,160,1.709,161,2.881,162,2.292,163,2.78,164,2.073,165,2.073,166,2.073,167,1.709,168,2.073,169,2.073,170,2.073,171,2.78,172,2.073,173,2.073,174,1.221,175,2.073,176,1.709,177,1.221,178,1.438,179,2.073,180,2.073,181,2.073,182,2.78,183,2.073,184,2.073,185,2.073,186,1.438,187,2.073,188,2.073,189,2.073,190,2.073,191,2.073,192,1.709,193,2.073,194,2.073,195,2.073,196,2.073]],["title/interfaces/GtexTissue.html",[0,0.099,197,1.69]],["body/interfaces/GtexTissue.html",[0,0.085,2,0.537,3,0.537,4,1.232,5,0.757,6,0.627,10,0.627,11,1.064,15,0.674,16,0.065,17,1.535,23,0.756,35,1.232,36,0.876,38,1.41,41,1.232,45,1.845,46,0.902,70,0.039,71,0.039,72,0.039,75,0.756,79,1.729,80,0.756,89,1.042,90,2.056,92,1.232,98,2.056,102,1.227,113,1.042,114,1.042,115,2.152,116,1.468,117,1.25,118,1.227,119,0.756,120,0.537,121,1.232,125,2.887,131,1.729,132,1.227,133,1.227,134,1.459,138,1.77,156,1.25,157,1.459,160,1.459,161,1.459,162,1.459,174,1.042,178,1.729,186,1.227,197,2.584,198,1.459,199,1.459,200,3.969,201,3.969,202,3.969,203,2.493,204,2.241,205,1.77,206,2.493,207,1.77,208,3.969,209,2.241,210,1.77,211,2.241,212,1.459,213,3.158,214,1.77,215,1.459,216,2.241,217,2.241,218,2.241,219,2.241,220,1.77,221,2.241,222,3.656,223,3.158,224,3.158,225,3.158,226,3.158,227,3.969,228,2.056,229,1.77,230,1.459,231,1.77,232,2.493,233,1.459,234,2.241,235,2.241,236,1.459,237,2.241,238,2.241,239,2.241,240,2.241,241,1.77,242,2.493,243,2.241,244,2.241,245,2.241,246,2.241,247,3.158,248,2.241,249,2.241,250,2.887,251,3.158,252,1.77,253,1.77,254,2.241,255,2.241,256,1.77,257,2.241,258,2.241,259,2.38,260,1.77,261,3.158,262,2.241,263,2.241,264,2.241,265,2.241,266,2.241,267,2.241,268,2.241,269,2.241,270,2.241,271,2.241,272,2.241,273,2.241,274,1.77,275,2.241,276,2.241,277,2.241,278,2.241,279,2.241,280,1.459,281,1.77,282,2.241,283,3.656,284,2.241,285,2.241]],["title/classes/RequestCache.html",[156,1.028,286,1.421]],["body/classes/RequestCache.html",[3,0.647,4,0.91,5,0.647,6,0.887,10,0.536,12,1.7,15,0.691,16,0.064,17,0.91,35,0.91,36,0.647,38,1.024,46,1.024,70,0.058,71,0.044,72,0.033,89,2.261,90,2.99,98,1.758,109,2.622,112,1.255,120,0.647,121,1.506,141,3.527,144,2.832,148,2.132,153,2.908,156,1.42,233,1.758,252,2.132,253,2.132,260,2.132,286,1.478,287,2.7,288,3.527,289,2.335,290,4.592,291,3.587,292,3.587,293,3.587,294,2.7,295,4.292,296,4.028,297,2.7,298,3.389,299,2.7,300,4.292,301,4.292,302,3.587,303,4.865,304,4.818,305,2.7,306,4.028,307,3.587,308,2.7,309,3.587,310,2.7,311,3.587,312,2.7,313,2.7,314,2.7,315,2.7,316,2.7]],["title/changelog.html",[317,1.427,318,1.2,319,1.427]],["body/changelog.html",[0,0.116,2,0.204,3,0.73,11,0.287,12,0.337,13,0.671,15,0.137,16,0.044,18,0.671,20,1.843,41,0.287,63,0.671,70,0.01,71,0.018,72,0.04,75,0.652,80,1.486,92,1.134,102,0.803,106,1.158,107,2.243,115,0.395,135,1.415,136,0.671,167,0.955,174,0.395,176,0.553,177,1.564,178,2.358,186,1.555,210,2.403,212,1.849,214,0.671,215,1.498,220,0.671,233,0.955,236,1.259,241,1.158,250,3.062,256,1.527,259,0.955,274,1.158,298,0.671,318,1.059,319,0.955,320,1.158,321,0.671,322,0.671,323,2.54,324,1.467,325,1.467,326,1.934,327,2.301,328,4.981,329,2.84,330,1.817,331,3.217,332,0.85,333,0.85,334,2.301,335,0.85,336,1.467,337,3.608,338,1.527,339,0.85,340,1.467,341,1.934,342,0.85,343,0.85,344,2.05,345,1.934,346,0.85,347,1.934,348,3.69,349,0.85,350,1.467,351,0.85,352,1.467,353,3.062,354,0.85,355,0.85,356,0.85,357,3.798,358,3.878,359,0.85,360,0.85,361,0.85,362,0.85,363,2.051,364,0.85,365,0.85,366,1.467,367,0.671,368,0.85,369,1.467,370,2.301,371,2.301,372,0.85,373,1.467,374,1.934,375,0.85,376,0.85,377,0.671,378,1.467,379,0.85,380,0.85,381,2.84,382,1.849,383,2.051,384,1.527,385,0.85,386,3.495,387,3.495,388,2.597,389,2.597,390,2.051,391,0.85,392,1.467,393,0.85,394,1.934,395,2.54,396,3.798,397,2.84,398,1.467,399,0.85,400,0.85,401,1.467,402,3.608,403,1.527,404,0.85,405,2.84,406,2.597,407,0.85,408,0.85,409,2.597,410,0.85,411,0.85,412,0.85,413,0.85,414,1.934,415,0.85,416,1.158,417,1.467,418,0.85,419,2.54,420,3.527,421,0.85,422,0.85,423,2.849,424,2.597,425,1.527,426,0.85,427,3.95,428,2.54,429,0.85,430,0.85,431,2.051,432,2.051,433,0.85,434,1.467,435,0.85,436,0.85,437,1.934,438,1.467,439,0.85,440,0.85,441,1.467,442,1.467,443,1.467,444,1.467,445,0.85,446,1.934,447,0.85,448,0.85,449,0.671,450,0.85,451,1.527,452,1.467,453,1.467,454,0.85,455,0.85,456,0.85,457,4.129,458,0.85,459,1.467,460,1.467,461,1.467,462,2.301,463,1.467,464,0.85,465,0.85,466,0.85,467,0.85,468,1.934,469,0.85,470,1.467,471,0.85,472,0.85,473,1.158,474,2.84,475,1.467,476,0.85,477,0.671,478,0.85,479,0.85,480,2.597,481,2.301,482,0.85,483,1.934,484,1.467,485,2.84,486,1.158,487,1.467,488,2.301,489,0.85,490,0.85,491,1.158,492,2.301,493,2.597,494,0.85,495,0.85,496,0.85,497,0.85,498,0.85,499,1.467,500,1.467,501,0.85,502,1.467,503,0.85,504,0.671,505,1.467,506,0.85,507,1.467,508,0.85,509,0.85,510,1.817,511,0.85,512,0.85,513,0.85,514,0.85,515,0.85,516,1.467,517,0.85,518,0.85,519,0.671,520,0.85,521,0.85,522,0.85,523,0.85,524,1.467,525,0.85,526,0.85,527,0.85,528,0.85,529,0.85,530,1.467,531,0.85,532,2.84,533,0.85,534,0.85,535,1.934,536,1.934,537,1.467,538,0.85,539,1.467,540,0.85,541,0.671,542,0.671,543,0.85,544,1.467,545,1.467,546,0.85,547,0.85,548,1.498,549,0.85,550,0.85,551,1.467,552,1.467,553,0.85,554,0.85,555,1.467,556,1.467,557,0.85,558,1.467,559,2.301,560,1.934,561,0.85,562,0.85,563,0.85,564,0.85,565,0.671,566,0.671,567,0.85,568,1.467,569,0.85,570,0.85,571,0.85,572,0.85,573,1.467,574,2.301,575,0.85,576,0.85,577,0.85,578,0.85,579,2.84,580,1.934,581,0.85,582,0.85,583,1.934,584,1.467,585,1.467,586,1.467,587,2.301,588,0.85,589,0.671,590,2.301,591,0.85,592,0.85,593,1.467,594,0.85,595,0.85,596,0.85,597,0.85,598,0.85,599,2.301,600,0.85,601,1.934,602,2.301,603,0.85,604,1.934,605,2.597,606,1.467,607,1.467,608,1.467,609,1.467,610,1.934,611,2.301,612,2.597,613,1.467,614,1.934,615,0.85,616,0.85,617,3.044,618,1.934,619,0.85,620,2.301,621,2.301,622,3.365,623,0.85,624,0.85,625,0.85,626,0.85,627,0.85,628,0.85,629,1.467,630,0.85,631,1.467,632,0.85,633,0.85,634,0.85,635,0.85,636,1.467,637,0.85,638,1.934,639,0.85,640,0.85,641,1.467,642,1.527,643,1.467,644,1.934,645,0.85,646,0.85,647,0.85,648,1.467,649,0.85,650,0.85,651,0.85,652,0.85,653,0.85,654,0.85,655,0.85,656,0.85,657,0.85,658,2.301,659,2.84,660,1.467,661,1.934,662,2.301,663,1.467,664,2.301,665,0.85,666,0.85,667,0.85,668,0.85,669,1.934,670,0.85,671,0.85,672,0.85,673,1.467,674,1.467,675,1.467,676,1.467,677,1.934,678,0.85,679,0.85,680,0.85,681,0.85,682,0.85,683,0.85,684,0.85,685,0.671,686,0.85,687,0.85,688,0.85,689,0.85,690,1.467,691,0.85,692,0.85,693,1.467,694,0.85,695,0.85,696,0.85,697,0.85,698,0.85,699,0.85,700,0.85,701,0.85,702,0.85,703,3.217,704,0.85,705,1.527,706,3.217,707,1.934,708,2.301,709,1.467,710,1.934,711,0.85,712,1.467,713,0.85,714,0.85,715,0.85,716,1.467,717,1.467,718,0.85,719,0.85,720,0.85,721,0.85,722,1.467,723,0.85,724,0.85,725,0.85,726,0.85,727,2.301,728,0.85,729,0.671,730,0.85,731,0.85,732,0.85,733,0.85,734,0.85,735,0.85,736,0.85,737,0.85,738,0.85,739,0.85,740,0.85,741,2.597,742,0.85,743,0.85,744,0.85,745,0.85,746,0.85,747,0.85,748,0.85,749,0.85,750,0.85,751,0.85,752,0.85,753,0.85,754,0.85,755,0.85,756,0.85,757,1.467,758,0.85,759,1.467,760,0.85,761,1.467,762,1.467,763,2.301,764,2.301,765,1.467,766,1.467,767,0.85,768,0.85,769,0.85,770,1.934,771,0.85,772,0.671,773,0.85,774,0.85,775,0.85,776,0.85,777,0.85,778,0.85,779,1.467,780,3.495,781,1.934,782,1.467,783,0.85,784,1.467,785,0.85,786,0.85,787,0.85,788,0.85,789,1.158,790,0.85,791,0.85,792,0.85,793,0.85,794,1.467,795,2.403,796,1.467,797,0.85,798,0.85,799,0.85,800,0.955,801,0.85,802,0.85,803,2.301,804,0.85,805,1.467,806,0.85,807,0.85,808,0.85,809,1.498,810,0.85,811,1.467,812,0.85,813,0.85,814,0.85,815,1.467,816,1.467,817,0.85,818,0.85,819,0.85,820,0.85,821,1.467,822,1.934,823,1.467,824,0.85,825,0.671,826,1.158,827,0.85,828,0.85,829,0.85,830,0.85,831,0.85,832,0.85,833,0.85,834,0.85,835,0.85,836,0.671,837,0.85,838,0.85,839,1.467,840,0.85,841,0.85,842,0.85,843,0.85,844,0.85,845,0.85,846,0.85,847,1.467,848,1.467,849,0.85,850,0.671,851,0.85,852,0.671,853,0.671,854,0.85,855,0.85,856,0.85,857,1.467,858,0.85,859,0.85,860,0.85,861,0.85,862,0.85,863,0.85,864,0.85,865,0.85,866,0.85,867,0.85,868,0.85,869,0.85,870,1.467,871,0.671,872,0.85,873,0.85,874,1.467,875,0.85,876,0.671,877,0.85,878,0.85,879,0.85,880,0.85,881,0.85,882,0.85,883,0.85,884,0.85]],["title/coverage.html",[809,2.274]],["body/coverage.html",[0,0.151,1,1.136,5,0.418,6,1.029,7,2.077,9,0.811,15,0.281,16,0.064,27,1.378,30,2.295,36,1.223,70,0.021,71,0.032,72,0.021,73,0.811,74,2.077,75,1.067,76,2.077,92,0.588,110,1.136,111,2.5,112,1.918,119,1.067,120,0.759,150,0.955,151,2.462,152,2.462,154,1.136,156,0.691,197,1.136,198,2.588,199,2.765,228,1.136,230,1.136,232,2.077,280,1.712,286,0.955,288,1.378,289,1.136,344,1.223,382,1.136,809,1.136,885,1.745,886,1.745,887,5.184,888,1.745,889,1.745,890,5.166,891,3.031,892,1.745,893,3.166,894,1.745,895,2.63,896,1.745,897,4.764,898,1.378,899,1.378,900,3.525,901,1.745,902,1.745,903,1.745,904,1.378,905,1.745,906,2.5,907,1.378,908,1.378,909,2.077,910,2.077,911,1.745,912,1.745,913,2.077,914,2.63,915,1.378,916,2.077,917,2.077,918,1.378,919,1.745,920,1.378,921,1.378,922,1.745,923,3.431,924,3.431,925,1.745,926,1.745,927,1.745,928,1.745,929,1.745,930,1.745,931,1.745,932,1.745,933,1.378,934,2.077,935,2.077,936,2.077,937,1.745,938,1.378,939,3.258,940,1.745,941,1.745,942,1.745,943,1.745,944,1.745,945,1.745,946,1.745,947,2.061,948,1.378,949,1.378,950,1.745,951,1.745,952,1.745]],["title/dependencies.html",[367,1.731,548,2.023]],["body/dependencies.html",[5,0.614,16,0.065,20,1.401,21,2.733,22,2.021,23,0.863,24,2.021,25,2.021,70,0.031,71,0.043,72,0.031,83,2.021,120,0.614,121,1.166,203,2.021,205,2.021,206,2.021,207,2.021,242,2.021,363,2.021,390,2.021,416,2.021,486,2.021,541,2.021,542,2.021,548,1.666,566,2.733,642,2.021,705,2.733,800,2.253,953,2.56,954,2.56,955,2.56,956,4.861,957,2.56,958,2.56,959,2.56,960,2.56,961,2.56,962,2.56,963,2.56,964,2.56,965,3.461,966,2.56,967,2.56,968,2.56,969,2.56,970,2.56,971,4.388,972,2.56,973,3.461,974,2.56,975,2.56,976,2.56,977,3.921,978,2.56,979,2.56,980,2.56,981,2.56,982,2.56,983,2.56,984,2.56,985,2.56,986,2.56,987,3.461,988,3.921,989,2.56,990,2.56,991,2.56,992,2.021,993,2.56,994,2.56,995,2.56,996,2.56,997,2.56,998,2.56,999,2.56,1000,2.56,1001,2.56,1002,2.56,1003,2.56,1004,2.56,1005,2.56,1006,2.56,1007,2.56,1008,2.56,1009,2.56,1010,2.56,1011,2.56,1012,2.56,1013,2.56,1014,3.461,1015,2.56,1016,2.56,1017,2.56,1018,2.56,1019,3.461,1020,2.56,1021,2.56,1022,2.56,1023,2.56,1024,2.56,1025,2.56,1026,2.56,1027,2.56,1028,2.56,1029,2.56,1030,2.56,1031,2.56,1032,2.56,1033,2.56,1034,2.56,1035,2.56,1036,2.56,1037,2.56,1038,2.56,1039,2.56,1040,3.461,1041,2.56,1042,2.56,1043,2.56,1044,2.56,1045,2.56,1046,2.56,1047,2.56,1048,2.56,1049,2.56,1050,3.461,1051,2.56,1052,2.56,1053,2.56,1054,2.56,1055,2.56,1056,2.56,1057,2.56,1058,2.56,1059,2.56,1060,2.56,1061,2.56,1062,2.56,1063,2.56,1064,2.56]],["title/index.html",[10,0.435,317,1.427,318,1.2]],["body/index.html",[0,0.149,2,0.741,3,1.118,16,0.048,70,0.038,71,0.048,72,0.038,80,1.73,177,2.1,215,2.549,319,2.012,320,3.092,321,3.092,322,3.092,323,3.394,330,2.441,344,1.998,348,3.092,383,3.568,384,3.394,395,3.092,403,2.441,419,2.441,420,3.394,423,2.441,425,2.441,432,2.441,451,2.441,491,3.092,565,2.441,589,3.092,729,2.441,826,2.441,836,2.441,850,2.441,1065,3.916,1066,3.091,1067,3.091,1068,3.091,1069,3.091,1070,3.092,1071,3.091,1072,3.091,1073,3.091,1074,3.916,1075,3.916,1076,3.916,1077,4.298,1078,3.091,1079,3.091,1080,4.519,1081,4.298,1082,3.091,1083,3.091,1084,3.916,1085,3.091,1086,3.091,1087,3.091,1088,3.091,1089,3.091,1090,3.091,1091,3.091,1092,3.091,1093,3.091,1094,3.091,1095,3.091,1096,3.091,1097,3.091,1098,3.091,1099,3.091,1100,3.091]],["title/license.html",[317,1.427,318,1.2,1101,1.731]],["body/license.html",[16,0.05,23,1.107,70,0.04,71,0.05,72,0.04,174,1.891,177,1.527,382,2.139,431,3.212,449,3.489,477,2.594,685,3.212,772,2.594,795,2.594,853,2.594,876,2.594,1070,3.943,1101,2.594,1102,3.285,1103,4.419,1104,3.285,1105,3.285,1106,4.068,1107,3.285,1108,3.285,1109,3.285,1110,3.285,1111,3.285,1112,3.285,1113,4.068,1114,3.285,1115,3.285,1116,3.285,1117,3.285,1118,3.285,1119,3.285,1120,3.285,1121,3.285,1122,3.285,1123,3.285,1124,3.285,1125,3.285,1126,4.068,1127,3.285,1128,3.285,1129,3.285,1130,3.285,1131,3.285,1132,3.285,1133,4.068,1134,3.285,1135,3.285,1136,3.285,1137,3.285,1138,3.285,1139,3.285,1140,3.285,1141,3.285,1142,3.285,1143,3.285,1144,3.285,1145,3.285,1146,3.285,1147,3.285,1148,3.285,1149,3.285,1150,3.285,1151,3.285,1152,3.285,1153,3.285,1154,3.285,1155,3.285,1156,3.285,1157,3.285,1158,3.285,1159,3.285,1160,3.285,1161,3.285]],["title/modules.html",[1162,2.758]],["body/modules.html",[16,0.057,70,0.05,71,0.057,72,0.05,1162,3.188]],["title/overview.html",[1163,2.758]],["body/overview.html",[2,0.958,16,0.056,70,0.049,71,0.056,72,0.049,286,2.188,789,3.156,1163,3.156,1164,3.997]],["title/miscellaneous/typealiases.html",[1165,1.2,1166,3.108]],["body/miscellaneous/typealiases.html",[6,0.974,10,0.693,15,0.562,16,0.052,36,1.012,70,0.043,71,0.052,72,0.043,75,1.59,112,1.962,117,1.382,119,1.423,120,1.012,344,1.962,891,2.272,904,2.756,916,2.756,917,3.333,920,2.756,921,3.723,939,2.756,947,2.272,1165,1.911,1167,3.49,1168,4.222,1169,2.756,1170,4.716,1171,3.49,1172,4.539,1173,4.222,1174,4.222,1175,4.222,1176,4.222,1177,4.222,1178,3.49,1179,4.222,1180,4.222,1181,2.756]],["title/miscellaneous/variables.html",[1165,1.2,1182,2.454]],["body/miscellaneous/variables.html",[6,0.932,10,0.423,15,0.771,16,0.064,30,2.926,38,1.015,45,1.415,46,0.608,49,1.982,70,0.026,71,0.037,72,0.037,80,0.718,94,1.682,102,1.166,112,1.803,113,0.99,114,0.99,116,1.803,117,0.843,119,1.383,120,0.93,121,0.718,126,3.874,127,1.667,134,1.982,135,1.803,192,1.982,198,1.386,199,2.314,212,2.314,228,1.982,229,1.682,230,1.982,231,1.682,236,1.386,259,1.386,280,1.982,281,2.404,289,1.982,338,1.682,344,0.99,353,1.682,377,3.874,428,1.682,473,1.682,504,1.682,510,1.682,519,2.404,800,1.386,825,3.063,852,1.682,871,1.682,891,1.386,898,2.404,899,2.404,906,1.682,907,2.807,908,2.807,909,1.682,910,3.063,913,1.682,915,1.682,918,1.682,923,1.682,924,2.404,933,2.404,934,1.682,935,2.404,936,2.404,938,2.404,947,1.386,948,2.404,949,2.404,992,2.404,1165,1.166,1169,2.807,1181,2.404,1182,1.682,1183,3.554,1184,2.13,1185,4.103,1186,3.045,1187,2.13,1188,3.879,1189,2.13,1190,2.13,1191,2.13,1192,3.045,1193,2.13,1194,3.879,1195,2.13,1196,2.13,1197,3.879,1198,2.13,1199,3.045,1200,3.045,1201,3.045,1202,2.13,1203,2.13,1204,2.13,1205,2.13,1206,2.13,1207,2.13,1208,2.13,1209,2.13,1210,2.13,1211,2.13,1212,2.13,1213,2.13,1214,2.13,1215,2.13,1216,2.13,1217,2.13,1218,2.13,1219,2.13,1220,2.13,1221,2.13,1222,2.13,1223,2.13,1224,2.13,1225,2.13,1226,2.13,1227,2.13,1228,2.13,1229,2.13,1230,2.13,1231,2.13,1232,2.13,1233,2.13,1234,2.13,1235,2.13,1236,2.13,1237,2.13,1238,2.13,1239,3.045,1240,3.045,1241,3.045,1242,2.13,1243,3.045,1244,2.13,1245,2.13,1246,3.045,1247,2.13,1248,2.13,1249,2.13,1250,3.045,1251,2.13,1252,2.13,1253,2.13,1254,2.13,1255,2.13]]],"invertedIndex":[["",{"_index":16,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["0",{"_index":887,"title":{},"body":{"coverage.html":{}}}],["0.1.0",{"_index":874,"title":{},"body":{"changelog.html":{}}}],["0.11.4",{"_index":1064,"title":{},"body":{"dependencies.html":{}}}],["0.18.0",{"_index":1002,"title":{},"body":{"dependencies.html":{}}}],["0.2.0",{"_index":870,"title":{},"body":{"changelog.html":{}}}],["0.20.0",{"_index":1020,"title":{},"body":{"dependencies.html":{}}}],["0.5.0",{"_index":857,"title":{},"body":{"changelog.html":{}}}],["0.6.0",{"_index":826,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["0/1",{"_index":890,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":888,"title":{},"body":{"coverage.html":{}}}],["0/3",{"_index":900,"title":{},"body":{"coverage.html":{}}}],["0/4",{"_index":911,"title":{},"body":{"coverage.html":{}}}],["0/5",{"_index":950,"title":{},"body":{"coverage.html":{}}}],["01",{"_index":391,"title":{},"body":{"changelog.html":{}}}],["02",{"_index":670,"title":{},"body":{"changelog.html":{}}}],["03",{"_index":605,"title":{},"body":{"changelog.html":{}}}],["04",{"_index":326,"title":{},"body":{"changelog.html":{}}}],["05",{"_index":574,"title":{},"body":{"changelog.html":{}}}],["06",{"_index":782,"title":{},"body":{"changelog.html":{}}}],["07",{"_index":327,"title":{},"body":{"changelog.html":{}}}],["08",{"_index":796,"title":{},"body":{"changelog.html":{}}}],["09",{"_index":462,"title":{},"body":{"changelog.html":{}}}],["1",{"_index":789,"title":{},"body":{"changelog.html":{},"overview.html":{}}}],["1.0",{"_index":706,"title":{},"body":{"changelog.html":{}}}],["1.0.0",{"_index":780,"title":{},"body":{"changelog.html":{}}}],["1.0.11",{"_index":998,"title":{},"body":{"dependencies.html":{}}}],["1.0.3",{"_index":1005,"title":{},"body":{"dependencies.html":{}}}],["1.0.6",{"_index":1059,"title":{},"body":{"dependencies.html":{}}}],["1.1.0",{"_index":757,"title":{},"body":{"changelog.html":{}}}],["1.19.0",{"_index":999,"title":{},"body":{"dependencies.html":{}}}],["1.2.0",{"_index":705,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.2.3",{"_index":1009,"title":{},"body":{"dependencies.html":{}}}],["1.2.6",{"_index":1039,"title":{},"body":{"dependencies.html":{}}}],["1.3.5",{"_index":669,"title":{},"body":{"changelog.html":{}}}],["1.4.0",{"_index":642,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.4.1",{"_index":1023,"title":{},"body":{"dependencies.html":{}}}],["1.5.0",{"_index":604,"title":{},"body":{"changelog.html":{}}}],["1.6.0",{"_index":587,"title":{},"body":{"changelog.html":{}}}],["1.7.0",{"_index":573,"title":{},"body":{"changelog.html":{}}}],["1.7.2",{"_index":1012,"title":{},"body":{"dependencies.html":{}}}],["1.8.1",{"_index":1036,"title":{},"body":{"dependencies.html":{}}}],["10",{"_index":186,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["10.0.0",{"_index":1014,"title":{},"body":{"dependencies.html":{}}}],["100",{"_index":130,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["1000",{"_index":132,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["10x",{"_index":769,"title":{},"body":{"changelog.html":{}}}],["11",{"_index":644,"title":{},"body":{"changelog.html":{}}}],["11.2.1",{"_index":1041,"title":{},"body":{"dependencies.html":{}}}],["12",{"_index":397,"title":{},"body":{"changelog.html":{}}}],["12.0.1",{"_index":1043,"title":{},"body":{"dependencies.html":{}}}],["12.1.1",{"_index":956,"title":{},"body":{"dependencies.html":{}}}],["12.1.3",{"_index":964,"title":{},"body":{"dependencies.html":{}}}],["13",{"_index":463,"title":{},"body":{"changelog.html":{}}}],["15.126.1",{"_index":954,"title":{},"body":{"dependencies.html":{}}}],["16",{"_index":537,"title":{},"body":{"changelog.html":{}}}],["17",{"_index":398,"title":{},"body":{"changelog.html":{}}}],["2",{"_index":727,"title":{},"body":{"changelog.html":{}}}],["2.0.0",{"_index":536,"title":{},"body":{"changelog.html":{}}}],["2.0.5",{"_index":1017,"title":{},"body":{"dependencies.html":{}}}],["2.1.0",{"_index":486,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.2.0",{"_index":475,"title":{},"body":{"changelog.html":{}}}],["2.3.0",{"_index":470,"title":{},"body":{"changelog.html":{}}}],["2.3.1",{"_index":461,"title":{},"body":{"changelog.html":{}}}],["2.4.0",{"_index":443,"title":{},"body":{"changelog.html":{}}}],["2.5.0",{"_index":416,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.6.7",{"_index":1044,"title":{},"body":{"dependencies.html":{}}}],["2.8.5",{"_index":1006,"title":{},"body":{"dependencies.html":{}}}],["2019",{"_index":795,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["2020",{"_index":708,"title":{},"body":{"changelog.html":{}}}],["2021",{"_index":396,"title":{},"body":{"changelog.html":{}}}],["2022",{"_index":325,"title":{},"body":{"changelog.html":{}}}],["21",{"_index":575,"title":{},"body":{"changelog.html":{}}}],["22",{"_index":783,"title":{},"body":{"changelog.html":{}}}],["24",{"_index":858,"title":{},"body":{"changelog.html":{}}}],["26",{"_index":606,"title":{},"body":{"changelog.html":{}}}],["26th",{"_index":647,"title":{},"body":{"changelog.html":{}}}],["27",{"_index":392,"title":{},"body":{"changelog.html":{}}}],["3",{"_index":693,"title":{},"body":{"changelog.html":{}}}],["3.0",{"_index":1075,"title":{},"body":{"index.html":{}}}],["3.0.0",{"_index":390,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["3.0.12",{"_index":977,"title":{},"body":{"dependencies.html":{}}}],["3.1.0",{"_index":324,"title":{},"body":{"changelog.html":{}}}],["3.5.5",{"_index":982,"title":{},"body":{"dependencies.html":{}}}],["3.6.0",{"_index":1051,"title":{},"body":{"dependencies.html":{}}}],["3.7.1",{"_index":988,"title":{},"body":{"dependencies.html":{}}}],["30",{"_index":487,"title":{},"body":{"changelog.html":{}}}],["31",{"_index":758,"title":{},"body":{"changelog.html":{}}}],["3d",{"_index":427,"title":{},"body":{"changelog.html":{}}}],["4",{"_index":726,"title":{},"body":{"changelog.html":{}}}],["4.17.1",{"_index":1015,"title":{},"body":{"dependencies.html":{}}}],["4.17.21",{"_index":1033,"title":{},"body":{"dependencies.html":{}}}],["4.3.0",{"_index":1003,"title":{},"body":{"dependencies.html":{}}}],["4.6.0",{"_index":1024,"title":{},"body":{"dependencies.html":{}}}],["5.0.0",{"_index":1027,"title":{},"body":{"dependencies.html":{}}}],["5.1.1",{"_index":994,"title":{},"body":{"dependencies.html":{}}}],["5.2.0",{"_index":1031,"title":{},"body":{"dependencies.html":{}}}],["6",{"_index":1164,"title":{},"body":{"overview.html":{}}}],["6.0.0",{"_index":1034,"title":{},"body":{"dependencies.html":{}}}],["6.0.1",{"_index":1030,"title":{},"body":{"dependencies.html":{}}}],["6.10.2",{"_index":1045,"title":{},"body":{"dependencies.html":{}}}],["6.2.0",{"_index":985,"title":{},"body":{"dependencies.html":{}}}],["6.5.1",{"_index":1056,"title":{},"body":{"dependencies.html":{}}}],["6.6.7",{"_index":1053,"title":{},"body":{"dependencies.html":{}}}],["60",{"_index":131,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["8",{"_index":241,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["8.3.2",{"_index":1062,"title":{},"body":{"dependencies.html":{}}}],["8.5.7",{"_index":971,"title":{},"body":{"dependencies.html":{}}}],["85",{"_index":869,"title":{},"body":{"changelog.html":{}}}],["90",{"_index":808,"title":{},"body":{"changelog.html":{}}}],["95",{"_index":868,"title":{},"body":{"changelog.html":{}}}],["9th",{"_index":616,"title":{},"body":{"changelog.html":{}}}],["__",{"_index":142,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["_error",{"_index":253,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["_key",{"_index":187,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["_next",{"_index":281,"title":{},"body":{"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["_req",{"_index":1188,"title":{},"body":{"miscellaneous/variables.html":{}}}],["_res",{"_index":192,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"miscellaneous/variables.html":{}}}],["ability",{"_index":505,"title":{},"body":{"changelog.html":{}}}],["above",{"_index":853,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["accurate",{"_index":603,"title":{},"body":{"changelog.html":{}}}],["action",{"_index":1154,"title":{},"body":{"license.html":{}}}],["actions",{"_index":697,"title":{},"body":{"changelog.html":{}}}],["actually",{"_index":219,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["adapter",{"_index":86,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["added",{"_index":328,"title":{},"body":{"changelog.html":{}}}],["additional",{"_index":854,"title":{},"body":{"changelog.html":{}}}],["addressed",{"_index":750,"title":{},"body":{"changelog.html":{}}}],["adds",{"_index":333,"title":{},"body":{"changelog.html":{}}}],["adjusting",{"_index":743,"title":{},"body":{"changelog.html":{}}}],["adjustment",{"_index":640,"title":{},"body":{"changelog.html":{}}}],["advanced",{"_index":540,"title":{},"body":{"changelog.html":{}}}],["again",{"_index":717,"title":{},"body":{"changelog.html":{}}}],["age",{"_index":274,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["agemax",{"_index":223,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["agemean",{"_index":225,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["agemin",{"_index":224,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["agerange",{"_index":1208,"title":{},"body":{"miscellaneous/variables.html":{}}}],["ala",{"_index":467,"title":{},"body":{"changelog.html":{}}}],["aliases",{"_index":1167,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["allowdots",{"_index":48,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["allows",{"_index":623,"title":{},"body":{"changelog.html":{}}}],["allowstale",{"_index":1223,"title":{},"body":{"miscellaneous/variables.html":{}}}],["alpha",{"_index":838,"title":{},"body":{"changelog.html":{}}}],["alpha.1",{"_index":816,"title":{},"body":{"changelog.html":{}}}],["alpha.2",{"_index":811,"title":{},"body":{"changelog.html":{}}}],["alpha.3",{"_index":794,"title":{},"body":{"changelog.html":{}}}],["alt",{"_index":1079,"title":{},"body":{"index.html":{}}}],["analytics",{"_index":542,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["anatomical",{"_index":638,"title":{},"body":{"changelog.html":{}}}],["and/or",{"_index":1124,"title":{},"body":{"license.html":{}}}],["angular",{"_index":363,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["angular/animations",{"_index":955,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk",{"_index":957,"title":{},"body":{"dependencies.html":{}}}],["angular/common",{"_index":958,"title":{},"body":{"dependencies.html":{}}}],["angular/compiler",{"_index":959,"title":{},"body":{"dependencies.html":{}}}],["angular/core",{"_index":960,"title":{},"body":{"dependencies.html":{}}}],["angular/elements",{"_index":961,"title":{},"body":{"dependencies.html":{}}}],["angular/forms",{"_index":962,"title":{},"body":{"dependencies.html":{}}}],["angular/material",{"_index":963,"title":{},"body":{"dependencies.html":{}}}],["angular/platform",{"_index":965,"title":{},"body":{"dependencies.html":{}}}],["angular/router",{"_index":967,"title":{},"body":{"dependencies.html":{}}}],["angular/youtube",{"_index":968,"title":{},"body":{"dependencies.html":{}}}],["anyautoprunelrucache",{"_index":1168,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["api",{"_index":212,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["api/ccf",{"_index":94,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/app.ts",{"_index":7,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["api/src/lib/environment.ts",{"_index":891,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/middleware/database",{"_index":151,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["api/src/lib/middleware/response",{"_index":111,"title":{},"body":{"interfaces/CacheOptions.html":{},"coverage.html":{}}}],["api/src/lib/polyfills.ts",{"_index":904,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/routes/browser.ts",{"_index":906,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/gtex/index.ts",{"_index":909,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/gtex/rui",{"_index":198,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/hubmap/index.ts",{"_index":913,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/hubmap/rui",{"_index":914,"title":{},"body":{"coverage.html":{}}}],["api/src/lib/routes/v1/index.ts",{"_index":915,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/reference",{"_index":916,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/routes/v1/utils/forward",{"_index":920,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/routes/v1/utils/parse",{"_index":923,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/routes/v1/utils/use",{"_index":934,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/server.ts",{"_index":939,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["api/src/lib/utils/auto",{"_index":947,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["api/src/lib/utils/ccf",{"_index":74,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"coverage.html":{}}}],["api/src/lib/utils/request",{"_index":288,"title":{},"body":{"classes/RequestCache.html":{},"coverage.html":{}}}],["apifile",{"_index":1190,"title":{},"body":{"miscellaneous/variables.html":{}}}],["app",{"_index":39,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.set('database",{"_index":40,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.set('query",{"_index":43,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use",{"_index":68,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use('/v1",{"_index":69,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(cors",{"_index":64,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(databaseloader(options",{"_index":67,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(helmet",{"_index":53,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(json",{"_index":66,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.use(urlencoded",{"_index":65,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["appear",{"_index":410,"title":{},"body":{"changelog.html":{}}}],["application",{"_index":627,"title":{},"body":{"changelog.html":{}}}],["applied",{"_index":678,"title":{},"body":{"changelog.html":{}}}],["appoptions",{"_index":1,"title":{"interfaces/AppOptions.html":{}},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["appropriate",{"_index":366,"title":{},"body":{"changelog.html":{}}}],["april",{"_index":615,"title":{},"body":{"changelog.html":{}}}],["args",{"_index":304,"title":{},"body":{"classes/RequestCache.html":{}}}],["arising",{"_index":1158,"title":{},"body":{"license.html":{}}}],["asct+b",{"_index":399,"title":{},"body":{"changelog.html":{}}}],["assignment/selection",{"_index":591,"title":{},"body":{"changelog.html":{}}}],["associated",{"_index":477,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["async",{"_index":90,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["async/await",{"_index":108,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["attempt",{"_index":235,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["attempts",{"_index":447,"title":{},"body":{"changelog.html":{}}}],["authors",{"_index":1147,"title":{},"body":{"license.html":{}}}],["automatic",{"_index":731,"title":{},"body":{"changelog.html":{}}}],["automatically",{"_index":679,"title":{},"body":{"changelog.html":{}}}],["autoprunelrucache",{"_index":117,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["available",{"_index":256,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["avoid",{"_index":525,"title":{},"body":{"changelog.html":{}}}],["await",{"_index":98,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["award",{"_index":1099,"title":{},"body":{"index.html":{}}}],["backend",{"_index":422,"title":{},"body":{"changelog.html":{}}}],["background",{"_index":850,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["base",{"_index":821,"title":{},"body":{"changelog.html":{}}}],["based",{"_index":512,"title":{},"body":{"changelog.html":{}}}],["basic",{"_index":538,"title":{},"body":{"changelog.html":{}}}],["before",{"_index":414,"title":{},"body":{"changelog.html":{}}}],["being",{"_index":572,"title":{},"body":{"changelog.html":{}}}],["beta",{"_index":395,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["better",{"_index":488,"title":{},"body":{"changelog.html":{}}}],["between",{"_index":787,"title":{},"body":{"changelog.html":{}}}],["bind",{"_index":996,"title":{},"body":{"dependencies.html":{}}}],["block",{"_index":345,"title":{},"body":{"changelog.html":{}}}],["blocks",{"_index":338,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["bmi",{"_index":440,"title":{},"body":{"changelog.html":{}}}],["bmirange",{"_index":1209,"title":{},"body":{"miscellaneous/variables.html":{}}}],["board",{"_index":813,"title":{},"body":{"changelog.html":{}}}],["body",{"_index":20,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"changelog.html":{},"dependencies.html":{}}}],["boolean",{"_index":125,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/GtexTissue.html":{}}}],["both",{"_index":473,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["box",{"_index":524,"title":{},"body":{"changelog.html":{}}}],["breaking",{"_index":562,"title":{},"body":{"changelog.html":{}}}],["bringing",{"_index":581,"title":{},"body":{"changelog.html":{}}}],["browser",{"_index":800,"title":{},"body":{"changelog.html":{},"dependencies.html":{},"miscellaneous/variables.html":{}}}],["browserify",{"_index":1054,"title":{},"body":{"dependencies.html":{}}}],["browserroute",{"_index":907,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["browserroutes",{"_index":31,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["browsing",{"_index":879,"title":{},"body":{"changelog.html":{}}}],["bug",{"_index":386,"title":{},"body":{"changelog.html":{}}}],["build",{"_index":1071,"title":{},"body":{"index.html":{}}}],["builds",{"_index":385,"title":{},"body":{"changelog.html":{}}}],["button",{"_index":815,"title":{},"body":{"changelog.html":{}}}],["c",{"_index":1104,"title":{},"body":{"license.html":{}}}],["cache",{"_index":121,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"dependencies.html":{},"miscellaneous/variables.html":{}}}],["cache.del(key",{"_index":316,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.get(key",{"_index":144,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["cache.get(selecttoken(token",{"_index":194,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["cache.get(token",{"_index":284,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["cache.set(key",{"_index":148,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["cache.ts",{"_index":112,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["cache.ts:10",{"_index":305,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.ts:23",{"_index":310,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.ts:27",{"_index":308,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache.ts:4",{"_index":299,"title":{},"body":{"classes/RequestCache.html":{}}}],["cache_dir",{"_index":938,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["cacheable",{"_index":1058,"title":{},"body":{"dependencies.html":{}}}],["cached",{"_index":935,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["cachedresponse",{"_index":143,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["cacheoptions",{"_index":110,"title":{"interfaces/CacheOptions.html":{}},"body":{"interfaces/CacheOptions.html":{},"coverage.html":{}}}],["cacheresponses",{"_index":903,"title":{},"body":{"coverage.html":{}}}],["cacheresponses(options",{"_index":129,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["callback",{"_index":509,"title":{},"body":{"changelog.html":{}}}],["called",{"_index":568,"title":{},"body":{"changelog.html":{}}}],["cancelregistration",{"_index":508,"title":{},"body":{"changelog.html":{}}}],["candidate",{"_index":785,"title":{},"body":{"changelog.html":{}}}],["cannon",{"_index":1000,"title":{},"body":{"dependencies.html":{}}}],["card",{"_index":546,"title":{},"body":{"changelog.html":{}}}],["carousel",{"_index":551,"title":{},"body":{"changelog.html":{}}}],["cases",{"_index":756,"title":{},"body":{"changelog.html":{}}}],["catch",{"_index":252,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["ccf",{"_index":80,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"index.html":{},"miscellaneous/variables.html":{}}}],["ccf's",{"_index":702,"title":{},"body":{"changelog.html":{}}}],["ccfdatabase",{"_index":78,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["ccfdatabaseinstance",{"_index":73,"title":{"interfaces/CCFDatabaseInstance.html":{}},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["ccfdatabaseoptions",{"_index":79,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["cdn.jsdelivr.net",{"_index":62,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["cell",{"_index":334,"title":{},"body":{"changelog.html":{}}}],["celltypeterms",{"_index":1211,"title":{},"body":{"miscellaneous/variables.html":{}}}],["center",{"_index":1094,"title":{},"body":{"index.html":{}}}],["change",{"_index":565,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["changed",{"_index":847,"title":{},"body":{"changelog.html":{}}}],["changelog",{"_index":319,"title":{"changelog.html":{}},"body":{"changelog.html":{},"index.html":{}}}],["changes",{"_index":347,"title":{},"body":{"changelog.html":{}}}],["charge",{"_index":1110,"title":{},"body":{"license.html":{}}}],["checkroutesenabled",{"_index":910,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["choose",{"_index":724,"title":{},"body":{"changelog.html":{}}}],["ci/cd",{"_index":700,"title":{},"body":{"changelog.html":{}}}],["claim",{"_index":1150,"title":{},"body":{"license.html":{}}}],["clamp",{"_index":925,"title":{},"body":{"coverage.html":{}}}],["class",{"_index":286,"title":{"classes/RequestCache.html":{}},"body":{"classes/RequestCache.html":{},"coverage.html":{},"overview.html":{}}}],["classes",{"_index":287,"title":{},"body":{"classes/RequestCache.html":{}}}],["cleanup",{"_index":394,"title":{},"body":{"changelog.html":{}}}],["click",{"_index":456,"title":{},"body":{"changelog.html":{}}}],["clicking",{"_index":558,"title":{},"body":{"changelog.html":{}}}],["coalescing",{"_index":170,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["code",{"_index":381,"title":{},"body":{"changelog.html":{}}}],["codebase",{"_index":711,"title":{},"body":{"changelog.html":{}}}],["codex",{"_index":768,"title":{},"body":{"changelog.html":{}}}],["codifies",{"_index":831,"title":{},"body":{"changelog.html":{}}}],["collaboration",{"_index":709,"title":{},"body":{"changelog.html":{}}}],["collisions",{"_index":733,"title":{},"body":{"changelog.html":{}}}],["color",{"_index":590,"title":{},"body":{"changelog.html":{}}}],["colorizing",{"_index":777,"title":{},"body":{"changelog.html":{}}}],["combination",{"_index":725,"title":{},"body":{"changelog.html":{}}}],["come",{"_index":773,"title":{},"body":{"changelog.html":{}}}],["coming",{"_index":765,"title":{},"body":{"changelog.html":{}}}],["comlink",{"_index":83,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"dependencies.html":{}}}],["comlink/dist/umd/node",{"_index":85,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["common",{"_index":320,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["complexity",{"_index":598,"title":{},"body":{"changelog.html":{}}}],["compodoc",{"_index":379,"title":{},"body":{"changelog.html":{}}}],["component",{"_index":425,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["components",{"_index":539,"title":{},"body":{"changelog.html":{}}}],["concat",{"_index":1004,"title":{},"body":{"dependencies.html":{}}}],["conditions",{"_index":1132,"title":{},"body":{"license.html":{}}}],["config",{"_index":504,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["configuration",{"_index":492,"title":{},"body":{"changelog.html":{}}}],["configurations",{"_index":503,"title":{},"body":{"changelog.html":{}}}],["confirmation",{"_index":445,"title":{},"body":{"changelog.html":{}}}],["conform",{"_index":517,"title":{},"body":{"changelog.html":{}}}],["connect",{"_index":63,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["connection",{"_index":1160,"title":{},"body":{"license.html":{}}}],["consortium",{"_index":1105,"title":{},"body":{"license.html":{}}}],["const",{"_index":38,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"miscellaneous/variables.html":{}}}],["constructor",{"_index":293,"title":{},"body":{"classes/RequestCache.html":{}}}],["constructor(cache",{"_index":294,"title":{},"body":{"classes/RequestCache.html":{}}}],["container",{"_index":553,"title":{},"body":{"changelog.html":{}}}],["containers",{"_index":490,"title":{},"body":{"changelog.html":{}}}],["containing",{"_index":1069,"title":{},"body":{"index.html":{}}}],["contentsecuritypolicy",{"_index":54,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["contract",{"_index":1155,"title":{},"body":{"license.html":{}}}],["control",{"_index":665,"title":{},"body":{"changelog.html":{}}}],["coordinate",{"_index":321,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["copies",{"_index":1126,"title":{},"body":{"license.html":{}}}],["copy",{"_index":1113,"title":{},"body":{"license.html":{}}}],["copyright",{"_index":1103,"title":{},"body":{"license.html":{}}}],["cors",{"_index":22,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["count",{"_index":226,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["coverage",{"_index":809,"title":{"coverage.html":{}},"body":{"changelog.html":{},"coverage.html":{}}}],["createapp",{"_index":889,"title":{},"body":{"coverage.html":{}}}],["createapp(options",{"_index":37,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["createccfdatabaseworker",{"_index":154,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["createccfdatabaseworker(options",{"_index":91,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["created",{"_index":674,"title":{},"body":{"changelog.html":{}}}],["createdatabase",{"_index":901,"title":{},"body":{"coverage.html":{}}}],["createdatabase(token",{"_index":163,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["credits",{"_index":1089,"title":{},"body":{"index.html":{}}}],["css",{"_index":1007,"title":{},"body":{"dependencies.html":{}}}],["cuboid",{"_index":807,"title":{},"body":{"changelog.html":{}}}],["cuboids",{"_index":804,"title":{},"body":{"changelog.html":{}}}],["currently",{"_index":437,"title":{},"body":{"changelog.html":{}}}],["cyberinfrastructure",{"_index":1091,"title":{},"body":{"index.html":{}}}],["cycle",{"_index":609,"title":{},"body":{"changelog.html":{}}}],["damages",{"_index":1151,"title":{},"body":{"license.html":{}}}],["dark/light",{"_index":511,"title":{},"body":{"changelog.html":{}}}],["data",{"_index":178,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["database",{"_index":75,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["database.connect",{"_index":99,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["database.worker.js",{"_index":95,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["database[releaseproxy",{"_index":100,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["databasecacheoptions",{"_index":150,"title":{"interfaces/DatabaseCacheOptions.html":{}},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["databasegetter",{"_index":1170,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["databaseloader",{"_index":27,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["databaseloader(options",{"_index":185,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["databaseloaderoptions",{"_index":9,"title":{"interfaces/DatabaseLoaderOptions.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["databasequerymethods",{"_index":1173,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["databasesource",{"_index":1174,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["databasesources",{"_index":1176,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["datasets",{"_index":621,"title":{},"body":{"changelog.html":{}}}],["datasources",{"_index":180,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["deal",{"_index":1115,"title":{},"body":{"license.html":{}}}],["dealings",{"_index":1161,"title":{},"body":{"license.html":{}}}],["december",{"_index":718,"title":{},"body":{"changelog.html":{}}}],["deck.gl/core",{"_index":970,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/geo",{"_index":972,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/layers",{"_index":974,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/mesh",{"_index":975,"title":{},"body":{"dependencies.html":{}}}],["decorator",{"_index":997,"title":{},"body":{"dependencies.html":{}}}],["deeply",{"_index":429,"title":{},"body":{"changelog.html":{}}}],["default",{"_index":377,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["default_gtex_rui_locations",{"_index":228,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["defaultvalue",{"_index":123,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["defined",{"_index":298,"title":{},"body":{"classes/RequestCache.html":{},"changelog.html":{}}}],["del",{"_index":1214,"title":{},"body":{"miscellaneous/variables.html":{}}}],["demo",{"_index":459,"title":{},"body":{"changelog.html":{}}}],["dependencies",{"_index":548,"title":{"dependencies.html":{}},"body":{"changelog.html":{},"dependencies.html":{}}}],["depending",{"_index":571,"title":{},"body":{"changelog.html":{}}}],["deprecated",{"_index":175,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["details",{"_index":856,"title":{},"body":{"changelog.html":{}}}],["developed",{"_index":1090,"title":{},"body":{"index.html":{}}}],["developments",{"_index":836,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["dialog",{"_index":446,"title":{},"body":{"changelog.html":{}}}],["different",{"_index":489,"title":{},"body":{"changelog.html":{}}}],["digits",{"_index":694,"title":{},"body":{"changelog.html":{}}}],["direct",{"_index":865,"title":{},"body":{"changelog.html":{}}}],["directives",{"_index":56,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["directly",{"_index":766,"title":{},"body":{"changelog.html":{}}}],["disable",{"_index":165,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["display",{"_index":480,"title":{},"body":{"changelog.html":{}}}],["displayed",{"_index":805,"title":{},"body":{"changelog.html":{}}}],["displaying",{"_index":476,"title":{},"body":{"changelog.html":{}}}],["dispose",{"_index":77,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["distribute",{"_index":1122,"title":{},"body":{"license.html":{}}}],["doc",{"_index":819,"title":{},"body":{"changelog.html":{}}}],["document",{"_index":1010,"title":{},"body":{"dependencies.html":{}}}],["documentation",{"_index":382,"title":{},"body":{"changelog.html":{},"coverage.html":{},"license.html":{}}}],["done",{"_index":563,"title":{},"body":{"changelog.html":{}}}],["donor",{"_index":545,"title":{},"body":{"changelog.html":{}}}],["donors",{"_index":624,"title":{},"body":{"changelog.html":{}}}],["dorequest",{"_index":296,"title":{},"body":{"classes/RequestCache.html":{}}}],["dotenv",{"_index":1013,"title":{},"body":{"dependencies.html":{}}}],["download",{"_index":848,"title":{},"body":{"changelog.html":{}}}],["dump",{"_index":1221,"title":{},"body":{"miscellaneous/variables.html":{}}}],["during",{"_index":608,"title":{},"body":{"changelog.html":{}}}],["dynamic",{"_index":966,"title":{},"body":{"dependencies.html":{}}}],["dynamically",{"_index":339,"title":{},"body":{"changelog.html":{}}}],["easier",{"_index":355,"title":{},"body":{"changelog.html":{}}}],["effect",{"_index":747,"title":{},"body":{"changelog.html":{}}}],["efficiency",{"_index":652,"title":{},"body":{"changelog.html":{}}}],["element",{"_index":566,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["embedded",{"_index":500,"title":{},"body":{"changelog.html":{}}}],["embedding",{"_index":485,"title":{},"body":{"changelog.html":{}}}],["embedding.md",{"_index":483,"title":{},"body":{"changelog.html":{}}}],["enabled",{"_index":1197,"title":{},"body":{"miscellaneous/variables.html":{}}}],["encoding",{"_index":239,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["entry.label",{"_index":264,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["entry.mappedinhubmap",{"_index":249,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["entry['@id']?.includes(tissueinfo.tissuesitedetailid",{"_index":263,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["env",{"_index":898,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["env.gtex_routes",{"_index":1198,"title":{},"body":{"miscellaneous/variables.html":{}}}],["env.hubmap_routes",{"_index":1202,"title":{},"body":{"miscellaneous/variables.html":{}}}],["environment",{"_index":211,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["error",{"_index":1205,"title":{},"body":{"miscellaneous/variables.html":{}}}],["error('no",{"_index":255,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["es",{"_index":1001,"title":{},"body":{"dependencies.html":{}}}],["eslint",{"_index":164,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["eslint/prefer",{"_index":168,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["etc",{"_index":522,"title":{},"body":{"changelog.html":{}}}],["eui",{"_index":420,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["eui/rui",{"_index":374,"title":{},"body":{"changelog.html":{}}}],["eui/src/assets/gtex/data/rui_locations.jsonld",{"_index":229,"title":{},"body":{"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["eval",{"_index":61,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["event",{"_index":1146,"title":{},"body":{"license.html":{}}}],["expanded",{"_index":349,"title":{},"body":{"changelog.html":{}}}],["exploration",{"_index":1073,"title":{},"body":{"index.html":{}}}],["export",{"_index":35,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["express",{"_index":23,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"dependencies.html":{},"license.html":{}}}],["extends",{"_index":8,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["external",{"_index":507,"title":{},"body":{"changelog.html":{}}}],["extra",{"_index":1018,"title":{},"body":{"dependencies.html":{}}}],["extraction",{"_index":452,"title":{},"body":{"changelog.html":{}}}],["fail",{"_index":715,"title":{},"body":{"changelog.html":{}}}],["fails",{"_index":752,"title":{},"body":{"changelog.html":{}}}],["false",{"_index":124,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["favor",{"_index":704,"title":{},"body":{"changelog.html":{}}}],["feature",{"_index":336,"title":{},"body":{"changelog.html":{}}}],["features",{"_index":610,"title":{},"body":{"changelog.html":{}}}],["feel",{"_index":650,"title":{},"body":{"changelog.html":{}}}],["female",{"_index":222,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["fetch",{"_index":206,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["fetch(gtex_api_url).then(r",{"_index":245,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["field",{"_index":518,"title":{},"body":{"changelog.html":{}}}],["fields",{"_index":216,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["file",{"_index":5,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"dependencies.html":{}}}],["files",{"_index":1114,"title":{},"body":{"license.html":{}}}],["filter",{"_index":664,"title":{},"body":{"changelog.html":{}}}],["filter.ts",{"_index":924,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["filter_defaults",{"_index":933,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["final",{"_index":707,"title":{},"body":{"changelog.html":{}}}],["finishing",{"_index":450,"title":{},"body":{"changelog.html":{}}}],["first",{"_index":719,"title":{},"body":{"changelog.html":{}}}],["fit",{"_index":618,"title":{},"body":{"changelog.html":{}}}],["fitness",{"_index":1142,"title":{},"body":{"license.html":{}}}],["fixed",{"_index":600,"title":{},"body":{"changelog.html":{}}}],["fixes",{"_index":387,"title":{},"body":{"changelog.html":{}}}],["fixes/performance",{"_index":778,"title":{},"body":{"changelog.html":{}}}],["fly",{"_index":873,"title":{},"body":{"changelog.html":{}}}],["following",{"_index":1131,"title":{},"body":{"license.html":{}}}],["foreach",{"_index":1218,"title":{},"body":{"miscellaneous/variables.html":{}}}],["form",{"_index":653,"title":{},"body":{"changelog.html":{}}}],["format",{"_index":736,"title":{},"body":{"changelog.html":{}}}],["forwarddatabasequery",{"_index":922,"title":{},"body":{"coverage.html":{}}}],["forwarddatabasequery('getaggregateresults",{"_index":1238,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getcelltypetermoccurences",{"_index":1244,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getcelltypetreemodel",{"_index":1249,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getdatasettechnologynames",{"_index":1234,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getontologytermoccurences",{"_index":1242,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getontologytreemodel",{"_index":1247,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getprovidernames",{"_index":1236,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getreferenceorgans",{"_index":1253,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('getscene",{"_index":1255,"title":{},"body":{"miscellaneous/variables.html":{}}}],["forwarddatabasequery('gettissueblockresults",{"_index":1232,"title":{},"body":{"miscellaneous/variables.html":{}}}],["frame",{"_index":625,"title":{},"body":{"changelog.html":{}}}],["framework",{"_index":322,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["free",{"_index":1109,"title":{},"body":{"license.html":{}}}],["fs",{"_index":205,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["full",{"_index":556,"title":{},"body":{"changelog.html":{}}}],["fullscreen",{"_index":814,"title":{},"body":{"changelog.html":{}}}],["fully",{"_index":611,"title":{},"body":{"changelog.html":{}}}],["function",{"_index":36,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["funded",{"_index":1097,"title":{},"body":{"index.html":{}}}],["furnished",{"_index":1129,"title":{},"body":{"license.html":{}}}],["further",{"_index":810,"title":{},"body":{"changelog.html":{}}}],["future",{"_index":601,"title":{},"body":{"changelog.html":{}}}],["generate",{"_index":340,"title":{},"body":{"changelog.html":{}}}],["generated",{"_index":380,"title":{},"body":{"changelog.html":{}}}],["generating",{"_index":359,"title":{},"body":{"changelog.html":{}}}],["get('/aggregate",{"_index":1237,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/ccf",{"_index":1195,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/cell",{"_index":1243,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/ontology",{"_index":1239,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/provider",{"_index":1235,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/reference",{"_index":1250,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/rui_locations.jsonld",{"_index":1201,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/scene",{"_index":1254,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/technology",{"_index":1233,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('/tissue",{"_index":1231,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('ccf_api_cache",{"_index":1196,"title":{},"body":{"miscellaneous/variables.html":{}}}],["get('gtex_rui_locations",{"_index":234,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["get(key",{"_index":302,"title":{},"body":{"classes/RequestCache.html":{}}}],["getboolean",{"_index":892,"title":{},"body":{"coverage.html":{}}}],["getcacheoptions",{"_index":940,"title":{},"body":{"coverage.html":{}}}],["getdatabaseoptions",{"_index":941,"title":{},"body":{"coverage.html":{}}}],["getlocations",{"_index":232,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{}}}],["getnumber",{"_index":893,"title":{},"body":{"coverage.html":{}}}],["getport",{"_index":942,"title":{},"body":{"coverage.html":{}}}],["getreferenceorganscenehandler",{"_index":918,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["getting",{"_index":317,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{}}],["github",{"_index":696,"title":{},"body":{"changelog.html":{}}}],["gizmo",{"_index":528,"title":{},"body":{"changelog.html":{}}}],["globalconfig",{"_index":496,"title":{},"body":{"changelog.html":{}}}],["globalthis",{"_index":1177,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["good",{"_index":749,"title":{},"body":{"changelog.html":{}}}],["google",{"_index":541,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["granted",{"_index":1108,"title":{},"body":{"license.html":{}}}],["graphology",{"_index":1019,"title":{},"body":{"dependencies.html":{}}}],["greatly",{"_index":471,"title":{},"body":{"changelog.html":{}}}],["gtex",{"_index":341,"title":{},"body":{"changelog.html":{}}}],["gtex_api_url",{"_index":230,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["gtexroutes",{"_index":1230,"title":{},"body":{"miscellaneous/variables.html":{}}}],["gtextissue",{"_index":197,"title":{"interfaces/GtexTissue.html":{}},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{}}}],["guide",{"_index":739,"title":{},"body":{"changelog.html":{}}}],["hand",{"_index":745,"title":{},"body":{"changelog.html":{}}}],["handleerrors",{"_index":291,"title":{},"body":{"classes/RequestCache.html":{}}}],["handleerrors(key",{"_index":307,"title":{},"body":{"classes/RequestCache.html":{}}}],["happen",{"_index":786,"title":{},"body":{"changelog.html":{}}}],["happens",{"_index":716,"title":{},"body":{"changelog.html":{}}}],["helmet",{"_index":24,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["help",{"_index":738,"title":{},"body":{"changelog.html":{}}}],["here",{"_index":220,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["hereby",{"_index":1107,"title":{},"body":{"license.html":{}}}],["hex",{"_index":1025,"title":{},"body":{"dependencies.html":{}}}],["hidden",{"_index":837,"title":{},"body":{"changelog.html":{}}}],["highlight",{"_index":435,"title":{},"body":{"changelog.html":{}}}],["highlights",{"_index":438,"title":{},"body":{"changelog.html":{}}}],["holders",{"_index":1148,"title":{},"body":{"license.html":{}}}],["hooked",{"_index":661,"title":{},"body":{"changelog.html":{}}}],["hovering",{"_index":547,"title":{},"body":{"changelog.html":{}}}],["http://expressjs.com/en/advanced/best",{"_index":50,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["https://beta",{"_index":1076,"title":{},"body":{"index.html":{}}}],["https://gtexportal.org/api/v2/tissuesitedetail",{"_index":231,"title":{},"body":{"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["https://hubmap",{"_index":1081,"title":{},"body":{"index.html":{}}}],["https://hubmapconsortium.github.io/ccf",{"_index":1080,"title":{},"body":{"index.html":{}}}],["https://old",{"_index":1083,"title":{},"body":{"index.html":{}}}],["https://portal.hubmapconsortium.org/ccf",{"_index":1078,"title":{},"body":{"index.html":{}}}],["https://sampledata.hubmapconsortium.org",{"_index":867,"title":{},"body":{"changelog.html":{}}}],["hubmap",{"_index":177,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{},"index.html":{},"license.html":{}}}],["hubmapdataurl",{"_index":173,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["hubmaproutes",{"_index":1228,"title":{},"body":{"miscellaneous/variables.html":{}}}],["hubmaptoken",{"_index":171,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["icon",{"_index":849,"title":{},"body":{"changelog.html":{}}}],["icons",{"_index":557,"title":{},"body":{"changelog.html":{}}}],["id",{"_index":497,"title":{},"body":{"changelog.html":{}}}],["idb",{"_index":1028,"title":{},"body":{"dependencies.html":{}}}],["identifier",{"_index":885,"title":{},"body":{"coverage.html":{}}}],["iec",{"_index":710,"title":{},"body":{"changelog.html":{}}}],["image",{"_index":703,"title":{},"body":{"changelog.html":{}}}],["images",{"_index":764,"title":{},"body":{"changelog.html":{}}}],["implementation",{"_index":418,"title":{},"body":{"changelog.html":{}}}],["implemented",{"_index":659,"title":{},"body":{"changelog.html":{}}}],["implementing",{"_index":818,"title":{},"body":{"changelog.html":{}}}],["implied",{"_index":1139,"title":{},"body":{"license.html":{}}}],["import",{"_index":17,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["improve",{"_index":651,"title":{},"body":{"changelog.html":{}}}],["improved",{"_index":370,"title":{},"body":{"changelog.html":{}}}],["improvements",{"_index":389,"title":{},"body":{"changelog.html":{}}}],["improves",{"_index":472,"title":{},"body":{"changelog.html":{}}}],["include",{"_index":721,"title":{},"body":{"changelog.html":{}}}],["included",{"_index":1134,"title":{},"body":{"license.html":{}}}],["includes",{"_index":214,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["including",{"_index":431,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["increase",{"_index":689,"title":{},"body":{"changelog.html":{}}}],["increased",{"_index":812,"title":{},"body":{"changelog.html":{}}}],["index",{"_index":10,"title":{"index.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["indiana",{"_index":1095,"title":{},"body":{"index.html":{}}}],["individual",{"_index":667,"title":{},"body":{"changelog.html":{}}}],["info",{"_index":3,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"index.html":{}}}],["information",{"_index":589,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["infrastructure",{"_index":767,"title":{},"body":{"changelog.html":{}}}],["ingestion",{"_index":723,"title":{},"body":{"changelog.html":{}}}],["initial",{"_index":579,"title":{},"body":{"changelog.html":{}}}],["instance",{"_index":188,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["instance.database",{"_index":196,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["instance.then((r",{"_index":189,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["instead",{"_index":570,"title":{},"body":{"changelog.html":{}}}],["instructions",{"_index":484,"title":{},"body":{"changelog.html":{}}}],["integrated",{"_index":612,"title":{},"body":{"changelog.html":{}}}],["integrating",{"_index":426,"title":{},"body":{"changelog.html":{}}}],["integration",{"_index":722,"title":{},"body":{"changelog.html":{}}}],["integrations",{"_index":632,"title":{},"body":{"changelog.html":{}}}],["interact",{"_index":595,"title":{},"body":{"changelog.html":{}}}],["interactions",{"_index":791,"title":{},"body":{"changelog.html":{}}}],["interest",{"_index":864,"title":{},"body":{"changelog.html":{}}}],["interface",{"_index":0,"title":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"coverage.html":{},"index.html":{}}}],["interfaces",{"_index":2,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"index.html":{},"overview.html":{}}}],["internal",{"_index":176,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{}}}],["isdebug",{"_index":894,"title":{},"body":{"coverage.html":{}}}],["issue",{"_index":684,"title":{},"body":{"changelog.html":{}}}],["issues",{"_index":406,"title":{},"body":{"changelog.html":{}}}],["it's",{"_index":421,"title":{},"body":{"changelog.html":{}}}],["item",{"_index":845,"title":{},"body":{"changelog.html":{}}}],["itemcount",{"_index":1225,"title":{},"body":{"miscellaneous/variables.html":{}}}],["iu",{"_index":834,"title":{},"body":{"changelog.html":{}}}],["javascript",{"_index":364,"title":{},"body":{"changelog.html":{}}}],["json",{"_index":18,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["json.parse(data",{"_index":243,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["jsonld",{"_index":242,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["jsonld/jsonld",{"_index":209,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["jsonld['@graph",{"_index":244,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["jsonldobj",{"_index":208,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["july",{"_index":790,"title":{},"body":{"changelog.html":{}}}],["jump",{"_index":843,"title":{},"body":{"changelog.html":{}}}],["k",{"_index":303,"title":{},"body":{"classes/RequestCache.html":{}}}],["k,args",{"_index":297,"title":{},"body":{"classes/RequestCache.html":{}}}],["key",{"_index":141,"title":{},"body":{"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["keyboard",{"_index":841,"title":{},"body":{"changelog.html":{}}}],["keys",{"_index":1216,"title":{},"body":{"miscellaneous/variables.html":{}}}],["keyval",{"_index":1029,"title":{},"body":{"dependencies.html":{}}}],["kidney",{"_index":468,"title":{},"body":{"changelog.html":{}}}],["kind",{"_index":1138,"title":{},"body":{"license.html":{}}}],["known",{"_index":405,"title":{},"body":{"changelog.html":{}}}],["kpmp",{"_index":713,"title":{},"body":{"changelog.html":{}}}],["labs/data",{"_index":984,"title":{},"body":{"dependencies.html":{}}}],["landmarks",{"_index":454,"title":{},"body":{"changelog.html":{}}}],["larger",{"_index":356,"title":{},"body":{"changelog.html":{}}}],["latest",{"_index":330,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["layers",{"_index":973,"title":{},"body":{"dependencies.html":{}}}],["ld",{"_index":735,"title":{},"body":{"changelog.html":{}}}],["leak",{"_index":683,"title":{},"body":{"changelog.html":{}}}],["leave",{"_index":448,"title":{},"body":{"changelog.html":{}}}],["left",{"_index":744,"title":{},"body":{"changelog.html":{}}}],["left/right",{"_index":469,"title":{},"body":{"changelog.html":{}}}],["length",{"_index":1224,"title":{},"body":{"miscellaneous/variables.html":{}}}],["lengthcalculator",{"_index":1222,"title":{},"body":{"miscellaneous/variables.html":{}}}],["level",{"_index":839,"title":{},"body":{"changelog.html":{}}}],["levels",{"_index":861,"title":{},"body":{"changelog.html":{}}}],["liability",{"_index":1152,"title":{},"body":{"license.html":{}}}],["liable",{"_index":1149,"title":{},"body":{"license.html":{}}}],["libraries",{"_index":361,"title":{},"body":{"changelog.html":{}}}],["library",{"_index":643,"title":{},"body":{"changelog.html":{}}}],["license",{"_index":1101,"title":{"license.html":{}},"body":{"license.html":{}}}],["life",{"_index":442,"title":{},"body":{"changelog.html":{}}}],["limitation",{"_index":1117,"title":{},"body":{"license.html":{}}}],["limited",{"_index":772,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["line",{"_index":166,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["link",{"_index":460,"title":{},"body":{"changelog.html":{}}}],["linkage",{"_index":792,"title":{},"body":{"changelog.html":{}}}],["linked",{"_index":544,"title":{},"body":{"changelog.html":{}}}],["links",{"_index":403,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["list",{"_index":586,"title":{},"body":{"changelog.html":{}}}],["literal",{"_index":203,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["little",{"_index":593,"title":{},"body":{"changelog.html":{}}}],["load",{"_index":236,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["loaddatabasesource",{"_index":943,"title":{},"body":{"coverage.html":{}}}],["loaded",{"_index":793,"title":{},"body":{"changelog.html":{}}}],["loader",{"_index":29,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["loader.ts",{"_index":152,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"coverage.html":{}}}],["loaders.gl/core",{"_index":976,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/draco",{"_index":978,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/gltf",{"_index":979,"title":{},"body":{"dependencies.html":{}}}],["loading",{"_index":179,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["local",{"_index":237,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["location",{"_index":690,"title":{},"body":{"changelog.html":{}}}],["locations.ts",{"_index":199,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["lodash",{"_index":1032,"title":{},"body":{"dependencies.html":{}}}],["log",{"_index":1088,"title":{},"body":{"index.html":{}}}],["logging",{"_index":343,"title":{},"body":{"changelog.html":{}}}],["longer",{"_index":567,"title":{},"body":{"changelog.html":{}}}],["look",{"_index":649,"title":{},"body":{"changelog.html":{}}}],["lru",{"_index":120,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["lrucache",{"_index":295,"title":{},"body":{"classes/RequestCache.html":{}}}],["luma.gl/core",{"_index":980,"title":{},"body":{"dependencies.html":{}}}],["made",{"_index":712,"title":{},"body":{"changelog.html":{}}}],["major",{"_index":681,"title":{},"body":{"changelog.html":{}}}],["makes",{"_index":351,"title":{},"body":{"changelog.html":{}}}],["making",{"_index":415,"title":{},"body":{"changelog.html":{}}}],["male",{"_index":227,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["managers",{"_index":368,"title":{},"body":{"changelog.html":{}}}],["map",{"_index":217,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["mappedentries",{"_index":247,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["mappedinhubmap",{"_index":200,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["march",{"_index":646,"title":{},"body":{"changelog.html":{}}}],["markdown",{"_index":1042,"title":{},"body":{"dependencies.html":{}}}],["match",{"_index":648,"title":{},"body":{"changelog.html":{}}}],["matching",{"_index":71,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["matchingentry",{"_index":261,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["math.gl/core",{"_index":981,"title":{},"body":{"dependencies.html":{}}}],["max",{"_index":113,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["maxage",{"_index":114,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["mc",{"_index":833,"title":{},"body":{"changelog.html":{}}}],["mean",{"_index":273,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["memory",{"_index":682,"title":{},"body":{"changelog.html":{}}}],["menu",{"_index":746,"title":{},"body":{"changelog.html":{}}}],["merchantability",{"_index":1141,"title":{},"body":{"license.html":{}}}],["merge",{"_index":1120,"title":{},"body":{"license.html":{}}}],["metadata",{"_index":803,"title":{},"body":{"changelog.html":{}}}],["method",{"_index":1212,"title":{},"body":{"miscellaneous/variables.html":{}}}],["methods",{"_index":289,"title":{},"body":{"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["middleware/database",{"_index":28,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["minor",{"_index":388,"title":{},"body":{"changelog.html":{}}}],["miscellaneous",{"_index":1165,"title":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["mit",{"_index":1102,"title":{},"body":{"license.html":{}}}],["mock",{"_index":829,"title":{},"body":{"changelog.html":{}}}],["modal",{"_index":577,"title":{},"body":{"changelog.html":{}}}],["mode",{"_index":502,"title":{},"body":{"changelog.html":{}}}],["model",{"_index":992,"title":{},"body":{"dependencies.html":{},"miscellaneous/variables.html":{}}}],["model.json",{"_index":1246,"title":{},"body":{"miscellaneous/variables.html":{}}}],["modify",{"_index":1119,"title":{},"body":{"license.html":{}}}],["modules",{"_index":1162,"title":{"modules.html":{}},"body":{"modules.html":{}}}],["monorepo",{"_index":1066,"title":{},"body":{"index.html":{}}}],["more",{"_index":215,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{},"index.html":{}}}],["moved",{"_index":851,"title":{},"body":{"changelog.html":{}}}],["much",{"_index":354,"title":{},"body":{"changelog.html":{}}}],["multiple",{"_index":1067,"title":{},"body":{"index.html":{}}}],["mutableproperties",{"_index":948,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["n3",{"_index":1035,"title":{},"body":{"dependencies.html":{}}}],["n=${sexstats.count",{"_index":272,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["name",{"_index":301,"title":{},"body":{"classes/RequestCache.html":{}}}],["names",{"_index":519,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["navigation",{"_index":842,"title":{},"body":{"changelog.html":{}}}],["needed",{"_index":654,"title":{},"body":{"changelog.html":{}}}],["needs",{"_index":660,"title":{},"body":{"changelog.html":{}}}],["network",{"_index":1092,"title":{},"body":{"index.html":{}}}],["never",{"_index":14,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["new",{"_index":92,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"coverage.html":{}}}],["next",{"_index":135,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["next('router",{"_index":1199,"title":{},"body":{"miscellaneous/variables.html":{}}}],["ng5",{"_index":1037,"title":{},"body":{"dependencies.html":{}}}],["ngx",{"_index":1040,"title":{},"body":{"dependencies.html":{}}}],["ngxs",{"_index":983,"title":{},"body":{"dependencies.html":{}}}],["ngxs/logger",{"_index":986,"title":{},"body":{"dependencies.html":{}}}],["ngxs/storage",{"_index":989,"title":{},"body":{"dependencies.html":{}}}],["ngxs/store",{"_index":990,"title":{},"body":{"dependencies.html":{}}}],["nih",{"_index":1098,"title":{},"body":{"index.html":{}}}],["node",{"_index":207,"title":{},"body":{"interfaces/GtexTissue.html":{},"dependencies.html":{}}}],["nodeendpoint",{"_index":84,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["noninfringement",{"_index":1145,"title":{},"body":{"license.html":{}}}],["note",{"_index":102,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["notice",{"_index":685,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["now",{"_index":358,"title":{},"body":{"changelog.html":{}}}],["nullish",{"_index":169,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["number",{"_index":115,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["numeric",{"_index":691,"title":{},"body":{"changelog.html":{}}}],["obtaining",{"_index":1112,"title":{},"body":{"license.html":{}}}],["occurences",{"_index":1241,"title":{},"body":{"miscellaneous/variables.html":{}}}],["off/on",{"_index":657,"title":{},"body":{"changelog.html":{}}}],["official",{"_index":788,"title":{},"body":{"changelog.html":{}}}],["old",{"_index":1082,"title":{},"body":{"index.html":{}}}],["one",{"_index":729,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["ones",{"_index":218,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["online",{"_index":798,"title":{},"body":{"changelog.html":{}}}],["ontological",{"_index":872,"title":{},"body":{"changelog.html":{}}}],["ontologies",{"_index":737,"title":{},"body":{"changelog.html":{}}}],["ontology",{"_index":331,"title":{},"body":{"changelog.html":{}}}],["ontologyterms",{"_index":1210,"title":{},"body":{"miscellaneous/variables.html":{}}}],["opacities",{"_index":666,"title":{},"body":{"changelog.html":{}}}],["opacity",{"_index":639,"title":{},"body":{"changelog.html":{}}}],["openapi",{"_index":417,"title":{},"body":{"changelog.html":{}}}],["openapiroute",{"_index":908,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["operations",{"_index":104,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["optimization",{"_index":592,"title":{},"body":{"changelog.html":{}}}],["optimizations",{"_index":779,"title":{},"body":{"changelog.html":{}}}],["optimized",{"_index":630,"title":{},"body":{"changelog.html":{}}}],["option",{"_index":434,"title":{},"body":{"changelog.html":{}}}],["optional",{"_index":12,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"classes/RequestCache.html":{},"changelog.html":{}}}],["options",{"_index":41,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["options.cache",{"_index":191,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["options.database",{"_index":42,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["options.datasources.map(s",{"_index":181,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["options.hubmaptoken",{"_index":172,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["organ",{"_index":344,"title":{},"body":{"changelog.html":{},"coverage.html":{},"index.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["organs",{"_index":353,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["organs.json",{"_index":1252,"title":{},"body":{"miscellaneous/variables.html":{}}}],["organs/anatomical",{"_index":668,"title":{},"body":{"changelog.html":{}}}],["originalsend",{"_index":146,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["originalsend.call(res",{"_index":149,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["originalurl",{"_index":137,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["orthographic",{"_index":534,"title":{},"body":{"changelog.html":{}}}],["ot2od026671",{"_index":1100,"title":{},"body":{"index.html":{}}}],["otherwise",{"_index":1157,"title":{},"body":{"license.html":{}}}],["out",{"_index":1159,"title":{},"body":{"license.html":{}}}],["over",{"_index":698,"title":{},"body":{"changelog.html":{}}}],["overlays",{"_index":862,"title":{},"body":{"changelog.html":{}}}],["overview",{"_index":1163,"title":{"overview.html":{}},"body":{"overview.html":{}}}],["overwritten",{"_index":1213,"title":{},"body":{"miscellaneous/variables.html":{}}}],["p",{"_index":824,"title":{},"body":{"changelog.html":{}}}],["package",{"_index":367,"title":{"dependencies.html":{}},"body":{"changelog.html":{}}}],["pages",{"_index":482,"title":{},"body":{"changelog.html":{}}}],["paired",{"_index":464,"title":{},"body":{"changelog.html":{}}}],["pane",{"_index":619,"title":{},"body":{"changelog.html":{}}}],["panel",{"_index":479,"title":{},"body":{"changelog.html":{}}}],["parameters",{"_index":300,"title":{},"body":{"classes/RequestCache.html":{}}}],["parent",{"_index":466,"title":{},"body":{"changelog.html":{}}}],["parsearray",{"_index":926,"title":{},"body":{"coverage.html":{}}}],["parseboolean",{"_index":895,"title":{},"body":{"coverage.html":{}}}],["parseboolean(query.cache",{"_index":140,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["parseboolean(value",{"_index":122,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["parsedatabasesources",{"_index":944,"title":{},"body":{"coverage.html":{}}}],["parsedqs",{"_index":26,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["parseminmaxrange",{"_index":927,"title":{},"body":{"coverage.html":{}}}],["parsenumber",{"_index":896,"title":{},"body":{"coverage.html":{}}}],["parser",{"_index":21,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["parserange",{"_index":928,"title":{},"body":{"coverage.html":{}}}],["parsesex",{"_index":929,"title":{},"body":{"coverage.html":{}}}],["parsestring",{"_index":919,"title":{},"body":{"coverage.html":{}}}],["partial",{"_index":1207,"title":{},"body":{"miscellaneous/variables.html":{}}}],["particular",{"_index":1143,"title":{},"body":{"license.html":{}}}],["partly",{"_index":645,"title":{},"body":{"changelog.html":{}}}],["partonomy",{"_index":560,"title":{},"body":{"changelog.html":{}}}],["patchglobal",{"_index":905,"title":{},"body":{"coverage.html":{}}}],["path",{"_index":1022,"title":{},"body":{"dependencies.html":{}}}],["peek",{"_index":1215,"title":{},"body":{"miscellaneous/variables.html":{}}}],["performance",{"_index":371,"title":{},"body":{"changelog.html":{}}}],["permission",{"_index":1106,"title":{},"body":{"license.html":{}}}],["permit",{"_index":1127,"title":{},"body":{"license.html":{}}}],["person",{"_index":1111,"title":{},"body":{"license.html":{}}}],["persons",{"_index":1128,"title":{},"body":{"license.html":{}}}],["pickbytype",{"_index":1179,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["placeholder",{"_index":13,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["placement",{"_index":740,"title":{},"body":{"changelog.html":{}}}],["player",{"_index":969,"title":{},"body":{"dependencies.html":{}}}],["plugin",{"_index":987,"title":{},"body":{"dependencies.html":{}}}],["popup",{"_index":802,"title":{},"body":{"changelog.html":{}}}],["portal",{"_index":432,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["portal's",{"_index":771,"title":{},"body":{"changelog.html":{}}}],["portions",{"_index":1136,"title":{},"body":{"license.html":{}}}],["position",{"_index":346,"title":{},"body":{"changelog.html":{}}}],["possible",{"_index":714,"title":{},"body":{"changelog.html":{}}}],["practice",{"_index":51,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["preferences",{"_index":514,"title":{},"body":{"changelog.html":{}}}],["preparation",{"_index":835,"title":{},"body":{"changelog.html":{}}}],["presented",{"_index":860,"title":{},"body":{"changelog.html":{}}}],["preview",{"_index":531,"title":{},"body":{"changelog.html":{}}}],["previous",{"_index":673,"title":{},"body":{"changelog.html":{}}}],["previously",{"_index":407,"title":{},"body":{"changelog.html":{}}}],["private",{"_index":290,"title":{},"body":{"classes/RequestCache.html":{}}}],["process",{"_index":817,"title":{},"body":{"changelog.html":{}}}],["process.env",{"_index":1203,"title":{},"body":{"miscellaneous/variables.html":{}}}],["processed",{"_index":762,"title":{},"body":{"changelog.html":{}}}],["processing",{"_index":516,"title":{},"body":{"changelog.html":{}}}],["processparameter",{"_index":930,"title":{},"body":{"coverage.html":{}}}],["production",{"_index":383,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["programming",{"_index":360,"title":{},"body":{"changelog.html":{}}}],["project",{"_index":822,"title":{},"body":{"changelog.html":{}}}],["projects",{"_index":1068,"title":{},"body":{"index.html":{}}}],["projects/.../auto",{"_index":1169,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../browser.ts",{"_index":1183,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../environment.ts",{"_index":1181,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../forward",{"_index":1172,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../index.ts",{"_index":1185,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../parse",{"_index":1187,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../polyfills.ts",{"_index":1178,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../reference",{"_index":1171,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../rui",{"_index":1186,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../server.ts",{"_index":1175,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["projects/.../use",{"_index":1184,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/ccf",{"_index":6,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["promise",{"_index":89,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["promisifieddorequest",{"_index":292,"title":{},"body":{"classes/RequestCache.html":{}}}],["promisifieddorequest(key",{"_index":309,"title":{},"body":{"classes/RequestCache.html":{}}}],["properties",{"_index":11,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["provided",{"_index":876,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["providers",{"_index":439,"title":{},"body":{"changelog.html":{}}}],["proxied",{"_index":105,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["prune",{"_index":119,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["public",{"_index":799,"title":{},"body":{"changelog.html":{}}}],["publish",{"_index":1121,"title":{},"body":{"license.html":{}}}],["publishing",{"_index":365,"title":{},"body":{"changelog.html":{}}}],["purpose",{"_index":1144,"title":{},"body":{"license.html":{}}}],["pushed",{"_index":607,"title":{},"body":{"changelog.html":{}}}],["python",{"_index":362,"title":{},"body":{"changelog.html":{}}}],["qs",{"_index":25,"title":{},"body":{"interfaces/AppOptions.html":{},"dependencies.html":{}}}],["qs.parse(str",{"_index":47,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["qtoken",{"_index":159,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["qualitative",{"_index":775,"title":{},"body":{"changelog.html":{}}}],["quality",{"_index":441,"title":{},"body":{"changelog.html":{}}}],["queries",{"_index":1008,"title":{},"body":{"dependencies.html":{}}}],["query",{"_index":136,"title":{},"body":{"interfaces/CacheOptions.html":{},"changelog.html":{}}}],["query.ts",{"_index":921,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["queryparameterstofilter",{"_index":931,"title":{},"body":{"coverage.html":{}}}],["quickly",{"_index":754,"title":{},"body":{"changelog.html":{}}}],["r.dispose",{"_index":190,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["r.json",{"_index":246,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["range",{"_index":276,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rawtoken",{"_index":283,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["rc.1",{"_index":781,"title":{},"body":{"changelog.html":{}}}],["rdf",{"_index":1046,"title":{},"body":{"dependencies.html":{}}}],["rdfjs/data",{"_index":991,"title":{},"body":{"dependencies.html":{}}}],["rdfxml",{"_index":1047,"title":{},"body":{"dependencies.html":{}}}],["readable",{"_index":1049,"title":{},"body":{"dependencies.html":{}}}],["readfilesync",{"_index":204,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["readfilesync(source",{"_index":238,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["readonly",{"_index":311,"title":{},"body":{"classes/RequestCache.html":{}}}],["readonlyproperties",{"_index":949,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["real",{"_index":797,"title":{},"body":{"changelog.html":{}}}],["rectify",{"_index":413,"title":{},"body":{"changelog.html":{}}}],["reduce",{"_index":597,"title":{},"body":{"changelog.html":{}}}],["reference",{"_index":357,"title":{},"body":{"changelog.html":{}}}],["refernced",{"_index":465,"title":{},"body":{"changelog.html":{}}}],["refresh",{"_index":559,"title":{},"body":{"changelog.html":{}}}],["regions",{"_index":863,"title":{},"body":{"changelog.html":{}}}],["register",{"_index":1011,"title":{},"body":{"dependencies.html":{}}}],["registered",{"_index":408,"title":{},"body":{"changelog.html":{}}}],["registration",{"_index":451,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["registrations",{"_index":583,"title":{},"body":{"changelog.html":{}}}],["related",{"_index":636,"title":{},"body":{"changelog.html":{}}}],["release",{"_index":402,"title":{},"body":{"changelog.html":{}}}],["releaseproxy",{"_index":81,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["reliability",{"_index":688,"title":{},"body":{"changelog.html":{}}}],["reloads",{"_index":527,"title":{},"body":{"changelog.html":{}}}],["removed",{"_index":499,"title":{},"body":{"changelog.html":{}}}],["removes",{"_index":635,"title":{},"body":{"changelog.html":{}}}],["repository",{"_index":1065,"title":{},"body":{"index.html":{}}}],["req",{"_index":133,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["req))?.then((instance",{"_index":195,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["req.app.get('database",{"_index":282,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["req.query.token",{"_index":160,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["req['getdatabase",{"_index":193,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["request",{"_index":153,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"classes/RequestCache.html":{}}}],["requestcache",{"_index":156,"title":{"classes/RequestCache.html":{}},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"coverage.html":{}}}],["requesthandler",{"_index":116,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["required",{"_index":742,"title":{},"body":{"changelog.html":{}}}],["res",{"_index":134,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["res.json",{"_index":147,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["res.json(cachedresponse",{"_index":145,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["res.json(result",{"_index":285,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["res.send",{"_index":1189,"title":{},"body":{"miscellaneous/variables.html":{}}}],["res.sendfile(apifile",{"_index":1193,"title":{},"body":{"miscellaneous/variables.html":{}}}],["reset",{"_index":1220,"title":{},"body":{"miscellaneous/variables.html":{}}}],["resets",{"_index":561,"title":{},"body":{"changelog.html":{}}}],["resolve('ccf",{"_index":1191,"title":{},"body":{"miscellaneous/variables.html":{}}}],["resolved",{"_index":613,"title":{},"body":{"changelog.html":{}}}],["respond",{"_index":552,"title":{},"body":{"changelog.html":{}}}],["response",{"_index":213,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["response.filter(entry",{"_index":248,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["restriction",{"_index":1116,"title":{},"body":{"license.html":{}}}],["result",{"_index":70,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["result.ts",{"_index":936,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["results",{"_index":72,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["resultslist.find(entry",{"_index":262,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["resultslist.indexof(matchingentry",{"_index":266,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["resultslist[index].label",{"_index":270,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["resultslist[index].sex",{"_index":279,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["return",{"_index":46,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"miscellaneous/variables.html":{}}}],["returns",{"_index":306,"title":{},"body":{"classes/RequestCache.html":{}}}],["rforeach",{"_index":1219,"title":{},"body":{"miscellaneous/variables.html":{}}}],["rgb",{"_index":1026,"title":{},"body":{"dependencies.html":{}}}],["right",{"_index":801,"title":{},"body":{"changelog.html":{}}}],["rights",{"_index":1118,"title":{},"body":{"license.html":{}}}],["rnaseqsamplesummary",{"_index":201,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["root",{"_index":569,"title":{},"body":{"changelog.html":{}}}],["rotates",{"_index":529,"title":{},"body":{"changelog.html":{}}}],["round",{"_index":671,"title":{},"body":{"changelog.html":{}}}],["rounded",{"_index":692,"title":{},"body":{"changelog.html":{}}}],["router",{"_index":1194,"title":{},"body":{"miscellaneous/variables.html":{}}}],["routes",{"_index":30,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["routes/browser",{"_index":32,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["routes/v1",{"_index":34,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ru/common",{"_index":953,"title":{},"body":{"dependencies.html":{}}}],["rui",{"_index":348,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["rui_locations.jsonld",{"_index":342,"title":{},"body":{"changelog.html":{}}}],["ruilocations",{"_index":280,"title":{},"body":{"interfaces/GtexTissue.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rxjs",{"_index":1052,"title":{},"body":{"dependencies.html":{}}}],["s",{"_index":182,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["s.endswith('hubmap/rui_locations.jsonld",{"_index":183,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["safe",{"_index":103,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["sample",{"_index":875,"title":{},"body":{"changelog.html":{}}}],["samples",{"_index":599,"title":{},"body":{"changelog.html":{}}}],["saver",{"_index":1016,"title":{},"body":{"dependencies.html":{}}}],["scaffolding",{"_index":823,"title":{},"body":{"changelog.html":{}}}],["scene",{"_index":428,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["scene.ts",{"_index":917,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["scheduled",{"_index":614,"title":{},"body":{"changelog.html":{}}}],["schema",{"_index":827,"title":{},"body":{"changelog.html":{}}}],["schemes",{"_index":776,"title":{},"body":{"changelog.html":{}}}],["science",{"_index":1093,"title":{},"body":{"index.html":{}}}],["script",{"_index":57,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["search",{"_index":337,"title":{},"body":{"changelog.html":{}}}],["section",{"_index":584,"title":{},"body":{"changelog.html":{}}}],["security.html",{"_index":52,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["see",{"_index":491,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["select",{"_index":498,"title":{},"body":{"changelog.html":{}}}],["selected",{"_index":455,"title":{},"body":{"changelog.html":{}}}],["selecting",{"_index":352,"title":{},"body":{"changelog.html":{}}}],["selector",{"_index":350,"title":{},"body":{"changelog.html":{}}}],["selects",{"_index":844,"title":{},"body":{"changelog.html":{}}}],["selecttoken",{"_index":902,"title":{},"body":{"coverage.html":{}}}],["selecttoken(token",{"_index":158,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["self",{"_index":59,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["sell",{"_index":1125,"title":{},"body":{"license.html":{}}}],["semantic",{"_index":859,"title":{},"body":{"changelog.html":{}}}],["sennet",{"_index":376,"title":{},"body":{"changelog.html":{}}}],["server",{"_index":830,"title":{},"body":{"changelog.html":{}}}],["set",{"_index":510,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["setifdefined",{"_index":932,"title":{},"body":{"coverage.html":{}}}],["setup",{"_index":580,"title":{},"body":{"changelog.html":{}}}],["sex",{"_index":259,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["sexes",{"_index":728,"title":{},"body":{"changelog.html":{}}}],["sexstats",{"_index":267,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["sexstats.agemax",{"_index":278,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["sexstats.agemean",{"_index":275,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["sexstats.agemin",{"_index":277,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["sex}s",{"_index":271,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["shall",{"_index":1133,"title":{},"body":{"license.html":{}}}],["shared",{"_index":520,"title":{},"body":{"changelog.html":{}}}],["shortest",{"_index":1021,"title":{},"body":{"dependencies.html":{}}}],["show",{"_index":555,"title":{},"body":{"changelog.html":{}}}],["showing",{"_index":761,"title":{},"body":{"changelog.html":{}}}],["shown",{"_index":770,"title":{},"body":{"changelog.html":{}}}],["shows",{"_index":444,"title":{},"body":{"changelog.html":{}}}],["side",{"_index":755,"title":{},"body":{"changelog.html":{}}}],["sides",{"_index":730,"title":{},"body":{"changelog.html":{}}}],["significant",{"_index":564,"title":{},"body":{"changelog.html":{}}}],["simple",{"_index":478,"title":{},"body":{"changelog.html":{}}}],["simplifies",{"_index":578,"title":{},"body":{"changelog.html":{}}}],["sites",{"_index":453,"title":{},"body":{"changelog.html":{}}}],["sizable",{"_index":686,"title":{},"body":{"changelog.html":{}}}],["slider",{"_index":1038,"title":{},"body":{"dependencies.html":{}}}],["slightly",{"_index":411,"title":{},"body":{"changelog.html":{}}}],["slow",{"_index":594,"title":{},"body":{"changelog.html":{}}}],["software",{"_index":1070,"title":{},"body":{"index.html":{},"license.html":{}}}],["solved",{"_index":680,"title":{},"body":{"changelog.html":{}}}],["sometimes",{"_index":751,"title":{},"body":{"changelog.html":{}}}],["soon",{"_index":369,"title":{},"body":{"changelog.html":{}}}],["sop",{"_index":588,"title":{},"body":{"changelog.html":{}}}],["source",{"_index":4,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["sources",{"_index":506,"title":{},"body":{"changelog.html":{}}}],["sparc",{"_index":582,"title":{},"body":{"changelog.html":{}}}],["spec",{"_index":210,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["spec.yaml",{"_index":1192,"title":{},"body":{"miscellaneous/variables.html":{}}}],["specific",{"_index":436,"title":{},"body":{"changelog.html":{}}}],["speed",{"_index":687,"title":{},"body":{"changelog.html":{}}}],["spinning",{"_index":828,"title":{},"body":{"changelog.html":{}}}],["sprint",{"_index":617,"title":{},"body":{"changelog.html":{}}}],["src",{"_index":58,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["stage",{"_index":658,"title":{},"body":{"changelog.html":{}}}],["staging",{"_index":384,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["standalone",{"_index":675,"title":{},"body":{"changelog.html":{}}}],["standard",{"_index":734,"title":{},"body":{"changelog.html":{}}}],["standards",{"_index":832,"title":{},"body":{"changelog.html":{}}}],["star2",{"_index":1074,"title":{},"body":{"index.html":{}}}],["started",{"_index":318,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{"changelog.html":{}}}],["starts",{"_index":883,"title":{},"body":{"changelog.html":{}}}],["startserver",{"_index":945,"title":{},"body":{"coverage.html":{}}}],["startup",{"_index":576,"title":{},"body":{"changelog.html":{}}}],["statements",{"_index":886,"title":{},"body":{"coverage.html":{}}}],["stay",{"_index":881,"title":{},"body":{"changelog.html":{}}}],["still",{"_index":602,"title":{},"body":{"changelog.html":{}}}],["stories",{"_index":820,"title":{},"body":{"changelog.html":{}}}],["str",{"_index":44,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["stream",{"_index":1050,"title":{},"body":{"dependencies.html":{}}}],["streaming",{"_index":1048,"title":{},"body":{"dependencies.html":{}}}],["string",{"_index":45,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"miscellaneous/variables.html":{}}}],["string).includes(sex",{"_index":265,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["structure",{"_index":631,"title":{},"body":{"changelog.html":{}}}],["structures",{"_index":620,"title":{},"body":{"changelog.html":{}}}],["styles",{"_index":855,"title":{},"body":{"changelog.html":{}}}],["styling",{"_index":474,"title":{},"body":{"changelog.html":{}}}],["subject",{"_index":1130,"title":{},"body":{"license.html":{}}}],["sublicense",{"_index":1123,"title":{},"body":{"license.html":{}}}],["substantial",{"_index":1135,"title":{},"body":{"license.html":{}}}],["support",{"_index":329,"title":{},"body":{"changelog.html":{}}}],["swiper",{"_index":1055,"title":{},"body":{"dependencies.html":{}}}],["switched",{"_index":695,"title":{},"body":{"changelog.html":{}}}],["symbol('indicator",{"_index":1204,"title":{},"body":{"miscellaneous/variables.html":{}}}],["sync",{"_index":530,"title":{},"body":{"changelog.html":{}}}],["s}?token=${hubmaptoken",{"_index":184,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["table",{"_index":952,"title":{},"body":{"coverage.html":{}}}],["tables",{"_index":400,"title":{},"body":{"changelog.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":951,"title":{},"body":{"coverage.html":{}}}],["tagging",{"_index":732,"title":{},"body":{"changelog.html":{}}}],["take",{"_index":433,"title":{},"body":{"changelog.html":{}}}],["technologies",{"_index":852,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["technology",{"_index":663,"title":{},"body":{"changelog.html":{}}}],["telemetry",{"_index":523,"title":{},"body":{"changelog.html":{}}}],["term",{"_index":1240,"title":{},"body":{"miscellaneous/variables.html":{}}}],["test",{"_index":806,"title":{},"body":{"changelog.html":{}}}],["testing",{"_index":741,"title":{},"body":{"changelog.html":{}}}],["theme",{"_index":378,"title":{},"body":{"changelog.html":{}}}],["themes",{"_index":375,"title":{},"body":{"changelog.html":{}}}],["theming",{"_index":372,"title":{},"body":{"changelog.html":{}}}],["this.dorequest(key",{"_index":315,"title":{},"body":{"classes/RequestCache.html":{}}}],["this.handleerrors(key",{"_index":314,"title":{},"body":{"classes/RequestCache.html":{}}}],["this.promisifieddorequest(key",{"_index":313,"title":{},"body":{"classes/RequestCache.html":{}}}],["through",{"_index":753,"title":{},"body":{"changelog.html":{}}}],["throw",{"_index":254,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["throw_if_not_found",{"_index":899,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["throwindicator",{"_index":1180,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["thrown",{"_index":1206,"title":{},"body":{"miscellaneous/variables.html":{}}}],["thumbnails",{"_index":629,"title":{},"body":{"changelog.html":{}}}],["tied",{"_index":633,"title":{},"body":{"changelog.html":{}}}],["tiff",{"_index":763,"title":{},"body":{"changelog.html":{}}}],["tissue",{"_index":250,"title":{},"body":{"interfaces/GtexTissue.html":{},"changelog.html":{}}}],["tissueinfo",{"_index":258,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqsamplesummary.female",{"_index":269,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissueinfo.rnaseqsamplesummary.male",{"_index":268,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tissues",{"_index":409,"title":{},"body":{"changelog.html":{}}}],["tissuesitedetailid",{"_index":202,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tmc",{"_index":871,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["toggle",{"_index":373,"title":{},"body":{"changelog.html":{}}}],["token",{"_index":161,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["tool",{"_index":676,"title":{},"body":{"changelog.html":{}}}],["tort",{"_index":1156,"title":{},"body":{"license.html":{}}}],["totalcount",{"_index":221,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["tracking/telemetry",{"_index":543,"title":{},"body":{"changelog.html":{}}}],["transparency",{"_index":677,"title":{},"body":{"changelog.html":{}}}],["travisci",{"_index":699,"title":{},"body":{"changelog.html":{}}}],["tree",{"_index":825,"title":{},"body":{"changelog.html":{},"miscellaneous/variables.html":{}}}],["true",{"_index":49,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CacheOptions.html":{},"miscellaneous/variables.html":{}}}],["try",{"_index":233,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{}}}],["tryjsonparse",{"_index":946,"title":{},"body":{"coverage.html":{}}}],["ts",{"_index":1057,"title":{},"body":{"dependencies.html":{}}}],["tslib",{"_index":1060,"title":{},"body":{"dependencies.html":{}}}],["tuned",{"_index":882,"title":{},"body":{"changelog.html":{}}}],["turn",{"_index":656,"title":{},"body":{"changelog.html":{}}}],["turned",{"_index":637,"title":{},"body":{"changelog.html":{}}}],["turning",{"_index":634,"title":{},"body":{"changelog.html":{}}}],["tutorial",{"_index":501,"title":{},"body":{"changelog.html":{}}}],["two",{"_index":774,"title":{},"body":{"changelog.html":{}}}],["type",{"_index":15,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["typealiases",{"_index":1166,"title":{"miscellaneous/typealiases.html":{}},"body":{}}],["typeof",{"_index":162,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["types",{"_index":335,"title":{},"body":{"changelog.html":{}}}],["types/lru",{"_index":993,"title":{},"body":{"dependencies.html":{}}}],["typescript",{"_index":167,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"changelog.html":{}}}],["typing",{"_index":840,"title":{},"body":{"changelog.html":{}}}],["ufl",{"_index":628,"title":{},"body":{"changelog.html":{}}}],["ui",{"_index":423,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["ui.netlify.app",{"_index":1077,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/organ",{"_index":1087,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/rui",{"_index":1084,"title":{},"body":{"index.html":{}}}],["ui/organ",{"_index":1086,"title":{},"body":{"index.html":{}}}],["ui/rui",{"_index":1085,"title":{},"body":{"index.html":{}}}],["undefined",{"_index":127,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"miscellaneous/variables.html":{}}}],["university",{"_index":1096,"title":{},"body":{"index.html":{}}}],["unknown",{"_index":109,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/CacheOptions.html":{},"classes/RequestCache.html":{}}}],["unnecessary",{"_index":526,"title":{},"body":{"changelog.html":{}}}],["unsafe",{"_index":60,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["unselect",{"_index":596,"title":{},"body":{"changelog.html":{}}}],["until",{"_index":641,"title":{},"body":{"changelog.html":{}}}],["up",{"_index":662,"title":{},"body":{"changelog.html":{}}}],["update",{"_index":515,"title":{},"body":{"changelog.html":{}}}],["updated",{"_index":457,"title":{},"body":{"changelog.html":{}}}],["updateentry",{"_index":912,"title":{},"body":{"coverage.html":{}}}],["updateentry(results",{"_index":251,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["updateentry(resultslist",{"_index":257,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["updates",{"_index":493,"title":{},"body":{"changelog.html":{}}}],["upgraded",{"_index":759,"title":{},"body":{"changelog.html":{}}}],["upgrades",{"_index":846,"title":{},"body":{"changelog.html":{}}}],["upgrading",{"_index":549,"title":{},"body":{"changelog.html":{}}}],["upload",{"_index":672,"title":{},"body":{"changelog.html":{}}}],["url",{"_index":138,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/GtexTissue.html":{}}}],["urlencoded",{"_index":19,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["use",{"_index":174,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{},"changelog.html":{},"license.html":{}}}],["use('/gtex",{"_index":1229,"title":{},"body":{"miscellaneous/variables.html":{}}}],["use('/hubmap",{"_index":1227,"title":{},"body":{"miscellaneous/variables.html":{}}}],["use(cacheresponses",{"_index":1226,"title":{},"body":{"miscellaneous/variables.html":{}}}],["use(checkroutesenabled",{"_index":1200,"title":{},"body":{"miscellaneous/variables.html":{}}}],["usecache",{"_index":139,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["usecachedresult",{"_index":937,"title":{},"body":{"coverage.html":{}}}],["usecachedresult('cell",{"_index":1248,"title":{},"body":{"miscellaneous/variables.html":{}}}],["usecachedresult('ontology",{"_index":1245,"title":{},"body":{"miscellaneous/variables.html":{}}}],["usecachedresult('reference",{"_index":1251,"title":{},"body":{"miscellaneous/variables.html":{}}}],["used",{"_index":106,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"changelog.html":{}}}],["usedefaults",{"_index":55,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["user",{"_index":323,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["user/os",{"_index":513,"title":{},"body":{"changelog.html":{}}}],["users",{"_index":866,"title":{},"body":{"changelog.html":{}}}],["uses",{"_index":533,"title":{},"body":{"changelog.html":{}}}],["using",{"_index":481,"title":{},"body":{"changelog.html":{}}}],["utf",{"_index":240,"title":{},"body":{"interfaces/GtexTissue.html":{}}}],["utilities",{"_index":521,"title":{},"body":{"changelog.html":{}}}],["utils/auto",{"_index":118,"title":{},"body":{"interfaces/CacheOptions.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["utils/ccf",{"_index":155,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["utils/request",{"_index":157,"title":{},"body":{"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{},"interfaces/GtexTissue.html":{}}}],["uuid",{"_index":1061,"title":{},"body":{"dependencies.html":{}}}],["v",{"_index":312,"title":{},"body":{"classes/RequestCache.html":{}}}],["v1.1",{"_index":401,"title":{},"body":{"changelog.html":{}}}],["v1.5.0",{"_index":655,"title":{},"body":{"changelog.html":{}}}],["v1.7",{"_index":404,"title":{},"body":{"changelog.html":{}}}],["v1.7.0",{"_index":393,"title":{},"body":{"changelog.html":{}}}],["v1.8.0",{"_index":332,"title":{},"body":{"changelog.html":{}}}],["v1routes",{"_index":33,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["value",{"_index":126,"title":{},"body":{"interfaces/CacheOptions.html":{},"miscellaneous/variables.html":{}}}],["values",{"_index":1217,"title":{},"body":{"miscellaneous/variables.html":{}}}],["value}`.tolowercase",{"_index":128,"title":{},"body":{"interfaces/CacheOptions.html":{}}}],["variable",{"_index":897,"title":{},"body":{"coverage.html":{}}}],["variables",{"_index":1182,"title":{"miscellaneous/variables.html":{}},"body":{"miscellaneous/variables.html":{}}}],["version",{"_index":419,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["very",{"_index":748,"title":{},"body":{"changelog.html":{}}}],["via",{"_index":107,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"changelog.html":{}}}],["video",{"_index":550,"title":{},"body":{"changelog.html":{}}}],["view",{"_index":532,"title":{},"body":{"changelog.html":{}}}],["viewer",{"_index":622,"title":{},"body":{"changelog.html":{}}}],["views",{"_index":535,"title":{},"body":{"changelog.html":{}}}],["visual",{"_index":878,"title":{},"body":{"changelog.html":{}}}],["visualization",{"_index":585,"title":{},"body":{"changelog.html":{}}}],["vitessce",{"_index":760,"title":{},"body":{"changelog.html":{}}}],["void",{"_index":260,"title":{},"body":{"interfaces/GtexTissue.html":{},"classes/RequestCache.html":{}}}],["vs",{"_index":495,"title":{},"body":{"changelog.html":{}}}],["vu",{"_index":877,"title":{},"body":{"changelog.html":{}}}],["warning",{"_index":784,"title":{},"body":{"changelog.html":{}}}],["warranties",{"_index":1140,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":1137,"title":{},"body":{"license.html":{}}}],["web",{"_index":424,"title":{},"body":{"changelog.html":{}}}],["webcomponent",{"_index":494,"title":{},"body":{"changelog.html":{}}}],["webcomponents/webcomponentsjs",{"_index":995,"title":{},"body":{"dependencies.html":{}}}],["webpages",{"_index":430,"title":{},"body":{"changelog.html":{}}}],["website",{"_index":1072,"title":{},"body":{"index.html":{}}}],["week",{"_index":884,"title":{},"body":{"changelog.html":{}}}],["whether",{"_index":1153,"title":{},"body":{"license.html":{}}}],["whole",{"_index":880,"title":{},"body":{"changelog.html":{}}}],["width",{"_index":554,"title":{},"body":{"changelog.html":{}}}],["within",{"_index":626,"title":{},"body":{"changelog.html":{}}}],["without",{"_index":449,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["worker",{"_index":87,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"interfaces/DatabaseCacheOptions.html":{},"interfaces/DatabaseLoaderOptions.html":{}}}],["worker('./projects/ccf",{"_index":93,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["worker.terminate",{"_index":101,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["worker.ts",{"_index":76,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{},"coverage.html":{}}}],["worker_threads",{"_index":88,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["workerdata",{"_index":96,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["workflows",{"_index":701,"title":{},"body":{"changelog.html":{}}}],["working",{"_index":412,"title":{},"body":{"changelog.html":{}}}],["works",{"_index":720,"title":{},"body":{"changelog.html":{}}}],["wrap",{"_index":82,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["wrap(nodeendpoint(worker",{"_index":97,"title":{},"body":{"interfaces/CCFDatabaseInstance.html":{}}}],["youtube",{"_index":458,"title":{},"body":{"changelog.html":{}}}],["zone.js",{"_index":1063,"title":{},"body":{"dependencies.html":{}}}]],"pipeline":["stemmer"]}, + "store": {"interfaces/AppOptions.html":{"url":"interfaces/AppOptions.html","title":"interface - AppOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n AppOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/app.ts\n \n\n\n\n \n Extends\n \n \n DatabaseLoaderOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n placeholder\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n placeholder\n \n \n \n \n \n \n \n \n placeholder: never\n\n \n \n\n\n \n \n Type : never\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { json, urlencoded } from 'body-parser';\nimport cors from 'cors';\nimport express, { Express } from 'express';\nimport helmet from 'helmet';\nimport qs, { ParsedQs } from 'qs';\n\nimport { databaseLoader, DatabaseLoaderOptions } from './middleware/database-loader';\nimport { routes as browserRoutes } from './routes/browser';\nimport { routes as v1Routes } from './routes/v1';\n\n\nexport interface AppOptions extends DatabaseLoaderOptions {\n placeholder?: never;\n}\n\n\nexport function createApp(options: AppOptions): Express {\n const app = express();\n\n app.set('database-options', options.database);\n\n app.set('query parser', function (str: string): ParsedQs {\n return qs.parse(str, { allowDots: true });\n });\n\n // http://expressjs.com/en/advanced/best-practice-security.html\n app.use(helmet({\n contentSecurityPolicy: {\n useDefaults: true,\n directives: {\n 'script-src': ['\\'self\\'', '\\'unsafe-eval\\'', 'cdn.jsdelivr.net'],\n 'connect-src': ['*'],\n }\n }\n }));\n app.use(cors());\n\n app.use(urlencoded());\n app.use(json());\n\n app.use(databaseLoader(options));\n\n app.use('/', browserRoutes);\n app.use('/v1', v1Routes);\n\n return app;\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/CCFDatabaseInstance.html":{"url":"interfaces/CCFDatabaseInstance.html","title":"interface - CCFDatabaseInstance","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n CCFDatabaseInstance\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/utils/ccf-database-worker.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n database\n \n \n \n \n dispose\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n database\n \n \n \n \n \n \n \n \n database: CCFDatabase\n\n \n \n\n\n \n \n Type : CCFDatabase\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n dispose\n \n \n \n \n \n \n \n \n dispose: function\n\n \n \n\n\n \n \n Type : function\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabase, CCFDatabaseOptions } from 'ccf-database';\nimport { releaseProxy, wrap } from 'comlink';\nimport nodeEndpoint from 'comlink/dist/umd/node-adapter';\nimport { Worker } from 'worker_threads';\n\n\nexport interface CCFDatabaseInstance {\n database: CCFDatabase;\n dispose: () => Promise;\n}\n\nexport async function createCCFDatabaseWorker(options: CCFDatabaseOptions): Promise {\n const worker = new Worker('./projects/ccf-api/ccf-database.worker.js', { workerData: { options } });\n const database = wrap(nodeEndpoint(worker));\n await database.connect();\n const dispose = async () => {\n database[releaseProxy]();\n await worker.terminate();\n };\n return {\n // NOTE: this is safe as all ccf operations are proxied and used via async/await\n database: database as unknown as CCFDatabase,\n dispose\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/CacheOptions.html":{"url":"interfaces/CacheOptions.html","title":"interface - CacheOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n CacheOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n max\n \n \n \n Optional\n \n maxAge\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n max\n \n \n \n \n \n \n \n \n max: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n maxAge\n \n \n \n \n \n \n \n \n maxAge: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { RequestHandler } from 'express';\nimport { AutoPruneLRUCache } from '../utils/auto-prune-lru-cache';\n\n\nexport interface CacheOptions {\n max?: number;\n maxAge?: number;\n}\n\n\nfunction parseBoolean(value: unknown, defaultValue = false): boolean {\n if (value === undefined) {\n return defaultValue;\n }\n\n return `${value}`.toLowerCase() === 'true';\n}\n\n\nexport function cacheResponses(options?: CacheOptions): RequestHandler {\n const cache = new AutoPruneLRUCache({\n max: 100,\n maxAge: 60 * 60 * 1000,\n ...options\n });\n\n return (req, res, next) => {\n const { query, originalUrl, url } = req;\n const useCache = parseBoolean(query.cache, true);\n const key = `__${ originalUrl || url }`;\n const cachedResponse = cache.get(key);\n\n if (!useCache) {\n next();\n } else if (cachedResponse !== undefined) {\n res.json(cachedResponse);\n } else {\n const originalSend = res.json;\n res.json = body => {\n cache.set(key, body);\n return originalSend.call(res, body);\n };\n\n next();\n }\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DatabaseCacheOptions.html":{"url":"interfaces/DatabaseCacheOptions.html","title":"interface - DatabaseCacheOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DatabaseCacheOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n max\n \n \n \n Optional\n \n maxAge\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n max\n \n \n \n \n \n \n \n \n max: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n maxAge\n \n \n \n \n \n \n \n \n maxAge: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabaseOptions } from 'ccf-database';\nimport { Request, RequestHandler } from 'express';\n\nimport { AutoPruneLRUCache } from '../utils/auto-prune-lru-cache';\nimport { CCFDatabaseInstance, createCCFDatabaseWorker } from '../utils/ccf-database-worker';\nimport { RequestCache } from '../utils/request-cache';\n\n\nexport interface DatabaseCacheOptions {\n max?: number;\n maxAge?: number;\n}\n\nexport interface DatabaseLoaderOptions {\n database: CCFDatabaseOptions;\n cache?: DatabaseCacheOptions;\n}\n\n\nfunction selectToken(token: string | undefined, req: Request): string {\n const qtoken = req.query.token;\n\n if (token) {\n return token;\n } else if (typeof qtoken === 'string' && qtoken) {\n return qtoken;\n }\n\n return '';\n}\n\nfunction createDatabase(token: string, options: CCFDatabaseOptions): Promise {\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const hubmapToken = token || options.hubmapToken || undefined;\n\n return createCCFDatabaseWorker({\n ...options,\n hubmapDataUrl: '', // Do not use deprecated internal hubmap data loading\n dataSources: options.dataSources.map(s =>\n hubmapToken && typeof s === 'string' && s.endsWith('hubmap/rui_locations.jsonld') ? `${s}?token=${hubmapToken}` : s\n )\n });\n}\n\nexport function databaseLoader(options: DatabaseLoaderOptions): RequestHandler {\n const cache = new RequestCache(\n new AutoPruneLRUCache({\n max: 10,\n maxAge: 60 * 60 * 1000,\n dispose: (_key, instance) => instance.then((r) => r.dispose()),\n ...options.cache\n }),\n token => createDatabase(token, options.database)\n );\n\n return (req, _res, next) => {\n req['getDatabase'] = (token?: string) => cache.get(selectToken(token, req))?.then((instance) => instance.database);\n next();\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DatabaseLoaderOptions.html":{"url":"interfaces/DatabaseLoaderOptions.html","title":"interface - DatabaseLoaderOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DatabaseLoaderOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n cache\n \n \n \n \n database\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n cache\n \n \n \n \n \n \n \n \n cache: DatabaseCacheOptions\n\n \n \n\n\n \n \n Type : DatabaseCacheOptions\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n database\n \n \n \n \n \n \n \n \n database: CCFDatabaseOptions\n\n \n \n\n\n \n \n Type : CCFDatabaseOptions\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabaseOptions } from 'ccf-database';\nimport { Request, RequestHandler } from 'express';\n\nimport { AutoPruneLRUCache } from '../utils/auto-prune-lru-cache';\nimport { CCFDatabaseInstance, createCCFDatabaseWorker } from '../utils/ccf-database-worker';\nimport { RequestCache } from '../utils/request-cache';\n\n\nexport interface DatabaseCacheOptions {\n max?: number;\n maxAge?: number;\n}\n\nexport interface DatabaseLoaderOptions {\n database: CCFDatabaseOptions;\n cache?: DatabaseCacheOptions;\n}\n\n\nfunction selectToken(token: string | undefined, req: Request): string {\n const qtoken = req.query.token;\n\n if (token) {\n return token;\n } else if (typeof qtoken === 'string' && qtoken) {\n return qtoken;\n }\n\n return '';\n}\n\nfunction createDatabase(token: string, options: CCFDatabaseOptions): Promise {\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n const hubmapToken = token || options.hubmapToken || undefined;\n\n return createCCFDatabaseWorker({\n ...options,\n hubmapDataUrl: '', // Do not use deprecated internal hubmap data loading\n dataSources: options.dataSources.map(s =>\n hubmapToken && typeof s === 'string' && s.endsWith('hubmap/rui_locations.jsonld') ? `${s}?token=${hubmapToken}` : s\n )\n });\n}\n\nexport function databaseLoader(options: DatabaseLoaderOptions): RequestHandler {\n const cache = new RequestCache(\n new AutoPruneLRUCache({\n max: 10,\n maxAge: 60 * 60 * 1000,\n dispose: (_key, instance) => instance.then((r) => r.dispose()),\n ...options.cache\n }),\n token => createDatabase(token, options.database)\n );\n\n return (req, _res, next) => {\n req['getDatabase'] = (token?: string) => cache.get(selectToken(token, req))?.then((instance) => instance.database);\n next();\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/GtexTissue.html":{"url":"interfaces/GtexTissue.html","title":"interface - GtexTissue","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n GtexTissue\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n mappedInHubmap\n \n \n \n \n rnaSeqSampleSummary\n \n \n \n \n tissueSiteDetailId\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n mappedInHubmap\n \n \n \n \n \n \n \n \n mappedInHubmap: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rnaSeqSampleSummary\n \n \n \n \n \n \n \n \n rnaSeqSampleSummary: literal type\n\n \n \n\n\n \n \n Type : literal type\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueSiteDetailId\n \n \n \n \n \n \n \n \n tissueSiteDetailId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { CCFDatabaseOptions } from 'ccf-database';\nimport { RequestHandler } from 'express';\nimport { readFileSync } from 'fs';\nimport fetch from 'node-fetch';\n\nimport { AutoPruneLRUCache } from '../../../utils/auto-prune-lru-cache';\nimport { RequestCache } from '../../../utils/request-cache';\nimport { JsonLdObj } from 'jsonld/jsonld-spec';\nimport { get } from '../../../environment';\n\nexport interface GtexTissue {\n // NOTE: The API response includes more fields, but we only map the ones we actually use here\n tissueSiteDetailId: string;\n mappedInHubmap: boolean;\n rnaSeqSampleSummary: {\n totalCount: number;\n female: {\n ageMax: number;\n ageMin: number;\n ageMean: number;\n count: number;\n };\n male: {\n ageMax: number;\n ageMin: number;\n ageMean: number;\n count: number;\n };\n };\n}\n\nconst DEFAULT_GTEX_RUI_LOCATIONS = 'projects/ccf-eui/src/assets/gtex/data/rui_locations.jsonld';\nconst GTEX_API_URL = 'https://gtexportal.org/api/v2/tissueSiteDetail';\n\nasync function getLocations(): Promise {\n try {\n const source = get('GTEX_RUI_LOCATIONS', DEFAULT_GTEX_RUI_LOCATIONS);\n // Attempt to load the source url as a local file\n const data = readFileSync(source, { encoding: 'utf-8' });\n const jsonld: JsonLdObj = JSON.parse(data);\n const results = jsonld['@graph'] as JsonLdObj[];\n\n const response: GtexTissue[] = await fetch(GTEX_API_URL).then(r => r.json());\n const mappedEntries = response.filter(entry => entry.mappedInHubmap);\n for (const tissue of mappedEntries) {\n updateEntry(results, tissue, 'Female');\n updateEntry(results, tissue, 'Male');\n }\n\n return jsonld;\n } catch (_error) {\n throw new Error('No data available');\n }\n}\n\nexport function updateEntry(resultsList: JsonLdObj[], tissueInfo: GtexTissue, sex: 'Male' | 'Female'): void {\n const matchingEntry = resultsList.find(entry => entry['@id']?.includes(tissueInfo.tissueSiteDetailId) && (entry.label as string).includes(sex));\n if (matchingEntry) {\n const index = resultsList.indexOf(matchingEntry);\n const sexStats = sex === 'Male' ? tissueInfo.rnaSeqSampleSummary.male : tissueInfo.rnaSeqSampleSummary.female;\n resultsList[index].label = `${sex}s (n=${sexStats.count}) Mean Age ${sexStats.ageMean} (range ${sexStats.ageMin} - ${sexStats.ageMax})`;\n resultsList[index].sex = sex;\n }\n}\n\nexport function ruiLocations(): RequestHandler {\n const cache = new RequestCache(\n new AutoPruneLRUCache({\n max: 10,\n maxAge: 60 * 60 * 1000\n }),\n getLocations\n );\n\n return async (req, res, _next) => {\n const options: CCFDatabaseOptions = req.app.get('database-options');\n const rawToken = req.query.token;\n const token = typeof rawToken === 'string' ? rawToken : '';\n const result = await cache.get(token, options);\n\n res.json(result);\n };\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/RequestCache.html":{"url":"classes/RequestCache.html","title":"class - RequestCache","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n RequestCache\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-api/src/lib/utils/request-cache.ts\n \n\n\n\n\n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n get\n \n \n Private\n Async\n handleErrors\n \n \n Private\n Async\n promisifiedDoRequest\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(cache: LRUCache>, doRequest: (key: K,args: []) => void)\n \n \n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:4\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n cache\n \n \n LRUCache>\n \n \n \n No\n \n \n \n \n doRequest\n \n \n function\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n get\n \n \n \n \n \n \nget(key: K, ...args: [])\n \n \n\n\n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:10\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n K\n \n\n \n No\n \n\n\n \n \n args\n \n []\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n Async\n handleErrors\n \n \n \n \n \n \n \n handleErrors(key: K, request: Promise)\n \n \n\n\n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:27\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n K\n \n\n \n No\n \n\n\n \n \n request\n \n Promise\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n Async\n promisifiedDoRequest\n \n \n \n \n \n \n \n promisifiedDoRequest(key: K, ...args: [])\n \n \n\n\n \n \n Defined in projects/ccf-api/src/lib/utils/request-cache.ts:23\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n K\n \n\n \n No\n \n\n\n \n \n args\n \n []\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Promise\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import LRUCache from 'lru-cache';\n\n\nexport class RequestCache {\n constructor(\n readonly cache: LRUCache>,\n readonly doRequest: (key: K, ...args: unknown[]) => V | Promise\n ) { }\n\n get(key: K, ...args: unknown[]): Promise {\n const { cache } = this;\n let result = cache.get(key);\n\n if (!result) {\n result = this.promisifiedDoRequest(key, ...args);\n cache.set(key, result);\n this.handleErrors(key, result);\n }\n\n return result;\n }\n\n private async promisifiedDoRequest(key: K, ...args: unknown[]): Promise {\n return this.doRequest(key, ...args);\n }\n\n private async handleErrors(key: K, request: Promise): Promise {\n const { cache } = this;\n\n try {\n await request;\n } catch (_error) {\n if (cache.get(key) === request) {\n cache.del(key);\n }\n }\n }\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"changelog.html":{"url":"changelog.html","title":"getting-started - changelog","body":"\n \n\nChangelog\nChangelog for the Common Coordinate Framework (CCF) User Interfaces\n3.1.0 - 2022-04-07\nAdded in 3.1.0\n\nAdded support for the latest CCF Ontology v1.8.0 which adds cell types\nAdded feature to search for tissue blocks by cell type\nAdded API feature to dynamically generate GTEx rui_locations.jsonld\nAdded logging of organ and block position changes to the RUI\nAdded an expanded organ selector that makes selecting organs much easier with the larger number of reference organs we have now\nNow generating programming libraries for the CCF-API in Python, TypeScript, TypeScript (Angular), and JavaScript. We will be publishing them to appropriate package managers soon.\nImproved performance of the CCF-API\nNew theming options and toggle for the CCF EUI/RUI\nAdded new themes for SenNet, GTEx, and a default theme\nAdded compodoc generated code documentation to production and staging builds\nBug fixes and minor improvements\n\n3.0.0 - 2022-01-27\nAdded in 3.0.0\n\nAdded support for the latest CCF Ontology v1.7.0\nBug fixes and code cleanup\n\n3.0.0 BETA - 2021-12-17\nAdded in 3.0.0 BETA\n\nAdded reference organs and ASCT+B tables from the v1.1 CCF Release\nLinks: CCF Ontology v1.7 BETA, CCF Release v1.1\n\n\n\nKnown issues in 3.0.0 BETA\n\nPreviously registered tissues may appear slightly off. We are working to rectify this before making it a production release.\n\n2.5.0 - 2021-12-17\nAdded in 2.5.0\n\nCCF-API OpenAPI Spec and implementation. Next version will connect the EUI to this as it's backend.\nAdded the CCF Body UI Web Component for integrating the 3D scene deeply in webpages (including the HuBMAP data portal).\nThe organ-info Web Component can now take an option to highlight specific blocks in the scene. Currently only highlights by providers, but age, sex, and BMI will be added in the next version.\nBug fixes and Quality of Life improvements\n\n2.4.0 - 2021-12-10\nAdded in 2.4.0\n\nRUI shows a confirmation dialog when a user attempts to leave without finishing registration\nAdded GTEx data to EUI\nRUI Common Extraction Sites are now known as Landmarks\nOrgan info now highlights the block selected on click\nUpdated RUI YouTube Demo link\nBug fixes and Quality of Life improvements\n\n2.3.1 - 2021-09-13\nAdded in 2.3.1\n\nAdded support for paired organs to be refernced by their parent (ala Kidney + Left/Right Kidney)\n\n2.3.0 - 2021-09-10\nAdded in 2.3.0\n\nGreatly improved CCF Database performance. This improves the performance in both organ-info and EUI.\nImproved styling of organ-info\n\n2.2.0 - 2021-09-10\nAdded in 2.2.0\n\nAdded an organ-info web component for displaying reference organs and associated data in a simple panel display. The hubmap portal will be using this soon for organ pages.\nEMBEDDING.md instructions have been updated for organ-info embedding.\n\n2.1.0 - 2021-07-30\nAdded in EUI / RUI 2.1.0\n\nBetter support for embedding EUI/RUI in different containers, see EMBEDDING.md for updated instructions.\nConfiguration updates:\nConfiguration of EUI/RUI via webcomponent properties (vs globalConfig)\nOptional use of ontology id to select reference organs in the RUI\nRemoved embedded and tutorial mode configurations from the RUI config\nAbility to load data sources in the eui via external configuration\nAdded cancelRegistration callback to rui external configuration\n\n\nSet dark/light theme based on user/OS preferences\nUpdate HuBMAP search processing to conform to new field names\nCode cleanup, shared utilities, etc.\nTelemetry dialog box fixes to avoid unnecessary reloads\nRUI gizmo rotates in sync with the reference organ in 3D preview view\nRUI now uses an orthographic view when in registration views\n\n2.0.0 - 2021-07-16\nAdded in EUI / RUI 2.0.0\n\nRUI and EUI are now basic web-components, see EMBEDDING.md\nAdded advanced google analytics tracking/telemetry\nLinked donor card and tissue block hovering\nUpdated dependencies, including upgrading to Angular 12\nMinor UI and Bug fixes\nUpdated demo video links\nOrgan carousel will respond to container width and show only full icons\nEUI: clicking refresh and selecting body on partonomy resets the body view\n\nBreaking changes in EUI / RUI 2.0.0\n\nEmbedding the EUI and RUI must now be done via web-components. The most significant change is the element is no longer called ccf-root but is instead called ccf-eui or ccf-rui depending on the UI being embedded.\n\n1.7.0 - 2021-05-21\nAdded in EUI / RUI 1.7.0\n\nAdded a startup modal to the RUI which simplifies the initial setup for a new registration\nAdded 8 new reference organs, bringing us to 13 Reference Organs!\nAdded SPARC Registrations to the EUI\nAdded a tissue section visualization to the results list in the EUI\n\n1.6.0 - 2021-04-09\nAdded in RUI 1.6.0\n\nAdded SOP information to the About section\n\nAdded in EUI 1.6.0\n\nAdded color assignment/selection to both 3d scene and list results\nBug fixes, code cleanup, and optimization\n\nKnown issues in 1.6.0\n\nThe 3d scene is a little slow. To be able to interact, unselect reference organs to reduce scene complexity.\nTissue samples may be a little off in the 3D scene. This will be fixed in a future release. Data is still accurate.\n\n1.5.0 - 2021-03-26\nAdded in RUI 1.5.0\n\nMinor styling updates\n\nAdded in EUI 1.5.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features not fully integrated. This should be resolved in the next release scheduled for April 9th. You can view the results of this sprint on staging.\n\nUpdated styling to better fit the user interface spec\nAdded a new results pane which structures data into Donor->Tissue Blocks (+Datasets)->Tissue Samples (+Datasets)\nAdded a link viewer that allows us to display donors, samples, and datasets in a frame within the application\nAdded UFL thumbnails\nUpdated and optimized the ccf-database for the new results structure and future integrations\nTied organ carousel to the 3D scene. Turning off an organ removes the organ and related tissues from the 3D scene.\nTurned off anatomical structure opacity adjustment until it can be fully integrated\n\n1.4.0 - 2021-03-12\nAdded in RUI 1.4.0\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec\n\nAdded in EUI 1.4.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features partly integrated. This should be resolved in the next release scheduled for March 26th. You can view the results of this sprint on staging.\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec and match RUI styling\nUpdated the Info Dialog to match the RUI look and feel\nUpdated the data processing to improve efficiency and generate data in the form needed for the v1.5.0 spec\nAdded a reference organ selector, also used in the RUI, to turn off/on reference organs on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\nAdded a technology filter\nAdded a control to set Opacities of individual organs/anatomical structures on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\n\n1.3.5 - 2021-02-26\nAdded in RUI 1.3.5\n\nUpdated with a new round of User Interface improvements\nAdded the ability to upload previous registrations created using the standalone version of the RUI tool\nOrgans now have transparency applied automatically\nSolved a major memory leak and performance issue with the 3D reference organ interface. You should notice a sizable speed and reliability increase.\nRUI location numeric data is now rounded to 3 digits\nSwitched to using GitHub Actions over TravisCI for our CI/CD workflows\n\nAdded in EUI 1.3.5\n\nRemoved CCF's internal image-viewer in favor of the image-viewer on the HuBMAP Data Portal\n\nEUI 1.2.0 / RUI 1.0 FINAL - 2020-10-30\nAdded in EUI 1.2.0 / RUI 1.0 FINAL\n\nBug fixes and improvements\nUpdated embedding API in collaboration with the IEC\nUpdated EUI codebase to be in sync with code changes made for the RUI\nAdded KPMP data to the EUI\n\nKnown Issues in EUI 1.2.0 / RUI 1.0 FINAL\n\nIt is still possible that a 3d organ may fail to load. If this happens, just refresh and try again.\nEUI has not been updated with the latest organ set. This will be added in December with its scheduled refresh.\n\nRUI 1.0 BETA - 2020-10-16\nAdded in RUI 1.0 BETA\n\nCreated the first version of the RUI 1.0. This version is a BETA and works in standalone mode only. The next version will include full support and integration into the HuBMAP Ingestion Portal.\n10 Reference Organs are available to choose from (a combination of 4 organs, 2 sexes, and one organ with 2 sides [kidney])\nImplemented automatic tagging of data via collisions with anatomical structures\nRUI Location data is in standard JSON-LD format linked via the CCF Ontology and related ontologies\nImplemented extraction sites display to help guide placement of tissues\n\nKnown Issues in RUI 1.0 BETA\n\nWhile support for embedding is implemented, more testing and collaboration with IEC is required before it is made fully available. Initial embedding documentation is available here.\nWhen adjusting transparency via the left-hand Anatomical Structures menu or Show Previous Registrations option, the transparency effect is not very good. This will be addressed before the RUI 1.0 production release.\nSometimes the 3d organ fails to load when clicking through reference organs quickly (and other side cases). If this happens, just refresh and try again.\n\n1.1.0 - 2020-07-31\nAdded in 1.1.0\n\nUpgraded to latest Vitessce Image Viewer and started showing processed TIFF images coming directly from the HuBMAP infrastructure\nProcessed CODEX and 10x datasets are shown in the HuBMAP Portal's visualization tool\nAdded a limited set of TIFF image thumbnails, with more to come\nAdded two qualitative color schemes for colorizing images in the image viewer\nBug fixes/performance optimizations\n\n1.0.0-rc.1 - 2020-06-22\n\n:warning: WARNING: This version is a release candidate. Some minor updates will likely happen between now and the official HuBMAP Data Release 1 in July.\n\nAdded in 1.0.0-rc.1\n\nBody UI interactions\nImage Viewer Integration\nPartonomy linkage to search / Body UI\nNow fully integrated into the HuBMAP Portal\n\nKnown Issues in 1.0.0-rc.1\n\nImage Viewer is using a placeholder .tiff until more .tiff images can be loaded from the IEC\n\n1.0.0-alpha.3 - 2019-05-08\nAdded in 1.0.0-alpha.3\n\nHooked up the interface to real data (not shown online as the data is not public yet)\nAdded the Tissue Browser on the right\nAdded the initial (Tissue) Image Viewer popup. Currently shows metadata, but no images yet.\nAdded an initial 3D Body. Tissues cuboids currently not displayed, but a test cuboid is shown.\nDocumentation (>90%) and testing coverage improved further\n\n1.0.0-alpha.2 - 2019-03-27\nAdded in 1.0.0-alpha.2\n\nIncreased documentation and testing coverage across the board\nAdded fullscreen button\nBug fixes and optimizations\n\n1.0.0-alpha.1 - 2019-03-06\nAdded in 1.0.0-alpha.1\n\nStarted the process of implementing the 1.0.0 UI spec\nSpec Doc\nUser Stories\n\n\nSetup the base project scaffolding for the new version\nAdded CCF Partonomy (CCF-P) search and tree display\nAdded a filter for filter tissues\n\n0.6.0 - 2019-11-08\nAdded in 0.6.0\n\nThe CCF API project was started with an initial OpenAPI Schema, documentation, and code for spinning up a mock data server. This codifies the CCF data and metadata standards defined by MC-IU and will be used by the CCF EUI and RUI.\nIn preparation for future developments, we added a hidden, alpha-level 3d organ viewer. You can toggle this on and off in the organ view, by typing 3d with your keyboard.\nUpdated navigation to directly jump to the tissue browser when a user selects an item from the search box\nUpgraded dependencies, including upgrades to Angular 8\nTesting and bug fixes\nMinor UI updates\nChanged download icon color\nChanged the background color for the search\nMoved the Technologies filter above ontology\nAdditional styles for details button\n\n\n\n0.5.0 - 2019-05-24\nAdded in 0.5.0\n\nDisplay of the CCF ontology, integrated with search\nSemantic search by ontology, results are presented at all levels\nTissue overlays showing regions of interest\nData download links to direct users to https://sampledata.hubmapconsortium.org\nData documentation (95% coverage) and testing (85% coverage)\n\n0.2.0 - 2019-05-03\nAdded in 0.2.0\n\nSprint 2 release of the CCF-UI!\nA search interface was added to query data by age, sex, technology and TMC. Ontological search will be implemented in the next sprint.\nBody, Organ, and Tissue views now respond to updates to the search on the fly\nAppropriate metadata is now displayed in the Body, Organ, Tissue, and Cell views\n\n0.1.0 - 2019-04-12\nAdded in 0.1.0\n\nSprint 1 release of the CCF-UI!\nSetup the base project scaffolding\nAdded a sample database that includes initial data provided by VU\nAdded Visual browsing of tissue samples and metadata at the whole body, organ, tissue, and cell level\nStay tuned! More features coming in Sprint 2 (starts next week!) and Sprint 3\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n projects/ccf-api/src/lib/app.ts\n \n interface\n AppOptions\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/ccf-api/src/lib/app.ts\n \n function\n createApp\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n get\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getBoolean\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n getNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n has\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n isDebug\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n parseBoolean\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n function\n parseNumber\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n variable\n env\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n variable\n THROW_IF_NOT_FOUND\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n interface\n DatabaseCacheOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n interface\n DatabaseLoaderOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n function\n createDatabase\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n function\n databaseLoader\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/database-loader.ts\n \n function\n selectToken\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n interface\n CacheOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n function\n cacheResponses\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/middleware/response-cache.ts\n \n function\n parseBoolean\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/polyfills.ts\n \n function\n patchGlobal\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/browser.ts\n \n variable\n browserRoute\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/browser.ts\n \n variable\n openApiRoute\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/browser.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/index.ts\n \n variable\n checkRoutesEnabled\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/index.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n interface\n GtexTissue\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n function\n getLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n function\n ruiLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n function\n updateEntry\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n variable\n DEFAULT_GTEX_RUI_LOCATIONS\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n variable\n GTEX_API_URL\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/index.ts\n \n variable\n checkRoutesEnabled\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/index.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/rui-locations.ts\n \n function\n getLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/hubmap/rui-locations.ts\n \n function\n ruiLocations\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/index.ts\n \n variable\n routes\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/reference-organ-scene.ts\n \n function\n getReferenceOrganSceneHandler\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/reference-organ-scene.ts\n \n function\n parseString\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/forward-database-query.ts\n \n function\n forwardDatabaseQuery\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n clamp\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseArray\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseMinMaxRange\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseRange\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n parseSex\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n processParameter\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n queryParametersToFilter\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n function\n setIfDefined\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n variable\n FILTER_DEFAULTS\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/use-cached-result.ts\n \n function\n useCachedResult\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/use-cached-result.ts\n \n variable\n CACHE_DIR\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n getCacheOptions\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n getDatabaseOptions\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n getPort\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n loadDatabaseSource\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n parseDatabaseSources\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n startServer\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n function\n tryJsonParse\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n variable\n methods\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n variable\n mutableProperties\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n variable\n readonlyProperties\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/ccf-database-worker.ts\n \n interface\n CCFDatabaseInstance\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/ccf-database-worker.ts\n \n function\n createCCFDatabaseWorker\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-api/src/lib/utils/request-cache.ts\n \n class\n RequestCache\n \n 0 %\n (0/5)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @angular-ru/common : ^15.126.1\n \n @angular/animations : ^12.1.1\n \n @angular/cdk : ^12.1.1\n \n @angular/common : ^12.1.1\n \n @angular/compiler : ^12.1.1\n \n @angular/core : ^12.1.1\n \n @angular/elements : ^12.1.1\n \n @angular/forms : ^12.1.1\n \n @angular/material : ^12.1.3\n \n @angular/platform-browser : ^12.1.1\n \n @angular/platform-browser-dynamic : ^12.1.1\n \n @angular/router : ^12.1.1\n \n @angular/youtube-player : ^12.1.1\n \n @deck.gl/core : ^8.5.7\n \n @deck.gl/geo-layers : ^8.5.7\n \n @deck.gl/layers : ^8.5.7\n \n @deck.gl/mesh-layers : ^8.5.7\n \n @loaders.gl/core : ^3.0.12\n \n @loaders.gl/draco : ^3.0.12\n \n @loaders.gl/gltf : ^3.0.12\n \n @luma.gl/core : ^8.5.7\n \n @math.gl/core : ^3.5.5\n \n @ngxs-labs/data : ^6.2.0\n \n @ngxs/logger-plugin : ^3.7.1\n \n @ngxs/storage-plugin : ^3.7.1\n \n @ngxs/store : ^3.7.1\n \n @rdfjs/data-model : ^1.2.0\n \n @types/lru-cache : ^5.1.1\n \n @webcomponents/webcomponentsjs : ^2.5.0\n \n bind-decorator : ^1.0.11\n \n body-parser : ^1.19.0\n \n cannon-es : ^0.18.0\n \n comlink : ^4.3.0\n \n concat : ^1.0.3\n \n cors : ^2.8.5\n \n css-element-queries : ^1.2.3\n \n document-register-element : ^1.7.2\n \n dotenv : ^10.0.0\n \n express : ^4.17.1\n \n file-saver : ^2.0.5\n \n fs-extra : ^10.0.0\n \n graphology : ^0.20.0\n \n graphology-shortest-path : ^1.4.1\n \n helmet : ^4.6.0\n \n hex-rgb : ^5.0.0\n \n idb-keyval : ^6.0.1\n \n jsonld : ^5.2.0\n \n lodash : ^4.17.21\n \n lru-cache : ^6.0.0\n \n n3 : ^1.8.1\n \n ng5-slider : ^1.2.6\n \n ngx-google-analytics : ^11.2.1\n \n ngx-markdown : ^12.0.1\n \n node-fetch : ^2.6.7\n \n qs : ^6.10.2\n \n rdf-literal : ^1.2.0\n \n rdfxml-streaming-parser : ^1.4.0\n \n readable-stream : ^3.6.0\n \n rxjs : ^6.6.7\n \n stream-browserify : ^3.0.0\n \n swiper : ^6.5.1\n \n ts-cacheable : ^1.0.6\n \n tslib : ^2.1.0\n \n uuid : ^8.3.2\n \n zone.js : ~0.11.4\n \n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nCommon Coordinate Framework (CCF) - User Interfaces\n\n\n\n\n\n\n\nThis repository is a monorepo (multiple projects in one repository) containing the software to build the CCF-EUI, CCF-RUI, and CCF-Organ-Info.\nWebsite Links\n\nCCF Exploration User Interface (CCF-EUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app\nProduction: https://portal.hubmapconsortium.org/ccf-eui\nProduction (alt): https://hubmapconsortium.github.io/ccf-ui/\nStaging: https://hubmap-ccf-ui.netlify.app/\nOld Version 0.6.0: https://old--hubmap-ccf-ui.netlify.app\n\n\nCCF Registration User Interface (CCF-RUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app/rui/\nProduction: https://hubmapconsortium.github.io/ccf-ui/rui/\nStaging: https://hubmap-ccf-ui.netlify.app/rui/\n\n\nCCF Organ Info Component (CCF-Organ-Info)\nProduction: https://hubmapconsortium.github.io/ccf-ui/organ-info/\nStaging: https://hubmap-ccf-ui.netlify.app/organ-info/\n\n\n\nBackground and More Information\nFor more information about the Common Coordinate Framework (CCF), see the HuBMAP CCF Portal at https://hubmapconsortium.github.io/ccf/.\nChange Log\nSee the ChangeLog for the latest developments.\nCredits\nThis software is developed by the Cyberinfrastructure for Network Science Center at Indiana University. It is funded by NIH Award OT2OD026671.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\nMIT License\nCopyright (c) 2019 HuBMAP Consortium\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n \n \n \n 1 Class\n \n \n \n \n \n \n \n 6 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/typealiases.html":{"url":"miscellaneous/typealiases.html","title":"miscellaneous-typealiases - typealiases","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Type aliases\n\n\n\n Index\n \n \n \n \n \n \n AnyAutoPruneLRUCache   (projects/.../auto-prune-lru-cache.ts)\n \n \n DatabaseGetter   (projects/.../reference-organ-scene.ts)\n \n \n DatabaseGetter   (projects/.../forward-database-query.ts)\n \n \n DatabaseQueryMethods   (projects/.../forward-database-query.ts)\n \n \n DatabaseSource   (projects/.../server.ts)\n \n \n DatabaseSources   (projects/.../server.ts)\n \n \n GlobalThis   (projects/.../polyfills.ts)\n \n \n PickByType   (projects/.../forward-database-query.ts)\n \n \n ThrowIndicator   (projects/.../environment.ts)\n \n \n \n \n \n \n\n\n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n \n \n \n \n \n AnyAutoPruneLRUCache\n \n \n \n \n AutoPruneLRUCache\n\n \n \n \n \n projects/ccf-api/src/lib/routes/v1/reference-organ-scene.ts\n \n \n \n \n \n \n DatabaseGetter\n \n \n \n \n function\n\n \n \n \n \n projects/ccf-api/src/lib/routes/v1/utils/forward-database-query.ts\n \n \n \n \n \n \n DatabaseGetter\n \n \n \n \n function\n\n \n \n \n \n \n \n \n \n \n DatabaseQueryMethods\n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n PickByType\n \n \n \n \n \n\n \n \n \n \n projects/ccf-api/src/lib/server.ts\n \n \n \n \n \n \n DatabaseSource\n \n \n \n \n \n\n \n \n \n \n \n \n \n \n \n DatabaseSources\n \n \n \n \n \n\n \n \n \n \n projects/ccf-api/src/lib/polyfills.ts\n \n \n \n \n \n \n GlobalThis\n \n \n \n \n \n\n \n \n \n \n projects/ccf-api/src/lib/environment.ts\n \n \n \n \n \n \n ThrowIndicator\n \n \n \n \n \n\n \n \n \n \n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n browserRoute   (projects/.../browser.ts)\n \n \n CACHE_DIR   (projects/.../use-cached-result.ts)\n \n \n checkRoutesEnabled   (projects/.../index.ts)\n \n \n checkRoutesEnabled   (projects/.../index.ts)\n \n \n DEFAULT_GTEX_RUI_LOCATIONS   (projects/.../rui-locations.ts)\n \n \n env   (projects/.../environment.ts)\n \n \n FILTER_DEFAULTS   (projects/.../parse-filter.ts)\n \n \n GTEX_API_URL   (projects/.../rui-locations.ts)\n \n \n methods   (projects/.../auto-prune-lru-cache.ts)\n \n \n mutableProperties   (projects/.../auto-prune-lru-cache.ts)\n \n \n openApiRoute   (projects/.../browser.ts)\n \n \n readonlyProperties   (projects/.../auto-prune-lru-cache.ts)\n \n \n routes   (projects/.../browser.ts)\n \n \n routes   (projects/.../index.ts)\n \n \n routes   (projects/.../index.ts)\n \n \n routes   (projects/.../index.ts)\n \n \n THROW_IF_NOT_FOUND   (projects/.../environment.ts)\n \n \n \n \n \n \n\n\n projects/ccf-api/src/lib/routes/browser.ts\n \n \n \n \n \n \n \n browserRoute\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, res, _next) => {\n\n res.send(`\n\n \n \n \n CCF-API Browser\n\n \n \n \n \n \n \n`);\n\n}\n \n \n\n\n \n \n \n \n \n \n \n \n openApiRoute\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, res, _next) => {\n const apiFile = resolve('ccf-api-spec.yaml');\n res.sendFile(apiFile);\n}\n \n \n\n\n \n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .get('/', browserRoute)\n .get('/ccf-api-spec.yaml', openApiRoute)\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/utils/use-cached-result.ts\n \n \n \n \n \n \n \n CACHE_DIR\n \n \n \n \n \n \n Default value : get('CCF_API_CACHE', 'projects/ccf-api/ccf-cache')\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/gtex/index.ts\n \n \n \n \n \n \n \n checkRoutesEnabled\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, _res, next) => {\n const enabled = env.GTEX_ROUTES === 'true';\n enabled ? next() : next('router');\n}\n \n \n\n\n \n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .use(checkRoutesEnabled)\n .get('/rui_locations.jsonld', ruiLocations())\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/hubmap/index.ts\n \n \n \n \n \n \n \n checkRoutesEnabled\n \n \n \n \n \n \n Type : RequestHandler\n\n \n \n \n \n Default value : (_req, _res, next) => {\n const enabled = env.HUBMAP_ROUTES === 'true';\n enabled ? next() : next('router');\n}\n \n \n\n\n \n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .use(checkRoutesEnabled)\n .get('/rui_locations.jsonld', ruiLocations())\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/gtex/rui-locations.ts\n \n \n \n \n \n \n \n DEFAULT_GTEX_RUI_LOCATIONS\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'projects/ccf-eui/src/assets/gtex/data/rui_locations.jsonld'\n \n \n\n\n \n \n \n \n \n \n \n \n GTEX_API_URL\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'https://gtexportal.org/api/v2/tissueSiteDetail'\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/environment.ts\n \n \n \n \n \n \n \n env\n \n \n \n \n \n \n Default value : (() => {\n config();\n return process.env;\n})()\n \n \n\n\n \n \n \n \n \n \n \n \n THROW_IF_NOT_FOUND\n \n \n \n \n \n \n Default value : Symbol('Indicator that an error should be thrown')\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/utils/parse-filter.ts\n \n \n \n \n \n \n \n FILTER_DEFAULTS\n \n \n \n \n \n \n Type : Partial\n\n \n \n \n \n Default value : {\n sex: 'Both',\n ageRange: undefined,\n bmiRange: undefined,\n tmc: [],\n technologies: [],\n ontologyTerms: [],\n cellTypeTerms: []\n}\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/utils/auto-prune-lru-cache.ts\n \n \n \n \n \n \n \n methods\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n // NOTE: No set method as it is overwritten by AutoPruneLRUCache\n 'has', 'get', 'del', 'peek',\n 'keys', 'values',\n 'forEach', 'rforEach',\n 'prune', 'reset',\n 'dump', 'load'\n]\n \n \n\n\n \n \n \n \n \n \n \n \n mutableProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n 'lengthCalculator', 'allowStale', 'max', 'maxAge'\n]\n \n \n\n\n \n \n \n \n \n \n \n \n readonlyProperties\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n 'length', 'itemCount'\n]\n \n \n\n\n \n \n\n projects/ccf-api/src/lib/routes/v1/index.ts\n \n \n \n \n \n \n \n routes\n \n \n \n \n \n \n Default value : Router()\n .use(cacheResponses())\n .use('/hubmap', hubmapRoutes)\n .use('/gtex', gtexRoutes)\n .get('/tissue-blocks', forwardDatabaseQuery('getTissueBlockResults'))\n .get('/technology-names', forwardDatabaseQuery('getDatasetTechnologyNames'))\n .get('/provider-names', forwardDatabaseQuery('getProviderNames'))\n .get('/aggregate-results', forwardDatabaseQuery('getAggregateResults'))\n .get('/ontology-term-occurences', forwardDatabaseQuery('getOntologyTermOccurences'))\n .get('/cell-type-term-occurences', forwardDatabaseQuery('getCellTypeTermOccurences'))\n .get('/ontology-tree-model', useCachedResult('ontology-tree-model.json'), forwardDatabaseQuery('getOntologyTreeModel'))\n .get('/cell-type-tree-model', useCachedResult('cell-type-tree-model.json'), forwardDatabaseQuery('getCellTypeTreeModel'))\n .get('/reference-organs', useCachedResult('reference-organs.json'), forwardDatabaseQuery('getReferenceOrgans'))\n .get('/scene', forwardDatabaseQuery('getScene'))\n .get('/reference-organ-scene', getReferenceOrganSceneHandler())\n \n \n\n\n \n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}} } diff --git a/docs/ccf-api/miscellaneous/variables.html b/docs/ccf-api/miscellaneous/variables.html index 2ee58689b..be8cd68de 100644 --- a/docs/ccf-api/miscellaneous/variables.html +++ b/docs/ccf-api/miscellaneous/variables.html @@ -391,7 +391,7 @@

diff --git a/docs/ccf-eui/components/AppWebComponent.html b/docs/ccf-eui/components/AppWebComponent.html index aeee14c1b..b16575c18 100644 --- a/docs/ccf-eui/components/AppWebComponent.html +++ b/docs/ccf-eui/components/AppWebComponent.html @@ -634,7 +634,8 @@

parse: { dataSources: parseDataSources, useRemoteApi: BUILTIN_PARSERS.boolean, - header: BUILTIN_PARSERS.boolean + header: BUILTIN_PARSERS.boolean, + loginDisabled: BUILTIN_PARSERS.boolean } }); } diff --git a/docs/ccf-eui/js/search/search_index.js b/docs/ccf-eui/js/search/search_index.js index 5eb446f8b..1f2477334 100644 --- a/docs/ccf-eui/js/search/search_index.js +++ b/docs/ccf-eui/js/search/search_index.js @@ -1,4 +1,4 @@ var COMPODOC_SEARCH_INDEX = { - "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.232,1,2.96]],["body/modules/AppModule.html",[1,6.143,2,1.365,3,1.804,4,3.944,5,3.944,6,3.944,7,2.544,8,0.013,9,2.457,10,5.134,11,5.134,12,4.817,13,5.134,14,5.134,15,5.134,16,5.134,17,5.134,18,1.999,19,1.461,20,1.194,21,0.139,22,0.171,23,0.139,24,0.123,25,4.522,26,2.306,27,5.974,28,2.07,29,1.118,30,6.691,31,1.012,32,4.522,33,0.946,34,1.25,35,0.348,36,4.034,37,3.944,38,1.25,39,3.28,40,3.944,41,4.709,42,3.053,43,4.522,44,3.944,45,5.974,46,4.255,47,1.999,48,0.289,49,3.069,50,2.126,51,5.974,52,3.944,53,3.564,54,4.709,55,3.564,56,5.212,57,3.785,58,2.323,59,5.212,60,3.944,61,5.974,62,5.974,63,5.974,64,5.974,65,0.825,66,1.812,67,4.334,68,4.522,69,4.522,70,4.522,71,3.944,72,3.053,73,4.522,74,4.522,75,2.323,76,4.522,77,4.522,78,4.334,79,4.522,80,4.522,81,3.944,82,3.053,83,3.944,84,4.522,85,3.28,86,4.522,87,4.522,88,2.865,89,3.053,90,4.522,91,2.436,92,4.334,93,3.564,94,3.053,95,2.865,96,3.944,97,3.944,98,0.171,99,0.139,100,1.623,101,2.436,102,0.854,103,0.77,104,5.974,105,4.522,106,3.944,107,4.522,108,3.28,109,0.007,110,0.009,111,0.007]],["title/interfaces/AppOptions.html",[112,0.557,113,3.216]],["body/interfaces/AppOptions.html",[7,0.919,8,0.013,19,0.919,21,0.088,22,0.107,23,0.088,24,0.059,29,1.063,34,1.365,35,0.324,36,2.904,37,2.482,38,1.085,39,2.064,40,2.482,46,3.454,48,0.182,52,2.482,53,2.242,58,2.968,65,1.133,66,1.14,71,2.482,72,1.921,88,1.802,95,4.611,96,4.522,98,0.107,99,0.088,100,1.021,102,1.498,103,0.732,109,0.004,110,0.007,111,0.009,112,0.388,113,3.389,114,0.952,115,2.482,116,1.723,117,4.522,118,0.529,119,0.657,120,1.195,121,4.406,122,4.89,123,5.778,124,4.89,125,1.509,126,0.745,127,1.35,128,1.021,129,2.724,130,0.952,131,2.904,132,3.751,133,2.242,134,4.3,135,3.119,136,1.098,137,2.57,138,2.904,139,2.845,140,5.184,141,2.482,142,1.802,143,3.342,144,2.064,145,0.952,146,1.532,147,1.532,148,2.845,149,1.098,150,4.3,151,2.845,152,2.845,153,2.845,154,1.802,155,1.802,156,4.406,157,2.482,158,2.904,159,2.724,160,2.845,161,2.242,162,2.316,163,2.482,164,2.792,165,2.845,166,1.701,167,2.064,168,2.57,169,2.845,170,1.343,171,2.482,172,1.619,173,2.845,174,2.242,175,1.461,176,1.526,177,2.845,178,2.242,179,1.463,180,2.845,181,1.802,182,0.952,183,1.059,184,2.845,185,1.021,186,2.845,187,1.021,188,1.021,189,2.845,190,1.461,191,1.619,192,2.845,193,0.751,194,3.751,195,2.904,196,1.136,197,2.437,198,4.554,199,2.482,200,2.845,201,3.284,202,2.845,203,4.086,204,2.845,205,1.39,206,2.904,207,2.242,208,3.112,209,2.845,210,1.298,211,2.064,212,3.112,213,2.209,214,2.57,215,2.845,216,1.796,217,2.845,218,2.845,219,0.821,220,2.845,221,2.845,222,2.845,223,2.242,224,2.845,225,2.845,226,1.342,227,2.845,228,1.612,229,1.802,230,2.724,231,0.952,232,2.845,233,2.845,234,2.845,235,2.845,236,2.183,237,2.482,238,3.501,239,4.086,240,2.845,241,2.845,242,2.845,243,2.064,244,2.845,245,2.845,246,2.845,247,2.242,248,2.845,249,1.214,250,0.751,251,1.533,252,1.639,253,0.727,254,2.482,255,2.242,256,1.701,257,4.3,258,2.845,259,0.777,260,2.242,261,1.802,262,2.845,263,2.845,264,2.845,265,2.845,266,2.845,267,2.845,268,2.845,269,2.845,270,2.845,271,2.845,272,2.845,273,2.845,274,2.845,275,2.845,276,3.761,277,2.845,278,1.921,279,2.845,280,2.845,281,2.845,282,2.845,283,2.845,284,2.845,285,2.482,286,2.845,287,2.845,288,2.845,289,2.064,290,2.845,291,1.397,292,2.845,293,2.845,294,2.845,295,1.612,296,2.482,297,2.845,298,2.724,299,4.3,300,4.3,301,1.6,302,5.184,303,2.845,304,2.845,305,4.3,306,2.482,307,1.723,308,2.845,309,2.845,310,2.845,311,5.184,312,2.064,313,1.532,314,1.723,315,0.658,316,2.077,317,2.836,318,3.389,319,5.692,320,4.086,321,1.929,322,4.3,323,2.845,324,2.242,325,2.845,326,2.845,327,2.845,328,2.845,329,2.845,330,2.845,331,4.3,332,2.845,333,2.845,334,1.79,335,2.845,336,2.845,337,2.845,338,2.482,339,2.845,340,2.482,341,1.701,342,1.701,343,2.845,344,2.064,345,2.242,346,2.845,347,2.845,348,2.242,349,2.482,350,1.921,351,2.242,352,1.337,353,1.921,354,1.939,355,2.436,356,2.845,357,1.184,358,3.751,359,3.751,360,5.184,361,4.3,362,4.3,363,6.525,364,4.3,365,6.525,366,5.778,367,2.845,368,2.845,369,0.952,370,1.802,371,1.862,372,2.845,373,4.3,374,1.059,375,2.845,376,4.3,377,2.845,378,2.845,379,2.845,380,2.064,381,2.845,382,2.242,383,2.845,384,2.845,385,2.845,386,4.3,387,1.802,388,2.845,389,2.845,390,2.845,391,2.845,392,1.337,393,2.845,394,1.921,395,2.482,396,2.845,397,2.482,398,2.57,399,2.482,400,2.845,401,2.845]],["title/injectables/AppRootOverlayContainer.html",[36,2.755,402,0.944]],["body/injectables/AppRootOverlayContainer.html",[8,0.013,21,0.16,22,0.196,23,0.16,24,0.163,29,1.616,31,1.73,33,1.496,34,1.651,35,0.27,36,4.416,38,1.749,39,5.725,41,5.638,42,3.513,48,0.332,98,0.196,99,0.16,109,0.008,110,0.01,111,0.008,116,2.62,118,0.531,119,0.999,120,0.854,126,0.698,131,5.329,191,2.234,210,1.571,226,1.126,254,5.704,259,2.232,315,1.203,402,1.513,403,2.554,404,6.885,405,4.538,406,7.152,407,7.152,408,5.189,409,7.504,410,7.504,411,6.539,412,5.202,413,5.202,414,6.539,415,5.202,416,1.244,417,0.95,418,1.164,419,5.202,420,5.202,421,2.802,422,7.152,423,5.202,424,6.539,425,5.202,426,3.109,427,5.202,428,4.1,429,5.202,430,2.445,431,6.539,432,2.802,433,2.802,434,2.672,435,2.252,436,3.109,437,3.296,438,3.296,439,5.202,440,5.202,441,5.202]],["title/components/AppWebComponent.html",[9,1.319,130,0.557]],["body/components/AppWebComponent.html",[7,1.217,8,0.013,9,2.132,21,0.116,22,0.142,23,0.116,24,0.168,31,1.808,35,0.273,38,1.274,48,0.241,65,1.525,66,1.509,89,5.486,95,3.858,98,0.142,99,0.116,103,1.036,109,0.006,110,0.008,111,0.008,116,2.114,118,0.385,119,0.806,120,0.619,121,4.455,122,4.8,124,4.8,125,1.632,126,0.863,127,1.54,128,1.352,129,4.18,130,0.831,138,4.455,154,2.386,155,2.386,170,1.176,172,1.176,176,1.608,179,1.719,182,2.783,187,1.894,188,1.894,196,1.608,216,1.305,219,0.597,226,1.142,231,1.26,247,4.8,252,0.995,253,1.348,261,4.18,392,1.771,416,0.901,417,1.112,418,1.18,442,1.402,443,1.217,444,6.404,445,2.969,446,6.089,447,1.352,448,5.276,449,1.705,450,3.28,451,2.197,452,6.598,453,6.089,454,6.089,455,6.089,456,6.089,457,6.089,458,4.8,459,5.2,460,3.767,461,5.276,462,5.276,463,3.767,464,3.767,465,3.767,466,3.767,467,3.767,468,3.767,469,3.767,470,3.767,471,3.767,472,3.767,473,3.767,474,3.767,475,3.767,476,3.22,477,3.767,478,3.767,479,3.767,480,3.286,481,2.535,482,3.767,483,6.946,484,3.827,485,3.767,486,3.767,487,3.767,488,4.602,489,3.767,490,3.767,491,3.767,492,2.969,493,3.767,494,2.386,495,3.767,496,3.767,497,2.733,498,3.767,499,3.767,500,3.767,501,3.767,502,3.767,503,2.969,504,5.276,505,1.402,506,1.705,507,1.705,508,1.402,509,2.455,510,1.402,511,1.402,512,1.402,513,1.217,514,1.402,515,1.217,516,1.402,517,1.217,518,1.963,519,1.217,520,1.26,521,1.402,522,1.402,523,1.217,524,1.402,525,1.217,526,1.352,527,1.402,528,1.217,529,1.705,530,1.402,531,1.217,532,1.402,533,1.217,534,1.402,535,1.217,536,1.402,537,1.26,538,1.402,539,1.217,540,1.402,541,1.217,542,1.402,543,1.217,544,1.352,545,1.402,546,1.217,547,1.217,548,1.217,549,1.402,550,1.217,551,1.1,552,1.402,553,1.217,554,1.402,555,1.402]],["title/components/CheckboxComponent.html",[130,0.557,513,1.319]],["body/components/CheckboxComponent.html",[7,1.114,8,0.013,9,1.114,21,0.106,22,0.13,23,0.106,24,0.152,29,1.224,31,1.612,33,0.721,34,1.036,35,0.24,38,0.721,48,0.22,65,1.505,98,0.13,99,0.106,101,1.857,102,0.936,103,0.587,109,0.005,110,0.008,111,0.008,118,0.352,120,0.814,125,1.072,126,0.769,127,1.37,128,1.237,130,0.983,158,4.977,170,1.077,172,1.077,176,1.308,179,1.637,182,2.759,183,1.843,185,1.778,187,1.778,188,1.778,193,1.308,196,1.532,197,3.465,205,1.601,213,2.545,216,1.194,219,0.546,228,2.806,229,3.138,231,1.153,249,1.79,250,1.308,251,1.433,253,0.881,298,3.138,301,1.283,307,2.802,314,2.324,315,1.146,321,1.283,348,3.905,352,2.98,369,1.153,370,3.138,380,3.594,416,1.184,417,1.157,418,1.418,442,1.283,443,1.114,447,1.237,449,1.114,451,2.062,476,2.691,505,1.283,506,1.601,507,1.601,508,1.283,509,2.359,510,1.283,511,1.283,512,1.283,513,2.049,514,1.283,515,1.114,516,1.283,517,1.114,518,1.843,519,1.114,520,1.153,521,1.283,522,1.283,523,1.114,524,1.283,525,1.114,526,1.237,527,1.283,528,1.114,529,1.601,530,1.283,531,1.114,532,1.283,533,1.114,534,1.283,535,1.114,536,1.283,537,1.153,538,1.283,539,1.114,540,1.283,541,1.114,542,1.283,543,1.114,544,1.237,545,1.283,546,1.114,547,1.114,548,1.114,549,1.283,550,1.114,551,1.006,552,1.283,553,1.114,554,1.283,555,1.283,556,1.237,557,3.007,558,1.134,559,4.954,560,4.954,561,6.992,562,2.545,563,4.954,564,6.999,565,5.799,566,4.954,567,4.954,568,6.716,569,3.591,570,2.329,571,4.571,572,2.328,573,3.79,574,4.954,575,3.466,576,3.124,577,1.224,578,1.583,579,3.905,580,3.447,581,3.447,582,4.954,583,3.905,584,4.954,585,4.954,586,3.447,587,3.905,588,4.997,589,3.905,590,3.447,591,6.646,592,3.905,593,6.34,594,2.615,595,4.321,596,2.961,597,3.594,598,4.954,599,6.34,600,5.386,601,3.447,602,3.594,603,3.345,604,4.954,605,4.321,606,4.281,607,2.858,608,3.594,609,4.954,610,4.954,611,2.233,612,2.717,613,1.953,614,1.857,615,3.447,616,4.571,617,3.447,618,4.954,619,3.447,620,3.447,621,3.007,622,2.184,623,2.06,624,3.124,625,3.447,626,3.007,627,3.447,628,2.5,629,3.447,630,3.007,631,2.328,632,3.447,633,2.145,634,1.843,635,1.692,636,1.77,637,2.5,638,2.06,639,2.06,640,2.5,641,2.615,642,2.06,643,2.717,644,4.954,645,3.447,646,1.601,647,3.007,648,3.447,649,3.007,650,3.447]],["title/modules/CheckboxModule.html",[0,1.232,651,2.755]],["body/modules/CheckboxModule.html",[2,1.827,3,2.166,8,0.013,18,2.4,19,1.956,20,1.599,21,0.186,22,0.229,23,0.186,24,0.125,26,2.769,28,2.097,35,0.327,47,2.4,48,0.387,98,0.229,99,0.186,109,0.009,110,0.011,111,0.009,513,2.741,612,4.771,651,5.582,652,5.28,653,5.28,654,5.28,655,6.053,656,2.669,657,2.874,658,2.252,659,6.257,660,6.053]],["title/interfaces/Color.html",[112,0.557,301,1.518]],["body/interfaces/Color.html",[8,0.013,21,0.13,22,0.16,23,0.13,24,0.088,34,0.887,35,0.321,48,0.271,98,0.262,99,0.13,102,1.311,103,1.181,109,0.006,110,0.009,111,0.006,112,0.781,114,1.419,116,1.699,118,0.433,119,0.874,126,0.691,127,1.393,145,1.419,147,2.284,149,1.637,175,2.178,191,1.324,214,3.421,219,0.672,226,1.567,236,2.168,259,1.158,301,3.116,334,1.12,357,1.765,371,1.836,374,1.578,402,1.324,417,0.774,578,2.243,661,2.863,662,2.178,663,2.863,664,4.751,665,5.415,666,4.104,667,3.076,668,3.328,669,1.637,670,2.94,671,2.69,672,2.178,673,3.421,674,2.178,675,1.993,676,3.342,677,3.076,678,3.076,679,2.94,680,3.873,681,2.863,682,3.076,683,3.076,684,3.076,685,3.076,686,3.076,687,3.076,688,3.076,689,3.076,690,3.076,691,3.076,692,3.076,693,3.076,694,2.863,695,3.076,696,2.686,697,3.076,698,2.863,699,4.511,700,6.198,701,4.793,702,2.534,703,6.32,704,4.684,705,3.342,706,2.534,707,2.402,708,4.511,709,2.082,710,4.511,711,3.342,712,3.342,713,3.342,714,3.342,715,5.107,716,5.107,717,3.342,718,3.342,719,4.511,720,3.342,721,3.342,722,3.342,723,3.342,724,3.342,725,3.342,726,3.342,727,3.342,728,3.342,729,3.865,730,3.342,731,4.511,732,4.511,733,4.511,734,4.511,735,3.421,736,3.342,737,3.342,738,3.342,739,3.342]],["title/injectables/ColorAssignmentState.html",[402,0.944,709,2.003]],["body/injectables/ColorAssignmentState.html",[8,0.013,21,0.118,22,0.144,23,0.118,24,0.156,29,1.318,31,1.661,33,1.285,34,1.116,35,0.313,48,0.244,98,0.251,99,0.118,102,1.501,103,1.13,109,0.006,110,0.008,111,0.006,112,0.728,116,2.137,118,0.391,119,0.815,120,1.008,126,0.655,127,1.437,145,1.28,147,2.06,149,1.476,175,1.965,191,1.666,214,3.188,219,0.845,226,1.511,236,2.222,259,1.676,301,3.055,315,1.616,334,1.01,357,2.22,371,1.656,374,1.423,402,1.233,403,1.878,416,1.468,417,1.212,418,1.563,558,0.748,578,1.907,661,5.113,662,3.889,663,2.583,664,4.437,665,4.454,666,4.425,667,2.775,668,3.588,669,1.476,670,2.739,671,2.507,672,1.965,673,3.67,674,1.965,675,1.798,676,3.015,677,2.775,678,2.775,679,3.154,680,4.175,681,2.583,682,2.775,683,2.775,684,2.775,685,2.775,686,2.775,687,2.775,688,2.775,689,2.775,690,2.775,691,2.775,692,2.775,693,2.775,694,2.583,695,2.775,696,2.423,697,2.775,698,2.583,699,4.203,700,6.062,701,4.783,702,2.286,703,6.307,704,5.012,705,4.203,706,2.286,707,2.167,708,4.203,709,2.618,710,5.702,711,4.203,712,4.203,713,4.203,714,4.203,715,4.839,716,4.839,717,3.015,718,3.015,719,5.235,720,3.015,721,3.015,722,3.015,723,3.015,724,3.015,725,3.015,726,3.015,727,3.015,728,3.015,729,3.601,730,3.015,731,4.203,732,4.203,733,4.203,734,4.203,735,3.188,736,3.015,737,3.015,738,3.015,739,3.015,740,5.333,741,5.333,742,5.333,743,3.825,744,2.22,745,3.825,746,3.825,747,3.825,748,3.825,749,3.825,750,3.825,751,3.825,752,3.825]],["title/interfaces/ColorAssignmentStateModel.html",[112,0.557,698,2.755]],["body/interfaces/ColorAssignmentStateModel.html",[8,0.013,21,0.13,22,0.16,23,0.13,24,0.087,34,0.884,35,0.32,48,0.27,98,0.262,99,0.13,102,1.309,103,1.179,109,0.006,110,0.009,111,0.006,112,0.779,114,1.414,116,1.694,118,0.432,119,0.873,126,0.796,127,1.321,145,1.414,147,2.277,149,1.632,175,2.171,191,1.32,214,3.414,219,0.67,226,1.566,236,2.164,259,1.154,301,3.115,334,1.116,357,1.76,371,1.83,374,1.573,402,1.321,417,0.772,578,1.976,661,2.855,662,2.171,663,2.855,664,4.557,665,4.693,666,4.098,667,3.067,668,3.323,669,1.632,670,2.934,671,2.685,672,2.171,673,3.414,674,2.171,675,1.987,676,3.332,677,3.067,678,3.067,679,2.934,680,3.867,681,2.855,682,3.067,683,3.067,684,3.067,685,3.067,686,3.067,687,3.067,688,3.067,689,3.067,690,3.067,691,3.067,692,3.067,693,3.067,694,2.855,695,3.067,696,2.678,697,3.067,698,3.857,699,5.704,700,6.365,701,4.884,702,3.867,703,6.441,704,4.678,705,3.332,706,2.527,707,2.395,708,4.502,709,2.075,710,4.502,711,3.332,712,3.332,713,3.332,714,3.332,715,5.099,716,5.099,717,3.332,718,3.332,719,4.502,720,3.332,721,3.332,722,3.332,723,3.332,724,3.332,725,3.332,726,3.332,727,3.332,728,3.332,729,3.857,730,3.332,731,4.502,732,4.502,733,4.502,734,4.502,735,3.414,736,3.332,737,3.332,738,3.332,739,3.332,753,4.502]],["title/components/ContainerComponent.html",[130,0.557,515,1.319]],["body/components/ContainerComponent.html",[7,0.948,8,0.013,9,0.948,21,0.09,22,0.111,23,0.09,24,0.16,29,1.087,31,1.723,33,1.432,34,1.227,35,0.273,38,0.613,48,0.187,65,1.496,91,2.369,98,0.111,99,0.203,100,1.579,102,0.997,103,0.998,109,0.004,110,0.007,111,0.007,118,0.449,119,0.672,120,0.722,125,1.269,126,0.783,127,0.535,128,1.052,129,3.716,130,1.016,145,0.981,149,1.132,170,0.916,172,1.832,174,3.467,176,1.743,179,2.209,182,2.709,183,1.637,185,1.579,187,1.579,188,1.579,193,1.162,196,1.394,205,1.422,210,2.067,216,1.016,219,0.836,226,1.269,231,0.981,249,1.242,250,1.162,251,1.45,253,0.749,259,2.211,261,3.716,278,1.98,295,2.492,313,3.951,315,1.221,334,0.774,342,1.753,357,1.831,369,0.981,374,1.964,392,2.068,416,1.052,417,1.071,418,1.181,426,1.753,442,1.091,443,0.948,447,1.052,449,0.948,492,2.311,505,1.091,506,2.031,507,1.422,508,1.091,509,2.183,510,1.091,511,1.091,512,1.091,513,0.948,514,1.091,515,1.896,516,1.091,517,1.896,518,1.637,519,0.948,520,0.981,521,1.091,522,1.091,523,0.948,524,1.091,525,0.948,526,1.052,527,1.091,528,0.948,529,1.422,530,1.091,531,0.948,532,1.091,533,0.948,534,1.091,535,0.948,536,1.091,537,0.981,538,1.091,539,0.948,540,1.091,541,0.948,542,1.091,543,0.948,544,1.052,545,1.091,546,0.948,547,0.948,548,0.948,549,1.091,550,0.948,551,0.856,552,1.091,553,0.948,554,1.091,555,1.091,556,1.052,558,1.032,577,1.087,578,1.201,607,2.976,633,3.363,744,2.442,754,2.311,755,4.161,756,2.844,757,3.837,758,4.399,759,2.821,760,5.279,761,4.399,762,2.955,763,3.156,764,5.279,765,5.279,766,4.965,767,3.467,768,4.624,769,3.16,770,5.866,771,2.492,772,2.97,773,3.501,774,5.279,775,3.837,776,4.399,777,1.983,778,2.834,779,3.013,780,3.191,781,1.763,782,4.399,783,4.399,784,2.743,785,2.932,786,3.837,787,4.399,788,3.191,789,2.97,790,2.97,791,2.932,792,2.54,793,3.837,794,4.399,795,2.932,796,2.97,797,2.932,798,4.399,799,4.399,800,2.38,801,2.932,802,2.787,803,2.369,804,6.845,805,4.399,806,5.866,807,2.932,808,3.961,809,3.837,810,5.866,811,4.399,812,2.932,813,2.97,814,3.837,815,4.399,816,2.932,817,3.83,818,3.191,819,2.932,820,2.932,821,3.837,822,2.932,823,2.932,824,2.932,825,1.579,826,2.932,827,2.557,828,2.557,829,2.127,830,2.311,831,1.753,832,2.557,833,2.617,834,2.557,835,3.837,836,2.932,837,2.557,838,2.932,839,2.557,840,3.156,841,2.844,842,2.311,843,2.932,844,2.932,845,2.932,846,2.932,847,1.857,848,2.311,849,2.557,850,2.127,851,2.932,852,2.932,853,3.837,854,1.753,855,2.259,856,3.837,857,2.932,858,2.932,859,2.127,860,2.932,861,1.661,862,2.932,863,2.932,864,4.399,865,4.399,866,2.932,867,2.932,868,2.932,869,2.932,870,2.932,871,2.932,872,2.932,873,1.661,874,1.661,875,2.97,876,1.661,877,2.932,878,2.557,879,2.557]],["title/components/ContentComponent.html",[130,0.557,517,1.319]],["body/components/ContentComponent.html",[7,0.873,8,0.013,9,0.873,20,0.714,21,0.083,22,0.102,23,0.083,24,0.161,29,1.022,31,1.739,33,1.269,34,1.338,35,0.251,38,0.565,48,0.173,65,1.483,98,0.102,99,0.197,100,1.485,102,0.949,103,1.133,109,0.004,110,0.006,111,0.006,118,0.422,119,0.632,120,0.825,125,1.44,126,0.791,127,0.493,128,0.97,129,3.565,130,0.96,145,0.904,170,0.844,172,1.894,176,1.092,179,2.263,182,2.682,185,1.485,187,1.485,188,1.485,191,2.079,193,1.092,196,1.327,205,2.219,210,2.01,216,0.936,219,0.655,226,1.218,231,0.904,236,1.681,249,1.167,250,1.092,251,1.645,253,0.691,259,2.089,261,3.565,278,1.825,289,1.961,313,3.267,315,1.735,316,2.563,321,2.38,334,1.758,341,1.616,342,1.616,369,0.904,370,2.62,374,1.006,392,1.271,416,1.201,417,1.107,418,1.658,426,1.616,442,1.006,443,0.873,447,0.97,449,1.337,450,1.456,505,1.006,506,1.96,507,1.337,508,1.006,509,2.094,510,1.006,511,1.006,512,1.006,513,0.873,514,1.006,515,0.873,516,1.006,517,1.819,518,1.539,519,0.873,520,0.904,521,1.006,522,1.006,523,0.873,524,1.006,525,0.873,526,0.97,527,1.006,528,0.873,529,1.337,530,1.006,531,0.873,532,1.006,533,0.873,534,1.006,535,0.873,536,1.006,537,0.904,538,1.006,539,0.873,540,1.006,541,0.873,542,1.006,543,0.873,544,0.97,545,1.006,546,0.873,547,0.873,548,0.873,549,1.006,550,0.873,551,0.789,552,1.006,553,0.873,554,1.006,555,1.006,556,0.97,558,1.1,577,1.022,578,1.961,606,1.825,607,2.884,634,2.971,646,2.275,744,2.525,756,2.706,759,2.563,763,3.003,766,4.829,767,3.26,769,3.031,771,2.343,773,3.527,775,3.608,777,1.865,778,2.537,779,2.891,780,3,781,1.657,784,2.563,788,3,789,2.793,790,2.793,792,1.791,796,2.793,803,2.228,814,3.608,817,3.644,818,3,825,1.456,829,1.961,833,2.343,840,3.979,841,3.446,850,1.961,854,1.616,855,1.388,859,1.961,873,1.531,875,1.825,880,2.358,881,4.136,882,6.372,883,2.124,884,4.382,885,5.023,886,6.065,887,5.023,888,5.023,889,5.627,890,4.136,891,4.136,892,4.136,893,5.627,894,5.627,895,5.627,896,4.136,897,2.62,898,4.136,899,3.96,900,4.136,901,4.136,902,3.644,903,4.136,904,4.104,905,4.136,906,3.26,907,2.703,908,3.26,909,3.26,910,2.703,911,2.703,912,4.136,913,3.364,914,2.228,915,4.136,916,4.366,917,2.703,918,4.136,919,2.703,920,2.793,921,3,922,4.136,923,5.627,924,2.358,925,3.392,926,2.03,927,2.358,928,2.13,929,2.703,930,2.703,931,1.791,932,2.703,933,2.703,934,2.703,935,2.703,936,2.703,937,2.358,938,2.13,939,2.846,940,4.136,941,2.703,942,4.136,943,2.703,944,1.616,945,1.712,946,2.703,947,2.703,948,2.703,949,5.023,950,2.703,951,2.703,952,4.136,953,2.703,954,2.703,955,4.136,956,2.703,957,2.703,958,2.703,959,1.219,960,1.961,961,2.358,962,1.712,963,2.703,964,2.703,965,2.703,966,1.712]],["title/interfaces/ContentContainerChanged.html",[112,0.557,967,2.439]],["body/interfaces/ContentContainerChanged.html",[8,0.013,21,0.146,22,0.179,23,0.146,24,0.098,35,0.196,98,0.309,99,0.146,103,0.809,109,0.007,110,0.009,111,0.007,112,0.99,114,1.589,118,0.485,119,0.943,125,1.335,126,0.904,130,1.026,176,1.63,179,2.332,181,3.01,193,1.255,205,1.994,208,2.559,219,0.978,236,1.589,307,2.907,313,3.324,357,1.978,432,2.559,433,2.559,434,2.44,435,2.057,436,2.84,437,3.01,438,3.01,450,2.559,481,2.854,551,1.387,558,0.929,577,1.525,578,1.685,633,2.672,634,2.296,646,1.994,669,2.801,759,2.747,762,2.233,773,3.625,777,2.142,778,2.782,781,2.747,784,3.31,800,2.782,854,2.84,855,3.17,916,3.689,920,3.208,944,2.84,967,4.097,968,2.84,969,4.152,970,4.167,971,4.167,972,4.342,973,3.208,974,3.689,975,3.208,976,2.691,977,3.689,978,4.167,979,3.446,980,3.446,981,3.689,982,3.689,983,3.03,984,3.446,985,2.332,986,3.208,987,4.167,988,2.84,989,3.521]],["title/modules/CoreModule.html",[0,1.232,10,2.755]],["body/modules/CoreModule.html",[0,2.001,2,1.604,3,2.001,8,0.013,10,5.636,18,2.217,19,1.717,20,1.403,21,0.164,22,0.201,23,0.164,24,0.11,28,2.296,35,0.341,38,1.112,47,2.217,48,0.34,65,1.318,66,2.129,91,2.862,92,3.854,97,4.635,98,0.201,99,0.164,108,3.854,109,0.008,110,0.01,111,0.008,120,0.873,137,3.961,141,4.635,154,3.366,155,3.366,219,1.05,492,4.188,656,2.466,990,4.635,991,4.635,992,4.635,993,5.636,994,5.358,995,5.358,996,5.313,997,6.627,998,5.313,999,4.475,1000,6.627,1001,5.313,1002,6.627,1003,5.313,1004,5.313,1005,5.313,1006,5.313,1007,4.475,1008,5.313,1009,3.588,1010,4.188,1011,5.313,1012,5.313,1013,5.313,1014,5.313,1015,5.313,1016,5.313,1017,5.313,1018,5.313,1019,5.313,1020,4.635,1021,7.222,1022,5.313,1023,4.188,1024,5.313]],["title/interfaces/DataStateModel.html",[112,0.557,1025,3.216]],["body/interfaces/DataStateModel.html",[8,0.013,21,0.083,22,0.229,23,0.083,24,0.056,33,1.504,34,1.179,35,0.291,48,0.173,65,0.757,66,1.086,98,0.213,99,0.083,100,0.973,101,1.461,102,1.531,103,0.706,109,0.011,110,0.006,111,0.004,112,0.37,114,0.907,116,1.086,118,0.423,119,0.633,120,0.445,125,0.587,126,0.602,136,1.047,137,2.478,142,2.626,143,3.59,144,1.967,145,0.907,146,1.461,147,1.461,149,1.047,161,3.268,162,1.461,193,1.604,195,2.8,196,1.329,197,1.949,203,3.968,210,0.819,211,1.967,219,1.139,226,1.555,229,1.718,236,2.357,237,2.365,238,1.831,239,2.137,243,4.834,249,0.765,250,0.716,251,1.807,252,2.126,256,2.478,259,2.071,307,1.086,314,3.348,315,0.627,351,3.268,371,2.179,374,1.009,392,3.133,402,0.959,417,0.495,418,0.928,426,2.478,432,1.461,433,1.461,434,2.586,435,1.174,529,0.876,547,1.34,558,0.53,562,3.933,577,1.025,578,0.74,623,1.621,668,2.13,669,1.047,670,2.13,671,1.949,672,1.393,674,1.393,675,1.275,679,3.809,707,1.536,777,1.222,830,3.968,831,1.621,840,1.621,913,1.621,914,2.711,939,1.536,976,2.851,988,1.621,1025,3.268,1026,1.831,1027,3.268,1028,3.399,1029,5.11,1030,1.967,1031,2.365,1032,2.137,1033,2.137,1034,6.873,1035,4.146,1036,3.616,1037,4.146,1038,2.711,1039,4.146,1040,2.365,1041,1.967,1042,1.831,1043,3.651,1044,2.137,1045,2.137,1046,2.365,1047,2.365,1048,2.365,1049,2.137,1050,2.137,1051,2.137,1052,1.831,1053,2.365,1054,2.365,1055,6.169,1056,1.621,1057,2.711,1058,2.137,1059,2.137,1060,4.391,1061,4.646,1062,2.137,1063,4.917,1064,2.137,1065,3.616,1066,2.711,1067,1.536,1068,1.621,1069,2.365,1070,2.365,1071,2.711,1072,3.616,1073,2.365,1074,2.365,1075,2.365,1076,2.365,1077,2.137,1078,6.367,1079,1.621,1080,4.986,1081,2.626,1082,2.137,1083,1.831,1084,2.711,1085,2.711,1086,2.711,1087,2.711,1088,2.711,1089,2.365,1090,4.834,1091,4.146,1092,2.711,1093,4.146,1094,2.711,1095,4.146,1096,2.711,1097,4.146,1098,2.711,1099,4.146,1100,2.711,1101,4.146,1102,2.711,1103,4.146,1104,2.711,1105,4.146,1106,3.616,1107,4.146,1108,4.146,1109,4.146,1110,2.711,1111,4.146,1112,6.664,1113,2.711,1114,2.711,1115,4.146,1116,3.616,1117,2.711,1118,2.711,1119,4.089,1120,5.637,1121,4.146,1122,2.711,1123,2.711,1124,4.146,1125,2.711,1126,2.711,1127,4.146,1128,2.711,1129,2.711,1130,3.616,1131,4.146,1132,2.711,1133,2.711,1134,4.146,1135,4.146,1136,2.711,1137,2.711,1138,5.995,1139,2.711,1140,2.711,1141,2.711,1142,2.711,1143,2.711,1144,2.711,1145,2.711,1146,2.711,1147,2.711,1148,2.711,1149,2.711,1150,2.711,1151,2.711,1152,2.711,1153,2.711,1154,2.711,1155,2.711,1156,2.711,1157,2.711,1158,2.711,1159,1.621,1160,2.711,1161,2.711,1162,2.711,1163,2.711,1164,2.711,1165,2.711,1166,2.711,1167,2.711,1168,2.711,1169,2.137,1170,2.711,1171,2.711,1172,2.711,1173,2.711,1174,2.711,1175,2.711,1176,1.831,1177,2.711,1178,2.711,1179,2.711,1180,1.831,1181,2.711,1182,2.711,1183,4.406,1184,2.711,1185,2.711,1186,2.711,1187,2.711,1188,2.711,1189,2.711,1190,2.711,1191,2.711,1192,2.711,1193,2.711,1194,2.711,1195,2.711,1196,2.711,1197,2.711,1198,2.711,1199,2.711,1200,2.711,1201,2.711,1202,2.711]],["title/interfaces/DefaultIconDefinition.html",[112,0.557,1203,2.96]],["body/interfaces/DefaultIconDefinition.html",[8,0.013,21,0.107,22,0.131,23,0.107,24,0.072,88,5.37,98,0.188,103,0.591,109,0.005,110,0.008,111,0.005,112,0.473,114,1.161,118,0.354,119,0.76,120,1.213,126,0.679,127,1.424,212,4.595,213,2.557,291,3.44,314,1.39,316,2.698,321,2.505,355,1.965,417,1.556,506,2.333,558,0.678,781,1.39,861,2.819,931,1.502,1180,2.343,1203,4.222,1204,2.343,1205,2.735,1206,2.735,1207,2.735,1208,4.301,1209,3.026,1210,3.923,1211,3.469,1212,3.469,1213,2.343,1214,3.469,1215,3.026,1216,2.735,1217,3.026,1218,6.179,1219,3.611,1220,4.613,1221,5.012,1222,3.611,1223,2.343,1224,2.735,1225,2.343,1226,5.701,1227,3.026,1228,7.356,1229,3.026,1230,3.026,1231,3.026,1232,4.342,1233,3.026,1234,3.026,1235,3.026,1236,3.026,1237,3.026,1238,3.026,1239,5.547,1240,5.547,1241,5.873,1242,5.873,1243,2.517,1244,3.026,1245,4.547,1246,3.026,1247,3.026,1248,3.026,1249,4.342,1250,4.342,1251,4.342,1252,3.026,1253,3.026,1254,5.873,1255,3.026,1256,4.342,1257,3.026,1258,3.026,1259,3.026,1260,3.026,1261,3.026,1262,5.547,1263,3.026,1264,3.026,1265,4.342,1266,3.026,1267,3.026,1268,3.026,1269,3.026,1270,3.026,1271,3.026,1272,4.342,1273,2.517,1274,3.026,1275,3.026,1276,3.026,1277,3.026,1278,3.026,1279,5.547,1280,3.026,1281,3.026,1282,5.547,1283,3.026,1284,3.026,1285,2.517,1286,3.026,1287,3.026,1288,5.873,1289,3.026,1290,4.342,1291,3.026,1292,2.735,1293,3.026,1294,2.735,1295,3.026,1296,3.026]],["title/interfaces/DelegateDataSourceOptions.html",[112,0.557,1297,2.96]],["body/interfaces/DelegateDataSourceOptions.html",[8,0.013,21,0.175,22,0.215,23,0.175,24,0.118,35,0.32,38,1.193,48,0.364,65,1.041,66,2.284,98,0.261,99,0.175,103,0.97,109,0.009,110,0.011,111,0.009,112,0.778,114,1.907,116,2.284,118,0.582,119,1.057,120,1.273,125,1.612,126,0.739,127,1.36,154,3.612,155,3.612,226,1.612,252,1.506,357,2.373,402,1.601,408,4.136,421,3.071,458,6.362,459,6.362,484,4.136,1007,3.85,1009,3.85,1010,4.494,1297,5.405,1298,3.85,1299,4.136,1300,6.037,1301,6.037,1302,6.037,1303,4.973,1304,6.037,1305,4.673,1306,5.02,1307,4.973,1308,3.229,1309,4.973]],["title/injectables/DelegateDataSourceService.html",[402,0.944,1007,2.755]],["body/injectables/DelegateDataSourceService.html",[8,0.013,21,0.174,22,0.214,23,0.174,24,0.142,29,1.703,31,1.267,33,1.185,35,0.32,38,1.185,48,0.362,65,1.034,66,2.269,98,0.26,99,0.174,103,0.964,109,0.009,110,0.011,111,0.009,112,0.773,116,2.762,118,0.578,120,0.93,125,1.225,126,0.604,127,1.034,154,3.587,155,3.587,226,1.608,252,1.496,357,2.358,402,1.594,403,2.78,408,5.39,416,1.354,417,1.034,421,3.05,458,5.856,459,5.856,484,4.108,1007,4.654,1009,4.654,1010,4.463,1297,5.608,1298,4.654,1299,4.108,1300,6.481,1301,6.012,1302,6.012,1303,4.94,1304,6.481,1305,4.654,1306,5,1307,6.012,1308,3.904,1309,4.94,1310,6.892,1311,5.663]],["title/components/DonorCardComponent.html",[130,0.557,519,1.319]],["body/components/DonorCardComponent.html",[7,0.746,8,0.013,9,0.746,20,0.61,21,0.184,22,0.087,23,0.071,24,0.153,29,0.904,31,1.64,33,0.951,34,1.254,35,0.188,38,0.483,48,0.148,65,1.46,98,0.087,99,0.184,101,1.244,102,1.133,109,0.004,110,0.006,111,0.006,118,0.236,119,0.559,120,0.601,125,0.983,126,0.761,127,1.146,128,0.829,130,0.988,136,0.891,170,0.721,172,0.721,174,1.82,176,0.966,179,1.283,182,2.624,183,1.361,185,1.313,187,1.313,188,1.313,191,1.961,194,3.192,195,2.471,196,1.2,210,0.697,212,3.229,216,0.8,219,0.819,223,2.884,228,2.073,229,2.318,231,0.773,236,2.244,249,1.033,250,0.966,251,0.904,252,0.966,253,0.59,291,2.943,301,2.337,307,1.466,315,1.453,316,2.402,321,1.691,334,1.884,354,3.024,369,2.005,374,1.923,387,3.275,416,0.875,417,1.146,418,1.341,426,3.583,430,2.649,435,1.584,442,0.859,443,0.746,447,0.829,449,0.746,451,1.523,476,2.402,505,0.859,506,1.821,507,1.821,508,0.859,509,1.923,510,0.859,511,0.859,512,0.859,513,0.746,514,0.859,515,0.746,516,0.859,517,0.746,518,1.361,519,1.671,520,2.611,521,0.859,522,0.859,523,0.746,524,0.859,525,0.746,526,0.829,527,0.859,528,0.746,529,1.182,530,0.859,531,0.746,532,0.859,533,0.746,534,0.859,535,0.746,536,0.859,537,0.773,538,0.859,539,0.746,540,0.859,541,0.746,542,0.859,543,0.746,544,0.829,545,0.859,546,0.746,547,2.03,548,1.469,549,0.859,550,0.746,551,0.674,552,0.859,553,0.746,554,0.859,555,0.859,556,0.829,558,1.102,564,6.116,570,1.72,572,1.559,573,3.09,575,2.716,576,2.448,577,0.904,587,2.884,591,4.915,594,2.54,595,4.509,607,1.65,611,2.049,613,1.308,614,1.244,622,2.879,623,2.716,624,3.229,626,3.192,630,3.192,631,3.49,633,1,634,2.654,635,2.538,636,2.334,637,4.725,638,3.754,639,2.716,641,3.024,646,2.266,744,0.961,771,2.073,773,2.33,789,2.471,790,2.471,792,2.238,803,1.971,825,1.244,833,1.892,841,1.971,855,1.879,873,1.308,874,2.073,875,2.471,876,1.308,883,3.079,902,1.675,904,3.368,926,1.134,931,2.238,939,2.073,959,2.831,962,1.463,966,2.879,983,3.373,1033,3.582,1056,1.38,1208,1.971,1292,2.884,1294,2.884,1312,4.431,1313,5.843,1314,5.378,1315,2.014,1316,6.641,1317,3.192,1318,3.192,1319,4.544,1320,3.659,1321,3.964,1322,4.544,1323,5.169,1324,3.659,1325,5.169,1326,4.915,1327,3.296,1328,4.544,1329,3.659,1330,2.309,1331,4.348,1332,3.583,1333,3.797,1334,2.309,1335,2.309,1336,2.309,1337,2.309,1338,2.309,1339,2.309,1340,3.797,1341,3.659,1342,2.309,1343,4.074,1344,2.654,1345,3.659,1346,2.309,1347,3.192,1348,3.192,1349,2.318,1350,3.659,1351,3.659,1352,2.471,1353,2.187,1354,2.309,1355,2.884,1356,2.654,1357,3.659,1358,3.192,1359,5.994,1360,2.309,1361,4.544,1362,4.544,1363,3.659,1364,4.509,1365,2.309,1366,2.309,1367,2.309,1368,3.192,1369,3.659,1370,3.659,1371,5.228,1372,5.169,1373,3.659,1374,3.659,1375,3.659,1376,3.659,1377,3.659,1378,3.659,1379,1.463,1380,1.463,1381,3.229,1382,3.192,1383,3.079,1384,2.654,1385,1.879,1386,1.308,1387,1.82,1388,2.187,1389,2.716,1390,2.448,1391,2.309,1392,2.309,1393,2.309,1394,2.309,1395,2.014,1396,2.309,1397,1.82,1398,2.309,1399,2.309,1400,3.582,1401,2.309,1402,1.559,1403,2.649,1404,2.448,1405,3.964,1406,3.192,1407,1.675,1408,1.82,1409,5.682,1410,1.308,1411,5.634,1412,2.309,1413,3.582,1414,3.964,1415,2.309,1416,3.192,1417,2.309,1418,2.309,1419,2.309,1420,2.309,1421,2.309,1422,2.309,1423,1.186,1424,2.309,1425,2.784,1426,1.463,1427,2.014,1428,2.309,1429,2.716,1430,2.309,1431,2.309,1432,3.659,1433,2.014,1434,2.309,1435,3.192,1436,2.309,1437,2.309,1438,2.014,1439,2.309,1440,2.309,1441,2.014,1442,2.309]],["title/modules/DonorCardModule.html",[0,1.232,1443,2.755]],["body/modules/DonorCardModule.html",[2,1.714,3,2.084,8,0.013,18,2.31,19,1.835,20,1.5,21,0.175,22,0.214,23,0.175,24,0.117,26,2.665,28,2.392,35,0.337,47,2.31,48,0.363,49,3.546,50,2.669,98,0.214,99,0.175,109,0.009,110,0.011,111,0.009,519,2.72,520,1.9,547,1.835,548,2.231,612,4.476,656,2.569,657,2.766,658,2.113,659,6.022,1312,3.394,1313,4.476,1314,4.119,1443,5.661,1444,4.953,1445,4.953,1446,4.953,1447,4.953,1448,5.445,1449,5.445,1450,5.678,1451,5.678,1452,3.834,1453,5.678,1454,5.678,1455,4.119,1456,5.678]],["title/interfaces/DrawerContainersChanged.html",[112,0.557,974,2.439]],["body/interfaces/DrawerContainersChanged.html",[8,0.013,21,0.145,22,0.178,23,0.145,24,0.097,35,0.195,98,0.308,99,0.145,103,0.801,109,0.007,110,0.009,111,0.007,112,0.987,114,1.575,118,0.481,119,0.937,125,1.327,126,0.905,130,0.987,176,1.803,179,2.349,181,2.983,193,1.244,205,1.983,208,2.536,219,0.746,236,1.575,307,2.897,313,4.039,357,2.554,432,2.536,433,2.536,434,2.419,435,2.039,436,2.815,437,2.983,438,2.983,450,2.536,481,2.841,551,1.374,558,0.921,577,1.516,578,1.675,633,2.657,634,2.283,646,1.983,669,2.791,759,2.735,762,2.213,773,3.26,777,2.123,778,2.766,781,2.458,784,3.306,800,2.766,854,2.815,855,3.151,916,3.667,920,4.143,944,2.815,967,3.667,968,2.815,969,4.142,970,4.143,971,4.143,972,4.324,973,3.179,974,4.079,975,4.143,976,3.475,977,3.667,978,4.143,979,3.416,980,3.416,981,3.667,982,3.667,983,3.012,984,3.416,985,2.312,986,3.179,987,4.143,988,2.815,989,3.506]],["title/interfaces/DrawerInitialized.html",[112,0.557,981,2.439]],["body/interfaces/DrawerInitialized.html",[8,0.013,21,0.147,22,0.181,23,0.147,24,0.099,35,0.198,98,0.309,99,0.147,103,0.815,109,0.007,110,0.009,111,0.007,112,0.993,114,1.602,118,0.489,119,0.948,125,1.342,126,0.905,130,0.939,176,1.638,179,2.345,181,3.034,193,1.265,205,2.005,208,2.58,219,0.759,236,1.602,307,2.757,313,3.341,357,1.994,432,2.58,433,2.58,434,2.46,435,2.073,436,2.862,437,3.034,438,3.034,450,2.58,481,2.864,551,1.398,558,0.936,577,1.533,578,1.694,633,2.686,634,2.308,646,2.005,669,2.809,759,2.757,762,2.251,773,3.281,777,2.159,778,2.797,781,2.486,784,3.314,800,2.797,854,2.862,855,3.186,916,3.708,920,3.234,944,2.862,967,3.708,968,2.862,969,4.161,970,4.189,971,4.189,972,4.359,973,3.234,974,3.708,975,3.234,976,2.713,977,3.708,978,4.189,979,4.5,980,4.5,981,4.113,982,3.708,983,3.045,984,3.474,985,2.351,986,3.234,987,4.189,988,2.862,989,3.534]],["title/modules/DrawerModule.html",[0,1.232,11,2.755]],["body/modules/DrawerModule.html",[2,1.627,3,2.018,8,0.013,11,5.718,18,2.236,19,1.741,20,1.423,21,0.166,22,0.203,23,0.166,24,0.111,26,2.58,28,1.867,35,0.34,47,2.236,48,0.344,49,3.434,50,2.533,56,5.831,57,4.235,58,2.768,59,5.831,60,4.7,91,2.902,92,3.908,93,4.247,98,0.203,99,0.166,109,0.008,110,0.01,111,0.008,172,2.611,515,2.702,517,2.702,550,2.702,551,1.573,656,2.487,828,4.7,829,3.908,973,3.638,1457,4.7,1458,4.7,1459,4.7,1460,5.388,1461,3.996,1462,3.996,1463,5.388,1464,4.247,1465,5.388]],["title/interfaces/DrawerToggled.html",[112,0.557,982,2.439]],["body/interfaces/DrawerToggled.html",[8,0.013,21,0.14,22,0.172,23,0.14,24,0.094,35,0.189,98,0.307,99,0.14,103,0.776,109,0.007,110,0.009,111,0.007,112,0.975,114,1.526,118,0.466,119,0.918,125,1.649,126,0.907,130,0.917,176,1.587,179,2.363,181,2.889,193,1.587,205,2.308,208,3.237,219,0.723,236,2.01,307,2.862,313,3.237,357,1.899,432,2.457,433,2.457,434,2.343,435,1.975,436,2.726,437,2.889,438,2.889,450,2.457,481,2.798,551,1.754,558,0.892,577,1.485,578,2.081,633,2.602,634,2.836,646,2.463,669,2.757,759,2.693,762,2.144,773,3.22,777,2.709,778,2.709,781,2.408,784,3.292,800,2.709,854,2.726,855,3.086,916,4.556,920,3.08,944,2.726,967,3.592,968,2.726,969,3.998,970,4.057,971,4.057,972,4.257,973,3.08,974,3.592,975,3.08,976,2.584,977,3.592,978,4.057,979,3.309,980,3.309,981,3.592,982,4.017,983,3.742,984,4.359,985,2.95,986,4.057,987,4.057,988,2.726,989,3.452]],["title/components/DropdownComponent.html",[130,0.557,523,1.319]],["body/components/DropdownComponent.html",[7,1.05,8,0.013,9,1.05,21,0.1,22,0.123,23,0.1,24,0.153,29,1.173,31,1.623,33,0.993,34,1.291,35,0.196,38,0.68,48,0.208,65,1.5,98,0.123,99,0.1,101,1.751,102,0.897,109,0.005,110,0.007,111,0.007,118,0.332,119,0.725,120,0.78,126,0.755,127,1.372,128,1.167,130,1.01,158,4.431,170,1.015,172,1.015,176,1.254,179,1.583,182,2.741,183,1.767,185,1.704,187,1.704,188,1.704,193,1.254,196,1.481,197,3.221,216,1.126,219,0.889,228,2.689,230,2.059,231,1.087,249,1.34,250,1.254,251,1.173,253,0.83,276,2.358,315,0.752,316,2.472,321,1.767,334,1.629,354,3.27,374,1.209,382,2.562,416,1.135,417,1.126,418,1.623,428,3.742,430,2.637,442,1.209,443,1.05,447,1.167,449,1.05,451,1.977,476,2.472,505,1.209,506,1.534,507,1.534,508,1.209,509,2.295,510,1.209,511,1.209,512,1.209,513,1.05,514,1.209,515,1.05,516,1.209,517,1.05,518,1.767,519,1.05,520,1.087,521,1.209,522,1.209,523,1.994,524,1.209,525,1.05,526,1.167,527,1.209,528,1.05,529,1.534,530,1.209,531,1.05,532,1.209,533,1.05,534,1.209,535,1.05,536,1.209,537,1.087,538,1.209,539,1.05,540,1.209,541,1.05,542,1.209,543,1.05,544,1.167,545,1.209,546,1.05,547,1.05,548,1.05,549,1.209,550,1.05,551,0.949,552,1.209,553,1.05,554,1.209,555,1.209,556,1.167,558,1.097,562,2.439,569,3.177,570,2.232,571,4.421,572,2.195,573,3.687,575,3.353,576,3.021,577,1.173,594,2.529,600,4.898,611,2.141,613,1.841,614,1.751,616,2.562,622,4.157,623,3.922,624,3.908,631,3.206,635,2.331,636,3.37,638,3.353,639,1.943,640,2.358,641,1.465,646,2.287,833,1.353,855,2.439,899,4.862,904,2.838,913,2.838,925,2.195,926,1.596,931,2.429,959,2.781,1056,1.943,1379,2.059,1380,3.553,1383,3.52,1385,3.169,1402,2.195,1403,1.528,1410,1.841,1423,1.67,1425,2.557,1466,2.835,1467,6.844,1468,6.328,1469,5.609,1470,4.748,1471,5.609,1472,4.748,1473,6.168,1474,4.748,1475,3.25,1476,3.742,1477,3.25,1478,4.748,1479,2.838,1480,3.25,1481,3.25,1482,4.748,1483,3.25,1484,3.25,1485,4.748,1486,4.862,1487,4.862,1488,4.141,1489,3.444,1490,3.717,1491,4.748,1492,3.25,1493,3.25,1494,3.25,1495,4.141,1496,4.748,1497,3.25,1498,4.141,1499,4.483,1500,4.23,1501,4.421,1502,5.609,1503,2.562,1504,2.562,1505,3.021,1506,3.444,1507,2.562,1508,4.165,1509,3.742,1510,2.195,1511,4.475,1512,2.195,1513,3.742,1514,4.141,1515,2.835,1516,3.25,1517,2.835,1518,2.835,1519,3.444,1520,2.835,1521,3.25,1522,2.562,1523,3.25,1524,2.059,1525,2.358,1526,3.25,1527,2.562,1528,3.25,1529,2.835,1530,2.835,1531,3.25]],["title/modules/DropdownModule.html",[0,1.232,1532,2.755]],["body/modules/DropdownModule.html",[2,1.809,3,2.153,8,0.013,18,2.386,19,1.937,20,1.583,21,0.184,22,0.226,23,0.184,24,0.124,26,2.752,28,2.076,35,0.333,47,2.386,48,0.383,98,0.226,99,0.184,109,0.009,110,0.011,111,0.009,523,2.738,656,2.653,657,2.857,658,2.23,1500,3.582,1532,5.571,1533,5.227,1534,5.227,1535,5.227,1536,5.992,1537,5.621,1538,4.723,1539,6.22,1540,5.227,1541,5.992]],["title/components/DualSliderComponent.html",[130,0.557,525,1.319]],["body/components/DualSliderComponent.html",[7,0.581,8,0.013,9,0.581,21,0.055,22,0.068,23,0.055,24,0.159,29,0.738,31,1.713,33,1.326,34,1.498,35,0.205,38,0.376,42,1.214,48,0.115,53,1.418,65,1.39,82,5.195,98,0.068,99,0.055,100,1.072,102,0.564,103,1.008,109,0.003,110,0.005,111,0.005,118,0.184,119,0.681,120,0.929,126,0.756,127,0.903,130,0.864,131,3.998,133,1.418,158,4.39,170,0.562,172,0.562,176,0.789,179,1.081,182,2.519,183,1.111,185,1.072,190,2.291,191,1.919,193,1.41,196,1.012,197,2.783,198,3.019,205,1.441,210,1.494,216,0.623,219,0.607,226,1.071,228,2.527,230,4.291,231,0.602,249,1.259,250,0.789,251,1.319,253,0.763,259,1.775,276,1.305,306,3.891,307,2.139,315,0.886,316,1.535,321,1.425,324,6.117,334,1.623,341,1.785,344,2.167,350,1.214,354,1.347,357,1.243,369,1.786,371,1.293,374,1.425,416,1.352,417,1.156,418,1.602,428,2.354,430,1.404,432,2.063,433,2.063,435,1.658,442,0.669,443,0.581,447,0.646,449,1.238,450,2.403,451,1.243,476,2.139,505,0.669,506,0.965,507,2.259,508,0.669,509,1.66,510,0.669,511,0.669,512,0.669,513,0.581,514,0.669,515,0.581,516,0.669,517,0.581,518,1.111,519,0.581,520,0.602,521,0.669,522,0.669,523,0.581,524,0.669,525,1.441,526,2.274,527,0.669,528,0.581,529,0.965,530,0.669,531,0.581,532,0.669,533,0.581,534,0.669,535,0.581,536,0.669,537,0.602,538,0.669,539,0.581,540,0.669,541,0.581,542,0.669,543,0.581,544,0.646,545,0.669,546,0.581,547,0.581,548,0.581,549,0.669,550,0.581,551,0.525,552,0.669,553,0.581,554,0.669,555,0.669,556,1.072,558,1.158,562,2.291,569,3.765,570,1.404,571,3.019,573,2.666,575,2.666,576,2.063,577,1.102,578,1.617,589,1.418,592,2.354,594,1.727,607,3.322,611,1.347,613,1.019,614,0.969,616,1.418,621,1.569,622,2.826,623,2.666,624,2.666,631,1.214,634,1.841,635,2.429,636,2.291,638,2.958,639,1.785,640,2.167,641,2.55,642,1.785,646,1.828,704,2.586,744,1.595,756,2.666,769,2.403,772,2.017,773,0.811,779,1.534,781,2.372,792,1.293,796,2.017,833,1.243,840,1.785,841,0.969,855,0.924,861,1.692,876,1.019,879,3.891,883,1.534,899,3.9,904,3.381,913,3.673,926,0.883,931,2.143,959,2.407,976,2.527,985,2.907,1056,1.075,1176,3.012,1183,2.167,1333,2.826,1340,1.892,1349,2.826,1353,1.785,1379,1.139,1380,1.892,1381,2.063,1382,1.692,1383,2.742,1384,1.305,1385,1.534,1388,1.075,1390,3.502,1403,2.097,1404,0.969,1410,1.019,1423,0.924,1425,2.063,1476,2.354,1486,2.354,1487,2.354,1489,3.872,1490,2.803,1495,2.605,1498,2.605,1499,3.135,1500,2.958,1501,2.354,1503,1.418,1504,2.354,1505,2.403,1506,1.305,1507,1.418,1508,3.012,1509,2.354,1510,1.214,1511,3.235,1512,2.017,1513,2.354,1514,2.605,1517,1.569,1518,1.569,1519,2.167,1520,1.569,1522,1.418,1524,1.139,1527,2.354,1529,1.569,1530,1.569,1542,6.064,1543,1.569,1544,2.167,1545,5.956,1546,3.019,1547,3.83,1548,2.987,1549,3.83,1550,5.92,1551,5.338,1552,5.92,1553,6.144,1554,5.656,1555,4.46,1556,4.46,1557,2.987,1558,4.46,1559,2.354,1560,2.987,1561,2.987,1562,5.338,1563,4.46,1564,4.46,1565,3.83,1566,2.987,1567,2.987,1568,2.987,1569,4.948,1570,1.798,1571,2.987,1572,2.605,1573,2.987,1574,2.167,1575,1.798,1576,2.987,1577,1.798,1578,6.144,1579,1.798,1580,2.167,1581,2.987,1582,1.798,1583,2.354,1584,4.316,1585,1.798,1586,4.316,1587,3.83,1588,3.891,1589,4.46,1590,4.46,1591,3.891,1592,4.46,1593,4.46,1594,4.46,1595,4.46,1596,1.798,1597,2.987,1598,2.987,1599,1.798,1600,1.798,1601,1.785,1602,2.354,1603,3.516,1604,1.798,1605,2.987,1606,1.798,1607,2.987,1608,2.605,1609,1.798,1610,4.948,1611,1.798,1612,5.656,1613,3.83,1614,4.46,1615,3.83,1616,2.987,1617,1.798,1618,4.46,1619,1.798,1620,2.605,1621,1.798,1622,2.987,1623,1.798,1624,3.341,1625,1.798,1626,1.798,1627,4.46,1628,2.354,1629,1.798,1630,2.605,1631,1.798,1632,1.798,1633,1.798,1634,2.987,1635,2.987,1636,1.798,1637,2.354,1638,3.83,1639,2.987,1640,1.798,1641,1.798,1642,1.798,1643,2.987,1644,2.605,1645,2.987,1646,1.569,1647,1.569,1648,3.516,1649,1.798,1650,1.798,1651,1.798,1652,1.798,1653,2.987,1654,1.798,1655,1.798,1656,1.798,1657,1.798,1658,1.798,1659,1.798,1660,1.798,1661,1.569,1662,1.798,1663,2.987,1664,1.798,1665,2.987,1666,1.798,1667,1.798,1668,2.987,1669,2.987,1670,1.798,1671,3.83,1672,1.798,1673,1.798,1674,1.798,1675,1.798,1676,1.798,1677,1.798,1678,1.798,1679,1.798,1680,1.798,1681,1.798,1682,2.987,1683,3.83,1684,2.987,1685,3.83,1686,1.798,1687,1.798,1688,1.798,1689,1.798,1690,1.798,1691,1.798,1692,4.46,1693,1.798,1694,1.798,1695,1.798,1696,2.987,1697,2.987,1698,2.987,1699,1.798,1700,2.017,1701,1.798,1702,1.798,1703,2.017,1704,1.798,1705,1.798,1706,1.798,1707,2.987,1708,1.798,1709,1.798,1710,1.798,1711,1.798,1712,1.418,1713,2.987,1714,1.569,1715,1.798,1716,1.798,1717,1.798]],["title/modules/DualSliderModule.html",[0,1.232,12,2.585]],["body/modules/DualSliderModule.html",[2,1.75,3,2.11,8,0.013,12,5.192,18,2.338,19,1.873,20,1.531,21,0.178,22,0.219,23,0.178,24,0.12,26,2.698,28,2.008,35,0.342,42,3.913,47,2.338,48,0.37,82,3.913,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,525,2.727,526,2.08,656,2.601,657,2.801,658,2.156,1500,3.464,1537,5.509,1538,4.568,1539,6.097,1540,5.055,1542,4.568,1545,4.204,1646,5.055,1648,4.568,1718,5.055,1719,5.055,1720,5.055,1721,5.795,1722,6.989,1723,6.989,1724,6.989,1725,5.795]],["title/components/FiltersContentComponent.html",[130,0.557,528,1.319]],["body/components/FiltersContentComponent.html",[7,1.044,8,0.013,9,1.044,21,0.099,22,0.122,23,0.099,24,0.157,29,1.168,31,1.68,33,1.169,34,1.431,35,0.231,38,0.676,48,0.206,65,1.503,91,2.546,98,0.122,99,0.099,101,1.74,102,1.056,109,0.005,110,0.007,111,0.007,118,0.33,120,0.776,125,1.023,126,0.773,127,1.289,128,1.16,130,0.964,163,2.818,170,1.009,172,1.009,176,1.624,179,1.578,182,2.74,183,1.759,185,1.697,187,1.697,188,1.697,196,1.476,213,2.428,216,1.119,219,0.974,228,3.873,231,1.081,249,1.334,250,1.248,251,1.381,252,1.624,253,0.825,289,4.054,291,2.32,307,1.894,314,3.114,316,1.294,321,1.759,334,1.624,352,2.891,369,1.87,416,1.13,417,1.123,418,1.464,442,1.202,443,1.044,447,1.16,449,1.044,451,1.968,476,2.623,481,1.345,505,1.202,506,1.528,507,1.528,508,1.202,509,2.289,510,1.202,511,1.202,512,1.202,513,1.044,514,1.202,515,1.044,516,1.202,517,1.044,518,1.759,519,1.044,520,1.081,521,1.202,522,1.202,523,1.044,524,1.202,525,1.044,526,1.697,527,1.202,528,1.988,529,2.674,530,1.202,531,1.044,532,1.202,533,1.044,534,1.202,535,1.044,536,1.202,537,1.081,538,1.202,539,1.044,540,1.202,541,1.044,542,1.202,543,1.044,544,1.16,545,1.202,546,1.044,547,1.044,548,1.044,549,1.202,550,1.044,551,0.943,552,1.202,553,1.044,554,1.202,555,1.202,556,1.16,558,1.093,562,2.428,570,2.222,572,2.181,573,3.676,575,3.341,576,3.011,577,1.168,594,2.951,600,2.181,606,2.181,608,3.429,611,2.52,613,1.83,614,1.74,633,1.399,634,2.435,635,2.32,641,2.773,642,1.931,643,2.546,646,1.988,647,4.123,649,2.818,702,2.825,704,4.769,773,2.951,779,2.428,876,3.873,883,2.871,884,4.875,913,2.825,926,3.357,931,2.42,985,3.019,1043,2.343,1052,3.192,1056,1.931,1208,1.74,1318,2.818,1331,3.429,1332,1.931,1333,2.994,1340,2.994,1343,3.725,1381,2.546,1382,2.677,1383,2.428,1384,3.429,1385,1.659,1386,1.83,1388,1.931,1389,1.931,1390,1.74,1403,2.627,1410,1.83,1425,2.546,1467,2.818,1489,3.429,1490,2.677,1508,2.181,1519,2.343,1545,2.343,1726,5.139,1727,5.52,1728,2.818,1729,3.725,1730,4.848,1731,4.726,1732,6.15,1733,6.15,1734,4.726,1735,4.875,1736,4.875,1737,4.875,1738,4.875,1739,4.726,1740,3.23,1741,3.23,1742,3.23,1743,3.23,1744,4.123,1745,3.23,1746,4.123,1747,3.23,1748,6.15,1749,3.23,1750,4.726,1751,4.726,1752,3.23,1753,4.726,1754,6.15,1755,4.875,1756,3.23,1757,5.589,1758,3.23,1759,4.726,1760,3.23,1761,3.23,1762,3.23,1763,3.23,1764,4.848,1765,4.875,1766,3.23,1767,3.23,1768,3.23,1769,2.546,1770,4.726,1771,3.23,1772,2.343,1773,3.23,1774,2.818,1775,2.343]],["title/modules/FiltersContentModule.html",[0,1.232,1776,2.755]],["body/modules/FiltersContentModule.html",[2,1.701,3,2.074,8,0.013,12,5.099,18,2.298,19,1.82,20,1.488,21,0.173,22,0.213,23,0.173,24,0.116,26,2.652,28,2.38,35,0.34,47,2.298,48,0.36,49,3.529,50,2.648,81,4.913,82,3.803,83,4.913,98,0.213,99,0.173,109,0.009,110,0.011,111,0.009,528,2.718,529,1.82,651,5.434,656,2.556,657,2.753,658,2.096,1532,5.434,1726,3.803,1727,4.086,1776,5.698,1777,4.913,1778,4.913,1779,5.632,1780,4.913,1781,5.632,1782,5.632,1783,5.632,1784,5.632,1785,4.639,1786,3.803]],["title/components/FiltersPopoverComponent.html",[130,0.557,170,1.274]],["body/components/FiltersPopoverComponent.html",[7,1.08,8,0.013,9,1.08,20,1.505,21,0.103,22,0.126,23,0.103,24,0.156,29,1.197,31,1.667,33,1.192,34,1.447,35,0.138,38,0.699,48,0.213,65,1.5,72,5.109,91,2.609,98,0.126,99,0.103,102,0.631,109,0.005,110,0.007,111,0.007,118,0.582,119,0.74,120,0.549,125,1.048,126,0.738,127,1.141,128,1.199,130,0.905,170,1.952,172,1.043,176,1.279,179,1.873,182,2.75,183,1.802,185,1.738,187,1.738,188,1.738,191,1.779,195,4.219,196,1.505,201,3.958,205,2.019,213,2.488,216,1.157,219,0.529,228,3.54,231,1.118,251,0.826,252,1.65,289,2.423,291,3.068,314,2.504,315,0.773,316,1.941,321,1.243,324,6.041,334,1.505,342,2.895,344,3.513,352,2.937,353,3.27,374,1.243,392,2.277,394,3.27,416,0.799,417,1.04,418,0.747,442,1.243,443,1.08,447,1.199,449,1.08,451,2.016,476,2.658,497,2.423,505,1.243,506,1.565,507,1.565,508,1.243,509,2.325,510,1.243,511,1.243,512,1.243,513,1.08,514,1.243,515,1.08,516,1.243,517,1.08,518,1.802,519,1.08,520,1.118,521,1.243,522,1.243,523,1.08,524,1.243,525,1.08,526,1.199,527,1.243,528,1.08,529,2.688,530,1.243,531,1.08,532,1.243,533,1.08,534,1.243,535,1.08,536,1.243,537,1.118,538,1.243,539,1.08,540,1.243,541,1.08,542,1.243,543,1.08,544,1.199,545,1.243,546,1.08,547,1.08,548,1.08,549,1.243,550,1.08,551,0.975,552,1.243,553,1.08,554,1.243,555,1.243,556,2.045,558,0.947,562,3.21,570,2.277,594,2.569,603,2.256,611,2.184,631,2.256,633,2.097,634,1.243,635,1.64,637,2.423,646,2.019,702,3.965,779,2.488,833,2.762,861,3.54,874,3.227,876,1.892,926,3.503,931,2.467,959,2.569,966,3.609,983,2.797,1052,3.27,1056,1.997,1180,3.27,1331,3.513,1332,1.997,1333,3.068,1383,2.927,1385,2.927,1386,1.892,1389,1.997,1390,2.609,1403,2.277,1410,4.22,1423,1.716,1425,2.609,1429,1.997,1435,2.914,1490,3.758,1505,3.366,1508,2.256,1512,3.27,1513,3.817,1519,3.513,1524,2.116,1544,2.423,1726,5.109,1729,5.453,1730,3.817,1735,4.97,1736,4.97,1737,4.225,1738,4.97,1755,2.914,1765,5.451,1769,2.633,1772,2.423,1787,2.914,1788,5.697,1789,4.843,1790,5.697,1791,6.248,1792,6.248,1793,5.697,1794,3.34,1795,5.451,1796,4.843,1797,3.34,1798,4.225,1799,4.225,1800,4.225,1801,3.34,1802,3.34,1803,3.34,1804,4.843,1805,3.34,1806,6.248,1807,3.34,1808,3.34,1809,3.34,1810,5.697,1811,3.34,1812,3.34,1813,4.843,1814,3.34,1815,3.34,1816,3.34,1817,3.34,1818,4.843,1819,3.34,1820,3.34,1821,3.34]],["title/modules/FiltersPopoverModule.html",[0,1.232,13,2.755]],["body/modules/FiltersPopoverModule.html",[2,1.776,3,2.129,8,0.013,13,5.634,18,2.36,19,1.902,20,1.554,21,0.181,22,0.222,23,0.181,24,0.121,26,2.723,28,2.444,35,0.331,47,2.36,48,0.376,49,3.623,50,2.766,72,3.973,98,0.222,99,0.181,109,0.009,110,0.011,111,0.009,170,2.64,171,5.133,529,2.28,656,2.625,657,2.826,658,2.189,1726,3.973,1727,4.268,1776,5.49,1822,5.133,1823,5.133,1824,5.884,1825,5.133,1826,5.884,1827,5.884]],["title/classes/FlatNode.html",[99,0.126,1828,3.216]],["body/classes/FlatNode.html",[8,0.013,21,0.14,22,0.171,23,0.14,24,0.163,29,1.48,31,1.736,33,1.491,35,0.188,65,0.828,98,0.171,99,0.14,102,0.857,109,0.007,110,0.009,111,0.007,118,0.463,119,0.915,120,1.294,125,1.542,126,0.828,127,1.093,130,0.817,136,1.751,190,3.442,193,1.581,196,2.08,197,3.483,205,1.935,210,1.808,213,3.909,219,1.174,226,1.45,249,2.012,250,1.581,251,1.762,253,1.159,315,1.385,317,2.939,334,1.198,416,1.432,417,1.093,418,1.339,443,2.546,558,1.31,578,2.197,772,4.043,931,2.902,1490,3.796,1572,5.223,1628,4.719,1828,5.618,1829,3.291,1830,6.871,1831,3.957,1832,4.319,1833,5.283,1834,5.846,1835,4.536,1836,4.916,1837,6.009,1838,4.536,1839,7.019,1840,7.97,1841,4.536,1842,5.223,1843,4.536,1844,4.536,1845,5.987,1846,4.536,1847,5.987,1848,4.536,1849,4.536,1850,5.987,1851,4.536,1852,4.536,1853,5.987,1854,4.719,1855,4.536,1856,4.536,1857,4.536,1858,4.536]],["title/components/HeaderComponent.html",[130,0.557,531,1.319]],["body/components/HeaderComponent.html",[7,1.245,8,0.013,9,1.245,21,0.19,22,0.145,23,0.119,24,0.157,31,1.664,35,0.159,38,0.806,48,0.246,65,1.525,94,2.602,98,0.145,99,0.119,102,1.013,109,0.006,110,0.008,111,0.008,118,0.393,121,4.729,122,4.858,124,4.858,125,1.442,126,0.794,127,1.216,128,1.383,130,0.841,170,1.203,172,1.203,176,1.416,179,1.74,182,2.789,183,1.994,185,1.924,187,1.924,188,1.924,196,1.628,211,4.833,212,2.887,216,1.335,219,0.849,231,1.289,247,4.858,252,1.416,298,3.396,301,1.434,312,3.888,314,2.806,321,1.434,334,1.416,369,2.343,374,1.434,387,3.396,397,4.675,399,5.376,417,0.978,430,2.897,442,1.434,443,1.245,447,1.383,449,1.245,451,2.231,476,2.905,505,1.434,506,1.732,507,1.732,508,1.434,509,2.479,510,1.434,511,1.434,512,1.434,513,1.245,514,1.434,515,1.245,516,1.434,517,1.245,518,1.994,519,1.245,520,1.289,521,1.434,522,1.434,523,1.245,524,1.434,525,1.245,526,1.383,527,1.434,528,1.245,529,2.263,530,1.434,531,2.153,532,1.434,533,1.245,534,1.434,535,1.245,536,1.434,537,1.289,538,1.434,539,1.245,540,1.434,541,1.245,542,1.434,543,1.245,544,1.383,545,1.434,546,1.245,547,1.245,548,1.245,549,1.434,550,1.245,551,1.125,552,1.434,553,1.245,554,1.434,555,1.434,556,1.383,558,0.753,562,3.422,570,2.52,589,3.037,594,3.158,608,3.888,611,2.779,634,1.994,636,2.753,638,3.204,639,2.303,641,3.158,646,2.153,702,3.204,837,4.675,883,3.166,904,2.303,925,2.602,926,1.891,959,3.158,975,2.602,985,3.271,1332,3.204,1340,4.593,1381,3.32,1382,3.491,1383,1.979,1385,3.166,1386,2.183,1387,3.037,1389,2.303,1390,2.075,1402,2.602,1404,2.075,1407,2.795,1429,3.684,1479,3.204,1505,2.887,1510,2.602,1524,2.441,1525,2.795,1730,4.225,1764,4.858,1859,3.361,1860,5.812,1861,6.325,1862,6.663,1863,3.619,1864,6.163,1865,5.36,1866,6.163,1867,6.163,1868,3.853,1869,3.853,1870,4.471,1871,3.853,1872,5.36,1873,3.853,1874,3.853,1875,3.853,1876,3.853,1877,5.36,1878,3.361,1879,3.853,1880,3.853,1881,5.36,1882,3.853,1883,2.795,1884,3.853,1885,3.853,1886,3.853,1887,3.853,1888,3.037,1889,3.853,1890,3.853,1891,3.853,1892,3.853,1893,3.853,1894,3.853,1895,3.853,1896,2.441]],["title/modules/HeaderModule.html",[0,1.232,993,2.755]],["body/modules/HeaderModule.html",[2,1.781,3,2.133,8,0.013,18,2.364,19,1.907,20,1.558,21,0.182,22,0.223,23,0.182,24,0.122,26,2.727,28,2.044,35,0.34,47,2.364,48,0.377,49,3.629,50,2.774,54,5.569,55,4.651,98,0.223,99,0.182,109,0.009,110,0.011,111,0.009,531,2.733,656,2.629,657,2.831,658,2.196,993,5.554,1785,4.771,1786,3.984,1897,5.147,1898,5.147,1899,5.147,1900,5.9,1901,7.065,1902,5.9,1903,5.9]],["title/interfaces/IconDefinition.html",[112,0.557,1904,2.96]],["body/interfaces/IconDefinition.html",[8,0.013,21,0.119,22,0.146,23,0.119,24,0.08,33,1.395,34,0.808,35,0.308,48,0.247,50,1.814,57,2.445,58,1.983,98,0.203,99,0.119,102,0.729,103,1.292,109,0.006,110,0.008,111,0.006,112,0.527,114,1.291,116,1.547,118,0.394,119,0.82,120,1.282,125,1.161,126,0.712,127,1.385,191,2.266,193,1.629,210,1.863,212,4.317,213,2.757,219,0.85,226,1.642,236,2.231,249,1.09,250,1.019,251,1.793,253,0.986,259,1.821,291,3.561,315,1.241,318,3.042,371,1.671,402,1.241,417,1.472,418,0.864,481,2.776,506,2.571,558,0.755,577,0.954,602,5.084,624,2.891,668,2.757,670,2.757,671,2.523,672,1.983,674,1.983,675,1.814,861,3.04,1023,3.042,1027,4.23,1090,2.8,1159,2.307,1204,2.606,1207,5.981,1208,4.502,1213,4.503,1218,5.77,1219,5.084,1220,5.398,1221,5.256,1222,3.893,1223,4.503,1225,3.624,1352,3.624,1353,3.208,1574,2.8,1583,3.042,1904,5.398,1905,2.8,1906,3.042,1907,4.681,1908,5.817,1909,5.256,1910,5.382,1911,4.23,1912,3.367,1913,2.445,1914,6.328,1915,3.367,1916,4.23,1917,3.367,1918,3.367,1919,2.187,1920,3.367,1921,3.042,1922,3.367,1923,3.367,1924,3.367,1925,4.681,1926,4.23,1927,3.367,1928,3.367,1929,3.367,1930,3.367,1931,3.367,1932,4.681,1933,3.367,1934,3.367,1935,3.367,1936,3.367,1937,3.042,1938,3.367,1939,3.367,1940,5.382,1941,3.367,1942,3.042,1943,3.367,1944,3.367,1945,3.367,1946,3.367,1947,3.367,1948,3.367,1949,3.367,1950,3.367,1951,3.367,1952,3.367,1953,3.367,1954,3.367,1955,3.367]],["title/injectables/IconRegistryState.html",[402,0.944,1913,2.585]],["body/injectables/IconRegistryState.html",[8,0.013,21,0.108,22,0.132,23,0.108,24,0.145,29,1.24,31,1.513,33,1.549,34,0.734,35,0.299,48,0.224,50,1.649,57,2.222,58,1.801,98,0.189,99,0.108,102,0.663,103,1.26,109,0.005,110,0.008,111,0.005,112,0.479,116,2.01,118,0.358,120,1.189,125,1.383,126,0.722,127,1.234,191,2.313,193,1.857,210,2.041,212,4.061,213,1.801,219,0.556,226,1.602,236,2.353,249,1.416,250,1.325,251,1.738,253,1.282,259,2.088,291,2.875,315,1.354,318,3.954,371,2.172,402,1.16,403,1.722,416,1.617,417,1.468,418,0.785,481,2.661,506,2.436,558,1.25,577,1.24,602,5.372,624,3.442,668,3.008,670,2.576,671,2.358,672,1.801,674,1.801,675,1.649,744,1.46,861,1.987,1023,3.954,1027,4.615,1090,3.639,1159,2.096,1204,4.749,1207,5.942,1208,4.472,1213,5,1218,5.372,1219,4.636,1220,5.372,1221,3.954,1222,2.544,1223,4.315,1225,3.387,1352,4.315,1353,3.82,1574,3.639,1583,3.954,1904,5.764,1905,5.102,1906,2.764,1907,3.059,1908,4.375,1909,3.954,1910,6.135,1911,5.037,1912,3.059,1913,3.178,1914,6.671,1915,4.375,1916,5.037,1917,4.375,1918,4.375,1919,3.317,1920,3.059,1921,2.764,1922,3.059,1923,3.059,1924,4.375,1925,5.574,1926,5.037,1927,4.375,1928,3.059,1929,4.375,1930,5.574,1931,4.375,1932,4.375,1933,3.059,1934,3.059,1935,3.059,1936,3.059,1937,2.764,1938,3.059,1939,3.059,1940,5.108,1941,3.059,1942,2.764,1943,3.059,1944,3.059,1945,3.059,1946,5.108,1947,3.059,1948,3.059,1949,3.059,1950,3.059,1951,3.059,1952,3.059,1953,4.375,1954,5.108,1955,3.059,1956,5.016,1957,3.507,1958,3.507,1959,3.507,1960,3.507,1961,3.507,1962,3.507,1963,3.507,1964,3.507]],["title/classes/InitializationState.html",[99,0.126,1965,3.216]],["body/classes/InitializationState.html",[8,0.013,20,0.925,21,0.067,22,0.083,23,0.067,24,0.127,29,0.865,31,1.309,33,1.224,34,1.514,35,0.227,48,0.14,65,0.639,98,0.083,99,0.135,100,0.784,102,1.036,103,1.15,109,0.003,110,0.005,111,0.003,118,0.223,119,0.535,125,1.521,126,0.624,128,0.784,129,2.218,130,0.798,131,2.364,145,0.731,172,1.368,176,0.577,179,2.276,182,0.731,183,0.813,185,0.784,187,0.784,188,0.784,190,2.25,191,1.994,193,0.925,205,1.986,208,3.898,210,2.084,213,1.798,219,0.973,226,1.63,229,1.384,236,2.558,249,0.617,250,0.577,251,1.519,253,0.558,259,2.153,261,2.218,278,1.475,291,3.389,295,1.983,307,0.875,315,1.159,316,1.403,317,2.872,321,1.303,334,1.886,341,1.306,344,2.54,345,2.759,392,2.059,394,2.364,416,0.837,418,1.226,432,3.786,433,3.786,434,2.25,435,3.043,436,2.618,437,2.775,438,2.775,450,2.953,476,2.007,481,0.91,506,1.131,507,1.986,551,0.638,556,0.784,558,0.427,562,2.25,577,0.54,578,0.956,594,0.985,606,3.383,607,2.259,608,1.585,611,2.77,634,2.725,646,2.367,755,2.759,756,1.886,757,1.906,759,2.007,762,2.059,763,1.306,766,3.178,768,1.722,769,1.177,778,1.578,779,1.798,780,1.585,781,1.403,784,1.755,786,1.906,788,1.585,790,1.475,792,0.946,796,1.475,800,1.578,802,1.384,803,1.177,817,2.54,818,1.585,821,3.054,825,1.177,833,2.086,840,3.817,841,3.44,847,1.384,848,1.722,849,1.906,850,1.585,853,3.054,859,1.585,874,1.983,882,1.906,906,1.722,909,1.722,916,4.126,921,1.585,924,1.906,925,4.149,926,1.719,927,1.906,928,1.722,937,1.906,938,1.722,939,1.238,944,2.093,945,1.384,960,2.54,966,2.218,977,1.306,983,3.505,1061,1.585,1067,1.238,1068,2.093,1079,2.093,1216,1.722,1344,1.585,1364,5.103,1488,1.906,1505,1.177,1509,1.722,1511,3.977,1591,1.906,1601,1.306,1637,1.722,1647,1.906,1829,1.585,1965,3.453,1966,1.585,1967,3.501,1968,4.38,1969,6.144,1970,5.009,1971,5.009,1972,5.009,1973,3.501,1974,4.38,1975,2.185,1976,6.902,1977,4.38,1978,2.185,1979,2.185,1980,2.185,1981,2.185,1982,2.185,1983,4.38,1984,2.185,1985,2.185,1986,1.906,1987,3.821,1988,5.36,1989,5.191,1990,3.821,1991,3.821,1992,5.103,1993,3.821,1994,4.782,1995,3.054,1996,3.821,1997,3.453,1998,3.949,1999,3.054,2000,4.37,2001,3.501,2002,2.185,2003,2.185,2004,2.185,2005,2.185,2006,2.185,2007,2.185,2008,2.185,2009,2.185,2010,3.501,2011,2.185,2012,3.501,2013,2.185,2014,2.185,2015,2.185,2016,1.722,2017,5.482,2018,2.185,2019,2.185,2020,2.185,2021,3.821,2022,1.906,2023,3.054,2024,3.501,2025,2.185,2026,5.009,2027,2.185,2028,3.501,2029,2.185,2030,2.185,2031,2.185,2032,4.38,2033,2.185,2034,2.185,2035,2.185,2036,2.775,2037,2.185,2038,4.38,2039,2.185,2040,2.185,2041,3.054,2042,2.185,2043,2.185,2044,2.185,2045,5.85,2046,3.501,2047,5.009,2048,3.501,2049,3.501,2050,2.185,2051,4.38,2052,3.501,2053,2.185,2054,2.185,2055,2.185,2056,2.185,2057,3.501,2058,3.501,2059,2.185,2060,2.185,2061,4.38,2062,2.185,2063,2.185,2064,2.185,2065,2.185,2066,3.501,2067,2.185,2068,2.185,2069,1.906,2070,2.185,2071,2.185,2072,2.185,2073,4.37,2074,4.38,2075,5.009,2076,3.501,2077,3.501,2078,2.185,2079,2.185,2080,2.185,2081,2.185,2082,2.185,2083,2.185,2084,1.906,2085,1.906,2086,2.185,2087,3.501,2088,2.185,2089,2.185,2090,2.185,2091,2.185,2092,2.185,2093,2.185,2094,2.185,2095,2.185,2096,1.475,2097,2.185,2098,2.185,2099,3.501,2100,2.185,2101,2.185,2102,2.185,2103,2.185,2104,2.185,2105,2.185,2106,3.501,2107,4.38,2108,2.185,2109,2.185,2110,3.501,2111,2.185,2112,2.185,2113,2.185,2114,2.185,2115,2.185,2116,1.722,2117,2.185,2118,2.185,2119,2.185]],["title/interfaces/ListResult.html",[112,0.557,2120,2.585]],["body/interfaces/ListResult.html",[8,0.013,21,0.188,22,0.231,23,0.188,24,0.126,35,0.252,65,1.114,98,0.231,109,0.009,110,0.011,111,0.009,112,0.833,114,2.043,118,0.623,119,1.101,120,1.302,125,1.66,126,0.846,127,1.401,136,2.357,301,2.95,354,3.574,578,2.095,664,4.739,1033,6.248,1327,5.751,2120,4.568,2121,5.326,2122,5.326]],["title/injectables/ListResultsState.html",[164,2.198,402,0.944]],["body/injectables/ListResultsState.html",[8,0.013,21,0.114,22,0.14,23,0.114,24,0.163,29,1.286,31,1.749,33,1.497,34,1.651,35,0.323,46,4.623,48,0.236,65,0.674,66,1.48,98,0.197,99,0.114,100,1.326,102,1.418,103,1.113,109,0.01,110,0.008,111,0.011,112,0.504,116,2.085,118,0.377,119,0.795,120,1.133,126,0.785,127,1.194,137,3.91,142,3.297,145,1.236,146,1.99,147,1.99,149,1.426,162,3.854,164,2.804,166,4.718,191,1.154,193,1.375,210,1.115,226,0.799,236,2.641,249,1.469,250,1.375,251,1.286,252,1.728,253,1.539,256,4.276,259,2.049,295,2.948,301,2.662,315,1.204,352,3.075,354,2.346,357,1.538,369,2.188,402,1.204,403,1.814,416,1.649,417,1.306,418,1.164,558,1.018,577,1.617,662,1.898,664,2.208,668,3.095,669,1.426,670,2.673,671,2.447,672,1.898,673,3.602,674,1.898,675,1.737,680,4.122,701,3.602,706,2.208,707,2.093,709,2.958,729,2.495,735,3.602,744,1.538,914,1.99,1028,4.831,1042,2.495,1081,2.34,1159,2.208,1327,4.371,1601,3.111,1863,2.495,2120,5.041,2123,6.222,2124,2.912,2125,5.19,2126,5.222,2127,5.204,2128,5.204,2129,5.204,2130,5.204,2131,5.706,2132,3.223,2133,5.204,2134,3.775,2135,4.371,2136,4.069,2137,4.54,2138,3.694,2139,4.54,2140,3.694,2141,2.555,2142,3.694,2143,4.54,2144,3.694,2145,3.694,2146,3.694,2147,3.694,2148,3.775,2149,3.694,2150,4.54,2151,3.694,2152,4.54,2153,3.694,2154,3.514,2155,2.912,2156,2.34,2157,3.223,2158,2.495,2159,2.495,2160,2.68,2161,3.223,2162,3.223,2163,3.223,2164,2.68,2165,2.68,2166,2.34,2167,2.68,2168,2.68,2169,2.495,2170,2.68,2171,2.68,2172,2.68,2173,2.68,2174,3.223,2175,2.68,2176,3.223,2177,3.223,2178,3.223,2179,3.223,2180,3.223,2181,3.223,2182,3.223,2183,3.223,2184,3.223,2185,3.223,2186,3.223,2187,3.223,2188,2.68]],["title/interfaces/ListResultsStateModel.html",[112,0.557,2160,2.96]],["body/interfaces/ListResultsStateModel.html",[8,0.013,21,0.137,22,0.168,23,0.137,24,0.092,34,1.582,35,0.334,46,4.396,48,0.283,65,0.81,66,1.778,98,0.223,99,0.137,100,1.592,102,1.335,103,1.202,109,0.009,110,0.009,111,0.01,112,0.605,114,1.484,116,1.778,118,0.453,119,0.901,120,0.969,126,0.63,127,1.29,137,3.526,142,3.737,145,1.484,146,2.39,147,2.39,149,1.712,162,3.57,164,2.39,166,2.652,191,1.386,193,1.172,210,1.339,226,0.96,236,2.582,249,1.252,250,1.172,251,1.458,252,1.558,253,1.507,256,3.962,259,1.929,295,2.513,301,2.737,352,2.773,354,2.66,357,1.847,369,1.974,402,1.364,417,0.81,577,1.458,662,2.279,664,2.652,668,3.03,669,1.712,670,3.03,671,2.773,672,2.279,673,3.526,674,2.279,675,2.085,680,3.962,701,2.652,706,2.652,707,2.513,709,2.896,729,2.996,735,3.962,914,2.39,1028,4.476,1042,2.996,1081,2.81,1159,2.652,1327,4.808,1601,2.652,1863,2.996,2120,5.027,2123,3.497,2124,3.497,2125,5.599,2126,5.412,2131,3.87,2134,3.218,2135,4.28,2136,3.984,2137,3.87,2139,3.87,2141,2.178,2143,3.87,2148,3.218,2150,3.87,2152,3.87,2154,2.996,2155,3.497,2156,2.81,2157,3.87,2158,2.996,2159,2.996,2160,4.28,2161,3.87,2162,3.87,2163,3.87,2164,3.218,2165,3.218,2166,2.81,2167,3.218,2168,3.218,2169,2.996,2170,3.218,2171,3.218,2172,3.218,2173,3.218,2174,3.87,2175,3.218,2176,3.87,2177,3.87,2178,3.87,2179,3.87,2180,3.87,2181,3.87,2182,3.87,2183,3.87,2184,3.87,2185,3.87,2186,3.87,2187,3.87,2188,3.218]],["title/interfaces/Message.html",[112,0.557,784,1.635]],["body/interfaces/Message.html",[8,0.013,21,0.116,22,0.307,23,0.116,24,0.078,33,1.454,34,1.105,35,0.252,38,1.105,48,0.241,98,0.272,99,0.163,100,1.355,102,1.152,103,0.899,109,0.006,110,0.008,111,0.006,112,0.721,114,1.262,118,0.385,119,0.807,120,0.868,125,0.816,126,0.742,143,4.301,145,1.262,149,1.457,190,1.938,193,0.997,205,1.22,210,1.139,219,1.101,226,1.504,249,1.721,250,0.997,251,1.895,252,1.395,253,0.964,259,1.967,314,1.512,315,0.873,317,2.992,334,0.997,398,2.256,402,1.222,421,2.846,449,1.97,481,2.894,494,3.861,558,0.738,569,2.138,577,1.865,578,1.898,596,4.155,669,3.031,679,3.392,756,2.846,759,2.117,762,3.652,769,2.033,777,1.701,778,3.54,784,3.386,792,1.634,800,2.382,802,2.391,831,2.256,847,3.347,897,2.391,945,3.347,969,3.88,989,1.938,999,3.567,1067,2.138,1079,2.256,1083,4.994,1308,2.992,1461,2.256,1462,3.158,1919,2.138,2036,3.861,2096,2.548,2141,3.536,2189,2.391,2190,4.459,2191,4.183,2192,2.992,2193,3.832,2194,2.548,2195,3.347,2196,2.737,2197,2.737,2198,4.155,2199,3.643,2200,2.737,2201,3.567,2202,2.391,2203,2.548,2204,2.737,2205,3.347,2206,2.737,2207,2.737,2208,2.737,2209,2.737,2210,2.737,2211,2.737,2212,3.832,2213,2.737,2214,2.737,2215,2.737,2216,2.737,2217,3.567,2218,2.737,2219,3.832,2220,2.737,2221,2.737,2222,2.737,2223,2.737,2224,2.737,2225,2.737,2226,2.737,2227,2.737,2228,4.422,2229,2.737,2230,2.737,2231,2.737,2232,2.737,2233,2.737,2234,2.737,2235,2.737,2236,2.737,2237,2.737]],["title/classes/MessageChannel.html",[99,0.126,800,1.839]],["body/classes/MessageChannel.html",[8,0.013,21,0.102,22,0.306,23,0.102,24,0.151,29,1.194,31,1.595,33,1.582,34,1.19,35,0.235,38,1.011,48,0.213,98,0.261,99,0.149,100,1.195,102,1.075,103,0.822,109,0.005,110,0.007,111,0.005,112,0.659,118,0.34,119,0.738,120,1.135,125,0.72,126,0.761,143,4.449,145,1.114,149,1.285,190,2.921,193,1.276,205,1.076,210,1.005,219,1.095,226,1.433,249,1.87,250,0.879,251,1.84,252,0.879,253,1.235,259,2.064,314,1.334,315,1.118,317,3.392,334,1.276,398,1.99,402,1.118,416,1.492,417,1.139,418,0.745,421,2.603,449,1.838,481,2.758,494,4.378,558,1.295,569,1.886,577,1.805,578,1.887,596,3.96,669,2.956,679,3.662,756,2.603,759,1.936,762,3.674,769,1.794,777,2.179,778,3.653,784,3.377,792,1.442,800,2.564,802,2.11,831,1.99,847,3.061,897,3.061,945,3.061,969,3.934,989,2.482,999,3.263,1067,2.737,1079,1.99,1083,4.814,1308,2.737,1461,1.99,1462,2.888,1829,2.416,1919,1.886,2036,4.378,2096,3.263,2141,3.063,2189,2.11,2190,4.474,2191,4.197,2192,1.886,2193,2.416,2194,2.249,2195,3.061,2196,2.416,2197,2.416,2198,3.96,2199,3.399,2200,2.416,2201,3.263,2202,2.11,2203,2.249,2204,3.505,2205,4.197,2206,3.505,2207,3.505,2208,3.505,2209,3.505,2210,2.416,2211,2.416,2212,3.505,2213,3.505,2214,3.505,2215,4.526,2216,2.416,2217,4.213,2218,3.505,2219,3.505,2220,3.505,2221,3.505,2222,2.416,2223,4.526,2224,2.416,2225,2.416,2226,2.416,2227,2.416,2228,4.126,2229,2.416,2230,2.416,2231,2.416,2232,2.416,2233,2.416,2234,2.416,2235,2.416,2236,2.416,2237,2.416,2238,4.832,2239,4.832,2240,4.832,2241,3.33,2242,4.832,2243,3.33,2244,3.33,2245,3.33,2246,3.33,2247,3.33]],["title/injectables/MessageService.html",[402,0.944,759,1.635]],["body/injectables/MessageService.html",[8,0.013,21,0.109,22,0.303,23,0.109,24,0.146,29,1.25,31,1.519,33,1.52,34,1.233,35,0.244,38,1.058,48,0.227,98,0.267,99,0.156,100,1.274,102,1.114,103,0.861,109,0.005,110,0.008,111,0.005,112,0.69,118,0.362,119,0.773,120,1.055,125,0.768,126,0.725,143,4.288,145,1.187,149,1.37,190,1.823,193,0.937,205,1.147,210,1.071,219,1.151,226,1.469,249,1.814,250,1.336,251,1.868,252,0.937,253,1.292,259,2.094,314,1.422,315,1.17,317,2.893,334,0.937,398,2.121,402,1.17,403,1.742,416,1.209,417,0.923,418,0.794,421,2.725,449,1.905,481,2.827,494,3.734,558,1.152,569,2.01,577,1.937,578,1.609,596,4.44,669,2.867,679,3.489,756,2.725,759,2.721,762,3.742,769,3.461,777,1.6,778,3.589,784,3.38,792,2.19,800,2.657,802,3.204,831,3.023,847,3.204,897,2.248,945,3.204,969,3.803,989,1.823,999,3.415,1067,2.01,1079,3.023,1083,4.586,1308,3.339,1461,2.121,1462,3.023,1919,3.339,2036,3.734,2096,2.396,2141,2.893,2189,2.248,2190,3.98,2191,3.734,2192,2.01,2193,2.574,2194,2.396,2195,3.204,2196,2.574,2197,2.574,2198,4.22,2199,4.06,2200,2.574,2201,3.415,2202,2.248,2203,2.396,2204,2.574,2205,3.204,2206,2.574,2207,2.574,2208,2.574,2209,2.574,2210,2.574,2211,2.574,2212,3.669,2213,2.574,2214,2.574,2215,2.574,2216,2.574,2217,3.415,2218,2.574,2219,3.669,2220,2.574,2221,2.574,2222,2.574,2223,2.574,2224,2.574,2225,3.669,2226,2.574,2227,2.574,2228,4.275,2229,2.574,2230,2.574,2231,2.574,2232,2.574,2233,3.669,2234,2.574,2235,3.669,2236,3.669,2237,2.574,2248,4.412,2249,3.548,2250,5.058,2251,3.548,2252,3.548,2253,3.548]],["title/interfaces/MessageServiceConfig.html",[112,0.557,2199,2.439]],["body/interfaces/MessageServiceConfig.html",[8,0.013,21,0.117,22,0.302,23,0.117,24,0.079,33,1.46,34,1.114,35,0.254,38,1.114,48,0.244,98,0.273,99,0.164,100,1.37,102,1.159,103,0.906,109,0.006,110,0.008,111,0.006,112,0.727,114,1.277,118,0.39,119,0.814,120,0.875,125,1.327,126,0.708,143,4.309,145,1.277,149,1.474,190,1.961,193,1.008,205,1.721,210,1.153,219,1.106,226,1.51,249,1.731,250,1.008,251,1.9,252,1.008,253,0.975,259,1.974,314,1.53,315,0.883,317,3.011,334,1.008,398,2.282,402,1.232,421,2.869,449,1.982,481,2.906,494,3.886,558,0.747,569,3.017,577,1.9,578,1.675,596,4.322,669,2.921,679,3.409,756,2.869,759,2.134,762,3.614,769,2.057,777,1.721,778,3.579,784,3.37,792,1.653,800,2.401,802,2.419,831,2.282,847,3.374,897,2.419,945,3.374,969,3.76,989,1.961,999,3.596,1067,2.163,1079,2.282,1083,4.713,1308,3.017,1461,2.282,1462,3.184,1919,2.163,2036,3.886,2096,2.578,2141,3.011,2189,2.419,2190,4.142,2191,3.886,2192,2.163,2193,2.77,2194,2.578,2195,3.374,2196,2.77,2197,2.77,2198,4.322,2199,3.967,2200,3.864,2201,4.713,2202,2.419,2203,2.578,2204,2.77,2205,3.374,2206,2.77,2207,2.77,2208,2.77,2209,2.77,2210,2.77,2211,2.77,2212,3.864,2213,2.77,2214,2.77,2215,2.77,2216,2.77,2217,3.596,2218,2.77,2219,3.864,2220,2.77,2221,2.77,2222,2.77,2223,2.77,2224,2.77,2225,2.77,2226,2.77,2227,2.77,2228,4.449,2229,2.77,2230,2.77,2231,2.77,2232,2.77,2233,2.77,2234,2.77,2235,2.77,2236,2.77,2237,2.77]],["title/modules/OntologyExplorationModule.html",[0,1.232,14,2.755]],["body/modules/OntologyExplorationModule.html",[2,1.717,3,2.086,8,0.013,14,5.704,18,2.311,19,1.838,20,1.502,21,0.175,22,0.215,23,0.175,24,0.117,28,2.394,35,0.328,47,2.311,48,0.363,75,2.92,98,0.215,99,0.175,109,0.009,110,0.011,111,0.009,196,1.966,656,2.571,657,2.768,658,2.116,2254,4.96,2255,4.96,2256,4.96,2257,5.333,2258,5.685,2259,5.333,2260,3.063,2261,5.685,2262,3.221,2263,4.96,2264,4.124,2265,5.685,2266,3.399,2267,4.96]],["title/components/OntologySearchComponent.html",[130,0.557,533,1.319]],["body/components/OntologySearchComponent.html",[7,0.819,8,0.013,9,0.819,21,0.078,22,0.096,23,0.078,24,0.153,29,0.973,31,1.633,33,1.407,34,1.477,35,0.285,38,0.53,48,0.162,65,1.467,75,3.799,98,0.096,99,0.078,100,1.413,102,0.744,103,0.67,109,0.011,110,0.006,111,0.011,118,0.402,119,0.601,120,0.968,126,0.737,127,1.188,128,0.91,130,0.888,132,4.21,136,0.979,143,3.358,145,0.848,146,1.366,149,0.979,170,0.792,172,0.792,176,1.04,179,1.362,182,2.659,183,1.465,185,1.413,187,1.413,188,1.413,191,1.23,196,2.014,197,2.558,208,2.6,216,0.878,219,0.765,226,1.044,228,2.23,231,0.848,249,1.111,250,1.824,251,1.541,253,0.648,259,0.692,285,4.746,298,3.447,314,1.934,315,0.911,316,1.016,317,2.671,320,3.103,334,1.976,354,2.933,355,2.23,369,1.82,374,2.32,392,2.931,394,2.658,416,1.408,417,1.188,418,1.706,430,1.851,442,0.943,443,0.819,447,0.91,449,0.819,451,1.639,476,1.934,484,1.839,505,0.943,506,1.272,507,1.272,508,0.943,509,2.025,510,0.943,511,0.943,512,0.943,513,0.819,514,0.943,515,0.819,516,0.943,517,0.819,518,1.465,519,0.819,520,0.848,521,0.943,522,0.943,523,0.819,524,0.943,525,0.819,526,0.91,527,0.943,528,0.819,529,1.272,530,0.943,531,0.819,532,0.943,533,1.758,534,0.943,535,0.819,536,0.943,537,0.848,538,0.943,539,0.819,540,0.943,541,0.819,542,0.943,543,0.819,544,0.91,545,0.943,546,0.819,547,0.819,548,0.819,549,0.943,550,0.819,551,0.74,552,0.943,553,0.819,554,0.943,555,0.943,556,0.91,558,1.219,570,1.851,573,3.252,575,3.252,576,2.6,577,1.345,578,1.075,588,3.103,594,2.176,600,3.674,607,2.453,611,2.453,613,1.436,614,1.366,622,3.057,623,2.885,624,3.872,633,1.098,634,2.025,635,1.245,636,2.479,641,1.143,646,2.015,827,3.434,840,2.353,841,2.121,875,1.712,939,2.23,959,2.453,962,1.606,1040,2.212,1067,2.23,1077,3.804,1119,1.839,1138,3.434,1285,1.839,1352,2.658,1379,1.606,1380,1.606,1385,3.692,1386,3.337,1403,1.851,1404,1.366,1408,1.998,1425,3.623,1426,2.494,1429,1.516,1479,2.353,1489,2.856,1499,4.624,1500,4.296,1501,1.998,1503,1.998,1505,3.173,1507,1.998,1510,1.712,1522,3.103,1525,1.839,1580,2.856,1608,3.434,1714,2.212,1769,4.914,1775,1.839,1832,3.026,1836,3.447,1878,2.212,1888,1.998,2116,3.103,2141,1.933,2155,1.998,2156,1.606,2217,2.658,2260,3.984,2262,4.238,2268,2.212,2269,3.937,2270,3.434,2271,5.446,2272,4.826,2273,3.937,2274,4.826,2275,4.826,2276,6.725,2277,2.658,2278,6.505,2279,3.937,2280,3.937,2281,3.937,2282,3.937,2283,4.21,2284,2.535,2285,3.337,2286,3.937,2287,4.826,2288,4.643,2289,2.535,2290,2.535,2291,3.937,2292,3.434,2293,3.937,2294,4.766,2295,2.535,2296,3.937,2297,3.937,2298,2.212,2299,7.625,2300,3.937,2301,2.535,2302,3.937,2303,3.937,2304,3.103,2305,3.937,2306,6.234,2307,2.535,2308,3.434,2309,3.937,2310,3.937,2311,2.535,2312,5.441,2313,3.937,2314,3.937,2315,2.535,2316,3.937,2317,2.535,2318,4.826,2319,2.535,2320,3.937,2321,3.937,2322,2.535,2323,1.998,2324,2.212,2325,2.212,2326,2.212,2327,2.535,2328,2.535,2329,2.535,2330,2.535,2331,2.535,2332,1.998,2333,2.535,2334,2.535,2335,2.535,2336,2.535,2337,2.535,2338,2.535,2339,2.535,2340,2.535,2341,2.535,2342,2.535,2343,2.535,2344,2.535,2345,2.535,2346,2.535,2347,2.535,2348,2.535,2349,3.937,2350,3.937,2351,3.937,2352,3.937,2353,1.998,2354,2.535,2355,2.535,2356,3.937,2357,2.212]],["title/modules/OntologySearchModule.html",[0,1.232,2257,2.585]],["body/modules/OntologySearchModule.html",[2,1.747,3,2.108,8,0.013,18,2.336,19,1.87,20,1.528,21,0.178,22,0.219,23,0.178,24,0.119,26,2.696,28,2.005,35,0.342,47,2.336,48,0.37,49,3.587,50,2.72,75,2.973,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,196,1.528,533,2.727,656,2.599,657,2.798,658,2.153,1500,3.459,1537,5.504,1538,4.561,2257,5.19,2260,3.117,2262,3.278,2323,4.561,2324,5.048,2358,5.048,2359,5.048,2360,5.048,2361,5.787,2362,6.983,2363,6.983,2364,6.983,2365,6.983,2366,5.787,2367,5.787]],["title/injectables/OntologySearchService.html",[402,0.944,2285,2.311]],["body/injectables/OntologySearchService.html",[8,0.013,21,0.097,22,0.119,23,0.097,24,0.156,29,1.144,31,1.668,33,1.582,34,0.968,35,0.289,38,0.968,48,0.201,65,0.573,98,0.175,99,0.097,102,1.386,103,1.101,109,0.01,110,0.007,111,0.011,112,0.631,118,0.772,119,0.707,120,1.112,126,0.767,127,1.48,135,4.909,136,1.212,143,2.961,144,2.277,145,1.05,146,2.493,149,1.212,175,1.612,196,2.089,197,3.779,219,0.871,226,1.4,243,3.357,250,0.829,251,1.775,252,0.829,259,2.002,314,1.854,315,1.271,317,2.272,355,4.379,370,2.932,371,2.93,402,1.403,403,1.541,416,1.618,417,1.235,418,1.447,443,1.961,558,1.323,578,1.501,666,3.843,744,1.307,781,1.854,792,2.004,808,3.125,813,3.125,939,3.437,1029,4.401,1030,2.277,1068,2.766,1119,5.551,1355,2.474,1356,3.357,1404,3.268,1426,1.989,1479,1.876,1499,2.932,1580,4.401,1703,3.125,1832,4.036,1836,4.897,1854,5.662,1883,5.211,2156,1.989,2192,1.778,2262,4.284,2271,5.559,2277,4.57,2285,3.437,2288,2.474,2294,3.712,2304,3.648,2332,3.648,2353,3.648,2368,5.961,2369,2.474,2370,4.037,2371,4.037,2372,4.795,2373,5.662,2374,4.628,2375,4.628,2376,4.628,2377,4.628,2378,4.628,2379,3.139,2380,4.037,2381,4.037,2382,6.942,2383,3.139,2384,4.037,2385,4.037,2386,5.292,2387,4.037,2388,4.037,2389,3.139,2390,4.037,2391,4.037,2392,4.037,2393,3.139,2394,4.037,2395,3.139,2396,4.037,2397,4.037,2398,4.037,2399,3.139,2400,5.292,2401,4.037,2402,3.139,2403,4.037,2404,3.139,2405,3.139,2406,3.139,2407,2.738,2408,2.738,2409,4.795,2410,2.738,2411,2.474,2412,2.738,2413,2.738,2414,2.738,2415,2.738,2416,2.738,2417,2.738,2418,4.037,2419,2.738,2420,4.037,2421,4.037,2422,4.037,2423,4.037,2424,2.738,2425,2.738,2426,2.738,2427,2.738,2428,2.738,2429,2.738,2430,4.037,2431,4.037,2432,2.474,2433,2.738,2434,2.738]],["title/interfaces/OntologySelection.html",[112,0.557,156,2.755]],["body/interfaces/OntologySelection.html",[8,0.013,21,0.19,22,0.233,23,0.19,24,0.127,35,0.255,65,1.126,98,0.233,109,0.009,110,0.011,111,0.009,112,0.842,114,2.063,118,0.63,119,1.108,126,0.822,127,1.5,136,2.381,156,4.898,197,3.739,357,3.208,1836,5.039,2141,3.905,2435,5.38,2436,5.38,2437,6.269]],["title/components/OntologySelectionComponent.html",[130,0.557,535,1.319]],["body/components/OntologySelectionComponent.html",[7,1.07,8,0.013,9,1.07,21,0.102,22,0.125,23,0.102,24,0.161,29,1.19,31,1.73,33,1.007,34,1.302,35,0.273,38,0.693,48,0.212,65,1.503,75,4.01,88,3.049,91,2.592,98,0.125,99,0.102,100,1.728,102,0.626,103,0.564,109,0.005,110,0.007,111,0.01,118,0.338,119,0.735,120,0.931,121,3.828,125,1.041,126,0.825,127,1.136,128,1.189,130,1.044,133,2.61,135,4.113,136,1.278,156,4.202,157,2.889,158,5.166,170,1.034,172,1.034,176,1.644,179,1.6,182,2.747,183,1.791,185,1.728,187,1.728,188,1.728,190,2.472,191,1.503,193,1.271,196,2.223,198,5.436,199,4.198,216,1.147,219,0.525,231,1.108,249,1.359,250,1.271,251,1.19,252,1.271,253,1.23,307,1.928,314,1.928,348,3.793,352,2.262,353,3.25,354,3.287,355,1.876,369,2.082,416,1.356,417,1.207,442,1.232,443,2.578,447,1.189,449,1.07,451,2.004,476,2.979,505,1.232,506,1.555,507,1.555,508,1.232,509,2.316,510,1.232,511,1.232,512,1.232,513,1.07,514,1.232,515,1.07,516,1.232,517,1.07,518,1.791,519,1.07,520,1.108,521,1.232,522,1.232,523,1.07,524,1.232,525,1.07,526,1.189,527,1.232,528,1.07,529,1.555,530,1.232,531,1.07,532,1.232,533,1.07,534,1.232,535,2.011,536,1.232,537,2.082,538,1.232,539,1.07,540,1.232,541,1.07,542,1.232,543,1.07,544,1.189,545,1.232,546,1.07,547,1.07,548,1.07,549,1.232,550,1.07,551,0.967,552,1.232,553,1.07,554,1.232,555,1.232,556,1.189,558,1.109,562,2.472,570,2.262,577,1.401,594,2.556,607,2.17,611,2.17,702,4.359,744,1.379,779,3.197,1106,6.016,1176,3.25,1333,3.049,1348,4.198,1402,3.25,1426,3.049,1546,4.469,1559,3.793,1602,3.793,1603,4.905,1832,3.396,1836,3.942,2166,3.049,2260,4.205,2262,1.876,2264,5.663,2266,1.979,2270,4.945,2271,4.657,2277,3.828,2283,4.945,2285,4.381,2325,2.889,2326,2.889,2373,4.905,2411,2.61,2432,2.61,2438,2.889,2439,4.813,2440,5.669,2441,4.813,2442,5.669,2443,5.669,2444,5.669,2445,3.311,2446,4.813,2447,3.311,2448,3.311,2449,4.198,2450,3.311,2451,3.311,2452,3.311,2453,3.311,2454,4.813,2455,4.813,2456,3.311,2457,4.813,2458,3.311,2459,4.813,2460,3.311,2461,4.813,2462,3.311,2463,2.889,2464,3.311,2465,3.311,2466,3.311]],["title/modules/OntologySelectionModule.html",[0,1.232,2258,2.755]],["body/modules/OntologySelectionModule.html",[2,1.733,3,2.098,8,0.013,18,2.325,19,1.855,20,1.516,21,0.177,22,0.217,23,0.177,24,0.118,26,2.682,28,2.407,35,0.329,47,2.325,48,0.367,75,2.948,98,0.217,99,0.177,109,0.009,110,0.011,111,0.009,196,1.974,535,2.741,656,2.586,657,2.784,658,2.136,2257,5.121,2258,5.669,2259,5.121,2260,3.092,2262,3.251,2263,5.007,2264,4.164,2266,3.431,2267,5.007,2285,4.234,2467,5.007,2468,5.007,2469,5.74,2470,5.007,2471,5.74,2472,5.74]],["title/modules/OntologyTreeModule.html",[0,1.232,2259,2.585]],["body/modules/OntologyTreeModule.html",[2,1.75,3,2.11,8,0.013,18,2.338,19,1.873,20,1.531,21,0.178,22,0.219,23,0.178,24,0.12,26,2.698,28,2.008,35,0.342,47,2.338,48,0.37,49,3.59,50,2.724,54,5.509,55,4.568,65,1.058,66,2.322,75,2.977,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,196,1.531,537,2.823,656,2.601,657,2.801,658,2.156,1785,4.719,1786,3.913,2259,5.192,2260,3.122,2266,3.464,2463,5.055,2473,5.055,2474,5.055,2475,5.055,2476,5.795,2477,6.989,2478,5.795,2479,6.989]],["title/components/ResultsBrowserComponent.html",[130,0.557,539,1.319]],["body/components/ResultsBrowserComponent.html",[7,0.859,8,0.013,9,0.859,21,0.082,22,0.1,23,0.082,24,0.161,29,1.009,31,1.733,33,1.259,34,1.429,35,0.249,38,0.556,48,0.17,58,3.736,65,1.466,78,6,98,0.1,99,0.082,101,1.431,102,1.2,103,0.695,109,0.012,110,0.006,111,0.012,118,0.271,119,0.624,120,0.989,121,3.766,125,1.302,126,0.814,127,1.278,128,0.954,130,0.956,136,1.026,170,0.83,172,0.83,175,1.365,176,1.078,178,3.217,179,1.403,182,2.676,183,1.519,185,1.465,187,1.465,188,1.465,191,1.275,193,1.678,195,2.756,196,1.313,197,2.336,205,2.053,214,1.588,216,1.722,219,0.954,226,0.575,231,0.889,249,1.152,250,1.078,251,1.488,253,0.679,291,2.004,315,0.614,321,1.849,334,1.078,340,2.318,352,3.11,354,3.079,369,2.126,371,1.767,380,2.961,387,4.529,416,1.439,417,1.208,418,0.913,430,1.249,435,1.15,442,0.989,443,0.859,447,0.954,449,0.859,451,1.699,476,2.957,505,0.989,506,1.319,507,1.606,508,0.989,509,2.075,510,0.989,511,0.989,512,0.989,513,0.859,514,0.989,515,0.859,516,0.989,517,0.859,518,1.519,519,0.859,520,0.889,521,0.989,522,0.989,523,0.859,524,0.989,525,0.859,526,0.954,527,0.989,528,0.859,529,1.319,530,0.989,531,0.859,532,0.989,533,0.859,534,0.989,535,0.859,536,0.989,537,0.889,538,0.989,539,1.803,540,0.989,541,0.859,542,0.989,543,0.859,544,0.954,545,0.989,546,0.859,547,0.859,548,0.859,549,0.989,550,0.859,551,0.776,552,0.989,553,0.859,554,0.989,555,0.989,556,0.954,558,1.177,570,1.919,572,1.794,573,3.334,575,2.971,576,2.677,577,1.009,594,3.279,597,2.961,603,1.794,607,2.864,611,3.327,613,1.505,614,1.431,633,2.415,634,1.849,635,1.304,636,3.597,638,2.971,639,2.44,641,2.864,642,2.971,643,3.217,646,1.803,666,4.326,667,1.927,793,3.56,833,1.106,875,1.794,876,2.312,878,3.56,904,1.588,959,2.864,960,1.927,961,2.318,962,1.683,1031,2.318,1116,4.336,1176,2.756,1285,1.927,1312,4.663,1326,4.336,1333,2.586,1340,3.533,1343,3.217,1349,3.533,1379,1.683,1380,2.586,1381,1.431,1383,2.097,1390,1.431,1400,2.094,1403,1.919,1404,1.431,1405,4.336,1406,2.318,1410,1.505,1423,1.365,1429,3.334,1433,2.318,1505,2.199,1506,2.961,1574,2.961,1584,3.56,1661,3.56,1700,2.756,1775,1.927,1795,3.56,1799,3.56,2036,4.025,2120,1.683,2126,3.356,2141,1.304,2357,2.318,2480,2.318,2481,4.082,2482,5.577,2483,5.577,2484,4.082,2485,5.577,2486,4.082,2487,4.082,2488,4.97,2489,4.082,2490,4.97,2491,4.082,2492,4.082,2493,4.082,2494,4.97,2495,4.082,2496,6.018,2497,4.97,2498,4.97,2499,4.336,2500,4.97,2501,4.97,2502,4.082,2503,2.657,2504,2.657,2505,2.657,2506,2.657,2507,2.657,2508,4.082,2509,2.657,2510,2.657,2511,2.657,2512,4.082,2513,4.082,2514,2.657,2515,4.082,2516,2.657,2517,2.657,2518,2.657,2519,4.082,2520,2.657,2521,5.577,2522,4.082,2523,2.657,2524,4.082,2525,4.082,2526,2.657,2527,4.082,2528,4.97,2529,2.657,2530,7.003,2531,4.082,2532,4.082,2533,4.082,2534,3.56,2535,4.97,2536,2.657,2537,2.657,2538,2.657,2539,2.657,2540,2.657,2541,2.657,2542,2.657,2543,4.082,2544,4.082,2545,4.082,2546,4.082,2547,2.657,2548,4.082,2549,4.082,2550,5.577,2551,2.657,2552,2.657,2553,2.657,2554,2.657,2555,4.082,2556,2.657,2557,2.094]],["title/modules/ResultsBrowserModule.html",[0,1.232,15,2.755]],["body/modules/ResultsBrowserModule.html",[2,1.769,3,2.124,8,0.013,15,5.63,18,2.354,19,1.894,20,1.548,21,0.18,22,0.221,23,0.18,24,0.121,26,2.716,28,2.438,35,0.331,47,2.354,48,0.374,78,5.104,98,0.221,99,0.18,109,0.009,110,0.011,111,0.011,520,1.96,539,2.731,656,2.618,657,2.819,658,2.18,1312,3.502,1314,4.25,1443,5.485,2558,5.111,2559,5.111,2560,5.859,2561,5.111,2562,5.859,2563,7.035,2564,5.859,2565,5.859,2566,5.859]],["title/injectables/SceneState.html",[168,2.439,402,0.944]],["body/injectables/SceneState.html",[8,0.013,21,0.137,22,0.112,23,0.091,24,0.162,29,1.097,31,1.741,33,1.438,34,1.615,35,0.309,46,4.397,48,0.19,65,0.81,66,1.189,98,0.201,99,0.091,100,1.065,102,1.458,103,1.004,109,0.005,110,0.007,111,0.005,112,0.405,116,1.778,118,0.303,119,0.678,120,1.089,125,1.15,126,0.771,127,0.81,137,3.527,142,2.812,145,0.993,146,1.598,147,1.598,149,1.145,162,3.571,164,2.864,166,1.773,167,2.152,168,2.653,191,0.927,193,1.172,201,1.88,206,2.997,219,0.935,226,0.96,236,2.604,238,2.003,249,1.253,250,1.172,251,1.561,252,1.559,253,1.358,256,4.892,259,2.039,295,3.755,301,2.196,307,1.189,315,1.365,334,0.784,350,2.997,352,1.395,354,2.989,369,1.974,402,1.026,403,1.457,416,1.585,417,1.254,418,1.32,481,1.235,558,1.154,577,1.459,578,1.611,583,2.339,607,1.338,628,2.152,662,1.524,668,3.53,669,1.145,670,2.28,671,2.086,672,1.524,673,3.178,674,1.524,675,1.395,680,4.318,696,1.88,701,3.178,706,1.773,707,1.681,709,2.61,735,3.178,744,2.214,781,3.031,902,2.152,914,1.598,931,1.285,1028,4.477,1032,5.694,1041,2.152,1042,2.003,1081,1.88,1159,1.773,1180,2.003,1226,5.043,1243,2.152,1245,2.003,1273,2.152,1344,2.152,1349,1.88,1490,1.681,1601,2.653,1832,3.53,1833,2.339,1863,2.003,1896,1.88,2125,3.857,2126,3.59,2132,2.588,2134,3.219,2135,3.857,2136,3.59,2148,3.219,2154,3.985,2158,2.003,2159,2.003,2164,2.152,2165,2.152,2166,1.88,2167,2.152,2168,2.152,2169,2.997,2170,2.152,2171,2.152,2172,2.152,2173,2.152,2175,2.152,2188,3.219,2567,2.152,2568,5.148,2569,6.417,2570,6.163,2571,4.638,2572,4.438,2573,5.148,2574,4.438,2575,4.438,2576,4.438,2577,4.438,2578,2.967,2579,2.967,2580,5.148,2581,2.967,2582,3.871,2583,3.871,2584,3.871,2585,2.967,2586,2.967,2587,2.967,2588,6.302,2589,2.967,2590,4.281,2591,2.967,2592,2.967,2593,2.997,2594,2.967,2595,2.967,2596,2.967,2597,2.967,2598,3.871,2599,2.967,2600,3.871,2601,2.967,2602,3.871,2603,2.967,2604,3.871,2605,2.967,2606,2.152,2607,3.871,2608,2.152,2609,2.339,2610,2.152,2611,3.871,2612,3.871,2613,2.588,2614,2.588,2615,2.588,2616,2.588,2617,2.588,2618,3.871,2619,3.871,2620,5.148,2621,2.588,2622,4.638,2623,2.588,2624,2.588,2625,2.588,2626,2.588,2627,2.588,2628,2.588,2629,2.588,2630,2.339,2631,2.588,2632,2.588,2633,2.588,2634,2.588,2635,2.588,2636,2.588,2637,2.588,2638,2.588,2639,2.588,2640,2.588,2641,2.588,2642,2.588,2643,2.588,2644,2.588,2645,2.588,2646,2.588,2647,2.588,2648,2.588,2649,2.588,2650,2.588,2651,2.588,2652,2.588,2653,2.588,2654,2.588,2655,2.588,2656,2.588,2657,2.588,2658,2.588,2659,2.588,2660,2.588,2661,2.588,2662,2.588,2663,2.588,2664,2.588,2665,2.339,2666,2.588,2667,2.588,2668,2.588,2669,2.588,2670,2.588]],["title/interfaces/SceneStateModel.html",[112,0.557,2610,2.96]],["body/interfaces/SceneStateModel.html",[8,0.013,21,0.154,22,0.132,23,0.108,24,0.072,34,1.515,35,0.32,46,4.041,48,0.224,65,0.916,66,1.405,98,0.221,99,0.108,100,1.259,102,1.329,103,1.088,109,0.005,110,0.008,111,0.005,112,0.479,114,1.173,116,1.405,118,0.358,119,0.766,120,0.824,125,1.267,126,0.79,127,1.167,137,2.998,142,3.178,145,1.173,146,1.889,147,1.889,149,1.354,162,3.154,164,2.702,166,2.096,167,2.544,168,2.096,191,1.095,193,0.926,201,2.222,206,3.387,219,1.012,226,1.085,236,2.522,238,2.368,249,0.99,250,0.926,251,1.671,252,1.325,253,1.282,256,4.875,259,1.846,295,3.317,301,2.179,307,1.405,334,0.926,350,3.387,352,1.649,354,2.881,369,1.678,402,1.16,417,0.64,481,1.46,577,1.24,578,1.745,583,2.764,607,1.581,628,2.544,662,1.801,668,3.283,669,1.354,670,2.576,671,2.358,672,1.801,673,2.998,674,1.801,675,1.649,680,4.041,696,2.222,701,2.096,706,2.096,707,1.987,709,2.462,735,3.5,753,3.954,781,2.901,902,2.544,914,1.889,931,1.519,1028,3.954,1032,5.707,1041,2.544,1042,2.368,1081,2.222,1159,2.096,1180,2.368,1226,4.749,1243,2.544,1245,2.368,1273,2.544,1344,2.544,1349,2.222,1490,1.987,1601,2.096,1832,3.473,1833,2.764,1863,2.368,1896,2.222,2125,4.248,2126,2.368,2134,2.544,2135,3.639,2136,3.387,2148,2.544,2154,3.387,2158,2.368,2159,2.368,2164,2.544,2165,2.544,2166,2.222,2167,2.544,2168,2.544,2169,3.387,2170,2.544,2171,2.544,2172,2.544,2173,2.544,2175,2.544,2188,3.639,2567,2.544,2568,5.898,2569,6.671,2570,6.46,2571,3.059,2573,3.059,2580,4.375,2582,3.059,2583,3.059,2584,3.059,2588,6.576,2590,3.639,2593,2.368,2598,3.059,2600,3.059,2602,3.059,2604,3.059,2606,2.544,2607,4.375,2608,2.544,2609,2.764,2610,3.639,2611,5.898,2612,5.898,2613,3.059,2614,3.059,2615,3.059,2616,3.059,2617,3.059,2618,4.375,2619,4.375,2620,5.574,2621,3.059,2622,5.108,2623,3.059,2624,3.059,2625,3.059,2626,3.059,2627,3.059,2628,3.059,2629,3.059,2630,2.764,2631,3.059,2632,3.059,2633,3.059,2634,3.059,2635,3.059,2636,3.059,2637,3.059,2638,3.059,2639,3.059,2640,3.059,2641,3.059,2642,3.059,2643,3.059,2644,3.059,2645,3.059,2646,3.059,2647,3.059,2648,3.059,2649,3.059,2650,3.059,2651,3.059,2652,3.059,2653,3.059,2654,3.059,2655,3.059,2656,3.059,2657,3.059,2658,3.059,2659,3.059,2660,3.059,2661,3.059,2662,3.059,2663,3.059,2664,3.059,2665,2.764,2666,3.059,2667,3.059,2668,3.059,2669,3.059,2670,3.059]],["title/interfaces/SearchResult.html",[112,0.557,2294,2.755]],["body/interfaces/SearchResult.html",[8,0.013,21,0.119,22,0.146,23,0.119,24,0.08,33,1.466,34,0.808,35,0.308,38,0.808,48,0.247,65,0.705,98,0.203,99,0.119,102,1.166,103,1.193,109,0.011,110,0.008,111,0.012,112,0.842,114,1.291,118,0.812,119,0.82,126,0.748,127,1.424,135,4.475,136,1.49,143,2.891,144,2.8,145,1.291,146,2.891,149,1.49,175,1.983,196,2.004,197,3.707,219,0.85,226,1.516,243,2.8,250,1.417,251,1.876,252,1.417,259,1.685,317,1.895,355,4.215,370,2.445,371,2.671,402,1.427,418,0.864,443,1.734,558,0.755,578,1.821,666,3.4,781,1.547,792,1.671,808,2.606,813,2.606,939,3.04,1029,4.475,1030,2.8,1068,2.307,1119,5.263,1355,4.23,1356,2.8,1404,2.891,1426,3.4,1479,3.208,1499,2.445,1580,3.893,1703,2.606,1832,4.086,1836,4.995,1854,5.256,1883,5.263,2156,2.445,2192,3.04,2262,2.187,2271,5.569,2277,3.624,2285,3.04,2288,4.23,2294,4.166,2304,3.042,2332,3.042,2353,3.042,2368,3.042,2369,3.042,2370,3.367,2371,3.367,2372,3.367,2373,4.863,2380,3.367,2381,3.367,2382,6.878,2384,3.367,2385,3.367,2386,4.681,2387,3.367,2388,3.367,2390,3.367,2391,3.367,2392,3.367,2394,3.367,2396,3.367,2397,3.367,2398,3.367,2400,4.681,2401,3.367,2403,3.367,2407,3.367,2408,4.681,2409,6.328,2410,3.367,2411,3.042,2412,3.367,2413,3.367,2414,3.367,2415,3.367,2416,3.367,2417,3.367,2418,4.681,2419,3.367,2420,4.681,2421,4.681,2422,4.681,2423,4.681,2424,3.367,2425,3.367,2426,3.367,2427,3.367,2428,3.367,2429,3.367,2430,4.681,2431,4.681,2432,3.042,2433,3.367,2434,3.367]],["title/components/SpinnerOverlayComponent.html",[130,0.557,541,1.319]],["body/components/SpinnerOverlayComponent.html",[7,1.339,8,0.013,9,1.339,20,1.488,21,0.128,22,0.157,23,0.128,24,0.148,31,1.537,35,0.171,38,0.867,48,0.265,65,1.543,85,5.214,98,0.157,99,0.228,102,1.21,109,0.006,110,0.009,111,0.009,118,0.575,119,0.861,120,1.129,125,0.897,126,0.733,127,1.169,128,1.488,130,0.981,170,1.294,172,1.294,176,1.488,179,1.808,182,2.808,183,2.097,185,2.023,187,2.023,188,2.023,191,1.76,196,1.691,205,1.821,216,1.436,230,5.013,231,2.772,315,1.481,334,1.488,342,2.477,369,1.386,374,2.097,417,1.029,418,1.433,430,2.649,442,1.542,443,1.339,447,1.488,449,1.339,451,2.346,476,2.566,505,1.542,506,2.323,507,1.821,508,1.542,509,2.557,510,1.542,511,1.542,512,1.542,513,1.339,514,1.542,515,1.339,516,1.542,517,1.339,518,2.097,519,1.339,520,1.386,521,1.542,522,1.542,523,1.339,524,1.542,525,1.339,526,1.488,527,1.542,528,1.339,529,1.821,530,1.542,531,1.339,532,1.542,533,1.339,534,1.542,535,1.339,536,1.542,537,1.386,538,1.542,539,1.339,540,1.542,541,2.221,542,1.542,543,1.339,544,1.488,545,1.542,546,1.339,547,1.339,548,1.339,549,1.542,550,1.339,551,1.21,552,1.542,553,1.339,554,1.542,555,1.542,556,1.488,558,1.405,603,3.805,624,3.036,634,1.542,635,2.035,636,2.129,641,2.541,642,2.477,646,1.339,744,1.725,763,3.828,771,3.192,773,1.868,803,3.036,825,2.232,833,1.725,873,2.348,876,2.348,883,2.895,926,2.767,931,3.21,959,1.868,962,2.625,966,3.57,1317,4.916,1381,2.232,1382,2.348,1388,2.477,1390,3.036,1404,4.215,1423,2.129,1479,3.369,1490,2.348,1505,2.232,1512,3.805,1624,5.586,1700,2.798,1772,3.006,2593,4.64,2671,5.665,2672,3.615,2673,5.635,2674,6.403,2675,5.635,2676,4.144,2677,5.635,2678,4.144,2679,5.635,2680,5.635,2681,4.144,2682,4.144,2683,4.144]],["title/modules/SpinnerOverlayModule.html",[0,1.232,16,2.755]],["body/modules/SpinnerOverlayModule.html",[2,1.817,3,2.158,8,0.013,16,5.576,18,2.392,19,1.945,20,1.589,21,0.185,22,0.227,23,0.185,24,0.124,26,2.759,28,2.085,35,0.326,47,2.392,48,0.385,85,4.366,98,0.227,99,0.185,109,0.009,110,0.011,111,0.009,231,2.392,541,2.739,656,2.66,657,2.865,658,2.239,2671,4.744,2684,5.25,2685,5.25,2686,5.25,2687,6.018,2688,6.236,2689,5.25,2690,6.018]],["title/modules/StoreModule.html",[0,1.232,994,2.755]],["body/modules/StoreModule.html",[0,1.676,2,1.676,8,0.013,21,0.171,22,0.21,23,0.171,24,0.115,28,1.923,35,0.345,47,2.278,48,0.355,65,1.013,66,2.728,88,3.517,98,0.257,99,0.171,103,0.945,109,0.008,110,0.01,111,0.008,138,4.598,154,3.517,155,3.517,162,3.668,164,3.668,166,3.318,167,4.027,168,4.07,252,1.466,301,2.066,351,4.375,352,2.609,382,4.375,662,2.851,671,2.609,675,2.609,709,3.343,914,2.99,994,4.598,1208,2.99,1896,3.517,1905,4.027,1913,4.313,2158,3.748,2159,3.748,2691,4.375,2692,5.551,2693,4.842,2694,5.551,2695,4.842,2696,6.424,2697,5.551,2698,5.551,2699,5.551,2700,4.842,2701,4.375,2702,5.551,2703,5.551,2704,5.551,2705,4.842,2706,5.551,2707,5.551,2708,5.551,2709,5.551,2710,6.808,2711,5.551,2712,5.551,2713,5.551,2714,5.551,2715,5.551,2716,5.551,2717,5.551]],["title/modules/ThemingModule.html",[0,1.232,995,2.755]],["body/modules/ThemingModule.html",[2,1.862,3,2.19,8,0.013,18,2.427,19,1.993,20,1.629,21,0.19,22,0.233,23,0.19,24,0.127,35,0.3,47,2.427,48,0.394,91,3.907,92,4.474,93,4.862,98,0.233,99,0.19,109,0.009,110,0.011,111,0.009,159,5.206,210,1.862,995,5.549,2718,5.38,2719,5.38,2720,6.168,2721,7.253,2722,6.168,2723,6.168,2724,6.168]],["title/injectables/ThemingService.html",[159,2.585,402,0.944]],["body/injectables/ThemingService.html",[8,0.013,21,0.112,22,0.138,23,0.112,24,0.163,29,1.275,31,1.745,33,1.491,34,1.614,35,0.213,38,0.763,41,2.874,42,2.462,46,4.858,48,0.233,67,2.645,95,5.334,98,0.195,99,0.244,103,1.273,106,3.181,109,0.006,110,0.008,111,0.006,118,0.372,119,0.788,120,1.229,126,0.812,127,1.468,130,0.972,131,4.811,159,3.267,176,1.362,190,3.073,205,1.667,219,0.948,226,1.407,230,3.267,249,1.456,251,1.696,253,0.932,255,5.773,259,2.196,291,2.532,295,2.921,312,3.741,315,1.73,353,5.051,380,5.427,398,2.18,402,1.193,403,1.79,416,1.641,417,1.253,418,0.816,450,1.964,507,2.367,558,1.272,577,1.761,602,4.978,605,6.214,792,2.233,809,3.181,834,3.181,835,3.181,1020,3.181,1068,3.082,1183,3.741,1403,1.714,1586,3.181,1620,4.498,1837,2.645,1919,3.684,1937,2.874,2194,2.462,2195,2.31,2202,2.31,2437,2.874,2593,5.051,2630,5.126,2725,2.874,2726,5.157,2727,7.323,2728,5.157,2729,6.504,2730,6.504,2731,5.157,2732,3.646,2733,3.646,2734,5.157,2735,3.646,2736,4.498,2737,4.498,2738,6.862,2739,3.646,2740,5.157,2741,6.504,2742,3.646,2743,5.157,2744,5.157,2745,5.157,2746,3.646,2747,5.157,2748,3.646,2749,5.157,2750,3.646,2751,3.646,2752,3.646,2753,3.646,2754,3.646,2755,3.646,2756,3.181,2757,3.646,2758,3.646,2759,3.646,2760,3.646,2761,6.504,2762,3.646,2763,3.646,2764,3.646,2765,3.646,2766,3.646,2767,5.157,2768,3.646,2769,3.646,2770,3.646,2771,3.646,2772,3.646,2773,3.646,2774,3.646,2775,3.646]],["title/components/ThumbnailCarouselComponent.html",[130,0.557,543,1.319]],["body/components/ThumbnailCarouselComponent.html",[7,0.895,8,0.013,9,0.895,20,1.112,21,0.085,22,0.105,23,0.085,24,0.152,29,1.041,31,1.617,33,1.283,35,0.236,38,0.579,48,0.177,65,1.498,98,0.105,99,0.199,102,1.424,103,0.471,109,0.008,110,0.006,111,0.006,118,0.43,119,0.643,120,0.455,126,0.716,127,1.225,128,0.994,130,0.696,136,1.069,170,0.865,172,0.865,175,2.164,176,1.112,179,1.439,182,2.717,183,1.567,185,1.512,187,1.512,188,1.512,191,1.316,196,1.347,207,5.872,210,1.272,214,4.135,216,0.959,219,0.439,226,1.326,231,0.926,250,1.112,251,1.041,252,1.619,315,1.493,316,2.043,321,1.03,334,1.872,341,2.518,342,1.655,369,1.906,374,2.281,387,3.884,416,0.662,417,0.931,418,1.371,430,1.98,434,2.927,435,1.824,442,1.03,443,0.895,447,0.994,449,0.895,451,1.754,476,1.688,497,2.008,505,1.03,506,2.087,507,1.361,508,1.03,509,2.12,510,1.03,511,1.03,512,1.03,513,0.895,514,1.03,515,0.895,516,1.03,517,0.895,518,1.567,519,0.895,520,1.706,521,1.03,522,1.03,523,0.895,524,1.03,525,0.895,526,0.994,527,1.03,528,0.895,529,1.361,530,1.03,531,0.895,532,1.03,533,0.895,534,1.03,535,0.895,536,1.03,537,0.926,538,1.03,539,0.895,540,1.03,541,0.895,542,1.03,543,1.841,544,2.759,545,1.03,546,0.895,547,0.895,548,0.895,549,1.03,550,0.895,551,0.808,552,1.03,553,0.895,554,1.03,555,1.03,556,0.994,558,0.824,570,2.678,578,1.392,594,2.299,603,2.844,611,1.899,622,1.754,623,1.655,636,2.619,638,3.048,639,1.655,640,2.008,641,2.911,642,1.655,646,2.169,744,1.153,763,3.048,771,2.386,772,2.844,773,2.299,803,2.269,825,1.491,833,2.552,861,2.386,873,1.568,874,2.386,883,3.149,904,3.048,925,1.869,926,2.068,931,2.796,939,2.386,959,3.195,960,3.056,962,2.668,966,2.668,983,2.068,985,3.479,1056,1.655,1308,2.888,1332,3.048,1340,2.668,1371,3.674,1381,2.746,1382,3.473,1383,2.619,1384,3.056,1385,2.619,1386,1.568,1388,2.518,1389,2.518,1390,2.746,1400,3.32,1403,1.98,1404,1.491,1407,2.008,1409,3.674,1410,2.888,1413,2.182,1414,2.415,1416,2.415,1423,2.619,1425,1.491,1429,3.048,1452,4.961,1486,3.32,1504,2.182,1505,2.746,1510,4.533,1512,2.844,1525,2.008,1544,3.056,1700,1.869,1712,3.32,1800,3.674,1888,2.182,1896,1.754,2141,2.797,2190,4.533,2191,4.253,2198,3.406,2205,3.23,2292,3.674,2499,4.447,2593,1.869,2776,5.33,2777,2.182,2778,3.674,2779,3.674,2780,4.212,2781,5.098,2782,4.212,2783,4.832,2784,5.098,2785,4.212,2786,5.098,2787,5.098,2788,6.457,2789,2.768,2790,2.768,2791,4.212,2792,5.098,2793,4.447,2794,4.212,2795,2.768,2796,4.212,2797,4.212,2798,4.212,2799,5.098,2800,4.212,2801,4.212,2802,5.633,2803,4.212,2804,4.212,2805,4.212,2806,4.212,2807,2.768,2808,5.586,2809,5.098,2810,4.212,2811,4.212,2812,4.212,2813,4.212,2814,3.674,2815,4.212,2816,4.212,2817,4.212,2818,4.212,2819,4.212,2820,4.212,2821,2.768,2822,4.019,2823,2.768,2824,4.212,2825,2.768,2826,2.768,2827,3.674,2828,6.457,2829,2.768,2830,2.768,2831,2.768,2832,4.212,2833,4.212,2834,2.768,2835,4.212,2836,4.212,2837,4.212,2838,4.212,2839,2.768,2840,5.098,2841,2.768,2842,2.768,2843,2.768,2844,2.768,2845,2.768,2846,2.768,2847,2.768,2848,2.768]],["title/modules/ThumbnailCarouselModule.html",[0,1.232,1448,2.755]],["body/modules/ThumbnailCarouselModule.html",[2,2.11,3,2.11,8,0.013,18,2.338,19,1.873,20,1.531,21,0.178,22,0.219,23,0.178,24,0.12,26,2.698,28,2.008,35,0.339,47,2.338,48,0.37,49,3.59,50,2.724,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,253,1.481,543,2.727,544,2.08,656,2.601,657,2.801,658,2.156,1448,5.534,1452,3.913,1785,4.719,1786,3.913,2776,4.204,2783,4.568,2808,5.509,2849,5.055,2850,5.055,2851,5.055,2852,5.795,2853,6.989,2854,5.795,2855,5.795,2856,5.795,2857,5.795,2858,5.795]],["title/components/TissueSectionVisComponent.html",[130,0.557,546,1.319]],["body/components/TissueSectionVisComponent.html",[7,1.242,8,0.013,9,1.242,21,0.118,22,0.145,23,0.118,24,0.15,29,1.322,31,1.565,33,1.288,35,0.221,38,0.804,48,0.246,65,1.536,98,0.145,99,0.223,102,1.163,109,0.006,110,0.008,111,0.008,118,0.628,119,0.817,120,0.631,125,1.157,126,0.747,127,0.701,128,1.379,130,0.84,136,1.483,170,1.2,172,1.2,176,1.413,179,1.737,182,2.789,183,1.991,185,1.92,187,1.92,188,1.92,191,1.2,193,1.758,196,1.625,197,2.515,205,1.729,210,1.16,216,1.331,226,1.157,231,1.285,252,1.413,301,1.991,315,1.237,316,2.144,321,2.29,334,1.758,338,3.352,341,2.297,342,3.198,369,1.79,371,2.316,374,1.991,416,0.919,417,1.322,418,1.197,430,2.893,435,1.664,442,1.43,443,1.242,447,1.379,449,1.242,451,2.227,476,2.466,505,1.43,506,2.261,507,1.729,508,1.43,509,2.476,510,1.43,511,1.43,512,1.43,513,1.242,514,1.43,515,1.242,516,1.43,517,1.242,518,1.991,519,1.242,520,1.285,521,1.43,522,1.43,523,1.242,524,1.43,525,1.242,526,1.379,527,1.43,528,1.242,529,1.729,530,1.43,531,1.242,532,1.43,533,1.242,534,1.43,535,1.242,536,1.43,537,1.285,538,1.43,539,1.242,540,1.43,541,1.242,542,1.43,543,1.242,544,1.379,545,1.43,546,2.151,547,2.633,548,2.72,549,1.43,550,1.242,551,1.122,552,1.43,553,1.242,554,1.43,555,1.43,556,1.379,578,2.029,633,1.664,634,1.991,635,2.626,641,2.775,646,1.989,744,1.6,771,3.03,773,1.732,803,2.882,825,2.07,833,2.227,841,2.882,873,2.177,874,2.177,959,2.775,1312,4.33,1321,5.369,1383,3.161,1388,2.297,1403,1.806,1407,2.787,1408,3.029,1413,3.029,1423,1.974,1441,3.352,1455,5.255,1524,3.389,1775,4.465,2016,3.029,2534,4.667,2859,5.71,2860,3.352,2861,7.244,2862,6.154,2863,5.35,2864,5.35,2865,6.154,2866,6.996,2867,6.154,2868,3.842,2869,4.667,2870,4.667,2871,3.842,2872,5.35,2873,5.35,2874,5.35,2875,5.35,2876,5.35,2877,3.842,2878,5.35,2879,5.35,2880,5.35,2881,3.842,2882,3.842,2883,3.842,2884,3.842,2885,3.842,2886,3.842,2887,3.842]],["title/modules/TissueSectionVisModule.html",[0,1.232,1449,2.755]],["body/modules/TissueSectionVisModule.html",[2,1.825,3,2.164,8,0.013,18,2.398,19,1.953,20,1.596,21,0.186,22,0.228,23,0.186,24,0.125,26,2.767,28,2.094,35,0.316,47,2.398,48,0.386,98,0.228,99,0.186,109,0.009,110,0.011,111,0.009,546,2.741,547,1.953,548,2.469,656,2.667,657,2.872,658,2.249,1312,3.613,1449,5.58,1455,4.384,2859,4.764,2888,5.272,2889,5.272,2890,5.272,2891,6.044,2892,6.044]],["title/components/ToggleButtonComponent.html",[130,0.557,550,1.319]],["body/components/ToggleButtonComponent.html",[7,0.935,8,0.013,9,0.935,21,0.089,22,0.109,23,0.089,24,0.159,29,1.077,31,1.702,33,1.426,34,1.374,35,0.241,38,0.605,48,0.185,65,1.501,98,0.109,99,0.202,100,2.092,101,1.559,102,0.99,103,0.891,109,0.004,110,0.007,111,0.007,118,0.295,119,0.665,120,0.715,125,1.352,126,0.701,127,0.956,128,1.039,129,3.692,130,0.979,145,0.968,170,0.904,172,1.952,176,1.15,179,2.331,182,2.705,183,1.621,185,1.563,187,1.563,188,1.563,191,1.636,193,1.15,196,1.383,205,2.02,210,1.581,216,1.003,219,0.69,226,1.261,231,0.968,236,1.457,249,1.23,250,1.15,251,1.44,253,0.739,259,1.996,261,3.692,278,1.954,313,2.346,315,1.446,316,1.745,317,2.138,321,2.169,369,1.752,416,1.041,417,1.199,418,1.398,432,1.559,433,1.559,435,1.253,442,1.077,443,0.935,447,1.039,449,0.935,505,1.077,506,2.02,507,1.408,508,1.077,509,2.169,510,1.077,511,1.077,512,1.077,513,0.935,514,1.077,515,0.935,516,1.077,517,0.935,518,1.621,519,0.935,520,0.968,521,1.077,522,1.077,523,0.935,524,1.077,525,0.935,526,1.039,527,1.077,528,0.935,529,1.408,530,1.077,531,0.935,532,1.077,533,0.935,534,1.077,535,0.935,536,1.077,537,0.968,538,1.077,539,0.935,540,1.077,541,0.935,542,1.077,543,0.935,544,1.039,545,1.077,546,0.935,547,0.935,548,0.935,549,1.077,550,1.883,551,2.36,552,1.077,553,0.935,554,1.077,555,1.077,556,1.039,558,1.024,577,1.077,607,2.961,635,1.421,641,1.305,646,0.935,744,1.205,755,4.128,756,2.821,759,2.81,762,1.36,763,3.131,766,4.944,767,3.433,768,4.594,769,3.139,771,2.467,772,2.941,777,1.964,778,2.361,779,2.993,780,3.16,781,1.745,784,2.632,788,3.16,789,2.941,790,2.941,792,1.886,796,2.941,803,2.346,817,3.799,818,3.16,825,1.559,829,2.099,833,3.043,840,3.484,841,4.052,848,2.281,850,2.099,856,2.524,859,2.099,873,1.639,874,1.639,883,1.486,897,2.759,906,3.433,908,3.433,909,3.433,913,2.604,916,4.074,921,4.764,926,2.138,938,2.281,944,1.73,959,1.305,983,2.138,985,3.881,1208,3.865,1380,1.833,1381,1.559,1382,1.639,1385,2.237,1386,2.467,1389,1.73,1390,1.559,1403,1.36,1423,1.486,1425,3.538,1464,6.055,1508,3.935,1524,1.833,1601,2.604,1772,2.099,2016,2.281,2021,2.524,2022,4.569,2023,4.569,2041,3.799,2069,2.524,2073,3.799,2084,5.729,2085,5.729,2893,6.701,2894,2.524,2895,5.237,2896,4.355,2897,4.355,2898,2.894,2899,4.355,2900,6.567,2901,4.355,2902,4.355,2903,5.237,2904,2.894,2905,2.894,2906,2.894,2907,2.894,2908,2.894,2909,2.894,2910,2.894,2911,2.894,2912,2.894,2913,2.894,2914,2.894,2915,2.894,2916,2.894,2917,2.894,2918,2.894,2919,2.894,2920,2.894,2921,2.894,2922,2.894,2923,4.355,2924,4.355,2925,2.894,2926,2.894]],["title/components/ViewerComponent.html",[130,0.557,553,1.319]],["body/components/ViewerComponent.html",[7,1.193,8,0.013,9,1.193,21,0.114,22,0.139,23,0.114,24,0.16,29,1.286,31,1.707,33,1.088,34,1.368,35,0.215,38,0.772,48,0.236,57,2.338,58,1.896,65,1.526,98,0.139,99,0.185,100,1.867,101,1.988,102,0.983,103,0.628,109,0.006,110,0.008,111,0.008,118,0.377,119,0.795,120,0.854,126,0.784,127,1.099,128,1.325,130,0.822,170,1.153,172,1.153,176,1.374,179,1.7,182,2.778,183,1.935,185,1.867,187,1.867,188,1.867,196,1.591,208,2.802,210,1.818,212,4.042,216,2.6,219,0.585,230,2.338,231,1.74,253,0.943,259,1.644,307,2.084,315,1.594,316,1.479,321,2.241,334,1.889,369,2.015,394,2.492,395,4.537,416,1.244,417,1.194,418,1.542,426,2.206,430,2.831,435,1.598,442,1.373,443,1.193,447,1.325,449,1.193,451,2.165,476,2.084,505,1.373,506,1.681,507,1.681,508,1.373,509,2.433,510,1.373,511,1.373,512,1.373,513,1.193,514,1.373,515,1.193,516,1.373,517,1.193,518,1.935,519,1.193,520,1.235,521,1.373,522,1.373,523,1.193,524,1.373,525,1.193,526,1.325,527,1.373,528,1.193,529,1.681,530,1.373,531,1.193,532,1.373,533,1.193,534,1.373,535,1.193,536,1.373,537,1.235,538,1.373,539,1.193,540,1.373,541,1.193,542,1.373,543,1.193,544,1.325,545,1.373,546,1.193,547,1.946,548,1.193,549,1.373,550,1.193,551,1.077,552,1.373,553,2.113,554,1.373,555,1.373,556,1.325,558,0.722,570,2.445,594,2.715,606,3.512,611,2.345,624,1.988,634,2.241,636,2.672,637,2.678,641,2.948,642,2.206,646,1.946,744,1.537,763,3.6,771,2.946,773,2.345,803,2.802,825,1.988,833,1.537,841,1.988,842,4.1,873,2.091,883,3.094,959,2.715,985,1.812,1208,1.988,1215,4.537,1353,3.109,1379,2.338,1381,2.802,1382,2.946,1383,1.896,1385,1.896,1386,2.091,1388,3.109,1389,2.206,1397,2.909,1403,1.735,1423,1.896,1425,1.988,1429,3.6,1546,4.747,1559,4.1,1602,4.1,1603,5.154,1700,2.492,1703,3.512,1860,4.537,1870,3.773,1896,2.338,1909,4.747,1911,5.154,1916,4.747,1919,3.905,1921,2.909,1989,4.747,2927,3.22,2928,4.537,2929,6.022,2930,5.201,2931,6.893,2932,6.022,2933,6.539,2934,3.691,2935,5.201,2936,3.691,2937,3.691,2938,5.201,2939,3.691,2940,3.691,2941,3.691,2942,4.537,2943,5.201,2944,5.201,2945,5.201,2946,3.691,2947,5.201,2948,3.691,2949,6.022,2950,5.201,2951,4.537,2952,3.691,2953,3.691,2954,3.691]],["title/modules/ViewerModule.html",[0,1.232,17,2.755]],["body/modules/ViewerModule.html",[2,1.789,3,2.138,8,0.013,17,5.559,18,2.37,19,1.915,20,1.565,21,0.182,22,0.224,23,0.182,24,0.122,26,2.734,28,2.053,35,0.337,47,2.37,48,0.379,49,3.638,50,2.785,98,0.224,99,0.182,109,0.009,110,0.011,111,0.009,231,1.982,553,2.734,656,2.636,657,2.838,658,2.205,1785,4.783,1786,4.001,2688,6.179,2689,5.169,2955,5.169,2956,5.169,2957,5.169,2958,5.925,2959,5.925]],["title/injectables/WorkerDataSourceService.html",[402,0.944,1305,2.755]],["body/injectables/WorkerDataSourceService.html",[0,1.58,8,0.013,21,0.161,22,0.198,23,0.161,24,0.155,29,1.623,31,1.605,33,1.374,35,0.311,38,1.095,48,0.334,65,1.198,66,2.097,98,0.198,99,0.161,102,0.989,103,1.221,109,0.008,110,0.01,111,0.008,116,2.631,117,6.561,118,0.534,120,1.178,125,1.552,126,0.827,127,1.198,136,2.02,138,5.079,212,3.864,219,1.136,226,1.552,252,1.986,253,1.677,259,2.054,260,5.175,402,1.518,403,2.57,408,5.203,416,1.715,417,1.309,421,2.82,658,1.948,1298,5.079,1299,3.797,1305,4.433,1306,4.762,2960,6.561,2961,7.173,2962,6.565,2963,6.565,2964,5.234,2965,7.173,2966,7.521,2967,5.234,2968,6.565,2969,5.234,2970,5.234,2971,6.565,2972,5.234,2973,6.565,2974,5.234,2975,5.234,2976,5.234,2977,5.234,2978,5.234,2979,5.234,2980,5.234,2981,5.234,2982,5.234,2983,5.234,2984,5.234,2985,5.234,2986,5.234,2987,5.234]],["title/changelog.html",[2988,2.469,2989,2.469,2990,2.683]],["body/changelog.html",[3,1.425,8,0.01,21,0.181,31,0.442,38,0.413,58,1.657,65,1.412,66,0.791,89,3.514,91,1.063,94,4.294,95,2.043,108,5.661,109,0.003,110,0.005,111,0.009,112,0.804,114,0.66,119,0.302,120,0.324,126,0.211,130,0.558,136,1.578,175,2.673,176,0.852,182,1.079,193,0.852,196,1.623,201,4.029,203,3.721,206,5.222,207,2.542,214,1.18,216,2.203,219,1.008,252,2.009,255,1.556,256,3.674,260,1.556,276,2.34,291,2.318,296,4.871,298,3.893,301,1.757,307,1.638,312,1.432,314,1.892,315,0.457,316,0.791,319,1.722,320,1.556,321,0.735,341,2.822,345,1.556,349,1.722,350,1.333,352,1.516,353,2.761,354,0.89,358,3.567,359,4.118,369,1.741,370,1.251,374,1.2,387,2.043,426,2.444,434,3.026,436,1.928,443,0.638,447,1.695,488,1.722,494,1.251,497,4.051,507,0.638,520,1.079,547,2.281,548,1.042,551,0.941,556,0.709,569,1.118,576,1.063,578,0.539,579,2.542,587,2.542,588,1.556,592,5.82,596,1.18,597,1.432,600,2.178,614,1.063,633,0.855,646,0.638,694,1.333,779,1.014,781,2.786,789,2.178,792,2.044,808,1.333,813,1.333,833,0.822,854,1.18,855,1.657,876,1.118,908,1.556,913,3.11,921,1.432,931,0.855,977,1.18,983,0.969,985,1.583,986,1.333,989,1.014,1041,1.432,1044,2.542,1045,2.542,1049,2.542,1051,1.556,1052,1.333,1058,1.556,1059,3.721,1062,4.101,1064,1.556,1068,1.928,1078,1.556,1080,3.425,1090,1.432,1130,2.813,1169,2.542,1176,2.178,1183,2.34,1208,1.063,1209,1.722,1210,1.556,1213,2.761,1216,3.223,1217,1.722,1223,1.333,1224,1.556,1226,4.767,1245,2.761,1308,1.118,1316,1.722,1331,1.432,1332,1.18,1347,2.813,1349,1.251,1352,1.333,1353,1.18,1356,1.432,1358,1.722,1395,3.567,1397,1.556,1410,1.827,1426,3.538,1427,1.722,1438,4.118,1468,1.722,1476,2.542,1479,1.928,1487,1.556,1499,1.251,1500,1.18,1506,1.432,1515,1.722,1527,1.556,1544,2.34,1628,2.542,1630,3.567,1637,2.542,1644,2.813,1703,2.178,1712,1.556,1729,1.556,1744,1.722,1746,1.722,1764,3.721,1774,1.722,1798,4.118,1837,2.34,1861,2.813,1870,3.775,1883,2.34,1942,2.542,1997,2.542,2116,1.556,2136,2.761,2141,0.969,2154,4.83,2169,1.333,2192,1.118,2198,2.822,2248,1.722,2271,4.522,2277,1.333,2308,1.722,2437,2.542,2449,1.722,2557,1.556,2590,2.966,2606,4.858,2665,2.542,2705,1.722,2736,1.722,2737,1.722,2778,1.722,2779,2.813,2783,1.556,2802,1.722,2814,4.118,2827,2.813,2869,4.539,2928,4.118,2951,2.813,2989,2.966,2990,2.542,2991,1.722,2992,1.722,2993,3.225,2994,3.225,2995,4.721,2996,8.405,2997,4.871,2998,1.974,2999,3.225,3000,4.089,3001,5.584,3002,1.974,3003,4.089,3004,1.974,3005,1.974,3006,7.022,3007,1.974,3008,1.974,3009,1.974,3010,1.974,3011,7.059,3012,1.974,3013,1.974,3014,1.974,3015,1.974,3016,1.974,3017,1.974,3018,3.225,3019,1.722,3020,1.974,3021,3.225,3022,4.721,3023,4.721,3024,4.089,3025,1.974,3026,1.974,3027,1.974,3028,1.974,3029,5.584,3030,4.401,3031,4.539,3032,3.567,3033,1.974,3034,6.54,3035,6.54,3036,5.203,3037,5.203,3038,4.539,3039,1.974,3040,3.225,3041,1.974,3042,4.089,3043,5.361,3044,6.953,3045,4.871,3046,3.225,3047,1.974,3048,1.974,3049,3.225,3050,6.697,3051,3.567,3052,1.974,3053,5.584,3054,5.203,3055,1.974,3056,1.974,3057,1.974,3058,1.974,3059,1.974,3060,1.974,3061,2.813,3062,3.225,3063,5.892,3064,5.361,3065,1.974,3066,1.974,3067,1.974,3068,1.974,3069,4.539,3070,1.974,3071,3.225,3072,1.974,3073,3.225,3074,3.225,3075,3.225,3076,3.225,3077,1.974,3078,4.089,3079,1.974,3080,1.974,3081,1.974,3082,3.225,3083,3.225,3084,1.974,3085,1.974,3086,3.225,3087,3.225,3088,4.721,3089,1.974,3090,1.974,3091,1.974,3092,1.974,3093,3.225,3094,1.974,3095,1.974,3096,5.584,3097,3.225,3098,1.974,3099,1.974,3100,1.974,3101,4.089,3102,3.225,3103,5.584,3104,2.813,3105,4.721,3106,2.813,3107,5.584,3108,1.974,3109,1.974,3110,3.225,3111,3.225,3112,1.974,3113,1.974,3114,3.225,3115,1.974,3116,1.974,3117,1.974,3118,1.974,3119,3.225,3120,1.974,3121,1.974,3122,1.974,3123,1.974,3124,1.974,3125,1.974,3126,1.974,3127,1.974,3128,1.974,3129,3.225,3130,1.974,3131,1.974,3132,4.089,3133,4.089,3134,3.225,3135,1.974,3136,1.974,3137,1.974,3138,3.225,3139,1.974,3140,1.974,3141,1.974,3142,3.225,3143,3.225,3144,4.089,3145,1.974,3146,1.974,3147,1.974,3148,1.974,3149,1.974,3150,3.225,3151,1.722,3152,1.974,3153,1.974,3154,4.089,3155,3.225,3156,1.974,3157,1.974,3158,4.089,3159,3.225,3160,4.721,3161,1.974,3162,1.974,3163,1.974,3164,3.225,3165,1.974,3166,1.974,3167,1.974,3168,1.974,3169,1.974,3170,1.974,3171,4.089,3172,1.974,3173,4.089,3174,5.203,3175,3.225,3176,3.225,3177,3.225,3178,4.089,3179,4.721,3180,5.203,3181,3.225,3182,4.089,3183,1.974,3184,1.974,3185,5.892,3186,4.089,3187,4.721,3188,1.974,3189,1.974,3190,1.974,3191,1.974,3192,3.225,3193,1.974,3194,1.974,3195,1.974,3196,3.225,3197,1.974,3198,1.974,3199,3.567,3200,3.225,3201,3.567,3202,1.974,3203,1.974,3204,1.974,3205,1.974,3206,1.974,3207,1.974,3208,1.974,3209,1.974,3210,1.974,3211,1.974,3212,1.974,3213,4.721,3214,5.584,3215,4.089,3216,1.974,3217,1.974,3218,4.089,3219,1.974,3220,1.974,3221,1.974,3222,3.225,3223,3.225,3224,4.089,3225,1.974,3226,1.974,3227,1.974,3228,1.974,3229,1.974,3230,1.974,3231,1.722,3232,1.974,3233,1.974,3234,1.974,3235,1.974,3236,1.974,3237,1.974,3238,1.974,3239,1.974,3240,1.974,3241,1.974,3242,1.974,3243,1.974,3244,1.974,3245,1.974,3246,1.974,3247,6.146,3248,1.974,3249,3.567,3250,6.146,3251,4.089,3252,4.721,3253,3.225,3254,4.089,3255,1.974,3256,1.974,3257,1.974,3258,1.974,3259,3.225,3260,1.974,3261,1.974,3262,1.974,3263,3.225,3264,1.974,3265,1.974,3266,1.974,3267,1.974,3268,1.974,3269,1.974,3270,1.974,3271,1.974,3272,1.974,3273,1.974,3274,1.974,3275,1.974,3276,1.974,3277,1.974,3278,1.974,3279,1.974,3280,1.974,3281,1.974,3282,1.974,3283,1.974,3284,1.974,3285,1.974,3286,1.974,3287,1.974,3288,3.225,3289,1.974,3290,3.225,3291,1.974,3292,3.225,3293,3.225,3294,4.721,3295,4.721,3296,3.225,3297,3.225,3298,1.974,3299,1.974,3300,1.974,3301,1.974,3302,1.722,3303,1.974,3304,1.974,3305,1.974,3306,1.974,3307,1.974,3308,1.974,3309,3.225,3310,6.54,3311,4.089,3312,3.225,3313,1.974,3314,3.225,3315,1.974,3316,1.974,3317,1.974,3318,1.974,3319,1.974,3320,1.974,3321,3.225,3322,5.139,3323,3.225,3324,1.974,3325,1.974,3326,1.974,3327,1.974,3328,3.721,3329,1.974,3330,3.225,3331,1.974,3332,1.974,3333,1.974,3334,3.225,3335,1.974,3336,1.974,3337,1.974,3338,3.225,3339,4.089,3340,3.225,3341,1.974,3342,2.813,3343,1.974,3344,1.974,3345,1.974,3346,1.974,3347,1.974,3348,1.974,3349,1.974,3350,1.974,3351,1.974,3352,1.722,3353,1.974,3354,1.974,3355,1.974,3356,1.974,3357,1.974,3358,1.974,3359,1.722,3360,1.974,3361,1.974,3362,3.225,3363,1.974,3364,1.974,3365,1.974,3366,1.974,3367,1.974,3368,1.974,3369,1.974,3370,1.974,3371,1.974,3372,1.974,3373,3.225,3374,1.974,3375,1.974,3376,3.225,3377,1.974,3378,1.974,3379,1.974,3380,1.974,3381,1.974,3382,1.974,3383,1.974,3384,1.974,3385,1.974]],["title/coverage.html",[3328,4.395]],["body/coverage.html",[7,1.112,8,0.013,9,1.112,23,0.106,24,0.178,36,2.324,38,1.035,39,2.496,67,2.496,72,2.324,75,3.447,78,3.589,82,2.324,85,2.496,89,3.341,99,0.178,109,0.005,110,0.008,111,0.005,112,1.105,113,2.712,115,4.316,126,0.367,130,1.118,136,1.328,156,2.324,159,2.18,162,1.854,164,1.854,166,2.958,168,2.057,170,1.075,172,1.075,219,0.545,223,6.244,252,0.909,301,1.281,334,2.119,392,3.155,402,1.783,404,3.002,405,3.002,430,3.979,444,3.9,445,3.9,503,2.712,513,1.112,515,1.112,517,1.112,519,1.112,523,1.112,525,1.112,528,1.112,531,1.112,533,1.112,535,1.112,537,1.151,539,1.112,541,1.112,543,1.112,546,1.112,548,1.599,550,1.112,553,1.112,557,3.002,661,4.278,662,3.254,663,4.278,681,2.324,698,2.324,709,1.689,754,3.9,759,1.983,784,1.379,800,1.551,880,3.002,967,2.057,968,4.012,974,2.057,981,2.057,982,2.057,1007,2.324,1009,3.912,1025,2.712,1026,4.719,1043,2.496,1050,3.9,1082,2.712,1203,2.496,1204,4.278,1205,3.9,1206,3.9,1225,2.324,1297,2.496,1298,4.278,1299,4.203,1305,2.324,1312,3.463,1313,2.712,1314,2.496,1315,3.002,1387,3.9,1452,3.341,1455,2.496,1461,2.057,1462,2.057,1464,2.712,1466,3.002,1542,2.712,1543,3.002,1726,3.341,1727,2.496,1728,3.002,1787,3.002,1828,2.712,1830,3.002,1831,3.002,1842,3.002,1859,3.002,1904,2.496,1905,3.589,1906,3.9,1913,2.18,1965,2.712,1966,4.203,1998,2.712,2120,2.18,2121,3.002,2122,3.002,2123,3.9,2124,3.9,2160,2.496,2189,4.427,2191,2.18,2199,2.057,2260,3.615,2262,3.282,2264,2.496,2266,3.463,2268,3.002,2285,1.949,2294,2.324,2368,3.9,2369,3.9,2435,3.002,2436,3.002,2438,3.002,2480,3.002,2557,2.712,2567,4.203,2608,2.496,2610,2.496,2671,2.712,2672,3.002,2691,2.712,2701,2.712,2725,3.9,2776,3.589,2777,3.9,2822,2.712,2859,2.712,2860,3.002,2893,3.002,2894,3.002,2927,3.002,2960,3.002,3030,2.712,3045,3.002,3328,2.712,3386,3.441,3387,3.441,3388,6.335,3389,3.441,3390,3.441,3391,4.948,3392,4.948,3393,3.441,3394,3.441,3395,4.948,3396,5.794,3397,3.441,3398,4.948,3399,3.002,3400,7.974,3401,3.441,3402,3.441,3403,4.948,3404,3.441,3405,3.441,3406,3.441,3407,3.441,3408,5.794,3409,3.002,3410,3.002,3411,5.794,3412,5.794,3413,3.441,3414,3.441,3415,3.441,3416,3.441,3417,3.441,3418,3.441,3419,3.441,3420,3.441,3421,3.441,3422,4.567,3423,3.441,3424,3.441,3425,3.002,3426,3.002,3427,3.441,3428,3.441,3429,3.441,3430,3.441,3431,3.441,3432,4.948,3433,3.441,3434,3.002,3435,3.441,3436,3.441,3437,3.441,3438,4.948,3439,3.441,3440,4.948,3441,3.441,3442,3.441,3443,3.441,3444,3.441]],["title/dependencies.html",[3,1.482,3019,2.969]],["body/dependencies.html",[3,1.478,8,0.013,23,0.151,44,4.269,48,0.313,57,3.985,58,3.231,109,0.007,110,0.01,111,0.007,145,1.637,175,2.514,201,3.101,507,2.033,576,2.636,613,3.564,614,2.636,628,3.55,658,1.821,671,2.301,675,2.301,677,3.55,678,3.55,753,3.858,928,3.858,1029,3.55,1030,3.55,1055,3.858,1220,3.55,1222,3.55,1545,3.55,1588,4.269,1648,3.858,1832,2.514,2156,3.101,2166,3.101,2323,3.858,2693,4.269,2695,4.269,2696,5.488,2793,4.269,2808,3.858,3038,4.269,3061,4.269,3104,4.269,3199,4.269,3249,5.488,3445,4.894,3446,4.894,3447,8.207,3448,4.894,3449,4.894,3450,4.894,3451,4.894,3452,4.894,3453,4.894,3454,4.894,3455,4.894,3456,4.894,3457,7.59,3458,4.894,3459,6.291,3460,4.894,3461,4.894,3462,4.894,3463,6.952,3464,4.894,3465,4.894,3466,4.894,3467,4.894,3468,4.894,3469,4.894,3470,6.952,3471,4.894,3472,4.894,3473,4.894,3474,6.291,3475,4.894,3476,4.894,3477,4.894,3478,6.291,3479,4.894,3480,4.894,3481,4.894,3482,4.894,3483,4.894,3484,4.894,3485,4.894,3486,4.894,3487,4.894,3488,4.894,3489,4.894,3490,4.894,3491,4.894,3492,6.291,3493,4.269,3494,4.894,3495,4.894,3496,4.894,3497,4.894,3498,4.894,3499,6.291,3500,4.894,3501,4.894,3502,4.894,3503,4.894,3504,4.894,3505,4.894,3506,4.894,3507,4.894,3508,4.894,3509,4.894,3510,4.894,3511,4.894,3512,4.894,3513,4.894,3514,4.894,3515,4.894,3516,4.894,3517,4.894,3518,4.894,3519,4.894,3520,4.894,3521,4.894,3522,4.894,3523,4.894,3524,4.894,3525,4.894,3526,4.894,3527,6.291,3528,4.894,3529,4.894,3530,4.894,3531,4.894,3532,4.894,3533,4.894,3534,4.894,3535,4.894,3536,4.894,3537,4.894,3538,4.894,3539,4.894]],["title/miscellaneous/enumerations.html",[3540,1.928,3541,4.282]],["body/miscellaneous/enumerations.html",[8,0.012,24,0.134,109,0.01,110,0.011,111,0.01,118,0.664,161,5.895,236,2.175,252,1.717,418,1.673,562,3.339,1026,4.389,1055,5.124,1060,6.523,1061,5.425,3540,3.682,3541,5.67,3542,5.124]],["title/miscellaneous/functions.html",[3540,1.928,3543,4.282]],["body/miscellaneous/functions.html",[8,0.013,24,0.152,33,1.648,34,1.16,89,4.594,109,0.008,110,0.01,111,0.008,118,0.566,120,1.317,125,1.199,127,1.012,179,1.921,210,1.674,211,4.021,229,3.512,252,1.464,371,3.187,392,3.703,416,1.883,417,1.438,418,1.24,434,3.494,444,4.37,445,5.362,480,4.836,503,5.362,558,1.501,679,3.781,754,4.37,777,2.499,830,6.05,831,4.067,832,4.836,833,2.832,839,4.836,842,4.37,914,3.965,976,3.854,988,3.314,1026,3.743,1036,4.836,1061,4.935,1062,4.37,1063,5.934,1064,4.37,1065,4.836,1067,3.14,1068,3.314,1069,4.836,1070,4.836,1072,5.934,1073,4.836,1074,4.836,1075,4.836,1076,4.836,1077,4.37,1078,5.802,1079,3.314,1080,4.021,1081,3.512,1082,5.362,2298,4.836,3409,5.934,3410,5.934,3434,5.934,3540,3.14,3542,5.802,3543,4.836,3544,5.544,3545,5.544,3546,5.544]],["title/index.html",[118,0.347,2988,2.469,2989,2.469]],["body/index.html",[8,0.01,21,0.243,65,1.557,94,5.202,108,5.364,109,0.009,110,0.01,111,0.009,112,0.934,114,1.874,130,0.764,206,4.994,298,4.685,597,4.967,779,2.878,861,3.174,883,2.878,1058,4.416,1059,5.397,1080,4.064,1089,5.973,1169,5.397,1213,3.783,1332,3.349,1870,4.064,2606,4.064,2990,4.416,2991,5.973,2992,5.973,3006,5.973,3031,6.719,3032,6.451,3043,5.973,3051,4.887,3064,4.887,3106,5.973,3342,4.887,3352,4.887,3547,5.602,3548,5.602,3549,5.602,3550,5.973,3551,5.602,3552,5.602,3553,5.602,3554,6.847,3555,6.847,3556,6.847,3557,7.395,3558,5.602,3559,5.602,3560,7.703,3561,7.395,3562,5.602,3563,5.602,3564,6.847,3565,5.602,3566,5.602,3567,5.602,3568,5.602,3569,5.602,3570,5.602,3571,5.602,3572,5.602,3573,5.602,3574,5.602,3575,5.602,3576,5.602,3577,5.602,3578,5.602,3579,5.602]],["title/license.html",[2988,2.469,2989,2.469,3580,2.969]],["body/license.html",[8,0.011,20,1.543,94,3.946,109,0.009,110,0.011,111,0.009,178,4.606,205,1.888,607,2.634,679,3.001,808,3.946,813,5.086,1353,4.199,1368,5.097,1926,4.606,2192,3.31,3030,4.606,3069,6.127,3231,6.127,3302,5.097,3322,5.097,3359,5.097,3493,5.097,3550,7.27,3580,5.097,3581,5.843,3582,7.531,3583,5.843,3584,5.843,3585,7.024,3586,5.843,3587,5.843,3588,5.843,3589,5.843,3590,7.024,3591,5.843,3592,5.843,3593,5.843,3594,5.843,3595,5.843,3596,5.843,3597,5.843,3598,5.843,3599,5.843,3600,5.843,3601,5.843,3602,5.843,3603,7.024,3604,5.843,3605,5.843,3606,5.843,3607,5.843,3608,5.843,3609,7.024,3610,5.843,3611,5.843,3612,5.843,3613,5.843,3614,5.843,3615,5.843,3616,5.843,3617,5.843,3618,5.843,3619,5.843,3620,5.843,3621,5.843,3622,5.843,3623,5.843,3624,5.843,3625,5.843,3626,5.843,3627,5.843,3628,5.843,3629,5.843,3630,5.843,3631,5.843,3632,5.843,3633,5.843]],["title/modules.html",[2,1.683]],["body/modules.html",[1,4.169,2,1.735,8,0.011,10,3.881,11,3.881,12,3.641,13,3.881,14,3.881,15,3.881,16,3.881,17,3.881,58,4.405,109,0.009,110,0.011,111,0.009,651,3.881,993,3.881,994,3.881,995,3.881,1219,6.22,1443,3.881,1448,3.881,1449,3.881,1532,3.881,1776,3.881,2257,3.641,2258,3.881,2259,3.641,2590,4.169,2870,5.014,2997,7.48,3634,8.585]],["title/overview.html",[3635,4.864]],["body/overview.html",[1,6.022,2,1.14,3,1.596,4,3.295,5,3.295,6,3.295,7,1.971,8,0.013,9,1.971,10,5.246,11,5.46,12,4.686,13,5.097,14,5.351,15,5.097,16,4.865,17,4.865,18,1.768,19,1.221,20,0.998,109,0.006,110,0.008,111,0.006,114,1.264,159,3.863,170,2.31,172,2.31,176,0.998,403,1.854,513,2.391,515,2.391,517,2.391,519,2.391,523,2.391,525,2.391,528,2.391,531,2.391,533,2.391,535,2.479,537,2.475,539,2.391,541,2.391,543,2.391,546,2.391,550,2.391,553,2.391,579,2.977,651,4.865,652,3.295,653,3.295,654,3.295,990,3.295,991,3.295,992,3.295,993,5.246,994,4.118,995,4.695,1443,5.246,1444,3.295,1445,3.295,1446,3.295,1447,3.295,1448,4.865,1449,4.865,1457,3.295,1458,3.295,1459,3.295,1532,4.865,1533,3.295,1534,3.295,1535,3.295,1718,3.295,1719,3.295,1720,3.295,1776,5.351,1777,3.295,1778,3.295,1780,3.295,1822,3.295,1823,3.295,1825,3.295,1829,2.74,1897,3.295,1898,3.295,1899,3.295,2254,3.295,2255,3.295,2256,3.295,2257,4.975,2258,5.428,2259,4.975,2285,3.454,2358,3.295,2359,3.295,2360,3.295,2467,3.295,2468,3.295,2470,3.295,2473,3.295,2474,3.295,2475,3.295,2558,3.295,2559,3.295,2561,3.295,2684,3.295,2685,3.295,2686,3.295,2718,3.295,2719,3.295,2849,3.295,2850,3.295,2851,3.295,2888,3.295,2889,3.295,2890,3.295,2955,3.295,2956,3.295,2957,3.295,3151,4.611,3201,3.295,3635,3.295,3636,3.777,3637,3.777]],["title/miscellaneous/typealiases.html",[3540,1.928,3638,4.909]],["body/miscellaneous/typealiases.html",[8,0.013,24,0.153,75,2.901,109,0.009,110,0.011,111,0.009,118,0.577,126,0.859,176,1.492,179,2.095,181,3.578,208,4.161,236,2.483,313,3.042,355,3.199,392,3.235,577,1.396,596,3.376,633,2.445,669,3.056,759,2.757,762,2.655,778,3.102,784,2.974,800,3.102,874,3.199,967,3.376,968,3.376,969,3.706,970,3.814,971,3.814,972,3.578,974,3.376,977,4.113,978,5.011,981,3.376,982,3.376,983,2.773,987,5.011,988,3.376,989,3.812,1402,3.814,1832,2.901,1966,4.097,1986,4.926,1987,6.002,1988,6.002,1989,5.424,1990,4.926,1991,6.002,1992,4.926,1993,6.002,1994,4.926,1995,4.926,1996,4.926,1997,4.452,2260,3.042,2266,3.376,2988,4.097,3422,5.424,3540,3.199,3639,5.647,3640,7.025,3641,6.473,3642,6.881,3643,4.926]],["title/miscellaneous/variables.html",[3540,1.928,3644,4.282]],["body/miscellaneous/variables.html",[8,0.013,24,0.157,38,0.638,66,1.222,67,3.287,75,1.567,88,5.332,95,2.87,99,0.166,103,0.519,109,0.005,110,0.007,111,0.005,118,0.311,126,0.715,136,2.086,138,2.06,162,1.643,164,1.643,168,1.823,210,0.921,212,4.533,213,1.567,219,0.948,226,1.17,238,2.06,239,2.405,301,1.686,314,1.816,315,1.843,316,2.561,321,2.379,334,1.428,355,1.728,371,1.321,374,2.011,392,2.13,398,2.708,416,0.729,417,1.536,418,1.736,421,1.643,529,0.986,577,1.479,634,1.135,646,0.986,661,2.06,662,1.567,663,3.06,664,2.708,665,3.287,681,3.06,682,2.213,683,2.213,684,2.213,685,2.213,686,2.213,687,2.213,688,2.213,689,2.213,690,2.213,691,2.213,692,2.213,693,2.213,694,2.06,695,2.213,696,1.933,697,2.213,709,1.498,759,1.816,781,1.816,784,2.166,914,1.643,931,1.321,968,1.823,972,1.933,976,1.728,1009,2.06,1026,2.06,1043,3.287,1044,2.405,1045,2.405,1046,2.661,1047,2.661,1048,2.661,1049,2.405,1050,2.405,1051,2.405,1052,2.06,1053,2.661,1054,2.661,1203,2.213,1204,2.06,1205,2.405,1206,3.571,1210,2.405,1218,6.098,1223,2.06,1224,2.405,1225,3.06,1226,5.648,1227,2.661,1228,7.286,1229,2.661,1230,2.661,1231,2.661,1232,3.952,1233,2.661,1234,2.661,1235,2.661,1236,2.661,1237,2.661,1238,2.661,1239,5.219,1240,5.219,1241,5.576,1242,5.576,1243,3.287,1244,2.661,1245,4.523,1246,2.661,1247,2.661,1248,2.661,1249,3.952,1250,3.952,1251,3.952,1252,2.661,1253,2.661,1254,5.576,1255,2.661,1256,3.952,1257,2.661,1258,2.661,1259,2.661,1260,2.661,1261,2.661,1262,5.219,1263,2.661,1264,2.661,1265,3.952,1266,2.661,1267,2.661,1268,2.661,1269,2.661,1270,2.661,1271,2.661,1272,3.952,1273,3.287,1274,2.661,1275,2.661,1276,2.661,1277,2.661,1278,2.661,1279,5.219,1280,2.661,1281,2.661,1282,5.219,1283,2.661,1284,2.661,1285,2.213,1286,2.661,1287,2.661,1288,5.576,1289,2.661,1290,3.952,1291,2.661,1292,2.405,1293,2.661,1294,2.405,1295,2.661,1296,2.661,1298,2.06,1306,2.213,1452,2.06,1461,2.708,1462,3.231,1511,2.213,1832,2.327,1834,2.661,1837,2.213,1839,3.952,1913,1.933,1966,2.213,1998,3.571,1999,2.661,2000,2.661,2189,1.933,2195,1.933,2198,3.231,2199,1.823,2201,2.06,2202,2.87,2203,2.06,2205,3.424,2260,1.643,2266,1.823,2567,2.213,2608,3.287,2609,2.405,2691,2.405,2700,2.661,2701,3.571,2725,2.405,2756,2.661,2776,2.213,2777,3.571,2822,3.571,2942,3.952,3399,3.952,3422,4.261,3425,3.952,3426,3.952,3540,1.728,3542,2.405,3640,2.661,3641,2.661,3643,3.952,3644,2.661,3645,3.05,3646,3.05,3647,3.05,3648,3.05,3649,3.05,3650,4.531,3651,3.05,3652,3.05,3653,3.05,3654,3.05,3655,3.05,3656,3.05]]],"invertedIndex":[["",{"_index":8,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["0",{"_index":334,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["0.063rem",{"_index":1528,"title":{},"body":{"components/DropdownComponent.html":{}}}],["0.095rem",{"_index":1715,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["0.1.0",{"_index":3376,"title":{},"body":{"changelog.html":{}}}],["0.11.4",{"_index":3539,"title":{},"body":{"dependencies.html":{}}}],["0.12",{"_index":1419,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.125rem",{"_index":1510,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.12rem",{"_index":1399,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.14",{"_index":1417,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.15s",{"_index":1422,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.18.0",{"_index":3482,"title":{},"body":{"dependencies.html":{}}}],["0.1rem",{"_index":1770,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["0.2",{"_index":1415,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.2.0",{"_index":3373,"title":{},"body":{"changelog.html":{}}}],["0.20.0",{"_index":3500,"title":{},"body":{"dependencies.html":{}}}],["0.25rem",{"_index":1425,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["0.2rem",{"_index":1519,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["0.2s",{"_index":1765,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["0.3125rem",{"_index":2838,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["0.3s",{"_index":1512,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.4",{"_index":343,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["0.4s",{"_index":2683,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["0.5.0",{"_index":3362,"title":{},"body":{"changelog.html":{}}}],["0.5rem",{"_index":637,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ViewerComponent.html":{}}}],["0.5s",{"_index":2926,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["0.6",{"_index":2846,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["0.6.0",{"_index":3342,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["0.625rem",{"_index":2841,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["0.6s",{"_index":1772,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["0.75rem",{"_index":1400,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.875rem",{"_index":1504,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.9375rem",{"_index":1713,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["0/1",{"_index":3388,"title":{},"body":{"coverage.html":{}}}],["0/16",{"_index":3387,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":3397,"title":{},"body":{"coverage.html":{}}}],["0/3",{"_index":3398,"title":{},"body":{"coverage.html":{}}}],["0/4",{"_index":3396,"title":{},"body":{"coverage.html":{}}}],["0/5",{"_index":3395,"title":{},"body":{"coverage.html":{}}}],["0/6",{"_index":3391,"title":{},"body":{"coverage.html":{}}}],["0/7",{"_index":3415,"title":{},"body":{"coverage.html":{}}}],["0000001d",{"_index":1771,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["0000003e",{"_index":1520,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["00000058",{"_index":1817,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["00e5ff",{"_index":691,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["01",{"_index":3039,"title":{},"body":{"changelog.html":{}}}],["02",{"_index":3219,"title":{},"body":{"changelog.html":{}}}],["03",{"_index":3174,"title":{},"body":{"changelog.html":{}}}],["04",{"_index":1395,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["05",{"_index":1438,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["06",{"_index":3312,"title":{},"body":{"changelog.html":{}}}],["07",{"_index":2995,"title":{},"body":{"changelog.html":{}}}],["08",{"_index":3323,"title":{},"body":{"changelog.html":{}}}],["09",{"_index":3088,"title":{},"body":{"changelog.html":{}}}],["0px",{"_index":1411,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0rem",{"_index":1508,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["1",{"_index":374,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["1.0",{"_index":3250,"title":{},"body":{"changelog.html":{}}}],["1.0.0",{"_index":3310,"title":{},"body":{"changelog.html":{}}}],["1.0.11",{"_index":3477,"title":{},"body":{"dependencies.html":{}}}],["1.0.3",{"_index":3486,"title":{},"body":{"dependencies.html":{}}}],["1.0.6",{"_index":3534,"title":{},"body":{"dependencies.html":{}}}],["1.0625rem",{"_index":2923,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["1.1.0",{"_index":3288,"title":{},"body":{"changelog.html":{}}}],["1.12rem",{"_index":1398,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["1.19.0",{"_index":3479,"title":{},"body":{"dependencies.html":{}}}],["1.2.0",{"_index":3249,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.2.3",{"_index":3489,"title":{},"body":{"dependencies.html":{}}}],["1.2.6",{"_index":3516,"title":{},"body":{"dependencies.html":{}}}],["1.25",{"_index":2551,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["1.25rem",{"_index":2553,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["1.2rem",{"_index":1815,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["1.3.5",{"_index":3218,"title":{},"body":{"changelog.html":{}}}],["1.4.0",{"_index":3199,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.4.1",{"_index":3502,"title":{},"body":{"dependencies.html":{}}}],["1.48rem",{"_index":1816,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["1.5.0",{"_index":3173,"title":{},"body":{"changelog.html":{}}}],["1.55rem",{"_index":1521,"title":{},"body":{"components/DropdownComponent.html":{}}}],["1.5em",{"_index":1702,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["1.5rem",{"_index":1429,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["1.6.0",{"_index":3160,"title":{},"body":{"changelog.html":{}}}],["1.7.0",{"_index":3150,"title":{},"body":{"changelog.html":{}}}],["1.7.2",{"_index":3490,"title":{},"body":{"dependencies.html":{}}}],["1.75rem",{"_index":1717,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["1.8.1",{"_index":3515,"title":{},"body":{"dependencies.html":{}}}],["1/1",{"_index":3400,"title":{},"body":{"coverage.html":{}}}],["1/8",{"_index":3405,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":497,"title":{},"body":{"components/AppWebComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["10.0.0",{"_index":3492,"title":{},"body":{"dependencies.html":{}}}],["10/10",{"_index":3417,"title":{},"body":{"coverage.html":{}}}],["10/12",{"_index":3404,"title":{},"body":{"coverage.html":{}}}],["10/13",{"_index":3421,"title":{},"body":{"coverage.html":{}}}],["100",{"_index":430,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{}}}],["10px",{"_index":1418,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["10x",{"_index":3300,"title":{},"body":{"changelog.html":{}}}],["11",{"_index":3201,"title":{},"body":{"changelog.html":{},"overview.html":{}}}],["11.2.1",{"_index":3517,"title":{},"body":{"dependencies.html":{}}}],["11/11",{"_index":3416,"title":{},"body":{"coverage.html":{}}}],["110",{"_index":1047,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["12",{"_index":3045,"title":{},"body":{"changelog.html":{},"coverage.html":{}}}],["12.0.1",{"_index":3519,"title":{},"body":{"dependencies.html":{}}}],["12.1.1",{"_index":3447,"title":{},"body":{"dependencies.html":{}}}],["12.1.3",{"_index":3451,"title":{},"body":{"dependencies.html":{}}}],["12/12",{"_index":3439,"title":{},"body":{"coverage.html":{}}}],["12/13",{"_index":3419,"title":{},"body":{"coverage.html":{}}}],["12/16",{"_index":3414,"title":{},"body":{"coverage.html":{}}}],["12/18",{"_index":3430,"title":{},"body":{"coverage.html":{}}}],["13",{"_index":1049,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["13/13",{"_index":3433,"title":{},"body":{"coverage.html":{}}}],["136",{"_index":2666,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["14/15",{"_index":3428,"title":{},"body":{"coverage.html":{}}}],["14/29",{"_index":3390,"title":{},"body":{"coverage.html":{}}}],["15.126.1",{"_index":3446,"title":{},"body":{"dependencies.html":{}}}],["15rem",{"_index":1714,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["16",{"_index":3134,"title":{},"body":{"changelog.html":{}}}],["16rem",{"_index":1433,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["17",{"_index":3046,"title":{},"body":{"changelog.html":{}}}],["17rem",{"_index":1439,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["18",{"_index":3637,"title":{},"body":{"overview.html":{}}}],["18/18",{"_index":3435,"title":{},"body":{"coverage.html":{}}}],["18rem",{"_index":2355,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["19.5rem",{"_index":1420,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["1].color",{"_index":724,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["1em",{"_index":1502,"title":{},"body":{"components/DropdownComponent.html":{}}}],["1px",{"_index":1524,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["1rem",{"_index":635,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["1rem/1.25rem",{"_index":1892,"title":{},"body":{"components/HeaderComponent.html":{}}}],["1s",{"_index":1887,"title":{},"body":{"components/HeaderComponent.html":{}}}],["2",{"_index":341,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{}}}],["2.0.0",{"_index":3133,"title":{},"body":{"changelog.html":{}}}],["2.0.5",{"_index":3496,"title":{},"body":{"dependencies.html":{}}}],["2.0625rem",{"_index":2922,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["2.1.0",{"_index":3104,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.2",{"_index":339,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["2.2.0",{"_index":3097,"title":{},"body":{"changelog.html":{}}}],["2.3.0",{"_index":3093,"title":{},"body":{"changelog.html":{}}}],["2.3.1",{"_index":3087,"title":{},"body":{"changelog.html":{}}}],["2.4.0",{"_index":3075,"title":{},"body":{"changelog.html":{}}}],["2.5.0",{"_index":3061,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.5rem",{"_index":1408,"title":{},"body":{"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["2.6.7",{"_index":3520,"title":{},"body":{"dependencies.html":{}}}],["2.8.5",{"_index":3488,"title":{},"body":{"dependencies.html":{}}}],["2.8125rem",{"_index":2840,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["2/10",{"_index":3442,"title":{},"body":{"coverage.html":{}}}],["2/2",{"_index":3408,"title":{},"body":{"coverage.html":{}}}],["20",{"_index":1842,"title":{},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["2019",{"_index":3322,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["2020",{"_index":3252,"title":{},"body":{"changelog.html":{}}}],["2021",{"_index":3044,"title":{},"body":{"changelog.html":{}}}],["2022",{"_index":2994,"title":{},"body":{"changelog.html":{}}}],["20em",{"_index":1708,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["20rem",{"_index":2556,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["21",{"_index":3151,"title":{},"body":{"changelog.html":{},"overview.html":{}}}],["22",{"_index":3313,"title":{},"body":{"changelog.html":{}}}],["229",{"_index":2667,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["23.75rem",{"_index":2356,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["24",{"_index":3363,"title":{},"body":{"changelog.html":{}}}],["24px.svg",{"_index":1288,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["25",{"_index":649,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{}}}],["255",{"_index":696,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["25rem",{"_index":1880,"title":{},"body":{"components/HeaderComponent.html":{}}}],["26",{"_index":3175,"title":{},"body":{"changelog.html":{}}}],["26.5rem",{"_index":1818,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["26/26",{"_index":3441,"title":{},"body":{"coverage.html":{}}}],["26th",{"_index":3204,"title":{},"body":{"changelog.html":{}}}],["27",{"_index":3040,"title":{},"body":{"changelog.html":{}}}],["275s",{"_index":1514,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["2979ff",{"_index":683,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["2px",{"_index":1413,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["2rem",{"_index":1384,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["3",{"_index":579,"title":{},"body":{"components/CheckboxComponent.html":{},"changelog.html":{},"overview.html":{}}}],["3.0",{"_index":3555,"title":{},"body":{"index.html":{}}}],["3.0.0",{"_index":3038,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["3.0.12",{"_index":3463,"title":{},"body":{"dependencies.html":{}}}],["3.1.0",{"_index":2993,"title":{},"body":{"changelog.html":{}}}],["3.5.5",{"_index":3468,"title":{},"body":{"dependencies.html":{}}}],["3.5rem",{"_index":2953,"title":{},"body":{"components/ViewerComponent.html":{}}}],["3.6.0",{"_index":3528,"title":{},"body":{"dependencies.html":{}}}],["3.7.1",{"_index":3470,"title":{},"body":{"dependencies.html":{}}}],["3.75rem",{"_index":2839,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["3/3",{"_index":3438,"title":{},"body":{"coverage.html":{}}}],["3/6",{"_index":3394,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":2665,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["300",{"_index":2554,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["3000",{"_index":293,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["31",{"_index":3289,"title":{},"body":{"changelog.html":{}}}],["32/37",{"_index":3424,"title":{},"body":{"coverage.html":{}}}],["33",{"_index":647,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{}}}],["35/36",{"_index":3407,"title":{},"body":{"coverage.html":{}}}],["35rem",{"_index":1819,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["3d",{"_index":2154,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["3rem",{"_index":1380,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["3s",{"_index":1516,"title":{},"body":{"components/DropdownComponent.html":{}}}],["4",{"_index":2802,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["4.17.1",{"_index":3494,"title":{},"body":{"dependencies.html":{}}}],["4.17.21",{"_index":3511,"title":{},"body":{"dependencies.html":{}}}],["4.3.0",{"_index":3484,"title":{},"body":{"dependencies.html":{}}}],["4.375rem",{"_index":1710,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["4.6.0",{"_index":3504,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":3403,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1891,"title":{},"body":{"components/HeaderComponent.html":{}}}],["42/44",{"_index":3436,"title":{},"body":{"coverage.html":{}}}],["48",{"_index":3389,"title":{},"body":{"coverage.html":{}}}],["4em",{"_index":1814,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["4px",{"_index":1416,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["4rem",{"_index":1878,"title":{},"body":{"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["5",{"_index":1435,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["5.0.0",{"_index":3505,"title":{},"body":{"dependencies.html":{}}}],["5.1.1",{"_index":3475,"title":{},"body":{"dependencies.html":{}}}],["5.2.0",{"_index":3510,"title":{},"body":{"dependencies.html":{}}}],["5.5rem",{"_index":961,"title":{},"body":{"components/ContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["5/5",{"_index":3411,"title":{},"body":{"coverage.html":{}}}],["5/6",{"_index":3431,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1387,"title":{},"body":{"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"coverage.html":{}}}],["500",{"_index":1886,"title":{},"body":{"components/HeaderComponent.html":{}}}],["5em",{"_index":1531,"title":{},"body":{"components/DropdownComponent.html":{}}}],["5rem",{"_index":1775,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["5s",{"_index":964,"title":{},"body":{"components/ContentComponent.html":{}}}],["6.0.0",{"_index":3513,"title":{},"body":{"dependencies.html":{}}}],["6.0.1",{"_index":3508,"title":{},"body":{"dependencies.html":{}}}],["6.10.2",{"_index":3522,"title":{},"body":{"dependencies.html":{}}}],["6.2.0",{"_index":3469,"title":{},"body":{"dependencies.html":{}}}],["6.5.1",{"_index":3531,"title":{},"body":{"dependencies.html":{}}}],["6.6.7",{"_index":3529,"title":{},"body":{"dependencies.html":{}}}],["6/12",{"_index":3413,"title":{},"body":{"coverage.html":{}}}],["6/6",{"_index":3412,"title":{},"body":{"coverage.html":{}}}],["6/8",{"_index":3393,"title":{},"body":{"coverage.html":{}}}],["600",{"_index":1406,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["66",{"_index":3429,"title":{},"body":{"coverage.html":{}}}],["6px",{"_index":1412,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["6s",{"_index":1773,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["7.75rem",{"_index":2552,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["7/7",{"_index":3437,"title":{},"body":{"coverage.html":{}}}],["72",{"_index":3401,"title":{},"body":{"coverage.html":{}}}],["7323e2",{"_index":687,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["75",{"_index":3392,"title":{},"body":{"coverage.html":{}}}],["75rem",{"_index":1711,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["76",{"_index":3420,"title":{},"body":{"coverage.html":{}}}],["8",{"_index":3155,"title":{},"body":{"changelog.html":{}}}],["8.25rem",{"_index":1885,"title":{},"body":{"components/HeaderComponent.html":{}}}],["8.3.2",{"_index":3537,"title":{},"body":{"dependencies.html":{}}}],["8.5.7",{"_index":3457,"title":{},"body":{"dependencies.html":{}}}],["8/11",{"_index":3402,"title":{},"body":{"coverage.html":{}}}],["8/8",{"_index":3432,"title":{},"body":{"coverage.html":{}}}],["80",{"_index":1432,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["82b1ff",{"_index":689,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["83",{"_index":1050,"title":{},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["85",{"_index":1427,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["86",{"_index":3423,"title":{},"body":{"coverage.html":{}}}],["9.5rem",{"_index":1523,"title":{},"body":{"components/DropdownComponent.html":{}}}],["9.85rem",{"_index":1497,"title":{},"body":{"components/DropdownComponent.html":{}}}],["9/9",{"_index":3440,"title":{},"body":{"coverage.html":{}}}],["90",{"_index":1774,"title":{},"body":{"components/FiltersContentComponent.html":{},"changelog.html":{}}}],["92",{"_index":3418,"title":{},"body":{"coverage.html":{}}}],["93",{"_index":3427,"title":{},"body":{"coverage.html":{}}}],["95",{"_index":2557,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"changelog.html":{},"coverage.html":{}}}],["97",{"_index":3406,"title":{},"body":{"coverage.html":{}}}],["99",{"_index":2682,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["9th",{"_index":3184,"title":{},"body":{"changelog.html":{}}}],["_aggregatedataquerystatus",{"_index":1094,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_blank",{"_index":390,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["_celltypetermoccurencesdataquerystatus",{"_index":1098,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_config",{"_index":2970,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["_createcontainer",{"_index":409,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["_error",{"_index":1945,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["_expanded",{"_index":2035,"title":{},"body":{"classes/InitializationState.html":{}}}],["_index",{"_index":2797,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["_measuredmargin",{"_index":2065,"title":{},"body":{"classes/InitializationState.html":{}}}],["_measuredwidth",{"_index":2059,"title":{},"body":{"classes/InitializationState.html":{}}}],["_msg",{"_index":787,"title":{},"body":{"components/ContainerComponent.html":{}}}],["_ontologytermoccurencesdataquerystatus",{"_index":1096,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_opened",{"_index":2031,"title":{},"body":{"classes/InitializationState.html":{}}}],["_position",{"_index":2027,"title":{},"body":{"classes/InitializationState.html":{}}}],["_providerfilterquerystatus",{"_index":1104,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_scenedataquerystatus",{"_index":1100,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_technologyfilterquerystatus",{"_index":1102,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_tissueblockdataquerystatus",{"_index":1092,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["a.color.color",{"_index":739,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["ability",{"_index":3114,"title":{},"body":{"changelog.html":{}}}],["above",{"_index":3359,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["absolute",{"_index":1423,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["acc",{"_index":734,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["acc[item.key",{"_index":732,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["accent",{"_index":626,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["acceptable",{"_index":215,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["acceptableviewerdomains",{"_index":221,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["accepting",{"_index":2115,"title":{},"body":{"classes/InitializationState.html":{}}}],["accessors",{"_index":772,"title":{},"body":{"components/ContainerComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["according",{"_index":297,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["accordingly",{"_index":1796,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["accurate",{"_index":3172,"title":{},"body":{"changelog.html":{}}}],["acf32b",{"_index":688,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["action",{"_index":3628,"title":{},"body":{"license.html":{}}}],["actions",{"_index":3241,"title":{},"body":{"changelog.html":{}}}],["activate",{"_index":232,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["active",{"_index":2593,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["active/showing",{"_index":2677,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["activeorgans",{"_index":2651,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["activeorgans.has(o.representation_of)).map(o",{"_index":2656,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["activeorgans.has(tag",{"_index":2660,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["actual_component",{"_index":555,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["add",{"_index":380,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/ThemingService.html":{}}}],["addclass",{"_index":2772,"title":{},"body":{"injectables/ThemingService.html":{}}}],["added",{"_index":2996,"title":{},"body":{"changelog.html":{}}}],["additional",{"_index":3360,"title":{},"body":{"changelog.html":{}}}],["addressed",{"_index":3282,"title":{},"body":{"changelog.html":{}}}],["adds",{"_index":2736,"title":{},"body":{"injectables/ThemingService.html":{},"changelog.html":{}}}],["addsvgicon",{"_index":1948,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["adjusting",{"_index":3279,"title":{},"body":{"changelog.html":{}}}],["adjustment",{"_index":3198,"title":{},"body":{"changelog.html":{}}}],["advanced",{"_index":3136,"title":{},"body":{"changelog.html":{}}}],["afterviewinit",{"_index":755,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["again",{"_index":3259,"title":{},"body":{"changelog.html":{}}}],["against",{"_index":2104,"title":{},"body":{"classes/InitializationState.html":{}}}],["age",{"_index":1644,"title":{},"body":{"components/DualSliderComponent.html":{},"changelog.html":{}}}],["agerange",{"_index":1046,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["aggregate",{"_index":1115,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["aggregatedata",{"_index":1116,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/ResultsBrowserComponent.html":{}}}],["aggregatedata(filter",{"_index":1187,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["aggregatedataquerystatus",{"_index":1093,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["aggregateresult",{"_index":1031,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/ResultsBrowserComponent.html":{}}}],["ala",{"_index":3091,"title":{},"body":{"changelog.html":{}}}],["aliases",{"_index":3639,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["align",{"_index":1381,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["all_possible_organs",{"_index":2607,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["allcompleted",{"_index":3409,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["allcompleted(states",{"_index":1065,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["allowed",{"_index":2954,"title":{},"body":{"components/ViewerComponent.html":{}}}],["allowing",{"_index":2508,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["allows",{"_index":1331,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"changelog.html":{}}}],["allowtouchmove",{"_index":2800,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["along",{"_index":2454,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["alongside",{"_index":2679,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["alpha",{"_index":3353,"title":{},"body":{"changelog.html":{}}}],["alpha.1",{"_index":3334,"title":{},"body":{"changelog.html":{}}}],["alpha.2",{"_index":3330,"title":{},"body":{"changelog.html":{}}}],["alpha.3",{"_index":3321,"title":{},"body":{"changelog.html":{}}}],["already",{"_index":809,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/ThemingService.html":{}}}],["alt",{"_index":3559,"title":{},"body":{"index.html":{}}}],["always",{"_index":837,"title":{},"body":{"components/ContainerComponent.html":{},"components/HeaderComponent.html":{}}}],["analytics",{"_index":576,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["analyticsmodule",{"_index":1001,"title":{},"body":{"modules/CoreModule.html":{}}}],["analyticsmodule.forroot",{"_index":1013,"title":{},"body":{"modules/CoreModule.html":{}}}],["anatomical",{"_index":358,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["anatomicalstructuresettings",{"_index":2612,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["and/or",{"_index":3601,"title":{},"body":{"license.html":{}}}],["angular",{"_index":175,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["angular's",{"_index":1607,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["angular/animations",{"_index":928,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"dependencies.html":{}}}],["angular/cdk",{"_index":3448,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk/coercion",{"_index":1985,"title":{},"body":{"classes/InitializationState.html":{}}}],["angular/cdk/overlay",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"injectables/ThemingService.html":{}}}],["angular/cdk/portal",{"_index":1646,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{}}}],["angular/cdk/scrolling",{"_index":2564,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["angular/common",{"_index":658,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"dependencies.html":{}}}],["angular/common/http",{"_index":998,"title":{},"body":{"modules/CoreModule.html":{}}}],["angular/compiler",{"_index":3449,"title":{},"body":{"dependencies.html":{}}}],["angular/core",{"_index":48,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"dependencies.html":{}}}],["angular/elements",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["angular/forms",{"_index":2323,"title":{},"body":{"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"dependencies.html":{}}}],["angular/material",{"_index":3450,"title":{},"body":{"dependencies.html":{}}}],["angular/material/autocomplete",{"_index":2324,"title":{},"body":{"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{}}}],["angular/material/button",{"_index":1786,"title":{},"body":{"modules/FiltersContentModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["angular/material/checkbox",{"_index":612,"title":{},"body":{"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{}}}],["angular/material/form",{"_index":1538,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/OntologySearchModule.html":{}}}],["angular/material/icon",{"_index":50,"title":{},"body":{"modules/AppModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/OntologySearchModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["angular/material/input",{"_index":2366,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["angular/material/progress",{"_index":2689,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"modules/ViewerModule.html":{}}}],["angular/material/select",{"_index":1540,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{}}}],["angular/material/snack",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["angular/material/toolbar",{"_index":1902,"title":{},"body":{"modules/HeaderModule.html":{}}}],["angular/material/tooltip",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{}}}],["angular/material/tree",{"_index":2478,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["angular/platform",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{},"dependencies.html":{}}}],["angular/router",{"_index":3453,"title":{},"body":{"dependencies.html":{}}}],["angular/youtube",{"_index":3454,"title":{},"body":{"dependencies.html":{}}}],["animate",{"_index":924,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["animate('.5s",{"_index":2012,"title":{},"body":{"classes/InitializationState.html":{}}}],["animate('1s",{"_index":934,"title":{},"body":{"components/ContentComponent.html":{}}}],["animate(0",{"_index":2011,"title":{},"body":{"classes/InitializationState.html":{}}}],["animation",{"_index":1511,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["animations",{"_index":882,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["animationsenabled",{"_index":885,"title":{},"body":{"components/ContentComponent.html":{}}}],["api",{"_index":3001,"title":{},"body":{"changelog.html":{}}}],["apiendpointdatasourceservice",{"_index":1301,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["app",{"_index":88,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/OntologySelectionComponent.html":{},"modules/StoreModule.html":{},"miscellaneous/variables.html":{}}}],["app.component",{"_index":69,"title":{},"body":{"modules/AppModule.html":{}}}],["app.component.html",{"_index":184,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.component.scss",{"_index":186,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app/core/services/theming/theming.service",{"_index":68,"title":{},"body":{"modules/AppModule.html":{}}}],["app_bootstrap_listener",{"_index":2721,"title":{},"body":{"modules/ThemingModule.html":{}}}],["appcomponent",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["appear",{"_index":3056,"title":{},"body":{"changelog.html":{}}}],["appearance",{"_index":2352,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["appelement",{"_index":104,"title":{},"body":{"modules/AppModule.html":{}}}],["appendtoroot",{"_index":410,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["application",{"_index":3189,"title":{},"body":{"changelog.html":{}}}],["application/javascript",{"_index":2986,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["applied",{"_index":1744,"title":{},"body":{"components/FiltersContentComponent.html":{},"changelog.html":{}}}],["apply",{"_index":1748,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["applybuttonclick",{"_index":1732,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["applyfilters",{"_index":1737,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["applyfilters(filters",{"_index":1804,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["applythemeclass",{"_index":2728,"title":{},"body":{"injectables/ThemingService.html":{}}}],["applythemeclass(cls",{"_index":2734,"title":{},"body":{"injectables/ThemingService.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appname",{"_index":1016,"title":{},"body":{"modules/CoreModule.html":{}}}],["appoptions",{"_index":113,"title":{"interfaces/AppOptions.html":{}},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["approotoverlaycontainer",{"_index":36,"title":{"injectables/AppRootOverlayContainer.html":{}},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["appropriate",{"_index":3018,"title":{},"body":{"changelog.html":{}}}],["appwebcomponent",{"_index":9,"title":{"components/AppWebComponent.html":{}},"body":{"modules/AppModule.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["april",{"_index":3183,"title":{},"body":{"changelog.html":{}}}],["arg",{"_index":1936,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["args",{"_index":1940,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["args.filter(value",{"_index":1955,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["argument",{"_index":1953,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["arguments",{"_index":1583,"title":{},"body":{"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["arising",{"_index":3631,"title":{},"body":{"license.html":{}}}],["array",{"_index":371,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/TissueSectionVisComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["array.from(searchresults.values",{"_index":2426,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["array.isarray(val",{"_index":486,"title":{},"body":{"components/AppWebComponent.html":{}}}],["arrow",{"_index":1529,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["arrow_left",{"_index":2914,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["arrow_right",{"_index":2913,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["asct+b",{"_index":3047,"title":{},"body":{"changelog.html":{}}}],["asking",{"_index":585,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["assays",{"_index":1766,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["assets/icons/expand_less",{"_index":1295,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/expand_more",{"_index":1293,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/filter.svg",{"_index":1296,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/opacity",{"_index":1287,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/organs/ico",{"_index":1228,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/visibility",{"_index":1290,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assigncolor",{"_index":740,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assigncolor(@payload('key",{"_index":717,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["assigncolor(key",{"_index":743,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment",{"_index":705,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["assignment.state",{"_index":2158,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{}}}],["assignment.state.ts",{"_index":663,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["assignment.state.ts:102",{"_index":748,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:57",{"_index":751,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:59",{"_index":752,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:60",{"_index":749,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:61",{"_index":750,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:63",{"_index":746,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:69",{"_index":745,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment/color",{"_index":662,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["assignment/selection",{"_index":3162,"title":{},"body":{"changelog.html":{}}}],["assignments",{"_index":2148,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["associated",{"_index":2192,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"license.html":{}}}],["async",{"_index":1971,"title":{},"body":{"classes/InitializationState.html":{}}}],["at(nodes",{"_index":2433,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["atscrollbottom",{"_index":2490,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["attach",{"_index":2903,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["attached",{"_index":406,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["attempts",{"_index":3079,"title":{},"body":{"changelog.html":{}}}],["authentication",{"_index":1884,"title":{},"body":{"components/HeaderComponent.html":{}}}],["authors",{"_index":3622,"title":{},"body":{"license.html":{}}}],["auto",{"_index":962,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["autocomplete",{"_index":2318,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["autocompleteopen",{"_index":2274,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["automatic",{"_index":3269,"title":{},"body":{"changelog.html":{}}}],["automatically",{"_index":3225,"title":{},"body":{"changelog.html":{}}}],["available",{"_index":2590,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"modules.html":{}}}],["avoid",{"_index":3124,"title":{},"body":{"changelog.html":{}}}],["await",{"_index":1977,"title":{},"body":{"classes/InitializationState.html":{}}}],["awaited",{"_index":1967,"title":{},"body":{"classes/InitializationState.html":{}}}],["award",{"_index":3578,"title":{},"body":{"index.html":{}}}],["axis",{"_index":2887,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["b92dff",{"_index":685,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["backend",{"_index":3065,"title":{},"body":{"changelog.html":{}}}],["background",{"_index":1332,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"index.html":{}}}],["backing",{"_index":1929,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["bar",{"_index":53,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{}}}],["base",{"_index":3338,"title":{},"body":{"changelog.html":{}}}],["based",{"_index":370,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["basepath",{"_index":1018,"title":{},"body":{"modules/CoreModule.html":{}}}],["basewebcomponent",{"_index":446,"title":{},"body":{"components/AppWebComponent.html":{}}}],["basic",{"_index":3135,"title":{},"body":{"changelog.html":{}}}],["bbox",{"_index":2053,"title":{},"body":{"classes/InitializationState.html":{}}}],["bbox.left",{"_index":2056,"title":{},"body":{"classes/InitializationState.html":{}}}],["bbox.right",{"_index":2055,"title":{},"body":{"classes/InitializationState.html":{}}}],["before",{"_index":1216,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["being",{"_index":2705,"title":{},"body":{"modules/StoreModule.html":{},"changelog.html":{}}}],["beta",{"_index":3043,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["better",{"_index":3105,"title":{},"body":{"changelog.html":{}}}],["between",{"_index":345,"title":{},"body":{"interfaces/AppOptions.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["bind",{"_index":1029,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{}}}],["binds",{"_index":2747,"title":{},"body":{"injectables/ThemingService.html":{}}}],["bladder",{"_index":1227,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["bladder.svg",{"_index":1229,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["blob",{"_index":2984,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["block",{"_index":426,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["blocks",{"_index":3000,"title":{},"body":{"changelog.html":{}}}],["blood",{"_index":1230,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["blood.svg",{"_index":1231,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["bmi",{"_index":3072,"title":{},"body":{"changelog.html":{}}}],["bmirange",{"_index":1048,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["board",{"_index":3332,"title":{},"body":{"changelog.html":{}}}],["body",{"_index":201,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"dependencies.html":{}}}],["bodyui",{"_index":192,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["bodyuicomponent",{"_index":150,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["bodyuimodule",{"_index":61,"title":{},"body":{"modules/AppModule.html":{}}}],["bold",{"_index":640,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["bone",{"_index":1232,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["boolean",{"_index":125,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{}}}],["booleaninput",{"_index":1983,"title":{},"body":{"classes/InitializationState.html":{}}}],["bootstrap",{"_index":2744,"title":{},"body":{"injectables/ThemingService.html":{}}}],["border",{"_index":1385,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["both",{"_index":1045,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["bottom",{"_index":636,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["bound",{"_index":1627,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["box",{"_index":1410,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["brain",{"_index":1235,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["brain.svg",{"_index":1236,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["branch",{"_index":177,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["breaking",{"_index":3145,"title":{},"body":{"changelog.html":{}}}],["breaks",{"_index":2167,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["bringing",{"_index":3156,"title":{},"body":{"changelog.html":{}}}],["browse",{"_index":3634,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"modules/DrawerModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ResultsBrowserComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"dependencies.html":{},"modules.html":{}}}],["browser'},{'name",{"_index":540,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["browser.component",{"_index":2565,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["browser.component.html",{"_index":2489,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.scss",{"_index":2488,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts",{"_index":2480,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"coverage.html":{}}}],["browser.component.ts:102",{"_index":2529,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:111",{"_index":2518,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:115",{"_index":2526,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:24",{"_index":2506,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:29",{"_index":2503,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:34",{"_index":2507,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:36",{"_index":2505,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:38",{"_index":2504,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:44",{"_index":2511,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:49",{"_index":2516,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:54",{"_index":2514,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:56",{"_index":2509,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:58",{"_index":2510,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:64",{"_index":2502,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:79",{"_index":2523,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:93",{"_index":2520,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.module",{"_index":79,"title":{},"body":{"modules/AppModule.html":{}}}],["browser.module.ts",{"_index":2562,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["browser/animations",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{}}}],["browser/donor",{"_index":1313,"title":{},"body":{"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"coverage.html":{}}}],["browser/results",{"_index":78,"title":{},"body":{"modules/AppModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"coverage.html":{}}}],["browser/tissue",{"_index":2859,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"coverage.html":{}}}],["browseranimationsmodule",{"_index":59,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{}}}],["browserify",{"_index":3530,"title":{},"body":{"dependencies.html":{}}}],["browsermodule",{"_index":56,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{}}}],["browsing",{"_index":3380,"title":{},"body":{"changelog.html":{}}}],["bubble_chart",{"_index":1372,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["bug",{"_index":3034,"title":{},"body":{"changelog.html":{}}}],["build",{"_index":3551,"title":{},"body":{"index.html":{}}}],["builds",{"_index":3033,"title":{},"body":{"changelog.html":{}}}],["builtin_parsers",{"_index":477,"title":{},"body":{"components/AppWebComponent.html":{}}}],["builtin_parsers.boolean",{"_index":504,"title":{},"body":{"components/AppWebComponent.html":{}}}],["builtin_parsers.json(value",{"_index":489,"title":{},"body":{"components/AppWebComponent.html":{}}}],["button",{"_index":985,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["button'},{'name",{"_index":552,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["button.component",{"_index":1465,"title":{},"body":{"modules/DrawerModule.html":{}}}],["button.component.html",{"_index":2896,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.scss",{"_index":2895,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts",{"_index":2894,"title":{},"body":{"components/ToggleButtonComponent.html":{},"coverage.html":{}}}],["button.component.ts:19",{"_index":2901,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:22",{"_index":2902,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:27",{"_index":2912,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:38",{"_index":2909,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:40",{"_index":2908,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:42",{"_index":2899,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:65",{"_index":2905,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:75",{"_index":2906,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:85",{"_index":2904,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:97",{"_index":2907,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button/toggle",{"_index":1464,"title":{},"body":{"modules/DrawerModule.html":{},"components/ToggleButtonComponent.html":{},"coverage.html":{}}}],["c",{"_index":3583,"title":{},"body":{"license.html":{}}}],["c.color",{"_index":728,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["cache",{"_index":3474,"title":{},"body":{"dependencies.html":{}}}],["cacheable",{"_index":3533,"title":{},"body":{"dependencies.html":{}}}],["cached",{"_index":2057,"title":{},"body":{"classes/InitializationState.html":{}}}],["calc",{"_index":2925,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["calc(100",{"_index":960,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["calc(100vh",{"_index":2555,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["calc(50",{"_index":2016,"title":{},"body":{"classes/InitializationState.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["calculated",{"_index":2049,"title":{},"body":{"classes/InitializationState.html":{}}}],["call",{"_index":318,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["callback",{"_index":2308,"title":{},"body":{"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["called",{"_index":1068,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["cancelregistration",{"_index":3115,"title":{},"body":{"changelog.html":{}}}],["candidate",{"_index":3315,"title":{},"body":{"changelog.html":{}}}],["cannon",{"_index":3480,"title":{},"body":{"dependencies.html":{}}}],["captures",{"_index":348,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["card",{"_index":1316,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["card'},{'name",{"_index":521,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["card.component",{"_index":1454,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["card.component.html",{"_index":1320,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.scss",{"_index":1319,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts",{"_index":1315,"title":{},"body":{"components/DonorCardComponent.html":{},"coverage.html":{}}}],["card.component.ts:17",{"_index":1341,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:20",{"_index":1337,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:23",{"_index":1336,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:26",{"_index":1330,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:29",{"_index":1334,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:31",{"_index":1335,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:34",{"_index":1338,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:37",{"_index":1339,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:40",{"_index":1329,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:52",{"_index":1342,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:62",{"_index":1354,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:76",{"_index":1346,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.module",{"_index":2566,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["card.module.ts",{"_index":1450,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["card/donor",{"_index":1314,"title":{},"body":{"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"modules/ResultsBrowserModule.html":{},"coverage.html":{}}}],["cards",{"_index":2780,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel",{"_index":207,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["carousel'},{'name",{"_index":545,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["carousel.component",{"_index":2856,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["carousel.component.html",{"_index":2782,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.scss",{"_index":2781,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts",{"_index":2777,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["carousel.component.ts:29",{"_index":2791,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:34",{"_index":2789,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:39",{"_index":2790,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:44",{"_index":2823,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:49",{"_index":2826,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:56",{"_index":2830,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:63",{"_index":2807,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:75",{"_index":2821,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:89",{"_index":2795,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.module",{"_index":1453,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["carousel.module.ts",{"_index":2852,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["carousel/thumbnail",{"_index":1452,"title":{},"body":{"modules/DonorCardModule.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["case",{"_index":939,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["cases",{"_index":3287,"title":{},"body":{"changelog.html":{}}}],["catch",{"_index":1944,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["cause",{"_index":2943,"title":{},"body":{"components/ViewerComponent.html":{}}}],["ccf",{"_index":65,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/StoreModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"index.html":{}}}],["ccf's",{"_index":3245,"title":{},"body":{"changelog.html":{}}}],["ccfapiconfiguration",{"_index":1002,"title":{},"body":{"modules/CoreModule.html":{}}}],["ccfapimodule",{"_index":1003,"title":{},"body":{"modules/CoreModule.html":{}}}],["ccfapimodule.forroot",{"_index":1017,"title":{},"body":{"modules/CoreModule.html":{}}}],["ccfdatabase",{"_index":3653,"title":{},"body":{"miscellaneous/variables.html":{}}}],["ccfdatabasedatasourceservice",{"_index":1302,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["ccfdatabaseoptions",{"_index":117,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/WorkerDataSourceService.html":{}}}],["ccfdrawer",{"_index":2004,"title":{},"body":{"classes/InitializationState.html":{}}}],["ccfdrawercontainer",{"_index":758,"title":{},"body":{"components/ContainerComponent.html":{}}}],["cdk",{"_index":1526,"title":{},"body":{"components/DropdownComponent.html":{}}}],["cdkportal",{"_index":1638,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["cdr",{"_index":261,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["cdr.markforcheck",{"_index":278,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["ceil",{"_index":1671,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["cell",{"_index":203,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"changelog.html":{}}}],["celltypeselectionlabel",{"_index":202,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["celltypetermoccurencesdata",{"_index":1124,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurencesdata$.pipe(take(1)).subscribe(celltypetermsfulldata",{"_index":1173,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurencesdata(filter",{"_index":1193,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurencesdataquerystatus",{"_index":1097,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurrences",{"_index":1143,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypeterms",{"_index":239,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["celltypetermsfulldata",{"_index":1109,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetreemodel",{"_index":240,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["center",{"_index":883,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"index.html":{}}}],["cff",{"_index":963,"title":{},"body":{"components/ContentComponent.html":{}}}],["change",{"_index":779,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySelectionComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{},"index.html":{}}}],["changed",{"_index":855,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["changedetection",{"_index":187,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["changedetectionstrategy",{"_index":128,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["changedetectionstrategy.onpush",{"_index":188,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["changedetectorref",{"_index":129,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["changelog",{"_index":2990,"title":{"changelog.html":{}},"body":{"changelog.html":{},"index.html":{}}}],["changes",{"_index":307,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/InitializationState.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["changes.selection",{"_index":1660,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["changes.valuerange",{"_index":1658,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["channel",{"_index":762,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["channels",{"_index":2225,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["charge",{"_index":178,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ResultsBrowserComponent.html":{},"license.html":{}}}],["checkbox",{"_index":564,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["checkbox'},{'name",{"_index":514,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["checkbox.component",{"_index":660,"title":{},"body":{"modules/CheckboxModule.html":{}}}],["checkbox.component.html",{"_index":566,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkbox.component.scss",{"_index":565,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkbox.mat",{"_index":625,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkboxcomponent",{"_index":513,"title":{"components/CheckboxComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["checkboxes",{"_index":561,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkboxmodule",{"_index":651,"title":{"modules/CheckboxModule.html":{}},"body":{"modules/CheckboxModule.html":{},"modules/FiltersContentModule.html":{},"modules.html":{},"overview.html":{}}}],["checked",{"_index":591,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["checked.mat",{"_index":1391,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["checkmark",{"_index":627,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checks",{"_index":912,"title":{},"body":{"components/ContentComponent.html":{}}}],["checkselected",{"_index":1396,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["child",{"_index":1402,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySelectionComponent.html":{},"miscellaneous/typealiases.html":{}}}],["children",{"_index":1854,"title":{},"body":{"classes/FlatNode.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["choices",{"_index":1478,"title":{},"body":{"components/DropdownComponent.html":{}}}],["choose",{"_index":3265,"title":{},"body":{"changelog.html":{}}}],["ci/cd",{"_index":3243,"title":{},"body":{"changelog.html":{}}}],["claim",{"_index":3625,"title":{},"body":{"license.html":{}}}],["class",{"_index":99,"title":{"classes/FlatNode.html":{},"classes/InitializationState.html":{},"classes/MessageChannel.html":{}},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["class.ccf",{"_index":2897,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["class.cff",{"_index":892,"title":{},"body":{"components/ContentComponent.html":{}}}],["classend",{"_index":2022,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["classes",{"_index":1829,"title":{},"body":{"classes/FlatNode.html":{},"classes/InitializationState.html":{},"classes/MessageChannel.html":{},"overview.html":{}}}],["classname",{"_index":763,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["clean",{"_index":2233,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["cleans",{"_index":796,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["cleanup",{"_index":3042,"title":{},"body":{"changelog.html":{}}}],["clear",{"_index":2950,"title":{},"body":{"components/ViewerComponent.html":{}}}],["click",{"_index":1349,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["clicked",{"_index":1340,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["clicking",{"_index":3143,"title":{},"body":{"changelog.html":{}}}],["clicks",{"_index":2583,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["client",{"_index":1005,"title":{},"body":{"modules/CoreModule.html":{}}}],["clientheight",{"_index":2543,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["clip",{"_index":2845,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["close",{"_index":394,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ViewerComponent.html":{}}}],["closed",{"_index":1989,"title":{},"body":{"classes/InitializationState.html":{},"components/ViewerComponent.html":{},"miscellaneous/typealiases.html":{}}}],["closeexpanded",{"_index":2082,"title":{},"body":{"classes/InitializationState.html":{}}}],["closeiframeviewer",{"_index":396,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["closeopendone",{"_index":2089,"title":{},"body":{"classes/InitializationState.html":{}}}],["closes",{"_index":1591,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{}}}],["closesliderpopover",{"_index":1557,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["closesliderpopover(target",{"_index":1597,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["cls",{"_index":2738,"title":{},"body":{"injectables/ThemingService.html":{}}}],["clsname",{"_index":1321,"title":{},"body":{"components/DonorCardComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_declarations",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":6,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_checkboxmodule",{"_index":652,"title":{},"body":{"modules/CheckboxModule.html":{},"overview.html":{}}}],["cluster_checkboxmodule_declarations",{"_index":653,"title":{},"body":{"modules/CheckboxModule.html":{},"overview.html":{}}}],["cluster_checkboxmodule_exports",{"_index":654,"title":{},"body":{"modules/CheckboxModule.html":{},"overview.html":{}}}],["cluster_coremodule",{"_index":990,"title":{},"body":{"modules/CoreModule.html":{},"overview.html":{}}}],["cluster_coremodule_exports",{"_index":992,"title":{},"body":{"modules/CoreModule.html":{},"overview.html":{}}}],["cluster_coremodule_imports",{"_index":991,"title":{},"body":{"modules/CoreModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule",{"_index":1444,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule_declarations",{"_index":1446,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule_exports",{"_index":1447,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule_imports",{"_index":1445,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_drawermodule",{"_index":1457,"title":{},"body":{"modules/DrawerModule.html":{},"overview.html":{}}}],["cluster_drawermodule_declarations",{"_index":1458,"title":{},"body":{"modules/DrawerModule.html":{},"overview.html":{}}}],["cluster_drawermodule_exports",{"_index":1459,"title":{},"body":{"modules/DrawerModule.html":{},"overview.html":{}}}],["cluster_dropdownmodule",{"_index":1533,"title":{},"body":{"modules/DropdownModule.html":{},"overview.html":{}}}],["cluster_dropdownmodule_declarations",{"_index":1534,"title":{},"body":{"modules/DropdownModule.html":{},"overview.html":{}}}],["cluster_dropdownmodule_exports",{"_index":1535,"title":{},"body":{"modules/DropdownModule.html":{},"overview.html":{}}}],["cluster_dualslidermodule",{"_index":1718,"title":{},"body":{"modules/DualSliderModule.html":{},"overview.html":{}}}],["cluster_dualslidermodule_declarations",{"_index":1720,"title":{},"body":{"modules/DualSliderModule.html":{},"overview.html":{}}}],["cluster_dualslidermodule_exports",{"_index":1719,"title":{},"body":{"modules/DualSliderModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule",{"_index":1777,"title":{},"body":{"modules/FiltersContentModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule_declarations",{"_index":1780,"title":{},"body":{"modules/FiltersContentModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule_exports",{"_index":1778,"title":{},"body":{"modules/FiltersContentModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule_imports",{"_index":1779,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["cluster_filterspopovermodule",{"_index":1822,"title":{},"body":{"modules/FiltersPopoverModule.html":{},"overview.html":{}}}],["cluster_filterspopovermodule_declarations",{"_index":1825,"title":{},"body":{"modules/FiltersPopoverModule.html":{},"overview.html":{}}}],["cluster_filterspopovermodule_exports",{"_index":1823,"title":{},"body":{"modules/FiltersPopoverModule.html":{},"overview.html":{}}}],["cluster_filterspopovermodule_imports",{"_index":1824,"title":{},"body":{"modules/FiltersPopoverModule.html":{}}}],["cluster_headermodule",{"_index":1897,"title":{},"body":{"modules/HeaderModule.html":{},"overview.html":{}}}],["cluster_headermodule_declarations",{"_index":1899,"title":{},"body":{"modules/HeaderModule.html":{},"overview.html":{}}}],["cluster_headermodule_exports",{"_index":1898,"title":{},"body":{"modules/HeaderModule.html":{},"overview.html":{}}}],["cluster_ontologyexplorationmodule",{"_index":2254,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"overview.html":{}}}],["cluster_ontologyexplorationmodule_exports",{"_index":2256,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"overview.html":{}}}],["cluster_ontologyexplorationmodule_imports",{"_index":2255,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"overview.html":{}}}],["cluster_ontologysearchmodule",{"_index":2358,"title":{},"body":{"modules/OntologySearchModule.html":{},"overview.html":{}}}],["cluster_ontologysearchmodule_declarations",{"_index":2359,"title":{},"body":{"modules/OntologySearchModule.html":{},"overview.html":{}}}],["cluster_ontologysearchmodule_exports",{"_index":2360,"title":{},"body":{"modules/OntologySearchModule.html":{},"overview.html":{}}}],["cluster_ontologyselectionmodule",{"_index":2467,"title":{},"body":{"modules/OntologySelectionModule.html":{},"overview.html":{}}}],["cluster_ontologyselectionmodule_declarations",{"_index":3636,"title":{},"body":{"overview.html":{}}}],["cluster_ontologyselectionmodule_exports",{"_index":2470,"title":{},"body":{"modules/OntologySelectionModule.html":{},"overview.html":{}}}],["cluster_ontologyselectionmodule_imports",{"_index":2469,"title":{},"body":{"modules/OntologySelectionModule.html":{}}}],["cluster_ontologyselectionmodule_ontologyselectioncomponent_providers",{"_index":2468,"title":{},"body":{"modules/OntologySelectionModule.html":{},"overview.html":{}}}],["cluster_ontologytreemodule",{"_index":2473,"title":{},"body":{"modules/OntologyTreeModule.html":{},"overview.html":{}}}],["cluster_ontologytreemodule_declarations",{"_index":2474,"title":{},"body":{"modules/OntologyTreeModule.html":{},"overview.html":{}}}],["cluster_ontologytreemodule_exports",{"_index":2475,"title":{},"body":{"modules/OntologyTreeModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule",{"_index":2558,"title":{},"body":{"modules/ResultsBrowserModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule_declarations",{"_index":2561,"title":{},"body":{"modules/ResultsBrowserModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule_exports",{"_index":2559,"title":{},"body":{"modules/ResultsBrowserModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule_imports",{"_index":2560,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["cluster_spinneroverlaymodule",{"_index":2684,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"overview.html":{}}}],["cluster_spinneroverlaymodule_declarations",{"_index":2685,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"overview.html":{}}}],["cluster_spinneroverlaymodule_exports",{"_index":2686,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"overview.html":{}}}],["cluster_themingmodule",{"_index":2718,"title":{},"body":{"modules/ThemingModule.html":{},"overview.html":{}}}],["cluster_themingmodule_providers",{"_index":2719,"title":{},"body":{"modules/ThemingModule.html":{},"overview.html":{}}}],["cluster_thumbnailcarouselmodule",{"_index":2849,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{},"overview.html":{}}}],["cluster_thumbnailcarouselmodule_declarations",{"_index":2850,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{},"overview.html":{}}}],["cluster_thumbnailcarouselmodule_exports",{"_index":2851,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{},"overview.html":{}}}],["cluster_tissuesectionvismodule",{"_index":2888,"title":{},"body":{"modules/TissueSectionVisModule.html":{},"overview.html":{}}}],["cluster_tissuesectionvismodule_declarations",{"_index":2889,"title":{},"body":{"modules/TissueSectionVisModule.html":{},"overview.html":{}}}],["cluster_tissuesectionvismodule_exports",{"_index":2890,"title":{},"body":{"modules/TissueSectionVisModule.html":{},"overview.html":{}}}],["cluster_viewermodule",{"_index":2955,"title":{},"body":{"modules/ViewerModule.html":{},"overview.html":{}}}],["cluster_viewermodule_declarations",{"_index":2957,"title":{},"body":{"modules/ViewerModule.html":{},"overview.html":{}}}],["cluster_viewermodule_exports",{"_index":2956,"title":{},"body":{"modules/ViewerModule.html":{},"overview.html":{}}}],["code",{"_index":3029,"title":{},"body":{"changelog.html":{}}}],["codebase",{"_index":3255,"title":{},"body":{"changelog.html":{}}}],["codeblob",{"_index":2983,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["codex",{"_index":3299,"title":{},"body":{"changelog.html":{}}}],["codifies",{"_index":3347,"title":{},"body":{"changelog.html":{}}}],["coercebooleanproperty",{"_index":1984,"title":{},"body":{"classes/InitializationState.html":{}}}],["collaboration",{"_index":3253,"title":{},"body":{"changelog.html":{}}}],["collapse",{"_index":2085,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["collapsed",{"_index":1994,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["collapses",{"_index":2081,"title":{},"body":{"classes/InitializationState.html":{}}}],["collisions",{"_index":3271,"title":{},"body":{"changelog.html":{}}}],["color",{"_index":301,"title":{"interfaces/Color.html":{}},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["color.color",{"_index":729,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["color.rank",{"_index":2182,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["color].concat(colorsavailable",{"_index":737,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignments",{"_index":701,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["colorassignments[key",{"_index":716,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist",{"_index":703,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist.filter(a",{"_index":738,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist.reduce>>((acc",{"_index":731,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist.slice(0",{"_index":725,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist[colorassignmentslist.length",{"_index":723,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentstate",{"_index":709,"title":{"injectables/ColorAssignmentState.html":{}},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["colorassignmentstatemodel",{"_index":698,"title":{"interfaces/ColorAssignmentStateModel.html":{}},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{}}}],["colorizing",{"_index":3307,"title":{},"body":{"changelog.html":{}}}],["colorpalette",{"_index":699,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colors",{"_index":706,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["colors[node['@id']].rgba",{"_index":2668,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["colors[tissueblock.spatialentityid",{"_index":2180,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["colorsavailable",{"_index":700,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorsavailable.filter(c",{"_index":727,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorsavailable.length",{"_index":721,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorsavailable[0",{"_index":722,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["column",{"_index":1700,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["columns",{"_index":568,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["combination",{"_index":3266,"title":{},"body":{"changelog.html":{}}}],["combined",{"_index":988,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{}}}],["combinelatest",{"_index":142,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["combinelatest([this.theme",{"_index":274,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["combines",{"_index":1073,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["come",{"_index":3303,"title":{},"body":{"changelog.html":{}}}],["coming",{"_index":3296,"title":{},"body":{"changelog.html":{}}}],["comlink",{"_index":3483,"title":{},"body":{"dependencies.html":{}}}],["comma",{"_index":381,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["common",{"_index":1169,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"index.html":{}}}],["commonmodule",{"_index":657,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["compare",{"_index":1181,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["compatibility",{"_index":2713,"title":{},"body":{"modules/StoreModule.html":{}}}],["completed",{"_index":1061,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["completion",{"_index":2087,"title":{},"body":{"classes/InitializationState.html":{}}}],["complexity",{"_index":3169,"title":{},"body":{"changelog.html":{}}}],["compodoc",{"_index":3027,"title":{},"body":{"changelog.html":{}}}],["componenet",{"_index":2269,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["component",{"_index":130,"title":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"coverage.html":{},"index.html":{}}}],["component's",{"_index":1573,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["component.component",{"_index":90,"title":{},"body":{"modules/AppModule.html":{}}}],["component.component.ts",{"_index":445,"title":{},"body":{"components/AppWebComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["component.component.ts:31",{"_index":463,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:33",{"_index":467,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:34",{"_index":468,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:35",{"_index":466,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:36",{"_index":470,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:37",{"_index":469,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:39",{"_index":475,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:40",{"_index":473,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:41",{"_index":474,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:42",{"_index":464,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:43",{"_index":465,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:44",{"_index":472,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:45",{"_index":471,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:47",{"_index":461,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component_template",{"_index":510,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["componentref",{"_index":2741,"title":{},"body":{"injectables/ThemingService.html":{}}}],["components",{"_index":176,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"overview.html":{},"miscellaneous/typealiases.html":{}}}],["composes",{"_index":2397,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["computations",{"_index":2371,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["computes",{"_index":1643,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["concat",{"_index":3485,"title":{},"body":{"dependencies.html":{}}}],["concat(colorassignmentslist",{"_index":730,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["condition",{"_index":2418,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["conditions",{"_index":3608,"title":{},"body":{"license.html":{}}}],["config",{"_index":1308,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["config.isolated",{"_index":2227,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["configstore",{"_index":462,"title":{},"body":{"components/AppWebComponent.html":{}}}],["configuration",{"_index":2198,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["configurations",{"_index":3113,"title":{},"body":{"changelog.html":{}}}],["confirmation",{"_index":3077,"title":{},"body":{"changelog.html":{}}}],["conform",{"_index":3120,"title":{},"body":{"changelog.html":{}}}],["connect",{"_index":2248,"title":{},"body":{"injectables/MessageService.html":{},"changelog.html":{}}}],["connect(source",{"_index":2236,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["connected",{"_index":802,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["connectedposition",{"_index":1645,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["connection",{"_index":3632,"title":{},"body":{"license.html":{}}}],["connects",{"_index":2235,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["consentservice",{"_index":140,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["consider",{"_index":2711,"title":{},"body":{"modules/StoreModule.html":{}}}],["consortium",{"_index":3584,"title":{},"body":{"license.html":{}}}],["const",{"_index":103,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"modules/StoreModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["constantly",{"_index":2945,"title":{},"body":{"components/ViewerComponent.html":{}}}],["constructor",{"_index":253,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{},"modules/ThumbnailCarouselModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["constructor(@inject(message_service_config",{"_index":2226,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["constructor(@optional",{"_index":1020,"title":{},"body":{"modules/CoreModule.html":{},"injectables/ThemingService.html":{}}}],["constructor(config",{"_index":2249,"title":{},"body":{"injectables/MessageService.html":{}}}],["constructor(configstore",{"_index":460,"title":{},"body":{"components/AppWebComponent.html":{}}}],["constructor(dataservice",{"_index":2132,"title":{},"body":{"injectables/ListResultsState.html":{},"injectables/SceneState.html":{}}}],["constructor(defaulttheme",{"_index":2732,"title":{},"body":{"injectables/ThemingService.html":{}}}],["constructor(drawer",{"_index":2898,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["constructor(ga",{"_index":572,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["constructor(globalconfig",{"_index":2964,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["constructor(messageservice",{"_index":775,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{}}}],["constructor(ontologysearchservice",{"_index":2445,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["constructor(ontologyservice",{"_index":2284,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["constructor(original",{"_index":1835,"title":{},"body":{"classes/FlatNode.html":{}}}],["constructor(overlay",{"_index":1570,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["constructor(private",{"_index":101,"title":{},"body":{"modules/AppModule.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["constructor(public",{"_index":2327,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["constructor(readonly",{"_index":1858,"title":{},"body":{"classes/FlatNode.html":{}}}],["constructor(registry",{"_index":1957,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["constructor(sanitizer",{"_index":2934,"title":{},"body":{"components/ViewerComponent.html":{}}}],["constructor(source",{"_index":2241,"title":{},"body":{"classes/MessageChannel.html":{}}}],["contain",{"_index":975,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/HeaderComponent.html":{}}}],["container",{"_index":633,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["container'},{'name",{"_index":516,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["container.component.html",{"_index":761,"title":{},"body":{"components/ContainerComponent.html":{}}}],["container.component.scss",{"_index":760,"title":{},"body":{"components/ContainerComponent.html":{}}}],["container/container.component",{"_index":1463,"title":{},"body":{"modules/DrawerModule.html":{}}}],["containercomponent",{"_index":515,"title":{"components/ContainerComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["containerpayload",{"_index":978,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["containers",{"_index":854,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"changelog.html":{}}}],["containing",{"_index":861,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ThumbnailCarouselComponent.html":{},"index.html":{}}}],["contains",{"_index":608,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{}}}],["content",{"_index":773,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["content'},{'name",{"_index":518,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["content.component",{"_index":1784,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["content.component.html",{"_index":1731,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.scss",{"_index":884,"title":{},"body":{"components/ContentComponent.html":{},"components/FiltersContentComponent.html":{}}}],["content.component.ts",{"_index":1728,"title":{},"body":{"components/FiltersContentComponent.html":{},"coverage.html":{}}}],["content.component.ts:19",{"_index":1741,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:24",{"_index":1740,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:29",{"_index":1743,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:34",{"_index":1742,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:39",{"_index":1745,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:44",{"_index":1739,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:59",{"_index":1752,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:68",{"_index":1747,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:76",{"_index":1749,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.module",{"_index":1827,"title":{},"body":{"modules/FiltersPopoverModule.html":{}}}],["content.module.ts",{"_index":1781,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["content/content.component",{"_index":828,"title":{},"body":{"components/ContainerComponent.html":{},"modules/DrawerModule.html":{}}}],["content/filters",{"_index":1727,"title":{},"body":{"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"coverage.html":{}}}],["content1",{"_index":764,"title":{},"body":{"components/ContainerComponent.html":{}}}],["content2",{"_index":765,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentchildren",{"_index":824,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentchildren(contentcomponent",{"_index":805,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentchildren(drawercomponent",{"_index":815,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentcomponent",{"_index":517,"title":{"components/ContentComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["contentcontainerchanged",{"_index":967,"title":{"interfaces/ContentContainerChanged.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["contents",{"_index":428,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["contentsvisible",{"_index":1549,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["contract",{"_index":3629,"title":{},"body":{"license.html":{}}}],["control",{"_index":320,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["controls",{"_index":1485,"title":{},"body":{"components/DropdownComponent.html":{}}}],["convention",{"_index":438,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{}}}],["coordinate",{"_index":2991,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["copies",{"_index":3603,"title":{},"body":{"license.html":{}}}],["copy",{"_index":3590,"title":{},"body":{"license.html":{}}}],["copyright",{"_index":3582,"title":{},"body":{"license.html":{}}}],["core",{"_index":1021,"title":{},"body":{"modules/CoreModule.html":{}}}],["core/core.module",{"_index":70,"title":{},"body":{"modules/AppModule.html":{}}}],["core/models/list",{"_index":2536,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["core/models/ontology",{"_index":157,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySelectionComponent.html":{}}}],["core/services/app",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["core/services/ontology",{"_index":2325,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["core/services/theming/theming.service",{"_index":160,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["core/store/data/data.state",{"_index":163,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersContentComponent.html":{}}}],["core/store/list",{"_index":165,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["core/store/scene/scene.state",{"_index":169,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["coremodule",{"_index":10,"title":{"modules/CoreModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{},"modules.html":{},"overview.html":{}}}],["cors",{"_index":3487,"title":{},"body":{"dependencies.html":{}}}],["counter",{"_index":2205,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"miscellaneous/variables.html":{}}}],["cover",{"_index":2843,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["coverage",{"_index":3328,"title":{"coverage.html":{}},"body":{"changelog.html":{},"coverage.html":{}}}],["create",{"_index":1572,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/FlatNode.html":{}}}],["create(original",{"_index":1845,"title":{},"body":{"classes/FlatNode.html":{}}}],["createcustomelement",{"_index":43,"title":{},"body":{"modules/AppModule.html":{}}}],["createcustomelement(appwebcomponent",{"_index":105,"title":{},"body":{"modules/AppModule.html":{}}}],["created",{"_index":1628,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"changelog.html":{}}}],["creates",{"_index":249,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{}}}],["createselectionlabel(ontolgyselection",{"_index":372,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["createworker",{"_index":2962,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["createworker(_config",{"_index":2968,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["creating",{"_index":831,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/functions.html":{}}}],["credits",{"_index":3569,"title":{},"body":{"index.html":{}}}],["criteria",{"_index":1576,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["css",{"_index":2793,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"dependencies.html":{}}}],["ctrlclick",{"_index":2618,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["cuboid",{"_index":3327,"title":{},"body":{"changelog.html":{}}}],["cuboids",{"_index":3326,"title":{},"body":{"changelog.html":{}}}],["current",{"_index":562,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySelectionComponent.html":{},"miscellaneous/enumerations.html":{}}}],["currently",{"_index":353,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySelectionComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["cursor",{"_index":1389,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["customelements.define('ccf",{"_index":107,"title":{},"body":{"modules/AppModule.html":{}}}],["cyberinfrastructure",{"_index":3571,"title":{},"body":{"index.html":{}}}],["cycle",{"_index":3177,"title":{},"body":{"changelog.html":{}}}],["d",{"_index":1428,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["da326f",{"_index":686,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["damages",{"_index":3626,"title":{},"body":{"license.html":{}}}],["dark",{"_index":311,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["dark)').addeventlistener('change",{"_index":308,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["dark)').matches",{"_index":303,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["dark/light",{"_index":3116,"title":{},"body":{"changelog.html":{}}}],["data",{"_index":252,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"modules/StoreModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["data.aggregatedata$.subscribe",{"_index":265,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.celltypetermoccurencesdata$.subscribe",{"_index":267,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.filter$.pipe(pluck('celltypeterms",{"_index":282,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.filter$.pipe(pluck('ontologyterms",{"_index":273,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.filter$.subscribe",{"_index":269,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.ontologytermoccurencesdata$.subscribe",{"_index":266,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.providerfilterdata$.subscribe",{"_index":271,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.scenedata$.subscribe",{"_index":268,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.technologyfilterdata$.subscribe",{"_index":270,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.tissueblockdata$.subscribe",{"_index":264,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data/data.state",{"_index":2159,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{}}}],["dataaction",{"_index":668,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["database",{"_index":136,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"classes/FlatNode.html":{},"interfaces/ListResult.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["dataquerystate",{"_index":161,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"miscellaneous/enumerations.html":{}}}],["dataquerystate.completed",{"_index":1063,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["dataquerystate.running",{"_index":237,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{}}}],["dataservice",{"_index":2134,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["datasetresult",{"_index":2788,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["datasets",{"_index":3187,"title":{},"body":{"changelog.html":{}}}],["datasource",{"_index":258,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["datasourcelike",{"_index":1303,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["datasources",{"_index":452,"title":{},"body":{"components/AppWebComponent.html":{}}}],["datasourceservice",{"_index":137,"title":{},"body":{"interfaces/AppOptions.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["datastate",{"_index":162,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["datastatemodel",{"_index":1025,"title":{"interfaces/DataStateModel.html":{}},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{}}}],["deal",{"_index":3592,"title":{},"body":{"license.html":{}}}],["dealings",{"_index":3633,"title":{},"body":{"license.html":{}}}],["december",{"_index":3260,"title":{},"body":{"changelog.html":{}}}],["decides",{"_index":604,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["deck.gl",{"_index":697,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["deck.gl/core",{"_index":3456,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/geo",{"_index":3458,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/layers",{"_index":3460,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/mesh",{"_index":3461,"title":{},"body":{"dependencies.html":{}}}],["declarations",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["decoration",{"_index":1888,"title":{},"body":{"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["decorator",{"_index":1030,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{}}}],["decorators",{"_index":744,"title":{},"body":{"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["deep",{"_index":623,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["deeply",{"_index":3067,"title":{},"body":{"changelog.html":{}}}],["default",{"_index":315,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["default_color_palette",{"_index":681,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_color_palette.concat",{"_index":708,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["default_filter",{"_index":1043,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/FiltersContentComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_icons",{"_index":1225,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_selected_organs",{"_index":2608,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_selected_organs.has(organ.organ",{"_index":2643,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["default_theme",{"_index":67,"title":{},"body":{"modules/AppModule.html":{},"injectables/ThemingService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["defaulticondefinition",{"_index":1203,"title":{"interfaces/DefaultIconDefinition.html":{}},"body":{"interfaces/DefaultIconDefinition.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["defaults",{"_index":707,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["defaulttheme",{"_index":2727,"title":{},"body":{"injectables/ThemingService.html":{}}}],["deferred",{"_index":1968,"title":{},"body":{"classes/InitializationState.html":{}}}],["defined",{"_index":31,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{}}}],["definition",{"_index":1207,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["definition.html",{"_index":1934,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["definition.url",{"_index":1933,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["delay",{"_index":1513,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["delegatedatasourceoptions",{"_index":1297,"title":{"interfaces/DelegateDataSourceOptions.html":{}},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"coverage.html":{}}}],["delegatedatasourceservice",{"_index":1007,"title":{"injectables/DelegateDataSourceService.html":{}},"body":{"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"coverage.html":{}}}],["demo",{"_index":3086,"title":{},"body":{"changelog.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"changelog.html":{},"dependencies.html":{},"overview.html":{}}}],["depending",{"_index":3149,"title":{},"body":{"changelog.html":{}}}],["descendants",{"_index":806,"title":{},"body":{"components/ContainerComponent.html":{}}}],["describes",{"_index":582,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["description",{"_index":558,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{}}}],["deselect",{"_index":2525,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["deselected",{"_index":2515,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["deselectlistresult",{"_index":2127,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["deselectlistresult(result",{"_index":2137,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["details",{"_index":3361,"title":{},"body":{"changelog.html":{}}}],["detect",{"_index":1661,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["detected",{"_index":1605,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["detection",{"_index":788,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["detector",{"_index":780,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["determine",{"_index":2534,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["determines",{"_index":1489,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{}}}],["developed",{"_index":3570,"title":{},"body":{"index.html":{}}}],["developmentmode",{"_index":2709,"title":{},"body":{"modules/StoreModule.html":{}}}],["developments",{"_index":3352,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["dialog",{"_index":3078,"title":{},"body":{"changelog.html":{}}}],["diff",{"_index":2546,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["different",{"_index":2116,"title":{},"body":{"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["digits",{"_index":3238,"title":{},"body":{"changelog.html":{}}}],["direct",{"_index":3370,"title":{},"body":{"changelog.html":{}}}],["directimport",{"_index":2973,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["direction",{"_index":642,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["directive",{"_index":508,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["directives",{"_index":554,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["directly",{"_index":3297,"title":{},"body":{"changelog.html":{}}}],["disable",{"_index":433,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["disabled",{"_index":1896,"title":{},"body":{"components/HeaderComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["disables",{"_index":2623,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["display",{"_index":369,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["displayed",{"_index":1479,"title":{},"body":{"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"changelog.html":{}}}],["displayformatter",{"_index":2279,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["displayformatter(option",{"_index":2293,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["displaying",{"_index":3098,"title":{},"body":{"changelog.html":{}}}],["displaylabel",{"_index":2409,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["displays",{"_index":1317,"title":{},"body":{"components/DonorCardComponent.html":{},"components/SpinnerOverlayComponent.html":{}}}],["distinct",{"_index":1037,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["distinctuntilchanged",{"_index":680,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["distribute",{"_index":3599,"title":{},"body":{"license.html":{}}}],["dobootstrap",{"_index":45,"title":{},"body":{"modules/AppModule.html":{}}}],["doc",{"_index":3336,"title":{},"body":{"changelog.html":{}}}],["document",{"_index":1588,"title":{},"body":{"components/DualSliderComponent.html":{},"dependencies.html":{}}}],["document:click",{"_index":1567,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["document:click(target",{"_index":1585,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["document:touchstart",{"_index":1568,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["document:touchstart(target",{"_index":1596,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["documentation",{"_index":3030,"title":{},"body":{"changelog.html":{},"coverage.html":{},"license.html":{}}}],["dom",{"_index":442,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["domains",{"_index":217,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["domsanitizer",{"_index":1911,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["don't",{"_index":379,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["done",{"_index":3146,"title":{},"body":{"changelog.html":{}}}],["donor",{"_index":520,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["donor_card",{"_index":1361,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["donorcardcomponent",{"_index":519,"title":{"components/DonorCardComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["donorcardmodule",{"_index":1443,"title":{"modules/DonorCardModule.html":{}},"body":{"modules/DonorCardModule.html":{},"modules/ResultsBrowserModule.html":{},"modules.html":{},"overview.html":{}}}],["donors",{"_index":3188,"title":{},"body":{"changelog.html":{}}}],["doreset",{"_index":719,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["dotenv",{"_index":3491,"title":{},"body":{"dependencies.html":{}}}],["down",{"_index":199,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySelectionComponent.html":{}}}],["download",{"_index":1861,"title":{},"body":{"components/HeaderComponent.html":{},"changelog.html":{}}}],["downloadclicked",{"_index":1866,"title":{},"body":{"components/HeaderComponent.html":{}}}],["drawer",{"_index":179,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{}}}],["drawer'},{'name",{"_index":522,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["drawer.close",{"_index":2920,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["drawer.closeexpanded",{"_index":2919,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["drawer.component.html",{"_index":2005,"title":{},"body":{"classes/InitializationState.html":{}}}],["drawer.component.scss",{"_index":2006,"title":{},"body":{"classes/InitializationState.html":{}}}],["drawer.open",{"_index":2921,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["drawer.position",{"_index":865,"title":{},"body":{"components/ContainerComponent.html":{}}}],["drawer/drawer.component",{"_index":829,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/DrawerModule.html":{},"components/ToggleButtonComponent.html":{}}}],["drawercomponent",{"_index":172,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["drawercomponent).position",{"_index":946,"title":{},"body":{"components/ContentComponent.html":{}}}],["drawercontainerschanged",{"_index":974,"title":{"interfaces/DrawerContainersChanged.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["drawerexpanded",{"_index":1793,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["drawerinitialized",{"_index":981,"title":{"interfaces/DrawerInitialized.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["drawermodule",{"_index":11,"title":{"modules/DrawerModule.html":{}},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{},"modules.html":{},"overview.html":{}}}],["drawerpayload",{"_index":987,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["drawers",{"_index":313,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["drawers.filter(drawer",{"_index":864,"title":{},"body":{"components/ContainerComponent.html":{}}}],["drawertoggled",{"_index":982,"title":{"interfaces/DrawerToggled.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["dropdown",{"_index":1467,"title":{},"body":{"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{}}}],["dropdown'},{'name",{"_index":524,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["dropdown.component",{"_index":1541,"title":{},"body":{"modules/DropdownModule.html":{}}}],["dropdown.component.html",{"_index":1470,"title":{},"body":{"components/DropdownComponent.html":{}}}],["dropdown.component.scss",{"_index":1469,"title":{},"body":{"components/DropdownComponent.html":{}}}],["dropdowncomponent",{"_index":523,"title":{"components/DropdownComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["dropdownmodule",{"_index":1532,"title":{"modules/DropdownModule.html":{}},"body":{"modules/DropdownModule.html":{},"modules/FiltersContentModule.html":{},"modules.html":{},"overview.html":{}}}],["dual",{"_index":526,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["dual_slider",{"_index":1688,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["dualslidercomponent",{"_index":525,"title":{"components/DualSliderComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["dualslidermodule",{"_index":12,"title":{"modules/DualSliderModule.html":{}},"body":{"modules/AppModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules.html":{},"overview.html":{}}}],["duration",{"_index":289,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContentComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["during",{"_index":1183,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["dynamic",{"_index":3452,"title":{},"body":{"dependencies.html":{}}}],["dynamically",{"_index":3002,"title":{},"body":{"changelog.html":{}}}],["e",{"_index":309,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["e040fb",{"_index":690,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["each",{"_index":2207,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["ease",{"_index":966,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["easier",{"_index":3009,"title":{},"body":{"changelog.html":{}}}],["easily",{"_index":393,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["effect",{"_index":1487,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["efficiency",{"_index":3208,"title":{},"body":{"changelog.html":{}}}],["el",{"_index":254,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{}}}],["element",{"_index":507,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["element.getboundingclientrect",{"_index":2054,"title":{},"body":{"classes/InitializationState.html":{}}}],["element.nativeelement",{"_index":2769,"title":{},"body":{"injectables/ThemingService.html":{}}}],["element.nativeelement.contains(target",{"_index":1680,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["elementref",{"_index":131,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ThemingService.html":{}}}],["elements",{"_index":2812,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["ellipsis",{"_index":1440,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["embedded",{"_index":3111,"title":{},"body":{"changelog.html":{}}}],["embedding",{"_index":3103,"title":{},"body":{"changelog.html":{}}}],["embedding.md",{"_index":3101,"title":{},"body":{"changelog.html":{}}}],["emit",{"_index":595,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["emits",{"_index":228,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{}}}],["emitted",{"_index":211,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"components/HeaderComponent.html":{},"miscellaneous/functions.html":{}}}],["emitter",{"_index":2291,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["emitters",{"_index":2486,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["emitting",{"_index":2036,"title":{},"body":{"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ResultsBrowserComponent.html":{}}}],["empty",{"_index":2391,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["enable",{"_index":2297,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["enabled",{"_index":902,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["encapsulates",{"_index":2439,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["end",{"_index":841,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["end?.expanded",{"_index":957,"title":{},"body":{"components/ContentComponent.html":{}}}],["end?.opened",{"_index":956,"title":{},"body":{"components/ContentComponent.html":{}}}],["enddrawers",{"_index":866,"title":{},"body":{"components/ContainerComponent.html":{}}}],["enddrawers.length",{"_index":869,"title":{},"body":{"components/ContainerComponent.html":{}}}],["enddrawers[0",{"_index":872,"title":{},"body":{"components/ContainerComponent.html":{}}}],["endexpanded",{"_index":955,"title":{},"body":{"components/ContentComponent.html":{}}}],["ensures",{"_index":1355,"title":{},"body":{"components/DonorCardComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["enter",{"_index":1614,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["entire",{"_index":2700,"title":{},"body":{"modules/StoreModule.html":{},"miscellaneous/variables.html":{}}}],["entry",{"_index":2299,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["entry.displaylabel.join().includes",{"_index":2341,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["entry.node.label.tolowercase",{"_index":2342,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["entrycomponents",{"_index":27,"title":{},"body":{"modules/AppModule.html":{}}}],["enum",{"_index":1057,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["enumerations",{"_index":3541,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["environment",{"_index":154,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"modules/StoreModule.html":{}}}],["environment.acceptableviewerdomains",{"_index":222,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["environment.customization",{"_index":501,"title":{},"body":{"components/AppWebComponent.html":{}}}],["environment.dboptions",{"_index":499,"title":{},"body":{"components/AppWebComponent.html":{}}}],["environment.dboptions.remoteapiendpoint",{"_index":1019,"title":{},"body":{"modules/CoreModule.html":{}}}],["environment.disabledbworker",{"_index":1309,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["environment.googleanalyticstoken",{"_index":1015,"title":{},"body":{"modules/CoreModule.html":{}}}],["environment.production",{"_index":2710,"title":{},"body":{"modules/StoreModule.html":{}}}],["environments/environment",{"_index":155,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"modules/StoreModule.html":{}}}],["error",{"_index":835,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/ThemingService.html":{}}}],["error('invalid",{"_index":493,"title":{},"body":{"components/AppWebComponent.html":{}}}],["error('the",{"_index":1022,"title":{},"body":{"modules/CoreModule.html":{}}}],["error(`multiple",{"_index":843,"title":{},"body":{"components/ContainerComponent.html":{}}}],["errors",{"_index":832,"title":{},"body":{"components/ContainerComponent.html":{},"miscellaneous/functions.html":{}}}],["es",{"_index":3481,"title":{},"body":{"dependencies.html":{}}}],["es2015.worker.js",{"_index":2982,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["eslint",{"_index":432,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["eslint/naming",{"_index":437,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{}}}],["etc",{"_index":986,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"changelog.html":{}}}],["eui",{"_index":108,"title":{},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{},"changelog.html":{},"index.html":{}}}],["eui/rui",{"_index":3024,"title":{},"body":{"changelog.html":{}}}],["eui/src/app/app",{"_index":444,"title":{},"body":{"components/AppWebComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["eui/src/app/app.component.ts",{"_index":115,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["eui/src/app/app.module.ts",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["eui/src/app/app.module.ts:55",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["eui/src/app/core/core.module.ts",{"_index":996,"title":{},"body":{"modules/CoreModule.html":{}}}],["eui/src/app/core/header/header.component.ts",{"_index":1859,"title":{},"body":{"components/HeaderComponent.html":{},"coverage.html":{}}}],["eui/src/app/core/header/header.component.ts:18",{"_index":1869,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:20",{"_index":1873,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:22",{"_index":1874,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:27",{"_index":1871,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:32",{"_index":1868,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:37",{"_index":1876,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:42",{"_index":1875,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.module.ts",{"_index":1900,"title":{},"body":{"modules/HeaderModule.html":{}}}],["eui/src/app/core/models/flat",{"_index":1830,"title":{},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["eui/src/app/core/models/list",{"_index":2121,"title":{},"body":{"interfaces/ListResult.html":{},"coverage.html":{}}}],["eui/src/app/core/models/ontology",{"_index":2435,"title":{},"body":{"interfaces/OntologySelection.html":{},"coverage.html":{}}}],["eui/src/app/core/services/app",{"_index":404,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["eui/src/app/core/services/data",{"_index":1298,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/services/ontology",{"_index":2368,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["eui/src/app/core/services/theming/theming.module.ts",{"_index":2720,"title":{},"body":{"modules/ThemingModule.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts",{"_index":2725,"title":{},"body":{"injectables/ThemingService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:13",{"_index":2752,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:14",{"_index":2753,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:16",{"_index":2751,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:18",{"_index":2754,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:21",{"_index":2742,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:25",{"_index":2733,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:39",{"_index":2739,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:48",{"_index":2750,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:60",{"_index":2748,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:71",{"_index":2746,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:83",{"_index":2735,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/store/color",{"_index":661,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/data/data.state.ts",{"_index":1026,"title":{},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/icon",{"_index":1204,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/list",{"_index":2123,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"coverage.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts",{"_index":2567,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:105",{"_index":2592,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:114",{"_index":2581,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:125",{"_index":2585,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:129",{"_index":2586,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:136",{"_index":2578,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:51",{"_index":2601,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:53",{"_index":2605,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:55",{"_index":2603,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:57",{"_index":2599,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:60",{"_index":2597,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:63",{"_index":2596,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:65",{"_index":2577,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:85",{"_index":2595,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:95",{"_index":2589,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/store.module.ts",{"_index":2691,"title":{},"body":{"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/modules/filters/filters",{"_index":1726,"title":{},"body":{"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"coverage.html":{}}}],["eui/src/app/modules/ontology",{"_index":2260,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/modules/results",{"_index":1312,"title":{},"body":{"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts",{"_index":557,"title":{},"body":{"components/CheckboxComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:18",{"_index":581,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:23",{"_index":586,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:28",{"_index":590,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:33",{"_index":580,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:38",{"_index":574,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:53",{"_index":601,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.module.ts",{"_index":655,"title":{},"body":{"modules/CheckboxModule.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts",{"_index":754,"title":{},"body":{"components/ContainerComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:105",{"_index":795,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:115",{"_index":785,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:124",{"_index":797,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:37",{"_index":782,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:41",{"_index":816,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:45",{"_index":807,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:48",{"_index":812,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:50",{"_index":820,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:55",{"_index":823,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:60",{"_index":801,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:62",{"_index":776,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:83",{"_index":791,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts",{"_index":880,"title":{},"body":{"components/ContentComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:103",{"_index":917,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:116",{"_index":911,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:28",{"_index":900,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:30",{"_index":901,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:32",{"_index":903,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:34",{"_index":905,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:36",{"_index":898,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:39",{"_index":919,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:41",{"_index":896,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:60",{"_index":910,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:70",{"_index":907,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/drawer.module.ts",{"_index":1460,"title":{},"body":{"modules/DrawerModule.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts",{"_index":1966,"title":{},"body":{"classes/InitializationState.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:35",{"_index":1978,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:37",{"_index":1975,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:41",{"_index":1979,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:46",{"_index":1980,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:56",{"_index":1982,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:65",{"_index":1981,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/messages.ts",{"_index":968,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/components/drawer/toggle",{"_index":2893,"title":{},"body":{"components/ToggleButtonComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts",{"_index":1466,"title":{},"body":{"components/DropdownComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:18",{"_index":1475,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:23",{"_index":1477,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:28",{"_index":1480,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:33",{"_index":1481,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:38",{"_index":1474,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:50",{"_index":1484,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:59",{"_index":1483,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.module.ts",{"_index":1536,"title":{},"body":{"modules/DropdownModule.html":{}}}],["eui/src/app/shared/components/dual",{"_index":1542,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/spinner",{"_index":2671,"title":{},"body":{"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/thumbnail",{"_index":2776,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts",{"_index":2927,"title":{},"body":{"components/ViewerComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:17",{"_index":2938,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:19",{"_index":2936,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:21",{"_index":2937,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:23",{"_index":2941,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:29",{"_index":2935,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:33",{"_index":2939,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:39",{"_index":2940,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.module.ts",{"_index":2958,"title":{},"body":{"modules/ViewerModule.html":{}}}],["eui/src/app/shared/services/message/message.service.ts",{"_index":2189,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:103",{"_index":2245,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:112",{"_index":2246,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:128",{"_index":2253,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:130",{"_index":2250,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:153",{"_index":2252,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:163",{"_index":2251,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:50",{"_index":2242,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:70",{"_index":2247,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:83",{"_index":2243,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:93",{"_index":2244,"title":{},"body":{"classes/MessageChannel.html":{}}}],["evenly",{"_index":2885,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["event",{"_index":607,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{},"license.html":{}}}],["event.checked",{"_index":615,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["event.key",{"_index":1695,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["event.target",{"_index":1584,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["event.target'])@hostlistener('document:touchstart",{"_index":1599,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["eventemitter",{"_index":594,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["eventemitter(true",{"_index":2038,"title":{},"body":{"classes/InitializationState.html":{}}}],["events",{"_index":603,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["everything",{"_index":1160,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["except",{"_index":2213,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["executionstrategy",{"_index":2714,"title":{},"body":{"modules/StoreModule.html":{}}}],["exists",{"_index":2879,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["expand",{"_index":2084,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["expand/collapse",{"_index":2091,"title":{},"body":{"classes/InitializationState.html":{}}}],["expand_collapse_params_default",{"_index":1998,"title":{},"body":{"classes/InitializationState.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["expand_less",{"_index":1294,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"miscellaneous/variables.html":{}}}],["expand_more",{"_index":1292,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"miscellaneous/variables.html":{}}}],["expandable",{"_index":1834,"title":{},"body":{"classes/FlatNode.html":{},"miscellaneous/variables.html":{}}}],["expandcollapsedone",{"_index":2093,"title":{},"body":{"classes/InitializationState.html":{}}}],["expanded",{"_index":983,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["expanded(value",{"_index":2033,"title":{},"body":{"classes/InitializationState.html":{}}}],["expanded/collapsed",{"_index":1990,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["expandedchange",{"_index":2039,"title":{},"body":{"classes/InitializationState.html":{}}}],["expandedstate",{"_index":1991,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["expandedstate2",{"_index":1993,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["expandedstateobj",{"_index":2044,"title":{},"body":{"classes/InitializationState.html":{}}}],["expands",{"_index":2078,"title":{},"body":{"classes/InitializationState.html":{}}}],["exploration",{"_index":3553,"title":{},"body":{"index.html":{}}}],["exploration.module",{"_index":76,"title":{},"body":{"modules/AppModule.html":{}}}],["exploration.module.ts",{"_index":2261,"title":{},"body":{"modules/OntologyExplorationModule.html":{}}}],["exploration/ontology",{"_index":75,"title":{},"body":{"modules/AppModule.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["export",{"_index":98,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["exportas",{"_index":757,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["exports",{"_index":656,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["express",{"_index":3493,"title":{},"body":{"dependencies.html":{},"license.html":{}}}],["extended",{"_index":1996,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["extends",{"_index":116,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/WorkerDataSourceService.html":{}}}],["external",{"_index":2951,"title":{},"body":{"components/ViewerComponent.html":{},"changelog.html":{}}}],["externalurl",{"_index":2980,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["extra",{"_index":3498,"title":{},"body":{"dependencies.html":{}}}],["extract",{"_index":2796,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["extraction",{"_index":3082,"title":{},"body":{"changelog.html":{}}}],["eye",{"_index":1237,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["eye.svg",{"_index":1238,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["f",{"_index":1266,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["f.svg",{"_index":1267,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["factory",{"_index":2203,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/variables.html":{}}}],["fade",{"_index":1486,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["faded",{"_index":886,"title":{},"body":{"components/ContentComponent.html":{}}}],["fadein",{"_index":1498,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["fadeinout",{"_index":891,"title":{},"body":{"components/ContentComponent.html":{}}}],["fafafa",{"_index":650,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["fail",{"_index":3258,"title":{},"body":{"changelog.html":{}}}],["fails",{"_index":3284,"title":{},"body":{"changelog.html":{}}}],["fallopian",{"_index":1239,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["false",{"_index":191,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["favor",{"_index":3248,"title":{},"body":{"changelog.html":{}}}],["feature",{"_index":2999,"title":{},"body":{"changelog.html":{}}}],["features",{"_index":3178,"title":{},"body":{"changelog.html":{}}}],["feel",{"_index":3206,"title":{},"body":{"changelog.html":{}}}],["fetch",{"_index":1222,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"dependencies.html":{}}}],["fetches",{"_index":2390,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["ff8800",{"_index":682,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["ffd740",{"_index":684,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["field",{"_index":1500,"title":{},"body":{"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"changelog.html":{}}}],["file",{"_index":23,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"dependencies.html":{}}}],["files",{"_index":3591,"title":{},"body":{"license.html":{}}}],["fill",{"_index":1517,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["filler",{"_index":1890,"title":{},"body":{"components/HeaderComponent.html":{}}}],["filter",{"_index":314,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["filter's",{"_index":323,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["filter(organ",{"_index":2636,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["filter(value",{"_index":2332,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["filter_checkbox",{"_index":618,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["filter_content",{"_index":1757,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["filterbox",{"_index":322,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["filterbox.removebox",{"_index":330,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["filtered",{"_index":2217,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{}}}],["filteredresults",{"_index":2275,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["filteronchange",{"_index":567,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["filteronchange(event",{"_index":598,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["filters",{"_index":529,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/variables.html":{}}}],["filterschange",{"_index":1738,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["filterscontentcomponent",{"_index":528,"title":{"components/FiltersContentComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["filterscontentmodule",{"_index":1776,"title":{"modules/FiltersContentModule.html":{}},"body":{"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules.html":{},"overview.html":{}}}],["filterspopovercomponent",{"_index":170,"title":{"components/FiltersPopoverComponent.html":{}},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["filterspopovermodule",{"_index":13,"title":{"modules/FiltersPopoverModule.html":{}},"body":{"modules/AppModule.html":{},"modules/FiltersPopoverModule.html":{},"modules.html":{},"overview.html":{}}}],["filtersvisible",{"_index":1790,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["final",{"_index":3251,"title":{},"body":{"changelog.html":{}}}],["finished",{"_index":979,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["finishing",{"_index":3081,"title":{},"body":{"changelog.html":{}}}],["fired",{"_index":1595,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["first",{"_index":1356,"title":{},"body":{"components/DonorCardComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["fit",{"_index":3186,"title":{},"body":{"changelog.html":{}}}],["fitness",{"_index":3618,"title":{},"body":{"license.html":{}}}],["fixed",{"_index":3170,"title":{},"body":{"changelog.html":{}}}],["fixes",{"_index":3035,"title":{},"body":{"changelog.html":{}}}],["fixes/performance",{"_index":3308,"title":{},"body":{"changelog.html":{}}}],["flat",{"_index":1839,"title":{},"body":{"classes/FlatNode.html":{},"miscellaneous/variables.html":{}}}],["flatnode",{"_index":1828,"title":{"classes/FlatNode.html":{}},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["flatnode(original",{"_index":1857,"title":{},"body":{"classes/FlatNode.html":{}}}],["flex",{"_index":641,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["floor",{"_index":1668,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["fly",{"_index":3375,"title":{},"body":{"changelog.html":{}}}],["focus",{"_index":2848,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["following",{"_index":3607,"title":{},"body":{"license.html":{}}}],["font",{"_index":638,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["forcedunassignment",{"_index":710,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["form",{"_index":1499,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["format",{"_index":694,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["formatlabel",{"_index":2374,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["formatlabel(label",{"_index":2381,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["formats",{"_index":2384,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["formatter",{"_index":2296,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["formcontrol",{"_index":2276,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["formsmodule",{"_index":2362,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["forwards",{"_index":1518,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["found",{"_index":2385,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["four",{"_index":648,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["frame",{"_index":1397,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["framework",{"_index":2992,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["free",{"_index":3588,"title":{},"body":{"license.html":{}}}],["fs",{"_index":3497,"title":{},"body":{"dependencies.html":{}}}],["full",{"_index":1997,"title":{},"body":{"classes/InitializationState.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["fullscreen",{"_index":3333,"title":{},"body":{"changelog.html":{}}}],["fully",{"_index":3179,"title":{},"body":{"changelog.html":{}}}],["function",{"_index":392,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1077,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{},"miscellaneous/functions.html":{}}}],["functions",{"_index":3543,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["funded",{"_index":3576,"title":{},"body":{"index.html":{}}}],["funnel",{"_index":1821,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["furnished",{"_index":3606,"title":{},"body":{"license.html":{}}}],["further",{"_index":3329,"title":{},"body":{"changelog.html":{}}}],["future",{"_index":3171,"title":{},"body":{"changelog.html":{}}}],["ga",{"_index":575,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["gatoken",{"_index":1014,"title":{},"body":{"modules/CoreModule.html":{}}}],["generate",{"_index":587,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"changelog.html":{}}}],["generated",{"_index":3028,"title":{},"body":{"changelog.html":{}}}],["generating",{"_index":3012,"title":{},"body":{"changelog.html":{}}}],["genericglobalconfig",{"_index":478,"title":{},"body":{"components/AppWebComponent.html":{}}}],["genericmessage",{"_index":970,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["genericmessagechannel",{"_index":971,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["genericmessageservice",{"_index":972,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["get(event",{"_index":2343,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["getarguments",{"_index":1954,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["getarguments(undefined",{"_index":1959,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["getchildren",{"_index":2375,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["getchildren(node",{"_index":2388,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["getchildrenfunc",{"_index":3642,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["getclassend",{"_index":2910,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["getcolor",{"_index":741,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["getcolor(key",{"_index":714,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["getcontent",{"_index":819,"title":{},"body":{"components/ContainerComponent.html":{}}}],["getexpandable",{"_index":1851,"title":{},"body":{"classes/FlatNode.html":{}}}],["gethaswrappedcontent",{"_index":822,"title":{},"body":{"components/ContainerComponent.html":{}}}],["geticon",{"_index":2911,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["getindexofmatch",{"_index":2376,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["getindexofmatch(label",{"_index":2392,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["getlabel",{"_index":1848,"title":{},"body":{"classes/FlatNode.html":{}}}],["getlevel",{"_index":3425,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["getmessages",{"_index":2215,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["getmessagesfromsource",{"_index":2238,"title":{},"body":{"classes/MessageChannel.html":{}}}],["getmessagesfromsource(source",{"_index":2218,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["getmessagesfromsources",{"_index":2239,"title":{},"body":{"classes/MessageChannel.html":{}}}],["getmessagesfromsources(sources",{"_index":2221,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["getmethodname",{"_index":1946,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["getmethodname(undefined",{"_index":1961,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["getnextbuttonid",{"_index":2829,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["getprevbuttonid",{"_index":2825,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["getrangelabel",{"_index":1641,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["gets",{"_index":317,"title":{},"body":{"interfaces/AppOptions.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/ToggleButtonComponent.html":{}}}],["getter",{"_index":2942,"title":{},"body":{"components/ViewerComponent.html":{},"miscellaneous/variables.html":{}}}],["getter/setter",{"_index":2026,"title":{},"body":{"classes/InitializationState.html":{}}}],["gettheme",{"_index":2729,"title":{},"body":{"injectables/ThemingService.html":{}}}],["getting",{"_index":2988,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{"miscellaneous/typealiases.html":{}}}],["getworkerurl",{"_index":2963,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["getworkerurl(directimport",{"_index":2971,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["github",{"_index":3240,"title":{},"body":{"changelog.html":{}}}],["give",{"_index":2206,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["given",{"_index":2878,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["gizmo",{"_index":3127,"title":{},"body":{"changelog.html":{}}}],["globalconfig",{"_index":260,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{}}}],["globalconfigstate",{"_index":138,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/StoreModule.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["globalthis.getcomputedstyle(element",{"_index":2062,"title":{},"body":{"classes/InitializationState.html":{}}}],["globalthis['dboptions",{"_index":500,"title":{},"body":{"components/AppWebComponent.html":{}}}],["good",{"_index":3281,"title":{},"body":{"changelog.html":{}}}],["google",{"_index":614,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["googleanalyticsservice",{"_index":573,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["gradient",{"_index":2535,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["granted",{"_index":3587,"title":{},"body":{"license.html":{}}}],["graph",{"_index":2870,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"modules.html":{}}}],["graphology",{"_index":3499,"title":{},"body":{"dependencies.html":{}}}],["greatly",{"_index":3094,"title":{},"body":{"changelog.html":{}}}],["group",{"_index":560,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["grow",{"_index":1407,"title":{},"body":{"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["gtex",{"_index":3003,"title":{},"body":{"changelog.html":{}}}],["guide",{"_index":3276,"title":{},"body":{"changelog.html":{}}}],["half",{"_index":1995,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["hand",{"_index":1217,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{}}}],["handle",{"_index":2582,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["handlecheckbox",{"_index":1323,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["handlehover",{"_index":2491,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlehover(id",{"_index":2517,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlelinkclick",{"_index":2492,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlelinkclick(link",{"_index":2519,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlemessage",{"_index":767,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["handlemessage(_msg",{"_index":783,"title":{},"body":{"components/ContainerComponent.html":{}}}],["handlemessage(msg",{"_index":906,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["handler",{"_index":1622,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["handles",{"_index":1343,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["handleselection",{"_index":2493,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handleselection(result",{"_index":2522,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handleunhover",{"_index":2494,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handling",{"_index":1574,"title":{},"body":{"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ResultsBrowserComponent.html":{}}}],["happen",{"_index":1746,"title":{},"body":{"components/FiltersContentComponent.html":{},"changelog.html":{}}}],["happens",{"_index":1347,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["happy",{"_index":2704,"title":{},"body":{"modules/StoreModule.html":{}}}],["haswrappedcontent",{"_index":774,"title":{},"body":{"components/ContainerComponent.html":{}}}],["header",{"_index":121,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["header'},{'name",{"_index":532,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["header.component",{"_index":1903,"title":{},"body":{"modules/HeaderModule.html":{}}}],["header.component.html",{"_index":1865,"title":{},"body":{"components/HeaderComponent.html":{}}}],["header.component.scss",{"_index":1864,"title":{},"body":{"components/HeaderComponent.html":{}}}],["header/header.module",{"_index":1006,"title":{},"body":{"modules/CoreModule.html":{}}}],["headercomponent",{"_index":531,"title":{"components/HeaderComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["headermodule",{"_index":993,"title":{"modules/HeaderModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/HeaderModule.html":{},"modules.html":{},"overview.html":{}}}],["heart",{"_index":1243,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["heart.svg",{"_index":1244,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["height",{"_index":959,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["helmet",{"_index":3503,"title":{},"body":{"dependencies.html":{}}}],["help",{"_index":3275,"title":{},"body":{"changelog.html":{}}}],["helper",{"_index":830,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["here",{"_index":2169,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["hereby",{"_index":3586,"title":{},"body":{"license.html":{}}}],["hex",{"_index":677,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"dependencies.html":{}}}],["hexrgb",{"_index":676,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["hexrgb(color",{"_index":693,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["hidden",{"_index":876,"title":{},"body":{"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"changelog.html":{}}}],["hide",{"_index":1820,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["hidelimitlabels",{"_index":1674,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hidepointerlabels",{"_index":1675,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hides",{"_index":1806,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["high",{"_index":1613,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["highlight",{"_index":3070,"title":{},"body":{"changelog.html":{}}}],["highlighted",{"_index":1326,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["highlightedid",{"_index":2568,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["highlightednodeid",{"_index":2125,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["highlightnode",{"_index":2128,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["highlightnode(id",{"_index":2139,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["highlights",{"_index":3071,"title":{},"body":{"changelog.html":{}}}],["highvalue",{"_index":1550,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["holders",{"_index":3623,"title":{},"body":{"license.html":{}}}],["home",{"_index":1879,"title":{},"body":{"components/HeaderComponent.html":{}}}],["homeurl",{"_index":122,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{}}}],["hook",{"_index":1608,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["hooked",{"_index":3215,"title":{},"body":{"changelog.html":{}}}],["host",{"_index":873,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostbinding",{"_index":825,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostbinding('@expandcollapse",{"_index":2043,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostbinding('@fadeinout",{"_index":922,"title":{},"body":{"components/ContentComponent.html":{}}}],["hostbinding('@openclose",{"_index":2042,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostbinding('class",{"_index":803,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostbinding('class.active",{"_index":2681,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["hostbinding('class.ccf",{"_index":2021,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["hostbinding('class.cff",{"_index":918,"title":{},"body":{"components/ContentComponent.html":{}}}],["hostbinding('style.margin",{"_index":923,"title":{},"body":{"components/ContentComponent.html":{}}}],["hostbindings",{"_index":771,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostlistener",{"_index":1647,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{}}}],["hostlistener('@expandcollapse.done",{"_index":2092,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostlistener('@openclose.done",{"_index":2088,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostlistener('document:click",{"_index":1598,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hostlistener('document:touchstart",{"_index":1679,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hostlisteners",{"_index":1566,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hover",{"_index":1409,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["hoverable",{"_index":1421,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["hovered",{"_index":1357,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["hovering",{"_index":3139,"title":{},"body":{"changelog.html":{}}}],["hoverstate",{"_index":1322,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["html",{"_index":506,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["htmlelement",{"_index":1586,"title":{},"body":{"components/DualSliderComponent.html":{},"injectables/ThemingService.html":{}}}],["htmlinputelement).value",{"_index":1694,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["http://purl.obolibrary.org/obo/cl_0000000",{"_index":1054,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["http://purl.obolibrary.org/obo/uberon_0013702",{"_index":1053,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["http://purl.org/ccf/latest/ccf.owl#vhfskin",{"_index":2621,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["httpclientmodule",{"_index":997,"title":{},"body":{"modules/CoreModule.html":{}}}],["https://beta",{"_index":3556,"title":{},"body":{"index.html":{}}}],["https://hubmap",{"_index":3561,"title":{},"body":{"index.html":{}}}],["https://hubmapconsortium.github.io/ccf",{"_index":3560,"title":{},"body":{"index.html":{}}}],["https://old",{"_index":3563,"title":{},"body":{"index.html":{}}}],["https://portal.hubmapconsortium.org/ccf",{"_index":3558,"title":{},"body":{"index.html":{}}}],["https://sampledata.hubmapconsortium.org",{"_index":3372,"title":{},"body":{"changelog.html":{}}}],["https://www.ngxs.io/advanced/options",{"_index":2715,"title":{},"body":{"modules/StoreModule.html":{}}}],["hubmap",{"_index":94,"title":{},"body":{"modules/AppModule.html":{},"components/HeaderComponent.html":{},"changelog.html":{},"index.html":{},"license.html":{}}}],["hubmapasseturl",{"_index":453,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmapdataservice",{"_index":454,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmapdataurl",{"_index":455,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmapportalurl",{"_index":456,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmaptoken",{"_index":457,"title":{},"body":{"components/AppWebComponent.html":{}}}],["icon",{"_index":1208,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/StoreModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["icondefinition",{"_index":1904,"title":{"interfaces/IconDefinition.html":{}},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{}}}],["iconregistry",{"_index":1912,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["iconregistrystate",{"_index":1913,"title":{"injectables/IconRegistryState.html":{}},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["icons",{"_index":1223,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["icons.ts",{"_index":1206,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["id",{"_index":2141,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"interfaces/OntologySelection.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["idb",{"_index":3506,"title":{},"body":{"dependencies.html":{}}}],["identifier",{"_index":2191,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"coverage.html":{}}}],["iec",{"_index":3254,"title":{},"body":{"changelog.html":{}}}],["iframe",{"_index":395,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ViewerComponent.html":{}}}],["image",{"_index":3247,"title":{},"body":{"changelog.html":{}}}],["images",{"_index":3295,"title":{},"body":{"changelog.html":{}}}],["immutable",{"_index":666,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{}}}],["implementation",{"_index":1090,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{}}}],["implemented",{"_index":3214,"title":{},"body":{"changelog.html":{}}}],["implementing",{"_index":3335,"title":{},"body":{"changelog.html":{}}}],["implements",{"_index":100,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["implied",{"_index":3615,"title":{},"body":{"license.html":{}}}],["implies",{"_index":984,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["import",{"_index":35,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["import.meta.url",{"_index":2979,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["important",{"_index":631,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["imported",{"_index":1023,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["imports",{"_index":28,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["importscripts('${externalurl",{"_index":2985,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["improve",{"_index":3207,"title":{},"body":{"changelog.html":{}}}],["improved",{"_index":3022,"title":{},"body":{"changelog.html":{}}}],["improvements",{"_index":3037,"title":{},"body":{"changelog.html":{}}}],["improves",{"_index":3095,"title":{},"body":{"changelog.html":{}}}],["include",{"_index":3262,"title":{},"body":{"changelog.html":{}}}],["included",{"_index":3610,"title":{},"body":{"license.html":{}}}],["includes",{"_index":3377,"title":{},"body":{"changelog.html":{}}}],["including",{"_index":3069,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["increase",{"_index":3235,"title":{},"body":{"changelog.html":{}}}],["increased",{"_index":3331,"title":{},"body":{"changelog.html":{}}}],["indeterminate.mat",{"_index":1392,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["index",{"_index":118,"title":{"index.html":{}},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["indiana",{"_index":3574,"title":{},"body":{"index.html":{}}}],["indicates",{"_index":1853,"title":{},"body":{"classes/FlatNode.html":{}}}],["individual",{"_index":588,"title":{},"body":{"components/CheckboxComponent.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["infinity",{"_index":292,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["infix",{"_index":1503,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["info",{"_index":21,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"index.html":{}}}],["infobuttonmodule",{"_index":62,"title":{},"body":{"modules/AppModule.html":{}}}],["information",{"_index":597,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{},"index.html":{}}}],["infrastructure",{"_index":3298,"title":{},"body":{"changelog.html":{}}}],["ingestion",{"_index":3264,"title":{},"body":{"changelog.html":{}}}],["inherit",{"_index":1813,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["init",{"_index":2302,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["initial",{"_index":296,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["initialconfig",{"_index":498,"title":{},"body":{"components/AppWebComponent.html":{}}}],["initialdelay",{"_index":496,"title":{},"body":{"components/AppWebComponent.html":{}}}],["initialization",{"_index":2066,"title":{},"body":{"classes/InitializationState.html":{}}}],["initializationstate",{"_index":1965,"title":{"classes/InitializationState.html":{}},"body":{"classes/InitializationState.html":{},"coverage.html":{}}}],["initialize",{"_index":2630,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{}}}],["initialize(component",{"_index":2740,"title":{},"body":{"injectables/ThemingService.html":{}}}],["initialize(element",{"_index":2745,"title":{},"body":{"injectables/ThemingService.html":{}}}],["initialized",{"_index":450,"title":{},"body":{"components/AppWebComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ThemingService.html":{}}}],["initializer",{"_index":2743,"title":{},"body":{"injectables/ThemingService.html":{}}}],["initializes",{"_index":1601,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{}}}],["initializesliderpopover",{"_index":1558,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["initializing",{"_index":980,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["inject",{"_index":2194,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{}}}],["inject(default_theme",{"_index":2759,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injectable",{"_index":402,"title":{"injectables/AppRootOverlayContainer.html":{},"injectables/ColorAssignmentState.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"injectables/MessageService.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"injectables/WorkerDataSourceService.html":{}},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["injectables",{"_index":403,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"injectables/ColorAssignmentState.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"injectables/MessageService.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"injectables/WorkerDataSourceService.html":{},"overview.html":{}}}],["injecting",{"_index":2165,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["injectiontoken",{"_index":2195,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["injectiontoken('default",{"_index":2756,"title":{},"body":{"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["injector",{"_index":46,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{}}}],["injector.get(overlaycontainer",{"_index":2770,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injector.get(renderer2",{"_index":2768,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injector.get(themingservice",{"_index":2757,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injectordelegatedatasourceservice",{"_index":1304,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["inner",{"_index":632,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["input",{"_index":476,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["inputs",{"_index":451,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["inside",{"_index":1705,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["install",{"_index":2857,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["instance",{"_index":250,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["instant",{"_index":1988,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["instead",{"_index":1712,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["instructions",{"_index":3102,"title":{},"body":{"changelog.html":{}}}],["integrated",{"_index":3180,"title":{},"body":{"changelog.html":{}}}],["integrating",{"_index":3066,"title":{},"body":{"changelog.html":{}}}],["integration",{"_index":3263,"title":{},"body":{"changelog.html":{}}}],["integrations",{"_index":3193,"title":{},"body":{"changelog.html":{}}}],["inter",{"_index":1893,"title":{},"body":{"components/HeaderComponent.html":{}}}],["interact",{"_index":3166,"title":{},"body":{"changelog.html":{}}}],["interactions",{"_index":3318,"title":{},"body":{"changelog.html":{}}}],["interest",{"_index":3369,"title":{},"body":{"changelog.html":{}}}],["interface",{"_index":112,"title":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"interfaces/ListResult.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"interfaces/MessageServiceConfig.html":{},"interfaces/OntologySelection.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"coverage.html":{},"index.html":{}}}],["interfaces",{"_index":114,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"interfaces/ListResult.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"interfaces/MessageServiceConfig.html":{},"interfaces/OntologySelection.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"index.html":{},"overview.html":{}}}],["internal",{"_index":3246,"title":{},"body":{"changelog.html":{}}}],["intestine",{"_index":1250,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["intestine.svg",{"_index":1251,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["invisible",{"_index":899,"title":{},"body":{"components/ContentComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["iri",{"_index":2613,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["isexpandable",{"_index":3426,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["islighttheme",{"_index":225,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["isn't",{"_index":1351,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["isolated",{"_index":2201,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/variables.html":{}}}],["issliderinitialized",{"_index":1551,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["isslideropen",{"_index":1552,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["isstring",{"_index":482,"title":{},"body":{"components/AppWebComponent.html":{}}}],["isstringarray",{"_index":485,"title":{},"body":{"components/AppWebComponent.html":{}}}],["isstringarray(json",{"_index":490,"title":{},"body":{"components/AppWebComponent.html":{}}}],["isstringarray(value",{"_index":491,"title":{},"body":{"components/AppWebComponent.html":{}}}],["issue",{"_index":3230,"title":{},"body":{"changelog.html":{}}}],["issues",{"_index":3054,"title":{},"body":{"changelog.html":{}}}],["iswhitelisted",{"_index":384,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["it's",{"_index":319,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["item",{"_index":214,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["item.color",{"_index":733,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["item.technology",{"_index":2836,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["item.thumbnail",{"_index":2834,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["itemhovered",{"_index":2497,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["itemid",{"_index":2785,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["itemid(_index",{"_index":2794,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["items",{"_index":1382,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["itemunhovered",{"_index":2498,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["iu",{"_index":3350,"title":{},"body":{"changelog.html":{}}}],["javascript",{"_index":3016,"title":{},"body":{"changelog.html":{}}}],["join",{"_index":2340,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["json",{"_index":488,"title":{},"body":{"components/AppWebComponent.html":{},"changelog.html":{}}}],["json.parse(json.stringify(default_filter",{"_index":1762,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["jsonld",{"_index":3509,"title":{},"body":{"dependencies.html":{}}}],["july",{"_index":3317,"title":{},"body":{"changelog.html":{}}}],["jump",{"_index":3356,"title":{},"body":{"changelog.html":{}}}],["justify",{"_index":1388,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["keep",{"_index":194,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{}}}],["keeping",{"_index":1105,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["keeps",{"_index":1795,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["key",{"_index":704,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{}}}],["key/value",{"_index":1753,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["keyboard",{"_index":3355,"title":{},"body":{"changelog.html":{}}}],["keyboardevent",{"_index":1610,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["keyframes",{"_index":1495,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["keyval",{"_index":3507,"title":{},"body":{"dependencies.html":{}}}],["key}:${value",{"_index":1758,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["kidney",{"_index":1245,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["kidney.svg",{"_index":1246,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["kind",{"_index":3614,"title":{},"body":{"license.html":{}}}],["knee",{"_index":1247,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["knee.svg",{"_index":1248,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["known",{"_index":3053,"title":{},"body":{"changelog.html":{}}}],["kpmp",{"_index":3256,"title":{},"body":{"changelog.html":{}}}],["label",{"_index":197,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/TissueSectionVisComponent.html":{}}}],["label.slice(0",{"_index":2429,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["label.slice(index",{"_index":2430,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["label.tolowercase().includes(searchvalue",{"_index":2425,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["label.tolowercase().indexof(searchvalue",{"_index":2427,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["labeled",{"_index":559,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["labels",{"_index":589,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{}}}],["labs/data",{"_index":2693,"title":{},"body":{"modules/StoreModule.html":{},"dependencies.html":{}}}],["labs/data/decorators",{"_index":672,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["labs/data/repositories",{"_index":674,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["landmarks",{"_index":3084,"title":{},"body":{"changelog.html":{}}}],["large",{"_index":1249,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["larger",{"_index":3010,"title":{},"body":{"changelog.html":{}}}],["last",{"_index":382,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DropdownComponent.html":{},"modules/StoreModule.html":{}}}],["latest",{"_index":1080,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["launch",{"_index":2949,"title":{},"body":{"components/ViewerComponent.html":{}}}],["layers",{"_index":3459,"title":{},"body":{"dependencies.html":{}}}],["lazy",{"_index":2135,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["ld",{"_index":3273,"title":{},"body":{"changelog.html":{}}}],["leak",{"_index":3229,"title":{},"body":{"changelog.html":{}}}],["leave",{"_index":3080,"title":{},"body":{"changelog.html":{}}}],["left",{"_index":316,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["left.closeexpanded",{"_index":327,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["left.open",{"_index":326,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["left.px",{"_index":894,"title":{},"body":{"components/ContentComponent.html":{}}}],["left.svg",{"_index":1241,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["left/right",{"_index":3092,"title":{},"body":{"changelog.html":{}}}],["leftmargin",{"_index":887,"title":{},"body":{"components/ContentComponent.html":{}}}],["legend",{"_index":505,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["level",{"_index":1837,"title":{},"body":{"classes/FlatNode.html":{},"injectables/ThemingService.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["levels",{"_index":3366,"title":{},"body":{"changelog.html":{}}}],["lexically",{"_index":2316,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["liability",{"_index":3627,"title":{},"body":{"license.html":{}}}],["liable",{"_index":3624,"title":{},"body":{"license.html":{}}}],["libraries",{"_index":3014,"title":{},"body":{"changelog.html":{}}}],["library",{"_index":3200,"title":{},"body":{"changelog.html":{}}}],["license",{"_index":3580,"title":{"license.html":{}},"body":{"license.html":{}}}],["life",{"_index":3074,"title":{},"body":{"changelog.html":{}}}],["lifecycle",{"_index":2303,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["light",{"_index":96,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["lighter",{"_index":1424,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["limitation",{"_index":3594,"title":{},"body":{"license.html":{}}}],["limited",{"_index":3302,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["line",{"_index":435,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["link",{"_index":387,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["linkage",{"_index":3319,"title":{},"body":{"changelog.html":{}}}],["linkclick",{"_index":1328,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["linkclicked",{"_index":2499,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["linked",{"_index":3138,"title":{},"body":{"changelog.html":{}}}],["linkhandler",{"_index":1324,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["linkhandler(url",{"_index":1345,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["links",{"_index":3051,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["list",{"_index":352,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"changelog.html":{}}}],["listen",{"_index":2200,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["listener",{"_index":1079,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/functions.html":{}}}],["listeners",{"_index":793,"title":{},"body":{"components/ContainerComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["listens",{"_index":306,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{}}}],["listresult",{"_index":2120,"title":{"interfaces/ListResult.html":{}},"body":{"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/ResultsBrowserComponent.html":{},"coverage.html":{}}}],["listresultdeselected",{"_index":2500,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["listresults",{"_index":2126,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["listresultselected",{"_index":2501,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["listresultsstate",{"_index":164,"title":{"injectables/ListResultsState.html":{}},"body":{"interfaces/AppOptions.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["listresultsstatemodel",{"_index":2160,"title":{"interfaces/ListResultsStateModel.html":{}},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"coverage.html":{}}}],["literal",{"_index":753,"title":{},"body":{"interfaces/ColorAssignmentStateModel.html":{},"interfaces/SceneStateModel.html":{},"dependencies.html":{}}}],["little",{"_index":3164,"title":{},"body":{"changelog.html":{}}}],["liver",{"_index":1252,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["liver.svg",{"_index":1253,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["load",{"_index":2136,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["loaded",{"_index":1209,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{}}}],["loaders.gl/core",{"_index":3462,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/draco",{"_index":3464,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/gltf",{"_index":3465,"title":{},"body":{"dependencies.html":{}}}],["loading",{"_index":2931,"title":{},"body":{"components/ViewerComponent.html":{}}}],["located",{"_index":2020,"title":{},"body":{"classes/InitializationState.html":{}}}],["location",{"_index":2437,"title":{},"body":{"interfaces/OntologySelection.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["locationstrategy",{"_index":2966,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["locator",{"_index":2965,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["lock",{"_index":2842,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["lodash",{"_index":2156,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{}}}],["log",{"_index":3568,"title":{},"body":{"index.html":{}}}],["logged",{"_index":1872,"title":{},"body":{"components/HeaderComponent.html":{}}}],["loggedin",{"_index":399,"title":{},"body":{"interfaces/AppOptions.html":{},"components/HeaderComponent.html":{}}}],["logger",{"_index":2716,"title":{},"body":{"modules/StoreModule.html":{}}}],["logging",{"_index":3005,"title":{},"body":{"changelog.html":{}}}],["logic",{"_index":1344,"title":{},"body":{"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["login",{"_index":397,"title":{},"body":{"interfaces/AppOptions.html":{},"components/HeaderComponent.html":{}}}],["logindisabled",{"_index":247,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{}}}],["loginenabled",{"_index":123,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["logo",{"_index":1862,"title":{},"body":{"components/HeaderComponent.html":{}}}],["logotooltip",{"_index":124,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{}}}],["logout",{"_index":1877,"title":{},"body":{"components/HeaderComponent.html":{}}}],["longer",{"_index":3148,"title":{},"body":{"changelog.html":{}}}],["look",{"_index":3205,"title":{},"body":{"changelog.html":{}}}],["looks",{"_index":2396,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["lookup",{"_index":2377,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["lookup(nodes",{"_index":2394,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["low",{"_index":1618,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["low/high",{"_index":1662,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["lower",{"_index":1580,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["lowvalue",{"_index":1553,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["lru",{"_index":3512,"title":{},"body":{"dependencies.html":{}}}],["luma.gl/core",{"_index":3466,"title":{},"body":{"dependencies.html":{}}}],["lung",{"_index":1254,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["lung.svg",{"_index":1255,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["lymph",{"_index":1256,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["made",{"_index":1176,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{}}}],["main",{"_index":174,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{}}}],["major",{"_index":3227,"title":{},"body":{"changelog.html":{}}}],["makes",{"_index":3007,"title":{},"body":{"changelog.html":{}}}],["making",{"_index":3060,"title":{},"body":{"changelog.html":{}}}],["managed",{"_index":818,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["managers",{"_index":3020,"title":{},"body":{"changelog.html":{}}}],["manages",{"_index":2726,"title":{},"body":{"injectables/ThemingService.html":{}}}],["many",{"_index":180,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["map",{"_index":146,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{}}}],["map(([scene",{"_index":2648,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(([tissueblocks",{"_index":2176,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["map((color",{"_index":692,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["map((node",{"_index":2663,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(nodes",{"_index":2413,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["map(organ",{"_index":2638,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(reforgans",{"_index":2632,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(searchresults",{"_index":2335,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["map(state",{"_index":235,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["map(states",{"_index":1158,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["march",{"_index":3203,"title":{},"body":{"changelog.html":{}}}],["margin",{"_index":634,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/variables.html":{}}}],["margin2",{"_index":2000,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["markdown",{"_index":3518,"title":{},"body":{"dependencies.html":{}}}],["marrow",{"_index":1233,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["marrow.svg",{"_index":1234,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["mat",{"_index":624,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/OntologySearchComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ViewerComponent.html":{}}}],["matautocompletemodule",{"_index":2364,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["matautocompleteselectedevent",{"_index":2306,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["matbuttonmodule",{"_index":1785,"title":{},"body":{"modules/FiltersContentModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["match",{"_index":1883,"title":{},"body":{"components/HeaderComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["matcheckboxchange",{"_index":599,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["matcheckboxmodule",{"_index":659,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{}}}],["matching",{"_index":110,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["material",{"_index":1915,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["matformfieldmodule",{"_index":1537,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/OntologySearchModule.html":{}}}],["math.div($pointer",{"_index":1716,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["math.gl/core",{"_index":3467,"title":{},"body":{"dependencies.html":{}}}],["math.max(...this.selection",{"_index":1666,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["math.min(...this.selection",{"_index":1664,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["maticonmodule",{"_index":49,"title":{},"body":{"modules/AppModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["maticonregistry",{"_index":1910,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["matinputmodule",{"_index":2365,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["matprogressspinnermodule",{"_index":2688,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"modules/ViewerModule.html":{}}}],["matselectmodule",{"_index":1539,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{}}}],["matsnackbar",{"_index":134,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["matsnackbarmodule",{"_index":51,"title":{},"body":{"modules/AppModule.html":{}}}],["mattoolbarmodule",{"_index":1901,"title":{},"body":{"modules/HeaderModule.html":{}}}],["mattooltipmodule",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{}}}],["mattreemodule",{"_index":2477,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["max",{"_index":1522,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["mc",{"_index":3349,"title":{},"body":{"changelog.html":{}}}],["measured",{"_index":2058,"title":{},"body":{"classes/InitializationState.html":{}}}],["measuredmargin",{"_index":2060,"title":{},"body":{"classes/InitializationState.html":{}}}],["measuredwidth",{"_index":2050,"title":{},"body":{"classes/InitializationState.html":{}}}],["memory",{"_index":3228,"title":{},"body":{"changelog.html":{}}}],["menu",{"_index":1468,"title":{},"body":{"components/DropdownComponent.html":{},"changelog.html":{}}}],["merchantability",{"_index":3617,"title":{},"body":{"license.html":{}}}],["merge",{"_index":3597,"title":{},"body":{"license.html":{}}}],["mergeall",{"_index":2196,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["message",{"_index":784,"title":{"interfaces/Message.html":{}},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["message_service_config",{"_index":1461,"title":{},"body":{"modules/DrawerModule.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["message_service_default_config",{"_index":1462,"title":{},"body":{"modules/DrawerModule.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["messagechannel",{"_index":800,"title":{"classes/MessageChannel.html":{}},"body":{"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["messagechannel(source",{"_index":2237,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["messagechannel.counter",{"_index":2224,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["messages",{"_index":778,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["messageservice",{"_index":759,"title":{"injectables/MessageService.html":{}},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["messageservice.connect(this",{"_index":848,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["messageservice.connect(this).getmessages",{"_index":935,"title":{},"body":{"components/ContentComponent.html":{}}}],["messageserviceconfig",{"_index":2199,"title":{"interfaces/MessageServiceConfig.html":{}},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["messagess",{"_index":1069,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["metadata",{"_index":447,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["method",{"_index":602,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ThemingService.html":{}}}],["method.apply(registry",{"_index":1943,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["methodname",{"_index":1937,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ThemingService.html":{}}}],["methods",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["min",{"_index":1379,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ViewerComponent.html":{}}}],["minor",{"_index":3036,"title":{},"body":{"changelog.html":{}}}],["miscellaneous",{"_index":3540,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["mit",{"_index":3581,"title":{},"body":{"license.html":{}}}],["ml",{"_index":1434,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["mock",{"_index":3345,"title":{},"body":{"changelog.html":{}}}],["modal",{"_index":3152,"title":{},"body":{"changelog.html":{}}}],["mode",{"_index":276,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["model",{"_index":2166,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"dependencies.html":{}}}],["models/list",{"_index":2157,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["modify",{"_index":3596,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/StoreModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"modules.html":{},"overview.html":{}}}],["modules/filters/filters",{"_index":71,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["modules/ontology",{"_index":74,"title":{},"body":{"modules/AppModule.html":{}}}],["modules/results",{"_index":77,"title":{},"body":{"modules/AppModule.html":{}}}],["monorepo",{"_index":3547,"title":{},"body":{"index.html":{}}}],["more",{"_index":1059,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"index.html":{}}}],["mouse",{"_index":1589,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["mousepositiontrackermodule",{"_index":1000,"title":{},"body":{"modules/CoreModule.html":{}}}],["moved",{"_index":3358,"title":{},"body":{"changelog.html":{}}}],["movement",{"_index":1590,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["mr",{"_index":1436,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["msg",{"_index":909,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["msg.payload",{"_index":947,"title":{},"body":{"components/ContentComponent.html":{}}}],["msg.payload.drawers",{"_index":941,"title":{},"body":{"components/ContentComponent.html":{}}}],["msg.payload.opened",{"_index":2917,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["msg.payload.type",{"_index":938,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["msg.source",{"_index":945,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["mt",{"_index":1437,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["much",{"_index":3008,"title":{},"body":{"changelog.html":{}}}],["multi",{"_index":2724,"title":{},"body":{"modules/ThemingModule.html":{}}}],["multiple",{"_index":3548,"title":{},"body":{"index.html":{}}}],["n3",{"_index":3514,"title":{},"body":{"dependencies.html":{}}}],["name",{"_index":417,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["names",{"_index":3121,"title":{},"body":{"changelog.html":{}}}],["namespace",{"_index":1218,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"miscellaneous/variables.html":{}}}],["navigate_before",{"_index":2835,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["navigate_next",{"_index":2837,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["navigation",{"_index":2783,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"changelog.html":{}}}],["navigationoptions",{"_index":2809,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["necessary",{"_index":1620,"title":{},"body":{"components/DualSliderComponent.html":{},"injectables/ThemingService.html":{}}}],["need",{"_index":1180,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"components/FiltersPopoverComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["needed",{"_index":3209,"title":{},"body":{"changelog.html":{}}}],["needs",{"_index":789,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["nested",{"_index":1704,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["network",{"_index":3572,"title":{},"body":{"index.html":{}}}],["neuron",{"_index":1258,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["neuron.svg",{"_index":1259,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["never",{"_index":842,"title":{},"body":{"components/ContainerComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{}}}],["new",{"_index":219,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["newly",{"_index":1847,"title":{},"body":{"classes/FlatNode.html":{}}}],["newvalue",{"_index":1692,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["next",{"_index":434,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["nextbuttonid",{"_index":2787,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["nextel",{"_index":2819,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["nextmessageid",{"_index":2223,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["nextuid",{"_index":2822,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["ng",{"_index":622,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["ng5",{"_index":1648,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"dependencies.html":{}}}],["ng5slidermodule",{"_index":1724,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["ngacceptinputtype_expanded",{"_index":2119,"title":{},"body":{"classes/InitializationState.html":{}}}],["ngacceptinputtype_opened",{"_index":2118,"title":{},"body":{"classes/InitializationState.html":{}}}],["ngacceptinputtype_position",{"_index":2117,"title":{},"body":{"classes/InitializationState.html":{}}}],["ngafterviewinit",{"_index":768,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["ngdobootstrap",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["ngmodule",{"_index":47,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["ngonchanges",{"_index":1559,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["ngonchanges(changes",{"_index":1602,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["ngondestroy",{"_index":769,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{}}}],["ngoninit",{"_index":285,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySearchComponent.html":{}}}],["ngx",{"_index":613,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"dependencies.html":{}}}],["ngxs",{"_index":671,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"dependencies.html":{}}}],["ngxs/logger",{"_index":2695,"title":{},"body":{"modules/StoreModule.html":{},"dependencies.html":{}}}],["ngxs/storage",{"_index":3471,"title":{},"body":{"dependencies.html":{}}}],["ngxs/store",{"_index":675,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"dependencies.html":{}}}],["ngxsdatapluginmodule",{"_index":2692,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsdatapluginmodule.forroot",{"_index":2707,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsdatarepository",{"_index":1027,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["ngxsimmutabledatarepository",{"_index":673,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["ngxsloggerpluginmodule",{"_index":2694,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsloggerpluginmodule.forroot",{"_index":2717,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsmodule",{"_index":2697,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsmodule.forroot(root_states",{"_index":2708,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsoninit",{"_index":1028,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["nih",{"_index":3577,"title":{},"body":{"index.html":{}}}],["node",{"_index":1832,"title":{},"body":{"classes/FlatNode.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["node's",{"_index":1850,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ccf_annotations?.some?.(tag",{"_index":2659,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.children",{"_index":2434,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["node.entityid",{"_index":2622,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.id",{"_index":2346,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["node.label.tolowercase().includes(searchvalue",{"_index":2419,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["node.reference_organ",{"_index":2661,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.representation_of",{"_index":2619,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.synonymlabels.find((label",{"_index":2424,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["node.ts",{"_index":1831,"title":{},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["node.ts:11",{"_index":1843,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:13",{"_index":1841,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:18",{"_index":1849,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:25",{"_index":1852,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:36",{"_index":1846,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:38",{"_index":1838,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:9",{"_index":1844,"title":{},"body":{"classes/FlatNode.html":{}}}],["node['@id",{"_index":2620,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["nodeclickevent",{"_index":2580,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["nodes",{"_index":355,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["nodes.foreach((node",{"_index":2417,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["nodes.svg",{"_index":1257,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["nodes[node.parent",{"_index":2466,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["none",{"_index":1505,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["noninfringement",{"_index":3621,"title":{},"body":{"license.html":{}}}],["normally",{"_index":1800,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["not(:first",{"_index":1401,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["not(:last",{"_index":1889,"title":{},"body":{"components/HeaderComponent.html":{}}}],["note",{"_index":1703,"title":{},"body":{"components/DualSliderComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["notice",{"_index":3231,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["notifies",{"_index":2521,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["now",{"_index":3011,"title":{},"body":{"changelog.html":{}}}],["nowrap",{"_index":1442,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["null",{"_index":1919,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"components/ViewerComponent.html":{}}}],["null)?.getcontainerelement",{"_index":2771,"title":{},"body":{"injectables/ThemingService.html":{}}}],["number",{"_index":578,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{}}}],["number((event.target",{"_index":1693,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["number(this.options.floor",{"_index":1696,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["number(value.slice(0",{"_index":2064,"title":{},"body":{"classes/InitializationState.html":{}}}],["numebr",{"_index":2873,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["numeric",{"_index":3236,"title":{},"body":{"changelog.html":{}}}],["numresults",{"_index":1833,"title":{},"body":{"classes/FlatNode.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["o",{"_index":1084,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["o.id",{"_index":2653,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["o.representation_of",{"_index":2635,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["o['@id",{"_index":2657,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["object",{"_index":213,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["object.prototype.hasownproperty.call(colors",{"_index":2664,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["object.values(state.nodes",{"_index":2401,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["observable",{"_index":143,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["observableinput",{"_index":1034,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["observedvalueof",{"_index":1035,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["obtaining",{"_index":3589,"title":{},"body":{"license.html":{}}}],["occurencedata",{"_index":2442,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["occurences",{"_index":1120,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["occurs",{"_index":1593,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["off/on",{"_index":3212,"title":{},"body":{"changelog.html":{}}}],["official",{"_index":3316,"title":{},"body":{"changelog.html":{}}}],["offset",{"_index":949,"title":{},"body":{"components/ContentComponent.html":{}}}],["old",{"_index":3562,"title":{},"body":{"index.html":{}}}],["once",{"_index":1024,"title":{},"body":{"modules/CoreModule.html":{}}}],["onchanges",{"_index":1546,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["ondestroy",{"_index":756,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{}}}],["one",{"_index":1058,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"index.html":{}}}],["oninit",{"_index":132,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySearchComponent.html":{}}}],["onkeyhigh",{"_index":1560,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["onkeyhigh(event",{"_index":1609,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["onkeylow",{"_index":1561,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["onkeylow(event",{"_index":1616,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["online",{"_index":3325,"title":{},"body":{"changelog.html":{}}}],["onscroll",{"_index":2495,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["onscroll(event",{"_index":2527,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["onselect",{"_index":2280,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["onselect(event",{"_index":2305,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["ontolgyselection.foreach((selection",{"_index":377,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontolgyselection.length",{"_index":373,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontolgyselection[0].label",{"_index":375,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontological",{"_index":3374,"title":{},"body":{"changelog.html":{}}}],["ontologies",{"_index":3274,"title":{},"body":{"changelog.html":{}}}],["ontology",{"_index":196,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["ontology_search",{"_index":2345,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["ontologyexplorationmodule",{"_index":14,"title":{"modules/OntologyExplorationModule.html":{}},"body":{"modules/AppModule.html":{},"modules/OntologyExplorationModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologyfilter",{"_index":2443,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["ontologynode",{"_index":2459,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["ontologysearchcomponent",{"_index":533,"title":{"components/OntologySearchComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["ontologysearchmodule",{"_index":2257,"title":{"modules/OntologySearchModule.html":{}},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologysearchservice",{"_index":2285,"title":{"injectables/OntologySearchService.html":{}},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"interfaces/SearchResult.html":{},"coverage.html":{},"overview.html":{}}}],["ontologyselected(ontologyselection",{"_index":356,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselection",{"_index":156,"title":{"interfaces/OntologySelection.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"coverage.html":{}}}],["ontologyselection.map(selection",{"_index":361,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselection[0",{"_index":367,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselection[0].label",{"_index":368,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselectioncomponent",{"_index":535,"title":{"components/OntologySelectionComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["ontologyselectionlabel",{"_index":200,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselectionmodule",{"_index":2258,"title":{"modules/OntologySelectionModule.html":{}},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologyselections",{"_index":2455,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["ontologyservice",{"_index":2278,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["ontologytermoccurencesdata",{"_index":1121,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurencesdata$.pipe(take(1)).subscribe(ontologytermsfulldata",{"_index":1172,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurencesdata(filter",{"_index":1190,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurencesdataquerystatus",{"_index":1095,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurrences",{"_index":1141,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologyterms",{"_index":238,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["ontologytermsfulldata",{"_index":1107,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytreecomponent",{"_index":537,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["ontologytreemodel",{"_index":135,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["ontologytreemodule",{"_index":2259,"title":{"modules/OntologyTreeModule.html":{}},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologytreenode",{"_index":1836,"title":{},"body":{"classes/FlatNode.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["opacities",{"_index":3216,"title":{},"body":{"changelog.html":{}}}],["opacity",{"_index":931,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["opacityslidermodule",{"_index":2479,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["open",{"_index":208,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/typealiases.html":{}}}],["open/close",{"_index":2041,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["open_in_new",{"_index":1371,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["openapi",{"_index":3062,"title":{},"body":{"changelog.html":{}}}],["openapi/angular",{"_index":1004,"title":{},"body":{"modules/CoreModule.html":{}}}],["opened",{"_index":916,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["opened(value",{"_index":2029,"title":{},"body":{"classes/InitializationState.html":{}}}],["opened/closed",{"_index":1986,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["openedchange",{"_index":2037,"title":{},"body":{"classes/InitializationState.html":{}}}],["openedstate",{"_index":1987,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["openexpanded",{"_index":2079,"title":{},"body":{"classes/InitializationState.html":{}}}],["opening",{"_index":2513,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["opening/closing/expanding",{"_index":2003,"title":{},"body":{"classes/InitializationState.html":{}}}],["opens",{"_index":1488,"title":{},"body":{"components/DropdownComponent.html":{},"classes/InitializationState.html":{}}}],["operator",{"_index":1072,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["operatorfunction",{"_index":1036,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["opposite",{"_index":1992,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["optimization",{"_index":3163,"title":{},"body":{"changelog.html":{}}}],["optimizations",{"_index":3309,"title":{},"body":{"changelog.html":{}}}],["optimized",{"_index":3191,"title":{},"body":{"changelog.html":{}}}],["option",{"_index":600,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["option.displaylabel[0",{"_index":2349,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["option.displaylabel[1",{"_index":2350,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["option.displaylabel[2",{"_index":2351,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["option?.displaylabel",{"_index":2339,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["optional",{"_index":120,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":569,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{}}}],["options.ceil",{"_index":1698,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["options.floor",{"_index":1697,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["optionschanged",{"_index":1562,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["optionsvisible",{"_index":1471,"title":{},"body":{"components/DropdownComponent.html":{}}}],["order",{"_index":2408,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["organ",{"_index":206,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"index.html":{}}}],["organids",{"_index":2633,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["organids.has(organ.id",{"_index":2637,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["organinfo",{"_index":2588,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["organlistvisible",{"_index":209,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["organs",{"_index":1226,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["organs/anatomical",{"_index":3217,"title":{},"body":{"changelog.html":{}}}],["organselectormodule",{"_index":63,"title":{},"body":{"modules/AppModule.html":{}}}],["origin",{"_index":2844,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["original",{"_index":1840,"title":{},"body":{"classes/FlatNode.html":{}}}],["originx",{"_index":1649,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["originy",{"_index":1650,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["orthographic",{"_index":3131,"title":{},"body":{"changelog.html":{}}}],["ot",{"_index":1214,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{}}}],["ot2od026671",{"_index":3579,"title":{},"body":{"index.html":{}}}],["other.expanded",{"_index":2106,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.expandedstate2",{"_index":2107,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.margin2",{"_index":2112,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.measuredmargin",{"_index":2110,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.measuredwidth",{"_index":2109,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.opened",{"_index":2108,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.width",{"_index":2111,"title":{},"body":{"classes/InitializationState.html":{}}}],["otherblocks",{"_index":2178,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["otherblocks.push",{"_index":2183,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["others",{"_index":218,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["otherwise",{"_index":1926,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"license.html":{}}}],["out",{"_index":20,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"classes/InitializationState.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"license.html":{},"overview.html":{}}}],["outline",{"_index":1769,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{}}}],["output",{"_index":611,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["outputs",{"_index":570,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["outside",{"_index":1333,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["ovaries",{"_index":1260,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["ovaries.svg",{"_index":1261,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["ovary",{"_index":1262,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["over",{"_index":1358,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["overall",{"_index":583,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["overflow",{"_index":875,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["overlay",{"_index":230,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ViewerComponent.html":{}}}],["overlay'},{'name",{"_index":542,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["overlay.component",{"_index":2690,"title":{},"body":{"modules/SpinnerOverlayModule.html":{}}}],["overlay.component.html",{"_index":2675,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.scss",{"_index":2674,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.ts",{"_index":2672,"title":{},"body":{"components/SpinnerOverlayComponent.html":{},"coverage.html":{}}}],["overlay.component.ts:16",{"_index":2680,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.ts:19",{"_index":2676,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.ts:22",{"_index":2678,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.create",{"_index":1656,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlay.module",{"_index":86,"title":{},"body":{"modules/AppModule.html":{}}}],["overlay.module.ts",{"_index":2687,"title":{},"body":{"modules/SpinnerOverlayModule.html":{}}}],["overlay.position().flexibleconnectedto(element).withpositions([position",{"_index":1654,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlay.service",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["overlay.service.ts",{"_index":405,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["overlay.service.ts:10",{"_index":420,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:11",{"_index":419,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:13",{"_index":415,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:27",{"_index":412,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:32",{"_index":413,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.setrootelement(el",{"_index":263,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["overlay/app",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["overlay/spinner",{"_index":85,"title":{},"body":{"modules/AppModule.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"coverage.html":{}}}],["overlaycontainer",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"injectables/ThemingService.html":{}}}],["overlaymodule",{"_index":1722,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["overlayref",{"_index":1554,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlayref.attach(popoverportal",{"_index":1690,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlayref.updateposition",{"_index":1691,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlays",{"_index":3367,"title":{},"body":{"changelog.html":{}}}],["overlayx",{"_index":1651,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlayy",{"_index":1652,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overview",{"_index":3635,"title":{"overview.html":{}},"body":{"overview.html":{}}}],["owning",{"_index":2900,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["p",{"_index":3341,"title":{},"body":{"changelog.html":{}}}],["package",{"_index":3019,"title":{"dependencies.html":{}},"body":{"changelog.html":{}}}],["padding",{"_index":1383,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["page",{"_index":1863,"title":{},"body":{"components/HeaderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["pages",{"_index":3100,"title":{},"body":{"changelog.html":{}}}],["pair",{"_index":2114,"title":{},"body":{"classes/InitializationState.html":{}}}],["paired",{"_index":3089,"title":{},"body":{"changelog.html":{}}}],["pancreas",{"_index":1263,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["pancreas.svg",{"_index":1264,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["pane",{"_index":1527,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["panel",{"_index":1515,"title":{},"body":{"components/DropdownComponent.html":{},"changelog.html":{}}}],["panelclass",{"_index":1657,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["param",{"_index":251,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["param0",{"_index":2617,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["parameters",{"_index":416,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["params",{"_index":1999,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["parent",{"_index":596,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["parent.messages.pipe(takewhile",{"_index":2230,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["parse",{"_index":502,"title":{},"body":{"components/AppWebComponent.html":{}}}],["parsedatasources",{"_index":503,"title":{},"body":{"components/AppWebComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["parsedatasources(value",{"_index":480,"title":{},"body":{"components/AppWebComponent.html":{},"miscellaneous/functions.html":{}}}],["parser",{"_index":3478,"title":{},"body":{"dependencies.html":{}}}],["part",{"_index":2300,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["partial",{"_index":1178,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["particular",{"_index":3619,"title":{},"body":{"license.html":{}}}],["partly",{"_index":3202,"title":{},"body":{"changelog.html":{}}}],["partonomy",{"_index":3144,"title":{},"body":{"changelog.html":{}}}],["parts",{"_index":1947,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.join",{"_index":1952,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.push('innamespace",{"_index":1951,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.push('literal",{"_index":1950,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.push('set",{"_index":1949,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["passed",{"_index":198,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["passes",{"_index":1348,"title":{},"body":{"components/DonorCardComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["path",{"_index":628,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"dependencies.html":{}}}],["patient",{"_index":1318,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{}}}],["payload",{"_index":669,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/typealiases.html":{}}}],["payload('doreset",{"_index":718,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["pelvis",{"_index":1265,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["per",{"_index":2824,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["performance",{"_index":3023,"title":{},"body":{"changelog.html":{}}}],["permission",{"_index":3585,"title":{},"body":{"license.html":{}}}],["permit",{"_index":3604,"title":{},"body":{"license.html":{}}}],["person",{"_index":1368,"title":{},"body":{"components/DonorCardComponent.html":{},"license.html":{}}}],["persons",{"_index":3605,"title":{},"body":{"license.html":{}}}],["pipe",{"_index":1081,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/functions.html":{}}}],["pipe(mergeall",{"_index":2232,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["placed",{"_index":2706,"title":{},"body":{"modules/StoreModule.html":{}}}],["placeholder",{"_index":3320,"title":{},"body":{"changelog.html":{}}}],["placeholdertext",{"_index":2283,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["placement",{"_index":3277,"title":{},"body":{"changelog.html":{}}}],["player",{"_index":3455,"title":{},"body":{"dependencies.html":{}}}],["pluck",{"_index":147,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["plugin",{"_index":2696,"title":{},"body":{"modules/StoreModule.html":{},"dependencies.html":{}}}],["pointer",{"_index":1390,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["popover",{"_index":324,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["popover's",{"_index":325,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["popover'},{'name",{"_index":530,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["popover.component",{"_index":171,"title":{},"body":{"interfaces/AppOptions.html":{},"modules/FiltersPopoverModule.html":{}}}],["popover.component.html",{"_index":1789,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.scss",{"_index":1788,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts",{"_index":1787,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"coverage.html":{}}}],["popover.component.ts:16",{"_index":1797,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:22",{"_index":1794,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:27",{"_index":1802,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:32",{"_index":1801,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:37",{"_index":1803,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:42",{"_index":1809,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:47",{"_index":1808,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:54",{"_index":1807,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:63",{"_index":1805,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.module",{"_index":73,"title":{},"body":{"modules/AppModule.html":{}}}],["popover.module.ts",{"_index":1826,"title":{},"body":{"modules/FiltersPopoverModule.html":{}}}],["popover/filters",{"_index":72,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"coverage.html":{}}}],["popoverelement",{"_index":1555,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["popoverelement?.nativeelement?.contains?.(target",{"_index":1681,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["popoverportal",{"_index":1556,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["popup",{"_index":1729,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"changelog.html":{}}}],["portal",{"_index":1870,"title":{},"body":{"components/HeaderComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"index.html":{}}}],["portal's",{"_index":3301,"title":{},"body":{"changelog.html":{}}}],["portalmodule",{"_index":1723,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["portions",{"_index":3612,"title":{},"body":{"license.html":{}}}],["position",{"_index":833,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["position(value",{"_index":2025,"title":{},"body":{"classes/InitializationState.html":{}}}],["positions",{"_index":799,"title":{},"body":{"components/ContainerComponent.html":{}}}],["positionstrategy",{"_index":1653,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["possible",{"_index":3257,"title":{},"body":{"changelog.html":{}}}],["preclose",{"_index":287,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["prefered",{"_index":2810,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["preference",{"_index":299,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["preferences",{"_index":3118,"title":{},"body":{"changelog.html":{}}}],["prefix",{"_index":2353,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["preparation",{"_index":3351,"title":{},"body":{"changelog.html":{}}}],["presented",{"_index":3365,"title":{},"body":{"changelog.html":{}}}],["pressed",{"_index":1615,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["prev",{"_index":2832,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["prevbuttonid",{"_index":2786,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["prevel",{"_index":2817,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["preview",{"_index":3130,"title":{},"body":{"changelog.html":{}}}],["previous",{"_index":2827,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["previously",{"_index":3055,"title":{},"body":{"changelog.html":{}}}],["primary",{"_index":2792,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["private",{"_index":259,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["process",{"_index":908,"title":{},"body":{"components/ContentComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["processed",{"_index":3293,"title":{},"body":{"changelog.html":{}}}],["processes",{"_index":786,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["processing",{"_index":3119,"title":{},"body":{"changelog.html":{}}}],["production",{"_index":3031,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["programming",{"_index":3013,"title":{},"body":{"changelog.html":{}}}],["progress",{"_index":2673,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["project",{"_index":3339,"title":{},"body":{"changelog.html":{}}}],["projected",{"_index":794,"title":{},"body":{"components/ContainerComponent.html":{}}}],["projects",{"_index":3549,"title":{},"body":{"index.html":{}}}],["projects/.../app",{"_index":3544,"title":{},"body":{"miscellaneous/functions.html":{}}}],["projects/.../color",{"_index":3646,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../container.component.ts",{"_index":3545,"title":{},"body":{"miscellaneous/functions.html":{}}}],["projects/.../data",{"_index":3645,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../data.state.ts",{"_index":3542,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["projects/.../default",{"_index":3647,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../drawer.component.ts",{"_index":3641,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../message.service.ts",{"_index":3650,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../messages.ts",{"_index":3640,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../ontology",{"_index":3643,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../scene.state.ts",{"_index":3648,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../store.module.ts",{"_index":3652,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../theming.service.ts",{"_index":3649,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../thumbnail",{"_index":3651,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/ccf",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["promise",{"_index":1976,"title":{},"body":{"classes/InitializationState.html":{}}}],["promise(resolve",{"_index":1973,"title":{},"body":{"classes/InitializationState.html":{}}}],["prop",{"_index":1935,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["properties",{"_index":119,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["property",{"_index":606,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"components/FiltersContentComponent.html":{},"classes/InitializationState.html":{},"components/ViewerComponent.html":{}}}],["property('expandable",{"_index":3656,"title":{},"body":{"miscellaneous/variables.html":{}}}],["property('level",{"_index":3655,"title":{},"body":{"miscellaneous/variables.html":{}}}],["prostate",{"_index":1268,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["prostate.svg",{"_index":1269,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["protected",{"_index":408,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{}}}],["provide",{"_index":92,"title":{},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{},"modules/DrawerModule.html":{},"modules/ThemingModule.html":{}}}],["provided",{"_index":808,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"license.html":{}}}],["providedin",{"_index":421,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["provider",{"_index":1134,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilter",{"_index":1148,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilterdata",{"_index":1135,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilterquerystatus",{"_index":1103,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilters",{"_index":1735,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["providers",{"_index":91,"title":{},"body":{"modules/AppModule.html":{},"components/ContainerComponent.html":{},"modules/CoreModule.html":{},"modules/DrawerModule.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySelectionComponent.html":{},"modules/ThemingModule.html":{},"changelog.html":{}}}],["providertoken",{"_index":1300,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["provides",{"_index":2288,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["providing",{"_index":881,"title":{},"body":{"components/ContentComponent.html":{}}}],["public",{"_index":2277,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["publish",{"_index":3598,"title":{},"body":{"license.html":{}}}],["publishing",{"_index":3017,"title":{},"body":{"changelog.html":{}}}],["publishreplay",{"_index":1038,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["publishreplay(1",{"_index":1088,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["purpose",{"_index":3620,"title":{},"body":{"license.html":{}}}],["pushed",{"_index":3176,"title":{},"body":{"changelog.html":{}}}],["px",{"_index":2017,"title":{},"body":{"classes/InitializationState.html":{}}}],["python",{"_index":3015,"title":{},"body":{"changelog.html":{}}}],["qs",{"_index":3521,"title":{},"body":{"dependencies.html":{}}}],["qualitative",{"_index":3305,"title":{},"body":{"changelog.html":{}}}],["quality",{"_index":3073,"title":{},"body":{"changelog.html":{}}}],["queries",{"_index":1055,"title":{},"body":{"interfaces/DataStateModel.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["query",{"_index":1078,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["querydata",{"_index":1082,"title":{},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["querydata(query",{"_index":3546,"title":{},"body":{"miscellaneous/functions.html":{}}}],["querying",{"_index":1074,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["querylist",{"_index":804,"title":{},"body":{"components/ContainerComponent.html":{}}}],["querystatus",{"_index":1150,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["question",{"_index":584,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["quickly",{"_index":3286,"title":{},"body":{"changelog.html":{}}}],["radius",{"_index":1386,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["range",{"_index":1578,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["rangelabel",{"_index":1569,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["rank",{"_index":664,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"miscellaneous/variables.html":{}}}],["rank']).concat(otherblocks",{"_index":2185,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["rc.1",{"_index":3311,"title":{},"body":{"changelog.html":{}}}],["rdf",{"_index":3523,"title":{},"body":{"dependencies.html":{}}}],["rdfjs/data",{"_index":3472,"title":{},"body":{"dependencies.html":{}}}],["rdfxml",{"_index":3524,"title":{},"body":{"dependencies.html":{}}}],["reactiveformsmodule",{"_index":2363,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["read",{"_index":1635,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["readable",{"_index":3526,"title":{},"body":{"dependencies.html":{}}}],["readonly",{"_index":102,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["real",{"_index":3324,"title":{},"body":{"changelog.html":{}}}],["reason",{"_index":2703,"title":{},"body":{"modules/StoreModule.html":{}}}],["receive",{"_index":897,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{}}}],["receiving",{"_index":2204,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["record",{"_index":702,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["rectify",{"_index":3059,"title":{},"body":{"changelog.html":{}}}],["reduce",{"_index":3168,"title":{},"body":{"changelog.html":{}}}],["refcount",{"_index":1039,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["reference",{"_index":781,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["referenceorgans",{"_index":2569,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["references",{"_index":920,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["referencing",{"_index":2811,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["refernced",{"_index":3090,"title":{},"body":{"changelog.html":{}}}],["reforgandata",{"_index":2650,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["reforgans",{"_index":2654,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["reforgans.has(node.reference_organ",{"_index":2662,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["refresh",{"_index":1764,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"changelog.html":{}}}],["refreshclicked",{"_index":1867,"title":{},"body":{"components/HeaderComponent.html":{}}}],["refreshes",{"_index":1750,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["refreshfilters",{"_index":1733,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["regions",{"_index":3368,"title":{},"body":{"changelog.html":{}}}],["register",{"_index":1220,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"dependencies.html":{}}}],["registered",{"_index":1224,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["registericon",{"_index":1930,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registericon(definition",{"_index":1927,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registericonimpl",{"_index":1956,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registericonimpl(definition",{"_index":1931,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registering",{"_index":1907,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registers",{"_index":1924,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registration",{"_index":1213,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{},"index.html":{}}}],["registrations",{"_index":3158,"title":{},"body":{"changelog.html":{}}}],["registry",{"_index":1914,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registry.state",{"_index":2698,"title":{},"body":{"modules/StoreModule.html":{}}}],["registry.state.ts",{"_index":1906,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{}}}],["registry.state.ts:114",{"_index":1962,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:134",{"_index":1960,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:43",{"_index":1958,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:74",{"_index":1963,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:84",{"_index":1964,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry/default",{"_index":1205,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["registry/icon",{"_index":1905,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/StoreModule.html":{},"coverage.html":{}}}],["registry[methodname",{"_index":1939,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["regular",{"_index":1171,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["related",{"_index":3196,"title":{},"body":{"changelog.html":{}}}],["relative",{"_index":874,"title":{},"body":{"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["release",{"_index":3050,"title":{},"body":{"changelog.html":{}}}],["relevant",{"_index":2512,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["reliability",{"_index":3234,"title":{},"body":{"changelog.html":{}}}],["reload",{"_index":2944,"title":{},"body":{"components/ViewerComponent.html":{}}}],["reloads",{"_index":3126,"title":{},"body":{"changelog.html":{}}}],["rem",{"_index":1767,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["remoteapiendpoint",{"_index":458,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["remove",{"_index":605,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/ThemingService.html":{}}}],["removebox",{"_index":1791,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["removeclass",{"_index":2773,"title":{},"body":{"injectables/ThemingService.html":{}}}],["removed",{"_index":3110,"title":{},"body":{"changelog.html":{}}}],["removes",{"_index":2737,"title":{},"body":{"injectables/ThemingService.html":{},"changelog.html":{}}}],["render",{"_index":1799,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["renderer",{"_index":2767,"title":{},"body":{"injectables/ThemingService.html":{}}}],["renderer2",{"_index":2755,"title":{},"body":{"injectables/ThemingService.html":{}}}],["renderer[methodname](overlay",{"_index":2775,"title":{},"body":{"injectables/ThemingService.html":{}}}],["renderer[methodname](root",{"_index":2774,"title":{},"body":{"injectables/ThemingService.html":{}}}],["rendering",{"_index":2482,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["repeat",{"_index":1881,"title":{},"body":{"components/HeaderComponent.html":{}}}],["replay",{"_index":1076,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["replaysubject",{"_index":144,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["replaysubject(1",{"_index":243,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["replaysubject>(1",{"_index":1108,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["repository",{"_index":1089,"title":{},"body":{"interfaces/DataStateModel.html":{},"index.html":{}}}],["required",{"_index":3278,"title":{},"body":{"changelog.html":{}}}],["reset",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"overview.html":{}}}],["resets",{"_index":312,"title":{},"body":{"interfaces/AppOptions.html":{},"components/HeaderComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["resettheme",{"_index":2730,"title":{},"body":{"injectables/ThemingService.html":{}}}],["resetview",{"_index":332,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["resolve",{"_index":1969,"title":{},"body":{"classes/InitializationState.html":{}}}],["resolved",{"_index":3181,"title":{},"body":{"changelog.html":{}}}],["resolves",{"_index":821,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["respond",{"_index":3142,"title":{},"body":{"changelog.html":{}}}],["responsible",{"_index":2370,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["restriction",{"_index":3593,"title":{},"body":{"license.html":{}}}],["result",{"_index":109,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["result.ts",{"_index":2122,"title":{},"body":{"interfaces/ListResult.html":{},"coverage.html":{}}}],["resultlabel",{"_index":2496,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["results",{"_index":111,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["results.state",{"_index":167,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{}}}],["results.state.ts",{"_index":2124,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"coverage.html":{}}}],["results.state.ts:30",{"_index":2153,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:31",{"_index":2151,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:35",{"_index":2149,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:38",{"_index":2133,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:58",{"_index":2146,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:62",{"_index":2144,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:66",{"_index":2138,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:70",{"_index":2140,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:74",{"_index":2147,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:81",{"_index":2142,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results/list",{"_index":166,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{}}}],["results_browser",{"_index":2538,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["resultsbrowser",{"_index":2481,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["resultsbrowsercomponent",{"_index":539,"title":{"components/ResultsBrowserComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["resultsbrowseritems",{"_index":2487,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["resultsbrowsermodule",{"_index":15,"title":{"modules/ResultsBrowserModule.html":{}},"body":{"modules/AppModule.html":{},"modules/ResultsBrowserModule.html":{},"modules.html":{},"overview.html":{}}}],["return",{"_index":226,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["returns",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{}}}],["reuse",{"_index":1170,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["reverse",{"_index":1768,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["rgb",{"_index":678,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"dependencies.html":{}}}],["rgba",{"_index":665,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["rgba(0",{"_index":1414,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["rgba[3",{"_index":695,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["right",{"_index":321,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["right.closeexpanded",{"_index":329,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["right.open",{"_index":328,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["right.px",{"_index":895,"title":{},"body":{"components/ContentComponent.html":{}}}],["right.svg",{"_index":1242,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["rightmargin",{"_index":888,"title":{},"body":{"components/ContentComponent.html":{}}}],["rights",{"_index":3595,"title":{},"body":{"license.html":{}}}],["ripple",{"_index":1394,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["root",{"_index":38,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["root'},{'name",{"_index":511,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["root_states",{"_index":2701,"title":{},"body":{"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rootelement",{"_index":407,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["rootnode",{"_index":2372,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["rotates",{"_index":3128,"title":{},"body":{"changelog.html":{}}}],["round",{"_index":3220,"title":{},"body":{"changelog.html":{}}}],["rounded",{"_index":3237,"title":{},"body":{"changelog.html":{}}}],["row",{"_index":643,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["ru/common",{"_index":3445,"title":{},"body":{"dependencies.html":{}}}],["ru/common/typings",{"_index":2407,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["ru/common/typings/immutability",{"_index":667,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ResultsBrowserComponent.html":{}}}],["rui",{"_index":3006,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["rui_locations.jsonld",{"_index":3004,"title":{},"body":{"changelog.html":{}}}],["run",{"_index":790,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["running",{"_index":1060,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/enumerations.html":{}}}],["runtime",{"_index":1212,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{}}}],["rxjs",{"_index":145,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ToggleButtonComponent.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":149,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{}}}],["safedef",{"_index":1920,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["safehtml",{"_index":1908,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["saferesourceurl",{"_index":1909,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["safeurl",{"_index":2932,"title":{},"body":{"components/ViewerComponent.html":{}}}],["sample",{"_index":2778,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["samples",{"_index":2928,"title":{},"body":{"components/ViewerComponent.html":{},"changelog.html":{}}}],["sanitize",{"_index":1917,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["sanitized",{"_index":1215,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/ViewerComponent.html":{}}}],["sanitizer",{"_index":1916,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["sanitizer.bypasssecuritytrusthtml(html",{"_index":1922,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["sanitizer.bypasssecuritytrustresourceurl(url",{"_index":1921,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["sans",{"_index":1894,"title":{},"body":{"components/HeaderComponent.html":{}}}],["sass:math",{"_index":1699,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["saved",{"_index":1754,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["saver",{"_index":3495,"title":{},"body":{"dependencies.html":{}}}],["scaffolding",{"_index":3340,"title":{},"body":{"changelog.html":{}}}],["scene",{"_index":256,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["scene.filter(node",{"_index":2658,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scene/scene.state",{"_index":2699,"title":{},"body":{"modules/StoreModule.html":{}}}],["scenedata",{"_index":1127,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["scenedata(filter",{"_index":1196,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["scenedataquerystatus",{"_index":1099,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["scenenodeclicked",{"_index":2571,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scenenodeclicked(undefined",{"_index":2579,"title":{},"body":{"injectables/SceneState.html":{}}}],["scenenodehovered",{"_index":2572,"title":{},"body":{"injectables/SceneState.html":{}}}],["scenenodehovered(node",{"_index":2584,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scenenodeunhover",{"_index":2573,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scenestate",{"_index":168,"title":{"injectables/SceneState.html":{}},"body":{"interfaces/AppOptions.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["scenestatemodel",{"_index":2610,"title":{"interfaces/SceneStateModel.html":{}},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"coverage.html":{}}}],["scheduled",{"_index":3182,"title":{},"body":{"changelog.html":{}}}],["schema",{"_index":3343,"title":{},"body":{"changelog.html":{}}}],["scheme",{"_index":302,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["schemes",{"_index":3306,"title":{},"body":{"changelog.html":{}}}],["science",{"_index":3573,"title":{},"body":{"index.html":{}}}],["scroll",{"_index":2530,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["scrollbar",{"_index":2357,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["scrolled",{"_index":2532,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["scrollheight",{"_index":2544,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["scrolling",{"_index":878,"title":{},"body":{"components/ContainerComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["scrollingmodule",{"_index":2563,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["scrolltop",{"_index":2545,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["search",{"_index":2271,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["search'},{'name",{"_index":534,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["search.component",{"_index":2367,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["search.component.html",{"_index":2273,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.scss",{"_index":2272,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts",{"_index":2268,"title":{},"body":{"components/OntologySearchComponent.html":{},"coverage.html":{}}}],["search.component.ts:107",{"_index":2307,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:23",{"_index":2289,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:29",{"_index":2290,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:34",{"_index":2319,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:40",{"_index":2317,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:45",{"_index":2286,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:53",{"_index":2322,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:60",{"_index":2301,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:78",{"_index":2295,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:88",{"_index":2311,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:98",{"_index":2315,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.detached",{"_index":2354,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.module",{"_index":2263,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{}}}],["search.module.ts",{"_index":2361,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["search.service",{"_index":2326,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["search.service.ts",{"_index":2369,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["search.service.ts:100",{"_index":2393,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:111",{"_index":2383,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:128",{"_index":2389,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:30",{"_index":2406,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:31",{"_index":2405,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:34",{"_index":2402,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:37",{"_index":2404,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:39",{"_index":2399,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:50",{"_index":2379,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:63",{"_index":2395,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search/ontology",{"_index":2262,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["searched",{"_index":2304,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searches",{"_index":2380,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searching",{"_index":2270,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["searchresult",{"_index":2294,"title":{"interfaces/SearchResult.html":{}},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["searchresults",{"_index":2416,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchresults.get(node.id",{"_index":2420,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchresults.set(node.id",{"_index":2421,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchservice",{"_index":2287,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["searchvalue",{"_index":2382,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchvalue.length",{"_index":2431,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["section",{"_index":548,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"coverage.html":{}}}],["section.description",{"_index":1378,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["section.label",{"_index":1377,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["section.sectionnumber",{"_index":2883,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["sectionnumber",{"_index":2881,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["sectionnumber).length",{"_index":2884,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["sections",{"_index":2874,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["see",{"_index":3106,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["select",{"_index":1506,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{}}}],["selectable",{"_index":1430,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["selected",{"_index":354,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["selected(ontologynode",{"_index":2457,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selectedanatomicalstructures",{"_index":2611,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["selectedorgans",{"_index":2649,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["selectedreferenceorgans",{"_index":2570,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["selecting",{"_index":1476,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["selection",{"_index":158,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["selection'},{'name",{"_index":536,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["selection.component",{"_index":2472,"title":{},"body":{"modules/OntologySelectionModule.html":{}}}],["selection.component.html",{"_index":2441,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.scss",{"_index":2440,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts",{"_index":2438,"title":{},"body":{"components/OntologySelectionComponent.html":{},"coverage.html":{}}}],["selection.component.ts:23",{"_index":2462,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:28",{"_index":2448,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:33",{"_index":2452,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:38",{"_index":2453,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:45",{"_index":2450,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:47",{"_index":2447,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:48",{"_index":2451,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:53",{"_index":2446,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:61",{"_index":2460,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:64",{"_index":2456,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:75",{"_index":2458,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.id",{"_index":362,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selection.label",{"_index":378,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selection.module",{"_index":2265,"title":{},"body":{"modules/OntologyExplorationModule.html":{}}}],["selection.module.ts",{"_index":2471,"title":{},"body":{"modules/OntologySelectionModule.html":{}}}],["selection.ts",{"_index":2436,"title":{},"body":{"interfaces/OntologySelection.html":{},"coverage.html":{}}}],["selection/deselection",{"_index":2524,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["selection/ontology",{"_index":2264,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"coverage.html":{}}}],["selectionchange",{"_index":571,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["selectionchanged",{"_index":1472,"title":{},"body":{"components/DropdownComponent.html":{}}}],["selectionchanged(value",{"_index":1482,"title":{},"body":{"components/DropdownComponent.html":{}}}],["selectionlabel",{"_index":204,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selections",{"_index":563,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["selectionstring",{"_index":376,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selectlistresult",{"_index":2129,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["selectlistresult(result",{"_index":2143,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["selector",{"_index":182,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["selectors",{"_index":2815,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["selects",{"_index":1352,"title":{},"body":{"components/DonorCardComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["selecttoken",{"_index":1310,"title":{},"body":{"injectables/DelegateDataSourceService.html":{}}}],["selecttoken(config",{"_index":1307,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["sell",{"_index":3602,"title":{},"body":{"license.html":{}}}],["semantic",{"_index":3364,"title":{},"body":{"changelog.html":{}}}],["send",{"_index":777,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/functions.html":{}}}],["sendcompletedto",{"_index":3410,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sendcompletedto(subject",{"_index":1070,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["sendcompletedto(this._aggregatedataquerystatus",{"_index":1118,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._celltypetermoccurencesdataquerystatus",{"_index":1126,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._ontologytermoccurencesdataquerystatus",{"_index":1123,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._providerfilterquerystatus",{"_index":1137,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._scenedataquerystatus",{"_index":1129,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._technologyfilterquerystatus",{"_index":1133,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._tissueblockdataquerystatus",{"_index":1114,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sender",{"_index":2193,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["sending",{"_index":2096,"title":{},"body":{"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["sending/receiving",{"_index":2067,"title":{},"body":{"classes/InitializationState.html":{}}}],["sendmessage",{"_index":2240,"title":{},"body":{"classes/MessageChannel.html":{}}}],["sendmessage(payload",{"_index":2209,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["sends",{"_index":1067,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"miscellaneous/functions.html":{}}}],["sendtoggle",{"_index":2097,"title":{},"body":{"classes/InitializationState.html":{}}}],["sennet",{"_index":3026,"title":{},"body":{"changelog.html":{}}}],["sent",{"_index":969,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/typealiases.html":{}}}],["serif",{"_index":1895,"title":{},"body":{"components/HeaderComponent.html":{}}}],["server",{"_index":3346,"title":{},"body":{"changelog.html":{}}}],["service",{"_index":577,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["service.initialize(location",{"_index":2758,"title":{},"body":{"injectables/ThemingService.html":{}}}],["services/data",{"_index":1008,"title":{},"body":{"modules/CoreModule.html":{}}}],["services/message/message.service",{"_index":973,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{}}}],["services/theming/theming.module",{"_index":1011,"title":{},"body":{"modules/CoreModule.html":{}}}],["set",{"_index":291,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["set(['skin",{"_index":2609,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["set(reforgandata.filter(o",{"_index":2655,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["set(reforgans.map(o",{"_index":2634,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["set(selectedorgans.map(o",{"_index":2652,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setlistresults",{"_index":2130,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["setlistresults(@payload('listresults",{"_index":2161,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["setlistresults(listresults",{"_index":2145,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["setreferenceorgans",{"_index":2574,"title":{},"body":{"injectables/SceneState.html":{}}}],["setreferenceorgans(@payload('referenceorgans",{"_index":2615,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setreferenceorgans(referenceorgans",{"_index":2587,"title":{},"body":{"injectables/SceneState.html":{}}}],["setrootelement",{"_index":411,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["setrootelement(el",{"_index":414,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["sets",{"_index":295,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{}}}],["setscene",{"_index":2575,"title":{},"body":{"injectables/SceneState.html":{}}}],["setscene(@payload('scene",{"_index":2616,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setscene(scene",{"_index":2591,"title":{},"body":{"injectables/SceneState.html":{}}}],["setselectedreferenceorgans",{"_index":2576,"title":{},"body":{"injectables/SceneState.html":{}}}],["setselectedreferenceorgans(@payload('selectedreferenceorgans",{"_index":2614,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setselectedreferenceorgans(selectedreferenceorgans",{"_index":2594,"title":{},"body":{"injectables/SceneState.html":{}}}],["settheme",{"_index":2731,"title":{},"body":{"injectables/ThemingService.html":{}}}],["settheme(theme",{"_index":2749,"title":{},"body":{"injectables/ThemingService.html":{}}}],["settimeout",{"_index":2069,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["setting",{"_index":2712,"title":{},"body":{"modules/StoreModule.html":{}}}],["settings",{"_index":1730,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{}}}],["settreemodel",{"_index":2378,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["settreemodel(treemodel",{"_index":2398,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["setup",{"_index":3154,"title":{},"body":{"changelog.html":{}}}],["sex",{"_index":1044,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["sexes",{"_index":3267,"title":{},"body":{"changelog.html":{}}}],["shadow",{"_index":1056,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["shall",{"_index":3609,"title":{},"body":{"license.html":{}}}],["shared",{"_index":66,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"modules/OntologyTreeModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["shared/analytics",{"_index":141,"title":{},"body":{"interfaces/AppOptions.html":{},"modules/CoreModule.html":{}}}],["shared/components/checkbox/checkbox.module",{"_index":1782,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["shared/components/drawer/drawer.module",{"_index":80,"title":{},"body":{"modules/AppModule.html":{}}}],["shared/components/drawer/drawer/drawer.component",{"_index":173,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["shared/components/dropdown/dropdown.module",{"_index":1783,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["shared/components/dual",{"_index":81,"title":{},"body":{"modules/AppModule.html":{},"modules/FiltersContentModule.html":{}}}],["shared/components/spinner",{"_index":84,"title":{},"body":{"modules/AppModule.html":{}}}],["shared/components/thumbnail",{"_index":1451,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["shared/components/viewer/viewer.module",{"_index":87,"title":{},"body":{"modules/AppModule.html":{}}}],["shared/src/lib/components/body",{"_index":151,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["shared/web",{"_index":479,"title":{},"body":{"components/AppWebComponent.html":{}}}],["sharereplay",{"_index":148,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["sharing",{"_index":1075,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["shortest",{"_index":3501,"title":{},"body":{"dependencies.html":{}}}],["show",{"_index":1544,"title":{},"body":{"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["showing",{"_index":3292,"title":{},"body":{"changelog.html":{}}}],["shown",{"_index":1630,"title":{},"body":{"components/DualSliderComponent.html":{},"changelog.html":{}}}],["shows",{"_index":3076,"title":{},"body":{"changelog.html":{}}}],["side",{"_index":921,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["sides",{"_index":3268,"title":{},"body":{"changelog.html":{}}}],["significant",{"_index":3147,"title":{},"body":{"changelog.html":{}}}],["simple",{"_index":3099,"title":{},"body":{"changelog.html":{}}}],["simplechanges",{"_index":1603,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["simplifies",{"_index":3153,"title":{},"body":{"changelog.html":{}}}],["single",{"_index":2208,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["site",{"_index":1860,"title":{},"body":{"components/HeaderComponent.html":{},"components/ViewerComponent.html":{}}}],["sites",{"_index":3083,"title":{},"body":{"changelog.html":{}}}],["sizable",{"_index":3232,"title":{},"body":{"changelog.html":{}}}],["size",{"_index":904,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["skin",{"_index":1270,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["skin.svg",{"_index":1271,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["skipself",{"_index":999,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["slide",{"_index":2828,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slideinhorizontaldropdown",{"_index":1496,"title":{},"body":{"components/DropdownComponent.html":{}}}],["slideinhorizontalslider",{"_index":1707,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider",{"_index":1545,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"dependencies.html":{}}}],["slider's",{"_index":1612,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider'},{'name",{"_index":527,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["slider.component",{"_index":1725,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["slider.component.html",{"_index":1548,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.scss",{"_index":1547,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts",{"_index":1543,"title":{},"body":{"components/DualSliderComponent.html":{},"coverage.html":{}}}],["slider.component.ts:122",{"_index":1604,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:136",{"_index":1619,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:152",{"_index":1606,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:165",{"_index":1587,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:184",{"_index":1623,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:201",{"_index":1621,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:212",{"_index":1600,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:226",{"_index":1617,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:23",{"_index":1640,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:243",{"_index":1611,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:29",{"_index":1636,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:34",{"_index":1575,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:39",{"_index":1579,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:44",{"_index":1577,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:49",{"_index":1582,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:54",{"_index":1629,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:59",{"_index":1632,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:64",{"_index":1631,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:69",{"_index":1626,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:74",{"_index":1625,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:79",{"_index":1642,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:90",{"_index":1633,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:95",{"_index":1571,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.detached",{"_index":1709,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.module",{"_index":83,"title":{},"body":{"modules/AppModule.html":{},"modules/FiltersContentModule.html":{}}}],["slider.module.ts",{"_index":1721,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["slider.wrapper",{"_index":1701,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider/dual",{"_index":82,"title":{},"body":{"modules/AppModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"coverage.html":{}}}],["slidervaluechanged",{"_index":1563,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slidesoffsetafter",{"_index":2803,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slidesoffsetbefore",{"_index":2801,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slidesperview",{"_index":2804,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slightly",{"_index":3057,"title":{},"body":{"changelog.html":{}}}],["slow",{"_index":3165,"title":{},"body":{"changelog.html":{}}}],["small",{"_index":1272,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["snackbar",{"_index":257,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["snackbar.dismiss",{"_index":288,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["snapshot",{"_index":1168,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["software",{"_index":3550,"title":{},"body":{"index.html":{},"license.html":{}}}],["solid",{"_index":1525,"title":{},"body":{"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["solved",{"_index":3226,"title":{},"body":{"changelog.html":{}}}],["sometimes",{"_index":3283,"title":{},"body":{"changelog.html":{}}}],["soon",{"_index":3021,"title":{},"body":{"changelog.html":{}}}],["sop",{"_index":3161,"title":{},"body":{"changelog.html":{}}}],["sortby",{"_index":2155,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{}}}],["sortby(searchresults",{"_index":2336,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortby(topblocks",{"_index":2184,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["sortbysynonymresult",{"_index":2281,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortbysynonymresult(this",{"_index":2310,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortlexically",{"_index":2282,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortlexically(this",{"_index":2314,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sorts",{"_index":2312,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["source",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["source.getcelltypetermoccurences().pipe(take(1)).subscribe(celltypetermsfulldata",{"_index":1175,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["source.getontologytermoccurences().pipe(take(1)).subscribe(ontologytermsfulldata",{"_index":1174,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["source.pipe",{"_index":1085,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["source.service",{"_index":1010,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["source.service.ts",{"_index":1299,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["source.service.ts:10",{"_index":2967,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.service.ts:18",{"_index":2969,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.service.ts:20",{"_index":1311,"title":{},"body":{"injectables/DelegateDataSourceService.html":{}}}],["source.service.ts:23",{"_index":2972,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.worker",{"_index":2978,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.worker.ts",{"_index":3399,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["source/data",{"_index":1009,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["source/worker",{"_index":2960,"title":{},"body":{"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["sources",{"_index":494,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{}}}],["sources.includes(msg.source",{"_index":2222,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["space",{"_index":1441,"title":{},"body":{"components/DonorCardComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["spacebetween",{"_index":2805,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["sparc",{"_index":3157,"title":{},"body":{"changelog.html":{}}}],["spatialscenenode",{"_index":1032,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["spec",{"_index":3063,"title":{},"body":{"changelog.html":{}}}],["specific",{"_index":989,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["specified",{"_index":2220,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["specifying",{"_index":2202,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["speed",{"_index":3233,"title":{},"body":{"changelog.html":{}}}],["spinner",{"_index":231,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{}}}],["spinneractive",{"_index":233,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["spinneroverlaycomponent",{"_index":541,"title":{"components/SpinnerOverlayComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["spinneroverlaymodule",{"_index":16,"title":{"modules/SpinnerOverlayModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules.html":{},"overview.html":{}}}],["spinning",{"_index":3344,"title":{},"body":{"changelog.html":{}}}],["spleen",{"_index":1273,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["spleen.svg",{"_index":1274,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["sprint",{"_index":3185,"title":{},"body":{"changelog.html":{}}}],["stage",{"_index":3213,"title":{},"body":{"changelog.html":{}}}],["staging",{"_index":3032,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["standalone",{"_index":3222,"title":{},"body":{"changelog.html":{}}}],["standard",{"_index":3272,"title":{},"body":{"changelog.html":{}}}],["standards",{"_index":3348,"title":{},"body":{"changelog.html":{}}}],["star2",{"_index":3554,"title":{},"body":{"index.html":{}}}],["start",{"_index":840,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["start?.expanded",{"_index":954,"title":{},"body":{"components/ContentComponent.html":{}}}],["start?.opened",{"_index":953,"title":{},"body":{"components/ContentComponent.html":{}}}],["startdrawers",{"_index":863,"title":{},"body":{"components/ContainerComponent.html":{}}}],["startdrawers.length",{"_index":867,"title":{},"body":{"components/ContainerComponent.html":{}}}],["startdrawers[0",{"_index":871,"title":{},"body":{"components/ContainerComponent.html":{}}}],["started",{"_index":2989,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{"changelog.html":{}}}],["startexpanded",{"_index":952,"title":{},"body":{"components/ContentComponent.html":{}}}],["starts",{"_index":3384,"title":{},"body":{"changelog.html":{}}}],["startup",{"_index":1210,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["startwith",{"_index":827,"title":{},"body":{"components/ContainerComponent.html":{},"components/OntologySearchComponent.html":{}}}],["stat",{"_index":2550,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["stat.count",{"_index":2548,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["stat.label",{"_index":2549,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["state",{"_index":236,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/typealiases.html":{}}}],["state('closed",{"_index":2009,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('collapsed",{"_index":2014,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('extended",{"_index":2018,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('false",{"_index":930,"title":{},"body":{"components/ContentComponent.html":{}}}],["state('full",{"_index":2019,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('half",{"_index":2015,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('open",{"_index":2008,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('true",{"_index":932,"title":{},"body":{"components/ContentComponent.html":{}}}],["state.nodes[state.root",{"_index":2403,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["statechange",{"_index":2040,"title":{},"body":{"classes/InitializationState.html":{}}}],["statements",{"_index":3386,"title":{},"body":{"coverage.html":{}}}],["staterepository",{"_index":670,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["states",{"_index":914,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["states.every(state",{"_index":1066,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["static",{"_index":190,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySelectionComponent.html":{},"injectables/ThemingService.html":{}}}],["stats",{"_index":2483,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["status",{"_index":1138,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{}}}],["stay",{"_index":3382,"title":{},"body":{"changelog.html":{}}}],["step",{"_index":1673,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["still",{"_index":1798,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"changelog.html":{}}}],["stomach",{"_index":1275,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["stomach.svg",{"_index":1276,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["store",{"_index":351,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"modules/StoreModule.html":{}}}],["store/store.module",{"_index":1012,"title":{},"body":{"modules/CoreModule.html":{}}}],["storemodule",{"_index":994,"title":{"modules/StoreModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/StoreModule.html":{},"modules.html":{},"overview.html":{}}}],["stories",{"_index":3337,"title":{},"body":{"changelog.html":{}}}],["strange",{"_index":2702,"title":{},"body":{"modules/StoreModule.html":{}}}],["stream",{"_index":3527,"title":{},"body":{"dependencies.html":{}}}],["streaming",{"_index":3525,"title":{},"body":{"dependencies.html":{}}}],["string",{"_index":127,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{}}}],["stroke",{"_index":629,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["structure",{"_index":3192,"title":{},"body":{"changelog.html":{}}}],["structures",{"_index":359,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["style",{"_index":925,"title":{},"body":{"components/ContentComponent.html":{},"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["style.margin",{"_index":893,"title":{},"body":{"components/ContentComponent.html":{}}}],["styled",{"_index":1882,"title":{},"body":{"components/HeaderComponent.html":{}}}],["styles",{"_index":556,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["styles.getpropertyvalue(property",{"_index":2063,"title":{},"body":{"classes/InitializationState.html":{}}}],["styleurls",{"_index":185,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["styling",{"_index":3096,"title":{},"body":{"changelog.html":{}}}],["sub",{"_index":181,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["subject",{"_index":679,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["subject.next(dataquerystate.completed",{"_index":1071,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sublicense",{"_index":3600,"title":{},"body":{"license.html":{}}}],["subscribe",{"_index":2188,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["subscription",{"_index":817,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["subscriptions",{"_index":766,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["substantial",{"_index":3611,"title":{},"body":{"license.html":{}}}],["successful",{"_index":1925,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["such",{"_index":1592,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["suffix",{"_index":2387,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["super",{"_index":1159,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["super(configstore",{"_index":495,"title":{},"body":{"components/AppWebComponent.html":{}}}],["super(globalconfig",{"_index":2974,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["super._createcontainer",{"_index":439,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["super.ngxsoninit",{"_index":2164,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["support",{"_index":2997,"title":{},"body":{"changelog.html":{},"modules.html":{}}}],["svg",{"_index":1219,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules.html":{}}}],["swiper",{"_index":2808,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"dependencies.html":{}}}],["swiper.use([navigation",{"_index":2858,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiper/angular",{"_index":2854,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiper/core",{"_index":2855,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiper/types",{"_index":2831,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["swipermodule",{"_index":2853,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiperoptions",{"_index":2799,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["switch",{"_index":937,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["switched",{"_index":3239,"title":{},"body":{"changelog.html":{}}}],["switchmap",{"_index":1040,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{}}}],["switchmap(query",{"_index":1086,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["switchmap(value",{"_index":2333,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sync",{"_index":3129,"title":{},"body":{"changelog.html":{}}}],["syncexpanded(other",{"_index":2105,"title":{},"body":{"classes/InitializationState.html":{}}}],["syncs",{"_index":2102,"title":{},"body":{"classes/InitializationState.html":{}}}],["synonym",{"_index":2386,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["synonyms",{"_index":2313,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["t",{"_index":1083,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["tab",{"_index":388,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["table",{"_index":3444,"title":{},"body":{"coverage.html":{}}}],["tables",{"_index":3048,"title":{},"body":{"changelog.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":3443,"title":{},"body":{"coverage.html":{}}}],["tagging",{"_index":3270,"title":{},"body":{"changelog.html":{}}}],["take",{"_index":1041,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["take(1",{"_index":2639,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["takewhile",{"_index":2197,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["tap",{"_index":1042,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["tap(next",{"_index":1087,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tap(organs",{"_index":2640,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["tap(results",{"_index":2186,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tap(scene",{"_index":2669,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["target",{"_index":1594,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["technologies",{"_index":1052,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["technology",{"_index":1130,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{}}}],["technologyfilter",{"_index":1146,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["technologyfilterdata",{"_index":1131,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["technologyfilterquerystatus",{"_index":1101,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["technologyfilters",{"_index":1736,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["telemetry",{"_index":3123,"title":{},"body":{"changelog.html":{}}}],["tells",{"_index":609,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["template",{"_index":449,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["templateurl",{"_index":183,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["term",{"_index":1119,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["termdata",{"_index":2444,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["terms",{"_index":1106,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySelectionComponent.html":{}}}],["test",{"_index":1064,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["testing",{"_index":1062,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["text",{"_index":1404,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["theme",{"_index":95,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["thememode",{"_index":242,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["themes",{"_index":3025,"title":{},"body":{"changelog.html":{}}}],["theming",{"_index":255,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["theming.initialize(el",{"_index":262,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["theming.service",{"_index":2722,"title":{},"body":{"modules/ThemingModule.html":{}}}],["themingmodule",{"_index":995,"title":{"modules/ThemingModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/ThemingModule.html":{},"modules.html":{},"overview.html":{}}}],["themingservice",{"_index":159,"title":{"injectables/ThemingService.html":{}},"body":{"interfaces/AppOptions.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"coverage.html":{},"overview.html":{}}}],["themingservice.initialize",{"_index":2723,"title":{},"body":{"modules/ThemingModule.html":{}}}],["themselves",{"_index":2813,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["thick",{"_index":1283,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["thick.svg",{"_index":1284,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["thin",{"_index":1285,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"miscellaneous/variables.html":{}}}],["thin.svg",{"_index":1286,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["things",{"_index":2168,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this._aggregatedataquerystatus$.next(dataquerystate.completed",{"_index":1162,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._aggregatedataquerystatus$.next(dataquerystate.running",{"_index":1188,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._aggregatedataquerystatus$.pipe(distinct",{"_index":1140,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._celltypetermoccurencesdataquerystatus$.next(dataquerystate.completed",{"_index":1164,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._celltypetermoccurencesdataquerystatus$.next(dataquerystate.running",{"_index":1194,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._celltypetermoccurencesdataquerystatus$.pipe(distinct",{"_index":1144,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._containerelement",{"_index":440,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this._expanded",{"_index":2032,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._measuredmargin",{"_index":2061,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._measuredwidth",{"_index":2051,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._ontologytermoccurencesdataquerystatus$.next(dataquerystate.completed",{"_index":1163,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._ontologytermoccurencesdataquerystatus$.next(dataquerystate.running",{"_index":1191,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._ontologytermoccurencesdataquerystatus$.pipe(distinct",{"_index":1142,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._opened",{"_index":2028,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._position",{"_index":2024,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._providerfilterquerystatus$.next(dataquerystate.completed",{"_index":1167,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._providerfilterquerystatus$.next(dataquerystate.running",{"_index":1201,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._providerfilterquerystatus$.pipe(distinct",{"_index":1149,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._scenedataquerystatus$.next(dataquerystate.completed",{"_index":1165,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._scenedataquerystatus$.next(dataquerystate.running",{"_index":1197,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._scenedataquerystatus$.pipe(distinct",{"_index":1145,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._technologyfilterquerystatus$.next(dataquerystate.completed",{"_index":1166,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._technologyfilterquerystatus$.next(dataquerystate.running",{"_index":1199,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._technologyfilterquerystatus$.pipe(distinct",{"_index":1147,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._tissueblockdataquerystatus$.next(dataquerystate.completed",{"_index":1161,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._tissueblockdataquerystatus$.next(dataquerystate.running",{"_index":1185,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._tissueblockdataquerystatus$.pipe(distinct",{"_index":1139,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.aggregatedata",{"_index":1117,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.aggregatedataquerystatus",{"_index":1152,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.animationsenabled",{"_index":943,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.appendtoroot",{"_index":431,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.applyfilters.emit(this.filters",{"_index":1761,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.applythemeclass(theme",{"_index":2763,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.applythemeclass(this.gettheme",{"_index":2766,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.applythemeclass(this.theme",{"_index":2762,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.atscrollbottom",{"_index":2547,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.attached",{"_index":422,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.bodyui.bounds",{"_index":337,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.bodyui.rotation",{"_index":335,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.bodyui.rotationx",{"_index":336,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.bodyui.target",{"_index":333,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.cdr.markforcheck",{"_index":856,"title":{},"body":{"components/ContainerComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["this.celltypeselectionlabel",{"_index":365,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.celltypetermoccurencesdata",{"_index":1125,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.celltypetermoccurencesdataquerystatus",{"_index":1154,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.celltypeterms",{"_index":281,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.celltypetreemodel",{"_index":283,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.channel",{"_index":847,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.asobservable",{"_index":2229,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.closed",{"_index":2231,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.complete",{"_index":2234,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.next",{"_index":2210,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.sendmessage",{"_index":853,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["this.checked.emit(this.selected",{"_index":1363,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.closeiframeviewer",{"_index":391,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.colorassignments",{"_index":2172,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.colorassignments.assigncolor(node['@id",{"_index":2625,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.colorassignments.assigncolor(result.tissueblock.spatialentityid",{"_index":2162,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.colorassignments.colorassignments",{"_index":2175,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.colorassignments.unassigncolor(result.tissueblock.spatialentityid",{"_index":2163,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.consentservice.consent",{"_index":290,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.content",{"_index":858,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content1.changes.pipe(startwith(null)).subscribe",{"_index":857,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content1.first",{"_index":844,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content1.length",{"_index":846,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content2.first",{"_index":845,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.contentsvisible",{"_index":1685,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.createselectionlabel(ontologyselection",{"_index":364,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.ctx.patchstate",{"_index":735,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.data.querystatus$.pipe",{"_index":234,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.data.updatefilter",{"_index":360,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.dataservice.getreferenceorgans",{"_index":2646,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.dataservice.getreferenceorgans().pipe",{"_index":2631,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.datasource.getcelltypetreemodel().pipe(sharereplay(1",{"_index":284,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.datasource.getontologytreemodel().pipe(sharereplay(1",{"_index":280,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.datastate",{"_index":2170,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.datastate.scenedata",{"_index":2644,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.datastate.tissueblockdata",{"_index":2174,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.datastate.updatefilter",{"_index":2624,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.defaulttheme",{"_index":2760,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.deferred",{"_index":2002,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.drawer",{"_index":2918,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["this.drawer.position",{"_index":2916,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["this.drawers",{"_index":940,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.drawers.changes.pipe(startwith(null)).subscribe",{"_index":851,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.drawers.toarray",{"_index":862,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.element",{"_index":2765,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.element.nativeelement",{"_index":2052,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.expanded",{"_index":1364,"title":{},"body":{"components/DonorCardComponent.html":{},"classes/InitializationState.html":{}}}],["this.expandedchange.emit(this.expanded",{"_index":2094,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.expandedstate",{"_index":2075,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.expandedstate2",{"_index":2045,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.faded",{"_index":958,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.filter$.pipe(querydata",{"_index":1112,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.filteredresults",{"_index":2330,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.filters",{"_index":1755,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["this.filterschange.emit(filters",{"_index":1811,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["this.filterschange.emit(this.filters",{"_index":1759,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.filtersvisible",{"_index":1810,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["this.forcedunassignment.asobservable",{"_index":711,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.forcedunassignment.next",{"_index":726,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.formatlabel(node.label",{"_index":2423,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.formcontrol.reset",{"_index":2348,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.formcontrol.valuechanges",{"_index":2329,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.ga.event('expanded_toggled",{"_index":1365,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.ga.event('filter_added",{"_index":617,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["this.ga.event('filter_removed",{"_index":620,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["this.ga.event('filter_update",{"_index":1756,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.ga.event('filters_applied",{"_index":1760,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.ga.event('filters_reset",{"_index":1763,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.ga.event('link_clicked",{"_index":1366,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.ga.event('list_result_selected",{"_index":2537,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.ga.event('search",{"_index":2344,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.ga.event('selected_toggled",{"_index":1360,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.ga.event('selection_change",{"_index":1492,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.ga.event('slider_range_change",{"_index":1687,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.getarguments(definition",{"_index":1941,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.getindexofmatch(label",{"_index":2428,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.getindexofmatch(node.label",{"_index":2422,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.getmessages().pipe(filter(msg",{"_index":2219,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.getmethodname(definition",{"_index":1938,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.getstate().filter",{"_index":1182,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.getworkerurl(true",{"_index":2975,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["this.globalconfig.getoption('header",{"_index":244,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('homeurl",{"_index":245,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('logindisabled",{"_index":248,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('logotooltip",{"_index":246,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('theme",{"_index":241,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.snapshot.hubmaptoken",{"_index":400,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.handlemessage(msg",{"_index":850,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.highvalue",{"_index":1665,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.initialized",{"_index":2001,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initialized.set",{"_index":2068,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initialized.valueof",{"_index":2076,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initialized.wait",{"_index":2098,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initializesliderpopover",{"_index":1686,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.injector",{"_index":106,"title":{},"body":{"modules/AppModule.html":{},"injectables/ThemingService.html":{}}}],["this.injector.get(colorassignmentstate",{"_index":2173,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.injector.get(datastate",{"_index":2171,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.injector.get(listresultsstate",{"_index":2629,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.issliderinitialized",{"_index":1683,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.isslideropen",{"_index":1684,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.label}:${lowvalue}:${highvalue",{"_index":1689,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.label}:${value",{"_index":1493,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.leftmargin",{"_index":950,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.linkclick.emit(url",{"_index":1367,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.linkclicked.emit(link",{"_index":2542,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.listresultdeselected.next(result",{"_index":2541,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.listresults",{"_index":2628,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresults.highlightednodeid",{"_index":2647,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresults.highlightnode(node['@id",{"_index":2626,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresults.unhighlightnode",{"_index":2627,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresultselected.next(result",{"_index":2540,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.loading",{"_index":2948,"title":{},"body":{"components/ViewerComponent.html":{}}}],["this.locator.prepareexternalurl('0",{"_index":2981,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["this.lookup(nodes",{"_index":2414,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.lowvalue",{"_index":1663,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.margin2",{"_index":2048,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.measuredmargin",{"_index":2047,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.measuredwidth",{"_index":2099,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.messages",{"_index":2228,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.messages.pipe(filter(msg",{"_index":2216,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.nextbuttonid",{"_index":2820,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["this.nextmessageid",{"_index":2211,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.nodes$.pipe",{"_index":2412,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.ontologysearchservice.settreemodel(this.treemodel",{"_index":2464,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["this.ontologyselectionlabel",{"_index":363,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.ontologyservice.filter(value",{"_index":2334,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.ontologytermoccurencesdata",{"_index":1122,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.ontologytermoccurencesdataquerystatus",{"_index":1153,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.ontologyterms",{"_index":272,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.ontologytreemodel",{"_index":279,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.opened",{"_index":2073,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.openedchange.emit(this.opened",{"_index":2090,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.openedstate",{"_index":2074,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.options",{"_index":1667,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.options.ceil",{"_index":1677,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.options.floor",{"_index":1676,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.optionschanged",{"_index":1659,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.optionsvisible",{"_index":1491,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.original.children.length",{"_index":1856,"title":{},"body":{"classes/FlatNode.html":{}}}],["this.original.label",{"_index":1855,"title":{},"body":{"classes/FlatNode.html":{}}}],["this.overlayref",{"_index":1655,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.overlayref.detach",{"_index":1682,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.overlayref.dispose",{"_index":1678,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.patchstate",{"_index":1179,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.position",{"_index":2023,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.prevbuttonid",{"_index":2818,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["this.providerfilterdata",{"_index":1136,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.providerfilterquerystatus",{"_index":1157,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.registericonimpl(definition",{"_index":1928,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.registericonimpl(safedef",{"_index":1923,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.registry",{"_index":1932,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.removebox",{"_index":1812,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["this.resetview",{"_index":331,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.resolve",{"_index":1974,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.resultlabel",{"_index":2539,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.rightmargin",{"_index":951,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.rootelement",{"_index":424,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.appendchild(this._containerelement",{"_index":441,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.removechild(this._containerelement",{"_index":423,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.style.display",{"_index":425,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.style.height",{"_index":429,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.style.position",{"_index":427,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.safeurl",{"_index":2947,"title":{},"body":{"components/ViewerComponent.html":{}}}],["this.scenedata",{"_index":1128,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.scenedataquerystatus",{"_index":1155,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.selected",{"_index":1359,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.selected.emit(node",{"_index":2347,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.selectedreferenceorgans",{"_index":2645,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.selection",{"_index":616,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["this.selection.filter(selection",{"_index":619,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["this.selectionchange.emit(this.selection",{"_index":621,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{}}}],["this.selectionchange.emit(value",{"_index":1494,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.selectionlabel",{"_index":366,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.sendtoggle",{"_index":2077,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.setlistresults(results",{"_index":2187,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.setreferenceorgans(organs",{"_index":2641,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.setscene(scene",{"_index":2670,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.setselectedreferenceorgans(organs.filter(organ",{"_index":2642,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.settheme(this.defaulttheme",{"_index":2764,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.snackbar.openfromcomponent(trackingpopupcomponent",{"_index":286,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.snapshot",{"_index":715,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.snapshot.colorpalette.concat",{"_index":720,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.sortbysynonymresult",{"_index":2337,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.sortlexically",{"_index":2338,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.source",{"_index":2212,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.source.getaggregateresults(filter",{"_index":1189,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getcelltypetermoccurences(filter",{"_index":1195,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getdatasettechnologynames",{"_index":1200,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getontologytermoccurences(filter",{"_index":1192,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getprovidernames",{"_index":1202,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getscene(filter",{"_index":1198,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.gettissueblockresults(filter",{"_index":1186,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.state$.pipe(pluck('colorassignments",{"_index":712,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.state$.pipe(pluck('colorassignmentslist",{"_index":713,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.state$.pipe(pluck('filter",{"_index":1110,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.state$.pipe(pluck('highlightedid",{"_index":2598,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.state$.pipe(pluck('highlightednodeid",{"_index":2150,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.state$.pipe(pluck('listresults",{"_index":2152,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.state$.pipe(pluck('referenceorgans",{"_index":2600,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.state$.pipe(pluck('scene",{"_index":2602,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.state$.pipe(pluck('selectedreferenceorgans",{"_index":2604,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.statechange.emit",{"_index":2100,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.subscriptions.add(channel.getmessagesfromsource(drawer).subscribe(msg",{"_index":2915,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["this.subscriptions.add(messages.subscribe(msg",{"_index":936,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.subscriptions.add(this.channel.getmessages().subscribe(msg",{"_index":849,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["this.subscriptions.unsubscribe",{"_index":859,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.syncexpanded(other",{"_index":2101,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.technologyfilterdata",{"_index":1132,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.technologyfilterquerystatus",{"_index":1156,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.theme",{"_index":2761,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.thememode$.next('dark",{"_index":304,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$.next('light",{"_index":305,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$.next(e.matches",{"_index":310,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$.next(this.islighttheme",{"_index":347,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$]).subscribe",{"_index":275,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.theming.gettheme().endswith('light",{"_index":227,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.theming.settheme(`${theme",{"_index":277,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.tissueblock.label",{"_index":1362,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.tissueblockdata",{"_index":1113,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.tissueblockdataquerystatus",{"_index":1151,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.tissuesections.filter(section",{"_index":2882,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["this.toggle(coercebooleanproperty(value",{"_index":2030,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggle(false",{"_index":2071,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggle(true",{"_index":2070,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggleexpanded(coercebooleanproperty(value",{"_index":2034,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggleexpanded(false",{"_index":2083,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggleexpanded(true",{"_index":2080,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.tree.expandandselect(ontologynode",{"_index":2465,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["this.treemodel",{"_index":2411,"title":{},"body":{"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["this.treemodel$.next(treemodel",{"_index":2410,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.treemodel$.pipe(map(state",{"_index":2400,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.treemodel?.nodes",{"_index":2432,"title":{},"body":{"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["this.uid",{"_index":2833,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["this.updatefaded",{"_index":942,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.updatemargin(position",{"_index":948,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.updateurl",{"_index":2946,"title":{},"body":{"components/ViewerComponent.html":{}}}],["this.url",{"_index":385,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.validatedrawers",{"_index":852,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.valuerange",{"_index":1669,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.valuerange[0",{"_index":1670,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.valuerange[1",{"_index":1672,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.vieweropen",{"_index":386,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.width",{"_index":2046,"title":{},"body":{"classes/InitializationState.html":{}}}],["those",{"_index":2214,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["thread",{"_index":3654,"title":{},"body":{"miscellaneous/variables.html":{}}}],["three",{"_index":645,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["through",{"_index":3285,"title":{},"body":{"changelog.html":{}}}],["throw",{"_index":492,"title":{},"body":{"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"modules/CoreModule.html":{}}}],["throwduplicatedrawerserror",{"_index":3434,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["throwduplicatedrawerserror('end",{"_index":870,"title":{},"body":{"components/ContainerComponent.html":{}}}],["throwduplicatedrawerserror('start",{"_index":868,"title":{},"body":{"components/ContainerComponent.html":{}}}],["throwduplicatedrawerserror(position",{"_index":839,"title":{},"body":{"components/ContainerComponent.html":{},"miscellaneous/functions.html":{}}}],["thrown",{"_index":838,"title":{},"body":{"components/ContainerComponent.html":{}}}],["throws",{"_index":834,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/ThemingService.html":{}}}],["thumbnail",{"_index":544,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["thumbnailcarouselcomponent",{"_index":543,"title":{"components/ThumbnailCarouselComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["thumbnailcarouselmodule",{"_index":1448,"title":{"modules/ThumbnailCarouselModule.html":{}},"body":{"modules/DonorCardModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules.html":{},"overview.html":{}}}],["thumbnails",{"_index":2779,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["thymus",{"_index":1277,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["thymus.svg",{"_index":1278,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["tick",{"_index":2886,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tied",{"_index":3194,"title":{},"body":{"changelog.html":{}}}],["tiff",{"_index":3294,"title":{},"body":{"changelog.html":{}}}],["time",{"_index":593,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["timing",{"_index":965,"title":{},"body":{"components/ContentComponent.html":{}}}],["tissue",{"_index":547,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["tissueblock",{"_index":1327,"title":{},"body":{"components/DonorCardComponent.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tissueblock.description",{"_index":1374,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblock.donor.description",{"_index":1370,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblock.donor.label",{"_index":1369,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblock.label",{"_index":1373,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblockdata",{"_index":1111,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tissueblockdata(filter",{"_index":1184,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tissueblockdataquerystatus",{"_index":1091,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tissueblockresult",{"_index":1033,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/ListResult.html":{}}}],["tissueblocks",{"_index":2179,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tissues",{"_index":2869,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"changelog.html":{}}}],["tissuesection",{"_index":2880,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesectionexists",{"_index":2864,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesectionexists(sectionnumber",{"_index":2876,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesectionresult",{"_index":2867,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesections",{"_index":2865,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesections]=\"tissueblock.sections",{"_index":1376,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissuesectionviscomponent",{"_index":546,"title":{"components/TissueSectionVisComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["tissuesectionvismodule",{"_index":1449,"title":{"modules/TissueSectionVisModule.html":{}},"body":{"modules/DonorCardModule.html":{},"modules/TissueSectionVisModule.html":{},"modules.html":{},"overview.html":{}}}],["title",{"_index":1405,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["tmc",{"_index":1051,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["toggle",{"_index":551,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["toggle(opened",{"_index":2072,"title":{},"body":{"classes/InitializationState.html":{}}}],["togglebuttoncomponent",{"_index":550,"title":{"components/ToggleButtonComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["toggled",{"_index":944,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["toggleexpanded(expanded",{"_index":2086,"title":{},"body":{"classes/InitializationState.html":{}}}],["toggleexpansion",{"_index":1325,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["togglefiltervisible",{"_index":1792,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["toggleoptions",{"_index":1473,"title":{},"body":{"components/DropdownComponent.html":{}}}],["toggles",{"_index":344,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{}}}],["togglescheme",{"_index":346,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["togglesliderpopover",{"_index":1564,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["token",{"_index":398,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["token.length",{"_index":401,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["tool",{"_index":3223,"title":{},"body":{"changelog.html":{}}}],["toolbar",{"_index":2952,"title":{},"body":{"components/ViewerComponent.html":{}}}],["top",{"_index":1403,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["topblocks",{"_index":2177,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["topblocks.push",{"_index":2181,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tort",{"_index":3630,"title":{},"body":{"license.html":{}}}],["total",{"_index":2872,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["totaltissuesections",{"_index":2866,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["totaltissuesections]=\"tissueblock.sectioncount",{"_index":1375,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["touch",{"_index":879,"title":{},"body":{"components/ContainerComponent.html":{},"components/DualSliderComponent.html":{}}}],["track",{"_index":195,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["tracking/telemetry",{"_index":3137,"title":{},"body":{"changelog.html":{}}}],["trackingpopupcomponent",{"_index":139,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["trackingpopupmodule",{"_index":64,"title":{},"body":{"modules/AppModule.html":{}}}],["tracks",{"_index":2320,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["transform",{"_index":1509,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{}}}],["transition",{"_index":926,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["transition('closed",{"_index":2010,"title":{},"body":{"classes/InitializationState.html":{}}}],["transition('false",{"_index":933,"title":{},"body":{"components/ContentComponent.html":{}}}],["translatey",{"_index":1530,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["transparency",{"_index":3224,"title":{},"body":{"changelog.html":{}}}],["transparent",{"_index":1393,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["travisci",{"_index":3242,"title":{},"body":{"changelog.html":{}}}],["tree",{"_index":443,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["tree'},{'name",{"_index":538,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["tree.component",{"_index":2463,"title":{},"body":{"components/OntologySelectionComponent.html":{},"modules/OntologyTreeModule.html":{}}}],["tree.component.ts",{"_index":3422,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["tree.module",{"_index":2267,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{}}}],["tree.module.ts",{"_index":2476,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["tree/ontology",{"_index":2266,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["treemodel",{"_index":2373,"title":{},"body":{"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["trigger",{"_index":927,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["trigger('expandcollapse",{"_index":2013,"title":{},"body":{"classes/InitializationState.html":{}}}],["trigger('fadeinout",{"_index":929,"title":{},"body":{"components/ContentComponent.html":{}}}],["trigger('openclose",{"_index":2007,"title":{},"body":{"classes/InitializationState.html":{}}}],["triggered",{"_index":2309,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["true",{"_index":210,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/ThemingModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["try",{"_index":1942,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{}}}],["ts",{"_index":3532,"title":{},"body":{"dependencies.html":{}}}],["tslib",{"_index":3535,"title":{},"body":{"dependencies.html":{}}}],["tube",{"_index":1240,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["tuned",{"_index":3383,"title":{},"body":{"changelog.html":{}}}],["tuple",{"_index":860,"title":{},"body":{"components/ContainerComponent.html":{}}}],["turn",{"_index":3211,"title":{},"body":{"changelog.html":{}}}],["turned",{"_index":3197,"title":{},"body":{"changelog.html":{}}}],["turning",{"_index":3195,"title":{},"body":{"changelog.html":{}}}],["tutorial",{"_index":3112,"title":{},"body":{"changelog.html":{}}}],["two",{"_index":3304,"title":{},"body":{"changelog.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["typealiases",{"_index":3638,"title":{"miscellaneous/typealiases.html":{}},"body":{}}],["typeof",{"_index":484,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/OntologySearchComponent.html":{}}}],["types",{"_index":977,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["types/lru",{"_index":3473,"title":{},"body":{"dependencies.html":{}}}],["typescript",{"_index":436,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["typing",{"_index":3354,"title":{},"body":{"changelog.html":{}}}],["ufl",{"_index":3190,"title":{},"body":{"changelog.html":{}}}],["ui",{"_index":2606,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"index.html":{}}}],["ui.component",{"_index":153,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ui.netlify.app",{"_index":3557,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/organ",{"_index":3567,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/rui",{"_index":3564,"title":{},"body":{"index.html":{}}}],["ui/body",{"_index":152,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ui/organ",{"_index":3566,"title":{},"body":{"index.html":{}}}],["ui/rui",{"_index":3565,"title":{},"body":{"index.html":{}}}],["uid",{"_index":2784,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["uievent",{"_index":2528,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["unassigncolor",{"_index":742,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["unassigncolor(@payload('key",{"_index":736,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["unassigncolor(key",{"_index":747,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["unchecked",{"_index":610,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["undefined",{"_index":357,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/OntologySelection.html":{}}}],["under",{"_index":1221,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["underline",{"_index":1507,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["unhighlightnode",{"_index":2131,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["unique",{"_index":2190,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["university",{"_index":3575,"title":{},"body":{"index.html":{}}}],["unknown",{"_index":481,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersContentComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["unless",{"_index":1350,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["unlike",{"_index":1211,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{}}}],["unnecessary",{"_index":3125,"title":{},"body":{"changelog.html":{}}}],["unselect",{"_index":3167,"title":{},"body":{"changelog.html":{}}}],["unset",{"_index":2924,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["until",{"_index":1637,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["unused",{"_index":2798,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["up",{"_index":792,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["update",{"_index":350,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["updated",{"_index":592,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["updatefaded",{"_index":889,"title":{},"body":{"components/ContentComponent.html":{}}}],["updatefilter",{"_index":1734,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["updatefilter(@payload('filter",{"_index":1177,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["updatefilter(value",{"_index":1751,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["updatemargin",{"_index":890,"title":{},"body":{"components/ContentComponent.html":{}}}],["updatemargin(position",{"_index":915,"title":{},"body":{"components/ContentComponent.html":{}}}],["updates",{"_index":913,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["updateurl",{"_index":2933,"title":{},"body":{"components/ViewerComponent.html":{}}}],["upgraded",{"_index":3290,"title":{},"body":{"changelog.html":{}}}],["upgrades",{"_index":3357,"title":{},"body":{"changelog.html":{}}}],["upgrading",{"_index":3140,"title":{},"body":{"changelog.html":{}}}],["upload",{"_index":3221,"title":{},"body":{"changelog.html":{}}}],["upper",{"_index":1581,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["ureter",{"_index":1279,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["url",{"_index":212,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["url('./data",{"_index":2977,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["url.createobjecturl(codeblob",{"_index":2987,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["url?.startswith(domain",{"_index":383,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["urls",{"_index":1918,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["use",{"_index":1353,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"license.html":{}}}],["used",{"_index":193,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["useexisting",{"_index":97,"title":{},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{}}}],["useful",{"_index":836,"title":{},"body":{"components/ContainerComponent.html":{}}}],["user",{"_index":298,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{},"index.html":{}}}],["user/os",{"_index":3117,"title":{},"body":{"changelog.html":{}}}],["useremoteapi",{"_index":459,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["users",{"_index":3371,"title":{},"body":{"changelog.html":{}}}],["uses",{"_index":349,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["usevalue",{"_index":93,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{},"modules/ThemingModule.html":{}}}],["using",{"_index":2814,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["uterus",{"_index":1280,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["uterus.svg",{"_index":1281,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["utilities",{"_index":3122,"title":{},"body":{"changelog.html":{}}}],["uuid",{"_index":3536,"title":{},"body":{"dependencies.html":{}}}],["v1.1",{"_index":3049,"title":{},"body":{"changelog.html":{}}}],["v1.5.0",{"_index":3210,"title":{},"body":{"changelog.html":{}}}],["v1.7",{"_index":3052,"title":{},"body":{"changelog.html":{}}}],["v1.7.0",{"_index":3041,"title":{},"body":{"changelog.html":{}}}],["v1.8.0",{"_index":2998,"title":{},"body":{"changelog.html":{}}}],["val",{"_index":483,"title":{},"body":{"components/AppWebComponent.html":{}}}],["val.every(isstring",{"_index":487,"title":{},"body":{"components/AppWebComponent.html":{}}}],["validatedrawers",{"_index":770,"title":{},"body":{"components/ContainerComponent.html":{}}}],["validates",{"_index":798,"title":{},"body":{"components/ContainerComponent.html":{}}}],["validation",{"_index":2321,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["value",{"_index":418,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["value.tolowercase",{"_index":2415,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["valuechanges",{"_index":2328,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["valuechanges.pipe",{"_index":2331,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["valueof",{"_index":1970,"title":{},"body":{"classes/InitializationState.html":{}}}],["valuerange",{"_index":1565,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["values",{"_index":976,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["var",{"_index":509,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["variable",{"_index":223,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{},"coverage.html":{}}}],["variables",{"_index":3644,"title":{"miscellaneous/variables.html":{}},"body":{"miscellaneous/variables.html":{}}}],["vasculature",{"_index":1282,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["version",{"_index":3064,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["very",{"_index":3280,"title":{},"body":{"changelog.html":{}}}],["via",{"_index":3107,"title":{},"body":{"changelog.html":{}}}],["video",{"_index":3141,"title":{},"body":{"changelog.html":{}}}],["view",{"_index":1426,"title":{},"body":{"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["viewchild",{"_index":133,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["viewchild('bodyui",{"_index":189,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["viewchild('popover",{"_index":1634,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["viewchild(cdkportal",{"_index":1639,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["viewchild(ontologytreecomponent",{"_index":2461,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["viewchildren",{"_index":826,"title":{},"body":{"components/ContainerComponent.html":{}}}],["viewchildren(contentcomponent",{"_index":811,"title":{},"body":{"components/ContainerComponent.html":{}}}],["viewer",{"_index":216,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["viewer.component",{"_index":2959,"title":{},"body":{"modules/ViewerModule.html":{}}}],["viewer.component.html",{"_index":2930,"title":{},"body":{"components/ViewerComponent.html":{}}}],["viewer.component.scss",{"_index":2929,"title":{},"body":{"components/ViewerComponent.html":{}}}],["viewercomponent",{"_index":553,"title":{"components/ViewerComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"coverage.html":{},"overview.html":{}}}],["viewermodule",{"_index":17,"title":{"modules/ViewerModule.html":{}},"body":{"modules/AppModule.html":{},"modules/ViewerModule.html":{},"modules.html":{},"overview.html":{}}}],["vieweropen",{"_index":224,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["viewport",{"_index":2531,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["views",{"_index":3132,"title":{},"body":{"changelog.html":{}}}],["virtual",{"_index":2485,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["vis",{"_index":2861,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis'},{'name",{"_index":549,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["vis.component",{"_index":2892,"title":{},"body":{"modules/TissueSectionVisModule.html":{}}}],["vis.component.html",{"_index":2863,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.scss",{"_index":2862,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts",{"_index":2860,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"coverage.html":{}}}],["vis.component.ts:12",{"_index":2875,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts:15",{"_index":2871,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts:18",{"_index":2868,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts:21",{"_index":2877,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.module",{"_index":1456,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["vis.module.ts",{"_index":2891,"title":{},"body":{"modules/TissueSectionVisModule.html":{}}}],["vis/tissue",{"_index":1455,"title":{},"body":{"modules/DonorCardModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"coverage.html":{}}}],["visibility",{"_index":1624,"title":{},"body":{"components/DualSliderComponent.html":{},"components/SpinnerOverlayComponent.html":{}}}],["visibility_off",{"_index":1291,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["visibility_on",{"_index":1289,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["visible",{"_index":1490,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{}}}],["visited",{"_index":2847,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["visual",{"_index":3379,"title":{},"body":{"changelog.html":{}}}],["visualization",{"_index":3159,"title":{},"body":{"changelog.html":{}}}],["vitessce",{"_index":3291,"title":{},"body":{"changelog.html":{}}}],["void",{"_index":34,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{}}}],["vs",{"_index":3109,"title":{},"body":{"changelog.html":{}}}],["vu",{"_index":3378,"title":{},"body":{"changelog.html":{}}}],["w",{"_index":1431,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["wait",{"_index":1972,"title":{},"body":{"classes/InitializationState.html":{}}}],["waits",{"_index":2095,"title":{},"body":{"classes/InitializationState.html":{}}}],["warning",{"_index":3314,"title":{},"body":{"changelog.html":{}}}],["warranties",{"_index":3616,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":3613,"title":{},"body":{"license.html":{}}}],["watchoverflow",{"_index":2806,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["way",{"_index":2533,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["wc",{"_index":448,"title":{},"body":{"components/AppWebComponent.html":{}}}],["wc'},{'name",{"_index":512,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["web",{"_index":89,"title":{},"body":{"modules/AppModule.html":{},"components/AppWebComponent.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["webcomponent",{"_index":3108,"title":{},"body":{"changelog.html":{}}}],["webcomponents/webcomponentsjs",{"_index":3476,"title":{},"body":{"dependencies.html":{}}}],["webkit",{"_index":877,"title":{},"body":{"components/ContainerComponent.html":{}}}],["webpages",{"_index":3068,"title":{},"body":{"changelog.html":{}}}],["website",{"_index":3552,"title":{},"body":{"index.html":{}}}],["week",{"_index":3385,"title":{},"body":{"changelog.html":{}}}],["weight",{"_index":639,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["well",{"_index":2484,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["whenever",{"_index":229,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"miscellaneous/functions.html":{}}}],["whether",{"_index":205,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"license.html":{}}}],["white",{"_index":630,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["whole",{"_index":3381,"title":{},"body":{"changelog.html":{}}}],["whose",{"_index":2292,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["width",{"_index":646,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["widths",{"_index":2103,"title":{},"body":{"classes/InitializationState.html":{}}}],["window",{"_index":220,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["window.matchmedia",{"_index":294,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["window.matchmedia('(prefers",{"_index":300,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["window.open(url",{"_index":389,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["within",{"_index":2449,"title":{},"body":{"components/OntologySelectionComponent.html":{},"changelog.html":{}}}],["without",{"_index":813,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"license.html":{}}}],["work",{"_index":2816,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["workaround",{"_index":2113,"title":{},"body":{"classes/InitializationState.html":{}}}],["worker",{"_index":1306,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["worker(url",{"_index":2976,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["workerccfdatabasedatasourceservice",{"_index":2961,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["workerdatasourceservice",{"_index":1305,"title":{"injectables/WorkerDataSourceService.html":{}},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["workflows",{"_index":3244,"title":{},"body":{"changelog.html":{}}}],["working",{"_index":3058,"title":{},"body":{"changelog.html":{}}}],["works",{"_index":3261,"title":{},"body":{"changelog.html":{}}}],["wrap",{"_index":644,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["wrapped",{"_index":810,"title":{},"body":{"components/ContainerComponent.html":{}}}],["wrapper",{"_index":1501,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["wrapper/container",{"_index":1706,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["wrapping",{"_index":814,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{}}}],["x",{"_index":338,"title":{},"body":{"interfaces/AppOptions.html":{},"components/TissueSectionVisComponent.html":{}}}],["y",{"_index":340,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ResultsBrowserComponent.html":{}}}],["yes",{"_index":2298,"title":{},"body":{"components/OntologySearchComponent.html":{},"miscellaneous/functions.html":{}}}],["youtube",{"_index":3085,"title":{},"body":{"changelog.html":{}}}],["z",{"_index":342,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["zone.js",{"_index":3538,"title":{},"body":{"dependencies.html":{}}}],["zoom",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]}, - "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_declarations\n\n\n\ncluster_AppModule_imports\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nAppWebComponent\n\nAppWebComponent\n\nAppModule -->\n\nAppWebComponent->AppModule\n\n\n\n\n\nCoreModule\n\nCoreModule\n\nAppModule -->\n\nCoreModule->AppModule\n\n\n\n\n\nDrawerModule\n\nDrawerModule\n\nAppModule -->\n\nDrawerModule->AppModule\n\n\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nAppModule -->\n\nDualSliderModule->AppModule\n\n\n\n\n\nFiltersPopoverModule\n\nFiltersPopoverModule\n\nAppModule -->\n\nFiltersPopoverModule->AppModule\n\n\n\n\n\nOntologyExplorationModule\n\nOntologyExplorationModule\n\nAppModule -->\n\nOntologyExplorationModule->AppModule\n\n\n\n\n\nResultsBrowserModule\n\nResultsBrowserModule\n\nAppModule -->\n\nResultsBrowserModule->AppModule\n\n\n\n\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule\n\nAppModule -->\n\nSpinnerOverlayModule->AppModule\n\n\n\n\n\nViewerModule\n\nViewerModule\n\nAppModule -->\n\nViewerModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/app.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n AppComponent\n \n \n AppWebComponent\n \n \n \n \n EntryComponents\n \n \n AppComponent\n \n \n \n \n Imports\n \n \n CoreModule\n \n \n DrawerModule\n \n \n DualSliderModule\n \n \n FiltersPopoverModule\n \n \n OntologyExplorationModule\n \n \n ResultsBrowserModule\n \n \n SpinnerOverlayModule\n \n \n ViewerModule\n \n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngDoBootstrap\n \n \n \n \n \n \nngDoBootstrap()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/app.module.ts:55\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n \n\n\n \n import { AppRootOverlayContainer } from './core/services/app-root-overlay/app-root-overlay.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { createCustomElement } from '@angular/elements';\nimport { DoBootstrap, Injector, NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { BodyUiModule, InfoButtonModule, OrganSelectorModule, TrackingPopupModule } from 'ccf-shared';\n\nimport { DEFAULT_THEME } from '../app/core/services/theming/theming.service';\nimport { AppComponent } from './app.component';\nimport { CoreModule } from './core/core.module';\nimport { FiltersPopoverModule } from './modules/filters/filters-popover/filters-popover.module';\nimport { OntologyExplorationModule } from './modules/ontology-exploration/ontology-exploration.module';\nimport { ResultsBrowserModule } from './modules/results-browser/results-browser/results-browser.module';\nimport { DrawerModule } from './shared/components/drawer/drawer.module';\nimport { DualSliderModule } from './shared/components/dual-slider/dual-slider.module';\nimport { SpinnerOverlayModule } from './shared/components/spinner-overlay/spinner-overlay.module';\nimport { ViewerModule } from './shared/components/viewer/viewer.module';\nimport { AppWebComponent } from './app-web-component.component';\n\n\n@NgModule({\n imports: [\n BrowserAnimationsModule,\n BrowserModule,\n CoreModule,\n DrawerModule,\n FiltersPopoverModule,\n OntologyExplorationModule,\n MatIconModule,\n DualSliderModule,\n ResultsBrowserModule,\n SpinnerOverlayModule,\n BodyUiModule,\n OrganSelectorModule,\n InfoButtonModule,\n MatTooltipModule,\n ViewerModule,\n TrackingPopupModule,\n MatSnackBarModule\n ],\n declarations: [AppComponent, AppWebComponent],\n providers: [\n { provide: DEFAULT_THEME, useValue: 'hubmap-theme-light' },\n { provide: OverlayContainer, useExisting: AppRootOverlayContainer }\n ],\n entryComponents: [AppComponent]\n})\nexport class AppModule implements DoBootstrap {\n constructor(private readonly injector: Injector) { }\n\n ngDoBootstrap(): void {\n const appElement = createCustomElement(AppWebComponent, {\n injector: this.injector\n });\n\n customElements.define('ccf-eui', appElement);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/AppOptions.html":{"url":"interfaces/AppOptions.html","title":"interface - AppOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n AppOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/app.component.ts\n \n\n\n\n \n Extends\n \n \n CCFDatabaseOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n header\n \n \n \n Optional\n \n homeUrl\n \n \n \n Optional\n \n loginEnabled\n \n \n \n Optional\n \n logoTooltip\n \n \n \n Optional\n \n theme\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n header\n \n \n \n \n \n \n \n \n header: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n homeUrl\n \n \n \n \n \n \n \n \n homeUrl: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n loginEnabled\n \n \n \n \n \n \n \n \n loginEnabled: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n logoTooltip\n \n \n \n \n \n \n \n \n logoTooltip: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n theme\n \n \n \n \n \n \n \n \n theme: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Injector, OnInit, ViewChild } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { CCFDatabaseOptions, OntologyTreeModel } from 'ccf-database';\nimport { DataSourceService, GlobalConfigState, TrackingPopupComponent } from 'ccf-shared';\nimport { ConsentService } from 'ccf-shared/analytics';\nimport { combineLatest, Observable, ReplaySubject } from 'rxjs';\nimport { map, pluck, shareReplay } from 'rxjs/operators';\n\nimport { BodyUiComponent } from '../../../ccf-shared/src/lib/components/body-ui/body-ui.component';\nimport { environment } from '../environments/environment';\nimport { OntologySelection } from './core/models/ontology-selection';\nimport { AppRootOverlayContainer } from './core/services/app-root-overlay/app-root-overlay.service';\nimport { ThemingService } from './core/services/theming/theming.service';\nimport { DataQueryState, DataState } from './core/store/data/data.state';\nimport { ListResultsState } from './core/store/list-results/list-results.state';\nimport { SceneState } from './core/store/scene/scene.state';\nimport { FiltersPopoverComponent } from './modules/filters/filters-popover/filters-popover.component';\nimport { DrawerComponent } from './shared/components/drawer/drawer/drawer.component';\n\n\ninterface AppOptions extends CCFDatabaseOptions {\n theme?: string;\n header?: boolean;\n homeUrl?: string;\n logoTooltip?: string;\n loginEnabled?: boolean;\n}\n\n\n/**\n * This is the main angular component that all the other components branch off from.\n * It is in charge of the header and drawer components who have many sub-components.\n */\n@Component({\n selector: 'ccf-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AppComponent implements OnInit {\n @ViewChild('bodyUI', { static: false }) bodyUI: BodyUiComponent;\n\n /**\n * Used to keep track of the ontology label to be passed down to the\n * results-browser component.\n */\n ontologySelectionLabel = 'body';\n\n cellTypeSelectionLabel = 'cell';\n\n selectionLabel = 'body | cell';\n\n /**\n * Whether or not organ carousel is open\n */\n organListVisible = true;\n\n /**\n * Emitted url object from the results browser item\n */\n url = '';\n\n /**\n * Acceptable viewer domains (others will open in new window)\n */\n acceptableViewerDomains: string[] = environment.acceptableViewerDomains || [];\n\n /**\n * Variable to keep track of whether the viewer is open\n * or not\n */\n viewerOpen = false;\n\n get isLightTheme(): boolean {\n return this.theming.getTheme().endsWith('light');\n }\n\n /** Emits true whenever the overlay spinner should activate. */\n readonly spinnerActive$ = this.data.queryStatus$.pipe(\n map(state => state === DataQueryState.Running)\n );\n\n readonly ontologyTerms$: Observable;\n readonly ontologyTreeModel$: Observable;\n\n readonly cellTypeTerms$: Observable;\n readonly cellTypeTreeModel$: Observable;\n\n readonly theme$ = this.globalConfig.getOption('theme');\n readonly themeMode$ = new ReplaySubject(1);\n\n readonly header$ = this.globalConfig.getOption('header');\n readonly homeUrl$ = this.globalConfig.getOption('homeUrl');\n readonly logoTooltip$ = this.globalConfig.getOption('logoTooltip');\n readonly loginDisabled$ = this.globalConfig.getOption('loginDisabled');\n\n /**\n * Creates an instance of app component.\n *\n * @param data The data state.\n */\n constructor(\n el: ElementRef, injector: Injector,\n readonly data: DataState, readonly theming: ThemingService,\n readonly scene: SceneState, readonly listResultsState: ListResultsState,\n readonly consentService: ConsentService, readonly snackbar: MatSnackBar, overlay: AppRootOverlayContainer,\n readonly dataSource: DataSourceService, private readonly globalConfig: GlobalConfigState, cdr: ChangeDetectorRef\n ) {\n theming.initialize(el, injector);\n overlay.setRootElement(el);\n data.tissueBlockData$.subscribe();\n data.aggregateData$.subscribe();\n data.ontologyTermOccurencesData$.subscribe();\n data.cellTypeTermOccurencesData$.subscribe();\n data.sceneData$.subscribe();\n data.filter$.subscribe();\n data.technologyFilterData$.subscribe();\n data.providerFilterData$.subscribe();\n this.ontologyTerms$ = data.filter$.pipe(pluck('ontologyTerms'));\n\n combineLatest([this.theme$, this.themeMode$]).subscribe(\n ([theme, mode]) => {\n this.theming.setTheme(`${theme}-theme-${mode}`);\n cdr.markForCheck();\n }\n );\n\n this.ontologyTreeModel$ = this.dataSource.getOntologyTreeModel().pipe(shareReplay(1));\n this.cellTypeTerms$ = data.filter$.pipe(pluck('cellTypeTerms'));\n this.cellTypeTreeModel$ = this.dataSource.getCellTypeTreeModel().pipe(shareReplay(1));\n }\n\n ngOnInit(): void {\n const snackBar = this.snackbar.openFromComponent(TrackingPopupComponent, {\n data: {\n preClose: () => {\n snackBar.dismiss();\n }\n },\n duration: this.consentService.consent === 'not-set' ? Infinity : 3000\n });\n\n if (window.matchMedia) {\n // Sets initial theme according to user theme preference\n if (window.matchMedia('(prefers-color-scheme: dark)').matches) {\n this.themeMode$.next('dark');\n } else {\n this.themeMode$.next('light');\n }\n\n // Listens for changes in user theme preference\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', e => {\n this.themeMode$.next(e.matches ? 'dark' : 'light');\n });\n } else {\n this.themeMode$.next('light');\n }\n }\n\n /**\n * Resets the drawers and filter components to their default state.\n *\n * @param left The left drawer component gets passed in so we can call it's methods to control it's state\n * @param right The right drawer component gets passed in so we can call it's methods to control it's state\n * @param filterbox The filter's popover component gets passed in so we can control it's popover's state\n */\n reset(\n left: DrawerComponent,\n right: DrawerComponent,\n filterbox: FiltersPopoverComponent\n ): void {\n left.open();\n left.closeExpanded();\n right.open();\n right.closeExpanded();\n filterbox.removeBox();\n this.resetView();\n }\n\n resetView(): void {\n this.bodyUI.target = [0, 0, 0];\n this.bodyUI.rotation = 0;\n this.bodyUI.rotationX = 0;\n this.bodyUI.bounds = { x: 2.2, y: 2, z: 0.4 };\n }\n\n /**\n * Toggles scheme between light and dark mode\n */\n toggleScheme(): void {\n this.themeMode$.next(this.isLightTheme ? 'dark' : 'light');\n }\n\n /**\n * Captures changes in the ontologySelection and uses them to update the results-browser label\n * and the filter object in the data store.\n *\n * @param ontologySelection the list of currently selected organ nodes\n */\n ontologySelected(ontologySelection: OntologySelection[] | undefined, type: 'anatomical-structures' | 'cell-type'): void {\n if (ontologySelection) {\n if (type === 'anatomical-structures') {\n this.data.updateFilter({ ontologyTerms: ontologySelection.map(selection => selection.id) });\n this.ontologySelectionLabel = this.createSelectionLabel(ontologySelection);\n } else {\n this.data.updateFilter({ cellTypeTerms: ontologySelection.map(selection => selection.id) });\n this.cellTypeSelectionLabel = this.createSelectionLabel(ontologySelection);\n }\n if (this.ontologySelectionLabel && this.cellTypeSelectionLabel) {\n this.selectionLabel = `${this.ontologySelectionLabel} | ${this.cellTypeSelectionLabel}`;\n } else if (this.ontologySelectionLabel) {\n this.selectionLabel = `${this.ontologySelectionLabel}`;\n } else if (this.cellTypeSelectionLabel) {\n this.selectionLabel = `${this.cellTypeSelectionLabel}`;\n } else {\n this.selectionLabel = '';\n }\n if (ontologySelection[0] && ontologySelection[0].label === 'body') {\n this.resetView();\n }\n return;\n }\n\n this.data.updateFilter({ ontologyTerms: [], cellTypeTerms: [] });\n this.ontologySelectionLabel = '';\n this.cellTypeSelectionLabel = '';\n }\n\n /**\n * Creates selection label for the results-browser to display based on an\n * array of selected ontology nodes.\n */\n createSelectionLabel(ontolgySelection: OntologySelection[]): string {\n if (ontolgySelection.length === 0) {\n return '';\n }\n\n if (ontolgySelection.length === 1) {\n return ontolgySelection[0].label;\n }\n\n let selectionString = '';\n ontolgySelection.forEach((selection, index) => {\n selectionString += selection.label;\n\n // Don't add a comma if it's the last item in the array.\n if (index url?.startsWith(domain));\n if (isWhitelisted) {\n this.url = url;\n this.viewerOpen = !!url;\n } else {\n // Open link in new tab\n window.open(url, '_blank');\n this.closeiFrameViewer();\n }\n }\n\n /**\n * Function to easily close the iFrame viewer.\n */\n closeiFrameViewer(): void {\n this.viewerOpen = false;\n }\n\n /**\n * Gets login token\n */\n get loggedIn(): boolean {\n const token = this.globalConfig.snapshot.hubmapToken ?? '';\n return token.length > 0;\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/AppRootOverlayContainer.html":{"url":"injectables/AppRootOverlayContainer.html","title":"injectable - AppRootOverlayContainer","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n AppRootOverlayContainer\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts\n \n\n\n\n \n Extends\n \n \n OverlayContainer\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n attached\n \n \n Private\n rootElement\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Protected\n _createContainer\n \n \n Private\n appendToRoot\n \n \n setRootElement\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Protected\n _createContainer\n \n \n \n \n \n \n \n _createContainer()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:27\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n appendToRoot\n \n \n \n \n \n \n \n appendToRoot()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:32\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n setRootElement\n \n \n \n \n \n \nsetRootElement(el: ElementRef)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:13\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n el\n \n ElementRef\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n attached\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:11\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n rootElement\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:10\n \n \n\n\n \n \n\n\n \n\n\n \n import { OverlayContainer } from '@angular/cdk/overlay';\nimport { Injectable, ElementRef } from '@angular/core';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppRootOverlayContainer extends OverlayContainer {\n private rootElement: ElementRef;\n private attached = false;\n\n setRootElement(el: ElementRef): void {\n if (this.attached) {\n this.rootElement.nativeElement.removeChild(this._containerElement);\n this.attached = false;\n }\n\n this.rootElement = el;\n this.rootElement.nativeElement.style.display = 'block';\n this.rootElement.nativeElement.style.position = 'contents';\n this.rootElement.nativeElement.style.height = '100%';\n this.appendToRoot();\n }\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n protected _createContainer(): void {\n super._createContainer();\n this.appendToRoot();\n }\n\n private appendToRoot(): void {\n if (!this._containerElement || !this.rootElement) {\n return;\n }\n\n this.rootElement.nativeElement.appendChild(this._containerElement);\n this.attached = true;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/AppWebComponent.html":{"url":"components/AppWebComponent.html","title":"component - AppWebComponent","body":"\n \n\n\n\n\n\n Components\n \n AppWebComponent\n\n\n\n \n Info\n \n \n Source\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/app-web-component.component.ts\n\n\n\n\n \n Extends\n \n \n BaseWebComponent\n \n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-root-wc\n \n\n\n\n \n template\n \n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n initialized\n \n \n \n \n\n\n \n \n Inputs\n \n \n \n \n \n \n dataSources\n \n \n header\n \n \n homeUrl\n \n \n hubmapAssetUrl\n \n \n hubmapDataService\n \n \n hubmapDataUrl\n \n \n hubmapPortalUrl\n \n \n hubmapToken\n \n \n loginDisabled\n \n \n logoTooltip\n \n \n remoteApiEndpoint\n \n \n theme\n \n \n useRemoteApi\n \n \n \n \n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(configStore: GlobalConfigState, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:47\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n configStore\n \n \n GlobalConfigState\n \n \n \n No\n \n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n dataSources\n \n \n \n \n Type : string | string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:31\n \n \n \n \n \n \n \n \n \n header\n \n \n \n \n Type : string | boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:42\n \n \n \n \n \n \n \n \n \n homeUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:43\n \n \n \n \n \n \n \n \n \n hubmapAssetUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:35\n \n \n \n \n \n \n \n \n \n hubmapDataService\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:33\n \n \n \n \n \n \n \n \n \n hubmapDataUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:34\n \n \n \n \n \n \n \n \n \n hubmapPortalUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:37\n \n \n \n \n \n \n \n \n \n hubmapToken\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:36\n \n \n \n \n \n \n \n \n \n loginDisabled\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:45\n \n \n \n \n \n \n \n \n \n logoTooltip\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:44\n \n \n \n \n \n \n \n \n \n remoteApiEndpoint\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:40\n \n \n \n \n \n \n \n \n \n theme\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:41\n \n \n \n \n \n \n \n \n \n useRemoteApi\n \n \n \n \n Type : string | boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:39\n \n \n \n \n\n\n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n initialized\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:47\n \n \n\n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input } from '@angular/core';\nimport { GlobalConfigState } from 'ccf-shared';\nimport { BaseWebComponent, BUILTIN_PARSERS, GenericGlobalConfig } from 'ccf-shared/web-components';\n\nimport { environment } from '../environments/environment';\n\n\nfunction parseDataSources(value: unknown): string[] {\n const isString = (val: unknown): val is string => typeof val === 'string';\n const isStringArray = (val: unknown): val is string[] => Array.isArray(val) && val.every(isString);\n\n if (typeof value === 'string') {\n const json = BUILTIN_PARSERS.json(value);\n if (isStringArray(json)) {\n return json;\n }\n } else if (isStringArray(value)) {\n return value;\n }\n\n throw new Error('Invalid data sources');\n}\n\n\n@Component({\n selector: 'ccf-root-wc',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AppWebComponent extends BaseWebComponent {\n @Input() dataSources: string | string[];\n\n @Input() hubmapDataService: string;\n @Input() hubmapDataUrl: string;\n @Input() hubmapAssetUrl: string;\n @Input() hubmapToken: string;\n @Input() hubmapPortalUrl: string;\n\n @Input() useRemoteApi: string | boolean;\n @Input() remoteApiEndpoint: string;\n @Input() theme: string;\n @Input() header: string | boolean;\n @Input() homeUrl: string;\n @Input() logoTooltip: string;\n @Input() loginDisabled: boolean;\n\n initialized: boolean;\n\n constructor(\n configStore: GlobalConfigState,\n cdr: ChangeDetectorRef\n ) {\n super(configStore, cdr, {\n initialDelay: 10,\n\n initialConfig: {\n ...environment.dbOptions,\n ...globalThis['dbOptions'],\n ...environment.customization\n },\n parse: {\n dataSources: parseDataSources,\n useRemoteApi: BUILTIN_PARSERS.boolean,\n header: BUILTIN_PARSERS.boolean\n }\n });\n }\n}\n\n \n\n\n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'AppWebComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/CheckboxComponent.html":{"url":"components/CheckboxComponent.html","title":"component - CheckboxComponent","body":"\n \n\n\n\n\n\n Components\n \n CheckboxComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts\n\n\n\n \n Description\n \n \n Creates a labeled group of checkboxes and emits a current list of selections whenever a selection changes.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-checkbox\n \n\n \n styleUrls\n ./checkbox.component.scss\n \n\n\n\n \n templateUrl\n ./checkbox.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n filterOnChange\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n columns\n \n \n label\n \n \n options\n \n \n selection\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selectionChange\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:38\n \n \n\n \n \n Creates an instance of checkbox component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n columns\n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 3\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:33\n \n \n \n \n Number of columns\n\n \n \n \n \n \n \n \n \n \n label\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:18\n \n \n \n \n The label that describes the overall question the checkbox is asking\n\n \n \n \n \n \n \n \n \n \n options\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:23\n \n \n \n \n Used to generate the individual checkboxes and their individual labels\n\n \n \n \n \n \n \n \n \n \n selection\n \n \n \n \n Type : string[]\n\n \n \n \n \n Default value : []\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:28\n \n \n \n \n A list of the checkboxes the user has checked. To be updated any time a checkbox changes.\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selectionChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:38\n \n \n \n \n Any time a checkbox changes we emit that value so the parent component has that information\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n filterOnChange\n \n \n \n \n \n \nfilterOnChange(event: MatCheckboxChange, option: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:53\n \n \n\n\n \n \n This method captures checkbox events and decides whether to add or remove a filter selection based on the checked property\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n MatCheckboxChange\n \n\n \n No\n \n\n\n \n Event object from the checkbox that contains the boolean property 'checked'\n\n \n \n \n option\n \n string\n \n\n \n No\n \n\n\n \n Tells us which option was checked or unchecked\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n/**\n * Creates a labeled group of checkboxes and emits a current list of selections whenever a selection changes.\n */\n@Component({\n selector: 'ccf-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CheckboxComponent {\n /**\n * The label that describes the overall question the checkbox is asking\n */\n @Input() label: string;\n\n /**\n * Used to generate the individual checkboxes and their individual labels\n */\n @Input() options: string[];\n\n /**\n * A list of the checkboxes the user has checked. To be updated any time a checkbox changes.\n */\n @Input() selection: string[] = [];\n\n /**\n * Number of columns\n */\n @Input() columns = 3;\n\n /**\n * Any time a checkbox changes we emit that value so the parent component has that information\n */\n @Output() readonly selectionChange = new EventEmitter();\n\n /**\n * Creates an instance of checkbox component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * This method captures checkbox events and decides whether to add or remove a filter selection based on the checked property\n *\n * @param event Event object from the checkbox that contains the boolean property 'checked'\n * @param option Tells us which option was checked or unchecked\n */\n filterOnChange(event: MatCheckboxChange, option: string): void {\n const checked = event.checked;\n\n if (checked) {\n this.selection = [...this.selection, option];\n this.ga.event('filter_added', 'filter_checkbox', option);\n } else {\n this.selection = this.selection.filter(selection => selection !== option);\n this.ga.event('filter_removed', 'filter_checkbox', option);\n }\n\n this.selectionChange.emit(this.selection);\n }\n}\n\n \n\n \n \n {{ label }}\n\n \n \n \n {{ option }}\n \n \n \n\n\n \n\n \n \n ./checkbox.component.scss\n \n ::ng-deep .mat-checkbox.mat-accent {\n .mat-checkbox-checkmark-path {\n stroke: white !important;\n }\n\n .mat-checkbox-inner-container {\n margin-right: 1rem;\n }\n}\n\n.filter-label {\n margin-bottom: 0.5rem;\n font-weight: bold;\n}\n\n.options-container {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n &.three {\n .option {\n width: 33%;\n }\n }\n\n &.four {\n .option {\n width: 25%;\n }\n }\n}\n\n.option {\n color: #fafafa;\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ label }} {{ option }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'CheckboxComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CheckboxModule.html":{"url":"modules/CheckboxModule.html","title":"module - CheckboxModule","body":"\n \n\n\n\n\n Modules\n CheckboxModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CheckboxModule\n\n\n\ncluster_CheckboxModule_declarations\n\n\n\ncluster_CheckboxModule_exports\n\n\n\n\nCheckboxComponent\n\nCheckboxComponent\n\n\n\nCheckboxModule\n\nCheckboxModule\n\nCheckboxModule -->\n\nCheckboxComponent->CheckboxModule\n\n\n\n\n\nCheckboxComponent \n\nCheckboxComponent \n\nCheckboxComponent -->\n\nCheckboxModule->CheckboxComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/checkbox/checkbox.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n CheckboxComponent\n \n \n \n \n Exports\n \n \n CheckboxComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\n\nimport { CheckboxComponent } from './checkbox.component';\n\n\n@NgModule({\n imports: [CommonModule, MatCheckboxModule],\n declarations: [CheckboxComponent],\n exports: [CheckboxComponent]\n})\nexport class CheckboxModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/Color.html":{"url":"interfaces/Color.html","title":"interface - Color","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n Color\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n color\n \n \n \n \n rank\n \n \n \n \n rgba\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n color\n \n \n \n \n \n \n \n \n color: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rank\n \n \n \n \n \n \n \n \n rank: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rgba\n \n \n \n \n \n \n \n \n rgba: [number, number, number, number]\n\n \n \n\n\n \n \n Type : [number, number, number, number]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\nimport hexRgb from 'hex-rgb';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\n\n\nexport interface Color {\n color: string;\n rgba: [number, number, number, number];\n rank: number;\n}\n\nexport const DEFAULT_COLOR_PALETTE: Color[] = [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n});\n\nexport interface ColorAssignmentStateModel {\n colorPalette: Color[];\n colorsAvailable: Color[];\n colorAssignments: Record;\n colorAssignmentsList: { color: Color; key: string }[];\n}\n\n/**\n * Color Assignment State\n */\n@StateRepository()\n@State({\n name: 'colors',\n defaults: {\n colorPalette: DEFAULT_COLOR_PALETTE.concat(),\n colorsAvailable: DEFAULT_COLOR_PALETTE.concat(),\n colorAssignments: {},\n colorAssignmentsList: []\n }\n})\n@Injectable()\nexport class ColorAssignmentState extends NgxsImmutableDataRepository {\n private readonly forcedUnassignment = new Subject();\n\n readonly forcedUnassignment$ = this.forcedUnassignment.asObservable();\n readonly colorAssignments$ = this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged());\n readonly colorAssignmentsList$ = this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged());\n\n getColor(key: string): Immutable | undefined {\n const { colorAssignments } = this.snapshot;\n return colorAssignments[key];\n }\n\n @DataAction()\n assignColor(@Payload('key') key: string, @Payload('doReset') doReset = false): Immutable {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n if (doReset) {\n colorsAvailable = this.snapshot.colorPalette.concat();\n colorAssignmentsList = [];\n colorAssignments = {};\n }\n let color = colorAssignments[key];\n if (!color) {\n if (colorsAvailable.length > 0) {\n color = colorsAvailable[0];\n } else {\n color = colorAssignmentsList[colorAssignmentsList.length - 1].color;\n colorAssignmentsList = colorAssignmentsList.slice(0, -1);\n this.forcedUnassignment.next();\n }\n colorsAvailable = colorsAvailable.filter(c => c.color !== color.color);\n colorAssignmentsList = [{ color, key }].concat(colorAssignmentsList);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n return color;\n }\n\n @DataAction()\n unassignColor(@Payload('key') key: string): void {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n const color = colorAssignments[key];\n if (color) {\n colorsAvailable = [color].concat(colorsAvailable);\n colorAssignmentsList = colorAssignmentsList.filter(a => a.color.color !== color.color);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ColorAssignmentState.html":{"url":"injectables/ColorAssignmentState.html","title":"injectable - ColorAssignmentState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n ColorAssignmentState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n\n\n \n Description\n \n \n Color Assignment State\n\n \n\n \n Extends\n \n \n NgxsImmutableDataRepository\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n colorAssignments$\n \n \n Readonly\n colorAssignmentsList$\n \n \n Private\n Readonly\n forcedUnassignment\n \n \n Readonly\n forcedUnassignment$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n assignColor\n \n \n getColor\n \n \n unassignColor\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n assignColor\n \n \n \n \n \n \nassignColor(key: string, doReset)\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:69\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Default value\n \n \n \n \n key\n \n string\n \n\n \n No\n \n\n \n \n\n \n \n doReset\n \n \n\n \n No\n \n\n \n false\n \n\n \n \n \n \n \n \n \n Returns : Immutable\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n getColor\n \n \n \n \n \n \ngetColor(key: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:63\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Immutable | undefined\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n unassignColor\n \n \n \n \n \n \nunassignColor(key: string)\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:102\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n colorAssignments$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:60\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n colorAssignmentsList$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:61\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n Readonly\n forcedUnassignment\n \n \n \n \n \n \n Default value : new Subject()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:57\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n forcedUnassignment$\n \n \n \n \n \n \n Default value : this.forcedUnassignment.asObservable()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:59\n \n \n\n\n \n \n\n\n \n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\nimport hexRgb from 'hex-rgb';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\n\n\nexport interface Color {\n color: string;\n rgba: [number, number, number, number];\n rank: number;\n}\n\nexport const DEFAULT_COLOR_PALETTE: Color[] = [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n});\n\nexport interface ColorAssignmentStateModel {\n colorPalette: Color[];\n colorsAvailable: Color[];\n colorAssignments: Record;\n colorAssignmentsList: { color: Color; key: string }[];\n}\n\n/**\n * Color Assignment State\n */\n@StateRepository()\n@State({\n name: 'colors',\n defaults: {\n colorPalette: DEFAULT_COLOR_PALETTE.concat(),\n colorsAvailable: DEFAULT_COLOR_PALETTE.concat(),\n colorAssignments: {},\n colorAssignmentsList: []\n }\n})\n@Injectable()\nexport class ColorAssignmentState extends NgxsImmutableDataRepository {\n private readonly forcedUnassignment = new Subject();\n\n readonly forcedUnassignment$ = this.forcedUnassignment.asObservable();\n readonly colorAssignments$ = this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged());\n readonly colorAssignmentsList$ = this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged());\n\n getColor(key: string): Immutable | undefined {\n const { colorAssignments } = this.snapshot;\n return colorAssignments[key];\n }\n\n @DataAction()\n assignColor(@Payload('key') key: string, @Payload('doReset') doReset = false): Immutable {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n if (doReset) {\n colorsAvailable = this.snapshot.colorPalette.concat();\n colorAssignmentsList = [];\n colorAssignments = {};\n }\n let color = colorAssignments[key];\n if (!color) {\n if (colorsAvailable.length > 0) {\n color = colorsAvailable[0];\n } else {\n color = colorAssignmentsList[colorAssignmentsList.length - 1].color;\n colorAssignmentsList = colorAssignmentsList.slice(0, -1);\n this.forcedUnassignment.next();\n }\n colorsAvailable = colorsAvailable.filter(c => c.color !== color.color);\n colorAssignmentsList = [{ color, key }].concat(colorAssignmentsList);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n return color;\n }\n\n @DataAction()\n unassignColor(@Payload('key') key: string): void {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n const color = colorAssignments[key];\n if (color) {\n colorsAvailable = [color].concat(colorsAvailable);\n colorAssignmentsList = colorAssignmentsList.filter(a => a.color.color !== color.color);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ColorAssignmentStateModel.html":{"url":"interfaces/ColorAssignmentStateModel.html","title":"interface - ColorAssignmentStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ColorAssignmentStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n colorAssignments\n \n \n \n \n colorAssignmentsList\n \n \n \n \n colorPalette\n \n \n \n \n colorsAvailable\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n colorAssignments\n \n \n \n \n \n \n \n \n colorAssignments: Record\n\n \n \n\n\n \n \n Type : Record\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorAssignmentsList\n \n \n \n \n \n \n \n \n colorAssignmentsList: literal type[]\n\n \n \n\n\n \n \n Type : literal type[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorPalette\n \n \n \n \n \n \n \n \n colorPalette: Color[]\n\n \n \n\n\n \n \n Type : Color[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorsAvailable\n \n \n \n \n \n \n \n \n colorsAvailable: Color[]\n\n \n \n\n\n \n \n Type : Color[]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\nimport hexRgb from 'hex-rgb';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\n\n\nexport interface Color {\n color: string;\n rgba: [number, number, number, number];\n rank: number;\n}\n\nexport const DEFAULT_COLOR_PALETTE: Color[] = [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n});\n\nexport interface ColorAssignmentStateModel {\n colorPalette: Color[];\n colorsAvailable: Color[];\n colorAssignments: Record;\n colorAssignmentsList: { color: Color; key: string }[];\n}\n\n/**\n * Color Assignment State\n */\n@StateRepository()\n@State({\n name: 'colors',\n defaults: {\n colorPalette: DEFAULT_COLOR_PALETTE.concat(),\n colorsAvailable: DEFAULT_COLOR_PALETTE.concat(),\n colorAssignments: {},\n colorAssignmentsList: []\n }\n})\n@Injectable()\nexport class ColorAssignmentState extends NgxsImmutableDataRepository {\n private readonly forcedUnassignment = new Subject();\n\n readonly forcedUnassignment$ = this.forcedUnassignment.asObservable();\n readonly colorAssignments$ = this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged());\n readonly colorAssignmentsList$ = this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged());\n\n getColor(key: string): Immutable | undefined {\n const { colorAssignments } = this.snapshot;\n return colorAssignments[key];\n }\n\n @DataAction()\n assignColor(@Payload('key') key: string, @Payload('doReset') doReset = false): Immutable {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n if (doReset) {\n colorsAvailable = this.snapshot.colorPalette.concat();\n colorAssignmentsList = [];\n colorAssignments = {};\n }\n let color = colorAssignments[key];\n if (!color) {\n if (colorsAvailable.length > 0) {\n color = colorsAvailable[0];\n } else {\n color = colorAssignmentsList[colorAssignmentsList.length - 1].color;\n colorAssignmentsList = colorAssignmentsList.slice(0, -1);\n this.forcedUnassignment.next();\n }\n colorsAvailable = colorsAvailable.filter(c => c.color !== color.color);\n colorAssignmentsList = [{ color, key }].concat(colorAssignmentsList);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n return color;\n }\n\n @DataAction()\n unassignColor(@Payload('key') key: string): void {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n const color = colorAssignments[key];\n if (color) {\n colorsAvailable = [color].concat(colorsAvailable);\n colorAssignmentsList = colorAssignmentsList.filter(a => a.color.color !== color.color);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ContainerComponent.html":{"url":"components/ContainerComponent.html","title":"component - ContainerComponent","body":"\n \n\n\n\n\n\n Components\n \n ContainerComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n\n\n\n \n Description\n \n \n Main container for drawer components.\n\n \n\n\n \n Implements\n \n \n AfterViewInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n \n exportAs\n ccfDrawerContainer\n \n\n\n\n\n\n \n providers\n \n MessageService\n \n \n\n\n \n selector\n ccf-drawer-container\n \n\n \n styleUrls\n ./container.component.scss\n \n\n\n\n \n templateUrl\n ./container.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n channel\n \n \n Readonly\n className\n \n \n Private\n content1\n \n \n Private\n content2\n \n \n Private\n drawers\n \n \n Private\n subscriptions\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n handleMessage\n \n \n ngAfterViewInit\n \n \n ngOnDestroy\n \n \n Private\n validateDrawers\n \n \n \n \n\n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n content\n \n \n hasWrappedContent\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(messageService: MessageService, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:62\n \n \n\n \n \n Creates an instance of container component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n messageService\n \n \n MessageService\n \n \n \n No\n \n \n \n The service used to send event messages.\n\n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n The change detector reference.\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-drawer-container\"\n\n \n \n \n \n Default value : 'ccf-drawer-container'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:37\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n handleMessage\n \n \n \n \n \n \n \n handleMessage(_msg: Message)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:115\n \n \n\n\n \n \n Processes event messages.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n _msg\n \n Message\n \n\n \n No\n \n\n\n \n The event.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if change detection needs to be run.\n\n \n \n \n \n \n \n \n \n \n \n \n ngAfterViewInit\n \n \n \n \n \n \nngAfterViewInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:83\n \n \n\n\n \n \n Sets up all listeners after all content has been projected.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:105\n \n \n\n\n \n \n Cleans up all subscriptions.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n validateDrawers\n \n \n \n \n \n \n \n validateDrawers()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:124\n \n \n\n\n \n \n Validates the number of drawers and their positions.\n\n\n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n channel\n \n \n \n \n \n \n Type : MessageChannel\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:60\n \n \n\n \n \n The connected message channel.\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-drawer-container'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:37\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n content1\n \n \n \n \n \n \n Type : QueryList\n\n \n \n \n \n Decorators : \n \n \n @ContentChildren(ContentComponent, {descendants: true})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:45\n \n \n\n \n \n Content component if provided already wrapped.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n content2\n \n \n \n \n \n \n Type : QueryList\n\n \n \n \n \n Decorators : \n \n \n @ViewChildren(ContentComponent)\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:48\n \n \n\n \n \n Content component if provided without wrapping.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n drawers\n \n \n \n \n \n \n Type : QueryList\n\n \n \n \n \n Decorators : \n \n \n @ContentChildren(DrawerComponent, {descendants: true})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:41\n \n \n\n \n \n Drawer components in this container.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n subscriptions\n \n \n \n \n \n \n Default value : new Subscription()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:62\n \n \n\n \n \n All subscriptions managed by the container.\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n content\n \n \n\n \n \n getcontent()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:50\n \n \n \n \n Resolves the content component.\n\n\n \n Returns : ContentComponent\n\n \n \n \n\n \n \n \n \n \n \n \n hasWrappedContent\n \n \n\n \n \n gethasWrappedContent()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:55\n \n \n \n \n Whether the content was wrapped.\n\n\n \n Returns : boolean\n\n \n \n \n\n \n \n\n\n\n\n \n import {\n AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, HostBinding, OnDestroy, QueryList,\n ViewChildren,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { ContentComponent } from '../content/content.component';\nimport { DrawerComponent } from '../drawer/drawer.component';\nimport { Message, MessageChannel, MessageService } from '../messages';\n\n\n/**\n * Helper function for creating drawer errors.\n *\n * @param position The position of the drawer.\n * @throws {Error} Error with useful message is always thrown.\n */\nfunction throwDuplicateDrawersError(position: 'start' | 'end'): never {\n throw new Error(`Multiple drawers in position ${position}`);\n}\n\n\n/**\n * Main container for drawer components.\n */\n@Component({\n selector: 'ccf-drawer-container',\n exportAs: 'ccfDrawerContainer',\n templateUrl: './container.component.html',\n styleUrls: ['./container.component.scss'],\n providers: [MessageService],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ContainerComponent implements AfterViewInit, OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer-container';\n\n /** Drawer components in this container. */\n @ContentChildren(DrawerComponent, { descendants: true })\n private drawers: QueryList;\n\n /** Content component if provided already wrapped. */\n @ContentChildren(ContentComponent, { descendants: true })\n private content1: QueryList;\n /** Content component if provided without wrapping. */\n @ViewChildren(ContentComponent)\n private content2: QueryList;\n /** Resolves the content component. */\n private get content(): ContentComponent {\n return this.content1.first ?? this.content2.first;\n }\n\n /** Whether the content was wrapped. */\n get hasWrappedContent(): boolean {\n return this.content1.length !== 0;\n }\n\n /** The connected message channel. */\n private channel: MessageChannel;\n /** All subscriptions managed by the container. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of container component.\n *\n * @param messageService The service used to send event messages.\n * @param cdr The change detector reference.\n */\n constructor(messageService: MessageService,\n private cdr: ChangeDetectorRef) {\n this.channel = messageService.connect(this);\n this.subscriptions.add(this.channel.getMessages().subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /**\n * Sets up all listeners after all content has been projected.\n */\n ngAfterViewInit(): void {\n this.drawers.changes.pipe(startWith(null)).subscribe(() => {\n const drawers = this.validateDrawers();\n this.channel.sendMessage({\n type: 'drawer-containers-changed',\n drawers\n });\n this.cdr.markForCheck();\n });\n\n this.content1.changes.pipe(startWith(null)).subscribe(() => {\n this.channel.sendMessage({\n type: 'content-container-changed',\n content: this.content\n });\n this.cdr.markForCheck();\n });\n }\n\n /**\n * Cleans up all subscriptions.\n */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Processes event messages.\n *\n * @param _msg The event.\n * @returns true if change detection needs to be run.\n */\n private handleMessage(_msg: Message): boolean {\n return true;\n }\n\n /**\n * Validates the number of drawers and their positions.\n *\n * @returns A tuple containing the start and end drawers.\n */\n private validateDrawers(): [DrawerComponent | undefined, DrawerComponent | undefined] {\n const drawers = this.drawers.toArray();\n const startDrawers = drawers.filter(drawer => drawer.position === 'start');\n const endDrawers = drawers.filter(drawer => drawer.position === 'end');\n\n if (startDrawers.length > 1) {\n throwDuplicateDrawersError('start');\n }\n if (endDrawers.length > 1) {\n throwDuplicateDrawersError('end');\n }\n\n return [startDrawers[0], endDrawers[0]];\n }\n}\n\n \n\n \n \n\n\n\n \n\n\n \n\n \n \n ./container.component.scss\n \n :host {\n display: block;\n position: relative;\n z-index: 1;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ContainerComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ContentComponent.html":{"url":"components/ContentComponent.html","title":"component - ContentComponent","body":"\n \n\n\n\n\n\n Components\n \n ContentComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts\n\n\n\n \n Description\n \n \n Component wrapping and providing animations for center content.\n\n \n\n\n \n Implements\n \n \n OnDestroy\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-drawer-content\n \n\n \n styleUrls\n ./content.component.scss\n \n\n\n \n template\n \n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n animationsEnabled\n \n \n Readonly\n className\n \n \n Private\n drawers\n \n \n faded\n \n \n leftMargin\n \n \n rightMargin\n \n \n Private\n subscriptions\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n handleMessage\n \n \n ngOnDestroy\n \n \n Private\n updateFaded\n \n \n Private\n updateMargin\n \n \n \n \n\n\n\n \n \n HostBindings\n \n \n \n \n \n \n @fadeInOut\n \n \n class\n \n \n class.cff-drawer-content-animations\n \n \n style.margin-left.px\n \n \n style.margin-right.px\n \n \n \n \n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(messageService: MessageService, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:41\n \n \n\n \n \n Creates an instance of content component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n messageService\n \n \n MessageService\n \n \n \n No\n \n \n \n Service used to send and receive event messages.\n\n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n The change detector reference.\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n \n HostBindings \n \n \n \n \n \n @fadeInOut\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:36\n \n \n\n \n \n Whether the content is invisible.\n\n \n \n\n \n \n \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-drawer-content\"\n\n \n \n \n \n Default value : 'ccf-drawer-content'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:28\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n class.cff-drawer-content-animations\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:30\n \n \n\n \n \n Whether animations are enabled.\n\n \n \n\n \n \n \n \n \n \n \n \n style.margin-left.px\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:32\n \n \n\n \n \n Left margin size.\n\n \n \n\n \n \n \n \n \n \n \n \n style.margin-right.px\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:34\n \n \n\n \n \n Right margin size.\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n handleMessage\n \n \n \n \n \n \n \n handleMessage(msg: Message)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:70\n \n \n\n\n \n \n Process an event message.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n msg\n \n Message\n \n\n \n No\n \n\n\n \n The event.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if change detection needs to run.\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:60\n \n \n\n\n \n \n Cleans up all subscriptions.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n updateFaded\n \n \n \n \n \n \n \n updateFaded()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:116\n \n \n\n\n \n \n Checks and updates the faded state based on the drawer states.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n updateMargin\n \n \n \n \n \n \n \n updateMargin(position: \"start\" | \"end\", opened: boolean, width: number, margin: number)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:103\n \n \n\n\n \n \n Updates a margin.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n position\n \n \"start\" | \"end\"\n \n\n \n No\n \n\n\n \n Start (left) or end (right) margin.\n\n \n \n \n opened\n \n boolean\n \n\n \n No\n \n\n\n \n Whether the drawer is opened.\n\n \n \n \n width\n \n number\n \n\n \n No\n \n\n\n \n The width of the drawer if opened.\n\n \n \n \n margin\n \n number\n \n\n \n No\n \n\n\n \n The margin size.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n animationsEnabled\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Decorators : \n \n \n @HostBinding('class.cff-drawer-content-animations')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:30\n \n \n\n \n \n Whether animations are enabled.\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-drawer-content'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:28\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n drawers\n \n \n \n \n \n \n Type : DrawerComponent[]\n\n \n \n \n \n Default value : []\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:39\n \n \n\n \n \n References to the side drawers.\n\n \n \n\n \n \n \n \n \n \n \n \n faded\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Decorators : \n \n \n @HostBinding('@fadeInOut')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:36\n \n \n\n \n \n Whether the content is invisible.\n\n \n \n\n \n \n \n \n \n \n \n \n leftMargin\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Decorators : \n \n \n @HostBinding('style.margin-left.px')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:32\n \n \n\n \n \n Left margin size.\n\n \n \n\n \n \n \n \n \n \n \n \n rightMargin\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Decorators : \n \n \n @HostBinding('style.margin-right.px')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:34\n \n \n\n \n \n Right margin size.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n subscriptions\n \n \n \n \n \n \n Default value : new Subscription()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:41\n \n \n\n \n \n Subscriptions managed by this component.\n\n \n \n\n \n \n\n\n\n\n\n \n import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, OnDestroy } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { DrawerComponent } from '../drawer/drawer.component';\nimport { Message, MessageService } from '../messages';\n\n\n/**\n * Component wrapping and providing animations for center content.\n */\n@Component({\n selector: 'ccf-drawer-content',\n template: '',\n styleUrls: ['./content.component.scss'],\n animations: [\n trigger('fadeInOut', [\n state('false', style({ opacity: 1 })),\n state('true', style({ opacity: 0 })),\n\n transition('false true', animate('1s'))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ContentComponent implements OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer-content';\n /** Whether animations are enabled. */\n @HostBinding('class.cff-drawer-content-animations') animationsEnabled = false;\n /** Left margin size. */\n @HostBinding('style.margin-left.px') leftMargin = 0;\n /** Right margin size. */\n @HostBinding('style.margin-right.px') rightMargin = 0;\n /** Whether the content is invisible. */\n @HostBinding('@fadeInOut') faded = false;\n\n /** References to the side drawers. */\n private drawers: DrawerComponent[] = [];\n /** Subscriptions managed by this component. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of content component.\n *\n * @param messageService Service used to send and receive event messages.\n * @param cdr The change detector reference.\n */\n constructor(messageService: MessageService,\n cdr: ChangeDetectorRef) {\n const messages = messageService.connect(this).getMessages();\n this.subscriptions.add(messages.subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /** Cleans up all subscriptions. */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Process an event message.\n *\n * @param msg The event.\n * @returns true if change detection needs to run.\n */\n private handleMessage(msg: Message): boolean {\n switch (msg.payload.type) {\n case 'drawer-containers-changed':\n this.drawers = msg.payload.drawers as DrawerComponent[];\n this.updateFaded();\n return true;\n\n case 'drawer-initialized':\n this.animationsEnabled = true;\n return true;\n\n case 'drawer-toggled': {\n const position = (msg.source as DrawerComponent).position;\n const { opened, width, margin } = msg.payload;\n\n this.updateMargin(position, opened, width, margin);\n this.updateFaded();\n return true;\n }\n\n default:\n return false;\n }\n }\n\n /**\n * Updates a margin.\n *\n * @param position Start (left) or end (right) margin.\n * @param opened Whether the drawer is opened.\n * @param width The width of the drawer if opened.\n * @param margin The margin size.\n */\n private updateMargin(position: 'start' | 'end', opened: boolean,\n width: number, margin: number): void {\n const offset = opened ? width + margin : margin;\n if (position === 'start') {\n this.leftMargin = offset;\n } else {\n this.rightMargin = offset;\n }\n }\n\n /**\n * Checks and updates the faded state based on the drawer states.\n */\n private updateFaded(): void {\n const [start, end] = this.drawers;\n const startExpanded = start?.opened && start?.expanded;\n const endExpanded = end?.opened && end?.expanded;\n this.faded = startExpanded || endExpanded;\n }\n}\n\n \n\n\n \n \n ./content.component.scss\n \n :host {\n display: block;\n height: calc(100% - 5.5rem);\n z-index: 2;\n overflow: auto;\n\n &.cff-drawer-content-animations {\n transition: {\n duration: .5s;\n timing-function: ease-in-out;\n property: margin-left, margin-right;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ContentComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ContentContainerChanged.html":{"url":"interfaces/ContentContainerChanged.html","title":"interface - ContentContainerChanged","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ContentContainerChanged\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message sent when the content component changes.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n content\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n content\n \n \n \n \n \n \n \n \n content: \n\n \n \n\n\n\n\n\n\n\n \n \n A reference to the new content component.\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CoreModule.html":{"url":"modules/CoreModule.html","title":"module - CoreModule","body":"\n \n\n\n\n\n Modules\n CoreModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CoreModule\n\n\n\ncluster_CoreModule_imports\n\n\n\ncluster_CoreModule_exports\n\n\n\n\nHeaderModule\n\nHeaderModule\n\n\n\nCoreModule\n\nCoreModule\n\nCoreModule -->\n\nHeaderModule->CoreModule\n\n\n\n\n\nStoreModule\n\nStoreModule\n\nCoreModule -->\n\nStoreModule->CoreModule\n\n\n\n\n\nThemingModule\n\nThemingModule\n\nCoreModule -->\n\nThemingModule->CoreModule\n\n\n\n\n\nHeaderModule \n\nHeaderModule \n\nHeaderModule -->\n\nCoreModule->HeaderModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/core.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HeaderModule\n \n \n StoreModule\n \n \n ThemingModule\n \n \n \n \n Exports\n \n \n HeaderModule\n \n \n \n \n \n\n\n \n\n\n \n import { HttpClientModule } from '@angular/common/http';\nimport { NgModule, Optional, SkipSelf } from '@angular/core';\nimport { DataSourceService, MousePositionTrackerModule } from 'ccf-shared';\nimport { AnalyticsModule } from 'ccf-shared/analytics';\nimport { CcfApiConfiguration, CcfApiModule } from 'ccf-openapi/angular-client';\n\nimport { environment } from '../../environments/environment';\nimport { HeaderModule } from './header/header.module';\nimport { DelegateDataSourceService } from './services/data-source/data-source.service';\nimport { ThemingModule } from './services/theming/theming.module';\nimport { StoreModule } from './store/store.module';\n\n\n@NgModule({\n imports: [\n HttpClientModule,\n\n AnalyticsModule.forRoot({\n gaToken: environment.googleAnalyticsToken,\n appName: 'eui'\n }),\n MousePositionTrackerModule,\n\n CcfApiModule.forRoot(() => new CcfApiConfiguration({\n basePath: environment.dbOptions.remoteApiEndpoint\n })),\n\n HeaderModule,\n StoreModule,\n ThemingModule\n ],\n providers: [\n { provide: DataSourceService, useExisting: DelegateDataSourceService }\n ],\n exports: [HeaderModule]\n})\nexport class CoreModule {\n constructor(@Optional() @SkipSelf() core: CoreModule) {\n if (core) {\n throw new Error('The core module should only be imported once in the root module');\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DataStateModel.html":{"url":"interfaces/DataStateModel.html","title":"interface - DataStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DataStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n\n\n \n Description\n \n \n Store data state.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n filter\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n filter\n \n \n \n \n \n \n \n \n filter: Filter\n\n \n \n\n\n \n \n Type : Filter\n\n \n \n\n\n\n\n\n \n \n Current filter.\n\n \n \n \n \n \n \n\n\n \n import { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { bind } from 'bind-decorator';\nimport { AggregateResult, Filter, SpatialSceneNode, TissueBlockResult } from 'ccf-database';\nimport { DataSourceService } from 'ccf-shared';\nimport { combineLatest, ObservableInput, ObservedValueOf, OperatorFunction, ReplaySubject, Subject } from 'rxjs';\nimport { distinct, map, pluck, publishReplay, refCount, switchMap, take, tap } from 'rxjs/operators';\n\n\n\n/** Default values for filters. */\nexport const DEFAULT_FILTER: Filter = {\n sex: 'Both',\n ageRange: [1, 110],\n bmiRange: [13, 83],\n tmc: [],\n technologies: [],\n ontologyTerms: ['http://purl.obolibrary.org/obo/UBERON_0013702'],\n cellTypeTerms: ['http://purl.obolibrary.org/obo/CL_0000000']\n};\n\n/** Current state of data queries. */\n// eslint-disable-next-line no-shadow\nexport enum DataQueryState {\n /** One or more queries are running. */\n Running = 'running',\n /** All queries have completed. */\n Completed = 'completed'\n}\n\n/**\n * Helper for testing that all states in an array are `DataQueryState.Completed`.\n *\n * @param states The array of states to test.\n * @returns true if all values in the array is `Completed`.\n */\nfunction allCompleted(states: DataQueryState[]): boolean {\n return states.every(state => state === DataQueryState.Completed);\n}\n\n/**\n * Helper creating a function that sends a `DataQueryState.Completed` to\n * a subject whenever it is called.\n *\n * @param subject The subject to send completed messagess to.\n * @returns The function.\n */\nfunction sendCompletedTo(subject: Subject): () => void {\n return () => subject.next(DataQueryState.Completed);\n}\n\n/**\n * Helper operator that combines querying with sharing and replay functionality.\n *\n * @param query The data query function.\n * @param [next] An optional listener on the values emitted by the latest query.\n * @returns The combined pipe operator function.\n */\nfunction queryData>(\n query: (value: T, index: number) => O,\n next?: (value: ObservedValueOf) => void\n): OperatorFunction> {\n return source => source.pipe(\n switchMap(query),\n tap(next),\n publishReplay(1),\n refCount()\n );\n}\n\n\n/** Store data state. */\nexport interface DataStateModel {\n /** Current filter. */\n filter: Filter;\n}\n\n\n/**\n * Data state repository and service.\n */\n@StateRepository()\n@State({\n name: 'data',\n defaults: {\n filter: DEFAULT_FILTER\n }\n})\n@Injectable()\nexport class DataState extends NgxsDataRepository implements NgxsOnInit {\n /** Implementation subject for tissueBlockDataQueryStatus$. */\n private readonly _tissueBlockDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for aggregateDataQueryStatus$. */\n private readonly _aggregateDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for ontologyTermOccurencesDataQueryStatus$. */\n private readonly _ontologyTermOccurencesDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for cellTypeTermOccurencesDataQueryStatus$. */\n private readonly _cellTypeTermOccurencesDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for sceneDataQueryStatus$. */\n private readonly _sceneDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for technologyFilterQueryStatus$. */\n private readonly _technologyFilterQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for providerFilterQueryStatus$. */\n private readonly _providerFilterQueryStatus$ = new ReplaySubject(1);\n /** Keeping track of all ontology terms there is data for. */\n readonly ontologyTermsFullData$ = new ReplaySubject>(1);\n /** Keeping track of all cell type terms there is data for. */\n readonly cellTypeTermsFullData$ = new ReplaySubject>(1);\n\n /** Current filter. */\n readonly filter$ = this.state$.pipe(pluck('filter'));\n /** Latest tissue block query data. */\n readonly tissueBlockData$ = this.filter$.pipe(queryData(\n this.tissueBlockData, sendCompletedTo(this._tissueBlockDataQueryStatus$)\n ));\n /** Latest aggregate query data. */\n readonly aggregateData$ = this.filter$.pipe(queryData(\n this.aggregateData, sendCompletedTo(this._aggregateDataQueryStatus$)\n ));\n /** Latest ontology term occurences query data. */\n readonly ontologyTermOccurencesData$ = this.filter$.pipe(queryData(\n this.ontologyTermOccurencesData, sendCompletedTo(this._ontologyTermOccurencesDataQueryStatus$)\n ));\n /** Latest cell type term occurences query data. */\n readonly cellTypeTermOccurencesData$ = this.filter$.pipe(queryData(\n this.cellTypeTermOccurencesData, sendCompletedTo(this._cellTypeTermOccurencesDataQueryStatus$)\n ));\n /** Latest scene query data. */\n readonly sceneData$ = this.filter$.pipe(queryData(\n this.sceneData, sendCompletedTo(this._sceneDataQueryStatus$)\n ));\n /** Latest technology filter label query data. */\n readonly technologyFilterData$ = this.filter$.pipe(queryData(\n this.technologyFilterData, sendCompletedTo(this._technologyFilterQueryStatus$)\n ));\n /** Latest provider filter label query data. */\n readonly providerFilterData$ = this.filter$.pipe(queryData(\n this.providerFilterData, sendCompletedTo(this._providerFilterQueryStatus$)\n ));\n\n /** Current status of queries in the tissueBlockData$ observable. */\n readonly tissueBlockDataQueryStatus$ = this._tissueBlockDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the aggregateData$ observable. */\n readonly aggregateDataQueryStatus$ = this._aggregateDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the ontologyTermOccurrences$ observable. */\n readonly ontologyTermOccurencesDataQueryStatus$ = this._ontologyTermOccurencesDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the cellTypeTermOccurrences$ observable. */\n readonly cellTypeTermOccurencesDataQueryStatus$ = this._cellTypeTermOccurencesDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the sceneData$ observable. */\n readonly sceneDataQueryStatus$ = this._sceneDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the technologyFilter$ observable. */\n readonly technologyFilterQueryStatus$ = this._technologyFilterQueryStatus$.pipe(distinct());\n /** Current status of queries in the providerFilter$ observable. */\n readonly providerFilterQueryStatus$ = this._providerFilterQueryStatus$.pipe(distinct());\n\n /** Current status of all queries. */\n readonly queryStatus$ = combineLatest([\n this.tissueBlockDataQueryStatus$,\n this.aggregateDataQueryStatus$,\n this.ontologyTermOccurencesDataQueryStatus$,\n this.cellTypeTermOccurencesDataQueryStatus$,\n this.sceneDataQueryStatus$,\n this.technologyFilterQueryStatus$,\n this.providerFilterQueryStatus$\n ]).pipe(\n map(states => allCompleted(states) ? DataQueryState.Completed : DataQueryState.Running),\n distinct()\n );\n\n /**\n * Creates an instance of data state.\n *\n * @param source Data query service.\n */\n constructor(private readonly source: DataSourceService) {\n super();\n // Start everything in the completed state\n this._tissueBlockDataQueryStatus$.next(DataQueryState.Completed);\n this._aggregateDataQueryStatus$.next(DataQueryState.Completed);\n this._ontologyTermOccurencesDataQueryStatus$.next(DataQueryState.Completed);\n this._cellTypeTermOccurencesDataQueryStatus$.next(DataQueryState.Completed);\n this._sceneDataQueryStatus$.next(DataQueryState.Completed);\n this._technologyFilterQueryStatus$.next(DataQueryState.Completed);\n this._providerFilterQueryStatus$.next(DataQueryState.Completed);\n }\n\n ngxsOnInit(): void {\n const { ontologyTermsFullData$, ontologyTermOccurencesData$, cellTypeTermsFullData$, cellTypeTermOccurencesData$, source, snapshot: { filter } } = this;\n if (filter === DEFAULT_FILTER) {\n // Common case - Reuse the result of the regular query\n ontologyTermOccurencesData$.pipe(take(1)).subscribe(ontologyTermsFullData$);\n cellTypeTermOccurencesData$.pipe(take(1)).subscribe(cellTypeTermsFullData$);\n } else {\n source.getOntologyTermOccurences().pipe(take(1)).subscribe(ontologyTermsFullData$);\n source.getCellTypeTermOccurences().pipe(take(1)).subscribe(cellTypeTermsFullData$);\n }\n }\n\n /**\n * Updates the current filter.\n *\n * @param filter Changes to be made to the current filter.\n */\n @DataAction()\n updateFilter(@Payload('filter') filter: Partial): void {\n this.patchState({\n // Might need to do a deep compare of current and new filter\n filter: { ...this.getState().filter, ...filter }\n });\n }\n\n /**\n * Queries for tissue block data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private tissueBlockData(filter: Filter): ObservableInput {\n this._tissueBlockDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getTissueBlockResults(filter);\n }\n\n /**\n * Queries for aggregate data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private aggregateData(filter: Filter): ObservableInput {\n this._aggregateDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getAggregateResults(filter);\n }\n\n /**\n * Queries for ontology term occurences data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private ontologyTermOccurencesData(filter: Filter): ObservableInput> {\n this._ontologyTermOccurencesDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getOntologyTermOccurences(filter);\n }\n\n /**\n * Queries for cell type term occurences data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private cellTypeTermOccurencesData(filter: Filter): ObservableInput> {\n this._cellTypeTermOccurencesDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getCellTypeTermOccurences(filter);\n }\n\n /**\n * Queries for scene data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private sceneData(filter: Filter): ObservableInput {\n this._sceneDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getScene(filter);\n }\n\n /**\n * Queries for technology filter data.\n *\n * @returns The result of the query.\n */\n @bind\n private technologyFilterData(): ObservableInput {\n this._technologyFilterQueryStatus$.next(DataQueryState.Running);\n return this.source.getDatasetTechnologyNames();\n }\n\n /**\n * Queries for provider filter data.\n *\n * @returns The result of the query.\n */\n @bind\n private providerFilterData(): ObservableInput {\n this._providerFilterQueryStatus$.next(DataQueryState.Running);\n return this.source.getProviderNames();\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DefaultIconDefinition.html":{"url":"interfaces/DefaultIconDefinition.html","title":"interface - DefaultIconDefinition","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DefaultIconDefinition\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n\n\n \n Description\n \n \n Object definition for icon that should be loaded on startup.\nUnlike runtime registration object this does not need url ot html\nto be sanitized before hand.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n html\n \n \n \n Optional\n \n name\n \n \n \n Optional\n \n namespace\n \n \n \n Optional\n \n url\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n html\n \n \n \n \n \n \n \n \n html: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Html containing the svg of the icon or icon set.\n\n \n \n \n \n \n \n \n \n \n name\n \n \n \n \n \n \n \n \n name: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Name to register the icon under.\n\n \n \n \n \n \n \n \n \n \n namespace\n \n \n \n \n \n \n \n \n namespace: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Namespace to register the icon or icon set under.\n\n \n \n \n \n \n \n \n \n \n url\n \n \n \n \n \n \n \n \n url: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Url to fetch the icon or icon set from.\n\n \n \n \n \n \n \n\n\n \n export interface DefaultIconDefinition {\n /**\n * Name to register the icon under.\n */\n name?: string;\n\n /**\n * Namespace to register the icon or icon set under.\n */\n namespace?: string;\n\n /**\n * Url to fetch the icon or icon set from.\n */\n url?: string;\n\n /**\n * Html containing the svg of the icon or icon set.\n */\n html?: string;\n}\n\n\n/**\n * Icons registered at startup.\n */\nexport const DEFAULT_ICONS: DefaultIconDefinition[] = [\n // Reference Organs\n { name: 'bladder', namespace: 'app', url: 'assets/icons/organs/ico-organs-bladder.svg' },\n { name: 'blood', namespace: 'app', url: 'assets/icons/organs/ico-organs-blood.svg' },\n { name: 'bone-marrow', namespace: 'app', url: 'assets/icons/organs/ico-organs-bone-marrow.svg' },\n { name: 'brain', namespace: 'app', url: 'assets/icons/organs/ico-organs-brain.svg' },\n { name: 'eye', namespace: 'app', url: 'assets/icons/organs/ico-organs-eye.svg' },\n { name: 'fallopian-tube-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-left.svg' },\n { name: 'fallopian-tube-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-right.svg' },\n { name: 'heart', namespace: 'app', url: 'assets/icons/organs/ico-organs-heart.svg' },\n { name: 'kidney-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-left.svg' },\n { name: 'kidney-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-right.svg' },\n { name: 'kidney', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney.svg' },\n { name: 'knee', namespace: 'app', url: 'assets/icons/organs/ico-organs-knee.svg' },\n { name: 'large-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-large-intestine.svg' },\n { name: 'liver', namespace: 'app', url: 'assets/icons/organs/ico-organs-liver.svg' },\n { name: 'lung-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-left.svg' },\n { name: 'lung-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-right.svg' },\n { name: 'lung', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung.svg' },\n { name: 'lymph-nodes', namespace: 'app', url: 'assets/icons/organs/ico-organs-lymph-nodes.svg' },\n { name: 'neuron', namespace: 'app', url: 'assets/icons/organs/ico-organs-neuron.svg' },\n { name: 'ovaries', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovaries.svg' },\n { name: 'ovary-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-left.svg' },\n { name: 'ovary-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-right.svg' },\n { name: 'pancreas', namespace: 'app', url: 'assets/icons/organs/ico-organs-pancreas.svg' },\n { name: 'pelvis-f', namespace: 'app', url: 'assets/icons/organs/ico-organs-pelvis-f.svg' },\n { name: 'prostate', namespace: 'app', url: 'assets/icons/organs/ico-organs-prostate.svg' },\n { name: 'skin', namespace: 'app', url: 'assets/icons/organs/ico-organs-skin.svg' },\n { name: 'small-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-small intestine.svg' },\n { name: 'spleen', namespace: 'app', url: 'assets/icons/organs/ico-organs-spleen.svg' },\n { name: 'stomach', namespace: 'app', url: 'assets/icons/organs/ico-organs-stomach.svg' },\n { name: 'thymus', namespace: 'app', url: 'assets/icons/organs/ico-organs-thymus.svg' },\n { name: 'ureter-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-left.svg' },\n { name: 'ureter-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-right.svg' },\n { name: 'uterus', namespace: 'app', url: 'assets/icons/organs/ico-organs-uterus.svg' },\n { name: 'vasculature-thick', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thick.svg' },\n { name: 'vasculature-thin', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thin.svg' },\n\n { name: 'opacity', namespace: 'app', url: 'assets/icons/opacity-24px.svg' },\n { name: 'visibility_on', namespace: 'app', url: 'assets/icons/visibility-on-24px.svg' },\n { name: 'visibility_off', namespace: 'app', url: 'assets/icons/visibility-off-24px.svg' },\n { name: 'expand_more', namespace: 'app', url: 'assets/icons/expand_more-24px.svg' },\n { name: 'expand_less', namespace: 'app', url: 'assets/icons/expand_less-24px.svg' },\n { name: 'filter', url: 'assets/icons/filter.svg' }\n];\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DelegateDataSourceOptions.html":{"url":"interfaces/DelegateDataSourceOptions.html","title":"interface - DelegateDataSourceOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DelegateDataSourceOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n remoteApiEndpoint\n \n \n \n Optional\n \n useRemoteApi\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n remoteApiEndpoint\n \n \n \n \n \n \n \n \n remoteApiEndpoint: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n useRemoteApi\n \n \n \n \n \n \n \n \n useRemoteApi: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { Injectable, ProviderToken } from '@angular/core';\nimport {\n ApiEndpointDataSourceService, CCFDatabaseDataSourceService, DataSourceLike, InjectorDelegateDataSourceService,\n} from 'ccf-shared';\n\nimport { environment } from '../../../../environments/environment';\nimport { WorkerDataSourceService } from './worker-data-source.service';\n\n\nexport interface DelegateDataSourceOptions {\n useRemoteApi?: boolean;\n remoteApiEndpoint?: string;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DelegateDataSourceService extends InjectorDelegateDataSourceService {\n protected selectToken(config: DelegateDataSourceOptions): ProviderToken {\n const { useRemoteApi, remoteApiEndpoint } = config;\n\n if (useRemoteApi && !!remoteApiEndpoint) {\n return ApiEndpointDataSourceService;\n } else if (typeof Worker !== 'undefined' && !environment.disableDbWorker) {\n return WorkerDataSourceService;\n } else {\n return CCFDatabaseDataSourceService;\n }\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/DelegateDataSourceService.html":{"url":"injectables/DelegateDataSourceService.html","title":"injectable - DelegateDataSourceService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n DelegateDataSourceService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n\n\n\n \n Extends\n \n \n InjectorDelegateDataSourceService\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Protected\n selectToken\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Protected\n selectToken\n \n \n \n \n \n \n \n selectToken(config: DelegateDataSourceOptions)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts:20\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n config\n \n DelegateDataSourceOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : ProviderToken\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable, ProviderToken } from '@angular/core';\nimport {\n ApiEndpointDataSourceService, CCFDatabaseDataSourceService, DataSourceLike, InjectorDelegateDataSourceService,\n} from 'ccf-shared';\n\nimport { environment } from '../../../../environments/environment';\nimport { WorkerDataSourceService } from './worker-data-source.service';\n\n\nexport interface DelegateDataSourceOptions {\n useRemoteApi?: boolean;\n remoteApiEndpoint?: string;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DelegateDataSourceService extends InjectorDelegateDataSourceService {\n protected selectToken(config: DelegateDataSourceOptions): ProviderToken {\n const { useRemoteApi, remoteApiEndpoint } = config;\n\n if (useRemoteApi && !!remoteApiEndpoint) {\n return ApiEndpointDataSourceService;\n } else if (typeof Worker !== 'undefined' && !environment.disableDbWorker) {\n return WorkerDataSourceService;\n } else {\n return CCFDatabaseDataSourceService;\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DonorCardComponent.html":{"url":"components/DonorCardComponent.html","title":"component - DonorCardComponent","body":"\n \n\n\n\n\n\n Components\n \n DonorCardComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts\n\n\n\n \n Description\n \n \n Donor card component which displays data from a patient\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-donor-card\n \n\n \n styleUrls\n ./donor-card.component.scss\n \n\n\n\n \n templateUrl\n ./donor-card.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n clsName\n \n \n hoverState\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n handleCheckbox\n \n \n linkHandler\n \n \n toggleExpansion\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n color\n \n \n expanded\n \n \n highlighted\n \n \n selected\n \n \n tissueBlock\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n checked\n \n \n linkClick\n \n \n \n \n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:40\n \n \n\n \n \n Creates an instance of donor card component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n color\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:26\n \n \n \n \n Allows color of the checkbox background to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n expanded\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:29\n \n \n \n \n Allows the expanded state of the card to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n highlighted\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:31\n \n \n \n \n \n \n \n \n \n selected\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:23\n \n \n \n \n Allows the selected state to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n tissueBlock\n \n \n \n \n Type : TissueBlockResult\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:20\n \n \n \n \n Tissue Block to generate the donor card from\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n checked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:34\n \n \n \n \n Emits the new checked state whenever it changes\n\n \n \n \n \n \n \n \n \n \n linkClick\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:37\n \n \n \n \n Emit the url of any link when clicked.\n\n \n \n \n \n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-donor-card\"\n\n \n \n \n \n Default value : 'ccf-donor-card'\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:17\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n handleCheckbox\n \n \n \n \n \n \nhandleCheckbox()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:52\n \n \n\n\n \n \n Handles the logic that needs to run when the checkbox is clicked on.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n linkHandler\n \n \n \n \n \n \nlinkHandler(url: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:76\n \n \n\n\n \n \n Handles what happens when an info card is clicked.\nPasses up the link click event unless the card isn't selected\nIn which case it selects it for ease of use.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n url\n \n string\n \n\n \n No\n \n\n\n \n the URL to emit up.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n toggleExpansion\n \n \n \n \n \n \ntoggleExpansion()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:62\n \n \n\n\n \n \n Ensures that the expanded variable is only changed if selected first.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n clsName\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-donor-card'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:17\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n \n \n \n \n \n \n hoverState\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : ''\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:40\n \n \n\n \n \n To keep track of which element, if any, are hovered over.\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { TissueBlockResult } from 'ccf-database';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n\n/**\n * Donor card component which displays data from a patient\n */\n@Component({\n selector: 'ccf-donor-card',\n templateUrl: './donor-card.component.html',\n styleUrls: ['./donor-card.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DonorCardComponent {\n /** HTML Class Name */\n @HostBinding('class') readonly clsName = 'ccf-donor-card';\n\n /** Tissue Block to generate the donor card from */\n @Input() tissueBlock!: TissueBlockResult;\n\n /** Allows the selected state to be set from outside the component */\n @Input() selected = false;\n\n /** Allows color of the checkbox background to be set from outside the component */\n @Input() color!: string;\n\n /** Allows the expanded state of the card to be set from outside the component */\n @Input() expanded = false;\n\n @Input() highlighted = false;\n\n /** Emits the new checked state whenever it changes */\n @Output() readonly checked = new EventEmitter();\n\n /** Emit the url of any link when clicked. */\n @Output() readonly linkClick = new EventEmitter();\n\n /** To keep track of which element, if any, are hovered over. */\n hoverState = '';\n\n /**\n * Creates an instance of donor card component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Handles the logic that needs to run when the checkbox is clicked on.\n */\n handleCheckbox(): void {\n this.selected = !this.selected;\n this.ga.event('selected_toggled', 'donor_card', this.tissueBlock.label, +this.selected);\n this.checked.emit(this.selected);\n this.expanded = false;\n }\n\n /**\n * Ensures that the expanded variable is only changed if selected first.\n */\n toggleExpansion(): void {\n if (this.selected) {\n this.expanded = !this.expanded;\n this.ga.event('expanded_toggled', 'donor_card', this.tissueBlock.label, +this.expanded);\n }\n }\n\n /**\n * Handles what happens when an info card is clicked.\n * Passes up the link click event unless the card isn't selected\n * In which case it selects it for ease of use.\n *\n * @param url the URL to emit up.\n */\n linkHandler(url: string): void {\n this.ga.event('link_clicked', 'donor_card', this.tissueBlock.label);\n if (this.selected) {\n this.linkClick.emit(url);\n } else {\n this.selected = true;\n this.checked.emit(this.selected);\n }\n }\n}\n\n \n\n \n \n \n \n \n\n \n \n person\n\n \n {{ tissueBlock.donor.label }}\n {{ tissueBlock.donor.description }}\n \n \n \n DONOR\n open_in_new\n \n\n {{ expanded ? \"expand_less\" : \"expand_more\" }}\n \n\n\n\n \n \n bubble_chart\n \n {{ tissueBlock.label }}\n {{ tissueBlock.description }}\n \n\n \n TISSUE BLOCK\n open_in_new\n \n \n\n 1\"\n [totalTissueSections]=\"tissueBlock.sectionCount\"\n [tissueSections]=\"tissueBlock.sections\"\n >\n\n 0\">\n \n \n \n \n\n \n \n bubble_chart\n \n {{ section.label }}\n {{ section.description }}\n \n\n \n TISSUE SECTION\n open_in_new\n \n \n\n 0\">\n \n \n \n \n\n\n \n\n \n \n ./donor-card.component.scss\n \n :host {\n width: 100%;\n\n .main-container {\n display: flex;\n min-height: 3rem;\n width: 100%;\n align-items: center;\n padding-left: 0.5rem;\n }\n\n .checkbox-background {\n height: 2rem;\n width: 2rem;\n border-radius: 50%;\n margin-right: 0.5rem;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n\n ::ng-deep .mat-checkbox-checked.mat-accent .mat-checkbox-background,\n .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {\n background-color: transparent;\n }\n\n &.highlighted {\n ::ng-deep .mat-ripple-element {\n opacity: .04;\n }\n }\n\n .checkselected {\n ::ng-deep .mat-checkbox-frame {\n border-color: white !important;\n }\n }\n\n .checkbox {\n margin-left: 1.12rem;\n margin-bottom: 0.12rem; \n }\n }\n\n .align-end {\n margin-left: auto;\n }\n\n .info-block {\n display: flex;\n font-size: 0.75rem;\n line-height: 1rem;\n width: 100%;\n align-items: center;\n\n &:not(:first-child) {\n margin-top: 0.5rem;\n }\n\n .text-content {\n .title {\n font-weight: 600;\n }\n }\n }\n\n .donor {\n display: flex;\n font-size: 0.75rem;\n line-height: 1rem;\n align-items: center;\n flex-grow: 1;\n height: 2.5rem;\n\n &:hover, &.highlighted {\n box-shadow: 0px 6px 2px -2px rgba(0, 0, 0, 0.2), 0px 4px 4px 0px rgba(0, 0, 0, 0.14), 0px 2px 10px 0px rgba(0, 0, 0, 0.12);\n }\n\n .hover-state {\n width: 19.5rem !important;\n }\n\n .donor-info {\n .title {\n font-weight: 600;\n }\n }\n }\n\n .hoverable {\n position: relative;\n }\n\n .hover-enabled {\n position: relative;\n\n &:hover {\n .hover-state {\n opacity: 1;\n }\n }\n }\n\n .hover-state {\n transition: opacity 0.15s ease-in-out;\n opacity: 0;\n cursor: pointer;\n position: absolute;\n height: 100%;\n width: 100%;\n top: 0;\n margin-left: -0.5rem;\n align-items: center;\n display: flex;\n justify-content: flex-end;\n padding-right: 1rem;\n font-size: 0.75rem;\n\n .hover-title {\n font-weight: lighter;\n }\n\n .hover-icon {\n margin-left: 1rem;\n }\n }\n\n .default-padding {\n padding: 0.5rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n\n .expanded-view {\n margin-top: 0.25rem;\n width: 85%;\n margin-bottom: 0.25rem;\n }\n\n .d-flex {\n display: flex;\n }\n\n .icon-size {\n height: 1.5rem;\n width: 1.5rem;\n font-size: 1.5rem;\n }\n\n .selectable {\n cursor: pointer;\n }\n\n .w-80 {\n width: 80% !important;\n\n .info-block {\n .text-content {\n .description {\n width: 16rem !important;\n }\n }\n }\n }\n\n .ml-5 {\n margin-left: 0.5rem;\n }\n\n .mr-5 {\n margin-right: 0.5rem;\n }\n\n .mt-05 {\n margin-top: 0.5rem;\n }\n\n .description {\n width: 17rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' person {{ tissueBlock.donor.label }} {{ tissueBlock.donor.description }} DONOR open_in_new {{ expanded ? \"expand_less\" : \"expand_more\" }} bubble_chart {{ tissueBlock.label }} {{ tissueBlock.description }} TISSUE BLOCK open_in_new 1\" [totalTissueSections]=\"tissueBlock.sectionCount\" [tissueSections]=\"tissueBlock.sections\" > 0\"> bubble_chart {{ section.label }} {{ section.description }} TISSUE SECTION open_in_new 0\"> '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DonorCardComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DonorCardModule.html":{"url":"modules/DonorCardModule.html","title":"module - DonorCardModule","body":"\n \n\n\n\n\n Modules\n DonorCardModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DonorCardModule\n\n\n\ncluster_DonorCardModule_imports\n\n\n\ncluster_DonorCardModule_declarations\n\n\n\ncluster_DonorCardModule_exports\n\n\n\n\nDonorCardComponent\n\nDonorCardComponent\n\n\n\nDonorCardModule\n\nDonorCardModule\n\nDonorCardModule -->\n\nDonorCardComponent->DonorCardModule\n\n\n\n\n\nDonorCardComponent \n\nDonorCardComponent \n\nDonorCardComponent -->\n\nDonorCardModule->DonorCardComponent \n\n\n\n\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule\n\nDonorCardModule -->\n\nThumbnailCarouselModule->DonorCardModule\n\n\n\n\n\nTissueSectionVisModule\n\nTissueSectionVisModule\n\nDonorCardModule -->\n\nTissueSectionVisModule->DonorCardModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n DonorCardComponent\n \n \n \n \n Imports\n \n \n ThumbnailCarouselModule\n \n \n TissueSectionVisModule\n \n \n \n \n Exports\n \n \n DonorCardComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { ThumbnailCarouselModule } from '../../../shared/components/thumbnail-carousel/thumbnail-carousel.module';\nimport { DonorCardComponent } from './donor-card.component';\nimport { TissueSectionVisModule } from './../tissue-section-vis/tissue-section-vis.module';\n\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatCheckboxModule,\n MatIconModule,\n\n ThumbnailCarouselModule,\n TissueSectionVisModule\n ],\n declarations: [DonorCardComponent],\n exports: [DonorCardComponent]\n})\nexport class DonorCardModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DrawerContainersChanged.html":{"url":"interfaces/DrawerContainersChanged.html","title":"interface - DrawerContainersChanged","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DrawerContainersChanged\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message sent when a drawer component changes.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n drawers\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n drawers\n \n \n \n \n \n \n \n \n drawers: [, ]\n\n \n \n\n\n \n \n Type : [, ]\n\n \n \n\n\n\n\n\n \n \n References to the drawer components. Can contain undefined values.\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DrawerInitialized.html":{"url":"interfaces/DrawerInitialized.html","title":"interface - DrawerInitialized","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DrawerInitialized\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message sent when a drawer has finished initializing.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DrawerModule.html":{"url":"modules/DrawerModule.html","title":"module - DrawerModule","body":"\n \n\n\n\n\n Modules\n DrawerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DrawerModule\n\n\n\ncluster_DrawerModule_declarations\n\n\n\ncluster_DrawerModule_exports\n\n\n\n\nContainerComponent\n\nContainerComponent\n\n\n\nDrawerModule\n\nDrawerModule\n\nDrawerModule -->\n\nContainerComponent->DrawerModule\n\n\n\n\n\nContentComponent\n\nContentComponent\n\nDrawerModule -->\n\nContentComponent->DrawerModule\n\n\n\n\n\nDrawerComponent\n\nDrawerComponent\n\nDrawerModule -->\n\nDrawerComponent->DrawerModule\n\n\n\n\n\nToggleButtonComponent\n\nToggleButtonComponent\n\nDrawerModule -->\n\nToggleButtonComponent->DrawerModule\n\n\n\n\n\nContainerComponent \n\nContainerComponent \n\nContainerComponent -->\n\nDrawerModule->ContainerComponent \n\n\n\n\n\nContentComponent \n\nContentComponent \n\nContentComponent -->\n\nDrawerModule->ContentComponent \n\n\n\n\n\nDrawerComponent \n\nDrawerComponent \n\nDrawerComponent -->\n\nDrawerModule->DrawerComponent \n\n\n\n\n\nToggleButtonComponent \n\nToggleButtonComponent \n\nToggleButtonComponent -->\n\nDrawerModule->ToggleButtonComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ContainerComponent\n \n \n ContentComponent\n \n \n DrawerComponent\n \n \n ToggleButtonComponent\n \n \n \n \n Exports\n \n \n ContainerComponent\n \n \n ContentComponent\n \n \n DrawerComponent\n \n \n ToggleButtonComponent\n \n \n \n \n \n\n\n \n\n\n \n import { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { MESSAGE_SERVICE_CONFIG, MESSAGE_SERVICE_DEFAULT_CONFIG } from '../../services/message/message.service';\nimport { ContainerComponent } from './container/container.component';\nimport { ContentComponent } from './content/content.component';\nimport { DrawerComponent } from './drawer/drawer.component';\nimport { ToggleButtonComponent } from './toggle-button/toggle-button.component';\n\n\n@NgModule({\n imports: [BrowserModule, BrowserAnimationsModule, MatIconModule],\n providers: [{\n provide: MESSAGE_SERVICE_CONFIG, useValue: MESSAGE_SERVICE_DEFAULT_CONFIG\n }],\n declarations: [ContainerComponent, ContentComponent, DrawerComponent, ToggleButtonComponent],\n exports: [ContainerComponent, ContentComponent, DrawerComponent, ToggleButtonComponent]\n})\nexport class DrawerModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DrawerToggled.html":{"url":"interfaces/DrawerToggled.html","title":"interface - DrawerToggled","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DrawerToggled\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message send when the state of a drawer changes.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n expanded\n \n \n \n \n margin\n \n \n \n \n opened\n \n \n \n \n type\n \n \n \n \n width\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n expanded\n \n \n \n \n \n \n \n \n expanded: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Whether the drawer is expanded. Implies opened.\n\n \n \n \n \n \n \n \n \n \n margin\n \n \n \n \n \n \n \n \n margin: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Margin used by the drawer for toggle button, etc.\n\n \n \n \n \n \n \n \n \n \n opened\n \n \n \n \n \n \n \n \n opened: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Whether the drawer is open.\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n \n \n \n width\n \n \n \n \n \n \n \n \n width: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Width of the drawer.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DropdownComponent.html":{"url":"components/DropdownComponent.html","title":"component - DropdownComponent","body":"\n \n\n\n\n\n\n Components\n \n DropdownComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts\n\n\n\n \n Description\n \n \n Component for a dropdown menu.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-dropdown\n \n\n \n styleUrls\n ./dropdown.component.scss\n \n\n\n\n \n templateUrl\n ./dropdown.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n optionsVisible\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n selectionChanged\n \n \n toggleOptions\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n label\n \n \n options\n \n \n selection\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selectionChange\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:38\n \n \n\n \n \n Creates an instance of dropdown component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n label\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:18\n \n \n \n \n What the component is selecting for.\n\n \n \n \n \n \n \n \n \n \n options\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:23\n \n \n \n \n Choices displayed in the dropdown menu.\n\n \n \n \n \n \n \n \n \n \n selection\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:28\n \n \n \n \n Current option selected.\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selectionChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:33\n \n \n \n \n Emits the new selected option when selection is changed.\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n selectionChanged\n \n \n \n \n \n \nselectionChanged(value: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:59\n \n \n\n\n \n \n Updates the selected value.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n value\n \n string\n \n\n \n No\n \n\n\n \n The value that has been selected\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n toggleOptions\n \n \n \n \n \n \ntoggleOptions()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:50\n \n \n\n\n \n \n Controls fade-in effect after dropdown menu opens\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n optionsVisible\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'invisible'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:38\n \n \n\n \n \n Determines if menu contents are visible (used for fade-in effect).\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n/**\n * Component for a dropdown menu.\n */\n@Component({\n selector: 'ccf-dropdown',\n templateUrl: './dropdown.component.html',\n styleUrls: ['./dropdown.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DropdownComponent {\n\n /**\n * What the component is selecting for.\n */\n @Input() label: string;\n\n /**\n * Choices displayed in the dropdown menu.\n */\n @Input() options: string[];\n\n /**\n * Current option selected.\n */\n @Input() selection: string;\n\n /**\n * Emits the new selected option when selection is changed.\n */\n @Output() readonly selectionChange = new EventEmitter();\n\n /**\n * Determines if menu contents are visible (used for fade-in effect).\n */\n optionsVisible = 'invisible';\n\n /**\n * Creates an instance of dropdown component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Controls fade-in effect after dropdown menu opens\n */\n toggleOptions(): void {\n this.optionsVisible = this.optionsVisible === 'visible' ? 'invisible' : 'visible';\n }\n\n /**\n * Updates the selected value.\n *\n * @param value The value that has been selected\n */\n selectionChanged(value: string): void {\n this.selection = value;\n this.ga.event('selection_change', 'dropdown', `${this.label}:${value}`);\n this.selectionChange.emit(value);\n }\n}\n\n \n\n \n \n \n \n \n {{ label }}\n \n \n \n \n {{ option }}\n \n \n \n \n \n\n\n \n\n \n \n ./dropdown.component.scss\n \n @keyframes slideInHorizontalDropdown {\n from {\n width: 0;\n }\n to {\n width: 9.85rem;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n.dropdown-form-field {\n width: 100%;\n height: 3rem;\n\n ::ng-deep .mat-form-field-wrapper {\n padding-left: 1em;\n padding-right: 1em;\n height: 3rem;\n\n .mat-form-field-flex {\n .mat-form-field-infix {\n font-size: 0.875rem;\n border: none;\n\n mat-select {\n font-size: 1rem;\n font-weight: bold;\n }\n }\n }\n\n .mat-form-field-underline {\n left: 0rem;\n bottom: 0rem;\n transform: none;\n height: 0.125rem;\n }\n }\n}\n\n.visible {\n animation: fadeIn 0.3s;\n transition-delay: .275s;\n animation-delay: .275s;\n}\n\n.invisible {\n opacity: 0;\n}\n\n::ng-deep .option-panel {\n animation: slideInHorizontalDropdown .3s;\n animation-fill-mode: forwards;\n box-shadow: 0.2rem 0.2rem 1rem 0rem #0000003e;\n position: absolute !important;\n top: 1.55rem;\n max-width: 9.5rem;\n\n .mat-option {\n border-bottom-width: 1px;\n border-bottom-style: solid;\n padding-left: 1em;\n }\n\n :last-child {\n border-bottom: none;\n }\n}\n\n::ng-deep .cdk-overlay-pane {\n min-width: 0rem !important;\n}\n\n.dropdown-form-field {\n height: 3rem;\n width: 100%;\n \n .label {\n padding-bottom: 0.063rem;\n }\n ::ng-deep .mat-form-field-wrapper {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n }\n}\n\n::ng-deep .ccf-dropdown {\n .mat-select-arrow-wrapper {\n transform: translatey(-.5em);\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ label }} {{ option }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DropdownComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DropdownModule.html":{"url":"modules/DropdownModule.html","title":"module - DropdownModule","body":"\n \n\n\n\n\n Modules\n DropdownModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DropdownModule\n\n\n\ncluster_DropdownModule_declarations\n\n\n\ncluster_DropdownModule_exports\n\n\n\n\nDropdownComponent\n\nDropdownComponent\n\n\n\nDropdownModule\n\nDropdownModule\n\nDropdownModule -->\n\nDropdownComponent->DropdownModule\n\n\n\n\n\nDropdownComponent \n\nDropdownComponent \n\nDropdownComponent -->\n\nDropdownModule->DropdownComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/dropdown/dropdown.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n DropdownComponent\n \n \n \n \n Exports\n \n \n DropdownComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\n\nimport { DropdownComponent } from './dropdown.component';\n\n\n@NgModule({\n imports: [CommonModule, MatFormFieldModule, MatSelectModule],\n declarations: [DropdownComponent],\n exports: [DropdownComponent]\n})\n\nexport class DropdownModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DualSliderComponent.html":{"url":"components/DualSliderComponent.html","title":"component - DualSliderComponent","body":"\n \n\n\n\n\n\n Components\n \n DualSliderComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts\n\n\n\n \n Description\n \n \n Component containing a button that when clicked will show a slider popover.\n\n \n\n\n \n Implements\n \n \n OnDestroy\n OnChanges\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-dual-slider\n \n\n \n styleUrls\n ./dual-slider.component.scss\n \n\n\n\n \n templateUrl\n ./dual-slider.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n contentsVisible\n \n \n highValue\n \n \n Private\n isSliderInitialized\n \n \n isSliderOpen\n \n \n lowValue\n \n \n options\n \n \n Private\n overlayRef\n \n \n popoverElement\n \n \n popoverPortal\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n closeSliderPopover\n \n \n Private\n initializeSliderPopover\n \n \n ngOnChanges\n \n \n ngOnDestroy\n \n \n onKeyHigh\n \n \n onKeyLow\n \n \n optionsChanged\n \n \n sliderValueChanged\n \n \n toggleSliderPopover\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n label\n \n \n selection\n \n \n valueRange\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selectionChange\n \n \n \n \n\n\n \n \n HostListeners\n \n \n \n \n \n \n document:click\n \n \n document:touchstart\n \n \n \n \n\n \n \n Accessors\n \n \n \n \n \n \n rangeLabel\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(overlay: Overlay, element: ElementRef, ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:95\n \n \n\n \n \n Creates an instance of dual slider component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n overlay\n \n \n Overlay\n \n \n \n No\n \n \n \n The overlay service used to create the slider popover.\n\n \n \n \n element\n \n \n ElementRef\n \n \n \n No\n \n \n \n A reference to the component's element. Used during event handling.\n\n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n label\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:34\n \n \n \n \n Which criteria the slider is selecting for.\n\n \n \n \n \n \n \n \n \n \n selection\n \n \n \n \n Type : number[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:44\n \n \n \n \n The current range selected.\n\n \n \n \n \n \n \n \n \n \n valueRange\n \n \n \n \n Type : number[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:39\n \n \n \n \n The lower and upper range of the slider.\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selectionChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:49\n \n \n \n \n Emits the new selection range when a change is made to it.\n\n \n \n \n \n\n\n \n HostListeners \n \n \n \n \n \n document:click\n \n \n \n \n \n \n Arguments : '$event.target' \n \n \n \n \ndocument:click(target: HTMLElement)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:165\n \n \n\n\n \n \n Listens to document click, mouse movement, and touch event.\nCloses the slider popover when such an event occurs outside the button or popover.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n target\n\n \n No\n \n\n\n \n The element on which the event was fired.\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n document:touchstart\n \n \n \n \n \n \n Arguments : '$event.target' \n \n \n \n \ndocument:touchstart(target: HTMLElement)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:165\n \n \n\n\n \n \n Listens to document click, mouse movement, and touch event.\nCloses the slider popover when such an event occurs outside the button or popover.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n target\n\n \n No\n \n\n\n \n The element on which the event was fired.\n\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n closeSliderPopover\n \n \n \n \n \n \ncloseSliderPopover(target: HTMLElement)\n \n \n\n \n \n Decorators : \n \n @HostListener('document:click', ['$event.target'])@HostListener('document:touchstart', ['$event.target'])\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:165\n \n \n\n\n \n \n Listens to document click, mouse movement, and touch event.\nCloses the slider popover when such an event occurs outside the button or popover.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n target\n \n HTMLElement\n \n\n \n No\n \n\n\n \n The element on which the event was fired.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n initializeSliderPopover\n \n \n \n \n \n \n \n initializeSliderPopover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:212\n \n \n\n\n \n \n Creates and initializes the slider popover.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnChanges\n \n \n \n \n \n \nngOnChanges(changes: SimpleChanges)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:122\n \n \n\n\n \n \n Updates slider options (with optionsChanged) and selection when changes detected.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n changes\n \n SimpleChanges\n \n\n \n No\n \n\n\n \n Changes that have been made to the slider properties.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:152\n \n \n\n\n \n \n Angular's OnDestroy hook.\nCleans up the overlay.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n onKeyHigh\n \n \n \n \n \n \nonKeyHigh(event: KeyboardEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:243\n \n \n\n\n \n \n Updates the slider's high pointer value when Enter key is pressed.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n KeyboardEvent\n \n\n \n No\n \n\n\n \n Event passed into the component\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n onKeyLow\n \n \n \n \n \n \nonKeyLow(event: KeyboardEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:226\n \n \n\n\n \n \n Updates the slider's low pointer value when Enter key is pressed.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n KeyboardEvent\n \n\n \n No\n \n\n\n \n Event passed into the component\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n optionsChanged\n \n \n \n \n \n \noptionsChanged()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:136\n \n \n\n\n \n \n Updates the slider options, and the slider values if necessary.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n sliderValueChanged\n \n \n \n \n \n \nsliderValueChanged()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:201\n \n \n\n\n \n \n Handler for updates to the slider values.\nEmits the updated selection value array.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n toggleSliderPopover\n \n \n \n \n \n \ntoggleSliderPopover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:184\n \n \n\n\n \n \n Toggles the visibility of the slider popover.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n contentsVisible\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'invisible'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:74\n \n \n\n \n \n Determines if slider contents are visible (used for fade-in effect).\n\n \n \n\n \n \n \n \n \n \n \n \n highValue\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:69\n \n \n\n \n \n Value bound to the slider's high pointer value.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n isSliderInitialized\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:95\n \n \n\n \n \n Determines whether slider popover has been created and initialized.\n\n \n \n\n \n \n \n \n \n \n \n \n isSliderOpen\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:54\n \n \n\n \n \n Determines whether slider popover is shown.\n\n \n \n\n \n \n \n \n \n \n \n \n lowValue\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:64\n \n \n\n \n \n Value bound to the slider's low pointer value.\n\n \n \n\n \n \n \n \n \n \n \n \n options\n \n \n \n \n \n \n Type : Options\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:59\n \n \n\n \n \n Slider options.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n overlayRef\n \n \n \n \n \n \n Type : OverlayRef\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:90\n \n \n\n \n \n Reference to the slider popover overlay.\n\n \n \n\n \n \n \n \n \n \n \n \n popoverElement\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Decorators : \n \n \n @ViewChild('popover', {read: ElementRef, static: false})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:29\n \n \n\n \n \n Reference to the popover element.\nThis is undefined until the slider popover is initialized.\n\n \n \n\n \n \n \n \n \n \n \n \n popoverPortal\n \n \n \n \n \n \n Type : CdkPortal\n\n \n \n \n \n Decorators : \n \n \n @ViewChild(CdkPortal, {static: true})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:23\n \n \n\n \n \n Reference to the template for the slider popover.\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n rangeLabel\n \n \n\n \n \n getrangeLabel()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:79\n \n \n \n \n Computes the current age range for display in the button.\n\n\n \n Returns : string\n\n \n \n \n\n \n \n\n\n\n\n \n import { ConnectedPosition, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { CdkPortal } from '@angular/cdk/portal';\nimport {\n Component, ElementRef, EventEmitter, HostListener, Input, OnChanges, OnDestroy, Output, SimpleChanges, ViewChild,\n} from '@angular/core';\nimport { Options } from 'ng5-slider';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n\n/**\n * Component containing a button that when clicked will show a slider popover.\n */\n@Component({\n selector: 'ccf-dual-slider',\n templateUrl: './dual-slider.component.html',\n styleUrls: ['./dual-slider.component.scss']\n})\nexport class DualSliderComponent implements OnDestroy, OnChanges {\n /**\n * Reference to the template for the slider popover.\n */\n @ViewChild(CdkPortal, { static: true }) popoverPortal: CdkPortal;\n\n /**\n * Reference to the popover element.\n * This is undefined until the slider popover is initialized.\n */\n @ViewChild('popover', { read: ElementRef, static: false }) popoverElement: ElementRef;\n\n /**\n * Which criteria the slider is selecting for.\n */\n @Input() label: string;\n\n /**\n * The lower and upper range of the slider.\n */\n @Input() valueRange: number[];\n\n /**\n * The current range selected.\n */\n @Input() selection: number[];\n\n /**\n * Emits the new selection range when a change is made to it.\n */\n @Output() readonly selectionChange = new EventEmitter();\n\n /**\n * Determines whether slider popover is shown.\n */\n isSliderOpen = false;\n\n /**\n * Slider options.\n */\n options: Options;\n\n /**\n * Value bound to the slider's low pointer value.\n */\n lowValue: number;\n\n /**\n * Value bound to the slider's high pointer value.\n */\n highValue: number;\n\n /**\n * Determines if slider contents are visible (used for fade-in effect).\n */\n contentsVisible = 'invisible';\n\n /**\n * Computes the current age range for display in the button.\n */\n get rangeLabel(): string {\n const { lowValue, highValue } = this;\n if (lowValue === highValue) {\n return `${lowValue}`;\n }\n return `${lowValue}-${highValue}`;\n }\n\n /**\n * Reference to the slider popover overlay.\n */\n private overlayRef: OverlayRef;\n\n /**\n * Determines whether slider popover has been created and initialized.\n */\n private isSliderInitialized = false;\n\n /**\n * Creates an instance of dual slider component.\n *\n * @param overlay The overlay service used to create the slider popover.\n * @param element A reference to the component's element. Used during event handling.\n * @param ga Analytics service\n */\n constructor(\n overlay: Overlay,\n private element: ElementRef,\n private readonly ga: GoogleAnalyticsService\n ) {\n const position: ConnectedPosition = { originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top' };\n const positionStrategy = overlay.position().flexibleConnectedTo(element).withPositions([position]);\n this.overlayRef = overlay.create({\n panelClass: 'slider-pane',\n positionStrategy\n });\n }\n\n /**\n * Updates slider options (with optionsChanged) and selection when changes detected.\n *\n * @param changes Changes that have been made to the slider properties.\n */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.valueRange) {\n this.optionsChanged();\n }\n if (changes.selection) {\n // Detect when selection is changed and update low/high value.\n this.lowValue = Math.min(...this.selection);\n this.highValue = Math.max(...this.selection);\n }\n }\n\n /**\n * Updates the slider options, and the slider values if necessary.\n */\n optionsChanged(): void {\n this.options = {\n floor: this.valueRange ? this.valueRange[0] : 0,\n ceil: this.valueRange ? this.valueRange[1] : 0,\n step: 1,\n hideLimitLabels: true,\n hidePointerLabels: true\n };\n this.lowValue = this.options.floor ?? 0;\n this.highValue = this.options.ceil ?? 0;\n }\n\n /**\n * Angular's OnDestroy hook.\n * Cleans up the overlay.\n */\n ngOnDestroy(): void {\n this.overlayRef.dispose();\n }\n\n /**\n * Listens to document click, mouse movement, and touch event.\n * Closes the slider popover when such an event occurs outside the button or popover.\n *\n * @param target The element on which the event was fired.\n */\n @HostListener('document:click', ['$event.target']) // eslint-disable-line\n // eslint-disable-line\n @HostListener('document:touchstart', ['$event.target']) // eslint-disable-line\n closeSliderPopover(target: HTMLElement): void {\n const { element, isSliderOpen, popoverElement } = this;\n if (!isSliderOpen) {\n return;\n } else if (element.nativeElement.contains(target)) {\n return;\n } else if (popoverElement?.nativeElement?.contains?.(target)) {\n return;\n }\n\n this.overlayRef.detach();\n this.isSliderInitialized = false;\n this.isSliderOpen = false;\n this.contentsVisible = 'invisible';\n }\n\n /**\n * Toggles the visibility of the slider popover.\n */\n toggleSliderPopover(): void {\n const { isSliderOpen, isSliderInitialized } = this;\n if (isSliderInitialized) {\n this.overlayRef.detach();\n this.isSliderInitialized = false;\n } else if (!isSliderInitialized && !isSliderOpen) {\n this.initializeSliderPopover();\n }\n\n this.contentsVisible = this.contentsVisible === 'visible' ? 'invisible' : 'visible';\n this.isSliderOpen = !isSliderOpen;\n }\n\n /**\n * Handler for updates to the slider values.\n * Emits the updated selection value array.\n */\n sliderValueChanged(): void {\n const { lowValue, highValue } = this;\n\n this.selection = [lowValue, highValue];\n this.ga.event('slider_range_change', 'dual_slider', `${this.label}:${lowValue}:${highValue}`);\n this.selectionChange.emit(this.selection);\n }\n\n /**\n * Creates and initializes the slider popover.\n */\n private initializeSliderPopover(): void {\n const { overlayRef, popoverPortal } = this;\n\n overlayRef.attach(popoverPortal);\n overlayRef.updatePosition();\n\n this.isSliderInitialized = true;\n }\n\n /**\n * Updates the slider's low pointer value when Enter key is pressed.\n *\n * @param event Event passed into the component\n */\n onKeyLow(event: KeyboardEvent): void {\n const newValue = Number((event.target as HTMLInputElement).value);\n if (event.key === 'Enter') {\n if (newValue >= Number(this.options.floor) && newValue = Number(this.options.floor) && newValue \n \n\n \n \n \n \n \n {{ options.floor }}> \n \n \n\n \n \n\n \n {{ options.ceil }} \n \n \n \n\n \n \n {{ label }}\n {{ rangeLabel }}\n \n \n \n \n\n\n \n\n \n \n ./dual-slider.component.scss\n \n @use 'sass:math';\n\n.slider-form-field {\n width: 100%;\n height: 3rem;\n\n ::ng-deep .mat-form-field-wrapper {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n height: 3rem;\n\n .mat-form-field-flex {\n .mat-form-field-infix {\n border: none;\n font-size: 0.875rem;\n }\n }\n\n .mat-form-field-underline {\n left: 0rem;\n bottom: 0rem;\n transform: none;\n height: 0.125rem;\n }\n }\n}\n\n\n.slider-labels {\n display: flex;\n flex-direction: column;\n .name-label {\n padding-bottom: 0.25rem;\n }\n\n .range-label {\n font-weight: bold;\n }\n}\n\n::ng-deep .ccf-slider.wrapper {\n .mat-select-arrow-wrapper {\n transform: translatey(-1.5em);\n }\n}\n\n// Styles for the popover slider\n// NOTE: This must NOT be nested inside the wrapper/container!\n\n@keyframes slideInHorizontalSlider {\n from {\n width: 0;\n }\n to {\n width: 20em;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n.visible {\n animation: fadeIn 0.3s;\n transition-delay: .275s;\n animation-delay: .275s;\n}\n\n.invisible {\n opacity: 0;\n}\n\n::ng-deep .slider-pane {\n position: absolute !important;\n top: -1px;\n}\n\n.ccf-slider.detached {\n animation: slideInHorizontalSlider 0.3s;\n animation-fill-mode: forwards;\n box-shadow: 0.2rem 0.2rem 1rem 0rem #0000003e;\n\n display: flex;\n justify-content: center;\n align-items: center;\n width: 0rem;\n height: 4.375rem;\n padding: .75rem; // NOTE: Use padding instead of margin!\n\n .slider ::ng-deep {\n visibility: hidden;\n margin-top: 0.9375rem;\n margin-bottom: 0.9375rem;\n .ng5-slider-bar {\n opacity: .2;\n height: .15rem;\n }\n\n .ng5-slider-selection {\n opacity: 1;\n }\n\n .ng5-slider-pointer {\n $pointer-size: 1rem;\n\n width: $pointer-size;\n height: $pointer-size;\n top: 0.095rem - math.div($pointer-size, 2);\n\n &:after {\n display: none;\n }\n }\n }\n\n .label {\n display: flex;\n flex-direction: column;\n width: 2rem;\n\n &.min {\n margin-right: 1rem;\n }\n\n &.max {\n margin-left: 1rem;\n align-items: flex-end;\n\n .ceil, input {\n text-align: right;\n }\n }\n\n .floor, .ceil {\n font-size: 0.875rem;\n }\n\n input {\n border: none;\n width: 1.75rem;\n font-size: 1rem;\n font-weight: bold;\n padding: 0;\n }\n\n }\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ options.floor }}> {{ options.ceil }} {{ label }} {{ rangeLabel }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DualSliderComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DualSliderModule.html":{"url":"modules/DualSliderModule.html","title":"module - DualSliderModule","body":"\n \n\n\n\n\n Modules\n DualSliderModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DualSliderModule\n\n\n\ncluster_DualSliderModule_exports\n\n\n\ncluster_DualSliderModule_declarations\n\n\n\n\nDualSliderComponent\n\nDualSliderComponent\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nDualSliderModule -->\n\nDualSliderComponent->DualSliderModule\n\n\n\n\n\nDualSliderComponent \n\nDualSliderComponent \n\nDualSliderComponent -->\n\nDualSliderModule->DualSliderComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n DualSliderComponent\n \n \n \n \n Exports\n \n \n DualSliderComponent\n \n \n \n \n \n\n\n \n\n\n \n import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { Ng5SliderModule } from 'ng5-slider';\n\nimport { DualSliderComponent } from './dual-slider.component';\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n PortalModule,\n MatFormFieldModule,\n MatSelectModule,\n Ng5SliderModule\n ],\n declarations: [DualSliderComponent],\n exports: [DualSliderComponent]\n})\nexport class DualSliderModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/FiltersContentComponent.html":{"url":"components/FiltersContentComponent.html","title":"component - FiltersContentComponent","body":"\n \n\n\n\n\n\n Components\n \n FiltersContentComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts\n\n\n\n \n Description\n \n \n Contains components of the filters popup and handles changes in filter settings\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-filters-content\n \n\n \n styleUrls\n ./filters-content.component.scss\n \n\n\n\n \n templateUrl\n ./filters-content.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n applyButtonClick\n \n \n refreshFilters\n \n \n updateFilter\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n filters\n \n \n hidden\n \n \n providerFilters\n \n \n technologyFilters\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n applyFilters\n \n \n filtersChange\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:44\n \n \n\n \n \n Creates an instance of filters content component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n filters\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:24\n \n \n \n \n Allows the filters to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n hidden\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:19\n \n \n \n \n Determines if the filters are visible\n\n \n \n \n \n \n \n \n \n \n providerFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:34\n \n \n \n \n List of providers in the data\n\n \n \n \n \n \n \n \n \n \n technologyFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:29\n \n \n \n \n List of technologies in the data\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n applyFilters\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:44\n \n \n \n \n Emits the filters to be applied\n\n \n \n \n \n \n \n \n \n \n filtersChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:39\n \n \n \n \n Emits the filter change when they happen\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n applyButtonClick\n \n \n \n \n \n \napplyButtonClick()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:68\n \n \n\n\n \n \n Emits the current filters when the apply button is clicked\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n refreshFilters\n \n \n \n \n \n \nrefreshFilters()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:76\n \n \n\n\n \n \n Refreshes all filter settings\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateFilter\n \n \n \n \n \n \nupdateFilter(value, key: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:59\n \n \n\n\n \n \n Updates the filter object with a new key/value\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n value\n \n \n\n \n No\n \n\n\n \n The value to be saved for the filter\n\n \n \n \n key\n \n string\n \n\n \n No\n \n\n\n \n The key for the filter to be saved at\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\nimport { DEFAULT_FILTER } from '../../../core/store/data/data.state';\n\n/**\n * Contains components of the filters popup and handles changes in filter settings\n */\n@Component({\n selector: 'ccf-filters-content',\n templateUrl: './filters-content.component.html',\n styleUrls: ['./filters-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FiltersContentComponent {\n\n /**\n * Determines if the filters are visible\n */\n @Input() hidden: boolean;\n\n /**\n * Allows the filters to be set from outside the component\n */\n @Input() filters: Record;\n\n /**\n * List of technologies in the data\n */\n @Input() technologyFilters: string[];\n\n /**\n * List of providers in the data\n */\n @Input() providerFilters: string[];\n\n /**\n * Emits the filter change when they happen\n */\n @Output() readonly filtersChange = new EventEmitter>();\n\n /**\n * Emits the filters to be applied\n */\n @Output() readonly applyFilters = new EventEmitter>();\n\n /**\n * Creates an instance of filters content component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Updates the filter object with a new key/value\n *\n * @param value The value to be saved for the filter\n * @param key The key for the filter to be saved at\n */\n updateFilter(value: unknown, key: string): void {\n this.filters = { ...this.filters, [key]: value };\n this.ga.event('filter_update', 'filter_content', `${key}:${value}`);\n this.filtersChange.emit(this.filters);\n }\n\n /**\n * Emits the current filters when the apply button is clicked\n */\n applyButtonClick(): void {\n this.ga.event('filters_applied', 'filter_content');\n this.applyFilters.emit(this.filters);\n }\n\n /**\n * Refreshes all filter settings\n */\n refreshFilters(): void {\n this.filters = JSON.parse(JSON.stringify(DEFAULT_FILTER));\n this.ga.event('filters_reset', 'filter_content');\n this.filtersChange.emit(this.filters);\n }\n}\n\n \n\n \n \n \n\n \n \n\n\n\n \n\n\n\n \n\n\n\n APPLY FILTERS\n \n refresh\n \n\n\n \n\n \n \n ./filters-content.component.scss\n \n .filter {\n &.hidden {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n &.assays {\n .option {\n margin-right: 0 rem;\n width: 25%\n }\n }\n\n margin-top: 2rem;\n}\n\n.button-container {\n &.hidden {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n margin-top: 2rem;\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n}\n\n.outline-button {\n box-shadow: 0.1rem 0.1rem 0.2rem 0rem #0000001d;\n}\n\n.refresh-icon {\n padding: 0.25rem;\n border-radius: 0.25rem;\n margin-right: 1rem;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: 0.6s;\n\n .refresh {\n cursor: pointer;\n transition: .6s;\n transition-property: background;\n }\n}\n\n.patient-filters {\n display: flex;\n width: 90%;\n padding-top: 1rem;\n\n &.hidden {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n ccf-dual-slider {\n margin-left: .5rem;\n width: 33%;\n }\n\n ccf-dropdown {\n width: 33%;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' APPLY FILTERS refresh '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'FiltersContentComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/FiltersContentModule.html":{"url":"modules/FiltersContentModule.html","title":"module - FiltersContentModule","body":"\n \n\n\n\n\n Modules\n FiltersContentModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_FiltersContentModule\n\n\n\ncluster_FiltersContentModule_exports\n\n\n\ncluster_FiltersContentModule_imports\n\n\n\ncluster_FiltersContentModule_declarations\n\n\n\n\nFiltersContentComponent\n\nFiltersContentComponent\n\n\n\nFiltersContentModule\n\nFiltersContentModule\n\nFiltersContentModule -->\n\nFiltersContentComponent->FiltersContentModule\n\n\n\n\n\nFiltersContentComponent \n\nFiltersContentComponent \n\nFiltersContentComponent -->\n\nFiltersContentModule->FiltersContentComponent \n\n\n\n\n\nCheckboxModule\n\nCheckboxModule\n\nFiltersContentModule -->\n\nCheckboxModule->FiltersContentModule\n\n\n\n\n\nDropdownModule\n\nDropdownModule\n\nFiltersContentModule -->\n\nDropdownModule->FiltersContentModule\n\n\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nFiltersContentModule -->\n\nDualSliderModule->FiltersContentModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n FiltersContentComponent\n \n \n \n \n Imports\n \n \n CheckboxModule\n \n \n DropdownModule\n \n \n DualSliderModule\n \n \n \n \n Exports\n \n \n FiltersContentComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { CheckboxModule } from '../../../shared/components/checkbox/checkbox.module';\nimport { DropdownModule } from '../../../shared/components/dropdown/dropdown.module';\nimport { DualSliderModule } from '../../../shared/components/dual-slider/dual-slider.module';\nimport { FiltersContentComponent } from './filters-content.component';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n imports: [CommonModule, CheckboxModule, DropdownModule, DualSliderModule, MatButtonModule, MatIconModule],\n declarations: [FiltersContentComponent],\n exports: [FiltersContentComponent]\n})\nexport class FiltersContentModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/FiltersPopoverComponent.html":{"url":"components/FiltersPopoverComponent.html","title":"component - FiltersPopoverComponent","body":"\n \n\n\n\n\n\n Components\n \n FiltersPopoverComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts\n\n\n\n \n Description\n \n \n Popover box for filter settings\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-filters-popover\n \n\n \n styleUrls\n ./filters-popover.component.scss\n \n\n\n\n \n templateUrl\n ./filters-popover.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n filtersVisible\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n applyFilters\n \n \n removeBox\n \n \n toggleFilterVisible\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n drawerExpanded\n \n \n filters\n \n \n providerFilters\n \n \n technologyFilters\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n filtersChange\n \n \n \n \n\n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n drawerExpanded\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:22\n \n \n \n \n Keeps track of whether or not the containing drawer is expanded\nBecause the styles need to change accordingly\n\n \n \n \n \n \n \n \n \n \n filters\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:16\n \n \n \n \n Allows the filters to be set from outside the component, and still render / function normally\n\n \n \n \n \n \n \n \n \n \n providerFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:32\n \n \n \n \n List of providers in the data\n\n \n \n \n \n \n \n \n \n \n technologyFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:27\n \n \n \n \n List of technologies in the data\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n filtersChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:37\n \n \n \n \n Emits the current filters\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n applyFilters\n \n \n \n \n \n \napplyFilters(filters: Record)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:63\n \n \n\n\n \n \n Emits the current filters, and hides the popover box\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n filters\n \n Record\n \n\n \n No\n \n\n\n \n The object containing all the currently set filters\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n removeBox\n \n \n \n \n \n \nremoveBox()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:54\n \n \n\n\n \n \n Hides the filters popover box\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n toggleFilterVisible\n \n \n \n \n \n \ntoggleFilterVisible()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:47\n \n \n\n\n \n \n Toggles filter visible\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n filtersVisible\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:42\n \n \n\n \n \n Keeps track of whether or not the filters popover box is visible or not\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\n/**\n * Popover box for filter settings\n */\n@Component({\n selector: 'ccf-filters-popover',\n templateUrl: './filters-popover.component.html',\n styleUrls: ['./filters-popover.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FiltersPopoverComponent {\n /**\n * Allows the filters to be set from outside the component, and still render / function normally\n */\n @Input() filters: Record;\n\n /**\n * Keeps track of whether or not the containing drawer is expanded\n * Because the styles need to change accordingly\n */\n @Input() drawerExpanded: boolean;\n\n /**\n * List of technologies in the data\n */\n @Input() technologyFilters: string[];\n\n /**\n * List of providers in the data\n */\n @Input() providerFilters: string[];\n\n /**\n * Emits the current filters\n */\n @Output() readonly filtersChange = new EventEmitter>();\n\n /**\n * Keeps track of whether or not the filters popover box is visible or not\n */\n filtersVisible = false;\n\n /**\n * Toggles filter visible\n */\n toggleFilterVisible(): void {\n this.filtersVisible = !this.filtersVisible;\n }\n\n /**\n * Hides the filters popover box\n */\n removeBox(): void {\n this.filtersVisible = false;\n }\n\n /**\n * Emits the current filters, and hides the popover box\n *\n * @param filters The object containing all the currently set filters\n */\n applyFilters(filters: Record): void {\n this.filters = filters;\n this.filtersChange.emit(filters);\n this.removeBox();\n }\n}\n\n \n\n \n \n \n \n close\n \n \n \n \n \n \n \n \n \n \n\n\n \n\n \n \n ./filters-popover.component.scss\n \n .filters-popover {\n position: inherit;\n\n &.expanded {\n position: relative;\n\n .popup-container {\n right: inherit;\n }\n\n .popup-body {\n padding-left: 4em !important;\n }\n }\n}\n\n.popup-container {\n position: absolute;\n z-index: 5;\n top: 1.2rem;\n left: 1.48rem;\n box-shadow: 0.2rem 0.2rem 1rem 0rem #00000058;\n \n .popup-body {\n padding: 1.5rem;\n position: relative;\n height: 26.5rem;\n }\n \n &.visible {\n width: 35rem;\n height: 26.5rem;\n transition: width 0.2s ease-in-out;\n border-width: 1px;\n \n .popup-body {\n opacity: 1;\n transition-delay: 0.3s;\n transition-duration: 0.2s;\n }\n }\n \n &.hidden {\n width: 0;\n height: 0;\n transition: all 0.2s ease-out;\n transition-delay: 0.3s;\n pointer-events: none;\n\n .popup-body {\n opacity: 0;\n transition: opacity 0.2s ease-in-out;\n }\n }\n}\n\n.show-hide {\n background: none;\n border: none;\n z-index: 10;\n position: relative;\n cursor: pointer;\n outline: none;\n padding: 0.5rem;\n border-radius: 0.25rem;\n transition: 0.6s;\n \n .funnel {\n // margin-top: 0.25rem;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' close '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'FiltersPopoverComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/FiltersPopoverModule.html":{"url":"modules/FiltersPopoverModule.html","title":"module - FiltersPopoverModule","body":"\n \n\n\n\n\n Modules\n FiltersPopoverModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_FiltersPopoverModule\n\n\n\ncluster_FiltersPopoverModule_exports\n\n\n\ncluster_FiltersPopoverModule_imports\n\n\n\ncluster_FiltersPopoverModule_declarations\n\n\n\n\nFiltersPopoverComponent\n\nFiltersPopoverComponent\n\n\n\nFiltersPopoverModule\n\nFiltersPopoverModule\n\nFiltersPopoverModule -->\n\nFiltersPopoverComponent->FiltersPopoverModule\n\n\n\n\n\nFiltersPopoverComponent \n\nFiltersPopoverComponent \n\nFiltersPopoverComponent -->\n\nFiltersPopoverModule->FiltersPopoverComponent \n\n\n\n\n\nFiltersContentModule\n\nFiltersContentModule\n\nFiltersPopoverModule -->\n\nFiltersContentModule->FiltersPopoverModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n FiltersPopoverComponent\n \n \n \n \n Imports\n \n \n FiltersContentModule\n \n \n \n \n Exports\n \n \n FiltersPopoverComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { FiltersContentModule } from '../filters-content/filters-content.module';\nimport { FiltersPopoverComponent } from './filters-popover.component';\n\n\n@NgModule({\n imports: [CommonModule, MatIconModule, FiltersContentModule],\n declarations: [FiltersPopoverComponent],\n exports: [FiltersPopoverComponent]\n})\nexport class FiltersPopoverModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FlatNode.html":{"url":"classes/FlatNode.html","title":"class - FlatNode","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FlatNode\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/models/flat-node.ts\n \n\n\n \n Description\n \n \n Node type used by ontology tree component.\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n numResults\n \n \n Optional\n opacity\n \n \n Optional\n visible\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n create\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n label\n \n \n expandable\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(original: OntologyTreeNode, level: number)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:38\n \n \n\n \n \n Creates an instance of flat node.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n original\n \n \n OntologyTreeNode\n \n \n \n No\n \n \n \n The original ontology node object.\n\n \n \n \n level\n \n \n number\n \n \n \n No\n \n \n \n The level of the new flat node in the tree.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n numResults\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:13\n \n \n\n\n \n \n \n \n \n \n \n \n Optional\n opacity\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 20\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:11\n \n \n\n\n \n \n \n \n \n \n \n \n Optional\n visible\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : true\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:9\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n create\n \n \n \n \n \n \n \n create(original: OntologyTreeNode, level: number)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:36\n \n \n\n\n \n \n Creates a flat node from a ontology node object and a level in the tree.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n original\n \n OntologyTreeNode\n \n\n \n No\n \n\n\n \n The original ontology node object.\n\n \n \n \n level\n \n number\n \n\n \n No\n \n\n\n \n The level of the new flat node in the tree.\n\n \n \n \n \n \n \n \n \n Returns : FlatNode\n\n \n \n The newly created flat node.\n\n \n \n \n \n \n\n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n label\n \n \n\n \n \n getlabel()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:18\n \n \n \n \n Gets this node's label.\n\n\n \n Returns : string\n\n \n \n \n\n \n \n \n \n \n \n \n expandable\n \n \n\n \n \n getexpandable()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:25\n \n \n \n \n Indicates whether this node has children.\n\n\n \n Returns : boolean\n\n \n \n \n\n \n \n\n \n\n\n \n import { OntologyTreeNode } from 'ccf-database';\n\n\n/**\n * Node type used by ontology tree component.\n */\nexport class FlatNode {\n visible?: boolean = true;\n\n opacity?: number = 20;\n\n numResults?: number;\n\n /**\n * Gets this node's label.\n */\n get label(): string {\n return this.original.label;\n }\n\n /**\n * Indicates whether this node has children.\n */\n get expandable(): boolean {\n return this.original.children.length > 0;\n }\n\n /**\n * Creates a flat node from a ontology node object and a level in the tree.\n *\n * @param original The original ontology node object.\n * @param level The level of the new flat node in the tree.\n * @returns The newly created flat node.\n */\n static create(original: OntologyTreeNode, level: number): FlatNode {\n return new FlatNode(original, level);\n }\n\n /**\n * Creates an instance of flat node.\n *\n * @param original The original ontology node object.\n * @param level The level of the new flat node in the tree.\n */\n constructor(readonly original: OntologyTreeNode, readonly level: number) { }\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/HeaderComponent.html":{"url":"components/HeaderComponent.html","title":"component - HeaderComponent","body":"\n \n\n\n\n\n\n Components\n \n HeaderComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/core/header/header.component.ts\n\n\n\n \n Description\n \n \n Header which is always displayed on the site; contains current filter info,\na link to download data, and a logo which resets the page when clicked.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-header\n \n\n \n styleUrls\n ./header.component.scss\n \n\n\n\n \n templateUrl\n ./header.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n\n\n \n \n Inputs\n \n \n \n \n \n \n filters\n \n \n homeUrl\n \n \n loggedIn\n \n \n loginDisabled\n \n \n logoTooltip\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n downloadClicked\n \n \n refreshClicked\n \n \n \n \n\n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n filters\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:32\n \n \n \n \n Current filter settings\n\n \n \n \n \n \n \n \n \n \n homeUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:18\n \n \n \n \n URL to Portal site\n\n \n \n \n \n \n \n \n \n \n loggedIn\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:27\n \n \n \n \n Is the user logged in?\n\n \n \n \n \n \n \n \n \n \n loginDisabled\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:20\n \n \n \n \n \n \n \n \n \n logoTooltip\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:22\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n downloadClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:42\n \n \n \n \n Emitted when download button is clicked\n\n \n \n \n \n \n \n \n \n \n refreshClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:37\n \n \n \n \n Emitted when refresh button is clicked\n\n \n \n \n \n\n\n\n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\n/**\n * Header which is always displayed on the site; contains current filter info,\n * a link to download data, and a logo which resets the page when clicked.\n */\n@Component({\n selector: 'ccf-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class HeaderComponent {\n\n /**\n * URL to Portal site\n */\n @Input() homeUrl: string;\n\n @Input() loginDisabled: boolean;\n\n @Input() logoTooltip: string;\n\n /**\n * Is the user logged in?\n */\n @Input() loggedIn: boolean;\n\n /**\n * Current filter settings\n */\n @Input() filters: Record;\n\n /**\n * Emitted when refresh button is clicked\n */\n @Output() readonly refreshClicked = new EventEmitter();\n\n /**\n * Emitted when download button is clicked\n */\n @Output() readonly downloadClicked = new EventEmitter();\n}\n\n \n\n \n \n \n \n \n \n\n \n \n LOGIN\n LOGOUT\n\n\n \n\n \n \n ./header.component.scss\n \n .ccf-header {\n height: 4rem;\n padding: 0 1.5rem;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n display: flex;\n\n .home {\n height: 100%;\n width: 25rem;\n align-items: center;\n display: flex;\n }\n\n .logo {\n width: 100%;\n height: 50%;\n background-repeat: no-repeat;\n background-size: contain;\n }\n\n .download {\n height: 1.5rem;\n }\n\n // Styled to match the HuBMAP Portal\n .authentication {\n width: 8.25rem;\n border-radius: 0.125rem;\n font-weight: 500;\n }\n\n .logo, .download, .refresh {\n display: flex;\n align-items: center;\n transition: color 1s;\n cursor: pointer;\n text-decoration: none;\n }\n\n :not(:last-child) {\n margin-right: 1.5rem;\n }\n\n .filler {\n flex-grow: 1;\n margin: 0;\n }\n\n .filter-labels {\n display: flex;\n align-items: center;\n height: 100%;\n font: 400 1rem/1.25rem Inter, sans-serif;\n }\n\n .disabled {\n display: none;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' LOGIN LOGOUT'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'HeaderComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HeaderModule.html":{"url":"modules/HeaderModule.html","title":"module - HeaderModule","body":"\n \n\n\n\n\n Modules\n HeaderModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HeaderModule\n\n\n\ncluster_HeaderModule_exports\n\n\n\ncluster_HeaderModule_declarations\n\n\n\n\nHeaderComponent\n\nHeaderComponent\n\n\n\nHeaderModule\n\nHeaderModule\n\nHeaderModule -->\n\nHeaderComponent->HeaderModule\n\n\n\n\n\nHeaderComponent \n\nHeaderComponent \n\nHeaderComponent -->\n\nHeaderModule->HeaderComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/header/header.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n HeaderComponent\n \n \n \n \n Exports\n \n \n HeaderComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { HeaderComponent } from './header.component';\n\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatIconModule, MatToolbarModule, MatTooltipModule],\n declarations: [HeaderComponent],\n exports: [HeaderComponent]\n})\nexport class HeaderModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/IconDefinition.html":{"url":"interfaces/IconDefinition.html","title":"interface - IconDefinition","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n IconDefinition\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n\n\n \n Description\n \n \n Object definition for registering new svg icons.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n html\n \n \n \n Optional\n \n name\n \n \n \n Optional\n \n namespace\n \n \n \n Optional\n \n url\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n html\n \n \n \n \n \n \n \n \n html: SafeHtml\n\n \n \n\n\n \n \n Type : SafeHtml\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Html containing the svg of the icon or icon set.\n\n \n \n \n \n \n \n \n \n \n name\n \n \n \n \n \n \n \n \n name: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Name to register the icon under.\n\n \n \n \n \n \n \n \n \n \n namespace\n \n \n \n \n \n \n \n \n namespace: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Namespace to register the icon or icon set under.\n\n \n \n \n \n \n \n \n \n \n url\n \n \n \n \n \n \n \n \n url: SafeResourceUrl\n\n \n \n\n\n \n \n Type : SafeResourceUrl\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Url to fetch the icon or icon set from.\n\n \n \n \n \n \n \n\n\n \n import { Injectable, Optional } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer, SafeHtml, SafeResourceUrl } from '@angular/platform-browser';\nimport { DataAction, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\n\nimport { DEFAULT_ICONS } from './default-icons';\n\n\n/**\n * Object definition for registering new svg icons.\n */\nexport interface IconDefinition {\n /**\n * Name to register the icon under.\n */\n name?: string;\n\n /**\n * Namespace to register the icon or icon set under.\n */\n namespace?: string;\n\n /**\n * Url to fetch the icon or icon set from.\n */\n url?: SafeResourceUrl;\n\n /**\n * Html containing the svg of the icon or icon set.\n */\n html?: SafeHtml;\n}\n\n\n/**\n * State handling the registration of icons for use with `mat-icon`.\n */\n@StateRepository()\n@State({ name: 'iconRegistry' })\n@Injectable()\nexport class IconRegistryState extends NgxsDataRepository {\n /**\n * Creates an instance of icon registry state.\n *\n * @param registry Material icon registry.\n * @param sanitizer Service used to sanitize default imported urls and html.\n */\n constructor(\n @Optional() private readonly registry: MatIconRegistry | null,\n sanitizer: DomSanitizer\n ) {\n super();\n\n for (const { name, namespace, url, html } of DEFAULT_ICONS) {\n const safeDef: IconDefinition = {\n name, namespace,\n url: url && sanitizer.bypassSecurityTrustResourceUrl(url),\n html: html && sanitizer.bypassSecurityTrustHtml(html)\n };\n\n this.registerIconImpl(safeDef);\n }\n }\n\n /**\n * Registers a svg icon for use in mat-icon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n @DataAction()\n registerIcon(definition: IconDefinition): boolean {\n return this.registerIconImpl(definition);\n }\n\n /**\n * Backing implementation of registerIcon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n private registerIconImpl(definition: IconDefinition): boolean {\n if (!this.registry) {\n return false;\n }\n if (!definition.url && !definition.html) {\n return false;\n }\n\n const registry = this.registry as unknown as { [prop: string]: (...arg: unknown[]) => void };\n const methodName = this.getMethodName(definition);\n const method = registry[methodName];\n const args = this.getArguments(definition);\n\n if (!method) {\n return false;\n }\n try {\n method.apply(registry, args);\n return true;\n } catch (_error) {\n return false;\n }\n }\n\n /**\n * Selects the MatIconRegistry method used to register the icon.\n *\n * @param definition Icon definition.\n * @returns The name of the registry method.\n */\n private getMethodName({ name, namespace, url }: IconDefinition): string {\n const parts = ['addSvgIcon'];\n if (!name) {\n parts.push('Set');\n }\n if (!url) {\n parts.push('Literal');\n }\n if (namespace) {\n parts.push('InNamespace');\n }\n return parts.join('');\n }\n\n /**\n * Selects the argument used to call the registration method.\n *\n * @param definition Icon definition.\n * @returns An array of arguments.\n */\n private getArguments({ name, namespace, url, html }: IconDefinition): unknown[] {\n const args: unknown[] = [namespace, name, url ?? html];\n return args.filter(value => !!value);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/IconRegistryState.html":{"url":"injectables/IconRegistryState.html","title":"injectable - IconRegistryState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n IconRegistryState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n\n\n \n Description\n \n \n State handling the registration of icons for use with mat-icon.\n\n \n\n \n Extends\n \n \n NgxsDataRepository\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n getArguments\n \n \n Private\n getMethodName\n \n \n registerIcon\n \n \n Private\n registerIconImpl\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(registry: MatIconRegistry | null, sanitizer: DomSanitizer)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:43\n \n \n\n \n \n Creates an instance of icon registry state.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n registry\n \n \n MatIconRegistry | null\n \n \n \n No\n \n \n \n Material icon registry.\n\n \n \n \n sanitizer\n \n \n DomSanitizer\n \n \n \n No\n \n \n \n Service used to sanitize default imported urls and html.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n getArguments\n \n \n \n \n \n \n \n getArguments(undefined: IconDefinition)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:134\n \n \n\n\n \n \n Selects the argument used to call the registration method.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n \n IconDefinition\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : []\n\n \n \n An array of arguments.\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMethodName\n \n \n \n \n \n \n \n getMethodName(undefined: IconDefinition)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:114\n \n \n\n\n \n \n Selects the MatIconRegistry method used to register the icon.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n \n IconDefinition\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : string\n\n \n \n The name of the registry method.\n\n \n \n \n \n \n \n \n \n \n \n \n registerIcon\n \n \n \n \n \n \nregisterIcon(definition: IconDefinition)\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:74\n \n \n\n\n \n \n Registers a svg icon for use in mat-icon.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n definition\n \n IconDefinition\n \n\n \n No\n \n\n\n \n Icon to register.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if registration was successful, otherwise false.\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n registerIconImpl\n \n \n \n \n \n \n \n registerIconImpl(definition: IconDefinition)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:84\n \n \n\n\n \n \n Backing implementation of registerIcon.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n definition\n \n IconDefinition\n \n\n \n No\n \n\n\n \n Icon to register.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if registration was successful, otherwise false.\n\n \n \n \n \n \n\n\n \n\n\n \n import { Injectable, Optional } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer, SafeHtml, SafeResourceUrl } from '@angular/platform-browser';\nimport { DataAction, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\n\nimport { DEFAULT_ICONS } from './default-icons';\n\n\n/**\n * Object definition for registering new svg icons.\n */\nexport interface IconDefinition {\n /**\n * Name to register the icon under.\n */\n name?: string;\n\n /**\n * Namespace to register the icon or icon set under.\n */\n namespace?: string;\n\n /**\n * Url to fetch the icon or icon set from.\n */\n url?: SafeResourceUrl;\n\n /**\n * Html containing the svg of the icon or icon set.\n */\n html?: SafeHtml;\n}\n\n\n/**\n * State handling the registration of icons for use with `mat-icon`.\n */\n@StateRepository()\n@State({ name: 'iconRegistry' })\n@Injectable()\nexport class IconRegistryState extends NgxsDataRepository {\n /**\n * Creates an instance of icon registry state.\n *\n * @param registry Material icon registry.\n * @param sanitizer Service used to sanitize default imported urls and html.\n */\n constructor(\n @Optional() private readonly registry: MatIconRegistry | null,\n sanitizer: DomSanitizer\n ) {\n super();\n\n for (const { name, namespace, url, html } of DEFAULT_ICONS) {\n const safeDef: IconDefinition = {\n name, namespace,\n url: url && sanitizer.bypassSecurityTrustResourceUrl(url),\n html: html && sanitizer.bypassSecurityTrustHtml(html)\n };\n\n this.registerIconImpl(safeDef);\n }\n }\n\n /**\n * Registers a svg icon for use in mat-icon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n @DataAction()\n registerIcon(definition: IconDefinition): boolean {\n return this.registerIconImpl(definition);\n }\n\n /**\n * Backing implementation of registerIcon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n private registerIconImpl(definition: IconDefinition): boolean {\n if (!this.registry) {\n return false;\n }\n if (!definition.url && !definition.html) {\n return false;\n }\n\n const registry = this.registry as unknown as { [prop: string]: (...arg: unknown[]) => void };\n const methodName = this.getMethodName(definition);\n const method = registry[methodName];\n const args = this.getArguments(definition);\n\n if (!method) {\n return false;\n }\n try {\n method.apply(registry, args);\n return true;\n } catch (_error) {\n return false;\n }\n }\n\n /**\n * Selects the MatIconRegistry method used to register the icon.\n *\n * @param definition Icon definition.\n * @returns The name of the registry method.\n */\n private getMethodName({ name, namespace, url }: IconDefinition): string {\n const parts = ['addSvgIcon'];\n if (!name) {\n parts.push('Set');\n }\n if (!url) {\n parts.push('Literal');\n }\n if (namespace) {\n parts.push('InNamespace');\n }\n return parts.join('');\n }\n\n /**\n * Selects the argument used to call the registration method.\n *\n * @param definition Icon definition.\n * @returns An array of arguments.\n */\n private getArguments({ name, namespace, url, html }: IconDefinition): unknown[] {\n const args: unknown[] = [namespace, name, url ?? html];\n return args.filter(value => !!value);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/InitializationState.html":{"url":"classes/InitializationState.html","title":"class - InitializationState","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n InitializationState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n\n\n \n Description\n \n \n Boolean state that can also be awaited.\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n deferred\n \n \n Private\n initialized\n \n \n Private\n resolve\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n set\n \n \n valueOf\n \n \n Async\n wait\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n deferred\n \n \n \n \n \n \n Default value : new Promise(resolve => {\n this.resolve = resolve;\n })\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:37\n \n \n\n \n \n Promise used to await on.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n initialized\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:35\n \n \n\n \n \n Whether this state is true or false.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n resolve\n \n \n \n \n \n \n Type : function\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:41\n \n \n\n \n \n Resolve function for the promise.\n\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n set\n \n \n \n \n \n \nset()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:46\n \n \n\n\n \n \n Sets the state to true and\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n valueOf\n \n \n \n \n \n \nvalueOf()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:65\n \n \n\n\n \n \n Gets the boolean state of this object.\n\n\n \n \n \n Returns : boolean\n\n \n \n true if set has been called.\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n wait\n \n \n \n \n \n \n \n wait()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:56\n \n \n\n\n \n \n Gets a promise that resolves when this state is set to true.\n\n\n \n \n \n Returns : Promise\n\n \n \n A promise.\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostBinding, HostListener,\n Input, OnDestroy, Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { Message, MessageChannel, MessageService } from '../messages';\n\n\n/** Opened/closed state. */\ntype OpenedState = 'open' | 'open-instant' | 'closed';\n/** Expanded/collapsed state. */\ntype ExpandedState = 'open' | 'open-instant' | 'closed';\n/** Expanded state relative to an opposite drawer. */\ntype ExpandedState2 = 'collapsed' | 'half' | 'extended' | 'full';\n\n/** Default animation parameters. */\nconst EXPAND_COLLAPSE_PARAMS_DEFAULT = {\n params: {\n width: 0,\n margin: 0,\n margin2: 0\n }\n};\n\n/**\n * Boolean state that can also be awaited.\n */\nclass InitializationState {\n /** Whether this state is true or false. */\n private initialized = false;\n /** Promise used to await on. */\n private deferred = new Promise(resolve => {\n this.resolve = resolve;\n });\n /** Resolve function for the promise. */\n private resolve: () => void;\n\n /**\n * Sets the state to true and\n */\n set(): void {\n this.initialized = true;\n this.resolve();\n }\n\n /**\n * Gets a promise that resolves when this state is set to true.\n *\n * @returns A promise.\n */\n async wait(): Promise {\n return this.deferred;\n }\n\n /**\n * Gets the boolean state of this object.\n *\n * @returns true if set has been called.\n */\n valueOf(): boolean {\n return this.initialized;\n }\n}\n\n\n/**\n * Side drawer component.\n * Contains all the logic for opening/closing/expanding.\n */\n@Component({\n selector: 'ccf-drawer',\n exportAs: 'ccfDrawer',\n templateUrl: './drawer.component.html',\n styleUrls: ['./drawer.component.scss'],\n animations: [\n trigger('openClose', [\n state('open, open-instant', style({\n transform: 'none'\n })),\n state('closed', style({})),\n\n transition('closed => open-instant', animate(0)),\n transition('closed open, open-instant => closed', animate('.5s ease-in-out'))\n ]),\n trigger('expandCollapse', [\n state('collapsed', style({})),\n state('half', style({\n width: 'calc(50% - {{ margin }}px)'\n }), EXPAND_COLLAPSE_PARAMS_DEFAULT),\n state('extended', style({\n width: 'calc(100% - {{ width }}px - {{ margin }}px)'\n }), EXPAND_COLLAPSE_PARAMS_DEFAULT),\n state('full', style({\n width: 'calc(100% - {{ margin }}px - {{ margin2 }}px)'\n }), EXPAND_COLLAPSE_PARAMS_DEFAULT),\n\n transition('* *', animate('.5s ease-in-out'))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DrawerComponent implements AfterViewInit, OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer';\n /** Whether this is located at the end position. */\n @HostBinding('class.ccf-drawer-end') // eslint-disable-line\n get classEnd(): boolean {\n return this.position === 'end';\n }\n\n /** Position of the drawer - start (left) or end (right). */\n @Input()// eslint-disable-line\n get position(): 'start' | 'end' {\n return this._position;\n }\n set position(value: 'start' | 'end') {\n this._position = value || 'start';\n }\n /** Property for position getter/setter. */\n private _position: 'start' | 'end' = 'start';\n\n /** Whether the drawer is opened. */\n @Input() // eslint-disable-line\n @HostBinding('class.ccf-drawer-opened') // eslint-disable-line\n get opened(): boolean {\n return this._opened;\n }\n set opened(value: boolean) {\n this.toggle(coerceBooleanProperty(value));\n }\n /** Property for opened getter/setter. */\n private _opened = false;\n\n /** Whether the drawer is expanded. */\n @Input() // eslint-disable-line\n @HostBinding('class.ccf-drawer-expanded') // eslint-disable-line\n get expanded(): boolean {\n return this._expanded;\n }\n set expanded(value: boolean) {\n this.toggleExpanded(coerceBooleanProperty(value));\n }\n /** Property for expanded getter/setter */\n private _expanded = false;\n\n /** Output emitting when the drawer has opened. */\n @Output() readonly openedChange = new EventEmitter(true);\n /** Output emitting when the drawer has expanded. */\n @Output() readonly expandedChange = new EventEmitter(true);\n /** Output emitting whenever the drawer state changes. */\n @Output() readonly stateChange = new EventEmitter(true);\n\n /** Current open/close animation state. */\n @HostBinding('@openClose')\n openedState: OpenedState = 'closed';\n\n /** Expanded/collapsed state parameters. */\n @HostBinding('@expandCollapse') // eslint-disable-line\n get expandedStateObj(): unknown {\n return {\n value: this.expandedState2, params: {\n width: this.width, margin: this.measuredMargin,\n margin2: this.margin2\n }\n };\n }\n /** Current expanded/collapsed animation state. */\n expandedState: ExpandedState = 'closed';\n /** Current expanded state relative to the opposite drawer. */\n private expandedState2: ExpandedState2 = 'collapsed';\n\n /** Gets the calculated width of the drawer. */\n private get measuredWidth(): number {\n if (this._measuredWidth > 0) {\n return this._measuredWidth;\n }\n\n const element = this.element.nativeElement;\n if (!element) {\n return 0;\n }\n\n const bbox = element.getBoundingClientRect();\n const width = bbox.right - bbox.left;\n if (width === 0) {\n return 0;\n }\n\n this._measuredWidth = width;\n return width;\n }\n /** Cached measured width. */\n private _measuredWidth = 0;\n /** Width of opposite drawer. */\n private width = 0;\n\n /** Gets the calculated margin of the drawer. */\n private get measuredMargin(): number {\n if (this._measuredMargin > 0) {\n return this._measuredMargin;\n }\n\n const element = this.element.nativeElement;\n if (!element) {\n return 0;\n }\n\n const styles = globalThis.getComputedStyle(element);\n const property = this.position === 'start' ? 'margin-right' : 'margin-left';\n const value = styles.getPropertyValue(property);\n const margin = Number(value.slice(0, -2));\n\n this._measuredMargin = margin;\n return margin;\n }\n /** Cached measured margin. */\n private _measuredMargin = 0;\n /** Margin of the opposite drawer. */\n private margin2 = 0;\n\n /** Initialization state. */\n private initialized = new InitializationState();\n /** Connected message channel. */\n private channel: MessageChannel;\n /** Subscriptions managed by this component. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of drawer component.\n *\n * @param messageService Service for sending/receiving event messages.\n * @param cdr The change detector reference.\n * @param element Reference to components HTML element.\n */\n constructor(\n messageService: MessageService,\n cdr: ChangeDetectorRef,\n private readonly element: ElementRef\n ) {\n this.channel = messageService.connect(this);\n this.subscriptions.add(this.channel.getMessages().subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /**\n * Initializes this component.\n */\n ngAfterViewInit(): void {\n this.initialized.set();\n setTimeout(() => this.channel.sendMessage({ type: 'drawer-initialized' }));\n }\n\n /**\n * Cleans up all subscriptions.\n */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Opens the drawer.\n */\n open(): void {\n this.toggle(true);\n }\n\n /**\n * Closes the drawer.\n */\n close(): void {\n this.toggle(false);\n }\n\n /**\n * Toggles the drawer between opened and closed.\n *\n * @param [opened] Whether to open or close the drawer.\n */\n toggle(opened = !this.opened): void {\n if (this.opened === opened) {\n return;\n }\n\n if (!opened) {\n this.openedState = 'closed';\n this.expandedState = 'closed';\n this.expandedState2 = 'collapsed';\n this._expanded = false;\n } else if (this.initialized.valueOf()) {\n this.openedState = 'open';\n } else {\n this.openedState = 'open-instant';\n }\n\n this._opened = opened;\n this.sendToggle();\n }\n\n /**\n * Expands the drawer.\n */\n openExpanded(): void {\n this.toggleExpanded(true);\n }\n\n /**\n * Collapses the drawer.\n */\n closeExpanded(): void {\n this.toggleExpanded(false);\n }\n\n /**\n * Toggles the drawer between expanded and collapsed.\n *\n * @param [expanded] Whether to expand or collapse the drawer.\n */\n toggleExpanded(expanded = !this.expanded): void {\n if (this.expanded === expanded) {\n return;\n }\n\n if (!expanded) {\n this.expandedState = 'closed';\n this.expandedState2 = 'collapsed';\n } else if (this.initialized.valueOf()) {\n this.expandedState = 'open';\n } else {\n this.expandedState = 'open-instant';\n }\n\n this._expanded = expanded;\n this.sendToggle();\n }\n\n /**\n * Listener to open/close animation completion.\n */\n @HostListener('@openClose.done') // eslint-disable-line\n closeOpenDone(): void {\n this.openedChange.emit(this.opened);\n }\n\n /**\n * Listener to expand/collapse animation completion.\n */\n @HostListener('@expandCollapse.done') // eslint-disable-line\n expandCollapseDone(): void {\n this.expandedChange.emit(this.expanded);\n }\n\n /**\n * Sends a toggle event to the channel.\n * Waits until initialization is completed before sending.\n */\n private async sendToggle(): Promise {\n await this.initialized.wait();\n this.channel.sendMessage({\n type: 'drawer-toggled',\n opened: this.opened,\n expanded: this.expanded,\n width: this.measuredWidth,\n margin: this.measuredMargin\n });\n this.stateChange.emit();\n }\n\n /**\n * Processes an event.\n *\n * @param msg The event.\n * @returns true if change detection should run.\n */\n private handleMessage(msg: Message): boolean {\n switch (msg.payload.type) {\n case 'drawer-toggled': {\n const other = msg.source as DrawerComponent;\n this.syncExpanded(other);\n return true;\n }\n\n default:\n return false;\n }\n }\n\n /**\n * Syncs the drawer widths and margin against the opposite drawer.\n *\n * @param other The opposite drawer.\n */\n private syncExpanded(other: DrawerComponent): void {\n if (this.expanded || other.expanded) {\n if (this.expanded && other.expanded) {\n this.expandedState2 = other.expandedState2 = 'half';\n } else if (this.expanded) {\n if (other.opened) {\n this.expandedState2 = 'extended';\n this.width = other.measuredWidth + other.measuredMargin;\n } else {\n this.expandedState2 = 'full';\n this.margin2 = other.measuredMargin;\n }\n } else {\n if (this.opened) {\n other.expandedState2 = 'extended';\n other.width = this.measuredWidth + this.measuredMargin;\n } else {\n other.expandedState2 = 'full';\n other.margin2 = this.measuredMargin;\n }\n }\n }\n }\n\n /** Workaround for getter/setter pair not accepting different types. */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n static ngAcceptInputType_position: '' | 'start' | 'end';\n // eslint-disable-next-line @typescript-eslint/naming-convention\n static ngAcceptInputType_opened: BooleanInput;\n // eslint-disable-next-line @typescript-eslint/naming-convention\n static ngAcceptInputType_expanded: BooleanInput;\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ListResult.html":{"url":"interfaces/ListResult.html","title":"interface - ListResult","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ListResult\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/models/list-result.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n color\n \n \n \n Optional\n \n rank\n \n \n \n \n selected\n \n \n \n \n tissueBlock\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n color\n \n \n \n \n \n \n \n \n color: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n rank\n \n \n \n \n \n \n \n \n rank: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n selected\n \n \n \n \n \n \n \n \n selected: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueBlock\n \n \n \n \n \n \n \n \n tissueBlock: TissueBlockResult\n\n \n \n\n\n \n \n Type : TissueBlockResult\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { TissueBlockResult } from 'ccf-database';\n\nexport interface ListResult {\n selected: boolean;\n color?: string;\n tissueBlock: TissueBlockResult;\n rank?: number;\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ListResultsState.html":{"url":"injectables/ListResultsState.html","title":"injectable - ListResultsState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n ListResultsState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n\n\n\n \n Extends\n \n \n NgxsImmutableDataRepository\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n colorAssignments\n \n \n Private\n dataState\n \n \n Readonly\n highlightedNodeId$\n \n \n Readonly\n listResults$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n deselectListResult\n \n \n highlightNode\n \n \n ngxsOnInit\n \n \n selectListResult\n \n \n setListResults\n \n \n unHighlightNode\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(dataService: DataSourceService, injector: Injector)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:38\n \n \n\n \n \n Creates an instance of scene state.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dataService\n \n \n DataSourceService\n \n \n \n No\n \n \n \n \n \n \n injector\n \n \n Injector\n \n \n \n No\n \n \n \n Injector service used to lazy load data state\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n deselectListResult\n \n \n \n \n \n \ndeselectListResult(result: ListResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:66\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n result\n \n ListResult\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n highlightNode\n \n \n \n \n \n \nhighlightNode(id: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:70\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n id\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngxsOnInit\n \n \n \n \n \n \nngxsOnInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:81\n \n \n\n\n \n \n Initializes this state service.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n selectListResult\n \n \n \n \n \n \nselectListResult(result: ListResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:62\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n result\n \n ListResult\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n setListResults\n \n \n \n \n \n \nsetListResults(listResults: ListResult[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:58\n \n \n\n\n \n \n Sets the list results\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n listResults\n \n ListResult[]\n \n\n \n No\n \n\n\n \n The list of results to display\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n unHighlightNode\n \n \n \n \n \n \nunHighlightNode()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:74\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n colorAssignments\n \n \n \n \n \n \n Type : ColorAssignmentState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:38\n \n \n\n \n \n Color assignments state\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n dataState\n \n \n \n \n \n \n Type : DataState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:35\n \n \n\n \n \n The data state\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n highlightedNodeId$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('highlightedNodeId'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:31\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n listResults$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('listResults'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:30\n \n \n\n \n \n Scene to display in the 3d Scene\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { DataSourceService } from 'ccf-shared';\nimport { sortBy } from 'lodash';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, tap } from 'rxjs/operators';\n\nimport { ListResult } from '../../models/list-result';\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\n\n\nexport interface ListResultsStateModel {\n listResults: ListResult[];\n highlightedNodeId?: string;\n}\n\n@StateRepository()\n@State({\n name: 'listResults',\n defaults: {\n listResults: []\n }\n})\n@Injectable()\nexport class ListResultsState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Scene to display in the 3d Scene */\n readonly listResults$ = this.state$.pipe(pluck('listResults'), distinctUntilChanged());\n readonly highlightedNodeId$ = this.state$.pipe(pluck('highlightedNodeId'), distinctUntilChanged());\n\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the list results\n *\n * @param listResults The list of results to display\n */\n @DataAction()\n setListResults(@Payload('listResults') listResults: ListResult[]): void {\n this.ctx.patchState({ listResults });\n }\n\n selectListResult(result: ListResult): void {\n this.colorAssignments.assignColor(result.tissueBlock.spatialEntityId);\n }\n\n deselectListResult(result: ListResult): void {\n this.colorAssignments.unassignColor(result.tissueBlock.spatialEntityId);\n }\n\n highlightNode(id: string): void {\n this.ctx.patchState({ highlightedNodeId: id });\n }\n\n unHighlightNode(): void {\n this.ctx.patchState({ highlightedNodeId: undefined });\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n\n combineLatest([\n this.dataState.tissueBlockData$,\n this.colorAssignments.colorAssignments$\n ]).pipe(\n map(([tissueBlocks, colors]) => {\n const topBlocks: ListResult[] = [];\n const otherBlocks: ListResult[] = [];\n\n for (const tissueBlock of tissueBlocks) {\n const color = colors[tissueBlock.spatialEntityId];\n if (color) {\n topBlocks.push({\n selected: true, color: color.color, tissueBlock, rank: color.rank\n });\n } else {\n otherBlocks.push({\n selected: false, tissueBlock\n });\n }\n }\n\n return sortBy(topBlocks, ['rank']).concat(otherBlocks);\n }),\n tap(results => this.setListResults(results))\n ).subscribe();\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ListResultsStateModel.html":{"url":"interfaces/ListResultsStateModel.html","title":"interface - ListResultsStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ListResultsStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n highlightedNodeId\n \n \n \n \n listResults\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n highlightedNodeId\n \n \n \n \n \n \n \n \n highlightedNodeId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n listResults\n \n \n \n \n \n \n \n \n listResults: ListResult[]\n\n \n \n\n\n \n \n Type : ListResult[]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { DataSourceService } from 'ccf-shared';\nimport { sortBy } from 'lodash';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, tap } from 'rxjs/operators';\n\nimport { ListResult } from '../../models/list-result';\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\n\n\nexport interface ListResultsStateModel {\n listResults: ListResult[];\n highlightedNodeId?: string;\n}\n\n@StateRepository()\n@State({\n name: 'listResults',\n defaults: {\n listResults: []\n }\n})\n@Injectable()\nexport class ListResultsState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Scene to display in the 3d Scene */\n readonly listResults$ = this.state$.pipe(pluck('listResults'), distinctUntilChanged());\n readonly highlightedNodeId$ = this.state$.pipe(pluck('highlightedNodeId'), distinctUntilChanged());\n\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the list results\n *\n * @param listResults The list of results to display\n */\n @DataAction()\n setListResults(@Payload('listResults') listResults: ListResult[]): void {\n this.ctx.patchState({ listResults });\n }\n\n selectListResult(result: ListResult): void {\n this.colorAssignments.assignColor(result.tissueBlock.spatialEntityId);\n }\n\n deselectListResult(result: ListResult): void {\n this.colorAssignments.unassignColor(result.tissueBlock.spatialEntityId);\n }\n\n highlightNode(id: string): void {\n this.ctx.patchState({ highlightedNodeId: id });\n }\n\n unHighlightNode(): void {\n this.ctx.patchState({ highlightedNodeId: undefined });\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n\n combineLatest([\n this.dataState.tissueBlockData$,\n this.colorAssignments.colorAssignments$\n ]).pipe(\n map(([tissueBlocks, colors]) => {\n const topBlocks: ListResult[] = [];\n const otherBlocks: ListResult[] = [];\n\n for (const tissueBlock of tissueBlocks) {\n const color = colors[tissueBlock.spatialEntityId];\n if (color) {\n topBlocks.push({\n selected: true, color: color.color, tissueBlock, rank: color.rank\n });\n } else {\n otherBlocks.push({\n selected: false, tissueBlock\n });\n }\n }\n\n return sortBy(topBlocks, ['rank']).concat(otherBlocks);\n }),\n tap(results => this.setListResults(results))\n ).subscribe();\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/Message.html":{"url":"interfaces/Message.html","title":"interface - Message","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n Message\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n A message sent on a channel.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n payload\n \n \n \n \n source\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Unique identifier for a message.\n\n \n \n \n \n \n \n \n \n \n payload\n \n \n \n \n \n \n \n \n payload: T\n\n \n \n\n\n \n \n Type : T\n\n \n \n\n\n\n\n\n \n \n Data associated with this message.\n\n \n \n \n \n \n \n \n \n \n source\n \n \n \n \n \n \n \n \n source: \n\n \n \n\n\n\n\n\n\n\n \n \n Sender of the message.\n\n \n \n \n \n \n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/MessageChannel.html":{"url":"classes/MessageChannel.html","title":"class - MessageChannel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n MessageChannel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n Channel for sending and receiving messages.\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Static\n counter\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n getMessages\n \n \n getMessagesFromSource\n \n \n getMessagesFromSources\n \n \n Private\n nextMessageId\n \n \n sendMessage\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(source, channel: Subject>, messages: Observable>)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:50\n \n \n\n \n \n Creates a new channel.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n source\n \n \n \n \n \n No\n \n \n \n The message source.\n\n \n \n \n channel\n \n \n Subject>\n \n \n \n No\n \n \n \n The message send subject.\n\n \n \n \n messages\n \n \n Observable>\n \n \n \n No\n \n \n \n The message receive observable.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Static\n counter\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:50\n \n \n\n \n \n Counter used to give each message a unique id.\n\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getMessages\n \n \n \n \n \n \ngetMessages()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:83\n \n \n\n\n \n \n Gets an observable emitting all messages except for those sent by this source.\n\n\n \n \n \n Returns : Observable>\n\n \n \n The message observable.\n\n \n \n \n \n \n \n \n \n \n \n \n getMessagesFromSource\n \n \n \n \n \n \ngetMessagesFromSource(source)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:93\n \n \n\n\n \n \n Gets an observable emitting messages sent from a specific source.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n source\n\n \n No\n \n\n\n \n The source messages are filtered on.\n\n \n \n \n \n \n \n \n \n Returns : Observable>\n\n \n \n The message observable.\n\n \n \n \n \n \n \n \n \n \n \n \n getMessagesFromSources\n \n \n \n \n \n \ngetMessagesFromSources(sources: [])\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:103\n \n \n\n\n \n \n Gets an observable emitting messages sent from any of the specified sources.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n sources\n \n []\n \n\n \n No\n \n\n\n \n The sources messages are filtered on.\n\n \n \n \n \n \n \n \n \n Returns : Observable>\n\n \n \n The message observable.\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n nextMessageId\n \n \n \n \n \n \n \n nextMessageId()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:112\n \n \n\n\n \n \n Creates a unique message identifier.\n\n\n \n \n \n Returns : number\n\n \n \n The identifier number.\n\n \n \n \n \n \n \n \n \n \n \n \n sendMessage\n \n \n \n \n \n \nsendMessage(payload: T)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:70\n \n \n\n\n \n \n Sends a single message with a payload.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n payload\n \n T\n \n\n \n No\n \n\n\n \n The message payload.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/MessageService.html":{"url":"injectables/MessageService.html","title":"injectable - MessageService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n MessageService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n Service for creating message channels.\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n channel\n \n \n Private\n messages\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n connect\n \n \n ngOnDestroy\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(config: MessageServiceConfig, parent: MessageService | null)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:130\n \n \n\n \n \n Creates an instance of message service.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n \n MessageServiceConfig\n \n \n \n No\n \n \n \n The configuration for this service.\n\n \n \n \n parent\n \n \n MessageService | null\n \n \n \n No\n \n \n \n The parent message service, if any.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n connect\n \n \n \n \n \n \nconnect(source)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:163\n \n \n\n\n \n \n Connects to a message channel.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n source\n\n \n No\n \n\n\n \n The source of messages sent.\n\n \n \n \n \n \n \n \n \n Returns : MessageChannel\n\n \n \n A new connected message channel.\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:153\n \n \n\n\n \n \n Clean up.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n channel\n \n \n \n \n \n \n Default value : new Subject>()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:128\n \n \n\n \n \n The message channel.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n messages\n \n \n \n \n \n \n Type : Observable>\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:130\n \n \n\n \n \n The message listener.\n\n \n \n\n \n \n\n\n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/MessageServiceConfig.html":{"url":"interfaces/MessageServiceConfig.html","title":"interface - MessageServiceConfig","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n MessageServiceConfig\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n Message service configuration options.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n isolated\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n isolated\n \n \n \n \n \n \n \n \n isolated: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Whether to listen to parent messages.\n\n \n \n \n \n \n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologyExplorationModule.html":{"url":"modules/OntologyExplorationModule.html","title":"module - OntologyExplorationModule","body":"\n \n\n\n\n\n Modules\n OntologyExplorationModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologyExplorationModule\n\n\n\ncluster_OntologyExplorationModule_imports\n\n\n\ncluster_OntologyExplorationModule_exports\n\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\n\n\nOntologyExplorationModule\n\nOntologyExplorationModule\n\nOntologyExplorationModule -->\n\nOntologySearchModule->OntologyExplorationModule\n\n\n\n\n\nOntologySelectionModule\n\nOntologySelectionModule\n\nOntologyExplorationModule -->\n\nOntologySelectionModule->OntologyExplorationModule\n\n\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologyExplorationModule -->\n\nOntologyTreeModule->OntologyExplorationModule\n\n\n\n\n\nOntologySearchModule \n\nOntologySearchModule \n\nOntologySearchModule -->\n\nOntologyExplorationModule->OntologySearchModule \n\n\n\n\n\nOntologySelectionModule \n\nOntologySelectionModule \n\nOntologySelectionModule -->\n\nOntologyExplorationModule->OntologySelectionModule \n\n\n\n\n\nOntologyTreeModule \n\nOntologyTreeModule \n\nOntologyTreeModule -->\n\nOntologyExplorationModule->OntologyTreeModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-exploration.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n OntologySearchModule\n \n \n OntologySelectionModule\n \n \n OntologyTreeModule\n \n \n \n \n Exports\n \n \n OntologySearchModule\n \n \n OntologySelectionModule\n \n \n OntologyTreeModule\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { OntologySearchModule } from './ontology-search/ontology-search.module';\nimport { OntologySelectionModule } from './ontology-selection/ontology-selection.module';\nimport { OntologyTreeModule } from './ontology-tree/ontology-tree.module';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OntologySearchModule,\n OntologyTreeModule,\n OntologySelectionModule\n ],\n exports: [OntologySearchModule, OntologyTreeModule, OntologySelectionModule]\n})\nexport class OntologyExplorationModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/OntologySearchComponent.html":{"url":"components/OntologySearchComponent.html","title":"component - OntologySearchComponent","body":"\n \n\n\n\n\n\n Components\n \n OntologySearchComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts\n\n\n\n \n Description\n \n \n Componenet for searching the Ontology nodes.\n\n \n\n\n \n Implements\n \n \n OnInit\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-ontology-search\n \n\n \n styleUrls\n ./ontology-search.component.scss\n \n\n\n\n \n templateUrl\n ./ontology-search.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n autoCompleteOpen\n \n \n filteredResults$\n \n \n formControl\n \n \n Public\n ontologyService\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n displayFormatter\n \n \n ngOnInit\n \n \n onSelect\n \n \n sortBySynonymResult\n \n \n sortLexically\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n placeholderText\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selected\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ontologyService: OntologySearchService, ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:45\n \n \n\n \n \n Creates an instance of ontology search component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ontologyService\n \n \n OntologySearchService\n \n \n \n No\n \n \n \n instance of searchService which provides all the search functionality\n\n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n placeholderText\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:23\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selected\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:29\n \n \n \n \n Output event-emitter which emits the id of the OntologyTreeNode whose label was\nselected by the user in the search-results\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n displayFormatter\n \n \n \n \n \n \ndisplayFormatter(option?: SearchResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:78\n \n \n\n\n \n \n A formatter function to enable different display and selected value\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n option\n \n SearchResult\n \n\n \n Yes\n \n\n\n \n a search result entry\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n a part of the search result entry to be displayed as a display value\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:60\n \n \n\n\n \n \n on-init lifecycle hook for this component -\ngets the searched value from the view, sends it to the filter function in the OntologyService,\nand gets the search results from the service\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n onSelect\n \n \n \n \n \n \nonSelect(event: MatAutocompleteSelectedEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:107\n \n \n\n\n \n \n Callback function triggered when the user selects a value from search results\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n MatAutocompleteSelectedEvent\n \n\n \n No\n \n\n\n \n instance of MatAutocompleteSelectedEvent\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n sortBySynonymResult\n \n \n \n \n \n \nsortBySynonymResult(this: void, entry: SearchResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:88\n \n \n\n\n \n \n Sorts by results which have synonyms\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n this\n \n void\n \n\n \n No\n \n\n\n \n \n \n \n entry\n \n SearchResult\n \n\n \n No\n \n\n\n \n search result entry\n\n \n \n \n \n \n \n \n \n Returns : number\n\n \n \n 1 or -1\n\n \n \n \n \n \n \n \n \n \n \n \n sortLexically\n \n \n \n \n \n \nsortLexically(this: void, entry: SearchResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:98\n \n \n\n\n \n \n Sorts lexically\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n this\n \n void\n \n\n \n No\n \n\n\n \n \n \n \n entry\n \n SearchResult\n \n\n \n No\n \n\n\n \n search result entry\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n lower case value of node label\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n autoCompleteOpen\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:40\n \n \n\n \n \n Determines if autocomplete is open or close.\n\n \n \n\n \n \n \n \n \n \n \n \n filteredResults$\n \n \n \n \n \n \n Type : Observable\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:45\n \n \n\n \n \n Observable which provides the filtered search results\n\n \n \n\n \n \n \n \n \n \n \n \n formControl\n \n \n \n \n \n \n Default value : new FormControl('')\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:34\n \n \n\n \n \n Instance of FormControl - tracks the value and validation status of an individual form control\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n ontologyService\n \n \n \n \n \n \n Type : OntologySearchService\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:53\n \n \n\n \n \n instance of searchService which provides all the search functionality\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, OnInit, Input, Output } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\nimport { OntologyTreeNode } from 'ccf-database';\nimport { get, sortBy } from 'lodash';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\nimport { Observable } from 'rxjs';\nimport { filter, map, startWith, switchMap } from 'rxjs/operators';\n\nimport { OntologySearchService, SearchResult } from '../../../core/services/ontology-search/ontology-search.service';\n\n\n/**\n * Componenet for searching the Ontology nodes.\n */\n@Component({\n selector: 'ccf-ontology-search',\n templateUrl: './ontology-search.component.html',\n styleUrls: ['./ontology-search.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OntologySearchComponent implements OnInit {\n @Input() placeholderText: string;\n\n /**\n * Output event-emitter which emits the id of the OntologyTreeNode whose label was\n * selected by the user in the search-results\n */\n @Output() readonly selected = new EventEmitter();\n\n /**\n * Instance of FormControl - tracks the value and validation status of an individual form control\n */\n formControl = new FormControl('');\n\n\n /**\n * Determines if autocomplete is open or close.\n */\n autoCompleteOpen = false;\n\n /**\n * Observable which provides the filtered search results\n */\n filteredResults$: Observable;\n\n /**\n * Creates an instance of ontology search component.\n *\n * @param ontologyService instance of searchService which provides all the search functionality\n * @param ga Analytics service\n */\n constructor(public ontologyService: OntologySearchService, private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * on-init lifecycle hook for this component -\n * gets the searched value from the view, sends it to the filter function in the OntologyService,\n * and gets the search results from the service\n */\n ngOnInit(): void {\n const valueChanges = this.formControl.valueChanges as Observable;\n this.filteredResults$ = valueChanges.pipe(\n filter(value => typeof value === 'string'),\n startWith(''),\n switchMap(value => this.ontologyService.filter(value)),\n map(searchResults => sortBy(searchResults, [\n this.sortBySynonymResult, 'index', this.sortLexically\n ]))\n );\n }\n\n /**\n * A formatter function to enable different display and selected value\n *\n * @param option a search result entry\n * @returns a part of the search result entry to be displayed as a display value\n */\n displayFormatter(option?: SearchResult): string {\n return (option?.displayLabel ?? []).join('');\n }\n\n /**\n * Sorts by results which have synonyms\n *\n * @param entry search result entry\n * @returns 1 or -1\n */\n sortBySynonymResult(this: void, entry: SearchResult): number {\n return entry.displayLabel.join().includes('(') ? 1 : -1;\n }\n\n /**\n * Sorts lexically\n *\n * @param entry search result entry\n * @returns lower case value of node label\n */\n sortLexically(this: void, entry: SearchResult): string {\n return entry.node.label.toLowerCase();\n }\n\n /**\n * Callback function triggered when the user selects a value from search results\n *\n * @param event instance of MatAutocompleteSelectedEvent\n */\n onSelect(event: MatAutocompleteSelectedEvent): void {\n const node = get(event, ['option', 'value', 'node']) as OntologyTreeNode;\n if (node) {\n this.ga.event('search', 'ontology_search', node.id);\n this.selected.emit(node);\n this.formControl.reset();\n }\n }\n}\n\n \n\n \n \n \n search\n \n\n \n \n \n {{option.displayLabel[0]}}\n {{option.displayLabel[1]}}\n {{option.displayLabel[2]}}\n \n \n \n \n\n\n \n\n \n \n ./ontology-search.component.scss\n \n .ccf-ontology-search {\n width: 100%;\n\n .field {\n width: 100%;\n \n }\n\n ::ng-deep .mat-form-field-appearance-outline {\n .mat-form-field-outline-end {\n border-radius: 0 0.25rem 0.25rem 0;\n margin: 0;\n }\n\n .mat-form-field-wrapper {\n margin: 0;\n \n\n .mat-form-field-flex {\n .mat-form-field-infix {\n border: none;\n height: 3rem;\n \n\n input {\n margin-left: .4rem;\n }\n }\n .mat-form-field-prefix {\n top: .5rem;\n border: none;\n }\n }\n }\n\n .mat-form-field-outline-start {\n border-radius: 0.25rem 0 0 0.25rem;\n min-width: 2.5rem;\n\t }\n }\n}\n\n::ng-deep .ccf-ontology-search.detached {\n border: 0.125rem solid;\n border-top: none;\n border-radius: 0 0 0.25rem 0.25rem;\n max-height: 18rem;\n\n .results-container {\n width: 23.75rem;\n margin-bottom: 1rem;\n overflow: auto;\n max-height: 15rem;\n scrollbar-width: thin;\n\n mat-option {\n height: 1.5rem;\n width: 23.75rem;\n \n .search-term {\n text-decoration: underline;\n }\n }\n }\n\n}\n\n.autocomplete-open {\n ::ng-deep .mat-form-field-appearance-outline {\n .mat-form-field-outline-start {\n border-radius: 0.25rem 0 0 0;\n border-bottom: none;\n }\n\n .mat-form-field-outline-end {\n border-radius: 0 0.25rem 0 0;\n border-bottom: none;\n }\n }\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' search {{option.displayLabel[0]}} {{option.displayLabel[1]}} {{option.displayLabel[2]}} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'OntologySearchComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologySearchModule.html":{"url":"modules/OntologySearchModule.html","title":"module - OntologySearchModule","body":"\n \n\n\n\n\n Modules\n OntologySearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologySearchModule\n\n\n\ncluster_OntologySearchModule_declarations\n\n\n\ncluster_OntologySearchModule_exports\n\n\n\n\nOntologySearchComponent\n\nOntologySearchComponent\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\nOntologySearchModule -->\n\nOntologySearchComponent->OntologySearchModule\n\n\n\n\n\nOntologySearchComponent \n\nOntologySearchComponent \n\nOntologySearchComponent -->\n\nOntologySearchModule->OntologySearchComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n OntologySearchComponent\n \n \n \n \n Exports\n \n \n OntologySearchComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\n\nimport { OntologySearchComponent } from './ontology-search.component';\nimport { MatFormFieldModule } from '@angular/material/form-field';\n\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n MatIconModule\n ],\n declarations: [OntologySearchComponent],\n exports: [OntologySearchComponent]\n})\nexport class OntologySearchModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/OntologySearchService.html":{"url":"injectables/OntologySearchService.html","title":"injectable - OntologySearchService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n OntologySearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n\n\n \n Description\n \n \n Injectable OntologySearchService responsible for search result computations\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n Readonly\n nodes$\n \n \n Public\n Readonly\n rootNode$\n \n \n Private\n treeModel\n \n \n Private\n Readonly\n treeModel$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n filter\n \n \n formatLabel\n \n \n getChildren\n \n \n getIndexOfMatch\n \n \n Private\n lookup\n \n \n setTreeModel\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n filter\n \n \n \n \n \n \nfilter(value: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:50\n \n \n\n\n \n \n Searches the ontology with the search-term\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n value\n \n string\n \n\n \n No\n \n\n\n \n the search term\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n an array of search-results\n\n \n \n \n \n \n \n \n \n \n \n \n formatLabel\n \n \n \n \n \n \nformatLabel(label: string, searchValue: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:111\n \n \n\n\n \n \n Formats label based on where the search-term was found in the OntologyTreeNode\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n label\n \n string\n \n\n \n No\n \n\n\n \n label or first synonym-label of OntologyTreeNode which has the search-term\n\n \n \n \n searchValue\n \n string\n \n\n \n No\n \n\n\n \n search-term\n\n \n \n \n \n \n \n \n \n Returns : string[]\n\n \n \n an array in the form of [prefix, search-term, suffix]\n\n \n \n \n \n \n \n \n \n \n \n \n getChildren\n \n \n \n \n \n \ngetChildren(node: OntologyTreeNode)\n \n \n\n \n \n Decorators : \n \n @bind()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:128\n \n \n\n\n \n \n Fetches the children of an ontology node.\nNote: This can be called without a reference to this.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n node\n \n OntologyTreeNode\n \n\n \n No\n \n\n\n \n The node for which to get children.\n\n \n \n \n \n \n \n \n \n Returns : OntologyTreeNode[]\n\n \n \n An array of children, empty if the node has no children.\n\n \n \n \n \n \n \n \n \n \n \n \n getIndexOfMatch\n \n \n \n \n \n \ngetIndexOfMatch(label: string, searchValue: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:100\n \n \n\n\n \n \n Gets index of match in the ontology label\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n label\n \n string\n \n\n \n No\n \n\n\n \n the provided ontology node label or synonym label\n\n \n \n \n searchValue\n \n string\n \n\n \n No\n \n\n\n \n the searched text in lower case\n\n \n \n \n \n \n \n \n \n Returns : number\n\n \n \n the index of the match in the label\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n lookup\n \n \n \n \n \n \n \n lookup(nodes: Immutable[], searchValue: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:63\n \n \n\n\n \n \n looks up ontology nodes and composes search results\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n nodes\n \n Immutable[]\n \n\n \n No\n \n\n\n \n Ontology nodes\n\n \n \n \n searchValue\n \n string\n \n\n \n No\n \n\n\n \n search text in lower case\n\n \n \n \n \n \n \n \n \n Returns : SearchResult[]\n\n \n \n search results\n\n \n \n \n \n \n \n \n \n \n \n \n setTreeModel\n \n \n \n \n \n \nsetTreeModel(treeModel: OntologyTreeModel)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:39\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n treeModel\n \n OntologyTreeModel\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n Readonly\n nodes$\n \n \n \n \n \n \n Default value : this.treeModel$.pipe(map(state => Object.values(state.nodes)))\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:34\n \n \n\n \n \n All nodes in the ontology tree.\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n Readonly\n rootNode$\n \n \n \n \n \n \n Default value : this.treeModel$.pipe(map(state => state.nodes[state.root]))\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:37\n \n \n\n \n \n Root node of the ontology tree.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n treeModel\n \n \n \n \n \n \n Type : OntologyTreeModel\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:31\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n Readonly\n treeModel$\n \n \n \n \n \n \n Default value : new ReplaySubject(1)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:30\n \n \n\n\n \n \n\n\n \n\n\n \n import { Immutable } from '@angular-ru/common/typings';\nimport { Injectable } from '@angular/core';\nimport { bind } from 'bind-decorator';\nimport { OntologyTreeModel, OntologyTreeNode } from 'ccf-database';\nimport { at } from 'lodash';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n\n/**\n * Search result interface type for the search results\n */\nexport interface SearchResult {\n /** ensures order of search-results */\n index: number;\n\n /** label to be displayed in the view */\n displayLabel: string[];\n\n /** instance of OntologyTreeNode, provides data associated with a search result */\n node: OntologyTreeNode;\n}\n\n/**\n * Injectable OntologySearchService responsible for search result computations\n */\n@Injectable()\nexport class OntologySearchService {\n private readonly treeModel$ = new ReplaySubject(1);\n private treeModel: OntologyTreeModel;\n\n /** All nodes in the ontology tree. */\n public readonly nodes$ = this.treeModel$.pipe(map(state => Object.values(state.nodes)));\n\n /** Root node of the ontology tree. */\n public readonly rootNode$ = this.treeModel$.pipe(map(state => state.nodes[state.root]));\n\n setTreeModel(treeModel: OntologyTreeModel): void {\n this.treeModel$.next(treeModel);\n this.treeModel = treeModel;\n }\n\n /**\n * Searches the ontology with the search-term\n *\n * @param value the search term\n * @returns an array of search-results\n */\n filter(value: string): Observable {\n return this.nodes$.pipe(\n map(nodes => this.lookup(nodes, value.toLowerCase()))\n );\n }\n\n /**\n * looks up ontology nodes and composes search results\n *\n * @param nodes Ontology nodes\n * @param searchValue search text in lower case\n * @returns search results\n */\n private lookup(nodes: Immutable[], searchValue: string): SearchResult[] {\n const searchResults = new Map();\n\n if (nodes) {\n nodes.forEach((node: OntologyTreeNode) => {\n const condition = node.label.toLowerCase().includes(searchValue);\n\n if (condition && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label, searchValue),\n displayLabel: this.formatLabel(node.label, searchValue),\n node\n });\n } else {\n const match = node.synonymLabels.find((label) => label.toLowerCase().includes(searchValue));\n\n if (match && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label + ' (' + match + ')', searchValue),\n displayLabel: this.formatLabel(node.label + ' (' + match + ')', searchValue),\n node\n });\n }\n }\n });\n }\n\n return Array.from(searchResults.values());\n }\n\n /**\n * Gets index of match in the ontology label\n *\n * @param label the provided ontology node label or synonym label\n * @param searchValue the searched text in lower case\n * @returns the index of the match in the label\n */\n getIndexOfMatch(label: string, searchValue: string): number {\n return label.toLowerCase().indexOf(searchValue);\n }\n\n /**\n * Formats label based on where the search-term was found in the OntologyTreeNode\n *\n * @param label label or first synonym-label of OntologyTreeNode which has the search-term\n * @param searchValue search-term\n * @returns an array in the form of [prefix, search-term, suffix]\n */\n formatLabel(label: string, searchValue: string): string[] {\n const index = this.getIndexOfMatch(label, searchValue);\n return [\n label.slice(0, index),\n label.slice(index, index + searchValue.length),\n label.slice(index + searchValue.length)\n ];\n }\n\n /**\n * Fetches the children of an ontology node.\n * Note: This can be called without a reference to `this`.\n *\n * @param node The node for which to get children.\n * @returns An array of children, empty if the node has no children.\n */\n @bind\n getChildren(node: OntologyTreeNode): OntologyTreeNode[] {\n const nodes = this.treeModel?.nodes ?? {};\n return at(nodes, node.children);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/OntologySelection.html":{"url":"interfaces/OntologySelection.html","title":"interface - OntologySelection","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n OntologySelection\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/models/ontology-selection.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n label\n \n \n \n \n location\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n label\n \n \n \n \n \n \n \n \n label: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n location\n \n \n \n \n \n \n \n \n location: OntologyTreeNode | undefined\n\n \n \n\n\n \n \n Type : OntologyTreeNode | undefined\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { OntologyTreeNode } from 'ccf-database';\n\nexport interface OntologySelection {\n location: OntologyTreeNode | undefined;\n id: string;\n label: string;\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/OntologySelectionComponent.html":{"url":"components/OntologySelectionComponent.html","title":"component - OntologySelectionComponent","body":"\n \n\n\n\n\n\n Components\n \n OntologySelectionComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts\n\n\n\n \n Description\n \n \n Ontology selection component that encapsulates ontology search and tree components.\n\n \n\n\n \n Implements\n \n \n OnChanges\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n \n providers\n \n OntologySearchService\n \n \n\n\n \n selector\n ccf-ontology-selection\n \n\n \n styleUrls\n ./ontology-selection.component.scss\n \n\n\n\n \n templateUrl\n ./ontology-selection.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n ontologySearchService\n \n \n tree\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n ngOnChanges\n \n \n selected\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n header\n \n \n occurenceData\n \n \n ontologyFilter\n \n \n placeholderText\n \n \n termData\n \n \n treeModel\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n ontologySelection\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ontologySearchService: OntologySearchService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:53\n \n \n\n \n \n Creates an instance of ontology selection component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ontologySearchService\n \n \n OntologySearchService\n \n \n \n No\n \n \n \n Service for searching the ontology.\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n header\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:47\n \n \n \n \n \n \n \n \n \n occurenceData\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:28\n \n \n \n \n A record of terms within the current filter. To be passed on to ontology-tree\n\n \n \n \n \n \n \n \n \n \n ontologyFilter\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:45\n \n \n \n \n Input list of selected ontology terms passed down to ontology-tree.\nUsed to change display of ontology tree when selection is made from\noutside the component.\n\n \n \n \n \n \n \n \n \n \n placeholderText\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:48\n \n \n \n \n \n \n \n \n \n termData\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:33\n \n \n \n \n A record of terms the app currently has data for. To be passed on to ontology-tree\n\n \n \n \n \n \n \n \n \n \n treeModel\n \n \n \n \n Type : OntologyTreeModel\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:38\n \n \n \n \n The ontology tree model to display\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n ontologySelection\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:53\n \n \n \n \n Captures and passes along the change in ontologySelections.\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngOnChanges\n \n \n \n \n \n \nngOnChanges(changes: SimpleChanges)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:64\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n changes\n \n SimpleChanges\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n selected\n \n \n \n \n \n \nselected(ontologyNode: OntologyTreeNode)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:75\n \n \n\n\n \n \n Ontology selection event when node is selected from the search results.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ontologyNode\n \n OntologyTreeNode\n \n\n \n No\n \n\n\n \n selected ontology node.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n ontologySearchService\n \n \n \n \n \n \n Type : OntologySearchService\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:61\n \n \n\n \n \n Service for searching the ontology.\n \n \n\n \n \n \n \n \n \n \n \n tree\n \n \n \n \n \n \n Type : OntologyTreeComponent\n\n \n \n \n \n Decorators : \n \n \n @ViewChild(OntologyTreeComponent, {static: false})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:23\n \n \n\n \n \n View child of search component\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core';\nimport { OntologyTreeModel, OntologyTreeNode } from 'ccf-database';\n\nimport { OntologySelection } from '../../../core/models/ontology-selection';\nimport { OntologySearchService } from '../../../core/services/ontology-search/ontology-search.service';\nimport { OntologyTreeComponent } from '../ontology-tree/ontology-tree.component';\n\n\n/**\n * Ontology selection component that encapsulates ontology search and tree components.\n */\n@Component({\n selector: 'ccf-ontology-selection',\n templateUrl: './ontology-selection.component.html',\n styleUrls: ['./ontology-selection.component.scss'],\n providers: [OntologySearchService],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OntologySelectionComponent implements OnChanges {\n /**\n * View child of search component\n */\n @ViewChild(OntologyTreeComponent, { static: false }) tree: OntologyTreeComponent;\n\n /**\n * A record of terms within the current filter. To be passed on to ontology-tree\n */\n @Input() occurenceData: Record;\n\n /**\n * A record of terms the app currently has data for. To be passed on to ontology-tree\n */\n @Input() termData: Record;\n\n /**\n * The ontology tree model to display\n */\n @Input() treeModel: OntologyTreeModel;\n\n /**\n * Input list of selected ontology terms passed down to ontology-tree.\n * Used to change display of ontology tree when selection is made from\n * outside the component.\n */\n @Input() ontologyFilter: string[];\n\n @Input() header: boolean;\n @Input() placeholderText: string;\n\n /**\n * Captures and passes along the change in ontologySelections.\n */\n @Output() readonly ontologySelection = new EventEmitter();\n\n /**\n * Creates an instance of ontology selection component.\n *\n * @param ontologySearchService Service for searching the ontology.\n */\n constructor(\n public ontologySearchService: OntologySearchService,\n ) { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if ('treeModel' in changes && this.treeModel) {\n this.ontologySearchService.setTreeModel(this.treeModel);\n }\n }\n\n /**\n * Ontology selection event when node is selected from the search results.\n *\n * @param ontologyNode selected ontology node.\n */\n selected(ontologyNode: OntologyTreeNode): void {\n const nodes = this.treeModel?.nodes ?? {};\n this.tree.expandAndSelect(ontologyNode, node => nodes[node.parent]);\n }\n}\n\n \n\n \n \n\n\n \n\n \n \n ./ontology-selection.component.scss\n \n \n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'OntologySelectionComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologySelectionModule.html":{"url":"modules/OntologySelectionModule.html","title":"module - OntologySelectionModule","body":"\n \n\n\n\n\n Modules\n OntologySelectionModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologySelectionModule\n\n\n\ncluster_OntologySelectionModule_OntologySelectionComponent_providers\n\n\n\ncluster_OntologySelectionModule_imports\n\n\n\ncluster_OntologySelectionModule_exports\n\n\n\n\nOntologySelectionComponent\n\nOntologySelectionComponent\n\n\n\nOntologySelectionModule\n\nOntologySelectionModule\n\nOntologySelectionModule -->\n\nOntologySelectionComponent->OntologySelectionModule\n\n\n\n\n\nOntologySelectionComponent \n\nOntologySelectionComponent \n\nOntologySelectionComponent -->\n\nOntologySelectionModule->OntologySelectionComponent \n\n\n\n\n\nOntologySearchService\n\nOntologySearchService\n\nOntologySelectionComponent -->\n\nOntologySearchService->OntologySelectionComponent\n\n\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\nOntologySelectionModule -->\n\nOntologySearchModule->OntologySelectionModule\n\n\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologySelectionModule -->\n\nOntologyTreeModule->OntologySelectionModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n OntologySelectionComponent\n \n \n \n \n Imports\n \n \n OntologySearchModule\n \n \n OntologyTreeModule\n \n \n \n \n Exports\n \n \n OntologySelectionComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { OntologySearchModule } from '../ontology-search/ontology-search.module';\nimport { OntologyTreeModule } from '../ontology-tree/ontology-tree.module';\nimport { OntologySelectionComponent } from './ontology-selection.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OntologySearchModule,\n OntologyTreeModule\n ],\n declarations: [OntologySelectionComponent],\n exports: [OntologySelectionComponent],\n})\nexport class OntologySelectionModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologyTreeModule.html":{"url":"modules/OntologyTreeModule.html","title":"module - OntologyTreeModule","body":"\n \n\n\n\n\n Modules\n OntologyTreeModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologyTreeModule\n\n\n\ncluster_OntologyTreeModule_declarations\n\n\n\ncluster_OntologyTreeModule_exports\n\n\n\n\nOntologyTreeComponent\n\nOntologyTreeComponent\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologyTreeModule -->\n\nOntologyTreeComponent->OntologyTreeModule\n\n\n\n\n\nOntologyTreeComponent \n\nOntologyTreeComponent \n\nOntologyTreeComponent -->\n\nOntologyTreeModule->OntologyTreeComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n OntologyTreeComponent\n \n \n \n \n Exports\n \n \n OntologyTreeComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatTreeModule } from '@angular/material/tree';\n\nimport { OntologyTreeComponent } from './ontology-tree.component';\nimport { OpacitySliderModule } from 'ccf-shared';\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTreeModule,\n OpacitySliderModule\n ],\n declarations: [OntologyTreeComponent],\n exports: [OntologyTreeComponent],\n})\nexport class OntologyTreeModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ResultsBrowserComponent.html":{"url":"components/ResultsBrowserComponent.html","title":"component - ResultsBrowserComponent","body":"\n \n\n\n\n\n\n Components\n \n ResultsBrowserComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts\n\n\n\n \n Description\n \n \n ResultsBrowser is the container component in charge of rendering the label and stats of\nthe results as well as handling the virtual scrolling and click emitters of\nResultsBrowserItems.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-results-browser\n \n\n \n styleUrls\n ./results-browser.component.scss\n \n\n\n\n \n templateUrl\n ./results-browser.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n atScrollBottom\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n handleHover\n \n \n handleLinkClick\n \n \n handleSelection\n \n \n handleUnhover\n \n \n onScroll\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n aggregateData\n \n \n header\n \n \n highlighted\n \n \n listResults\n \n \n resultLabel\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n itemHovered\n \n \n itemUnhovered\n \n \n linkClicked\n \n \n listResultDeselected\n \n \n listResultSelected\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:64\n \n \n\n \n \n Creates an instance of results browser component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n aggregateData\n \n \n \n \n Type : Immutable\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:29\n \n \n \n \n Input used to add a list of stats at the top the results browser\n\n \n \n \n \n \n \n \n \n \n header\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:38\n \n \n \n \n \n \n \n \n \n highlighted\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:36\n \n \n \n \n \n \n \n \n \n listResults\n \n \n \n \n Type : Immutable\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:24\n \n \n \n \n Input array of List Results to display\n\n \n \n \n \n \n \n \n \n \n resultLabel\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:34\n \n \n \n \n Input allowing the title of the result browser to be set outside of the component\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n itemHovered\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:56\n \n \n \n \n \n \n \n \n \n itemUnhovered\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:58\n \n \n \n \n \n \n \n \n \n linkClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:44\n \n \n \n \n Output emitting the result that was clicked on and its relevant information.\nUsed for opening and rendering the result viewer.\n\n \n \n \n \n \n \n \n \n \n listResultDeselected\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:54\n \n \n \n \n Output emitting the link result deselected\n\n \n \n \n \n \n \n \n \n \n listResultSelected\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:49\n \n \n \n \n Output emitting the link result selected\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n handleHover\n \n \n \n \n \n \nhandleHover(id: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:111\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n id\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n handleLinkClick\n \n \n \n \n \n \nhandleLinkClick(link: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:93\n \n \n\n\n \n \n Notifies on link click\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n link\n \n string\n \n\n \n No\n \n\n\n \n the link clicked\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n handleSelection\n \n \n \n \n \n \nhandleSelection(result: Immutable, selected: boolean)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:79\n \n \n\n\n \n \n Notifies listeners when a selection/deselection is made\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n result\n \n Immutable\n \n\n \n No\n \n\n\n \n the list result\n\n \n \n \n selected\n \n boolean\n \n\n \n No\n \n\n\n \n whether to select or deselect the result\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n handleUnhover\n \n \n \n \n \n \nhandleUnhover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:115\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n onScroll\n \n \n \n \n \n \nonScroll(event: UIEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:102\n \n \n\n\n \n \n Handles the scroll event to detect when scroll is at the bottom.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n UIEvent\n \n\n \n No\n \n\n\n \n The scroll event.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n atScrollBottom\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:64\n \n \n\n \n \n Keeps track of whether or not the virtual scroll viewport is scrolled all the way to the bottom.\nUsed to determine whether or not to render the gradient at the bottom.\n\n \n \n\n \n \n\n\n\n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { AggregateResult } from 'ccf-database';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\nimport { ListResult } from '../../../core/models/list-result';\n\n\n/**\n * ResultsBrowser is the container component in charge of rendering the label and stats of\n * the results as well as handling the virtual scrolling and click emitters of\n * ResultsBrowserItems.\n */\n@Component({\n selector: 'ccf-results-browser',\n templateUrl: './results-browser.component.html',\n styleUrls: ['./results-browser.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ResultsBrowserComponent {\n /**\n * Input array of List Results to display\n */\n @Input() listResults: Immutable;\n\n /**\n * Input used to add a list of stats at the top the results browser\n */\n @Input() aggregateData: Immutable;\n\n /**\n * Input allowing the title of the result browser to be set outside of the component\n */\n @Input() resultLabel: string;\n\n @Input() highlighted: string;\n\n @Input() header: boolean;\n\n /**\n * Output emitting the result that was clicked on and its relevant information.\n * Used for opening and rendering the result viewer.\n */\n @Output() readonly linkClicked = new EventEmitter();\n\n /**\n * Output emitting the link result selected\n */\n @Output() readonly listResultSelected = new EventEmitter>();\n\n /**\n * Output emitting the link result deselected\n */\n @Output() readonly listResultDeselected = new EventEmitter>();\n\n @Output() readonly itemHovered = new EventEmitter();\n\n @Output() readonly itemUnhovered = new EventEmitter();\n\n /**\n * Keeps track of whether or not the virtual scroll viewport is scrolled all the way to the bottom.\n * Used to determine whether or not to render the gradient at the bottom.\n */\n atScrollBottom = false;\n\n /**\n * Creates an instance of results browser component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Notifies listeners when a selection/deselection is made\n *\n * @param result the list result\n * @param selected whether to select or deselect the result\n */\n handleSelection(result: Immutable, selected: boolean): void {\n this.ga.event('list_result_selected', 'results_browser', this.resultLabel, +selected);\n if (selected) {\n this.listResultSelected.next(result);\n } else {\n this.listResultDeselected.next(result);\n }\n }\n\n /**\n * Notifies on link click\n *\n * @param link the link clicked\n */\n handleLinkClick(link: string): void {\n this.linkClicked.emit(link);\n }\n\n /**\n * Handles the scroll event to detect when scroll is at the bottom.\n *\n * @param event The scroll event.\n */\n onScroll(event: UIEvent): void {\n if (!event.target) {\n return;\n }\n const { clientHeight, scrollHeight, scrollTop } = event.target as Element;\n const diff = scrollHeight - scrollTop - clientHeight;\n this.atScrollBottom = diff \n \n\n \n \n \n {{ resultLabel }}\n \n {{stat.count}}\n {{stat.label}}\n \n \n\n \n \n \n \n \n \n\n\n \n\n \n \n ./results-browser.component.scss\n \n .results-browser-container {\n display: flex;\n flex-direction: column;\n height: calc(100% - 3rem);\n padding: 0 1.5rem 1.5rem 1.5rem;\n\n .stat-box {\n margin-bottom: 1.5rem;\n line-height: 1.25;\n min-height: 7.75rem;\n\n #title {\n font-size: 1.25rem;\n margin-bottom: 0.75rem;\n }\n\n .stat-row {\n display: flex;\n flex-direction: row;\n\n .stat-value {\n margin-right: 1rem;\n width: 5.5rem;\n text-align: right;\n font-weight: 600;\n }\n .stat-label {\n font-weight: 300;\n }\n }\n }\n\n .results-browser-list {\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n scrollbar-width: thin;\n padding-right: .5rem;\n height: calc(100vh - 20rem);\n\n &.header-hidden {\n height: calc(100vh - 16rem);\n }\n\n .browser-item-container {\n width: 100%;\n }\n }\n\n .scroll-gradient {\n position: absolute;\n height: 3rem;\n width: 95%;\n bottom: 0;\n pointer-events: none;\n\n\n &.hidden {\n display: none;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ resultLabel }} {{stat.count}} {{stat.label}} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ResultsBrowserComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ResultsBrowserModule.html":{"url":"modules/ResultsBrowserModule.html","title":"module - ResultsBrowserModule","body":"\n \n\n\n\n\n Modules\n ResultsBrowserModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ResultsBrowserModule\n\n\n\ncluster_ResultsBrowserModule_exports\n\n\n\ncluster_ResultsBrowserModule_imports\n\n\n\ncluster_ResultsBrowserModule_declarations\n\n\n\n\nResultsBrowserComponent\n\nResultsBrowserComponent\n\n\n\nResultsBrowserModule\n\nResultsBrowserModule\n\nResultsBrowserModule -->\n\nResultsBrowserComponent->ResultsBrowserModule\n\n\n\n\n\nResultsBrowserComponent \n\nResultsBrowserComponent \n\nResultsBrowserComponent -->\n\nResultsBrowserModule->ResultsBrowserComponent \n\n\n\n\n\nDonorCardModule\n\nDonorCardModule\n\nResultsBrowserModule -->\n\nDonorCardModule->ResultsBrowserModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ResultsBrowserComponent\n \n \n \n \n Imports\n \n \n DonorCardModule\n \n \n \n \n Exports\n \n \n ResultsBrowserComponent\n \n \n \n \n \n\n\n \n\n\n \n import { ScrollingModule } from '@angular/cdk/scrolling';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ResultsBrowserComponent } from './results-browser.component';\nimport { DonorCardModule } from '../donor-card/donor-card.module';\n\n\n@NgModule({\n declarations: [ResultsBrowserComponent],\n imports: [\n CommonModule,\n ScrollingModule,\n DonorCardModule\n ],\n exports: [ResultsBrowserComponent]\n})\nexport class ResultsBrowserModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SceneState.html":{"url":"injectables/SceneState.html","title":"injectable - SceneState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n SceneState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n\n\n \n Description\n \n \n 3d Scene state\n\n \n\n \n Extends\n \n \n NgxsImmutableDataRepository\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n colorAssignments\n \n \n Private\n dataState\n \n \n Readonly\n highlightedId$\n \n \n Private\n listResults\n \n \n Readonly\n referenceOrgans$\n \n \n Readonly\n scene$\n \n \n Readonly\n selectedReferenceOrgans$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n ngxsOnInit\n \n \n sceneNodeClicked\n \n \n sceneNodeHovered\n \n \n sceneNodeUnhover\n \n \n setReferenceOrgans\n \n \n setScene\n \n \n setSelectedReferenceOrgans\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(dataService: DataSourceService, injector: Injector)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:65\n \n \n\n \n \n Creates an instance of scene state.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dataService\n \n \n DataSourceService\n \n \n \n No\n \n \n \n \n \n \n injector\n \n \n Injector\n \n \n \n No\n \n \n \n Injector service used to lazy load data state\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngxsOnInit\n \n \n \n \n \n \nngxsOnInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:136\n \n \n\n\n \n \n Initializes this state service.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n sceneNodeClicked\n \n \n \n \n \n \nsceneNodeClicked(undefined: NodeClickEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:114\n \n \n\n\n \n \n Handle scene node clicks\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n \n NodeClickEvent\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n sceneNodeHovered\n \n \n \n \n \n \nsceneNodeHovered(node: SpatialSceneNode)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:125\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n node\n \n SpatialSceneNode\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n sceneNodeUnhover\n \n \n \n \n \n \nsceneNodeUnhover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:129\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n setReferenceOrgans\n \n \n \n \n \n \nsetReferenceOrgans(referenceOrgans: OrganInfo[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:95\n \n \n\n\n \n \n Sets the reference organs\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n referenceOrgans\n \n OrganInfo[]\n \n\n \n No\n \n\n\n \n The reference organs available\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n setScene\n \n \n \n \n \n \nsetScene(scene: SpatialSceneNode[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:105\n \n \n\n\n \n \n Sets the scene\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n scene\n \n SpatialSceneNode[]\n \n\n \n No\n \n\n\n \n The active scene to display\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n setSelectedReferenceOrgans\n \n \n \n \n \n \nsetSelectedReferenceOrgans(selectedReferenceOrgans: OrganInfo[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:85\n \n \n\n\n \n \n Sets the selected reference organs\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n selectedReferenceOrgans\n \n OrganInfo[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n colorAssignments\n \n \n \n \n \n \n Type : ColorAssignmentState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:63\n \n \n\n \n \n Color assignments state\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n dataState\n \n \n \n \n \n \n Type : DataState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:60\n \n \n\n \n \n The data state\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n highlightedId$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('highlightedId'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:57\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n listResults\n \n \n \n \n \n \n Type : ListResultsState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:65\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n referenceOrgans$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('referenceOrgans'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:51\n \n \n\n \n \n Available Reference Organs\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n scene$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('scene'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:55\n \n \n\n \n \n Scene to display in the 3d Scene\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n selectedReferenceOrgans$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('selectedReferenceOrgans'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:53\n \n \n\n \n \n Selected Reference Organs\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { NodeClickEvent, SpatialSceneNode } from 'ccf-body-ui';\nimport { ALL_POSSIBLE_ORGANS, DataSourceService, OrganInfo } from 'ccf-shared';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, take, tap } from 'rxjs/operators';\n\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\nimport { ListResultsState } from '../list-results/list-results.state';\n\nexport const DEFAULT_SELECTED_ORGANS = new Set(['Skin', 'Heart', 'Kidney', 'Spleen']);\n\nexport interface SceneStateModel {\n scene: SpatialSceneNode[];\n referenceOrgans: OrganInfo[];\n selectedReferenceOrgans: OrganInfo[];\n\n selectedAnatomicalStructures: unknown[];\n anatomicalStructureSettings: {\n [iri: string]: {\n enabled: boolean;\n visible: boolean;\n opacity: boolean;\n };\n };\n highlightedId?: string;\n}\n\n/**\n * 3d Scene state\n */\n@StateRepository()\n@State({\n name: 'scene',\n defaults: {\n scene: [],\n referenceOrgans: [],\n selectedReferenceOrgans: [],\n selectedAnatomicalStructures: [],\n anatomicalStructureSettings: {}\n }\n})\n@Injectable()\nexport class SceneState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Available Reference Organs */\n readonly referenceOrgans$ = this.state$.pipe(pluck('referenceOrgans'), distinctUntilChanged());\n /** Selected Reference Organs */\n readonly selectedReferenceOrgans$ = this.state$.pipe(pluck('selectedReferenceOrgans'), distinctUntilChanged());\n /** Scene to display in the 3d Scene */\n readonly scene$ = this.state$.pipe(pluck('scene'), distinctUntilChanged());\n\n readonly highlightedId$ = this.state$.pipe(pluck('highlightedId'), distinctUntilChanged());\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n private listResults: ListResultsState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the selected reference organs\n *\n * @param referenceOrgans The selected reference organs selected\n */\n @DataAction()\n setSelectedReferenceOrgans(@Payload('selectedReferenceOrgans') selectedReferenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ selectedReferenceOrgans });\n }\n\n /**\n * Sets the reference organs\n *\n * @param referenceOrgans The reference organs available\n */\n @DataAction()\n setReferenceOrgans(@Payload('referenceOrgans') referenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ referenceOrgans });\n }\n\n /**\n * Sets the scene\n *\n * @param scene The active scene to display\n */\n @DataAction()\n setScene(@Payload('scene') scene: SpatialSceneNode[]): void {\n this.ctx.patchState({ scene });\n }\n\n /**\n * Handle scene node clicks\n *\n * @param param0 scene node click event\n */\n sceneNodeClicked({ node, ctrlClick }: NodeClickEvent): void {\n if (node.representation_of &&\n node['@id'] !== 'http://purl.org/ccf/latest/ccf.owl#VHFSkin'\n && node.entityId // Disables this path. Need to update logic here.\n ) {\n this.dataState.updateFilter({ ontologyTerms: [node.representation_of] });\n } else if (node.entityId) {\n this.colorAssignments.assignColor(node['@id'], !ctrlClick);\n }\n }\n\n sceneNodeHovered(node: SpatialSceneNode): void {\n this.listResults.highlightNode(node['@id']);\n }\n\n sceneNodeUnhover(): void {\n this.listResults.unHighlightNode();\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n this.listResults = this.injector.get(ListResultsState);\n\n // Initialize reference organ info\n this.dataService.getReferenceOrgans().pipe(\n map(refOrgans => {\n const organIds = new Set(refOrgans.map(o => o.representation_of));\n return ALL_POSSIBLE_ORGANS\n .filter(organ => organIds.has(organ.id))\n .map(organ => ({ ...organ, disabled: false, numResults: 0 }));\n }),\n take(1),\n tap(organs => {\n this.setReferenceOrgans(organs);\n this.setSelectedReferenceOrgans(organs.filter(organ => DEFAULT_SELECTED_ORGANS.has(organ.organ)));\n })\n ).subscribe();\n\n // Update scene as the overall state changes\n combineLatest([\n this.dataState.sceneData$,\n this.selectedReferenceOrgans$,\n this.colorAssignments.colorAssignments$,\n this.dataService.getReferenceOrgans(),\n this.listResults.highlightedNodeId$\n ]).pipe(\n map(([scene, selectedOrgans, colors, refOrganData, highlightedNodeId]) => {\n const activeOrgans = new Set(selectedOrgans.map(o => o.id));\n const refOrgans = new Set(refOrganData.filter(o => activeOrgans.has(o.representation_of)).map(o => o['@id']));\n return scene.filter(node =>\n (node.ccf_annotations?.some?.(tag => activeOrgans.has(tag))) ||\n (node.reference_organ && refOrgans.has(node.reference_organ))\n ).map((node): SpatialSceneNode =>\n node.entityId && (Object.prototype.hasOwnProperty.call(colors, node['@id']) || highlightedNodeId === node['@id']) ?\n ({\n ...node,\n color: highlightedNodeId === node['@id'] ?\n [30, 136, 229, 255] :\n colors[node['@id']].rgba as [number, number, number, number]\n }) : node\n );\n }),\n tap(scene => this.setScene(scene))\n ).subscribe();\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SceneStateModel.html":{"url":"interfaces/SceneStateModel.html","title":"interface - SceneStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SceneStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n anatomicalStructureSettings\n \n \n \n Optional\n \n highlightedId\n \n \n \n \n referenceOrgans\n \n \n \n \n scene\n \n \n \n \n selectedAnatomicalStructures\n \n \n \n \n selectedReferenceOrgans\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n anatomicalStructureSettings\n \n \n \n \n \n \n \n \n anatomicalStructureSettings: literal type\n\n \n \n\n\n \n \n Type : literal type\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n highlightedId\n \n \n \n \n \n \n \n \n highlightedId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n referenceOrgans\n \n \n \n \n \n \n \n \n referenceOrgans: OrganInfo[]\n\n \n \n\n\n \n \n Type : OrganInfo[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n scene\n \n \n \n \n \n \n \n \n scene: SpatialSceneNode[]\n\n \n \n\n\n \n \n Type : SpatialSceneNode[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n selectedAnatomicalStructures\n \n \n \n \n \n \n \n \n selectedAnatomicalStructures: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n selectedReferenceOrgans\n \n \n \n \n \n \n \n \n selectedReferenceOrgans: OrganInfo[]\n\n \n \n\n\n \n \n Type : OrganInfo[]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { NodeClickEvent, SpatialSceneNode } from 'ccf-body-ui';\nimport { ALL_POSSIBLE_ORGANS, DataSourceService, OrganInfo } from 'ccf-shared';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, take, tap } from 'rxjs/operators';\n\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\nimport { ListResultsState } from '../list-results/list-results.state';\n\nexport const DEFAULT_SELECTED_ORGANS = new Set(['Skin', 'Heart', 'Kidney', 'Spleen']);\n\nexport interface SceneStateModel {\n scene: SpatialSceneNode[];\n referenceOrgans: OrganInfo[];\n selectedReferenceOrgans: OrganInfo[];\n\n selectedAnatomicalStructures: unknown[];\n anatomicalStructureSettings: {\n [iri: string]: {\n enabled: boolean;\n visible: boolean;\n opacity: boolean;\n };\n };\n highlightedId?: string;\n}\n\n/**\n * 3d Scene state\n */\n@StateRepository()\n@State({\n name: 'scene',\n defaults: {\n scene: [],\n referenceOrgans: [],\n selectedReferenceOrgans: [],\n selectedAnatomicalStructures: [],\n anatomicalStructureSettings: {}\n }\n})\n@Injectable()\nexport class SceneState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Available Reference Organs */\n readonly referenceOrgans$ = this.state$.pipe(pluck('referenceOrgans'), distinctUntilChanged());\n /** Selected Reference Organs */\n readonly selectedReferenceOrgans$ = this.state$.pipe(pluck('selectedReferenceOrgans'), distinctUntilChanged());\n /** Scene to display in the 3d Scene */\n readonly scene$ = this.state$.pipe(pluck('scene'), distinctUntilChanged());\n\n readonly highlightedId$ = this.state$.pipe(pluck('highlightedId'), distinctUntilChanged());\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n private listResults: ListResultsState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the selected reference organs\n *\n * @param referenceOrgans The selected reference organs selected\n */\n @DataAction()\n setSelectedReferenceOrgans(@Payload('selectedReferenceOrgans') selectedReferenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ selectedReferenceOrgans });\n }\n\n /**\n * Sets the reference organs\n *\n * @param referenceOrgans The reference organs available\n */\n @DataAction()\n setReferenceOrgans(@Payload('referenceOrgans') referenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ referenceOrgans });\n }\n\n /**\n * Sets the scene\n *\n * @param scene The active scene to display\n */\n @DataAction()\n setScene(@Payload('scene') scene: SpatialSceneNode[]): void {\n this.ctx.patchState({ scene });\n }\n\n /**\n * Handle scene node clicks\n *\n * @param param0 scene node click event\n */\n sceneNodeClicked({ node, ctrlClick }: NodeClickEvent): void {\n if (node.representation_of &&\n node['@id'] !== 'http://purl.org/ccf/latest/ccf.owl#VHFSkin'\n && node.entityId // Disables this path. Need to update logic here.\n ) {\n this.dataState.updateFilter({ ontologyTerms: [node.representation_of] });\n } else if (node.entityId) {\n this.colorAssignments.assignColor(node['@id'], !ctrlClick);\n }\n }\n\n sceneNodeHovered(node: SpatialSceneNode): void {\n this.listResults.highlightNode(node['@id']);\n }\n\n sceneNodeUnhover(): void {\n this.listResults.unHighlightNode();\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n this.listResults = this.injector.get(ListResultsState);\n\n // Initialize reference organ info\n this.dataService.getReferenceOrgans().pipe(\n map(refOrgans => {\n const organIds = new Set(refOrgans.map(o => o.representation_of));\n return ALL_POSSIBLE_ORGANS\n .filter(organ => organIds.has(organ.id))\n .map(organ => ({ ...organ, disabled: false, numResults: 0 }));\n }),\n take(1),\n tap(organs => {\n this.setReferenceOrgans(organs);\n this.setSelectedReferenceOrgans(organs.filter(organ => DEFAULT_SELECTED_ORGANS.has(organ.organ)));\n })\n ).subscribe();\n\n // Update scene as the overall state changes\n combineLatest([\n this.dataState.sceneData$,\n this.selectedReferenceOrgans$,\n this.colorAssignments.colorAssignments$,\n this.dataService.getReferenceOrgans(),\n this.listResults.highlightedNodeId$\n ]).pipe(\n map(([scene, selectedOrgans, colors, refOrganData, highlightedNodeId]) => {\n const activeOrgans = new Set(selectedOrgans.map(o => o.id));\n const refOrgans = new Set(refOrganData.filter(o => activeOrgans.has(o.representation_of)).map(o => o['@id']));\n return scene.filter(node =>\n (node.ccf_annotations?.some?.(tag => activeOrgans.has(tag))) ||\n (node.reference_organ && refOrgans.has(node.reference_organ))\n ).map((node): SpatialSceneNode =>\n node.entityId && (Object.prototype.hasOwnProperty.call(colors, node['@id']) || highlightedNodeId === node['@id']) ?\n ({\n ...node,\n color: highlightedNodeId === node['@id'] ?\n [30, 136, 229, 255] :\n colors[node['@id']].rgba as [number, number, number, number]\n }) : node\n );\n }),\n tap(scene => this.setScene(scene))\n ).subscribe();\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchResult.html":{"url":"interfaces/SearchResult.html","title":"interface - SearchResult","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchResult\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n\n\n \n Description\n \n \n Search result interface type for the search results\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n displayLabel\n \n \n \n \n index\n \n \n \n \n node\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n displayLabel\n \n \n \n \n \n \n \n \n displayLabel: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n\n\n\n\n \n \n label to be displayed in the view\n\n \n \n \n \n \n \n \n \n \n index\n \n \n \n \n \n \n \n \n index: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n ensures order of search-results\n\n \n \n \n \n \n \n \n \n \n node\n \n \n \n \n \n \n \n \n node: OntologyTreeNode\n\n \n \n\n\n \n \n Type : OntologyTreeNode\n\n \n \n\n\n\n\n\n \n \n instance of OntologyTreeNode, provides data associated with a search result\n\n \n \n \n \n \n \n\n\n \n import { Immutable } from '@angular-ru/common/typings';\nimport { Injectable } from '@angular/core';\nimport { bind } from 'bind-decorator';\nimport { OntologyTreeModel, OntologyTreeNode } from 'ccf-database';\nimport { at } from 'lodash';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n\n/**\n * Search result interface type for the search results\n */\nexport interface SearchResult {\n /** ensures order of search-results */\n index: number;\n\n /** label to be displayed in the view */\n displayLabel: string[];\n\n /** instance of OntologyTreeNode, provides data associated with a search result */\n node: OntologyTreeNode;\n}\n\n/**\n * Injectable OntologySearchService responsible for search result computations\n */\n@Injectable()\nexport class OntologySearchService {\n private readonly treeModel$ = new ReplaySubject(1);\n private treeModel: OntologyTreeModel;\n\n /** All nodes in the ontology tree. */\n public readonly nodes$ = this.treeModel$.pipe(map(state => Object.values(state.nodes)));\n\n /** Root node of the ontology tree. */\n public readonly rootNode$ = this.treeModel$.pipe(map(state => state.nodes[state.root]));\n\n setTreeModel(treeModel: OntologyTreeModel): void {\n this.treeModel$.next(treeModel);\n this.treeModel = treeModel;\n }\n\n /**\n * Searches the ontology with the search-term\n *\n * @param value the search term\n * @returns an array of search-results\n */\n filter(value: string): Observable {\n return this.nodes$.pipe(\n map(nodes => this.lookup(nodes, value.toLowerCase()))\n );\n }\n\n /**\n * looks up ontology nodes and composes search results\n *\n * @param nodes Ontology nodes\n * @param searchValue search text in lower case\n * @returns search results\n */\n private lookup(nodes: Immutable[], searchValue: string): SearchResult[] {\n const searchResults = new Map();\n\n if (nodes) {\n nodes.forEach((node: OntologyTreeNode) => {\n const condition = node.label.toLowerCase().includes(searchValue);\n\n if (condition && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label, searchValue),\n displayLabel: this.formatLabel(node.label, searchValue),\n node\n });\n } else {\n const match = node.synonymLabels.find((label) => label.toLowerCase().includes(searchValue));\n\n if (match && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label + ' (' + match + ')', searchValue),\n displayLabel: this.formatLabel(node.label + ' (' + match + ')', searchValue),\n node\n });\n }\n }\n });\n }\n\n return Array.from(searchResults.values());\n }\n\n /**\n * Gets index of match in the ontology label\n *\n * @param label the provided ontology node label or synonym label\n * @param searchValue the searched text in lower case\n * @returns the index of the match in the label\n */\n getIndexOfMatch(label: string, searchValue: string): number {\n return label.toLowerCase().indexOf(searchValue);\n }\n\n /**\n * Formats label based on where the search-term was found in the OntologyTreeNode\n *\n * @param label label or first synonym-label of OntologyTreeNode which has the search-term\n * @param searchValue search-term\n * @returns an array in the form of [prefix, search-term, suffix]\n */\n formatLabel(label: string, searchValue: string): string[] {\n const index = this.getIndexOfMatch(label, searchValue);\n return [\n label.slice(0, index),\n label.slice(index, index + searchValue.length),\n label.slice(index + searchValue.length)\n ];\n }\n\n /**\n * Fetches the children of an ontology node.\n * Note: This can be called without a reference to `this`.\n *\n * @param node The node for which to get children.\n * @returns An array of children, empty if the node has no children.\n */\n @bind\n getChildren(node: OntologyTreeNode): OntologyTreeNode[] {\n const nodes = this.treeModel?.nodes ?? {};\n return at(nodes, node.children);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/SpinnerOverlayComponent.html":{"url":"components/SpinnerOverlayComponent.html","title":"component - SpinnerOverlayComponent","body":"\n \n\n\n\n\n\n Components\n \n SpinnerOverlayComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts\n\n\n\n \n Description\n \n \n Overlay component that displays a progress spinner and\nan optional text description.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-spinner-overlay\n \n\n \n styleUrls\n ./spinner-overlay.component.scss\n \n\n\n\n \n templateUrl\n ./spinner-overlay.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n\n\n \n \n Inputs\n \n \n \n \n \n \n active\n \n \n text\n \n \n \n \n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n active\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:19\n \n \n \n \n Whether the overlay is active/showing.\n\n \n \n \n \n \n \n \n \n \n text\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:22\n \n \n \n \n Optional text description displayed alongside the spinner.\n\n \n \n \n \n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-spinner-overlay\"\n\n \n \n \n \n Default value : 'ccf-spinner-overlay'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:16\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n\n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-spinner-overlay'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:16\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\n\n\n/**\n * Overlay component that displays a progress spinner and\n * an optional text description.\n */\n@Component({\n selector: 'ccf-spinner-overlay',\n templateUrl: './spinner-overlay.component.html',\n styleUrls: ['./spinner-overlay.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SpinnerOverlayComponent {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-spinner-overlay';\n\n /** Whether the overlay is active/showing. */\n @Input() @HostBinding('class.active') active = false;\n\n /** Optional text description displayed alongside the spinner. */\n @Input() text: string;\n}\n\n \n\n \n \n{{ text }}\n\n \n\n \n \n ./spinner-overlay.component.scss\n \n :host {\n display: flex;\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 99;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n visibility: hidden;\n opacity: 0;\n transition: visibility 0.6s, opacity 0.4s ease-in-out;\n\n mat-spinner {\n margin-bottom: 1rem;\n opacity: 0;\n transition: opacity 0.3s ease-in-out 0.3s;\n }\n\n &.active {\n pointer-events: auto;\n visibility: visible;\n opacity: 1;\n\n mat-spinner {\n opacity: 1;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '{{ text }}'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'SpinnerOverlayComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SpinnerOverlayModule.html":{"url":"modules/SpinnerOverlayModule.html","title":"module - SpinnerOverlayModule","body":"\n \n\n\n\n\n Modules\n SpinnerOverlayModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SpinnerOverlayModule\n\n\n\ncluster_SpinnerOverlayModule_declarations\n\n\n\ncluster_SpinnerOverlayModule_exports\n\n\n\n\nSpinnerOverlayComponent\n\nSpinnerOverlayComponent\n\n\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule -->\n\nSpinnerOverlayComponent->SpinnerOverlayModule\n\n\n\n\n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent -->\n\nSpinnerOverlayModule->SpinnerOverlayComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n SpinnerOverlayComponent\n \n \n \n \n Exports\n \n \n SpinnerOverlayComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\nimport { SpinnerOverlayComponent } from './spinner-overlay.component';\n\n\n@NgModule({\n imports: [CommonModule, MatProgressSpinnerModule],\n declarations: [SpinnerOverlayComponent],\n exports: [SpinnerOverlayComponent]\n})\nexport class SpinnerOverlayModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/StoreModule.html":{"url":"modules/StoreModule.html","title":"module - StoreModule","body":"\n \n\n\n\n\n Modules\n StoreModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/store/store.module.ts\n \n\n\n\n\n\n \n \n \n \n\n\n \n\n\n \n import { NgModule } from '@angular/core';\nimport { NgxsDataPluginModule } from '@ngxs-labs/data';\nimport { NgxsLoggerPluginModule } from '@ngxs/logger-plugin';\nimport { NgxsModule } from '@ngxs/store';\n\nimport { environment } from '../../../environments/environment';\nimport { ColorAssignmentState } from './color-assignment/color-assignment.state';\nimport { DataState } from './data/data.state';\nimport { IconRegistryState } from './icon-registry/icon-registry.state';\nimport { ListResultsState } from './list-results/list-results.state';\nimport { GlobalConfigState } from 'ccf-shared';\nimport { SceneState } from './scene/scene.state';\n\n\n/**\n * States shared across the entire app.\n */\nexport const ROOT_STATES = [\n GlobalConfigState,\n ColorAssignmentState,\n IconRegistryState,\n ListResultsState,\n DataState,\n SceneState\n];\n\n@NgModule({\n imports: [\n // For some strange reason the data plugin is not happy being placed after the store module!?\n NgxsDataPluginModule.forRoot(),\n\n NgxsModule.forRoot(ROOT_STATES, {\n developmentMode: !environment.production\n // Consider setting compatibility and executionStrategy\n // https://www.ngxs.io/advanced/options\n }),\n\n // Logger plugin must be last!\n NgxsLoggerPluginModule.forRoot({\n disabled: environment.production\n })\n ]\n})\nexport class StoreModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ThemingModule.html":{"url":"modules/ThemingModule.html","title":"module - ThemingModule","body":"\n \n\n\n\n\n Modules\n ThemingModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ThemingModule\n\n\n\ncluster_ThemingModule_providers\n\n\n\n\nThemingService\n\nThemingService\n\n\n\nThemingModule\n\nThemingModule\n\nThemingModule -->\n\nThemingService->ThemingModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/services/theming/theming.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n ThemingService\n \n \n \n \n \n\n\n \n\n\n \n import { APP_BOOTSTRAP_LISTENER, NgModule } from '@angular/core';\n\nimport { ThemingService } from './theming.service';\n\n\n@NgModule({\n providers: [\n { provide: APP_BOOTSTRAP_LISTENER, useValue: ThemingService.initialize, multi: true },\n ThemingService\n ]\n})\nexport class ThemingModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ThemingService.html":{"url":"injectables/ThemingService.html","title":"injectable - ThemingService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n ThemingService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n\n\n \n Description\n \n \n Manages the currently active theme.\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n defaultTheme\n \n \n Private\n element\n \n \n Private\n injector\n \n \n Private\n theme\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n applyThemeClass\n \n \n getTheme\n \n \n Static\n initialize\n \n \n initialize\n \n \n resetTheme\n \n \n setTheme\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(defaultTheme: string | null)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:25\n \n \n\n \n \n Creates the theming service.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n defaultTheme\n \n \n string | null\n \n \n \n No\n \n \n \n An optional default theme.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n applyThemeClass\n \n \n \n \n \n \n \n applyThemeClass(cls: string, method: \"add\" | \"remove\")\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:83\n \n \n\n\n \n \n Adds or removes a theme class from the necessary components.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n cls\n \n string\n \n\n \n No\n \n\n \n \n\n \n The theme class.\n\n \n \n \n method\n \n \"add\" | \"remove\"\n \n\n \n No\n \n\n \n 'add'\n \n\n \n Whether to add or remove the theme.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n getTheme\n \n \n \n \n \n \ngetTheme()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:39\n \n \n\n\n \n \n Get the currently active theme.\n\n\n \n Returns : string\n\n \n \n \n \n \n \n \n \n \n \n \n Static\n initialize\n \n \n \n \n \n \n \n initialize(component: ComponentRef<>)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:21\n \n \n\n\n \n \n Initializer called during bootstrap to set up theming.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n component\n \n ComponentRef<>\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n initialize\n \n \n \n \n \n \ninitialize(element: ElementRef<>, injector: Injector)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:71\n \n \n\n\n \n \n Binds theming service to a component.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n element\n \n ElementRef<>\n \n\n \n No\n \n\n\n \n \n injector\n \n Injector\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n resetTheme\n \n \n \n \n \n \nresetTheme()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:60\n \n \n\n\n \n \n Resets the theme to the default.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n setTheme\n \n \n \n \n \n \nsetTheme(theme: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:48\n \n \n\n\n \n \n Sets the currently active theme.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n theme\n \n string\n \n\n \n No\n \n\n\n \n The new theme class.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n defaultTheme\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:16\n \n \n\n \n \n Default theme class.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n element\n \n \n \n \n \n \n Type : ElementRef<>\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:13\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n injector\n \n \n \n \n \n \n Type : Injector\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:14\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n theme\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:18\n \n \n\n \n \n Currently active theme class.\n\n \n \n\n \n \n\n\n \n\n\n \n import { OverlayContainer } from '@angular/cdk/overlay';\nimport { ComponentRef, ElementRef, Inject, Injector, Injectable, InjectionToken, Optional, Renderer2 } from '@angular/core';\n\n/** Token for specifying the default theme class. */\nexport const DEFAULT_THEME = new InjectionToken('Default theme class');\n\n/**\n * Manages the currently active theme.\n */\n@Injectable()\nexport class ThemingService {\n private element: ElementRef;\n private injector: Injector;\n /** Default theme class. */\n private defaultTheme: string;\n /** Currently active theme class. */\n private theme: string;\n\n /** Initializer called during bootstrap to set up theming. */\n static initialize(component: ComponentRef): void {\n const { injector, location } = component;\n const service = injector.get(ThemingService);\n service.initialize(location, injector);\n }\n\n /**\n * Creates the theming service.\n *\n * @param defaultTheme An optional default theme.\n */\n constructor(@Optional() @Inject(DEFAULT_THEME) defaultTheme: string | null) {\n this.defaultTheme = this.theme = defaultTheme ?? '';\n }\n\n /**\n * Get the currently active theme.\n */\n getTheme(): string {\n return this.theme;\n }\n\n /**\n * Sets the currently active theme.\n *\n * @param theme The new theme class.\n */\n setTheme(theme: string): void {\n if (theme === this.theme) {\n return;\n }\n this.applyThemeClass(this.theme, 'remove');\n this.applyThemeClass(theme);\n this.theme = theme;\n }\n\n /**\n * Resets the theme to the default.\n */\n resetTheme(): void {\n this.setTheme(this.defaultTheme);\n }\n\n\n /**\n * Binds theming service to a component.\n *\n * @param component The top level component.\n * @throws {Error} If the theming service has already been initialized.\n */\n initialize(element: ElementRef, injector: Injector): void {\n this.element = element;\n this.injector = injector;\n this.applyThemeClass(this.getTheme());\n }\n\n /**\n * Adds or removes a theme class from the necessary components.\n *\n * @param cls The theme class.\n * @param method Whether to add or remove the theme.\n */\n private applyThemeClass(cls: string, method: 'add' | 'remove' = 'add'): void {\n const { element, injector } = this;\n if (!cls || !element || !injector) {\n return;\n }\n\n const renderer = injector.get(Renderer2, null);\n if (!renderer) {\n return;\n }\n\n const root = element.nativeElement as HTMLElement;\n const overlay = injector.get(OverlayContainer, null)?.getContainerElement();\n const methodName = method === 'add' ? 'addClass' : 'removeClass';\n\n renderer[methodName](root, cls);\n if (overlay) {\n renderer[methodName](overlay, cls);\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ThumbnailCarouselComponent.html":{"url":"components/ThumbnailCarouselComponent.html","title":"component - ThumbnailCarouselComponent","body":"\n \n\n\n\n\n\n Components\n \n ThumbnailCarouselComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n\n\n\n \n Description\n \n \n Carousel containing sample thumbnails in expanded donor cards\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-thumbnail-carousel\n \n\n \n styleUrls\n ./thumbnail-carousel.component.scss\n \n\n\n\n \n templateUrl\n ./thumbnail-carousel.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n className\n \n \n Readonly\n config\n \n \n Readonly\n navigation\n \n \n Readonly\n uid\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n itemId\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n data\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n linkClicked\n \n \n \n \n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n prevButtonId\n \n \n nextButtonId\n \n \n \n \n \n \n\n\n\n \n Inputs\n \n \n \n \n \n data\n \n \n \n \n Type : DatasetResult[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:34\n \n \n \n \n Items to show in the carousel\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n linkClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:39\n \n \n \n \n Outputs the result whose link was clicked\n\n \n \n \n \n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-thumbnail-carousel\"\n\n \n \n \n \n Default value : 'ccf-thumbnail-carousel'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:29\n \n \n\n \n \n Primary css class selector\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n itemId\n \n \n \n \n \n \nitemId(_index: number, item: DatasetResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:89\n \n \n\n\n \n \n Extract a unique identifier for an item\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n _index\n \n number\n \n\n \n No\n \n\n\n \n Unused\n\n \n \n \n item\n \n DatasetResult\n \n\n \n No\n \n\n\n \n The item\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n An unique identifier\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-thumbnail-carousel'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:29\n \n \n\n \n \n Primary css class selector\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n config\n \n \n \n \n \n \n Type : SwiperOptions\n\n \n \n \n \n Default value : {\n allowTouchMove: false,\n slidesOffsetBefore: 4,\n slidesOffsetAfter: 4,\n slidesPerView: 'auto',\n spaceBetween: 4,\n watchOverflow: true\n }\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:63\n \n \n\n \n \n Swiper configuration\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n navigation\n \n \n \n \n \n \n Type : NavigationOptions\n\n \n \n \n \n Default value : {\n // Normally I would have prefered referencing the elements themselves instead of using selectors\n // However in this case it does not work with angular swiper\n prevEl: '#' + this.prevButtonId,\n nextEl: '#' + this.nextButtonId\n }\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:75\n \n \n\n \n \n Navigation configuration\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n uid\n \n \n \n \n \n \n Default value : nextUid()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:44\n \n \n\n \n \n Per instance unique identifier\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n prevButtonId\n \n \n\n \n \n getprevButtonId()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:49\n \n \n \n \n HTML id for previous slide button\n\n\n \n Returns : string\n\n \n \n \n\n \n \n \n \n \n \n \n nextButtonId\n \n \n\n \n \n getnextButtonId()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:56\n \n \n \n \n HTML id for next slide button\n\n\n \n Returns : string\n\n \n \n \n\n \n \n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { DatasetResult } from 'ccf-database';\nimport { SwiperOptions } from 'swiper';\nimport { NavigationOptions } from 'swiper/types';\n\n// Returns a unique identifier\nconst nextUid = (() => {\n let counter = -1;\n return () => {\n counter += 1;\n return counter;\n };\n})();\n\n\n/**\n * Carousel containing sample thumbnails in expanded donor cards\n */\n@Component({\n selector: 'ccf-thumbnail-carousel',\n templateUrl: './thumbnail-carousel.component.html',\n styleUrls: ['./thumbnail-carousel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ThumbnailCarouselComponent {\n /**\n * Primary css class selector\n */\n @HostBinding('class') readonly className = 'ccf-thumbnail-carousel';\n\n /**\n * Items to show in the carousel\n */\n @Input() data: DatasetResult[];\n\n /**\n * Outputs the result whose link was clicked\n */\n @Output() readonly linkClicked = new EventEmitter();\n\n /**\n * Per instance unique identifier\n */\n readonly uid = nextUid();\n\n /**\n * HTML id for previous slide button\n */\n get prevButtonId(): string {\n return `ccf-thumbnail-carousel-prev-button-${this.uid}`;\n }\n\n /**\n * HTML id for next slide button\n */\n get nextButtonId(): string {\n return `ccf-thumbnail-carousel-next-button-${this.uid}`;\n }\n\n /**\n * Swiper configuration\n */\n readonly config: SwiperOptions = {\n allowTouchMove: false,\n slidesOffsetBefore: 4,\n slidesOffsetAfter: 4,\n slidesPerView: 'auto',\n spaceBetween: 4,\n watchOverflow: true\n };\n\n /**\n * Navigation configuration\n */\n readonly navigation: NavigationOptions = {\n // Normally I would have prefered referencing the elements themselves instead of using selectors\n // However in this case it does not work with angular swiper\n prevEl: '#' + this.prevButtonId,\n nextEl: '#' + this.nextButtonId\n };\n\n /**\n * Extract a unique identifier for an item\n *\n * @param _index Unused\n * @param item The item\n * @returns An unique identifier\n */\n itemId(_index: number, item: DatasetResult): string {\n return item.thumbnail;\n }\n}\n\n \n\n \n \n \n navigate_before\n \n\n\n\n \n \n \n \n {{ item.technology }}\n \n \n DATA\n open_in_new\n \n \n \n \n\n\n\n \n \n \n\n navigate_next\n \n\n\n \n\n \n \n ./thumbnail-carousel.component.scss\n \n :host {\n display: flex;\n\n .swiper {\n flex-grow: 1;\n padding-bottom: 0.3125rem;\n\n ::ng-deep .swiper-slide {\n width: 3.75rem;\n height: 2.8125rem;\n }\n }\n\n .prev, .next {\n display: flex;\n align-items: center;\n\n height: 2.8125rem;\n\n button {\n width: 1.5rem;\n height: 1.5rem;\n line-height: 1.5rem;\n }\n\n .fade {\n position: absolute;\n top: -0.625rem;\n left: -2rem;\n z-index: 10;\n\n width: 2rem;\n height: 2.8125rem + 0.3125rem;\n\n opacity: 1;\n transition: opacity ease-in-out 0.3s;\n\n pointer-events: none;\n }\n\n .swiper-button-disabled, .swiper-button-lock {\n cursor: default;\n pointer-events: none;\n\n .fade {\n opacity: 0;\n }\n }\n }\n\n .slide {\n position: relative;\n width: 100%;\n height: 100%;\n\n .thumbnail {\n display: flex;\n align-items: center;\n justify-content: center;\n background-size: cover;\n\n position: relative;\n width: calc(100% - 2 * 0.125rem);\n height: calc(100% - 2 * 0.125rem);\n\n border-style: solid;\n border-width: 0.125rem;\n border-radius: 0.25rem;\n\n background-origin: padding-box;\n background-clip: padding-box;\n\n font-size: 0.875rem;\n font-weight: bold;\n\n &:after {\n content: \"\";\n\n position: absolute;\n bottom: -0.125rem;\n left: -0.125rem;\n width: 0.125rem;\n height: 0.125rem;\n }\n }\n\n .link {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n\n opacity: 0;\n transition: opacity ease-in-out 0.3s;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);\n\n font-size: 0.75rem;\n line-height: 0.75rem;\n\n &,\n &:link,\n &:visited,\n &:hover,\n &:focus,\n &:active {\n cursor: pointer;\n text-decoration: none;\n }\n }\n\n &:hover .link {\n opacity: 1;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' navigate_before {{ item.technology }} DATA open_in_new navigate_next '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ThumbnailCarouselComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ThumbnailCarouselModule.html":{"url":"modules/ThumbnailCarouselModule.html","title":"module - ThumbnailCarouselModule","body":"\n \n\n\n\n\n Modules\n ThumbnailCarouselModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ThumbnailCarouselModule\n\n\n\ncluster_ThumbnailCarouselModule_declarations\n\n\n\ncluster_ThumbnailCarouselModule_exports\n\n\n\n\nThumbnailCarouselComponent\n\nThumbnailCarouselComponent\n\n\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule -->\n\nThumbnailCarouselComponent->ThumbnailCarouselModule\n\n\n\n\n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent -->\n\nThumbnailCarouselModule->ThumbnailCarouselComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ThumbnailCarouselComponent\n \n \n \n \n Exports\n \n \n ThumbnailCarouselComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SwiperModule } from 'swiper/angular';\nimport { Navigation, Swiper } from 'swiper/core';\n\nimport { ThumbnailCarouselComponent } from './thumbnail-carousel.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatButtonModule,\n MatIconModule,\n\n SwiperModule\n ],\n declarations: [ThumbnailCarouselComponent],\n exports: [ThumbnailCarouselComponent]\n})\nexport class ThumbnailCarouselModule {\n constructor() {\n // Install swiper modules\n Swiper.use([Navigation]);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/TissueSectionVisComponent.html":{"url":"components/TissueSectionVisComponent.html","title":"component - TissueSectionVisComponent","body":"\n \n\n\n\n\n\n Components\n \n TissueSectionVisComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts\n\n\n\n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-tissue-section-vis\n \n\n \n styleUrls\n ./tissue-section-vis.component.scss\n \n\n\n\n \n templateUrl\n ./tissue-section-vis.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n clsName\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n tissueSectionExists\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n tissueSections\n \n \n totalTissueSections\n \n \n \n \n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n tissueSections\n \n \n \n \n Type : TissueSectionResult[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:18\n \n \n \n \n Tissue section data, used to determine which tissues to color on the graph\n\n \n \n \n \n \n \n \n \n \n totalTissueSections\n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:15\n \n \n \n \n The total numebr of tissue sections, used for end label\n\n \n \n \n \n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-tissue-section-vis\"\n\n \n \n \n \n Default value : 'ccf-tissue-section-vis'\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:12\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n tissueSectionExists\n \n \n \n \n \n \ntissueSectionExists(sectionNumber: number)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:21\n \n \n\n\n \n \n Returns whether or not the given section number exists in the tissueSection array\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n sectionNumber\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n clsName\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-tissue-section-vis'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:12\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\nimport { TissueSectionResult } from 'ccf-database';\n\n@Component({\n selector: 'ccf-tissue-section-vis',\n templateUrl: './tissue-section-vis.component.html',\n styleUrls: ['./tissue-section-vis.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TissueSectionVisComponent {\n /** HTML Class Name */\n @HostBinding('class') readonly clsName = 'ccf-tissue-section-vis';\n\n /** The total numebr of tissue sections, used for end label */\n @Input() totalTissueSections!: number;\n\n /** Tissue section data, used to determine which tissues to color on the graph */\n @Input() tissueSections!: TissueSectionResult[];\n\n /** Returns whether or not the given section number exists in the tissueSection array */\n tissueSectionExists(sectionNumber: number): boolean {\n if (this.tissueSections.filter(section => section.sectionNumber === sectionNumber).length > 0) {\n return true;\n }\n\n return false;\n }\n}\n\n \n\n \n 0\n\n \n \n\n{{ totalTissueSections }}\n \n\n \n \n ./tissue-section-vis.component.scss\n \n :host {\n width: 100%;\n height: 2.5rem;\n padding: .5rem;\n padding-left: 1rem;\n padding-right: 1rem;\n display: flex;\n\n .container {\n margin-right: .5rem;\n margin-left: .5rem;\n flex-grow: 1;\n display: flex;\n position: relative;\n justify-content: space-evenly;\n\n .line-tick {\n height: 100%;\n width: 1px;\n z-index: 2;\n }\n\n .x-axis {\n width: 100%;\n height: 2px;\n position: absolute;\n top: calc(50% - 1px);\n right: 0;\n z-index: 1;\n }\n }\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '0 {{ totalTissueSections }}'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'TissueSectionVisComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/TissueSectionVisModule.html":{"url":"modules/TissueSectionVisModule.html","title":"module - TissueSectionVisModule","body":"\n \n\n\n\n\n Modules\n TissueSectionVisModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_TissueSectionVisModule\n\n\n\ncluster_TissueSectionVisModule_declarations\n\n\n\ncluster_TissueSectionVisModule_exports\n\n\n\n\nTissueSectionVisComponent\n\nTissueSectionVisComponent\n\n\n\nTissueSectionVisModule\n\nTissueSectionVisModule\n\nTissueSectionVisModule -->\n\nTissueSectionVisComponent->TissueSectionVisModule\n\n\n\n\n\nTissueSectionVisComponent \n\nTissueSectionVisComponent \n\nTissueSectionVisComponent -->\n\nTissueSectionVisModule->TissueSectionVisComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n TissueSectionVisComponent\n \n \n \n \n Exports\n \n \n TissueSectionVisComponent\n \n \n \n \n \n\n\n \n\n\n \n import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TissueSectionVisComponent } from './tissue-section-vis.component';\n\n\n\n@NgModule({\n declarations: [TissueSectionVisComponent],\n imports: [CommonModule],\n exports: [TissueSectionVisComponent]\n})\nexport class TissueSectionVisModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ToggleButtonComponent.html":{"url":"components/ToggleButtonComponent.html","title":"component - ToggleButtonComponent","body":"\n \n\n\n\n\n\n Components\n \n ToggleButtonComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts\n\n\n\n \n Description\n \n \n Implements open/close button for the side drawers.\n\n \n\n\n \n Implements\n \n \n AfterViewInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-drawer-toggle-button\n \n\n \n styleUrls\n ./toggle-button.component.scss\n \n\n\n\n \n templateUrl\n ./toggle-button.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n className\n \n \n Private\n opened\n \n \n Private\n position\n \n \n Private\n subscriptions\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n handleMessage\n \n \n ngAfterViewInit\n \n \n ngOnDestroy\n \n \n toggle\n \n \n \n \n\n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n class.ccf-drawer-toggle-button-end\n \n \n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n classEnd\n \n \n icon\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(drawer: DrawerComponent, messageService: MessageService, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:42\n \n \n\n \n \n Creates an instance of toggle button component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n drawer\n \n \n DrawerComponent\n \n \n \n No\n \n \n \n The owning side drawer.\n\n \n \n \n messageService\n \n \n MessageService\n \n \n \n No\n \n \n \n Service used to send and receive event messages.\n\n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n The change detector reference.\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-drawer-toggle-button\"\n\n \n \n \n \n Default value : 'ccf-drawer-toggle-button'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:19\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n class.ccf-drawer-toggle-button-end\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:22\n \n \n\n \n \n Whether this button is attach to a drawer in position 'end'.\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n handleMessage\n \n \n \n \n \n \nhandleMessage(msg: Message)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:85\n \n \n\n\n \n \n Process an event message.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n msg\n \n Message\n \n\n \n No\n \n\n\n \n The event.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if change detection needs to be run.\n\n \n \n \n \n \n \n \n \n \n \n \n ngAfterViewInit\n \n \n \n \n \n \nngAfterViewInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:65\n \n \n\n\n \n \n Initializes this component.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:75\n \n \n\n\n \n \n Cleans up all subscriptions.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n toggle\n \n \n \n \n \n \ntoggle()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:97\n \n \n\n\n \n \n Updates the drawer state.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-drawer-toggle-button'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:19\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n opened\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:40\n \n \n\n \n \n Whether the owning drawer is opened.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n position\n \n \n \n \n \n \n Type : \"start\" | \"end\"\n\n \n \n \n \n Default value : 'start'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:38\n \n \n\n \n \n Position of the owning side drawer.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n subscriptions\n \n \n \n \n \n \n Default value : new Subscription()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:42\n \n \n\n \n \n Subscriptions managed by this component.\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n classEnd\n \n \n\n \n \n getclassEnd()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:22\n \n \n \n \n Whether this button is attach to a drawer in position 'end'.\n\n\n \n Returns : boolean\n\n \n \n \n\n \n \n \n \n \n \n \n icon\n \n \n\n \n \n geticon()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:27\n \n \n \n \n Gets the name of the icon to display.\n\n\n \n Returns : string\n\n \n \n \n\n \n \n\n\n\n\n \n import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, HostBinding, AfterViewInit } from '@angular/core';\n\nimport { DrawerComponent } from '../drawer/drawer.component';\nimport { Message, MessageService } from '../messages';\nimport { Subscription } from 'rxjs';\n\n\n/**\n * Implements open/close button for the side drawers.\n */\n@Component({\n selector: 'ccf-drawer-toggle-button',\n templateUrl: './toggle-button.component.html',\n styleUrls: ['./toggle-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToggleButtonComponent implements AfterViewInit, OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer-toggle-button';\n /** Whether this button is attach to a drawer in position 'end'. */\n @HostBinding('class.ccf-drawer-toggle-button-end') // eslint-disable-line\n get classEnd(): boolean {\n return this.position === 'end';\n }\n\n /** Gets the name of the icon to display. */\n get icon(): string {\n let expand = 'arrow_right';\n let collapse = 'arrow_left';\n if (this.position === 'end') {\n ([expand, collapse] = [collapse, expand]);\n }\n\n return this.opened ? collapse : expand;\n }\n\n /** Position of the owning side drawer. */\n private position: 'start' | 'end' = 'start';\n /** Whether the owning drawer is opened. */\n private opened = false;\n /** Subscriptions managed by this component. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of toggle button component.\n *\n * @param drawer The owning side drawer.\n * @param messageService Service used to send and receive event messages.\n * @param cdr The change detector reference.\n */\n constructor(private drawer: DrawerComponent,\n messageService: MessageService,\n private cdr: ChangeDetectorRef) {\n const channel = messageService.connect(this);\n this.subscriptions.add(channel.getMessagesFromSource(drawer).subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /**\n * Initializes this component.\n */\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.position = this.drawer.position;\n this.cdr.markForCheck();\n });\n }\n\n /**\n * Cleans up all subscriptions.\n */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Process an event message.\n *\n * @param msg The event.\n * @returns true if change detection needs to be run.\n */\n handleMessage(msg: Message): boolean {\n if (msg.payload.type === 'drawer-toggled') {\n this.opened = msg.payload.opened;\n return true;\n }\n\n return false;\n }\n\n /**\n * Updates the drawer state.\n */\n toggle(): void {\n const drawer = this.drawer;\n const { opened, expanded } = drawer;\n if (opened) {\n if (expanded) {\n drawer.closeExpanded();\n } else {\n drawer.close();\n }\n } else {\n drawer.open();\n }\n }\n}\n\n \n\n \n \n {{ icon }}\n\n\n \n\n \n \n ./toggle-button.component.scss\n \n :host {\n position: absolute;\n top: calc(50% - 2.0625rem);\n right: -1.0625rem;\n width: 1.0625rem;\n height: 3rem;\n border-radius: 0rem 0.25rem 0.25rem 0rem;\n cursor: pointer;\n display: flex;\n align-items: center;\n transition: 0.6s;\n\n &.ccf-drawer-toggle-button-end {\n right: unset;\n left: calc(-1rem - 1px);\n border-radius: 0.25rem 0rem 0rem 0.25rem;\n }\n\n .expand-collapse-icon {\n position: relative;\n right: 0.25rem;\n transition: all 0.5s;\n }\n\n &.ccf-drawer-toggle-button-end .expand-collapse-icon {\n right: unset;\n left: -0.25rem;\n }\n}\n\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ icon }}'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ToggleButtonComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ViewerComponent.html":{"url":"components/ViewerComponent.html","title":"component - ViewerComponent","body":"\n \n\n\n\n\n\n Components\n \n ViewerComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts\n\n\n\n \n Description\n \n \n Viewer for tissue samples\n\n \n\n\n \n Implements\n \n \n OnChanges\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-viewer\n \n\n \n styleUrls\n ./viewer.component.scss\n \n\n\n\n \n templateUrl\n ./viewer.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n className\n \n \n loading\n \n \n safeUrl\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n ngOnChanges\n \n \n Private\n updateUrl\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n url\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n closed\n \n \n \n \n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(sanitizer: DomSanitizer)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:29\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n sanitizer\n \n \n DomSanitizer\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n url\n \n \n \n \n Type : string\n\n \n \n \n \n Default value : ''\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:19\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n closed\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:21\n \n \n \n \n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-viewer'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:17\n \n \n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngOnChanges\n \n \n \n \n \n \nngOnChanges(changes: SimpleChanges)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:33\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n changes\n \n SimpleChanges\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n updateUrl\n \n \n \n \n \n \n \n updateUrl()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:39\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-viewer'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:17\n \n \n\n\n \n \n \n \n \n \n \n \n loading\n \n \n \n \n \n \n Default value : true\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:23\n \n \n\n\n \n \n \n \n \n \n \n \n safeUrl\n \n \n \n \n \n \n Type : SafeResourceUrl | null\n\n \n \n \n \n Default value : null\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:29\n \n \n\n \n \n Sanitized url\nNOTE: Never use a getter for this property! It will cause the iframe to reload constantly.\n\n \n \n\n \n \n\n\n\n\n\n \n import {\n ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, OnChanges, Output, SimpleChanges,\n} from '@angular/core';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\n\n\n/**\n * Viewer for tissue samples\n */\n@Component({\n selector: 'ccf-viewer',\n templateUrl: './viewer.component.html',\n styleUrls: ['./viewer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ViewerComponent implements OnChanges {\n @HostBinding('class') className = 'ccf-viewer';\n\n @Input() url = '';\n\n @Output() readonly closed = new EventEmitter();\n\n loading = true;\n\n /**\n * Sanitized url\n * NOTE: Never use a getter for this property! It will cause the iframe to reload constantly.\n */\n safeUrl: SafeResourceUrl | null = null;\n\n constructor(private readonly sanitizer: DomSanitizer) { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if ('url' in changes) {\n this.updateUrl();\n }\n }\n\n private updateUrl(): void {\n const { sanitizer, url } = this;\n this.safeUrl = null;\n if (url) {\n this.safeUrl = sanitizer.bypassSecurityTrustResourceUrl(url);\n this.loading = true;\n }\n }\n}\n\n \n\n \n \n \n launch\n Open in Portal\n \n \n clear\n \n\n\n\n \n Loading External Site\n\n\n\n\n\n \n\n \n \n ./viewer.component.scss\n \n :host {\n display: block;\n\n .toolbar {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n width: 100%;\n height: 1.5rem;\n\n .launch {\n margin-right: 3.5rem;\n\n &.mat-button-disabled {\n cursor: not-allowed;\n }\n\n .icon {\n margin-right: 0.25rem;\n }\n }\n\n .close {\n min-width: 0;\n padding: 0;\n line-height: 1.5rem;\n border-radius: 0;\n }\n }\n\n .overlay {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n position: absolute;\n top: 1.5rem;\n bottom: 0;\n left: 0;\n right: 0;\n\n .spinner {\n margin-bottom: 0.5rem;\n }\n }\n\n .frame {\n width: 100%;\n height: 100%;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' launch Open in Portal clear Loading External Site'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ViewerComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ViewerModule.html":{"url":"modules/ViewerModule.html","title":"module - ViewerModule","body":"\n \n\n\n\n\n Modules\n ViewerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ViewerModule\n\n\n\ncluster_ViewerModule_exports\n\n\n\ncluster_ViewerModule_declarations\n\n\n\n\nViewerComponent\n\nViewerComponent\n\n\n\nViewerModule\n\nViewerModule\n\nViewerModule -->\n\nViewerComponent->ViewerModule\n\n\n\n\n\nViewerComponent \n\nViewerComponent \n\nViewerComponent -->\n\nViewerModule->ViewerComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/viewer/viewer.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ViewerComponent\n \n \n \n \n Exports\n \n \n ViewerComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\nimport { ViewerComponent } from './viewer.component';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatButtonModule,\n MatIconModule,\n MatProgressSpinnerModule\n ],\n declarations: [ViewerComponent],\n exports: [ViewerComponent]\n})\nexport class ViewerModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/WorkerDataSourceService.html":{"url":"injectables/WorkerDataSourceService.html","title":"injectable - WorkerDataSourceService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n WorkerDataSourceService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts\n \n\n\n\n \n Extends\n \n \n WorkerCCFDatabaseDataSourceService\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Protected\n createWorker\n \n \n Private\n getWorkerUrl\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(globalConfig: GlobalConfigState, locator: LocationStrategy)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts:10\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n globalConfig\n \n \n GlobalConfigState\n \n \n \n No\n \n \n \n \n locator\n \n \n LocationStrategy\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Protected\n createWorker\n \n \n \n \n \n \n \n createWorker(_config: CCFDatabaseOptions)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts:18\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n _config\n \n CCFDatabaseOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Worker\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n getWorkerUrl\n \n \n \n \n \n \n \n getWorkerUrl(directImport: boolean)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts:23\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n directImport\n \n boolean\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : string | URL\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { LocationStrategy } from '@angular/common';\nimport { Injectable } from '@angular/core';\nimport { CCFDatabaseOptions } from 'ccf-database';\nimport { GlobalConfigState, WorkerCCFDatabaseDataSourceService } from 'ccf-shared';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WorkerDataSourceService extends WorkerCCFDatabaseDataSourceService {\n constructor(\n globalConfig: GlobalConfigState,\n private readonly locator: LocationStrategy\n ) {\n super(globalConfig);\n }\n\n protected createWorker(_config: CCFDatabaseOptions): Worker {\n const url = this.getWorkerUrl(true);\n return new Worker(url, { type: 'module' });\n }\n\n private getWorkerUrl(directImport: boolean): string | URL {\n if (directImport) {\n return new URL('./data-source.worker', import.meta.url);\n }\n\n const externalUrl = this.locator.prepareExternalUrl('0-es2015.worker.js');\n const codeBlob = new Blob(\n [`importScripts('${externalUrl}')`],\n { type: 'application/javascript' }\n );\n\n return URL.createObjectURL(codeBlob);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"changelog.html":{"url":"changelog.html","title":"getting-started - changelog","body":"\n \n\nChangelog\nChangelog for the Common Coordinate Framework (CCF) User Interfaces\n3.1.0 - 2022-04-07\nAdded in 3.1.0\n\nAdded support for the latest CCF Ontology v1.8.0 which adds cell types\nAdded feature to search for tissue blocks by cell type\nAdded API feature to dynamically generate GTEx rui_locations.jsonld\nAdded logging of organ and block position changes to the RUI\nAdded an expanded organ selector that makes selecting organs much easier with the larger number of reference organs we have now\nNow generating programming libraries for the CCF-API in Python, TypeScript, TypeScript (Angular), and JavaScript. We will be publishing them to appropriate package managers soon.\nImproved performance of the CCF-API\nNew theming options and toggle for the CCF EUI/RUI\nAdded new themes for SenNet, GTEx, and a default theme\nAdded compodoc generated code documentation to production and staging builds\nBug fixes and minor improvements\n\n3.0.0 - 2022-01-27\nAdded in 3.0.0\n\nAdded support for the latest CCF Ontology v1.7.0\nBug fixes and code cleanup\n\n3.0.0 BETA - 2021-12-17\nAdded in 3.0.0 BETA\n\nAdded reference organs and ASCT+B tables from the v1.1 CCF Release\nLinks: CCF Ontology v1.7 BETA, CCF Release v1.1\n\n\n\nKnown issues in 3.0.0 BETA\n\nPreviously registered tissues may appear slightly off. We are working to rectify this before making it a production release.\n\n2.5.0 - 2021-12-17\nAdded in 2.5.0\n\nCCF-API OpenAPI Spec and implementation. Next version will connect the EUI to this as it's backend.\nAdded the CCF Body UI Web Component for integrating the 3D scene deeply in webpages (including the HuBMAP data portal).\nThe organ-info Web Component can now take an option to highlight specific blocks in the scene. Currently only highlights by providers, but age, sex, and BMI will be added in the next version.\nBug fixes and Quality of Life improvements\n\n2.4.0 - 2021-12-10\nAdded in 2.4.0\n\nRUI shows a confirmation dialog when a user attempts to leave without finishing registration\nAdded GTEx data to EUI\nRUI Common Extraction Sites are now known as Landmarks\nOrgan info now highlights the block selected on click\nUpdated RUI YouTube Demo link\nBug fixes and Quality of Life improvements\n\n2.3.1 - 2021-09-13\nAdded in 2.3.1\n\nAdded support for paired organs to be refernced by their parent (ala Kidney + Left/Right Kidney)\n\n2.3.0 - 2021-09-10\nAdded in 2.3.0\n\nGreatly improved CCF Database performance. This improves the performance in both organ-info and EUI.\nImproved styling of organ-info\n\n2.2.0 - 2021-09-10\nAdded in 2.2.0\n\nAdded an organ-info web component for displaying reference organs and associated data in a simple panel display. The hubmap portal will be using this soon for organ pages.\nEMBEDDING.md instructions have been updated for organ-info embedding.\n\n2.1.0 - 2021-07-30\nAdded in EUI / RUI 2.1.0\n\nBetter support for embedding EUI/RUI in different containers, see EMBEDDING.md for updated instructions.\nConfiguration updates:\nConfiguration of EUI/RUI via webcomponent properties (vs globalConfig)\nOptional use of ontology id to select reference organs in the RUI\nRemoved embedded and tutorial mode configurations from the RUI config\nAbility to load data sources in the eui via external configuration\nAdded cancelRegistration callback to rui external configuration\n\n\nSet dark/light theme based on user/OS preferences\nUpdate HuBMAP search processing to conform to new field names\nCode cleanup, shared utilities, etc.\nTelemetry dialog box fixes to avoid unnecessary reloads\nRUI gizmo rotates in sync with the reference organ in 3D preview view\nRUI now uses an orthographic view when in registration views\n\n2.0.0 - 2021-07-16\nAdded in EUI / RUI 2.0.0\n\nRUI and EUI are now basic web-components, see EMBEDDING.md\nAdded advanced google analytics tracking/telemetry\nLinked donor card and tissue block hovering\nUpdated dependencies, including upgrading to Angular 12\nMinor UI and Bug fixes\nUpdated demo video links\nOrgan carousel will respond to container width and show only full icons\nEUI: clicking refresh and selecting body on partonomy resets the body view\n\nBreaking changes in EUI / RUI 2.0.0\n\nEmbedding the EUI and RUI must now be done via web-components. The most significant change is the element is no longer called ccf-root but is instead called ccf-eui or ccf-rui depending on the UI being embedded.\n\n1.7.0 - 2021-05-21\nAdded in EUI / RUI 1.7.0\n\nAdded a startup modal to the RUI which simplifies the initial setup for a new registration\nAdded 8 new reference organs, bringing us to 13 Reference Organs!\nAdded SPARC Registrations to the EUI\nAdded a tissue section visualization to the results list in the EUI\n\n1.6.0 - 2021-04-09\nAdded in RUI 1.6.0\n\nAdded SOP information to the About section\n\nAdded in EUI 1.6.0\n\nAdded color assignment/selection to both 3d scene and list results\nBug fixes, code cleanup, and optimization\n\nKnown issues in 1.6.0\n\nThe 3d scene is a little slow. To be able to interact, unselect reference organs to reduce scene complexity.\nTissue samples may be a little off in the 3D scene. This will be fixed in a future release. Data is still accurate.\n\n1.5.0 - 2021-03-26\nAdded in RUI 1.5.0\n\nMinor styling updates\n\nAdded in EUI 1.5.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features not fully integrated. This should be resolved in the next release scheduled for April 9th. You can view the results of this sprint on staging.\n\nUpdated styling to better fit the user interface spec\nAdded a new results pane which structures data into Donor->Tissue Blocks (+Datasets)->Tissue Samples (+Datasets)\nAdded a link viewer that allows us to display donors, samples, and datasets in a frame within the application\nAdded UFL thumbnails\nUpdated and optimized the ccf-database for the new results structure and future integrations\nTied organ carousel to the 3D scene. Turning off an organ removes the organ and related tissues from the 3D scene.\nTurned off anatomical structure opacity adjustment until it can be fully integrated\n\n1.4.0 - 2021-03-12\nAdded in RUI 1.4.0\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec\n\nAdded in EUI 1.4.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features partly integrated. This should be resolved in the next release scheduled for March 26th. You can view the results of this sprint on staging.\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec and match RUI styling\nUpdated the Info Dialog to match the RUI look and feel\nUpdated the data processing to improve efficiency and generate data in the form needed for the v1.5.0 spec\nAdded a reference organ selector, also used in the RUI, to turn off/on reference organs on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\nAdded a technology filter\nAdded a control to set Opacities of individual organs/anatomical structures on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\n\n1.3.5 - 2021-02-26\nAdded in RUI 1.3.5\n\nUpdated with a new round of User Interface improvements\nAdded the ability to upload previous registrations created using the standalone version of the RUI tool\nOrgans now have transparency applied automatically\nSolved a major memory leak and performance issue with the 3D reference organ interface. You should notice a sizable speed and reliability increase.\nRUI location numeric data is now rounded to 3 digits\nSwitched to using GitHub Actions over TravisCI for our CI/CD workflows\n\nAdded in EUI 1.3.5\n\nRemoved CCF's internal image-viewer in favor of the image-viewer on the HuBMAP Data Portal\n\nEUI 1.2.0 / RUI 1.0 FINAL - 2020-10-30\nAdded in EUI 1.2.0 / RUI 1.0 FINAL\n\nBug fixes and improvements\nUpdated embedding API in collaboration with the IEC\nUpdated EUI codebase to be in sync with code changes made for the RUI\nAdded KPMP data to the EUI\n\nKnown Issues in EUI 1.2.0 / RUI 1.0 FINAL\n\nIt is still possible that a 3d organ may fail to load. If this happens, just refresh and try again.\nEUI has not been updated with the latest organ set. This will be added in December with its scheduled refresh.\n\nRUI 1.0 BETA - 2020-10-16\nAdded in RUI 1.0 BETA\n\nCreated the first version of the RUI 1.0. This version is a BETA and works in standalone mode only. The next version will include full support and integration into the HuBMAP Ingestion Portal.\n10 Reference Organs are available to choose from (a combination of 4 organs, 2 sexes, and one organ with 2 sides [kidney])\nImplemented automatic tagging of data via collisions with anatomical structures\nRUI Location data is in standard JSON-LD format linked via the CCF Ontology and related ontologies\nImplemented extraction sites display to help guide placement of tissues\n\nKnown Issues in RUI 1.0 BETA\n\nWhile support for embedding is implemented, more testing and collaboration with IEC is required before it is made fully available. Initial embedding documentation is available here.\nWhen adjusting transparency via the left-hand Anatomical Structures menu or Show Previous Registrations option, the transparency effect is not very good. This will be addressed before the RUI 1.0 production release.\nSometimes the 3d organ fails to load when clicking through reference organs quickly (and other side cases). If this happens, just refresh and try again.\n\n1.1.0 - 2020-07-31\nAdded in 1.1.0\n\nUpgraded to latest Vitessce Image Viewer and started showing processed TIFF images coming directly from the HuBMAP infrastructure\nProcessed CODEX and 10x datasets are shown in the HuBMAP Portal's visualization tool\nAdded a limited set of TIFF image thumbnails, with more to come\nAdded two qualitative color schemes for colorizing images in the image viewer\nBug fixes/performance optimizations\n\n1.0.0-rc.1 - 2020-06-22\n\n:warning: WARNING: This version is a release candidate. Some minor updates will likely happen between now and the official HuBMAP Data Release 1 in July.\n\nAdded in 1.0.0-rc.1\n\nBody UI interactions\nImage Viewer Integration\nPartonomy linkage to search / Body UI\nNow fully integrated into the HuBMAP Portal\n\nKnown Issues in 1.0.0-rc.1\n\nImage Viewer is using a placeholder .tiff until more .tiff images can be loaded from the IEC\n\n1.0.0-alpha.3 - 2019-05-08\nAdded in 1.0.0-alpha.3\n\nHooked up the interface to real data (not shown online as the data is not public yet)\nAdded the Tissue Browser on the right\nAdded the initial (Tissue) Image Viewer popup. Currently shows metadata, but no images yet.\nAdded an initial 3D Body. Tissues cuboids currently not displayed, but a test cuboid is shown.\nDocumentation (>90%) and testing coverage improved further\n\n1.0.0-alpha.2 - 2019-03-27\nAdded in 1.0.0-alpha.2\n\nIncreased documentation and testing coverage across the board\nAdded fullscreen button\nBug fixes and optimizations\n\n1.0.0-alpha.1 - 2019-03-06\nAdded in 1.0.0-alpha.1\n\nStarted the process of implementing the 1.0.0 UI spec\nSpec Doc\nUser Stories\n\n\nSetup the base project scaffolding for the new version\nAdded CCF Partonomy (CCF-P) search and tree display\nAdded a filter for filter tissues\n\n0.6.0 - 2019-11-08\nAdded in 0.6.0\n\nThe CCF API project was started with an initial OpenAPI Schema, documentation, and code for spinning up a mock data server. This codifies the CCF data and metadata standards defined by MC-IU and will be used by the CCF EUI and RUI.\nIn preparation for future developments, we added a hidden, alpha-level 3d organ viewer. You can toggle this on and off in the organ view, by typing 3d with your keyboard.\nUpdated navigation to directly jump to the tissue browser when a user selects an item from the search box\nUpgraded dependencies, including upgrades to Angular 8\nTesting and bug fixes\nMinor UI updates\nChanged download icon color\nChanged the background color for the search\nMoved the Technologies filter above ontology\nAdditional styles for details button\n\n\n\n0.5.0 - 2019-05-24\nAdded in 0.5.0\n\nDisplay of the CCF ontology, integrated with search\nSemantic search by ontology, results are presented at all levels\nTissue overlays showing regions of interest\nData download links to direct users to https://sampledata.hubmapconsortium.org\nData documentation (95% coverage) and testing (85% coverage)\n\n0.2.0 - 2019-05-03\nAdded in 0.2.0\n\nSprint 2 release of the CCF-UI!\nA search interface was added to query data by age, sex, technology and TMC. Ontological search will be implemented in the next sprint.\nBody, Organ, and Tissue views now respond to updates to the search on the fly\nAppropriate metadata is now displayed in the Body, Organ, Tissue, and Cell views\n\n0.1.0 - 2019-04-12\nAdded in 0.1.0\n\nSprint 1 release of the CCF-UI!\nSetup the base project scaffolding\nAdded a sample database that includes initial data provided by VU\nAdded Visual browsing of tissue samples and metadata at the whole body, organ, tissue, and cell level\nStay tuned! More features coming in Sprint 2 (starts next week!) and Sprint 3\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n projects/ccf-eui/src/app/app-web-component.component.ts\n \n component\n AppWebComponent\n \n 0 %\n (0/16)\n \n \n \n \n \n projects/ccf-eui/src/app/app-web-component.component.ts\n \n function\n parseDataSources\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/app.component.ts\n \n component\n AppComponent\n \n 48 %\n (14/29)\n \n \n \n \n \n projects/ccf-eui/src/app/app.component.ts\n \n interface\n AppOptions\n \n 0 %\n (0/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/header/header.component.ts\n \n component\n HeaderComponent\n \n 75 %\n (6/8)\n \n \n \n \n \n projects/ccf-eui/src/app/core/models/flat-node.ts\n \n class\n FlatNode\n \n 50 %\n (3/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/models/list-result.ts\n \n interface\n ListResult\n \n 0 %\n (0/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/models/ontology-selection.ts\n \n interface\n OntologySelection\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts\n \n injectable\n AppRootOverlayContainer\n \n 0 %\n (0/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n injectable\n DelegateDataSourceService\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n interface\n DelegateDataSourceOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.worker.ts\n \n variable\n database\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts\n \n injectable\n WorkerDataSourceService\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n injectable\n OntologySearchService\n \n 72 %\n (8/11)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n interface\n SearchResult\n \n 100 %\n (4/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n injectable\n ThemingService\n \n 83 %\n (10/12)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n variable\n DEFAULT_THEME\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n injectable\n ColorAssignmentState\n \n 12 %\n (1/8)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n interface\n Color\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n interface\n ColorAssignmentStateModel\n \n 0 %\n (0/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n variable\n DEFAULT_COLOR_PALETTE\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n injectable\n DataState\n \n 97 %\n (35/36)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n interface\n DataStateModel\n \n 100 %\n (2/2)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n function\n allCompleted\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n function\n queryData\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n function\n sendCompletedTo\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n variable\n DEFAULT_FILTER\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n interface\n DefaultIconDefinition\n \n 100 %\n (5/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n variable\n DEFAULT_ICONS\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n injectable\n IconRegistryState\n \n 100 %\n (6/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n interface\n IconDefinition\n \n 100 %\n (5/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n injectable\n ListResultsState\n \n 50 %\n (6/12)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n interface\n ListResultsStateModel\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n injectable\n SceneState\n \n 75 %\n (12/16)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n interface\n SceneStateModel\n \n 0 %\n (0/7)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n variable\n DEFAULT_SELECTED_ORGANS\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/store.module.ts\n \n variable\n ROOT_STATES\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts\n \n component\n FiltersContentComponent\n \n 100 %\n (11/11)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts\n \n component\n FiltersPopoverComponent\n \n 100 %\n (10/10)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts\n \n component\n OntologySearchComponent\n \n 92 %\n (12/13)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts\n \n component\n OntologySelectionComponent\n \n 76 %\n (10/13)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n component\n OntologyTreeComponent\n \n 86 %\n (32/37)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n variable\n getLevel\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n variable\n isExpandable\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts\n \n component\n DonorCardComponent\n \n 93 %\n (14/15)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts\n \n component\n ResultsBrowserComponent\n \n 66 %\n (12/18)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts\n \n component\n TissueSectionVisComponent\n \n 83 %\n (5/6)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts\n \n component\n CheckboxComponent\n \n 100 %\n (8/8)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n \n component\n ContainerComponent\n \n 100 %\n (13/13)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n \n function\n throwDuplicateDrawersError\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts\n \n component\n ContentComponent\n \n 100 %\n (18/18)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n component\n DrawerComponent\n \n 95 %\n (42/44)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n class\n InitializationState\n \n 100 %\n (7/7)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n variable\n EXPAND_COLLAPSE_PARAMS_DEFAULT\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n ContentContainerChanged\n \n 100 %\n (3/3)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n DrawerContainersChanged\n \n 100 %\n (3/3)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n DrawerInitialized\n \n 100 %\n (2/2)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n DrawerToggled\n \n 100 %\n (6/6)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n variable\n MessageService\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts\n \n component\n ToggleButtonComponent\n \n 100 %\n (12/12)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts\n \n component\n DropdownComponent\n \n 100 %\n (9/9)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts\n \n component\n DualSliderComponent\n \n 100 %\n (26/26)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts\n \n component\n SpinnerOverlayComponent\n \n 100 %\n (5/5)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n \n component\n ThumbnailCarouselComponent\n \n 100 %\n (9/9)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n \n variable\n nextUid\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts\n \n component\n ViewerComponent\n \n 20 %\n (2/10)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n class\n MessageChannel\n \n 100 %\n (8/8)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n injectable\n MessageService\n \n 100 %\n (6/6)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n interface\n Message\n \n 100 %\n (4/4)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n interface\n MessageServiceConfig\n \n 100 %\n (2/2)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n variable\n MESSAGE_SERVICE_CONFIG\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n variable\n MESSAGE_SERVICE_DEFAULT_CONFIG\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @angular-ru/common : ^15.126.1\n \n @angular/animations : ^12.1.1\n \n @angular/cdk : ^12.1.1\n \n @angular/common : ^12.1.1\n \n @angular/compiler : ^12.1.1\n \n @angular/core : ^12.1.1\n \n @angular/elements : ^12.1.1\n \n @angular/forms : ^12.1.1\n \n @angular/material : ^12.1.3\n \n @angular/platform-browser : ^12.1.1\n \n @angular/platform-browser-dynamic : ^12.1.1\n \n @angular/router : ^12.1.1\n \n @angular/youtube-player : ^12.1.1\n \n @deck.gl/core : ^8.5.7\n \n @deck.gl/geo-layers : ^8.5.7\n \n @deck.gl/layers : ^8.5.7\n \n @deck.gl/mesh-layers : ^8.5.7\n \n @loaders.gl/core : ^3.0.12\n \n @loaders.gl/draco : ^3.0.12\n \n @loaders.gl/gltf : ^3.0.12\n \n @luma.gl/core : ^8.5.7\n \n @math.gl/core : ^3.5.5\n \n @ngxs-labs/data : ^6.2.0\n \n @ngxs/logger-plugin : ^3.7.1\n \n @ngxs/storage-plugin : ^3.7.1\n \n @ngxs/store : ^3.7.1\n \n @rdfjs/data-model : ^1.2.0\n \n @types/lru-cache : ^5.1.1\n \n @webcomponents/webcomponentsjs : ^2.5.0\n \n bind-decorator : ^1.0.11\n \n body-parser : ^1.19.0\n \n cannon-es : ^0.18.0\n \n comlink : ^4.3.0\n \n concat : ^1.0.3\n \n cors : ^2.8.5\n \n css-element-queries : ^1.2.3\n \n document-register-element : ^1.7.2\n \n dotenv : ^10.0.0\n \n express : ^4.17.1\n \n file-saver : ^2.0.5\n \n fs-extra : ^10.0.0\n \n graphology : ^0.20.0\n \n graphology-shortest-path : ^1.4.1\n \n helmet : ^4.6.0\n \n hex-rgb : ^5.0.0\n \n idb-keyval : ^6.0.1\n \n jsonld : ^5.2.0\n \n lodash : ^4.17.21\n \n lru-cache : ^6.0.0\n \n n3 : ^1.8.1\n \n ng5-slider : ^1.2.6\n \n ngx-google-analytics : ^11.2.1\n \n ngx-markdown : ^12.0.1\n \n node-fetch : ^2.6.7\n \n qs : ^6.10.2\n \n rdf-literal : ^1.2.0\n \n rdfxml-streaming-parser : ^1.4.0\n \n readable-stream : ^3.6.0\n \n rxjs : ^6.6.7\n \n stream-browserify : ^3.0.0\n \n swiper : ^6.5.1\n \n ts-cacheable : ^1.0.6\n \n tslib : ^2.1.0\n \n uuid : ^8.3.2\n \n zone.js : ~0.11.4\n \n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n DataQueryState   (projects/.../data.state.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n \n \n \n \n \n DataQueryState\n \n \n \n \n Current state of data queries.\n\n \n \n \n \n  Running\n \n \n \n \n Value : running\n \n \n \n \n  Completed\n \n \n \n \n Value : completed\n \n \n \n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n allCompleted   (projects/.../data.state.ts)\n \n \n parseDataSources   (projects/.../app-web-component.component.ts)\n \n \n queryData   (projects/.../data.state.ts)\n \n \n sendCompletedTo   (projects/.../data.state.ts)\n \n \n throwDuplicateDrawersError   (projects/.../container.component.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n \n \n \n \n \n \n allCompleted\n \n \n \n \n \n \nallCompleted(states)\n \n \n\n\n\n\n \n \n Helper for testing that all states in an array are DataQueryState.Completed.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n states\n\n \n No\n \n\n\n \n The array of states to test.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if all values in the array is Completed.\n\n \n \n \n \n \n \n \n \n \n \n \n queryData\n \n \n \n \n \n \nqueryData(query, next?)\n \n \n\n\n\n\n \n \n Helper operator that combines querying with sharing and replay functionality.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n query\n\n \n No\n \n\n\n \n The data query function.\n\n \n \n \n next\n\n \n Yes\n \n\n\n \n An optional listener on the values emitted by the latest query.\n\n \n \n \n \n \n \n \n \n Returns : OperatorFunction>\n\n \n \n The combined pipe operator function.\n\n \n \n \n \n \n \n \n \n \n \n \n sendCompletedTo\n \n \n \n \n \n \nsendCompletedTo(subject)\n \n \n\n\n\n\n \n \n Helper creating a function that sends a DataQueryState.Completed to\na subject whenever it is called.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n subject\n\n \n No\n \n\n\n \n The subject to send completed messagess to.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n The function.\n\n \n \n \n \n \n projects/ccf-eui/src/app/app-web-component.component.ts\n \n \n \n \n \n \n \n parseDataSources\n \n \n \n \n \n \nparseDataSources(value)\n \n \n\n\n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Optional\n \n \n \n \n value\n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : string[]\n\n \n \n \n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n \n \n \n \n \n \n \n throwDuplicateDrawersError\n \n \n \n \n \n \nthrowDuplicateDrawersError(position)\n \n \n\n\n\n\n \n \n Helper function for creating drawer errors.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n position\n\n \n No\n \n\n\n \n The position of the drawer.\n\n \n \n \n \n \n \n \n \n Returns : never\n\n \n \n \n \n \n \n \n \n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nCommon Coordinate Framework (CCF) - User Interfaces\n\n\n\n\n\n\n\nThis repository is a monorepo (multiple projects in one repository) containing the software to build the CCF-EUI, CCF-RUI, and CCF-Organ-Info.\nWebsite Links\n\nCCF Exploration User Interface (CCF-EUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app\nProduction: https://portal.hubmapconsortium.org/ccf-eui\nProduction (alt): https://hubmapconsortium.github.io/ccf-ui/\nStaging: https://hubmap-ccf-ui.netlify.app/\nOld Version 0.6.0: https://old--hubmap-ccf-ui.netlify.app\n\n\nCCF Registration User Interface (CCF-RUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app/rui/\nProduction: https://hubmapconsortium.github.io/ccf-ui/rui/\nStaging: https://hubmap-ccf-ui.netlify.app/rui/\n\n\nCCF Organ Info Component (CCF-Organ-Info)\nProduction: https://hubmapconsortium.github.io/ccf-ui/organ-info/\nStaging: https://hubmap-ccf-ui.netlify.app/organ-info/\n\n\n\nBackground and More Information\nFor more information about the Common Coordinate Framework (CCF), see the HuBMAP CCF Portal at https://hubmapconsortium.github.io/ccf/.\nChange Log\nSee the ChangeLog for the latest developments.\nCredits\nThis software is developed by the Cyberinfrastructure for Network Science Center at Indiana University. It is funded by NIH Award OT2OD026671.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\nMIT License\nCopyright (c) 2019 HuBMAP Consortium\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CheckboxModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CoreModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DonorCardModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DrawerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DropdownModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DualSliderModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n FiltersContentModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n FiltersPopoverModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HeaderModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologyExplorationModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologySearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologySelectionModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologyTreeModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n ResultsBrowserModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SpinnerOverlayModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n StoreModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n ThemingModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n ThumbnailCarouselModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n TissueSectionVisModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n ViewerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_declarations\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CheckboxModule\n\n\n\ncluster_CheckboxModule_declarations\n\n\n\ncluster_CheckboxModule_exports\n\n\n\ncluster_CoreModule\n\n\n\ncluster_CoreModule_imports\n\n\n\ncluster_CoreModule_exports\n\n\n\ncluster_DonorCardModule\n\n\n\ncluster_DonorCardModule_declarations\n\n\n\ncluster_DonorCardModule_imports\n\n\n\ncluster_DonorCardModule_exports\n\n\n\ncluster_DrawerModule\n\n\n\ncluster_DrawerModule_declarations\n\n\n\ncluster_DrawerModule_exports\n\n\n\ncluster_DropdownModule\n\n\n\ncluster_DropdownModule_declarations\n\n\n\ncluster_DropdownModule_exports\n\n\n\ncluster_DualSliderModule\n\n\n\ncluster_DualSliderModule_declarations\n\n\n\ncluster_DualSliderModule_exports\n\n\n\ncluster_FiltersContentModule\n\n\n\ncluster_FiltersContentModule_declarations\n\n\n\ncluster_FiltersContentModule_exports\n\n\n\ncluster_FiltersPopoverModule\n\n\n\ncluster_FiltersPopoverModule_declarations\n\n\n\ncluster_FiltersPopoverModule_exports\n\n\n\ncluster_HeaderModule\n\n\n\ncluster_HeaderModule_declarations\n\n\n\ncluster_HeaderModule_exports\n\n\n\ncluster_OntologyExplorationModule\n\n\n\ncluster_OntologyExplorationModule_imports\n\n\n\ncluster_OntologyExplorationModule_exports\n\n\n\ncluster_OntologySearchModule\n\n\n\ncluster_OntologySearchModule_declarations\n\n\n\ncluster_OntologySearchModule_exports\n\n\n\ncluster_OntologySelectionModule\n\n\n\ncluster_OntologySelectionModule_declarations\n\n\n\ncluster_OntologySelectionModule_OntologySelectionComponent_providers\n\n\n\ncluster_OntologySelectionModule_exports\n\n\n\ncluster_OntologyTreeModule\n\n\n\ncluster_OntologyTreeModule_declarations\n\n\n\ncluster_OntologyTreeModule_exports\n\n\n\ncluster_ResultsBrowserModule\n\n\n\ncluster_ResultsBrowserModule_declarations\n\n\n\ncluster_ResultsBrowserModule_exports\n\n\n\ncluster_SpinnerOverlayModule\n\n\n\ncluster_SpinnerOverlayModule_declarations\n\n\n\ncluster_SpinnerOverlayModule_exports\n\n\n\ncluster_ThemingModule\n\n\n\ncluster_ThemingModule_providers\n\n\n\ncluster_ThumbnailCarouselModule\n\n\n\ncluster_ThumbnailCarouselModule_declarations\n\n\n\ncluster_ThumbnailCarouselModule_exports\n\n\n\ncluster_TissueSectionVisModule\n\n\n\ncluster_TissueSectionVisModule_declarations\n\n\n\ncluster_TissueSectionVisModule_exports\n\n\n\ncluster_ViewerModule\n\n\n\ncluster_ViewerModule_declarations\n\n\n\ncluster_ViewerModule_exports\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nAppWebComponent\n\nAppWebComponent\n\nAppModule -->\n\nAppWebComponent->AppModule\n\n\n\n\n\nCoreModule\n\nCoreModule\n\nAppModule -->\n\nCoreModule->AppModule\n\n\n\n\n\nHeaderModule \n\nHeaderModule \n\nHeaderModule -->\n\nCoreModule->HeaderModule \n\n\n\n\n\nDrawerModule\n\nDrawerModule\n\nAppModule -->\n\nDrawerModule->AppModule\n\n\n\n\n\nContainerComponent \n\nContainerComponent \n\nContainerComponent -->\n\nDrawerModule->ContainerComponent \n\n\n\n\n\nContentComponent \n\nContentComponent \n\nContentComponent -->\n\nDrawerModule->ContentComponent \n\n\n\n\n\nDrawerComponent \n\nDrawerComponent \n\nDrawerComponent -->\n\nDrawerModule->DrawerComponent \n\n\n\n\n\nToggleButtonComponent \n\nToggleButtonComponent \n\nToggleButtonComponent -->\n\nDrawerModule->ToggleButtonComponent \n\n\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nAppModule -->\n\nDualSliderModule->AppModule\n\n\n\n\n\nDualSliderComponent \n\nDualSliderComponent \n\nDualSliderComponent -->\n\nDualSliderModule->DualSliderComponent \n\n\n\n\n\nFiltersContentModule\n\nFiltersContentModule\n\nFiltersContentModule -->\n\nDualSliderModule->FiltersContentModule\n\n\n\n\n\nFiltersPopoverModule\n\nFiltersPopoverModule\n\nAppModule -->\n\nFiltersPopoverModule->AppModule\n\n\n\n\n\nFiltersPopoverComponent \n\nFiltersPopoverComponent \n\nFiltersPopoverComponent -->\n\nFiltersPopoverModule->FiltersPopoverComponent \n\n\n\n\n\nOntologyExplorationModule\n\nOntologyExplorationModule\n\nAppModule -->\n\nOntologyExplorationModule->AppModule\n\n\n\n\n\nOntologySearchModule \n\nOntologySearchModule \n\nOntologySearchModule -->\n\nOntologyExplorationModule->OntologySearchModule \n\n\n\n\n\nOntologySelectionModule \n\nOntologySelectionModule \n\nOntologySelectionModule -->\n\nOntologyExplorationModule->OntologySelectionModule \n\n\n\n\n\nOntologyTreeModule \n\nOntologyTreeModule \n\nOntologyTreeModule -->\n\nOntologyExplorationModule->OntologyTreeModule \n\n\n\n\n\nResultsBrowserModule\n\nResultsBrowserModule\n\nAppModule -->\n\nResultsBrowserModule->AppModule\n\n\n\n\n\nResultsBrowserComponent \n\nResultsBrowserComponent \n\nResultsBrowserComponent -->\n\nResultsBrowserModule->ResultsBrowserComponent \n\n\n\n\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule\n\nAppModule -->\n\nSpinnerOverlayModule->AppModule\n\n\n\n\n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent -->\n\nSpinnerOverlayModule->SpinnerOverlayComponent \n\n\n\n\n\nViewerModule\n\nViewerModule\n\nAppModule -->\n\nViewerModule->AppModule\n\n\n\n\n\nViewerComponent \n\nViewerComponent \n\nViewerComponent -->\n\nViewerModule->ViewerComponent \n\n\n\n\n\nCheckboxComponent\n\nCheckboxComponent\n\n\n\nCheckboxModule\n\nCheckboxModule\n\nCheckboxModule -->\n\nCheckboxComponent->CheckboxModule\n\n\n\n\n\nCheckboxComponent \n\nCheckboxComponent \n\nCheckboxComponent -->\n\nCheckboxModule->CheckboxComponent \n\n\n\nFiltersContentModule -->\n\nCheckboxModule->FiltersContentModule\n\n\n\n\n\nHeaderModule\n\nHeaderModule\n\nCoreModule -->\n\nHeaderModule->CoreModule\n\n\n\n\n\nHeaderComponent \n\nHeaderComponent \n\nHeaderComponent -->\n\nHeaderModule->HeaderComponent \n\n\n\n\n\nStoreModule\n\nStoreModule\n\nCoreModule -->\n\nStoreModule->CoreModule\n\n\n\n\n\nThemingModule\n\nThemingModule\n\nCoreModule -->\n\nThemingModule->CoreModule\n\n\n\n\n\nDonorCardComponent\n\nDonorCardComponent\n\n\n\nDonorCardModule\n\nDonorCardModule\n\nDonorCardModule -->\n\nDonorCardComponent->DonorCardModule\n\n\n\nResultsBrowserModule -->\n\nDonorCardModule->ResultsBrowserModule\n\n\n\n\n\nDonorCardComponent \n\nDonorCardComponent \n\nDonorCardComponent -->\n\nDonorCardModule->DonorCardComponent \n\n\n\n\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule\n\nDonorCardModule -->\n\nThumbnailCarouselModule->DonorCardModule\n\n\n\n\n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent -->\n\nThumbnailCarouselModule->ThumbnailCarouselComponent \n\n\n\n\n\nTissueSectionVisModule\n\nTissueSectionVisModule\n\nDonorCardModule -->\n\nTissueSectionVisModule->DonorCardModule\n\n\n\n\n\nTissueSectionVisComponent \n\nTissueSectionVisComponent \n\nTissueSectionVisComponent -->\n\nTissueSectionVisModule->TissueSectionVisComponent \n\n\n\n\n\nContainerComponent\n\nContainerComponent\n\nDrawerModule -->\n\nContainerComponent->DrawerModule\n\n\n\n\n\nContentComponent\n\nContentComponent\n\nDrawerModule -->\n\nContentComponent->DrawerModule\n\n\n\n\n\nDrawerComponent\n\nDrawerComponent\n\nDrawerModule -->\n\nDrawerComponent->DrawerModule\n\n\n\n\n\nToggleButtonComponent\n\nToggleButtonComponent\n\nDrawerModule -->\n\nToggleButtonComponent->DrawerModule\n\n\n\n\n\nDropdownComponent\n\nDropdownComponent\n\n\n\nDropdownModule\n\nDropdownModule\n\nDropdownModule -->\n\nDropdownComponent->DropdownModule\n\n\n\n\n\nDropdownComponent \n\nDropdownComponent \n\nDropdownComponent -->\n\nDropdownModule->DropdownComponent \n\n\n\nFiltersContentModule -->\n\nDropdownModule->FiltersContentModule\n\n\n\n\n\nDualSliderComponent\n\nDualSliderComponent\n\nDualSliderModule -->\n\nDualSliderComponent->DualSliderModule\n\n\n\n\n\nFiltersContentComponent\n\nFiltersContentComponent\n\nFiltersContentModule -->\n\nFiltersContentComponent->FiltersContentModule\n\n\n\nFiltersPopoverModule -->\n\nFiltersContentModule->FiltersPopoverModule\n\n\n\n\n\nFiltersContentComponent \n\nFiltersContentComponent \n\nFiltersContentComponent -->\n\nFiltersContentModule->FiltersContentComponent \n\n\n\n\n\nFiltersPopoverComponent\n\nFiltersPopoverComponent\n\nFiltersPopoverModule -->\n\nFiltersPopoverComponent->FiltersPopoverModule\n\n\n\n\n\nHeaderComponent\n\nHeaderComponent\n\nHeaderModule -->\n\nHeaderComponent->HeaderModule\n\n\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\nOntologyExplorationModule -->\n\nOntologySearchModule->OntologyExplorationModule\n\n\n\n\n\nOntologySelectionModule\n\nOntologySelectionModule\n\nOntologySelectionModule -->\n\nOntologySearchModule->OntologySelectionModule\n\n\n\n\n\nOntologySearchComponent \n\nOntologySearchComponent \n\nOntologySearchComponent -->\n\nOntologySearchModule->OntologySearchComponent \n\n\n\nOntologyExplorationModule -->\n\nOntologySelectionModule->OntologyExplorationModule\n\n\n\n\n\nOntologySelectionComponent \n\nOntologySelectionComponent \n\nOntologySelectionComponent -->\n\nOntologySelectionModule->OntologySelectionComponent \n\n\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologyExplorationModule -->\n\nOntologyTreeModule->OntologyExplorationModule\n\n\n\nOntologySelectionModule -->\n\nOntologyTreeModule->OntologySelectionModule\n\n\n\n\n\nOntologyTreeComponent \n\nOntologyTreeComponent \n\nOntologyTreeComponent -->\n\nOntologyTreeModule->OntologyTreeComponent \n\n\n\n\n\nOntologySearchComponent\n\nOntologySearchComponent\n\nOntologySearchModule -->\n\nOntologySearchComponent->OntologySearchModule\n\n\n\n\n\nOntologySelectionComponent\n\nOntologySelectionComponent\n\nOntologySelectionModule -->\n\nOntologySelectionComponent->OntologySelectionModule\n\n\n\n\n\nOntologySearchService\n\nOntologySearchService\n\nOntologySelectionComponent -->\n\nOntologySearchService->OntologySelectionComponent\n\n\n\n\n\nOntologyTreeComponent\n\nOntologyTreeComponent\n\nOntologyTreeModule -->\n\nOntologyTreeComponent->OntologyTreeModule\n\n\n\n\n\nResultsBrowserComponent\n\nResultsBrowserComponent\n\nResultsBrowserModule -->\n\nResultsBrowserComponent->ResultsBrowserModule\n\n\n\n\n\nSpinnerOverlayComponent\n\nSpinnerOverlayComponent\n\nSpinnerOverlayModule -->\n\nSpinnerOverlayComponent->SpinnerOverlayModule\n\n\n\n\n\nThemingService\n\nThemingService\n\nThemingModule -->\n\nThemingService->ThemingModule\n\n\n\n\n\nThumbnailCarouselComponent\n\nThumbnailCarouselComponent\n\nThumbnailCarouselModule -->\n\nThumbnailCarouselComponent->ThumbnailCarouselModule\n\n\n\n\n\nTissueSectionVisComponent\n\nTissueSectionVisComponent\n\nTissueSectionVisModule -->\n\nTissueSectionVisComponent->TissueSectionVisModule\n\n\n\n\n\nViewerComponent\n\nViewerComponent\n\nViewerModule -->\n\nViewerComponent->ViewerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 21 Modules\n \n \n \n \n \n \n \n \n 21 Components\n \n \n \n \n \n \n \n 11 Injectables\n \n \n \n \n \n \n \n 3 Classes\n \n \n \n \n \n \n \n 18 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/typealiases.html":{"url":"miscellaneous/typealiases.html","title":"miscellaneous-typealiases - typealiases","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Type aliases\n\n\n\n Index\n \n \n \n \n \n \n ContainerPayload   (projects/.../messages.ts)\n \n \n DrawerPayload   (projects/.../messages.ts)\n \n \n ExpandedState   (projects/.../drawer.component.ts)\n \n \n ExpandedState2   (projects/.../drawer.component.ts)\n \n \n GetChildrenFunc   (projects/.../ontology-tree.component.ts)\n \n \n Message   (projects/.../messages.ts)\n \n \n MessageChannel   (projects/.../messages.ts)\n \n \n MessageService   (projects/.../messages.ts)\n \n \n OpenedState   (projects/.../drawer.component.ts)\n \n \n Payload   (projects/.../messages.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n \n \n \n \n \n ContainerPayload\n \n \n \n \n Payload types for messages sent from the drawer container.\n\n \n \n \n \n ContentContainerChanged | DrawerContainersChanged\n\n \n \n \n \n \n \n \n \n \n DrawerPayload\n \n \n \n \n Payload types for messages sent from the drawers.\n\n \n \n \n \n DrawerToggled | DrawerInitialized\n\n \n \n \n \n \n \n \n \n \n Message\n \n \n \n \n Specific message type.\n\n \n \n \n \n GenericMessage\n\n \n \n \n \n \n \n \n \n \n MessageChannel\n \n \n \n \n Specific channel type.\n\n \n \n \n \n GenericMessageChannel\n\n \n \n \n \n \n \n \n \n \n MessageService\n \n \n \n \n Specific service type.\n\n \n \n \n \n GenericMessageService\n\n \n \n \n \n \n \n \n \n \n Payload\n \n \n \n \n Combined payload type for all drawer sub components.\n\n \n \n \n \n ContainerPayload | DrawerPayload\n\n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n \n \n \n \n \n ExpandedState\n \n \n \n \n Expanded/collapsed state.\n\n \n \n \n \n \"open\" | \"open-instant\" | \"closed\"\n\n \n \n \n \n \n \n \n \n \n ExpandedState2\n \n \n \n \n Expanded state relative to an opposite drawer.\n\n \n \n \n \n \"collapsed\" | \"half\" | \"extended\" | \"full\"\n\n \n \n \n \n \n \n \n \n \n OpenedState\n \n \n \n \n Opened/closed state.\n\n \n \n \n \n \"open\" | \"open-instant\" | \"closed\"\n\n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n \n \n \n \n \n GetChildrenFunc\n \n \n \n \n Type of function for getting child nodes from a parent node.\n\n \n \n \n \n function\n\n \n \n \n \n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n database   (projects/.../data-source.worker.ts)\n \n \n DEFAULT_COLOR_PALETTE   (projects/.../color-assignment.state.ts)\n \n \n DEFAULT_FILTER   (projects/.../data.state.ts)\n \n \n DEFAULT_ICONS   (projects/.../default-icons.ts)\n \n \n DEFAULT_SELECTED_ORGANS   (projects/.../scene.state.ts)\n \n \n DEFAULT_THEME   (projects/.../theming.service.ts)\n \n \n EXPAND_COLLAPSE_PARAMS_DEFAULT   (projects/.../drawer.component.ts)\n \n \n getLevel   (projects/.../ontology-tree.component.ts)\n \n \n isExpandable   (projects/.../ontology-tree.component.ts)\n \n \n MESSAGE_SERVICE_CONFIG   (projects/.../message.service.ts)\n \n \n MESSAGE_SERVICE_DEFAULT_CONFIG   (projects/.../message.service.ts)\n \n \n MessageService   (projects/.../messages.ts)\n \n \n nextUid   (projects/.../thumbnail-carousel.component.ts)\n \n \n ROOT_STATES   (projects/.../store.module.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/core/services/data-source/data-source.worker.ts\n \n \n \n \n \n \n \n database\n \n \n \n \n \n \n Default value : new CCFDatabase()\n \n \n\n \n \n Worker thread database.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n \n \n \n \n \n \n DEFAULT_COLOR_PALETTE\n \n \n \n \n \n \n Type : Color[]\n\n \n \n \n \n Default value : [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n})\n \n \n\n\n \n \n\n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n \n \n \n \n \n \n DEFAULT_FILTER\n \n \n \n \n \n \n Type : Filter\n\n \n \n \n \n Default value : {\n sex: 'Both',\n ageRange: [1, 110],\n bmiRange: [13, 83],\n tmc: [],\n technologies: [],\n ontologyTerms: ['http://purl.obolibrary.org/obo/UBERON_0013702'],\n cellTypeTerms: ['http://purl.obolibrary.org/obo/CL_0000000']\n}\n \n \n\n \n \n Default values for filters.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n \n \n \n \n \n \n DEFAULT_ICONS\n \n \n \n \n \n \n Type : DefaultIconDefinition[]\n\n \n \n \n \n Default value : [\n // Reference Organs\n { name: 'bladder', namespace: 'app', url: 'assets/icons/organs/ico-organs-bladder.svg' },\n { name: 'blood', namespace: 'app', url: 'assets/icons/organs/ico-organs-blood.svg' },\n { name: 'bone-marrow', namespace: 'app', url: 'assets/icons/organs/ico-organs-bone-marrow.svg' },\n { name: 'brain', namespace: 'app', url: 'assets/icons/organs/ico-organs-brain.svg' },\n { name: 'eye', namespace: 'app', url: 'assets/icons/organs/ico-organs-eye.svg' },\n { name: 'fallopian-tube-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-left.svg' },\n { name: 'fallopian-tube-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-right.svg' },\n { name: 'heart', namespace: 'app', url: 'assets/icons/organs/ico-organs-heart.svg' },\n { name: 'kidney-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-left.svg' },\n { name: 'kidney-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-right.svg' },\n { name: 'kidney', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney.svg' },\n { name: 'knee', namespace: 'app', url: 'assets/icons/organs/ico-organs-knee.svg' },\n { name: 'large-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-large-intestine.svg' },\n { name: 'liver', namespace: 'app', url: 'assets/icons/organs/ico-organs-liver.svg' },\n { name: 'lung-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-left.svg' },\n { name: 'lung-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-right.svg' },\n { name: 'lung', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung.svg' },\n { name: 'lymph-nodes', namespace: 'app', url: 'assets/icons/organs/ico-organs-lymph-nodes.svg' },\n { name: 'neuron', namespace: 'app', url: 'assets/icons/organs/ico-organs-neuron.svg' },\n { name: 'ovaries', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovaries.svg' },\n { name: 'ovary-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-left.svg' },\n { name: 'ovary-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-right.svg' },\n { name: 'pancreas', namespace: 'app', url: 'assets/icons/organs/ico-organs-pancreas.svg' },\n { name: 'pelvis-f', namespace: 'app', url: 'assets/icons/organs/ico-organs-pelvis-f.svg' },\n { name: 'prostate', namespace: 'app', url: 'assets/icons/organs/ico-organs-prostate.svg' },\n { name: 'skin', namespace: 'app', url: 'assets/icons/organs/ico-organs-skin.svg' },\n { name: 'small-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-small intestine.svg' },\n { name: 'spleen', namespace: 'app', url: 'assets/icons/organs/ico-organs-spleen.svg' },\n { name: 'stomach', namespace: 'app', url: 'assets/icons/organs/ico-organs-stomach.svg' },\n { name: 'thymus', namespace: 'app', url: 'assets/icons/organs/ico-organs-thymus.svg' },\n { name: 'ureter-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-left.svg' },\n { name: 'ureter-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-right.svg' },\n { name: 'uterus', namespace: 'app', url: 'assets/icons/organs/ico-organs-uterus.svg' },\n { name: 'vasculature-thick', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thick.svg' },\n { name: 'vasculature-thin', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thin.svg' },\n\n { name: 'opacity', namespace: 'app', url: 'assets/icons/opacity-24px.svg' },\n { name: 'visibility_on', namespace: 'app', url: 'assets/icons/visibility-on-24px.svg' },\n { name: 'visibility_off', namespace: 'app', url: 'assets/icons/visibility-off-24px.svg' },\n { name: 'expand_more', namespace: 'app', url: 'assets/icons/expand_more-24px.svg' },\n { name: 'expand_less', namespace: 'app', url: 'assets/icons/expand_less-24px.svg' },\n { name: 'filter', url: 'assets/icons/filter.svg' }\n]\n \n \n\n \n \n Icons registered at startup.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n \n \n \n \n \n \n DEFAULT_SELECTED_ORGANS\n \n \n \n \n \n \n Default value : new Set(['Skin', 'Heart', 'Kidney', 'Spleen'])\n \n \n\n\n \n \n\n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n \n \n \n \n \n \n DEFAULT_THEME\n \n \n \n \n \n \n Default value : new InjectionToken('Default theme class')\n \n \n\n \n \n Token for specifying the default theme class.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n \n \n \n \n \n \n EXPAND_COLLAPSE_PARAMS_DEFAULT\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n params: {\n width: 0,\n margin: 0,\n margin2: 0\n }\n}\n \n \n\n \n \n Default animation parameters.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n \n \n \n \n \n \n getLevel\n \n \n \n \n \n \n Default value : property('level')\n \n \n\n \n \n Getter function for 'level' on a flat node.\n\n \n \n\n \n \n \n \n \n \n \n \n isExpandable\n \n \n \n \n \n \n Default value : property('expandable')\n \n \n\n \n \n Getter function for 'expandable' on a flat node.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n \n \n \n \n \n \n MESSAGE_SERVICE_CONFIG\n \n \n \n \n \n \n Default value : new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n)\n \n \n\n \n \n Token for specifying the message service configuration.\n\n \n \n\n \n \n \n \n \n \n \n \n MESSAGE_SERVICE_DEFAULT_CONFIG\n \n \n \n \n \n \n Type : MessageServiceConfig\n\n \n \n \n \n Default value : {\n isolated: true\n}\n \n \n\n \n \n Default message service configuration.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n \n \n \n \n \n \n MessageService\n \n \n \n \n \n \n Default value : GenericMessageService\n \n \n\n \n \n Reference to the service class.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n \n \n \n \n \n \n \n nextUid\n \n \n \n \n \n \n Default value : (() => {\n let counter = -1;\n return () => {\n counter += 1;\n return counter;\n };\n})()\n \n \n\n\n \n \n\n projects/ccf-eui/src/app/core/store/store.module.ts\n \n \n \n \n \n \n \n ROOT_STATES\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n GlobalConfigState,\n ColorAssignmentState,\n IconRegistryState,\n ListResultsState,\n DataState,\n SceneState\n]\n \n \n\n \n \n States shared across the entire app.\n\n \n \n\n \n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}} + "index": {"version":"2.3.9","fields":["title","body"],"fieldVectors":[["title/modules/AppModule.html",[0,1.232,1,2.96]],["body/modules/AppModule.html",[1,6.143,2,1.365,3,1.804,4,3.944,5,3.944,6,3.944,7,2.544,8,0.013,9,2.457,10,5.134,11,5.134,12,4.817,13,5.134,14,5.134,15,5.134,16,5.134,17,5.134,18,1.999,19,1.461,20,1.194,21,0.139,22,0.171,23,0.139,24,0.123,25,4.522,26,2.306,27,5.975,28,2.07,29,1.118,30,6.691,31,1.012,32,4.522,33,0.946,34,1.25,35,0.348,36,4.034,37,3.944,38,1.25,39,3.28,40,3.944,41,4.709,42,3.053,43,4.522,44,3.944,45,5.975,46,4.255,47,1.999,48,0.289,49,3.069,50,2.126,51,5.975,52,3.944,53,3.564,54,4.709,55,3.564,56,5.212,57,3.785,58,2.323,59,5.212,60,3.944,61,5.975,62,5.975,63,5.975,64,5.975,65,0.825,66,1.812,67,4.334,68,4.522,69,4.522,70,4.522,71,3.944,72,3.053,73,4.522,74,4.522,75,2.323,76,4.522,77,4.522,78,4.334,79,4.522,80,4.522,81,3.944,82,3.053,83,3.944,84,4.522,85,3.28,86,4.522,87,4.522,88,2.865,89,3.053,90,4.522,91,2.436,92,4.334,93,3.564,94,3.053,95,2.865,96,3.944,97,3.944,98,0.171,99,0.139,100,1.623,101,2.436,102,0.854,103,0.77,104,5.975,105,4.522,106,3.944,107,4.522,108,3.28,109,0.007,110,0.009,111,0.007]],["title/interfaces/AppOptions.html",[112,0.557,113,3.216]],["body/interfaces/AppOptions.html",[7,0.919,8,0.013,19,0.919,21,0.088,22,0.107,23,0.088,24,0.059,29,1.063,34,1.365,35,0.324,36,2.904,37,2.482,38,1.085,39,2.064,40,2.482,46,3.454,48,0.182,52,2.482,53,2.242,58,2.968,65,1.133,66,1.14,71,2.482,72,1.921,88,1.802,95,4.611,96,4.522,98,0.107,99,0.088,100,1.021,102,1.498,103,0.732,109,0.004,110,0.007,111,0.009,112,0.388,113,3.39,114,0.952,115,2.482,116,1.723,117,4.522,118,0.529,119,0.657,120,1.196,121,4.406,122,4.89,123,5.778,124,4.89,125,1.51,126,0.745,127,1.35,128,1.021,129,2.724,130,0.952,131,2.904,132,3.751,133,2.242,134,4.3,135,3.119,136,1.098,137,2.57,138,2.904,139,2.845,140,5.184,141,2.482,142,1.802,143,3.342,144,2.064,145,0.952,146,1.533,147,1.533,148,2.845,149,1.098,150,4.3,151,2.845,152,2.845,153,2.845,154,1.802,155,1.802,156,4.406,157,2.482,158,2.904,159,2.724,160,2.845,161,2.242,162,2.316,163,2.482,164,2.793,165,2.845,166,1.701,167,2.064,168,2.57,169,2.845,170,1.343,171,2.482,172,1.619,173,2.845,174,2.242,175,1.461,176,1.526,177,2.845,178,2.242,179,1.463,180,2.845,181,1.802,182,0.952,183,1.059,184,2.845,185,1.021,186,2.845,187,1.021,188,1.021,189,2.845,190,1.461,191,1.619,192,2.845,193,0.751,194,3.751,195,2.904,196,1.136,197,2.437,198,4.554,199,2.482,200,2.845,201,3.284,202,2.845,203,4.086,204,2.845,205,1.39,206,2.904,207,2.242,208,3.112,209,2.845,210,1.298,211,2.064,212,3.112,213,2.209,214,2.57,215,2.845,216,1.796,217,2.845,218,2.845,219,0.821,220,2.845,221,2.845,222,2.845,223,2.242,224,2.845,225,2.845,226,1.342,227,2.845,228,1.612,229,1.802,230,2.724,231,0.952,232,2.845,233,2.845,234,2.845,235,2.845,236,2.183,237,2.482,238,3.501,239,4.086,240,2.845,241,2.845,242,2.845,243,2.064,244,2.845,245,2.845,246,2.845,247,2.242,248,2.845,249,1.214,250,0.751,251,1.533,252,1.639,253,0.727,254,2.482,255,2.242,256,1.701,257,4.3,258,2.845,259,0.777,260,2.242,261,1.802,262,2.845,263,2.845,264,2.845,265,2.845,266,2.845,267,2.845,268,2.845,269,2.845,270,2.845,271,2.845,272,2.845,273,2.845,274,2.845,275,2.845,276,3.761,277,2.845,278,1.921,279,2.845,280,2.845,281,2.845,282,2.845,283,2.845,284,2.845,285,2.482,286,2.845,287,2.845,288,2.845,289,2.064,290,2.845,291,1.397,292,2.845,293,2.845,294,2.845,295,1.612,296,2.482,297,2.845,298,2.724,299,4.3,300,4.3,301,1.6,302,5.184,303,2.845,304,2.845,305,4.3,306,2.482,307,1.723,308,2.845,309,2.845,310,2.845,311,5.184,312,2.064,313,1.533,314,1.723,315,0.658,316,2.077,317,2.837,318,3.39,319,5.692,320,4.086,321,1.929,322,4.3,323,2.845,324,2.242,325,2.845,326,2.845,327,2.845,328,2.845,329,2.845,330,2.845,331,4.3,332,2.845,333,2.845,334,1.79,335,2.845,336,2.845,337,2.845,338,2.482,339,2.845,340,2.482,341,1.701,342,1.701,343,2.845,344,2.064,345,2.242,346,2.845,347,2.845,348,2.242,349,2.482,350,1.921,351,2.242,352,1.337,353,1.921,354,1.939,355,2.436,356,2.845,357,1.184,358,3.751,359,3.751,360,5.184,361,4.3,362,4.3,363,6.525,364,4.3,365,6.525,366,5.778,367,2.845,368,2.845,369,0.952,370,1.802,371,1.862,372,2.845,373,4.3,374,1.059,375,2.845,376,4.3,377,2.845,378,2.845,379,2.845,380,2.064,381,2.845,382,2.242,383,2.845,384,2.845,385,2.845,386,4.3,387,1.802,388,2.845,389,2.845,390,2.845,391,2.845,392,1.337,393,2.845,394,1.921,395,2.482,396,2.845,397,2.482,398,2.57,399,2.482,400,2.845,401,2.845]],["title/injectables/AppRootOverlayContainer.html",[36,2.755,402,0.944]],["body/injectables/AppRootOverlayContainer.html",[8,0.013,21,0.16,22,0.196,23,0.16,24,0.163,29,1.616,31,1.73,33,1.497,34,1.651,35,0.27,36,4.416,38,1.749,39,5.725,41,5.638,42,3.513,48,0.332,98,0.196,99,0.16,109,0.008,110,0.01,111,0.008,116,2.62,118,0.531,119,0.999,120,0.854,126,0.698,131,5.329,191,2.234,210,1.571,226,1.126,254,5.705,259,2.232,315,1.203,402,1.513,403,2.554,404,6.885,405,4.538,406,7.152,407,7.152,408,5.189,409,7.504,410,7.504,411,6.539,412,5.202,413,5.202,414,6.539,415,5.202,416,1.244,417,0.95,418,1.164,419,5.202,420,5.202,421,2.802,422,7.152,423,5.202,424,6.539,425,5.202,426,3.11,427,5.202,428,4.1,429,5.202,430,2.445,431,6.539,432,2.802,433,2.802,434,2.672,435,2.252,436,3.11,437,3.296,438,3.296,439,5.202,440,5.202,441,5.202]],["title/components/AppWebComponent.html",[9,1.319,130,0.557]],["body/components/AppWebComponent.html",[7,1.215,8,0.013,9,2.131,21,0.116,22,0.142,23,0.116,24,0.168,31,1.808,35,0.273,38,1.273,48,0.24,65,1.525,66,1.507,89,5.485,95,3.854,98,0.142,99,0.116,103,1.035,109,0.006,110,0.008,111,0.008,116,2.112,118,0.384,119,0.805,120,0.618,121,4.452,122,4.795,124,4.795,125,1.631,126,0.862,127,1.54,128,1.35,129,4.177,130,0.83,138,4.452,154,2.382,155,2.382,170,1.174,172,1.174,176,1.607,179,1.717,182,2.783,187,1.892,188,1.892,196,1.607,216,1.303,219,0.596,226,1.14,231,1.258,247,5.196,252,0.993,253,1.346,261,4.177,392,1.768,416,0.899,417,1.111,418,1.179,442,1.399,443,1.215,444,6.402,445,2.964,446,6.083,447,1.35,448,5.269,449,1.703,450,3.277,451,2.194,452,6.593,453,6.083,454,6.083,455,6.083,456,6.083,457,6.083,458,4.795,459,5.196,460,3.76,461,5.269,462,5.269,463,3.76,464,3.76,465,3.76,466,3.76,467,3.76,468,3.76,469,3.76,470,3.76,471,3.76,472,3.76,473,3.76,474,3.76,475,3.76,476,3.219,477,3.76,478,3.76,479,3.76,480,3.28,481,2.533,482,3.76,483,6.941,484,3.823,485,3.76,486,3.76,487,3.76,488,4.597,489,3.76,490,3.76,491,3.76,492,2.964,493,3.76,494,2.382,495,3.76,496,3.76,497,2.728,498,3.76,499,3.76,500,3.76,501,3.76,502,3.76,503,2.964,504,6.083,505,1.399,506,1.703,507,1.703,508,1.399,509,2.453,510,1.399,511,1.399,512,1.399,513,1.215,514,1.399,515,1.215,516,1.399,517,1.215,518,1.961,519,1.215,520,1.258,521,1.399,522,1.399,523,1.215,524,1.399,525,1.215,526,1.35,527,1.399,528,1.215,529,1.703,530,1.399,531,1.215,532,1.399,533,1.215,534,1.399,535,1.215,536,1.399,537,1.258,538,1.399,539,1.215,540,1.399,541,1.215,542,1.399,543,1.215,544,1.35,545,1.399,546,1.215,547,1.215,548,1.215,549,1.399,550,1.215,551,1.098,552,1.399,553,1.215,554,1.399,555,1.399]],["title/components/CheckboxComponent.html",[130,0.557,513,1.319]],["body/components/CheckboxComponent.html",[7,1.114,8,0.013,9,1.114,21,0.106,22,0.13,23,0.106,24,0.152,29,1.224,31,1.612,33,0.721,34,1.037,35,0.24,38,0.721,48,0.22,65,1.505,98,0.13,99,0.106,101,1.857,102,0.936,103,0.587,109,0.005,110,0.008,111,0.008,118,0.352,120,0.814,125,1.072,126,0.769,127,1.37,128,1.237,130,0.983,158,4.978,170,1.077,172,1.077,176,1.308,179,1.637,182,2.759,183,1.843,185,1.778,187,1.778,188,1.778,193,1.308,196,1.532,197,3.465,205,1.601,213,2.545,216,1.194,219,0.546,228,2.806,229,3.138,231,1.153,249,1.79,250,1.308,251,1.433,253,0.881,298,3.138,301,1.283,307,2.802,314,2.324,315,1.146,321,1.283,348,3.905,352,2.98,369,1.153,370,3.138,380,3.594,416,1.185,417,1.157,418,1.418,442,1.283,443,1.114,447,1.237,449,1.114,451,2.063,476,2.691,505,1.283,506,1.601,507,1.601,508,1.283,509,2.359,510,1.283,511,1.283,512,1.283,513,2.049,514,1.283,515,1.114,516,1.283,517,1.114,518,1.843,519,1.114,520,1.153,521,1.283,522,1.283,523,1.114,524,1.283,525,1.114,526,1.237,527,1.283,528,1.114,529,1.601,530,1.283,531,1.114,532,1.283,533,1.114,534,1.283,535,1.114,536,1.283,537,1.153,538,1.283,539,1.114,540,1.283,541,1.114,542,1.283,543,1.114,544,1.237,545,1.283,546,1.114,547,1.114,548,1.114,549,1.283,550,1.114,551,1.006,552,1.283,553,1.114,554,1.283,555,1.283,556,1.237,557,3.007,558,1.134,559,4.954,560,4.954,561,6.992,562,2.545,563,4.954,564,6.999,565,5.799,566,4.954,567,4.954,568,6.716,569,3.591,570,2.329,571,4.571,572,2.328,573,3.79,574,4.954,575,3.466,576,3.124,577,1.224,578,1.583,579,3.905,580,3.447,581,3.447,582,4.954,583,3.905,584,4.954,585,4.954,586,3.447,587,3.905,588,4.997,589,3.905,590,3.447,591,6.646,592,3.905,593,6.34,594,2.615,595,4.321,596,2.961,597,3.594,598,4.954,599,6.34,600,5.386,601,3.447,602,3.594,603,3.345,604,4.954,605,4.321,606,4.281,607,2.858,608,3.594,609,4.954,610,4.954,611,2.234,612,2.717,613,1.953,614,1.857,615,3.447,616,4.571,617,3.447,618,4.954,619,3.447,620,3.447,621,3.007,622,2.184,623,2.06,624,3.124,625,3.447,626,3.007,627,3.447,628,2.5,629,3.447,630,3.007,631,2.328,632,3.447,633,2.145,634,1.843,635,1.692,636,1.771,637,2.5,638,2.06,639,2.06,640,2.5,641,2.615,642,2.06,643,2.717,644,4.954,645,3.447,646,1.601,647,3.007,648,3.447,649,3.007,650,3.447]],["title/modules/CheckboxModule.html",[0,1.232,651,2.755]],["body/modules/CheckboxModule.html",[2,1.827,3,2.166,8,0.013,18,2.4,19,1.956,20,1.599,21,0.186,22,0.229,23,0.186,24,0.125,26,2.769,28,2.097,35,0.327,47,2.4,48,0.387,98,0.229,99,0.186,109,0.009,110,0.011,111,0.009,513,2.741,612,4.771,651,5.582,652,5.28,653,5.28,654,5.28,655,6.053,656,2.669,657,2.874,658,2.252,659,6.257,660,6.053]],["title/interfaces/Color.html",[112,0.557,301,1.518]],["body/interfaces/Color.html",[8,0.013,21,0.13,22,0.16,23,0.13,24,0.088,34,0.887,35,0.321,48,0.271,98,0.262,99,0.13,102,1.311,103,1.181,109,0.006,110,0.009,111,0.006,112,0.781,114,1.419,116,1.699,118,0.433,119,0.874,126,0.691,127,1.393,145,1.419,147,2.284,149,1.637,175,2.178,191,1.324,214,3.421,219,0.672,226,1.567,236,2.168,259,1.158,301,3.116,334,1.12,357,1.765,371,1.836,374,1.578,402,1.324,417,0.774,578,2.243,661,2.863,662,2.178,663,2.863,664,4.751,665,5.415,666,4.105,667,3.076,668,3.328,669,1.637,670,2.94,671,2.691,672,2.178,673,3.421,674,2.178,675,1.993,676,3.342,677,3.076,678,3.076,679,2.94,680,3.873,681,2.863,682,3.076,683,3.076,684,3.076,685,3.076,686,3.076,687,3.076,688,3.076,689,3.076,690,3.076,691,3.076,692,3.076,693,3.076,694,2.863,695,3.076,696,2.686,697,3.076,698,2.863,699,4.511,700,6.198,701,4.793,702,2.535,703,6.32,704,4.684,705,3.342,706,2.535,707,2.402,708,4.511,709,2.082,710,4.511,711,3.342,712,3.342,713,3.342,714,3.342,715,5.107,716,5.107,717,3.342,718,3.342,719,4.511,720,3.342,721,3.342,722,3.342,723,3.342,724,3.342,725,3.342,726,3.342,727,3.342,728,3.342,729,3.865,730,3.342,731,4.511,732,4.511,733,4.511,734,4.511,735,3.421,736,3.342,737,3.342,738,3.342,739,3.342]],["title/injectables/ColorAssignmentState.html",[402,0.944,709,2.003]],["body/injectables/ColorAssignmentState.html",[8,0.013,21,0.118,22,0.144,23,0.118,24,0.156,29,1.318,31,1.661,33,1.285,34,1.116,35,0.313,48,0.244,98,0.251,99,0.118,102,1.501,103,1.13,109,0.006,110,0.008,111,0.006,112,0.728,116,2.137,118,0.391,119,0.815,120,1.008,126,0.655,127,1.437,145,1.28,147,2.06,149,1.476,175,1.965,191,1.666,214,3.188,219,0.845,226,1.511,236,2.222,259,1.676,301,3.055,315,1.616,334,1.01,357,2.22,371,1.656,374,1.423,402,1.233,403,1.878,416,1.468,417,1.212,418,1.563,558,0.748,578,1.907,661,5.113,662,3.889,663,2.583,664,4.437,665,4.454,666,4.425,667,2.775,668,3.588,669,1.476,670,2.739,671,2.507,672,1.965,673,3.67,674,1.965,675,1.798,676,3.015,677,2.775,678,2.775,679,3.154,680,4.175,681,2.583,682,2.775,683,2.775,684,2.775,685,2.775,686,2.775,687,2.775,688,2.775,689,2.775,690,2.775,691,2.775,692,2.775,693,2.775,694,2.583,695,2.775,696,2.423,697,2.775,698,2.583,699,4.203,700,6.062,701,4.783,702,2.286,703,6.307,704,5.012,705,4.203,706,2.286,707,2.167,708,4.203,709,2.618,710,5.702,711,4.203,712,4.203,713,4.203,714,4.203,715,4.839,716,4.839,717,3.015,718,3.015,719,5.235,720,3.015,721,3.015,722,3.015,723,3.015,724,3.015,725,3.015,726,3.015,727,3.015,728,3.015,729,3.601,730,3.015,731,4.203,732,4.203,733,4.203,734,4.203,735,3.188,736,3.015,737,3.015,738,3.015,739,3.015,740,5.333,741,5.333,742,5.333,743,3.825,744,2.22,745,3.825,746,3.825,747,3.825,748,3.825,749,3.825,750,3.825,751,3.825,752,3.825]],["title/interfaces/ColorAssignmentStateModel.html",[112,0.557,698,2.755]],["body/interfaces/ColorAssignmentStateModel.html",[8,0.013,21,0.13,22,0.16,23,0.13,24,0.087,34,0.884,35,0.321,48,0.27,98,0.262,99,0.13,102,1.309,103,1.179,109,0.006,110,0.009,111,0.006,112,0.779,114,1.414,116,1.694,118,0.432,119,0.873,126,0.796,127,1.321,145,1.414,147,2.277,149,1.632,175,2.171,191,1.32,214,3.414,219,0.67,226,1.566,236,2.164,259,1.154,301,3.115,334,1.117,357,1.76,371,1.83,374,1.573,402,1.321,417,0.772,578,1.976,661,2.855,662,2.171,663,2.855,664,4.557,665,4.693,666,4.098,667,3.067,668,3.323,669,1.632,670,2.934,671,2.685,672,2.171,673,3.414,674,2.171,675,1.987,676,3.332,677,3.067,678,3.067,679,2.934,680,3.867,681,2.855,682,3.067,683,3.067,684,3.067,685,3.067,686,3.067,687,3.067,688,3.067,689,3.067,690,3.067,691,3.067,692,3.067,693,3.067,694,2.855,695,3.067,696,2.678,697,3.067,698,3.857,699,5.704,700,6.365,701,4.884,702,3.867,703,6.441,704,4.678,705,3.332,706,2.527,707,2.395,708,4.502,709,2.075,710,4.502,711,3.332,712,3.332,713,3.332,714,3.332,715,5.099,716,5.099,717,3.332,718,3.332,719,4.502,720,3.332,721,3.332,722,3.332,723,3.332,724,3.332,725,3.332,726,3.332,727,3.332,728,3.332,729,3.857,730,3.332,731,4.502,732,4.502,733,4.502,734,4.502,735,3.414,736,3.332,737,3.332,738,3.332,739,3.332,753,4.502]],["title/components/ContainerComponent.html",[130,0.557,515,1.319]],["body/components/ContainerComponent.html",[7,0.948,8,0.013,9,0.948,21,0.09,22,0.111,23,0.09,24,0.16,29,1.087,31,1.723,33,1.432,34,1.227,35,0.273,38,0.613,48,0.187,65,1.496,91,2.37,98,0.111,99,0.203,100,1.579,102,0.998,103,0.998,109,0.004,110,0.007,111,0.007,118,0.449,119,0.672,120,0.722,125,1.269,126,0.783,127,0.535,128,1.052,129,3.716,130,1.016,145,0.981,149,1.132,170,0.916,172,1.832,174,3.467,176,1.743,179,2.209,182,2.709,183,1.637,185,1.579,187,1.579,188,1.579,193,1.162,196,1.394,205,1.422,210,2.067,216,1.016,219,0.836,226,1.269,231,0.981,249,1.242,250,1.162,251,1.45,253,0.749,259,2.211,261,3.716,278,1.98,295,2.492,313,3.951,315,1.221,334,0.774,342,1.753,357,1.831,369,0.981,374,1.964,392,2.068,416,1.052,417,1.071,418,1.181,426,1.753,442,1.091,443,0.948,447,1.052,449,0.948,492,2.311,505,1.091,506,2.031,507,1.422,508,1.091,509,2.183,510,1.091,511,1.091,512,1.091,513,0.948,514,1.091,515,1.896,516,1.091,517,1.896,518,1.637,519,0.948,520,0.981,521,1.091,522,1.091,523,0.948,524,1.091,525,0.948,526,1.052,527,1.091,528,0.948,529,1.422,530,1.091,531,0.948,532,1.091,533,0.948,534,1.091,535,0.948,536,1.091,537,0.981,538,1.091,539,0.948,540,1.091,541,0.948,542,1.091,543,0.948,544,1.052,545,1.091,546,0.948,547,0.948,548,0.948,549,1.091,550,0.948,551,0.856,552,1.091,553,0.948,554,1.091,555,1.091,556,1.052,558,1.032,577,1.087,578,1.201,607,2.976,633,3.363,744,2.442,754,2.311,755,4.161,756,2.844,757,3.837,758,4.399,759,2.821,760,5.279,761,4.399,762,2.955,763,3.156,764,5.279,765,5.279,766,4.965,767,3.467,768,4.624,769,3.16,770,5.866,771,2.492,772,2.97,773,3.501,774,5.279,775,3.837,776,4.399,777,1.983,778,2.834,779,3.013,780,3.191,781,1.763,782,4.399,783,4.399,784,2.743,785,2.932,786,3.837,787,4.399,788,3.191,789,2.97,790,2.97,791,2.932,792,2.54,793,3.837,794,4.399,795,2.932,796,2.97,797,2.932,798,4.399,799,4.399,800,2.38,801,2.932,802,2.787,803,2.37,804,6.845,805,4.399,806,5.866,807,2.932,808,3.961,809,3.837,810,5.866,811,4.399,812,2.932,813,2.97,814,3.837,815,4.399,816,2.932,817,3.83,818,3.191,819,2.932,820,2.932,821,3.837,822,2.932,823,2.932,824,2.932,825,1.579,826,2.932,827,2.558,828,2.558,829,2.127,830,2.311,831,1.753,832,2.558,833,2.617,834,2.558,835,3.837,836,2.932,837,2.558,838,2.932,839,2.558,840,3.156,841,2.844,842,2.311,843,2.932,844,2.932,845,2.932,846,2.932,847,1.857,848,2.311,849,2.558,850,2.127,851,2.932,852,2.932,853,3.837,854,1.753,855,2.26,856,3.837,857,2.932,858,2.932,859,2.127,860,2.932,861,1.661,862,2.932,863,2.932,864,4.399,865,4.399,866,2.932,867,2.932,868,2.932,869,2.932,870,2.932,871,2.932,872,2.932,873,1.661,874,1.661,875,2.97,876,1.661,877,2.932,878,2.558,879,2.558]],["title/components/ContentComponent.html",[130,0.557,517,1.319]],["body/components/ContentComponent.html",[7,0.874,8,0.013,9,0.874,20,0.714,21,0.083,22,0.102,23,0.083,24,0.161,29,1.022,31,1.739,33,1.269,34,1.338,35,0.251,38,0.565,48,0.173,65,1.483,98,0.102,99,0.197,100,1.485,102,0.949,103,1.133,109,0.004,110,0.006,111,0.006,118,0.422,119,0.632,120,0.825,125,1.44,126,0.791,127,0.493,128,0.97,129,3.565,130,0.96,145,0.904,170,0.844,172,1.894,176,1.092,179,2.263,182,2.682,185,1.485,187,1.485,188,1.485,191,2.079,193,1.092,196,1.327,205,2.219,210,2.01,216,0.936,219,0.655,226,1.218,231,0.904,236,1.681,249,1.168,250,1.092,251,1.645,253,0.691,259,2.089,261,3.565,278,1.825,289,1.961,313,3.267,315,1.735,316,2.563,321,2.38,334,1.758,341,1.616,342,1.616,369,0.904,370,2.62,374,1.006,392,1.271,416,1.201,417,1.107,418,1.658,426,1.616,442,1.006,443,0.874,447,0.97,449,1.337,450,1.456,505,1.006,506,1.96,507,1.337,508,1.006,509,2.094,510,1.006,511,1.006,512,1.006,513,0.874,514,1.006,515,0.874,516,1.006,517,1.819,518,1.539,519,0.874,520,0.904,521,1.006,522,1.006,523,0.874,524,1.006,525,0.874,526,0.97,527,1.006,528,0.874,529,1.337,530,1.006,531,0.874,532,1.006,533,0.874,534,1.006,535,0.874,536,1.006,537,0.904,538,1.006,539,0.874,540,1.006,541,0.874,542,1.006,543,0.874,544,0.97,545,1.006,546,0.874,547,0.874,548,0.874,549,1.006,550,0.874,551,0.789,552,1.006,553,0.874,554,1.006,555,1.006,556,0.97,558,1.1,577,1.022,578,1.961,606,1.825,607,2.884,634,2.971,646,2.275,744,2.525,756,2.706,759,2.563,763,3.003,766,4.829,767,3.26,769,3.031,771,2.343,773,3.527,775,3.608,777,1.865,778,2.537,779,2.891,780,3,781,1.657,784,2.563,788,3,789,2.793,790,2.793,792,1.791,796,2.793,803,2.228,814,3.608,817,3.644,818,3,825,1.456,829,1.961,833,2.343,840,3.979,841,3.446,850,1.961,854,1.616,855,1.388,859,1.961,873,1.531,875,1.825,880,2.358,881,4.136,882,6.372,883,2.124,884,4.382,885,5.023,886,6.065,887,5.023,888,5.023,889,5.627,890,4.136,891,4.136,892,4.136,893,5.627,894,5.627,895,5.627,896,4.136,897,2.62,898,4.136,899,3.96,900,4.136,901,4.136,902,3.644,903,4.136,904,4.104,905,4.136,906,3.26,907,2.703,908,3.26,909,3.26,910,2.703,911,2.703,912,4.136,913,3.364,914,2.228,915,4.136,916,4.366,917,2.703,918,4.136,919,2.703,920,2.793,921,3,922,4.136,923,5.627,924,2.358,925,3.392,926,2.03,927,2.358,928,2.13,929,2.703,930,2.703,931,1.791,932,2.703,933,2.703,934,2.703,935,2.703,936,2.703,937,2.358,938,2.13,939,2.846,940,4.136,941,2.703,942,4.136,943,2.703,944,1.616,945,1.712,946,2.703,947,2.703,948,2.703,949,5.023,950,2.703,951,2.703,952,4.136,953,2.703,954,2.703,955,4.136,956,2.703,957,2.703,958,2.703,959,1.219,960,1.961,961,2.358,962,1.712,963,2.703,964,2.703,965,2.703,966,1.712]],["title/interfaces/ContentContainerChanged.html",[112,0.557,967,2.439]],["body/interfaces/ContentContainerChanged.html",[8,0.013,21,0.146,22,0.179,23,0.146,24,0.098,35,0.196,98,0.309,99,0.146,103,0.809,109,0.007,110,0.009,111,0.007,112,0.99,114,1.589,118,0.485,119,0.943,125,1.335,126,0.904,130,1.026,176,1.63,179,2.332,181,3.01,193,1.255,205,1.995,208,2.559,219,0.978,236,1.589,307,2.907,313,3.324,357,1.978,432,2.559,433,2.559,434,2.44,435,2.057,436,2.84,437,3.01,438,3.01,450,2.559,481,2.854,551,1.387,558,0.929,577,1.525,578,1.685,633,2.672,634,2.296,646,1.995,669,2.801,759,2.747,762,2.233,773,3.625,777,2.142,778,2.782,781,2.747,784,3.31,800,2.782,854,2.84,855,3.17,916,3.689,920,3.208,944,2.84,967,4.097,968,2.84,969,4.152,970,4.167,971,4.167,972,4.342,973,3.208,974,3.689,975,3.208,976,2.691,977,3.689,978,4.167,979,3.446,980,3.446,981,3.689,982,3.689,983,3.03,984,3.446,985,2.332,986,3.208,987,4.167,988,2.84,989,3.521]],["title/modules/CoreModule.html",[0,1.232,10,2.755]],["body/modules/CoreModule.html",[0,2.001,2,1.604,3,2.001,8,0.013,10,5.636,18,2.217,19,1.717,20,1.403,21,0.164,22,0.201,23,0.164,24,0.11,28,2.296,35,0.341,38,1.112,47,2.217,48,0.34,65,1.318,66,2.129,91,2.862,92,3.854,97,4.635,98,0.201,99,0.164,108,3.854,109,0.008,110,0.01,111,0.008,120,0.873,137,3.961,141,4.635,154,3.366,155,3.366,219,1.05,492,4.188,656,2.466,990,4.635,991,4.635,992,4.635,993,5.636,994,5.358,995,5.358,996,5.313,997,6.627,998,5.313,999,4.475,1000,6.627,1001,5.313,1002,6.627,1003,5.313,1004,5.313,1005,5.313,1006,5.313,1007,4.475,1008,5.313,1009,3.588,1010,4.188,1011,5.313,1012,5.313,1013,5.313,1014,5.313,1015,5.313,1016,5.313,1017,5.313,1018,5.313,1019,5.313,1020,4.635,1021,7.222,1022,5.313,1023,4.188,1024,5.313]],["title/interfaces/DataStateModel.html",[112,0.557,1025,3.216]],["body/interfaces/DataStateModel.html",[8,0.013,21,0.083,22,0.229,23,0.083,24,0.056,33,1.504,34,1.179,35,0.291,48,0.173,65,0.757,66,1.087,98,0.213,99,0.083,100,0.973,101,1.461,102,1.531,103,0.706,109,0.011,110,0.006,111,0.004,112,0.37,114,0.907,116,1.087,118,0.423,119,0.633,120,0.445,125,0.587,126,0.602,136,1.047,137,2.478,142,2.627,143,3.59,144,1.967,145,0.907,146,1.461,147,1.461,149,1.047,161,3.268,162,1.461,193,1.604,195,2.8,196,1.329,197,1.949,203,3.968,210,0.819,211,1.967,219,1.139,226,1.555,229,1.718,236,2.357,237,2.365,238,1.831,239,2.137,243,4.834,249,0.765,250,0.716,251,1.807,252,2.126,256,2.478,259,2.071,307,1.087,314,3.348,315,0.627,351,3.268,371,2.18,374,1.009,392,3.133,402,0.959,417,0.495,418,0.928,426,2.478,432,1.461,433,1.461,434,2.586,435,1.174,529,0.876,547,1.34,558,0.53,562,3.933,577,1.025,578,0.74,623,1.621,668,2.13,669,1.047,670,2.13,671,1.949,672,1.393,674,1.393,675,1.275,679,3.809,707,1.536,777,1.222,830,3.968,831,1.621,840,1.621,913,1.621,914,2.711,939,1.536,976,2.851,988,1.621,1025,3.268,1026,1.831,1027,3.268,1028,3.399,1029,5.11,1030,1.967,1031,2.365,1032,2.137,1033,2.137,1034,6.873,1035,4.146,1036,3.617,1037,4.146,1038,2.711,1039,4.146,1040,2.365,1041,1.967,1042,1.831,1043,3.651,1044,2.137,1045,2.137,1046,2.365,1047,2.365,1048,2.365,1049,2.137,1050,2.137,1051,2.137,1052,1.831,1053,2.365,1054,2.365,1055,6.169,1056,1.621,1057,2.711,1058,2.137,1059,2.137,1060,4.391,1061,4.646,1062,2.137,1063,4.917,1064,2.137,1065,3.617,1066,2.711,1067,1.536,1068,1.621,1069,2.365,1070,2.365,1071,2.711,1072,3.617,1073,2.365,1074,2.365,1075,2.365,1076,2.365,1077,2.137,1078,6.367,1079,1.621,1080,4.986,1081,2.627,1082,2.137,1083,1.831,1084,2.711,1085,2.711,1086,2.711,1087,2.711,1088,2.711,1089,2.365,1090,4.834,1091,4.146,1092,2.711,1093,4.146,1094,2.711,1095,4.146,1096,2.711,1097,4.146,1098,2.711,1099,4.146,1100,2.711,1101,4.146,1102,2.711,1103,4.146,1104,2.711,1105,4.146,1106,3.617,1107,4.146,1108,4.146,1109,4.146,1110,2.711,1111,4.146,1112,6.664,1113,2.711,1114,2.711,1115,4.146,1116,3.617,1117,2.711,1118,2.711,1119,4.089,1120,5.637,1121,4.146,1122,2.711,1123,2.711,1124,4.146,1125,2.711,1126,2.711,1127,4.146,1128,2.711,1129,2.711,1130,3.617,1131,4.146,1132,2.711,1133,2.711,1134,4.146,1135,4.146,1136,2.711,1137,2.711,1138,5.995,1139,2.711,1140,2.711,1141,2.711,1142,2.711,1143,2.711,1144,2.711,1145,2.711,1146,2.711,1147,2.711,1148,2.711,1149,2.711,1150,2.711,1151,2.711,1152,2.711,1153,2.711,1154,2.711,1155,2.711,1156,2.711,1157,2.711,1158,2.711,1159,1.621,1160,2.711,1161,2.711,1162,2.711,1163,2.711,1164,2.711,1165,2.711,1166,2.711,1167,2.711,1168,2.711,1169,2.137,1170,2.711,1171,2.711,1172,2.711,1173,2.711,1174,2.711,1175,2.711,1176,1.831,1177,2.711,1178,2.711,1179,2.711,1180,1.831,1181,2.711,1182,2.711,1183,4.406,1184,2.711,1185,2.711,1186,2.711,1187,2.711,1188,2.711,1189,2.711,1190,2.711,1191,2.711,1192,2.711,1193,2.711,1194,2.711,1195,2.711,1196,2.711,1197,2.711,1198,2.711,1199,2.711,1200,2.711,1201,2.711,1202,2.711]],["title/interfaces/DefaultIconDefinition.html",[112,0.557,1203,2.96]],["body/interfaces/DefaultIconDefinition.html",[8,0.013,21,0.107,22,0.131,23,0.107,24,0.072,88,5.37,98,0.188,103,0.591,109,0.005,110,0.008,111,0.005,112,0.473,114,1.161,118,0.354,119,0.76,120,1.213,126,0.679,127,1.424,212,4.595,213,2.557,291,3.44,314,1.39,316,2.698,321,2.505,355,1.965,417,1.556,506,2.333,558,0.678,781,1.39,861,2.82,931,1.502,1180,2.343,1203,4.222,1204,2.343,1205,2.735,1206,2.735,1207,2.735,1208,4.301,1209,3.027,1210,3.923,1211,3.469,1212,3.469,1213,2.343,1214,3.469,1215,3.027,1216,2.735,1217,3.027,1218,6.179,1219,3.611,1220,4.613,1221,5.012,1222,3.611,1223,2.343,1224,2.735,1225,2.343,1226,5.701,1227,3.027,1228,7.356,1229,3.027,1230,3.027,1231,3.027,1232,4.342,1233,3.027,1234,3.027,1235,3.027,1236,3.027,1237,3.027,1238,3.027,1239,5.547,1240,5.547,1241,5.873,1242,5.873,1243,2.517,1244,3.027,1245,4.547,1246,3.027,1247,3.027,1248,3.027,1249,4.342,1250,4.342,1251,4.342,1252,3.027,1253,3.027,1254,5.873,1255,3.027,1256,4.342,1257,3.027,1258,3.027,1259,3.027,1260,3.027,1261,3.027,1262,5.547,1263,3.027,1264,3.027,1265,4.342,1266,3.027,1267,3.027,1268,3.027,1269,3.027,1270,3.027,1271,3.027,1272,4.342,1273,2.517,1274,3.027,1275,3.027,1276,3.027,1277,3.027,1278,3.027,1279,5.547,1280,3.027,1281,3.027,1282,5.547,1283,3.027,1284,3.027,1285,2.517,1286,3.027,1287,3.027,1288,5.873,1289,3.027,1290,4.342,1291,3.027,1292,2.735,1293,3.027,1294,2.735,1295,3.027,1296,3.027]],["title/interfaces/DelegateDataSourceOptions.html",[112,0.557,1297,2.96]],["body/interfaces/DelegateDataSourceOptions.html",[8,0.013,21,0.175,22,0.215,23,0.175,24,0.118,35,0.32,38,1.193,48,0.364,65,1.041,66,2.284,98,0.261,99,0.175,103,0.97,109,0.009,110,0.011,111,0.009,112,0.778,114,1.907,116,2.284,118,0.582,119,1.057,120,1.273,125,1.612,126,0.739,127,1.36,154,3.612,155,3.612,226,1.612,252,1.506,357,2.374,402,1.601,408,4.136,421,3.071,458,6.362,459,6.362,484,4.136,1007,3.85,1009,3.85,1010,4.494,1297,5.405,1298,3.85,1299,4.136,1300,6.037,1301,6.037,1302,6.037,1303,4.973,1304,6.037,1305,4.673,1306,5.02,1307,4.973,1308,3.229,1309,4.973]],["title/injectables/DelegateDataSourceService.html",[402,0.944,1007,2.755]],["body/injectables/DelegateDataSourceService.html",[8,0.013,21,0.174,22,0.214,23,0.174,24,0.142,29,1.703,31,1.267,33,1.185,35,0.32,38,1.185,48,0.362,65,1.034,66,2.269,98,0.26,99,0.174,103,0.964,109,0.009,110,0.011,111,0.009,112,0.773,116,2.762,118,0.578,120,0.93,125,1.225,126,0.604,127,1.034,154,3.587,155,3.587,226,1.608,252,1.496,357,2.358,402,1.594,403,2.78,408,5.39,416,1.354,417,1.034,421,3.05,458,5.856,459,5.856,484,4.108,1007,4.654,1009,4.654,1010,4.464,1297,5.608,1298,4.654,1299,4.108,1300,6.481,1301,6.012,1302,6.012,1303,4.94,1304,6.481,1305,4.654,1306,5,1307,6.012,1308,3.904,1309,4.94,1310,6.892,1311,5.663]],["title/components/DonorCardComponent.html",[130,0.557,519,1.319]],["body/components/DonorCardComponent.html",[7,0.746,8,0.013,9,0.746,20,0.61,21,0.184,22,0.087,23,0.071,24,0.153,29,0.904,31,1.64,33,0.951,34,1.254,35,0.188,38,0.483,48,0.148,65,1.46,98,0.087,99,0.184,101,1.244,102,1.133,109,0.004,110,0.006,111,0.006,118,0.236,119,0.559,120,0.601,125,0.983,126,0.761,127,1.146,128,0.829,130,0.988,136,0.891,170,0.721,172,0.721,174,1.82,176,0.966,179,1.283,182,2.624,183,1.361,185,1.313,187,1.313,188,1.313,191,1.961,194,3.192,195,2.471,196,1.2,210,0.697,212,3.229,216,0.8,219,0.819,223,2.884,228,2.073,229,2.318,231,0.773,236,2.244,249,1.033,250,0.966,251,0.904,252,0.966,253,0.59,291,2.943,301,2.337,307,1.466,315,1.453,316,2.402,321,1.691,334,1.884,354,3.024,369,2.005,374,1.924,387,3.275,416,0.875,417,1.146,418,1.341,426,3.583,430,2.649,435,1.584,442,0.859,443,0.746,447,0.829,449,0.746,451,1.523,476,2.402,505,0.859,506,1.821,507,1.821,508,0.859,509,1.924,510,0.859,511,0.859,512,0.859,513,0.746,514,0.859,515,0.746,516,0.859,517,0.746,518,1.361,519,1.671,520,2.611,521,0.859,522,0.859,523,0.746,524,0.859,525,0.746,526,0.829,527,0.859,528,0.746,529,1.182,530,0.859,531,0.746,532,0.859,533,0.746,534,0.859,535,0.746,536,0.859,537,0.773,538,0.859,539,0.746,540,0.859,541,0.746,542,0.859,543,0.746,544,0.829,545,0.859,546,0.746,547,2.03,548,1.469,549,0.859,550,0.746,551,0.674,552,0.859,553,0.746,554,0.859,555,0.859,556,0.829,558,1.102,564,6.116,570,1.72,572,1.559,573,3.09,575,2.716,576,2.448,577,0.904,587,2.884,591,4.915,594,2.54,595,4.509,607,1.65,611,2.049,613,1.308,614,1.244,622,2.879,623,2.716,624,3.229,626,3.192,630,3.192,631,3.491,633,1,634,2.654,635,2.538,636,2.334,637,4.725,638,3.754,639,2.716,641,3.024,646,2.266,744,0.961,771,2.073,773,2.331,789,2.471,790,2.471,792,2.238,803,1.971,825,1.244,833,1.892,841,1.971,855,1.879,873,1.308,874,2.073,875,2.471,876,1.308,883,3.079,902,1.675,904,3.368,926,1.134,931,2.238,939,2.073,959,2.831,962,1.463,966,2.879,983,3.373,1033,3.582,1056,1.38,1208,1.971,1292,2.884,1294,2.884,1312,4.431,1313,5.843,1314,5.378,1315,2.014,1316,6.641,1317,3.192,1318,3.192,1319,4.544,1320,3.659,1321,3.964,1322,4.544,1323,5.169,1324,3.659,1325,5.169,1326,4.915,1327,3.296,1328,4.544,1329,3.659,1330,2.309,1331,4.348,1332,3.583,1333,3.797,1334,2.309,1335,2.309,1336,2.309,1337,2.309,1338,2.309,1339,2.309,1340,3.797,1341,3.659,1342,2.309,1343,4.074,1344,2.654,1345,3.659,1346,2.309,1347,3.192,1348,3.192,1349,2.318,1350,3.659,1351,3.659,1352,2.471,1353,2.187,1354,2.309,1355,2.884,1356,2.654,1357,3.659,1358,3.192,1359,5.994,1360,2.309,1361,4.544,1362,4.544,1363,3.659,1364,4.509,1365,2.309,1366,2.309,1367,2.309,1368,3.192,1369,3.659,1370,3.659,1371,5.229,1372,5.169,1373,3.659,1374,3.659,1375,3.659,1376,3.659,1377,3.659,1378,3.659,1379,1.463,1380,1.463,1381,3.229,1382,3.192,1383,3.079,1384,2.654,1385,1.879,1386,1.308,1387,1.82,1388,2.187,1389,2.716,1390,2.448,1391,2.309,1392,2.309,1393,2.309,1394,2.309,1395,2.014,1396,2.309,1397,1.82,1398,2.309,1399,2.309,1400,3.582,1401,2.309,1402,1.559,1403,2.649,1404,2.448,1405,3.964,1406,3.192,1407,1.675,1408,1.82,1409,5.682,1410,1.308,1411,5.634,1412,2.309,1413,3.582,1414,3.964,1415,2.309,1416,3.192,1417,2.309,1418,2.309,1419,2.309,1420,2.309,1421,2.309,1422,2.309,1423,1.186,1424,2.309,1425,2.784,1426,1.463,1427,2.014,1428,2.309,1429,2.716,1430,2.309,1431,2.309,1432,3.659,1433,2.014,1434,2.309,1435,3.192,1436,2.309,1437,2.309,1438,2.014,1439,2.309,1440,2.309,1441,2.014,1442,2.309]],["title/modules/DonorCardModule.html",[0,1.232,1443,2.755]],["body/modules/DonorCardModule.html",[2,1.714,3,2.084,8,0.013,18,2.31,19,1.835,20,1.5,21,0.175,22,0.214,23,0.175,24,0.117,26,2.665,28,2.392,35,0.337,47,2.31,48,0.363,49,3.546,50,2.669,98,0.214,99,0.175,109,0.009,110,0.011,111,0.009,519,2.72,520,1.9,547,1.835,548,2.231,612,4.476,656,2.569,657,2.766,658,2.113,659,6.022,1312,3.394,1313,4.476,1314,4.119,1443,5.661,1444,4.953,1445,4.953,1446,4.953,1447,4.953,1448,5.445,1449,5.445,1450,5.678,1451,5.678,1452,3.834,1453,5.678,1454,5.678,1455,4.119,1456,5.678]],["title/interfaces/DrawerContainersChanged.html",[112,0.557,974,2.439]],["body/interfaces/DrawerContainersChanged.html",[8,0.013,21,0.145,22,0.178,23,0.145,24,0.097,35,0.195,98,0.308,99,0.145,103,0.801,109,0.007,110,0.009,111,0.007,112,0.987,114,1.575,118,0.481,119,0.937,125,1.327,126,0.905,130,0.987,176,1.803,179,2.349,181,2.983,193,1.244,205,1.983,208,2.536,219,0.746,236,1.575,307,2.897,313,4.039,357,2.554,432,2.536,433,2.536,434,2.419,435,2.039,436,2.815,437,2.983,438,2.983,450,2.536,481,2.841,551,1.374,558,0.921,577,1.516,578,1.675,633,2.657,634,2.283,646,1.983,669,2.791,759,2.735,762,2.213,773,3.26,777,2.123,778,2.766,781,2.458,784,3.306,800,2.766,854,2.815,855,3.152,916,3.667,920,4.143,944,2.815,967,3.667,968,2.815,969,4.142,970,4.143,971,4.143,972,4.324,973,3.18,974,4.08,975,4.143,976,3.476,977,3.667,978,4.143,979,3.416,980,3.416,981,3.667,982,3.667,983,3.012,984,3.416,985,2.312,986,3.18,987,4.143,988,2.815,989,3.506]],["title/interfaces/DrawerInitialized.html",[112,0.557,981,2.439]],["body/interfaces/DrawerInitialized.html",[8,0.013,21,0.147,22,0.181,23,0.147,24,0.099,35,0.198,98,0.309,99,0.147,103,0.815,109,0.007,110,0.009,111,0.007,112,0.993,114,1.602,118,0.489,119,0.948,125,1.342,126,0.905,130,0.939,176,1.638,179,2.345,181,3.034,193,1.265,205,2.005,208,2.58,219,0.759,236,1.602,307,2.757,313,3.341,357,1.994,432,2.58,433,2.58,434,2.46,435,2.074,436,2.862,437,3.034,438,3.034,450,2.58,481,2.865,551,1.398,558,0.936,577,1.533,578,1.694,633,2.686,634,2.308,646,2.005,669,2.809,759,2.757,762,2.251,773,3.281,777,2.159,778,2.797,781,2.486,784,3.314,800,2.797,854,2.862,855,3.186,916,3.708,920,3.234,944,2.862,967,3.708,968,2.862,969,4.161,970,4.189,971,4.189,972,4.359,973,3.234,974,3.708,975,3.234,976,2.713,977,3.708,978,4.189,979,4.5,980,4.5,981,4.113,982,3.708,983,3.045,984,3.474,985,2.351,986,3.234,987,4.189,988,2.862,989,3.534]],["title/modules/DrawerModule.html",[0,1.232,11,2.755]],["body/modules/DrawerModule.html",[2,1.627,3,2.018,8,0.013,11,5.718,18,2.236,19,1.741,20,1.423,21,0.166,22,0.203,23,0.166,24,0.111,26,2.58,28,1.867,35,0.34,47,2.236,48,0.344,49,3.434,50,2.533,56,5.831,57,4.235,58,2.768,59,5.831,60,4.7,91,2.902,92,3.909,93,4.247,98,0.203,99,0.166,109,0.008,110,0.01,111,0.008,172,2.611,515,2.702,517,2.702,550,2.702,551,1.573,656,2.487,828,4.7,829,3.909,973,3.638,1457,4.7,1458,4.7,1459,4.7,1460,5.388,1461,3.996,1462,3.996,1463,5.388,1464,4.247,1465,5.388]],["title/interfaces/DrawerToggled.html",[112,0.557,982,2.439]],["body/interfaces/DrawerToggled.html",[8,0.013,21,0.14,22,0.172,23,0.14,24,0.094,35,0.189,98,0.307,99,0.14,103,0.776,109,0.007,110,0.009,111,0.007,112,0.975,114,1.526,118,0.466,119,0.918,125,1.649,126,0.907,130,0.917,176,1.587,179,2.363,181,2.889,193,1.587,205,2.308,208,3.237,219,0.723,236,2.01,307,2.862,313,3.237,357,1.899,432,2.457,433,2.457,434,2.343,435,1.975,436,2.726,437,2.889,438,2.889,450,2.457,481,2.798,551,1.754,558,0.892,577,1.485,578,2.081,633,2.602,634,2.836,646,2.463,669,2.757,759,2.693,762,2.144,773,3.22,777,2.709,778,2.709,781,2.408,784,3.292,800,2.709,854,2.726,855,3.086,916,4.556,920,3.08,944,2.726,967,3.592,968,2.726,969,3.998,970,4.057,971,4.057,972,4.257,973,3.08,974,3.592,975,3.08,976,2.584,977,3.592,978,4.057,979,3.309,980,3.309,981,3.592,982,4.017,983,3.742,984,4.359,985,2.95,986,4.057,987,4.057,988,2.726,989,3.452]],["title/components/DropdownComponent.html",[130,0.557,523,1.319]],["body/components/DropdownComponent.html",[7,1.051,8,0.013,9,1.051,21,0.1,22,0.123,23,0.1,24,0.153,29,1.173,31,1.623,33,0.993,34,1.291,35,0.196,38,0.68,48,0.208,65,1.5,98,0.123,99,0.1,101,1.751,102,0.897,109,0.005,110,0.007,111,0.007,118,0.332,119,0.725,120,0.78,126,0.755,127,1.372,128,1.167,130,1.01,158,4.431,170,1.015,172,1.015,176,1.254,179,1.583,182,2.741,183,1.767,185,1.704,187,1.704,188,1.704,193,1.254,196,1.481,197,3.221,216,1.126,219,0.889,228,2.689,230,2.059,231,1.087,249,1.34,250,1.254,251,1.173,253,0.83,276,2.358,315,0.752,316,2.472,321,1.767,334,1.629,354,3.271,374,1.21,382,2.562,416,1.135,417,1.126,418,1.623,428,3.742,430,2.637,442,1.21,443,1.051,447,1.167,449,1.051,451,1.977,476,2.472,505,1.21,506,1.534,507,1.534,508,1.21,509,2.295,510,1.21,511,1.21,512,1.21,513,1.051,514,1.21,515,1.051,516,1.21,517,1.051,518,1.767,519,1.051,520,1.087,521,1.21,522,1.21,523,1.994,524,1.21,525,1.051,526,1.167,527,1.21,528,1.051,529,1.534,530,1.21,531,1.051,532,1.21,533,1.051,534,1.21,535,1.051,536,1.21,537,1.087,538,1.21,539,1.051,540,1.21,541,1.051,542,1.21,543,1.051,544,1.167,545,1.21,546,1.051,547,1.051,548,1.051,549,1.21,550,1.051,551,0.949,552,1.21,553,1.051,554,1.21,555,1.21,556,1.167,558,1.097,562,2.439,569,3.177,570,2.232,571,4.421,572,2.195,573,3.687,575,3.353,576,3.021,577,1.173,594,2.529,600,4.898,611,2.141,613,1.841,614,1.751,616,2.562,622,4.157,623,3.922,624,3.908,631,3.206,635,2.331,636,3.37,638,3.353,639,1.943,640,2.358,641,1.465,646,2.287,833,1.353,855,2.439,899,4.862,904,2.838,913,2.838,925,2.195,926,1.596,931,2.429,959,2.781,1056,1.943,1379,2.059,1380,3.553,1383,3.52,1385,3.169,1402,2.195,1403,1.528,1410,1.841,1423,1.67,1425,2.558,1466,2.835,1467,6.844,1468,6.328,1469,5.609,1470,4.748,1471,5.609,1472,4.748,1473,6.168,1474,4.748,1475,3.25,1476,3.742,1477,3.25,1478,4.748,1479,2.838,1480,3.25,1481,3.25,1482,4.748,1483,3.25,1484,3.25,1485,4.748,1486,4.862,1487,4.862,1488,4.142,1489,3.444,1490,3.717,1491,4.748,1492,3.25,1493,3.25,1494,3.25,1495,4.142,1496,4.748,1497,3.25,1498,4.142,1499,4.483,1500,4.23,1501,4.421,1502,5.609,1503,2.562,1504,2.562,1505,3.021,1506,3.444,1507,2.562,1508,4.165,1509,3.742,1510,2.195,1511,4.475,1512,2.195,1513,3.742,1514,4.142,1515,2.835,1516,3.25,1517,2.835,1518,2.835,1519,3.444,1520,2.835,1521,3.25,1522,2.562,1523,3.25,1524,2.059,1525,2.358,1526,3.25,1527,2.562,1528,3.25,1529,2.835,1530,2.835,1531,3.25]],["title/modules/DropdownModule.html",[0,1.232,1532,2.755]],["body/modules/DropdownModule.html",[2,1.809,3,2.153,8,0.013,18,2.386,19,1.937,20,1.583,21,0.184,22,0.226,23,0.184,24,0.124,26,2.752,28,2.076,35,0.333,47,2.386,48,0.383,98,0.226,99,0.184,109,0.009,110,0.011,111,0.009,523,2.738,656,2.653,657,2.857,658,2.23,1500,3.582,1532,5.571,1533,5.227,1534,5.227,1535,5.227,1536,5.992,1537,5.621,1538,4.723,1539,6.22,1540,5.227,1541,5.992]],["title/components/DualSliderComponent.html",[130,0.557,525,1.319]],["body/components/DualSliderComponent.html",[7,0.581,8,0.013,9,0.581,21,0.055,22,0.068,23,0.055,24,0.159,29,0.738,31,1.713,33,1.326,34,1.499,35,0.205,38,0.376,42,1.214,48,0.115,53,1.418,65,1.39,82,5.195,98,0.068,99,0.055,100,1.072,102,0.564,103,1.008,109,0.003,110,0.005,111,0.005,118,0.184,119,0.681,120,0.929,126,0.756,127,0.903,130,0.864,131,3.998,133,1.418,158,4.39,170,0.562,172,0.562,176,0.789,179,1.081,182,2.519,183,1.111,185,1.072,190,2.291,191,1.919,193,1.41,196,1.012,197,2.783,198,3.019,205,1.441,210,1.494,216,0.623,219,0.607,226,1.071,228,2.527,230,4.291,231,0.602,249,1.259,250,0.789,251,1.319,253,0.763,259,1.775,276,1.305,306,3.891,307,2.139,315,0.886,316,1.535,321,1.425,324,6.117,334,1.623,341,1.785,344,2.167,350,1.214,354,1.347,357,1.243,369,1.786,371,1.293,374,1.425,416,1.352,417,1.156,418,1.602,428,2.354,430,1.404,432,2.063,433,2.063,435,1.659,442,0.669,443,0.581,447,0.646,449,1.238,450,2.403,451,1.243,476,2.139,505,0.669,506,0.965,507,2.259,508,0.669,509,1.66,510,0.669,511,0.669,512,0.669,513,0.581,514,0.669,515,0.581,516,0.669,517,0.581,518,1.111,519,0.581,520,0.602,521,0.669,522,0.669,523,0.581,524,0.669,525,1.441,526,2.274,527,0.669,528,0.581,529,0.965,530,0.669,531,0.581,532,0.669,533,0.581,534,0.669,535,0.581,536,0.669,537,0.602,538,0.669,539,0.581,540,0.669,541,0.581,542,0.669,543,0.581,544,0.646,545,0.669,546,0.581,547,0.581,548,0.581,549,0.669,550,0.581,551,0.525,552,0.669,553,0.581,554,0.669,555,0.669,556,1.072,558,1.158,562,2.291,569,3.765,570,1.404,571,3.019,573,2.666,575,2.666,576,2.063,577,1.102,578,1.617,589,1.418,592,2.354,594,1.727,607,3.322,611,1.347,613,1.019,614,0.969,616,1.418,621,1.569,622,2.826,623,2.666,624,2.666,631,1.214,634,1.841,635,2.429,636,2.291,638,2.958,639,1.785,640,2.167,641,2.55,642,1.785,646,1.828,704,2.586,744,1.595,756,2.666,769,2.403,772,2.017,773,0.811,779,1.534,781,2.372,792,1.293,796,2.017,833,1.243,840,1.785,841,0.969,855,0.924,861,1.692,876,1.019,879,3.891,883,1.534,899,3.9,904,3.381,913,3.673,926,0.883,931,2.143,959,2.407,976,2.527,985,2.907,1056,1.075,1176,3.012,1183,2.167,1333,2.826,1340,1.892,1349,2.826,1353,1.785,1379,1.139,1380,1.892,1381,2.063,1382,1.692,1383,2.742,1384,1.305,1385,1.534,1388,1.075,1390,3.502,1403,2.097,1404,0.969,1410,1.019,1423,0.924,1425,2.063,1476,2.354,1486,2.354,1487,2.354,1489,3.872,1490,2.803,1495,2.605,1498,2.605,1499,3.135,1500,2.958,1501,2.354,1503,1.418,1504,2.354,1505,2.403,1506,1.305,1507,1.418,1508,3.012,1509,2.354,1510,1.214,1511,3.235,1512,2.017,1513,2.354,1514,2.605,1517,1.569,1518,1.569,1519,2.167,1520,1.569,1522,1.418,1524,1.139,1527,2.354,1529,1.569,1530,1.569,1542,6.064,1543,1.569,1544,2.167,1545,5.956,1546,3.019,1547,3.83,1548,2.987,1549,3.83,1550,5.92,1551,5.338,1552,5.92,1553,6.144,1554,5.656,1555,4.46,1556,4.46,1557,2.987,1558,4.46,1559,2.354,1560,2.987,1561,2.987,1562,5.338,1563,4.46,1564,4.46,1565,3.83,1566,2.987,1567,2.987,1568,2.987,1569,4.948,1570,1.798,1571,2.987,1572,2.605,1573,2.987,1574,2.167,1575,1.798,1576,2.987,1577,1.798,1578,6.144,1579,1.798,1580,2.167,1581,2.987,1582,1.798,1583,2.354,1584,4.317,1585,1.798,1586,4.317,1587,3.83,1588,3.891,1589,4.46,1590,4.46,1591,3.891,1592,4.46,1593,4.46,1594,4.46,1595,4.46,1596,1.798,1597,2.987,1598,2.987,1599,1.798,1600,1.798,1601,1.785,1602,2.354,1603,3.516,1604,1.798,1605,2.987,1606,1.798,1607,2.987,1608,2.605,1609,1.798,1610,4.948,1611,1.798,1612,5.656,1613,3.83,1614,4.46,1615,3.83,1616,2.987,1617,1.798,1618,4.46,1619,1.798,1620,2.605,1621,1.798,1622,2.987,1623,1.798,1624,3.341,1625,1.798,1626,1.798,1627,4.46,1628,2.354,1629,1.798,1630,2.605,1631,1.798,1632,1.798,1633,1.798,1634,2.987,1635,2.987,1636,1.798,1637,2.354,1638,3.83,1639,2.987,1640,1.798,1641,1.798,1642,1.798,1643,2.987,1644,2.605,1645,2.987,1646,1.569,1647,1.569,1648,3.516,1649,1.798,1650,1.798,1651,1.798,1652,1.798,1653,2.987,1654,1.798,1655,1.798,1656,1.798,1657,1.798,1658,1.798,1659,1.798,1660,1.798,1661,1.569,1662,1.798,1663,2.987,1664,1.798,1665,2.987,1666,1.798,1667,1.798,1668,2.987,1669,2.987,1670,1.798,1671,3.83,1672,1.798,1673,1.798,1674,1.798,1675,1.798,1676,1.798,1677,1.798,1678,1.798,1679,1.798,1680,1.798,1681,1.798,1682,2.987,1683,3.83,1684,2.987,1685,3.83,1686,1.798,1687,1.798,1688,1.798,1689,1.798,1690,1.798,1691,1.798,1692,4.46,1693,1.798,1694,1.798,1695,1.798,1696,2.987,1697,2.987,1698,2.987,1699,1.798,1700,2.017,1701,1.798,1702,1.798,1703,2.017,1704,1.798,1705,1.798,1706,1.798,1707,2.987,1708,1.798,1709,1.798,1710,1.798,1711,1.798,1712,1.418,1713,2.987,1714,1.569,1715,1.798,1716,1.798,1717,1.798]],["title/modules/DualSliderModule.html",[0,1.232,12,2.585]],["body/modules/DualSliderModule.html",[2,1.75,3,2.11,8,0.013,12,5.192,18,2.338,19,1.873,20,1.531,21,0.178,22,0.219,23,0.178,24,0.12,26,2.698,28,2.008,35,0.342,42,3.913,47,2.338,48,0.37,82,3.913,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,525,2.727,526,2.08,656,2.601,657,2.801,658,2.156,1500,3.464,1537,5.509,1538,4.568,1539,6.097,1540,5.055,1542,4.568,1545,4.204,1646,5.055,1648,4.568,1718,5.055,1719,5.055,1720,5.055,1721,5.795,1722,6.989,1723,6.989,1724,6.989,1725,5.795]],["title/components/FiltersContentComponent.html",[130,0.557,528,1.319]],["body/components/FiltersContentComponent.html",[7,1.044,8,0.013,9,1.044,21,0.099,22,0.122,23,0.099,24,0.157,29,1.168,31,1.68,33,1.169,34,1.431,35,0.231,38,0.676,48,0.206,65,1.503,91,2.546,98,0.122,99,0.099,101,1.74,102,1.056,109,0.005,110,0.007,111,0.007,118,0.33,120,0.776,125,1.023,126,0.773,127,1.289,128,1.16,130,0.964,163,2.818,170,1.009,172,1.009,176,1.624,179,1.578,182,2.74,183,1.759,185,1.697,187,1.697,188,1.697,196,1.476,213,2.428,216,1.119,219,0.974,228,3.873,231,1.081,249,1.334,250,1.248,251,1.381,252,1.624,253,0.825,289,4.055,291,2.32,307,1.894,314,3.114,316,1.294,321,1.759,334,1.624,352,2.891,369,1.87,416,1.13,417,1.123,418,1.464,442,1.202,443,1.044,447,1.16,449,1.044,451,1.968,476,2.623,481,1.345,505,1.202,506,1.528,507,1.528,508,1.202,509,2.289,510,1.202,511,1.202,512,1.202,513,1.044,514,1.202,515,1.044,516,1.202,517,1.044,518,1.759,519,1.044,520,1.081,521,1.202,522,1.202,523,1.044,524,1.202,525,1.044,526,1.697,527,1.202,528,1.988,529,2.674,530,1.202,531,1.044,532,1.202,533,1.044,534,1.202,535,1.044,536,1.202,537,1.081,538,1.202,539,1.044,540,1.202,541,1.044,542,1.202,543,1.044,544,1.16,545,1.202,546,1.044,547,1.044,548,1.044,549,1.202,550,1.044,551,0.943,552,1.202,553,1.044,554,1.202,555,1.202,556,1.16,558,1.093,562,2.428,570,2.222,572,2.181,573,3.677,575,3.341,576,3.011,577,1.168,594,2.951,600,2.181,606,2.181,608,3.429,611,2.52,613,1.83,614,1.74,633,1.399,634,2.435,635,2.32,641,2.773,642,1.931,643,2.546,646,1.988,647,4.123,649,2.818,702,2.825,704,4.769,773,2.951,779,2.428,876,3.873,883,2.871,884,4.876,913,2.825,926,3.357,931,2.42,985,3.019,1043,2.343,1052,3.192,1056,1.931,1208,1.74,1318,2.818,1331,3.429,1332,1.931,1333,2.994,1340,2.994,1343,3.726,1381,2.546,1382,2.677,1383,2.428,1384,3.429,1385,1.659,1386,1.83,1388,1.931,1389,1.931,1390,1.74,1403,2.627,1410,1.83,1425,2.546,1467,2.818,1489,3.429,1490,2.677,1508,2.181,1519,2.343,1545,2.343,1726,5.139,1727,5.52,1728,2.818,1729,3.726,1730,4.848,1731,4.726,1732,6.15,1733,6.15,1734,4.726,1735,4.876,1736,4.876,1737,4.876,1738,4.876,1739,4.726,1740,3.23,1741,3.23,1742,3.23,1743,3.23,1744,4.123,1745,3.23,1746,4.123,1747,3.23,1748,6.15,1749,3.23,1750,4.726,1751,4.726,1752,3.23,1753,4.726,1754,6.15,1755,4.876,1756,3.23,1757,5.589,1758,3.23,1759,4.726,1760,3.23,1761,3.23,1762,3.23,1763,3.23,1764,4.848,1765,4.876,1766,3.23,1767,3.23,1768,3.23,1769,2.546,1770,4.726,1771,3.23,1772,2.343,1773,3.23,1774,2.818,1775,2.343]],["title/modules/FiltersContentModule.html",[0,1.232,1776,2.755]],["body/modules/FiltersContentModule.html",[2,1.701,3,2.074,8,0.013,12,5.099,18,2.298,19,1.82,20,1.488,21,0.173,22,0.213,23,0.173,24,0.116,26,2.652,28,2.38,35,0.34,47,2.298,48,0.36,49,3.529,50,2.648,81,4.913,82,3.803,83,4.913,98,0.213,99,0.173,109,0.009,110,0.011,111,0.009,528,2.718,529,1.82,651,5.435,656,2.556,657,2.753,658,2.096,1532,5.435,1726,3.803,1727,4.086,1776,5.698,1777,4.913,1778,4.913,1779,5.632,1780,4.913,1781,5.632,1782,5.632,1783,5.632,1784,5.632,1785,4.639,1786,3.803]],["title/components/FiltersPopoverComponent.html",[130,0.557,170,1.274]],["body/components/FiltersPopoverComponent.html",[7,1.08,8,0.013,9,1.08,20,1.505,21,0.103,22,0.126,23,0.103,24,0.156,29,1.197,31,1.667,33,1.192,34,1.447,35,0.138,38,0.699,48,0.213,65,1.5,72,5.109,91,2.609,98,0.126,99,0.103,102,0.631,109,0.005,110,0.007,111,0.007,118,0.582,119,0.74,120,0.549,125,1.048,126,0.738,127,1.141,128,1.199,130,0.905,170,1.952,172,1.043,176,1.279,179,1.873,182,2.75,183,1.802,185,1.738,187,1.738,188,1.738,191,1.779,195,4.219,196,1.505,201,3.959,205,2.019,213,2.488,216,1.157,219,0.529,228,3.54,231,1.118,251,0.826,252,1.65,289,2.423,291,3.068,314,2.504,315,0.773,316,1.941,321,1.243,324,6.041,334,1.505,342,2.895,344,3.513,352,2.937,353,3.27,374,1.243,392,2.277,394,3.27,416,0.799,417,1.04,418,0.747,442,1.243,443,1.08,447,1.199,449,1.08,451,2.016,476,2.658,497,2.423,505,1.243,506,1.565,507,1.565,508,1.243,509,2.325,510,1.243,511,1.243,512,1.243,513,1.08,514,1.243,515,1.08,516,1.243,517,1.08,518,1.802,519,1.08,520,1.118,521,1.243,522,1.243,523,1.08,524,1.243,525,1.08,526,1.199,527,1.243,528,1.08,529,2.688,530,1.243,531,1.08,532,1.243,533,1.08,534,1.243,535,1.08,536,1.243,537,1.118,538,1.243,539,1.08,540,1.243,541,1.08,542,1.243,543,1.08,544,1.199,545,1.243,546,1.08,547,1.08,548,1.08,549,1.243,550,1.08,551,0.975,552,1.243,553,1.08,554,1.243,555,1.243,556,2.045,558,0.947,562,3.21,570,2.277,594,2.569,603,2.256,611,2.184,631,2.256,633,2.097,634,1.243,635,1.64,637,2.423,646,2.019,702,3.965,779,2.488,833,2.762,861,3.54,874,3.227,876,1.892,926,3.503,931,2.467,959,2.569,966,3.609,983,2.797,1052,3.27,1056,1.997,1180,3.27,1331,3.513,1332,1.997,1333,3.068,1383,2.927,1385,2.927,1386,1.892,1389,1.997,1390,2.609,1403,2.277,1410,4.22,1423,1.716,1425,2.609,1429,1.997,1435,2.914,1490,3.758,1505,3.366,1508,2.256,1512,3.27,1513,3.817,1519,3.513,1524,2.116,1544,2.423,1726,5.109,1729,5.453,1730,3.817,1735,4.97,1736,4.97,1737,4.225,1738,4.97,1755,2.914,1765,5.451,1769,2.633,1772,2.423,1787,2.914,1788,5.697,1789,4.843,1790,5.697,1791,6.248,1792,6.248,1793,5.697,1794,3.34,1795,5.451,1796,4.843,1797,3.34,1798,4.225,1799,4.225,1800,4.225,1801,3.34,1802,3.34,1803,3.34,1804,4.843,1805,3.34,1806,6.248,1807,3.34,1808,3.34,1809,3.34,1810,5.697,1811,3.34,1812,3.34,1813,4.843,1814,3.34,1815,3.34,1816,3.34,1817,3.34,1818,4.843,1819,3.34,1820,3.34,1821,3.34]],["title/modules/FiltersPopoverModule.html",[0,1.232,13,2.755]],["body/modules/FiltersPopoverModule.html",[2,1.776,3,2.129,8,0.013,13,5.634,18,2.36,19,1.902,20,1.554,21,0.181,22,0.222,23,0.181,24,0.121,26,2.723,28,2.444,35,0.331,47,2.36,48,0.376,49,3.623,50,2.766,72,3.973,98,0.222,99,0.181,109,0.009,110,0.011,111,0.009,170,2.64,171,5.133,529,2.28,656,2.625,657,2.826,658,2.189,1726,3.973,1727,4.268,1776,5.49,1822,5.133,1823,5.133,1824,5.884,1825,5.133,1826,5.884,1827,5.884]],["title/classes/FlatNode.html",[99,0.126,1828,3.216]],["body/classes/FlatNode.html",[8,0.013,21,0.14,22,0.171,23,0.14,24,0.163,29,1.48,31,1.736,33,1.491,35,0.188,65,0.828,98,0.171,99,0.14,102,0.857,109,0.007,110,0.009,111,0.007,118,0.463,119,0.915,120,1.294,125,1.542,126,0.828,127,1.093,130,0.817,136,1.751,190,3.443,193,1.581,196,2.08,197,3.483,205,1.935,210,1.808,213,3.909,219,1.174,226,1.45,249,2.012,250,1.581,251,1.762,253,1.159,315,1.385,317,2.939,334,1.198,416,1.432,417,1.093,418,1.339,443,2.546,558,1.31,578,2.197,772,4.043,931,2.902,1490,3.796,1572,5.223,1628,4.719,1828,5.618,1829,3.291,1830,6.871,1831,3.957,1832,4.319,1833,5.283,1834,5.846,1835,4.536,1836,4.916,1837,6.009,1838,4.536,1839,7.019,1840,7.97,1841,4.536,1842,5.223,1843,4.536,1844,4.536,1845,5.987,1846,4.536,1847,5.987,1848,4.536,1849,4.536,1850,5.987,1851,4.536,1852,4.536,1853,5.987,1854,4.719,1855,4.536,1856,4.536,1857,4.536,1858,4.536]],["title/components/HeaderComponent.html",[130,0.557,531,1.319]],["body/components/HeaderComponent.html",[7,1.245,8,0.013,9,1.245,21,0.19,22,0.146,23,0.119,24,0.157,31,1.664,35,0.159,38,0.806,48,0.246,65,1.525,94,2.602,98,0.146,99,0.119,102,1.013,109,0.006,110,0.008,111,0.008,118,0.393,121,4.729,122,4.858,124,4.858,125,1.442,126,0.794,127,1.216,128,1.383,130,0.841,170,1.203,172,1.203,176,1.416,179,1.74,182,2.789,183,1.994,185,1.924,187,1.924,188,1.924,196,1.628,211,4.833,212,2.887,216,1.335,219,0.849,231,1.289,247,4.858,252,1.416,298,3.396,301,1.434,312,3.888,314,2.806,321,1.434,334,1.416,369,2.343,374,1.434,387,3.396,397,4.676,399,5.376,417,0.978,430,2.897,442,1.434,443,1.245,447,1.383,449,1.245,451,2.231,476,2.905,505,1.434,506,1.732,507,1.732,508,1.434,509,2.479,510,1.434,511,1.434,512,1.434,513,1.245,514,1.434,515,1.245,516,1.434,517,1.245,518,1.994,519,1.245,520,1.289,521,1.434,522,1.434,523,1.245,524,1.434,525,1.245,526,1.383,527,1.434,528,1.245,529,2.263,530,1.434,531,2.153,532,1.434,533,1.245,534,1.434,535,1.245,536,1.434,537,1.289,538,1.434,539,1.245,540,1.434,541,1.245,542,1.434,543,1.245,544,1.383,545,1.434,546,1.245,547,1.245,548,1.245,549,1.434,550,1.245,551,1.125,552,1.434,553,1.245,554,1.434,555,1.434,556,1.383,558,0.753,562,3.423,570,2.52,589,3.037,594,3.158,608,3.888,611,2.779,634,1.994,636,2.753,638,3.204,639,2.303,641,3.158,646,2.153,702,3.204,837,4.676,883,3.166,904,2.303,925,2.602,926,1.892,959,3.158,975,2.602,985,3.271,1332,3.204,1340,4.593,1381,3.32,1382,3.491,1383,1.979,1385,3.166,1386,2.183,1387,3.037,1389,2.303,1390,2.075,1402,2.602,1404,2.075,1407,2.795,1429,3.684,1479,3.204,1505,2.887,1510,2.602,1524,2.441,1525,2.795,1730,4.225,1764,4.858,1859,3.361,1860,5.812,1861,6.325,1862,6.663,1863,3.619,1864,6.163,1865,5.36,1866,6.163,1867,6.163,1868,3.853,1869,3.853,1870,4.471,1871,3.853,1872,5.36,1873,3.853,1874,3.853,1875,3.853,1876,3.853,1877,5.36,1878,3.361,1879,3.853,1880,3.853,1881,5.36,1882,3.853,1883,2.795,1884,3.853,1885,3.853,1886,3.853,1887,3.853,1888,3.037,1889,3.853,1890,3.853,1891,3.853,1892,3.853,1893,3.853,1894,3.853,1895,3.853,1896,2.441]],["title/modules/HeaderModule.html",[0,1.232,993,2.755]],["body/modules/HeaderModule.html",[2,1.781,3,2.133,8,0.013,18,2.364,19,1.907,20,1.558,21,0.182,22,0.223,23,0.182,24,0.122,26,2.727,28,2.044,35,0.34,47,2.364,48,0.377,49,3.629,50,2.774,54,5.569,55,4.651,98,0.223,99,0.182,109,0.009,110,0.011,111,0.009,531,2.733,656,2.629,657,2.831,658,2.196,993,5.554,1785,4.771,1786,3.984,1897,5.147,1898,5.147,1899,5.147,1900,5.9,1901,7.065,1902,5.9,1903,5.9]],["title/interfaces/IconDefinition.html",[112,0.557,1904,2.96]],["body/interfaces/IconDefinition.html",[8,0.013,21,0.119,22,0.146,23,0.119,24,0.08,33,1.395,34,0.808,35,0.308,48,0.247,50,1.815,57,2.445,58,1.983,98,0.203,99,0.119,102,0.729,103,1.292,109,0.006,110,0.008,111,0.006,112,0.527,114,1.291,116,1.547,118,0.394,119,0.82,120,1.282,125,1.161,126,0.712,127,1.385,191,2.266,193,1.629,210,1.863,212,4.317,213,2.757,219,0.85,226,1.642,236,2.231,249,1.09,250,1.019,251,1.793,253,0.986,259,1.821,291,3.561,315,1.241,318,3.043,371,1.671,402,1.241,417,1.472,418,0.864,481,2.776,506,2.571,558,0.755,577,0.954,602,5.084,624,2.891,668,2.757,670,2.757,671,2.523,672,1.983,674,1.983,675,1.815,861,3.04,1023,3.043,1027,4.23,1090,2.8,1159,2.307,1204,2.607,1207,5.981,1208,4.502,1213,4.503,1218,5.77,1219,5.084,1220,5.398,1221,5.256,1222,3.893,1223,4.503,1225,3.624,1352,3.624,1353,3.208,1574,2.8,1583,3.043,1904,5.398,1905,2.8,1906,3.043,1907,4.681,1908,5.817,1909,5.256,1910,5.382,1911,4.23,1912,3.367,1913,2.445,1914,6.328,1915,3.367,1916,4.23,1917,3.367,1918,3.367,1919,2.187,1920,3.367,1921,3.043,1922,3.367,1923,3.367,1924,3.367,1925,4.681,1926,4.23,1927,3.367,1928,3.367,1929,3.367,1930,3.367,1931,3.367,1932,4.681,1933,3.367,1934,3.367,1935,3.367,1936,3.367,1937,3.043,1938,3.367,1939,3.367,1940,5.382,1941,3.367,1942,3.043,1943,3.367,1944,3.367,1945,3.367,1946,3.367,1947,3.367,1948,3.367,1949,3.367,1950,3.367,1951,3.367,1952,3.367,1953,3.367,1954,3.367,1955,3.367]],["title/injectables/IconRegistryState.html",[402,0.944,1913,2.585]],["body/injectables/IconRegistryState.html",[8,0.013,21,0.108,22,0.132,23,0.108,24,0.145,29,1.24,31,1.513,33,1.549,34,0.734,35,0.299,48,0.224,50,1.649,57,2.222,58,1.801,98,0.189,99,0.108,102,0.663,103,1.26,109,0.005,110,0.008,111,0.005,112,0.479,116,2.01,118,0.358,120,1.189,125,1.383,126,0.722,127,1.234,191,2.313,193,1.858,210,2.041,212,4.061,213,1.801,219,0.556,226,1.602,236,2.353,249,1.416,250,1.325,251,1.738,253,1.282,259,2.088,291,2.875,315,1.354,318,3.954,371,2.172,402,1.16,403,1.722,416,1.617,417,1.468,418,0.785,481,2.661,506,2.436,558,1.25,577,1.24,602,5.372,624,3.442,668,3.008,670,2.576,671,2.358,672,1.801,674,1.801,675,1.649,744,1.46,861,1.987,1023,3.954,1027,4.615,1090,3.639,1159,2.096,1204,4.749,1207,5.942,1208,4.472,1213,5,1218,5.372,1219,4.636,1220,5.372,1221,3.954,1222,2.544,1223,4.315,1225,3.387,1352,4.315,1353,3.82,1574,3.639,1583,3.954,1904,5.764,1905,5.102,1906,2.764,1907,3.059,1908,4.375,1909,3.954,1910,6.135,1911,5.037,1912,3.059,1913,3.178,1914,6.672,1915,4.375,1916,5.037,1917,4.375,1918,4.375,1919,3.317,1920,3.059,1921,2.764,1922,3.059,1923,3.059,1924,4.375,1925,5.574,1926,5.037,1927,4.375,1928,3.059,1929,4.375,1930,5.574,1931,4.375,1932,4.375,1933,3.059,1934,3.059,1935,3.059,1936,3.059,1937,2.764,1938,3.059,1939,3.059,1940,5.108,1941,3.059,1942,2.764,1943,3.059,1944,3.059,1945,3.059,1946,5.108,1947,3.059,1948,3.059,1949,3.059,1950,3.059,1951,3.059,1952,3.059,1953,4.375,1954,5.108,1955,3.059,1956,5.016,1957,3.507,1958,3.507,1959,3.507,1960,3.507,1961,3.507,1962,3.507,1963,3.507,1964,3.507]],["title/classes/InitializationState.html",[99,0.126,1965,3.216]],["body/classes/InitializationState.html",[8,0.013,20,0.925,21,0.067,22,0.083,23,0.067,24,0.127,29,0.865,31,1.309,33,1.224,34,1.514,35,0.227,48,0.14,65,0.639,98,0.083,99,0.135,100,0.784,102,1.036,103,1.15,109,0.003,110,0.005,111,0.003,118,0.223,119,0.535,125,1.521,126,0.624,128,0.784,129,2.218,130,0.798,131,2.364,145,0.731,172,1.368,176,0.577,179,2.276,182,0.731,183,0.813,185,0.784,187,0.784,188,0.784,190,2.25,191,1.994,193,0.925,205,1.986,208,3.899,210,2.084,213,1.798,219,0.973,226,1.63,229,1.384,236,2.558,249,0.617,250,0.577,251,1.519,253,0.558,259,2.153,261,2.218,278,1.475,291,3.389,295,1.983,307,0.876,315,1.159,316,1.403,317,2.872,321,1.303,334,1.886,341,1.306,344,2.54,345,2.76,392,2.059,394,2.364,416,0.837,418,1.226,432,3.786,433,3.786,434,2.25,435,3.043,436,2.618,437,2.775,438,2.775,450,2.953,476,2.007,481,0.91,506,1.131,507,1.986,551,0.638,556,0.784,558,0.427,562,2.25,577,0.54,578,0.956,594,0.985,606,3.383,607,2.259,608,1.585,611,2.77,634,2.725,646,2.367,755,2.76,756,1.886,757,1.906,759,2.007,762,2.059,763,1.306,766,3.178,768,1.722,769,1.177,778,1.578,779,1.798,780,1.585,781,1.403,784,1.755,786,1.906,788,1.585,790,1.475,792,0.946,796,1.475,800,1.578,802,1.384,803,1.177,817,2.54,818,1.585,821,3.054,825,1.177,833,2.086,840,3.817,841,3.44,847,1.384,848,1.722,849,1.906,850,1.585,853,3.054,859,1.585,874,1.983,882,1.906,906,1.722,909,1.722,916,4.126,921,1.585,924,1.906,925,4.149,926,1.719,927,1.906,928,1.722,937,1.906,938,1.722,939,1.238,944,2.093,945,1.384,960,2.54,966,2.218,977,1.306,983,3.505,1061,1.585,1067,1.238,1068,2.093,1079,2.093,1216,1.722,1344,1.585,1364,5.103,1488,1.906,1505,1.177,1509,1.722,1511,3.977,1591,1.906,1601,1.306,1637,1.722,1647,1.906,1829,1.585,1965,3.453,1966,1.585,1967,3.501,1968,4.38,1969,6.144,1970,5.009,1971,5.009,1972,5.009,1973,3.501,1974,4.38,1975,2.185,1976,6.902,1977,4.38,1978,2.185,1979,2.185,1980,2.185,1981,2.185,1982,2.185,1983,4.38,1984,2.185,1985,2.185,1986,1.906,1987,3.821,1988,5.36,1989,5.192,1990,3.821,1991,3.821,1992,5.103,1993,3.821,1994,4.782,1995,3.054,1996,3.821,1997,3.453,1998,3.949,1999,3.054,2000,4.37,2001,3.501,2002,2.185,2003,2.185,2004,2.185,2005,2.185,2006,2.185,2007,2.185,2008,2.185,2009,2.185,2010,3.501,2011,2.185,2012,3.501,2013,2.185,2014,2.185,2015,2.185,2016,1.722,2017,5.482,2018,2.185,2019,2.185,2020,2.185,2021,3.821,2022,1.906,2023,3.054,2024,3.501,2025,2.185,2026,5.009,2027,2.185,2028,3.501,2029,2.185,2030,2.185,2031,2.185,2032,4.38,2033,2.185,2034,2.185,2035,2.185,2036,2.775,2037,2.185,2038,4.38,2039,2.185,2040,2.185,2041,3.054,2042,2.185,2043,2.185,2044,2.185,2045,5.85,2046,3.501,2047,5.009,2048,3.501,2049,3.501,2050,2.185,2051,4.38,2052,3.501,2053,2.185,2054,2.185,2055,2.185,2056,2.185,2057,3.501,2058,3.501,2059,2.185,2060,2.185,2061,4.38,2062,2.185,2063,2.185,2064,2.185,2065,2.185,2066,3.501,2067,2.185,2068,2.185,2069,1.906,2070,2.185,2071,2.185,2072,2.185,2073,4.37,2074,4.38,2075,5.009,2076,3.501,2077,3.501,2078,2.185,2079,2.185,2080,2.185,2081,2.185,2082,2.185,2083,2.185,2084,1.906,2085,1.906,2086,2.185,2087,3.501,2088,2.185,2089,2.185,2090,2.185,2091,2.185,2092,2.185,2093,2.185,2094,2.185,2095,2.185,2096,1.475,2097,2.185,2098,2.185,2099,3.501,2100,2.185,2101,2.185,2102,2.185,2103,2.185,2104,2.185,2105,2.185,2106,3.501,2107,4.38,2108,2.185,2109,2.185,2110,3.501,2111,2.185,2112,2.185,2113,2.185,2114,2.185,2115,2.185,2116,1.722,2117,2.185,2118,2.185,2119,2.185]],["title/interfaces/ListResult.html",[112,0.557,2120,2.585]],["body/interfaces/ListResult.html",[8,0.013,21,0.188,22,0.231,23,0.188,24,0.126,35,0.252,65,1.114,98,0.231,109,0.009,110,0.011,111,0.009,112,0.833,114,2.043,118,0.623,119,1.101,120,1.302,125,1.66,126,0.846,127,1.401,136,2.357,301,2.95,354,3.574,578,2.095,664,4.739,1033,6.248,1327,5.751,2120,4.568,2121,5.326,2122,5.326]],["title/injectables/ListResultsState.html",[164,2.198,402,0.944]],["body/injectables/ListResultsState.html",[8,0.013,21,0.114,22,0.14,23,0.114,24,0.163,29,1.286,31,1.749,33,1.497,34,1.652,35,0.323,46,4.623,48,0.236,65,0.674,66,1.48,98,0.197,99,0.114,100,1.326,102,1.418,103,1.113,109,0.01,110,0.008,111,0.011,112,0.504,116,2.085,118,0.377,119,0.795,120,1.133,126,0.785,127,1.194,137,3.91,142,3.297,145,1.236,146,1.99,147,1.99,149,1.426,162,3.854,164,2.804,166,4.718,191,1.154,193,1.375,210,1.115,226,0.799,236,2.641,249,1.469,250,1.375,251,1.286,252,1.728,253,1.54,256,4.276,259,2.049,295,2.948,301,2.662,315,1.204,352,3.075,354,2.346,357,1.538,369,2.189,402,1.204,403,1.814,416,1.649,417,1.306,418,1.164,558,1.018,577,1.617,662,1.898,664,2.208,668,3.095,669,1.426,670,2.673,671,2.447,672,1.898,673,3.602,674,1.898,675,1.737,680,4.122,701,3.602,706,2.208,707,2.093,709,2.958,729,2.495,735,3.602,744,1.538,914,1.99,1028,4.831,1042,2.495,1081,2.34,1159,2.208,1327,4.371,1601,3.111,1863,2.495,2120,5.041,2123,6.222,2124,2.912,2125,5.19,2126,5.222,2127,5.204,2128,5.204,2129,5.204,2130,5.204,2131,5.706,2132,3.223,2133,5.204,2134,3.775,2135,4.371,2136,4.069,2137,4.54,2138,3.694,2139,4.54,2140,3.694,2141,2.555,2142,3.694,2143,4.54,2144,3.694,2145,3.694,2146,3.694,2147,3.694,2148,3.775,2149,3.694,2150,4.54,2151,3.694,2152,4.54,2153,3.694,2154,3.514,2155,2.912,2156,2.34,2157,3.223,2158,2.495,2159,2.495,2160,2.68,2161,3.223,2162,3.223,2163,3.223,2164,2.68,2165,2.68,2166,2.34,2167,2.68,2168,2.68,2169,2.495,2170,2.68,2171,2.68,2172,2.68,2173,2.68,2174,3.223,2175,2.68,2176,3.223,2177,3.223,2178,3.223,2179,3.223,2180,3.223,2181,3.223,2182,3.223,2183,3.223,2184,3.223,2185,3.223,2186,3.223,2187,3.223,2188,2.68]],["title/interfaces/ListResultsStateModel.html",[112,0.557,2160,2.96]],["body/interfaces/ListResultsStateModel.html",[8,0.013,21,0.137,22,0.168,23,0.137,24,0.092,34,1.582,35,0.334,46,4.396,48,0.283,65,0.81,66,1.778,98,0.223,99,0.137,100,1.592,102,1.335,103,1.202,109,0.009,110,0.009,111,0.01,112,0.605,114,1.484,116,1.778,118,0.453,119,0.901,120,0.969,126,0.63,127,1.29,137,3.526,142,3.737,145,1.484,146,2.39,147,2.39,149,1.712,162,3.57,164,2.39,166,2.652,191,1.386,193,1.172,210,1.339,226,0.96,236,2.582,249,1.252,250,1.172,251,1.458,252,1.558,253,1.507,256,3.962,259,1.929,295,2.513,301,2.737,352,2.773,354,2.66,357,1.847,369,1.974,402,1.365,417,0.81,577,1.458,662,2.279,664,2.652,668,3.03,669,1.712,670,3.03,671,2.773,672,2.279,673,3.526,674,2.279,675,2.085,680,3.962,701,2.652,706,2.652,707,2.513,709,2.896,729,2.996,735,3.962,914,2.39,1028,4.476,1042,2.996,1081,2.81,1159,2.652,1327,4.808,1601,2.652,1863,2.996,2120,5.027,2123,3.497,2124,3.497,2125,5.599,2126,5.412,2131,3.87,2134,3.218,2135,4.28,2136,3.984,2137,3.87,2139,3.87,2141,2.178,2143,3.87,2148,3.218,2150,3.87,2152,3.87,2154,2.996,2155,3.497,2156,2.81,2157,3.87,2158,2.996,2159,2.996,2160,4.28,2161,3.87,2162,3.87,2163,3.87,2164,3.218,2165,3.218,2166,2.81,2167,3.218,2168,3.218,2169,2.996,2170,3.218,2171,3.218,2172,3.218,2173,3.218,2174,3.87,2175,3.218,2176,3.87,2177,3.87,2178,3.87,2179,3.87,2180,3.87,2181,3.87,2182,3.87,2183,3.87,2184,3.87,2185,3.87,2186,3.87,2187,3.87,2188,3.218]],["title/interfaces/Message.html",[112,0.557,784,1.635]],["body/interfaces/Message.html",[8,0.013,21,0.116,22,0.307,23,0.116,24,0.078,33,1.454,34,1.105,35,0.252,38,1.105,48,0.241,98,0.272,99,0.163,100,1.355,102,1.152,103,0.899,109,0.006,110,0.008,111,0.006,112,0.721,114,1.262,118,0.385,119,0.807,120,0.868,125,0.817,126,0.742,143,4.301,145,1.262,149,1.457,190,1.938,193,0.997,205,1.22,210,1.139,219,1.101,226,1.504,249,1.721,250,0.997,251,1.895,252,1.395,253,0.964,259,1.967,314,1.512,315,0.873,317,2.992,334,0.997,398,2.256,402,1.222,421,2.846,449,1.97,481,2.894,494,3.861,558,0.738,569,2.138,577,1.865,578,1.898,596,4.155,669,3.031,679,3.392,756,2.846,759,2.117,762,3.652,769,2.033,777,1.701,778,3.54,784,3.386,792,1.634,800,2.382,802,2.391,831,2.256,847,3.347,897,2.391,945,3.347,969,3.88,989,1.938,999,3.567,1067,2.138,1079,2.256,1083,4.994,1308,2.993,1461,2.256,1462,3.158,1919,2.138,2036,3.861,2096,2.548,2141,3.536,2189,2.391,2190,4.459,2191,4.183,2192,2.993,2193,3.832,2194,2.548,2195,3.347,2196,2.737,2197,2.737,2198,4.155,2199,3.643,2200,2.737,2201,3.567,2202,2.391,2203,2.548,2204,2.737,2205,3.347,2206,2.737,2207,2.737,2208,2.737,2209,2.737,2210,2.737,2211,2.737,2212,3.832,2213,2.737,2214,2.737,2215,2.737,2216,2.737,2217,3.567,2218,2.737,2219,3.832,2220,2.737,2221,2.737,2222,2.737,2223,2.737,2224,2.737,2225,2.737,2226,2.737,2227,2.737,2228,4.422,2229,2.737,2230,2.737,2231,2.737,2232,2.737,2233,2.737,2234,2.737,2235,2.737,2236,2.737,2237,2.737]],["title/classes/MessageChannel.html",[99,0.126,800,1.839]],["body/classes/MessageChannel.html",[8,0.013,21,0.102,22,0.306,23,0.102,24,0.151,29,1.194,31,1.595,33,1.582,34,1.19,35,0.235,38,1.011,48,0.213,98,0.261,99,0.149,100,1.195,102,1.075,103,0.822,109,0.005,110,0.007,111,0.005,112,0.659,118,0.34,119,0.738,120,1.135,125,0.72,126,0.761,143,4.449,145,1.114,149,1.285,190,2.921,193,1.276,205,1.076,210,1.005,219,1.095,226,1.433,249,1.87,250,0.879,251,1.84,252,0.879,253,1.235,259,2.064,314,1.334,315,1.118,317,3.392,334,1.276,398,1.99,402,1.118,416,1.492,417,1.139,418,0.745,421,2.603,449,1.838,481,2.758,494,4.378,558,1.295,569,1.886,577,1.805,578,1.887,596,3.96,669,2.956,679,3.662,756,2.603,759,1.936,762,3.674,769,1.794,777,2.179,778,3.653,784,3.377,792,1.442,800,2.564,802,2.11,831,1.99,847,3.061,897,3.061,945,3.061,969,3.934,989,2.482,999,3.263,1067,2.737,1079,1.99,1083,4.814,1308,2.737,1461,1.99,1462,2.888,1829,2.416,1919,1.886,2036,4.378,2096,3.263,2141,3.063,2189,2.11,2190,4.474,2191,4.197,2192,1.886,2193,2.416,2194,2.249,2195,3.061,2196,2.416,2197,2.416,2198,3.96,2199,3.4,2200,2.416,2201,3.263,2202,2.11,2203,2.249,2204,3.505,2205,4.197,2206,3.505,2207,3.505,2208,3.505,2209,3.505,2210,2.416,2211,2.416,2212,3.505,2213,3.505,2214,3.505,2215,4.526,2216,2.416,2217,4.213,2218,3.505,2219,3.505,2220,3.505,2221,3.505,2222,2.416,2223,4.526,2224,2.416,2225,2.416,2226,2.416,2227,2.416,2228,4.126,2229,2.416,2230,2.416,2231,2.416,2232,2.416,2233,2.416,2234,2.416,2235,2.416,2236,2.416,2237,2.416,2238,4.832,2239,4.832,2240,4.832,2241,3.33,2242,4.832,2243,3.33,2244,3.33,2245,3.33,2246,3.33,2247,3.33]],["title/injectables/MessageService.html",[402,0.944,759,1.635]],["body/injectables/MessageService.html",[8,0.013,21,0.109,22,0.303,23,0.109,24,0.146,29,1.25,31,1.519,33,1.52,34,1.233,35,0.244,38,1.058,48,0.227,98,0.267,99,0.156,100,1.274,102,1.114,103,0.861,109,0.005,110,0.008,111,0.005,112,0.69,118,0.362,119,0.773,120,1.055,125,0.768,126,0.725,143,4.288,145,1.187,149,1.37,190,1.823,193,0.937,205,1.147,210,1.071,219,1.151,226,1.469,249,1.814,250,1.336,251,1.868,252,0.937,253,1.292,259,2.094,314,1.422,315,1.17,317,2.893,334,0.937,398,2.121,402,1.17,403,1.742,416,1.209,417,0.923,418,0.794,421,2.725,449,1.905,481,2.828,494,3.734,558,1.152,569,2.01,577,1.937,578,1.609,596,4.44,669,2.867,679,3.489,756,2.725,759,2.721,762,3.742,769,3.461,777,1.6,778,3.589,784,3.38,792,2.19,800,2.657,802,3.204,831,3.023,847,3.204,897,2.248,945,3.204,969,3.803,989,1.823,999,3.415,1067,2.01,1079,3.023,1083,4.586,1308,3.339,1461,2.121,1462,3.023,1919,3.339,2036,3.734,2096,2.396,2141,2.893,2189,2.248,2190,3.98,2191,3.734,2192,2.01,2193,2.574,2194,2.396,2195,3.204,2196,2.574,2197,2.574,2198,4.22,2199,4.06,2200,2.574,2201,3.415,2202,2.248,2203,2.396,2204,2.574,2205,3.204,2206,2.574,2207,2.574,2208,2.574,2209,2.574,2210,2.574,2211,2.574,2212,3.669,2213,2.574,2214,2.574,2215,2.574,2216,2.574,2217,3.415,2218,2.574,2219,3.669,2220,2.574,2221,2.574,2222,2.574,2223,2.574,2224,2.574,2225,3.669,2226,2.574,2227,2.574,2228,4.275,2229,2.574,2230,2.574,2231,2.574,2232,2.574,2233,3.669,2234,2.574,2235,3.669,2236,3.669,2237,2.574,2248,4.412,2249,3.548,2250,5.058,2251,3.548,2252,3.548,2253,3.548]],["title/interfaces/MessageServiceConfig.html",[112,0.557,2199,2.439]],["body/interfaces/MessageServiceConfig.html",[8,0.013,21,0.117,22,0.302,23,0.117,24,0.079,33,1.46,34,1.114,35,0.254,38,1.114,48,0.244,98,0.273,99,0.164,100,1.371,102,1.159,103,0.906,109,0.006,110,0.008,111,0.006,112,0.727,114,1.277,118,0.39,119,0.814,120,0.875,125,1.327,126,0.708,143,4.309,145,1.277,149,1.474,190,1.961,193,1.008,205,1.721,210,1.153,219,1.106,226,1.51,249,1.732,250,1.008,251,1.9,252,1.008,253,0.976,259,1.974,314,1.53,315,0.883,317,3.011,334,1.008,398,2.282,402,1.232,421,2.869,449,1.982,481,2.906,494,3.886,558,0.747,569,3.017,577,1.9,578,1.675,596,4.322,669,2.921,679,3.409,756,2.869,759,2.134,762,3.614,769,2.057,777,1.721,778,3.579,784,3.37,792,1.653,800,2.401,802,2.419,831,2.282,847,3.374,897,2.419,945,3.374,969,3.76,989,1.961,999,3.597,1067,2.163,1079,2.282,1083,4.714,1308,3.017,1461,2.282,1462,3.184,1919,2.163,2036,3.886,2096,2.578,2141,3.011,2189,2.419,2190,4.142,2191,3.886,2192,2.163,2193,2.77,2194,2.578,2195,3.374,2196,2.77,2197,2.77,2198,4.322,2199,3.967,2200,3.864,2201,4.714,2202,2.419,2203,2.578,2204,2.77,2205,3.374,2206,2.77,2207,2.77,2208,2.77,2209,2.77,2210,2.77,2211,2.77,2212,3.864,2213,2.77,2214,2.77,2215,2.77,2216,2.77,2217,3.597,2218,2.77,2219,3.864,2220,2.77,2221,2.77,2222,2.77,2223,2.77,2224,2.77,2225,2.77,2226,2.77,2227,2.77,2228,4.449,2229,2.77,2230,2.77,2231,2.77,2232,2.77,2233,2.77,2234,2.77,2235,2.77,2236,2.77,2237,2.77]],["title/modules/OntologyExplorationModule.html",[0,1.232,14,2.755]],["body/modules/OntologyExplorationModule.html",[2,1.717,3,2.086,8,0.013,14,5.704,18,2.311,19,1.838,20,1.502,21,0.175,22,0.215,23,0.175,24,0.117,28,2.394,35,0.328,47,2.311,48,0.363,75,2.921,98,0.215,99,0.175,109,0.009,110,0.011,111,0.009,196,1.966,656,2.571,657,2.768,658,2.116,2254,4.96,2255,4.96,2256,4.96,2257,5.333,2258,5.685,2259,5.333,2260,3.063,2261,5.686,2262,3.221,2263,4.96,2264,4.124,2265,5.686,2266,3.399,2267,4.96]],["title/components/OntologySearchComponent.html",[130,0.557,533,1.319]],["body/components/OntologySearchComponent.html",[7,0.819,8,0.013,9,0.819,21,0.078,22,0.096,23,0.078,24,0.153,29,0.973,31,1.633,33,1.407,34,1.477,35,0.285,38,0.53,48,0.162,65,1.467,75,3.799,98,0.096,99,0.078,100,1.413,102,0.744,103,0.67,109,0.011,110,0.006,111,0.011,118,0.402,119,0.601,120,0.968,126,0.737,127,1.188,128,0.91,130,0.888,132,4.21,136,0.979,143,3.358,145,0.848,146,1.366,149,0.979,170,0.792,172,0.792,176,1.04,179,1.362,182,2.659,183,1.465,185,1.413,187,1.413,188,1.413,191,1.23,196,2.014,197,2.558,208,2.6,216,0.878,219,0.765,226,1.044,228,2.23,231,0.848,249,1.111,250,1.824,251,1.541,253,0.648,259,0.692,285,4.746,298,3.447,314,1.934,315,0.911,316,1.016,317,2.671,320,3.103,334,1.976,354,2.933,355,2.23,369,1.82,374,2.32,392,2.931,394,2.659,416,1.408,417,1.188,418,1.706,430,1.851,442,0.943,443,0.819,447,0.91,449,0.819,451,1.639,476,1.934,484,1.839,505,0.943,506,1.272,507,1.272,508,0.943,509,2.025,510,0.943,511,0.943,512,0.943,513,0.819,514,0.943,515,0.819,516,0.943,517,0.819,518,1.465,519,0.819,520,0.848,521,0.943,522,0.943,523,0.819,524,0.943,525,0.819,526,0.91,527,0.943,528,0.819,529,1.272,530,0.943,531,0.819,532,0.943,533,1.758,534,0.943,535,0.819,536,0.943,537,0.848,538,0.943,539,0.819,540,0.943,541,0.819,542,0.943,543,0.819,544,0.91,545,0.943,546,0.819,547,0.819,548,0.819,549,0.943,550,0.819,551,0.74,552,0.943,553,0.819,554,0.943,555,0.943,556,0.91,558,1.219,570,1.851,573,3.252,575,3.252,576,2.6,577,1.345,578,1.075,588,3.103,594,2.176,600,3.674,607,2.453,611,2.453,613,1.436,614,1.366,622,3.058,623,2.885,624,3.872,633,1.098,634,2.025,635,1.245,636,2.479,641,1.143,646,2.015,827,3.434,840,2.353,841,2.121,875,1.712,939,2.23,959,2.453,962,1.606,1040,2.212,1067,2.23,1077,3.804,1119,1.839,1138,3.434,1285,1.839,1352,2.659,1379,1.606,1380,1.606,1385,3.692,1386,3.337,1403,1.851,1404,1.366,1408,1.999,1425,3.623,1426,2.494,1429,1.516,1479,2.353,1489,2.856,1499,4.624,1500,4.297,1501,1.999,1503,1.999,1505,3.173,1507,1.999,1510,1.712,1522,3.103,1525,1.839,1580,2.856,1608,3.434,1714,2.212,1769,4.914,1775,1.839,1832,3.026,1836,3.447,1878,2.212,1888,1.999,2116,3.103,2141,1.933,2155,1.999,2156,1.606,2217,2.659,2260,3.984,2262,4.238,2268,2.212,2269,3.937,2270,3.434,2271,5.446,2272,4.826,2273,3.937,2274,4.826,2275,4.826,2276,6.725,2277,2.659,2278,6.506,2279,3.937,2280,3.937,2281,3.937,2282,3.937,2283,4.21,2284,2.535,2285,3.337,2286,3.937,2287,4.826,2288,4.643,2289,2.535,2290,2.535,2291,3.937,2292,3.434,2293,3.937,2294,4.766,2295,2.535,2296,3.937,2297,3.937,2298,2.212,2299,7.625,2300,3.937,2301,2.535,2302,3.937,2303,3.937,2304,3.103,2305,3.937,2306,6.234,2307,2.535,2308,3.434,2309,3.937,2310,3.937,2311,2.535,2312,5.441,2313,3.937,2314,3.937,2315,2.535,2316,3.937,2317,2.535,2318,4.826,2319,2.535,2320,3.937,2321,3.937,2322,2.535,2323,1.999,2324,2.212,2325,2.212,2326,2.212,2327,2.535,2328,2.535,2329,2.535,2330,2.535,2331,2.535,2332,1.999,2333,2.535,2334,2.535,2335,2.535,2336,2.535,2337,2.535,2338,2.535,2339,2.535,2340,2.535,2341,2.535,2342,2.535,2343,2.535,2344,2.535,2345,2.535,2346,2.535,2347,2.535,2348,2.535,2349,3.937,2350,3.937,2351,3.937,2352,3.937,2353,1.999,2354,2.535,2355,2.535,2356,3.937,2357,2.212]],["title/modules/OntologySearchModule.html",[0,1.232,2257,2.585]],["body/modules/OntologySearchModule.html",[2,1.747,3,2.108,8,0.013,18,2.336,19,1.87,20,1.528,21,0.178,22,0.219,23,0.178,24,0.119,26,2.696,28,2.005,35,0.342,47,2.336,48,0.37,49,3.587,50,2.72,75,2.973,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,196,1.528,533,2.727,656,2.599,657,2.798,658,2.153,1500,3.459,1537,5.504,1538,4.561,2257,5.19,2260,3.117,2262,3.278,2323,4.561,2324,5.048,2358,5.048,2359,5.048,2360,5.048,2361,5.787,2362,6.983,2363,6.983,2364,6.983,2365,6.983,2366,5.787,2367,5.787]],["title/injectables/OntologySearchService.html",[402,0.944,2285,2.311]],["body/injectables/OntologySearchService.html",[8,0.013,21,0.097,22,0.119,23,0.097,24,0.156,29,1.144,31,1.668,33,1.582,34,0.968,35,0.289,38,0.968,48,0.201,65,0.573,98,0.175,99,0.097,102,1.386,103,1.101,109,0.01,110,0.007,111,0.011,112,0.631,118,0.772,119,0.707,120,1.112,126,0.767,127,1.48,135,4.909,136,1.212,143,2.961,144,2.277,145,1.05,146,2.493,149,1.212,175,1.612,196,2.089,197,3.779,219,0.871,226,1.4,243,3.357,250,0.829,251,1.775,252,0.829,259,2.002,314,1.854,315,1.271,317,2.272,355,4.379,370,2.932,371,2.93,402,1.403,403,1.541,416,1.618,417,1.235,418,1.447,443,1.961,558,1.323,578,1.501,666,3.843,744,1.307,781,1.854,792,2.004,808,3.125,813,3.125,939,3.437,1029,4.401,1030,2.277,1068,2.766,1119,5.551,1355,2.474,1356,3.357,1404,3.268,1426,1.989,1479,1.876,1499,2.932,1580,4.401,1703,3.125,1832,4.036,1836,4.897,1854,5.662,1883,5.211,2156,1.989,2192,1.778,2262,4.284,2271,5.559,2277,4.57,2285,3.437,2288,2.474,2294,3.712,2304,3.648,2332,3.648,2353,3.648,2368,5.961,2369,2.474,2370,4.037,2371,4.037,2372,4.795,2373,5.662,2374,4.628,2375,4.628,2376,4.628,2377,4.628,2378,4.628,2379,3.139,2380,4.037,2381,4.037,2382,6.942,2383,3.139,2384,4.037,2385,4.037,2386,5.292,2387,4.037,2388,4.037,2389,3.139,2390,4.037,2391,4.037,2392,4.037,2393,3.139,2394,4.037,2395,3.139,2396,4.037,2397,4.037,2398,4.037,2399,3.139,2400,5.292,2401,4.037,2402,3.139,2403,4.037,2404,3.139,2405,3.139,2406,3.139,2407,2.738,2408,2.738,2409,4.795,2410,2.738,2411,2.474,2412,2.738,2413,2.738,2414,2.738,2415,2.738,2416,2.738,2417,2.738,2418,4.037,2419,2.738,2420,4.037,2421,4.037,2422,4.037,2423,4.037,2424,2.738,2425,2.738,2426,2.738,2427,2.738,2428,2.738,2429,2.738,2430,4.037,2431,4.037,2432,2.474,2433,2.738,2434,2.738]],["title/interfaces/OntologySelection.html",[112,0.557,156,2.755]],["body/interfaces/OntologySelection.html",[8,0.013,21,0.19,22,0.233,23,0.19,24,0.127,35,0.255,65,1.126,98,0.233,109,0.009,110,0.011,111,0.009,112,0.842,114,2.063,118,0.63,119,1.108,126,0.822,127,1.5,136,2.381,156,4.898,197,3.739,357,3.208,1836,5.039,2141,3.905,2435,5.38,2436,5.38,2437,6.269]],["title/components/OntologySelectionComponent.html",[130,0.557,535,1.319]],["body/components/OntologySelectionComponent.html",[7,1.07,8,0.013,9,1.07,21,0.102,22,0.125,23,0.102,24,0.161,29,1.19,31,1.73,33,1.007,34,1.302,35,0.273,38,0.693,48,0.212,65,1.503,75,4.01,88,3.049,91,2.593,98,0.125,99,0.102,100,1.728,102,0.626,103,0.564,109,0.005,110,0.007,111,0.01,118,0.338,119,0.735,120,0.931,121,3.828,125,1.041,126,0.825,127,1.136,128,1.189,130,1.044,133,2.61,135,4.113,136,1.278,156,4.202,157,2.889,158,5.166,170,1.034,172,1.034,176,1.644,179,1.6,182,2.747,183,1.791,185,1.728,187,1.728,188,1.728,190,2.472,191,1.503,193,1.271,196,2.223,198,5.436,199,4.198,216,1.147,219,0.525,231,1.108,249,1.359,250,1.271,251,1.19,252,1.271,253,1.23,307,1.928,314,1.928,348,3.794,352,2.262,353,3.25,354,3.287,355,1.876,369,2.082,416,1.356,417,1.207,442,1.232,443,2.578,447,1.189,449,1.07,451,2.004,476,2.979,505,1.232,506,1.555,507,1.555,508,1.232,509,2.316,510,1.232,511,1.232,512,1.232,513,1.07,514,1.232,515,1.07,516,1.232,517,1.07,518,1.791,519,1.07,520,1.108,521,1.232,522,1.232,523,1.07,524,1.232,525,1.07,526,1.189,527,1.232,528,1.07,529,1.555,530,1.232,531,1.07,532,1.232,533,1.07,534,1.232,535,2.011,536,1.232,537,2.082,538,1.232,539,1.07,540,1.232,541,1.07,542,1.232,543,1.07,544,1.189,545,1.232,546,1.07,547,1.07,548,1.07,549,1.232,550,1.07,551,0.967,552,1.232,553,1.07,554,1.232,555,1.232,556,1.189,558,1.109,562,2.472,570,2.262,577,1.401,594,2.556,607,2.17,611,2.17,702,4.359,744,1.379,779,3.197,1106,6.016,1176,3.25,1333,3.049,1348,4.198,1402,3.25,1426,3.049,1546,4.469,1559,3.794,1602,3.794,1603,4.905,1832,3.396,1836,3.942,2166,3.049,2260,4.206,2262,1.876,2264,5.663,2266,1.98,2270,4.945,2271,4.657,2277,3.828,2283,4.945,2285,4.381,2325,2.889,2326,2.889,2373,4.905,2411,2.61,2432,2.61,2438,2.889,2439,4.813,2440,5.669,2441,4.813,2442,5.669,2443,5.669,2444,5.669,2445,3.312,2446,4.813,2447,3.312,2448,3.312,2449,4.198,2450,3.312,2451,3.312,2452,3.312,2453,3.312,2454,4.813,2455,4.813,2456,3.312,2457,4.813,2458,3.312,2459,4.813,2460,3.312,2461,4.813,2462,3.312,2463,2.889,2464,3.312,2465,3.312,2466,3.312]],["title/modules/OntologySelectionModule.html",[0,1.232,2258,2.755]],["body/modules/OntologySelectionModule.html",[2,1.733,3,2.098,8,0.013,18,2.325,19,1.855,20,1.516,21,0.177,22,0.217,23,0.177,24,0.118,26,2.682,28,2.407,35,0.329,47,2.325,48,0.367,75,2.948,98,0.217,99,0.177,109,0.009,110,0.011,111,0.009,196,1.974,535,2.741,656,2.586,657,2.784,658,2.136,2257,5.121,2258,5.669,2259,5.121,2260,3.092,2262,3.251,2263,5.007,2264,4.164,2266,3.431,2267,5.007,2285,4.234,2467,5.007,2468,5.007,2469,5.74,2470,5.007,2471,5.74,2472,5.74]],["title/modules/OntologyTreeModule.html",[0,1.232,2259,2.585]],["body/modules/OntologyTreeModule.html",[2,1.75,3,2.11,8,0.013,18,2.338,19,1.873,20,1.531,21,0.178,22,0.219,23,0.178,24,0.12,26,2.698,28,2.008,35,0.342,47,2.338,48,0.37,49,3.59,50,2.724,54,5.509,55,4.568,65,1.058,66,2.322,75,2.977,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,196,1.531,537,2.823,656,2.601,657,2.801,658,2.156,1785,4.719,1786,3.913,2259,5.192,2260,3.122,2266,3.464,2463,5.055,2473,5.055,2474,5.055,2475,5.055,2476,5.795,2477,6.989,2478,5.795,2479,6.989]],["title/components/ResultsBrowserComponent.html",[130,0.557,539,1.319]],["body/components/ResultsBrowserComponent.html",[7,0.859,8,0.013,9,0.859,21,0.082,22,0.1,23,0.082,24,0.161,29,1.009,31,1.733,33,1.259,34,1.429,35,0.249,38,0.556,48,0.17,58,3.736,65,1.466,78,6,98,0.1,99,0.082,101,1.431,102,1.2,103,0.695,109,0.012,110,0.006,111,0.012,118,0.271,119,0.624,120,0.989,121,3.766,125,1.302,126,0.814,127,1.278,128,0.954,130,0.956,136,1.026,170,0.83,172,0.83,175,1.365,176,1.078,178,3.217,179,1.403,182,2.676,183,1.519,185,1.465,187,1.465,188,1.465,191,1.275,193,1.678,195,2.756,196,1.313,197,2.337,205,2.053,214,1.588,216,1.722,219,0.954,226,0.575,231,0.889,249,1.152,250,1.078,251,1.488,253,0.679,291,2.004,315,0.615,321,1.85,334,1.078,340,2.318,352,3.11,354,3.079,369,2.126,371,1.767,380,2.961,387,4.529,416,1.439,417,1.208,418,0.913,430,1.249,435,1.15,442,0.989,443,0.859,447,0.954,449,0.859,451,1.699,476,2.957,505,0.989,506,1.319,507,1.606,508,0.989,509,2.075,510,0.989,511,0.989,512,0.989,513,0.859,514,0.989,515,0.859,516,0.989,517,0.859,518,1.519,519,0.859,520,0.889,521,0.989,522,0.989,523,0.859,524,0.989,525,0.859,526,0.954,527,0.989,528,0.859,529,1.319,530,0.989,531,0.859,532,0.989,533,0.859,534,0.989,535,0.859,536,0.989,537,0.889,538,0.989,539,1.803,540,0.989,541,0.859,542,0.989,543,0.859,544,0.954,545,0.989,546,0.859,547,0.859,548,0.859,549,0.989,550,0.859,551,0.776,552,0.989,553,0.859,554,0.989,555,0.989,556,0.954,558,1.177,570,1.919,572,1.794,573,3.334,575,2.971,576,2.677,577,1.009,594,3.279,597,2.961,603,1.794,607,2.864,611,3.327,613,1.505,614,1.431,633,2.415,634,1.85,635,1.304,636,3.597,638,2.971,639,2.44,641,2.864,642,2.971,643,3.217,646,1.803,666,4.326,667,1.927,793,3.561,833,1.106,875,1.794,876,2.312,878,3.561,904,1.588,959,2.864,960,1.927,961,2.318,962,1.683,1031,2.318,1116,4.336,1176,2.756,1285,1.927,1312,4.663,1326,4.336,1333,2.586,1340,3.533,1343,3.217,1349,3.533,1379,1.683,1380,2.586,1381,1.431,1383,2.097,1390,1.431,1400,2.094,1403,1.919,1404,1.431,1405,4.336,1406,2.318,1410,1.505,1423,1.365,1429,3.334,1433,2.318,1505,2.199,1506,2.961,1574,2.961,1584,3.561,1661,3.561,1700,2.756,1775,1.927,1795,3.561,1799,3.561,2036,4.025,2120,1.683,2126,3.356,2141,1.304,2357,2.318,2480,2.318,2481,4.082,2482,5.577,2483,5.577,2484,4.082,2485,5.577,2486,4.082,2487,4.082,2488,4.97,2489,4.082,2490,4.97,2491,4.082,2492,4.082,2493,4.082,2494,4.97,2495,4.082,2496,6.018,2497,4.97,2498,4.97,2499,4.336,2500,4.97,2501,4.97,2502,4.082,2503,2.657,2504,2.657,2505,2.657,2506,2.657,2507,2.657,2508,4.082,2509,2.657,2510,2.657,2511,2.657,2512,4.082,2513,4.082,2514,2.657,2515,4.082,2516,2.657,2517,2.657,2518,2.657,2519,4.082,2520,2.657,2521,5.577,2522,4.082,2523,2.657,2524,4.082,2525,4.082,2526,2.657,2527,4.082,2528,4.97,2529,2.657,2530,7.003,2531,4.082,2532,4.082,2533,4.082,2534,3.561,2535,4.97,2536,2.657,2537,2.657,2538,2.657,2539,2.657,2540,2.657,2541,2.657,2542,2.657,2543,4.082,2544,4.082,2545,4.082,2546,4.082,2547,2.657,2548,4.082,2549,4.082,2550,5.577,2551,2.657,2552,2.657,2553,2.657,2554,2.657,2555,4.082,2556,2.657,2557,2.094]],["title/modules/ResultsBrowserModule.html",[0,1.232,15,2.755]],["body/modules/ResultsBrowserModule.html",[2,1.769,3,2.124,8,0.013,15,5.63,18,2.354,19,1.894,20,1.548,21,0.18,22,0.221,23,0.18,24,0.121,26,2.716,28,2.438,35,0.331,47,2.354,48,0.374,78,5.104,98,0.221,99,0.18,109,0.009,110,0.011,111,0.011,520,1.96,539,2.731,656,2.618,657,2.819,658,2.18,1312,3.502,1314,4.25,1443,5.485,2558,5.111,2559,5.111,2560,5.859,2561,5.111,2562,5.859,2563,7.036,2564,5.859,2565,5.859,2566,5.859]],["title/injectables/SceneState.html",[168,2.439,402,0.944]],["body/injectables/SceneState.html",[8,0.013,21,0.137,22,0.112,23,0.091,24,0.162,29,1.097,31,1.741,33,1.438,34,1.615,35,0.309,46,4.397,48,0.19,65,0.81,66,1.189,98,0.201,99,0.091,100,1.065,102,1.458,103,1.004,109,0.005,110,0.007,111,0.005,112,0.405,116,1.778,118,0.303,119,0.678,120,1.089,125,1.15,126,0.771,127,0.81,137,3.527,142,2.812,145,0.993,146,1.598,147,1.598,149,1.145,162,3.571,164,2.864,166,1.774,167,2.152,168,2.653,191,0.927,193,1.172,201,1.88,206,2.997,219,0.935,226,0.96,236,2.604,238,2.004,249,1.253,250,1.172,251,1.562,252,1.559,253,1.358,256,4.892,259,2.039,295,3.755,301,2.196,307,1.189,315,1.365,334,0.784,350,2.997,352,1.395,354,2.989,369,1.974,402,1.027,403,1.457,416,1.585,417,1.254,418,1.32,481,1.235,558,1.154,577,1.459,578,1.611,583,2.339,607,1.338,628,2.152,662,1.524,668,3.53,669,1.145,670,2.28,671,2.086,672,1.524,673,3.178,674,1.524,675,1.395,680,4.318,696,1.88,701,3.178,706,1.774,707,1.681,709,2.61,735,3.178,744,2.214,781,3.031,902,2.152,914,1.598,931,1.285,1028,4.477,1032,5.694,1041,2.152,1042,2.004,1081,1.88,1159,1.774,1180,2.004,1226,5.043,1243,2.152,1245,2.004,1273,2.152,1344,2.152,1349,1.88,1490,1.681,1601,2.653,1832,3.53,1833,2.339,1863,2.004,1896,1.88,2125,3.857,2126,3.59,2132,2.588,2134,3.219,2135,3.857,2136,3.59,2148,3.219,2154,3.985,2158,2.004,2159,2.004,2164,2.152,2165,2.152,2166,1.88,2167,2.152,2168,2.152,2169,2.997,2170,2.152,2171,2.152,2172,2.152,2173,2.152,2175,2.152,2188,3.219,2567,2.152,2568,5.148,2569,6.417,2570,6.164,2571,4.638,2572,4.438,2573,5.148,2574,4.438,2575,4.438,2576,4.438,2577,4.438,2578,2.967,2579,2.967,2580,5.148,2581,2.967,2582,3.871,2583,3.871,2584,3.871,2585,2.967,2586,2.967,2587,2.967,2588,6.302,2589,2.967,2590,4.281,2591,2.967,2592,2.967,2593,2.997,2594,2.967,2595,2.967,2596,2.967,2597,2.967,2598,3.871,2599,2.967,2600,3.871,2601,2.967,2602,3.871,2603,2.967,2604,3.871,2605,2.967,2606,2.152,2607,3.871,2608,2.152,2609,2.339,2610,2.152,2611,3.871,2612,3.871,2613,2.588,2614,2.588,2615,2.588,2616,2.588,2617,2.588,2618,3.871,2619,3.871,2620,5.148,2621,2.588,2622,4.638,2623,2.588,2624,2.588,2625,2.588,2626,2.588,2627,2.588,2628,2.588,2629,2.588,2630,2.339,2631,2.588,2632,2.588,2633,2.588,2634,2.588,2635,2.588,2636,2.588,2637,2.588,2638,2.588,2639,2.588,2640,2.588,2641,2.588,2642,2.588,2643,2.588,2644,2.588,2645,2.588,2646,2.588,2647,2.588,2648,2.588,2649,2.588,2650,2.588,2651,2.588,2652,2.588,2653,2.588,2654,2.588,2655,2.588,2656,2.588,2657,2.588,2658,2.588,2659,2.588,2660,2.588,2661,2.588,2662,2.588,2663,2.588,2664,2.588,2665,2.339,2666,2.588,2667,2.588,2668,2.588,2669,2.588,2670,2.588]],["title/interfaces/SceneStateModel.html",[112,0.557,2610,2.96]],["body/interfaces/SceneStateModel.html",[8,0.013,21,0.154,22,0.132,23,0.108,24,0.072,34,1.515,35,0.32,46,4.041,48,0.224,65,0.916,66,1.405,98,0.221,99,0.108,100,1.259,102,1.329,103,1.088,109,0.005,110,0.008,111,0.005,112,0.479,114,1.173,116,1.405,118,0.358,119,0.766,120,0.824,125,1.267,126,0.79,127,1.167,137,2.998,142,3.178,145,1.173,146,1.889,147,1.889,149,1.354,162,3.154,164,2.702,166,2.096,167,2.544,168,2.096,191,1.095,193,0.926,201,2.222,206,3.387,219,1.012,226,1.085,236,2.522,238,2.368,249,0.99,250,0.926,251,1.671,252,1.325,253,1.282,256,4.875,259,1.846,295,3.317,301,2.179,307,1.405,334,0.926,350,3.387,352,1.649,354,2.881,369,1.678,402,1.16,417,0.64,481,1.46,577,1.24,578,1.745,583,2.764,607,1.581,628,2.544,662,1.801,668,3.283,669,1.354,670,2.576,671,2.358,672,1.801,673,2.998,674,1.801,675,1.649,680,4.041,696,2.222,701,2.096,706,2.096,707,1.987,709,2.462,735,3.5,753,3.954,781,2.901,902,2.544,914,1.889,931,1.519,1028,3.954,1032,5.707,1041,2.544,1042,2.368,1081,2.222,1159,2.096,1180,2.368,1226,4.749,1243,2.544,1245,2.368,1273,2.544,1344,2.544,1349,2.222,1490,1.987,1601,2.096,1832,3.473,1833,2.764,1863,2.368,1896,2.222,2125,4.248,2126,2.368,2134,2.544,2135,3.639,2136,3.387,2148,2.544,2154,3.387,2158,2.368,2159,2.368,2164,2.544,2165,2.544,2166,2.222,2167,2.544,2168,2.544,2169,3.387,2170,2.544,2171,2.544,2172,2.544,2173,2.544,2175,2.544,2188,3.639,2567,2.544,2568,5.898,2569,6.672,2570,6.46,2571,3.059,2573,3.059,2580,4.375,2582,3.059,2583,3.059,2584,3.059,2588,6.576,2590,3.639,2593,2.368,2598,3.059,2600,3.059,2602,3.059,2604,3.059,2606,2.544,2607,4.375,2608,2.544,2609,2.764,2610,3.639,2611,5.898,2612,5.898,2613,3.059,2614,3.059,2615,3.059,2616,3.059,2617,3.059,2618,4.375,2619,4.375,2620,5.574,2621,3.059,2622,5.108,2623,3.059,2624,3.059,2625,3.059,2626,3.059,2627,3.059,2628,3.059,2629,3.059,2630,2.764,2631,3.059,2632,3.059,2633,3.059,2634,3.059,2635,3.059,2636,3.059,2637,3.059,2638,3.059,2639,3.059,2640,3.059,2641,3.059,2642,3.059,2643,3.059,2644,3.059,2645,3.059,2646,3.059,2647,3.059,2648,3.059,2649,3.059,2650,3.059,2651,3.059,2652,3.059,2653,3.059,2654,3.059,2655,3.059,2656,3.059,2657,3.059,2658,3.059,2659,3.059,2660,3.059,2661,3.059,2662,3.059,2663,3.059,2664,3.059,2665,2.764,2666,3.059,2667,3.059,2668,3.059,2669,3.059,2670,3.059]],["title/interfaces/SearchResult.html",[112,0.557,2294,2.755]],["body/interfaces/SearchResult.html",[8,0.013,21,0.119,22,0.146,23,0.119,24,0.08,33,1.466,34,0.808,35,0.308,38,0.808,48,0.247,65,0.705,98,0.203,99,0.119,102,1.166,103,1.193,109,0.011,110,0.008,111,0.012,112,0.842,114,1.291,118,0.812,119,0.82,126,0.748,127,1.425,135,4.475,136,1.49,143,2.891,144,2.8,145,1.291,146,2.891,149,1.49,175,1.983,196,2.004,197,3.707,219,0.85,226,1.516,243,2.8,250,1.417,251,1.876,252,1.417,259,1.685,317,1.895,355,4.215,370,2.445,371,2.671,402,1.427,418,0.864,443,1.734,558,0.755,578,1.821,666,3.4,781,1.547,792,1.671,808,2.607,813,2.607,939,3.04,1029,4.475,1030,2.8,1068,2.307,1119,5.263,1355,4.23,1356,2.8,1404,2.891,1426,3.4,1479,3.208,1499,2.445,1580,3.893,1703,2.607,1832,4.086,1836,4.995,1854,5.256,1883,5.263,2156,2.445,2192,3.04,2262,2.187,2271,5.569,2277,3.624,2285,3.04,2288,4.23,2294,4.166,2304,3.043,2332,3.043,2353,3.043,2368,3.043,2369,3.043,2370,3.367,2371,3.367,2372,3.367,2373,4.863,2380,3.367,2381,3.367,2382,6.878,2384,3.367,2385,3.367,2386,4.681,2387,3.367,2388,3.367,2390,3.367,2391,3.367,2392,3.367,2394,3.367,2396,3.367,2397,3.367,2398,3.367,2400,4.681,2401,3.367,2403,3.367,2407,3.367,2408,4.681,2409,6.328,2410,3.367,2411,3.043,2412,3.367,2413,3.367,2414,3.367,2415,3.367,2416,3.367,2417,3.367,2418,4.681,2419,3.367,2420,4.681,2421,4.681,2422,4.681,2423,4.681,2424,3.367,2425,3.367,2426,3.367,2427,3.367,2428,3.367,2429,3.367,2430,4.681,2431,4.681,2432,3.043,2433,3.367,2434,3.367]],["title/components/SpinnerOverlayComponent.html",[130,0.557,541,1.319]],["body/components/SpinnerOverlayComponent.html",[7,1.339,8,0.013,9,1.339,20,1.488,21,0.128,22,0.157,23,0.128,24,0.148,31,1.537,35,0.171,38,0.867,48,0.265,65,1.543,85,5.214,98,0.157,99,0.228,102,1.21,109,0.006,110,0.009,111,0.009,118,0.575,119,0.861,120,1.129,125,0.897,126,0.733,127,1.169,128,1.488,130,0.981,170,1.294,172,1.294,176,1.488,179,1.808,182,2.808,183,2.097,185,2.023,187,2.023,188,2.023,191,1.76,196,1.691,205,1.821,216,1.436,230,5.013,231,2.772,315,1.481,334,1.488,342,2.477,369,1.387,374,2.097,417,1.029,418,1.433,430,2.649,442,1.542,443,1.339,447,1.488,449,1.339,451,2.346,476,2.566,505,1.542,506,2.323,507,1.821,508,1.542,509,2.557,510,1.542,511,1.542,512,1.542,513,1.339,514,1.542,515,1.339,516,1.542,517,1.339,518,2.097,519,1.339,520,1.387,521,1.542,522,1.542,523,1.339,524,1.542,525,1.339,526,1.488,527,1.542,528,1.339,529,1.821,530,1.542,531,1.339,532,1.542,533,1.339,534,1.542,535,1.339,536,1.542,537,1.387,538,1.542,539,1.339,540,1.542,541,2.221,542,1.542,543,1.339,544,1.488,545,1.542,546,1.339,547,1.339,548,1.339,549,1.542,550,1.339,551,1.21,552,1.542,553,1.339,554,1.542,555,1.542,556,1.488,558,1.405,603,3.805,624,3.036,634,1.542,635,2.035,636,2.129,641,2.541,642,2.477,646,1.339,744,1.725,763,3.828,771,3.192,773,1.868,803,3.036,825,2.232,833,1.725,873,2.348,876,2.348,883,2.895,926,2.767,931,3.21,959,1.868,962,2.626,966,3.57,1317,4.916,1381,2.232,1382,2.348,1388,2.477,1390,3.036,1404,4.215,1423,2.129,1479,3.369,1490,2.348,1505,2.232,1512,3.805,1624,5.586,1700,2.799,1772,3.006,2593,4.64,2671,5.665,2672,3.615,2673,5.635,2674,6.403,2675,5.635,2676,4.144,2677,5.635,2678,4.144,2679,5.635,2680,5.635,2681,4.144,2682,4.144,2683,4.144]],["title/modules/SpinnerOverlayModule.html",[0,1.232,16,2.755]],["body/modules/SpinnerOverlayModule.html",[2,1.817,3,2.158,8,0.013,16,5.576,18,2.392,19,1.945,20,1.589,21,0.185,22,0.227,23,0.185,24,0.124,26,2.759,28,2.085,35,0.326,47,2.392,48,0.385,85,4.366,98,0.227,99,0.185,109,0.009,110,0.011,111,0.009,231,2.392,541,2.739,656,2.66,657,2.865,658,2.239,2671,4.744,2684,5.25,2685,5.25,2686,5.25,2687,6.018,2688,6.236,2689,5.25,2690,6.018]],["title/modules/StoreModule.html",[0,1.232,994,2.755]],["body/modules/StoreModule.html",[0,1.676,2,1.676,8,0.013,21,0.171,22,0.21,23,0.171,24,0.115,28,1.923,35,0.345,47,2.278,48,0.355,65,1.013,66,2.728,88,3.517,98,0.257,99,0.171,103,0.945,109,0.008,110,0.01,111,0.008,138,4.598,154,3.517,155,3.517,162,3.668,164,3.668,166,3.318,167,4.027,168,4.07,252,1.466,301,2.066,351,4.375,352,2.609,382,4.375,662,2.851,671,2.609,675,2.609,709,3.343,914,2.99,994,4.598,1208,2.99,1896,3.517,1905,4.027,1913,4.313,2158,3.748,2159,3.748,2691,4.375,2692,5.551,2693,4.842,2694,5.551,2695,4.842,2696,6.424,2697,5.551,2698,5.551,2699,5.551,2700,4.842,2701,4.375,2702,5.551,2703,5.551,2704,5.551,2705,4.842,2706,5.551,2707,5.551,2708,5.551,2709,5.551,2710,6.808,2711,5.551,2712,5.551,2713,5.551,2714,5.551,2715,5.551,2716,5.551,2717,5.551]],["title/modules/ThemingModule.html",[0,1.232,995,2.755]],["body/modules/ThemingModule.html",[2,1.862,3,2.19,8,0.013,18,2.427,19,1.993,20,1.629,21,0.19,22,0.233,23,0.19,24,0.127,35,0.3,47,2.427,48,0.394,91,3.907,92,4.474,93,4.862,98,0.233,99,0.19,109,0.009,110,0.011,111,0.009,159,5.206,210,1.862,995,5.549,2718,5.38,2719,5.38,2720,6.168,2721,7.253,2722,6.168,2723,6.168,2724,6.168]],["title/injectables/ThemingService.html",[159,2.585,402,0.944]],["body/injectables/ThemingService.html",[8,0.013,21,0.112,22,0.138,23,0.112,24,0.163,29,1.275,31,1.745,33,1.491,34,1.614,35,0.213,38,0.763,41,2.874,42,2.462,46,4.858,48,0.233,67,2.645,95,5.334,98,0.195,99,0.244,103,1.273,106,3.181,109,0.006,110,0.008,111,0.006,118,0.372,119,0.788,120,1.229,126,0.812,127,1.468,130,0.972,131,4.811,159,3.267,176,1.362,190,3.073,205,1.667,219,0.948,226,1.407,230,3.267,249,1.456,251,1.696,253,0.932,255,5.773,259,2.197,291,2.532,295,2.921,312,3.741,315,1.73,353,5.051,380,5.427,398,2.18,402,1.193,403,1.79,416,1.641,417,1.253,418,0.816,450,1.964,507,2.367,558,1.272,577,1.761,602,4.978,605,6.214,792,2.233,809,3.181,834,3.181,835,3.181,1020,3.181,1068,3.083,1183,3.741,1403,1.714,1586,3.181,1620,4.498,1837,2.645,1919,3.684,1937,2.874,2194,2.462,2195,2.31,2202,2.31,2437,2.874,2593,5.051,2630,5.126,2725,2.874,2726,5.157,2727,7.323,2728,5.157,2729,6.504,2730,6.504,2731,5.157,2732,3.646,2733,3.646,2734,5.157,2735,3.646,2736,4.498,2737,4.498,2738,6.862,2739,3.646,2740,5.157,2741,6.504,2742,3.646,2743,5.157,2744,5.157,2745,5.157,2746,3.646,2747,5.157,2748,3.646,2749,5.157,2750,3.646,2751,3.646,2752,3.646,2753,3.646,2754,3.646,2755,3.646,2756,3.181,2757,3.646,2758,3.646,2759,3.646,2760,3.646,2761,6.504,2762,3.646,2763,3.646,2764,3.646,2765,3.646,2766,3.646,2767,5.157,2768,3.646,2769,3.646,2770,3.646,2771,3.646,2772,3.646,2773,3.646,2774,3.646,2775,3.646]],["title/components/ThumbnailCarouselComponent.html",[130,0.557,543,1.319]],["body/components/ThumbnailCarouselComponent.html",[7,0.895,8,0.013,9,0.895,20,1.112,21,0.085,22,0.105,23,0.085,24,0.152,29,1.041,31,1.617,33,1.283,35,0.236,38,0.579,48,0.177,65,1.498,98,0.105,99,0.199,102,1.424,103,0.471,109,0.008,110,0.006,111,0.006,118,0.43,119,0.643,120,0.455,126,0.716,127,1.225,128,0.994,130,0.696,136,1.069,170,0.865,172,0.865,175,2.164,176,1.112,179,1.439,182,2.717,183,1.567,185,1.512,187,1.512,188,1.512,191,1.316,196,1.347,207,5.872,210,1.272,214,4.135,216,0.959,219,0.439,226,1.326,231,0.926,250,1.112,251,1.041,252,1.619,315,1.493,316,2.043,321,1.03,334,1.872,341,2.518,342,1.655,369,1.906,374,2.281,387,3.884,416,0.662,417,0.931,418,1.371,430,1.98,434,2.927,435,1.824,442,1.03,443,0.895,447,0.994,449,0.895,451,1.754,476,1.688,497,2.008,505,1.03,506,2.087,507,1.361,508,1.03,509,2.12,510,1.03,511,1.03,512,1.03,513,0.895,514,1.03,515,0.895,516,1.03,517,0.895,518,1.567,519,0.895,520,1.706,521,1.03,522,1.03,523,0.895,524,1.03,525,0.895,526,0.994,527,1.03,528,0.895,529,1.361,530,1.03,531,0.895,532,1.03,533,0.895,534,1.03,535,0.895,536,1.03,537,0.926,538,1.03,539,0.895,540,1.03,541,0.895,542,1.03,543,1.842,544,2.759,545,1.03,546,0.895,547,0.895,548,0.895,549,1.03,550,0.895,551,0.808,552,1.03,553,0.895,554,1.03,555,1.03,556,0.994,558,0.824,570,2.679,578,1.392,594,2.299,603,2.844,611,1.899,622,1.754,623,1.655,636,2.619,638,3.048,639,1.655,640,2.008,641,2.911,642,1.655,646,2.169,744,1.153,763,3.048,771,2.386,772,2.844,773,2.299,803,2.269,825,1.491,833,2.552,861,2.386,873,1.568,874,2.386,883,3.149,904,3.048,925,1.869,926,2.068,931,2.796,939,2.386,959,3.195,960,3.056,962,2.668,966,2.668,983,2.068,985,3.479,1056,1.655,1308,2.888,1332,3.048,1340,2.668,1371,3.674,1381,2.746,1382,3.473,1383,2.619,1384,3.056,1385,2.619,1386,1.568,1388,2.518,1389,2.518,1390,2.746,1400,3.32,1403,1.98,1404,1.491,1407,2.008,1409,3.674,1410,2.888,1413,2.182,1414,2.415,1416,2.415,1423,2.619,1425,1.491,1429,3.048,1452,4.961,1486,3.32,1504,2.182,1505,2.746,1510,4.533,1512,2.844,1525,2.008,1544,3.056,1700,1.869,1712,3.32,1800,3.674,1888,2.182,1896,1.754,2141,2.797,2190,4.533,2191,4.253,2198,3.406,2205,3.23,2292,3.674,2499,4.447,2593,1.869,2776,5.33,2777,2.182,2778,3.674,2779,3.674,2780,4.212,2781,5.098,2782,4.212,2783,4.832,2784,5.098,2785,4.212,2786,5.098,2787,5.098,2788,6.457,2789,2.768,2790,2.768,2791,4.212,2792,5.098,2793,4.447,2794,4.212,2795,2.768,2796,4.212,2797,4.212,2798,4.212,2799,5.098,2800,4.212,2801,4.212,2802,5.633,2803,4.212,2804,4.212,2805,4.212,2806,4.212,2807,2.768,2808,5.586,2809,5.098,2810,4.212,2811,4.212,2812,4.212,2813,4.212,2814,3.674,2815,4.212,2816,4.212,2817,4.212,2818,4.212,2819,4.212,2820,4.212,2821,2.768,2822,4.019,2823,2.768,2824,4.212,2825,2.768,2826,2.768,2827,3.674,2828,6.457,2829,2.768,2830,2.768,2831,2.768,2832,4.212,2833,4.212,2834,2.768,2835,4.212,2836,4.212,2837,4.212,2838,4.212,2839,2.768,2840,5.098,2841,2.768,2842,2.768,2843,2.768,2844,2.768,2845,2.768,2846,2.768,2847,2.768,2848,2.768]],["title/modules/ThumbnailCarouselModule.html",[0,1.232,1448,2.755]],["body/modules/ThumbnailCarouselModule.html",[2,2.11,3,2.11,8,0.013,18,2.338,19,1.873,20,1.531,21,0.178,22,0.219,23,0.178,24,0.12,26,2.698,28,2.008,35,0.339,47,2.338,48,0.37,49,3.59,50,2.724,98,0.219,99,0.178,109,0.009,110,0.011,111,0.009,253,1.481,543,2.727,544,2.08,656,2.601,657,2.801,658,2.156,1448,5.534,1452,3.913,1785,4.719,1786,3.913,2776,4.204,2783,4.568,2808,5.509,2849,5.055,2850,5.055,2851,5.055,2852,5.795,2853,6.989,2854,5.795,2855,5.795,2856,5.795,2857,5.795,2858,5.795]],["title/components/TissueSectionVisComponent.html",[130,0.557,546,1.319]],["body/components/TissueSectionVisComponent.html",[7,1.242,8,0.013,9,1.242,21,0.118,22,0.145,23,0.118,24,0.15,29,1.322,31,1.565,33,1.288,35,0.221,38,0.804,48,0.246,65,1.536,98,0.145,99,0.223,102,1.163,109,0.006,110,0.008,111,0.008,118,0.628,119,0.817,120,0.631,125,1.158,126,0.747,127,0.701,128,1.379,130,0.84,136,1.483,170,1.2,172,1.2,176,1.413,179,1.737,182,2.789,183,1.991,185,1.92,187,1.92,188,1.92,191,1.2,193,1.758,196,1.625,197,2.515,205,1.729,210,1.16,216,1.331,226,1.158,231,1.285,252,1.413,301,1.991,315,1.237,316,2.144,321,2.29,334,1.758,338,3.352,341,2.297,342,3.198,369,1.79,371,2.316,374,1.991,416,0.919,417,1.322,418,1.197,430,2.893,435,1.664,442,1.43,443,1.242,447,1.379,449,1.242,451,2.227,476,2.466,505,1.43,506,2.261,507,1.729,508,1.43,509,2.476,510,1.43,511,1.43,512,1.43,513,1.242,514,1.43,515,1.242,516,1.43,517,1.242,518,1.991,519,1.242,520,1.285,521,1.43,522,1.43,523,1.242,524,1.43,525,1.242,526,1.379,527,1.43,528,1.242,529,1.729,530,1.43,531,1.242,532,1.43,533,1.242,534,1.43,535,1.242,536,1.43,537,1.285,538,1.43,539,1.242,540,1.43,541,1.242,542,1.43,543,1.242,544,1.379,545,1.43,546,2.151,547,2.633,548,2.72,549,1.43,550,1.242,551,1.122,552,1.43,553,1.242,554,1.43,555,1.43,556,1.379,578,2.029,633,1.664,634,1.991,635,2.626,641,2.775,646,1.989,744,1.6,771,3.03,773,1.732,803,2.882,825,2.07,833,2.227,841,2.882,873,2.177,874,2.177,959,2.775,1312,4.33,1321,5.369,1383,3.161,1388,2.297,1403,1.806,1407,2.787,1408,3.029,1413,3.029,1423,1.974,1441,3.352,1455,5.255,1524,3.389,1775,4.465,2016,3.029,2534,4.667,2859,5.71,2860,3.352,2861,7.244,2862,6.154,2863,5.35,2864,5.35,2865,6.154,2866,6.996,2867,6.154,2868,3.842,2869,4.667,2870,4.667,2871,3.842,2872,5.35,2873,5.35,2874,5.35,2875,5.35,2876,5.35,2877,3.842,2878,5.35,2879,5.35,2880,5.35,2881,3.842,2882,3.842,2883,3.842,2884,3.842,2885,3.842,2886,3.842,2887,3.842]],["title/modules/TissueSectionVisModule.html",[0,1.232,1449,2.755]],["body/modules/TissueSectionVisModule.html",[2,1.825,3,2.164,8,0.013,18,2.398,19,1.953,20,1.596,21,0.186,22,0.228,23,0.186,24,0.125,26,2.767,28,2.094,35,0.316,47,2.398,48,0.386,98,0.228,99,0.186,109,0.009,110,0.011,111,0.009,546,2.741,547,1.953,548,2.469,656,2.667,657,2.872,658,2.249,1312,3.613,1449,5.58,1455,4.384,2859,4.764,2888,5.272,2889,5.272,2890,5.272,2891,6.044,2892,6.044]],["title/components/ToggleButtonComponent.html",[130,0.557,550,1.319]],["body/components/ToggleButtonComponent.html",[7,0.935,8,0.013,9,0.935,21,0.089,22,0.109,23,0.089,24,0.159,29,1.077,31,1.702,33,1.426,34,1.374,35,0.241,38,0.605,48,0.185,65,1.501,98,0.109,99,0.202,100,2.092,101,1.559,102,0.99,103,0.891,109,0.004,110,0.007,111,0.007,118,0.295,119,0.665,120,0.715,125,1.352,126,0.701,127,0.956,128,1.039,129,3.692,130,0.979,145,0.968,170,0.904,172,1.952,176,1.15,179,2.331,182,2.705,183,1.621,185,1.563,187,1.563,188,1.563,191,1.636,193,1.15,196,1.383,205,2.02,210,1.581,216,1.003,219,0.69,226,1.261,231,0.968,236,1.457,249,1.23,250,1.15,251,1.44,253,0.739,259,1.996,261,3.692,278,1.954,313,2.346,315,1.446,316,1.745,317,2.138,321,2.169,369,1.752,416,1.041,417,1.199,418,1.398,432,1.559,433,1.559,435,1.253,442,1.077,443,0.935,447,1.039,449,0.935,505,1.077,506,2.02,507,1.408,508,1.077,509,2.169,510,1.077,511,1.077,512,1.077,513,0.935,514,1.077,515,0.935,516,1.077,517,0.935,518,1.621,519,0.935,520,0.968,521,1.077,522,1.077,523,0.935,524,1.077,525,0.935,526,1.039,527,1.077,528,0.935,529,1.408,530,1.077,531,0.935,532,1.077,533,0.935,534,1.077,535,0.935,536,1.077,537,0.968,538,1.077,539,0.935,540,1.077,541,0.935,542,1.077,543,0.935,544,1.039,545,1.077,546,0.935,547,0.935,548,0.935,549,1.077,550,1.883,551,2.36,552,1.077,553,0.935,554,1.077,555,1.077,556,1.039,558,1.024,577,1.077,607,2.961,635,1.421,641,1.305,646,0.935,744,1.205,755,4.128,756,2.821,759,2.81,762,1.36,763,3.131,766,4.944,767,3.433,768,4.594,769,3.139,771,2.467,772,2.941,777,1.964,778,2.361,779,2.994,780,3.16,781,1.745,784,2.632,788,3.16,789,2.941,790,2.941,792,1.886,796,2.941,803,2.346,817,3.8,818,3.16,825,1.559,829,2.099,833,3.043,840,3.484,841,4.052,848,2.281,850,2.099,856,2.524,859,2.099,873,1.639,874,1.639,883,1.486,897,2.759,906,3.433,908,3.433,909,3.433,913,2.604,916,4.074,921,4.764,926,2.138,938,2.281,944,1.73,959,1.305,983,2.138,985,3.881,1208,3.865,1380,1.833,1381,1.559,1382,1.639,1385,2.237,1386,2.467,1389,1.73,1390,1.559,1403,1.36,1423,1.486,1425,3.538,1464,6.055,1508,3.935,1524,1.833,1601,2.604,1772,2.099,2016,2.281,2021,2.524,2022,4.569,2023,4.569,2041,3.8,2069,2.524,2073,3.8,2084,5.729,2085,5.729,2893,6.701,2894,2.524,2895,5.238,2896,4.356,2897,4.356,2898,2.894,2899,4.356,2900,6.568,2901,4.356,2902,4.356,2903,5.238,2904,2.894,2905,2.894,2906,2.894,2907,2.894,2908,2.894,2909,2.894,2910,2.894,2911,2.894,2912,2.894,2913,2.894,2914,2.894,2915,2.894,2916,2.894,2917,2.894,2918,2.894,2919,2.894,2920,2.894,2921,2.894,2922,2.894,2923,4.356,2924,4.356,2925,2.894,2926,2.894]],["title/components/ViewerComponent.html",[130,0.557,553,1.319]],["body/components/ViewerComponent.html",[7,1.193,8,0.013,9,1.193,21,0.114,22,0.139,23,0.114,24,0.16,29,1.286,31,1.707,33,1.088,34,1.368,35,0.215,38,0.772,48,0.236,57,2.338,58,1.896,65,1.526,98,0.139,99,0.185,100,1.867,101,1.988,102,0.983,103,0.628,109,0.006,110,0.008,111,0.008,118,0.377,119,0.795,120,0.854,126,0.784,127,1.099,128,1.325,130,0.822,170,1.153,172,1.153,176,1.374,179,1.7,182,2.778,183,1.935,185,1.867,187,1.867,188,1.867,196,1.591,208,2.802,210,1.818,212,4.042,216,2.6,219,0.585,230,2.338,231,1.74,253,0.943,259,1.644,307,2.084,315,1.594,316,1.479,321,2.241,334,1.889,369,2.015,394,2.493,395,4.537,416,1.244,417,1.194,418,1.542,426,2.206,430,2.831,435,1.598,442,1.374,443,1.193,447,1.325,449,1.193,451,2.165,476,2.084,505,1.374,506,1.681,507,1.681,508,1.374,509,2.433,510,1.374,511,1.374,512,1.374,513,1.193,514,1.374,515,1.193,516,1.374,517,1.193,518,1.935,519,1.193,520,1.235,521,1.374,522,1.374,523,1.193,524,1.374,525,1.193,526,1.325,527,1.374,528,1.193,529,1.681,530,1.374,531,1.193,532,1.374,533,1.193,534,1.374,535,1.193,536,1.374,537,1.235,538,1.374,539,1.193,540,1.374,541,1.193,542,1.374,543,1.193,544,1.325,545,1.374,546,1.193,547,1.946,548,1.193,549,1.374,550,1.193,551,1.077,552,1.374,553,2.113,554,1.374,555,1.374,556,1.325,558,0.722,570,2.445,594,2.715,606,3.512,611,2.345,624,1.988,634,2.241,636,2.672,637,2.678,641,2.948,642,2.206,646,1.946,744,1.537,763,3.6,771,2.946,773,2.345,803,2.802,825,1.988,833,1.537,841,1.988,842,4.1,873,2.091,883,3.094,959,2.715,985,1.812,1208,1.988,1215,4.537,1353,3.109,1379,2.338,1381,2.802,1382,2.946,1383,1.896,1385,1.896,1386,2.091,1388,3.109,1389,2.206,1397,2.909,1403,1.735,1423,1.896,1425,1.988,1429,3.6,1546,4.747,1559,4.1,1602,4.1,1603,5.154,1700,2.493,1703,3.512,1860,4.537,1870,3.773,1896,2.338,1909,4.747,1911,5.154,1916,4.747,1919,3.905,1921,2.909,1989,4.747,2927,3.22,2928,4.537,2929,6.023,2930,5.201,2931,6.893,2932,6.023,2933,6.539,2934,3.691,2935,5.201,2936,3.691,2937,3.691,2938,5.201,2939,3.691,2940,3.691,2941,3.691,2942,4.537,2943,5.201,2944,5.201,2945,5.201,2946,3.691,2947,5.201,2948,3.691,2949,6.023,2950,5.201,2951,4.537,2952,3.691,2953,3.691,2954,3.691]],["title/modules/ViewerModule.html",[0,1.232,17,2.755]],["body/modules/ViewerModule.html",[2,1.789,3,2.138,8,0.013,17,5.559,18,2.37,19,1.915,20,1.565,21,0.182,22,0.224,23,0.182,24,0.122,26,2.734,28,2.053,35,0.337,47,2.37,48,0.379,49,3.638,50,2.785,98,0.224,99,0.182,109,0.009,110,0.011,111,0.009,231,1.982,553,2.734,656,2.636,657,2.838,658,2.205,1785,4.783,1786,4.001,2688,6.179,2689,5.169,2955,5.169,2956,5.169,2957,5.169,2958,5.925,2959,5.925]],["title/injectables/WorkerDataSourceService.html",[402,0.944,1305,2.755]],["body/injectables/WorkerDataSourceService.html",[0,1.58,8,0.013,21,0.161,22,0.198,23,0.161,24,0.155,29,1.623,31,1.605,33,1.374,35,0.311,38,1.095,48,0.334,65,1.198,66,2.097,98,0.198,99,0.161,102,0.989,103,1.221,109,0.008,110,0.01,111,0.008,116,2.631,117,6.561,118,0.534,120,1.178,125,1.552,126,0.827,127,1.198,136,2.02,138,5.079,212,3.864,219,1.136,226,1.552,252,1.986,253,1.677,259,2.054,260,5.175,402,1.518,403,2.57,408,5.203,416,1.715,417,1.309,421,2.82,658,1.948,1298,5.079,1299,3.797,1305,4.433,1306,4.762,2960,6.561,2961,7.173,2962,6.565,2963,6.565,2964,5.234,2965,7.173,2966,7.521,2967,5.234,2968,6.565,2969,5.234,2970,5.234,2971,6.565,2972,5.234,2973,6.565,2974,5.234,2975,5.234,2976,5.234,2977,5.234,2978,5.234,2979,5.234,2980,5.234,2981,5.234,2982,5.234,2983,5.234,2984,5.234,2985,5.234,2986,5.234,2987,5.234]],["title/changelog.html",[2988,2.469,2989,2.469,2990,2.683]],["body/changelog.html",[3,1.425,8,0.01,21,0.181,31,0.442,38,0.413,58,1.657,65,1.412,66,0.791,89,3.514,91,1.064,94,4.294,95,2.043,108,5.661,109,0.003,110,0.005,111,0.009,112,0.804,114,0.661,119,0.302,120,0.324,126,0.211,130,0.558,136,1.578,175,2.673,176,0.852,182,1.079,193,0.852,196,1.623,201,4.029,203,3.721,206,5.222,207,2.542,214,1.18,216,2.203,219,1.008,252,2.009,255,1.556,256,3.674,260,1.556,276,2.34,291,2.318,296,4.871,298,3.894,301,1.757,307,1.638,312,1.432,314,1.892,315,0.457,316,0.791,319,1.722,320,1.556,321,0.735,341,2.822,345,1.556,349,1.722,350,1.333,352,1.516,353,2.761,354,0.89,358,3.567,359,4.118,369,1.741,370,1.251,374,1.2,387,2.043,426,2.444,434,3.026,436,1.928,443,0.638,447,1.695,488,1.722,494,1.251,497,4.051,507,0.638,520,1.079,547,2.281,548,1.042,551,0.942,556,0.709,569,1.118,576,1.064,578,0.539,579,2.542,587,2.542,588,1.556,592,5.82,596,1.18,597,1.432,600,2.178,614,1.064,633,0.855,646,0.638,694,1.333,779,1.014,781,2.786,789,2.178,792,2.044,808,1.333,813,1.333,833,0.822,854,1.18,855,1.657,876,1.118,908,1.556,913,3.11,921,1.432,931,0.855,977,1.18,983,0.969,985,1.583,986,1.333,989,1.014,1041,1.432,1044,2.542,1045,2.542,1049,2.542,1051,1.556,1052,1.333,1058,1.556,1059,3.721,1062,4.102,1064,1.556,1068,1.928,1078,1.556,1080,3.425,1090,1.432,1130,2.813,1169,2.542,1176,2.178,1183,2.34,1208,1.064,1209,1.722,1210,1.556,1213,2.761,1216,3.223,1217,1.722,1223,1.333,1224,1.556,1226,4.767,1245,2.761,1308,1.118,1316,1.722,1331,1.432,1332,1.18,1347,2.813,1349,1.251,1352,1.333,1353,1.18,1356,1.432,1358,1.722,1395,3.567,1397,1.556,1410,1.827,1426,3.538,1427,1.722,1438,4.118,1468,1.722,1476,2.542,1479,1.928,1487,1.556,1499,1.251,1500,1.18,1506,1.432,1515,1.722,1527,1.556,1544,2.34,1628,2.542,1630,3.567,1637,2.542,1644,2.813,1703,2.178,1712,1.556,1729,1.556,1744,1.722,1746,1.722,1764,3.721,1774,1.722,1798,4.118,1837,2.34,1861,2.813,1870,3.775,1883,2.34,1942,2.542,1997,2.542,2116,1.556,2136,2.761,2141,0.969,2154,4.831,2169,1.333,2192,1.118,2198,2.822,2248,1.722,2271,4.522,2277,1.333,2308,1.722,2437,2.542,2449,1.722,2557,1.556,2590,2.966,2606,4.858,2665,2.542,2705,1.722,2736,1.722,2737,1.722,2778,1.722,2779,2.813,2783,1.556,2802,1.722,2814,4.118,2827,2.813,2869,4.539,2928,4.118,2951,2.813,2989,2.966,2990,2.542,2991,1.722,2992,1.722,2993,3.225,2994,3.225,2995,4.721,2996,8.405,2997,4.871,2998,1.974,2999,3.225,3000,4.089,3001,5.584,3002,1.974,3003,4.089,3004,1.974,3005,1.974,3006,7.022,3007,1.974,3008,1.974,3009,1.974,3010,1.974,3011,7.059,3012,1.974,3013,1.974,3014,1.974,3015,1.974,3016,1.974,3017,1.974,3018,3.225,3019,1.722,3020,1.974,3021,3.225,3022,4.721,3023,4.721,3024,4.089,3025,1.974,3026,1.974,3027,1.974,3028,1.974,3029,5.584,3030,4.401,3031,4.539,3032,3.567,3033,1.974,3034,6.541,3035,6.541,3036,5.203,3037,5.203,3038,4.539,3039,1.974,3040,3.225,3041,1.974,3042,4.089,3043,5.361,3044,6.953,3045,4.871,3046,3.225,3047,1.974,3048,1.974,3049,3.225,3050,6.697,3051,3.567,3052,1.974,3053,5.584,3054,5.203,3055,1.974,3056,1.974,3057,1.974,3058,1.974,3059,1.974,3060,1.974,3061,2.813,3062,3.225,3063,5.892,3064,5.361,3065,1.974,3066,1.974,3067,1.974,3068,1.974,3069,4.539,3070,1.974,3071,3.225,3072,1.974,3073,3.225,3074,3.225,3075,3.225,3076,3.225,3077,1.974,3078,4.089,3079,1.974,3080,1.974,3081,1.974,3082,3.225,3083,3.225,3084,1.974,3085,1.974,3086,3.225,3087,3.225,3088,4.721,3089,1.974,3090,1.974,3091,1.974,3092,1.974,3093,3.225,3094,1.974,3095,1.974,3096,5.584,3097,3.225,3098,1.974,3099,1.974,3100,1.974,3101,4.089,3102,3.225,3103,5.584,3104,2.813,3105,4.721,3106,2.813,3107,5.584,3108,1.974,3109,1.974,3110,3.225,3111,3.225,3112,1.974,3113,1.974,3114,3.225,3115,1.974,3116,1.974,3117,1.974,3118,1.974,3119,3.225,3120,1.974,3121,1.974,3122,1.974,3123,1.974,3124,1.974,3125,1.974,3126,1.974,3127,1.974,3128,1.974,3129,3.225,3130,1.974,3131,1.974,3132,4.089,3133,4.089,3134,3.225,3135,1.974,3136,1.974,3137,1.974,3138,3.225,3139,1.974,3140,1.974,3141,1.974,3142,3.225,3143,3.225,3144,4.089,3145,1.974,3146,1.974,3147,1.974,3148,1.974,3149,1.974,3150,3.225,3151,1.722,3152,1.974,3153,1.974,3154,4.089,3155,3.225,3156,1.974,3157,1.974,3158,4.089,3159,3.225,3160,4.721,3161,1.974,3162,1.974,3163,1.974,3164,3.225,3165,1.974,3166,1.974,3167,1.974,3168,1.974,3169,1.974,3170,1.974,3171,4.089,3172,1.974,3173,4.089,3174,5.203,3175,3.225,3176,3.225,3177,3.225,3178,4.089,3179,4.721,3180,5.203,3181,3.225,3182,4.089,3183,1.974,3184,1.974,3185,5.892,3186,4.089,3187,4.721,3188,1.974,3189,1.974,3190,1.974,3191,1.974,3192,3.225,3193,1.974,3194,1.974,3195,1.974,3196,3.225,3197,1.974,3198,1.974,3199,3.567,3200,3.225,3201,3.567,3202,1.974,3203,1.974,3204,1.974,3205,1.974,3206,1.974,3207,1.974,3208,1.974,3209,1.974,3210,1.974,3211,1.974,3212,1.974,3213,4.721,3214,5.584,3215,4.089,3216,1.974,3217,1.974,3218,4.089,3219,1.974,3220,1.974,3221,1.974,3222,3.225,3223,3.225,3224,4.089,3225,1.974,3226,1.974,3227,1.974,3228,1.974,3229,1.974,3230,1.974,3231,1.722,3232,1.974,3233,1.974,3234,1.974,3235,1.974,3236,1.974,3237,1.974,3238,1.974,3239,1.974,3240,1.974,3241,1.974,3242,1.974,3243,1.974,3244,1.974,3245,1.974,3246,1.974,3247,6.146,3248,1.974,3249,3.567,3250,6.146,3251,4.089,3252,4.721,3253,3.225,3254,4.089,3255,1.974,3256,1.974,3257,1.974,3258,1.974,3259,3.225,3260,1.974,3261,1.974,3262,1.974,3263,3.225,3264,1.974,3265,1.974,3266,1.974,3267,1.974,3268,1.974,3269,1.974,3270,1.974,3271,1.974,3272,1.974,3273,1.974,3274,1.974,3275,1.974,3276,1.974,3277,1.974,3278,1.974,3279,1.974,3280,1.974,3281,1.974,3282,1.974,3283,1.974,3284,1.974,3285,1.974,3286,1.974,3287,1.974,3288,3.225,3289,1.974,3290,3.225,3291,1.974,3292,3.225,3293,3.225,3294,4.721,3295,4.721,3296,3.225,3297,3.225,3298,1.974,3299,1.974,3300,1.974,3301,1.974,3302,1.722,3303,1.974,3304,1.974,3305,1.974,3306,1.974,3307,1.974,3308,1.974,3309,3.225,3310,6.541,3311,4.089,3312,3.225,3313,1.974,3314,3.225,3315,1.974,3316,1.974,3317,1.974,3318,1.974,3319,1.974,3320,1.974,3321,3.225,3322,5.14,3323,3.225,3324,1.974,3325,1.974,3326,1.974,3327,1.974,3328,3.721,3329,1.974,3330,3.225,3331,1.974,3332,1.974,3333,1.974,3334,3.225,3335,1.974,3336,1.974,3337,1.974,3338,3.225,3339,4.089,3340,3.225,3341,1.974,3342,2.813,3343,1.974,3344,1.974,3345,1.974,3346,1.974,3347,1.974,3348,1.974,3349,1.974,3350,1.974,3351,1.974,3352,1.722,3353,1.974,3354,1.974,3355,1.974,3356,1.974,3357,1.974,3358,1.974,3359,1.722,3360,1.974,3361,1.974,3362,3.225,3363,1.974,3364,1.974,3365,1.974,3366,1.974,3367,1.974,3368,1.974,3369,1.974,3370,1.974,3371,1.974,3372,1.974,3373,3.225,3374,1.974,3375,1.974,3376,3.225,3377,1.974,3378,1.974,3379,1.974,3380,1.974,3381,1.974,3382,1.974,3383,1.974,3384,1.974,3385,1.974]],["title/coverage.html",[3328,4.395]],["body/coverage.html",[7,1.112,8,0.013,9,1.112,23,0.106,24,0.178,36,2.324,38,1.035,39,2.496,67,2.496,72,2.324,75,3.447,78,3.59,82,2.324,85,2.496,89,3.341,99,0.178,109,0.005,110,0.008,111,0.005,112,1.105,113,2.712,115,4.316,126,0.367,130,1.118,136,1.328,156,2.324,159,2.18,162,1.854,164,1.854,166,2.958,168,2.057,170,1.075,172,1.075,219,0.545,223,6.244,252,0.909,301,1.281,334,2.119,392,3.155,402,1.783,404,3.002,405,3.002,430,3.979,444,3.9,445,3.9,503,2.712,513,1.112,515,1.112,517,1.112,519,1.112,523,1.112,525,1.112,528,1.112,531,1.112,533,1.112,535,1.112,537,1.151,539,1.112,541,1.112,543,1.112,546,1.112,548,1.599,550,1.112,553,1.112,557,3.002,661,4.278,662,3.254,663,4.278,681,2.324,698,2.324,709,1.689,754,3.9,759,1.983,784,1.379,800,1.552,880,3.002,967,2.057,968,4.012,974,2.057,981,2.057,982,2.057,1007,2.324,1009,3.912,1025,2.712,1026,4.719,1043,2.496,1050,3.9,1082,2.712,1203,2.496,1204,4.278,1205,3.9,1206,3.9,1225,2.324,1297,2.496,1298,4.278,1299,4.203,1305,2.324,1312,3.463,1313,2.712,1314,2.496,1315,3.002,1387,3.9,1452,3.341,1455,2.496,1461,2.057,1462,2.057,1464,2.712,1466,3.002,1542,2.712,1543,3.002,1726,3.341,1727,2.496,1728,3.002,1787,3.002,1828,2.712,1830,3.002,1831,3.002,1842,3.002,1859,3.002,1904,2.496,1905,3.59,1906,3.9,1913,2.18,1965,2.712,1966,4.203,1998,2.712,2120,2.18,2121,3.002,2122,3.002,2123,3.9,2124,3.9,2160,2.496,2189,4.427,2191,2.18,2199,2.057,2260,3.615,2262,3.282,2264,2.496,2266,3.463,2268,3.002,2285,1.949,2294,2.324,2368,3.9,2369,3.9,2435,3.002,2436,3.002,2438,3.002,2480,3.002,2557,2.712,2567,4.203,2608,2.496,2610,2.496,2671,2.712,2672,3.002,2691,2.712,2701,2.712,2725,3.9,2776,3.59,2777,3.9,2822,2.712,2859,2.712,2860,3.002,2893,3.002,2894,3.002,2927,3.002,2960,3.002,3030,2.712,3045,3.002,3328,2.712,3386,3.441,3387,3.441,3388,6.335,3389,3.441,3390,3.441,3391,4.948,3392,4.948,3393,3.441,3394,3.441,3395,4.948,3396,5.794,3397,3.441,3398,4.948,3399,3.002,3400,7.974,3401,3.441,3402,3.441,3403,4.948,3404,3.441,3405,3.441,3406,3.441,3407,3.441,3408,5.794,3409,3.002,3410,3.002,3411,5.794,3412,5.794,3413,3.441,3414,3.441,3415,3.441,3416,3.441,3417,3.441,3418,3.441,3419,3.441,3420,3.441,3421,3.441,3422,4.567,3423,3.441,3424,3.441,3425,3.002,3426,3.002,3427,3.441,3428,3.441,3429,3.441,3430,3.441,3431,3.441,3432,4.948,3433,3.441,3434,3.002,3435,3.441,3436,3.441,3437,3.441,3438,4.948,3439,3.441,3440,4.948,3441,3.441,3442,3.441,3443,3.441,3444,3.441]],["title/dependencies.html",[3,1.482,3019,2.969]],["body/dependencies.html",[3,1.478,8,0.013,23,0.151,44,4.269,48,0.313,57,3.985,58,3.231,109,0.007,110,0.01,111,0.007,145,1.637,175,2.514,201,3.101,507,2.033,576,2.636,613,3.564,614,2.636,628,3.55,658,1.821,671,2.301,675,2.301,677,3.55,678,3.55,753,3.858,928,3.858,1029,3.55,1030,3.55,1055,3.858,1220,3.55,1222,3.55,1545,3.55,1588,4.269,1648,3.858,1832,2.514,2156,3.101,2166,3.101,2323,3.858,2693,4.269,2695,4.269,2696,5.488,2793,4.269,2808,3.858,3038,4.269,3061,4.269,3104,4.269,3199,4.269,3249,5.488,3445,4.894,3446,4.894,3447,8.207,3448,4.894,3449,4.894,3450,4.894,3451,4.894,3452,4.894,3453,4.894,3454,4.894,3455,4.894,3456,4.894,3457,7.59,3458,4.894,3459,6.291,3460,4.894,3461,4.894,3462,4.894,3463,6.952,3464,4.894,3465,4.894,3466,4.894,3467,4.894,3468,4.894,3469,4.894,3470,6.952,3471,4.894,3472,4.894,3473,4.894,3474,6.291,3475,4.894,3476,4.894,3477,4.894,3478,6.291,3479,4.894,3480,4.894,3481,4.894,3482,4.894,3483,4.894,3484,4.894,3485,4.894,3486,4.894,3487,4.894,3488,4.894,3489,4.894,3490,4.894,3491,4.894,3492,6.291,3493,4.269,3494,4.894,3495,4.894,3496,4.894,3497,4.894,3498,4.894,3499,6.291,3500,4.894,3501,4.894,3502,4.894,3503,4.894,3504,4.894,3505,4.894,3506,4.894,3507,4.894,3508,4.894,3509,4.894,3510,4.894,3511,4.894,3512,4.894,3513,4.894,3514,4.894,3515,4.894,3516,4.894,3517,4.894,3518,4.894,3519,4.894,3520,4.894,3521,4.894,3522,4.894,3523,4.894,3524,4.894,3525,4.894,3526,4.894,3527,6.291,3528,4.894,3529,4.894,3530,4.894,3531,4.894,3532,4.894,3533,4.894,3534,4.894,3535,4.894,3536,4.894,3537,4.894,3538,4.894,3539,4.894]],["title/miscellaneous/enumerations.html",[3540,1.928,3541,4.282]],["body/miscellaneous/enumerations.html",[8,0.012,24,0.134,109,0.01,110,0.011,111,0.01,118,0.664,161,5.895,236,2.175,252,1.717,418,1.673,562,3.339,1026,4.389,1055,5.124,1060,6.523,1061,5.425,3540,3.682,3541,5.67,3542,5.124]],["title/miscellaneous/functions.html",[3540,1.928,3543,4.282]],["body/miscellaneous/functions.html",[8,0.013,24,0.152,33,1.648,34,1.16,89,4.594,109,0.008,110,0.01,111,0.008,118,0.566,120,1.317,125,1.199,127,1.012,179,1.921,210,1.674,211,4.022,229,3.512,252,1.464,371,3.187,392,3.703,416,1.883,417,1.438,418,1.24,434,3.495,444,4.37,445,5.362,480,4.836,503,5.362,558,1.501,679,3.781,754,4.37,777,2.499,830,6.05,831,4.067,832,4.836,833,2.832,839,4.836,842,4.37,914,3.965,976,3.854,988,3.314,1026,3.743,1036,4.836,1061,4.935,1062,4.37,1063,5.934,1064,4.37,1065,4.836,1067,3.14,1068,3.314,1069,4.836,1070,4.836,1072,5.934,1073,4.836,1074,4.836,1075,4.836,1076,4.836,1077,4.37,1078,5.802,1079,3.314,1080,4.022,1081,3.512,1082,5.362,2298,4.836,3409,5.934,3410,5.934,3434,5.934,3540,3.14,3542,5.802,3543,4.836,3544,5.544,3545,5.544,3546,5.544]],["title/index.html",[118,0.347,2988,2.469,2989,2.469]],["body/index.html",[8,0.01,21,0.243,65,1.557,94,5.202,108,5.364,109,0.009,110,0.01,111,0.009,112,0.934,114,1.874,130,0.764,206,4.994,298,4.685,597,4.967,779,2.878,861,3.174,883,2.878,1058,4.416,1059,5.397,1080,4.064,1089,5.973,1169,5.397,1213,3.783,1332,3.349,1870,4.064,2606,4.064,2990,4.416,2991,5.973,2992,5.973,3006,5.973,3031,6.719,3032,6.451,3043,5.973,3051,4.887,3064,4.887,3106,5.973,3342,4.887,3352,4.887,3547,5.602,3548,5.602,3549,5.602,3550,5.973,3551,5.602,3552,5.602,3553,5.602,3554,6.847,3555,6.847,3556,6.847,3557,7.395,3558,5.602,3559,5.602,3560,7.703,3561,7.395,3562,5.602,3563,5.602,3564,6.847,3565,5.602,3566,5.602,3567,5.602,3568,5.602,3569,5.602,3570,5.602,3571,5.602,3572,5.602,3573,5.602,3574,5.602,3575,5.602,3576,5.602,3577,5.602,3578,5.602,3579,5.602]],["title/license.html",[2988,2.469,2989,2.469,3580,2.969]],["body/license.html",[8,0.011,20,1.543,94,3.946,109,0.009,110,0.011,111,0.009,178,4.606,205,1.888,607,2.634,679,3.001,808,3.946,813,5.086,1353,4.199,1368,5.097,1926,4.606,2192,3.31,3030,4.606,3069,6.127,3231,6.127,3302,5.097,3322,5.097,3359,5.097,3493,5.097,3550,7.27,3580,5.097,3581,5.843,3582,7.531,3583,5.843,3584,5.843,3585,7.024,3586,5.843,3587,5.843,3588,5.843,3589,5.843,3590,7.024,3591,5.843,3592,5.843,3593,5.843,3594,5.843,3595,5.843,3596,5.843,3597,5.843,3598,5.843,3599,5.843,3600,5.843,3601,5.843,3602,5.843,3603,7.024,3604,5.843,3605,5.843,3606,5.843,3607,5.843,3608,5.843,3609,7.024,3610,5.843,3611,5.843,3612,5.843,3613,5.843,3614,5.843,3615,5.843,3616,5.843,3617,5.843,3618,5.843,3619,5.843,3620,5.843,3621,5.843,3622,5.843,3623,5.843,3624,5.843,3625,5.843,3626,5.843,3627,5.843,3628,5.843,3629,5.843,3630,5.843,3631,5.843,3632,5.843,3633,5.843]],["title/modules.html",[2,1.683]],["body/modules.html",[1,4.169,2,1.735,8,0.011,10,3.881,11,3.881,12,3.641,13,3.881,14,3.881,15,3.881,16,3.881,17,3.881,58,4.405,109,0.009,110,0.011,111,0.009,651,3.881,993,3.881,994,3.881,995,3.881,1219,6.22,1443,3.881,1448,3.881,1449,3.881,1532,3.881,1776,3.881,2257,3.641,2258,3.881,2259,3.641,2590,4.169,2870,5.014,2997,7.48,3634,8.585]],["title/overview.html",[3635,4.864]],["body/overview.html",[1,6.022,2,1.14,3,1.596,4,3.295,5,3.295,6,3.295,7,1.971,8,0.013,9,1.971,10,5.246,11,5.46,12,4.686,13,5.097,14,5.351,15,5.097,16,4.865,17,4.865,18,1.768,19,1.221,20,0.998,109,0.006,110,0.008,111,0.006,114,1.264,159,3.863,170,2.31,172,2.31,176,0.998,403,1.854,513,2.391,515,2.391,517,2.391,519,2.391,523,2.391,525,2.391,528,2.391,531,2.391,533,2.391,535,2.479,537,2.475,539,2.391,541,2.391,543,2.391,546,2.391,550,2.391,553,2.391,579,2.977,651,4.865,652,3.295,653,3.295,654,3.295,990,3.295,991,3.295,992,3.295,993,5.246,994,4.118,995,4.695,1443,5.246,1444,3.295,1445,3.295,1446,3.295,1447,3.295,1448,4.865,1449,4.865,1457,3.295,1458,3.295,1459,3.295,1532,4.865,1533,3.295,1534,3.295,1535,3.295,1718,3.295,1719,3.295,1720,3.295,1776,5.351,1777,3.295,1778,3.295,1780,3.295,1822,3.295,1823,3.295,1825,3.295,1829,2.74,1897,3.295,1898,3.295,1899,3.295,2254,3.295,2255,3.295,2256,3.295,2257,4.975,2258,5.428,2259,4.975,2285,3.454,2358,3.295,2359,3.295,2360,3.295,2467,3.295,2468,3.295,2470,3.295,2473,3.295,2474,3.295,2475,3.295,2558,3.295,2559,3.295,2561,3.295,2684,3.295,2685,3.295,2686,3.295,2718,3.295,2719,3.295,2849,3.295,2850,3.295,2851,3.295,2888,3.295,2889,3.295,2890,3.295,2955,3.295,2956,3.295,2957,3.295,3151,4.611,3201,3.295,3635,3.295,3636,3.777,3637,3.777]],["title/miscellaneous/typealiases.html",[3540,1.928,3638,4.909]],["body/miscellaneous/typealiases.html",[8,0.013,24,0.153,75,2.901,109,0.009,110,0.011,111,0.009,118,0.577,126,0.859,176,1.492,179,2.095,181,3.578,208,4.161,236,2.483,313,3.042,355,3.199,392,3.235,577,1.396,596,3.376,633,2.445,669,3.056,759,2.757,762,2.655,778,3.102,784,2.974,800,3.102,874,3.199,967,3.376,968,3.376,969,3.707,970,3.814,971,3.814,972,3.578,974,3.376,977,4.113,978,5.011,981,3.376,982,3.376,983,2.773,987,5.011,988,3.376,989,3.812,1402,3.814,1832,2.901,1966,4.097,1986,4.926,1987,6.002,1988,6.002,1989,5.424,1990,4.926,1991,6.002,1992,4.926,1993,6.002,1994,4.926,1995,4.926,1996,4.926,1997,4.452,2260,3.042,2266,3.376,2988,4.097,3422,5.424,3540,3.199,3639,5.647,3640,7.025,3641,6.473,3642,6.881,3643,4.926]],["title/miscellaneous/variables.html",[3540,1.928,3644,4.282]],["body/miscellaneous/variables.html",[8,0.013,24,0.157,38,0.638,66,1.222,67,3.287,75,1.567,88,5.332,95,2.871,99,0.166,103,0.519,109,0.005,110,0.007,111,0.005,118,0.311,126,0.715,136,2.087,138,2.06,162,1.643,164,1.643,168,1.824,210,0.921,212,4.533,213,1.567,219,0.948,226,1.17,238,2.06,239,2.405,301,1.686,314,1.816,315,1.843,316,2.561,321,2.379,334,1.428,355,1.728,371,1.321,374,2.011,392,2.13,398,2.708,416,0.729,417,1.536,418,1.736,421,1.643,529,0.986,577,1.479,634,1.135,646,0.986,661,2.06,662,1.567,663,3.06,664,2.708,665,3.287,681,3.06,682,2.213,683,2.213,684,2.213,685,2.213,686,2.213,687,2.213,688,2.213,689,2.213,690,2.213,691,2.213,692,2.213,693,2.213,694,2.06,695,2.213,696,1.933,697,2.213,709,1.498,759,1.816,781,1.816,784,2.166,914,1.643,931,1.321,968,1.824,972,1.933,976,1.728,1009,2.06,1026,2.06,1043,3.287,1044,2.405,1045,2.405,1046,2.661,1047,2.661,1048,2.661,1049,2.405,1050,2.405,1051,2.405,1052,2.06,1053,2.661,1054,2.661,1203,2.213,1204,2.06,1205,2.405,1206,3.571,1210,2.405,1218,6.098,1223,2.06,1224,2.405,1225,3.06,1226,5.648,1227,2.661,1228,7.286,1229,2.661,1230,2.661,1231,2.661,1232,3.953,1233,2.661,1234,2.661,1235,2.661,1236,2.661,1237,2.661,1238,2.661,1239,5.219,1240,5.219,1241,5.576,1242,5.576,1243,3.287,1244,2.661,1245,4.523,1246,2.661,1247,2.661,1248,2.661,1249,3.953,1250,3.953,1251,3.953,1252,2.661,1253,2.661,1254,5.576,1255,2.661,1256,3.953,1257,2.661,1258,2.661,1259,2.661,1260,2.661,1261,2.661,1262,5.219,1263,2.661,1264,2.661,1265,3.953,1266,2.661,1267,2.661,1268,2.661,1269,2.661,1270,2.661,1271,2.661,1272,3.953,1273,3.287,1274,2.661,1275,2.661,1276,2.661,1277,2.661,1278,2.661,1279,5.219,1280,2.661,1281,2.661,1282,5.219,1283,2.661,1284,2.661,1285,2.213,1286,2.661,1287,2.661,1288,5.576,1289,2.661,1290,3.953,1291,2.661,1292,2.405,1293,2.661,1294,2.405,1295,2.661,1296,2.661,1298,2.06,1306,2.213,1452,2.06,1461,2.708,1462,3.231,1511,2.213,1832,2.327,1834,2.661,1837,2.213,1839,3.953,1913,1.933,1966,2.213,1998,3.571,1999,2.661,2000,2.661,2189,1.933,2195,1.933,2198,3.231,2199,1.824,2201,2.06,2202,2.871,2203,2.06,2205,3.424,2260,1.643,2266,1.824,2567,2.213,2608,3.287,2609,2.405,2691,2.405,2700,2.661,2701,3.571,2725,2.405,2756,2.661,2776,2.213,2777,3.571,2822,3.571,2942,3.953,3399,3.953,3422,4.261,3425,3.953,3426,3.953,3540,1.728,3542,2.405,3640,2.661,3641,2.661,3643,3.953,3644,2.661,3645,3.051,3646,3.051,3647,3.051,3648,3.051,3649,3.051,3650,4.531,3651,3.051,3652,3.051,3653,3.051,3654,3.051,3655,3.051,3656,3.051]]],"invertedIndex":[["",{"_index":8,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["0",{"_index":334,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["0.063rem",{"_index":1528,"title":{},"body":{"components/DropdownComponent.html":{}}}],["0.095rem",{"_index":1715,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["0.1.0",{"_index":3376,"title":{},"body":{"changelog.html":{}}}],["0.11.4",{"_index":3539,"title":{},"body":{"dependencies.html":{}}}],["0.12",{"_index":1419,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.125rem",{"_index":1510,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.12rem",{"_index":1399,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.14",{"_index":1417,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.15s",{"_index":1422,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.18.0",{"_index":3482,"title":{},"body":{"dependencies.html":{}}}],["0.1rem",{"_index":1770,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["0.2",{"_index":1415,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0.2.0",{"_index":3373,"title":{},"body":{"changelog.html":{}}}],["0.20.0",{"_index":3500,"title":{},"body":{"dependencies.html":{}}}],["0.25rem",{"_index":1425,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["0.2rem",{"_index":1519,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["0.2s",{"_index":1765,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["0.3125rem",{"_index":2838,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["0.3s",{"_index":1512,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.4",{"_index":343,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["0.4s",{"_index":2683,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["0.5.0",{"_index":3362,"title":{},"body":{"changelog.html":{}}}],["0.5rem",{"_index":637,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ViewerComponent.html":{}}}],["0.5s",{"_index":2926,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["0.6",{"_index":2846,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["0.6.0",{"_index":3342,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["0.625rem",{"_index":2841,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["0.6s",{"_index":1772,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["0.75rem",{"_index":1400,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.875rem",{"_index":1504,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["0.9375rem",{"_index":1713,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["0/1",{"_index":3388,"title":{},"body":{"coverage.html":{}}}],["0/16",{"_index":3387,"title":{},"body":{"coverage.html":{}}}],["0/2",{"_index":3397,"title":{},"body":{"coverage.html":{}}}],["0/3",{"_index":3398,"title":{},"body":{"coverage.html":{}}}],["0/4",{"_index":3396,"title":{},"body":{"coverage.html":{}}}],["0/5",{"_index":3395,"title":{},"body":{"coverage.html":{}}}],["0/6",{"_index":3391,"title":{},"body":{"coverage.html":{}}}],["0/7",{"_index":3415,"title":{},"body":{"coverage.html":{}}}],["0000001d",{"_index":1771,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["0000003e",{"_index":1520,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["00000058",{"_index":1817,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["00e5ff",{"_index":691,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["01",{"_index":3039,"title":{},"body":{"changelog.html":{}}}],["02",{"_index":3219,"title":{},"body":{"changelog.html":{}}}],["03",{"_index":3174,"title":{},"body":{"changelog.html":{}}}],["04",{"_index":1395,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["05",{"_index":1438,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["06",{"_index":3312,"title":{},"body":{"changelog.html":{}}}],["07",{"_index":2995,"title":{},"body":{"changelog.html":{}}}],["08",{"_index":3323,"title":{},"body":{"changelog.html":{}}}],["09",{"_index":3088,"title":{},"body":{"changelog.html":{}}}],["0px",{"_index":1411,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["0rem",{"_index":1508,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["1",{"_index":374,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["1.0",{"_index":3250,"title":{},"body":{"changelog.html":{}}}],["1.0.0",{"_index":3310,"title":{},"body":{"changelog.html":{}}}],["1.0.11",{"_index":3477,"title":{},"body":{"dependencies.html":{}}}],["1.0.3",{"_index":3486,"title":{},"body":{"dependencies.html":{}}}],["1.0.6",{"_index":3534,"title":{},"body":{"dependencies.html":{}}}],["1.0625rem",{"_index":2923,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["1.1.0",{"_index":3288,"title":{},"body":{"changelog.html":{}}}],["1.12rem",{"_index":1398,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["1.19.0",{"_index":3479,"title":{},"body":{"dependencies.html":{}}}],["1.2.0",{"_index":3249,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.2.3",{"_index":3489,"title":{},"body":{"dependencies.html":{}}}],["1.2.6",{"_index":3516,"title":{},"body":{"dependencies.html":{}}}],["1.25",{"_index":2551,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["1.25rem",{"_index":2553,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["1.2rem",{"_index":1815,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["1.3.5",{"_index":3218,"title":{},"body":{"changelog.html":{}}}],["1.4.0",{"_index":3199,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["1.4.1",{"_index":3502,"title":{},"body":{"dependencies.html":{}}}],["1.48rem",{"_index":1816,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["1.5.0",{"_index":3173,"title":{},"body":{"changelog.html":{}}}],["1.55rem",{"_index":1521,"title":{},"body":{"components/DropdownComponent.html":{}}}],["1.5em",{"_index":1702,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["1.5rem",{"_index":1429,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["1.6.0",{"_index":3160,"title":{},"body":{"changelog.html":{}}}],["1.7.0",{"_index":3150,"title":{},"body":{"changelog.html":{}}}],["1.7.2",{"_index":3490,"title":{},"body":{"dependencies.html":{}}}],["1.75rem",{"_index":1717,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["1.8.1",{"_index":3515,"title":{},"body":{"dependencies.html":{}}}],["1/1",{"_index":3400,"title":{},"body":{"coverage.html":{}}}],["1/8",{"_index":3405,"title":{},"body":{"coverage.html":{}}}],["10",{"_index":497,"title":{},"body":{"components/AppWebComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["10.0.0",{"_index":3492,"title":{},"body":{"dependencies.html":{}}}],["10/10",{"_index":3417,"title":{},"body":{"coverage.html":{}}}],["10/12",{"_index":3404,"title":{},"body":{"coverage.html":{}}}],["10/13",{"_index":3421,"title":{},"body":{"coverage.html":{}}}],["100",{"_index":430,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{}}}],["10px",{"_index":1418,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["10x",{"_index":3300,"title":{},"body":{"changelog.html":{}}}],["11",{"_index":3201,"title":{},"body":{"changelog.html":{},"overview.html":{}}}],["11.2.1",{"_index":3517,"title":{},"body":{"dependencies.html":{}}}],["11/11",{"_index":3416,"title":{},"body":{"coverage.html":{}}}],["110",{"_index":1047,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["12",{"_index":3045,"title":{},"body":{"changelog.html":{},"coverage.html":{}}}],["12.0.1",{"_index":3519,"title":{},"body":{"dependencies.html":{}}}],["12.1.1",{"_index":3447,"title":{},"body":{"dependencies.html":{}}}],["12.1.3",{"_index":3451,"title":{},"body":{"dependencies.html":{}}}],["12/12",{"_index":3439,"title":{},"body":{"coverage.html":{}}}],["12/13",{"_index":3419,"title":{},"body":{"coverage.html":{}}}],["12/16",{"_index":3414,"title":{},"body":{"coverage.html":{}}}],["12/18",{"_index":3430,"title":{},"body":{"coverage.html":{}}}],["13",{"_index":1049,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["13/13",{"_index":3433,"title":{},"body":{"coverage.html":{}}}],["136",{"_index":2666,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["14/15",{"_index":3428,"title":{},"body":{"coverage.html":{}}}],["14/29",{"_index":3390,"title":{},"body":{"coverage.html":{}}}],["15.126.1",{"_index":3446,"title":{},"body":{"dependencies.html":{}}}],["15rem",{"_index":1714,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["16",{"_index":3134,"title":{},"body":{"changelog.html":{}}}],["16rem",{"_index":1433,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["17",{"_index":3046,"title":{},"body":{"changelog.html":{}}}],["17rem",{"_index":1439,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["18",{"_index":3637,"title":{},"body":{"overview.html":{}}}],["18/18",{"_index":3435,"title":{},"body":{"coverage.html":{}}}],["18rem",{"_index":2355,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["19.5rem",{"_index":1420,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["1].color",{"_index":724,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["1em",{"_index":1502,"title":{},"body":{"components/DropdownComponent.html":{}}}],["1px",{"_index":1524,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["1rem",{"_index":635,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["1rem/1.25rem",{"_index":1892,"title":{},"body":{"components/HeaderComponent.html":{}}}],["1s",{"_index":1887,"title":{},"body":{"components/HeaderComponent.html":{}}}],["2",{"_index":341,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{}}}],["2.0.0",{"_index":3133,"title":{},"body":{"changelog.html":{}}}],["2.0.5",{"_index":3496,"title":{},"body":{"dependencies.html":{}}}],["2.0625rem",{"_index":2922,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["2.1.0",{"_index":3104,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.2",{"_index":339,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["2.2.0",{"_index":3097,"title":{},"body":{"changelog.html":{}}}],["2.3.0",{"_index":3093,"title":{},"body":{"changelog.html":{}}}],["2.3.1",{"_index":3087,"title":{},"body":{"changelog.html":{}}}],["2.4.0",{"_index":3075,"title":{},"body":{"changelog.html":{}}}],["2.5.0",{"_index":3061,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["2.5rem",{"_index":1408,"title":{},"body":{"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["2.6.7",{"_index":3520,"title":{},"body":{"dependencies.html":{}}}],["2.8.5",{"_index":3488,"title":{},"body":{"dependencies.html":{}}}],["2.8125rem",{"_index":2840,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["2/10",{"_index":3442,"title":{},"body":{"coverage.html":{}}}],["2/2",{"_index":3408,"title":{},"body":{"coverage.html":{}}}],["20",{"_index":1842,"title":{},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["2019",{"_index":3322,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["2020",{"_index":3252,"title":{},"body":{"changelog.html":{}}}],["2021",{"_index":3044,"title":{},"body":{"changelog.html":{}}}],["2022",{"_index":2994,"title":{},"body":{"changelog.html":{}}}],["20em",{"_index":1708,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["20rem",{"_index":2556,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["21",{"_index":3151,"title":{},"body":{"changelog.html":{},"overview.html":{}}}],["22",{"_index":3313,"title":{},"body":{"changelog.html":{}}}],["229",{"_index":2667,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["23.75rem",{"_index":2356,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["24",{"_index":3363,"title":{},"body":{"changelog.html":{}}}],["24px.svg",{"_index":1288,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["25",{"_index":649,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{}}}],["255",{"_index":696,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["25rem",{"_index":1880,"title":{},"body":{"components/HeaderComponent.html":{}}}],["26",{"_index":3175,"title":{},"body":{"changelog.html":{}}}],["26.5rem",{"_index":1818,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["26/26",{"_index":3441,"title":{},"body":{"coverage.html":{}}}],["26th",{"_index":3204,"title":{},"body":{"changelog.html":{}}}],["27",{"_index":3040,"title":{},"body":{"changelog.html":{}}}],["275s",{"_index":1514,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["2979ff",{"_index":683,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["2px",{"_index":1413,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["2rem",{"_index":1384,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["3",{"_index":579,"title":{},"body":{"components/CheckboxComponent.html":{},"changelog.html":{},"overview.html":{}}}],["3.0",{"_index":3555,"title":{},"body":{"index.html":{}}}],["3.0.0",{"_index":3038,"title":{},"body":{"changelog.html":{},"dependencies.html":{}}}],["3.0.12",{"_index":3463,"title":{},"body":{"dependencies.html":{}}}],["3.1.0",{"_index":2993,"title":{},"body":{"changelog.html":{}}}],["3.5.5",{"_index":3468,"title":{},"body":{"dependencies.html":{}}}],["3.5rem",{"_index":2953,"title":{},"body":{"components/ViewerComponent.html":{}}}],["3.6.0",{"_index":3528,"title":{},"body":{"dependencies.html":{}}}],["3.7.1",{"_index":3470,"title":{},"body":{"dependencies.html":{}}}],["3.75rem",{"_index":2839,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["3/3",{"_index":3438,"title":{},"body":{"coverage.html":{}}}],["3/6",{"_index":3394,"title":{},"body":{"coverage.html":{}}}],["30",{"_index":2665,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["300",{"_index":2554,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["3000",{"_index":293,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["31",{"_index":3289,"title":{},"body":{"changelog.html":{}}}],["32/37",{"_index":3424,"title":{},"body":{"coverage.html":{}}}],["33",{"_index":647,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{}}}],["35/36",{"_index":3407,"title":{},"body":{"coverage.html":{}}}],["35rem",{"_index":1819,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["3d",{"_index":2154,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["3rem",{"_index":1380,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["3s",{"_index":1516,"title":{},"body":{"components/DropdownComponent.html":{}}}],["4",{"_index":2802,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["4.17.1",{"_index":3494,"title":{},"body":{"dependencies.html":{}}}],["4.17.21",{"_index":3511,"title":{},"body":{"dependencies.html":{}}}],["4.3.0",{"_index":3484,"title":{},"body":{"dependencies.html":{}}}],["4.375rem",{"_index":1710,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["4.6.0",{"_index":3504,"title":{},"body":{"dependencies.html":{}}}],["4/4",{"_index":3403,"title":{},"body":{"coverage.html":{}}}],["400",{"_index":1891,"title":{},"body":{"components/HeaderComponent.html":{}}}],["42/44",{"_index":3436,"title":{},"body":{"coverage.html":{}}}],["48",{"_index":3389,"title":{},"body":{"coverage.html":{}}}],["4em",{"_index":1814,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["4px",{"_index":1416,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["4rem",{"_index":1878,"title":{},"body":{"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["5",{"_index":1435,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["5.0.0",{"_index":3505,"title":{},"body":{"dependencies.html":{}}}],["5.1.1",{"_index":3475,"title":{},"body":{"dependencies.html":{}}}],["5.2.0",{"_index":3510,"title":{},"body":{"dependencies.html":{}}}],["5.5rem",{"_index":961,"title":{},"body":{"components/ContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["5/5",{"_index":3411,"title":{},"body":{"coverage.html":{}}}],["5/6",{"_index":3431,"title":{},"body":{"coverage.html":{}}}],["50",{"_index":1387,"title":{},"body":{"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"coverage.html":{}}}],["500",{"_index":1886,"title":{},"body":{"components/HeaderComponent.html":{}}}],["5em",{"_index":1531,"title":{},"body":{"components/DropdownComponent.html":{}}}],["5rem",{"_index":1775,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["5s",{"_index":964,"title":{},"body":{"components/ContentComponent.html":{}}}],["6.0.0",{"_index":3513,"title":{},"body":{"dependencies.html":{}}}],["6.0.1",{"_index":3508,"title":{},"body":{"dependencies.html":{}}}],["6.10.2",{"_index":3522,"title":{},"body":{"dependencies.html":{}}}],["6.2.0",{"_index":3469,"title":{},"body":{"dependencies.html":{}}}],["6.5.1",{"_index":3531,"title":{},"body":{"dependencies.html":{}}}],["6.6.7",{"_index":3529,"title":{},"body":{"dependencies.html":{}}}],["6/12",{"_index":3413,"title":{},"body":{"coverage.html":{}}}],["6/6",{"_index":3412,"title":{},"body":{"coverage.html":{}}}],["6/8",{"_index":3393,"title":{},"body":{"coverage.html":{}}}],["600",{"_index":1406,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["66",{"_index":3429,"title":{},"body":{"coverage.html":{}}}],["6px",{"_index":1412,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["6s",{"_index":1773,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["7.75rem",{"_index":2552,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["7/7",{"_index":3437,"title":{},"body":{"coverage.html":{}}}],["72",{"_index":3401,"title":{},"body":{"coverage.html":{}}}],["7323e2",{"_index":687,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["75",{"_index":3392,"title":{},"body":{"coverage.html":{}}}],["75rem",{"_index":1711,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["76",{"_index":3420,"title":{},"body":{"coverage.html":{}}}],["8",{"_index":3155,"title":{},"body":{"changelog.html":{}}}],["8.25rem",{"_index":1885,"title":{},"body":{"components/HeaderComponent.html":{}}}],["8.3.2",{"_index":3537,"title":{},"body":{"dependencies.html":{}}}],["8.5.7",{"_index":3457,"title":{},"body":{"dependencies.html":{}}}],["8/11",{"_index":3402,"title":{},"body":{"coverage.html":{}}}],["8/8",{"_index":3432,"title":{},"body":{"coverage.html":{}}}],["80",{"_index":1432,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["82b1ff",{"_index":689,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["83",{"_index":1050,"title":{},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["85",{"_index":1427,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["86",{"_index":3423,"title":{},"body":{"coverage.html":{}}}],["9.5rem",{"_index":1523,"title":{},"body":{"components/DropdownComponent.html":{}}}],["9.85rem",{"_index":1497,"title":{},"body":{"components/DropdownComponent.html":{}}}],["9/9",{"_index":3440,"title":{},"body":{"coverage.html":{}}}],["90",{"_index":1774,"title":{},"body":{"components/FiltersContentComponent.html":{},"changelog.html":{}}}],["92",{"_index":3418,"title":{},"body":{"coverage.html":{}}}],["93",{"_index":3427,"title":{},"body":{"coverage.html":{}}}],["95",{"_index":2557,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"changelog.html":{},"coverage.html":{}}}],["97",{"_index":3406,"title":{},"body":{"coverage.html":{}}}],["99",{"_index":2682,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["9th",{"_index":3184,"title":{},"body":{"changelog.html":{}}}],["_aggregatedataquerystatus",{"_index":1094,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_blank",{"_index":390,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["_celltypetermoccurencesdataquerystatus",{"_index":1098,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_config",{"_index":2970,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["_createcontainer",{"_index":409,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["_error",{"_index":1945,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["_expanded",{"_index":2035,"title":{},"body":{"classes/InitializationState.html":{}}}],["_index",{"_index":2797,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["_measuredmargin",{"_index":2065,"title":{},"body":{"classes/InitializationState.html":{}}}],["_measuredwidth",{"_index":2059,"title":{},"body":{"classes/InitializationState.html":{}}}],["_msg",{"_index":787,"title":{},"body":{"components/ContainerComponent.html":{}}}],["_ontologytermoccurencesdataquerystatus",{"_index":1096,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_opened",{"_index":2031,"title":{},"body":{"classes/InitializationState.html":{}}}],["_position",{"_index":2027,"title":{},"body":{"classes/InitializationState.html":{}}}],["_providerfilterquerystatus",{"_index":1104,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_scenedataquerystatus",{"_index":1100,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_technologyfilterquerystatus",{"_index":1102,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["_tissueblockdataquerystatus",{"_index":1092,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["a.color.color",{"_index":739,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["ability",{"_index":3114,"title":{},"body":{"changelog.html":{}}}],["above",{"_index":3359,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["absolute",{"_index":1423,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["acc",{"_index":734,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["acc[item.key",{"_index":732,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["accent",{"_index":626,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["acceptable",{"_index":215,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["acceptableviewerdomains",{"_index":221,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["accepting",{"_index":2115,"title":{},"body":{"classes/InitializationState.html":{}}}],["accessors",{"_index":772,"title":{},"body":{"components/ContainerComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["according",{"_index":297,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["accordingly",{"_index":1796,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["accurate",{"_index":3172,"title":{},"body":{"changelog.html":{}}}],["acf32b",{"_index":688,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["action",{"_index":3628,"title":{},"body":{"license.html":{}}}],["actions",{"_index":3241,"title":{},"body":{"changelog.html":{}}}],["activate",{"_index":232,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["active",{"_index":2593,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["active/showing",{"_index":2677,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["activeorgans",{"_index":2651,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["activeorgans.has(o.representation_of)).map(o",{"_index":2656,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["activeorgans.has(tag",{"_index":2660,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["actual_component",{"_index":555,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["add",{"_index":380,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/ThemingService.html":{}}}],["addclass",{"_index":2772,"title":{},"body":{"injectables/ThemingService.html":{}}}],["added",{"_index":2996,"title":{},"body":{"changelog.html":{}}}],["additional",{"_index":3360,"title":{},"body":{"changelog.html":{}}}],["addressed",{"_index":3282,"title":{},"body":{"changelog.html":{}}}],["adds",{"_index":2736,"title":{},"body":{"injectables/ThemingService.html":{},"changelog.html":{}}}],["addsvgicon",{"_index":1948,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["adjusting",{"_index":3279,"title":{},"body":{"changelog.html":{}}}],["adjustment",{"_index":3198,"title":{},"body":{"changelog.html":{}}}],["advanced",{"_index":3136,"title":{},"body":{"changelog.html":{}}}],["afterviewinit",{"_index":755,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["again",{"_index":3259,"title":{},"body":{"changelog.html":{}}}],["against",{"_index":2104,"title":{},"body":{"classes/InitializationState.html":{}}}],["age",{"_index":1644,"title":{},"body":{"components/DualSliderComponent.html":{},"changelog.html":{}}}],["agerange",{"_index":1046,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["aggregate",{"_index":1115,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["aggregatedata",{"_index":1116,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/ResultsBrowserComponent.html":{}}}],["aggregatedata(filter",{"_index":1187,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["aggregatedataquerystatus",{"_index":1093,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["aggregateresult",{"_index":1031,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/ResultsBrowserComponent.html":{}}}],["ala",{"_index":3091,"title":{},"body":{"changelog.html":{}}}],["aliases",{"_index":3639,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["align",{"_index":1381,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["all_possible_organs",{"_index":2607,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["allcompleted",{"_index":3409,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["allcompleted(states",{"_index":1065,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["allowed",{"_index":2954,"title":{},"body":{"components/ViewerComponent.html":{}}}],["allowing",{"_index":2508,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["allows",{"_index":1331,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"changelog.html":{}}}],["allowtouchmove",{"_index":2800,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["along",{"_index":2454,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["alongside",{"_index":2679,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["alpha",{"_index":3353,"title":{},"body":{"changelog.html":{}}}],["alpha.1",{"_index":3334,"title":{},"body":{"changelog.html":{}}}],["alpha.2",{"_index":3330,"title":{},"body":{"changelog.html":{}}}],["alpha.3",{"_index":3321,"title":{},"body":{"changelog.html":{}}}],["already",{"_index":809,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/ThemingService.html":{}}}],["alt",{"_index":3559,"title":{},"body":{"index.html":{}}}],["always",{"_index":837,"title":{},"body":{"components/ContainerComponent.html":{},"components/HeaderComponent.html":{}}}],["analytics",{"_index":576,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["analyticsmodule",{"_index":1001,"title":{},"body":{"modules/CoreModule.html":{}}}],["analyticsmodule.forroot",{"_index":1013,"title":{},"body":{"modules/CoreModule.html":{}}}],["anatomical",{"_index":358,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["anatomicalstructuresettings",{"_index":2612,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["and/or",{"_index":3601,"title":{},"body":{"license.html":{}}}],["angular",{"_index":175,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["angular's",{"_index":1607,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["angular/animations",{"_index":928,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"dependencies.html":{}}}],["angular/cdk",{"_index":3448,"title":{},"body":{"dependencies.html":{}}}],["angular/cdk/coercion",{"_index":1985,"title":{},"body":{"classes/InitializationState.html":{}}}],["angular/cdk/overlay",{"_index":42,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"injectables/ThemingService.html":{}}}],["angular/cdk/portal",{"_index":1646,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{}}}],["angular/cdk/scrolling",{"_index":2564,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["angular/common",{"_index":658,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"dependencies.html":{}}}],["angular/common/http",{"_index":998,"title":{},"body":{"modules/CoreModule.html":{}}}],["angular/compiler",{"_index":3449,"title":{},"body":{"dependencies.html":{}}}],["angular/core",{"_index":48,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"dependencies.html":{}}}],["angular/elements",{"_index":44,"title":{},"body":{"modules/AppModule.html":{},"dependencies.html":{}}}],["angular/forms",{"_index":2323,"title":{},"body":{"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"dependencies.html":{}}}],["angular/material",{"_index":3450,"title":{},"body":{"dependencies.html":{}}}],["angular/material/autocomplete",{"_index":2324,"title":{},"body":{"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{}}}],["angular/material/button",{"_index":1786,"title":{},"body":{"modules/FiltersContentModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["angular/material/checkbox",{"_index":612,"title":{},"body":{"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{}}}],["angular/material/form",{"_index":1538,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/OntologySearchModule.html":{}}}],["angular/material/icon",{"_index":50,"title":{},"body":{"modules/AppModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/OntologySearchModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["angular/material/input",{"_index":2366,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["angular/material/progress",{"_index":2689,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"modules/ViewerModule.html":{}}}],["angular/material/select",{"_index":1540,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{}}}],["angular/material/snack",{"_index":52,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["angular/material/toolbar",{"_index":1902,"title":{},"body":{"modules/HeaderModule.html":{}}}],["angular/material/tooltip",{"_index":55,"title":{},"body":{"modules/AppModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{}}}],["angular/material/tree",{"_index":2478,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["angular/platform",{"_index":57,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{},"dependencies.html":{}}}],["angular/router",{"_index":3453,"title":{},"body":{"dependencies.html":{}}}],["angular/youtube",{"_index":3454,"title":{},"body":{"dependencies.html":{}}}],["animate",{"_index":924,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["animate('.5s",{"_index":2012,"title":{},"body":{"classes/InitializationState.html":{}}}],["animate('1s",{"_index":934,"title":{},"body":{"components/ContentComponent.html":{}}}],["animate(0",{"_index":2011,"title":{},"body":{"classes/InitializationState.html":{}}}],["animation",{"_index":1511,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["animations",{"_index":882,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["animationsenabled",{"_index":885,"title":{},"body":{"components/ContentComponent.html":{}}}],["api",{"_index":3001,"title":{},"body":{"changelog.html":{}}}],["apiendpointdatasourceservice",{"_index":1301,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["app",{"_index":88,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/OntologySelectionComponent.html":{},"modules/StoreModule.html":{},"miscellaneous/variables.html":{}}}],["app.component",{"_index":69,"title":{},"body":{"modules/AppModule.html":{}}}],["app.component.html",{"_index":184,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app.component.scss",{"_index":186,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["app/core/services/theming/theming.service",{"_index":68,"title":{},"body":{"modules/AppModule.html":{}}}],["app_bootstrap_listener",{"_index":2721,"title":{},"body":{"modules/ThemingModule.html":{}}}],["appcomponent",{"_index":7,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["appear",{"_index":3056,"title":{},"body":{"changelog.html":{}}}],["appearance",{"_index":2352,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["appelement",{"_index":104,"title":{},"body":{"modules/AppModule.html":{}}}],["appendtoroot",{"_index":410,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["application",{"_index":3189,"title":{},"body":{"changelog.html":{}}}],["application/javascript",{"_index":2986,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["applied",{"_index":1744,"title":{},"body":{"components/FiltersContentComponent.html":{},"changelog.html":{}}}],["apply",{"_index":1748,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["applybuttonclick",{"_index":1732,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["applyfilters",{"_index":1737,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["applyfilters(filters",{"_index":1804,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["applythemeclass",{"_index":2728,"title":{},"body":{"injectables/ThemingService.html":{}}}],["applythemeclass(cls",{"_index":2734,"title":{},"body":{"injectables/ThemingService.html":{}}}],["appmodule",{"_index":1,"title":{"modules/AppModule.html":{}},"body":{"modules/AppModule.html":{},"modules.html":{},"overview.html":{}}}],["appname",{"_index":1016,"title":{},"body":{"modules/CoreModule.html":{}}}],["appoptions",{"_index":113,"title":{"interfaces/AppOptions.html":{}},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["approotoverlaycontainer",{"_index":36,"title":{"injectables/AppRootOverlayContainer.html":{}},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["appropriate",{"_index":3018,"title":{},"body":{"changelog.html":{}}}],["appwebcomponent",{"_index":9,"title":{"components/AppWebComponent.html":{}},"body":{"modules/AppModule.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["april",{"_index":3183,"title":{},"body":{"changelog.html":{}}}],["arg",{"_index":1936,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["args",{"_index":1940,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["args.filter(value",{"_index":1955,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["argument",{"_index":1953,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["arguments",{"_index":1583,"title":{},"body":{"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["arising",{"_index":3631,"title":{},"body":{"license.html":{}}}],["array",{"_index":371,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/TissueSectionVisComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["array.from(searchresults.values",{"_index":2426,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["array.isarray(val",{"_index":486,"title":{},"body":{"components/AppWebComponent.html":{}}}],["arrow",{"_index":1529,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["arrow_left",{"_index":2914,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["arrow_right",{"_index":2913,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["asct+b",{"_index":3047,"title":{},"body":{"changelog.html":{}}}],["asking",{"_index":585,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["assays",{"_index":1766,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["assets/icons/expand_less",{"_index":1295,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/expand_more",{"_index":1293,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/filter.svg",{"_index":1296,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/opacity",{"_index":1287,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/organs/ico",{"_index":1228,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assets/icons/visibility",{"_index":1290,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["assigncolor",{"_index":740,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assigncolor(@payload('key",{"_index":717,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["assigncolor(key",{"_index":743,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment",{"_index":705,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["assignment.state",{"_index":2158,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{}}}],["assignment.state.ts",{"_index":663,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["assignment.state.ts:102",{"_index":748,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:57",{"_index":751,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:59",{"_index":752,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:60",{"_index":749,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:61",{"_index":750,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:63",{"_index":746,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment.state.ts:69",{"_index":745,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["assignment/color",{"_index":662,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["assignment/selection",{"_index":3162,"title":{},"body":{"changelog.html":{}}}],["assignments",{"_index":2148,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["associated",{"_index":2192,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"license.html":{}}}],["async",{"_index":1971,"title":{},"body":{"classes/InitializationState.html":{}}}],["at(nodes",{"_index":2433,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["atscrollbottom",{"_index":2490,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["attach",{"_index":2903,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["attached",{"_index":406,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["attempts",{"_index":3079,"title":{},"body":{"changelog.html":{}}}],["authentication",{"_index":1884,"title":{},"body":{"components/HeaderComponent.html":{}}}],["authors",{"_index":3622,"title":{},"body":{"license.html":{}}}],["auto",{"_index":962,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["autocomplete",{"_index":2318,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["autocompleteopen",{"_index":2274,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["automatic",{"_index":3269,"title":{},"body":{"changelog.html":{}}}],["automatically",{"_index":3225,"title":{},"body":{"changelog.html":{}}}],["available",{"_index":2590,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"modules.html":{}}}],["avoid",{"_index":3124,"title":{},"body":{"changelog.html":{}}}],["await",{"_index":1977,"title":{},"body":{"classes/InitializationState.html":{}}}],["awaited",{"_index":1967,"title":{},"body":{"classes/InitializationState.html":{}}}],["award",{"_index":3578,"title":{},"body":{"index.html":{}}}],["axis",{"_index":2887,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["b92dff",{"_index":685,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["backend",{"_index":3065,"title":{},"body":{"changelog.html":{}}}],["background",{"_index":1332,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"index.html":{}}}],["backing",{"_index":1929,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["bar",{"_index":53,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{}}}],["base",{"_index":3338,"title":{},"body":{"changelog.html":{}}}],["based",{"_index":370,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["basepath",{"_index":1018,"title":{},"body":{"modules/CoreModule.html":{}}}],["basewebcomponent",{"_index":446,"title":{},"body":{"components/AppWebComponent.html":{}}}],["basic",{"_index":3135,"title":{},"body":{"changelog.html":{}}}],["bbox",{"_index":2053,"title":{},"body":{"classes/InitializationState.html":{}}}],["bbox.left",{"_index":2056,"title":{},"body":{"classes/InitializationState.html":{}}}],["bbox.right",{"_index":2055,"title":{},"body":{"classes/InitializationState.html":{}}}],["before",{"_index":1216,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["being",{"_index":2705,"title":{},"body":{"modules/StoreModule.html":{},"changelog.html":{}}}],["beta",{"_index":3043,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["better",{"_index":3105,"title":{},"body":{"changelog.html":{}}}],["between",{"_index":345,"title":{},"body":{"interfaces/AppOptions.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["bind",{"_index":1029,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{}}}],["binds",{"_index":2747,"title":{},"body":{"injectables/ThemingService.html":{}}}],["bladder",{"_index":1227,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["bladder.svg",{"_index":1229,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["blob",{"_index":2984,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["block",{"_index":426,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["blocks",{"_index":3000,"title":{},"body":{"changelog.html":{}}}],["blood",{"_index":1230,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["blood.svg",{"_index":1231,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["bmi",{"_index":3072,"title":{},"body":{"changelog.html":{}}}],["bmirange",{"_index":1048,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["board",{"_index":3332,"title":{},"body":{"changelog.html":{}}}],["body",{"_index":201,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"dependencies.html":{}}}],["bodyui",{"_index":192,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["bodyuicomponent",{"_index":150,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["bodyuimodule",{"_index":61,"title":{},"body":{"modules/AppModule.html":{}}}],["bold",{"_index":640,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["bone",{"_index":1232,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["boolean",{"_index":125,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{}}}],["booleaninput",{"_index":1983,"title":{},"body":{"classes/InitializationState.html":{}}}],["bootstrap",{"_index":2744,"title":{},"body":{"injectables/ThemingService.html":{}}}],["border",{"_index":1385,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["both",{"_index":1045,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["bottom",{"_index":636,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["bound",{"_index":1627,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["box",{"_index":1410,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["brain",{"_index":1235,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["brain.svg",{"_index":1236,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["branch",{"_index":177,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["breaking",{"_index":3145,"title":{},"body":{"changelog.html":{}}}],["breaks",{"_index":2167,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["bringing",{"_index":3156,"title":{},"body":{"changelog.html":{}}}],["browse",{"_index":3634,"title":{},"body":{"modules.html":{}}}],["browser",{"_index":58,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"modules/DrawerModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ResultsBrowserComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"dependencies.html":{},"modules.html":{}}}],["browser'},{'name",{"_index":540,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["browser.component",{"_index":2565,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["browser.component.html",{"_index":2489,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.scss",{"_index":2488,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts",{"_index":2480,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"coverage.html":{}}}],["browser.component.ts:102",{"_index":2529,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:111",{"_index":2518,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:115",{"_index":2526,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:24",{"_index":2506,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:29",{"_index":2503,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:34",{"_index":2507,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:36",{"_index":2505,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:38",{"_index":2504,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:44",{"_index":2511,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:49",{"_index":2516,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:54",{"_index":2514,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:56",{"_index":2509,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:58",{"_index":2510,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:64",{"_index":2502,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:79",{"_index":2523,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.component.ts:93",{"_index":2520,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["browser.module",{"_index":79,"title":{},"body":{"modules/AppModule.html":{}}}],["browser.module.ts",{"_index":2562,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["browser/animations",{"_index":60,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{}}}],["browser/donor",{"_index":1313,"title":{},"body":{"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"coverage.html":{}}}],["browser/results",{"_index":78,"title":{},"body":{"modules/AppModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"coverage.html":{}}}],["browser/tissue",{"_index":2859,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"coverage.html":{}}}],["browseranimationsmodule",{"_index":59,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{}}}],["browserify",{"_index":3530,"title":{},"body":{"dependencies.html":{}}}],["browsermodule",{"_index":56,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{}}}],["browsing",{"_index":3380,"title":{},"body":{"changelog.html":{}}}],["bubble_chart",{"_index":1372,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["bug",{"_index":3034,"title":{},"body":{"changelog.html":{}}}],["build",{"_index":3551,"title":{},"body":{"index.html":{}}}],["builds",{"_index":3033,"title":{},"body":{"changelog.html":{}}}],["builtin_parsers",{"_index":477,"title":{},"body":{"components/AppWebComponent.html":{}}}],["builtin_parsers.boolean",{"_index":504,"title":{},"body":{"components/AppWebComponent.html":{}}}],["builtin_parsers.json(value",{"_index":489,"title":{},"body":{"components/AppWebComponent.html":{}}}],["button",{"_index":985,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["button'},{'name",{"_index":552,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["button.component",{"_index":1465,"title":{},"body":{"modules/DrawerModule.html":{}}}],["button.component.html",{"_index":2896,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.scss",{"_index":2895,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts",{"_index":2894,"title":{},"body":{"components/ToggleButtonComponent.html":{},"coverage.html":{}}}],["button.component.ts:19",{"_index":2901,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:22",{"_index":2902,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:27",{"_index":2912,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:38",{"_index":2909,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:40",{"_index":2908,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:42",{"_index":2899,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:65",{"_index":2905,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:75",{"_index":2906,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:85",{"_index":2904,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button.component.ts:97",{"_index":2907,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["button/toggle",{"_index":1464,"title":{},"body":{"modules/DrawerModule.html":{},"components/ToggleButtonComponent.html":{},"coverage.html":{}}}],["c",{"_index":3583,"title":{},"body":{"license.html":{}}}],["c.color",{"_index":728,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["cache",{"_index":3474,"title":{},"body":{"dependencies.html":{}}}],["cacheable",{"_index":3533,"title":{},"body":{"dependencies.html":{}}}],["cached",{"_index":2057,"title":{},"body":{"classes/InitializationState.html":{}}}],["calc",{"_index":2925,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["calc(100",{"_index":960,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["calc(100vh",{"_index":2555,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["calc(50",{"_index":2016,"title":{},"body":{"classes/InitializationState.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["calculated",{"_index":2049,"title":{},"body":{"classes/InitializationState.html":{}}}],["call",{"_index":318,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["callback",{"_index":2308,"title":{},"body":{"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["called",{"_index":1068,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["cancelregistration",{"_index":3115,"title":{},"body":{"changelog.html":{}}}],["candidate",{"_index":3315,"title":{},"body":{"changelog.html":{}}}],["cannon",{"_index":3480,"title":{},"body":{"dependencies.html":{}}}],["captures",{"_index":348,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["card",{"_index":1316,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["card'},{'name",{"_index":521,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["card.component",{"_index":1454,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["card.component.html",{"_index":1320,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.scss",{"_index":1319,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts",{"_index":1315,"title":{},"body":{"components/DonorCardComponent.html":{},"coverage.html":{}}}],["card.component.ts:17",{"_index":1341,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:20",{"_index":1337,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:23",{"_index":1336,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:26",{"_index":1330,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:29",{"_index":1334,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:31",{"_index":1335,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:34",{"_index":1338,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:37",{"_index":1339,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:40",{"_index":1329,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:52",{"_index":1342,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:62",{"_index":1354,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.component.ts:76",{"_index":1346,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["card.module",{"_index":2566,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["card.module.ts",{"_index":1450,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["card/donor",{"_index":1314,"title":{},"body":{"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"modules/ResultsBrowserModule.html":{},"coverage.html":{}}}],["cards",{"_index":2780,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel",{"_index":207,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["carousel'},{'name",{"_index":545,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["carousel.component",{"_index":2856,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["carousel.component.html",{"_index":2782,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.scss",{"_index":2781,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts",{"_index":2777,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["carousel.component.ts:29",{"_index":2791,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:34",{"_index":2789,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:39",{"_index":2790,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:44",{"_index":2823,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:49",{"_index":2826,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:56",{"_index":2830,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:63",{"_index":2807,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:75",{"_index":2821,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.component.ts:89",{"_index":2795,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["carousel.module",{"_index":1453,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["carousel.module.ts",{"_index":2852,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["carousel/thumbnail",{"_index":1452,"title":{},"body":{"modules/DonorCardModule.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["case",{"_index":939,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["cases",{"_index":3287,"title":{},"body":{"changelog.html":{}}}],["catch",{"_index":1944,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["cause",{"_index":2943,"title":{},"body":{"components/ViewerComponent.html":{}}}],["ccf",{"_index":65,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/StoreModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"index.html":{}}}],["ccf's",{"_index":3245,"title":{},"body":{"changelog.html":{}}}],["ccfapiconfiguration",{"_index":1002,"title":{},"body":{"modules/CoreModule.html":{}}}],["ccfapimodule",{"_index":1003,"title":{},"body":{"modules/CoreModule.html":{}}}],["ccfapimodule.forroot",{"_index":1017,"title":{},"body":{"modules/CoreModule.html":{}}}],["ccfdatabase",{"_index":3653,"title":{},"body":{"miscellaneous/variables.html":{}}}],["ccfdatabasedatasourceservice",{"_index":1302,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["ccfdatabaseoptions",{"_index":117,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/WorkerDataSourceService.html":{}}}],["ccfdrawer",{"_index":2004,"title":{},"body":{"classes/InitializationState.html":{}}}],["ccfdrawercontainer",{"_index":758,"title":{},"body":{"components/ContainerComponent.html":{}}}],["cdk",{"_index":1526,"title":{},"body":{"components/DropdownComponent.html":{}}}],["cdkportal",{"_index":1638,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["cdr",{"_index":261,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["cdr.markforcheck",{"_index":278,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["ceil",{"_index":1671,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["cell",{"_index":203,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"changelog.html":{}}}],["celltypeselectionlabel",{"_index":202,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["celltypetermoccurencesdata",{"_index":1124,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurencesdata$.pipe(take(1)).subscribe(celltypetermsfulldata",{"_index":1173,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurencesdata(filter",{"_index":1193,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurencesdataquerystatus",{"_index":1097,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetermoccurrences",{"_index":1143,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypeterms",{"_index":239,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["celltypetermsfulldata",{"_index":1109,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["celltypetreemodel",{"_index":240,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["center",{"_index":883,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"index.html":{}}}],["cff",{"_index":963,"title":{},"body":{"components/ContentComponent.html":{}}}],["change",{"_index":779,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySelectionComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{},"index.html":{}}}],["changed",{"_index":855,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["changedetection",{"_index":187,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["changedetectionstrategy",{"_index":128,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["changedetectionstrategy.onpush",{"_index":188,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["changedetectorref",{"_index":129,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["changelog",{"_index":2990,"title":{"changelog.html":{}},"body":{"changelog.html":{},"index.html":{}}}],["changes",{"_index":307,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/InitializationState.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["changes.selection",{"_index":1660,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["changes.valuerange",{"_index":1658,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["channel",{"_index":762,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["channels",{"_index":2225,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["charge",{"_index":178,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ResultsBrowserComponent.html":{},"license.html":{}}}],["checkbox",{"_index":564,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["checkbox'},{'name",{"_index":514,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["checkbox.component",{"_index":660,"title":{},"body":{"modules/CheckboxModule.html":{}}}],["checkbox.component.html",{"_index":566,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkbox.component.scss",{"_index":565,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkbox.mat",{"_index":625,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkboxcomponent",{"_index":513,"title":{"components/CheckboxComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["checkboxes",{"_index":561,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checkboxmodule",{"_index":651,"title":{"modules/CheckboxModule.html":{}},"body":{"modules/CheckboxModule.html":{},"modules/FiltersContentModule.html":{},"modules.html":{},"overview.html":{}}}],["checked",{"_index":591,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["checked.mat",{"_index":1391,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["checkmark",{"_index":627,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["checks",{"_index":912,"title":{},"body":{"components/ContentComponent.html":{}}}],["checkselected",{"_index":1396,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["child",{"_index":1402,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySelectionComponent.html":{},"miscellaneous/typealiases.html":{}}}],["children",{"_index":1854,"title":{},"body":{"classes/FlatNode.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["choices",{"_index":1478,"title":{},"body":{"components/DropdownComponent.html":{}}}],["choose",{"_index":3265,"title":{},"body":{"changelog.html":{}}}],["ci/cd",{"_index":3243,"title":{},"body":{"changelog.html":{}}}],["claim",{"_index":3625,"title":{},"body":{"license.html":{}}}],["class",{"_index":99,"title":{"classes/FlatNode.html":{},"classes/InitializationState.html":{},"classes/MessageChannel.html":{}},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["class.ccf",{"_index":2897,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["class.cff",{"_index":892,"title":{},"body":{"components/ContentComponent.html":{}}}],["classend",{"_index":2022,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["classes",{"_index":1829,"title":{},"body":{"classes/FlatNode.html":{},"classes/InitializationState.html":{},"classes/MessageChannel.html":{},"overview.html":{}}}],["classname",{"_index":763,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["clean",{"_index":2233,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["cleans",{"_index":796,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["cleanup",{"_index":3042,"title":{},"body":{"changelog.html":{}}}],["clear",{"_index":2950,"title":{},"body":{"components/ViewerComponent.html":{}}}],["click",{"_index":1349,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["clicked",{"_index":1340,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["clicking",{"_index":3143,"title":{},"body":{"changelog.html":{}}}],["clicks",{"_index":2583,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["client",{"_index":1005,"title":{},"body":{"modules/CoreModule.html":{}}}],["clientheight",{"_index":2543,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["clip",{"_index":2845,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["close",{"_index":394,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ViewerComponent.html":{}}}],["closed",{"_index":1989,"title":{},"body":{"classes/InitializationState.html":{},"components/ViewerComponent.html":{},"miscellaneous/typealiases.html":{}}}],["closeexpanded",{"_index":2082,"title":{},"body":{"classes/InitializationState.html":{}}}],["closeiframeviewer",{"_index":396,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["closeopendone",{"_index":2089,"title":{},"body":{"classes/InitializationState.html":{}}}],["closes",{"_index":1591,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{}}}],["closesliderpopover",{"_index":1557,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["closesliderpopover(target",{"_index":1597,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["cls",{"_index":2738,"title":{},"body":{"injectables/ThemingService.html":{}}}],["clsname",{"_index":1321,"title":{},"body":{"components/DonorCardComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["cluster_appmodule",{"_index":4,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_declarations",{"_index":5,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_appmodule_imports",{"_index":6,"title":{},"body":{"modules/AppModule.html":{},"overview.html":{}}}],["cluster_checkboxmodule",{"_index":652,"title":{},"body":{"modules/CheckboxModule.html":{},"overview.html":{}}}],["cluster_checkboxmodule_declarations",{"_index":653,"title":{},"body":{"modules/CheckboxModule.html":{},"overview.html":{}}}],["cluster_checkboxmodule_exports",{"_index":654,"title":{},"body":{"modules/CheckboxModule.html":{},"overview.html":{}}}],["cluster_coremodule",{"_index":990,"title":{},"body":{"modules/CoreModule.html":{},"overview.html":{}}}],["cluster_coremodule_exports",{"_index":992,"title":{},"body":{"modules/CoreModule.html":{},"overview.html":{}}}],["cluster_coremodule_imports",{"_index":991,"title":{},"body":{"modules/CoreModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule",{"_index":1444,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule_declarations",{"_index":1446,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule_exports",{"_index":1447,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_donorcardmodule_imports",{"_index":1445,"title":{},"body":{"modules/DonorCardModule.html":{},"overview.html":{}}}],["cluster_drawermodule",{"_index":1457,"title":{},"body":{"modules/DrawerModule.html":{},"overview.html":{}}}],["cluster_drawermodule_declarations",{"_index":1458,"title":{},"body":{"modules/DrawerModule.html":{},"overview.html":{}}}],["cluster_drawermodule_exports",{"_index":1459,"title":{},"body":{"modules/DrawerModule.html":{},"overview.html":{}}}],["cluster_dropdownmodule",{"_index":1533,"title":{},"body":{"modules/DropdownModule.html":{},"overview.html":{}}}],["cluster_dropdownmodule_declarations",{"_index":1534,"title":{},"body":{"modules/DropdownModule.html":{},"overview.html":{}}}],["cluster_dropdownmodule_exports",{"_index":1535,"title":{},"body":{"modules/DropdownModule.html":{},"overview.html":{}}}],["cluster_dualslidermodule",{"_index":1718,"title":{},"body":{"modules/DualSliderModule.html":{},"overview.html":{}}}],["cluster_dualslidermodule_declarations",{"_index":1720,"title":{},"body":{"modules/DualSliderModule.html":{},"overview.html":{}}}],["cluster_dualslidermodule_exports",{"_index":1719,"title":{},"body":{"modules/DualSliderModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule",{"_index":1777,"title":{},"body":{"modules/FiltersContentModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule_declarations",{"_index":1780,"title":{},"body":{"modules/FiltersContentModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule_exports",{"_index":1778,"title":{},"body":{"modules/FiltersContentModule.html":{},"overview.html":{}}}],["cluster_filterscontentmodule_imports",{"_index":1779,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["cluster_filterspopovermodule",{"_index":1822,"title":{},"body":{"modules/FiltersPopoverModule.html":{},"overview.html":{}}}],["cluster_filterspopovermodule_declarations",{"_index":1825,"title":{},"body":{"modules/FiltersPopoverModule.html":{},"overview.html":{}}}],["cluster_filterspopovermodule_exports",{"_index":1823,"title":{},"body":{"modules/FiltersPopoverModule.html":{},"overview.html":{}}}],["cluster_filterspopovermodule_imports",{"_index":1824,"title":{},"body":{"modules/FiltersPopoverModule.html":{}}}],["cluster_headermodule",{"_index":1897,"title":{},"body":{"modules/HeaderModule.html":{},"overview.html":{}}}],["cluster_headermodule_declarations",{"_index":1899,"title":{},"body":{"modules/HeaderModule.html":{},"overview.html":{}}}],["cluster_headermodule_exports",{"_index":1898,"title":{},"body":{"modules/HeaderModule.html":{},"overview.html":{}}}],["cluster_ontologyexplorationmodule",{"_index":2254,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"overview.html":{}}}],["cluster_ontologyexplorationmodule_exports",{"_index":2256,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"overview.html":{}}}],["cluster_ontologyexplorationmodule_imports",{"_index":2255,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"overview.html":{}}}],["cluster_ontologysearchmodule",{"_index":2358,"title":{},"body":{"modules/OntologySearchModule.html":{},"overview.html":{}}}],["cluster_ontologysearchmodule_declarations",{"_index":2359,"title":{},"body":{"modules/OntologySearchModule.html":{},"overview.html":{}}}],["cluster_ontologysearchmodule_exports",{"_index":2360,"title":{},"body":{"modules/OntologySearchModule.html":{},"overview.html":{}}}],["cluster_ontologyselectionmodule",{"_index":2467,"title":{},"body":{"modules/OntologySelectionModule.html":{},"overview.html":{}}}],["cluster_ontologyselectionmodule_declarations",{"_index":3636,"title":{},"body":{"overview.html":{}}}],["cluster_ontologyselectionmodule_exports",{"_index":2470,"title":{},"body":{"modules/OntologySelectionModule.html":{},"overview.html":{}}}],["cluster_ontologyselectionmodule_imports",{"_index":2469,"title":{},"body":{"modules/OntologySelectionModule.html":{}}}],["cluster_ontologyselectionmodule_ontologyselectioncomponent_providers",{"_index":2468,"title":{},"body":{"modules/OntologySelectionModule.html":{},"overview.html":{}}}],["cluster_ontologytreemodule",{"_index":2473,"title":{},"body":{"modules/OntologyTreeModule.html":{},"overview.html":{}}}],["cluster_ontologytreemodule_declarations",{"_index":2474,"title":{},"body":{"modules/OntologyTreeModule.html":{},"overview.html":{}}}],["cluster_ontologytreemodule_exports",{"_index":2475,"title":{},"body":{"modules/OntologyTreeModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule",{"_index":2558,"title":{},"body":{"modules/ResultsBrowserModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule_declarations",{"_index":2561,"title":{},"body":{"modules/ResultsBrowserModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule_exports",{"_index":2559,"title":{},"body":{"modules/ResultsBrowserModule.html":{},"overview.html":{}}}],["cluster_resultsbrowsermodule_imports",{"_index":2560,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["cluster_spinneroverlaymodule",{"_index":2684,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"overview.html":{}}}],["cluster_spinneroverlaymodule_declarations",{"_index":2685,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"overview.html":{}}}],["cluster_spinneroverlaymodule_exports",{"_index":2686,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"overview.html":{}}}],["cluster_themingmodule",{"_index":2718,"title":{},"body":{"modules/ThemingModule.html":{},"overview.html":{}}}],["cluster_themingmodule_providers",{"_index":2719,"title":{},"body":{"modules/ThemingModule.html":{},"overview.html":{}}}],["cluster_thumbnailcarouselmodule",{"_index":2849,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{},"overview.html":{}}}],["cluster_thumbnailcarouselmodule_declarations",{"_index":2850,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{},"overview.html":{}}}],["cluster_thumbnailcarouselmodule_exports",{"_index":2851,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{},"overview.html":{}}}],["cluster_tissuesectionvismodule",{"_index":2888,"title":{},"body":{"modules/TissueSectionVisModule.html":{},"overview.html":{}}}],["cluster_tissuesectionvismodule_declarations",{"_index":2889,"title":{},"body":{"modules/TissueSectionVisModule.html":{},"overview.html":{}}}],["cluster_tissuesectionvismodule_exports",{"_index":2890,"title":{},"body":{"modules/TissueSectionVisModule.html":{},"overview.html":{}}}],["cluster_viewermodule",{"_index":2955,"title":{},"body":{"modules/ViewerModule.html":{},"overview.html":{}}}],["cluster_viewermodule_declarations",{"_index":2957,"title":{},"body":{"modules/ViewerModule.html":{},"overview.html":{}}}],["cluster_viewermodule_exports",{"_index":2956,"title":{},"body":{"modules/ViewerModule.html":{},"overview.html":{}}}],["code",{"_index":3029,"title":{},"body":{"changelog.html":{}}}],["codebase",{"_index":3255,"title":{},"body":{"changelog.html":{}}}],["codeblob",{"_index":2983,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["codex",{"_index":3299,"title":{},"body":{"changelog.html":{}}}],["codifies",{"_index":3347,"title":{},"body":{"changelog.html":{}}}],["coercebooleanproperty",{"_index":1984,"title":{},"body":{"classes/InitializationState.html":{}}}],["collaboration",{"_index":3253,"title":{},"body":{"changelog.html":{}}}],["collapse",{"_index":2085,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["collapsed",{"_index":1994,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["collapses",{"_index":2081,"title":{},"body":{"classes/InitializationState.html":{}}}],["collisions",{"_index":3271,"title":{},"body":{"changelog.html":{}}}],["color",{"_index":301,"title":{"interfaces/Color.html":{}},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["color.color",{"_index":729,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["color.rank",{"_index":2182,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["color].concat(colorsavailable",{"_index":737,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignments",{"_index":701,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["colorassignments[key",{"_index":716,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist",{"_index":703,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist.filter(a",{"_index":738,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist.reduce>>((acc",{"_index":731,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist.slice(0",{"_index":725,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentslist[colorassignmentslist.length",{"_index":723,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorassignmentstate",{"_index":709,"title":{"injectables/ColorAssignmentState.html":{}},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["colorassignmentstatemodel",{"_index":698,"title":{"interfaces/ColorAssignmentStateModel.html":{}},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{}}}],["colorizing",{"_index":3307,"title":{},"body":{"changelog.html":{}}}],["colorpalette",{"_index":699,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colors",{"_index":706,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["colors[node['@id']].rgba",{"_index":2668,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["colors[tissueblock.spatialentityid",{"_index":2180,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["colorsavailable",{"_index":700,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorsavailable.filter(c",{"_index":727,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorsavailable.length",{"_index":721,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["colorsavailable[0",{"_index":722,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["column",{"_index":1700,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["columns",{"_index":568,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["combination",{"_index":3266,"title":{},"body":{"changelog.html":{}}}],["combined",{"_index":988,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{}}}],["combinelatest",{"_index":142,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["combinelatest([this.theme",{"_index":274,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["combines",{"_index":1073,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["come",{"_index":3303,"title":{},"body":{"changelog.html":{}}}],["coming",{"_index":3296,"title":{},"body":{"changelog.html":{}}}],["comlink",{"_index":3483,"title":{},"body":{"dependencies.html":{}}}],["comma",{"_index":381,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["common",{"_index":1169,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"index.html":{}}}],["commonmodule",{"_index":657,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["compare",{"_index":1181,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["compatibility",{"_index":2713,"title":{},"body":{"modules/StoreModule.html":{}}}],["completed",{"_index":1061,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["completion",{"_index":2087,"title":{},"body":{"classes/InitializationState.html":{}}}],["complexity",{"_index":3169,"title":{},"body":{"changelog.html":{}}}],["compodoc",{"_index":3027,"title":{},"body":{"changelog.html":{}}}],["componenet",{"_index":2269,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["component",{"_index":130,"title":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"coverage.html":{},"index.html":{}}}],["component's",{"_index":1573,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["component.component",{"_index":90,"title":{},"body":{"modules/AppModule.html":{}}}],["component.component.ts",{"_index":445,"title":{},"body":{"components/AppWebComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["component.component.ts:31",{"_index":463,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:33",{"_index":467,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:34",{"_index":468,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:35",{"_index":466,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:36",{"_index":470,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:37",{"_index":469,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:39",{"_index":475,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:40",{"_index":473,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:41",{"_index":474,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:42",{"_index":464,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:43",{"_index":465,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:44",{"_index":472,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:45",{"_index":471,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component.component.ts:47",{"_index":461,"title":{},"body":{"components/AppWebComponent.html":{}}}],["component_template",{"_index":510,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["componentref",{"_index":2741,"title":{},"body":{"injectables/ThemingService.html":{}}}],["components",{"_index":176,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"overview.html":{},"miscellaneous/typealiases.html":{}}}],["composes",{"_index":2397,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["computations",{"_index":2371,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["computes",{"_index":1643,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["concat",{"_index":3485,"title":{},"body":{"dependencies.html":{}}}],["concat(colorassignmentslist",{"_index":730,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["condition",{"_index":2418,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["conditions",{"_index":3608,"title":{},"body":{"license.html":{}}}],["config",{"_index":1308,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["config.isolated",{"_index":2227,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["configstore",{"_index":462,"title":{},"body":{"components/AppWebComponent.html":{}}}],["configuration",{"_index":2198,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["configurations",{"_index":3113,"title":{},"body":{"changelog.html":{}}}],["confirmation",{"_index":3077,"title":{},"body":{"changelog.html":{}}}],["conform",{"_index":3120,"title":{},"body":{"changelog.html":{}}}],["connect",{"_index":2248,"title":{},"body":{"injectables/MessageService.html":{},"changelog.html":{}}}],["connect(source",{"_index":2236,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["connected",{"_index":802,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["connectedposition",{"_index":1645,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["connection",{"_index":3632,"title":{},"body":{"license.html":{}}}],["connects",{"_index":2235,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["consentservice",{"_index":140,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["consider",{"_index":2711,"title":{},"body":{"modules/StoreModule.html":{}}}],["consortium",{"_index":3584,"title":{},"body":{"license.html":{}}}],["const",{"_index":103,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"modules/StoreModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["constantly",{"_index":2945,"title":{},"body":{"components/ViewerComponent.html":{}}}],["constructor",{"_index":253,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{},"modules/ThumbnailCarouselModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["constructor(@inject(message_service_config",{"_index":2226,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["constructor(@optional",{"_index":1020,"title":{},"body":{"modules/CoreModule.html":{},"injectables/ThemingService.html":{}}}],["constructor(config",{"_index":2249,"title":{},"body":{"injectables/MessageService.html":{}}}],["constructor(configstore",{"_index":460,"title":{},"body":{"components/AppWebComponent.html":{}}}],["constructor(dataservice",{"_index":2132,"title":{},"body":{"injectables/ListResultsState.html":{},"injectables/SceneState.html":{}}}],["constructor(defaulttheme",{"_index":2732,"title":{},"body":{"injectables/ThemingService.html":{}}}],["constructor(drawer",{"_index":2898,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["constructor(ga",{"_index":572,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["constructor(globalconfig",{"_index":2964,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["constructor(messageservice",{"_index":775,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{}}}],["constructor(ontologysearchservice",{"_index":2445,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["constructor(ontologyservice",{"_index":2284,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["constructor(original",{"_index":1835,"title":{},"body":{"classes/FlatNode.html":{}}}],["constructor(overlay",{"_index":1570,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["constructor(private",{"_index":101,"title":{},"body":{"modules/AppModule.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["constructor(public",{"_index":2327,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["constructor(readonly",{"_index":1858,"title":{},"body":{"classes/FlatNode.html":{}}}],["constructor(registry",{"_index":1957,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["constructor(sanitizer",{"_index":2934,"title":{},"body":{"components/ViewerComponent.html":{}}}],["constructor(source",{"_index":2241,"title":{},"body":{"classes/MessageChannel.html":{}}}],["contain",{"_index":975,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/HeaderComponent.html":{}}}],["container",{"_index":633,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["container'},{'name",{"_index":516,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["container.component.html",{"_index":761,"title":{},"body":{"components/ContainerComponent.html":{}}}],["container.component.scss",{"_index":760,"title":{},"body":{"components/ContainerComponent.html":{}}}],["container/container.component",{"_index":1463,"title":{},"body":{"modules/DrawerModule.html":{}}}],["containercomponent",{"_index":515,"title":{"components/ContainerComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["containerpayload",{"_index":978,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["containers",{"_index":854,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"changelog.html":{}}}],["containing",{"_index":861,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ThumbnailCarouselComponent.html":{},"index.html":{}}}],["contains",{"_index":608,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{}}}],["content",{"_index":773,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["content'},{'name",{"_index":518,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["content.component",{"_index":1784,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["content.component.html",{"_index":1731,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.scss",{"_index":884,"title":{},"body":{"components/ContentComponent.html":{},"components/FiltersContentComponent.html":{}}}],["content.component.ts",{"_index":1728,"title":{},"body":{"components/FiltersContentComponent.html":{},"coverage.html":{}}}],["content.component.ts:19",{"_index":1741,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:24",{"_index":1740,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:29",{"_index":1743,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:34",{"_index":1742,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:39",{"_index":1745,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:44",{"_index":1739,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:59",{"_index":1752,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:68",{"_index":1747,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.component.ts:76",{"_index":1749,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["content.module",{"_index":1827,"title":{},"body":{"modules/FiltersPopoverModule.html":{}}}],["content.module.ts",{"_index":1781,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["content/content.component",{"_index":828,"title":{},"body":{"components/ContainerComponent.html":{},"modules/DrawerModule.html":{}}}],["content/filters",{"_index":1727,"title":{},"body":{"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"coverage.html":{}}}],["content1",{"_index":764,"title":{},"body":{"components/ContainerComponent.html":{}}}],["content2",{"_index":765,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentchildren",{"_index":824,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentchildren(contentcomponent",{"_index":805,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentchildren(drawercomponent",{"_index":815,"title":{},"body":{"components/ContainerComponent.html":{}}}],["contentcomponent",{"_index":517,"title":{"components/ContentComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["contentcontainerchanged",{"_index":967,"title":{"interfaces/ContentContainerChanged.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["contents",{"_index":428,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["contentsvisible",{"_index":1549,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["contract",{"_index":3629,"title":{},"body":{"license.html":{}}}],["control",{"_index":320,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["controls",{"_index":1485,"title":{},"body":{"components/DropdownComponent.html":{}}}],["convention",{"_index":438,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{}}}],["coordinate",{"_index":2991,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["copies",{"_index":3603,"title":{},"body":{"license.html":{}}}],["copy",{"_index":3590,"title":{},"body":{"license.html":{}}}],["copyright",{"_index":3582,"title":{},"body":{"license.html":{}}}],["core",{"_index":1021,"title":{},"body":{"modules/CoreModule.html":{}}}],["core/core.module",{"_index":70,"title":{},"body":{"modules/AppModule.html":{}}}],["core/models/list",{"_index":2536,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["core/models/ontology",{"_index":157,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySelectionComponent.html":{}}}],["core/services/app",{"_index":37,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["core/services/ontology",{"_index":2325,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["core/services/theming/theming.service",{"_index":160,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["core/store/data/data.state",{"_index":163,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersContentComponent.html":{}}}],["core/store/list",{"_index":165,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["core/store/scene/scene.state",{"_index":169,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["coremodule",{"_index":10,"title":{"modules/CoreModule.html":{}},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{},"modules.html":{},"overview.html":{}}}],["cors",{"_index":3487,"title":{},"body":{"dependencies.html":{}}}],["counter",{"_index":2205,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"miscellaneous/variables.html":{}}}],["cover",{"_index":2843,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["coverage",{"_index":3328,"title":{"coverage.html":{}},"body":{"changelog.html":{},"coverage.html":{}}}],["create",{"_index":1572,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/FlatNode.html":{}}}],["create(original",{"_index":1845,"title":{},"body":{"classes/FlatNode.html":{}}}],["createcustomelement",{"_index":43,"title":{},"body":{"modules/AppModule.html":{}}}],["createcustomelement(appwebcomponent",{"_index":105,"title":{},"body":{"modules/AppModule.html":{}}}],["created",{"_index":1628,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"changelog.html":{}}}],["creates",{"_index":249,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{}}}],["createselectionlabel(ontolgyselection",{"_index":372,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["createworker",{"_index":2962,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["createworker(_config",{"_index":2968,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["creating",{"_index":831,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/functions.html":{}}}],["credits",{"_index":3569,"title":{},"body":{"index.html":{}}}],["criteria",{"_index":1576,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["css",{"_index":2793,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"dependencies.html":{}}}],["ctrlclick",{"_index":2618,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["cuboid",{"_index":3327,"title":{},"body":{"changelog.html":{}}}],["cuboids",{"_index":3326,"title":{},"body":{"changelog.html":{}}}],["current",{"_index":562,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySelectionComponent.html":{},"miscellaneous/enumerations.html":{}}}],["currently",{"_index":353,"title":{},"body":{"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySelectionComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["cursor",{"_index":1389,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["customelements.define('ccf",{"_index":107,"title":{},"body":{"modules/AppModule.html":{}}}],["cyberinfrastructure",{"_index":3571,"title":{},"body":{"index.html":{}}}],["cycle",{"_index":3177,"title":{},"body":{"changelog.html":{}}}],["d",{"_index":1428,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["da326f",{"_index":686,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["damages",{"_index":3626,"title":{},"body":{"license.html":{}}}],["dark",{"_index":311,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["dark)').addeventlistener('change",{"_index":308,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["dark)').matches",{"_index":303,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["dark/light",{"_index":3116,"title":{},"body":{"changelog.html":{}}}],["data",{"_index":252,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"modules/StoreModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{}}}],["data.aggregatedata$.subscribe",{"_index":265,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.celltypetermoccurencesdata$.subscribe",{"_index":267,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.filter$.pipe(pluck('celltypeterms",{"_index":282,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.filter$.pipe(pluck('ontologyterms",{"_index":273,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.filter$.subscribe",{"_index":269,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.ontologytermoccurencesdata$.subscribe",{"_index":266,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.providerfilterdata$.subscribe",{"_index":271,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.scenedata$.subscribe",{"_index":268,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.technologyfilterdata$.subscribe",{"_index":270,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data.tissueblockdata$.subscribe",{"_index":264,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["data/data.state",{"_index":2159,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{}}}],["dataaction",{"_index":668,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["database",{"_index":136,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"classes/FlatNode.html":{},"interfaces/ListResult.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["dataquerystate",{"_index":161,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"miscellaneous/enumerations.html":{}}}],["dataquerystate.completed",{"_index":1063,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["dataquerystate.running",{"_index":237,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{}}}],["dataservice",{"_index":2134,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["datasetresult",{"_index":2788,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["datasets",{"_index":3187,"title":{},"body":{"changelog.html":{}}}],["datasource",{"_index":258,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["datasourcelike",{"_index":1303,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["datasources",{"_index":452,"title":{},"body":{"components/AppWebComponent.html":{}}}],["datasourceservice",{"_index":137,"title":{},"body":{"interfaces/AppOptions.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["datastate",{"_index":162,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["datastatemodel",{"_index":1025,"title":{"interfaces/DataStateModel.html":{}},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{}}}],["deal",{"_index":3592,"title":{},"body":{"license.html":{}}}],["dealings",{"_index":3633,"title":{},"body":{"license.html":{}}}],["december",{"_index":3260,"title":{},"body":{"changelog.html":{}}}],["decides",{"_index":604,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["deck.gl",{"_index":697,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["deck.gl/core",{"_index":3456,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/geo",{"_index":3458,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/layers",{"_index":3460,"title":{},"body":{"dependencies.html":{}}}],["deck.gl/mesh",{"_index":3461,"title":{},"body":{"dependencies.html":{}}}],["declarations",{"_index":26,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["decoration",{"_index":1888,"title":{},"body":{"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["decorator",{"_index":1030,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{}}}],["decorators",{"_index":744,"title":{},"body":{"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["deep",{"_index":623,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["deeply",{"_index":3067,"title":{},"body":{"changelog.html":{}}}],["default",{"_index":315,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["default_color_palette",{"_index":681,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_color_palette.concat",{"_index":708,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["default_filter",{"_index":1043,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/FiltersContentComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_icons",{"_index":1225,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_selected_organs",{"_index":2608,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["default_selected_organs.has(organ.organ",{"_index":2643,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["default_theme",{"_index":67,"title":{},"body":{"modules/AppModule.html":{},"injectables/ThemingService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["defaulticondefinition",{"_index":1203,"title":{"interfaces/DefaultIconDefinition.html":{}},"body":{"interfaces/DefaultIconDefinition.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["defaults",{"_index":707,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["defaulttheme",{"_index":2727,"title":{},"body":{"injectables/ThemingService.html":{}}}],["deferred",{"_index":1968,"title":{},"body":{"classes/InitializationState.html":{}}}],["defined",{"_index":31,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{}}}],["definition",{"_index":1207,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["definition.html",{"_index":1934,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["definition.url",{"_index":1933,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["delay",{"_index":1513,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["delegatedatasourceoptions",{"_index":1297,"title":{"interfaces/DelegateDataSourceOptions.html":{}},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"coverage.html":{}}}],["delegatedatasourceservice",{"_index":1007,"title":{"injectables/DelegateDataSourceService.html":{}},"body":{"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"coverage.html":{}}}],["demo",{"_index":3086,"title":{},"body":{"changelog.html":{}}}],["dependencies",{"_index":3,"title":{"dependencies.html":{}},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"changelog.html":{},"dependencies.html":{},"overview.html":{}}}],["depending",{"_index":3149,"title":{},"body":{"changelog.html":{}}}],["descendants",{"_index":806,"title":{},"body":{"components/ContainerComponent.html":{}}}],["describes",{"_index":582,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["description",{"_index":558,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{}}}],["deselect",{"_index":2525,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["deselected",{"_index":2515,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["deselectlistresult",{"_index":2127,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["deselectlistresult(result",{"_index":2137,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["details",{"_index":3361,"title":{},"body":{"changelog.html":{}}}],["detect",{"_index":1661,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["detected",{"_index":1605,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["detection",{"_index":788,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["detector",{"_index":780,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["determine",{"_index":2534,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["determines",{"_index":1489,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{}}}],["developed",{"_index":3570,"title":{},"body":{"index.html":{}}}],["developmentmode",{"_index":2709,"title":{},"body":{"modules/StoreModule.html":{}}}],["developments",{"_index":3352,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["dialog",{"_index":3078,"title":{},"body":{"changelog.html":{}}}],["diff",{"_index":2546,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["different",{"_index":2116,"title":{},"body":{"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["digits",{"_index":3238,"title":{},"body":{"changelog.html":{}}}],["direct",{"_index":3370,"title":{},"body":{"changelog.html":{}}}],["directimport",{"_index":2973,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["direction",{"_index":642,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["directive",{"_index":508,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["directives",{"_index":554,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["directly",{"_index":3297,"title":{},"body":{"changelog.html":{}}}],["disable",{"_index":433,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["disabled",{"_index":1896,"title":{},"body":{"components/HeaderComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["disables",{"_index":2623,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["display",{"_index":369,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["displayed",{"_index":1479,"title":{},"body":{"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"changelog.html":{}}}],["displayformatter",{"_index":2279,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["displayformatter(option",{"_index":2293,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["displaying",{"_index":3098,"title":{},"body":{"changelog.html":{}}}],["displaylabel",{"_index":2409,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["displays",{"_index":1317,"title":{},"body":{"components/DonorCardComponent.html":{},"components/SpinnerOverlayComponent.html":{}}}],["distinct",{"_index":1037,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["distinctuntilchanged",{"_index":680,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["distribute",{"_index":3599,"title":{},"body":{"license.html":{}}}],["dobootstrap",{"_index":45,"title":{},"body":{"modules/AppModule.html":{}}}],["doc",{"_index":3336,"title":{},"body":{"changelog.html":{}}}],["document",{"_index":1588,"title":{},"body":{"components/DualSliderComponent.html":{},"dependencies.html":{}}}],["document:click",{"_index":1567,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["document:click(target",{"_index":1585,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["document:touchstart",{"_index":1568,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["document:touchstart(target",{"_index":1596,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["documentation",{"_index":3030,"title":{},"body":{"changelog.html":{},"coverage.html":{},"license.html":{}}}],["dom",{"_index":442,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["domains",{"_index":217,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["domsanitizer",{"_index":1911,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["don't",{"_index":379,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["done",{"_index":3146,"title":{},"body":{"changelog.html":{}}}],["donor",{"_index":520,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["donor_card",{"_index":1361,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["donorcardcomponent",{"_index":519,"title":{"components/DonorCardComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["donorcardmodule",{"_index":1443,"title":{"modules/DonorCardModule.html":{}},"body":{"modules/DonorCardModule.html":{},"modules/ResultsBrowserModule.html":{},"modules.html":{},"overview.html":{}}}],["donors",{"_index":3188,"title":{},"body":{"changelog.html":{}}}],["doreset",{"_index":719,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["dotenv",{"_index":3491,"title":{},"body":{"dependencies.html":{}}}],["down",{"_index":199,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySelectionComponent.html":{}}}],["download",{"_index":1861,"title":{},"body":{"components/HeaderComponent.html":{},"changelog.html":{}}}],["downloadclicked",{"_index":1866,"title":{},"body":{"components/HeaderComponent.html":{}}}],["drawer",{"_index":179,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{}}}],["drawer'},{'name",{"_index":522,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["drawer.close",{"_index":2920,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["drawer.closeexpanded",{"_index":2919,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["drawer.component.html",{"_index":2005,"title":{},"body":{"classes/InitializationState.html":{}}}],["drawer.component.scss",{"_index":2006,"title":{},"body":{"classes/InitializationState.html":{}}}],["drawer.open",{"_index":2921,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["drawer.position",{"_index":865,"title":{},"body":{"components/ContainerComponent.html":{}}}],["drawer/drawer.component",{"_index":829,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/DrawerModule.html":{},"components/ToggleButtonComponent.html":{}}}],["drawercomponent",{"_index":172,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["drawercomponent).position",{"_index":946,"title":{},"body":{"components/ContentComponent.html":{}}}],["drawercontainerschanged",{"_index":974,"title":{"interfaces/DrawerContainersChanged.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["drawerexpanded",{"_index":1793,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["drawerinitialized",{"_index":981,"title":{"interfaces/DrawerInitialized.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["drawermodule",{"_index":11,"title":{"modules/DrawerModule.html":{}},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{},"modules.html":{},"overview.html":{}}}],["drawerpayload",{"_index":987,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["drawers",{"_index":313,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["drawers.filter(drawer",{"_index":864,"title":{},"body":{"components/ContainerComponent.html":{}}}],["drawertoggled",{"_index":982,"title":{"interfaces/DrawerToggled.html":{}},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["dropdown",{"_index":1467,"title":{},"body":{"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{}}}],["dropdown'},{'name",{"_index":524,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["dropdown.component",{"_index":1541,"title":{},"body":{"modules/DropdownModule.html":{}}}],["dropdown.component.html",{"_index":1470,"title":{},"body":{"components/DropdownComponent.html":{}}}],["dropdown.component.scss",{"_index":1469,"title":{},"body":{"components/DropdownComponent.html":{}}}],["dropdowncomponent",{"_index":523,"title":{"components/DropdownComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["dropdownmodule",{"_index":1532,"title":{"modules/DropdownModule.html":{}},"body":{"modules/DropdownModule.html":{},"modules/FiltersContentModule.html":{},"modules.html":{},"overview.html":{}}}],["dual",{"_index":526,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["dual_slider",{"_index":1688,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["dualslidercomponent",{"_index":525,"title":{"components/DualSliderComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["dualslidermodule",{"_index":12,"title":{"modules/DualSliderModule.html":{}},"body":{"modules/AppModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules.html":{},"overview.html":{}}}],["duration",{"_index":289,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContentComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["during",{"_index":1183,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["dynamic",{"_index":3452,"title":{},"body":{"dependencies.html":{}}}],["dynamically",{"_index":3002,"title":{},"body":{"changelog.html":{}}}],["e",{"_index":309,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["e040fb",{"_index":690,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["each",{"_index":2207,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["ease",{"_index":966,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["easier",{"_index":3009,"title":{},"body":{"changelog.html":{}}}],["easily",{"_index":393,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["effect",{"_index":1487,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["efficiency",{"_index":3208,"title":{},"body":{"changelog.html":{}}}],["el",{"_index":254,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{}}}],["element",{"_index":507,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["element.getboundingclientrect",{"_index":2054,"title":{},"body":{"classes/InitializationState.html":{}}}],["element.nativeelement",{"_index":2769,"title":{},"body":{"injectables/ThemingService.html":{}}}],["element.nativeelement.contains(target",{"_index":1680,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["elementref",{"_index":131,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ThemingService.html":{}}}],["elements",{"_index":2812,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["ellipsis",{"_index":1440,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["embedded",{"_index":3111,"title":{},"body":{"changelog.html":{}}}],["embedding",{"_index":3103,"title":{},"body":{"changelog.html":{}}}],["embedding.md",{"_index":3101,"title":{},"body":{"changelog.html":{}}}],["emit",{"_index":595,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["emits",{"_index":228,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{}}}],["emitted",{"_index":211,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"components/HeaderComponent.html":{},"miscellaneous/functions.html":{}}}],["emitter",{"_index":2291,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["emitters",{"_index":2486,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["emitting",{"_index":2036,"title":{},"body":{"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ResultsBrowserComponent.html":{}}}],["empty",{"_index":2391,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["enable",{"_index":2297,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["enabled",{"_index":902,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["encapsulates",{"_index":2439,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["end",{"_index":841,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["end?.expanded",{"_index":957,"title":{},"body":{"components/ContentComponent.html":{}}}],["end?.opened",{"_index":956,"title":{},"body":{"components/ContentComponent.html":{}}}],["enddrawers",{"_index":866,"title":{},"body":{"components/ContainerComponent.html":{}}}],["enddrawers.length",{"_index":869,"title":{},"body":{"components/ContainerComponent.html":{}}}],["enddrawers[0",{"_index":872,"title":{},"body":{"components/ContainerComponent.html":{}}}],["endexpanded",{"_index":955,"title":{},"body":{"components/ContentComponent.html":{}}}],["ensures",{"_index":1355,"title":{},"body":{"components/DonorCardComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["enter",{"_index":1614,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["entire",{"_index":2700,"title":{},"body":{"modules/StoreModule.html":{},"miscellaneous/variables.html":{}}}],["entry",{"_index":2299,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["entry.displaylabel.join().includes",{"_index":2341,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["entry.node.label.tolowercase",{"_index":2342,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["entrycomponents",{"_index":27,"title":{},"body":{"modules/AppModule.html":{}}}],["enum",{"_index":1057,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["enumerations",{"_index":3541,"title":{"miscellaneous/enumerations.html":{}},"body":{"miscellaneous/enumerations.html":{}}}],["environment",{"_index":154,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"modules/StoreModule.html":{}}}],["environment.acceptableviewerdomains",{"_index":222,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["environment.customization",{"_index":501,"title":{},"body":{"components/AppWebComponent.html":{}}}],["environment.dboptions",{"_index":499,"title":{},"body":{"components/AppWebComponent.html":{}}}],["environment.dboptions.remoteapiendpoint",{"_index":1019,"title":{},"body":{"modules/CoreModule.html":{}}}],["environment.disabledbworker",{"_index":1309,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["environment.googleanalyticstoken",{"_index":1015,"title":{},"body":{"modules/CoreModule.html":{}}}],["environment.production",{"_index":2710,"title":{},"body":{"modules/StoreModule.html":{}}}],["environments/environment",{"_index":155,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"modules/StoreModule.html":{}}}],["error",{"_index":835,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/ThemingService.html":{}}}],["error('invalid",{"_index":493,"title":{},"body":{"components/AppWebComponent.html":{}}}],["error('the",{"_index":1022,"title":{},"body":{"modules/CoreModule.html":{}}}],["error(`multiple",{"_index":843,"title":{},"body":{"components/ContainerComponent.html":{}}}],["errors",{"_index":832,"title":{},"body":{"components/ContainerComponent.html":{},"miscellaneous/functions.html":{}}}],["es",{"_index":3481,"title":{},"body":{"dependencies.html":{}}}],["es2015.worker.js",{"_index":2982,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["eslint",{"_index":432,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["eslint/naming",{"_index":437,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{}}}],["etc",{"_index":986,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"changelog.html":{}}}],["eui",{"_index":108,"title":{},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{},"changelog.html":{},"index.html":{}}}],["eui/rui",{"_index":3024,"title":{},"body":{"changelog.html":{}}}],["eui/src/app/app",{"_index":444,"title":{},"body":{"components/AppWebComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["eui/src/app/app.component.ts",{"_index":115,"title":{},"body":{"interfaces/AppOptions.html":{},"coverage.html":{}}}],["eui/src/app/app.module.ts",{"_index":25,"title":{},"body":{"modules/AppModule.html":{}}}],["eui/src/app/app.module.ts:55",{"_index":32,"title":{},"body":{"modules/AppModule.html":{}}}],["eui/src/app/core/core.module.ts",{"_index":996,"title":{},"body":{"modules/CoreModule.html":{}}}],["eui/src/app/core/header/header.component.ts",{"_index":1859,"title":{},"body":{"components/HeaderComponent.html":{},"coverage.html":{}}}],["eui/src/app/core/header/header.component.ts:18",{"_index":1869,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:20",{"_index":1873,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:22",{"_index":1874,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:27",{"_index":1871,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:32",{"_index":1868,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:37",{"_index":1876,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.component.ts:42",{"_index":1875,"title":{},"body":{"components/HeaderComponent.html":{}}}],["eui/src/app/core/header/header.module.ts",{"_index":1900,"title":{},"body":{"modules/HeaderModule.html":{}}}],["eui/src/app/core/models/flat",{"_index":1830,"title":{},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["eui/src/app/core/models/list",{"_index":2121,"title":{},"body":{"interfaces/ListResult.html":{},"coverage.html":{}}}],["eui/src/app/core/models/ontology",{"_index":2435,"title":{},"body":{"interfaces/OntologySelection.html":{},"coverage.html":{}}}],["eui/src/app/core/services/app",{"_index":404,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["eui/src/app/core/services/data",{"_index":1298,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/services/ontology",{"_index":2368,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["eui/src/app/core/services/theming/theming.module.ts",{"_index":2720,"title":{},"body":{"modules/ThemingModule.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts",{"_index":2725,"title":{},"body":{"injectables/ThemingService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:13",{"_index":2752,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:14",{"_index":2753,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:16",{"_index":2751,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:18",{"_index":2754,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:21",{"_index":2742,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:25",{"_index":2733,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:39",{"_index":2739,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:48",{"_index":2750,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:60",{"_index":2748,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:71",{"_index":2746,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/services/theming/theming.service.ts:83",{"_index":2735,"title":{},"body":{"injectables/ThemingService.html":{}}}],["eui/src/app/core/store/color",{"_index":661,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/data/data.state.ts",{"_index":1026,"title":{},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/icon",{"_index":1204,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/list",{"_index":2123,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"coverage.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts",{"_index":2567,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:105",{"_index":2592,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:114",{"_index":2581,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:125",{"_index":2585,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:129",{"_index":2586,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:136",{"_index":2578,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:51",{"_index":2601,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:53",{"_index":2605,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:55",{"_index":2603,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:57",{"_index":2599,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:60",{"_index":2597,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:63",{"_index":2596,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:65",{"_index":2577,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:85",{"_index":2595,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/scene/scene.state.ts:95",{"_index":2589,"title":{},"body":{"injectables/SceneState.html":{}}}],["eui/src/app/core/store/store.module.ts",{"_index":2691,"title":{},"body":{"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/modules/filters/filters",{"_index":1726,"title":{},"body":{"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"coverage.html":{}}}],["eui/src/app/modules/ontology",{"_index":2260,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/modules/results",{"_index":1312,"title":{},"body":{"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts",{"_index":557,"title":{},"body":{"components/CheckboxComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:18",{"_index":581,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:23",{"_index":586,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:28",{"_index":590,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:33",{"_index":580,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:38",{"_index":574,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.component.ts:53",{"_index":601,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["eui/src/app/shared/components/checkbox/checkbox.module.ts",{"_index":655,"title":{},"body":{"modules/CheckboxModule.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts",{"_index":754,"title":{},"body":{"components/ContainerComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:105",{"_index":795,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:115",{"_index":785,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:124",{"_index":797,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:37",{"_index":782,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:41",{"_index":816,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:45",{"_index":807,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:48",{"_index":812,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:50",{"_index":820,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:55",{"_index":823,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:60",{"_index":801,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:62",{"_index":776,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/container/container.component.ts:83",{"_index":791,"title":{},"body":{"components/ContainerComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts",{"_index":880,"title":{},"body":{"components/ContentComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:103",{"_index":917,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:116",{"_index":911,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:28",{"_index":900,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:30",{"_index":901,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:32",{"_index":903,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:34",{"_index":905,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:36",{"_index":898,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:39",{"_index":919,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:41",{"_index":896,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:60",{"_index":910,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/content/content.component.ts:70",{"_index":907,"title":{},"body":{"components/ContentComponent.html":{}}}],["eui/src/app/shared/components/drawer/drawer.module.ts",{"_index":1460,"title":{},"body":{"modules/DrawerModule.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts",{"_index":1966,"title":{},"body":{"classes/InitializationState.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:35",{"_index":1978,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:37",{"_index":1975,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:41",{"_index":1979,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:46",{"_index":1980,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:56",{"_index":1982,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/drawer/drawer.component.ts:65",{"_index":1981,"title":{},"body":{"classes/InitializationState.html":{}}}],["eui/src/app/shared/components/drawer/messages.ts",{"_index":968,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/components/drawer/toggle",{"_index":2893,"title":{},"body":{"components/ToggleButtonComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts",{"_index":1466,"title":{},"body":{"components/DropdownComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:18",{"_index":1475,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:23",{"_index":1477,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:28",{"_index":1480,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:33",{"_index":1481,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:38",{"_index":1474,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:50",{"_index":1484,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.component.ts:59",{"_index":1483,"title":{},"body":{"components/DropdownComponent.html":{}}}],["eui/src/app/shared/components/dropdown/dropdown.module.ts",{"_index":1536,"title":{},"body":{"modules/DropdownModule.html":{}}}],["eui/src/app/shared/components/dual",{"_index":1542,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/spinner",{"_index":2671,"title":{},"body":{"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/thumbnail",{"_index":2776,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts",{"_index":2927,"title":{},"body":{"components/ViewerComponent.html":{},"coverage.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:17",{"_index":2938,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:19",{"_index":2936,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:21",{"_index":2937,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:23",{"_index":2941,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:29",{"_index":2935,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:33",{"_index":2939,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.component.ts:39",{"_index":2940,"title":{},"body":{"components/ViewerComponent.html":{}}}],["eui/src/app/shared/components/viewer/viewer.module.ts",{"_index":2958,"title":{},"body":{"modules/ViewerModule.html":{}}}],["eui/src/app/shared/services/message/message.service.ts",{"_index":2189,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:103",{"_index":2245,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:112",{"_index":2246,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:128",{"_index":2253,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:130",{"_index":2250,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:153",{"_index":2252,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:163",{"_index":2251,"title":{},"body":{"injectables/MessageService.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:50",{"_index":2242,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:70",{"_index":2247,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:83",{"_index":2243,"title":{},"body":{"classes/MessageChannel.html":{}}}],["eui/src/app/shared/services/message/message.service.ts:93",{"_index":2244,"title":{},"body":{"classes/MessageChannel.html":{}}}],["evenly",{"_index":2885,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["event",{"_index":607,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{},"license.html":{}}}],["event.checked",{"_index":615,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["event.key",{"_index":1695,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["event.target",{"_index":1584,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["event.target'])@hostlistener('document:touchstart",{"_index":1599,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["eventemitter",{"_index":594,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["eventemitter(true",{"_index":2038,"title":{},"body":{"classes/InitializationState.html":{}}}],["events",{"_index":603,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["everything",{"_index":1160,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["except",{"_index":2213,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["executionstrategy",{"_index":2714,"title":{},"body":{"modules/StoreModule.html":{}}}],["exists",{"_index":2879,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["expand",{"_index":2084,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["expand/collapse",{"_index":2091,"title":{},"body":{"classes/InitializationState.html":{}}}],["expand_collapse_params_default",{"_index":1998,"title":{},"body":{"classes/InitializationState.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["expand_less",{"_index":1294,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"miscellaneous/variables.html":{}}}],["expand_more",{"_index":1292,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"miscellaneous/variables.html":{}}}],["expandable",{"_index":1834,"title":{},"body":{"classes/FlatNode.html":{},"miscellaneous/variables.html":{}}}],["expandcollapsedone",{"_index":2093,"title":{},"body":{"classes/InitializationState.html":{}}}],["expanded",{"_index":983,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["expanded(value",{"_index":2033,"title":{},"body":{"classes/InitializationState.html":{}}}],["expanded/collapsed",{"_index":1990,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["expandedchange",{"_index":2039,"title":{},"body":{"classes/InitializationState.html":{}}}],["expandedstate",{"_index":1991,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["expandedstate2",{"_index":1993,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["expandedstateobj",{"_index":2044,"title":{},"body":{"classes/InitializationState.html":{}}}],["expands",{"_index":2078,"title":{},"body":{"classes/InitializationState.html":{}}}],["exploration",{"_index":3553,"title":{},"body":{"index.html":{}}}],["exploration.module",{"_index":76,"title":{},"body":{"modules/AppModule.html":{}}}],["exploration.module.ts",{"_index":2261,"title":{},"body":{"modules/OntologyExplorationModule.html":{}}}],["exploration/ontology",{"_index":75,"title":{},"body":{"modules/AppModule.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["export",{"_index":98,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["exportas",{"_index":757,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["exports",{"_index":656,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["express",{"_index":3493,"title":{},"body":{"dependencies.html":{},"license.html":{}}}],["extended",{"_index":1996,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["extends",{"_index":116,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/WorkerDataSourceService.html":{}}}],["external",{"_index":2951,"title":{},"body":{"components/ViewerComponent.html":{},"changelog.html":{}}}],["externalurl",{"_index":2980,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["extra",{"_index":3498,"title":{},"body":{"dependencies.html":{}}}],["extract",{"_index":2796,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["extraction",{"_index":3082,"title":{},"body":{"changelog.html":{}}}],["eye",{"_index":1237,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["eye.svg",{"_index":1238,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["f",{"_index":1266,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["f.svg",{"_index":1267,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["factory",{"_index":2203,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/variables.html":{}}}],["fade",{"_index":1486,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["faded",{"_index":886,"title":{},"body":{"components/ContentComponent.html":{}}}],["fadein",{"_index":1498,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["fadeinout",{"_index":891,"title":{},"body":{"components/ContentComponent.html":{}}}],["fafafa",{"_index":650,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["fail",{"_index":3258,"title":{},"body":{"changelog.html":{}}}],["fails",{"_index":3284,"title":{},"body":{"changelog.html":{}}}],["fallopian",{"_index":1239,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["false",{"_index":191,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["favor",{"_index":3248,"title":{},"body":{"changelog.html":{}}}],["feature",{"_index":2999,"title":{},"body":{"changelog.html":{}}}],["features",{"_index":3178,"title":{},"body":{"changelog.html":{}}}],["feel",{"_index":3206,"title":{},"body":{"changelog.html":{}}}],["fetch",{"_index":1222,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"dependencies.html":{}}}],["fetches",{"_index":2390,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["ff8800",{"_index":682,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["ffd740",{"_index":684,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["field",{"_index":1500,"title":{},"body":{"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"changelog.html":{}}}],["file",{"_index":23,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"dependencies.html":{}}}],["files",{"_index":3591,"title":{},"body":{"license.html":{}}}],["fill",{"_index":1517,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["filler",{"_index":1890,"title":{},"body":{"components/HeaderComponent.html":{}}}],["filter",{"_index":314,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["filter's",{"_index":323,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["filter(organ",{"_index":2636,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["filter(value",{"_index":2332,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["filter_checkbox",{"_index":618,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["filter_content",{"_index":1757,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["filterbox",{"_index":322,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["filterbox.removebox",{"_index":330,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["filtered",{"_index":2217,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{}}}],["filteredresults",{"_index":2275,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["filteronchange",{"_index":567,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["filteronchange(event",{"_index":598,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["filters",{"_index":529,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/variables.html":{}}}],["filterschange",{"_index":1738,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["filterscontentcomponent",{"_index":528,"title":{"components/FiltersContentComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["filterscontentmodule",{"_index":1776,"title":{"modules/FiltersContentModule.html":{}},"body":{"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules.html":{},"overview.html":{}}}],["filterspopovercomponent",{"_index":170,"title":{"components/FiltersPopoverComponent.html":{}},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["filterspopovermodule",{"_index":13,"title":{"modules/FiltersPopoverModule.html":{}},"body":{"modules/AppModule.html":{},"modules/FiltersPopoverModule.html":{},"modules.html":{},"overview.html":{}}}],["filtersvisible",{"_index":1790,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["final",{"_index":3251,"title":{},"body":{"changelog.html":{}}}],["finished",{"_index":979,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["finishing",{"_index":3081,"title":{},"body":{"changelog.html":{}}}],["fired",{"_index":1595,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["first",{"_index":1356,"title":{},"body":{"components/DonorCardComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["fit",{"_index":3186,"title":{},"body":{"changelog.html":{}}}],["fitness",{"_index":3618,"title":{},"body":{"license.html":{}}}],["fixed",{"_index":3170,"title":{},"body":{"changelog.html":{}}}],["fixes",{"_index":3035,"title":{},"body":{"changelog.html":{}}}],["fixes/performance",{"_index":3308,"title":{},"body":{"changelog.html":{}}}],["flat",{"_index":1839,"title":{},"body":{"classes/FlatNode.html":{},"miscellaneous/variables.html":{}}}],["flatnode",{"_index":1828,"title":{"classes/FlatNode.html":{}},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["flatnode(original",{"_index":1857,"title":{},"body":{"classes/FlatNode.html":{}}}],["flex",{"_index":641,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["floor",{"_index":1668,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["fly",{"_index":3375,"title":{},"body":{"changelog.html":{}}}],["focus",{"_index":2848,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["following",{"_index":3607,"title":{},"body":{"license.html":{}}}],["font",{"_index":638,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["forcedunassignment",{"_index":710,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["form",{"_index":1499,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["format",{"_index":694,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["formatlabel",{"_index":2374,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["formatlabel(label",{"_index":2381,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["formats",{"_index":2384,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["formatter",{"_index":2296,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["formcontrol",{"_index":2276,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["formsmodule",{"_index":2362,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["forwards",{"_index":1518,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["found",{"_index":2385,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["four",{"_index":648,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["frame",{"_index":1397,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["framework",{"_index":2992,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["free",{"_index":3588,"title":{},"body":{"license.html":{}}}],["fs",{"_index":3497,"title":{},"body":{"dependencies.html":{}}}],["full",{"_index":1997,"title":{},"body":{"classes/InitializationState.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["fullscreen",{"_index":3333,"title":{},"body":{"changelog.html":{}}}],["fully",{"_index":3179,"title":{},"body":{"changelog.html":{}}}],["function",{"_index":392,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["functionality",{"_index":1077,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{},"miscellaneous/functions.html":{}}}],["functions",{"_index":3543,"title":{"miscellaneous/functions.html":{}},"body":{"miscellaneous/functions.html":{}}}],["funded",{"_index":3576,"title":{},"body":{"index.html":{}}}],["funnel",{"_index":1821,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["furnished",{"_index":3606,"title":{},"body":{"license.html":{}}}],["further",{"_index":3329,"title":{},"body":{"changelog.html":{}}}],["future",{"_index":3171,"title":{},"body":{"changelog.html":{}}}],["ga",{"_index":575,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["gatoken",{"_index":1014,"title":{},"body":{"modules/CoreModule.html":{}}}],["generate",{"_index":587,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"changelog.html":{}}}],["generated",{"_index":3028,"title":{},"body":{"changelog.html":{}}}],["generating",{"_index":3012,"title":{},"body":{"changelog.html":{}}}],["genericglobalconfig",{"_index":478,"title":{},"body":{"components/AppWebComponent.html":{}}}],["genericmessage",{"_index":970,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["genericmessagechannel",{"_index":971,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["genericmessageservice",{"_index":972,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["get(event",{"_index":2343,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["getarguments",{"_index":1954,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["getarguments(undefined",{"_index":1959,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["getchildren",{"_index":2375,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["getchildren(node",{"_index":2388,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["getchildrenfunc",{"_index":3642,"title":{},"body":{"miscellaneous/typealiases.html":{}}}],["getclassend",{"_index":2910,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["getcolor",{"_index":741,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["getcolor(key",{"_index":714,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["getcontent",{"_index":819,"title":{},"body":{"components/ContainerComponent.html":{}}}],["getexpandable",{"_index":1851,"title":{},"body":{"classes/FlatNode.html":{}}}],["gethaswrappedcontent",{"_index":822,"title":{},"body":{"components/ContainerComponent.html":{}}}],["geticon",{"_index":2911,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["getindexofmatch",{"_index":2376,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["getindexofmatch(label",{"_index":2392,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["getlabel",{"_index":1848,"title":{},"body":{"classes/FlatNode.html":{}}}],["getlevel",{"_index":3425,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["getmessages",{"_index":2215,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["getmessagesfromsource",{"_index":2238,"title":{},"body":{"classes/MessageChannel.html":{}}}],["getmessagesfromsource(source",{"_index":2218,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["getmessagesfromsources",{"_index":2239,"title":{},"body":{"classes/MessageChannel.html":{}}}],["getmessagesfromsources(sources",{"_index":2221,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["getmethodname",{"_index":1946,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["getmethodname(undefined",{"_index":1961,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["getnextbuttonid",{"_index":2829,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["getprevbuttonid",{"_index":2825,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["getrangelabel",{"_index":1641,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["gets",{"_index":317,"title":{},"body":{"interfaces/AppOptions.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/ToggleButtonComponent.html":{}}}],["getter",{"_index":2942,"title":{},"body":{"components/ViewerComponent.html":{},"miscellaneous/variables.html":{}}}],["getter/setter",{"_index":2026,"title":{},"body":{"classes/InitializationState.html":{}}}],["gettheme",{"_index":2729,"title":{},"body":{"injectables/ThemingService.html":{}}}],["getting",{"_index":2988,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{"miscellaneous/typealiases.html":{}}}],["getworkerurl",{"_index":2963,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["getworkerurl(directimport",{"_index":2971,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["github",{"_index":3240,"title":{},"body":{"changelog.html":{}}}],["give",{"_index":2206,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["given",{"_index":2878,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["gizmo",{"_index":3127,"title":{},"body":{"changelog.html":{}}}],["globalconfig",{"_index":260,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{}}}],["globalconfigstate",{"_index":138,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/StoreModule.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["globalthis.getcomputedstyle(element",{"_index":2062,"title":{},"body":{"classes/InitializationState.html":{}}}],["globalthis['dboptions",{"_index":500,"title":{},"body":{"components/AppWebComponent.html":{}}}],["good",{"_index":3281,"title":{},"body":{"changelog.html":{}}}],["google",{"_index":614,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{},"dependencies.html":{}}}],["googleanalyticsservice",{"_index":573,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["gradient",{"_index":2535,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["granted",{"_index":3587,"title":{},"body":{"license.html":{}}}],["graph",{"_index":2870,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"modules.html":{}}}],["graphology",{"_index":3499,"title":{},"body":{"dependencies.html":{}}}],["greatly",{"_index":3094,"title":{},"body":{"changelog.html":{}}}],["group",{"_index":560,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["grow",{"_index":1407,"title":{},"body":{"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["gtex",{"_index":3003,"title":{},"body":{"changelog.html":{}}}],["guide",{"_index":3276,"title":{},"body":{"changelog.html":{}}}],["half",{"_index":1995,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["hand",{"_index":1217,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{}}}],["handle",{"_index":2582,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["handlecheckbox",{"_index":1323,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["handlehover",{"_index":2491,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlehover(id",{"_index":2517,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlelinkclick",{"_index":2492,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlelinkclick(link",{"_index":2519,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handlemessage",{"_index":767,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["handlemessage(_msg",{"_index":783,"title":{},"body":{"components/ContainerComponent.html":{}}}],["handlemessage(msg",{"_index":906,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["handler",{"_index":1622,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["handles",{"_index":1343,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["handleselection",{"_index":2493,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handleselection(result",{"_index":2522,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handleunhover",{"_index":2494,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["handling",{"_index":1574,"title":{},"body":{"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ResultsBrowserComponent.html":{}}}],["happen",{"_index":1746,"title":{},"body":{"components/FiltersContentComponent.html":{},"changelog.html":{}}}],["happens",{"_index":1347,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["happy",{"_index":2704,"title":{},"body":{"modules/StoreModule.html":{}}}],["haswrappedcontent",{"_index":774,"title":{},"body":{"components/ContainerComponent.html":{}}}],["header",{"_index":121,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["header'},{'name",{"_index":532,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["header.component",{"_index":1903,"title":{},"body":{"modules/HeaderModule.html":{}}}],["header.component.html",{"_index":1865,"title":{},"body":{"components/HeaderComponent.html":{}}}],["header.component.scss",{"_index":1864,"title":{},"body":{"components/HeaderComponent.html":{}}}],["header/header.module",{"_index":1006,"title":{},"body":{"modules/CoreModule.html":{}}}],["headercomponent",{"_index":531,"title":{"components/HeaderComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["headermodule",{"_index":993,"title":{"modules/HeaderModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/HeaderModule.html":{},"modules.html":{},"overview.html":{}}}],["heart",{"_index":1243,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["heart.svg",{"_index":1244,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["height",{"_index":959,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["helmet",{"_index":3503,"title":{},"body":{"dependencies.html":{}}}],["help",{"_index":3275,"title":{},"body":{"changelog.html":{}}}],["helper",{"_index":830,"title":{},"body":{"components/ContainerComponent.html":{},"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["here",{"_index":2169,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["hereby",{"_index":3586,"title":{},"body":{"license.html":{}}}],["hex",{"_index":677,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"dependencies.html":{}}}],["hexrgb",{"_index":676,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["hexrgb(color",{"_index":693,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["hidden",{"_index":876,"title":{},"body":{"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"changelog.html":{}}}],["hide",{"_index":1820,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["hidelimitlabels",{"_index":1674,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hidepointerlabels",{"_index":1675,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hides",{"_index":1806,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["high",{"_index":1613,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["highlight",{"_index":3070,"title":{},"body":{"changelog.html":{}}}],["highlighted",{"_index":1326,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["highlightedid",{"_index":2568,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["highlightednodeid",{"_index":2125,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["highlightnode",{"_index":2128,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["highlightnode(id",{"_index":2139,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["highlights",{"_index":3071,"title":{},"body":{"changelog.html":{}}}],["highvalue",{"_index":1550,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["holders",{"_index":3623,"title":{},"body":{"license.html":{}}}],["home",{"_index":1879,"title":{},"body":{"components/HeaderComponent.html":{}}}],["homeurl",{"_index":122,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{}}}],["hook",{"_index":1608,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["hooked",{"_index":3215,"title":{},"body":{"changelog.html":{}}}],["host",{"_index":873,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostbinding",{"_index":825,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostbinding('@expandcollapse",{"_index":2043,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostbinding('@fadeinout",{"_index":922,"title":{},"body":{"components/ContentComponent.html":{}}}],["hostbinding('@openclose",{"_index":2042,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostbinding('class",{"_index":803,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostbinding('class.active",{"_index":2681,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["hostbinding('class.ccf",{"_index":2021,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["hostbinding('class.cff",{"_index":918,"title":{},"body":{"components/ContentComponent.html":{}}}],["hostbinding('style.margin",{"_index":923,"title":{},"body":{"components/ContentComponent.html":{}}}],["hostbindings",{"_index":771,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["hostlistener",{"_index":1647,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{}}}],["hostlistener('@expandcollapse.done",{"_index":2092,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostlistener('@openclose.done",{"_index":2088,"title":{},"body":{"classes/InitializationState.html":{}}}],["hostlistener('document:click",{"_index":1598,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hostlistener('document:touchstart",{"_index":1679,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hostlisteners",{"_index":1566,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["hover",{"_index":1409,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["hoverable",{"_index":1421,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["hovered",{"_index":1357,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["hovering",{"_index":3139,"title":{},"body":{"changelog.html":{}}}],["hoverstate",{"_index":1322,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["html",{"_index":506,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["htmlelement",{"_index":1586,"title":{},"body":{"components/DualSliderComponent.html":{},"injectables/ThemingService.html":{}}}],["htmlinputelement).value",{"_index":1694,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["http://purl.obolibrary.org/obo/cl_0000000",{"_index":1054,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["http://purl.obolibrary.org/obo/uberon_0013702",{"_index":1053,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/variables.html":{}}}],["http://purl.org/ccf/latest/ccf.owl#vhfskin",{"_index":2621,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["httpclientmodule",{"_index":997,"title":{},"body":{"modules/CoreModule.html":{}}}],["https://beta",{"_index":3556,"title":{},"body":{"index.html":{}}}],["https://hubmap",{"_index":3561,"title":{},"body":{"index.html":{}}}],["https://hubmapconsortium.github.io/ccf",{"_index":3560,"title":{},"body":{"index.html":{}}}],["https://old",{"_index":3563,"title":{},"body":{"index.html":{}}}],["https://portal.hubmapconsortium.org/ccf",{"_index":3558,"title":{},"body":{"index.html":{}}}],["https://sampledata.hubmapconsortium.org",{"_index":3372,"title":{},"body":{"changelog.html":{}}}],["https://www.ngxs.io/advanced/options",{"_index":2715,"title":{},"body":{"modules/StoreModule.html":{}}}],["hubmap",{"_index":94,"title":{},"body":{"modules/AppModule.html":{},"components/HeaderComponent.html":{},"changelog.html":{},"index.html":{},"license.html":{}}}],["hubmapasseturl",{"_index":453,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmapdataservice",{"_index":454,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmapdataurl",{"_index":455,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmapportalurl",{"_index":456,"title":{},"body":{"components/AppWebComponent.html":{}}}],["hubmaptoken",{"_index":457,"title":{},"body":{"components/AppWebComponent.html":{}}}],["icon",{"_index":1208,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/StoreModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["icondefinition",{"_index":1904,"title":{"interfaces/IconDefinition.html":{}},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{}}}],["iconregistry",{"_index":1912,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["iconregistrystate",{"_index":1913,"title":{"injectables/IconRegistryState.html":{}},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["icons",{"_index":1223,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["icons.ts",{"_index":1206,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["id",{"_index":2141,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"interfaces/OntologySelection.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["idb",{"_index":3506,"title":{},"body":{"dependencies.html":{}}}],["identifier",{"_index":2191,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{},"coverage.html":{}}}],["iec",{"_index":3254,"title":{},"body":{"changelog.html":{}}}],["iframe",{"_index":395,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ViewerComponent.html":{}}}],["image",{"_index":3247,"title":{},"body":{"changelog.html":{}}}],["images",{"_index":3295,"title":{},"body":{"changelog.html":{}}}],["immutable",{"_index":666,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{}}}],["implementation",{"_index":1090,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{}}}],["implemented",{"_index":3214,"title":{},"body":{"changelog.html":{}}}],["implementing",{"_index":3335,"title":{},"body":{"changelog.html":{}}}],["implements",{"_index":100,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["implied",{"_index":3615,"title":{},"body":{"license.html":{}}}],["implies",{"_index":984,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["import",{"_index":35,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["import.meta.url",{"_index":2979,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["important",{"_index":631,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["imported",{"_index":1023,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["imports",{"_index":28,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["importscripts('${externalurl",{"_index":2985,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["improve",{"_index":3207,"title":{},"body":{"changelog.html":{}}}],["improved",{"_index":3022,"title":{},"body":{"changelog.html":{}}}],["improvements",{"_index":3037,"title":{},"body":{"changelog.html":{}}}],["improves",{"_index":3095,"title":{},"body":{"changelog.html":{}}}],["include",{"_index":3262,"title":{},"body":{"changelog.html":{}}}],["included",{"_index":3610,"title":{},"body":{"license.html":{}}}],["includes",{"_index":3377,"title":{},"body":{"changelog.html":{}}}],["including",{"_index":3069,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["increase",{"_index":3235,"title":{},"body":{"changelog.html":{}}}],["increased",{"_index":3331,"title":{},"body":{"changelog.html":{}}}],["indeterminate.mat",{"_index":1392,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["index",{"_index":118,"title":{"index.html":{}},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["indiana",{"_index":3574,"title":{},"body":{"index.html":{}}}],["indicates",{"_index":1853,"title":{},"body":{"classes/FlatNode.html":{}}}],["individual",{"_index":588,"title":{},"body":{"components/CheckboxComponent.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["infinity",{"_index":292,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["infix",{"_index":1503,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["info",{"_index":21,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"index.html":{}}}],["infobuttonmodule",{"_index":62,"title":{},"body":{"modules/AppModule.html":{}}}],["information",{"_index":597,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{},"index.html":{}}}],["infrastructure",{"_index":3298,"title":{},"body":{"changelog.html":{}}}],["ingestion",{"_index":3264,"title":{},"body":{"changelog.html":{}}}],["inherit",{"_index":1813,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["init",{"_index":2302,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["initial",{"_index":296,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["initialconfig",{"_index":498,"title":{},"body":{"components/AppWebComponent.html":{}}}],["initialdelay",{"_index":496,"title":{},"body":{"components/AppWebComponent.html":{}}}],["initialization",{"_index":2066,"title":{},"body":{"classes/InitializationState.html":{}}}],["initializationstate",{"_index":1965,"title":{"classes/InitializationState.html":{}},"body":{"classes/InitializationState.html":{},"coverage.html":{}}}],["initialize",{"_index":2630,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{}}}],["initialize(component",{"_index":2740,"title":{},"body":{"injectables/ThemingService.html":{}}}],["initialize(element",{"_index":2745,"title":{},"body":{"injectables/ThemingService.html":{}}}],["initialized",{"_index":450,"title":{},"body":{"components/AppWebComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ThemingService.html":{}}}],["initializer",{"_index":2743,"title":{},"body":{"injectables/ThemingService.html":{}}}],["initializes",{"_index":1601,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{}}}],["initializesliderpopover",{"_index":1558,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["initializing",{"_index":980,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["inject",{"_index":2194,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{}}}],["inject(default_theme",{"_index":2759,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injectable",{"_index":402,"title":{"injectables/AppRootOverlayContainer.html":{},"injectables/ColorAssignmentState.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"injectables/MessageService.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"injectables/WorkerDataSourceService.html":{}},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["injectables",{"_index":403,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"injectables/ColorAssignmentState.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"injectables/MessageService.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"injectables/WorkerDataSourceService.html":{},"overview.html":{}}}],["injecting",{"_index":2165,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["injectiontoken",{"_index":2195,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["injectiontoken('default",{"_index":2756,"title":{},"body":{"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["injector",{"_index":46,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{}}}],["injector.get(overlaycontainer",{"_index":2770,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injector.get(renderer2",{"_index":2768,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injector.get(themingservice",{"_index":2757,"title":{},"body":{"injectables/ThemingService.html":{}}}],["injectordelegatedatasourceservice",{"_index":1304,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["inner",{"_index":632,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["input",{"_index":476,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["inputs",{"_index":451,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["inside",{"_index":1705,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["install",{"_index":2857,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["instance",{"_index":250,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["instant",{"_index":1988,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["instead",{"_index":1712,"title":{},"body":{"components/DualSliderComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["instructions",{"_index":3102,"title":{},"body":{"changelog.html":{}}}],["integrated",{"_index":3180,"title":{},"body":{"changelog.html":{}}}],["integrating",{"_index":3066,"title":{},"body":{"changelog.html":{}}}],["integration",{"_index":3263,"title":{},"body":{"changelog.html":{}}}],["integrations",{"_index":3193,"title":{},"body":{"changelog.html":{}}}],["inter",{"_index":1893,"title":{},"body":{"components/HeaderComponent.html":{}}}],["interact",{"_index":3166,"title":{},"body":{"changelog.html":{}}}],["interactions",{"_index":3318,"title":{},"body":{"changelog.html":{}}}],["interest",{"_index":3369,"title":{},"body":{"changelog.html":{}}}],["interface",{"_index":112,"title":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"interfaces/ListResult.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"interfaces/MessageServiceConfig.html":{},"interfaces/OntologySelection.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"coverage.html":{},"index.html":{}}}],["interfaces",{"_index":114,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"interfaces/ListResult.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"interfaces/MessageServiceConfig.html":{},"interfaces/OntologySelection.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"index.html":{},"overview.html":{}}}],["internal",{"_index":3246,"title":{},"body":{"changelog.html":{}}}],["intestine",{"_index":1250,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["intestine.svg",{"_index":1251,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["invisible",{"_index":899,"title":{},"body":{"components/ContentComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["iri",{"_index":2613,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["isexpandable",{"_index":3426,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["islighttheme",{"_index":225,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["isn't",{"_index":1351,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["isolated",{"_index":2201,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/variables.html":{}}}],["issliderinitialized",{"_index":1551,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["isslideropen",{"_index":1552,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["isstring",{"_index":482,"title":{},"body":{"components/AppWebComponent.html":{}}}],["isstringarray",{"_index":485,"title":{},"body":{"components/AppWebComponent.html":{}}}],["isstringarray(json",{"_index":490,"title":{},"body":{"components/AppWebComponent.html":{}}}],["isstringarray(value",{"_index":491,"title":{},"body":{"components/AppWebComponent.html":{}}}],["issue",{"_index":3230,"title":{},"body":{"changelog.html":{}}}],["issues",{"_index":3054,"title":{},"body":{"changelog.html":{}}}],["iswhitelisted",{"_index":384,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["it's",{"_index":319,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["item",{"_index":214,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["item.color",{"_index":733,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["item.technology",{"_index":2836,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["item.thumbnail",{"_index":2834,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["itemhovered",{"_index":2497,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["itemid",{"_index":2785,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["itemid(_index",{"_index":2794,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["items",{"_index":1382,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["itemunhovered",{"_index":2498,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["iu",{"_index":3350,"title":{},"body":{"changelog.html":{}}}],["javascript",{"_index":3016,"title":{},"body":{"changelog.html":{}}}],["join",{"_index":2340,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["json",{"_index":488,"title":{},"body":{"components/AppWebComponent.html":{},"changelog.html":{}}}],["json.parse(json.stringify(default_filter",{"_index":1762,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["jsonld",{"_index":3509,"title":{},"body":{"dependencies.html":{}}}],["july",{"_index":3317,"title":{},"body":{"changelog.html":{}}}],["jump",{"_index":3356,"title":{},"body":{"changelog.html":{}}}],["justify",{"_index":1388,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["keep",{"_index":194,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{}}}],["keeping",{"_index":1105,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["keeps",{"_index":1795,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["key",{"_index":704,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{}}}],["key/value",{"_index":1753,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["keyboard",{"_index":3355,"title":{},"body":{"changelog.html":{}}}],["keyboardevent",{"_index":1610,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["keyframes",{"_index":1495,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["keyval",{"_index":3507,"title":{},"body":{"dependencies.html":{}}}],["key}:${value",{"_index":1758,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["kidney",{"_index":1245,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["kidney.svg",{"_index":1246,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["kind",{"_index":3614,"title":{},"body":{"license.html":{}}}],["knee",{"_index":1247,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["knee.svg",{"_index":1248,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["known",{"_index":3053,"title":{},"body":{"changelog.html":{}}}],["kpmp",{"_index":3256,"title":{},"body":{"changelog.html":{}}}],["label",{"_index":197,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/TissueSectionVisComponent.html":{}}}],["label.slice(0",{"_index":2429,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["label.slice(index",{"_index":2430,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["label.tolowercase().includes(searchvalue",{"_index":2425,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["label.tolowercase().indexof(searchvalue",{"_index":2427,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["labeled",{"_index":559,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["labels",{"_index":589,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{}}}],["labs/data",{"_index":2693,"title":{},"body":{"modules/StoreModule.html":{},"dependencies.html":{}}}],["labs/data/decorators",{"_index":672,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["labs/data/repositories",{"_index":674,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["landmarks",{"_index":3084,"title":{},"body":{"changelog.html":{}}}],["large",{"_index":1249,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["larger",{"_index":3010,"title":{},"body":{"changelog.html":{}}}],["last",{"_index":382,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DropdownComponent.html":{},"modules/StoreModule.html":{}}}],["latest",{"_index":1080,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{},"index.html":{}}}],["launch",{"_index":2949,"title":{},"body":{"components/ViewerComponent.html":{}}}],["layers",{"_index":3459,"title":{},"body":{"dependencies.html":{}}}],["lazy",{"_index":2135,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["ld",{"_index":3273,"title":{},"body":{"changelog.html":{}}}],["leak",{"_index":3229,"title":{},"body":{"changelog.html":{}}}],["leave",{"_index":3080,"title":{},"body":{"changelog.html":{}}}],["left",{"_index":316,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["left.closeexpanded",{"_index":327,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["left.open",{"_index":326,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["left.px",{"_index":894,"title":{},"body":{"components/ContentComponent.html":{}}}],["left.svg",{"_index":1241,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["left/right",{"_index":3092,"title":{},"body":{"changelog.html":{}}}],["leftmargin",{"_index":887,"title":{},"body":{"components/ContentComponent.html":{}}}],["legend",{"_index":505,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["level",{"_index":1837,"title":{},"body":{"classes/FlatNode.html":{},"injectables/ThemingService.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["levels",{"_index":3366,"title":{},"body":{"changelog.html":{}}}],["lexically",{"_index":2316,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["liability",{"_index":3627,"title":{},"body":{"license.html":{}}}],["liable",{"_index":3624,"title":{},"body":{"license.html":{}}}],["libraries",{"_index":3014,"title":{},"body":{"changelog.html":{}}}],["library",{"_index":3200,"title":{},"body":{"changelog.html":{}}}],["license",{"_index":3580,"title":{"license.html":{}},"body":{"license.html":{}}}],["life",{"_index":3074,"title":{},"body":{"changelog.html":{}}}],["lifecycle",{"_index":2303,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["light",{"_index":96,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["lighter",{"_index":1424,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["limitation",{"_index":3594,"title":{},"body":{"license.html":{}}}],["limited",{"_index":3302,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["line",{"_index":435,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["link",{"_index":387,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["linkage",{"_index":3319,"title":{},"body":{"changelog.html":{}}}],["linkclick",{"_index":1328,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["linkclicked",{"_index":2499,"title":{},"body":{"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["linked",{"_index":3138,"title":{},"body":{"changelog.html":{}}}],["linkhandler",{"_index":1324,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["linkhandler(url",{"_index":1345,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["links",{"_index":3051,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["list",{"_index":352,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"changelog.html":{}}}],["listen",{"_index":2200,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["listener",{"_index":1079,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/functions.html":{}}}],["listeners",{"_index":793,"title":{},"body":{"components/ContainerComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["listens",{"_index":306,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{}}}],["listresult",{"_index":2120,"title":{"interfaces/ListResult.html":{}},"body":{"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/ResultsBrowserComponent.html":{},"coverage.html":{}}}],["listresultdeselected",{"_index":2500,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["listresults",{"_index":2126,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["listresultselected",{"_index":2501,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["listresultsstate",{"_index":164,"title":{"injectables/ListResultsState.html":{}},"body":{"interfaces/AppOptions.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["listresultsstatemodel",{"_index":2160,"title":{"interfaces/ListResultsStateModel.html":{}},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"coverage.html":{}}}],["literal",{"_index":753,"title":{},"body":{"interfaces/ColorAssignmentStateModel.html":{},"interfaces/SceneStateModel.html":{},"dependencies.html":{}}}],["little",{"_index":3164,"title":{},"body":{"changelog.html":{}}}],["liver",{"_index":1252,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["liver.svg",{"_index":1253,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["load",{"_index":2136,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["loaded",{"_index":1209,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{}}}],["loaders.gl/core",{"_index":3462,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/draco",{"_index":3464,"title":{},"body":{"dependencies.html":{}}}],["loaders.gl/gltf",{"_index":3465,"title":{},"body":{"dependencies.html":{}}}],["loading",{"_index":2931,"title":{},"body":{"components/ViewerComponent.html":{}}}],["located",{"_index":2020,"title":{},"body":{"classes/InitializationState.html":{}}}],["location",{"_index":2437,"title":{},"body":{"interfaces/OntologySelection.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["locationstrategy",{"_index":2966,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["locator",{"_index":2965,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["lock",{"_index":2842,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["lodash",{"_index":2156,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{}}}],["log",{"_index":3568,"title":{},"body":{"index.html":{}}}],["logged",{"_index":1872,"title":{},"body":{"components/HeaderComponent.html":{}}}],["loggedin",{"_index":399,"title":{},"body":{"interfaces/AppOptions.html":{},"components/HeaderComponent.html":{}}}],["logger",{"_index":2716,"title":{},"body":{"modules/StoreModule.html":{}}}],["logging",{"_index":3005,"title":{},"body":{"changelog.html":{}}}],["logic",{"_index":1344,"title":{},"body":{"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["login",{"_index":397,"title":{},"body":{"interfaces/AppOptions.html":{},"components/HeaderComponent.html":{}}}],["logindisabled",{"_index":247,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{}}}],["loginenabled",{"_index":123,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["logo",{"_index":1862,"title":{},"body":{"components/HeaderComponent.html":{}}}],["logotooltip",{"_index":124,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/HeaderComponent.html":{}}}],["logout",{"_index":1877,"title":{},"body":{"components/HeaderComponent.html":{}}}],["longer",{"_index":3148,"title":{},"body":{"changelog.html":{}}}],["look",{"_index":3205,"title":{},"body":{"changelog.html":{}}}],["looks",{"_index":2396,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["lookup",{"_index":2377,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["lookup(nodes",{"_index":2394,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["low",{"_index":1618,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["low/high",{"_index":1662,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["lower",{"_index":1580,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["lowvalue",{"_index":1553,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["lru",{"_index":3512,"title":{},"body":{"dependencies.html":{}}}],["luma.gl/core",{"_index":3466,"title":{},"body":{"dependencies.html":{}}}],["lung",{"_index":1254,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["lung.svg",{"_index":1255,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["lymph",{"_index":1256,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["made",{"_index":1176,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{}}}],["main",{"_index":174,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{}}}],["major",{"_index":3227,"title":{},"body":{"changelog.html":{}}}],["makes",{"_index":3007,"title":{},"body":{"changelog.html":{}}}],["making",{"_index":3060,"title":{},"body":{"changelog.html":{}}}],["managed",{"_index":818,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["managers",{"_index":3020,"title":{},"body":{"changelog.html":{}}}],["manages",{"_index":2726,"title":{},"body":{"injectables/ThemingService.html":{}}}],["many",{"_index":180,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["map",{"_index":146,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{}}}],["map(([scene",{"_index":2648,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(([tissueblocks",{"_index":2176,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["map((color",{"_index":692,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["map((node",{"_index":2663,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(nodes",{"_index":2413,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["map(organ",{"_index":2638,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(reforgans",{"_index":2632,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["map(searchresults",{"_index":2335,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["map(state",{"_index":235,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["map(states",{"_index":1158,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["march",{"_index":3203,"title":{},"body":{"changelog.html":{}}}],["margin",{"_index":634,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/variables.html":{}}}],["margin2",{"_index":2000,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["markdown",{"_index":3518,"title":{},"body":{"dependencies.html":{}}}],["marrow",{"_index":1233,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["marrow.svg",{"_index":1234,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["mat",{"_index":624,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/OntologySearchComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ViewerComponent.html":{}}}],["matautocompletemodule",{"_index":2364,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["matautocompleteselectedevent",{"_index":2306,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["matbuttonmodule",{"_index":1785,"title":{},"body":{"modules/FiltersContentModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["match",{"_index":1883,"title":{},"body":{"components/HeaderComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["matcheckboxchange",{"_index":599,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["matcheckboxmodule",{"_index":659,"title":{},"body":{"modules/CheckboxModule.html":{},"modules/DonorCardModule.html":{}}}],["matching",{"_index":110,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["material",{"_index":1915,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["matformfieldmodule",{"_index":1537,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/OntologySearchModule.html":{}}}],["math.div($pointer",{"_index":1716,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["math.gl/core",{"_index":3467,"title":{},"body":{"dependencies.html":{}}}],["math.max(...this.selection",{"_index":1666,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["math.min(...this.selection",{"_index":1664,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["maticonmodule",{"_index":49,"title":{},"body":{"modules/AppModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/ViewerModule.html":{}}}],["maticonregistry",{"_index":1910,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["matinputmodule",{"_index":2365,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["matprogressspinnermodule",{"_index":2688,"title":{},"body":{"modules/SpinnerOverlayModule.html":{},"modules/ViewerModule.html":{}}}],["matselectmodule",{"_index":1539,"title":{},"body":{"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{}}}],["matsnackbar",{"_index":134,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["matsnackbarmodule",{"_index":51,"title":{},"body":{"modules/AppModule.html":{}}}],["mattoolbarmodule",{"_index":1901,"title":{},"body":{"modules/HeaderModule.html":{}}}],["mattooltipmodule",{"_index":54,"title":{},"body":{"modules/AppModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyTreeModule.html":{}}}],["mattreemodule",{"_index":2477,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["max",{"_index":1522,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["mc",{"_index":3349,"title":{},"body":{"changelog.html":{}}}],["measured",{"_index":2058,"title":{},"body":{"classes/InitializationState.html":{}}}],["measuredmargin",{"_index":2060,"title":{},"body":{"classes/InitializationState.html":{}}}],["measuredwidth",{"_index":2050,"title":{},"body":{"classes/InitializationState.html":{}}}],["memory",{"_index":3228,"title":{},"body":{"changelog.html":{}}}],["menu",{"_index":1468,"title":{},"body":{"components/DropdownComponent.html":{},"changelog.html":{}}}],["merchantability",{"_index":3617,"title":{},"body":{"license.html":{}}}],["merge",{"_index":3597,"title":{},"body":{"license.html":{}}}],["mergeall",{"_index":2196,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["message",{"_index":784,"title":{"interfaces/Message.html":{}},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["message_service_config",{"_index":1461,"title":{},"body":{"modules/DrawerModule.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["message_service_default_config",{"_index":1462,"title":{},"body":{"modules/DrawerModule.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["messagechannel",{"_index":800,"title":{"classes/MessageChannel.html":{}},"body":{"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{}}}],["messagechannel(source",{"_index":2237,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["messagechannel.counter",{"_index":2224,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["messages",{"_index":778,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["messageservice",{"_index":759,"title":{"injectables/MessageService.html":{}},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["messageservice.connect(this",{"_index":848,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["messageservice.connect(this).getmessages",{"_index":935,"title":{},"body":{"components/ContentComponent.html":{}}}],["messageserviceconfig",{"_index":2199,"title":{"interfaces/MessageServiceConfig.html":{}},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["messagess",{"_index":1069,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["metadata",{"_index":447,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["method",{"_index":602,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ThemingService.html":{}}}],["method.apply(registry",{"_index":1943,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["methodname",{"_index":1937,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ThemingService.html":{}}}],["methods",{"_index":29,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["min",{"_index":1379,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ViewerComponent.html":{}}}],["minor",{"_index":3036,"title":{},"body":{"changelog.html":{}}}],["miscellaneous",{"_index":3540,"title":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["mit",{"_index":3581,"title":{},"body":{"license.html":{}}}],["ml",{"_index":1434,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["mock",{"_index":3345,"title":{},"body":{"changelog.html":{}}}],["modal",{"_index":3152,"title":{},"body":{"changelog.html":{}}}],["mode",{"_index":276,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["model",{"_index":2166,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"dependencies.html":{}}}],["models/list",{"_index":2157,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["modify",{"_index":3596,"title":{},"body":{"license.html":{}}}],["module",{"_index":0,"title":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/StoreModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["modules",{"_index":2,"title":{"modules.html":{}},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"modules.html":{},"overview.html":{}}}],["modules/filters/filters",{"_index":71,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["modules/ontology",{"_index":74,"title":{},"body":{"modules/AppModule.html":{}}}],["modules/results",{"_index":77,"title":{},"body":{"modules/AppModule.html":{}}}],["monorepo",{"_index":3547,"title":{},"body":{"index.html":{}}}],["more",{"_index":1059,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"index.html":{}}}],["mouse",{"_index":1589,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["mousepositiontrackermodule",{"_index":1000,"title":{},"body":{"modules/CoreModule.html":{}}}],["moved",{"_index":3358,"title":{},"body":{"changelog.html":{}}}],["movement",{"_index":1590,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["mr",{"_index":1436,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["msg",{"_index":909,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["msg.payload",{"_index":947,"title":{},"body":{"components/ContentComponent.html":{}}}],["msg.payload.drawers",{"_index":941,"title":{},"body":{"components/ContentComponent.html":{}}}],["msg.payload.opened",{"_index":2917,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["msg.payload.type",{"_index":938,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["msg.source",{"_index":945,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["mt",{"_index":1437,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["much",{"_index":3008,"title":{},"body":{"changelog.html":{}}}],["multi",{"_index":2724,"title":{},"body":{"modules/ThemingModule.html":{}}}],["multiple",{"_index":3548,"title":{},"body":{"index.html":{}}}],["n3",{"_index":3514,"title":{},"body":{"dependencies.html":{}}}],["name",{"_index":417,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["names",{"_index":3121,"title":{},"body":{"changelog.html":{}}}],["namespace",{"_index":1218,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"miscellaneous/variables.html":{}}}],["navigate_before",{"_index":2835,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["navigate_next",{"_index":2837,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["navigation",{"_index":2783,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"changelog.html":{}}}],["navigationoptions",{"_index":2809,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["necessary",{"_index":1620,"title":{},"body":{"components/DualSliderComponent.html":{},"injectables/ThemingService.html":{}}}],["need",{"_index":1180,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"components/FiltersPopoverComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["needed",{"_index":3209,"title":{},"body":{"changelog.html":{}}}],["needs",{"_index":789,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["nested",{"_index":1704,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["network",{"_index":3572,"title":{},"body":{"index.html":{}}}],["neuron",{"_index":1258,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["neuron.svg",{"_index":1259,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["never",{"_index":842,"title":{},"body":{"components/ContainerComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{}}}],["new",{"_index":219,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["newly",{"_index":1847,"title":{},"body":{"classes/FlatNode.html":{}}}],["newvalue",{"_index":1692,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["next",{"_index":434,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["nextbuttonid",{"_index":2787,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["nextel",{"_index":2819,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["nextmessageid",{"_index":2223,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["nextuid",{"_index":2822,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["ng",{"_index":622,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["ng5",{"_index":1648,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"dependencies.html":{}}}],["ng5slidermodule",{"_index":1724,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["ngacceptinputtype_expanded",{"_index":2119,"title":{},"body":{"classes/InitializationState.html":{}}}],["ngacceptinputtype_opened",{"_index":2118,"title":{},"body":{"classes/InitializationState.html":{}}}],["ngacceptinputtype_position",{"_index":2117,"title":{},"body":{"classes/InitializationState.html":{}}}],["ngafterviewinit",{"_index":768,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["ngdobootstrap",{"_index":30,"title":{},"body":{"modules/AppModule.html":{}}}],["ngmodule",{"_index":47,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{}}}],["ngonchanges",{"_index":1559,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["ngonchanges(changes",{"_index":1602,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["ngondestroy",{"_index":769,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{}}}],["ngoninit",{"_index":285,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySearchComponent.html":{}}}],["ngx",{"_index":613,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"dependencies.html":{}}}],["ngxs",{"_index":671,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"dependencies.html":{}}}],["ngxs/logger",{"_index":2695,"title":{},"body":{"modules/StoreModule.html":{},"dependencies.html":{}}}],["ngxs/storage",{"_index":3471,"title":{},"body":{"dependencies.html":{}}}],["ngxs/store",{"_index":675,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"dependencies.html":{}}}],["ngxsdatapluginmodule",{"_index":2692,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsdatapluginmodule.forroot",{"_index":2707,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsdatarepository",{"_index":1027,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["ngxsimmutabledatarepository",{"_index":673,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["ngxsloggerpluginmodule",{"_index":2694,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsloggerpluginmodule.forroot",{"_index":2717,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsmodule",{"_index":2697,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsmodule.forroot(root_states",{"_index":2708,"title":{},"body":{"modules/StoreModule.html":{}}}],["ngxsoninit",{"_index":1028,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["nih",{"_index":3577,"title":{},"body":{"index.html":{}}}],["node",{"_index":1832,"title":{},"body":{"classes/FlatNode.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"dependencies.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["node's",{"_index":1850,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ccf_annotations?.some?.(tag",{"_index":2659,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.children",{"_index":2434,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["node.entityid",{"_index":2622,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.id",{"_index":2346,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["node.label.tolowercase().includes(searchvalue",{"_index":2419,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["node.reference_organ",{"_index":2661,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.representation_of",{"_index":2619,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["node.synonymlabels.find((label",{"_index":2424,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["node.ts",{"_index":1831,"title":{},"body":{"classes/FlatNode.html":{},"coverage.html":{}}}],["node.ts:11",{"_index":1843,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:13",{"_index":1841,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:18",{"_index":1849,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:25",{"_index":1852,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:36",{"_index":1846,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:38",{"_index":1838,"title":{},"body":{"classes/FlatNode.html":{}}}],["node.ts:9",{"_index":1844,"title":{},"body":{"classes/FlatNode.html":{}}}],["node['@id",{"_index":2620,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["nodeclickevent",{"_index":2580,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["nodes",{"_index":355,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["nodes.foreach((node",{"_index":2417,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["nodes.svg",{"_index":1257,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["nodes[node.parent",{"_index":2466,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["none",{"_index":1505,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["noninfringement",{"_index":3621,"title":{},"body":{"license.html":{}}}],["normally",{"_index":1800,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["not(:first",{"_index":1401,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["not(:last",{"_index":1889,"title":{},"body":{"components/HeaderComponent.html":{}}}],["note",{"_index":1703,"title":{},"body":{"components/DualSliderComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["notice",{"_index":3231,"title":{},"body":{"changelog.html":{},"license.html":{}}}],["notifies",{"_index":2521,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["now",{"_index":3011,"title":{},"body":{"changelog.html":{}}}],["nowrap",{"_index":1442,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["null",{"_index":1919,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"components/ViewerComponent.html":{}}}],["null)?.getcontainerelement",{"_index":2771,"title":{},"body":{"injectables/ThemingService.html":{}}}],["number",{"_index":578,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"changelog.html":{}}}],["number((event.target",{"_index":1693,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["number(this.options.floor",{"_index":1696,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["number(value.slice(0",{"_index":2064,"title":{},"body":{"classes/InitializationState.html":{}}}],["numebr",{"_index":2873,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["numeric",{"_index":3236,"title":{},"body":{"changelog.html":{}}}],["numresults",{"_index":1833,"title":{},"body":{"classes/FlatNode.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["o",{"_index":1084,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["o.id",{"_index":2653,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["o.representation_of",{"_index":2635,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["o['@id",{"_index":2657,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["object",{"_index":213,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["object.prototype.hasownproperty.call(colors",{"_index":2664,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["object.values(state.nodes",{"_index":2401,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["observable",{"_index":143,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["observableinput",{"_index":1034,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["observedvalueof",{"_index":1035,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["obtaining",{"_index":3589,"title":{},"body":{"license.html":{}}}],["occurencedata",{"_index":2442,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["occurences",{"_index":1120,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["occurs",{"_index":1593,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["off/on",{"_index":3212,"title":{},"body":{"changelog.html":{}}}],["official",{"_index":3316,"title":{},"body":{"changelog.html":{}}}],["offset",{"_index":949,"title":{},"body":{"components/ContentComponent.html":{}}}],["old",{"_index":3562,"title":{},"body":{"index.html":{}}}],["once",{"_index":1024,"title":{},"body":{"modules/CoreModule.html":{}}}],["onchanges",{"_index":1546,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["ondestroy",{"_index":756,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{}}}],["one",{"_index":1058,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"index.html":{}}}],["oninit",{"_index":132,"title":{},"body":{"interfaces/AppOptions.html":{},"components/OntologySearchComponent.html":{}}}],["onkeyhigh",{"_index":1560,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["onkeyhigh(event",{"_index":1609,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["onkeylow",{"_index":1561,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["onkeylow(event",{"_index":1616,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["online",{"_index":3325,"title":{},"body":{"changelog.html":{}}}],["onscroll",{"_index":2495,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["onscroll(event",{"_index":2527,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["onselect",{"_index":2280,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["onselect(event",{"_index":2305,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["ontolgyselection.foreach((selection",{"_index":377,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontolgyselection.length",{"_index":373,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontolgyselection[0].label",{"_index":375,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontological",{"_index":3374,"title":{},"body":{"changelog.html":{}}}],["ontologies",{"_index":3274,"title":{},"body":{"changelog.html":{}}}],["ontology",{"_index":196,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["ontology_search",{"_index":2345,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["ontologyexplorationmodule",{"_index":14,"title":{"modules/OntologyExplorationModule.html":{}},"body":{"modules/AppModule.html":{},"modules/OntologyExplorationModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologyfilter",{"_index":2443,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["ontologynode",{"_index":2459,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["ontologysearchcomponent",{"_index":533,"title":{"components/OntologySearchComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["ontologysearchmodule",{"_index":2257,"title":{"modules/OntologySearchModule.html":{}},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologysearchservice",{"_index":2285,"title":{"injectables/OntologySearchService.html":{}},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"interfaces/SearchResult.html":{},"coverage.html":{},"overview.html":{}}}],["ontologyselected(ontologyselection",{"_index":356,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselection",{"_index":156,"title":{"interfaces/OntologySelection.html":{}},"body":{"interfaces/AppOptions.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"coverage.html":{}}}],["ontologyselection.map(selection",{"_index":361,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselection[0",{"_index":367,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselection[0].label",{"_index":368,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselectioncomponent",{"_index":535,"title":{"components/OntologySelectionComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["ontologyselectionlabel",{"_index":200,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ontologyselectionmodule",{"_index":2258,"title":{"modules/OntologySelectionModule.html":{}},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologyselections",{"_index":2455,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["ontologyservice",{"_index":2278,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["ontologytermoccurencesdata",{"_index":1121,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurencesdata$.pipe(take(1)).subscribe(ontologytermsfulldata",{"_index":1172,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurencesdata(filter",{"_index":1190,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurencesdataquerystatus",{"_index":1095,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytermoccurrences",{"_index":1141,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologyterms",{"_index":238,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["ontologytermsfulldata",{"_index":1107,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["ontologytreecomponent",{"_index":537,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["ontologytreemodel",{"_index":135,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["ontologytreemodule",{"_index":2259,"title":{"modules/OntologyTreeModule.html":{}},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules.html":{},"overview.html":{}}}],["ontologytreenode",{"_index":1836,"title":{},"body":{"classes/FlatNode.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["opacities",{"_index":3216,"title":{},"body":{"changelog.html":{}}}],["opacity",{"_index":931,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["opacityslidermodule",{"_index":2479,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["open",{"_index":208,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/typealiases.html":{}}}],["open/close",{"_index":2041,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["open_in_new",{"_index":1371,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["openapi",{"_index":3062,"title":{},"body":{"changelog.html":{}}}],["openapi/angular",{"_index":1004,"title":{},"body":{"modules/CoreModule.html":{}}}],["opened",{"_index":916,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["opened(value",{"_index":2029,"title":{},"body":{"classes/InitializationState.html":{}}}],["opened/closed",{"_index":1986,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["openedchange",{"_index":2037,"title":{},"body":{"classes/InitializationState.html":{}}}],["openedstate",{"_index":1987,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["openexpanded",{"_index":2079,"title":{},"body":{"classes/InitializationState.html":{}}}],["opening",{"_index":2513,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["opening/closing/expanding",{"_index":2003,"title":{},"body":{"classes/InitializationState.html":{}}}],["opens",{"_index":1488,"title":{},"body":{"components/DropdownComponent.html":{},"classes/InitializationState.html":{}}}],["operator",{"_index":1072,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["operatorfunction",{"_index":1036,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["opposite",{"_index":1992,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/typealiases.html":{}}}],["optimization",{"_index":3163,"title":{},"body":{"changelog.html":{}}}],["optimizations",{"_index":3309,"title":{},"body":{"changelog.html":{}}}],["optimized",{"_index":3191,"title":{},"body":{"changelog.html":{}}}],["option",{"_index":600,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/FiltersContentComponent.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["option.displaylabel[0",{"_index":2349,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["option.displaylabel[1",{"_index":2350,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["option.displaylabel[2",{"_index":2351,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["option?.displaylabel",{"_index":2339,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["optional",{"_index":120,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["options",{"_index":569,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{}}}],["options.ceil",{"_index":1698,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["options.floor",{"_index":1697,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["optionschanged",{"_index":1562,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["optionsvisible",{"_index":1471,"title":{},"body":{"components/DropdownComponent.html":{}}}],["order",{"_index":2408,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["organ",{"_index":206,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"index.html":{}}}],["organids",{"_index":2633,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["organids.has(organ.id",{"_index":2637,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["organinfo",{"_index":2588,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["organlistvisible",{"_index":209,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["organs",{"_index":1226,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["organs/anatomical",{"_index":3217,"title":{},"body":{"changelog.html":{}}}],["organselectormodule",{"_index":63,"title":{},"body":{"modules/AppModule.html":{}}}],["origin",{"_index":2844,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["original",{"_index":1840,"title":{},"body":{"classes/FlatNode.html":{}}}],["originx",{"_index":1649,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["originy",{"_index":1650,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["orthographic",{"_index":3131,"title":{},"body":{"changelog.html":{}}}],["ot",{"_index":1214,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{}}}],["ot2od026671",{"_index":3579,"title":{},"body":{"index.html":{}}}],["other.expanded",{"_index":2106,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.expandedstate2",{"_index":2107,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.margin2",{"_index":2112,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.measuredmargin",{"_index":2110,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.measuredwidth",{"_index":2109,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.opened",{"_index":2108,"title":{},"body":{"classes/InitializationState.html":{}}}],["other.width",{"_index":2111,"title":{},"body":{"classes/InitializationState.html":{}}}],["otherblocks",{"_index":2178,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["otherblocks.push",{"_index":2183,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["others",{"_index":218,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["otherwise",{"_index":1926,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"license.html":{}}}],["out",{"_index":20,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"classes/InitializationState.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"license.html":{},"overview.html":{}}}],["outline",{"_index":1769,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{}}}],["output",{"_index":611,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["outputs",{"_index":570,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ViewerComponent.html":{}}}],["outside",{"_index":1333,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["ovaries",{"_index":1260,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["ovaries.svg",{"_index":1261,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["ovary",{"_index":1262,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["over",{"_index":1358,"title":{},"body":{"components/DonorCardComponent.html":{},"changelog.html":{}}}],["overall",{"_index":583,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["overflow",{"_index":875,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["overlay",{"_index":230,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ViewerComponent.html":{}}}],["overlay'},{'name",{"_index":542,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["overlay.component",{"_index":2690,"title":{},"body":{"modules/SpinnerOverlayModule.html":{}}}],["overlay.component.html",{"_index":2675,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.scss",{"_index":2674,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.ts",{"_index":2672,"title":{},"body":{"components/SpinnerOverlayComponent.html":{},"coverage.html":{}}}],["overlay.component.ts:16",{"_index":2680,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.ts:19",{"_index":2676,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.component.ts:22",{"_index":2678,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["overlay.create",{"_index":1656,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlay.module",{"_index":86,"title":{},"body":{"modules/AppModule.html":{}}}],["overlay.module.ts",{"_index":2687,"title":{},"body":{"modules/SpinnerOverlayModule.html":{}}}],["overlay.position().flexibleconnectedto(element).withpositions([position",{"_index":1654,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlay.service",{"_index":40,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{}}}],["overlay.service.ts",{"_index":405,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["overlay.service.ts:10",{"_index":420,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:11",{"_index":419,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:13",{"_index":415,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:27",{"_index":412,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.service.ts:32",{"_index":413,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["overlay.setrootelement(el",{"_index":263,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["overlay/app",{"_index":39,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"coverage.html":{}}}],["overlay/spinner",{"_index":85,"title":{},"body":{"modules/AppModule.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"coverage.html":{}}}],["overlaycontainer",{"_index":41,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"injectables/ThemingService.html":{}}}],["overlaymodule",{"_index":1722,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["overlayref",{"_index":1554,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlayref.attach(popoverportal",{"_index":1690,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlayref.updateposition",{"_index":1691,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlays",{"_index":3367,"title":{},"body":{"changelog.html":{}}}],["overlayx",{"_index":1651,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overlayy",{"_index":1652,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["overview",{"_index":3635,"title":{"overview.html":{}},"body":{"overview.html":{}}}],["owning",{"_index":2900,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["p",{"_index":3341,"title":{},"body":{"changelog.html":{}}}],["package",{"_index":3019,"title":{"dependencies.html":{}},"body":{"changelog.html":{}}}],["padding",{"_index":1383,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ViewerComponent.html":{}}}],["page",{"_index":1863,"title":{},"body":{"components/HeaderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["pages",{"_index":3100,"title":{},"body":{"changelog.html":{}}}],["pair",{"_index":2114,"title":{},"body":{"classes/InitializationState.html":{}}}],["paired",{"_index":3089,"title":{},"body":{"changelog.html":{}}}],["pancreas",{"_index":1263,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["pancreas.svg",{"_index":1264,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["pane",{"_index":1527,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["panel",{"_index":1515,"title":{},"body":{"components/DropdownComponent.html":{},"changelog.html":{}}}],["panelclass",{"_index":1657,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["param",{"_index":251,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["param0",{"_index":2617,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["parameters",{"_index":416,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["params",{"_index":1999,"title":{},"body":{"classes/InitializationState.html":{},"miscellaneous/variables.html":{}}}],["parent",{"_index":596,"title":{},"body":{"components/CheckboxComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["parent.messages.pipe(takewhile",{"_index":2230,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["parse",{"_index":502,"title":{},"body":{"components/AppWebComponent.html":{}}}],["parsedatasources",{"_index":503,"title":{},"body":{"components/AppWebComponent.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["parsedatasources(value",{"_index":480,"title":{},"body":{"components/AppWebComponent.html":{},"miscellaneous/functions.html":{}}}],["parser",{"_index":3478,"title":{},"body":{"dependencies.html":{}}}],["part",{"_index":2300,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["partial",{"_index":1178,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["particular",{"_index":3619,"title":{},"body":{"license.html":{}}}],["partly",{"_index":3202,"title":{},"body":{"changelog.html":{}}}],["partonomy",{"_index":3144,"title":{},"body":{"changelog.html":{}}}],["parts",{"_index":1947,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.join",{"_index":1952,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.push('innamespace",{"_index":1951,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.push('literal",{"_index":1950,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["parts.push('set",{"_index":1949,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["passed",{"_index":198,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["passes",{"_index":1348,"title":{},"body":{"components/DonorCardComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["path",{"_index":628,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"dependencies.html":{}}}],["patient",{"_index":1318,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{}}}],["payload",{"_index":669,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/typealiases.html":{}}}],["payload('doreset",{"_index":718,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["pelvis",{"_index":1265,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["per",{"_index":2824,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["performance",{"_index":3023,"title":{},"body":{"changelog.html":{}}}],["permission",{"_index":3585,"title":{},"body":{"license.html":{}}}],["permit",{"_index":3604,"title":{},"body":{"license.html":{}}}],["person",{"_index":1368,"title":{},"body":{"components/DonorCardComponent.html":{},"license.html":{}}}],["persons",{"_index":3605,"title":{},"body":{"license.html":{}}}],["pipe",{"_index":1081,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/functions.html":{}}}],["pipe(mergeall",{"_index":2232,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["placed",{"_index":2706,"title":{},"body":{"modules/StoreModule.html":{}}}],["placeholder",{"_index":3320,"title":{},"body":{"changelog.html":{}}}],["placeholdertext",{"_index":2283,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["placement",{"_index":3277,"title":{},"body":{"changelog.html":{}}}],["player",{"_index":3455,"title":{},"body":{"dependencies.html":{}}}],["pluck",{"_index":147,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["plugin",{"_index":2696,"title":{},"body":{"modules/StoreModule.html":{},"dependencies.html":{}}}],["pointer",{"_index":1390,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["popover",{"_index":324,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["popover's",{"_index":325,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["popover'},{'name",{"_index":530,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["popover.component",{"_index":171,"title":{},"body":{"interfaces/AppOptions.html":{},"modules/FiltersPopoverModule.html":{}}}],["popover.component.html",{"_index":1789,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.scss",{"_index":1788,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts",{"_index":1787,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"coverage.html":{}}}],["popover.component.ts:16",{"_index":1797,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:22",{"_index":1794,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:27",{"_index":1802,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:32",{"_index":1801,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:37",{"_index":1803,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:42",{"_index":1809,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:47",{"_index":1808,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:54",{"_index":1807,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.component.ts:63",{"_index":1805,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["popover.module",{"_index":73,"title":{},"body":{"modules/AppModule.html":{}}}],["popover.module.ts",{"_index":1826,"title":{},"body":{"modules/FiltersPopoverModule.html":{}}}],["popover/filters",{"_index":72,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"coverage.html":{}}}],["popoverelement",{"_index":1555,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["popoverelement?.nativeelement?.contains?.(target",{"_index":1681,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["popoverportal",{"_index":1556,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["popup",{"_index":1729,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"changelog.html":{}}}],["portal",{"_index":1870,"title":{},"body":{"components/HeaderComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"index.html":{}}}],["portal's",{"_index":3301,"title":{},"body":{"changelog.html":{}}}],["portalmodule",{"_index":1723,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["portions",{"_index":3612,"title":{},"body":{"license.html":{}}}],["position",{"_index":833,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["position(value",{"_index":2025,"title":{},"body":{"classes/InitializationState.html":{}}}],["positions",{"_index":799,"title":{},"body":{"components/ContainerComponent.html":{}}}],["positionstrategy",{"_index":1653,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["possible",{"_index":3257,"title":{},"body":{"changelog.html":{}}}],["preclose",{"_index":287,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["prefered",{"_index":2810,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["preference",{"_index":299,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["preferences",{"_index":3118,"title":{},"body":{"changelog.html":{}}}],["prefix",{"_index":2353,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["preparation",{"_index":3351,"title":{},"body":{"changelog.html":{}}}],["presented",{"_index":3365,"title":{},"body":{"changelog.html":{}}}],["pressed",{"_index":1615,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["prev",{"_index":2832,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["prevbuttonid",{"_index":2786,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["prevel",{"_index":2817,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["preview",{"_index":3130,"title":{},"body":{"changelog.html":{}}}],["previous",{"_index":2827,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["previously",{"_index":3055,"title":{},"body":{"changelog.html":{}}}],["primary",{"_index":2792,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["private",{"_index":259,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["process",{"_index":908,"title":{},"body":{"components/ContentComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["processed",{"_index":3293,"title":{},"body":{"changelog.html":{}}}],["processes",{"_index":786,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["processing",{"_index":3119,"title":{},"body":{"changelog.html":{}}}],["production",{"_index":3031,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["programming",{"_index":3013,"title":{},"body":{"changelog.html":{}}}],["progress",{"_index":2673,"title":{},"body":{"components/SpinnerOverlayComponent.html":{}}}],["project",{"_index":3339,"title":{},"body":{"changelog.html":{}}}],["projected",{"_index":794,"title":{},"body":{"components/ContainerComponent.html":{}}}],["projects",{"_index":3549,"title":{},"body":{"index.html":{}}}],["projects/.../app",{"_index":3544,"title":{},"body":{"miscellaneous/functions.html":{}}}],["projects/.../color",{"_index":3646,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../container.component.ts",{"_index":3545,"title":{},"body":{"miscellaneous/functions.html":{}}}],["projects/.../data",{"_index":3645,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../data.state.ts",{"_index":3542,"title":{},"body":{"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["projects/.../default",{"_index":3647,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../drawer.component.ts",{"_index":3641,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../message.service.ts",{"_index":3650,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../messages.ts",{"_index":3640,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../ontology",{"_index":3643,"title":{},"body":{"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["projects/.../scene.state.ts",{"_index":3648,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../store.module.ts",{"_index":3652,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../theming.service.ts",{"_index":3649,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/.../thumbnail",{"_index":3651,"title":{},"body":{"miscellaneous/variables.html":{}}}],["projects/ccf",{"_index":24,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["promise",{"_index":1976,"title":{},"body":{"classes/InitializationState.html":{}}}],["promise(resolve",{"_index":1973,"title":{},"body":{"classes/InitializationState.html":{}}}],["prop",{"_index":1935,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["properties",{"_index":119,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["property",{"_index":606,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"components/FiltersContentComponent.html":{},"classes/InitializationState.html":{},"components/ViewerComponent.html":{}}}],["property('expandable",{"_index":3656,"title":{},"body":{"miscellaneous/variables.html":{}}}],["property('level",{"_index":3655,"title":{},"body":{"miscellaneous/variables.html":{}}}],["prostate",{"_index":1268,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["prostate.svg",{"_index":1269,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["protected",{"_index":408,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{}}}],["provide",{"_index":92,"title":{},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{},"modules/DrawerModule.html":{},"modules/ThemingModule.html":{}}}],["provided",{"_index":808,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"license.html":{}}}],["providedin",{"_index":421,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["provider",{"_index":1134,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilter",{"_index":1148,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilterdata",{"_index":1135,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilterquerystatus",{"_index":1103,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["providerfilters",{"_index":1735,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["providers",{"_index":91,"title":{},"body":{"modules/AppModule.html":{},"components/ContainerComponent.html":{},"modules/CoreModule.html":{},"modules/DrawerModule.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySelectionComponent.html":{},"modules/ThemingModule.html":{},"changelog.html":{}}}],["providertoken",{"_index":1300,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["provides",{"_index":2288,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["providing",{"_index":881,"title":{},"body":{"components/ContentComponent.html":{}}}],["public",{"_index":2277,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["publish",{"_index":3598,"title":{},"body":{"license.html":{}}}],["publishing",{"_index":3017,"title":{},"body":{"changelog.html":{}}}],["publishreplay",{"_index":1038,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["publishreplay(1",{"_index":1088,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["purpose",{"_index":3620,"title":{},"body":{"license.html":{}}}],["pushed",{"_index":3176,"title":{},"body":{"changelog.html":{}}}],["px",{"_index":2017,"title":{},"body":{"classes/InitializationState.html":{}}}],["python",{"_index":3015,"title":{},"body":{"changelog.html":{}}}],["qs",{"_index":3521,"title":{},"body":{"dependencies.html":{}}}],["qualitative",{"_index":3305,"title":{},"body":{"changelog.html":{}}}],["quality",{"_index":3073,"title":{},"body":{"changelog.html":{}}}],["queries",{"_index":1055,"title":{},"body":{"interfaces/DataStateModel.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{}}}],["query",{"_index":1078,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["querydata",{"_index":1082,"title":{},"body":{"interfaces/DataStateModel.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["querydata(query",{"_index":3546,"title":{},"body":{"miscellaneous/functions.html":{}}}],["querying",{"_index":1074,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["querylist",{"_index":804,"title":{},"body":{"components/ContainerComponent.html":{}}}],["querystatus",{"_index":1150,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["question",{"_index":584,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["quickly",{"_index":3286,"title":{},"body":{"changelog.html":{}}}],["radius",{"_index":1386,"title":{},"body":{"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["range",{"_index":1578,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["rangelabel",{"_index":1569,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["rank",{"_index":664,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"miscellaneous/variables.html":{}}}],["rank']).concat(otherblocks",{"_index":2185,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["rc.1",{"_index":3311,"title":{},"body":{"changelog.html":{}}}],["rdf",{"_index":3523,"title":{},"body":{"dependencies.html":{}}}],["rdfjs/data",{"_index":3472,"title":{},"body":{"dependencies.html":{}}}],["rdfxml",{"_index":3524,"title":{},"body":{"dependencies.html":{}}}],["reactiveformsmodule",{"_index":2363,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["read",{"_index":1635,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["readable",{"_index":3526,"title":{},"body":{"dependencies.html":{}}}],["readonly",{"_index":102,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{}}}],["real",{"_index":3324,"title":{},"body":{"changelog.html":{}}}],["reason",{"_index":2703,"title":{},"body":{"modules/StoreModule.html":{}}}],["receive",{"_index":897,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{}}}],["receiving",{"_index":2204,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["record",{"_index":702,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["rectify",{"_index":3059,"title":{},"body":{"changelog.html":{}}}],["reduce",{"_index":3168,"title":{},"body":{"changelog.html":{}}}],["refcount",{"_index":1039,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["reference",{"_index":781,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["referenceorgans",{"_index":2569,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["references",{"_index":920,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{}}}],["referencing",{"_index":2811,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["refernced",{"_index":3090,"title":{},"body":{"changelog.html":{}}}],["reforgandata",{"_index":2650,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["reforgans",{"_index":2654,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["reforgans.has(node.reference_organ",{"_index":2662,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["refresh",{"_index":1764,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/HeaderComponent.html":{},"changelog.html":{}}}],["refreshclicked",{"_index":1867,"title":{},"body":{"components/HeaderComponent.html":{}}}],["refreshes",{"_index":1750,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["refreshfilters",{"_index":1733,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["regions",{"_index":3368,"title":{},"body":{"changelog.html":{}}}],["register",{"_index":1220,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"dependencies.html":{}}}],["registered",{"_index":1224,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["registericon",{"_index":1930,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registericon(definition",{"_index":1927,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registericonimpl",{"_index":1956,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registericonimpl(definition",{"_index":1931,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registering",{"_index":1907,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registers",{"_index":1924,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registration",{"_index":1213,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{},"index.html":{}}}],["registrations",{"_index":3158,"title":{},"body":{"changelog.html":{}}}],["registry",{"_index":1914,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["registry.state",{"_index":2698,"title":{},"body":{"modules/StoreModule.html":{}}}],["registry.state.ts",{"_index":1906,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"coverage.html":{}}}],["registry.state.ts:114",{"_index":1962,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:134",{"_index":1960,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:43",{"_index":1958,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:74",{"_index":1963,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry.state.ts:84",{"_index":1964,"title":{},"body":{"injectables/IconRegistryState.html":{}}}],["registry/default",{"_index":1205,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["registry/icon",{"_index":1905,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules/StoreModule.html":{},"coverage.html":{}}}],["registry[methodname",{"_index":1939,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["regular",{"_index":1171,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["related",{"_index":3196,"title":{},"body":{"changelog.html":{}}}],["relative",{"_index":874,"title":{},"body":{"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{}}}],["release",{"_index":3050,"title":{},"body":{"changelog.html":{}}}],["relevant",{"_index":2512,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["reliability",{"_index":3234,"title":{},"body":{"changelog.html":{}}}],["reload",{"_index":2944,"title":{},"body":{"components/ViewerComponent.html":{}}}],["reloads",{"_index":3126,"title":{},"body":{"changelog.html":{}}}],["rem",{"_index":1767,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["remoteapiendpoint",{"_index":458,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["remove",{"_index":605,"title":{},"body":{"components/CheckboxComponent.html":{},"injectables/ThemingService.html":{}}}],["removebox",{"_index":1791,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["removeclass",{"_index":2773,"title":{},"body":{"injectables/ThemingService.html":{}}}],["removed",{"_index":3110,"title":{},"body":{"changelog.html":{}}}],["removes",{"_index":2737,"title":{},"body":{"injectables/ThemingService.html":{},"changelog.html":{}}}],["render",{"_index":1799,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["renderer",{"_index":2767,"title":{},"body":{"injectables/ThemingService.html":{}}}],["renderer2",{"_index":2755,"title":{},"body":{"injectables/ThemingService.html":{}}}],["renderer[methodname](overlay",{"_index":2775,"title":{},"body":{"injectables/ThemingService.html":{}}}],["renderer[methodname](root",{"_index":2774,"title":{},"body":{"injectables/ThemingService.html":{}}}],["rendering",{"_index":2482,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["repeat",{"_index":1881,"title":{},"body":{"components/HeaderComponent.html":{}}}],["replay",{"_index":1076,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["replaysubject",{"_index":144,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["replaysubject(1",{"_index":243,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["replaysubject>(1",{"_index":1108,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["repository",{"_index":1089,"title":{},"body":{"interfaces/DataStateModel.html":{},"index.html":{}}}],["required",{"_index":3278,"title":{},"body":{"changelog.html":{}}}],["reset",{"_index":19,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"overview.html":{}}}],["resets",{"_index":312,"title":{},"body":{"interfaces/AppOptions.html":{},"components/HeaderComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["resettheme",{"_index":2730,"title":{},"body":{"injectables/ThemingService.html":{}}}],["resetview",{"_index":332,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["resolve",{"_index":1969,"title":{},"body":{"classes/InitializationState.html":{}}}],["resolved",{"_index":3181,"title":{},"body":{"changelog.html":{}}}],["resolves",{"_index":821,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["respond",{"_index":3142,"title":{},"body":{"changelog.html":{}}}],["responsible",{"_index":2370,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["restriction",{"_index":3593,"title":{},"body":{"license.html":{}}}],["result",{"_index":109,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["result.ts",{"_index":2122,"title":{},"body":{"interfaces/ListResult.html":{},"coverage.html":{}}}],["resultlabel",{"_index":2496,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["results",{"_index":111,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"dependencies.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"index.html":{},"license.html":{},"modules.html":{},"overview.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["results.state",{"_index":167,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{}}}],["results.state.ts",{"_index":2124,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"coverage.html":{}}}],["results.state.ts:30",{"_index":2153,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:31",{"_index":2151,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:35",{"_index":2149,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:38",{"_index":2133,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:58",{"_index":2146,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:62",{"_index":2144,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:66",{"_index":2138,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:70",{"_index":2140,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:74",{"_index":2147,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results.state.ts:81",{"_index":2142,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["results/list",{"_index":166,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{}}}],["results_browser",{"_index":2538,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["resultsbrowser",{"_index":2481,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["resultsbrowsercomponent",{"_index":539,"title":{"components/ResultsBrowserComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["resultsbrowseritems",{"_index":2487,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["resultsbrowsermodule",{"_index":15,"title":{"modules/ResultsBrowserModule.html":{}},"body":{"modules/AppModule.html":{},"modules/ResultsBrowserModule.html":{},"modules.html":{},"overview.html":{}}}],["return",{"_index":226,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["returns",{"_index":33,"title":{},"body":{"modules/AppModule.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{}}}],["reuse",{"_index":1170,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["reverse",{"_index":1768,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["rgb",{"_index":678,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"dependencies.html":{}}}],["rgba",{"_index":665,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["rgba(0",{"_index":1414,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["rgba[3",{"_index":695,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"miscellaneous/variables.html":{}}}],["right",{"_index":321,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["right.closeexpanded",{"_index":329,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["right.open",{"_index":328,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["right.px",{"_index":895,"title":{},"body":{"components/ContentComponent.html":{}}}],["right.svg",{"_index":1242,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["rightmargin",{"_index":888,"title":{},"body":{"components/ContentComponent.html":{}}}],["rights",{"_index":3595,"title":{},"body":{"license.html":{}}}],["ripple",{"_index":1394,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["root",{"_index":38,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["root'},{'name",{"_index":511,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["root_states",{"_index":2701,"title":{},"body":{"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["rootelement",{"_index":407,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["rootnode",{"_index":2372,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["rotates",{"_index":3128,"title":{},"body":{"changelog.html":{}}}],["round",{"_index":3220,"title":{},"body":{"changelog.html":{}}}],["rounded",{"_index":3237,"title":{},"body":{"changelog.html":{}}}],["row",{"_index":643,"title":{},"body":{"components/CheckboxComponent.html":{},"components/FiltersContentComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["ru/common",{"_index":3445,"title":{},"body":{"dependencies.html":{}}}],["ru/common/typings",{"_index":2407,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["ru/common/typings/immutability",{"_index":667,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ResultsBrowserComponent.html":{}}}],["rui",{"_index":3006,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["rui_locations.jsonld",{"_index":3004,"title":{},"body":{"changelog.html":{}}}],["run",{"_index":790,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["running",{"_index":1060,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/enumerations.html":{}}}],["runtime",{"_index":1212,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{}}}],["rxjs",{"_index":145,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/ToggleButtonComponent.html":{},"dependencies.html":{}}}],["rxjs/operators",{"_index":149,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{}}}],["safedef",{"_index":1920,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["safehtml",{"_index":1908,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["saferesourceurl",{"_index":1909,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["safeurl",{"_index":2932,"title":{},"body":{"components/ViewerComponent.html":{}}}],["sample",{"_index":2778,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["samples",{"_index":2928,"title":{},"body":{"components/ViewerComponent.html":{},"changelog.html":{}}}],["sanitize",{"_index":1917,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["sanitized",{"_index":1215,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/ViewerComponent.html":{}}}],["sanitizer",{"_index":1916,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["sanitizer.bypasssecuritytrusthtml(html",{"_index":1922,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["sanitizer.bypasssecuritytrustresourceurl(url",{"_index":1921,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{}}}],["sans",{"_index":1894,"title":{},"body":{"components/HeaderComponent.html":{}}}],["sass:math",{"_index":1699,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["saved",{"_index":1754,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["saver",{"_index":3495,"title":{},"body":{"dependencies.html":{}}}],["scaffolding",{"_index":3340,"title":{},"body":{"changelog.html":{}}}],["scene",{"_index":256,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["scene.filter(node",{"_index":2658,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scene/scene.state",{"_index":2699,"title":{},"body":{"modules/StoreModule.html":{}}}],["scenedata",{"_index":1127,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["scenedata(filter",{"_index":1196,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["scenedataquerystatus",{"_index":1099,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["scenenodeclicked",{"_index":2571,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scenenodeclicked(undefined",{"_index":2579,"title":{},"body":{"injectables/SceneState.html":{}}}],["scenenodehovered",{"_index":2572,"title":{},"body":{"injectables/SceneState.html":{}}}],["scenenodehovered(node",{"_index":2584,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scenenodeunhover",{"_index":2573,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["scenestate",{"_index":168,"title":{"injectables/SceneState.html":{}},"body":{"interfaces/AppOptions.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["scenestatemodel",{"_index":2610,"title":{"interfaces/SceneStateModel.html":{}},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"coverage.html":{}}}],["scheduled",{"_index":3182,"title":{},"body":{"changelog.html":{}}}],["schema",{"_index":3343,"title":{},"body":{"changelog.html":{}}}],["scheme",{"_index":302,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["schemes",{"_index":3306,"title":{},"body":{"changelog.html":{}}}],["science",{"_index":3573,"title":{},"body":{"index.html":{}}}],["scroll",{"_index":2530,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["scrollbar",{"_index":2357,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["scrolled",{"_index":2532,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["scrollheight",{"_index":2544,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["scrolling",{"_index":878,"title":{},"body":{"components/ContainerComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["scrollingmodule",{"_index":2563,"title":{},"body":{"modules/ResultsBrowserModule.html":{}}}],["scrolltop",{"_index":2545,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["search",{"_index":2271,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["search'},{'name",{"_index":534,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["search.component",{"_index":2367,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["search.component.html",{"_index":2273,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.scss",{"_index":2272,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts",{"_index":2268,"title":{},"body":{"components/OntologySearchComponent.html":{},"coverage.html":{}}}],["search.component.ts:107",{"_index":2307,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:23",{"_index":2289,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:29",{"_index":2290,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:34",{"_index":2319,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:40",{"_index":2317,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:45",{"_index":2286,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:53",{"_index":2322,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:60",{"_index":2301,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:78",{"_index":2295,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:88",{"_index":2311,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.component.ts:98",{"_index":2315,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.detached",{"_index":2354,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["search.module",{"_index":2263,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{}}}],["search.module.ts",{"_index":2361,"title":{},"body":{"modules/OntologySearchModule.html":{}}}],["search.service",{"_index":2326,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["search.service.ts",{"_index":2369,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["search.service.ts:100",{"_index":2393,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:111",{"_index":2383,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:128",{"_index":2389,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:30",{"_index":2406,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:31",{"_index":2405,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:34",{"_index":2402,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:37",{"_index":2404,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:39",{"_index":2399,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:50",{"_index":2379,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search.service.ts:63",{"_index":2395,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["search/ontology",{"_index":2262,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["searched",{"_index":2304,"title":{},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searches",{"_index":2380,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searching",{"_index":2270,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["searchresult",{"_index":2294,"title":{"interfaces/SearchResult.html":{}},"body":{"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"coverage.html":{}}}],["searchresults",{"_index":2416,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchresults.get(node.id",{"_index":2420,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchresults.set(node.id",{"_index":2421,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchservice",{"_index":2287,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["searchvalue",{"_index":2382,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["searchvalue.length",{"_index":2431,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["section",{"_index":548,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"coverage.html":{}}}],["section.description",{"_index":1378,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["section.label",{"_index":1377,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["section.sectionnumber",{"_index":2883,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["sectionnumber",{"_index":2881,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["sectionnumber).length",{"_index":2884,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["sections",{"_index":2874,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["see",{"_index":3106,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["select",{"_index":1506,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/ResultsBrowserComponent.html":{},"changelog.html":{}}}],["selectable",{"_index":1430,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["selected",{"_index":354,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["selected(ontologynode",{"_index":2457,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selectedanatomicalstructures",{"_index":2611,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["selectedorgans",{"_index":2649,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["selectedreferenceorgans",{"_index":2570,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["selecting",{"_index":1476,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["selection",{"_index":158,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["selection'},{'name",{"_index":536,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["selection.component",{"_index":2472,"title":{},"body":{"modules/OntologySelectionModule.html":{}}}],["selection.component.html",{"_index":2441,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.scss",{"_index":2440,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts",{"_index":2438,"title":{},"body":{"components/OntologySelectionComponent.html":{},"coverage.html":{}}}],["selection.component.ts:23",{"_index":2462,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:28",{"_index":2448,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:33",{"_index":2452,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:38",{"_index":2453,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:45",{"_index":2450,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:47",{"_index":2447,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:48",{"_index":2451,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:53",{"_index":2446,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:61",{"_index":2460,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:64",{"_index":2456,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.component.ts:75",{"_index":2458,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["selection.id",{"_index":362,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selection.label",{"_index":378,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selection.module",{"_index":2265,"title":{},"body":{"modules/OntologyExplorationModule.html":{}}}],["selection.module.ts",{"_index":2471,"title":{},"body":{"modules/OntologySelectionModule.html":{}}}],["selection.ts",{"_index":2436,"title":{},"body":{"interfaces/OntologySelection.html":{},"coverage.html":{}}}],["selection/deselection",{"_index":2524,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["selection/ontology",{"_index":2264,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"coverage.html":{}}}],["selectionchange",{"_index":571,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["selectionchanged",{"_index":1472,"title":{},"body":{"components/DropdownComponent.html":{}}}],["selectionchanged(value",{"_index":1482,"title":{},"body":{"components/DropdownComponent.html":{}}}],["selectionlabel",{"_index":204,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selections",{"_index":563,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["selectionstring",{"_index":376,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["selectlistresult",{"_index":2129,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["selectlistresult(result",{"_index":2143,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["selector",{"_index":182,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["selectors",{"_index":2815,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["selects",{"_index":1352,"title":{},"body":{"components/DonorCardComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{}}}],["selecttoken",{"_index":1310,"title":{},"body":{"injectables/DelegateDataSourceService.html":{}}}],["selecttoken(config",{"_index":1307,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["sell",{"_index":3602,"title":{},"body":{"license.html":{}}}],["semantic",{"_index":3364,"title":{},"body":{"changelog.html":{}}}],["send",{"_index":777,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/functions.html":{}}}],["sendcompletedto",{"_index":3410,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["sendcompletedto(subject",{"_index":1070,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["sendcompletedto(this._aggregatedataquerystatus",{"_index":1118,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._celltypetermoccurencesdataquerystatus",{"_index":1126,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._ontologytermoccurencesdataquerystatus",{"_index":1123,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._providerfilterquerystatus",{"_index":1137,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._scenedataquerystatus",{"_index":1129,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._technologyfilterquerystatus",{"_index":1133,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sendcompletedto(this._tissueblockdataquerystatus",{"_index":1114,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sender",{"_index":2193,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["sending",{"_index":2096,"title":{},"body":{"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["sending/receiving",{"_index":2067,"title":{},"body":{"classes/InitializationState.html":{}}}],["sendmessage",{"_index":2240,"title":{},"body":{"classes/MessageChannel.html":{}}}],["sendmessage(payload",{"_index":2209,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["sends",{"_index":1067,"title":{},"body":{"interfaces/DataStateModel.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"miscellaneous/functions.html":{}}}],["sendtoggle",{"_index":2097,"title":{},"body":{"classes/InitializationState.html":{}}}],["sennet",{"_index":3026,"title":{},"body":{"changelog.html":{}}}],["sent",{"_index":969,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/typealiases.html":{}}}],["serif",{"_index":1895,"title":{},"body":{"components/HeaderComponent.html":{}}}],["server",{"_index":3346,"title":{},"body":{"changelog.html":{}}}],["service",{"_index":577,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["service.initialize(location",{"_index":2758,"title":{},"body":{"injectables/ThemingService.html":{}}}],["services/data",{"_index":1008,"title":{},"body":{"modules/CoreModule.html":{}}}],["services/message/message.service",{"_index":973,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{}}}],["services/theming/theming.module",{"_index":1011,"title":{},"body":{"modules/CoreModule.html":{}}}],["set",{"_index":291,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"components/ResultsBrowserComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["set(['skin",{"_index":2609,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["set(reforgandata.filter(o",{"_index":2655,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["set(reforgans.map(o",{"_index":2634,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["set(selectedorgans.map(o",{"_index":2652,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setlistresults",{"_index":2130,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["setlistresults(@payload('listresults",{"_index":2161,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["setlistresults(listresults",{"_index":2145,"title":{},"body":{"injectables/ListResultsState.html":{}}}],["setreferenceorgans",{"_index":2574,"title":{},"body":{"injectables/SceneState.html":{}}}],["setreferenceorgans(@payload('referenceorgans",{"_index":2615,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setreferenceorgans(referenceorgans",{"_index":2587,"title":{},"body":{"injectables/SceneState.html":{}}}],["setrootelement",{"_index":411,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["setrootelement(el",{"_index":414,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["sets",{"_index":295,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"injectables/ThemingService.html":{}}}],["setscene",{"_index":2575,"title":{},"body":{"injectables/SceneState.html":{}}}],["setscene(@payload('scene",{"_index":2616,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setscene(scene",{"_index":2591,"title":{},"body":{"injectables/SceneState.html":{}}}],["setselectedreferenceorgans",{"_index":2576,"title":{},"body":{"injectables/SceneState.html":{}}}],["setselectedreferenceorgans(@payload('selectedreferenceorgans",{"_index":2614,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["setselectedreferenceorgans(selectedreferenceorgans",{"_index":2594,"title":{},"body":{"injectables/SceneState.html":{}}}],["settheme",{"_index":2731,"title":{},"body":{"injectables/ThemingService.html":{}}}],["settheme(theme",{"_index":2749,"title":{},"body":{"injectables/ThemingService.html":{}}}],["settimeout",{"_index":2069,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["setting",{"_index":2712,"title":{},"body":{"modules/StoreModule.html":{}}}],["settings",{"_index":1730,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{}}}],["settreemodel",{"_index":2378,"title":{},"body":{"injectables/OntologySearchService.html":{}}}],["settreemodel(treemodel",{"_index":2398,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["setup",{"_index":3154,"title":{},"body":{"changelog.html":{}}}],["sex",{"_index":1044,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["sexes",{"_index":3267,"title":{},"body":{"changelog.html":{}}}],["shadow",{"_index":1056,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["shall",{"_index":3609,"title":{},"body":{"license.html":{}}}],["shared",{"_index":66,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"modules/OntologyTreeModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["shared/analytics",{"_index":141,"title":{},"body":{"interfaces/AppOptions.html":{},"modules/CoreModule.html":{}}}],["shared/components/checkbox/checkbox.module",{"_index":1782,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["shared/components/drawer/drawer.module",{"_index":80,"title":{},"body":{"modules/AppModule.html":{}}}],["shared/components/drawer/drawer/drawer.component",{"_index":173,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["shared/components/dropdown/dropdown.module",{"_index":1783,"title":{},"body":{"modules/FiltersContentModule.html":{}}}],["shared/components/dual",{"_index":81,"title":{},"body":{"modules/AppModule.html":{},"modules/FiltersContentModule.html":{}}}],["shared/components/spinner",{"_index":84,"title":{},"body":{"modules/AppModule.html":{}}}],["shared/components/thumbnail",{"_index":1451,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["shared/components/viewer/viewer.module",{"_index":87,"title":{},"body":{"modules/AppModule.html":{}}}],["shared/src/lib/components/body",{"_index":151,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["shared/web",{"_index":479,"title":{},"body":{"components/AppWebComponent.html":{}}}],["sharereplay",{"_index":148,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["sharing",{"_index":1075,"title":{},"body":{"interfaces/DataStateModel.html":{},"miscellaneous/functions.html":{}}}],["shortest",{"_index":3501,"title":{},"body":{"dependencies.html":{}}}],["show",{"_index":1544,"title":{},"body":{"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["showing",{"_index":3292,"title":{},"body":{"changelog.html":{}}}],["shown",{"_index":1630,"title":{},"body":{"components/DualSliderComponent.html":{},"changelog.html":{}}}],["shows",{"_index":3076,"title":{},"body":{"changelog.html":{}}}],["side",{"_index":921,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["sides",{"_index":3268,"title":{},"body":{"changelog.html":{}}}],["significant",{"_index":3147,"title":{},"body":{"changelog.html":{}}}],["simple",{"_index":3099,"title":{},"body":{"changelog.html":{}}}],["simplechanges",{"_index":1603,"title":{},"body":{"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ViewerComponent.html":{}}}],["simplifies",{"_index":3153,"title":{},"body":{"changelog.html":{}}}],["single",{"_index":2208,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["site",{"_index":1860,"title":{},"body":{"components/HeaderComponent.html":{},"components/ViewerComponent.html":{}}}],["sites",{"_index":3083,"title":{},"body":{"changelog.html":{}}}],["sizable",{"_index":3232,"title":{},"body":{"changelog.html":{}}}],["size",{"_index":904,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["skin",{"_index":1270,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["skin.svg",{"_index":1271,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["skipself",{"_index":999,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["slide",{"_index":2828,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slideinhorizontaldropdown",{"_index":1496,"title":{},"body":{"components/DropdownComponent.html":{}}}],["slideinhorizontalslider",{"_index":1707,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider",{"_index":1545,"title":{},"body":{"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"dependencies.html":{}}}],["slider's",{"_index":1612,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider'},{'name",{"_index":527,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["slider.component",{"_index":1725,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["slider.component.html",{"_index":1548,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.scss",{"_index":1547,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts",{"_index":1543,"title":{},"body":{"components/DualSliderComponent.html":{},"coverage.html":{}}}],["slider.component.ts:122",{"_index":1604,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:136",{"_index":1619,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:152",{"_index":1606,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:165",{"_index":1587,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:184",{"_index":1623,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:201",{"_index":1621,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:212",{"_index":1600,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:226",{"_index":1617,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:23",{"_index":1640,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:243",{"_index":1611,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:29",{"_index":1636,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:34",{"_index":1575,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:39",{"_index":1579,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:44",{"_index":1577,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:49",{"_index":1582,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:54",{"_index":1629,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:59",{"_index":1632,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:64",{"_index":1631,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:69",{"_index":1626,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:74",{"_index":1625,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:79",{"_index":1642,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:90",{"_index":1633,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.component.ts:95",{"_index":1571,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.detached",{"_index":1709,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider.module",{"_index":83,"title":{},"body":{"modules/AppModule.html":{},"modules/FiltersContentModule.html":{}}}],["slider.module.ts",{"_index":1721,"title":{},"body":{"modules/DualSliderModule.html":{}}}],["slider.wrapper",{"_index":1701,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slider/dual",{"_index":82,"title":{},"body":{"modules/AppModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"coverage.html":{}}}],["slidervaluechanged",{"_index":1563,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["slidesoffsetafter",{"_index":2803,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slidesoffsetbefore",{"_index":2801,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slidesperview",{"_index":2804,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["slightly",{"_index":3057,"title":{},"body":{"changelog.html":{}}}],["slow",{"_index":3165,"title":{},"body":{"changelog.html":{}}}],["small",{"_index":1272,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["snackbar",{"_index":257,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["snackbar.dismiss",{"_index":288,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["snapshot",{"_index":1168,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["software",{"_index":3550,"title":{},"body":{"index.html":{},"license.html":{}}}],["solid",{"_index":1525,"title":{},"body":{"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["solved",{"_index":3226,"title":{},"body":{"changelog.html":{}}}],["sometimes",{"_index":3283,"title":{},"body":{"changelog.html":{}}}],["soon",{"_index":3021,"title":{},"body":{"changelog.html":{}}}],["sop",{"_index":3161,"title":{},"body":{"changelog.html":{}}}],["sortby",{"_index":2155,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{}}}],["sortby(searchresults",{"_index":2336,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortby(topblocks",{"_index":2184,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["sortbysynonymresult",{"_index":2281,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortbysynonymresult(this",{"_index":2310,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortlexically",{"_index":2282,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sortlexically(this",{"_index":2314,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sorts",{"_index":2312,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["source",{"_index":22,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"modules/CheckboxModule.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"modules/CoreModule.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"modules/DropdownModule.html":{},"components/DualSliderComponent.html":{},"modules/DualSliderModule.html":{},"components/FiltersContentComponent.html":{},"modules/FiltersContentModule.html":{},"components/FiltersPopoverComponent.html":{},"modules/FiltersPopoverModule.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"modules/HeaderModule.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/OntologyExplorationModule.html":{},"components/OntologySearchComponent.html":{},"modules/OntologySearchModule.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"components/ResultsBrowserComponent.html":{},"modules/ResultsBrowserModule.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"modules/StoreModule.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"injectables/WorkerDataSourceService.html":{}}}],["source.getcelltypetermoccurences().pipe(take(1)).subscribe(celltypetermsfulldata",{"_index":1175,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["source.getontologytermoccurences().pipe(take(1)).subscribe(ontologytermsfulldata",{"_index":1174,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["source.pipe",{"_index":1085,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["source.service",{"_index":1010,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["source.service.ts",{"_index":1299,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["source.service.ts:10",{"_index":2967,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.service.ts:18",{"_index":2969,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.service.ts:20",{"_index":1311,"title":{},"body":{"injectables/DelegateDataSourceService.html":{}}}],["source.service.ts:23",{"_index":2972,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.worker",{"_index":2978,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["source.worker.ts",{"_index":3399,"title":{},"body":{"coverage.html":{},"miscellaneous/variables.html":{}}}],["source/data",{"_index":1009,"title":{},"body":{"modules/CoreModule.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"coverage.html":{},"miscellaneous/variables.html":{}}}],["source/worker",{"_index":2960,"title":{},"body":{"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["sources",{"_index":494,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{}}}],["sources.includes(msg.source",{"_index":2222,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["space",{"_index":1441,"title":{},"body":{"components/DonorCardComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["spacebetween",{"_index":2805,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["sparc",{"_index":3157,"title":{},"body":{"changelog.html":{}}}],["spatialscenenode",{"_index":1032,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["spec",{"_index":3063,"title":{},"body":{"changelog.html":{}}}],["specific",{"_index":989,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["specified",{"_index":2220,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["specifying",{"_index":2202,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["speed",{"_index":3233,"title":{},"body":{"changelog.html":{}}}],["spinner",{"_index":231,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{}}}],["spinneractive",{"_index":233,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["spinneroverlaycomponent",{"_index":541,"title":{"components/SpinnerOverlayComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"modules/SpinnerOverlayModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["spinneroverlaymodule",{"_index":16,"title":{"modules/SpinnerOverlayModule.html":{}},"body":{"modules/AppModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules.html":{},"overview.html":{}}}],["spinning",{"_index":3344,"title":{},"body":{"changelog.html":{}}}],["spleen",{"_index":1273,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"miscellaneous/variables.html":{}}}],["spleen.svg",{"_index":1274,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["sprint",{"_index":3185,"title":{},"body":{"changelog.html":{}}}],["stage",{"_index":3213,"title":{},"body":{"changelog.html":{}}}],["staging",{"_index":3032,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["standalone",{"_index":3222,"title":{},"body":{"changelog.html":{}}}],["standard",{"_index":3272,"title":{},"body":{"changelog.html":{}}}],["standards",{"_index":3348,"title":{},"body":{"changelog.html":{}}}],["star2",{"_index":3554,"title":{},"body":{"index.html":{}}}],["start",{"_index":840,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["start?.expanded",{"_index":954,"title":{},"body":{"components/ContentComponent.html":{}}}],["start?.opened",{"_index":953,"title":{},"body":{"components/ContentComponent.html":{}}}],["startdrawers",{"_index":863,"title":{},"body":{"components/ContainerComponent.html":{}}}],["startdrawers.length",{"_index":867,"title":{},"body":{"components/ContainerComponent.html":{}}}],["startdrawers[0",{"_index":871,"title":{},"body":{"components/ContainerComponent.html":{}}}],["started",{"_index":2989,"title":{"changelog.html":{},"index.html":{},"license.html":{}},"body":{"changelog.html":{}}}],["startexpanded",{"_index":952,"title":{},"body":{"components/ContentComponent.html":{}}}],["starts",{"_index":3384,"title":{},"body":{"changelog.html":{}}}],["startup",{"_index":1210,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["startwith",{"_index":827,"title":{},"body":{"components/ContainerComponent.html":{},"components/OntologySearchComponent.html":{}}}],["stat",{"_index":2550,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["stat.count",{"_index":2548,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["stat.label",{"_index":2549,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["state",{"_index":236,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/ToggleButtonComponent.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/typealiases.html":{}}}],["state('closed",{"_index":2009,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('collapsed",{"_index":2014,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('extended",{"_index":2018,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('false",{"_index":930,"title":{},"body":{"components/ContentComponent.html":{}}}],["state('full",{"_index":2019,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('half",{"_index":2015,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('open",{"_index":2008,"title":{},"body":{"classes/InitializationState.html":{}}}],["state('true",{"_index":932,"title":{},"body":{"components/ContentComponent.html":{}}}],["state.nodes[state.root",{"_index":2403,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["statechange",{"_index":2040,"title":{},"body":{"classes/InitializationState.html":{}}}],["statements",{"_index":3386,"title":{},"body":{"coverage.html":{}}}],["staterepository",{"_index":670,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["states",{"_index":914,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"modules/StoreModule.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["states.every(state",{"_index":1066,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["static",{"_index":190,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySelectionComponent.html":{},"injectables/ThemingService.html":{}}}],["stats",{"_index":2483,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["status",{"_index":1138,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{}}}],["stay",{"_index":3382,"title":{},"body":{"changelog.html":{}}}],["step",{"_index":1673,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["still",{"_index":1798,"title":{},"body":{"components/FiltersPopoverComponent.html":{},"changelog.html":{}}}],["stomach",{"_index":1275,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["stomach.svg",{"_index":1276,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["store",{"_index":351,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"modules/StoreModule.html":{}}}],["store/store.module",{"_index":1012,"title":{},"body":{"modules/CoreModule.html":{}}}],["storemodule",{"_index":994,"title":{"modules/StoreModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/StoreModule.html":{},"modules.html":{},"overview.html":{}}}],["stories",{"_index":3337,"title":{},"body":{"changelog.html":{}}}],["strange",{"_index":2702,"title":{},"body":{"modules/StoreModule.html":{}}}],["stream",{"_index":3527,"title":{},"body":{"dependencies.html":{}}}],["streaming",{"_index":3525,"title":{},"body":{"dependencies.html":{}}}],["string",{"_index":127,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/functions.html":{}}}],["stroke",{"_index":629,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["structure",{"_index":3192,"title":{},"body":{"changelog.html":{}}}],["structures",{"_index":359,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["style",{"_index":925,"title":{},"body":{"components/ContentComponent.html":{},"components/DropdownComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["style.margin",{"_index":893,"title":{},"body":{"components/ContentComponent.html":{}}}],["styled",{"_index":1882,"title":{},"body":{"components/HeaderComponent.html":{}}}],["styles",{"_index":556,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["styles.getpropertyvalue(property",{"_index":2063,"title":{},"body":{"classes/InitializationState.html":{}}}],["styleurls",{"_index":185,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["styling",{"_index":3096,"title":{},"body":{"changelog.html":{}}}],["sub",{"_index":181,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"miscellaneous/typealiases.html":{}}}],["subject",{"_index":679,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"miscellaneous/functions.html":{},"license.html":{}}}],["subject.next(dataquerystate.completed",{"_index":1071,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["sublicense",{"_index":3600,"title":{},"body":{"license.html":{}}}],["subscribe",{"_index":2188,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["subscription",{"_index":817,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["subscriptions",{"_index":766,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["substantial",{"_index":3611,"title":{},"body":{"license.html":{}}}],["successful",{"_index":1925,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["such",{"_index":1592,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["suffix",{"_index":2387,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["super",{"_index":1159,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["super(configstore",{"_index":495,"title":{},"body":{"components/AppWebComponent.html":{}}}],["super(globalconfig",{"_index":2974,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["super._createcontainer",{"_index":439,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["super.ngxsoninit",{"_index":2164,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["support",{"_index":2997,"title":{},"body":{"changelog.html":{},"modules.html":{}}}],["svg",{"_index":1219,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"modules.html":{}}}],["swiper",{"_index":2808,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"dependencies.html":{}}}],["swiper.use([navigation",{"_index":2858,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiper/angular",{"_index":2854,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiper/core",{"_index":2855,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiper/types",{"_index":2831,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["swipermodule",{"_index":2853,"title":{},"body":{"modules/ThumbnailCarouselModule.html":{}}}],["swiperoptions",{"_index":2799,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["switch",{"_index":937,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["switched",{"_index":3239,"title":{},"body":{"changelog.html":{}}}],["switchmap",{"_index":1040,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{}}}],["switchmap(query",{"_index":1086,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["switchmap(value",{"_index":2333,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["sync",{"_index":3129,"title":{},"body":{"changelog.html":{}}}],["syncexpanded(other",{"_index":2105,"title":{},"body":{"classes/InitializationState.html":{}}}],["syncs",{"_index":2102,"title":{},"body":{"classes/InitializationState.html":{}}}],["synonym",{"_index":2386,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["synonyms",{"_index":2313,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["t",{"_index":1083,"title":{},"body":{"interfaces/DataStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["tab",{"_index":388,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["table",{"_index":3444,"title":{},"body":{"coverage.html":{}}}],["tables",{"_index":3048,"title":{},"body":{"changelog.html":{}}}],["tablesort(document.getelementbyid('coverage",{"_index":3443,"title":{},"body":{"coverage.html":{}}}],["tagging",{"_index":3270,"title":{},"body":{"changelog.html":{}}}],["take",{"_index":1041,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["take(1",{"_index":2639,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["takewhile",{"_index":2197,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["tap",{"_index":1042,"title":{},"body":{"interfaces/DataStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["tap(next",{"_index":1087,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tap(organs",{"_index":2640,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["tap(results",{"_index":2186,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tap(scene",{"_index":2669,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["target",{"_index":1594,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["technologies",{"_index":1052,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["technology",{"_index":1130,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{}}}],["technologyfilter",{"_index":1146,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["technologyfilterdata",{"_index":1131,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["technologyfilterquerystatus",{"_index":1101,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["technologyfilters",{"_index":1736,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["telemetry",{"_index":3123,"title":{},"body":{"changelog.html":{}}}],["tells",{"_index":609,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["template",{"_index":449,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["templateurl",{"_index":183,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["term",{"_index":1119,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["termdata",{"_index":2444,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["terms",{"_index":1106,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/OntologySelectionComponent.html":{}}}],["test",{"_index":1064,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["testing",{"_index":1062,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/functions.html":{}}}],["text",{"_index":1404,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["theme",{"_index":95,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"injectables/ThemingService.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["thememode",{"_index":242,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["themes",{"_index":3025,"title":{},"body":{"changelog.html":{}}}],["theming",{"_index":255,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/ThemingService.html":{},"changelog.html":{}}}],["theming.initialize(el",{"_index":262,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["theming.service",{"_index":2722,"title":{},"body":{"modules/ThemingModule.html":{}}}],["themingmodule",{"_index":995,"title":{"modules/ThemingModule.html":{}},"body":{"modules/CoreModule.html":{},"modules/ThemingModule.html":{},"modules.html":{},"overview.html":{}}}],["themingservice",{"_index":159,"title":{"injectables/ThemingService.html":{}},"body":{"interfaces/AppOptions.html":{},"modules/ThemingModule.html":{},"injectables/ThemingService.html":{},"coverage.html":{},"overview.html":{}}}],["themingservice.initialize",{"_index":2723,"title":{},"body":{"modules/ThemingModule.html":{}}}],["themselves",{"_index":2813,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["thick",{"_index":1283,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["thick.svg",{"_index":1284,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["thin",{"_index":1285,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"miscellaneous/variables.html":{}}}],["thin.svg",{"_index":1286,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["things",{"_index":2168,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this._aggregatedataquerystatus$.next(dataquerystate.completed",{"_index":1162,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._aggregatedataquerystatus$.next(dataquerystate.running",{"_index":1188,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._aggregatedataquerystatus$.pipe(distinct",{"_index":1140,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._celltypetermoccurencesdataquerystatus$.next(dataquerystate.completed",{"_index":1164,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._celltypetermoccurencesdataquerystatus$.next(dataquerystate.running",{"_index":1194,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._celltypetermoccurencesdataquerystatus$.pipe(distinct",{"_index":1144,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._containerelement",{"_index":440,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this._expanded",{"_index":2032,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._measuredmargin",{"_index":2061,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._measuredwidth",{"_index":2051,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._ontologytermoccurencesdataquerystatus$.next(dataquerystate.completed",{"_index":1163,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._ontologytermoccurencesdataquerystatus$.next(dataquerystate.running",{"_index":1191,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._ontologytermoccurencesdataquerystatus$.pipe(distinct",{"_index":1142,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._opened",{"_index":2028,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._position",{"_index":2024,"title":{},"body":{"classes/InitializationState.html":{}}}],["this._providerfilterquerystatus$.next(dataquerystate.completed",{"_index":1167,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._providerfilterquerystatus$.next(dataquerystate.running",{"_index":1201,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._providerfilterquerystatus$.pipe(distinct",{"_index":1149,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._scenedataquerystatus$.next(dataquerystate.completed",{"_index":1165,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._scenedataquerystatus$.next(dataquerystate.running",{"_index":1197,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._scenedataquerystatus$.pipe(distinct",{"_index":1145,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._technologyfilterquerystatus$.next(dataquerystate.completed",{"_index":1166,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._technologyfilterquerystatus$.next(dataquerystate.running",{"_index":1199,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._technologyfilterquerystatus$.pipe(distinct",{"_index":1147,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._tissueblockdataquerystatus$.next(dataquerystate.completed",{"_index":1161,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._tissueblockdataquerystatus$.next(dataquerystate.running",{"_index":1185,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this._tissueblockdataquerystatus$.pipe(distinct",{"_index":1139,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.aggregatedata",{"_index":1117,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.aggregatedataquerystatus",{"_index":1152,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.animationsenabled",{"_index":943,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.appendtoroot",{"_index":431,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.applyfilters.emit(this.filters",{"_index":1761,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.applythemeclass(theme",{"_index":2763,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.applythemeclass(this.gettheme",{"_index":2766,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.applythemeclass(this.theme",{"_index":2762,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.atscrollbottom",{"_index":2547,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.attached",{"_index":422,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.bodyui.bounds",{"_index":337,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.bodyui.rotation",{"_index":335,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.bodyui.rotationx",{"_index":336,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.bodyui.target",{"_index":333,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.cdr.markforcheck",{"_index":856,"title":{},"body":{"components/ContainerComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["this.celltypeselectionlabel",{"_index":365,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.celltypetermoccurencesdata",{"_index":1125,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.celltypetermoccurencesdataquerystatus",{"_index":1154,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.celltypeterms",{"_index":281,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.celltypetreemodel",{"_index":283,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.channel",{"_index":847,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.asobservable",{"_index":2229,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.closed",{"_index":2231,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.complete",{"_index":2234,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.next",{"_index":2210,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.channel.sendmessage",{"_index":853,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["this.checked.emit(this.selected",{"_index":1363,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.closeiframeviewer",{"_index":391,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.colorassignments",{"_index":2172,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.colorassignments.assigncolor(node['@id",{"_index":2625,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.colorassignments.assigncolor(result.tissueblock.spatialentityid",{"_index":2162,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.colorassignments.colorassignments",{"_index":2175,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.colorassignments.unassigncolor(result.tissueblock.spatialentityid",{"_index":2163,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.consentservice.consent",{"_index":290,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.content",{"_index":858,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content1.changes.pipe(startwith(null)).subscribe",{"_index":857,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content1.first",{"_index":844,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content1.length",{"_index":846,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.content2.first",{"_index":845,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.contentsvisible",{"_index":1685,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.createselectionlabel(ontologyselection",{"_index":364,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.ctx.patchstate",{"_index":735,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.data.querystatus$.pipe",{"_index":234,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.data.updatefilter",{"_index":360,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.dataservice.getreferenceorgans",{"_index":2646,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.dataservice.getreferenceorgans().pipe",{"_index":2631,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.datasource.getcelltypetreemodel().pipe(sharereplay(1",{"_index":284,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.datasource.getontologytreemodel().pipe(sharereplay(1",{"_index":280,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.datastate",{"_index":2170,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.datastate.scenedata",{"_index":2644,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.datastate.tissueblockdata",{"_index":2174,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.datastate.updatefilter",{"_index":2624,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.defaulttheme",{"_index":2760,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.deferred",{"_index":2002,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.drawer",{"_index":2918,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["this.drawer.position",{"_index":2916,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["this.drawers",{"_index":940,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.drawers.changes.pipe(startwith(null)).subscribe",{"_index":851,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.drawers.toarray",{"_index":862,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.element",{"_index":2765,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.element.nativeelement",{"_index":2052,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.expanded",{"_index":1364,"title":{},"body":{"components/DonorCardComponent.html":{},"classes/InitializationState.html":{}}}],["this.expandedchange.emit(this.expanded",{"_index":2094,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.expandedstate",{"_index":2075,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.expandedstate2",{"_index":2045,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.faded",{"_index":958,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.filter$.pipe(querydata",{"_index":1112,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.filteredresults",{"_index":2330,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.filters",{"_index":1755,"title":{},"body":{"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{}}}],["this.filterschange.emit(filters",{"_index":1811,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["this.filterschange.emit(this.filters",{"_index":1759,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.filtersvisible",{"_index":1810,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["this.forcedunassignment.asobservable",{"_index":711,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.forcedunassignment.next",{"_index":726,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.formatlabel(node.label",{"_index":2423,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.formcontrol.reset",{"_index":2348,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.formcontrol.valuechanges",{"_index":2329,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.ga.event('expanded_toggled",{"_index":1365,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.ga.event('filter_added",{"_index":617,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["this.ga.event('filter_removed",{"_index":620,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["this.ga.event('filter_update",{"_index":1756,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.ga.event('filters_applied",{"_index":1760,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.ga.event('filters_reset",{"_index":1763,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["this.ga.event('link_clicked",{"_index":1366,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.ga.event('list_result_selected",{"_index":2537,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.ga.event('search",{"_index":2344,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.ga.event('selected_toggled",{"_index":1360,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.ga.event('selection_change",{"_index":1492,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.ga.event('slider_range_change",{"_index":1687,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.getarguments(definition",{"_index":1941,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.getindexofmatch(label",{"_index":2428,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.getindexofmatch(node.label",{"_index":2422,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.getmessages().pipe(filter(msg",{"_index":2219,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.getmethodname(definition",{"_index":1938,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.getstate().filter",{"_index":1182,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.getworkerurl(true",{"_index":2975,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["this.globalconfig.getoption('header",{"_index":244,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('homeurl",{"_index":245,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('logindisabled",{"_index":248,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('logotooltip",{"_index":246,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.getoption('theme",{"_index":241,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.globalconfig.snapshot.hubmaptoken",{"_index":400,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.handlemessage(msg",{"_index":850,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.highvalue",{"_index":1665,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.initialized",{"_index":2001,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initialized.set",{"_index":2068,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initialized.valueof",{"_index":2076,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initialized.wait",{"_index":2098,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.initializesliderpopover",{"_index":1686,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.injector",{"_index":106,"title":{},"body":{"modules/AppModule.html":{},"injectables/ThemingService.html":{}}}],["this.injector.get(colorassignmentstate",{"_index":2173,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.injector.get(datastate",{"_index":2171,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.injector.get(listresultsstate",{"_index":2629,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.issliderinitialized",{"_index":1683,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.isslideropen",{"_index":1684,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.label}:${lowvalue}:${highvalue",{"_index":1689,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.label}:${value",{"_index":1493,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.leftmargin",{"_index":950,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.linkclick.emit(url",{"_index":1367,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.linkclicked.emit(link",{"_index":2542,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.listresultdeselected.next(result",{"_index":2541,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.listresults",{"_index":2628,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresults.highlightednodeid",{"_index":2647,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresults.highlightnode(node['@id",{"_index":2626,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresults.unhighlightnode",{"_index":2627,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.listresultselected.next(result",{"_index":2540,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.loading",{"_index":2948,"title":{},"body":{"components/ViewerComponent.html":{}}}],["this.locator.prepareexternalurl('0",{"_index":2981,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["this.lookup(nodes",{"_index":2414,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.lowvalue",{"_index":1663,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.margin2",{"_index":2048,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.measuredmargin",{"_index":2047,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.measuredwidth",{"_index":2099,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.messages",{"_index":2228,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.messages.pipe(filter(msg",{"_index":2216,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.nextbuttonid",{"_index":2820,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["this.nextmessageid",{"_index":2211,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.nodes$.pipe",{"_index":2412,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.ontologysearchservice.settreemodel(this.treemodel",{"_index":2464,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["this.ontologyselectionlabel",{"_index":363,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.ontologyservice.filter(value",{"_index":2334,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.ontologytermoccurencesdata",{"_index":1122,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.ontologytermoccurencesdataquerystatus",{"_index":1153,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.ontologyterms",{"_index":272,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.ontologytreemodel",{"_index":279,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.opened",{"_index":2073,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.openedchange.emit(this.opened",{"_index":2090,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.openedstate",{"_index":2074,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.options",{"_index":1667,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.options.ceil",{"_index":1677,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.options.floor",{"_index":1676,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.optionschanged",{"_index":1659,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.optionsvisible",{"_index":1491,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.original.children.length",{"_index":1856,"title":{},"body":{"classes/FlatNode.html":{}}}],["this.original.label",{"_index":1855,"title":{},"body":{"classes/FlatNode.html":{}}}],["this.overlayref",{"_index":1655,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.overlayref.detach",{"_index":1682,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.overlayref.dispose",{"_index":1678,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.patchstate",{"_index":1179,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.position",{"_index":2023,"title":{},"body":{"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.prevbuttonid",{"_index":2818,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["this.providerfilterdata",{"_index":1136,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.providerfilterquerystatus",{"_index":1157,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.registericonimpl(definition",{"_index":1928,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.registericonimpl(safedef",{"_index":1923,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.registry",{"_index":1932,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["this.removebox",{"_index":1812,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["this.resetview",{"_index":331,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.resolve",{"_index":1974,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.resultlabel",{"_index":2539,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["this.rightmargin",{"_index":951,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.rootelement",{"_index":424,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.appendchild(this._containerelement",{"_index":441,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.removechild(this._containerelement",{"_index":423,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.style.display",{"_index":425,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.style.height",{"_index":429,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.rootelement.nativeelement.style.position",{"_index":427,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{}}}],["this.safeurl",{"_index":2947,"title":{},"body":{"components/ViewerComponent.html":{}}}],["this.scenedata",{"_index":1128,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.scenedataquerystatus",{"_index":1155,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.selected",{"_index":1359,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.selected.emit(node",{"_index":2347,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.selectedreferenceorgans",{"_index":2645,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.selection",{"_index":616,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["this.selection.filter(selection",{"_index":619,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["this.selectionchange.emit(this.selection",{"_index":621,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{}}}],["this.selectionchange.emit(value",{"_index":1494,"title":{},"body":{"components/DropdownComponent.html":{}}}],["this.selectionlabel",{"_index":366,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.sendtoggle",{"_index":2077,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.setlistresults(results",{"_index":2187,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.setreferenceorgans(organs",{"_index":2641,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.setscene(scene",{"_index":2670,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.setselectedreferenceorgans(organs.filter(organ",{"_index":2642,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.settheme(this.defaulttheme",{"_index":2764,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.snackbar.openfromcomponent(trackingpopupcomponent",{"_index":286,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.snapshot",{"_index":715,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.snapshot.colorpalette.concat",{"_index":720,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.sortbysynonymresult",{"_index":2337,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.sortlexically",{"_index":2338,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["this.source",{"_index":2212,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["this.source.getaggregateresults(filter",{"_index":1189,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getcelltypetermoccurences(filter",{"_index":1195,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getdatasettechnologynames",{"_index":1200,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getontologytermoccurences(filter",{"_index":1192,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getprovidernames",{"_index":1202,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.getscene(filter",{"_index":1198,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.source.gettissueblockresults(filter",{"_index":1186,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.state$.pipe(pluck('colorassignments",{"_index":712,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.state$.pipe(pluck('colorassignmentslist",{"_index":713,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["this.state$.pipe(pluck('filter",{"_index":1110,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.state$.pipe(pluck('highlightedid",{"_index":2598,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.state$.pipe(pluck('highlightednodeid",{"_index":2150,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.state$.pipe(pluck('listresults",{"_index":2152,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["this.state$.pipe(pluck('referenceorgans",{"_index":2600,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.state$.pipe(pluck('scene",{"_index":2602,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.state$.pipe(pluck('selectedreferenceorgans",{"_index":2604,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["this.statechange.emit",{"_index":2100,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.subscriptions.add(channel.getmessagesfromsource(drawer).subscribe(msg",{"_index":2915,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["this.subscriptions.add(messages.subscribe(msg",{"_index":936,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.subscriptions.add(this.channel.getmessages().subscribe(msg",{"_index":849,"title":{},"body":{"components/ContainerComponent.html":{},"classes/InitializationState.html":{}}}],["this.subscriptions.unsubscribe",{"_index":859,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["this.syncexpanded(other",{"_index":2101,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.technologyfilterdata",{"_index":1132,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.technologyfilterquerystatus",{"_index":1156,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.theme",{"_index":2761,"title":{},"body":{"injectables/ThemingService.html":{}}}],["this.thememode$.next('dark",{"_index":304,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$.next('light",{"_index":305,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$.next(e.matches",{"_index":310,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$.next(this.islighttheme",{"_index":347,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.thememode$]).subscribe",{"_index":275,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.theming.gettheme().endswith('light",{"_index":227,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.theming.settheme(`${theme",{"_index":277,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.tissueblock.label",{"_index":1362,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["this.tissueblockdata",{"_index":1113,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.tissueblockdataquerystatus",{"_index":1151,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["this.tissuesections.filter(section",{"_index":2882,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["this.toggle(coercebooleanproperty(value",{"_index":2030,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggle(false",{"_index":2071,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggle(true",{"_index":2070,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggleexpanded(coercebooleanproperty(value",{"_index":2034,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggleexpanded(false",{"_index":2083,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.toggleexpanded(true",{"_index":2080,"title":{},"body":{"classes/InitializationState.html":{}}}],["this.tree.expandandselect(ontologynode",{"_index":2465,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["this.treemodel",{"_index":2411,"title":{},"body":{"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["this.treemodel$.next(treemodel",{"_index":2410,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.treemodel$.pipe(map(state",{"_index":2400,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["this.treemodel?.nodes",{"_index":2432,"title":{},"body":{"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["this.uid",{"_index":2833,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["this.updatefaded",{"_index":942,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.updatemargin(position",{"_index":948,"title":{},"body":{"components/ContentComponent.html":{}}}],["this.updateurl",{"_index":2946,"title":{},"body":{"components/ViewerComponent.html":{}}}],["this.url",{"_index":385,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.validatedrawers",{"_index":852,"title":{},"body":{"components/ContainerComponent.html":{}}}],["this.valuerange",{"_index":1669,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.valuerange[0",{"_index":1670,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.valuerange[1",{"_index":1672,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["this.vieweropen",{"_index":386,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["this.width",{"_index":2046,"title":{},"body":{"classes/InitializationState.html":{}}}],["those",{"_index":2214,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{}}}],["thread",{"_index":3654,"title":{},"body":{"miscellaneous/variables.html":{}}}],["three",{"_index":645,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["through",{"_index":3285,"title":{},"body":{"changelog.html":{}}}],["throw",{"_index":492,"title":{},"body":{"components/AppWebComponent.html":{},"components/ContainerComponent.html":{},"modules/CoreModule.html":{}}}],["throwduplicatedrawerserror",{"_index":3434,"title":{},"body":{"coverage.html":{},"miscellaneous/functions.html":{}}}],["throwduplicatedrawerserror('end",{"_index":870,"title":{},"body":{"components/ContainerComponent.html":{}}}],["throwduplicatedrawerserror('start",{"_index":868,"title":{},"body":{"components/ContainerComponent.html":{}}}],["throwduplicatedrawerserror(position",{"_index":839,"title":{},"body":{"components/ContainerComponent.html":{},"miscellaneous/functions.html":{}}}],["thrown",{"_index":838,"title":{},"body":{"components/ContainerComponent.html":{}}}],["throws",{"_index":834,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/ThemingService.html":{}}}],["thumbnail",{"_index":544,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["thumbnailcarouselcomponent",{"_index":543,"title":{"components/ThumbnailCarouselComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"modules/ThumbnailCarouselModule.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["thumbnailcarouselmodule",{"_index":1448,"title":{"modules/ThumbnailCarouselModule.html":{}},"body":{"modules/DonorCardModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules.html":{},"overview.html":{}}}],["thumbnails",{"_index":2779,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["thymus",{"_index":1277,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["thymus.svg",{"_index":1278,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["tick",{"_index":2886,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tied",{"_index":3194,"title":{},"body":{"changelog.html":{}}}],["tiff",{"_index":3294,"title":{},"body":{"changelog.html":{}}}],["time",{"_index":593,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["timing",{"_index":965,"title":{},"body":{"components/ContentComponent.html":{}}}],["tissue",{"_index":547,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"modules/DonorCardModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["tissueblock",{"_index":1327,"title":{},"body":{"components/DonorCardComponent.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tissueblock.description",{"_index":1374,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblock.donor.description",{"_index":1370,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblock.donor.label",{"_index":1369,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblock.label",{"_index":1373,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissueblockdata",{"_index":1111,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tissueblockdata(filter",{"_index":1184,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tissueblockdataquerystatus",{"_index":1091,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["tissueblockresult",{"_index":1033,"title":{},"body":{"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"interfaces/ListResult.html":{}}}],["tissueblocks",{"_index":2179,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tissues",{"_index":2869,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"changelog.html":{}}}],["tissuesection",{"_index":2880,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesectionexists",{"_index":2864,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesectionexists(sectionnumber",{"_index":2876,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesectionresult",{"_index":2867,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesections",{"_index":2865,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["tissuesections]=\"tissueblock.sections",{"_index":1376,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["tissuesectionviscomponent",{"_index":546,"title":{"components/TissueSectionVisComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["tissuesectionvismodule",{"_index":1449,"title":{"modules/TissueSectionVisModule.html":{}},"body":{"modules/DonorCardModule.html":{},"modules/TissueSectionVisModule.html":{},"modules.html":{},"overview.html":{}}}],["title",{"_index":1405,"title":{},"body":{"components/DonorCardComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["tmc",{"_index":1051,"title":{},"body":{"interfaces/DataStateModel.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["toggle",{"_index":551,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"modules/DrawerModule.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["toggle(opened",{"_index":2072,"title":{},"body":{"classes/InitializationState.html":{}}}],["togglebuttoncomponent",{"_index":550,"title":{"components/ToggleButtonComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"modules/DrawerModule.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"coverage.html":{},"overview.html":{}}}],["toggled",{"_index":944,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"components/ToggleButtonComponent.html":{}}}],["toggleexpanded(expanded",{"_index":2086,"title":{},"body":{"classes/InitializationState.html":{}}}],["toggleexpansion",{"_index":1325,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["togglefiltervisible",{"_index":1792,"title":{},"body":{"components/FiltersPopoverComponent.html":{}}}],["toggleoptions",{"_index":1473,"title":{},"body":{"components/DropdownComponent.html":{}}}],["toggles",{"_index":344,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/InitializationState.html":{}}}],["togglescheme",{"_index":346,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["togglesliderpopover",{"_index":1564,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["token",{"_index":398,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/ThemingService.html":{},"miscellaneous/variables.html":{}}}],["token.length",{"_index":401,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["tool",{"_index":3223,"title":{},"body":{"changelog.html":{}}}],["toolbar",{"_index":2952,"title":{},"body":{"components/ViewerComponent.html":{}}}],["top",{"_index":1403,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["topblocks",{"_index":2177,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["topblocks.push",{"_index":2181,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["tort",{"_index":3630,"title":{},"body":{"license.html":{}}}],["total",{"_index":2872,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["totaltissuesections",{"_index":2866,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["totaltissuesections]=\"tissueblock.sectioncount",{"_index":1375,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["touch",{"_index":879,"title":{},"body":{"components/ContainerComponent.html":{},"components/DualSliderComponent.html":{}}}],["track",{"_index":195,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/ResultsBrowserComponent.html":{}}}],["tracking/telemetry",{"_index":3137,"title":{},"body":{"changelog.html":{}}}],["trackingpopupcomponent",{"_index":139,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["trackingpopupmodule",{"_index":64,"title":{},"body":{"modules/AppModule.html":{}}}],["tracks",{"_index":2320,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["transform",{"_index":1509,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{}}}],["transition",{"_index":926,"title":{},"body":{"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/ToggleButtonComponent.html":{}}}],["transition('closed",{"_index":2010,"title":{},"body":{"classes/InitializationState.html":{}}}],["transition('false",{"_index":933,"title":{},"body":{"components/ContentComponent.html":{}}}],["translatey",{"_index":1530,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{}}}],["transparency",{"_index":3224,"title":{},"body":{"changelog.html":{}}}],["transparent",{"_index":1393,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["travisci",{"_index":3242,"title":{},"body":{"changelog.html":{}}}],["tree",{"_index":443,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["tree'},{'name",{"_index":538,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["tree.component",{"_index":2463,"title":{},"body":{"components/OntologySelectionComponent.html":{},"modules/OntologyTreeModule.html":{}}}],["tree.component.ts",{"_index":3422,"title":{},"body":{"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["tree.module",{"_index":2267,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"modules/OntologySelectionModule.html":{}}}],["tree.module.ts",{"_index":2476,"title":{},"body":{"modules/OntologyTreeModule.html":{}}}],["tree/ontology",{"_index":2266,"title":{},"body":{"modules/OntologyExplorationModule.html":{},"components/OntologySelectionComponent.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["treemodel",{"_index":2373,"title":{},"body":{"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{}}}],["trigger",{"_index":927,"title":{},"body":{"components/ContentComponent.html":{},"classes/InitializationState.html":{}}}],["trigger('expandcollapse",{"_index":2013,"title":{},"body":{"classes/InitializationState.html":{}}}],["trigger('fadeinout",{"_index":929,"title":{},"body":{"components/ContentComponent.html":{}}}],["trigger('openclose",{"_index":2007,"title":{},"body":{"classes/InitializationState.html":{}}}],["triggered",{"_index":2309,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["true",{"_index":210,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"modules/ThemingModule.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["try",{"_index":1942,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"changelog.html":{}}}],["ts",{"_index":3532,"title":{},"body":{"dependencies.html":{}}}],["tslib",{"_index":3535,"title":{},"body":{"dependencies.html":{}}}],["tube",{"_index":1240,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["tuned",{"_index":3383,"title":{},"body":{"changelog.html":{}}}],["tuple",{"_index":860,"title":{},"body":{"components/ContainerComponent.html":{}}}],["turn",{"_index":3211,"title":{},"body":{"changelog.html":{}}}],["turned",{"_index":3197,"title":{},"body":{"changelog.html":{}}}],["turning",{"_index":3195,"title":{},"body":{"changelog.html":{}}}],["tutorial",{"_index":3112,"title":{},"body":{"changelog.html":{}}}],["two",{"_index":3304,"title":{},"body":{"changelog.html":{}}}],["type",{"_index":126,"title":{},"body":{"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DefaultIconDefinition.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/ListResult.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/OntologySelection.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/typealiases.html":{},"miscellaneous/variables.html":{}}}],["typealiases",{"_index":3638,"title":{"miscellaneous/typealiases.html":{}},"body":{}}],["typeof",{"_index":484,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"components/OntologySearchComponent.html":{}}}],["types",{"_index":977,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"changelog.html":{},"miscellaneous/typealiases.html":{}}}],["types/lru",{"_index":3473,"title":{},"body":{"dependencies.html":{}}}],["typescript",{"_index":436,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["typing",{"_index":3354,"title":{},"body":{"changelog.html":{}}}],["ufl",{"_index":3190,"title":{},"body":{"changelog.html":{}}}],["ui",{"_index":2606,"title":{},"body":{"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{},"index.html":{}}}],["ui.component",{"_index":153,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ui.netlify.app",{"_index":3557,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/organ",{"_index":3567,"title":{},"body":{"index.html":{}}}],["ui.netlify.app/rui",{"_index":3564,"title":{},"body":{"index.html":{}}}],["ui/body",{"_index":152,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["ui/organ",{"_index":3566,"title":{},"body":{"index.html":{}}}],["ui/rui",{"_index":3565,"title":{},"body":{"index.html":{}}}],["uid",{"_index":2784,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["uievent",{"_index":2528,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["unassigncolor",{"_index":742,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["unassigncolor(@payload('key",{"_index":736,"title":{},"body":{"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{}}}],["unassigncolor(key",{"_index":747,"title":{},"body":{"injectables/ColorAssignmentState.html":{}}}],["unchecked",{"_index":610,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["undefined",{"_index":357,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/OntologySelection.html":{}}}],["under",{"_index":1221,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["underline",{"_index":1507,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["unhighlightnode",{"_index":2131,"title":{},"body":{"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{}}}],["unique",{"_index":2190,"title":{},"body":{"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["university",{"_index":3575,"title":{},"body":{"index.html":{}}}],["unknown",{"_index":481,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/FiltersContentComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{}}}],["unless",{"_index":1350,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["unlike",{"_index":1211,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{}}}],["unnecessary",{"_index":3125,"title":{},"body":{"changelog.html":{}}}],["unselect",{"_index":3167,"title":{},"body":{"changelog.html":{}}}],["unset",{"_index":2924,"title":{},"body":{"components/ToggleButtonComponent.html":{}}}],["until",{"_index":1637,"title":{},"body":{"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"changelog.html":{}}}],["unused",{"_index":2798,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["up",{"_index":792,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["update",{"_index":350,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"changelog.html":{}}}],["updated",{"_index":592,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DualSliderComponent.html":{},"changelog.html":{}}}],["updatefaded",{"_index":889,"title":{},"body":{"components/ContentComponent.html":{}}}],["updatefilter",{"_index":1734,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["updatefilter(@payload('filter",{"_index":1177,"title":{},"body":{"interfaces/DataStateModel.html":{}}}],["updatefilter(value",{"_index":1751,"title":{},"body":{"components/FiltersContentComponent.html":{}}}],["updatemargin",{"_index":890,"title":{},"body":{"components/ContentComponent.html":{}}}],["updatemargin(position",{"_index":915,"title":{},"body":{"components/ContentComponent.html":{}}}],["updates",{"_index":913,"title":{},"body":{"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["updateurl",{"_index":2933,"title":{},"body":{"components/ViewerComponent.html":{}}}],["upgraded",{"_index":3290,"title":{},"body":{"changelog.html":{}}}],["upgrades",{"_index":3357,"title":{},"body":{"changelog.html":{}}}],["upgrading",{"_index":3140,"title":{},"body":{"changelog.html":{}}}],["upload",{"_index":3221,"title":{},"body":{"changelog.html":{}}}],["upper",{"_index":1581,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["ureter",{"_index":1279,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["url",{"_index":212,"title":{},"body":{"interfaces/AppOptions.html":{},"interfaces/DefaultIconDefinition.html":{},"components/DonorCardComponent.html":{},"components/HeaderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["url('./data",{"_index":2977,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["url.createobjecturl(codeblob",{"_index":2987,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["url?.startswith(domain",{"_index":383,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["urls",{"_index":1918,"title":{},"body":{"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{}}}],["use",{"_index":1353,"title":{},"body":{"components/DonorCardComponent.html":{},"components/DualSliderComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"license.html":{}}}],["used",{"_index":193,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"changelog.html":{}}}],["useexisting",{"_index":97,"title":{},"body":{"modules/AppModule.html":{},"modules/CoreModule.html":{}}}],["useful",{"_index":836,"title":{},"body":{"components/ContainerComponent.html":{}}}],["user",{"_index":298,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"changelog.html":{},"index.html":{}}}],["user/os",{"_index":3117,"title":{},"body":{"changelog.html":{}}}],["useremoteapi",{"_index":459,"title":{},"body":{"components/AppWebComponent.html":{},"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{}}}],["users",{"_index":3371,"title":{},"body":{"changelog.html":{}}}],["uses",{"_index":349,"title":{},"body":{"interfaces/AppOptions.html":{},"changelog.html":{}}}],["usevalue",{"_index":93,"title":{},"body":{"modules/AppModule.html":{},"modules/DrawerModule.html":{},"modules/ThemingModule.html":{}}}],["using",{"_index":2814,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{},"changelog.html":{}}}],["uterus",{"_index":1280,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["uterus.svg",{"_index":1281,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["utilities",{"_index":3122,"title":{},"body":{"changelog.html":{}}}],["uuid",{"_index":3536,"title":{},"body":{"dependencies.html":{}}}],["v1.1",{"_index":3049,"title":{},"body":{"changelog.html":{}}}],["v1.5.0",{"_index":3210,"title":{},"body":{"changelog.html":{}}}],["v1.7",{"_index":3052,"title":{},"body":{"changelog.html":{}}}],["v1.7.0",{"_index":3041,"title":{},"body":{"changelog.html":{}}}],["v1.8.0",{"_index":2998,"title":{},"body":{"changelog.html":{}}}],["val",{"_index":483,"title":{},"body":{"components/AppWebComponent.html":{}}}],["val.every(isstring",{"_index":487,"title":{},"body":{"components/AppWebComponent.html":{}}}],["validatedrawers",{"_index":770,"title":{},"body":{"components/ContainerComponent.html":{}}}],["validates",{"_index":798,"title":{},"body":{"components/ContainerComponent.html":{}}}],["validation",{"_index":2321,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["value",{"_index":418,"title":{},"body":{"injectables/AppRootOverlayContainer.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"injectables/ColorAssignmentState.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SearchResult.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/enumerations.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["value.tolowercase",{"_index":2415,"title":{},"body":{"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{}}}],["valuechanges",{"_index":2328,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["valuechanges.pipe",{"_index":2331,"title":{},"body":{"components/OntologySearchComponent.html":{}}}],["valueof",{"_index":1970,"title":{},"body":{"classes/InitializationState.html":{}}}],["valuerange",{"_index":1565,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["values",{"_index":976,"title":{},"body":{"interfaces/ContentContainerChanged.html":{},"interfaces/DataStateModel.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"miscellaneous/functions.html":{},"miscellaneous/variables.html":{}}}],["var",{"_index":509,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["variable",{"_index":223,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DonorCardComponent.html":{},"coverage.html":{}}}],["variables",{"_index":3644,"title":{"miscellaneous/variables.html":{}},"body":{"miscellaneous/variables.html":{}}}],["vasculature",{"_index":1282,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["version",{"_index":3064,"title":{},"body":{"changelog.html":{},"index.html":{}}}],["very",{"_index":3280,"title":{},"body":{"changelog.html":{}}}],["via",{"_index":3107,"title":{},"body":{"changelog.html":{}}}],["video",{"_index":3141,"title":{},"body":{"changelog.html":{}}}],["view",{"_index":1426,"title":{},"body":{"components/DonorCardComponent.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"interfaces/SearchResult.html":{},"changelog.html":{}}}],["viewchild",{"_index":133,"title":{},"body":{"interfaces/AppOptions.html":{},"components/DualSliderComponent.html":{},"components/OntologySelectionComponent.html":{}}}],["viewchild('bodyui",{"_index":189,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["viewchild('popover",{"_index":1634,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["viewchild(cdkportal",{"_index":1639,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["viewchild(ontologytreecomponent",{"_index":2461,"title":{},"body":{"components/OntologySelectionComponent.html":{}}}],["viewchildren",{"_index":826,"title":{},"body":{"components/ContainerComponent.html":{}}}],["viewchildren(contentcomponent",{"_index":811,"title":{},"body":{"components/ContainerComponent.html":{}}}],["viewer",{"_index":216,"title":{},"body":{"interfaces/AppOptions.html":{},"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{}}}],["viewer.component",{"_index":2959,"title":{},"body":{"modules/ViewerModule.html":{}}}],["viewer.component.html",{"_index":2930,"title":{},"body":{"components/ViewerComponent.html":{}}}],["viewer.component.scss",{"_index":2929,"title":{},"body":{"components/ViewerComponent.html":{}}}],["viewercomponent",{"_index":553,"title":{"components/ViewerComponent.html":{}},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"modules/ViewerModule.html":{},"coverage.html":{},"overview.html":{}}}],["viewermodule",{"_index":17,"title":{"modules/ViewerModule.html":{}},"body":{"modules/AppModule.html":{},"modules/ViewerModule.html":{},"modules.html":{},"overview.html":{}}}],["vieweropen",{"_index":224,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["viewport",{"_index":2531,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["views",{"_index":3132,"title":{},"body":{"changelog.html":{}}}],["virtual",{"_index":2485,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["vis",{"_index":2861,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis'},{'name",{"_index":549,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["vis.component",{"_index":2892,"title":{},"body":{"modules/TissueSectionVisModule.html":{}}}],["vis.component.html",{"_index":2863,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.scss",{"_index":2862,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts",{"_index":2860,"title":{},"body":{"components/TissueSectionVisComponent.html":{},"coverage.html":{}}}],["vis.component.ts:12",{"_index":2875,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts:15",{"_index":2871,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts:18",{"_index":2868,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.component.ts:21",{"_index":2877,"title":{},"body":{"components/TissueSectionVisComponent.html":{}}}],["vis.module",{"_index":1456,"title":{},"body":{"modules/DonorCardModule.html":{}}}],["vis.module.ts",{"_index":2891,"title":{},"body":{"modules/TissueSectionVisModule.html":{}}}],["vis/tissue",{"_index":1455,"title":{},"body":{"modules/DonorCardModule.html":{},"components/TissueSectionVisComponent.html":{},"modules/TissueSectionVisModule.html":{},"coverage.html":{}}}],["visibility",{"_index":1624,"title":{},"body":{"components/DualSliderComponent.html":{},"components/SpinnerOverlayComponent.html":{}}}],["visibility_off",{"_index":1291,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["visibility_on",{"_index":1289,"title":{},"body":{"interfaces/DefaultIconDefinition.html":{},"miscellaneous/variables.html":{}}}],["visible",{"_index":1490,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"components/SpinnerOverlayComponent.html":{}}}],["visited",{"_index":2847,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["visual",{"_index":3379,"title":{},"body":{"changelog.html":{}}}],["visualization",{"_index":3159,"title":{},"body":{"changelog.html":{}}}],["vitessce",{"_index":3291,"title":{},"body":{"changelog.html":{}}}],["void",{"_index":34,"title":{},"body":{"modules/AppModule.html":{},"interfaces/AppOptions.html":{},"injectables/AppRootOverlayContainer.html":{},"components/CheckboxComponent.html":{},"interfaces/Color.html":{},"injectables/ColorAssignmentState.html":{},"interfaces/ColorAssignmentStateModel.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"interfaces/IconDefinition.html":{},"injectables/IconRegistryState.html":{},"classes/InitializationState.html":{},"injectables/ListResultsState.html":{},"interfaces/ListResultsStateModel.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/OntologySearchComponent.html":{},"injectables/OntologySearchService.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"injectables/SceneState.html":{},"interfaces/SceneStateModel.html":{},"interfaces/SearchResult.html":{},"injectables/ThemingService.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"miscellaneous/functions.html":{}}}],["vs",{"_index":3109,"title":{},"body":{"changelog.html":{}}}],["vu",{"_index":3378,"title":{},"body":{"changelog.html":{}}}],["w",{"_index":1431,"title":{},"body":{"components/DonorCardComponent.html":{}}}],["wait",{"_index":1972,"title":{},"body":{"classes/InitializationState.html":{}}}],["waits",{"_index":2095,"title":{},"body":{"classes/InitializationState.html":{}}}],["warning",{"_index":3314,"title":{},"body":{"changelog.html":{}}}],["warranties",{"_index":3616,"title":{},"body":{"license.html":{}}}],["warranty",{"_index":3613,"title":{},"body":{"license.html":{}}}],["watchoverflow",{"_index":2806,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["way",{"_index":2533,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["wc",{"_index":448,"title":{},"body":{"components/AppWebComponent.html":{}}}],["wc'},{'name",{"_index":512,"title":{},"body":{"components/AppWebComponent.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"components/OntologySearchComponent.html":{},"components/OntologySelectionComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{}}}],["web",{"_index":89,"title":{},"body":{"modules/AppModule.html":{},"components/AppWebComponent.html":{},"changelog.html":{},"coverage.html":{},"miscellaneous/functions.html":{}}}],["webcomponent",{"_index":3108,"title":{},"body":{"changelog.html":{}}}],["webcomponents/webcomponentsjs",{"_index":3476,"title":{},"body":{"dependencies.html":{}}}],["webkit",{"_index":877,"title":{},"body":{"components/ContainerComponent.html":{}}}],["webpages",{"_index":3068,"title":{},"body":{"changelog.html":{}}}],["website",{"_index":3552,"title":{},"body":{"index.html":{}}}],["week",{"_index":3385,"title":{},"body":{"changelog.html":{}}}],["weight",{"_index":639,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/HeaderComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["well",{"_index":2484,"title":{},"body":{"components/ResultsBrowserComponent.html":{}}}],["whenever",{"_index":229,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"interfaces/DataStateModel.html":{},"components/DonorCardComponent.html":{},"classes/InitializationState.html":{},"miscellaneous/functions.html":{}}}],["whether",{"_index":205,"title":{},"body":{"interfaces/AppOptions.html":{},"components/CheckboxComponent.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DualSliderComponent.html":{},"components/FiltersPopoverComponent.html":{},"classes/FlatNode.html":{},"classes/InitializationState.html":{},"interfaces/Message.html":{},"classes/MessageChannel.html":{},"injectables/MessageService.html":{},"interfaces/MessageServiceConfig.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"injectables/ThemingService.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"license.html":{}}}],["white",{"_index":630,"title":{},"body":{"components/CheckboxComponent.html":{},"components/DonorCardComponent.html":{}}}],["whole",{"_index":3381,"title":{},"body":{"changelog.html":{}}}],["whose",{"_index":2292,"title":{},"body":{"components/OntologySearchComponent.html":{},"components/ThumbnailCarouselComponent.html":{}}}],["width",{"_index":646,"title":{},"body":{"components/CheckboxComponent.html":{},"components/ContentComponent.html":{},"interfaces/ContentContainerChanged.html":{},"components/DonorCardComponent.html":{},"interfaces/DrawerContainersChanged.html":{},"interfaces/DrawerInitialized.html":{},"interfaces/DrawerToggled.html":{},"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/FiltersContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/HeaderComponent.html":{},"classes/InitializationState.html":{},"components/OntologySearchComponent.html":{},"components/ResultsBrowserComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{},"components/ToggleButtonComponent.html":{},"components/ViewerComponent.html":{},"changelog.html":{},"miscellaneous/variables.html":{}}}],["widths",{"_index":2103,"title":{},"body":{"classes/InitializationState.html":{}}}],["window",{"_index":220,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["window.matchmedia",{"_index":294,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["window.matchmedia('(prefers",{"_index":300,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["window.open(url",{"_index":389,"title":{},"body":{"interfaces/AppOptions.html":{}}}],["within",{"_index":2449,"title":{},"body":{"components/OntologySelectionComponent.html":{},"changelog.html":{}}}],["without",{"_index":813,"title":{},"body":{"components/ContainerComponent.html":{},"injectables/OntologySearchService.html":{},"interfaces/SearchResult.html":{},"changelog.html":{},"license.html":{}}}],["work",{"_index":2816,"title":{},"body":{"components/ThumbnailCarouselComponent.html":{}}}],["workaround",{"_index":2113,"title":{},"body":{"classes/InitializationState.html":{}}}],["worker",{"_index":1306,"title":{},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"miscellaneous/variables.html":{}}}],["worker(url",{"_index":2976,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["workerccfdatabasedatasourceservice",{"_index":2961,"title":{},"body":{"injectables/WorkerDataSourceService.html":{}}}],["workerdatasourceservice",{"_index":1305,"title":{"injectables/WorkerDataSourceService.html":{}},"body":{"interfaces/DelegateDataSourceOptions.html":{},"injectables/DelegateDataSourceService.html":{},"injectables/WorkerDataSourceService.html":{},"coverage.html":{}}}],["workflows",{"_index":3244,"title":{},"body":{"changelog.html":{}}}],["working",{"_index":3058,"title":{},"body":{"changelog.html":{}}}],["works",{"_index":3261,"title":{},"body":{"changelog.html":{}}}],["wrap",{"_index":644,"title":{},"body":{"components/CheckboxComponent.html":{}}}],["wrapped",{"_index":810,"title":{},"body":{"components/ContainerComponent.html":{}}}],["wrapper",{"_index":1501,"title":{},"body":{"components/DropdownComponent.html":{},"components/DualSliderComponent.html":{},"components/OntologySearchComponent.html":{}}}],["wrapper/container",{"_index":1706,"title":{},"body":{"components/DualSliderComponent.html":{}}}],["wrapping",{"_index":814,"title":{},"body":{"components/ContainerComponent.html":{},"components/ContentComponent.html":{}}}],["x",{"_index":338,"title":{},"body":{"interfaces/AppOptions.html":{},"components/TissueSectionVisComponent.html":{}}}],["y",{"_index":340,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ResultsBrowserComponent.html":{}}}],["yes",{"_index":2298,"title":{},"body":{"components/OntologySearchComponent.html":{},"miscellaneous/functions.html":{}}}],["youtube",{"_index":3085,"title":{},"body":{"changelog.html":{}}}],["z",{"_index":342,"title":{},"body":{"interfaces/AppOptions.html":{},"components/ContainerComponent.html":{},"components/ContentComponent.html":{},"components/FiltersPopoverComponent.html":{},"components/SpinnerOverlayComponent.html":{},"components/ThumbnailCarouselComponent.html":{},"components/TissueSectionVisComponent.html":{}}}],["zone.js",{"_index":3538,"title":{},"body":{"dependencies.html":{}}}],["zoom",{"_index":18,"title":{},"body":{"modules/AppModule.html":{},"modules/CheckboxModule.html":{},"modules/CoreModule.html":{},"modules/DonorCardModule.html":{},"modules/DrawerModule.html":{},"modules/DropdownModule.html":{},"modules/DualSliderModule.html":{},"modules/FiltersContentModule.html":{},"modules/FiltersPopoverModule.html":{},"modules/HeaderModule.html":{},"modules/OntologyExplorationModule.html":{},"modules/OntologySearchModule.html":{},"modules/OntologySelectionModule.html":{},"modules/OntologyTreeModule.html":{},"modules/ResultsBrowserModule.html":{},"modules/SpinnerOverlayModule.html":{},"modules/ThemingModule.html":{},"modules/ThumbnailCarouselModule.html":{},"modules/TissueSectionVisModule.html":{},"modules/ViewerModule.html":{},"overview.html":{}}}]],"pipeline":["stemmer"]}, + "store": {"modules/AppModule.html":{"url":"modules/AppModule.html","title":"module - AppModule","body":"\n \n\n\n\n\n Modules\n AppModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_declarations\n\n\n\ncluster_AppModule_imports\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nAppWebComponent\n\nAppWebComponent\n\nAppModule -->\n\nAppWebComponent->AppModule\n\n\n\n\n\nCoreModule\n\nCoreModule\n\nAppModule -->\n\nCoreModule->AppModule\n\n\n\n\n\nDrawerModule\n\nDrawerModule\n\nAppModule -->\n\nDrawerModule->AppModule\n\n\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nAppModule -->\n\nDualSliderModule->AppModule\n\n\n\n\n\nFiltersPopoverModule\n\nFiltersPopoverModule\n\nAppModule -->\n\nFiltersPopoverModule->AppModule\n\n\n\n\n\nOntologyExplorationModule\n\nOntologyExplorationModule\n\nAppModule -->\n\nOntologyExplorationModule->AppModule\n\n\n\n\n\nResultsBrowserModule\n\nResultsBrowserModule\n\nAppModule -->\n\nResultsBrowserModule->AppModule\n\n\n\n\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule\n\nAppModule -->\n\nSpinnerOverlayModule->AppModule\n\n\n\n\n\nViewerModule\n\nViewerModule\n\nAppModule -->\n\nViewerModule->AppModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/app.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n AppComponent\n \n \n AppWebComponent\n \n \n \n \n EntryComponents\n \n \n AppComponent\n \n \n \n \n Imports\n \n \n CoreModule\n \n \n DrawerModule\n \n \n DualSliderModule\n \n \n FiltersPopoverModule\n \n \n OntologyExplorationModule\n \n \n ResultsBrowserModule\n \n \n SpinnerOverlayModule\n \n \n ViewerModule\n \n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngDoBootstrap\n \n \n \n \n \n \nngDoBootstrap()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/app.module.ts:55\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n \n\n\n \n import { AppRootOverlayContainer } from './core/services/app-root-overlay/app-root-overlay.service';\nimport { OverlayContainer } from '@angular/cdk/overlay';\nimport { createCustomElement } from '@angular/elements';\nimport { DoBootstrap, Injector, NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { BodyUiModule, InfoButtonModule, OrganSelectorModule, TrackingPopupModule } from 'ccf-shared';\n\nimport { DEFAULT_THEME } from '../app/core/services/theming/theming.service';\nimport { AppComponent } from './app.component';\nimport { CoreModule } from './core/core.module';\nimport { FiltersPopoverModule } from './modules/filters/filters-popover/filters-popover.module';\nimport { OntologyExplorationModule } from './modules/ontology-exploration/ontology-exploration.module';\nimport { ResultsBrowserModule } from './modules/results-browser/results-browser/results-browser.module';\nimport { DrawerModule } from './shared/components/drawer/drawer.module';\nimport { DualSliderModule } from './shared/components/dual-slider/dual-slider.module';\nimport { SpinnerOverlayModule } from './shared/components/spinner-overlay/spinner-overlay.module';\nimport { ViewerModule } from './shared/components/viewer/viewer.module';\nimport { AppWebComponent } from './app-web-component.component';\n\n\n@NgModule({\n imports: [\n BrowserAnimationsModule,\n BrowserModule,\n CoreModule,\n DrawerModule,\n FiltersPopoverModule,\n OntologyExplorationModule,\n MatIconModule,\n DualSliderModule,\n ResultsBrowserModule,\n SpinnerOverlayModule,\n BodyUiModule,\n OrganSelectorModule,\n InfoButtonModule,\n MatTooltipModule,\n ViewerModule,\n TrackingPopupModule,\n MatSnackBarModule\n ],\n declarations: [AppComponent, AppWebComponent],\n providers: [\n { provide: DEFAULT_THEME, useValue: 'hubmap-theme-light' },\n { provide: OverlayContainer, useExisting: AppRootOverlayContainer }\n ],\n entryComponents: [AppComponent]\n})\nexport class AppModule implements DoBootstrap {\n constructor(private readonly injector: Injector) { }\n\n ngDoBootstrap(): void {\n const appElement = createCustomElement(AppWebComponent, {\n injector: this.injector\n });\n\n customElements.define('ccf-eui', appElement);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/AppOptions.html":{"url":"interfaces/AppOptions.html","title":"interface - AppOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n AppOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/app.component.ts\n \n\n\n\n \n Extends\n \n \n CCFDatabaseOptions\n \n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n header\n \n \n \n Optional\n \n homeUrl\n \n \n \n Optional\n \n loginEnabled\n \n \n \n Optional\n \n logoTooltip\n \n \n \n Optional\n \n theme\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n header\n \n \n \n \n \n \n \n \n header: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n homeUrl\n \n \n \n \n \n \n \n \n homeUrl: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n loginEnabled\n \n \n \n \n \n \n \n \n loginEnabled: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n logoTooltip\n \n \n \n \n \n \n \n \n logoTooltip: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n theme\n \n \n \n \n \n \n \n \n theme: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, Injector, OnInit, ViewChild } from '@angular/core';\nimport { MatSnackBar } from '@angular/material/snack-bar';\nimport { CCFDatabaseOptions, OntologyTreeModel } from 'ccf-database';\nimport { DataSourceService, GlobalConfigState, TrackingPopupComponent } from 'ccf-shared';\nimport { ConsentService } from 'ccf-shared/analytics';\nimport { combineLatest, Observable, ReplaySubject } from 'rxjs';\nimport { map, pluck, shareReplay } from 'rxjs/operators';\n\nimport { BodyUiComponent } from '../../../ccf-shared/src/lib/components/body-ui/body-ui.component';\nimport { environment } from '../environments/environment';\nimport { OntologySelection } from './core/models/ontology-selection';\nimport { AppRootOverlayContainer } from './core/services/app-root-overlay/app-root-overlay.service';\nimport { ThemingService } from './core/services/theming/theming.service';\nimport { DataQueryState, DataState } from './core/store/data/data.state';\nimport { ListResultsState } from './core/store/list-results/list-results.state';\nimport { SceneState } from './core/store/scene/scene.state';\nimport { FiltersPopoverComponent } from './modules/filters/filters-popover/filters-popover.component';\nimport { DrawerComponent } from './shared/components/drawer/drawer/drawer.component';\n\n\ninterface AppOptions extends CCFDatabaseOptions {\n theme?: string;\n header?: boolean;\n homeUrl?: string;\n logoTooltip?: string;\n loginEnabled?: boolean;\n}\n\n\n/**\n * This is the main angular component that all the other components branch off from.\n * It is in charge of the header and drawer components who have many sub-components.\n */\n@Component({\n selector: 'ccf-root',\n templateUrl: './app.component.html',\n styleUrls: ['./app.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AppComponent implements OnInit {\n @ViewChild('bodyUI', { static: false }) bodyUI: BodyUiComponent;\n\n /**\n * Used to keep track of the ontology label to be passed down to the\n * results-browser component.\n */\n ontologySelectionLabel = 'body';\n\n cellTypeSelectionLabel = 'cell';\n\n selectionLabel = 'body | cell';\n\n /**\n * Whether or not organ carousel is open\n */\n organListVisible = true;\n\n /**\n * Emitted url object from the results browser item\n */\n url = '';\n\n /**\n * Acceptable viewer domains (others will open in new window)\n */\n acceptableViewerDomains: string[] = environment.acceptableViewerDomains || [];\n\n /**\n * Variable to keep track of whether the viewer is open\n * or not\n */\n viewerOpen = false;\n\n get isLightTheme(): boolean {\n return this.theming.getTheme().endsWith('light');\n }\n\n /** Emits true whenever the overlay spinner should activate. */\n readonly spinnerActive$ = this.data.queryStatus$.pipe(\n map(state => state === DataQueryState.Running)\n );\n\n readonly ontologyTerms$: Observable;\n readonly ontologyTreeModel$: Observable;\n\n readonly cellTypeTerms$: Observable;\n readonly cellTypeTreeModel$: Observable;\n\n readonly theme$ = this.globalConfig.getOption('theme');\n readonly themeMode$ = new ReplaySubject(1);\n\n readonly header$ = this.globalConfig.getOption('header');\n readonly homeUrl$ = this.globalConfig.getOption('homeUrl');\n readonly logoTooltip$ = this.globalConfig.getOption('logoTooltip');\n readonly loginDisabled$ = this.globalConfig.getOption('loginDisabled');\n\n /**\n * Creates an instance of app component.\n *\n * @param data The data state.\n */\n constructor(\n el: ElementRef, injector: Injector,\n readonly data: DataState, readonly theming: ThemingService,\n readonly scene: SceneState, readonly listResultsState: ListResultsState,\n readonly consentService: ConsentService, readonly snackbar: MatSnackBar, overlay: AppRootOverlayContainer,\n readonly dataSource: DataSourceService, private readonly globalConfig: GlobalConfigState, cdr: ChangeDetectorRef\n ) {\n theming.initialize(el, injector);\n overlay.setRootElement(el);\n data.tissueBlockData$.subscribe();\n data.aggregateData$.subscribe();\n data.ontologyTermOccurencesData$.subscribe();\n data.cellTypeTermOccurencesData$.subscribe();\n data.sceneData$.subscribe();\n data.filter$.subscribe();\n data.technologyFilterData$.subscribe();\n data.providerFilterData$.subscribe();\n this.ontologyTerms$ = data.filter$.pipe(pluck('ontologyTerms'));\n\n combineLatest([this.theme$, this.themeMode$]).subscribe(\n ([theme, mode]) => {\n this.theming.setTheme(`${theme}-theme-${mode}`);\n cdr.markForCheck();\n }\n );\n\n this.ontologyTreeModel$ = this.dataSource.getOntologyTreeModel().pipe(shareReplay(1));\n this.cellTypeTerms$ = data.filter$.pipe(pluck('cellTypeTerms'));\n this.cellTypeTreeModel$ = this.dataSource.getCellTypeTreeModel().pipe(shareReplay(1));\n }\n\n ngOnInit(): void {\n const snackBar = this.snackbar.openFromComponent(TrackingPopupComponent, {\n data: {\n preClose: () => {\n snackBar.dismiss();\n }\n },\n duration: this.consentService.consent === 'not-set' ? Infinity : 3000\n });\n\n if (window.matchMedia) {\n // Sets initial theme according to user theme preference\n if (window.matchMedia('(prefers-color-scheme: dark)').matches) {\n this.themeMode$.next('dark');\n } else {\n this.themeMode$.next('light');\n }\n\n // Listens for changes in user theme preference\n window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', e => {\n this.themeMode$.next(e.matches ? 'dark' : 'light');\n });\n } else {\n this.themeMode$.next('light');\n }\n }\n\n /**\n * Resets the drawers and filter components to their default state.\n *\n * @param left The left drawer component gets passed in so we can call it's methods to control it's state\n * @param right The right drawer component gets passed in so we can call it's methods to control it's state\n * @param filterbox The filter's popover component gets passed in so we can control it's popover's state\n */\n reset(\n left: DrawerComponent,\n right: DrawerComponent,\n filterbox: FiltersPopoverComponent\n ): void {\n left.open();\n left.closeExpanded();\n right.open();\n right.closeExpanded();\n filterbox.removeBox();\n this.resetView();\n }\n\n resetView(): void {\n this.bodyUI.target = [0, 0, 0];\n this.bodyUI.rotation = 0;\n this.bodyUI.rotationX = 0;\n this.bodyUI.bounds = { x: 2.2, y: 2, z: 0.4 };\n }\n\n /**\n * Toggles scheme between light and dark mode\n */\n toggleScheme(): void {\n this.themeMode$.next(this.isLightTheme ? 'dark' : 'light');\n }\n\n /**\n * Captures changes in the ontologySelection and uses them to update the results-browser label\n * and the filter object in the data store.\n *\n * @param ontologySelection the list of currently selected organ nodes\n */\n ontologySelected(ontologySelection: OntologySelection[] | undefined, type: 'anatomical-structures' | 'cell-type'): void {\n if (ontologySelection) {\n if (type === 'anatomical-structures') {\n this.data.updateFilter({ ontologyTerms: ontologySelection.map(selection => selection.id) });\n this.ontologySelectionLabel = this.createSelectionLabel(ontologySelection);\n } else {\n this.data.updateFilter({ cellTypeTerms: ontologySelection.map(selection => selection.id) });\n this.cellTypeSelectionLabel = this.createSelectionLabel(ontologySelection);\n }\n if (this.ontologySelectionLabel && this.cellTypeSelectionLabel) {\n this.selectionLabel = `${this.ontologySelectionLabel} | ${this.cellTypeSelectionLabel}`;\n } else if (this.ontologySelectionLabel) {\n this.selectionLabel = `${this.ontologySelectionLabel}`;\n } else if (this.cellTypeSelectionLabel) {\n this.selectionLabel = `${this.cellTypeSelectionLabel}`;\n } else {\n this.selectionLabel = '';\n }\n if (ontologySelection[0] && ontologySelection[0].label === 'body') {\n this.resetView();\n }\n return;\n }\n\n this.data.updateFilter({ ontologyTerms: [], cellTypeTerms: [] });\n this.ontologySelectionLabel = '';\n this.cellTypeSelectionLabel = '';\n }\n\n /**\n * Creates selection label for the results-browser to display based on an\n * array of selected ontology nodes.\n */\n createSelectionLabel(ontolgySelection: OntologySelection[]): string {\n if (ontolgySelection.length === 0) {\n return '';\n }\n\n if (ontolgySelection.length === 1) {\n return ontolgySelection[0].label;\n }\n\n let selectionString = '';\n ontolgySelection.forEach((selection, index) => {\n selectionString += selection.label;\n\n // Don't add a comma if it's the last item in the array.\n if (index url?.startsWith(domain));\n if (isWhitelisted) {\n this.url = url;\n this.viewerOpen = !!url;\n } else {\n // Open link in new tab\n window.open(url, '_blank');\n this.closeiFrameViewer();\n }\n }\n\n /**\n * Function to easily close the iFrame viewer.\n */\n closeiFrameViewer(): void {\n this.viewerOpen = false;\n }\n\n /**\n * Gets login token\n */\n get loggedIn(): boolean {\n const token = this.globalConfig.snapshot.hubmapToken ?? '';\n return token.length > 0;\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/AppRootOverlayContainer.html":{"url":"injectables/AppRootOverlayContainer.html","title":"injectable - AppRootOverlayContainer","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n AppRootOverlayContainer\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts\n \n\n\n\n \n Extends\n \n \n OverlayContainer\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n attached\n \n \n Private\n rootElement\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Protected\n _createContainer\n \n \n Private\n appendToRoot\n \n \n setRootElement\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Protected\n _createContainer\n \n \n \n \n \n \n \n _createContainer()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:27\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n appendToRoot\n \n \n \n \n \n \n \n appendToRoot()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:32\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n setRootElement\n \n \n \n \n \n \nsetRootElement(el: ElementRef)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:13\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n el\n \n ElementRef\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n attached\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:11\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n rootElement\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts:10\n \n \n\n\n \n \n\n\n \n\n\n \n import { OverlayContainer } from '@angular/cdk/overlay';\nimport { Injectable, ElementRef } from '@angular/core';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AppRootOverlayContainer extends OverlayContainer {\n private rootElement: ElementRef;\n private attached = false;\n\n setRootElement(el: ElementRef): void {\n if (this.attached) {\n this.rootElement.nativeElement.removeChild(this._containerElement);\n this.attached = false;\n }\n\n this.rootElement = el;\n this.rootElement.nativeElement.style.display = 'block';\n this.rootElement.nativeElement.style.position = 'contents';\n this.rootElement.nativeElement.style.height = '100%';\n this.appendToRoot();\n }\n\n // eslint-disable-next-line @typescript-eslint/naming-convention\n protected _createContainer(): void {\n super._createContainer();\n this.appendToRoot();\n }\n\n private appendToRoot(): void {\n if (!this._containerElement || !this.rootElement) {\n return;\n }\n\n this.rootElement.nativeElement.appendChild(this._containerElement);\n this.attached = true;\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/AppWebComponent.html":{"url":"components/AppWebComponent.html","title":"component - AppWebComponent","body":"\n \n\n\n\n\n\n Components\n \n AppWebComponent\n\n\n\n \n Info\n \n \n Source\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/app-web-component.component.ts\n\n\n\n\n \n Extends\n \n \n BaseWebComponent\n \n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-root-wc\n \n\n\n\n \n template\n \n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n initialized\n \n \n \n \n\n\n \n \n Inputs\n \n \n \n \n \n \n dataSources\n \n \n header\n \n \n homeUrl\n \n \n hubmapAssetUrl\n \n \n hubmapDataService\n \n \n hubmapDataUrl\n \n \n hubmapPortalUrl\n \n \n hubmapToken\n \n \n loginDisabled\n \n \n logoTooltip\n \n \n remoteApiEndpoint\n \n \n theme\n \n \n useRemoteApi\n \n \n \n \n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(configStore: GlobalConfigState, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:47\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n configStore\n \n \n GlobalConfigState\n \n \n \n No\n \n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n dataSources\n \n \n \n \n Type : string | string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:31\n \n \n \n \n \n \n \n \n \n header\n \n \n \n \n Type : string | boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:42\n \n \n \n \n \n \n \n \n \n homeUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:43\n \n \n \n \n \n \n \n \n \n hubmapAssetUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:35\n \n \n \n \n \n \n \n \n \n hubmapDataService\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:33\n \n \n \n \n \n \n \n \n \n hubmapDataUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:34\n \n \n \n \n \n \n \n \n \n hubmapPortalUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:37\n \n \n \n \n \n \n \n \n \n hubmapToken\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:36\n \n \n \n \n \n \n \n \n \n loginDisabled\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:45\n \n \n \n \n \n \n \n \n \n logoTooltip\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:44\n \n \n \n \n \n \n \n \n \n remoteApiEndpoint\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:40\n \n \n \n \n \n \n \n \n \n theme\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:41\n \n \n \n \n \n \n \n \n \n useRemoteApi\n \n \n \n \n Type : string | boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:39\n \n \n \n \n\n\n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n initialized\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/app-web-component.component.ts:47\n \n \n\n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input } from '@angular/core';\nimport { GlobalConfigState } from 'ccf-shared';\nimport { BaseWebComponent, BUILTIN_PARSERS, GenericGlobalConfig } from 'ccf-shared/web-components';\n\nimport { environment } from '../environments/environment';\n\n\nfunction parseDataSources(value: unknown): string[] {\n const isString = (val: unknown): val is string => typeof val === 'string';\n const isStringArray = (val: unknown): val is string[] => Array.isArray(val) && val.every(isString);\n\n if (typeof value === 'string') {\n const json = BUILTIN_PARSERS.json(value);\n if (isStringArray(json)) {\n return json;\n }\n } else if (isStringArray(value)) {\n return value;\n }\n\n throw new Error('Invalid data sources');\n}\n\n\n@Component({\n selector: 'ccf-root-wc',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class AppWebComponent extends BaseWebComponent {\n @Input() dataSources: string | string[];\n\n @Input() hubmapDataService: string;\n @Input() hubmapDataUrl: string;\n @Input() hubmapAssetUrl: string;\n @Input() hubmapToken: string;\n @Input() hubmapPortalUrl: string;\n\n @Input() useRemoteApi: string | boolean;\n @Input() remoteApiEndpoint: string;\n @Input() theme: string;\n @Input() header: string | boolean;\n @Input() homeUrl: string;\n @Input() logoTooltip: string;\n @Input() loginDisabled: boolean;\n\n initialized: boolean;\n\n constructor(\n configStore: GlobalConfigState,\n cdr: ChangeDetectorRef\n ) {\n super(configStore, cdr, {\n initialDelay: 10,\n\n initialConfig: {\n ...environment.dbOptions,\n ...globalThis['dbOptions'],\n ...environment.customization\n },\n parse: {\n dataSources: parseDataSources,\n useRemoteApi: BUILTIN_PARSERS.boolean,\n header: BUILTIN_PARSERS.boolean,\n loginDisabled: BUILTIN_PARSERS.boolean\n }\n });\n }\n}\n\n \n\n\n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'AppWebComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/CheckboxComponent.html":{"url":"components/CheckboxComponent.html","title":"component - CheckboxComponent","body":"\n \n\n\n\n\n\n Components\n \n CheckboxComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts\n\n\n\n \n Description\n \n \n Creates a labeled group of checkboxes and emits a current list of selections whenever a selection changes.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-checkbox\n \n\n \n styleUrls\n ./checkbox.component.scss\n \n\n\n\n \n templateUrl\n ./checkbox.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n filterOnChange\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n columns\n \n \n label\n \n \n options\n \n \n selection\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selectionChange\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:38\n \n \n\n \n \n Creates an instance of checkbox component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n columns\n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 3\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:33\n \n \n \n \n Number of columns\n\n \n \n \n \n \n \n \n \n \n label\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:18\n \n \n \n \n The label that describes the overall question the checkbox is asking\n\n \n \n \n \n \n \n \n \n \n options\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:23\n \n \n \n \n Used to generate the individual checkboxes and their individual labels\n\n \n \n \n \n \n \n \n \n \n selection\n \n \n \n \n Type : string[]\n\n \n \n \n \n Default value : []\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:28\n \n \n \n \n A list of the checkboxes the user has checked. To be updated any time a checkbox changes.\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selectionChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:38\n \n \n \n \n Any time a checkbox changes we emit that value so the parent component has that information\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n filterOnChange\n \n \n \n \n \n \nfilterOnChange(event: MatCheckboxChange, option: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts:53\n \n \n\n\n \n \n This method captures checkbox events and decides whether to add or remove a filter selection based on the checked property\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n MatCheckboxChange\n \n\n \n No\n \n\n\n \n Event object from the checkbox that contains the boolean property 'checked'\n\n \n \n \n option\n \n string\n \n\n \n No\n \n\n\n \n Tells us which option was checked or unchecked\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n/**\n * Creates a labeled group of checkboxes and emits a current list of selections whenever a selection changes.\n */\n@Component({\n selector: 'ccf-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CheckboxComponent {\n /**\n * The label that describes the overall question the checkbox is asking\n */\n @Input() label: string;\n\n /**\n * Used to generate the individual checkboxes and their individual labels\n */\n @Input() options: string[];\n\n /**\n * A list of the checkboxes the user has checked. To be updated any time a checkbox changes.\n */\n @Input() selection: string[] = [];\n\n /**\n * Number of columns\n */\n @Input() columns = 3;\n\n /**\n * Any time a checkbox changes we emit that value so the parent component has that information\n */\n @Output() readonly selectionChange = new EventEmitter();\n\n /**\n * Creates an instance of checkbox component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * This method captures checkbox events and decides whether to add or remove a filter selection based on the checked property\n *\n * @param event Event object from the checkbox that contains the boolean property 'checked'\n * @param option Tells us which option was checked or unchecked\n */\n filterOnChange(event: MatCheckboxChange, option: string): void {\n const checked = event.checked;\n\n if (checked) {\n this.selection = [...this.selection, option];\n this.ga.event('filter_added', 'filter_checkbox', option);\n } else {\n this.selection = this.selection.filter(selection => selection !== option);\n this.ga.event('filter_removed', 'filter_checkbox', option);\n }\n\n this.selectionChange.emit(this.selection);\n }\n}\n\n \n\n \n \n {{ label }}\n\n \n \n \n {{ option }}\n \n \n \n\n\n \n\n \n \n ./checkbox.component.scss\n \n ::ng-deep .mat-checkbox.mat-accent {\n .mat-checkbox-checkmark-path {\n stroke: white !important;\n }\n\n .mat-checkbox-inner-container {\n margin-right: 1rem;\n }\n}\n\n.filter-label {\n margin-bottom: 0.5rem;\n font-weight: bold;\n}\n\n.options-container {\n display: flex;\n flex-direction: row;\n flex-wrap: wrap;\n\n &.three {\n .option {\n width: 33%;\n }\n }\n\n &.four {\n .option {\n width: 25%;\n }\n }\n}\n\n.option {\n color: #fafafa;\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ label }} {{ option }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'CheckboxComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CheckboxModule.html":{"url":"modules/CheckboxModule.html","title":"module - CheckboxModule","body":"\n \n\n\n\n\n Modules\n CheckboxModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CheckboxModule\n\n\n\ncluster_CheckboxModule_declarations\n\n\n\ncluster_CheckboxModule_exports\n\n\n\n\nCheckboxComponent\n\nCheckboxComponent\n\n\n\nCheckboxModule\n\nCheckboxModule\n\nCheckboxModule -->\n\nCheckboxComponent->CheckboxModule\n\n\n\n\n\nCheckboxComponent \n\nCheckboxComponent \n\nCheckboxComponent -->\n\nCheckboxModule->CheckboxComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/checkbox/checkbox.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n CheckboxComponent\n \n \n \n \n Exports\n \n \n CheckboxComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\n\nimport { CheckboxComponent } from './checkbox.component';\n\n\n@NgModule({\n imports: [CommonModule, MatCheckboxModule],\n declarations: [CheckboxComponent],\n exports: [CheckboxComponent]\n})\nexport class CheckboxModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/Color.html":{"url":"interfaces/Color.html","title":"interface - Color","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n Color\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n color\n \n \n \n \n rank\n \n \n \n \n rgba\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n color\n \n \n \n \n \n \n \n \n color: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rank\n \n \n \n \n \n \n \n \n rank: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n rgba\n \n \n \n \n \n \n \n \n rgba: [number, number, number, number]\n\n \n \n\n\n \n \n Type : [number, number, number, number]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\nimport hexRgb from 'hex-rgb';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\n\n\nexport interface Color {\n color: string;\n rgba: [number, number, number, number];\n rank: number;\n}\n\nexport const DEFAULT_COLOR_PALETTE: Color[] = [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n});\n\nexport interface ColorAssignmentStateModel {\n colorPalette: Color[];\n colorsAvailable: Color[];\n colorAssignments: Record;\n colorAssignmentsList: { color: Color; key: string }[];\n}\n\n/**\n * Color Assignment State\n */\n@StateRepository()\n@State({\n name: 'colors',\n defaults: {\n colorPalette: DEFAULT_COLOR_PALETTE.concat(),\n colorsAvailable: DEFAULT_COLOR_PALETTE.concat(),\n colorAssignments: {},\n colorAssignmentsList: []\n }\n})\n@Injectable()\nexport class ColorAssignmentState extends NgxsImmutableDataRepository {\n private readonly forcedUnassignment = new Subject();\n\n readonly forcedUnassignment$ = this.forcedUnassignment.asObservable();\n readonly colorAssignments$ = this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged());\n readonly colorAssignmentsList$ = this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged());\n\n getColor(key: string): Immutable | undefined {\n const { colorAssignments } = this.snapshot;\n return colorAssignments[key];\n }\n\n @DataAction()\n assignColor(@Payload('key') key: string, @Payload('doReset') doReset = false): Immutable {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n if (doReset) {\n colorsAvailable = this.snapshot.colorPalette.concat();\n colorAssignmentsList = [];\n colorAssignments = {};\n }\n let color = colorAssignments[key];\n if (!color) {\n if (colorsAvailable.length > 0) {\n color = colorsAvailable[0];\n } else {\n color = colorAssignmentsList[colorAssignmentsList.length - 1].color;\n colorAssignmentsList = colorAssignmentsList.slice(0, -1);\n this.forcedUnassignment.next();\n }\n colorsAvailable = colorsAvailable.filter(c => c.color !== color.color);\n colorAssignmentsList = [{ color, key }].concat(colorAssignmentsList);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n return color;\n }\n\n @DataAction()\n unassignColor(@Payload('key') key: string): void {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n const color = colorAssignments[key];\n if (color) {\n colorsAvailable = [color].concat(colorsAvailable);\n colorAssignmentsList = colorAssignmentsList.filter(a => a.color.color !== color.color);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ColorAssignmentState.html":{"url":"injectables/ColorAssignmentState.html","title":"injectable - ColorAssignmentState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n ColorAssignmentState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n\n\n \n Description\n \n \n Color Assignment State\n\n \n\n \n Extends\n \n \n NgxsImmutableDataRepository\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n colorAssignments$\n \n \n Readonly\n colorAssignmentsList$\n \n \n Private\n Readonly\n forcedUnassignment\n \n \n Readonly\n forcedUnassignment$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n assignColor\n \n \n getColor\n \n \n unassignColor\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n assignColor\n \n \n \n \n \n \nassignColor(key: string, doReset)\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:69\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Default value\n \n \n \n \n key\n \n string\n \n\n \n No\n \n\n \n \n\n \n \n doReset\n \n \n\n \n No\n \n\n \n false\n \n\n \n \n \n \n \n \n \n Returns : Immutable\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n getColor\n \n \n \n \n \n \ngetColor(key: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:63\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Immutable | undefined\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n unassignColor\n \n \n \n \n \n \nunassignColor(key: string)\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:102\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n key\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n colorAssignments$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:60\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n colorAssignmentsList$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:61\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n Readonly\n forcedUnassignment\n \n \n \n \n \n \n Default value : new Subject()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:57\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n forcedUnassignment$\n \n \n \n \n \n \n Default value : this.forcedUnassignment.asObservable()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts:59\n \n \n\n\n \n \n\n\n \n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\nimport hexRgb from 'hex-rgb';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\n\n\nexport interface Color {\n color: string;\n rgba: [number, number, number, number];\n rank: number;\n}\n\nexport const DEFAULT_COLOR_PALETTE: Color[] = [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n});\n\nexport interface ColorAssignmentStateModel {\n colorPalette: Color[];\n colorsAvailable: Color[];\n colorAssignments: Record;\n colorAssignmentsList: { color: Color; key: string }[];\n}\n\n/**\n * Color Assignment State\n */\n@StateRepository()\n@State({\n name: 'colors',\n defaults: {\n colorPalette: DEFAULT_COLOR_PALETTE.concat(),\n colorsAvailable: DEFAULT_COLOR_PALETTE.concat(),\n colorAssignments: {},\n colorAssignmentsList: []\n }\n})\n@Injectable()\nexport class ColorAssignmentState extends NgxsImmutableDataRepository {\n private readonly forcedUnassignment = new Subject();\n\n readonly forcedUnassignment$ = this.forcedUnassignment.asObservable();\n readonly colorAssignments$ = this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged());\n readonly colorAssignmentsList$ = this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged());\n\n getColor(key: string): Immutable | undefined {\n const { colorAssignments } = this.snapshot;\n return colorAssignments[key];\n }\n\n @DataAction()\n assignColor(@Payload('key') key: string, @Payload('doReset') doReset = false): Immutable {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n if (doReset) {\n colorsAvailable = this.snapshot.colorPalette.concat();\n colorAssignmentsList = [];\n colorAssignments = {};\n }\n let color = colorAssignments[key];\n if (!color) {\n if (colorsAvailable.length > 0) {\n color = colorsAvailable[0];\n } else {\n color = colorAssignmentsList[colorAssignmentsList.length - 1].color;\n colorAssignmentsList = colorAssignmentsList.slice(0, -1);\n this.forcedUnassignment.next();\n }\n colorsAvailable = colorsAvailable.filter(c => c.color !== color.color);\n colorAssignmentsList = [{ color, key }].concat(colorAssignmentsList);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n return color;\n }\n\n @DataAction()\n unassignColor(@Payload('key') key: string): void {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n const color = colorAssignments[key];\n if (color) {\n colorsAvailable = [color].concat(colorsAvailable);\n colorAssignmentsList = colorAssignmentsList.filter(a => a.color.color !== color.color);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ColorAssignmentStateModel.html":{"url":"interfaces/ColorAssignmentStateModel.html","title":"interface - ColorAssignmentStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ColorAssignmentStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n colorAssignments\n \n \n \n \n colorAssignmentsList\n \n \n \n \n colorPalette\n \n \n \n \n colorsAvailable\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n colorAssignments\n \n \n \n \n \n \n \n \n colorAssignments: Record\n\n \n \n\n\n \n \n Type : Record\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorAssignmentsList\n \n \n \n \n \n \n \n \n colorAssignmentsList: literal type[]\n\n \n \n\n\n \n \n Type : literal type[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorPalette\n \n \n \n \n \n \n \n \n colorPalette: Color[]\n\n \n \n\n\n \n \n Type : Color[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n colorsAvailable\n \n \n \n \n \n \n \n \n colorsAvailable: Color[]\n\n \n \n\n\n \n \n Type : Color[]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\nimport hexRgb from 'hex-rgb';\nimport { Subject } from 'rxjs';\nimport { distinctUntilChanged, pluck } from 'rxjs/operators';\n\n\nexport interface Color {\n color: string;\n rgba: [number, number, number, number];\n rank: number;\n}\n\nexport const DEFAULT_COLOR_PALETTE: Color[] = [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n});\n\nexport interface ColorAssignmentStateModel {\n colorPalette: Color[];\n colorsAvailable: Color[];\n colorAssignments: Record;\n colorAssignmentsList: { color: Color; key: string }[];\n}\n\n/**\n * Color Assignment State\n */\n@StateRepository()\n@State({\n name: 'colors',\n defaults: {\n colorPalette: DEFAULT_COLOR_PALETTE.concat(),\n colorsAvailable: DEFAULT_COLOR_PALETTE.concat(),\n colorAssignments: {},\n colorAssignmentsList: []\n }\n})\n@Injectable()\nexport class ColorAssignmentState extends NgxsImmutableDataRepository {\n private readonly forcedUnassignment = new Subject();\n\n readonly forcedUnassignment$ = this.forcedUnassignment.asObservable();\n readonly colorAssignments$ = this.state$.pipe(pluck('colorAssignments'), distinctUntilChanged());\n readonly colorAssignmentsList$ = this.state$.pipe(pluck('colorAssignmentsList'), distinctUntilChanged());\n\n getColor(key: string): Immutable | undefined {\n const { colorAssignments } = this.snapshot;\n return colorAssignments[key];\n }\n\n @DataAction()\n assignColor(@Payload('key') key: string, @Payload('doReset') doReset = false): Immutable {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n if (doReset) {\n colorsAvailable = this.snapshot.colorPalette.concat();\n colorAssignmentsList = [];\n colorAssignments = {};\n }\n let color = colorAssignments[key];\n if (!color) {\n if (colorsAvailable.length > 0) {\n color = colorsAvailable[0];\n } else {\n color = colorAssignmentsList[colorAssignmentsList.length - 1].color;\n colorAssignmentsList = colorAssignmentsList.slice(0, -1);\n this.forcedUnassignment.next();\n }\n colorsAvailable = colorsAvailable.filter(c => c.color !== color.color);\n colorAssignmentsList = [{ color, key }].concat(colorAssignmentsList);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n return color;\n }\n\n @DataAction()\n unassignColor(@Payload('key') key: string): void {\n let { colorAssignments, colorAssignmentsList, colorsAvailable } = this.snapshot;\n const color = colorAssignments[key];\n if (color) {\n colorsAvailable = [color].concat(colorsAvailable);\n colorAssignmentsList = colorAssignmentsList.filter(a => a.color.color !== color.color);\n colorAssignments = colorAssignmentsList.reduce>>((acc, item, rank) => {\n acc[item.key] = { ...item.color, rank };\n return acc;\n }, {});\n\n this.ctx.patchState({\n colorsAvailable,\n colorAssignments,\n colorAssignmentsList\n });\n }\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ContainerComponent.html":{"url":"components/ContainerComponent.html","title":"component - ContainerComponent","body":"\n \n\n\n\n\n\n Components\n \n ContainerComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n\n\n\n \n Description\n \n \n Main container for drawer components.\n\n \n\n\n \n Implements\n \n \n AfterViewInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n \n exportAs\n ccfDrawerContainer\n \n\n\n\n\n\n \n providers\n \n MessageService\n \n \n\n\n \n selector\n ccf-drawer-container\n \n\n \n styleUrls\n ./container.component.scss\n \n\n\n\n \n templateUrl\n ./container.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n channel\n \n \n Readonly\n className\n \n \n Private\n content1\n \n \n Private\n content2\n \n \n Private\n drawers\n \n \n Private\n subscriptions\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n handleMessage\n \n \n ngAfterViewInit\n \n \n ngOnDestroy\n \n \n Private\n validateDrawers\n \n \n \n \n\n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n content\n \n \n hasWrappedContent\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(messageService: MessageService, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:62\n \n \n\n \n \n Creates an instance of container component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n messageService\n \n \n MessageService\n \n \n \n No\n \n \n \n The service used to send event messages.\n\n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n The change detector reference.\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-drawer-container\"\n\n \n \n \n \n Default value : 'ccf-drawer-container'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:37\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n handleMessage\n \n \n \n \n \n \n \n handleMessage(_msg: Message)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:115\n \n \n\n\n \n \n Processes event messages.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n _msg\n \n Message\n \n\n \n No\n \n\n\n \n The event.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if change detection needs to be run.\n\n \n \n \n \n \n \n \n \n \n \n \n ngAfterViewInit\n \n \n \n \n \n \nngAfterViewInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:83\n \n \n\n\n \n \n Sets up all listeners after all content has been projected.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:105\n \n \n\n\n \n \n Cleans up all subscriptions.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n validateDrawers\n \n \n \n \n \n \n \n validateDrawers()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:124\n \n \n\n\n \n \n Validates the number of drawers and their positions.\n\n\n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n channel\n \n \n \n \n \n \n Type : MessageChannel\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:60\n \n \n\n \n \n The connected message channel.\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-drawer-container'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:37\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n content1\n \n \n \n \n \n \n Type : QueryList\n\n \n \n \n \n Decorators : \n \n \n @ContentChildren(ContentComponent, {descendants: true})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:45\n \n \n\n \n \n Content component if provided already wrapped.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n content2\n \n \n \n \n \n \n Type : QueryList\n\n \n \n \n \n Decorators : \n \n \n @ViewChildren(ContentComponent)\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:48\n \n \n\n \n \n Content component if provided without wrapping.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n drawers\n \n \n \n \n \n \n Type : QueryList\n\n \n \n \n \n Decorators : \n \n \n @ContentChildren(DrawerComponent, {descendants: true})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:41\n \n \n\n \n \n Drawer components in this container.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n subscriptions\n \n \n \n \n \n \n Default value : new Subscription()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:62\n \n \n\n \n \n All subscriptions managed by the container.\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n content\n \n \n\n \n \n getcontent()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:50\n \n \n \n \n Resolves the content component.\n\n\n \n Returns : ContentComponent\n\n \n \n \n\n \n \n \n \n \n \n \n hasWrappedContent\n \n \n\n \n \n gethasWrappedContent()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts:55\n \n \n \n \n Whether the content was wrapped.\n\n\n \n Returns : boolean\n\n \n \n \n\n \n \n\n\n\n\n \n import {\n AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, HostBinding, OnDestroy, QueryList,\n ViewChildren,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\n\nimport { ContentComponent } from '../content/content.component';\nimport { DrawerComponent } from '../drawer/drawer.component';\nimport { Message, MessageChannel, MessageService } from '../messages';\n\n\n/**\n * Helper function for creating drawer errors.\n *\n * @param position The position of the drawer.\n * @throws {Error} Error with useful message is always thrown.\n */\nfunction throwDuplicateDrawersError(position: 'start' | 'end'): never {\n throw new Error(`Multiple drawers in position ${position}`);\n}\n\n\n/**\n * Main container for drawer components.\n */\n@Component({\n selector: 'ccf-drawer-container',\n exportAs: 'ccfDrawerContainer',\n templateUrl: './container.component.html',\n styleUrls: ['./container.component.scss'],\n providers: [MessageService],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ContainerComponent implements AfterViewInit, OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer-container';\n\n /** Drawer components in this container. */\n @ContentChildren(DrawerComponent, { descendants: true })\n private drawers: QueryList;\n\n /** Content component if provided already wrapped. */\n @ContentChildren(ContentComponent, { descendants: true })\n private content1: QueryList;\n /** Content component if provided without wrapping. */\n @ViewChildren(ContentComponent)\n private content2: QueryList;\n /** Resolves the content component. */\n private get content(): ContentComponent {\n return this.content1.first ?? this.content2.first;\n }\n\n /** Whether the content was wrapped. */\n get hasWrappedContent(): boolean {\n return this.content1.length !== 0;\n }\n\n /** The connected message channel. */\n private channel: MessageChannel;\n /** All subscriptions managed by the container. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of container component.\n *\n * @param messageService The service used to send event messages.\n * @param cdr The change detector reference.\n */\n constructor(messageService: MessageService,\n private cdr: ChangeDetectorRef) {\n this.channel = messageService.connect(this);\n this.subscriptions.add(this.channel.getMessages().subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /**\n * Sets up all listeners after all content has been projected.\n */\n ngAfterViewInit(): void {\n this.drawers.changes.pipe(startWith(null)).subscribe(() => {\n const drawers = this.validateDrawers();\n this.channel.sendMessage({\n type: 'drawer-containers-changed',\n drawers\n });\n this.cdr.markForCheck();\n });\n\n this.content1.changes.pipe(startWith(null)).subscribe(() => {\n this.channel.sendMessage({\n type: 'content-container-changed',\n content: this.content\n });\n this.cdr.markForCheck();\n });\n }\n\n /**\n * Cleans up all subscriptions.\n */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Processes event messages.\n *\n * @param _msg The event.\n * @returns true if change detection needs to be run.\n */\n private handleMessage(_msg: Message): boolean {\n return true;\n }\n\n /**\n * Validates the number of drawers and their positions.\n *\n * @returns A tuple containing the start and end drawers.\n */\n private validateDrawers(): [DrawerComponent | undefined, DrawerComponent | undefined] {\n const drawers = this.drawers.toArray();\n const startDrawers = drawers.filter(drawer => drawer.position === 'start');\n const endDrawers = drawers.filter(drawer => drawer.position === 'end');\n\n if (startDrawers.length > 1) {\n throwDuplicateDrawersError('start');\n }\n if (endDrawers.length > 1) {\n throwDuplicateDrawersError('end');\n }\n\n return [startDrawers[0], endDrawers[0]];\n }\n}\n\n \n\n \n \n\n\n\n \n\n\n \n\n \n \n ./container.component.scss\n \n :host {\n display: block;\n position: relative;\n z-index: 1;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ContainerComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ContentComponent.html":{"url":"components/ContentComponent.html","title":"component - ContentComponent","body":"\n \n\n\n\n\n\n Components\n \n ContentComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts\n\n\n\n \n Description\n \n \n Component wrapping and providing animations for center content.\n\n \n\n\n \n Implements\n \n \n OnDestroy\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-drawer-content\n \n\n \n styleUrls\n ./content.component.scss\n \n\n\n \n template\n \n \n\n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n animationsEnabled\n \n \n Readonly\n className\n \n \n Private\n drawers\n \n \n faded\n \n \n leftMargin\n \n \n rightMargin\n \n \n Private\n subscriptions\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n handleMessage\n \n \n ngOnDestroy\n \n \n Private\n updateFaded\n \n \n Private\n updateMargin\n \n \n \n \n\n\n\n \n \n HostBindings\n \n \n \n \n \n \n @fadeInOut\n \n \n class\n \n \n class.cff-drawer-content-animations\n \n \n style.margin-left.px\n \n \n style.margin-right.px\n \n \n \n \n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(messageService: MessageService, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:41\n \n \n\n \n \n Creates an instance of content component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n messageService\n \n \n MessageService\n \n \n \n No\n \n \n \n Service used to send and receive event messages.\n\n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n The change detector reference.\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n \n HostBindings \n \n \n \n \n \n @fadeInOut\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:36\n \n \n\n \n \n Whether the content is invisible.\n\n \n \n\n \n \n \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-drawer-content\"\n\n \n \n \n \n Default value : 'ccf-drawer-content'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:28\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n class.cff-drawer-content-animations\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:30\n \n \n\n \n \n Whether animations are enabled.\n\n \n \n\n \n \n \n \n \n \n \n \n style.margin-left.px\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:32\n \n \n\n \n \n Left margin size.\n\n \n \n\n \n \n \n \n \n \n \n \n style.margin-right.px\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:34\n \n \n\n \n \n Right margin size.\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n handleMessage\n \n \n \n \n \n \n \n handleMessage(msg: Message)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:70\n \n \n\n\n \n \n Process an event message.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n msg\n \n Message\n \n\n \n No\n \n\n\n \n The event.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if change detection needs to run.\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:60\n \n \n\n\n \n \n Cleans up all subscriptions.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n updateFaded\n \n \n \n \n \n \n \n updateFaded()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:116\n \n \n\n\n \n \n Checks and updates the faded state based on the drawer states.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n updateMargin\n \n \n \n \n \n \n \n updateMargin(position: \"start\" | \"end\", opened: boolean, width: number, margin: number)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:103\n \n \n\n\n \n \n Updates a margin.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n position\n \n \"start\" | \"end\"\n \n\n \n No\n \n\n\n \n Start (left) or end (right) margin.\n\n \n \n \n opened\n \n boolean\n \n\n \n No\n \n\n\n \n Whether the drawer is opened.\n\n \n \n \n width\n \n number\n \n\n \n No\n \n\n\n \n The width of the drawer if opened.\n\n \n \n \n margin\n \n number\n \n\n \n No\n \n\n\n \n The margin size.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n animationsEnabled\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Decorators : \n \n \n @HostBinding('class.cff-drawer-content-animations')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:30\n \n \n\n \n \n Whether animations are enabled.\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-drawer-content'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:28\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n drawers\n \n \n \n \n \n \n Type : DrawerComponent[]\n\n \n \n \n \n Default value : []\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:39\n \n \n\n \n \n References to the side drawers.\n\n \n \n\n \n \n \n \n \n \n \n \n faded\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Decorators : \n \n \n @HostBinding('@fadeInOut')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:36\n \n \n\n \n \n Whether the content is invisible.\n\n \n \n\n \n \n \n \n \n \n \n \n leftMargin\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Decorators : \n \n \n @HostBinding('style.margin-left.px')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:32\n \n \n\n \n \n Left margin size.\n\n \n \n\n \n \n \n \n \n \n \n \n rightMargin\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Decorators : \n \n \n @HostBinding('style.margin-right.px')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:34\n \n \n\n \n \n Right margin size.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n subscriptions\n \n \n \n \n \n \n Default value : new Subscription()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts:41\n \n \n\n \n \n Subscriptions managed by this component.\n\n \n \n\n \n \n\n\n\n\n\n \n import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostBinding, OnDestroy } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { DrawerComponent } from '../drawer/drawer.component';\nimport { Message, MessageService } from '../messages';\n\n\n/**\n * Component wrapping and providing animations for center content.\n */\n@Component({\n selector: 'ccf-drawer-content',\n template: '',\n styleUrls: ['./content.component.scss'],\n animations: [\n trigger('fadeInOut', [\n state('false', style({ opacity: 1 })),\n state('true', style({ opacity: 0 })),\n\n transition('false true', animate('1s'))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ContentComponent implements OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer-content';\n /** Whether animations are enabled. */\n @HostBinding('class.cff-drawer-content-animations') animationsEnabled = false;\n /** Left margin size. */\n @HostBinding('style.margin-left.px') leftMargin = 0;\n /** Right margin size. */\n @HostBinding('style.margin-right.px') rightMargin = 0;\n /** Whether the content is invisible. */\n @HostBinding('@fadeInOut') faded = false;\n\n /** References to the side drawers. */\n private drawers: DrawerComponent[] = [];\n /** Subscriptions managed by this component. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of content component.\n *\n * @param messageService Service used to send and receive event messages.\n * @param cdr The change detector reference.\n */\n constructor(messageService: MessageService,\n cdr: ChangeDetectorRef) {\n const messages = messageService.connect(this).getMessages();\n this.subscriptions.add(messages.subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /** Cleans up all subscriptions. */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Process an event message.\n *\n * @param msg The event.\n * @returns true if change detection needs to run.\n */\n private handleMessage(msg: Message): boolean {\n switch (msg.payload.type) {\n case 'drawer-containers-changed':\n this.drawers = msg.payload.drawers as DrawerComponent[];\n this.updateFaded();\n return true;\n\n case 'drawer-initialized':\n this.animationsEnabled = true;\n return true;\n\n case 'drawer-toggled': {\n const position = (msg.source as DrawerComponent).position;\n const { opened, width, margin } = msg.payload;\n\n this.updateMargin(position, opened, width, margin);\n this.updateFaded();\n return true;\n }\n\n default:\n return false;\n }\n }\n\n /**\n * Updates a margin.\n *\n * @param position Start (left) or end (right) margin.\n * @param opened Whether the drawer is opened.\n * @param width The width of the drawer if opened.\n * @param margin The margin size.\n */\n private updateMargin(position: 'start' | 'end', opened: boolean,\n width: number, margin: number): void {\n const offset = opened ? width + margin : margin;\n if (position === 'start') {\n this.leftMargin = offset;\n } else {\n this.rightMargin = offset;\n }\n }\n\n /**\n * Checks and updates the faded state based on the drawer states.\n */\n private updateFaded(): void {\n const [start, end] = this.drawers;\n const startExpanded = start?.opened && start?.expanded;\n const endExpanded = end?.opened && end?.expanded;\n this.faded = startExpanded || endExpanded;\n }\n}\n\n \n\n\n \n \n ./content.component.scss\n \n :host {\n display: block;\n height: calc(100% - 5.5rem);\n z-index: 2;\n overflow: auto;\n\n &.cff-drawer-content-animations {\n transition: {\n duration: .5s;\n timing-function: ease-in-out;\n property: margin-left, margin-right;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ContentComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ContentContainerChanged.html":{"url":"interfaces/ContentContainerChanged.html","title":"interface - ContentContainerChanged","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ContentContainerChanged\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message sent when the content component changes.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n content\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n content\n \n \n \n \n \n \n \n \n content: \n\n \n \n\n\n\n\n\n\n\n \n \n A reference to the new content component.\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/CoreModule.html":{"url":"modules/CoreModule.html","title":"module - CoreModule","body":"\n \n\n\n\n\n Modules\n CoreModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_CoreModule\n\n\n\ncluster_CoreModule_imports\n\n\n\ncluster_CoreModule_exports\n\n\n\n\nHeaderModule\n\nHeaderModule\n\n\n\nCoreModule\n\nCoreModule\n\nCoreModule -->\n\nHeaderModule->CoreModule\n\n\n\n\n\nStoreModule\n\nStoreModule\n\nCoreModule -->\n\nStoreModule->CoreModule\n\n\n\n\n\nThemingModule\n\nThemingModule\n\nCoreModule -->\n\nThemingModule->CoreModule\n\n\n\n\n\nHeaderModule \n\nHeaderModule \n\nHeaderModule -->\n\nCoreModule->HeaderModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/core.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n HeaderModule\n \n \n StoreModule\n \n \n ThemingModule\n \n \n \n \n Exports\n \n \n HeaderModule\n \n \n \n \n \n\n\n \n\n\n \n import { HttpClientModule } from '@angular/common/http';\nimport { NgModule, Optional, SkipSelf } from '@angular/core';\nimport { DataSourceService, MousePositionTrackerModule } from 'ccf-shared';\nimport { AnalyticsModule } from 'ccf-shared/analytics';\nimport { CcfApiConfiguration, CcfApiModule } from 'ccf-openapi/angular-client';\n\nimport { environment } from '../../environments/environment';\nimport { HeaderModule } from './header/header.module';\nimport { DelegateDataSourceService } from './services/data-source/data-source.service';\nimport { ThemingModule } from './services/theming/theming.module';\nimport { StoreModule } from './store/store.module';\n\n\n@NgModule({\n imports: [\n HttpClientModule,\n\n AnalyticsModule.forRoot({\n gaToken: environment.googleAnalyticsToken,\n appName: 'eui'\n }),\n MousePositionTrackerModule,\n\n CcfApiModule.forRoot(() => new CcfApiConfiguration({\n basePath: environment.dbOptions.remoteApiEndpoint\n })),\n\n HeaderModule,\n StoreModule,\n ThemingModule\n ],\n providers: [\n { provide: DataSourceService, useExisting: DelegateDataSourceService }\n ],\n exports: [HeaderModule]\n})\nexport class CoreModule {\n constructor(@Optional() @SkipSelf() core: CoreModule) {\n if (core) {\n throw new Error('The core module should only be imported once in the root module');\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DataStateModel.html":{"url":"interfaces/DataStateModel.html","title":"interface - DataStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DataStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n\n\n \n Description\n \n \n Store data state.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n filter\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n filter\n \n \n \n \n \n \n \n \n filter: Filter\n\n \n \n\n\n \n \n Type : Filter\n\n \n \n\n\n\n\n\n \n \n Current filter.\n\n \n \n \n \n \n \n\n\n \n import { Injectable } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { bind } from 'bind-decorator';\nimport { AggregateResult, Filter, SpatialSceneNode, TissueBlockResult } from 'ccf-database';\nimport { DataSourceService } from 'ccf-shared';\nimport { combineLatest, ObservableInput, ObservedValueOf, OperatorFunction, ReplaySubject, Subject } from 'rxjs';\nimport { distinct, map, pluck, publishReplay, refCount, switchMap, take, tap } from 'rxjs/operators';\n\n\n\n/** Default values for filters. */\nexport const DEFAULT_FILTER: Filter = {\n sex: 'Both',\n ageRange: [1, 110],\n bmiRange: [13, 83],\n tmc: [],\n technologies: [],\n ontologyTerms: ['http://purl.obolibrary.org/obo/UBERON_0013702'],\n cellTypeTerms: ['http://purl.obolibrary.org/obo/CL_0000000']\n};\n\n/** Current state of data queries. */\n// eslint-disable-next-line no-shadow\nexport enum DataQueryState {\n /** One or more queries are running. */\n Running = 'running',\n /** All queries have completed. */\n Completed = 'completed'\n}\n\n/**\n * Helper for testing that all states in an array are `DataQueryState.Completed`.\n *\n * @param states The array of states to test.\n * @returns true if all values in the array is `Completed`.\n */\nfunction allCompleted(states: DataQueryState[]): boolean {\n return states.every(state => state === DataQueryState.Completed);\n}\n\n/**\n * Helper creating a function that sends a `DataQueryState.Completed` to\n * a subject whenever it is called.\n *\n * @param subject The subject to send completed messagess to.\n * @returns The function.\n */\nfunction sendCompletedTo(subject: Subject): () => void {\n return () => subject.next(DataQueryState.Completed);\n}\n\n/**\n * Helper operator that combines querying with sharing and replay functionality.\n *\n * @param query The data query function.\n * @param [next] An optional listener on the values emitted by the latest query.\n * @returns The combined pipe operator function.\n */\nfunction queryData>(\n query: (value: T, index: number) => O,\n next?: (value: ObservedValueOf) => void\n): OperatorFunction> {\n return source => source.pipe(\n switchMap(query),\n tap(next),\n publishReplay(1),\n refCount()\n );\n}\n\n\n/** Store data state. */\nexport interface DataStateModel {\n /** Current filter. */\n filter: Filter;\n}\n\n\n/**\n * Data state repository and service.\n */\n@StateRepository()\n@State({\n name: 'data',\n defaults: {\n filter: DEFAULT_FILTER\n }\n})\n@Injectable()\nexport class DataState extends NgxsDataRepository implements NgxsOnInit {\n /** Implementation subject for tissueBlockDataQueryStatus$. */\n private readonly _tissueBlockDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for aggregateDataQueryStatus$. */\n private readonly _aggregateDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for ontologyTermOccurencesDataQueryStatus$. */\n private readonly _ontologyTermOccurencesDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for cellTypeTermOccurencesDataQueryStatus$. */\n private readonly _cellTypeTermOccurencesDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for sceneDataQueryStatus$. */\n private readonly _sceneDataQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for technologyFilterQueryStatus$. */\n private readonly _technologyFilterQueryStatus$ = new ReplaySubject(1);\n /** Implementation subject for providerFilterQueryStatus$. */\n private readonly _providerFilterQueryStatus$ = new ReplaySubject(1);\n /** Keeping track of all ontology terms there is data for. */\n readonly ontologyTermsFullData$ = new ReplaySubject>(1);\n /** Keeping track of all cell type terms there is data for. */\n readonly cellTypeTermsFullData$ = new ReplaySubject>(1);\n\n /** Current filter. */\n readonly filter$ = this.state$.pipe(pluck('filter'));\n /** Latest tissue block query data. */\n readonly tissueBlockData$ = this.filter$.pipe(queryData(\n this.tissueBlockData, sendCompletedTo(this._tissueBlockDataQueryStatus$)\n ));\n /** Latest aggregate query data. */\n readonly aggregateData$ = this.filter$.pipe(queryData(\n this.aggregateData, sendCompletedTo(this._aggregateDataQueryStatus$)\n ));\n /** Latest ontology term occurences query data. */\n readonly ontologyTermOccurencesData$ = this.filter$.pipe(queryData(\n this.ontologyTermOccurencesData, sendCompletedTo(this._ontologyTermOccurencesDataQueryStatus$)\n ));\n /** Latest cell type term occurences query data. */\n readonly cellTypeTermOccurencesData$ = this.filter$.pipe(queryData(\n this.cellTypeTermOccurencesData, sendCompletedTo(this._cellTypeTermOccurencesDataQueryStatus$)\n ));\n /** Latest scene query data. */\n readonly sceneData$ = this.filter$.pipe(queryData(\n this.sceneData, sendCompletedTo(this._sceneDataQueryStatus$)\n ));\n /** Latest technology filter label query data. */\n readonly technologyFilterData$ = this.filter$.pipe(queryData(\n this.technologyFilterData, sendCompletedTo(this._technologyFilterQueryStatus$)\n ));\n /** Latest provider filter label query data. */\n readonly providerFilterData$ = this.filter$.pipe(queryData(\n this.providerFilterData, sendCompletedTo(this._providerFilterQueryStatus$)\n ));\n\n /** Current status of queries in the tissueBlockData$ observable. */\n readonly tissueBlockDataQueryStatus$ = this._tissueBlockDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the aggregateData$ observable. */\n readonly aggregateDataQueryStatus$ = this._aggregateDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the ontologyTermOccurrences$ observable. */\n readonly ontologyTermOccurencesDataQueryStatus$ = this._ontologyTermOccurencesDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the cellTypeTermOccurrences$ observable. */\n readonly cellTypeTermOccurencesDataQueryStatus$ = this._cellTypeTermOccurencesDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the sceneData$ observable. */\n readonly sceneDataQueryStatus$ = this._sceneDataQueryStatus$.pipe(distinct());\n /** Current status of queries in the technologyFilter$ observable. */\n readonly technologyFilterQueryStatus$ = this._technologyFilterQueryStatus$.pipe(distinct());\n /** Current status of queries in the providerFilter$ observable. */\n readonly providerFilterQueryStatus$ = this._providerFilterQueryStatus$.pipe(distinct());\n\n /** Current status of all queries. */\n readonly queryStatus$ = combineLatest([\n this.tissueBlockDataQueryStatus$,\n this.aggregateDataQueryStatus$,\n this.ontologyTermOccurencesDataQueryStatus$,\n this.cellTypeTermOccurencesDataQueryStatus$,\n this.sceneDataQueryStatus$,\n this.technologyFilterQueryStatus$,\n this.providerFilterQueryStatus$\n ]).pipe(\n map(states => allCompleted(states) ? DataQueryState.Completed : DataQueryState.Running),\n distinct()\n );\n\n /**\n * Creates an instance of data state.\n *\n * @param source Data query service.\n */\n constructor(private readonly source: DataSourceService) {\n super();\n // Start everything in the completed state\n this._tissueBlockDataQueryStatus$.next(DataQueryState.Completed);\n this._aggregateDataQueryStatus$.next(DataQueryState.Completed);\n this._ontologyTermOccurencesDataQueryStatus$.next(DataQueryState.Completed);\n this._cellTypeTermOccurencesDataQueryStatus$.next(DataQueryState.Completed);\n this._sceneDataQueryStatus$.next(DataQueryState.Completed);\n this._technologyFilterQueryStatus$.next(DataQueryState.Completed);\n this._providerFilterQueryStatus$.next(DataQueryState.Completed);\n }\n\n ngxsOnInit(): void {\n const { ontologyTermsFullData$, ontologyTermOccurencesData$, cellTypeTermsFullData$, cellTypeTermOccurencesData$, source, snapshot: { filter } } = this;\n if (filter === DEFAULT_FILTER) {\n // Common case - Reuse the result of the regular query\n ontologyTermOccurencesData$.pipe(take(1)).subscribe(ontologyTermsFullData$);\n cellTypeTermOccurencesData$.pipe(take(1)).subscribe(cellTypeTermsFullData$);\n } else {\n source.getOntologyTermOccurences().pipe(take(1)).subscribe(ontologyTermsFullData$);\n source.getCellTypeTermOccurences().pipe(take(1)).subscribe(cellTypeTermsFullData$);\n }\n }\n\n /**\n * Updates the current filter.\n *\n * @param filter Changes to be made to the current filter.\n */\n @DataAction()\n updateFilter(@Payload('filter') filter: Partial): void {\n this.patchState({\n // Might need to do a deep compare of current and new filter\n filter: { ...this.getState().filter, ...filter }\n });\n }\n\n /**\n * Queries for tissue block data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private tissueBlockData(filter: Filter): ObservableInput {\n this._tissueBlockDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getTissueBlockResults(filter);\n }\n\n /**\n * Queries for aggregate data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private aggregateData(filter: Filter): ObservableInput {\n this._aggregateDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getAggregateResults(filter);\n }\n\n /**\n * Queries for ontology term occurences data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private ontologyTermOccurencesData(filter: Filter): ObservableInput> {\n this._ontologyTermOccurencesDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getOntologyTermOccurences(filter);\n }\n\n /**\n * Queries for cell type term occurences data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private cellTypeTermOccurencesData(filter: Filter): ObservableInput> {\n this._cellTypeTermOccurencesDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getCellTypeTermOccurences(filter);\n }\n\n /**\n * Queries for scene data.\n *\n * @param filter The filter used during query.\n * @returns The result of the query.\n */\n @bind\n private sceneData(filter: Filter): ObservableInput {\n this._sceneDataQueryStatus$.next(DataQueryState.Running);\n return this.source.getScene(filter);\n }\n\n /**\n * Queries for technology filter data.\n *\n * @returns The result of the query.\n */\n @bind\n private technologyFilterData(): ObservableInput {\n this._technologyFilterQueryStatus$.next(DataQueryState.Running);\n return this.source.getDatasetTechnologyNames();\n }\n\n /**\n * Queries for provider filter data.\n *\n * @returns The result of the query.\n */\n @bind\n private providerFilterData(): ObservableInput {\n this._providerFilterQueryStatus$.next(DataQueryState.Running);\n return this.source.getProviderNames();\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DefaultIconDefinition.html":{"url":"interfaces/DefaultIconDefinition.html","title":"interface - DefaultIconDefinition","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DefaultIconDefinition\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n\n\n \n Description\n \n \n Object definition for icon that should be loaded on startup.\nUnlike runtime registration object this does not need url ot html\nto be sanitized before hand.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n html\n \n \n \n Optional\n \n name\n \n \n \n Optional\n \n namespace\n \n \n \n Optional\n \n url\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n html\n \n \n \n \n \n \n \n \n html: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Html containing the svg of the icon or icon set.\n\n \n \n \n \n \n \n \n \n \n name\n \n \n \n \n \n \n \n \n name: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Name to register the icon under.\n\n \n \n \n \n \n \n \n \n \n namespace\n \n \n \n \n \n \n \n \n namespace: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Namespace to register the icon or icon set under.\n\n \n \n \n \n \n \n \n \n \n url\n \n \n \n \n \n \n \n \n url: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Url to fetch the icon or icon set from.\n\n \n \n \n \n \n \n\n\n \n export interface DefaultIconDefinition {\n /**\n * Name to register the icon under.\n */\n name?: string;\n\n /**\n * Namespace to register the icon or icon set under.\n */\n namespace?: string;\n\n /**\n * Url to fetch the icon or icon set from.\n */\n url?: string;\n\n /**\n * Html containing the svg of the icon or icon set.\n */\n html?: string;\n}\n\n\n/**\n * Icons registered at startup.\n */\nexport const DEFAULT_ICONS: DefaultIconDefinition[] = [\n // Reference Organs\n { name: 'bladder', namespace: 'app', url: 'assets/icons/organs/ico-organs-bladder.svg' },\n { name: 'blood', namespace: 'app', url: 'assets/icons/organs/ico-organs-blood.svg' },\n { name: 'bone-marrow', namespace: 'app', url: 'assets/icons/organs/ico-organs-bone-marrow.svg' },\n { name: 'brain', namespace: 'app', url: 'assets/icons/organs/ico-organs-brain.svg' },\n { name: 'eye', namespace: 'app', url: 'assets/icons/organs/ico-organs-eye.svg' },\n { name: 'fallopian-tube-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-left.svg' },\n { name: 'fallopian-tube-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-right.svg' },\n { name: 'heart', namespace: 'app', url: 'assets/icons/organs/ico-organs-heart.svg' },\n { name: 'kidney-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-left.svg' },\n { name: 'kidney-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-right.svg' },\n { name: 'kidney', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney.svg' },\n { name: 'knee', namespace: 'app', url: 'assets/icons/organs/ico-organs-knee.svg' },\n { name: 'large-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-large-intestine.svg' },\n { name: 'liver', namespace: 'app', url: 'assets/icons/organs/ico-organs-liver.svg' },\n { name: 'lung-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-left.svg' },\n { name: 'lung-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-right.svg' },\n { name: 'lung', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung.svg' },\n { name: 'lymph-nodes', namespace: 'app', url: 'assets/icons/organs/ico-organs-lymph-nodes.svg' },\n { name: 'neuron', namespace: 'app', url: 'assets/icons/organs/ico-organs-neuron.svg' },\n { name: 'ovaries', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovaries.svg' },\n { name: 'ovary-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-left.svg' },\n { name: 'ovary-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-right.svg' },\n { name: 'pancreas', namespace: 'app', url: 'assets/icons/organs/ico-organs-pancreas.svg' },\n { name: 'pelvis-f', namespace: 'app', url: 'assets/icons/organs/ico-organs-pelvis-f.svg' },\n { name: 'prostate', namespace: 'app', url: 'assets/icons/organs/ico-organs-prostate.svg' },\n { name: 'skin', namespace: 'app', url: 'assets/icons/organs/ico-organs-skin.svg' },\n { name: 'small-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-small intestine.svg' },\n { name: 'spleen', namespace: 'app', url: 'assets/icons/organs/ico-organs-spleen.svg' },\n { name: 'stomach', namespace: 'app', url: 'assets/icons/organs/ico-organs-stomach.svg' },\n { name: 'thymus', namespace: 'app', url: 'assets/icons/organs/ico-organs-thymus.svg' },\n { name: 'ureter-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-left.svg' },\n { name: 'ureter-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-right.svg' },\n { name: 'uterus', namespace: 'app', url: 'assets/icons/organs/ico-organs-uterus.svg' },\n { name: 'vasculature-thick', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thick.svg' },\n { name: 'vasculature-thin', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thin.svg' },\n\n { name: 'opacity', namespace: 'app', url: 'assets/icons/opacity-24px.svg' },\n { name: 'visibility_on', namespace: 'app', url: 'assets/icons/visibility-on-24px.svg' },\n { name: 'visibility_off', namespace: 'app', url: 'assets/icons/visibility-off-24px.svg' },\n { name: 'expand_more', namespace: 'app', url: 'assets/icons/expand_more-24px.svg' },\n { name: 'expand_less', namespace: 'app', url: 'assets/icons/expand_less-24px.svg' },\n { name: 'filter', url: 'assets/icons/filter.svg' }\n];\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DelegateDataSourceOptions.html":{"url":"interfaces/DelegateDataSourceOptions.html","title":"interface - DelegateDataSourceOptions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DelegateDataSourceOptions\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n remoteApiEndpoint\n \n \n \n Optional\n \n useRemoteApi\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n remoteApiEndpoint\n \n \n \n \n \n \n \n \n remoteApiEndpoint: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n useRemoteApi\n \n \n \n \n \n \n \n \n useRemoteApi: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n\n\n \n import { Injectable, ProviderToken } from '@angular/core';\nimport {\n ApiEndpointDataSourceService, CCFDatabaseDataSourceService, DataSourceLike, InjectorDelegateDataSourceService,\n} from 'ccf-shared';\n\nimport { environment } from '../../../../environments/environment';\nimport { WorkerDataSourceService } from './worker-data-source.service';\n\n\nexport interface DelegateDataSourceOptions {\n useRemoteApi?: boolean;\n remoteApiEndpoint?: string;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DelegateDataSourceService extends InjectorDelegateDataSourceService {\n protected selectToken(config: DelegateDataSourceOptions): ProviderToken {\n const { useRemoteApi, remoteApiEndpoint } = config;\n\n if (useRemoteApi && !!remoteApiEndpoint) {\n return ApiEndpointDataSourceService;\n } else if (typeof Worker !== 'undefined' && !environment.disableDbWorker) {\n return WorkerDataSourceService;\n } else {\n return CCFDatabaseDataSourceService;\n }\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/DelegateDataSourceService.html":{"url":"injectables/DelegateDataSourceService.html","title":"injectable - DelegateDataSourceService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n DelegateDataSourceService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n\n\n\n \n Extends\n \n \n InjectorDelegateDataSourceService\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Protected\n selectToken\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Protected\n selectToken\n \n \n \n \n \n \n \n selectToken(config: DelegateDataSourceOptions)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts:20\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n config\n \n DelegateDataSourceOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : ProviderToken\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { Injectable, ProviderToken } from '@angular/core';\nimport {\n ApiEndpointDataSourceService, CCFDatabaseDataSourceService, DataSourceLike, InjectorDelegateDataSourceService,\n} from 'ccf-shared';\n\nimport { environment } from '../../../../environments/environment';\nimport { WorkerDataSourceService } from './worker-data-source.service';\n\n\nexport interface DelegateDataSourceOptions {\n useRemoteApi?: boolean;\n remoteApiEndpoint?: string;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DelegateDataSourceService extends InjectorDelegateDataSourceService {\n protected selectToken(config: DelegateDataSourceOptions): ProviderToken {\n const { useRemoteApi, remoteApiEndpoint } = config;\n\n if (useRemoteApi && !!remoteApiEndpoint) {\n return ApiEndpointDataSourceService;\n } else if (typeof Worker !== 'undefined' && !environment.disableDbWorker) {\n return WorkerDataSourceService;\n } else {\n return CCFDatabaseDataSourceService;\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DonorCardComponent.html":{"url":"components/DonorCardComponent.html","title":"component - DonorCardComponent","body":"\n \n\n\n\n\n\n Components\n \n DonorCardComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts\n\n\n\n \n Description\n \n \n Donor card component which displays data from a patient\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-donor-card\n \n\n \n styleUrls\n ./donor-card.component.scss\n \n\n\n\n \n templateUrl\n ./donor-card.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n clsName\n \n \n hoverState\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n handleCheckbox\n \n \n linkHandler\n \n \n toggleExpansion\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n color\n \n \n expanded\n \n \n highlighted\n \n \n selected\n \n \n tissueBlock\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n checked\n \n \n linkClick\n \n \n \n \n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:40\n \n \n\n \n \n Creates an instance of donor card component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n color\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:26\n \n \n \n \n Allows color of the checkbox background to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n expanded\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:29\n \n \n \n \n Allows the expanded state of the card to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n highlighted\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:31\n \n \n \n \n \n \n \n \n \n selected\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:23\n \n \n \n \n Allows the selected state to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n tissueBlock\n \n \n \n \n Type : TissueBlockResult\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:20\n \n \n \n \n Tissue Block to generate the donor card from\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n checked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:34\n \n \n \n \n Emits the new checked state whenever it changes\n\n \n \n \n \n \n \n \n \n \n linkClick\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:37\n \n \n \n \n Emit the url of any link when clicked.\n\n \n \n \n \n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-donor-card\"\n\n \n \n \n \n Default value : 'ccf-donor-card'\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:17\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n handleCheckbox\n \n \n \n \n \n \nhandleCheckbox()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:52\n \n \n\n\n \n \n Handles the logic that needs to run when the checkbox is clicked on.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n linkHandler\n \n \n \n \n \n \nlinkHandler(url: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:76\n \n \n\n\n \n \n Handles what happens when an info card is clicked.\nPasses up the link click event unless the card isn't selected\nIn which case it selects it for ease of use.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n url\n \n string\n \n\n \n No\n \n\n\n \n the URL to emit up.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n toggleExpansion\n \n \n \n \n \n \ntoggleExpansion()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:62\n \n \n\n\n \n \n Ensures that the expanded variable is only changed if selected first.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n clsName\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-donor-card'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:17\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n \n \n \n \n \n \n hoverState\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : ''\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts:40\n \n \n\n \n \n To keep track of which element, if any, are hovered over.\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { TissueBlockResult } from 'ccf-database';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n\n/**\n * Donor card component which displays data from a patient\n */\n@Component({\n selector: 'ccf-donor-card',\n templateUrl: './donor-card.component.html',\n styleUrls: ['./donor-card.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DonorCardComponent {\n /** HTML Class Name */\n @HostBinding('class') readonly clsName = 'ccf-donor-card';\n\n /** Tissue Block to generate the donor card from */\n @Input() tissueBlock!: TissueBlockResult;\n\n /** Allows the selected state to be set from outside the component */\n @Input() selected = false;\n\n /** Allows color of the checkbox background to be set from outside the component */\n @Input() color!: string;\n\n /** Allows the expanded state of the card to be set from outside the component */\n @Input() expanded = false;\n\n @Input() highlighted = false;\n\n /** Emits the new checked state whenever it changes */\n @Output() readonly checked = new EventEmitter();\n\n /** Emit the url of any link when clicked. */\n @Output() readonly linkClick = new EventEmitter();\n\n /** To keep track of which element, if any, are hovered over. */\n hoverState = '';\n\n /**\n * Creates an instance of donor card component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Handles the logic that needs to run when the checkbox is clicked on.\n */\n handleCheckbox(): void {\n this.selected = !this.selected;\n this.ga.event('selected_toggled', 'donor_card', this.tissueBlock.label, +this.selected);\n this.checked.emit(this.selected);\n this.expanded = false;\n }\n\n /**\n * Ensures that the expanded variable is only changed if selected first.\n */\n toggleExpansion(): void {\n if (this.selected) {\n this.expanded = !this.expanded;\n this.ga.event('expanded_toggled', 'donor_card', this.tissueBlock.label, +this.expanded);\n }\n }\n\n /**\n * Handles what happens when an info card is clicked.\n * Passes up the link click event unless the card isn't selected\n * In which case it selects it for ease of use.\n *\n * @param url the URL to emit up.\n */\n linkHandler(url: string): void {\n this.ga.event('link_clicked', 'donor_card', this.tissueBlock.label);\n if (this.selected) {\n this.linkClick.emit(url);\n } else {\n this.selected = true;\n this.checked.emit(this.selected);\n }\n }\n}\n\n \n\n \n \n \n \n \n\n \n \n person\n\n \n {{ tissueBlock.donor.label }}\n {{ tissueBlock.donor.description }}\n \n \n \n DONOR\n open_in_new\n \n\n {{ expanded ? \"expand_less\" : \"expand_more\" }}\n \n\n\n\n \n \n bubble_chart\n \n {{ tissueBlock.label }}\n {{ tissueBlock.description }}\n \n\n \n TISSUE BLOCK\n open_in_new\n \n \n\n 1\"\n [totalTissueSections]=\"tissueBlock.sectionCount\"\n [tissueSections]=\"tissueBlock.sections\"\n >\n\n 0\">\n \n \n \n \n\n \n \n bubble_chart\n \n {{ section.label }}\n {{ section.description }}\n \n\n \n TISSUE SECTION\n open_in_new\n \n \n\n 0\">\n \n \n \n \n\n\n \n\n \n \n ./donor-card.component.scss\n \n :host {\n width: 100%;\n\n .main-container {\n display: flex;\n min-height: 3rem;\n width: 100%;\n align-items: center;\n padding-left: 0.5rem;\n }\n\n .checkbox-background {\n height: 2rem;\n width: 2rem;\n border-radius: 50%;\n margin-right: 0.5rem;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n\n ::ng-deep .mat-checkbox-checked.mat-accent .mat-checkbox-background,\n .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background {\n background-color: transparent;\n }\n\n &.highlighted {\n ::ng-deep .mat-ripple-element {\n opacity: .04;\n }\n }\n\n .checkselected {\n ::ng-deep .mat-checkbox-frame {\n border-color: white !important;\n }\n }\n\n .checkbox {\n margin-left: 1.12rem;\n margin-bottom: 0.12rem; \n }\n }\n\n .align-end {\n margin-left: auto;\n }\n\n .info-block {\n display: flex;\n font-size: 0.75rem;\n line-height: 1rem;\n width: 100%;\n align-items: center;\n\n &:not(:first-child) {\n margin-top: 0.5rem;\n }\n\n .text-content {\n .title {\n font-weight: 600;\n }\n }\n }\n\n .donor {\n display: flex;\n font-size: 0.75rem;\n line-height: 1rem;\n align-items: center;\n flex-grow: 1;\n height: 2.5rem;\n\n &:hover, &.highlighted {\n box-shadow: 0px 6px 2px -2px rgba(0, 0, 0, 0.2), 0px 4px 4px 0px rgba(0, 0, 0, 0.14), 0px 2px 10px 0px rgba(0, 0, 0, 0.12);\n }\n\n .hover-state {\n width: 19.5rem !important;\n }\n\n .donor-info {\n .title {\n font-weight: 600;\n }\n }\n }\n\n .hoverable {\n position: relative;\n }\n\n .hover-enabled {\n position: relative;\n\n &:hover {\n .hover-state {\n opacity: 1;\n }\n }\n }\n\n .hover-state {\n transition: opacity 0.15s ease-in-out;\n opacity: 0;\n cursor: pointer;\n position: absolute;\n height: 100%;\n width: 100%;\n top: 0;\n margin-left: -0.5rem;\n align-items: center;\n display: flex;\n justify-content: flex-end;\n padding-right: 1rem;\n font-size: 0.75rem;\n\n .hover-title {\n font-weight: lighter;\n }\n\n .hover-icon {\n margin-left: 1rem;\n }\n }\n\n .default-padding {\n padding: 0.5rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n\n .expanded-view {\n margin-top: 0.25rem;\n width: 85%;\n margin-bottom: 0.25rem;\n }\n\n .d-flex {\n display: flex;\n }\n\n .icon-size {\n height: 1.5rem;\n width: 1.5rem;\n font-size: 1.5rem;\n }\n\n .selectable {\n cursor: pointer;\n }\n\n .w-80 {\n width: 80% !important;\n\n .info-block {\n .text-content {\n .description {\n width: 16rem !important;\n }\n }\n }\n }\n\n .ml-5 {\n margin-left: 0.5rem;\n }\n\n .mr-5 {\n margin-right: 0.5rem;\n }\n\n .mt-05 {\n margin-top: 0.5rem;\n }\n\n .description {\n width: 17rem;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' person {{ tissueBlock.donor.label }} {{ tissueBlock.donor.description }} DONOR open_in_new {{ expanded ? \"expand_less\" : \"expand_more\" }} bubble_chart {{ tissueBlock.label }} {{ tissueBlock.description }} TISSUE BLOCK open_in_new 1\" [totalTissueSections]=\"tissueBlock.sectionCount\" [tissueSections]=\"tissueBlock.sections\" > 0\"> bubble_chart {{ section.label }} {{ section.description }} TISSUE SECTION open_in_new 0\"> '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DonorCardComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DonorCardModule.html":{"url":"modules/DonorCardModule.html","title":"module - DonorCardModule","body":"\n \n\n\n\n\n Modules\n DonorCardModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DonorCardModule\n\n\n\ncluster_DonorCardModule_imports\n\n\n\ncluster_DonorCardModule_declarations\n\n\n\ncluster_DonorCardModule_exports\n\n\n\n\nDonorCardComponent\n\nDonorCardComponent\n\n\n\nDonorCardModule\n\nDonorCardModule\n\nDonorCardModule -->\n\nDonorCardComponent->DonorCardModule\n\n\n\n\n\nDonorCardComponent \n\nDonorCardComponent \n\nDonorCardComponent -->\n\nDonorCardModule->DonorCardComponent \n\n\n\n\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule\n\nDonorCardModule -->\n\nThumbnailCarouselModule->DonorCardModule\n\n\n\n\n\nTissueSectionVisModule\n\nTissueSectionVisModule\n\nDonorCardModule -->\n\nTissueSectionVisModule->DonorCardModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n DonorCardComponent\n \n \n \n \n Imports\n \n \n ThumbnailCarouselModule\n \n \n TissueSectionVisModule\n \n \n \n \n Exports\n \n \n DonorCardComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { ThumbnailCarouselModule } from '../../../shared/components/thumbnail-carousel/thumbnail-carousel.module';\nimport { DonorCardComponent } from './donor-card.component';\nimport { TissueSectionVisModule } from './../tissue-section-vis/tissue-section-vis.module';\n\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatCheckboxModule,\n MatIconModule,\n\n ThumbnailCarouselModule,\n TissueSectionVisModule\n ],\n declarations: [DonorCardComponent],\n exports: [DonorCardComponent]\n})\nexport class DonorCardModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DrawerContainersChanged.html":{"url":"interfaces/DrawerContainersChanged.html","title":"interface - DrawerContainersChanged","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DrawerContainersChanged\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message sent when a drawer component changes.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n drawers\n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n drawers\n \n \n \n \n \n \n \n \n drawers: [, ]\n\n \n \n\n\n \n \n Type : [, ]\n\n \n \n\n\n\n\n\n \n \n References to the drawer components. Can contain undefined values.\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DrawerInitialized.html":{"url":"interfaces/DrawerInitialized.html","title":"interface - DrawerInitialized","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DrawerInitialized\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message sent when a drawer has finished initializing.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DrawerModule.html":{"url":"modules/DrawerModule.html","title":"module - DrawerModule","body":"\n \n\n\n\n\n Modules\n DrawerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DrawerModule\n\n\n\ncluster_DrawerModule_declarations\n\n\n\ncluster_DrawerModule_exports\n\n\n\n\nContainerComponent\n\nContainerComponent\n\n\n\nDrawerModule\n\nDrawerModule\n\nDrawerModule -->\n\nContainerComponent->DrawerModule\n\n\n\n\n\nContentComponent\n\nContentComponent\n\nDrawerModule -->\n\nContentComponent->DrawerModule\n\n\n\n\n\nDrawerComponent\n\nDrawerComponent\n\nDrawerModule -->\n\nDrawerComponent->DrawerModule\n\n\n\n\n\nToggleButtonComponent\n\nToggleButtonComponent\n\nDrawerModule -->\n\nToggleButtonComponent->DrawerModule\n\n\n\n\n\nContainerComponent \n\nContainerComponent \n\nContainerComponent -->\n\nDrawerModule->ContainerComponent \n\n\n\n\n\nContentComponent \n\nContentComponent \n\nContentComponent -->\n\nDrawerModule->ContentComponent \n\n\n\n\n\nDrawerComponent \n\nDrawerComponent \n\nDrawerComponent -->\n\nDrawerModule->DrawerComponent \n\n\n\n\n\nToggleButtonComponent \n\nToggleButtonComponent \n\nToggleButtonComponent -->\n\nDrawerModule->ToggleButtonComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ContainerComponent\n \n \n ContentComponent\n \n \n DrawerComponent\n \n \n ToggleButtonComponent\n \n \n \n \n Exports\n \n \n ContainerComponent\n \n \n ContentComponent\n \n \n DrawerComponent\n \n \n ToggleButtonComponent\n \n \n \n \n \n\n\n \n\n\n \n import { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { BrowserModule } from '@angular/platform-browser';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\n\nimport { MESSAGE_SERVICE_CONFIG, MESSAGE_SERVICE_DEFAULT_CONFIG } from '../../services/message/message.service';\nimport { ContainerComponent } from './container/container.component';\nimport { ContentComponent } from './content/content.component';\nimport { DrawerComponent } from './drawer/drawer.component';\nimport { ToggleButtonComponent } from './toggle-button/toggle-button.component';\n\n\n@NgModule({\n imports: [BrowserModule, BrowserAnimationsModule, MatIconModule],\n providers: [{\n provide: MESSAGE_SERVICE_CONFIG, useValue: MESSAGE_SERVICE_DEFAULT_CONFIG\n }],\n declarations: [ContainerComponent, ContentComponent, DrawerComponent, ToggleButtonComponent],\n exports: [ContainerComponent, ContentComponent, DrawerComponent, ToggleButtonComponent]\n})\nexport class DrawerModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/DrawerToggled.html":{"url":"interfaces/DrawerToggled.html","title":"interface - DrawerToggled","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n DrawerToggled\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n\n\n \n Description\n \n \n Message send when the state of a drawer changes.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n expanded\n \n \n \n \n margin\n \n \n \n \n opened\n \n \n \n \n type\n \n \n \n \n width\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n expanded\n \n \n \n \n \n \n \n \n expanded: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Whether the drawer is expanded. Implies opened.\n\n \n \n \n \n \n \n \n \n \n margin\n \n \n \n \n \n \n \n \n margin: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Margin used by the drawer for toggle button, etc.\n\n \n \n \n \n \n \n \n \n \n opened\n \n \n \n \n \n \n \n \n opened: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Whether the drawer is open.\n\n \n \n \n \n \n \n \n \n \n type\n \n \n \n \n \n \n \n \n type: \n\n \n \n\n\n\n\n\n\n\n \n \n Message type.\n\n \n \n \n \n \n \n \n \n \n width\n \n \n \n \n \n \n \n \n width: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Width of the drawer.\n\n \n \n \n \n \n \n\n\n \n import {\n Message as GenericMessage, MessageChannel as GenericMessageChannel, MessageService as GenericMessageService,\n} from '../../services/message/message.service';\n\n\n/** Message sent when the content component changes. */\nexport interface ContentContainerChanged {\n /** Message type. */\n type: 'content-container-changed';\n /** A reference to the new content component. */\n content: unknown;\n}\n\n/** Message sent when a drawer component changes. */\nexport interface DrawerContainersChanged {\n /** Message type. */\n type: 'drawer-containers-changed';\n /** References to the drawer components. Can contain undefined values. */\n drawers: [unknown, unknown];\n}\n\n/** Payload types for messages sent from the drawer container. */\nexport type ContainerPayload = ContentContainerChanged | DrawerContainersChanged;\n\n\n/** Message sent when a drawer has finished initializing. */\nexport interface DrawerInitialized {\n /** Message type. */\n type: 'drawer-initialized';\n}\n\n/** Message send when the state of a drawer changes. */\nexport interface DrawerToggled {\n /** Message type. */\n type: 'drawer-toggled';\n /** Whether the drawer is open. */\n opened: boolean;\n /** Whether the drawer is expanded. Implies opened. */\n expanded: boolean;\n /** Width of the drawer. */\n width: number;\n /** Margin used by the drawer for toggle button, etc. */\n margin: number;\n}\n\n/** Payload types for messages sent from the drawers. */\nexport type DrawerPayload = DrawerToggled | DrawerInitialized;\n\n\n/** Combined payload type for all drawer sub components. */\nexport type Payload = ContainerPayload | DrawerPayload;\n/** Specific message type. */\nexport type Message = GenericMessage;\n/** Specific channel type. */\nexport type MessageChannel = GenericMessageChannel;\n/** Specific service type. */\nexport type MessageService = GenericMessageService;\n/** Reference to the service class. */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport const MessageService = GenericMessageService;\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DropdownComponent.html":{"url":"components/DropdownComponent.html","title":"component - DropdownComponent","body":"\n \n\n\n\n\n\n Components\n \n DropdownComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts\n\n\n\n \n Description\n \n \n Component for a dropdown menu.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-dropdown\n \n\n \n styleUrls\n ./dropdown.component.scss\n \n\n\n\n \n templateUrl\n ./dropdown.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n optionsVisible\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n selectionChanged\n \n \n toggleOptions\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n label\n \n \n options\n \n \n selection\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selectionChange\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:38\n \n \n\n \n \n Creates an instance of dropdown component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n label\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:18\n \n \n \n \n What the component is selecting for.\n\n \n \n \n \n \n \n \n \n \n options\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:23\n \n \n \n \n Choices displayed in the dropdown menu.\n\n \n \n \n \n \n \n \n \n \n selection\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:28\n \n \n \n \n Current option selected.\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selectionChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:33\n \n \n \n \n Emits the new selected option when selection is changed.\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n selectionChanged\n \n \n \n \n \n \nselectionChanged(value: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:59\n \n \n\n\n \n \n Updates the selected value.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n value\n \n string\n \n\n \n No\n \n\n\n \n The value that has been selected\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n toggleOptions\n \n \n \n \n \n \ntoggleOptions()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:50\n \n \n\n\n \n \n Controls fade-in effect after dropdown menu opens\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n optionsVisible\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'invisible'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts:38\n \n \n\n \n \n Determines if menu contents are visible (used for fade-in effect).\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n/**\n * Component for a dropdown menu.\n */\n@Component({\n selector: 'ccf-dropdown',\n templateUrl: './dropdown.component.html',\n styleUrls: ['./dropdown.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DropdownComponent {\n\n /**\n * What the component is selecting for.\n */\n @Input() label: string;\n\n /**\n * Choices displayed in the dropdown menu.\n */\n @Input() options: string[];\n\n /**\n * Current option selected.\n */\n @Input() selection: string;\n\n /**\n * Emits the new selected option when selection is changed.\n */\n @Output() readonly selectionChange = new EventEmitter();\n\n /**\n * Determines if menu contents are visible (used for fade-in effect).\n */\n optionsVisible = 'invisible';\n\n /**\n * Creates an instance of dropdown component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Controls fade-in effect after dropdown menu opens\n */\n toggleOptions(): void {\n this.optionsVisible = this.optionsVisible === 'visible' ? 'invisible' : 'visible';\n }\n\n /**\n * Updates the selected value.\n *\n * @param value The value that has been selected\n */\n selectionChanged(value: string): void {\n this.selection = value;\n this.ga.event('selection_change', 'dropdown', `${this.label}:${value}`);\n this.selectionChange.emit(value);\n }\n}\n\n \n\n \n \n \n \n \n {{ label }}\n \n \n \n \n {{ option }}\n \n \n \n \n \n\n\n \n\n \n \n ./dropdown.component.scss\n \n @keyframes slideInHorizontalDropdown {\n from {\n width: 0;\n }\n to {\n width: 9.85rem;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n.dropdown-form-field {\n width: 100%;\n height: 3rem;\n\n ::ng-deep .mat-form-field-wrapper {\n padding-left: 1em;\n padding-right: 1em;\n height: 3rem;\n\n .mat-form-field-flex {\n .mat-form-field-infix {\n font-size: 0.875rem;\n border: none;\n\n mat-select {\n font-size: 1rem;\n font-weight: bold;\n }\n }\n }\n\n .mat-form-field-underline {\n left: 0rem;\n bottom: 0rem;\n transform: none;\n height: 0.125rem;\n }\n }\n}\n\n.visible {\n animation: fadeIn 0.3s;\n transition-delay: .275s;\n animation-delay: .275s;\n}\n\n.invisible {\n opacity: 0;\n}\n\n::ng-deep .option-panel {\n animation: slideInHorizontalDropdown .3s;\n animation-fill-mode: forwards;\n box-shadow: 0.2rem 0.2rem 1rem 0rem #0000003e;\n position: absolute !important;\n top: 1.55rem;\n max-width: 9.5rem;\n\n .mat-option {\n border-bottom-width: 1px;\n border-bottom-style: solid;\n padding-left: 1em;\n }\n\n :last-child {\n border-bottom: none;\n }\n}\n\n::ng-deep .cdk-overlay-pane {\n min-width: 0rem !important;\n}\n\n.dropdown-form-field {\n height: 3rem;\n width: 100%;\n \n .label {\n padding-bottom: 0.063rem;\n }\n ::ng-deep .mat-form-field-wrapper {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n }\n}\n\n::ng-deep .ccf-dropdown {\n .mat-select-arrow-wrapper {\n transform: translatey(-.5em);\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ label }} {{ option }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DropdownComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DropdownModule.html":{"url":"modules/DropdownModule.html","title":"module - DropdownModule","body":"\n \n\n\n\n\n Modules\n DropdownModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DropdownModule\n\n\n\ncluster_DropdownModule_declarations\n\n\n\ncluster_DropdownModule_exports\n\n\n\n\nDropdownComponent\n\nDropdownComponent\n\n\n\nDropdownModule\n\nDropdownModule\n\nDropdownModule -->\n\nDropdownComponent->DropdownModule\n\n\n\n\n\nDropdownComponent \n\nDropdownComponent \n\nDropdownComponent -->\n\nDropdownModule->DropdownComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/dropdown/dropdown.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n DropdownComponent\n \n \n \n \n Exports\n \n \n DropdownComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\n\nimport { DropdownComponent } from './dropdown.component';\n\n\n@NgModule({\n imports: [CommonModule, MatFormFieldModule, MatSelectModule],\n declarations: [DropdownComponent],\n exports: [DropdownComponent]\n})\n\nexport class DropdownModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/DualSliderComponent.html":{"url":"components/DualSliderComponent.html","title":"component - DualSliderComponent","body":"\n \n\n\n\n\n\n Components\n \n DualSliderComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts\n\n\n\n \n Description\n \n \n Component containing a button that when clicked will show a slider popover.\n\n \n\n\n \n Implements\n \n \n OnDestroy\n OnChanges\n \n\n\n\n Metadata\n \n \n\n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-dual-slider\n \n\n \n styleUrls\n ./dual-slider.component.scss\n \n\n\n\n \n templateUrl\n ./dual-slider.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n contentsVisible\n \n \n highValue\n \n \n Private\n isSliderInitialized\n \n \n isSliderOpen\n \n \n lowValue\n \n \n options\n \n \n Private\n overlayRef\n \n \n popoverElement\n \n \n popoverPortal\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n closeSliderPopover\n \n \n Private\n initializeSliderPopover\n \n \n ngOnChanges\n \n \n ngOnDestroy\n \n \n onKeyHigh\n \n \n onKeyLow\n \n \n optionsChanged\n \n \n sliderValueChanged\n \n \n toggleSliderPopover\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n label\n \n \n selection\n \n \n valueRange\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selectionChange\n \n \n \n \n\n\n \n \n HostListeners\n \n \n \n \n \n \n document:click\n \n \n document:touchstart\n \n \n \n \n\n \n \n Accessors\n \n \n \n \n \n \n rangeLabel\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(overlay: Overlay, element: ElementRef, ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:95\n \n \n\n \n \n Creates an instance of dual slider component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n overlay\n \n \n Overlay\n \n \n \n No\n \n \n \n The overlay service used to create the slider popover.\n\n \n \n \n element\n \n \n ElementRef\n \n \n \n No\n \n \n \n A reference to the component's element. Used during event handling.\n\n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n label\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:34\n \n \n \n \n Which criteria the slider is selecting for.\n\n \n \n \n \n \n \n \n \n \n selection\n \n \n \n \n Type : number[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:44\n \n \n \n \n The current range selected.\n\n \n \n \n \n \n \n \n \n \n valueRange\n \n \n \n \n Type : number[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:39\n \n \n \n \n The lower and upper range of the slider.\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selectionChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:49\n \n \n \n \n Emits the new selection range when a change is made to it.\n\n \n \n \n \n\n\n \n HostListeners \n \n \n \n \n \n document:click\n \n \n \n \n \n \n Arguments : '$event.target' \n \n \n \n \ndocument:click(target: HTMLElement)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:165\n \n \n\n\n \n \n Listens to document click, mouse movement, and touch event.\nCloses the slider popover when such an event occurs outside the button or popover.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n target\n\n \n No\n \n\n\n \n The element on which the event was fired.\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n document:touchstart\n \n \n \n \n \n \n Arguments : '$event.target' \n \n \n \n \ndocument:touchstart(target: HTMLElement)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:165\n \n \n\n\n \n \n Listens to document click, mouse movement, and touch event.\nCloses the slider popover when such an event occurs outside the button or popover.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n target\n\n \n No\n \n\n\n \n The element on which the event was fired.\n\n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n Methods\n \n \n \n \n \n \n \n closeSliderPopover\n \n \n \n \n \n \ncloseSliderPopover(target: HTMLElement)\n \n \n\n \n \n Decorators : \n \n @HostListener('document:click', ['$event.target'])@HostListener('document:touchstart', ['$event.target'])\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:165\n \n \n\n\n \n \n Listens to document click, mouse movement, and touch event.\nCloses the slider popover when such an event occurs outside the button or popover.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n target\n \n HTMLElement\n \n\n \n No\n \n\n\n \n The element on which the event was fired.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n initializeSliderPopover\n \n \n \n \n \n \n \n initializeSliderPopover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:212\n \n \n\n\n \n \n Creates and initializes the slider popover.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnChanges\n \n \n \n \n \n \nngOnChanges(changes: SimpleChanges)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:122\n \n \n\n\n \n \n Updates slider options (with optionsChanged) and selection when changes detected.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n changes\n \n SimpleChanges\n \n\n \n No\n \n\n\n \n Changes that have been made to the slider properties.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:152\n \n \n\n\n \n \n Angular's OnDestroy hook.\nCleans up the overlay.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n onKeyHigh\n \n \n \n \n \n \nonKeyHigh(event: KeyboardEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:243\n \n \n\n\n \n \n Updates the slider's high pointer value when Enter key is pressed.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n KeyboardEvent\n \n\n \n No\n \n\n\n \n Event passed into the component\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n onKeyLow\n \n \n \n \n \n \nonKeyLow(event: KeyboardEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:226\n \n \n\n\n \n \n Updates the slider's low pointer value when Enter key is pressed.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n KeyboardEvent\n \n\n \n No\n \n\n\n \n Event passed into the component\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n optionsChanged\n \n \n \n \n \n \noptionsChanged()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:136\n \n \n\n\n \n \n Updates the slider options, and the slider values if necessary.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n sliderValueChanged\n \n \n \n \n \n \nsliderValueChanged()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:201\n \n \n\n\n \n \n Handler for updates to the slider values.\nEmits the updated selection value array.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n toggleSliderPopover\n \n \n \n \n \n \ntoggleSliderPopover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:184\n \n \n\n\n \n \n Toggles the visibility of the slider popover.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n contentsVisible\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'invisible'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:74\n \n \n\n \n \n Determines if slider contents are visible (used for fade-in effect).\n\n \n \n\n \n \n \n \n \n \n \n \n highValue\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:69\n \n \n\n \n \n Value bound to the slider's high pointer value.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n isSliderInitialized\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:95\n \n \n\n \n \n Determines whether slider popover has been created and initialized.\n\n \n \n\n \n \n \n \n \n \n \n \n isSliderOpen\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:54\n \n \n\n \n \n Determines whether slider popover is shown.\n\n \n \n\n \n \n \n \n \n \n \n \n lowValue\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:64\n \n \n\n \n \n Value bound to the slider's low pointer value.\n\n \n \n\n \n \n \n \n \n \n \n \n options\n \n \n \n \n \n \n Type : Options\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:59\n \n \n\n \n \n Slider options.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n overlayRef\n \n \n \n \n \n \n Type : OverlayRef\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:90\n \n \n\n \n \n Reference to the slider popover overlay.\n\n \n \n\n \n \n \n \n \n \n \n \n popoverElement\n \n \n \n \n \n \n Type : ElementRef\n\n \n \n \n \n Decorators : \n \n \n @ViewChild('popover', {read: ElementRef, static: false})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:29\n \n \n\n \n \n Reference to the popover element.\nThis is undefined until the slider popover is initialized.\n\n \n \n\n \n \n \n \n \n \n \n \n popoverPortal\n \n \n \n \n \n \n Type : CdkPortal\n\n \n \n \n \n Decorators : \n \n \n @ViewChild(CdkPortal, {static: true})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:23\n \n \n\n \n \n Reference to the template for the slider popover.\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n rangeLabel\n \n \n\n \n \n getrangeLabel()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts:79\n \n \n \n \n Computes the current age range for display in the button.\n\n\n \n Returns : string\n\n \n \n \n\n \n \n\n\n\n\n \n import { ConnectedPosition, Overlay, OverlayRef } from '@angular/cdk/overlay';\nimport { CdkPortal } from '@angular/cdk/portal';\nimport {\n Component, ElementRef, EventEmitter, HostListener, Input, OnChanges, OnDestroy, Output, SimpleChanges, ViewChild,\n} from '@angular/core';\nimport { Options } from 'ng5-slider';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\n\n/**\n * Component containing a button that when clicked will show a slider popover.\n */\n@Component({\n selector: 'ccf-dual-slider',\n templateUrl: './dual-slider.component.html',\n styleUrls: ['./dual-slider.component.scss']\n})\nexport class DualSliderComponent implements OnDestroy, OnChanges {\n /**\n * Reference to the template for the slider popover.\n */\n @ViewChild(CdkPortal, { static: true }) popoverPortal: CdkPortal;\n\n /**\n * Reference to the popover element.\n * This is undefined until the slider popover is initialized.\n */\n @ViewChild('popover', { read: ElementRef, static: false }) popoverElement: ElementRef;\n\n /**\n * Which criteria the slider is selecting for.\n */\n @Input() label: string;\n\n /**\n * The lower and upper range of the slider.\n */\n @Input() valueRange: number[];\n\n /**\n * The current range selected.\n */\n @Input() selection: number[];\n\n /**\n * Emits the new selection range when a change is made to it.\n */\n @Output() readonly selectionChange = new EventEmitter();\n\n /**\n * Determines whether slider popover is shown.\n */\n isSliderOpen = false;\n\n /**\n * Slider options.\n */\n options: Options;\n\n /**\n * Value bound to the slider's low pointer value.\n */\n lowValue: number;\n\n /**\n * Value bound to the slider's high pointer value.\n */\n highValue: number;\n\n /**\n * Determines if slider contents are visible (used for fade-in effect).\n */\n contentsVisible = 'invisible';\n\n /**\n * Computes the current age range for display in the button.\n */\n get rangeLabel(): string {\n const { lowValue, highValue } = this;\n if (lowValue === highValue) {\n return `${lowValue}`;\n }\n return `${lowValue}-${highValue}`;\n }\n\n /**\n * Reference to the slider popover overlay.\n */\n private overlayRef: OverlayRef;\n\n /**\n * Determines whether slider popover has been created and initialized.\n */\n private isSliderInitialized = false;\n\n /**\n * Creates an instance of dual slider component.\n *\n * @param overlay The overlay service used to create the slider popover.\n * @param element A reference to the component's element. Used during event handling.\n * @param ga Analytics service\n */\n constructor(\n overlay: Overlay,\n private element: ElementRef,\n private readonly ga: GoogleAnalyticsService\n ) {\n const position: ConnectedPosition = { originX: 'start', originY: 'bottom', overlayX: 'start', overlayY: 'top' };\n const positionStrategy = overlay.position().flexibleConnectedTo(element).withPositions([position]);\n this.overlayRef = overlay.create({\n panelClass: 'slider-pane',\n positionStrategy\n });\n }\n\n /**\n * Updates slider options (with optionsChanged) and selection when changes detected.\n *\n * @param changes Changes that have been made to the slider properties.\n */\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.valueRange) {\n this.optionsChanged();\n }\n if (changes.selection) {\n // Detect when selection is changed and update low/high value.\n this.lowValue = Math.min(...this.selection);\n this.highValue = Math.max(...this.selection);\n }\n }\n\n /**\n * Updates the slider options, and the slider values if necessary.\n */\n optionsChanged(): void {\n this.options = {\n floor: this.valueRange ? this.valueRange[0] : 0,\n ceil: this.valueRange ? this.valueRange[1] : 0,\n step: 1,\n hideLimitLabels: true,\n hidePointerLabels: true\n };\n this.lowValue = this.options.floor ?? 0;\n this.highValue = this.options.ceil ?? 0;\n }\n\n /**\n * Angular's OnDestroy hook.\n * Cleans up the overlay.\n */\n ngOnDestroy(): void {\n this.overlayRef.dispose();\n }\n\n /**\n * Listens to document click, mouse movement, and touch event.\n * Closes the slider popover when such an event occurs outside the button or popover.\n *\n * @param target The element on which the event was fired.\n */\n @HostListener('document:click', ['$event.target']) // eslint-disable-line\n // eslint-disable-line\n @HostListener('document:touchstart', ['$event.target']) // eslint-disable-line\n closeSliderPopover(target: HTMLElement): void {\n const { element, isSliderOpen, popoverElement } = this;\n if (!isSliderOpen) {\n return;\n } else if (element.nativeElement.contains(target)) {\n return;\n } else if (popoverElement?.nativeElement?.contains?.(target)) {\n return;\n }\n\n this.overlayRef.detach();\n this.isSliderInitialized = false;\n this.isSliderOpen = false;\n this.contentsVisible = 'invisible';\n }\n\n /**\n * Toggles the visibility of the slider popover.\n */\n toggleSliderPopover(): void {\n const { isSliderOpen, isSliderInitialized } = this;\n if (isSliderInitialized) {\n this.overlayRef.detach();\n this.isSliderInitialized = false;\n } else if (!isSliderInitialized && !isSliderOpen) {\n this.initializeSliderPopover();\n }\n\n this.contentsVisible = this.contentsVisible === 'visible' ? 'invisible' : 'visible';\n this.isSliderOpen = !isSliderOpen;\n }\n\n /**\n * Handler for updates to the slider values.\n * Emits the updated selection value array.\n */\n sliderValueChanged(): void {\n const { lowValue, highValue } = this;\n\n this.selection = [lowValue, highValue];\n this.ga.event('slider_range_change', 'dual_slider', `${this.label}:${lowValue}:${highValue}`);\n this.selectionChange.emit(this.selection);\n }\n\n /**\n * Creates and initializes the slider popover.\n */\n private initializeSliderPopover(): void {\n const { overlayRef, popoverPortal } = this;\n\n overlayRef.attach(popoverPortal);\n overlayRef.updatePosition();\n\n this.isSliderInitialized = true;\n }\n\n /**\n * Updates the slider's low pointer value when Enter key is pressed.\n *\n * @param event Event passed into the component\n */\n onKeyLow(event: KeyboardEvent): void {\n const newValue = Number((event.target as HTMLInputElement).value);\n if (event.key === 'Enter') {\n if (newValue >= Number(this.options.floor) && newValue = Number(this.options.floor) && newValue \n \n\n \n \n \n \n \n {{ options.floor }}> \n \n \n\n \n \n\n \n {{ options.ceil }} \n \n \n \n\n \n \n {{ label }}\n {{ rangeLabel }}\n \n \n \n \n\n\n \n\n \n \n ./dual-slider.component.scss\n \n @use 'sass:math';\n\n.slider-form-field {\n width: 100%;\n height: 3rem;\n\n ::ng-deep .mat-form-field-wrapper {\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n height: 3rem;\n\n .mat-form-field-flex {\n .mat-form-field-infix {\n border: none;\n font-size: 0.875rem;\n }\n }\n\n .mat-form-field-underline {\n left: 0rem;\n bottom: 0rem;\n transform: none;\n height: 0.125rem;\n }\n }\n}\n\n\n.slider-labels {\n display: flex;\n flex-direction: column;\n .name-label {\n padding-bottom: 0.25rem;\n }\n\n .range-label {\n font-weight: bold;\n }\n}\n\n::ng-deep .ccf-slider.wrapper {\n .mat-select-arrow-wrapper {\n transform: translatey(-1.5em);\n }\n}\n\n// Styles for the popover slider\n// NOTE: This must NOT be nested inside the wrapper/container!\n\n@keyframes slideInHorizontalSlider {\n from {\n width: 0;\n }\n to {\n width: 20em;\n }\n}\n\n@keyframes fadeIn {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n.visible {\n animation: fadeIn 0.3s;\n transition-delay: .275s;\n animation-delay: .275s;\n}\n\n.invisible {\n opacity: 0;\n}\n\n::ng-deep .slider-pane {\n position: absolute !important;\n top: -1px;\n}\n\n.ccf-slider.detached {\n animation: slideInHorizontalSlider 0.3s;\n animation-fill-mode: forwards;\n box-shadow: 0.2rem 0.2rem 1rem 0rem #0000003e;\n\n display: flex;\n justify-content: center;\n align-items: center;\n width: 0rem;\n height: 4.375rem;\n padding: .75rem; // NOTE: Use padding instead of margin!\n\n .slider ::ng-deep {\n visibility: hidden;\n margin-top: 0.9375rem;\n margin-bottom: 0.9375rem;\n .ng5-slider-bar {\n opacity: .2;\n height: .15rem;\n }\n\n .ng5-slider-selection {\n opacity: 1;\n }\n\n .ng5-slider-pointer {\n $pointer-size: 1rem;\n\n width: $pointer-size;\n height: $pointer-size;\n top: 0.095rem - math.div($pointer-size, 2);\n\n &:after {\n display: none;\n }\n }\n }\n\n .label {\n display: flex;\n flex-direction: column;\n width: 2rem;\n\n &.min {\n margin-right: 1rem;\n }\n\n &.max {\n margin-left: 1rem;\n align-items: flex-end;\n\n .ceil, input {\n text-align: right;\n }\n }\n\n .floor, .ceil {\n font-size: 0.875rem;\n }\n\n input {\n border: none;\n width: 1.75rem;\n font-size: 1rem;\n font-weight: bold;\n padding: 0;\n }\n\n }\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ options.floor }}> {{ options.ceil }} {{ label }} {{ rangeLabel }} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'DualSliderComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/DualSliderModule.html":{"url":"modules/DualSliderModule.html","title":"module - DualSliderModule","body":"\n \n\n\n\n\n Modules\n DualSliderModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_DualSliderModule\n\n\n\ncluster_DualSliderModule_exports\n\n\n\ncluster_DualSliderModule_declarations\n\n\n\n\nDualSliderComponent\n\nDualSliderComponent\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nDualSliderModule -->\n\nDualSliderComponent->DualSliderModule\n\n\n\n\n\nDualSliderComponent \n\nDualSliderComponent \n\nDualSliderComponent -->\n\nDualSliderModule->DualSliderComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n DualSliderComponent\n \n \n \n \n Exports\n \n \n DualSliderComponent\n \n \n \n \n \n\n\n \n\n\n \n import { OverlayModule } from '@angular/cdk/overlay';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { Ng5SliderModule } from 'ng5-slider';\n\nimport { DualSliderComponent } from './dual-slider.component';\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n PortalModule,\n MatFormFieldModule,\n MatSelectModule,\n Ng5SliderModule\n ],\n declarations: [DualSliderComponent],\n exports: [DualSliderComponent]\n})\nexport class DualSliderModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/FiltersContentComponent.html":{"url":"components/FiltersContentComponent.html","title":"component - FiltersContentComponent","body":"\n \n\n\n\n\n\n Components\n \n FiltersContentComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts\n\n\n\n \n Description\n \n \n Contains components of the filters popup and handles changes in filter settings\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-filters-content\n \n\n \n styleUrls\n ./filters-content.component.scss\n \n\n\n\n \n templateUrl\n ./filters-content.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n applyButtonClick\n \n \n refreshFilters\n \n \n updateFilter\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n filters\n \n \n hidden\n \n \n providerFilters\n \n \n technologyFilters\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n applyFilters\n \n \n filtersChange\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:44\n \n \n\n \n \n Creates an instance of filters content component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n filters\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:24\n \n \n \n \n Allows the filters to be set from outside the component\n\n \n \n \n \n \n \n \n \n \n hidden\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:19\n \n \n \n \n Determines if the filters are visible\n\n \n \n \n \n \n \n \n \n \n providerFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:34\n \n \n \n \n List of providers in the data\n\n \n \n \n \n \n \n \n \n \n technologyFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:29\n \n \n \n \n List of technologies in the data\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n applyFilters\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:44\n \n \n \n \n Emits the filters to be applied\n\n \n \n \n \n \n \n \n \n \n filtersChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:39\n \n \n \n \n Emits the filter change when they happen\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n applyButtonClick\n \n \n \n \n \n \napplyButtonClick()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:68\n \n \n\n\n \n \n Emits the current filters when the apply button is clicked\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n refreshFilters\n \n \n \n \n \n \nrefreshFilters()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:76\n \n \n\n\n \n \n Refreshes all filter settings\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n updateFilter\n \n \n \n \n \n \nupdateFilter(value, key: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts:59\n \n \n\n\n \n \n Updates the filter object with a new key/value\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n value\n \n \n\n \n No\n \n\n\n \n The value to be saved for the filter\n\n \n \n \n key\n \n string\n \n\n \n No\n \n\n\n \n The key for the filter to be saved at\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\nimport { DEFAULT_FILTER } from '../../../core/store/data/data.state';\n\n/**\n * Contains components of the filters popup and handles changes in filter settings\n */\n@Component({\n selector: 'ccf-filters-content',\n templateUrl: './filters-content.component.html',\n styleUrls: ['./filters-content.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FiltersContentComponent {\n\n /**\n * Determines if the filters are visible\n */\n @Input() hidden: boolean;\n\n /**\n * Allows the filters to be set from outside the component\n */\n @Input() filters: Record;\n\n /**\n * List of technologies in the data\n */\n @Input() technologyFilters: string[];\n\n /**\n * List of providers in the data\n */\n @Input() providerFilters: string[];\n\n /**\n * Emits the filter change when they happen\n */\n @Output() readonly filtersChange = new EventEmitter>();\n\n /**\n * Emits the filters to be applied\n */\n @Output() readonly applyFilters = new EventEmitter>();\n\n /**\n * Creates an instance of filters content component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Updates the filter object with a new key/value\n *\n * @param value The value to be saved for the filter\n * @param key The key for the filter to be saved at\n */\n updateFilter(value: unknown, key: string): void {\n this.filters = { ...this.filters, [key]: value };\n this.ga.event('filter_update', 'filter_content', `${key}:${value}`);\n this.filtersChange.emit(this.filters);\n }\n\n /**\n * Emits the current filters when the apply button is clicked\n */\n applyButtonClick(): void {\n this.ga.event('filters_applied', 'filter_content');\n this.applyFilters.emit(this.filters);\n }\n\n /**\n * Refreshes all filter settings\n */\n refreshFilters(): void {\n this.filters = JSON.parse(JSON.stringify(DEFAULT_FILTER));\n this.ga.event('filters_reset', 'filter_content');\n this.filtersChange.emit(this.filters);\n }\n}\n\n \n\n \n \n \n\n \n \n\n\n\n \n\n\n\n \n\n\n\n APPLY FILTERS\n \n refresh\n \n\n\n \n\n \n \n ./filters-content.component.scss\n \n .filter {\n &.hidden {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n &.assays {\n .option {\n margin-right: 0 rem;\n width: 25%\n }\n }\n\n margin-top: 2rem;\n}\n\n.button-container {\n &.hidden {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n margin-top: 2rem;\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n}\n\n.outline-button {\n box-shadow: 0.1rem 0.1rem 0.2rem 0rem #0000001d;\n}\n\n.refresh-icon {\n padding: 0.25rem;\n border-radius: 0.25rem;\n margin-right: 1rem;\n display: flex;\n justify-content: center;\n align-items: center;\n transition: 0.6s;\n\n .refresh {\n cursor: pointer;\n transition: .6s;\n transition-property: background;\n }\n}\n\n.patient-filters {\n display: flex;\n width: 90%;\n padding-top: 1rem;\n\n &.hidden {\n opacity: 0;\n transition-duration: 0.2s;\n }\n\n ccf-dual-slider {\n margin-left: .5rem;\n width: 33%;\n }\n\n ccf-dropdown {\n width: 33%;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' APPLY FILTERS refresh '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'FiltersContentComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/FiltersContentModule.html":{"url":"modules/FiltersContentModule.html","title":"module - FiltersContentModule","body":"\n \n\n\n\n\n Modules\n FiltersContentModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_FiltersContentModule\n\n\n\ncluster_FiltersContentModule_exports\n\n\n\ncluster_FiltersContentModule_imports\n\n\n\ncluster_FiltersContentModule_declarations\n\n\n\n\nFiltersContentComponent\n\nFiltersContentComponent\n\n\n\nFiltersContentModule\n\nFiltersContentModule\n\nFiltersContentModule -->\n\nFiltersContentComponent->FiltersContentModule\n\n\n\n\n\nFiltersContentComponent \n\nFiltersContentComponent \n\nFiltersContentComponent -->\n\nFiltersContentModule->FiltersContentComponent \n\n\n\n\n\nCheckboxModule\n\nCheckboxModule\n\nFiltersContentModule -->\n\nCheckboxModule->FiltersContentModule\n\n\n\n\n\nDropdownModule\n\nDropdownModule\n\nFiltersContentModule -->\n\nDropdownModule->FiltersContentModule\n\n\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nFiltersContentModule -->\n\nDualSliderModule->FiltersContentModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n FiltersContentComponent\n \n \n \n \n Imports\n \n \n CheckboxModule\n \n \n DropdownModule\n \n \n DualSliderModule\n \n \n \n \n Exports\n \n \n FiltersContentComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { CheckboxModule } from '../../../shared/components/checkbox/checkbox.module';\nimport { DropdownModule } from '../../../shared/components/dropdown/dropdown.module';\nimport { DualSliderModule } from '../../../shared/components/dual-slider/dual-slider.module';\nimport { FiltersContentComponent } from './filters-content.component';\nimport { MatButtonModule } from '@angular/material/button';\n\n@NgModule({\n imports: [CommonModule, CheckboxModule, DropdownModule, DualSliderModule, MatButtonModule, MatIconModule],\n declarations: [FiltersContentComponent],\n exports: [FiltersContentComponent]\n})\nexport class FiltersContentModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/FiltersPopoverComponent.html":{"url":"components/FiltersPopoverComponent.html","title":"component - FiltersPopoverComponent","body":"\n \n\n\n\n\n\n Components\n \n FiltersPopoverComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts\n\n\n\n \n Description\n \n \n Popover box for filter settings\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-filters-popover\n \n\n \n styleUrls\n ./filters-popover.component.scss\n \n\n\n\n \n templateUrl\n ./filters-popover.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n filtersVisible\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n applyFilters\n \n \n removeBox\n \n \n toggleFilterVisible\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n drawerExpanded\n \n \n filters\n \n \n providerFilters\n \n \n technologyFilters\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n filtersChange\n \n \n \n \n\n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n drawerExpanded\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:22\n \n \n \n \n Keeps track of whether or not the containing drawer is expanded\nBecause the styles need to change accordingly\n\n \n \n \n \n \n \n \n \n \n filters\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:16\n \n \n \n \n Allows the filters to be set from outside the component, and still render / function normally\n\n \n \n \n \n \n \n \n \n \n providerFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:32\n \n \n \n \n List of providers in the data\n\n \n \n \n \n \n \n \n \n \n technologyFilters\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:27\n \n \n \n \n List of technologies in the data\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n filtersChange\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:37\n \n \n \n \n Emits the current filters\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n applyFilters\n \n \n \n \n \n \napplyFilters(filters: Record)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:63\n \n \n\n\n \n \n Emits the current filters, and hides the popover box\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n filters\n \n Record\n \n\n \n No\n \n\n\n \n The object containing all the currently set filters\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n removeBox\n \n \n \n \n \n \nremoveBox()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:54\n \n \n\n\n \n \n Hides the filters popover box\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n toggleFilterVisible\n \n \n \n \n \n \ntoggleFilterVisible()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:47\n \n \n\n\n \n \n Toggles filter visible\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n filtersVisible\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts:42\n \n \n\n \n \n Keeps track of whether or not the filters popover box is visible or not\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\n/**\n * Popover box for filter settings\n */\n@Component({\n selector: 'ccf-filters-popover',\n templateUrl: './filters-popover.component.html',\n styleUrls: ['./filters-popover.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class FiltersPopoverComponent {\n /**\n * Allows the filters to be set from outside the component, and still render / function normally\n */\n @Input() filters: Record;\n\n /**\n * Keeps track of whether or not the containing drawer is expanded\n * Because the styles need to change accordingly\n */\n @Input() drawerExpanded: boolean;\n\n /**\n * List of technologies in the data\n */\n @Input() technologyFilters: string[];\n\n /**\n * List of providers in the data\n */\n @Input() providerFilters: string[];\n\n /**\n * Emits the current filters\n */\n @Output() readonly filtersChange = new EventEmitter>();\n\n /**\n * Keeps track of whether or not the filters popover box is visible or not\n */\n filtersVisible = false;\n\n /**\n * Toggles filter visible\n */\n toggleFilterVisible(): void {\n this.filtersVisible = !this.filtersVisible;\n }\n\n /**\n * Hides the filters popover box\n */\n removeBox(): void {\n this.filtersVisible = false;\n }\n\n /**\n * Emits the current filters, and hides the popover box\n *\n * @param filters The object containing all the currently set filters\n */\n applyFilters(filters: Record): void {\n this.filters = filters;\n this.filtersChange.emit(filters);\n this.removeBox();\n }\n}\n\n \n\n \n \n \n \n close\n \n \n \n \n \n \n \n \n \n \n\n\n \n\n \n \n ./filters-popover.component.scss\n \n .filters-popover {\n position: inherit;\n\n &.expanded {\n position: relative;\n\n .popup-container {\n right: inherit;\n }\n\n .popup-body {\n padding-left: 4em !important;\n }\n }\n}\n\n.popup-container {\n position: absolute;\n z-index: 5;\n top: 1.2rem;\n left: 1.48rem;\n box-shadow: 0.2rem 0.2rem 1rem 0rem #00000058;\n \n .popup-body {\n padding: 1.5rem;\n position: relative;\n height: 26.5rem;\n }\n \n &.visible {\n width: 35rem;\n height: 26.5rem;\n transition: width 0.2s ease-in-out;\n border-width: 1px;\n \n .popup-body {\n opacity: 1;\n transition-delay: 0.3s;\n transition-duration: 0.2s;\n }\n }\n \n &.hidden {\n width: 0;\n height: 0;\n transition: all 0.2s ease-out;\n transition-delay: 0.3s;\n pointer-events: none;\n\n .popup-body {\n opacity: 0;\n transition: opacity 0.2s ease-in-out;\n }\n }\n}\n\n.show-hide {\n background: none;\n border: none;\n z-index: 10;\n position: relative;\n cursor: pointer;\n outline: none;\n padding: 0.5rem;\n border-radius: 0.25rem;\n transition: 0.6s;\n \n .funnel {\n // margin-top: 0.25rem;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' close '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'FiltersPopoverComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/FiltersPopoverModule.html":{"url":"modules/FiltersPopoverModule.html","title":"module - FiltersPopoverModule","body":"\n \n\n\n\n\n Modules\n FiltersPopoverModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_FiltersPopoverModule\n\n\n\ncluster_FiltersPopoverModule_exports\n\n\n\ncluster_FiltersPopoverModule_imports\n\n\n\ncluster_FiltersPopoverModule_declarations\n\n\n\n\nFiltersPopoverComponent\n\nFiltersPopoverComponent\n\n\n\nFiltersPopoverModule\n\nFiltersPopoverModule\n\nFiltersPopoverModule -->\n\nFiltersPopoverComponent->FiltersPopoverModule\n\n\n\n\n\nFiltersPopoverComponent \n\nFiltersPopoverComponent \n\nFiltersPopoverComponent -->\n\nFiltersPopoverModule->FiltersPopoverComponent \n\n\n\n\n\nFiltersContentModule\n\nFiltersContentModule\n\nFiltersPopoverModule -->\n\nFiltersContentModule->FiltersPopoverModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n FiltersPopoverComponent\n \n \n \n \n Imports\n \n \n FiltersContentModule\n \n \n \n \n Exports\n \n \n FiltersPopoverComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { FiltersContentModule } from '../filters-content/filters-content.module';\nimport { FiltersPopoverComponent } from './filters-popover.component';\n\n\n@NgModule({\n imports: [CommonModule, MatIconModule, FiltersContentModule],\n declarations: [FiltersPopoverComponent],\n exports: [FiltersPopoverComponent]\n})\nexport class FiltersPopoverModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/FlatNode.html":{"url":"classes/FlatNode.html","title":"class - FlatNode","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n FlatNode\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/models/flat-node.ts\n \n\n\n \n Description\n \n \n Node type used by ontology tree component.\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n numResults\n \n \n Optional\n opacity\n \n \n Optional\n visible\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Static\n create\n \n \n \n \n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n label\n \n \n expandable\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(original: OntologyTreeNode, level: number)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:38\n \n \n\n \n \n Creates an instance of flat node.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n original\n \n \n OntologyTreeNode\n \n \n \n No\n \n \n \n The original ontology node object.\n\n \n \n \n level\n \n \n number\n \n \n \n No\n \n \n \n The level of the new flat node in the tree.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Optional\n numResults\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:13\n \n \n\n\n \n \n \n \n \n \n \n \n Optional\n opacity\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 20\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:11\n \n \n\n\n \n \n \n \n \n \n \n \n Optional\n visible\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : true\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:9\n \n \n\n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Static\n create\n \n \n \n \n \n \n \n create(original: OntologyTreeNode, level: number)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:36\n \n \n\n\n \n \n Creates a flat node from a ontology node object and a level in the tree.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n original\n \n OntologyTreeNode\n \n\n \n No\n \n\n\n \n The original ontology node object.\n\n \n \n \n level\n \n number\n \n\n \n No\n \n\n\n \n The level of the new flat node in the tree.\n\n \n \n \n \n \n \n \n \n Returns : FlatNode\n\n \n \n The newly created flat node.\n\n \n \n \n \n \n\n\n\n\n\n\n \n \n Accessors\n \n \n \n \n \n \n label\n \n \n\n \n \n getlabel()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:18\n \n \n \n \n Gets this node's label.\n\n\n \n Returns : string\n\n \n \n \n\n \n \n \n \n \n \n \n expandable\n \n \n\n \n \n getexpandable()\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/models/flat-node.ts:25\n \n \n \n \n Indicates whether this node has children.\n\n\n \n Returns : boolean\n\n \n \n \n\n \n \n\n \n\n\n \n import { OntologyTreeNode } from 'ccf-database';\n\n\n/**\n * Node type used by ontology tree component.\n */\nexport class FlatNode {\n visible?: boolean = true;\n\n opacity?: number = 20;\n\n numResults?: number;\n\n /**\n * Gets this node's label.\n */\n get label(): string {\n return this.original.label;\n }\n\n /**\n * Indicates whether this node has children.\n */\n get expandable(): boolean {\n return this.original.children.length > 0;\n }\n\n /**\n * Creates a flat node from a ontology node object and a level in the tree.\n *\n * @param original The original ontology node object.\n * @param level The level of the new flat node in the tree.\n * @returns The newly created flat node.\n */\n static create(original: OntologyTreeNode, level: number): FlatNode {\n return new FlatNode(original, level);\n }\n\n /**\n * Creates an instance of flat node.\n *\n * @param original The original ontology node object.\n * @param level The level of the new flat node in the tree.\n */\n constructor(readonly original: OntologyTreeNode, readonly level: number) { }\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/HeaderComponent.html":{"url":"components/HeaderComponent.html","title":"component - HeaderComponent","body":"\n \n\n\n\n\n\n Components\n \n HeaderComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/core/header/header.component.ts\n\n\n\n \n Description\n \n \n Header which is always displayed on the site; contains current filter info,\na link to download data, and a logo which resets the page when clicked.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-header\n \n\n \n styleUrls\n ./header.component.scss\n \n\n\n\n \n templateUrl\n ./header.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n\n\n \n \n Inputs\n \n \n \n \n \n \n filters\n \n \n homeUrl\n \n \n loggedIn\n \n \n loginDisabled\n \n \n logoTooltip\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n downloadClicked\n \n \n refreshClicked\n \n \n \n \n\n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n filters\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:32\n \n \n \n \n Current filter settings\n\n \n \n \n \n \n \n \n \n \n homeUrl\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:18\n \n \n \n \n URL to Portal site\n\n \n \n \n \n \n \n \n \n \n loggedIn\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:27\n \n \n \n \n Is the user logged in?\n\n \n \n \n \n \n \n \n \n \n loginDisabled\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:20\n \n \n \n \n \n \n \n \n \n logoTooltip\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:22\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n downloadClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:42\n \n \n \n \n Emitted when download button is clicked\n\n \n \n \n \n \n \n \n \n \n refreshClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/header/header.component.ts:37\n \n \n \n \n Emitted when refresh button is clicked\n\n \n \n \n \n\n\n\n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\n/**\n * Header which is always displayed on the site; contains current filter info,\n * a link to download data, and a logo which resets the page when clicked.\n */\n@Component({\n selector: 'ccf-header',\n templateUrl: './header.component.html',\n styleUrls: ['./header.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class HeaderComponent {\n\n /**\n * URL to Portal site\n */\n @Input() homeUrl: string;\n\n @Input() loginDisabled: boolean;\n\n @Input() logoTooltip: string;\n\n /**\n * Is the user logged in?\n */\n @Input() loggedIn: boolean;\n\n /**\n * Current filter settings\n */\n @Input() filters: Record;\n\n /**\n * Emitted when refresh button is clicked\n */\n @Output() readonly refreshClicked = new EventEmitter();\n\n /**\n * Emitted when download button is clicked\n */\n @Output() readonly downloadClicked = new EventEmitter();\n}\n\n \n\n \n \n \n \n \n \n\n \n \n LOGIN\n LOGOUT\n\n\n \n\n \n \n ./header.component.scss\n \n .ccf-header {\n height: 4rem;\n padding: 0 1.5rem;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n display: flex;\n\n .home {\n height: 100%;\n width: 25rem;\n align-items: center;\n display: flex;\n }\n\n .logo {\n width: 100%;\n height: 50%;\n background-repeat: no-repeat;\n background-size: contain;\n }\n\n .download {\n height: 1.5rem;\n }\n\n // Styled to match the HuBMAP Portal\n .authentication {\n width: 8.25rem;\n border-radius: 0.125rem;\n font-weight: 500;\n }\n\n .logo, .download, .refresh {\n display: flex;\n align-items: center;\n transition: color 1s;\n cursor: pointer;\n text-decoration: none;\n }\n\n :not(:last-child) {\n margin-right: 1.5rem;\n }\n\n .filler {\n flex-grow: 1;\n margin: 0;\n }\n\n .filter-labels {\n display: flex;\n align-items: center;\n height: 100%;\n font: 400 1rem/1.25rem Inter, sans-serif;\n }\n\n .disabled {\n display: none;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' LOGIN LOGOUT'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'HeaderComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/HeaderModule.html":{"url":"modules/HeaderModule.html","title":"module - HeaderModule","body":"\n \n\n\n\n\n Modules\n HeaderModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_HeaderModule\n\n\n\ncluster_HeaderModule_exports\n\n\n\ncluster_HeaderModule_declarations\n\n\n\n\nHeaderComponent\n\nHeaderComponent\n\n\n\nHeaderModule\n\nHeaderModule\n\nHeaderModule -->\n\nHeaderComponent->HeaderModule\n\n\n\n\n\nHeaderComponent \n\nHeaderComponent \n\nHeaderComponent -->\n\nHeaderModule->HeaderComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/header/header.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n HeaderComponent\n \n \n \n \n Exports\n \n \n HeaderComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\n\nimport { HeaderComponent } from './header.component';\n\n\n@NgModule({\n imports: [CommonModule, MatButtonModule, MatIconModule, MatToolbarModule, MatTooltipModule],\n declarations: [HeaderComponent],\n exports: [HeaderComponent]\n})\nexport class HeaderModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/IconDefinition.html":{"url":"interfaces/IconDefinition.html","title":"interface - IconDefinition","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n IconDefinition\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n\n\n \n Description\n \n \n Object definition for registering new svg icons.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n html\n \n \n \n Optional\n \n name\n \n \n \n Optional\n \n namespace\n \n \n \n Optional\n \n url\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n html\n \n \n \n \n \n \n \n \n html: SafeHtml\n\n \n \n\n\n \n \n Type : SafeHtml\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Html containing the svg of the icon or icon set.\n\n \n \n \n \n \n \n \n \n \n name\n \n \n \n \n \n \n \n \n name: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Name to register the icon under.\n\n \n \n \n \n \n \n \n \n \n namespace\n \n \n \n \n \n \n \n \n namespace: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Namespace to register the icon or icon set under.\n\n \n \n \n \n \n \n \n \n \n url\n \n \n \n \n \n \n \n \n url: SafeResourceUrl\n\n \n \n\n\n \n \n Type : SafeResourceUrl\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n Url to fetch the icon or icon set from.\n\n \n \n \n \n \n \n\n\n \n import { Injectable, Optional } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer, SafeHtml, SafeResourceUrl } from '@angular/platform-browser';\nimport { DataAction, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\n\nimport { DEFAULT_ICONS } from './default-icons';\n\n\n/**\n * Object definition for registering new svg icons.\n */\nexport interface IconDefinition {\n /**\n * Name to register the icon under.\n */\n name?: string;\n\n /**\n * Namespace to register the icon or icon set under.\n */\n namespace?: string;\n\n /**\n * Url to fetch the icon or icon set from.\n */\n url?: SafeResourceUrl;\n\n /**\n * Html containing the svg of the icon or icon set.\n */\n html?: SafeHtml;\n}\n\n\n/**\n * State handling the registration of icons for use with `mat-icon`.\n */\n@StateRepository()\n@State({ name: 'iconRegistry' })\n@Injectable()\nexport class IconRegistryState extends NgxsDataRepository {\n /**\n * Creates an instance of icon registry state.\n *\n * @param registry Material icon registry.\n * @param sanitizer Service used to sanitize default imported urls and html.\n */\n constructor(\n @Optional() private readonly registry: MatIconRegistry | null,\n sanitizer: DomSanitizer\n ) {\n super();\n\n for (const { name, namespace, url, html } of DEFAULT_ICONS) {\n const safeDef: IconDefinition = {\n name, namespace,\n url: url && sanitizer.bypassSecurityTrustResourceUrl(url),\n html: html && sanitizer.bypassSecurityTrustHtml(html)\n };\n\n this.registerIconImpl(safeDef);\n }\n }\n\n /**\n * Registers a svg icon for use in mat-icon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n @DataAction()\n registerIcon(definition: IconDefinition): boolean {\n return this.registerIconImpl(definition);\n }\n\n /**\n * Backing implementation of registerIcon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n private registerIconImpl(definition: IconDefinition): boolean {\n if (!this.registry) {\n return false;\n }\n if (!definition.url && !definition.html) {\n return false;\n }\n\n const registry = this.registry as unknown as { [prop: string]: (...arg: unknown[]) => void };\n const methodName = this.getMethodName(definition);\n const method = registry[methodName];\n const args = this.getArguments(definition);\n\n if (!method) {\n return false;\n }\n try {\n method.apply(registry, args);\n return true;\n } catch (_error) {\n return false;\n }\n }\n\n /**\n * Selects the MatIconRegistry method used to register the icon.\n *\n * @param definition Icon definition.\n * @returns The name of the registry method.\n */\n private getMethodName({ name, namespace, url }: IconDefinition): string {\n const parts = ['addSvgIcon'];\n if (!name) {\n parts.push('Set');\n }\n if (!url) {\n parts.push('Literal');\n }\n if (namespace) {\n parts.push('InNamespace');\n }\n return parts.join('');\n }\n\n /**\n * Selects the argument used to call the registration method.\n *\n * @param definition Icon definition.\n * @returns An array of arguments.\n */\n private getArguments({ name, namespace, url, html }: IconDefinition): unknown[] {\n const args: unknown[] = [namespace, name, url ?? html];\n return args.filter(value => !!value);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/IconRegistryState.html":{"url":"injectables/IconRegistryState.html","title":"injectable - IconRegistryState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n IconRegistryState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n\n\n \n Description\n \n \n State handling the registration of icons for use with mat-icon.\n\n \n\n \n Extends\n \n \n NgxsDataRepository\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n getArguments\n \n \n Private\n getMethodName\n \n \n registerIcon\n \n \n Private\n registerIconImpl\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(registry: MatIconRegistry | null, sanitizer: DomSanitizer)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:43\n \n \n\n \n \n Creates an instance of icon registry state.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n registry\n \n \n MatIconRegistry | null\n \n \n \n No\n \n \n \n Material icon registry.\n\n \n \n \n sanitizer\n \n \n DomSanitizer\n \n \n \n No\n \n \n \n Service used to sanitize default imported urls and html.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n getArguments\n \n \n \n \n \n \n \n getArguments(undefined: IconDefinition)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:134\n \n \n\n\n \n \n Selects the argument used to call the registration method.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n \n IconDefinition\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : []\n\n \n \n An array of arguments.\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n getMethodName\n \n \n \n \n \n \n \n getMethodName(undefined: IconDefinition)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:114\n \n \n\n\n \n \n Selects the MatIconRegistry method used to register the icon.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n \n IconDefinition\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : string\n\n \n \n The name of the registry method.\n\n \n \n \n \n \n \n \n \n \n \n \n registerIcon\n \n \n \n \n \n \nregisterIcon(definition: IconDefinition)\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:74\n \n \n\n\n \n \n Registers a svg icon for use in mat-icon.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n definition\n \n IconDefinition\n \n\n \n No\n \n\n\n \n Icon to register.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if registration was successful, otherwise false.\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n registerIconImpl\n \n \n \n \n \n \n \n registerIconImpl(definition: IconDefinition)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts:84\n \n \n\n\n \n \n Backing implementation of registerIcon.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n definition\n \n IconDefinition\n \n\n \n No\n \n\n\n \n Icon to register.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if registration was successful, otherwise false.\n\n \n \n \n \n \n\n\n \n\n\n \n import { Injectable, Optional } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer, SafeHtml, SafeResourceUrl } from '@angular/platform-browser';\nimport { DataAction, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsDataRepository } from '@ngxs-labs/data/repositories';\nimport { State } from '@ngxs/store';\n\nimport { DEFAULT_ICONS } from './default-icons';\n\n\n/**\n * Object definition for registering new svg icons.\n */\nexport interface IconDefinition {\n /**\n * Name to register the icon under.\n */\n name?: string;\n\n /**\n * Namespace to register the icon or icon set under.\n */\n namespace?: string;\n\n /**\n * Url to fetch the icon or icon set from.\n */\n url?: SafeResourceUrl;\n\n /**\n * Html containing the svg of the icon or icon set.\n */\n html?: SafeHtml;\n}\n\n\n/**\n * State handling the registration of icons for use with `mat-icon`.\n */\n@StateRepository()\n@State({ name: 'iconRegistry' })\n@Injectable()\nexport class IconRegistryState extends NgxsDataRepository {\n /**\n * Creates an instance of icon registry state.\n *\n * @param registry Material icon registry.\n * @param sanitizer Service used to sanitize default imported urls and html.\n */\n constructor(\n @Optional() private readonly registry: MatIconRegistry | null,\n sanitizer: DomSanitizer\n ) {\n super();\n\n for (const { name, namespace, url, html } of DEFAULT_ICONS) {\n const safeDef: IconDefinition = {\n name, namespace,\n url: url && sanitizer.bypassSecurityTrustResourceUrl(url),\n html: html && sanitizer.bypassSecurityTrustHtml(html)\n };\n\n this.registerIconImpl(safeDef);\n }\n }\n\n /**\n * Registers a svg icon for use in mat-icon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n @DataAction()\n registerIcon(definition: IconDefinition): boolean {\n return this.registerIconImpl(definition);\n }\n\n /**\n * Backing implementation of registerIcon.\n *\n * @param definition Icon to register.\n * @returns true if registration was successful, otherwise false.\n */\n private registerIconImpl(definition: IconDefinition): boolean {\n if (!this.registry) {\n return false;\n }\n if (!definition.url && !definition.html) {\n return false;\n }\n\n const registry = this.registry as unknown as { [prop: string]: (...arg: unknown[]) => void };\n const methodName = this.getMethodName(definition);\n const method = registry[methodName];\n const args = this.getArguments(definition);\n\n if (!method) {\n return false;\n }\n try {\n method.apply(registry, args);\n return true;\n } catch (_error) {\n return false;\n }\n }\n\n /**\n * Selects the MatIconRegistry method used to register the icon.\n *\n * @param definition Icon definition.\n * @returns The name of the registry method.\n */\n private getMethodName({ name, namespace, url }: IconDefinition): string {\n const parts = ['addSvgIcon'];\n if (!name) {\n parts.push('Set');\n }\n if (!url) {\n parts.push('Literal');\n }\n if (namespace) {\n parts.push('InNamespace');\n }\n return parts.join('');\n }\n\n /**\n * Selects the argument used to call the registration method.\n *\n * @param definition Icon definition.\n * @returns An array of arguments.\n */\n private getArguments({ name, namespace, url, html }: IconDefinition): unknown[] {\n const args: unknown[] = [namespace, name, url ?? html];\n return args.filter(value => !!value);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/InitializationState.html":{"url":"classes/InitializationState.html","title":"class - InitializationState","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n InitializationState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n\n\n \n Description\n \n \n Boolean state that can also be awaited.\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n deferred\n \n \n Private\n initialized\n \n \n Private\n resolve\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n set\n \n \n valueOf\n \n \n Async\n wait\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n deferred\n \n \n \n \n \n \n Default value : new Promise(resolve => {\n this.resolve = resolve;\n })\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:37\n \n \n\n \n \n Promise used to await on.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n initialized\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:35\n \n \n\n \n \n Whether this state is true or false.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n resolve\n \n \n \n \n \n \n Type : function\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:41\n \n \n\n \n \n Resolve function for the promise.\n\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n set\n \n \n \n \n \n \nset()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:46\n \n \n\n\n \n \n Sets the state to true and\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n valueOf\n \n \n \n \n \n \nvalueOf()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:65\n \n \n\n\n \n \n Gets the boolean state of this object.\n\n\n \n \n \n Returns : boolean\n\n \n \n true if set has been called.\n\n \n \n \n \n \n \n \n \n \n \n \n Async\n wait\n \n \n \n \n \n \n \n wait()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts:56\n \n \n\n\n \n \n Gets a promise that resolves when this state is set to true.\n\n\n \n \n \n Returns : Promise\n\n \n \n A promise.\n\n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { animate, state, style, transition, trigger } from '@angular/animations';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, HostBinding, HostListener,\n Input, OnDestroy, Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { Message, MessageChannel, MessageService } from '../messages';\n\n\n/** Opened/closed state. */\ntype OpenedState = 'open' | 'open-instant' | 'closed';\n/** Expanded/collapsed state. */\ntype ExpandedState = 'open' | 'open-instant' | 'closed';\n/** Expanded state relative to an opposite drawer. */\ntype ExpandedState2 = 'collapsed' | 'half' | 'extended' | 'full';\n\n/** Default animation parameters. */\nconst EXPAND_COLLAPSE_PARAMS_DEFAULT = {\n params: {\n width: 0,\n margin: 0,\n margin2: 0\n }\n};\n\n/**\n * Boolean state that can also be awaited.\n */\nclass InitializationState {\n /** Whether this state is true or false. */\n private initialized = false;\n /** Promise used to await on. */\n private deferred = new Promise(resolve => {\n this.resolve = resolve;\n });\n /** Resolve function for the promise. */\n private resolve: () => void;\n\n /**\n * Sets the state to true and\n */\n set(): void {\n this.initialized = true;\n this.resolve();\n }\n\n /**\n * Gets a promise that resolves when this state is set to true.\n *\n * @returns A promise.\n */\n async wait(): Promise {\n return this.deferred;\n }\n\n /**\n * Gets the boolean state of this object.\n *\n * @returns true if set has been called.\n */\n valueOf(): boolean {\n return this.initialized;\n }\n}\n\n\n/**\n * Side drawer component.\n * Contains all the logic for opening/closing/expanding.\n */\n@Component({\n selector: 'ccf-drawer',\n exportAs: 'ccfDrawer',\n templateUrl: './drawer.component.html',\n styleUrls: ['./drawer.component.scss'],\n animations: [\n trigger('openClose', [\n state('open, open-instant', style({\n transform: 'none'\n })),\n state('closed', style({})),\n\n transition('closed => open-instant', animate(0)),\n transition('closed open, open-instant => closed', animate('.5s ease-in-out'))\n ]),\n trigger('expandCollapse', [\n state('collapsed', style({})),\n state('half', style({\n width: 'calc(50% - {{ margin }}px)'\n }), EXPAND_COLLAPSE_PARAMS_DEFAULT),\n state('extended', style({\n width: 'calc(100% - {{ width }}px - {{ margin }}px)'\n }), EXPAND_COLLAPSE_PARAMS_DEFAULT),\n state('full', style({\n width: 'calc(100% - {{ margin }}px - {{ margin2 }}px)'\n }), EXPAND_COLLAPSE_PARAMS_DEFAULT),\n\n transition('* *', animate('.5s ease-in-out'))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DrawerComponent implements AfterViewInit, OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer';\n /** Whether this is located at the end position. */\n @HostBinding('class.ccf-drawer-end') // eslint-disable-line\n get classEnd(): boolean {\n return this.position === 'end';\n }\n\n /** Position of the drawer - start (left) or end (right). */\n @Input()// eslint-disable-line\n get position(): 'start' | 'end' {\n return this._position;\n }\n set position(value: 'start' | 'end') {\n this._position = value || 'start';\n }\n /** Property for position getter/setter. */\n private _position: 'start' | 'end' = 'start';\n\n /** Whether the drawer is opened. */\n @Input() // eslint-disable-line\n @HostBinding('class.ccf-drawer-opened') // eslint-disable-line\n get opened(): boolean {\n return this._opened;\n }\n set opened(value: boolean) {\n this.toggle(coerceBooleanProperty(value));\n }\n /** Property for opened getter/setter. */\n private _opened = false;\n\n /** Whether the drawer is expanded. */\n @Input() // eslint-disable-line\n @HostBinding('class.ccf-drawer-expanded') // eslint-disable-line\n get expanded(): boolean {\n return this._expanded;\n }\n set expanded(value: boolean) {\n this.toggleExpanded(coerceBooleanProperty(value));\n }\n /** Property for expanded getter/setter */\n private _expanded = false;\n\n /** Output emitting when the drawer has opened. */\n @Output() readonly openedChange = new EventEmitter(true);\n /** Output emitting when the drawer has expanded. */\n @Output() readonly expandedChange = new EventEmitter(true);\n /** Output emitting whenever the drawer state changes. */\n @Output() readonly stateChange = new EventEmitter(true);\n\n /** Current open/close animation state. */\n @HostBinding('@openClose')\n openedState: OpenedState = 'closed';\n\n /** Expanded/collapsed state parameters. */\n @HostBinding('@expandCollapse') // eslint-disable-line\n get expandedStateObj(): unknown {\n return {\n value: this.expandedState2, params: {\n width: this.width, margin: this.measuredMargin,\n margin2: this.margin2\n }\n };\n }\n /** Current expanded/collapsed animation state. */\n expandedState: ExpandedState = 'closed';\n /** Current expanded state relative to the opposite drawer. */\n private expandedState2: ExpandedState2 = 'collapsed';\n\n /** Gets the calculated width of the drawer. */\n private get measuredWidth(): number {\n if (this._measuredWidth > 0) {\n return this._measuredWidth;\n }\n\n const element = this.element.nativeElement;\n if (!element) {\n return 0;\n }\n\n const bbox = element.getBoundingClientRect();\n const width = bbox.right - bbox.left;\n if (width === 0) {\n return 0;\n }\n\n this._measuredWidth = width;\n return width;\n }\n /** Cached measured width. */\n private _measuredWidth = 0;\n /** Width of opposite drawer. */\n private width = 0;\n\n /** Gets the calculated margin of the drawer. */\n private get measuredMargin(): number {\n if (this._measuredMargin > 0) {\n return this._measuredMargin;\n }\n\n const element = this.element.nativeElement;\n if (!element) {\n return 0;\n }\n\n const styles = globalThis.getComputedStyle(element);\n const property = this.position === 'start' ? 'margin-right' : 'margin-left';\n const value = styles.getPropertyValue(property);\n const margin = Number(value.slice(0, -2));\n\n this._measuredMargin = margin;\n return margin;\n }\n /** Cached measured margin. */\n private _measuredMargin = 0;\n /** Margin of the opposite drawer. */\n private margin2 = 0;\n\n /** Initialization state. */\n private initialized = new InitializationState();\n /** Connected message channel. */\n private channel: MessageChannel;\n /** Subscriptions managed by this component. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of drawer component.\n *\n * @param messageService Service for sending/receiving event messages.\n * @param cdr The change detector reference.\n * @param element Reference to components HTML element.\n */\n constructor(\n messageService: MessageService,\n cdr: ChangeDetectorRef,\n private readonly element: ElementRef\n ) {\n this.channel = messageService.connect(this);\n this.subscriptions.add(this.channel.getMessages().subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /**\n * Initializes this component.\n */\n ngAfterViewInit(): void {\n this.initialized.set();\n setTimeout(() => this.channel.sendMessage({ type: 'drawer-initialized' }));\n }\n\n /**\n * Cleans up all subscriptions.\n */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Opens the drawer.\n */\n open(): void {\n this.toggle(true);\n }\n\n /**\n * Closes the drawer.\n */\n close(): void {\n this.toggle(false);\n }\n\n /**\n * Toggles the drawer between opened and closed.\n *\n * @param [opened] Whether to open or close the drawer.\n */\n toggle(opened = !this.opened): void {\n if (this.opened === opened) {\n return;\n }\n\n if (!opened) {\n this.openedState = 'closed';\n this.expandedState = 'closed';\n this.expandedState2 = 'collapsed';\n this._expanded = false;\n } else if (this.initialized.valueOf()) {\n this.openedState = 'open';\n } else {\n this.openedState = 'open-instant';\n }\n\n this._opened = opened;\n this.sendToggle();\n }\n\n /**\n * Expands the drawer.\n */\n openExpanded(): void {\n this.toggleExpanded(true);\n }\n\n /**\n * Collapses the drawer.\n */\n closeExpanded(): void {\n this.toggleExpanded(false);\n }\n\n /**\n * Toggles the drawer between expanded and collapsed.\n *\n * @param [expanded] Whether to expand or collapse the drawer.\n */\n toggleExpanded(expanded = !this.expanded): void {\n if (this.expanded === expanded) {\n return;\n }\n\n if (!expanded) {\n this.expandedState = 'closed';\n this.expandedState2 = 'collapsed';\n } else if (this.initialized.valueOf()) {\n this.expandedState = 'open';\n } else {\n this.expandedState = 'open-instant';\n }\n\n this._expanded = expanded;\n this.sendToggle();\n }\n\n /**\n * Listener to open/close animation completion.\n */\n @HostListener('@openClose.done') // eslint-disable-line\n closeOpenDone(): void {\n this.openedChange.emit(this.opened);\n }\n\n /**\n * Listener to expand/collapse animation completion.\n */\n @HostListener('@expandCollapse.done') // eslint-disable-line\n expandCollapseDone(): void {\n this.expandedChange.emit(this.expanded);\n }\n\n /**\n * Sends a toggle event to the channel.\n * Waits until initialization is completed before sending.\n */\n private async sendToggle(): Promise {\n await this.initialized.wait();\n this.channel.sendMessage({\n type: 'drawer-toggled',\n opened: this.opened,\n expanded: this.expanded,\n width: this.measuredWidth,\n margin: this.measuredMargin\n });\n this.stateChange.emit();\n }\n\n /**\n * Processes an event.\n *\n * @param msg The event.\n * @returns true if change detection should run.\n */\n private handleMessage(msg: Message): boolean {\n switch (msg.payload.type) {\n case 'drawer-toggled': {\n const other = msg.source as DrawerComponent;\n this.syncExpanded(other);\n return true;\n }\n\n default:\n return false;\n }\n }\n\n /**\n * Syncs the drawer widths and margin against the opposite drawer.\n *\n * @param other The opposite drawer.\n */\n private syncExpanded(other: DrawerComponent): void {\n if (this.expanded || other.expanded) {\n if (this.expanded && other.expanded) {\n this.expandedState2 = other.expandedState2 = 'half';\n } else if (this.expanded) {\n if (other.opened) {\n this.expandedState2 = 'extended';\n this.width = other.measuredWidth + other.measuredMargin;\n } else {\n this.expandedState2 = 'full';\n this.margin2 = other.measuredMargin;\n }\n } else {\n if (this.opened) {\n other.expandedState2 = 'extended';\n other.width = this.measuredWidth + this.measuredMargin;\n } else {\n other.expandedState2 = 'full';\n other.margin2 = this.measuredMargin;\n }\n }\n }\n }\n\n /** Workaround for getter/setter pair not accepting different types. */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n static ngAcceptInputType_position: '' | 'start' | 'end';\n // eslint-disable-next-line @typescript-eslint/naming-convention\n static ngAcceptInputType_opened: BooleanInput;\n // eslint-disable-next-line @typescript-eslint/naming-convention\n static ngAcceptInputType_expanded: BooleanInput;\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ListResult.html":{"url":"interfaces/ListResult.html","title":"interface - ListResult","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ListResult\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/models/list-result.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n color\n \n \n \n Optional\n \n rank\n \n \n \n \n selected\n \n \n \n \n tissueBlock\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n color\n \n \n \n \n \n \n \n \n color: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n rank\n \n \n \n \n \n \n \n \n rank: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n selected\n \n \n \n \n \n \n \n \n selected: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n tissueBlock\n \n \n \n \n \n \n \n \n tissueBlock: TissueBlockResult\n\n \n \n\n\n \n \n Type : TissueBlockResult\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { TissueBlockResult } from 'ccf-database';\n\nexport interface ListResult {\n selected: boolean;\n color?: string;\n tissueBlock: TissueBlockResult;\n rank?: number;\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ListResultsState.html":{"url":"injectables/ListResultsState.html","title":"injectable - ListResultsState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n ListResultsState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n\n\n\n \n Extends\n \n \n NgxsImmutableDataRepository\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n colorAssignments\n \n \n Private\n dataState\n \n \n Readonly\n highlightedNodeId$\n \n \n Readonly\n listResults$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n deselectListResult\n \n \n highlightNode\n \n \n ngxsOnInit\n \n \n selectListResult\n \n \n setListResults\n \n \n unHighlightNode\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(dataService: DataSourceService, injector: Injector)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:38\n \n \n\n \n \n Creates an instance of scene state.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dataService\n \n \n DataSourceService\n \n \n \n No\n \n \n \n \n \n \n injector\n \n \n Injector\n \n \n \n No\n \n \n \n Injector service used to lazy load data state\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n deselectListResult\n \n \n \n \n \n \ndeselectListResult(result: ListResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:66\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n result\n \n ListResult\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n highlightNode\n \n \n \n \n \n \nhighlightNode(id: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:70\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n id\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ngxsOnInit\n \n \n \n \n \n \nngxsOnInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:81\n \n \n\n\n \n \n Initializes this state service.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n selectListResult\n \n \n \n \n \n \nselectListResult(result: ListResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:62\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n result\n \n ListResult\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n setListResults\n \n \n \n \n \n \nsetListResults(listResults: ListResult[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:58\n \n \n\n\n \n \n Sets the list results\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n listResults\n \n ListResult[]\n \n\n \n No\n \n\n\n \n The list of results to display\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n unHighlightNode\n \n \n \n \n \n \nunHighlightNode()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:74\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n colorAssignments\n \n \n \n \n \n \n Type : ColorAssignmentState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:38\n \n \n\n \n \n Color assignments state\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n dataState\n \n \n \n \n \n \n Type : DataState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:35\n \n \n\n \n \n The data state\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n highlightedNodeId$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('highlightedNodeId'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:31\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n listResults$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('listResults'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts:30\n \n \n\n \n \n Scene to display in the 3d Scene\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { DataSourceService } from 'ccf-shared';\nimport { sortBy } from 'lodash';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, tap } from 'rxjs/operators';\n\nimport { ListResult } from '../../models/list-result';\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\n\n\nexport interface ListResultsStateModel {\n listResults: ListResult[];\n highlightedNodeId?: string;\n}\n\n@StateRepository()\n@State({\n name: 'listResults',\n defaults: {\n listResults: []\n }\n})\n@Injectable()\nexport class ListResultsState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Scene to display in the 3d Scene */\n readonly listResults$ = this.state$.pipe(pluck('listResults'), distinctUntilChanged());\n readonly highlightedNodeId$ = this.state$.pipe(pluck('highlightedNodeId'), distinctUntilChanged());\n\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the list results\n *\n * @param listResults The list of results to display\n */\n @DataAction()\n setListResults(@Payload('listResults') listResults: ListResult[]): void {\n this.ctx.patchState({ listResults });\n }\n\n selectListResult(result: ListResult): void {\n this.colorAssignments.assignColor(result.tissueBlock.spatialEntityId);\n }\n\n deselectListResult(result: ListResult): void {\n this.colorAssignments.unassignColor(result.tissueBlock.spatialEntityId);\n }\n\n highlightNode(id: string): void {\n this.ctx.patchState({ highlightedNodeId: id });\n }\n\n unHighlightNode(): void {\n this.ctx.patchState({ highlightedNodeId: undefined });\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n\n combineLatest([\n this.dataState.tissueBlockData$,\n this.colorAssignments.colorAssignments$\n ]).pipe(\n map(([tissueBlocks, colors]) => {\n const topBlocks: ListResult[] = [];\n const otherBlocks: ListResult[] = [];\n\n for (const tissueBlock of tissueBlocks) {\n const color = colors[tissueBlock.spatialEntityId];\n if (color) {\n topBlocks.push({\n selected: true, color: color.color, tissueBlock, rank: color.rank\n });\n } else {\n otherBlocks.push({\n selected: false, tissueBlock\n });\n }\n }\n\n return sortBy(topBlocks, ['rank']).concat(otherBlocks);\n }),\n tap(results => this.setListResults(results))\n ).subscribe();\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/ListResultsStateModel.html":{"url":"interfaces/ListResultsStateModel.html","title":"interface - ListResultsStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n ListResultsStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Optional\n \n highlightedNodeId\n \n \n \n \n listResults\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n highlightedNodeId\n \n \n \n \n \n \n \n \n highlightedNodeId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n listResults\n \n \n \n \n \n \n \n \n listResults: ListResult[]\n\n \n \n\n\n \n \n Type : ListResult[]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { DataSourceService } from 'ccf-shared';\nimport { sortBy } from 'lodash';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, tap } from 'rxjs/operators';\n\nimport { ListResult } from '../../models/list-result';\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\n\n\nexport interface ListResultsStateModel {\n listResults: ListResult[];\n highlightedNodeId?: string;\n}\n\n@StateRepository()\n@State({\n name: 'listResults',\n defaults: {\n listResults: []\n }\n})\n@Injectable()\nexport class ListResultsState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Scene to display in the 3d Scene */\n readonly listResults$ = this.state$.pipe(pluck('listResults'), distinctUntilChanged());\n readonly highlightedNodeId$ = this.state$.pipe(pluck('highlightedNodeId'), distinctUntilChanged());\n\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the list results\n *\n * @param listResults The list of results to display\n */\n @DataAction()\n setListResults(@Payload('listResults') listResults: ListResult[]): void {\n this.ctx.patchState({ listResults });\n }\n\n selectListResult(result: ListResult): void {\n this.colorAssignments.assignColor(result.tissueBlock.spatialEntityId);\n }\n\n deselectListResult(result: ListResult): void {\n this.colorAssignments.unassignColor(result.tissueBlock.spatialEntityId);\n }\n\n highlightNode(id: string): void {\n this.ctx.patchState({ highlightedNodeId: id });\n }\n\n unHighlightNode(): void {\n this.ctx.patchState({ highlightedNodeId: undefined });\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n\n combineLatest([\n this.dataState.tissueBlockData$,\n this.colorAssignments.colorAssignments$\n ]).pipe(\n map(([tissueBlocks, colors]) => {\n const topBlocks: ListResult[] = [];\n const otherBlocks: ListResult[] = [];\n\n for (const tissueBlock of tissueBlocks) {\n const color = colors[tissueBlock.spatialEntityId];\n if (color) {\n topBlocks.push({\n selected: true, color: color.color, tissueBlock, rank: color.rank\n });\n } else {\n otherBlocks.push({\n selected: false, tissueBlock\n });\n }\n }\n\n return sortBy(topBlocks, ['rank']).concat(otherBlocks);\n }),\n tap(results => this.setListResults(results))\n ).subscribe();\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/Message.html":{"url":"interfaces/Message.html","title":"interface - Message","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n Message\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n A message sent on a channel.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n payload\n \n \n \n \n source\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n Unique identifier for a message.\n\n \n \n \n \n \n \n \n \n \n payload\n \n \n \n \n \n \n \n \n payload: T\n\n \n \n\n\n \n \n Type : T\n\n \n \n\n\n\n\n\n \n \n Data associated with this message.\n\n \n \n \n \n \n \n \n \n \n source\n \n \n \n \n \n \n \n \n source: \n\n \n \n\n\n\n\n\n\n\n \n \n Sender of the message.\n\n \n \n \n \n \n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"classes/MessageChannel.html":{"url":"classes/MessageChannel.html","title":"class - MessageChannel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n Classes\n MessageChannel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n Channel for sending and receiving messages.\n\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n Static\n counter\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n getMessages\n \n \n getMessagesFromSource\n \n \n getMessagesFromSources\n \n \n Private\n nextMessageId\n \n \n sendMessage\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(source, channel: Subject>, messages: Observable>)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:50\n \n \n\n \n \n Creates a new channel.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n source\n \n \n \n \n \n No\n \n \n \n The message source.\n\n \n \n \n channel\n \n \n Subject>\n \n \n \n No\n \n \n \n The message send subject.\n\n \n \n \n messages\n \n \n Observable>\n \n \n \n No\n \n \n \n The message receive observable.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n Static\n counter\n \n \n \n \n \n \n Type : number\n\n \n \n \n \n Default value : 0\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:50\n \n \n\n \n \n Counter used to give each message a unique id.\n\n \n \n\n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n getMessages\n \n \n \n \n \n \ngetMessages()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:83\n \n \n\n\n \n \n Gets an observable emitting all messages except for those sent by this source.\n\n\n \n \n \n Returns : Observable>\n\n \n \n The message observable.\n\n \n \n \n \n \n \n \n \n \n \n \n getMessagesFromSource\n \n \n \n \n \n \ngetMessagesFromSource(source)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:93\n \n \n\n\n \n \n Gets an observable emitting messages sent from a specific source.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n source\n\n \n No\n \n\n\n \n The source messages are filtered on.\n\n \n \n \n \n \n \n \n \n Returns : Observable>\n\n \n \n The message observable.\n\n \n \n \n \n \n \n \n \n \n \n \n getMessagesFromSources\n \n \n \n \n \n \ngetMessagesFromSources(sources: [])\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:103\n \n \n\n\n \n \n Gets an observable emitting messages sent from any of the specified sources.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n sources\n \n []\n \n\n \n No\n \n\n\n \n The sources messages are filtered on.\n\n \n \n \n \n \n \n \n \n Returns : Observable>\n\n \n \n The message observable.\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n nextMessageId\n \n \n \n \n \n \n \n nextMessageId()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:112\n \n \n\n\n \n \n Creates a unique message identifier.\n\n\n \n \n \n Returns : number\n\n \n \n The identifier number.\n\n \n \n \n \n \n \n \n \n \n \n \n sendMessage\n \n \n \n \n \n \nsendMessage(payload: T)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:70\n \n \n\n\n \n \n Sends a single message with a payload.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n payload\n \n T\n \n\n \n No\n \n\n\n \n The message payload.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n\n\n\n\n\n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/MessageService.html":{"url":"injectables/MessageService.html","title":"injectable - MessageService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n MessageService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n Service for creating message channels.\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n channel\n \n \n Private\n messages\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n connect\n \n \n ngOnDestroy\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(config: MessageServiceConfig, parent: MessageService | null)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:130\n \n \n\n \n \n Creates an instance of message service.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n config\n \n \n MessageServiceConfig\n \n \n \n No\n \n \n \n The configuration for this service.\n\n \n \n \n parent\n \n \n MessageService | null\n \n \n \n No\n \n \n \n The parent message service, if any.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n connect\n \n \n \n \n \n \nconnect(source)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:163\n \n \n\n\n \n \n Connects to a message channel.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n source\n\n \n No\n \n\n\n \n The source of messages sent.\n\n \n \n \n \n \n \n \n \n Returns : MessageChannel\n\n \n \n A new connected message channel.\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:153\n \n \n\n\n \n \n Clean up.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n channel\n \n \n \n \n \n \n Default value : new Subject>()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:128\n \n \n\n \n \n The message channel.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n messages\n \n \n \n \n \n \n Type : Observable>\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/services/message/message.service.ts:130\n \n \n\n \n \n The message listener.\n\n \n \n\n \n \n\n\n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/MessageServiceConfig.html":{"url":"interfaces/MessageServiceConfig.html","title":"interface - MessageServiceConfig","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n MessageServiceConfig\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n\n\n \n Description\n \n \n Message service configuration options.\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n isolated\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n isolated\n \n \n \n \n \n \n \n \n isolated: boolean\n\n \n \n\n\n \n \n Type : boolean\n\n \n \n\n\n\n\n\n \n \n Whether to listen to parent messages.\n\n \n \n \n \n \n \n\n\n \n import { Inject, Injectable, InjectionToken, OnDestroy, Optional, SkipSelf } from '@angular/core';\nimport { from, Observable, Subject } from 'rxjs';\nimport { filter, mergeAll, takeWhile } from 'rxjs/operators';\n\n\n/**\n * Message service configuration options.\n */\nexport interface MessageServiceConfig {\n /** Whether to listen to parent messages. */\n isolated: boolean;\n}\n\n/**\n * A message sent on a channel.\n *\n * @template T The payload type.\n */\nexport interface Message {\n /** Unique identifier for a message. */\n id: number;\n /** Sender of the message. */\n source: unknown;\n /** Data associated with this message. */\n payload: T;\n}\n\n/** Default message service configuration. */\nexport const MESSAGE_SERVICE_DEFAULT_CONFIG: MessageServiceConfig = {\n isolated: true\n};\n\n/** Token for specifying the message service configuration. */\nexport const MESSAGE_SERVICE_CONFIG = new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n);\n\n\n/**\n * Channel for sending and receiving messages.\n *\n * @template T The payload type.\n */\nexport class MessageChannel {\n /** Counter used to give each message a unique id. */\n private static counter = 0;\n\n /**\n * Creates a new channel.\n *\n * @param source The message source.\n * @param channel The message send subject.\n * @param messages The message receive observable.\n */\n constructor(\n readonly source: unknown,\n private channel: Subject>,\n private messages: Observable>\n ) { }\n\n /**\n * Sends a single message with a payload.\n *\n * @param payload The message payload.\n */\n sendMessage(payload: T): void {\n this.channel.next({\n id: this.nextMessageId(),\n source: this.source,\n payload\n });\n }\n\n /**\n * Gets an observable emitting all messages except for those sent by this source.\n *\n * @returns The message observable.\n */\n getMessages(): Observable> {\n return this.messages.pipe(filter(msg => msg.source !== this.source));\n }\n\n /**\n * Gets an observable emitting messages sent from a specific source.\n *\n * @param source The source messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSource(source: unknown): Observable> {\n return this.getMessages().pipe(filter(msg => msg.source === source));\n }\n\n /**\n * Gets an observable emitting messages sent from any of the specified sources.\n *\n * @param sources The sources messages are filtered on.\n * @returns The message observable.\n */\n getMessagesFromSources(sources: unknown[]): Observable> {\n return this.getMessages().pipe(filter(msg => sources.includes(msg.source)));\n }\n\n /**\n * Creates a unique message identifier.\n *\n * @returns The identifier number.\n */\n private nextMessageId(): number {\n return MessageChannel.counter++;\n }\n}\n\n\n/**\n * Service for creating message channels.\n *\n * @template T The message payload type.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class MessageService implements OnDestroy {\n /** The message channel. */\n private channel = new Subject>();\n /** The message listener. */\n private messages: Observable>;\n\n /**\n * Creates an instance of message service.\n *\n * @param [config] The configuration for this service.\n * @param [parent] The parent message service, if any.\n */\n constructor(@Inject(MESSAGE_SERVICE_CONFIG) readonly config: MessageServiceConfig,\n @Optional() @SkipSelf() readonly parent: MessageService | null) {\n if (config.isolated || !parent) {\n this.messages = this.channel.asObservable();\n } else {\n this.messages = from([\n this.channel,\n parent.messages.pipe(takeWhile(() => !this.channel.closed))\n ]).pipe(mergeAll());\n }\n }\n\n /**\n * Clean up.\n */\n ngOnDestroy(): void {\n this.channel.complete();\n }\n\n /**\n * Connects to a message channel.\n *\n * @param source The source of messages sent.\n * @returns A new connected message channel.\n */\n connect(source: unknown): MessageChannel {\n return new MessageChannel(source, this.channel, this.messages);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologyExplorationModule.html":{"url":"modules/OntologyExplorationModule.html","title":"module - OntologyExplorationModule","body":"\n \n\n\n\n\n Modules\n OntologyExplorationModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologyExplorationModule\n\n\n\ncluster_OntologyExplorationModule_imports\n\n\n\ncluster_OntologyExplorationModule_exports\n\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\n\n\nOntologyExplorationModule\n\nOntologyExplorationModule\n\nOntologyExplorationModule -->\n\nOntologySearchModule->OntologyExplorationModule\n\n\n\n\n\nOntologySelectionModule\n\nOntologySelectionModule\n\nOntologyExplorationModule -->\n\nOntologySelectionModule->OntologyExplorationModule\n\n\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologyExplorationModule -->\n\nOntologyTreeModule->OntologyExplorationModule\n\n\n\n\n\nOntologySearchModule \n\nOntologySearchModule \n\nOntologySearchModule -->\n\nOntologyExplorationModule->OntologySearchModule \n\n\n\n\n\nOntologySelectionModule \n\nOntologySelectionModule \n\nOntologySelectionModule -->\n\nOntologyExplorationModule->OntologySelectionModule \n\n\n\n\n\nOntologyTreeModule \n\nOntologyTreeModule \n\nOntologyTreeModule -->\n\nOntologyExplorationModule->OntologyTreeModule \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-exploration.module.ts\n \n\n\n\n\n\n \n \n \n Imports\n \n \n OntologySearchModule\n \n \n OntologySelectionModule\n \n \n OntologyTreeModule\n \n \n \n \n Exports\n \n \n OntologySearchModule\n \n \n OntologySelectionModule\n \n \n OntologyTreeModule\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { OntologySearchModule } from './ontology-search/ontology-search.module';\nimport { OntologySelectionModule } from './ontology-selection/ontology-selection.module';\nimport { OntologyTreeModule } from './ontology-tree/ontology-tree.module';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OntologySearchModule,\n OntologyTreeModule,\n OntologySelectionModule\n ],\n exports: [OntologySearchModule, OntologyTreeModule, OntologySelectionModule]\n})\nexport class OntologyExplorationModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/OntologySearchComponent.html":{"url":"components/OntologySearchComponent.html","title":"component - OntologySearchComponent","body":"\n \n\n\n\n\n\n Components\n \n OntologySearchComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts\n\n\n\n \n Description\n \n \n Componenet for searching the Ontology nodes.\n\n \n\n\n \n Implements\n \n \n OnInit\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-ontology-search\n \n\n \n styleUrls\n ./ontology-search.component.scss\n \n\n\n\n \n templateUrl\n ./ontology-search.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n autoCompleteOpen\n \n \n filteredResults$\n \n \n formControl\n \n \n Public\n ontologyService\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n displayFormatter\n \n \n ngOnInit\n \n \n onSelect\n \n \n sortBySynonymResult\n \n \n sortLexically\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n placeholderText\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n selected\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ontologyService: OntologySearchService, ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:45\n \n \n\n \n \n Creates an instance of ontology search component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ontologyService\n \n \n OntologySearchService\n \n \n \n No\n \n \n \n instance of searchService which provides all the search functionality\n\n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n placeholderText\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:23\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n selected\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:29\n \n \n \n \n Output event-emitter which emits the id of the OntologyTreeNode whose label was\nselected by the user in the search-results\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n displayFormatter\n \n \n \n \n \n \ndisplayFormatter(option?: SearchResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:78\n \n \n\n\n \n \n A formatter function to enable different display and selected value\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n option\n \n SearchResult\n \n\n \n Yes\n \n\n\n \n a search result entry\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n a part of the search result entry to be displayed as a display value\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnInit\n \n \n \n \n \n \nngOnInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:60\n \n \n\n\n \n \n on-init lifecycle hook for this component -\ngets the searched value from the view, sends it to the filter function in the OntologyService,\nand gets the search results from the service\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n onSelect\n \n \n \n \n \n \nonSelect(event: MatAutocompleteSelectedEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:107\n \n \n\n\n \n \n Callback function triggered when the user selects a value from search results\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n MatAutocompleteSelectedEvent\n \n\n \n No\n \n\n\n \n instance of MatAutocompleteSelectedEvent\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n sortBySynonymResult\n \n \n \n \n \n \nsortBySynonymResult(this: void, entry: SearchResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:88\n \n \n\n\n \n \n Sorts by results which have synonyms\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n this\n \n void\n \n\n \n No\n \n\n\n \n \n \n \n entry\n \n SearchResult\n \n\n \n No\n \n\n\n \n search result entry\n\n \n \n \n \n \n \n \n \n Returns : number\n\n \n \n 1 or -1\n\n \n \n \n \n \n \n \n \n \n \n \n sortLexically\n \n \n \n \n \n \nsortLexically(this: void, entry: SearchResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:98\n \n \n\n\n \n \n Sorts lexically\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n this\n \n void\n \n\n \n No\n \n\n\n \n \n \n \n entry\n \n SearchResult\n \n\n \n No\n \n\n\n \n search result entry\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n lower case value of node label\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n autoCompleteOpen\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:40\n \n \n\n \n \n Determines if autocomplete is open or close.\n\n \n \n\n \n \n \n \n \n \n \n \n filteredResults$\n \n \n \n \n \n \n Type : Observable\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:45\n \n \n\n \n \n Observable which provides the filtered search results\n\n \n \n\n \n \n \n \n \n \n \n \n formControl\n \n \n \n \n \n \n Default value : new FormControl('')\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:34\n \n \n\n \n \n Instance of FormControl - tracks the value and validation status of an individual form control\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n ontologyService\n \n \n \n \n \n \n Type : OntologySearchService\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts:53\n \n \n\n \n \n instance of searchService which provides all the search functionality\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, OnInit, Input, Output } from '@angular/core';\nimport { FormControl } from '@angular/forms';\nimport { MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\nimport { OntologyTreeNode } from 'ccf-database';\nimport { get, sortBy } from 'lodash';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\nimport { Observable } from 'rxjs';\nimport { filter, map, startWith, switchMap } from 'rxjs/operators';\n\nimport { OntologySearchService, SearchResult } from '../../../core/services/ontology-search/ontology-search.service';\n\n\n/**\n * Componenet for searching the Ontology nodes.\n */\n@Component({\n selector: 'ccf-ontology-search',\n templateUrl: './ontology-search.component.html',\n styleUrls: ['./ontology-search.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OntologySearchComponent implements OnInit {\n @Input() placeholderText: string;\n\n /**\n * Output event-emitter which emits the id of the OntologyTreeNode whose label was\n * selected by the user in the search-results\n */\n @Output() readonly selected = new EventEmitter();\n\n /**\n * Instance of FormControl - tracks the value and validation status of an individual form control\n */\n formControl = new FormControl('');\n\n\n /**\n * Determines if autocomplete is open or close.\n */\n autoCompleteOpen = false;\n\n /**\n * Observable which provides the filtered search results\n */\n filteredResults$: Observable;\n\n /**\n * Creates an instance of ontology search component.\n *\n * @param ontologyService instance of searchService which provides all the search functionality\n * @param ga Analytics service\n */\n constructor(public ontologyService: OntologySearchService, private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * on-init lifecycle hook for this component -\n * gets the searched value from the view, sends it to the filter function in the OntologyService,\n * and gets the search results from the service\n */\n ngOnInit(): void {\n const valueChanges = this.formControl.valueChanges as Observable;\n this.filteredResults$ = valueChanges.pipe(\n filter(value => typeof value === 'string'),\n startWith(''),\n switchMap(value => this.ontologyService.filter(value)),\n map(searchResults => sortBy(searchResults, [\n this.sortBySynonymResult, 'index', this.sortLexically\n ]))\n );\n }\n\n /**\n * A formatter function to enable different display and selected value\n *\n * @param option a search result entry\n * @returns a part of the search result entry to be displayed as a display value\n */\n displayFormatter(option?: SearchResult): string {\n return (option?.displayLabel ?? []).join('');\n }\n\n /**\n * Sorts by results which have synonyms\n *\n * @param entry search result entry\n * @returns 1 or -1\n */\n sortBySynonymResult(this: void, entry: SearchResult): number {\n return entry.displayLabel.join().includes('(') ? 1 : -1;\n }\n\n /**\n * Sorts lexically\n *\n * @param entry search result entry\n * @returns lower case value of node label\n */\n sortLexically(this: void, entry: SearchResult): string {\n return entry.node.label.toLowerCase();\n }\n\n /**\n * Callback function triggered when the user selects a value from search results\n *\n * @param event instance of MatAutocompleteSelectedEvent\n */\n onSelect(event: MatAutocompleteSelectedEvent): void {\n const node = get(event, ['option', 'value', 'node']) as OntologyTreeNode;\n if (node) {\n this.ga.event('search', 'ontology_search', node.id);\n this.selected.emit(node);\n this.formControl.reset();\n }\n }\n}\n\n \n\n \n \n \n search\n \n\n \n \n \n {{option.displayLabel[0]}}\n {{option.displayLabel[1]}}\n {{option.displayLabel[2]}}\n \n \n \n \n\n\n \n\n \n \n ./ontology-search.component.scss\n \n .ccf-ontology-search {\n width: 100%;\n\n .field {\n width: 100%;\n \n }\n\n ::ng-deep .mat-form-field-appearance-outline {\n .mat-form-field-outline-end {\n border-radius: 0 0.25rem 0.25rem 0;\n margin: 0;\n }\n\n .mat-form-field-wrapper {\n margin: 0;\n \n\n .mat-form-field-flex {\n .mat-form-field-infix {\n border: none;\n height: 3rem;\n \n\n input {\n margin-left: .4rem;\n }\n }\n .mat-form-field-prefix {\n top: .5rem;\n border: none;\n }\n }\n }\n\n .mat-form-field-outline-start {\n border-radius: 0.25rem 0 0 0.25rem;\n min-width: 2.5rem;\n\t }\n }\n}\n\n::ng-deep .ccf-ontology-search.detached {\n border: 0.125rem solid;\n border-top: none;\n border-radius: 0 0 0.25rem 0.25rem;\n max-height: 18rem;\n\n .results-container {\n width: 23.75rem;\n margin-bottom: 1rem;\n overflow: auto;\n max-height: 15rem;\n scrollbar-width: thin;\n\n mat-option {\n height: 1.5rem;\n width: 23.75rem;\n \n .search-term {\n text-decoration: underline;\n }\n }\n }\n\n}\n\n.autocomplete-open {\n ::ng-deep .mat-form-field-appearance-outline {\n .mat-form-field-outline-start {\n border-radius: 0.25rem 0 0 0;\n border-bottom: none;\n }\n\n .mat-form-field-outline-end {\n border-radius: 0 0.25rem 0 0;\n border-bottom: none;\n }\n }\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' search {{option.displayLabel[0]}} {{option.displayLabel[1]}} {{option.displayLabel[2]}} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'OntologySearchComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologySearchModule.html":{"url":"modules/OntologySearchModule.html","title":"module - OntologySearchModule","body":"\n \n\n\n\n\n Modules\n OntologySearchModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologySearchModule\n\n\n\ncluster_OntologySearchModule_declarations\n\n\n\ncluster_OntologySearchModule_exports\n\n\n\n\nOntologySearchComponent\n\nOntologySearchComponent\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\nOntologySearchModule -->\n\nOntologySearchComponent->OntologySearchModule\n\n\n\n\n\nOntologySearchComponent \n\nOntologySearchComponent \n\nOntologySearchComponent -->\n\nOntologySearchModule->OntologySearchComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n OntologySearchComponent\n \n \n \n \n Exports\n \n \n OntologySearchComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\n\nimport { OntologySearchComponent } from './ontology-search.component';\nimport { MatFormFieldModule } from '@angular/material/form-field';\n\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n MatIconModule\n ],\n declarations: [OntologySearchComponent],\n exports: [OntologySearchComponent]\n})\nexport class OntologySearchModule {}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/OntologySearchService.html":{"url":"injectables/OntologySearchService.html","title":"injectable - OntologySearchService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n OntologySearchService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n\n\n \n Description\n \n \n Injectable OntologySearchService responsible for search result computations\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n Readonly\n nodes$\n \n \n Public\n Readonly\n rootNode$\n \n \n Private\n treeModel\n \n \n Private\n Readonly\n treeModel$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n filter\n \n \n formatLabel\n \n \n getChildren\n \n \n getIndexOfMatch\n \n \n Private\n lookup\n \n \n setTreeModel\n \n \n \n \n\n\n\n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n filter\n \n \n \n \n \n \nfilter(value: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:50\n \n \n\n\n \n \n Searches the ontology with the search-term\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n value\n \n string\n \n\n \n No\n \n\n\n \n the search term\n\n \n \n \n \n \n \n \n \n Returns : Observable\n\n \n \n an array of search-results\n\n \n \n \n \n \n \n \n \n \n \n \n formatLabel\n \n \n \n \n \n \nformatLabel(label: string, searchValue: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:111\n \n \n\n\n \n \n Formats label based on where the search-term was found in the OntologyTreeNode\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n label\n \n string\n \n\n \n No\n \n\n\n \n label or first synonym-label of OntologyTreeNode which has the search-term\n\n \n \n \n searchValue\n \n string\n \n\n \n No\n \n\n\n \n search-term\n\n \n \n \n \n \n \n \n \n Returns : string[]\n\n \n \n an array in the form of [prefix, search-term, suffix]\n\n \n \n \n \n \n \n \n \n \n \n \n getChildren\n \n \n \n \n \n \ngetChildren(node: OntologyTreeNode)\n \n \n\n \n \n Decorators : \n \n @bind()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:128\n \n \n\n\n \n \n Fetches the children of an ontology node.\nNote: This can be called without a reference to this.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n node\n \n OntologyTreeNode\n \n\n \n No\n \n\n\n \n The node for which to get children.\n\n \n \n \n \n \n \n \n \n Returns : OntologyTreeNode[]\n\n \n \n An array of children, empty if the node has no children.\n\n \n \n \n \n \n \n \n \n \n \n \n getIndexOfMatch\n \n \n \n \n \n \ngetIndexOfMatch(label: string, searchValue: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:100\n \n \n\n\n \n \n Gets index of match in the ontology label\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n label\n \n string\n \n\n \n No\n \n\n\n \n the provided ontology node label or synonym label\n\n \n \n \n searchValue\n \n string\n \n\n \n No\n \n\n\n \n the searched text in lower case\n\n \n \n \n \n \n \n \n \n Returns : number\n\n \n \n the index of the match in the label\n\n \n \n \n \n \n \n \n \n \n \n \n Private\n lookup\n \n \n \n \n \n \n \n lookup(nodes: Immutable[], searchValue: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:63\n \n \n\n\n \n \n looks up ontology nodes and composes search results\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n nodes\n \n Immutable[]\n \n\n \n No\n \n\n\n \n Ontology nodes\n\n \n \n \n searchValue\n \n string\n \n\n \n No\n \n\n\n \n search text in lower case\n\n \n \n \n \n \n \n \n \n Returns : SearchResult[]\n\n \n \n search results\n\n \n \n \n \n \n \n \n \n \n \n \n setTreeModel\n \n \n \n \n \n \nsetTreeModel(treeModel: OntologyTreeModel)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:39\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n treeModel\n \n OntologyTreeModel\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n Readonly\n nodes$\n \n \n \n \n \n \n Default value : this.treeModel$.pipe(map(state => Object.values(state.nodes)))\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:34\n \n \n\n \n \n All nodes in the ontology tree.\n\n \n \n\n \n \n \n \n \n \n \n \n Public\n Readonly\n rootNode$\n \n \n \n \n \n \n Default value : this.treeModel$.pipe(map(state => state.nodes[state.root]))\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:37\n \n \n\n \n \n Root node of the ontology tree.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n treeModel\n \n \n \n \n \n \n Type : OntologyTreeModel\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:31\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n Readonly\n treeModel$\n \n \n \n \n \n \n Default value : new ReplaySubject(1)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts:30\n \n \n\n\n \n \n\n\n \n\n\n \n import { Immutable } from '@angular-ru/common/typings';\nimport { Injectable } from '@angular/core';\nimport { bind } from 'bind-decorator';\nimport { OntologyTreeModel, OntologyTreeNode } from 'ccf-database';\nimport { at } from 'lodash';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n\n/**\n * Search result interface type for the search results\n */\nexport interface SearchResult {\n /** ensures order of search-results */\n index: number;\n\n /** label to be displayed in the view */\n displayLabel: string[];\n\n /** instance of OntologyTreeNode, provides data associated with a search result */\n node: OntologyTreeNode;\n}\n\n/**\n * Injectable OntologySearchService responsible for search result computations\n */\n@Injectable()\nexport class OntologySearchService {\n private readonly treeModel$ = new ReplaySubject(1);\n private treeModel: OntologyTreeModel;\n\n /** All nodes in the ontology tree. */\n public readonly nodes$ = this.treeModel$.pipe(map(state => Object.values(state.nodes)));\n\n /** Root node of the ontology tree. */\n public readonly rootNode$ = this.treeModel$.pipe(map(state => state.nodes[state.root]));\n\n setTreeModel(treeModel: OntologyTreeModel): void {\n this.treeModel$.next(treeModel);\n this.treeModel = treeModel;\n }\n\n /**\n * Searches the ontology with the search-term\n *\n * @param value the search term\n * @returns an array of search-results\n */\n filter(value: string): Observable {\n return this.nodes$.pipe(\n map(nodes => this.lookup(nodes, value.toLowerCase()))\n );\n }\n\n /**\n * looks up ontology nodes and composes search results\n *\n * @param nodes Ontology nodes\n * @param searchValue search text in lower case\n * @returns search results\n */\n private lookup(nodes: Immutable[], searchValue: string): SearchResult[] {\n const searchResults = new Map();\n\n if (nodes) {\n nodes.forEach((node: OntologyTreeNode) => {\n const condition = node.label.toLowerCase().includes(searchValue);\n\n if (condition && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label, searchValue),\n displayLabel: this.formatLabel(node.label, searchValue),\n node\n });\n } else {\n const match = node.synonymLabels.find((label) => label.toLowerCase().includes(searchValue));\n\n if (match && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label + ' (' + match + ')', searchValue),\n displayLabel: this.formatLabel(node.label + ' (' + match + ')', searchValue),\n node\n });\n }\n }\n });\n }\n\n return Array.from(searchResults.values());\n }\n\n /**\n * Gets index of match in the ontology label\n *\n * @param label the provided ontology node label or synonym label\n * @param searchValue the searched text in lower case\n * @returns the index of the match in the label\n */\n getIndexOfMatch(label: string, searchValue: string): number {\n return label.toLowerCase().indexOf(searchValue);\n }\n\n /**\n * Formats label based on where the search-term was found in the OntologyTreeNode\n *\n * @param label label or first synonym-label of OntologyTreeNode which has the search-term\n * @param searchValue search-term\n * @returns an array in the form of [prefix, search-term, suffix]\n */\n formatLabel(label: string, searchValue: string): string[] {\n const index = this.getIndexOfMatch(label, searchValue);\n return [\n label.slice(0, index),\n label.slice(index, index + searchValue.length),\n label.slice(index + searchValue.length)\n ];\n }\n\n /**\n * Fetches the children of an ontology node.\n * Note: This can be called without a reference to `this`.\n *\n * @param node The node for which to get children.\n * @returns An array of children, empty if the node has no children.\n */\n @bind\n getChildren(node: OntologyTreeNode): OntologyTreeNode[] {\n const nodes = this.treeModel?.nodes ?? {};\n return at(nodes, node.children);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/OntologySelection.html":{"url":"interfaces/OntologySelection.html","title":"interface - OntologySelection","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n OntologySelection\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/models/ontology-selection.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n id\n \n \n \n \n label\n \n \n \n \n location\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n id\n \n \n \n \n \n \n \n \n id: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n label\n \n \n \n \n \n \n \n \n label: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n location\n \n \n \n \n \n \n \n \n location: OntologyTreeNode | undefined\n\n \n \n\n\n \n \n Type : OntologyTreeNode | undefined\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { OntologyTreeNode } from 'ccf-database';\n\nexport interface OntologySelection {\n location: OntologyTreeNode | undefined;\n id: string;\n label: string;\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/OntologySelectionComponent.html":{"url":"components/OntologySelectionComponent.html","title":"component - OntologySelectionComponent","body":"\n \n\n\n\n\n\n Components\n \n OntologySelectionComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts\n\n\n\n \n Description\n \n \n Ontology selection component that encapsulates ontology search and tree components.\n\n \n\n\n \n Implements\n \n \n OnChanges\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n \n providers\n \n OntologySearchService\n \n \n\n\n \n selector\n ccf-ontology-selection\n \n\n \n styleUrls\n ./ontology-selection.component.scss\n \n\n\n\n \n templateUrl\n ./ontology-selection.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Public\n ontologySearchService\n \n \n tree\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n ngOnChanges\n \n \n selected\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n header\n \n \n occurenceData\n \n \n ontologyFilter\n \n \n placeholderText\n \n \n termData\n \n \n treeModel\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n ontologySelection\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ontologySearchService: OntologySearchService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:53\n \n \n\n \n \n Creates an instance of ontology selection component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ontologySearchService\n \n \n OntologySearchService\n \n \n \n No\n \n \n \n Service for searching the ontology.\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n header\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:47\n \n \n \n \n \n \n \n \n \n occurenceData\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:28\n \n \n \n \n A record of terms within the current filter. To be passed on to ontology-tree\n\n \n \n \n \n \n \n \n \n \n ontologyFilter\n \n \n \n \n Type : string[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:45\n \n \n \n \n Input list of selected ontology terms passed down to ontology-tree.\nUsed to change display of ontology tree when selection is made from\noutside the component.\n\n \n \n \n \n \n \n \n \n \n placeholderText\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:48\n \n \n \n \n \n \n \n \n \n termData\n \n \n \n \n Type : Record\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:33\n \n \n \n \n A record of terms the app currently has data for. To be passed on to ontology-tree\n\n \n \n \n \n \n \n \n \n \n treeModel\n \n \n \n \n Type : OntologyTreeModel\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:38\n \n \n \n \n The ontology tree model to display\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n ontologySelection\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:53\n \n \n \n \n Captures and passes along the change in ontologySelections.\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngOnChanges\n \n \n \n \n \n \nngOnChanges(changes: SimpleChanges)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:64\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n changes\n \n SimpleChanges\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n selected\n \n \n \n \n \n \nselected(ontologyNode: OntologyTreeNode)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:75\n \n \n\n\n \n \n Ontology selection event when node is selected from the search results.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ontologyNode\n \n OntologyTreeNode\n \n\n \n No\n \n\n\n \n selected ontology node.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Public\n ontologySearchService\n \n \n \n \n \n \n Type : OntologySearchService\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:61\n \n \n\n \n \n Service for searching the ontology.\n \n \n\n \n \n \n \n \n \n \n \n tree\n \n \n \n \n \n \n Type : OntologyTreeComponent\n\n \n \n \n \n Decorators : \n \n \n @ViewChild(OntologyTreeComponent, {static: false})\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts:23\n \n \n\n \n \n View child of search component\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges, ViewChild } from '@angular/core';\nimport { OntologyTreeModel, OntologyTreeNode } from 'ccf-database';\n\nimport { OntologySelection } from '../../../core/models/ontology-selection';\nimport { OntologySearchService } from '../../../core/services/ontology-search/ontology-search.service';\nimport { OntologyTreeComponent } from '../ontology-tree/ontology-tree.component';\n\n\n/**\n * Ontology selection component that encapsulates ontology search and tree components.\n */\n@Component({\n selector: 'ccf-ontology-selection',\n templateUrl: './ontology-selection.component.html',\n styleUrls: ['./ontology-selection.component.scss'],\n providers: [OntologySearchService],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OntologySelectionComponent implements OnChanges {\n /**\n * View child of search component\n */\n @ViewChild(OntologyTreeComponent, { static: false }) tree: OntologyTreeComponent;\n\n /**\n * A record of terms within the current filter. To be passed on to ontology-tree\n */\n @Input() occurenceData: Record;\n\n /**\n * A record of terms the app currently has data for. To be passed on to ontology-tree\n */\n @Input() termData: Record;\n\n /**\n * The ontology tree model to display\n */\n @Input() treeModel: OntologyTreeModel;\n\n /**\n * Input list of selected ontology terms passed down to ontology-tree.\n * Used to change display of ontology tree when selection is made from\n * outside the component.\n */\n @Input() ontologyFilter: string[];\n\n @Input() header: boolean;\n @Input() placeholderText: string;\n\n /**\n * Captures and passes along the change in ontologySelections.\n */\n @Output() readonly ontologySelection = new EventEmitter();\n\n /**\n * Creates an instance of ontology selection component.\n *\n * @param ontologySearchService Service for searching the ontology.\n */\n constructor(\n public ontologySearchService: OntologySearchService,\n ) { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if ('treeModel' in changes && this.treeModel) {\n this.ontologySearchService.setTreeModel(this.treeModel);\n }\n }\n\n /**\n * Ontology selection event when node is selected from the search results.\n *\n * @param ontologyNode selected ontology node.\n */\n selected(ontologyNode: OntologyTreeNode): void {\n const nodes = this.treeModel?.nodes ?? {};\n this.tree.expandAndSelect(ontologyNode, node => nodes[node.parent]);\n }\n}\n\n \n\n \n \n\n\n \n\n \n \n ./ontology-selection.component.scss\n \n \n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ''\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'OntologySelectionComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologySelectionModule.html":{"url":"modules/OntologySelectionModule.html","title":"module - OntologySelectionModule","body":"\n \n\n\n\n\n Modules\n OntologySelectionModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologySelectionModule\n\n\n\ncluster_OntologySelectionModule_OntologySelectionComponent_providers\n\n\n\ncluster_OntologySelectionModule_imports\n\n\n\ncluster_OntologySelectionModule_exports\n\n\n\n\nOntologySelectionComponent\n\nOntologySelectionComponent\n\n\n\nOntologySelectionModule\n\nOntologySelectionModule\n\nOntologySelectionModule -->\n\nOntologySelectionComponent->OntologySelectionModule\n\n\n\n\n\nOntologySelectionComponent \n\nOntologySelectionComponent \n\nOntologySelectionComponent -->\n\nOntologySelectionModule->OntologySelectionComponent \n\n\n\n\n\nOntologySearchService\n\nOntologySearchService\n\nOntologySelectionComponent -->\n\nOntologySearchService->OntologySelectionComponent\n\n\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\nOntologySelectionModule -->\n\nOntologySearchModule->OntologySelectionModule\n\n\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologySelectionModule -->\n\nOntologyTreeModule->OntologySelectionModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n OntologySelectionComponent\n \n \n \n \n Imports\n \n \n OntologySearchModule\n \n \n OntologyTreeModule\n \n \n \n \n Exports\n \n \n OntologySelectionComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { OntologySearchModule } from '../ontology-search/ontology-search.module';\nimport { OntologyTreeModule } from '../ontology-tree/ontology-tree.module';\nimport { OntologySelectionComponent } from './ontology-selection.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OntologySearchModule,\n OntologyTreeModule\n ],\n declarations: [OntologySelectionComponent],\n exports: [OntologySelectionComponent],\n})\nexport class OntologySelectionModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/OntologyTreeModule.html":{"url":"modules/OntologyTreeModule.html","title":"module - OntologyTreeModule","body":"\n \n\n\n\n\n Modules\n OntologyTreeModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_OntologyTreeModule\n\n\n\ncluster_OntologyTreeModule_declarations\n\n\n\ncluster_OntologyTreeModule_exports\n\n\n\n\nOntologyTreeComponent\n\nOntologyTreeComponent\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologyTreeModule -->\n\nOntologyTreeComponent->OntologyTreeModule\n\n\n\n\n\nOntologyTreeComponent \n\nOntologyTreeComponent \n\nOntologyTreeComponent -->\n\nOntologyTreeModule->OntologyTreeComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n OntologyTreeComponent\n \n \n \n \n Exports\n \n \n OntologyTreeComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatTreeModule } from '@angular/material/tree';\n\nimport { OntologyTreeComponent } from './ontology-tree.component';\nimport { OpacitySliderModule } from 'ccf-shared';\n\n@NgModule({\n imports: [\n CommonModule,\n MatButtonModule,\n MatIconModule,\n MatTooltipModule,\n MatTreeModule,\n OpacitySliderModule\n ],\n declarations: [OntologyTreeComponent],\n exports: [OntologyTreeComponent],\n})\nexport class OntologyTreeModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ResultsBrowserComponent.html":{"url":"components/ResultsBrowserComponent.html","title":"component - ResultsBrowserComponent","body":"\n \n\n\n\n\n\n Components\n \n ResultsBrowserComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts\n\n\n\n \n Description\n \n \n ResultsBrowser is the container component in charge of rendering the label and stats of\nthe results as well as handling the virtual scrolling and click emitters of\nResultsBrowserItems.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-results-browser\n \n\n \n styleUrls\n ./results-browser.component.scss\n \n\n\n\n \n templateUrl\n ./results-browser.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n atScrollBottom\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n handleHover\n \n \n handleLinkClick\n \n \n handleSelection\n \n \n handleUnhover\n \n \n onScroll\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n aggregateData\n \n \n header\n \n \n highlighted\n \n \n listResults\n \n \n resultLabel\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n itemHovered\n \n \n itemUnhovered\n \n \n linkClicked\n \n \n listResultDeselected\n \n \n listResultSelected\n \n \n \n \n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(ga: GoogleAnalyticsService)\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:64\n \n \n\n \n \n Creates an instance of results browser component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n ga\n \n \n GoogleAnalyticsService\n \n \n \n No\n \n \n \n Analytics service\n\n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n aggregateData\n \n \n \n \n Type : Immutable\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:29\n \n \n \n \n Input used to add a list of stats at the top the results browser\n\n \n \n \n \n \n \n \n \n \n header\n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:38\n \n \n \n \n \n \n \n \n \n highlighted\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:36\n \n \n \n \n \n \n \n \n \n listResults\n \n \n \n \n Type : Immutable\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:24\n \n \n \n \n Input array of List Results to display\n\n \n \n \n \n \n \n \n \n \n resultLabel\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:34\n \n \n \n \n Input allowing the title of the result browser to be set outside of the component\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n itemHovered\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:56\n \n \n \n \n \n \n \n \n \n itemUnhovered\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:58\n \n \n \n \n \n \n \n \n \n linkClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:44\n \n \n \n \n Output emitting the result that was clicked on and its relevant information.\nUsed for opening and rendering the result viewer.\n\n \n \n \n \n \n \n \n \n \n listResultDeselected\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:54\n \n \n \n \n Output emitting the link result deselected\n\n \n \n \n \n \n \n \n \n \n listResultSelected\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:49\n \n \n \n \n Output emitting the link result selected\n\n \n \n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n handleHover\n \n \n \n \n \n \nhandleHover(id: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:111\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n id\n \n string\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n handleLinkClick\n \n \n \n \n \n \nhandleLinkClick(link: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:93\n \n \n\n\n \n \n Notifies on link click\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n link\n \n string\n \n\n \n No\n \n\n\n \n the link clicked\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n handleSelection\n \n \n \n \n \n \nhandleSelection(result: Immutable, selected: boolean)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:79\n \n \n\n\n \n \n Notifies listeners when a selection/deselection is made\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n result\n \n Immutable\n \n\n \n No\n \n\n\n \n the list result\n\n \n \n \n selected\n \n boolean\n \n\n \n No\n \n\n\n \n whether to select or deselect the result\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n handleUnhover\n \n \n \n \n \n \nhandleUnhover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:115\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n onScroll\n \n \n \n \n \n \nonScroll(event: UIEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:102\n \n \n\n\n \n \n Handles the scroll event to detect when scroll is at the bottom.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n event\n \n UIEvent\n \n\n \n No\n \n\n\n \n The scroll event.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n atScrollBottom\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts:64\n \n \n\n \n \n Keeps track of whether or not the virtual scroll viewport is scrolled all the way to the bottom.\nUsed to determine whether or not to render the gradient at the bottom.\n\n \n \n\n \n \n\n\n\n\n\n \n import { Immutable } from '@angular-ru/common/typings/immutability';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { AggregateResult } from 'ccf-database';\nimport { GoogleAnalyticsService } from 'ngx-google-analytics';\n\nimport { ListResult } from '../../../core/models/list-result';\n\n\n/**\n * ResultsBrowser is the container component in charge of rendering the label and stats of\n * the results as well as handling the virtual scrolling and click emitters of\n * ResultsBrowserItems.\n */\n@Component({\n selector: 'ccf-results-browser',\n templateUrl: './results-browser.component.html',\n styleUrls: ['./results-browser.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ResultsBrowserComponent {\n /**\n * Input array of List Results to display\n */\n @Input() listResults: Immutable;\n\n /**\n * Input used to add a list of stats at the top the results browser\n */\n @Input() aggregateData: Immutable;\n\n /**\n * Input allowing the title of the result browser to be set outside of the component\n */\n @Input() resultLabel: string;\n\n @Input() highlighted: string;\n\n @Input() header: boolean;\n\n /**\n * Output emitting the result that was clicked on and its relevant information.\n * Used for opening and rendering the result viewer.\n */\n @Output() readonly linkClicked = new EventEmitter();\n\n /**\n * Output emitting the link result selected\n */\n @Output() readonly listResultSelected = new EventEmitter>();\n\n /**\n * Output emitting the link result deselected\n */\n @Output() readonly listResultDeselected = new EventEmitter>();\n\n @Output() readonly itemHovered = new EventEmitter();\n\n @Output() readonly itemUnhovered = new EventEmitter();\n\n /**\n * Keeps track of whether or not the virtual scroll viewport is scrolled all the way to the bottom.\n * Used to determine whether or not to render the gradient at the bottom.\n */\n atScrollBottom = false;\n\n /**\n * Creates an instance of results browser component.\n *\n * @param ga Analytics service\n */\n constructor(private readonly ga: GoogleAnalyticsService) { }\n\n /**\n * Notifies listeners when a selection/deselection is made\n *\n * @param result the list result\n * @param selected whether to select or deselect the result\n */\n handleSelection(result: Immutable, selected: boolean): void {\n this.ga.event('list_result_selected', 'results_browser', this.resultLabel, +selected);\n if (selected) {\n this.listResultSelected.next(result);\n } else {\n this.listResultDeselected.next(result);\n }\n }\n\n /**\n * Notifies on link click\n *\n * @param link the link clicked\n */\n handleLinkClick(link: string): void {\n this.linkClicked.emit(link);\n }\n\n /**\n * Handles the scroll event to detect when scroll is at the bottom.\n *\n * @param event The scroll event.\n */\n onScroll(event: UIEvent): void {\n if (!event.target) {\n return;\n }\n const { clientHeight, scrollHeight, scrollTop } = event.target as Element;\n const diff = scrollHeight - scrollTop - clientHeight;\n this.atScrollBottom = diff \n \n\n \n \n \n {{ resultLabel }}\n \n {{stat.count}}\n {{stat.label}}\n \n \n\n \n \n \n \n \n \n\n\n \n\n \n \n ./results-browser.component.scss\n \n .results-browser-container {\n display: flex;\n flex-direction: column;\n height: calc(100% - 3rem);\n padding: 0 1.5rem 1.5rem 1.5rem;\n\n .stat-box {\n margin-bottom: 1.5rem;\n line-height: 1.25;\n min-height: 7.75rem;\n\n #title {\n font-size: 1.25rem;\n margin-bottom: 0.75rem;\n }\n\n .stat-row {\n display: flex;\n flex-direction: row;\n\n .stat-value {\n margin-right: 1rem;\n width: 5.5rem;\n text-align: right;\n font-weight: 600;\n }\n .stat-label {\n font-weight: 300;\n }\n }\n }\n\n .results-browser-list {\n display: flex;\n flex-direction: column;\n overflow-y: auto;\n scrollbar-width: thin;\n padding-right: .5rem;\n height: calc(100vh - 20rem);\n\n &.header-hidden {\n height: calc(100vh - 16rem);\n }\n\n .browser-item-container {\n width: 100%;\n }\n }\n\n .scroll-gradient {\n position: absolute;\n height: 3rem;\n width: 95%;\n bottom: 0;\n pointer-events: none;\n\n\n &.hidden {\n display: none;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ resultLabel }} {{stat.count}} {{stat.label}} '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ResultsBrowserComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ResultsBrowserModule.html":{"url":"modules/ResultsBrowserModule.html","title":"module - ResultsBrowserModule","body":"\n \n\n\n\n\n Modules\n ResultsBrowserModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ResultsBrowserModule\n\n\n\ncluster_ResultsBrowserModule_exports\n\n\n\ncluster_ResultsBrowserModule_imports\n\n\n\ncluster_ResultsBrowserModule_declarations\n\n\n\n\nResultsBrowserComponent\n\nResultsBrowserComponent\n\n\n\nResultsBrowserModule\n\nResultsBrowserModule\n\nResultsBrowserModule -->\n\nResultsBrowserComponent->ResultsBrowserModule\n\n\n\n\n\nResultsBrowserComponent \n\nResultsBrowserComponent \n\nResultsBrowserComponent -->\n\nResultsBrowserModule->ResultsBrowserComponent \n\n\n\n\n\nDonorCardModule\n\nDonorCardModule\n\nResultsBrowserModule -->\n\nDonorCardModule->ResultsBrowserModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ResultsBrowserComponent\n \n \n \n \n Imports\n \n \n DonorCardModule\n \n \n \n \n Exports\n \n \n ResultsBrowserComponent\n \n \n \n \n \n\n\n \n\n\n \n import { ScrollingModule } from '@angular/cdk/scrolling';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ResultsBrowserComponent } from './results-browser.component';\nimport { DonorCardModule } from '../donor-card/donor-card.module';\n\n\n@NgModule({\n declarations: [ResultsBrowserComponent],\n imports: [\n CommonModule,\n ScrollingModule,\n DonorCardModule\n ],\n exports: [ResultsBrowserComponent]\n})\nexport class ResultsBrowserModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/SceneState.html":{"url":"injectables/SceneState.html","title":"injectable - SceneState","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n SceneState\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n\n\n \n Description\n \n \n 3d Scene state\n\n \n\n \n Extends\n \n \n NgxsImmutableDataRepository\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n colorAssignments\n \n \n Private\n dataState\n \n \n Readonly\n highlightedId$\n \n \n Private\n listResults\n \n \n Readonly\n referenceOrgans$\n \n \n Readonly\n scene$\n \n \n Readonly\n selectedReferenceOrgans$\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n ngxsOnInit\n \n \n sceneNodeClicked\n \n \n sceneNodeHovered\n \n \n sceneNodeUnhover\n \n \n setReferenceOrgans\n \n \n setScene\n \n \n setSelectedReferenceOrgans\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(dataService: DataSourceService, injector: Injector)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:65\n \n \n\n \n \n Creates an instance of scene state.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n dataService\n \n \n DataSourceService\n \n \n \n No\n \n \n \n \n \n \n injector\n \n \n Injector\n \n \n \n No\n \n \n \n Injector service used to lazy load data state\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngxsOnInit\n \n \n \n \n \n \nngxsOnInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:136\n \n \n\n\n \n \n Initializes this state service.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n sceneNodeClicked\n \n \n \n \n \n \nsceneNodeClicked(undefined: NodeClickEvent)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:114\n \n \n\n\n \n \n Handle scene node clicks\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n \n NodeClickEvent\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n sceneNodeHovered\n \n \n \n \n \n \nsceneNodeHovered(node: SpatialSceneNode)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:125\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n node\n \n SpatialSceneNode\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n sceneNodeUnhover\n \n \n \n \n \n \nsceneNodeUnhover()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:129\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n setReferenceOrgans\n \n \n \n \n \n \nsetReferenceOrgans(referenceOrgans: OrganInfo[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:95\n \n \n\n\n \n \n Sets the reference organs\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n referenceOrgans\n \n OrganInfo[]\n \n\n \n No\n \n\n\n \n The reference organs available\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n setScene\n \n \n \n \n \n \nsetScene(scene: SpatialSceneNode[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:105\n \n \n\n\n \n \n Sets the scene\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n scene\n \n SpatialSceneNode[]\n \n\n \n No\n \n\n\n \n The active scene to display\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n setSelectedReferenceOrgans\n \n \n \n \n \n \nsetSelectedReferenceOrgans(selectedReferenceOrgans: OrganInfo[])\n \n \n\n \n \n Decorators : \n \n @DataAction()\n \n \n\n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:85\n \n \n\n\n \n \n Sets the selected reference organs\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n selectedReferenceOrgans\n \n OrganInfo[]\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n colorAssignments\n \n \n \n \n \n \n Type : ColorAssignmentState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:63\n \n \n\n \n \n Color assignments state\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n dataState\n \n \n \n \n \n \n Type : DataState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:60\n \n \n\n \n \n The data state\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n highlightedId$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('highlightedId'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:57\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n listResults\n \n \n \n \n \n \n Type : ListResultsState\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:65\n \n \n\n\n \n \n \n \n \n \n \n \n Readonly\n referenceOrgans$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('referenceOrgans'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:51\n \n \n\n \n \n Available Reference Organs\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n scene$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('scene'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:55\n \n \n\n \n \n Scene to display in the 3d Scene\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n selectedReferenceOrgans$\n \n \n \n \n \n \n Default value : this.state$.pipe(pluck('selectedReferenceOrgans'), distinctUntilChanged())\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/store/scene/scene.state.ts:53\n \n \n\n \n \n Selected Reference Organs\n\n \n \n\n \n \n\n\n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { NodeClickEvent, SpatialSceneNode } from 'ccf-body-ui';\nimport { ALL_POSSIBLE_ORGANS, DataSourceService, OrganInfo } from 'ccf-shared';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, take, tap } from 'rxjs/operators';\n\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\nimport { ListResultsState } from '../list-results/list-results.state';\n\nexport const DEFAULT_SELECTED_ORGANS = new Set(['Skin', 'Heart', 'Kidney', 'Spleen']);\n\nexport interface SceneStateModel {\n scene: SpatialSceneNode[];\n referenceOrgans: OrganInfo[];\n selectedReferenceOrgans: OrganInfo[];\n\n selectedAnatomicalStructures: unknown[];\n anatomicalStructureSettings: {\n [iri: string]: {\n enabled: boolean;\n visible: boolean;\n opacity: boolean;\n };\n };\n highlightedId?: string;\n}\n\n/**\n * 3d Scene state\n */\n@StateRepository()\n@State({\n name: 'scene',\n defaults: {\n scene: [],\n referenceOrgans: [],\n selectedReferenceOrgans: [],\n selectedAnatomicalStructures: [],\n anatomicalStructureSettings: {}\n }\n})\n@Injectable()\nexport class SceneState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Available Reference Organs */\n readonly referenceOrgans$ = this.state$.pipe(pluck('referenceOrgans'), distinctUntilChanged());\n /** Selected Reference Organs */\n readonly selectedReferenceOrgans$ = this.state$.pipe(pluck('selectedReferenceOrgans'), distinctUntilChanged());\n /** Scene to display in the 3d Scene */\n readonly scene$ = this.state$.pipe(pluck('scene'), distinctUntilChanged());\n\n readonly highlightedId$ = this.state$.pipe(pluck('highlightedId'), distinctUntilChanged());\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n private listResults: ListResultsState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the selected reference organs\n *\n * @param referenceOrgans The selected reference organs selected\n */\n @DataAction()\n setSelectedReferenceOrgans(@Payload('selectedReferenceOrgans') selectedReferenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ selectedReferenceOrgans });\n }\n\n /**\n * Sets the reference organs\n *\n * @param referenceOrgans The reference organs available\n */\n @DataAction()\n setReferenceOrgans(@Payload('referenceOrgans') referenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ referenceOrgans });\n }\n\n /**\n * Sets the scene\n *\n * @param scene The active scene to display\n */\n @DataAction()\n setScene(@Payload('scene') scene: SpatialSceneNode[]): void {\n this.ctx.patchState({ scene });\n }\n\n /**\n * Handle scene node clicks\n *\n * @param param0 scene node click event\n */\n sceneNodeClicked({ node, ctrlClick }: NodeClickEvent): void {\n if (node.representation_of &&\n node['@id'] !== 'http://purl.org/ccf/latest/ccf.owl#VHFSkin'\n && node.entityId // Disables this path. Need to update logic here.\n ) {\n this.dataState.updateFilter({ ontologyTerms: [node.representation_of] });\n } else if (node.entityId) {\n this.colorAssignments.assignColor(node['@id'], !ctrlClick);\n }\n }\n\n sceneNodeHovered(node: SpatialSceneNode): void {\n this.listResults.highlightNode(node['@id']);\n }\n\n sceneNodeUnhover(): void {\n this.listResults.unHighlightNode();\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n this.listResults = this.injector.get(ListResultsState);\n\n // Initialize reference organ info\n this.dataService.getReferenceOrgans().pipe(\n map(refOrgans => {\n const organIds = new Set(refOrgans.map(o => o.representation_of));\n return ALL_POSSIBLE_ORGANS\n .filter(organ => organIds.has(organ.id))\n .map(organ => ({ ...organ, disabled: false, numResults: 0 }));\n }),\n take(1),\n tap(organs => {\n this.setReferenceOrgans(organs);\n this.setSelectedReferenceOrgans(organs.filter(organ => DEFAULT_SELECTED_ORGANS.has(organ.organ)));\n })\n ).subscribe();\n\n // Update scene as the overall state changes\n combineLatest([\n this.dataState.sceneData$,\n this.selectedReferenceOrgans$,\n this.colorAssignments.colorAssignments$,\n this.dataService.getReferenceOrgans(),\n this.listResults.highlightedNodeId$\n ]).pipe(\n map(([scene, selectedOrgans, colors, refOrganData, highlightedNodeId]) => {\n const activeOrgans = new Set(selectedOrgans.map(o => o.id));\n const refOrgans = new Set(refOrganData.filter(o => activeOrgans.has(o.representation_of)).map(o => o['@id']));\n return scene.filter(node =>\n (node.ccf_annotations?.some?.(tag => activeOrgans.has(tag))) ||\n (node.reference_organ && refOrgans.has(node.reference_organ))\n ).map((node): SpatialSceneNode =>\n node.entityId && (Object.prototype.hasOwnProperty.call(colors, node['@id']) || highlightedNodeId === node['@id']) ?\n ({\n ...node,\n color: highlightedNodeId === node['@id'] ?\n [30, 136, 229, 255] :\n colors[node['@id']].rgba as [number, number, number, number]\n }) : node\n );\n }),\n tap(scene => this.setScene(scene))\n ).subscribe();\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SceneStateModel.html":{"url":"interfaces/SceneStateModel.html","title":"interface - SceneStateModel","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SceneStateModel\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n\n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n anatomicalStructureSettings\n \n \n \n Optional\n \n highlightedId\n \n \n \n \n referenceOrgans\n \n \n \n \n scene\n \n \n \n \n selectedAnatomicalStructures\n \n \n \n \n selectedReferenceOrgans\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n anatomicalStructureSettings\n \n \n \n \n \n \n \n \n anatomicalStructureSettings: literal type\n\n \n \n\n\n \n \n Type : literal type\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n highlightedId\n \n \n \n \n \n \n \n \n highlightedId: string\n\n \n \n\n\n \n \n Type : string\n\n \n \n\n \n \n Optional\n \n \n\n\n\n\n \n \n \n \n \n \n \n referenceOrgans\n \n \n \n \n \n \n \n \n referenceOrgans: OrganInfo[]\n\n \n \n\n\n \n \n Type : OrganInfo[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n scene\n \n \n \n \n \n \n \n \n scene: SpatialSceneNode[]\n\n \n \n\n\n \n \n Type : SpatialSceneNode[]\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n selectedAnatomicalStructures\n \n \n \n \n \n \n \n \n selectedAnatomicalStructures: []\n\n \n \n\n\n \n \n Type : []\n\n \n \n\n\n\n\n\n \n \n \n \n \n \n \n selectedReferenceOrgans\n \n \n \n \n \n \n \n \n selectedReferenceOrgans: OrganInfo[]\n\n \n \n\n\n \n \n Type : OrganInfo[]\n\n \n \n\n\n\n\n\n \n \n \n \n\n\n \n import { Injectable, Injector } from '@angular/core';\nimport { DataAction, Payload, StateRepository } from '@ngxs-labs/data/decorators';\nimport { NgxsImmutableDataRepository } from '@ngxs-labs/data/repositories';\nimport { NgxsOnInit, State } from '@ngxs/store';\nimport { NodeClickEvent, SpatialSceneNode } from 'ccf-body-ui';\nimport { ALL_POSSIBLE_ORGANS, DataSourceService, OrganInfo } from 'ccf-shared';\nimport { combineLatest } from 'rxjs';\nimport { distinctUntilChanged, map, pluck, take, tap } from 'rxjs/operators';\n\nimport { ColorAssignmentState } from '../color-assignment/color-assignment.state';\nimport { DataState } from '../data/data.state';\nimport { ListResultsState } from '../list-results/list-results.state';\n\nexport const DEFAULT_SELECTED_ORGANS = new Set(['Skin', 'Heart', 'Kidney', 'Spleen']);\n\nexport interface SceneStateModel {\n scene: SpatialSceneNode[];\n referenceOrgans: OrganInfo[];\n selectedReferenceOrgans: OrganInfo[];\n\n selectedAnatomicalStructures: unknown[];\n anatomicalStructureSettings: {\n [iri: string]: {\n enabled: boolean;\n visible: boolean;\n opacity: boolean;\n };\n };\n highlightedId?: string;\n}\n\n/**\n * 3d Scene state\n */\n@StateRepository()\n@State({\n name: 'scene',\n defaults: {\n scene: [],\n referenceOrgans: [],\n selectedReferenceOrgans: [],\n selectedAnatomicalStructures: [],\n anatomicalStructureSettings: {}\n }\n})\n@Injectable()\nexport class SceneState extends NgxsImmutableDataRepository implements NgxsOnInit {\n /** Available Reference Organs */\n readonly referenceOrgans$ = this.state$.pipe(pluck('referenceOrgans'), distinctUntilChanged());\n /** Selected Reference Organs */\n readonly selectedReferenceOrgans$ = this.state$.pipe(pluck('selectedReferenceOrgans'), distinctUntilChanged());\n /** Scene to display in the 3d Scene */\n readonly scene$ = this.state$.pipe(pluck('scene'), distinctUntilChanged());\n\n readonly highlightedId$ = this.state$.pipe(pluck('highlightedId'), distinctUntilChanged());\n\n /** The data state */\n private dataState: DataState;\n\n /** Color assignments state */\n private colorAssignments: ColorAssignmentState;\n\n private listResults: ListResultsState;\n\n /**\n * Creates an instance of scene state.\n *\n * @param injector Injector service used to lazy load data state\n */\n constructor(\n private readonly dataService: DataSourceService,\n private readonly injector: Injector\n ) {\n super();\n }\n\n /**\n * Sets the selected reference organs\n *\n * @param referenceOrgans The selected reference organs selected\n */\n @DataAction()\n setSelectedReferenceOrgans(@Payload('selectedReferenceOrgans') selectedReferenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ selectedReferenceOrgans });\n }\n\n /**\n * Sets the reference organs\n *\n * @param referenceOrgans The reference organs available\n */\n @DataAction()\n setReferenceOrgans(@Payload('referenceOrgans') referenceOrgans: OrganInfo[]): void {\n this.ctx.patchState({ referenceOrgans });\n }\n\n /**\n * Sets the scene\n *\n * @param scene The active scene to display\n */\n @DataAction()\n setScene(@Payload('scene') scene: SpatialSceneNode[]): void {\n this.ctx.patchState({ scene });\n }\n\n /**\n * Handle scene node clicks\n *\n * @param param0 scene node click event\n */\n sceneNodeClicked({ node, ctrlClick }: NodeClickEvent): void {\n if (node.representation_of &&\n node['@id'] !== 'http://purl.org/ccf/latest/ccf.owl#VHFSkin'\n && node.entityId // Disables this path. Need to update logic here.\n ) {\n this.dataState.updateFilter({ ontologyTerms: [node.representation_of] });\n } else if (node.entityId) {\n this.colorAssignments.assignColor(node['@id'], !ctrlClick);\n }\n }\n\n sceneNodeHovered(node: SpatialSceneNode): void {\n this.listResults.highlightNode(node['@id']);\n }\n\n sceneNodeUnhover(): void {\n this.listResults.unHighlightNode();\n }\n\n /**\n * Initializes this state service.\n */\n ngxsOnInit(): void {\n super.ngxsOnInit();\n\n // Injecting page and model states in the constructor breaks things!?\n // Lazy load here\n this.dataState = this.injector.get(DataState);\n this.colorAssignments = this.injector.get(ColorAssignmentState);\n this.listResults = this.injector.get(ListResultsState);\n\n // Initialize reference organ info\n this.dataService.getReferenceOrgans().pipe(\n map(refOrgans => {\n const organIds = new Set(refOrgans.map(o => o.representation_of));\n return ALL_POSSIBLE_ORGANS\n .filter(organ => organIds.has(organ.id))\n .map(organ => ({ ...organ, disabled: false, numResults: 0 }));\n }),\n take(1),\n tap(organs => {\n this.setReferenceOrgans(organs);\n this.setSelectedReferenceOrgans(organs.filter(organ => DEFAULT_SELECTED_ORGANS.has(organ.organ)));\n })\n ).subscribe();\n\n // Update scene as the overall state changes\n combineLatest([\n this.dataState.sceneData$,\n this.selectedReferenceOrgans$,\n this.colorAssignments.colorAssignments$,\n this.dataService.getReferenceOrgans(),\n this.listResults.highlightedNodeId$\n ]).pipe(\n map(([scene, selectedOrgans, colors, refOrganData, highlightedNodeId]) => {\n const activeOrgans = new Set(selectedOrgans.map(o => o.id));\n const refOrgans = new Set(refOrganData.filter(o => activeOrgans.has(o.representation_of)).map(o => o['@id']));\n return scene.filter(node =>\n (node.ccf_annotations?.some?.(tag => activeOrgans.has(tag))) ||\n (node.reference_organ && refOrgans.has(node.reference_organ))\n ).map((node): SpatialSceneNode =>\n node.entityId && (Object.prototype.hasOwnProperty.call(colors, node['@id']) || highlightedNodeId === node['@id']) ?\n ({\n ...node,\n color: highlightedNodeId === node['@id'] ?\n [30, 136, 229, 255] :\n colors[node['@id']].rgba as [number, number, number, number]\n }) : node\n );\n }),\n tap(scene => this.setScene(scene))\n ).subscribe();\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"interfaces/SearchResult.html":{"url":"interfaces/SearchResult.html","title":"interface - SearchResult","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n Interfaces\n \n SearchResult\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n\n\n \n Description\n \n \n Search result interface type for the search results\n\n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n \n displayLabel\n \n \n \n \n index\n \n \n \n \n node\n \n \n \n \n \n \n \n \n\n\n\n \n Properties\n \n \n \n \n \n displayLabel\n \n \n \n \n \n \n \n \n displayLabel: string[]\n\n \n \n\n\n \n \n Type : string[]\n\n \n \n\n\n\n\n\n \n \n label to be displayed in the view\n\n \n \n \n \n \n \n \n \n \n index\n \n \n \n \n \n \n \n \n index: number\n\n \n \n\n\n \n \n Type : number\n\n \n \n\n\n\n\n\n \n \n ensures order of search-results\n\n \n \n \n \n \n \n \n \n \n node\n \n \n \n \n \n \n \n \n node: OntologyTreeNode\n\n \n \n\n\n \n \n Type : OntologyTreeNode\n\n \n \n\n\n\n\n\n \n \n instance of OntologyTreeNode, provides data associated with a search result\n\n \n \n \n \n \n \n\n\n \n import { Immutable } from '@angular-ru/common/typings';\nimport { Injectable } from '@angular/core';\nimport { bind } from 'bind-decorator';\nimport { OntologyTreeModel, OntologyTreeNode } from 'ccf-database';\nimport { at } from 'lodash';\nimport { Observable, ReplaySubject } from 'rxjs';\nimport { map } from 'rxjs/operators';\n\n\n/**\n * Search result interface type for the search results\n */\nexport interface SearchResult {\n /** ensures order of search-results */\n index: number;\n\n /** label to be displayed in the view */\n displayLabel: string[];\n\n /** instance of OntologyTreeNode, provides data associated with a search result */\n node: OntologyTreeNode;\n}\n\n/**\n * Injectable OntologySearchService responsible for search result computations\n */\n@Injectable()\nexport class OntologySearchService {\n private readonly treeModel$ = new ReplaySubject(1);\n private treeModel: OntologyTreeModel;\n\n /** All nodes in the ontology tree. */\n public readonly nodes$ = this.treeModel$.pipe(map(state => Object.values(state.nodes)));\n\n /** Root node of the ontology tree. */\n public readonly rootNode$ = this.treeModel$.pipe(map(state => state.nodes[state.root]));\n\n setTreeModel(treeModel: OntologyTreeModel): void {\n this.treeModel$.next(treeModel);\n this.treeModel = treeModel;\n }\n\n /**\n * Searches the ontology with the search-term\n *\n * @param value the search term\n * @returns an array of search-results\n */\n filter(value: string): Observable {\n return this.nodes$.pipe(\n map(nodes => this.lookup(nodes, value.toLowerCase()))\n );\n }\n\n /**\n * looks up ontology nodes and composes search results\n *\n * @param nodes Ontology nodes\n * @param searchValue search text in lower case\n * @returns search results\n */\n private lookup(nodes: Immutable[], searchValue: string): SearchResult[] {\n const searchResults = new Map();\n\n if (nodes) {\n nodes.forEach((node: OntologyTreeNode) => {\n const condition = node.label.toLowerCase().includes(searchValue);\n\n if (condition && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label, searchValue),\n displayLabel: this.formatLabel(node.label, searchValue),\n node\n });\n } else {\n const match = node.synonymLabels.find((label) => label.toLowerCase().includes(searchValue));\n\n if (match && !searchResults.get(node.id)) {\n searchResults.set(node.id, {\n index: this.getIndexOfMatch(node.label + ' (' + match + ')', searchValue),\n displayLabel: this.formatLabel(node.label + ' (' + match + ')', searchValue),\n node\n });\n }\n }\n });\n }\n\n return Array.from(searchResults.values());\n }\n\n /**\n * Gets index of match in the ontology label\n *\n * @param label the provided ontology node label or synonym label\n * @param searchValue the searched text in lower case\n * @returns the index of the match in the label\n */\n getIndexOfMatch(label: string, searchValue: string): number {\n return label.toLowerCase().indexOf(searchValue);\n }\n\n /**\n * Formats label based on where the search-term was found in the OntologyTreeNode\n *\n * @param label label or first synonym-label of OntologyTreeNode which has the search-term\n * @param searchValue search-term\n * @returns an array in the form of [prefix, search-term, suffix]\n */\n formatLabel(label: string, searchValue: string): string[] {\n const index = this.getIndexOfMatch(label, searchValue);\n return [\n label.slice(0, index),\n label.slice(index, index + searchValue.length),\n label.slice(index + searchValue.length)\n ];\n }\n\n /**\n * Fetches the children of an ontology node.\n * Note: This can be called without a reference to `this`.\n *\n * @param node The node for which to get children.\n * @returns An array of children, empty if the node has no children.\n */\n @bind\n getChildren(node: OntologyTreeNode): OntologyTreeNode[] {\n const nodes = this.treeModel?.nodes ?? {};\n return at(nodes, node.children);\n }\n}\n\n \n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/SpinnerOverlayComponent.html":{"url":"components/SpinnerOverlayComponent.html","title":"component - SpinnerOverlayComponent","body":"\n \n\n\n\n\n\n Components\n \n SpinnerOverlayComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts\n\n\n\n \n Description\n \n \n Overlay component that displays a progress spinner and\nan optional text description.\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-spinner-overlay\n \n\n \n styleUrls\n ./spinner-overlay.component.scss\n \n\n\n\n \n templateUrl\n ./spinner-overlay.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n\n\n \n \n Inputs\n \n \n \n \n \n \n active\n \n \n text\n \n \n \n \n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n active\n \n \n \n \n Type : boolean\n\n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:19\n \n \n \n \n Whether the overlay is active/showing.\n\n \n \n \n \n \n \n \n \n \n text\n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:22\n \n \n \n \n Optional text description displayed alongside the spinner.\n\n \n \n \n \n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-spinner-overlay\"\n\n \n \n \n \n Default value : 'ccf-spinner-overlay'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:16\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n\n\n\n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-spinner-overlay'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts:16\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\n\n\n/**\n * Overlay component that displays a progress spinner and\n * an optional text description.\n */\n@Component({\n selector: 'ccf-spinner-overlay',\n templateUrl: './spinner-overlay.component.html',\n styleUrls: ['./spinner-overlay.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SpinnerOverlayComponent {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-spinner-overlay';\n\n /** Whether the overlay is active/showing. */\n @Input() @HostBinding('class.active') active = false;\n\n /** Optional text description displayed alongside the spinner. */\n @Input() text: string;\n}\n\n \n\n \n \n{{ text }}\n\n \n\n \n \n ./spinner-overlay.component.scss\n \n :host {\n display: flex;\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 99;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n pointer-events: none;\n visibility: hidden;\n opacity: 0;\n transition: visibility 0.6s, opacity 0.4s ease-in-out;\n\n mat-spinner {\n margin-bottom: 1rem;\n opacity: 0;\n transition: opacity 0.3s ease-in-out 0.3s;\n }\n\n &.active {\n pointer-events: auto;\n visibility: visible;\n opacity: 1;\n\n mat-spinner {\n opacity: 1;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '{{ text }}'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'SpinnerOverlayComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/SpinnerOverlayModule.html":{"url":"modules/SpinnerOverlayModule.html","title":"module - SpinnerOverlayModule","body":"\n \n\n\n\n\n Modules\n SpinnerOverlayModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_SpinnerOverlayModule\n\n\n\ncluster_SpinnerOverlayModule_declarations\n\n\n\ncluster_SpinnerOverlayModule_exports\n\n\n\n\nSpinnerOverlayComponent\n\nSpinnerOverlayComponent\n\n\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule -->\n\nSpinnerOverlayComponent->SpinnerOverlayModule\n\n\n\n\n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent -->\n\nSpinnerOverlayModule->SpinnerOverlayComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n SpinnerOverlayComponent\n \n \n \n \n Exports\n \n \n SpinnerOverlayComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\nimport { SpinnerOverlayComponent } from './spinner-overlay.component';\n\n\n@NgModule({\n imports: [CommonModule, MatProgressSpinnerModule],\n declarations: [SpinnerOverlayComponent],\n exports: [SpinnerOverlayComponent]\n})\nexport class SpinnerOverlayModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/StoreModule.html":{"url":"modules/StoreModule.html","title":"module - StoreModule","body":"\n \n\n\n\n\n Modules\n StoreModule\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/store/store.module.ts\n \n\n\n\n\n\n \n \n \n \n\n\n \n\n\n \n import { NgModule } from '@angular/core';\nimport { NgxsDataPluginModule } from '@ngxs-labs/data';\nimport { NgxsLoggerPluginModule } from '@ngxs/logger-plugin';\nimport { NgxsModule } from '@ngxs/store';\n\nimport { environment } from '../../../environments/environment';\nimport { ColorAssignmentState } from './color-assignment/color-assignment.state';\nimport { DataState } from './data/data.state';\nimport { IconRegistryState } from './icon-registry/icon-registry.state';\nimport { ListResultsState } from './list-results/list-results.state';\nimport { GlobalConfigState } from 'ccf-shared';\nimport { SceneState } from './scene/scene.state';\n\n\n/**\n * States shared across the entire app.\n */\nexport const ROOT_STATES = [\n GlobalConfigState,\n ColorAssignmentState,\n IconRegistryState,\n ListResultsState,\n DataState,\n SceneState\n];\n\n@NgModule({\n imports: [\n // For some strange reason the data plugin is not happy being placed after the store module!?\n NgxsDataPluginModule.forRoot(),\n\n NgxsModule.forRoot(ROOT_STATES, {\n developmentMode: !environment.production\n // Consider setting compatibility and executionStrategy\n // https://www.ngxs.io/advanced/options\n }),\n\n // Logger plugin must be last!\n NgxsLoggerPluginModule.forRoot({\n disabled: environment.production\n })\n ]\n})\nexport class StoreModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ThemingModule.html":{"url":"modules/ThemingModule.html","title":"module - ThemingModule","body":"\n \n\n\n\n\n Modules\n ThemingModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ThemingModule\n\n\n\ncluster_ThemingModule_providers\n\n\n\n\nThemingService\n\nThemingService\n\n\n\nThemingModule\n\nThemingModule\n\nThemingModule -->\n\nThemingService->ThemingModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/core/services/theming/theming.module.ts\n \n\n\n\n\n\n \n \n \n Providers\n \n \n ThemingService\n \n \n \n \n \n\n\n \n\n\n \n import { APP_BOOTSTRAP_LISTENER, NgModule } from '@angular/core';\n\nimport { ThemingService } from './theming.service';\n\n\n@NgModule({\n providers: [\n { provide: APP_BOOTSTRAP_LISTENER, useValue: ThemingService.initialize, multi: true },\n ThemingService\n ]\n})\nexport class ThemingModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/ThemingService.html":{"url":"injectables/ThemingService.html","title":"injectable - ThemingService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n ThemingService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n\n\n \n Description\n \n \n Manages the currently active theme.\n\n \n\n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Private\n defaultTheme\n \n \n Private\n element\n \n \n Private\n injector\n \n \n Private\n theme\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n Private\n applyThemeClass\n \n \n getTheme\n \n \n Static\n initialize\n \n \n initialize\n \n \n resetTheme\n \n \n setTheme\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(defaultTheme: string | null)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:25\n \n \n\n \n \n Creates the theming service.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n defaultTheme\n \n \n string | null\n \n \n \n No\n \n \n \n An optional default theme.\n\n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Private\n applyThemeClass\n \n \n \n \n \n \n \n applyThemeClass(cls: string, method: \"add\" | \"remove\")\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:83\n \n \n\n\n \n \n Adds or removes a theme class from the necessary components.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Default value\n Description\n \n \n \n \n cls\n \n string\n \n\n \n No\n \n\n \n \n\n \n The theme class.\n\n \n \n \n method\n \n \"add\" | \"remove\"\n \n\n \n No\n \n\n \n 'add'\n \n\n \n Whether to add or remove the theme.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n getTheme\n \n \n \n \n \n \ngetTheme()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:39\n \n \n\n\n \n \n Get the currently active theme.\n\n\n \n Returns : string\n\n \n \n \n \n \n \n \n \n \n \n \n Static\n initialize\n \n \n \n \n \n \n \n initialize(component: ComponentRef<>)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:21\n \n \n\n\n \n \n Initializer called during bootstrap to set up theming.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n component\n \n ComponentRef<>\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n initialize\n \n \n \n \n \n \ninitialize(element: ElementRef<>, injector: Injector)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:71\n \n \n\n\n \n \n Binds theming service to a component.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n element\n \n ElementRef<>\n \n\n \n No\n \n\n\n \n \n injector\n \n Injector\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n resetTheme\n \n \n \n \n \n \nresetTheme()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:60\n \n \n\n\n \n \n Resets the theme to the default.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n setTheme\n \n \n \n \n \n \nsetTheme(theme: string)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:48\n \n \n\n\n \n \n Sets the currently active theme.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n theme\n \n string\n \n\n \n No\n \n\n\n \n The new theme class.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Private\n defaultTheme\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:16\n \n \n\n \n \n Default theme class.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n element\n \n \n \n \n \n \n Type : ElementRef<>\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:13\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n injector\n \n \n \n \n \n \n Type : Injector\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:14\n \n \n\n\n \n \n \n \n \n \n \n \n Private\n theme\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/theming/theming.service.ts:18\n \n \n\n \n \n Currently active theme class.\n\n \n \n\n \n \n\n\n \n\n\n \n import { OverlayContainer } from '@angular/cdk/overlay';\nimport { ComponentRef, ElementRef, Inject, Injector, Injectable, InjectionToken, Optional, Renderer2 } from '@angular/core';\n\n/** Token for specifying the default theme class. */\nexport const DEFAULT_THEME = new InjectionToken('Default theme class');\n\n/**\n * Manages the currently active theme.\n */\n@Injectable()\nexport class ThemingService {\n private element: ElementRef;\n private injector: Injector;\n /** Default theme class. */\n private defaultTheme: string;\n /** Currently active theme class. */\n private theme: string;\n\n /** Initializer called during bootstrap to set up theming. */\n static initialize(component: ComponentRef): void {\n const { injector, location } = component;\n const service = injector.get(ThemingService);\n service.initialize(location, injector);\n }\n\n /**\n * Creates the theming service.\n *\n * @param defaultTheme An optional default theme.\n */\n constructor(@Optional() @Inject(DEFAULT_THEME) defaultTheme: string | null) {\n this.defaultTheme = this.theme = defaultTheme ?? '';\n }\n\n /**\n * Get the currently active theme.\n */\n getTheme(): string {\n return this.theme;\n }\n\n /**\n * Sets the currently active theme.\n *\n * @param theme The new theme class.\n */\n setTheme(theme: string): void {\n if (theme === this.theme) {\n return;\n }\n this.applyThemeClass(this.theme, 'remove');\n this.applyThemeClass(theme);\n this.theme = theme;\n }\n\n /**\n * Resets the theme to the default.\n */\n resetTheme(): void {\n this.setTheme(this.defaultTheme);\n }\n\n\n /**\n * Binds theming service to a component.\n *\n * @param component The top level component.\n * @throws {Error} If the theming service has already been initialized.\n */\n initialize(element: ElementRef, injector: Injector): void {\n this.element = element;\n this.injector = injector;\n this.applyThemeClass(this.getTheme());\n }\n\n /**\n * Adds or removes a theme class from the necessary components.\n *\n * @param cls The theme class.\n * @param method Whether to add or remove the theme.\n */\n private applyThemeClass(cls: string, method: 'add' | 'remove' = 'add'): void {\n const { element, injector } = this;\n if (!cls || !element || !injector) {\n return;\n }\n\n const renderer = injector.get(Renderer2, null);\n if (!renderer) {\n return;\n }\n\n const root = element.nativeElement as HTMLElement;\n const overlay = injector.get(OverlayContainer, null)?.getContainerElement();\n const methodName = method === 'add' ? 'addClass' : 'removeClass';\n\n renderer[methodName](root, cls);\n if (overlay) {\n renderer[methodName](overlay, cls);\n }\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ThumbnailCarouselComponent.html":{"url":"components/ThumbnailCarouselComponent.html","title":"component - ThumbnailCarouselComponent","body":"\n \n\n\n\n\n\n Components\n \n ThumbnailCarouselComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n\n\n\n \n Description\n \n \n Carousel containing sample thumbnails in expanded donor cards\n\n \n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-thumbnail-carousel\n \n\n \n styleUrls\n ./thumbnail-carousel.component.scss\n \n\n\n\n \n templateUrl\n ./thumbnail-carousel.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n className\n \n \n Readonly\n config\n \n \n Readonly\n navigation\n \n \n Readonly\n uid\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n itemId\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n data\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n linkClicked\n \n \n \n \n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n prevButtonId\n \n \n nextButtonId\n \n \n \n \n \n \n\n\n\n \n Inputs\n \n \n \n \n \n data\n \n \n \n \n Type : DatasetResult[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:34\n \n \n \n \n Items to show in the carousel\n\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n linkClicked\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:39\n \n \n \n \n Outputs the result whose link was clicked\n\n \n \n \n \n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-thumbnail-carousel\"\n\n \n \n \n \n Default value : 'ccf-thumbnail-carousel'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:29\n \n \n\n \n \n Primary css class selector\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n itemId\n \n \n \n \n \n \nitemId(_index: number, item: DatasetResult)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:89\n \n \n\n\n \n \n Extract a unique identifier for an item\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n _index\n \n number\n \n\n \n No\n \n\n\n \n Unused\n\n \n \n \n item\n \n DatasetResult\n \n\n \n No\n \n\n\n \n The item\n\n \n \n \n \n \n \n \n \n Returns : string\n\n \n \n An unique identifier\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-thumbnail-carousel'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:29\n \n \n\n \n \n Primary css class selector\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n config\n \n \n \n \n \n \n Type : SwiperOptions\n\n \n \n \n \n Default value : {\n allowTouchMove: false,\n slidesOffsetBefore: 4,\n slidesOffsetAfter: 4,\n slidesPerView: 'auto',\n spaceBetween: 4,\n watchOverflow: true\n }\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:63\n \n \n\n \n \n Swiper configuration\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n navigation\n \n \n \n \n \n \n Type : NavigationOptions\n\n \n \n \n \n Default value : {\n // Normally I would have prefered referencing the elements themselves instead of using selectors\n // However in this case it does not work with angular swiper\n prevEl: '#' + this.prevButtonId,\n nextEl: '#' + this.nextButtonId\n }\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:75\n \n \n\n \n \n Navigation configuration\n\n \n \n\n \n \n \n \n \n \n \n \n Readonly\n uid\n \n \n \n \n \n \n Default value : nextUid()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:44\n \n \n\n \n \n Per instance unique identifier\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n prevButtonId\n \n \n\n \n \n getprevButtonId()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:49\n \n \n \n \n HTML id for previous slide button\n\n\n \n Returns : string\n\n \n \n \n\n \n \n \n \n \n \n \n nextButtonId\n \n \n\n \n \n getnextButtonId()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts:56\n \n \n \n \n HTML id for next slide button\n\n\n \n Returns : string\n\n \n \n \n\n \n \n\n\n\n\n \n import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { DatasetResult } from 'ccf-database';\nimport { SwiperOptions } from 'swiper';\nimport { NavigationOptions } from 'swiper/types';\n\n// Returns a unique identifier\nconst nextUid = (() => {\n let counter = -1;\n return () => {\n counter += 1;\n return counter;\n };\n})();\n\n\n/**\n * Carousel containing sample thumbnails in expanded donor cards\n */\n@Component({\n selector: 'ccf-thumbnail-carousel',\n templateUrl: './thumbnail-carousel.component.html',\n styleUrls: ['./thumbnail-carousel.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ThumbnailCarouselComponent {\n /**\n * Primary css class selector\n */\n @HostBinding('class') readonly className = 'ccf-thumbnail-carousel';\n\n /**\n * Items to show in the carousel\n */\n @Input() data: DatasetResult[];\n\n /**\n * Outputs the result whose link was clicked\n */\n @Output() readonly linkClicked = new EventEmitter();\n\n /**\n * Per instance unique identifier\n */\n readonly uid = nextUid();\n\n /**\n * HTML id for previous slide button\n */\n get prevButtonId(): string {\n return `ccf-thumbnail-carousel-prev-button-${this.uid}`;\n }\n\n /**\n * HTML id for next slide button\n */\n get nextButtonId(): string {\n return `ccf-thumbnail-carousel-next-button-${this.uid}`;\n }\n\n /**\n * Swiper configuration\n */\n readonly config: SwiperOptions = {\n allowTouchMove: false,\n slidesOffsetBefore: 4,\n slidesOffsetAfter: 4,\n slidesPerView: 'auto',\n spaceBetween: 4,\n watchOverflow: true\n };\n\n /**\n * Navigation configuration\n */\n readonly navigation: NavigationOptions = {\n // Normally I would have prefered referencing the elements themselves instead of using selectors\n // However in this case it does not work with angular swiper\n prevEl: '#' + this.prevButtonId,\n nextEl: '#' + this.nextButtonId\n };\n\n /**\n * Extract a unique identifier for an item\n *\n * @param _index Unused\n * @param item The item\n * @returns An unique identifier\n */\n itemId(_index: number, item: DatasetResult): string {\n return item.thumbnail;\n }\n}\n\n \n\n \n \n \n navigate_before\n \n\n\n\n \n \n \n \n {{ item.technology }}\n \n \n DATA\n open_in_new\n \n \n \n \n\n\n\n \n \n \n\n navigate_next\n \n\n\n \n\n \n \n ./thumbnail-carousel.component.scss\n \n :host {\n display: flex;\n\n .swiper {\n flex-grow: 1;\n padding-bottom: 0.3125rem;\n\n ::ng-deep .swiper-slide {\n width: 3.75rem;\n height: 2.8125rem;\n }\n }\n\n .prev, .next {\n display: flex;\n align-items: center;\n\n height: 2.8125rem;\n\n button {\n width: 1.5rem;\n height: 1.5rem;\n line-height: 1.5rem;\n }\n\n .fade {\n position: absolute;\n top: -0.625rem;\n left: -2rem;\n z-index: 10;\n\n width: 2rem;\n height: 2.8125rem + 0.3125rem;\n\n opacity: 1;\n transition: opacity ease-in-out 0.3s;\n\n pointer-events: none;\n }\n\n .swiper-button-disabled, .swiper-button-lock {\n cursor: default;\n pointer-events: none;\n\n .fade {\n opacity: 0;\n }\n }\n }\n\n .slide {\n position: relative;\n width: 100%;\n height: 100%;\n\n .thumbnail {\n display: flex;\n align-items: center;\n justify-content: center;\n background-size: cover;\n\n position: relative;\n width: calc(100% - 2 * 0.125rem);\n height: calc(100% - 2 * 0.125rem);\n\n border-style: solid;\n border-width: 0.125rem;\n border-radius: 0.25rem;\n\n background-origin: padding-box;\n background-clip: padding-box;\n\n font-size: 0.875rem;\n font-weight: bold;\n\n &:after {\n content: \"\";\n\n position: absolute;\n bottom: -0.125rem;\n left: -0.125rem;\n width: 0.125rem;\n height: 0.125rem;\n }\n }\n\n .link {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n\n opacity: 0;\n transition: opacity ease-in-out 0.3s;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.6);\n\n font-size: 0.75rem;\n line-height: 0.75rem;\n\n &,\n &:link,\n &:visited,\n &:hover,\n &:focus,\n &:active {\n cursor: pointer;\n text-decoration: none;\n }\n }\n\n &:hover .link {\n opacity: 1;\n }\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' navigate_before {{ item.technology }} DATA open_in_new navigate_next '\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ThumbnailCarouselComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ThumbnailCarouselModule.html":{"url":"modules/ThumbnailCarouselModule.html","title":"module - ThumbnailCarouselModule","body":"\n \n\n\n\n\n Modules\n ThumbnailCarouselModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ThumbnailCarouselModule\n\n\n\ncluster_ThumbnailCarouselModule_declarations\n\n\n\ncluster_ThumbnailCarouselModule_exports\n\n\n\n\nThumbnailCarouselComponent\n\nThumbnailCarouselComponent\n\n\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule -->\n\nThumbnailCarouselComponent->ThumbnailCarouselModule\n\n\n\n\n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent -->\n\nThumbnailCarouselModule->ThumbnailCarouselComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ThumbnailCarouselComponent\n \n \n \n \n Exports\n \n \n ThumbnailCarouselComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SwiperModule } from 'swiper/angular';\nimport { Navigation, Swiper } from 'swiper/core';\n\nimport { ThumbnailCarouselComponent } from './thumbnail-carousel.component';\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatButtonModule,\n MatIconModule,\n\n SwiperModule\n ],\n declarations: [ThumbnailCarouselComponent],\n exports: [ThumbnailCarouselComponent]\n})\nexport class ThumbnailCarouselModule {\n constructor() {\n // Install swiper modules\n Swiper.use([Navigation]);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/TissueSectionVisComponent.html":{"url":"components/TissueSectionVisComponent.html","title":"component - TissueSectionVisComponent","body":"\n \n\n\n\n\n\n Components\n \n TissueSectionVisComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts\n\n\n\n\n\n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-tissue-section-vis\n \n\n \n styleUrls\n ./tissue-section-vis.component.scss\n \n\n\n\n \n templateUrl\n ./tissue-section-vis.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n clsName\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n tissueSectionExists\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n tissueSections\n \n \n totalTissueSections\n \n \n \n \n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n\n \n Inputs\n \n \n \n \n \n tissueSections\n \n \n \n \n Type : TissueSectionResult[]\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:18\n \n \n \n \n Tissue section data, used to determine which tissues to color on the graph\n\n \n \n \n \n \n \n \n \n \n totalTissueSections\n \n \n \n \n Type : number\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:15\n \n \n \n \n The total numebr of tissue sections, used for end label\n\n \n \n \n \n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-tissue-section-vis\"\n\n \n \n \n \n Default value : 'ccf-tissue-section-vis'\n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:12\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n tissueSectionExists\n \n \n \n \n \n \ntissueSectionExists(sectionNumber: number)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:21\n \n \n\n\n \n \n Returns whether or not the given section number exists in the tissueSection array\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n sectionNumber\n \n number\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n \n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n clsName\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-tissue-section-vis'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts:12\n \n \n\n \n \n HTML Class Name\n\n \n \n\n \n \n\n\n\n\n\n \n import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\nimport { TissueSectionResult } from 'ccf-database';\n\n@Component({\n selector: 'ccf-tissue-section-vis',\n templateUrl: './tissue-section-vis.component.html',\n styleUrls: ['./tissue-section-vis.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TissueSectionVisComponent {\n /** HTML Class Name */\n @HostBinding('class') readonly clsName = 'ccf-tissue-section-vis';\n\n /** The total numebr of tissue sections, used for end label */\n @Input() totalTissueSections!: number;\n\n /** Tissue section data, used to determine which tissues to color on the graph */\n @Input() tissueSections!: TissueSectionResult[];\n\n /** Returns whether or not the given section number exists in the tissueSection array */\n tissueSectionExists(sectionNumber: number): boolean {\n if (this.tissueSections.filter(section => section.sectionNumber === sectionNumber).length > 0) {\n return true;\n }\n\n return false;\n }\n}\n\n \n\n \n 0\n\n \n \n\n{{ totalTissueSections }}\n \n\n \n \n ./tissue-section-vis.component.scss\n \n :host {\n width: 100%;\n height: 2.5rem;\n padding: .5rem;\n padding-left: 1rem;\n padding-right: 1rem;\n display: flex;\n\n .container {\n margin-right: .5rem;\n margin-left: .5rem;\n flex-grow: 1;\n display: flex;\n position: relative;\n justify-content: space-evenly;\n\n .line-tick {\n height: 100%;\n width: 1px;\n z-index: 2;\n }\n\n .x-axis {\n width: 100%;\n height: 2px;\n position: absolute;\n top: calc(50% - 1px);\n right: 0;\n z-index: 1;\n }\n }\n}\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = '0 {{ totalTissueSections }}'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'TissueSectionVisComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/TissueSectionVisModule.html":{"url":"modules/TissueSectionVisModule.html","title":"module - TissueSectionVisModule","body":"\n \n\n\n\n\n Modules\n TissueSectionVisModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_TissueSectionVisModule\n\n\n\ncluster_TissueSectionVisModule_declarations\n\n\n\ncluster_TissueSectionVisModule_exports\n\n\n\n\nTissueSectionVisComponent\n\nTissueSectionVisComponent\n\n\n\nTissueSectionVisModule\n\nTissueSectionVisModule\n\nTissueSectionVisModule -->\n\nTissueSectionVisComponent->TissueSectionVisModule\n\n\n\n\n\nTissueSectionVisComponent \n\nTissueSectionVisComponent \n\nTissueSectionVisComponent -->\n\nTissueSectionVisModule->TissueSectionVisComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n TissueSectionVisComponent\n \n \n \n \n Exports\n \n \n TissueSectionVisComponent\n \n \n \n \n \n\n\n \n\n\n \n import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TissueSectionVisComponent } from './tissue-section-vis.component';\n\n\n\n@NgModule({\n declarations: [TissueSectionVisComponent],\n imports: [CommonModule],\n exports: [TissueSectionVisComponent]\n})\nexport class TissueSectionVisModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ToggleButtonComponent.html":{"url":"components/ToggleButtonComponent.html","title":"component - ToggleButtonComponent","body":"\n \n\n\n\n\n\n Components\n \n ToggleButtonComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts\n\n\n\n \n Description\n \n \n Implements open/close button for the side drawers.\n\n \n\n\n \n Implements\n \n \n AfterViewInit\n OnDestroy\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-drawer-toggle-button\n \n\n \n styleUrls\n ./toggle-button.component.scss\n \n\n\n\n \n templateUrl\n ./toggle-button.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n Readonly\n className\n \n \n Private\n opened\n \n \n Private\n position\n \n \n Private\n subscriptions\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n handleMessage\n \n \n ngAfterViewInit\n \n \n ngOnDestroy\n \n \n toggle\n \n \n \n \n\n\n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n class.ccf-drawer-toggle-button-end\n \n \n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n classEnd\n \n \n icon\n \n \n \n \n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(drawer: DrawerComponent, messageService: MessageService, cdr: ChangeDetectorRef)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:42\n \n \n\n \n \n Creates an instance of toggle button component.\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n drawer\n \n \n DrawerComponent\n \n \n \n No\n \n \n \n The owning side drawer.\n\n \n \n \n messageService\n \n \n MessageService\n \n \n \n No\n \n \n \n Service used to send and receive event messages.\n\n \n \n \n cdr\n \n \n ChangeDetectorRef\n \n \n \n No\n \n \n \n The change detector reference.\n\n \n \n \n \n \n \n \n \n \n\n\n\n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : \"ccf-drawer-toggle-button\"\n\n \n \n \n \n Default value : 'ccf-drawer-toggle-button'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:19\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n class.ccf-drawer-toggle-button-end\n \n \n \n \n \n \n Type : boolean\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:22\n \n \n\n \n \n Whether this button is attach to a drawer in position 'end'.\n\n \n \n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n handleMessage\n \n \n \n \n \n \nhandleMessage(msg: Message)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:85\n \n \n\n\n \n \n Process an event message.\n\n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n Description\n \n \n \n \n msg\n \n Message\n \n\n \n No\n \n\n\n \n The event.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if change detection needs to be run.\n\n \n \n \n \n \n \n \n \n \n \n \n ngAfterViewInit\n \n \n \n \n \n \nngAfterViewInit()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:65\n \n \n\n\n \n \n Initializes this component.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n ngOnDestroy\n \n \n \n \n \n \nngOnDestroy()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:75\n \n \n\n\n \n \n Cleans up all subscriptions.\n\n\n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n toggle\n \n \n \n \n \n \ntoggle()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:97\n \n \n\n\n \n \n Updates the drawer state.\n\n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n Readonly\n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-drawer-toggle-button'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:19\n \n \n\n \n \n HTML class\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n opened\n \n \n \n \n \n \n Default value : false\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:40\n \n \n\n \n \n Whether the owning drawer is opened.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n position\n \n \n \n \n \n \n Type : \"start\" | \"end\"\n\n \n \n \n \n Default value : 'start'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:38\n \n \n\n \n \n Position of the owning side drawer.\n\n \n \n\n \n \n \n \n \n \n \n \n Private\n subscriptions\n \n \n \n \n \n \n Default value : new Subscription()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:42\n \n \n\n \n \n Subscriptions managed by this component.\n\n \n \n\n \n \n\n\n \n \n Accessors\n \n \n \n \n \n \n classEnd\n \n \n\n \n \n getclassEnd()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:22\n \n \n \n \n Whether this button is attach to a drawer in position 'end'.\n\n\n \n Returns : boolean\n\n \n \n \n\n \n \n \n \n \n \n \n icon\n \n \n\n \n \n geticon()\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts:27\n \n \n \n \n Gets the name of the icon to display.\n\n\n \n Returns : string\n\n \n \n \n\n \n \n\n\n\n\n \n import { ChangeDetectionStrategy, ChangeDetectorRef, Component, OnDestroy, HostBinding, AfterViewInit } from '@angular/core';\n\nimport { DrawerComponent } from '../drawer/drawer.component';\nimport { Message, MessageService } from '../messages';\nimport { Subscription } from 'rxjs';\n\n\n/**\n * Implements open/close button for the side drawers.\n */\n@Component({\n selector: 'ccf-drawer-toggle-button',\n templateUrl: './toggle-button.component.html',\n styleUrls: ['./toggle-button.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ToggleButtonComponent implements AfterViewInit, OnDestroy {\n /** HTML class */\n @HostBinding('class') readonly className = 'ccf-drawer-toggle-button';\n /** Whether this button is attach to a drawer in position 'end'. */\n @HostBinding('class.ccf-drawer-toggle-button-end') // eslint-disable-line\n get classEnd(): boolean {\n return this.position === 'end';\n }\n\n /** Gets the name of the icon to display. */\n get icon(): string {\n let expand = 'arrow_right';\n let collapse = 'arrow_left';\n if (this.position === 'end') {\n ([expand, collapse] = [collapse, expand]);\n }\n\n return this.opened ? collapse : expand;\n }\n\n /** Position of the owning side drawer. */\n private position: 'start' | 'end' = 'start';\n /** Whether the owning drawer is opened. */\n private opened = false;\n /** Subscriptions managed by this component. */\n private subscriptions = new Subscription();\n\n /**\n * Creates an instance of toggle button component.\n *\n * @param drawer The owning side drawer.\n * @param messageService Service used to send and receive event messages.\n * @param cdr The change detector reference.\n */\n constructor(private drawer: DrawerComponent,\n messageService: MessageService,\n private cdr: ChangeDetectorRef) {\n const channel = messageService.connect(this);\n this.subscriptions.add(channel.getMessagesFromSource(drawer).subscribe(msg => {\n if (this.handleMessage(msg)) {\n cdr.markForCheck();\n }\n }));\n }\n\n /**\n * Initializes this component.\n */\n ngAfterViewInit(): void {\n setTimeout(() => {\n this.position = this.drawer.position;\n this.cdr.markForCheck();\n });\n }\n\n /**\n * Cleans up all subscriptions.\n */\n ngOnDestroy(): void {\n this.subscriptions.unsubscribe();\n }\n\n /**\n * Process an event message.\n *\n * @param msg The event.\n * @returns true if change detection needs to be run.\n */\n handleMessage(msg: Message): boolean {\n if (msg.payload.type === 'drawer-toggled') {\n this.opened = msg.payload.opened;\n return true;\n }\n\n return false;\n }\n\n /**\n * Updates the drawer state.\n */\n toggle(): void {\n const drawer = this.drawer;\n const { opened, expanded } = drawer;\n if (opened) {\n if (expanded) {\n drawer.closeExpanded();\n } else {\n drawer.close();\n }\n } else {\n drawer.open();\n }\n }\n}\n\n \n\n \n \n {{ icon }}\n\n\n \n\n \n \n ./toggle-button.component.scss\n \n :host {\n position: absolute;\n top: calc(50% - 2.0625rem);\n right: -1.0625rem;\n width: 1.0625rem;\n height: 3rem;\n border-radius: 0rem 0.25rem 0.25rem 0rem;\n cursor: pointer;\n display: flex;\n align-items: center;\n transition: 0.6s;\n\n &.ccf-drawer-toggle-button-end {\n right: unset;\n left: calc(-1rem - 1px);\n border-radius: 0.25rem 0rem 0rem 0.25rem;\n }\n\n .expand-collapse-icon {\n position: relative;\n right: 0.25rem;\n transition: all 0.5s;\n }\n\n &.ccf-drawer-toggle-button-end .expand-collapse-icon {\n right: unset;\n left: -0.25rem;\n }\n}\n\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' {{ icon }}'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ToggleButtonComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"components/ViewerComponent.html":{"url":"components/ViewerComponent.html","title":"component - ViewerComponent","body":"\n \n\n\n\n\n\n Components\n \n ViewerComponent\n\n\n\n \n Info\n \n \n Source\n \n \n Template\n \n \n Styles\n \n \n DOM Tree\n \n\n\n\n \n File\n\n\n projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts\n\n\n\n \n Description\n \n \n Viewer for tissue samples\n\n \n\n\n \n Implements\n \n \n OnChanges\n \n\n\n\n Metadata\n \n \n\n \n changeDetection\n ChangeDetectionStrategy.OnPush\n \n\n\n\n\n\n\n\n\n\n\n \n selector\n ccf-viewer\n \n\n \n styleUrls\n ./viewer.component.scss\n \n\n\n\n \n templateUrl\n ./viewer.component.html\n \n\n\n\n\n\n\n\n\n \n \n\n\n \n Index\n \n \n \n \n Properties\n \n \n \n \n \n \n className\n \n \n loading\n \n \n safeUrl\n \n \n \n \n\n \n \n Methods\n \n \n \n \n \n \n ngOnChanges\n \n \n Private\n updateUrl\n \n \n \n \n\n \n \n Inputs\n \n \n \n \n \n \n url\n \n \n \n \n\n \n \n Outputs\n \n \n \n \n \n \n closed\n \n \n \n \n\n \n \n HostBindings\n \n \n \n \n \n \n class\n \n \n \n \n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(sanitizer: DomSanitizer)\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:29\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n sanitizer\n \n \n DomSanitizer\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n Inputs\n \n \n \n \n \n url\n \n \n \n \n Type : string\n\n \n \n \n \n Default value : ''\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:19\n \n \n \n \n\n \n Outputs\n \n \n \n \n \n closed\n \n \n \n \n Type : EventEmitter\n\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:21\n \n \n \n \n\n \n HostBindings \n \n \n \n \n \n class\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-viewer'\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:17\n \n \n\n\n \n \n\n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n ngOnChanges\n \n \n \n \n \n \nngOnChanges(changes: SimpleChanges)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:33\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n changes\n \n SimpleChanges\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : void\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n updateUrl\n \n \n \n \n \n \n \n updateUrl()\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:39\n \n \n\n\n \n \n\n \n Returns : void\n\n \n \n \n \n \n\n \n \n \n Properties\n \n \n \n \n \n \n \n className\n \n \n \n \n \n \n Type : string\n\n \n \n \n \n Default value : 'ccf-viewer'\n \n \n \n \n Decorators : \n \n \n @HostBinding('class')\n \n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:17\n \n \n\n\n \n \n \n \n \n \n \n \n loading\n \n \n \n \n \n \n Default value : true\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:23\n \n \n\n\n \n \n \n \n \n \n \n \n safeUrl\n \n \n \n \n \n \n Type : SafeResourceUrl | null\n\n \n \n \n \n Default value : null\n \n \n \n \n Defined in projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts:29\n \n \n\n \n \n Sanitized url\nNOTE: Never use a getter for this property! It will cause the iframe to reload constantly.\n\n \n \n\n \n \n\n\n\n\n\n \n import {\n ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, OnChanges, Output, SimpleChanges,\n} from '@angular/core';\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\n\n\n/**\n * Viewer for tissue samples\n */\n@Component({\n selector: 'ccf-viewer',\n templateUrl: './viewer.component.html',\n styleUrls: ['./viewer.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ViewerComponent implements OnChanges {\n @HostBinding('class') className = 'ccf-viewer';\n\n @Input() url = '';\n\n @Output() readonly closed = new EventEmitter();\n\n loading = true;\n\n /**\n * Sanitized url\n * NOTE: Never use a getter for this property! It will cause the iframe to reload constantly.\n */\n safeUrl: SafeResourceUrl | null = null;\n\n constructor(private readonly sanitizer: DomSanitizer) { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if ('url' in changes) {\n this.updateUrl();\n }\n }\n\n private updateUrl(): void {\n const { sanitizer, url } = this;\n this.safeUrl = null;\n if (url) {\n this.safeUrl = sanitizer.bypassSecurityTrustResourceUrl(url);\n this.loading = true;\n }\n }\n}\n\n \n\n \n \n \n launch\n Open in Portal\n \n \n clear\n \n\n\n\n \n Loading External Site\n\n\n\n\n\n \n\n \n \n ./viewer.component.scss\n \n :host {\n display: block;\n\n .toolbar {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n\n width: 100%;\n height: 1.5rem;\n\n .launch {\n margin-right: 3.5rem;\n\n &.mat-button-disabled {\n cursor: not-allowed;\n }\n\n .icon {\n margin-right: 0.25rem;\n }\n }\n\n .close {\n min-width: 0;\n padding: 0;\n line-height: 1.5rem;\n border-radius: 0;\n }\n }\n\n .overlay {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n position: absolute;\n top: 1.5rem;\n bottom: 0;\n left: 0;\n right: 0;\n\n .spinner {\n margin-bottom: 0.5rem;\n }\n }\n\n .frame {\n width: 100%;\n height: 100%;\n }\n}\n\n \n\n \n \n \n \n Legend\n \n \n Html element\n \n \n Component\n \n \n Html element with directive\n \n \n \n\n \n\n\n\n\n\n\n var COMPONENT_TEMPLATE = ' launch Open in Portal clear Loading External Site'\n var COMPONENTS = [{'name': 'AppComponent', 'selector': 'ccf-root'},{'name': 'AppWebComponent', 'selector': 'ccf-root-wc'},{'name': 'CheckboxComponent', 'selector': 'ccf-checkbox'},{'name': 'ContainerComponent', 'selector': 'ccf-drawer-container'},{'name': 'ContentComponent', 'selector': 'ccf-drawer-content'},{'name': 'DonorCardComponent', 'selector': 'ccf-donor-card'},{'name': 'DrawerComponent', 'selector': 'ccf-drawer'},{'name': 'DropdownComponent', 'selector': 'ccf-dropdown'},{'name': 'DualSliderComponent', 'selector': 'ccf-dual-slider'},{'name': 'FiltersContentComponent', 'selector': 'ccf-filters-content'},{'name': 'FiltersPopoverComponent', 'selector': 'ccf-filters-popover'},{'name': 'HeaderComponent', 'selector': 'ccf-header'},{'name': 'OntologySearchComponent', 'selector': 'ccf-ontology-search'},{'name': 'OntologySelectionComponent', 'selector': 'ccf-ontology-selection'},{'name': 'OntologyTreeComponent', 'selector': 'ccf-ontology-tree'},{'name': 'ResultsBrowserComponent', 'selector': 'ccf-results-browser'},{'name': 'SpinnerOverlayComponent', 'selector': 'ccf-spinner-overlay'},{'name': 'ThumbnailCarouselComponent', 'selector': 'ccf-thumbnail-carousel'},{'name': 'TissueSectionVisComponent', 'selector': 'ccf-tissue-section-vis'},{'name': 'ToggleButtonComponent', 'selector': 'ccf-drawer-toggle-button'},{'name': 'ViewerComponent', 'selector': 'ccf-viewer'}];\n var DIRECTIVES = [];\n var ACTUAL_COMPONENT = {'name': 'ViewerComponent'};\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules/ViewerModule.html":{"url":"modules/ViewerModule.html","title":"module - ViewerModule","body":"\n \n\n\n\n\n Modules\n ViewerModule\n\n\n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_ViewerModule\n\n\n\ncluster_ViewerModule_exports\n\n\n\ncluster_ViewerModule_declarations\n\n\n\n\nViewerComponent\n\nViewerComponent\n\n\n\nViewerModule\n\nViewerModule\n\nViewerModule -->\n\nViewerComponent->ViewerModule\n\n\n\n\n\nViewerComponent \n\nViewerComponent \n\nViewerComponent -->\n\nViewerModule->ViewerComponent \n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n\n \n File\n \n \n projects/ccf-eui/src/app/shared/components/viewer/viewer.module.ts\n \n\n\n\n\n\n \n \n \n Declarations\n \n \n ViewerComponent\n \n \n \n \n Exports\n \n \n ViewerComponent\n \n \n \n \n \n\n\n \n\n\n \n import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\nimport { ViewerComponent } from './viewer.component';\n\n\n\n@NgModule({\n imports: [\n CommonModule,\n\n MatButtonModule,\n MatIconModule,\n MatProgressSpinnerModule\n ],\n declarations: [ViewerComponent],\n exports: [ViewerComponent]\n})\nexport class ViewerModule { }\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"injectables/WorkerDataSourceService.html":{"url":"injectables/WorkerDataSourceService.html","title":"injectable - WorkerDataSourceService","body":"\n \n\n\n\n\n\n\n\n\n Injectables\n WorkerDataSourceService\n\n\n\n \n Info\n \n \n Source\n \n\n\n\n \n \n File\n \n \n projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts\n \n\n\n\n \n Extends\n \n \n WorkerCCFDatabaseDataSourceService\n \n\n\n \n Index\n \n \n\n \n \n Methods\n \n \n \n \n \n \n Protected\n createWorker\n \n \n Private\n getWorkerUrl\n \n \n \n \n\n\n\n\n\n \n \n\n\n \n Constructor\n \n \n \n \nconstructor(globalConfig: GlobalConfigState, locator: LocationStrategy)\n \n \n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts:10\n \n \n\n \n \n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n globalConfig\n \n \n GlobalConfigState\n \n \n \n No\n \n \n \n \n locator\n \n \n LocationStrategy\n \n \n \n No\n \n \n \n \n \n \n \n \n \n \n\n\n \n \n \n Methods\n \n \n \n \n \n \n \n Protected\n createWorker\n \n \n \n \n \n \n \n createWorker(_config: CCFDatabaseOptions)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts:18\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n _config\n \n CCFDatabaseOptions\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : Worker\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n Private\n getWorkerUrl\n \n \n \n \n \n \n \n getWorkerUrl(directImport: boolean)\n \n \n\n\n \n \n Defined in projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts:23\n \n \n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Type\n Optional\n \n \n \n \n directImport\n \n boolean\n \n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : string | URL\n\n \n \n \n \n \n \n \n \n\n\n \n\n\n \n import { LocationStrategy } from '@angular/common';\nimport { Injectable } from '@angular/core';\nimport { CCFDatabaseOptions } from 'ccf-database';\nimport { GlobalConfigState, WorkerCCFDatabaseDataSourceService } from 'ccf-shared';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class WorkerDataSourceService extends WorkerCCFDatabaseDataSourceService {\n constructor(\n globalConfig: GlobalConfigState,\n private readonly locator: LocationStrategy\n ) {\n super(globalConfig);\n }\n\n protected createWorker(_config: CCFDatabaseOptions): Worker {\n const url = this.getWorkerUrl(true);\n return new Worker(url, { type: 'module' });\n }\n\n private getWorkerUrl(directImport: boolean): string | URL {\n if (directImport) {\n return new URL('./data-source.worker', import.meta.url);\n }\n\n const externalUrl = this.locator.prepareExternalUrl('0-es2015.worker.js');\n const codeBlob = new Blob(\n [`importScripts('${externalUrl}')`],\n { type: 'application/javascript' }\n );\n\n return URL.createObjectURL(codeBlob);\n }\n}\n\n \n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"changelog.html":{"url":"changelog.html","title":"getting-started - changelog","body":"\n \n\nChangelog\nChangelog for the Common Coordinate Framework (CCF) User Interfaces\n3.1.0 - 2022-04-07\nAdded in 3.1.0\n\nAdded support for the latest CCF Ontology v1.8.0 which adds cell types\nAdded feature to search for tissue blocks by cell type\nAdded API feature to dynamically generate GTEx rui_locations.jsonld\nAdded logging of organ and block position changes to the RUI\nAdded an expanded organ selector that makes selecting organs much easier with the larger number of reference organs we have now\nNow generating programming libraries for the CCF-API in Python, TypeScript, TypeScript (Angular), and JavaScript. We will be publishing them to appropriate package managers soon.\nImproved performance of the CCF-API\nNew theming options and toggle for the CCF EUI/RUI\nAdded new themes for SenNet, GTEx, and a default theme\nAdded compodoc generated code documentation to production and staging builds\nBug fixes and minor improvements\n\n3.0.0 - 2022-01-27\nAdded in 3.0.0\n\nAdded support for the latest CCF Ontology v1.7.0\nBug fixes and code cleanup\n\n3.0.0 BETA - 2021-12-17\nAdded in 3.0.0 BETA\n\nAdded reference organs and ASCT+B tables from the v1.1 CCF Release\nLinks: CCF Ontology v1.7 BETA, CCF Release v1.1\n\n\n\nKnown issues in 3.0.0 BETA\n\nPreviously registered tissues may appear slightly off. We are working to rectify this before making it a production release.\n\n2.5.0 - 2021-12-17\nAdded in 2.5.0\n\nCCF-API OpenAPI Spec and implementation. Next version will connect the EUI to this as it's backend.\nAdded the CCF Body UI Web Component for integrating the 3D scene deeply in webpages (including the HuBMAP data portal).\nThe organ-info Web Component can now take an option to highlight specific blocks in the scene. Currently only highlights by providers, but age, sex, and BMI will be added in the next version.\nBug fixes and Quality of Life improvements\n\n2.4.0 - 2021-12-10\nAdded in 2.4.0\n\nRUI shows a confirmation dialog when a user attempts to leave without finishing registration\nAdded GTEx data to EUI\nRUI Common Extraction Sites are now known as Landmarks\nOrgan info now highlights the block selected on click\nUpdated RUI YouTube Demo link\nBug fixes and Quality of Life improvements\n\n2.3.1 - 2021-09-13\nAdded in 2.3.1\n\nAdded support for paired organs to be refernced by their parent (ala Kidney + Left/Right Kidney)\n\n2.3.0 - 2021-09-10\nAdded in 2.3.0\n\nGreatly improved CCF Database performance. This improves the performance in both organ-info and EUI.\nImproved styling of organ-info\n\n2.2.0 - 2021-09-10\nAdded in 2.2.0\n\nAdded an organ-info web component for displaying reference organs and associated data in a simple panel display. The hubmap portal will be using this soon for organ pages.\nEMBEDDING.md instructions have been updated for organ-info embedding.\n\n2.1.0 - 2021-07-30\nAdded in EUI / RUI 2.1.0\n\nBetter support for embedding EUI/RUI in different containers, see EMBEDDING.md for updated instructions.\nConfiguration updates:\nConfiguration of EUI/RUI via webcomponent properties (vs globalConfig)\nOptional use of ontology id to select reference organs in the RUI\nRemoved embedded and tutorial mode configurations from the RUI config\nAbility to load data sources in the eui via external configuration\nAdded cancelRegistration callback to rui external configuration\n\n\nSet dark/light theme based on user/OS preferences\nUpdate HuBMAP search processing to conform to new field names\nCode cleanup, shared utilities, etc.\nTelemetry dialog box fixes to avoid unnecessary reloads\nRUI gizmo rotates in sync with the reference organ in 3D preview view\nRUI now uses an orthographic view when in registration views\n\n2.0.0 - 2021-07-16\nAdded in EUI / RUI 2.0.0\n\nRUI and EUI are now basic web-components, see EMBEDDING.md\nAdded advanced google analytics tracking/telemetry\nLinked donor card and tissue block hovering\nUpdated dependencies, including upgrading to Angular 12\nMinor UI and Bug fixes\nUpdated demo video links\nOrgan carousel will respond to container width and show only full icons\nEUI: clicking refresh and selecting body on partonomy resets the body view\n\nBreaking changes in EUI / RUI 2.0.0\n\nEmbedding the EUI and RUI must now be done via web-components. The most significant change is the element is no longer called ccf-root but is instead called ccf-eui or ccf-rui depending on the UI being embedded.\n\n1.7.0 - 2021-05-21\nAdded in EUI / RUI 1.7.0\n\nAdded a startup modal to the RUI which simplifies the initial setup for a new registration\nAdded 8 new reference organs, bringing us to 13 Reference Organs!\nAdded SPARC Registrations to the EUI\nAdded a tissue section visualization to the results list in the EUI\n\n1.6.0 - 2021-04-09\nAdded in RUI 1.6.0\n\nAdded SOP information to the About section\n\nAdded in EUI 1.6.0\n\nAdded color assignment/selection to both 3d scene and list results\nBug fixes, code cleanup, and optimization\n\nKnown issues in 1.6.0\n\nThe 3d scene is a little slow. To be able to interact, unselect reference organs to reduce scene complexity.\nTissue samples may be a little off in the 3D scene. This will be fixed in a future release. Data is still accurate.\n\n1.5.0 - 2021-03-26\nAdded in RUI 1.5.0\n\nMinor styling updates\n\nAdded in EUI 1.5.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features not fully integrated. This should be resolved in the next release scheduled for April 9th. You can view the results of this sprint on staging.\n\nUpdated styling to better fit the user interface spec\nAdded a new results pane which structures data into Donor->Tissue Blocks (+Datasets)->Tissue Samples (+Datasets)\nAdded a link viewer that allows us to display donors, samples, and datasets in a frame within the application\nAdded UFL thumbnails\nUpdated and optimized the ccf-database for the new results structure and future integrations\nTied organ carousel to the 3D scene. Turning off an organ removes the organ and related tissues from the 3D scene.\nTurned off anatomical structure opacity adjustment until it can be fully integrated\n\n1.4.0 - 2021-03-12\nAdded in RUI 1.4.0\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec\n\nAdded in EUI 1.4.0\nNOTE: EUI will not be pushed to production during this cycle as there are some features partly integrated. This should be resolved in the next release scheduled for March 26th. You can view the results of this sprint on staging.\n\nUpdated library dependencies, including to Angular 11\nUpdated styling to better fit the user interface spec and match RUI styling\nUpdated the Info Dialog to match the RUI look and feel\nUpdated the data processing to improve efficiency and generate data in the form needed for the v1.5.0 spec\nAdded a reference organ selector, also used in the RUI, to turn off/on reference organs on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\nAdded a technology filter\nAdded a control to set Opacities of individual organs/anatomical structures on the stage. UI is implemented, but still needs hooked up to the 3d Stage.\n\n1.3.5 - 2021-02-26\nAdded in RUI 1.3.5\n\nUpdated with a new round of User Interface improvements\nAdded the ability to upload previous registrations created using the standalone version of the RUI tool\nOrgans now have transparency applied automatically\nSolved a major memory leak and performance issue with the 3D reference organ interface. You should notice a sizable speed and reliability increase.\nRUI location numeric data is now rounded to 3 digits\nSwitched to using GitHub Actions over TravisCI for our CI/CD workflows\n\nAdded in EUI 1.3.5\n\nRemoved CCF's internal image-viewer in favor of the image-viewer on the HuBMAP Data Portal\n\nEUI 1.2.0 / RUI 1.0 FINAL - 2020-10-30\nAdded in EUI 1.2.0 / RUI 1.0 FINAL\n\nBug fixes and improvements\nUpdated embedding API in collaboration with the IEC\nUpdated EUI codebase to be in sync with code changes made for the RUI\nAdded KPMP data to the EUI\n\nKnown Issues in EUI 1.2.0 / RUI 1.0 FINAL\n\nIt is still possible that a 3d organ may fail to load. If this happens, just refresh and try again.\nEUI has not been updated with the latest organ set. This will be added in December with its scheduled refresh.\n\nRUI 1.0 BETA - 2020-10-16\nAdded in RUI 1.0 BETA\n\nCreated the first version of the RUI 1.0. This version is a BETA and works in standalone mode only. The next version will include full support and integration into the HuBMAP Ingestion Portal.\n10 Reference Organs are available to choose from (a combination of 4 organs, 2 sexes, and one organ with 2 sides [kidney])\nImplemented automatic tagging of data via collisions with anatomical structures\nRUI Location data is in standard JSON-LD format linked via the CCF Ontology and related ontologies\nImplemented extraction sites display to help guide placement of tissues\n\nKnown Issues in RUI 1.0 BETA\n\nWhile support for embedding is implemented, more testing and collaboration with IEC is required before it is made fully available. Initial embedding documentation is available here.\nWhen adjusting transparency via the left-hand Anatomical Structures menu or Show Previous Registrations option, the transparency effect is not very good. This will be addressed before the RUI 1.0 production release.\nSometimes the 3d organ fails to load when clicking through reference organs quickly (and other side cases). If this happens, just refresh and try again.\n\n1.1.0 - 2020-07-31\nAdded in 1.1.0\n\nUpgraded to latest Vitessce Image Viewer and started showing processed TIFF images coming directly from the HuBMAP infrastructure\nProcessed CODEX and 10x datasets are shown in the HuBMAP Portal's visualization tool\nAdded a limited set of TIFF image thumbnails, with more to come\nAdded two qualitative color schemes for colorizing images in the image viewer\nBug fixes/performance optimizations\n\n1.0.0-rc.1 - 2020-06-22\n\n:warning: WARNING: This version is a release candidate. Some minor updates will likely happen between now and the official HuBMAP Data Release 1 in July.\n\nAdded in 1.0.0-rc.1\n\nBody UI interactions\nImage Viewer Integration\nPartonomy linkage to search / Body UI\nNow fully integrated into the HuBMAP Portal\n\nKnown Issues in 1.0.0-rc.1\n\nImage Viewer is using a placeholder .tiff until more .tiff images can be loaded from the IEC\n\n1.0.0-alpha.3 - 2019-05-08\nAdded in 1.0.0-alpha.3\n\nHooked up the interface to real data (not shown online as the data is not public yet)\nAdded the Tissue Browser on the right\nAdded the initial (Tissue) Image Viewer popup. Currently shows metadata, but no images yet.\nAdded an initial 3D Body. Tissues cuboids currently not displayed, but a test cuboid is shown.\nDocumentation (>90%) and testing coverage improved further\n\n1.0.0-alpha.2 - 2019-03-27\nAdded in 1.0.0-alpha.2\n\nIncreased documentation and testing coverage across the board\nAdded fullscreen button\nBug fixes and optimizations\n\n1.0.0-alpha.1 - 2019-03-06\nAdded in 1.0.0-alpha.1\n\nStarted the process of implementing the 1.0.0 UI spec\nSpec Doc\nUser Stories\n\n\nSetup the base project scaffolding for the new version\nAdded CCF Partonomy (CCF-P) search and tree display\nAdded a filter for filter tissues\n\n0.6.0 - 2019-11-08\nAdded in 0.6.0\n\nThe CCF API project was started with an initial OpenAPI Schema, documentation, and code for spinning up a mock data server. This codifies the CCF data and metadata standards defined by MC-IU and will be used by the CCF EUI and RUI.\nIn preparation for future developments, we added a hidden, alpha-level 3d organ viewer. You can toggle this on and off in the organ view, by typing 3d with your keyboard.\nUpdated navigation to directly jump to the tissue browser when a user selects an item from the search box\nUpgraded dependencies, including upgrades to Angular 8\nTesting and bug fixes\nMinor UI updates\nChanged download icon color\nChanged the background color for the search\nMoved the Technologies filter above ontology\nAdditional styles for details button\n\n\n\n0.5.0 - 2019-05-24\nAdded in 0.5.0\n\nDisplay of the CCF ontology, integrated with search\nSemantic search by ontology, results are presented at all levels\nTissue overlays showing regions of interest\nData download links to direct users to https://sampledata.hubmapconsortium.org\nData documentation (95% coverage) and testing (85% coverage)\n\n0.2.0 - 2019-05-03\nAdded in 0.2.0\n\nSprint 2 release of the CCF-UI!\nA search interface was added to query data by age, sex, technology and TMC. Ontological search will be implemented in the next sprint.\nBody, Organ, and Tissue views now respond to updates to the search on the fly\nAppropriate metadata is now displayed in the Body, Organ, Tissue, and Cell views\n\n0.1.0 - 2019-04-12\nAdded in 0.1.0\n\nSprint 1 release of the CCF-UI!\nSetup the base project scaffolding\nAdded a sample database that includes initial data provided by VU\nAdded Visual browsing of tissue samples and metadata at the whole body, organ, tissue, and cell level\nStay tuned! More features coming in Sprint 2 (starts next week!) and Sprint 3\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"coverage.html":{"url":"coverage.html","title":"coverage - coverage","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n Documentation coverage\n\n\n\n \n\n\n\n \n \n File\n Type\n Identifier\n Statements\n \n \n \n \n \n \n projects/ccf-eui/src/app/app-web-component.component.ts\n \n component\n AppWebComponent\n \n 0 %\n (0/16)\n \n \n \n \n \n projects/ccf-eui/src/app/app-web-component.component.ts\n \n function\n parseDataSources\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/app.component.ts\n \n component\n AppComponent\n \n 48 %\n (14/29)\n \n \n \n \n \n projects/ccf-eui/src/app/app.component.ts\n \n interface\n AppOptions\n \n 0 %\n (0/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/header/header.component.ts\n \n component\n HeaderComponent\n \n 75 %\n (6/8)\n \n \n \n \n \n projects/ccf-eui/src/app/core/models/flat-node.ts\n \n class\n FlatNode\n \n 50 %\n (3/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/models/list-result.ts\n \n interface\n ListResult\n \n 0 %\n (0/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/models/ontology-selection.ts\n \n interface\n OntologySelection\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/app-root-overlay/app-root-overlay.service.ts\n \n injectable\n AppRootOverlayContainer\n \n 0 %\n (0/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n injectable\n DelegateDataSourceService\n \n 0 %\n (0/2)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.service.ts\n \n interface\n DelegateDataSourceOptions\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/data-source.worker.ts\n \n variable\n database\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/data-source/worker-data-source.service.ts\n \n injectable\n WorkerDataSourceService\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n injectable\n OntologySearchService\n \n 72 %\n (8/11)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/ontology-search/ontology-search.service.ts\n \n interface\n SearchResult\n \n 100 %\n (4/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n injectable\n ThemingService\n \n 83 %\n (10/12)\n \n \n \n \n \n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n variable\n DEFAULT_THEME\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n injectable\n ColorAssignmentState\n \n 12 %\n (1/8)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n interface\n Color\n \n 0 %\n (0/4)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n interface\n ColorAssignmentStateModel\n \n 0 %\n (0/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n variable\n DEFAULT_COLOR_PALETTE\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n injectable\n DataState\n \n 97 %\n (35/36)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n interface\n DataStateModel\n \n 100 %\n (2/2)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n function\n allCompleted\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n function\n queryData\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n function\n sendCompletedTo\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n variable\n DEFAULT_FILTER\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n interface\n DefaultIconDefinition\n \n 100 %\n (5/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n variable\n DEFAULT_ICONS\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n injectable\n IconRegistryState\n \n 100 %\n (6/6)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/icon-registry/icon-registry.state.ts\n \n interface\n IconDefinition\n \n 100 %\n (5/5)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n injectable\n ListResultsState\n \n 50 %\n (6/12)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/list-results/list-results.state.ts\n \n interface\n ListResultsStateModel\n \n 0 %\n (0/3)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n injectable\n SceneState\n \n 75 %\n (12/16)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n interface\n SceneStateModel\n \n 0 %\n (0/7)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n variable\n DEFAULT_SELECTED_ORGANS\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/core/store/store.module.ts\n \n variable\n ROOT_STATES\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/filters/filters-content/filters-content.component.ts\n \n component\n FiltersContentComponent\n \n 100 %\n (11/11)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/filters/filters-popover/filters-popover.component.ts\n \n component\n FiltersPopoverComponent\n \n 100 %\n (10/10)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-search/ontology-search.component.ts\n \n component\n OntologySearchComponent\n \n 92 %\n (12/13)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-selection/ontology-selection.component.ts\n \n component\n OntologySelectionComponent\n \n 76 %\n (10/13)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n component\n OntologyTreeComponent\n \n 86 %\n (32/37)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n variable\n getLevel\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n variable\n isExpandable\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/results-browser/donor-card/donor-card.component.ts\n \n component\n DonorCardComponent\n \n 93 %\n (14/15)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/results-browser/results-browser/results-browser.component.ts\n \n component\n ResultsBrowserComponent\n \n 66 %\n (12/18)\n \n \n \n \n \n projects/ccf-eui/src/app/modules/results-browser/tissue-section-vis/tissue-section-vis.component.ts\n \n component\n TissueSectionVisComponent\n \n 83 %\n (5/6)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/checkbox/checkbox.component.ts\n \n component\n CheckboxComponent\n \n 100 %\n (8/8)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n \n component\n ContainerComponent\n \n 100 %\n (13/13)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n \n function\n throwDuplicateDrawersError\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/content/content.component.ts\n \n component\n ContentComponent\n \n 100 %\n (18/18)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n component\n DrawerComponent\n \n 95 %\n (42/44)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n class\n InitializationState\n \n 100 %\n (7/7)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n variable\n EXPAND_COLLAPSE_PARAMS_DEFAULT\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n ContentContainerChanged\n \n 100 %\n (3/3)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n DrawerContainersChanged\n \n 100 %\n (3/3)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n DrawerInitialized\n \n 100 %\n (2/2)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n interface\n DrawerToggled\n \n 100 %\n (6/6)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n variable\n MessageService\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/toggle-button/toggle-button.component.ts\n \n component\n ToggleButtonComponent\n \n 100 %\n (12/12)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/dropdown/dropdown.component.ts\n \n component\n DropdownComponent\n \n 100 %\n (9/9)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/dual-slider/dual-slider.component.ts\n \n component\n DualSliderComponent\n \n 100 %\n (26/26)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/spinner-overlay/spinner-overlay.component.ts\n \n component\n SpinnerOverlayComponent\n \n 100 %\n (5/5)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n \n component\n ThumbnailCarouselComponent\n \n 100 %\n (9/9)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n \n variable\n nextUid\n \n 0 %\n (0/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/viewer/viewer.component.ts\n \n component\n ViewerComponent\n \n 20 %\n (2/10)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n class\n MessageChannel\n \n 100 %\n (8/8)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n injectable\n MessageService\n \n 100 %\n (6/6)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n interface\n Message\n \n 100 %\n (4/4)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n interface\n MessageServiceConfig\n \n 100 %\n (2/2)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n variable\n MESSAGE_SERVICE_CONFIG\n \n 100 %\n (1/1)\n \n \n \n \n \n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n variable\n MESSAGE_SERVICE_DEFAULT_CONFIG\n \n 100 %\n (1/1)\n \n \n \n\n\n\n\n\n new Tablesort(document.getElementById('coverage-table'));\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"dependencies.html":{"url":"dependencies.html","title":"package-dependencies - dependencies","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n Dependencies\n \n \n \n @angular-ru/common : ^15.126.1\n \n @angular/animations : ^12.1.1\n \n @angular/cdk : ^12.1.1\n \n @angular/common : ^12.1.1\n \n @angular/compiler : ^12.1.1\n \n @angular/core : ^12.1.1\n \n @angular/elements : ^12.1.1\n \n @angular/forms : ^12.1.1\n \n @angular/material : ^12.1.3\n \n @angular/platform-browser : ^12.1.1\n \n @angular/platform-browser-dynamic : ^12.1.1\n \n @angular/router : ^12.1.1\n \n @angular/youtube-player : ^12.1.1\n \n @deck.gl/core : ^8.5.7\n \n @deck.gl/geo-layers : ^8.5.7\n \n @deck.gl/layers : ^8.5.7\n \n @deck.gl/mesh-layers : ^8.5.7\n \n @loaders.gl/core : ^3.0.12\n \n @loaders.gl/draco : ^3.0.12\n \n @loaders.gl/gltf : ^3.0.12\n \n @luma.gl/core : ^8.5.7\n \n @math.gl/core : ^3.5.5\n \n @ngxs-labs/data : ^6.2.0\n \n @ngxs/logger-plugin : ^3.7.1\n \n @ngxs/storage-plugin : ^3.7.1\n \n @ngxs/store : ^3.7.1\n \n @rdfjs/data-model : ^1.2.0\n \n @types/lru-cache : ^5.1.1\n \n @webcomponents/webcomponentsjs : ^2.5.0\n \n bind-decorator : ^1.0.11\n \n body-parser : ^1.19.0\n \n cannon-es : ^0.18.0\n \n comlink : ^4.3.0\n \n concat : ^1.0.3\n \n cors : ^2.8.5\n \n css-element-queries : ^1.2.3\n \n document-register-element : ^1.7.2\n \n dotenv : ^10.0.0\n \n express : ^4.17.1\n \n file-saver : ^2.0.5\n \n fs-extra : ^10.0.0\n \n graphology : ^0.20.0\n \n graphology-shortest-path : ^1.4.1\n \n helmet : ^4.6.0\n \n hex-rgb : ^5.0.0\n \n idb-keyval : ^6.0.1\n \n jsonld : ^5.2.0\n \n lodash : ^4.17.21\n \n lru-cache : ^6.0.0\n \n n3 : ^1.8.1\n \n ng5-slider : ^1.2.6\n \n ngx-google-analytics : ^11.2.1\n \n ngx-markdown : ^12.0.1\n \n node-fetch : ^2.6.7\n \n qs : ^6.10.2\n \n rdf-literal : ^1.2.0\n \n rdfxml-streaming-parser : ^1.4.0\n \n readable-stream : ^3.6.0\n \n rxjs : ^6.6.7\n \n stream-browserify : ^3.0.0\n \n swiper : ^6.5.1\n \n ts-cacheable : ^1.0.6\n \n tslib : ^2.1.0\n \n uuid : ^8.3.2\n \n zone.js : ~0.11.4\n \n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/enumerations.html":{"url":"miscellaneous/enumerations.html","title":"miscellaneous-enumerations - enumerations","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Enumerations\n\n\n\n Index\n \n \n \n \n \n \n DataQueryState   (projects/.../data.state.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n \n \n \n \n \n DataQueryState\n \n \n \n \n Current state of data queries.\n\n \n \n \n \n  Running\n \n \n \n \n Value : running\n \n \n \n \n  Completed\n \n \n \n \n Value : completed\n \n \n \n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/functions.html":{"url":"miscellaneous/functions.html","title":"miscellaneous-functions - functions","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Functions\n\n\n\n Index\n \n \n \n \n \n \n allCompleted   (projects/.../data.state.ts)\n \n \n parseDataSources   (projects/.../app-web-component.component.ts)\n \n \n queryData   (projects/.../data.state.ts)\n \n \n sendCompletedTo   (projects/.../data.state.ts)\n \n \n throwDuplicateDrawersError   (projects/.../container.component.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n \n \n \n \n \n \n allCompleted\n \n \n \n \n \n \nallCompleted(states)\n \n \n\n\n\n\n \n \n Helper for testing that all states in an array are DataQueryState.Completed.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n states\n\n \n No\n \n\n\n \n The array of states to test.\n\n \n \n \n \n \n \n \n \n Returns : boolean\n\n \n \n true if all values in the array is Completed.\n\n \n \n \n \n \n \n \n \n \n \n \n queryData\n \n \n \n \n \n \nqueryData(query, next?)\n \n \n\n\n\n\n \n \n Helper operator that combines querying with sharing and replay functionality.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n query\n\n \n No\n \n\n\n \n The data query function.\n\n \n \n \n next\n\n \n Yes\n \n\n\n \n An optional listener on the values emitted by the latest query.\n\n \n \n \n \n \n \n \n \n Returns : OperatorFunction>\n\n \n \n The combined pipe operator function.\n\n \n \n \n \n \n \n \n \n \n \n \n sendCompletedTo\n \n \n \n \n \n \nsendCompletedTo(subject)\n \n \n\n\n\n\n \n \n Helper creating a function that sends a DataQueryState.Completed to\na subject whenever it is called.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n subject\n\n \n No\n \n\n\n \n The subject to send completed messagess to.\n\n \n \n \n \n \n \n \n \n Returns : void\n\n \n \n The function.\n\n \n \n \n \n \n projects/ccf-eui/src/app/app-web-component.component.ts\n \n \n \n \n \n \n \n parseDataSources\n \n \n \n \n \n \nparseDataSources(value)\n \n \n\n\n\n\n \n \n\n \n Parameters :\n \n \n \n Name\n Optional\n \n \n \n \n value\n\n \n No\n \n\n\n \n \n \n \n \n \n \n Returns : string[]\n\n \n \n \n \n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/container/container.component.ts\n \n \n \n \n \n \n \n throwDuplicateDrawersError\n \n \n \n \n \n \nthrowDuplicateDrawersError(position)\n \n \n\n\n\n\n \n \n Helper function for creating drawer errors.\n\n\n \n Parameters :\n \n \n \n Name\n Optional\n Description\n \n \n \n \n position\n\n \n No\n \n\n\n \n The position of the drawer.\n\n \n \n \n \n \n \n \n \n Returns : never\n\n \n \n \n \n \n \n \n \n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"index.html":{"url":"index.html","title":"getting-started - index","body":"\n \n\nCommon Coordinate Framework (CCF) - User Interfaces\n\n\n\n\n\n\n\nThis repository is a monorepo (multiple projects in one repository) containing the software to build the CCF-EUI, CCF-RUI, and CCF-Organ-Info.\nWebsite Links\n\nCCF Exploration User Interface (CCF-EUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app\nProduction: https://portal.hubmapconsortium.org/ccf-eui\nProduction (alt): https://hubmapconsortium.github.io/ccf-ui/\nStaging: https://hubmap-ccf-ui.netlify.app/\nOld Version 0.6.0: https://old--hubmap-ccf-ui.netlify.app\n\n\nCCF Registration User Interface (CCF-RUI)\n:star2: 3.0 BETA: https://beta--hubmap-ccf-ui.netlify.app/rui/\nProduction: https://hubmapconsortium.github.io/ccf-ui/rui/\nStaging: https://hubmap-ccf-ui.netlify.app/rui/\n\n\nCCF Organ Info Component (CCF-Organ-Info)\nProduction: https://hubmapconsortium.github.io/ccf-ui/organ-info/\nStaging: https://hubmap-ccf-ui.netlify.app/organ-info/\n\n\n\nBackground and More Information\nFor more information about the Common Coordinate Framework (CCF), see the HuBMAP CCF Portal at https://hubmapconsortium.github.io/ccf/.\nChange Log\nSee the ChangeLog for the latest developments.\nCredits\nThis software is developed by the Cyberinfrastructure for Network Science Center at Indiana University. It is funded by NIH Award OT2OD026671.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"license.html":{"url":"license.html","title":"getting-started - license","body":"\n \n\nMIT License\nCopyright (c) 2019 HuBMAP Consortium\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"modules.html":{"url":"modules.html","title":"modules - modules","body":"\n \n\n\n\n\n Modules\n\n\n \n \n \n \n AppModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CheckboxModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n CoreModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DonorCardModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DrawerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DropdownModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n DualSliderModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n FiltersContentModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n FiltersPopoverModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n HeaderModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologyExplorationModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologySearchModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologySelectionModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n OntologyTreeModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n ResultsBrowserModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n SpinnerOverlayModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n StoreModule\n \n \n \n No graph available.\n \n \n Browse\n \n \n \n \n \n \n \n ThemingModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n ThumbnailCarouselModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n TissueSectionVisModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n \n \n ViewerModule\n \n \n \n \n Your browser does not support SVG\n \n \n \n Browse\n \n \n \n \n \n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"overview.html":{"url":"overview.html","title":"overview - overview","body":"\n \n\n\n\n Overview\n\n \n\n \n \n\n\n\n\n\ndependencies\n\ndependencies\n\ncluster_AppModule\n\n\n\ncluster_AppModule_declarations\n\n\n\ncluster_AppModule_imports\n\n\n\ncluster_CheckboxModule\n\n\n\ncluster_CheckboxModule_declarations\n\n\n\ncluster_CheckboxModule_exports\n\n\n\ncluster_CoreModule\n\n\n\ncluster_CoreModule_imports\n\n\n\ncluster_CoreModule_exports\n\n\n\ncluster_DonorCardModule\n\n\n\ncluster_DonorCardModule_declarations\n\n\n\ncluster_DonorCardModule_imports\n\n\n\ncluster_DonorCardModule_exports\n\n\n\ncluster_DrawerModule\n\n\n\ncluster_DrawerModule_declarations\n\n\n\ncluster_DrawerModule_exports\n\n\n\ncluster_DropdownModule\n\n\n\ncluster_DropdownModule_declarations\n\n\n\ncluster_DropdownModule_exports\n\n\n\ncluster_DualSliderModule\n\n\n\ncluster_DualSliderModule_declarations\n\n\n\ncluster_DualSliderModule_exports\n\n\n\ncluster_FiltersContentModule\n\n\n\ncluster_FiltersContentModule_declarations\n\n\n\ncluster_FiltersContentModule_exports\n\n\n\ncluster_FiltersPopoverModule\n\n\n\ncluster_FiltersPopoverModule_declarations\n\n\n\ncluster_FiltersPopoverModule_exports\n\n\n\ncluster_HeaderModule\n\n\n\ncluster_HeaderModule_declarations\n\n\n\ncluster_HeaderModule_exports\n\n\n\ncluster_OntologyExplorationModule\n\n\n\ncluster_OntologyExplorationModule_imports\n\n\n\ncluster_OntologyExplorationModule_exports\n\n\n\ncluster_OntologySearchModule\n\n\n\ncluster_OntologySearchModule_declarations\n\n\n\ncluster_OntologySearchModule_exports\n\n\n\ncluster_OntologySelectionModule\n\n\n\ncluster_OntologySelectionModule_declarations\n\n\n\ncluster_OntologySelectionModule_OntologySelectionComponent_providers\n\n\n\ncluster_OntologySelectionModule_exports\n\n\n\ncluster_OntologyTreeModule\n\n\n\ncluster_OntologyTreeModule_declarations\n\n\n\ncluster_OntologyTreeModule_exports\n\n\n\ncluster_ResultsBrowserModule\n\n\n\ncluster_ResultsBrowserModule_declarations\n\n\n\ncluster_ResultsBrowserModule_exports\n\n\n\ncluster_SpinnerOverlayModule\n\n\n\ncluster_SpinnerOverlayModule_declarations\n\n\n\ncluster_SpinnerOverlayModule_exports\n\n\n\ncluster_ThemingModule\n\n\n\ncluster_ThemingModule_providers\n\n\n\ncluster_ThumbnailCarouselModule\n\n\n\ncluster_ThumbnailCarouselModule_declarations\n\n\n\ncluster_ThumbnailCarouselModule_exports\n\n\n\ncluster_TissueSectionVisModule\n\n\n\ncluster_TissueSectionVisModule_declarations\n\n\n\ncluster_TissueSectionVisModule_exports\n\n\n\ncluster_ViewerModule\n\n\n\ncluster_ViewerModule_declarations\n\n\n\ncluster_ViewerModule_exports\n\n\n\n\nAppComponent\n\nAppComponent\n\n\n\nAppModule\n\nAppModule\n\nAppModule -->\n\nAppComponent->AppModule\n\n\n\n\n\nAppWebComponent\n\nAppWebComponent\n\nAppModule -->\n\nAppWebComponent->AppModule\n\n\n\n\n\nCoreModule\n\nCoreModule\n\nAppModule -->\n\nCoreModule->AppModule\n\n\n\n\n\nHeaderModule \n\nHeaderModule \n\nHeaderModule -->\n\nCoreModule->HeaderModule \n\n\n\n\n\nDrawerModule\n\nDrawerModule\n\nAppModule -->\n\nDrawerModule->AppModule\n\n\n\n\n\nContainerComponent \n\nContainerComponent \n\nContainerComponent -->\n\nDrawerModule->ContainerComponent \n\n\n\n\n\nContentComponent \n\nContentComponent \n\nContentComponent -->\n\nDrawerModule->ContentComponent \n\n\n\n\n\nDrawerComponent \n\nDrawerComponent \n\nDrawerComponent -->\n\nDrawerModule->DrawerComponent \n\n\n\n\n\nToggleButtonComponent \n\nToggleButtonComponent \n\nToggleButtonComponent -->\n\nDrawerModule->ToggleButtonComponent \n\n\n\n\n\nDualSliderModule\n\nDualSliderModule\n\nAppModule -->\n\nDualSliderModule->AppModule\n\n\n\n\n\nDualSliderComponent \n\nDualSliderComponent \n\nDualSliderComponent -->\n\nDualSliderModule->DualSliderComponent \n\n\n\n\n\nFiltersContentModule\n\nFiltersContentModule\n\nFiltersContentModule -->\n\nDualSliderModule->FiltersContentModule\n\n\n\n\n\nFiltersPopoverModule\n\nFiltersPopoverModule\n\nAppModule -->\n\nFiltersPopoverModule->AppModule\n\n\n\n\n\nFiltersPopoverComponent \n\nFiltersPopoverComponent \n\nFiltersPopoverComponent -->\n\nFiltersPopoverModule->FiltersPopoverComponent \n\n\n\n\n\nOntologyExplorationModule\n\nOntologyExplorationModule\n\nAppModule -->\n\nOntologyExplorationModule->AppModule\n\n\n\n\n\nOntologySearchModule \n\nOntologySearchModule \n\nOntologySearchModule -->\n\nOntologyExplorationModule->OntologySearchModule \n\n\n\n\n\nOntologySelectionModule \n\nOntologySelectionModule \n\nOntologySelectionModule -->\n\nOntologyExplorationModule->OntologySelectionModule \n\n\n\n\n\nOntologyTreeModule \n\nOntologyTreeModule \n\nOntologyTreeModule -->\n\nOntologyExplorationModule->OntologyTreeModule \n\n\n\n\n\nResultsBrowserModule\n\nResultsBrowserModule\n\nAppModule -->\n\nResultsBrowserModule->AppModule\n\n\n\n\n\nResultsBrowserComponent \n\nResultsBrowserComponent \n\nResultsBrowserComponent -->\n\nResultsBrowserModule->ResultsBrowserComponent \n\n\n\n\n\nSpinnerOverlayModule\n\nSpinnerOverlayModule\n\nAppModule -->\n\nSpinnerOverlayModule->AppModule\n\n\n\n\n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent \n\nSpinnerOverlayComponent -->\n\nSpinnerOverlayModule->SpinnerOverlayComponent \n\n\n\n\n\nViewerModule\n\nViewerModule\n\nAppModule -->\n\nViewerModule->AppModule\n\n\n\n\n\nViewerComponent \n\nViewerComponent \n\nViewerComponent -->\n\nViewerModule->ViewerComponent \n\n\n\n\n\nCheckboxComponent\n\nCheckboxComponent\n\n\n\nCheckboxModule\n\nCheckboxModule\n\nCheckboxModule -->\n\nCheckboxComponent->CheckboxModule\n\n\n\n\n\nCheckboxComponent \n\nCheckboxComponent \n\nCheckboxComponent -->\n\nCheckboxModule->CheckboxComponent \n\n\n\nFiltersContentModule -->\n\nCheckboxModule->FiltersContentModule\n\n\n\n\n\nHeaderModule\n\nHeaderModule\n\nCoreModule -->\n\nHeaderModule->CoreModule\n\n\n\n\n\nHeaderComponent \n\nHeaderComponent \n\nHeaderComponent -->\n\nHeaderModule->HeaderComponent \n\n\n\n\n\nStoreModule\n\nStoreModule\n\nCoreModule -->\n\nStoreModule->CoreModule\n\n\n\n\n\nThemingModule\n\nThemingModule\n\nCoreModule -->\n\nThemingModule->CoreModule\n\n\n\n\n\nDonorCardComponent\n\nDonorCardComponent\n\n\n\nDonorCardModule\n\nDonorCardModule\n\nDonorCardModule -->\n\nDonorCardComponent->DonorCardModule\n\n\n\nResultsBrowserModule -->\n\nDonorCardModule->ResultsBrowserModule\n\n\n\n\n\nDonorCardComponent \n\nDonorCardComponent \n\nDonorCardComponent -->\n\nDonorCardModule->DonorCardComponent \n\n\n\n\n\nThumbnailCarouselModule\n\nThumbnailCarouselModule\n\nDonorCardModule -->\n\nThumbnailCarouselModule->DonorCardModule\n\n\n\n\n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent \n\nThumbnailCarouselComponent -->\n\nThumbnailCarouselModule->ThumbnailCarouselComponent \n\n\n\n\n\nTissueSectionVisModule\n\nTissueSectionVisModule\n\nDonorCardModule -->\n\nTissueSectionVisModule->DonorCardModule\n\n\n\n\n\nTissueSectionVisComponent \n\nTissueSectionVisComponent \n\nTissueSectionVisComponent -->\n\nTissueSectionVisModule->TissueSectionVisComponent \n\n\n\n\n\nContainerComponent\n\nContainerComponent\n\nDrawerModule -->\n\nContainerComponent->DrawerModule\n\n\n\n\n\nContentComponent\n\nContentComponent\n\nDrawerModule -->\n\nContentComponent->DrawerModule\n\n\n\n\n\nDrawerComponent\n\nDrawerComponent\n\nDrawerModule -->\n\nDrawerComponent->DrawerModule\n\n\n\n\n\nToggleButtonComponent\n\nToggleButtonComponent\n\nDrawerModule -->\n\nToggleButtonComponent->DrawerModule\n\n\n\n\n\nDropdownComponent\n\nDropdownComponent\n\n\n\nDropdownModule\n\nDropdownModule\n\nDropdownModule -->\n\nDropdownComponent->DropdownModule\n\n\n\n\n\nDropdownComponent \n\nDropdownComponent \n\nDropdownComponent -->\n\nDropdownModule->DropdownComponent \n\n\n\nFiltersContentModule -->\n\nDropdownModule->FiltersContentModule\n\n\n\n\n\nDualSliderComponent\n\nDualSliderComponent\n\nDualSliderModule -->\n\nDualSliderComponent->DualSliderModule\n\n\n\n\n\nFiltersContentComponent\n\nFiltersContentComponent\n\nFiltersContentModule -->\n\nFiltersContentComponent->FiltersContentModule\n\n\n\nFiltersPopoverModule -->\n\nFiltersContentModule->FiltersPopoverModule\n\n\n\n\n\nFiltersContentComponent \n\nFiltersContentComponent \n\nFiltersContentComponent -->\n\nFiltersContentModule->FiltersContentComponent \n\n\n\n\n\nFiltersPopoverComponent\n\nFiltersPopoverComponent\n\nFiltersPopoverModule -->\n\nFiltersPopoverComponent->FiltersPopoverModule\n\n\n\n\n\nHeaderComponent\n\nHeaderComponent\n\nHeaderModule -->\n\nHeaderComponent->HeaderModule\n\n\n\n\n\nOntologySearchModule\n\nOntologySearchModule\n\nOntologyExplorationModule -->\n\nOntologySearchModule->OntologyExplorationModule\n\n\n\n\n\nOntologySelectionModule\n\nOntologySelectionModule\n\nOntologySelectionModule -->\n\nOntologySearchModule->OntologySelectionModule\n\n\n\n\n\nOntologySearchComponent \n\nOntologySearchComponent \n\nOntologySearchComponent -->\n\nOntologySearchModule->OntologySearchComponent \n\n\n\nOntologyExplorationModule -->\n\nOntologySelectionModule->OntologyExplorationModule\n\n\n\n\n\nOntologySelectionComponent \n\nOntologySelectionComponent \n\nOntologySelectionComponent -->\n\nOntologySelectionModule->OntologySelectionComponent \n\n\n\n\n\nOntologyTreeModule\n\nOntologyTreeModule\n\nOntologyExplorationModule -->\n\nOntologyTreeModule->OntologyExplorationModule\n\n\n\nOntologySelectionModule -->\n\nOntologyTreeModule->OntologySelectionModule\n\n\n\n\n\nOntologyTreeComponent \n\nOntologyTreeComponent \n\nOntologyTreeComponent -->\n\nOntologyTreeModule->OntologyTreeComponent \n\n\n\n\n\nOntologySearchComponent\n\nOntologySearchComponent\n\nOntologySearchModule -->\n\nOntologySearchComponent->OntologySearchModule\n\n\n\n\n\nOntologySelectionComponent\n\nOntologySelectionComponent\n\nOntologySelectionModule -->\n\nOntologySelectionComponent->OntologySelectionModule\n\n\n\n\n\nOntologySearchService\n\nOntologySearchService\n\nOntologySelectionComponent -->\n\nOntologySearchService->OntologySelectionComponent\n\n\n\n\n\nOntologyTreeComponent\n\nOntologyTreeComponent\n\nOntologyTreeModule -->\n\nOntologyTreeComponent->OntologyTreeModule\n\n\n\n\n\nResultsBrowserComponent\n\nResultsBrowserComponent\n\nResultsBrowserModule -->\n\nResultsBrowserComponent->ResultsBrowserModule\n\n\n\n\n\nSpinnerOverlayComponent\n\nSpinnerOverlayComponent\n\nSpinnerOverlayModule -->\n\nSpinnerOverlayComponent->SpinnerOverlayModule\n\n\n\n\n\nThemingService\n\nThemingService\n\nThemingModule -->\n\nThemingService->ThemingModule\n\n\n\n\n\nThumbnailCarouselComponent\n\nThumbnailCarouselComponent\n\nThumbnailCarouselModule -->\n\nThumbnailCarouselComponent->ThumbnailCarouselModule\n\n\n\n\n\nTissueSectionVisComponent\n\nTissueSectionVisComponent\n\nTissueSectionVisModule -->\n\nTissueSectionVisComponent->TissueSectionVisModule\n\n\n\n\n\nViewerComponent\n\nViewerComponent\n\nViewerModule -->\n\nViewerComponent->ViewerModule\n\n\n\n\n\n\n \n \n \n Zoom in\n Reset\n Zoom out\n \n\n \n\n \n \n \n \n \n \n 21 Modules\n \n \n \n \n \n \n \n \n 21 Components\n \n \n \n \n \n \n \n 11 Injectables\n \n \n \n \n \n \n \n 3 Classes\n \n \n \n \n \n \n \n 18 Interfaces\n \n \n \n \n\n\n \n\n\n\n\n\n\n\n\n\n\n\n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/typealiases.html":{"url":"miscellaneous/typealiases.html","title":"miscellaneous-typealiases - typealiases","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Type aliases\n\n\n\n Index\n \n \n \n \n \n \n ContainerPayload   (projects/.../messages.ts)\n \n \n DrawerPayload   (projects/.../messages.ts)\n \n \n ExpandedState   (projects/.../drawer.component.ts)\n \n \n ExpandedState2   (projects/.../drawer.component.ts)\n \n \n GetChildrenFunc   (projects/.../ontology-tree.component.ts)\n \n \n Message   (projects/.../messages.ts)\n \n \n MessageChannel   (projects/.../messages.ts)\n \n \n MessageService   (projects/.../messages.ts)\n \n \n OpenedState   (projects/.../drawer.component.ts)\n \n \n Payload   (projects/.../messages.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n \n \n \n \n \n ContainerPayload\n \n \n \n \n Payload types for messages sent from the drawer container.\n\n \n \n \n \n ContentContainerChanged | DrawerContainersChanged\n\n \n \n \n \n \n \n \n \n \n DrawerPayload\n \n \n \n \n Payload types for messages sent from the drawers.\n\n \n \n \n \n DrawerToggled | DrawerInitialized\n\n \n \n \n \n \n \n \n \n \n Message\n \n \n \n \n Specific message type.\n\n \n \n \n \n GenericMessage\n\n \n \n \n \n \n \n \n \n \n MessageChannel\n \n \n \n \n Specific channel type.\n\n \n \n \n \n GenericMessageChannel\n\n \n \n \n \n \n \n \n \n \n MessageService\n \n \n \n \n Specific service type.\n\n \n \n \n \n GenericMessageService\n\n \n \n \n \n \n \n \n \n \n Payload\n \n \n \n \n Combined payload type for all drawer sub components.\n\n \n \n \n \n ContainerPayload | DrawerPayload\n\n \n \n \n \n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n \n \n \n \n \n ExpandedState\n \n \n \n \n Expanded/collapsed state.\n\n \n \n \n \n \"open\" | \"open-instant\" | \"closed\"\n\n \n \n \n \n \n \n \n \n \n ExpandedState2\n \n \n \n \n Expanded state relative to an opposite drawer.\n\n \n \n \n \n \"collapsed\" | \"half\" | \"extended\" | \"full\"\n\n \n \n \n \n \n \n \n \n \n OpenedState\n \n \n \n \n Opened/closed state.\n\n \n \n \n \n \"open\" | \"open-instant\" | \"closed\"\n\n \n \n \n \n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n \n \n \n \n \n GetChildrenFunc\n \n \n \n \n Type of function for getting child nodes from a parent node.\n\n \n \n \n \n function\n\n \n \n \n \n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"},"miscellaneous/variables.html":{"url":"miscellaneous/variables.html","title":"miscellaneous-variables - variables","body":"\n \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n \n\n\n Miscellaneous\n Variables\n\n\n\n Index\n \n \n \n \n \n \n database   (projects/.../data-source.worker.ts)\n \n \n DEFAULT_COLOR_PALETTE   (projects/.../color-assignment.state.ts)\n \n \n DEFAULT_FILTER   (projects/.../data.state.ts)\n \n \n DEFAULT_ICONS   (projects/.../default-icons.ts)\n \n \n DEFAULT_SELECTED_ORGANS   (projects/.../scene.state.ts)\n \n \n DEFAULT_THEME   (projects/.../theming.service.ts)\n \n \n EXPAND_COLLAPSE_PARAMS_DEFAULT   (projects/.../drawer.component.ts)\n \n \n getLevel   (projects/.../ontology-tree.component.ts)\n \n \n isExpandable   (projects/.../ontology-tree.component.ts)\n \n \n MESSAGE_SERVICE_CONFIG   (projects/.../message.service.ts)\n \n \n MESSAGE_SERVICE_DEFAULT_CONFIG   (projects/.../message.service.ts)\n \n \n MessageService   (projects/.../messages.ts)\n \n \n nextUid   (projects/.../thumbnail-carousel.component.ts)\n \n \n ROOT_STATES   (projects/.../store.module.ts)\n \n \n \n \n \n \n\n\n projects/ccf-eui/src/app/core/services/data-source/data-source.worker.ts\n \n \n \n \n \n \n \n database\n \n \n \n \n \n \n Default value : new CCFDatabase()\n \n \n\n \n \n Worker thread database.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/core/store/color-assignment/color-assignment.state.ts\n \n \n \n \n \n \n \n DEFAULT_COLOR_PALETTE\n \n \n \n \n \n \n Type : Color[]\n\n \n \n \n \n Default value : [\n '#FF8800',\n '#2979ff',\n '#ffd740',\n '#b92dff',\n '#da326f',\n '#7323e2',\n '#acf32b',\n '#82B1FF',\n '#E040FB',\n '#00E5FF'\n].map((color, rank) => {\n const rgba = hexRgb(color, { format: 'array' });\n rgba[3] = 255; // for Deck.gl\n return { color, rgba, rank };\n})\n \n \n\n\n \n \n\n projects/ccf-eui/src/app/core/store/data/data.state.ts\n \n \n \n \n \n \n \n DEFAULT_FILTER\n \n \n \n \n \n \n Type : Filter\n\n \n \n \n \n Default value : {\n sex: 'Both',\n ageRange: [1, 110],\n bmiRange: [13, 83],\n tmc: [],\n technologies: [],\n ontologyTerms: ['http://purl.obolibrary.org/obo/UBERON_0013702'],\n cellTypeTerms: ['http://purl.obolibrary.org/obo/CL_0000000']\n}\n \n \n\n \n \n Default values for filters.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/core/store/icon-registry/default-icons.ts\n \n \n \n \n \n \n \n DEFAULT_ICONS\n \n \n \n \n \n \n Type : DefaultIconDefinition[]\n\n \n \n \n \n Default value : [\n // Reference Organs\n { name: 'bladder', namespace: 'app', url: 'assets/icons/organs/ico-organs-bladder.svg' },\n { name: 'blood', namespace: 'app', url: 'assets/icons/organs/ico-organs-blood.svg' },\n { name: 'bone-marrow', namespace: 'app', url: 'assets/icons/organs/ico-organs-bone-marrow.svg' },\n { name: 'brain', namespace: 'app', url: 'assets/icons/organs/ico-organs-brain.svg' },\n { name: 'eye', namespace: 'app', url: 'assets/icons/organs/ico-organs-eye.svg' },\n { name: 'fallopian-tube-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-left.svg' },\n { name: 'fallopian-tube-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-fallopian-tube-right.svg' },\n { name: 'heart', namespace: 'app', url: 'assets/icons/organs/ico-organs-heart.svg' },\n { name: 'kidney-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-left.svg' },\n { name: 'kidney-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney-right.svg' },\n { name: 'kidney', namespace: 'app', url: 'assets/icons/organs/ico-organs-kidney.svg' },\n { name: 'knee', namespace: 'app', url: 'assets/icons/organs/ico-organs-knee.svg' },\n { name: 'large-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-large-intestine.svg' },\n { name: 'liver', namespace: 'app', url: 'assets/icons/organs/ico-organs-liver.svg' },\n { name: 'lung-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-left.svg' },\n { name: 'lung-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung-right.svg' },\n { name: 'lung', namespace: 'app', url: 'assets/icons/organs/ico-organs-lung.svg' },\n { name: 'lymph-nodes', namespace: 'app', url: 'assets/icons/organs/ico-organs-lymph-nodes.svg' },\n { name: 'neuron', namespace: 'app', url: 'assets/icons/organs/ico-organs-neuron.svg' },\n { name: 'ovaries', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovaries.svg' },\n { name: 'ovary-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-left.svg' },\n { name: 'ovary-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ovary-right.svg' },\n { name: 'pancreas', namespace: 'app', url: 'assets/icons/organs/ico-organs-pancreas.svg' },\n { name: 'pelvis-f', namespace: 'app', url: 'assets/icons/organs/ico-organs-pelvis-f.svg' },\n { name: 'prostate', namespace: 'app', url: 'assets/icons/organs/ico-organs-prostate.svg' },\n { name: 'skin', namespace: 'app', url: 'assets/icons/organs/ico-organs-skin.svg' },\n { name: 'small-intestine', namespace: 'app', url: 'assets/icons/organs/ico-organs-small intestine.svg' },\n { name: 'spleen', namespace: 'app', url: 'assets/icons/organs/ico-organs-spleen.svg' },\n { name: 'stomach', namespace: 'app', url: 'assets/icons/organs/ico-organs-stomach.svg' },\n { name: 'thymus', namespace: 'app', url: 'assets/icons/organs/ico-organs-thymus.svg' },\n { name: 'ureter-left', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-left.svg' },\n { name: 'ureter-right', namespace: 'app', url: 'assets/icons/organs/ico-organs-ureter-right.svg' },\n { name: 'uterus', namespace: 'app', url: 'assets/icons/organs/ico-organs-uterus.svg' },\n { name: 'vasculature-thick', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thick.svg' },\n { name: 'vasculature-thin', namespace: 'app', url: 'assets/icons/organs/ico-organs-vasculature-thin.svg' },\n\n { name: 'opacity', namespace: 'app', url: 'assets/icons/opacity-24px.svg' },\n { name: 'visibility_on', namespace: 'app', url: 'assets/icons/visibility-on-24px.svg' },\n { name: 'visibility_off', namespace: 'app', url: 'assets/icons/visibility-off-24px.svg' },\n { name: 'expand_more', namespace: 'app', url: 'assets/icons/expand_more-24px.svg' },\n { name: 'expand_less', namespace: 'app', url: 'assets/icons/expand_less-24px.svg' },\n { name: 'filter', url: 'assets/icons/filter.svg' }\n]\n \n \n\n \n \n Icons registered at startup.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/core/store/scene/scene.state.ts\n \n \n \n \n \n \n \n DEFAULT_SELECTED_ORGANS\n \n \n \n \n \n \n Default value : new Set(['Skin', 'Heart', 'Kidney', 'Spleen'])\n \n \n\n\n \n \n\n projects/ccf-eui/src/app/core/services/theming/theming.service.ts\n \n \n \n \n \n \n \n DEFAULT_THEME\n \n \n \n \n \n \n Default value : new InjectionToken('Default theme class')\n \n \n\n \n \n Token for specifying the default theme class.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/components/drawer/drawer/drawer.component.ts\n \n \n \n \n \n \n \n EXPAND_COLLAPSE_PARAMS_DEFAULT\n \n \n \n \n \n \n Type : object\n\n \n \n \n \n Default value : {\n params: {\n width: 0,\n margin: 0,\n margin2: 0\n }\n}\n \n \n\n \n \n Default animation parameters.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/modules/ontology-exploration/ontology-tree/ontology-tree.component.ts\n \n \n \n \n \n \n \n getLevel\n \n \n \n \n \n \n Default value : property('level')\n \n \n\n \n \n Getter function for 'level' on a flat node.\n\n \n \n\n \n \n \n \n \n \n \n \n isExpandable\n \n \n \n \n \n \n Default value : property('expandable')\n \n \n\n \n \n Getter function for 'expandable' on a flat node.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/services/message/message.service.ts\n \n \n \n \n \n \n \n MESSAGE_SERVICE_CONFIG\n \n \n \n \n \n \n Default value : new InjectionToken(\n 'Message service configuration',\n {\n providedIn: 'root',\n factory: () => MESSAGE_SERVICE_DEFAULT_CONFIG\n }\n)\n \n \n\n \n \n Token for specifying the message service configuration.\n\n \n \n\n \n \n \n \n \n \n \n \n MESSAGE_SERVICE_DEFAULT_CONFIG\n \n \n \n \n \n \n Type : MessageServiceConfig\n\n \n \n \n \n Default value : {\n isolated: true\n}\n \n \n\n \n \n Default message service configuration.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/components/drawer/messages.ts\n \n \n \n \n \n \n \n MessageService\n \n \n \n \n \n \n Default value : GenericMessageService\n \n \n\n \n \n Reference to the service class.\n\n \n \n\n \n \n\n projects/ccf-eui/src/app/shared/components/thumbnail-carousel/thumbnail-carousel.component.ts\n \n \n \n \n \n \n \n nextUid\n \n \n \n \n \n \n Default value : (() => {\n let counter = -1;\n return () => {\n counter += 1;\n return counter;\n };\n})()\n \n \n\n\n \n \n\n projects/ccf-eui/src/app/core/store/store.module.ts\n \n \n \n \n \n \n \n ROOT_STATES\n \n \n \n \n \n \n Type : []\n\n \n \n \n \n Default value : [\n GlobalConfigState,\n ColorAssignmentState,\n IconRegistryState,\n ListResultsState,\n DataState,\n SceneState\n]\n \n \n\n \n \n States shared across the entire app.\n\n \n \n\n \n \n\n\n\n\n \n \n result-matching \"\"\n \n \n \n No results matching \"\"\n \n\n"}} } diff --git a/main-es2015.js b/main-es2015.js index c64bf5acc..bcfb104bf 100644 --- a/main-es2015.js +++ b/main-es2015.js @@ -1 +1 @@ -var LBe=Object.defineProperty,BBe=Object.defineProperties,VBe=Object.getOwnPropertyDescriptors,gT=Object.getOwnPropertySymbols,pX=Object.prototype.hasOwnProperty,gX=Object.prototype.propertyIsEnumerable,kr=Math.pow,mX=(t,e,n)=>e in t?LBe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,wt=(t,e)=>{for(var n in e||(e={}))pX.call(e,n)&&mX(t,n,e[n]);if(gT)for(var n of gT(e))gX.call(e,n)&&mX(t,n,e[n]);return t},ii=(t,e)=>BBe(t,VBe(e)),_X=(t,e)=>{var n={};for(var i in t)pX.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&gT)for(var i of gT(t))e.indexOf(i)<0&&gX.call(t,i)&&(n[i]=t[i]);return n};(self.webpackChunkccf_ui=self.webpackChunkccf_ui||[]).push([[179],{71440:function(t,e,n){var i=n(91052).default;t.exports=function t(e,n,i){function r(o,a){if(!n[o]){if(!e[o]){if(s)return s(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[o]={exports:{}};e[o][0].call(c.exports,function(t){return r(e[o][1][t]||t)},c,c.exports,t,e,n,i)}return n[o].exports}for(var s=void 0,o=0;o0&&r[r.length-1])&&(6===s[0]||2===s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]0?o-4:o;for(n=0;n>16&255,l[u++]=e>>8&255,l[u++]=255&e;return 2===a&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,l[u++]=255&e),1===a&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e),l},n.fromByteArray=function(t){for(var e,n=t.length,r=n%3,s=[],o=16383,a=0,l=n-r;al?l:a+o));return 1===r?s.push(i[(e=t[n-1])>>2]+i[e<<4&63]+"=="):2===r&&s.push(i[(e=(t[n-2]<<8)+t[n-1])>>10]+i[e>>4&63]+i[e<<2&63]+"="),s.join("")};for(var i=[],r=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,l=o.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t){return i[t>>18&63]+i[t>>12&63]+i[t>>6&63]+i[63&t]}function h(t,e,n){for(var i=[],r=e;r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!=(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var n=t.toString("utf16le",e);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):e}function u(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function h(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function d(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}n.StringDecoder=s,s.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(r>0&&(t.lastNeed=r-1),r):--i=0?(r>0&&(t.lastNeed=r-2),r):--i=0?(r>0&&(2===r?r=0:t.lastNeed=r-3),r):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var i=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)},s.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},{"safe-buffer":4}],6:[function(t,e,n){(function(e){(function(){"use strict";var e=t("base64-js"),i=t("ieee754");n.Buffer=o,n.SlowBuffer=function(t){return+t!=t&&(t=0),o.alloc(+t)},n.INSPECT_MAX_BYTES=50;var r=2147483647;function s(t){if(t>r)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return e.__proto__=o.prototype,e}function o(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return c(t)}return a(t,e,n)}function a(t,e,n){if("string"==typeof t)return function(t,e){if(("string"!=typeof e||""===e)&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|d(t,e),i=s(n),r=i.write(t,e);return r!==n&&(i=i.slice(0,r)),i}(t,e);if(ArrayBuffer.isView(t))return u(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,e,n){if(e<0||t.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|t}function d(t,e){if(o.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var n=t.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(t).length;default:if(r)return i?-1:L(t).length;e=(""+e).toLowerCase(),r=!0}}function p(t,e,n){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length||((void 0===n||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,n);case"utf8":case"utf-8":return E(this,e,n);case"ascii":return C(this,e,n);case"latin1":case"binary":return O(this,e,n);case"base64":return S(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,n);default:if(i)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),i=!0}}function f(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function g(t,e,n,i,r){if(0===t.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),V(n=+n)&&(n=r?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(r)return-1;n=t.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof e&&(e=o.from(e,i)),o.isBuffer(e))return 0===e.length?-1:m(t,e,n,i,r);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):m(t,[e],n,i,r);throw new TypeError("val must be string, number or Buffer")}function m(t,e,n,i,r){var s,o=1,a=t.length,l=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(t.length<2||e.length<2)return-1;o=2,a/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(r){var u=-1;for(s=n;sa&&(n=a-l),s=n;s>=0;s--){for(var h=!0,d=0;dr&&(i=r):i=r;var s=e.length;i>s/2&&(i=s/2);for(var o=0;o>8,r.push(n%256),r.push(i);return r}(e,t.length-n),t,n,i)}function S(t,n,i){return e.fromByteArray(0===n&&i===t.length?t:t.slice(n,i))}function E(t,e,n){n=Math.min(t.length,n);for(var i=[],r=e;r239?4:c>223?3:c>191?2:1;if(r+h<=n)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(s=t[r+1]))&&(l=(31&c)<<6|63&s)>127&&(u=l);break;case 3:o=t[r+2],128==(192&(s=t[r+1]))&&128==(192&o)&&(l=(15&c)<<12|(63&s)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:o=t[r+2],a=t[r+3],128==(192&(s=t[r+1]))&&128==(192&o)&&128==(192&a)&&(l=(15&c)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(i.push((u-=65536)>>>10&1023|55296),u=56320|1023&u),i.push(u),r+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);for(var n="",i=0;ie&&(t+=" ... "),""},o.prototype.compare=function(t,e,n,i,r){if(B(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||n>t.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=n)return 0;if(i>=r)return-1;if(e>=n)return 1;if(this===t)return 0;for(var s=(r>>>=0)-(i>>>=0),a=(n>>>=0)-(e>>>=0),l=Math.min(s,a),c=this.slice(i,r),u=t.slice(e,n),h=0;h>>=0,isFinite(n)?(n>>>=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-e;if((void 0===n||n>r)&&(n=r),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return b(this,t,e,n);case"utf8":case"utf-8":return y(this,t,e,n);case"ascii":return v(this,t,e,n);case"latin1":case"binary":return _(this,t,e,n);case"base64":return w(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,e,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function C(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;ri)&&(n=i);for(var r="",s=e;sn)throw new RangeError("Trying to access beyond buffer length")}function P(t,e,n,i,r,s){if(!o.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||et.length)throw new RangeError("Index out of range")}function M(t,e,n,i,r,s){if(n+i>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function D(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,8),i.write(t,e,n,r,52,8),n+8}o.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t+--e],r=1;e>0&&(r*=256);)i+=this[t+--e]*r;return i},o.prototype.readUInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),this[t]},o.prototype.readUInt16LE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]|this[t+1]<<8},o.prototype.readUInt16BE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]<<8|this[t+1]},o.prototype.readUInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},o.prototype.readUInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},o.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s=(r*=128)&&(i-=Math.pow(2,8*e)),i},o.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=e,r=1,s=this[t+--i];i>0&&(r*=256);)s+=this[t+--i]*r;return s>=(r*=128)&&(s-=Math.pow(2,8*e)),s},o.prototype.readInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},o.prototype.readInt16LE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt16BE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},o.prototype.readInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},o.prototype.readFloatLE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!0,23,4)},o.prototype.readFloatBE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!1,23,4)},o.prototype.readDoubleLE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!0,52,8)},o.prototype.readDoubleBE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!1,52,8)},o.prototype.writeUIntLE=function(t,e,n,i){t=+t,e>>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=1,s=0;for(this[e]=255&t;++s>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=n-1,s=1;for(this[e+r]=255&t;--r>=0&&(s*=256);)this[e+r]=t/s&255;return e+n},o.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,255,0),this[e]=255&t,e+1},o.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},o.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=0,o=1,a=0;for(this[e]=255&t;++s>0)-a&255;return e+n},o.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=n-1,o=1,a=0;for(this[e+s]=255&t;--s>=0&&(o*=256);)t<0&&0===a&&0!==this[e+s+1]&&(a=1),this[e+s]=(t/o>>0)-a&255;return e+n},o.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},o.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},o.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeFloatLE=function(t,e,n){return I(this,t,e,!0,n)},o.prototype.writeFloatBE=function(t,e,n){return I(this,t,e,!1,n)},o.prototype.writeDoubleLE=function(t,e,n){return D(this,t,e,!0,n)},o.prototype.writeDoubleBE=function(t,e,n){return D(this,t,e,!1,n)},o.prototype.copy=function(t,e,n,i){if(!o.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&0!==i&&(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e=0;--s)t[s+e]=this[s+n];else Uint8Array.prototype.set.call(t,this.subarray(n,i),e);return r},o.prototype.fill=function(t,e,n,i){if("string"==typeof t){if("string"==typeof e?(i=e,e=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!o.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===t.length){var r=t.charCodeAt(0);("utf8"===i&&r<128||"latin1"===i)&&(t=r)}}else"number"==typeof t&&(t&=255);if(e<0||this.length>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(s=e;s55295&&n<57344){if(!r){if(n>56319){(e-=3)>-1&&s.push(239,191,189);continue}if(o+1===i){(e-=3)>-1&&s.push(239,191,189);continue}r=n;continue}if(n<56320){(e-=3)>-1&&s.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(e-=3)>-1&&s.push(239,191,189);if(r=null,n<128){if((e-=1)<0)break;s.push(n)}else if(n<2048){if((e-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function j(t){return e.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(R,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function F(t,e,n,i){for(var r=0;r=e.length||r>=t.length);++r)e[r+n]=t[r];return r}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function V(t){return t!=t}}).call(this)}).call(this,t("buffer").Buffer)},{"base64-js":2,buffer:6,ieee754:9}],7:[function(t,e,n){"use strict";e.exports=function t(e){return null===e||"object"!=typeof e||null!=e.toJSON?JSON.stringify(e):Array.isArray(e)?"["+e.reduce((e,n,i)=>e+(0===i?"":",")+t(void 0===n||"symbol"==typeof n?null:n),"")+"]":"{"+Object.keys(e).sort().reduce((n,i,r)=>void 0===e[i]||"symbol"==typeof e[i]?n:n+(0===n.length?"":",")+t(i)+":"+t(e[i]),"")+"}"}},{}],8:[function(t,e,n){"use strict";var i,r="object"==typeof Reflect?Reflect:null,s=r&&"function"==typeof r.apply?r.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};i=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var o=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(t,e){return new Promise(function(n,i){function r(n){t.removeListener(e,s),i(n)}function s(){"function"==typeof t.removeListener&&t.removeListener("error",r),n([].slice.call(arguments))}b(t,e,s,{once:!0}),"error"!==e&&function(t,e,n){"function"==typeof t.on&&b(t,"error",e,n)}(t,r,{once:!0})})},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var l=10;function c(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function u(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function h(t,e,n,i){var r,s,o;if(c(n),void 0===(s=t._events)?(s=t._events=Object.create(null),t._eventsCount=0):(void 0!==s.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),o=s[e]),void 0===o)o=s[e]=n,++t._eventsCount;else if("function"==typeof o?o=s[e]=i?[n,o]:[o,n]:i?o.unshift(n):o.push(n),(r=u(t))>0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,function(t){console&&console.warn&&console.warn(t)}(a)}return t}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=d.bind(i);return r.listener=n,i.wrapFn=r,r}function f(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(o=e[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var l=r[t];if(void 0===l)return!1;if("function"==typeof l)s(l,this,e);else{var c=l.length,u=m(l,c);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},a.prototype.listeners=function(t){return f(this,t,!0)},a.prototype.rawListeners=function(t){return f(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):g.call(t,e)},a.prototype.listenerCount=g,a.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},{}],9:[function(t,e,n){n.read=function(t,e,n,i,r){var s,o,a=8*r-i-1,l=(1<>1,u=-7,h=n?r-1:0,d=n?-1:1,p=t[e+h];for(h+=d,s=p&(1<<-u)-1,p>>=-u,u+=a;u>0;s=256*s+t[e+h],h+=d,u-=8);for(o=s&(1<<-u)-1,s>>=-u,u+=i;u>0;o=256*o+t[e+h],h+=d,u-=8);if(0===s)s=1-c;else{if(s===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,i),s-=c}return(p?-1:1)*o*Math.pow(2,s-i)},n.write=function(t,e,n,i,r,s){var o,a,l,c=8*s-r-1,u=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,p=i?0:s-1,f=i?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?d/l:d*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(a=0,o=u):o+h>=1?(a=(e*l-1)*Math.pow(2,r),o+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,r),o=0));r>=8;t[n+p]=255&a,p+=f,a/=256,r-=8);for(o=o<0;t[n+p]=255&o,p+=f,o/=256,c-=8);t[n+p-f]|=128*g}},{}],10:[function(t,e,n){e.exports="function"==typeof Object.create?function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},{}],11:[function(t,e,n){"use strict";const{isArray:r,isObject:s,isString:o}=t("./types"),{asArray:a}=t("./util"),{prependBase:l}=t("./url"),c=t("./JsonLdError"),u=t("./ResolvedContext");function h(t){throw new c("Invalid JSON-LD syntax; @context must be an object.","jsonld.SyntaxError",{code:"invalid local context",context:t})}function d({context:t,base:e}){if(!t)return;const n=t["@context"];if(o(n))t["@context"]=l(e,n);else if(r(n))for(let i=0;i10)throw new c("Maximum number of @context URLs exceeded.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"loading remote context failed":"context overflow",max:10});if(a.has(e))throw new c("Cyclical @context URLs detected.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"recursive context inclusion":"context overflow",url:e});let i,l;a.add(e);try{l=yield n(e),i=l.document||null,o(i)&&(i=JSON.parse(i))}catch(u){throw new c("Dereferencing a URL did not result in a valid JSON-LD object. Possible causes are an inaccessible URL perhaps due to a same-origin policy (ensure the server uses CORS if you are using client-side JavaScript), too many redirects, a non-JSON response, or more than one HTTP Link Header was provided for a remote context.","jsonld.InvalidUrl",{code:"loading remote context failed",url:e,cause:u})}if(!s(i))throw new c("Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object.","jsonld.InvalidUrl",{code:"invalid remote context",url:e});return i="@context"in i?{"@context":i["@context"]}:{"@context":{}},l.contextUrl&&(r(i["@context"])||(i["@context"]=[i["@context"]]),i["@context"].push(l.contextUrl)),{context:i,remoteDoc:l}})()}}},{"./JsonLdError":12,"./ResolvedContext":16,"./types":30,"./url":31,"./util":32}],12:[function(t,e,n){"use strict";e.exports=class extends Error{constructor(t="An unspecified JSON-LD error occurred.",e="jsonld.Error",n={}){super(t),this.name=e,this.message=t,this.details=n}}},{}],13:[function(t,e,n){"use strict";e.exports=t=>{class e{toString(){return"[object JsonLdProcessor]"}}return Object.defineProperty(e,"prototype",{writable:!1,enumerable:!1}),Object.defineProperty(e.prototype,"constructor",{writable:!0,enumerable:!1,configurable:!0,value:e}),e.compact=function(e,n){return arguments.length<2?Promise.reject(new TypeError("Could not compact, too few arguments.")):t.compact(e,n)},e.expand=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not expand, too few arguments.")):t.expand(e)},e.flatten=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not flatten, too few arguments.")):t.flatten(e)},e}},{}],14:[function(t,e,n){"use strict";e.exports=t("rdf-canonize").NQuads},{"rdf-canonize":46}],15:[function(t,e,n){"use strict";e.exports=class{constructor(){this._requests={}}wrapLoader(t){const e=this;return e._loader=t,function(){return e.add.apply(e,arguments)}}add(t){var e=this;return i(function*(){let n=e._requests[t];if(n)return Promise.resolve(n);n=e._requests[t]=e._loader(t);try{return yield n}finally{delete e._requests[t]}})()}}},{}],16:[function(t,e,n){"use strict";const i=t("lru-cache");e.exports=class{constructor({document:t}){this.document=t,this.cache=new i({max:10})}getProcessed(t){return this.cache.get(t)}setProcessed(t,e){this.cache.set(t,e)}}},{"lru-cache":33}],17:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isString:a,isUndefined:l}=t("./types"),{isList:c,isValue:u,isGraph:h,isSimpleGraph:d,isSubjectReference:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{removeBase:v,prependBase:_}=t("./url"),{addValue:w,asArray:x,compareShortestLeast:S}=t("./util"),E={};function C(t,e,n){if("@nest"!==f(t,e,{vocab:!0},n))throw new r("JSON-LD compact error; nested property must have an @nest value resolving to @nest.","jsonld.SyntaxError",{code:"invalid @nest value"})}e.exports=E,E.compact=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},compactionMap:f=(()=>{})}){if(s(n)){let r=[];for(let s=0;s1&&(T=Array.from(T).sort());const k=t;for(const e of T){const n=E.compactIri({activeCtx:k,iri:e,relativeTo:{vocab:!0}}),r=g(S,n,"@context");l(r)||(t=yield b({activeCtx:t,localCtx:r,options:i,propagate:!1}))}const A=Object.keys(n).sort();for(const l of A){const p=n[l];if("@id"!==l)if("@type"!==l)if("@reverse"!==l)if("@preserve"!==l)if("@index"!==l)if("@graph"!==l&&"@list"!==l&&"@included"!==l&&m(l)){const e=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,e,p)}else{if(!s(p))throw new r("JSON-LD expansion error; expanded value must be an array.","jsonld.SyntaxError");if(0===p.length){const e=E.compactIri({activeCtx:t,iri:l,value:p,relativeTo:{vocab:!0},reverse:v}),n=t.mappings.has(e)?t.mappings.get(e)["@nest"]:null;let r=_;n&&(C(t,n,i),o(_[n])||(_[n]={}),r=_[n]),w(r,e,p,{propertyIsArray:!0})}for(const e of p){const n=E.compactIri({activeCtx:t,iri:l,value:e,relativeTo:{vocab:!0},reverse:v}),r=t.mappings.has(n)?t.mappings.get(n)["@nest"]:null;let p=_;r&&(C(t,r,i),o(_[r])||(_[r]={}),p=_[r]);const m=g(t,n,"@container")||[],b=h(e),y=c(e);let S;y?S=e["@list"]:b&&(S=e["@graph"]);let O=yield E.compact({activeCtx:t,activeProperty:n,element:y||b?S:e,options:i,compactionMap:f});if(y){if(s(O)||(O=[O]),m.includes("@list")){w(p,n,O,{valueIsArray:!0,allowDuplicate:!0});continue}O={[E.compactIri({activeCtx:t,iri:"@list",relativeTo:{vocab:!0}})]:O},"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"])}if(b)if(m.includes("@graph")&&(m.includes("@id")||m.includes("@index")&&d(e))){let r;p.hasOwnProperty(n)?r=p[n]:p[n]=r={};const s=(m.includes("@id")?e["@id"]:e["@index"])||E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}});w(r,s,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})}else m.includes("@graph")&&d(e)?(s(O)&&O.length>1&&(O={"@included":O}),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})):(s(O)&&1===O.length&&i.compactArrays&&(O=O[0]),O={[E.compactIri({activeCtx:t,iri:"@graph",relativeTo:{vocab:!0}})]:O},"@id"in e&&(O[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e["@id"]),"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"]),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")}));else if(m.includes("@language")||m.includes("@index")||m.includes("@id")||m.includes("@type")){let r,s;if(p.hasOwnProperty(n)?r=p[n]:p[n]=r={},m.includes("@language"))u(O)&&(O=O["@value"]),s=e["@language"];else if(m.includes("@index")){const i=g(t,n,"@index")||"@index",r=E.compactIri({activeCtx:t,iri:i,relativeTo:{vocab:!0}});if("@index"===i)s=e["@index"],delete O[r];else{let t;if([s,...t]=x(O[i]||[]),a(s))switch(t.length){case 0:delete O[i];break;case 1:O[i]=t[0];break;default:O[i]=t}else s=null}}else if(m.includes("@id")){const e=E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}});s=O[e],delete O[e]}else if(m.includes("@type")){const r=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}});let o;switch([s,...o]=x(O[r]||[]),o.length){case 0:delete O[r];break;case 1:O[r]=o[0];break;default:O[r]=o}1===Object.keys(O).length&&"@id"in e&&(O=yield E.compact({activeCtx:t,activeProperty:n,element:{"@id":e["@id"]},options:i,compactionMap:f}))}s||(s=E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}})),w(r,s,O,{propertyIsArray:m.includes("@set")})}else{const t=!i.compactArrays||m.includes("@set")||m.includes("@list")||s(O)&&0===O.length||"@list"===l||"@graph"===l;w(p,n,O,{propertyIsArray:t})}}}else{if((g(t,e,"@container")||[]).includes("@index"))continue;const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,p)}else{const n=yield E.compact({activeCtx:t,activeProperty:e,element:p,options:i,compactionMap:f});s(n)&&0===n.length||w(_,l,n)}else{const e=yield E.compact({activeCtx:t,activeProperty:"@reverse",element:p,options:i,compactionMap:f});for(const n in e)if(t.mappings.has(n)&&t.mappings.get(n).reverse){const r=e[n],s=(g(t,n,"@container")||[]).includes("@set")||!i.compactArrays;w(_,n,r,{propertyIsArray:s}),delete e[n]}if(Object.keys(e).length>0){const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,e)}}else{let e=x(p).map(t=>E.compactIri({activeCtx:S,iri:t,relativeTo:{vocab:!0}}));1===e.length&&(e=e[0]);const n=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}}),i=(g(t,n,"@container")||[]).includes("@set")&&y(t,1.1)||s(e)&&0===p.length;w(_,n,e,{propertyIsArray:i})}else{let e=x(p).map(e=>E.compactIri({activeCtx:t,iri:e,relativeTo:{vocab:!1},base:i.base}));1===e.length&&(e=e[0]),_[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e}}return _}return n});return function(e){return t.apply(this,arguments)}}(),E.compactIri=({activeCtx:t,iri:e,value:n=null,relativeTo:i={vocab:!1},reverse:s=!1,base:a=null})=>{if(null===e)return e;t.isPropertyTermScoped&&t.previousContext&&(t=t.previousContext);const l=t.getInverse();if(m(e)&&e in l&&"@none"in l[e]&&"@type"in l[e]["@none"]&&"@none"in l[e]["@none"]["@type"])return l[e]["@none"]["@type"]["@none"];if(i.vocab&&e in l){const i=t["@language"]||"@none",r=[];o(n)&&"@index"in n&&!("@graph"in n)&&r.push("@index","@index@set"),o(n)&&"@preserve"in n&&(n=n["@preserve"][0]),h(n)?("@index"in n&&r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n&&r.push("@graph@id","@graph@id@set"),r.push("@graph","@graph@set","@set"),"@index"in n||r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n||r.push("@graph@id","@graph@id@set")):o(n)&&!u(n)&&r.push("@id","@id@set","@type","@set@type");let a="@language",l="@null";if(s)a="@type",l="@reverse",r.push("@set");else if(c(n)){"@index"in n||r.push("@list");const t=n["@list"];if(0===t.length)a="@any",l="@none";else{let e=0===t.length?i:null,n=null;for(let i=0;it.includes("_"));t&&a.push(t.replace(/^[^_]+_/,"_"))}a.push("@none");const l=t.inverse[e];for(const o of i){if(!(o in l))continue;const t=l[o][r];for(const e of a)if(e in t)return t[e]}return null}(t,e,n,r,a,l);if(null!==d)return d}if(i.vocab&&"@vocab"in t){const n=t["@vocab"];if(0===e.indexOf(n)&&e!==n){const i=e.substr(n.length);if(!t.mappings.has(i))return i}}let d=null;const p=[];let f=t.fastCurieMap;const g=e.length-1;for(let r=0;r=0;--r){const i=p[r],s=i.terms;for(const r of s){const s=r+":"+e.substr(i.iri.length);t.mappings.get(r)._prefix&&(!t.mappings.has(s)||null===n&&t.mappings.get(s)["@id"]===e)&&(null===d||S(s,d)<0)&&(d=s)}}if(null!==d)return d;for(const[o,c]of t.mappings)if(c&&c._prefix&&e.startsWith(o+":"))throw new r(`Absolute IRI "${e}" confused with prefix "${o}".`,"jsonld.SyntaxError",{code:"IRI confused with prefix",context:t});return i.vocab?e:"@base"in t?t["@base"]?v(_(a,t["@base"]),e):e:v(a,e)},E.compactValue=({activeCtx:t,activeProperty:e,value:n,options:i})=>{if(u(n)){const i=g(t,e,"@type"),r=g(t,e,"@language"),s=g(t,e,"@direction"),o=g(t,e,"@container")||[],l="@index"in n&&!o.includes("@index");if(!l&&"@none"!==i&&(n["@type"]===i||"@language"in n&&n["@language"]===r&&"@direction"in n&&n["@direction"]===s||"@language"in n&&n["@language"]===r||"@direction"in n&&n["@direction"]===s))return n["@value"];const c=Object.keys(n).length,u=1===c||2===c&&"@index"in n&&!l,h="@language"in t,d=a(n["@value"]),p=t.mappings.has(e)&&null===t.mappings.get(e)["@language"];if(u&&"@none"!==i&&(!h||!d||p))return n["@value"];const f={};return l&&(f[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=n["@index"]),"@type"in n?f[E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}})]=E.compactIri({activeCtx:t,iri:n["@type"],relativeTo:{vocab:!0}}):"@language"in n&&(f[E.compactIri({activeCtx:t,iri:"@language",relativeTo:{vocab:!0}})]=n["@language"]),"@direction"in n&&(f[E.compactIri({activeCtx:t,iri:"@direction",relativeTo:{vocab:!0}})]=n["@direction"]),f[E.compactIri({activeCtx:t,iri:"@value",relativeTo:{vocab:!0}})]=n["@value"],f}const r=f(t,e,{vocab:!0},i),s=g(t,e,"@type"),o=E.compactIri({activeCtx:t,iri:n["@id"],relativeTo:{vocab:"@vocab"===s},base:i.base});return"@id"===s||"@vocab"===s||"@graph"===r?o:{[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]:o}}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],18:[function(t,e,n){"use strict";const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#";e.exports={LINK_HEADER_REL:"http://www.w3.org/ns/json-ld#context",LINK_HEADER_CONTEXT:"http://www.w3.org/ns/json-ld#context",RDF:i,RDF_LIST:i+"List",RDF_FIRST:i+"first",RDF_REST:i+"rest",RDF_NIL:i+"nil",RDF_TYPE:i+"type",RDF_PLAIN_LITERAL:i+"PlainLiteral",RDF_XML_LITERAL:i+"XMLLiteral",RDF_JSON_LITERAL:i+"JSON",RDF_OBJECT:i+"object",RDF_LANGSTRING:i+"langString",XSD:r,XSD_BOOLEAN:r+"boolean",XSD_DOUBLE:r+"double",XSD_INTEGER:r+"integer",XSD_STRING:r+"string"}},{}],19:[function(t,e,n){"use strict";const r=t("./util"),s=t("./JsonLdError"),{isArray:o,isObject:a,isString:l,isUndefined:c}=t("./types"),{isAbsolute:u,isRelative:h,prependBase:d}=t("./url"),{asArray:p,compareShortestLeast:f}=t("./util"),g=new Map,m=/^@[a-zA-Z]+$/,b={};function y(t,e,n,i,r,s){if(null===e||!l(e)||b.isKeyword(e))return e;if(e.match(m))return null;if(i&&i.hasOwnProperty(e)&&!0!==r.get(e)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:e,defined:r,options:s}),(n=n||{}).vocab){const n=t.mappings.get(e);if(null===n)return null;if(a(n)&&"@id"in n)return n["@id"]}const o=e.indexOf(":");if(o>0){const n=e.substr(0,o),a=e.substr(o+1);if("_"===n||0===a.indexOf("//"))return e;i&&i.hasOwnProperty(n)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:n,defined:r,options:s});const l=t.mappings.get(n);if(l&&l._prefix)return l["@id"]+a;if(u(e))return e}if(n.vocab&&"@vocab"in t)return t["@vocab"]+e;if(n.base&&"@base"in t){if(t["@base"])return d(d(s.base,t["@base"]),e)}else if(n.base)return d(s.base,e);return e}function v(t,e){if(!t||"object"!=typeof t||!e||"object"!=typeof e)return t===e;const n=Array.isArray(t);if(n!==Array.isArray(e))return!1;if(n){if(t.length!==e.length)return!1;for(let n=0;n{if(i.has(n)){if(i.get(n))return;throw new s("Cyclical context definition detected.","jsonld.CyclicalContext",{code:"cyclic IRI mapping",context:e,term:n})}let h;if(i.set(n,!1),e.hasOwnProperty(n)&&(h=e[n]),"@type"===n&&a(h)&&"@set"===(h["@container"]||"@set")&&b.processingMode(t,1.1)){const t=["@container","@id","@protected"],i=Object.keys(h);if(0===i.length||i.some(e=>!t.includes(e)))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n})}else{if(b.isKeyword(n))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n});if(n.match(m))return void console.warn('WARNING: terms beginning with "@" are reserved for future use and ignored',{term:n});if(""===n)throw new s("Invalid JSON-LD syntax; a term cannot be an empty string.","jsonld.SyntaxError",{code:"invalid term definition",context:e})}const d=t.mappings.get(n);t.mappings.has(n)&&t.mappings.delete(n);let p=!1;if((l(h)||null===h)&&(p=!0,h={"@id":h}),!a(h))throw new s("Invalid JSON-LD syntax; @context term values must be strings or objects.","jsonld.SyntaxError",{code:"invalid term definition",context:e});const f={};t.mappings.set(n,f),f.reverse=!1;const g=["@container","@id","@language","@reverse","@type"];b.processingMode(t,1.1)&&g.push("@context","@direction","@index","@nest","@prefix","@protected");for(const o in h)if(!g.includes(o))throw new s("Invalid JSON-LD syntax; a term definition must not contain "+o,"jsonld.SyntaxError",{code:"invalid term definition",context:e});const _=n.indexOf(":");if(f._termHasColon=_>0,"@reverse"in h){if("@id"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @id.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});if("@nest"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @nest.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});const o=h["@reverse"];if(!l(o))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{reverse:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));const a=y(t,o,{vocab:!0,base:!1},e,i,r);if(!u(a))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be an absolute IRI or a blank node identifier.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=a,f.reverse=!0}else if("@id"in h){let o=h["@id"];if(o&&!l(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an array of strings or a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(null===o)f["@id"]=null;else{if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{id:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));if(o!==n){if(o=y(t,o,{vocab:!0,base:!1},e,i,r),!u(o)&&!b.isKeyword(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an absolute IRI, a blank node identifier, or a keyword.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(n.match(/(?::[^:])|\//)&&y(t,n,{vocab:!0,base:!1},e,new Map(i).set(n,!0),r)!==o)throw new s("Invalid JSON-LD syntax; term in form of IRI must expand to definition.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=o,f._prefix=p&&!f._termHasColon&&o.match(/[:\/\?#\[\]@]$/)}}}if(!("@id"in f))if(f._termHasColon){const s=n.substr(0,_);if(e.hasOwnProperty(s)&&b.createTermDefinition({activeCtx:t,localCtx:e,term:s,defined:i,options:r}),t.mappings.has(s)){const e=n.substr(_+1);f["@id"]=t.mappings.get(s)["@id"]+e}else f["@id"]=n}else if("@type"===n)f["@id"]=n;else{if(!("@vocab"in t))throw new s("Invalid JSON-LD syntax; @context terms must define an @id.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e,term:n});f["@id"]=t["@vocab"]+n}if((!0===h["@protected"]||!0===i.get("@protected")&&!1!==h["@protected"])&&(t.protected[n]=!0,f.protected=!0),i.set(n,!0),"@type"in h){let n=h["@type"];if(!l(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be a string.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if("@json"===n||"@none"===n){if(b.processingMode(t,1))throw new s(`Invalid JSON-LD syntax; an @context @type value must not be "${n}" in JSON-LD 1.0 mode.`,"jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else if("@id"!==n&&"@vocab"!==n){if(n=y(t,n,{vocab:!0,base:!1},e,i,r),!u(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be an absolute IRI.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if(0===n.indexOf("_:"))throw new s("Invalid JSON-LD syntax; an @context @type value must be an IRI, not a blank node identifier.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}f["@type"]=n}if("@container"in h){const n=l(h["@container"])?[h["@container"]]:h["@container"]||[],i=["@list","@set","@index","@language"];let r=!0;const a=n.includes("@set");if(b.processingMode(t,1.1)){if(i.push("@graph","@id","@type"),n.includes("@list")){if(1!==n.length)throw new s("Invalid JSON-LD syntax; @context @container with @list must have no other values","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else if(n.includes("@graph")){if(n.some(t=>"@graph"!==t&&"@id"!==t&&"@index"!==t&&"@set"!==t))throw new s("Invalid JSON-LD syntax; @context @container with @graph must have no other values other than @id, @index, and @set","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else r&=n.length<=(a?2:1);if(n.includes("@type")&&(f["@type"]=f["@type"]||"@id",!["@id","@vocab"].includes(f["@type"])))throw new s("Invalid JSON-LD syntax; container: @type requires @type to be @id or @vocab.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else r&=!o(h["@container"]),r&=n.length<=1;if(r&=n.every(t=>i.includes(t)),r&=!(a&&n.includes("@list")),!r)throw new s("Invalid JSON-LD syntax; @context @container value must be one of the following: "+i.join(", "),"jsonld.SyntaxError",{code:"invalid container mapping",context:e});if(f.reverse&&!n.every(t=>["@index","@set"].includes(t)))throw new s("Invalid JSON-LD syntax; @context @container value for a @reverse type definition must be @index or @set.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});f["@container"]=n}if("@index"in h){if(!("@container"in h)||!f["@container"].includes("@index"))throw new s(`Invalid JSON-LD syntax; @index without @index in @container: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});if(!l(h["@index"])||0===h["@index"].indexOf("@"))throw new s(`Invalid JSON-LD syntax; @index must expand to an IRI: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});f["@index"]=h["@index"]}if("@context"in h&&(f["@context"]=h["@context"]),"@language"in h&&!("@type"in h)){let t=h["@language"];if(null!==t&&!l(t))throw new s("Invalid JSON-LD syntax; @context @language value must be a string or null.","jsonld.SyntaxError",{code:"invalid language mapping",context:e});null!==t&&(t=t.toLowerCase()),f["@language"]=t}if("@prefix"in h){if(n.match(/:|\//))throw new s("Invalid JSON-LD syntax; @context @prefix used on a compact IRI term","jsonld.SyntaxError",{code:"invalid term definition",context:e});if(b.isKeyword(f["@id"]))throw new s("Invalid JSON-LD syntax; keywords may not be used as prefixes","jsonld.SyntaxError",{code:"invalid term definition",context:e});if("boolean"!=typeof h["@prefix"])throw new s("Invalid JSON-LD syntax; @context value for @prefix must be boolean","jsonld.SyntaxError",{code:"invalid @prefix value",context:e});f._prefix=!0===h["@prefix"]}if("@direction"in h){const t=h["@direction"];if(null!==t&&"ltr"!==t&&"rtl"!==t)throw new s('Invalid JSON-LD syntax; @direction value must be null, "ltr", or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",context:e});f["@direction"]=t}if("@nest"in h){const t=h["@nest"];if(!l(t)||"@nest"!==t&&0===t.indexOf("@"))throw new s("Invalid JSON-LD syntax; @context @nest value must be a string which is not a keyword other than @nest.","jsonld.SyntaxError",{code:"invalid @nest value",context:e});f["@nest"]=t}const w=f["@id"];if("@context"===w||"@preserve"===w)throw new s("Invalid JSON-LD syntax; @context and @preserve cannot be aliased.","jsonld.SyntaxError",{code:"invalid keyword alias",context:e});if(d&&d.protected&&!c&&(t.protected[n]=!0,f.protected=!0,!v(d,f))){const t=r&&r.protectedMode||"error";if("error"===t)throw new s(`Invalid JSON-LD syntax; tried to redefine "${n}" which is a protected term.`,"jsonld.SyntaxError",{code:"protected term redefinition",context:e,term:n});if("warn"===t)return void console.warn("WARNING: protected term redefinition",{term:n});throw new s("Invalid protectedMode.","jsonld.SyntaxError",{code:"invalid protected mode",context:e,term:n,protectedMode:t})}},b.expandIri=(t,e,n,i)=>y(t,e,n,void 0,void 0,i),b.getInitialContext=t=>{const e=JSON.stringify({processingMode:t.processingMode}),n=g.get(e);if(n)return n;const i={processingMode:t.processingMode,mappings:new Map,inverse:null,getInverse:function(){const t=this;if(t.inverse)return t.inverse;const e=t.inverse={},n=t.fastCurieMap={},i={},r=(t["@language"]||"@none").toLowerCase(),a=t["@direction"],l=t.mappings,c=[...l.keys()].sort(f);for(const s of c){const t=l.get(s);if(null===t)continue;let c=t["@container"]||"@none";if(c=[].concat(c).sort().join(""),null===t["@id"])continue;const u=p(t["@id"]);for(const l of u){let u=e[l];const h=b.isKeyword(l);if(u)!h&&!t._termHasColon&&i[l].push(s);else if(e[l]=u={},!h&&!t._termHasColon){i[l]=[s];const t={iri:l,terms:i[l]};l[0]in n?n[l[0]].push(t):n[l[0]]=[t]}if(u[c]||(u[c]={"@language":{},"@type":{},"@any":{}}),u=u[c],o(s,u["@any"],"@none"),t.reverse)o(s,u["@type"],"@reverse");else if("@none"===t["@type"])o(s,u["@any"],"@none"),o(s,u["@language"],"@none"),o(s,u["@type"],"@none");else if("@type"in t)o(s,u["@type"],t["@type"]);else if("@language"in t&&"@direction"in t){const e=t["@language"],n=t["@direction"];o(s,u["@language"],e&&n?`${e}_${n}`.toLowerCase():e?e.toLowerCase():n?`_${n}`:"@null")}else"@language"in t?o(s,u["@language"],(t["@language"]||"@null").toLowerCase()):"@direction"in t?o(s,u["@language"],t["@direction"]?`_${t["@direction"]}`:"@none"):a?(o(s,u["@language"],`_${a}`),o(s,u["@language"],"@none"),o(s,u["@type"],"@none")):(o(s,u["@language"],r),o(s,u["@language"],"@none"),o(s,u["@type"],"@none"))}}for(const o in n)s(n,o,1);return e},clone:function(){const t={};return t.mappings=r.clone(this.mappings),t.clone=this.clone,t.inverse=null,t.getInverse=this.getInverse,t.protected=r.clone(this.protected),this.previousContext&&(t.previousContext=this.previousContext.clone()),t.revertToPreviousContext=this.revertToPreviousContext,"@base"in this&&(t["@base"]=this["@base"]),"@language"in this&&(t["@language"]=this["@language"]),"@vocab"in this&&(t["@vocab"]=this["@vocab"]),t},revertToPreviousContext:function(){return this.previousContext?this.previousContext.clone():this},protected:{}};return 1e4===g.size&&g.clear(),g.set(e,i),i;function s(t,e,n){const i=t[e],r=t[e]={};let o,a;for(const s of i)o=s.iri,a=n>=o.length?"":o[n],a in r?r[a].push(s):r[a]=[s];for(const l in r)""!==l&&s(r,l,n+1)}function o(t,e,n){e.hasOwnProperty(n)||(e[n]=t)}},b.getContextValue=(t,e,n)=>{if(null===e)return"@context"===n?void 0:null;if(t.mappings.has(e)){const i=t.mappings.get(e);if(c(n))return i;if(i.hasOwnProperty(n))return i[n]}return"@language"===n&&n in t||"@direction"===n&&n in t?t[n]:"@context"!==n?null:void 0},b.processingMode=(t,e)=>e.toString()>="1.1"?!t.processingMode||t.processingMode>="json-ld-"+e.toString():"json-ld-1.0"===t.processingMode,b.isKeyword=t=>{if(!l(t)||"@"!==t[0])return!1;switch(t){case"@base":case"@container":case"@context":case"@default":case"@direction":case"@embed":case"@explicit":case"@graph":case"@id":case"@included":case"@index":case"@json":case"@language":case"@list":case"@nest":case"@none":case"@omitDefault":case"@prefix":case"@preserve":case"@protected":case"@requireAll":case"@reverse":case"@set":case"@type":case"@value":case"@version":case"@vocab":return!0}return!1}},{"./JsonLdError":12,"./types":30,"./url":31,"./util":32}],20:[function(t,e,n){"use strict";const{parseLinkHeader:r,buildHeaders:s}=t("../util"),{LINK_HEADER_CONTEXT:o}=t("../constants"),a=t("../JsonLdError"),l=t("../RequestQueue"),{prependBase:c}=t("../url"),u=/(^|(\r\n))link:/i;function h(t,e,n){const i=new(t=t||XMLHttpRequest);return new Promise((t,r)=>{i.onload=()=>t(i),i.onerror=t=>r(t),i.open("GET",e,!0);for(const e in n)i.setRequestHeader(e,n[e]);i.send()})}e.exports=({secure:t,headers:e={},xhr:n}={headers:{}})=>{return e=s(e),(new l).wrapLoader(d);function d(t){return p.apply(this,arguments)}function p(){return(p=i(function*(i){if(0!==i.indexOf("http:")&&0!==i.indexOf("https:"))throw new a('URL could not be dereferenced; only "http" and "https" URLs are supported.',"jsonld.InvalidUrl",{code:"loading document failed",url:i});if(t&&0!==i.indexOf("https"))throw new a('URL could not be dereferenced; secure mode is enabled and the URL\'s scheme is not "https".',"jsonld.InvalidUrl",{code:"loading document failed",url:i});let s;try{s=yield h(n,i,e)}catch(m){throw new a("URL could not be dereferenced, an error occurred.","jsonld.LoadDocumentError",{code:"loading document failed",url:i,cause:m})}if(s.status>=400)throw new a("URL could not be dereferenced: "+s.statusText,"jsonld.LoadDocumentError",{code:"loading document failed",url:i,httpStatusCode:s.status});let l={contextUrl:null,documentUrl:i,document:s.response},p=null;const f=s.getResponseHeader("Content-Type");let g;if(u.test(s.getAllResponseHeaders())&&(g=s.getResponseHeader("Link")),g&&"application/ld+json"!==f){const t=r(g),e=t[o];if(Array.isArray(e))throw new a("URL could not be dereferenced, it has more than one associated HTTP Link Header.","jsonld.InvalidUrl",{code:"multiple context link headers",url:i});e&&(l.contextUrl=e.target),p=t.alternate,p&&"application/ld+json"==p.type&&!(f||"").match(/^application\/(\w*\+)?json$/)&&(l=yield d(c(i,p.target)))}return l})).apply(this,arguments)}}},{"../JsonLdError":12,"../RequestQueue":15,"../constants":18,"../url":31,"../util":32}],21:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isEmptyObject:a,isString:l,isUndefined:c}=t("./types"),{isList:u,isValue:h,isGraph:d,isSubject:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{isAbsolute:v}=t("./url"),{addValue:_,asArray:w,getValues:x,validateTypeValue:S}=t("./util"),E={};e.exports=E;const C=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/;function O(t){return T.apply(this,arguments)}function T(){return(T=i(function*({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x={},insideList:T,typeKey:k,typeScopedContext:M,expansionMap:I}){const D=Object.keys(i).sort(),R=[];let N;const L=i[k]&&"@json"===f(t,s(i[k])?i[k][0]:i[k],{vocab:!0},x);for(const O of D){let k,D=i[O];if("@context"===O)continue;let j=f(t,O,{vocab:!0},x);if((null===j||!v(j)&&!m(j))&&(j=I({unmappedProperty:O,activeCtx:t,activeProperty:e,parent:i,options:x,insideList:T,value:D,expandedParent:d}),void 0===j))continue;if(m(j)){if("@reverse"===n)throw new r("Invalid JSON-LD syntax; a keyword cannot be used as a @reverse property.","jsonld.SyntaxError",{code:"invalid reverse property map",value:D});if(j in d&&"@included"!==j&&"@type"!==j)throw new r("Invalid JSON-LD syntax; colliding keywords detected.","jsonld.SyntaxError",{code:"colliding keywords",keyword:j})}if("@id"===j){if(!l(D)){if(!x.isFrame)throw new r('Invalid JSON-LD syntax; "@id" value must a string.',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(o(D)){if(!a(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}else{if(!s(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(!D.every(t=>l(t)))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}}_(d,"@id",w(D).map(e=>l(e)?f(t,e,{base:!0},x):e),{propertyIsArray:x.isFrame});continue}if("@type"===j){o(D)&&(D=Object.fromEntries(Object.entries(D).map(([t,e])=>[f(M,t,{vocab:!0}),w(e).map(t=>f(M,t,{base:!0,vocab:!0}))]))),S(D,x.isFrame),_(d,"@type",w(D).map(t=>l(t)?f(M,t,{base:!0,vocab:!0},x):t),{propertyIsArray:x.isFrame});continue}if("@included"===j&&y(t,1.1)){const n=w(yield E.expand({activeCtx:t,activeProperty:e,element:D,options:x,expansionMap:I}));if(!n.every(t=>p(t)))throw new r("Invalid JSON-LD syntax; values of @included must expand to node objects.","jsonld.SyntaxError",{code:"invalid @included value",value:D});_(d,"@included",n,{propertyIsArray:!0});continue}if("@graph"===j&&!o(D)&&!s(D))throw new r('Invalid JSON-LD syntax; "@graph" value must not be an object or an array.',"jsonld.SyntaxError",{code:"invalid @graph value",value:D});if("@value"===j){N=D,L&&y(t,1.1)?d["@value"]=D:_(d,"@value",D,{propertyIsArray:x.isFrame});continue}if("@language"===j){if(null===D)continue;if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@language" value must be a string.',"jsonld.SyntaxError",{code:"invalid language-tagged string",value:D});D=w(D).map(t=>l(t)?t.toLowerCase():t);for(const t of D)l(t)&&!t.match(C)&&console.warn(`@language must be valid BCP47: ${t}`);_(d,"@language",D,{propertyIsArray:x.isFrame});continue}if("@direction"===j){if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@direction" value must be a string.',"jsonld.SyntaxError",{code:"invalid base direction",value:D});D=w(D);for(const t of D)if(l(t)&&"ltr"!==t&&"rtl"!==t)throw new r('Invalid JSON-LD syntax; "@direction" must be "ltr" or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",value:D});_(d,"@direction",D,{propertyIsArray:x.isFrame});continue}if("@index"===j){if(!l(D))throw new r('Invalid JSON-LD syntax; "@index" value must be a string.',"jsonld.SyntaxError",{code:"invalid @index value",value:D});_(d,"@index",D);continue}if("@reverse"===j){if(!o(D))throw new r('Invalid JSON-LD syntax; "@reverse" value must be an object.',"jsonld.SyntaxError",{code:"invalid @reverse value",value:D});if(k=yield E.expand({activeCtx:t,activeProperty:"@reverse",element:D,options:x,expansionMap:I}),"@reverse"in k)for(const t in k["@reverse"])_(d,t,k["@reverse"][t],{propertyIsArray:!0});let e=d["@reverse"]||null;for(const t in k){if("@reverse"===t)continue;null===e&&(e=d["@reverse"]={}),_(e,t,[],{propertyIsArray:!0});const n=k[t];for(let i=0;i"@id"===t||"@index"===t)&&(k=w(k).map(t=>({"@graph":w(t)}))),F.mappings.has(O)&&F.mappings.get(O).reverse){const t=d["@reverse"]=d["@reverse"]||{};k=w(k);for(let e=0;e"@value"===f(t,e,{vocab:!0},x)))throw new r("Invalid JSON-LD syntax; nested value must be a node object.","jsonld.SyntaxError",{code:"invalid @nest value",value:i});yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x,insideList:T,typeScopedContext:M,typeKey:k,expansionMap:I})}}})).apply(this,arguments)}function k({activeCtx:t,activeProperty:e,value:n,options:i}){if(null==n)return null;const r=f(t,e,{vocab:!0},i);if("@id"===r)return f(t,n,{base:!0},i);if("@type"===r)return f(t,n,{vocab:!0,base:!0},i);const s=g(t,e,"@type");if(("@id"===s||"@graph"===r)&&l(n))return{"@id":f(t,n,{base:!0},i)};if("@vocab"===s&&l(n))return{"@id":f(t,n,{vocab:!0,base:!0},i)};if(m(r))return n;const o={};if(s&&!["@id","@vocab","@none"].includes(s))o["@type"]=s;else if(l(n)){const n=g(t,e,"@language");null!==n&&(o["@language"]=n);const i=g(t,e,"@direction");null!==i&&(o["@direction"]=i)}return["boolean","number","string"].includes(typeof n)||(n=n.toString()),o["@value"]=n,o}function A(t,e,n,i){const o=[],a=Object.keys(e).sort();for(const c of a){const a=f(t,c,{vocab:!0},i);let u=e[c];s(u)||(u=[u]);for(const t of u){if(null===t)continue;if(!l(t))throw new r("Invalid JSON-LD syntax; language map values must be strings.","jsonld.SyntaxError",{code:"invalid language map value",languageMap:e});const i={"@value":t};"@none"!==a&&(i["@language"]=c.toLowerCase()),n&&(i["@direction"]=n),o.push(i)}}return o}function P(t){return M.apply(this,arguments)}function M(){return(M=i(function*({activeCtx:t,options:e,activeProperty:n,value:i,expansionMap:o,asGraph:a,indexKey:l,propertyIndex:u}){const p=[],m=Object.keys(i).sort(),y="@type"===l;for(let v of m){if(y){const n=g(t,v,"@context");c(n)||(t=yield b({activeCtx:t,localCtx:n,propagate:!1,options:e}))}let m,w=i[v];s(w)||(w=[w]),w=yield E.expand({activeCtx:t,activeProperty:n,element:w,options:e,insideList:!1,insideIndex:!0,expansionMap:o}),m=u?"@none"===v?"@none":k({activeCtx:t,activeProperty:l,value:v,options:e}):f(t,v,{vocab:!0},e),"@id"===l?v=f(t,v,{base:!0},e):y&&(v=m);for(let t of w){if(a&&!d(t)&&(t={"@graph":[t]}),"@type"===l)"@none"===m||(t["@type"]=t["@type"]?[v].concat(t["@type"]):[v]);else{if(h(t)&&!["@language","@type","@index"].includes(l))throw new r(`Invalid JSON-LD syntax; Attempt to add illegal key to value object: "${l}".`,"jsonld.SyntaxError",{code:"invalid value object",value:t});u?"@none"!==m&&_(t,u,m,{propertyIsArray:!0,prependValue:!0}):"@none"!==m&&!(l in t)&&(t[l]=v)}p.push(t)}}return p})).apply(this,arguments)}E.expand=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},insideList:u=!1,insideIndex:h=!1,typeScopedContext:d=null,expansionMap:p=(()=>{})}){if(null==n)return null;if("@default"===e&&(i=Object.assign({},i,{isFrame:!1})),!s(n)&&!o(n)){if(!u&&(null===e||"@graph"===f(t,e,{vocab:!0},i))){const r=yield p({unmappedValue:n,activeCtx:t,activeProperty:e,options:i,insideList:u});return void 0===r?null:r}return k({activeCtx:t,activeProperty:e,value:n,options:i})}if(s(n)){let r=[];const o=g(t,e,"@container")||[];u=u||o.includes("@list");for(let a=0;a1?e.slice().sort():e:[e];for(const n of s){const e=g(d,n,"@context");c(e)||(t=yield b({activeCtx:t,localCtx:e,options:i,propagate:!1}))}}let A={};yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:m,element:n,expandedParent:A,options:i,insideList:u,typeKey:T,typeScopedContext:d,expansionMap:p}),S=Object.keys(A);let P=S.length;if("@value"in A){if("@type"in A&&("@language"in A||"@direction"in A))throw new r('Invalid JSON-LD syntax; an element containing "@value" may not contain both "@type" and either "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});let s=P-1;if("@type"in A&&(s-=1),"@index"in A&&(s-=1),"@language"in A&&(s-=1),"@direction"in A&&(s-=1),0!==s)throw new r('Invalid JSON-LD syntax; an element containing "@value" may only have an "@index" property and either "@type" or either or both "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});const o=null===A["@value"]?[]:w(A["@value"]),c=x(A,"@type");if(!y(t,1.1)||!c.includes("@json")||1!==c.length)if(0===o.length){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}else{if(!o.every(t=>l(t)||a(t))&&"@language"in A)throw new r("Invalid JSON-LD syntax; only strings may be language-tagged.","jsonld.SyntaxError",{code:"invalid language-tagged value",element:A});if(!c.every(t=>v(t)&&!(l(t)&&0===t.indexOf("_:"))||a(t)))throw new r('Invalid JSON-LD syntax; an element containing "@value" and "@type" must have an absolute IRI for the value of "@type".',"jsonld.SyntaxError",{code:"invalid typed value",element:A})}}else if("@type"in A&&!s(A["@type"]))A["@type"]=[A["@type"]];else if("@set"in A||"@list"in A){if(P>1&&(2!==P||!("@index"in A)))throw new r('Invalid JSON-LD syntax; if an element has the property "@set" or "@list", then it can have at most one other property that is "@index".',"jsonld.SyntaxError",{code:"invalid set or list object",element:A});"@set"in A&&(A=A["@set"],S=Object.keys(A),P=S.length)}else if(1===P&&"@language"in A){const r=yield p(A,{unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}if(o(A)&&!i.keepFreeFloatingNodes&&!u&&(null===e||"@graph"===m)&&(0===P||"@value"in A||"@list"in A||1===P&&"@id"in A)){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}return A});return function(e){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],22:[function(t,e,n){"use strict";const{isSubjectReference:i}=t("./graphTypes"),{createMergedNodeMap:r}=t("./nodeMap"),s={};e.exports=s,s.flatten=t=>{const e=r(t),n=[],s=Object.keys(e).sort();for(let r=0;r=0;--i){const r=n[i];if(r.graph===e&&r.subject["@id"]===t["@id"])return!0}return!1}function f(t,e,n){const i="@"+n;let r=i in t?t[i][0]:e[n];if("embed"===n)if(!0===r)r="@once";else if(!1===r)r="@never";else if("@always"!==r&&"@never"!==r&&"@link"!==r&&"@first"!==r&&"@last"!==r&&"@once"!==r)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:t});return r}function g(t){if(!s.isArray(t)||1!==t.length||!s.isObject(t[0]))throw new l("Invalid JSON-LD syntax; a JSON-LD frame must be a single object.","jsonld.SyntaxError",{frame:t});if("@id"in t[0])for(const e of o.asArray(t[0]["@id"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @id in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t});if("@type"in t[0])for(const e of o.asArray(t[0]["@type"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @type in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t})}function m(t,e,n,a){let l=!0,c=!1;for(const u in n){let h=!1;const d=o.getValues(e,u),p=0===o.getValues(n,u).length;if("@id"===u){if(s.isEmptyObject(n["@id"][0]||{})?h=!0:n["@id"].length>=0&&(h=n["@id"].includes(d[0])),!a.requireAll)return h}else if("@type"===u){if(l=!1,p){if(d.length>0)return!1;h=!0}else if(1===n["@type"].length&&s.isEmptyObject(n["@type"][0]))h=d.length>0;else for(const t of n["@type"])h=!(!s.isObject(t)||!("@default"in t))||h||d.some(e=>e===t);if(!a.requireAll)return h}else{if(i(u))continue;{const e=o.getValues(n,u)[0];let i=!1;if(e&&(g([e]),i="@default"in e),l=!1,0===d.length&&i)continue;if(d.length>0&&p)return!1;if(void 0===e){if(d.length>0)return!1;h=!0}else if(r.isList(e)){const n=e["@list"][0];if(r.isList(d[0])){const e=d[0]["@list"];r.isValue(n)?h=e.some(t=>w(n,t)):(r.isSubject(n)||r.isSubjectReference(n))&&(h=e.some(e=>_(t,n,e,a)))}}else h=r.isValue(e)?d.some(t=>w(e,t)):r.isSubjectReference(e)?d.some(n=>_(t,e,n,a)):!!s.isObject(e)&&d.length>0}}if(!h&&a.requireAll)return!1;c=c||h}return l||c}function b(t,e){const n=t.uniqueEmbeds[t.graph],i=n[e],r=i.parent,a=i.property,l={"@id":e};if(s.isArray(r)){for(let t=0;t{const e=Object.keys(n);for(const i of e)i in n&&s.isObject(n[i].parent)&&n[i].parent["@id"]===t&&(delete n[i],c(i))};c(e)}function y(t,e){if(s.isArray(t))return t.map(t=>y(t,e));if(s.isObject(t)){if("@preserve"in t)return t["@preserve"][0];if(r.isValue(t))return t;if(r.isList(t))return t["@list"]=y(t["@list"],e),t;if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)"@id"===n&&e.bnodesToClear.includes(t[n])?delete t["@id"]:t[n]=y(t[n],e)}return t}function v(t,e,n){s.isObject(t)?o.addValue(t,e,n,{propertyIsArray:!0}):t.push(n)}function _(t,e,n,i){if(!("@id"in n))return!1;const r=t.subjects[n["@id"]];return r&&m(t,r,e,i)}function w(t,e){const n=e["@value"],i=e["@type"],r=e["@language"],o=t["@value"]?s.isArray(t["@value"])?t["@value"]:[t["@value"]]:[],a=t["@type"]?s.isArray(t["@type"])?t["@type"]:[t["@type"]]:[],l=t["@language"]?s.isArray(t["@language"])?t["@language"]:[t["@language"]]:[];return 0===o.length&&0===a.length&&0===l.length||!(!o.includes(n)&&!s.isEmptyObject(o[0])||!(!i&&0===a.length||a.includes(i)||i&&s.isEmptyObject(a[0]))||!(!r&&0===l.length||l.includes(r)||r&&s.isEmptyObject(l[0])))}e.exports=h,h.frameMergedOrDefault=(t,e,n)=>{const i={options:n,embedded:!1,graph:"@default",graphMap:{"@default":{}},subjectStack:[],link:{},bnodeMap:{}},r=new o.IdentifierIssuer("_:b");c(t,i.graphMap,"@default",r),n.merged&&(i.graphMap["@merged"]=u(i.graphMap),i.graph="@merged"),i.subjects=i.graphMap[i.graph];const s=[];return h.frame(i,Object.keys(i.subjects).sort(),e,s),n.pruneBlankNodeIdentifiers&&(n.bnodesToClear=Object.keys(i.bnodeMap).filter(t=>1===i.bnodeMap[t].length)),n.link={},y(s,n)},h.frame=(t,e,n,a,c=null)=>{g(n);const u=t.options,y={embed:f(n=n[0],u,"embed"),explicit:f(n,u,"explicit"),requireAll:f(n,u,"requireAll")};t.link.hasOwnProperty(t.graph)||(t.link[t.graph]={});const _=t.link[t.graph],x=function(t,e,n,i){const r={};for(const s of e){const e=t.graphMap[t.graph][s];m(t,e,n,i)&&(r[s]=e)}return r}(t,e,n,y),S=Object.keys(x).sort();for(const g of S){const m=x[g];if(null===c?t.uniqueEmbeds={[t.graph]:{}}:t.uniqueEmbeds[t.graph]=t.uniqueEmbeds[t.graph]||{},"@link"===y.embed&&g in _){v(a,c,_[g]);continue}const S={"@id":g};if(0===g.indexOf("_:")&&o.addValue(t.bnodeMap,g,S,{propertyIsArray:!0}),_[g]=S,("@first"===y.embed||"@last"===y.embed)&&t.is11)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:n});if(t.embedded||!t.uniqueEmbeds[t.graph].hasOwnProperty(g)){if(t.embedded&&("@never"===y.embed||p(m,t.graph,t.subjectStack))){v(a,c,S);continue}if(t.embedded&&("@first"==y.embed||"@once"==y.embed)&&t.uniqueEmbeds[t.graph].hasOwnProperty(g)){v(a,c,S);continue}if("@last"===y.embed&&g in t.uniqueEmbeds[t.graph]&&b(t,g),t.uniqueEmbeds[t.graph][g]={parent:a,property:c},t.subjectStack.push({subject:m,graph:t.graph}),g in t.graphMap){let e=!1,i=null;"@graph"in n?(i=n["@graph"][0],e=!("@merged"===g||"@default"===g),s.isObject(i)||(i={})):(e="@merged"!==t.graph,i={}),e&&h.frame(ii(wt({},t),{graph:g,embedded:!1}),Object.keys(t.graphMap[g]).sort(),[i],S,"@graph")}"@included"in n&&h.frame(ii(wt({},t),{embedded:!1}),e,n["@included"],S,"@included");for(const e of Object.keys(m).sort())if(i(e)){if(S[e]=o.clone(m[e]),"@type"===e)for(const e of m["@type"])0===e.indexOf("_:")&&o.addValue(t.bnodeMap,e,S,{propertyIsArray:!0})}else if(!y.explicit||e in n)for(const i of m[e]){const s=e in n?n[e]:d(y);if(r.isList(i)){const s=n[e]&&n[e][0]&&n[e][0]["@list"]?n[e][0]["@list"]:d(y),a={"@list":[]};v(S,e,a);const l=i["@list"];for(const e of l)r.isSubjectReference(e)?h.frame(ii(wt({},t),{embedded:!0}),[e["@id"]],s,a,"@list"):v(a,"@list",o.clone(e))}else r.isSubjectReference(i)?h.frame(ii(wt({},t),{embedded:!0}),[i["@id"]],s,S,e):w(s[0],i)&&v(S,e,o.clone(i))}for(const t of Object.keys(n).sort()){if("@type"===t){if(!s.isObject(n[t][0])||!("@default"in n[t][0]))continue}else if(i(t))continue;const e=n[t][0]||{};if(!f(e,u,"omitDefault")&&!(t in S)){let n="@null";"@default"in e&&(n=o.clone(e["@default"])),s.isArray(n)||(n=[n]),S[t]=[{"@preserve":n}]}}for(const e of Object.keys(n["@reverse"]||{}).sort()){const i=n["@reverse"][e];for(const n of Object.keys(t.subjects))o.getValues(t.subjects[n],e).some(t=>t["@id"]===g)&&(S["@reverse"]=S["@reverse"]||{},o.addValue(S["@reverse"],e,[],{propertyIsArray:!0}),h.frame(ii(wt({},t),{embedded:!0}),[n],i,S["@reverse"][e],c))}v(a,c,S),t.subjectStack.pop()}}},h.cleanupNull=(t,e)=>{if(s.isArray(t))return t.map(t=>h.cleanupNull(t,e)).filter(t=>t);if("@null"===t)return null;if(s.isObject(t)){if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)t[n]=h.cleanupNull(t[n],e)}return t}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32}],24:[function(t,e,n){"use strict";const r=t("./JsonLdError"),s=t("./graphTypes"),o=t("./types"),a=t("./util"),{RDF_LIST:l,RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,XSD_BOOLEAN:f,XSD_DOUBLE:g,XSD_INTEGER:m,XSD_STRING:b}=t("./constants"),y=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/,v={};function _(t,e,n){if(t.termType.endsWith("Node"))return{"@id":t.value};const i={"@value":t.value};if(t.language)i["@language"]=t.language;else{let a=t.datatype.value;if(a||(a=b),a===p){a="@json";try{i["@value"]=JSON.parse(i["@value"])}catch(s){throw new r("JSON literal could not be parsed.","jsonld.InvalidJsonLiteral",{code:"invalid JSON literal",value:i["@value"],cause:s})}}if(e){if(a===f)"true"===i["@value"]?i["@value"]=!0:"false"===i["@value"]&&(i["@value"]=!1);else if(o.isNumeric(i["@value"]))if(a===m){const t=parseInt(i["@value"],10);t.toFixed(0)===i["@value"]&&(i["@value"]=t)}else a===g&&(i["@value"]=parseFloat(i["@value"]));[f,m,g,b].includes(a)||(i["@type"]=a)}else if("i18n-datatype"===n&&a.startsWith("https://www.w3.org/ns/i18n#")){const[,t,e]=a.split(/[#_]/);t.length>0&&(i["@language"]=t,t.match(y)||console.warn(`@language must be valid BCP47: ${t}`)),i["@direction"]=e}else a!==b&&(i["@type"]=a)}return i}e.exports=v,v.fromRDF=function(){var t=i(function*(t,{useRdfType:e=!1,useNativeTypes:n=!1,rdfDirection:i=null}){const r={},p={"@default":r},f={};for(const s of t){const t="DefaultGraph"===s.graph.termType?"@default":s.graph.value;t in p||(p[t]={}),"@default"!==t&&!(t in r)&&(r[t]={"@id":t});const o=p[t],l=s.subject.value,c=s.predicate.value,u=s.object;l in o||(o[l]={"@id":l});const g=o[l],m=u.termType.endsWith("Node");if(m&&!(u.value in o)&&(o[u.value]={"@id":u.value}),c===d&&!e&&m){a.addValue(g,"@type",u.value,{propertyIsArray:!0});continue}const b=_(u,n,i);if(a.addValue(g,c,b,{propertyIsArray:!0}),m)if(u.value===h){const t=o[u.value];"usages"in t||(t.usages=[]),t.usages.push({node:g,property:c,value:b})}else f[u.value]=!(u.value in f)&&{node:g,property:c,value:b}}for(const a in p){const t=p[a];if(!(h in t))continue;const e=t[h];if(e.usages){for(let n of e.usages){let e=n.node,i=n.property,r=n.value;const a=[],h=[];let d=Object.keys(e).length;for(;i===u&&o.isObject(f[e["@id"]])&&o.isArray(e[c])&&1===e[c].length&&o.isArray(e[u])&&1===e[u].length&&(3===d||4===d&&o.isArray(e["@type"])&&1===e["@type"].length&&e["@type"][0]===l)&&(a.push(e[c][0]),h.push(e["@id"]),n=f[e["@id"]],e=n.node,i=n.property,r=n.value,d=Object.keys(e).length,s.isBlankNode(e)););delete r["@id"],r["@list"]=a.reverse();for(const n of h)delete t[n]}delete e.usages}}const g=[],m=Object.keys(r).sort();for(const o of m){const t=r[o];if(o in p){const e=t["@graph"]=[],n=p[o],i=Object.keys(n).sort();for(const t of i){const i=n[t];s.isSubjectReference(i)||e.push(i)}}s.isSubjectReference(t)||g.push(t)}return g});return function(e,n){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./constants":18,"./graphTypes":25,"./types":30,"./util":32}],25:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.isSubject=t=>!(!i.isObject(t)||"@value"in t||"@set"in t||"@list"in t)&&(Object.keys(t).length>1||!("@id"in t)),r.isSubjectReference=t=>i.isObject(t)&&1===Object.keys(t).length&&"@id"in t,r.isValue=t=>i.isObject(t)&&"@value"in t,r.isList=t=>i.isObject(t)&&"@list"in t,r.isGraph=t=>i.isObject(t)&&"@graph"in t&&1===Object.keys(t).filter(t=>"@id"!==t&&"@index"!==t).length,r.isSimpleGraph=t=>r.isGraph(t)&&!("@id"in t),r.isBlankNode=t=>!!i.isObject(t)&&("@id"in t?0===t["@id"].indexOf("_:"):0===Object.keys(t).length||!("@value"in t||"@set"in t||"@list"in t))},{"./types":30}],26:[function(t,e,n){const r=t("rdf-canonize"),s=t("./platform"),o=t("./util"),a=t("./ContextResolver"),l=o.IdentifierIssuer,c=t("./JsonLdError"),u=t("lru-cache"),h=t("./NQuads"),{expand:d}=t("./expand"),{flatten:p}=t("./flatten"),{fromRDF:f}=t("./fromRdf"),{toRDF:g}=t("./toRdf"),{frameMergedOrDefault:m,cleanupNull:b}=t("./frame"),{isArray:y,isObject:v,isString:_}=t("./types"),{isSubjectReference:w}=t("./graphTypes"),{expandIri:x,getInitialContext:S,process:E,processingMode:C}=t("./context"),{compact:O,compactIri:T}=t("./compact"),{createNodeMap:k,createMergedNodeMap:A,mergeNodeMaps:P}=t("./nodeMap"),M=function(e){const n={},M=new u({max:100});function I(t,n){var i=n,{documentLoader:r=e.documentLoader}=i,s=_X(i,["documentLoader"]);return Object.assign({},{documentLoader:r},s,t)}return e.compact=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not compact, too few arguments.");if(null===n)throw new c("The compaction context must not be null.","jsonld.CompactError",{code:"invalid local context"});if(null===t)return null;let r;(i=I(i,{base:_(t)?t:"",compactArrays:!0,compactToRelative:!0,graph:!1,skipExpansion:!1,link:!1,issuer:new l("_:b"),contextResolver:new a({sharedCache:M})})).link&&(i.skipExpansion=!0),i.compactToRelative||delete i.base,r=i.skipExpansion?t:yield e.expand(t,i);const s=yield e.processContext(S(i),n,i);let u=yield O({activeCtx:s,element:r,options:i,compactionMap:i.compactionMap});i.compactArrays&&!i.graph&&y(u)?1===u.length?u=u[0]:0===u.length&&(u={}):i.graph&&v(u)&&(u=[u]),v(n)&&"@context"in n&&(n=n["@context"]),n=o.clone(n),y(n)||(n=[n]);const h=n;n=[];for(let e=0;e0)&&n.push(h[e]);const d=n.length>0;if(1===n.length&&(n=n[0]),y(u)){const t=T({activeCtx:s,iri:"@graph",relativeTo:{vocab:!0}}),e=u;u={},d&&(u["@context"]=n),u[t]=e}else if(v(u)&&d){const t=u;u={"@context":n};for(const e in t)u[e]=t[e]}return u});return function(e,n,i){return t.apply(this,arguments)}}(),e.expand=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not expand, too few arguments.");!1===(n=I(n,{keepFreeFloatingNodes:!1,contextResolver:new a({sharedCache:M})})).expansionMap&&(n.expansionMap=void 0);const i={},r=[];if("expandContext"in n){const t=o.clone(n.expandContext);i.expandContext=v(t)&&"@context"in t?t:{"@context":t},r.push(i.expandContext)}let s;if(_(t)){const o=yield e.get(t,n);s=o.documentUrl,i.input=o.document,o.contextUrl&&(i.remoteContext={"@context":o.contextUrl},r.push(i.remoteContext))}else i.input=o.clone(t);"base"in n||(n.base=s||"");let l=S(n);for(const e of r)l=yield E({activeCtx:l,localCtx:e,options:n});let c=yield d({activeCtx:l,element:i.input,options:n,expansionMap:n.expansionMap});return v(c)&&"@graph"in c&&1===Object.keys(c).length?c=c["@graph"]:null===c&&(c=[]),y(c)||(c=[c]),c});return function(e,n){return t.apply(this,arguments)}}(),e.flatten=function(){var t=i(function*(t,n,i){if(arguments.length<1)return new TypeError("Could not flatten, too few arguments.");n="function"==typeof n?null:n||null,i=I(i,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const r=yield e.expand(t,i),s=p(r);return null===n?s:(i.graph=!0,i.skipExpansion=!0,yield e.compact(s,n,i))});return function(e,n,i){return t.apply(this,arguments)}}(),e.frame=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not frame, too few arguments.");if(i=I(i,{base:_(t)?t:"",embed:"@once",explicit:!1,requireAll:!1,omitDefault:!1,bnodesToClear:[],contextResolver:new a({sharedCache:M})}),_(n)){const t=yield e.get(n,i);if(n=t.document,t.contextUrl){let e=n["@context"];e?y(e)?e.push(t.contextUrl):e=[e,t.contextUrl]:e=t.contextUrl,n["@context"]=e}}const r=n&&n["@context"]||{},s=yield e.processContext(S(i),r,i);i.hasOwnProperty("omitGraph")||(i.omitGraph=C(s,1.1)),i.hasOwnProperty("pruneBlankNodeIdentifiers")||(i.pruneBlankNodeIdentifiers=C(s,1.1));const o=yield e.expand(t,i),l=wt({},i);l.isFrame=!0,l.keepFreeFloatingNodes=!0;const c=yield e.expand(n,l),u=Object.keys(n).map(t=>x(s,t,{vocab:!0}));l.merged=!u.includes("@graph"),l.is11=C(s,1.1);const h=m(o,c,l);l.graph=!i.omitGraph,l.skipExpansion=!0,l.link={},l.framing=!0;let d=yield e.compact(h,r,l);return l.link={},d=b(d,l),d});return function(e,n,i){return t.apply(this,arguments)}}(),e.link=function(){var t=i(function*(t,n,i){const r={};return n&&(r["@context"]=n),r["@embed"]="@link",e.frame(t,r,i)});return function(e,n,i){return t.apply(this,arguments)}}(),e.normalize=e.canonize=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not canonize, too few arguments.");if("inputFormat"in(n=I(n,{base:_(t)?t:"",algorithm:"URDNA2015",skipExpansion:!1,contextResolver:new a({sharedCache:M})}))){if("application/n-quads"!==n.inputFormat&&"application/nquads"!==n.inputFormat)throw new c("Unknown canonicalization input format.","jsonld.CanonizeError");const e=h.parse(t);return r.canonize(e,n)}const i=wt({},n);delete i.format,i.produceGeneralizedRdf=!1;const s=yield e.toRDF(t,i);return r.canonize(s,n)});return function(e,n){return t.apply(this,arguments)}}(),e.fromRDF=function(){var t=i(function*(t,e){if(arguments.length<1)throw new TypeError("Could not convert from RDF, too few arguments.");e=I(e,{format:_(t)?"application/n-quads":void 0});const{format:i}=e;let{rdfParser:r}=e;if(i){if(r=r||n[i],!r)throw new c("Unknown input format.","jsonld.UnknownFormat",{format:i})}else r=()=>t;const s=yield r(t);return f(s,e)});return function(e,n){return t.apply(this,arguments)}}(),e.toRDF=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not convert to RDF, too few arguments.");let i;i=(n=I(n,{base:_(t)?t:"",skipExpansion:!1,contextResolver:new a({sharedCache:M})})).skipExpansion?t:yield e.expand(t,n);const r=g(i,n);if(n.format){if("application/n-quads"===n.format||"application/nquads"===n.format)return h.serialize(r);throw new c("Unknown output format.","jsonld.UnknownFormat",{format:n.format})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.createNodeMap=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not create node map, too few arguments.");n=I(n,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const i=yield e.expand(t,n);return A(i,n)});return function(e,n){return t.apply(this,arguments)}}(),e.merge=function(){var t=i(function*(t,n,i){if(arguments.length<1)throw new TypeError("Could not merge, too few arguments.");if(!y(t))throw new TypeError('Could not merge, "docs" must be an array.');n="function"==typeof n?null:n||null,i=I(i,{contextResolver:new a({sharedCache:M})});const r=yield Promise.all(t.map(t=>{const n=wt({},i);return e.expand(t,n)}));let s=!0;"mergeNodes"in i&&(s=i.mergeNodes);const c=i.issuer||new l("_:b"),u={"@default":{}};for(let e=0;ee._documentLoader,set:t=>e._documentLoader=t}),e.documentLoader=function(){var t=i(function*(t){throw new c("Could not retrieve a JSON-LD document from the URL. URL dereferencing not implemented.","jsonld.LoadDocumentError",{code:"loading document failed",url:t})});return function(e){return t.apply(this,arguments)}}(),e.get=function(){var t=i(function*(t,n){let i;i="function"==typeof n.documentLoader?n.documentLoader:e.documentLoader;const r=yield i(t);try{if(!r.document)throw new c("No remote document found at the given URL.","jsonld.NullRemoteDocument");_(r.document)&&(r.document=JSON.parse(r.document))}catch(s){throw new c("Could not retrieve a JSON-LD document from the URL.","jsonld.LoadDocumentError",{code:"loading document failed",cause:s,remoteDoc:r})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.processContext=function(){var t=i(function*(t,e,n){return n=I(n,{base:"",contextResolver:new a({sharedCache:M})}),null===e?S(n):(e=o.clone(e),v(e)&&"@context"in e||(e={"@context":e}),E({activeCtx:t,localCtx:e,options:n}))});return function(e,n,i){return t.apply(this,arguments)}}(),e.getContextValue=t("./context").getContextValue,e.documentLoaders={},e.useDocumentLoader=function(t){if(!(t in e.documentLoaders))throw new c('Unknown document loader type: "'+t+'"',"jsonld.UnknownDocumentLoader",{type:t});e.documentLoader=e.documentLoaders[t].apply(e,Array.prototype.slice.call(arguments,1))},e.registerRDFParser=function(t,e){n[t]=e},e.unregisterRDFParser=function(t){delete n[t]},e.registerRDFParser("application/n-quads",h.parse),e.registerRDFParser("application/nquads",h.parse),e.url=t("./url"),e.util=o,Object.assign(e,o),e.promises=e,e.RequestQueue=t("./RequestQueue"),e.JsonLdProcessor=t("./JsonLdProcessor")(e),s.setupGlobals(e),s.setupDocumentLoaders(e),e},I=function(){return M(function(){return I()})};M(I),e.exports=I},{"./ContextResolver":11,"./JsonLdError":12,"./JsonLdProcessor":13,"./NQuads":14,"./RequestQueue":15,"./compact":17,"./context":19,"./expand":21,"./flatten":22,"./frame":23,"./fromRdf":24,"./graphTypes":25,"./nodeMap":27,"./platform":28,"./toRdf":29,"./types":30,"./url":31,"./util":32,"lru-cache":33,"rdf-canonize":46}],27:[function(t,e,n){"use strict";const{isKeyword:i}=t("./context"),r=t("./graphTypes"),s=t("./types"),o=t("./util"),a=t("./JsonLdError"),l={};e.exports=l,l.createMergedNodeMap=(t,e)=>{const n=(e=e||{}).issuer||new o.IdentifierIssuer("_:b"),i={"@default":{}};return l.createNodeMap(t,i,"@default",n),l.mergeNodeMaps(i)},l.createNodeMap=(t,e,n,c,u,h)=>{if(s.isArray(t)){for(const i of t)l.createNodeMap(i,e,n,c,void 0,h);return}if(!s.isObject(t))return void(h&&h.push(t));if(r.isValue(t)){if("@type"in t){let e=t["@type"];0===e.indexOf("_:")&&(t["@type"]=e=c.getId(e))}return void(h&&h.push(t))}if(h&&r.isList(t)){const i=[];return l.createNodeMap(t["@list"],e,n,c,u,i),void h.push({"@list":i})}if("@type"in t){const e=t["@type"];for(const t of e)0===t.indexOf("_:")&&c.getId(t)}s.isUndefined(u)&&(u=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"]),h&&h.push({"@id":u});const d=e[n],p=d[u]=d[u]||{};p["@id"]=u;const f=Object.keys(t).sort();for(let s of f){if("@id"===s)continue;if("@reverse"===s){const i={"@id":u},s=t["@reverse"];for(const t in s){const a=s[t];for(const s of a){let a=s["@id"];r.isBlankNode(s)&&(a=c.getId(a)),l.createNodeMap(s,e,n,c,a),o.addValue(d[a],t,i,{propertyIsArray:!0,allowDuplicate:!1})}}continue}if("@graph"===s){u in e||(e[u]={}),l.createNodeMap(t[s],e,u,c);continue}if("@included"===s){l.createNodeMap(t[s],e,n,c);continue}if("@type"!==s&&i(s)){if("@index"===s&&s in p&&(t[s]!==p[s]||t[s]["@id"]!==p[s]["@id"]))throw new a("Invalid JSON-LD syntax; conflicting @index property detected.","jsonld.SyntaxError",{code:"conflicting indexes",subject:p});p[s]=t[s];continue}const h=t[s];if(0===s.indexOf("_:")&&(s=c.getId(s)),0!==h.length)for(let t of h)if("@type"===s&&(t=0===t.indexOf("_:")?c.getId(t):t),r.isSubject(t)||r.isSubjectReference(t)){if("@id"in t&&!t["@id"])continue;const i=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"];o.addValue(p,s,{"@id":i},{propertyIsArray:!0,allowDuplicate:!1}),l.createNodeMap(t,e,n,c,i)}else if(r.isValue(t))o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else if(r.isList(t)){const i=[];l.createNodeMap(t["@list"],e,n,c,u,i),t={"@list":i},o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1})}else l.createNodeMap(t,e,n,c,u),o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else o.addValue(p,s,[],{propertyIsArray:!0})}},l.mergeNodeMapGraphs=t=>{const e={};for(const n of Object.keys(t).sort())for(const r of Object.keys(t[n]).sort()){const s=t[n][r];r in e||(e[r]={"@id":r});const a=e[r];for(const t of Object.keys(s).sort())if(i(t)&&"@type"!==t)a[t]=o.clone(s[t]);else for(const e of s[t])o.addValue(a,t,o.clone(e),{propertyIsArray:!0,allowDuplicate:!1})}return e},l.mergeNodeMaps=t=>{const e=t["@default"],n=Object.keys(t).sort();for(const i of n){if("@default"===i)continue;const n=t[i];let s=e[i];s?"@graph"in s||(s["@graph"]=[]):e[i]=s={"@id":i,"@graph":[]};const o=s["@graph"];for(const t of Object.keys(n).sort()){const e=n[t];r.isSubjectReference(e)||o.push(e)}}return e}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./util":32}],28:[function(t,e,n){"use strict";const i=t("./documentLoaders/xhr"),r={};e.exports=r,r.setupDocumentLoaders=function(t){"undefined"!=typeof XMLHttpRequest&&(t.documentLoaders.xhr=i,t.useDocumentLoader("xhr"))},r.setupGlobals=function(t){void 0===globalThis.JsonLdProcessor&&Object.defineProperty(globalThis,"JsonLdProcessor",{writable:!0,enumerable:!1,configurable:!0,value:t.JsonLdProcessor})}},{"./documentLoaders/xhr":20}],29:[function(t,e,n){"use strict";const{createNodeMap:i}=t("./nodeMap"),{isKeyword:r}=t("./context"),s=t("./graphTypes"),o=t("canonicalize"),a=t("./types"),l=t("./util"),{RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,RDF_LANGSTRING:f,XSD_BOOLEAN:g,XSD_DOUBLE:m,XSD_INTEGER:b,XSD_STRING:y}=t("./constants"),{isAbsolute:v}=t("./url"),_={};function w(t,e,n,i,s){const o=Object.keys(e).sort();for(const a of o){const o=e[a],l=Object.keys(o).sort();for(let e of l){const l=o[e];if("@type"===e)e=d;else if(r(e))continue;for(const r of l){const o={termType:a.startsWith("_:")?"BlankNode":"NamedNode",value:a};if(!v(a))continue;const l={termType:e.startsWith("_:")?"BlankNode":"NamedNode",value:e};if(!v(e)||"BlankNode"===l.termType&&!s.produceGeneralizedRdf)continue;const c=x(r,i,t,n,s.rdfDirection);c&&t.push({subject:o,predicate:l,object:c,graph:n})}}}}function x(t,e,n,i,r){const l={};if(s.isValue(t)){l.termType="Literal",l.value=void 0,l.datatype={termType:"NamedNode"};let e=t["@value"];const n=t["@type"]||null;"@json"===n?(l.value=o(e),l.datatype.value=p):a.isBoolean(e)?(l.value=e.toString(),l.datatype.value=n||g):a.isDouble(e)||n===m?(a.isDouble(e)||(e=parseFloat(e)),l.value=e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),l.datatype.value=n||m):a.isNumber(e)?(l.value=e.toFixed(0),l.datatype.value=n||b):"i18n-datatype"===r&&"@direction"in t?(l.datatype.value="https://www.w3.org/ns/i18n#"+(t["@language"]||"")+`_${t["@direction"]}`,l.value=e):"@language"in t?(l.value=e,l.datatype.value=n||f,l.language=t["@language"]):(l.value=e,l.datatype.value=n||y)}else if(s.isList(t)){const s=function(t,e,n,i,r){const s={termType:"NamedNode",value:c},o={termType:"NamedNode",value:u},a={termType:"NamedNode",value:h},l=t.pop(),d=l?{termType:"BlankNode",value:e.getId()}:a;let p=d;for(const c of t){const t=x(c,e,n,i,r),a={termType:"BlankNode",value:e.getId()};n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i}),p=a}if(l){const t=x(l,e,n,i,r);n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i})}return d}(t["@list"],e,n,i,r);l.termType=s.termType,l.value=s.value}else{const e=a.isObject(t)?t["@id"]:t;l.termType=e.startsWith("_:")?"BlankNode":"NamedNode",l.value=e}return"NamedNode"!==l.termType||v(l.value)?l:null}e.exports=_,_.toRDF=(t,e)=>{const n=new l.IdentifierIssuer("_:b"),r={"@default":{}};i(t,r,"@default",n);const s=[],o=Object.keys(r).sort();for(const i of o){let t;if("@default"===i)t={termType:"DefaultGraph",value:""};else{if(!v(i))continue;t=i.startsWith("_:")?{termType:"BlankNode"}:{termType:"NamedNode"},t.value=i}w(s,r[i],t,n,e)}return s}},{"./constants":18,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32,canonicalize:7}],30:[function(t,e,n){"use strict";const i={};e.exports=i,i.isArray=Array.isArray,i.isBoolean=t=>"boolean"==typeof t||"[object Boolean]"===Object.prototype.toString.call(t),i.isDouble=t=>i.isNumber(t)&&(-1!==String(t).indexOf(".")||Math.abs(t)>=1e21),i.isEmptyObject=t=>i.isObject(t)&&0===Object.keys(t).length,i.isNumber=t=>"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t),i.isNumeric=t=>!isNaN(parseFloat(t))&&isFinite(t),i.isObject=t=>"[object Object]"===Object.prototype.toString.call(t),i.isString=t=>"string"==typeof t||"[object String]"===Object.prototype.toString.call(t),i.isUndefined=t=>void 0===t},{}],31:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.parsers={simple:{keys:["href","scheme","authority","path","query","fragment"],regex:/^(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/},full:{keys:["href","protocol","scheme","authority","auth","user","password","hostname","port","path","directory","file","query","fragment"],regex:/^(([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?(?:(((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/}},r.parse=(t,e)=>{const n={},i=r.parsers[e||"full"],s=i.regex.exec(t);let o=i.keys.length;for(;o--;)n[i.keys[o]]=void 0===s[o]?null:s[o];return("https"===n.scheme&&"443"===n.port||"http"===n.scheme&&"80"===n.port)&&(n.href=n.href.replace(":"+n.port,""),n.authority=n.authority.replace(":"+n.port,""),n.port=null),n.normalizedPath=r.removeDotSegments(n.path),n},r.prependBase=(t,e)=>{if(null===t||r.isAbsolute(e))return e;(!t||i.isString(t))&&(t=r.parse(t||""));const n=r.parse(e),s={protocol:t.protocol||""};if(null!==n.authority)s.authority=n.authority,s.path=n.path,s.query=n.query;else if(s.authority=t.authority,""===n.path)s.path=t.path,s.query=null!==n.query?n.query:t.query;else{if(0===n.path.indexOf("/"))s.path=n.path;else{let e=t.path;e=e.substr(0,e.lastIndexOf("/")+1),(e.length>0||t.authority)&&"/"!==e.substr(-1)&&(e+="/"),e+=n.path,s.path=e}s.query=n.query}""!==n.path&&(s.path=r.removeDotSegments(s.path));let o=s.protocol;return null!==s.authority&&(o+="//"+s.authority),o+=s.path,null!==s.query&&(o+="?"+s.query),null!==n.fragment&&(o+="#"+n.fragment),""===o&&(o="./"),o},r.removeBase=(t,e)=>{if(null===t)return e;(!t||i.isString(t))&&(t=r.parse(t||""));let n="";if(""!==t.href?n+=(t.protocol||"")+"//"+(t.authority||""):e.indexOf("//")&&(n+="//"),0!==e.indexOf(n))return e;const s=r.parse(e.substr(n.length)),o=t.normalizedPath.split("/"),a=s.normalizedPath.split("/"),l=s.fragment||s.query?0:1;for(;o.length>0&&a.length>l&&o[0]===a[0];)o.shift(),a.shift();let c="";if(o.length>0){o.pop();for(let t=0;t{if(0===t.length)return"";const e=t.split("/"),n=[];for(;e.length>0;){const t=e.shift(),i=0===e.length;"."!==t?".."!==t?n.push(t):(n.pop(),i&&n.push("")):i&&n.push("")}return"/"===t[0]&&n.length>0&&""!==n[0]&&n.unshift(""),1===n.length&&""===n[0]?"/":n.join("/")};const s=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^\s]*$/;r.isAbsolute=t=>i.isString(t)&&s.test(t),r.isRelative=t=>i.isString(t)},{"./types":30}],32:[function(t,e,n){"use strict";const i=t("./graphTypes"),r=t("./types"),s=t("rdf-canonize").IdentifierIssuer,o=t("./JsonLdError"),a=/(?:<[^>]*?>|"[^"]*?"|[^,])+/g,l=/\s*<([^>]*?)>\s*(?:;\s*(.*))?/,c=/(.*?)=(?:(?:"([^"]*?)")|([^"]*?))\s*(?:(?:;\s*)|$)/g,u={accept:"application/ld+json, application/json"},h={};function d(t,e){if(r.isArray(e))for(let n=0;n{if(Object.keys(t).some(t=>"accept"===t.toLowerCase()))throw new RangeError('Accept header may not be specified; only "'+u.accept+'" is supported.');return Object.assign({Accept:u.accept},t)},h.parseLinkHeader=t=>{const e={},n=t.match(a);for(let i=0;i{if(!(r.isString(t)||r.isArray(t)&&t.every(t=>r.isString(t)))){if(e&&r.isObject(t))switch(Object.keys(t).length){case 0:return;case 1:if("@default"in t&&h.asArray(t["@default"]).every(t=>r.isString(t)))return}throw new o('Invalid JSON-LD syntax; "@type" value must a string, an array of strings, an empty object, or a default object.',"jsonld.SyntaxError",{code:"invalid type value",value:t})}},h.hasProperty=(t,e)=>{if(t.hasOwnProperty(e)){const n=t[e];return!r.isArray(n)||n.length>0}return!1},h.hasValue=(t,e,n)=>{if(h.hasProperty(t,e)){let s=t[e];const o=i.isList(s);if(r.isArray(s)||o){o&&(s=s["@list"]);for(let t=0;t{if("propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1),"valueIsArray"in i||(i.valueIsArray=!1),"allowDuplicate"in i||(i.allowDuplicate=!0),"prependValue"in i||(i.prependValue=!1),i.valueIsArray)t[e]=n;else if(r.isArray(n)){0===n.length&&i.propertyIsArray&&!t.hasOwnProperty(e)&&(t[e]=[]),i.prependValue&&(n=n.concat(t[e]),t[e]=[]);for(let r=0;r[].concat(t[e]||[]),h.removeProperty=(t,e)=>{delete t[e]},h.removeValue=(t,e,n,i)=>{"propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1);const r=h.getValues(t,e).filter(t=>!h.compareValues(t,n));0===r.length?h.removeProperty(t,e):t[e]=1!==r.length||i.propertyIsArray?r:r[0]},h.relabelBlankNodes=(t,e)=>d((e=e||{}).issuer||new s("_:b"),t),h.compareValues=(t,e)=>!!(t===e||i.isValue(t)&&i.isValue(e)&&t["@value"]===e["@value"]&&t["@type"]===e["@type"]&&t["@language"]===e["@language"]&&t["@index"]===e["@index"])||!!(r.isObject(t)&&"@id"in t&&r.isObject(e)&&"@id"in e)&&t["@id"]===e["@id"],h.compareShortestLeast=(t,e)=>t.length1;const g=(t,e,n)=>{const i=t[d].get(e);if(i){const e=i.value;if(m(t,e)){if(y(t,i),!t[a])return}else n&&(t[p]&&(i.value.now=Date.now()),t[h].unshiftNode(i));return e.value}},m=(t,e)=>{if(!e||!e.maxAge&&!t[l])return!1;const n=Date.now()-e.now;return e.maxAge?n>e.maxAge:t[l]&&n>t[l]},b=t=>{if(t[s]>t[r])for(let e=t[h].tail;t[s]>t[r]&&null!==e;){const n=e.prev;y(t,e),e=n}},y=(t,e)=>{if(e){const n=e.value;t[c]&&t[c](n.key,n.value),t[s]-=n.length,t[d].delete(n.key),t[h].removeNode(e)}};class v{constructor(t,e,n,i,r){this.key=t,this.value=e,this.length=n,this.now=i,this.maxAge=r||0}}const _=(t,e,n,i)=>{let r=n.value;m(t,r)&&(y(t,n),t[a]||(r=void 0)),r&&e.call(i,r.value,r.key,t)};e.exports=class{constructor(t){if("number"==typeof t&&(t={max:t}),t||(t={}),t.max&&("number"!=typeof t.max||t.max<0))throw new TypeError("max must be a non-negative number");this[r]=t.max||1/0;const e=t.length||f;if(this[o]="function"!=typeof e?f:e,this[a]=t.stale||!1,t.maxAge&&"number"!=typeof t.maxAge)throw new TypeError("maxAge must be a number");this[l]=t.maxAge||0,this[c]=t.dispose,this[u]=t.noDisposeOnSet||!1,this[p]=t.updateAgeOnGet||!1,this.reset()}set max(t){if("number"!=typeof t||t<0)throw new TypeError("max must be a non-negative number");this[r]=t||1/0,b(this)}get max(){return this[r]}set allowStale(t){this[a]=!!t}get allowStale(){return this[a]}set maxAge(t){if("number"!=typeof t)throw new TypeError("maxAge must be a non-negative number");this[l]=t,b(this)}get maxAge(){return this[l]}set lengthCalculator(t){"function"!=typeof t&&(t=f),t!==this[o]&&(this[o]=t,this[s]=0,this[h].forEach(t=>{t.length=this[o](t.value,t.key),this[s]+=t.length})),b(this)}get lengthCalculator(){return this[o]}get length(){return this[s]}get itemCount(){return this[h].length}rforEach(t,e){e=e||this;for(let n=this[h].tail;null!==n;){const i=n.prev;_(this,t,n,e),n=i}}forEach(t,e){e=e||this;for(let n=this[h].head;null!==n;){const i=n.next;_(this,t,n,e),n=i}}keys(){return this[h].toArray().map(t=>t.key)}values(){return this[h].toArray().map(t=>t.value)}reset(){this[c]&&this[h]&&this[h].length&&this[h].forEach(t=>this[c](t.key,t.value)),this[d]=new Map,this[h]=new i,this[s]=0}dump(){return this[h].map(t=>!m(this,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}).toArray().filter(t=>t)}dumpLru(){return this[h]}set(t,e,n){if((n=n||this[l])&&"number"!=typeof n)throw new TypeError("maxAge must be a number");const i=n?Date.now():0,a=this[o](e,t);if(this[d].has(t)){if(a>this[r])return y(this,this[d].get(t)),!1;const o=this[d].get(t).value;return this[c]&&(this[u]||this[c](t,o.value)),o.now=i,o.maxAge=n,o.value=e,this[s]+=a-o.length,o.length=a,this.get(t),b(this),!0}const p=new v(t,e,a,i,n);return p.length>this[r]?(this[c]&&this[c](t,e),!1):(this[s]+=p.length,this[h].unshift(p),this[d].set(t,this[h].head),b(this),!0)}has(t){if(!this[d].has(t))return!1;const e=this[d].get(t).value;return!m(this,e)}get(t){return g(this,t,!0)}peek(t){return g(this,t,!1)}pop(){const t=this[h].tail;return t?(y(this,t),t.value):null}del(t){y(this,this[d].get(t))}load(t){this.reset();const e=Date.now();for(let n=t.length-1;n>=0;n--){const i=t[n],r=i.e||0;if(0===r)this.set(i.k,i.v);else{const t=r-e;t>0&&this.set(i.k,i.v,t)}}}prune(){this[d].forEach((t,e)=>g(this,e,!1))}}},{yallist:92}],34:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#",s="http://www.w3.org/2000/10/swap/";n.default={xsd:{decimal:`${r}decimal`,boolean:`${r}boolean`,double:`${r}double`,integer:`${r}integer`,string:`${r}string`},rdf:{type:`${i}type`,nil:`${i}nil`,first:`${i}first`,rest:`${i}rest`,langString:`${i}langString`},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:`${s}reify#forSome`,forAll:`${s}reify#forAll`},log:{implies:`${s}log#implies`}}},{}],35:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.termFromId=function t(e,n){if(n=n||d,!e)return n.defaultGraph();switch(e[0]){case"?":return n.variable(e.substr(1));case"_":return n.blankNode(e.substr(2));case'"':if(n===d)return new g(e);if('"'===e[e.length-1])return n.literal(e.substr(1,e.length-2));const i=e.lastIndexOf('"',e.length-1);return n.literal(e.substr(1,i-1),"@"===e[i+1]?e.substr(i+2):n.namedNode(e.substr(i+3)));case"<":const r=h.exec(e);return n.quad(t(w(r[1]),n),t(w(r[2]),n),t(w(r[3]),n),r[4]&&t(w(r[4]),n));default:return n.namedNode(e)}},n.termToId=function t(e){if("string"==typeof e)return e;if(e instanceof p&&"Quad"!==e.termType)return e.id;if(!e)return l.id;switch(e.termType){case"NamedNode":return e.value;case"BlankNode":return`_:${e.value}`;case"Variable":return`?${e.value}`;case"DefaultGraph":return"";case"Literal":return`"${e.value}"${e.language?`@${e.language}`:e.datatype&&e.datatype.value!==a.string?`^^${e.datatype.value}`:""}`;case"Quad":return`<<${_(t(e.subject))} ${_(t(e.predicate))} ${_(t(e.object))}${(0,s.isDefaultGraph)(e.graph)?"":` ${t(e.graph)}`}>>`;default:throw new Error(`Unexpected termType: ${e.termType}`)}},n.escapeQuotes=_,n.unescapeQuotes=w,n.Triple=n.Quad=n.DefaultGraph=n.Variable=n.BlankNode=n.Literal=n.NamedNode=n.Term=n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=t("./N3Util");const{rdf:o,xsd:a}=r.default;let l,c=0;const u=/^"(.*".*)(?="[^"]*$)/,h=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,d={namedNode:function(t){return new f(t)},blankNode:function(t){return new m(t||"n3-"+c++)},variable:function(t){return new b(t)},literal:function(t,e){if("string"==typeof e)return new g(`"${t}"@${e.toLowerCase()}`);let n=e?e.value:"";return""===n&&("boolean"==typeof t?n=a.boolean:"number"==typeof t&&(Number.isFinite(t)?n=Number.isInteger(t)?a.integer:a.double:(n=a.double,Number.isNaN(t)||(t=t>0?"INF":"-INF")))),new g(""===n||n===a.string?`"${t}"`:`"${t}"^^${n}`)},defaultGraph:function(){return l},quad:x,triple:x};n.default=d;class p{constructor(t){this.id=t}get value(){return this.id}equals(t){return t instanceof p?this.id===t.id:!!t&&this.termType===t.termType&&this.value===t.value}toJSON(){return{termType:this.termType,value:this.value}}}n.Term=p;class f extends p{get termType(){return"NamedNode"}}n.NamedNode=f;class g extends p{get termType(){return"Literal"}get value(){return this.id.substring(1,this.id.lastIndexOf('"'))}get language(){const t=this.id;let e=t.lastIndexOf('"')+1;return e`"${e.replace(/"/g,'""')}`)}function w(t){return t.replace(u,(t,e)=>`"${e.replace(/""/g,'"')}`)}function x(t,e,n,i){return new v(t,e,n,i)}n.Triple=n.Quad=v},{"./IRIs":34,"./N3Util":41}],36:[function(t,e,n){(function(e){(function(){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=s(t("./IRIs")),r=s(t("queue-microtask"));function s(t){return t&&t.__esModule?t:{default:t}}const{xsd:o}=i.default,a=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\([^])/g,l={"\\":"\\","'":"'",'"':'"',n:"\n",r:"\r",t:"\t",f:"\f",b:"\b",_:"_","~":"~",".":".","-":"-","!":"!",$:"$","&":"&","(":"(",")":")","*":"*","+":"+",",":",",";":";","=":"=","/":"/","?":"?","#":"#","@":"@","%":"%"},c=/[\x00-\x20<>\\"\{\}\|\^\`]/,u={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},h=/$0^/;n.default=class{constructor(t){if(this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,this._lineMode=!!(t=t||{}).lineMode){this._n3Mode=!1;for(const t in this)!(t in u)&&this[t]instanceof RegExp&&(this[t]=h)}else this._n3Mode=!1!==t.n3;this._comments=!!t.comments,this._literalClosingPos=0}_tokenizeToEnd(t,e){let n=this._input;const i=this._comments;for(;;){let s,a;for(;s=this._newline.exec(n);)i&&(a=this._comment.exec(s[0]))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),n=n.substr(s[0].length,n.length),this._line++;if(!s&&(s=this._whitespace.exec(n))&&(n=n.substr(s[0].length,n.length)),this._endOfFile.test(n))return e&&(i&&(a=this._comment.exec(n))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),t(n=null,{line:this._line,type:"eof",value:"",prefix:""})),this._input=n;const l=this._line,u=n[0];let h="",d="",p="",f=null,g=0,m=!1;switch(u){case"^":if(n.length<3)break;if("^"!==n[1]){this._n3Mode&&(g=1,h="^");break}if(this._previousMarker="^^",n=n.substr(2),"<"!==n[0]){m=!0;break}case"<":if(f=this._unescapedIri.exec(n))h="IRI",d=f[1];else if(f=this._iri.exec(n)){if(d=this._unescape(f[1]),null===d||c.test(d))return r(this);h="IRI"}else n.length>1&&"<"===n[1]?(h="<<",g=2):this._n3Mode&&n.length>1&&"="===n[1]&&(h="inverse",g=2,d=">");break;case">":n.length>1&&">"===n[1]&&(h=">>",g=2);break;case"_":((f=this._blank.exec(n))||e&&(f=this._blank.exec(`${n} `)))&&(h="blank",p="_",d=f[1]);break;case'"':if(f=this._simpleQuotedString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){if(f=this._simpleApostropheString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(f=this._variable.exec(n))&&(h="var",d=f[0]);break;case"@":"literal"===this._previousMarker&&(f=this._langcode.exec(n))?(h="langcode",d=f[1]):(f=this._keyword.exec(n))&&(h=f[0]);break;case".":if(1===n.length?e:n[1]<"0"||n[1]>"9"){h=".",g=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(f=this._number.exec(n)||e&&(f=this._number.exec(`${n} `)))&&(h="literal",d=f[0],p="string"==typeof f[1]?o.double:"string"==typeof f[2]?o.decimal:o.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(f=this._sparqlKeyword.exec(n))?h=f[0].toUpperCase():m=!0;break;case"f":case"t":(f=this._boolean.exec(n))?(h="literal",d=f[0],p=o.boolean):m=!0;break;case"a":(f=this._shortPredicates.exec(n))?(h="abbreviation",d="a"):m=!0;break;case"=":this._n3Mode&&n.length>1&&(h="abbreviation",">"!==n[1]?(g=1,d="="):(g=2,d=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"{":case"}":this._lineMode||(g=1,h=u);break;default:m=!0}if(m&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(f=this._prefix.exec(n))?((f=this._prefixed.exec(n))||e&&(f=this._prefixed.exec(`${n} `)))&&(h="prefixed",p=f[1]||"",d=this._unescape(f[2])):(h="prefix",d=f[1]||"")),"^^"===this._previousMarker)switch(h){case"prefixed":h="type";break;case"IRI":h="typeIRI";break;default:h=""}if(!h)return e||!/^'''|^"""/.test(n)&&/\n|\r/.test(n)?r(this):this._input=n;const b={line:l,type:h,value:d,prefix:p};t(null,b),this.previousToken=b,this._previousMarker=h,n=n.substr(g||f[0].length,n.length)}function r(e){t(e._syntaxError(/^\S*/.exec(n)[0]))}}_unescape(t){let e=!1;const n=t.replace(a,(t,n,i,r)=>{if("string"==typeof n)return String.fromCharCode(Number.parseInt(n,16));if("string"==typeof i){let t=Number.parseInt(i,16);return t<=65535?String.fromCharCode(Number.parseInt(i,16)):String.fromCharCode(55296+((t-=65536)>>10),56320+(1023&t))}return r in l?l[r]:(e=!0,"")});return e?null:n}_parseLiteral(t){if(t.length>=3){const e=t.match(/^(?:"""|"|'''|'|)/)[0],n=e.length;let i=Math.max(this._literalClosingPos,n);for(;(i=t.indexOf(e,i))>0;){let e=0;for(;"\\"===t[i-e-1];)e++;if(e%2==0){const e=t.substring(n,i),r=e.split(/\r\n|\r|\n/).length-1,s=i+n;if(1===n&&0!==r||3===n&&this._lineMode)break;return this._line+=r,{value:this._unescape(e),matchLength:s}}i++}this._literalClosingPos=t.length-n+1}return{value:"",matchLength:0}}_syntaxError(t){this._input=null;const e=new Error(`Unexpected "${t}" on line ${this._line}.`);return e.context={token:void 0,line:this._line,previousToken:this.previousToken},e}_readStartingBom(t){return t.startsWith("\ufeff")?t.substr(1):t}tokenize(t,n){if(this._line=1,"string"==typeof t){if(this._input=this._readStartingBom(t),"function"!=typeof n){const t=[];let e;if(this._tokenizeToEnd((n,i)=>n?e=n:t.push(i),!0),e)throw e;return t}(0,r.default)(()=>this._tokenizeToEnd(n,!0))}else this._pendingBuffer=null,"function"==typeof t.setEncoding&&t.setEncoding("utf8"),t.on("data",t=>{null!==this._input&&0!==t.length&&(this._pendingBuffer&&(t=e.concat([this._pendingBuffer,t]),this._pendingBuffer=null),128&t[t.length-1]?this._pendingBuffer=t:(void 0===this._input?this._input=this._readStartingBom("string"==typeof t?t:t.toString()):this._input+=t,this._tokenizeToEnd(n,!1)))}),t.on("end",()=>{"string"==typeof this._input&&this._tokenizeToEnd(n,!0)}),t.on("error",n)}}}).call(this)}).call(this,t("buffer").Buffer)},{"./IRIs":34,buffer:6,"queue-microtask":45}],37:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=o(t("./N3Lexer")),r=o(t("./N3DataFactory")),s=o(t("./IRIs"));function o(t){return t&&t.__esModule?t:{default:t}}let a=0;class l{constructor(t){this._contextStack=[],this._graph=null,this._setBase((t=t||{}).baseIRI),t.factory&&u(this,t.factory);const e="string"==typeof t.format?t.format.match(/\w*$/)[0].toLowerCase():"",n=/turtle/.test(e),r=/trig/.test(e),s=/triple/.test(e),o=/quad/.test(e),a=this._n3Mode=/n3/.test(e),l=s||o;(this._supportsNamedGraphs=!(n||a))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(n||r||s||a),this._supportsRDFStar=""===e||/star|\*$/.test(e),l&&(this._resolveRelativeIRI=t=>null),this._blankNodePrefix="string"!=typeof t.blankNodePrefix?"":t.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=t.lexer||new i.default({lineMode:l,n3:a}),this._explicitQuantifiers=!!t.explicitQuantifiers}static _resetBlankNodePrefix(){a=0}_setBase(t){if(t){const e=t.indexOf("#");e>=0&&(t=t.substr(0,e)),this._base=t,this._basePath=t.indexOf("/")<0?t:t.replace(/[^\/?]*(?:\?.*)?$/,""),t=t.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=t[0],this._baseScheme=t[1]}else this._base="",this._basePath=""}_saveContext(t,e,n,i,r){const s=this._n3Mode;this._contextStack.push({subject:n,predicate:i,object:r,graph:e,type:t,inverse:!!s&&this._inversePredicate,blankPrefix:s?this._prefixes._:"",quantified:s?this._quantified:null}),s&&(this._inversePredicate=!1,this._prefixes._=this._graph?`${this._graph.id.substr(2)}.`:".",this._quantified=Object.create(this._quantified))}_restoreContext(){const t=this._contextStack.pop(),e=this._n3Mode;this._subject=t.subject,this._predicate=t.predicate,this._object=t.object,this._graph=t.graph,e&&(this._inversePredicate=t.inverse,this._prefixes._=t.blankPrefix,this._quantified=t.quantified)}_readInTopContext(t){switch(t.type){case"eof":return null!==this._graph?this._error("Unclosed graph",t):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(t)}}_readEntity(t,e){let n;switch(t.type){case"IRI":case"typeIRI":const e=this._resolveIRI(t.value);if(null===e)return this._error("Invalid IRI",t);n=this._namedNode(e);break;case"type":case"prefixed":const i=this._prefixes[t.prefix];if(void 0===i)return this._error(`Undefined prefix "${t.prefix}:"`,t);n=this._namedNode(i+t.value);break;case"blank":n=this._blankNode(this._prefixes[t.prefix]+t.value);break;case"var":n=this._variable(t.value.substr(1));break;default:return this._error(`Expected entity but got ${t.type}`,t)}return!e&&this._n3Mode&&n.id in this._quantified&&(n=this._quantified[n.id]),n}_readSubject(t){switch(this._predicate=null,t.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",t);case"}":return this._readPunctuation(t);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',t);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',t);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",t);if(0===t.prefix.length)return this._literalValue=t.value,this._completeSubjectLiteral;this._subject=this._literal(t.value,this._namedNode(t.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._subject=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}_readPredicate(t){const e=t.type;switch(e){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[t.value];break;case".":case"]":case"}":return null===this._predicate?this._error(`Unexpected ${e}`,t):(this._subject=null,"]"===e?this._readBlankNodeTail(t):this._readPunctuation(t));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",t);case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",t);default:if(void 0===(this._predicate=this._readEntity(t)))return}return this._readObject}_readObject(t){switch(t.type){case"literal":if(0===t.prefix.length)return this._literalValue=t.value,this._readDataTypeOrLang;this._object=this._literal(t.value,this._namedNode(t.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._object=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}_readPredicateOrNamedGraph(t){return"{"===t.type?this._readGraph(t):this._readPredicate(t)}_readGraph(t){return"{"!==t.type?this._error(`Expected graph but got ${t.type}`,t):(this._graph=this._subject,this._subject=null,this._readSubject)}_readBlankNodeHead(t){return"]"===t.type?(this._subject=null,this._readBlankNodeTail(t)):(this._predicate=null,this._readPredicate(t))}_readBlankNodeTail(t){if("]"!==t.type)return this._readBlankNodePunctuation(t);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);const e=null===this._predicate;return this._restoreContext(),null===this._object?e?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank:this._getContextEndReader()}_readPredicateAfterBlank(t){switch(t.type){case".":case"}":return this._subject=null,this._readPunctuation(t);default:return this._readPredicate(t)}}_readListItem(t){let e=null,n=null,i=this._readListItem;const r=this._subject,s=this._contextStack,o=s[s.length-1];switch(t.type){case"[":this._saveContext("blank",this._graph,n=this._blankNode(),this.RDF_FIRST,this._subject=e=this._blankNode()),i=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,n=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext(),0!==s.length&&"list"===s[s.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(i=this._readPredicate,this._subject===this.RDF_NIL)return i}else if(i=this._getContextEndReader(),this._object===this.RDF_NIL)return i;n=this.RDF_NIL;break;case"literal":0===t.prefix.length?(this._literalValue=t.value,i=this._readListItemDataTypeOrLang):(e=this._literal(t.value,this._namedNode(t.prefix)),i=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);default:if(void 0===(e=this._readEntity(t)))return}if(null===n&&(this._subject=n=this._blankNode()),null===r?null===o.predicate?o.subject=n:o.object=n:this._emit(r,this.RDF_REST,n,this._graph),null!==e){if(this._n3Mode&&("IRI"===t.type||"prefixed"===t.type))return this._saveContext("item",this._graph,n,this.RDF_FIRST,e),this._subject=e,this._predicate=null,this._getPathReader(this._readListItem);this._emit(n,this.RDF_FIRST,e,this._graph)}return i}_readDataTypeOrLang(t){return this._completeObjectLiteral(t,!1)}_readListItemDataTypeOrLang(t){return this._completeObjectLiteral(t,!0)}_completeLiteral(t){let e=this._literal(this._literalValue);switch(t.type){case"type":case"typeIRI":const n=this._readEntity(t);if(void 0===n)return;e=this._literal(this._literalValue,n),t=null;break;case"langcode":e=this._literal(this._literalValue,t.value),t=null}return{token:t,literal:e}}_completeSubjectLiteral(t){return this._subject=this._completeLiteral(t).literal,this._readPredicateOrNamedGraph}_completeObjectLiteral(t,e){const n=this._completeLiteral(t);if(n)return this._object=n.literal,e&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===n.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(n.token))}_readFormulaTail(t){return"}"!==t.type?this._readPunctuation(t):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext(),null===this._object?this._readPredicate:this._getContextEndReader())}_readPunctuation(t){let e,n=this._graph;const i=this._subject,r=this._inversePredicate;switch(t.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",t);if(this._n3Mode)return this._readFormulaTail(t);this._graph=null;case".":this._subject=null,e=this._contextStack.length?this._readSubject:this._readInTopContext,r&&(this._inversePredicate=!1);break;case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(n=this._readEntity(t))){e=this._readQuadPunctuation;break}return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}if(null!==i){const t=this._predicate,e=this._object;r?this._emit(e,t,i,n):this._emit(i,t,e,n)}return e}_readBlankNodePunctuation(t){let e;switch(t.type){case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}return this._emit(this._subject,this._predicate,this._object,this._graph),e}_readQuadPunctuation(t){return"."!==t.type?this._error("Expected dot to follow quad",t):this._readInTopContext}_readPrefix(t){return"prefix"!==t.type?this._error("Expected prefix to follow @prefix",t):(this._prefix=t.value,this._readPrefixIRI)}_readPrefixIRI(t){if("IRI"!==t.type)return this._error(`Expected IRI to follow prefix "${this._prefix}:"`,t);const e=this._readEntity(t);return this._prefixes[this._prefix]=e.value,this._prefixCallback(this._prefix,e),this._readDeclarationPunctuation}_readBaseIRI(t){const e="IRI"===t.type&&this._resolveIRI(t.value);return e?(this._setBase(e),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",t)}_readNamedGraphLabel(t){switch(t.type){case"IRI":case"blank":case"prefixed":return this._readSubject(t),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",t)}}_readNamedGraphBlankLabel(t){return"]"!==t.type?this._error("Invalid graph label",t):(this._subject=this._blankNode(),this._readGraph)}_readDeclarationPunctuation(t){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(t)):"."!==t.type?this._error("Expected declaration to end with a dot",t):this._readInTopContext}_readQuantifierList(t){let e;switch(t.type){case"IRI":case"prefixed":if(void 0!==(e=this._readEntity(t,!0)))break;default:return this._error(`Unexpected ${t.type}`,t)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,e,this.QUANTIFIERS_GRAPH)):this._quantified[e.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}_readQuantifierPunctuation(t){return","===t.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(t))}_getPathReader(t){return this._afterPath=t,this._readPath}_readPath(t){switch(t.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:const e=this._contextStack,n=e.length&&e[e.length-1];if(n&&"item"===n.type){const t=this._subject;this._restoreContext(),this._emit(this._subject,this.RDF_FIRST,t,this._graph)}return this._afterPath(t)}}_readForwardPath(t){let e,n;const i=this._blankNode();if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(e=this._subject,this._subject=i):(e=this._object,this._object=i),this._emit(e,n,i,this._graph),this._readPath}_readBackwardPath(t){const e=this._blankNode();let n,i;if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(i=this._subject,this._subject=e):(i=this._object,this._object=e),this._emit(e,n,i,this._graph),this._readPath}_readRDFStarTailOrGraph(t){return">>"!==t.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(t))?this._readRDFStarTail:this._error(`Expected >> to follow "${this._object.id}"`,t):this._readRDFStarTail(t)}_readRDFStarTail(t){if(">>"!==t.type)return this._error(`Expected >> but got ${t.type}`,t);const e=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext(),null===this._subject?(this._subject=e,this._readPredicate):(this._object=e,this._getContextEndReader())}_getContextEndReader(){const t=this._contextStack;if(!t.length)return this._readPunctuation;switch(t[t.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}_emit(t,e,n,i){this._callback(null,this._quad(t,e,n,i||this.DEFAULTGRAPH))}_error(t,e){const n=new Error(`${t} on line ${e.line}.`);n.context={token:e,line:e.line,previousToken:this._lexer.previousToken},this._callback(n),this._callback=c}_resolveIRI(t){return/^[a-z][a-z0-9+.-]*:/i.test(t)?t:this._resolveRelativeIRI(t)}_resolveRelativeIRI(t){if(!t.length)return this._base;switch(t[0]){case"#":return this._base+t;case"?":return this._base.replace(/(?:\?.*)?$/,t);case"/":return("/"===t[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(t);default:return/^[^/:]*:/.test(t)?null:this._removeDotSegments(this._basePath+t)}}_removeDotSegments(t){if(!/(^|\/)\.\.?($|[/#?])/.test(t))return t;const e=t.length;let n="",i=-1,r=-1,s=0,o="/";for(;i=r&&(n=n.substr(0,s)),"/"!==o)return`${n}/${t.substr(i+1)}`;s=i+1}}}o=t[++i]}return n+t.substring(s)}parse(t,e,n){if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):`b${a++}_`,this._prefixCallback=n||c,this._inversePredicate=!1,this._quantified=Object.create(null),!e){const e=[];let n;if(this._callback=(t,i)=>{t?n=t:i&&e.push(i)},this._lexer.tokenize(t).every(t=>this._readCallback=this._readCallback(t)),n)throw n;return e}this._callback=e,this._lexer.tokenize(t,(t,e)=>{null!==t?(this._callback(t),this._callback=c):this._readCallback&&(this._readCallback=this._readCallback(e))})}}function c(){}function u(t,e){const n=e.namedNode;t._namedNode=n,t._blankNode=e.blankNode,t._literal=e.literal,t._variable=e.variable,t._quad=e.quad,t.DEFAULTGRAPH=e.defaultGraph(),t.RDF_FIRST=n(s.default.rdf.first),t.RDF_REST=n(s.default.rdf.rest),t.RDF_NIL=n(s.default.rdf.nil),t.N3_FORALL=n(s.default.r.forAll),t.N3_FORSOME=n(s.default.r.forSome),t.ABBREVIATIONS={a:n(s.default.rdf.type),"=":n(s.default.owl.sameAs),">":n(s.default.log.implies)},t.QUANTIFIERS_GRAPH=n("urn:n3:quantifiers")}n.default=l,u(l.prototype,r.default)},{"./IRIs":34,"./N3DataFactory":35,"./N3Lexer":36}],38:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),s=t("readable-stream"),o=(i=t("./IRIs"))&&i.__esModule?i:{default:i};function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}class l{constructor(t,e){this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,!e&&t&&!t[0]&&(e=t,t=null),this._factory=(e=e||{}).factory||r.default,t&&this.addQuads(t)}get size(){let t=this._size;if(null!==t)return t;t=0;const e=this._graphs;let n,i;for(const r in e)for(const s in n=e[r].subjects)for(const e in i=n[s])t+=Object.keys(i[e]).length;return this._size=t}_addToIndex(t,e,n,i){const r=t[e]||(t[e]={}),s=r[n]||(r[n]={}),o=i in s;return o||(s[i]=null),!o}_removeFromIndex(t,e,n,i){const r=t[e],s=r[n];delete s[i];for(const o in s)return;delete r[n];for(const o in r)return;delete t[e]}_findInIndex(t,e,n,i,s,o,a,l,c,u){let h,d,p;const f=!e+!n+!i>1?Object.keys(this._ids):this._entities;e&&((h=t,t={})[e]=h[e]);for(const g in t){const e=f[g];if(d=t[g]){n&&((h=d,d={})[n]=h[n]);for(const t in d){const n=f[t];if(p=d[t]){const t=i?i in p?[i]:[]:Object.keys(p);for(let i=0;i{n in e||(e[n]=!0,t((0,r.termFromId)(this._entities[n],this._factory)))}}add(t){return this.addQuad(t),this}addQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);let s=this._graphs[i];s||(s=this._graphs[i]={subjects:{},predicates:{},objects:{}},Object.freeze(s));const o=this._ids,a=this._entities;t=o[t]||(o[a[++this._id]=t]=this._id),e=o[e]||(o[a[++this._id]=e]=this._id),n=o[n]||(o[a[++this._id]=n]=this._id);const l=this._addToIndex(s.subjects,t,e,n);return this._addToIndex(s.predicates,e,n,t),this._addToIndex(s.objects,n,t,e),this._size=null,l}addQuads(t){for(let e=0;e{this.addQuad(t)}),t}removeQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);const s=this._ids,o=this._graphs;let a,l,c;if(!((t=s[t])&&(e=s[e])&&(n=s[n])&&(a=o[i])&&(l=a.subjects[t])&&(c=l[e])&&n in c))return!1;for(t in this._removeFromIndex(a.subjects,t,e,n),this._removeFromIndex(a.predicates,e,n,t),this._removeFromIndex(a.objects,n,t,e),null!==this._size&&this._size--,a.subjects)return!0;return delete o[i],!0}removeQuads(t){for(let e=0;e{this.removeQuad(t)}),t}removeMatches(t,e,n,i){const r=new s.Readable({objectMode:!0});return r._read=()=>{for(const s of this.getQuads(t,e,n,i))r.push(s);r.push(null)},this.remove(r)}deleteGraph(t){return this.removeMatches(null,null,null,t)}getQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=[],o=this._getGraphs(i),a=this._ids;let l,u,h,d;if(c(t)&&!(u=a[t])||c(e)&&!(h=a[e])||c(n)&&!(d=a[n]))return s;for(const r in o)(l=o[r])&&(u?d?this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,null,s):h?this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,null,s):d?this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,null,s));return s}match(t,e,n,i){return new u(this,t,e,n,i)}countQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._getGraphs(i),o=this._ids;let a,l,u,h,d=0;if(c(t)&&!(l=o[t])||c(e)&&!(u=o[e])||c(n)&&!(h=o[n]))return 0;for(const r in s)(a=s[r])&&(d+=t?n?this._countInIndex(a.objects,h,l,u):this._countInIndex(a.subjects,l,u,h):e?this._countInIndex(a.predicates,u,h,l):this._countInIndex(a.objects,h,l,u));return d}forEach(t,e,n,i,r){this.some(e=>(t(e),!1),e,n,i,r)}every(t,e,n,i,r){let s=!1;const o=!this.some(e=>(s=!0,!t(e)),e,n,i,r);return s&&o}some(t,e,n,i,s){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i),s=s&&(0,r.termToId)(s);const o=this._getGraphs(s),a=this._ids;let l,u,h,d;if(c(e)&&!(u=a[e])||c(n)&&!(h=a[n])||c(i)&&!(d=a[i]))return!1;for(const r in o)if(l=o[r])if(u){if(d){if(this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,t,null))return!0}else if(h){if(this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,t,null))return!0}else if(d){if(this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,t,null))return!0;return!1}getSubjects(t,e,n){const i=[];return this.forSubjects(t=>{i.push(t)},t,e,n),i}forSubjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.predicates,l,u,t):this._loopByKey1(a.subjects,l,t):u?this._loopByKey0(a.objects,u,t):this._loop(a.subjects,t))}getPredicates(t,e,n){const i=[];return this.forPredicates(t=>{i.push(t)},t,e,n),i}forPredicates(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.objects,u,l,t):this._loopByKey0(a.subjects,l,t):u?this._loopByKey1(a.predicates,u,t):this._loop(a.predicates,t))}getObjects(t,e,n){const i=[];return this.forObjects(t=>{i.push(t)},t,e,n),i}forObjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.subjects,l,u,t):this._loopByKey1(a.objects,l,t):u?this._loopByKey0(a.predicates,u,t):this._loop(a.objects,t))}getGraphs(t,e,n){const i=[];return this.forGraphs(t=>{i.push(t)},t,e,n),i}forGraphs(t,e,n,i){for(const r in this._graphs)this.some(e=>(t(e.graph),!0),e,n,i,r)}createBlankNode(t){let e,n;if(t)for(e=t=`_:${t}`,n=1;this._ids[e];)e=t+n++;else do{e="_:b"+this._blankNodeIndex++}while(this._ids[e]);return this._ids[e]=++this._id,this._entities[this._id]=e,this._factory.blankNode(e.substr(2))}extractLists({remove:t=!1,ignoreErrors:e=!1}={}){const n={},i=e?()=>!0:(t,e)=>{throw new Error(`${t.value} ${e}`)},r=this.getQuads(null,o.default.rdf.rest,o.default.rdf.nil,null),s=t?[...r]:[];return r.forEach(e=>{const r=[];let a,l,c=!1;const u=e.graph;let h=e.subject;for(;h&&!c;){const t=this.getQuads(null,null,h,null),e=this.getQuads(h,null,null,null);let n,d=null,p=null,f=null;for(let r=0;r{switch(t){case"data":e=i;break;case"end":n=i}}},(t,e)=>{t&&this.emit("error",t)||e&&this.push(e)},(t,e)=>{this.emit("prefix",t,e)}),this._transform=(t,n,i)=>{e(t),i()},this._flush=t=>{n(),t()}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),this}}},{"./N3Parser":37,"readable-stream":81}],40:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=t("readable-stream"),s=(i=t("./N3Writer"))&&i.__esModule?i:{default:i};n.default=class extends r.Transform{constructor(t){super({encoding:"utf8",writableObjectMode:!0});const e=this._writer=new s.default({write:(t,e,n)=>{this.push(t),n&&n()},end:t=>{this.push(null),t&&t()}},t);this._transform=(t,n,i)=>{e.addQuad(t,i)},this._flush=t=>{e.end(t)}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),t.on("prefix",(t,e)=>{this._writer.addPrefix(t,e)}),this}}},{"./N3Writer":42,"readable-stream":81}],41:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.isNamedNode=function(t){return!!t&&"NamedNode"===t.termType},n.isBlankNode=function(t){return!!t&&"BlankNode"===t.termType},n.isLiteral=function(t){return!!t&&"Literal"===t.termType},n.isVariable=function(t){return!!t&&"Variable"===t.termType},n.isDefaultGraph=s,n.inDefaultGraph=function(t){return s(t.graph)},n.prefix=function(t,e){return o({"":t},e)("")},n.prefixes=o;var i,r=(i=t("./N3DataFactory"))&&i.__esModule?i:{default:i};function s(t){return!!t&&"DefaultGraph"===t.termType}function o(t,e){const n=Object.create(null);for(const r in t)i(r,t[r]);function i(t,i){if("string"==typeof i){const r=Object.create(null);n[t]=t=>r[t]||(r[t]=e.namedNode(i+t))}else if(!(t in n))throw new Error(`Unknown prefix: ${t}`);return n[t]}return e=e||r.default,i}},{"./N3DataFactory":35}],42:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),o=t("./N3Util");function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}const l=s.default.defaultGraph(),{rdf:c,xsd:u}=r.default,h=/["\\\t\n\r\b\f\u0000-\u0019\ud800-\udbff]/,d=/["\\\t\n\r\b\f\u0000-\u0019]|[\ud800-\udbff][\udc00-\udfff]/g,p={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};class f extends s.Term{equals(){return!1}}function g(t){let e=p[t];return void 0===e&&(1===t.length?(e=t.charCodeAt(0).toString(16),e="\\u0000".substr(0,6-e.length)+e):(e=(1024*(t.charCodeAt(0)-55296)+t.charCodeAt(1)+9216).toString(16),e="\\U00000000".substr(0,10-e.length)+e)),e}n.default=class{constructor(t,e){if(this._prefixRegex=/$0^/,t&&"function"!=typeof t.write&&(e=t,t=null),this._lists=(e=e||{}).lists,t)this._outputStream=t,this._endStream=void 0===e.end||!!e.end;else{let t="";this._outputStream={write(e,n,i){t+=e,i&&i()},end:e=>{e&&e(null,t)}},this._endStream=!0}this._subject=null,/triple|quad/i.test(e.format)?(this._lineMode=!0,this._writeQuad=this._writeQuadLine):(this._lineMode=!1,this._graph=l,this._baseIRI=e.baseIRI,this._prefixIRIs=Object.create(null),e.prefixes&&this.addPrefixes(e.prefixes))}get _inDefaultGraph(){return l.equals(this._graph)}_write(t,e){this._outputStream.write(t,"utf8",e)}_writeQuad(t,e,n,i,r){try{i.equals(this._graph)||(this._write((null===this._subject?"":this._inDefaultGraph?".\n":"\n}\n")+(l.equals(i)?"":`${this._encodeIriOrBlank(i)} {\n`)),this._graph=i,this._subject=null),t.equals(this._subject)?e.equals(this._predicate)?this._write(`, ${this._encodeObject(n)}`,r):this._write(`;\n ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r):this._write(`${(null===this._subject?"":".\n")+this._encodeSubject(this._subject=t)} ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r)}catch(s){r&&r(s)}}_writeQuadLine(t,e,n,i,r){delete this._prefixMatch,this._write(this.quadToString(t,e,n,i),r)}quadToString(t,e,n,i){return`${this._encodeSubject(t)} ${this._encodeIriOrBlank(e)} ${this._encodeObject(n)}${i&&i.value?` ${this._encodeIriOrBlank(i)} .\n`:" .\n"}`}quadsToString(t){return t.map(t=>this.quadToString(t.subject,t.predicate,t.object,t.graph)).join("")}_encodeSubject(t){return"Quad"===t.termType?this._encodeQuad(t):this._encodeIriOrBlank(t)}_encodeIriOrBlank(t){if("NamedNode"!==t.termType)return this._lists&&t.value in this._lists&&(t=this.list(this._lists[t.value])),"id"in t?t.id:`_:${t.value}`;let e=t.value;this._baseIRI&&e.startsWith(this._baseIRI)&&(e=e.substr(this._baseIRI.length)),h.test(e)&&(e=e.replace(d,g));const n=this._prefixRegex.exec(e);return n?n[1]?this._prefixIRIs[n[1]]+n[2]:e:`<${e}>`}_encodeLiteral(t){let e=t.value;if(h.test(e)&&(e=e.replace(d,g)),t.language)return`"${e}"@${t.language}`;if(this._lineMode){if(t.datatype.value===u.string)return`"${e}"`}else switch(t.datatype.value){case u.string:return`"${e}"`;case u.boolean:if("true"===e||"false"===e)return e;break;case u.integer:if(/^[+-]?\d+$/.test(e))return e;break;case u.decimal:if(/^[+-]?\d*\.\d+$/.test(e))return e;break;case u.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(e))return e}return`"${e}"^^${this._encodeIriOrBlank(t.datatype)}`}_encodePredicate(t){return t.value===c.type?"a":this._encodeIriOrBlank(t)}_encodeObject(t){switch(t.termType){case"Quad":return this._encodeQuad(t);case"Literal":return this._encodeLiteral(t);default:return this._encodeIriOrBlank(t)}}_encodeQuad({subject:t,predicate:e,object:n,graph:i}){return`<<${this._encodeSubject(t)} ${this._encodePredicate(e)} ${this._encodeObject(n)}${(0,o.isDefaultGraph)(i)?"":` ${this._encodeIriOrBlank(i)}`}>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(t,e,n,i,r){void 0===n?this._writeQuad(t.subject,t.predicate,t.object,t.graph,e):"function"==typeof i?this._writeQuad(t,e,n,l,i):this._writeQuad(t,e,n,i||l,r)}addQuads(t){for(let e=0;e.\n`)}if(n){let t="",e="";for(const n in this._prefixIRIs)t+=t?`|${n}`:n,e+=(e?"|":"")+this._prefixIRIs[n];t=t.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(?:${e})[^/]*$|^(${t})([a-zA-Z][\\-_a-zA-Z0-9]*)$`)}this._write(n?"\n":"",e)}blank(t,e){let n,i,r=t;switch(void 0===t?r=[]:t.termType?r=[{predicate:t,object:e}]:"length"in t||(r=[t]),i=r.length){case 0:return new f("[]");case 1:if(n=r[0],!(n.object instanceof f))return new f(`[ ${this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)} ]`);default:let e="[";for(let s=0;s{e=null,t(n,i)});if(this._endStream)try{return this._outputStream.end(e)}catch(n){}e&&e()}}},{"./IRIs":34,"./N3DataFactory":35,"./N3Util":41}],43:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"Lexer",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(n,"Parser",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(n,"Writer",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(n,"Store",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(n,"StreamParser",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(n,"StreamWriter",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(n,"DataFactory",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(n,"Term",{enumerable:!0,get:function(){return u.Term}}),Object.defineProperty(n,"NamedNode",{enumerable:!0,get:function(){return u.NamedNode}}),Object.defineProperty(n,"Literal",{enumerable:!0,get:function(){return u.Literal}}),Object.defineProperty(n,"BlankNode",{enumerable:!0,get:function(){return u.BlankNode}}),Object.defineProperty(n,"Variable",{enumerable:!0,get:function(){return u.Variable}}),Object.defineProperty(n,"DefaultGraph",{enumerable:!0,get:function(){return u.DefaultGraph}}),Object.defineProperty(n,"Quad",{enumerable:!0,get:function(){return u.Quad}}),Object.defineProperty(n,"Triple",{enumerable:!0,get:function(){return u.Triple}}),Object.defineProperty(n,"termFromId",{enumerable:!0,get:function(){return u.termFromId}}),Object.defineProperty(n,"termToId",{enumerable:!0,get:function(){return u.termToId}}),n.Util=void 0;var i=p(t("./N3Lexer")),r=p(t("./N3Parser")),s=p(t("./N3Writer")),o=p(t("./N3Store")),a=p(t("./N3StreamParser")),l=p(t("./N3StreamWriter")),c=d(t("./N3Util"));n.Util=c;var u=d(t("./N3DataFactory"));function h(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(h=function(t){return t?n:e})(t)}function d(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=h(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}function p(t){return t&&t.__esModule?t:{default:t}}},{"./N3DataFactory":35,"./N3Lexer":36,"./N3Parser":37,"./N3Store":38,"./N3StreamParser":39,"./N3StreamWriter":40,"./N3Util":41,"./N3Writer":42}],44:[function(t,e,n){var i,r,s=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function l(t){if(i===setTimeout)return setTimeout(t,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(t,0);try{return i(t,0)}catch(e){try{return i.call(null,t,0)}catch(n){return i.call(this,t,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(t){i=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var c,u=[],h=!1,d=-1;function p(){!h||!c||(h=!1,c.length?u=c.concat(u):d=-1,u.length&&f())}function f(){if(!h){var t=l(p);h=!0;for(var e=u.length;e;){for(c=u,u=[];++d1)for(var n=1;n(n||(n=Promise.resolve())).then(t).catch(t=>setTimeout(()=>{throw t},0))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],46:[function(t,e,n){e.exports=t("./lib")},{"./lib":55}],47:[function(t,e,n){"use strict";e.exports=class t{constructor(t,e=new Map,n=0){this.prefix=t,this._existing=e,this.counter=n}clone(){const{prefix:e,_existing:n,counter:i}=this;return new t(e,new Map(n),i)}getId(t){const e=t&&this._existing.get(t);if(e)return e;const n=this.prefix+this.counter;return this.counter++,t&&this._existing.set(t,n),n}hasId(t){return this._existing.has(t)}getOldIds(){return[...this._existing.keys()]}}},{}],48:[function(t,e,n){"use strict";t("setimmediate");const r=self.crypto||self.msCrypto;e.exports=class{constructor(t){if(!r||!r.subtle)throw new Error("crypto.subtle not found.");if("sha256"===t)this.algorithm={name:"SHA-256"};else{if("sha1"!==t)throw new Error(`Unsupport algorithm "${t}".`);this.algorithm={name:"SHA-1"}}this._content=""}update(t){this._content+=t}digest(){var t=this;return i(function*(){const e=(new TextEncoder).encode(t._content),n=new Uint8Array(yield r.subtle.digest(t.algorithm,e));let i="";for(let t=0;t]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]+(?:<([^:]+:[^>]*)>)[ \\t]+(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?)|(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"(?:(?:\\^\\^(?:<([^:]+:[^>]*)>))|(?:@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)))?))[ \\t]*(?:\\.|(?:(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]*\\.))[ \\t]*$'),e.exports=class t{static parse(t){const e=[],n={},h=t.split(c.eoln);let p=0;for(const f of h){if(p++,c.empty.test(f))continue;const t=f.match(c.quad);if(null===t)throw new Error("N-Quads parse error on line "+p+".");const h={subject:null,predicate:null,object:null,graph:null};if(h.subject=void 0!==t[1]?{termType:s,value:t[1]}:{termType:o,value:t[2]},h.predicate={termType:s,value:t[3]},void 0!==t[4]?h.object={termType:s,value:t[4]}:void 0!==t[5]?h.object={termType:o,value:t[5]}:(h.object={termType:a,value:void 0,datatype:{termType:s}},void 0!==t[7]?h.object.datatype.value=t[7]:void 0!==t[8]?(h.object.datatype.value=i,h.object.language=t[8]):h.object.datatype.value=r,h.object.value=t[6].replace(d,function(t,e,n,i){if(e)switch(e){case"t":return"\t";case"b":return"\b";case"n":return"\n";case"r":return"\r";case"f":return"\f";case'"':return'"';case"'":return"'";case"\\":return"\\"}if(n)return String.fromCharCode(parseInt(n,16));if(i)throw new Error("Unsupported U escape")})),h.graph=void 0!==t[9]?{termType:s,value:t[9]}:void 0!==t[10]?{termType:o,value:t[10]}:{termType:l,value:""},h.graph.value in n){let t=!0;const i=n[h.graph.value];for(const e of i)if(u(e,h)){t=!1;break}t&&(i.push(h),e.push(h))}else n[h.graph.value]=[h],e.push(h)}return e}static serialize(e){Array.isArray(e)||(e=t.legacyDatasetToQuads(e));const n=[];for(const i of e)n.push(t.serializeQuad(i));return n.sort().join("")}static serializeQuad(t){const e=t.subject,n=t.object,a=t.graph;let l="";return l+=e.termType===s?`<${e.value}>`:`${e.value}`,l+=` <${t.predicate.value}> `,n.termType===s?l+=`<${n.value}>`:n.termType===o?l+=n.value:(l+=`"${c=n.value,c.replace(h,function(t){switch(t){case'"':return'\\"';case"\\":return"\\\\";case"\n":return"\\n";case"\r":return"\\r"}})}"`,n.datatype.value===i?n.language&&(l+=`@${n.language}`):n.datatype.value!==r&&(l+=`^^<${n.datatype.value}>`)),a.termType===s?l+=` <${a.value}>`:a.termType===o&&(l+=` ${a.value}`),l+=" .\n",l;var c}static legacyDatasetToQuads(t){const e=[],n={"blank node":o,IRI:s,literal:a};for(const c in t)t[c].forEach(t=>{const u={};for(const e in t){const o=t[e],l={termType:n[o.type],value:o.value};l.termType===a&&(l.datatype={termType:s},"datatype"in o&&(l.datatype.value=o.datatype),"language"in o?("datatype"in o||(l.datatype.value=i),l.language=o.language):"datatype"in o||(l.datatype.value=r)),u[e]=l}u.graph="@default"===c?{termType:l,value:""}:{termType:c.startsWith("_:")?o:s,value:c},e.push(u)});return e}};const h=/["\\\n\r]/g;const d=/(?:\\([tbnrf"'\\]))|(?:\\u([0-9A-Fa-f]{4}))|(?:\\U([0-9A-Fa-f]{8}))/g},{}],50:[function(t,e,n){"use strict";e.exports=class{constructor(t){this.current=t.sort(),this.done=!1,this.dir=new Map;for(let e=0;ei)&&(a&&o>0&&n>t[o-1]||!a&&ot[o+1])&&(i=n,r=o)}if(null===i)this.done=!0;else{const n=e.get(i)?r-1:r+1;t[r]=t[n],t[n]=i;for(const r of t)r>i&&e.set(r,!e.get(r))}return n}}},{}],51:[function(t,e,n){(function(n){(function(){"use strict";const r=t("./IdentifierIssuer"),s=t("./MessageDigest"),o=t("./Permuter"),a=t("./NQuads");function l(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new r("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){var e=this;return i(function*(){e.quads=t;for(const r of t)e._addBlankNodeQuadInfo({quad:r,component:r.subject}),e._addBlankNodeQuadInfo({quad:r,component:r.object}),e._addBlankNodeQuadInfo({quad:r,component:r.graph});const n=new Map,i=[...e.blankNodeInfo.keys()];let s=0;for(const t of i)++s%100==0&&(yield e._yield()),yield e._hashAndTrackBlankNode({id:t,hashToBlankNodes:n});const o=[...n.keys()].sort(),c=[];for(const t of o){const i=n.get(t);i.length>1?c.push(i):e.canonicalIssuer.getId(i[0])}for(const t of c){const n=[];for(const i of t){if(e.canonicalIssuer.hasId(i))continue;const t=new r("_:b");t.getId(i);const s=yield e.hashNDegreeQuads(i,t);n.push(s)}n.sort(l);for(const t of n){const n=t.issuer.getOldIds();for(const t of n)e.canonicalIssuer.getId(t)}}const u=[];for(const t of e.quads){const n=wt({},t);n.subject=e._useCanonicalId({component:n.subject}),n.object=e._useCanonicalId({component:n.object}),n.graph=e._useCanonicalId({component:n.graph}),u.push(a.serializeQuad(n))}return u.sort(),u.join("")})()}hashFirstDegreeQuads(t){var e=this;return i(function*(){const n=[],i=e.blankNodeInfo.get(t),r=i.quads;for(const s of r){const i={subject:null,predicate:s.predicate,object:null,graph:null};i.subject=e.modifyFirstDegreeComponent(t,s.subject,"subject"),i.object=e.modifyFirstDegreeComponent(t,s.object,"object"),i.graph=e.modifyFirstDegreeComponent(t,s.graph,"graph"),n.push(a.serializeQuad(i))}n.sort();const o=new s(e.hashAlgorithm);for(const t of n)o.update(t);return i.hash=yield o.digest(),i.hash})()}hashRelatedBlankNode(t,e,n,r){var o=this;return i(function*(){let i;i=o.canonicalIssuer.hasId(t)?o.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):o.blankNodeInfo.get(t).hash;const a=new s(o.hashAlgorithm);return a.update(r),"g"!==r&&a.update(o.getRelatedPredicate(e)),a.update(i),a.digest()})()}hashNDegreeQuads(t,e){var n=this;return i(function*(){const i=new s(n.hashAlgorithm),r=yield n.createHashToRelated(t,e),a=[...r.keys()].sort();for(const t of a){i.update(t);let s,a="";const l=new o(r.get(t));let c=0;for(;l.hasNext();){const t=l.next();++c%3==0&&(yield n._yield());let i=e.clone(),r="";const o=[];let u=!1;for(const e of t)if(n.canonicalIssuer.hasId(e)?r+=n.canonicalIssuer.getId(e):(i.hasId(e)||o.push(e),r+=i.getId(e)),0!==a.length&&r>a){u=!0;break}if(!u){for(const t of o){const e=yield n.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==a.length&&r>a){u=!0;break}}u||(0===a.length||r`}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r)++s%100==0&&(yield n._yield()),yield Promise.all([n._addRelatedBlankNodeHash({quad:o,component:o.subject,position:"s",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.object,position:"o",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.graph,position:"g",id:t,issuer:e,hashToRelated:i})]);return i})()}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){var n=this;return i(function*(){const i=yield n.hashFirstDegreeQuads(t),r=e.get(i);r?r.push(t):e.set(i,[t])})()}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:r,issuer:s,hashToRelated:o}){var a=this;return i(function*(){if("BlankNode"!==e.termType||e.value===r)return;const i=e.value,l=yield a.hashRelatedBlankNode(i,t,s,n),c=o.get(l);c?c.push(i):o.set(l,[i])})()}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}_yield(){return i(function*(){return new Promise(t=>n(t))})()}}}).call(this)}).call(this,t("timers").setImmediate)},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50,timers:89}],52:[function(t,e,n){"use strict";const i=t("./IdentifierIssuer"),r=t("./MessageDigest"),s=t("./Permuter"),o=t("./NQuads");function a(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){this.quads=t;for(const i of t)this._addBlankNodeQuadInfo({quad:i,component:i.subject}),this._addBlankNodeQuadInfo({quad:i,component:i.object}),this._addBlankNodeQuadInfo({quad:i,component:i.graph});const e=new Map,n=[...this.blankNodeInfo.keys()];for(const i of n)this._hashAndTrackBlankNode({id:i,hashToBlankNodes:e});const r=[...e.keys()].sort(),s=[];for(const i of r){const t=e.get(i);t.length>1?s.push(t):this.canonicalIssuer.getId(t[0])}for(const o of s){const t=[];for(const e of o){if(this.canonicalIssuer.hasId(e))continue;const n=new i("_:b");n.getId(e);const r=this.hashNDegreeQuads(e,n);t.push(r)}t.sort(a);for(const e of t){const t=e.issuer.getOldIds();for(const e of t)this.canonicalIssuer.getId(e)}}const l=[];for(const i of this.quads){const t=wt({},i);t.subject=this._useCanonicalId({component:t.subject}),t.object=this._useCanonicalId({component:t.object}),t.graph=this._useCanonicalId({component:t.graph}),l.push(o.serializeQuad(t))}return l.sort(),l.join("")}hashFirstDegreeQuads(t){const e=[],n=this.blankNodeInfo.get(t),i=n.quads;for(const r of i){const n={subject:null,predicate:r.predicate,object:null,graph:null};n.subject=this.modifyFirstDegreeComponent(t,r.subject,"subject"),n.object=this.modifyFirstDegreeComponent(t,r.object,"object"),n.graph=this.modifyFirstDegreeComponent(t,r.graph,"graph"),e.push(o.serializeQuad(n))}e.sort();const s=new r(this.hashAlgorithm);for(const r of e)s.update(r);return n.hash=s.digest(),n.hash}hashRelatedBlankNode(t,e,n,i){let s;s=this.canonicalIssuer.hasId(t)?this.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):this.blankNodeInfo.get(t).hash;const o=new r(this.hashAlgorithm);return o.update(i),"g"!==i&&o.update(this.getRelatedPredicate(e)),o.update(s),o.digest()}hashNDegreeQuads(t,e){const n=new r(this.hashAlgorithm),i=this.createHashToRelated(t,e),o=[...i.keys()].sort();for(const r of o){n.update(r);let t,o="";const a=new s(i.get(r));for(;a.hasNext();){const n=a.next();let i=e.clone(),r="";const s=[];let l=!1;for(const t of n)if(this.canonicalIssuer.hasId(t)?r+=this.canonicalIssuer.getId(t):(i.hasId(t)||s.push(t),r+=i.getId(t)),0!==o.length&&r>o){l=!0;break}if(!l){for(const t of s){const e=this.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==o.length&&r>o){l=!0;break}}l||(0===o.length||r`}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i)this._addRelatedBlankNodeHash({quad:r,component:r.subject,position:"s",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.object,position:"o",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.graph,position:"g",id:t,issuer:e,hashToRelated:n});return n}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){const n=this.hashFirstDegreeQuads(t),i=e.get(n);i?i.push(t):e.set(n,[t])}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:i,issuer:r,hashToRelated:s}){if("BlankNode"!==e.termType||e.value===i)return;const o=e.value,a=this.hashRelatedBlankNode(o,t,r,n),l=s.get(a);l?l.push(o):s.set(a,[o])}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}}},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50}],53:[function(t,e,n){"use strict";const r=t("./URDNA2015");e.exports=class extends r{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r){let r,a;if("BlankNode"===o.subject.termType&&o.subject.value!==t)a=o.subject.value,r="p";else{if("BlankNode"!==o.object.termType||o.object.value===t)continue;a=o.object.value,r="r"}++s%100==0&&(yield n._yield());const l=yield n.hashRelatedBlankNode(a,o,e,r),c=i.get(l);c?c.push(a):i.set(l,[a])}return i})()}}},{"./URDNA2015":51}],54:[function(t,e,n){"use strict";const i=t("./URDNA2015Sync");e.exports=class extends i{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i){let i,s;if("BlankNode"===r.subject.termType&&r.subject.value!==t)s=r.subject.value,i="p";else{if("BlankNode"!==r.object.termType||r.object.value===t)continue;s=r.object.value,i="r"}const o=this.hashRelatedBlankNode(s,r,e,i),a=n.get(o);a?a.push(s):n.set(o,[s])}return n}}},{"./URDNA2015Sync":52}],55:[function(t,e,n){"use strict";const r=t("./URDNA2015"),s=t("./URGNA2012"),o=t("./URDNA2015Sync"),a=t("./URGNA2012Sync");let l;try{l=t("rdf-canonize-native")}catch(u){}const c={};e.exports=c,c.NQuads=t("./NQuads"),c.IdentifierIssuer=t("./IdentifierIssuer"),c._rdfCanonizeNative=function(t){return t&&(l=t),l},c.canonize=function(){var t=i(function*(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(!l)throw new Error("rdf-canonize-native not available");return new Promise((n,i)=>l.canonize(t,e,(t,e)=>t?i(t):n(e)))}if("URDNA2015"===e.algorithm)return new r(e).main(t);if("URGNA2012"===e.algorithm)return new s(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")});return function(e,n){return t.apply(this,arguments)}}(),c._canonizeSync=function(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(l)return l.canonizeSync(t,e);throw new Error("rdf-canonize-native not available")}if("URDNA2015"===e.algorithm)return new o(e).main(t);if("URGNA2012"===e.algorithm)return new a(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")}},{"./IdentifierIssuer":47,"./NQuads":49,"./URDNA2015":51,"./URDNA2015Sync":52,"./URGNA2012":53,"./URGNA2012Sync":54,"rdf-canonize-native":3}],56:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/BlankNode"),n),r(t("./lib/DataFactory"),n),r(t("./lib/DefaultGraph"),n),r(t("./lib/Literal"),n),r(t("./lib/NamedNode"),n),r(t("./lib/Quad"),n),r(t("./lib/Variable"),n)},{"./lib/BlankNode":57,"./lib/DataFactory":58,"./lib/DefaultGraph":59,"./lib/Literal":60,"./lib/NamedNode":61,"./lib/Quad":62,"./lib/Variable":63}],57:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.BlankNode=void 0;n.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},{}],58:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DataFactory=void 0;const i=t("./BlankNode"),r=t("./DefaultGraph"),s=t("./Literal"),o=t("./NamedNode"),a=t("./Quad"),l=t("./Variable");let c=0;n.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},{"./BlankNode":57,"./DefaultGraph":59,"./Literal":60,"./NamedNode":61,"./Quad":62,"./Variable":63}],59:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DefaultGraph=void 0;class i{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}n.DefaultGraph=i,i.INSTANCE=new i},{}],60:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Literal=void 0;const i=t("./NamedNode");class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}n.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},{"./NamedNode":61}],61:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NamedNode=void 0;n.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},{}],62:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Quad=void 0;n.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},{}],63:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Variable=void 0;n.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},{}],64:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/RdfXmlParser"),n)},{"./lib/RdfXmlParser":66}],65:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseError=void 0;class i extends Error{constructor(t,e){const n=t.saxStream._parser;super(t.trackPosition?`Line ${n.line+1} column ${n.column+1}: ${e}`:e)}}n.ParseError=i},{}],66:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseType=n.RdfXmlParser=void 0;const i=t("relative-to-absolute-iri"),r=t("sax"),s=t("stream"),o=t("./ParseError"),a=t("rdf-data-factory");class l extends s.Transform{constructor(t){super({readableObjectMode:!0}),this.activeTagStack=[],this.nodeIds={},t&&(Object.assign(this,t),this.options=t),this.dataFactory||(this.dataFactory=new a.DataFactory),this.baseIRI||(this.baseIRI=""),this.defaultGraph||(this.defaultGraph=this.dataFactory.defaultGraph()),this.saxStream=r.createStream(this.strict,{xmlns:!1,position:this.trackPosition}),this.strict||(this.saxStream._parser.looseCase="toString"),this.attachSaxListeners()}static parseNamespace(t,e){const n={};let i=!1;for(const s in t.attributes)s.startsWith("xmlns")&&(5===s.length?(i=!0,n[""]=t.attributes[s]):":"===s.charAt(5)&&(i=!0,n[s.substr(6)]=t.attributes[s]));const r=e&&e.ns?e.ns:[l.DEFAULT_NS];return i?r.concat([n]):r}static expandPrefixedTerm(t,e,n){const i=t.indexOf(":");let r,s;i>=0?(r=t.substr(0,i),s=t.substr(i+1)):(r="",s=t);let a=null,l=null;for(let o=e.length-1;o>=0;o--){const t=e[o][r];if(t){a=t;break}l||(l=e[o][""])}if(!a){if(r&&"xmlns"!==r)throw new o.ParseError(n,`The prefix '${r}' in term '${t}' was not bound.`);a=l||""}return{prefix:r,local:s,uri:a}}static isValidIri(t){return l.IRI_REGEX.test(t)}import(t){const e=new s.PassThrough({readableObjectMode:!0});t.on("error",t=>n.emit("error",t)),t.on("data",t=>e.push(t)),t.on("end",()=>e.push(null));const n=e.pipe(new l(this.options));return n}_transform(t,e,n){try{this.saxStream.write(t,e)}catch(i){return n(i)}n()}newParseError(t){return new o.ParseError(this,t)}valueToUri(t,e){return this.uriToNamedNode(i.resolve(t,e.baseIRI))}uriToNamedNode(t){if(!l.isValidIri(t))throw this.newParseError(`Invalid URI: ${t}`);return this.dataFactory.namedNode(t)}validateNcname(t){if(!l.NCNAME_MATCHER.test(t))throw this.newParseError(`Not a valid NCName: ${t}`)}attachSaxListeners(){this.saxStream.on("error",t=>this.emit("error",t)),this.saxStream.on("opentag",this.onTag.bind(this)),this.saxStream.on("text",this.onText.bind(this)),this.saxStream.on("closetag",this.onCloseTag.bind(this)),this.saxStream.on("doctype",this.onDoctype.bind(this))}onTag(t){const e=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null;let n=c.RESOURCE;if(e&&(e.hadChildren=!0,n=e.childrenParseType),e&&e.childrenStringTags){const n=t.name;let i="";for(const e in t.attributes)i+=` ${e}="${t.attributes[e]}"`;e.childrenStringTags.push(`<${n}${i}>`);const r={childrenStringTags:e.childrenStringTags};return r.childrenStringEmitClosingTag=``,void this.activeTagStack.push(r)}const i={};e?(i.language=e.language,i.baseIRI=e.baseIRI):i.baseIRI=this.baseIRI,this.activeTagStack.push(i),i.ns=l.parseNamespace(t,e),n===c.RESOURCE?this.onTagResource(t,i,e,!e):this.onTagProperty(t,i,e)}onTagResource(t,e,n,r){const s=l.expandPrefixedTerm(t.name,e.ns,this);e.childrenParseType=c.PROPERTY;let o=!0;if(s.uri===l.RDF){if(!r&&l.FORBIDDEN_NODE_ELEMENTS.indexOf(s.local)>=0)throw this.newParseError(`Illegal node element name: ${s.local}`);switch(s.local){case"RDF":e.childrenParseType=c.RESOURCE;case"Description":o=!1}}const a=[],u=[];let h=null,d=!1,p=!1,f=null;for(const c in t.attributes){const r=t.attributes[c],s=l.expandPrefixedTerm(c,e.ns,this);if(n&&s.uri===l.RDF)switch(s.local){case"about":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);h=r;continue;case"ID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h="#"+r,d=!0;continue;case"nodeID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h=r,p=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":f=r;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(s.uri===l.XML){if("lang"===s.local){e.language=""===r?null:r.toLowerCase();continue}if("base"===s.local){e.baseIRI=i.resolve(r,e.baseIRI);continue}}"xml"!==s.prefix&&s.uri&&(a.push(this.uriToNamedNode(s.uri+s.local)),u.push(r))}if(null!==h&&(e.subject=p?this.dataFactory.blankNode(h):this.valueToUri(h,e),d&&this.claimNodeId(e.subject)),e.subject||(e.subject=this.dataFactory.blankNode()),o){const t=this.uriToNamedNode(s.uri+s.local);this.emitTriple(e.subject,this.dataFactory.namedNode(l.RDF+"type"),t,n?n.reifiedStatementId:null)}if(n){if(n.predicate)if(n.childrenCollectionSubject){const t=this.dataFactory.blankNode();this.emitTriple(n.childrenCollectionSubject,n.childrenCollectionPredicate,t,n.reifiedStatementId),this.emitTriple(t,this.dataFactory.namedNode(l.RDF+"first"),e.subject,e.reifiedStatementId),n.childrenCollectionSubject=t,n.childrenCollectionPredicate=this.dataFactory.namedNode(l.RDF+"rest")}else{this.emitTriple(n.subject,n.predicate,e.subject,n.reifiedStatementId);for(let t=0;t=0)throw this.newParseError(`Illegal property element name: ${i.local}`);e.predicateSubPredicates=[],e.predicateSubObjects=[];let r=!1,s=!1,o=null,a=!0;const u=[],h=[];for(const d in t.attributes){const n=t.attributes[d],i=l.expandPrefixedTerm(d,e.ns,this);if(i.uri===l.RDF)switch(i.local){case"resource":if(o)throw this.newParseError(`Found both rdf:resource (${n}) and rdf:nodeID (${o}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${n})`);e.hadChildren=!0,o=n,a=!1;continue;case"datatype":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:datatype (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${n})`);e.datatype=this.valueToUri(n,e);continue;case"nodeID":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:nodeID (${n}).`);if(e.hadChildren)throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${n})`);this.validateNcname(n),e.hadChildren=!0,o=n,a=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(s)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(e.datatype)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${e.datatype.value})`);if(o)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${o})`);if("Resource"===n){r=!0,e.childrenParseType=c.PROPERTY;const t=this.dataFactory.blankNode();this.emitTriple(e.subject,e.predicate,t,e.reifiedStatementId),e.subject=t,e.predicate=null}else"Collection"===n?(r=!0,e.hadChildren=!0,e.childrenCollectionSubject=e.subject,e.childrenCollectionPredicate=e.predicate,a=!1):"Literal"===n&&(r=!0,e.childrenTagsToString=!0,e.childrenStringTags=[]);continue;case"ID":this.validateNcname(n),e.reifiedStatementId=this.valueToUri("#"+n,e),this.claimNodeId(e.reifiedStatementId);continue}else if(i.uri===l.XML&&"lang"===i.local){e.language=""===n?null:n.toLowerCase();continue}if("xml"!==i.prefix&&"xmlns"!==i.prefix&&i.uri){if(r||e.datatype)throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${n}`);e.hadChildren=!0,s=!0,u.push(this.uriToNamedNode(i.uri+i.local)),h.push(this.dataFactory.literal(n,e.datatype||e.language))}}if(null!==o){const t=e.subject;e.subject=a?this.dataFactory.blankNode(o):this.valueToUri(o,e),this.emitTriple(t,e.predicate,e.subject,e.reifiedStatementId);for(let n=0;n/g,(t,e,n)=>(this.saxStream._parser.ENTITIES[e]=n,""))}}var c,u;n.RdfXmlParser=l,l.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*):[^ "<>{}|\\\[\]`]*$/,l.MIME_TYPE="application/rdf+xml",l.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",l.XML="http://www.w3.org/XML/1998/namespace",l.XMLNS="http://www.w3.org/2000/xmlns/",l.DEFAULT_NS={xml:l.XML},l.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],l.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],l.NCNAME_MATCHER=/^([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_])([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_\-.0-9#xB7\u{0300}-\u{036F}\u{203F}-\u{2040}])*$/u,(u=c=n.ParseType||(n.ParseType={}))[u.RESOURCE=0]="RESOURCE",u[u.PROPERTY=1]="PROPERTY"},{"./ParseError":65,"rdf-data-factory":56,"relative-to-absolute-iri":82,sax:85,stream:87}],67:[function(t,e,n){"use strict";var i={};function r(t,e,n){n||(n=Error);var r=function(t){function n(n,i,r){return t.call(this,function(t,n,i){return"string"==typeof e?e:e(t,n,i)}(n,i,r))||this}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(n,t),n}(n);r.prototype.name=n.name,r.prototype.code=t,i[t]=r}function s(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(t){return String(t)}),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}r("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(t,e,n){var i,r;if("string"==typeof e&&function(t,e,n){return t.substr(!n||n<0?0:+n,e.length)===e}(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))r="The ".concat(t," ").concat(i," ").concat(s(e,"type"));else{var o=function(t,e,n){return"number"!=typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";r='The "'.concat(t,'" ').concat(o," ").concat(i," ").concat(s(e,"type"))}return r+". Received type ".concat(typeof n)},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=i},{}],68:[function(t,e,n){(function(n){(function(){"use strict";var i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};e.exports=c;var r=t("./_stream_readable"),s=t("./_stream_writable");t("inherits")(c,r);for(var o=i(s.prototype),a=0;a0)if("string"!=typeof e&&!o.objectMode&&Object.getPrototypeOf(e)!==a.prototype&&(e=function(t){return a.from(t)}(e)),i)o.endEmitted?x(t,new w):T(t,o,e,!0);else if(o.ended)x(t,new v);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!n?(e=o.decoder.write(e),o.objectMode||0!==e.length?T(t,o,e,!1):I(t,o)):T(t,o,e,!1)}else i||(o.reading=!1,I(t,o));return!o.ended&&(o.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=k?t=k:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;c("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(c("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(M,t))}function M(t){var e=t._readableState;c("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,j(t)}function I(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(D,t,e))}function D(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function N(t){c("readable nexttick read 0"),t.read(0)}function L(t,e){c("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),j(t),e.flowing&&!e.reading&&t.read(0)}function j(t){var e=t._readableState;for(c("flow",e.flowing);e.flowing&&null!==t.read(););}function F(t,e){return 0===e.length?null:(e.objectMode?n=e.buffer.shift():!t||t>=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n);var n}function B(t){var e=t._readableState;c("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(V,e,t))}function V(t,e){if(c("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}function z(t,e){for(var n=0,i=t.length;n=e.highWaterMark:e.length>0)||e.ended))return c("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?B(this):P(this),null;if(0===(t=A(t,e))&&e.ended)return 0===e.length&&B(this),null;var i,r=e.needReadable;return c("need readable",r),(0===e.length||e.length-t0?F(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&B(this)),null!==i&&this.emit("data",i),i},C.prototype._read=function(t){x(this,new _("_read()"))},C.prototype.pipe=function(t,e){var i=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t)}r.pipesCount+=1,c("pipe count=%d opts=%j",r.pipesCount,e);var o=e&&!1===e.end||t===n.stdout||t===n.stderr?m:l;function a(e,n){c("onunpipe"),e===i&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,c("cleanup"),t.removeListener("close",f),t.removeListener("finish",g),t.removeListener("drain",u),t.removeListener("error",p),t.removeListener("unpipe",a),i.removeListener("end",l),i.removeListener("end",m),i.removeListener("data",d),h=!0,r.awaitDrain&&(!t._writableState||t._writableState.needDrain)&&u())}function l(){c("onend"),t.end()}r.endEmitted?n.nextTick(o):i.once("end",o),t.on("unpipe",a);var u=function(t){return function(){var e=t._readableState;c("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,j(t))}}(i);t.on("drain",u);var h=!1;function d(e){c("ondata");var n=t.write(e);c("dest.write",n),!1===n&&((1===r.pipesCount&&r.pipes===t||r.pipesCount>1&&-1!==z(r.pipes,t))&&!h&&(c("false write response, pause",r.awaitDrain),r.awaitDrain++),i.pause())}function p(e){c("onerror",e),m(),t.removeListener("error",p),0===s(t,"error")&&x(t,e)}function f(){t.removeListener("finish",g),m()}function g(){c("onfinish"),t.removeListener("close",f),m()}function m(){c("unpipe"),i.unpipe(t)}return i.on("data",d),function(t,e,n){if("function"==typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",p),t.once("close",f),t.once("finish",g),t.emit("pipe",i),r.flowing||(c("pipe resume"),i.resume()),t},C.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n)),this;if(!t){var i=e.pipes,r=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,!1!==r.flowing&&this.resume()):"readable"===t&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,c("on readable",r.length,r.reading),r.length?P(this):r.reading||n.nextTick(N,this)),i},C.prototype.removeListener=function(t,e){var i=o.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(R,this),i},C.prototype.removeAllListeners=function(t){var e=o.prototype.removeAllListeners.apply(this,arguments);return("readable"===t||void 0===t)&&n.nextTick(R,this),e},C.prototype.resume=function(){var t=this._readableState;return t.flowing||(c("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(L,t,e))}(this,t)),t.paused=!1,this},C.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},C.prototype.wrap=function(t){var e=this,n=this._readableState,i=!1;for(var r in t.on("end",function(){if(c("wrapped end"),n.decoder&&!n.ended){var t=n.decoder.end();t&&t.length&&e.push(t)}e.push(null)}),t.on("data",function(r){c("wrapped data"),n.decoder&&(r=n.decoder.write(r)),n.objectMode&&null==r||!(n.objectMode||r&&r.length)||e.push(r)||(i=!0,t.pause())}),t)void 0===this[r]&&"function"==typeof t[r]&&(this[r]=function(e){return function(){return t[e].apply(t,arguments)}}(r));for(var s=0;s-1))throw new w(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(C.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(C.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),C.prototype._write=function(t,e,n){n(new g("_write()"))},C.prototype._writev=null,C.prototype.end=function(t,e,i){var r=this._writableState;return"function"==typeof t?(i=t,t=null,e=null):"function"==typeof e&&(i=e,e=null),null!=t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||function(t,e,i){e.ending=!0,I(t,e),i&&(e.finished?n.nextTick(i):t.once("finish",i)),e.ended=!0,t.writable=!1}(this,r,i),this},Object.defineProperty(C.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(C.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){!this._writableState||(this._writableState.destroyed=t)}}),C.prototype.destroy=h.destroy,C.prototype._undestroy=h.undestroy,C.prototype._destroy=function(t,e){e(t)}}).call(this)}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../errors":67,"./_stream_duplex":68,"./internal/streams/destroy":75,"./internal/streams/state":79,"./internal/streams/stream":80,_process:44,buffer:6,inherits:10,"util-deprecate":90}],73:[function(t,e,n){(function(n){(function(){"use strict";var i;function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var s=t("./end-of-stream"),o=Symbol("lastResolve"),a=Symbol("lastReject"),l=Symbol("error"),c=Symbol("ended"),u=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function p(t,e){return{value:t,done:e}}function f(t){var e=t[o];if(null!==e){var n=t[d].read();null!==n&&(t[u]=null,t[o]=null,t[a]=null,e(p(n,!1)))}}function g(t){n.nextTick(f,t)}var m=Object.getPrototypeOf(function(){}),b=Object.setPrototypeOf((r(i={get stream(){return this[d]},next:function(){var t=this,e=this[l];if(null!==e)return Promise.reject(e);if(this[c])return Promise.resolve(p(void 0,!0));if(this[d].destroyed)return new Promise(function(e,i){n.nextTick(function(){t[l]?i(t[l]):e(p(void 0,!0))})});var i,r=this[u];if(r)i=new Promise(function(t,e){return function(n,i){t.then(function(){e[c]?n(p(void 0,!0)):e[h](n,i)},i)}}(r,this));else{var s=this[d].read();if(null!==s)return Promise.resolve(p(s,!1));i=new Promise(this[h])}return this[u]=i,i}},Symbol.asyncIterator,function(){return this}),r(i,"return",function(){var t=this;return new Promise(function(e,n){t[d].destroy(null,function(t){t?n(t):e(p(void 0,!0))})})}),i),m);e.exports=function(t){var e,n=Object.create(b,(r(e={},d,{value:t,writable:!0}),r(e,o,{value:null,writable:!0}),r(e,a,{value:null,writable:!0}),r(e,l,{value:null,writable:!0}),r(e,c,{value:t._readableState.endEmitted,writable:!0}),r(e,h,{value:function(t,e){var i=n[d].read();i?(n[u]=null,n[o]=null,n[a]=null,t(p(i,!1))):(n[o]=t,n[a]=e)},writable:!0}),e));return n[u]=null,s(t,function(t){if(t&&"ERR_STREAM_PREMATURE_CLOSE"!==t.code){var e=n[a];return null!==e&&(n[u]=null,n[o]=null,n[a]=null,e(t)),void(n[l]=t)}var i=n[o];null!==i&&(n[u]=null,n[o]=null,n[a]=null,i(p(void 0,!0))),n[c]=!0}),t.on("readable",g.bind(null,n)),n}}).call(this)}).call(this,t("_process"))},{"./end-of-stream":76,_process:44}],74:[function(t,e,n){"use strict";function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,i)}return n}function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function s(t,e){for(var n=0;n0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n}},{key:"concat",value:function(t){if(0===this.length)return o.alloc(0);for(var e=o.allocUnsafe(t>>>0),n=this.head,i=0;n;)c(n.data,e,i),i+=n.data.length,n=n.next;return e}},{key:"consume",value:function(t,e){var n;return tr.length?r.length:t;if(i+=s===r.length?r:r.slice(0,t),0==(t-=s)){s===r.length?(++n,this.head=e.next?e.next:this.tail=null):(this.head=e,e.data=r.slice(s));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(t){var e=o.allocUnsafe(t),n=this.head,i=1;for(n.data.copy(e),t-=n.data.length;n=n.next;){var r=n.data,s=t>r.length?r.length:t;if(r.copy(e,e.length-t,0,s),0==(t-=s)){s===r.length?(++i,this.head=n.next?n.next:this.tail=null):(this.head=n,n.data=r.slice(s));break}++i}return this.length-=i,e}},{key:l,value:function(t,e){return a(this,function(t){for(var e=1;e0,function(t){r||(r=t),t&&o.forEach(c),!s&&(o.forEach(c),i(r))})});return e.reduce(u)}},{"../../../errors":67,"./end-of-stream":76}],79:[function(t,e,n){"use strict";var i=t("../../../errors").codes.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(t,e,n,r){var s=function(t,e,n){return null!=t.highWaterMark?t.highWaterMark:e?t[n]:null}(e,r,n);if(null!=s){if(!isFinite(s)||Math.floor(s)!==s||s<0)throw new i(r?n:"highWaterMark",s);return Math.floor(s)}return t.objectMode?16:16384}}},{"../../../errors":67}],80:[function(t,e,n){e.exports=t("events").EventEmitter},{events:8}],81:[function(t,e,n){(n=e.exports=t("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=t("./lib/_stream_writable.js"),n.Duplex=t("./lib/_stream_duplex.js"),n.Transform=t("./lib/_stream_transform.js"),n.PassThrough=t("./lib/_stream_passthrough.js"),n.finished=t("./lib/internal/streams/end-of-stream.js"),n.pipeline=t("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":68,"./lib/_stream_passthrough.js":69,"./lib/_stream_readable.js":70,"./lib/_stream_transform.js":71,"./lib/_stream_writable.js":72,"./lib/internal/streams/end-of-stream.js":76,"./lib/internal/streams/pipeline.js":78}],82:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(t){for(var e in t)n.hasOwnProperty(e)||(n[e]=t[e])}(t("./lib/Resolve"))},{"./lib/Resolve":83}],83:[function(t,e,n){"use strict";function i(t){const e=[];let n=0;for(;nt.join("")).join("/")}function r(t,e){let n=e+1;e>=0?"/"===t[e+1]&&"/"===t[e+2]&&(n=e+3):"/"===t[0]&&"/"===t[1]&&(n=2);const r=t.indexOf("/",n);return r<0?t:t.substr(0,r)+i(t.substr(r))}function s(t){return!t||"#"===t||"?"===t||"/"===t}Object.defineProperty(n,"__esModule",{value:!0}),n.resolve=function(t,e){const n=(e=e||"").indexOf("#");if(n>0&&(e=e.substr(0,n)),!t.length){if(e.indexOf(":")<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);return e}if(t.startsWith("?")){const n=e.indexOf("?");return n>0&&(e=e.substr(0,n)),e+t}if(t.startsWith("#"))return e+t;if(!e.length){const e=t.indexOf(":");if(e<0)throw new Error(`Found invalid relative IRI '${t}' for a missing baseIRI`);return r(t,e)}const s=t.indexOf(":");if(s>=0)return r(t,s);const o=e.indexOf(":");if(o<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);const a=e.substr(0,o+1);if(0===t.indexOf("//"))return a+r(t,s);let l;if(e.indexOf("//",o)===o+1){if(l=e.indexOf("/",o+3),l<0)return e.length>o+3?e+"/"+r(t,s):a+r(t,s)}else if(l=e.indexOf("/",o+1),l<0)return a+r(t,s);if(0===t.indexOf("/"))return e.substr(0,l)+i(t);let c=e.substr(l);const u=c.lastIndexOf("/");return u>=0&&u"===s?(O(e,"onsgmldeclaration",e.sgmlDecl),e.sgmlDecl="",e.state=S.TEXT):(m(s)&&(e.state=S.SGML_DECL_QUOTED),e.sgmlDecl+=s);continue;case S.SGML_DECL_QUOTED:s===e.q&&(e.state=S.SGML_DECL,e.q=""),e.sgmlDecl+=s;continue;case S.DOCTYPE:">"===s?(e.state=S.TEXT,O(e,"ondoctype",e.doctype),e.doctype=!0):(e.doctype+=s,"["===s?e.state=S.DOCTYPE_DTD:m(s)&&(e.state=S.DOCTYPE_QUOTED,e.q=s));continue;case S.DOCTYPE_QUOTED:e.doctype+=s,s===e.q&&(e.q="",e.state=S.DOCTYPE);continue;case S.DOCTYPE_DTD:e.doctype+=s,"]"===s?e.state=S.DOCTYPE:m(s)&&(e.state=S.DOCTYPE_DTD_QUOTED,e.q=s);continue;case S.DOCTYPE_DTD_QUOTED:e.doctype+=s,s===e.q&&(e.state=S.DOCTYPE_DTD,e.q="");continue;case S.COMMENT:"-"===s?e.state=S.COMMENT_ENDING:e.comment+=s;continue;case S.COMMENT_ENDING:"-"===s?(e.state=S.COMMENT_ENDED,e.comment=k(e.opt,e.comment),e.comment&&O(e,"oncomment",e.comment),e.comment=""):(e.comment+="-"+s,e.state=S.COMMENT);continue;case S.COMMENT_ENDED:">"!==s?(M(e,"Malformed comment"),e.comment+="--"+s,e.state=S.COMMENT):e.state=S.TEXT;continue;case S.CDATA:"]"===s?e.state=S.CDATA_ENDING:e.cdata+=s;continue;case S.CDATA_ENDING:"]"===s?e.state=S.CDATA_ENDING_2:(e.cdata+="]"+s,e.state=S.CDATA);continue;case S.CDATA_ENDING_2:">"===s?(e.cdata&&O(e,"oncdata",e.cdata),O(e,"onclosecdata"),e.cdata="",e.state=S.TEXT):"]"===s?e.cdata+="]":(e.cdata+="]]"+s,e.state=S.CDATA);continue;case S.PROC_INST:"?"===s?e.state=S.PROC_INST_ENDING:g(s)?e.state=S.PROC_INST_BODY:e.procInstName+=s;continue;case S.PROC_INST_BODY:if(!e.procInstBody&&g(s))continue;"?"===s?e.state=S.PROC_INST_ENDING:e.procInstBody+=s;continue;case S.PROC_INST_ENDING:">"===s?(O(e,"onprocessinginstruction",{name:e.procInstName,body:e.procInstBody}),e.procInstName=e.procInstBody="",e.state=S.TEXT):(e.procInstBody+="?"+s,e.state=S.PROC_INST_BODY);continue;case S.OPEN_TAG:y(d,s)?e.tagName+=s:(I(e),">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:(g(s)||M(e,"Invalid character in tag name"),e.state=S.ATTRIB));continue;case S.OPEN_TAG_SLASH:">"===s?(N(e,!0),L(e)):(M(e,"Forward-slash in opening tag not followed by >"),e.state=S.ATTRIB);continue;case S.ATTRIB:if(g(s))continue;">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME:"="===s?e.state=S.ATTRIB_VALUE:">"===s?(M(e,"Attribute without value"),e.attribValue=e.attribName,R(e),N(e)):g(s)?e.state=S.ATTRIB_NAME_SAW_WHITE:y(d,s)?e.attribName+=s:M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME_SAW_WHITE:if("="===s)e.state=S.ATTRIB_VALUE;else{if(g(s))continue;M(e,"Attribute without value"),e.tag.attributes[e.attribName]="",e.attribValue="",O(e,"onattribute",{name:e.attribName,value:""}),e.attribName="",">"===s?N(e):y(h,s)?(e.attribName=s,e.state=S.ATTRIB_NAME):(M(e,"Invalid attribute name"),e.state=S.ATTRIB)}continue;case S.ATTRIB_VALUE:if(g(s))continue;m(s)?(e.q=s,e.state=S.ATTRIB_VALUE_QUOTED):(M(e,"Unquoted attribute value"),e.state=S.ATTRIB_VALUE_UNQUOTED,e.attribValue=s);continue;case S.ATTRIB_VALUE_QUOTED:if(s!==e.q){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_Q:e.attribValue+=s;continue}R(e),e.q="",e.state=S.ATTRIB_VALUE_CLOSED;continue;case S.ATTRIB_VALUE_CLOSED:g(s)?e.state=S.ATTRIB:">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(M(e,"No whitespace between attributes"),e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_VALUE_UNQUOTED:if(!b(s)){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_U:e.attribValue+=s;continue}R(e),">"===s?N(e):e.state=S.ATTRIB;continue;case S.CLOSE_TAG:if(e.tagName)">"===s?L(e):y(d,s)?e.tagName+=s:e.script?(e.script+=""===s?L(e):M(e,"Invalid characters in closing tag");continue;case S.TEXT_ENTITY:case S.ATTRIB_VALUE_ENTITY_Q:case S.ATTRIB_VALUE_ENTITY_U:var a,l;switch(e.state){case S.TEXT_ENTITY:a=S.TEXT,l="textNode";break;case S.ATTRIB_VALUE_ENTITY_Q:a=S.ATTRIB_VALUE_QUOTED,l="attribValue";break;case S.ATTRIB_VALUE_ENTITY_U:a=S.ATTRIB_VALUE_UNQUOTED,l="attribValue"}";"===s?(e[l]+=j(e),e.entity="",e.state=a):y(e.entity.length?f:p,s)?e.entity+=s:(M(e,"Invalid character in entity name"),e[l]+="&"+e.entity+s,e.entity="",e.state=a);continue;default:throw new Error(e,"Unknown state: "+e.state)}return e.position>=e.bufferCheckPosition&&function(t){for(var e=Math.max(n.MAX_BUFFER_LENGTH,10),i=0,s=0,o=r.length;se)switch(r[s]){case"textNode":T(t);break;case"cdata":O(t,"oncdata",t.cdata),t.cdata="";break;case"script":O(t,"onscript",t.script),t.script="";break;default:A(t,"Max buffer length exceeded: "+r[s])}i=Math.max(i,a)}t.bufferCheckPosition=n.MAX_BUFFER_LENGTH-i+t.position}(e),e},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){!function(t){T(t),""!==t.cdata&&(O(t,"oncdata",t.cdata),t.cdata=""),""!==t.script&&(O(t,"onscript",t.script),t.script="")}(this)}};try{i=t("stream").Stream}catch(_){i=function(){}}var o=n.EVENTS.filter(function(t){return"error"!==t&&"end"!==t});function a(t,e){if(!(this instanceof a))return new a(t,e);i.apply(this),this._parser=new s(t,e),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(t){n.emit("error",t),n._parser.error=null},this._decoder=null,o.forEach(function(t){Object.defineProperty(n,"on"+t,{get:function(){return n._parser["on"+t]},set:function(e){if(!e)return n.removeAllListeners(t),n._parser["on"+t]=e,e;n.on(t,e)},enumerable:!0,configurable:!1})})}(a.prototype=Object.create(i.prototype,{constructor:{value:a}})).write=function(n){if("function"==typeof e&&"function"==typeof e.isBuffer&&e.isBuffer(n)){if(!this._decoder){var i=t("string_decoder").StringDecoder;this._decoder=new i("utf8")}n=this._decoder.write(n)}return this._parser.write(n.toString()),this.emit("data",n),!0},a.prototype.end=function(t){return t&&t.length&&this.write(t),this._parser.end(),!0},a.prototype.on=function(t,e){var n=this;return!n._parser["on"+t]&&-1!==o.indexOf(t)&&(n._parser["on"+t]=function(){var e=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);e.splice(0,0,t),n.emit.apply(n,e)}),i.prototype.on.call(n,t,e)};var l="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",u={xml:l,xmlns:c},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,d=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,p=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function g(t){return" "===t||"\n"===t||"\r"===t||"\t"===t}function m(t){return'"'===t||"'"===t}function b(t){return">"===t||g(t)}function y(t,e){return t.test(e)}function v(t,e){return!y(t,e)}var _,w,x,S=0;for(var E in n.STATE={BEGIN:S++,BEGIN_WHITESPACE:S++,TEXT:S++,TEXT_ENTITY:S++,OPEN_WAKA:S++,SGML_DECL:S++,SGML_DECL_QUOTED:S++,DOCTYPE:S++,DOCTYPE_QUOTED:S++,DOCTYPE_DTD:S++,DOCTYPE_DTD_QUOTED:S++,COMMENT_STARTING:S++,COMMENT:S++,COMMENT_ENDING:S++,COMMENT_ENDED:S++,CDATA:S++,CDATA_ENDING:S++,CDATA_ENDING_2:S++,PROC_INST:S++,PROC_INST_BODY:S++,PROC_INST_ENDING:S++,OPEN_TAG:S++,OPEN_TAG_SLASH:S++,ATTRIB:S++,ATTRIB_NAME:S++,ATTRIB_NAME_SAW_WHITE:S++,ATTRIB_VALUE:S++,ATTRIB_VALUE_QUOTED:S++,ATTRIB_VALUE_CLOSED:S++,ATTRIB_VALUE_UNQUOTED:S++,ATTRIB_VALUE_ENTITY_Q:S++,ATTRIB_VALUE_ENTITY_U:S++,CLOSE_TAG:S++,CLOSE_TAG_SAW_WHITE:S++,SCRIPT:S++,SCRIPT_ENDING:S++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(t){var e=n.ENTITIES[t],i="number"==typeof e?String.fromCharCode(e):e;n.ENTITIES[t]=i}),n.STATE)n.STATE[n.STATE[E]]=E;function C(t,e,n){t[e]&&t[e](n)}function O(t,e,n){t.textNode&&T(t),C(t,e,n)}function T(t){t.textNode=k(t.opt,t.textNode),t.textNode&&C(t,"ontext",t.textNode),t.textNode=""}function k(t,e){return t.trim&&(e=e.trim()),t.normalize&&(e=e.replace(/\s+/g," ")),e}function A(t,e){return T(t),t.trackPosition&&(e+="\nLine: "+t.line+"\nColumn: "+t.column+"\nChar: "+t.c),e=new Error(e),t.error=e,C(t,"onerror",e),t}function P(t){return t.sawRoot&&!t.closedRoot&&M(t,"Unclosed root tag"),t.state!==S.BEGIN&&t.state!==S.BEGIN_WHITESPACE&&t.state!==S.TEXT&&A(t,"Unexpected end"),T(t),t.c="",t.closed=!0,C(t,"onend"),s.call(t,t.strict,t.opt),t}function M(t,e){if("object"!=typeof t||!(t instanceof s))throw new Error("bad call to strictFail");t.strict&&A(t,e)}function I(t){t.strict||(t.tagName=t.tagName[t.looseCase]());var e=t.tags[t.tags.length-1]||t,n=t.tag={name:t.tagName,attributes:{}};t.opt.xmlns&&(n.ns=e.ns),t.attribList.length=0,O(t,"onopentagstart",n)}function D(t,e){var n=t.indexOf(":")<0?["",t]:t.split(":"),i=n[0],r=n[1];return e&&"xmlns"===t&&(i="xmlns",r=""),{prefix:i,local:r}}function R(t){if(t.strict||(t.attribName=t.attribName[t.looseCase]()),-1!==t.attribList.indexOf(t.attribName)||t.tag.attributes.hasOwnProperty(t.attribName))t.attribName=t.attribValue="";else{if(t.opt.xmlns){var e=D(t.attribName,!0),n=e.local;if("xmlns"===e.prefix)if("xml"===n&&t.attribValue!==l)M(t,"xml: prefix must be bound to "+l+"\nActual: "+t.attribValue);else if("xmlns"===n&&t.attribValue!==c)M(t,"xmlns: prefix must be bound to "+c+"\nActual: "+t.attribValue);else{var i=t.tag,r=t.tags[t.tags.length-1]||t;i.ns===r.ns&&(i.ns=Object.create(r.ns)),i.ns[n]=t.attribValue}t.attribList.push([t.attribName,t.attribValue])}else t.tag.attributes[t.attribName]=t.attribValue,O(t,"onattribute",{name:t.attribName,value:t.attribValue});t.attribName=t.attribValue=""}}function N(t,e){if(t.opt.xmlns){var n=t.tag,i=D(t.tagName);n.prefix=i.prefix,n.local=i.local,n.uri=n.ns[i.prefix]||"",n.prefix&&!n.uri&&(M(t,"Unbound namespace prefix: "+JSON.stringify(t.tagName)),n.uri=i.prefix),n.ns&&(t.tags[t.tags.length-1]||t).ns!==n.ns&&Object.keys(n.ns).forEach(function(e){O(t,"onopennamespace",{prefix:e,uri:n.ns[e]})});for(var r=0,s=t.attribList.length;r",t.tagName="",void(t.state=S.SCRIPT);O(t,"onscript",t.script),t.script=""}var e=t.tags.length,n=t.tagName;t.strict||(n=n[t.looseCase]());for(var i=n;e--&&t.tags[e].name!==i;)M(t,"Unexpected close tag");if(e<0)return M(t,"Unmatched closing tag: "+t.tagName),t.textNode+="",void(t.state=S.TEXT);t.tagName=n;for(var r=t.tags.length;r-- >e;){var s=t.tag=t.tags.pop();t.tagName=t.tag.name,O(t,"onclosetag",t.tagName);var o={};for(var a in s.ns)o[a]=s.ns[a];t.opt.xmlns&&s.ns!==(t.tags[t.tags.length-1]||t).ns&&Object.keys(s.ns).forEach(function(e){O(t,"onclosenamespace",{prefix:e,uri:s.ns[e]})})}0===e&&(t.closedRoot=!0),t.tagName=t.attribValue=t.attribName="",t.attribList.length=0,t.state=S.TEXT}function j(t){var e,n=t.entity,i=n.toLowerCase(),r="";return t.ENTITIES[n]?t.ENTITIES[n]:t.ENTITIES[i]?t.ENTITIES[i]:("#"===(n=i).charAt(0)&&("x"===n.charAt(1)?(n=n.slice(2),r=(e=parseInt(n,16)).toString(16)):(n=n.slice(1),r=(e=parseInt(n,10)).toString(10))),n=n.replace(/^0+/,""),isNaN(e)||r.toLowerCase()!==n?(M(t,"Invalid character entity"),"&"+t.entity+";"):String.fromCodePoint(e))}function F(t,e){"<"===e?(t.state=S.OPEN_WAKA,t.startTagPosition=t.position):g(e)||(M(t,"Non-whitespace before first tag."),t.textNode=e,t.state=S.TEXT)}function B(t,e){var n="";return e1114111||w(s)!==s)throw RangeError("Invalid code point: "+s);s<=65535?e.push(s):e.push(55296+((s-=65536)>>10),s%1024+56320),(n+1===i||e.length>t)&&(r+=_.apply(null,e),e.length=0)}return r},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:x,configurable:!0,writable:!0}):String.fromCodePoint=x)}(void 0===n?this.sax={}:n)}).call(this)}).call(this,t("buffer").Buffer)},{buffer:6,stream:87,string_decoder:5}],86:[function(t,e,n){(function(t,e){(function(){!function(e,n){"use strict";if(!e.setImmediate){var i,r=1,s={},o=!1,a=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,"[object process]"==={}.toString.call(e.process)?i=function(e){t.nextTick(function(){d(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(c="setImmediate$"+Math.random()+"$",u=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(c)&&d(+t.data.slice(c.length))},e.addEventListener?e.addEventListener("message",u,!1):e.attachEvent("onmessage",u),i=function(t){e.postMessage(c+t,"*")}):e.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){d(t.data)},i=function(e){t.port2.postMessage(e)}}():a&&"onreadystatechange"in a.createElement("script")?function(){var t=a.documentElement;i=function(e){var n=a.createElement("script");n.onreadystatechange=function(){d(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():i=function(t){setTimeout(d,0,t)},l.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n.setImmediate="function"==typeof e?e:function(t){var e=l++,i=!(arguments.length<2)&&o.call(arguments,1);return a[e]=!0,r(function(){a[e]&&(i?t.apply(null,i):t.call(null),n.clearImmediate(e))}),e},n.clearImmediate="function"==typeof i?i:function(t){delete a[t]}}).call(this)}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":44,timers:89}],90:[function(t,e,n){(function(t){(function(){function n(e){try{if(!t.localStorage)return!1}catch(i){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(t,e){if(n("noDeprecation"))return t;var i=!1;return function(){if(!i){if(n("throwDeprecation"))throw new Error(e);n("traceDeprecation")?console.trace(e):console.warn(e),i=!0}return t.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],91:[function(t,e,n){"use strict";e.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}},{}],92:[function(t,e,n){"use strict";function i(t){var e=this;if(e instanceof i||(e=new i),e.tail=null,e.head=null,e.length=0,t&&"function"==typeof t.forEach)t.forEach(function(t){e.push(t)});else if(arguments.length>0)for(var n=0,r=arguments.length;n1)n=e;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,n=this.head.value}for(var r=0;null!==i;r++)n=t(n,i.value,r),i=i.next;return n},i.prototype.reduceReverse=function(t,e){var n,i=this.tail;if(arguments.length>1)n=e;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,n=this.tail.value}for(var r=this.length-1;null!==i;r--)n=t(n,i.value,r),i=i.prev;return n},i.prototype.toArray=function(){for(var t=new Array(this.length),e=0,n=this.head;null!==n;e++)t[e]=n.value,n=n.next;return t},i.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,n=this.tail;null!==n;e++)t[e]=n.value,n=n.prev;return t},i.prototype.slice=function(t,e){(e=e||this.length)<0&&(e+=this.length),(t=t||0)<0&&(t+=this.length);var n=new i;if(ethis.length&&(e=this.length);for(var r=0,s=this.head;null!==s&&rthis.length&&(e=this.length);for(var r=this.length,s=this.tail;null!==s&&r>e;r--)s=s.prev;for(;null!==s&&r>t;r--,s=s.prev)n.push(s.value);return n},i.prototype.splice=function(t,e,...n){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,s=this.head;null!==s&&i{return(t=n||(n={})).typeOfFunction="function",t.boolTrue=!0,n;var t})();function i(t,e,i){if(!i||typeof i.value!==n.typeOfFunction)throw new TypeError("Only methods can be decorated with @bind. <"+e+"> is not a method!");return{configurable:n.boolTrue,get:function(){var t=i.value.bind(this);return Object.defineProperty(this,e,{value:t,configurable:n.boolTrue,writable:n.boolTrue}),t}}}e.ak=i,e.ZP=i},97266:function(t,e,n){t.exports={ResizeSensor:n(69835),ElementQueries:n(54845)}},54845:function(t,e,n){"use strict";var i,r,s;"undefined"!=typeof window&&window,r=[n(69835)],void 0!==(s="function"==typeof(i=function(t){var e=function(){var e,n={},i=[];function r(t){t||(t=document.documentElement);var e=window.getComputedStyle(t,null).fontSize;return parseFloat(e)||16}function s(t,e){var n=e.split(/\d/),i=n[n.length-1];switch(e=parseFloat(e),i){case"px":return e;case"em":return e*r(t);case"rem":return e*r();case"vw":return e*document.documentElement.clientWidth/100;case"vh":return e*document.documentElement.clientHeight/100;case"vmin":case"vmax":var s=document.documentElement.clientWidth/100,o=document.documentElement.clientHeight/100;return e*(0,Math["vmin"===i?"min":"max"])(s,o);default:return e}}function o(t,e){this.element=t;var i,r,o,a,l,c,u,h,d=["min-width","min-height","max-width","max-height"];this.call=function(){for(i in o=function(t){if(!t.getBoundingClientRect)return{width:t.offsetWidth,height:t.offsetHeight};var e=t.getBoundingClientRect();return{width:Math.round(e.width),height:Math.round(e.height)}}(this.element),c={},n[e])!n[e].hasOwnProperty(i)||(a=s(this.element,(r=n[e][i]).value),l="width"===r.property?o.width:o.height,u="","min"===r.mode&&l>=a&&(u+=r.value),"max"===r.mode&&l<=a&&(u+=r.value),c[h=r.mode+"-"+r.property]||(c[h]=""),u&&-1===(" "+c[h]+" ").indexOf(" "+u+" ")&&(c[h]+=" "+u));for(var t in d)!d.hasOwnProperty(t)||(c[d[t]]?this.element.setAttribute(d[t],c[d[t]].substr(1)):this.element.removeAttribute(d[t]))}}function a(e,n){e.elementQueriesSetupInformation||(e.elementQueriesSetupInformation=new o(e,n)),e.elementQueriesSensor||(e.elementQueriesSensor=new t(e,function(){e.elementQueriesSetupInformation.call()}))}function l(t,r,s,o){if(void 0===n[t]){n[t]=[];var a=i.length;e.innerHTML+="\n"+t+" {animation: 0.1s element-queries;}",e.innerHTML+="\n"+t+" > .resize-sensor {min-width: "+a+"px;}",i.push(t)}n[t].push({mode:r,property:s,value:o})}function c(t){var e;if(document.querySelectorAll&&(e=t?t.querySelectorAll.bind(t):document.querySelectorAll.bind(document)),!e&&"undefined"!=typeof $$&&(e=$$),!e&&"undefined"!=typeof jQuery&&(e=jQuery),!e)throw"No document.querySelectorAll, jQuery or Mootools's $$ found.";return e}function u(e){var n=[],i=[],r=[],s=0,o=-1,a=[];for(var l in e.children)if(e.children.hasOwnProperty(l)&&e.children[l].tagName&&"img"===e.children[l].tagName.toLowerCase()){n.push(e.children[l]);var c=e.children[l].getAttribute("min-width")||e.children[l].getAttribute("data-min-width"),u=e.children[l].getAttribute("data-src")||e.children[l].getAttribute("url");r.push(u),i.push({minWidth:c}),c?e.children[l].style.display="none":(s=n.length-1,e.children[l].style.display="block")}function h(){var t,l=!1;for(t in n)!n.hasOwnProperty(t)||i[t].minWidth&&e.offsetWidth>i[t].minWidth&&(l=t);if(l||(l=s),o!==l)if(a[l])n[o].style.display="none",n[l].style.display="block",o=l;else{var c=new Image;c.onload=function(){n[l].src=r[l],n[o].style.display="none",n[l].style.display="block",a[l]=!0,o=l},c.src=r[l]}else n[l].src=r[l]}o=s,e.resizeSensorInstance=new t(e,h),h()}var h=/,?[\s\t]*([^,\n]*?)((?:\[[\s\t]*?(?:min|max)-(?:width|height)[\s\t]*?[~$\^]?=[\s\t]*?"[^"]*?"[\s\t]*?])+)([^,\n\s\{]*)/gim,d=/\[[\s\t]*?(min|max)-(width|height)[\s\t]*?[~$\^]?=[\s\t]*?"([^"]*?)"[\s\t]*?]/gim;function p(t){var e,n,i,r;for(t=t.replace(/'/g,'"');null!==(e=h.exec(t));)for(n=e[1]+e[3],i=e[2];null!==(r=d.exec(i));)l(n,r[1],r[2],r[3])}function f(t){var e="";if(t)if("string"==typeof t)(-1!==(t=t.toLowerCase()).indexOf("min-width")||-1!==t.indexOf("max-width"))&&p(t);else for(var n=0,i=t.length;n img, [data-responsive-image] {overflow: hidden; padding: 0; } [responsive-image] > img, [data-responsive-image] > img {width: 100%;}",e.innerHTML+="\n@keyframes element-queries { 0% { visibility: inherit; } }",document.getElementsByTagName("head")[0].appendChild(e),g=!0);for(var r=0,s=document.styleSheets.length;r0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,console&&console.warn&&console.warn(a)}return t}function O(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function T(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=O.bind(i);return r.listener=n,i.wrapFn=r,r}function k(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(s=e[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var a=r[t];if(void 0===a)return!1;if("function"==typeof a)v(a,this,e);else{var l=a.length,c=P(a,l);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},w.prototype.listeners=function(t){return k(this,t,!0)},w.prototype.rawListeners=function(t){return k(this,t,!1)},w.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):A.call(t,e)},w.prototype.listenerCount=A,w.prototype.eventNames=function(){return this._eventsCount>0?m(this._events):[]},I.prototype.next=function(){if(this.done)return{done:!0};var t=this._next();return t.done&&(this.done=!0),t},"undefined"!=typeof Symbol&&(I.prototype[Symbol.iterator]=function(){return this}),I.of=function(){var t=arguments,e=t.length,n=0;return new I(function(){return n>=e?{done:!0}:{done:!1,value:t[n++]}})},I.empty=function(){var t=new I(null);return t.done=!0,t},I.is=function(t){return t instanceof I||"object"==typeof t&&null!==t&&"function"==typeof t.next};var D=I,R=function(t,e){for(var n,i=arguments.length>1?e:1/0,r=i!==1/0?new Array(i):[],s=0;;){if(s===i)return r;if((n=t.next()).done)return s!==e?r.slice(0,s):r;r[s++]=n.value}},N=function(t){function n(e,n){var i;return(i=t.call(this)||this).name="GraphError",i.message=e||"",i.data=n||{},i}return e(n,t),n}(o(Error)),L=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="InvalidArgumentsGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),j=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="NotFoundGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),F=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="UsageGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N);function B(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.undirectedDegree=0,this.directedSelfLoops=0,this.undirectedSelfLoops=0,this.in={},this.out={},this.undirected={}}function V(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}}function z(t,e){this.key=t,this.attributes=e,this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}}function U(t,e,n,i,r,s){this.key=e,this.attributes=s,this.undirected=t,this.source=i,this.target=r,this.generatedKey=n}function H(t,e,n,i,r,s,o){var a,l,c="out",u="in";if(e&&(c=u="undirected"),t.multi){if(void 0===(l=(a=s[c])[r])&&(l=new Set,a[r]=l),l.add(n),i===r&&e)return;void 0===(a=o[u])[i]&&(a[i]=l)}else{if(s[c][r]=n,i===r&&e)return;o[u][i]=n}}function $(t,e,n){var i=t.multi,r=n.source,s=n.target,o=r.key,a=s.key,l=r[e?"undirected":"out"],c=e?"undirected":"in";if(a in l)if(i){var u=l[a];1===u.size?(delete l[a],delete s[c][o]):u.delete(n)}else delete l[a];i||delete s[c][o]}V.prototype.upgradeToMixed=function(){this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}},z.prototype.upgradeToMixed=function(){this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}};var G=[{name:function(t){return"get".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes[i]}}},{name:function(t){return"get".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t){var i;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>1){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var r=""+t,s=""+arguments[1];if(!(i=c(this,r,s,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(r,'" - "').concat(s,'").'))}else if(!(i=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&i.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return i.attributes}}},{name:function(t){return"has".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes.hasOwnProperty(i)}}},{name:function(t){return"set".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r,this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"update".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("function"!=typeof r)throw new L("Graph.".concat(e,": updater should be a function."));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r(s.attributes[i]),this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"remove".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return delete r.attributes[i],this.emit("edgeAttributesUpdated",{key:r.key,type:"remove",attributes:r.attributes,name:i}),this}}},{name:function(t){return"replace".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes=i,this.emit("edgeAttributesUpdated",{key:r.key,type:"replace",attributes:r.attributes}),this}}},{name:function(t){return"merge".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return l(r.attributes,i),this.emit("edgeAttributesUpdated",{key:r.key,type:"merge",attributes:r.attributes,data:i}),this}}}],W=D,q=function(){var t,e=arguments,n=-1;return new W(function i(){if(!t){if(++n>=e.length)return{done:!0};t=e[n]}var r=t.next();return r.done?(t=null,i()):r})},X=[{name:"edges",type:"mixed"},{name:"inEdges",type:"directed",direction:"in"},{name:"outEdges",type:"directed",direction:"out"},{name:"inboundEdges",type:"mixed",direction:"in"},{name:"outboundEdges",type:"mixed",direction:"out"},{name:"directedEdges",type:"directed"},{name:"undirectedEdges",type:"undirected"}];function Y(t,e){for(var n in e)t.push(e[n].key)}function K(t,e){for(var n in e)e[n].forEach(function(e){return t.push(e.key)})}function Q(t,e,n){for(var i in t)if(i!==n){var r=t[i];e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey)}}function Z(t,e,n){for(var i in t)i!==n&&t[i].forEach(function(t){return e(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function J(t,e,n){for(var i in t)if(i!==n){var r=t[i];if(e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey))return!0}return!1}function tt(t,e,n){var i,r,s,o,a;for(var l in t)if(l!==n)for(i=t[l].values();!0!==(r=i.next()).done;)if(o=(s=r.value).source,e(s.key,s.attributes,o.key,(a=s.target).key,o.attributes,a.attributes,s.undirected,s.generatedKey))return!0;return!1}function et(t,e){var n=Object.keys(t),i=n.length,r=null,s=0;return new D(function o(){var a;if(r){var l=r.next();if(l.done)return r=null,s++,o();a=l.value}else{if(s>=i)return{done:!0};var c=n[s];if(c===e)return s++,o();if((a=t[c])instanceof Set)return r=a.values(),o();s++}return{done:!1,value:[a.key,a.attributes,a.source.key,a.target.key,a.source.attributes,a.target.attributes]}})}function nt(t,e,n){var i=e[n];i&&t.push(i.key)}function it(t,e,n){var i=e[n];i&&i.forEach(function(e){return t.push(e.key)})}function rt(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function st(t,e,n){var i=t[e];i&&i.forEach(function(t){return n(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function ot(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;return n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function at(t,e,n){var i=t[e];if(i){for(var r,s,o=i.values();!0!==(r=o.next()).done;)if(n((s=r.value).key,s.attributes,s.source.key,s.target.key,s.source.attributes,s.target.attributes,s.undirected,s.generatedKey))return!0;return!1}}function lt(t,e){var n=t[e];if(n instanceof Set){var i=n.values();return new D(function(){var t=i.next();if(t.done)return t;var e=t.value;return{done:!1,value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes]}})}return D.of([n.key,n.attributes,n.source.key,n.target.key,n.source.attributes,n.target.attributes])}function ct(t,e){if(0===t.size)return[];if("mixed"===e||e===t.type)return"function"==typeof Array.from?Array.from(t._edges.keys()):R(t._edges.keys(),t._edges.size);for(var n,i,r=new Array("undirected"===e?t.undirectedSize:t.directedSize),s="undirected"===e,o=t._edges.values(),a=0;!0!==(n=o.next()).done;)(i=n.value).undirected===s&&(r[a++]=i.key);return r}function ut(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey)}}function ht(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;if(n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey))break}}function dt(t,e){if(0===t.size)return D.empty();var n="mixed"!==e&&e!==t.type,i="undirected"===e,r=t._edges.values();return new D(function(){for(var t,e;;){if((t=r.next()).done)return t;if(e=t.value,!n||e.undirected===i)break}return{value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes],done:!1}})}function pt(t,e,n,i){var r=[],s=t?K:Y;return"undirected"!==e&&("out"!==n&&s(r,i.in),"in"!==n&&s(r,i.out),!n&&i.directedSelfLoops>0&&r.splice(r.lastIndexOf(i.key),1)),"directed"!==e&&s(r,i.undirected),r}function ft(t,e,n,i,r){var s=t?Z:Q;"undirected"!==e&&("out"!==n&&s(i.in,r),"in"!==n&&s(i.out,r,n?null:i.key)),"directed"!==e&&s(i.undirected,r)}function gt(t,e,n,i,r){var s=t?tt:J;"undirected"!==e&&("out"!==n&&s(i.in,r)||"in"!==n&&s(i.out,r,n?null:i.key))||"directed"===e||s(i.undirected,r)}function mt(t,e,n){var i=D.empty();return"undirected"!==t&&("out"!==e&&void 0!==n.in&&(i=q(i,et(n.in))),"in"!==e&&void 0!==n.out&&(i=q(i,et(n.out,e?null:n.key)))),"directed"!==t&&void 0!==n.undirected&&(i=q(i,et(n.undirected))),i}function bt(t,e,n,i,r){var s=e?it:nt,o=[];return"undirected"!==t&&(void 0!==i.in&&"out"!==n&&s(o,i.in,r),void 0!==i.out&&"in"!==n&&s(o,i.out,r),!n&&i.directedSelfLoops>0&&o.splice(o.lastIndexOf(i.key),1)),"directed"!==t&&void 0!==i.undirected&&s(o,i.undirected,r),o}function yt(t,e,n,i,r,s){var o=e?st:rt;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s),i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s)),"directed"!==t&&void 0!==i.undirected&&o(i.undirected,r,s)}function vt(t,e,n,i,r,s){var o=e?at:ot;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s)||i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s,n?null:i.key))||"directed"===t||void 0===i.undirected||o(i.undirected,r,s)}function _t(t,e,n,i){var r=D.empty();return"undirected"!==t&&(void 0!==n.in&&"out"!==e&&i in n.in&&(r=q(r,lt(n.in,i))),void 0!==n.out&&"in"!==e&&i in n.out&&(r=q(r,lt(n.out,i)))),"directed"!==t&&void 0!==n.undirected&&i in n.undirected&&(r=q(r,lt(n.undirected,i))),r}var wt=[{name:"neighbors",type:"mixed"},{name:"inNeighbors",type:"directed",direction:"in"},{name:"outNeighbors",type:"directed",direction:"out"},{name:"inboundNeighbors",type:"mixed",direction:"in"},{name:"outboundNeighbors",type:"mixed",direction:"out"},{name:"directedNeighbors",type:"directed"},{name:"undirectedNeighbors",type:"undirected"}];function xt(t,e){if(void 0!==e)for(var n in e)t.add(n)}function St(t,e,n){if("mixed"!==t){if("undirected"===t)return Object.keys(n.undirected);if("string"==typeof e)return Object.keys(n[e])}var i=new Set;return"undirected"!==t&&("out"!==e&&xt(i,n.in),"in"!==e&&xt(i,n.out)),"directed"!==t&&xt(i,n.undirected),R(i.values(),i.size)}function Et(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;n(o.key,o.attributes)}}function Ct(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;t.has(a.key)||(t.add(a.key),i(a.key,a.attributes))}}function Ot(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;if(n(o.key,o.attributes))return!0}return!1}function Tt(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;if(!t.has(a.key)&&(t.add(a.key),i(a.key,a.attributes)))return!0}return!1}function kt(t,e){var n=Object.keys(e),i=n.length,r=0;return new D(function(){if(r>=i)return{done:!0};var s=e[n[r++]];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===t?s.target:o;return{done:!1,value:[a.key,a.attributes]}})}function At(t,e,n){var i=Object.keys(n),r=i.length,s=0;return new D(function o(){if(s>=r)return{done:!0};var a=n[i[s++]];a instanceof Set&&(a=a.values().next().value);var l=a.source,c=l===e?a.target:l;return t.has(c.key)?o():(t.add(c.key),{done:!1,value:[c.key,c.attributes]})})}function Pt(t,e,n,i,r){var s=t._nodes.get(i);if("undirected"!==e){if("out"!==n&&void 0!==s.in)for(var o in s.in)if(o===r)return!0;if("in"!==n&&void 0!==s.out)for(var a in s.out)if(a===r)return!0}if("directed"!==e&&void 0!==s.undirected)for(var l in s.undirected)if(l===r)return!0;return!1}function Mt(t,e,n){for(var i,r,s,o,a,l,c,u=e._nodes.values(),h=e.type;!0!==(i=u.next()).done;){if(r=i.value,"undirected"!==h)for(s in o=r.out)if(l=(a=o[s]).target,c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return;if("directed"!==h)for(s in o=r.undirected)if((l=(a=o[s]).target).key!==s&&(l=a.source),c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return}}function It(t,e,n){for(var i,r,s,o,a,l,c,u,h,d=e._nodes.values(),p=e.type;!0!==(i=d.next()).done;){if(r=i.value,"undirected"!==p)for(s in l=r.out)for(o=l[s].values();!0!==(a=o.next()).done;)if(u=(c=a.value).target,h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return;if("directed"!==p)for(s in l=r.undirected)for(o=l[s].values();!0!==(a=o.next()).done;)if((u=(c=a.value).target).key!==s&&(u=c.source),h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return}}function Dt(t,e){var n={key:t};return d(e.attributes)||(n.attributes=l({},e.attributes)),n}function Rt(t,e){var n={source:e.source.key,target:e.target.key};return e.generatedKey||(n.key=t),d(e.attributes)||(n.attributes=l({},e.attributes)),e.undirected&&(n.undirected=!0),n}function Nt(t){return h(t)?"key"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?null:"invalid-attributes":"no-key":"not-object"}function Lt(t){return h(t)?"source"in t?"target"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?"undirected"in t&&"boolean"!=typeof t.undirected?"invalid-undirected":null:"invalid-attributes":"no-target":"no-source":"not-object"}var jt=new Set(["directed","undirected","mixed"]),Ft=new Set(["domain","_events","_eventsCount","_maxListeners"]),Bt={allowSelfLoops:!0,edgeKeyGenerator:null,multi:!1,type:"mixed"};function Vt(t,e,n){var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}function zt(t,e,n,i,r,s,o,a){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a&&!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));if(s=""+s,o=""+o,a=a||{},!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var l=t._nodes.get(s),c=t._nodes.get(o);if(!l)throw new j("Graph.".concat(e,': source node "').concat(s,'" not found.'));if(!c)throw new j("Graph.".concat(e,': target node "').concat(o,'" not found.'));var u={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(u)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));if(!t.multi&&(i?void 0!==l.undirected[o]:void 0!==l.out[o]))throw new F("Graph.".concat(e,': an edge linking "').concat(s,'" to "').concat(o,"\" already exists. If you really want to add multiple edges linking those nodes, you should create a multi graph by using the 'multi' option."));var d=new U(i,r,n,l,c,a);return t._edges.set(r,d),s===o?i?(l.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(l.directedSelfLoops++,t._directedSelfLoopCount++):i?(l.undirectedDegree++,c.undirectedDegree++):(l.outDegree++,c.inDegree++),H(t,i,d,s,o,l,c),i?t._undirectedSize++:t._directedSize++,u.key=r,t.emit("edgeAdded",u),r}function Ut(t,e,n,i,r,s,o,a,c){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a)if(c){if("function"!=typeof a)throw new L("Graph.".concat(e,': invalid updater function. Expecting a function but got "').concat(a,'"'))}else if(!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));var u;if(s=""+s,o=""+o,c&&(u=a,a=void 0),!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var d,p,f=t._nodes.get(s),g=t._nodes.get(o);if(!n&&(d=t._edges.get(r))){if(d.source.key!==s||d.target.key!==o||i&&(d.source.key!==o||d.target.key!==s))throw new F("Graph.".concat(e,': inconsistency detected when attempting to merge the "').concat(r,'" edge with "').concat(s,'" source & "').concat(o,'" target vs. ("').concat(d.source.key,'", "').concat(d.target.key,'").'));p=d}if(p||t.multi||!f||(p=i?f.undirected[o]:f.out[o]),p)return(c?u:a)?(c?(p.attributes=u(p.attributes),t.emit("edgeAttributesUpdated",{type:"replace",key:p.key,attributes:p.attributes})):(l(p.attributes,a),t.emit("edgeAttributesUpdated",{type:"merge",key:p.key,attributes:p.attributes,data:a})),p.key):p.key;a=a||{},c&&u&&(a=u(a));var m={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(m)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));return f||(f=Vt(t,s,{}),s===o&&(g=f)),g||(g=Vt(t,o,{})),d=new U(i,r,n,f,g,a),t._edges.set(r,d),s===o?i?(f.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(f.directedSelfLoops++,t._directedSelfLoopCount++):i?(f.undirectedDegree++,g.undirectedDegree++):(f.outDegree++,g.inDegree++),H(t,i,d,s,o,f,g),i?t._undirectedSize++:t._directedSize++,m.key=r,t.emit("edgeAdded",m),r}var Ht,$t=function(t){function n(e){var n;if(n=t.call(this)||this,(e=l({},Bt,e)).edgeKeyGenerator&&"function"!=typeof e.edgeKeyGenerator)throw new L("Graph.constructor: invalid 'edgeKeyGenerator' option. Expecting a function but got \"".concat(e.edgeKeyGenerator,'".'));if("boolean"!=typeof e.multi)throw new L("Graph.constructor: invalid 'multi' option. Expecting a boolean but got \"".concat(e.multi,'".'));if(!jt.has(e.type))throw new L('Graph.constructor: invalid \'type\' option. Should be one of "mixed", "directed" or "undirected" but got "'.concat(e.type,'".'));if("boolean"!=typeof e.allowSelfLoops)throw new L("Graph.constructor: invalid 'allowSelfLoops' option. Expecting a boolean but got \"".concat(e.allowSelfLoops,'".'));var i,r="mixed"===e.type?B:"directed"===e.type?V:z;return p(a(n),"NodeDataClass",r),p(a(n),"_attributes",{}),p(a(n),"_nodes",new Map),p(a(n),"_edges",new Map),p(a(n),"_directedSize",0),p(a(n),"_undirectedSize",0),p(a(n),"_directedSelfLoopCount",0),p(a(n),"_undirectedSelfLoopCount",0),p(a(n),"_edgeKeyGenerator",e.edgeKeyGenerator||(i=0,function(){return i++})),p(a(n),"_options",e),Ft.forEach(function(t){return p(a(n),t,n[t])}),f(a(n),"order",function(){return n._nodes.size}),f(a(n),"size",function(){return n._edges.size}),f(a(n),"directedSize",function(){return n._directedSize}),f(a(n),"undirectedSize",function(){return n._undirectedSize}),f(a(n),"selfLoopCount",function(){return n._directedSelfLoopCount+n._undirectedSelfLoopCount}),f(a(n),"directedSelfLoopCount",function(){return n._directedSelfLoopCount}),f(a(n),"undirectedSelfLoopCount",function(){return n._undirectedSelfLoopCount}),f(a(n),"multi",n._options.multi),f(a(n),"type",n._options.type),f(a(n),"allowSelfLoops",n._options.allowSelfLoops),f(a(n),"implementation",function(){return"graphology"}),n}e(n,t);var i=n.prototype;return i.hasNode=function(t){return this._nodes.has(""+t)},i.hasDirectedEdge=function(t,e){if("undirected"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&!n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.out[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasUndirectedEdge=function(t,e){if("directed"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.undirected[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasEdge=function(t,e){if(1===arguments.length)return this._edges.has(""+t);if(2===arguments.length){e=""+e;var n=this._nodes.get(t=""+t);if(!n)return!1;var i=void 0!==n.out&&n.out[e];return i||(i=void 0!==n.undirected&&n.undirected[e]),!(!i||this.multi&&!i.size)}throw new L("Graph.hasEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.directedEdge=function(t,e){if("undirected"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.directedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.directedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.directedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.directedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||void 0;return i?i.key:void 0}},i.undirectedEdge=function(t,e){if("directed"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.undirectedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.undirectedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.undirectedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.undirectedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.undirected&&n.undirected[e]||void 0;return i?i.key:void 0}},i.edge=function(t,e){if(this.multi)throw new F("Graph.edge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.edges instead.");e=""+e;var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.edge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.edge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||n.undirected&&n.undirected[e]||void 0;if(i)return i.key},i.inDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.inDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.inDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.inDegree+(e?n.directedSelfLoops:0)},i.outDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.outDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.outDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.outDegree+(e?n.directedSelfLoops:0)},i.directedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.directedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.directedDegree: could not find the "'.concat(t,'" node in the graph.'));if("undirected"===this.type)return 0;var i=e?n.directedSelfLoops:0;return n.inDegree+i+(n.outDegree+i)},i.undirectedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.undirectedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.undirectedDegree: could not find the "'.concat(t,'" node in the graph.'));return"directed"===this.type?0:n.undirectedDegree+2*(e?n.undirectedSelfLoops:0)},i.degree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.degree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.degree: could not find the "'.concat(t,'" node in the graph.'));var i=0,r=0;return"directed"!==this.type&&(e&&(r=n.undirectedSelfLoops),i+=n.undirectedDegree+2*r),"undirected"!==this.type&&(e&&(r=n.directedSelfLoops),i+=n.inDegree+n.outDegree+2*r),i},i.source=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.source: could not find the "'.concat(t,'" edge in the graph.'));return e.source.key},i.target=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.target: could not find the "'.concat(t,'" edge in the graph.'));return e.target.key},i.extremities=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.extremities: could not find the "'.concat(t,'" edge in the graph.'));return[e.source.key,e.target.key]},i.opposite=function(t,e){t=""+t;var n=this._edges.get(e=""+e);if(!n)throw new j('Graph.opposite: could not find the "'.concat(e,'" edge in the graph.'));var i=n.source.key,r=n.target.key;if(t!==i&&t!==r)throw new j('Graph.opposite: the "'.concat(t,'" node is not attached to the "').concat(e,'" edge (').concat(i,", ").concat(r,")."));return t===i?r:i},i.hasExtremity=function(t,e){e=""+e;var n=this._edges.get(t=""+t);if(!n)throw new j('Graph.hasExtremity: could not find the "'.concat(t,'" edge in the graph.'));return n.source.key===e||n.target.key===e},i.isUndirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isUndirected: could not find the "'.concat(t,'" edge in the graph.'));return e.undirected},i.isDirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isDirected: could not find the "'.concat(t,'" edge in the graph.'));return!e.undirected},i.isSelfLoop=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isSelfLoop: could not find the "'.concat(t,'" edge in the graph.'));return e.source===e.target},i.hasGeneratedKey=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.hasGeneratedKey: could not find the "'.concat(t,'" edge in the graph.'));return e.generatedKey},i.addNode=function(t,e){return function(t,e,n){if(n&&!h(n))throw new L('Graph.addNode: invalid attributes. Expecting an object but got "'.concat(n,'"'));if(n=n||{},t._nodes.has(e=""+e))throw new F('Graph.addNode: the "'.concat(e,'" node already exist in the graph.'));var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}(this,t,e).key},i.mergeNode=function(t,e){if(e&&!h(e))throw new L('Graph.mergeNode: invalid attributes. Expecting an object but got "'.concat(e,'"'));e=e||{};var n=this._nodes.get(t=""+t);return n?(e&&(l(n.attributes,e),this.emit("nodeAttributesUpdated",{type:"merge",key:t,attributes:n.attributes,data:e})),t):(n=new this.NodeDataClass(t,e),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:e}),t)},i.updateNode=function(t,e){if(e&&"function"!=typeof e)throw new L('Graph.updateNode: invalid updater function. Expecting a function but got "'.concat(e,'"'));var n=this._nodes.get(t=""+t);if(n)return e&&(n.attributes=e(n.attributes),this.emit("nodeAttributesUpdated",{type:"replace",key:t,attributes:n.attributes})),t;var i=e?e({}):{};return n=new this.NodeDataClass(t,i),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:i}),t},i.dropNode=function(t){var e=this,n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.dropNode: could not find the "'.concat(t,'" node in the graph.'));this.forEachEdge(t,function(t){e.dropEdge(t)}),this._nodes.delete(t),this.emit("nodeDropped",{key:t,attributes:n.attributes})},i.dropEdge=function(t){var e;if(arguments.length>1){var n=""+arguments[0],i=""+arguments[1];if(!(e=c(this,n,i,this.type)))throw new j('Graph.dropEdge: could not find the "'.concat(n,'" -> "').concat(i,'" edge in the graph.'))}else if(!(e=this._edges.get(t=""+t)))throw new j('Graph.dropEdge: could not find the "'.concat(t,'" edge in the graph.'));this._edges.delete(e.key);var r=e.source,s=e.target,o=e.attributes,a=e.undirected;return r===s?a?(r.undirectedSelfLoops--,this._undirectedSelfLoopCount--):(r.directedSelfLoops--,this._directedSelfLoopCount--):a?(r.undirectedDegree--,s.undirectedDegree--):(r.outDegree--,s.inDegree--),$(this,a,e),a?this._undirectedSize--:this._directedSize--,this.emit("edgeDropped",{key:t,attributes:o,source:r.key,target:s.key,undirected:a}),this},i.clear=function(){this._edges.clear(),this._nodes.clear(),this.emit("cleared")},i.clearEdges=function(){this._edges.clear(),this.clearIndex(),this.emit("edgesCleared")},i.getAttribute=function(t){return this._attributes[t]},i.getAttributes=function(){return this._attributes},i.hasAttribute=function(t){return this._attributes.hasOwnProperty(t)},i.setAttribute=function(t,e){return this._attributes[t]=e,this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.updateAttribute=function(t,e){if("function"!=typeof e)throw new L("Graph.updateAttribute: updater should be a function.");return this._attributes[t]=e(this._attributes[t]),this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.removeAttribute=function(t){return delete this._attributes[t],this.emit("attributesUpdated",{type:"remove",attributes:this._attributes,name:t}),this},i.replaceAttributes=function(t){if(!h(t))throw new L("Graph.replaceAttributes: provided attributes are not a plain object.");return this._attributes=t,this.emit("attributesUpdated",{type:"replace",attributes:this._attributes}),this},i.mergeAttributes=function(t){if(!h(t))throw new L("Graph.mergeAttributes: provided attributes are not a plain object.");return l(this._attributes,t),this.emit("attributesUpdated",{type:"merge",attributes:this._attributes,data:t}),this},i.getNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.getNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes[e]},i.getNodeAttributes=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.getNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));return e.attributes},i.hasNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes.hasOwnProperty(e)},i.setNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.setNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.setNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or value, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");return i.attributes[e]=n,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.updateNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.updateNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.updateNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or updater, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");if("function"!=typeof n)throw new L("Graph.updateAttribute: updater should be a function.");var r=i.attributes,s=n(r[e]);return r[e]=s,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.removeNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return delete n.attributes[e],this.emit("nodeAttributesUpdated",{key:t,type:"remove",attributes:n.attributes,name:e}),this},i.replaceNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.replaceNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.replaceNodeAttributes: provided attributes are not a plain object.");return n.attributes=e,this.emit("nodeAttributesUpdated",{key:t,type:"replace",attributes:n.attributes}),this},i.mergeNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.mergeNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.mergeNodeAttributes: provided attributes are not a plain object.");return l(n.attributes,e),this.emit("nodeAttributesUpdated",{key:t,type:"merge",attributes:n.attributes,data:e}),this},i.updateEachNodeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachNodeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachNodeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._nodes.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachNodeAttributesUpdated",{hints:e||null})},i.updateEachEdgeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachEdgeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachEdgeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._edges.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachEdgeAttributesUpdated",{hints:e||null})},i.forEach=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!1,this,t):Mt(!1,this,t)},i.forEachUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!0,this,t):Mt(!0,this,t)},i.adjacency=function(){return this.multi?(p=(l=this)._nodes.values(),f=l.type,g="outer",m=null,new D(function t(){var e;if("outer"===g)return!0===(e=p.next()).done?e:(c=e.value,g="directed",t());if("directed"===g)return"undirected"===f?(g="undirected",t()):(h=c.out,u=Object.keys(c.out),d=0,g="inner-directed",t());if("undirected"===g){if("directed"===f)return g="outer",t();h=c.undirected,u=Object.keys(c.undirected),d=0,g="inner-undirected"}if(!m&&d>=u.length)return g="inner-undirected"===g?"outer":"undirected",t();if(!m){var n=u[d++];return m=h[n].values(),t()}if((e=m.next()).done)return m=null,t();var i=e.value,r=i.target;return"inner-undirected"===g&&r.key===c.key&&(r=i.source),{done:!1,value:[c.key,r.key,c.attributes,r.attributes,i.key,i.attributes]}})):(s=(t=this)._nodes.values(),o=t.type,a="outer",new D(function t(){var l;if("outer"===a)return!0===(l=s.next()).done?l:(e=l.value,a="directed",t());if("directed"===a)return"undirected"===o?(a="undirected",t()):(i=e.out,n=Object.keys(e.out),r=0,a="inner-directed",t());if("undirected"===a){if("directed"===o)return a="outer",t();i=e.undirected,n=Object.keys(e.undirected),r=0,a="inner-undirected"}if(r>=n.length)return a="inner-undirected"===a?"outer":"undirected",t();var c=n[r++],u=i[c],h=u.target;return"inner-undirected"===a&&h.key===e.key&&(h=u.source),{done:!1,value:[e.key,h.key,e.attributes,h.attributes,u.key,u.attributes]}}));var t,e,n,i,r,s,o,a,l,c,u,h,d,p,f,g,m},i.nodes=function(){return"function"==typeof Array.from?Array.from(this._nodes.keys()):R(this._nodes.keys(),this._nodes.size)},i.forEachNode=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");this._nodes.forEach(function(e,n){t(n,e.attributes)})},i.forEachNodeUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");for(var e,n,i=this._nodes.values();!0!==(e=i.next())&&!t((n=e.value).key,n.attributes););},i.nodeEntries=function(){var t=this._nodes.values();return new D(function(){var e=t.next();if(e.done)return e;var n=e.value;return{value:[n.key,n.attributes],done:!1}})},i.exportNode=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.exportNode: could not find the "'.concat(t,'" node in the graph.'));return Dt(t,e)},i.exportEdge=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.exportEdge: could not find the "'.concat(t,'" edge in the graph.'));return Rt(t,e)},i.export=function(){var t=new Array(this._nodes.size),e=0;this._nodes.forEach(function(n,i){t[e++]=Dt(i,n)});var n=new Array(this._edges.size);return e=0,this._edges.forEach(function(t,i){n[e++]=Rt(i,t)}),{attributes:this.getAttributes(),nodes:t,edges:n,options:{type:this.type,multi:this.multi,allowSelfLoops:this.allowSelfLoops}}},i.importNode=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Nt(t);if(n){if("not-object"===n)throw new L('Graph.importNode: invalid serialized node. A serialized node should be a plain object with at least a "key" property.');if("no-key"===n)throw new L("Graph.importNode: no key provided.");if("invalid-attributes"===n)throw new L("Graph.importNode: invalid attributes. Attributes should be a plain object, null or omitted.")}var i=t.key,r=t.attributes,s=void 0===r?{}:r;return e?this.mergeNode(i,s):this.addNode(i,s),this},i.importEdge=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Lt(t);if(n){if("not-object"===n)throw new L('Graph.importEdge: invalid serialized edge. A serialized edge should be a plain object with at least a "source" & "target" property.');if("no-source"===n)throw new L("Graph.importEdge: missing souce.");if("no-target"===n)throw new L("Graph.importEdge: missing target.");if("invalid-attributes"===n)throw new L("Graph.importEdge: invalid attributes. Attributes should be a plain object, null or omitted.");if("invalid-undirected"===n)throw new L("Graph.importEdge: invalid undirected. Undirected should be boolean or omitted.")}var i=t.source,r=t.target,s=t.attributes,o=void 0===s?{}:s,a=t.undirected,l=void 0!==a&&a;return"key"in t?(e?l?this.mergeUndirectedEdgeWithKey:this.mergeDirectedEdgeWithKey:l?this.addUndirectedEdgeWithKey:this.addDirectedEdgeWithKey).call(this,t.key,i,r,o):(e?l?this.mergeUndirectedEdge:this.mergeDirectedEdge:l?this.addUndirectedEdge:this.addDirectedEdge).call(this,i,r,o),this},i.import=function(t){var e,n,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(u(t))return this.import(t.export(),r),this;if(!h(t))throw new L("Graph.import: invalid argument. Expecting a serialized graph or, alternatively, a Graph instance.");if(t.attributes){if(!h(t.attributes))throw new L("Graph.import: invalid attributes. Expecting a plain object.");r?this.mergeAttributes(t.attributes):this.replaceAttributes(t.attributes)}if(t.nodes){if(i=t.nodes,!Array.isArray(i))throw new L("Graph.import: invalid nodes. Expecting an array.");for(e=0,n=i.length;en)){var o=new Set;o.add(e.undirected[s]),e.undirected[s]=o,t._nodes.get(s).undirected[n]=o}})),this;var t},i.clearIndex=function(){return this._nodes.forEach(function(t){void 0!==t.in&&(t.in={},t.out={}),void 0!==t.undirected&&(t.undirected={})}),this},i.toJSON=function(){return this.export()},i.toString=function(){return"[object Graph]"},i.inspect=function(){var t=this,e={};this._nodes.forEach(function(t,n){e[n]=t.attributes});var n={},i={};this._edges.forEach(function(e,r){var s=e.undirected?"--":"->",o="",a="(".concat(e.source.key,")").concat(s,"(").concat(e.target.key,")");e.generatedKey?t.multi&&(void 0===i[a]?i[a]=0:i[a]++,o+="".concat(i[a],". ")):o+="[".concat(r,"]: "),n[o+=a]=e.attributes});var r={};for(var s in this)this.hasOwnProperty(s)&&!Ft.has(s)&&"function"!=typeof this[s]&&(r[s]=this[s]);return r.attributes=this._attributes,r.nodes=e,r.edges=n,p(r,"constructor",this.constructor),r},n}(b.exports.EventEmitter);"undefined"!=typeof Symbol&&($t.prototype[Symbol.for("nodejs.util.inspect.custom")]=$t.prototype.inspect),[{name:function(t){return"".concat(t,"Edge")},generateKey:!0},{name:function(t){return"".concat(t,"DirectedEdge")},generateKey:!0,type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdge")},generateKey:!0,type:"undirected"},{name:function(t){return"".concat(t,"EdgeWithKey")}},{name:function(t){return"".concat(t,"DirectedEdgeWithKey")},type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdgeWithKey")},type:"undirected"}].forEach(function(t){["add","merge","update"].forEach(function(e){var n=t.name(e),i="add"===e?zt:Ut;$t.prototype[n]=t.generateKey?function(r,s,o){return i(this,n,!0,"undirected"===(t.type||this.type),null,r,s,o,"update"===e)}:function(r,s,o,a){return i(this,n,!1,"undirected"===(t.type||this.type),r,s,o,a,"update"===e)}})}),"undefined"!=typeof Symbol&&($t.prototype[Symbol.iterator]=$t.prototype.adjacency),Ht=$t,G.forEach(function(t){var e=t.name,n=t.attacher;n(Ht,e("Edge"),"mixed"),n(Ht,e("DirectedEdge"),"directed"),n(Ht,e("UndirectedEdge"),"undirected")}),function(t){X.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t,e){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(!arguments.length)return ct(this,r);if(1===arguments.length){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return pt(this.multi,"mixed"===r?this.type:r,s,n)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" target node in the graph.'));return bt(r,this.multi,s,o,e)}throw new L("Graph.".concat(i,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ut(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return ft(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return yt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ht(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return gt(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return vt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t,e){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();if(!arguments.length)return dt(this,n);if(1===arguments.length){var s=this._nodes.get(t=""+t);if(!s)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return mt(n,i,s)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(r,': could not find the "').concat(e,'" target node in the graph.'));return _t(n,i,o,e)}throw new L("Graph.".concat(r,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))}}(t,e)})}($t),function(t){wt.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(2===arguments.length){var e=""+arguments[0],n=""+arguments[1];if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));if(!this._nodes.has(n))throw new j("Graph.".concat(i,': could not find the "').concat(n,'" node in the graph.'));return Pt(this,r,s,e,n)}if(1===arguments.length){var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return St("mixed"===r?this.type:r,s,o)}throw new L("Graph.".concat(i,": invalid number of arguments (expecting 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Et(n,n.undirected,i);if("string"==typeof e)return Et(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Ct(r,n,n.in,i),"in"!==e&&Ct(r,n,n.out,i)),"directed"!==t&&Ct(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Ot(n,n.undirected,i);if("string"==typeof e)return Ot(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Tt(r,n,n.in,i)||"in"!==e&&Tt(r,n,n.out,i))||"directed"===t||Tt(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();var e=this._nodes.get(t=""+t);if(void 0===e)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return function(t,e,n){if("mixed"!==t){if("undirected"===t)return kt(n,n.undirected);if("string"==typeof e)return kt(n,n[e])}var i=D.empty(),r=new Set;return"undirected"!==t&&("out"!==e&&(i=q(i,At(r,n,n.in))),"in"!==e&&(i=q(i,At(r,n,n.out)))),"directed"!==t&&(i=q(i,At(r,n,n.undirected))),i}("mixed"===n?this.type:n,i,e)}}(t,e)})}($t);var Gt=function(t){function n(e){var n=l({type:"directed"},e);if("multi"in n&&!1!==n.multi)throw new L("DirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("directed"!==n.type)throw new L('DirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Wt=function(t){function n(e){var n=l({type:"undirected"},e);if("multi"in n&&!1!==n.multi)throw new L("UndirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("undirected"!==n.type)throw new L('UndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),qt=function(t){function n(e){var n=l({multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiGraph.from: inconsistent indication that the graph should be simple in given options!");return t.call(this,n)||this}return e(n,t),n}($t),Xt=function(t){function n(e){var n=l({type:"directed",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiDirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("directed"!==n.type)throw new L('MultiDirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Yt=function(t){function n(e){var n=l({type:"undirected",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiUndirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("undirected"!==n.type)throw new L('MultiUndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t);function Kt(t){t.from=function(e,n){var i=l({},e.options,n),r=new t(i);return r.import(e),r}}return Kt($t),Kt(Gt),Kt(Wt),Kt(qt),Kt(Xt),Kt(Yt),$t.Graph=$t,$t.DirectedGraph=Gt,$t.UndirectedGraph=Wt,$t.MultiGraph=qt,$t.MultiDirectedGraph=Xt,$t.MultiUndirectedGraph=Yt,$t.InvalidArgumentsGraphError=L,$t.NotFoundGraphError=j,$t.UsageGraphError=F,$t}()},11524:function(t,e,n){var i;!function(r,s,o,a){"use strict";var l,c=["","webkit","Moz","MS","ms","o"],u=s.createElement("div"),h=Math.round,d=Math.abs,p=Date.now;function f(t,e,n){return setTimeout(w(t,n),e)}function g(t,e,n){return!!Array.isArray(t)&&(m(t,n[e],n),!0)}function m(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==a)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=r.console&&(r.console.warn||r.console.log);return s&&s.call(r.console,i,n),t.apply(this,arguments)}}l="function"!=typeof Object.assign?function(t){if(t===a||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n-1}function k(t){return t.trim().split(/\s+/g)}function A(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;in[e]}):i.sort()),i}function I(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s1&&!n.firstMultiple?n.firstMultiple=$(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,l=o?o.center:s.center,c=e.center=G(i);e.timeStamp=p(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=Y(l,c),e.distance=X(l,c),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};(1===e.eventType||4===s.eventType)&&(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=q(e.deltaX,e.deltaY);var u=W(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=u.x,e.overallVelocityY=u.y,e.overallVelocity=d(u.x)>d(u.y)?u.x:u.y,e.scale=o?function(t,e){return X(e[0],e[1],z)/X(t[0],t[1],z)}(o.pointers,i):1,e.rotation=o?function(t,e){return Y(e[1],e[0],z)+Y(t[1],t[0],z)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,l=e.timeStamp-o.timeStamp;if(8!=e.eventType&&(l>25||o.velocity===a)){var c=e.deltaX-o.deltaX,u=e.deltaY-o.deltaY,h=W(l,c,u);i=h.x,r=h.y,n=d(h.x)>d(h.y)?h.x:h.y,s=q(c,u),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var h=t.element;O(e.srcEvent.target,h)&&(h=e.srcEvent.target),e.target=h}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function $(t){for(var e=[],n=0;n=d(e)?t<0?2:4:e<0?8:16}function X(t,e,n){n||(n=V);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function Y(t,e,n){return n||(n=V),180*Math.atan2(e[n[1]]-t[n[1]],e[n[0]]-t[n[0]])/Math.PI}U.prototype={handler:function(){},init:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(R(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&C(this.element,this.evEl,this.domHandler),this.evTarget&&C(this.target,this.evTarget,this.domHandler),this.evWin&&C(R(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Q="mousedown",Z="mousemove mouseup";function J(){this.evEl=Q,this.evWin=Z,this.pressed=!1,U.apply(this,arguments)}_(J,U,{handler:function(t){var e=K[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:B,srcEvent:t}))}});var tt={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},et={2:F,3:"pen",4:B,5:"kinect"},nt="pointerdown",it="pointermove pointerup pointercancel";function rt(){this.evEl=nt,this.evWin=it,U.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(nt="MSPointerDown",it="MSPointerMove MSPointerUp MSPointerCancel"),_(rt,U,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace("ms",""),r=tt[i],s=et[t.pointerType]||t.pointerType,o=s==F,a=A(e,t.pointerId,"pointerId");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(n=!0),!(a<0)&&(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var st={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ot="touchstart",at="touchstart touchmove touchend touchcancel";function lt(){this.evTarget=ot,this.evWin=at,this.started=!1,U.apply(this,arguments)}function ct(t,e){var n=P(t.touches),i=P(t.changedTouches);return 12&e&&(n=M(n.concat(i),"identifier",!0)),[n,i]}_(lt,U,{handler:function(t){var e=st[t.type];if(1===e&&(this.started=!0),this.started){var n=ct.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:t})}}});var ut={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ht="touchstart touchmove touchend touchcancel";function dt(){this.evTarget=ht,this.targetIds={},U.apply(this,arguments)}function pt(t,e){var n=P(t.touches),i=this.targetIds;if(3&e&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=P(t.changedTouches),a=[],l=this.target;if(s=n.filter(function(t){return O(t.target,l)}),1===e)for(r=0;r-1&&i.splice(t,1)},2500)}}function bt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+kt(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+kt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&r&e.direction},attrTest:function(t){return Mt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=At(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),_(Dt,Mt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){1!==t.scale&&(t.additionalEvent=this.options.event+(t.scale<1?"in":"out")),this._super.emit.call(this,t)}}),_(Rt,Tt,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distancee.time;if(this._input=t,!i||!n||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=f(function(){this.state=8,this.tryEmit()},e.time,this);else if(4&t.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=p(),this.manager.emit(this.options.event,this._input)))}}),_(Nt,Mt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),_(Lt,Mt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return It.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:24&n&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&d(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=At(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),_(jt,Tt,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[wt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance"']/g,W=RegExp($.source),q=RegExp(G.source),X=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,J=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tt=/[\\^$.*+?()[\]{}|]/g,et=RegExp(tt.source),nt=/^\s+/,it=/\s/,rt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,st=/\{\n\/\* \[wrapped with (.+)\] \*/,ot=/,? & /,at=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lt=/[()=,{}\[\]\/\s]/,ct=/\\(\\)?/g,ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,dt=/^[-+]0x[0-9a-f]+$/i,pt=/^0b[01]+$/i,ft=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,mt=/^(?:0|[1-9]\d*)$/,bt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,yt=/($^)/,vt=/['\n\r\u2028\u2029\\]/g,_t="\\ud800-\\udfff",wt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xt="\\u2700-\\u27bf",St="a-z\\xdf-\\xf6\\xf8-\\xff",Et="A-Z\\xc0-\\xd6\\xd8-\\xde",Ct="\\ufe0e\\ufe0f",Ot="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Tt="["+_t+"]",kt="["+Ot+"]",At="["+wt+"]",Pt="\\d+",Mt="["+xt+"]",It="["+St+"]",Dt="[^"+_t+Ot+Pt+xt+St+Et+"]",Rt="\\ud83c[\\udffb-\\udfff]",Nt="[^"+_t+"]",Lt="(?:\\ud83c[\\udde6-\\uddff]){2}",jt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ft="["+Et+"]",Bt="(?:"+It+"|"+Dt+")",Vt="(?:"+Ft+"|"+Dt+")",zt="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ut="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ht="(?:"+At+"|"+Rt+")?",$t="["+Ct+"]?",Gt=$t+Ht+"(?:\\u200d(?:"+[Nt,Lt,jt].join("|")+")"+$t+Ht+")*",Wt="(?:"+[Mt,Lt,jt].join("|")+")"+Gt,qt="(?:"+[Nt+At+"?",At,Lt,jt,Tt].join("|")+")",Xt=RegExp("['\u2019]","g"),Yt=RegExp(At,"g"),Kt=RegExp(Rt+"(?="+Rt+")|"+qt+Gt,"g"),Qt=RegExp([Ft+"?"+It+"+"+zt+"(?="+[kt,Ft,"$"].join("|")+")",Vt+"+"+Ut+"(?="+[kt,Ft+Bt,"$"].join("|")+")",Ft+"?"+Bt+"+"+zt,Ft+"+"+Ut,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pt,Wt].join("|"),"g"),Zt=RegExp("[\\u200d"+_t+wt+Ct+"]"),Jt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,te=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ee=-1,ne={};ne[I]=ne[D]=ne[R]=ne[N]=ne[L]=ne[j]=ne[F]=ne[B]=ne[V]=!0,ne[f]=ne[g]=ne[P]=ne[m]=ne[M]=ne[b]=ne[y]=ne[v]=ne[w]=ne[x]=ne[S]=ne[C]=ne[O]=ne[T]=ne[A]=!1;var ie={};ie[f]=ie[g]=ie[P]=ie[M]=ie[m]=ie[b]=ie[I]=ie[D]=ie[R]=ie[N]=ie[L]=ie[w]=ie[x]=ie[S]=ie[C]=ie[O]=ie[T]=ie[k]=ie[j]=ie[F]=ie[B]=ie[V]=!0,ie[y]=ie[v]=ie[A]=!1;var re={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},se=parseFloat,oe=parseInt,ae="object"==typeof global&&global&&global.Object===Object&&global,le="object"==typeof self&&self&&self.Object===Object&&self,ce=ae||le||Function("return this")(),ue=e&&!e.nodeType&&e,he=ue&&t&&!t.nodeType&&t,de=he&&he.exports===ue,pe=de&&ae.process,fe=function(){try{return he&&he.require&&he.require("util").types||pe&&pe.binding&&pe.binding("util")}catch(t){}}(),ge=fe&&fe.isArrayBuffer,me=fe&&fe.isDate,be=fe&&fe.isMap,ye=fe&&fe.isRegExp,ve=fe&&fe.isSet,_e=fe&&fe.isTypedArray;function we(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function xe(t,e,n,i){for(var r=-1,s=null==t?0:t.length;++r-1}function ke(t,e,n){for(var i=-1,r=null==t?0:t.length;++i-1;);return n}function Qe(t,e){for(var n=t.length;n--&&je(e,t[n],0)>-1;);return n}function Ze(t,e){for(var n=t.length,i=0;n--;)t[n]===e&&++i;return i}var Je=Ue({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),tn=Ue({"&":"&","<":"<",">":">",'"':""","'":"'"});function en(t){return"\\"+re[t]}function nn(t){return Zt.test(t)}function rn(t){var e=-1,n=Array(t.size);return t.forEach(function(t,i){n[++e]=[i,t]}),n}function sn(t,e){return function(n){return t(e(n))}}function on(t,e){for(var n=-1,i=t.length,r=0,s=[];++n",""":'"',"'":"'"}),dn=function t(e){var n,i=(e=null==e?ce:dn.defaults(ce.Object(),e,dn.pick(ce,te))).Array,it=e.Date,_t=e.Error,wt=e.Function,xt=e.Math,St=e.Object,Et=e.RegExp,Ct=e.String,Ot=e.TypeError,Tt=i.prototype,kt=St.prototype,At=e["__core-js_shared__"],Pt=wt.prototype.toString,Mt=kt.hasOwnProperty,It=0,Dt=(n=/[^.]+$/.exec(At&&At.keys&&At.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Rt=kt.toString,Nt=Pt.call(St),Lt=ce._,jt=Et("^"+Pt.call(Mt).replace(tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ft=de?e.Buffer:r,Bt=e.Symbol,Vt=e.Uint8Array,zt=Ft?Ft.allocUnsafe:r,Ut=sn(St.getPrototypeOf,St),Ht=St.create,$t=kt.propertyIsEnumerable,Gt=Tt.splice,Wt=Bt?Bt.isConcatSpreadable:r,qt=Bt?Bt.iterator:r,Kt=Bt?Bt.toStringTag:r,Zt=function(){try{var t=os(St,"defineProperty");return t({},"",{}),t}catch(Ms){}}(),re=e.clearTimeout!==ce.clearTimeout&&e.clearTimeout,ae=it&&it.now!==ce.Date.now&&it.now,le=e.setTimeout!==ce.setTimeout&&e.setTimeout,ue=xt.ceil,he=xt.floor,pe=St.getOwnPropertySymbols,fe=Ft?Ft.isBuffer:r,Re=e.isFinite,Ue=Tt.join,pn=sn(St.keys,St),fn=xt.max,gn=xt.min,mn=it.now,bn=e.parseInt,yn=xt.random,vn=Tt.reverse,_n=os(e,"DataView"),wn=os(e,"Map"),xn=os(e,"Promise"),Sn=os(e,"Set"),En=os(e,"WeakMap"),Cn=os(St,"create"),On=En&&new En,Tn={},kn=Ns(_n),An=Ns(wn),Pn=Ns(xn),Mn=Ns(Sn),In=Ns(En),Dn=Bt?Bt.prototype:r,Rn=Dn?Dn.valueOf:r,Nn=Dn?Dn.toString:r;function Ln(t){if(Jo(t)&&!Uo(t)&&!(t instanceof Vn)){if(t instanceof Bn)return t;if(Mt.call(t,"__wrapped__"))return Ls(t)}return new Bn(t)}var jn=function(){function t(){}return function(e){if(!Zo(e))return{};if(Ht)return Ht(e);t.prototype=e;var n=new t;return t.prototype=r,n}}();function Fn(){}function Bn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=r}function Vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function zn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function ri(t,e,n,i,s,o){var a,l=1&e,c=2&e,u=4&e;if(n&&(a=s?n(t,i,s,o):n(t)),a!==r)return a;if(!Zo(t))return t;var h=Uo(t);if(h){if(a=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Mt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!l)return Er(t,a)}else{var d=cs(t),p=d==v||d==_;if(Wo(t))return yr(t,l);if(d==S||d==f||p&&!s){if(a=c||p?{}:hs(t),!l)return c?function(t,e){return Cr(t,ls(t),e)}(t,function(t,e){return t&&Cr(e,Pa(e),t)}(a,t)):function(t,e){return Cr(t,as(t),e)}(t,ti(a,t))}else{if(!ie[d])return s?t:{};a=function(t,e,n){var i=t.constructor;switch(e){case P:return vr(t);case m:case b:return new i(+t);case M:return function(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case I:case D:case R:case N:case L:case j:case F:case B:case V:return _r(t,n);case w:return new i;case x:case T:return new i(t);case C:return function(t){var e=new t.constructor(t.source,ht.exec(t));return e.lastIndex=t.lastIndex,e}(t);case O:return new i;case k:return function(t){return Rn?St(Rn.call(t)):{}}(t)}}(t,d,l)}}o||(o=new Gn);var g=o.get(t);if(g)return g;o.set(t,a),ra(t)?t.forEach(function(i){a.add(ri(i,e,n,i,t,o))}):ta(t)&&t.forEach(function(i,r){a.set(r,ri(i,e,n,r,t,o))});var y=h?r:(u?c?Jr:Zr:c?Pa:Aa)(t);return Se(y||t,function(i,r){y&&(i=t[r=i]),Qn(a,r,ri(i,e,n,r,t,o))}),a}function si(t,e,n){var i=n.length;if(null==t)return!i;for(t=St(t);i--;){var s=n[i],o=t[s];if(o===r&&!(s in t)||!(0,e[s])(o))return!1}return!0}function oi(t,e,n){if("function"!=typeof t)throw new Ot(s);return Os(function(){t.apply(r,n)},e)}function ai(t,e,n,i){var r=-1,s=Te,o=!0,a=t.length,l=[],c=e.length;if(!a)return l;n&&(e=Ae(e,qe(n))),i?(s=ke,o=!1):e.length>=200&&(s=Ye,o=!1,e=new $n(e));t:for(;++r-1},Un.prototype.set=function(t,e){var n=this.__data__,i=Zn(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this},Hn.prototype.clear=function(){this.size=0,this.__data__={hash:new zn,map:new(wn||Un),string:new zn}},Hn.prototype.delete=function(t){var e=rs(this,t).delete(t);return this.size-=e?1:0,e},Hn.prototype.get=function(t){return rs(this,t).get(t)},Hn.prototype.has=function(t){return rs(this,t).has(t)},Hn.prototype.set=function(t,e){var n=rs(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this},$n.prototype.add=$n.prototype.push=function(t){return this.__data__.set(t,o),this},$n.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.clear=function(){this.__data__=new Un,this.size=0},Gn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Gn.prototype.get=function(t){return this.__data__.get(t)},Gn.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Un){var i=n.__data__;if(!wn||i.length<199)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new Hn(i)}return n.set(t,e),this.size=n.size,this};var li=kr(mi),ci=kr(bi,!0);function ui(t,e){var n=!0;return li(t,function(t,i,r){return n=!!e(t,i,r)}),n}function hi(t,e,n){for(var i=-1,s=t.length;++i0&&n(a)?e>1?pi(a,e-1,n,i,r):Pe(r,a):i||(r[r.length]=a)}return r}var fi=Ar(),gi=Ar(!0);function mi(t,e){return t&&fi(t,e,Aa)}function bi(t,e){return t&&gi(t,e,Aa)}function yi(t,e){return Oe(e,function(e){return Yo(t[e])})}function vi(t,e){for(var n=0,i=(e=fr(e,t)).length;null!=t&&ne}function Si(t,e){return null!=t&&Mt.call(t,e)}function Ei(t,e){return null!=t&&e in St(t)}function Ci(t,e,n){for(var s=n?ke:Te,o=t[0].length,a=t.length,l=a,c=i(a),u=1/0,h=[];l--;){var d=t[l];l&&e&&(d=Ae(d,qe(e))),u=gn(d.length,u),c[l]=!n&&(e||o>=120&&d.length>=120)?new $n(l&&d):r}d=t[0];var p=-1,f=c[0];t:for(;++p=a?l:l*("desc"==n[i]?-1:1)}return t.index-e.index}(t,e,n)});i--;)t[i]=t[i].value;return t}(Ri(t,function(t,n,r){return{criteria:Ae(e,function(e){return e(t)}),index:++i,value:t}}))}function Vi(t,e,n){for(var i=-1,r=e.length,s={};++i-1;)a!==t&&Gt.call(a,l,1),Gt.call(t,l,1);return t}function Ui(t,e){for(var n=t?e.length:0,i=n-1;n--;){var r=e[n];if(n==i||r!==s){var s=r;ps(r)?Gt.call(t,r,1):or(t,r)}}return t}function Hi(t,e){return t+he(yn()*(e-t+1))}function $i(t,e){var n="";if(!t||e<1||e>h)return n;do{e%2&&(n+=t),(e=he(e/2))&&(t+=t)}while(e);return n}function Gi(t,e){return Ts(ws(t,e,el),t+"")}function Wi(t){return qn(Fa(t))}function qi(t,e){var n=Fa(t);return Ps(n,ii(e,0,n.length))}function Xi(t,e,n,i){if(!Zo(t))return t;for(var s=-1,o=(e=fr(e,t)).length,a=o-1,l=t;null!=l&&++ss?0:s+e),(n=n>s?s:n)<0&&(n+=s),s=e>n?0:n-e>>>0,e>>>=0;for(var o=i(s);++r>>1,o=t[s];null!==o&&!oa(o)&&(n?o<=e:o=200){var c=e?null:$r(t);if(c)return an(c);o=!1,r=Ye,l=new $n}else l=e?[]:a;t:for(;++i=i?t:Zi(t,e,n)}var br=re||function(t){return ce.clearTimeout(t)};function yr(t,e){if(e)return t.slice();var n=t.length,i=zt?zt(n):new t.constructor(n);return t.copy(i),i}function vr(t){var e=new t.constructor(t.byteLength);return new Vt(e).set(new Vt(t)),e}function _r(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function wr(t,e){if(t!==e){var n=t!==r,i=null===t,s=t==t,o=oa(t),a=e!==r,l=null===e,c=e==e,u=oa(e);if(!l&&!u&&!o&&t>e||o&&a&&c&&!l&&!u||i&&a&&c||!n&&c||!s)return 1;if(!i&&!o&&!u&&t1?n[s-1]:r,a=s>2?n[2]:r;for(o=t.length>3&&"function"==typeof o?(s--,o):r,a&&fs(n[0],n[1],a)&&(o=s<3?r:o,s=1),e=St(e);++i-1?s[o?e[a]:a]:r}}function Rr(t){return Qr(function(e){var n=e.length,i=n,o=Bn.prototype.thru;for(t&&e.reverse();i--;){var a=e[i];if("function"!=typeof a)throw new Ot(s);if(o&&!l&&"wrapper"==es(a))var l=new Bn([],!0)}for(i=l?i:n;++i1&&v.reverse(),p&&hl))return!1;var u=o.get(t),h=o.get(e);if(u&&h)return u==e&&h==t;var d=-1,p=!0,f=2&n?new $n:r;for(o.set(t,e),o.set(e,t);++d-1&&t%1==0&&t1?"& ":"")+e[i],e=e.join(n>2?", ":" "),t.replace(rt,"{\n/* [wrapped with "+e+"] */\n")}(i,function(t,e){return Se(p,function(n){var i="_."+n[0];e&n[1]&&!Te(t,i)&&t.push(i)}),t.sort()}(function(t){var e=t.match(st);return e?e[1].split(ot):[]}(i),n)))}function As(t){var e=0,n=0;return function(){var i=mn(),s=16-(i-n);if(n=i,s>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(r,arguments)}}function Ps(t,e){var n=-1,i=t.length,s=i-1;for(e=e===r?i:e;++n1?t[e-1]:r;return n="function"==typeof n?(t.pop(),n):r,no(t,n)});function co(t){var e=Ln(t);return e.__chain__=!0,e}function uo(t,e){return e(t)}var ho=Qr(function(t){var e=t.length,n=e?t[0]:0,i=this.__wrapped__,s=function(e){return ni(e,t)};return!(e>1||this.__actions__.length)&&i instanceof Vn&&ps(n)?((i=i.slice(n,+n+(e?1:0))).__actions__.push({func:uo,args:[s],thisArg:r}),new Bn(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(r),t})):this.thru(s)}),po=Or(function(t,e,n){Mt.call(t,n)?++t[n]:ei(t,n,1)}),fo=Dr(Vs),go=Dr(zs);function mo(t,e){return(Uo(t)?Se:li)(t,is(e,3))}function bo(t,e){return(Uo(t)?Ee:ci)(t,is(e,3))}var yo=Or(function(t,e,n){Mt.call(t,n)?t[n].push(e):ei(t,n,[e])}),vo=Gi(function(t,e,n){var r=-1,s="function"==typeof e,o=$o(t)?i(t.length):[];return li(t,function(t){o[++r]=s?we(e,t,n):Oi(t,e,n)}),o}),_o=Or(function(t,e,n){ei(t,n,e)});function wo(t,e){return(Uo(t)?Ae:Ri)(t,is(e,3))}var xo=Or(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),So=Gi(function(t,e){if(null==t)return[];var n=e.length;return n>1&&fs(t,e[0],e[1])?e=[]:n>2&&fs(e[0],e[1],e[2])&&(e=[e[0]]),Bi(t,pi(e,1),[])}),Eo=ae||function(){return ce.Date.now()};function Co(t,e,n){return e=n?r:e,Wr(t,c,r,r,r,r,e=t&&null==e?t.length:e)}function Oo(t,e){var n;if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=r),n}}var To=Gi(function(t,e,n){var i=1;if(n.length){var r=on(n,ns(To));i|=l}return Wr(t,i,e,n,r)}),ko=Gi(function(t,e,n){var i=3;if(n.length){var r=on(n,ns(ko));i|=l}return Wr(e,i,t,n,r)});function Ao(t,e,n){var i,o,a,l,c,u,h=0,d=!1,p=!1,f=!0;if("function"!=typeof t)throw new Ot(s);function g(e){var n=i,s=o;return i=o=r,h=e,l=t.apply(s,n)}function m(t){return h=t,c=Os(y,e),d?g(t):l}function b(t){var n=t-u;return u===r||n>=e||n<0||p&&t-h>=a}function y(){var t=Eo();if(b(t))return v(t);c=Os(y,function(t){var n=e-(t-u);return p?gn(n,a-(t-h)):n}(t))}function v(t){return c=r,f&&i?g(t):(i=o=r,l)}function _(){var t=Eo(),n=b(t);if(i=arguments,o=this,u=t,n){if(c===r)return m(u);if(p)return br(c),c=Os(y,e),g(u)}return c===r&&(c=Os(y,e)),l}return e=fa(e)||0,Zo(n)&&(d=!!n.leading,a=(p="maxWait"in n)?fn(fa(n.maxWait)||0,e):a,f="trailing"in n?!!n.trailing:f),_.cancel=function(){c!==r&&br(c),h=0,i=u=o=c=r},_.flush=function(){return c===r?l:v(Eo())},_}var Po=Gi(function(t,e){return oi(t,1,e)}),Mo=Gi(function(t,e,n){return oi(t,fa(e)||0,n)});function Io(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new Ot(s);var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],s=n.cache;if(s.has(r))return s.get(r);var o=t.apply(this,i);return n.cache=s.set(r,o)||s,o};return n.cache=new(Io.Cache||Hn),n}function Do(t){if("function"!=typeof t)throw new Ot(s);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Io.Cache=Hn;var Ro=gr(function(t,e){var n=(e=1==e.length&&Uo(e[0])?Ae(e[0],qe(is())):Ae(pi(e,1),qe(is()))).length;return Gi(function(i){for(var r=-1,s=gn(i.length,n);++r=e}),zo=Ti(function(){return arguments}())?Ti:function(t){return Jo(t)&&Mt.call(t,"callee")&&!$t.call(t,"callee")},Uo=i.isArray,Ho=ge?qe(ge):function(t){return Jo(t)&&wi(t)==P};function $o(t){return null!=t&&Qo(t.length)&&!Yo(t)}function Go(t){return Jo(t)&&$o(t)}var Wo=fe||fl,qo=me?qe(me):function(t){return Jo(t)&&wi(t)==b};function Xo(t){if(!Jo(t))return!1;var e=wi(t);return e==y||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!na(t)}function Yo(t){if(!Zo(t))return!1;var e=wi(t);return e==v||e==_||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Ko(t){return"number"==typeof t&&t==da(t)}function Qo(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=h}function Zo(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Jo(t){return null!=t&&"object"==typeof t}var ta=be?qe(be):function(t){return Jo(t)&&cs(t)==w};function ea(t){return"number"==typeof t||Jo(t)&&wi(t)==x}function na(t){if(!Jo(t)||wi(t)!=S)return!1;var e=Ut(t);if(null===e)return!0;var n=Mt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Pt.call(n)==Nt}var ia=ye?qe(ye):function(t){return Jo(t)&&wi(t)==C},ra=ve?qe(ve):function(t){return Jo(t)&&cs(t)==O};function sa(t){return"string"==typeof t||!Uo(t)&&Jo(t)&&wi(t)==T}function oa(t){return"symbol"==typeof t||Jo(t)&&wi(t)==k}var aa=_e?qe(_e):function(t){return Jo(t)&&Qo(t.length)&&!!ne[wi(t)]},la=zr(Di),ca=zr(function(t,e){return t<=e});function ua(t){if(!t)return[];if($o(t))return sa(t)?cn(t):Er(t);if(qt&&t[qt])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[qt]());var e=cs(t);return(e==w?rn:e==O?an:Fa)(t)}function ha(t){return t?(t=fa(t))===u||t===-u?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function da(t){var e=ha(t),n=e%1;return e==e?n?e-n:e:0}function pa(t){return t?ii(da(t),0,d):0}function fa(t){if("number"==typeof t)return t;if(oa(t))return NaN;if(Zo(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Zo(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=We(t);var n=pt.test(t);return n||gt.test(t)?oe(t.slice(2),n?2:8):dt.test(t)?NaN:+t}function ga(t){return Cr(t,Pa(t))}function ma(t){return null==t?"":rr(t)}var ba=Tr(function(t,e){if(ys(e)||$o(e))Cr(e,Aa(e),t);else for(var n in e)Mt.call(e,n)&&Qn(t,n,e[n])}),ya=Tr(function(t,e){Cr(e,Pa(e),t)}),va=Tr(function(t,e,n,i){Cr(e,Pa(e),t,i)}),_a=Tr(function(t,e,n,i){Cr(e,Aa(e),t,i)}),wa=Qr(ni),xa=Gi(function(t,e){t=St(t);var n=-1,i=e.length,s=i>2?e[2]:r;for(s&&fs(e[0],e[1],s)&&(i=1);++n1),e}),Cr(t,Jr(t),n),i&&(n=ri(n,7,Yr));for(var r=e.length;r--;)or(n,e[r]);return n}),Ra=Qr(function(t,e){return null==t?{}:function(t,e){return Vi(t,e,function(e,n){return Ca(t,n)})}(t,e)});function Na(t,e){if(null==t)return{};var n=Ae(Jr(t),function(t){return[t]});return e=is(e),Vi(t,n,function(t,n){return e(t,n[0])})}var La=Gr(Aa),ja=Gr(Pa);function Fa(t){return null==t?[]:Xe(t,Aa(t))}var Ba=Mr(function(t,e,n){return e=e.toLowerCase(),t+(n?Va(e):e)});function Va(t){return Xa(ma(t).toLowerCase())}function za(t){return(t=ma(t))&&t.replace(bt,Je).replace(Yt,"")}var Ua=Mr(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Ha=Mr(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),$a=Pr("toLowerCase"),Ga=Mr(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Wa=Mr(function(t,e,n){return t+(n?" ":"")+Xa(e)}),qa=Mr(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Xa=Pr("toUpperCase");function Ya(t,e,n){return t=ma(t),(e=n?r:e)===r?function(t){return Jt.test(t)}(t)?function(t){return t.match(Qt)||[]}(t):function(t){return t.match(at)||[]}(t):t.match(e)||[]}var Ka=Gi(function(t,e){try{return we(t,r,e)}catch(Is){return Xo(Is)?Is:new _t(Is)}}),Qa=Qr(function(t,e){return Se(e,function(e){e=Rs(e),ei(t,e,To(t[e],t))}),t});function Za(t){return function(){return t}}var Ja=Rr(),tl=Rr(!0);function el(t){return t}function nl(t){return Mi("function"==typeof t?t:ri(t,1))}var il=Gi(function(t,e){return function(n){return Oi(n,t,e)}}),rl=Gi(function(t,e){return function(n){return Oi(t,n,e)}});function sl(t,e,n){var i=Aa(e),r=yi(e,i);null==n&&(!Zo(e)||!r.length&&i.length)&&(n=e,e=t,t=this,r=yi(e,Aa(e)));var s=!(Zo(n)&&"chain"in n&&!n.chain),o=Yo(t);return Se(r,function(n){var i=e[n];t[n]=i,o&&(t.prototype[n]=function(){var e=this.__chain__;if(s||e){var n=t(this.__wrapped__),r=n.__actions__=Er(this.__actions__);return r.push({func:i,args:arguments,thisArg:t}),n.__chain__=e,n}return i.apply(t,Pe([this.value()],arguments))})}),t}function ol(){}var al=Fr(Ae),ll=Fr(Ce),cl=Fr(De);function ul(t){return gs(t)?ze(Rs(t)):function(t){return function(e){return vi(e,t)}}(t)}var hl=Vr(),dl=Vr(!0);function pl(){return[]}function fl(){return!1}var gl=jr(function(t,e){return t+e},0),ml=Hr("ceil"),bl=jr(function(t,e){return t/e},1),yl=Hr("floor"),vl=jr(function(t,e){return t*e},1),_l=Hr("round"),wl=jr(function(t,e){return t-e},0);return Ln.after=function(t,e){if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){if(--t<1)return e.apply(this,arguments)}},Ln.ary=Co,Ln.assign=ba,Ln.assignIn=ya,Ln.assignInWith=va,Ln.assignWith=_a,Ln.at=wa,Ln.before=Oo,Ln.bind=To,Ln.bindAll=Qa,Ln.bindKey=ko,Ln.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Uo(t)?t:[t]},Ln.chain=co,Ln.chunk=function(t,e,n){e=(n?fs(t,e,n):e===r)?1:fn(da(e),0);var s=null==t?0:t.length;if(!s||e<1)return[];for(var o=0,a=0,l=i(ue(s/e));os?0:s+n),(i=i===r||i>s?s:da(i))<0&&(i+=s),i=n>i?0:pa(i);n>>0)?(t=ma(t))&&("string"==typeof e||null!=e&&!ia(e))&&!(e=rr(e))&&nn(t)?mr(cn(t),0,n):t.split(e,n):[]},Ln.spread=function(t,e){if("function"!=typeof t)throw new Ot(s);return e=null==e?0:fn(da(e),0),Gi(function(n){var i=n[e],r=mr(n,0,e);return i&&Pe(r,i),we(t,this,r)})},Ln.tail=function(t){var e=null==t?0:t.length;return e?Zi(t,1,e):[]},Ln.take=function(t,e,n){return t&&t.length?Zi(t,0,(e=n||e===r?1:da(e))<0?0:e):[]},Ln.takeRight=function(t,e,n){var i=null==t?0:t.length;return i?Zi(t,(e=i-(e=n||e===r?1:da(e)))<0?0:e,i):[]},Ln.takeRightWhile=function(t,e){return t&&t.length?lr(t,is(e,3),!1,!0):[]},Ln.takeWhile=function(t,e){return t&&t.length?lr(t,is(e,3)):[]},Ln.tap=function(t,e){return e(t),t},Ln.throttle=function(t,e,n){var i=!0,r=!0;if("function"!=typeof t)throw new Ot(s);return Zo(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Ao(t,e,{leading:i,maxWait:e,trailing:r})},Ln.thru=uo,Ln.toArray=ua,Ln.toPairs=La,Ln.toPairsIn=ja,Ln.toPath=function(t){return Uo(t)?Ae(t,Rs):oa(t)?[t]:Er(Ds(ma(t)))},Ln.toPlainObject=ga,Ln.transform=function(t,e,n){var i=Uo(t),r=i||Wo(t)||aa(t);if(e=is(e,4),null==n){var s=t&&t.constructor;n=r?i?new s:[]:Zo(t)&&Yo(s)?jn(Ut(t)):{}}return(r?Se:mi)(t,function(t,i,r){return e(n,t,i,r)}),n},Ln.unary=function(t){return Co(t,1)},Ln.union=Zs,Ln.unionBy=Js,Ln.unionWith=to,Ln.uniq=function(t){return t&&t.length?sr(t):[]},Ln.uniqBy=function(t,e){return t&&t.length?sr(t,is(e,2)):[]},Ln.uniqWith=function(t,e){return e="function"==typeof e?e:r,t&&t.length?sr(t,r,e):[]},Ln.unset=function(t,e){return null==t||or(t,e)},Ln.unzip=eo,Ln.unzipWith=no,Ln.update=function(t,e,n){return null==t?t:ar(t,e,pr(n))},Ln.updateWith=function(t,e,n,i){return i="function"==typeof i?i:r,null==t?t:ar(t,e,pr(n),i)},Ln.values=Fa,Ln.valuesIn=function(t){return null==t?[]:Xe(t,Pa(t))},Ln.without=io,Ln.words=Ya,Ln.wrap=function(t,e){return No(pr(e),t)},Ln.xor=ro,Ln.xorBy=so,Ln.xorWith=oo,Ln.zip=ao,Ln.zipObject=function(t,e){return hr(t||[],e||[],Qn)},Ln.zipObjectDeep=function(t,e){return hr(t||[],e||[],Xi)},Ln.zipWith=lo,Ln.entries=La,Ln.entriesIn=ja,Ln.extend=ya,Ln.extendWith=va,sl(Ln,Ln),Ln.add=gl,Ln.attempt=Ka,Ln.camelCase=Ba,Ln.capitalize=Va,Ln.ceil=ml,Ln.clamp=function(t,e,n){return n===r&&(n=e,e=r),n!==r&&(n=(n=fa(n))==n?n:0),e!==r&&(e=(e=fa(e))==e?e:0),ii(fa(t),e,n)},Ln.clone=function(t){return ri(t,4)},Ln.cloneDeep=function(t){return ri(t,5)},Ln.cloneDeepWith=function(t,e){return ri(t,5,e="function"==typeof e?e:r)},Ln.cloneWith=function(t,e){return ri(t,4,e="function"==typeof e?e:r)},Ln.conformsTo=function(t,e){return null==e||si(t,e,Aa(e))},Ln.deburr=za,Ln.defaultTo=function(t,e){return null==t||t!=t?e:t},Ln.divide=bl,Ln.endsWith=function(t,e,n){t=ma(t),e=rr(e);var i=t.length,s=n=n===r?i:ii(da(n),0,i);return(n-=e.length)>=0&&t.slice(n,s)==e},Ln.eq=Fo,Ln.escape=function(t){return(t=ma(t))&&q.test(t)?t.replace(G,tn):t},Ln.escapeRegExp=function(t){return(t=ma(t))&&et.test(t)?t.replace(tt,"\\$&"):t},Ln.every=function(t,e,n){var i=Uo(t)?Ce:ui;return n&&fs(t,e,n)&&(e=r),i(t,is(e,3))},Ln.find=fo,Ln.findIndex=Vs,Ln.findKey=function(t,e){return Ne(t,is(e,3),mi)},Ln.findLast=go,Ln.findLastIndex=zs,Ln.findLastKey=function(t,e){return Ne(t,is(e,3),bi)},Ln.floor=yl,Ln.forEach=mo,Ln.forEachRight=bo,Ln.forIn=function(t,e){return null==t?t:fi(t,is(e,3),Pa)},Ln.forInRight=function(t,e){return null==t?t:gi(t,is(e,3),Pa)},Ln.forOwn=function(t,e){return t&&mi(t,is(e,3))},Ln.forOwnRight=function(t,e){return t&&bi(t,is(e,3))},Ln.get=Ea,Ln.gt=Bo,Ln.gte=Vo,Ln.has=function(t,e){return null!=t&&us(t,e,Si)},Ln.hasIn=Ca,Ln.head=Hs,Ln.identity=el,Ln.includes=function(t,e,n,i){t=$o(t)?t:Fa(t),n=n&&!i?da(n):0;var r=t.length;return n<0&&(n=fn(r+n,0)),sa(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&je(t,e,n)>-1},Ln.indexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=null==n?0:da(n);return r<0&&(r=fn(i+r,0)),je(t,e,r)},Ln.inRange=function(t,e,n){return e=ha(e),n===r?(n=e,e=0):n=ha(n),function(t,e,n){return t>=gn(e,n)&&t=-h&&t<=h},Ln.isSet=ra,Ln.isString=sa,Ln.isSymbol=oa,Ln.isTypedArray=aa,Ln.isUndefined=function(t){return t===r},Ln.isWeakMap=function(t){return Jo(t)&&cs(t)==A},Ln.isWeakSet=function(t){return Jo(t)&&"[object WeakSet]"==wi(t)},Ln.join=function(t,e){return null==t?"":Ue.call(t,e)},Ln.kebabCase=Ua,Ln.last=qs,Ln.lastIndexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var s=i;return n!==r&&(s=(s=da(n))<0?fn(i+s,0):gn(s,i-1)),e==e?function(t,e,n){for(var i=n+1;i--;)if(t[i]===e)return i;return i}(t,e,s):Le(t,Be,s,!0)},Ln.lowerCase=Ha,Ln.lowerFirst=$a,Ln.lt=la,Ln.lte=ca,Ln.max=function(t){return t&&t.length?hi(t,el,xi):r},Ln.maxBy=function(t,e){return t&&t.length?hi(t,is(e,2),xi):r},Ln.mean=function(t){return Ve(t,el)},Ln.meanBy=function(t,e){return Ve(t,is(e,2))},Ln.min=function(t){return t&&t.length?hi(t,el,Di):r},Ln.minBy=function(t,e){return t&&t.length?hi(t,is(e,2),Di):r},Ln.stubArray=pl,Ln.stubFalse=fl,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=vl,Ln.nth=function(t,e){return t&&t.length?Fi(t,da(e)):r},Ln.noConflict=function(){return ce._===this&&(ce._=Lt),this},Ln.noop=ol,Ln.now=Eo,Ln.pad=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;if(!e||i>=e)return t;var r=(e-i)/2;return Br(he(r),n)+t+Br(ue(r),n)},Ln.padEnd=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;return e&&ie){var i=t;t=e,e=i}if(n||t%1||e%1){var s=yn();return gn(t+s*(e-t+se("1e-"+((s+"").length-1))),e)}return Hi(t,e)},Ln.reduce=function(t,e,n){var i=Uo(t)?Me:He,r=arguments.length<3;return i(t,is(e,4),n,r,li)},Ln.reduceRight=function(t,e,n){var i=Uo(t)?Ie:He,r=arguments.length<3;return i(t,is(e,4),n,r,ci)},Ln.repeat=function(t,e,n){return e=(n?fs(t,e,n):e===r)?1:da(e),$i(ma(t),e)},Ln.replace=function(){var t=arguments,e=ma(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Ln.result=function(t,e,n){var i=-1,s=(e=fr(e,t)).length;for(s||(s=1,t=r);++ih)return[];var n=d,i=gn(t,d);e=is(e),t-=d;for(var r=Ge(i,e);++n=o)return t;var l=n-ln(i);if(l<1)return i;var c=a?mr(a,0,l).join(""):t.slice(0,l);if(s===r)return c+i;if(a&&(l+=c.length-l),ia(s)){if(t.slice(l).search(s)){var u,h=c;for(s.global||(s=Et(s.source,ma(ht.exec(s))+"g")),s.lastIndex=0;u=s.exec(h);)var d=u.index;c=c.slice(0,d===r?l:d)}}else if(t.indexOf(rr(s),l)!=l){var p=c.lastIndexOf(s);p>-1&&(c=c.slice(0,p))}return c+i},Ln.unescape=function(t){return(t=ma(t))&&W.test(t)?t.replace($,hn):t},Ln.uniqueId=function(t){var e=++It;return ma(t)+e},Ln.upperCase=qa,Ln.upperFirst=Xa,Ln.each=mo,Ln.eachRight=bo,Ln.first=Hs,sl(Ln,function(){var t={};return mi(Ln,function(e,n){Mt.call(Ln.prototype,n)||(t[n]=e)}),t}(),{chain:!1}),Ln.VERSION="4.17.21",Se(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){Ln[t].placeholder=Ln}),Se(["drop","take"],function(t,e){Vn.prototype[t]=function(n){n=n===r?1:fn(da(n),0);var i=this.__filtered__&&!e?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=gn(n,i.__takeCount__):i.__views__.push({size:gn(n,d),type:t+(i.__dir__<0?"Right":"")}),i},Vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Se(["filter","map","takeWhile"],function(t,e){var n=e+1,i=1==n||3==n;Vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:is(t,3),type:n}),e.__filtered__=e.__filtered__||i,e}}),Se(["head","last"],function(t,e){var n="take"+(e?"Right":"");Vn.prototype[t]=function(){return this[n](1).value()[0]}}),Se(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");Vn.prototype[t]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(el)},Vn.prototype.find=function(t){return this.filter(t).head()},Vn.prototype.findLast=function(t){return this.reverse().find(t)},Vn.prototype.invokeMap=Gi(function(t,e){return"function"==typeof t?new Vn(this):this.map(function(n){return Oi(n,t,e)})}),Vn.prototype.reject=function(t){return this.filter(Do(is(t)))},Vn.prototype.slice=function(t,e){t=da(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Vn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==r&&(n=(e=da(e))<0?n.dropRight(-e):n.take(e-t)),n)},Vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Vn.prototype.toArray=function(){return this.take(d)},mi(Vn.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),s=Ln[i?"take"+("last"==e?"Right":""):e],o=i||/^find/.test(e);!s||(Ln.prototype[e]=function(){var e=this.__wrapped__,a=i?[1]:arguments,l=e instanceof Vn,c=a[0],u=l||Uo(e),h=function(t){var e=s.apply(Ln,Pe([t],a));return i&&d?e[0]:e};u&&n&&"function"==typeof c&&1!=c.length&&(l=u=!1);var d=this.__chain__,p=!!this.__actions__.length,f=o&&!d,g=l&&!p;if(!o&&u){e=g?e:new Vn(this);var m=t.apply(e,a);return m.__actions__.push({func:uo,args:[h],thisArg:r}),new Bn(m,d)}return f&&g?t.apply(this,a):(m=this.thru(h),f?i?m.value()[0]:m.value():m)})}),Se(["pop","push","shift","sort","splice","unshift"],function(t){var e=Tt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);Ln.prototype[t]=function(){var t=arguments;if(i&&!this.__chain__){var r=this.value();return e.apply(Uo(r)?r:[],t)}return this[n](function(n){return e.apply(Uo(n)?n:[],t)})}}),mi(Vn.prototype,function(t,e){var n=Ln[e];if(n){var i=n.name+"";Mt.call(Tn,i)||(Tn[i]=[]),Tn[i].push({name:e,func:n})}}),Tn[Nr(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var t=new Vn(this.__wrapped__);return t.__actions__=Er(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Er(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Er(this.__views__),t},Vn.prototype.reverse=function(){if(this.__filtered__){var t=new Vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Uo(t),i=e<0,r=n?t.length:0,s=function(t,e,n){for(var i=-1,r=n.length;++i=this.__values__.length;return{done:t,value:t?r:this.__values__[this.__index__++]}},Ln.prototype.plant=function(t){for(var e,n=this;n instanceof Fn;){var i=Ls(n);i.__index__=0,i.__values__=r,e?s.__wrapped__=i:e=i;var s=i;n=n.__wrapped__}return s.__wrapped__=t,e},Ln.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Vn){var e=t;return this.__actions__.length&&(e=new Vn(this)),(e=e.reverse()).__actions__.push({func:uo,args:[Qs],thisArg:r}),new Bn(e,this.__chain__)}return this.thru(Qs)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return cr(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,qt&&(Ln.prototype[qt]=function(){return this}),Ln}();ce._=dn,(i=(function(){return dn}).call(e,n,e,t))!==r&&(t.exports=i)}).call(this)},5478:function(t){t.exports=function(){"use strict";function t(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,i=new Array(e);n=t.length?{done:!0}:{done:!1,value:t[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i={exports:{}};function r(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}i.exports={defaults:{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:r,changeDefaults:function(t){i.exports.defaults=t}};var s=/[&<>"']/,o=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,l=/[<>"']|&(?!#?\w+;)/g,c={"&":"&","<":"<",">":">",'"':""","'":"'"},u=function(t){return c[t]};var h=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function d(t){return t.replace(h,function(t,e){return"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""})}var p=/(^|[^\[])\^/g;var f=/[^\w:]/g,g=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var m={},b=/^[^:]+:\/*[^/]*$/,y=/^([^:]+:)[\s\S]*$/,v=/^([^:]+:\/*[^/]*)[\s\S]*$/;function _(t,e){m[" "+t]||(m[" "+t]=b.test(t)?t+"/":w(t,"/",!0));var n=-1===(t=m[" "+t]).indexOf(":");return"//"===e.substring(0,2)?n?e:t.replace(y,"$1")+e:"/"===e.charAt(0)?n?e:t.replace(v,"$1")+e:t+e}function w(t,e,n){var i=t.length;if(0===i)return"";for(var r=0;r1;)1&e&&(n+=t),e>>=1,t+=t;return n+t},P=i.exports.defaults,M=w,I=function(t,e){var n=t.replace(/\|/g,function(t,e,n){for(var i=!1,r=e;--r>=0&&"\\"===n[r];)i=!i;return i?"|":" |"}).split(/ \|/),i=0;if(n.length>e)n.splice(e);else for(;n.length1?{type:"space",raw:e[0]}:{raw:"\n"}},e.code=function(t){var e=this.rules.block.code.exec(t);if(e){var n=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:M(n,"\n")}}},e.fences=function(t){var e=this.rules.block.fences.exec(t);if(e){var n=e[0],i=function(t,e){var n=t.match(/^(\s+)(?:```)/);if(null===n)return e;var i=n[1];return e.split("\n").map(function(t){var e=t.match(/^\s+/);return null===e?t:e[0].length>=i.length?t.slice(i.length):t}).join("\n")}(n,e[3]||"");return{type:"code",raw:n,lang:e[2]?e[2].trim():e[2],text:i}}},e.heading=function(t){var e=this.rules.block.heading.exec(t);if(e){var n=e[2].trim();if(/#$/.test(n)){var i=M(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n}}},e.nptable=function(t){var e=this.rules.block.nptable.exec(t);if(e){var n={type:"table",header:I(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[],raw:e[0]};if(n.header.length===n.align.length){var i,r=n.align.length;for(i=0;i ?/gm,"");return{type:"blockquote",raw:e[0],text:n}}},e.list=function(t){var e=this.rules.block.list.exec(t);if(e){var n,i,r,s,o,a,l,c,u,h=e[0],d=e[2],p=d.length>1,f={type:"list",raw:h,ordered:p,start:p?+d.slice(0,-1):"",loose:!1,items:[]},g=e[0].match(this.rules.block.item),m=!1,b=g.length;r=this.rules.block.listItemStart.exec(g[0]);for(var y=0;yr[1].length:s[1].length>=r[0].length||s[1].length>3){g.splice(y,2,g[y]+(!this.options.pedantic&&s[1].length/i.test(i[0])&&(e=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:i[0],inLink:e,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):D(i[0]):i[0]}},e.link=function(t){var e=this.rules.inline.link.exec(t);if(e){var n=e[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;var i=M(n.slice(0,-1),"\\");if((n.length-i.length)%2==0)return}else{var r=R(e[2],"()");if(r>-1){var s=(0===e[0].indexOf("!")?5:4)+e[1].length+r;e[2]=e[2].substring(0,r),e[0]=e[0].substring(0,s).trim(),e[3]=""}}var o=e[2],a="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);l&&(o=l[1],a=l[3])}else a=e[3]?e[3].slice(1,-1):"";return o=o.trim(),/^$/.test(n)?o.slice(1):o.slice(1,-1)),N(e,{href:o&&o.replace(this.rules.inline._escapes,"$1"),title:a&&a.replace(this.rules.inline._escapes,"$1")},e[0])}},e.reflink=function(t,e){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var i=(n[2]||n[1]).replace(/\s+/g," ");if(!(i=e[i.toLowerCase()])||!i.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return N(n,i,n[0])}},e.emStrong=function(t,e,n){void 0===n&&(n="");var i=this.rules.inline.emStrong.lDelim.exec(t);if(i&&(!i[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var r=i[1]||i[2]||"";if(!r||r&&(""===n||this.rules.inline.punctuation.exec(n))){var s,o,a=i[0].length-1,l=a,c=0,u="*"===i[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(u.lastIndex=0,e=e.slice(-1*t.length+a);null!=(i=u.exec(e));)if(s=i[1]||i[2]||i[3]||i[4]||i[5]||i[6]){if(o=s.length,i[3]||i[4]){l+=o;continue}if((i[5]||i[6])&&a%3&&!((a+o)%3)){c+=o;continue}if(!((l-=o)>0))return o=Math.min(o,o+l+c),Math.min(a,o)%2?{type:"em",raw:t.slice(0,a+i.index+o+1),text:t.slice(1,a+i.index+o)}:{type:"strong",raw:t.slice(0,a+i.index+o+1),text:t.slice(2,a+i.index+o-1)}}}}},e.codespan=function(t){var e=this.rules.inline.code.exec(t);if(e){var n=e[2].replace(/\n/g," "),i=/[^ ]/.test(n),r=/^ /.test(n)&&/ $/.test(n);return i&&r&&(n=n.substring(1,n.length-1)),n=D(n,!0),{type:"codespan",raw:e[0],text:n}}},e.br=function(t){var e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}},e.del=function(t){var e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2]}},e.autolink=function(t,e){var n,i,r=this.rules.inline.autolink.exec(t);if(r)return i="@"===r[2]?"mailto:"+(n=D(this.options.mangle?e(r[1]):r[1])):n=D(r[1]),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}},e.url=function(t,e){var n;if(n=this.rules.inline.url.exec(t)){var i,r;if("@"===n[2])r="mailto:"+(i=D(this.options.mangle?e(n[0]):n[0]));else{var s;do{s=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(s!==n[0]);i=D(n[0]),r="www."===n[1]?"http://"+i:i}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}},e.inlineText=function(t,e,n){var i,r=this.rules.inline.text.exec(t);if(r)return i=e?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):D(r[0]):r[0]:D(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:i}},t}(),j=O,F=E,B=T,V={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:j,table:j,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};V.def=F(V.def).replace("label",V._label).replace("title",V._title).getRegex(),V.bullet=/(?:[*+-]|\d{1,9}[.)])/,V.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,V.item=F(V.item,"gm").replace(/bull/g,V.bullet).getRegex(),V.listItemStart=F(/^( *)(bull) */).replace("bull",V.bullet).getRegex(),V.list=F(V.list).replace(/bull/g,V.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+V.def.source+")").getRegex(),V._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",V._comment=/|$)/,V.html=F(V.html,"i").replace("comment",V._comment).replace("tag",V._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),V.paragraph=F(V._paragraph).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.blockquote=F(V.blockquote).replace("paragraph",V.paragraph).getRegex(),V.normal=B({},V),V.gfm=B({},V.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),V.gfm.nptable=F(V.gfm.nptable).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.gfm.table=F(V.gfm.table).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.pedantic=B({},V.normal,{html:F("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",V._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:j,paragraph:F(V.normal._paragraph).replace("hr",V.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",V.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var z={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:j,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:j,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"};z.punctuation=F(z.punctuation).replace(/punctuation/g,z._punctuation).getRegex(),z.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,z.escapedEmSt=/\\\*|\\_/g,z._comment=F(V._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),z.emStrong.lDelim=F(z.emStrong.lDelim).replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimAst=F(z.emStrong.rDelimAst,"g").replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimUnd=F(z.emStrong.rDelimUnd,"g").replace(/punct/g,z._punctuation).getRegex(),z._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,z._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,z._email=/[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])?)+(?![-_])/,z.autolink=F(z.autolink).replace("scheme",z._scheme).replace("email",z._email).getRegex(),z._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,z.tag=F(z.tag).replace("comment",z._comment).replace("attribute",z._attribute).getRegex(),z._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,z._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,z._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,z.link=F(z.link).replace("label",z._label).replace("href",z._href).replace("title",z._title).getRegex(),z.reflink=F(z.reflink).replace("label",z._label).getRegex(),z.reflinkSearch=F(z.reflinkSearch,"g").replace("reflink",z.reflink).replace("nolink",z.nolink).getRegex(),z.normal=B({},z),z.pedantic=B({},z.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:F(/^!?\[(label)\]\((.*?)\)/).replace("label",z._label).getRegex(),reflink:F(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",z._label).getRegex()}),z.gfm=B({},z.normal,{escape:F(z.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(n="x"+n.toString(16)),i+="&#"+n+";";return i}var K=function(){function e(t){this.tokens=[],this.tokens.links=Object.create(null),this.options=t||$,this.options.tokenizer=this.options.tokenizer||new H,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var e={block:G.normal,inline:W.normal};this.options.pedantic?(e.block=G.pedantic,e.inline=W.pedantic):this.options.gfm&&(e.block=G.gfm,e.inline=this.options.breaks?W.breaks:W.gfm),this.tokenizer.rules=e}e.lex=function(t,n){return new e(n).lex(t)},e.lexInline=function(t,n){return new e(n).inlineTokens(t)};var n=e.prototype;return n.lex=function(t){return t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(t,this.tokens,!0),this.inline(this.tokens),this.tokens},n.blockTokens=function(t,e,n){var i,r,s,o,a,l,c=this;for(void 0===e&&(e=[]),void 0===n&&(n=!0),this.options.pedantic&&(t=t.replace(/^ +$/gm,""));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(n){return!!(i=n.call(c,t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)}))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),i.type&&e.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.nptable(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),i.tokens=this.blockTokens(i.text,[],n),e.push(i);continue}if(i=this.tokenizer.list(t)){for(t=t.substring(i.raw.length),s=i.items.length,r=0;r=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),n&&(i=this.tokenizer.paragraph(a))){o=e[e.length-1],l&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i),l=a.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"text"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(t){var u="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(u);break}throw new Error(u)}}return e},n.inline=function(t){var e,n,i,r,s,o,a=t.length;for(e=0;e0)for(;null!=(l=this.tokenizer.rules.inline.reflinkSearch.exec(h));)d.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(l=this.tokenizer.rules.inline.blockSkip.exec(h));)h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(l=this.tokenizer.rules.inline.escapedEmSt.exec(h));)h=h.slice(0,l.index)+"++"+h.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;t;)if(c||(u=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(n){return!!(s=n.call(r,t,e))&&(t=t.substring(s.raw.length),e.push(s),!0)}))){if(s=this.tokenizer.escape(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.tag(t,n,i)){t=t.substring(s.raw.length),n=s.inLink,i=s.inRawBlock,(o=e[e.length-1])&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.link(t)){t=t.substring(s.raw.length),"link"===s.type&&(s.tokens=this.inlineTokens(s.text,[],!0,i)),e.push(s);continue}if(s=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(s.raw.length),o=e[e.length-1],"link"===s.type?(s.tokens=this.inlineTokens(s.text,[],!0,i),e.push(s)):o&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.emStrong(t,h,u)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.codespan(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.br(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.del(t)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.autolink(t,Y)){t=t.substring(s.raw.length),e.push(s);continue}if(!n&&(s=this.tokenizer.url(t,Y))){t=t.substring(s.raw.length),e.push(s);continue}if(a=t,this.options.extensions&&this.options.extensions.startInline&&function(){var e=1/0,n=t.slice(1),i=void 0;r.options.extensions.startInline.forEach(function(t){"number"==typeof(i=t.call(this,n))&&i>=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),s=this.tokenizer.inlineText(a,i,X)){t=t.substring(s.raw.length),"_"!==s.raw.slice(-1)&&(u=s.raw.slice(-1)),c=!0,(o=e[e.length-1])&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(t){var p="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(p);break}throw new Error(p)}}return e},function(e,n,i){n&&t(e.prototype,n),i&&t(e,i)}(e,null,[{key:"rules",get:function(){return{block:G,inline:W}}}]),e}(),Q=i.exports.defaults,Z=C,J=x,tt=function(){function t(t){this.options=t||Q}var e=t.prototype;return e.code=function(t,e,n){var i=(e||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(t,i);null!=r&&r!==t&&(n=!0,t=r)}return t=t.replace(/\n$/,"")+"\n",i?'
'+(n?t:J(t,!0))+"
\n":"
"+(n?t:J(t,!0))+"
\n"},e.blockquote=function(t){return"
\n"+t+"
\n"},e.html=function(t){return t},e.heading=function(t,e,n,i){return this.options.headerIds?"'+t+"\n":""+t+"\n"},e.hr=function(){return this.options.xhtml?"
\n":"
\n"},e.list=function(t,e,n){var i=e?"ol":"ul";return"<"+i+(e&&1!==n?' start="'+n+'"':"")+">\n"+t+"\n"},e.listitem=function(t){return"
  • "+t+"
  • \n"},e.checkbox=function(t){return" "},e.paragraph=function(t){return"

    "+t+"

    \n"},e.table=function(t,e){return e&&(e="

    "+e+""),"
    - Default value : 'https://gtexportal.org/rest/v1/dataset/tissueInfo?datasetId=gtex_v8&format=json' + Default value : 'https://gtexportal.org/api/v2/tissueSiteDetail'
    \n\n"+t+"\n"+e+"
    \n"},e.tablerow=function(t){return"\n"+t+"\n"},e.tablecell=function(t,e){var n=e.header?"th":"td";return(e.align?"<"+n+' align="'+e.align+'">':"<"+n+">")+t+"\n"},e.strong=function(t){return""+t+""},e.em=function(t){return""+t+""},e.codespan=function(t){return""+t+""},e.br=function(){return this.options.xhtml?"
    ":"
    "},e.del=function(t){return""+t+""},e.link=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i='"+n+""},e.image=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i=''+n+'":">")},e.text=function(t){return t},t}(),et=function(){function t(){}var e=t.prototype;return e.strong=function(t){return t},e.em=function(t){return t},e.codespan=function(t){return t},e.del=function(t){return t},e.html=function(t){return t},e.text=function(t){return t},e.link=function(t,e,n){return""+n},e.image=function(t,e,n){return""+n},e.br=function(){return""},t}(),nt=function(){function t(){this.seen={}}var e=t.prototype;return e.serialize=function(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},e.getNextSafeSlug=function(t,e){var n=t,i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[t];do{n=t+"-"+ ++i}while(this.seen.hasOwnProperty(n))}return e||(this.seen[t]=i,this.seen[n]=0),n},e.slug=function(t,e){void 0===e&&(e={});var n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)},t}(),it=tt,rt=et,st=nt,ot=i.exports.defaults,at=S,lt=K,ct=function(){function t(t){this.options=t||ot,this.options.renderer=this.options.renderer||new it,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new rt,this.slugger=new st}t.parse=function(e,n){return new t(n).parse(e)},t.parseInline=function(e,n){return new t(n).parseInline(e)};var e=t.prototype;return e.parse=function(t,e){void 0===e&&(e=!0);var n,i,r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w="",x=t.length;for(n=0;n0&&"text"===m.tokens[0].type?(m.tokens[0].text=v+" "+m.tokens[0].text,m.tokens[0].tokens&&m.tokens[0].tokens.length>0&&"text"===m.tokens[0].tokens[0].type&&(m.tokens[0].tokens[0].text=v+" "+m.tokens[0].tokens[0].text)):m.tokens.unshift({type:"text",text:v}):g+=v),g+=this.parse(m.tokens,f),u+=this.renderer.listitem(g,y,b);w+=this.renderer.list(u,d,p);continue;case"html":w+=this.renderer.html(h.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(h.tokens));continue;case"text":for(u=h.tokens?this.parseInline(h.tokens):h.text;n+1An error occurred:

    "+mt(l.message+"",!0)+"
    ";throw l}}return _t.options=_t.setOptions=function(t){return ft(_t.defaults,t),yt(_t.defaults),_t},_t.getDefaults=bt,_t.defaults=vt,_t.use=function(){for(var t=this,e=arguments.length,n=new Array(e),i=0;iAn error occurred:

    "+mt(i.message+"",!0)+"
    ";throw i}},_t.Parser=ct,_t.parser=ct.parse,_t.Renderer=ht,_t.TextRenderer=dt,_t.Lexer=lt,_t.lexer=lt.lex,_t.Tokenizer=ut,_t.Slugger=pt,_t.parse=_t,_t}()},29369:function(t,e,n){var i=n(56284),r=n(67830);function s(){this.clear()}s.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},s.prototype.enqueue=function(t){return this.items.push(t),++this.size},s.prototype.dequeue=function(){if(this.size){var t=this.items[this.offset];return 2*++this.offset>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,t}},s.prototype.peek=function(){if(this.size)return this.items[this.offset]},s.prototype.forEach=function(t,e){e=arguments.length>1?e:this;for(var n=this.offset,i=0,r=this.items.length;n=t.length)return{done:!0};var n=t[e];return e++,{value:n,done:!1}})},s.prototype.entries=function(){var t=this.items,e=this.offset,n=0;return new i(function(){if(e>=t.length)return{done:!0};var i=t[e];return e++,{value:[n++,i],done:!1}})},"undefined"!=typeof Symbol&&(s.prototype[Symbol.iterator]=s.prototype.values),s.prototype.toString=function(){return this.toArray().join(",")},s.prototype.toJSON=function(){return this.toArray()},s.prototype.inspect=function(){var t=this.toArray();return Object.defineProperty(t,"constructor",{value:s,enumerable:!1}),t},"undefined"!=typeof Symbol&&(s.prototype[Symbol.for("nodejs.util.inspect.custom")]=s.prototype.inspect),s.from=function(t){var e=new s;return r(t,function(t){e.enqueue(t)}),e},s.of=function(){return s.from(arguments)},t.exports=s},65593:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=function(t){function e(){t.apply(this,arguments),this.value=null,this.hasNext=!1,this.hasCompleted=!1}return i(e,t),e.prototype._subscribe=function(e){return this.hasError?(e.error(this.thrownError),s.Subscription.EMPTY):this.hasCompleted&&this.hasNext?(e.next(this.value),e.complete(),s.Subscription.EMPTY):t.prototype._subscribe.call(this,e)},e.prototype.next=function(t){this.hasCompleted||(this.value=t,this.hasNext=!0)},e.prototype.error=function(e){this.hasCompleted||t.prototype.error.call(this,e)},e.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&t.prototype.next.call(this,this.value),t.prototype.complete.call(this)},e}(r.Subject);e.AsyncSubject=o},73907:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(6594),o=function(t){function e(e){t.call(this),this._value=e}return i(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var n=t.prototype._subscribe.call(this,e);return n&&!n.closed&&e.next(this._value),n},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new s.ObjectUnsubscribedError;return this._value},e.prototype.next=function(e){t.prototype.next.call(this,this._value=e)},e}(r.Subject);e.BehaviorSubject=o},36888:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n,i){t.call(this),this.parent=e,this.outerValue=n,this.outerIndex=i,this.index=0}return i(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(n(42109).Subscriber);e.InnerSubscriber=r},94429:function(t,e,n){"use strict";var i=n(18705),r=function(){function t(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}},t.prototype.accept=function(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)},t.prototype.toObservable=function(){switch(this.kind){case"N":return i.Observable.of(this.value);case"E":return i.Observable.throw(this.error);case"C":return i.Observable.empty()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}();e.Notification=r},18705:function(t,e,n){"use strict";var i=n(80019),r=n(18154),s=n(45783),o=n(10142),a=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var i=this.operator,s=r.toSubscriber(t,e,n);if(i?i.call(s,this.source):s.add(this.source||!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){t.syncErrorThrown=!0,t.syncErrorValue=e,t.error(e)}},t.prototype.forEach=function(t,e){var n=this;if(e||(i.root.Rx&&i.root.Rx.config&&i.root.Rx.config.Promise?e=i.root.Rx.config.Promise:i.root.Promise&&(e=i.root.Promise)),!e)throw new Error("no Promise impl found");return new e(function(e,i){var r;r=n.subscribe(function(e){if(r)try{t(e)}catch(n){i(n),r.unsubscribe()}else t(e)},i,e)})},t.prototype._subscribe=function(t){return this.source.subscribe(t)},t.prototype[s.observable]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;ee&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i},e}(r.Subject);e.ReplaySubject=u;var h=function(t,e){this.time=t,this.value=e}},25430:function(t,e,n){"use strict";var i=n(2369);e.xQ=i.Subject,n(18705),n(24769),n(95914),n(88007),n(3194),n(61898),n(16301),n(23276),n(66593),n(13745),n(57362),n(24518),n(68789),n(30520),n(67370),n(86866),n(11505),n(5031),n(36780),n(17038),n(15718),n(27915),n(90763),n(6846),n(65662),n(6799),n(81854),n(612),n(10838),n(6725),n(8827),n(43511),n(38922),n(25178),n(56937),n(22947),n(82894),n(11206),n(94183),n(16653),n(17930),n(81118),n(50317),n(90674),n(66460),n(79232),n(3945),n(44674),n(73505),n(38749),n(16479),n(22744),n(44475),n(97384),n(8237),n(24937),n(99013),n(84042),n(44436),n(7099),n(6217),n(57476),n(72646),n(91573),n(27387),n(27366),n(88859),n(65425),n(16733),n(23381),n(80404),n(63770),n(53626),n(98851),n(84878),n(26544),n(53582),n(61749),n(34838),n(49681),n(46227),n(56455),n(40881),n(94315),n(92910),n(52442),n(84664),n(61250),n(28310),n(43027),n(18252),n(49571),n(31782),n(9800),n(41854),n(74839),n(1305),n(99144),n(89952),n(85863),n(2865),n(92667),n(22185),n(72919),n(88630),n(75458),n(40780),n(35099),n(57502),n(81676),n(20579),n(71323),n(84950),n(57113),n(95073),n(75654),n(59889),n(96611),n(81845),n(7828),n(4881),n(74568),n(32352),n(50169),n(93543),n(61690),n(15914),n(68583),n(44808),n(49088),n(72293),n(42109),n(65593),n(81959),n(73907),n(51493),n(94429),n(44640),n(11758),n(6594),n(13815),n(84536),n(73390),n(62688),n(24482),n(18353);n(55298);n(10142);n(85522),n(90680),n(97088),n(12948),n(28592),n(72121),n(45783);n(39053)},11965:function(t,e){"use strict";var n=function(){function t(e,n){void 0===n&&(n=t.now),this.SchedulerAction=e,this.now=n}return t.prototype.schedule=function(t,e,n){return void 0===e&&(e=0),new this.SchedulerAction(this,t).schedule(n,e)},t.now=Date.now?Date.now:function(){return+new Date},t}();e.Scheduler=n},2369:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(42109),o=n(72293),a=n(6594),l=n(9060),c=n(28592),u=function(t){function e(e){t.call(this,e),this.destination=e}return i(e,t),e}(s.Subscriber);e.SubjectSubscriber=u;var h=function(t){function e(){t.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return i(e,t),e.prototype[c.rxSubscriber]=function(){return new u(this)},e.prototype.lift=function(t){var e=new d(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;if(!this.isStopped)for(var e=this.observers,n=e.length,i=e.slice(),r=0;r=t.length)return void i.complete();i.next(e[n]),t.index=n+1,this.schedule(t)}},e.prototype._subscribe=function(t){var n=this.arrayLike,i=this.scheduler,r=n.length;if(i)return i.schedule(e.dispatch,0,{arrayLike:n,index:0,length:r,subscriber:t});for(var s=0;s1?new e(t,i):1===r?new s.ScalarObservable(t[0],i):new o.EmptyObservable(i)},e.dispatch=function(t){var e=t.array,n=t.index,i=t.subscriber;n>=t.count?i.complete():(i.next(e[n]),!i.closed&&(t.index=n+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.array,i=n.length,r=this.scheduler;if(r)return r.schedule(e.dispatch,0,{array:n,index:0,count:i,subscriber:t});for(var s=0;s1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}(o.Subscriber)},34078:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e){t.call(this),this.observableFactory=e}return i(e,t),e.create=function(t){return new e(t)},e.prototype._subscribe=function(t){return new l(t,this.observableFactory)},e}(r.Observable);e.DeferObservable=a;var l=function(t){function e(e,n){t.call(this,e),this.factory=n,this.tryDefer()}return i(e,t),e.prototype.tryDefer=function(){try{this._callFactory()}catch(t){this._error(t)}},e.prototype._callFactory=function(){var t=this.factory();t&&this.add(s.subscribeToResult(this,t))},e}(o.OuterSubscriber)},70481:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e){t.call(this),this.scheduler=e}return i(e,t),e.create=function(t){return new e(t)},e.dispatch=function(t){t.subscriber.complete()},e.prototype._subscribe=function(t){var n=this.scheduler;if(n)return n.schedule(e.dispatch,0,{subscriber:t});t.complete()},e}(n(18705).Observable);e.EmptyObservable=r},72210:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.error=e,this.scheduler=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){t.subscriber.error(t.error)},e.prototype._subscribe=function(t){var n=this.error,i=this.scheduler;if(t.syncErrorThrowable=!0,i)return i.schedule(e.dispatch,0,{error:n,subscriber:t});t.error(n)},e}(n(18705).Observable);e.ErrorObservable=r},56064:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(70481),o=n(48242),a=n(93658),l=n(84308),c=function(t){function e(e,n){t.call(this),this.sources=e,this.resultSelector=n}return i(e,t),e.create=function(){for(var t=[],n=0;nu?u:e:e}(t)),this.arr=t,this.idx=e,this.len=n}return t.prototype[o.iterator]=function(){return this},t.prototype.next=function(){return this.idx=t.count?i.complete():(i.next(e),!i.closed&&(t.index=n+1,t.start=e+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=0,i=this.start,r=this._count,s=this.scheduler;if(s)return s.schedule(e.dispatch,0,{index:n,count:r,start:i,subscriber:t});for(;;){if(n++>=r){t.complete();break}if(t.next(i++),t.closed)break}},e}(n(18705).Observable);e.RangeObservable=r},80478:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.value=e,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){var e=t.value,n=t.subscriber;t.done?n.complete():(n.next(e),!n.closed&&(t.done=!0,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.value,i=this.scheduler;if(i)return i.schedule(e.dispatch,0,{done:!1,value:n,subscriber:t});t.next(n),t.closed||t.complete()},e}(n(18705).Observable);e.ScalarObservable=r},82966:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(85522),o=n(39479),a=function(t){function e(e,n,i){void 0===n&&(n=0),void 0===i&&(i=s.asap),t.call(this),this.source=e,this.delayTime=n,this.scheduler=i,(!o.isNumeric(n)||n<0)&&(this.delayTime=0),(!i||"function"!=typeof i.schedule)&&(this.scheduler=s.asap)}return i(e,t),e.create=function(t,n,i){return void 0===n&&(n=0),void 0===i&&(i=s.asap),new e(t,n,i)},e.dispatch=function(t){return this.add(t.source.subscribe(t.subscriber))},e.prototype._subscribe=function(t){return this.scheduler.schedule(e.dispatch,this.delayTime,{source:this.source,subscriber:t})},e}(r.Observable);e.SubscribeOnObservable=a},92870:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(39479),s=n(18705),o=n(90680),a=n(41503),l=n(783),c=function(t){function e(e,n,i){void 0===e&&(e=0),t.call(this),this.period=-1,this.dueTime=0,r.isNumeric(n)?this.period=Number(n)<1?1:Number(n):a.isScheduler(n)&&(i=n),a.isScheduler(i)||(i=o.async),this.scheduler=i,this.dueTime=l.isDate(e)?+e-this.scheduler.now():e}return i(e,t),e.create=function(t,n,i){return void 0===t&&(t=0),new e(t,n,i)},e.dispatch=function(t){var e=t.index,n=t.period,i=t.subscriber;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}},e.prototype._subscribe=function(t){var n=this;return n.scheduler.schedule(e.dispatch,n.dueTime,{index:0,period:n.period,subscriber:t})},e}(s.Observable);e.TimerObservable=c},16196:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e,n){t.call(this),this.resourceFactory=e,this.observableFactory=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.prototype._subscribe=function(t){var e,n=this.resourceFactory,i=this.observableFactory;try{return e=n(),new l(t,e,i)}catch(r){t.error(r)}},e}(r.Observable);e.UsingObservable=a;var l=function(t){function e(e,n,i){t.call(this,e),this.resource=n,this.observableFactory=i,e.add(n),this.tryUse()}return i(e,t),e.prototype.tryUse=function(){try{var t=this.observableFactory.call(this,this.resource);t&&this.add(s.subscribeToResult(this,t))}catch(e){this._error(e)}},e}(o.OuterSubscriber)},59246:function(t,e,n){"use strict";var i=n(19183);e.bindCallback=i.BoundCallbackObservable.create},65571:function(t,e,n){"use strict";var i=n(78655);e.bindNodeCallback=i.BoundNodeCallbackObservable.create},24669:function(t,e,n){"use strict";var i=n(41503),r=n(48242),s=n(96177),o=n(49134);e.combineLatest=function(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof l&&(n=t.pop()),null===a&&1===t.length&&t[0]instanceof i.Observable?t[0]:o.mergeAll(n)(new r.ArrayObservable(t,a))}},94503:function(t,e,n){"use strict";var i=n(20143);e.never=i.NeverObservable.create},69657:function(t,e,n){"use strict";var i=n(96177);e.of=i.ArrayObservable.of},61395:function(t,e,n){"use strict";var i=n(46243);e.onErrorResumeNext=i.onErrorResumeNextStatic},95425:function(t,e,n){"use strict";var i=n(19770);e.pairs=i.PairsObservable.create},24330:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(48242),s=n(96177),o=n(84308),a=n(93658);e.race=function(){for(var t=[],e=0;e=2&&(o=arguments[1]);var a=Number.POSITIVE_INFINITY;return e>=3&&(a=arguments[2]),s.bufferTime(t,o,a,n)(this)}},92523:function(t,e,n){"use strict";var i=n(15440);e.bufferToggle=function(t,e){return i.bufferToggle(t,e)(this)}},49436:function(t,e,n){"use strict";var i=n(51786);e.bufferWhen=function(t){return i.bufferWhen(t)(this)}},64731:function(t,e,n){"use strict";var i=n(93017);e._catch=function(t){return i.catchError(t)(this)}},92273:function(t,e,n){"use strict";var i=n(17054);e.combineAll=function(t){return i.combineAll(t)(this)}},8709:function(t,e,n){"use strict";var i=n(49134);e.combineLatest=function(){for(var t=[],e=0;e=2?i.reduce(t,e)(this):i.reduce(t)(this)}},12931:function(t,e,n){"use strict";var i=n(15329);e.repeat=function(t){return void 0===t&&(t=-1),i.repeat(t)(this)}},68816:function(t,e,n){"use strict";var i=n(63964);e.repeatWhen=function(t){return i.repeatWhen(t)(this)}},17144:function(t,e,n){"use strict";var i=n(40241);e.retry=function(t){return void 0===t&&(t=-1),i.retry(t)(this)}},82766:function(t,e,n){"use strict";var i=n(23896);e.retryWhen=function(t){return i.retryWhen(t)(this)}},62068:function(t,e,n){"use strict";var i=n(92043);e.sample=function(t){return i.sample(t)(this)}},97013:function(t,e,n){"use strict";var i=n(90680),r=n(71239);e.sampleTime=function(t,e){return void 0===e&&(e=i.async),r.sampleTime(t,e)(this)}},98996:function(t,e,n){"use strict";var i=n(64949);e.scan=function(t,e){return arguments.length>=2?i.scan(t,e)(this):i.scan(t)(this)}},77033:function(t,e,n){"use strict";var i=n(88948);e.sequenceEqual=function(t,e){return i.sequenceEqual(t,e)(this)}},10377:function(t,e,n){"use strict";var i=n(35473);e.share=function(){return i.share()(this)}},71623:function(t,e,n){"use strict";var i=n(62704);e.shareReplay=function(t,e,n){return i.shareReplay(t,e,n)(this)}},91956:function(t,e,n){"use strict";var i=n(92223);e.single=function(t){return i.single(t)(this)}},72355:function(t,e,n){"use strict";var i=n(11189);e.skip=function(t){return i.skip(t)(this)}},69329:function(t,e,n){"use strict";var i=n(73346);e.skipLast=function(t){return i.skipLast(t)(this)}},68481:function(t,e,n){"use strict";var i=n(12928);e.skipUntil=function(t){return i.skipUntil(t)(this)}},587:function(t,e,n){"use strict";var i=n(69415);e.skipWhile=function(t){return i.skipWhile(t)(this)}},49292:function(t,e,n){"use strict";var i=n(30673);e.startWith=function(){for(var t=[],e=0;e0&&this.destination.next(e),t.prototype._complete.call(this)},e}(r.Subscriber),a=function(t){function e(e,n,i){t.call(this,e),this.bufferSize=n,this.startBufferEvery=i,this.buffers=[],this.count=0}return i(e,t),e.prototype._next=function(t){var e=this,n=e.bufferSize,i=e.startBufferEvery,r=e.buffers,s=e.count;this.count++,s%i==0&&r.push([]);for(var o=r.length;o--;){var a=r[o];a.push(t),a.length===n&&(r.splice(o,1),this.destination.next(a))}},e.prototype._complete=function(){for(var e=this.buffers,n=this.destination;e.length>0;){var i=e.shift();i.length>0&&n.next(i)}t.prototype._complete.call(this)},e}(r.Subscriber)},6489:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(90680),s=n(42109),o=n(41503);e.bufferTime=function(t){var e=arguments.length,n=r.async;o.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],e--);var i=null;e>=2&&(i=arguments[1]);var s=Number.POSITIVE_INFINITY;return e>=3&&(s=arguments[2]),function(e){return e.lift(new a(t,i,s,n))}};var a=function(){function t(t,e,n,i){this.bufferTimeSpan=t,this.bufferCreationInterval=e,this.maxBufferSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},t}(),l=function(){this.buffer=[]},c=function(t){function e(e,n,i,r,s){t.call(this,e),this.bufferTimeSpan=n,this.bufferCreationInterval=i,this.maxBufferSize=r,this.scheduler=s,this.contexts=[];var o=this.openContext();if(this.timespanOnly=null==i||i<0,this.timespanOnly)this.add(o.closeAction=s.schedule(u,n,{subscriber:this,context:o,bufferTimeSpan:n}));else{var a={bufferTimeSpan:n,bufferCreationInterval:i,subscriber:this,scheduler:s};this.add(o.closeAction=s.schedule(d,n,{subscriber:this,context:o})),this.add(s.schedule(h,i,a))}}return i(e,t),e.prototype._next=function(t){for(var e,n=this.contexts,i=n.length,r=0;r0;){var i=e.shift();n.next(i.buffer)}t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.contexts=null},e.prototype.onBufferFull=function(t){this.closeContext(t);var e=t.closeAction;if(e.unsubscribe(),this.remove(e),!this.closed&&this.timespanOnly){t=this.openContext();var n=this.bufferTimeSpan;this.add(t.closeAction=this.scheduler.schedule(u,n,{subscriber:this,context:t,bufferTimeSpan:n}))}},e.prototype.openContext=function(){var t=new l;return this.contexts.push(t),t},e.prototype.closeContext=function(t){this.destination.next(t.buffer);var e=this.contexts;(e?e.indexOf(t):-1)>=0&&e.splice(e.indexOf(t),1)},e}(s.Subscriber);function u(t){var e=t.subscriber,n=t.context;n&&e.closeContext(n),e.closed||(t.context=e.openContext(),t.context.closeAction=this.schedule(t,t.bufferTimeSpan))}function h(t){var e=t.bufferCreationInterval,n=t.bufferTimeSpan,i=t.subscriber,r=t.scheduler,s=i.openContext();i.closed||(i.add(s.closeAction=r.schedule(d,n,{subscriber:i,context:s})),this.schedule(t,e))}function d(t){t.subscriber.closeContext(t.context)}},15440:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(93658),o=n(84308);e.bufferToggle=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.openings,this.closingSelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(s.subscribeToResult(this,n))}return i(e,t),e.prototype._next=function(t){for(var e=this.contexts,n=e.length,i=0;i0;){var i=n.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,t.prototype._error.call(this,e)},e.prototype._complete=function(){for(var e=this.contexts;e.length>0;){var n=e.shift();this.destination.next(n.buffer),n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){t?this.closeBuffer(t):this.openBuffer(e)},e.prototype.notifyComplete=function(t){this.closeBuffer(t.context)},e.prototype.openBuffer=function(t){try{var e=this.closingSelector.call(this,t);e&&this.trySubscribe(e)}catch(n){this._error(n)}},e.prototype.closeBuffer=function(t){var e=this.contexts;if(e&&t){var n=t.subscription;this.destination.next(t.buffer),e.splice(e.indexOf(t),1),this.remove(n),n.unsubscribe()}},e.prototype.trySubscribe=function(t){var e=this.contexts,n=new r.Subscription,i={buffer:[],subscription:n};e.push(i);var o=s.subscribeToResult(this,t,i);!o||o.closed?this.closeBuffer(i):(o.context=i,this.add(o),n.add(o))},e}(o.OuterSubscriber)},51786:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.bufferWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.closingSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.closingSelector))},t}(),u=function(t){function e(e,n){t.call(this,e),this.closingSelector=n,this.subscribing=!1,this.openBuffer()}return i(e,t),e.prototype._next=function(t){this.buffer.push(t)},e.prototype._complete=function(){var e=this.buffer;e&&this.destination.next(e),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.buffer=null,this.subscribing=!1},e.prototype.notifyNext=function(t,e,n,i,r){this.openBuffer()},e.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},e.prototype.openBuffer=function(){var t=this.closingSubscription;t&&(this.remove(t),t.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];var e=s.tryCatch(this.closingSelector)();e===o.errorObject?this.error(o.errorObject.e):(t=new r.Subscription,this.closingSubscription=t,this.add(t),this.subscribing=!0,t.add(l.subscribeToResult(this,e)),this.subscribing=!1)},e}(a.OuterSubscriber)},93017:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.catchError=function(t){return function(e){var n=new o(t),i=e.lift(n);return n.caught=i}};var o=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.selector,this.caught))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.selector=n,this.caught=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(i){return void t.prototype.error.call(this,i)}this._unsubscribeAndRecycle(),this.add(s.subscribeToResult(this,n))}},e}(r.OuterSubscriber)},17054:function(t,e,n){"use strict";var i=n(49134);e.combineAll=function(t){return function(e){return e.lift(new i.CombineLatestOperator(t))}}},49134:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(84308),a=n(93658),l={};e.combineLatest=function(){for(var t=[],e=0;e0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var s=Math.max(0,n[0].time-i.now());this.schedule(t,s)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new u(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(a.Notification.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t)},e.prototype._complete=function(){this.scheduleNotification(a.Notification.createComplete())},e}(o.Subscriber),u=function(t,e){this.time=t,this.notification=e}},22944:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(18705),o=n(84308),a=n(93658);e.delayWhen=function(t,e){return e?function(n){return new u(n,e).lift(new l(t))}:function(e){return e.lift(new l(t))}};var l=function(){function t(t){this.delayDurationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.delayDurationSelector))},t}(),c=function(t){function e(e,n){t.call(this,e),this.delayDurationSelector=n,this.completed=!1,this.delayNotifierSubscriptions=[],this.values=[]}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(t),this.removeSubscription(r),this.tryComplete()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype.notifyComplete=function(t){var e=this.removeSubscription(t);e&&this.destination.next(e),this.tryComplete()},e.prototype._next=function(t){try{var e=this.delayDurationSelector(t);e&&this.tryDelay(e,t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){this.completed=!0,this.tryComplete()},e.prototype.removeSubscription=function(t){t.unsubscribe();var e=this.delayNotifierSubscriptions.indexOf(t),n=null;return-1!==e&&(n=this.values[e],this.delayNotifierSubscriptions.splice(e,1),this.values.splice(e,1)),n},e.prototype.tryDelay=function(t,e){var n=a.subscribeToResult(this,t,e);n&&!n.closed&&(this.add(n),this.delayNotifierSubscriptions.push(n)),this.values.push(e)},e.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},e}(o.OuterSubscriber),u=function(t){function e(e,n){t.call(this),this.source=e,this.subscriptionDelay=n}return i(e,t),e.prototype._subscribe=function(t){this.subscriptionDelay.subscribe(new h(t,this.source))},e}(s.Observable),h=function(t){function e(e,n){t.call(this),this.parent=e,this.source=n,this.sourceSubscribed=!1}return i(e,t),e.prototype._next=function(t){this.subscribeToSource()},e.prototype._error=function(t){this.unsubscribe(),this.parent.error(t)},e.prototype._complete=function(){this.subscribeToSource()},e.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},e}(r.Subscriber)},95591:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.dematerialize=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){t.observe(this.destination)},e}(r.Subscriber)},25753:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658),o=n(40317);e.distinct=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.keySelector=t,this.flushes=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.keySelector,this.flushes))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=n,this.values=new o.Set,i&&this.add(s.subscribeToResult(this,i))}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.values.clear()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype._next=function(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)},e.prototype._useKeySelector=function(t){var e,n=this.destination;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)},e.prototype._finalizeNext=function(t,e){var n=this.values;n.has(t)||(n.add(t),this.destination.next(e))},e}(r.OuterSubscriber);e.DistinctSubscriber=l},65608:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.distinctUntilChanged=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compare=t,this.keySelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compare,this.keySelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=i,this.hasKey=!1,"function"==typeof n&&(this.compare=n)}return i(e,t),e.prototype.compare=function(t,e){return t===e},e.prototype._next=function(t){var e=t;if(this.keySelector&&(e=s.tryCatch(this.keySelector)(t))===o.errorObject)return this.destination.error(o.errorObject.e);var n=!1;if(this.hasKey){if((n=s.tryCatch(this.compare)(this.key,e))===o.errorObject)return this.destination.error(o.errorObject.e)}else this.hasKey=!0;!1===Boolean(n)&&(this.key=e,this.destination.next(t))},e}(r.Subscriber)},8330:function(t,e,n){"use strict";var i=n(65608);e.distinctUntilKeyChanged=function(t,e){return i.distinctUntilChanged(function(n,i){return e?e(n[t],i[t]):n[t]===i[t]})}},29264:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.elementAt=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){if(this.index=t,this.defaultValue=e,t<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.index,this.defaultValue))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.index=n,this.defaultValue=i}return i(e,t),e.prototype._next=function(t){0==this.index--&&(this.destination.next(t),this.destination.complete())},e.prototype._complete=function(){var t=this.destination;this.index>=0&&(void 0!==this.defaultValue?t.next(this.defaultValue):t.error(new s.ArgumentOutOfRangeError)),t.complete()},e}(r.Subscriber)},26285:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.every=function(t,e){return function(n){return n.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg,this.source))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.predicate=n,this.thisArg=i,this.source=r,this.index=0,this.thisArg=i||this}return i(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},93229:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaust=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e),this.hasCompleted=!1,this.hasSubscription=!1}return i(e,t),e.prototype._next=function(t){this.hasSubscription||(this.hasSubscription=!0,this.add(s.subscribeToResult(this,t)))},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},15758:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaustMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}return i(e,t),e.prototype._next=function(t){this.hasSubscription||this.tryNext(t)},e.prototype.tryNext=function(t){var e=this.index++,n=this.destination;try{var i=this.project(t,e);this.hasSubscription=!0,this.add(s.subscribeToResult(this,i,t,e))}catch(r){n.error(r)}},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.trySelectResult(t,e,n,i):s.next(e)},e.prototype.trySelectResult=function(t,e,n,i){var r=this.resultSelector,s=this.destination;try{var o=r(t,e,n,i);s.next(o)}catch(a){s.error(a)}},e.prototype.notifyError=function(t){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},55364:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(84308),a=n(93658);e.expand=function(t,e,n){return void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=void 0),e=(e||0)<1?Number.POSITIVE_INFINITY:e,function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.project=t,this.concurrent=e,this.scheduler=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.project,this.concurrent,this.scheduler))},t}();e.ExpandOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.project=n,this.concurrent=i,this.scheduler=r,this.index=0,this.active=0,this.hasCompleted=!1,i0&&this._next(e.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},e}(o.OuterSubscriber);e.ExpandSubscriber=c},27015:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.filter=function(t,e){return function(n){return n.lift(new s(t,e))}};var s=function(){function t(t,e){this.predicate=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.thisArg=i,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)},e}(r.Subscriber)},94367:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293);e.finalize=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.callback))},t}(),a=function(t){function e(e,n){t.call(this,e),this.add(new s.Subscription(n))}return i(e,t),e}(r.Subscriber)},16700:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.find=function(t,e){if("function"!=typeof t)throw new TypeError("predicate is not a function");return function(n){return n.lift(new s(t,n,!1,e))}};var s=function(){function t(t,e,n,i){this.predicate=t,this.source=e,this.yieldIndex=n,this.thisArg=i}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.source,this.yieldIndex,this.thisArg))},t}();e.FindValueOperator=s;var o=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.source=i,this.yieldIndex=r,this.thisArg=s,this.index=0}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){var e=this.predicate,n=this.thisArg,i=this.index++;try{e.call(n||this,t,i,this.source)&&this.notifyComplete(this.yieldIndex?i:t)}catch(r){this.destination.error(r)}},e.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},e}(r.Subscriber);e.FindValueSubscriber=o},86452:function(t,e,n){"use strict";var i=n(16700);e.findIndex=function(t,e){return function(n){return n.lift(new i.FindValueOperator(t,n,!0,e))}}},12309:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.first=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.index=0,this.hasCompleted=!1,this._emitted=!1}return i(e,t),e.prototype._next=function(t){var e=this.index++;this.predicate?this._tryPredicate(t,e):this._emit(t,e)},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}n&&this._emit(t,e)},e.prototype._emit=function(t,e){this.resultSelector?this._tryResultSelector(t,e):this._emitFinal(t)},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this._emitFinal(n)},e.prototype._emitFinal=function(t){var e=this.destination;this._emitted||(this._emitted=!0,e.next(t),e.complete(),this.hasCompleted=!0)},e.prototype._complete=function(){var t=this.destination;this.hasCompleted||void 0===this.defaultValue?this.hasCompleted||t.error(new s.EmptyError):(t.next(this.defaultValue),t.complete())},e}(r.Subscriber)},92577:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293),o=n(18705),a=n(2369),l=n(49754),c=n(30764);e.groupBy=function(t,e,n,i){return function(r){return r.lift(new u(t,e,n,i))}};var u=function(){function t(t,e,n,i){this.keySelector=t,this.elementSelector=e,this.durationSelector=n,this.subjectSelector=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},t}(),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.keySelector=n,this.elementSelector=i,this.durationSelector=r,this.subjectSelector=s,this.groups=null,this.attemptedToUnsubscribe=!1,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.keySelector(t)}catch(n){return void this.error(n)}this._group(t,e)},e.prototype._group=function(t,e){var n=this.groups;n||(n=this.groups="string"==typeof e?new c.FastMap:new l.Map);var i,r=n.get(e);if(this.elementSelector)try{i=this.elementSelector(t)}catch(u){this.error(u)}else i=t;if(!r){r=this.subjectSelector?this.subjectSelector():new a.Subject,n.set(e,r);var s=new p(e,r,this);if(this.destination.next(s),this.durationSelector){var o=void 0;try{o=this.durationSelector(new p(e,r))}catch(u){return void this.error(u)}this.add(o.subscribe(new d(e,r,this)))}}r.closed||r.next(i)},e.prototype._error=function(t){var e=this.groups;e&&(e.forEach(function(e,n){e.error(t)}),e.clear()),this.destination.error(t)},e.prototype._complete=function(){var t=this.groups;t&&(t.forEach(function(t,e){t.complete()}),t.clear()),this.destination.complete()},e.prototype.removeGroup=function(t){this.groups.delete(t)},e.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&t.prototype.unsubscribe.call(this))},e}(r.Subscriber),d=function(t){function e(e,n,i){t.call(this,n),this.key=e,this.group=n,this.parent=i}return i(e,t),e.prototype._next=function(t){this.complete()},e.prototype._unsubscribe=function(){var t=this.parent,e=this.key;this.key=this.parent=null,t&&t.removeGroup(e)},e}(r.Subscriber),p=function(t){function e(e,n,i){t.call(this),this.key=e,this.groupSubject=n,this.refCountSubscription=i}return i(e,t),e.prototype._subscribe=function(t){var e=new s.Subscription,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&e.add(new f(n)),e.add(i.subscribe(t)),e},e}(o.Observable);e.GroupedObservable=p;var f=function(t){function e(e){t.call(this),this.parent=e,e.count++}return i(e,t),e.prototype.unsubscribe=function(){var e=this.parent;!e.closed&&!this.closed&&(t.prototype.unsubscribe.call(this),e.count-=1,0===e.count&&e.attemptedToUnsubscribe&&e.unsubscribe())},e}(s.Subscription)},86898:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(68668);e.ignoreElements=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype._next=function(t){s.noop()},e}(r.Subscriber)},89121:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.isEmpty=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},4636:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.last=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.hasValue=!1,this.index=0,void 0!==r&&(this.lastValue=r,this.hasValue=!0)}return i(e,t),e.prototype._next=function(t){var e=this.index++;if(this.predicate)this._tryPredicate(t,e);else{if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}if(n){if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this.lastValue=n,this.hasValue=!0},e.prototype._complete=function(){var t=this.destination;this.hasValue?(t.next(this.lastValue),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},40119:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.map=function(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 s(t,e))}};var s=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.project,this.thisArg))},t}();e.MapOperator=s;var o=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.count=0,this.thisArg=i||this}return i(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.Subscriber)},23491:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.mapTo=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.value=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.value))},t}(),o=function(t){function e(e,n){t.call(this,e),this.value=n}return i(e,t),e.prototype._next=function(t){this.destination.next(this.value)},e}(r.Subscriber)},71177:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(94429);e.materialize=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){this.destination.next(s.Notification.createNext(t))},e.prototype._error=function(t){var e=this.destination;e.next(s.Notification.createError(t)),e.complete()},e.prototype._complete=function(){var t=this.destination;t.next(s.Notification.createComplete()),t.complete()},e}(r.Subscriber)},33499:function(t,e,n){"use strict";var i=n(97369);e.max=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)>0?e:n}:function(t,e){return t>e?t:e})}},56098:function(t,e,n){"use strict";var i=n(38781),r=n(38781);e.mergeStatic=r.merge,e.merge=function(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(s.OuterSubscriber);e.MergeMapSubscriber=a},6693:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.mergeMapTo=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"number"==typeof e&&(n=e,e=null),function(i){return i.lift(new o(t,e,n))}};var o=function(){function t(t,e,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.ish=t,this.resultSelector=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.ish,this.resultSelector,this.concurrent))},t}();e.MergeMapToOperator=o;var a=function(t){function e(e,n,i,r){void 0===r&&(r=Number.POSITIVE_INFINITY),t.call(this,e),this.ish=n,this.resultSelector=i,this.concurrent=r,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber);e.MergeMapToSubscriber=a},7550:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(93658),a=n(84308);e.mergeScan=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.accumulator=t,this.seed=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.accumulator,this.seed,this.concurrent))},t}();e.MergeScanOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this.acc=i,this.concurrent=r,this.hasValue=!1,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},e}(a.OuterSubscriber);e.MergeScanSubscriber=c},51213:function(t,e,n){"use strict";var i=n(97369);e.min=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)<0?e:n}:function(t,e){return t=2?function(n){return o.pipe(i.scan(t,e),r.takeLast(1),s.defaultIfEmpty(e))(n)}:function(e){return o.pipe(i.scan(function(e,n,i){return t(e,n,i+1)}),r.takeLast(1))(e)}}},1694:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.refCount=function(){return function(t){return t.lift(new s(t))}};var s=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var i=new o(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r},t}(),o=function(t){function e(e,n){t.call(this,e),this.connectable=n}return i(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._refCount;if(e<=0)this.connection=null;else if(t._refCount=e-1,e>1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null},e}(r.Subscriber)},15329:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(70481);e.repeat=function(t){return void 0===t&&(t=-1),function(e){return 0===t?new s.EmptyObservable:e.lift(new o(t<0?-1:t-1,e))}};var o=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.count,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.complete=function(){if(!this.isStopped){var e=this.source,n=this.count;if(0===n)return t.prototype.complete.call(this);n>-1&&(this.count=n-1),e.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},63964:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.repeatWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,e))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i,this.sourceIsBeingSubscribedTo=!0}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},e.prototype.notifyComplete=function(e){if(!1===this.sourceIsBeingSubscribedTo)return t.prototype.complete.call(this)},e.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return t.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next()}},e.prototype._unsubscribe=function(){var t=this.notifications,e=this.retriesSubscription;t&&(t.unsubscribe(),this.notifications=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype._unsubscribeAndRecycle=function(){var e=this,n=e.notifications,i=e.retries,r=e.retriesSubscription;return this.notifications=null,this.retries=null,this.retriesSubscription=null,t.prototype._unsubscribeAndRecycle.call(this),this.notifications=n,this.retries=i,this.retriesSubscription=r,this},e.prototype.subscribeToRetries=function(){this.notifications=new r.Subject;var e=s.tryCatch(this.notifier)(this.notifications);if(e===o.errorObject)return t.prototype.complete.call(this);this.retries=e,this.retriesSubscription=l.subscribeToResult(this,e)},e}(a.OuterSubscriber)},40241:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.retry=function(t){return void 0===t&&(t=-1),function(e){return e.lift(new s(t,e))}};var s=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.count,this.source))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return t.prototype.error.call(this,e);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},23896:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.retryWhen=function(t){return function(e){return e.lift(new c(t,e))}};var c=function(){function t(t,e){this.notifier=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,this.source))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.errors,i=this.retries,a=this.retriesSubscription;if(i)this.errors=null,this.retriesSubscription=null;else{if(n=new r.Subject,(i=s.tryCatch(this.notifier)(n))===o.errorObject)return t.prototype.error.call(this,o.errorObject.e);a=l.subscribeToResult(this,i)}this._unsubscribeAndRecycle(),this.errors=n,this.retries=i,this.retriesSubscription=a,n.next(e)}},e.prototype._unsubscribe=function(){var t=this.errors,e=this.retriesSubscription;t&&(t.unsubscribe(),this.errors=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype.notifyNext=function(t,e,n,i,r){var s=this,o=s.errors,a=s.retries,l=s.retriesSubscription;this.errors=null,this.retries=null,this.retriesSubscription=null,this._unsubscribeAndRecycle(),this.errors=o,this.retries=a,this.retriesSubscription=l,this.source.subscribe(this)},e}(a.OuterSubscriber)},92043:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.sample=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new a(t),i=e.subscribe(n);return i.add(s.subscribeToResult(n,this.notifier)),i},t}(),a=function(t){function e(){t.apply(this,arguments),this.hasValue=!1}return i(e,t),e.prototype._next=function(t){this.value=t,this.hasValue=!0},e.prototype.notifyNext=function(t,e,n,i,r){this.emitValue()},e.prototype.notifyComplete=function(){this.emitValue()},e.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},e}(r.OuterSubscriber)},71239:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(90680);e.sampleTime=function(t,e){return void 0===e&&(e=s.async),function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.period=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.period,this.scheduler))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.period=n,this.scheduler=i,this.hasValue=!1,this.add(i.schedule(l,n,{subscriber:this,period:n}))}return i(e,t),e.prototype._next=function(t){this.lastValue=t,this.hasValue=!0},e.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},e}(r.Subscriber);function l(t){var e=t.period;t.subscriber.notifyNext(),this.schedule(t,e)}},64949:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.scan=function(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.accumulator,this.seed,this.hasSeed))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this._seed=i,this.hasSeed=r,this.index=0}return i(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(i){this.destination.error(i)}this.seed=e,this.destination.next(e)},e}(r.Subscriber)},88948:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.sequenceEqual=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compareTo=t,this.comparor=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compareTo,this.comparor))},t}();e.SequenceEqualOperator=a;var l=function(t){function e(e,n,i){t.call(this,e),this.compareTo=n,this.comparor=i,this._a=[],this._b=[],this._oneComplete=!1,this.add(n.subscribe(new c(e,this)))}return i(e,t),e.prototype._next=function(t){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(t),this.checkValues())},e.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},e.prototype.checkValues=function(){for(var t=this,e=t._a,n=t._b,i=t.comparor;e.length>0&&n.length>0;){var r=e.shift(),a=n.shift(),l=!1;i?(l=s.tryCatch(i)(r,a))===o.errorObject&&this.destination.error(o.errorObject.e):l=r===a,l||this.emit(!1)}},e.prototype.emit=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype.nextB=function(t){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(t),this.checkValues())},e}(r.Subscriber);e.SequenceEqualSubscriber=l;var c=function(t){function e(e,n){t.call(this,e),this.parent=n}return i(e,t),e.prototype._next=function(t){this.parent.nextB(t)},e.prototype._error=function(t){this.parent.error(t)},e.prototype._complete=function(){this.parent._complete()},e}(r.Subscriber)},35473:function(t,e,n){"use strict";var i=n(27372),r=n(1694),s=n(2369);function o(){return new s.Subject}e.share=function(){return function(t){return r.refCount()(i.multicast(o)(t))}}},62704:function(t,e,n){"use strict";var i=n(81959);e.shareReplay=function(t,e,n){return function(r){return r.lift(function(t,e,n){var r,s,o=0,a=!1,l=!1;return function(c){o++,(!r||a)&&(a=!1,r=new i.ReplaySubject(t,e,n),s=c.subscribe({next:function(t){r.next(t)},error:function(t){a=!0,r.error(t)},complete:function(){l=!0,r.complete()}}));var u=r.subscribe(this);return function(){o--,u.unsubscribe(),s&&0===o&&l&&s.unsubscribe()}}}(t,e,n))}}},92223:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.single=function(t){return function(e){return e.lift(new o(t,e))}};var o=function(){function t(t,e){this.predicate=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.source=i,this.seenValue=!1,this.index=0}return i(e,t),e.prototype.applySingleValue=function(t){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=t)},e.prototype._next=function(t){var e=this.index++;this.predicate?this.tryNext(t,e):this.applySingleValue(t)},e.prototype.tryNext=function(t,e){try{this.predicate(t,e,this.source)&&this.applySingleValue(t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){var t=this.destination;this.index>0?(t.next(this.seenValue?this.singleValue:void 0),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},11189:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.skip=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.total=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.total))},t}(),o=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){++this.count>this.total&&this.destination.next(t)},e}(r.Subscriber)},73346:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.skipLast=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){if(this._skipCount=t,this._skipCount<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(0===this._skipCount?new r.Subscriber(t):new a(t,this._skipCount))},t}(),a=function(t){function e(e,n){t.call(this,e),this._skipCount=n,this._count=0,this._ring=new Array(n)}return i(e,t),e.prototype._next=function(t){var e=this._skipCount,n=this._count++;if(n1?new i.ArrayObservable(t,n):new s.EmptyObservable(n),e)}}},10118:function(t,e,n){"use strict";var i=n(82966);e.subscribeOn=function(t,e){return void 0===e&&(e=0),function(n){return n.lift(new r(t,e))}};var r=function(){function t(t,e){this.scheduler=t,this.delay=e}return t.prototype.call=function(t,e){return new i.SubscribeOnObservable(e,this.delay,this.scheduler).subscribe(t)},t}()},77243:function(t,e,n){"use strict";var i=n(18483),r=n(5027);e.switchAll=function(){return i.switchMap(r.identity)}},18483:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var i=this.innerSubscription;i&&i.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,t,e,n))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){this.resultSelector?this._tryNotifyNext(t,e,n,i):this.destination.next(e)},e.prototype._tryNotifyNext=function(t,e,n,i){var r;try{r=this.resultSelector(t,e,n,i)}catch(s){return void this.destination.error(s)}this.destination.next(r)},e}(r.OuterSubscriber)},10684:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMapTo=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.observable=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.observable,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.inner=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e=this.innerSubscription;e&&e.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,this.inner,t,this.index++))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.tryResultSelector(t,e,n,i):s.next(e)},e.prototype.tryResultSelector=function(t,e,n,i){var r,s=this.resultSelector,o=this.destination;try{r=s(t,e,n,i)}catch(a){return void o.error(a)}o.next(r)},e}(r.OuterSubscriber)},44396:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.take=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))},e}(r.Subscriber)},73935:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.takeLast=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.ring=new Array,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.ring,n=this.total,i=this.count++;e.length0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,o=r.length,a=0;a=0&&l%e==0&&!this.closed&&r.shift().complete(),++this.count%e==0&&!this.closed){var c=new s.Subject;r.push(c),n.next(c)}},e.prototype._error=function(t){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().complete();this.destination.complete()},e.prototype._unsubscribe=function(){this.count=0,this.windows=null},e}(r.Subscriber)},42603:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(90680),o=n(42109),a=n(39479),l=n(41503);e.windowTime=function(t){var e=s.async,n=null,i=Number.POSITIVE_INFINITY;return l.isScheduler(arguments[3])&&(e=arguments[3]),l.isScheduler(arguments[2])?e=arguments[2]:a.isNumeric(arguments[2])&&(i=arguments[2]),l.isScheduler(arguments[1])?e=arguments[1]:a.isNumeric(arguments[1])&&(n=arguments[1]),function(r){return r.lift(new c(t,n,i,e))}};var c=function(){function t(t,e,n,i){this.windowTimeSpan=t,this.windowCreationInterval=e,this.maxWindowSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},t}(),u=function(t){function e(){t.apply(this,arguments),this._numberOfNextedValues=0}return i(e,t),e.prototype.next=function(e){this._numberOfNextedValues++,t.prototype.next.call(this,e)},Object.defineProperty(e.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),e}(r.Subject),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.destination=e,this.windowTimeSpan=n,this.windowCreationInterval=i,this.maxWindowSize=r,this.scheduler=s,this.windows=[];var o=this.openWindow();if(null!==i&&i>=0){var a={windowTimeSpan:n,windowCreationInterval:i,subscriber:this,scheduler:s};this.add(s.schedule(f,n,{subscriber:this,window:o,context:null})),this.add(s.schedule(p,i,a))}else this.add(s.schedule(d,n,{subscriber:this,window:o,windowTimeSpan:n}))}return i(e,t),e.prototype._next=function(t){for(var e=this.windows,n=e.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}},e.prototype._error=function(t){for(var e=this.windows;e.length>0;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){for(var t=this.windows;t.length>0;){var e=t.shift();e.closed||e.complete()}this.destination.complete()},e.prototype.openWindow=function(){var t=new u;return this.windows.push(t),this.destination.next(t),t},e.prototype.closeWindow=function(t){t.complete();var e=this.windows;e.splice(e.indexOf(t),1)},e}(o.Subscriber);function d(t){var e=t.subscriber,n=t.windowTimeSpan,i=t.window;i&&e.closeWindow(i),t.window=e.openWindow(),this.schedule(t,n)}function p(t){var e=t.windowTimeSpan,n=t.subscriber,i=t.scheduler,r=t.windowCreationInterval,s=n.openWindow(),o=this,a={action:o,subscription:null};a.subscription=i.schedule(f,e,{subscriber:n,window:s,context:a}),o.add(a.subscription),o.schedule(t,r)}function f(t){var e=t.subscriber,n=t.window,i=t.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),e.closeWindow(n)}},59048:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=n(33463),a=n(85814),l=n(84308),c=n(93658);e.windowToggle=function(t,e){return function(n){return n.lift(new u(t,e))}};var u=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.openings,this.closingSelector))},t}(),h=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(this.openSubscription=c.subscribeToResult(this,n,n))}return i(e,t),e.prototype._next=function(t){var e=this.contexts;if(e)for(var n=e.length,i=0;i0){var o=s.indexOf(n);-1!==o&&s.splice(o,1)}},e.prototype.notifyComplete=function(){},e.prototype._next=function(t){if(0===this.toRespond.length){var e=[t].concat(this.values);this.project?this._tryProject(e):this.destination.next(e)}},e.prototype._tryProject=function(t){var e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.OuterSubscriber)},9477:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(42109),a=n(84308),l=n(93658),c=n(72121);function u(){for(var t=[],e=0;ethis.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),g=function(t){function e(e,n,i){t.call(this,e),this.parent=n,this.observable=i,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return i(e,t),e.prototype[c.iterator]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){this.buffer.push(e),this.parent.checkIterators()},e.prototype.subscribe=function(t,e){return l.subscribeToResult(this,this.observable,this,e)},e}(a.OuterSubscriber)},33310:function(t,e,n){"use strict";var i=n(9477);e.zipAll=function(t){return function(e){return e.lift(new i.ZipOperator(t))}}},28101:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this)}return i(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(n(72293).Subscription);e.Action=r},67529:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=n(95018),o=function(t){function e(e,n){t.call(this,e,n),this.scheduler=e,this.work=n}return i(e,t),e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=s.AnimationFrame.requestAnimationFrame(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(s.AnimationFrame.cancelAnimationFrame(n),e.scheduled=void 0)},e}(r.AsyncAction);e.AnimationFrameAction=o},68909:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=r.Immediate.setImmediate(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(r.Immediate.clearImmediate(n),e.scheduled=void 0)},e}(n(12624).AsyncAction);e.AsapAction=s},25766:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.schedule.call(this,e,n):(this.delay=n,this.state=e,this.scheduler.flush(this),this)},e.prototype.execute=function(e,n){return n>0||this.closed?t.prototype.execute.call(this,e,n):this._execute(e,n)},e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,i):e.flush(this)},e}(n(12624).AsyncAction);e.QueueAction=r},77373:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e}(n(42704).AsyncScheduler);e.QueueScheduler=r},18353:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=function(t){function e(e,n){var i=this;void 0===e&&(e=o),void 0===n&&(n=Number.POSITIVE_INFINITY),t.call(this,e,function(){return i.frame}),this.maxFrames=n,this.frame=0,this.index=-1}return i(e,t),e.prototype.flush=function(){for(var t,e,n=this.actions,i=this.maxFrames;(e=n.shift())&&(this.frame=e.delay)<=i&&!(t=e.execute(e.state,e.delay)););if(t){for(;e=n.shift();)e.unsubscribe();throw t}},e.frameTimeFactor=10,e}(n(42704).AsyncScheduler);e.VirtualTimeScheduler=s;var o=function(t){function e(e,n,i){void 0===i&&(i=e.index+=1),t.call(this,e,n),this.scheduler=e,this.work=n,this.index=i,this.active=!0,this.index=e.index=i}return i(e,t),e.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return t.prototype.schedule.call(this,n,i);this.active=!1;var r=new e(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},e.prototype.requestAsyncId=function(t,n,i){void 0===i&&(i=0),this.delay=t.frame+i;var r=t.actions;return r.push(this),r.sort(e.sortActions),!0},e.prototype.recycleAsyncId=function(t,e,n){void 0===n&&(n=0)},e.prototype._execute=function(e,n){if(!0===this.active)return t.prototype._execute.call(this,e,n)},e.sortActions=function(t,e){return t.delay===e.delay?t.index===e.index?0:t.index>e.index?1:-1:t.delay>e.delay?1:-1},e}(r.AsyncAction);e.VirtualAction=o},12948:function(t,e,n){"use strict";var i=n(67529),r=n(68909);e.animationFrame=new r.AnimationFrameScheduler(i.AnimationFrameAction)},85522:function(t,e,n){"use strict";var i=n(3496),r=n(25766);e.asap=new r.AsapScheduler(i.AsapAction)},90680:function(t,e,n){"use strict";var i=n(12624),r=n(42704);e.async=new r.AsyncScheduler(i.AsyncAction)},97088:function(t,e,n){"use strict";var i=n(7100),r=n(77373);e.queue=new r.QueueScheduler(i.QueueAction)},72121:function(t,e,n){"use strict";var i=n(80019);function r(t){var e=t.Symbol;if("function"==typeof e)return e.iterator||(e.iterator=e("iterator polyfill")),e.iterator;var n=t.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var i=t.Map;if(i)for(var r=Object.getOwnPropertyNames(i.prototype),s=0;s0;)e.shift().setup();t.prototype.flush.call(this);for(var n=this.flushTests.filter(function(t){return t.ready});n.length>0;){var i=n.shift();this.assertDeepEqual(i.actual,i.expected)}},e.parseMarblesAsSubscriptions=function(t){if("string"!=typeof t)return new l.SubscriptionLog(Number.POSITIVE_INFINITY);for(var e=t.length,n=-1,i=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,s=0;s-1?n:o;break;case"!":if(r!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");r=n>-1?n:o;break;default:throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+a+"'.")}}return r<0?new l.SubscriptionLog(i):new l.SubscriptionLog(i,r)},e.parseMarbles=function(t,e,n,i){if(void 0===i&&(i=!1),-1!==t.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var r=t.length,a=[],l=t.indexOf("^"),c=-1===l?0:l*-this.frameTimeFactor,u="object"!=typeof e?function(t){return t}:function(t){return i&&e[t]instanceof o.ColdObservable?e[t].messages:e[t]},h=-1,d=0;d-1?h:p,notification:f})}return a},e}(c.VirtualTimeScheduler);e.TestScheduler=u},95018:function(t,e,n){"use strict";var i=n(80019),r=function(t){t.requestAnimationFrame?(this.cancelAnimationFrame=t.cancelAnimationFrame.bind(t),this.requestAnimationFrame=t.requestAnimationFrame.bind(t)):t.mozRequestAnimationFrame?(this.cancelAnimationFrame=t.mozCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.mozRequestAnimationFrame.bind(t)):t.webkitRequestAnimationFrame?(this.cancelAnimationFrame=t.webkitCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.webkitRequestAnimationFrame.bind(t)):t.msRequestAnimationFrame?(this.cancelAnimationFrame=t.msCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.msRequestAnimationFrame.bind(t)):t.oRequestAnimationFrame?(this.cancelAnimationFrame=t.oCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.oRequestAnimationFrame.bind(t)):(this.cancelAnimationFrame=t.clearTimeout.bind(t),this.requestAnimationFrame=function(e){return t.setTimeout(e,1e3/60)})};e.RequestAnimationFrameDefinition=r,e.AnimationFrame=new r(i.root)},11758:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"argument out of range");this.name=e.name="ArgumentOutOfRangeError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.ArgumentOutOfRangeError=i},44640:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"no elements in sequence");this.name=e.name="EmptyError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.EmptyError=i},30764:function(t,e){"use strict";var n=function(){function t(){this.values={}}return t.prototype.delete=function(t){return this.values[t]=null,!0},t.prototype.set=function(t,e){return this.values[t]=e,this},t.prototype.get=function(t){return this.values[t]},t.prototype.forEach=function(t,e){var n=this.values;for(var i in n)n.hasOwnProperty(i)&&null!==n[i]&&t.call(e,n[i],i)},t.prototype.clear=function(){this.values={}},t}();e.FastMap=n},42982:function(t,e,n){"use strict";var i=n(80019),r=function(){function t(t){if(this.root=t,t.setImmediate&&"function"==typeof t.setImmediate)this.setImmediate=t.setImmediate.bind(t),this.clearImmediate=t.clearImmediate.bind(t);else{this.nextHandle=1,this.tasksByHandle={},this.currentlyRunningATask=!1,this.setImmediate=this.canUseProcessNextTick()?this.createProcessNextTickSetImmediate():this.canUsePostMessage()?this.createPostMessageSetImmediate():this.canUseMessageChannel()?this.createMessageChannelSetImmediate():this.canUseReadyStateChange()?this.createReadyStateChangeSetImmediate():this.createSetTimeoutSetImmediate();var e=function t(e){delete t.instance.tasksByHandle[e]};e.instance=this,this.clearImmediate=e}}return t.prototype.identify=function(t){return this.root.Object.prototype.toString.call(t)},t.prototype.canUseProcessNextTick=function(){return"[object process]"===this.identify(this.root.process)},t.prototype.canUseMessageChannel=function(){return Boolean(this.root.MessageChannel)},t.prototype.canUseReadyStateChange=function(){var t=this.root.document;return Boolean(t&&"onreadystatechange"in t.createElement("script"))},t.prototype.canUsePostMessage=function(){var t=this.root;if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}return!1},t.prototype.partiallyApplied=function(t){for(var e=[],n=1;n=0}},1856:function(t,e){"use strict";e.isObject=function(t){return null!=t&&"object"==typeof t}},35130:function(t,e){"use strict";e.isPromise=function(t){return t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}},41503:function(t,e){"use strict";e.isScheduler=function(t){return t&&"function"==typeof t.schedule}},68668:function(t,e){"use strict";e.noop=function(){}},67239:function(t,e){"use strict";e.not=function(t,e){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=t,n.thisArg=e,n}},10142:function(t,e,n){"use strict";var i=n(68668);function r(t){return t?1===t.length?t[0]:function(e){return t.reduce(function(t,e){return e(t)},e)}:i.noop}e.pipe=function(){for(var t=[],e=0;e=n?{done:!0}:{done:!1,value:t[i++]}})},e.empty=function(){var t=new e(null);return t.done=!0,t},e.is=function(t){return t instanceof e||"object"==typeof t&&null!==t&&"function"==typeof t.next},t.exports=e},97310:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.isMobile=function(){return void 0!==r.window.orientation},e.default=function(t){if(!t&&!(0,s.default)())return"Node";if((0,o.default)(t))return"Electron";var e="undefined"!=typeof navigator?navigator:{},n=t||e.userAgent||"";if(n.indexOf("Edge")>-1)return"Edge";var i=-1!==n.indexOf("MSIE "),a=-1!==n.indexOf("Trident/");return i||a?"IE":r.window.chrome?"Chrome":r.window.safari?"Safari":r.window.mozInnerScreenX?"Firefox":"Unknown"};var r=n(41151),s=i(n(61602)),o=i(n(22344))},41151:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.console=e.process=e.document=e.global=e.window=e.self=void 0;var r=i(n(34321)),s={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&process};e.self=s.self||s.window||s.global,e.window=s.window||s.self||s.global,e.global=s.global||s.self||s.window,e.document=s.document||{},e.process=s.process||{};var o=console;e.console=o},84761:function(t,e,n){"use strict";var i=n(61948),r=n(34321);Object.defineProperty(e,"CO",{enumerable:!0,get:function(){return s.global}}),Object.defineProperty(e,"jU",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"qs",{enumerable:!0,get:function(){return a.default}});var s=n(41151),o=c(n(61602)),a=c(n(97310));i(n(22344));function l(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(l=function(t){return t?n:e})(t)}function c(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var n=l(e);if(n&&n.has(t))return n.get(t);var i={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in t)if("default"!==o&&Object.prototype.hasOwnProperty.call(t,o)){var a=s?Object.getOwnPropertyDescriptor(t,o):null;a&&(a.get||a.set)?Object.defineProperty(i,o,a):i[o]=t[o]}return i.default=t,n&&n.set(t,i),i}},61602:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=o,e.isBrowserMainThread=function(){return o()&&"undefined"!=typeof document};var r=i(n(34321)),s=i(n(22344));function o(){return!("object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&"[object process]"===String(process)&&!process.browser)||(0,s.default)()}},22344:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){if("undefined"!=typeof window&&"object"===(0,r.default)(window.process)&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"===(0,r.default)(process.versions)&&Boolean(process.versions.electron))return!0;var e="object"===("undefined"==typeof navigator?"undefined":(0,r.default)(navigator))&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)};var r=i(n(34321))},86991:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(14180),e),r(n(75103),e),r(n(48965),e),r(n(32595),e),r(n(82417),e),r(n(92451),e),r(n(17735),e)},14180:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BlankNode=void 0,e.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},75103:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DataFactory=void 0;const i=n(14180),r=n(48965),s=n(32595),o=n(82417),a=n(92451),l=n(17735);let c=0;e.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},48965:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DefaultGraph=void 0;class n{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}e.DefaultGraph=n,n.INSTANCE=new n},32595:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Literal=void 0;const i=n(82417);class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}e.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},82417:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NamedNode=void 0,e.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},92451:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Quad=void 0,e.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},17735:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Variable=void 0,e.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},31609:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.getSupportedJavaScriptPrimitives=e.getSupportedRdfDatatypes=e.getTermRaw=e.toRdf=e.fromRdf=void 0;const s=n(86991),o=n(9938),a=n(66060);r(n(9938),e),r(n(88871),e),r(n(66060),e);const l=new s.DataFactory,c=new a.Translator;function u(t,e){return c.fromRdf(t,e)}c.registerHandler(new o.TypeHandlerString,o.TypeHandlerString.TYPES.map(t=>l.namedNode(t)),["string"]),c.registerHandler(new o.TypeHandlerBoolean,[o.TypeHandlerBoolean.TYPE].map(t=>l.namedNode(t)),["boolean"]),c.registerHandler(new o.TypeHandlerNumberDouble,o.TypeHandlerNumberDouble.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerNumberInteger,o.TypeHandlerNumberInteger.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerDate,o.TypeHandlerDate.TYPES.map(t=>l.namedNode(t)),["object"]),e.fromRdf=u,e.toRdf=function(t,e){return e&&"namedNode"in e&&(e={dataFactory:e}),(e=e||{})&&!e.dataFactory&&(e.dataFactory=l),c.toRdf(t,e)},e.getTermRaw=function(t,e){return"Literal"===t.termType?u(t,e):t.value},e.getSupportedRdfDatatypes=function(){return c.getSupportedRdfDatatypes()},e.getSupportedJavaScriptPrimitives=function(){return c.getSupportedJavaScriptPrimitives()}},88871:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0})},66060:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Translator=void 0,e.Translator=class{constructor(){this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}static incorrectRdfDataType(t){throw new Error(`Invalid RDF ${t.datatype.value} value: '${t.value}'`)}registerHandler(t,e,n){for(const i of e)this.supportedRdfDatatypes.push(i),this.fromRdfHandlers[i.value]=t;for(const i of n){let e=this.toRdfHandlers[i];e||(this.toRdfHandlers[i]=e=[]),e.push(t)}}fromRdf(t,e){const n=this.fromRdfHandlers[t.datatype.value];return n?n.fromRdf(t,e):t.value}toRdf(t,e){const n=this.toRdfHandlers[typeof t];if(n)for(const i of n){const n=i.toRdf(t,e);if(n)return n}throw new Error(`Invalid JavaScript value: '${t}'`)}getSupportedRdfDatatypes(){return this.supportedRdfDatatypes}getSupportedJavaScriptPrimitives(){return Object.keys(this.toRdfHandlers)}}},80727:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerBoolean=void 0;const i=n(66060);class r{fromRdf(t,e){switch(t.value){case"true":return!0;case"false":return!1;case"1":return!0;case"0":return!1}return e&&i.Translator.incorrectRdfDataType(t),!1}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t?"true":"false",e||n.namedNode(r.TYPE))}}e.TypeHandlerBoolean=r,r.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},52525:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerDate=void 0;const i=n(66060);class r{fromRdf(t,e){switch(e&&!t.value.match(r.VALIDATORS[t.datatype.value.substr(33,t.datatype.value.length)])&&i.Translator.incorrectRdfDataType(t),t.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(t.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":const e=t.value.split("-");return new Date(0,parseInt(e[0],10)-1,parseInt(e[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(t.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(t.value+"-01");default:return new Date(t.value)}}toRdf(t,{datatype:e,dataFactory:n}){if(e=e||n.namedNode(r.TYPES[0]),!(t instanceof Date))return null;const i=t;let s;switch(e.value){case"http://www.w3.org/2001/XMLSchema#gDay":s=String(i.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":s=i.getUTCMonth()+1+"-"+i.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":s=String(i.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":s=i.getUTCFullYear()+"-"+(i.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":s=i.toISOString().replace(/T.*$/,"");break;default:s=i.toISOString()}return n.literal(s,e)}}e.TypeHandlerDate=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],r.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},38554:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberDouble=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseFloat(t.value);return e&&isNaN(n)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return e=e||n.namedNode(r.TYPES[0]),isNaN(t)?n.literal("NaN",e):isFinite(t)?t%1==0?null:n.literal(t.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),e):n.literal(t>0?"INF":"-INF",e)}}e.TypeHandlerNumberDouble=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},37750:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberInteger=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseInt(t.value,10);return e&&(isNaN(n)||t.value.indexOf(".")>=0)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(String(t),e||n.namedNode(t<=r.MAX_INT&&t>=r.MIN_INT?r.TYPES[0]:r.TYPES[1]))}}e.TypeHandlerNumberInteger=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],r.MAX_INT=2147483647,r.MIN_INT=-2147483648},14608:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerString=void 0;class n{fromRdf(t){return t.value}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t,e)}}e.TypeHandlerString=n,n.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},9938:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(80727),e),r(n(52525),e),r(n(38554),e),r(n(37750),e),r(n(14608),e)},93640:function(t,e,n){"use strict";var i={};n.r(i),n.d(i,{decode:function(){return eL},encode:function(){return iL}});var r={};n.r(r),n.d(r,{decode:function(){return cL},encode:function(){return hL}});var s={};n.r(s),n.d(s,{decode:function(){return dL},encode:function(){return fL}});var o={};function a(t){return"function"==typeof t}n.r(o),n.d(o,{decode:function(){return mL},encode:function(){return yL}});let l=!1;const c={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 l&&console.log("RxJS: Back to a better error behavior. Thank you. <3");l=t},get useDeprecatedSynchronousErrorHandling(){return l}};function u(t){setTimeout(()=>{throw t},0)}const h={closed:!0,next(t){},error(t){if(c.useDeprecatedSynchronousErrorHandling)throw t;u(t)},complete(){}},d=Array.isArray||(t=>t&&"number"==typeof t.length);function p(t){return null!==t&&"object"==typeof t}const f=(()=>{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})();class g{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:e,_ctorUnsubscribe:n,_unsubscribe:i,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,e instanceof g)e.remove(this);else if(null!==e)for(let a=0;at.concat(e instanceof f?e.errors:e),[])}g.EMPTY=((m=new g).closed=!0,m);const y="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class v extends g{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=h;break;case 1:if(!t){this.destination=h;break}if("object"==typeof t){t instanceof v?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[y](){return this}static create(t,e,n){const i=new v(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 _ extends v{constructor(t,e,n,i){super(),this._parentSubscriber=t;let r,s=this;a(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==h&&(s=Object.create(e),a(s.unsubscribe)&&this.add(s.unsubscribe.bind(s)),s.unsubscribe=this.unsubscribe.bind(this))),this._context=s,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;c.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}=c;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):u(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;u(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);c.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(),c.useDeprecatedSynchronousErrorHandling)throw n;u(n)}}__tryOrSetError(t,e,n){if(!c.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return c.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(u(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const w="function"==typeof Symbol&&Symbol.observable||"@@observable";function x(t){return t}function S(...t){return E(t)}function E(t){return 0===t.length?x:1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}}let C=(()=>{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,r=function(t,e,n){if(t){if(t instanceof v)return t;if(t[y])return t[y]()}return t||e||n?new v(t,e,n):new v(h)}(t,e,n);if(r.add(i?i.call(r,this.source):this.source||c.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),c.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){c.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 v?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=O(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(r){n(r),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[w](){return this}pipe(...t){return 0===t.length?this:E(t)(this)}toPromise(t){return new(t=O(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function O(t){if(t||(t=c.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const T=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class k extends g{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 A extends v{constructor(t){super(t),this.destination=t}}let P=(()=>{class t extends C{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[y](){return new A(this)}lift(t){const e=new M(this,this);return e.operator=t,e}next(t){if(this.closed)throw new T;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let r=0;rnew M(t,e),t})();class M extends P{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):g.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}function D(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 R(t,e))}}class R{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new N(t,this.project,this.thisArg))}}class N extends v{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)}}const L=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function B(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const V=t=>{if(t&&"function"==typeof t[w])return(t=>e=>{const n=t[w]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)})(t);if(F(t))return L(t);if(B(t))return(t=>e=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,u),e))(t);if(t&&"function"==typeof t[j])return(t=>e=>{const n=t[j]();for(;;){let t;try{t=n.next()}catch(i){return e.error(i),e}if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e})(t);{const e=`You provided ${p(t)?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`;throw new TypeError(e)}};function z(t,e){return new C(n=>{const i=new g;let r=0;return i.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||i.add(this.schedule())):n.complete()})),i})}function U(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[w]}(t))return function(t,e){return new C(n=>{const i=new g;return i.add(e.schedule(()=>{const r=t[w]();i.add(r.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(B(t))return function(t,e){return new C(n=>{const i=new g;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(F(t))return z(t,e);if(function(t){return t&&"function"==typeof t[j]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new C(n=>{const i=new g;let r;return i.add(()=>{r&&"function"==typeof r.return&&r.return()}),i.add(e.schedule(()=>{r=t[j](),i.add(e.schedule(function(){if(n.closed)return;let t,e;try{const n=r.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 C?t:new C(V(t))}class H extends v{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class $ extends v{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function G(t,e){if(e.closed)return;if(t instanceof C)return t.subscribe(e);let n;try{n=V(t)(e)}catch(i){e.error(i)}return n}function W(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(W((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new X(t,this.project,this.concurrent))}}class X extends ${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(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Y(t=Number.POSITIVE_INFINITY){return W(x,t)}function K(t,e){return e?z(t,e):new C(L(t))}function Q(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return I(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 C?t[0]:Y(e)(K(t,n))}function Z(){return function(t){return t.lift(new J(t))}}class J{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new tt(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r}}class tt extends v{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 et extends C{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 g,t.add(this.source.subscribe(new it(this.getSubject(),this))),t.closed&&(this._connection=null,t=g.EMPTY)),t}refCount(){return Z()(this)}}const nt=(()=>{const t=et.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 it extends A{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 rt(t,e){return function(n){let i;if(i="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new st(i,e));const r=Object.create(n,nt);return r.source=n,r.subjectFactory=i,r}}class st{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,i=this.subjectFactory(),r=n(i).subscribe(t);return r.add(e.subscribe(i)),r}}function ot(){return new P}function at(){return t=>Z()(rt(ot)(t))}function lt(t){for(let e in t)if(t[e]===lt)return e;throw Error("Could not find renamed property on target object.")}function ct(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ut(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(ut).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 ht(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const dt=lt({__forward_ref__:lt});function pt(t){return t.__forward_ref__=pt,t.toString=function(){return ut(this())},t}function ft(t){return gt(t)?t():t}function gt(t){return"function"==typeof t&&t.hasOwnProperty(dt)&&t.__forward_ref__===pt}class mt extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function bt(t){return"string"==typeof t?t:null==t?"":String(t)}function yt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():bt(t)}function vt(t,e){const n=e?` in ${e}`:"";throw new mt("201",`No provider for ${yt(t)} found${n}`)}function _t(t,e){null==t&&function(t,e,n,i){throw new Error(`ASSERTION ERROR: ${t}`+(null==i?"":` [Expected=> ${n} ${i} ${e} <=Actual]`))}(e,t,null,"!=")}function xt(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function St(t){return{providers:t.providers||[],imports:t.imports||[]}}function Et(t){return Ct(t,Tt)||Ct(t,At)}function Ct(t,e){return t.hasOwnProperty(e)?t[e]:null}function Ot(t){return t&&(t.hasOwnProperty(kt)||t.hasOwnProperty(Pt))?t[kt]:null}const Tt=lt({"\u0275prov":lt}),kt=lt({"\u0275inj":lt}),At=lt({ngInjectableDef:lt}),Pt=lt({ngInjectorDef:lt});var Mt=(()=>((Mt=Mt||{})[Mt.Default=0]="Default",Mt[Mt.Host=1]="Host",Mt[Mt.Self=2]="Self",Mt[Mt.SkipSelf=4]="SkipSelf",Mt[Mt.Optional=8]="Optional",Mt))();let It;function Dt(t){const e=It;return It=t,e}function Rt(t,e,n){const i=Et(t);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&Mt.Optional?null:void 0!==e?e:void vt(ut(t),"Injector")}function Nt(t){return{toString:t}.toString()}var Lt=(()=>((Lt=Lt||{})[Lt.OnPush=0]="OnPush",Lt[Lt.Default=1]="Default",Lt))(),jt=(()=>((jt=jt||{})[jt.Emulated=0]="Emulated",jt[jt.None=2]="None",jt[jt.ShadowDom=3]="ShadowDom",jt))();const Ft="undefined"!=typeof globalThis&&globalThis,Bt="undefined"!=typeof window&&window,Vt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,zt="undefined"!=typeof global&&global,Ut=Ft||zt||Bt||Vt,Ht={},$t=[],Gt=lt({"\u0275cmp":lt}),Wt=lt({"\u0275dir":lt}),qt=lt({"\u0275pipe":lt}),Xt=lt({"\u0275mod":lt}),Yt=lt({"\u0275loc":lt}),Kt=lt({"\u0275fac":lt}),Qt=lt({__NG_ELEMENT_ID__:lt});let Zt=0;function Jt(t){return Nt(()=>{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===Lt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||$t,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||jt.Emulated,id:"c",styles:t.styles||$t,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,r=t.features,s=t.pipes;return n.id+=Zt++,n.inputs=re(t.inputs,e),n.outputs=re(t.outputs),r&&r.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(te):null,n.pipeDefs=s?()=>("function"==typeof s?s():s).map(ee):null,n})}function te(t){return ae(t)||function(t){return t[Wt]||null}(t)}function ee(t){return function(t){return t[qt]||null}(t)}const ne={};function ie(t){return Nt(()=>{const e={type:t.type,bootstrap:t.bootstrap||$t,declarations:t.declarations||$t,imports:t.imports||$t,exports:t.exports||$t,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&(ne[t.id]=t.type),e})}function re(t,e){if(null==t)return Ht;const n={};for(const i in t)if(t.hasOwnProperty(i)){let r=t[i],s=r;Array.isArray(r)&&(s=r[1],r=r[0]),n[r]=i,e&&(e[r]=s)}return n}const se=Jt;function oe(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function ae(t){return t[Gt]||null}function le(t,e){const n=t[Xt]||null;if(!n&&!0===e)throw new Error(`Type ${ut(t)} does not have '\u0275mod' property.`);return n}function ce(t){return Array.isArray(t)&&"object"==typeof t[1]}function ue(t){return Array.isArray(t)&&!0===t[1]}function he(t){return 0!=(8&t.flags)}function de(t){return 2==(2&t.flags)}function pe(t){return 1==(1&t.flags)}function fe(t){return null!==t.template}function ge(t){return 0!=(512&t[2])}function me(t,e){return t.hasOwnProperty(Kt)?t[Kt]:null}class be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function ye(){return ve}function ve(t){return t.type.prototype.ngOnChanges&&(t.setInput=we),_e}function _e(){const t=Se(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===Ht)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function we(t,e,n,i){const r=Se(t)||function(t,e){return t[xe]=e}(t,{previous:Ht,current:null}),s=r.current||(r.current={}),o=r.previous,a=this.declaredInputs[n],l=o[a];s[a]=new be(l&&l.currentValue,e,o===Ht),t[i]=e}ye.ngInherit=!0;const xe="__ngSimpleChanges__";function Se(t){return t[xe]||null}const Ee="http://www.w3.org/2000/svg";let Ce;function Oe(){return void 0!==Ce?Ce:"undefined"!=typeof document?document:void 0}function Te(t){return!!t.listen}const ke={createRenderer:(t,e)=>Oe()};function Ae(t){for(;Array.isArray(t);)t=t[0];return t}function Pe(t,e){return Ae(e[t])}function Me(t,e){return Ae(e[t.index])}function Ie(t,e){return t.data[e]}function De(t,e){return t[e]}function Re(t,e){const n=e[t];return ce(n)?n:n[0]}function Ne(t){return 4==(4&t[2])}function Le(t){return 128==(128&t[2])}function je(t,e){return null==e?null:t[e]}function Fe(t){t[18]=0}function Be(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 Ve={lFrame:dn(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function ze(){return Ve.bindingsEnabled}function Ue(){return Ve.lFrame.lView}function He(){return Ve.lFrame.tView}function $e(t){return Ve.lFrame.contextLView=t,t[8]}function Ge(){let t=We();for(;null!==t&&64===t.type;)t=t.parent;return t}function We(){return Ve.lFrame.currentTNode}function qe(t,e){const n=Ve.lFrame;n.currentTNode=t,n.isParent=e}function Xe(){return Ve.lFrame.isParent}function Ye(){Ve.lFrame.isParent=!1}function Ke(){return Ve.isInCheckNoChangesMode}function Qe(t){Ve.isInCheckNoChangesMode=t}function Ze(){const t=Ve.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function Je(){return Ve.lFrame.bindingIndex}function tn(){return Ve.lFrame.bindingIndex++}function en(t){const e=Ve.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function nn(t,e){const n=Ve.lFrame;n.bindingIndex=n.bindingRootIndex=t,rn(e)}function rn(t){Ve.lFrame.currentDirectiveIndex=t}function sn(t){const e=Ve.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}function on(){return Ve.lFrame.currentQueryIndex}function an(t){Ve.lFrame.currentQueryIndex=t}function ln(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function cn(t,e,n){if(n&Mt.SkipSelf){let i=e,r=t;for(;!(i=i.parent,null!==i||n&Mt.Host||(i=ln(r),null===i||(r=r[15],10&i.type))););if(null===i)return!1;e=i,t=r}const i=Ve.lFrame=hn();return i.currentTNode=e,i.lView=t,!0}function un(t){const e=hn(),n=t[1];Ve.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function hn(){const t=Ve.lFrame,e=null===t?null:t.child;return null===e?dn(t):e}function dn(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function pn(){const t=Ve.lFrame;return Ve.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const fn=pn;function gn(){const t=pn();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function mn(){return Ve.lFrame.selectedIndex}function bn(t){Ve.lFrame.selectedIndex=t}function yn(){const t=Ve.lFrame;return Ie(t.tView,t.selectedIndex)}function vn(){Ve.lFrame.currentNamespace=Ee}function _n(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[a]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e){t[2]+=2048;try{s.call(o)}finally{}}}else try{s.call(o)}finally{}}class On{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Tn(t,e,n){const i=Te(t);let r=0;for(;re){o=s-1;break}}}for(;s>16}(t),i=e;for(;n>0;)i=i[15],n--;return i}let Nn=!0;function Ln(t){const e=Nn;return Nn=t,e}let jn=0;function Fn(t,e){const n=Vn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Bn(i.data,t),Bn(e,null),Bn(i.blueprint,null));const r=zn(t,e),s=t.injectorIndex;if(In(r)){const t=Dn(r),n=Rn(r,e),i=n[1].data;for(let r=0;r<8;r++)e[s+r]=n[t+r]|i[t+r]}return e[s+8]=r,s}function Bn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Vn(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=0,i=null,r=e;for(;null!==r;){const t=r[1],e=t.type;if(i=2===e?t.declTNode:1===e?r[6]:null,null===i)return-1;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return-1}function Un(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Qt)&&(i=n[Qt]),null==i&&(i=n[Qt]=jn++);const r=255&i;e.data[t+(r>>5)]|=1<=0?255&e:qn:e}(n);if("function"==typeof s){if(!cn(e,t,i))return i&Mt.Host?Hn(r,n,i):$n(e,n,i,r);try{const t=s(i);if(null!=t||i&Mt.Optional)return t;vt(n)}finally{fn()}}else if("number"==typeof s){let r=null,o=Vn(t,e),a=-1,l=i&Mt.Host?e[16][6]:null;for((-1===o||i&Mt.SkipSelf)&&(a=-1===o?zn(t,e):e[o+8],-1!==a&&Zn(i,!1)?(r=e[1],o=Dn(a),e=Rn(a,e)):o=-1);-1!==o;){const t=e[1];if(Qn(s,o,t.data)){const t=Xn(o,e,n,r,i,l);if(t!==Wn)return t}a=e[o+8],-1!==a&&Zn(i,e[1].data[o+8]===l)&&Qn(s,o,e)?(r=t,o=Dn(a),e=Rn(a,e)):o=-1}}}return $n(e,n,i,r)}const Wn={};function qn(){return new Jn(Ge(),Ue())}function Xn(t,e,n,i,r,s){const o=e[1],a=o.data[t+8],l=Yn(a,o,n,null==i?de(a)&&Nn:i!=o&&0!=(3&a.type),r&Mt.Host&&s===a);return null!==l?Kn(e,o,l,a):Wn}function Yn(t,e,n,i,r){const s=t.providerIndexes,o=e.data,a=1048575&s,l=t.directiveStart,c=s>>20,u=r?a+c:t.directiveEnd;for(let h=i?a:a+c;h=l&&t.type===n)return h}if(r){const t=o[l];if(t&&fe(t)&&t.type===n)return l}return null}function Kn(t,e,n,i){let r=t[n];const s=e.data;if(function(t){return t instanceof On}(r)){const o=r;o.resolving&&function(t,e){throw new mt("200",`Circular dependency in DI detected for ${t}`)}(yt(s[n]));const a=Ln(o.canSeeViewProviders);o.resolving=!0;const l=o.injectImpl?Dt(o.injectImpl):null;cn(t,i,Mt.Default);try{r=t[n]=o.factory(void 0,s,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:r,ngDoCheck:s}=e.type.prototype;if(i){const i=ve(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,r),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s))}(n,s[n],e)}finally{null!==l&&Dt(l),Ln(a),o.resolving=!1,fn()}}return r}function Qn(t,e,n){return!!(n[e+(t>>5)]&1<{const e=t.prototype.constructor,n=e[Kt]||ei(e),i=Object.prototype;let r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){const t=r[Kt]||ei(r);if(t&&t!==n)return t;r=Object.getPrototypeOf(r)}return t=>new t})}function ei(t){return gt(t)?()=>{const e=ei(ft(t));return e&&e()}:me(t)}function ni(t){return function(t,e){if("class"===e)return t.classes;if("style"===e)return t.styles;const n=t.attrs;if(n){const t=n.length;let i=0;for(;i{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return i.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,i){const r=t.hasOwnProperty(ri)?t[ri]:Object.defineProperty(t,ri,{value:[]})[ri];for(;r.length<=i;)r.push(null);return(r[i]=r[i]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r})}class oi{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=xt({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const ai=Function;function li(t,e){void 0===e&&(e=t);for(let n=0;nArray.isArray(t)?ci(t,e):e(t))}function ui(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function hi(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function di(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let r=t.length;if(r==e)t.push(n,i);else if(1===r)t.push(i,t[0]),t[0]=n;else{for(r--,t.push(t[r-1],t[r]);r>e;)t[r]=t[r-2],r--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function fi(t,e){const n=gi(t,e);if(n>=0)return t[1|n]}function gi(t,e){return function(t,e,n){let i=0,r=t.length>>n;for(;r!==i;){const s=i+(r-i>>1),o=t[s<e?r=s:i=s+1}return~(r< ");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):ut(i)))}r=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${r}]: ${t.replace(vi,"\n ")}`}("\n"+t.message,r,n,i),t.ngTokenPath=r,t[yi]=null,t}const Mi=ki(si("Inject",t=>({token:t})),-1),Ii=ki(si("Optional"),8),Di=ki(si("SkipSelf"),4);let Ri,Ni;function Li(t){var e;return(null===(e=function(){if(void 0===Ri&&(Ri=null,Ut.trustedTypes))try{Ri=Ut.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return Ri}())||void 0===e?void 0:e.createHTML(t))||t}function ji(){if(void 0===Ni&&(Ni=null,Ut.trustedTypes))try{Ni=Ut.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(m){}return Ni}function Fi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createHTML(t))||t}function Bi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createScriptURL(t))||t}class Vi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class zi extends Vi{getTypeName(){return"HTML"}}class Ui extends Vi{getTypeName(){return"Style"}}class Hi extends Vi{getTypeName(){return"Script"}}class $i extends Vi{getTypeName(){return"URL"}}class Gi extends Vi{getTypeName(){return"ResourceURL"}}function Wi(t){return t instanceof Vi?t.changingThisBreaksApplicationSecurity:t}function qi(t,e){const n=Xi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see https://g.co/ng/security#xss)`)}return n===e}function Xi(t){return t instanceof Vi&&t.getTypeName()||null}class Yi{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{const e=(new window.DOMParser).parseFromString(Li(t),"text/html").body;return null===e?this.inertDocumentHelper.getInertBodyElement(t):(e.removeChild(e.firstChild),e)}catch(e){return null}}}class Ki{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=Li(t),e;const n=this.inertDocument.createElement("body");return n.innerHTML=Li(t),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0Ji(t.trim())).join(", ")}function er(t){const e={};for(const n of t.split(","))e[n]=!0;return e}function nr(...t){const e={};for(const n of t)for(const t in n)n.hasOwnProperty(t)&&(e[t]=!0);return e}const ir=er("area,br,col,hr,img,wbr"),rr=er("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),sr=er("rp,rt"),or=nr(ir,nr(rr,er("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),nr(sr,er("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),nr(sr,rr)),ar=er("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),lr=er("srcset"),cr=nr(ar,lr,er("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),er("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),ur=er("script,style,template");class hr{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let e=t.firstChild,n=!0;for(;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let t=this.checkClobberedElement(e,e.nextSibling);if(t){e=t;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")}startElement(t){const e=t.nodeName.toLowerCase();if(!or.hasOwnProperty(e))return this.sanitizedSomething=!0,!ur.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);const n=t.attributes;for(let i=0;i"),!0}endElement(t){const e=t.nodeName.toLowerCase();or.hasOwnProperty(e)&&!ir.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(fr(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 dr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,pr=/([^\#-~ |!])/g;function fr(t){return t.replace(/&/g,"&").replace(dr,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(pr,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let gr;function mr(t,e){let n=null;try{gr=gr||function(t){const e=new Ki(t);return function(){try{return!!(new window.DOMParser).parseFromString(Li(""),"text/html")}catch(t){return!1}}()?new Yi(e):e}(t);let i=e?String(e):"";n=gr.getInertBodyElement(i);let r=5,s=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=s,s=n.innerHTML,n=gr.getInertBodyElement(i)}while(i!==s);return Li((new hr).sanitizeChildren(br(n)||n))}finally{if(n){const t=br(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function br(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var yr=(()=>((yr=yr||{})[yr.NONE=0]="NONE",yr[yr.HTML=1]="HTML",yr[yr.STYLE=2]="STYLE",yr[yr.SCRIPT=3]="SCRIPT",yr[yr.URL=4]="URL",yr[yr.RESOURCE_URL=5]="RESOURCE_URL",yr))();function vr(t){const e=xr();return e?Fi(e.sanitize(yr.HTML,t)||""):qi(t,"HTML")?Fi(Wi(t)):mr(Oe(),bt(t))}function _r(t){const e=xr();return e?e.sanitize(yr.URL,t)||"":qi(t,"URL")?Wi(t):Ji(bt(t))}function wr(t){const e=xr();if(e)return Bi(e.sanitize(yr.RESOURCE_URL,t)||"");if(qi(t,"ResourceURL"))return Bi(Wi(t));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function xr(){const t=Ue();return t&&t[12]}const Sr="__ngContext__";function Er(t,e){t[Sr]=e}function Cr(t){const e=function(t){return t[Sr]||null}(t);return e?Array.isArray(e)?e:e.lView:null}function Or(t){return t.ngOriginalError}function Tr(t,...e){t.error(...e)}class Ar{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t&&t.ngErrorLogger||Tr}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?function(t){return t.ngDebugContext}(t)||this._findContext(Or(t)):null}_findOriginalError(t){let e=t&&Or(t);for(;e&&Or(e);)e=Or(e);return e||null}}const Pr=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Ut))();function Mr(t){return t.ownerDocument.defaultView}function Ir(t){return t.ownerDocument}function Dr(t){return t instanceof Function?t():t}var Rr=(()=>((Rr=Rr||{})[Rr.Important=1]="Important",Rr[Rr.DashCase=2]="DashCase",Rr))();function Nr(t,e){return undefined(t,e)}function Lr(t){const e=t[3];return ue(e)?e[3]:e}function jr(t){return Br(t[13])}function Fr(t){return Br(t[4])}function Br(t){for(;null!==t&&!ue(t);)t=t[4];return t}function Vr(t,e,n,i,r){if(null!=i){let s,o=!1;ue(i)?s=i:ce(i)&&(o=!0,i=i[0]);const a=Ae(i);0===t&&null!==n?null==r?Xr(e,n,a):qr(e,n,a,r||null,!0):1===t&&null!==n?qr(e,n,a,r||null,!0):2===t?function(t,e,n){const i=Kr(t,e);i&&function(t,e,n,i){Te(t)?t.removeChild(e,n,i):e.removeChild(n)}(t,i,e,n)}(e,a,o):3===t&&e.destroyNode(a),null!=s&&function(t,e,n,i,r){const s=n[7];s!==Ae(n)&&Vr(e,t,i,s,r);for(let o=10;o0&&(t[n-1][4]=i[4]);const s=hi(t,10+e);!function(t,e){rs(t,e,e[11],2,null,null),e[0]=null,e[6]=null}(i[1],i);const o=s[19];null!==o&&o.detachView(s[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function $r(t,e){if(!(256&e[2])){const n=e[11];Te(n)&&n.destroyNode&&rs(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Gr(t[1],t);for(;e;){let n=null;if(ce(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)ce(e)&&Gr(e[1],e),e=e[3];null===e&&(e=t),ce(e)&&Gr(e[1],e),n=e&&e[4]}e=n}}(e)}}function Gr(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?i[r=l]():i[r=-l].unsubscribe(),s+=2}else{const t=i[r=n[s+1]];n[s].call(t)}if(null!==i){for(let t=r+1;ts?"":r[u+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==ls(e,c,0)||2&i&&c!==t){if(fs(i))return!1;o=!0}}}}else{if(!o&&!fs(i)&&!fs(l))return!1;if(o&&fs(l))continue;o=!1,i=l|1&i}}return fs(i)||o}function fs(t){return 0==(1&t)}function gs(t,e,n,i){if(null===e)return-1;let r=0;if(i||!n){let n=!1;for(;r-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?r+="."+o:4&i&&(r+=" "+o);else""!==r&&!fs(o)&&(e+=ys(s,r),r=""),i=o,s=s||!fs(i);n++}return""!==r&&(e+=ys(s,r)),e}const _s={};function ws(t){xs(He(),Ue(),mn()+t,Ke())}function xs(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&wn(e,i,n)}else{const i=t.preOrderHooks;null!==i&&xn(e,i,0,n)}bn(n)}function Ss(t,e){return t<<17|e<<2}function Es(t){return t>>17&32767}function Cs(t){return 2|t}function Os(t){return(131068&t)>>2}function Ts(t,e){return-131069&t|e<<2}function ks(t){return 1|t}function As(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&xs(t,e,20,Ke()),n(i,r)}finally{bn(s)}}function js(t,e,n){if(he(e)){const i=e.directiveEnd;for(let r=e.directiveStart;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=s&&n.push(s),n.push(i,r,o)}}function qs(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function Xs(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function Ys(t,e,n){if(n){if(e.exportAs)for(let i=0;i0&&ro(n)}}function ro(t){for(let n=jr(t);null!==n;n=Fr(n))for(let t=10;t0&&ro(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&ro(i)}}function so(t,e){const n=Re(e,t),i=n[1];(function(t,e){for(let n=e.length;nPromise.resolve(null))();function po(t){return t[7]||(t[7]=[])}function fo(t){return t.cleanup||(t.cleanup=[])}function go(t,e,n){return(null===t||fe(t))&&(n=function(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(n[e.index])),n[11]}function mo(t,e){const n=t[9],i=n?n.get(Ar,null):null;i&&i.handleError(e)}function bo(t,e,n,i,r){for(let s=0;sthis.processProvider(n,t,e)),ci([t],t=>this.processInjectorType(t,[],r)),this.records.set(_o,Mo(void 0,this));const s=this.records.get(xo);this.scope=null!=s?s.value:null,this.source=i||("object"==typeof t?null:ut(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=mi,n=Mt.Default){this.assertNotDestroyed();const i=Si(this),r=Dt(void 0);try{if(!(n&Mt.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=function(t){return"function"==typeof t||"object"==typeof t&&t instanceof oi}(t)&&Et(t);e=n&&this.injectableDefInScope(n)?Mo(Ao(t),So):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Mt.Self?Oo():this.parent).get(t,e=n&Mt.Optional&&e===mi?null:e)}catch(s){if("NullInjectorError"===s.name){if((s[yi]=s[yi]||[]).unshift(ut(t)),i)throw s;return Pi(s,t,"R3InjectorError",this.source)}throw s}finally{Dt(r),Si(i)}}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(ut(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=ft(t)))return!1;let i=Ot(t);const r=null==i&&t.ngModule||void 0,s=void 0===r?t:r,o=-1!==n.indexOf(s);if(void 0!==r&&(i=Ot(r)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(s);try{ci(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||$t))}}this.injectorDefTypes.add(s);const a=me(s)||(()=>new s);this.records.set(s,Mo(a,So));const l=i.providers;if(null!=l&&!o){const e=t;ci(l,t=>this.processProvider(t,e,l))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let i=Do(t=ft(t))?t:ft(t&&t.provide);const r=function(t,e,n){return Io(t)?Mo(void 0,t.useValue):Mo(Po(t),So)}(t);if(Do(t)||!0!==t.multi)this.records.get(i);else{let e=this.records.get(i);e||(e=Mo(void 0,So,!0),e.factory=()=>Ti(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,r)}hydrate(t,e){return e.value===So&&(e.value=Eo,e.value=e.factory()),"object"==typeof e.value&&e.value&&function(t){return null!==t&&"object"==typeof t&&"function"==typeof t.ngOnDestroy}(e.value)&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){if(!t.providedIn)return!1;const e=ft(t.providedIn);return"string"==typeof e?"any"===e||e===this.scope:this.injectorDefTypes.has(e)}}function Ao(t){const e=Et(t),n=null!==e?e.factory:me(t);if(null!==n)return n;if(t instanceof oi)throw new Error(`Token ${ut(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=di(e,"?");throw new Error(`Can't resolve all parameters for ${ut(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[Tt]||t[At]);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 Po(t,e,n){let i;if(Do(t)){const e=ft(t);return me(e)||Ao(e)}if(Io(t))i=()=>ft(t.useValue);else if(function(t){return!(!t||!t.useFactory)}(t))i=()=>t.useFactory(...Ti(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Ci(ft(t.useExisting));else{const e=ft(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return me(e)||Ao(e);i=()=>new e(...Ti(t.deps))}return i}function Mo(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Io(t){return null!==t&&"object"==typeof t&&wi in t}function Do(t){return"function"==typeof t}const Ro=function(t,e,n){return function(t,e=null,n=null,i){const r=To(t,e,n,i);return r._resolveInjectorDefTypes(),r}({name:n},e,t,n)};class No{static create(t,e){return Array.isArray(t)?Ro(t,e,""):Ro(t.providers,t.parent,t.name||"")}}function Lo(t,e){_n(Cr(t)[1],Ge())}function jo(t){let e=function(t){return Object.getPrototypeOf(t.prototype).constructor}(t.type),n=!0;const i=[t];for(;e;){let r;if(fe(t))r=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");r=e.\u0275dir}if(r){if(n){i.push(r);const e=t;e.inputs=Fo(t.inputs),e.declaredInputs=Fo(t.declaredInputs),e.outputs=Fo(t.outputs);const n=r.hostBindings;n&&zo(t,n);const s=r.viewQuery,o=r.contentQueries;if(s&&Bo(t,s),o&&Vo(t,o),ct(t.inputs,r.inputs),ct(t.declaredInputs,r.declaredInputs),ct(t.outputs,r.outputs),fe(r)&&r.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(r.data.animation)}}const e=r.features;if(e)for(let i=0;i=0;i--){const r=t[i];r.hostVars=e+=r.hostVars,r.hostAttrs=Pn(r.hostAttrs,n=Pn(n,r.hostAttrs))}}(i)}function Fo(t){return t===Ht?{}:t===$t?[]:t}function Bo(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Vo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,r)=>{e(t,i,r),n(t,i,r)}:e}function zo(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}No.THROW_IF_NOT_FOUND=mi,No.NULL=new wo,No.\u0275prov=xt({token:No,providedIn:"any",factory:()=>Ci(_o)}),No.__NG_ELEMENT_ID__=-1;let Uo=null;function Ho(){if(!Uo){const t=Ut.Symbol;if(t&&t.iterator)Uo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Ae(t[i.index])):i.index;if(Te(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const r=t.cleanup;if(null!=r)for(let s=0;sn?t[n]:null}"string"==typeof t&&(s+=2)}return null}(t,e,r,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=s,o.__ngLastListenerFn__=s,d=!1;else{s=ya(i,e,u,s,!1);const t=n.listen(f,r,s);h.push(s,t),c&&c.push(r,m,g,g+1)}}else s=ya(i,e,u,s,!0),f.addEventListener(r,s,o),h.push(s),c&&c.push(r,m,g,o)}else s=ya(i,e,u,s,!1);const p=i.outputs;let f;if(d&&null!==p&&(f=p[r])){const t=f.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ve.lFrame.contextLView))[8]}(t)}function _a(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 r=0;r=0}const Ta={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function ka(t){return t.substring(Ta.key,Ta.keyEnd)}function Aa(t){return t.substring(Ta.value,Ta.valueEnd)}function Pa(t,e){const n=Ta.textEnd;return n===e?-1:(e=Ta.keyEnd=function(t,e,n){for(;e32;)e++;return e}(t,Ta.key=e,n),Da(t,e,n))}function Ma(t,e){const n=Ta.textEnd;let i=Ta.key=Da(t,e,n);return n===i?-1:(i=Ta.keyEnd=function(t,e,n){let i;for(;e=65&&(-33&i)<=90||i>=48&&i<=57);)e++;return e}(t,i,n),i=Ra(t,i,n),i=Ta.value=Da(t,i,n),i=Ta.valueEnd=function(t,e,n){let i=-1,r=-1,s=-1,o=e,a=o;for(;o32&&(a=o),s=r,r=i,i=-33&l}return a}(t,i,n),Ra(t,i,n))}function Ia(t){Ta.key=0,Ta.keyEnd=0,Ta.value=0,Ta.valueEnd=0,Ta.textEnd=t.length}function Da(t,e,n){for(;e=0;n=Ma(e,n))qa(t,ka(e),Aa(e))}function Ba(t){Ua(pi,Va,t,!0)}function Va(t,e){for(let n=function(t){return Ia(t),Pa(t,Da(t,0,Ta.textEnd))}(e);n>=0;n=Pa(e,n))pi(t,ka(e),!0)}function za(t,e,n,i){const r=Ue(),s=He(),o=en(2);s.firstUpdatePass&&$a(s,t,o,i),e!==_s&&Xo(r,o,e)&&Xa(s,s.data[mn()],r,r[11],t,r[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=ut(Wi(t)))),t}(e,n),i,o)}function Ua(t,e,n,i){const r=He(),s=en(2);r.firstUpdatePass&&$a(r,null,s,i);const o=Ue();if(n!==_s&&Xo(o,s,n)){const a=r.data[mn()];if(Qa(a,i)&&!Ha(r,s)){let t=i?a.classesWithoutHost:a.stylesWithoutHost;null!==t&&(n=ht(t,n||"")),ia(r,a,o,n,i)}else!function(t,e,n,i,r,s,o,a){r===_s&&(r=$t);let l=0,c=0,u=0=t.expandoStartIndex}function $a(t,e,n,i){const r=t.data;if(null===r[n+1]){const s=r[mn()],o=Ha(t,n);Qa(s,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const r=sn(t);let s=i?e.residualClasses:e.residualStyles;if(null===r)0===(i?e.classBindings:e.styleBindings)&&(n=Wa(n=Ga(null,t,e,n,i),e.attrs,i),s=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==r)if(n=Ga(r,t,e,n,i),null===s){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==Os(i))return t[Es(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Ga(null,t,e,n[1],i),n=Wa(n,e.attrs,i),function(t,e,n,i){t[Es(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else s=function(t,e,n){let i;const r=e.directiveEnd;for(let s=1+e.directiveStylingLast;s0)&&(u=!0)}else c=n;if(r)if(0!==l){const e=Es(t[a+1]);t[i+1]=Ss(e,a),0!==e&&(t[e+1]=Ts(t[e+1],i)),t[a+1]=function(t,e){return 131071&t|e<<17}(t[a+1],i)}else t[i+1]=Ss(a,0),0!==a&&(t[a+1]=Ts(t[a+1],i)),a=i;else t[i+1]=Ss(l,0),0===a?a=i:t[l+1]=Ts(t[l+1],i),l=i;u&&(t[i+1]=Cs(t[i+1])),Ca(t,c,i,!0),Ca(t,c,i,!1),function(t,e,n,i,r){const s=r?t.residualClasses:t.residualStyles;null!=s&&"string"==typeof e&&gi(s,e)>=0&&(n[i+1]=ks(n[i+1]))}(e,c,t,i,s),o=Ss(a,l),s?e.classBindings=o:e.styleBindings=o}(r,s,e,n,o,i)}}function Ga(t,e,n,i,r){let s=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[r],s=Array.isArray(e),l=s?e[1]:e,c=null===l;let u=n[r+1];u===_s&&(u=c?$t:void 0);let h=c?fi(u,i):l===i?u:void 0;if(s&&!Ka(h)&&(h=fi(e,i)),Ka(h)&&(a=h,o))return a;const d=t[r+1];r=o?Es(d):Os(d)}if(null!==e){let t=s?e.residualClasses:e.residualStyles;null!=t&&(a=fi(t,i))}return a}function Ka(t){return void 0!==t}function Qa(t,e){return 0!=(t.flags&(e?16:32))}function Za(t,e=""){const n=Ue(),i=He(),r=t+20,s=i.firstCreatePass?Ms(i,r,1,e,null):i.data[r],o=n[r]=function(t,e){return Te(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Jr(i,n,o,s),qe(s,!1)}function Ja(t){return tl("",t,""),Ja}function tl(t,e,n){const i=Ue(),r=Qo(i,t,e,n);return r!==_s&&yo(i,mn(),r),tl}function el(t,e,n,i,r){const s=Ue(),o=function(t,e,n,i,r,s){const o=Yo(t,Je(),n,r);return en(2),o?e+bt(n)+i+bt(r)+s:_s}(s,t,e,n,i,r);return o!==_s&&yo(s,mn(),o),el}function nl(t,e,n){Ua(pi,Va,Qo(Ue(),t,e,n),!0)}function il(t,e,n){const i=Ue();return Xo(i,tn(),e)&&$s(He(),yn(),i,t,e,i[11],n,!0),il}function rl(t,e,n){const i=Ue();if(Xo(i,tn(),e)){const r=He(),s=yn();$s(r,s,i,t,e,go(sn(r.data),s,i),n,!0)}return rl}const sl=void 0;var ol=["en",[["a","p"],["AM","PM"],sl],[["AM","PM"],sl,sl],[["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"]],sl,[["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"]],sl,[["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}",sl,"{1} 'at' {0}",sl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){const e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let al={};function ll(t){return t in al||(al[t]=Ut.ng&&Ut.ng.common&&Ut.ng.common.locales&&Ut.ng.common.locales[t]),al[t]}var cl=(()=>((cl=cl||{})[cl.LocaleId=0]="LocaleId",cl[cl.DayPeriodsFormat=1]="DayPeriodsFormat",cl[cl.DayPeriodsStandalone=2]="DayPeriodsStandalone",cl[cl.DaysFormat=3]="DaysFormat",cl[cl.DaysStandalone=4]="DaysStandalone",cl[cl.MonthsFormat=5]="MonthsFormat",cl[cl.MonthsStandalone=6]="MonthsStandalone",cl[cl.Eras=7]="Eras",cl[cl.FirstDayOfWeek=8]="FirstDayOfWeek",cl[cl.WeekendRange=9]="WeekendRange",cl[cl.DateFormat=10]="DateFormat",cl[cl.TimeFormat=11]="TimeFormat",cl[cl.DateTimeFormat=12]="DateTimeFormat",cl[cl.NumberSymbols=13]="NumberSymbols",cl[cl.NumberFormats=14]="NumberFormats",cl[cl.CurrencyCode=15]="CurrencyCode",cl[cl.CurrencySymbol=16]="CurrencySymbol",cl[cl.CurrencyName=17]="CurrencyName",cl[cl.Currencies=18]="Currencies",cl[cl.Directionality=19]="Directionality",cl[cl.PluralCase=20]="PluralCase",cl[cl.ExtraData=21]="ExtraData",cl))();const ul="en-US";let hl=ul;function dl(t){_t(t,"Expected localeId to be defined"),"string"==typeof t&&(hl=t.toLowerCase().replace(/_/g,"-"))}function pl(t,e,n,i,r){if(t=ft(t),Array.isArray(t))for(let s=0;s>20;if(Do(t)||!t.multi){const i=new On(l,r,ea),p=ml(a,e,r?u:u+d,h);-1===p?(Un(Fn(c,o),s,a),fl(s,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=ml(a,e,u+d,h),f=ml(a,e,u,u+d),g=p>=0&&n[p],m=f>=0&&n[f];if(r&&!m||!r&&!g){Un(Fn(c,o),s,a);const u=function(t,e,n,i,r){const s=new On(t,n,ea);return s.multi=[],s.index=e,s.componentProviders=0,gl(s,r,i&&!n),s}(r?yl:bl,n.length,r,i,l);!r&&m&&(n[f].providerFactory=u),fl(s,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(u),o.push(u)}else fl(s,t,p>-1?p:f,gl(n[r?f:p],l,!r&&i));!r&&i&&m&&n[f].componentProviders++}}}function fl(t,e,n,i){const r=Do(e);if(r||function(t){return!!t.useClass}(e)){const s=(e.useClass||e).prototype.ngOnDestroy;if(s){const o=t.destroyHooks||(t.destroyHooks=[]);if(!r&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,s]):o[t+1].push(i,s)}else o.push(n,s)}}}function gl(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function ml(t,e,n,i){for(let r=n;r{n.providersResolver=(n,i)=>function(t,e,n){const i=He();if(i.firstCreatePass){const r=fe(t);pl(n,i.data,i.blueprint,r,!0),pl(e,i.data,i.blueprint,r,!1)}}(n,i?i(t):t,e)}}class wl{}const xl="ngComponent";class Sl{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${ut(t)}. Did you add it to @NgModule.entryComponents?`);return e[xl]=t,e}(t)}}class El{}function Cl(...t){}function Ol(t,e){return new kl(Me(t,e))}El.NULL=new Sl;const Tl=function(){return Ol(Ge(),Ue())};let kl=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=Tl,t})();function Al(t){return t instanceof kl?t.nativeElement:t}class Pl{}let Ml=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Il(),t})();const Il=function(){const t=Ue(),e=Re(Ge().index,t);return function(t){return t[11]}(ce(e)?e:t)};let Dl=(()=>{class t{}return t.\u0275prov=xt({token:t,providedIn:"root",factory:()=>null}),t})();class Rl{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Nl=new Rl("12.2.5");class Ll{constructor(){}supports(t){return Go(t)}create(t){return new Fl(t)}}const jl=(t,e)=>e;class Fl{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||jl}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,r=null;for(;e||n;){const s=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==r&&Object.is(r.trackById,i)?(s&&(r=this._verifyReinsertion(r,t,i,e)),Object.is(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,i,e),s=!0),r=r._next,e++}),this.length=e;return this._truncate(r),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;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=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,i)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,i)):t=this._addAfter(new Bl(e,n),r,i),t}_verifyReinsertion(t,e,n,i){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,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,r=t._nextRemoved;return null===i?this._removalsHead=r:i._nextRemoved=r,null===r?this._removalsTail=i:r._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 zl),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 zl),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 Bl{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 Vl{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 zl{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Vl,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 Ul(t,e,n){const i=t.previousIndex;if(null===i)return i;let r=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,r=n._next;return i&&(i._next=r),r&&(r._prev=i),n._next=null,n._prev=null,n}const n=new Gl(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 Gl{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}}function Wl(){return new ql([new Ll])}let ql=(()=>{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=>t.create(e,n||Wl()),deps:[[t,new Di,new Ii]]}}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 '${function(t){return t.name||typeof t}(t)}'`)}}return t.\u0275prov=xt({token:t,providedIn:"root",factory:Wl}),t})();function Xl(){return new Yl([new Hl])}let Yl=(()=>{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=>t.create(e,n||Xl()),deps:[[t,new Di,new Ii]]}}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=xt({token:t,providedIn:"root",factory:Xl}),t})();function Kl(t,e,n,i,r=!1){for(;null!==n;){const s=e[n.index];if(null!==s&&i.push(Ae(s)),ue(s))for(let t=10;t-1&&(Hr(t,n),hi(e,n))}this._attachedToViewContainer=!1}$r(this._lView[1],this._lView)}onDestroy(t){Us(this._lView[1],this._lView,null,t)}markForCheck(){ao(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){lo(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Qe(!0);try{lo(t,e,n)}finally{Qe(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function(t,e){rs(t,e,e[11],2,null,null)}(this._lView[1],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Zl extends Ql{constructor(t){super(t),this._view=t}detectChanges(){co(this._view)}checkNoChanges(){!function(t){Qe(!0);try{co(t)}finally{Qe(!1)}}(this._view)}get context(){return null}}const Jl=function(t){return function(t,e,n){if(de(t)&&!n){const n=Re(t.index,e);return new Ql(n,n)}return 47&t.type?new Ql(e[16],e):null}(Ge(),Ue(),16==(16&t))};let tc=(()=>{class t{}return t.__NG_ELEMENT_ID__=Jl,t})();const ec=[new Hl],nc=new ql([new Ll]),ic=new Yl(ec),rc=function(){return lc(Ge(),Ue())};let sc=(()=>{class t{}return t.__NG_ELEMENT_ID__=rc,t})();const oc=sc,ac=class extends oc{constructor(t,e,n){super(),this._declarationLView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=Ps(this._declarationLView,e,t,16,null,e.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];const i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Ds(e,n,t),new Ql(n)}};function lc(t,e){return 4&t.type?new ac(e,t,Ol(t,e)):null}class cc{}const uc=function(){return mc(Ge(),Ue())};let hc=(()=>{class t{}return t.__NG_ELEMENT_ID__=uc,t})();const dc=hc,pc=class extends dc{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=n}get element(){return Ol(this._hostTNode,this._hostLView)}get injector(){return new Jn(this._hostTNode,this._hostLView)}get parentInjector(){const t=zn(this._hostTNode,this._hostLView);if(In(t)){const e=Rn(t,this._hostLView),n=Dn(t);return new Jn(e[1].data[n+8],e)}return new Jn(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const e=fc(this._lContainer);return null!==e&&e[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,r){const s=n||this.parentInjector;if(!r&&null==t.ngModule&&s){const t=s.get(cc,null);t&&(r=t)}const o=t.create(s,i,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(function(t){return ue(t[3])}(n)){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new pc(e,e[6],e[3]);i.detach(i.indexOf(t))}}const r=this._adjustIndex(e),s=this._lContainer;!function(t,e,n,i){const r=10+i,s=n.length;i>0&&(n[r-1][4]=e),iPr});class wc extends wl{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=function(t){return t.map(vs).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return vc(this.componentDef.inputs)}get outputs(){return vc(this.componentDef.outputs)}create(t,e,n,i){const r=(i=i||this.ngModule)?function(t,e){return{get:(n,i,r)=>{const s=t.get(n,bc,r);return s!==bc||i===bc?s:e.get(n,i,r)}}}(t,i.injector):t,s=r.get(Pl,ke),o=r.get(Dl,null),a=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Te(t))return t.selectRootElement(e,n===jt.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):zr(s.createRenderer(null,this.componentDef),l,function(t){const e=t.toLowerCase();return"svg"===e?Ee:"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),u=this.componentDef.onPush?576:528,h=function(t,e){return{components:[],scheduler:t||Pr,clean:ho,playerHandler:e||null,flags:0}}(),d=zs(0,null,null,1,0,null,null,null,null,null),p=Ps(null,d,h,u,null,null,s,a,o,r);let f,g;un(p);try{const t=function(t,e,n,i,r,s){const o=n[1];n[20]=t;const a=Ms(o,20,2,"#host",null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(vo(a,l,!0),null!==t&&(Tn(r,t,l),null!==a.classes&&as(r,t,a.classes),null!==a.styles&&os(r,t,a.styles)));const c=i.createRenderer(t,e),u=Ps(n,Vs(e),null,e.onPush?64:16,n[20],a,i,c,s||null,null);return o.firstCreatePass&&(Un(Fn(a,n),o,e.type),Xs(o,a),Ks(a,n.length,1)),oo(n,u),n[20]=u}(c,this.componentDef,p,s,a);if(c)if(n)Tn(a,c,["ng-version",Nl.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,r=2;for(;i0&&as(a,c,e.join(" "))}if(g=Ie(d,20),void 0!==e){const t=g.projection=[];for(let n=0;nt(o,e)),e.contentQueries){const t=Ge();e.contentQueries(1,o,t.directiveStart)}const a=Ge();return!s.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(bn(a.index),Ws(n[1],a,0,a.directiveStart,a.directiveEnd,e),qs(e,o)),o}(t,this.componentDef,p,h,[Lo]),Ds(d,p,null)}finally{gn()}return new xc(this.componentType,f,Ol(g,p),p,g)}}class xc extends class{}{constructor(t,e,n,i,r){super(),this.location=n,this._rootLView=i,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new Zl(i),this.componentType=t}get injector(){return new Jn(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(t){this.hostView.onDestroy(t)}}const Sc=new Map;class Ec extends cc{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new yc(this);const n=le(t),i=function(t){return t[Yt]||null}(t);i&&dl(i),this._bootstrapComponents=Dr(n.bootstrap),this._r3Injector=To(t,e,[{provide:cc,useValue:this},{provide:El,useValue:this.componentFactoryResolver}],ut(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=No.THROW_IF_NOT_FOUND,n=Mt.Default){return t===No||t===cc||t===_o?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 Cc extends class{}{constructor(t){super(),this.moduleType=t,null!==le(t)&&function(t){const e=new Set;!function t(n){const i=le(n,!0),r=i.id;null!==r&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${ut(e)} vs ${ut(e.name)}`)}(r,Sc.get(r),n),Sc.set(r,n));const s=Dr(i.imports);for(const o of s)e.has(o)||(e.add(o),t(o))}(t)}(t)}create(t){return new Ec(this.moduleType,t)}}function Oc(t,e,n){const i=Ze()+t,r=Ue();return r[i]===_s?qo(r,i,n?e.call(n):e()):function(t,e){return t[e]}(r,i)}function Tc(t,e,n,i){return Pc(Ue(),Ze(),t,e,n,i)}function kc(t,e,n,i,r,s){return function(t,e,n,i,r,s,o,a){const l=e+n;return function(t,e,n,i,r){const s=Yo(t,e,n,i);return Xo(t,e+2,r)||s}(t,l,r,s,o)?qo(t,l+3,a?i.call(a,r,s,o):i(r,s,o)):Ac(t,l+3)}(Ue(),Ze(),t,e,n,i,r,s)}function Ac(t,e){const n=t[e];return n===_s?void 0:n}function Pc(t,e,n,i,r,s){const o=e+n;return Xo(t,o,r)?qo(t,o+1,s?i.call(s,r):i(r)):Ac(t,o+1)}function Mc(t,e){const n=He();let i;const r=t+20;n.firstCreatePass?(i=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const i=e[n];if(t===i.name)return i}throw new mt("302",`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[r]=i,i.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(r,i.onDestroy)):i=n.data[r];const s=i.factory||(i.factory=me(i.type)),o=Dt(ea);try{const t=Ln(!1),e=s();return Ln(t),function(t,e,n,i){n>=t.data.length&&(t.data[n]=null,t.blueprint[n]=null),e[n]=i}(n,Ue(),r,e),e}finally{Dt(o)}}function Ic(t,e,n){const i=t+20,r=Ue(),s=De(r,i);return function(t,e){$o.isWrapped(e)&&(e=$o.unwrap(e),t[Je()]=_s);return e}(r,function(t,e){return t[1].data[e].pure}(r,i)?Pc(r,Ze(),e,s.transform,n,s):s.transform(n))}function Dc(t){return e=>{setTimeout(t,void 0,e)}}const Rc=class extends P{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){var i,r,s;let o=t,a=e||(()=>null),l=n;if(t&&"object"==typeof t){const e=t;o=null===(i=e.next)||void 0===i?void 0:i.bind(e),a=null===(r=e.error)||void 0===r?void 0:r.bind(e),l=null===(s=e.complete)||void 0===s?void 0:s.bind(e)}this.__isAsync&&(a=Dc(a),o&&(o=Dc(o)),l&&(l=Dc(l)));const c=super.subscribe({next:o,error:a,complete:l});return t instanceof g&&t.add(c),c}};function Nc(){return this._results[Ho()]()}class Lc{constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const e=Ho(),n=Lc.prototype;n[e]||(n[e]=Nc)}get changes(){return this._changes||(this._changes=new Rc)}get(t){return this._results[t]}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,e){const n=this;n.dirty=!1;const i=li(t);(this._changesDetected=!function(t,e,n){if(t.length!==e.length)return!1;for(let i=0;i0)i.push(o[t/2]);else{const r=s[t+1],o=e[-n];for(let t=10;t{class t{constructor(t){this.appInits=t,this.resolve=Cl,this.reject=Cl,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.subscribe({complete:t,error:n})});t.push(n)}}Promise.all(t).then(()=>{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Ci(tu,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const nu=new oi("AppId"),iu={provide:nu,useFactory:function(){return`${ru()}${ru()}${ru()}`},deps:[]};function ru(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const su=new oi("Platform Initializer"),ou=new oi("Platform ID"),au=new oi("appBootstrapListener");let lu=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const cu=new oi("LocaleId"),uu=new oi("DefaultCurrencyCode");class hu{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const du=function(t){return new Cc(t)},pu=du,fu=function(t){return Promise.resolve(du(t))},gu=function(t){const e=du(t),n=Dr(le(t).declarations).reduce((t,e)=>{const n=ae(e);return n&&t.push(new wc(n)),t},[]);return new hu(e,n)},mu=gu,bu=function(t){return Promise.resolve(gu(t))};let yu=(()=>{class t{constructor(){this.compileModuleSync=pu,this.compileModuleAsync=fu,this.compileModuleAndAllComponentsSync=mu,this.compileModuleAndAllComponentsAsync=bu}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const vu=new oi("compilerOptions"),_u=(()=>Promise.resolve(0))();function wu(t){"undefined"==typeof Zone?_u.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class xu{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Rc(!1),this.onMicrotaskEmpty=new Rc(!1),this.onStable=new Rc(!1),this.onError=new Rc(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const i=this;i._nesting=0,i._outer=i._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(i._inner=i._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(i._inner=i._inner.fork(Zone.longStackTraceZoneSpec)),i.shouldCoalesceEventChangeDetection=!n&&e,i.shouldCoalesceRunChangeDetection=n,i.lastRequestAnimationFrameId=-1,i.nativeRequestAnimationFrame=function(){let t=Ut.requestAnimationFrame,e=Ut.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=()=>{!function(t){t.isCheckStableRunning||-1!==t.lastRequestAnimationFrameId||(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Ut,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Cu(t),t.isCheckStableRunning=!0,Eu(t),t.isCheckStableRunning=!1},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Cu(t))}(t)};t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(n,i,r,s,o,a)=>{try{return Ou(t),n.invokeTask(r,s,o,a)}finally{(t.shouldCoalesceEventChangeDetection&&"eventTask"===s.type||t.shouldCoalesceRunChangeDetection)&&e(),Tu(t)}},onInvoke:(n,i,r,s,o,a,l)=>{try{return Ou(t),n.invoke(r,s,o,a,l)}finally{t.shouldCoalesceRunChangeDetection&&e(),Tu(t)}},onHasTask:(e,n,i,r)=>{e.hasTask(i,r),n===i&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,Cu(t),Eu(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,n,i,r)=>(e.handleError(i,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(i)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!xu.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(xu.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 r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+i,t,Su,Cl,Cl);try{return r.runTask(s,e,n)}finally{r.cancelTask(s)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}const Su={};function Eu(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 Cu(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&-1!==t.lastRequestAnimationFrameId)}function Ou(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function Tu(t){t._nesting--,Eu(t)}class ku{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Rc,this.onMicrotaskEmpty=new Rc,this.onStable=new Rc,this.onError=new Rc}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 Au=(()=>{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:()=>{xu.assertNotInAngularZone(),wu(()=>{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())wu(()=>{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/plugins/task-tracking" 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)(Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Pu=(()=>{class t{constructor(){this._applications=new Map,Iu.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 Iu.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Mu{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Iu=new Mu,Du=!0,Ru=!1;function Nu(){return Ru=!0,Du}let Lu;const ju=new oi("AllowMultipleToken");function Fu(t,e,n=[]){const i=`Platform: ${e}`,r=new oi(i);return(e=[])=>{let s=Bu();if(!s||s.injector.get(ju,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0},{provide:xo,useValue:"platform"});!function(t){if(Lu&&!Lu.destroyed&&!Lu.injector.get(ju,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Lu=t.get(Vu);const e=t.get(su,null);e&&e.forEach(t=>t())}(No.create({providers:t,name:i}))}return function(t){const e=Bu();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}(r)}}function Bu(){return Lu&&!Lu.destroyed?Lu:null}let Vu=(()=>{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 ku:("zone.js"===t?void 0:t)||new xu({enableLongStackTrace:Nu(),shouldCoalesceEventChangeDetection:!!(null==e?void 0:e.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==e?void 0:e.ngZoneRunCoalescing)}),n}(e?e.ngZone:void 0,{ngZoneEventCoalescing:e&&e.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:e&&e.ngZoneRunCoalescing||!1}),i=[{provide:xu,useValue:n}];return n.run(()=>{const r=No.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(r),o=s.injector.get(Ar,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.runOutsideAngular(()=>{const t=n.onError.subscribe({next:t=>{o.handleError(t)}});s.onDestroy(()=>{Hu(this._modules,s),t.unsubscribe()})}),function(t,n,i){try{const e=i();return ha(e)?e.catch(e=>{throw n.runOutsideAngular(()=>t.handleError(e)),e}):e}catch(e){throw n.runOutsideAngular(()=>t.handleError(e)),e}}(o,n,()=>{const t=s.injector.get(eu);return t.runInitializers(),t.donePromise.then(()=>(dl(s.injector.get(cu,ul)||ul),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=zu({},e);return function(t,e,n){const i=new Cc(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Uu);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${ut(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)(Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function zu(t,e){return Array.isArray(e)?e.reduce(zu,t):Object.assign(Object.assign({},t),e)}let Uu=(()=>{class t{constructor(t,e,n,i,r){this._zone=t,this._injector=e,this._exceptionHandler=n,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const s=new C(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),o=new C(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{xu.assertNotInAngularZone(),wu(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{xu.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Q(s,o.pipe(at()))}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 wl?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=function(t){return t.isBoundToModule}(n)?void 0:this._injector.get(cc),r=n.create(No.NULL,[],e||n.selector,i),s=r.location.nativeElement,o=r.injector.get(Au,null),a=o&&r.injector.get(Pu);return o&&a&&a.registerApplication(s,o),r.onDestroy(()=>{this.detachView(r.hostView),Hu(this.components,r),a&&a.unregisterApplication(s)}),this._loadComponent(r),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}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;Hu(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(au,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(No),Ci(Ar),Ci(El),Ci(eu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Hu(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const $u=Fu(null,"core",[{provide:ou,useValue:"unknown"},{provide:Vu,deps:[No]},{provide:Pu,deps:[]},{provide:lu,deps:[]}]),Gu=[{provide:Uu,useClass:Uu,deps:[xu,No,Ar,El,eu]},{provide:_c,deps:[xu],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:eu,useClass:eu,deps:[[new Ii,tu]]},{provide:yu,useClass:yu,deps:[]},iu,{provide:ql,useFactory:function(){return nc},deps:[]},{provide:Yl,useFactory:function(){return ic},deps:[]},{provide:cu,useFactory:function(t){return dl(t=t||"undefined"!=typeof $localize&&$localize.locale||ul),t},deps:[[new Mi(cu),new Ii,new Di]]},{provide:uu,useValue:"USD"}];let Wu=(()=>{class t{constructor(t){}}return t.\u0275fac=function(e){return new(e||t)(Ci(Uu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Gu}),t})(),qu=null;function Xu(){return qu}const Yu=new oi("DocumentToken");let Ku=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:Qu,token:t,providedIn:"platform"}),t})();function Qu(){return Ci(Zu)}let Zu=(()=>{class t extends Ku{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xu().getBaseHref(this._doc)}onPopState(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("popstate",t,!1),()=>e.removeEventListener("popstate",t)}onHashChange(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("hashchange",t,!1),()=>e.removeEventListener("hashchange",t)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ju()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ju()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:th,token:t,providedIn:"platform"}),t})();function Ju(){return!!window.history.pushState}function th(){return new Zu(Ci(Yu))}function eh(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function nh(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function ih(t){return t&&"?"!==t[0]?"?"+t:t}let rh=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:sh,token:t,providedIn:"root"}),t})();function sh(t){const e=Ci(Yu).location;return new ah(Ci(Ku),e&&e.origin||"")}const oh=new oi("appBaseHref");let ah=(()=>{class t extends rh{constructor(t,e){if(super(),this._platformLocation=t,this._removeListenerFns=[],null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return eh(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ih(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformLocation).historyGo)||void 0===n||n.call(e,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ku),Ci(oh,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lh=(()=>{class t{constructor(t,e){this._subject=new Rc,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=nh(uh(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+ih(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,uh(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformStrategy).historyGo)||void 0===n||n.call(e,t)}onUrlChange(t){this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}))}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(rh),Ci(Ku))},t.normalizeQueryParams=ih,t.joinWithSlash=eh,t.stripTrailingSlash=nh,t.\u0275prov=xt({factory:ch,token:t,providedIn:"root"}),t})();function ch(){return new lh(Ci(rh),Ci(Ku))}function uh(t){return t.replace(/\/index.html$/,"")}var hh=(()=>((hh=hh||{})[hh.Zero=0]="Zero",hh[hh.One=1]="One",hh[hh.Two=2]="Two",hh[hh.Few=3]="Few",hh[hh.Many=4]="Many",hh[hh.Other=5]="Other",hh))();const dh=function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ll(e);if(n)return n;const i=e.split("-")[0];if(n=ll(i),n)return n;if("en"===i)return ol;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[cl.PluralCase]};class ph{}let fh=(()=>{class t extends ph{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(dh(e||this.locale)(t)){case hh.Zero:return"zero";case hh.One:return"one";case hh.Two:return"two";case hh.Few:return"few";case hh.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Ci(cu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function gh(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(r)}return null}let mh=(()=>{class t{constructor(t,e,n,i){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=i,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Go(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${ut(t.item)}`);this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(Yl),ea(kl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class bh{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 yh=(()=>{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){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${e}' of type '${function(t){return t.name||typeof t}(e)}'. NgFor only supports binding to Iterables such as Arrays.`)}}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 bh(null,this._ngForOf,-1,-1),null===i?void 0:i),r=new vh(t,n);e.push(r)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,i);const s=new vh(t,r);e.push(s)}});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)(ea(hc),ea(sc),ea(ql))},t.\u0275dir=se({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class vh{constructor(t,e){this.record=t,this.view=e}}let _h=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new wh,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){xh("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){xh("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)(ea(hc),ea(sc))},t.\u0275dir=se({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class wh{constructor(){this.$implicit=null,this.ngIf=null}}function xh(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${ut(e)}'.`)}class Sh{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 Eh=(()=>{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 Sh(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),Oh=(()=>{class t{constructor(t,e,n){n._addDefault(new Sh(t,e))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchDefault",""]]}),t})(),Th=(()=>{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)(ea(kl),ea(Yl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),kh=(()=>{class t{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){if(t.ngTemplateOutlet){const t=this._viewContainerRef;this._viewRef&&t.remove(t.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?t.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else this._viewRef&&t.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return t.\u0275fac=function(e){return new(e||t)(ea(hc))},t.\u0275dir=se({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[ye]}),t})();class Ah{createSubscription(t,e){return t.subscribe({next:e,error:t=>{throw t}})}dispose(t){t.unsubscribe()}onDestroy(t){t.unsubscribe()}}class Ph{createSubscription(t,e){return t.then(e,t=>{throw t})}dispose(t){}onDestroy(t){}}const Mh=new Ph,Ih=new Ah;let Dh=(()=>{class t{constructor(t){this._ref=t,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):this._latestValue:(t&&this._subscribe(t),this._latestValue)}_subscribe(t){this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,e=>this._updateLatestValue(t,e))}_selectStrategy(e){if(ha(e))return Mh;if(da(e))return Ih;throw function(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${ut(t)}'`)}(t,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())}}return t.\u0275fac=function(e){return new(e||t)(ea(tc,16))},t.\u0275pipe=oe({name:"async",type:t,pure:!1}),t})(),Rh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:ph,useClass:fh}]}),t})();const Nh="browser";function Lh(t){return t===Nh}class jh{}class Fh extends class extends class{}{constructor(){super(...arguments),this.supportsDOMEvents=!0}}{static makeCurrent(){!function(t){qu||(qu=t)}(new Fh)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}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}getBaseHref(t){const e=(Vh=Vh||document.querySelector("base"),Vh?Vh.getAttribute("href"):null);return null==e?null:function(t){Bh=Bh||document.createElement("a"),Bh.setAttribute("href",t);const e=Bh.pathname;return"/"===e.charAt(0)?e:`/${e}`}(e)}resetBaseElement(){Vh=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return gh(document.cookie,t)}}let Bh,Vh=null;const zh=new oi("TRANSITION_ID"),Uh=[{provide:tu,useFactory:function(t,e,n){return()=>{n.get(eu).donePromise.then(()=>{const n=Xu(),i=e.querySelectorAll(`style[ng-transition="${t}"]`);for(let t=0;t{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Ut.getAllAngularTestabilities=()=>t.getAllTestabilities(),Ut.getAllAngularRootElements=()=>t.getAllRootElements(),Ut.frameworkStabilizers||(Ut.frameworkStabilizers=[]),Ut.frameworkStabilizers.push(t=>{const e=Ut.getAllAngularTestabilities();let n=e.length,i=!1;const r=function(e){i=i||e,n--,0==n&&t(i)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?Xu().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}let $h=(()=>{class t{build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gh=new oi("EventManagerPlugins");let Wh=(()=>{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=xt({token:t,factory:t.\u0275fac}),t})(),Yh=(()=>{class t extends Xh{constructor(t){super(),this._doc=t,this._hostNodes=new Map,this._hostNodes.set(t.head,[])}_addStylesToHost(t,e,n){t.forEach(t=>{const i=this._doc.createElement("style");i.textContent=t,n.push(e.appendChild(i))})}addHost(t){const e=[];this._addStylesToHost(this._stylesSet,t,e),this._hostNodes.set(t,e)}removeHost(t){const e=this._hostNodes.get(t);e&&e.forEach(Kh),this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach((e,n)=>{this._addStylesToHost(t,n,e)})}ngOnDestroy(){this._hostNodes.forEach(t=>t.forEach(Kh))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Kh(t){Xu().remove(t)}const Qh={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/"},Zh=/%COMP%/g;function Jh(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ed=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new nd(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new id(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case jt.ShadowDom:return new rd(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Jh(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)(Ci(Wh),Ci(Yh),Ci(nu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class nd{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Qh[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 r=Qh[i];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Qh[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&(Rr.DashCase|Rr.Important)?t.style.setProperty(e,n,i&Rr.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&Rr.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,td(n)):this.eventManager.addEventListener(t,e,td(n))}}class id extends nd{constructor(t,e,n,i){super(t),this.component=n;const r=Jh(i+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=function(t){return"_ngcontent-%COMP%".replace(Zh,t)}(i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Zh,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 rd extends nd{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=Jh(i.id,i.styles,[]);for(let s=0;s{class t extends qh{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)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const od=["alt","control","meta","shift"],ad={"\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"},ld={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"},cd={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let ud=(()=>{class t extends qh{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const r=t.parseEventName(n),s=t.eventCallback(r.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xu().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const r=t._normalizeKey(n.pop());let s="";if(od.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),s+=t+".")}),s+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=i,o.fullKey=s,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&&ld.hasOwnProperty(e)&&(e=ld[e]))}return ad[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),od.forEach(i=>{i!=n&&cd[i](t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return r=>{t.getEventFullKey(r)===e&&i.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),hd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return Ci(dd)},token:t,providedIn:"root"}),t})(),dd=(()=>{class t extends hd{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case yr.NONE:return e;case yr.HTML:return qi(e,"HTML")?Wi(e):mr(this._doc,String(e)).toString();case yr.STYLE:return qi(e,"Style")?Wi(e):e;case yr.SCRIPT:if(qi(e,"Script"))return Wi(e);throw new Error("unsafe value used in a script context");case yr.URL:return Xi(e),qi(e,"URL")?Wi(e):Ji(String(e));case yr.RESOURCE_URL:if(qi(e,"ResourceURL"))return Wi(e);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return function(t){return new zi(t)}(t)}bypassSecurityTrustStyle(t){return function(t){return new Ui(t)}(t)}bypassSecurityTrustScript(t){return function(t){return new Hi(t)}(t)}bypassSecurityTrustUrl(t){return function(t){return new $i(t)}(t)}bypassSecurityTrustResourceUrl(t){return function(t){return new Gi(t)}(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return function(t){return new dd(t.get(Yu))}(Ci(_o))},token:t,providedIn:"root"}),t})();const pd=Fu($u,"browser",[{provide:ou,useValue:Nh},{provide:su,useValue:function(){Fh.makeCurrent(),Hh.init()},multi:!0},{provide:Yu,useFactory:function(){return function(t){Ce=t}(document),document},deps:[]}]),fd=[[],{provide:xo,useValue:"root"},{provide:Ar,useFactory:function(){return new Ar},deps:[]},{provide:Gh,useClass:sd,multi:!0,deps:[Yu,xu,ou]},{provide:Gh,useClass:ud,multi:!0,deps:[Yu]},[],{provide:ed,useClass:ed,deps:[Wh,Yh,nu]},{provide:Pl,useExisting:ed},{provide:Xh,useExisting:Yh},{provide:Yh,useClass:Yh,deps:[Yu]},{provide:Au,useClass:Au,deps:[xu]},{provide:Wh,useClass:Wh,deps:[Gh,xu]},{provide:jh,useClass:$h,deps:[]},[]];let gd=(()=>{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:nu,useValue:e.appId},{provide:zh,useExisting:nu},Uh]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:fd,imports:[Rh,Wu]}),t})();function md(t){return null!=t&&"false"!=`${t}`}function bd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function yd(t){return Array.isArray(t)?t:[t]}function vd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function _d(t){return t instanceof kl?t.nativeElement:t}function wd(...t){let e=t[t.length-1];return I(e)?(t.pop(),z(t,e)):K(t)}function xd(t,e,n,i){return a(n)&&(i=n,n=void 0),i?xd(t,e,n).pipe(D(t=>d(t)?i(...t):i(t))):new C(i=>{Sd(t,e,function(t){i.next(arguments.length>1?Array.prototype.slice.call(arguments):t)},i,n)})}function Sd(t,e,n,i,r){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){const i=t;t.addEventListener(e,n,r),s=()=>i.removeEventListener(e,n,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){const i=t;t.on(e,n),s=()=>i.off(e,n)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){const i=t;t.addListener(e,n),s=()=>i.removeListener(e,n)}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(let s=0,o=t.length;s{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 Td extends Od{constructor(t,e=Od.now){super(t,()=>Td.delegate&&Td.delegate!==this?Td.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return Td.delegate&&Td.delegate!==this?Td.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}}}new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?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 kd=1;const Ad=Promise.resolve(),Pd={};function Md(t){return t in Pd&&(delete Pd[t],!0)}const Id={setImmediate(t){const e=kd++;return Pd[e]=!0,Ad.then(()=>Md(e)&&t()),e},clearImmediate(t){Md(t)}};new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=Id.setImmediate(t.flush.bind(t,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&&(Id.clearImmediate(e),t.scheduled=void 0)}});function Dd(t){return!!t&&(t instanceof C||"function"==typeof t.lift&&"function"==typeof t.subscribe)}function Rd(t,e){return n=>n.lift(new Nd(t,e))}class Nd{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new Ld(t,this.compare,this.keySelector))}}class Ld extends v{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(i){return this.destination.error(i)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(i){return this.destination.error(i)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}const jd=new Td(Cd);class Fd{constructor(t){this.durationSelector=t}call(t,e){return e.subscribe(new Bd(t,this.durationSelector))}}class Bd extends ${constructor(t,e){super(t),this.durationSelector=e,this.hasValue=!1}_next(t){if(this.value=t,this.hasValue=!0,!this.throttled){let n;try{const{durationSelector:e}=this;n=e(t)}catch(e){return this.destination.error(e)}const i=G(n,new H(this));!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}clearThrottle(){const{value:t,hasValue:e,throttled:n}=this;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),e&&(this.value=void 0,this.hasValue=!1,this.destination.next(t))}notifyNext(){this.clearThrottle()}notifyComplete(){this.clearThrottle()}}function Vd(t){return!d(t)&&t-parseFloat(t)+1>=0}function zd(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 Ud(t,e=jd){return function(t){return function(e){return e.lift(new Fd(t))}}(()=>function(t=0,e,n){let i=-1;return Vd(e)?i=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=jd),new C(e=>{const r=Vd(t)?t:+t-n.now();return n.schedule(zd,r,{index:0,period:i,subscriber:e})})}(t,e))}function Hd(t,e){return function(n){return n.lift(new $d(t,e))}}class $d{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new Gd(t,this.predicate,this.thisArg))}}class Gd extends v{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 Wd(t){return e=>e.lift(new qd(t))}class qd{constructor(t){this.notifier=t}call(t,e){const n=new Xd(t),i=G(this.notifier,new H(n));return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class Xd extends ${constructor(t){super(t),this.seenValue=!1}notifyNext(){this.seenValue=!0,this.complete()}notifyComplete(){}}function Yd(...t){return Y(1)(wd(...t))}function Kd(...t){const e=t[t.length-1];return I(e)?(t.pop(),n=>Yd(t,n,e)):e=>Yd(t,e)}function Qd(t,e){return"function"==typeof e?n=>n.pipe(Qd((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new Zd(t))}class Zd{constructor(t){this.project=t}call(t,e){return e.subscribe(new Jd(t,this.project))}}class Jd extends ${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)}_innerSub(t){const e=this.innerSubscription;e&&e.unsubscribe();const n=new H(this),i=this.destination;i.add(n),this.innerSubscription=G(t,n),this.innerSubscription!==n&&i.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;(!t||t.closed)&&super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=void 0}notifyComplete(){this.innerSubscription=void 0,this.isStopped&&super._complete()}notifyNext(t){this.destination.next(t)}}const tp=new class extends Td{}(class extends Cd{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}),ep=new C(t=>t.complete());function np(t){return t?function(t){return new C(e=>t.schedule(()=>e.complete()))}(t):ep}function ip(t,e){return new C(e?n=>e.schedule(rp,0,{error:t,subscriber:n}):e=>e.error(t))}function rp({error:t,subscriber:e}){e.error(t)}class sp{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return wd(this.value);case"E":return ip(this.error);case"C":return np()}throw new Error("unexpected notification kind value")}static createNext(t){return void 0!==t?new sp("N",t):sp.undefinedValueNotification}static createError(t){return new sp("E",void 0,t)}static createComplete(){return sp.completeNotification}}sp.completeNotification=new sp("C"),sp.undefinedValueNotification=new sp("N",void 0);class op extends v{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(op.dispatch,this.delay,new ap(t,this.destination)))}_next(t){this.scheduleMessage(sp.createNext(t))}_error(t){this.scheduleMessage(sp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(sp.createComplete()),this.unsubscribe()}}class ap{constructor(t,e){this.notification=t,this.destination=e}}class lp extends P{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){if(!this.isStopped){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift()}super.next(t)}nextTimeWindow(t){this.isStopped||(this._events.push(new cp(this._getNow(),t)),this._trimBufferThenGetEvents()),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),i=this.scheduler,r=n.length;let s;if(this.closed)throw new T;if(this.isStopped||this.hasError?s=g.EMPTY:(this.observers.push(t),s=new k(this,t)),i&&t.add(t=new op(t,i)),e)for(let o=0;oe&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i}}class cp{constructor(t,e){this.time=t,this.value=e}}function up(t,e,n){let i;return i=t&&"object"==typeof t?t:{bufferSize:t,windowTime:e,refCount:!1,scheduler:n},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:i}){let r,s,o=0,a=!1,l=!1;return function(c){let u;o++,!r||a?(a=!1,r=new lp(t,e,i),u=r.subscribe(this),s=c.subscribe({next(t){r.next(t)},error(t){a=!0,r.error(t)},complete(){l=!0,s=void 0,r.complete()}}),l&&(s=void 0)):u=r.subscribe(this),this.add(()=>{o--,u.unsubscribe(),u=void 0,s&&!l&&n&&0===o&&(s.unsubscribe(),s=void 0,r=void 0)})}}(i))}let hp;try{hp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(m){hp=!1}let dp,pp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Lh(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&&!hp)&&"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)(Ci(ou))},t.\u0275prov=xt({factory:function(){return new t(Ci(ou))},token:t,providedIn:"root"}),t})(),fp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const gp=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function mp(){if(dp)return dp;if("object"!=typeof document||!document)return dp=new Set(gp),dp;let t=document.createElement("input");return dp=new Set(gp.filter(e=>(t.setAttribute("type",e),t.type===e))),dp}let bp,yp,vp;function _p(t){return function(){if(null==bp&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>bp=!0}))}finally{bp=bp||!1}return bp}()?t:!!t.capture}function wp(){if(null==yp){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return yp=!1,yp;if("scrollBehavior"in document.documentElement.style)yp=!0;else{const t=Element.prototype.scrollTo;yp=!!t&&!/\{\s*\[native code\]\s*\}/.test(t.toString())}}return yp}function xp(t){if(function(){if(null==vp){const t="undefined"!=typeof document?document.head:null;vp=!(!t||!t.createShadowRoot&&!t.attachShadow)}return vp}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}function Sp(){let t="undefined"!=typeof document&&document?document.activeElement:null;for(;t&&t.shadowRoot;){const e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}function Ep(t){return t.composedPath?t.composedPath()[0]:t.target}const Cp=new oi("cdk-dir-doc",{providedIn:"root",factory:function(){return Oi(Yu)}});let Op=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Rc,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)(Ci(Cp,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Cp,8))},token:t,providedIn:"root"}),t})(),Tp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class kp{constructor(t=!1,e,n=!0){this._multiple=t,this._emitChanges=n,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new P,e&&e.length&&(t?e.forEach(t=>this._markSelected(t)):this._markSelected(e[0]),this._selectedToEmit.length=0)}get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}select(...t){this._verifyValueAssignment(t),t.forEach(t=>this._markSelected(t)),this._emitChangeEvent()}deselect(...t){this._verifyValueAssignment(t),t.forEach(t=>this._unmarkSelected(t)),this._emitChangeEvent()}toggle(t){this.isSelected(t)?this.deselect(t):this.select(t)}clear(){this._unmarkAll(),this._emitChangeEvent()}isSelected(t){return this._selection.has(t)}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(t){this._multiple&&this.selected&&this._selected.sort(t)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(t){this.isSelected(t)||(this._multiple||this._unmarkAll(),this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))}_unmarkSelected(t){this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))}_unmarkAll(){this.isEmpty()||this._selection.forEach(t=>this._unmarkSelected(t))}_verifyValueAssignment(t){}}let Ap=(()=>{class t{constructor(){this._listeners=[]}notify(t,e){for(let n of this._listeners)n(t,e)}listen(t){return this._listeners.push(t),()=>{this._listeners=this._listeners.filter(e=>t!==e)}}ngOnDestroy(){this._listeners=[]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Pp=(()=>{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new P,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 C(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(Ud(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):wd()}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(Hd(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(t,e){let n=_d(e),i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>xd(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)(Ci(xu),Ci(pp),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Mp=(()=>{class t{constructor(t,e,n){this._platform=t,this._change=new P,this._changeListener=t=>{this._change.next(t)},this._document=n,e.runOutsideAngular(()=>{if(t.isBrowser){const t=this._getWindow();t.addEventListener("resize",this._changeListener),t.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const t=this._getWindow();t.removeEventListener("resize",this._changeListener),t.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}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._document,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(Ud(t)):this._change}_getWindow(){return this._document.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)(Ci(pp),Ci(xu),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Ip=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),Dp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp,fp,Ip],Tp,Ip]}),t})();class Rp{attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;null!=t&&(this._attachedHost=null,t.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class Np extends Rp{constructor(t,e,n,i){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=i}}class Lp extends Rp{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class jp extends Rp{constructor(t){super(),this.element=t instanceof kl?t.nativeElement:t}}class Fp{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(t){return t instanceof Np?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof Lp?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof jp?(this._attachedPortal=t,this.attachDomPortal(t)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class Bp extends Fp{constructor(t,e,n,i,r){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=i,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");e.parentNode.insertBefore(n,e),this.outletElement.appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=r}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),this._attachedPortal=t,n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),n.detectChanges(),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),this._attachedPortal=t,n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let Vp=(()=>{class t extends Lp{constructor(t,e){super(t,e)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc),ea(hc))},t.\u0275dir=se({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[jo]}),t})(),zp=(()=>{class t extends Vp{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[_l([{provide:Vp,useExisting:t}]),jo]}),t})(),Up=(()=>{class t extends Fp{constructor(t,e,n){super(),this._componentFactoryResolver=t,this._viewContainerRef=e,this._isInitialized=!1,this.attached=new Rc,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");t.setAttachedHost(this),e.parentNode.insertBefore(n,e),this._getRootNode().appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=n}get portal(){return this._attachedPortal}set portal(t){this.hasAttached()&&!t&&!this._isInitialized||(this.hasAttached()&&super.detach(),t&&super.attach(t),this._attachedPortal=t)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedPortal=null,this._attachedRef=null}attachComponentPortal(t){t.setAttachedHost(this);const e=null!=t.viewContainerRef?t.viewContainerRef:this._viewContainerRef,n=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component),i=e.createComponent(n,e.length,t.injector||e.injector);return e!==this._viewContainerRef&&this._getRootNode().appendChild(i.hostView.rootNodes[0]),super.setDisposeFn(()=>i.destroy()),this._attachedPortal=t,this._attachedRef=i,this.attached.emit(i),i}attachTemplatePortal(t){t.setAttachedHost(this);const e=this._viewContainerRef.createEmbeddedView(t.templateRef,t.context);return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=t,this._attachedRef=e,this.attached.emit(e),e}_getRootNode(){const t=this._viewContainerRef.element.nativeElement;return t.nodeType===t.ELEMENT_NODE?t:t.parentNode}}return t.\u0275fac=function(e){return new(e||t)(ea(El),ea(hc),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[jo]}),t})(),Hp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const $p=(()=>{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 Gp(t){return e=>0===t?np():e.lift(new Wp(t))}class Wp{constructor(t){if(this.total=t,this.total<0)throw new $p}call(t,e){return e.subscribe(new qp(t,this.total))}}class qp extends v{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 Xp(t,e=!1){return n=>n.lift(new Yp(t,e))}class Yp{constructor(t,e){this.predicate=t,this.inclusive=e}call(t,e){return e.subscribe(new Kp(t,this.predicate,this.inclusive))}}class Kp extends v{constructor(t,e,n){super(t),this.predicate=e,this.inclusive=n,this.index=0}_next(t){const e=this.destination;let n;try{n=this.predicate(t,this.index++)}catch(i){return void e.error(i)}this.nextOrComplete(t,n)}nextOrComplete(t,e){const n=this.destination;Boolean(e)?n.next(t):(this.inclusive&&n.next(t),n.complete())}}function Qp(t,...e){return e.length?e.some(e=>t[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}const Zp=wp();class Jp{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=vd(-this._previousScrollPosition.left),t.style.top=vd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,i=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),Zp&&(e.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),Zp&&(e.scrollBehavior=i,n.scrollBehavior=r)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}class tf{constructor(t,e,n,i){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=i,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(t){this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class ef{enable(){}disable(){}attach(){}}function nf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function rf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class sf{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=i,this._scrollSubscription=null}attach(t){this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();nf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let of=(()=>{class t{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=()=>new ef,this.close=t=>new tf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t),this.block=()=>new Jp(this._viewportRuler,this._document),this.reposition=t=>new sf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t),this._document=i}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();class af{constructor(t){if(this.scrollStrategy=new ef,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){const e=Object.keys(t);for(const n of e)void 0!==t[n]&&(this[n]=t[n])}}}class lf{constructor(t,e,n,i,r){this.offsetX=n,this.offsetY=i,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}class cf{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}let uf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._document=t}ngOnDestroy(){this.detach()}add(t){this.remove(t),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this.detach()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),hf=(()=>{class t extends uf{constructor(t){super(t),this._keydownListener=t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEvents.observers.length>0){e[n]._keydownEvents.next(t);break}}}add(t){super.add(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),df=(()=>{class t extends uf{constructor(t,e){super(t),this._platform=e,this._cursorStyleIsSet=!1,this._clickListener=t=>{const e=Ep(t),n=this._attachedOverlays.slice();for(let i=n.length-1;i>-1;i--){const r=n[i];if(!(r._outsidePointerEvents.observers.length<1)&&r.hasAttached()){if(r.overlayElement.contains(e))break;r._outsidePointerEvents.next(t)}}}}add(t){if(super.add(t),!this._isAttached){const t=this._document.body;t.addEventListener("click",this._clickListener,!0),t.addEventListener("auxclick",this._clickListener,!0),t.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const t=this._document.body;t.removeEventListener("click",this._clickListener,!0),t.removeEventListener("auxclick",this._clickListener,!0),t.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(t.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu),Ci(pp))},token:t,providedIn:"root"}),t})();const pf="undefined"!=typeof window?window:{},ff=void 0!==pf.__karma__&&!!pf.__karma__||void 0!==pf.jasmine&&!!pf.jasmine||void 0!==pf.jest&&!!pf.jest||void 0!==pf.Mocha&&!!pf.Mocha;let gf=(()=>{class t{constructor(t,e){this._platform=e,this._document=t}ngOnDestroy(){const t=this._containerElement;t&&t.parentNode&&t.parentNode.removeChild(t)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t="cdk-overlay-container";if(this._platform.isBrowser||ff){const e=this._document.querySelectorAll(`.${t}[platform="server"], .${t}[platform="test"]`);for(let t=0;tthis._backdropClick.next(t),this._keydownEvents=new P,this._outsidePointerEvents=new P,i.scrollStrategy&&(this._scrollStrategy=i.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=i.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){const t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this.detachBackdrop(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host&&this._host.parentNode&&(this._host.parentNode.removeChild(this._host),this._host=null),this._previousHostParent=this._pane=null,t&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign(Object.assign({},this._config),t),this._updateElementSize()}setDirection(t){this._config=Object.assign(Object.assign({},this._config),{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const t=this._pane.style;t.width=vd(this._config.width),t.height=vd(this._config.height),t.minWidth=vd(this._config.minWidth),t.minHeight=vd(this._config.minHeight),t.maxWidth=vd(this._config.maxWidth),t.maxHeight=vd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachBackdrop(){const t="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(t)})}):this._backdropElement.classList.add(t)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t=this._backdropElement;if(!t)return;let e,n=()=>{t&&(t.removeEventListener("click",this._backdropClickHandler),t.removeEventListener("transitionend",n),t.parentNode&&t.parentNode.removeChild(t)),this._backdropElement==t&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(t,this._config.backdropClass,!1),clearTimeout(e)};t.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{t.addEventListener("transitionend",n)}),t.style.pointerEvents="none",e=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const i=t.classList;yd(e).forEach(t=>{t&&(n?i.add(t):i.remove(t))})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.pipe(Wd(Q(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const bf="cdk-overlay-connected-position-bounding-box",yf=/([A-Za-z%]+)$/;class vf{constructor(t,e,n,i,r){this._viewportRuler=e,this._document=n,this._platform=i,this._overlayContainer=r,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new P,this._resizeSubscription=g.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){this._validatePositions(),t.hostElement.classList.add(bf),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,i=[];let r;for(let s of this._preferredPositions){let o=this._getOriginPoint(t,s),a=this._getOverlayPoint(o,e,s),l=this._getOverlayFit(a,e,n,s);if(l.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(s,o);this._canFitWithFlexibleDimensions(l,a,n)?i.push({position:s,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,s)}):(!r||r.overlayFit.visibleAreae&&(e=i,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&_f(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(bf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,i;if("center"==e.originX)n=t.left+t.width/2;else{const i=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?i:r}return i="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom,{x:n,y:i}}_getOverlayPoint(t,e,n){let i,r;return i="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height,{x:t.x+i,y:t.y+r}}_getOverlayFit(t,e,n,i){const r=xf(e);let{x:s,y:o}=t,a=this._getOffset(i,"x"),l=this._getOffset(i,"y");a&&(s+=a),l&&(o+=l);let c=0-o,u=o+r.height-n.height,h=this._subtractOverflows(r.width,0-s,s+r.width-n.width),d=this._subtractOverflows(r.height,c,u),p=h*d;return{visibleArea:p,isCompletelyWithinViewport:r.width*r.height===p,fitsInViewportVertically:d===r.height,fitsInViewportHorizontally:h==r.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const i=n.bottom-e.y,r=n.right-e.x,s=wf(this._overlayRef.getConfig().minHeight),o=wf(this._overlayRef.getConfig().minWidth),a=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=s&&s<=i)&&a}return!1}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const i=xf(e),r=this._viewportRect,s=Math.max(t.x+i.width-r.width,0),o=Math.max(t.y+i.height-r.height,0),a=Math.max(r.top-n.top-t.y,0),l=Math.max(r.left-n.left-t.x,0);let c=0,u=0;return c=i.width<=r.width?l||-s:t.xi&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.y-i/2)}if("end"===e.overlayX&&!i||"start"===e.overlayX&&i)c=n.width-t.x+this._viewportMargin,a=t.x-this._viewportMargin;else if("start"===e.overlayX&&!i||"end"===e.overlayX&&i)l=t.x,a=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),i=this._lastBoundingBoxSize.width;a=2*e,l=t.x-e,a>i&&!this._isInitialRender&&!this._growAfterOpen&&(l=t.x-i/2)}return{top:s,left:l,bottom:o,right:c,width:a,height:r}}_setBoundingBoxStyles(t,e){const n=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));const i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;i.height=vd(n.height),i.top=vd(n.top),i.bottom=vd(n.bottom),i.width=vd(n.width),i.left=vd(n.left),i.right=vd(n.right),i.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",i.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(i.maxHeight=vd(t)),r&&(i.maxWidth=vd(r))}this._lastBoundingBoxSize=n,_f(this._boundingBox.style,i)}_resetBoundingBoxStyles(){_f(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){_f(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,s=this._overlayRef.getConfig();if(i){const i=this._viewportRuler.getViewportScrollPosition();_f(n,this._getExactOverlayY(e,t,i)),_f(n,this._getExactOverlayX(e,t,i))}else n.position="static";let o="",a=this._getOffset(e,"x"),l=this._getOffset(e,"y");a&&(o+=`translateX(${a}px) `),l&&(o+=`translateY(${l}px)`),n.transform=o.trim(),s.maxHeight&&(i?n.maxHeight=vd(s.maxHeight):r&&(n.maxHeight="")),s.maxWidth&&(i?n.maxWidth=vd(s.maxWidth):r&&(n.maxWidth="")),_f(this._pane.style,n)}_getExactOverlayY(t,e,n){let i={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let s=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=s,"bottom"===t.overlayY?i.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":i.top=vd(r.y),i}_getExactOverlayX(t,e,n){let i,r={left:"",right:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,n)),i=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left","right"===i?r.right=this._document.documentElement.clientWidth-(s.x+this._overlayRect.width)+"px":r.left=vd(s.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:rf(t,n),isOriginOutsideView:nf(t,n),isOverlayClipped:rf(e,n),isOverlayOutsideView:nf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,n=this._viewportRuler.getViewportScrollPosition();return{top:n.top+this._viewportMargin,left:n.left+this._viewportMargin,right:n.left+t-this._viewportMargin,bottom:n.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&yd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;if(t instanceof kl)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();const e=t.width||0,n=t.height||0;return{top:t.y,bottom:t.y+n,left:t.x,right:t.x+e,height:n,width:e}}}function _f(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function wf(t){if("number"!=typeof t&&null!=t){const[e,n]=t.split(yf);return n&&"px"!==n?null:parseFloat(e)}return t||null}function xf(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}class Sf{constructor(t,e,n,i,r,s,o){this._preferredPositions=[],this._positionStrategy=new vf(n,i,r,s,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e),this.onPositionChange=this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,i){const r=new lf(t,e,n,i);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Ef="cdk-global-overlay-wrapper";class Cf{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(Ef),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),{width:i,height:r,maxWidth:s,maxHeight:o}=n,a=!("100%"!==i&&"100vw"!==i||s&&"100%"!==s&&"100vw"!==s),l=!("100%"!==r&&"100vh"!==r||o&&"100%"!==o&&"100vh"!==o);t.position=this._cssPosition,t.marginLeft=a?"0":this._leftOffset,t.marginTop=l?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,a?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=l?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Ef),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}let Of=(()=>{class t{constructor(t,e,n,i){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=i}global(){return new Cf}connectedTo(t,e,n){return new Sf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new vf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},t.\u0275prov=xt({factory:function(){return new t(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},token:t,providedIn:"root"}),t})(),Tf=0,kf=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=i,this._keyboardDispatcher=r,this._injector=s,this._ngZone=o,this._document=a,this._directionality=l,this._location=c,this._outsideClickDispatcher=u}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),i=this._createPortalOutlet(n),r=new af(t);return r.direction=r.direction||this._directionality.value,new mf(i,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id="cdk-overlay-"+Tf++,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(Uu)),new Bp(t,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Ci(of),Ci(gf),Ci(El),Ci(Of),Ci(hf),Ci(No),Ci(xu),Ci(Yu),Ci(Op),Ci(lh),Ci(df))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Af=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Pf=new oi("cdk-connected-overlay-scroll-strategy");let Mf=(()=>{class t{constructor(t){this.elementRef=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl))},t.\u0275dir=se({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t})(),If=(()=>{class t{constructor(t,e,n,i,r){this._overlay=t,this._dir=r,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=g.EMPTY,this._attachSubscription=g.EMPTY,this._detachSubscription=g.EMPTY,this._positionSubscription=g.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Rc,this.positionChange=new Rc,this.attach=new Rc,this.detach=new Rc,this.overlayKeydown=new Rc,this.overlayOutsideClick=new Rc,this._templatePortal=new Lp(e,n),this._scrollStrategyFactory=i,this.scrollStrategy=this._scrollStrategyFactory()}get offsetX(){return this._offsetX}set offsetX(t){this._offsetX=t,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(t){this._offsetY=t,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(t){this._hasBackdrop=md(t)}get lockPosition(){return this._lockPosition}set lockPosition(t){this._lockPosition=md(t)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(t){this._flexibleDimensions=md(t)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(t){this._growAfterOpen=md(t)}get push(){return this._push}set push(t){this._push=md(t)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(t){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),t.origin&&this.open&&this._position.apply()),t.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Af);const t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=t.detachments().subscribe(()=>this.detach.emit()),t.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),27===t.keyCode&&!this.disableClose&&!Qp(t)&&(t.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{this.overlayOutsideClick.next(t)})}_buildConfig(){const t=this._position=this.positionStrategy||this._createPositionStrategy(),e=new af({direction:this._dir,positionStrategy:t,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(e.width=this.width),(this.height||0===this.height)&&(e.height=this.height),(this.minWidth||0===this.minWidth)&&(e.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(e.minHeight=this.minHeight),this.backdropClass&&(e.backdropClass=this.backdropClass),this.panelClass&&(e.panelClass=this.panelClass),e}_updatePositionStrategy(t){const e=this.positions.map(t=>({originX:t.originX,originY:t.originY,overlayX:t.overlayX,overlayY:t.overlayY,offsetX:t.offsetX||this.offsetX,offsetY:t.offsetY||this.offsetY,panelClass:t.panelClass||void 0}));return t.setOrigin(this.origin.elementRef).withPositions(e).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const t=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(t),t}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(t=>{this.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(Xp(()=>this.positionChange.observers.length>0)).subscribe(t=>{this.positionChange.emit(t),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(sc),ea(hc),ea(Pf),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ye]}),t})();const Df={provide:Pf,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};let Rf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[kf,Df],imports:[[Tp,Hp,Dp],Dp]}),t})(),Nf=(()=>{class t extends gf{constructor(){super(...arguments),this.attached=!1}setRootElement(t){this.attached&&(this.rootElement.nativeElement.removeChild(this._containerElement),this.attached=!1),this.rootElement=t,this.rootElement.nativeElement.style.display="block",this.rootElement.nativeElement.style.position="contents",this.rootElement.nativeElement.style.height="100%",this.appendToRoot()}_createContainer(){super._createContainer(),this.appendToRoot()}appendToRoot(){!this._containerElement||!this.rootElement||(this.rootElement.nativeElement.appendChild(this._containerElement),this.attached=!0)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const Lf={schedule(t,e){const n=setTimeout(t,e);return()=>clearTimeout(n)},scheduleBeforeRender(t){if("undefined"==typeof window)return Lf.schedule(t,0);if(void 0===window.requestAnimationFrame)return Lf.schedule(t,16);const e=window.requestAnimationFrame(t);return()=>window.cancelAnimationFrame(e)}};let jf;function Ff(t,e,n){let i=n;return function(t){return!!t&&t.nodeType===Node.ELEMENT_NODE}(t)&&e.some((e,n)=>!("*"===e||!function(t,e){if(!jf){const t=Element.prototype;jf=t.matches||t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector}return t.nodeType===Node.ELEMENT_NODE&&jf.call(t,e)}(t,e)||(i=n,0))),i}class Bf{constructor(t,e){this.componentFactory=e.get(El).resolveComponentFactory(t)}create(t){return new Vf(this.componentFactory,t)}}class Vf{constructor(t,e){this.componentFactory=t,this.injector=e,this.eventEmitters=new lp(1),this.events=this.eventEmitters.pipe(Qd(t=>Q(...t))),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(({propName:t})=>t)),this.ngZone=this.injector.get(xu),this.elementZone="undefined"==typeof Zone?null:this.ngZone.run(()=>Zone.current)}connect(t){this.runInZone(()=>{if(null!==this.scheduledDestroyFn)return this.scheduledDestroyFn(),void(this.scheduledDestroyFn=null);null===this.componentRef&&this.initializeComponent(t)})}disconnect(){this.runInZone(()=>{null===this.componentRef||null!==this.scheduledDestroyFn||(this.scheduledDestroyFn=Lf.schedule(()=>{null!==this.componentRef&&(this.componentRef.destroy(),this.componentRef=null,this.viewChangeDetectorRef=null)},10))})}getInputValue(t){return this.runInZone(()=>null===this.componentRef?this.initialInputValues.get(t):this.componentRef.instance[t])}setInputValue(t,e){this.runInZone(()=>{null!==this.componentRef?function(t,e){return t===e||t!=t&&e!=e}(e,this.getInputValue(t))&&(void 0!==e||!this.unchangedInputs.has(t))||(this.recordInputChange(t,e),this.unchangedInputs.delete(t),this.hasInputChanges=!0,this.componentRef.instance[t]=e,this.scheduleDetectChanges()):this.initialInputValues.set(t,e)})}initializeComponent(t){const e=No.create({providers:[],parent:this.injector}),n=function(t,e){const n=t.childNodes,i=e.map(()=>[]);let r=-1;e.some((t,e)=>"*"===t&&(r=e,!0));for(let s=0,o=n.length;s{this.initialInputValues.has(t)&&this.setInputValue(t,this.initialInputValues.get(t))}),this.initialInputValues.clear()}initializeOutputs(t){const e=this.componentFactory.outputs.map(({propName:e,templateName:n})=>t.instance[e].pipe(D(t=>({name:n,value:t}))));this.eventEmitters.next(e)}callNgOnChanges(t){if(!this.implementsOnChanges||null===this.inputChanges)return;const e=this.inputChanges;this.inputChanges=null,t.instance.ngOnChanges(e)}markViewForCheck(t){this.hasInputChanges&&(this.hasInputChanges=!1,t.markForCheck())}scheduleDetectChanges(){this.scheduledChangeDetectionFn||(this.scheduledChangeDetectionFn=Lf.scheduleBeforeRender(()=>{this.scheduledChangeDetectionFn=null,this.detectChanges()}))}recordInputChange(t,e){if(!this.implementsOnChanges)return;null===this.inputChanges&&(this.inputChanges={});const n=this.inputChanges[t];if(n)return void(n.currentValue=e);const i=this.unchangedInputs.has(t),r=i?void 0:this.getInputValue(t);this.inputChanges[t]=new be(r,e,i)}detectChanges(){null!==this.componentRef&&(this.callNgOnChanges(this.componentRef),this.markViewForCheck(this.viewChangeDetectorRef),this.componentRef.changeDetectorRef.detectChanges())}runInZone(t){return this.elementZone&&Zone.current!==this.elementZone?this.ngZone.run(t):t()}}class zf extends HTMLElement{constructor(){super(...arguments),this.ngElementEventsSubscription=null}}class Uf extends P{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new T;return this._value}next(t){super.next(this._value=t)}}function Hf(){}function $f(t,e,n){return function(i){return i.lift(new Gf(t,e,n))}}class Gf{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Wf(t,this.nextOrObserver,this.error,this.complete))}}class Wf extends v{constructor(t,e,n,i){super(t),this._tapNext=Hf,this._tapError=Hf,this._tapComplete=Hf,this._tapError=n||Hf,this._tapComplete=i||Hf,a(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Hf,this._tapError=e.error||Hf,this._tapComplete=e.complete||Hf)}_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(e){return void this.destination.error(e)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}function qf(t,e=jd){return n=>n.lift(new Xf(t,e))}class Xf{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Yf(t,this.dueTime,this.scheduler))}}class Yf extends v{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(Kf,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 Kf(t){t.debouncedNext()}function Qf(t){return e=>e.lift(new Zf(t))}class Zf{constructor(t){this.total=t}call(t,e){return e.subscribe(new Jf(t,this.total))}}class Jf extends v{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){++this.count>this.total&&this.destination.next(t)}}let tg=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),eg=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=_d(t);return new C(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 P,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)(Ci(tg))},t.\u0275prov=xt({factory:function(){return new t(Ci(tg))},token:t,providedIn:"root"}),t})(),ng=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Rc,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=bd(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(qf(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){var t;null===(t=this._currentSubscription)||void 0===t||t.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(eg),ea(kl),ea(xu))},t.\u0275dir=se({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),ig=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[tg]}),t})();function rg(t,e){return(t.getAttribute(e)||"").match(/\S+/g)||[]}const sg="cdk-describedby-message-container",og="cdk-describedby-message",ag="cdk-describedby-host";let lg=0;const cg=new Map;let ug=null,hg=(()=>{class t{constructor(t){this._document=t}describe(t,e,n){if(!this._canBeDescribed(t,e))return;const i=dg(e,n);"string"!=typeof e?(pg(e),cg.set(i,{messageElement:e,referenceCount:0})):cg.has(i)||this._createMessageElement(e,n),this._isElementDescribedByMessage(t,i)||this._addMessageReference(t,i)}removeDescription(t,e,n){if(!e||!this._isElementNode(t))return;const i=dg(e,n);if(this._isElementDescribedByMessage(t,i)&&this._removeMessageReference(t,i),"string"==typeof e){const t=cg.get(i);t&&0===t.referenceCount&&this._deleteMessageElement(i)}ug&&0===ug.childNodes.length&&this._deleteMessagesContainer()}ngOnDestroy(){const t=this._document.querySelectorAll(`[${ag}]`);for(let e=0;e0!=t.indexOf(og));t.setAttribute("aria-describedby",e.join(" "))}_addMessageReference(t,e){const n=cg.get(e);(function(t,e,n){const i=rg(t,e);i.some(t=>t.trim()==n.trim())||(i.push(n.trim()),t.setAttribute(e,i.join(" ")))})(t,"aria-describedby",n.messageElement.id),t.setAttribute(ag,""),n.referenceCount++}_removeMessageReference(t,e){const n=cg.get(e);n.referenceCount--,function(t,e,n){const i=rg(t,e).filter(t=>t!=n.trim());i.length?t.setAttribute(e,i.join(" ")):t.removeAttribute(e)}(t,"aria-describedby",n.messageElement.id),t.removeAttribute(ag)}_isElementDescribedByMessage(t,e){const n=rg(t,"aria-describedby"),i=cg.get(e),r=i&&i.messageElement.id;return!!r&&-1!=n.indexOf(r)}_canBeDescribed(t,e){if(!this._isElementNode(t))return!1;if(e&&"object"==typeof e)return!0;const n=null==e?"":`${e}`.trim(),i=t.getAttribute("aria-label");return!(!n||i&&i.trim()===n)}_isElementNode(t){return t.nodeType===this._document.ELEMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})();function dg(t,e){return"string"==typeof t?`${e||""}/${t}`:t}function pg(t){t.id||(t.id=`${og}-${lg++}`)}class fg extends class{constructor(t){this._items=t,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new P,this._typeaheadSubscription=g.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._skipPredicateFn=t=>t.disabled,this._pressedLetters=[],this.tabOut=new P,this.change=new P,t instanceof Lc&&t.changes.subscribe(t=>{if(this._activeItem){const e=t.toArray().indexOf(this._activeItem);e>-1&&e!==this._activeItemIndex&&(this._activeItemIndex=e)}})}skipPredicate(t){return this._skipPredicateFn=t,this}withWrap(t=!0){return this._wrap=t,this}withVerticalOrientation(t=!0){return this._vertical=t,this}withHorizontalOrientation(t){return this._horizontal=t,this}withAllowedModifierKeys(t){return this._allowedModifierKeys=t,this}withTypeAhead(t=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe($f(t=>this._pressedLetters.push(t)),qf(t),Hd(()=>this._pressedLetters.length>0),D(()=>this._pressedLetters.join(""))).subscribe(t=>{const e=this._getItemsArray();for(let n=1;n!t[e]||this._allowedModifierKeys.indexOf(e)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&n){this.setNextItemActive();break}return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&n){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&n){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}return;default:return void((n||Qp(t,"shiftKey"))&&(t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))))}this._pressedLetters=[],t.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(t){const e=this._getItemsArray(),n="number"==typeof t?t:e.indexOf(t),i=e[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}_setActiveItemByDelta(t){this._wrap?this._setActiveInWrapMode(t):this._setActiveInDefaultMode(t)}_setActiveInWrapMode(t){const e=this._getItemsArray();for(let n=1;n<=e.length;n++){const i=(this._activeItemIndex+t*n+e.length)%e.length;if(!this._skipPredicateFn(e[i]))return void this.setActiveItem(i)}}_setActiveInDefaultMode(t){this._setActiveItemByIndex(this._activeItemIndex+t,t)}_setActiveItemByIndex(t,e){const n=this._getItemsArray();if(n[t]){for(;this._skipPredicateFn(n[t]);)if(!n[t+=e])return;this.setActiveItem(t)}}_getItemsArray(){return this._items instanceof Lc?this._items.toArray():this._items}}{setActiveItem(t){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(t),this.activeItem&&this.activeItem.setActiveStyles()}}let gg=(()=>{class t{constructor(t){this._platform=t}isDisabled(t){return t.hasAttribute("disabled")}isVisible(t){return function(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(t)&&"visible"===getComputedStyle(t).visibility}isTabbable(t){if(!this._platform.isBrowser)return!1;const e=function(t){try{return t.frameElement}catch(e){return null}}(function(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}(t));if(e&&(-1===bg(e)||!this.isVisible(e)))return!1;let n=t.nodeName.toLowerCase(),i=bg(t);return t.hasAttribute("contenteditable")?-1!==i:!("iframe"===n||"object"===n||this._platform.WEBKIT&&this._platform.IOS&&!function(t){let e=t.nodeName.toLowerCase(),n="input"===e&&t.type;return"text"===n||"password"===n||"select"===e||"textarea"===e}(t))&&("audio"===n?!!t.hasAttribute("controls")&&-1!==i:"video"===n?-1!==i&&(null!==i||this._platform.FIREFOX||t.hasAttribute("controls")):t.tabIndex>=0)}isFocusable(t,e){return function(t){return!function(t){return function(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function(t){let e=t.nodeName.toLowerCase();return"input"===e||"select"===e||"button"===e||"textarea"===e}(t)||function(t){return function(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||mg(t))}(t)&&!this.isDisabled(t)&&((null==e?void 0:e.ignoreVisibility)||this.isVisible(t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function mg(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;let e=t.getAttribute("tabindex");return"-32768"!=e&&!(!e||isNaN(parseInt(e,10)))}function bg(t){if(!mg(t))return null;const e=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(e)?-1:e}class yg{constructor(t,e,n,i,r=!1){this._element=t,this._checker=e,this._ngZone=n,this._document=i,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,r||this.attachAnchors()}get enabled(){return this._enabled}set enabled(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}destroy(){const t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(t)))})}focusFirstTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(t)))})}focusLastTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(t)))})}_getRegionBoundary(t){let e=this._element.querySelectorAll(`[cdk-focus-region-${t}], [cdkFocusRegion${t}], [cdk-focus-${t}]`);for(let n=0;n=0;n--){let t=e[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[n]):null;if(t)return t}return null}_createAnchor(){const t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t}_toggleAnchorTabIndex(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}_executeOnStable(t){this._ngZone.isStable?t():this._ngZone.onStable.pipe(Gp(1)).subscribe(t)}}let vg=(()=>{class t{constructor(t,e,n){this._checker=t,this._ngZone=e,this._document=n}create(t,e=!1){return new yg(t,this._checker,this._ngZone,this._document,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(gg),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(gg),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();function _g(t){return 0===t.offsetX&&0===t.offsetY}function wg(t){const e=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!(!e||-1!==e.identifier||null!=e.radiusX&&1!==e.radiusX||null!=e.radiusY&&1!==e.radiusY)}"undefined"!=typeof Element&∈const xg=new oi("cdk-input-modality-detector-options"),Sg={ignoreKeys:[18,17,224,91,16]},Eg=_p({passive:!0,capture:!0});let Cg=(()=>{class t{constructor(t,e,n,i){this._platform=t,this._mostRecentTarget=null,this._modality=new Uf(null),this._lastTouchMs=0,this._onKeydown=t=>{var e,n;(null===(n=null===(e=this._options)||void 0===e?void 0:e.ignoreKeys)||void 0===n?void 0:n.some(e=>e===t.keyCode))||(this._modality.next("keyboard"),this._mostRecentTarget=Ep(t))},this._onMousedown=t=>{Date.now()-this._lastTouchMs<650||(this._modality.next(_g(t)?"keyboard":"mouse"),this._mostRecentTarget=Ep(t))},this._onTouchstart=t=>{wg(t)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Ep(t))},this._options=Object.assign(Object.assign({},Sg),i),this.modalityDetected=this._modality.pipe(Qf(1)),this.modalityChanged=this.modalityDetected.pipe(Rd()),t.isBrowser&&e.runOutsideAngular(()=>{n.addEventListener("keydown",this._onKeydown,Eg),n.addEventListener("mousedown",this._onMousedown,Eg),n.addEventListener("touchstart",this._onTouchstart,Eg)})}get mostRecentModality(){return this._modality.value}ngOnDestroy(){!this._platform.isBrowser||(document.removeEventListener("keydown",this._onKeydown,Eg),document.removeEventListener("mousedown",this._onMousedown,Eg),document.removeEventListener("touchstart",this._onTouchstart,Eg))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},token:t,providedIn:"root"}),t})();const Og=new oi("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),Tg=new oi("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let kg=(()=>{class t{constructor(t,e,n,i){this._ngZone=e,this._defaultOptions=i,this._document=n,this._liveElement=t||this._createLiveElement()}announce(t,...e){const n=this._defaultOptions;let i,r;return 1===e.length&&"number"==typeof e[0]?r=e[0]:[i,r]=e,this.clear(),clearTimeout(this._previousTimeout),i||(i=n&&n.politeness?n.politeness:"polite"),null==r&&n&&(r=n.duration),this._liveElement.setAttribute("aria-live",i),this._ngZone.runOutsideAngular(()=>new Promise(e=>{clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=t,e(),"number"==typeof r&&(this._previousTimeout=setTimeout(()=>this.clear(),r))},100)}))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement&&this._liveElement.parentNode&&(this._liveElement.parentNode.removeChild(this._liveElement),this._liveElement=null)}_createLiveElement(){const t="cdk-live-announcer-element",e=this._document.getElementsByClassName(t),n=this._document.createElement("div");for(let i=0;i{class t{constructor(t,e,n,i,r){this._ngZone=t,this._platform=e,this._inputModalityDetector=n,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new P,this._rootNodeFocusAndBlurListener=t=>{const e=Ep(t),n="focus"===t.type?this._onFocus:this._onBlur;for(let i=e;i;i=i.parentElement)n.call(this,t,i)},this._document=i,this._detectionMode=(null==r?void 0:r.detectionMode)||0}monitor(t,e=!1){const n=_d(t);if(!this._platform.isBrowser||1!==n.nodeType)return wd(null);const i=xp(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return e&&(r.checkChildren=!0),r.subject;const s={checkChildren:e,subject:new P,rootNode:i};return this._elementInfo.set(n,s),this._registerGlobalListeners(s),s.subject}stopMonitoring(t){const e=_d(t),n=this._elementInfo.get(e);n&&(n.subject.complete(),this._setClasses(e),this._elementInfo.delete(e),this._removeGlobalListeners(n))}focusVia(t,e,n){const i=_d(t);i===this._getDocument().activeElement?this._getClosestElementsInfo(i).forEach(([t,n])=>this._originChanged(t,e,n)):(this._setOrigin(e),"function"==typeof i.focus&&i.focus(n))}ngOnDestroy(){this._elementInfo.forEach((t,e)=>this.stopMonitoring(e))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_toggleClass(t,e,n){n?t.classList.add(e):t.classList.remove(e)}_getFocusOrigin(t){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(t)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}_shouldBeAttributedToTouch(t){return 1===this._detectionMode||!!(null==t?void 0:t.contains(this._inputModalityDetector._mostRecentTarget))}_setClasses(t,e){this._toggleClass(t,"cdk-focused",!!e),this._toggleClass(t,"cdk-touch-focused","touch"===e),this._toggleClass(t,"cdk-keyboard-focused","keyboard"===e),this._toggleClass(t,"cdk-mouse-focused","mouse"===e),this._toggleClass(t,"cdk-program-focused","program"===e)}_setOrigin(t,e=!1){this._ngZone.runOutsideAngular(()=>{this._origin=t,this._originFromTouchInteraction="touch"===t&&e,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(t,e){const n=this._elementInfo.get(e),i=Ep(t);!n||!n.checkChildren&&e!==i||this._originChanged(e,this._getFocusOrigin(i),n)}_onBlur(t,e){const n=this._elementInfo.get(e);!n||n.checkChildren&&t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||(this._setClasses(e),this._emitOrigin(n.subject,null))}_emitOrigin(t,e){this._ngZone.run(()=>t.next(e))}_registerGlobalListeners(t){if(!this._platform.isBrowser)return;const e=t.rootNode,n=this._rootNodeFocusListenerCount.get(e)||0;n||this._ngZone.runOutsideAngular(()=>{e.addEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.addEventListener("blur",this._rootNodeFocusAndBlurListener,Pg)}),this._rootNodeFocusListenerCount.set(e,n+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(Wd(this._stopInputModalityDetector)).subscribe(t=>{this._setOrigin(t,!0)}))}_removeGlobalListeners(t){const e=t.rootNode;if(this._rootNodeFocusListenerCount.has(e)){const t=this._rootNodeFocusListenerCount.get(e);t>1?this._rootNodeFocusListenerCount.set(e,t-1):(e.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Pg),this._rootNodeFocusListenerCount.delete(e))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(t,e,n){this._setClasses(t,e),this._emitOrigin(n.subject,e),this._lastFocusOrigin=e}_getClosestElementsInfo(t){const e=[];return this._elementInfo.forEach((n,i)=>{(i===t||n.checkChildren&&i.contains(t))&&e.push([i,n])}),e}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},token:t,providedIn:"root"}),t})();const Ig="cdk-high-contrast-black-on-white",Dg="cdk-high-contrast-white-on-black",Rg="cdk-high-contrast-active";let Ng=(()=>{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._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove(Rg),t.remove(Ig),t.remove(Dg),this._hasCheckedHighContrastMode=!0;const e=this.getHighContrastMode();1===e?(t.add(Rg),t.add(Ig)):2===e&&(t.add(Rg),t.add(Dg))}}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(Yu))},token:t,providedIn:"root"}),t})(),Lg=(()=>{class t{constructor(t){t._applyBodyHighContrastModeCssClasses()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp,ig]]}),t})();const jg=new Rl("12.2.5");class Fg{}const Bg="*";function Vg(t,e){return{type:7,name:t,definitions:e,options:{}}}function zg(t,e=null){return{type:4,styles:e,timings:t}}function Ug(t,e=null){return{type:2,steps:t,options:e}}function Hg(t){return{type:6,styles:t,offset:null}}function $g(t,e,n){return{type:0,name:t,styles:e,options:n}}function Gg(t){return{type:5,steps:t}}function Wg(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function qg(t=null){return{type:9,options:t}}function Xg(t,e,n=null){return{type:11,selector:t,animation:e,options:n}}function Yg(t){Promise.resolve(null).then(t)}class Kg{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,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(){Yg(()=>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(){this._started=!1}setPosition(t){this._position=this.totalTime?t*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class Qg{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 r=this.players.length;0==r?Yg(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++i==r&&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(){const t=this.players.reduce((t,e)=>null===t||e.totalTime>t.totalTime?e:t,null);return null!=t?t.getPosition():0}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 Zg(){return"undefined"!=typeof window&&void 0!==window.document}function Jg(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function tm(t){switch(t.length){case 0:return new Kg;case 1:return t[0];default:return new Qg(t)}}function em(t,e,n,i,r={},s={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,u=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=r[n];break;case Bg:a=s[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}u[i]=a}),i||a.push(u),c=u,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 nm(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&im(n,"start",t)));break;case"done":t.onDone(()=>i(n&&im(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&im(n,"destroy",t)))}}function im(t,e,n){const i=n.totalTime,r=rm(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),s=t._data;return null!=s&&(r._data=s),r}function rm(t,e,n,i,r="",s=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:r,totalTime:s,disabled:!!o}}function sm(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 om(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let am=(t,e)=>!1,lm=(t,e)=>!1,cm=(t,e,n)=>[];const um=Jg();(um||"undefined"!=typeof Element)&&(am=Zg()?(t,e)=>{for(;e&&e!==document.documentElement;){if(e===t)return!0;e=e.parentNode||e.host}return!1}:(t,e)=>t.contains(e),lm=(()=>{if(um||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]):lm}})(),cm=(t,e,n)=>{let i=[];if(n){const n=t.querySelectorAll(e);for(let t=0;t{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let ym=(()=>{class t{validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,r,s=[],o){return new Kg(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class vm{}vm.NOOP=new ym;const _m="ng-enter",wm="ng-leave",xm="ng-trigger",Sm=".ng-trigger",Em="ng-animating",Cm=".ng-animating";function Om(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Tm(parseFloat(e[1]),e[2])}function Tm(t,e){switch(e){case"s":return 1e3*t;default:return t}}function km(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,r=0,s="";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=Tm(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(r=Tm(parseFloat(o),n[4]));const a=n[5];a&&(s=a)}else i=t;if(!n){let n=!1,s=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(s,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:r,easing:s}}(t,e,n)}function Am(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Pm(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Am(t,n);return n}function Mm(t,e,n){return n?e+":"+n+";":""}function Im(t){let e="";for(let n=0;n{const r=zm(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[r]),t.style[r]=e[i]}),Jg()&&Im(t))}function Rm(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=zm(e);t.style[n]=""}),Jg()&&Im(t))}function Nm(t){return Array.isArray(t)?1==t.length?t[0]:Ug(t):t}const Lm=new RegExp("{{\\s*(.+?)\\s*}}","g");function jm(t){let e=[];if("string"==typeof t){let n;for(;n=Lm.exec(t);)e.push(n[1]);Lm.lastIndex=0}return e}function Fm(t,e,n){const i=t.toString(),r=i.replace(Lm,(t,i)=>{let r=e[i];return e.hasOwnProperty(i)||(n.push(`Please provide a value for the animation param ${i}`),r=""),r.toString()});return r==i?t:r}function Bm(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Vm=/-+([a-z0-9])/g;function zm(t){return t.replace(Vm,(...t)=>t[1].toUpperCase())}function Um(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function Hm(t,e){return 0===t||0===e}function $m(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let s=e[0],o=[];if(i.forEach(t=>{s.hasOwnProperty(t)||o.push(t),s[t]=n[t]}),o.length)for(var r=1;rfunction(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 r=i[1],s=i[2],o=i[3];e.push(Km(r,o));"<"==s[0]&&!("*"==r&&"*"==o)&&e.push(Km(o,r))}(t,n,e)):n.push(t),n}const Xm=new Set(["true","1"]),Ym=new Set(["false","0"]);function Km(t,e){const n=Xm.has(t)||Ym.has(t),i=Xm.has(e)||Ym.has(e);return(r,s)=>{let o="*"==t||t==r,a="*"==e||e==s;return!o&&n&&"boolean"==typeof r&&(o=r?Xm.has(t):Ym.has(t)),!a&&i&&"boolean"==typeof s&&(a=s?Xm.has(e):Ym.has(e)),o&&a}}const Qm=new RegExp("s*:selfs*,?","g");function Zm(t,e,n){return new Jm(t).build(e,n)}class Jm{constructor(t){this._driver=t}build(t,e){const n=new tb(e);return this._resetContextStyleTimingState(n),Gm(this,Nm(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 r=[],s=[];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,r.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,i+=r.depCount,s.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:s,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 r=new Set,s=i||{};if(n.styles.forEach(t=>{if(eb(t)){const e=t;Object.keys(e).forEach(t=>{jm(e[t]).forEach(t=>{s.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=Bm(r.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=Gm(this,Nm(t.animation),e);return{type:1,matchers:qm(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:nb(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Gm(this,t,e)),options:nb(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const r=t.steps.map(t=>{e.currentTime=n;const r=Gm(this,t,e);return i=Math.max(i,e.currentTime),r});return e.currentTime=i,{type:3,steps:r,options:nb(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 ib(km(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=ib(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||km(i,e),ib(n.duration,n.delay,n.easing)}(t.timings,e.errors);e.currentAnimateTimings=n;let i,r=t.styles?t.styles:Hg({});if(5==r.type)i=this.visitKeyframes(r,e);else{let r=t.styles,s=!1;if(!r){s=!0;const t={};n.easing&&(t.easing=n.easing),r=Hg(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(r,e);o.isEmptyStep=s,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==Bg?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,r=null;return n.forEach(t=>{if(eb(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,r=e.currentTime;n&&r>0&&(r-=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 s=e.collectedStyles[e.currentQuerySelector],o=s[n];let a=!0;o&&(r!=i&&r>=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 "${r}ms" and "${i}ms"`),a=!1),r=o.startTime),a&&(s[n]={startTime:r,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},r=jm(t);r.length&&r.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 r=[];let s=!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(eb(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(eb(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,s=s||c0&&i{const s=u>0?i==h?1:u*i:r[i],o=s*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=s,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Gm(this,Nm(t.animation),e),options:nb(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:nb(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:nb(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[r,s]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(Qm,"")),[t=t.replace(/@\*/g,Sm).replace(/@\w+/g,t=>Sm+"-"+t.substr(1)).replace(/:animating/g,Cm),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,sm(e.collectedStyles,e.currentQuerySelector,{});const o=Gm(this,Nm(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:i.limit||0,optional:!!i.optional,includeSelf:s,animation:o,originalSelector:t.selector,options:nb(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"}:km(t.timings,e.errors,!0);return{type:12,animation:Gm(this,Nm(t.animation),e),timings:n,options:null}}}class tb{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 eb(t){return!Array.isArray(t)&&"object"==typeof t}function nb(t){return t?(t=Am(t)).params&&(t.params=function(t){return t?Am(t):null}(t.params)):t={},t}function ib(t,e,n){return{duration:t,delay:e,easing:n}}function rb(t,e,n,i,r,s,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:r,delay:s,totalTime:r+s,easing:o,subTimeline:a}}class sb{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 ob=new RegExp(":enter","g"),ab=new RegExp(":leave","g");function lb(t,e,n,i,r,s={},o={},a,l,c=[]){return(new cb).buildKeyframes(t,e,n,i,r,s,o,a,l,c)}class cb{buildKeyframes(t,e,n,i,r,s,o,a,l,c=[]){l=l||new sb;const u=new hb(t,e,l,i,r,c,[]);u.options=a,u.currentTimeline.setStyles([s],null,u.errors,a),Gm(this,n,u);const h=u.timelines.filter(t=>t.containsAnimation());if(h.length&&Object.keys(o).length){const t=h[h.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,u.errors,a)}return h.length?h.map(t=>t.buildKeyframes()):[rb(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),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(n,i,i.options);r!=s&&e.transformIntoNewTimeline(s)}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 r=null!=n.duration?Om(n.duration):null,s=null!=n.delay?Om(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,s);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Gm(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const r=t.options;if(r&&(r.params||r.delay)&&(i=e.createSubContext(r),i.transformIntoNewTimeline(),null!=r.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=ub);const t=Om(r.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Gm(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 r=t.options&&t.options.delay?Om(t.options.delay):0;t.steps.forEach(s=>{const o=e.createSubContext(t.options);r&&o.delayNextStep(r),Gm(this,s,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 km(e.params?Fm(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 r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,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 r=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,r=n.duration,s=e.createSubContext().currentTimeline;s.easing=n.easing,t.styles.forEach(t=>{s.forwardTime((t.offset||0)*r),s.setStyles(t.styles,t.easing,e.errors,e.options),s.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(s),e.transformIntoNewTimeline(i+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},r=i.delay?Om(i.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=ub);let s=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);r&&o.delayNextStep(r),n===e.element&&(a=o.currentTimeline),Gm(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,r=t.timings,s=Math.abs(r.duration),o=s*(e.currentQueryTotal-1);let a=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Gm(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const ub={};class hb{constructor(t,e,n,i,r,s,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=r,this.errors=s,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=ub,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new db(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=Om(n.duration)),null!=n.delay&&(i.delay=Om(n.delay));const r=n.params;if(r){let t=i.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{(!e||!t.hasOwnProperty(n))&&(t[n]=Fm(r[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,r=new hb(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=ub,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:""},r=new pb(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(r),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,r,s){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(ob,"."+this._enterClassName)).replace(ab,"."+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!r&&0==o.length&&s.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class db{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 db(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]||Bg,this._currentKeyframe[t]=Bg}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const r=i&&i.params||{},s=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]=Bg})):Pm(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(s).forEach(t=>{const e=Fm(s[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:Bg),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((r,s)=>{const o=Pm(r,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):i==Bg&&e.add(n)}),n||(o.offset=s/this.duration),i.push(o)});const r=t.size?Bm(t.values()):[],s=e.size?Bm(e.values()):[];if(n){const t=i[0],e=Am(t);t.offset=0,e.offset=1,i=[t,e]}return rb(this.element,i,r,s,this.duration,this.startTime,this.easing,!1)}}class pb extends db{constructor(t,e,n,i,r,s,o=!1){super(t,e,s.delay),this.keyframes=n,this.preStyleProps=i,this.postStyleProps=r,this._stretchStartingKeyframe=o,this.timings={duration:s.duration,delay:s.delay,easing:s.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 r=[],s=n+e,o=e/s,a=Pm(t[0],!1);a.offset=0,r.push(a);const l=Pm(t[0],!1);l.offset=fb(o),r.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Pm(t[i],!1);o.offset=fb((e+o.offset*n)/s),r.push(o)}n=s,e=0,i="",t=r}return rb(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function fb(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class gb{}class mb extends gb{normalizePropertyName(t,e){return zm(t)}normalizeStyleValue(t,e,n,i){let r="";const s=n.toString().trim();if(bb[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="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 s+r}}const bb=(()=>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 yb(t,e,n,i,r,s,o,a,l,c,u,h,d){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:s,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:h,errors:d}}const vb={};class _b{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,r){return t.some(t=>t(e,n,i,r))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],r=this._stateStyles[t],s=i?i.buildStyles(e,n):{};return r?r.buildStyles(e,n):s}build(t,e,n,i,r,s,o,a,l,c){const u=[],h=this.ast.options&&this.ast.options.params||vb,d=this.buildStyles(n,o&&o.params||vb,u),p=a&&a.params||vb,f=this.buildStyles(i,p,u),g=new Set,m=new Map,b=new Map,y="void"===i,v={params:Object.assign(Object.assign({},h),p)},_=c?[]:lb(t,e,this.ast.animation,r,s,d,f,v,l,u);let w=0;if(_.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),u.length)return yb(e,this._triggerName,n,i,y,d,f,[],[],m,b,w,u);_.forEach(t=>{const n=t.element,i=sm(m,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const r=sm(b,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&g.add(n)});const x=Bm(g.values());return yb(e,this._triggerName,n,i,y,d,f,_,x,m,b,w)}}class wb{constructor(t,e,n){this.styles=t,this.defaultParams=e,this.normalizer=n}buildStyles(t,e){const n={},i=Am(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 r=t;Object.keys(r).forEach(t=>{let s=r[t];s.length>1&&(s=Fm(s,i,e));const o=this.normalizer.normalizePropertyName(t,e);s=this.normalizer.normalizeStyleValue(t,o,s,e),n[o]=s})}}),n}}class xb{constructor(t,e,n){this.name=t,this.ast=e,this._normalizer=n,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new wb(t.style,t.options&&t.options.params||{},n)}),Sb(this.states,"true","1"),Sb(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new _b(t,e,this.states))}),this.fallbackTransition=function(t,e,n){return new _b(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},e)}(t,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(r=>r.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function Sb(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Eb=new sb;class Cb{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=Zm(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,r=em(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],r=this._animations[t];let s;const o=new Map;if(r?(s=lb(this._driver,e,r,_m,wm,{},{},n,Eb,i),s.forEach(t=>{const e=sm(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),s=[]),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,Bg)})});const a=tm(s.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 r=rm(e,"","","");return nm(this._getPlayer(t),n,r,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 r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Ob="ng-animate-queued",Tb="ng-animate-disabled",kb=".ng-animate-disabled",Ab=[],Pb={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Mb={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Ib="__ng_removed";class Db{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=function(t){return null!=t?t:null}(n?t.value:t),n){const e=Am(t);delete e.value,this.options=e}else this.options={};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 Rb="void",Nb=new Db(Rb);class Lb{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,$b(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(!function(t){return"start"==t||"done"==t}(n))throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);const r=sm(this._elementListeners,t,[]),s={name:e,phase:n,callback:i};r.push(s);const o=sm(this._engine.statesByElement,t,{});return o.hasOwnProperty(e)||($b(t,xm),$b(t,xm+"-"+e),o[e]=Nb),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(s);t>=0&&r.splice(t,1),this._triggers[e]||delete o[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 r=this._getTrigger(e),s=new Fb(this.id,e,t);let o=this._engine.statesByElement.get(t);o||($b(t,xm),$b(t,xm+"-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Db(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Nb),l.value!==Rb&&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 r=0;r{Rm(t,n),Dm(t,i)})}return}const c=sm(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let u=r.matchTransition(a.value,l.value,t,l.params),h=!1;if(!u){if(!i)return;u=r.fallbackTransition,h=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:u,fromState:a,toState:l,player:s,isFallbackTransition:h}),h||($b(t,Ob),s.onStart(()=>{Gb(t,Ob)})),s.onDone(()=>{let e=this.players.indexOf(s);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(s);t>=0&&n.splice(t,1)}}),this.players.push(s),c.push(s),s}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,Sm,!0);n.forEach(t=>{if(t[Ib])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 r=this._engine.statesByElement.get(t);if(r){const s=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,Rb,i);n&&s.push(n)}}),s.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&tm(s).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t),n=this._engine.statesByElement.get(t);if(e&&n){const i=new Set;e.forEach(e=>{const r=e.name;if(i.has(r))return;i.add(r);const s=this._triggers[r].fallbackTransition,o=n[r]||Nb,a=new Db(Rb),l=new Fb(this.id,r,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:r,transition:s,fromState:o,toState:a,player:l,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[Ib];(!i||i===Pb)&&(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){$b(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const r=n.element,s=this._elementListeners.get(r);s&&s.forEach(e=>{if(e.name==n.triggerName){const i=rm(r,n.triggerName,n.fromState.value,n.toState.value);i._data=t,nm(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 jb{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 Lb(t,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?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 r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+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),$b(t,Tb)):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),Gb(t,Tb))}removeNode(t,e,n,i){if(Bb(e)){const r=t?this._fetchNamespace(t):null;if(r?r.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[Ib]={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,r){return Bb(e)?this._fetchNamespace(t).listen(e,n,i,r):()=>{}}_buildInstruction(t,e,n,i,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,Sm,!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,Cm,!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 tm(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t[Ib];if(e&&e.setForRemoval){if(t[Ib]=Pb,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,kb)&&this.markElementAsDisabled(t,!1),this.driver.query(t,kb,!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?tm(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 sb,i=[],r=new Map,s=[],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=_m+f++;p.set(e,n),t.forEach(t=>$b(t,n))});const g=[],m=new Set,b=new Set;for(let P=0;Pm.add(t)):b.add(t))}const y=new Map,v=Ub(h,Array.from(m));v.forEach((t,e)=>{const n=wm+f++;y.set(e,n),t.forEach(t=>$b(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>Gb(t,n))}),v.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>Gb(t,n))}),g.forEach(t=>{this.processLeaveNode(t)})});const _=[],w=[];for(let P=this._namespaceList.length-1;P>=0;P--)this._namespaceList[P].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(_.push(e),this.collectedEnterElements.length){const t=r[Ib];if(t&&t.setForMove)return void e.destroy()}const c=!u||!this.driver.containsElement(u,r),h=y.get(r),d=p.get(r),f=this._buildInstruction(t,n,d,h,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,f.timelines),s.push({instruction:f,player:e,element:r}),f.queriedElements.forEach(t=>sm(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`))}),_.forEach(t=>t.destroy()),this.reportError(t)}const x=new Map,S=new Map;s.forEach(t=>{const e=t.element;n.has(e)&&(S.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,x))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{sm(x,e,[]).push(t),t.destroy()})});const E=g.filter(t=>Xb(t,a,l)),C=new Map;zb(C,this.driver,b,l,Bg).forEach(t=>{Xb(t,a,l)&&E.push(t)});const O=new Map;d.forEach((t,e)=>{zb(O,this.driver,new Set(t),a,"!")}),E.forEach(t=>{const e=C.get(t),n=O.get(t);C.set(t,Object.assign(Object.assign({},e),n))});const T=[],k=[],A={};s.forEach(t=>{const{element:e,player:s,instruction:o}=t;if(n.has(e)){if(c.has(e))return s.onDestroy(()=>Dm(e,o.toStyles)),s.disabled=!0,s.overrideTotalTime(o.totalTime),void i.push(s);let t=A;if(S.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=S.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>S.set(e,t))}const n=this._buildAnimation(s.namespaceId,o,x,r,O,C);if(s.setRealPlayer(n),t===A)T.push(s);else{const e=this.playersByElement.get(t);e&&e.length&&(s.parentPlayer=tm(e)),i.push(s)}}else Rm(e,o.fromStyles),s.onDestroy(()=>Dm(e,o.toStyles)),k.push(s),c.has(e)&&i.push(s)}),k.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=tm(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let P=0;P!t.destroyed);i.length?Wb(this,t,i):this.processLeaveNode(t)}return g.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[Ib];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,r){let s=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(s=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||r==Rb;e.forEach(e=>{e.queued||!t&&e.triggerName!=i||s.push(e)})}}return(n||i)&&(s=s.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),s}_beforeAnimationBuild(t,e,n){const i=e.element,r=e.isRemovalTransition?void 0:t,s=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=sm(n,t,[]);this._getPreviousPlayers(t,a,r,s,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}Rm(i,e.fromStyles)}_buildAnimation(t,e,n,i,r,s){const o=e.triggerName,a=e.element,l=[],c=new Set,u=new Set,h=e.timelines.map(e=>{const h=e.element;c.add(h);const d=h[Ib];if(d&&d.removedBeforeQueried)return new Kg(e.duration,e.delay);const p=h!==a,f=function(t){const e=[];return qb(t,e),e}((n.get(h)||Ab).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===h),g=r.get(h),m=s.get(h),b=em(0,this._normalizer,0,e.keyframes,g,m),y=this._buildPlayer(e,b,f);if(e.subTimeline&&i&&u.add(h),p){const e=new Fb(t,o,h);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{sm(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=>$b(t,Em));const d=tm(h);return d.onDestroy(()=>{c.forEach(t=>Gb(t,Em)),Dm(a,e.toStyles)}),u.forEach(t=>{sm(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 Kg(t.duration,t.delay)}}class Fb{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new Kg,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=>nm(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){sm(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 Bb(t){return t&&1===t.nodeType}function Vb(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function zb(t,e,n,i,r){const s=[];n.forEach(t=>s.push(Vb(t)));const o=[];i.forEach((n,i)=>{const s={};n.forEach(t=>{const n=s[t]=e.computeStyle(i,t,r);(!n||0==n.length)&&(i[Ib]=Mb,o.push(i))}),t.set(i,s)});let a=0;return n.forEach(t=>Vb(t,s[a++])),o}function Ub(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),r=new Map;function s(t){if(!t)return 1;let e=r.get(t);if(e)return e;const o=t.parentNode;return e=n.has(o)?o:i.has(o)?1:s(o),r.set(t,e),e}return e.forEach(t=>{const e=s(t);1!==e&&n.get(e).push(t)}),n}const Hb="$$classes";function $b(t,e){if(t.classList)t.classList.add(e);else{let n=t[Hb];n||(n=t[Hb]={}),n[e]=!0}}function Gb(t,e){if(t.classList)t.classList.remove(e);else{let n=t[Hb];n&&delete n[e]}}function Wb(t,e,n){tm(n).onDone(()=>t.processLeaveNode(e))}function qb(t,e){for(let n=0;nr.add(t)):e.set(t,i),n.delete(t),!0}class Yb{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new jb(t,e,n),this._timelineEngine=new Cb(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,r){const s=t+"-"+i;let o=this._triggerCache[s];if(!o){const t=[],e=Zm(this._driver,r,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,n){return new xb(t,e,n)}(i,e,this._normalizer),this._triggerCache[s]=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,r]=om(n);this._timelineEngine.command(t,e,r,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,r){if("@"==n.charAt(0)){const[t,i]=om(n);return this._timelineEngine.listen(t,e,i,r)}return this._transitionEngine.listen(t,e,n,i,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Kb(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Zb(e[0]),e.length>1&&(i=Zb(e[e.length-1]))):e&&(n=Zb(e)),n||i?new Qb(t,n,i):null}class Qb{constructor(t,e,n){this._element=t,this._startStyles=e,this._endStyles=n,this._state=0;let i=Qb.initialStylesByElement.get(t);i||Qb.initialStylesByElement.set(t,i={}),this._initialStyles=i}start(){this._state<1&&(this._startStyles&&Dm(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Dm(this._element,this._initialStyles),this._endStyles&&(Dm(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(Qb.initialStylesByElement.delete(this._element),this._startStyles&&(Rm(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Rm(this._element,this._endStyles),this._endStyles=null),Dm(this._element,this._initialStyles),this._state=3)}}function Zb(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){(function(t,e){const n=ly(t,"").trim();let i=0;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(),oy(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=ly(t,"").split(","),i=sy(n,e);i>=0&&(n.splice(i,1),ay(t,"",n.join(",")))}(this._element,this._name))}}function iy(t,e,n){ay(t,"PlayState",n,ry(t,e))}function ry(t,e){const n=ly(t,"");return n.indexOf(",")>0?sy(n.split(","),e):sy([n],e)}function sy(t,e){for(let n=0;n=0)return n;return-1}function oy(t,e,n){n?t.removeEventListener(ey,e):t.addEventListener(ey,e)}function ay(t,e,n,i){const r=ty+e;if(null!=i){const e=t.style[r];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[r]=n}function ly(t,e){return t.style[ty+e]||""}class cy{constructor(t,e,n,i,r,s,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=r,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=s||"linear",this.totalTime=i+r,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._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new ny(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]:Wm(this.element,n))})}this.currentSnapshot=t}}class uy extends Kg{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=bm(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 hy{constructor(){this._count=0}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>bm(t));let i=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);i+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${r}animation-timing-function: ${n};\n`));default:return void(i+=`${r}${e}: ${n};\n`)}}),i+=`${r}}\n`}),i+="}\n";const s=document.createElement("style");return s.textContent=i,s}animate(t,e,n,i,r,s=[],o){const a=s.filter(t=>t instanceof cy),l={};Hm(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=$m(t,e,l));if(0==n)return new uy(t,c);const u="gen_css_kf_"+this._count++,h=this.buildKeyframeElement(t,u,e);(function(t){var e;const n=null===(e=t.getRootNode)||void 0===e?void 0:e.call(t);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head})(t).appendChild(h);const d=Kb(t,e),p=new cy(t,e,u,n,i,r,c,d);return p.onDestroy(()=>function(t){t.parentNode.removeChild(t)}(h)),p}}class dy{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){void 0===this.domPlayer&&this.init(),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]:Wm(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class py{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(fy().toString()),this._cssKeyframesDriver=new hy}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,r,s=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,r,s);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(a.easing=r);const l={},c=s.filter(t=>t instanceof dy);Hm(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const u=Kb(t,e=$m(t,e=e.map(t=>Pm(t,!1)),l));return new dy(t,e,a,u)}}function fy(){return Zg()&&Element.prototype.animate||{}}let gy=(()=>{class t extends Fg{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:jt.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?Ug(t):t;return yy(this._renderer,null,e,"register",[n]),new my(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pl),Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class my extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new by(this._id,t,e||{},this._renderer)}}class by{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 yy(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"),this._started=!1}setPosition(t){this._command("setPosition",t)}getPosition(){var t,e;return null!==(e=null===(t=this._renderer.engine.players[+this.id])||void 0===t?void 0:t.getPosition())&&void 0!==e?e:0}}function yy(t,e,n,i,r){return t.setProperty(e,`@@${n}:${i}`,r)}const vy="@.disabled";let _y=(()=>{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 wy("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,r=e.id+"-"+this._currentId;this._currentId++,this.engine.register(r,t);const s=e=>{Array.isArray(e)?e.forEach(s):this.engine.registerTrigger(i,r,t,e.name,e)};return e.data.animation.forEach(s),new xy(this,r,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)(Ci(Pl),Ci(Yb),Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class wy{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,i=!0){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,i)}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)&&e==vy?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 xy extends wy{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)&&e==vy?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 r=e.substr(1),s="";return"@"!=r.charAt(0)&&([r,s]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,i,r,s,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let Sy=(()=>{class t extends Yb{constructor(t,e,n){super(t.body,e,n)}ngOnDestroy(){this.flush()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(vm),Ci(gb))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Ey=new oi("AnimationModuleType"),Cy=[{provide:Fg,useClass:gy},{provide:gb,useFactory:function(){return new mb}},{provide:Yb,useClass:Sy},{provide:Pl,useFactory:function(t,e,n){return new _y(t,e,n)},deps:[ed,Yb,xu]}],Oy=[{provide:vm,useFactory:function(){return"function"==typeof fy()?new py:new hy}},{provide:Ey,useValue:"BrowserAnimations"},...Cy],Ty=[{provide:vm,useClass:ym},{provide:Ey,useValue:"NoopAnimations"},...Cy];let ky=(()=>{class t{static withConfig(e){return{ngModule:t,providers:e.disableAnimations?Ty:Oy}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Oy,imports:[gd]}),t})();function Ay(t,e){if(1&t&&oa(0,"mat-pseudo-checkbox",4),2&t){const t=va();na("state",t.selected?"checked":"unchecked")("disabled",t.disabled)}}function Py(t,e){if(1&t&&(ra(0,"span",5),Za(1),sa()),2&t){const t=va();ws(1),tl("(",t.group.label,")")}}const My=["*"],Iy=new Rl("12.2.5"),Dy=new oi("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ry,Ny=(()=>{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)}_getWindow(){const t=this._document.defaultView||window;return"object"==typeof t&&t?t:null}_checkIsEnabled(t){return!(!Nu()||this._isTestEnv())&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[t])}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){this._checkIsEnabled("doctype")&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){if(!this._checkIsEnabled("theme")||!this._document.body||"function"!=typeof getComputedStyle)return;const t=this._document.createElement("div");t.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(t);const e=getComputedStyle(t);e&&"none"!==e.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"),this._document.body.removeChild(t)}_checkCdkVersionMatch(){this._checkIsEnabled("version")&&Iy.full!==jg.full&&console.warn("The Angular Material version ("+Iy.full+") does not match the Angular CDK version ("+jg.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng),Ci(Dy,8),Ci(Yu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp],Tp]}),t})();function Ly(t){return class extends t{constructor(...t){super(...t),this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}}}function jy(t,e){return class extends t{constructor(...t){super(...t),this.defaultColor=e,this.color=e}get color(){return this._color}set color(t){const e=t||this.defaultColor;e!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),e&&this._elementRef.nativeElement.classList.add(`mat-${e}`),this._color=e)}}}function Fy(t){return class extends t{constructor(...t){super(...t),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(t){this._disableRipple=md(t)}}}function By(t,e=0){return class extends t{constructor(...t){super(...t),this._tabIndex=e,this.defaultTabIndex=e}get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(t){this._tabIndex=null!=t?bd(t):this.defaultTabIndex}}}function Vy(t){return class extends t{constructor(...t){super(...t),this.stateChanges=new P,this.errorState=!1}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{Ry="undefined"!=typeof Intl}catch(m){Ry=!1}let zy=(()=>{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=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})();class Uy{constructor(t,e,n){this._renderer=t,this.element=e,this.config=n,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const Hy={enterDuration:225,exitDuration:150},$y=_p({passive:!0}),Gy=["mousedown","touchstart"],Wy=["mouseup","mouseleave","touchend","touchcancel"];class qy{constructor(t,e,n,i){this._target=t,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,i.isBrowser&&(this._containerElement=_d(n))}fadeInRipple(t,e,n={}){const i=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),r=Object.assign(Object.assign({},Hy),n.animation);n.centered&&(t=i.left+i.width/2,e=i.top+i.height/2);const s=n.radius||function(t,e,n){const i=Math.max(Math.abs(t-n.left),Math.abs(t-n.right)),r=Math.max(Math.abs(e-n.top),Math.abs(e-n.bottom));return Math.sqrt(i*i+r*r)}(t,e,i),o=t-i.left,a=e-i.top,l=r.enterDuration,c=document.createElement("div");c.classList.add("mat-ripple-element"),c.style.left=o-s+"px",c.style.top=a-s+"px",c.style.height=2*s+"px",c.style.width=2*s+"px",null!=n.color&&(c.style.backgroundColor=n.color),c.style.transitionDuration=`${l}ms`,this._containerElement.appendChild(c),function(t){window.getComputedStyle(t).getPropertyValue("opacity")}(c),c.style.transform="scale(1)";const u=new Uy(this,c,n);return u.state=0,this._activeRipples.add(u),n.persistent||(this._mostRecentTransientRipple=u),this._runTimeoutOutsideZone(()=>{const t=u===this._mostRecentTransientRipple;u.state=1,!n.persistent&&(!t||!this._isPointerDown)&&u.fadeOut()},l),u}fadeOutRipple(t){const e=this._activeRipples.delete(t);if(t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),!e)return;const n=t.element,i=Object.assign(Object.assign({},Hy),t.config.animation);n.style.transitionDuration=`${i.exitDuration}ms`,n.style.opacity="0",t.state=2,this._runTimeoutOutsideZone(()=>{t.state=3,n.parentNode.removeChild(n)},i.exitDuration)}fadeOutAll(){this._activeRipples.forEach(t=>t.fadeOut())}fadeOutAllNonPersistent(){this._activeRipples.forEach(t=>{t.config.persistent||t.fadeOut()})}setupTriggerEvents(t){const e=_d(t);!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(Gy))}handleEvent(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(Wy),this._pointerUpEventsRegistered=!0)}_onMousedown(t){const e=_g(t),n=this._lastTouchStartEvent&&Date.now(){!t.config.persistent&&(1===t.state||t.config.terminateOnPointerUp&&0===t.state)&&t.fadeOut()}))}_runTimeoutOutsideZone(t,e=0){this._ngZone.runOutsideAngular(()=>setTimeout(t,e))}_registerEvents(t){this._ngZone.runOutsideAngular(()=>{t.forEach(t=>{this._triggerElement.addEventListener(t,this,$y)})})}_removeTriggerEvents(){this._triggerElement&&(Gy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}),this._pointerUpEventsRegistered&&Wy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}))}}const Xy=new oi("mat-ripple-global-options");let Yy=(()=>{class t{constructor(t,e,n,i,r){this._elementRef=t,this._animationMode=r,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=i||{},this._rippleRenderer=new qy(this,e,t,n)}get disabled(){return this._disabled}set disabled(t){t&&this.fadeOutAllNonPersistent(),this._disabled=t,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(t){this._trigger=t,this._setupTriggerEventsIfEnabled()}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(t,e=0,n){return"number"==typeof t?this._rippleRenderer.fadeInRipple(t,e,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(xu),ea(pp),ea(Xy,8),ea(Ey,8))},t.\u0275dir=se({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,e){2&t&&ja("mat-ripple-unbounded",e.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),t})(),Ky=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,fp],Ny]}),t})(),Qy=(()=>{class t{constructor(t){this._animationMode=t,this.state="unchecked",this.disabled=!1}}return t.\u0275fac=function(e){return new(e||t)(ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(t,e){2&t&&ja("mat-pseudo-checkbox-indeterminate","indeterminate"===e.state)("mat-pseudo-checkbox-checked","checked"===e.state)("mat-pseudo-checkbox-disabled",e.disabled)("_mat-animation-noopable","NoopAnimations"===e._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(t,e){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t})(),Zy=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny]]}),t})();const Jy=new oi("MAT_OPTION_PARENT_COMPONENT"),tv=Ly(class{});let ev=0,nv=(()=>{class t extends tv{constructor(t){var e;super(),this._labelId="mat-optgroup-label-"+ev++,this._inert=null!==(e=null==t?void 0:t.inertGroups)&&void 0!==e&&e}}return t.\u0275fac=function(e){return new(e||t)(ea(Jy,8))},t.\u0275dir=se({type:t,inputs:{label:"label"},features:[jo]}),t})();const iv=new oi("MatOptgroup");let rv=0;class sv{constructor(t,e=!1){this.source=t,this.isUserInput=e}}let ov=(()=>{class t{constructor(t,e,n,i){this._element=t,this._changeDetectorRef=e,this._parent=n,this.group=i,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+rv++,this.onSelectionChange=new Rc,this._stateChanges=new P}get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(t){this._disabled=md(t)}get disableRipple(){return this._parent&&this._parent.disableRipple}get active(){return this._active}get viewValue(){return(this._getHostElement().textContent||"").trim()}select(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}deselect(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}focus(t,e){const n=this._getHostElement();"function"==typeof n.focus&&n.focus(e)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(t){(13===t.keyCode||32===t.keyCode)&&!Qp(t)&&(this._selectViaInteraction(),t.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getAriaSelected(){return this.selected||!this.multiple&&null}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const t=this.viewValue;t!==this._mostRecentViewValue&&(this._mostRecentViewValue=t,this._stateChanges.next())}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(t=!1){this.onSelectionChange.emit(new sv(this,t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(void 0),ea(nv))},t.\u0275dir=se({type:t,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),t})(),av=(()=>{class t extends ov{constructor(t,e,n,i){super(t,e,n,i)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Jy,8),ea(iv,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(t,e){1&t&&fa("click",function(){return e._selectViaInteraction()})("keydown",function(t){return e._handleKeydown(t)}),2&t&&(il("id",e.id),Ko("tabindex",e._getTabIndex())("aria-selected",e._getAriaSelected())("aria-disabled",e.disabled.toString()),ja("mat-selected",e.selected)("mat-option-multiple",e.multiple)("mat-active",e.active)("mat-option-disabled",e.disabled))},exportAs:["matOption"],features:[jo],ngContentSelectors:My,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(t,e){1&t&&(wa(),Jo(0,Ay,1,2,"mat-pseudo-checkbox",0),ra(1,"span",1),xa(2),sa(),Jo(3,Py,2,1,"span",2),oa(4,"div",3)),2&t&&(na("ngIf",e.multiple),ws(3),na("ngIf",e.group&&e.group._inert),ws(1),na("matRippleTrigger",e._getHostElement())("matRippleDisabled",e.disabled||e.disableRipple))},directives:[_h,Yy,Qy],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t})();function lv(t,e,n){if(n.length){let i=e.toArray(),r=n.toArray(),s=0;for(let e=0;en+i?Math.max(0,t-i+e):n}let uv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Rh,Ny,Zy]]}),t})();function hv(...t){if(1===t.length){const e=t[0];if(d(e))return dv(e,null);if(p(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return dv(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return dv(t=1===t.length&&d(t[0])?t[0]:t,null).pipe(D(t=>e(...t)))}return dv(t,null)}function dv(t,e){return new C(n=>{const i=t.length;if(0===i)return void n.complete();const r=new Array(i);let s=0,o=0;for(let a=0;a{c||(c=!0,o++),r[a]=t},error:t=>n.error(t),complete:()=>{s++,(s===i||!c)&&(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}function pv(t){return function(e){const n=new fv(t),i=e.lift(n);return n.caught=i}}class fv{constructor(t){this.selector=t}call(t,e){return e.subscribe(new gv(t,this.selector,this.caught))}}class gv extends ${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 H(this);this.add(i);const r=G(n,i);r!==i&&this.add(r)}}}function mv(t){return e=>e.lift(new bv(t))}class bv{constructor(t){this.callback=t}call(t,e){return e.subscribe(new yv(t,this.callback))}}class yv extends v{constructor(t,e){super(t),this.add(new g(e))}}class vv{}class _v{}class wv{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(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(r):this.headers.set(i,[r])}})}:()=>{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 wv?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 wv;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof wv?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 r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.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 xv{encodeKey(t){return Cv(t)}encodeValue(t){return Cv(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const Sv=/%(\d[a-f0-9])/gi,Ev={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function Cv(t){return encodeURIComponent(t).replace(Sv,(t,e)=>{var n;return null!==(n=Ev[e])&&void 0!==n?n:t})}function Ov(t){return`${t}`}class Tv{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new xv,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.replace(/^\?/,"").split("&").forEach(t=>{const i=t.indexOf("="),[r,s]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(r)||[];o.push(s),n.set(r,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"})}appendAll(t){const e=[];return Object.keys(t).forEach(n=>{const i=t[n];Array.isArray(i)?i.forEach(t=>{e.push({param:n,value:t,op:"a"})}):e.push({param:n,value:i,op:"a"})}),this.clone(e)}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 Tv({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(Ov(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(Ov(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)}}class kv{constructor(){this.map=new Map}set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}keys(){return this.map.keys()}}function Av(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Pv(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Mv(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Iv{constructor(t,e,n,i){let r;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,r=i):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params)),this.headers||(this.headers=new wv),this.context||(this.context=new kv),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]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),c)),new Iv(n,i,s,{params:c,headers:l,context:u,reportProgress:a,responseType:r,withCredentials:o})}}var Dv=(()=>((Dv=Dv||{})[Dv.Sent=0]="Sent",Dv[Dv.UploadProgress=1]="UploadProgress",Dv[Dv.ResponseHeader=2]="ResponseHeader",Dv[Dv.DownloadProgress=3]="DownloadProgress",Dv[Dv.Response=4]="Response",Dv[Dv.User=5]="User",Dv))();class Rv{constructor(t,e=200,n="OK"){this.headers=t.headers||new wv,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}}class Nv extends Rv{constructor(t={}){super(t),this.type=Dv.ResponseHeader}clone(t={}){return new Nv({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})}}class Lv extends Rv{constructor(t={}){super(t),this.type=Dv.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Lv({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})}}class jv extends Rv{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Fv(t,e){return{body:e,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Bv=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Iv)i=t;else{let r,s;r=n.headers instanceof wv?n.headers:new wv(n.headers),n.params&&(s=n.params instanceof Tv?n.params:new Tv({fromObject:n.params})),i=new Iv(t,e,void 0!==n.body?n.body:null,{headers:r,context:n.context,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=wd(i).pipe(function(t,e){return W(t,e,1)}(t=>this.handler.handle(t)));if(t instanceof Iv||"events"===n.observe)return r;const s=r.pipe(Hd(t=>t instanceof Lv));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return s.pipe(D(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return s.pipe(D(t=>t.body))}case"response":return s;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 Tv).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,Fv(n,e))}post(t,e,n={}){return this.request("POST",t,Fv(n,e))}put(t,e,n={}){return this.request("PUT",t,Fv(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Ci(vv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Vv{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const zv=new oi("HTTP_INTERCEPTORS");let Uv=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Hv=/^\)\]\}',?\n/;let $v=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new C(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const i=t.serializeBody();let r=null;const s=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,i=n.statusText||"OK",s=new wv(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new Nv({headers:s,status:e,statusText:i,url:o}),r},o=()=>{let{headers:i,status:r,statusText:o,url:a}=s(),l=null;204!==r&&(l=void 0===n.response?n.responseText:n.response),0===r&&(r=l?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof l){const t=l;l=l.replace(Hv,"");try{l=""!==l?JSON.parse(l):null}catch(u){l=t,c&&(c=!1,l={error:u,text:l})}}c?(e.next(new Lv({body:l,headers:i,status:r,statusText:o,url:a||void 0})),e.complete()):e.error(new jv({error:l,headers:i,status:r,statusText:o,url:a||void 0}))},a=t=>{const{url:i}=s(),r=new jv({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:i||void 0});e.error(r)};let l=!1;const c=i=>{l||(e.next(s()),l=!0);let r={type:Dv.DownloadProgress,loaded:i.loaded};i.lengthComputable&&(r.total=i.total),"text"===t.responseType&&!!n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:Dv.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),n.addEventListener("timeout",a),n.addEventListener("abort",a),t.reportProgress&&(n.addEventListener("progress",c),null!==i&&n.upload&&n.upload.addEventListener("progress",u)),n.send(i),e.next({type:Dv.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("abort",a),n.removeEventListener("load",o),n.removeEventListener("timeout",a),t.reportProgress&&(n.removeEventListener("progress",c),null!==i&&n.upload&&n.upload.removeEventListener("progress",u)),n.readyState!==n.DONE&&n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(Ci(jh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gv=new oi("XSRF_COOKIE_NAME"),Wv=new oi("XSRF_HEADER_NAME");class qv{}let Xv=(()=>{class t{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=gh(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(ou),Ci(Gv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Yv=(()=>{class t{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const i=this.tokenService.getToken();return null!==i&&!t.headers.has(this.headerName)&&(t=t.clone({headers:t.headers.set(this.headerName,i)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(qv),Ci(Wv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Kv=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(zv,[]);this.chain=t.reduceRight((t,e)=>new Vv(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(_v),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Qv=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:Yv,useClass:Uv}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:Gv,useValue:e.cookieName}:[],e.headerName?{provide:Wv,useValue:e.headerName}:[]]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Yv,{provide:zv,useExisting:Yv,multi:!0},{provide:qv,useClass:Xv},{provide:Gv,useValue:"XSRF-TOKEN"},{provide:Wv,useValue:"X-XSRF-TOKEN"}]}),t})(),Zv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Bv,{provide:vv,useClass:Kv},$v,{provide:_v,useExisting:$v}],imports:[[Qv.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();const Jv=["*"];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,n){this.url=t,this.svgText=e,this.options=n}}let r_=(()=>{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._resolvers=[],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,null,i))}addSvgIconResolver(t){return this._resolvers.push(t),this}addSvgIconLiteralInNamespace(t,e,n,i){const r=this._sanitizer.sanitize(yr.HTML,n);if(!r)throw n_(n);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,null,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize(yr.HTML,e);if(!i)throw n_(e);return this._addSvgIconSetConfig(t,new i_("",i,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(yr.RESOURCE_URL,t);if(!e)throw e_(t);const n=this._cachedIconsByUrl.get(e);return n?wd(s_(n)):this._loadSvgIconFromConfig(new i_(t,null)).pipe($f(t=>this._cachedIconsByUrl.set(e,t)),D(t=>s_(t)))}getNamedSvgIcon(t,e=""){const n=o_(e,t);let i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(e,t),i)return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);const r=this._iconSetConfigs.get(e);return r?this._getSvgFromIconSetConfigs(t,r):ip(t_(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgText?wd(s_(this._svgElementFromConfig(t))):this._loadSvgIconFromConfig(t).pipe(D(t=>s_(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?wd(n):hv(e.filter(t=>!t.svgText).map(t=>this._loadSvgIconSetFromConfig(t).pipe(pv(e=>{const n=`Loading icon set URL: ${this._sanitizer.sanitize(yr.RESOURCE_URL,t.url)} failed: ${e.message}`;return this._errorHandler.handleError(new Error(n)),wd(null)})))).pipe(D(()=>{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.svgText&&i.svgText.indexOf(t)>-1){const e=this._svgElementFromConfig(i),n=this._extractSvgIconFromSet(e,t,i.options);if(n)return n}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe($f(e=>t.svgText=e),D(()=>this._svgElementFromConfig(t)))}_loadSvgIconSetFromConfig(t){return t.svgText?wd(null):this._fetchIcon(t).pipe($f(e=>t.svgText=e))}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);const s=this._svgElementFromString("");return s.appendChild(r),this._setSvgAttributes(s,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(s)),at());return this._inProgressUrlFetches.set(s,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}_svgElementFromConfig(t){if(!t.svgElement){const e=this._svgElementFromString(t.svgText);this._setSvgAttributes(e,t.options),t.svgElement=e}return t.svgElement}_getIconConfigFromResolvers(t,e){for(let n=0;ne?e.pathname+e.search:""}}}),u_=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],h_=u_.map(t=>`[${t}]`).join(", "),d_=/^url\(['"]?#(.*?)['"]?\)$/;let p_=(()=>{class t extends l_{constructor(t,e,n,i,r){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=r,this._inline=!1,this._currentIconFetch=g.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=md(t)}get svgIcon(){return this._svgIcon}set svgIcon(t){t!==this._svgIcon&&(t?this._updateSvgIcon(t):this._svgIcon&&this._clearSvgElement(),this._svgIcon=t)}get fontSet(){return this._fontSet}set fontSet(t){const e=this._cleanupFontValue(t);e!==this._fontSet&&(this._fontSet=e,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(t){const e=this._cleanupFontValue(t);e!==this._fontIcon&&(this._fontIcon=e,this._updateFontIconClasses())}_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}"`)}}ngOnInit(){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(h_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const r=e[i],s=r.getAttribute(t),o=s?s.match(d_):null;if(o){let e=n.get(r);e||(e=[],n.set(r,e)),e.push({name:t,value:o[1]})}})}_updateSvgIcon(t){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),t){const[e,n]=this._splitIconName(t);e&&(this._svgNamespace=e),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,e).pipe(Gp(1)).subscribe(t=>this._setSvgElement(t),t=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${e}:${n}! ${t.message}`))})}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(r_),ni("aria-hidden"),ea(c_),ea(Ar))},t.\u0275cmp=Jt({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:7,hostBindings:function(t,e){2&t&&(Ko("data-mat-icon-type",e._usingFontIcon()?"font":"svg")("data-mat-icon-name",e._svgName||e.fontIcon)("data-mat-icon-namespace",e._svgNamespace||e.fontSet),ja("mat-icon-inline",e.inline)("mat-icon-no-color","primary"!==e.color&&"accent"!==e.color&&"warn"!==e.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[jo],ngContentSelectors:Jv,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:[".mat-icon{background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}\n"],encapsulation:2,changeDetection:0}),t})(),f_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})();const g_=["mat-button",""],m_=["*"],b_=".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",y_=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],v_=jy(Ly(Fy(class{constructor(t){this._elementRef=t}})));let __=(()=>{class t extends v_{constructor(t,e,n){super(t),this._focusMonitor=e,this._animationMode=n,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const i of y_)this._hasHostAttributes(i)&&this._getHostElement().classList.add(i);t.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(t,e){t?this._focusMonitor.focusVia(this._getHostElement(),t,e):this._getHostElement().focus(e)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...t){return t.some(t=>this._getHostElement().hasAttribute(t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(t,e){if(1&t&&qc(Yy,5),2&t){let t;Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(t,e){2&t&&(Ko("disabled",e.disabled||null),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),w_=(()=>{class t extends __{constructor(t,e,n){super(e,t,n)}_haltDisabledEvents(t){this.disabled&&(t.preventDefault(),t.stopImmediatePropagation())}}return t.\u0275fac=function(e){return new(e||t)(ea(Mg),ea(kl),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(t,e){1&t&&fa("click",function(t){return e._haltDisabledEvents(t)}),2&t&&(Ko("tabindex",e.disabled?-1:e.tabIndex||0)("disabled",e.disabled||null)("aria-disabled",e.disabled.toString()),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),x_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny],Ny]}),t})();class S_ extends v{notifyNext(t,e,n,i,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}class E_ extends v{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()}}function C_(t,e,n,i,r=new E_(t,n,i)){if(!r.closed)return e instanceof C?e.subscribe(r):V(e)(r)}const O_={};function T_(...t){let e,n;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0]),K(t,n).lift(new k_(e))}class k_{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new A_(t,this.resultSelector))}}class A_ extends S_{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(O_),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{class t{constructor(t){this._platform=t,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):D_}matchMedia(t){return this._platform.WEBKIT&&function(t){if(!P_.has(t))try{M_||(M_=document.createElement("style"),M_.setAttribute("type","text/css"),document.head.appendChild(M_)),M_.sheet&&(M_.sheet.insertRule(`@media ${t} {.fx-query-test{ }}`,0),P_.add(t))}catch(e){console.error(e)}}(t),this._matchMedia(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function D_(t){return{matches:"all"===t||""===t,media:t,addListener:()=>{},removeListener:()=>{}}}let R_=(()=>{class t{constructor(t,e){this._mediaMatcher=t,this._zone=e,this._queries=new Map,this._destroySubject=new P}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(t){return N_(yd(t)).some(t=>this._registerQuery(t).mql.matches)}observe(t){let e=T_(N_(yd(t)).map(t=>this._registerQuery(t).observable));return e=Yd(e.pipe(Gp(1)),e.pipe(Qf(1),qf(0))),e.pipe(D(t=>{const e={matches:!1,breakpoints:{}};return t.forEach(({matches:t,query:n})=>{e.matches=e.matches||t,e.breakpoints[n]=t}),e}))}_registerQuery(t){if(this._queries.has(t))return this._queries.get(t);const e=this._mediaMatcher.matchMedia(t),n={observable:new C(t=>{const n=e=>this._zone.run(()=>t.next(e));return e.addListener(n),()=>{e.removeListener(n)}}).pipe(Kd(e),D(({matches:e})=>({query:t,matches:e})),Wd(this._destroySubject)),mql:e};return this._queries.set(t,n),n}}return t.\u0275fac=function(e){return new(e||t)(Ci(I_),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(I_),Ci(xu))},token:t,providedIn:"root"}),t})();function N_(t){return t.map(t=>t.split(",")).reduce((t,e)=>t.concat(e)).map(t=>t.trim())}function L_(t,e){if(1&t){const t=ua();ra(0,"div",1),ra(1,"button",2),fa("click",function(){return $e(t),va().action()}),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),Ja(t.data.action)}}function j_(t,e){}const F_=new oi("MatSnackBarData");class B_{constructor(){this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"}}const V_=Math.pow(2,31)-1;class z_{constructor(t,e){this._overlayRef=e,this._afterDismissed=new P,this._afterOpened=new P,this._onAction=new P,this._dismissedByAction=!1,this.containerInstance=t,this.onAction().subscribe(()=>this.dismiss()),t._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(t){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(t,V_))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}}let U_=(()=>{class t{constructor(t,e){this.snackBarRef=t,this.data=e}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}}return t.\u0275fac=function(e){return new(e||t)(ea(z_),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(t,e){1&t&&(ra(0,"span"),Za(1),sa(),Jo(2,L_,3,1,"div",0)),2&t&&(ws(1),Ja(e.data.message),ws(1),na("ngIf",e.hasAction))},directives:[_h,__],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}\n"],encapsulation:2,changeDetection:0}),t})();const H_={snackBarState:Vg("state",[$g("void, hidden",Hg({transform:"scale(0.8)",opacity:0})),$g("visible",Hg({transform:"scale(1)",opacity:1})),Wg("* => visible",zg("150ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void, * => hidden",zg("75ms cubic-bezier(0.4, 0.0, 1, 1)",Hg({opacity:0})))])};let $_=(()=>{class t extends Fp{constructor(t,e,n,i,r){super(),this._ngZone=t,this._elementRef=e,this._changeDetectorRef=n,this._platform=i,this.snackBarConfig=r,this._announceDelay=150,this._destroyed=!1,this._onAnnounce=new P,this._onExit=new P,this._onEnter=new P,this._animationState="void",this.attachDomPortal=t=>(this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachDomPortal(t)),this._live="assertive"!==r.politeness||r.announcementMessage?"off"===r.politeness?"off":"polite":"assertive",this._platform.FIREFOX&&("polite"===this._live&&(this._role="status"),"assertive"===this._live&&(this._role="alert"))}attachComponentPortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(t)}onAnimationEnd(t){const{fromState:e,toState:n}=t;if(("void"===n&&"void"!==e||"hidden"===n)&&this._completeExit(),"visible"===n){const t=this._onEnter;this._ngZone.run(()=>{t.next(),t.complete()})}}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}exit(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}ngOnDestroy(){this._destroyed=!0,this._completeExit()}_completeExit(){this._ngZone.onMicrotaskEmpty.pipe(Gp(1)).subscribe(()=>{this._onExit.next(),this._onExit.complete()})}_applySnackBarClasses(){const t=this._elementRef.nativeElement,e=this.snackBarConfig.panelClass;e&&(Array.isArray(e)?e.forEach(e=>t.classList.add(e)):t.classList.add(e)),"center"===this.snackBarConfig.horizontalPosition&&t.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&t.classList.add("mat-snack-bar-top")}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{const t=this._elementRef.nativeElement.querySelector("[aria-hidden]"),e=this._elementRef.nativeElement.querySelector("[aria-live]");if(t&&e){let n=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(n=document.activeElement),t.removeAttribute("aria-hidden"),e.appendChild(t),null==n||n.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(pp),ea(B_))},t.\u0275cmp=Jt({type:t,selectors:[["snack-bar-container"]],viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(t,e){1&t&&ga("@state.done",function(t){return e.onAnimationEnd(t)}),2&t&&rl("@state",e._animationState)},features:[jo],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(t,e){1&t&&(ra(0,"div",0),Jo(1,j_,0,0,"ng-template",1),sa(),oa(2,"div")),2&t&&(ws(2),Ko("aria-live",e._live)("role",e._role))},directives:[Up],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[H_.snackBarState]}}),t})(),G_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rf,Hp,Rh,x_,Ny],Ny]}),t})();const W_=new oi("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new B_}});let q_=(()=>{class t{constructor(t,e,n,i,r,s){this._overlay=t,this._live=e,this._injector=n,this._breakpointObserver=i,this._parentSnackBar=r,this._defaultConfig=s,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=U_,this.snackBarContainerComponent=$_,this.handsetCssClass="mat-snack-bar-handset"}get _openedSnackBarRef(){const t=this._parentSnackBar;return t?t._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(t){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=t:this._snackBarRefAtThisLevel=t}openFromComponent(t,e){return this._attach(t,e)}openFromTemplate(t,e){return this._attach(t,e)}open(t,e="",n){const i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:t,action:e},i.announcementMessage===t&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:B_,useValue:e}]}),i=new Np(this.snackBarContainerComponent,e.viewContainerRef,n),r=t.attach(i);return r.instance.snackBarConfig=e,r.instance}_attach(t,e){const n=Object.assign(Object.assign(Object.assign({},new B_),this._defaultConfig),e),i=this._createOverlay(n),r=this._attachSnackBarContainer(i,n),s=new z_(r,i);if(t instanceof sc){const e=new Lp(t,null,{$implicit:n.data,snackBarRef:s});s.instance=r.attachTemplatePortal(e)}else{const e=this._createInjector(n,s),i=new Np(t,void 0,e),o=r.attachComponentPortal(i);s.instance=o.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(Wd(i.detachments())).subscribe(t=>{const e=i.overlayElement.classList;t.matches?e.add(this.handsetCssClass):e.remove(this.handsetCssClass)}),n.announcementMessage&&r._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(s,n),this._openedSnackBarRef=s,this._openedSnackBarRef}_animateSnackBar(t,e){t.afterDismissed().subscribe(()=>{this._openedSnackBarRef==t&&(this._openedSnackBarRef=null),e.announcementMessage&&this._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{t.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):t.containerInstance.enter(),e.duration&&e.duration>0&&t.afterOpened().subscribe(()=>t._dismissAfter(e.duration))}_createOverlay(t){const e=new af;e.direction=t.direction;let n=this._overlay.position().global();const i="rtl"===t.direction,r="left"===t.horizontalPosition||"start"===t.horizontalPosition&&!i||"end"===t.horizontalPosition&&i,s=!r&&"center"!==t.horizontalPosition;return r?n.left("0"):s?n.right("0"):n.centerHorizontally(),"top"===t.verticalPosition?n.top("0"):n.bottom("0"),e.positionStrategy=n,this._overlay.create(e)}_createInjector(t,e){return No.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:z_,useValue:e},{provide:F_,useValue:t.data}]})}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(kg),Ci(No),Ci(R_),Ci(t,12),Ci(W_))},t.\u0275prov=xt({factory:function(){return new t(Ci(kf),Ci(kg),Ci(_o),Ci(R_),Ci(t,12),Ci(W_))},token:t,providedIn:G_}),t})();const X_={tooltipState:Vg("state",[$g("initial, void, hidden",Hg({opacity:0,transform:"scale(0)"})),$g("visible",Hg({transform:"scale(1)"})),Wg("* => visible",zg("200ms cubic-bezier(0, 0, 0.2, 1)",Gg([Hg({opacity:0,transform:"scale(0)",offset:0}),Hg({opacity:.5,transform:"scale(0.99)",offset:.5}),Hg({opacity:1,transform:"scale(1)",offset:1})]))),Wg("* => hidden",zg("100ms cubic-bezier(0, 0, 0.2, 1)",Hg({opacity:0})))])},Y_="tooltip-panel",K_=_p({passive:!0}),Q_=new oi("mat-tooltip-scroll-strategy"),Z_={provide:Q_,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition({scrollThrottle:20})}},J_=new oi("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}});let tw=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this._overlay=t,this._elementRef=e,this._scrollDispatcher=n,this._viewContainerRef=i,this._ngZone=r,this._platform=s,this._ariaDescriber=o,this._focusMonitor=a,this._dir=c,this._defaultOptions=u,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new P,this._handleKeydown=t=>{this._isTooltipVisible()&&27===t.keyCode&&!Qp(t)&&(t.preventDefault(),t.stopPropagation(),this._ngZone.run(()=>this.hide(0)))},this._scrollStrategy=l,this._document=h,u&&(u.position&&(this.position=u.position),u.touchGestures&&(this.touchGestures=u.touchGestures)),c.change.pipe(Wd(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)}),r.runOutsideAngular(()=>{e.nativeElement.addEventListener("keydown",this._handleKeydown)})}get position(){return this._position}set position(t){var e;t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(e=this._tooltipInstance)||void 0===e||e.show(0),this._overlayRef.updatePosition()))}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get message(){return this._message}set message(t){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=t?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(Wd(this._destroyed)).subscribe(t=>{t?"keyboard"===t&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const t=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),t.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(([e,n])=>{t.removeEventListener(e,n,K_)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay){if(this.disabled||!this.message||this._isTooltipVisible()&&!this._tooltipInstance._showTimeoutId&&!this._tooltipInstance._hideTimeoutId)return;const e=this._createOverlay();this._detach(),this._portal=this._portal||new Np(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=e.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}hide(t=this.hideDelay){this._tooltipInstance&&this._tooltipInstance.hide(t)}toggle(){this._isTooltipVisible()?this.hide():this.show()}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(){if(this._overlayRef)return this._overlayRef;const t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),e=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return e.positionChanges.pipe(Wd(this._destroyed)).subscribe(t=>{this._updateCurrentPositionClass(t.connectionPair),this._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:e,panelClass:`${this._cssClassPrefix}-${Y_}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(Wd(this._destroyed)).subscribe(()=>{var t;return null===(t=this._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){const e=t.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();e.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}_addOffset(t){return t}_getOrigin(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e||"below"==e?n={originX:"center",originY:"above"==e?"top":"bottom"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={originX:"start",originY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={originX:"end",originY:"center"});const{x:i,y:r}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:i,originY:r}}}_getOverlayPosition(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e?n={overlayX:"center",overlayY:"bottom"}:"below"==e?n={overlayX:"center",overlayY:"top"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={overlayX:"end",overlayY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={overlayX:"start",overlayY:"center"});const{x:i,y:r}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:i,overlayY:r}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(Gp(1),Wd(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return"above"===this.position||"below"===this.position?"top"===e?e="bottom":"bottom"===e&&(e="top"):"end"===t?t="start":"start"===t&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){const{overlayY:e,originX:n,originY:i}=t;let r;if(r="center"===e?this._dir&&"rtl"===this._dir.value?"end"===n?"left":"right":"start"===n?"left":"right":"bottom"===e&&"top"===i?"above":"below",r!==this._currentPosition){const t=this._overlayRef;if(t){const e=`${this._cssClassPrefix}-${Y_}-`;t.removePanelClass(e+this._currentPosition),t.addPanelClass(e+r)}this._currentPosition=r}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",()=>{this._setupPointerExitEventsIfNeeded(),this.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",()=>{this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const t=[];if(this._platformSupportsMouseEvents())t.push(["mouseleave",()=>this.hide()],["wheel",t=>this._wheelListener(t)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const e=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};t.push(["touchend",e],["touchcancel",e])}this._addListeners(t),this._passiveListeners.push(...t)}_addListeners(t){t.forEach(([t,e])=>{this._elementRef.nativeElement.addEventListener(t,e,K_)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(t){if(this._isTooltipVisible()){const e=this._document.elementFromPoint(t.clientX,t.clientY),n=this._elementRef.nativeElement;e!==n&&!n.contains(e)&&this.hide()}}_disableNativeGesturesIfNecessary(){const t=this.touchGestures;if("off"!==t){const e=this._elementRef.nativeElement,n=e.style;("on"===t||"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),("on"===t||!e.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(void 0),ea(Op),ea(void 0),ea(Yu))},t.\u0275dir=se({type:t,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),t})(),ew=(()=>{class t extends tw{constructor(t,e,n,i,r,s,o,a,l,c,u,h){super(t,e,n,i,r,s,o,a,l,c,u,h),this._tooltipComponent=iw}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(Q_),ea(Op,8),ea(J_,8),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[jo]}),t})(),nw=(()=>{class t{constructor(t){this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new P}show(t){clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(()=>{this._visibility="visible",this._showTimeoutId=void 0,this._onShow(),this._markForCheck()},t)}hide(t){clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._visibility="hidden",this._hideTimeoutId=void 0,this._markForCheck()},t)}afterHidden(){return this._onHide}isVisible(){return"visible"===this._visibility}ngOnDestroy(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}_animationStart(){this._closeOnInteraction=!1}_animationDone(t){const e=t.toState;"hidden"===e&&!this.isVisible()&&this._onHide.next(),("visible"===e||"hidden"===e)&&(this._closeOnInteraction=!0)}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_onShow(){}}return t.\u0275fac=function(e){return new(e||t)(ea(tc))},t.\u0275dir=se({type:t}),t})(),iw=(()=>{class t extends nw{constructor(t,e){super(t),this._breakpointObserver=e,this._isHandset=this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)")}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(R_))},t.\u0275cmp=Jt({type:t,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(t,e){2&t&&La("zoom","visible"===e._visibility?1:null)},features:[jo],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(t,e){if(1&t&&(ra(0,"div",0),fa("@state.start",function(){return e._animationStart()})("@state.done",function(t){return e._animationDone(t)}),Mc(1,"async"),Za(2),sa()),2&t){let t;ja("mat-tooltip-handset",null==(t=Ic(1,5,e._isHandset))?null:t.matches),na("ngClass",e.tooltipClass)("@state",e._visibility),ws(2),Ja(e.message)}},directives:[mh],pipes:[Dh],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[X_.tooltipState]},changeDetection:0}),t})(),rw=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Z_],imports:[[Lg,Rh,Rf,Ny],Ny,Ip]}),t})();function sw(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(o=(s<3?r(o):s>3?r(e,n,o):r(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o}function ow(t,e){return function(n,i){e(n,i,t)}}function aw(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function lw(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{l(i.next(t))}catch(e){s(e)}}function a(t){try{l(i.throw(t))}catch(e){s(e)}}function l(t){t.done?r(t.value):function(t){return t instanceof n?t:new n(function(e){e(t)})}(t.value).then(o,a)}l((i=i.apply(t,e||[])).next())})}function cw(t){if("undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"==typeof process.versions&&Boolean(process.versions.electron))return!0;const e="object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)}function uw(){return!("object"==typeof process&&"[object process]"===String(process)&&!process.browser)||cw()}const hw="undefined"!=typeof __VERSION__?__VERSION__:"untranspiled source",dw=uw();class pw{constructor(t,e,n="sessionStorage"){this.storage=function(e){try{const t=window[e],n="__storage_test__";return t.setItem(n,n),t.removeItem(n),t}catch(t){return null}}(n),this.id=t,this.config={},Object.assign(this.config,e),this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){return this.config={},this.updateConfiguration(t)}updateConfiguration(t){if(Object.assign(this.config,t),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}return this}_loadConfiguration(){let t={};if(this.storage){const e=this.storage.getItem(this.id);t=e?JSON.parse(e):{}}return Object.assign(this.config,t),this}}function fw(t,e,n,i=600){const r=t.src.replace(/\(/g,"%28").replace(/\)/g,"%29");t.width>i&&(n=Math.min(n,i/t.width));const s=t.width*n,o=t.height*n,a=["font-size:1px;","padding:".concat(Math.floor(o/2),"px ").concat(Math.floor(s/2),"px;"),"line-height:".concat(o,"px;"),"background:url(".concat(r,");"),"background-size:".concat(s,"px ").concat(o,"px;"),"color:transparent;"].join("");return["".concat(e," %c+"),a]}const gw={BLACK:30,RED:31,GREEN:32,YELLOW:33,BLUE:34,MAGENTA:35,CYAN:36,WHITE:37,BRIGHT_BLACK:90,BRIGHT_RED:91,BRIGHT_GREEN:92,BRIGHT_YELLOW:93,BRIGHT_BLUE:94,BRIGHT_MAGENTA:95,BRIGHT_CYAN:96,BRIGHT_WHITE:97};function mw(t){return"string"==typeof t?gw[t.toUpperCase()]||gw.WHITE:t}function bw(t,e){if(!t)throw new Error(e||"Assertion failed")}const yw={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"==typeof process&&process},vw=yw.window||yw.self||yw.global,_w=yw.process||{};function ww(){let t;if(dw&&vw.performance)t=vw.performance.now();else if(_w.hrtime){const e=_w.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}console;const xw={debug:dw&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Sw={enabled:!0,level:0};function Ew(){}const Cw={},Ow={once:!0};function Tw(t){for(const e in t)for(const n in t[e])return n||"untitled";return"empty"}let kw=(()=>{class t{constructor({id:t}={id:""}){this.id=t,this.VERSION=hw,this._startTs=ww(),this._deltaTs=ww(),this.LOG_THROTTLE_TIMEOUT=0,this._storage=new pw("__probe-".concat(this.id,"__"),Sw),this.userData={},this.timeStamp("".concat(this.id," started")),function(t,e=["constructor"]){const n=Object.getPrototypeOf(t),i=Object.getOwnPropertyNames(n);for(const r of i)"function"==typeof t[r]&&(e.find(t=>r===t)||(t[r]=t[r].bind(t)))}(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((ww()-this._startTs).toPrecision(10))}getDelta(){return Number((ww()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(t=!0){return this._storage.updateConfiguration({enabled:t}),this}setLevel(t){return this._storage.updateConfiguration({level:t}),this}assert(t,e){bw(t,e)}warn(t){return this._getLogFunction(0,t,xw.warn,arguments,Ow)}error(t){return this._getLogFunction(0,t,xw.error,arguments)}deprecated(t,e){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(e,"` instead"))}removed(t,e){return this.error("`".concat(t,"` has been removed. Use `").concat(e,"` instead"))}probe(t,e){return this._getLogFunction(t,e,xw.log,arguments,{time:!0,once:!0})}log(t,e){return this._getLogFunction(t,e,xw.debug,arguments)}info(t,e){return this._getLogFunction(t,e,console.info,arguments)}once(t,e){return this._getLogFunction(t,e,xw.debug||xw.info,arguments,Ow)}table(t,e,n){return e?this._getLogFunction(t,e,console.table||Ew,n&&[n],{tag:Tw(e)}):Ew}image({logLevel:t,priority:e,image:i,message:r="",scale:s=1}){return this._shouldLog(t||e)?dw?function({image:t,message:e="",scale:n=1}){if("string"==typeof t){const i=new Image;return i.onload=()=>{const t=fw(i,e,n);console.log(...t)},i.src=t,Ew}const i=t.nodeName||"";if("img"===i.toLowerCase())return console.log(...fw(t,e,n)),Ew;if("canvas"===i.toLowerCase()){const i=new Image;return i.onload=()=>console.log(...fw(i,e,n)),i.src=t.toDataURL(),Ew}return Ew}({image:i,message:r,scale:s}):function({image:t,message:e="",scale:r=1}){let s=null;try{s=n(75307)}catch(i){}return s?()=>s(t,{fit:"box",width:"".concat(Math.round(80*r),"%")}).then(t=>console.log(t)):Ew}({image:i,message:r,scale:s}):Ew}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}get(t){return this._storage.config[t]}set(t,e){this._storage.updateConfiguration({[t]:e})}time(t,e){return this._getLogFunction(t,e,console.time?console.time:console.info)}timeEnd(t,e){return this._getLogFunction(t,e,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,e){return this._getLogFunction(t,e,console.timeStamp||Ew)}group(t,e,n={collapsed:!1}){n=Pw({logLevel:t,message:e,opts:n});const{collapsed:i}=n;return n.method=(i?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}groupCollapsed(t,e,n={}){return this.group(t,e,Object.assign({},n,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",console.groupEnd||Ew)}withGroup(t,e,n){this.group(t,e)();try{n()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&this.getLevel()>=Aw(t)}_getLogFunction(t,e,n,i=[],r){if(this._shouldLog(t)){r=Pw({logLevel:t,message:e,args:i,opts:r}),bw(n=n||r.method),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=ww();const s=r.tag||r.message;if(r.once){if(Cw[s])return Ew;Cw[s]=ww()}return e=function(t,e,n){if("string"==typeof e){const i=n.time?function(t,e=8){const n=Math.max(e-t.length,0);return"".concat(" ".repeat(n)).concat(t)}(function(t){let e;return e=t<10?"".concat(t.toFixed(2),"ms"):t<100?"".concat(t.toFixed(1),"ms"):t<1e3?"".concat(t.toFixed(0),"ms"):"".concat((t/1e3).toFixed(2),"s"),e}(n.total)):"";e=function(t,e,n){return!dw&&"string"==typeof t&&(e&&(e=mw(e),t="\x1b[".concat(e,"m").concat(t,"\x1b[39m")),n&&(e=mw(n),t="\x1b[".concat(n+10,"m").concat(t,"\x1b[49m"))),t}(e=n.time?"".concat(t,": ").concat(i," ").concat(e):"".concat(t,": ").concat(e),n.color,n.background)}return e}(this.id,r.message,r),n.bind(console,e,...r.args)}return Ew}}return t.VERSION=hw,t})();function Aw(t){if(!t)return 0;let e;switch(typeof t){case"number":e=t;break;case"object":e=t.logLevel||t.priority||0;break;default:return 0}return bw(Number.isFinite(e)&&e>=0),e}function Pw(t){const{logLevel:e,message:n}=t;t.logLevel=Aw(e);const i=t.args?Array.from(t.args):[];for(;i.length&&i.shift()!==n;);switch(t.args=i,typeof e){case"string":case"function":void 0!==n&&i.unshift(n),t.message=e;break;case"object":Object.assign(t,e)}"function"==typeof t.message&&(t.message=t.message());const r=typeof t.message;return bw("string"===r||"object"===r),Object.assign(t,t.opts)}var Mw=new kw({id:"deck"});const Iw={DEFAULT:-1,LNGLAT:1,METER_OFFSETS:2,LNGLAT_OFFSETS:3,CARTESIAN:0};Object.defineProperty(Iw,"IDENTITY",{get:()=>Mw.deprecated("COORDINATE_SYSTEM.IDENTITY","COORDINATE_SYSTEM.CARTESIAN")()||0});const Dw={WEB_MERCATOR:1,GLOBE:2,WEB_MERCATOR_AUTO_OFFSET:4,IDENTITY:0},Rw={click:{handler:"onClick"},panstart:{handler:"onDragStart"},panmove:{handler:"onDrag"},panend:{handler:"onDragEnd"}},Nw=new kw({id:"luma.gl"});function Lw(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function jw(t){return"undefined"!=typeof WebGLRenderingContext&&t instanceof WebGLRenderingContext||"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&Number.isFinite(t._version))}function Fw(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}function Bw(t){return Lw(jw(t),"Invalid WebGLRenderingContext"),t}function Vw(t){return Lw(Fw(t),"Requires WebGL2"),t}var zw=n(84761);const Uw={};const Hw=function t(e){const n=e.gl;this.ext=e,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(e.maxVertexAttribs);for(let i=0;i{zw.CO.console&&zw.CO.console.log&&zw.CO.console.log("OESVertexArrayObject emulation library context restored"),e.reset_()},!0),this.reset_()};$w.prototype.VERTEX_ARRAY_BINDING_OES=34229,$w.prototype.reset_=function(){if(void 0!==this.vertexArrayObjects)for(let t=0;tFw(t)?void 0:0,Yw={3074:t=>Fw(t)?void 0:36064,35723:t=>Fw(t)?void 0:4352,35977:Xw,32937:Xw,36795:(t,e)=>{const n=Fw(t)?t.getExtension("EXT_disjoint_timer_query_webgl2"):t.getExtension("EXT_disjoint_timer_query");return n&&n.GPU_DISJOINT_EXT?e(n.GPU_DISJOINT_EXT):0},37445:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_VENDOR_WEBGL||7936)},37446:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_RENDERER_WEBGL||7937)},34047:(t,e)=>{const n=t.luma.extensions.EXT_texture_filter_anisotropic;return n?e(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):1},32883:Xw,35071:Xw,37447:Xw,36063:(t,e)=>{if(!Fw(t)){const n=t.getExtension(Ww);return n?e(n.MAX_COLOR_ATTACHMENTS_WEBGL):0}},35379:Xw,35374:Xw,35377:Xw,34852:t=>{if(!Fw(t)){const e=t.getExtension(Ww);return e?e.MAX_DRAW_BUFFERS_WEBGL:0}},36203:t=>t.getExtension(Gw)?2147483647:65535,33001:t=>t.getExtension(Gw)?16777216:65535,33e3:t=>16777216,37157:Xw,35373:Xw,35657:Xw,36183:Xw,37137:Xw,34045:Xw,35978:Xw,35979:Xw,35968:Xw,35376:Xw,35375:Xw,35659:Xw,37154:Xw,35371:Xw,35658:Xw,35076:Xw,35077:Xw,35380:Xw},Kw="ANGLE_instanced_arrays",Qw={OES_vertex_array_object:{meta:{suffix:"OES"},createVertexArray:()=>{Lw(!1,"VertexArray requires WebGL2 or OES_vertex_array_object extension")},deleteVertexArray:()=>{},bindVertexArray:()=>{},isVertexArray:()=>!1},[Kw]:{meta:{suffix:"ANGLE"},vertexAttribDivisor(t,e){Lw(0===e,"WebGL instanced rendering not supported")},drawElementsInstanced:()=>{},drawArraysInstanced:()=>{}},WEBGL_draw_buffers:{meta:{suffix:"WEBGL"},drawBuffers:()=>{Lw(!1)}},EXT_disjoint_timer_query:{meta:{suffix:"EXT"},createQuery:()=>{Lw(!1)},deleteQuery:()=>{Lw(!1)},beginQuery:()=>{Lw(!1)},endQuery:()=>{},getQuery(t,e){return this.getQueryObject(t,e)},getQueryParameter(t,e){return this.getQueryObject(t,e)},getQueryObject:()=>{}}},Zw={readBuffer:(t,e,n)=>{Fw(t)&&e(n)},getVertexAttrib:(t,e,n,i)=>{const{webgl2:r,ext:s}=function(t,e){return{webgl2:Fw(t),ext:t.getExtension("ANGLE_instanced_arrays")}}(t);let o;switch(i){case 35069:o=!!r&&void 0;break;case 35070:o=r||s?void 0:0}return void 0!==o?o:e(n,i)},getProgramParameter:(t,e,n,i)=>{if(!Fw(t))switch(i){case 35967:return 35981;case 35971:case 35382:return 0}return e(n,i)},getInternalformatParameter:(t,e,n,i,r)=>{if(!Fw(t))switch(r){case 32937:return new Int32Array([0])}return t.getInternalformatParameter(n,i,r)},getTexParameter(t,e,n,i){switch(i){case 34046:const{extensions:e}=t.luma,n=e.EXT_texture_filter_anisotropic;i=n&&n.TEXTURE_MAX_ANISOTROPY_EXT||34046}return e(n,i)},getParameter:function(t,e,n){const i=Yw[n],r="function"==typeof i?i(t,e,n):i;return void 0!==r?r:e(n)},hint:(t,e,n,i)=>e(n,i)};function Jw(t,{extension:e,target:n,target2:i}){const r=Qw[e];Lw(r);const{meta:s={}}=r,{suffix:o=""}=s,a=t.getExtension(e);for(const l of Object.keys(r)){const e=`${l}${o}`;let s=null;"meta"===l||"function"==typeof t[l]||(a&&"function"==typeof a[e]?s=(...t)=>a[e](...t):"function"==typeof r[l]&&(s=r[l].bind(n))),s&&(n[l]=s,i[l]=s)}}("undefined"!=typeof global?global:window).polyfillContext=function(t){t.luma=t.luma||{};const{luma:e}=t;return e.polyfilled||(function(t){if("function"==typeof t.createVertexArray)return;const e=t.getSupportedExtensions;t.getSupportedExtensions=function(){const t=e.call(this)||[];return t.indexOf("OES_vertex_array_object")<0&&t.push("OES_vertex_array_object"),t};const n=t.getExtension;t.getExtension=function(e){return n.call(this,e)||("OES_vertex_array_object"!==e?null:(t.__OESVertexArrayObject||(this.__OESVertexArrayObject=new $w(this)),this.__OESVertexArrayObject))}}(t),function(t){t.luma.extensions={};const e=t.getSupportedExtensions()||[];for(const n of e)t.luma[n]=t.getExtension(n)}(t),function(t,e){for(const n of Object.getOwnPropertyNames(e))"overrides"!==n&&Jw(t,{extension:n,target:t.luma,target2:t})}(t,Qw),function(t,{target:e,target2:n}){Object.keys(Zw).forEach(i=>{if("function"==typeof Zw[i]){const r=t[i]?t[i].bind(t):()=>{},s=Zw[i].bind(null,t,r);e[i]=s,n[i]=s}})}(t,{target:e,target2:t}),e.polyfilled=!0),t};const tx={3042:!1,32773:new Float32Array([0,0,0,0]),32777:32774,34877:32774,32969:1,32968:0,32971:1,32970:0,3106:new Float32Array([0,0,0,0]),3107:[!0,!0,!0,!0],2884:!1,2885:1029,2929:!1,2931:1,2932:513,2928:new Float32Array([0,1]),2930:!0,3024:!0,36006:null,2886:2305,33170:4352,2849:1,32823:!1,32824:0,10752:0,32938:1,32939:!1,3089:!1,3088:new Int32Array([0,0,1024,1024]),2960:!1,2961:0,2968:4294967295,36005:4294967295,2962:519,2967:0,2963:4294967295,34816:519,36003:0,36004:4294967295,2964:7680,2965:7680,2966:7680,34817:7680,34818:7680,34819:7680,2978:[0,0,1024,1024],3333:4,3317:4,37440:!1,37441:!1,37443:37444,35723:4352,36010:null,35977:!1,3330:0,3332:0,3331:0,3314:0,32878:0,3316:0,3315:0,32877:0},ex=(t,e,n)=>e?t.enable(n):t.disable(n),nx=(t,e,n)=>t.hint(n,e),ix=(t,e,n)=>t.pixelStorei(n,e);function rx(t){return Array.isArray(t)||ArrayBuffer.isView(t)}const sx={3042:ex,32773:(t,e)=>t.blendColor(...e),32777:"blendEquation",34877:"blendEquation",32969:"blendFunc",32968:"blendFunc",32971:"blendFunc",32970:"blendFunc",3106:(t,e)=>t.clearColor(...e),3107:(t,e)=>t.colorMask(...e),2884:ex,2885:(t,e)=>t.cullFace(e),2929:ex,2931:(t,e)=>t.clearDepth(e),2932:(t,e)=>t.depthFunc(e),2928:(t,e)=>t.depthRange(...e),2930:(t,e)=>t.depthMask(e),3024:ex,35723:nx,36006:(t,e)=>{const n=Fw(t)?36009:36160;return t.bindFramebuffer(n,e)},2886:(t,e)=>t.frontFace(e),33170:nx,2849:(t,e)=>t.lineWidth(e),32823:ex,32824:"polygonOffset",10752:"polygonOffset",35977:ex,32938:"sampleCoverage",32939:"sampleCoverage",3089:ex,3088:(t,e)=>t.scissor(...e),2960:ex,2961:(t,e)=>t.clearStencil(e),2968:(t,e)=>t.stencilMaskSeparate(1028,e),36005:(t,e)=>t.stencilMaskSeparate(1029,e),2962:"stencilFuncFront",2967:"stencilFuncFront",2963:"stencilFuncFront",34816:"stencilFuncBack",36003:"stencilFuncBack",36004:"stencilFuncBack",2964:"stencilOpFront",2965:"stencilOpFront",2966:"stencilOpFront",34817:"stencilOpBack",34818:"stencilOpBack",34819:"stencilOpBack",2978:(t,e)=>t.viewport(...e),3333:ix,3317:ix,37440:ix,37441:ix,37443:ix,3330:ix,3332:ix,3331:ix,36010:(t,e)=>t.bindFramebuffer(36008,e),3314:ix,32878:ix,3316:ix,3315:ix,32877:ix,framebuffer:(t,e)=>t.bindFramebuffer(36160,e&&"handle"in e?e.handle:e),blend:(t,e)=>e?t.enable(3042):t.disable(3042),blendColor:(t,e)=>t.blendColor(...e),blendEquation:(t,e)=>{e=rx(e)?e:[e,e],t.blendEquationSeparate(...e)},blendFunc:(t,e)=>{e=rx(e)&&2===e.length?[...e,...e]:e,t.blendFuncSeparate(...e)},clearColor:(t,e)=>t.clearColor(...e),clearDepth:(t,e)=>t.clearDepth(e),clearStencil:(t,e)=>t.clearStencil(e),colorMask:(t,e)=>t.colorMask(...e),cull:(t,e)=>e?t.enable(2884):t.disable(2884),cullFace:(t,e)=>t.cullFace(e),depthTest:(t,e)=>e?t.enable(2929):t.disable(2929),depthFunc:(t,e)=>t.depthFunc(e),depthMask:(t,e)=>t.depthMask(e),depthRange:(t,e)=>t.depthRange(...e),dither:(t,e)=>e?t.enable(3024):t.disable(3024),derivativeHint:(t,e)=>{t.hint(35723,e)},frontFace:(t,e)=>t.frontFace(e),mipmapHint:(t,e)=>t.hint(33170,e),lineWidth:(t,e)=>t.lineWidth(e),polygonOffsetFill:(t,e)=>e?t.enable(32823):t.disable(32823),polygonOffset:(t,e)=>t.polygonOffset(...e),sampleCoverage:(t,e)=>t.sampleCoverage(...e),scissorTest:(t,e)=>e?t.enable(3089):t.disable(3089),scissor:(t,e)=>t.scissor(...e),stencilTest:(t,e)=>e?t.enable(2960):t.disable(2960),stencilMask:(t,e)=>{e=rx(e)?e:[e,e];const[n,i]=e;t.stencilMaskSeparate(1028,n),t.stencilMaskSeparate(1029,i)},stencilFunc:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilFuncSeparate(1028,n,i,r),t.stencilFuncSeparate(1029,s,o,a)},stencilOp:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilOpSeparate(1028,n,i,r),t.stencilOpSeparate(1029,s,o,a)},viewport:(t,e)=>t.viewport(...e)};function ox(t,e,n){return void 0!==e[t]?e[t]:n[t]}const ax={blendEquation:(t,e,n)=>t.blendEquationSeparate(ox(32777,e,n),ox(34877,e,n)),blendFunc:(t,e,n)=>t.blendFuncSeparate(ox(32969,e,n),ox(32968,e,n),ox(32971,e,n),ox(32970,e,n)),polygonOffset:(t,e,n)=>t.polygonOffset(ox(32824,e,n),ox(10752,e,n)),sampleCoverage:(t,e,n)=>t.sampleCoverage(ox(32938,e,n),ox(32939,e,n)),stencilFuncFront:(t,e,n)=>t.stencilFuncSeparate(1028,ox(2962,e,n),ox(2967,e,n),ox(2963,e,n)),stencilFuncBack:(t,e,n)=>t.stencilFuncSeparate(1029,ox(34816,e,n),ox(36003,e,n),ox(36004,e,n)),stencilOpFront:(t,e,n)=>t.stencilOpSeparate(1028,ox(2964,e,n),ox(2965,e,n),ox(2966,e,n)),stencilOpBack:(t,e,n)=>t.stencilOpSeparate(1029,ox(34817,e,n),ox(34818,e,n),ox(34819,e,n))},lx={enable:(t,e)=>t({[e]:!0}),disable:(t,e)=>t({[e]:!1}),pixelStorei:(t,e,n)=>t({[e]:n}),hint:(t,e,n)=>t({[e]:n}),bindFramebuffer:(t,e,n)=>{switch(e){case 36160:return t({36006:n,36010:n});case 36009:return t({36006:n});case 36008:return t({36010:n});default:return null}},blendColor:(t,e,n,i,r)=>t({32773:new Float32Array([e,n,i,r])}),blendEquation:(t,e)=>t({32777:e,34877:e}),blendEquationSeparate:(t,e,n)=>t({32777:e,34877:n}),blendFunc:(t,e,n)=>t({32969:e,32968:n,32971:e,32970:n}),blendFuncSeparate:(t,e,n,i,r)=>t({32969:e,32968:n,32971:i,32970:r}),clearColor:(t,e,n,i,r)=>t({3106:new Float32Array([e,n,i,r])}),clearDepth:(t,e)=>t({2931:e}),clearStencil:(t,e)=>t({2961:e}),colorMask:(t,e,n,i,r)=>t({3107:[e,n,i,r]}),cullFace:(t,e)=>t({2885:e}),depthFunc:(t,e)=>t({2932:e}),depthRange:(t,e,n)=>t({2928:new Float32Array([e,n])}),depthMask:(t,e)=>t({2930:e}),frontFace:(t,e)=>t({2886:e}),lineWidth:(t,e)=>t({2849:e}),polygonOffset:(t,e,n)=>t({32824:e,10752:n}),sampleCoverage:(t,e,n)=>t({32938:e,32939:n}),scissor:(t,e,n,i,r)=>t({3088:new Int32Array([e,n,i,r])}),stencilMask:(t,e)=>t({2968:e,36005:e}),stencilMaskSeparate:(t,e,n)=>t({[1028===e?2968:36005]:n}),stencilFunc:(t,e,n,i)=>t({2962:e,2967:n,2963:i,34816:e,36003:n,36004:i}),stencilFuncSeparate:(t,e,n,i,r)=>t({[1028===e?2962:34816]:n,[1028===e?2967:36003]:i,[1028===e?2963:36004]:r}),stencilOp:(t,e,n,i)=>t({2964:e,2965:n,2966:i,34817:e,34818:n,34819:i}),stencilOpSeparate:(t,e,n,i,r)=>t({[1028===e?2964:34817]:n,[1028===e?2965:34818]:i,[1028===e?2966:34819]:r}),viewport:(t,e,n,i,r)=>t({2978:[e,n,i,r]})},cx=(t,e)=>t.isEnabled(e),ux={3042:cx,2884:cx,2929:cx,3024:cx,32823:cx,32926:cx,32928:cx,3089:cx,2960:cx,35977:cx};function hx(t){for(const e in t)return!1;return!0}function dx(t,e){if(t===e)return!0;const n=Array.isArray(t)||ArrayBuffer.isView(t),i=Array.isArray(e)||ArrayBuffer.isView(e);if(n&&i&&t.length===e.length){for(let n=0;n{})}={}){this.gl=t,this.program=null,this.stateStack=[],this.enable=!0,this.cache=e?function(t,e){if("number"==typeof(e=e||tx)){const n=e,i=ux[n];return i?i(t,n):t.getParameter(n)}const n=Array.isArray(e)?e:Object.keys(e),i={};for(const r of n){const e=ux[r];i[r]=e?e(t,Number(r)):t.getParameter(Number(r))}return i}(t):Object.assign({},tx),this.log=n,this._updateCache=this._updateCache.bind(this),Object.seal(this)}push(t={}){this.stateStack.push({})}pop(){Lw(this.stateStack.length>0),yx(this.gl,this.stateStack[this.stateStack.length-1]),this.stateStack.pop()}_updateCache(t){let e,n=!1;const i=this.stateStack.length>0&&this.stateStack[this.stateStack.length-1];for(const r in t){Lw(void 0!==r);const s=t[r],o=this.cache[r];dx(s,o)||(n=!0,e=o,i&&!(r in i)&&(i[r]=o),this.cache[r]=s)}return{valueChanged:n,oldValue:e}}}function mx(t,e={}){const{enable:n=!0,copyState:i}=e;if(Lw(void 0!==i),!t.state){const e="undefined"!=typeof global?global:window,{polyfillContext:n}=e;n&&n(t),t.state=new gx(t,{copyState:i}),function(t){const e=t.useProgram.bind(t);t.useProgram=function(n){t.state.program!==n&&(e(n),t.state.program=n)}}(t);for(const i in lx)fx(t,i,lx[i]);px(t,"getParameter"),px(t,"isEnabled")}return t.state.enable=n,t}function bx(t){Lw(t.state),t.state.pop()}function yx(t,e){if(Lw(jw(t),"setParameters requires a WebGL context"),hx(e))return;const n={};for(const r in e){const i=Number(r),s=sx[r];s&&("string"==typeof s?n[s]=!0:s(t,e[r],i))}const i=t.state&&t.state.cache;if(i)for(const r in n)ax[r](t,e,i)}function vx(t,e,n){if(hx(e))return n(t);const{nocatch:i=!0}=e;let r;if(function(t){t.state||mx(t,{copyState:!1}),t.state.push()}(t),yx(t,e),i)r=n(t),bx(t);else try{r=n(t)}finally{bx(t)}return r}function _x(t){const{luma:e}=t;if(t.canvas&&e){const{clientWidth:n}=e.canvasSizeInfo;return n?t.drawingBufferWidth/n:1}return 1}function wx(t,e,n=!0){return function(t,e,n,i,r){const s=xx(t[0],e,n);let o=Sx(t[1],e,i,r),a=xx(t[0]+1,e,n);const l=a===n-1?a:a-1;let c;return a=Sx(t[1]+1,e,i,r),r?(a=0===a?a:a+1,c=o,o=a):c=a===i-1?a:a-1,{x:s,y:o,width:Math.max(l-s+1,1),height:Math.max(c-o+1,1)}}(e,_x(t),t.drawingBufferWidth,t.drawingBufferHeight,n)}function xx(t,e,n){return Math.min(Math.round(t*e),n-1)}function Sx(t,e,n,i){return i?Math.max(0,n-1-Math.round(t*e)):Math.min(Math.round(t*e),n-1)}const Ex=(0,zw.jU)(),Cx=Ex&&"undefined"!=typeof document,Ox={webgl2:!0,webgl1:!0,throwOnError:!0,manageState:!0,canvas:null,debug:!1,width:800,height:600};function Tx(t={}){Lw(Ex,"createGLContext only available in the browser.\nCreate your own headless context or use 'createHeadlessContext' from @luma.gl/test-utils"),t=Object.assign({},Ox,t);const{width:e,height:n}=t;function i(e){if(t.throwOnError)throw new Error(e);return console.error(e),null}let r;t.onError=i;const{canvas:s}=t,o=function({canvas:t,width:e=800,height:n=600,onError:i}){let r;return"string"==typeof t?(Cx&&"complete"===document.readyState||i(`createGLContext called on canvas '${t}' before page was loaded`),r=document.getElementById(t)):t?r=t:(r=document.createElement("canvas"),r.id="lumagl-canvas",r.style.width=Number.isFinite(e)?`${e}px`:"100%",r.style.height=Number.isFinite(n)?`${n}px`:"100%",document.body.insertBefore(r,document.body.firstChild)),r}({canvas:s,width:e,height:n,onError:i});return r=function(t,e){const{onError:n}=e;let i=null;const r=t=>i=t.statusMessage||i;t.addEventListener("webglcontextcreationerror",r,!1);const{webgl1:s=!0,webgl2:o=!0}=e;let a=null;return o&&(a=a||t.getContext("webgl2",e),a=a||t.getContext("experimental-webgl2",e)),s&&(a=a||t.getContext("webgl",e),a=a||t.getContext("experimental-webgl",e)),t.removeEventListener("webglcontextcreationerror",r,!1),a?(e.onContextLost&&t.addEventListener("webglcontextlost",e.onContextLost,!1),e.onContextRestored&&t.addEventListener("webglcontextrestored",e.onContextRestored,!1),a):n(`Failed to create ${o&&!s?"WebGL2":"WebGL"} context: ${i||"Unknown error"}`)}(o,t),r?(r=kx(r,t),function(t){const e=Fw(t)?"WebGL2":"WebGL1",n=function(t){const e=t.getParameter(7936),n=t.getParameter(7937),i=t.getExtension("WEBGL_debug_renderer_info");return{vendor:i&&t.getParameter(i.UNMASKED_VENDOR_WEBGL||7936)||e,renderer:i&&t.getParameter(i.UNMASKED_RENDERER_WEBGL||7937)||n,vendorMasked:e,rendererMasked:n,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t);Nw.info(1,`${e}${t.debug?" debug":""} context ${n?`(${n.vendor},${n.renderer})`:""}`)()}(r),r):null}function kx(t,e={}){if(!t||t._instrumented)return t;t._version=t._version||function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext?2:1}(t),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{},e=Object.assign({},Ox,e);const{manageState:n,debug:i}=e;return n&&mx(t,{copyState:!1,log:(...t)=>Nw.log(1,...t)()}),Ex&&i&&(zw.CO.makeDebugContext?(t=zw.CO.makeDebugContext(t,e),Nw.level=Math.max(Nw.level,1)):Nw.warn('WebGL debug mode not activated. import "@luma.gl/debug" to enable.')()),t._instrumented=!0,t}function Ax(){let t;if("undefined"!=typeof window&&window.performance)t=window.performance.now();else if("undefined"!=typeof process&&process.hrtime){const e=process.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}class Px{constructor(t,e){this.name=t,this.type=e,this.sampleSize=1,this.reset()}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=Ax(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(Ax()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}}class Mx{constructor({id:t,stats:e}){this.id=t,this.stats={},this._initializeStats(e),Object.seal(this)}get(t,e="count"){return this._getOrCreate({name:t,type:e})}get size(){return Object.keys(this.stats).length}reset(){for(const t in this.stats)this.stats[t].reset();return this}forEach(t){for(const e in this.stats)t(this.stats[e])}getTable(){const t={};return this.forEach(e=>{t[e.name]={time:e.time||0,count:e.count||0,average:e.getAverageTime()||0,hz:e.getHz()||0}}),t}_initializeStats(t=[]){t.forEach(t=>this._getOrCreate(t))}_getOrCreate(t){if(!t||!t.name)return null;const{name:e,type:n}=t;return this.stats[e]||(this.stats[e]=t instanceof Px?t:new Px(e,n)),this.stats[e]}}const Ix="8.5.7",Dx=new class{constructor(){this.stats=new Map}get(t){return this.stats.has(t)||this.stats.set(t,new Mx({id:t})),this.stats.get(t)}};if(zw.CO.luma&&zw.CO.luma.VERSION!==Ix)throw new Error(`luma.gl - multiple VERSIONs detected: ${zw.CO.luma.VERSION} vs 8.5.7`);function Rx(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function Nx(t,e){if("string"!=typeof e)return e;const n=Number(e);if(!isNaN(n))return n;const i=t[e=e.replace(/^.*\./,"")];return Rx(void 0!==i,`Accessing undefined constant GL.${e}`),i}function Lx(t,e){e=Number(e);for(const n in t)if(t[n]===e)return`GL.${n}`;return String(e)}zw.CO.luma||((0,zw.jU)()&&Nw.log(1,"luma.gl 8.5.7 - set luma.log.level=1 (or higher) to trace rendering")(),zw.CO.luma=zw.CO.luma||{VERSION:Ix,version:Ix,log:Nw,stats:Dx,globals:{modules:{},nodeIO:{}}});const jx={};function Fx(t="id"){return jx[t]=jx[t]||1,`${t}-${jx[t]++}`}function Bx(t){return Rx("number"==typeof t,"Input must be a number"),t&&0==(t&t-1)}function Vx(t){let e=!0;for(const n in t){e=!1;break}return e}function zx(t,e,n,i){const r=`See luma.gl ${n} Upgrade Guide at https://luma.gl/docs/upgrade-guide`,s=Object.getPrototypeOf(t);i.forEach(t=>{s.methodName||(s[t]=()=>{throw Nw.removed(`Calling removed method ${e}.${t}: `,r)(),new Error(t)})})}const Ux="Resource subclass must define virtual methods";class Hx{constructor(t,e={}){Bw(t);const{id:n,userData:i={}}=e;this.gl=t,this.gl2=t,this.id=n||Fx(this.constructor.name),this.userData=i,this._bound=!1,this._handle=e.handle,void 0===this._handle&&(this._handle=this._createHandle()),this.byteLength=0,this._addStats()}toString(){return`${this.constructor.name}(${this.id})`}get handle(){return this._handle}delete({deleteChildren:t=!1}={}){const e=this._handle&&this._deleteHandle(this._handle);return this._handle&&this._removeStats(),this._handle=null,e&&t&&e.filter(Boolean).forEach(t=>t.delete()),this}bind(t=this.handle){if("function"!=typeof t)return this._bindHandle(t),this;let e;return this._bound?e=t():(this._bindHandle(this.handle),this._bound=!0,e=t(),this._bound=!1,this._bindHandle(null)),e}unbind(){this.bind(null)}getParameter(t,e={}){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension)){const e=n.webgl1,i="webgl2"in n?n.webgl2:n.webgl1;return t?i:e}}return this._getParameter(t,e)}getParameters(t={}){const{parameters:e,keys:n}=t,i=this.constructor.PARAMETERS||{},r=Fw(this.gl),s={},o=e||Object.keys(i);for(const a of o){const e=i[a];if(e&&(!("webgl2"in e)||r)&&(!("extension"in e)||this.gl.getExtension(e.extension))){const i=n?Lx(this.gl,a):a;s[i]=this.getParameter(a,t),n&&"GLenum"===e.type&&(s[i]=Lx(this.gl,s[i]))}}return s}setParameter(t,e){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension))throw new Error("Parameter not available on this platform");"GLenum"===n.type&&(e=Nx(e))}return this._setParameter(t,e),this}setParameters(t){for(const e in t)this.setParameter(e,t[e]);return this}stubRemovedMethods(t,e,n){return zx(this,t,e,n)}initialize(t){}_createHandle(){throw new Error(Ux)}_deleteHandle(){throw new Error(Ux)}_bindHandle(t){throw new Error(Ux)}_getOptsFromHandle(){throw new Error(Ux)}_getParameter(t,e){throw new Error(Ux)}_setParameter(t,e){throw new Error(Ux)}_context(){return this.gl.luma=this.gl.luma||{},this.gl.luma}_addStats(){const t=this.constructor.name,e=Dx.get("Resource Counts");e.get("Resources Created").incrementCount(),e.get(`${t}s Created`).incrementCount(),e.get(`${t}s Active`).incrementCount()}_removeStats(){const t=this.constructor.name;Dx.get("Resource Counts").get(`${t}s Active`).decrementCount()}_trackAllocatedMemory(t,e=this.constructor.name){const n=Dx.get("Memory Usage");n.get("GPU Memory").addCount(t),n.get(`${e} Memory`).addCount(t),this.byteLength=t}_trackDeallocatedMemory(t=this.constructor.name){const e=Dx.get("Memory Usage");e.get("GPU Memory").subtractCount(this.byteLength),e.get(`${t} Memory`).subtractCount(this.byteLength),this.byteLength=0}}function $x(t){switch(ArrayBuffer.isView(t)?t.constructor:t){case Float32Array:return 5126;case Uint16Array:return 5123;case Uint32Array:return 5125;case Uint8Array:case Uint8ClampedArray:return 5121;case Int8Array:return 5120;case Int16Array:return 5122;case Int32Array:return 5124;default:throw new Error("Failed to deduce GL constant from typed array")}}function Gx(t,{clamped:e=!0}={}){switch(t){case 5126:return Float32Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return e?Uint8ClampedArray:Uint8Array;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}function Wx({data:t,width:e,height:n}){const i=Math.round(e/2),r=Math.round(n/2),s=new Uint8Array(i*r*4);for(let o=0;othis._assign(t)),Object.freeze(this)}toString(){return JSON.stringify(this)}get BYTES_PER_ELEMENT(){return Kx.getBytesPerElement(this)}get BYTES_PER_VERTEX(){return Kx.getBytesPerVertex(this)}_assign(t={}){return void 0!==(t=qx("Accessor",t,Yx)).type&&(this.type=t.type,(5124===t.type||5125===t.type)&&(this.integer=!0)),void 0!==t.size&&(this.size=t.size),void 0!==t.offset&&(this.offset=t.offset),void 0!==t.stride&&(this.stride=t.stride),void 0!==t.normalized&&(this.normalized=t.normalized),void 0!==t.integer&&(this.integer=t.integer),void 0!==t.divisor&&(this.divisor=t.divisor),void 0!==t.buffer&&(this.buffer=t.buffer),void 0!==t.index&&(this.index="boolean"==typeof t.index?t.index?1:0:t.index),void 0!==t.instanced&&(this.divisor=t.instanced?1:0),void 0!==t.isInstanced&&(this.divisor=t.isInstanced?1:0),this}}const Qx={offset:"accessor.offset",stride:"accessor.stride",type:"accessor.type",size:"accessor.size",divisor:"accessor.divisor",normalized:"accessor.normalized",integer:"accessor.integer",instanced:"accessor.divisor",isInstanced:"accessor.divisor"},Zx={removedProps:{},replacedProps:{bytes:"byteLength"},deprecatedProps:Qx},Jx={removedProps:Qx};class tS extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Buffer","v6.0",["layout","setLayout","getIndexedParameter"]),this.target=e.target||(this.gl.webgl2?36662:34962),this.initialize(e),Object.seal(this)}getElementCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerElement(t))}getVertexCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerVertex(t))}initialize(t={}){return ArrayBuffer.isView(t)&&(t={data:t}),Number.isFinite(t)&&(t={byteLength:t}),t=qx("Buffer",t,Zx),this.usage=t.usage||35044,this.debugData=null,this.setAccessor(Object.assign({},t,t.accessor)),t.data?this._setData(t.data,t.offset,t.byteLength):this._setByteLength(t.byteLength||0),this}setProps(t){return"accessor"in(t=qx("Buffer",t,Jx))&&this.setAccessor(t.accessor),this}setAccessor(t){return delete(t=Object.assign({},t)).buffer,this.accessor=new Kx(t),this}reallocate(t){return t>this.byteLength?(this._setByteLength(t),!0):(this.bytesUsed=t,!1)}setData(t){return this.initialize(t)}subData(t){ArrayBuffer.isView(t)&&(t={data:t});const{data:e,offset:n=0,srcOffset:i=0}=t,r=t.byteLength||t.length;Rx(e);const s=this.gl.webgl2?36663:this.target;return this.gl.bindBuffer(s,this.handle),0!==i||void 0!==r?(Vw(this.gl),this.gl.bufferSubData(this.target,n,e,i,r)):this.gl.bufferSubData(s,n,e),this.gl.bindBuffer(s,null),this.debugData=null,this._inferType(e),this}copyData({sourceBuffer:t,readOffset:e=0,writeOffset:n=0,size:i}){const{gl:r}=this;return Vw(r),r.bindBuffer(36662,t.handle),r.bindBuffer(36663,this.handle),r.copyBufferSubData(36662,36663,e,n,i),r.bindBuffer(36662,null),r.bindBuffer(36663,null),this.debugData=null,this}getData({dstData:t=null,srcByteOffset:e=0,dstOffset:n=0,length:i=0}={}){Vw(this.gl);const r=Gx(this.accessor.type||5126,{clamped:!1}),s=this._getAvailableElementCount(e),o=n;let a,l;t?(l=t.length,a=l-o):(a=Math.min(s,i||s),l=o+a);const c=Math.min(s,a);return Rx((i=i||c)<=c),t=t||new r(l),this.gl.bindBuffer(36662,this.handle),this.gl.getBufferSubData(36662,e,t,n,i),this.gl.bindBuffer(36662,null),t}bind({target:t=this.target,index:e=this.accessor&&this.accessor.index,offset:n=0,size:i}={}){return 35345===t||35982===t?void 0!==i?this.gl.bindBufferRange(t,e,this.handle,n,i):(Rx(0===n),this.gl.bindBufferBase(t,e,this.handle)):this.gl.bindBuffer(t,this.handle),this}unbind({target:t=this.target,index:e=this.accessor&&this.accessor.index}={}){return 35345===t||35982===t?this.gl.bindBufferBase(t,e,null):this.gl.bindBuffer(t,null),this}getDebugData(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(10,this.byteLength)}),{data:this.debugData,changed:!0})}invalidateDebugData(){this.debugData=null}_setData(t,e=0,n=t.byteLength+e){Rx(ArrayBuffer.isView(t)),this._trackDeallocatedMemory();const i=this._getTarget();this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,this.usage),this.gl.bufferSubData(i,e,t),this.gl.bindBuffer(i,null),this.debugData=t.slice(0,10),this.bytesUsed=n,this._trackAllocatedMemory(n);const r=$x(t);return Rx(r),this.setAccessor(new Kx(this.accessor,{type:r})),this}_setByteLength(t,e=this.usage){Rx(t>=0),this._trackDeallocatedMemory();let n=t;0===t&&(n=new Float32Array(0));const i=this._getTarget();return this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,e),this.gl.bindBuffer(i,null),this.usage=e,this.debugData=null,this.bytesUsed=t,this._trackAllocatedMemory(t),this}_getTarget(){return this.gl.webgl2?36663:this.target}_getAvailableElementCount(t){const e=t/Gx(this.accessor.type||5126,{clamped:!1}).BYTES_PER_ELEMENT;return this.getElementCount()-e}_inferType(t){this.accessor.type||this.setAccessor(new Kx(this.accessor,{type:$x(t)}))}_createHandle(){return this.gl.createBuffer()}_deleteHandle(){this.gl.deleteBuffer(this.handle),this._trackDeallocatedMemory()}_getParameter(t){this.gl.bindBuffer(this.target,this.handle);const e=this.gl.getBufferParameter(this.target,t);return this.gl.bindBuffer(this.target,null),e}get type(){return Nw.deprecated("Buffer.type","Buffer.accessor.type")(),this.accessor.type}get bytes(){return Nw.deprecated("Buffer.bytes","Buffer.byteLength")(),this.byteLength}setByteLength(t){return Nw.deprecated("setByteLength","reallocate")(),this.reallocate(t)}updateAccessor(t){return Nw.deprecated("updateAccessor(...)","setAccessor(new Accessor(buffer.accessor, ...)")(),this.accessor=new Kx(this.accessor,t),this}}const eS={6407:{dataFormat:6407,types:[5121,33635]},6408:{dataFormat:6408,types:[5121,32819,32820]},6406:{dataFormat:6406,types:[5121]},6409:{dataFormat:6409,types:[5121]},6410:{dataFormat:6410,types:[5121]},33326:{dataFormat:6403,types:[5126],gl2:!0},33328:{dataFormat:33319,types:[5126],gl2:!0},34837:{dataFormat:6407,types:[5126],gl2:!0},34836:{dataFormat:6408,types:[5126],gl2:!0}},nS={6403:1,36244:1,33319:2,33320:2,6407:3,36248:3,6408:4,36249:4,6402:1,34041:1,6406:1,6409:1,6410:2},iS={5126:4,5125:4,5124:4,5123:2,5122:2,5131:2,5120:1,5121:1},rS=[9729,9728],sS=zw.CO.WebGLBuffer||function(){};class oS extends Hx{static isSupported(t,e={}){const{format:n,linearFiltering:i}=e;let r=!0;return n&&(r=r&&function(t,e){const n=eS[e];if(!n)return!1;if(void 0===n.gl1&&void 0===n.gl2)return!0;const i=Fw(t)&&n.gl2||n.gl1;return"string"==typeof i?t.getExtension(i):i}(t,n),r=r&&(!i||function(t,e){const n=eS[e];switch(n&&n.types[0]){case 5126:return t.getExtension("OES_texture_float_linear");case 5131:return t.getExtension("OES_texture_half_float_linear");default:return!0}}(t,n))),r}constructor(t,e){const{id:n=Fx("texture"),handle:i,target:r}=e;super(t,{id:n,handle:i}),this.target=r,this.textureUnit=void 0,this.loaded=!1,this.width=void 0,this.height=void 0,this.depth=void 0,this.format=void 0,this.type=void 0,this.dataFormat=void 0,this.border=void 0,this.textureUnit=void 0,this.mipmaps=void 0}toString(){return`Texture(${this.id},${this.width}x${this.height})`}initialize(t={}){let e=t.data;if(e instanceof Promise)return e.then(e=>this.initialize(Object.assign({},t,{pixels:e,data:e}))),this;const n="undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement;if(n&&e.readyStatethis.initialize(t)),this;const{pixels:i=null,format:r=6408,border:s=0,recreate:o=!1,parameters:a={},pixelStore:l={},textureUnit:c}=t;e||(e=i);let{width:u,height:h,dataFormat:d,type:p,compressed:f=!1,mipmaps:g=!0}=t;const{depth:m=0}=t;return({width:u,height:h,compressed:f,dataFormat:d,type:p}=this._deduceParameters({format:r,type:p,dataFormat:d,compressed:f,data:e,width:u,height:h})),this.width=u,this.height=h,this.depth=m,this.format=r,this.type=p,this.dataFormat=d,this.border=s,this.textureUnit=c,Number.isFinite(this.textureUnit)&&(this.gl.activeTexture(33984+this.textureUnit),this.gl.bindTexture(this.target,this.handle)),g&&this._isNPOT()&&(Nw.warn(`texture: ${this} is Non-Power-Of-Two, disabling mipmaping`)(),g=!1,this._updateForNPOT(a)),this.mipmaps=g,this.setImageData({data:e,width:u,height:h,depth:m,format:r,type:p,dataFormat:d,border:s,mipmaps:g,parameters:l,compressed:f}),g&&this.generateMipmap(),this.setParameters(a),o&&(this.data=e),n&&(this._video={video:e,parameters:a,lastTime:e.readyState>=HTMLVideoElement.HAVE_CURRENT_DATA?e.currentTime:-1}),this}update(){if(this._video){const{video:t,parameters:e,lastTime:n}=this._video;if(n===t.currentTime||t.readyState{this.gl.generateMipmap(this.target)}),this.gl.bindTexture(this.target,null),this)}setImageData(t){this._trackDeallocatedMemory("Texture");const{target:e=this.target,pixels:n=null,level:i=0,format:r=this.format,border:s=this.border,offset:o=0,parameters:a={}}=t;let{data:l=null,type:c=this.type,width:u=this.width,height:h=this.height,dataFormat:d=this.dataFormat,compressed:p=!1}=t;l||(l=n),({type:c,dataFormat:d,compressed:p,width:u,height:h}=this._deduceParameters({format:r,type:c,dataFormat:d,compressed:p,data:l,width:u,height:h}));const{gl:f}=this;f.bindTexture(this.target,this.handle);let g,m=null;return({data:l,dataType:m}=this._getDataType({data:l,compressed:p})),vx(this.gl,a,()=>{switch(m){case"null":f.texImage2D(e,i,r,u,h,s,d,c,l);break;case"typed-array":f.texImage2D(e,i,r,u,h,s,d,c,l,o);break;case"buffer":g=Vw(f),g.bindBuffer(35052,l.handle||l),g.texImage2D(e,i,r,u,h,s,d,c,o),g.bindBuffer(35052,null);break;case"browser-object":Fw(f)?f.texImage2D(e,i,r,u,h,s,d,c,l):f.texImage2D(e,i,r,d,c,l);break;case"compressed":for(const[t,n]of l.entries())f.compressedTexImage2D(e,t,n.format,n.width,n.height,s,n.data);break;default:Rx(!1,"Unknown image data type")}}),this._trackAllocatedMemory(l&&l.byteLength?l.byteLength:this.width*this.height*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}setSubImageData({target:t=this.target,pixels:e=null,data:n=null,x:i=0,y:r=0,width:s=this.width,height:o=this.height,level:a=0,format:l=this.format,type:c=this.type,dataFormat:u=this.dataFormat,compressed:h=!1,offset:d=0,border:p=this.border,parameters:f={}}){if(({type:c,dataFormat:u,compressed:h,width:s,height:o}=this._deduceParameters({format:l,type:c,dataFormat:u,compressed:h,data:n,width:s,height:o})),Rx(0===this.depth,"texSubImage not supported for 3D textures"),n||(n=e),n&&n.data){const t=n;n=t.data,s=t.shape[0],o=t.shape[1]}n instanceof tS&&(n=n.handle),this.gl.bindTexture(this.target,this.handle),vx(this.gl,f,()=>{if(h)this.gl.compressedTexSubImage2D(t,a,i,r,s,o,l,n);else if(null===n)this.gl.texSubImage2D(t,a,i,r,s,o,u,c,null);else if(ArrayBuffer.isView(n))this.gl.texSubImage2D(t,a,i,r,s,o,u,c,n,d);else if(n instanceof sS){const e=Vw(this.gl);e.bindBuffer(35052,n),e.texSubImage2D(t,a,i,r,s,o,u,c,d),e.bindBuffer(35052,null)}else Fw(this.gl)?Vw(this.gl).texSubImage2D(t,a,i,r,s,o,u,c,n):this.gl.texSubImage2D(t,a,i,r,u,c,n)}),this.gl.bindTexture(this.target,null)}copyFramebuffer(t={}){return Nw.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}getActiveUnit(){return this.gl.getParameter(34016)-33984}bind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,this.handle),t}unbind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,null),t}_getDataType({data:t,compressed:e=!1}){return e?{data:t,dataType:"compressed"}:null===t?{data:t,dataType:"null"}:ArrayBuffer.isView(t)?{data:t,dataType:"typed-array"}:t instanceof tS?{data:t.handle,dataType:"buffer"}:t instanceof sS?{data:t,dataType:"buffer"}:{data:t,dataType:"browser-object"}}_deduceParameters(t){const{format:e,data:n}=t;let{width:i,height:r,dataFormat:s,type:o,compressed:a}=t;const l=eS[e];return s=s||l&&l.dataFormat,o=o||l&&l.types[0],a=a||l&&l.compressed,({width:i,height:r}=this._deduceImageSize(n,i,r)),{dataFormat:s,type:o,compressed:a,width:i,height:r,format:e,data:n}}_deduceImageSize(t,e,n){let i;return i="undefined"!=typeof ImageData&&t instanceof ImageData?{width:t.width,height:t.height}:"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement?{width:t.naturalWidth,height:t.naturalHeight}:"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?{width:t.width,height:t.height}:"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement?{width:t.videoWidth,height:t.videoHeight}:t?{width:e,height:n}:{width:e>=0?e:1,height:n>=0?n:1},Rx(i,"Could not deduced texture size"),Rx(void 0===e||i.width===e,"Deduced texture width does not match supplied width"),Rx(void 0===n||i.height===n,"Deduced texture height does not match supplied height"),i}_createHandle(){return this.gl.createTexture()}_deleteHandle(){this.gl.deleteTexture(this.handle),this._trackDeallocatedMemory("Texture")}_getParameter(t){switch(t){case 4096:return this.width;case 4097:return this.height;default:this.gl.bindTexture(this.target,this.handle);const e=this.gl.getTexParameter(this.target,t);return this.gl.bindTexture(this.target,null),e}}_setParameter(t,e){switch(this.gl.bindTexture(this.target,this.handle),e=this._getNPOTParam(t,e),t){case 33082:case 33083:this.gl.texParameterf(this.handle,t,e);break;case 4096:case 4097:Rx(!1);break;default:this.gl.texParameteri(this.target,t,e)}return this.gl.bindTexture(this.target,null),this}_isNPOT(){return!(Fw(this.gl)||!this.width||!this.height||Bx(this.width)&&Bx(this.height))}_updateForNPOT(t){void 0===t[this.gl.TEXTURE_MIN_FILTER]&&(t[this.gl.TEXTURE_MIN_FILTER]=this.gl.LINEAR),void 0===t[this.gl.TEXTURE_WRAP_S]&&(t[this.gl.TEXTURE_WRAP_S]=this.gl.CLAMP_TO_EDGE),void 0===t[this.gl.TEXTURE_WRAP_T]&&(t[this.gl.TEXTURE_WRAP_T]=this.gl.CLAMP_TO_EDGE)}_getNPOTParam(t,e){if(this._isNPOT())switch(t){case 10241:-1===rS.indexOf(e)&&(e=9729);break;case 10242:case 10243:33071!==e&&(e=33071)}return e}}function aS(t,e){return Rx("string"==typeof t),t=""+t,new Promise((n,i)=>{try{const r=new Image;r.onload=()=>n(r),r.onerror=()=>i(new Error(`Could not load image ${t}.`)),r.crossOrigin=e&&e.crossOrigin||"anonymous",r.src=t}catch(r){i(r)}})}class lS extends oS{static isSupported(t,e){return oS.isSupported(t,e)}constructor(t,e={}){Bw(t),(e instanceof Promise||"string"==typeof e)&&(e={data:e}),"string"==typeof e.data&&(e=Object.assign({},e,{data:aS(e.data)})),super(t,Object.assign({},e,{target:3553})),this.initialize(e),Object.seal(this)}}const cS="EXT_color_buffer_float";var uS={33189:{bpp:2},33190:{gl2:!0,bpp:3},36012:{gl2:!0,bpp:4},36168:{bpp:1},34041:{bpp:4},35056:{gl2:!0,bpp:4},36013:{gl2:!0,bpp:5},32854:{bpp:2},36194:{bpp:2},32855:{bpp:2},33321:{gl2:!0,bpp:1},33330:{gl2:!0,bpp:1},33329:{gl2:!0,bpp:1},33332:{gl2:!0,bpp:2},33331:{gl2:!0,bpp:2},33334:{gl2:!0,bpp:4},33333:{gl2:!0,bpp:4},33323:{gl2:!0,bpp:2},33336:{gl2:!0,bpp:2},33335:{gl2:!0,bpp:2},33338:{gl2:!0,bpp:4},33337:{gl2:!0,bpp:4},33340:{gl2:!0,bpp:8},33339:{gl2:!0,bpp:8},32849:{gl2:!0,bpp:3},32856:{gl2:!0,bpp:4},32857:{gl2:!0,bpp:4},36220:{gl2:!0,bpp:4},36238:{gl2:!0,bpp:4},36975:{gl2:!0,bpp:4},36214:{gl2:!0,bpp:8},36232:{gl2:!0,bpp:8},36226:{gl2:!0,bpp:16},36208:{gl2:!0,bpp:16},33325:{gl2:cS,bpp:2},33327:{gl2:cS,bpp:4},34842:{gl2:cS,bpp:8},33326:{gl2:cS,bpp:4},33328:{gl2:cS,bpp:8},34836:{gl2:cS,bpp:16},35898:{gl2:cS,bpp:4}};class hS extends Hx{static isSupported(t,{format:e}={format:null}){return!e||function(t,e,n){const i=n[e];if(!i)return!1;const r=Fw(t)&&i.gl2||i.gl1;return"string"==typeof r?t.getExtension(r):r}(t,e,uS)}static getSamplesForFormat(t,{format:e}){return t.getInternalformatParameter(36161,e,32937)}constructor(t,e={}){super(t,e),this.initialize(e),Object.seal(this)}initialize({format:t,width:e=1,height:n=1,samples:i=0}){return Rx(t,"Needs format"),this._trackDeallocatedMemory(),this.gl.bindRenderbuffer(36161,this.handle),0!==i&&Fw(this.gl)?this.gl.renderbufferStorageMultisample(36161,i,t,e,n):this.gl.renderbufferStorage(36161,t,e,n),this.format=t,this.width=e,this.height=n,this.samples=i,this._trackAllocatedMemory(this.width*this.height*(this.samples||1)*uS[this.format].bpp),this}resize({width:t,height:e}){return t!==this.width||e!==this.height?this.initialize({width:t,height:e,format:this.format,samples:this.samples}):this}_createHandle(){return this.gl.createRenderbuffer()}_deleteHandle(){this.gl.deleteRenderbuffer(this.handle),this._trackDeallocatedMemory()}_bindHandle(t){this.gl.bindRenderbuffer(36161,t)}_syncHandle(t){this.format=this.getParameter(36164),this.width=this.getParameter(36162),this.height=this.getParameter(36163),this.samples=this.getParameter(36011)}_getParameter(t){return this.gl.bindRenderbuffer(36161,this.handle),this.gl.getRenderbufferParameter(36161,t)}}const dS="clear: bad arguments";function pS(t,{framebuffer:e=null,color:n=null,depth:i=null,stencil:r=null}={}){const s={};e&&(s.framebuffer=e);let o=0;n&&(o|=16384,!0!==n&&(s.clearColor=n)),i&&(o|=256,!0!==i&&(s.clearDepth=i)),r&&(o|=1024,!0!==i&&(s.clearStencil=i)),Rx(0!==o,dS),vx(t,s,()=>{t.clear(o)})}function fS(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}function gS(t){return function(){var e=this,n=arguments;return new Promise(function(i,r){var s=t.apply(e,n);function o(t){fS(s,i,r,o,a,"next",t)}function a(t){fS(s,i,r,o,a,"throw",t)}o(void 0)})}}const mS=[34069,34070,34071,34072,34073,34074];let bS=(()=>{class t extends oS{constructor(t,e={}){Bw(t),super(t,Object.assign({},e,{target:34067})),this.initialize(e),Object.seal(this)}initialize(t={}){const{mipmaps:e=!0,parameters:n={}}=t;return this.opts=t,this.setCubeMapImageData(t).then(()=>{this.loaded=!0,e&&this.generateMipmap(t),this.setParameters(n)}),this}subImage({face:t,data:e,x:n=0,y:i=0,mipmapLevel:r=0}){return this._subImage({target:t,data:e,x:n,y:i,mipmapLevel:r})}setCubeMapImageData({width:t,height:e,pixels:n,data:i,border:r=0,format:s=6408,type:o=5121}){var a=this;return gS(function*(){const{gl:l}=a,c=n||i,u=yield Promise.all(mS.map(t=>{const e=c[t];return Promise.all(Array.isArray(e)?e:[e])}));a.bind(),mS.forEach((n,i)=>{u[i].length>1&&!1!==a.opts.mipmaps&&Nw.warn(`${a.id} has mipmap and multiple LODs.`)(),u[i].forEach((i,a)=>{t&&e?l.texImage2D(n,a,s,t,e,r,s,o,i):l.texImage2D(n,a,s,s,o,i)})}),a.unbind()})()}setImageDataForFace(t){const{face:e,width:n,height:i,pixels:r,data:s,border:o=0,format:a=6408,type:l=5121}=t,{gl:c}=this,u=r||s;return this.bind(),u instanceof Promise?u.then(n=>this.setImageDataForFace(Object.assign({},t,{face:e,data:n,pixels:n}))):this.width||this.height?c.texImage2D(e,0,a,n,i,o,a,l,u):c.texImage2D(e,0,a,a,l,u),this}}return t.FACES=mS,t})();class yS extends oS{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e=Object.assign({depth:1},e,{target:32879,unpackFlipY:!1})),this.initialize(e),Object.seal(this)}setImageData({level:t=0,dataFormat:e=6408,width:n,height:i,depth:r=1,border:s=0,format:o,type:a=5121,offset:l=0,data:c,parameters:u={}}){return this._trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle),vx(this.gl,u,()=>{ArrayBuffer.isView(c)&&this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,c),c instanceof tS&&(this.gl.bindBuffer(35052,c.handle),this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,l))}),this._trackAllocatedMemory(c&&c.byteLength?c.byteLength:this.width*this.height*this.depth*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}}function vS(t,e){const{gl:n,width:i,height:r,id:s}=t;return new SS(n,Object.assign({},e,{id:`framebuffer-for-${s}`,width:i,height:r,attachments:{36064:t}}))}function _S(t,e={}){const{sourceX:n=0,sourceY:i=0,sourceFormat:r=6408}=e;let{sourceAttachment:s=36064,target:o=null,sourceWidth:a,sourceHeight:l,sourceType:c}=e;const{framebuffer:u,deleteFramebuffer:h}=function(t){return t instanceof SS?{framebuffer:t,deleteFramebuffer:!1}:{framebuffer:vS(t),deleteFramebuffer:!0}}(t);Rx(u);const{gl:d,handle:p,attachments:f}=u;a=a||u.width,l=l||u.height,36064===s&&null===p&&(s=1028),Rx(f[s]),c=c||f[s].type,o=function(t,e,n,i,r){if(t)return t;return new(Gx(e=e||5121,{clamped:!1}))(i*r*function(t){switch(t){case 6406:case 33326:case 6403:return 1;case 33328:case 33319:return 2;case 6407:case 34837:return 3;case 6408:case 34836:return 4;default:return Rx(!1),0}}(n))}(o,c,r,a,l),c=c||$x(o);const g=d.bindFramebuffer(36160,p);return d.readPixels(n,i,a,l,r,c,o),d.bindFramebuffer(36160,g||null),h&&u.delete(),o}function wS(t,{sourceAttachment:e=36064,targetMaxHeight:n=Number.MAX_SAFE_INTEGER}={}){let i=_S(t,{sourceAttachment:e}),{width:r,height:s}=t;for(;s>n;)({data:i,width:r,height:s}=Wx({data:i,width:r,height:s}));!function({data:t,width:e,height:n,bytesPerPixel:i=4,temp:r}){const s=e*i;r=r||new Uint8Array(s);for(let o=0;o=0&&e>=0,"Width and height need to be integers"),this.width=t,this.height=e,n)for(const c in n){const i=n[c];(Array.isArray(i)?i[0]:i).resize({width:t,height:e})}else n=this._createDefaultAttachments(i,r,s,t,e);this.update({clearAttachments:!0,attachments:n,readBuffer:a,drawBuffers:l}),n&&o&&this.checkStatus()}delete(){for(const t of this.ownResources)t.delete();return super.delete(),this}update({attachments:t={},readBuffer:e,drawBuffers:n,clearAttachments:i=!1,resizeAttachments:r=!0}){this.attach(t,{clearAttachments:i,resizeAttachments:r});const{gl:s}=this,o=s.bindFramebuffer(36160,this.handle);return e&&this._setReadBuffer(e),n&&this._setDrawBuffers(n),s.bindFramebuffer(36160,o||null),this}resize(t={}){let{width:e,height:n}=t;if(null===this.handle)return Rx(void 0===e&&void 0===n),this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;void 0===e&&(e=this.gl.drawingBufferWidth),void 0===n&&(n=this.gl.drawingBufferHeight),e!==this.width&&n!==this.height&&Nw.log(2,`Resizing framebuffer ${this.id} to ${e}x${n}`)();for(const i in this.attachments)this.attachments[i].resize({width:e,height:n});return this.width=e,this.height=n,this}attach(t,{clearAttachments:e=!1,resizeAttachments:n=!0}={}){const i={};e&&Object.keys(this.attachments).forEach(t=>{i[t]=null}),Object.assign(i,t);const r=this.gl.bindFramebuffer(36160,this.handle);for(const s in i){Rx(void 0!==s,"Misspelled framebuffer binding point?");const t=Number(s),e=i[t];let r=e;if(r)if(r instanceof hS)this._attachRenderbuffer({attachment:t,renderbuffer:r});else if(Array.isArray(e)){const[n,i=0,s=0]=e;r=n,this._attachTexture({attachment:t,texture:n,layer:i,level:s})}else this._attachTexture({attachment:t,texture:r,layer:0,level:0});else this._unattach(t);n&&r&&r.resize({width:this.width,height:this.height})}this.gl.bindFramebuffer(36160,r||null),Object.assign(this.attachments,t),Object.keys(this.attachments).filter(t=>!this.attachments[t]).forEach(t=>{delete this.attachments[t]})}checkStatus(){const t=this.getStatus();if(36053!==t)throw new Error(function(t){return(SS.STATUS||{})[t]||`Framebuffer error ${t}`}(t));return this}getStatus(){const{gl:t}=this,e=t.bindFramebuffer(36160,this.handle),n=t.checkFramebufferStatus(36160);return t.bindFramebuffer(36160,e||null),n}clear(t={}){const{color:e,depth:n,stencil:i,drawBuffers:r=[]}=t,s=this.gl.bindFramebuffer(36160,this.handle);return(e||n||i)&&pS(this.gl,{color:e,depth:n,stencil:i}),r.forEach((t,e)=>{!function(t,{framebuffer:e=null,buffer:n=6144,drawBuffer:i=0,value:r=[0,0,0,0]}={}){Vw(t),vx(t,{framebuffer:e},()=>{switch(n){case 6144:switch(r.constructor){case Int32Array:t.clearBufferiv(n,i,r);break;case Uint32Array:t.clearBufferuiv(n,i,r);break;case Float32Array:default:t.clearBufferfv(n,i,r)}break;case 6145:t.clearBufferfv(6145,0,[r]);break;case 6146:t.clearBufferiv(6146,0,[r]);break;case 34041:const[e,s]=r;t.clearBufferfi(34041,0,e,s);break;default:Rx(!1,dS)}})}(this.gl,{drawBuffer:e,value:t})}),this.gl.bindFramebuffer(36160,s||null),this}readPixels(t={}){return Nw.error("Framebuffer.readPixels() is no logner supported, use readPixelsToArray(framebuffer)")(),null}readPixelsToBuffer(t={}){return Nw.error("Framebuffer.readPixelsToBuffer()is no logner supported, use readPixelsToBuffer(framebuffer)")(),null}copyToDataUrl(t={}){return Nw.error("Framebuffer.copyToDataUrl() is no logner supported, use copyToDataUrl(framebuffer)")(),null}copyToImage(t={}){return Nw.error("Framebuffer.copyToImage() is no logner supported, use copyToImage(framebuffer)")(),null}copyToTexture(t={}){return Nw.error("Framebuffer.copyToTexture({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}blit(t={}){return Nw.error("Framebuffer.blit({...}) is no logner supported, use blit(source, target, opts)")(),null}invalidate({attachments:t=[],x:e=0,y:n=0,width:i,height:r}){const s=Vw(this.gl),o=s.bindFramebuffer(36008,this.handle);return 0===e&&0===n&&void 0===i&&void 0===r?s.invalidateFramebuffer(36008,t):s.invalidateFramebuffer(36008,t,e,n,i,r),s.bindFramebuffer(36008,o),this}getAttachmentParameter(t,e,n){let i=this._getAttachmentParameterFallback(e);return null===i&&(this.gl.bindFramebuffer(36160,this.handle),i=this.gl.getFramebufferAttachmentParameter(36160,t,e),this.gl.bindFramebuffer(36160,null)),n&&i>1e3&&(i=Lx(this.gl,i)),i}getAttachmentParameters(t=36064,e,n=this.constructor.ATTACHMENT_PARAMETERS||[]){const i={};for(const r of n)i[e?Lx(this.gl,r):r]=this.getAttachmentParameter(t,r,e);return i}getParameters(t=!0){const e=Object.keys(this.attachments),n={};for(const i of e){const e=Number(i);n[t?Lx(this.gl,e):e]=this.getAttachmentParameters(e,t)}return n}show(){return"undefined"!=typeof window&&window.open(wS(this),"luma-debug-texture"),this}log(t=0,e=""){if(t>Nw.level||"undefined"==typeof window)return this;e=e||`Framebuffer ${this.id}`;const n=wS(this,{targetMaxHeight:100});return Nw.image({logLevel:t,message:e,image:n},e)(),this}bind({target:t=36160}={}){return this.gl.bindFramebuffer(t,this.handle),this}unbind({target:t=36160}={}){return this.gl.bindFramebuffer(t,null),this}_createDefaultAttachments(t,e,n,i,r){let s=null;return t&&(s=s||{},s[36064]=new lS(this.gl,{id:`${this.id}-color0`,pixels:null,format:6408,type:5121,width:i,height:r,mipmaps:!1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.ownResources.push(s[36064])),e&&n?(s=s||{},s[33306]=new hS(this.gl,{id:`${this.id}-depth-stencil`,format:35056,width:i,height:111}),this.ownResources.push(s[33306])):e?(s=s||{},s[36096]=new hS(this.gl,{id:`${this.id}-depth`,format:33189,width:i,height:r}),this.ownResources.push(s[36096])):n&&Rx(!1),s}_unattach(t){const e=this.attachments[t];!e||(e instanceof hS?this.gl.framebufferRenderbuffer(36160,t,36161,null):this.gl.framebufferTexture2D(36160,t,3553,null,0),delete this.attachments[t])}_attachRenderbuffer({attachment:t=36064,renderbuffer:e}){const{gl:n}=this;n.framebufferRenderbuffer(36160,t,36161,e.handle),this.attachments[t]=e}_attachTexture({attachment:t=36064,texture:e,layer:n,level:i}){const{gl:r}=this;switch(r.bindTexture(e.target,e.handle),e.target){case 35866:case 32879:Vw(r).framebufferTextureLayer(36160,t,e.target,i,n);break;case 34067:const s=function(t){return t<34069?t+34069:t}(n);r.framebufferTexture2D(36160,t,s,e.handle,i);break;case 3553:r.framebufferTexture2D(36160,t,3553,e.handle,i);break;default:Rx(!1,"Illegal texture type")}r.bindTexture(e.target,null),this.attachments[t]=e}_setReadBuffer(t){const e=function(t){return Fw(t)?t:null}(this.gl);e?e.readBuffer(t):Rx(36064===t||1029===t,xS),this.readBuffer=t}_setDrawBuffers(t){const{gl:e}=this,n=Vw(e);if(n)n.drawBuffers(t);else{const n=e.getExtension("WEBGL_draw_buffers");n?n.drawBuffersWEBGL(t):Rx(1===t.length&&(36064===t[0]||1029===t[0]),xS)}this.drawBuffers=t}_getAttachmentParameterFallback(t){const e=function(t){t.luma=t.luma||{},t.luma.caps=t.luma.caps||{};for(const e in ES)void 0===t.luma.caps[e]&&(t.luma.caps[e]=TS(t,e));return t.luma.caps}(this.gl);switch(t){case 36052:return e.WEBGL2?null:0;case 33298:case 33299:case 33300:case 33301:case 33302:case 33303:return e.WEBGL2?null:8;case 33297:return e.WEBGL2?null:5125;case 33296:return e.WEBGL2||e.EXT_sRGB?null:9729;default:return null}}_createHandle(){return this.gl.createFramebuffer()}_deleteHandle(){this.gl.deleteFramebuffer(this.handle)}_bindHandle(t){return this.gl.bindFramebuffer(36160,t)}}SS.ATTACHMENT_PARAMETERS=[36049,36048,33296,33298,33299,33300,33301,33302,33303];var ES={WEBGL2:[!1,!0],VERTEX_ARRAY_OBJECT:["OES_vertex_array_object",!0],TIMER_QUERY:["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],INSTANCED_RENDERING:["ANGLE_instanced_arrays",!0],MULTIPLE_RENDER_TARGETS:["WEBGL_draw_buffers",!0],ELEMENT_INDEX_UINT32:["OES_element_index_uint",!0],BLEND_EQUATION_MINMAX:["EXT_blend_minmax",!0],FLOAT_BLEND:["EXT_float_blend"],COLOR_ENCODING_SRGB:["EXT_sRGB",!0],TEXTURE_DEPTH:["WEBGL_depth_texture",!0],TEXTURE_FLOAT:["OES_texture_float",!0],TEXTURE_HALF_FLOAT:["OES_texture_half_float",!0],TEXTURE_FILTER_LINEAR_FLOAT:["OES_texture_float_linear"],TEXTURE_FILTER_LINEAR_HALF_FLOAT:["OES_texture_half_float_linear"],TEXTURE_FILTER_ANISOTROPIC:["EXT_texture_filter_anisotropic"],COLOR_ATTACHMENT_RGBA32F:[function(t){const e=new lS(t,{format:6408,type:5126,dataFormat:6408}),n=new SS(t,{id:"test-framebuffer",check:!1,attachments:{36064:e}}),i=n.getStatus();return e.delete(),n.delete(),36053===i},"EXT_color_buffer_float"],COLOR_ATTACHMENT_FLOAT:[!1,"EXT_color_buffer_float"],COLOR_ATTACHMENT_HALF_FLOAT:["EXT_color_buffer_half_float"],GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]};function CS(t,e){return OS(t,e)}function OS(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>TS(t,e))}function TS(t,e){return t.luma=t.luma||{},t.luma.caps=t.luma.caps||{},void 0===t.luma.caps[e]&&(t.luma.caps[e]=function(t,e){const n=ES[e];let i;Rx(n,e);const r=Fw(t)&&n[1]||n[0];if("function"==typeof r)i=r(t);else if(Array.isArray(r)){i=!0;for(const e of r)i=i&&Boolean(t.getExtension(e))}else"string"==typeof r?i=Boolean(t.getExtension(r)):"boolean"==typeof r?i=r:Rx(!1);return i}(t,e)),t.luma.caps[e]||Nw.log(2,`Feature: ${e} not supported`)(),t.luma.caps[e]}class kS{constructor(t,e){this.opts=e,this.source=t}get value(){return this.source.value}getValue(){const t=this.source.getBuffer(),e=this.getAccessor();if(t)return[t,e];const{value:n}=this.source,{size:i}=e;let r=n;if(n&&n.length!==i){r=new Float32Array(i);const t=e.elementOffset||0;for(let e=0;ei&&(r=i);const s=this._pool,o=t.BYTES_PER_ELEMENT*r,a=s.findIndex(t=>t.byteLength>=o);if(a>=0){const e=new t(s.splice(a,1)[0],0,r);return n&&e.fill(0),e}return new t(r)}_release(t){if(!ArrayBuffer.isView(t))return;const e=this._pool,{buffer:n}=t,{byteLength:i}=n,r=e.findIndex(t=>t.byteLength>=i);r<0?e.push(n):(r>0||e.lengththis.props.poolSize&&e.shift()}};Math;const PS=1/180*Math.PI,MS={};function IS(t,{precision:e=MS.precision||4}={}){return t=function(t){return Math.round(t/MS.EPSILON)*MS.EPSILON}(t),`${parseFloat(t.toPrecision(e))}`}function DS(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function RS(t,e,n){if(DS(t)){n=n||function(t){return t.clone?t.clone():new Array(t.length)}(t);for(let i=0;it*PS,void 0)}(t)}function LS(t,e,n){return RS(t,t=>Math.max(e,Math.min(n,t)))}function jS(t,e,n){return DS(t)?t.map((t,i)=>jS(t,e[i],n)):n*e+(1-n)*t}function FS(t,e,n){const i=MS.EPSILON;n&&(MS.EPSILON=n);try{if(t===e)return!0;if(DS(t)&&DS(e)){if(t.length!==e.length)return!1;for(let n=0;n0?", ":"")+IS(this[n],t);return`${t.printTypes?this.constructor.name:""}[${e}]`}equals(t){if(!t||this.length!==t.length)return!1;for(let e=0;e=0&&t=0&&t0&&(dE.length=t.length,i=dE):i=hE,(e>0||Number.isFinite(n))&&(i=(Array.isArray(i)?i:Array.from(i)).slice(e,n),r.index=e-1),{iterable:i,objectInfo:r}}function fE(t){return t&&t[Symbol.asyncIterator]}function gE(t,e=(()=>!0)){return Array.isArray(t)?mE(t,e,[]):e(t)?[t]:[]}function mE(t,e,n){let i=-1;for(;++ia)return void e.set(t.subarray(0,a),n);if(e.set(t,n),!s)return;let l=o;for(;lt},spring:{stiffness:.05,damping:.5}};function xE(t,e){return t?(Number.isFinite(t)&&(t={duration:t}),t.type=t.type||"interpolation",wt(wt(wt({},wE[t.type]),e),t)):null}function SE(t,e){return e.getBuffer()?[e.getBuffer(),{divisor:0,size:e.size,normalized:e.settings.normalized}]:e.value}function EE(t){switch(t){case 1:return"float";case 2:return"vec2";case 3:return"vec3";case 4:return"vec4";default:throw new Error('No defined attribute type for size "'.concat(t,'"'))}}function CE(t){t.push(t.shift())}function OE(t,e){const{doublePrecision:n,settings:i,value:r,size:s}=t,o=n&&r instanceof Float64Array?2:1;return(i.noAlloc?r.length:e*s)*o}function TE({buffer:t,numInstances:e,attribute:n,fromLength:i,fromStartIndices:r,getData:s=(t=>t)}){const o=n.doublePrecision&&n.value instanceof Float64Array?2:1,a=n.size*o,l=n.byteOffset,c=n.startIndices,u=r&&c,h=OE(n,e),d=n.state.constant;if(!u&&i>=h)return;const p=d?n.value:n.getBuffer().getData({srcByteOffset:l});if(n.settings.normalized&&!d){const t=s;s=(e,i)=>n._normalizeConstant(t(e,i))}const f=d?(t,e)=>s(p,e):(t,e)=>s(p.subarray(t,t+a),e),g=t.getData({length:i}),m=new Float32Array(h);(function({source:t,target:e,size:n,getData:i,sourceStartIndices:r,targetStartIndices:s}){if(!Array.isArray(s))return _E({source:t,target:e,size:n,getData:i}),e;let o=0,a=0;const l=i&&((t,e)=>i(t+a,e)),c=Math.min(r.length,s.length);for(let u=1;u(t+128)/255*2-1);case 5122:return new Float32Array(t).map(t=>(t+32768)/65535*2-1);case 5121:return new Float32Array(t).map(t=>t/255);case 5123:return new Float32Array(t).map(t=>t/65535);default:return t}}_normalizeValue(t,e,n){const{defaultValue:i,size:r}=this.settings;if(Number.isFinite(t))return e[n]=t,e;if(!t)return e[n]=i[0],e;switch(r){case 4:e[n+3]=Number.isFinite(t[3])?t[3]:i[3];case 3:e[n+2]=Number.isFinite(t[2])?t[2]:i[2];case 2:e[n+1]=Number.isFinite(t[1])?t[1]:i[1];case 1:e[n+0]=Number.isFinite(t[0])?t[0]:i[0];break;default:let s=r;for(;--s>=0;)e[n+s]=Number.isFinite(t[s])?t[s]:i[s]}return e}_areValuesEqual(t,e){if(!t||!e)return!1;const{size:n}=this;for(let i=0;it[e])]:t[e],n)}setNeedsUpdate(t=this.id,e){if(this.state.needsUpdate=this.state.needsUpdate||t,this.setNeedsRedraw(t),e){const{startRow:t=0,endRow:n=1/0}=e;this.state.updateRanges=function(t,e){if(t===vE||(e[0]<0&&(e[0]=0),e[0]>=e[1]))return t;const n=[],i=t.length;let r=0;for(let s=0;se[1]?n.push(i):e=[Math.min(i[0],e[0]),Math.max(i[1],e[1])]}return n.splice(r,0,e),n}(this.state.updateRanges,[t,n])}else this.state.updateRanges=vE}clearNeedsUpdate(){this.state.needsUpdate=!1,this.state.updateRanges=yE}setNeedsRedraw(t=this.id){this.state.needsRedraw=this.state.needsRedraw||t}update(t){this.setData(t)}allocate(t){const{state:e,settings:n}=this;return!n.noAlloc&&!!n.update&&(super.allocate({numInstances:t,copy:e.updateRanges!==vE}),!0)}updateBuffer({numInstances:t,data:e,props:n,context:i}){if(!this.needsUpdate())return!1;const{state:{updateRanges:r},settings:{update:s,noAlloc:o}}=this;let a=!0;if(s){for(const[o,a]of r)s.call(i,this,{data:e,startRow:o,endRow:a,props:n,numInstances:t});if(this.value)if(this.constant||this.buffer.byteLength{if(!r){const n=i*a+l;for(let i=0;ic?l.set(e,f):(t._normalizeValue(e,m.target,0),bE({target:l,source:m.target,start:f,count:n}));f+=n*c}else t._normalizeValue(e,l,f),f+=c}}_validateAttributeUpdaters(){const{settings:t}=this;if(!t.noAlloc&&"function"!=typeof t.update)throw new Error("Attribute ".concat(this.id," missing update or accessor"))}_checkAttributeArray(){const{value:t}=this,e=Math.min(4,this.size);if(t&&t.length>=e){let n=!0;switch(e){case 4:n=n&&Number.isFinite(t[3]);case 3:n=n&&Number.isFinite(t[2]);case 2:n=n&&Number.isFinite(t[1]);case 1:n=n&&Number.isFinite(t[0]);break;default:n=!1}if(!n)throw new Error("Illegal attribute generated for ".concat(this.id))}}}let AE={};function PE(t){Mw.level>0&&AE[t]&&AE[t].call(...arguments)}function ME(t,e){if(!t)throw new Error(e||"shadertools: assertion failed.")}const IE="out vec4 transform_output;\nvoid main() {\n transform_output = vec4(0);\n}",DE=`#version 300 es\n${IE}`;function RE(t,e){e=Array.isArray(e)?e:[e];const n=t.replace(/^\s+/,"").split(/\s+/),[i,r,s]=n;return e.includes(i)&&r&&s?{qualifier:i,type:r,name:s.split(";")[0]}:null}function NE(t={}){const{version:e=100,input:n,inputType:i,output:r}=t;if(!n)return 300===e?DE:e>300?`#version ${e}\n${IE}`:"void main() {gl_FragColor = vec4(0);}";const s=function(t,e){switch(e){case"float":return`vec4(${t}, 0.0, 0.0, 1.0)`;case"vec2":return`vec4(${t}, 0.0, 1.0)`;case"vec3":return`vec4(${t}, 1.0)`;case"vec4":return t;default:return ME(!1),null}}(n,i);return e>=300?`#version ${e} ${300===e?"es":""}\nin ${i} ${n};\nout vec4 ${r};\nvoid main() {\n ${r} = ${s};\n}`:`varying ${i} ${n};\nvoid main() {\n gl_FragColor = ${s};\n}`}class LE extends Hx{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e),this.initialize(e),this.stubRemovedMethods("TransformFeedback","v6.0",["pause","resume"]),Object.seal(this)}initialize(t={}){return this.buffers={},this.unused={},this.configuration=null,this.bindOnUse=!0,Vx(this.buffers)||this.bind(()=>this._unbindBuffers()),this.setProps(t),this}setProps(t){"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"bindOnUse"in t&&(t=t.bindOnUse),"buffers"in t&&this.setBuffers(t.buffers)}setBuffers(t={}){return this.bind(()=>{for(const e in t)this.setBuffer(e,t[e])}),this}setBuffer(t,e){const n=this._getVaryingIndex(t),{buffer:i,byteSize:r,byteOffset:s}=this._getBufferParams(e);return n<0?(this.unused[t]=i,Nw.warn(()=>`${this.id} unused varying buffer ${t}`)(),this):(this.buffers[n]=e,this.bindOnUse||this._bindBuffer(n,i,s,r),this)}begin(t=0){return this.gl.bindTransformFeedback(36386,this.handle),this._bindBuffers(),this.gl.beginTransformFeedback(t),this}end(){return this.gl.endTransformFeedback(),this._unbindBuffers(),this.gl.bindTransformFeedback(36386,null),this}_getBufferParams(t){let e,n,i;return t instanceof tS?i=t:(i=t.buffer,n=t.byteSize,e=t.byteOffset),(void 0!==e||void 0!==n)&&(e=e||0,n=n||i.byteLength-e),{buffer:i,byteOffset:e,byteSize:n}}_getVaryingInfo(t){return this.configuration&&this.configuration.getVaryingInfo(t)}_getVaryingIndex(t){if(this.configuration)return this.configuration.getVaryingInfo(t).location;const e=Number(t);return Number.isFinite(e)?e:-1}_bindBuffers(){if(this.bindOnUse)for(const t in this.buffers){const{buffer:e,byteSize:n,byteOffset:i}=this._getBufferParams(this.buffers[t]);this._bindBuffer(t,e,i,n)}}_unbindBuffers(){if(this.bindOnUse)for(const t in this.buffers)this._bindBuffer(t,null)}_bindBuffer(t,e,n=0,i){const r=e&&e.handle;return r&&void 0!==i?this.gl.bindBufferRange(35982,t,r,n,i):this.gl.bindBufferBase(35982,t,r),this}_createHandle(){return this.gl.createTransformFeedback()}_deleteHandle(){this.gl.deleteTransformFeedback(this.handle)}_bindHandle(t){this.gl.bindTransformFeedback(36386,this.handle)}}class jE{constructor(t,e={}){this.gl=t,this.currentIndex=0,this.feedbackMap={},this.varyings=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}setupResources(t){for(const e of this.bindings)this._setupTransformFeedback(e,t)}updateModelProps(t={}){const{varyings:e}=this;return e.length>0&&(t=Object.assign({},t,{varyings:e})),t}getDrawOptions(t={}){const e=this.bindings[this.currentIndex],{sourceBuffers:n,transformFeedback:i}=e;return{attributes:Object.assign({},n,t.attributes),transformFeedback:i}}swap(){return!!this.feedbackMap&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupBuffers(t)}getBuffer(t){const{feedbackBuffers:e}=this.bindings[this.currentIndex],n=t?e[t]:null;return n?n instanceof tS?n:n.buffer:null}getData(t={}){const{varyingName:e}=t,n=this.getBuffer(e);return n?n.getData():null}delete(){for(const t in this.resources)this.resources[t].delete()}_initialize(t={}){this._setupBuffers(t),this.varyings=t.varyings||Object.keys(this.bindings[this.currentIndex].feedbackBuffers),this.varyings.length>0&&Rx(Fw(this.gl))}_getFeedbackBuffers(t){const{sourceBuffers:e={}}=t,n={};if(this.bindings[this.currentIndex]&&Object.assign(n,this.bindings[this.currentIndex].feedbackBuffers),this.feedbackMap)for(const i in this.feedbackMap){const t=this.feedbackMap[i];i in e&&(n[t]=i)}Object.assign(n,t.feedbackBuffers);for(const i in n){const t=n[i];if("string"==typeof t){const r=e[t],{byteLength:s,usage:o,accessor:a}=r;n[i]=this._createNewBuffer(i,{byteLength:s,usage:o,accessor:a})}}return n}_setupBuffers(t={}){const{sourceBuffers:e=null}=t;Object.assign(this.feedbackMap,t.feedbackMap);const n=this._getFeedbackBuffers(t);this._updateBindings({sourceBuffers:e,feedbackBuffers:n})}_setupTransformFeedback(t,{model:e}){const{program:n}=e;t.transformFeedback=new LE(this.gl,{program:n,buffers:t.feedbackBuffers})}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this.feedbackMap){const{sourceBuffers:t,feedbackBuffers:e}=this._swapBuffers(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceBuffers:t,feedbackBuffers:e})}}_updateBinding(t,e){return t?(Object.assign(t.sourceBuffers,e.sourceBuffers),Object.assign(t.feedbackBuffers,e.feedbackBuffers),t.transformFeedback&&t.transformFeedback.setBuffers(t.feedbackBuffers),t):{sourceBuffers:Object.assign({},e.sourceBuffers),feedbackBuffers:Object.assign({},e.feedbackBuffers)}}_swapBuffers(t){if(!this.feedbackMap)return null;const e=Object.assign({},t.sourceBuffers),n=Object.assign({},t.feedbackBuffers);for(const i in this.feedbackMap){const r=this.feedbackMap[i];e[i]=t.feedbackBuffers[r],n[r]=t.sourceBuffers[i],Rx(n[r]instanceof tS)}return{sourceBuffers:e,feedbackBuffers:n}}_createNewBuffer(t,e){const n=new tS(this.gl,e);return this.resources[t]&&this.resources[t].delete(),this.resources[t]=n,n}_getNextIndex(){return(this.currentIndex+1)%2}}function FE(t){let e=100;const n=t.match(/[^\s]+/g);if(n.length>=2&&"#version"===n[0]){const t=parseInt(n[1],10);Number.isFinite(t)&&(e=t)}return e}const BE="vs",VE={[BE]:"#ifdef MODULE_LOGDEPTH\n logdepth_adjustPosition(gl_Position);\n#endif\n",fs:"#ifdef MODULE_MATERIAL\n gl_FragColor = material_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LIGHTING\n gl_FragColor = lighting_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_FOG\n gl_FragColor = fog_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_PICKING\n gl_FragColor = picking_filterHighlightColor(gl_FragColor);\n gl_FragColor = picking_filterPickingColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LOGDEPTH\n logdepth_setFragDepth();\n#endif\n"},zE="__LUMA_INJECT_DECLARATIONS__",UE=/void\s+main\s*\([^)]*\)\s*\{\n?/,HE=/}\n?[^{}]*$/,$E=[];function GE(t,e,n,i=!1){const r=e===BE;for(const s in n){const e=n[s];e.sort((t,e)=>t.order-e.order),$E.length=e.length;for(let t=0,n=e.length;tt+i));break;case"vs:#main-end":r&&(t=t.replace(HE,t=>i+t));break;case"fs:#decl":r||(t=t.replace(zE,i));break;case"fs:#main-start":r||(t=t.replace(UE,t=>t+i));break;case"fs:#main-end":r||(t=t.replace(HE,t=>i+t));break;default:t=t.replace(s,t=>t+i)}}return t=t.replace(zE,""),i&&(t=t.replace(/\}\s*$/,t=>t+VE[e])),t}function WE(t){const e={};return ME(Array.isArray(t)&&t.length>1),t.forEach(t=>{for(const n in t)e[n]=e[n]?`${e[n]}\n${t[n]}`:t[n]}),e}const qE={name:"transform",vs:"attribute float transform_elementID;\nvec2 transform_getPixelSizeHalf(vec2 size) {\n return vec2(1.) / (2. * size);\n}\n\nvec2 transform_getPixelIndices(vec2 texSize, vec2 pixelSizeHalf) {\n float yIndex = floor((transform_elementID / texSize[0]) + pixelSizeHalf[1]);\n float xIndex = transform_elementID - (yIndex * texSize[0]);\n return vec2(xIndex, yIndex);\n}\nvec2 transform_getTexCoord(vec2 size) {\n vec2 pixelSizeHalf = transform_getPixelSizeHalf(size);\n vec2 indices = transform_getPixelIndices(size, pixelSizeHalf);\n vec2 coord = indices / size + pixelSizeHalf;\n return coord;\n}\nvec2 transform_getPos(vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec2 pos = (texCoord * (2.0, 2.0)) - (1., 1.);\n return pos;\n}\nvec4 transform_getInput(sampler2D texSampler, vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec4 textureColor = texture2D(texSampler, texCoord);\n return textureColor;\n}\n",fs:null},XE="transform_uSize_",YE="transform_position";const KE={10241:9728,10240:9728,10242:33071,10243:33071};class QE{constructor(t,e={}){this.gl=t,this.id=this.currentIndex=0,this._swapTexture=null,this.targetTextureVarying=null,this.targetTextureType=null,this.samplerTextureMap=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}updateModelProps(t={}){const e=this._processVertexShader(t);return Object.assign({},t,e)}getDrawOptions(t={}){const{sourceBuffers:e,sourceTextures:n,framebuffer:i,targetTexture:r}=this.bindings[this.currentIndex],s=Object.assign({},e,t.attributes),o=Object.assign({},t.uniforms),a=Object.assign({},t.parameters);let l=t.discard;if(this.hasSourceTextures||this.hasTargetTexture){s.transform_elementID=this.elementIDBuffer;for(const e in this.samplerTextureMap)o[e]=n[this.samplerTextureMap[e]];this._setSourceTextureParameters();const t=function({sourceTextureMap:t,targetTextureVarying:e,targetTexture:n}){const i={};let r,s;e&&(({width:r,height:s}=n),i[`${XE}${e}`]=[r,s]);for(const o in t)({width:r,height:s}=t[o]),i[`${XE}${o}`]=[r,s];return i}({sourceTextureMap:n,targetTextureVarying:this.targetTextureVarying,targetTexture:r});Object.assign(o,t)}return this.hasTargetTexture&&(l=!1,a.viewport=[0,0,i.width,i.height]),{attributes:s,framebuffer:i,uniforms:o,discard:l,parameters:a}}swap(){return!!this._swapTexture&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupTextures(t)}getTargetTexture(){const{targetTexture:t}=this.bindings[this.currentIndex];return t}getData({packed:t=!1}={}){const{framebuffer:e}=this.bindings[this.currentIndex],n=_S(e);if(!t)return n;const i=n.constructor,r=function(t){switch(t){case"float":return 1;case"vec2":return 2;case"vec3":return 3;case"vec4":return 4;default:return ME(!1),null}}(this.targetTextureType),s=new i(n.length*r/4);let o=0;for(let a=0;a0,this._updateBindings({sourceBuffers:e,sourceTextures:n,targetTexture:r}),"elementCount"in t&&this._updateElementIDBuffer(t.elementCount)}_updateElementIDBuffer(t){if("number"!=typeof t||this.elementCount>=t)return;const e=new Float32Array(t);e.forEach((t,e,n)=>{n[e]=e}),this.elementIDBuffer?this.elementIDBuffer.setData({data:e}):this.elementIDBuffer=new tS(this.gl,{data:e,accessor:{size:1}}),this.elementCount=t}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this._swapTexture){const{sourceTextures:t,targetTexture:e}=this._swapTextures(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceTextures:t,targetTexture:e})}}_updateBinding(t,e){const{sourceBuffers:n,sourceTextures:i,targetTexture:r}=e;if(t||(t={sourceBuffers:{},sourceTextures:{},targetTexture:null}),Object.assign(t.sourceTextures,i),Object.assign(t.sourceBuffers,n),r){t.targetTexture=r;const{width:e,height:n}=r,{framebuffer:i}=t;i?(i.update({attachments:{36064:r},resizeAttachments:!1}),i.resize({width:e,height:n})):t.framebuffer=new SS(this.gl,{id:"transform-framebuffer",width:e,height:n,attachments:{36064:r}})}return t}_setSourceTextureParameters(){const t=this.currentIndex,{sourceTextures:e}=this.bindings[t];for(const n in e)e[n].setParameters(KE)}_swapTextures(t){if(!this._swapTexture)return null;const e=Object.assign({},t.sourceTextures);return e[this._swapTexture]=t.targetTexture,{sourceTextures:e,targetTexture:t.sourceTextures[this._swapTexture]}}_createNewTexture(t){const e=function(t,e){Rx(t instanceof lS||t instanceof bS||t instanceof yS);const n=t.constructor,{gl:i,width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u}=t;return new n(i,Object.assign({width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u},{parameters:{10241:9728,10240:9728,10242:33071,10243:33071},pixelStore:{37440:!1}}))}(t);return this.ownTexture&&this.ownTexture.delete(),this.ownTexture=e,e}_getNextIndex(){return(this.currentIndex+1)%2}_processVertexShader(t={}){const{sourceTextures:e,targetTexture:n}=this.bindings[this.currentIndex],{vs:i,uniforms:r,targetTextureType:s,inject:o,samplerTextureMap:a}=function({vs:t,sourceTextureMap:e,targetTextureVarying:n,targetTexture:i}){let r=Object.keys(e).length,s=null;const o={};let a=t,l={};if(r>0||n){const t=a.split("\n"),c=t.slice();if(t.forEach((t,i,a)=>{if(r>0){const n=function(t,e){const n={},i=function(t){return RE(t,["attribute","in"])}(t);if(!i)return null;const{type:r,name:s}=i;if(s&&e[s]){const e=`// ${t} => Replaced by Transform with a sampler`,{samplerName:i,sizeName:o,uniformDeclerations:a}=function(t){const e=`transform_uSampler_${t}`,n=`${XE}${t}`;return{samplerName:e,sizeName:n,uniformDeclerations:` uniform sampler2D ${e};\n uniform vec2 ${n};`}}(s),l=` ${r} ${s} = transform_getInput(${i}, ${o}).${function(t){switch(t){case"float":return"x";case"vec2":return"xy";case"vec3":return"xyz";case"vec4":return"xyzw";default:return ME(!1),null}}(r)};\n`;return n[i]=s,{updatedLine:e,inject:{"vs:#decl":a,"vs:#main-start":l},samplerTextureMap:n}}return null}(t,e);if(n){const{updatedLine:t,inject:e}=n;c[i]=t,l=WE([l,e]),Object.assign(o,n.samplerTextureMap),r--}}n&&!s&&(s=function(t,e){const n=RE(t,["varying","out"]);return n&&n.name===e?n.type:null}(t,n))}),n){Rx(i);const t=`${XE}${n}`;l=WE([l,{"vs:#decl":`uniform vec2 ${t};\n`,"vs:#main-start":` vec2 ${YE} = transform_getPos(${t});\n gl_Position = vec4(${YE}, 0, 1.);\n`}])}a=c.join("\n")}return{vs:a,targetTextureType:s,inject:l,samplerTextureMap:o}}({vs:t.vs,sourceTextureMap:e,targetTextureVarying:this.targetTextureVarying,targetTexture:n}),l=WE([t.inject||{},o]);return this.targetTextureType=s,this.samplerTextureMap=a,{vs:i,fs:t._fs||NE({version:FE(i),input:this.targetTextureVarying,inputType:s,output:"transform_output"}),modules:this.hasSourceTextures||this.targetTextureVarying?[qE].concat(t.modules||[]):t.modules,uniforms:r,inject:l}}}const ZE={number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},array:{validate:(t,e)=>Array.isArray(t)||ArrayBuffer.isView(t)}};function JE(t){let e=tC(t);return"object"===e?t?"type"in t?Object.assign({},t,ZE[t.type]):"value"in t?(e=tC(t.value),Object.assign({type:e},t,ZE[e])):{type:"object",value:t}:{type:"object",value:null}:Object.assign({type:e,value:t},ZE[e])}function tC(t){return Array.isArray(t)||ArrayBuffer.isView(t)?"array":typeof t}class eC{constructor({name:t,vs:e,fs:n,dependencies:i=[],uniforms:r,getUniforms:s,deprecations:o=[],defines:a={},inject:l={},vertexShader:c,fragmentShader:u}){ME("string"==typeof t),this.name=t,this.vs=e||c,this.fs=n||u,this.getModuleUniforms=s,this.dependencies=i,this.deprecations=this._parseDeprecationDefinitions(o),this.defines=a,this.injections=function(t){const e={vs:{},fs:{}};for(const n in t){let i=t[n];const r=n.slice(0,2);"string"==typeof i&&(i={order:0,injection:i}),e[r][n]=i}return e}(l),r&&(this.uniforms=function(t){const e={};for(const n in t){const i=JE(t[n]);e[n]=i}return e}(r))}getModuleSource(t){let e;switch(t){case"vs":e=this.vs||"";break;case"fs":e=this.fs||"";break;default:ME(!1)}return`#define MODULE_${this.name.toUpperCase().replace(/[^0-9a-z]/gi,"_")}\n${e}// END MODULE_${this.name}\n\n`}getUniforms(t,e){return this.getModuleUniforms?this.getModuleUniforms(t,e):this.uniforms?this._defaultGetUniforms(t):{}}getDefines(){return this.defines}checkDeprecations(t,e){this.deprecations.forEach(n=>{n.regex.test(t)&&(n.deprecated?e.deprecated(n.old,n.new)():e.removed(n.old,n.new)())})}_parseDeprecationDefinitions(t){return t.forEach(t=>{switch(t.type){case"function":t.regex=new RegExp(`\\b${t.old}\\(`);break;default:t.regex=new RegExp(`${t.type} ${t.old};`)}}),t}_defaultGetUniforms(t={}){const e={},n=this.uniforms;for(const i in n){const r=n[i];i in t&&!r.private?(r.validate&&ME(r.validate(t[i],r),`${this.name}: invalid ${i}`),e[i]=t[i]):e[i]=r.value}return e}}function nC(t){return function(t){const e={},n={};return iC({modules:t,level:0,moduleMap:e,moduleDepth:n}),Object.keys(n).sort((t,e)=>n[e]-n[t]).map(t=>e[t])}(rC(t))}function iC({modules:t,level:e,moduleMap:n,moduleDepth:i}){if(e>=5)throw new Error("Possible loop in shader dependency graph");for(const r of t)n[r.name]=r,(void 0===i[r.name]||i[r.name](t instanceof eC||(ME("string"!=typeof t,`Shader module use by name is deprecated. Import shader module '${t}' and use it directly.`),ME(t.name,"shader module has no name"),(t=new eC(t)).dependencies=rC(t.dependencies)),t))}const sC={GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]},oC={};function aC(t,e){return t.match(/NVIDIA/i)||e.match(/NVIDIA/i)?"NVIDIA":t.match(/INTEL/i)||e.match(/INTEL/i)?"INTEL":t.match(/Apple/i)||e.match(/Apple/i)?"APPLE":t.match(/AMD/i)||e.match(/AMD/i)||t.match(/ATI/i)||e.match(/ATI/i)?"AMD":"UNKNOWN"}Object.keys(sC).forEach(t=>{oC[t]=t});const lC={};function cC(t,e,n={}){const i=sC[e];if(ME(i,e),!function(t={}){const e="undefined"!=typeof window&&window.navigator||{},n=t.userAgent||e.userAgent||"",i=-1!==n.indexOf("MSIE "),r=-1!==n.indexOf("Trident/");return i||r}(n))return!0;if(e in lC)return lC[e];const r=`#extension GL_${i[0]} : ${n.behavior||"enable"}\nvoid main(void) {}`,s=t.createShader(35633);t.shaderSource(s,r),t.compileShader(s);const o=t.getShaderParameter(s,35713);return t.deleteShader(s),lC[e]=o,o}function uC(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>function(t,e){const n=sC[e];ME(n,e);const i=function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}(t)&&n[1]||n[0],r="string"==typeof i?Boolean(t.getExtension(i)):i;return ME(!1===r||!0===r),r}(t,e))}function hC(t){return new RegExp(`\\b${t}[ \\t]+(\\w+[ \\t]+\\w+(\\[\\w+\\])?;)`,"g")}const dC=[[/^(#version[ \t]+(100|300[ \t]+es))?[ \t]*\n/,"#version 300 es\n"],[/\btexture(2D|2DProj|Cube)Lod(EXT)?\(/g,"textureLod("],[/\btexture(2D|2DProj|Cube)(EXT)?\(/g,"texture("]],pC=[...dC,[hC("attribute"),"in $1"],[hC("varying"),"out $1"]],fC=[...dC,[hC("varying"),"in $1"]],gC=[[/^#version[ \t]+300[ \t]+es/,"#version 100"],[/\btexture(2D|2DProj|Cube)Lod\(/g,"texture$1LodEXT("],[/\btexture\(/g,"texture2D("],[/\btextureLod\(/g,"texture2DLodEXT("]],mC=[...gC,[hC("in"),"attribute $1"],[hC("out"),"varying $1"]],bC=[...gC,[hC("in"),"varying $1"]],yC="gl_FragColor",vC=/\bout[ \t]+vec4[ \t]+(\w+)[ \t]*;\n?/,_C=/void\s+main\s*\([^)]*\)\s*\{\n?/;function wC(t,e){for(const[n,i]of e)t=t.replace(n,i);return t}const xC=`\n\n${zE}\n\n`,SC={[BE]:"vertex",fs:"fragment"};function EC(t,{id:e,source:n,type:i,modules:r,defines:s={},hookFunctions:o=[],inject:a={},transpileToGLSL100:l=!1,prologue:c=!0,log:u}){ME("string"==typeof n,"shader source must be a string");const h=i===BE,d=n.split("\n");let p=100,f="",g=n;0===d[0].indexOf("#version ")?(p=300,f=d[0],g=d.slice(1).join("\n")):f=`#version ${p}`;const m={};r.forEach(t=>{Object.assign(m,t.getDefines())}),Object.assign(m,s);let b=c?`${f}\n${function({id:t,source:e,type:n}){return t&&"string"==typeof t&&-1===e.indexOf("SHADER_NAME")?`\n#define SHADER_NAME ${t}_${SC[n]}\n\n`:""}({id:e,source:n,type:i})}\n${function({type:t}){return`\n#define SHADER_TYPE_${SC[t].toUpperCase()}\n`}({type:i})}\n${function(t){switch(function(t){const e=t.getExtension("WEBGL_debug_renderer_info"),n=t.getParameter(e&&e.UNMASKED_VENDOR_WEBGL||7936),i=t.getParameter(e&&e.UNMASKED_RENDERER_WEBGL||7937);return{gpuVendor:aC(n,i),vendor:n,renderer:i,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t).gpuVendor.toLowerCase()){case"nvidia":return"#define NVIDIA_GPU\n// Nvidia optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n";case"intel":return"#define INTEL_GPU\n// Intel optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n// Intel's built-in 'tan' function doesn't have acceptable precision\n#define LUMA_FP32_TAN_PRECISION_WORKAROUND 1\n// Intel GPU doesn't have full 32 bits precision in same cases, causes overflow\n#define LUMA_FP64_HIGH_BITS_OVERFLOW_WORKAROUND 1\n";case"amd":return"#define AMD_GPU\n";default:return"#define DEFAULT_GPU\n// Prevent driver from optimizing away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n"}}(t)}\n${function(t,e,n){let i="#if (__VERSION__ > 120)\n\n# define FEATURE_GLSL_DERIVATIVES\n# define FEATURE_GLSL_DRAW_BUFFERS\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FEATURE_GLSL_TEXTURE_LOD\n\n// DEPRECATED FLAGS, remove in v9\n# define FRAG_DEPTH\n# define DERIVATIVES\n# define DRAW_BUFFERS\n# define TEXTURE_LOD\n\n#endif // __VERSION\n";return uC(t,oC.GLSL_FRAG_DEPTH)&&(i+="\n// FRAG_DEPTH => gl_FragDepth is available\n#ifdef GL_EXT_frag_depth\n#extension GL_EXT_frag_depth : enable\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FRAG_DEPTH\n# define gl_FragDepth gl_FragDepthEXT\n#endif\n"),uC(t,oC.GLSL_DERIVATIVES)&&cC(t,oC.GLSL_DERIVATIVES)&&(i+="\n// DERIVATIVES => dxdF, dxdY and fwidth are available\n#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n# define FEATURE_GLSL_DERIVATIVES\n# define DERIVATIVES\n#endif\n"),uC(t,oC.GLSL_FRAG_DATA)&&cC(t,oC.GLSL_FRAG_DATA,{behavior:"require"})&&(i+="\n// DRAW_BUFFERS => gl_FragData[] is available\n#ifdef GL_EXT_draw_buffers\n#extension GL_EXT_draw_buffers : require\n#define FEATURE_GLSL_DRAW_BUFFERS\n#define DRAW_BUFFERS\n#endif\n"),uC(t,oC.GLSL_TEXTURE_LOD)&&(i+="// TEXTURE_LOD => texture2DLod etc are available\n#ifdef GL_EXT_shader_texture_lod\n#extension GL_EXT_shader_texture_lod : enable\n\n# define FEATURE_GLSL_TEXTURE_LOD\n# define TEXTURE_LOD\n\n#endif\n"),i}(t)}\n${function(t={}){let e=0,n="";for(const i in t){0===e&&(n+="\n// APPLICATION DEFINES\n"),e++;const r=t[i];(r||Number.isFinite(r))&&(n+=`#define ${i.toUpperCase()} ${t[i]}\n`)}return 0===e&&(n+="\n"),n}(m)}\n${h?"":"precision highp float;\n\n"}\n`:`${f}\n`;const y=function(t){const e={vs:{},fs:{}};return t.forEach(t=>{let n;"string"!=typeof t?(n=t,t=n.hook):n={},t=t.trim();const[i,r]=t.split(":"),s=t.replace(/\(.+/,"");e[i][s]=Object.assign(n,{signature:r})}),e}(o),v={},_={},w={};for(const x in a){const t="string"==typeof a[x]?{injection:a[x],order:0}:a[x],e=x.match(/^(v|f)s:(#)?([\w-]+)$/);if(e){const n=e[3];e[2]?"decl"===n?_[x]=[t]:w[x]=[t]:v[x]=[t]}else w[x]=[t]}for(const x of r){u&&x.checkDeprecations(g,u),b+=x.getModuleSource(i,p);const t=x.injections[i];for(const e in t){const n=e.match(/^(v|f)s:#([\w-]+)$/);if(n){const i="decl"===n[2]?_:w;i[e]=i[e]||[],i[e].push(t[e])}else v[e]=v[e]||[],v[e].push(t[e])}}return b+=xC,b=GE(b,i,_),b+=function(t,e){let n="";for(const i in t){const r=t[i];if(n+=`void ${r.signature} {\n`,r.header&&(n+=` ${r.header}`),e[i]){const t=e[i];t.sort((t,e)=>t.order-e.order);for(const e of t)n+=` ${e.injection}\n`}r.footer&&(n+=` ${r.footer}`),n+="}\n"}return n}(y[i],v),b+=g,b=GE(b,i,w),b=function(t,e,n){switch(e){case 300:return n?wC(t,pC):function(t){const e=(t=wC(t,fC)).match(vC);if(e){const n=e[1];t=t.replace(new RegExp(`\\b${yC}\\b`,"g"),n)}else{const e="fragmentColor";t=t.replace(_C,t=>`out vec4 ${e};\n${t}`).replace(new RegExp(`\\b${yC}\\b`,"g"),e)}return t}(t);case 100:return n?wC(t,mC):function(t){const e=(t=wC(t,bC)).match(vC);if(e){const n=e[1];t=t.replace(vC,"").replace(new RegExp(`\\b${n}\\b`,"g"),yC)}return t}(t);default:throw new Error(`unknown GLSL version ${e}`)}}(b,l?100:p,h),b}function CC(t){return function(e){const n={};for(const i of t){const t=i.getUniforms(e,n);Object.assign(n,t)}return n}}const OC={5126:VC.bind(null,"uniform1fv",IC,1,zC),35664:VC.bind(null,"uniform2fv",IC,2,zC),35665:VC.bind(null,"uniform3fv",IC,3,zC),35666:VC.bind(null,"uniform4fv",IC,4,zC),5124:VC.bind(null,"uniform1iv",DC,1,zC),35667:VC.bind(null,"uniform2iv",DC,2,zC),35668:VC.bind(null,"uniform3iv",DC,3,zC),35669:VC.bind(null,"uniform4iv",DC,4,zC),35670:VC.bind(null,"uniform1iv",DC,1,zC),35671:VC.bind(null,"uniform2iv",DC,2,zC),35672:VC.bind(null,"uniform3iv",DC,3,zC),35673:VC.bind(null,"uniform4iv",DC,4,zC),35674:VC.bind(null,"uniformMatrix2fv",IC,4,UC),35675:VC.bind(null,"uniformMatrix3fv",IC,9,UC),35676:VC.bind(null,"uniformMatrix4fv",IC,16,UC),35678:BC,35680:BC,5125:VC.bind(null,"uniform1uiv",RC,1,zC),36294:VC.bind(null,"uniform2uiv",RC,2,zC),36295:VC.bind(null,"uniform3uiv",RC,3,zC),36296:VC.bind(null,"uniform4uiv",RC,4,zC),35685:VC.bind(null,"uniformMatrix2x3fv",IC,6,UC),35686:VC.bind(null,"uniformMatrix2x4fv",IC,8,UC),35687:VC.bind(null,"uniformMatrix3x2fv",IC,6,UC),35688:VC.bind(null,"uniformMatrix3x4fv",IC,12,UC),35689:VC.bind(null,"uniformMatrix4x2fv",IC,8,UC),35690:VC.bind(null,"uniformMatrix4x3fv",IC,12,UC),35678:BC,35680:BC,35679:BC,35682:BC,36289:BC,36292:BC,36293:BC,36298:BC,36299:BC,36300:BC,36303:BC,36306:BC,36307:BC,36308:BC,36311:BC},TC={},kC={},AC={},PC=[0];function MC(t,e,n,i){1===e&&"boolean"==typeof t&&(t=t?1:0),Number.isFinite(t)&&(PC[0]=t,t=PC);const r=t.length;if(r%e&&Nw.warn(`Uniform size should be multiples of ${e}`,t)(),t instanceof n)return t;let s=i[r];s||(s=new n(r),i[r]=s);for(let o=0;o{const r=t!==i;return r&&(e.uniform1i(n,i),t=i),r}}function VC(t,e,n,i){let r=null,s=null;return(o,a,l)=>{const c=e(l,n),u=c.length;let h=!1;if(null===r)r=new Float32Array(u),s=u,h=!0;else{Rx(s===u,"Uniform length cannot change.");for(let t=0;t{const s=String(i+e);return GC(s,r-s.length)+n+t})}(e);return{shaderName:l,errors:$C(s,c),warnings:$C(o,c)}}(t,this.source,this.shaderType,this.id);throw Nw.error(`GLSL compilation errors in ${e}\n${n}`)(),Nw.warn(`GLSL compilation warnings in ${e}\n${i}`)(),new Error(`GLSL compilation errors in ${e}`)}}_deleteHandle(){this.gl.deleteShader(this.handle)}_getOptsFromHandle(){return{type:this.getParameter(35663),source:this.getSource()}}}class qC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35633}))}_createHandle(){return this.gl.createShader(35633)}}class XC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35632}))}_createHandle(){return this.gl.createShader(35632)}}const YC=5126,KC=5124,QC=5125,ZC={[YC]:[YC,1,"float"],35664:[YC,2,"vec2"],35665:[YC,3,"vec3"],35666:[YC,4,"vec4"],[KC]:[KC,1,"int"],35667:[KC,2,"ivec2"],35668:[KC,3,"ivec3"],35669:[KC,4,"ivec4"],[QC]:[QC,1,"uint"],36294:[QC,2,"uvec2"],36295:[QC,3,"uvec3"],36296:[QC,4,"uvec4"],35670:[YC,1,"bool"],35671:[YC,2,"bvec2"],35672:[YC,3,"bvec3"],35673:[YC,4,"bvec4"],35674:[YC,8,"mat2"],35685:[YC,8,"mat2x3"],35686:[YC,8,"mat2x4"],35675:[YC,12,"mat3"],35687:[YC,12,"mat3x2"],35688:[YC,12,"mat3x4"],35676:[YC,16,"mat4"],35689:[YC,16,"mat4x2"],35690:[YC,16,"mat4x3"]};function JC(t){const e=ZC[t];if(!e)return null;const[n,i]=e;return{type:n,components:i}}function tO(t,e){switch(t){case 5120:case 5121:case 5122:case 5123:t=YC}for(const n in ZC){const[i,r,s]=ZC[n];if(i===t&&r===e)return{glType:n,name:s}}return null}class eO{constructor(t){this.id=t.id,this.attributeInfos=[],this.attributeInfosByName={},this.attributeInfosByLocation=[],this.varyingInfos=[],this.varyingInfosByName={},Object.seal(this),this._readAttributesFromProgram(t),this._readVaryingsFromProgram(t)}getAttributeInfo(t){const e=Number(t);return Number.isFinite(e)?this.attributeInfosByLocation[e]:this.attributeInfosByName[t]||null}getAttributeLocation(t){const e=this.getAttributeInfo(t);return e?e.location:-1}getAttributeAccessor(t){const e=this.getAttributeInfo(t);return e?e.accessor:null}getVaryingInfo(t){const e=Number(t);return Number.isFinite(e)?this.varyingInfos[e]:this.varyingInfosByName[t]||null}getVaryingIndex(t){const e=this.getVaryingInfo();return e?e.location:-1}getVaryingAccessor(t){const e=this.getVaryingInfo();return e?e.accessor:null}_readAttributesFromProgram(t){const{gl:e}=t,n=e.getProgramParameter(t.handle,35721);for(let i=0;i=0&&this._addAttribute(o,n,r,s)}this.attributeInfos.sort((t,e)=>t.location-e.location)}_readVaryingsFromProgram(t){const{gl:e}=t;if(!Fw(e))return;const n=e.getProgramParameter(t.handle,35971);for(let i=0;it.location-e.location)}_addAttribute(t,e,n,i){const{type:r,components:s}=JC(n),o={type:r,size:i*s};this._inferProperties(t,e,o);const a={location:t,name:e,accessor:new Kx(o)};this.attributeInfos.push(a),this.attributeInfosByLocation[t]=a,this.attributeInfosByName[a.name]=a}_inferProperties(t,e,n){/instance/i.test(e)&&(n.divisor=1)}_addVarying(t,e,n,i){const{type:r,components:s}=JC(n),o={location:t,name:e,accessor:new Kx({type:r,size:i*s})};this.varyingInfos.push(o),this.varyingInfosByName[o.name]=o}}const nO=35981,iO=["setVertexArray","setAttributes","setBuffers","unsetBuffers","use","getUniformCount","getUniformInfo","getUniformLocation","getUniformValue","getVarying","getFragDataLocation","getAttachedShaders","getAttributeCount","getAttributeLocation","getAttributeInfo"];class rO extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Program","v6.0",iO),this._isCached=!1,this.initialize(e),Object.seal(this),this._setId(e.id)}initialize(t={}){const{hash:e,vs:n,fs:i,varyings:r,bufferMode:s=nO}=t;return this.hash=e||"",this.vs="string"==typeof n?new qC(this.gl,{id:`${t.id}-vs`,source:n}):n,this.fs="string"==typeof i?new XC(this.gl,{id:`${t.id}-fs`,source:i}):i,Rx(this.vs instanceof qC),Rx(this.fs instanceof XC),this.uniforms={},this._textureUniforms={},r&&r.length>0&&(Vw(this.gl),this.varyings=r,this.gl2.transformFeedbackVaryings(this.handle,r,s)),this._compileAndLink(),this._readUniformLocationsFromLinkedProgram(),this.configuration=new eO(this),this.setProps(t)}delete(t={}){return this._isCached?this:super.delete(t)}setProps(t){return"uniforms"in t&&this.setUniforms(t.uniforms),this}draw({logPriority:t,drawMode:e=4,vertexCount:n,offset:i=0,start:r,end:s,isIndexed:o=!1,indexType:a=5123,instanceCount:l=0,isInstanced:c=l>0,vertexArray:u=null,transformFeedback:h,framebuffer:d,parameters:p={},uniforms:f,samplers:g}){if((f||g)&&(Nw.deprecated("Program.draw({uniforms})","Program.setUniforms(uniforms)")(),this.setUniforms(f||{})),Nw.priority>=t){const i=d?d.id:"default",r=`mode=${Lx(this.gl,e)} verts=${n} instances=${l} indexType=${Lx(this.gl,a)} isInstanced=${c} isIndexed=${o} Framebuffer=${i}`;Nw.log(t,r)()}return Rx(u),this.gl.useProgram(this.handle),!(!this._areTexturesRenderable()||0===n||c&&0===l||(u.bindForDraw(n,l,()=>{if(void 0!==d&&(p=Object.assign({},p,{framebuffer:d})),h){const t=function(t){switch(t){case 0:return 0;case 1:case 3:case 2:return 1;case 4:case 5:case 6:return 4;default:return Rx(!1),0}}(e);h.begin(t)}this._bindTextures(),vx(this.gl,p,()=>{o&&c?this.gl2.drawElementsInstanced(e,n,a,i,l):o&&Fw(this.gl)&&!isNaN(r)&&!isNaN(s)?this.gl2.drawRangeElements(e,r,s,n,a,i):o?this.gl.drawElements(e,n,a,i):c?this.gl2.drawArraysInstanced(e,i,n,l):this.gl.drawArrays(e,i,n)}),h&&h.end()}),0))}setUniforms(t={}){Nw.priority>=2&&function(t,e,n){for(const i in t){const r=t[i];if((!n||Boolean(n[i]))&&!jC(r))throw e=e?`${e} `:"",console.error(`${e} Bad uniform ${i}`,r),new Error(`${e} Bad uniform ${i}`)}}(t,this.id,this._uniformSetters),this.gl.useProgram(this.handle);for(const e in t){const n=t[e],i=this._uniformSetters[e];if(i){let t=n,r=!1;if(t instanceof SS&&(t=t.texture),t instanceof oS)if(r=this.uniforms[e]!==n,r){void 0===i.textureIndex&&(i.textureIndex=this._textureIndexCounter++);const n=t,{textureIndex:r}=i;n.bind(r),t=r,this._textureUniforms[e]=n}else t=i.textureIndex;else this._textureUniforms[e]&&delete this._textureUniforms[e];(i(t)||r)&&FC(this.uniforms,e,n)}}return this}_areTexturesRenderable(){let t=!0;for(const e in this._textureUniforms){const n=this._textureUniforms[e];n.update(),t=t&&n.loaded}return t}_bindTextures(){for(const t in this._textureUniforms)this._textureUniforms[t].bind(this._uniformSetters[t].textureIndex)}_createHandle(){return this.gl.createProgram()}_deleteHandle(){this.gl.deleteProgram(this.handle)}_getOptionsFromHandle(t){const e=this.gl.getAttachedShaders(t),n={};for(const i of e)switch(this.gl.getShaderParameter(this.handle,35663)){case 35633:n.vs=new qC({handle:i});break;case 35632:n.fs=new XC({handle:i})}return n}_getParameter(t){return this.gl.getProgramParameter(this.handle,t)}_setId(t){if(!t){const t=this._getName();this.id=Fx(t)}}_getName(){let t=this.vs.getName()||this.fs.getName();return t=t.replace(/shader/i,""),t=t?`${t}-program`:"program",t}_compileAndLink(){const{gl:t}=this;if(t.attachShader(this.handle,this.vs.handle),t.attachShader(this.handle,this.fs.handle),Nw.time(4,`linkProgram for ${this._getName()}`)(),t.linkProgram(this.handle),Nw.timeEnd(4,`linkProgram for ${this._getName()}`)(),t.debug||Nw.level>0){if(!t.getProgramParameter(this.handle,35714))throw new Error(`Error linking: ${t.getProgramInfoLog(this.handle)}`);if(t.validateProgram(this.handle),!t.getProgramParameter(this.handle,35715))throw new Error(`Error validating: ${t.getProgramInfoLog(this.handle)}`)}}_readUniformLocationsFromLinkedProgram(){const{gl:t}=this;this._uniformSetters={},this._uniformCount=this._getParameter(35718);for(let e=0;e1)for(let e=0;ee.name===t.name)||this._defaultModules.push(t),this.stateHash++}removeDefaultModule(t){const e="string"==typeof t?t:t.name;this._defaultModules=this._defaultModules.filter(t=>t.name!==e),this.stateHash++}addShaderHook(t,e){e&&(t=Object.assign(e,{hook:t})),this._hookFunctions.push(t),this.stateHash++}get(t={}){const{vs:e="",fs:n="",defines:i={},inject:r={},varyings:s=[],bufferMode:o=35981,transpileToGLSL100:a=!1}=t,l=this._getModuleList(t.modules),c=this._getHash(e),u=this._getHash(n),h=l.map(t=>this._getHash(t.name)).sort(),d=s.map(t=>this._getHash(t)),p=Object.keys(i).sort(),f=Object.keys(r).sort(),g=[],m=[];for(const y of p)g.push(this._getHash(y)),g.push(this._getHash(i[y]));for(const y of f)m.push(this._getHash(y)),m.push(this._getHash(r[y]));const b=`${c}/${u}D${g.join("/")}M${h.join("/")}I${m.join("/")}V${d.join("/")}H${this.stateHash}B${o}${a?"T":""}`;if(!this._programCache[b]){const t=function(t,e){const{vs:n,fs:i}=e,r=nC(e.modules||[]);return{gl:t,vs:EC(t,Object.assign({},e,{source:n,type:BE,modules:r})),fs:EC(t,Object.assign({},e,{source:i,type:"fs",modules:r})),getUniforms:CC(r)}}(this.gl,{vs:e,fs:n,modules:l,inject:r,defines:i,hookFunctions:this._hookFunctions,transpileToGLSL100:a});this._programCache[b]=new rO(this.gl,{hash:b,vs:t.vs,fs:t.fs,varyings:s,bufferMode:o}),this._getUniforms[b]=t.getUniforms||(t=>{}),this._useCounts[b]=0}return this._useCounts[b]++,this._programCache[b]}getUniforms(t){return this._getUniforms[t.hash]||null}release(t){const e=t.hash;this._useCounts[e]--,0===this._useCounts[e]&&(this._programCache[e].delete(),delete this._programCache[e],delete this._getUniforms[e],delete this._useCounts[e])}_getHash(t){return void 0===this._hashes[t]&&(this._hashes[t]=this._hashCounter++),this._hashes[t]}_getModuleList(t=[]){const e=new Array(this._defaultModules.length+t.length),n={};let i=0;for(let r=0,s=this._defaultModules.length;r-1)return"Edge";const n=-1!==e.indexOf("MSIE "),i=-1!==e.indexOf("Trident/");return n||i?"IE":vw.chrome?"Chrome":vw.safari?"Safari":vw.mozInnerScreenX?"Firefox":"Unknown"}()}static getDefaultArray(t){return t.luma=t.luma||{},t.luma.defaultVertexArray||(t.luma.defaultVertexArray=new aO(t,{handle:null,isDefaultArray:!0})),t.luma.defaultVertexArray}static getMaxAttributes(t){return aO.MAX_ATTRIBUTES=aO.MAX_ATTRIBUTES||t.getParameter(34921),aO.MAX_ATTRIBUTES}static setConstant(t,e,n){switch(n.constructor){case Float32Array:aO._setConstantFloatArray(t,e,n);break;case Int32Array:aO._setConstantIntArray(t,e,n);break;case Uint32Array:aO._setConstantUintArray(t,e,n);break;default:Rx(!1)}}constructor(t,e={}){super(t,Object.assign({},e,{id:e.id||e.program&&e.program.id})),this.buffer=null,this.bufferValue=null,this.isDefaultArray=e.isDefaultArray||!1,this.gl2=t,this.initialize(e),Object.seal(this)}delete(){return super.delete(),this.buffer&&this.buffer.delete(),this}get MAX_ATTRIBUTES(){return aO.getMaxAttributes(this.gl)}initialize(t={}){return this.setProps(t)}setProps(t){return this}setElementBuffer(t=null,e={}){return Rx(!t||34963===t.target,"elements must be GL.ELEMENT_ARRAY_BUFFER"),this.bind(()=>{this.gl.bindBuffer(34963,t?t.handle:null)}),this}setBuffer(t,e,n){if(34963===e.target)return this.setElementBuffer(e,n);const{size:i,type:r,stride:s,offset:o,normalized:a,integer:l,divisor:c}=n,{gl:u,gl2:h}=this;return t=Number(t),this.bind(()=>{u.bindBuffer(34962,e.handle),l?(Rx(Fw(u)),h.vertexAttribIPointer(t,i,r,s,o)):u.vertexAttribPointer(t,i,r,a,s,o),u.enableVertexAttribArray(t),h.vertexAttribDivisor(t,c||0)}),this}enable(t,e=!0){return!e&&0===t&&!aO.isSupported(this.gl,{constantAttributeZero:!0})||(t=Number(t),this.bind(()=>e?this.gl.enableVertexAttribArray(t):this.gl.disableVertexAttribArray(t))),this}getConstantBuffer(t,e){const n=this._normalizeConstantArrayValue(e),i=n.byteLength*t,r=n.length*t;let s=!this.buffer;if(this.buffer=this.buffer||new tS(this.gl,i),s=s||this.buffer.reallocate(i),s=s||!this._compareConstantArrayValues(n,this.bufferValue),s){const t=function(t,e){return new t(function(t){return(!oO||oO.byteLength{switch(t){case 34373:return this.gl.getVertexAttribOffset(e,t);default:return this.gl.getVertexAttrib(e,t)}})}}const lO=/^(.+)__LOCATION_([0-9]+)$/,cO=["setBuffers","setGeneric","clearBindings","setLocations","setGenericValues","setDivisor","enable","disable"];class uO{constructor(t,e={}){this.id=e.id||e.program&&e.program.id,this.gl=t,this.configuration=null,this.elements=null,this.elementsAccessor=null,this.values=null,this.accessors=null,this.unused=null,this.drawParams=null,this.buffer=null,this.attributes={},this.vertexArrayObject=new aO(t),zx(this,"VertexArray","v6.0",cO),this.initialize(e),Object.seal(this)}delete(){this.buffer&&this.buffer.delete(),this.vertexArrayObject.delete()}initialize(t={}){return this.reset(),this.configuration=null,this.bindOnUse=!1,this.setProps(t)}reset(){this.elements=null,this.elementsAccessor=null;const{MAX_ATTRIBUTES:t}=this.vertexArrayObject;return this.values=new Array(t).fill(null),this.accessors=new Array(t).fill(null),this.unused={},this.drawParams=null,this}setProps(t){return"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"attributes"in t&&this.setAttributes(t.attributes),"elements"in t&&this.setElementBuffer(t.elements),"bindOnUse"in t&&(t=t.bindOnUse),this}clearDrawParams(){this.drawParams=null}getDrawParams(){return this.drawParams=this.drawParams||this._updateDrawParams(),this.drawParams}setAttributes(t){return Object.assign(this.attributes,t),this.vertexArrayObject.bind(()=>{for(const e in t)this._setAttribute(e,t[e]);this.gl.bindBuffer(34962,null)}),this}setElementBuffer(t=null,e={}){return this.elements=t,this.elementsAccessor=e,this.clearDrawParams(),this.vertexArrayObject.setElementBuffer(t,e),this}setBuffer(t,e,n={}){if(34963===e.target)return this.setElementBuffer(e,n);const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,e.accessor,n);return i>=0&&(this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.setBuffer(i,e,r)),this}setConstant(t,e,n={}){const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,Object.assign({size:e.length},n));return i>=0&&(e=this.vertexArrayObject._normalizeConstantArrayValue(e),this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.enable(i,!1)),this}unbindBuffers(){return this.vertexArrayObject.bind(()=>{this.elements&&this.vertexArrayObject.setElementBuffer(null),this.buffer=this.buffer||new tS(this.gl,{accessor:{size:4}});for(let t=0;t{this.elements&&this.setElementBuffer(this.elements);for(let t=0;t{this._setConstantAttributes(t,e),i=n()}),i}_resolveLocationAndAccessor(t,e,n,i){const r={location:-1,accessor:null},{location:s,name:o}=this._getAttributeIndex(t);if(!Number.isFinite(s)||s<0)return this.unused[t]=e,Nw.once(3,()=>`unused value ${t} in ${this.id}`)(),r;const a=this._getAttributeInfo(o||s);if(!a)return r;const l=Kx.resolve(a.accessor,this.accessors[s]||{},n,i),{size:c,type:u}=l;return Rx(Number.isFinite(c)&&Number.isFinite(u)),{location:s,accessor:l}}_getAttributeInfo(t){return this.configuration&&this.configuration.getAttributeInfo(t)}_getAttributeIndex(t){const e=Number(t);if(Number.isFinite(e))return{location:e};const n=lO.exec(t),i=n?n[1]:t,r=n?Number(n[2]):0;return this.configuration?{location:this.configuration.getAttributeLocation(i)+r,name:i}:{location:-1}}_setAttribute(t,e){if(e instanceof tS)this.setBuffer(t,e);else if(Array.isArray(e)&&e.length&&e[0]instanceof tS)this.setBuffer(t,e[0],e[1]);else if(ArrayBuffer.isView(e)||Array.isArray(e))this.setConstant(t,e);else{if(!(e.buffer instanceof tS))throw new Error("VertexArray: attributes must be Buffers or constants (i.e. typed array)");this.setBuffer(t,e.buffer,e)}}_setConstantAttributes(t,e){const n=Math.max(0|t,0|e);let i=this.values[0];ArrayBuffer.isView(i)&&this._setConstantAttributeZero(i,n);for(let r=1;r0;if(t.isInstanced=t.isInstanced||s,n instanceof tS){const e=n;if(s){const n=e.getVertexCount(i);t.instanceCount=Math.min(t.instanceCount,n)}else{const n=e.getVertexCount(i);t.vertexCount=Math.min(t.vertexCount,n)}}}setElements(t=null,e={}){return Nw.deprecated("setElements","setElementBuffer")(),this.setElementBuffer(t,e)}}function hO(t,e={}){const{isInteger:n=!1}=e;if(Array.isArray(t)||ArrayBuffer.isView(t))return function(t,e){const{maxElts:n=16,size:i=1}=e;let r="[";for(let s=0;s0&&(r+=","+(s%i==0?" ":"")),r+=hO(t[s],e);return`${r}${t.length>n?"...":"]"}`}(t,e);if(!Number.isFinite(t))return String(t);if(Math.abs(t)<1e-16)return n?"0":"0.";if(n||Math.abs(t)>100&&Math.abs(t)<1e4)return t.toFixed(0);const i=t.toPrecision(2);return i.indexOf(".0")===i.length-2?i.slice(0,-1):i}function dO(t,e,n,i){const{gl:r}=t;if(!e)return{[i]:"null","Format ":"N/A"};let s,o,a,l="NOT PROVIDED",c=1,u=0,h=0;if(n&&(l=n.type,c=n.size,l=String(l).replace("Array",""),s=-1!==l.indexOf("nt")),e instanceof tS){const t=e,{data:d,changed:p}=t.getDebugData();let f;return o=p?"*":"",a=d,h=t.byteLength,u=h/d.BYTES_PER_ELEMENT/c,n?f=`${n.divisor>0?"I ":"P "} ${u} (x${c}=${h} bytes ${Lx(r,l)})`:(s=!0,f=`${h} bytes`),{[i]:`${o}${hO(a,{size:c,isInteger:s})}`,"Format ":f}}return a=e,c=e.length,l=String(e.constructor.name).replace("Array",""),s=-1!==l.indexOf("nt"),{[i]:`${hO(a,{size:c,isInteger:s})} (constant)`,"Format ":`${c}x${l} (constant)`}}function pO(t,e){const{type:n,size:i}=e,r=tO(n,i);return r?`${t} (${r.name})`:t}function fO({header:t="Uniforms",program:e,uniforms:n,undefinedOnly:i=!1}){Rx(e);const r=".*Matrix",s={},o=Object.keys(e._uniformSetters).sort();let a=0;for(const u of o)!u.match(".*_.*")&&!u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)s[u]||gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;let l=0;const c={};if(!i)for(const u in n){const e=n[u];s[u]||(l++,c[u]={Type:`NOT USED: ${e}`,[t]:hO(e)})}return{table:s,count:a,unusedTable:c,unusedCount:l}}function gO({table:t,header:e,uniforms:n,uniformName:i,undefinedOnly:r}){const s=n[i],o=function(t){return null!=t}(s);return!(r&&o||(t[i]={[e]:o?hO(s):"N/A","Uniform Type":o?s:"NOT PROVIDED"},0))}function mO(t){const{type:e,size:n}=t.accessor,i=tO(e,n);return i?`${i.name} ${t.name}`:t.name}const bO={POSITION:"positions",NORMAL:"normals",COLOR_0:"colors",TEXCOORD_0:"texCoords",TEXCOORD_1:"texCoords1",TEXCOORD_2:"texCoords2"};function yO(t,e){const{attributeMap:n=bO}=e||{};return n&&n[t]||t}function vO(t,e){let n;switch(t){case"texCoords":case"texCoord1":case"texCoord2":case"texCoord3":n="uvs";break;case"vertices":case"positions":case"normals":case"pickingColors":n="vectors"}switch(n){case"vectors":e.size=e.size||3;break;case"uvs":e.size=e.size||2}Rx(Number.isFinite(e.size),`attribute ${t} needs size`)}const _O=()=>{},wO={};class xO{constructor(t,e={}){const{id:n=Fx("model")}=e;Rx(jw(t)),this.id=n,this.gl=t,this.id=e.id||Fx("Model"),this.lastLogTime=0,this.animated=!1,this.initialize(e)}initialize(t){this.props={},this.programManager=t.programManager||sO.getDefaultProgramManager(this.gl),this._programManagerState=-1,this._managedProgram=!1;const{program:e=null,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this.program=null,this.vertexArray=null,this._programDirty=!0,this.userData={},this.needsRedraw=!0,this._attributes={},this.attributes={},this.uniforms={},this.pickable=!0,this._checkProgram(),this.setUniforms(Object.assign({},this.getModuleUniforms(t.moduleSettings))),this.drawMode=void 0!==t.drawMode?t.drawMode:4,this.vertexCount=t.vertexCount||0,this.geometryBuffers={},this.isInstanced=t.isInstanced||t.instanced||t.instanceCount>0,this._setModelProps(t),this.geometry={},Rx(void 0!==this.drawMode&&Number.isFinite(this.vertexCount),"Model needs drawMode and vertexCount")}setProps(t){this._setModelProps(t)}delete(){for(const t in this._attributes)this._attributes[t]!==this.attributes[t]&&this._attributes[t].delete();this._managedProgram&&(this.programManager.release(this.program),this._managedProgram=!1),this.vertexArray.delete(),this._deleteGeometryBuffers()}getDrawMode(){return this.drawMode}getVertexCount(){return this.vertexCount}getInstanceCount(){return this.instanceCount}getAttributes(){return this.attributes}getProgram(){return this.program}setProgram(t){const{program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this._programDirty=!0}getUniforms(){return this.uniforms}setDrawMode(t){return this.drawMode=t,this}setVertexCount(t){return Rx(Number.isFinite(t)),this.vertexCount=t,this}setInstanceCount(t){return Rx(Number.isFinite(t)),this.instanceCount=t,this}setGeometry(t){return this.drawMode=t.drawMode,this.vertexCount=t.getVertexCount(),this._deleteGeometryBuffers(),this.geometryBuffers=function(t,e,n){const i={};let r=e.indices;for(const s in e.attributes){const n=e.attributes[s],o=yO(s,undefined);if("indices"===s)r=n;else if(n.constant)i[o]=n.value;else{const e=n.value,r=wt({},n);delete r.value,i[o]=[new tS(t,e),r],vO(s,r)}}if(r){const e=r.value||r;Rx(e instanceof Uint16Array||e instanceof Uint32Array,'attribute array for "indices" must be of integer type');const n={size:1,isIndexed:void 0===r.isIndexed||r.isIndexed};i.indices=[new tS(t,{data:e,target:34963}),n]}return i}(this.gl,t),this.vertexArray.setAttributes(this.geometryBuffers),this}setAttributes(t={}){if(Vx(t))return this;const e={};for(const n in t){const i=t[n];e[n]=i.getValue?i.getValue():i}return this.vertexArray.setAttributes(e),this}setUniforms(t={}){return Object.assign(this.uniforms,t),this}getModuleUniforms(t){this._checkProgram();const e=this.programManager.getUniforms(this.program);return e?e(t):{}}updateModuleSettings(t){const e=this.getModuleUniforms(t||{});return this.setUniforms(e)}clear(t){return pS(this.program.gl,t),this}draw(t={}){this._checkProgram();const{moduleSettings:e=null,framebuffer:n,uniforms:i={},attributes:r={},transformFeedback:s=this.transformFeedback,parameters:o={},vertexArray:a=this.vertexArray}=t;let l;this.setAttributes(r),this.updateModuleSettings(e),this.setUniforms(i),Nw.priority>=2&&(l=this._logDrawCallStart(2));const c=this.vertexArray.getDrawParams(),{isIndexed:u=c.isIndexed,indexType:h=c.indexType,indexOffset:d=c.indexOffset,vertexArrayInstanced:p=c.isInstanced}=this.props;p&&!this.isInstanced&&Nw.warn("Found instanced attributes on non-instanced model",this.id)();const{isInstanced:f,instanceCount:g}=this,{onBeforeRender:m=_O,onAfterRender:b=_O}=this.props;m(),this.program.setUniforms(this.uniforms);const y=this.program.draw(Object.assign(wO,t,{logPriority:l,uniforms:null,framebuffer:n,parameters:o,drawMode:this.getDrawMode(),vertexCount:this.getVertexCount(),vertexArray:a,transformFeedback:s,isIndexed:u,indexType:h,isInstanced:f,instanceCount:g,offset:u?d:0}));return b(),Nw.priority>=2&&this._logDrawCallEnd(l,a,n),y}transform(t={}){const{discard:e=!0,feedbackBuffers:n,unbindModels:i=[]}=t;let{parameters:r}=t;n&&this._setFeedbackBuffers(n),e&&(r=Object.assign({},r,{35977:e})),i.forEach(t=>t.vertexArray.unbindBuffers());try{this.draw(Object.assign({},t,{parameters:r}))}finally{i.forEach(t=>t.vertexArray.bindBuffers())}return this}render(t={}){return Nw.warn("Model.render() is deprecated. Use Model.setUniforms() and Model.draw()")(),this.setUniforms(t).draw()}_setModelProps(t){Object.assign(this.props,t),"uniforms"in t&&this.setUniforms(t.uniforms),"pickable"in t&&(this.pickable=t.pickable),"instanceCount"in t&&(this.instanceCount=t.instanceCount),"geometry"in t&&this.setGeometry(t.geometry),"attributes"in t&&this.setAttributes(t.attributes),"_feedbackBuffers"in t&&this._setFeedbackBuffers(t._feedbackBuffers)}_checkProgram(){if(!this._programDirty&&this.programManager.stateHash===this._programManagerState)return;let{program:t}=this.programProps;if(t)this._managedProgram=!1;else{const{vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}=this.programProps;t=this.programManager.get({vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}),this.program&&this._managedProgram&&this.programManager.release(this.program),this._programManagerState=this.programManager.stateHash,this._managedProgram=!0}Rx(t instanceof rO,"Model needs a program"),this._programDirty=!1,t!==this.program&&(this.program=t,this.vertexArray?this.vertexArray.setProps({program:this.program,attributes:this.vertexArray.attributes}):this.vertexArray=new uO(this.gl,{program:this.program}),this.setUniforms(Object.assign({},this.getModuleUniforms())))}_deleteGeometryBuffers(){for(const t in this.geometryBuffers){const e=this.geometryBuffers[t][0]||this.geometryBuffers[t];e instanceof tS&&e.delete()}}_setAnimationProps(t){this.animated&&Rx(t,"Model.draw(): animated uniforms but no animationProps")}_setFeedbackBuffers(t={}){if(Vx(t))return this;const{gl:e}=this.program;return this.transformFeedback=this.transformFeedback||new LE(e,{program:this.program}),this.transformFeedback.setBuffers(t),this}_logDrawCallStart(t){const e=t>3?0:1e4;if(!(Date.now()-this.lastLogTime>> DRAWING MODEL ${this.id}`,{collapsed:Nw.level<=2})(),t}_logDrawCallEnd(t,e,n,i){if(void 0===t)return;const r=function({vertexArray:t,header:e="Attributes"}){if(!t.configuration)return{};const n={};t.elements&&(n.ELEMENT_ARRAY_BUFFER=dO(t,t.elements,null,e));const i=t.values;for(const r in i){const s=t._getAttributeInfo(r);if(s){let o=`${r}: ${s.name}`;const a=t.accessors[s.location];a&&(o=`${r}: ${pO(s.name,a)}`),n[o]=dO(t,i[r],a,e)}}return n}({vertexArray:e,header:`${this.id} attributes`,attributes:this._attributes}),{table:s,unusedTable:o,unusedCount:a}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n)}),{table:l,count:c}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n),undefinedOnly:!0});c>0&&Nw.log("MISSING UNIFORMS",Object.keys(l))(),a>0&&Nw.log("UNUSED UNIFORMS",Object.keys(o))();const u=function(t){const e={},n=`Accessors for ${t.id}`;for(const i of t.attributeInfos)i&&(e[`in ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});for(const i of t.varyingInfos)i&&(e[`out ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});return e}(this.vertexArray.configuration);Nw.table(t,r)(),Nw.table(t,s)(),Nw.table(t+1,u)(),i&&i.log({logLevel:2,message:`Rendered to ${i.id}`}),Nw.groupEnd(2,`>>> DRAWING MODEL ${this.id}`)()}}class SO{static isSupported(t){return Fw(t)}constructor(t,e={}){this.gl=t,this.model=null,this.elementCount=0,this.bufferTransform=null,this.textureTransform=null,this.elementIDBuffer=null,this._initialize(e),Object.seal(this)}delete(){const{model:t,bufferTransform:e,textureTransform:n}=this;t&&t.delete(),e&&e.delete(),n&&n.delete()}run(t={}){const{clearRenderTarget:e=!0}=t,n=this._updateDrawOptions(t);e&&n.framebuffer&&n.framebuffer.clear({color:!0}),this.model.transform(n)}swap(){let t=!1;const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)t=t||n.swap();Rx(t,"Nothing to swap")}getBuffer(t=null){return this.bufferTransform&&this.bufferTransform.getBuffer(t)}getData(t={}){const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e){const e=n.getData(t);if(e)return e}return null}getFramebuffer(){return this.textureTransform&&this.textureTransform.getFramebuffer()}update(t={}){"elementCount"in t&&this.model.setVertexCount(t.elementCount);const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)n.update(t)}_initialize(t={}){const{gl:e}=this;this._buildResourceTransforms(e,t),t=this._updateModelProps(t),this.model=new xO(e,Object.assign({},t,{fs:t.fs||NE({version:FE(t.vs)}),id:t.id||"transform-model",drawMode:t.drawMode||0,vertexCount:t.elementCount})),this.bufferTransform&&this.bufferTransform.setupResources({model:this.model})}_updateModelProps(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=i.updateModelProps(e);return e}_buildResourceTransforms(t,e){(function(t){return!(Vx(t.feedbackBuffers)&&Vx(t.feedbackMap)&&!(t.varyings&&t.varyings.length>0))})(e)&&(this.bufferTransform=new jE(t,e)),function(t){return!(Vx(t._sourceTextures)&&!t._targetTexture&&!t._targetTextureVarying)}(e)&&(this.textureTransform=new QE(t,e)),Rx(this.bufferTransform||this.textureTransform,"must provide source/feedback buffers or source/target textures")}_updateDrawOptions(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=Object.assign(e,i.getDrawOptions(e));return e}}function EO(){}const CO={onStart:EO,onUpdate:EO,onInterrupt:EO,onEnd:EO};class OO{constructor(t){this._inProgress=!1,this._handle=null,this.timeline=t,this.settings={}}get inProgress(){return this._inProgress}start(t){this.cancel(),this.settings=wt(wt({},CO),t),this._inProgress=!0,this.settings.onStart(this)}end(){this._inProgress&&(this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1,this.settings.onEnd(this))}cancel(){this._inProgress&&(this.settings.onInterrupt(this),this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1)}update(){if(!this._inProgress)return!1;if(null===this._handle){const{timeline:t,settings:e}=this;this._handle=t.addChannel({delay:t.getTime(),duration:e.duration})}return this.time=this.timeline.getTime(this._handle),this._onUpdate(),this.settings.onUpdate(this),this.timeline.isFinished(this._handle)&&this.end(),!0}_onUpdate(){}}const TO={interpolation:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="interpolation",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,e.settings),this.currentStartIndices=e.startIndices,this.currentLength=0,this.transform=function(t,e){const n=EE(e.size);return new SO(t,{vs:"\n#define SHADER_NAME interpolation-transition-vertex-shader\n\nuniform float time;\nattribute ATTRIBUTE_TYPE aFrom;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vCurrent;\n\nvoid main(void) {\n vCurrent = mix(aFrom, aTo, time);\n gl_Position = vec4(0.0);\n}\n",defines:{ATTRIBUTE_TYPE:n},varyings:["vCurrent"]})}(t,e);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){if(t.duration<=0)return void this.transition.cancel();const{buffers:n,attribute:i}=this;CE(n);const r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aFrom:n[0],aTo:SE(0,i)},feedbackBuffers:{vCurrent:n[1]}})}update(){const t=this.transition.update();if(t){const{time:t,settings:{duration:e,easing:n}}=this.transition,i=n(t/e);this.transform.run({uniforms:{time:i}})}return t}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete()}},spring:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="spring",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,ii(wt({},e.settings),{normalized:!1})),this.currentStartIndices=e.startIndices,this.currentLength=0,this.texture=function(t){return new lS(t,{data:new Uint8Array(4),format:6408,type:5121,border:0,mipmaps:!1,dataFormat:6408,width:1,height:1})}(t),this.framebuffer=function(t,e){return new SS(t,{id:"spring-transition-is-transitioning-framebuffer",width:1,height:1,attachments:{36064:e}})}(t,this.texture),this.transform=function(t,e,n){const i=EE(e.size);return new SO(t,{framebuffer:n,vs:"\n#define SHADER_NAME spring-transition-vertex-shader\n\n#define EPSILON 0.00001\n\nuniform float stiffness;\nuniform float damping;\nattribute ATTRIBUTE_TYPE aPrev;\nattribute ATTRIBUTE_TYPE aCur;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vNext;\nvarying float vIsTransitioningFlag;\n\nATTRIBUTE_TYPE getNextValue(ATTRIBUTE_TYPE cur, ATTRIBUTE_TYPE prev, ATTRIBUTE_TYPE dest) {\n ATTRIBUTE_TYPE velocity = cur - prev;\n ATTRIBUTE_TYPE delta = dest - cur;\n ATTRIBUTE_TYPE spring = delta * stiffness;\n ATTRIBUTE_TYPE damper = velocity * -1.0 * damping;\n return spring + damper + velocity + cur;\n}\n\nvoid main(void) {\n bool isTransitioning = length(aCur - aPrev) > EPSILON || length(aTo - aCur) > EPSILON;\n vIsTransitioningFlag = isTransitioning ? 1.0 : 0.0;\n\n vNext = getNextValue(aCur, aPrev, aTo);\n gl_Position = vec4(0, 0, 0, 1);\n gl_PointSize = 100.0;\n}\n",fs:"\n#define SHADER_NAME spring-transition-is-transitioning-fragment-shader\n\nvarying float vIsTransitioningFlag;\n\nvoid main(void) {\n if (vIsTransitioningFlag == 0.0) {\n discard;\n }\n gl_FragColor = vec4(1.0);\n}",defines:{ATTRIBUTE_TYPE:i},varyings:["vNext"]})}(t,e,this.framebuffer);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){const{buffers:n,attribute:i}=this,r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aTo:SE(0,i)}})}update(){const{buffers:t,transform:e,framebuffer:n,transition:i}=this;return!!i.update()&&(e.update({sourceBuffers:{aPrev:t[0],aCur:t[1]},feedbackBuffers:{vNext:t[2]}}),e.run({framebuffer:n,discard:!1,clearRenderTarget:!0,uniforms:{stiffness:i.settings.stiffness,damping:i.settings.damping},parameters:{depthTest:!1,blend:!0,viewport:[0,0,1,1],blendFunc:[1,1],blendEquation:[32776,32776]}}),CE(t),this.attributeInTransition.update({buffer:t[1],value:this.attribute.value}),_S(n)[0]>0||i.end(),!0)}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete();this.texture.delete(),this.texture=null,this.framebuffer.delete(),this.framebuffer=null}}};class kO{constructor(t,{id:e,timeline:n}){this.id=e,this.gl=t,this.timeline=n,this.transitions={},this.needsRedraw=!1,this.numInstances=1,this.isSupported=SO.isSupported(t)}finalize(){for(const t in this.transitions)this._removeTransition(t)}update({attributes:t,transitions:e,numInstances:n}){this.numInstances=n||1;for(const i in t){const n=t[i],r=n.getTransitionSetting(e);!r||this._updateAttribute(i,n,r)}for(const i in this.transitions){const n=t[i];(!n||!n.getTransitionSetting(e))&&this._removeTransition(i)}}hasAttribute(t){const e=this.transitions[t];return e&&e.inProgress}getAttributes(){const t={};for(const e in this.transitions){const n=this.transitions[e];n.inProgress&&(t[e]=n.attributeInTransition)}return t}run(){if(!this.isSupported||0===this.numInstances)return!1;for(const e in this.transitions)this.transitions[e].update()&&(this.needsRedraw=!0);const t=this.needsRedraw;return this.needsRedraw=!1,t}_removeTransition(t){this.transitions[t].cancel(),delete this.transitions[t]}_updateAttribute(t,e,n){const i=this.transitions[t];let r=!i||i.type!==n.type;if(r){if(!this.isSupported)return void Mw.warn("WebGL2 not supported by this browser. Transition for ".concat(t," is disabled."))();i&&this._removeTransition(t);const s=TO[n.type];s?this.transitions[t]=new s({attribute:e,timeline:this.timeline,gl:this.gl}):(Mw.error("unsupported transition type '".concat(n.type,"'"))(),r=!1)}(r||e.needsRedraw())&&(this.needsRedraw=!0,this.transitions[t].start(n,this.numInstances))}}const AO="attributeManager.invalidate";class PO{constructor(t,{id:e="attribute-manager",stats:n,timeline:i}={}){this.id=e,this.gl=t,this.attributes={},this.updateTriggers={},this.accessors={},this.needsRedraw=!0,this.userData={},this.stats=n,this.attributeTransitionManager=new kO(t,{id:"".concat(e,"-transitions"),timeline:i}),Object.seal(this)}finalize(){for(const t in this.attributes)this.attributes[t].delete();this.attributeTransitionManager.finalize()}getNeedsRedraw(t={clearRedrawFlags:!1}){const e=this.needsRedraw;return this.needsRedraw=this.needsRedraw&&!t.clearRedrawFlags,e&&this.id}setNeedsRedraw(t=!0){return this.needsRedraw=!0,this}add(t,e){this._add(t,e)}addInstanced(t,e){this._add(t,e,{instanced:1})}remove(t){for(let e=0;e{t[n]||(t[n]=[]),t[n].push(e)});this.updateTriggers=t}_invalidateTrigger(t,e){const{attributes:n,updateTriggers:i}=this,r=i[t];return r&&r.forEach(t=>{const i=n[t];i&&i.setNeedsUpdate(i.id,e)}),r}_updateAttribute(t){const{attribute:e,numInstances:n}=t;PE("attribute.updateStart",e),e.allocate(n)&&PE("attribute.allocate",e,n),e.updateBuffer(t)&&(this.needsRedraw=!0,PE("attribute.updateEnd",e,n))}}function MO(t,e,n,i,r){const s=e-t;return(n-e)*r+-s*i+s+e}function IO(t,e){if(Array.isArray(t)){let n=0;for(let i=0;i0}add(t,e,n,i){const{transitions:r}=this;if(r.has(t)){const n=r.get(t),{value:i=n.settings.fromValue}=n;e=i,this.remove(t)}if(!(i=xE(i)))return;const s=DO[i.type];if(!s)return void Mw.error("unsupported transition type '".concat(i.type,"'"))();const o=new s(this.timeline);o.start(ii(wt({},i),{fromValue:e,toValue:n})),r.set(t,o)}remove(t){const{transitions:e}=this;e.has(t)&&(e.get(t).cancel(),e.delete(t))}update(){const t={};for(const[e,n]of this.transitions)n.update(),t[e]=n.value,n.inProgress||this.remove(e);return t}clear(){for(const t of this.transitions.keys())this.remove(t)}}const NO={COMPONENT:Symbol.for("component"),ASYNC_DEFAULTS:Symbol.for("asyncPropDefaults"),ASYNC_ORIGINAL:Symbol.for("asyncPropOriginal"),ASYNC_RESOLVED:Symbol.for("asyncPropResolved")},{COMPONENT:LO}=NO;function jO(t,e){if(!t.transitions)return null;const n={},i=UO(t);for(const r in t.transitions){const s=i[r],o=s&&s.type;("number"===o||"color"===o||"array"===o)&&BO(t[r],e[r],s)&&(n[r]=!0)}return n}function FO({newProps:t,oldProps:e,ignoreProps:n={},propTypes:i={},triggerName:r="props"}={}){if(e===t)return null;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return"".concat(r," changed shallowly");for(const s of Object.keys(t))if(!(s in n)){if(!(s in e))return"".concat(r,".").concat(s," added");const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}for(const s of Object.keys(e))if(!(s in n)){if(!(s in t))return"".concat(r,".").concat(s," dropped");if(!Object.hasOwnProperty.call(t,s)){const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}}return null}function BO(t,e,n){let i=n&&n.equal;return i&&!i(t,e,n)||!i&&(i=t&&e&&t.equals,i&&!i.call(t,e))?"changed deeply":i||e===t?null:"changed shallowly"}function VO(t,e){if(null===e)return"oldProps is null, initial diff";const n=e.extensions,{extensions:i}=t;if(i===n)return!1;if(i.length!==n.length)return!0;for(let r=0;r{for(const r in i)if(!HO(i[r],n[r])){e=t(i),n=i;break}return e}}function GO(t,e){if(!e)return t;const n=wt(wt({},t),e);if("defines"in e&&(n.defines=wt(wt({},t.defines),e.defines)),"modules"in e&&(n.modules=(t.modules||[]).concat(e.modules),e.modules.some(t=>"project64"===t.name))){const t=n.modules.findIndex(t=>"project32"===t.name);t>=0&&n.modules.splice(t,1)}if("inject"in e)if(t.inject){const i=wt({},t.inject);for(const t in e.inject)i[t]=(i[t]||"")+e.inject[t];n.inject=i}else n.inject=e.inject;return n}function WO(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8],h=e[9],d=e[10],p=e[11],f=e[12],g=e[13],m=e[14],b=e[15],y=n*a-i*o,v=n*l-r*o,_=n*c-s*o,w=i*l-r*a,x=i*c-s*a,S=r*c-s*l,E=u*g-h*f,C=u*m-d*f,O=u*b-p*f,T=h*m-d*g,k=h*b-p*g,A=d*b-p*m,P=y*A-v*k+_*T+w*O-x*C+S*E;return P?(t[0]=(a*A-l*k+c*T)*(P=1/P),t[1]=(r*k-i*A-s*T)*P,t[2]=(g*S-m*x+b*w)*P,t[3]=(d*x-h*S-p*w)*P,t[4]=(l*O-o*A-c*C)*P,t[5]=(n*A-r*O+s*C)*P,t[6]=(m*_-f*S-b*v)*P,t[7]=(u*S-d*_+p*v)*P,t[8]=(o*k-a*O+c*E)*P,t[9]=(i*O-n*k-s*E)*P,t[10]=(f*x-g*_+b*y)*P,t[11]=(h*_-u*x-p*y)*P,t[12]=(a*C-o*T-l*E)*P,t[13]=(n*T-i*C+r*E)*P,t[14]=(g*v-f*w-m*y)*P,t[15]=(u*w-h*v+d*y)*P,t):null}function qO(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],g=e[12],m=e[13],b=e[14],y=e[15],v=n[0],_=n[1],w=n[2],x=n[3];return t[0]=v*i+_*a+w*h+x*g,t[1]=v*r+_*l+w*d+x*m,t[2]=v*s+_*c+w*p+x*b,t[3]=v*o+_*u+w*f+x*y,t[4]=(v=n[4])*i+(_=n[5])*a+(w=n[6])*h+(x=n[7])*g,t[5]=v*r+_*l+w*d+x*m,t[6]=v*s+_*c+w*p+x*b,t[7]=v*o+_*u+w*f+x*y,t[8]=(v=n[8])*i+(_=n[9])*a+(w=n[10])*h+(x=n[11])*g,t[9]=v*r+_*l+w*d+x*m,t[10]=v*s+_*c+w*p+x*b,t[11]=v*o+_*u+w*f+x*y,t[12]=(v=n[12])*i+(_=n[13])*a+(w=n[14])*h+(x=n[15])*g,t[13]=v*r+_*l+w*d+x*m,t[14]=v*s+_*c+w*p+x*b,t[15]=v*o+_*u+w*f+x*y,t}function XO(t,e,n){var i,r,s,o,a,l,c,u,h,d,p,f,g=n[0],m=n[1],b=n[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*b+e[12],t[13]=e[1]*g+e[5]*m+e[9]*b+e[13],t[14]=e[2]*g+e[6]*m+e[10]*b+e[14],t[15]=e[3]*g+e[7]*m+e[11]*b+e[15]):(r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],t[0]=i=e[0],t[1]=r,t[2]=s,t[3]=o,t[4]=a,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=d,t[10]=p,t[11]=f,t[12]=i*g+a*m+h*b+e[12],t[13]=r*g+l*m+d*b+e[13],t[14]=s*g+c*m+p*b+e[14],t[15]=o*g+u*m+f*b+e[15]),t}function YO(t,e,n){var i=n[0],r=n[1],s=n[2];return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t[3]=e[3]*i,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function KO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[4],o=e[5],a=e[6],l=e[7],c=e[8],u=e[9],h=e[10],d=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=s*r+c*i,t[5]=o*r+u*i,t[6]=a*r+h*i,t[7]=l*r+d*i,t[8]=c*r-s*i,t[9]=u*r-o*i,t[10]=h*r-a*i,t[11]=d*r-l*i,t}function QO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[4],u=e[5],h=e[6],d=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r+c*i,t[1]=o*r+u*i,t[2]=a*r+h*i,t[3]=l*r+d*i,t[4]=c*r-s*i,t[5]=u*r-o*i,t[6]=h*r-a*i,t[7]=d*r-l*i,t}function ZO(t,e,n,i,r){var s,o=1/Math.tan(e/2);return t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=r&&r!==1/0?(t[10]=(r+i)*(s=1/(i-r)),t[14]=2*r*i*s):(t[10]=-1,t[14]=-2*i),t}function JO(t,e){var n=t[0],i=t[1],r=t[2],s=t[3],o=t[4],a=t[5],l=t[6],c=t[7],u=t[8],h=t[9],d=t[10],p=t[11],f=t[12],g=t[13],m=t[14],b=t[15],y=e[0],v=e[1],_=e[2],w=e[3],x=e[4],S=e[5],E=e[6],C=e[7],O=e[8],T=e[9],k=e[10],A=e[11],P=e[12],M=e[13],I=e[14],D=e[15];return Math.abs(n-y)<=WS*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-v)<=WS*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(r-_)<=WS*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(s-w)<=WS*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(o-x)<=WS*Math.max(1,Math.abs(o),Math.abs(x))&&Math.abs(a-S)<=WS*Math.max(1,Math.abs(a),Math.abs(S))&&Math.abs(l-E)<=WS*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-C)<=WS*Math.max(1,Math.abs(c),Math.abs(C))&&Math.abs(u-O)<=WS*Math.max(1,Math.abs(u),Math.abs(O))&&Math.abs(h-T)<=WS*Math.max(1,Math.abs(h),Math.abs(T))&&Math.abs(d-k)<=WS*Math.max(1,Math.abs(d),Math.abs(k))&&Math.abs(p-A)<=WS*Math.max(1,Math.abs(p),Math.abs(A))&&Math.abs(f-P)<=WS*Math.max(1,Math.abs(f),Math.abs(P))&&Math.abs(g-M)<=WS*Math.max(1,Math.abs(g),Math.abs(M))&&Math.abs(m-I)<=WS*Math.max(1,Math.abs(m),Math.abs(I))&&Math.abs(b-D)<=WS*Math.max(1,Math.abs(b),Math.abs(D))}function tT(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function eT(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3];return t[0]=n[0]*i+n[4]*r+n[8]*s+n[12]*o,t[1]=n[1]*i+n[5]*r+n[9]*s+n[13]*o,t[2]=n[2]*i+n[6]*r+n[10]*s+n[14]*o,t[3]=n[3]*i+n[7]*r+n[11]*s+n[15]*o,t}!function(){var t=new qS(4);qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();const nT=[0,0,0,0],iT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],rT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],sT=[0,0,0],oT=[0,0,0],aT=$O(function({viewport:t,devicePixelRatio:e,coordinateSystem:n,coordinateOrigin:i}){const{projectionCenter:r,viewProjectionMatrix:s,originCommon:o,cameraPosCommon:a,shaderCoordinateOrigin:l,geospatialOrigin:c}=function(t,e,n){const{viewMatrixUncentered:i,projectionMatrix:r}=t;let{viewMatrix:s,viewProjectionMatrix:o}=t,a=nT,l=nT,c=t.cameraPosition;const{geospatialOrigin:u,shaderCoordinateOrigin:h,offsetMode:d}=lT(t,e,n);return d&&(l=t.projectPosition(u||h),c=[c[0]-l[0],c[1]-l[1],c[2]-l[2]],l[3]=1,a=eT([],l,o),s=i||s,o=qO([],r,s),o=qO([],o,iT)),{viewMatrix:s,viewProjectionMatrix:o,projectionCenter:a,originCommon:l,cameraPosCommon:c,shaderCoordinateOrigin:h,geospatialOrigin:u}}(t,n,i),u=t.getDistanceScales(),h=[t.width*e,t.height*e],d=t.projectionMatrix.transform([0,0,-t.focalDistance,1])[3]||1,p={project_uCoordinateSystem:n,project_uProjectionMode:t.projectionMode,project_uCoordinateOrigin:l,project_uCommonOrigin:o.slice(0,3),project_uCenter:r,project_uViewportSize:h,project_uDevicePixelRatio:e,project_uFocalDistance:d,project_uCommonUnitsPerMeter:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit2:sT,project_uScale:t.scale,project_uViewProjectionMatrix:s,project_uCameraPosition:a};if(c){const e=t.getDistanceScales(c);switch(n){case Iw.METER_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerMeter,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerMeter2;break;case Iw.LNGLAT:case Iw.LNGLAT_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerDegree,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerDegree2;break;case Iw.CARTESIAN:p.project_uCommonUnitsPerWorldUnit=[1,1,e.unitsPerMeter[2]],p.project_uCommonUnitsPerWorldUnit2=[0,0,e.unitsPerMeter2[2]]}}return p});function lT(t,e,n=oT){let i,r=n,s=!0;switch(i=e===Iw.LNGLAT_OFFSETS||e===Iw.METER_OFFSETS?n:t.isGeospatial?[Math.fround(t.longitude),Math.fround(t.latitude),0]:null,t.projectionMode){case Dw.WEB_MERCATOR:(e===Iw.LNGLAT||e===Iw.CARTESIAN)&&(s=!1);break;case Dw.WEB_MERCATOR_AUTO_OFFSET:e===Iw.LNGLAT?r=i:e===Iw.CARTESIAN&&(r=[Math.fround(t.center[0]),Math.fround(t.center[1]),0],i=t.unprojectPosition(r),r[0]-=n[0],r[1]-=n[1],r[2]-=n[2]);break;case Dw.IDENTITY:r=t.position.map(Math.fround);break;case Dw.GLOBE:s=!1,i=null;break;default:s=!1}return r[2]=r[2]||0,{geospatialOrigin:i,shaderCoordinateOrigin:r,offsetMode:s}}class cT extends VS{get ELEMENTS(){return BS(!1),0}get RANK(){return BS(!1),0}toString(){let t="[";if(MS.printRowMajor){t+="row-major:";for(let e=0;e2*Math.PI)throw Error("radians");const s=n*Math.tan(t/2),o=s*e;return(new bT).ortho({left:-o,right:o,bottom:-s,top:s,near:i,far:r})}perspective({fovy:t,fov:e=45*Math.PI/180,aspect:n=1,near:i=.1,far:r=500}={}){if((t=t||e)>2*Math.PI)throw Error("radians");return ZO(this,t,n,i,r),this.check()}determinant(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],o=t[5],a=t[6],l=t[7],c=t[8],u=t[9],h=t[10],d=t[11],p=t[12],f=t[13],g=t[14],m=t[15];return(e*o-n*s)*(h*m-d*g)-(e*a-i*s)*(u*m-d*f)+(e*l-r*s)*(u*g-h*f)+(n*a-i*o)*(c*m-d*p)-(n*l-r*o)*(c*g-h*p)+(i*l-r*a)*(c*f-u*p)}(this)}getScale(t=[-0,-0,-0]){return t[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),t[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),t[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),t}getTranslation(t=[-0,-0,-0]){return t[0]=this[12],t[1]=this[13],t[2]=this[14],t}getRotation(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=0,t[4]=this[4]*i,t[5]=this[5]*r,t[6]=this[6]*s,t[7]=0,t[8]=this[8]*i,t[9]=this[9]*r,t[10]=this[10]*s,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}getRotationMatrix3(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=this[4]*i,t[4]=this[5]*r,t[5]=this[6]*s,t[6]=this[8]*i,t[7]=this[9]*r,t[8]=this[10]*s,t}transpose(){return function(t,e){if(t===e){var n=e[1],i=e[2],r=e[3],s=e[6],o=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=i,t[9]=s,t[11]=e[14],t[12]=r,t[13]=o,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15]}(this,this),this.check()}invert(){return WO(this,this),this.check()}multiplyLeft(t){return qO(this,t,this),this.check()}multiplyRight(t){return qO(this,this,t),this.check()}rotateX(t){return KO(this,this,t),this.check()}rotateY(t){return function(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[8],u=e[9],h=e[10],d=e[11];e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r-c*i,t[1]=o*r-u*i,t[2]=a*r-h*i,t[3]=l*r-d*i,t[8]=s*i+c*r,t[9]=o*i+u*r,t[10]=a*i+h*r,t[11]=l*i+d*r}(this,this,t),this.check()}rotateZ(t){return QO(this,this,t),this.check()}rotateXYZ([t,e,n]){return this.rotateX(t).rotateY(e).rotateZ(n)}rotateAxis(t,e){return function(t,e,n,i){var r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w,x,S,E,C,O,T,k=i[0],A=i[1],P=i[2],M=Math.hypot(k,A,P);M=-90&&e<=90,"invalid latitude"),[512*(t*ET+xT)/(2*xT),512*(xT+Math.log(Math.tan(ST+e*ET*.5)))/(2*xT)]}function kT([t,e]){const n=t/512*(2*xT)-xT,i=2*(Math.atan(Math.exp(e/512*(2*xT)-xT))-ST);return[n*CT,i*CT]}function AT({latitude:t,longitude:e,highPrecision:n=!1}){wT(Number.isFinite(t)&&Number.isFinite(e));const i={},r=Math.cos(t*ET),s=512/360,o=s/r,a=512/OT/r;if(i.unitsPerMeter=[a,a,a],i.metersPerUnit=[1/a,1/a,1/a],i.unitsPerDegree=[s,o,a],i.degreesPerUnit=[1/s,1/o,1/a],n){const e=ET*Math.tan(t*ET)/r,n=512/OT*e,l=n/o*a;i.unitsPerDegree2=[0,s*e/2,n],i.unitsPerMeter2=[l,0,l]}return i}function PT(t,e){const[n,i,r]=t,[s,o,a]=e,{unitsPerMeter:l,unitsPerMeter2:c}=AT({longitude:n,latitude:i,highPrecision:!0}),u=TT(t);u[0]+=s*(l[0]+c[0]*o),u[1]+=o*(l[1]+c[1]*o);const h=kT(u),d=(r||0)+(a||0);return Number.isFinite(r)||Number.isFinite(a)?[h[0],h[1],d]:h}function MT({height:t,pitch:e,bearing:n,altitude:i,scale:r,center:s=null}){const o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return XO(o,o,[0,0,-i]),KO(o,o,-e*ET),QO(o,o,n*ET),YO(o,o,[r/=t,r,r]),s&&XO(o,o,function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}([],s)),o}function IT({width:t,height:e,fovy:n=DT(1.5),altitude:i,pitch:r=0,nearZMultiplier:s=1,farZMultiplier:o=1}){void 0!==i&&(n=DT(i));const a=.5*n*ET,l=RT(n),c=r*ET,u=Math.sin(a)*l/Math.sin(Math.min(Math.max(Math.PI/2-c-a,.01),Math.PI-.01));return{fov:2*a,aspect:t/e,focalDistance:l,near:s,far:(Math.sin(c)*u+l)*o}}function DT(t){return 2*Math.atan(.5/t)*CT}function RT(t){return.5/Math.tan(.5*t*ET)}function NT(t,e){const[n,i,r=0]=t;return wT(Number.isFinite(n)&&Number.isFinite(i)&&Number.isFinite(r)),yT(e,[n,i,r,1])}function LT(t,e,n=0){const[i,r,s]=t;if(wT(Number.isFinite(i)&&Number.isFinite(r),"invalid pixel coordinate"),Number.isFinite(s))return yT(e,[i,r,s,1]);const o=yT(e,[i,r,0,1]),a=yT(e,[i,r,1,1]),l=o[2],c=a[2];return dT([],o,a,l===c?0:((n||0)-l)/(c-l))}function jT({width:t,height:e,bounds:n,minExtent:i=0,maxZoom:r=24,padding:s=0,offset:o=[0,0]}){const[[a,l],[c,u]]=n;Number.isFinite(s)?s={top:s,bottom:s,left:s,right:s}:wT(Number.isFinite(s.top)&&Number.isFinite(s.bottom)&&Number.isFinite(s.left)&&Number.isFinite(s.right));const h=new zT({width:t,height:e,longitude:0,latitude:0,zoom:0}),d=h.project([a,u]),p=h.project([c,l]),f=[Math.max(Math.abs(p[0]-d[0]),i),Math.max(Math.abs(p[1]-d[1]),i)],g=[t-s.left-s.right-2*Math.abs(o[0]),e-s.top-s.bottom-2*Math.abs(o[1])];wT(g[0]>0&&g[1]>0);const m=g[0]/f[0],b=g[1]/f[1],y=h.unproject([(p[0]+d[0])/2+(s.right-s.left)/2/m,(p[1]+d[1])/2+(s.bottom-s.top)/2/b]),v=Math.min(r,h.zoom+_T(Math.abs(Math.min(m,b))));return wT(Number.isFinite(v)),{longitude:y[0],latitude:y[1],zoom:v}}const FT=Math.PI/180;function BT(t,e=0){const{width:n,height:i,unproject:r}=t,s={targetZ:e},o=r([0,i],s),a=r([n,i],s);let l,c;return(t.fovy?.5*t.fovy*FT:Math.atan(.5/t.altitude))>(90-t.pitch)*FT-.01?(l=VT(t,0,e),c=VT(t,n,e)):(l=r([0,0],s),c=r([n,0],s)),[o,a,c,l]}function VT(t,e,n){const{pixelUnprojectionMatrix:i}=t,r=yT(i,[e,0,1,1]),s=yT(i,[e,t.height,1,1]),o=kT(dT([],r,s,(n*t.distanceScales.unitsPerMeter[2]-r[2])/(s[2]-r[2])));return o[2]=n,o}class zT{constructor({width:t,height:e,latitude:n=0,longitude:i=0,zoom:r=0,pitch:s=0,bearing:o=0,altitude:a=null,fovy:l=null,position:c=null,nearZMultiplier:u=.02,farZMultiplier:h=1.01}={width:1,height:1}){t=t||1,e=e||1,null===l&&null===a?l=DT(a=1.5):null===l?l=DT(a):null===a&&(a=RT(l));const d=function(t){return Math.pow(2,t)}(r);a=Math.max(.75,a);const p=AT({longitude:i,latitude:n}),f=TT([i,n]);f[2]=0,c&&function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2]}(f,f,function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t}([],c,p.unitsPerMeter)),this.projectionMatrix=function({width:t,height:e,pitch:n,altitude:i,fovy:r,nearZMultiplier:s,farZMultiplier:o}){const{fov:a,aspect:l,near:c,far:u}=IT({width:t,height:e,altitude:i,fovy:r,pitch:n,nearZMultiplier:s,farZMultiplier:o});return ZO([],a,l,c,u)}({width:t,height:e,pitch:s,fovy:l,nearZMultiplier:u,farZMultiplier:h}),this.viewMatrix=MT({height:e,scale:d,center:f,pitch:s,bearing:o,altitude:a}),this.width=t,this.height=e,this.scale=d,this.latitude=n,this.longitude=i,this.zoom=r,this.pitch=s,this.bearing=o,this.altitude=a,this.fovy=l,this.center=f,this.meterOffset=c||[0,0,0],this.distanceScales=p,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}_initMatrices(){const{width:t,height:e,projectionMatrix:n,viewMatrix:i}=this,r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];qO(r,r,n),qO(r,r,i),this.viewProjectionMatrix=r;const s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];YO(s,s,[t/2,-e/2,1]),XO(s,s,[1,-1,0]),qO(s,s,r);const o=WO([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],s);if(!o)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=s,this.pixelUnprojectionMatrix=o}equals(t){return t instanceof zT&&t.width===this.width&&t.height===this.height&&JO(t.projectionMatrix,this.projectionMatrix)&&JO(t.viewMatrix,this.viewMatrix)}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=TT(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=kT(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return TT(t)}unprojectFlat(t){return kT(t)}getMapCenterByLngLatPosition({lngLat:t,pos:e}){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],TT(t),hT([],n));return kT(uT([],this.center,i))}getLocationAtPoint({lngLat:t,pos:e}){return this.getMapCenterByLngLatPosition({lngLat:t,pos:e})}fitBounds(t,e={}){const{width:n,height:i}=this,{longitude:r,latitude:s,zoom:o}=jT(Object.assign({width:n,height:i,bounds:t},e));return new zT({width:n,height:i,longitude:r,latitude:s,zoom:o})}getBounds(t){const e=this.getBoundingRegion(t),n=Math.min(...e.map(t=>t[0])),i=Math.max(...e.map(t=>t[0]));return[[n,Math.min(...e.map(t=>t[1]))],[i,Math.max(...e.map(t=>t[1]))]]}getBoundingRegion(t={}){return BT(this,t.z||0)}}const UT=Math.PI/180,HT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],$T=[0,0,0],GT={unitsPerMeter:[1,1,1],metersPerUnit:[1,1,1]};let WT=(()=>{class t{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r=1,height:s=1}=t;this.id=e||this.constructor.displayName||"viewport",this.x=n,this.y=i,this.width=r||1,this.height=s||1,this._frustumPlanes={},this._initViewMatrix(t),this._initProjectionMatrix(t),this._initPixelMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),this.projectFlat=this.projectFlat.bind(this),this.unprojectFlat=this.unprojectFlat.bind(this)}get metersPerPixel(){return this.distanceScales.metersPerUnit[2]/this.scale}get projectionMode(){return this.isGeospatial?this.zoom<12?Dw.WEB_MERCATOR:Dw.WEB_MERCATOR_AUTO_OFFSET:Dw.IDENTITY}equals(e){return e instanceof t&&(this===e||e.width===this.width&&e.height===this.height&&e.scale===this.scale&&FS(e.projectionMatrix,this.projectionMatrix)&&FS(e.viewMatrix,this.viewMatrix))}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=this.projectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=this.unprojectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return this.isGeospatial?TT(t):t}unprojectFlat(t){return this.isGeospatial?kT(t):t}getBounds(t={}){const e={targetZ:t.z||0},n=this.unproject([0,0],e),i=this.unproject([this.width,0],e),r=this.unproject([0,this.height],e),s=this.unproject([this.width,this.height],e);return[Math.min(n[0],i[0],r[0],s[0]),Math.min(n[1],i[1],r[1],s[1]),Math.max(n[0],i[0],r[0],s[0]),Math.max(n[1],i[1],r[1],s[1])]}getDistanceScales(t=null){return t?AT({longitude:t[0],latitude:t[1],highPrecision:!0}):this.distanceScales}containsPixel({x:t,y:e,width:n=1,height:i=1}){return t{class t extends WT{constructor(t={}){const{latitude:e=0,longitude:n=0,zoom:i=11,pitch:r=0,bearing:s=0,nearZMultiplier:o=.1,farZMultiplier:a=1.01,orthographic:l=!1,repeat:c=!1,worldOffset:u=0}=t;let{width:h,height:d,altitude:p=1.5}=t;const f=Math.pow(2,i);h=h||1,d=d||1,p=Math.max(.75,p);const{fov:g,aspect:m,focalDistance:b,near:y,far:v}=IT({width:h,height:d,pitch:r,altitude:p,nearZMultiplier:o,farZMultiplier:a});let _=MT({height:d,pitch:r,bearing:s,scale:f,altitude:p});u&&(_=(new bT).translate([512*u,0,0]).multiplyLeft(_)),super(ii(wt({},t),{width:h,height:d,viewMatrix:_,longitude:n,latitude:e,zoom:i,orthographic:l,fovyRadians:g,aspect:m,focalDistance:b,near:y,far:v})),this.latitude=e,this.longitude=n,this.zoom=i,this.pitch=r,this.bearing=s,this.altitude=p,this.orthographic=l,this._subViewports=c?[]:null,Object.freeze(this)}get subViewports(){if(this._subViewports&&!this._subViewports.length){const e=this.getBounds(),n=Math.floor((e[0]+180)/360),i=Math.ceil((e[2]-180)/360);for(let r=n;r<=i;r++){const e=r?new t(ii(wt({},this),{worldOffset:r})):this;this._subViewports.push(e)}}return this._subViewports}addMetersToLngLat(t,e){return PT(t,e)}panByPosition(t,e){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],this.projectFlat(t),hT([],n)),r=uT([],this.center,i),[s,o]=this.unprojectFlat(r);return{longitude:s,latitude:o}}getBounds(t={}){const e=BT(this,t.z||0);return[Math.min(e[0][0],e[1][0],e[2][0],e[3][0]),Math.min(e[0][1],e[1][1],e[2][1],e[3][1]),Math.max(e[0][0],e[1][0],e[2][0],e[3][0]),Math.max(e[0][1],e[1][1],e[2][1],e[3][1])]}fitBounds(e,n={}){const{width:i,height:r}=this,{longitude:s,latitude:o,zoom:a}=jT(wt({width:i,height:r,bounds:e},n));return new t({width:i,height:r,longitude:s,latitude:o,zoom:a})}}return t.displayName="WebMercatorViewport",t})();function XT(t,e,n=!1){const i=e.projectPosition(t);if(n&&e instanceof qT){const[n,r,s=0]=t,o=e.getDistanceScales([n,r]);i[2]=s*o.unitsPerMeter[2]}return i}function KT(t,{viewport:e,modelMatrix:n,coordinateSystem:i,coordinateOrigin:r,offsetMode:s}){let[o,a,l=0]=t;switch(n&&([o,a,l]=eT([],[o,a,l,1],n)),i){case Iw.LNGLAT:return XT([o,a,l],e,s);case Iw.LNGLAT_OFFSETS:return XT([o+r[0],a+r[1],l+(r[2]||0)],e,s);case Iw.METER_OFFSETS:return XT(PT(r,[o,a,l]),e,s);case Iw.CARTESIAN:default:return e.isGeospatial?[o+r[0],a+r[1],l+r[2]]:e.projectPosition([o,a,l])}}const QT={10241:9987,10240:9729,10242:33071,10243:33071},ZT={},JT={boolean:{validate:(t,e)=>!0,equal:(t,e,n)=>Boolean(t)===Boolean(e)},number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},color:{validate:(t,e)=>e.optional&&!t||ik(t)&&(3===t.length||4===t.length),equal:(t,e,n)=>tk(t,e)},accessor:{validate(t,e){const n=rk(t);return"function"===n||n===rk(e.value)},equal:(t,e,n)=>"function"==typeof e||tk(t,e)},array:{validate:(t,e)=>e.optional&&!t||ik(t),equal:(t,e,n)=>n.compare?tk(t,e):t===e},function:{validate:(t,e)=>e.optional&&!t||"function"==typeof t,equal:(t,e,n)=>!n.compare||t===e},data:{transform:(t,e,n)=>{const{dataTransform:i}=n?n.props:{};return i&&t?i(t):t}},image:{transform:(t,e,n)=>function(t,e){const n=t.context&&t.context.gl;if(!n||!e)return null;if(e instanceof lS)return e;e.constructor&&"Object"!==e.constructor.name&&(e={data:e});let i=null;e.compressed&&(i={10241:e.data.length>1?9985:9729});const r=new lS(n,ii(wt({},e),{parameters:wt(wt(wt({},QT),i),t.props.textureParameters)}));return ZT[r.id]=!0,r}(n,t),release:t=>{!function(t){!t||!(t instanceof lS)||ZT[t.id]&&(t.delete(),delete ZT[t.id])}(t)}}};function tk(t,e){if(t===e)return!0;if(!ik(t)||!ik(e))return!1;const n=t.length;if(n!==e.length)return!1;for(let i=0;i{},this.oldProps=yk,this.oldAsyncProps=null}finalize(){for(const t in this.asyncProps){const e=this.asyncProps[t];e.type&&e.type.release&&e.type.release(e.resolvedValue,e.type,this.component)}}getOldProps(){return this.oldAsyncProps||this.oldProps}resetOldProps(){this.oldAsyncProps=null,this.oldProps=this.component.props}freezeAsyncOldProps(){if(!this.oldAsyncProps){this.oldProps=this.oldProps||this.component.props,this.oldAsyncProps=Object.create(this.oldProps);for(const t in this.asyncProps)Object.defineProperty(this.oldAsyncProps,t,{enumerable:!0,value:this.oldProps[t]})}}hasAsyncProp(t){return t in this.asyncProps}getAsyncProp(t){const e=this.asyncProps[t];return e&&e.resolvedValue}isAsyncPropLoading(t){if(t){const e=this.asyncProps[t];return Boolean(e&&e.pendingLoadCount>0&&e.pendingLoadCount!==e.resolvedLoadCount)}for(const e in this.asyncProps)if(this.isAsyncPropLoading(e))return!0;return!1}reloadAsyncProp(t,e){this._watchPromise(t,Promise.resolve(e))}setAsyncProps(t){const e=t[mk]||{},n=t[gk]||t,i=t[bk]||{};for(const r in e){const t=e[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t),e[r]=this.getAsyncProp(r)}for(const r in n){const t=n[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t)}}_updateAsyncProp(t,e){if(this._didAsyncInputValueChange(t,e)){if("string"==typeof e){var n;const i=null===(n=this.layer)||void 0===n?void 0:n.props.fetch;i&&(e=i(e,{propName:t,layer:this.layer}))}if(e instanceof Promise)return void this._watchPromise(t,e);if(fE(e))return void this._resolveAsyncIterable(t,e);this._setPropValue(t,e)}}_didAsyncInputValueChange(t,e){const n=this.asyncProps[t];return e!==n.resolvedValue&&e!==n.lastValue&&(n.lastValue=e,!0)}_setPropValue(t,e){const n=this.asyncProps[t];e=this._postProcessValue(n,e),n.resolvedValue=e,n.pendingLoadCount++,n.resolvedLoadCount=n.pendingLoadCount}_setAsyncPropValue(t,e,n){const i=this.asyncProps[t];i&&n>=i.resolvedLoadCount&&void 0!==e&&(this.freezeAsyncOldProps(),i.resolvedValue=e,i.resolvedLoadCount=n,this.onAsyncPropUpdated(t,e))}_watchPromise(t,e){const n=this.asyncProps[t];n.pendingLoadCount++;const i=n.pendingLoadCount;e.then(e=>{var r;e=this._postProcessValue(n,e),this._setAsyncPropValue(t,e,i);const s=null===(r=this.layer)||void 0===r?void 0:r.props.onDataLoad;"data"===t&&s&&s(e,{propName:t,layer:this.layer})}).catch(e=>{var n;null===(n=this.layer)||void 0===n||n.raiseError(e,"loading ".concat(t," of ").concat(this.layer))})}_resolveAsyncIterable(t,e){var n=this;return gS(function*(){var i;"data"!==t&&n._setPropValue(t,e);const r=n.asyncProps[t];r.pendingLoadCount++;const s=r.pendingLoadCount;let o=[],a=0;var l,c=!0,u=!1;try{for(var h,d,p=fk(e);c=(h=yield p.next()).done,d=yield h.value,!c;c=!0){const e=d,{dataTransform:i}=n.component?n.component.props:{};o=i?i(e,o):o.concat(e),Object.defineProperty(o,"__diff",{enumerable:!1,value:[{startRow:a,endRow:o.length}]}),a=o.length,n._setAsyncPropValue(t,o,s)}}catch(g){u=!0,l=g}finally{try{!c&&null!=p.return&&(yield p.return())}finally{if(u)throw l}}const f=null===(i=n.layer)||void 0===i?void 0:i.props.onDataLoad;f&&f(o,{propName:t,layer:n.layer})})()}_postProcessValue(t,e){const n=t.type;return n&&(n.release&&n.release(t.resolvedValue,n,this.component),n.transform)?n.transform(e,n,this.component):e}_createAsyncPropData(t,e){if(!this.asyncProps[t]){const n=this.component&&this.component.constructor._propTypes;this.asyncProps[t]={type:n&&n[t],lastValue:null,resolvedValue:e,pendingLoadCount:0,resolvedLoadCount:0}}}}const{ASYNC_ORIGINAL:_k,ASYNC_RESOLVED:wk,ASYNC_DEFAULTS:xk}=NO,Sk={};let Ek=0,Ck=(()=>{class t{constructor(){this.props=ck.apply(this,arguments),this.id=this.props.id,this.count=Ek++,this.lifecycle="Awaiting state",this.parent=null,this.context=null,this.state=null,this.internalState=null,Object.seal(this)}clone(t){const{props:e}=this,n={};for(const i in e[xk])i in e[wk]?n[i]=e[wk][i]:i in e[_k]&&(n[i]=e[_k][i]);return new this.constructor(wt(wt(wt({},e),n),t))}get stats(){return this.internalState.stats}_initState(){this.internalState=new vk({})}}return t.componentName="Component",t.defaultProps=Sk,t})();class Ok extends vk{constructor({attributeManager:t,layer:e}){super(e),this.attributeManager=t,this.model=null,this.needsRedraw=!0,this.subLayers=null,this.usesPickingColorCache=!1}get layer(){return this.component}set layer(t){this.component=t}}const Tk=t=>"function"==typeof t,kk=t=>null!==t&&"object"==typeof t,Ak=t=>kk(t)&&t.constructor==={}.constructor,Pk=t=>t&&"function"==typeof t[Symbol.iterator],Mk=t=>t&&"function"==typeof t[Symbol.asyncIterator],Ik=t=>"undefined"!=typeof Response&&t instanceof Response||t&&t.arrayBuffer&&t.text&&t.json,Dk=t=>"undefined"!=typeof Blob&&t instanceof Blob,Rk=t=>(t=>"undefined"!=typeof ReadableStream&&t instanceof ReadableStream||kk(t)&&Tk(t.tee)&&Tk(t.cancel)&&Tk(t.getReader))(t)||(t=>kk(t)&&Tk(t.read)&&Tk(t.pipe)&&(t=>"boolean"==typeof t)(t.readable))(t);function Nk(t,e){if(!t)throw new Error(e||"loader assertion failed.")}function Lk(t){var e;return!!t&&(Array.isArray(t)&&(t=t[0]),Array.isArray(null===(e=t)||void 0===e?void 0:e.extensions))}function jk(t){var e,n;let i;return Nk(t,"null loader"),Nk(Lk(t),"invalid loader"),Array.isArray(t)&&(i=t[1],t=ii(wt({},t=t[0]),{options:wt(wt({},t.options),i)})),(null!==(e=t)&&void 0!==e&&e.parseTextSync||null!==(n=t)&&void 0!==n&&n.parseText)&&(t.text=!0),t.text||(t.binary=!0),t}const Fk={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},Bk=Fk.global||Fk.self||Fk.window||{},Vk="object"!=typeof process||"[object process]"!==String(process)||process.browser,zk="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version);zk&&parseFloat(zk[1]);const Uk={};function Hk(t){for(const e in Uk)t.startsWith(e)&&(t=t.replace(e,Uk[e]));return!t.startsWith("http://")&&!t.startsWith("https://")&&(t=`${t}`),t}const $k=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,Gk=/^([-\w.]+\/[-\w.+]+)/;function Wk(t){const e=Gk.exec(t);return e?e[1]:t}function qk(t){const e=$k.exec(t);return e?e[1]:""}const Xk=/\?.*/;function Yk(t){if(Ik(t)){const e=Qk(t.url||"");return{url:e,type:Wk(t.headers.get("content-type")||"")||qk(e)}}return Dk(t)?{url:Qk(t.name||""),type:t.type||""}:"string"==typeof t?{url:Qk(t),type:qk(t)}:{url:"",type:""}}function Kk(t){return Ik(t)?t.headers["content-length"]||-1:Dk(t)?t.size:"string"==typeof t?t.length:t instanceof ArrayBuffer||ArrayBuffer.isView(t)?t.byteLength:-1}function Qk(t){return t.replace(Xk,"")}function Zk(t){return Jk.apply(this,arguments)}function Jk(){return(Jk=gS(function*(t){if(Ik(t))return t;const e={},n=Kk(t);n>=0&&(e["content-length"]=String(n));const{url:i,type:r}=Yk(t);r&&(e["content-type"]=r);const s=yield rA(t);s&&(e["x-first-bytes"]=s),"string"==typeof t&&(t=(new TextEncoder).encode(t));const o=new Response(t,{headers:e});return Object.defineProperty(o,"url",{value:i}),o})).apply(this,arguments)}function tA(t){return eA.apply(this,arguments)}function eA(){return(eA=gS(function*(t){if(!t.ok){const e=yield nA(t);throw new Error(e)}})).apply(this,arguments)}function nA(t){return iA.apply(this,arguments)}function iA(){return(iA=gS(function*(t){let e=`Failed to fetch resource ${t.url} (${t.status}): `;try{const n=t.headers.get("Content-Type");let i=t.statusText;n.includes("application/json")&&(i+=` ${yield t.text()}`),e+=i,e=e.length>60?`${e.slice(60)}...`:e}catch(n){}return e})).apply(this,arguments)}function rA(t){return sA.apply(this,arguments)}function sA(){return(sA=gS(function*(t){if("string"==typeof t)return`data:,${t.slice(0,5)}`;if(t instanceof Blob){const e=t.slice(0,5);return yield new Promise(t=>{const n=new FileReader;n.onload=e=>{var n;return t(null==e||null===(n=e.target)||void 0===n?void 0:n.result)},n.readAsDataURL(e)})}return t instanceof ArrayBuffer?`data:base64,${oA(t.slice(0,5))}`:null})).apply(this,arguments)}function oA(t){let e="";const n=new Uint8Array(t);for(let i=0;i{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}}const dA={fetch:null,mimeType:void 0,nothrow:!1,log:new class{constructor(){cA(this,"console",void 0),this.console=console}log(...t){return this.console.log.bind(this.console,...t)}info(...t){return this.console.info.bind(this.console,...t)}warn(...t){return this.console.warn.bind(this.console,...t)}error(...t){return this.console.error.bind(this.console,...t)}},CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},pA={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function fA(){Bk.loaders=Bk.loaders||{};const{loaders:t}=Bk;return t._state=t._state||{},t._state}const gA=()=>{const t=fA();return t.globalOptions=t.globalOptions||wt({},dA),t.globalOptions};function mA(t,e,n,i){return n=n||[],function(t,e){yA(t,null,dA,pA,e);for(const n of e)yA(t&&t[n.id]||{},n.id,n.options&&n.options[n.id]||{},n.deprecatedOptions&&n.deprecatedOptions[n.id]||{},e)}(t,n=Array.isArray(n)?n:[n]),function(t,e,n){const i=wt({},t.options||{});return function(t,e){e&&!("baseUri"in t)&&(t.baseUri=e)}(i,n),null===i.log&&(i.log=new hA),_A(i,gA()),_A(i,e),i}(e,t,i)}function bA(t,e){const n=gA(),i=t||n;return"function"==typeof i.fetch?i.fetch:kk(i.fetch)?t=>aA(t,i):null!=e&&e.fetch?null==e?void 0:e.fetch:aA}function yA(t,e,n,i,r){const s=e||"Top level",o=e?`${e}.`:"";for(const a in t){const l=!e&&kk(t[a]),c="baseUri"===a&&!e,u="workerUrl"===a&&e;if(!(a in n)&&!c&&!u)if(a in i)uA.warn(`${s} loader option '${o}${a}' no longer supported, use '${i[a]}'`)();else if(!l){const t=vA(a,r);uA.warn(`${s} loader option '${o}${a}' not recognized. ${t}`)()}}}function vA(t,e){const n=t.toLowerCase();let i="";for(const r of e)for(const e in r.options){if(t===e)return`Did you mean '${r.id}.${e}'?`;const s=e.toLowerCase();(n.startsWith(s)||s.startsWith(n))&&(i=i||`Did you mean '${r.id}.${e}'?`)}return i}function _A(t,e){for(const n in e)n in e&&(t[n]=Ak(e[n])&&Ak(t[n])?wt(wt({},t[n]),e[n]):e[n])}function wA(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}function xA(t,e="3.0.12"){return wA(t,"no worker provided"),!(!e||!t.version)}const SA={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},EA=SA.global||SA.self||SA.window||{},CA="object"!=typeof process||"[object process]"!==String(process)||process.browser,OA="function"==typeof importScripts,TA="undefined"!=typeof window&&void 0!==window.orientation,kA="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),AA=(kA&&parseFloat(kA[1]),new Map);function PA(t){const e=new Blob([t],{type:"application/javascript"});return URL.createObjectURL(e)}function MA(t,e=!0,n){const i=n||new Set;if(t)if(IA(t))i.add(t);else if(IA(t.buffer))i.add(t.buffer);else if(!ArrayBuffer.isView(t)&&e&&"object"==typeof t)for(const r in t)MA(t[r],e,i);return void 0===n?Array.from(i):[]}function IA(t){return!!t&&(t instanceof ArrayBuffer||"undefined"!=typeof MessagePort&&t instanceof MessagePort||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas)}const DA=()=>{};class RA{static isSupported(){return"undefined"!=typeof Worker}constructor(t){cA(this,"name",void 0),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"terminated",!1),cA(this,"worker",void 0),cA(this,"onMessage",void 0),cA(this,"onError",void 0),cA(this,"_loadableURL","");const{name:e,source:n,url:i}=t;wA(n||i),this.name=e,this.source=n,this.url=i,this.onMessage=DA,this.onError=t=>console.log(t),this.worker=this._createBrowserWorker()}destroy(){this.onMessage=DA,this.onError=DA,this.worker.terminate(),this.terminated=!0}get isRunning(){return Boolean(this.onMessage)}postMessage(t,e){e=e||MA(t),this.worker.postMessage(t,e)}_getErrorFromErrorEvent(t){let e="Failed to load ";return e+=`worker ${this.name}. `,t.message&&(e+=`${t.message} in `),t.lineno&&(e+=`:${t.lineno}:${t.colno}`),new Error(e)}_createBrowserWorker(){this._loadableURL=function(t){wA(t.source&&!t.url||!t.source&&t.url);let e=AA.get(t.source||t.url);return e||(t.url&&(e=function(t){return t.startsWith("http")?PA(function(t){return`try {\n importScripts('${t}');\n} catch (error) {\n console.error(error);\n throw error;\n}`}(t)):t}(t.url),AA.set(t.url,e)),t.source&&(e=PA(t.source),AA.set(t.source,e))),wA(e),e}({source:this.source,url:this.url});const t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=t=>{t.data?this.onMessage(t.data):this.onError(new Error("No data received"))},t.onerror=t=>{this.onError(this._getErrorFromErrorEvent(t)),this.terminated=!0},t.onmessageerror=t=>console.error(t),t}}class NA{constructor(t,e){cA(this,"name",void 0),cA(this,"workerThread",void 0),cA(this,"isRunning",void 0),cA(this,"result",void 0),cA(this,"_resolve",void 0),cA(this,"_reject",void 0),this.name=t,this.workerThread=e,this.isRunning=!0,this._resolve=()=>{},this._reject=()=>{},this.result=new Promise((t,e)=>{this._resolve=t,this._reject=e})}postMessage(t,e){this.workerThread.postMessage({source:"loaders.gl",type:t,payload:e})}done(t){wA(this.isRunning),this.isRunning=!1,this._resolve(t)}error(t){wA(this.isRunning),this.isRunning=!1,this._reject(t)}}class LA{constructor(t){cA(this,"name","unnamed"),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"maxConcurrency",1),cA(this,"maxMobileConcurrency",1),cA(this,"onDebug",()=>{}),cA(this,"reuseWorkers",!0),cA(this,"props",{}),cA(this,"jobQueue",[]),cA(this,"idleQueue",[]),cA(this,"count",0),cA(this,"isDestroyed",!1),this.source=t.source,this.url=t.url,this.setProps(t)}destroy(){this.idleQueue.forEach(t=>t.destroy()),this.isDestroyed=!0}setProps(t){this.props=wt(wt({},this.props),t),void 0!==t.name&&(this.name=t.name),void 0!==t.maxConcurrency&&(this.maxConcurrency=t.maxConcurrency),void 0!==t.maxMobileConcurrency&&(this.maxMobileConcurrency=t.maxMobileConcurrency),void 0!==t.reuseWorkers&&(this.reuseWorkers=t.reuseWorkers),void 0!==t.onDebug&&(this.onDebug=t.onDebug)}startJob(t,e=((t,e,n)=>t.done(n)),n=((t,e)=>t.error(e))){var i=this;return gS(function*(){const r=new Promise(r=>(i.jobQueue.push({name:t,onMessage:e,onError:n,onStart:r}),i));return i._startQueuedJob(),yield r})()}_startQueuedJob(){var t=this;return gS(function*(){if(!t.jobQueue.length)return;const e=t._getAvailableWorker();if(!e)return;const n=t.jobQueue.shift();if(n){t.onDebug({message:"Starting job",name:n.name,workerThread:e,backlog:t.jobQueue.length});const i=new NA(n.name,e);e.onMessage=t=>n.onMessage(i,t.type,t.payload),e.onError=t=>n.onError(i,t),n.onStart(i);try{yield i.result}finally{t.returnWorkerToQueue(e)}}})()}returnWorkerToQueue(t){this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(t.destroy(),this.count--):this.idleQueue.push(t),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count{},reuseWorkers:!0};class FA{static isSupported(){return RA.isSupported()}static getWorkerFarm(t={}){return FA._workerFarm=FA._workerFarm||new FA({}),FA._workerFarm.setProps(t),FA._workerFarm}constructor(t){cA(this,"props",void 0),cA(this,"workerPools",new Map),this.props=wt({},jA),this.setProps(t),this.workerPools=new Map}destroy(){for(const t of this.workerPools.values())t.destroy()}setProps(t){this.props=wt(wt({},this.props),t);for(const e of this.workerPools.values())e.setProps(this._getWorkerPoolProps())}getWorkerPool(t){const{name:e,source:n,url:i}=t;let r=this.workerPools.get(e);return r||(r=new LA({name:e,source:n,url:i}),r.setProps(this._getWorkerPoolProps()),this.workerPools.set(e,r)),r}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}}function BA(t,e={}){const n=`${t.id}-worker.js`;let i=(e[t.id]||{}).workerUrl;if("test"===e._workerType&&(i=`modules/${t.module}/dist/${n}`),!i){let e=t.version;"latest"===e&&(e="latest"),i=`https://unpkg.com/@loaders.gl/${t.module}${e?`@${e}`:""}/dist/${n}`}return wA(i),i}function VA(t,e){return!!FA.isSupported()&&t.worker&&(null==e?void 0:e.worker)}function zA(t,e,n,i,r){return UA.apply(this,arguments)}function UA(){return(UA=gS(function*(t,e,n,i,r){const s=t.id,o=BA(t,n),a=FA.getWorkerFarm(n).getWorkerPool({name:s,url:o});n=JSON.parse(JSON.stringify(n));const l=yield a.startJob("process-on-worker",HA.bind(null,r));return l.postMessage("process",{input:e,options:n}),yield(yield l.result).result})).apply(this,arguments)}function HA(t,e,n,i){return $A.apply(this,arguments)}function $A(){return($A=gS(function*(t,e,n,i){switch(n){case"done":e.done(i);break;case"error":e.error(i.error);break;case"process":const{id:s,input:o,options:a}=i;try{const n=yield t(o,a);e.postMessage("done",{id:s,result:n})}catch(r){const t=r instanceof Error?r.message:"unknown error";e.postMessage("error",{id:s,error:t})}break;default:console.warn(`parse-with-worker unknown message ${n}`)}})).apply(this,arguments)}cA(FA,"_workerFarm",void 0);var GA=n(9521);function WA(t){if(function(t){return t&&"object"==typeof t&&t.isBuffer}(t)&&(t=function(t){return GA.toArrayBuffer?GA.toArrayBuffer(t):t}(t)),t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t))return 0===t.byteOffset&&t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);if("string"==typeof t){const e=t;return(new TextEncoder).encode(e).buffer}if(t&&"object"==typeof t&&t._toArrayBuffer)return t._toArrayBuffer();throw new Error("toArrayBuffer")}function qA(...t){const e=t.map(t=>t instanceof ArrayBuffer?new Uint8Array(t):t),n=e.reduce((t,e)=>t+e.byteLength,0),i=new Uint8Array(n);let r=0;for(const s of e)i.set(s,r),r+=s.byteLength;return i.buffer}function XA(t,e,n){const i=void 0!==n?new Uint8Array(t).subarray(e,e+n):new Uint8Array(t).subarray(e);return new Uint8Array(i).buffer}function YA(t){return KA.apply(this,arguments)}function KA(){return(KA=gS(function*(t){const e=[];var n,i=!0,r=!1;try{for(var s,o,a=fk(t);i=(s=yield a.next()).done,o=yield s.value,!i;i=!0)e.push(o)}catch(l){r=!0,n=l}finally{try{!i&&null!=a.return&&(yield a.return())}finally{if(r)throw n}}return qA(...e)})).apply(this,arguments)}const QA=262144;function ZA(t){this.wrapped=t}function JA(t){return new ZA(t)}function tP(t){var e,n;function i(e,n){try{var s=t[e](n),o=s.value,a=o instanceof ZA;Promise.resolve(a?o.wrapped:o).then(function(t){a?i("return"===e?"return":"next",t):r(s.done?"return":"normal",t)},function(t){i("throw",t)})}catch(l){r("throw",l)}}function r(t,r){switch(t){case"return":e.resolve({value:r,done:!0});break;case"throw":e.reject(r);break;default:e.resolve({value:r,done:!1})}(e=e.next)?i(e.key,e.arg):n=null}this._invoke=function(t,r){return new Promise(function(s,o){var a={key:t,arg:r,resolve:s,reject:o,next:null};n?n=n.next=a:(e=n=a,i(t,r))})},"function"!=typeof t.return&&(this.return=void 0)}function eP(t){return function(){return new tP(t.apply(this,arguments))}}function nP(){return(nP=eP(function*(t,e){const n=(null==e?void 0:e.chunkSize)||1048576;let i=0;for(;it&&"object"==typeof t&&t.isBuffer)(t)&&(t=t.buffer),t instanceof ArrayBuffer){const n=t;return e.text&&!e.binary?new TextDecoder("utf8").decode(n):n}if(ArrayBuffer.isView(t)){if(e.text&&!e.binary)return new TextDecoder("utf8").decode(t);let n=t.buffer;const i=t.byteLength||t.length;return(0!==t.byteOffset||i!==n.byteLength)&&(n=n.slice(t.byteOffset,t.byteOffset+i)),n}throw new Error(aP)}function cP(t,e,n){return uP.apply(this,arguments)}function uP(){return(uP=gS(function*(t,e,n){const i=t instanceof ArrayBuffer||ArrayBuffer.isView(t);if("string"==typeof t||i)return lP(t,e);if(Dk(t)&&(t=yield Zk(t)),Ik(t)){const n=t;return yield tA(n),e.binary?yield n.arrayBuffer():yield n.text()}if(Rk(t)&&(t=oP(t,n)),Pk(t)||Mk(t))return YA(t);throw new Error(aP)})).apply(this,arguments)}function hP(t,e,n=null){if(n)return n;const i=wt({fetch:bA(e,t)},t);return Array.isArray(i.loaders)||(i.loaders=null),i}function dP(t,e){if(!e&&t&&!Array.isArray(t))return t;let n;if(t&&(n=Array.isArray(t)?t:[t]),e&&e.loaders){const t=Array.isArray(e.loaders)?e.loaders:[e.loaders];n=n?[...n,...t]:t}return n&&n.length?n:null}const pP=()=>{const t=fA();return t.loaderRegistry=t.loaderRegistry||[],t.loaderRegistry};function fP(t){const e=pP();t=Array.isArray(t)?t:[t];for(const n of t){const t=jk(n);e.find(e=>t===e)||e.unshift(t)}}const gP=/\.([^.]+)$/;function mP(t){return bP.apply(this,arguments)}function bP(){return(bP=gS(function*(t,e=[],n,i){if(!vP(t))return null;let r=yP(t,e,ii(wt({},n),{nothrow:!0}),i);if(r)return r;if(Dk(t)&&(r=yP(t=yield t.slice(0,10).arrayBuffer(),e,n,i)),!(r||null!=n&&n.nothrow))throw new Error(_P(t));return r})).apply(this,arguments)}function yP(t,e=[],n,i){if(!vP(t))return null;if(e&&!Array.isArray(e))return jk(e);let r=[];e&&(r=r.concat(e)),null!=n&&n.ignoreRegisteredLoaders||r.push(...pP()),function(t){for(const e of t)jk(e)}(r);const s=function(t,e,n,i){const{url:r,type:s}=Yk(t),o=r||(null==i?void 0:i.url);let a=null;return null!=n&&n.mimeType&&(a=wP(e,null==n?void 0:n.mimeType)),a=a||function(t,e){const n=e&&gP.exec(e),i=n&&n[1];return i?function(t,e){e=e.toLowerCase();for(const n of t)for(const t of n.extensions)if(t.toLowerCase()===e)return n;return null}(t,i):null}(e,o),a=a||wP(e,s),a=a||function(t,e){if(!e)return null;for(const n of t)if("string"==typeof e){if(xP(e,n))return n}else if(ArrayBuffer.isView(e)){if(SP(e.buffer,e.byteOffset,n))return n}else if(e instanceof ArrayBuffer&&SP(e,0,n))return n;return null}(e,t),a=a||wP(e,null==n?void 0:n.fallbackMimeType),a}(t,r,n,i);if(!(s||null!=n&&n.nothrow))throw new Error(_P(t));return s}function vP(t){return!(t instanceof Response&&204===t.status)}function _P(t){const{url:e,type:n}=Yk(t);let i="No valid loader found";return t&&(i+=` data: "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?EP(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?EP(t,0,e):""}(t)}", contentType: "${n}"`),e&&(i+=` url: ${e}`),i}function wP(t,e){for(const n of t)if(n.mimeTypes&&n.mimeTypes.includes(e)||e===`application/x.${n.id}`)return n;return null}function xP(t,e){return e.testText?e.testText(t):(Array.isArray(e.tests)?e.tests:[e.tests]).some(e=>t.startsWith(e))}function SP(t,e,n){return(Array.isArray(n.tests)?n.tests:[n.tests]).some(i=>function(t,e,n,i){if(i instanceof ArrayBuffer)return function(t,e,n){if(t.byteLength<(n=n||t.byteLength)||e.byteLengtht.equals(e));let RP=new Uint8ClampedArray(0);const NP={data:{type:"data",value:IP,async:!0},dataComparator:null,_dataDiff:{type:"function",value:t=>t&&t.__diff,compare:!1,optional:!0},dataTransform:{type:"function",value:null,compare:!1,optional:!0},onDataLoad:{type:"function",value:null,compare:!1,optional:!0},onError:{type:"function",value:null,compare:!1,optional:!0},fetch:{type:"function",value:(t,{propName:e,layer:n,loaders:i,loadOptions:r,signal:s})=>{const{resourceManager:o}=n.context;var a;r=r||n.getLoadOptions(),i=i||n.props.loaders,s&&(r=ii(wt({},r),{fetch:ii(wt({},null===(a=r)||void 0===a?void 0:a.fetch),{signal:s})}));let l=o.contains(t);return!l&&!r&&(o.add({resourceId:t,data:AP(t,i),persistent:!1}),l=!0),l?o.subscribe({resourceId:t,onChange:t=>n.internalState.reloadAsyncProp(e,t),consumerId:n.id,requestId:e}):AP(t,i,r)},compare:!1},updateTriggers:{},visible:!0,pickable:!1,opacity:{type:"number",min:0,max:1,value:1},onHover:{type:"function",value:null,compare:!1,optional:!0},onClick:{type:"function",value:null,compare:!1,optional:!0},onDragStart:{type:"function",value:null,compare:!1,optional:!0},onDrag:{type:"function",value:null,compare:!1,optional:!0},onDragEnd:{type:"function",value:null,compare:!1,optional:!0},coordinateSystem:Iw.DEFAULT,coordinateOrigin:{type:"array",value:[0,0,0],compare:!0},modelMatrix:{type:"array",value:null,compare:!0,optional:!0},wrapLongitude:!1,positionFormat:"XYZ",colorFormat:"RGBA",parameters:{},transitions:null,extensions:[],loaders:{type:"array",value:[],optional:!0,compare:!0},getPolygonOffset:{type:"function",value:({layerIndex:t})=>[0,100*-t],compare:!1},highlightedObjectIndex:-1,autoHighlight:!1,highlightColor:{type:"accessor",value:[0,0,128,128]}};let LP=(()=>{class t extends Ck{toString(){return"".concat(this.constructor.layerName||this.constructor.name,"({id: '").concat(this.props.id,"'})")}raiseError(t,e){var n,i,r,s;e&&(t.message="".concat(e,": ").concat(t.message)),(null===(n=(i=this.props).onError)||void 0===n?void 0:n.call(i,t))||null===(r=this.context)||void 0===r||null===(s=r.onError)||void 0===s||s.call(r,t,this)}setState(t){this.setChangeFlags({stateChanged:!0}),Object.assign(this.state,t),this.setNeedsRedraw()}setNeedsRedraw(t=!0){this.internalState&&(this.internalState.needsRedraw=t)}setNeedsUpdate(){this.context.layerManager.setNeedsUpdate(String(this)),this.internalState.needsUpdate=!0}getNeedsRedraw(t={clearRedrawFlags:!1}){return this._getNeedsRedraw(t)}needsUpdate(){return this.internalState.needsUpdate||this.hasUniformTransition()||this.shouldUpdateState(this._getUpdateParams())}hasUniformTransition(){return this.internalState.uniformTransitions.active}get isLoaded(){return this.internalState&&!this.internalState.isAsyncPropLoading()}get wrapLongitude(){return this.props.wrapLongitude}isPickable(){return this.props.pickable&&this.props.visible}getModels(){return this.state&&(this.state.models||(this.state.model?[this.state.model]:[]))}getAttributeManager(){return this.internalState&&this.internalState.attributeManager}getCurrentLayer(){return this.internalState&&this.internalState.layer}getLoadOptions(){return this.props.loadOptions}project(t){const{viewport:e}=this.context,n=KT(t,{viewport:e,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem}),[i,r,s]=NT(n,e.pixelProjectionMatrix);return 2===t.length?[i,r]:[i,r,s]}unproject(t){const{viewport:e}=this.context;return e.unproject(t)}projectPosition(t){return function(t,e){const{viewport:n,coordinateSystem:i,coordinateOrigin:r,modelMatrix:s,fromCoordinateSystem:o,fromCoordinateOrigin:a}=function(t){const e=wt({},t);let{coordinateSystem:n}=t;const{viewport:i,coordinateOrigin:r,fromCoordinateSystem:s,fromCoordinateOrigin:o}=t;return n===Iw.DEFAULT&&(n=i.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN),void 0===s&&(e.fromCoordinateSystem=n),void 0===o&&(e.fromCoordinateOrigin=r),e.coordinateSystem=n,e}(e),{geospatialOrigin:l,shaderCoordinateOrigin:c,offsetMode:u}=lT(n,i,r),h=KT(t,{viewport:n,modelMatrix:s,coordinateSystem:o,coordinateOrigin:a,offsetMode:u});u&&function(t,e,n){t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2]}(h,h,n.projectPosition(l||c));return h}(t,{viewport:this.context.viewport,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem})}use64bitPositions(){const{coordinateSystem:t}=this.props;return t===Iw.DEFAULT||t===Iw.LNGLAT||t===Iw.CARTESIAN}onHover(t,e){return!!this.props.onHover&&this.props.onHover(t,e)}onClick(t,e){return!!this.props.onClick&&this.props.onClick(t,e)}nullPickingColor(){return[0,0,0]}encodePickingColor(t,e=[]){return e[0]=t+1&255,e[1]=t+1>>8&255,e[2]=t+1>>8>>8&255,e}decodePickingColor(t){uE(t instanceof Uint8Array);const[e,n,i]=t;return e+256*n+65536*i-1}initializeState(){throw new Error("Layer ".concat(this," has not defined initializeState"))}getShaders(t){for(const e of this.props.extensions)t=GO(t,e.getShaders.call(this,e));return t}shouldUpdateState({changeFlags:t}){return t.propsOrDataChanged}updateState({oldProps:t,props:e,changeFlags:n}){const i=this.getAttributeManager();if(n.dataChanged&&i){const{dataChanged:t}=n;if(Array.isArray(t))for(const e of t)i.invalidateAll(e);else i.invalidateAll()}const r=e.highlightedObjectIndex>=0||e.pickable;if((t.highlightedObjectIndex>=0||t.pickable)!==r&&i){const{pickingColors:t,instancePickingColors:e}=i.attributes,n=t||e;n&&(r&&n.constant&&(n.constant=!1,i.invalidate(n.id)),!n.value&&!r&&(n.constant=!0,n.value=[0,0,0]))}}finalizeState(){for(const e of this.getModels())e.delete();const t=this.getAttributeManager();t&&t.finalize(),this.context.resourceManager.unsubscribe({consumerId:this.id}),this.internalState.uniformTransitions.clear(),this.internalState.finalize()}draw(t){for(const e of this.getModels())e.draw(t)}getPickingInfo({info:t}){const{index:e}=t;return e>=0&&Array.isArray(this.props.data)&&(t.object=this.props.data[e]),t}activateViewport(t){const e=this.internalState.viewport;this.internalState.viewport=t,(!e||!DP({oldViewport:e,viewport:t}))&&(this.setChangeFlags({viewportChanged:!0}),this.isComposite?this.needsUpdate()&&this.setNeedsUpdate():this._update())}invalidateAttribute(t="all",e=""){const n=this.getAttributeManager();!n||("all"===t?n.invalidateAll():n.invalidate(t))}updateAttributes(t){for(const e of this.getModels())this._setModelAttributes(e,t)}_updateAttributes(t){const e=this.getAttributeManager();if(!e)return;const n=this.getNumInstances(t),i=this.getStartIndices(t);e.update({data:t.data,numInstances:n,startIndices:i,props:t,transitions:t.transitions,buffers:t.data.attributes,context:this,ignoreUnknownAttributes:!0});const r=e.getChangedAttributes({clearChangedFlags:!0});this.updateAttributes(r)}_updateAttributeTransition(){const t=this.getAttributeManager();t&&t.updateTransition()}_updateUniformTransition(){const{uniformTransitions:t}=this.internalState;if(t.active){const e=t.update(),n=Object.create(this.props);for(const t in e)Object.defineProperty(n,t,{value:e[t]});return n}return this.props}calculateInstancePickingColors(t,{numInstances:e}){if(t.constant)return;const n=Math.floor(RP.length/3);if(this.internalState.usesPickingColorCache=!0,nMP&&Mw.warn("Layer has too many data objects. Picking might not be able to distinguish all objects.")(),RP=AS.allocate(RP,e,{size:3,copy:!0,maxCount:Math.max(e,MP)});const t=Math.floor(RP.length/3),i=[];for(let e=n;e{const i={moduleParameters:t,uniforms:e,parameters:n,context:this.context};for(const t of this.props.extensions)t.draw.call(this,i,t);this.draw(i)})}finally{this.props=i}}getChangeFlags(){return this.internalState.changeFlags}setChangeFlags(t){const{changeFlags:e}=this.internalState;for(const i in t)if(t[i]){let n=!1;switch(i){case"dataChanged":Array.isArray(e[i])&&(e[i]=Array.isArray(t[i])?e[i].concat(t[i]):t[i],n=!0);default:e[i]||(e[i]=t[i],n=!0)}n&&PE("layer.changeFlag",this,i,t)}const n=e.dataChanged||e.updateTriggersChanged||e.propsChanged||e.extensionsChanged;e.propsOrDataChanged=n,e.somethingChanged=n||t.viewportChanged||t.stateChanged}clearChangeFlags(){this.internalState.changeFlags={dataChanged:!1,propsChanged:!1,updateTriggersChanged:!1,viewportChanged:!1,stateChanged:!1,extensionsChanged:!1,propsOrDataChanged:!1,somethingChanged:!1}}diffProps(t,e){const n=function(t,e){const n=FO({newProps:t,oldProps:e,propTypes:UO(t),ignoreProps:{data:null,updateTriggers:null,extensions:null,transitions:null}}),i=function(t,e){if(null===e)return"oldProps is null, initial diff";let n=null;const{dataComparator:i,_dataDiff:r}=t;return i?i(t.data,e.data)||(n="Data comparator detected a change"):t.data!==e.data&&(n="A new data container was supplied"),n&&r&&(n=r(t.data,e.data)||n),n}(t,e);let r=!1;return i||(r=function(t,e){if(null===e)return"oldProps is null, initial diff";if("all"in t.updateTriggers&&zO(t,e,"all"))return{all:!0};const n={};let i=!1;for(const r in t.updateTriggers)"all"!==r&&zO(t,e,r)&&(n[r]=!0,i=n);return i}(t,e)),{dataChanged:i,propsChanged:n,updateTriggersChanged:r,extensionsChanged:VO(t,e),transitionsChanged:jO(t,e)}}(t,e);if(n.updateTriggersChanged)for(const i in n.updateTriggersChanged)n.updateTriggersChanged[i]&&this.invalidateAttribute(i);if(n.transitionsChanged)for(const i in n.transitionsChanged)this.internalState.uniformTransitions.add(i,e[i],t[i],t.transitions[i]);return this.setChangeFlags(n)}validateProps(){!function(t){const e=UO(t);for(const n in e){const i=e[n],{validate:r}=i;if(r&&!r(t[n],i))throw new Error("Invalid prop ".concat(n,": ").concat(t[n]))}}(this.props)}setModuleParameters(t){for(const e of this.getModels())e.updateModuleSettings(t)}updateAutoHighlight(t){this.props.autoHighlight&&this._updateAutoHighlight(t)}_updateAutoHighlight(t){const e={pickingSelectedColor:t.picked?t.color:null},{highlightColor:n}=this.props;t.picked&&"function"==typeof n&&(e.pickingHighlightColor=n(t)),this.setModuleParameters(e),this.setNeedsRedraw()}_updateModules({props:t,oldProps:e},n){const{autoHighlight:i,highlightedObjectIndex:r,highlightColor:s}=t;if(n||e.autoHighlight!==i||e.highlightedObjectIndex!==r||e.highlightColor!==s){const t={};i||(t.pickingSelectedColor=null),Array.isArray(s)&&(t.pickingHighlightColor=s),Number.isInteger(r)&&(t.pickingSelectedColor=r>=0?this.encodePickingColor(r):null),this.setModuleParameters(t)}}_getUpdateParams(){return{props:this.props,oldProps:this.internalState.getOldProps(),context:this.context,changeFlags:this.internalState.changeFlags}}_getNeedsRedraw(t){if(!this.internalState)return!1;let e=!1;e=e||this.internalState.needsRedraw&&this.id,this.internalState.needsRedraw=this.internalState.needsRedraw&&!t.clearRedrawFlags;const n=this.getAttributeManager(),i=n&&n.getNeedsRedraw(t);return e=e||i,e}_getAttributeManager(){return new PO(this.context.gl,{id:this.props.id,stats:this.context.stats,timeline:this.context.timeline})}_initState(){uE(!this.internalState&&!this.state),uE(isFinite(this.props.coordinateSystem));const t=this._getAttributeManager();t&&t.addInstanced({instancePickingColors:{type:5121,size:3,noAlloc:!0,update:this.calculateInstancePickingColors}}),this.internalState=new Ok({attributeManager:t,layer:this}),this.clearChangeFlags(),this.state={},Object.defineProperty(this.state,"attributeManager",{get:()=>(Mw.deprecated("layer.state.attributeManager","layer.getAttributeManager()"),t)}),this.internalState.layer=this,this.internalState.uniformTransitions=new RO(this.context.timeline),this.internalState.onAsyncPropUpdated=this._onAsyncPropUpdated.bind(this),this.internalState.setAsyncProps(this.props)}_transferState(t){PE("layer.matched",this,this===t);const{state:e,internalState:n}=t;this!==t&&(this.internalState=n,this.internalState.layer=this,this.state=e,this.internalState.setAsyncProps(this.props),this.diffProps(this.props,this.internalState.getOldProps()))}_onAsyncPropUpdated(){this.diffProps(this.props,this.internalState.getOldProps()),this.setNeedsUpdate()}}return t.layerName="Layer",t.defaultProps=NP,t})(),jP=(()=>{class t extends LP{get isComposite(){return!0}get isLoaded(){return super.isLoaded&&this.getSubLayers().every(t=>t.isLoaded)}getSubLayers(){return this.internalState&&this.internalState.subLayers||[]}initializeState(){}setState(t){super.setState(t),this.setNeedsUpdate()}getPickingInfo({info:t}){const{object:e}=t;return e&&e.__source&&e.__source.parent&&e.__source.parent.id===this.id&&(t.object=e.__source.object,t.index=e.__source.index),t}renderLayers(){return null}filterSubLayer(t){return!0}shouldRenderSubLayer(t,e){return e&&e.length}getSubLayerClass(t,e){const{_subLayerProps:n}=this.props;return n&&n[t]&&n[t].type||e}getSubLayerRow(t,e,n){return t.__source={parent:this,object:e,index:n},t}getSubLayerAccessor(t){if("function"==typeof t){const e={data:this.props.data,target:[]};return(n,i)=>n&&n.__source?(e.index=n.__source.index,t(n.__source.object,e)):t(n,i)}return t}getSubLayerProps(t={}){const{opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g,_subLayerProps:m}=this.props,b={opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g},y=m&&m[t.id],v=y&&y.updateTriggers,_=t.id||"sublayer";if(y){const e=this.constructor._propTypes,n=t.type?t.type._propTypes:{};for(const t in y){const i=n[t]||e[t];i&&"accessor"===i.type&&(y[t]=this.getSubLayerAccessor(y[t]))}}Object.assign(b,t,y),b.id="".concat(this.props.id,"-").concat(_),b.updateTriggers=wt(wt({all:this.props.updateTriggers.all},t.updateTriggers),v);for(const w of f){const t=w.getSubLayerProps.call(this,w);t&&Object.assign(b,t,{updateTriggers:Object.assign(b.updateTriggers,t.updateTriggers)})}return b}_updateAutoHighlight(t){for(const e of this.getSubLayers())e.updateAutoHighlight(t)}_getAttributeManager(){return null}_renderLayers(){let{subLayers:t}=this.internalState;const e=!t||this.needsUpdate();e&&(t=this.renderLayers(),t=gE(t,Boolean),this.internalState.subLayers=t),PE("compositeLayer.renderLayers",this,e,t);for(const n of t)n.parent=this}}return t.layerName="CompositeLayer",t})();const FP=/([0-9]+\.?[0-9]*)(%|px)/;function BP(t){switch(typeof t){case"number":return{position:t,relative:!1};case"string":const e=t.match(FP);if(e&&e.length>=3){const t="%"===e[2],n=parseFloat(e[1]);return{position:t?n/100:n,relative:t}}default:throw new Error("Could not parse position string ".concat(t))}}function VP(t,e){return t.relative?Math.round(t.position*e):t.position}function zP(t,e){if(t===e)return!0;if(!t||!e)return!1;for(const n in t){const i=t[n],r=e[n];if(!(i===r||Array.isArray(i)&&Array.isArray(r)&&zP(i,r)))return!1}return!0}class UP{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r="100%",height:s="100%",projectionMatrix:o=null,fovy:a=50,near:l=.1,far:c=1e3,modelMatrix:u=null,viewportInstance:h=null,type:d=WT}=t;uE(!h||h instanceof WT),this.viewportInstance=h,this.id=e||this.constructor.displayName||"view",this.type=d,this.props=ii(wt({},t),{id:this.id,projectionMatrix:o,fovy:a,near:l,far:c,modelMatrix:u}),this._parseDimensions({x:n,y:i,width:r,height:s}),this.equals=this.equals.bind(this),Object.seal(this)}equals(t){return this===t||(this.viewportInstance?t.viewportInstance&&this.viewportInstance.equals(t.viewportInstance):zP(this.props,t.props))}makeViewport({width:t,height:e,viewState:n}){if(this.viewportInstance)return this.viewportInstance;n=this.filterViewState(n);const i=this.getDimensions({width:t,height:e});return this._getViewport(n,i)}getViewStateId(){switch(typeof this.props.viewState){case"string":return this.props.viewState;case"object":return this.props.viewState&&this.props.viewState.id;default:return this.id}}filterViewState(t){if(this.props.viewState&&"object"==typeof this.props.viewState){if(!this.props.viewState.id)return this.props.viewState;const e=wt({},t);for(const t in this.props.viewState)"id"!==t&&(e[t]=this.props.viewState[t]);return e}return t}getDimensions({width:t,height:e}){return{x:VP(this._x,t),y:VP(this._y,e),width:VP(this._width,t),height:VP(this._height,e)}}_getControllerProps(t){let e=this.props.controller;return e?!0===e?t:("function"==typeof e&&(e={type:e}),wt(wt({},t),e)):null}_getViewport(t,e){const{type:n}=this;return new n(wt(wt(wt({},t),this.props),e))}_parseDimensions({x:t,y:e,width:n,height:i}){this._x=BP(t),this._y=BP(e),this._width=BP(n),this._height=BP(i)}}const HP=()=>{},$P={transitionEasing:t=>t,transitionInterruption:1,onTransitionStart:HP,onTransitionInterrupt:HP,onTransitionEnd:HP};class GP{constructor(t,e={}){this.ControllerState=t,this.props=wt(wt({},$P),e),this.propsInTransition=null,this.transition=new OO(e.timeline),this.onViewStateChange=e.onViewStateChange||HP,this.onStateChange=e.onStateChange||HP,this._onTransitionUpdate=this._onTransitionUpdate.bind(this)}finalize(){this.transition.cancel()}getViewportInTransition(){return this.propsInTransition}processViewStateChange(t){let e=!1;const n=this.props;if(t=wt(wt({},$P),t),this.props=t,this._shouldIgnoreViewportChange(n,t))return e;if(this._isTransitionEnabled(t)){const{interruption:i,endProps:r}=this.transition.settings,s=wt(wt({},n),2===i?r:this.propsInTransition||n);this._triggerTransition(s,t),e=!0}else this.transition.cancel();return e}updateTransition(){this.transition.update()}_isTransitionEnabled(t){const{transitionDuration:e,transitionInterpolator:n}=t;return(e>0||"auto"===e)&&Boolean(n)}_isUpdateDueToCurrentTransition(t){return!!this.transition.inProgress&&this.transition.settings.interpolator.arePropsEqual(t,this.propsInTransition)}_shouldIgnoreViewportChange(t,e){return this.transition.inProgress?3===this.transition.settings.interruption||this._isUpdateDueToCurrentTransition(e):!this._isTransitionEnabled(e)||e.transitionInterpolator.arePropsEqual(t,e)}_triggerTransition(t,e){const n=new this.ControllerState(t),i=new this.ControllerState(e).shortestPathFrom(n),{transitionInterpolator:r}=e,s=r.getDuration?r.getDuration(t,e):e.transitionDuration;if(0===s)return;const o=e.transitionInterpolator.initializeProps(t,i);this.propsInTransition={},this.duration=s,this.transition.start({duration:s,easing:e.transitionEasing,interpolator:e.transitionInterpolator,interruption:e.transitionInterruption,startProps:o.start,endProps:o.end,onStart:e.onTransitionStart,onUpdate:this._onTransitionUpdate,onInterrupt:this._onTransitionEnd(e.onTransitionInterrupt),onEnd:this._onTransitionEnd(e.onTransitionEnd)}),this.onStateChange({inTransition:!0}),this.updateTransition()}_onTransitionEnd(t){return e=>{this.propsInTransition=null,this.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1}),t(e)}}_onTransitionUpdate(t){const{time:e,settings:{interpolator:n,startProps:i,endProps:r,duration:s,easing:o}}=t,a=o(e/s),l=n.interpolateProps(i,r,a);this.propsInTransition=new this.ControllerState(wt(wt({},this.props),l)).getViewportProps(),this.onViewStateChange({viewState:this.propsInTransition,oldViewState:this.props})}}const WP=["longitude","latitude","zoom","bearing","pitch"],qP=["longitude","latitude","zoom"];class XP extends class{constructor(t={}){Array.isArray(t)&&(t={compare:t,extract:t,required:t});const{compare:e,extract:n,required:i}=t;this._propsToCompare=e,this._propsToExtract=n,this._requiredProps=i}arePropsEqual(t,e){for(const n of this._propsToCompare||Object.keys(e))if(!(n in t)||!(n in e)||!FS(t[n],e[n]))return!1;return!0}initializeProps(t,e){let n;if(this._propsToExtract){const i={},r={};for(const n of this._propsToExtract)i[n]=t[n],r[n]=e[n];n={start:i,end:r}}else n={start:t,end:e};return this._checkRequiredProps(n.start),this._checkRequiredProps(n.end),n}interpolateProps(t,e,n){return e}getDuration(t,e){return e.transitionDuration}_checkRequiredProps(t){!this._requiredProps||this._requiredProps.forEach(e=>{const n=t[e];uE(Number.isFinite(n)||Array.isArray(n),"".concat(e," is required for transition"))})}}{constructor(t={}){super((Array.isArray(t)?t:t.transitionProps)||{compare:WP,extract:WP,required:qP}),this.opts=t}initializeProps(t,e){const n=super.initializeProps(t,e),{makeViewport:i,around:r}=this.opts;if(i&&r){const s=i(t),o=i(e),a=s.unproject(r);n.start.around=r,Object.assign(n.end,{around:o.project(a),aroundPosition:a,width:e.width,height:e.height})}return n}interpolateProps(t,e,n){const i={};for(const r of this._propsToExtract)i[r]=jS(t[r]||0,e[r]||0,n);if(e.aroundPosition){const r=this.opts.makeViewport(wt(wt({},e),i));Object.assign(i,r.panByPosition(e.aroundPosition,jS(t.around,e.around,n)))}return i}}const YP={transitionDuration:0},KP={transitionDuration:300,transitionEasing:t=>t,transitionInterruption:1},QP=t=>1-(1-t)*(1-t),ZP=["wheel"],JP=["panstart","panmove","panend"],tM=["pinchstart","pinchmove","pinchend"],eM=["tripanstart","tripanmove","tripanend"],nM=["doubletap"],iM=["keydown"];class rM{constructor(t,e={}){this.ControllerState=t,this.controllerState=null,this.controllerStateProps=null,this.eventManager=null,this.transitionManager=new GP(t,ii(wt({},e),{onViewStateChange:this._onTransition.bind(this),onStateChange:this._setInteractionState.bind(this)}));const n=this.linearTransitionProps;this._transition=n&&ii(wt({},KP),{transitionInterpolator:new XP({transitionProps:n})}),this._events=null,this._interactionState={isDragging:!1},this._customEvents=[],this.onViewStateChange=null,this.onStateChange=null,this.handleEvent=this.handleEvent.bind(this),this.setProps(e)}get linearTransitionProps(){return null}set events(t){this.toggleEvents(this._customEvents,!1),this.toggleEvents(t,!0),this._customEvents=t,this.setProps(this.controllerStateProps)}finalize(){for(const t in this._events)this._events[t]&&this.eventManager.off(t,this.handleEvent);this.transitionManager.finalize()}handleEvent(t){const{ControllerState:e}=this;this.controllerState=new e(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state));const n=this._eventStartBlocked;switch(t.type){case"panstart":return!n&&this._onPanStart(t);case"panmove":return this._onPan(t);case"panend":return this._onPanEnd(t);case"pinchstart":return!n&&this._onPinchStart(t);case"pinchmove":return this._onPinch(t);case"pinchend":return this._onPinchEnd(t);case"tripanstart":return!n&&this._onTriplePanStart(t);case"tripanmove":return this._onTriplePan(t);case"tripanend":return this._onTriplePanEnd(t);case"doubletap":return this._onDoubleTap(t);case"wheel":return this._onWheel(t);case"keydown":return this._onKeyDown(t);default:return!1}}getCenter(t){const{x:e,y:n}=this.controllerStateProps,{offsetCenter:i}=t;return[i.x-e,i.y-n]}isPointInBounds(t,e){const{width:n,height:i}=this.controllerStateProps;if(e&&e.handled)return!1;const r=t[0]>=0&&t[0]<=n&&t[1]>=0&&t[1]<=i;return r&&e&&e.stopPropagation(),r}isFunctionKeyPressed(t){const{srcEvent:e}=t;return Boolean(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}isDragging(){return this._interactionState.isDragging}blockEvents(t){const e=setTimeout(()=>{this._eventStartBlocked===e&&(this._eventStartBlocked=null)},t);this._eventStartBlocked=e}setProps(t){"onViewStateChange"in t&&(this.onViewStateChange=t.onViewStateChange),"onStateChange"in t&&(this.onStateChange=t.onStateChange),"makeViewport"in t&&(this.makeViewport=t.makeViewport),"dragMode"in t&&(this.dragMode=t.dragMode),this.controllerStateProps=t,"eventManager"in t&&this.eventManager!==t.eventManager&&(this.eventManager=t.eventManager,this._events={},this.toggleEvents(this._customEvents,!0)),"transitionInterpolator"in t||(t.transitionInterpolator=this._getTransitionProps().transitionInterpolator),this.transitionManager.processViewStateChange(t);let{inertia:e}=t;!0===e&&(e=300),this.inertia=e;const{scrollZoom:n=!0,dragPan:i=!0,dragRotate:r=!0,doubleClickZoom:s=!0,touchZoom:o=!0,touchRotate:a=!1,keyboard:l=!0}=t,c=Boolean(this.onViewStateChange);this.toggleEvents(ZP,c&&n),this.toggleEvents(JP,c&&(i||r)),this.toggleEvents(tM,c&&(o||a)),this.toggleEvents(eM,c&&a),this.toggleEvents(nM,c&&s),this.toggleEvents(iM,c&&l),this.scrollZoom=n,this.dragPan=i,this.dragRotate=r,this.doubleClickZoom=s,this.touchZoom=o,this.touchRotate=a,this.keyboard=l}updateTransition(){this.transitionManager.updateTransition()}toggleEvents(t,e){this.eventManager&&t.forEach(t=>{this._events[t]!==e&&(this._events[t]=e,e?this.eventManager.on(t,this.handleEvent):this.eventManager.off(t,this.handleEvent))})}updateViewport(t,e={},n={}){const i=wt(wt({},t.getViewportProps()),e),r=this.controllerState!==t;if(this._state=t.getState(),this._setInteractionState(n),r){const t=this.controllerState?this.controllerState.getViewportProps():null;this.onViewStateChange&&this.onViewStateChange({viewState:i,interactionState:this._interactionState,oldViewState:t})}}_onTransition(t){this.onViewStateChange&&(t.interactionState=this._interactionState,this.onViewStateChange(t))}_setInteractionState(t){Object.assign(this._interactionState,t),this.onStateChange&&this.onStateChange(this._interactionState)}_onPanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;let n=this.isFunctionKeyPressed(t)||t.rightButton;(this.invertPan||"pan"===this.dragMode)&&(n=!n);const i=this.controllerState[n?"panStart":"rotateStart"]({pos:e});return this._panMove=n,this.updateViewport(i,YP,{isDragging:!0}),!0}_onPan(t){return!!this.isDragging()&&(this._panMove?this._onPanMove(t):this._onPanRotate(t))}_onPanEnd(t){return!!this.isDragging()&&(this._panMove?this._onPanMoveEnd(t):this._onPanRotateEnd(t))}_onPanMove(t){if(!this.dragPan)return!1;const e=this.getCenter(t),n=this.controllerState.pan({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isPanning:!0}),!0}_onPanMoveEnd(t){const{inertia:e}=this;if(this.dragPan&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.pan({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).panEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:!0})}else{const t=this.controllerState.panEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1})}return!0}_onPanRotate(t){if(!this.dragRotate)return!1;const e=this.getCenter(t),n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onPanRotateEnd(t){const{inertia:e}=this;if(this.dragRotate&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.rotate({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).rotateEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0})}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onWheel(t){if(!this.scrollZoom)return!1;t.preventDefault();const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const{speed:n=.01,smooth:i=!1}=this.scrollZoom,{delta:r}=t;let s=2/(1+Math.exp(-Math.abs(r*n)));r<0&&0!==s&&(s=1/s);const o=this.controllerState.zoom({pos:e,scale:s});return this.updateViewport(o,ii(wt({},this._getTransitionProps({around:e})),{transitionDuration:i?250:1}),{isZooming:!0,isPanning:!0}),!0}_onTriplePanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.rotateStart({pos:e});return this.updateViewport(n,YP,{isDragging:!0}),!0}_onTriplePan(t){if(!this.touchRotate||!this.isDragging())return!1;const e=this.getCenter(t);e[0]-=t.deltaX;const n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onTriplePanEnd(t){if(!this.isDragging())return!1;const{inertia:e}=this;if(this.touchRotate&&e&&t.velocityY){const n=this.getCenter(t),i=[n[0],n[1]+=t.velocityY*e/2],r=this.controllerState.rotate({pos:i});this.updateViewport(r,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0}),this.blockEvents(e)}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onPinchStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.zoomStart({pos:e}).rotateStart({pos:e});return this._startPinchRotation=t.rotation,this._lastPinchEvent=t,this.updateViewport(n,YP,{isDragging:!0}),!0}_onPinch(t){if(!this.touchZoom&&!this.touchRotate||!this.isDragging())return!1;let e=this.controllerState;if(this.touchZoom){const{scale:n}=t,i=this.getCenter(t);e=e.zoom({pos:i,scale:n})}if(this.touchRotate){const{rotation:n}=t;e=e.rotate({deltaAngleX:this._startPinchRotation-n})}return this.updateViewport(e,YP,{isDragging:!0,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:this.touchRotate}),this._lastPinchEvent=t,!0}_onPinchEnd(t){if(!this.isDragging())return!1;const{inertia:e,_lastPinchEvent:n}=this;if(this.touchZoom&&e&&n&&t.scale!==n.scale){const i=this.getCenter(t);let r=this.controllerState.rotateEnd();const s=Math.log2(t.scale),o=(s-Math.log2(n.scale))/(t.deltaTime-n.deltaTime),a=Math.pow(2,s+o*e/2);r=r.zoom({pos:i,scale:a}).zoomEnd(),this.updateViewport(r,ii(wt({},this._getTransitionProps({around:i})),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:!1}),this.blockEvents(e)}else{const t=this.controllerState.zoomEnd().rotateEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1,isZooming:!1,isRotating:!1})}return this._startPinchRotation=null,this._lastPinchEvent=null,!0}_onDoubleTap(t){if(!this.doubleClickZoom)return!1;const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.isFunctionKeyPressed(t),i=this.controllerState.zoom({pos:e,scale:n?.5:2});return this.updateViewport(i,this._getTransitionProps({around:e}),{isZooming:!0,isPanning:!0}),this.blockEvents(100),!0}_onKeyDown(t){if(!this.keyboard)return!1;const e=this.isFunctionKeyPressed(t),{zoomSpeed:n,moveSpeed:i,rotateSpeedX:r,rotateSpeedY:s}=this.keyboard,{controllerState:o}=this;let a;const l={};switch(t.srcEvent.code){case"Minus":a=e?o.zoomOut(n).zoomOut(n):o.zoomOut(n),l.isZooming=!0;break;case"Equal":a=e?o.zoomIn(n).zoomIn(n):o.zoomIn(n),l.isZooming=!0;break;case"ArrowLeft":e?(a=o.rotateLeft(r),l.isRotating=!0):(a=o.moveLeft(i),l.isPanning=!0);break;case"ArrowRight":e?(a=o.rotateRight(r),l.isRotating=!0):(a=o.moveRight(i),l.isPanning=!0);break;case"ArrowUp":e?(a=o.rotateUp(s),l.isRotating=!0):(a=o.moveUp(i),l.isPanning=!0);break;case"ArrowDown":e?(a=o.rotateDown(s),l.isRotating=!0):(a=o.moveDown(i),l.isPanning=!0);break;default:return!1}return this.updateViewport(a,this._getTransitionProps(),l),!0}_getTransitionProps(t){const{_transition:e}=this;return e?t?ii(wt({},e),{transitionInterpolator:new XP(ii(wt({},t),{transitionProps:this.linearTransitionProps,makeViewport:this.controllerState.makeViewport}))}):e:YP}}class sM{constructor(t){this._viewportProps=this._applyConstraints(t)}getViewportProps(){return this._viewportProps}getState(){return this._state}shortestPathFrom(t){return this._viewportProps}_applyConstraints(t){return t}}const oM=[0,0,0];class aM extends sM{constructor({makeViewport:t,width:e,height:n,rotationX:i=0,rotationOrbit:r=0,target:s=oM,zoom:o=0,minRotationX:a=-90,maxRotationX:l=90,minZoom:c=-(1/0),maxZoom:u=Infinity,startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m}){super({width:e,height:n,rotationX:i,rotationOrbit:r,target:s,zoom:o,minRotationX:a,maxRotationX:l,minZoom:c,maxZoom:u}),this._state={startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanPosition:this._unproject(t)})}pan({pos:t,startPosition:e}){const n=this._state.startPanPosition||e;if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanPosition:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startRotationX:this._viewportProps.rotationX,startRotationOrbit:this._viewportProps.rotationOrbit})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startRotationX:r,startRotationOrbit:s}=this._state,{width:o,height:a}=this._viewportProps;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let l;if(t){let e=(t[0]-i[0])/o;(r<-90||r>90)&&(e*=-1),l={rotationX:r+(t[1]-i[1])/a*180,rotationOrbit:s+180*e}}else l={rotationX:r+n,rotationOrbit:s+e};return this._getUpdatedState(l)}rotateEnd(){return this._getUpdatedState({startRotationX:null,startRotationOrbit:null})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{rotationOrbit:i}=n;return Math.abs(i-e.rotationOrbit)>180&&(n.rotationOrbit=i<0?i+360:i-360),n}zoomStart({pos:t}){return this._getUpdatedState({startZoomPosition:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){const{zoom:i}=this._viewportProps;let{startZoom:r,startZoomPosition:s}=this._state;Number.isFinite(r)||(r=i,s=this._unproject(e)||this._unproject(t));const o=this._calculateNewZoom({scale:n,startZoom:r}),a=this.makeViewport(ii(wt({},this._viewportProps),{zoom:o}));return this._getUpdatedState(wt({zoom:o},a.panByPosition(s,t)))}zoomEnd(){return this._getUpdatedState({startZoomPosition:null,startZoom:null})}zoomIn(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:t})})}zoomOut(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:1/t})})}moveLeft(t=50){return this._panFromCenter([-t,0])}moveRight(t=50){return this._panFromCenter([t,0])}moveUp(t=50){return this._panFromCenter([0,-t])}moveDown(t=50){return this._panFromCenter([0,t])}rotateLeft(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit-t})}rotateRight(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit+t})}rotateUp(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX-t})}rotateDown(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX+t})}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return Number.isFinite(e)||(e=this._viewportProps.zoom),LS(e+Math.log2(t),i,n)}_panFromCenter(t){const{width:e,height:n,target:i}=this._viewportProps;return this.pan({startPosition:i,pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new aM(wt(wt(wt({},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i,maxRotationX:r,minRotationX:s,rotationOrbit:o}=t;return t.zoom=LS(i,n,e),t.rotationX=LS(t.rotationX,s,r),(o<-180||o>180)&&(t.rotationOrbit=function(t,e){const n=t%360;return n<0?360+n:n}(o+180)-180),t}}class lM extends rM{constructor(t){super(aM,t)}get linearTransitionProps(){return["target","zoom","rotationX","rotationOrbit"]}}class cM extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(aM,t)}_onPanRotate(t){return!1}get linearTransitionProps(){return["target","zoom"]}}const uM=(new bT).lookAt({eye:[0,0,1]});function hM({width:t,height:e,near:n,far:i}){return t=t||1,e=e||1,(new bT).ortho({left:-t/2,right:t/2,bottom:-e/2,top:e/2,near:n,far:i})}class dM extends WT{constructor(t){const{width:e,height:n,near:i=.1,far:r=1e3,zoom:s=0,target:o=[0,0,0],flipY:a=!0}=t,l=Math.pow(2,s);super(ii(wt({},t),{longitude:null,position:o,viewMatrix:uM.clone().scale([l,l*(a?-1:1),l]),projectionMatrix:hM({width:e,height:n,near:i,far:r}),zoom:s}))}panByPosition(t,e){const n=uT([],t,hT([],LT(e,this.pixelUnprojectionMatrix)));return{target:uT([],this.center,n)}}}let pM=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:dM}))}get controller(){return this._getControllerProps({type:cM})}}return t.displayName="OrthographicView",t})();const fM=Math.PI/180;function gM({height:t,fovy:e,orbitAxis:n,rotationX:i,rotationOrbit:r,zoom:s}){const o=.5/Math.tan(e*fM/2),a="Z"===n?[0,0,1]:[0,1,0],l="Z"===n?[0,-o,0]:[0,0,o],c=(new bT).lookAt({eye:l,up:a});c.rotateX(i*fM),"Z"===n?c.rotateZ(r*fM):c.rotateY(r*fM);const u=Math.pow(2,s)/(t||1);return c.scale(u),c}class mM extends WT{constructor(t){const{height:e,fovy:n,orbitAxis:i,target:r=[0,0,0],rotationX:s=0,rotationOrbit:o=0,zoom:a=0}=t;super(ii(wt({},t),{longitude:null,viewMatrix:gM({height:e,fovy:n,orbitAxis:i,rotationX:s,rotationOrbit:o,zoom:a}),fovy:n,position:r,zoom:a})),this.projectedCenter=this.project(this.center)}unproject(t,{topLeft:e=!0}={}){const[n,i,r=this.projectedCenter[2]]=t,s=e?i:this.height-i,[o,a,l]=LT([n,s,r],this.pixelUnprojectionMatrix);return[o,a,l]}panByPosition(t,e){const n=this.project(t);return{target:this.unproject([this.width/2+n[0]-e[0],this.height/2+n[1]-e[1],this.projectedCenter[2]])}}}let bM=(()=>{class t extends UP{constructor(t={}){const{orbitAxis:e="Z"}=t;super(ii(wt({},t),{orbitAxis:e,type:mM}))}get controller(){return this._getControllerProps({type:lM})}}return t.displayName="OrbitView",t})();const yM=[255,255,255],vM=1;let _M=0;class wM{constructor(t={}){const{color:e=yM}=t,{intensity:n=vM}=t;this.id=t.id||"ambient-".concat(_M++),this.color=e,this.intensity=n,this.type="ambient"}}const xM=[255,255,255],SM=1,EM=[0,0,-1];let CM=0;class OM{constructor(t={}){const{color:e=xM}=t,{intensity:n=SM}=t,{direction:i=EM}=t,{_shadow:r=!1}=t;this.id=t.id||"directional-".concat(CM++),this.color=e,this.intensity=n,this.type="directional",this.direction=new nE(i).normalize().toArray(),this.shadow=r}getProjectedLight(){return this}}class TM{constructor(t={}){const{id:e="effect"}=t;this.id=e,this.props=wt({},t)}preRender(){}getModuleParameters(){}cleanup(){}}class kM extends class{constructor(t,e={}){const{id:n="pass"}=e;this.id=n,this.gl=t,this.props=wt({},e)}setProps(t){Object.assign(this.props,t)}render(){}cleanup(){}}{render(t){return yx(this.gl,{framebuffer:t.target}),this._drawLayers(t)}_drawLayers(t){const{viewports:e,views:n,onViewportActive:i,clearCanvas:r=!0}=t;t.pass=t.pass||"unknown";const s=this.gl;r&&function(t){yx(t,{viewport:[0,0,t.drawingBufferWidth,t.drawingBufferHeight]}),t.clear(16640)}(s);const o=[];for(const a of e){const e=a.viewport||a,r=n&&n[e.id];i(e);const l=this._getDrawLayerParams(e,t);t.view=r;const c=e.subViewports||[e];for(const n of c){t.viewport=n;const e=this._drawLayersInViewport(s,t,l);o.push(e)}}return o}_getDrawLayerParams(t,{layers:e,pass:n,layerFilter:i,effects:r,moduleParameters:s}){const o=[],a=AM(),l={viewport:t,isPicking:n.startsWith("picking"),renderPass:n};for(let c=0;cpS(t,e))}const a={totalCount:e.length,visibleCount:0,compositeCount:0,pickableCount:0};yx(t,{viewport:o});for(let c=0;c{const o=r.props._offset,a=r.id,l=r.parent&&r.parent.id;let c;if(l&&!(l in e)&&i(r.parent,!1),l in n){const t=n[l]=n[l]||AM(e[l],e);c=t(r,s),n[a]=t}else Number.isFinite(o)?(c=o+(e[l]||0),n[a]=null):c=t;return s&&c>=t&&(t=c+1),e[a]=c,c};return i}class PM extends kM{constructor(t,e){super(t,e),this.shadowMap=new lS(t,{width:1,height:1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.depthBuffer=new hS(t,{format:33189,width:1,height:1}),this.fbo=new SS(t,{id:"shadowmap",width:1,height:1,attachments:{36064:this.shadowMap,36096:this.depthBuffer}})}render(t){const e=this.fbo;vx(this.gl,{depthRange:[0,1],depthTest:!0,blend:!1,clearColor:[1,1,1,1]},()=>{const n=t.viewports[0],i=_x(this.gl),r=n.width*i,s=n.height*i;(r!==e.width||s!==e.height)&&e.resize({width:r,height:s}),super.render(ii(wt({},t),{target:e,pass:"shadow"}))})}shouldDrawLayer(t){return!1!==t.props.shadowEnabled}getModuleParameters(){return{drawToShadowMap:!0}}delete(){this.fbo&&(this.fbo.delete(),this.fbo=null),this.shadowMap&&(this.shadowMap.delete(),this.shadowMap=null),this.depthBuffer&&(this.depthBuffer.delete(),this.depthBuffer=null)}}const MM=Object.keys(Iw).map(t=>"const int COORDINATE_SYSTEM_".concat(t," = ").concat(Iw[t],";")).join(""),IM=Object.keys(Dw).map(t=>"const int PROJECTION_MODE_".concat(t," = ").concat(Dw[t],";")).join("");var DM="".concat(MM,"\n").concat(IM,"\n\nuniform int project_uCoordinateSystem;\nuniform int project_uProjectionMode;\nuniform float project_uScale;\nuniform bool project_uWrapLongitude;\nuniform vec3 project_uCommonUnitsPerMeter;\nuniform vec3 project_uCommonUnitsPerWorldUnit;\nuniform vec3 project_uCommonUnitsPerWorldUnit2;\nuniform vec4 project_uCenter;\nuniform mat4 project_uModelMatrix;\nuniform mat4 project_uViewProjectionMatrix;\nuniform vec2 project_uViewportSize;\nuniform float project_uDevicePixelRatio;\nuniform float project_uFocalDistance;\nuniform vec3 project_uCameraPosition;\nuniform vec3 project_uCoordinateOrigin;\nuniform vec3 project_uCommonOrigin;\n\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / (PI * 2.0);\nconst vec3 ZERO_64_LOW = vec3(0.0);\nconst float EARTH_RADIUS = 6370972.0;\nconst float GLOBE_RADIUS = 256.0;\nfloat project_size(float meters) {\n return meters * project_uCommonUnitsPerMeter.z;\n}\n\nvec2 project_size(vec2 meters) {\n return meters * project_uCommonUnitsPerMeter.xy;\n}\n\nvec3 project_size(vec3 meters) {\n return meters * project_uCommonUnitsPerMeter;\n}\n\nvec4 project_size(vec4 meters) {\n return vec4(meters.xyz * project_uCommonUnitsPerMeter, meters.w);\n}\nvec3 project_normal(vec3 vector) {\n vec4 normal_modelspace = project_uModelMatrix * vec4(vector, 0.0);\n return normalize(normal_modelspace.xyz * project_uCommonUnitsPerMeter);\n}\n\nvec4 project_offset_(vec4 offset) {\n float dy = offset.y;\n vec3 commonUnitsPerWorldUnit = project_uCommonUnitsPerWorldUnit + project_uCommonUnitsPerWorldUnit2 * dy;\n return vec4(offset.xyz * commonUnitsPerWorldUnit, offset.w);\n}\nvec2 project_mercator_(vec2 lnglat) {\n float x = lnglat.x;\n if (project_uWrapLongitude) {\n x = mod(x + 180., 360.0) - 180.;\n }\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan_fp32(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\nvec3 project_globe_(vec3 lnglatz) {\n float lambda = radians(lnglatz.x);\n float phi = radians(lnglatz.y);\n float cosPhi = cos(phi);\n float D = (lnglatz.z / EARTH_RADIUS + 1.0) * GLOBE_RADIUS;\n\n return vec3(\n sin(lambda) * cosPhi,\n -cos(lambda) * cosPhi,\n sin(phi)\n ) * D;\n}\nvec4 project_position(vec4 position, vec3 position64Low) {\n vec4 position_world = project_uModelMatrix * position;\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_mercator_(position_world.xy),\n project_size(position_world.z),\n position_world.w\n );\n }\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN) {\n position_world.xyz += project_uCoordinateOrigin;\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_globe_(position_world.xyz),\n position_world.w\n );\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n if (abs(position_world.y - project_uCoordinateOrigin.y) > 0.25) {\n return vec4(\n project_mercator_(position_world.xy) - project_uCommonOrigin.xy,\n project_size(position_world.z),\n position_world.w\n );\n }\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_IDENTITY ||\n (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET &&\n (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT ||\n project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN))) {\n position_world.xyz -= project_uCoordinateOrigin;\n }\n return project_offset_(position_world + project_uModelMatrix * vec4(position64Low, 0.0));\n}\n\nvec4 project_position(vec4 position) {\n return project_position(position, ZERO_64_LOW);\n}\n\nvec3 project_position(vec3 position, vec3 position64Low) {\n vec4 projected_position = project_position(vec4(position, 1.0), position64Low);\n return projected_position.xyz;\n}\n\nvec3 project_position(vec3 position) {\n vec4 projected_position = project_position(vec4(position, 1.0), ZERO_64_LOW);\n return projected_position.xyz;\n}\n\nvec2 project_position(vec2 position) {\n vec4 projected_position = project_position(vec4(position, 0.0, 1.0), ZERO_64_LOW);\n return projected_position.xy;\n}\n\nvec4 project_common_position_to_clipspace(vec4 position, mat4 viewProjectionMatrix, vec4 center) {\n return viewProjectionMatrix * position + center;\n}\nvec4 project_common_position_to_clipspace(vec4 position) {\n return project_common_position_to_clipspace(position, project_uViewProjectionMatrix, project_uCenter);\n}\nvec2 project_pixel_size_to_clipspace(vec2 pixels) {\n vec2 offset = pixels / project_uViewportSize * project_uDevicePixelRatio * 2.0;\n return offset * project_uFocalDistance;\n}\n\nfloat project_size_to_pixel(float meters) {\n return project_size(meters) * project_uScale;\n}\nfloat project_pixel_size(float pixels) {\n return pixels / project_uScale;\n}\nvec2 project_pixel_size(vec2 pixels) {\n return pixels / project_uScale;\n}\nmat3 project_get_orientation_matrix(vec3 up) {\n vec3 uz = normalize(up);\n vec3 ux = abs(uz.z) == 1.0 ? vec3(1.0, 0.0, 0.0) : normalize(vec3(uz.y, -uz.x, 0));\n vec3 uy = cross(uz, ux);\n return mat3(ux, uy, uz);\n}\n\nbool project_needs_rotation(vec3 commonPosition, out mat3 transform) {\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n transform = project_get_orientation_matrix(commonPosition);\n return true;\n }\n return false;\n}\n");const RM={};var NM={name:"project",dependencies:[{name:"fp32",vs:"#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\nconst float TWO_PI = 6.2831854820251465;\nconst float PI_2 = 1.5707963705062866;\nconst float PI_16 = 0.1963495463132858;\n\nconst float SIN_TABLE_0 = 0.19509032368659973;\nconst float SIN_TABLE_1 = 0.3826834261417389;\nconst float SIN_TABLE_2 = 0.5555702447891235;\nconst float SIN_TABLE_3 = 0.7071067690849304;\n\nconst float COS_TABLE_0 = 0.9807852506637573;\nconst float COS_TABLE_1 = 0.9238795042037964;\nconst float COS_TABLE_2 = 0.8314695954322815;\nconst float COS_TABLE_3 = 0.7071067690849304;\n\nconst float INVERSE_FACTORIAL_3 = 1.666666716337204e-01;\nconst float INVERSE_FACTORIAL_5 = 8.333333767950535e-03;\nconst float INVERSE_FACTORIAL_7 = 1.9841270113829523e-04;\nconst float INVERSE_FACTORIAL_9 = 2.75573188446287533e-06;\n\nfloat sin_taylor_fp32(float a) {\n float r, s, t, x;\n\n if (a == 0.0) {\n return 0.0;\n }\n\n x = -a * a;\n s = a;\n r = a;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_3;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_5;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_7;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_9;\n s = s + t;\n\n return s;\n}\n\nvoid sincos_taylor_fp32(float a, out float sin_t, out float cos_t) {\n if (a == 0.0) {\n sin_t = 0.0;\n cos_t = 1.0;\n }\n sin_t = sin_taylor_fp32(a);\n cos_t = sqrt(1.0 - sin_t * sin_t);\n}\n\nfloat tan_taylor_fp32(float a) {\n float sin_a;\n float cos_a;\n\n if (a == 0.0) {\n return 0.0;\n }\n float z = floor(a / TWO_PI);\n float r = a - TWO_PI * z;\n\n float t;\n float q = floor(r / PI_2 + 0.5);\n int j = int(q);\n\n if (j < -2 || j > 2) {\n return 1.0 / 0.0;\n }\n\n t = r - PI_2 * q;\n\n q = floor(t / PI_16 + 0.5);\n int k = int(q);\n int abs_k = int(abs(float(k)));\n\n if (abs_k > 4) {\n return 1.0 / 0.0;\n } else {\n t = t - PI_16 * q;\n }\n\n float u = 0.0;\n float v = 0.0;\n\n float sin_t, cos_t;\n float s, c;\n sincos_taylor_fp32(t, sin_t, cos_t);\n\n if (k == 0) {\n s = sin_t;\n c = cos_t;\n } else {\n if (abs(float(abs_k) - 1.0) < 0.5) {\n u = COS_TABLE_0;\n v = SIN_TABLE_0;\n } else if (abs(float(abs_k) - 2.0) < 0.5) {\n u = COS_TABLE_1;\n v = SIN_TABLE_1;\n } else if (abs(float(abs_k) - 3.0) < 0.5) {\n u = COS_TABLE_2;\n v = SIN_TABLE_2;\n } else if (abs(float(abs_k) - 4.0) < 0.5) {\n u = COS_TABLE_3;\n v = SIN_TABLE_3;\n }\n if (k > 0) {\n s = u * sin_t + v * cos_t;\n c = u * cos_t - v * sin_t;\n } else {\n s = u * sin_t - v * cos_t;\n c = u * cos_t + v * sin_t;\n }\n }\n\n if (j == 0) {\n sin_a = s;\n cos_a = c;\n } else if (j == 1) {\n sin_a = c;\n cos_a = -s;\n } else if (j == -1) {\n sin_a = -c;\n cos_a = s;\n } else {\n sin_a = -s;\n cos_a = -c;\n }\n return sin_a / cos_a;\n}\n#endif\n\nfloat tan_fp32(float a) {\n#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\n return tan_taylor_fp32(a);\n#else\n return tan(a);\n#endif\n}\n",fs:null}],vs:DM,getUniforms:function(t=RM){return t.viewport?function({viewport:t,devicePixelRatio:e=1,modelMatrix:n=null,coordinateSystem:i=Iw.DEFAULT,coordinateOrigin:r,autoWrapLongitude:s=!1}={}){i===Iw.DEFAULT&&(i=t.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN);const o=aT({viewport:t,devicePixelRatio:e,coordinateSystem:i,coordinateOrigin:r});return o.project_uWrapLongitude=s,o.project_uModelMatrix=n||rT,o}(t):{}}};const LM=$O(function({viewport:t,center:e}){return new bT(t.viewProjectionMatrix).invert().transform(e)}),jM=$O(function({viewport:t,shadowMatrices:e}){const n=[],i=t.pixelUnprojectionMatrix,r=t.isGeospatial?void 0:1,s=[[0,0,r],[t.width,0,r],[0,t.height,r],[t.width,t.height,r],[0,0,-1],[t.width,0,-1],[0,t.height,-1],[t.width,t.height,-1]].map(t=>function(t,e){const[n,i,r]=t,s=LT([n,i,r],e);return Number.isFinite(r)?s:[s[0],s[1],0]}(t,i));for(const o of e){const e=o.clone().translate(new nE(t.center).negate()),i=s.map(t=>e.transform(t)),r=(new bT).ortho({left:Math.min(...i.map(t=>t[0])),right:Math.max(...i.map(t=>t[0])),bottom:Math.min(...i.map(t=>t[1])),top:Math.max(...i.map(t=>t[1])),near:Math.min(...i.map(t=>-t[2])),far:Math.max(...i.map(t=>-t[2]))});n.push(r.multiplyRight(o))}return n}),FM=[0,0,0,1],BM=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0];var VM={name:"shadow",dependencies:[NM],vs:"\nconst int max_lights = 2;\nuniform mat4 shadow_uViewProjectionMatrices[max_lights];\nuniform vec4 shadow_uProjectCenters[max_lights];\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform int shadow_uLightId;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nvec4 shadow_setVertexPosition(vec4 position_commonspace) {\n if (shadow_uDrawShadowMap) {\n return project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[shadow_uLightId], shadow_uProjectCenters[shadow_uLightId]);\n }\n if (shadow_uUseShadowMap) {\n for (int i = 0; i < max_lights; i++) {\n if(i < int(shadow_uLightCount)) {\n vec4 shadowMap_position = project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[i], shadow_uProjectCenters[i]);\n shadow_vPosition[i] = (shadowMap_position.xyz / shadowMap_position.w + 1.0) / 2.0;\n }\n }\n }\n return gl_Position;\n}\n",fs:"\nconst int max_lights = 2;\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform sampler2D shadow_uShadowMap0;\nuniform sampler2D shadow_uShadowMap1;\nuniform vec4 shadow_uColor;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nconst vec4 bitPackShift = vec4(1.0, 255.0, 65025.0, 16581375.0);\nconst vec4 bitUnpackShift = 1.0 / bitPackShift;\nconst vec4 bitMask = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n\nfloat shadow_getShadowWeight(vec3 position, sampler2D shadowMap) {\n vec4 rgbaDepth = texture2D(shadowMap, position.xy);\n\n float z = dot(rgbaDepth, bitUnpackShift);\n return smoothstep(0.001, 0.01, position.z - z);\n}\n\nvec4 shadow_filterShadowColor(vec4 color) {\n if (shadow_uDrawShadowMap) {\n vec4 rgbaDepth = fract(gl_FragCoord.z * bitPackShift);\n rgbaDepth -= rgbaDepth.gbaa * bitMask;\n return rgbaDepth;\n }\n if (shadow_uUseShadowMap) {\n float shadowAlpha = 0.0;\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[0], shadow_uShadowMap0);\n if(shadow_uLightCount > 1.0) {\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[1], shadow_uShadowMap1);\n }\n shadowAlpha *= shadow_uColor.a / shadow_uLightCount;\n float blendedAlpha = shadowAlpha + color.a * (1.0 - shadowAlpha);\n\n return vec4(\n mix(color.rgb, shadow_uColor.rgb, shadowAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n return color;\n}\n",inject:{"vs:DECKGL_FILTER_GL_POSITION":"\n position = shadow_setVertexPosition(geometry.position);\n ","fs:DECKGL_FILTER_COLOR":"\n color = shadow_filterShadowColor(color);\n "},getUniforms:(t={},e={})=>{if(t.drawToShadowMap||t.shadowMaps&&t.shadowMaps.length>0){const{shadowEnabled:n=!0}=t;return n&&t.shadowMatrices&&t.shadowMatrices.length>0?function(t={},e={}){const n={shadow_uDrawShadowMap:Boolean(t.drawToShadowMap),shadow_uUseShadowMap:!!t.shadowMaps&&t.shadowMaps.length>0,shadow_uColor:t.shadowColor||FM,shadow_uLightId:t.shadowLightId||0,shadow_uLightCount:t.shadowMatrices.length},i=LM({viewport:t.viewport,center:e.project_uCenter}),r=[],s=jM({shadowMatrices:t.shadowMatrices,viewport:t.viewport}).slice();for(let o=0;o0?t.shadowMaps[o]:t.dummyShadowMap;return n}(t,e):{shadow_uDrawShadowMap:!1,shadow_uUseShadowMap:!1}}return{}}};const zM={color:[255,255,255],intensity:1},UM=[{color:[255,255,255],intensity:1,direction:[-1,3,-1]},{color:[255,255,255],intensity:.9,direction:[1,-8,-2.5]}],HM=[0,0,0,200/255];class $M extends TM{constructor(t){super(t),this.ambientLight=null,this.directionalLights=[],this.pointLights=[],this.shadowColor=HM,this.shadowPasses=[],this.shadowMaps=[],this.dummyShadowMap=null,this.shadow=!1,this.programManager=null;for(const e in t){const n=t[e];switch(n.type){case"ambient":this.ambientLight=n;break;case"directional":this.directionalLights.push(n);break;case"point":this.pointLights.push(n)}}this._applyDefaultLights(),this.shadow=this.directionalLights.some(t=>t.shadow)}preRender(t,{layers:e,layerFilter:n,viewports:i,onViewportActive:r,views:s}){if(this.shadow){this.shadowMatrices=this._createLightMatrix(),0===this.shadowPasses.length&&this._createShadowPasses(t),this.programManager||(this.programManager=sO.getDefaultProgramManager(t),VM&&this.programManager.addDefaultModule(VM)),this.dummyShadowMap||(this.dummyShadowMap=new lS(t,{width:1,height:1}));for(let t=0;te.getProjectedLight({layer:t})),pointLights:this.pointLights.map(e=>e.getProjectedLight({layer:t}))},e}cleanup(){for(const t of this.shadowPasses)t.delete();this.shadowPasses.length=0,this.shadowMaps.length=0,this.dummyShadowMap&&(this.dummyShadowMap.delete(),this.dummyShadowMap=null),this.shadow&&this.programManager&&(this.programManager.removeDefaultModule(VM),this.programManager=null)}_createLightMatrix(){const t=[];for(const e of this.directionalLights){const n=(new bT).lookAt({eye:new nE(e.direction).negate()});t.push(n)}return t}_createShadowPasses(t){for(let e=0;e=e.delay+e.duration*e.repeat}getTime(t){if(void 0===t)return this.time;const e=this.channels.get(t);return void 0===e?-1:e.time}setTime(t){this.time=Math.max(0,t);const e=this.channels.values();for(const i of e)this._setChannelTime(i,this.time);const n=this.animations.values();for(const i of n){const{animation:t,channel:e}=i;t.setTime(this.getTime(e))}}play(){this.playing=!0}pause(){this.playing=!1,this.lastEngineTime=-1}reset(){this.setTime(0)}attachAnimation(t,e){const n=WM++;return this.animations.set(n,{animation:t,channel:e}),t.setTime(this.getTime(e)),n}detachAnimation(t){this.animations.delete(t)}update(t){this.playing&&(-1===this.lastEngineTime&&(this.lastEngineTime=t),this.setTime(this.time+(t-this.lastEngineTime)),this.lastEngineTime=t)}_setChannelTime(t,e){const n=e-t.delay;n>=t.duration*t.repeat?t.time=t.duration*t.rate:(t.time=Math.max(0,n)%t.duration,t.time*=t.rate)}}class XM{constructor(t,e,n){this.id=t,this.context=n,this._loadCount=0,this._subscribers=new Set,this.setData(e)}subscribe(t){this._subscribers.add(t)}unsubscribe(t){this._subscribers.delete(t)}inUse(){return this._subscribers.size>0}delete(){}getData(){return this.isLoaded?this._error?Promise.reject(this._error):this._content:this._loader.then(()=>this.getData())}setData(t,e){if(t===this._data&&!e)return;this._data=t;const n=++this._loadCount;let i=t;"string"==typeof t&&(i=AP(t)),i instanceof Promise?(this.isLoaded=!1,this._loader=i.then(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=null,this._content=t)}).catch(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=t||!0)})):(this.isLoaded=!0,this._error=null,this._content=t);for(const r of this._subscribers)r.onChange(this.getData())}}class YM{constructor({gl:t,protocol:e}){this.protocol=e||"resource://",this._context={gl:t,resourceManager:this},this._resources={},this._consumers={},this._pruneRequest=null}contains(t){return!!t.startsWith(this.protocol)||t in this._resources}add({resourceId:t,data:e,forceUpdate:n=!1,persistent:i=!0}){let r=this._resources[t];r?r.setData(e,n):(r=new XM(t,e,this._context),this._resources[t]=r),r.persistent=i}remove(t){const e=this._resources[t];e&&(e.delete(),delete this._resources[t])}unsubscribe({consumerId:t}){const e=this._consumers[t];if(e){for(const t in e){const n=e[t];n.resource&&n.resource.unsubscribe(n)}delete this._consumers[t],this.prune()}}subscribe({resourceId:t,onChange:e,consumerId:n,requestId:i="default"}){const{_resources:r,protocol:s}=this;t.startsWith(s)&&(r[t=t.replace(s,"")]||this.add({resourceId:t,data:null,persistent:!1}));const o=r[t];if(this._track(n,i,o,e),o)return o.getData()}prune(){this._pruneRequest||(this._pruneRequest=setTimeout(()=>this._prune(),0))}finalize(){for(const t in this._resources)this._resources[t].delete()}_track(t,e,n,i){const r=this._consumers,s=r[t]=r[t]||{},o=s[e]||{};o.resource&&(o.resource.unsubscribe(o),o.resource=null,this.prune()),n&&(s[e]=o,o.onChange=i,o.resource=n,n.subscribe(o))}_prune(){this._pruneRequest=null;for(const t of Object.keys(this._resources)){const e=this._resources[t];!e.persistent&&!e.inUse()&&(e.delete(),delete this._resources[t])}}}const KM=[{name:"geometry",vs:"\nstruct VertexGeometry {\n vec4 position;\n vec3 worldPosition;\n vec3 worldPositionAlt;\n vec3 normal;\n vec2 uv;\n vec3 pickingColor;\n} geometry;\n",fs:"\n#define SMOOTH_EDGE_RADIUS 0.5\n\nstruct FragmentGeometry {\n vec2 uv;\n} geometry;\n\nfloat smoothedge(float edge, float x) {\n return smoothstep(edge - SMOOTH_EDGE_RADIUS, edge + SMOOTH_EDGE_RADIUS, x);\n}\n"},NM],QM=["vs:DECKGL_FILTER_SIZE(inout vec3 size, VertexGeometry geometry)","vs:DECKGL_FILTER_GL_POSITION(inout vec4 position, VertexGeometry geometry)","vs:DECKGL_FILTER_COLOR(inout vec4 color, VertexGeometry geometry)","fs:DECKGL_FILTER_COLOR(inout vec4 color, FragmentGeometry geometry)"];function ZM(t){const e=sO.getDefaultProgramManager(t);for(const n of KM)e.addDefaultModule(n);for(const n of QM)e.addShaderHook(n);return e}const JM=Object.seal({layerManager:null,resourceManager:null,deck:null,gl:null,stats:null,shaderCache:null,pickingFBO:null,mousePosition:null,userData:{}});class tI{constructor(t,{deck:e,stats:n,viewport:i,timeline:r}={}){this.lastRenderedLayers=[],this.layers=[],this.resourceManager=new YM({gl:t,protocol:"deck://"}),this.context=ii(wt({},JM),{layerManager:this,gl:t,deck:e,programManager:t&&ZM(t),stats:n||new Mx({id:"deck.gl"}),viewport:i||new WT({id:"DEFAULT-INITIAL-VIEWPORT"}),timeline:r||new qM,resourceManager:this.resourceManager}),this._nextLayers=null,this._needsRedraw="Initial render",this._needsUpdate=!1,this._debug=!1,this.activateViewport=this.activateViewport.bind(this),Object.seal(this)}finalize(){this.resourceManager.finalize();for(const t of this.layers)this._finalizeLayer(t)}needsRedraw(t={clearRedrawFlags:!1}){let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);for(const n of this.layers){const i=n.getNeedsRedraw(t);e=e||i}return e}needsUpdate(){return this._nextLayers&&this._nextLayers!==this.lastRenderedLayers?"layers changed":this._needsUpdate}setNeedsRedraw(t){this._needsRedraw=this._needsRedraw||t}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t}getLayers({layerIds:t=null}={}){return t?this.layers.filter(e=>t.find(t=>0===e.id.indexOf(t))):this.layers}setProps(t){"debug"in t&&(this._debug=t.debug),"userData"in t&&(this.context.userData=t.userData),"layers"in t&&(this._nextLayers=t.layers),"onError"in t&&(this.context.onError=t.onError)}setLayers(t,e){PE("layerManager.setLayers",this,e,t),this.lastRenderedLayers=t,t=gE(t,Boolean);for(const n of t)n.context=this.context;return this._updateLayers(this.layers,t),this}updateLayers(){const t=this.needsUpdate();t&&(this.setNeedsRedraw("updating layers: ".concat(t)),this.setLayers(this._nextLayers||this.lastRenderedLayers,t)),this._nextLayers=null}activateViewport(t){return PE("layerManager.activateViewport",this,t),t&&(this.context.viewport=t),this}_handleError(t,e,n){n.raiseError(e,"".concat(t," of ").concat(n))}_updateLayers(t,e){const n={};for(const s of t)n[s.id]?Mw.warn("Multiple old layers with same id ".concat(s.id))():n[s.id]=s;const i=[];this._updateSublayersRecursively(e,n,i),this._finalizeOldLayers(n);let r=!1;for(const s of i)if(s.hasUniformTransition()){r=!0;break}this._needsUpdate=r,this.layers=i}_updateSublayersRecursively(t,e,n){for(const r of t){r.context=this.context;const t=e[r.id];null===t&&Mw.warn("Multiple new layers with same id ".concat(r.id))(),e[r.id]=null;let s=null;try{this._debug&&t!==r&&r.validateProps(),t?(this._transferLayerState(t,r),this._updateLayer(r)):this._initializeLayer(r),n.push(r),s=r.isComposite&&r.getSubLayers()}catch(i){this._handleError("matching",i,r)}s&&this._updateSublayersRecursively(s,e,n)}}_finalizeOldLayers(t){for(const e in t){const n=t[e];n&&this._finalizeLayer(n)}}_initializeLayer(t){try{t._initialize(),t.lifecycle="Initialized"}catch(e){this._handleError("initialization",e,t)}}_transferLayerState(t,e){e._transferState(t),e.lifecycle="Matched. State transferred from previous layer",e!==t&&(t.lifecycle="Discarded. Awaiting garbage collection")}_updateLayer(t){try{t._update()}catch(e){this._handleError("update",e,t)}}_finalizeLayer(t){this._needsRedraw=this._needsRedraw||"finalized ".concat(t),t.lifecycle="No longer matched. Awaiting garbage collection";try{t._finalize(),t.lifecycle="Finalized! Awaiting garbage collection"}catch(e){this._handleError("finalization",e,t)}}}class eI{constructor(t={}){this.views=[],this.width=100,this.height=100,this.viewState={},this.controllers={},this.timeline=t.timeline,this._viewports=[],this._viewportMap={},this._isUpdating=!1,this._needsRedraw="Initial render",this._needsUpdate=!0,this._eventManager=t.eventManager,this._eventCallbacks={onViewStateChange:t.onViewStateChange,onInteractionStateChange:t.onInteractionStateChange},Object.seal(this),this.setProps(t)}finalize(){for(const t in this.controllers)this.controllers[t]&&this.controllers[t].finalize();this.controllers={}}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t,this._needsRedraw=this._needsRedraw||t}updateViewStates(){for(const t in this.controllers){const e=this.controllers[t];e&&e.updateTransition()}}getViewports(t){return t?this._viewports.filter(e=>e.containsPixel(t)):this._viewports}getViews(){const t={};return this.views.forEach(e=>{t[e.id]=e}),t}getView(t){return"string"==typeof t?this.views.find(e=>e.id===t):t}getViewState(t){const e=this.getView(t),n=e&&this.viewState[e.getViewStateId()]||this.viewState;return e?e.filterViewState(n):n}getViewport(t){return this._viewportMap[t]}unproject(t,e){const n=this.getViewports(),i={x:t[0],y:t[1]};for(let r=n.length-1;r>=0;--r){const s=n[r];if(s.containsPixel(i)){const n=t.slice();return n[0]-=s.x,n[1]-=s.y,s.unproject(n,e)}}return null}setProps(t){"views"in t&&this._setViews(t.views),"viewState"in t&&this._setViewState(t.viewState),("width"in t||"height"in t)&&this._setSize(t.width,t.height),this._isUpdating||this._update()}_update(){this._isUpdating=!0,this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._isUpdating=!1}_setSize(t,e){(t!==this.width||e!==this.height)&&(this.width=t,this.height=e,this.setNeedsUpdate("Size changed"))}_setViews(t){t=gE(t,Boolean),this._diffViews(t,this.views)&&this.setNeedsUpdate("views changed"),this.views=t}_setViewState(t){t?(!zP(t,this.viewState)&&this.setNeedsUpdate("viewState changed"),this.viewState=t):Mw.warn("missing `viewState` or `initialViewState`")()}_onViewStateChange(t,e){e.viewId=t,this._eventCallbacks.onViewStateChange&&this._eventCallbacks.onViewStateChange(e)}_createController(t,e){return new(0,e.type)(wt({timeline:this.timeline,eventManager:this._eventManager,onViewStateChange:this._onViewStateChange.bind(this,e.id),onStateChange:this._eventCallbacks.onInteractionStateChange,makeViewport:e=>t._getViewport(e,{width:e.width,height:e.height})},e))}_updateController(t,e,n,i){let r=t.controller;return r?(r=ii(wt(wt(wt({},e),t.props),r),{id:t.id,x:n.x,y:n.y,width:n.width,height:n.height}),i?i.setProps(r):i=this._createController(t,r),i):null}_rebuildViewports(){const{width:t,height:e,views:n}=this,i=this.controllers;this._viewports=[],this.controllers={};let r=!1;for(let s=n.length;s--;){const o=n[s],a=this.getViewState(o),l=o.makeViewport({width:t,height:e,viewState:a});let c=i[o.id];o.controller&&!c&&(r=!0),(r||!o.controller)&&c&&(c.finalize(),c=null),this.controllers[o.id]=this._updateController(o,a,l,c),this._viewports.unshift(l)}for(const s in i)i[s]&&!this.controllers[s]&&i[s].finalize();this._buildViewportMap()}_buildViewportMap(){this._viewportMap={},this._viewports.forEach(t=>{t.id&&(this._viewportMap[t.id]=this._viewportMap[t.id]||t)})}_diffViews(t,e){return t.length!==e.length||t.some((n,i)=>!t[i].equals(e[i]))}}class nI extends sM{constructor({makeViewport:t,width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o=0,pitch:a=0,altitude:l=1.5,maxZoom:c=20,minZoom:u=0,maxPitch:h=60,minPitch:d=0,startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y,normalize:v}={}){uE(Number.isFinite(r)),uE(Number.isFinite(i)),uE(Number.isFinite(s)),super({width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o,pitch:a,altitude:l,maxZoom:c,minZoom:u,maxPitch:h,minPitch:d,normalize:v}),this._state={startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanLngLat:this._unproject(t)})}pan({pos:t,startPos:e}){const n=this._state.startPanLngLat||this._unproject(e);if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanLngLat:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startBearing:this._viewportProps.bearing,startPitch:this._viewportProps.pitch})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startBearing:r,startPitch:s}=this._state;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let o;return o=t?this._calculateNewPitchAndBearing(ii(wt({},this._getRotationParams(t,i)),{startBearing:r,startPitch:s})):{bearing:r+e,pitch:s+n},this._getUpdatedState(o)}rotateEnd(){return this._getUpdatedState({startBearing:null,startPitch:null})}zoomStart({pos:t}){return this._getUpdatedState({startZoomLngLat:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){let{startZoom:i,startZoomLngLat:r}=this._state;Number.isFinite(i)||(i=this._viewportProps.zoom,r=this._unproject(e)||this._unproject(t));const s=this._calculateNewZoom({scale:n,startZoom:i}),o=this.makeViewport(ii(wt({},this._viewportProps),{zoom:s}));return this._getUpdatedState(wt({zoom:s},o.panByPosition(r,t)))}zoomEnd(){return this._getUpdatedState({startZoomLngLat:null,startZoom:null})}zoomIn(t=2){return this._zoomFromCenter(t)}zoomOut(t=2){return this._zoomFromCenter(1/t)}moveLeft(t=100){return this._panFromCenter([t,0])}moveRight(t=100){return this._panFromCenter([-t,0])}moveUp(t=100){return this._panFromCenter([0,t])}moveDown(t=100){return this._panFromCenter([0,-t])}rotateLeft(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing-t})}rotateRight(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing+t})}rotateUp(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch+t})}rotateDown(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch-t})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{bearing:i,longitude:r}=n;return Math.abs(i-e.bearing)>180&&(n.bearing=i<0?i+360:i-360),Math.abs(r-e.longitude)>180&&(n.longitude=r<0?r+360:r-360),n}_zoomFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.zoom({pos:[e/2,n/2],scale:t})}_panFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.pan({startPos:[e/2,n/2],pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new this.constructor(wt(wt(wt({makeViewport:this.makeViewport},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i}=t;t.zoom=LS(i,n,e);const{maxPitch:r,minPitch:s,pitch:o}=t;t.pitch=LS(o,s,r);const{normalize:a=!0}=t;return a&&Object.assign(t,function({width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s=0,bearing:o=0}){(n<-180||n>180)&&(n=vT(n+180,360)-180),(o<-180||o>180)&&(o=vT(o+180,360)-180);const a=_T(e/512);if(r<=a)r=a,i=0;else{const t=e/2/Math.pow(2,r),n=kT([0,t])[1];if(ie&&(i=e)}}return{width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s,bearing:o}}(t)),t}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return LS(e+Math.log2(t),i,n)}_calculateNewPitchAndBearing({deltaScaleX:t,deltaScaleY:e,startBearing:n,startPitch:i}){e=LS(e,-1,1);const{minPitch:r,maxPitch:s}=this._viewportProps;let o=i;return e>0?o=i+e*(s-i):e<0&&(o=i-e*(r-i)),{pitch:o,bearing:n+180*t}}_getRotationParams(t,e){const n=t[0]-e[0],i=t[1]-e[1],r=t[1],s=e[1],{width:o,height:a}=this._viewportProps,l=n/o;let c=0;return i>0?Math.abs(a-s)>5&&(c=i/(s-a)*1.2):i<0&&s>5&&(c=1-r/s),c=Math.min(1,Math.max(-1,c)),{deltaScaleX:l,deltaScaleY:c}}}class iI extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(nI,t)}setProps(t){const e=this.controllerStateProps;super.setProps(t),(!e||e.height!==t.height)&&this.updateViewport(new this.ControllerState(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state)))}get linearTransitionProps(){return["longitude","latitude","zoom","bearing","pitch"]}}let rI=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:qT}))}get controller(){return this._getControllerProps({type:iI})}}return t.displayName="MapView",t})();const sI=new $M;class oI{constructor(){this.effects=[],this._internalEffects=[],this._needsRedraw="Initial render",this.setEffects()}setProps(t){"effects"in t&&(t.effects.length!==this.effects.length||!zP(t.effects,this.effects))&&(this.setEffects(t.effects),this._needsRedraw="effects changed")}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}getEffects(){return this._internalEffects}finalize(){this.cleanup()}setEffects(t=[]){this.cleanup(),this.effects=t,this._createInternalEffects()}cleanup(){for(const t of this.effects)t.cleanup();for(const t of this._internalEffects)t.cleanup();this.effects.length=0,this._internalEffects.length=0}_createInternalEffects(){this._internalEffects=this.effects.slice(),this.effects.some(t=>t instanceof $M)||this._internalEffects.push(sI)}}class aI extends kM{}const lI={blendFunc:[1,0,32771,0],blendEquation:32774};class cI extends kM{render(t){t.pickingFBO?(this.useAlpha=!0,this._drawPickingBuffer(t)):(this.useAlpha=!1,super.render(t))}_drawPickingBuffer({layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pickingFBO:s,deviceRect:{x:o,y:a,width:l,height:c},pass:u="picking",redrawReason:h,pickZ:d}){const p=this.gl;return this.pickZ=d,vx(p,ii(wt({scissorTest:!0,scissor:[o,a,l,c],clearColor:[0,0,0,0],depthMask:!0,depthTest:!0,depthRange:[0,1],colorMask:[!0,!0,!0,!0]},lI),{blend:!d}),()=>{super.render({target:s,layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pass:u,redrawReason:h})})}shouldDrawLayer(t){return t.props.pickable}getModuleParameters(){return{pickingActive:1,pickingAttribute:this.pickZ,lightSources:{}}}getLayerParameters(t,e){const n=this.pickZ?{blend:!1}:ii(wt({},lI),{blend:!0,blendColor:[0,0,0,this.useAlpha?(e+1)/255:1]});return wt(wt({},t.props.parameters),n)}}class uI{constructor(t){this.gl=t,this.layerFilter=null,this.drawPickingColors=!1,this.drawLayersPass=new aI(t),this.pickLayersPass=new cI(t),this.renderCount=0,this._needsRedraw="Initial render",this.renderBuffers=[],this.lastPostProcessEffect=null}setProps(t){"layerFilter"in t&&this.layerFilter!==t.layerFilter&&(this.layerFilter=t.layerFilter,this._needsRedraw="layerFilter changed"),"drawPickingColors"in t&&this.drawPickingColors!==t.drawPickingColors&&(this.drawPickingColors=t.drawPickingColors,this._needsRedraw="drawPickingColors changed")}renderLayers(t){const e=this.drawPickingColors?this.pickLayersPass:this.drawLayersPass;t.layerFilter=this.layerFilter,t.effects=t.effects||[],t.target=t.target||SS.getDefaultFramebuffer(this.gl),this._preRender(t.effects,t);const n=this.lastPostProcessEffect?this.renderBuffers[0]:t.target,i=e.render(ii(wt({},t),{target:n}));this._postRender(t.effects,t),this.renderCount++,PE("deckRenderer.renderLayers",this,i,t)}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}finalize(){const{renderBuffers:t}=this;for(const e of t)e.delete();t.length=0}_preRender(t,e){let n=null;for(const i of t)i.preRender(this.gl,e),i.postRender&&(n=i);n&&this._resizeRenderBuffers(),this.lastPostProcessEffect=n}_resizeRenderBuffers(){const{renderBuffers:t}=this;0===t.length&&t.push(new SS(this.gl),new SS(this.gl));for(const e of t)e.resize()}_postRender(t,e){const{renderBuffers:n}=this,i={inputBuffer:n[0],swapBuffer:n[1],target:null};for(const r of t)if(r.postRender){if(r===this.lastPostProcessEffect){i.target=e.target,r.postRender(this.gl,i);break}const t=r.postRender(this.gl,i);i.inputBuffer=t,i.swapBuffer=t===n[0]?n[1]:n[0]}}}const hI={pickedColor:null,pickedLayer:null,pickedObjectIndex:-1};function dI({pickedColors:t,layers:e,deviceX:n,deviceY:i,deviceRadius:r,deviceRect:s}){if(t){const{x:o,y:a,width:l,height:c}=s;let u=r*r,h=-1,d=0;for(let e=0;eu)d+=4*l;else for(let e=0;e=0){const t=e+o-n,i=t*t+s;i<=u&&(u=i,h=d)}d+=4}}if(h>=0){const n=t[h+3]-1,i=t.slice(h,h+4),r=e[n];if(r){const t=r.decodePickingColor(i),e=Math.floor(h/4/l);return{pickedColor:i,pickedLayer:r,pickedObjectIndex:t,pickedX:o+(h/4-e*l),pickedY:a+e}}Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}return hI}function pI({pickInfo:t,mode:e,viewports:n,layerFilter:i,pixelRatio:r,x:s,y:o,z:a}){const l=t&&t.pickedLayer,c=function(t,e,n){for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.containsPixel(e)&&(!n||n(r)))return r}return t[0]}(n,{x:s,y:o},i&&l&&(t=>i({layer:l,viewport:t,isPicking:!0,renderPass:"picking:".concat(e)}))),u=c&&c.unproject([s-c.x,o-c.y],{targetZ:a});return{color:null,layer:null,viewport:c,index:-1,picked:!1,x:s,y:o,pixel:[s,o],coordinate:u,devicePixel:t&&[t.pickedX,t.pickedY],pixelRatio:r}}function fI(t){const{pickInfo:e,lastPickedInfo:n,mode:i,layers:r}=t,{pickedColor:s,pickedLayer:o,pickedObjectIndex:a}=e,l=o?[o]:[];if("hover"===i){const t=n.index,e=n.layerId,i=o&&o.props.id;if(i!==e||a!==t){if(i!==e){const t=r.find(t=>t.props.id===e);t&&l.unshift(t)}n.layerId=i,n.index=a,n.info=null}}const c=pI(t),u=new Map;return u.set(null,c),l.forEach(t=>{let e=wt({},c);t===o&&(e.color=s,e.index=a,e.picked=!0),e=gI({layer:t,info:e,mode:i}),t===o&&"hover"===i&&(n.info=e),u.set(e.layer.id,e),"hover"===i&&e.layer.updateAutoHighlight(e)}),u}function gI({layer:t,info:e,mode:n}){for(;t&&e;){const i=e.layer||null;e.sourceLayer=i,e.layer=t,e=t.getPickingInfo({info:e,mode:n,sourceLayer:i}),t=t.parent}return e}class mI{constructor(t){this.gl=t,this.pickingFBO=null,this.pickLayersPass=new cI(t),this.layerFilter=null,this.lastPickedInfo={index:-1,layerId:null,info:null}}setProps(t){"layerFilter"in t&&(this.layerFilter=t.layerFilter),"_pickable"in t&&(this._pickable=t._pickable)}finalize(){this.pickingFBO&&this.pickingFBO.delete(),this.depthFBO&&(this.depthFBO.color.delete(),this.depthFBO.delete())}pickObject(t){return this._pickClosestObject(t)}pickObjects(t){return this._pickVisibleObjects(t)}getLastPickedObject({x:t,y:e,layers:n,viewports:i},r=this.lastPickedInfo.info){const s=r&&r.layer&&r.layer.id,o=r&&r.viewport&&r.viewport.id,a=s?n.find(t=>t.id===s):null,l=o&&i.find(t=>t.id===o)||i[0],c=l&&l.unproject([t-l.x,e-l.y]),u={x:t,y:e,viewport:l,coordinate:c,layer:a};return a?wt(wt({},r),u):Object.assign(u,{color:null,object:null,index:-1})}_resizeBuffer(){const{gl:t}=this;return this.pickingFBO||(this.pickingFBO=new SS(t),SS.isSupported(t,{colorBufferFloat:!0})&&(this.depthFBO=new SS(t),this.depthFBO.attach({36064:new lS(t,{format:Fw(t)?34836:6408,type:5126})}))),this.pickingFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.depthFBO&&this.depthFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.pickingFBO}_getPickable(t){if(!1===this._pickable)return null;const e=t.filter(t=>t.isPickable()&&!t.isComposite);return e.length>255?(Mw.warn("Too many pickable layers, only picking the first 255")(),e.slice(0,255)):e.length?e:null}_pickClosestObject({layers:t,views:e,viewports:n,x:i,y:r,radius:s=0,depth:o=1,mode:a="query",unproject3D:l,onViewportActive:c}){if(!(t=this._getPickable(t)))return{result:[],emptyInfo:pI({viewports:n,x:i,y:r})};this._resizeBuffer();const u=_x(this.gl),h=wx(this.gl,[i,r],!0),d=[h.x+Math.floor(h.width/2),h.y+Math.floor(h.height/2)],p=Math.round(s*u),{width:f,height:g}=this.pickingFBO,m=this._getPickingRect({deviceX:d[0],deviceY:d[1],deviceRadius:p,deviceWidth:f,deviceHeight:g});let b;const y=[],v={};for(let _=0;_=0){const s=t.slice(i,i+4),o=s.join(",");if(!n.has(o)){const t=e[r];t?n.set(o,{pickedColor:s,pickedLayer:t,pickedObjectIndex:t.decodePickingColor(s)}):Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}}return Array.from(n.values())}({pickedColors:this._drawAndSample({layers:t,views:e,viewports:n,onViewportActive:c,deviceRect:{x:d,y:g,width:f.x+f.width-d,height:p-g},pass:"picking:".concat(a),redrawReason:a}),layers:t}),b=new Map,y=Number.isFinite(l);for(let v=0;v=l);v++){const t=m[v];let e={color:t.pickedColor,layer:null,index:t.pickedObjectIndex,picked:!0,x:i,y:r,width:s,height:o,pixelRatio:u};e=gI({layer:t.pickedLayer,info:e,mode:a}),b.has(e.object)||b.set(e.object,e)}return Array.from(b.values())}_drawAndSample({layers:t,views:e,viewports:n,onViewportActive:i,deviceRect:r,pass:s,redrawReason:o,pickZ:a}){if(t.length<1)return null;const l=a?this.depthFBO:this.pickingFBO;this.pickLayersPass.render({layers:t,layerFilter:this.layerFilter,views:e,viewports:n,onViewportActive:i,pickingFBO:l,deviceRect:r,pass:s,redrawReason:o,pickZ:a});const{x:c,y:u,width:h,height:d}=r,p=new(a?Float32Array:Uint8Array)(h*d*4);return _S(l,{sourceX:c,sourceY:u,sourceWidth:h,sourceHeight:d,target:p}),p}_getPickingRect({deviceX:t,deviceY:e,deviceRadius:n,deviceWidth:i,deviceHeight:r}){const s=Math.max(0,t-n),o=Math.max(0,e-n),a=Math.min(i,t+n+1)-s,l=Math.min(r,e+n+1)-o;return a<=0||l<=0?null:{x:s,y:o,width:a,height:l}}}const bI={zIndex:1,position:"absolute",pointerEvents:"none",color:"#a0a7b4",backgroundColor:"#29323c",padding:"10px",top:0,left:0,display:"none"};class yI{constructor(t){const e=t.parentElement;e&&(this.el=document.createElement("div"),this.el.className="deck-tooltip",Object.assign(this.el.style,bI),e.appendChild(this.el)),this.isVisible=!1}setTooltip(t,e,n){const i=this.el;if("string"==typeof t)i.innerText=t;else{if(!t)return this.isVisible=!1,void(i.style.display="none");"text"in t&&(i.innerText=t.text),"html"in t&&(i.innerHTML=t.html),"className"in t&&(i.className=t.className),Object.assign(i.style,t.style)}this.isVisible=!0,i.style.display="block",i.style.transform="translate(".concat(e,"px, ").concat(n,"px)")}remove(){this.el&&this.el.remove()}}function vI(t,e){if(!t)throw new Error(e)}const _I={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},wI=_I.global||_I.self||_I.window,xI="object"!=typeof process||"[object process]"!==String(process)||process.browser,SI="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),{_parseImageNode:EI}=(SI&&parseFloat(SI[1]),wI),CI="undefined"!=typeof Image,OI="undefined"!=typeof ImageBitmap,TI=Boolean(EI),kI=!!xI||TI;function AI(t){const e=function(t){return"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?"imagebitmap":"undefined"!=typeof Image&&t instanceof Image?"image":t&&"object"==typeof t&&t.data&&t.width&&t.height?"data":null}(t);if(!e)throw new Error("Not an image");return e}function PI(t){switch(AI(t)){case"data":return t;case"image":case"imagebitmap":const e=document.createElement("canvas"),n=e.getContext("2d");if(!n)throw new Error("getImageData");return e.width=t.width,e.height=t.height,n.drawImage(t,0,0),n.getImageData(0,0,t.width,t.height);default:throw new Error("getImageData")}}const MI=/^data:image\/svg\+xml/,II=/\.svg((\?|#).*)?$/;function DI(t){return t&&(MI.test(t)||II.test(t))}function RI(t,e){if(DI(e)){let e=(new TextDecoder).decode(t);try{"function"==typeof unescape&&"function"==typeof encodeURIComponent&&(e=unescape(encodeURIComponent(e)))}catch(n){throw new Error(n.message)}return`data:image/svg+xml;base64,${btoa(e)}`}return NI(t,e)}function NI(t,e){if(DI(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}function LI(t,e,n){return jI.apply(this,arguments)}function jI(){return(jI=gS(function*(t,e,n){const i=RI(t,n),r=self.URL||self.webkitURL,s="string"!=typeof i&&r.createObjectURL(i);try{return yield FI(s||i,e)}finally{s&&r.revokeObjectURL(s)}})).apply(this,arguments)}function FI(t,e){return BI.apply(this,arguments)}function BI(){return(BI=gS(function*(t,e){const n=new Image;return n.src=t,e.image&&e.image.decode&&n.decode?(yield n.decode(),n):yield new Promise((e,i)=>{try{n.onload=()=>e(n),n.onerror=e=>i(new Error(`Could not load image ${t}: ${e}`))}catch(r){i(r)}})})).apply(this,arguments)}const VI={};let zI=!0;function UI(t,e,n){return HI.apply(this,arguments)}function HI(){return(HI=gS(function*(t,e,n){let i;i=DI(n)?yield LI(t,e,n):NI(t,n);const r=e&&e.imagebitmap;return yield $I(i,r)})).apply(this,arguments)}function $I(t){return GI.apply(this,arguments)}function GI(){return(GI=gS(function*(t,e=null){if((WI(e)||!zI)&&(e=null),e)try{return yield createImageBitmap(t,e)}catch(n){console.warn(n),zI=!1}return yield createImageBitmap(t)})).apply(this,arguments)}function WI(t){for(const e in t||VI)return!1;return!0}const qI=!1,XI=!0;function YI(t){const e=KI(t);return function(t){const e=KI(t);return e.byteLength>=24&&2303741511===e.getUint32(0,qI)?{mimeType:"image/png",width:e.getUint32(16,qI),height:e.getUint32(20,qI)}:null}(e)||function(t){const e=KI(t);if(!(e.byteLength>=3&&65496===e.getUint16(0,qI)&&255===e.getUint8(2)))return null;const{tableMarkers:n,sofMarkers:i}=function(){const t=new Set([65499,65476,65484,65501,65534]);for(let e=65504;e<65520;++e)t.add(e);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}();let r=2;for(;r+9=10&&1195984440===e.getUint32(0,qI)?{mimeType:"image/gif",width:e.getUint16(6,XI),height:e.getUint16(8,XI)}:null}(e)||function(t){const e=KI(t);return e.byteLength>=14&&16973===e.getUint16(0,qI)&&e.getUint32(2,XI)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,XI),height:e.getUint32(22,XI)}:null}(e)}function KI(t){if(t instanceof DataView)return t;if(ArrayBuffer.isView(t))return new DataView(t.buffer);if(t instanceof ArrayBuffer)return new DataView(t);throw new Error("toDataView")}function QI(t,e){const{mimeType:n}=YI(t)||{},{_parseImageNode:i}=wI;return vI(i),i(t,n,e)}function ZI(){return(ZI=gS(function*(t,e,n){const i=((e=e||{}).image||{}).type||"auto",{url:r}=n||{};let s;switch(JI(i)){case"imagebitmap":s=yield UI(t,e,r);break;case"image":s=yield LI(t,e,r);break;case"data":s=yield QI(t,e);break;default:vI(!1)}return"data"===i&&(s=PI(s)),s})).apply(this,arguments)}function JI(t){switch(t){case"auto":case"data":return function(){if(OI)return"imagebitmap";if(CI)return"image";if(kI)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}();default:return function(t){switch(t){case"auto":return OI||CI||kI;case"imagebitmap":return OI;case"image":return CI;case"data":return kI;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}(t),t}}const tD={id:"image",module:"images",name:"Images",version:"3.0.12",mimeTypes:["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],extensions:["png","jpg","jpeg","gif","webp","bmp","ico","svg"],parse:function(t,e,n){return ZI.apply(this,arguments)},tests:[t=>Boolean(YI(new DataView(t)))],options:{image:{type:"auto",decode:!0}}};var eD={name:"JSON",extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:function(t){const e=t[0],n=t[t.length-1];return"{"===e&&"}"===n||"["===e&&"]"===n},parseTextSync:JSON.parse};const nD="8.5.8",iD=zw.CO.deck&&zw.CO.deck.VERSION;if(iD&&iD!==nD)throw new Error("deck.gl - multiple versions detected: ".concat(iD," vs ").concat(nD));iD||(Mw.log(1,"deck.gl ".concat(nD))(),zw.CO.deck=Object.assign(zw.CO.deck||{},{VERSION:nD,version:nD,log:Mw,_registerLoggers:function(t){AE=t}}),fP([eD,[tD,{imagebitmap:{premultiplyAlpha:"none"}}]]));var rD=zw.CO.deck;class sD extends Hx{static isSupported(t,e=[]){const n=Fw(t),i=OS(t,"TIMER_QUERY");let r=n||i;for(const s of e)switch(s){case"queries":r=r&&n;break;case"timers":r=r&&i;break;default:Rx(!1)}return r}constructor(t,e={}){super(t,e),this.target=null,this._queryPending=!1,this._pollingPromise=null,Object.seal(this)}beginTimeElapsedQuery(){return this.begin(35007)}beginOcclusionQuery({conservative:t=!1}={}){return this.begin(t?36202:35887)}beginTransformFeedbackQuery(){return this.begin(35976)}begin(t){return this._queryPending||(this.target=t,this.gl2.beginQuery(this.target,this.handle)),this}end(){return this._queryPending||this.target&&(this.gl2.endQuery(this.target),this.target=null,this._queryPending=!0),this}isResultAvailable(){if(!this._queryPending)return!1;const t=this.gl2.getQueryParameter(this.handle,34919);return t&&(this._queryPending=!1),t}isTimerDisjoint(){return this.gl2.getParameter(36795)}getResult(){return this.gl2.getQueryParameter(this.handle,34918)}getTimerMilliseconds(){return this.getResult()/1e6}createPoll(t=Number.POSITIVE_INFINITY){if(this._pollingPromise)return this._pollingPromise;let e=0;return this._pollingPromise=new Promise((n,i)=>{const r=()=>{this.isResultAvailable()?(n(this.getResult()),this._pollingPromise=null):e++>t?(i("Timed out"),this._pollingPromise=null):requestAnimationFrame(r)};requestAnimationFrame(r)}),this._pollingPromise}_createHandle(){return sD.isSupported(this.gl)?this.gl2.createQuery():null}_deleteHandle(){this.gl2.deleteQuery(this.handle)}}const oD=(0,zw.jU)()&&"undefined"!=typeof document;let aD=0;class lD{constructor(t={}){const{onCreateContext:e=(t=>Tx(t)),onAddHTML:n=null,onInitialize:i=(()=>{}),onRender:r=(()=>{}),onFinalize:s=(()=>{}),onError:o,gl:a=null,glOptions:l={},debug:c=!1,createFramebuffer:u=!1,autoResizeViewport:h=!0,autoResizeDrawingBuffer:d=!0,stats:p=Dx.get("animation-loop-"+aD++)}=t;let{useDevicePixels:f=!0}=t;"useDevicePixelRatio"in t&&(Nw.deprecated("useDevicePixelRatio","useDevicePixels")(),f=t.useDevicePixelRatio),this.props={onCreateContext:e,onAddHTML:n,onInitialize:i,onRender:r,onFinalize:s,onError:o,gl:a,glOptions:l,debug:c,createFramebuffer:u},this.gl=a,this.needsRedraw=null,this.timeline=null,this.stats=p,this.cpuTime=this.stats.get("CPU Time"),this.gpuTime=this.stats.get("GPU Time"),this.frameRate=this.stats.get("Frame Rate"),this._initialized=!1,this._running=!1,this._animationFrameId=null,this._nextFramePromise=null,this._resolveNextFrame=null,this._cpuStartTime=0,this.setProps({autoResizeViewport:h,autoResizeDrawingBuffer:d,useDevicePixels:f}),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this._pageLoadPromise=null,this._onMousemove=this._onMousemove.bind(this),this._onMouseleave=this._onMouseleave.bind(this)}delete(){this.stop(),this._setDisplay(null)}setNeedsRedraw(t){return Rx("string"==typeof t),this.needsRedraw=this.needsRedraw||t,this}setProps(t){return"autoResizeViewport"in t&&(this.autoResizeViewport=t.autoResizeViewport),"autoResizeDrawingBuffer"in t&&(this.autoResizeDrawingBuffer=t.autoResizeDrawingBuffer),"useDevicePixels"in t&&(this.useDevicePixels=t.useDevicePixels),this}start(t={}){if(this._running)return this;this._running=!0;const e=this._getPageLoadPromise().then(()=>!this._running||this._initialized?null:(this._createWebGLContext(t),this._createFramebuffer(),this._startEventHandling(),this._initializeCallbackData(),this._updateCallbackData(),this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._gpuTimeQuery=sD.isSupported(this.gl,["timers"])?new sD(this.gl):null,this._initialized=!0,this.onInitialize(this.animationProps))).then(t=>{this._running&&(this._addCallbackData(t||{}),!1!==t&&this._startLoop())});return this.props.onError&&e.catch(this.props.onError),this}redraw(){return this.isContextLost()||(this._beginTimers(),this._setupFrame(),this._updateCallbackData(),this._renderFrame(this.animationProps),this._clearNeedsRedraw(),this.offScreen&&this.gl.commit&&this.gl.commit(),this._resolveNextFrame&&(this._resolveNextFrame(this),this._nextFramePromise=null,this._resolveNextFrame=null),this._endTimers()),this}stop(){return this._running&&(this._finalizeCallbackData(),this._cancelAnimationFrame(this._animationFrameId),this._nextFramePromise=null,this._resolveNextFrame=null,this._animationFrameId=null,this._running=!1),this}attachTimeline(t){return this.timeline=t,this.timeline}detachTimeline(){this.timeline=null}waitForRender(){return this.setNeedsRedraw("waitForRender"),this._nextFramePromise||(this._nextFramePromise=new Promise(t=>{this._resolveNextFrame=t})),this._nextFramePromise}toDataURL(){var t=this;return gS(function*(){return t.setNeedsRedraw("toDataURL"),yield t.waitForRender(),t.gl.canvas.toDataURL()})()}isContextLost(){return this.gl.isContextLost()}onCreateContext(...t){return this.props.onCreateContext(...t)}onInitialize(...t){return this.props.onInitialize(...t)}onRender(...t){return this.props.onRender(...t)}onFinalize(...t){return this.props.onFinalize(...t)}getHTMLControlValue(t,e=1){const n=document.getElementById(t);return n?Number(n.value):e}setViewParameters(){return Nw.removed("AnimationLoop.setViewParameters","AnimationLoop.setProps")(),this}_startLoop(){const t=()=>{!this._running||(this.redraw(),this._animationFrameId=this._requestAnimationFrame(t))};this._cancelAnimationFrame(this._animationFrameId),this._animationFrameId=this._requestAnimationFrame(t)}_getPageLoadPromise(){return this._pageLoadPromise||(this._pageLoadPromise=oD?new Promise((t,e)=>{oD&&"complete"===document.readyState?t(document):window.addEventListener("load",()=>{t(document)})}):Promise.resolve({})),this._pageLoadPromise}_setDisplay(t){this.display&&(this.display.delete(),this.display.animationLoop=null),t&&(t.animationLoop=this),this.display=t}_cancelAnimationFrame(t){return this.display&&this.display.cancelAnimationFrame?this.display.cancelAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.cancelAnimationFrame?window.cancelAnimationFrame(t):clearTimeout(t)}(t)}_requestAnimationFrame(t){if(this._running)return this.display&&this.display.requestAnimationFrame?this.display.requestAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame(t):setTimeout(t,1e3/60)}(t)}_renderFrame(...t){this.display?this.display._renderFrame(...t):this.onRender(...t)}_clearNeedsRedraw(){this.needsRedraw=null}_setupFrame(){this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._resizeFramebuffer()}_initializeCallbackData(){this.animationProps={gl:this.gl,stop:this.stop,canvas:this.gl.canvas,framebuffer:this.framebuffer,useDevicePixels:this.useDevicePixels,needsRedraw:null,startTime:Date.now(),engineTime:0,tick:0,tock:0,time:0,_timeline:this.timeline,_loop:this,_animationLoop:this,_mousePosition:null}}_updateCallbackData(){const{width:t,height:e,aspect:n}=this._getSizeAndAspect();(t!==this.animationProps.width||e!==this.animationProps.height)&&this.setNeedsRedraw("drawing buffer resized"),n!==this.animationProps.aspect&&this.setNeedsRedraw("drawing buffer aspect changed"),this.animationProps.width=t,this.animationProps.height=e,this.animationProps.aspect=n,this.animationProps.needsRedraw=this.needsRedraw,this.animationProps.engineTime=Date.now()-this.animationProps.startTime,this.timeline&&this.timeline.update(this.animationProps.engineTime),this.animationProps.tick=Math.floor(this.animationProps.time/1e3*60),this.animationProps.tock++,this.animationProps.time=this.timeline?this.timeline.getTime():this.animationProps.engineTime,this.animationProps._offScreen=this.offScreen}_finalizeCallbackData(){this.onFinalize(this.animationProps)}_addCallbackData(t){"object"==typeof t&&null!==t&&(this.animationProps=Object.assign({},this.animationProps,t))}_createWebGLContext(t){if(this.offScreen=t.canvas&&"undefined"!=typeof OffscreenCanvas&&t.canvas instanceof OffscreenCanvas,t=Object.assign({},t,this.props.glOptions),this.gl=this.props.gl?kx(this.props.gl,t):this.onCreateContext(t),!jw(this.gl))throw new Error("AnimationLoop.onCreateContext - illegal context returned");(function(t){yx(t,tx)})(this.gl),this._createInfoDiv()}_createInfoDiv(){if(this.gl.canvas&&this.props.onAddHTML){const t=document.createElement("div");document.body.appendChild(t),t.style.position="relative";const e=document.createElement("div");e.style.position="absolute",e.style.left="10px",e.style.bottom="10px",e.style.width="300px",e.style.background="white",t.appendChild(this.gl.canvas),t.appendChild(e);const n=this.props.onAddHTML(e);n&&(e.innerHTML=n)}}_getSizeAndAspect(){const t=this.gl.drawingBufferWidth,e=this.gl.drawingBufferHeight;let n=1;const{canvas:i}=this.gl;return i&&i.clientHeight?n=i.clientWidth/i.clientHeight:t>0&&e>0&&(n=t/e),{width:t,height:e,aspect:n}}_resizeViewport(){this.autoResizeViewport&&this.gl.viewport(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight)}_resizeCanvasDrawingBuffer(){this.autoResizeDrawingBuffer&&function(t,e={}){if(t.canvas)return void function(t,e,n){let i="width"in n?n.width:t.canvas.clientWidth,r="height"in n?n.height:t.canvas.clientHeight;(!i||!r)&&(Nw.log(1,"Canvas clientWidth/clientHeight is 0")(),e=1,i=t.canvas.width||1,r=t.canvas.height||1),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{};const s=t.luma.canvasSizeInfo;if(s.clientWidth!==i||s.clientHeight!==r||s.devicePixelRatio!==e){let n=e;const s=Math.floor(i*n),o=Math.floor(r*n);t.canvas.width=s,t.canvas.height=o,(t.drawingBufferWidth!==s||t.drawingBufferHeight!==o)&&(Nw.warn("Device pixel ratio clamped")(),n=Math.min(t.drawingBufferWidth/i,t.drawingBufferHeight/r),t.canvas.width=Math.floor(i*n),t.canvas.height=Math.floor(r*n)),Object.assign(t.luma.canvasSizeInfo,{clientWidth:i,clientHeight:r,devicePixelRatio:e})}}(t,function(t){const e="undefined"==typeof window?1:window.devicePixelRatio||1;return Number.isFinite(t)?t<=0?1:t:t?e:1}(e.useDevicePixels),e);const n=t.getExtension("STACKGL_resize_drawingbuffer");n&&"width"in e&&"height"in e&&n.resize(e.width,e.height)}(this.gl,{useDevicePixels:this.useDevicePixels})}_createFramebuffer(){this.props.createFramebuffer&&(this.framebuffer=new SS(this.gl))}_resizeFramebuffer(){this.framebuffer&&this.framebuffer.resize({width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight})}_beginTimers(){this.frameRate.timeEnd(),this.frameRate.timeStart(),this._gpuTimeQuery&&this._gpuTimeQuery.isResultAvailable()&&!this._gpuTimeQuery.isTimerDisjoint()&&this.stats.get("GPU Time").addTime(this._gpuTimeQuery.getTimerMilliseconds()),this._gpuTimeQuery&&this._gpuTimeQuery.beginTimeElapsedQuery(),this.cpuTime.timeStart()}_endTimers(){this.cpuTime.timeEnd(),this._gpuTimeQuery&&this._gpuTimeQuery.end()}_startEventHandling(){const{canvas:t}=this.gl;t&&(t.addEventListener("mousemove",this._onMousemove),t.addEventListener("mouseleave",this._onMouseleave))}_onMousemove(t){this.animationProps._mousePosition=[t.offsetX,t.offsetY]}_onMouseleave(t){this.animationProps._mousePosition=null}}var cD=n(11524),uD=n.n(cD);const hD={mousedown:1,mousemove:2,mouseup:4};(function(t){const e=t.prototype.handler;t.prototype.handler=function(t){const n=this.store;t.button>0&&"pointerdown"===t.type&&(function(e,n){for(let i=0;i=0&&(this.pressed=!0),2&e&&0===t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:"mouse",srcEvent:t}))}}(uD().MouseInput);const dD=uD().Manager;var pD=uD();const fD=pD?[[pD.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[pD.Rotate,{enable:!1}],[pD.Pinch,{enable:!1}],[pD.Swipe,{enable:!1}],[pD.Pan,{threshold:0,enable:!1}],[pD.Press,{enable:!1}],[pD.Tap,{event:"doubletap",taps:2,enable:!1}],[pD.Tap,{event:"anytap",enable:!1}],[pD.Tap,{enable:!1}]]:null,gD={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},mD={doubletap:["tap"]},bD={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},yD={KEY_EVENTS:["keydown","keyup"],MOUSE_EVENTS:["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],WHEEL_EVENTS:["wheel","mousewheel"]},vD={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},_D={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},wD="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",xD="undefined"!=typeof window?window:global;"undefined"!=typeof global?global:window,"undefined"!=typeof document&&document;let SD=!1;try{const t={get passive(){return SD=!0,!0}};xD.addEventListener("test",t,t),xD.removeEventListener("test",t,t)}catch(m){}const ED=-1!==wD.indexOf("firefox"),{WHEEL_EVENTS:CD}=yD,OD=4.000244140625;class TD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.events=CD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent,!!SD&&{passive:!1}))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){"wheel"===t&&(this.options.enable=e)}handleEvent(t){if(!this.options.enable)return;let e=t.deltaY;xD.WheelEvent&&(ED&&t.deltaMode===xD.WheelEvent.DOM_DELTA_PIXEL&&(e/=xD.devicePixelRatio),t.deltaMode===xD.WheelEvent.DOM_DELTA_LINE&&(e*=40));const n={x:t.clientX,y:t.clientY};0!==e&&e%OD==0&&(e=Math.floor(e/OD)),t.shiftKey&&e&&(e*=.25),this._onWheel(t,-e,n)}_onWheel(t,e,n){this.callback({type:"wheel",center:n,delta:e,srcEvent:t,pointerType:"mouse",target:t.target})}}const{MOUSE_EVENTS:kD}=yD,AD="pointermove",PD="pointerover",MD="pointerout",ID="pointerleave";class DD{constructor(t,e,n={}){this.element=t,this.callback=e,this.pressed=!1,this.options=Object.assign({enable:!0},n),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=kD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===AD&&(this.enableMoveEvent=e),t===PD&&(this.enableOverEvent=e),t===MD&&(this.enableOutEvent=e),t===ID&&(this.enableLeaveEvent=e)}handleEvent(t){this.handleOverEvent(t),this.handleOutEvent(t),this.handleLeaveEvent(t),this.handleMoveEvent(t)}handleOverEvent(t){this.enableOverEvent&&"mouseover"===t.type&&this.callback({type:PD,srcEvent:t,pointerType:"mouse",target:t.target})}handleOutEvent(t){this.enableOutEvent&&"mouseout"===t.type&&this.callback({type:MD,srcEvent:t,pointerType:"mouse",target:t.target})}handleLeaveEvent(t){this.enableLeaveEvent&&"mouseleave"===t.type&&this.callback({type:ID,srcEvent:t,pointerType:"mouse",target:t.target})}handleMoveEvent(t){if(this.enableMoveEvent)switch(t.type){case"mousedown":t.button>=0&&(this.pressed=!0);break;case"mousemove":0===t.which&&(this.pressed=!1),this.pressed||this.callback({type:AD,srcEvent:t,pointerType:"mouse",target:t.target});break;case"mouseup":this.pressed=!1}}}const{KEY_EVENTS:RD}=yD,ND="keydown";class LD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=RD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),t.tabIndex=n.tabIndex||0,t.style.outline="none",this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===ND&&(this.enableDownEvent=e),"keyup"===t&&(this.enableUpEvent=e)}handleEvent(t){const e=t.target||t.srcElement;"INPUT"===e.tagName&&"text"===e.type||"TEXTAREA"===e.tagName||(this.enableDownEvent&&"keydown"===t.type&&this.callback({type:ND,srcEvent:t,key:t.key,target:t.target}),this.enableUpEvent&&"keyup"===t.type&&this.callback({type:"keyup",srcEvent:t,key:t.key,target:t.target}))}}const jD="contextmenu";class FD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.handleEvent=this.handleEvent.bind(this),t.addEventListener("contextmenu",this.handleEvent)}destroy(){this.element.removeEventListener("contextmenu",this.handleEvent)}enableEventType(t,e){t===jD&&(this.options.enable=e)}handleEvent(t){!this.options.enable||this.callback({type:jD,center:{x:t.clientX,y:t.clientY},srcEvent:t,pointerType:"mouse",target:t.target})}}const BD={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4},VD={srcElement:"root",priority:0};class zD{constructor(t){this.eventManager=t,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}isEmpty(){return!this._active}add(t,e,n,i=!1,r=!1){const{handlers:s,handlersByElement:o}=this;n&&("object"!=typeof n||n.addEventListener)&&(n={srcElement:n}),n=n?Object.assign({},VD,n):VD;let a=o.get(n.srcElement);a||(a=[],o.set(n.srcElement,a));const l={type:t,handler:e,srcElement:n.srcElement,priority:n.priority};i&&(l.once=!0),r&&(l.passive=!0),s.push(l),this._active=this._active||!l.passive;let c=a.length-1;for(;c>=0&&!(a[c].priority>=l.priority);)c--;a.splice(c+1,0,l)}remove(t,e){const{handlers:n,handlersByElement:i}=this;for(let r=n.length-1;r>=0;r--){const s=n[r];if(s.type===t&&s.handler===e){n.splice(r,1);const t=i.get(s.srcElement);t.splice(t.indexOf(s),1),0===t.length&&i.delete(s.srcElement)}}this._active=n.some(t=>!t.passive)}handleEvent(t){if(this.isEmpty())return;const e=this._normalizeEvent(t);let n=t.srcEvent.target;for(;n&&n!==e.rootElement;){if(this._emit(e,n),e.handled)return;n=n.parentNode}this._emit(e,"root")}_emit(t,e){const n=this.handlersByElement.get(e);if(n){let e=!1;const i=()=>{t.handled=!0},r=()=>{t.handled=!0,e=!0},s=[];for(let o=0;o{const e=this.manager.get(t);e&&gD[t].forEach(t=>{e.recognizeWith(t)})});for(const n in e.recognizerOptions){const t=this.manager.get(n);if(t){const i=e.recognizerOptions[n];delete i.enable,t.set(i)}}this.wheelInput=new TD(t,this._onOtherEvent,{enable:!1}),this.moveInput=new DD(t,this._onOtherEvent,{enable:!1}),this.keyInput=new LD(t,this._onOtherEvent,{enable:!1,tabIndex:e.tabIndex}),this.contextmenuInput=new FD(t,this._onOtherEvent,{enable:!1});for(const[n,i]of this.events)i.isEmpty()||(this._toggleRecognizer(i.recognizerName,!0),this.manager.on(n,i.handleEvent))}destroy(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}on(t,e,n){this._addEventHandler(t,e,n,!1)}once(t,e,n){this._addEventHandler(t,e,n,!0)}watch(t,e,n){this._addEventHandler(t,e,n,!1,!0)}off(t,e){this._removeEventHandler(t,e)}_toggleRecognizer(t,e){const{manager:n}=this;if(!n)return;const i=n.get(t);if(i&&i.options.enable!==e){i.set({enable:e});const r=mD[t];r&&!this.options.recognizers&&r.forEach(r=>{const s=n.get(r);e?(s.requireFailure(t),i.dropRequireFailure(r)):s.dropRequireFailure(t)})}this.wheelInput.enableEventType(t,e),this.moveInput.enableEventType(t,e),this.keyInput.enableEventType(t,e),this.contextmenuInput.enableEventType(t,e)}_addEventHandler(t,e,n,i,r){if("string"!=typeof t){n=e;for(const e in t)this._addEventHandler(e,t[e],n,i,r);return}const{manager:s,events:o}=this,a=_D[t]||t;let l=o.get(a);l||(l=new zD(this),o.set(a,l),l.recognizerName=vD[a]||a,s&&s.on(a,l.handleEvent)),l.add(t,e,n,i,r),l.isEmpty()||this._toggleRecognizer(l.recognizerName,!0)}_removeEventHandler(t,e){if("string"!=typeof t){for(const e in t)this._removeEventHandler(e,t[e]);return}const{events:n}=this,i=n.get(_D[t]||t);if(i&&(i.remove(t,e),i.isEmpty())){const{recognizerName:t}=i;let e=!1;for(const i of n.values())if(i.recognizerName===t&&!i.isEmpty()){e=!0;break}e||this._toggleRecognizer(t,!1)}}_onBasicInput(t){const{srcEvent:e}=t,n=bD[e.type];n&&this.manager.emit(n,t)}_onOtherEvent(t){this.manager.emit(t.type,t)}}function $D(){}const GD={id:"",width:"100%",height:"100%",pickingRadius:0,layerFilter:null,glOptions:{},gl:null,layers:[],effects:[],views:null,controller:null,useDevicePixels:!0,touchAction:"none",eventRecognizerOptions:{},_framebuffer:null,_animate:!1,_pickable:!0,_typedArrayManagerProps:{},onWebGLInitialized:$D,onResize:$D,onViewStateChange:$D,onInteractionStateChange:$D,onBeforeRender:$D,onAfterRender:$D,onLoad:$D,onError:(t,e)=>Mw.error(t)(),_onMetrics:null,getCursor:({isDragging:t})=>t?"grabbing":"grab",debug:!1,drawPickingColors:!1};class WD{constructor(t){t=wt(wt({},GD),t),this.props={},this.width=0,this.height=0,this.viewManager=null,this.layerManager=null,this.effectManager=null,this.deckRenderer=null,this.deckPicker=null,this._needsRedraw=!0,this._pickRequest={},this._lastPointerDownInfo=null,this.viewState=null,this.interactiveState={isHovering:!1,isDragging:!1},this._onEvent=this._onEvent.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),t.viewState&&t.initialViewState&&Mw.warn("View state tracking is disabled. Use either `initialViewState` for auto update or `viewState` for manual update.")(),"IE"===(0,zw.qs)()&&Mw.warn("IE 11 support will be deprecated in v8.0")(),t.gl||"undefined"!=typeof document&&(this.canvas=this._createCanvas(t)),this.animationLoop=this._createAnimationLoop(t),this.stats=new Mx({id:"deck.gl"}),this.metrics={fps:0,setPropsTime:0,updateAttributesTime:0,framesRedrawn:0,pickTime:0,pickCount:0,gpuTime:0,gpuTimePerFrame:0,cpuTime:0,cpuTimePerFrame:0,bufferMemory:0,textureMemory:0,renderbufferMemory:0,gpuMemory:0},this._metricsCounter=0,this.setProps(t),t._typedArrayManagerProps&&AS.setProps(t._typedArrayManagerProps),this.animationLoop.start()}finalize(){this.animationLoop.stop(),this.animationLoop=null,this._lastPointerDownInfo=null,this.layerManager&&(this.layerManager.finalize(),this.layerManager=null,this.viewManager.finalize(),this.viewManager=null,this.effectManager.finalize(),this.effectManager=null,this.deckRenderer.finalize(),this.deckRenderer=null,this.deckPicker.finalize(),this.deckPicker=null,this.eventManager.destroy(),this.eventManager=null,this.tooltip.remove(),this.tooltip=null),!this.props.canvas&&!this.props.gl&&this.canvas&&(this.canvas.parentElement.removeChild(this.canvas),this.canvas=null)}setProps(t){this.stats.get("setProps Time").timeStart(),"onLayerHover"in t&&Mw.removed("onLayerHover","onHover")(),"onLayerClick"in t&&Mw.removed("onLayerClick","onClick")(),t.initialViewState&&!zP(this.props.initialViewState,t.initialViewState)&&(this.viewState=t.initialViewState),Object.assign(this.props,t),this._setCanvasSize(this.props);const e=Object.create(this.props);Object.assign(e,{views:this._getViews(),width:this.width,height:this.height,viewState:this._getViewState()}),this.animationLoop.setProps(e),this.layerManager&&(this.viewManager.setProps(e),this.layerManager.activateViewport(this.getViewports()[0]),this.layerManager.setProps(e),this.effectManager.setProps(e),this.deckRenderer.setProps(e),this.deckPicker.setProps(e)),this.stats.get("setProps Time").timeEnd()}needsRedraw(t={clearRedrawFlags:!1}){if(this.props._animate)return"Deck._animate";let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);const n=this.viewManager.needsRedraw(t),i=this.layerManager.needsRedraw(t),r=this.effectManager.needsRedraw(t),s=this.deckRenderer.needsRedraw(t);return e=e||n||i||r||s,e}redraw(t){if(!this.layerManager)return;const e=t||this.needsRedraw({clearRedrawFlags:!0});!e||(this.stats.get("Redraw Count").incrementCount(),this.props._customRender?this.props._customRender(e):this._drawLayers(e))}getViews(){return this.viewManager.views}getViewports(t){return this.viewManager.getViewports(t)}pickObject(t){const e=this._pick("pickObject","pickObject Time",t).result;return e.length?e[0]:null}pickMultipleObjects(t){return t.depth=t.depth||10,this._pick("pickObject","pickMultipleObjects Time",t).result}pickObjects(t){return this._pick("pickObjects","pickObjects Time",t)}_addResources(t,e=!1){for(const n in t)this.layerManager.resourceManager.add({resourceId:n,data:t[n],forceUpdate:e})}_removeResources(t){for(const e of t)this.layerManager.resourceManager.remove(e)}_pick(t,e,n){const{stats:i}=this;i.get("Pick Count").incrementCount(),i.get(e).timeStart();const r=this.deckPicker[t](wt({layers:this.layerManager.getLayers(n),views:this.viewManager.getViews(),viewports:this.getViewports(n),onViewportActive:this.layerManager.activateViewport},n));return i.get(e).timeEnd(),r}_createCanvas(t){let e=t.canvas;return"string"==typeof e&&(e=document.getElementById(e),uE(e)),e||(e=document.createElement("canvas"),e.id=t.id||"deckgl-overlay",(t.parent||document.body).appendChild(e)),Object.assign(e.style,t.style),e}_setCanvasSize(t){if(!this.canvas)return;let{width:e,height:n}=t;(e||0===e)&&(e=Number.isFinite(e)?"".concat(e,"px"):e,this.canvas.style.width=e),(n||0===n)&&(n=Number.isFinite(n)?"".concat(n,"px"):n,this.canvas.style.position="absolute",this.canvas.style.height=n)}_updateCanvasSize(){if(this._checkForCanvasSizeChange()){const{width:t,height:e}=this;this.viewManager.setProps({width:t,height:e}),this.props.onResize({width:this.width,height:this.height})}}_checkForCanvasSizeChange(){const{canvas:t}=this;if(!t)return!1;const e=t.clientWidth||t.width,n=t.clientHeight||t.height;return(e!==this.width||n!==this.height)&&(this.width=e,this.height=n,!0)}_createAnimationLoop(t){const{width:e,height:n,gl:i,glOptions:r,debug:s,onError:o,onBeforeRender:a,onAfterRender:l,useDevicePixels:c,autoResizeDrawingBuffer:u}=t;return new lD({width:e,height:n,useDevicePixels:c,autoResizeDrawingBuffer:u,autoResizeViewport:!1,gl:i,onCreateContext:t=>Tx(ii(wt(wt({},r),t),{canvas:this.canvas,debug:s,onContextLost:()=>this._onContextLost()})),onInitialize:t=>this._setGLContext(t.gl),onRender:this._onRenderFrame.bind(this),onBeforeRender:a,onAfterRender:l,onError:o})}_getViewState(){return this.props.viewState||this.viewState}_getViews(){let t=this.props.views||[new rI({id:"default-view"})];return t=Array.isArray(t)?t:[t],t.length&&this.props.controller&&(t[0].props.controller=this.props.controller),t}_onContextLost(){const{onError:t}=this.props;this.animationLoop&&t&&t(new Error("WebGL context is lost"))}_onPointerMove(t){const{_pickRequest:e}=this;if("pointerleave"===t.type)e.x=-1,e.y=-1,e.radius=0;else{if(t.leftButton||t.rightButton)return;{const n=t.offsetCenter;if(!n)return;e.x=n.x,e.y=n.y,e.radius=this.props.pickingRadius}}this.layerManager&&(this.layerManager.context.mousePosition={x:e.x,y:e.y}),e.event=t,e.mode="hover"}_pickAndCallback(){const{_pickRequest:t}=this;if(t.event){const{result:e,emptyInfo:n}=this._pick("pickObject","pickObject Time",t);this.interactiveState.isHovering=e.length>0;let i=n,r=!1;for(const s of e)i=s,r=s.layer.onHover(s,t.event);if(!r&&this.props.onHover&&this.props.onHover(i,t.event),this.props.getTooltip){const t=this.props.getTooltip(i);this.tooltip.setTooltip(t,i.x,i.y)}t.event=null}}_updateCursor(){const t=this.props.parent||this.canvas;t&&(t.style.cursor=this.props.getCursor(this.interactiveState))}_setGLContext(t){if(this.layerManager)return;this.canvas||(this.canvas=t.canvas,kx(t,{enable:!0,copyState:!0})),this.tooltip=new yI(this.canvas),yx(t,{blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthTest:!0,depthFunc:515}),this.props.onWebGLInitialized(t);const e=new qM;e.play(),this.animationLoop.attachTimeline(e),this.eventManager=new HD(this.props.parent||t.canvas,{touchAction:this.props.touchAction,recognizerOptions:this.props.eventRecognizerOptions,events:{pointerdown:this._onPointerDown,pointermove:this._onPointerMove,pointerleave:this._onPointerMove}});for(const i in Rw)this.eventManager.on(i,this._onEvent);this.viewManager=new eI({timeline:e,eventManager:this.eventManager,onViewStateChange:this._onViewStateChange.bind(this),onInteractionStateChange:this._onInteractionStateChange.bind(this),views:this._getViews(),viewState:this._getViewState(),width:this.width,height:this.height});const n=this.viewManager.getViewports()[0];this.layerManager=new tI(t,{deck:this,stats:this.stats,viewport:n,timeline:e}),this.effectManager=new oI,this.deckRenderer=new uI(t),this.deckPicker=new mI(t),this.setProps(this.props),this._updateCanvasSize(),this.props.onLoad()}_drawLayers(t,e){const{gl:n}=this.layerManager.context;yx(n,this.props.parameters),this.props.onBeforeRender({gl:n}),this.deckRenderer.renderLayers(wt({target:this.props._framebuffer,layers:this.layerManager.getLayers(),viewports:this.viewManager.getViewports(),onViewportActive:this.layerManager.activateViewport,views:this.viewManager.getViews(),pass:"screen",redrawReason:t,effects:this.effectManager.getEffects()},e)),this.props.onAfterRender({gl:n})}_onRenderFrame(t){this._getFrameStats(),this._metricsCounter++%60==0&&(this._getMetrics(),this.stats.reset(),Mw.table(4,this.metrics)(),this.props._onMetrics&&this.props._onMetrics(this.metrics)),this._updateCanvasSize(),this._updateCursor(),this.tooltip.isVisible&&this.viewManager.needsRedraw()&&this.tooltip.setTooltip(null),this.layerManager.updateLayers(),this._pickAndCallback(),this.redraw(!1),this.viewManager&&this.viewManager.updateViewStates()}_onViewStateChange(t){const e=this.props.onViewStateChange(t)||t.viewState;this.viewState&&(this.viewState=ii(wt({},this.viewState),{[t.viewId]:e}),this.props.viewState||this.viewManager&&this.viewManager.setProps({viewState:this.viewState}))}_onInteractionStateChange(t){this.interactiveState.isDragging=t.isDragging,this.props.onInteractionStateChange(t)}_onEvent(t){const e=Rw[t.type],n=t.offsetCenter;if(!e||!n)return;const i=this.layerManager.getLayers(),r=this.deckPicker.getLastPickedObject({x:n.x,y:n.y,layers:i,viewports:this.getViewports(n)},this._lastPointerDownInfo),{layer:s}=r,o=s&&(s[e.handler]||s.props[e.handler]),a=this.props[e.handler];let l=!1;o&&(l=o.call(s,r,t)),!l&&a&&a(r,t)}_onPointerDown(t){const e=t.offsetCenter;this._lastPointerDownInfo=this.pickObject({x:e.x,y:e.y,radius:this.props.pickingRadius})}_getFrameStats(){const{stats:t}=this;t.get("frameRate").timeEnd(),t.get("frameRate").timeStart();const e=this.animationLoop.stats;t.get("GPU Time").addTime(e.get("GPU Time").lastTiming),t.get("CPU Time").addTime(e.get("CPU Time").lastTiming)}_getMetrics(){const{metrics:t,stats:e}=this;t.fps=e.get("frameRate").getHz(),t.setPropsTime=e.get("setProps Time").time,t.updateAttributesTime=e.get("Update Attributes").time,t.framesRedrawn=e.get("Redraw Count").count,t.pickTime=e.get("pickObject Time").time+e.get("pickMultipleObjects Time").time+e.get("pickObjects Time").time,t.pickCount=e.get("Pick Count").count,t.gpuTime=e.get("GPU Time").time,t.cpuTime=e.get("CPU Time").time,t.gpuTimePerFrame=e.get("GPU Time").getAverageTime(),t.cpuTimePerFrame=e.get("CPU Time").getAverageTime();const n=Dx.get("Memory Usage");t.bufferMemory=n.get("Buffer Memory").count,t.textureMemory=n.get("Texture Memory").count,t.renderbufferMemory=n.get("Renderbuffer Memory").count,t.gpuMemory=n.get("GPU Memory").count}}WD.getPropTypes=function(t){return{id:t.string,width:t.oneOfType([t.number,t.string]),height:t.oneOfType([t.number,t.string]),layers:t.oneOfType([t.object,t.array]),layerFilter:t.func,views:t.oneOfType([t.object,t.array]),viewState:t.object,effects:t.arrayOf(t.instanceOf(TM)),controller:t.oneOfType([t.func,t.bool,t.object]),gl:t.object,glOptions:t.object,parameters:t.object,pickingRadius:t.number,useDevicePixels:t.oneOfType([t.bool,t.number]),touchAction:t.string,eventRecognizerOptions:t.object,onWebGLInitialized:t.func,onResize:t.func,onViewStateChange:t.func,onInteractionStateChange:t.func,onBeforeRender:t.func,onAfterRender:t.func,onLoad:t.func,onError:t.func,debug:t.bool,drawPickingColors:t.bool,_framebuffer:t.object,_animate:t.bool,_pickable:t.bool,_typedArrayManagerProps:t.object}},WD.defaultProps=GD,WD.VERSION=rD.VERSION;var qD={name:"project32",dependencies:[NM],vs:"\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset, out vec4 commonPosition\n) {\n vec3 projectedPosition = project_position(position, position64Low);\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n // offset is specified as ENU\n // when in globe projection, rotate offset so that the ground alighs with the surface of the globe\n mat3 rotation = project_get_orientation_matrix(projectedPosition);\n offset = rotation * offset;\n }\n commonPosition = vec4(projectedPosition + offset, 1.0);\n return project_common_position_to_clipspace(commonPosition);\n}\n\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset\n) {\n vec4 commonPosition;\n return project_position_to_clipspace(position, position64Low, offset, commonPosition);\n}\n"},XD="#if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\n\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation;\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform AmbientLight lighting_uAmbientLight;\nuniform PointLight lighting_uPointLight[MAX_LIGHTS];\nuniform DirectionalLight lighting_uDirectionalLight[MAX_LIGHTS];\nuniform int lighting_uPointLightCount;\nuniform int lighting_uDirectionalLightCount;\n\nuniform bool lighting_uEnabled;\n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n#endif\n";const YD={lightSources:{}};function KD({color:t=[0,0,0],intensity:e=1}={}){return t.map(t=>t*e/255)}const QD={name:"lights",vs:XD,fs:XD,getUniforms:function t(e=YD){if("lightSources"in e){const{ambientLight:t,pointLights:n,directionalLights:i}=e.lightSources||{};return t||n&&n.length>0||i&&i.length>0?Object.assign({},function({ambientLight:t,pointLights:e=[],directionalLights:n=[]}){const i={};return i["lighting_uAmbientLight.color"]=t?KD(t):[0,0,0],e.forEach((t,e)=>{i[`lighting_uPointLight[${e}].color`]=KD(t),i[`lighting_uPointLight[${e}].position`]=t.position,i[`lighting_uPointLight[${e}].attenuation`]=t.attenuation||[1,0,0]}),i.lighting_uPointLightCount=e.length,n.forEach((t,e)=>{i[`lighting_uDirectionalLight[${e}].color`]=KD(t),i[`lighting_uDirectionalLight[${e}].direction`]=t.direction}),i.lighting_uDirectionalLightCount=n.length,i}({ambientLight:t,pointLights:n,directionalLights:i}),{lighting_uEnabled:!0}):{lighting_uEnabled:!1}}if("lights"in e){const n={pointLights:[],directionalLights:[]};for(const t of e.lights||[])switch(t.type){case"ambient":n.ambientLight=t;break;case"directional":n.directionalLights.push(t);break;case"point":n.pointLights.push(t)}return t({lightSources:n})}return{}},defines:{MAX_LIGHTS:3}};const ZD={};const JD={name:"phong-lighting",dependencies:[QD],fs:"\nuniform float lighting_uAmbient;\nuniform float lighting_uDiffuse;\nuniform float lighting_uShininess;\nuniform vec3 lighting_uSpecularColor;\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 light_direction, vec3 view_direction, vec3 normal_worldspace, vec3 color) {\n vec3 halfway_direction = normalize(light_direction + view_direction);\n float lambertian = dot(light_direction, normal_worldspace);\n float specular = 0.0;\n if (lambertian > 0.0) {\n float specular_angle = max(dot(normal_worldspace, halfway_direction), 0.0);\n specular = pow(specular_angle, lighting_uShininess);\n }\n lambertian = max(lambertian, 0.0);\n return (lambertian * lighting_uDiffuse * surfaceColor + specular * lighting_uSpecularColor) * color;\n}\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = surfaceColor;\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n lightColor = lighting_uAmbient * surfaceColor * lighting_uAmbientLight.color;\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n\nvec3 lighting_getSpecularLightColor(vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = vec3(0, 0, 0);\n vec3 surfaceColor = vec3(0, 0, 0);\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n",defines:{LIGHTING_FRAGMENT:1},getUniforms:function(t=ZD){if(!("material"in t))return{};const{material:e}=t;return e?function(t){const{ambient:e=.35,diffuse:n=.6,shininess:i=32,specularColor:r=[30,30,30]}=t;return{lighting_uAmbient:e,lighting_uDiffuse:n,lighting_uShininess:i,lighting_uSpecularColor:r.map(t=>t/255)}}(e):{lighting_uEnabled:!1}}},tR={pickingSelectedColor:null,pickingHighlightColor:new Uint8Array([0,255,255,255]),pickingActive:!1,pickingAttribute:!1};var eR=wt({inject:{"vs:DECKGL_FILTER_COLOR":"\n picking_setPickingColor(geometry.pickingColor);\n // for picking depth values\n picking_setPickingAttribute(geometry.position.z);\n ","fs:DECKGL_FILTER_COLOR":{order:99,injection:"\n // use highlight color if this fragment belongs to the selected object.\n color = picking_filterHighlightColor(color);\n\n // use picking color if rendering to picking FBO.\n color = picking_filterPickingColor(color);\n "}}},{name:"picking",vs:"uniform bool picking_uActive;\nuniform bool picking_uAttribute;\nuniform vec3 picking_uSelectedColor;\nuniform bool picking_uSelectedColorValid;\n\nout vec4 picking_vRGBcolor_Avalid;\n\nconst float COLOR_SCALE = 1. / 255.;\n\nbool picking_isColorValid(vec3 color) {\n return dot(color, vec3(1.0)) > 0.001;\n}\n\nbool isVertexPicked(vec3 vertexColor) {\n return\n picking_uSelectedColorValid &&\n !picking_isColorValid(abs(vertexColor - picking_uSelectedColor));\n}\n\nvoid picking_setPickingColor(vec3 pickingColor) {\n if (picking_uActive) {\n picking_vRGBcolor_Avalid.a = float(picking_isColorValid(pickingColor));\n\n if (!picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = pickingColor * COLOR_SCALE;\n }\n } else {\n picking_vRGBcolor_Avalid.a = float(isVertexPicked(pickingColor));\n }\n}\n\nvoid picking_setPickingAttribute(float value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.r = value;\n }\n}\nvoid picking_setPickingAttribute(vec2 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rg = value;\n }\n}\nvoid picking_setPickingAttribute(vec3 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = value;\n }\n}\n",fs:"uniform bool picking_uActive;\nuniform vec3 picking_uSelectedColor;\nuniform vec4 picking_uHighlightColor;\n\nin vec4 picking_vRGBcolor_Avalid;\nvec4 picking_filterHighlightColor(vec4 color) {\n if (picking_uActive) {\n return color;\n }\n bool selected = bool(picking_vRGBcolor_Avalid.a);\n\n if (selected) {\n float highLightAlpha = picking_uHighlightColor.a;\n float blendedAlpha = highLightAlpha + color.a * (1.0 - highLightAlpha);\n float highLightRatio = highLightAlpha / blendedAlpha;\n\n vec3 blendedRGB = mix(color.rgb, picking_uHighlightColor.rgb, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n } else {\n return color;\n }\n}\nvec4 picking_filterPickingColor(vec4 color) {\n if (picking_uActive) {\n if (picking_vRGBcolor_Avalid.a == 0.0) {\n discard;\n }\n return picking_vRGBcolor_Avalid;\n }\n return color;\n}\nvec4 picking_filterColor(vec4 color) {\n vec4 highightColor = picking_filterHighlightColor(color);\n return picking_filterPickingColor(highightColor);\n}\n\n",getUniforms:function(t=tR){const e={};if(void 0!==t.pickingSelectedColor)if(t.pickingSelectedColor){const n=t.pickingSelectedColor.slice(0,3);e.picking_uSelectedColorValid=1,e.picking_uSelectedColor=n}else e.picking_uSelectedColorValid=0;if(t.pickingHighlightColor){const n=Array.from(t.pickingHighlightColor,t=>t/255);Number.isFinite(n[3])||(n[3]=1),e.picking_uHighlightColor=n}return void 0!==t.pickingActive&&(e.picking_uActive=Boolean(t.pickingActive),e.picking_uAttribute=Boolean(t.pickingAttribute)),e}});const nR={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6};class iR{static get DRAW_MODE(){return nR}constructor(t={}){const{id:e=Fx("geometry"),drawMode:n=nR.TRIANGLES,attributes:i={},indices:r=null,vertexCount:s=null}=t;this.id=e,this.drawMode=0|n,this.attributes={},this.userData={},this._setAttributes(i,r),this.vertexCount=s||this._calculateVertexCount(this.attributes,this.indices)}get mode(){return this.drawMode}getVertexCount(){return this.vertexCount}getAttributes(){return this.indices?wt({indices:this.indices},this.attributes):this.attributes}_print(t){return`Geometry ${this.id} attribute ${t}`}_setAttributes(t,e){e&&(this.indices=ArrayBuffer.isView(e)?{value:e,size:1}:e);for(const n in t){let e=t[n];e=ArrayBuffer.isView(e)?{value:e}:e,Rx(ArrayBuffer.isView(e.value),`${this._print(n)}: must be typed array or object with value as typed array`),("POSITION"===n||"positions"===n)&&!e.size&&(e.size=3),"indices"===n?(Rx(!this.indices),this.indices=e):this.attributes[n]=e}return this.indices&&void 0!==this.indices.isIndexed&&(this.indices=Object.assign({},this.indices),delete this.indices.isIndexed),this}_calculateVertexCount(t,e){if(e)return e.value.length;let n=1/0;for(const i in t){const e=t[i],{value:r,size:s,constant:o}=e;!o&&r&&s>=1&&(n=Math.min(n,r.length/s))}return Rx(Number.isFinite(n)),n}}const rR=Math.PI/180,sR=new Float32Array(16),oR=new Float32Array(12);function aR(t,e,n){const i=e[0]*rR,r=e[1]*rR,s=e[2]*rR,o=Math.sin(s),a=Math.sin(i),l=Math.sin(r),c=Math.cos(s),u=Math.cos(i),h=Math.cos(r),d=n[0],p=n[1],f=n[2];t[0]=d*h*u,t[1]=d*l*u,t[2]=d*-a,t[3]=p*(-l*c+h*a*o),t[4]=p*(h*c+l*a*o),t[5]=p*u*o,t[6]=f*(l*o+h*a*c),t[7]=f*(-h*o+l*a*c),t[8]=f*u*c}function lR(t){return t[0]=t[0],t[1]=t[1],t[2]=t[2],t[3]=t[4],t[4]=t[5],t[5]=t[6],t[6]=t[8],t[7]=t[9],t[8]=t[10],t[9]=t[12],t[10]=t[13],t[11]=t[14],t.subarray(0,12)}const cR={size:12,accessor:["getOrientation","getScale","getTranslation","getTransformMatrix"],shaderAttributes:{instanceModelMatrix__LOCATION_0:{size:3,elementOffset:0},instanceModelMatrix__LOCATION_1:{size:3,elementOffset:3},instanceModelMatrix__LOCATION_2:{size:3,elementOffset:6},instanceTranslation:{size:3,elementOffset:9}},update(t,{startRow:e,endRow:n}){const{data:i,getOrientation:r,getScale:s,getTranslation:o,getTransformMatrix:a}=this.props,l=Array.isArray(a),c=l&&16===a.length,u=Array.isArray(s),h=Array.isArray(r),d=Array.isArray(o),p=c||!l&&Boolean(a(i[0]));t.constant=p?c:h&&u&&d;const f=t.value;if(t.constant){let e;p?(sR.set(a),e=lR(sR)):(e=oR,aR(e,r,s),e.set(o,9)),t.value=new Float32Array(e)}else{let l=e*t.size;const{iterable:g,objectInfo:m}=pE(i,e,n);for(const t of g){let e;m.index++,p?(sR.set(c?a:a(t,m)),e=lR(sR)):(e=oR,aR(e,h?r:r(t,m),u?s:s(t,m)),e.set(d?o:o(t,m),9)),f[l++]=e[0],f[l++]=e[1],f[l++]=e[2],f[l++]=e[3],f[l++]=e[4],f[l++]=e[5],f[l++]=e[6],f[l++]=e[7],f[l++]=e[8],f[l++]=e[9],f[l++]=e[10],f[l++]=e[11]}}}};function uR(t,e){return e===Iw.CARTESIAN||e===Iw.METER_OFFSETS||e===Iw.DEFAULT&&!t.isGeospatial}function hR(t,e){(t.COLOR_0||t.colors)&&e||(t.colors={constant:!0,value:new Float32Array([1,1,1])}),Mw.assert(t.positions||t.POSITION,'no "postions" or "POSITION" attribute in mesh')}function dR(t,e){if(t.attributes)return hR(t.attributes,e),t instanceof iR?t:new iR(t);if(t.positions||t.POSITION)return hR(t,e),new iR({attributes:t});throw Error("Invalid mesh")}const pR={mesh:{value:null,type:"object",async:!0},texture:{type:"image",value:null,async:!0},sizeScale:{type:"number",value:1,min:0},_useMeshColors:{type:"boolean",value:!1},_instanced:!0,wireframe:!1,material:!0,getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:[0,0,0,255]},getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]}};let fR=(()=>{class t extends LP{getShaders(){const t=!Fw(this.context.gl),e={};return CS(this.context.gl,"GLSL_DERIVATIVES")&&(e.DERIVATIVES_AVAILABLE=1),super.getShaders({vs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\nuniform float sizeScale;\nuniform bool composeModelMatrix;\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.uv = texCoords;\n geometry.pickingColor = instancePickingColors;\n\n vTexCoord = texCoords;\n cameraPosition = project_uCameraPosition;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n geometry.normal = normals_commonspace;\n\n vec3 pos = (instanceModelMatrix * positions) * sizeScale + instanceTranslation;\n\n if (composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), position_commonspace);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, position_commonspace);\n }\n\n geometry.position = position_commonspace;\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\nuniform sampler2D sampler;\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal;\n if (flatShading) {\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec4 color = hasTexture ? texture(sampler, vTexCoord) : vColor;\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, color.a * opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n",modules:[qD,JD,eR],transpileToGLSL100:t,defines:e})}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{transition:!0,type:5130,fp64:this.use64bitPositions(),size:3,accessor:"getPosition"},instanceColors:{type:5121,transition:!0,size:this.props.colorFormat.length,normalized:!0,accessor:"getColor",defaultValue:[0,0,0,255]},instanceModelMatrix:cR}),this.setState({emptyTexture:new lS(this.context.gl,{data:new Uint8Array(4),width:1,height:1})})}updateState({props:t,oldProps:e,changeFlags:n}){if(super.updateState({props:t,oldProps:e,changeFlags:n}),t.mesh!==e.mesh||n.extensionsChanged){var i;if(null===(i=this.state.model)||void 0===i||i.delete(),t.mesh){this.state.model=this.getModel(t.mesh);const e=t.mesh.attributes||t.mesh;this.setState({hasNormals:Boolean(e.NORMAL||e.normals)})}this.getAttributeManager().invalidateAll()}t.texture!==e.texture&&this.setTexture(t.texture),this.state.model&&this.state.model.setDrawMode(this.props.wireframe?3:4)}finalizeState(){super.finalizeState(),this.state.emptyTexture.delete()}draw({uniforms:t}){if(!this.state.model)return;const{viewport:e}=this.context,{sizeScale:n,coordinateSystem:i,_instanced:r}=this.props;this.state.model.setUniforms(t).setUniforms({sizeScale:n,composeModelMatrix:!r||uR(e,i),flatShading:!this.state.hasNormals}).draw()}getModel(t){const e=new xO(this.context.gl,ii(wt({},this.getShaders()),{id:this.props.id,geometry:dR(t,this.props._useMeshColors),isInstanced:!0})),{texture:n}=this.props,{emptyTexture:i}=this.state;return e.setUniforms({sampler:n||i,hasTexture:Boolean(n)}),e}setTexture(t){const{emptyTexture:e,model:n}=this.state;null==n||n.setUniforms({sampler:t||e,hasTexture:Boolean(t)})}}return t.layerName="SimpleMeshLayer",t.defaultProps=pR,t})();const gR={name:"pbr",vs:"uniform mat4 u_MVPMatrix;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_NormalMatrix;\n\nvarying vec3 pbr_vPosition;\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n# else\nvarying vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = u_ModelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(u_NormalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(u_ModelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else\n pbr_vNormal = normalize(vec3(u_ModelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n",fs:"#if defined(USE_TEX_LOD) && !defined(FEATURE_GLSL_TEXTURE_LOD)\n# error PBR fragment shader: Texture LOD is not available\n#endif\n\n#if !defined(HAS_TANGENTS) && !defined(FEATURE_GLSL_DERIVATIVES)\n# error PBR fragment shader: Derivatives are not available\n#endif\n\n\n#if (__VERSION__ < 300)\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL1COND; INCR)\n#else\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL2COND; INCR)\n#endif\n\nprecision highp float;\n\nuniform bool pbr_uUnlit;\n\n#ifdef USE_IBL\nuniform samplerCube u_DiffuseEnvSampler;\nuniform samplerCube u_SpecularEnvSampler;\nuniform sampler2D u_brdfLUT;\nuniform vec2 u_ScaleIBLAmbient;\n#endif\n\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D u_BaseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D u_NormalSampler;\nuniform float u_NormalScale;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D u_EmissiveSampler;\nuniform vec3 u_EmissiveFactor;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D u_MetallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D u_OcclusionSampler;\nuniform float u_OcclusionStrength;\n#endif\n\n#ifdef ALPHA_CUTOFF\nuniform float u_AlphaCutoff;\n#endif\n\nuniform vec2 u_MetallicRoughnessValues;\nuniform vec4 u_BaseColorFactor;\n\nuniform vec3 u_Camera;\n#ifdef PBR_DEBUG\nuniform vec4 u_ScaleDiffBaseMR;\nuniform vec4 u_ScaleFGDSpec;\n#endif\n\nvarying vec3 pbr_vPosition;\n\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n#else\nvarying vec3 pbr_vNormal;\n#endif\n#endif\n\n\nstruct PBRInfo\n{\n float NdotL;\n float NdotV;\n float NdotH;\n float LdotH;\n float VdotH;\n float perceptualRoughness;\n float metalness;\n vec3 reflectance0;\n vec3 reflectance90;\n float alphaRoughness;\n vec3 diffuseColor;\n vec3 specularColor;\n vec3 n;\n vec3 v;\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif\n return vec4(linOut,srgbIn.w);;\n#else\n return srgbIn;\n#endif\n}\n\nvec3 getNormal()\n{\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture2D(u_NormalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(u_NormalScale, u_NormalScale, 1.0)));\n#else\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInputs, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0;\n float lod = (pbrInputs.perceptualRoughness * mipCount);\n vec3 brdf = SRGBtoLINEAR(texture2D(u_brdfLUT,\n vec2(pbrInputs.NdotV, 1.0 - pbrInputs.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(textureCube(u_DiffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(textureCubeLod(u_SpecularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(textureCube(u_SpecularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInputs.diffuseColor;\n vec3 specular = specularLight * (pbrInputs.specularColor * brdf.x + brdf.y);\n diffuse *= u_ScaleIBLAmbient.x;\n specular *= u_ScaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n\nvec3 diffuse(PBRInfo pbrInputs)\n{\n return pbrInputs.diffuseColor / M_PI;\n}\n\nvec3 specularReflection(PBRInfo pbrInputs)\n{\n return pbrInputs.reflectance0 +\n (pbrInputs.reflectance90 - pbrInputs.reflectance0) *\n pow(clamp(1.0 - pbrInputs.VdotH, 0.0, 1.0), 5.0);\n}\n\n\n\nfloat geometricOcclusion(PBRInfo pbrInputs)\n{\n float NdotL = pbrInputs.NdotL;\n float NdotV = pbrInputs.NdotV;\n float r = pbrInputs.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n\n\n\n\nfloat microfacetDistribution(PBRInfo pbrInputs)\n{\n float roughnessSq = pbrInputs.alphaRoughness * pbrInputs.alphaRoughness;\n float f = (pbrInputs.NdotH * roughnessSq - pbrInputs.NdotH) * pbrInputs.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInputs) {\n pbrInputs.NdotL = 1.0;\n pbrInputs.NdotH = 0.0;\n pbrInputs.LdotH = 0.0;\n pbrInputs.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInputs, vec3 lightDirection) {\n vec3 n = pbrInputs.n;\n vec3 v = pbrInputs.v;\n vec3 l = normalize(lightDirection);\n vec3 h = normalize(l+v);\n\n pbrInputs.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInputs.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInputs.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInputs.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInputs, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInputs, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInputs, vec3 lightColor) {\n vec3 F = specularReflection(pbrInputs);\n float G = geometricOcclusion(pbrInputs);\n float D = microfacetDistribution(pbrInputs);\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInputs);\n vec3 specContrib = F * G * D / (4.0 * pbrInputs.NdotL * pbrInputs.NdotV);\n return pbrInputs.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture2D(u_BaseColorSampler, pbr_vUV)) * u_BaseColorFactor;\n#else\n vec4 baseColor = u_BaseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < u_AlphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbr_uUnlit){\n color.rgb = baseColor.rgb;\n }\n else{\n\n\n float perceptualRoughness = u_MetallicRoughnessValues.y;\n float metallic = u_MetallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n\n vec4 mrSample = texture2D(u_MetallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n\n\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal();\n vec3 v = normalize(u_Camera - pbr_vPosition);\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInputs = PBRInfo(\n 0.0,\n NdotV,\n 0.0,\n 0.0,\n 0.0,\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n#ifdef USE_LIGHTS\n PBRInfo_setAmbientLight(pbrInputs);\n color += calculateFinalColor(pbrInputs, lighting_uAmbientLight.color);\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uDirectionalLightCount, i++) {\n if (i < lighting_uDirectionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInputs, lighting_uDirectionalLight[i].direction);\n color += calculateFinalColor(pbrInputs, lighting_uDirectionalLight[i].color);\n }\n }\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uPointLightCount, i++) {\n if (i < lighting_uPointLightCount) {\n PBRInfo_setPointLight(pbrInputs, lighting_uPointLight[i]);\n float attenuation = getPointLightAttenuation(lighting_uPointLight[i], distance(lighting_uPointLight[i].position, pbr_vPosition));\n color += calculateFinalColor(pbrInputs, lighting_uPointLight[i].color / attenuation);\n }\n }\n#endif\n#ifdef USE_IBL\n color += getIBLContribution(pbrInputs, n, reflection);\n#endif\n#ifdef HAS_OCCLUSIONMAP\n float ao = texture2D(u_OcclusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, u_OcclusionStrength);\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n vec3 emissive = SRGBtoLINEAR(texture2D(u_EmissiveSampler, pbr_vUV)).rgb * u_EmissiveFactor;\n color += emissive;\n#endif\n\n#ifdef PBR_DEBUG\n\n\n\n\n\n color = mix(color, baseColor.rgb, u_ScaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), u_ScaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), u_ScaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n",defines:{LIGHTING_FRAGMENT:1},dependencies:[QD]};class mR{constructor(t={}){const{id:e}=t;this.id=e||Fx(this.constructor.name),this.display=!0,this.position=new nE,this.rotation=new nE,this.scale=new nE(1,1,1),this.matrix=new bT,this.userData={},this.props={},this._setScenegraphNodeProps(t)}delete(){}setProps(t){return this._setScenegraphNodeProps(t),this}toString(){return`{type: ScenegraphNode, id: ${this.id})}`}setPosition(t){return Rx(3===t.length,"setPosition requires vector argument"),this.position=t,this}setRotation(t){return Rx(3===t.length,"setRotation requires vector argument"),this.rotation=t,this}setScale(t){return Rx(3===t.length,"setScale requires vector argument"),this.scale=t,this}setMatrix(t,e=!0){e?this.matrix.copy(t):this.matrix=t}setMatrixComponents({position:t,rotation:e,scale:n,update:i=!0}){return t&&this.setPosition(t),e&&this.setRotation(e),n&&this.setScale(n),i&&this.updateMatrix(),this}updateMatrix(){const t=this.position,e=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(t),this.matrix.rotateXYZ(e),this.matrix.scale(n),this}update(t={}){const{position:e,rotation:n,scale:i}=t;return e&&this.setPosition(e),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}getCoordinateUniforms(t,e){Rx(t),e=e||this.matrix;const n=new bT(t).multiplyRight(e),i=n.invert(),r=i.transpose();return{viewMatrix:t,modelMatrix:e,objectMatrix:e,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:r}}_setScenegraphNodeProps(t){"display"in t&&(this.display=t.display),"position"in t&&this.setPosition(t.position),"rotation"in t&&this.setRotation(t.rotation),"scale"in t&&this.setScale(t.scale),"matrix"in t&&this.setMatrix(t.matrix),Object.assign(this.props,t)}}class bR extends mR{constructor(t={}){t=Array.isArray(t)?{children:t}:t;const{children:e=[]}=t;Nw.assert(e.every(t=>t instanceof mR),"every child must an instance of ScenegraphNode"),super(t),this.children=e}add(...t){for(const e of t)Array.isArray(e)?this.add(...e):this.children.push(e);return this}remove(t){const e=this.children,n=e.indexOf(t);return n>-1&&e.splice(n,1),this}removeAll(){return this.children=[],this}delete(){this.children.forEach(t=>t.delete()),this.removeAll(),super.delete()}traverse(t,{worldMatrix:e=new bT}={}){const n=new bT(e).multiplyRight(this.matrix);for(const i of this.children)i instanceof bR?i.traverse(t,{worldMatrix:n}):t(i,{worldMatrix:n})}}function yR(){var t=new qS(4);return qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function vR(t,e,n){n*=.5;var i=Math.sin(n);return t[0]=i*e[0],t[1]=i*e[1],t[2]=i*e[2],t[3]=Math.cos(n),t}function _R(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=n[0],l=n[1],c=n[2],u=n[3];return t[0]=i*u+o*a+r*c-s*l,t[1]=r*u+o*l+s*a-i*c,t[2]=s*u+o*c+i*l-r*a,t[3]=o*u-i*a-r*l-s*c,t}var wR=tT,xR=function(){var t=XS(),e=YS(1,0,0),n=YS(0,1,0);return function(i,r,s){var o=KS(r,s);return o<-.999999?(QS(t,e,r),function(t){return Math.hypot(t[0],t[1],t[2])}(t)<1e-6&&QS(t,n,r),function(t,e){var n=e[0],i=e[1],r=e[2],s=n*n+i*i+r*r;s>0&&(s=1/Math.sqrt(s)),t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s}(t,t),vR(i,t,Math.PI),i):o>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(QS(t,r,s),i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=1+o,function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=n*o,t[1]=i*o,t[2]=r*o,t[3]=s*o,t}(i,i))}}();yR(),yR(),function(){var t=new qS(9);qS!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1}();const SR=[0,0,0,1],ER={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},CR={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function OR(t){if(!t._animation){const e=CR[t.componentType],n=ER[t.type],i=n*t.count,{buffer:r,byteOffset:s}=t.bufferView.data,o=new e(r,s+(t.byteOffset||0),i);if(1===n)t._animation=Array.from(o);else{const e=[];for(let t=0;t0)n=Math.sqrt(i+1),t[3]=.5*n,t[0]=(e[5]-e[7])*(n=.5/n),t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{var r=0;e[4]>e[0]&&(r=1),e[8]>e[3*r+r]&&(r=2);var s=(r+1)%3,o=(r+2)%3;n=Math.sqrt(e[3*r+r]-e[3*s+s]-e[3*o+o]+1),t[r]=.5*n,t[3]=(e[3*s+o]-e[3*o+s])*(n=.5/n),t[s]=(e[3*s+r]+e[3*r+s])*n,t[o]=(e[3*o+r]+e[3*r+o])*n}}(this,t),this.check()}identity(){return function(t){t[0]=0,t[1]=0,t[2]=0,t[3]=1}(this),this.check()}fromAxisRotation(t,e){return vR(this,t,e),this.check()}setAxisAngle(t,e){return this.fromAxisRotation(t,e)}get ELEMENTS(){return 4}get x(){return this[0]}set x(t){this[0]=zS(t)}get y(){return this[1]}set y(t){this[1]=zS(t)}get z(){return this[2]}set z(t){this[2]=zS(t)}get w(){return this[3]}set w(t){this[3]=zS(t)}len(){return function(t){return Math.hypot(t[0],t[1],t[2],t[3])}(this)}lengthSquared(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3];return e*e+n*n+i*i+r*r}(this)}dot(t,e){if(void 0!==e)throw new Error("Quaternion.dot only takes one argument");return function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}(this,t)}rotationTo(t,e){return xR(this,t,e),this.check()}add(t,e){if(void 0!==e)throw new Error("Quaternion.add only takes one argument");return function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3]}(this,this,t),this.check()}calculateW(){return function(t,e){var n=e[0],i=e[1],r=e[2];t[0]=n,t[1]=i,t[2]=r,t[3]=Math.sqrt(Math.abs(1-n*n-i*i-r*r))}(this,this),this.check()}conjugate(){return function(t,e){t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3]}(this,this),this.check()}invert(){return function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s,a=o?1/o:0;t[0]=-n*a,t[1]=-i*a,t[2]=-r*a,t[3]=s*a}(this,this),this.check()}lerp(t,e,n){return function(t,e,n,i){var r=e[0],s=e[1],o=e[2],a=e[3];t[0]=r+i*(n[0]-r),t[1]=s+i*(n[1]-s),t[2]=o+i*(n[2]-o),t[3]=a+i*(n[3]-a)}(this,t,e,n),this.check()}multiplyRight(t,e){return BS(!e),_R(this,this,t),this.check()}multiplyLeft(t,e){return BS(!e),_R(this,t,this),this.check()}normalize(){const t=this.len(),e=t>0?1/t:0;return this[0]=this[0]*e,this[1]=this[1]*e,this[2]=this[2]*e,this[3]=this[3]*e,0===t&&(this[3]=1),this.check()}rotateX(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+o*a,t[1]=r*l+s*a,t[2]=s*l-r*a,t[3]=o*l-i*a}(this,this,t),this.check()}rotateY(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l-s*a,t[1]=r*l+o*a,t[2]=s*l+i*a,t[3]=o*l-r*a}(this,this,t),this.check()}rotateZ(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+r*a,t[1]=r*l-i*a,t[2]=s*l+o*a,t[3]=o*l-s*a}(this,this,t),this.check()}scale(t){return wR(this,this,t),this.check()}slerp(t,e,n){switch(arguments.length){case 1:({start:t=SR,target:e,ratio:n}=arguments[0]);break;case 2:[e,n]=arguments,t=this}return function(t,e,n,i){var r,s,o,a,l,c=e[0],u=e[1],h=e[2],d=e[3],p=n[0],f=n[1],g=n[2],m=n[3];(s=c*p+u*f+h*g+d*m)<0&&(s=-s,p=-p,f=-f,g=-g,m=-m),1-s>WS?(r=Math.acos(s),o=Math.sin(r),a=Math.sin((1-i)*r)/o,l=Math.sin(i*r)/o):(a=1-i,l=i),t[0]=a*c+l*p,t[1]=a*u+l*f,t[2]=a*h+l*g,t[3]=a*d+l*m}(this,t,e,n),this.check()}transformVector4(t,e=t){return function(t,e,n){var i=e[0],r=e[1],s=e[2],o=n[0],a=n[1],l=n[2],c=n[3],u=c*i+a*s-l*r,h=c*r+l*i-o*s,d=c*s+o*r-a*i,p=-o*i-a*r-l*s;t[0]=u*c+p*-o+h*-l-d*-a,t[1]=h*c+p*-a+d*-o-u*-l,t[2]=d*c+p*-l+u*-a-h*-o,t[3]=e[3]}(e,t,this),US(e,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(t,e){return this.setAxisAngle(t,e)}premultiply(t,e){return this.multiplyLeft(t,e)}multiply(t,e){return this.multiplyRight(t,e)}};class AR{constructor(t){this.startTime=0,this.playing=!0,this.speed=1,this.channels=[],Object.assign(this,t)}animate(t){if(!this.playing)return;const e=(t/1e3-this.startTime)*this.speed;this.channels.forEach(({sampler:t,target:n,path:i})=>{(function(t,{input:e,interpolation:n,output:i},r,s){const o=t%e[e.length-1],a=e.findIndex(t=>t>=o),l=Math.max(0,a-1);if(!Array.isArray(r[s]))switch(s){case"translation":r[s]=[0,0,0];break;case"rotation":r[s]=[0,0,0,1];break;case"scale":r[s]=[1,1,1];break;default:Nw.warn(`Bad animation path ${s}`)()}Rx(r[s].length===i[l].length);const c=e[l],u=e[a];switch(n){case"STEP":!function(t,e,n){for(let i=0;ic&&function(t,e,n,i,r){if("rotation"===e){kR.slerp({start:n,target:i,ratio:r});for(let n=0;nc&&function(t,e,{p0:n,outTangent0:i,inTangent1:r,p1:s,tDiff:o,ratio:a}){for(let l=0;l{const i=e.name||`Animation-${n}`,r=e.samplers.map(({input:e,interpolation:n="LINEAR",output:i})=>({input:OR(t.accessors[e]),interpolation:n,output:OR(t.accessors[i])})),s=e.channels.map(({sampler:e,target:n})=>({sampler:r[e],target:t.nodes[n.node],path:n.path}));return new AR({name:i,channels:s})})}animate(t){this.setTime(t)}setTime(t){this.animations.forEach(e=>e.animate(t))}getAnimations(){return this.animations}}class MR extends mR{constructor(t,e={}){super(e),this.onBeforeRender=null,this.AfterRender=null,t instanceof xO?(this.model=t,this._setModelNodeProps(e)):this.model=new xO(t,e),this.managedResources=e.managedResources||[]}setProps(t){return super.setProps(t),this._setModelNodeProps(t),this}delete(){this.model&&(this.model.delete(),this.model=null),this.managedResources.forEach(t=>t.delete()),this.managedResources=[]}draw(...t){return this.model.draw(...t)}setUniforms(...t){return this.model.setUniforms(...t),this}setAttributes(...t){return this.model.setAttributes(...t),this}updateModuleSettings(...t){return this.model.updateModuleSettings(...t),this}_setModelNodeProps(t){this.model.setProps(t)}}class IR{constructor(t,{attributes:e,material:n,pbrDebug:i,imageBasedLightingEnvironment:r,lights:s,useTangents:o}){this.gl=t,this.defines={MANUAL_SRGB:1,SRGB_FAST_APPROXIMATION:1},CS(t,"GLSL_TEXTURE_LOD")&&(this.defines.USE_TEX_LOD=1),this.uniforms={u_Camera:[0,0,0],u_MetallicRoughnessValues:[1,1]},this.parameters={},this.generatedTextures=[],r&&(this.uniforms.u_DiffuseEnvSampler=r.getDiffuseEnvSampler(),this.uniforms.u_SpecularEnvSampler=r.getSpecularEnvSampler(),this.uniforms.u_brdfLUT=r.getBrdfTexture(),this.uniforms.u_ScaleIBLAmbient=[1,1]),i&&(this.uniforms.u_ScaleDiffBaseMR=[0,0,0,0],this.uniforms.u_ScaleFGDSpec=[0,0,0,0]),this.defineIfPresent(e.NORMAL,"HAS_NORMALS"),this.defineIfPresent(e.TANGENT&&o,"HAS_TANGENTS"),this.defineIfPresent(e.TEXCOORD_0,"HAS_UV"),this.defineIfPresent(r,"USE_IBL"),this.defineIfPresent(s,"USE_LIGHTS"),this.defineIfPresent(i,"PBR_DEBUG"),n&&this.parseMaterial(n)}defineIfPresent(t,e){t&&(this.defines[e]=1)}parseTexture(t,e,n=null){const i=t.texture.source.image;let r,s={};i.compressed?(r=i,s={[this.gl.TEXTURE_MIN_FILTER]:i.data.length>1?this.gl.LINEAR_MIPMAP_NEAREST:this.gl.LINEAR}):r={data:i};const o=new lS(this.gl,wt({id:t.name||t.id,parameters:wt(wt({},t.texture&&t.texture.sampler&&t.texture.sampler.parameters||{}),s),pixelStore:{[this.gl.UNPACK_FLIP_Y_WEBGL]:!1}},r));this.uniforms[e]=o,this.defineIfPresent(n,n),this.generatedTextures.push(o)}parsePbrMetallicRoughness(t){t.baseColorTexture&&this.parseTexture(t.baseColorTexture,"u_BaseColorSampler","HAS_BASECOLORMAP"),this.uniforms.u_BaseColorFactor=t.baseColorFactor||[1,1,1,1],t.metallicRoughnessTexture&&this.parseTexture(t.metallicRoughnessTexture,"u_MetallicRoughnessSampler","HAS_METALROUGHNESSMAP");const{metallicFactor:e=1,roughnessFactor:n=1}=t;this.uniforms.u_MetallicRoughnessValues=[e,n]}parseMaterial(t){if(this.uniforms.pbr_uUnlit=Boolean(t.unlit),t.pbrMetallicRoughness&&this.parsePbrMetallicRoughness(t.pbrMetallicRoughness),t.normalTexture){this.parseTexture(t.normalTexture,"u_NormalSampler","HAS_NORMALMAP");const{scale:e=1}=t.normalTexture;this.uniforms.u_NormalScale=e}if(t.occlusionTexture){this.parseTexture(t.occlusionTexture,"u_OcclusionSampler","HAS_OCCLUSIONMAP");const{strength:e=1}=t.occlusionTexture;this.uniforms.u_OcclusionStrength=e}if(t.emissiveTexture&&(this.parseTexture(t.emissiveTexture,"u_EmissiveSampler","HAS_EMISSIVEMAP"),this.uniforms.u_EmissiveFactor=t.emissiveFactor||[0,0,0]),"MASK"===t.alphaMode){const{alphaCutoff:e=.5}=t;this.defines.ALPHA_CUTOFF=1,this.uniforms.u_AlphaCutoff=e}else"BLEND"===t.alphaMode&&(Nw.warn("BLEND alphaMode might not work well because it requires mesh sorting")(),Object.assign(this.parameters,{blend:!0,blendEquation:this.gl.FUNC_ADD,blendFunc:[this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA]}))}}function DR(t,e){return Fw(t)?`#version 300 es\n${e}`:e}const RR={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},NR={modelOptions:{},pbrDebug:!1,imageBasedLightingEnvironment:null,lights:!0,useTangents:!1};class LR{constructor(t,e={}){this.gl=t,this.options=Object.assign({},NR,e)}instantiate(t){return this.gltf=t,(t.scenes||[]).map(t=>this.createScene(t))}createAnimator(){return Array.isArray(this.gltf.animations)?new PR(this.gltf):null}createScene(t){const e=(t.nodes||[]).map(t=>this.createNode(t));return new bR({id:t.name||t.id,children:e})}createNode(t){if(!t._node){const e=(t.children||[]).map(t=>this.createNode(t));t.mesh&&e.push(this.createMesh(t.mesh));const n=new bR({id:t.name||t.id,children:e});if(t.matrix)n.setMatrix(t.matrix);else{if(n.matrix.identity(),t.translation&&n.matrix.translate(t.translation),t.rotation){const e=(new bT).fromQuaternion(t.rotation);n.matrix.multiplyRight(e)}t.scale&&n.matrix.scale(t.scale)}t._node=n}return t._node}createMesh(t){if(!t._mesh){const e=(t.primitives||[]).map((e,n)=>this.createPrimitive(e,n,t)),n=new bR({id:t.name||t.id,children:e});t._mesh=n}return t._mesh}getVertexCount(t){Nw.warn("getVertexCount() not found")()}createPrimitive(t,e,n){return function(t,e){const{id:n,drawMode:i,vertexCount:r,attributes:s,modelOptions:o}=e,a=new IR(t,e);Nw.info(4,"createGLTFModel defines: ",a.defines)();const l=[];l.push(...a.generatedTextures),l.push(...Object.values(s).map(t=>t.buffer));const c=new MR(t,Object.assign({id:n,drawMode:i,vertexCount:r,modules:[gR],defines:a.defines,parameters:a.parameters,vs:DR(t,"\n#if (__VERSION__ < 300)\n #define _attr attribute\n#else\n #define _attr in\n#endif\n\n _attr vec4 POSITION;\n\n #ifdef HAS_NORMALS\n _attr vec4 NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _attr vec4 TANGENT;\n #endif\n\n #ifdef HAS_UV\n _attr vec2 TEXCOORD_0;\n #endif\n\n void main(void) {\n vec4 _NORMAL = vec4(0.);\n vec4 _TANGENT = vec4(0.);\n vec2 _TEXCOORD_0 = vec2(0.);\n\n #ifdef HAS_NORMALS\n _NORMAL = NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _TANGENT = TANGENT;\n #endif\n\n #ifdef HAS_UV\n _TEXCOORD_0 = TEXCOORD_0;\n #endif\n\n pbr_setPositionNormalTangentUV(POSITION, _NORMAL, _TANGENT, _TEXCOORD_0);\n gl_Position = u_MVPMatrix * POSITION;\n }\n"),fs:DR(t,"\n#if (__VERSION__ < 300)\n #define fragmentColor gl_FragColor\n#else\n out vec4 fragmentColor;\n#endif\n\n void main(void) {\n fragmentColor = pbr_filterColor(vec4(0));\n }\n"),managedResources:l},o));return c.setProps({attributes:s}),c.setUniforms(a.uniforms),c}(this.gl,Object.assign({id:t.name||`${n.name||n.id}-primitive-${e}`,drawMode:t.mode||4,vertexCount:t.indices?t.indices.count:this.getVertexCount(t.attributes),attributes:this.createAttributes(t.attributes,t.indices),material:t.material},this.options))}createAttributes(t,e){const n={};return Object.keys(t).forEach(e=>{n[e]=this.createAccessor(t[e],this.createBuffer(t[e],this.gl.ARRAY_BUFFER))}),e&&(n.indices=this.createAccessor(e,this.createBuffer(e,this.gl.ELEMENT_ARRAY_BUFFER))),Nw.info(4,"glTF Attributes",{attributes:t,indices:e,generated:n})(),n}createBuffer(t,e){t.bufferView||(t.bufferView={});const{bufferView:n}=t;return n.lumaBuffers||(n.lumaBuffers={}),n.lumaBuffers[e]||(n.lumaBuffers[e]=new tS(this.gl,{id:`from-${n.id}`,data:n.data||t.value,target:e})),n.lumaBuffers[e]}createAccessor(t,e){return new Kx({buffer:e,offset:t.byteOffset||0,stride:t.bufferView.byteStride||0,type:t.componentType,size:RR[t.type]})}createSampler(t){return t}needsPOT(){return!1}}function jR(t,e,n){if(t.byteLength<=e+n)return"";const i=new DataView(t);let r="";for(let s=0;se[t.name]);return new UR(n,this.metadata)}selectAt(...t){const e=t.map(t=>this.fields[t]).filter(Boolean);return new UR(e,this.metadata)}assign(t){let e,n=this.metadata;if(t instanceof UR){const i=t;e=i.fields,n=HR(HR(new Map,this.metadata),i.metadata)}else e=t;const i=Object.create(null);for(const s of this.fields)i[s.name]=s;for(const s of e)i[s.name]=s;const r=Object.values(i);return new UR(r,n)}}function HR(t,e){return new Map([...t||new Map,...e||new Map])}let $R,GR,WR,qR,XR,YR,KR,QR;!function(t){t[t.NONE=0]="NONE",t[t.Null=1]="Null",t[t.Int=2]="Int",t[t.Float=3]="Float",t[t.Binary=4]="Binary",t[t.Utf8=5]="Utf8",t[t.Bool=6]="Bool",t[t.Decimal=7]="Decimal",t[t.Date=8]="Date",t[t.Time=9]="Time",t[t.Timestamp=10]="Timestamp",t[t.Interval=11]="Interval",t[t.List=12]="List",t[t.Struct=13]="Struct",t[t.Union=14]="Union",t[t.FixedSizeBinary=15]="FixedSizeBinary",t[t.FixedSizeList=16]="FixedSizeList",t[t.Map=17]="Map",t[t.Dictionary=-1]="Dictionary",t[t.Int8=-2]="Int8",t[t.Int16=-3]="Int16",t[t.Int32=-4]="Int32",t[t.Int64=-5]="Int64",t[t.Uint8=-6]="Uint8",t[t.Uint16=-7]="Uint16",t[t.Uint32=-8]="Uint32",t[t.Uint64=-9]="Uint64",t[t.Float16=-10]="Float16",t[t.Float32=-11]="Float32",t[t.Float64=-12]="Float64",t[t.DateDay=-13]="DateDay",t[t.DateMillisecond=-14]="DateMillisecond",t[t.TimestampSecond=-15]="TimestampSecond",t[t.TimestampMillisecond=-16]="TimestampMillisecond",t[t.TimestampMicrosecond=-17]="TimestampMicrosecond",t[t.TimestampNanosecond=-18]="TimestampNanosecond",t[t.TimeSecond=-19]="TimeSecond",t[t.TimeMillisecond=-20]="TimeMillisecond",t[t.TimeMicrosecond=-21]="TimeMicrosecond",t[t.TimeNanosecond=-22]="TimeNanosecond",t[t.DenseUnion=-23]="DenseUnion",t[t.SparseUnion=-24]="SparseUnion",t[t.IntervalDayTime=-25]="IntervalDayTime",t[t.IntervalYearMonth=-26]="IntervalYearMonth"}($R||($R={}));class ZR{static isNull(t){return t&&t.typeId===$R.Null}static isInt(t){return t&&t.typeId===$R.Int}static isFloat(t){return t&&t.typeId===$R.Float}static isBinary(t){return t&&t.typeId===$R.Binary}static isUtf8(t){return t&&t.typeId===$R.Utf8}static isBool(t){return t&&t.typeId===$R.Bool}static isDecimal(t){return t&&t.typeId===$R.Decimal}static isDate(t){return t&&t.typeId===$R.Date}static isTime(t){return t&&t.typeId===$R.Time}static isTimestamp(t){return t&&t.typeId===$R.Timestamp}static isInterval(t){return t&&t.typeId===$R.Interval}static isList(t){return t&&t.typeId===$R.List}static isStruct(t){return t&&t.typeId===$R.Struct}static isUnion(t){return t&&t.typeId===$R.Union}static isFixedSizeBinary(t){return t&&t.typeId===$R.FixedSizeBinary}static isFixedSizeList(t){return t&&t.typeId===$R.FixedSizeList}static isMap(t){return t&&t.typeId===$R.Map}static isDictionary(t){return t&&t.typeId===$R.Dictionary}get typeId(){return $R.NONE}compareTo(t){return this===t}}Symbol,Symbol,GR=Symbol.toStringTag;class JR extends ZR{constructor(t,e){super(),cA(this,"isSigned",void 0),cA(this,"bitWidth",void 0),this.isSigned=t,this.bitWidth=e}get typeId(){return $R.Int}get[GR](){return"Int"}toString(){return`${this.isSigned?"I":"Ui"}nt${this.bitWidth}`}}class tN extends JR{constructor(){super(!0,8)}}class eN extends JR{constructor(){super(!0,16)}}class nN extends JR{constructor(){super(!0,32)}}class iN extends JR{constructor(){super(!1,8)}}class rN extends JR{constructor(){super(!1,16)}}class sN extends JR{constructor(){super(!1,32)}}WR=Symbol.toStringTag;class oN extends ZR{constructor(t){super(),cA(this,"precision",void 0),this.precision=t}get typeId(){return $R.Float}get[WR](){return"Float"}toString(){return`Float${this.precision}`}}class aN extends oN{constructor(){super(32)}}class lN extends oN{constructor(){super(64)}}Symbol,Symbol,qR=Symbol.toStringTag,XR=Symbol.toStringTag,YR=Symbol.toStringTag,KR=Symbol.toStringTag,QR=Symbol.toStringTag;class cN extends ZR{constructor(t,e){super(),cA(this,"listSize",void 0),cA(this,"children",void 0),this.listSize=t,this.children=[e]}get typeId(){return $R.FixedSizeList}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get[QR](){return"FixedSizeList"}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}}class uN{constructor(t,e,n=!1,i=new Map){cA(this,"name",void 0),cA(this,"type",void 0),cA(this,"nullable",void 0),cA(this,"metadata",void 0),this.name=t,this.type=e,this.nullable=n,this.metadata=i}get typeId(){return this.type&&this.type.typeId}clone(){return new uN(this.name,this.type,this.nullable,this.metadata)}compareTo(t){return this.name===t.name&&this.type===t.type&&this.nullable===t.nullable&&this.metadata===t.metadata}toString(){return`${this.type}${this.nullable?", nullable":""}${this.metadata?`, metadata: ${this.metadata}`:""}`}}function hN(t,e,n){const i=n?dN(n.metadata):void 0,r=function(t){switch(t.constructor){case Int8Array:return new tN;case Uint8Array:return new iN;case Int16Array:return new eN;case Uint16Array:return new rN;case Int32Array:return new nN;case Uint32Array:return new sN;case Float32Array:return new aN;case Float64Array:return new lN;default:throw new Error("array type not supported")}}(e.value);return new uN(t,new cN(e.size,new uN("value",r)),!1,i)}function dN(t){const e=new Map;for(const n in t)e.set(`${n}.string`,JSON.stringify(t[n]));return e}const pN={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},fN={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array};class gN{constructor(t){cA(this,"draco",void 0),cA(this,"decoder",void 0),cA(this,"metadataQuerier",void 0),this.draco=t,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}destroy(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}parseSync(t,e={}){const n=new this.draco.DecoderBuffer;n.Init(new Int8Array(t),t.byteLength),this._disableAttributeTransforms(e);const i=this.decoder.GetEncodedGeometryType(n),r=i===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let t;switch(i){case this.draco.TRIANGULAR_MESH:t=this.decoder.DecodeBufferToMesh(n,r);break;case this.draco.POINT_CLOUD:t=this.decoder.DecodeBufferToPointCloud(n,r);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!t.ok()||!r.ptr){const e=`DRACO decompression failed: ${t.error_msg()}`;throw new Error(e)}const s=this._getDracoLoaderData(r,i,e),o=this._getMeshData(r,s,e),a=function(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,o=-1/0;const a=t.POSITION?t.POSITION.value:[],l=a&&a.length;for(let c=0;cr?t:r,s=l>s?l:s,o=u>o?u:o}return[[e,n,i],[r,s,o]]}(o.attributes),l=function(t,e,n){const i=dN(e.metadata),r=[],s=function(t){const e={};for(const n in t){const i=t[n];e[i.name||"undefined"]=i}return e}(e.attributes);for(const o in t){const e=hN(o,t[o],s[o]);r.push(e)}if(n){const t=hN("indices",n);r.push(t)}return new UR(r,i)}(o.attributes,s,o.indices);return ii(wt({loader:"draco",loaderData:s,header:{vertexCount:r.num_points(),boundingBox:a}},o),{schema:l})}finally{this.draco.destroy(n),r&&this.draco.destroy(r)}}_getDracoLoaderData(t,e,n){const i=this._getTopLevelMetadata(t),r=this._getDracoAttributes(t,n);return{geometry_type:e,num_attributes:t.num_attributes(),num_points:t.num_points(),num_faces:t instanceof this.draco.Mesh?t.num_faces():0,metadata:i,attributes:r}}_getDracoAttributes(t,e){const n={};for(let i=0;ithis.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits(),range:e.range(),min_values:new Float32Array([1,2,3]).map(t=>e.min_value(t))}}finally{this.draco.destroy(e)}}return null}_getOctahedronTransform(t,e){const{octahedronAttributes:n=[]}=e,i=t.attribute_type();if(n.map(t=>this.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits()}}finally{this.draco.destroy(e)}}return null}}var mN=n(49125);const bN={};function yN(t){return vN.apply(this,arguments)}function vN(){return(vN=gS(function*(t,e=null,n={}){return e&&(t=_N(t,e,n)),bN[t]=bN[t]||wN(t),yield bN[t]})).apply(this,arguments)}function _N(t,e,n){if(t.startsWith("http"))return t;const i=n.modules||{};return i[t]?i[t]:CA?n.CDN?(wA(n.CDN.startsWith("http")),`${n.CDN}/${e}@3.0.12/dist/libs/${t}`):OA?`../src/libs/${t}`:`modules/${e}/src/libs/${t}`:`modules/${e}/dist/libs/${t}`}function wN(t){return xN.apply(this,arguments)}function xN(){return(xN=gS(function*(t){return t.endsWith("wasm")?yield(yield fetch(t)).arrayBuffer():CA?OA?importScripts(t):SN(yield(yield fetch(t)).text(),t):mN.requireFromFile&&(yield mN.requireFromFile(t))})).apply(this,arguments)}function SN(t,e){if(!CA)return mN.requireFromString&&mN.requireFromString(t,e);if(OA)return eval.call(EA,t),null;const n=document.createElement("script");n.id=e;try{n.appendChild(document.createTextNode(t))}catch(i){n.text=t}return document.body.appendChild(n),null}const EN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.js",CN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_wasm_wrapper.js",ON="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.wasm";let TN;function kN(t){return AN.apply(this,arguments)}function AN(){return(AN=gS(function*(t){const e=t.modules||{};return TN=e.draco3d?TN||e.draco3d.createDecoderModule({}).then(t=>({draco:t})):TN||PN(t),yield TN})).apply(this,arguments)}function PN(t){return MN.apply(this,arguments)}function MN(){return(MN=gS(function*(t){let e,n;switch(t.draco&&t.draco.decoderType){case"js":e=yield yN(EN,"draco",t);break;case"wasm":default:[e,n]=yield Promise.all([yield yN(CN,"draco",t),yield yN(ON,"draco",t)])}return e=e||globalThis.DracoDecoderModule,yield IN(e,n)})).apply(this,arguments)}function IN(t,e){const n={};return e&&(n.wasmBinary=e),new Promise(e=>{t(ii(wt({},n),{onModuleLoaded:t=>e({draco:t})}))})}const DN=ii(wt({},zR),{parse:function(t,e){return RN.apply(this,arguments)}});function RN(){return(RN=gS(function*(t,e){const{draco:n}=yield kN(e),i=new gN(n);try{return i.parseSync(t,null==e?void 0:e.draco)}finally{i.destroy()}})).apply(this,arguments)}function NN(t,e){return Nk(t>=0),Nk(e>0),t+(e-1)&~(e-1)}function LN(t,e,n){let i;return i=t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer||t.arrayBuffer,t.byteOffset,t.byteLength),e.set(i,n),n+NN(i.byteLength,4)}const jN=["SCALAR","VEC2","VEC3","VEC4"],FN=[[Int8Array,5120],[Uint8Array,5121],[Int16Array,5122],[Uint16Array,5123],[Uint32Array,5125],[Float32Array,5126],[Float64Array,5130]],BN=new Map(FN),VN={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},zN={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},UN={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function HN(t){return jN[t-1]||jN[0]}function $N(t){const e=BN.get(t.constructor);if(!e)throw new Error("Illegal typed array");return e}function GN(t,e){const n=UN[t.componentType],i=VN[t.type],r=t.count*i,s=t.count*i*zN[t.componentType];return FR(s>=0&&s<=e.byteLength),{ArrayType:n,length:r,byteLength:s}}const WN={asset:{version:"2.0",generator:"loaders.gl"},buffers:[]};class qN{constructor(t){cA(this,"gltf",void 0),cA(this,"sourceBuffers",void 0),cA(this,"byteLength",void 0),this.gltf=t||{json:wt({},WN),buffers:[]},this.sourceBuffers=[],this.byteLength=0,this.gltf.buffers&&this.gltf.buffers[0]&&(this.byteLength=this.gltf.buffers[0].byteLength,this.sourceBuffers=[this.gltf.buffers[0]])}get json(){return this.gltf.json}getApplicationData(t){return this.json[t]}getExtraData(t){return(this.json.extras||{})[t]}getExtension(t){return this.getUsedExtensions().find(e=>e===t)?(this.json.extensions||{})[t]||!0:null}getRequiredExtension(t){return this.getRequiredExtensions().find(e=>e===t)?this.getExtension(t):null}getRequiredExtensions(){return this.json.extensionsRequired||[]}getUsedExtensions(){return this.json.extensionsUsed||[]}getObjectExtension(t,e){return(t.extensions||{})[e]}getScene(t){return this.getObject("scenes",t)}getNode(t){return this.getObject("nodes",t)}getSkin(t){return this.getObject("skins",t)}getMesh(t){return this.getObject("meshes",t)}getMaterial(t){return this.getObject("materials",t)}getAccessor(t){return this.getObject("accessors",t)}getTexture(t){return this.getObject("textures",t)}getSampler(t){return this.getObject("samplers",t)}getImage(t){return this.getObject("images",t)}getBufferView(t){return this.getObject("bufferViews",t)}getBuffer(t){return this.getObject("buffers",t)}getObject(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];if(!n)throw new Error(`glTF file error: Could not find ${t}[${e}]`);return n}getTypedArrayForBufferView(t){t=this.getBufferView(t);const e=this.gltf.buffers[t.buffer];return FR(e),new Uint8Array(e.arrayBuffer,(t.byteOffset||0)+e.byteOffset,t.byteLength)}getTypedArrayForAccessor(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data,{ArrayType:i,length:r}=GN(t,e);return new i(n,e.byteOffset+t.byteOffset,r)}getTypedArrayForImageData(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data;return new Uint8Array(n,e.byteOffset||0,e.byteLength)}addApplicationData(t,e){return this.json[t]=e,this}addExtraData(t,e){return this.json.extras=this.json.extras||{},this.json.extras[t]=e,this}addObjectExtension(t,e,n){return t.extensions=t.extensions||{},t.extensions[e]=n,this.registerUsedExtension(e),this}setObjectExtension(t,e,n){(t.extensions||{})[e]=n}removeObjectExtension(t,e){const n=t.extensions||{},i=n[e];return delete n[e],i}addExtension(t,e={}){return FR(e),this.json.extensions=this.json.extensions||{},this.json.extensions[t]=e,this.registerUsedExtension(t),e}addRequiredExtension(t,e={}){return FR(e),this.addExtension(t,e),this.registerRequiredExtension(t),e}registerUsedExtension(t){this.json.extensionsUsed=this.json.extensionsUsed||[],this.json.extensionsUsed.find(e=>e===t)||this.json.extensionsUsed.push(t)}registerRequiredExtension(t){this.registerUsedExtension(t),this.json.extensionsRequired=this.json.extensionsRequired||[],this.json.extensionsRequired.find(e=>e===t)||this.json.extensionsRequired.push(t)}removeExtension(t){this.json.extensionsRequired&&this._removeStringFromArray(this.json.extensionsRequired,t),this.json.extensionsUsed&&this._removeStringFromArray(this.json.extensionsUsed,t),this.json.extensions&&delete this.json.extensions[t]}setDefaultScene(t){this.json.scene=t}addScene(t){const{nodeIndices:e}=t;return this.json.scenes=this.json.scenes||[],this.json.scenes.push({nodes:e}),this.json.scenes.length-1}addNode(t){const{meshIndex:e,matrix:n}=t;this.json.nodes=this.json.nodes||[];const i={mesh:e};return n&&(i.matrix=n),this.json.nodes.push(i),this.json.nodes.length-1}addMesh(t){const{attributes:e,indices:n,material:i,mode:r=4}=t,s={primitives:[{attributes:this._addAttributes(e),mode:r}]};if(n){const t=this._addIndices(n);s.primitives[0].indices=t}return Number.isFinite(i)&&(s.primitives[0].material=i),this.json.meshes=this.json.meshes||[],this.json.meshes.push(s),this.json.meshes.length-1}addPointCloud(t){const e={primitives:[{attributes:this._addAttributes(t),mode:0}]};return this.json.meshes=this.json.meshes||[],this.json.meshes.push(e),this.json.meshes.length-1}addImage(t,e){const n=YI(t),i=e||(null==n?void 0:n.mimeType),r={bufferView:this.addBufferView(t),mimeType:i};return this.json.images=this.json.images||[],this.json.images.push(r),this.json.images.length-1}addBufferView(t){const e=t.byteLength;FR(Number.isFinite(e)),this.sourceBuffers=this.sourceBuffers||[],this.sourceBuffers.push(t);const n={buffer:0,byteOffset:this.byteLength,byteLength:e};return this.byteLength+=NN(e,4),this.json.bufferViews=this.json.bufferViews||[],this.json.bufferViews.push(n),this.json.bufferViews.length-1}addAccessor(t,e){const n={bufferView:t,type:HN(e.size),componentType:e.componentType,count:e.count,max:e.max,min:e.min};return this.json.accessors=this.json.accessors||[],this.json.accessors.push(n),this.json.accessors.length-1}addBinaryBuffer(t,e={size:3}){const n=this.addBufferView(t);let i={min:e.min,max:e.max};(!i.min||!i.max)&&(i=this._getAccessorMinMax(t,e.size));const r={size:e.size,componentType:$N(t),count:Math.round(t.length/e.size),min:i.min,max:i.max};return this.addAccessor(n,Object.assign(r,e))}addTexture(t){const{imageIndex:e}=t,n={source:e};return this.json.textures=this.json.textures||[],this.json.textures.push(n),this.json.textures.length-1}addMaterial(t){return this.json.materials=this.json.materials||[],this.json.materials.push(t),this.json.materials.length-1}createBinaryChunk(){var t,e;this.gltf.buffers=[];const n=this.byteLength,i=new ArrayBuffer(n),r=new Uint8Array(i);let s=0;for(const o of this.sourceBuffers||[])s=LN(o,r,s);null!==(t=this.json)&&void 0!==t&&null!==(e=t.buffers)&&void 0!==e&&e[0]?this.json.buffers[0].byteLength=n:this.json.buffers=[{byteLength:n}],this.gltf.binary=i,this.sourceBuffers=[i]}_removeStringFromArray(t,e){let n=!0;for(;n;){const i=t.indexOf(e);i>-1?t.splice(i,1):n=!1}}_addAttributes(t={}){const e={};for(const n in t){const i=t[n],r=this._getGltfAttributeName(n),s=this.addBinaryBuffer(i.value,i);e[r]=s}return e}_addIndices(t){return this.addBinaryBuffer(t,{size:1})}_getGltfAttributeName(t){switch(t.toLowerCase()){case"position":case"positions":case"vertices":return"POSITION";case"normal":case"normals":return"NORMAL";case"color":case"colors":return"COLOR_0";case"texcoord":case"texcoords":return"TEXCOORD_0";default:return t}}_getAccessorMinMax(t,e){const n={min:null,max:null};if(t.length0)throw new Error("glTF: Empty primitive detected: Draco decompression failure?")}function*lL(t){for(const e of t.json.meshes||[])for(const t of e.primitives)yield t}function cL(t){return uL.apply(this,arguments)}function uL(){return(uL=gS(function*(t){const e=new qN(t),{json:n}=e;e.removeExtension(QN);for(const i of n.materials||[])i.extensions&&i.extensions.KHR_materials_unlit&&(i.unlit=!0),e.removeObjectExtension(i,QN)})).apply(this,arguments)}function hL(t){const e=new qN(t),{json:n}=e;if(e.materials)for(const i of n.materials||[])i.unlit&&(delete i.unlit,e.addObjectExtension(i,QN,{}),e.addExtension(QN))}function dL(t){return pL.apply(this,arguments)}function pL(){return(pL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(KN);i&&(e.json.lights=i.lights,e.removeExtension(KN));for(const r of n.nodes||[]){const t=e.getObjectExtension(r,KN);t&&(r.light=t.light),e.removeObjectExtension(r,KN)}})).apply(this,arguments)}function fL(t){return gL.apply(this,arguments)}function gL(){return(gL=gS(function*(t){const e=new qN(t),{json:n}=e;if(n.lights){const t=e.addExtension(KN);FR(!t.lights),t.lights=n.lights,delete n.lights}if(e.json.lights){for(const t of e.json.lights)e.addObjectExtension(t.node,KN,t);delete e.json.lights}})).apply(this,arguments)}function mL(t){return bL.apply(this,arguments)}function bL(){return(bL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(ZN);if(i){const t=_L(i,e);for(const i of n.materials||[]){const n=e.getObjectExtension(i,ZN);n&&(i.technique=Object.assign({},n,t[n.technique]),i.technique.values=wL(i.technique,e)),e.removeObjectExtension(i,ZN)}e.removeExtension(ZN)}})).apply(this,arguments)}function yL(t,e){return vL.apply(this,arguments)}function vL(){return(vL=gS(function*(t,e){})).apply(this,arguments)}function _L(t,e){const{programs:n=[],shaders:i=[],techniques:r=[]}=t,s=new TextDecoder;return i.forEach(t=>{if(!Number.isFinite(t.bufferView))throw new Error("KHR_techniques_webgl: no shader code");t.code=s.decode(e.getTypedArrayForBufferView(t.bufferView))}),n.forEach(t=>{t.fragmentShader=i[t.fragmentShader],t.vertexShader=i[t.vertexShader]}),r.forEach(t=>{t.program=n[t.program]}),r}function wL(t,e){const n=Object.assign({},t.values);return Object.keys(t.uniforms||{}).forEach(e=>{t.uniforms[e].value&&!(e in n)&&(n[e]=t.uniforms[e].value)}),Object.keys(n).forEach(t=>{"object"==typeof n[t]&&void 0!==n[t].index&&(n[t].texture=e.getTexture(n[t].index))}),n}const xL={KHR_draco_mesh_compression:i,KHR_materials_unlit:r,KHR_lights_punctual:s,KHR_techniques_webgl:o};function SL(t){return EL.apply(this,arguments)}function EL(){return(EL=gS(function*(t,e={},n){for(const r in xL){var i;const s=(null==e||null===(i=e.gltf)||void 0===i?void 0:i.excludeExtensions)||{};r in s&&!s[r]||(yield xL[r].decode(t,e,n))}})).apply(this,arguments)}const CL={accessors:"accessor",animations:"animation",buffers:"buffer",bufferViews:"bufferView",images:"image",materials:"material",meshes:"mesh",nodes:"node",samplers:"sampler",scenes:"scene",skins:"skin",textures:"texture"},OL={accessor:"accessors",animations:"animation",buffer:"buffers",bufferView:"bufferViews",image:"images",material:"materials",mesh:"meshes",node:"nodes",sampler:"samplers",scene:"scenes",skin:"skins",texture:"textures"};class TL{constructor(t){this.idToIndexMap={animations:{},accessors:{},buffers:{},bufferViews:{},images:{},materials:{},meshes:{},nodes:{},samplers:{},scenes:{},skins:{},textures:{}}}normalize(t,e){this.json=t.json;const n=t.json;switch(n.asset&&n.asset.version){case"2.0":return;case void 0:case"1.0":break;default:return void console.warn(`glTF: Unknown version ${n.asset.version}`)}if(!e.normalize)throw new Error("glTF v1 is not supported.");console.warn("Converting glTF v1 to glTF v2 format. This is experimental and may fail."),this._addAsset(n),this._convertTopLevelObjectsToArrays(n),function(t){const e=new qN(t),{json:n}=e;for(const i of n.images||[]){const t=e.removeObjectExtension(i,XN);t&&Object.assign(i,t)}n.buffers&&n.buffers[0]&&delete n.buffers[0].uri,e.removeExtension(XN)}(t),this._convertObjectIdsToArrayIndices(n),this._updateObjects(n),this._updateMaterial(n)}_addAsset(t){t.asset=t.asset||{},t.asset.version="2.0",t.asset.generator=t.asset.generator||"Normalized to glTF 2.0 by loaders.gl"}_convertTopLevelObjectsToArrays(t){for(const e in CL)this._convertTopLevelObjectToArray(t,e)}_convertTopLevelObjectToArray(t,e){const n=t[e];if(n&&!Array.isArray(n)){t[e]=[];for(const i in n){const r=n[i];r.id=r.id||i;const s=t[e].length;t[e].push(r),this.idToIndexMap[e][i]=s}}}_convertObjectIdsToArrayIndices(t){for(const e in CL)this._convertIdsToIndices(t,e);"scene"in t&&(t.scene=this._convertIdToIndex(t.scene,"scene"));for(const e of t.textures)this._convertTextureIds(e);for(const e of t.meshes)this._convertMeshIds(e);for(const e of t.nodes)this._convertNodeIds(e);for(const e of t.scenes)this._convertSceneIds(e)}_convertTextureIds(t){t.source&&(t.source=this._convertIdToIndex(t.source,"image"))}_convertMeshIds(t){for(const e of t.primitives){const{attributes:t,indices:n,material:i}=e;for(const e in t)t[e]=this._convertIdToIndex(t[e],"accessor");n&&(e.indices=this._convertIdToIndex(n,"accessor")),i&&(e.material=this._convertIdToIndex(i,"material"))}}_convertNodeIds(t){t.children&&(t.children=t.children.map(t=>this._convertIdToIndex(t,"node"))),t.meshes&&(t.meshes=t.meshes.map(t=>this._convertIdToIndex(t,"mesh")))}_convertSceneIds(t){t.nodes&&(t.nodes=t.nodes.map(t=>this._convertIdToIndex(t,"node")))}_convertIdsToIndices(t,e){t[e]||(console.warn(`gltf v1: json doesn't contain attribute ${e}`),t[e]=[]);for(const n of t[e])for(const t in n){const e=this._convertIdToIndex(n[t],t);n[t]=e}}_convertIdToIndex(t,e){const n=OL[e];if(n in this.idToIndexMap){const i=this.idToIndexMap[n][t];if(!Number.isFinite(i))throw new Error(`gltf v1: failed to resolve ${e} with id ${t}`);return i}return t}_updateObjects(t){for(const e of this.json.buffers)delete e.type}_updateMaterial(t){for(const e of t.materials){e.pbrMetallicRoughness={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1};const n=e.values&&e.values.tex,i=t.textures.findIndex(t=>t.id===n);-1!==i&&(e.pbrMetallicRoughness.baseColorTexture={index:i})}}}function kL(t,e={}){return(new TL).normalize(t,e)}const AL={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},PL={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},ML={TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,REPEAT:10497,LINEAR:9729,NEAREST_MIPMAP_LINEAR:9986},IL={magFilter:ML.TEXTURE_MAG_FILTER,minFilter:ML.TEXTURE_MIN_FILTER,wrapS:ML.TEXTURE_WRAP_S,wrapT:ML.TEXTURE_WRAP_T},DL={[ML.TEXTURE_MAG_FILTER]:ML.LINEAR,[ML.TEXTURE_MIN_FILTER]:ML.NEAREST_MIPMAP_LINEAR,[ML.TEXTURE_WRAP_S]:ML.REPEAT,[ML.TEXTURE_WRAP_]:ML.REPEAT};class RL{postProcess(t,e={}){const{json:n,buffers:i=[],images:r=[],baseUri:s=""}=t;return FR(n),this.baseUri=s,this.json=n,this.buffers=i,this.images=r,this._resolveTree(this.json,e),this.json}_resolveTree(t,e={}){t.bufferViews&&(t.bufferViews=t.bufferViews.map((t,e)=>this._resolveBufferView(t,e))),t.images&&(t.images=t.images.map((t,e)=>this._resolveImage(t,e))),t.samplers&&(t.samplers=t.samplers.map((t,e)=>this._resolveSampler(t,e))),t.textures&&(t.textures=t.textures.map((t,e)=>this._resolveTexture(t,e))),t.accessors&&(t.accessors=t.accessors.map((t,e)=>this._resolveAccessor(t,e))),t.materials&&(t.materials=t.materials.map((t,e)=>this._resolveMaterial(t,e))),t.meshes&&(t.meshes=t.meshes.map((t,e)=>this._resolveMesh(t,e))),t.nodes&&(t.nodes=t.nodes.map((t,e)=>this._resolveNode(t,e))),t.skins&&(t.skins=t.skins.map((t,e)=>this._resolveSkin(t,e))),t.scenes&&(t.scenes=t.scenes.map((t,e)=>this._resolveScene(t,e))),void 0!==t.scene&&(t.scene=t.scenes[this.json.scene])}getScene(t){return this._get("scenes",t)}getNode(t){return this._get("nodes",t)}getSkin(t){return this._get("skins",t)}getMesh(t){return this._get("meshes",t)}getMaterial(t){return this._get("materials",t)}getAccessor(t){return this._get("accessors",t)}getCamera(t){return null}getTexture(t){return this._get("textures",t)}getSampler(t){return this._get("samplers",t)}getImage(t){return this._get("images",t)}getBufferView(t){return this._get("bufferViews",t)}getBuffer(t){return this._get("buffers",t)}_get(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];return n||console.warn(`glTF file error: Could not find ${t}[${e}]`),n}_resolveScene(t,e){return t.id=t.id||`scene-${e}`,t.nodes=(t.nodes||[]).map(t=>this.getNode(t)),t}_resolveNode(t,e){return t.id=t.id||`node-${e}`,t.children&&(t.children=t.children.map(t=>this.getNode(t))),void 0!==t.mesh?t.mesh=this.getMesh(t.mesh):void 0!==t.meshes&&t.meshes.length&&(t.mesh=t.meshes.reduce((t,e)=>{const n=this.getMesh(e);return t.id=n.id,t.primitives=t.primitives.concat(n.primitives),t},{primitives:[]})),void 0!==t.camera&&(t.camera=this.getCamera(t.camera)),void 0!==t.skin&&(t.skin=this.getSkin(t.skin)),t}_resolveSkin(t,e){return t.id=t.id||`skin-${e}`,t.inverseBindMatrices=this.getAccessor(t.inverseBindMatrices),t}_resolveMesh(t,e){return t.id=t.id||`mesh-${e}`,t.primitives&&(t.primitives=t.primitives.map(t=>{const e=(t=wt({},t)).attributes;t.attributes={};for(const n in e)t.attributes[n]=this.getAccessor(e[n]);return void 0!==t.indices&&(t.indices=this.getAccessor(t.indices)),void 0!==t.material&&(t.material=this.getMaterial(t.material)),t})),t}_resolveMaterial(t,e){if(t.id=t.id||`material-${e}`,t.normalTexture&&(t.normalTexture=wt({},t.normalTexture),t.normalTexture.texture=this.getTexture(t.normalTexture.index)),t.occlusionTexture&&(t.occlustionTexture=wt({},t.occlustionTexture),t.occlusionTexture.texture=this.getTexture(t.occlusionTexture.index)),t.emissiveTexture&&(t.emmisiveTexture=wt({},t.emmisiveTexture),t.emissiveTexture.texture=this.getTexture(t.emissiveTexture.index)),t.emissiveFactor||(t.emissiveFactor=t.emmisiveTexture?[1,1,1]:[0,0,0]),t.pbrMetallicRoughness){t.pbrMetallicRoughness=wt({},t.pbrMetallicRoughness);const e=t.pbrMetallicRoughness;e.baseColorTexture&&(e.baseColorTexture=wt({},e.baseColorTexture),e.baseColorTexture.texture=this.getTexture(e.baseColorTexture.index)),e.metallicRoughnessTexture&&(e.metallicRoughnessTexture=wt({},e.metallicRoughnessTexture),e.metallicRoughnessTexture.texture=this.getTexture(e.metallicRoughnessTexture.index))}return t}_resolveAccessor(t,e){if(t.id=t.id||`accessor-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView)),t.bytesPerComponent=function(t){return PL[t]}(t.componentType),t.components=function(t){return AL[t]}(t.type),t.bytesPerElement=t.bytesPerComponent*t.components,t.bufferView){const e=t.bufferView.buffer,{ArrayType:n,byteLength:i}=GN(t,t.bufferView),r=(t.bufferView.byteOffset||0)+(t.byteOffset||0)+e.byteOffset,s=e.arrayBuffer.slice(r,r+i);t.value=new n(s)}return t}_resolveTexture(t,e){return t.id=t.id||`texture-${e}`,t.sampler="sampler"in t?this.getSampler(t.sampler):DL,t.source=this.getImage(t.source),t}_resolveSampler(t,e){t.id=t.id||`sampler-${e}`,t.parameters={};for(const n in t){const e=this._enumSamplerParameter(n);void 0!==e&&(t.parameters[e]=t[n])}return t}_enumSamplerParameter(t){return IL[t]}_resolveImage(t,e){t.id=t.id||`image-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView));const n=this.images[e];return n&&(t.image=n),t}_resolveBufferView(t,e){t.id=t.id||`bufferView-${e}`;const n=t.buffer;t.buffer=this.buffers[n];let i=this.buffers[n].byteOffset||0;return"byteOffset"in t&&(i+=t.byteOffset),t.data=new Uint8Array(this.buffers[n].arrayBuffer,i,t.byteLength),t}_resolveCamera(t,e){return t.id=t.id||`camera-${e}`,t}}function NL(t,e){return(new RL).postProcess(t,e)}const LL=1735152710,jL=!0;function FL(t,e,n,i){const r=new Uint8Array(e.buffer,n,i),s=new TextDecoder("utf8").decode(r);return t.json=JSON.parse(s),NN(i,4)}function BL(t,e,n,i){return t.header.hasBinChunk=!0,t.binChunks.push({byteOffset:n,byteLength:i,arrayBuffer:e.buffer}),NN(i,4)}function VL(t,e){return zL.apply(this,arguments)}function zL(){return(zL=gS(function*(t,e,n=0,i,r){var s,o,a,l;UL(t,e,n,i),kL(t,{normalize:null==i||null===(s=i.gltf)||void 0===s?void 0:s.normalize});const c=[];if(null!=i&&null!==(o=i.gltf)&&void 0!==o&&o.loadBuffers&&t.json.buffers&&(yield HL(t,i,r)),null!=i&&null!==(a=i.gltf)&&void 0!==a&&a.loadImages){const e=GL(t,i,r);c.push(e)}const u=SL(t,i,r);return c.push(u),yield Promise.all(c),null!=i&&null!==(l=i.gltf)&&void 0!==l&&l.postProcess?NL(t,i):t})).apply(this,arguments)}function UL(t,e,n,i){if(i.uri&&(t.baseUri=i.uri),e instanceof ArrayBuffer&&!function(t,e=0,n={}){const i=new DataView(t),{magic:r=LL}=n,s=i.getUint32(e,!1);return s===r||s===LL}(e,n,i)&&(e=(new TextDecoder).decode(e)),"string"==typeof e)t.json=function(t){try{return JSON.parse(t)}catch(e){throw new Error(`Failed to parse JSON from data starting with "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?jR(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?jR(t,0,e):""}(t)}"`)}}(e);else if(e instanceof ArrayBuffer){const r={};n=function(t,e,n=0,i={}){const r=new DataView(e),s=function(t,e=0){return`${String.fromCharCode(t.getUint8(e+0))}${String.fromCharCode(t.getUint8(e+1))}${String.fromCharCode(t.getUint8(e+2))}${String.fromCharCode(t.getUint8(e+3))}`}(r,n+0),o=r.getUint32(n+4,jL),a=r.getUint32(n+8,jL);switch(Object.assign(t,{header:{byteOffset:n,byteLength:a,hasBinChunk:!1},type:s,version:o,json:{},binChunks:[]}),n+=12,t.version){case 1:return function(t,e,n){Nk(t.header.byteLength>20);const i=e.getUint32(n+0,jL),r=e.getUint32(n+4,jL);return n+=8,Nk(0===r),FL(t,e,n,i),(n+=i)+BL(t,e,n,t.header.byteLength)}(t,r,n);case 2:return function(t,e,n,i){return Nk(t.header.byteLength>20),function(t,e,n,i){for(;n+8<=t.header.byteLength;){const r=e.getUint32(n+0,jL),s=e.getUint32(n+4,jL);switch(n+=8,s){case 1313821514:FL(t,e,n,r);break;case 5130562:BL(t,e,n,r);break;case 0:i.strict||FL(t,e,n,r);break;case 1:i.strict||BL(t,e,n,r)}n+=NN(r,4)}}(t,e,n,{}),n+t.header.byteLength}(t,r,n);default:throw new Error(`Invalid GLB version ${t.version}. Only supports v1 and v2.`)}}(r,e,n,i.glb),FR("glTF"===r.type,`Invalid GLB magic string ${r.type}`),t._glb=r,t.json=r.json}else FR(!1,"GLTF: must be ArrayBuffer or string");if(t.buffers=new Array((t.json.buffers||[]).length).fill(null),t._glb&&t._glb.header.hasBinChunk){const{binChunks:e}=t._glb;t.buffers[0]={arrayBuffer:e[0].arrayBuffer,byteOffset:e[0].byteOffset,byteLength:e[0].byteLength}}t.images=new Array((t.json.images||[]).length).fill({})}function HL(t,e,n){return $L.apply(this,arguments)}function $L(){return($L=gS(function*(t,e,n){for(let s=0;s{t.traverse(t=>{Object.values(t.model.getUniforms()).forEach(t=>{!1===t.loaded&&e.push(t)})})}),yield ZL(()=>e.some(t=>!t.loaded))})).apply(this,arguments)}function ZL(t){return JL.apply(this,arguments)}function JL(){return(JL=gS(function*(t){for(;t();)yield new Promise(t=>requestAnimationFrame(t))})).apply(this,arguments)}const tj=[255,255,255,255],ej={scenegraph:{type:"object",value:null,async:!0},getScene:t=>t&&t.scenes?"object"==typeof t.scene?t.scene:t.scenes[t.scene||0]:t,getAnimator:t=>t&&t.animator,_animations:null,sizeScale:{type:"number",value:1,min:0},sizeMinPixels:{type:"number",min:0,value:0},sizeMaxPixels:{type:"number",min:0,value:Number.MAX_SAFE_INTEGER},getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:tj},_lighting:"flat",_imageBasedLightingEnvironment:null,getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]},loaders:[YL]};let nj=(()=>{class t extends LP{getShaders(){const t=[qD,eR];return"pbr"===this.props._lighting&&t.push(gR),{vs:"#version 300 es\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nuniform float sizeScale;\nuniform float sizeMinPixels;\nuniform float sizeMaxPixels;\nuniform mat4 sceneModelMatrix;\nuniform bool composeModelMatrix;\nin vec4 POSITION;\n\n#ifdef HAS_UV\n in vec2 TEXCOORD_0;\n#endif\n\n#ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n in vec4 NORMAL;\n #endif\n#endif\nout vec4 vColor;\n#ifndef MODULE_PBR\n #ifdef HAS_UV\n out vec2 vTEXCOORD_0;\n #endif\n#endif\nvoid main(void) {\n #if defined(HAS_UV) && !defined(MODULE_PBR)\n vTEXCOORD_0 = TEXCOORD_0;\n geometry.uv = vTEXCOORD_0;\n #endif\n\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n\n #ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n pbr_vNormal = project_normal(instanceModelMatrix * (sceneModelMatrix * vec4(NORMAL.xyz, 0.0)).xyz);\n geometry.normal = pbr_vNormal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV = TEXCOORD_0;\n #else\n pbr_vUV = vec2(0., 0.);\n #endif\n geometry.uv = pbr_vUV;\n #endif\n\n float originalSize = project_size_to_pixel(sizeScale);\n float clampedSize = clamp(originalSize, sizeMinPixels, sizeMaxPixels);\n\n vec3 pos = (instanceModelMatrix * (sceneModelMatrix * POSITION).xyz) * sizeScale * (clampedSize / originalSize) + instanceTranslation;\n if(composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), geometry.position);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, geometry.position);\n }\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBR\n pbr_vPosition = geometry.position.xyz;\n #endif\n\n vColor = instanceColors;\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\nuniform float opacity;\nin vec4 vColor;\n\nout vec4 fragmentColor;\n#ifndef MODULE_PBR\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n in vec2 vTEXCOORD_0;\n uniform sampler2D u_BaseColorSampler;\n #endif\n#endif\n\nvoid main(void) {\n #ifdef MODULE_PBR\n fragmentColor = vColor * pbr_filterColor(vec4(0));\n geometry.uv = pbr_vUV;\n #else\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n fragmentColor = vColor * texture2D(u_BaseColorSampler, vTEXCOORD_0);\n geometry.uv = vTEXCOORD_0;\n #else\n fragmentColor = vColor;\n #endif\n #endif\n\n fragmentColor.a *= opacity;\n DECKGL_FILTER_COLOR(fragmentColor, geometry);\n}\n",modules:t}}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:5130,fp64:this.use64bitPositions(),accessor:"getPosition",transition:!0},instanceColors:{type:5121,size:this.props.colorFormat.length,accessor:"getColor",normalized:!0,defaultValue:tj,transition:!0},instanceModelMatrix:cR})}updateState(t){super.updateState(t);const{props:e,oldProps:n}=t;e.scenegraph!==n.scenegraph?this._updateScenegraph(e):e._animations!==n._animations&&this._applyAnimationsProp(this.state.scenegraph,this.state.animator,e._animations)}finalizeState(){super.finalizeState(),this._deleteScenegraph()}_updateScenegraph(t){const{gl:e}=this.context;let n=null;if(t.scenegraph instanceof mR)n={scenes:[t.scenegraph]};else if(t.scenegraph&&!t.scenegraph.gltf){const i=t.scenegraph,r=function(t,e,n){const i=new LR(t,n);return{scenes:i.instantiate(e),animator:i.createAnimator()}}(e,i,this._getModelOptions());n=wt({gltf:i},r),function(t){return QL.apply(this,arguments)}(r).then(()=>this.setNeedsRedraw())}else t.scenegraph&&(Mw.deprecated("ScenegraphLayer.props.scenegraph","Use GLTFLoader instead of GLTFScenegraphLoader")(),n=t.scenegraph);const i={layer:this,gl:e},r=t.getScene(n,i),s=t.getAnimator(n,i);r instanceof mR?(this._deleteScenegraph(),this._applyAllAttributes(r),this._applyAnimationsProp(r,s,t._animations),this.setState({scenegraph:r,animator:s})):null!==r&&Mw.warn("invalid scenegraph:",r)()}_applyAllAttributes(t){if(this.state.attributesAvailable){const e=this.getAttributeManager().getAttributes();t.traverse(t=>{this._setModelAttributes(t.model,e)})}}_applyAnimationsProp(t,e,n){if(!t||!e||!n)return;const i=e.getAnimations();Object.keys(n).sort().forEach(t=>{const e=n[t];if("*"===t)i.forEach(t=>{Object.assign(t,e)});else if(Number.isFinite(Number(t))){const n=Number(t);n>=0&&ne===t);n?Object.assign(n,e):Mw.warn("animation ".concat(t," not found"))()}})}_deleteScenegraph(){const{scenegraph:t}=this.state;t instanceof mR&&t.delete()}_getModelOptions(){const{_imageBasedLightingEnvironment:t}=this.props;let e=null;return t&&(e="function"==typeof t?t({gl:this.context.gl,layer:this}):t),{gl:this.context.gl,waitForFullLoad:!0,imageBasedLightingEnvironment:e,modelOptions:wt({isInstanced:!0,transpileToGLSL100:!Fw(this.context.gl)},this.getShaders()),useTangents:!1}}updateAttributes(t){this.setState({attributesAvailable:!0}),this.state.scenegraph&&this.state.scenegraph.traverse(e=>{this._setModelAttributes(e.model,t)})}draw({moduleParameters:t=null,parameters:e={},context:n}){if(!this.state.scenegraph)return;this.props._animations&&this.state.animator&&(this.state.animator.animate(n.timeline.getTime()),this.setNeedsRedraw());const{viewport:i}=this.context,{sizeScale:r,sizeMinPixels:s,sizeMaxPixels:o,opacity:a,coordinateSystem:l}=this.props,c=this.getNumInstances();this.state.scenegraph.traverse((n,{worldMatrix:u})=>{n.model.setInstanceCount(c),n.updateModuleSettings(t),n.draw({parameters:e,uniforms:{sizeScale:r,opacity:a,sizeMinPixels:s,sizeMaxPixels:o,composeModelMatrix:uR(i,l),sceneModelMatrix:u,u_Camera:n.model.getUniforms().project_uCameraPosition}})})}}return t.layerName="ScenegraphLayer",t.defaultProps=ej,t})();const ij=new Uint16Array([0,1,2,0,2,3,4,5,6,4,6,7,8,9,10,8,10,11,12,13,14,12,14,15,16,17,18,16,18,19,20,21,22,20,22,23]),rj=new Float32Array([-1,-1,1,1,-1,1,1,1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1]),sj=new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,0]),oj=new Float32Array([0,0,1,0,1,1,0,1,1,0,1,1,0,1,0,0,0,1,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,0,1]),aj={POSITION:{size:3,value:new Float32Array(rj)},NORMAL:{size:3,value:new Float32Array(sj)},TEXCOORD_0:{size:2,value:new Float32Array(oj)}};class lj extends iR{constructor(t={}){const{id:e=Fx("cube-geometry")}=t;super(ii(wt({},t),{id:e,indices:{size:1,value:new Uint16Array(ij)},attributes:wt(wt({},aj),t.attributes)}))}}class cj{constructor(t=[0,0,0,0,0,0,0,0,0]){this.elements=void 0,this.elements=t}identity(){const t=this.elements;t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1}setZero(){const t=this.elements;t[0]=0,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t[8]=0}setTrace(t){const e=this.elements;e[0]=t.x,e[4]=t.y,e[8]=t.z}getTrace(t=new hj){const e=this.elements;return t.x=e[0],t.y=e[4],t.z=e[8],t}vmult(t,e=new hj){const n=this.elements,i=t.x,r=t.y,s=t.z;return e.x=n[0]*i+n[1]*r+n[2]*s,e.y=n[3]*i+n[4]*r+n[5]*s,e.z=n[6]*i+n[7]*r+n[8]*s,e}smult(t){for(let e=0;e0){const t=1/i;this.x*=t,this.y*=t,this.z*=t}else this.x=0,this.y=0,this.z=0;return i}unit(t=new hj){const e=this.x,n=this.y,i=this.z;let r=Math.sqrt(e*e+n*n+i*i);return r>0?(r=1/r,t.x=e*r,t.y=n*r,t.z=i*r):(t.x=1,t.y=0,t.z=0),t}length(){const t=this.x,e=this.y,n=this.z;return Math.sqrt(t*t+e*e+n*n)}lengthSquared(){return this.dot(this)}distanceTo(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return Math.sqrt((r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i))}distanceSquared(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return(r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i)}scale(t,e=new hj){const n=this.y,i=this.z;return e.x=t*this.x,e.y=t*n,e.z=t*i,e}vmul(t,e=new hj){return e.x=t.x*this.x,e.y=t.y*this.y,e.z=t.z*this.z,e}addScaledVector(t,e,n=new hj){return n.x=this.x+t*e.x,n.y=this.y+t*e.y,n.z=this.z+t*e.z,n}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}isZero(){return 0===this.x&&0===this.y&&0===this.z}negate(t=new hj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t}tangents(t,e){const n=this.length();if(n>0){const i=dj,r=1/n;i.set(this.x*r,this.y*r,this.z*r);const s=pj;Math.abs(i.x)<.9?(s.set(1,0,0),i.cross(s,t)):(s.set(0,1,0),i.cross(s,t)),i.cross(t,e)}else t.set(1,0,0),e.set(0,1,0)}toString(){return this.x+","+this.y+","+this.z}toArray(){return[this.x,this.y,this.z]}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}lerp(t,e,n){const i=this.x,r=this.y,s=this.z;n.x=i+(t.x-i)*e,n.y=r+(t.y-r)*e,n.z=s+(t.z-s)*e}almostEquals(t,e=1e-6){return!(Math.abs(this.x-t.x)>e||Math.abs(this.y-t.y)>e||Math.abs(this.z-t.z)>e)}almostZero(t=1e-6){return!(Math.abs(this.x)>t||Math.abs(this.y)>t||Math.abs(this.z)>t)}isAntiparallelTo(t,e){return this.negate(fj),fj.almostEquals(t,e)}clone(){return new hj(this.x,this.y,this.z)}}hj.ZERO=void 0,hj.UNIT_X=void 0,hj.UNIT_Y=void 0,hj.UNIT_Z=void 0,hj.ZERO=new hj(0,0,0),hj.UNIT_X=new hj(1,0,0),hj.UNIT_Y=new hj(0,1,0),hj.UNIT_Z=new hj(0,0,1);const dj=new hj,pj=new hj,fj=new hj;class gj{constructor(t={}){this.lowerBound=void 0,this.upperBound=void 0,this.lowerBound=new hj,this.upperBound=new hj,t.lowerBound&&this.lowerBound.copy(t.lowerBound),t.upperBound&&this.upperBound.copy(t.upperBound)}setFromPoints(t,e,n,i){const r=this.lowerBound,s=this.upperBound,o=n;r.copy(t[0]),o&&o.vmult(r,r),s.copy(r);for(let a=1;as.x&&(s.x=e.x),e.xs.y&&(s.y=e.y),e.ys.z&&(s.z=e.z),e.z=r.x&&e.y<=i.y&&n.y>=r.y&&e.z<=i.z&&n.z>=r.z}getCorners(t,e,n,i,r,s,o,a){const l=this.lowerBound,c=this.upperBound;t.copy(l),e.set(c.x,l.y,l.z),n.set(c.x,c.y,l.z),i.set(l.x,c.y,c.z),r.set(c.x,l.y,c.z),s.set(l.x,c.y,l.z),o.set(l.x,l.y,c.z),a.copy(c)}toLocalFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToLocal(e,e)}return e.setFromPoints(n)}toWorldFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToWorld(e,e)}return e.setFromPoints(n)}overlapsRay(t){const{direction:e,from:n}=t,i=1/e.x,r=1/e.y,s=1/e.z,o=(this.lowerBound.x-n.x)*i,a=(this.upperBound.x-n.x)*i,l=(this.lowerBound.y-n.y)*r,c=(this.upperBound.y-n.y)*r,u=(this.lowerBound.z-n.z)*s,h=(this.upperBound.z-n.z)*s,d=Math.max(Math.max(Math.min(o,a),Math.min(l,c)),Math.min(u,h)),p=Math.min(Math.min(Math.max(o,a),Math.max(l,c)),Math.max(u,h));return!(p<0||d>p)}}const mj=new hj,bj=[new hj,new hj,new hj,new hj,new hj,new hj,new hj,new hj];class yj{constructor(t=0,e=0,n=0,i=1){this.x=void 0,this.y=void 0,this.z=void 0,this.w=void 0,this.x=t,this.y=e,this.z=n,this.w=i}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}toString(){return this.x+","+this.y+","+this.z+","+this.w}toArray(){return[this.x,this.y,this.z,this.w]}setFromAxisAngle(t,e){const n=Math.sin(.5*e);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(.5*e),this}toAxisAngle(t=new hj){this.normalize();const e=2*Math.acos(this.w),n=Math.sqrt(1-this.w*this.w);return n<.001?(t.x=this.x,t.y=this.y,t.z=this.z):(t.x=this.x/n,t.y=this.y/n,t.z=this.z/n),[t,e]}setFromVectors(t,e){if(t.isAntiparallelTo(e)){const e=vj;t.tangents(e,_j),this.setFromAxisAngle(e,Math.PI)}else{const n=t.cross(e);this.x=n.x,this.y=n.y,this.z=n.z,this.w=Math.sqrt(kr(t.length(),2)*kr(e.length(),2))+t.dot(e),this.normalize()}return this}mult(t,e=new yj){const n=this.x,i=this.y,r=this.z,s=this.w,o=t.x,a=t.y,l=t.z,c=t.w;return e.x=n*c+s*o+i*l-r*a,e.y=i*c+s*a+r*o-n*l,e.z=r*c+s*l+n*a-i*o,e.w=s*c-n*o-i*a-r*l,e}inverse(t=new yj){const e=this.x,n=this.y,i=this.z,r=this.w;this.conjugate(t);const s=1/(e*e+n*n+i*i+r*r);return t.x*=s,t.y*=s,t.z*=s,t.w*=s,t}conjugate(t=new yj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t.w=this.w,t}normalize(){let t=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(t=1/t,this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}normalizeFast(){const t=(3-(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w))/2;return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}vmult(t,e=new hj){const n=t.x,i=t.y,r=t.z,s=this.x,o=this.y,a=this.z,l=this.w,c=l*n+o*r-a*i,u=l*i+a*n-s*r,h=l*r+s*i-o*n,d=-s*n-o*i-a*r;return e.x=c*l+d*-s+u*-a-h*-o,e.y=u*l+d*-o+h*-s-c*-a,e.z=h*l+d*-a+c*-o-u*-s,e}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}toEuler(t,e="YZX"){let n,i,r;const s=this.x,o=this.y,a=this.z,l=this.w;switch(e){case"YZX":const t=s*o+a*l;if(t>.499&&(n=2*Math.atan2(s,l),i=Math.PI/2,r=0),t<-.499&&(n=-2*Math.atan2(s,l),i=-Math.PI/2,r=0),void 0===n){const e=s*s,c=a*a;n=Math.atan2(2*o*l-2*s*a,1-o*o*2-2*c),i=Math.asin(2*t),r=Math.atan2(2*s*l-2*o*a,1-2*e-2*c)}break;default:throw new Error("Euler order "+e+" not supported yet.")}t.y=n,t.z=i,t.x=r}setFromEuler(t,e,n,i="XYZ"){const r=Math.cos(t/2),s=Math.cos(e/2),o=Math.cos(n/2),a=Math.sin(t/2),l=Math.sin(e/2),c=Math.sin(n/2);return"XYZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"YXZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"ZXY"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"ZYX"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"YZX"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o-a*l*c):"XZY"===i&&(this.x=a*s*o-r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o+a*l*c),this}clone(){return new yj(this.x,this.y,this.z,this.w)}slerp(t,e,n=new yj){const i=this.x,r=this.y,s=this.z,o=this.w;let a,l,c,u,h,d=t.x,p=t.y,f=t.z,g=t.w;return l=i*d+r*p+s*f+o*g,l<0&&(l=-l,d=-d,p=-p,f=-f,g=-g),1-l>1e-6?(a=Math.acos(l),c=Math.sin(a),u=Math.sin((1-e)*a)/c,h=Math.sin(e*a)/c):(u=1-e,h=e),n.x=u*i+h*d,n.y=u*r+h*p,n.z=u*s+h*f,n.w=u*o+h*g,n}integrate(t,e,n,i=new yj){const r=t.x*n.x,s=t.y*n.y,o=t.z*n.z,a=this.x,l=this.y,c=this.z,u=this.w,h=.5*e;return i.x+=h*(r*u+s*c-o*l),i.y+=h*(s*u+o*a-r*c),i.z+=h*(o*u+r*l-s*a),i.w+=h*(-r*a-s*l-o*c),i}}const vj=new hj,_j=new hj,wj={SPHERE:1,PLANE:2,BOX:4,COMPOUND:8,CONVEXPOLYHEDRON:16,HEIGHTFIELD:32,PARTICLE:64,CYLINDER:128,TRIMESH:256};let xj=(()=>{class t{constructor(e={}){this.id=void 0,this.type=void 0,this.boundingSphereRadius=void 0,this.collisionResponse=void 0,this.collisionFilterGroup=void 0,this.collisionFilterMask=void 0,this.material=void 0,this.body=void 0,this.id=t.idCounter++,this.type=e.type||0,this.boundingSphereRadius=0,this.collisionResponse=!e.collisionResponse||e.collisionResponse,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:1,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.material=e.material?e.material:null,this.body=null}updateBoundingSphereRadius(){throw"computeBoundingSphereRadius() not implemented for shape type "+this.type}volume(){throw"volume() not implemented for shape type "+this.type}calculateLocalInertia(t,e){throw"calculateLocalInertia() not implemented for shape type "+this.type}calculateWorldAABB(t,e,n,i){throw"calculateWorldAABB() not implemented for shape type "+this.type}}return t.idCounter=0,t.types=wj,t})();class Sj{constructor(t={}){this.position=void 0,this.quaternion=void 0,this.position=new hj,this.quaternion=new yj,t.position&&this.position.copy(t.position),t.quaternion&&this.quaternion.copy(t.quaternion)}pointToLocal(t,e){return Sj.pointToLocalFrame(this.position,this.quaternion,t,e)}pointToWorld(t,e){return Sj.pointToWorldFrame(this.position,this.quaternion,t,e)}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}static pointToLocalFrame(t,e,n,i=new hj){return n.vsub(t,i),e.conjugate(Ej),Ej.vmult(i,i),i}static pointToWorldFrame(t,e,n,i=new hj){return e.vmult(n,i),i.vadd(t,i),i}static vectorToWorldFrame(t,e,n=new hj){return t.vmult(e,n),n}static vectorToLocalFrame(t,e,n,i=new hj){return e.w*=-1,e.vmult(n,i),e.w*=-1,i}}const Ej=new yj;class Cj extends xj{constructor(t={}){const{vertices:e=[],faces:n=[],normals:i=[],axes:r,boundingSphereRadius:s}=t;super({type:xj.types.CONVEXPOLYHEDRON}),this.vertices=void 0,this.faces=void 0,this.faceNormals=void 0,this.worldVertices=void 0,this.worldVerticesNeedsUpdate=void 0,this.worldFaceNormals=void 0,this.worldFaceNormalsNeedsUpdate=void 0,this.uniqueAxes=void 0,this.uniqueEdges=void 0,this.vertices=e,this.faces=n,this.faceNormals=i,0===this.faceNormals.length&&this.computeNormals(),s?this.boundingSphereRadius=s:this.updateBoundingSphereRadius(),this.worldVertices=[],this.worldVerticesNeedsUpdate=!0,this.worldFaceNormals=[],this.worldFaceNormalsNeedsUpdate=!0,this.uniqueAxes=r?r.slice():null,this.uniqueEdges=[],this.computeEdges()}computeEdges(){const t=this.faces,e=this.vertices,n=this.uniqueEdges;n.length=0;const i=new hj;for(let r=0;r!==t.length;r++){const s=t[r],o=s.length;for(let t=0;t!==o;t++){e[s[t]].vsub(e[s[(t+1)%o]],i),i.normalize();let r=!1;for(let t=0;t!==n.length;t++)if(n[t].almostEquals(i)||n[t].almostEquals(i)){r=!0;break}r||n.push(i.clone())}}}computeNormals(){this.faceNormals.length=this.faces.length;for(let t=0;th&&(h=t,u=p)}const d=[];for(let p=0;p=0&&this.clipFaceAgainstHull(s,t,e,d,o,a,l)}findSeparatingAxis(t,e,n,i,r,s,o,a){const l=new hj,c=new hj,u=new hj,h=new hj,d=new hj,p=new hj;let f=Number.MAX_VALUE;const g=this;if(g.uniqueAxes)for(let m=0;m!==g.uniqueAxes.length;m++){n.vmult(g.uniqueAxes[m],l);const o=g.testSepAxis(l,t,e,n,i,r);if(!1===o)return!1;o0&&s.negate(s),!0}testSepAxis(t,e,n,i,r,s){Cj.project(this,t,n,i,Oj),Cj.project(e,t,r,s,Tj);const o=Oj[0],a=Oj[1],l=Tj[0],c=Tj[1];if(o0?1/e:0,this.material=t.material||null,this.linearDamping="number"==typeof t.linearDamping?t.linearDamping:.01,this.type=e<=0?Dj.STATIC:Dj.DYNAMIC,typeof t.type==typeof Dj.STATIC&&(this.type=t.type),this.allowSleep=void 0===t.allowSleep||t.allowSleep,this.sleepState=Dj.AWAKE,this.sleepSpeedLimit=void 0!==t.sleepSpeedLimit?t.sleepSpeedLimit:.1,this.sleepTimeLimit=void 0!==t.sleepTimeLimit?t.sleepTimeLimit:1,this.timeLastSleepy=0,this.wakeUpAfterNarrowphase=!1,this.torque=new hj,this.quaternion=new yj,this.initQuaternion=new yj,this.previousQuaternion=new yj,this.interpolatedQuaternion=new yj,t.quaternion&&(this.quaternion.copy(t.quaternion),this.initQuaternion.copy(t.quaternion),this.previousQuaternion.copy(t.quaternion),this.interpolatedQuaternion.copy(t.quaternion)),this.angularVelocity=new hj,t.angularVelocity&&this.angularVelocity.copy(t.angularVelocity),this.initAngularVelocity=new hj,this.shapes=[],this.shapeOffsets=[],this.shapeOrientations=[],this.inertia=new hj,this.invInertia=new hj,this.invInertiaWorld=new cj,this.invMassSolve=0,this.invInertiaSolve=new hj,this.invInertiaWorldSolve=new cj,this.fixedRotation=void 0!==t.fixedRotation&&t.fixedRotation,this.angularDamping=void 0!==t.angularDamping?t.angularDamping:.01,this.linearFactor=new hj(1,1,1),t.linearFactor&&this.linearFactor.copy(t.linearFactor),this.angularFactor=new hj(1,1,1),t.angularFactor&&this.angularFactor.copy(t.angularFactor),this.aabb=new gj,this.aabbNeedsUpdate=!0,this.boundingRadius=0,this.wlambda=new hj,this.isTrigger=Boolean(t.isTrigger),t.shape&&this.addShape(t.shape),this.updateMassProperties()}wakeUp(){const t=this.sleepState;this.sleepState=Dj.AWAKE,this.wakeUpAfterNarrowphase=!1,t===Dj.SLEEPING&&this.dispatchEvent(Dj.wakeupEvent)}sleep(){this.sleepState=Dj.SLEEPING,this.velocity.set(0,0,0),this.angularVelocity.set(0,0,0),this.wakeUpAfterNarrowphase=!1}sleepTick(t){if(this.allowSleep){const e=this.sleepState,n=this.velocity.lengthSquared()+this.angularVelocity.lengthSquared(),i=kr(this.sleepSpeedLimit,2);e===Dj.AWAKE&&ni?this.wakeUp():e===Dj.SLEEPY&&t-this.timeLastSleepy>this.sleepTimeLimit&&(this.sleep(),this.dispatchEvent(Dj.sleepEvent))}}updateSolveMassProperties(){this.sleepState===Dj.SLEEPING||this.type===Dj.KINEMATIC?(this.invMassSolve=0,this.invInertiaSolve.setZero(),this.invInertiaWorldSolve.setZero()):(this.invMassSolve=this.invMass,this.invInertiaSolve.copy(this.invInertia),this.invInertiaWorldSolve.copy(this.invInertiaWorld))}pointToLocalFrame(t,e=new hj){return t.vsub(this.position,e),this.quaternion.conjugate().vmult(e,e),e}vectorToLocalFrame(t,e=new hj){return this.quaternion.conjugate().vmult(t,e),e}pointToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e.vadd(this.position,e),e}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}addShape(t,e,n){const i=new hj,r=new yj;return e&&i.copy(e),n&&r.copy(n),this.shapes.push(t),this.shapeOffsets.push(i),this.shapeOrientations.push(r),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=this,this}removeShape(t){const e=this.shapes.indexOf(t);return-1===e?(console.warn("Shape does not belong to the body"),this):(this.shapes.splice(e,1),this.shapeOffsets.splice(e,1),this.shapeOrientations.splice(e,1),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=null,this)}updateBoundingRadius(){const t=this.shapes,e=this.shapeOffsets,n=t.length;let i=0;for(let r=0;r!==n;r++){const n=t[r];n.updateBoundingSphereRadius();const s=e[r].length(),o=n.boundingSphereRadius;s+o>i&&(i=s+o)}this.boundingRadius=i}updateAABB(){const t=this.shapes,e=this.shapeOffsets,n=this.shapeOrientations,i=t.length,r=Rj,s=Nj,o=this.quaternion,a=this.aabb,l=Lj;for(let c=0;c!==i;c++){const i=t[c];o.vmult(e[c],r),r.vadd(this.position,r),o.mult(n[c],s),i.calculateWorldAABB(r,s,l.lowerBound,l.upperBound),0===c?a.copy(l):a.extend(l)}this.aabbNeedsUpdate=!1}updateInertiaWorld(t){const e=this.invInertia;if(e.x!==e.y||e.y!==e.z||t){const t=jj,n=Fj;t.setRotationFromQuaternion(this.quaternion),t.transpose(n),t.scale(e,t),t.mmult(n,this.invInertiaWorld)}}applyForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=Bj;e.cross(t,n),this.force.vadd(t,this.force),this.torque.vadd(n,this.torque)}applyLocalForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=Vj,i=zj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyForce(n,i)}applyTorque(t){this.type===Dj.DYNAMIC&&(this.sleepState===Dj.SLEEPING&&this.wakeUp(),this.torque.vadd(t,this.torque))}applyImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=e,i=Uj;i.copy(t),i.scale(this.invMass,i),this.velocity.vadd(i,this.velocity);const r=Hj;n.cross(t,r),this.invInertiaWorld.vmult(r,r),this.angularVelocity.vadd(r,this.angularVelocity)}applyLocalImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=$j,i=Gj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyImpulse(n,i)}updateMassProperties(){const t=Wj;this.invMass=this.mass>0?1/this.mass:0;const e=this.inertia,n=this.fixedRotation;this.updateAABB(),t.set((this.aabb.upperBound.x-this.aabb.lowerBound.x)/2,(this.aabb.upperBound.y-this.aabb.lowerBound.y)/2,(this.aabb.upperBound.z-this.aabb.lowerBound.z)/2),Pj.calculateInertia(t,this.mass,e),this.invInertia.set(e.x>0&&!n?1/e.x:0,e.y>0&&!n?1/e.y:0,e.z>0&&!n?1/e.z:0),this.updateInertiaWorld(!0)}getVelocityAtWorldPoint(t,e){const n=new hj;return t.vsub(this.position,n),this.angularVelocity.cross(n,e),this.velocity.vadd(e,e),e}integrate(t,e,n){if(this.previousPosition.copy(this.position),this.previousQuaternion.copy(this.quaternion),this.type!==Dj.DYNAMIC&&this.type!==Dj.KINEMATIC||this.sleepState===Dj.SLEEPING)return;const i=this.velocity,r=this.angularVelocity,s=this.position,o=this.force,a=this.torque,l=this.quaternion,c=this.invInertiaWorld,u=this.linearFactor,h=this.invMass*t;i.x+=o.x*h*u.x,i.y+=o.y*h*u.y,i.z+=o.z*h*u.z;const d=c.elements,p=this.angularFactor,f=a.x*p.x,g=a.y*p.y,m=a.z*p.z;r.x+=t*(d[0]*f+d[1]*g+d[2]*m),r.y+=t*(d[3]*f+d[4]*g+d[5]*m),r.z+=t*(d[6]*f+d[7]*g+d[8]*m),s.x+=i.x*t,s.y+=i.y*t,s.z+=i.z*t,l.integrate(this.angularVelocity,t,this.angularFactor,l),e&&(n?l.normalizeFast():l.normalize()),this.aabbNeedsUpdate=!0,this.updateInertiaWorld()}}Dj.idCounter=0,Dj.COLLIDE_EVENT_NAME="collide",Dj.DYNAMIC=1,Dj.STATIC=2,Dj.KINEMATIC=4,Dj.AWAKE=0,Dj.SLEEPY=1,Dj.SLEEPING=2,Dj.wakeupEvent={type:"wakeup"},Dj.sleepyEvent={type:"sleepy"},Dj.sleepEvent={type:"sleep"};const Rj=new hj,Nj=new yj,Lj=new gj,jj=new cj,Fj=new cj,Bj=new hj,Vj=new hj,zj=new hj,Uj=new hj,Hj=new hj,$j=new hj,Gj=new hj,Wj=new hj;new hj,new hj;class qj{constructor(){this.rayFromWorld=void 0,this.rayToWorld=void 0,this.hitNormalWorld=void 0,this.hitPointWorld=void 0,this.hasHit=void 0,this.shape=void 0,this.body=void 0,this.hitFaceIndex=void 0,this.distance=void 0,this.shouldStop=void 0,this.rayFromWorld=new hj,this.rayToWorld=new hj,this.hitNormalWorld=new hj,this.hitPointWorld=new hj,this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}reset(){this.rayFromWorld.setZero(),this.rayToWorld.setZero(),this.hitNormalWorld.setZero(),this.hitPointWorld.setZero(),this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}abort(){this.shouldStop=!0}set(t,e,n,i,r,s,o){this.rayFromWorld.copy(t),this.rayToWorld.copy(e),this.hitNormalWorld.copy(n),this.hitPointWorld.copy(i),this.shape=r,this.body=s,this.distance=o}}let Xj,Yj,Kj,Qj,Zj,Jj,tF;Xj=xj.types.SPHERE,Yj=xj.types.PLANE,Kj=xj.types.BOX,Qj=xj.types.CYLINDER,Zj=xj.types.CONVEXPOLYHEDRON,Jj=xj.types.HEIGHTFIELD,tF=xj.types.TRIMESH;class eF{get[Xj](){return this._intersectSphere}get[Yj](){return this._intersectPlane}get[Kj](){return this._intersectBox}get[Qj](){return this._intersectConvex}get[Zj](){return this._intersectConvex}get[Jj](){return this._intersectHeightfield}get[tF](){return this._intersectTrimesh}constructor(t=new hj,e=new hj){this.from=void 0,this.to=void 0,this.direction=void 0,this.precision=void 0,this.checkCollisionResponse=void 0,this.skipBackfaces=void 0,this.collisionFilterMask=void 0,this.collisionFilterGroup=void 0,this.mode=void 0,this.result=void 0,this.hasHit=void 0,this.callback=void 0,this.from=t.clone(),this.to=e.clone(),this.direction=new hj,this.precision=1e-4,this.checkCollisionResponse=!0,this.skipBackfaces=!1,this.collisionFilterMask=-1,this.collisionFilterGroup=-1,this.mode=eF.ANY,this.result=new qj,this.hasHit=!1,this.callback=t=>{}}intersectWorld(t,e){return this.mode=e.mode||eF.ANY,this.result=e.result||new qj,this.skipBackfaces=!!e.skipBackfaces,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:-1,this.checkCollisionResponse=void 0===e.checkCollisionResponse||e.checkCollisionResponse,e.from&&this.from.copy(e.from),e.to&&this.to.copy(e.to),this.callback=e.callback||(()=>{}),this.hasHit=!1,this.result.reset(),this.updateDirection(),this.getAABB(nF),iF.length=0,t.broadphase.aabbQuery(t,nF,iF),this.intersectBodies(iF),this.hasHit}intersectBody(t,e){e&&(this.result=e,this.updateDirection());const n=this.checkCollisionResponse;if(n&&!t.collisionResponse||0==(this.collisionFilterGroup&t.collisionFilterMask)||0==(t.collisionFilterGroup&this.collisionFilterMask))return;const i=oF,r=aF;for(let s=0,o=t.shapes.length;st.boundingSphereRadius)return;const r=this[t.type];r&&r.call(this,t,e,n,i,t)}_intersectBox(t,e,n,i,r){return this._intersectConvex(t.convexPolyhedronRepresentation,e,n,i,r)}_intersectPlane(t,e,n,i,r){const s=this.from,o=this.to,a=this.direction,l=new hj(0,0,1);e.vmult(l,l);const c=new hj;s.vsub(n,c);const u=c.dot(l);if(o.vsub(n,c),u*c.dot(l)>0||s.distanceTo(o)=0&&t<=1&&(s.lerp(o,t,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1)),this.result.shouldStop)return;e>=0&&e<=1&&(s.lerp(o,e,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1))}}_intersectConvex(t,e,n,i,r,s){const o=yF,a=vF,l=s&&s.faceList||null,c=t.faces,u=t.vertices,h=t.faceNormals,d=this.direction,p=this.from,f=p.distanceTo(this.to),g=l?l.length:c.length,m=this.result;for(let b=0;!m.shouldStop&&bf||this.reportIntersection(o,lF,r,i,t)}}}}_intersectTrimesh(t,e,n,i,r,s){const o=_F,a=OF,l=TF,c=vF,u=wF,h=xF,d=SF,p=CF,f=EF,g=t.indices,m=this.from,b=this.to,y=this.direction;l.position.copy(n),l.quaternion.copy(e),Sj.vectorToLocalFrame(n,e,y,u),Sj.pointToLocalFrame(n,e,m,h),Sj.pointToLocalFrame(n,e,b,d),d.x*=t.scale.x,d.y*=t.scale.y,d.z*=t.scale.z,h.x*=t.scale.x,h.y*=t.scale.y,h.z*=t.scale.z,d.vsub(h,u),u.normalize();const v=h.distanceSquared(d);t.tree.rayQuery(this,l,a);for(let _=0,w=a.length;!this.result.shouldStop&&_!==w;_++){const s=a[_];t.getNormal(s,o),t.getVertex(g[3*s],cF),cF.vsub(h,c);const l=u.dot(o),d=o.dot(c)/l;if(d<0)continue;u.scale(d,lF),lF.vadd(h,lF),t.getVertex(g[3*s+1],uF),t.getVertex(g[3*s+2],hF);const m=lF.distanceSquared(h);!eF.pointInTriangle(lF,uF,cF,hF)&&!eF.pointInTriangle(lF,cF,uF,hF)||m>v||(Sj.vectorToWorldFrame(e,o,f),Sj.pointToWorldFrame(n,e,lF,p),this.reportIntersection(f,p,r,i,s))}a.length=0}reportIntersection(t,e,n,i,r){const s=this.from,o=this.to,a=s.distanceTo(e),l=this.result;if(!(this.skipBackfaces&&t.dot(this.direction)>0))switch(l.hitFaceIndex=void 0!==r?r:-1,this.mode){case eF.ALL:this.hasHit=!0,l.set(s,o,t,e,n,i,a),l.hasHit=!0,this.callback(l);break;case eF.CLOSEST:(a=0&&(u=r*l-s*o)>=0&&c+uDate.now()-t}var iB=n(24517);function rB(t,e,n){e||(e=new bT(bT.IDENTITY));const i=new bT(bT.IDENTITY);if(!t)return!0;if(t.matrix)i.copy(t.matrix);else{if(i.identity(),t.translation&&i.translate(t.translation),t.rotation){const e=new bT(bT.IDENTITY).fromQuaternion(t.rotation);i.multiplyRight(e)}t.scale&&i.scale(t.scale)}const r=new bT(e).multiplyRight(i);if(!1===n(t,r,e))return!1;for(const s of t.nodes||t.children||[])if(!1===rB(s,r,n))return!1;return!0}function sB(){fP([zR,YL])}function oB(t,e){const n=e.nodes.find(e=>e.name===t);if(n){let i=!1;for(const t of e.scenes)i||rB(t,new bT(bT.IDENTITY),(t,e)=>t!==n||(t.matrix=e,t.translation=void 0,t.rotation=void 0,t.scale=void 0,i=!0,!1));return e.scene={id:t,name:t,nodes:[n]},e.scenes=[e.scene],{scene:e.scene,scenes:e.scenes}}return e}function aB(t,e){return lw(this,void 0,void 0,function*(){const n=t.scenegraph;let i;i=e?e[n]||(e[n]=fetch(n).then(t=>t.blob())):fetch(n);const r=yield CP(i,YL,{DracoLoader:DN,gltf:{decompressMeshes:!0,postProcess:!0}});return oB(t.scenegraphNode,r)})}function lB(t,e){return lw(this,void 0,void 0,function*(){return oB(t,yield e)})}function cB(t,e,n){if(e&&0!==e.length)return new fR(Object.assign({id:t,pickable:!0,autoHighlight:!1,highlightColor:[30,136,229,255],coordinateSystem:Iw.CARTESIAN,data:e,mesh:new lj,wireframe:!1,getTransformMatrix:t=>t.transformMatrix,getColor:t=>t.color||[255,255,255,229.5]},n))}let uB=(()=>{class t extends jP{initializeState(){const{data:t}=this.props;this.setState({data:null!=t?t:[],zoomOpacity:.8,doCollisions:!1}),sB()}renderLayers(){const e=this.state,n=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&t.unpickable),i=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&!t.unpickable),r=e.data.filter(t=>!t.scenegraph&&t.wireframe),s=e.data.filter(t=>!!t.scenegraph);e.doCollisions&&function(t){lw(this,void 0,void 0,function*(){console.log("Starting Collisioning");const e=t.filter(t=>!t.scenegraph&&!t.wireframe).map(t=>{const e=new bT(t.transformMatrix),n=e.transformAsPoint([-1,-1,-1],[]),i=e.transformAsPoint([1,1,1],[]);return{"@id":t["@id"],name:t.tooltip,entityId:t.entityId,bbox:new gj({lowerBound:new hj(...n.map((t,e)=>Math.min(t,i[e]))),upperBound:new hj(...i.map((t,e)=>Math.max(t,n[e])))})}}),n=[];for(const o of t.filter(t=>!!t.scenegraph)){const t=yield AP(o.scenegraph,YL,{DracoLoader:DN,decompress:!0,postProcess:!0});for(const e of t.scenes)rB(e,new bT(o.transformMatrix),(e,i)=>{if(e.mesh&&e.mesh.primitives&&e.mesh.primitives.length>0)for(const r of e.mesh.primitives)if(r.attributes.POSITION&&r.attributes.POSITION.min){const s=i.transformAsPoint(r.attributes.POSITION.min,[]),a=i.transformAsPoint(r.attributes.POSITION.max,[]);n.push({"@id":o["@id"],name:e.name,entityId:o.entityId,bbox:new gj({lowerBound:new hj(...s.map((t,e)=>Math.min(t,a[e]))),upperBound:new hj(...a.map((t,e)=>Math.max(t,s[e])))}),gltf:t})}return!0})}const i=[],r=[];for(const t of e){const e=[];for(const i of n)t.bbox.overlaps(i.bbox)&&e.push({"@id":i["@id"],name:i.name});e.length>0?i.push({"@id":t.entityId,name:t.name,hits:e}):r.push(t)}console.log({sourceBoxes:e,targetBoxes:n,report:i,sad:r,maxHits:Math.max(...i.map(t=>t.hits.length))});const s=[];for(const t of i){s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":"","Hit Name":""});for(const e of t.hits)s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":e["@id"],"Hit Name":e.name})}return console.log(s),i})}(e.data);const o={};for(const a of s)a.scenegraph&&a.scenegraphNode&&!Object.prototype.hasOwnProperty.call(o,a.scenegraph)&&(o[a.scenegraph]=aB({scenegraph:a.scenegraph},t.gltfCache));return[cB("cubes",n,{wireframe:!1,pickable:!1}),cB("pickableCubes",i,{wireframe:!1,pickable:!0}),cB("wireframes",r,{wireframe:!0,pickable:!1}),...s.map(t=>{var n;return new nj({id:"models-"+t["@id"],opacity:t.zoomBasedOpacity?e.zoomOpacity:void 0!==t.opacity?t.opacity:1,pickable:!t.unpickable,coordinateSystem:Iw.CARTESIAN,data:[t],scenegraph:t.scenegraphNode?lB(t.scenegraphNode,o[t.scenegraph]):t.scenegraph,_lighting:t._lighting,getTransformMatrix:t.transformMatrix,getColor:null!==(n=t.color)&&void 0!==n?n:[0,255,0,127.5],parameters:{depthMask:!t.zoomBasedOpacity&&(void 0===t.opacity||1===t.opacity)}})})].filter(t=>!!t)}getPickingInfo(t){return t.info}}return t.layerName="BodyUILayer",t.gltfCache={},t})();function hB(t,e=[]){for(const n of t.nodes||t.children||[])e.push(n.name),hB(n,e);return e}let dB=(()=>{class t{constructor(t){var e,n,i,r,s;this.deckProps=t,this.bodyUILayer=new uB({}),this.nodeClickSubject=new P,this.nodeHoverStartSubject=new P,this.nodeHoverStopSubject=new P,this.sceneRotationSubject=new Uf([0,0]),this.nodeDragStartSubject=new P,this.nodeDragSubject=new P,this.nodeDragEndSubject=new P,this.nodeClick$=this.nodeClickSubject.pipe(at()),this.nodeHoverStart$=this.nodeHoverStartSubject.pipe(at()),this.nodeHoverStop$=this.nodeHoverStopSubject.pipe(at()),this.sceneRotation$=this.sceneRotationSubject.pipe(at()),this.nodeDragStart$=this.nodeDragStartSubject.pipe(at()),this.nodeDrag$=this.nodeDragSubject.pipe(at()),this.nodeDragEnd$=this.nodeDragEndSubject.pipe(at());const o=Object.assign(Object.assign({},t),{views:["orthographic"===t.camera?new pM({flipY:!1,near:-1e3}):new bM({orbitAxis:"Y"})],controller:void 0===t.interactive||t.interactive,layers:[this.bodyUILayer],onHover:this._onHover,onClick:this._onClick,onViewStateChange:this._onViewStateChange,onDragStart:this._onDragStart,onDrag:this._onDrag,onDragEnd:this._onDragEnd,getCursor:t=>{var e;return null!==(e=this.cursor)&&void 0!==e?e:t.isDragging?"grabbing":"grab"}});t.legacyLighting&&(o.effects=[new $M({ambientLight:new wM({color:[255,255,255],intensity:10})})]),this.deck=new WD(o),this.deck.setProps({viewState:{orbitAxis:"Y",minRotationX:null!==(e=t.minRotationX)&&void 0!==e?e:-15,maxRotationX:null!==(n=t.maxRotationX)&&void 0!==n?n:15,target:null!==(i=t.target)&&void 0!==i?i:[.5,.5,0],rotationX:0,rotationOrbit:null!==(r=t.rotation)&&void 0!==r?r:0,zoom:null!==(s=t.zoom)&&void 0!==s?s:9.5,camera:t.camera}}),t.rotation&&this.sceneRotationSubject.next([t.rotation,0])}initialize(){return lw(this,void 0,void 0,function*(){for(;!this.bodyUILayer.state;)yield new Promise(t=>{setTimeout(t,200)})})}finalize(){this.deck.finalize()}setScene(t){if((null==t?void 0:t.length)>0){let e=this.bodyUILayer.state.zoomOpacity,n=!1;for(const i of t)i.zoomToOnLoad&&(this.zoomTo(i),n=!0);e=n?.05:e,this.deckProps.debugSceneNodeProcessing?this.debugSceneNodeProcessing(t,e):this.bodyUILayer.setState({data:t,zoomOpacity:e})}}debugSceneNodeProcessing(t,e){const n="https://hubmapconsortium.github.io/ccf-3d-reference-object-library/VH_Female/United/VHF_United_Color.glb",i=new bT([.076,0,0,0,0,.076,16875389974302382e-33,0,0,-16875389974302382e-33,.076,0,.49,.034,.11,1]);(function(t,e,n){return lw(this,void 0,void 0,function*(){sB();const n=yield aB({scenegraph:t,scenegraphNode:"VHF_Kidney_L_Low1"}),i={},r=[];for(const s of n.scenes)rB(s,e=new bT(e||bT.IDENTITY),(n,s)=>{const o={"@id":n.name||n.id,"@type":"ProcessedNode",transformMatrix:new bT(s),wireframe:!0,node:n};if(r.push({"@id":`GLTF:${o["@id"]}`,"@type":"GLTFNode",scenegraph:t,scenegraphNode:o["@id"],transformMatrix:new bT(e||bT.IDENTITY),tooltip:n.name||n.id,color:[255,255,255,255],_lighting:"pbr",zoomBasedOpacity:!0,node:n}),n.mesh&&n.mesh.primitives&&n.mesh.primitives.length>0)for(const t of n.mesh.primitives)if(t.attributes.POSITION&&t.attributes.POSITION.min){const e=s.transformAsPoint(t.attributes.POSITION.min,[]),n=s.transformAsPoint(t.attributes.POSITION.max,[]);o.bbox=new gj({lowerBound:new hj(...e.map((t,e)=>Math.min(t,n[e]))),upperBound:new hj(...n.map((t,n)=>Math.max(t,e[n])))})}return i[o["@id"]]=o,!0});for(const t of Object.values(i).filter(t=>!t.bbox)){for(const e of hB(t.node).map(t=>i[t]).filter(t=>t.bbox))t.bbox?t.bbox.extend(e.bbox):t.bbox=e.bbox.clone();t.bbox||delete i[t["@id"]]}for(const t of Object.values(i)){const e=t.bbox.lowerBound,n=(t.size=t.bbox.upperBound.clone().vsub(e)).clone().vmul(new hj(.5,.5,.5)),i=t.center=e.clone().vadd(n);t.transformMatrix=new bT(bT.IDENTITY).translate(i.toArray()).scale(n.toArray())}for(const t of r)i[t["@id"]]=t;return i})})(n,i).then(r=>{console.log("results",r),console.log("data",t),(t=t.concat(Object.values(r))).push({"@id":"TEST","@type":"TEST",scenegraph:n,scenegraphNode:"VHF_Kidney_R_Low",transformMatrix:i,color:[255,255,255,200],_lighting:"pbr",zoomBasedOpacity:!1}),this.bodyUILayer.setState({data:t,zoomOpacity:e})})}zoomTo(t){const e=new bT(t.transformMatrix);this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:e.getTranslation(),rotationX:0,rotationOrbit:0,zoom:11.5})})}setRotation(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationOrbit:t})})}setRotationX(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationX:t})})}setZoom(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{zoom:t})})}setTarget(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:t})})}setInteractive(t){this.deck.setProps({controller:t})}_onHover(t){const{lastHovered:e}=this;this.cursor=t.picked?"pointer":void 0,t.picked&&t.object&&t.object["@id"]?e!==t.object&&(e&&this.nodeHoverStopSubject.next(e),this.lastHovered=t.object,this.nodeHoverStartSubject.next(t.object)):e&&(this.nodeHoverStopSubject.next(e),this.lastHovered=void 0)}_onClick(t,e){var n,i;t.picked&&t.object&&t.object["@id"]&&this.nodeClickSubject.next({node:t.object,ctrlClick:null!==(i=null===(n=null==e?void 0:e.srcEvent)||void 0===n?void 0:n.ctrlKey)&&void 0!==i?i:void 0})}_onViewStateChange(t){var e;if(null===(e=t.interactionState)||void 0===e?void 0:e.isZooming){const e=this.bodyUILayer.state,n=Math.min(Math.max(1-(t.viewState.zoom-8.9)/2,.05),1);e.zoomOpacity!==n&&this.bodyUILayer.setState({data:e.data,zoomOpacity:n})}this.deck.setProps({viewState:Object.assign({},t.viewState)}),this.sceneRotationSubject.next([t.viewState.rotationOrbit,t.viewState.rotationX])}_onDragStart(t,e){this._dragEvent(t,e,this.nodeDragStartSubject)}_onDrag(t,e){this._dragEvent(t,e,this.nodeDragSubject)}_onDragEnd(t,e){this._dragEvent(t,e,this.nodeDragEndSubject)}_dragEvent(t,e,n){var i;(null===(i=null==t?void 0:t.object)||void 0===i?void 0:i["@id"])&&n.next({node:t.object,info:t,e})}}return sw([iB.ZP],t.prototype,"_onHover",null),sw([iB.ZP],t.prototype,"_onClick",null),sw([iB.ZP],t.prototype,"_onViewStateChange",null),sw([iB.ZP],t.prototype,"_onDragStart",null),sw([iB.ZP],t.prototype,"_onDrag",null),sw([iB.ZP],t.prototype,"_onDragEnd",null),t})();function pB(t,e){return t===e}function fB(t,e,n){if(null===e||null===n||e.length!==n.length)return!1;const i=e.length;for(let r=0;r(t&&t.providers||[]).some(t=>t&&t.provide&&"MockNgModuleResolver"===t.provide.name||!1))});let bB=(()=>{class t{constructor(){this.bootstrap$=new lp(1)}get appBootstrapped$(){return this.bootstrap$.asObservable()}bootstrap(){this.bootstrap$.next(!0),this.bootstrap$.complete()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const yB=new oi("INITIAL_STATE_TOKEN");let vB=(()=>{class t{static set(t){this.value=t}static pop(){const t=this.value;return this.value={},t}}return t.value={},t})();const _B=new oi("Internals.StateContextFactory"),wB=new oi("Internals.StateFactory");function xB(t,e){return e?n=>n.pipe(xB((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new SB(t))}class SB{constructor(t){this.project=t}call(t,e){return e.subscribe(new EB(t,this.project))}}class EB extends ${constructor(t,e){super(t),this.project=e,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}_next(t){this.hasSubscription||this.tryNext(t)}tryNext(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this.hasSubscription=!0,this._innerSub(e)}_innerSub(t){const e=new H(this),n=this.destination;n.add(e);const i=G(t,e);i!==e&&n.add(i)}_complete(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete(),this.unsubscribe()}notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()}}function CB(t=null){return e=>e.lift(new OB(t))}class OB{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new TB(t,this.defaultValue))}}class TB extends v{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}const kB={STATE_NAME:t=>`${t} is not a valid state name. It needs to be a valid object property name.`,STATE_NAME_PROPERTY:()=>"States must register a 'name' property",STATE_UNIQUE:(t,e,n)=>`State name '${t}' from ${e} already exists in ${n}`,STATE_DECORATOR:()=>"States must be decorated with @State() decorator",INCORRECT_PRODUCTION:()=>"Angular is running in production mode but NGXS is still running in the development mode!\nPlease set developmentMode to false on the NgxsModule options when in production mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",INCORRECT_DEVELOPMENT:()=>"RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",SELECT_FACTORY_NOT_CONNECTED:()=>"You have forgotten to import the NGXS module!",ACTION_DECORATOR:()=>"@Action() decorator cannot be used with static methods",SELECTOR_DECORATOR:()=>"Selectors only work on methods",ZONE_WARNING:()=>"Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\nPlease set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\nNgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })",PATCHING_ARRAY:()=>"Patching arrays is not supported.",PATCHING_PRIMITIVE:()=>"Patching primitives is not supported.",UNDECORATED_STATE_IN_IVY:t=>`'${t}' class should be decorated with @Injectable() right after the @State() decorator`};let AB=(()=>{class t{constructor(t,e){this._ngZone=t,this._platformId=e,this.verifyZoneIsNotNooped(this._ngZone)}enter(t){return function(t){return"server"===t}(this._platformId)?this.runInsideAngular(t):this.runOutsideAngular(t)}leave(t){return this.runInsideAngular(t)}runInsideAngular(t){return xu.isInAngularZone()?t():this._ngZone.run(t)}runOutsideAngular(t){return xu.isInAngularZone()?this._ngZone.runOutsideAngular(t):t()}verifyZoneIsNotNooped(t){t instanceof xu||console.warn(kB.ZONE_WARNING())}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(ou))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const PB=new oi("ROOT_STATE_TOKEN"),MB=new oi("FEATURE_STATE_TOKEN"),IB=new oi("NGXS_PLUGINS"),DB=new oi("NG_TEST_MODE"),RB=new oi("NG_DEV_MODE"),NB="NGXS_META",LB="NGXS_OPTIONS_META";let jB=(()=>{class t{constructor(){this.defaultsState={},this.selectorOptions={injectContainerState:!0,suppressErrors:!0},this.compatibility={strictContentSecurityPolicy:!1},this.executionStrategy=AB}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class FB{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}}const BB=new oi("NGXS_EXECUTION_STRATEGY");function VB(t){return t.constructor&&t.constructor.type?t.constructor.type:t.type}const zB=(t,e,n)=>{t=Object.assign({},t);const i=e.split("."),r=i.length-1;return i.reduce((t,e,i)=>(t[e]=i===r?n:Array.isArray(t[e])?t[e].slice():Object.assign({},t[e]),t&&t[e]),t),t},UB=(t,e)=>e.split(".").reduce((t,e)=>t&&t[e],t),HB=t=>t&&"object"==typeof t&&!Array.isArray(t),$B=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(HB(t)&&HB(n))for(const i in n)HB(n[i])?(t[i]||Object.assign(t,{[i]:{}}),$B(t[i],n[i])):Object.assign(t,{[i]:n[i]});return $B(t,...e)};function GB(t){return t[NB]}function WB(t,e){const n=UB(e.currentAppState,t.path),i=UB(e.newAppState,t.path);return new FB(n,i,!t.isInitialised)}function qB(...t){return function(t,e,n=XB){const i=function(t){return t.reduce((t,e)=>(t[VB(e)]=!0,t),{})}(t),r=e&&function(t){return t.reduce((t,e)=>(t[e]=!0,t),{})}(e);return function(t){return t.pipe(function(t,e){return Hd(n=>{const i=VB(n.action);return t[i]&&(!e||e[n.status])})}(i,r),n())}}(t,["DISPATCHED"])}function XB(){return D(t=>t.action)}function YB(t){return e=>new C(n=>e.subscribe({next(e){t.leave(()=>n.next(e))},error(e){t.leave(()=>n.error(e))},complete(){t.leave(()=>n.complete())}}))}let KB=(()=>{class t{constructor(t){this._executionStrategy=t}enter(t){return this._executionStrategy.enter(t)}leave(t){return this._executionStrategy.leave(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(BB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class QB extends P{constructor(){super(...arguments),this._itemQueue=[],this._busyPushingNext=!1}next(t){if(this._busyPushingNext)this._itemQueue.unshift(t);else{for(this._busyPushingNext=!0,super.next(t);this._itemQueue.length>0;){const t=this._itemQueue.pop();super.next(t)}this._busyPushingNext=!1}}}let ZB=(()=>{class t extends QB{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),JB=(()=>{class t extends C{constructor(t,e){super(n=>{const i=t.pipe(YB(e)).subscribe({next:t=>n.next(t),error:t=>n.error(t),complete:()=>n.complete()});n.add(i)})}}return t.\u0275fac=function(e){return new(e||t)(Ci(ZB),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const tV=t=>(...e)=>t.shift()(...e,(...e)=>tV(t)(...e));let eV=(()=>{class t extends Uf{constructor(){super({})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),nV=(()=>{class t{constructor(t,e){this._parentManager=t,this._pluginHandlers=e,this.plugins=[],this.registerHandlers()}get rootPlugins(){return this._parentManager&&this._parentManager.plugins||this.plugins}registerHandlers(){const t=this.getPluginHandlers();this.rootPlugins.push(...t)}getPluginHandlers(){return(this._pluginHandlers||[]).map(t=>t.handle?t.handle.bind(t):t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(IB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),iV=(()=>{class t extends P{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),rV=(()=>{class t{constructor(t,e,n,i,r,s){this._injector=t,this._actions=e,this._actionResults=n,this._pluginManager=i,this._stateStream=r,this._ngxsExecutionStrategy=s}dispatch(t){const e=this._ngxsExecutionStrategy.enter(()=>this.dispatchByEvents(t));return e.subscribe({error:t=>this._ngxsExecutionStrategy.leave(()=>{try{this._errorHandler=this._errorHandler||this._injector.get(Ar),this._errorHandler.handleError(t)}catch(e){}})}),e.pipe(YB(this._ngxsExecutionStrategy))}dispatchByEvents(t){return Array.isArray(t)?0===t.length?wd(this._stateStream.getValue()):hv(t.map(t=>this.dispatchSingle(t))):this.dispatchSingle(t)}dispatchSingle(t){if(!VB(t))return ip(new Error(`This action doesn't have a type property: ${t.constructor.name}`));const e=this._stateStream.getValue();return tV([...this._pluginManager.plugins,(t,n)=>{t!==e&&this._stateStream.next(t);const i=this.getActionResultStream(n);return i.subscribe(t=>this._actions.next(t)),this._actions.next({action:n,status:"DISPATCHED"}),this.createDispatchObservable(i)}])(e,t).pipe(up())}getActionResultStream(t){return this._actionResults.pipe(Hd(e=>e.action===t&&"DISPATCHED"!==e.status),Gp(1),up())}createDispatchObservable(t){return t.pipe(xB(t=>{switch(t.status){case"SUCCESSFUL":return wd(this._stateStream.getValue());case"ERRORED":return ip(t.error);default:return ep}})).pipe(up())}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(ZB),Ci(iV),Ci(nV),Ci(eV),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const sV=t=>{Object.freeze(t);const e="function"==typeof t,n=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(function(i){n.call(t,i)&&(!e||"caller"!==i&&"callee"!==i&&"arguments"!==i)&&null!==t[i]&&("object"==typeof t[i]||"function"==typeof t[i])&&!Object.isFrozen(t[i])&&sV(t[i])}),t};let oV=(()=>{class t{constructor(t,e){this.isDevMode=t,this.isTestMode=e}}return t.\u0275fac=function(e){return new(e||t)(Ci(RB),Ci(DB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),aV=(()=>{class t{constructor(t,e){this._host=t,this._config=e}get isIncorrectProduction(){return!this._host.isDevMode()&&this._config.developmentMode}get isIncorrectDevelopment(){return this._host.isDevMode()&&!this._config.developmentMode}verifyDevMode(){this._host.isTestMode()||(this.isIncorrectProduction?console.warn(kB.INCORRECT_PRODUCTION()):this.isIncorrectDevelopment&&console.warn(kB.INCORRECT_DEVELOPMENT()))}}return t.\u0275fac=function(e){return new(e||t)(Ci(oV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lV=(()=>{class t{constructor(t,e,n,i){this._stateStream=t,this._dispatcher=e,this._config=n,i.verifyDevMode()}getRootStateOperations(){const t={getState:()=>this._stateStream.getValue(),setState:t=>this._stateStream.next(t),dispatch:t=>this._dispatcher.dispatch(t)};return this._config.developmentMode?this.ensureStateAndActionsAreImmutable(t):t}ensureStateAndActionsAreImmutable(t){return{getState:()=>t.getState(),setState:e=>{const n=sV(e);return t.setState(n)},dispatch:e=>t.dispatch(e)}}setStateToTheCurrentWithNew(t){const e=this.getRootStateOperations(),n=e.getState();e.setState(Object.assign({},n,t.defaults))}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(rV),Ci(jB),Ci(aV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),cV=(()=>{class t{constructor(t){this._internalStateOperations=t}createStateContext(t){const e=this._internalStateOperations.getRootStateOperations();function n(e){return UB(e,t.path)}function i(n,i){const r=zB(n,t.path,i),s=t.instance;if(s.ngxsOnChanges){const e=WB(t,{currentAppState:n,newAppState:r});s.ngxsOnChanges(e)}return e.setState(r),r}function r(t,e){return i(t,e(n(t)))}return{getState:()=>n(e.getState()),patchState:t=>r(e.getState(),function(t){return e=>{if(Array.isArray(t))throw new Error(kB.PATCHING_ARRAY());if("object"!=typeof t)throw new Error(kB.PATCHING_PRIMITIVE());const n=Object.assign({},e);for(const i in t)n[i]=t[i];return n}}(t)),setState(t){const n=e.getState();return function(t){return"function"==typeof t}(t)?r(n,t):i(n,t)},dispatch:t=>e.dispatch(t)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class uV{static stateNameErrorMessage(t){return kB.STATE_NAME(t)}static checkCorrectStateName(t){if(!t)throw new Error(kB.STATE_NAME_PROPERTY());if(!this.stateNameRegex.test(t))throw new Error(this.stateNameErrorMessage(t))}static checkStateNameIsUnique(t,e){const n=this.getValidStateMeta(t).name,i=e[n];if(i&&i!==t)throw new Error(kB.STATE_UNIQUE(n,t.name,i.name));return n}static getValidStateMeta(t){const e=GB(t);if(!e)throw new Error(kB.STATE_DECORATOR());return e}}uV.stateNameRegex=new RegExp("^[a-zA-Z0-9_]+$");let hV=(()=>{class t{constructor(t,e,n,i,r,s,o){this._injector=t,this._config=e,this._parentFactory=n,this._actions=i,this._actionResults=r,this._stateContextFactory=s,this._initialState=o,this._actionsSubscription=null,this._states=[],this._statesByName={},this._statePaths={},this.getRuntimeSelectorContext=gB(()=>{const t=this;function e(e){const n=t.statePaths[e];return n?function(t,e){return e&&e.compatibility&&e.compatibility.strictContentSecurityPolicy?function(t){const e=t.slice();return t=>e.reduce((t,e)=>t&&t[e],t)}(t):function(t){const e=t;let n="store."+e[0],i=0;const r=e.length;let s=n;for(;++i(n||(n=e(t)),n?n(...i):void 0))},getSelectorOptions:e=>Object.assign({},t._config.selectorOptions,e||{})}})}get states(){return this._parentFactory?this._parentFactory.states:this._states}get statesByName(){return this._parentFactory?this._parentFactory.statesByName:this._statesByName}get statePaths(){return this._parentFactory?this._parentFactory.statePaths:this._statePaths}static cloneDefaults(t){let e={};return e=Array.isArray(t)?t.slice():function(t){return"object"==typeof t&&null!==t||"function"==typeof t}(t)?Object.assign({},t):void 0===t?{}:t,e}static checkStatesAreValid(t){t.forEach(uV.getValidStateMeta)}ngOnDestroy(){this._actionsSubscription.unsubscribe()}add(e){t.checkStatesAreValid(e);const{newStates:n}=this.addToStatesMap(e);if(!n.length)return[];const i=function(t){const e=e=>{const n=t.find(t=>t===e);if(!n)throw new Error(`Child state not found: ${e}. \r\nYou may have forgotten to add states to module`);return n[NB].name};return t.reduce((t,n)=>{const{name:i,children:r}=n[NB];return t[i]=(r||[]).map(e),t},{})}(n),r=function(t){const e=[],n={},i=(r,s=[])=>{Array.isArray(s)||(s=[]),s.push(r),n[r]=!0,t[r].forEach(t=>{if(s.indexOf(t)>=0)throw new Error(`Circular dependency '${t}' is required by '${r}': ${s.join(" -> ")}`);n[t]||i(t,s.slice(0))}),e.indexOf(r)<0&&e.push(r)};return Object.keys(t).forEach(t=>i(t)),e.reverse()}(i),s=function(t,e={}){const n=(t,e)=>{for(const i in t)if(t.hasOwnProperty(i)&&t[i].indexOf(e)>=0){const e=n(t,i);return null!==e?`${e}.${i}`:i}return null};for(const i in t)if(t.hasOwnProperty(i)){const r=n(t,i);e[i]=r?`${r}.${i}`:i}return e}(i),o=function(t){return t.reduce((t,e)=>(t[e[NB].name]=e,t),{})}(n),a=[];for(const l of r){const e=o[l],n=s[l],i=e[NB];this.addRuntimeInfoToMeta(i,n);const r={name:l,path:n,isInitialised:!1,actions:i.actions,instance:this._injector.get(e),defaults:t.cloneDefaults(i.defaults)};this.hasBeenMountedAndBootstrapped(l,n)||a.push(r),this.states.push(r)}return a}addAndReturnDefaults(t){const e=this.add(t||[]);return{defaults:e.reduce((t,e)=>zB(t,e.path,e.defaults),{}),states:e}}connectActionHandlers(){null===this._actionsSubscription&&(this._actionsSubscription=this._actions.pipe(Hd(t=>"DISPATCHED"===t.status),W(({action:t})=>this.invokeActions(this._actions,t).pipe(D(()=>({action:t,status:"SUCCESSFUL"})),CB({action:t,status:"CANCELED"}),pv(e=>wd({action:t,status:"ERRORED",error:e}))))).subscribe(t=>this._actionResults.next(t)))}invokeActions(t,e){const n=VB(e),i=[];for(const s of this.states){const o=s.actions[n];if(o)for(const n of o){const o=this._stateContextFactory.createStateContext(s);try{let r=s.instance[n.fn](o,e);r instanceof Promise&&(r=U(r)),r instanceof C?(r=r.pipe(CB({})),n.options.cancelUncompleted&&(r=r.pipe(Wd(t.pipe(qB(e)))))):r=wd({}).pipe(up()),i.push(r)}catch(r){i.push(ip(r))}}}return i.length||i.push(wd({})),hv(i)}addToStatesMap(t){const e=[],n=this.statesByName;for(const i of t){const t=uV.checkStateNameIsUnique(i,n);!n[t]&&(e.push(i),n[t]=i)}return{newStates:e}}addRuntimeInfoToMeta(t,e){this.statePaths[t.name]=e,t.path=e}hasBeenMountedAndBootstrapped(t,e){const n=void 0!==UB(this._initialState,e);return this.statesByName[t]&&n}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(jB),Ci(t,12),Ci(ZB),Ci(iV),Ci(cV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),dV=(()=>{class t{constructor(t,e,n){this.internalStateOperations=t,this.stateContextFactory=e,this.bootstrapper=n}ngxsBootstrap(t,e){this.internalStateOperations.getRootStateOperations().dispatch(t).pipe(Hd(()=>!!e),$f(()=>this.invokeInit(e.states)),W(()=>this.bootstrapper.appBootstrapped$),Hd(t=>!!t)).subscribe(()=>this.invokeBootstrap(e.states))}invokeInit(t){for(const e of t){const t=e.instance;if(t.ngxsOnChanges){const n=WB(e,{currentAppState:{},newAppState:this.internalStateOperations.getRootStateOperations().getState()});t.ngxsOnChanges(n)}t.ngxsOnInit&&t.ngxsOnInit(this.getStateContext(e)),e.isInitialised=!0}}invokeBootstrap(t){for(const e of t){const t=e.instance;t.ngxsAfterBootstrap&&t.ngxsAfterBootstrap(this.getStateContext(e))}}getStateContext(t){return this.stateContextFactory.createStateContext(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV),Ci(cV),Ci(bB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();let pV=(()=>{class t{constructor(t,e,n,i,r,s){this._stateStream=t,this._internalStateOperations=e,this._config=n,this._internalExecutionStrategy=i,this._stateFactory=r,this.initStateStream(s)}dispatch(t){return this._internalStateOperations.getRootStateOperations().dispatch(t)}select(t){const e=this.getStoreBoundSelectorFn(t);return this._stateStream.pipe(D(e),pv(t=>{const{suppressErrors:e}=this._config.selectorOptions;return t instanceof TypeError&&e?wd(void 0):ip(t)}),Rd(),YB(this._internalExecutionStrategy))}selectOnce(t){return this.select(t).pipe(Gp(1))}selectSnapshot(t){return this.getStoreBoundSelectorFn(t)(this._stateStream.getValue())}subscribe(t){return this._stateStream.pipe(YB(this._internalExecutionStrategy)).subscribe(t)}snapshot(){return this._internalStateOperations.getRootStateOperations().getState()}reset(t){return this._internalStateOperations.getRootStateOperations().setState(t)}getStoreBoundSelectorFn(t){return function(t){const e=function(t){return t.NGXS_SELECTOR_META}(t)||GB(t);return e&&e.makeRootSelector||(()=>t)}(t)(this._stateFactory.getRuntimeSelectorContext())}initStateStream(t){const e=this._stateStream.value;if(!e||0===Object.keys(e).length){const e=Object.keys(this._config.defaultsState).length>0?Object.assign({},this._config.defaultsState,t):t;this._stateStream.next(e)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(lV),Ci(jB),Ci(KB),Ci(hV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fV=(()=>{class t{constructor(e,n){t.store=e,t.config=n}ngOnDestroy(){t.store=null,t.config=null}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t.store=null,t.config=null,t})();class gV{static get type(){return"@@INIT"}}class mV{constructor(t){this.addedStates=t}static get type(){return"@@UPDATE_STATE"}}const bV=new lp(1);let yV=(()=>{class t{constructor(e,n,i,r,s=[],o){!function(){try{const t=window.ng,e=!(t.probe&&t.coreTokens)&&Nu();bV.next(e)}catch(t){bV.next(!1)}finally{bV.complete()}}();const a=e.addAndReturnDefaults(s);n.setStateToTheCurrentWithNew(a),e.connectActionHandlers(),o.ngxsBootstrap(new gV,a)}}return t.\u0275fac=function(e){return new(e||t)(Ci(hV),Ci(lV),Ci(pV),Ci(fV),Ci(PB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),vV=(()=>{class t{constructor(e,n,i,r=[],s){const o=t.flattenStates(r),a=i.addAndReturnDefaults(o);a.states.length&&(n.setStateToTheCurrentWithNew(a),s.ngxsBootstrap(new mV(a.defaults),a))}static flattenStates(t=[]){return t.reduce((t,e)=>t.concat(e),[])}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(lV),Ci(hV),Ci(MB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class _V{static forRoot(t=[],e={}){return{ngModule:yV,providers:[hV,cV,JB,ZB,bB,aV,oV,dV,rV,iV,lV,KB,pV,eV,fV,nV,...t,..._V.ngxsTokenProviders(t,e)]}}static forFeature(t=[]){return{ngModule:vV,providers:[hV,nV,...t,{provide:MB,multi:!0,useValue:t}]}}static ngxsTokenProviders(t,e){return[{provide:DB,useValue:mB},{provide:RB,useValue:Nu},{provide:BB,useClass:e.executionStrategy||AB},{provide:PB,useValue:t},{provide:_V.ROOT_OPTIONS,useValue:e},{provide:jB,useFactory:_V.ngxsConfigFactory,deps:[_V.ROOT_OPTIONS]},{provide:au,useFactory:_V.appBootstrapListenerFactory,multi:!0,deps:[bB]},{provide:yB,useFactory:_V.getInitialState},{provide:_B,useExisting:cV},{provide:wB,useExisting:hV}]}static ngxsConfigFactory(t){return $B(new jB,t)}static appBootstrapListenerFactory(t){return()=>t.bootstrap()}static getInitialState(){return vB.pop()}}function wV(t){return e=>{!function(t){bV.subscribe(e=>{e&&(t.\u0275prov||console.warn(kB.UNDECORATED_STATE_IN_IVY(t.name)))})}(e);const n=e,i=function(t){if(!t.hasOwnProperty(NB)){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,NB,{value:e})}return GB(t)}(n),r=Object.getPrototypeOf(n),s=function(e){return Object.assign({},e[LB]||{},t)}(r);(function(t){const{meta:e,inheritedStateClass:n,optionsWithInheritance:i}=t,{children:r,defaults:s,name:o}=i,a="string"==typeof o?o:o&&o.getName()||null;uV.checkCorrectStateName(a),n.hasOwnProperty(NB)&&(e.actions=Object.assign({},e.actions,(n[NB]||{}).actions)),e.children=r,e.defaults=s,e.name=a})({meta:i,inheritedStateClass:r,optionsWithInheritance:s}),n[LB]=s}}_V.\u0275fac=function(t){return new(t||_V)},_V.\u0275mod=ie({type:_V}),_V.\u0275inj=St({}),_V.ROOT_OPTIONS=new oi("ROOT_OPTIONS");let xV=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}setProperty(t,e){this._renderer.setProperty(this._elementRef.nativeElement,t,e)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl))},t.\u0275dir=se({type:t}),t})(),SV=(()=>{class t extends xV{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();const EV=new oi("NgValueAccessor"),CV={provide:EV,useExisting:pt(()=>TV),multi:!0},OV=new oi("CompositionEventMode");let TV=(()=>{class t extends xV{constructor(t,e,n){super(t,e),this._compositionMode=n,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Xu()?Xu().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this.setProperty("value",null==t?"":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)(ea(Ml),ea(kl),ea(OV,8))},t.\u0275dir=se({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&&fa("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:[_l([CV]),jo]}),t})();const kV=new oi("NgValidators"),AV=new oi("NgAsyncValidators");function PV(t){return null!=t}function MV(t){const e=ha(t)?U(t):t;return pa(e),e}function IV(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 DV(t,e){return e.map(e=>e(t))}function RV(t){return t.map(t=>function(t){return!t.validate}(t)?t:e=>t.validate(e))}function NV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return IV(DV(t,e))}}(RV(t)):null}function LV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return hv(DV(t,e).map(MV)).pipe(D(IV))}}(RV(t)):null}function jV(t,e){return null===t?[e]:Array.isArray(t)?[...t,e]:[t,e]}function FV(t){return t._rawValidators}function BV(t){return t._rawAsyncValidators}function VV(t){return t?Array.isArray(t)?t:[t]:[]}function zV(t,e){return Array.isArray(t)?t.includes(e):t===e}function UV(t,e){const n=VV(e);return VV(t).forEach(t=>{zV(n,t)||n.push(t)}),n}function HV(t,e){return VV(e).filter(e=>!zV(t,e))}let $V=(()=>{class t{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=NV(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=LV(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}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=se({type:t}),t})(),GV=(()=>{class t extends $V{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();class WV extends $V{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class qV{constructor(t){this._cd=t}is(t){var e,n,i;return"submitted"===t?!!(null===(e=this._cd)||void 0===e?void 0:e.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[t])}}let XV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(WV,2))},t.\u0275dir=se({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))},features:[jo]}),t})(),YV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(GV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))("ng-submitted",e.is("submitted"))},features:[jo]}),t})();function KV(t,e){JV(t,e),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&ez(t,e)})}(t,e),function(t,e){const n=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};t.registerOnChange(n),e._registerOnDestroy(()=>{t._unregisterOnChange(n)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&ez(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),function(t,e){if(e.valueAccessor.setDisabledState){const n=t=>{e.valueAccessor.setDisabledState(t)};t.registerOnDisabledChange(n),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(n)})}}(t,e)}function QV(t,e,n=!0){const i=()=>{};e.valueAccessor&&(e.valueAccessor.registerOnChange(i),e.valueAccessor.registerOnTouched(i)),tz(t,e),t&&(e._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function ZV(t,e){t.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(e)})}function JV(t,e){const n=FV(t);null!==e.validator?t.setValidators(jV(n,e.validator)):"function"==typeof n&&t.setValidators([n]);const i=BV(t);null!==e.asyncValidator?t.setAsyncValidators(jV(i,e.asyncValidator)):"function"==typeof i&&t.setAsyncValidators([i]);const r=()=>t.updateValueAndValidity();ZV(e._rawValidators,r),ZV(e._rawAsyncValidators,r)}function tz(t,e){let n=!1;if(null!==t){if(null!==e.validator){const i=FV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.validator);r.length!==i.length&&(n=!0,t.setValidators(r))}}if(null!==e.asyncValidator){const i=BV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.asyncValidator);r.length!==i.length&&(n=!0,t.setAsyncValidators(r))}}}const i=()=>{};return ZV(e._rawValidators,i),ZV(e._rawAsyncValidators,i),n}function ez(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function nz(t,e){JV(t,e)}function iz(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function rz(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const sz="VALID",oz="INVALID",az="PENDING",lz="DISABLED";function cz(t){return(pz(t)?t.validators:t)||null}function uz(t){return Array.isArray(t)?NV(t):t||null}function hz(t,e){return(pz(e)?e.asyncValidators:t)||null}function dz(t){return Array.isArray(t)?LV(t):t||null}function pz(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class fz{constructor(t,e){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=e,this._composedValidatorFn=uz(this._rawValidators),this._composedAsyncValidatorFn=dz(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===sz}get invalid(){return this.status===oz}get pending(){return this.status==az}get disabled(){return this.status===lz}get enabled(){return this.status!==lz}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._rawValidators=t,this._composedValidatorFn=uz(t)}setAsyncValidators(t){this._rawAsyncValidators=t,this._composedAsyncValidatorFn=dz(t)}addValidators(t){this.setValidators(UV(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(UV(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(HV(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(HV(t,this._rawAsyncValidators))}hasValidator(t){return zV(this._rawValidators,t)}hasAsyncValidator(t){return zV(this._rawAsyncValidators,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=az,!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=lz,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=sz,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(),(this.status===sz||this.status===az)&&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()?lz:sz}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=az,this._hasOwnPendingAsyncValidator=!0;const e=MV(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(e,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e||(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length))return null;let i=t;return e.forEach(t=>{i=i instanceof mz?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof bz&&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 Rc,this.statusChanges=new Rc}_calculateStatus(){return this._allControlsDisabled()?lz:this.errors?oz:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(az)?az:this._anyControlsHaveStatus(oz)?oz:sz}_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){pz(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class gz extends fz{constructor(t=null,e,n){super(cz(e),hz(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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)}_unregisterOnChange(t){rz(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){rz(this._onDisabledChange,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 mz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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,n={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?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=>{const n=this.controls[e];n&&t(n,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 bz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(t){return this.controls[t]}push(t,e={}){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(t,e,n={}){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:n.emitEvent})}removeAt(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?t.value:t.getRawValue())}clear(t={}){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:t.emitEvent}))}_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 yz={provide:GV,useExisting:pt(()=>_z)},vz=(()=>Promise.resolve(null))();let _z=(()=>{class t extends GV{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Rc,this.form=new mz({},NV(t),LV(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){vz.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),KV(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),rz(this._directives,t)})}addFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path),n=new mz({});nz(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){vz.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,iz(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)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([yz]),jo]}),t})(),wz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})(),xz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Sz=new oi("NgModelWithFormControlWarning"),Ez={provide:WV,useExisting:pt(()=>Cz)};let Cz=(()=>{class t extends WV{constructor(t,e,n,i){super(),this._ngModelWarningConfig=i,this.update=new Rc,this._ngModelWarningSent=!1,this._setValidators(t),this._setAsyncValidators(e),this.valueAccessor=function(t,e){if(!e)return null;let n,i,r;return Array.isArray(e),e.forEach(t=>{t.constructor===TV?n=t:function(t){return Object.getPrototypeOf(t.constructor)===SV}(t)?i=t:r=t}),r||i||n||null}(0,n)}set isDisabled(t){}ngOnChanges(t){if(this._isControlChanged(t)){const e=t.form.previousValue;e&&QV(e,this,!1),KV(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}(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.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&QV(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_isControlChanged(t){return t.hasOwnProperty("form")}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10),ea(EV,10),ea(Sz,8))},t.\u0275dir=se({type:t,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[_l([Ez]),jo,ye]}),t._ngModelWarningSentOnce=!1,t})();const Oz={provide:GV,useExisting:pt(()=>Tz)};let Tz=(()=>{class t extends GV{constructor(t,e){super(),this.validators=t,this.asyncValidators=e,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new Rc,this._setValidators(t),this._setAsyncValidators(e)}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(tz(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return KV(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){QV(t.control||null,t,!1),rz(this.directives,t)}addFormGroup(t){this._setUpFormContainer(t)}removeFormGroup(t){this._cleanUpFormContainer(t)}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){this._setUpFormContainer(t)}removeFormArray(t){this._cleanUpFormContainer(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,iz(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=t.control,n=this.form.get(t.path);e!==n&&(QV(e||null,t),n instanceof gz&&(KV(n,t),t.control=n))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(t){const e=this.form.get(t.path);nz(e,t),e.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(t){if(this.form){const e=this.form.get(t.path);e&&function(t,e){return tz(t,e)}(e,t)&&e.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){JV(this.form,this),this._oldForm&&tz(this._oldForm,this)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([Oz]),jo,ye]}),t})(),kz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[xz]]}),t})(),Az=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})(),Pz=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sz,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})();function Mz(t){return new C(e=>{let n;try{n=t()}catch(i){return void e.error(i)}return(n?U(n):np()).subscribe(e)})}const Iz=["underline"],Dz=["connectionContainer"],Rz=["inputContainer"],Nz=["label"];function Lz(t,e){1&t&&(aa(0),ra(1,"div",14),oa(2,"div",15),oa(3,"div",16),oa(4,"div",17),sa(),ra(5,"div",18),oa(6,"div",15),oa(7,"div",16),oa(8,"div",17),sa(),la())}function jz(t,e){1&t&&(ra(0,"div",19),xa(1,1),sa())}function Fz(t,e){if(1&t&&(aa(0),xa(1,2),ra(2,"span"),Za(3),sa(),la()),2&t){const t=va(2);ws(3),Ja(t._control.placeholder)}}function Bz(t,e){1&t&&xa(0,3,["*ngSwitchCase","true"])}function Vz(t,e){1&t&&(ra(0,"span",23),Za(1," *"),sa())}function zz(t,e){if(1&t){const t=ua();ra(0,"label",20,21),fa("cdkObserveContent",function(){return $e(t),va().updateOutlineGap()}),Jo(2,Fz,4,1,"ng-container",12),Jo(3,Bz,1,0,"ng-content",12),Jo(4,Vz,2,0,"span",22),sa()}if(2&t){const t=va();ja("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),na("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),Ko("for",t._control.id)("aria-owns",t._control.id),ws(2),na("ngSwitchCase",!1),ws(1),na("ngSwitchCase",!0),ws(1),na("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function Uz(t,e){1&t&&(ra(0,"div",24),xa(1,4),sa())}function Hz(t,e){if(1&t&&(ra(0,"div",25,26),oa(2,"span",27),sa()),2&t){const t=va();ws(2),ja("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $z(t,e){1&t&&(ra(0,"div"),xa(1,5),sa()),2&t&&na("@transitionMessages",va()._subscriptAnimationState)}function Gz(t,e){if(1&t&&(ra(0,"div",31),Za(1),sa()),2&t){const t=va(2);na("id",t._hintLabelId),ws(1),Ja(t.hintLabel)}}function Wz(t,e){if(1&t&&(ra(0,"div",28),Jo(1,Gz,2,2,"div",29),xa(2,6),oa(3,"div",30),xa(4,7),sa()),2&t){const t=va();na("@transitionMessages",t._subscriptAnimationState),ws(1),na("ngIf",t.hintLabel)}}const qz=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Xz=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Yz=new oi("MatError"),Kz={transitionMessages:Vg("transitionMessages",[$g("enter",Hg({opacity:1,transform:"translateY(0%)"})),Wg("void => enter",[Hg({opacity:0,transform:"translateY(-5px)"}),zg("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Qz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t}),t})();const Zz=new oi("MatHint");let Jz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-label"]]}),t})(),tU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-placeholder"]]}),t})();const eU=new oi("MatPrefix");let nU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","matPrefix",""]],features:[_l([{provide:eU,useExisting:t}])]}),t})();const iU=new oi("MatSuffix");let rU=0;const sU=jy(class{constructor(t){this._elementRef=t}},"primary"),oU=new oi("MAT_FORM_FIELD_DEFAULT_OPTIONS"),aU=new oi("MatFormField");let lU=(()=>{class t extends sU{constructor(t,e,n,i,r,s,o,a){super(t),this._changeDetectorRef=e,this._dir=i,this._defaults=r,this._platform=s,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new P,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+rU++,this._labelId="mat-form-field-label-"+rU++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=r&&r.appearance?r.appearance:"legacy",this._hideRequiredMarker=!(!r||null==r.hideRequiredMarker)&&r.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=md(t)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_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}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}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(Kd(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(Wd(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe(Wd(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),Q(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Kd(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Kd(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(Wd(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._labelChildNonStatic&&!this._labelChildStatic)}_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,xd(this._label.nativeElement,"transitionend").pipe(Gp(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&t.push(...this._control.userAriaDescribedBy.split(" ")),"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.push(...this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if(!("outline"===this.appearance&&t&&t.children.length&&t.textContent.trim()&&this._platform.isBrowser))return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),s=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const r=i.getBoundingClientRect();if(0===r.width&&0===r.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const s=this._getStartEnd(r),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.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,ig],Ny]}),t})();function uU(t,e=jd){const n=function(t){return t instanceof Date&&!isNaN(+t)}(t)?+t-e.now():Math.abs(t);return t=>t.lift(new hU(n,e))}class hU{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new dU(t,this.delay,this.scheduler))}}class dU extends v{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,i=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-i.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(dU.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new pU(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(sp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(sp.createComplete()),this.unsubscribe()}}class pU{constructor(t,e){this.time=t,this.notification=e}}const fU=["panel"];function gU(t,e){if(1&t&&(ra(0,"div",0,1),xa(2),sa()),2&t){const t=e.id,n=va();na("id",n.id)("ngClass",n._classList),Ko("aria-label",n.ariaLabel||null)("aria-labelledby",n._getPanelAriaLabelledby(t))}}const mU=["*"];let bU=0;class yU{constructor(t,e){this.source=t,this.option=e}}const vU=Fy(class{}),_U=new oi("mat-autocomplete-default-options",{providedIn:"root",factory:function(){return{autoActiveFirstOption:!1}}});let wU=(()=>{class t extends vU{constructor(t,e,n,i){super(),this._changeDetectorRef=t,this._elementRef=e,this._activeOptionChanges=g.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new Rc,this.opened=new Rc,this.closed=new Rc,this.optionActivated=new Rc,this._classList={},this.id="mat-autocomplete-"+bU++,this.inertGroups=(null==i?void 0:i.SAFARI)||!1,this._autoActiveFirstOption=!!n.autoActiveFirstOption}get isOpen(){return this._isOpen&&this.showPanel}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(t){this._autoActiveFirstOption=md(t)}set classList(t){this._classList=t&&t.length?function(t,e=/\s+/){const n=[];if(null!=t){const i=Array.isArray(t)?t:`${t}`.split(e);for(const t of i){const e=`${t}`.trim();e&&n.push(e)}}return n}(t).reduce((t,e)=>(t[e]=!0,t),{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}ngAfterContentInit(){this._keyManager=new fg(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(t=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[t]||null})}),this._setVisibility()}ngOnDestroy(){this._activeOptionChanges.unsubscribe()}_setScrollTop(t){this.panel&&(this.panel.nativeElement.scrollTop=t)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(t){const e=new yU(this,t);this.optionSelected.emit(e)}_getPanelAriaLabelledby(t){return this.ariaLabel?null:this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}_setVisibilityClasses(t){t[this._visibleClass]=this.showPanel,t[this._hiddenClass]=!this.showPanel}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(kl),ea(_U),ea(pp))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(sc,7),qc(fU,5)),2&t){let t;Wc(t=Yc())&&(e.template=t.first),Wc(t=Yc())&&(e.panel=t.first)}},inputs:{displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",classList:["class","classList"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],panelWidth:"panelWidth"},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[jo]}),t})(),xU=(()=>{class t extends wU{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,iv,5),Xc(n,av,5)),2&t){let t;Wc(t=Yc())&&(e.optionGroups=t),Wc(t=Yc())&&(e.options=t)}},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[_l([{provide:Jy,useExisting:t}]),jo],ngContentSelectors:mU,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(t,e){1&t&&(wa(),Jo(0,gU,3,4,"ng-template"))},directives:[mh],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t})();const SU=new oi("mat-autocomplete-scroll-strategy"),EU={provide:SU,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}},CU={provide:EV,useExisting:pt(()=>TU),multi:!0};let OU=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this._element=t,this._overlay=e,this._viewContainerRef=n,this._zone=i,this._changeDetectorRef=r,this._dir=o,this._formField=a,this._document=l,this._viewportRuler=c,this._defaults=u,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=g.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new P,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=Mz(()=>this.autocomplete&&this.autocomplete.options?Q(...this.autocomplete.options.map(t=>t.onSelectionChange)):this._zone.onStable.pipe(Gp(1),Qd(()=>this.optionSelections))),this._scrollStrategy=s}get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(t){this._autocompleteDisabled=md(t)}ngAfterViewInit(){const t=this._getWindow();void 0!==t&&this._zone.runOutsideAngular(()=>t.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(t){t.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const t=this._getWindow();void 0!==t&&t.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return Q(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(Hd(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(Hd(()=>this._overlayAttached)):wd()).pipe(D(t=>t instanceof sv?t:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return Q(xd(this._document,"click"),xd(this._document,"auxclick"),xd(this._document,"touchend")).pipe(Hd(t=>{const e=Ep(t),n=this._formField?this._formField._elementRef.nativeElement:null,i=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&e!==this._element.nativeElement&&(!n||!n.contains(e))&&(!i||!i.contains(e))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(e)}))}writeValue(t){Promise.resolve(null).then(()=>this._setTriggerValue(t))}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this._element.nativeElement.disabled=t}_handleKeydown(t){const e=t.keyCode;if(27===e&&!Qp(t)&&t.preventDefault(),this.activeOption&&13===e&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else if(this.autocomplete){const n=this.autocomplete._keyManager.activeItem,i=38===e||40===e;this.panelOpen||9===e?this.autocomplete._keyManager.onKeydown(t):i&&this._canOpen()&&this.openPanel(),(i||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}_handleInput(t){let e=t.target,n=e.value;"number"===e.type&&(n=""==n?null:parseFloat(n)),this._previousValue!==n&&(this._previousValue=n,this._onChange(n),this._canOpen()&&this._document.activeElement===t.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_floatLabel(t=!1){this._formField&&"auto"===this._formField.floatLabel&&(t?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){return Q(this._zone.onStable.pipe(Gp(1)),this.autocomplete.options.changes.pipe($f(()=>this._positionStrategy.reapplyLastPosition()),uU(0))).pipe(Qd(()=>{const t=this.panelOpen;return this._resetActiveItem(),this.autocomplete._setVisibility(),this.panelOpen&&(this._overlayRef.updatePosition(),t!==this.panelOpen&&this.autocomplete.opened.emit()),this.panelClosingActions}),Gp(1)).subscribe(t=>this._setValueAndClose(t))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_setTriggerValue(t){const e=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(t):t,n=null!=e?e:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n,this._previousValue=n}_setValueAndClose(t){t&&t.source&&(this._clearPreviousSelectedOption(t.source),this._setTriggerValue(t.source.value),this._onChange(t.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(t.source)),this.closePanel()}_clearPreviousSelectedOption(t){this.autocomplete.options.forEach(e=>{e!==t&&e.selected&&e.deselect()})}_attachOverlay(){var t;let e=this._overlayRef;e?(this._positionStrategy.setOrigin(this._getConnectedElement()),e.updateSize({width:this._getPanelWidth()})):(this._portal=new Lp(this.autocomplete.template,this._viewContainerRef,{id:null===(t=this._formField)||void 0===t?void 0:t.getLabelId()}),e=this._overlay.create(this._getOverlayConfig()),this._overlayRef=e,e.keydownEvents().subscribe(t=>{(27===t.keyCode&&!Qp(t)||38===t.keyCode&&Qp(t,"altKey"))&&(this._closeKeyEventStream.next(),this._resetActiveItem(),t.stopPropagation(),t.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&e&&e.updateSize({width:this._getPanelWidth()})})),e&&!e.hasAttached()&&(e.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const n=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&n!==this.panelOpen&&this.autocomplete.opened.emit()}_getOverlayConfig(){var t;return new af({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(t=this._defaults)||void 0===t?void 0:t.overlayPanelClass})}_getOverlayPosition(){const t=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(t),this._positionStrategy=t,t}_setStrategyPositions(t){const e=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],n=this._aboveClass,i=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:n},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:n}];let r;r="above"===this.position?i:"below"===this.position?e:[...e,...i],t.withPositions(r)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const t=this.autocomplete;t.autoActiveFirstOption?t._keyManager.setFirstItemActive():t._keyManager.setActiveItem(-1)}_canOpen(){const t=this._element.nativeElement;return!t.readOnly&&!t.disabled&&!this._autocompleteDisabled}_getWindow(){var t;return(null===(t=this._document)||void 0===t?void 0:t.defaultView)||window}_scrollToOption(t){const e=this.autocomplete,n=lv(t,e.options,e.optionGroups);if(0===t&&1===n)e._setScrollTop(0);else if(e.panel){const n=e.options.toArray()[t];if(n){const t=n._getHostElement(),i=cv(t.offsetTop,t.offsetHeight,e._getScrollTop(),e.panel.nativeElement.offsetHeight);e._setScrollTop(i)}}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(kf),ea(hc),ea(xu),ea(tc),ea(SU),ea(Op,8),ea(aU,9),ea(Yu,8),ea(Mp),ea(_U,8))},t.\u0275dir=se({type:t,inputs:{position:["matAutocompletePosition","position"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"],autocomplete:["matAutocomplete","autocomplete"],connectedTo:["matAutocompleteConnectedTo","connectedTo"]},features:[ye]}),t})(),TU=(()=>{class t extends OU{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(t,e){1&t&&fa("focusin",function(){return e._handleFocus()})("blur",function(){return e._onTouched()})("input",function(t){return e._handleInput(t)})("keydown",function(t){return e._handleKeydown(t)}),2&t&&Ko("autocomplete",e.autocompleteAttribute)("role",e.autocompleteDisabled?null:"combobox")("aria-autocomplete",e.autocompleteDisabled?null:"list")("aria-activedescendant",e.panelOpen&&e.activeOption?e.activeOption.id:null)("aria-expanded",e.autocompleteDisabled?null:e.panelOpen.toString())("aria-owns",e.autocompleteDisabled||!e.panelOpen||null==e.autocomplete?null:e.autocomplete.id)("aria-haspopup",!e.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[_l([CU]),jo]}),t})(),kU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[EU],imports:[[Rf,uv,Ny,Rh],Ip,uv,Ny]}),t})();const AU=_p({passive:!0});let PU=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return ep;const e=_d(t),n=this._monitoredElements.get(e);if(n)return n.subject;const i=new P,r="cdk-text-field-autofilled",s=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(r)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(r)&&(e.classList.remove(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",s,AU),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",s,AU)}}),i}stopMonitoring(t){const e=_d(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)(Ci(pp),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu))},token:t,providedIn:"root"}),t})(),MU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp]]}),t})();const IU=new oi("MAT_INPUT_VALUE_ACCESSOR"),DU=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let RU=0;const NU=Vy(class{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}});let LU=(()=>{class t extends NU{constructor(t,e,n,i,r,s,o,a,l,c){super(s,i,r,n),this._elementRef=t,this._platform=e,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+RU++,this.focused=!1,this.stateChanges=new P,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=>mp().has(t));const u=this._elementRef.nativeElement,h=u.nodeName.toLowerCase();this._inputValueAccessor=o||u,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{const e=t.target;!e.value&&0===e.selectionStart&&0===e.selectionEnd&&(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===h,this._isTextarea="textarea"===h,this._isInFormField=!!c,this._isNativeSelect&&(this.controlType=u.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=md(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=md(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&mp().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=md(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.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){var t,e;const n=(null===(e=null===(t=this._formField)||void 0===t?void 0:t._hideControlPlaceholder)||void 0===e?void 0:e.call(t))?null:this.placeholder;if(n!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=n,n?t.setAttribute("placeholder",n):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){DU.indexOf(this._type)}_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){t.length?this._elementRef.nativeElement.setAttribute("aria-describedby",t.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(WV,10),ea(_z,8),ea(Tz,8),ea(zy),ea(IU,10),ea(PU),ea(xu),ea(aU,8))},t.\u0275dir=se({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._focusChanged(!0)})("blur",function(){return e._focusChanged(!1)})("input",function(){return e._onInput()}),2&t&&(il("disabled",e.disabled)("required",e.required),Ko("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-invalid",e.empty&&e.required?null:e.errorState)("aria-required",e.required),ja("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[_l([{provide:Qz,useExisting:t}]),jo,ye]}),t})(),jU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[zy],imports:[[MU,cU,Ny],MU,cU]}),t})();function FU(...t){const e=t.length;if(0===e)throw new Error("list of properties cannot be empty.");return n=>D(function(t,e){return n=>{let i=n;for(let r=0;rYU),multi:!0};class qU{}const XU=By(jy(Ly(class{constructor(t){this._elementRef=t}}),"accent"));let YU=(()=>{class t extends XU{constructor(t,e,n,i,r,s,o,a){super(t),this._focusMonitor=e,this._changeDetectorRef=n,this._dir=i,this._ngZone=s,this._animationMode=a,this._invert=!1,this._max=100,this._min=0,this._step=1,this._thumbLabel=!1,this._tickInterval=0,this._value=null,this._vertical=!1,this.change=new Rc,this.input=new Rc,this.valueChange=new Rc,this.onTouched=()=>{},this._percent=0,this._isSliding=null,this._isActive=!1,this._tickIntervalPercent=0,this._sliderDimensions=null,this._controlValueAccessorChangeFn=()=>{},this._dirChangeSubscription=g.EMPTY,this._pointerDown=t=>{this.disabled||this._isSliding||!KU(t)&&0!==t.button||this._ngZone.run(()=>{this._touchId=KU(t)?function(t,e){for(let n=0;n{if("pointer"===this._isSliding){const e=QU(t,this._touchId);if(e){t.preventDefault();const n=this.value;this._lastPointerEvent=t,this._updateValueFromPosition(e),n!=this.value&&this._emitInputEvent()}}},this._pointerUp=t=>{"pointer"===this._isSliding&&(!KU(t)||"number"!=typeof this._touchId||ZU(t.changedTouches,this._touchId))&&(t.preventDefault(),this._removeGlobalEvents(),this._isSliding=null,this._touchId=void 0,this._valueOnSlideStart!=this.value&&!this.disabled&&this._emitChangeEvent(),this._valueOnSlideStart=this._lastPointerEvent=null)},this._windowBlur=()=>{this._lastPointerEvent&&this._pointerUp(this._lastPointerEvent)},this._document=o,this.tabIndex=parseInt(r)||0,s.runOutsideAngular(()=>{const e=t.nativeElement;e.addEventListener("mousedown",this._pointerDown,GU),e.addEventListener("touchstart",this._pointerDown,GU)})}get invert(){return this._invert}set invert(t){this._invert=md(t)}get max(){return this._max}set max(t){this._max=bd(t,this._max),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get min(){return this._min}set min(t){this._min=bd(t,this._min),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get step(){return this._step}set step(t){this._step=bd(t,this._step),this._step%1!=0&&(this._roundToDecimal=this._step.toString().split(".").pop().length),this._changeDetectorRef.markForCheck()}get thumbLabel(){return this._thumbLabel}set thumbLabel(t){this._thumbLabel=md(t)}get tickInterval(){return this._tickInterval}set tickInterval(t){this._tickInterval="auto"===t?"auto":"number"==typeof t||"string"==typeof t?bd(t,this._tickInterval):0}get value(){return null===this._value&&(this.value=this._min),this._value}set value(t){if(t!==this._value){let e=bd(t,0);this._roundToDecimal&&e!==this.min&&e!==this.max&&(e=parseFloat(e.toFixed(this._roundToDecimal))),this._value=e,this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}}get vertical(){return this._vertical}set vertical(t){this._vertical=md(t)}get displayValue(){return this.displayWith?this.displayWith(this.value):this._roundToDecimal&&this.value&&this.value%1!=0?this.value.toFixed(this._roundToDecimal):this.value||0}focus(t){this._focusHostElement(t)}blur(){this._blurHostElement()}get percent(){return this._clamp(this._percent)}_shouldInvertAxis(){return this.vertical?!this.invert:this.invert}_isMinValue(){return 0===this.percent}_getThumbGap(){return this.disabled?7:this._isMinValue()&&!this.thumbLabel?this._isActive?10:7:0}_getTrackBackgroundStyles(){const t=this.vertical?`1, ${1-this.percent}, 1`:1-this.percent+", 1, 1";return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"-":""}${this._getThumbGap()}px) scale3d(${t})`}}_getTrackFillStyles(){const t=this.percent,e=this.vertical?`1, ${t}, 1`:`${t}, 1, 1`;return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"":"-"}${this._getThumbGap()}px) scale3d(${e})`,display:0===t?"none":""}}_getTicksContainerStyles(){return{transform:`translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"-":""}${this._tickIntervalPercent/2*100}%)`}}_getTicksStyles(){let t=100*this._tickIntervalPercent,e={backgroundSize:this.vertical?`2px ${t}%`:`${t}% 2px`,transform:`translateZ(0) translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"":"-"}${t/2}%)${this.vertical||"rtl"!=this._getDirection()?"":" rotate(180deg)"}`};if(this._isMinValue()&&this._getThumbGap()){const t=this._shouldInvertAxis();let n;n=this.vertical?t?"Bottom":"Top":t?"Right":"Left",e[`padding${n}`]=`${this._getThumbGap()}px`}return e}_getThumbContainerStyles(){const t=this._shouldInvertAxis();return{transform:`translate${this.vertical?"Y":"X"}(-${100*(("rtl"!=this._getDirection()||this.vertical?t:!t)?this.percent:1-this.percent)}%)`}}_shouldInvertMouseCoords(){const t=this._shouldInvertAxis();return"rtl"!=this._getDirection()||this.vertical?t:!t}_getDirection(){return this._dir&&"rtl"==this._dir.value?"rtl":"ltr"}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{this._isActive=!!t&&"keyboard"!==t,this._changeDetectorRef.detectChanges()}),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>{this._changeDetectorRef.markForCheck()}))}ngOnDestroy(){const t=this._elementRef.nativeElement;t.removeEventListener("mousedown",this._pointerDown,GU),t.removeEventListener("touchstart",this._pointerDown,GU),this._lastPointerEvent=null,this._removeGlobalEvents(),this._focusMonitor.stopMonitoring(this._elementRef),this._dirChangeSubscription.unsubscribe()}_onMouseenter(){this.disabled||(this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent())}_onFocus(){this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent()}_onBlur(){this.onTouched()}_onKeydown(t){if(this.disabled||Qp(t)||this._isSliding&&"keyboard"!==this._isSliding)return;const e=this.value;switch(t.keyCode){case 33:this._increment(10);break;case 34:this._increment(-10);break;case 35:this.value=this.max;break;case 36:this.value=this.min;break;case 37:this._increment("rtl"==this._getDirection()?1:-1);break;case 38:this._increment(1);break;case 39:this._increment("rtl"==this._getDirection()?-1:1);break;case 40:this._increment(-1);break;default:return}e!=this.value&&(this._emitInputEvent(),this._emitChangeEvent()),this._isSliding="keyboard",t.preventDefault()}_onKeyup(){"keyboard"===this._isSliding&&(this._isSliding=null)}_getWindow(){return this._document.defaultView||window}_bindGlobalEvents(t){const e=this._document,n=KU(t),i=n?"touchend":"mouseup";e.addEventListener(n?"touchmove":"mousemove",this._pointerMove,GU),e.addEventListener(i,this._pointerUp,GU),n&&e.addEventListener("touchcancel",this._pointerUp,GU);const r=this._getWindow();void 0!==r&&r&&r.addEventListener("blur",this._windowBlur)}_removeGlobalEvents(){const t=this._document;t.removeEventListener("mousemove",this._pointerMove,GU),t.removeEventListener("mouseup",this._pointerUp,GU),t.removeEventListener("touchmove",this._pointerMove,GU),t.removeEventListener("touchend",this._pointerUp,GU),t.removeEventListener("touchcancel",this._pointerUp,GU);const e=this._getWindow();void 0!==e&&e&&e.removeEventListener("blur",this._windowBlur)}_increment(t){this.value=this._clamp((this.value||0)+this.step*t,this.min,this.max)}_updateValueFromPosition(t){if(!this._sliderDimensions)return;let e=this._clamp(((this.vertical?t.y:t.x)-(this.vertical?this._sliderDimensions.top:this._sliderDimensions.left))/(this.vertical?this._sliderDimensions.height:this._sliderDimensions.width));if(this._shouldInvertMouseCoords()&&(e=1-e),0===e)this.value=this.min;else if(1===e)this.value=this.max;else{const t=this._calculateValue(e),n=Math.round((t-this.min)/this.step)*this.step+this.min;this.value=this._clamp(n,this.min,this.max)}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.value),this.valueChange.emit(this.value),this.change.emit(this._createChangeEvent())}_emitInputEvent(){this.input.emit(this._createChangeEvent())}_updateTickIntervalPercent(){if(this.tickInterval&&this._sliderDimensions)if("auto"==this.tickInterval){let t=this.vertical?this._sliderDimensions.height:this._sliderDimensions.width,e=Math.ceil(30/(t*this.step/(this.max-this.min)))*this.step;this._tickIntervalPercent=e/t}else this._tickIntervalPercent=this.tickInterval*this.step/(this.max-this.min)}_createChangeEvent(t=this.value){let e=new qU;return e.source=this,e.value=t,e}_calculatePercentage(t){return((t||0)-this.min)/(this.max-this.min)}_calculateValue(t){return this.min+t*(this.max-this.min)}_clamp(t,e=0,n=1){return Math.max(e,Math.min(t,n))}_getSliderDimensions(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}_focusHostElement(t){this._elementRef.nativeElement.focus(t)}_blurHostElement(){this._elementRef.nativeElement.blur()}writeValue(t){this.value=t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.disabled=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(tc),ea(Op,8),ni("tabindex"),ea(xu),ea(Yu),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-slider"]],viewQuery:function(t,e){if(1&t&&qc($U,5),2&t){let t;Wc(t=Yc())&&(e._sliderWrapper=t.first)}},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()})("keydown",function(t){return e._onKeydown(t)})("keyup",function(){return e._onKeyup()})("mouseenter",function(){return e._onMouseenter()})("selectstart",function(t){return t.preventDefault()}),2&t&&(il("tabIndex",e.tabIndex),Ko("aria-disabled",e.disabled)("aria-valuemax",e.max)("aria-valuemin",e.min)("aria-valuenow",e.value)("aria-valuetext",null==e.valueText?e.displayValue:e.valueText)("aria-orientation",e.vertical?"vertical":"horizontal"),ja("mat-slider-disabled",e.disabled)("mat-slider-has-ticks",e.tickInterval)("mat-slider-horizontal",!e.vertical)("mat-slider-axis-inverted",e._shouldInvertAxis())("mat-slider-invert-mouse-coords",e._shouldInvertMouseCoords())("mat-slider-sliding",e._isSliding)("mat-slider-thumb-label-showing",e.thumbLabel)("mat-slider-vertical",e.vertical)("mat-slider-min-value",e._isMinValue())("mat-slider-hide-last-tick",e.disabled||e._isMinValue()&&e._getThumbGap()&&e._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",vertical:"vertical",displayWith:"displayWith",valueText:"valueText"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[_l([WU]),jo],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(t,e){1&t&&(ra(0,"div",0,1),ra(2,"div",2),oa(3,"div",3),oa(4,"div",4),sa(),ra(5,"div",5),oa(6,"div",6),sa(),ra(7,"div",7),oa(8,"div",8),oa(9,"div",9),ra(10,"div",10),ra(11,"span",11),Za(12),sa(),sa(),sa(),sa()),2&t&&(ws(3),na("ngStyle",e._getTrackBackgroundStyles()),ws(1),na("ngStyle",e._getTrackFillStyles()),ws(1),na("ngStyle",e._getTicksContainerStyles()),ws(1),na("ngStyle",e._getTicksStyles()),ws(1),na("ngStyle",e._getThumbContainerStyles()),ws(5),Ja(e.displayValue))},directives:[Th],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),t})();function KU(t){return"t"===t.type[0]}function QU(t,e){let n;return n=KU(t)?"number"==typeof e?ZU(t.touches,e)||ZU(t.changedTouches,e):t.touches[0]||t.changedTouches[0]:t,n?{x:n.clientX,y:n.clientY}:void 0}function ZU(t,e){for(let n=0;n{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny],Ny]}),t})();function tH(t,e){}class eH{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus=!0,this.restoreFocus=!0,this.closeOnNavigation=!0}}const nH={dialogContainer:Vg("dialogContainer",[$g("void, exit",Hg({opacity:0,transform:"scale(0.7)"})),$g("enter",Hg({transform:"none"})),Wg("* => enter",zg("150ms cubic-bezier(0, 0, 0.2, 1)",Hg({transform:"none",opacity:1}))),Wg("* => void, * => exit",zg("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Hg({opacity:0})))])};let iH=(()=>{class t extends Fp{constructor(t,e,n,i,r,s){super(),this._elementRef=t,this._focusTrapFactory=e,this._changeDetectorRef=n,this._config=r,this._focusMonitor=s,this._animationStateChanged=new Rc,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=t=>(this._portalOutlet.hasAttached(),this._portalOutlet.attachDomPortal(t)),this._ariaLabelledBy=r.ariaLabelledBy||null,this._document=i}_initializeWithAttachedContent(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement(),this._focusDialogContainer()}attachComponentPortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(t)}_recaptureFocus(){this._containsFocus()||(!this._config.autoFocus||!this._focusTrap.focusInitialElement())&&this._elementRef.nativeElement.focus()}_trapFocus(){this._config.autoFocus?this._focusTrap.focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()}_restoreFocus(){const t=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&t&&"function"==typeof t.focus){const e=Sp(),n=this._elementRef.nativeElement;(!e||e===this._document.body||e===n||n.contains(e))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_setupFocusTrap(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}_capturePreviouslyFocusedElement(){this._document&&(this._elementFocusedBeforeDialogWasOpened=Sp())}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const t=this._elementRef.nativeElement,e=Sp();return t===e||t.contains(e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(vg),ea(tc),ea(Yu,8),ea(eH),ea(Mg))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},features:[jo]}),t})(),rH=(()=>{class t extends iH{constructor(){super(...arguments),this._state="enter"}_onAnimationDone({toState:t,totalTime:e}){"enter"===t?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})):"exit"===t&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:e}))}_onAnimationStart({toState:t,totalTime:e}){"enter"===t?this._animationStateChanged.next({state:"opening",totalTime:e}):("exit"===t||"void"===t)&&this._animationStateChanged.next({state:"closing",totalTime:e})}_startExitAnimation(){this._state="exit",this._changeDetectorRef.markForCheck()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(t,e){1&t&&ga("@dialogContainer.start",function(t){return e._onAnimationStart(t)})("@dialogContainer.done",function(t){return e._onAnimationDone(t)}),2&t&&(il("id",e._id),Ko("role",e._config.role)("aria-labelledby",e._config.ariaLabel?null:e._ariaLabelledBy)("aria-label",e._config.ariaLabel)("aria-describedby",e._config.ariaDescribedBy||null),rl("@dialogContainer",e._state))},features:[jo],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,e){1&t&&Jo(0,tH,0,0,"ng-template",0)},directives:[Up],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[nH.dialogContainer]}}),t})(),sH=0;class oH{constructor(t,e,n="mat-dialog-"+sH++){this._overlayRef=t,this._containerInstance=e,this.id=n,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new P,this._afterClosed=new P,this._beforeClosed=new P,this._state=0,e._id=n,e._animationStateChanged.pipe(Hd(t=>"opened"===t.state),Gp(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe(Hd(t=>"closed"===t.state),Gp(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),t.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._afterClosed.next(this._result),this._afterClosed.complete(),this.componentInstance=null,this._overlayRef.dispose()}),t.keydownEvents().pipe(Hd(t=>27===t.keyCode&&!this.disableClose&&!Qp(t))).subscribe(t=>{t.preventDefault(),aH(this,"keyboard")}),t.backdropClick().subscribe(()=>{this.disableClose?this._containerInstance._recaptureFocus():aH(this,"mouse")})}close(t){this._result=t,this._containerInstance._animationStateChanged.pipe(Hd(t=>"closing"===t.state),Gp(1)).subscribe(e=>{this._beforeClosed.next(t),this._beforeClosed.complete(),this._overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._afterClosed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._overlayRef.backdropClick()}keydownEvents(){return this._overlayRef.keydownEvents()}updatePosition(t){let e=this._getPositionStrategy();return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this}updateSize(t="",e=""){return this._overlayRef.updateSize({width:t,height:e}),this._overlayRef.updatePosition(),this}addPanelClass(t){return this._overlayRef.addPanelClass(t),this}removePanelClass(t){return this._overlayRef.removePanelClass(t),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._overlayRef.dispose()}_getPositionStrategy(){return this._overlayRef.getConfig().positionStrategy}}function aH(t,e,n){return void 0!==t._containerInstance&&(t._containerInstance._closeInteractionType=e),t.close(n)}const lH=new oi("MatDialogData"),cH=new oi("mat-dialog-default-options"),uH=new oi("mat-dialog-scroll-strategy"),hH={provide:uH,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.block()}};let dH=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l){this._overlay=t,this._injector=e,this._defaultOptions=n,this._parentDialog=i,this._overlayContainer=r,this._dialogRefConstructor=o,this._dialogContainerType=a,this._dialogDataToken=l,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new P,this._afterOpenedAtThisLevel=new P,this._ariaHiddenElements=new Map,this.afterAllClosed=Mz(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Kd(void 0))),this._scrollStrategy=s}get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const t=this._parentDialog;return t?t._getAfterAllClosed():this._afterAllClosedAtThisLevel}open(t,e){(e=function(t,e){return Object.assign(Object.assign({},e),t)}(e,this._defaultOptions||new eH)).id&&this.getDialogById(e.id);const n=this._createOverlay(e),i=this._attachDialogContainer(n,e),r=this._attachDialogContent(t,i,n,e);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(r),r.afterClosed().subscribe(()=>this._removeOpenDialog(r)),this.afterOpened.next(r),i._initializeWithAttachedContent(),r}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(t){return this.openDialogs.find(e=>e.id===t)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_createOverlay(t){const e=this._getOverlayConfig(t);return this._overlay.create(e)}_getOverlayConfig(t){const e=new af({positionStrategy:this._overlay.position().global(),scrollStrategy:t.scrollStrategy||this._scrollStrategy(),panelClass:t.panelClass,hasBackdrop:t.hasBackdrop,direction:t.direction,minWidth:t.minWidth,minHeight:t.minHeight,maxWidth:t.maxWidth,maxHeight:t.maxHeight,disposeOnNavigation:t.closeOnNavigation});return t.backdropClass&&(e.backdropClass=t.backdropClass),e}_attachDialogContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:eH,useValue:e}]}),i=new Np(this._dialogContainerType,e.viewContainerRef,n,e.componentFactoryResolver);return t.attach(i).instance}_attachDialogContent(t,e,n,i){const r=new this._dialogRefConstructor(n,e,i.id);if(t instanceof sc)e.attachTemplatePortal(new Lp(t,null,{$implicit:i.data,dialogRef:r}));else{const n=this._createInjector(i,r,e),s=e.attachComponentPortal(new Np(t,i.viewContainerRef,n));r.componentInstance=s.instance}return r.updateSize(i.width,i.height).updatePosition(i.position),r}_createInjector(t,e,n){const i=t&&t.viewContainerRef&&t.viewContainerRef.injector,r=[{provide:this._dialogContainerType,useValue:n},{provide:this._dialogDataToken,useValue:t.data},{provide:this._dialogRefConstructor,useValue:e}];return t.direction&&(!i||!i.get(Op,null,Mt.Optional))&&r.push({provide:Op,useValue:{value:t.direction,change:wd()}}),No.create({parent:i||this._injector,providers:r})}_removeOpenDialog(t){const e=this.openDialogs.indexOf(t);e>-1&&(this.openDialogs.splice(e,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((t,e)=>{t?e.setAttribute("aria-hidden",t):e.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const t=this._overlayContainer.getContainerElement();if(t.parentElement){const e=t.parentElement.children;for(let n=e.length-1;n>-1;n--){let i=e[n];i!==t&&"SCRIPT"!==i.nodeName&&"STYLE"!==i.nodeName&&!i.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}}}_closeDialogs(t){let e=t.length;for(;e--;)t[e].close()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(No),ea(void 0),ea(void 0),ea(gf),ea(void 0),ea(ai),ea(ai),ea(oi))},t.\u0275dir=se({type:t}),t})(),pH=(()=>{class t extends dH{constructor(t,e,n,i,r,s,o){super(t,e,i,s,o,r,oH,rH,lH)}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(No),Ci(lh,8),Ci(cH,8),Ci(uH),Ci(t,12),Ci(gf))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fH=0,gH=(()=>{class t{constructor(t,e,n){this._dialogRef=t,this._elementRef=e,this._dialog=n,this.id="mat-dialog-title-"+fH++}ngOnInit(){this._dialogRef||(this._dialogRef=function(t,e){let n=t.nativeElement.parentElement;for(;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?e.find(t=>t.id===n.id):null}(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{const t=this._dialogRef._containerInstance;t&&!t._ariaLabelledBy&&(t._ariaLabelledBy=this.id)})}}return t.\u0275fac=function(e){return new(e||t)(ea(oH,8),ea(kl),ea(pH))},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(t,e){2&t&&il("id",e.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t})(),mH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t})();let bH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[pH,hH],imports:[[Rf,Hp,Ny],Ny]}),t})();const yH=new oi("CdkAccordion");let vH=0,_H=(()=>{class t{constructor(t,e,n){this.accordion=t,this._changeDetectorRef=e,this._expansionDispatcher=n,this._openCloseAllSubscription=g.EMPTY,this.closed=new Rc,this.opened=new Rc,this.destroyed=new Rc,this.expandedChange=new Rc,this.id="cdk-accordion-child-"+vH++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=n.listen((t,e)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===e&&this.id!==t&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}get expanded(){return this._expanded}set expanded(t){t=md(t),this._expanded!==t&&(this._expanded=t,this.expandedChange.emit(t),t?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(t=>{this.disabled||(this.expanded=t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(yH,12),ea(tc),ea(Ap))},t.\u0275dir=se({type:t,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[_l([{provide:yH,useValue:void 0}])]}),t})(),wH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const xH=["body"];function SH(t,e){}const EH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],CH=["mat-expansion-panel-header","*","mat-action-row"];function OH(t,e){1&t&&oa(0,"span",2),2&t&&na("@indicatorRotate",va()._getExpandedState())}const TH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],kH=["mat-panel-title","mat-panel-description","*"],AH=new oi("MAT_ACCORDION"),PH="225ms cubic-bezier(0.4,0.0,0.2,1)",MH={indicatorRotate:Vg("indicatorRotate",[$g("collapsed, void",Hg({transform:"rotate(0deg)"})),$g("expanded",Hg({transform:"rotate(180deg)"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))]),bodyExpansion:Vg("bodyExpansion",[$g("collapsed, void",Hg({height:"0px",visibility:"hidden"})),$g("expanded",Hg({height:"*",visibility:"visible"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))])};let IH=(()=>{class t{constructor(t){this._template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","matExpansionPanelContent",""]]}),t})(),DH=0;const RH=new oi("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let NH=(()=>{class t extends _H{constructor(t,e,n,i,r,s,o){super(t,e,n),this._viewContainerRef=i,this._animationMode=s,this._hideToggle=!1,this.afterExpand=new Rc,this.afterCollapse=new Rc,this._inputChanges=new P,this._headerId="mat-expansion-panel-header-"+DH++,this._bodyAnimationDone=new P,this.accordion=t,this._document=r,this._bodyAnimationDone.pipe(Rd((t,e)=>t.fromState===e.fromState&&t.toState===e.toState)).subscribe(t=>{"void"!==t.fromState&&("expanded"===t.toState?this.afterExpand.emit():"collapsed"===t.toState&&this.afterCollapse.emit())}),o&&(this.hideToggle=o.hideToggle)}get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(t){this._hideToggle=md(t)}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(t){this._togglePosition=t}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this.opened.pipe(Kd(null),Hd(()=>this.expanded&&!this._portal),Gp(1)).subscribe(()=>{this._portal=new Lp(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(t){this._inputChanges.next(t)}ngOnDestroy(){super.ngOnDestroy(),this._bodyAnimationDone.complete(),this._inputChanges.complete()}_containsFocus(){if(this._body){const t=this._document.activeElement,e=this._body.nativeElement;return t===e||e.contains(t)}return!1}}return t.\u0275fac=function(e){return new(e||t)(ea(AH,12),ea(tc),ea(Ap),ea(hc),ea(Yu),ea(Ey,8),ea(RH,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,IH,5),2&t){let t;Wc(t=Yc())&&(e._lazyContent=t.first)}},viewQuery:function(t,e){if(1&t&&qc(xH,5),2&t){let t;Wc(t=Yc())&&(e._body=t.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(t,e){2&t&&ja("mat-expanded",e.expanded)("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-expansion-panel-spacing",e._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[_l([{provide:AH,useValue:void 0}]),jo,ye],ngContentSelectors:CH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,e){1&t&&(wa(EH),xa(0),ra(1,"div",0,1),fa("@bodyExpansion.done",function(t){return e._bodyAnimationDone.next(t)}),ra(3,"div",2),xa(4,1),Jo(5,SH,0,0,"ng-template",3),sa(),xa(6,2),sa()),2&t&&(ws(1),na("@bodyExpansion",e._getExpandedState())("id",e.id),Ko("aria-labelledby",e._headerId),ws(4),na("cdkPortalOutlet",e._portal))},directives:[Up],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[MH.bodyExpansion]},changeDetection:0}),t})();class LH{}const jH=By(LH);let FH=(()=>{class t extends jH{constructor(t,e,n,i,r,s,o){super(),this.panel=t,this._element=e,this._focusMonitor=n,this._changeDetectorRef=i,this._animationMode=s,this._parentChangeSubscription=g.EMPTY;const a=t.accordion?t.accordion._stateChanges.pipe(Hd(t=>!(!t.hideToggle&&!t.togglePosition))):ep;this.tabIndex=parseInt(o||"")||0,this._parentChangeSubscription=Q(t.opened,t.closed,a,t._inputChanges.pipe(Hd(t=>!!(t.hideToggle||t.disabled||t.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),t.closed.pipe(Hd(()=>t._containsFocus())).subscribe(()=>n.focusVia(e,"program")),r&&(this.expandedHeight=r.expandedHeight,this.collapsedHeight=r.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const t=this._isExpanded();return t&&this.expandedHeight?this.expandedHeight:!t&&this.collapsedHeight?this.collapsedHeight:null}_keydown(t){switch(t.keyCode){case 32:case 13:Qp(t)||(t.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(t))}}focus(t,e){t?this._focusMonitor.focusVia(this._element,t,e):this._element.nativeElement.focus(e)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(t=>{t&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}return t.\u0275fac=function(e){return new(e||t)(ea(NH,1),ea(kl),ea(Mg),ea(tc),ea(RH,8),ea(Ey,8),ni("tabindex"))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(t,e){1&t&&fa("click",function(){return e._toggle()})("keydown",function(t){return e._keydown(t)}),2&t&&(Ko("id",e.panel._headerId)("tabindex",e.tabIndex)("aria-controls",e._getPanelId())("aria-expanded",e._isExpanded())("aria-disabled",e.panel.disabled),La("height",e._getHeaderHeight()),ja("mat-expanded",e._isExpanded())("mat-expansion-toggle-indicator-after","after"===e._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===e._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[jo],ngContentSelectors:kH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(t,e){1&t&&(wa(TH),ra(0,"span",0),xa(1),xa(2,1),xa(3,2),sa(),Jo(4,OH,1,1,"span",1)),2&t&&(ws(4),na("ngIf",e._showToggle()))},directives:[_h],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[MH.indicatorRotate]},changeDetection:0}),t})(),BH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,wH,Hp]]}),t})();var VH=n(5478);Object.create(Error.prototype);const zH=["*"];var UH=(()=>(function(t){t.LineHighlight="line-highlight",t.LineNumbers="line-numbers"}(UH||(UH={})),UH))();class HH{}const $H=new oi("SECURITY_CONTEXT");let GH=(()=>{class t{constructor(t,e,n,i,r){this.platform=t,this.securityContext=e,this.http=n,this.sanitizer=r,this.initialMarkedOptions={renderer:new VH.Renderer},this.options=i}get options(){return this._options}set options(t){this._options=Object.assign(Object.assign({},this.initialMarkedOptions),t)}get renderer(){return this.options.renderer}set renderer(t){this.options.renderer=t}compile(t,e=!1,n=!1,i=this.options){const r=this.trimIndentation(t),s=e?this.decodeHtml(r):r,o=n?this.renderEmoji(s):s,a=VH.parse(o,i);return this.sanitizer.sanitize(this.securityContext,a)||""}getSource(t){if(!this.http)throw new Error("[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information");return this.http.get(t,{responseType:"text"}).pipe(D(e=>this.handleExtension(t,e)))}highlight(t){if(Lh(this.platform)&&"undefined"!=typeof Prism){t||(t=document);const e=t.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(e,t=>t.classList.add("language-none")),Prism.highlightAllUnder(t)}}renderKatex(t,e){if(!Lh(this.platform))return t;if("undefined"==typeof katex||void 0===katex.renderToString)throw new Error("[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information");return t.replace(/\$([^\s][^$]*?[^\s])\$/gm,(t,n)=>katex.renderToString(n,e))}decodeHtml(t){if(!Lh(this.platform))return t;const e=document.createElement("textarea");return e.innerHTML=t,e.value}handleExtension(t,e){const n=t?t.split("?")[0].split(".").splice(-1).join():"";return"md"!==n?"```"+n+"\n"+e+"\n```":e}renderEmoji(t){if(!Lh(this.platform))return t;if("undefined"==typeof joypixels||void 0===joypixels.shortnameToUnicode)throw new Error("[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information");return joypixels.shortnameToUnicode(t)}trimIndentation(t){if(!t)return"";let e;return t.split("\n").map(t=>{let n=e;return t.length>0&&(n=isNaN(n)?t.search(/\S|$/):Math.min(t.search(/\S|$/),n)),isNaN(e)&&(e=n),n?t.substring(n):t}).join("\n")}}return t.\u0275fac=function(e){return new(e||t)(Ci(ou),Ci($H),Ci(Bv,8),Ci(HH,8),Ci(hd))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),WH=(()=>{class t{constructor(t,e){this.element=t,this.markdownService=e,this.error=new Rc,this.load=new Rc,this.ready=new Rc,this._emoji=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1}get emoji(){return this._emoji}set emoji(t){this._emoji=this.coerceBooleanProperty(t)}get katex(){return this._katex}set katex(t){this._katex=this.coerceBooleanProperty(t)}get lineHighlight(){return this._lineHighlight}set lineHighlight(t){this._lineHighlight=this.coerceBooleanProperty(t)}get lineNumbers(){return this._lineNumbers}set lineNumbers(t){this._lineNumbers=this.coerceBooleanProperty(t)}ngOnChanges(){null==this.data?null==this.src||this.handleSrc():this.handleData()}ngAfterViewInit(){!this.data&&!this.src&&this.handleTransclusion()}render(t,e=!1){let n=this.markdownService.compile(t,e,this.emoji);n=this.katex?this.markdownService.renderKatex(n,this.katexOptions):n,this.element.nativeElement.innerHTML=n,this.handlePlugins(),this.markdownService.highlight(this.element.nativeElement),this.ready.emit()}coerceBooleanProperty(t){return null!=t&&"false"!=`${String(t)}`}handleData(){this.render(this.data)}handleSrc(){this.markdownService.getSource(this.src).subscribe(t=>{this.render(t),this.load.emit(t)},t=>this.error.emit(t))}handleTransclusion(){this.render(this.element.nativeElement.innerHTML,!0)}handlePlugins(){this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,UH.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}setPluginClass(t,e){const n=t.querySelectorAll("pre");for(let i=0;i{const r=e[t];if(r){const e=this.toLispCase(t);n.item(i).setAttribute(e,r.toString())}})}toLispCase(t){const e=t.match(/([A-Z])/g);if(!e)return t;let n=t.toString();for(let i=0,r=e.length;i{class t{static forRoot(e){return{ngModule:t,providers:[GH,e&&e.loader||[],e&&e.markedOptions||[],{provide:$H,useValue:e&&null!=e.sanitize?e.sanitize:yr.HTML}]}}static forChild(){return{ngModule:t}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function XH(t,e,n){return n?XH(t,e).pipe(D(t=>d(t)?n(...t):n(t))):new C(n=>{const i=(...t)=>n.next(1===t.length?t[0]:t);let r;try{r=t(i)}catch(s){return void n.error(s)}if(a(e))return()=>e(i,r)})}function YH(...t){return e=>{let n;return"function"==typeof t[t.length-1]&&(n=t.pop()),e.lift(new KH(t,n))}}class KH{constructor(t,e){this.observables=t,this.project=e}call(t,e){return e.subscribe(new QH(t,this.observables,this.project))}}class QH extends S_{constructor(t,e,n){super(t),this.observables=e,this.project=n,this.toRespond=[];const i=e.length;this.values=new Array(i);for(let r=0;r0){const t=i.indexOf(n);-1!==t&&i.splice(t,1)}}notifyComplete(){}_next(t){if(0===this.toRespond.length){const e=[t,...this.values];this.project?this._tryProject(e):this.destination.next(e)}}_tryProject(t){let e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}class ZH{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new JH(t,this.accumulator,this.seed,this.hasSeed))}}class JH extends v{constructor(t,e,n,i){super(t),this.accumulator=e,this._seed=n,this.hasSeed=i,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(i){this.destination.error(i)}this.seed=n,this.destination.next(n)}}class t${constructor(t){this.predicate=t}call(t,e){return e.subscribe(new e$(t,this.predicate))}}class e$ extends v{constructor(t,e){super(t),this.predicate=e,this.skipping=!0,this.index=0}_next(t){const e=this.destination;this.skipping&&this.tryCallPredicate(t),this.skipping||e.next(t)}tryCallPredicate(t){try{const e=this.predicate(t,this.index++);this.skipping=Boolean(e)}catch(e){this.destination.error(e)}}}const n$=["youtubeContainer"];let i$=(()=>{class t{constructor(t,e){this._ngZone=t,this._youtubeContainer=new P,this._destroyed=new P,this._playerChanges=new Uf(void 0),this._videoId=new Uf(void 0),this._height=new Uf(390),this._width=new Uf(640),this._startSeconds=new Uf(void 0),this._endSeconds=new Uf(void 0),this._suggestedQuality=new Uf(void 0),this._playerVars=new Uf(void 0),this.ready=this._getLazyEmitter("onReady"),this.stateChange=this._getLazyEmitter("onStateChange"),this.error=this._getLazyEmitter("onError"),this.apiChange=this._getLazyEmitter("onApiChange"),this.playbackQualityChange=this._getLazyEmitter("onPlaybackQualityChange"),this.playbackRateChange=this._getLazyEmitter("onPlaybackRateChange"),this._isBrowser=Lh(e)}get videoId(){return this._videoId.value}set videoId(t){this._videoId.next(t)}get height(){return this._height.value}set height(t){this._height.next(t||390)}get width(){return this._width.value}set width(t){this._width.next(t||640)}set startSeconds(t){this._startSeconds.next(t)}set endSeconds(t){this._endSeconds.next(t)}set suggestedQuality(t){this._suggestedQuality.next(t)}get playerVars(){return this._playerVars.value}set playerVars(t){this._playerVars.next(t)}ngOnInit(){if(!this._isBrowser)return;let t=wd(!0);if(!window.YT||!window.YT.Player){const e=new P;this._existingApiReadyCallback=window.onYouTubeIframeAPIReady,window.onYouTubeIframeAPIReady=()=>{this._existingApiReadyCallback&&this._existingApiReadyCallback(),this._ngZone.run(()=>e.next(!0))},t=e.pipe(Gp(1),Kd(!1))}const e=function(t,e,n,i,r,s,o){const a=T_([e,s]).pipe(YH(T_([i,r])),D(([t,e])=>{const[n,i]=t,[r,s]=e;return n?{videoId:n,playerVars:i,width:r,height:s}:void 0}));return T_([t,a,wd(o)]).pipe(function(t){return S(function(...t){let e=null;return"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0].slice()),n=>n.lift.call(U([n,...t]),new k_(e))}(t),function(t){return e=>e.lift(new t$(t))}(([t,e])=>!e),D(([t])=>t))}(n),function(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new ZH(t,e,n))}}(r$,void 0),Rd())}(this._youtubeContainer,this._videoId,t,this._width,this._height,this._playerVars,this._ngZone).pipe($f(t=>{this._playerChanges.next(t)}),W(t=>t?s$(t)?wd(t):new C(e=>{let n=!1,i=!1;const r=t=>{i=!0,n||(t.target.removeEventListener("onReady",r),e.next(t.target))};return t.addEventListener("onReady",r),()=>{n=!0,i||(t=>{s$(t)||t.destroy()})(t)}}).pipe(Gp(1),Kd(void 0)):wd(void 0)),Wd(this._destroyed),rt(new P));e.subscribe(t=>{this._player=t,t&&this._pendingPlayerState&&this._initializePlayer(t,this._pendingPlayerState),this._pendingPlayerState=void 0}),function(t,e,n){T_([t,e,n]).subscribe(([t,e,n])=>t&&t.setSize(e,n))}(e,this._width,this._height),function(t,e){T_([t,e]).subscribe(([t,e])=>t&&e&&t.setPlaybackQuality(e))}(e,this._suggestedQuality),function(t,e,n,i,r,s){const o=T_([n,i]).pipe(D(([t,e])=>({startSeconds:t,endSeconds:e}))),a=o.pipe(o$(t,t=>!!t&&!function(t){const e=t.getPlayerState();return e!==YT.PlayerState.UNSTARTED&&e!==YT.PlayerState.CUED}(t))),l=e.pipe(o$(t,(t,e)=>!!t&&t.videoId!==e));Q(t.pipe(o$(T_([e,o]),([t,e],n)=>!(!n||t==n.videoId&&!e.startSeconds&&!e.endSeconds))),l,a).pipe(YH(T_([t,e,o,r])),D(([t,e])=>e),Wd(s)).subscribe(([t,e,n,i])=>{!e||!t||(t.videoId=e,t.cueVideoById(Object.assign({videoId:e,suggestedQuality:i},n)))})}(e,this._videoId,this._startSeconds,this._endSeconds,this._suggestedQuality,this._destroyed),e.connect()}createEventsBoundInZone(){return{}}ngAfterViewInit(){this._youtubeContainer.next(this.youtubeContainer.nativeElement)}ngOnDestroy(){this._player&&(this._player.destroy(),window.onYouTubeIframeAPIReady=this._existingApiReadyCallback),this._playerChanges.complete(),this._videoId.complete(),this._height.complete(),this._width.complete(),this._startSeconds.complete(),this._endSeconds.complete(),this._suggestedQuality.complete(),this._youtubeContainer.complete(),this._playerVars.complete(),this._destroyed.next(),this._destroyed.complete()}playVideo(){this._player?this._player.playVideo():this._getPendingState().playbackState=YT.PlayerState.PLAYING}pauseVideo(){this._player?this._player.pauseVideo():this._getPendingState().playbackState=YT.PlayerState.PAUSED}stopVideo(){this._player?this._player.stopVideo():this._getPendingState().playbackState=YT.PlayerState.CUED}seekTo(t,e){this._player?this._player.seekTo(t,e):this._getPendingState().seek={seconds:t,allowSeekAhead:e}}mute(){this._player?this._player.mute():this._getPendingState().muted=!0}unMute(){this._player?this._player.unMute():this._getPendingState().muted=!1}isMuted(){return this._player?this._player.isMuted():!!this._pendingPlayerState&&!!this._pendingPlayerState.muted}setVolume(t){this._player?this._player.setVolume(t):this._getPendingState().volume=t}getVolume(){return this._player?this._player.getVolume():this._pendingPlayerState&&null!=this._pendingPlayerState.volume?this._pendingPlayerState.volume:0}setPlaybackRate(t){if(this._player)return this._player.setPlaybackRate(t);this._getPendingState().playbackRate=t}getPlaybackRate(){return this._player?this._player.getPlaybackRate():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackRate?this._pendingPlayerState.playbackRate:0}getAvailablePlaybackRates(){return this._player?this._player.getAvailablePlaybackRates():[]}getVideoLoadedFraction(){return this._player?this._player.getVideoLoadedFraction():0}getPlayerState(){if(this._isBrowser&&window.YT)return this._player?this._player.getPlayerState():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackState?this._pendingPlayerState.playbackState:YT.PlayerState.UNSTARTED}getCurrentTime(){return this._player?this._player.getCurrentTime():this._pendingPlayerState&&this._pendingPlayerState.seek?this._pendingPlayerState.seek.seconds:0}getPlaybackQuality(){return this._player?this._player.getPlaybackQuality():"default"}getAvailableQualityLevels(){return this._player?this._player.getAvailableQualityLevels():[]}getDuration(){return this._player?this._player.getDuration():0}getVideoUrl(){return this._player?this._player.getVideoUrl():""}getVideoEmbedCode(){return this._player?this._player.getVideoEmbedCode():""}_getPendingState(){return this._pendingPlayerState||(this._pendingPlayerState={}),this._pendingPlayerState}_initializePlayer(t,e){const{playbackState:n,playbackRate:i,volume:r,muted:s,seek:o}=e;switch(n){case YT.PlayerState.PLAYING:t.playVideo();break;case YT.PlayerState.PAUSED:t.pauseVideo();break;case YT.PlayerState.CUED:t.stopVideo()}null!=i&&t.setPlaybackRate(i),null!=r&&t.setVolume(r),null!=s&&(s?t.mute():t.unMute()),null!=o&&t.seekTo(o.seconds,o.allowSeekAhead)}_getLazyEmitter(t){return this._playerChanges.pipe(Qd(e=>e?XH(n=>{e.addEventListener(t,n)},n=>{try{e.removeEventListener&&e.removeEventListener(t,n)}catch(i){}}):wd()),t=>new C(e=>t.subscribe({next:t=>this._ngZone.run(()=>e.next(t)),error:t=>e.error(t),complete:()=>e.complete()})),Wd(this._destroyed))}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["youtube-player"]],viewQuery:function(t,e){if(1&t&&qc(n$,5),2&t){let t;Wc(t=Yc())&&(e.youtubeContainer=t.first)}},inputs:{videoId:"videoId",height:"height",width:"width",startSeconds:"startSeconds",endSeconds:"endSeconds",suggestedQuality:"suggestedQuality",playerVars:"playerVars",showBeforeIframeApiLoads:"showBeforeIframeApiLoads"},outputs:{ready:"ready",stateChange:"stateChange",error:"error",apiChange:"apiChange",playbackQualityChange:"playbackQualityChange",playbackRateChange:"playbackRateChange"},decls:2,vars:0,consts:[["youtubeContainer",""]],template:function(t,e){1&t&&oa(0,"div",null,0)},encapsulation:2,changeDetection:0}),t})();function r$(t,[e,n,i]){if(t&&n&&t.playerVars!==n.playerVars)t.destroy();else{if(!n)return void(t&&t.destroy());if(t)return t}const r=i.runOutsideAngular(()=>new YT.Player(e,n));return r.videoId=n.videoId,r.playerVars=n.playerVars,r}function s$(t){return"getPlayerStatus"in t}function o$(t,e){return S(YH(t),Hd(([t,n])=>e(n,t)),D(([t])=>t))}let a$=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function l$(t){return!0===t}function c$(t){return null==t}function u$(t){return!c$(t)}function h$(t){return Boolean(t)}function d$(t){return c$(t)?t:JSON.parse(JSON.stringify(t))}const p$=t=>{const e=t instanceof Date;if("object"!=typeof t||null===t||e)return t;Object.freeze(t);const n="function"==typeof t,i=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(e=>{i.call(t,e)&&(!n||"caller"!==e&&"callee"!==e&&"arguments"!==e)&&null!==t[e]&&("object"==typeof t[e]||"function"==typeof t[e])&&!Object.isFrozen(t[e])&&p$(t[e])}),t};function f$(t){return u$(t)&&"object"==typeof t&&function(t){return"[object Object]"===Object.prototype.toString.call(t)}(t)}const g$="NGXS_DATA_META",m$="NGXS_META",b$="NGXS_ARGUMENT_REGISTRY_META";let y$=(()=>{class t{constructor(t){this.sequence$=new Uf(0),this.subscription=null,t&&(this.subscription=t.subscribe(()=>this.updateSequence()))}get sequenceValue(){return this.sequence$.getValue()}ngOnDestroy(){var t;this.sequence$.next(0),null===(t=this.subscription)||void 0===t||t.unsubscribe()}updateSequence(){this.sequence$.next(this.sequenceValue+1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function v$(t){return t[g$]}let _$=(()=>{class t{constructor(e,n,i){t.store=e.get(pV),t.ngZone=e.get(xu),t.factory=n,t.context=i,t.computed=e.get(y$)}}return t.store=null,t.computed=null,t.context=null,t.factory=null,t.ngZone=null,t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(wB),Ci(_B))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class w${constructor(){w$.statesCachedMeta.clear()}static createStateContext(t){return _$.context.createStateContext(t)}static ensureMappedState(t){if(c$(_$.factory)||c$(t))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return(u$(t.name)?w$.statesCachedMeta.get(t.name):null)||w$.ensureMeta(t)}static getRepositoryByInstance(t){var e;const n=null!==(e=v$(w$.getStateClassByInstance(t)))&&void 0!==e?e:null;if(c$(n))throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return n}static getStateClassByInstance(t){return(null!=t?t:{}).constructor}static clearMetaByInstance(t){const e=w$.getRepositoryByInstance(t);e.stateMeta.actions={},e.operations={}}static createPayload(t,e){const n={},i=Array.from(t);for(let r=0;r0?n:null}static createAction(t,e,n){const i=w$.createPayload(e,n);return new(function(t){return class{constructor(t){t&&Object.keys(t).forEach(e=>{this[e]=t[e]})}static get type(){return t}}}(t.type))(i)}static ensureMeta(t){var e;const n=u$(t.name)?null===(e=_$.factory.states)||void 0===e?void 0:e.find(e=>e.name===t.name):null;return u$(n)&&u$(t.name)&&w$.statesCachedMeta.set(t.name,n),n}}w$.statesCachedMeta=new Map,w$.\u0275fac=function(t){return new(t||w$)},w$.\u0275prov=xt({token:w$,factory:w$.\u0275fac}),new lp(1);class x$ extends Error{constructor(t){super(`Child states can only be added to an object. Cannot convert ${u$(null==t?void 0:t.constructor)?t.constructor.name:t} to PlainObject`)}}function S$(t){var e;return null!==(e=t.NGXS_OPTIONS_META)&&void 0!==e?e:{name:""}}function E$(t){var e;const n=S$(t),i=null!==(e=n.children)&&void 0!==e?e:[],r=d$(void 0===n.defaults?{}:n.defaults);if(i.length){if(f$(r))return function(t,e){return e.reduce((t,e)=>{const n=S$(e);if(function(t){const e="string"==typeof t?t.trim():t;return[void 0,null,NaN,"",1/0].includes(e)}(n.name))throw new Error("State name not provided in class");return t[n.name.toString()]=E$(e),t},null!=t?t:{})}(r,i);throw new x$(r)}return r}function C$(t){var e;return null!==(e=t.__NGXS_COMPUTED_OPTION__)&&void 0!==e?e:null}function O$(){var t,e;return null!==(e=null===(t=null==_$?void 0:_$.computed)||void 0===t?void 0:t.sequenceValue)&&void 0!==e?e:0}function T$(t){let e=!1;return Dd(t)&&(e=!0),e}function k$(t){return t[b$]}class A$ extends Error{constructor(t,e){super(`An argument with the name '${t}' already exists in the method '${e}'`)}}class P${constructor(){this.payloadMap=new Map,this.argumentMap=new Map}getPayloadTypeByIndex(t){var e;return null!==(e=this.payloadMap.get(t))&&void 0!==e?e:null}getArgumentNameByIndex(t){var e;return null!==(e=this.argumentMap.get(t))&&void 0!==e?e:null}createPayloadType(t,e,n){this.checkDuplicateName(t,e),this.payloadMap.set(n,t),this.payloadMap.set(t,t)}createArgumentName(t,e,n){this.checkDuplicateName(t,e),this.argumentMap.set(n,t),this.argumentMap.set(t,t)}checkDuplicateName(t,e){if(h$(this.argumentMap.has(t))||h$(this.payloadMap.has(t)))throw new A$(t,e)}}function M$(t){return Nu()?p$(t):t}function I$(t){return{enumerable:!0,configurable:!0,get(){const e=v$(t),n=w$.ensureMappedState(e.stateMeta);return w$.createStateContext(n)}}}function D$(t){if(!t)throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return Object.assign(Object.assign({},t),{getState:()=>Nu()?p$(t.getState()):t.getState(),setState(e){t.setState(e)},patchState(e){t.patchState(e)}})}function R$(){return(t,e,n)=>{!function(t,e){if(!function(t,e){var n;let i=t,r=!1;if(f$(i))for(;null!==i;){if(l$(null==i?void 0:i.hasOwnProperty(e))){r=!!(null===(n=Object.getOwnPropertyDescriptor(i,e))||void 0===n?void 0:n.get);break}i=Object.getPrototypeOf(i)}return r}(t,null==e?void 0:e.toString()))throw new Error(`The method must be a getter for the computed decorator to work properly.\nExample: \n@Computed() get ${e.toString()}() { \n\t .. \n}`)}(t,e);const i=n.get;return n.get=function(...t){const e=function(t){return c$(C$(t))&&Object.defineProperties(t,{__NGXS_COMPUTED_OPTION__:{enumerable:!0,configurable:!0,value:new WeakMap}}),C$(t)}(this),n=null==e?void 0:e.get(i);if(l$(null==n?void 0:n.isObservable))return null==n?void 0:n.value;if(c$(n)||n.sequenceId!==O$()){e.delete(i);const n=i.apply(this,t);return e.set(i,{value:n,sequenceId:O$(),isObservable:T$(n)}),n}return n.value},n}}const N$={cancelUncompleted:!0,insideZone:!1};function L$(t=N$){return(e,n,i)=>{!function(t,e){if(t.hasOwnProperty("prototype"))throw new Error("Cannot support static methods with @DataAction()");if(void 0===e)throw new Error("@DataAction() can only decorate a method implementation")}(e,i);const r=i.value,s=n.toString();return i.value=function(...e){const n=this;let i=null;const o=w$.getRepositoryByInstance(n),a=o.operations;let l=a[s];const c=o.stateMeta,u=k$(r);if(c$(l)){const e=function(t){var e,n,i;return null!==(i=null===(n=null===(e=(t+"").replace(/[/][/].*$/gm,"").replace(/\s+/g,"").replace(/[/][*][^/*]*[*][/]/g,"").split("){",1))||void 0===e?void 0:e[0])||void 0===n?void 0:n.replace(/^[^(]*[(]/,"").replace(/=[^,]+/g,"").split(",").filter(Boolean))&&void 0!==i?i:[]}(r),n=function(t){const{statePath:e,argumentsNames:n,methodName:i,argumentRegistry:r}=t;let s="";for(let o=0;o{var s;return l$(t.insideZone)?null===(s=_$.ngZone)||void 0===s||s.run(()=>{i=r.apply(n,e)}):i=r.apply(n,e),Dd(i)?wd(null).pipe(D(()=>i)):i};const h=w$.createAction(l,e,u),d=_$.store.dispatch(h);return Dd(i)?function(t,e){return hv([t,e]).pipe(D(t=>t.pop()))}(d,i):i},i}}function j$(t){return(e,n,i)=>{const r=t.trim();if(!r)throw new Error("Payload name should be initialized");(function(t,e){const n=t[e];return c$(k$(n))&&Object.defineProperties(n,{[b$]:{enumerable:!0,configurable:!0,value:new P$}}),k$(n)})(e,n).createPayloadType(r,n,i)}}function F$(){return t=>{const e=function(t){if(function(t){return!h$(t)}(t.hasOwnProperty(m$))){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,m$,{value:e})}return function(t){var e;return null===(e=t)||void 0===e?void 0:e[m$]}(t)}(t);if(c$(e.name))throw new Error("@StateRepository should be add before decorator @State");!function(t,e){(function(t){var e;const n=null!==(e=v$(t))&&void 0!==e?e:null;return(c$(n)||(null==n?void 0:n.stateClass)!==t)&&function(t){Object.defineProperty(t,g$,{writable:!0,configurable:!0,enumerable:!0,value:{stateMeta:null,operations:{},stateClass:t}})}(t),v$(t)}(t)).stateMeta=e}(t,e),function(t,e,n){Object.defineProperties(t.prototype,{name:{enumerable:!0,configurable:!0,value:e.name},initialState:{enumerable:!0,configurable:!0,get:()=>d$(n)},context:I$(t)})}(t,e,E$(t)),function(t){var e,n;const i=v$(t),r=null!==(n=null===(e=null==i?void 0:i.stateMeta)||void 0===e?void 0:e.name)&&void 0!==n?n:null;if(u$(r)){const e=`__${r}__selector`;Object.defineProperties(t.prototype,{[e]:{writable:!0,enumerable:!1,configurable:!0},state$:{enumerable:!0,configurable:!0,get(){if(u$(this[e]))return this[e];if(c$(_$.store))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return this[e]=_$.store.select(t).pipe(D(t=>Nu()?p$(t):t),up({refCount:!0,bufferSize:1})),this[e]}}})}}(t)}}let B$=(()=>{class t{constructor(){this.browserStorageEvents$=new P,this.isInitialised=!1,this.isBootstrapped=!1,this._dirty=!0}get dirty(){return this._dirty}set dirty(t){this._dirty=t}ngxsOnChanges(t){var e;this.dirty&&this.isBootstrapped&&(this.dirty=!1,null===(e=this.ngxsDataDoCheck)||void 0===e||e.call(this))}ngxsOnInit(){this.isInitialised=!0}ngxsAfterBootstrap(){var t;this.isBootstrapped=!0,this.dirty&&(this.dirty=!1,null===(t=this.ngxsDataDoCheck)||void 0===t||t.call(this))}markAsDirtyAfterReset(){var t;this.dirty=!0,null===(t=this.ngxsDataAfterReset)||void 0===t||t.call(this)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),V$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})(),z$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})();const U$=new oi("ngx-google-analytics-settings",{factory:()=>({trackingCode:"",enableTracing:!1})}),H$=new oi("ngx-window",{providedIn:"root",factory:()=>function(t){return Lh(t)?window:null}(Oi(ou))}),$$=new oi("ngx-data-layer",{providedIn:"root",factory:()=>function(t){return t?t.dataLayer=t.dataLayer||[]:null}(Oi(H$))}),G$=new oi("ngx-gtag-fn",{providedIn:"root",factory:()=>function(t,e){return t?t.gtag=t.gtag||function(){e.push(arguments)}:null}(Oi(H$),Oi($$))});let W$=(()=>{class t{constructor(t,e,n){this.settings=t,this._document=e,this._gtag=n}get document(){return this._document}throw(t){(this.settings.enableTracing||Nu())&&console&&console.error&&console.error(t)}toKeyValue(t){return t.size>0?Array.from(t).reduce((t,[e,n])=>Object.defineProperty(t,e,{value:n,enumerable:!0}),{}):void 0}gtag(...t){try{this._gtag(...t.filter(t=>void 0!==t))}catch(e){this.throw(e)}}event(t,e,n,i,r){try{const s=new Map;e&&s.set("event_category",e),n&&s.set("event_label",n),i&&s.set("value",i),void 0!==r&&s.set("interaction",r);const o=this.toKeyValue(s);o?this.gtag("event",t,o):this.gtag("event",t)}catch(s){this.throw(s)}}pageView(t,e,n,i){try{const r=new Map([["page_path",t]]);e&&r.set("page_title",e),(n||this.document)&&r.set("page_location",n||this.document.location.href),i&&Object.entries(i).map(([t,e])=>r.set(t,e)),this.gtag("config",this.settings.trackingCode,this.toKeyValue(r))}catch(r){this.throw(r)}}appView(t,e,n,i,r){try{const s=new Map([["screen_name",t],["app_name",e]]);n&&s.set("app_id",n),i&&s.set("app_version",i),r&&s.set("app_installer_id",r),this.gtag("event","screen_view",this.toKeyValue(s))}catch(s){this.throw(s)}}set(...t){try{this._gtag("set",...t)}catch(e){this.throw(e)}}exception(t,e){try{const n=new Map;t&&n.set("description",t),e&&n.set("fatal",e),this.toKeyValue(n)?this.gtag("event","exception",this.toKeyValue(n)):this.gtag("event","exception")}catch(n){this.throw(n)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(U$),Ci(Yu),Ci(G$))},t.\u0275prov=xt({factory:function(){return new t(Ci(U$),Ci(Yu),Ci(G$))},token:t,providedIn:"root"}),t})();const q$={provide:tu,multi:!0,useFactory:function(t,e,n){return()=>lw(this,void 0,void 0,function*(){var i;if(!t.trackingCode)return void(Nu()||console.error("Empty tracking code for Google Analytics. Make sure to provide one when initializing NgxGoogleAnalyticsModule."));if(!e)return void(Nu()||console.error("Was not possible create or read gtag() fn. Make sure this module is running on a Browser w/ access to Window interface."));n||Nu()||console.error("Was not possible to access Document interface. Make sure this module is running on a Browser w/ access do Document interface."),t.uri=t.uri||`https://www.googletagmanager.com/gtag/js?id=${t.trackingCode}`,t.initCommands=null!==(i=null==t?void 0:t.initCommands)&&void 0!==i?i:[],t.initCommands.find(t=>"config"===t.command)||t.initCommands.unshift({command:"config",values:[t.trackingCode]}),t.initCommands.find(t=>"js"===t.command)||t.initCommands.unshift({command:"js",values:[new Date]});for(const n of t.initCommands)e(n.command,...n.values);const r=n.createElement("script");r.async=!0,r.src=t.uri,t.nonce&&r.setAttribute("nonce",t.nonce),n.getElementsByTagName("head")[0].appendChild(r)})},deps:[U$,G$,Yu]};new oi("ngx-google-analytics-routing-settings",{factory:()=>({})});let X$=(()=>{class t{static forRoot(e,n=[],i,r,s){return{ngModule:t,providers:[{provide:U$,useValue:{trackingCode:e,initCommands:n,uri:i,enableTracing:r,nonce:s}},q$]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[]]}),t})(),Y$=(()=>{class t{constructor(){this.consent="not-set",this.consentChange=new lp(1),this.consentChange.next(this.consent)}ngOnDestroy(){this.consentChange.complete()}setConsent(t){this.consent!==t&&(this.consent=t,this.consentChange.next(t))}unsetConsent(){this.setConsent("not-set")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),K$=(()=>{class t{constructor(t,e,{trackingCode:n}){this.window=e,this.subscriptions=new g,this.token=n,this.subscriptions.add(t.consentChange.subscribe(t=>this.toggleGoogleAnalytics("rescinded"===t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}toggleGoogleAnalytics(t){this.window&&(this.window[`ga-disable-${this.token}`]=t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(H$),Ci(U$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Q$=new oi("Key under which consent is stored",{providedIn:"root",factory:()=>"ALLOW_TELEMETRY"}),Z$=[Y$,K$,(()=>{class t{constructor(t,e){this.key=e,this.subscriptions=new g;try{this.storage=localStorage}catch(n){}t.setConsent(this.loadConsent()),this.subscriptions.add(t.consentChange.subscribe(t=>this.saveConsent(t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}loadConsent(){var t,e;const n=null===(e=null===(t=this.storage)||void 0===t?void 0:t.getItem)||void 0===e?void 0:e.call(t,this.key);if(null==n)return"not-set";const i=n.trim().toLowerCase();switch(i){case"given":case"rescinded":return i;default:return"not-set"}}saveConsent(t){var e,n;null===(n=null===(e=this.storage)||void 0===e?void 0:e.setItem)||void 0===n||n.call(e,this.key,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(Q$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})()];function J$(t){return Object.entries(t).reduce((t,[e,n])=>(null!=n&&(t[e]=`${n}`),t),{})}let tG=(()=>{class t{static forRoot(e){const{providers:n=[]}=X$.forRoot(e.gaToken,function(t){const{appName:e,projectName:n,developmentMode:i}=t;return[{command:"set",values:[J$({appName:e,projectName:n,developmentMode:i})]}]}(e));return{ngModule:t,providers:n}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[...Z$,{provide:tu,multi:!0,useFactory:()=>()=>{},deps:Z$}],imports:[[X$]]}),t})();function eG(t,e,n,i){n&&"function"!=typeof n&&(i=n);const r="function"==typeof n?n:void 0,s=new lp(t,e,i);return t=>rt(()=>s,r)(t)}const nG=(t,e)=>JSON.stringify(t)===JSON.stringify(e),iG=t=>t.map(t=>void 0!==t?JSON.parse(JSON.stringify(t)):t),rG={storageStrategy:class extends class{}{constructor(){super(...arguments),this.cachePairs=[]}add(t,e,n){this.cachePairs.push(t)}addMany(t){this.cachePairs=t}updateAtIndex(t,e){Object.assign(this.cachePairs[t],e)}update(t,e){Object.assign(this.cachePairs[t],e)}getAll(){return this.cachePairs}removeAtIndex(t){this.cachePairs.splice(t,1)}remove(t){this.cachePairs.splice(t,1)}removeAll(){this.cachePairs.length=0}},globalCacheKey:"CACHE_STORAGE",promiseImplementation:Promise},sG=new P;function oG(t={}){return function(e,n,i){const r=t.cacheKey||e.constructor.name+"#"+n,s=i.value;if(i&&i.value){let e=t.storageStrategy?new t.storageStrategy:new rG.storageStrategy;const n=[];t.cacheModifier&&t.cacheModifier.subscribe(t=>e.addMany(t(e.getAll(r,this)),r,this)),Q(sG.asObservable(),t.cacheBusterObserver?t.cacheBusterObserver:np()).subscribe(t=>{e.removeAll(r,this),n.length=0}),t.cacheResolver=t.cacheResolver||rG.cacheResolver||nG,t.cacheHasher=t.cacheHasher||rG.cacheHasher||iG,i.value=function(...i){const o=e.getAll(r,this);let a=t.cacheHasher(i),l=o.find(e=>t.cacheResolver(e.parameters,a));const c=n.find(e=>t.cacheResolver(e.parameters,a));if((t.maxAge||rG.maxAge)&&l&&l.created&&((new Date).getTime()-new Date(l.created).getTime()>(t.maxAge||rG.maxAge)?(e.remove?e.remove(o.indexOf(l),l,r,this):e.removeAtIndex(o.indexOf(l),r,this),l=null):(t.slidingExpiration||rG.slidingExpiration)&&(l.created=new Date,e.update?e.update(o.indexOf(l),l,r,this):e.updateAtIndex(o.indexOf(l),l,r,this))),l){const e=wd(l.response);return t.async?e.pipe(uU(0)):e}if(c)return c.response;{const l=s.call(this,...i).pipe(mv(()=>{const e=n.find(e=>t.cacheResolver(e.parameters,a));n.splice(n.indexOf(e),1)}),$f(n=>{(!t.shouldCacheDecider||t.shouldCacheDecider(n))&&((!(t.maxCacheCount||rG.maxCacheCount)||1===(t.maxCacheCount||rG.maxCacheCount)||(t.maxCacheCount||rG.maxCacheCount)&&(t.maxCacheCount||rG.maxCacheCount)this.isJsonMime(t));return void 0===e?t[0]:e}selectHeaderAccept(t){if(0===t.length)return;const e=t.find(t=>this.isJsonMime(t));return void 0===e?t[0]:e}isJsonMime(t){const e=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==t&&(e.test(t)||"application/json-patch+json"===t.toLowerCase())}lookupCredential(t){const e=this.credentials[t];return"function"==typeof e?e():e}}let uG=(()=>{class t{constructor(t,e,n){this.httpClient=t,this.basePath="/v1",this.defaultHeaders=new wv,this.configuration=new cG,n&&(this.configuration=n),"string"!=typeof this.configuration.basePath&&("string"!=typeof e&&(e=this.basePath),this.configuration.basePath=e),this.encoder=this.configuration.encoder||new aG}addToHttpParams(t,e,n){return this.addToHttpParamsRecursive(t,e,n)}addToHttpParamsRecursive(t,e,n){if(null==e)return t;if("object"==typeof e)if(Array.isArray(e))e.forEach(e=>t=this.addToHttpParamsRecursive(t,e,n));else if(e instanceof Date){if(null==n)throw Error("key may not be null if value is Date");t=t.append(n,e.toISOString().substr(0,10))}else Object.keys(e).forEach(i=>t=this.addToHttpParamsRecursive(t,e[i],null!=n?`${n}.${i}`:i));else{if(null==n)throw Error("key may not be null if value is not object or array");t=t.append(n,e)}return t}aggregateResults(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/aggregate-results`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}gtexRuiLocations(t,e="body",n=!1,i){const r=t.cache;let s=new Tv({encoder:this.encoder});null!=r&&(s=this.addToHttpParams(s,r,"cache"));let o=this.defaultHeaders,a=i&&i.httpHeaderAccept;void 0===a&&(a=this.configuration.selectHeaderAccept(["application/json"])),void 0!==a&&(o=o.set("Accept",a));let l=i&&i.context;void 0===l&&(l=new kv);let c="json";return a&&(c=a.startsWith("text")?"text":this.configuration.isJsonMime(a)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/gtex/rui_locations.jsonld`,{context:l,params:s,responseType:c,withCredentials:this.configuration.withCredentials,headers:o,observe:e,reportProgress:n})}hubmapRuiLocations(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/hubmap/rui_locations.jsonld`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}ontologyTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}ontologyTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}providerNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/provider-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}referenceOrganScene(t,e="body",n=!1,i){const r=t.organIri;if(null==r)throw new Error("Required parameter organIri was null or undefined when calling referenceOrganScene.");const s=t.age,o=t.ageRange,a=t.bmi,l=t.bmiRange,c=t.cache,u=t.ontologyTerms,h=t.cellTypeTerms,d=t.providers,p=t.sex,f=t.technologies,g=t.token;let m=new Tv({encoder:this.encoder});null!=s&&(m=this.addToHttpParams(m,s,"age")),null!=o&&(m=this.addToHttpParams(m,o,"age-range")),null!=a&&(m=this.addToHttpParams(m,a,"bmi")),null!=l&&(m=this.addToHttpParams(m,l,"bmi-range")),null!=c&&(m=this.addToHttpParams(m,c,"cache")),u&&u.forEach(t=>{m=this.addToHttpParams(m,t,"ontology-terms")}),h&&h.forEach(t=>{m=this.addToHttpParams(m,t,"cell-type-terms")}),null!=r&&(m=this.addToHttpParams(m,r,"organ-iri")),d&&d.forEach(t=>{m=this.addToHttpParams(m,t,"providers")}),null!=p&&(m=this.addToHttpParams(m,p,"sex")),f&&f.forEach(t=>{m=this.addToHttpParams(m,t,"technologies")}),null!=g&&(m=this.addToHttpParams(m,g,"token"));let b=this.defaultHeaders,y=i&&i.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(b=b.set("Accept",y));let v=i&&i.context;void 0===v&&(v=new kv);let _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organ-scene`,{context:v,params:m,responseType:_,withCredentials:this.configuration.withCredentials,headers:b,observe:e,reportProgress:n})}referenceOrgans(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organs`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}scene(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/scene`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}technologyNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/technology-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}tissueBlocks(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/tissue-blocks`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv),Ci(lG,8),Ci(cG,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Bv),Ci(lG,8),Ci(cG,8))},token:t,providedIn:"root"}),t})(),hG=(()=>{class t{constructor(t,e){if(t)throw new Error("CcfApiModule is already loaded. Import in your base AppModule only.");if(!e)throw new Error("You need to import the HttpClientModule in your AppModule! \nSee also https://github.com/angular/angular/issues/20575")}static forRoot(e){return{ngModule:t,providers:[{provide:cG,useFactory:e}]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(Bv,8))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[],imports:[[]]}),t})();function dG(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}let pG;function fG(){return pG||(pG=function(t,e){const n=function(){if(navigator.userAgentData||!/Safari\//.test(navigator.userAgent)||/Chrom(e|ium)\//.test(navigator.userAgent)||!indexedDB.databases)return Promise.resolve();let t;return new Promise(e=>{const n=()=>indexedDB.databases().finally(e);t=setInterval(n,100),n()}).finally(()=>clearInterval(t))}().then(()=>{const t=indexedDB.open("keyval-store");return t.onupgradeneeded=()=>t.result.createObjectStore(e),dG(t)});return(t,i)=>n.then(n=>i(n.transaction(e,t).objectStore(e)))}(0,"keyval")),pG}function gG(t,e=fG()){return e("readonly",e=>dG(e.get(t)))}var mG=n(71440),bG=n(70698),yG=n(7445),vG=n.n(yG),_G=n(23815),wG=n(31609);const xG=mG.Util.prefixes({ccf:"http://purl.org/ccf/latest/ccf.owl#",entity:"http://purl.org/ccf/latest/ccf-entity.owl#",fma:"http://purl.obolibrary.org/obo/FMA_",obo:"http://purl.obolibrary.org/obo/",uberon:"http://purl.obolibrary.org/obo/UBERON_",cl:"http://purl.obolibrary.org/obo/CL_",lmha:"http://purl.obolibrary.org/obo/LMHA_",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",dc:"http://purl.org/dc/elements/1.1/"},mG.DataFactory),SG={x:xG("rdf"),type:xG("rdf")("type")},EG={x:xG("rdfs"),label:xG("rdfs")("label"),comment:xG("rdfs")("comment"),isDefinedBy:xG("rdfs")("isDefinedBy"),seeAlso:xG("rdfs")("seeAlso")},CG={x:xG("entity"),id:xG("entity")("id"),label:EG.label,description:EG.comment,link:EG.seeAlso,sex:xG("entity")("sex"),age:xG("entity")("age"),bmi:xG("entity")("bmi"),Male:mG.DataFactory.literal("Male"),Female:mG.DataFactory.literal("Female"),consortiumName:xG("entity")("consortium_name"),providerName:xG("entity")("provider_name"),providerUUID:xG("entity")("provider_uuid"),donor:xG("entity")("has_donor"),sections:xG("entity")("has_tissue_section"),datasets:xG("entity")("has_dataset"),sampleType:xG("entity")("sample_type"),TissueBlock:mG.DataFactory.literal("Tissue Block"),TissueSection:mG.DataFactory.literal("Tissue Section"),NonStandard:mG.DataFactory.literal("Non-standard"),sectionCount:xG("entity")("section_count"),sectionSize:xG("entity")("section_size"),sectionUnits:xG("entity")("section_units"),sectionNumber:xG("entity")("section_number"),spatialEntity:xG("entity")("has_spatial_entity"),ontologyTerms:xG("entity")("has_ontology_term"),cellTypeTerms:xG("entity")("has_cell_type_term"),technology:xG("entity")("technology"),thumbnail:xG("entity")("has_thumbnail")},OG=xG("ccf"),TG={x:OG,ontologyNode:{label:OG("ccf_preferred_label"),parent:OG("ccf_part_of"),children:OG("ccf_part_of"),rui_rank:OG("ccf_rui_rank"),synonymLabels:mG.DataFactory.namedNode("http://www.geneontology.org/formats/oboInOwl#hasExactSynonym")},asctb:{part_of:OG("ccf_part_of"),ct_is_a:OG("ct_is_a"),located_in:OG("located_in"),characterizes:OG("characterizes")},spatial:{Female:OG("VHFemale"),Male:OG("VHMale"),BothSexes:OG("VHBothSexes"),FemaleOrgans:OG("VHFemaleOrgans"),MaleOrgans:OG("VHMaleOrgans")},SpatialObjectReference:OG("SpatialObjectReference"),SpatialEntity:OG("SpatialEntity"),SpatialPlacement:OG("SpatialPlacement"),spatialObjectReference:{file:OG("has_object_file"),file_format:OG("has_object_file_format"),file_subpath:OG("has_object_file_subpath")},extractionSet:{label:EG.label,rui_rank:OG("ccf_rui_rank")},spatialEntity:{label:EG.label,comment:EG.comment,creator:xG("dc")("creator"),creator_first_name:OG("creator_first_name"),creator_last_name:OG("creator_last_name"),creator_orcid:OG("creator_orcid"),creation_date:OG("creation_date"),updated_date:OG("updated_date"),ccf_annotations:OG("ccf_annotation"),representation_of:OG("ccf_representation_of"),reference_organ:OG("anatomical_structure_of"),extraction_set_for:OG("extraction_set_for"),extraction_set:OG("extraction_site_for"),sex:OG("has_sex"),side:OG("has_side"),rui_rank:OG("ccf_rui_rank"),slice_thickness:OG("ccf_slice_thickness"),slice_count:OG("ccf_slice_count"),x_dimension:OG("has_x_dimension"),y_dimension:OG("has_y_dimension"),z_dimension:OG("has_z_dimension"),dimension_units:OG("has_dimension_units"),object:OG("has_object_reference")},spatialPlacement:{source:OG("has_placement_source"),target:OG("has_placement_target"),placement_date:OG("has_placement_date"),x_scaling:OG("has_x_scaling"),y_scaling:OG("has_y_scaling"),z_scaling:OG("has_z_scaling"),scaling_units:OG("has_scaling_units"),x_rotation:OG("has_x_rotation"),y_rotation:OG("has_y_rotation"),z_rotation:OG("has_z_rotation"),w_rotation:OG("has_theta_rotation"),rotation_order:OG("has_rotation_order"),rotation_units:OG("has_rotation_units"),x_translation:OG("has_x_translation"),y_translation:OG("has_y_translation"),z_translation:OG("has_z_translation"),translation_units:OG("has_translation_units")}},kG={x:xG("uberon"),body:xG("uberon")("0013702")},AG={x:xG("cl"),cell:xG("cl")("0000000")},PG={x:xG("fma")},MG=(xG("lmha"),{body:kG.body,cell:AG.cell,respiratory_system:kG.x("0001004"),colon:kG.x("0001155"),left_lung:kG.x("0002168"),right_lung:kG.x("0002167"),left_bronchus:kG.x("0002178"),right_bronchus:kG.x("0002177"),kidney:kG.x("0002113"),ureter:kG.x("0000056"),eye:kG.x("0000970"),fallopian_tube:kG.x("0003889"),knee:kG.x("0001465"),ovary:kG.x("0000992"),trachea:kG.x("0003126"),aorta:kG.x("0000947"),blood:kG.x("0000178"),bone_marrow:kG.x("0002371"),male_reproductive_system:kG.x("0000079"),lymph_node:kG.x("0000029"),blood_vasculature:kG.x("0004537"),brain:kG.x("0000955"),eye_left:kG.x("0004548"),eye_right:PG.x("54449"),fallopian_tube_left:kG.x("0001303"),fallopian_tube_right:kG.x("0001302"),heart:kG.x("0000948"),kidney_left:kG.x("0004538"),kidney_right:kG.x("0004539"),knee_left:PG.x("24978"),knee_right:PG.x("24977"),large_intestine:kG.x("0000059"),liver:kG.x("0002107"),lungs:kG.x("0002048"),mesenteric_lymph_node:kG.x("0002509"),ovary_left:PG.x("7214"),ovary_right:PG.x("7213"),pancreas:kG.x("0001264"),pelvis:kG.x("0001270"),prostate_gland:kG.x("0002367"),skin:kG.x("0002097"),small_intestine:kG.x("0002108"),spleen:kG.x("0002106"),thymus:kG.x("0002370"),ureter_left:kG.x("0001223"),ureter_right:kG.x("0001222"),urinary_bladder:kG.x("0001255"),uterus:kG.x("0000995")});function IG(t){const e={};return Object.entries(t).forEach(([t,n])=>{e[n.id]=t}),e}const DG={spatialObjectReference:IG(TG.spatialObjectReference),spatialEntity:IG(TG.spatialEntity),spatialPlacement:IG(TG.spatialPlacement)};function RG(t,e,n,i){const r={"@id":e,"@type":n};return t.some(t=>{const e=i[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(r,e,n)}return!1},mG.DataFactory.namedNode(e),null,null,null),r}const NG=(0,_G.memoize)(function(t,e){return RG(t,e,"SpatialObjectReference",DG.spatialObjectReference)},(t,e)=>e),LG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"ExtractionSet",DG.spatialEntity);return n.extractionSites=(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set,e,null).map(e=>VG(t,e.id)),["rui_rank"]),n},(t,e)=>e),jG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set_for,e,null).map(e=>LG(t,e.id)),["rui_rank"])},(t,e)=>e),FG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.reference_organ,e,null).map(e=>VG(t,e.id)).filter(t=>t["@id"]!==e),["rui_rank"])},(t,e)=>e),BG=(0,_G.memoize)(function(t){const e=[];return t.forEach(n=>{n.subject.id===n.object.id&&e.push(VG(t,n.subject.id))},null,TG.spatialEntity.reference_organ,null,null),(0,_G.sortBy)(e,["rui_rank"])}),VG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialEntity",DG.spatialEntity);return n.object&&(n.object=NG(t,n.object)),n.ccf_annotations&&(n.ccf_annotations=t.getObjects(e,TG.spatialEntity.ccf_annotations,null).map(t=>t.id)),t.forSubjects(t=>n.entityId=t.id,CG.spatialEntity,e,null),n},(t,e)=>e),zG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialPlacement",DG.spatialPlacement);return n.source&&(n.source=VG(t,n.source)),n.target&&(n.target=VG(t,n.target)),n},(t,e)=>e),UG=(0,_G.memoize)(function(t,e){const n=t.getObjects(mG.DataFactory.namedNode(e),CG.spatialEntity,null);if(n.length>0)return VG(t,n[0].id)},(t,e)=>e);function HG(t,e){const n=e;let i;switch(n.translation_units){case"centimeter":i=.01;break;case"millimeter":i=.001;break;case"meter":default:i=1}const r=[n.x_translation,n.y_translation,n.z_translation].map(t=>t*i),s=[n.x_rotation,n.y_rotation,n.z_rotation].map(NS),o=[n.x_scaling,n.y_scaling,n.z_scaling];return t.translate(r).rotateXYZ(s).scale(o)}class $G{constructor(t){this.db=t,this.createGraph()}createGraph(){this.graph=new bG.DirectedGraph;const t=this.db.store;t.forSubjects(t=>{this.addNode(t.id,"SpatialObjectReference")},SG.type,TG.SpatialObjectReference,null),t.forSubjects(t=>{this.addNode(t.id,"SpatialEntity")},SG.type,TG.SpatialEntity,null);const e={};t.some(t=>(e[t.subject.id]=t.object.id,!1),null,TG.spatialPlacement.source,null,null),t.some(t=>{const n=e[t.subject.id];return n&&this.addEdge(t.subject.id,n,t.object.id,"SpatialPlacement"),!1},null,TG.spatialPlacement.target,null,null)}addNode(t,e){this.graph.mergeNode(t,{type:e})}addEdge(t,e,n,i){this.graph.mergeDirectedEdge(e,n,{type:i,id:t})}getTransformationMatrix(t,e){if(t===e)return new bT(bT.IDENTITY);if(!this.graph.hasNode(t)||!this.graph.hasNode(e))return;const n=this.db.store,i=new bT(bT.IDENTITY),r=vG()(this.graph,t,e);if(r&&r.length>0){r.reverse();let t="";for(const e of r){if(t){const r=this.graph.getEdgeAttribute(e,t,"id");HG(i,zG(n,r))}t=e}return i}}}class GG{constructor(t){this.db=t}getSpatialEntity(t){return VG(this.db.store,t)}getExtractionSets(t){return jG(this.db.store,t)}getExtractionSet(t){return LG(this.db.store,t)}getAnatomicalStructures(t){return FG(this.db.store,t)}getReferenceOrgans(){return BG(this.db.store)}getReferenceBody(t){let e;switch(null==t?void 0:t.sex){case"Male":e=TG.spatial.Male.id;break;case"Female":e=TG.spatial.Female.id;break;case"Both":default:e=TG.spatial.BothSexes.id}return this.getSpatialEntity(e)}getReferenceOrganSets(t){let e=this.getReferenceOrgans();switch(null==t?void 0:t.sex){case"Male":e=e.filter(t=>"Male"===t.sex);break;case"Female":e=e.filter(t=>"Female"===t.sex)}return(null==t?void 0:t.debug)&&(e=e.map(t=>[[t],this.getAnatomicalStructures(t["@id"])]).reduce((t,[e,n])=>t.concat(n.length>0?n:e),[])),e}getReferenceSceneNodes(t){const e=this.getReferenceBody(t),n=[];let i=[...this.getReferenceOrganSets(t).map(t=>{const i="http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of,r=this.getSceneNode(t,e,{color:[255,255,255,255],opacity:i?.5:.2,unpickable:!0,_lighting:"pbr",zoomBasedOpacity:!i});return i&&r?void n.push(r):r})];return n.length>0&&(i=[...n,...i]),(null==t?void 0:t.debug)&&(i=i.concat([this.getSceneNode(this.getSpatialEntity(TG.x("VHRightKidney").id),e,{color:[0,0,255,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHLeftKidney").id),e,{color:[255,0,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC1").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC2").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC3").id),e,{color:[0,255,0,127.5],wireframe:!0})])),i.filter(t=>void 0!==t)}getReferenceOrganScene(t,e){var n,i;const r=null!==(n=void 0!==(null==e?void 0:e.sex))&&void 0!==n&&n,s=this.getReferenceOrgans().filter(n=>n.representation_of===t&&(!r||n.sex===(null==e?void 0:e.sex)));if(s.length>0){const t=s[0],n=this.getSceneNode(t,t,{color:[255,255,255,255],opacity:"http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of?.5:.2,unpickable:!0,_lighting:"pbr"}),r=(null!==(i=this.db.getSpatialEntities(e))&&void 0!==i?i:[]).map(e=>this.getSceneNode(e,t,{color:[255,255,255,229.5]}));return[n].concat(r).filter(t=>void 0!==t)}return[]}getEntitySceneNodes(t){const e=this.getReferenceBody(t);return this.db.getSpatialEntities(t).map(t=>this.getSceneNode(t,e,{color:[255,255,255,229.5]})).filter(t=>void 0!==t)}getSceneNode(t,e,n={}){var i,r,s,o;const a=null===(r=null===(i=null==t?void 0:t.object)||void 0===i?void 0:i.file_format)||void 0===r?void 0:r.startsWith("model/gltf");let l=this.db.graph.getTransformationMatrix(a&&t.object?t.object["@id"]:t["@id"],e["@id"]);if(l){if(a)l=new bT(bT.IDENTITY).rotateX(NS(90)).multiplyLeft(l);else{let e;switch(t.dimension_units){case"centimeter":e=.01;break;case"millimeter":e=.001;break;case"meter":default:e=1}const n=[t.x_dimension,t.y_dimension,t.z_dimension].map(t=>t*e/2);l.scale(n)}return Object.assign({"@id":t["@id"],"@type":"SpatialSceneNode",entityId:t.entityId,ccf_annotations:t.ccf_annotations,representation_of:t.representation_of,reference_organ:t.reference_organ,scenegraph:a?null===(s=t.object)||void 0===s?void 0:s.file:void 0,scenegraphNode:a?null===(o=t.object)||void 0===o?void 0:o.file_subpath:void 0,transformMatrix:l,tooltip:t.label},n)}}getScene(t){return[...this.getReferenceSceneNodes(t),...this.getEntitySceneNodes(t)]}}const WG="https://entity.api.hubmapconsortium.org/entities/",qG=new Set(["VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0009-LK-102-7-AF_preIMS_registered_thumbnail.jpg","VAN0009-LK-102-7-IMS_NegMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-IMS_PosMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-PAS_registered_thumbnail.jpg","VAN0010-LK-155-40-AF_preIMS_registered_thumbnail.jpg","VAN0010-LK-155-40-IMS_NegMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-IMS_PosMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-PAS_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg","VAN0013-LK-202-96-AF_preIMS_registered_thumbnail.jpg","VAN0013-LK-202-96-IMS_NegMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-IMS_PosMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-PAS_registered_thumbnail.jpg","VAN0013-LK-202-97-AF_preMxIF_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc1_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc2_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc3_registered_thumbnail.jpg","VAN0014-LK-203-108-AF_preIMS_registered_thumbnail.jpg","VAN0014-LK-203-108-IMS_NegMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-IMS_PosMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-PAS_registered_thumbnail.jpg","VAN0016-LK-202-89-AF_preIMS_registered_thumbnail.jpg","VAN0016-LK-202-89-IMS_NegMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-IMS_PosMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-PAS_registered_thumbnail.jpg","VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg"]),XG={"HBM558.SRZG.629":"HBM558.SRZG.629_UFL0002-SP-3-4-1.jpg","HBM562.NTMH.548":"HBM562.NTMH.548_UFL0006-SP-1-2-1.jpg","HBM685.KHRQ.684":"HBM685.KHRQ.684_UFL0008-LY07-1-1.jpg","HBM278.SFQW.627":"HBM278.SFQW.627_UFL0008-LY09-1-1.jpg","HBM427.SMGB.866":"HBM427.SMGB.866_UFL0004-SP-1-4-1.jpg","HBM432.LLCF.677":"HBM432.LLCF.677_UFL0001-SP-2-5-1.jpg","HBM586.ZSVS.996":"HBM586.ZSVS.996_UFL0008-SP-1-1-1.jpg","HBM285.XMBT.542":"HBM285.XMBT.542_UFL0006-TH-1-3-1.jpg","HBM289.BWJW.663":"HBM289.BWJW.663_UFL0006-TH-1-2-1.jpg","HBM255.SRPR.985":"HBM255.SRPR.985_UFL0005-TH-2-2-1.jpg","HBM799.WXHD.535":"HBM799.WXHD.535_UFL0009-LY02-1-1.jpg","HBM294.RZFN.624":"HBM294.RZFN.624_UFL0005-TH-1-1-1.jpg","HBM383.TRQG.424":"HBM383.TRQG.424_UFL0006-SP-1-3-1.jpg","HBM647.MFQB.496":"HBM647.MFQB.496_UFL0001-SP-1-2-1.jpg","HBM237.GGPR.739":"HBM237.GGPR.739_UFL0006-LY01-1-1.jpg","HBM288.TPBD.654":"HBM288.TPBD.654_UFL0003-SP-2-2-1.jpg","HBM974.NDXT.675":"HBM974.NDXT.675_UFL0008-TH-2-2-1.jpg","HBM589.SLVV.423":"HBM589.SLVV.423_UFL0008-LY10-1-1.jpg","HBM794.RLFN.358":"HBM794.RLFN.358_UFL0006-LY03-1-1.jpg","HBM372.BQSR.778":"HBM372.BQSR.778_UFL0007-SP-1-1-1.jpg","HBM499.TKDW.458":"HBM499.TKDW.458_UFL0009-LY03-1-1.jpg","HBM342.PRQB.739":"HBM342.PRQB.739_UFL0003-LY06-1-1.jpg","HBM633.CLVN.674":"HBM633.CLVN.674_UFL0003-SP-3-6-1.jpg","HBM343.JQKM.578":"HBM343.JQKM.578_UFL0009-LY01-1-1.jpg","HBM987.XGTH.368":"HBM987.XGTH.368_UFL0002-SP-2-4-1.jpg","HBM964.CWCP.788":"HBM964.CWCP.788_UFL0006-LY02-2-1.jpg","HBM244.TJLK.223":"HBM244.TJLK.223_UFL0003-SP-1-4-1.jpg","HBM646.FSBQ.966":"HBM646.FSBQ.966_UFL0007-SP-2-2-1.jpg","HBM572.GXSB.234":"HBM572.GXSB.234_UFL0003-SP-3-2-1.jpg","HBM772.TKGJ.794":"HBM772.TKGJ.794_UFL0008-SP-2-1-1.jpg","HBM239.CBWR.263":"HBM239.CBWR.263_UFL0008-SP-1-2-1.jpg","HBM992.NRTT.383":"HBM992.NRTT.383_UFL0006-SP-1-1-1.jpg","HBM283.DQXD.546":"HBM283.DQXD.546_UFL0003-SP-1-2-1.jpg","HBM795.JHND.856":"HBM795.JHND.856_UFL0007-SP-1-2-1.jpg","HBM267.BZKT.867":"HBM267.BZKT.867_UFL0003-SP-2-6-1.jpg","HBM838.DLMJ.782":"HBM838.DLMJ.782_UFL0008-TH-1-1-1.jpg","HBM337.FSXL.564":"HBM337.FSXL.564_UFL0001-SP-3-8-2.jpg","HBM355.JDLK.244":"HBM355.JDLK.244_UFL0004-SP-2-4-1.jpg","HBM599.PSZG.737":"HBM599.PSZG.737_UFL0006-LY02-1-1.jpg"},YG={"03b3d854-ed44-11e8-8bce-0e368f3075e8":"TMC-UCSD","07a29e4c-ed43-11e8-b56a-0e8017bdda58":"TMC-Florida","308f5ffc-ed43-11e8-b56a-0e8017bdda58":"TMC-CalTech","5bd084c8-edc2-11e8-802f-0e368f3075e8":"HBM-TestingGroup","73bb26e4-ed43-11e8-8f19-0a7c1eab007a":"TMC-Vanderbilt","def5fd76-ed43-11e8-b56a-0e8017bdda58":"TMC-Stanford","5c106f29-ea2d-11e9-85e8-0efb3ba9a670":"RTI-General Electric"},KG=function(){const t={};return Object.entries(MG).forEach(([e,n])=>t[e]=n.id),t}(),QG={AO:[KG.body,KG.heart,KG.aorta],BL:[KG.body,KG.urinary_bladder],BD:[KG.body,KG.pelvis,KG.blood],BM:[KG.body,KG.pelvis,KG.bone_marrow],BR:[KG.body,KG.brain],LB:[KG.body,KG.respiratory_system,KG.lungs,KG.left_bronchus],RB:[KG.body,KG.respiratory_system,KG.lungs,KG.right_bronchus],LE:[KG.body,KG.eye,KG.eye_left],RE:[KG.body,KG.eye,KG.eye_right],LF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_left],RF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_right],HT:[KG.body,KG.heart],LK:[KG.body,KG.kidney,KG.kidney_left],RK:[KG.body,KG.kidney,KG.kidney_right],LI:[KG.body,KG.large_intestine,KG.colon],LV:[KG.body,KG.liver],LL:[KG.body,KG.respiratory_system,KG.lungs,KG.left_lung],LN:[KG.body,KG.knee,KG.knee_left],RL:[KG.body,KG.respiratory_system,KG.lungs,KG.right_lung],RN:[KG.body,KG.knee,KG.knee_right],LY:[KG.body,KG.lymph_node,KG.mesenteric_lymph_node],LO:[KG.body,KG.ovary,KG.ovary_left],RO:[KG.body,KG.ovary,KG.ovary_right],PA:[KG.body,KG.pancreas],PL:[KG.body],SI:[KG.body,KG.small_intestine],SK:[KG.body,KG.skin],SP:[KG.body,KG.spleen],ST:[KG.body],TH:[KG.body,KG.thymus],TR:[KG.body,KG.respiratory_system,KG.lungs,KG.trachea],UR:[KG.body,KG.ureter],UT:[KG.body,KG.uterus],OT:[KG.body]},ZG={"@base":"http://purl.org/ccf/latest/ccf-entity.owl#","@vocab":"http://purl.org/ccf/latest/ccf-entity.owl#",ccf:"http://purl.org/ccf/latest/ccf.owl#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",label:"rdfs:label",description:"rdfs:comment",link:{"@id":"rdfs:seeAlso","@type":"@id"},samples:{"@reverse":"has_donor"},sections:{"@id":"has_tissue_section","@type":"@id"},datasets:{"@id":"has_dataset","@type":"@id"},rui_location:{"@id":"has_spatial_entity","@type":"@id"},ontologyTerms:{"@id":"has_ontology_term","@type":"@id"},cellTypeTerms:{"@id":"has_cell_type_term","@type":"@id"},thumbnail:{"@id":"has_thumbnail"}};class JG{constructor(t,e="",n="",i){var r,s;if(this.data=t,this.bad=!1,this["@type"]="Sample",this.sample_type="Tissue Block","Sample"!==this.data.entity_type)return void(this.bad=!0);const o=this.data.descendants||[],a=(this.data.ancestors||[]).find(t=>"Donor"===t.entity_type);this.donor=this.getDonor(a,n);const l=this.getRuiLocation(t,this.donor);l?this.rui_location=l:this.bad=!0,YG[t.group_uuid]||(YG[t.group_uuid]=t.group_name);const c=new Date(t.last_modified_timestamp).toLocaleDateString(),u=YG[t.group_uuid]||t.group_name,h=t.created_by_user_displayname;this["@id"]=WG+t.uuid,this.label=`Registered ${c}, ${h}, ${u}`,this.link=`${n}browse/sample/${t.uuid}`;const d={},p=[];this.sections=p;const f=[];this.datasets=f;for(const v of o.filter(t=>"Sample"===t.entity_type)){const e=this.getSection(v,t,n);d[v.submission_id]=e,p.push(e),e.section_number=null!==(r=e.section_number)&&void 0!==r?r:p.length}for(const v of o)if("Dataset"===v.entity_type){const t=this.getDataset(v,e,n,i),r=(0,_G.get)(v,["ingest_metadata","metadata","tissue_id"]);d[r]?null===(s=d[r].datasets)||void 0===s||s.push(t):f.push(t)}const g=null!=l?l:{},m=`${g.x_dimension} x ${g.y_dimension} x ${g.z_dimension} ${g.dimension_units}`;this.section_count=g.slice_count||p.length;const b=parseFloat((g.slice_thickness||(g.z_dimension||0)/Math.max(this.section_count,1)).toFixed(1));this.section_size=b;const y=g.dimension_units||"millimeter";this.section_units=y,this.description=`${m}, ${b} ${y}, ${t.specimen_type}, ${this.section_count} Sections`,p.forEach((t,e)=>{t.description=`${g.x_dimension} x ${g.y_dimension} x ${b} ${y}, ${b} ${y}, ${t.description}`,t.section_number=e+1})}getSection(t,e,n){const i=new Date(t.last_modified_timestamp).toLocaleDateString();return{"@id":WG+t.uuid,"@type":"Sample",label:`Registered ${i}, ${t.created_by_user_displayname}, ${YG[t.group_uuid]||t.group_name}`,description:`${e.specimen_type}`,link:`${n}browse/sample/${t.uuid}`,sample_type:"Tissue Section",section_number:1,samples:[],datasets:[]}}getDataset(t,e="",n="",i){var r;const s=new Date(t.last_modified_timestamp).toLocaleDateString(),o=YG[t.group_uuid]||t.group_name,a=t.created_by_user_displayname,l=[...t.data_types,(0,_G.get)(t,["ingest_metadata","metadata","assay_type"],"")],c=l.join("|").toLowerCase();let u,h="assets/icons/ico-unknown.svg";return-1!==c.indexOf("10x")?(u="10x",h="assets/icons/ico-bulk-10x.svg"):-1!==c.indexOf("af")?(u="AF",h="assets/icons/ico-spatial-af.svg"):-1!==c.indexOf("codex")?(u="CODEX",h="assets/icons/ico-spatial-codex.svg"):-1!==c.indexOf("imc")?(u="IMC",h="assets/icons/ico-spatial-imc.svg"):-1!==c.indexOf("lc")&&-1===c.indexOf("af")?(u="LC",h="assets/icons/ico-bulk-lc.svg"):u=-1!==c.indexOf("maldi")?"MALDI":-1!==c.indexOf("pas")?"PAS":"OTHER",h=null!==(r=this.getDatasetThumbnail(t,e,i))&&void 0!==r?r:h,{"@id":WG+t.uuid,"@type":"Dataset",label:`Registered ${s}, ${a}, ${o}`,description:`Data/Assay Types: ${l.join(", ")}`,link:`${n}browse/dataset/${t.uuid}`,technology:u,thumbnail:h}}getDatasetThumbnail(t,e,n){if(t.thumbnail_file){const i=t.thumbnail_file;return`${e}/${i.file_uuid}/${i.filename}`+(n?`?token=${n}`:"")}if("73bb26e4-ed43-11e8-8f19-0a7c1eab007a"===t.group_uuid){const i=(0,_G.get)(t,"metadata.files",[]).filter(t=>/\.(ome\.tif|ome\.tiff)$/.test(t.rel_path)).filter(t=>!/(multilayer\.ome\.tif|_ac\.ome\.tif)/.test(t.rel_path)).filter(t=>qG.has(t.rel_path.split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg"))).map(i=>`${e}/${t.uuid}/${i.rel_path}`+(n?`?token=${n}`:""));if(i.length>0){const t=i[0].split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg");if(qG.has(t))return`assets/thumbnails/TMC-Vanderbilt/DR1/${t}`}}else if("07a29e4c-ed43-11e8-b56a-0e8017bdda58"===t.group_uuid){const e=XG[t.hubmap_id];if(e)return`assets/thumbnails/TMC-Florida/${e}`}}getDonor(t,e){const n=(t.description||"").toLowerCase();let i;n.includes("female")?i="Female":n.includes("male")&&(i="Male");const r=n.match(/age ([0-9]+)/);let s,o;r&&(s=(0,_G.toNumber)(r[1]));for(const u of(0,_G.get)(t,"metadata.organ_donor_data",[]))"Feminine gender"===u.preferred_term||"Female"===u.preferred_term?i="Female":"Masculine gender"===u.preferred_term||"Male"===u.preferred_term?i="Male":"Current chronological age"===u.preferred_term||"Age"===u.preferred_term?s=(0,_G.toNumber)(u.data_value):"Body mass index"===u.preferred_term&&(o=(0,_G.toNumber)(u.data_value));let a="";i&&s&&(a+=`${i}, Age ${s}`,o&&(a+=`, BMI ${o.toFixed(1)}`));const l=new Date(t.last_modified_timestamp).toLocaleDateString(),c=YG[t.group_uuid]||t.group_name;return{"@id":WG+t.uuid,"@type":"Donor",label:a,description:`Entered ${l}, ${t.created_by_user_displayname}, ${c}`,link:`${e}browse/donor/${t.uuid}`,age:s,sex:i,bmi:o,consortium_name:"HuBMAP",provider_name:c,provider_uuid:t.group_uuid,samples:[]}}getRuiLocation(t,e){var n;const i=(t.ancestors||[]).find(t=>"Sample"===t.entity_type&&"organ"===t.specimen_type),r=QG[null==i?void 0:i.organ]||[KG.body];let s,o=t.rui_location;if(o&&("string"==typeof o&&(o=JSON.parse(o)),o.alignment_id?console.log("Detected a deprecated rui_location",t.uuid):o["@id"]&&(s=o)),s){s.ccf_annotations=r.concat(s.ccf_annotations||[]);const t=null!==(n=(0,_G.get)(s,["placement","target"]))&&void 0!==n?n:"";t.startsWith("http://purl.org/ccf/latest/ccf.owl#VHSpleenCC")&&(0,_G.set)(s,["placement","target"],t.replace("#VHSpleenCC","Male"===e.sex?"#VHMSpleenCC":"#VHFSpleenCC")),("http://purl.org/ccf/latest/ccf.owl#VHLeftKidney"===t||"http://purl.org/ccf/latest/ccf.owl#VHRightKidney"===t)&&(0,_G.set)(s,["placement","target"],"Male"===e.sex?t.replace("#VH","#VHM")+"_Patch":t.replace("#VH","#VHF")+"_Patch")}return s}getTissueBlock(){return(0,_G.omit)(Object.assign({},this),["data","bad","donor"])}toJsonLd(){return Object.assign(Object.assign({},this.donor),{samples:[this.getTissueBlock()]})}}const tW=["uuid","entity_type","group_uuid","group_name","last_modified_timestamp","created_by_user_displayname","ancestors","descendants","rui_location","specimen_type"],eW={exists:{field:"rui_location"}};function nW(t,e,n){return JSON.stringify({version:!0,from:t,size:e,stored_fields:["*"],script_fields:{},docvalue_fields:[],query:null!=n?n:eW,_source:{includes:tW}})}function iW(t,e){return lw(this,void 0,void 0,function*(){try{const n=yield fetch(t,e);return n.ok?yield n.json():void 0}catch(n){return}})}function rW(t,e,n,i,r="",s=""){return lw(this,void 0,void 0,function*(){let o;if("static"===e?o=yield iW(t):"search-api"===e&&(o=yield function(t,e,n){return lw(this,void 0,void 0,function*(){const i=function(t){const e=new Headers;return e.append("Content-type","application/json"),t&&e.append("Authorization",`Bearer ${t}`),e}(e),r=nW(0,50,n),s=yield iW(t,{method:"POST",headers:i,body:r});if(!s)return;const o=s.hits.total.value;if(o<=50)return s;const a=[];for(let e=50;e!t))return;const c=l.map(t=>t.hits.hits);return Object.assign(Object.assign({},s),{hits:Object.assign(Object.assign({},s.hits),{hits:s.hits.hits.concat(...c)})})})}(t,i,n)),o)return function(t,e="",n="",i,r=!1){const s={},o=(0,_G.get)(t,"hits.hits",[]).map(t=>(0,_G.get)(t,"_source",{})).map(t=>new JG(t,e,n,i).toJsonLd());for(const l of o){const t=l["@id"];s[t]?s[t].samples.push(l.samples[0]):s[t]=l}const a=Object.values(s);return r&&(function(t){let e=[],n=0;for(const i of t.filter(t=>t.samples.length>1)){const t=i.samples;for(let i=0;it["@id"]===r)&&(t[i].deleteMe=!0,n++)}i.samples=t.filter(t=>!0!==t.deleteMe)}n>0&&console.log(`\u26a0 ${n} sections identified as blocks`)}(a),console.log(a.map(t=>Object.assign({"@context":ZG},t)))),{"@context":ZG,"@graph":a}}(o,r,s,i);console.warn(`Unable to load ${t} as HuBMAP Data`)})}function sW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.donor,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function oW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.spatialEntity,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function aW(t,e){return n=>t.has(n.id)?e.add(n.id):void 0}function lW(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.namedNode(r);t.forSubjects(aW(e,i),TG.spatialEntity.ccf_annotations,n,null)}return i}function cW(t,e){const n=function(t,e){const n=new Map;return e.some(e=>(t.has(e.subject.id)&&(n.has(e.object.id)?n.get(e.object.id).add(e.subject.id):n.set(e.object.id,new Set([e.subject.id]))),!1),null,CG.spatialEntity,null,null),n}(t,e),i=new Map;return e.some(t=>{if(n.has(t.subject.id)){const e=n.get(t.subject.id);if(i.has(t.object.id)){const n=i.get(t.object.id);e.forEach(t=>n.add(t))}else i.set(t.object.id,new Set(e))}return!1},null,TG.spatialEntity.ccf_annotations,null,null),i}function uW(t,e,n){const i=mG.DataFactory.namedNode(e),r={"@id":e,"@type":"OntologyTreeNode",id:e,parent:"",children:[],synonymLabels:[],label:""},s={[TG.ontologyNode.label.id]:"label",[n]:"parent",[TG.ontologyNode.synonymLabels.id]:"synonymLabels"};return t.some(t=>{const e=s[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;"synonymLabels"===e?r.synonymLabels.push(n):(0,_G.set)(r,e,n)}return!1},i,null,null,null),r.children=t.getSubjects(n,i,null).map(t=>t.id),r}const hW=(0,_G.memoize)(function(t,e,n,i){const r={root:e,nodes:{}},s=new Set;t.some(t=>(s.add(t.subject.id),s.add(t.predicate.id),!1),null,i,null,null);for(const o of s)r.nodes[o]=uW(t,o,i);if(!r.nodes[e]){const s=t.getSubjects(i,e,null).map(t=>t.id).sort((t,e)=>r.nodes[t].label.localeCompare(r.nodes[e].label));r.nodes[e]={"@id":e,"@type":"OntologyTreeNode",id:e,label:n,children:s,synonymLabels:[]}}return r},(t,e,n)=>e+n),dW={[CG.label.id]:"label",[CG.description.id]:"description",[CG.link.id]:"link"},pW=Object.assign(Object.assign({},dW),{[CG.providerName.id]:"providerName"}),fW=Object.assign(Object.assign({},dW),{[CG.technology.id]:"technology",[CG.thumbnail.id]:"thumbnail"}),gW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionNumber.id]:"sectionNumber",[CG.datasets.id]:"datasets"}),mW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionCount.id]:"sectionCount",[CG.sectionSize.id]:"sectionSize",[CG.sectionUnits.id]:"sectionUnits",[CG.donor.id]:"donor",[CG.spatialEntity.id]:"spatialEntityId",[CG.sections.id]:"sections",[CG.datasets.id]:"datasets"}),bW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Donor"};return t.some(t=>{const e=pW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e);function yW(t,e){const n={"@id":e,"@type":"Dataset"};return t.some(t=>{const e=fW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}const vW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Sample",sections:[],datasets:[]};return t.some(e=>{const i=mW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("sections"===i){const e=function(t,e){const n={"@id":e,"@type":"Sample",datasets:[]};return t.some(e=>{const i=gW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("datasets"===i){const e=yW(t,r);n[i].push(e)}else(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}(t,r);n[i].push(e)}else if("datasets"===i){const e=yW(t,r);n[i].push(e)}else"donor"===i?n[i]=bW(t,r):(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e),_W={ccfOwlUrl:"https://purl.org/ccf/latest/ccf.owl",ccfContextUrl:"https://purl.org/ccf/latest/ccf-context.jsonld",dataSources:[],hubmapDataService:"static",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"",hubmapAssetsUrl:"https://assets.hubmapconsortium.org"};class wW{constructor(t=_W){this.options=t,this.store=new mG.Store(void 0,{factory:mG.DataFactory}),this.graph=new $G(this),this.scene=new GG(this)}connect(t,e=!1){return lw(this,void 0,void 0,function*(){return t&&(this.options=t),this.initializing||(this.initializing=e?this.cachedConnect():this.doConnect()),yield this.initializing,this.store.size>0})}cachedConnect(){return lw(this,void 0,void 0,function*(){const t=(new Date).getTime(),e="ccf-database.last_modified",n="ccf-database",i=yield gG(e).catch(()=>{});let r;i&&t-new Date(+i).getTime()>36e5?yield function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.delete(t)),dG(e.transaction)))}([n,e]).catch(()=>{}):r=yield gG(n).catch(()=>{}),r?yield this.deserialize(r):(yield this.doConnect(),function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.put(t[1],t[0])),dG(e.transaction)))}([[n,this.serialize()],[e,""+t]]).catch(()=>{}))})}doConnect(){var t,e;return lw(this,void 0,void 0,function*(){const n=[],i=null!==(e=null===(t=this.options.dataSources)||void 0===t?void 0:t.concat())&&void 0!==e?e:[],r=this.options.ccfOwlUrl;if(r.startsWith("{"))this.store=(0,mG.deserializeN3Store)(r,mG.DataFactory);else if(r.endsWith(".n3store.json")){const t=yield fetch(r).then(t=>t.text()).catch(()=>console.log("Couldn't locate serialized store."));t&&(this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory))}else(null==r?void 0:r.length)>0&&i.push(r);this.options.hubmapDataUrl&&(this.options.hubmapDataUrl.endsWith("jsonld")?i.push(this.options.hubmapDataUrl):n.push(rW(this.options.hubmapDataUrl,this.options.hubmapDataService,this.options.hubmapQuery,this.options.hubmapToken,this.options.hubmapAssetsUrl,this.options.hubmapPortalUrl).then(t=>{if(t)return this.addDataSources([t])}))),n.push(this.addDataSources(i)),yield Promise.all(n),yield this.synchronize()})}addDataSources(t,e){return lw(this,void 0,void 0,function*(){const n=null!=e?e:this.store;return yield Promise.all(t.map(t=>lw(this,void 0,void 0,function*(){"string"==typeof t?t.endsWith("jsonld")?yield(0,mG.addJsonLdToStore)(t,n):t.endsWith("n3")?yield(0,mG.addN3ToStore)(t,n):t.endsWith("rdf")||t.endsWith("owl")||t.endsWith("xml")?yield(0,mG.addRdfXmlToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n)}))),this})}synchronize(){return lw(this,void 0,void 0,function*(){return yield new Promise(t=>{setTimeout(t,500)}),this.graph.createGraph(),this})}serialize(){return(0,mG.serializeN3Store)(this.store)}deserialize(t){return lw(this,void 0,void 0,function*(){this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory),this.graph=new $G(this),this.scene=new GG(this),yield new Promise(t=>{setTimeout(t,10)})})}getIds(t={}){return function(t,e){var n,i,r,s,o,a;let l=function(t){const e=new Set;return t.forSubjects(t=>e.add(t.id),CG.spatialEntity,null,null),e}(t);if(l.size>0&&(l=function(t,e,n=!0){const i=new Set;if(t.forSubjects(aW(e,i),CG.spatialEntity,null,null),!n){const t=new Set;return e.forEach(e=>i.has(e)?void 0:t.add(e)),t}return i}(t,l)),l.size>0&&("Male"===e.sex||"Female"===e.sex)){const n=e.sex;l=sW(t,l,e=>function(t,e,n){const i=new Set;return t.forSubjects(aW(e,i),CG.sex,CG[n],null),i}(t,e,n))}if(l.size>0&&(null===(n=e.tmc)||void 0===n?void 0:n.length)>0&&(l=sW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.providerName,n,null)}return i}(t,n,e.tmc))),l.size>0&&(null===(i=e.technologies)||void 0===i?void 0:i.length)>0&&(l=function(t,e,n){var i;const r=new Map,s=new Set,o=new Set;t.some(t=>(e.has(t.subject.id)&&o.add(t.object.id),!1),null,CG.sections,null,null),t.some(t=>{var n;return(e.has(t.subject.id)||o.has(t.subject.id))&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.datasets,null,null);const a=n(s),l=new Set;for(const c of a)for(const t of null!==(i=r.get(c))&&void 0!==i?i:[])l.add(t);return l}(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.technology,n,null)}return i}(t,n,e.technologies))),l.size>0&&(null===(r=e.ontologyTerms)||void 0===r?void 0:r.length)>0&&(l=oW(t,l,n=>lW(t,n,e.ontologyTerms))),l.size>0&&(null===(s=e.cellTypeTerms)||void 0===s?void 0:s.length)>0&&(l=oW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n)t.forObjects(t=>{i.add(t.id)},r,TG.asctb.located_in,null),r===MG.cell.id&&i.add(MG.body.id);return lW(t,e,[...i])}(t,n,e.cellTypeTerms))),l.size>0&&2===(null===(o=e.ageRange)||void 0===o?void 0:o.length)&&(0,_G.isFinite)(e.ageRange[0])&&(0,_G.isFinite)(e.ageRange[1])){const n=Math.max(...e.ageRange),i=Math.min(...e.ageRange);1===i&&110===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.age,null,null),r}(t,e,i,n)))}if(l.size>0&&2===(null===(a=e.bmiRange)||void 0===a?void 0:a.length)&&(0,_G.isFinite)(e.bmiRange[0])&&(0,_G.isFinite)(e.bmiRange[1])){const n=Math.max(...e.bmiRange),i=Math.min(...e.bmiRange);13===i&&83===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.bmi,null,null),r}(t,e,i,n)))}return l}(this.store,t)}get(t){return this.store.getQuads(mG.DataFactory.namedNode(t),null,null,null)}search(t={}){return[...this.getIds(t)].map(t=>this.get(t))}getSpatialEntities(t){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>UG(this.store,t))}getDatasetTechnologyNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.technology,null,null),Array.from(e).sort()}(this.store)})}getProviderNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.providerName,null,null),Array.from(e).sort()}(this.store)})}getTissueBlockResults(t){return lw(this,void 0,void 0,function*(){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>vW(this.store,t))})}getAggregateResults(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n=new Set;e.some(e=>(t.has(e.subject.id)&&n.add(e.object.id),!1),null,CG.donor,null,null);const i=new Set;e.some(t=>(n.has(t.subject.id)&&i.add(t.object.id),!1),null,CG.providerUUID,null,null);const r=new Set;e.forSubjects(e=>{t.has(e.id)&&r.add(e.id)},CG.spatialEntity,null,null);const s=new Set;e.some(t=>(r.has(t.subject.id)&&s.add(t.object.id),!1),null,CG.sections,null,null);const o=new Set;return e.some(t=>{const e=t.subject;return(r.has(e.id)||s.has(e.id))&&o.add(t.object.id),!1},null,CG.datasets,null,null),Object.entries({"Tissue Data Providers":i.size,Donors:n.size,"Tissue Blocks":r.size,"Tissue Sections":s.size,"Tissue Datasets":o.size}).map(([t,e])=>({label:t,count:e}))}(this.getIds(t),this.store)})}getOntologyTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n={};return cW(t,e).forEach((t,e)=>{n[e]=t.size}),n}(this.getIds(t),this.store)})}getCellTypeTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){var n,i;const r=cW(t,e),s=new Map;e.some(t=>{const e=t.object.id;if(r.has(e)){const n=t.subject.id,i=r.get(e);if(s.has(n)){const t=s.get(n);i.forEach(e=>t.add(e))}else s.set(n,new Set(i))}return!1},null,TG.asctb.located_in,null,null);const o={};return s.forEach((t,e)=>{o[e]=t.size}),o[MG.cell.id]=null!==(i=null===(n=r.get(MG.body.id))||void 0===n?void 0:n.size)&&void 0!==i?i:0,o}(this.getIds(t),this.store)})}getOntologyTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){const e=hW(t,MG.body.id,"body",TG.asctb.part_of.id);return e.nodes[MG.body.id].children=["http://purl.obolibrary.org/obo/UBERON_0000955","http://purl.obolibrary.org/obo/UBERON_0000029","http://purl.obolibrary.org/obo/UBERON_0000970","http://purl.obolibrary.org/obo/UBERON_0003889","http://purl.obolibrary.org/obo/UBERON_0000948","http://purl.obolibrary.org/obo/UBERON_0002113","http://purl.obolibrary.org/obo/UBERON_0001465","http://purl.obolibrary.org/obo/UBERON_0002107","http://purl.obolibrary.org/obo/UBERON_0002048","http://purl.obolibrary.org/obo/UBERON_0000992","http://purl.obolibrary.org/obo/UBERON_0001264","http://purl.obolibrary.org/obo/UBERON_0001270","http://purl.obolibrary.org/obo/UBERON_0002367","http://purl.obolibrary.org/obo/UBERON_0002097","http://purl.obolibrary.org/obo/UBERON_0002108","http://purl.obolibrary.org/obo/UBERON_0000059","http://purl.obolibrary.org/obo/UBERON_0002106","http://purl.obolibrary.org/obo/UBERON_0002370","http://purl.obolibrary.org/obo/UBERON_0000056","http://purl.obolibrary.org/obo/UBERON_0001255","http://purl.obolibrary.org/obo/UBERON_0000995","http://purl.obolibrary.org/obo/UBERON_0004537"].filter(t=>t in e.nodes),e}(this.store)})}getCellTypeTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){return hW(t,MG.cell.id,"cell",TG.asctb.ct_is_a.id)}(this.store)})}getReferenceOrgans(){return lw(this,void 0,void 0,function*(){return this.scene.getReferenceOrgans()})}getScene(t){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getScene(t)})}getReferenceOrganScene(t,e){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getReferenceOrganScene(t,e)})}}const xW=Symbol("Comlink.proxy"),SW=Symbol("Comlink.endpoint"),EW=Symbol("Comlink.releaseProxy"),CW=Symbol("Comlink.thrown"),OW=t=>"object"==typeof t&&null!==t||"function"==typeof t,TW=new Map([["proxy",{canHandle:t=>OW(t)&&t[xW],serialize(t){const{port1:e,port2:n}=new MessageChannel;return kW(t,e),[n,[n]]},deserialize:t=>(t.start(),PW(t))}],["throw",{canHandle:t=>OW(t)&&CW in t,serialize({value:t}){let e;return e=t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}}]]);function kW(t,e=self){e.addEventListener("message",function n(i){if(!i||!i.data)return;const{id:r,type:s,path:o}=Object.assign({path:[]},i.data),a=(i.data.argumentList||[]).map(jW);let l;try{const e=o.slice(0,-1).reduce((t,e)=>t[e],t),n=o.reduce((t,e)=>t[e],t);switch(s){case"GET":l=n;break;case"SET":e[o.slice(-1)[0]]=jW(i.data.value),l=!0;break;case"APPLY":l=n.apply(e,a);break;case"CONSTRUCT":l=function(t){return Object.assign(t,{[xW]:!0})}(new n(...a));break;case"ENDPOINT":{const{port1:e,port2:n}=new MessageChannel;kW(t,n),l=function(t,e){return NW.set(t,e),t}(e,[e])}break;case"RELEASE":l=void 0;break;default:return}}catch(c){l={value:c,[CW]:0}}Promise.resolve(l).catch(t=>({value:t,[CW]:0})).then(t=>{const[i,o]=LW(t);e.postMessage(Object.assign(Object.assign({},i),{id:r}),o),"RELEASE"===s&&(e.removeEventListener("message",n),AW(e))})}),e.start&&e.start()}function AW(t){(function(t){return"MessagePort"===t.constructor.name})(t)&&t.close()}function PW(t,e){return IW(t,[],e)}function MW(t){if(t)throw new Error("Proxy has been released and is not useable")}function IW(t,e=[],n=function(){}){let i=!1;const r=new Proxy(n,{get(n,s){if(MW(i),s===EW)return()=>FW(t,{type:"RELEASE",path:e.map(t=>t.toString())}).then(()=>{AW(t),i=!0});if("then"===s){if(0===e.length)return{then:()=>r};const n=FW(t,{type:"GET",path:e.map(t=>t.toString())}).then(jW);return n.then.bind(n)}return IW(t,[...e,s])},set(n,r,s){MW(i);const[o,a]=LW(s);return FW(t,{type:"SET",path:[...e,r].map(t=>t.toString()),value:o},a).then(jW)},apply(n,r,s){MW(i);const o=e[e.length-1];if(o===SW)return FW(t,{type:"ENDPOINT"}).then(jW);if("bind"===o)return IW(t,e.slice(0,-1));const[a,l]=RW(s);return FW(t,{type:"APPLY",path:e.map(t=>t.toString()),argumentList:a},l).then(jW)},construct(n,r){MW(i);const[s,o]=RW(r);return FW(t,{type:"CONSTRUCT",path:e.map(t=>t.toString()),argumentList:s},o).then(jW)}});return r}function DW(t){return Array.prototype.concat.apply([],t)}function RW(t){const e=t.map(LW);return[e.map(t=>t[0]),DW(e.map(t=>t[1]))]}const NW=new WeakMap;function LW(t){for(const[e,n]of TW)if(n.canHandle(t)){const[i,r]=n.serialize(t);return[{type:"HANDLER",name:e,value:i},r]}return[{type:"RAW",value:t},NW.get(t)||[]]}function jW(t){switch(t.type){case"HANDLER":return TW.get(t.name).deserialize(t.value);case"RAW":return t.value}}function FW(t,e,n){return new Promise(i=>{const r=new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-");t.addEventListener("message",function e(n){!n.data||!n.data.id||n.data.id!==r||(t.removeEventListener("message",e),i(n.data))}),t.start&&t.start(),t.postMessage(Object.assign({id:r},e),n)})}const BW=["bodyCanvas"];let VW=(()=>{class t{constructor(){this.clsName="ccf-body-ui",this.rotationChange=new Rc,this.nodeDrag=new Rc,this.nodeClick=new Rc,this.nodeHoverStart=new Rc,this.nodeHoverStop=new Rc,this.initialized=new Rc,this._interactive=!0,this._rotation=0,this._rotationX=0,this._zoom=9.5,this._target=[0,0,0],this._scene=[],this.subscriptions=[]}get scene(){return this._scene}set scene(t){var e;this._scene=t,null===(e=this.bodyUI)||void 0===e||e.setScene(t)}get rotation(){return this._rotation}set rotation(t){var e;this._rotation=t,null===(e=this.bodyUI)||void 0===e||e.setRotation(t)}get rotationX(){return this._rotationX}set rotationX(t){var e;this._rotationX=t,null===(e=this.bodyUI)||void 0===e||e.setRotationX(t)}get zoom(){return this._zoom}set zoom(t){var e;this._zoom=t,null===(e=this.bodyUI)||void 0===e||e.setZoom(t)}get target(){return this._target}set target(t){var e;this._target=t,null===(e=this.bodyUI)||void 0===e||e.setTarget(t)}get bounds(){return this._bounds}set bounds(t){this._bounds=t,this.zoomToBounds(t)}get camera(){return this._camera}set camera(t){this._camera=t}get interactive(){return this._interactive}set interactive(t){this._interactive=t,this.bodyUI&&this.recreateBodyUI()}ngAfterViewInit(){this.setupBodyUI()}zoomToBounds(t,e={x:48,y:48}){if(this.bodyCanvas){const{width:n,height:i}=this.bodyCanvas.nativeElement,r=window.devicePixelRatio,s=Math.min(Math.log2((n-e.x)/r/t.x),Math.log2((i-e.y)/r/t.y));this.zoom=s}}setupBodyUI(){var t;return lw(this,void 0,void 0,function*(){const e=this.bodyCanvas.nativeElement,n=new dB({id:"body-ui",canvas:e,zoom:this.zoom,target:[0,0,0],rotation:0,minRotationX:-75,maxRotationX:75,interactive:this.interactive,camera:this.camera});e.addEventListener("contextmenu",t=>t.preventDefault()),yield n.initialize(),this.bodyUI=n,window.bodyUI=n,(null===(t=this.scene)||void 0===t?void 0:t.length)>0&&this.bodyUI.setScene(this.scene),this.bounds&&this.zoomToBounds(this.bounds),this.subscriptions=[this.bodyUI.sceneRotation$.subscribe(t=>this.rotationChange.next(t)),this.bodyUI.nodeDrag$.subscribe(t=>this.nodeDrag.emit(t)),this.bodyUI.nodeClick$.subscribe(t=>this.nodeClick.emit(t)),this.bodyUI.nodeHoverStart$.subscribe(t=>this.nodeHoverStart.emit(t)),this.bodyUI.nodeHoverStop$.subscribe(t=>this.nodeHoverStop.emit(t))],this.initialized.emit()})}recreateBodyUI(){this.clearSubscriptions(),this.bodyUI.finalize(),this.setupBodyUI()}clearSubscriptions(){this.subscriptions.forEach(t=>t.unsubscribe()),this.subscriptions=[]}ngOnDestroy(){this.clearSubscriptions()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-body-ui"]],viewQuery:function(t,e){if(1&t&&qc(BW,5,kl),2&t){let t;Wc(t=Yc())&&(e.bodyCanvas=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{scene:"scene",rotation:"rotation",rotationX:"rotationX",zoom:"zoom",target:"target",bounds:"bounds",camera:"camera",interactive:"interactive"},outputs:{rotationChange:"rotationChange",nodeDrag:"nodeDrag",nodeClick:"nodeClick",nodeHoverStart:"nodeHoverStart",nodeHoverStop:"nodeHoverStop",initialized:"initialized"},decls:2,vars:0,consts:[[1,"body-ui"],["bodyCanvas",""]],template:function(t,e){1&t&&oa(0,"canvas",0,1)},styles:["[_nghost-%COMP%]{height:100%;display:block}[_nghost-%COMP%] .body-ui[_ngcontent-%COMP%]{position:relative!important;background-color:#000;border-radius:.5rem}"]}),t})(),zW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();new oi("Maximum number of autocomplete options displayed",{providedIn:"root",factory:()=>10});const UW=["carouselContainer"],HW=["itemlist"],$W=["itemcontainer"];function GW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",9),fa("touchstart",function(){return $e(t),va().scroll("left")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("left")})("mousedown",function(){return $e(t),va().scroll("left")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_left"),sa()}2&t&&ja("disabled",va().onLeft)}function WW(t,e){if(1&t&&(ra(0,"div",15),Za(1),sa()),2&t){const t=va().$implicit,e=va();ws(1),Ja(e.occurenceData[t.id]||0)}}function qW(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("click",function(){const e=$e(t).$implicit;return va().selectOrgan(e)}),oa(1,"mat-icon",11),ra(2,"div",12),ra(3,"div",13),Za(4),sa(),Jo(5,WW,2,1,"div",14),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ja("disabled",t.disabled)("selected",n.isSelected(t)),ws(1),Sa("svgIcon",t.src),ws(3),Ja(t.name),ws(1),na("ngIf",void 0!==t.numResults)}}function XW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",16),fa("touchstart",function(){return $e(t),va().scroll("right")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("right")})("mousedown",function(){return $e(t),va().scroll("right")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_right"),sa()}2&t&&ja("disabled",va().onRight)}const YW=[{src:"app:skin",organ:"Skin",name:"Skin",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002097"},{src:"app:brain",organ:"Brain",name:"Brain",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000955"},{disabled:!0,src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000029"},{src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002509"},{disabled:!0,src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000970"},{src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004548"},{src:"app:eye",organ:"Eye",name:"Eye, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_54449"},{disabled:!0,src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0003889"},{src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001303"},{src:"app:fallopian-tube-right",organ:"Fallopian Tube",name:"Fallopian Tube, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001302"},{src:"app:heart",organ:"Heart",name:"Heart",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000948"},{disabled:!0,src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002113"},{src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004538"},{src:"app:kidney-right",organ:"Kidney",name:"Kidney, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004539"},{disabled:!0,src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001465"},{src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24978"},{src:"app:knee",organ:"Knee",name:"Knee, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24977"},{src:"app:liver",organ:"Liver",name:"Liver",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002107"},{disabled:!0,src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002048"},{src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001004"},{disabled:!0,src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000992"},{src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7214"},{src:"app:ovary-right",organ:"Ovary",name:"Ovary, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7213"},{src:"app:pancreas",organ:"Pancreas",name:"Pancreas",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001264"},{src:"app:pelvis-f",organ:"Pelvis",name:"Pelvis",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001270"},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0002367",disabled:!0},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0000079"},{src:"app:small-intestine",organ:"Small Intestine",name:"Small Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002108"},{src:"app:large-intestine",organ:"Large Intestine",name:"Large Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000059"},{src:"app:spleen",organ:"Spleen",name:"Spleen",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002106"},{src:"app:thymus",organ:"Thymus",name:"Thymus",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002370"},{disabled:!0,src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000056"},{src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001223"},{src:"app:ureter-right",organ:"Ureter",name:"Ureter, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001222"},{src:"app:bladder",organ:"Urinary Bladder",name:"Urinary Bladder",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001255"},{src:"app:uterus",organ:"Uterus",name:"Uterus",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000995"},{src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004537"},{disabled:!0,src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002049"}].sort((t,e)=>t.name.localeCompare(e.name)),KW=YW.filter(t=>!0!==t.disabled);let QW=(()=>{class t{constructor(){this.clsName="ccf-organ-selector",this.multiselect=!1,this.displayErrors=!1,this.organList=KW,this.selectedOrgans=[],this.expanded=!1,this.organsChanged=new Rc,this.onLeft=!0,this.onRight=!1,this.step=72}set occurenceData(t){this._occurenceData=t}get occurenceData(){return this._occurenceData}ngAfterViewInit(){const{carouselContainer:t}=this;this.sensor=new HU.ResizeSensor(t.nativeElement,()=>{this.set()})}ngOnChanges(t){"organList"in t&&this.set()}ngOnDestroy(){this.sensor.detach()}get error(){return!(!this.displayErrors||0===this.selectedOrgans.length)}shift(t){const{itemList:e}=this;let n=parseInt(e.nativeElement.style.left,10)||0;this.onLeft&&"left"===t||this.onRight&&"right"===t||(n="right"===t?n-this.step:n+this.step,e.nativeElement.style.left=n+"px",this.setLeftRight(n))}scroll(t){this.timeoutHandler=setInterval(()=>{this.shift(t)},200)}stopScroll(){this.timeoutHandler&&(clearInterval(this.timeoutHandler),this.timeoutHandler=void 0)}selectOrgan(t){this.selectedOrgans=this.multiselect?this.selectedOrgans.includes(t)?this.selectedOrgans.filter(e=>t!==e):this.selectedOrgans.concat([t]):[t],this.organsChanged.emit(this.selectedOrgans)}isSelected(t){return!!this.selectedOrgans.includes(t)}set(){const{itemList:t,itemContainer:e,carouselContainer:n}=this,i=parseInt(t.nativeElement.style.left,10)||0;if(t.nativeElement.offsetWidth>=this.organList.length*this.step)t.nativeElement.style.left="0px",this.onLeft=!0,this.onRight=!0;else{this.setLeftRight(i);const t=this.step*Math.floor(n.nativeElement.offsetWidth/this.step)-64;e.nativeElement.style.width=`${t}px`}}setWidth(){const{itemContainer:t,carouselContainer:e}=this,n=this.step*Math.floor(e.nativeElement.offsetWidth/this.step)-64;t.nativeElement.style.width=`${n}px`}setLeftRight(t){const{itemContainer:e}=this;this.onLeft=0===t,this.onRight=t<=e.nativeElement.offsetWidth-this.organList.length*this.step}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-organ-selector"]],viewQuery:function(t,e){if(1&t&&(qc(UW,7),qc(HW,7),qc($W,7)),2&t){let t;Wc(t=Yc())&&(e.carouselContainer=t.first),Wc(t=Yc())&&(e.itemList=t.first),Wc(t=Yc())&&(e.itemContainer=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{multiselect:"multiselect",displayErrors:"displayErrors",organList:"organList",selectedOrgans:"selectedOrgans",expanded:"expanded",occurenceData:"occurenceData"},outputs:{organsChanged:"organsChanged"},features:[ye],decls:9,vars:8,consts:[["matTooltip","Select the organ your tissue block is from.",1,"container",3,"matTooltipDisabled"],["carouselContainer",""],["class","carousel-left-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-item-container"],["itemcontainer",""],[1,"carousel-item-list"],["itemlist",""],["class","carousel-item",3,"disabled","selected","click",4,"ngFor","ngForOf"],["class","carousel-right-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-left-icon",3,"touchstart","touchend","click","mousedown","mouseup"],[1,"carousel-item",3,"click"],[1,"carousel-icon",3,"svgIcon"],[1,"carousel-text-container"],[1,"carousel-text"],["class","num-results",4,"ngIf"],[1,"num-results"],[1,"carousel-right-icon",3,"touchstart","touchend","click","mousedown","mouseup"]],template:function(t,e){1&t&&(ra(0,"div",0,1),Jo(2,GW,2,2,"mat-icon",2),ra(3,"div",3,4),ra(5,"div",5,6),Jo(7,qW,6,7,"div",7),sa(),sa(),Jo(8,XW,2,2,"mat-icon",8),sa()),2&t&&(ja("expanded",e.expanded)("error",e.error),na("matTooltipDisabled",e.multiselect),ws(2),na("ngIf",!e.expanded),ws(5),na("ngForOf",e.organList),ws(1),na("ngIf",!e.expanded))},directives:[ew,_h,yh,p_],styles:["[_nghost-%COMP%] .container[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;justify-content:space-between}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{font-size:2rem;transform:scaleY(1.2);height:2rem;width:2rem;cursor:pointer}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon.disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon.disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%]{text-align:right}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{text-align:left}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{overflow:hidden;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{position:relative;left:0rem;display:flex;transition:all .2s linear;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer;padding:.25rem .5rem;height:5rem;transition:.6s}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-icon[_ngcontent-%COMP%]{text-align:center;width:3.5rem;height:2rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:4rem;justify-content:center;text-align:center}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .carousel-text[_ngcontent-%COMP%]{display:flex;justify-content:center;font-size:.625rem;max-width:3.5rem;line-height:.8rem;min-height:1.6rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{font-size:.6875rem;line-height:1.5}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item.disabled[_ngcontent-%COMP%]{pointer-events:none}[_nghost-%COMP%] .error-message[_ngcontent-%COMP%]{color:red;height:1rem}[_nghost-%COMP%] .error-message.hidden[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{width:100%!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{flex-wrap:wrap;overflow:auto;left:0rem!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{height:5rem}"]}),t})(),ZW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,rw]]}),t})(),JW=(()=>{class t{constructor(){this.clsName="ccf-opacity-slider",this.opacity=20,this.visible=!0,this.opacityChange=new Rc,this.visibilityToggle=new Rc,this.opacityReset=new Rc}ngOnInit(){this.prevOpacity=this.visible?0:20}reset(){this.prevOpacity=20}changeOpacity(t){this.opacity=parseInt(t,10),this.opacityChange.emit(this.opacity)}toggleVisibility(){const t=this.opacity;this.opacity=this.prevOpacity,this.prevOpacity=t,this.visibilityToggle.emit(),this.opacityChange.emit(this.opacity)}resetOpacity(){this.prevOpacity=0,this.opacityReset.emit()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-opacity-slider"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{opacity:"opacity",visible:"visible"},outputs:{opacityChange:"opacityChange",visibilityToggle:"visibilityToggle",opacityReset:"opacityReset"},decls:10,vars:17,consts:[[1,"slider-box"],[1,"slider-and-label"],[1,"slider",3,"step","min","max","value","input"],[1,"opacity-value"],[1,"icons"],["matRipple","","svgIcon","app:visibility_off",1,"visibility","icon","invisible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","","svgIcon","app:visibility_on",1,"visibility","icon","visible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","",1,"icon","reset",3,"matRippleCentered","matRippleUnbounded","click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-slider",2),fa("input",function(t){return e.changeOpacity(t.value)}),sa(),ra(3,"span",3),Za(4),sa(),sa(),ra(5,"div",4),ra(6,"mat-icon",5),fa("click",function(){return e.toggleVisibility()}),sa(),ra(7,"mat-icon",6),fa("click",function(){return e.toggleVisibility()}),sa(),ra(8,"mat-icon",7),fa("click",function(){return e.resetOpacity()}),Za(9,"refresh"),sa(),sa(),sa()),2&t&&(ws(2),ja("disabled",!e.visible),na("step",1)("min",0)("max",100)("value",e.opacity),ws(2),tl("",e.opacity,"%"),ws(2),ja("hidden",e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),ja("hidden",!e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),na("matRippleCentered",!0)("matRippleUnbounded",!0))},directives:[YU,p_,Yy],styles:["[_nghost-%COMP%]{height:2.25rem;display:flex;align-items:center;justify-content:space-between;border-radius:.1875rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%]{width:60%;display:flex;align-items:center;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .mat-slider-wrapper{top:1.125rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:not-allowed}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .opacity-value[_ngcontent-%COMP%]{width:1.5rem;margin-left:.5rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%]{display:flex;cursor:pointer!important}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .reset[_ngcontent-%COMP%]{margin-right:1rem;padding:.25rem;cursor:pointer;transition:.6s;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility[_ngcontent-%COMP%]{transition:.6s;cursor:pointer;padding:.25rem;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})(),tq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,JU,Ky]]}),t})();function eq(t,e){if(1&t&&(ra(0,"div",15),oa(1,"youtube-player",16),sa()),2&t){const t=va(3);ws(1),Sa("videoId",t.videoID)}}function nq(t,e){if(1&t&&(ra(0,"mat-expansion-panel",10),ra(1,"mat-expansion-panel-header"),ra(2,"h2",11),Za(3),sa(),sa(),ra(4,"div",12),oa(5,"markdown",13),Jo(6,eq,2,1,"div",14),sa(),sa()),2&t){const t=va(),e=t.index,n=t.$implicit;na("expanded",0===e),ws(3),Ja(n.title),ws(2),ja("first",0===e),na("data",n.content),ws(1),na("ngIf",0===e)}}function iq(t,e){if(1&t&&(ra(0,"div",8),Jo(1,nq,7,6,"mat-expansion-panel",9),sa()),2&t){const t=e.$implicit;ws(1),na("ngIf",t)}}let rq=(()=>{class t{constructor(t,e){this.dialogRef=t,this.data=e,this.documentationContents=e.content||[],this.infoTitle=e.title||"",this.videoID=e.videoID}ngOnInit(){const t=document.createElement("script");t.src="https://www.youtube.com/iframe_api",document.body.appendChild(t)}close(){var t;null===(t=document.getElementsByClassName("modal-animated")[0])||void 0===t||t.classList.add("modal-animate-fade-out"),setTimeout(()=>{this.dialogRef.close()},250)}}return t.\u0275fac=function(e){return new(e||t)(ea(oH),ea(lH))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-dialog"]],decls:10,vars:2,consts:[[1,"rui-about","wrapper"],[1,"container"],[1,"close"],[1,"material-icons","close-icon",3,"click"],[1,"content"],["mat-dialog-title","",1,"title"],[1,"mat-typography","dialog-content"],["class","panel",4,"ngFor","ngForOf"],[1,"panel"],[3,"expanded",4,"ngIf"],[3,"expanded"],[1,"no-header-margin"],[1,"top-padding"],[1,"variable-binding",3,"data"],["class","video-player",4,"ngIf"],[1,"video-player"],[3,"videoId"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),ra(3,"mat-icon",3),fa("click",function(){return e.close()}),Za(4,"clear"),sa(),sa(),ra(5,"div",4),ra(6,"h2",5),Za(7),sa(),ra(8,"mat-dialog-content",6),Jo(9,iq,2,1,"div",7),sa(),sa(),sa(),sa()),2&t&&(ws(7),Ja(e.infoTitle),ws(2),na("ngForOf",e.documentationContents))},directives:[p_,gH,mH,yh,_h,NH,FH,WH,i$],styles:[".mat-dialog-container{padding:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:3rem;text-align:left}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:.875rem;line-height:1.5rem;margin-bottom:1rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .close[_ngcontent-%COMP%] .close-icon[_ngcontent-%COMP%]{float:right;cursor:pointer}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:1.5rem;margin-bottom:2.25rem;text-align:center}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:1rem;margin-top:0;margin-bottom:.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%]{margin-bottom:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .no-header-margin[_ngcontent-%COMP%]{font-weight:300;margin-bottom:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%]{display:flex}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] ul{margin-top:0;padding-left:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%]{height:50rem;min-height:10rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding[_ngcontent-%COMP%]{font-weight:300}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding.first[_ngcontent-%COMP%]{padding-right:3rem;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%]{position:relative;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%] iframe{width:100%;height:100%;max-height:17.5rem}"]}),t})(),sq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,bH,f_,BH,a$,qH.forRoot({})]]}),t})(),oq=(()=>{class t{constructor(t){this.http=t,this.markdownContent=new Uf([])}readMarkdown(){this.http.get("assets/docs/README.md",{responseType:"text"}).subscribe(t=>{const e=this.parseMarkdown(t);this.markdownContent.next(e)})}parseMarkdown(t){const e=[],n=t.split("# ");for(const i of n)if(i.length){const t=i.split("\n\n");e.push({title:t[0],content:t.splice(1).join("\n\n")})}return e}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),aq=(()=>{class t{constructor(t,e){this.dialog=t,this.infoButtonService=e,this.infoTitle="",this.subscriptions=new g,this.subscriptions.add(e.markdownContent.subscribe(t=>{t.length&&this.launchInfoDialog(t)}))}ngOnDestroy(){this.subscriptions.unsubscribe()}launchInfoDialog(t){this.dialog.open(rq,{autoFocus:!1,panelClass:"modal-animated",width:"60rem",data:{title:this.infoTitle,content:t,videoID:this.videoID}})}onDialogButtonClick(){this.infoButtonService.readMarkdown()}}return t.\u0275fac=function(e){return new(e||t)(ea(pH),ea(oq))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-button"]],inputs:{infoTitle:"infoTitle",videoID:"videoID"},decls:3,vars:0,consts:[[1,"info-button-wrapper"],["aria-hidden","false","aria-label","Page information",1,"ccf-info-button",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"mat-icon",1),fa("click",function(){return e.onDialogButtonClick()}),Za(2," info "),sa(),sa())},directives:[p_],styles:[".info-button-wrapper[_ngcontent-%COMP%]{border-radius:.25rem;padding:.65rem;transition:.6s}.info-button-wrapper[_ngcontent-%COMP%] .ccf-info-button[_ngcontent-%COMP%]{cursor:pointer;transition:color .6s;font-size:1.5rem;vertical-align:sub}"]}),t})(),lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,sq,f_,Zv]]}),t})(),cq=(()=>{let t=class extends z${constructor(){super(...arguments),this.optionCache=new Map}get config$(){return this.state$.pipe(Hd(t=>null!=t),up(1))}setConfig(t){this.setState(t)}patchConfig(t){this.patchState(t)}getProperty(t){return this.config$.pipe(FU(...t),Rd(),up(1))}getOption(...t){const e=this.getPathKey(t);if(this.optionCache.has(e))return this.optionCache.get(e);const n=this.config$.pipe(FU(...t),Rd(),up(1));return this.optionCache.set(e,n),n}getPathKey(t){return`${t.length}:${t.join(".")}`}};return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$()],t.prototype,"config$",null),t=sw([F$(),wV({name:"globalConfig",defaults:null})],t),t})();!function(){const t=localStorage.getItem("ALLOW_TELEMETRY");null===t||t.toLowerCase()}();let uq=(()=>{class t{constructor(t,e){t&&function(t,e){xd(t,"mousemove").pipe(function(t,e=jd,n=BU){return i=>i.lift(new VU(t,e,n.leading,n.trailing))}(1e3),D(e=>{const{clientWidth:n,clientHeight:i}=t,{clientX:r,clientY:s}=e;return[r,s,n,i].join("_")})).subscribe(t=>e.event("webpage","mousemove",t))}(t.body,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(W$))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function hq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!0)}),Za(1),sa()}if(2&t){const t=va();ws(1),tl(" ","not-set"===t.allowTelemetry?"I understand":"Opt in","\n")}}function dq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!1)}),Za(1,"Opt out"),sa()}}let pq=(()=>{class t{constructor(t,e,n){this.consentService=e,this.data=n,this.clsName="ccf-tracking-popup",this.container=t.nativeElement}get allowTelemetry(){return this.consentService.consent}dismiss(){this.data.preClose()}submit(t){this.consentService.setConsent(t?"given":"rescinded"),this.dismiss()}showButton(t){const{allowTelemetry:e}=this;return"not-set"===e||("opt-in"===t?"rescinded"===e:"given"===e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Y$),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tracking-popup"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},decls:4,vars:2,consts:[["mat-button","","color","basic",3,"click",4,"ngIf"],["mat-button","","color","basic",3,"click"]],template:function(t,e){1&t&&(ra(0,"p"),Za(1,"We log usage to improve this service."),sa(),Jo(2,hq,2,1,"button",0),Jo(3,dq,2,0,"button",0)),2&t&&(ws(2),na("ngIf",e.showButton("opt-in")),ws(1),na("ngIf",e.showButton("opt-out")))},directives:[_h,__],styles:["[_nghost-%COMP%]{display:flex;align-items:center;min-width:400px;color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:9999}[_nghost-%COMP%] p[_ngcontent-%COMP%]{margin:24px}[_nghost-%COMP%] button[_ngcontent-%COMP%]{margin:1rem;min-width:6rem;background-color:#007cbe;display:flex;justify-content:center}"],changeDetection:0}),t})(),fq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_]]}),t})();class gq extends class{getProviderNames(){return this.forwardCall("getProviderNames")}getDatasetTechnologyNames(){return this.forwardCall("getDatasetTechnologyNames")}getOntologyTreeModel(){return this.forwardCall("getOntologyTreeModel")}getCellTypeTreeModel(){return this.forwardCall("getCellTypeTreeModel")}getReferenceOrgans(){return this.forwardCall("getReferenceOrgans")}getTissueBlockResults(t){return this.forwardCall("getTissueBlockResults",t)}getAggregateResults(t){return this.forwardCall("getAggregateResults",t)}getOntologyTermOccurences(t){return this.forwardCall("getOntologyTermOccurences",t)}getCellTypeTermOccurences(t){return this.forwardCall("getCellTypeTermOccurences",t)}getScene(t){return this.forwardCall("getScene",t)}getReferenceOrganScene(t,e){return this.forwardCall("getReferenceOrganScene",t,e)}}{forwardCall(t,...e){return this.impl$.pipe(Qd(n=>n[t](...e)))}}let mq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const bq=new P,yq={cacheBusterObserver:bq},vq={cacheBusterObserver:bq,maxCacheCount:4};function _q(t,e,n){return t?{min:t[0]>e?t[0]:void 0,max:t[1]{var e;return Object.assign(Object.assign({},t),{transformMatrix:new bT(null!==(e=t.transformMatrix)&&void 0!==e?e:[])})})}let xq=(()=>{class t{constructor(t,e){this.api=t,this.globalConfig=e,e.getOption("hubmapToken").subscribe(bq)}getProviderNames(){return this.doRequest(t=>this.api.providerNames(t))}getDatasetTechnologyNames(){return this.doRequest(t=>this.api.technologyNames(t))}getOntologyTreeModel(){return this.doRequest(t=>this.api.ontologyTreeModel(t),void 0,{},t=>t)}getCellTypeTreeModel(){return this.doRequest(t=>this.api.cellTypeTreeModel(t),void 0,{},t=>t)}getReferenceOrgans(){return this.doRequest(t=>this.api.referenceOrgans(t),void 0,{},t=>t)}getTissueBlockResults(t){return this.doRequest(t=>this.api.tissueBlocks(t),t,{},t=>t)}getAggregateResults(t){return this.doRequest(t=>this.api.aggregateResults(t),t)}getOntologyTermOccurences(t){return this.doRequest(t=>this.api.ontologyTermOccurences(t),t)}getCellTypeTermOccurences(t){return this.doRequest(t=>this.api.cellTypeTermOccurences(t),t)}getScene(t){return this.doRequest(t=>this.api.scene(t),t,{},wq)}getReferenceOrganScene(t,e){return this.doRequest(t=>this.api.referenceOrganScene(t),e,{organIri:t},wq)}doRequest(t,e,n,i){const{api:r,globalConfig:s}=this,o=Object.assign(Object.assign({},function(t){var e,n;return{age:_q(null==t?void 0:t.ageRange,1,110),bmi:_q(null==t?void 0:t.bmiRange,13,83),sex:null===(n=null===(e=null==t?void 0:t.sex)||void 0===e?void 0:e.toLowerCase)||void 0===n?void 0:n.call(e),ontologyTerms:null==t?void 0:t.ontologyTerms,cellTypeTerms:null==t?void 0:t.cellTypeTerms,providers:null==t?void 0:t.tmc,technologies:null==t?void 0:t.technologies}}(e)),n);return s.getOption("remoteApiEndpoint").pipe(Gp(1),$f(t=>r.configuration.basePath=t),Qd(()=>t(o)),D(t=>i?i(t):t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(uG),Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),sw([oG(yq)],t.prototype,"getProviderNames",null),sw([oG(yq)],t.prototype,"getDatasetTechnologyNames",null),sw([oG(yq)],t.prototype,"getOntologyTreeModel",null),sw([oG(yq)],t.prototype,"getCellTypeTreeModel",null),sw([oG(yq)],t.prototype,"getReferenceOrgans",null),sw([oG(vq)],t.prototype,"getTissueBlockResults",null),sw([oG(vq)],t.prototype,"getAggregateResults",null),sw([oG(vq)],t.prototype,"getOntologyTermOccurences",null),sw([oG(vq)],t.prototype,"getCellTypeTermOccurences",null),sw([oG(vq)],t.prototype,"getScene",null),sw([oG(vq)],t.prototype,"getReferenceOrganScene",null),t})(),Sq=(()=>{class t extends gq{constructor(t){super(),this.impl$=this.database$=t.config$.pipe(t=>t,Hd(t=>Object.keys(t).length>0),Qd(t=>function(t,e){return new C(n=>{let i,r;try{i=t()}catch(o){return void n.error(o)}try{r=e(i)}catch(o){return void n.error(o)}const s=(r?U(r):ep).subscribe(n);return()=>{s.unsubscribe(),i&&i.unsubscribe()}})}(()=>this.createDatabase(t),e=>this.connectDatabase(e,t))),D(t=>t.database),up(1))}connectDatabase(t,e){return lw(this,void 0,void 0,function*(){const n=!Nu();return yield t.database.connect(e,n),t})}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Eq=(()=>{class t extends Sq{createDatabase(t){return{database:new wW(t),unsubscribe:()=>{}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Cq=(()=>{class t extends Sq{createDatabase(t){const e=this.createWorker(t),n=PW(e);return{database:n,unsubscribe:()=>{n[EW](),e.terminate()}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Oq=(()=>{class t extends gq{constructor(t,e){super(),this.impl$=t.config$.pipe(t=>t,D(t=>this.selectToken(t)),Rd(),D(t=>e.get(t)),up(1))}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Tq=new oi("Default theme class");let kq=(()=>{class t{constructor(t){this.defaultTheme=this.theme=null!=t?t:""}static initialize(e){const{injector:n,location:i}=e;n.get(t).initialize(i,n)}getTheme(){return this.theme}setTheme(t){t!==this.theme&&(this.applyThemeClass(this.theme,"remove"),this.applyThemeClass(t),this.theme=t)}resetTheme(){this.setTheme(this.defaultTheme)}initialize(t,e){this.element=t,this.injector=e,this.applyThemeClass(this.getTheme())}applyThemeClass(t,e="add"){var n;const{element:i,injector:r}=this;if(!t||!i||!r)return;const s=r.get(Ml,null);if(!s)return;const o=i.nativeElement,a=null===(n=r.get(gf,null))||void 0===n?void 0:n.getContainerElement(),l="add"===e?"addClass":"removeClass";s[l](o,t),a&&s[l](a,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Tq,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();var Aq;const Pq={production:!0,disableDbWorker:!0,acceptableViewerDomains:["https://portal.hubmapconsortium.org","https://portal.test.hubmapconsortium.org"],dbOptions:{ccfOwlUrl:"assets/ccf.owl.n3store.json",ccfContextUrl:"https://hubmapconsortium.github.io/hubmap-ontology/ccf-context.jsonld",dataSources:["assets/kpmp/data/rui_locations.jsonld","assets/sparc/data/rui_locations.jsonld","assets/gtex/data/rui_locations.jsonld"],hubmapDataService:"search-api",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"https://search.api.hubmapconsortium.org/entities/search",hubmapAssetsUrl:"https://assets.hubmapconsortium.org",hubmapToken:null!==(Aq=localStorage.getItem("HUBMAP_TOKEN"))&&void 0!==Aq?Aq:"",useRemoteApi:!1,remoteApiEndpoint:"https://ccf-api--staging.herokuapp.com/v1"},customization:{theme:"hubmap",header:!0,homeUrl:"https://portal.hubmapconsortium.org/",logoTooltip:"Human BioMolecular Atlas Project"},googleAnalyticsToken:"portal.hubmapconsortium.org"===window.location.hostname?"G-1WRJHN9FM6":"G-J9HWV9QPJ4"},Mq=["*",[["mat-toolbar-row"]]],Iq=["*","mat-toolbar-row"],Dq=jy(class{constructor(t){this._elementRef=t}});let Rq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),t})(),Nq=(()=>{class t extends Dq{constructor(t,e,n){super(t),this._platform=e,this._document=n}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu))},t.\u0275cmp=Jt({type:t,selectors:[["mat-toolbar"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,Rq,5),2&t){let t;Wc(t=Yc())&&(e._toolbarRows=t)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(t,e){2&t&&ja("mat-toolbar-multiple-rows",e._toolbarRows.length>0)("mat-toolbar-single-row",0===e._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[jo],ngContentSelectors:Iq,decls:2,vars:0,template:function(t,e){1&t&&(wa(Mq),xa(0),xa(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),t})(),Lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})(),jq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,Lq,rw]]}),t})(),Fq=(()=>{class t extends Cq{constructor(t,e){super(t),this.locator=e}createWorker(t){const e=this.getWorkerUrl(!0);return new Worker(e,{type:"module"})}getWorkerUrl(t){if(t)return new URL(n(88509),n.b);const e=this.locator.prepareExternalUrl("0-es2015.worker.js"),i=new Blob([`importScripts('${e}')`],{type:"application/javascript"});return URL.createObjectURL(i)}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(rh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Bq=(()=>{class t extends Oq{selectToken(t){const{useRemoteApi:e,remoteApiEndpoint:n}=t;return e&&n?xq:"undefined"==typeof Worker||Pq.disableDbWorker?Eq:Fq}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Vq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:au,useValue:kq.initialize,multi:!0},kq]}),t})(),zq=(()=>{class t{constructor(t,e){this.accessor=t,this.injector=e}static forRoot(e=[]){return{ngModule:t,providers:[w$,_$,y$,...e]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(w$,2),Ci(_$,2))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Uq=(t,e)=>((t,e)=>new Array(e+1).join("0"))(0,e-t.toString().length)+t;class Hq{constructor(t,e,n){this.action=t,this.store=e,this.logWriter=n}dispatched(t){const e=VB(this.action),n=function(t){return Uq(t.getHours(),2)+":"+Uq(t.getMinutes(),2)+":"+Uq(t.getSeconds(),2)+"."+Uq(t.getMilliseconds(),3)}(new Date);this.logWriter.startGroup(`action ${e} @ ${n}`),this._hasPayload(this.action)&&this.logWriter.logGrey("payload",Object.assign({},this.action)),this.logWriter.logGrey("prev state",t)}completed(t){this.logWriter.logGreen("next state",t),this.logWriter.endGroup()}errored(t){this.logWriter.logRedish("next state after error",this.store.snapshot()),this.logWriter.logRedish("error",t),this.logWriter.endGroup()}_hasPayload(t){return this._getNonEmptyProperties(t).length>0}_getNonEmptyProperties(t){return Object.keys(t).map(e=>t[e]).filter(t=>void 0!==t)}}class $q{constructor(t){this.options=t,this.options=this.options||{},this.logger=t.logger||console}startGroup(t){const e=this.options.collapsed?this.logger.groupCollapsed:this.logger.group;try{e.call(this.logger,t)}catch(n){console.log(t)}}endGroup(){try{this.logger.groupEnd()}catch(t){this.logger.log("\u2014\u2014 log end \u2014\u2014")}}logGrey(t,e){this.log(t,"color: #9E9E9E; font-weight: bold",e)}logGreen(t,e){this.log(t,"color: #4CAF50; font-weight: bold",e)}logRedish(t,e){this.log(t,"color: #FD8182; font-weight: bold",e)}log(t,e,n){this.isIE()?this.logger.log(t,n):this.logger.log("%c "+t,e,n)}isIE(){const t="undefined"!=typeof window&&window.navigator.userAgent?window.navigator.userAgent:"";let e=!1;const n=t.indexOf("MSIE "),i=t.indexOf("Trident/");return(n>-1||i>-1)&&(e=!0),e}}const Gq=new oi("NGXS_LOGGER_PLUGIN_OPTIONS");let Wq=(()=>{class t{constructor(t,e){this._options=t,this._injector=e}handle(t,e,n){if(this._options.disabled||!this._options.filter(e,t))return n(t,e);this._logWriter=this._logWriter||new $q(this._options),this._store=this._store||this._injector.get(pV);const i=new Hq(e,this._store,this._logWriter);return i.dispatched(t),n(t,e).pipe($f(t=>{i.completed(t)}),pv(t=>{throw i.errored(t),t}))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Gq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const qq=new oi("LOGGER_USER_OPTIONS");function Xq(t){return Object.assign({},{logger:console,collapsed:!1,disabled:!1,filter:()=>!0},t)}let Yq=(()=>{class t{static forRoot(e){return{ngModule:t,providers:[{provide:IB,useClass:Wq,multi:!0},{provide:qq,useValue:e},{provide:Gq,useFactory:Xq,deps:[qq]}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Kq=new RegExp("[^#a-f\\d]","gi"),Qq=new RegExp("^#?[a-f\\d]{3}[a-f\\d]?$|^#?[a-f\\d]{6}([a-f\\d]{2})?$","i"),Zq=["#FF8800","#2979ff","#ffd740","#b92dff","#da326f","#7323e2","#acf32b","#82B1FF","#E040FB","#00E5FF"].map((t,e)=>{const n=function(t,e={}){if("string"!=typeof t||Kq.test(t)||!Qq.test(t))throw new TypeError("Expected a valid hex string");let n=1;8===(t=t.replace(/^#/,"")).length&&(n=Number.parseInt(t.slice(6,8),16)/255,t=t.slice(0,6)),4===t.length&&(n=Number.parseInt(t.slice(3,4).repeat(2),16)/255,t=t.slice(0,3)),3===t.length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]);const i=Number.parseInt(t,16),r=i>>16,s=i>>8&255,o=255&i,a="number"==typeof e.alpha?e.alpha:n;return"array"===e.format?[r,s,o,a]:"css"===e.format?`rgb(${r} ${s} ${o}${1===a?"":` / ${Number((100*a).toFixed(2))}%`})`:{red:r,green:s,blue:o,alpha:a}}(t,{format:"array"});return n[3]=255,{color:t,rgba:n,rank:e}});let Jq=class extends z${constructor(){super(...arguments),this.forcedUnassignment=new P,this.forcedUnassignment$=this.forcedUnassignment.asObservable(),this.colorAssignments$=this.state$.pipe(FU("colorAssignments"),Rd()),this.colorAssignmentsList$=this.state$.pipe(FU("colorAssignmentsList"),Rd())}getColor(t){const{colorAssignments:e}=this.snapshot;return e[t]}assignColor(t,e=!1){let{colorAssignments:n,colorAssignmentsList:i,colorsAvailable:r}=this.snapshot;e&&(r=this.snapshot.colorPalette.concat(),i=[],n={});let s=n[t];return s||(r.length>0?s=r[0]:(s=i[i.length-1].color,i=i.slice(0,-1),this.forcedUnassignment.next()),r=r.filter(t=>t.color!==s.color),i=[{color:s,key:t}].concat(i),n=i.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:r,colorAssignments:n,colorAssignmentsList:i})),s}unassignColor(t){let{colorAssignments:e,colorAssignmentsList:n,colorsAvailable:i}=this.snapshot;const r=e[t];r&&(i=[r].concat(i),n=n.filter(t=>t.color.color!==r.color),e=n.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:i,colorAssignments:e,colorAssignmentsList:n}))}};function tX(t,e){return n=>n.lift(new eX(t,e))}Jq.\u0275fac=function(){let t;return function(e){return(t||(t=ti(Jq)))(e||Jq)}}(),Jq.\u0275prov=xt({token:Jq,factory:Jq.\u0275fac}),sw([L$(),ow(0,j$("key")),ow(1,j$("doReset"))],Jq.prototype,"assignColor",null),sw([L$(),ow(0,j$("key"))],Jq.prototype,"unassignColor",null),Jq=sw([F$(),wV({name:"colors",defaults:{colorPalette:Zq.concat(),colorsAvailable:Zq.concat(),colorAssignments:{},colorAssignmentsList:[]}})],Jq);class eX{constructor(t,e){this.keySelector=t,this.flushes=e}call(t,e){return e.subscribe(new nX(t,this.keySelector,this.flushes))}}class nX extends ${constructor(t,e,n){super(t),this.keySelector=e,this.values=new Set,n&&this.add(G(n,new H(this)))}notifyNext(){this.values.clear()}notifyError(t){this._error(t)}_next(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)}_useKeySelector(t){let e;const{destination:n}=this;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)}_finalizeNext(t,e){const{values:n}=this;n.has(t)||(n.add(t),this.destination.next(e))}}const iX={sex:"Both",ageRange:[1,110],bmiRange:[13,83],tmc:[],technologies:[],ontologyTerms:["http://purl.obolibrary.org/obo/UBERON_0013702"],cellTypeTerms:["http://purl.obolibrary.org/obo/CL_0000000"]};var rX=(()=>(function(t){t.Running="running",t.Completed="completed"}(rX||(rX={})),rX))();function sX(t){return()=>t.next(rX.Completed)}function oX(t,e){return n=>n.pipe(Qd(t),$f(e),eG(1),Z())}let aX=class extends V${constructor(t){super(),this.source=t,this._tissueBlockDataQueryStatus$=new lp(1),this._aggregateDataQueryStatus$=new lp(1),this._ontologyTermOccurencesDataQueryStatus$=new lp(1),this._cellTypeTermOccurencesDataQueryStatus$=new lp(1),this._sceneDataQueryStatus$=new lp(1),this._technologyFilterQueryStatus$=new lp(1),this._providerFilterQueryStatus$=new lp(1),this.ontologyTermsFullData$=new lp(1),this.cellTypeTermsFullData$=new lp(1),this.filter$=this.state$.pipe(FU("filter")),this.tissueBlockData$=this.filter$.pipe(oX(this.tissueBlockData,sX(this._tissueBlockDataQueryStatus$))),this.aggregateData$=this.filter$.pipe(oX(this.aggregateData,sX(this._aggregateDataQueryStatus$))),this.ontologyTermOccurencesData$=this.filter$.pipe(oX(this.ontologyTermOccurencesData,sX(this._ontologyTermOccurencesDataQueryStatus$))),this.cellTypeTermOccurencesData$=this.filter$.pipe(oX(this.cellTypeTermOccurencesData,sX(this._cellTypeTermOccurencesDataQueryStatus$))),this.sceneData$=this.filter$.pipe(oX(this.sceneData,sX(this._sceneDataQueryStatus$))),this.technologyFilterData$=this.filter$.pipe(oX(this.technologyFilterData,sX(this._technologyFilterQueryStatus$))),this.providerFilterData$=this.filter$.pipe(oX(this.providerFilterData,sX(this._providerFilterQueryStatus$))),this.tissueBlockDataQueryStatus$=this._tissueBlockDataQueryStatus$.pipe(tX()),this.aggregateDataQueryStatus$=this._aggregateDataQueryStatus$.pipe(tX()),this.ontologyTermOccurencesDataQueryStatus$=this._ontologyTermOccurencesDataQueryStatus$.pipe(tX()),this.cellTypeTermOccurencesDataQueryStatus$=this._cellTypeTermOccurencesDataQueryStatus$.pipe(tX()),this.sceneDataQueryStatus$=this._sceneDataQueryStatus$.pipe(tX()),this.technologyFilterQueryStatus$=this._technologyFilterQueryStatus$.pipe(tX()),this.providerFilterQueryStatus$=this._providerFilterQueryStatus$.pipe(tX()),this.queryStatus$=T_([this.tissueBlockDataQueryStatus$,this.aggregateDataQueryStatus$,this.ontologyTermOccurencesDataQueryStatus$,this.cellTypeTermOccurencesDataQueryStatus$,this.sceneDataQueryStatus$,this.technologyFilterQueryStatus$,this.providerFilterQueryStatus$]).pipe(D(t=>function(t){return t.every(t=>t===rX.Completed)}(t)?rX.Completed:rX.Running),tX()),this._tissueBlockDataQueryStatus$.next(rX.Completed),this._aggregateDataQueryStatus$.next(rX.Completed),this._ontologyTermOccurencesDataQueryStatus$.next(rX.Completed),this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Completed),this._sceneDataQueryStatus$.next(rX.Completed),this._technologyFilterQueryStatus$.next(rX.Completed),this._providerFilterQueryStatus$.next(rX.Completed)}ngxsOnInit(){const{ontologyTermsFullData$:t,ontologyTermOccurencesData$:e,cellTypeTermsFullData$:n,cellTypeTermOccurencesData$:i,source:r,snapshot:{filter:s}}=this;s===iX?(e.pipe(Gp(1)).subscribe(t),i.pipe(Gp(1)).subscribe(n)):(r.getOntologyTermOccurences().pipe(Gp(1)).subscribe(t),r.getCellTypeTermOccurences().pipe(Gp(1)).subscribe(n))}updateFilter(t){this.patchState({filter:Object.assign(Object.assign({},this.getState().filter),t)})}tissueBlockData(t){return this._tissueBlockDataQueryStatus$.next(rX.Running),this.source.getTissueBlockResults(t)}aggregateData(t){return this._aggregateDataQueryStatus$.next(rX.Running),this.source.getAggregateResults(t)}ontologyTermOccurencesData(t){return this._ontologyTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getOntologyTermOccurences(t)}cellTypeTermOccurencesData(t){return this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getCellTypeTermOccurences(t)}sceneData(t){return this._sceneDataQueryStatus$.next(rX.Running),this.source.getScene(t)}technologyFilterData(){return this._technologyFilterQueryStatus$.next(rX.Running),this.source.getDatasetTechnologyNames()}providerFilterData(){return this._providerFilterQueryStatus$.next(rX.Running),this.source.getProviderNames()}};aX.\u0275fac=function(t){return new(t||aX)(Ci(mq))},aX.\u0275prov=xt({token:aX,factory:aX.\u0275fac}),sw([L$(),ow(0,j$("filter"))],aX.prototype,"updateFilter",null),sw([iB.ak],aX.prototype,"tissueBlockData",null),sw([iB.ak],aX.prototype,"aggregateData",null),sw([iB.ak],aX.prototype,"ontologyTermOccurencesData",null),sw([iB.ak],aX.prototype,"cellTypeTermOccurencesData",null),sw([iB.ak],aX.prototype,"sceneData",null),sw([iB.ak],aX.prototype,"technologyFilterData",null),sw([iB.ak],aX.prototype,"providerFilterData",null),aX=sw([F$(),wV({name:"data",defaults:{filter:iX}})],aX);const lX=[{name:"bladder",namespace:"app",url:"assets/icons/organs/ico-organs-bladder.svg"},{name:"blood",namespace:"app",url:"assets/icons/organs/ico-organs-blood.svg"},{name:"bone-marrow",namespace:"app",url:"assets/icons/organs/ico-organs-bone-marrow.svg"},{name:"brain",namespace:"app",url:"assets/icons/organs/ico-organs-brain.svg"},{name:"eye",namespace:"app",url:"assets/icons/organs/ico-organs-eye.svg"},{name:"fallopian-tube-left",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-left.svg"},{name:"fallopian-tube-right",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-right.svg"},{name:"heart",namespace:"app",url:"assets/icons/organs/ico-organs-heart.svg"},{name:"kidney-left",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-left.svg"},{name:"kidney-right",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-right.svg"},{name:"kidney",namespace:"app",url:"assets/icons/organs/ico-organs-kidney.svg"},{name:"knee",namespace:"app",url:"assets/icons/organs/ico-organs-knee.svg"},{name:"large-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-large-intestine.svg"},{name:"liver",namespace:"app",url:"assets/icons/organs/ico-organs-liver.svg"},{name:"lung-left",namespace:"app",url:"assets/icons/organs/ico-organs-lung-left.svg"},{name:"lung-right",namespace:"app",url:"assets/icons/organs/ico-organs-lung-right.svg"},{name:"lung",namespace:"app",url:"assets/icons/organs/ico-organs-lung.svg"},{name:"lymph-nodes",namespace:"app",url:"assets/icons/organs/ico-organs-lymph-nodes.svg"},{name:"neuron",namespace:"app",url:"assets/icons/organs/ico-organs-neuron.svg"},{name:"ovaries",namespace:"app",url:"assets/icons/organs/ico-organs-ovaries.svg"},{name:"ovary-left",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-left.svg"},{name:"ovary-right",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-right.svg"},{name:"pancreas",namespace:"app",url:"assets/icons/organs/ico-organs-pancreas.svg"},{name:"pelvis-f",namespace:"app",url:"assets/icons/organs/ico-organs-pelvis-f.svg"},{name:"prostate",namespace:"app",url:"assets/icons/organs/ico-organs-prostate.svg"},{name:"skin",namespace:"app",url:"assets/icons/organs/ico-organs-skin.svg"},{name:"small-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-small intestine.svg"},{name:"spleen",namespace:"app",url:"assets/icons/organs/ico-organs-spleen.svg"},{name:"stomach",namespace:"app",url:"assets/icons/organs/ico-organs-stomach.svg"},{name:"thymus",namespace:"app",url:"assets/icons/organs/ico-organs-thymus.svg"},{name:"ureter-left",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-left.svg"},{name:"ureter-right",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-right.svg"},{name:"uterus",namespace:"app",url:"assets/icons/organs/ico-organs-uterus.svg"},{name:"vasculature-thick",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thick.svg"},{name:"vasculature-thin",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thin.svg"},{name:"opacity",namespace:"app",url:"assets/icons/opacity-24px.svg"},{name:"visibility_on",namespace:"app",url:"assets/icons/visibility-on-24px.svg"},{name:"visibility_off",namespace:"app",url:"assets/icons/visibility-off-24px.svg"},{name:"expand_more",namespace:"app",url:"assets/icons/expand_more-24px.svg"},{name:"expand_less",namespace:"app",url:"assets/icons/expand_less-24px.svg"},{name:"filter",url:"assets/icons/filter.svg"}];let cX=class extends V${constructor(t,e){super(),this.registry=t;for(const{name:n,namespace:i,url:r,html:s}of lX){const t={name:n,namespace:i,url:r&&e.bypassSecurityTrustResourceUrl(r),html:s&&e.bypassSecurityTrustHtml(s)};this.registerIconImpl(t)}}registerIcon(t){return this.registerIconImpl(t)}registerIconImpl(t){if(!this.registry||!t.url&&!t.html)return!1;const e=this.registry,n=e[this.getMethodName(t)],i=this.getArguments(t);if(!n)return!1;try{return n.apply(e,i),!0}catch(r){return!1}}getMethodName({name:t,namespace:e,url:n}){const i=["addSvgIcon"];return t||i.push("Set"),n||i.push("Literal"),e&&i.push("InNamespace"),i.join("")}getArguments({name:t,namespace:e,url:n,html:i}){return[e,t,null!=n?n:i].filter(t=>!!t)}};cX.\u0275fac=function(t){return new(t||cX)(Ci(r_,8),Ci(hd))},cX.\u0275prov=xt({token:cX,factory:cX.\u0275fac}),sw([L$()],cX.prototype,"registerIcon",null),cX=sw([F$(),wV({name:"iconRegistry"})],cX);let uX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.listResults$=this.state$.pipe(FU("listResults"),Rd()),this.highlightedNodeId$=this.state$.pipe(FU("highlightedNodeId"),Rd())}setListResults(t){this.ctx.patchState({listResults:t})}selectListResult(t){this.colorAssignments.assignColor(t.tissueBlock.spatialEntityId)}deselectListResult(t){this.colorAssignments.unassignColor(t.tissueBlock.spatialEntityId)}highlightNode(t){this.ctx.patchState({highlightedNodeId:t})}unHighlightNode(){this.ctx.patchState({highlightedNodeId:void 0})}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),T_([this.dataState.tissueBlockData$,this.colorAssignments.colorAssignments$]).pipe(D(([t,e])=>{const n=[],i=[];for(const r of t){const t=e[r.spatialEntityId];t?n.push({selected:!0,color:t.color,tissueBlock:r,rank:t.rank}):i.push({selected:!1,tissueBlock:r})}return(0,_G.sortBy)(n,["rank"]).concat(i)}),$f(t=>this.setListResults(t))).subscribe()}};uX.\u0275fac=function(t){return new(t||uX)(Ci(mq),Ci(No))},uX.\u0275prov=xt({token:uX,factory:uX.\u0275fac}),sw([L$(),ow(0,j$("listResults"))],uX.prototype,"setListResults",null),uX=sw([F$(),wV({name:"listResults",defaults:{listResults:[]}})],uX);const hX=new Set(["Skin","Heart","Kidney","Spleen"]);let dX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.referenceOrgans$=this.state$.pipe(FU("referenceOrgans"),Rd()),this.selectedReferenceOrgans$=this.state$.pipe(FU("selectedReferenceOrgans"),Rd()),this.scene$=this.state$.pipe(FU("scene"),Rd()),this.highlightedId$=this.state$.pipe(FU("highlightedId"),Rd())}setSelectedReferenceOrgans(t){this.ctx.patchState({selectedReferenceOrgans:t})}setReferenceOrgans(t){this.ctx.patchState({referenceOrgans:t})}setScene(t){this.ctx.patchState({scene:t})}sceneNodeClicked({node:t,ctrlClick:e}){t.representation_of&&"http://purl.org/ccf/latest/ccf.owl#VHFSkin"!==t["@id"]&&t.entityId?this.dataState.updateFilter({ontologyTerms:[t.representation_of]}):t.entityId&&this.colorAssignments.assignColor(t["@id"],!e)}sceneNodeHovered(t){this.listResults.highlightNode(t["@id"])}sceneNodeUnhover(){this.listResults.unHighlightNode()}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),this.listResults=this.injector.get(uX),this.dataService.getReferenceOrgans().pipe(D(t=>{const e=new Set(t.map(t=>t.representation_of));return YW.filter(t=>e.has(t.id)).map(t=>Object.assign(Object.assign({},t),{disabled:!1,numResults:0}))}),Gp(1),$f(t=>{this.setReferenceOrgans(t),this.setSelectedReferenceOrgans(t.filter(t=>hX.has(t.organ)))})).subscribe(),T_([this.dataState.sceneData$,this.selectedReferenceOrgans$,this.colorAssignments.colorAssignments$,this.dataService.getReferenceOrgans(),this.listResults.highlightedNodeId$]).pipe(D(([t,e,n,i,r])=>{const s=new Set(e.map(t=>t.id)),o=new Set(i.filter(t=>s.has(t.representation_of)).map(t=>t["@id"]));return t.filter(t=>{var e,n;return(null===(n=null===(e=t.ccf_annotations)||void 0===e?void 0:e.some)||void 0===n?void 0:n.call(e,t=>s.has(t)))||t.reference_organ&&o.has(t.reference_organ)}).map(t=>t.entityId&&(Object.prototype.hasOwnProperty.call(n,t["@id"])||r===t["@id"])?Object.assign(Object.assign({},t),{color:r===t["@id"]?[30,136,229,255]:n[t["@id"]].rgba}):t)}),$f(t=>this.setScene(t))).subscribe()}};dX.\u0275fac=function(t){return new(t||dX)(Ci(mq),Ci(No))},dX.\u0275prov=xt({token:dX,factory:dX.\u0275fac}),sw([L$(),ow(0,j$("selectedReferenceOrgans"))],dX.prototype,"setSelectedReferenceOrgans",null),sw([L$(),ow(0,j$("referenceOrgans"))],dX.prototype,"setReferenceOrgans",null),sw([L$(),ow(0,j$("scene"))],dX.prototype,"setScene",null),dX=sw([F$(),wV({name:"scene",defaults:{scene:[],referenceOrgans:[],selectedReferenceOrgans:[],selectedAnatomicalStructures:[],anatomicalStructureSettings:{}}})],dX);const pX=[cq,Jq,cX,uX,aX,dX];let fX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[zq.forRoot(),_V.forRoot(pX,{developmentMode:!Pq.production}),Yq.forRoot({disabled:Pq.production})]]}),t})(),gX=(()=>{class t{constructor(t){if(t)throw new Error("The core module should only be imported once in the root module")}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:mq,useExisting:Bq}],imports:[[Zv,tG.forRoot({gaToken:Pq.googleAnalyticsToken,appName:"eui"}),uq,hG.forRoot(()=>new cG({basePath:Pq.dbOptions.remoteApiEndpoint})),jq,fX,Vq],jq]}),t})();const mX=["input"],bX=function(t){return{enterDuration:t}},yX=["*"],vX=new oi("mat-checkbox-default-options",{providedIn:"root",factory:_X});function _X(){return{color:"accent",clickAction:"check-indeterminate"}}let wX=0;const xX=_X(),SX={provide:EV,useExisting:pt(()=>OX),multi:!0};class EX{}const CX=By(jy(Fy(Ly(class{constructor(t){this._elementRef=t}}))));let OX=(()=>{class t extends CX{constructor(t,e,n,i,r,s,o){super(t),this._changeDetectorRef=e,this._focusMonitor=n,this._ngZone=i,this._animationMode=s,this._options=o,this.ariaLabel="",this.ariaLabelledby=null,this._uniqueId="mat-checkbox-"+ ++wX,this.id=this._uniqueId,this.labelPosition="after",this.name=null,this.change=new Rc,this.indeterminateChange=new Rc,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||xX,this.color=this.defaultColor=this._options.color||xX.color,this.tabIndex=parseInt(r)||0}get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(t){this._required=md(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{t||Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}ngAfterViewChecked(){}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}get checked(){return this._checked}set checked(t){t!=this.checked&&(this._checked=t,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){const e=md(t);e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(t){const e=t!=this._indeterminate;this._indeterminate=md(t),e&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(t){this.checked=!!t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t}_getAriaChecked(){return this.checked?"true":this.indeterminate?"mixed":"false"}_transitionCheckState(t){let e=this._currentCheckState,n=this._elementRef.nativeElement;if(e!==t&&(this._currentAnimationClass.length>0&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(e,t),this._currentCheckState=t,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);const t=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(t)},1e3)})}}_emitChangeEvent(){const t=new EX;t.source=this,t.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(t),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked}_onInputClick(t){var e;const n=null===(e=this._options)||void 0===e?void 0:e.clickAction;t.stopPropagation(),this.disabled||"noop"===n?!this.disabled&&"noop"===n&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==n&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}focus(t,e){t?this._focusMonitor.focusVia(this._inputElement,t,e):this._inputElement.nativeElement.focus(e)}_onInteractionEvent(t){t.stopPropagation()}_getAnimationClassForCheckStateTransition(t,e){if("NoopAnimations"===this._animationMode)return"";let n="";switch(t){case 0:if(1===e)n="unchecked-checked";else{if(3!=e)return"";n="unchecked-indeterminate"}break;case 2:n=1===e?"unchecked-checked":"unchecked-indeterminate";break;case 1:n=2===e?"checked-unchecked":"checked-indeterminate";break;case 3:n=1===e?"indeterminate-checked":"indeterminate-unchecked"}return`mat-checkbox-anim-${n}`}_syncIndeterminate(t){const e=this._inputElement;e&&(e.nativeElement.indeterminate=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Mg),ea(xu),ni("tabindex"),ea(Ey,8),ea(vX,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-checkbox"]],viewQuery:function(t,e){if(1&t&&(qc(mX,5),qc(Yy,5)),2&t){let t;Wc(t=Yc())&&(e._inputElement=t.first),Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(t,e){2&t&&(il("id",e.id),Ko("tabindex",null),ja("mat-checkbox-indeterminate",e.indeterminate)("mat-checkbox-checked",e.checked)("mat-checkbox-disabled",e.disabled)("mat-checkbox-label-before","before"==e.labelPosition)("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",labelPosition:"labelPosition",name:"name",required:"required",checked:"checked",disabled:"disabled",indeterminate:"indeterminate",ariaDescribedby:["aria-describedby","ariaDescribedby"],value:"value"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[_l([SX]),jo],ngContentSelectors:yX,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(t,e){if(1&t&&(wa(),ra(0,"label",0,1),ra(2,"span",2),ra(3,"input",3,4),fa("change",function(t){return e._onInteractionEvent(t)})("click",function(t){return e._onInputClick(t)}),sa(),ra(5,"span",5),oa(6,"span",6),sa(),oa(7,"span",7),ra(8,"span",8),vn(),ra(9,"svg",9),oa(10,"path",10),sa(),Ve.lFrame.currentNamespace=null,oa(11,"span",11),sa(),sa(),ra(12,"span",12,13),fa("cdkObserveContent",function(){return e._onLabelTextChange()}),ra(14,"span",14),Za(15,"\xa0"),sa(),xa(16),sa(),sa()),2&t){const t=ta(1),n=ta(13);Ko("for",e.inputId),ws(2),ja("mat-checkbox-inner-container-no-side-margin",!n.textContent||!n.textContent.trim()),ws(1),na("id",e.inputId)("required",e.required)("checked",e.checked)("disabled",e.disabled)("tabIndex",e.tabIndex),Ko("value",e.value)("name",e.name)("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby)("aria-checked",e._getAriaChecked())("aria-describedby",e.ariaDescribedby),ws(2),na("matRippleTrigger",t)("matRippleDisabled",e._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Tc(19,bX,"NoopAnimations"===e._animationMode?0:150))}},directives:[Yy,ng],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),t})(),TX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),kX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny,ig,TX],Ny,TX]}),t})(),AX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX]]}),t})();const PX=["trigger"],MX=["panel"];function IX(t,e){if(1&t&&(ra(0,"span",8),Za(1),sa()),2&t){const t=va();ws(1),Ja(t.placeholder)}}function DX(t,e){if(1&t&&(ra(0,"span",12),Za(1),sa()),2&t){const t=va(2);ws(1),Ja(t.triggerValue)}}function RX(t,e){1&t&&xa(0,0,["*ngSwitchCase","true"])}function NX(t,e){1&t&&(ra(0,"span",9),Jo(1,DX,2,1,"span",10),Jo(2,RX,1,0,"ng-content",11),sa()),2&t&&(na("ngSwitch",!!va().customTrigger),ws(2),na("ngSwitchCase",!0))}function LX(t,e){if(1&t){const t=ua();ra(0,"div",13),ra(1,"div",14,15),fa("@transformPanel.done",function(e){return $e(t),va()._panelDoneAnimatingStream.next(e.toState)})("keydown",function(e){return $e(t),va()._handleKeydown(e)}),xa(3,1),sa(),sa()}if(2&t){const t=va();na("@transformPanelWrap",void 0),ws(1),nl("mat-select-panel ",t._getPanelTheme(),""),La("transform-origin",t._transformOrigin)("font-size",t._triggerFontSize,"px"),na("ngClass",t.panelClass)("@transformPanel",t.multiple?"showing-multiple":"showing"),Ko("id",t.id+"-panel")("aria-multiselectable",t.multiple)("aria-label",t.ariaLabel||null)("aria-labelledby",t._getPanelAriaLabelledby())}}const jX=[[["mat-select-trigger"]],"*"],FX=["mat-select-trigger","*"],BX={transformPanelWrap:Vg("transformPanelWrap",[Wg("* => void",Xg("@transformPanel",[qg()],{optional:!0}))]),transformPanel:Vg("transformPanel",[$g("void",Hg({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),$g("showing",Hg({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),$g("showing-multiple",Hg({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),Wg("void => *",zg("120ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void",zg("100ms 25ms linear",Hg({opacity:0})))])};let VX=0;const zX=new oi("mat-select-scroll-strategy"),UX=new oi("MAT_SELECT_CONFIG"),HX={provide:zX,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};class $X{constructor(t,e){this.source=t,this.value=e}}const GX=Fy(By(Ly(Vy(class{constructor(t,e,n,i,r){this._elementRef=t,this._defaultErrorStateMatcher=e,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}})))),WX=new oi("MatSelectTrigger");let qX=(()=>{class t extends GX{constructor(t,e,n,i,r,s,o,a,l,c,u,h,d,p){var f,g,m;super(r,i,o,a,c),this._viewportRuler=t,this._changeDetectorRef=e,this._ngZone=n,this._dir=s,this._parentFormField=l,this._liveAnnouncer=d,this._defaultOptions=p,this._panelOpen=!1,this._compareWith=(t,e)=>t===e,this._uid="mat-select-"+VX++,this._triggerAriaLabelledBy=null,this._destroy=new P,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+VX++,this._panelDoneAnimatingStream=new P,this._overlayPanelClass=(null===(f=this._defaultOptions)||void 0===f?void 0:f.overlayPanelClass)||"",this._focused=!1,this.controlType="mat-select",this._required=!1,this._multiple=!1,this._disableOptionCentering=null!==(m=null===(g=this._defaultOptions)||void 0===g?void 0:g.disableOptionCentering)&&void 0!==m&&m,this.ariaLabel="",this.optionSelectionChanges=Mz(()=>{const t=this.options;return t?t.changes.pipe(Kd(t),Qd(()=>Q(...t.map(t=>t.onSelectionChange)))):this._ngZone.onStable.pipe(Gp(1),Qd(()=>this.optionSelectionChanges))}),this.openedChange=new Rc,this._openedStream=this.openedChange.pipe(Hd(t=>t),D(()=>{})),this._closedStream=this.openedChange.pipe(Hd(t=>!t),D(()=>{})),this.selectionChange=new Rc,this.valueChange=new Rc,this.ngControl&&(this.ngControl.valueAccessor=this),null!=(null==p?void 0:p.typeaheadDebounceInterval)&&(this._typeaheadDebounceInterval=p.typeaheadDebounceInterval),this._scrollStrategyFactory=h,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(u)||0,this.id=this.id}get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(t){this._placeholder=t,this.stateChanges.next()}get required(){return this._required}set required(t){this._required=md(t),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(t){this._multiple=md(t)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(t){this._disableOptionCentering=md(t)}get compareWith(){return this._compareWith}set compareWith(t){this._compareWith=t,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(t){(t!==this._value||this._multiple&&Array.isArray(t))&&(this.options&&this._setSelectionByValue(t),this._value=t)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(t){this._typeaheadDebounceInterval=bd(t)}get id(){return this._id}set id(t){this._id=t||this._uid,this.stateChanges.next()}ngOnInit(){this._selectionModel=new kp(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(Rd(),Wd(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe(Wd(this._destroy)).subscribe(t=>{t.added.forEach(t=>t.select()),t.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Kd(null),Wd(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const t=this._getTriggerAriaLabelledby();if(t!==this._triggerAriaLabelledBy){const e=this._elementRef.nativeElement;this._triggerAriaLabelledBy=t,t?e.setAttribute("aria-labelledby",t):e.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}ngOnChanges(t){t.disabled&&this.stateChanges.next(),t.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(t){this.value=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const t=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&t.reverse(),t.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(t){this.disabled||(this.panelOpen?this._handleOpenKeydown(t):this._handleClosedKeydown(t))}_handleClosedKeydown(t){const e=t.keyCode,n=40===e||38===e||37===e||39===e,i=13===e||32===e,r=this._keyManager;if(!r.isTyping()&&i&&!Qp(t)||(this.multiple||t.altKey)&&n)t.preventDefault(),this.open();else if(!this.multiple){const e=this.selected;r.onKeydown(t);const n=this.selected;n&&e!==n&&this._liveAnnouncer.announce(n.viewValue,1e4)}}_handleOpenKeydown(t){const e=this._keyManager,n=t.keyCode,i=40===n||38===n,r=e.isTyping();if(i&&t.altKey)t.preventDefault(),this.close();else if(r||13!==n&&32!==n||!e.activeItem||Qp(t))if(!r&&this._multiple&&65===n&&t.ctrlKey){t.preventDefault();const e=this.options.some(t=>!t.disabled&&!t.selected);this.options.forEach(t=>{t.disabled||(e?t.select():t.deselect())})}else{const n=e.activeItemIndex;e.onKeydown(t),this._multiple&&i&&t.shiftKey&&e.activeItem&&e.activeItemIndex!==n&&e.activeItem._selectViaInteraction()}else t.preventDefault(),e.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Gp(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this._setSelectionByValue(this.ngControl?this.ngControl.value:this._value),this.stateChanges.next()})}_setSelectionByValue(t){if(this._selectionModel.selected.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&t)Array.isArray(t),t.forEach(t=>this._selectValue(t)),this._sortValues();else{const e=this._selectValue(t);e?this._keyManager.updateActiveItem(e):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectValue(t){const e=this.options.find(e=>{if(this._selectionModel.isSelected(e))return!1;try{return null!=e.value&&this._compareWith(e.value,t)}catch(n){return!1}});return e&&this._selectionModel.select(e),e}_initKeyManager(){this._keyManager=new fg(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.pipe(Wd(this._destroy)).subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const t=Q(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(Wd(t)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Q(...this.options.map(t=>t._stateChanges)).pipe(Wd(t)).subscribe(()=>{this._changeDetectorRef.markForCheck(),this.stateChanges.next()})}_onSelect(t,e){const n=this._selectionModel.isSelected(t);null!=t.value||this._multiple?(n!==t.selected&&(t.selected?this._selectionModel.select(t):this._selectionModel.deselect(t)),e&&this._keyManager.setActiveItem(t),this.multiple&&(this._sortValues(),e&&this.focus())):(t.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(t.value)),n!==this._selectionModel.isSelected(t)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const t=this.options.toArray();this._selectionModel.sort((e,n)=>this.sortComparator?this.sortComparator(e,n,t):t.indexOf(e)-t.indexOf(n)),this.stateChanges.next()}}_propagateChanges(t){let e=null;e=this.multiple?this.selected.map(t=>t.value):this.selected?this.selected.value:t,this._value=e,this.valueChange.emit(e),this._onChange(e),this.selectionChange.emit(this._getChangeEvent(e)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}_canOpen(){var t;return!this._panelOpen&&!this.disabled&&(null===(t=this.options)||void 0===t?void 0:t.length)>0}focus(t){this._elementRef.nativeElement.focus(t)}_getPanelAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();return this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();let n=(e?e+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}_panelDoneAnimating(t){this.openedChange.emit(t)}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return t.\u0275fac=function(e){return new(e||t)(ea(Mp),ea(tc),ea(xu),ea(zy),ea(kl),ea(Op,8),ea(_z,8),ea(Tz,8),ea(aU,8),ea(WV,10),ni("tabindex"),ea(zX),ea(kg),ea(UX,8))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(PX,5),qc(MX,5),qc(If,5)),2&t){let t;Wc(t=Yc())&&(e.trigger=t.first),Wc(t=Yc())&&(e.panel=t.first),Wc(t=Yc())&&(e._overlayDir=t.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[jo,ye]}),t})(),XX=(()=>{class t extends qX{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(t,e,n){const i=this._getItemHeight();return Math.min(Math.max(0,i*t-e+i/2),n)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(t){const e=lv(t,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===t&&1===e?0:cv((t+e)*n,n,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(t){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(t)}_getChangeEvent(t){return new $X(this,t)}_calculateOverlayOffsetX(){const t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),e=this._viewportRuler.getViewportSize(),n=this._isRtl(),i=this.multiple?56:32;let r;if(this.multiple)r=40;else if(this.disableOptionCentering)r=16;else{let t=this._selectionModel.selected[0]||this.options.first;r=t&&t.group?32:16}n||(r*=-1);const s=0-(t.left+r-(n?i:0)),o=t.right+r-e.width+(n?0:i);s>0?r+=s+8:o>0&&(r-=o+8),this._overlayDir.offsetX=Math.round(r),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(t,e,n){const i=this._getItemHeight(),r=(i-this._triggerRect.height)/2,s=Math.floor(256/i);let o;return this.disableOptionCentering?0:(o=0===this._scrollTop?t*i:this._scrollTop===n?(t-(this._getItemCount()-s))*i+(i-(this._getItemCount()*i-256)%i):e-i/2,Math.round(-1*o-r))}_checkOverlayWithinViewport(t){const e=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,s=Math.abs(this._offsetY),o=Math.min(this._getItemCount()*e,256)-s-this._triggerRect.height;o>r?this._adjustPanelUp(o,r):s>i?this._adjustPanelDown(s,i,t):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(t,e){const n=Math.round(t-e);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(t,e,n){const i=Math.round(t-e);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const t=this._getItemHeight(),e=this._getItemCount(),n=Math.min(e*t,256),i=e*t-n;let r;r=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),r+=lv(r,this.options,this.optionGroups);const s=n/2;this._scrollTop=this._calculateOverlayScroll(r,s,i),this._offsetY=this._calculateOverlayOffsetY(r,s,i),this._checkOverlayWithinViewport(i)}_getOriginBasedOnOption(){const t=this._getItemHeight(),e=(t-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-e+t/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-select"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,WX,5),Xc(n,av,5),Xc(n,iv,5)),2&t){let t;Wc(t=Yc())&&(e.customTrigger=t.first),Wc(t=Yc())&&(e.options=t),Wc(t=Yc())&&(e.optionGroups=t)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(t,e){1&t&&fa("keydown",function(t){return e._handleKeydown(t)})("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()}),2&t&&(Ko("id",e.id)("tabindex",e.tabIndex)("aria-controls",e.panelOpen?e.id+"-panel":null)("aria-expanded",e.panelOpen)("aria-label",e.ariaLabel||null)("aria-required",e.required.toString())("aria-disabled",e.disabled.toString())("aria-invalid",e.errorState)("aria-describedby",e._ariaDescribedby||null)("aria-activedescendant",e._getAriaActiveDescendant()),ja("mat-select-disabled",e.disabled)("mat-select-invalid",e.errorState)("mat-select-required",e.required)("mat-select-empty",e.empty)("mat-select-multiple",e.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[_l([{provide:Qz,useExisting:t},{provide:Jy,useExisting:t}]),jo],ngContentSelectors:FX,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(t,e){if(1&t&&(wa(jX),ra(0,"div",0,1),fa("click",function(){return e.toggle()}),ra(3,"div",2),Jo(4,IX,2,1,"span",3),Jo(5,NX,3,2,"span",4),sa(),ra(6,"div",5),oa(7,"div",6),sa(),sa(),Jo(8,LX,4,14,"ng-template",7),fa("backdropClick",function(){return e.close()})("attach",function(){return e._onAttached()})("detach",function(){return e.close()})),2&t){const t=ta(1);Ko("aria-owns",e.panelOpen?e.id+"-panel":null),ws(3),na("ngSwitch",e.empty),Ko("id",e._valueId),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1),ws(3),na("cdkConnectedOverlayPanelClass",e._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",e._scrollStrategy)("cdkConnectedOverlayOrigin",t)("cdkConnectedOverlayOpen",e.panelOpen)("cdkConnectedOverlayPositions",e._positions)("cdkConnectedOverlayMinWidth",null==e._triggerRect?null:e._triggerRect.width)("cdkConnectedOverlayOffsetY",e._offsetY)}},directives:[Mf,Eh,Ch,If,Oh,mh],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[BX.transformPanelWrap,BX.transformPanel]},changeDetection:0}),t})(),YX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[HX],imports:[[Rh,Rf,uv,Ny],Ip,cU,uv,Ny]}),t})(),KX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,cU,YX]]}),t})();var QX=n(25430),ZX=n(39053),JX=n(26202);const tY=["tooltipTemplate"],eY=["leftOuterSelectionBar"],nY=["rightOuterSelectionBar"],iY=["fullBar"],rY=["selectionBar"],sY=["minHandle"],oY=["maxHandle"],aY=["floorLabel"],lY=["ceilLabel"],cY=["minHandleLabel"],uY=["maxHandleLabel"],hY=["combinedLabel"],dY=["ticksElement"];function pY(t,e){if(1&t&&oa(0,"ng5-slider-tooltip-wrapper",31),2&t){const t=va().$implicit;na("template",va().tooltipTemplate)("tooltip",t.valueTooltip)("placement",t.valueTooltipPlacement)("content",t.value)}}function fY(t,e){1&t&&oa(0,"span",32),2&t&&na("innerHTML",va().$implicit.legend,vr)}const gY=function(t){return{"ng5-slider-selected":t}};function mY(t,e){if(1&t&&(ra(0,"span",27),oa(1,"ng5-slider-tooltip-wrapper",28),Jo(2,pY,1,4,"ng5-slider-tooltip-wrapper",29),Jo(3,fY,1,1,"span",30),sa()),2&t){const t=e.$implicit,n=va();na("ngClass",Tc(7,gY,t.selected))("ngStyle",t.style),ws(1),na("template",n.tooltipTemplate)("tooltip",t.tooltip)("placement",t.tooltipPlacement),ws(1),na("ngIf",null!=t.value),ws(1),na("ngIf",null!=t.legend)}}function bY(t,e){}function yY(t,e){1&t&&Jo(0,bY,0,0,"ng-template")}const vY=function(t,e,n){return{tooltip:t,placement:e,content:n}};function _Y(t,e){if(1&t&&(aa(0),Jo(1,yY,1,0,void 0,1),la()),2&t){const t=va();ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",kc(2,vY,t.tooltip,t.placement,t.content))}}function wY(t,e){if(1&t&&(aa(0),ra(1,"div",2),Za(2),sa(),la()),2&t){const t=va();ws(1),Ko("title",t.tooltip)("data-tooltip-placement",t.placement),ws(1),tl(" ",t.content," ")}}const xY={Min:0,Max:1};xY[xY.Min]="Min",xY[xY.Max]="Max";const SY={Low:0,High:1,Floor:2,Ceil:3,TickValue:4};SY[SY.Low]="Low",SY[SY.High]="High",SY[SY.Floor]="Floor",SY[SY.Ceil]="Ceil",SY[SY.TickValue]="TickValue";class EY{constructor(){this.floor=0,this.ceil=null,this.step=1,this.minRange=null,this.maxRange=null,this.pushRange=!1,this.minLimit=null,this.maxLimit=null,this.translate=null,this.combineLabels=null,this.getLegend=null,this.stepsArray=null,this.bindIndexForStepsArray=!1,this.draggableRange=!1,this.draggableRangeOnly=!1,this.showSelectionBar=!1,this.showSelectionBarEnd=!1,this.showSelectionBarFromValue=null,this.showOuterSelectionBars=!1,this.hidePointerLabels=!1,this.hideLimitLabels=!1,this.autoHideLimitLabels=!0,this.readOnly=!1,this.disabled=!1,this.mouseEventsInterval=50,this.touchEventsInterval=50,this.inputEventsInterval=100,this.outputEventsInterval=100,this.showTicks=!1,this.showTicksValues=!1,this.tickStep=null,this.tickValueStep=1,this.ticksArray=null,this.ticksTooltip=null,this.ticksValuesTooltip=null,this.vertical=!1,this.getSelectionBarColor=null,this.getTickColor=null,this.getPointerColor=null,this.keyboardSupport=!0,this.scale=1,this.enforceStep=!0,this.enforceRange=!0,this.noSwitching=!1,this.onlyBindHandles=!1,this.rightToLeft=!1,this.reversedControls=!1,this.boundPointerLabels=!0,this.logScale=!1,this.customValueToPosition=null,this.customPositionToValue=null,this.precisionLimit=12,this.selectionBarGradient=null,this.ariaLabel=null,this.ariaLabelledBy=null,this.ariaLabelHigh=null,this.ariaLabelledByHigh=null,this.handleDimension=null,this.barDimension=null,this.animate=!0}}class CY{}class OY{static isNullOrUndefined(t){return null==t}static linearValueToPosition(t,e,n){return(t-e)/(n-e)}static logValueToPosition(t,e,n){return((t=Math.log(t))-(e=Math.log(e)))/((n=Math.log(n))-e)}static linearPositionToValue(t,e,n){return t*(n-e)+e}static logPositionToValue(t,e,n){return e=Math.log(e),n=Math.log(n),Math.exp(t*(n-e)+e)}static findStepIndex(t,e){const n=e.map(e=>Math.abs(t-e.value));let i=0;for(let r=0;r{r.events.next(t)};return t.addEventListener(e,s,{passive:!0,capture:!1}),r.teardownCallback=()=>{t.removeEventListener(e,s,{passive:!0,capture:!1})},r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}detachEventListener(t){OY.isNullOrUndefined(t.eventsSubscription)||(t.eventsSubscription.unsubscribe(),t.eventsSubscription=null),OY.isNullOrUndefined(t.events)||(t.events.complete(),t.events=null),OY.isNullOrUndefined(t.teardownCallback)||(t.teardownCallback(),t.teardownCallback=null)}attachEventListener(t,e,n,i){const r=new AY;return r.eventName=e,r.events=new QX.xQ,r.teardownCallback=this.renderer.listen(t,e,t=>{r.events.next(t)}),r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}}let MY=(()=>{class t{constructor(t,e,n){this.elemRef=t,this.renderer=e,this.changeDetectionRef=n,this._position=0,this._dimension=0,this._alwaysHide=!1,this._vertical=!1,this._scale=1,this.opacity=1,this.visibility="visible",this.left="",this.bottom="",this.height="",this.width="",this.eventListeners=[],this.eventListenerHelper=new PY(this.renderer)}get position(){return this._position}get dimension(){return this._dimension}get alwaysHide(){return this._alwaysHide}get vertical(){return this._vertical}get scale(){return this._scale}setAlwaysHide(t){this._alwaysHide=t,this.visibility=t?"hidden":"visible"}hide(){this.opacity=0}show(){this.alwaysHide||(this.opacity=1)}isVisible(){return!this.alwaysHide&&0!==this.opacity}setVertical(t){this._vertical=t,this._vertical?(this.left="",this.width=""):(this.bottom="",this.height="")}setScale(t){this._scale=t}setPosition(t){this._position!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._position=t,this._vertical?this.bottom=Math.round(t)+"px":this.left=Math.round(t)+"px"}calculateDimension(){const t=this.getBoundingClientRect();this._dimension=this.vertical?(t.bottom-t.top)*this.scale:(t.right-t.left)*this.scale}setDimension(t){this._dimension!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._dimension=t,this._vertical?this.height=Math.round(t)+"px":this.width=Math.round(t)+"px"}getBoundingClientRect(){return this.elemRef.nativeElement.getBoundingClientRect()}on(t,e,n){const i=this.eventListenerHelper.attachEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}onPassive(t,e,n){const i=this.eventListenerHelper.attachPassiveEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}off(t){let e,n;OY.isNullOrUndefined(t)?(e=[],n=this.eventListeners):(e=this.eventListeners.filter(e=>e.eventName!==t),n=this.eventListeners.filter(e=>e.eventName===t));for(const i of n)this.eventListenerHelper.detachEventListener(i);this.eventListeners=e}isRefDestroyed(){return OY.isNullOrUndefined(this.changeDetectionRef)||this.changeDetectionRef.destroyed}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderElement",""]],hostVars:12,hostBindings:function(t,e){2&t&&La("opacity",e.opacity)("visibility",e.visibility)("left",e.left)("bottom",e.bottom)("height",e.height)("width",e.width)}}),t})(),IY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this.active=!1,this.role="",this.tabindex="",this.ariaOrientation="",this.ariaLabel="",this.ariaLabelledBy="",this.ariaValueNow="",this.ariaValueText="",this.ariaValueMin="",this.ariaValueMax=""}focus(){this.elemRef.nativeElement.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderHandle",""]],hostVars:11,hostBindings:function(t,e){2&t&&(Ko("role",e.role)("tabindex",e.tabindex)("aria-orientation",e.ariaOrientation)("aria-label",e.ariaLabel)("aria-labelledby",e.ariaLabelledBy)("aria-valuenow",e.ariaValueNow)("aria-valuetext",e.ariaValueText)("aria-valuemin",e.ariaValueMin)("aria-valuemax",e.ariaValueMax),ja("ng5-slider-active",e.active))},features:[jo]}),t})(),DY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this._value=null}get value(){return this._value}setValue(t){let e=!1;!this.alwaysHide&&(OY.isNullOrUndefined(this.value)||this.value.length!==t.length||this.value.length>0&&0===this.dimension)&&(e=!0),this._value=t,this.elemRef.nativeElement.innerHTML=t,e&&this.calculateDimension()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderLabel",""]],features:[jo]}),t})();class RY{constructor(){this.selected=!1,this.style={},this.tooltip=null,this.tooltipPlacement=null,this.value=null,this.valueTooltip=null,this.valueTooltipPlacement=null,this.legend=null}}class NY{constructor(){this.active=!1,this.value=0,this.difference=0,this.position=0,this.lowLimit=0,this.highLimit=0}}class LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue}}class jY extends LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue&&t.forceChange===e.forceChange}}const FY={provide:EV,useExisting:pt(()=>BY),multi:!0};let BY=(()=>{class t{constructor(t,e,n,i){this.renderer=t,this.elementRef=e,this.changeDetectionRef=n,this.zone=i,this.value=null,this.valueChange=new Rc,this.highValue=null,this.highValueChange=new Rc,this.options=new EY,this.userChangeStart=new Rc,this.userChange=new Rc,this.userChangeEnd=new Rc,this.initHasRun=!1,this.inputModelChangeSubject=new QX.xQ,this.inputModelChangeSubscription=null,this.outputModelChangeSubject=new QX.xQ,this.outputModelChangeSubscription=null,this.viewLowValue=null,this.viewHighValue=null,this.viewOptions=new EY,this.handleHalfDimension=0,this.maxHandlePosition=0,this.currentTrackingPointer=null,this.currentFocusPointer=null,this.firstKeyDown=!1,this.touchId=null,this.dragging=new NY,this.sliderElementVerticalClass=!1,this.sliderElementAnimateClass=!1,this.sliderElementDisabledAttr=null,this.barStyle={},this.minPointerStyle={},this.maxPointerStyle={},this.fullBarTransparentClass=!1,this.selectionBarDraggableClass=!1,this.ticksUnderValuesClass=!1,this.intermediateTicks=!1,this.ticks=[],this.eventListenerHelper=null,this.onMoveEventListener=null,this.onEndEventListener=null,this.resizeObserver=null,this.onTouchedCallback=null,this.onChangeCallback=null,this.eventListenerHelper=new PY(this.renderer)}set manualRefresh(t){this.unsubscribeManualRefresh(),this.manualRefreshSubscription=t.subscribe(()=>{setTimeout(()=>this.calculateViewDimensionsAndDetectChanges())})}set triggerFocus(t){this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=t.subscribe(t=>{this.focusPointer(t)})}get range(){return!OY.isNullOrUndefined(this.value)&&!OY.isNullOrUndefined(this.highValue)}get showTicks(){return this.viewOptions.showTicks}ngOnInit(){this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState()}ngAfterViewInit(){this.applyOptions(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval),this.subscribeOutputModelChangeSubject(this.viewOptions.outputEventsInterval),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}ngOnChanges(t){OY.isNullOrUndefined(t.options)||this.onChangeOptions(),(!OY.isNullOrUndefined(t.value)||!OY.isNullOrUndefined(t.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}ngOnDestroy(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}writeValue(t){t instanceof Array?(this.value=t[0],this.highValue=t[1]):this.value=t,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}registerOnChange(t){this.onChangeCallback=t}registerOnTouched(t){this.onTouchedCallback=t}setDisabledState(t){this.viewOptions.disabled=t,this.updateDisabledState()}onResize(t){this.calculateViewDimensionsAndDetectChanges()}subscribeInputModelChangeSubject(t){this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),(0,ZX.filter)(t=>!t.forceChange&&!t.internalChange),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.applyInputModelChange(t))}subscribeOutputModelChangeSubject(t){this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.publishOutputModelChange(t))}subscribeResizeObserver(){TY.isResizeObserverAvailable()&&(this.resizeObserver=new ResizeObserver(()=>this.calculateViewDimensionsAndDetectChanges()),this.resizeObserver.observe(this.elementRef.nativeElement))}unsubscribeResizeObserver(){TY.isResizeObserverAvailable()&&null!==this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}unsubscribeOnMove(){OY.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}unsubscribeOnEnd(){OY.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null)}unsubscribeInputModelChangeSubject(){OY.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}unsubscribeOutputModelChangeSubject(){OY.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}unsubscribeManualRefresh(){OY.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}unsubscribeTriggerFocus(){OY.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}getPointerElement(t){return t===xY.Min?this.minHandleElement:t===xY.Max?this.maxHandleElement:null}getCurrentTrackingValue(){return this.currentTrackingPointer===xY.Min?this.viewLowValue:this.currentTrackingPointer===xY.Max?this.viewHighValue:null}modelValueToViewValue(t){return OY.isNullOrUndefined(t)?NaN:OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+t:OY.findStepIndex(+t,this.viewOptions.stepsArray)}viewValueToModelValue(t){return OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?t:this.getStepValue(t)}getStepValue(t){const e=this.viewOptions.stepsArray[t];return OY.isNullOrUndefined(e)?NaN:e.value}applyViewChange(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!0})}applyInputModelChange(t){const e=this.normaliseModelValues(t),n=!LY.compare(t,e);n&&(this.value=e.value,this.highValue=e.highValue),this.viewLowValue=this.modelValueToViewValue(e.value),this.viewHighValue=this.range?this.modelValueToViewValue(e.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:e.value,highValue:e.highValue,forceChange:n,userEventInitiated:!1})}publishOutputModelChange(t){const e=()=>{this.valueChange.emit(t.value),this.range&&this.highValueChange.emit(t.highValue),OY.isNullOrUndefined(this.onChangeCallback)||this.onChangeCallback(this.range?[t.value,t.highValue]:t.value),OY.isNullOrUndefined(this.onTouchedCallback)||this.onTouchedCallback(this.range?[t.value,t.highValue]:t.value)};t.userEventInitiated?(e(),this.userChange.emit(this.getChangeContext())):setTimeout(()=>{e()})}normaliseModelValues(t){const e=new LY;if(e.value=t.value,e.highValue=t.highValue,this.viewOptions.enforceStep&&(e.value=this.roundStep(e.value),this.range&&(e.highValue=this.roundStep(e.highValue))),!OY.isNullOrUndefined(this.viewOptions.stepsArray)||!this.viewOptions.enforceRange)return e;if(e.value=kY.clampToRange(e.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(e.highValue=kY.clampToRange(e.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&t.value>t.highValue)if(this.viewOptions.noSwitching)e.value=e.highValue;else{const n=t.value;e.value=t.highValue,e.highValue=n}return e}renormaliseModelValues(){const t={value:this.value,highValue:this.highValue},e=this.normaliseModelValues(t);LY.compare(e,t)||(this.value=e.value,this.highValue=e.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!0,userEventInitiated:!1}))}onChangeOptions(){if(!this.initHasRun)return;const t=this.viewOptions.inputEventsInterval,e=this.viewOptions.outputEventsInterval;this.applyOptions(),t!==this.viewOptions.inputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval)),e!==this.viewOptions.outputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.outputEventsInterval)),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider()}applyOptions(){if(this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!OY.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!OY.isNullOrUndefined(this.viewOptions.tickStep)||!OY.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),OY.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),OY.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=(t,e)=>t+" - "+e),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}applyStepsArrayOptions(){this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(this.viewOptions.bindIndexForStepsArray?this.getStepValue(t):t)),this.viewOptions.getLegend=t=>this.viewOptions.stepsArray[t].legend}applyFloorCeilOptions(){if(OY.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),OY.isNullOrUndefined(this.viewOptions.ceil)||OY.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(t))}resetSlider(){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.unbindEvents(),this.manageEventsBindings(),this.updateDisabledState(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}focusPointer(t){t!==xY.Min&&t!==xY.Max&&(t=xY.Min),t===xY.Min?this.minHandleElement.focus():this.range&&t===xY.Max&&this.maxHandleElement.focus()}refocusPointerIfNeeded(){OY.isNullOrUndefined(this.currentFocusPointer)||(this.onPointerFocus(this.currentFocusPointer),this.getPointerElement(this.currentFocusPointer).focus())}manageElementsStyle(){this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);const t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(()=>{this.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(()=>{this.sliderElementAnimateClass=this.viewOptions.animate})}manageEventsBindings(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}updateDisabledState(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}updateVerticalState(){this.sliderElementVerticalClass=this.viewOptions.vertical;for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.setVertical(this.viewOptions.vertical)}updateScale(){for(const t of this.getAllSliderElements())t.setScale(this.viewOptions.scale)}getAllSliderElements(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}initHandles(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}addAccessibility(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.viewOptions.vertical&&(this.minHandleElement.ariaOrientation="vertical"),OY.isNullOrUndefined(this.viewOptions.ariaLabel)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical?"vertical":"horizontal",OY.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}updateAriaAttributes(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,SY.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,SY.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}calculateViewDimensions(){OY.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);const t=this.minHandleElement.dimension;this.handleHalfDimension=t/2,OY.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-t,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}calculateViewDimensionsAndDetectChanges(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}isRefDestroyed(){return this.changeDetectionRef.destroyed}updateTicksScale(){if(!this.viewOptions.showTicks)return;const t=OY.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,e=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();const n=t.map(t=>{let n=this.valueToPosition(t);this.viewOptions.vertical&&(n=this.maxHandlePosition-n);const i=e+"("+Math.round(n)+"px)",r=new RY;if(r.selected=this.isTickSelected(t),r.style={"-webkit-transform":i,"-moz-transform":i,"-o-transform":i,"-ms-transform":i,transform:i},r.selected&&!OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)&&(r.style["background-color"]=this.getSelectionBarColor()),!r.selected&&!OY.isNullOrUndefined(this.viewOptions.getTickColor)&&(r.style["background-color"]=this.getTickColor(t)),OY.isNullOrUndefined(this.viewOptions.ticksTooltip)||(r.tooltip=this.viewOptions.ticksTooltip(t),r.tooltipPlacement=this.viewOptions.vertical?"right":"top"),this.viewOptions.showTicksValues&&t%this.viewOptions.tickValueStep==0&&(r.value=this.getDisplayValue(t,SY.TickValue),OY.isNullOrUndefined(this.viewOptions.ticksValuesTooltip)||(r.valueTooltip=this.viewOptions.ticksValuesTooltip(t),r.valueTooltipPlacement=this.viewOptions.vertical?"right":"top")),!OY.isNullOrUndefined(this.viewOptions.getLegend)){const e=this.viewOptions.getLegend(t);OY.isNullOrUndefined(e)||(r.legend=e)}return r});if(OY.isNullOrUndefined(this.ticks)||this.ticks.length!==n.length)this.ticks=n;else for(let i=0;i=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&t<=this.viewLowValue)return!0}else{const e=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>e&&t>=e&&t<=this.viewLowValue)return!0;if(this.viewLowValue=this.viewLowValue)return!0}return!!(this.range&&t>=this.viewLowValue&&t<=this.viewHighValue)}updateFloorLabel(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,SY.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}updateCeilLabel(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,SY.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}updateHandles(t,e){t===xY.Min?this.updateLowHandle(e):t===xY.Max&&this.updateHighHandle(e),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}getHandleLabelPos(t,e){const n=t===xY.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,i=e-n/2+this.handleHalfDimension,r=this.fullBarElement.dimension-n;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&t===xY.Min||!this.viewOptions.rightToLeft&&t===xY.Max?Math.min(i,r):Math.min(Math.max(i,0),r):i}updateLowHandle(t){this.minHandleElement.setPosition(t),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,SY.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Min,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(xY.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateHighHandle(t){this.maxHandleElement.setPosition(t),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,SY.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Max,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(xY.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateFloorAndCeilLabelsVisibility(){if(this.viewOptions.hidePointerLabels)return;let t=!1,e=!1;const n=this.isLabelBelowFloorLabel(this.minHandleLabelElement),i=this.isLabelAboveCeilLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),s=this.isLabelBelowFloorLabel(this.combinedLabelElement),o=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(n?(t=!0,this.floorLabelElement.hide()):(t=!1,this.floorLabelElement.show()),i?(e=!0,this.ceilLabelElement.hide()):(e=!1,this.ceilLabelElement.show()),this.range){const i=this.combinedLabelElement.isVisible()?o:r,a=this.combinedLabelElement.isVisible()?s:n;i?this.ceilLabelElement.hide():e||this.ceilLabelElement.show(),a?this.floorLabelElement.hide():t||this.floorLabelElement.show()}}isLabelBelowFloorLabel(t){const e=t.position,n=this.floorLabelElement.position;return this.viewOptions.rightToLeft?e+t.dimension>=n-2:e<=n+this.floorLabelElement.dimension+2}isLabelAboveCeilLabel(t){const e=t.position,n=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?e<=n+this.ceilLabelElement.dimension+2:e+t.dimension>=n-2}updateSelectionBar(){let t=0,e=0;const n=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,i=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)e=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),t=i;else if(OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))n?(e=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),t=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(e=this.minHandleElement.position+this.handleHalfDimension,t=0);else{const n=this.viewOptions.showSelectionBarFromValue,i=this.valueToPosition(n);(this.viewOptions.rightToLeft?this.viewLowValue<=n:this.viewLowValue>n)?(e=this.minHandleElement.position-i,t=i+this.handleHalfDimension):(e=i-this.minHandleElement.position,t=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(e),this.selectionBarElement.setPosition(t),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(t),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.leftOuterSelectionBarElement.setPosition(t+e)):(this.leftOuterSelectionBarElement.setDimension(t),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.rightOuterSelectionBarElement.setPosition(t+e))),OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!OY.isNullOrUndefined(this.viewOptions.selectionBarGradient)){const i=OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),r=i-t>0&&!n||i-t<=0&&n;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?r?"bottom":"top":r?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(i+e+t+(r?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=i-t+(r?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{const t=this.getSelectionBarColor();this.barStyle={backgroundColor:t}}}getSelectionBarColor(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}getPointerColor(t){return this.viewOptions.getPointerColor(t===xY.Max?this.highValue:this.value,t)}getTickColor(t){return this.viewOptions.getTickColor(t)}updateCombinedLabel(){let t=null;if(t=this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position,t){const t=this.getDisplayValue(this.viewLowValue,SY.Low),e=this.getDisplayValue(this.viewHighValue,SY.High),n=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(e,t):this.viewOptions.combineLabels(t,e);this.combinedLabelElement.setValue(n);const i=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(i),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}getDisplayValue(t,e){return!OY.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(t=this.getStepValue(t)),this.viewOptions.translate(t,e)}roundStep(t,e){const n=OY.isNullOrUndefined(e)?this.viewOptions.step:e;let i=kY.roundToPrecisionLimit((t-this.viewOptions.floor)/n,this.viewOptions.precisionLimit);return i=Math.round(i)*n,kY.roundToPrecisionLimit(this.viewOptions.floor+i,this.viewOptions.precisionLimit)}valueToPosition(t){let e=OY.linearValueToPosition;OY.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(e=OY.logValueToPosition):e=this.viewOptions.customValueToPosition;let n=e(t=kY.clampToRange(t,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(n)&&(n=0),this.viewOptions.rightToLeft&&(n=1-n),n*this.maxHandlePosition}positionToValue(t){let e=t/this.maxHandlePosition;this.viewOptions.rightToLeft&&(e=1-e);let n=OY.linearPositionToValue;OY.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(n=OY.logPositionToValue):n=this.viewOptions.customPositionToValue;const i=n(e,this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(i)?0:i}getEventXY(t,e){if(t instanceof MouseEvent)return this.viewOptions.vertical?t.clientY:t.clientX;let n=0;const i=t.touches;if(!OY.isNullOrUndefined(e))for(let r=0;ri?xY.Max:this.viewOptions.rightToLeft?e>this.minHandleElement.position?xY.Min:xY.Max:ethis.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.on("mousedown",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.on("mousedown",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.on("mousedown",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.on("mousedown",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0,!0)))),this.viewOptions.onlyBindHandles||this.selectionBarElement.onPassive("touchstart",e=>this.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.onPassive("touchstart",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.onPassive("touchstart",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.onPassive("touchstart",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.onPassive("touchstart",t=>this.onStart(null,t,!1,!1,!0,!0)))),this.viewOptions.keyboardSupport&&(this.minHandleElement.on("focus",()=>this.onPointerFocus(xY.Min)),this.range&&this.maxHandleElement.on("focus",()=>this.onPointerFocus(xY.Max)))}unbindEvents(){this.unsubscribeOnMove(),this.unsubscribeOnEnd();for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.off()}onBarStart(t,e,n,i,r,s,o){e?this.onDragStart(t,n,i,r):this.onStart(t,n,i,r,s,o)}onStart(t,e,n,i,r,s){e.stopPropagation(),(!TY.isTouchEvent(e)||!JX.Z.hasSupport)&&e.preventDefault(),this.calculateViewDimensions(),OY.isNullOrUndefined(t)&&(t=this.getNearestHandle(e)),this.currentTrackingPointer=t;const o=this.getPointerElement(t);if(o.active=!0,this.viewOptions.keyboardSupport&&o.focus(),n){this.unsubscribeOnMove();const t=t=>this.dragging.active?this.onDragMove(t):this.onMove(t);this.onMoveEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchmove",t,this.viewOptions.touchEventsInterval):this.eventListenerHelper.attachEventListener(document,"mousemove",t,this.viewOptions.mouseEventsInterval)}if(i){this.unsubscribeOnEnd();const t=t=>this.onEnd(t);this.onEndEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchend",t):this.eventListenerHelper.attachEventListener(document,"mouseup",t)}this.userChangeStart.emit(this.getChangeContext()),TY.isTouchEvent(e)&&!OY.isNullOrUndefined(e.changedTouches)&&OY.isNullOrUndefined(this.touchId)&&(this.touchId=e.changedTouches[0].identifier),r&&this.onMove(e,!0),s&&this.onEnd(e)}onMove(t,e){let n=null;if(TY.isTouchEvent(t)){const e=t.changedTouches;for(let t=0;t=this.maxHandlePosition?r=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(r=this.positionToValue(i),r=e&&!OY.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(r,this.viewOptions.tickStep):this.roundStep(r)),this.positionTrackingHandle(r)}onEnd(t){TY.isTouchEvent(t)&&t.changedTouches[0].identifier!==this.touchId||(this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext()))}onPointerFocus(t){const e=this.getPointerElement(t);e.on("blur",()=>this.onPointerBlur(e)),e.on("keydown",t=>this.onKeyboardEvent(t)),e.on("keyup",()=>this.onKeyUp()),e.active=!0,this.currentTrackingPointer=t,this.currentFocusPointer=t,this.firstKeyDown=!0}onKeyUp(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}onPointerBlur(t){t.off("blur"),t.off("keydown"),t.off("keyup"),t.active=!1,OY.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}getKeyActions(t){const e=this.viewOptions.ceil-this.viewOptions.floor;let n=t+this.viewOptions.step,i=t-this.viewOptions.step,r=t+e/10,s=t-e/10;this.viewOptions.reversedControls&&(n=t-this.viewOptions.step,i=t+this.viewOptions.step,r=t-e/10,s=t+e/10);const o={UP:n,DOWN:i,LEFT:i,RIGHT:n,PAGEUP:r,PAGEDOWN:s,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(o.LEFT=n,o.RIGHT=i,this.viewOptions.vertical&&(o.UP=i,o.DOWN=n)),o}onKeyboardEvent(t){const e=this.getCurrentTrackingValue(),n=OY.isNullOrUndefined(t.keyCode)?t.which:t.keyCode,i=this.getKeyActions(e)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[n]];if(OY.isNullOrUndefined(i)||OY.isNullOrUndefined(this.currentTrackingPointer))return;t.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));const r=kY.clampToRange(i,this.viewOptions.floor,this.viewOptions.ceil),s=this.roundStep(r);if(this.viewOptions.draggableRangeOnly){const t=this.viewHighValue-this.viewLowValue;let e,n;this.currentTrackingPointer===xY.Min?(e=s,n=s+t,n>this.viewOptions.ceil&&(n=this.viewOptions.ceil,e=n-t)):this.currentTrackingPointer===xY.Max&&(n=s,e=s-t,e=this.maxHandlePosition-n;let a,l;if(e<=i){if(0===r.position)return;a=this.getMinValue(e,!0,!1),l=this.getMaxValue(e,!0,!1)}else if(o){if(s.position===this.maxHandlePosition)return;l=this.getMaxValue(e,!0,!0),a=this.getMinValue(e,!0,!0)}else a=this.getMinValue(e,!1,!1),l=this.getMaxValue(e,!1,!1);this.positionTrackingBar(a,l)}positionTrackingBar(t,e){!OY.isNullOrUndefined(this.viewOptions.minLimit)&&tthis.viewOptions.maxLimit&&(t=kY.roundToPrecisionLimit((e=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=t,this.viewHighValue=e,this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(t)),this.updateHandles(xY.Max,this.valueToPosition(e))}positionTrackingHandle(t){t=this.applyMinMaxLimit(t),this.range&&(this.viewOptions.pushRange?t=this.applyPushRange(t):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===xY.Min&&t>this.viewHighValue?t=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===xY.Max&&tthis.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(xY.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=xY.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===xY.Max&&tthis.viewOptions.maxLimit?this.viewOptions.maxLimit:t}applyMinMaxRange(t){const e=Math.abs(t-(this.currentTrackingPointer===xY.Min?this.viewHighValue:this.viewLowValue));if(!OY.isNullOrUndefined(this.viewOptions.minRange)&&ethis.viewOptions.maxRange){if(this.currentTrackingPointer===xY.Min)return kY.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===xY.Max)return kY.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return t}applyPushRange(t){const e=this.currentTrackingPointer===xY.Min?this.viewHighValue-t:t-this.viewLowValue,n=OY.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,i=this.viewOptions.maxRange;return ei&&(this.currentTrackingPointer===xY.Min?(this.viewHighValue=kY.roundToPrecisionLimit(t+i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===xY.Max&&(this.viewLowValue=kY.roundToPrecisionLimit(t-i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),t}getChangeContext(){const t=new CY;return t.pointerType=this.currentTrackingPointer,t.value=+this.value,this.range&&(t.highValue=+this.highValue),t}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl),ea(tc),ea(xu))},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,tY,5),2&t){let t;Wc(t=Yc())&&(e.tooltipTemplate=t.first)}},viewQuery:function(t,e){if(1&t&&(qc(eY,5,MY),qc(nY,5,MY),qc(iY,5,MY),qc(rY,5,MY),qc(sY,5,IY),qc(oY,5,IY),qc(aY,5,DY),qc(lY,5,DY),qc(cY,5,DY),qc(uY,5,DY),qc(hY,5,DY),qc(dY,5,MY)),2&t){let t;Wc(t=Yc())&&(e.leftOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.rightOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.fullBarElement=t.first),Wc(t=Yc())&&(e.selectionBarElement=t.first),Wc(t=Yc())&&(e.minHandleElement=t.first),Wc(t=Yc())&&(e.maxHandleElement=t.first),Wc(t=Yc())&&(e.floorLabelElement=t.first),Wc(t=Yc())&&(e.ceilLabelElement=t.first),Wc(t=Yc())&&(e.minHandleLabelElement=t.first),Wc(t=Yc())&&(e.maxHandleLabelElement=t.first),Wc(t=Yc())&&(e.combinedLabelElement=t.first),Wc(t=Yc())&&(e.ticksElement=t.first)}},hostAttrs:[1,"ng5-slider"],hostVars:5,hostBindings:function(t,e){1&t&&fa("resize",function(t){return e.onResize(t)},!1,Mr),2&t&&(Ko("disabled",e.sliderElementDisabledAttr),ja("vertical",e.sliderElementVerticalClass)("animate",e.sliderElementAnimateClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},features:[_l([FY]),ye],decls:29,vars:13,consts:[["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-left-out-selection"],["leftOuterSelectionBar",""],[1,"ng5-slider-span","ng5-slider-bar"],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-right-out-selection"],["rightOuterSelectionBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-full-bar"],["fullBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-selection-bar"],["selectionBar",""],[1,"ng5-slider-span","ng5-slider-bar","ng5-slider-selection",3,"ngStyle"],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-min",3,"ngStyle"],["minHandle",""],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-max",3,"ngStyle"],["maxHandle",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-floor"],["floorLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-ceil"],["ceilLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-value"],["minHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-high"],["maxHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-combined"],["combinedLabel",""],["ng5SliderElement","",1,"ng5-slider-ticks",3,"hidden"],["ticksElement",""],["class","ng5-slider-tick",3,"ngClass","ngStyle",4,"ngFor","ngForOf"],[1,"ng5-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],["class","ng5-slider-span ng5-slider-tick-value",3,"template","tooltip","placement","content",4,"ngIf"],["class","ng5-slider-span ng5-slider-tick-legend",3,"innerHTML",4,"ngIf"],[1,"ng5-slider-span","ng5-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ng5-slider-span","ng5-slider-tick-legend",3,"innerHTML"]],template:function(t,e){1&t&&(ra(0,"span",0,1),oa(2,"span",2),sa(),ra(3,"span",3,4),oa(5,"span",2),sa(),ra(6,"span",5,6),oa(8,"span",2),sa(),ra(9,"span",7,8),oa(11,"span",9),sa(),oa(12,"span",10,11),oa(14,"span",12,13),oa(16,"span",14,15),oa(18,"span",16,17),oa(20,"span",18,19),oa(22,"span",20,21),oa(24,"span",22,23),ra(26,"span",24,25),Jo(28,mY,4,9,"span",26),sa()),2&t&&(ws(6),ja("ng5-slider-transparent",e.fullBarTransparentClass),ws(3),ja("ng5-slider-draggable",e.selectionBarDraggableClass),ws(2),na("ngStyle",e.barStyle),ws(1),na("ngStyle",e.minPointerStyle),ws(2),La("display",e.range?"inherit":"none"),na("ngStyle",e.maxPointerStyle),ws(12),ja("ng5-slider-ticks-values-under",e.ticksUnderValuesClass),na("hidden",!e.showTicks),ws(2),na("ngForOf",e.ticks))},directives:function(){return[MY,Th,IY,DY,yh,mh,VY,_h]},styles:[".ng5-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y} .ng5-slider.with-legend{margin-bottom:40px} .ng5-slider[disabled]{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ng5-slider[disabled] .ng5-slider-draggable{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-selection{background:#8b91a2} .ng5-slider[disabled] .ng5-slider-tick{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-tick.ng5-slider-selected{background:#8b91a2} .ng5-slider .ng5-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ng5-slider .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider .ng5-slider-bar-wrapper{left:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ng5-slider .ng5-slider-draggable{cursor:move} .ng5-slider .ng5-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;border-radius:2px} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-transparent .ng5-slider-bar{background:0 0} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar{background:#df002d} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar{background:#03a688} .ng5-slider .ng5-slider-selection{z-index:2;background:#0db9f0;border-radius:2px} .ng5-slider .ng5-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;border-radius:16px} .ng5-slider .ng5-slider-pointer:after{content:'';width:8px;height:8px;position:absolute;top:12px;left:12px;border-radius:4px;background:#fff} .ng5-slider .ng5-slider-pointer:hover:after{background-color:#fff} .ng5-slider .ng5-slider-pointer.ng5-slider-active{z-index:4} .ng5-slider .ng5-slider-pointer.ng5-slider-active:after{background-color:#451aff} .ng5-slider .ng5-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ng5-slider .ng5-slider-bubble.ng5-slider-limit{color:#55637d} .ng5-slider .ng5-slider-ticks{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ng5-slider .ng5-slider-ticks-values-under .ng5-slider-tick-value{top:auto;bottom:-36px} .ng5-slider .ng5-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ng5-slider .ng5-slider-tick.ng5-slider-selected{background:#0db9f0} .ng5-slider .ng5-slider-tick-value{position:absolute;top:-34px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)} .ng5-slider .ng5-slider-tick-legend{position:absolute;top:24px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);max-width:50px;white-space:normal} .ng5-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;-ms-touch-action:pan-x;touch-action:pan-x} .ng5-slider.vertical .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider.vertical .ng5-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ng5-slider.vertical .ng5-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ng5-slider.vertical .ng5-slider-pointer{left:-14px!important;top:auto;bottom:0} .ng5-slider.vertical .ng5-slider-bubble{left:16px!important;bottom:0} .ng5-slider.vertical .ng5-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ng5-slider.vertical .ng5-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ng5-slider.vertical .ng5-slider-tick-value{left:24px;top:auto;-webkit-transform:translate(0,-28%);transform:translate(0,-28%)} .ng5-slider.vertical .ng5-slider-tick-legend{top:auto;right:24px;-webkit-transform:translate(0,-28%);transform:translate(0,-28%);max-width:none;white-space:nowrap} .ng5-slider.vertical .ng5-slider-ticks-values-under .ng5-slider-tick-value{bottom:auto;left:auto;right:24px} .ng5-slider *{-webkit-transition:none;transition:none} .ng5-slider.animate .ng5-slider-bar-wrapper{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-selection{-webkit-transition:background-color linear .3s;transition:background-color linear .3s} .ng5-slider.animate .ng5-slider-pointer{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-limit{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-combined{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-tick{-webkit-transition:background-color linear .3s;transition:background-color linear .3s}"]}),t})(),VY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},decls:2,vars:2,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ng5-slider-inner-tooltip"]],template:function(t,e){1&t&&(Jo(0,_Y,2,6,"ng-container",0),Jo(1,wY,3,3,"ng-container",0)),2&t&&(na("ngIf",e.template),ws(1),na("ngIf",!e.template))},directives:[_h,kh],styles:[".ng5-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]}),t})(),zY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),UY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Rf,Hp,cU,YX,zY]]}),t})(),HY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,AX,KX,UY,x_,f_]]}),t})(),$Y=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,HY]]}),t})(),GY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Az,Pz,kU,cU,jU,f_]]}),t})();class WY extends class{constructor(){this.expansionModel=new kp(!0)}toggle(t){this.expansionModel.toggle(this._trackByValue(t))}expand(t){this.expansionModel.select(this._trackByValue(t))}collapse(t){this.expansionModel.deselect(this._trackByValue(t))}isExpanded(t){return this.expansionModel.isSelected(this._trackByValue(t))}toggleDescendants(t){this.expansionModel.isSelected(this._trackByValue(t))?this.collapseDescendants(t):this.expandDescendants(t)}collapseAll(){this.expansionModel.clear()}expandDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.select(...e.map(t=>this._trackByValue(t)))}collapseDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.deselect(...e.map(t=>this._trackByValue(t)))}_trackByValue(t){return this.trackBy?this.trackBy(t):t}}{constructor(t,e,n){super(),this.getLevel=t,this.isExpandable=e,this.options=n,this.options&&(this.trackBy=this.options.trackBy)}getDescendants(t){const e=[];for(let n=this.dataNodes.indexOf(t)+1;nthis._trackByValue(t)))}}const qY=new oi("CDK_TREE_NODE_OUTLET_NODE");let XY=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeOutlet",""]]}),t})();class YY{constructor(t){this.$implicit=t}}let KY=(()=>{class t{constructor(t){this.template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeDef",""]],inputs:{when:["cdkTreeNodeDefWhen","when"]}}),t})(),QY=(()=>{class t{constructor(t,e){this._differs=t,this._changeDetectorRef=e,this._onDestroy=new P,this._levels=new Map,this.viewChange=new Uf({start:0,end:Number.MAX_VALUE})}get dataSource(){return this._dataSource}set dataSource(t){this._dataSource!==t&&this._switchDataSource(t)}ngOnInit(){this._dataDiffer=this._differs.find([]).create(this.trackBy)}ngOnDestroy(){this._nodeOutlet.viewContainer.clear(),this.viewChange.complete(),this._onDestroy.next(),this._onDestroy.complete(),this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null)}ngAfterContentChecked(){const t=this._nodeDefs.filter(t=>!t.when);this._defaultNodeDef=t[0],this.dataSource&&this._nodeDefs&&!this._dataSubscription&&this._observeRenderChanges()}_switchDataSource(t){this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null),t||this._nodeOutlet.viewContainer.clear(),this._dataSource=t,this._nodeDefs&&this._observeRenderChanges()}_observeRenderChanges(){let t;!function(t){return t&&"function"==typeof t.connect}(this._dataSource)?Dd(this._dataSource)?t=this._dataSource:Array.isArray(this._dataSource)&&(t=wd(this._dataSource)):t=this._dataSource.connect(this),t&&(this._dataSubscription=t.pipe(Wd(this._onDestroy)).subscribe(t=>this.renderNodeChanges(t)))}renderNodeChanges(t,e=this._dataDiffer,n=this._nodeOutlet.viewContainer,i){const r=e.diff(t);!r||(r.forEachOperation((e,r,s)=>{if(null==e.previousIndex)this.insertNode(t[s],s,n,i);else if(null==s)n.remove(r),this._levels.delete(e.item);else{const t=n.get(r);n.move(t,s)}}),this._changeDetectorRef.detectChanges())}_getNodeDef(t,e){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(n=>n.when&&n.when(e,t))||this._defaultNodeDef}insertNode(t,e,n,i){const r=this._getNodeDef(t,e),s=new YY(t);s.level=this.treeControl.getLevel?this.treeControl.getLevel(t):void 0!==i&&this._levels.has(i)?this._levels.get(i)+1:0,this._levels.set(t,s.level),(n||this._nodeOutlet.viewContainer).createEmbeddedView(r.template,s,e),ZY.mostRecentTreeNode&&(ZY.mostRecentTreeNode.data=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["cdk-tree"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,KY,5),2&t){let t;Wc(t=Yc())&&(e._nodeDefs=t)}},viewQuery:function(t,e){if(1&t&&qc(XY,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[XY],encapsulation:2}),t})(),ZY=(()=>{class t{constructor(e,n){this._elementRef=e,this._tree=n,this._destroyed=new P,this._dataChanges=new P,t.mostRecentTreeNode=this,this._elementRef.nativeElement.classList.add("cdk-tree-node"),this.role="treeitem"}get role(){return"treeitem"}set role(t){this._elementRef.nativeElement.setAttribute("role",t)}get data(){return this._data}set data(t){t!==this._data&&(this._data=t,this._setRoleFromData(),this._dataChanges.next())}get isExpanded(){return this._tree.treeControl.isExpanded(this._data)}_setExpanded(t){this._isAriaExpanded=t,this._elementRef.nativeElement.setAttribute("aria-expanded",`${t}`)}get level(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}ngOnInit(){this._parentNodeAriaLevel=function(t){let e=t.parentElement;for(;e&&!JY(e);)e=e.parentElement;return e?e.classList.contains("cdk-nested-tree-node")?bd(e.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level",`${this.level+1}`)}ngDoCheck(){this.isExpanded!=this._isAriaExpanded&&this._setExpanded(this.isExpanded)}ngOnDestroy(){t.mostRecentTreeNode===this&&(t.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}focus(){this._elementRef.nativeElement.focus()}_setRoleFromData(){this.role="treeitem"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY))},t.\u0275dir=se({type:t,selectors:[["cdk-tree-node"]],inputs:{role:"role"},exportAs:["cdkTreeNode"]}),t.mostRecentTreeNode=null,t})();function JY(t){const e=t.classList;return!(!(null==e?void 0:e.contains("cdk-nested-tree-node"))&&!(null==e?void 0:e.contains("cdk-tree")))}const tK=/([A-Za-z%]+)$/;let eK=(()=>{class t{constructor(t,e,n,i){this._treeNode=t,this._tree=e,this._element=n,this._dir=i,this._destroyed=new P,this.indentUnits="px",this._indent=40,this._setPadding(),i&&i.change.pipe(Wd(this._destroyed)).subscribe(()=>this._setPadding(!0)),t._dataChanges.subscribe(()=>this._setPadding())}get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_paddingIndent(){const t=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,e=null==this._level?t:this._level;return"number"==typeof e?`${e*this._indent}${this.indentUnits}`:null}_setPadding(t=!1){const e=this._paddingIndent();if(e!==this._currentPadding||t){const t=this._element.nativeElement,n=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",i="paddingLeft"===n?"paddingRight":"paddingLeft";t.style[n]=e||"",t.style[i]="",this._currentPadding=e}}_setLevelInput(t){this._level=bd(t,null),this._setPadding()}_setIndentInput(t){let e=t,n="px";if("string"==typeof t){const i=t.split(tK);e=i[0],n=i[1]||n}this.indentUnits=n,this._indent=bd(e),this._setPadding()}}return t.\u0275fac=function(e){return new(e||t)(ea(ZY),ea(QY),ea(kl),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),t})(),nK=(()=>{class t{constructor(t,e){this._tree=t,this._treeNode=e,this._recursive=!1}get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}_toggle(t){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),t.stopPropagation()}}return t.\u0275fac=function(e){return new(e||t)(ea(QY),ea(ZY))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(t,e){1&t&&fa("click",function(t){return e._toggle(t)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),t})(),iK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const rK=By(Ly(ZY));let sK=(()=>{class t extends rK{constructor(t,e,n){super(t,e),this.tabIndex=Number(n)||0,t.nativeElement.classList.add("mat-tree-node")}ngOnInit(){super.ngOnInit()}ngDoCheck(){super.ngDoCheck()}ngOnDestroy(){super.ngOnDestroy()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY),ni("tabindex"))},t.\u0275dir=se({type:t,selectors:[["mat-tree-node"]],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[_l([{provide:ZY,useExisting:t}]),jo]}),t})(),oK=(()=>{class t extends KY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[_l([{provide:KY,useExisting:t}]),jo]}),t})(),aK=(()=>{class t extends eK{get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[_l([{provide:eK,useExisting:t}]),jo]}),t})(),lK=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","matTreeNodeOutlet",""]],features:[_l([{provide:XY,useExisting:t}])]}),t})(),cK=(()=>{class t extends QY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-tree"]],viewQuery:function(t,e){if(1&t&&qc(lK,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"mat-tree","cdk-tree"],exportAs:["matTree"],features:[_l([{provide:QY,useExisting:t}]),jo],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[lK],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),t})(),uK=(()=>{class t extends nK{get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[_l([{provide:nK,useExisting:t}]),jo]}),t})(),hK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[iK,Ny],Ny]}),t})();class dK{constructor(t,e,n,i){this.transformFunction=t,this.getLevel=e,this.isExpandable=n,this.getChildren=i}_flattenNode(t,e,n,i){const r=this.transformFunction(t,e);if(n.push(r),this.isExpandable(r)){const r=this.getChildren(t);r&&(Array.isArray(r)?this._flattenChildren(r,e,n,i):r.pipe(Gp(1)).subscribe(t=>{this._flattenChildren(t,e,n,i)}))}return n}_flattenChildren(t,e,n,i){t.forEach((r,s)=>{let o=i.slice();o.push(s!=t.length-1),this._flattenNode(r,e+1,n,o)})}flattenNodes(t){let e=[];return t.forEach(t=>this._flattenNode(t,0,e,[])),e}expandFlattenedNodes(t,e){let n=[],i=[];return i[0]=!0,t.forEach(t=>{let r=!0;for(let e=0;e<=this.getLevel(t);e++)r=r&&i[e];r&&n.push(t),this.isExpandable(t)&&(i[this.getLevel(t)+1]=e.isExpanded(t))}),n}}class pK extends class{}{constructor(t,e,n){super(),this._treeControl=t,this._treeFlattener=e,this._flattenedData=new Uf([]),this._expandedData=new Uf([]),this._data=new Uf([]),n&&(this.data=n)}get data(){return this._data.value}set data(t){this._data.next(t),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}connect(t){return Q(t.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(D(()=>(this._expandedData.next(this._treeFlattener.expandFlattenedNodes(this._flattenedData.value,this._treeControl)),this._expandedData.value)))}disconnect(){}}let fK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,rw,hK,tq]]}),t})(),gK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK]]}),t})(),mK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK,gK],GY,fK,gK]}),t})();function bK(t){return null!==t&&"object"==typeof t&&"constructor"in t&&t.constructor===Object}function yK(t,e){void 0===t&&(t={}),void 0===e&&(e={}),Object.keys(e).forEach(function(n){void 0===t[n]?t[n]=e[n]:bK(e[n])&&bK(t[n])&&Object.keys(e[n]).length>0&&yK(t[n],e[n])})}var vK={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function _K(){var t="undefined"!=typeof document?document:{};return yK(t,vK),t}var wK={document:vK,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(t){return"undefined"==typeof setTimeout?(t(),null):setTimeout(t,0)},cancelAnimationFrame:function(t){"undefined"!=typeof setTimeout&&clearTimeout(t)}};function xK(){var t="undefined"!=typeof window?window:{};return yK(t,wK),t}function SK(t){return(SK=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function EK(t,e){return(EK=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function CK(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(m){return!1}}function OK(t,e,n){return(OK=CK()?Reflect.construct:function(t,e,n){var i=[null];i.push.apply(i,e);var r=new(Function.bind.apply(t,i));return n&&EK(r,n.prototype),r}).apply(null,arguments)}function TK(t){var e="function"==typeof Map?new Map:void 0;return(TK=function(t){if(null===t||!function(t){return-1!==Function.toString.call(t).indexOf("[native code]")}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return OK(t,arguments,SK(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),EK(n,t)})(t)}var kK=function(t){function e(e){var n;return function(t){var e=t.__proto__;Object.defineProperty(t,"__proto__",{get:function(){return e},set:function(t){e.__proto__=t}})}(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(n=t.call.apply(t,[this].concat(e))||this)),n}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(e,t),e}(TK(Array));function AK(t){void 0===t&&(t=[]);var e=[];return t.forEach(function(t){Array.isArray(t)?e.push.apply(e,AK(t)):e.push(t)}),e}function PK(t,e){return Array.prototype.filter.call(t,e)}function MK(t,e){var n=xK(),i=_K(),r=[];if(!e&&t instanceof kK)return t;if(!t)return new kK(r);if("string"==typeof t){var s=t.trim();if(s.indexOf("<")>=0&&s.indexOf(">")>=0){var o="div";0===s.indexOf("0}).length>0},toggleClass:function(){for(var t=arguments.length,e=new Array(t),n=0;n=0;p-=1){var f=d[p];s&&f.listener===s||s&&f.listener&&f.listener.dom7proxy&&f.listener.dom7proxy===s?(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1)):s||(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1))}}return this},trigger:function(){for(var t=xK(),e=arguments.length,n=new Array(e),i=0;i0}),c.dispatchEvent(u),c.dom7EventData=[],delete c.dom7EventData}}return this},transitionEnd:function(t){var e=this;return t&&e.on("transitionend",function n(i){i.target===this&&(t.call(this,i),e.off("transitionend",n))}),this},outerWidth:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetWidth+parseFloat(e.getPropertyValue("margin-right"))+parseFloat(e.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetHeight+parseFloat(e.getPropertyValue("margin-top"))+parseFloat(e.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){var t=xK();return this[0]?t.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var t=xK(),e=_K(),n=this[0],i=n.getBoundingClientRect(),r=e.body;return{top:i.top+(n===t?t.scrollY:n.scrollTop)-(n.clientTop||r.clientTop||0),left:i.left+(n===t?t.scrollX:n.scrollLeft)-(n.clientLeft||r.clientLeft||0)}}return null},css:function(t,e){var n,i=xK();if(1===arguments.length){if("string"!=typeof t){for(n=0;ne-1)return MK([]);if(t<0){var n=e+t;return MK(n<0?[]:[this[n]])}return MK([this[t]])},append:function(){for(var t,e=_K(),n=0;n=0;n-=1)this[e].insertBefore(r.childNodes[n],this[e].childNodes[0])}else if(t instanceof kK)for(n=0;n0?t?this[0].nextElementSibling&&MK(this[0].nextElementSibling).is(t)?MK([this[0].nextElementSibling]):MK([]):MK(this[0].nextElementSibling?[this[0].nextElementSibling]:[]):MK([])},nextAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.nextElementSibling;){var i=n.nextElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},prev:function(t){if(this.length>0){var e=this[0];return t?e.previousElementSibling&&MK(e.previousElementSibling).is(t)?MK([e.previousElementSibling]):MK([]):MK(e.previousElementSibling?[e.previousElementSibling]:[])}return MK([])},prevAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.previousElementSibling;){var i=n.previousElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},parent:function(t){for(var e=[],n=0;n=0,observer:"MutationObserver"in t||"WebkitMutationObserver"in t,passiveListener:function(){var e=!1;try{var n=Object.defineProperty({},"passive",{get:function(){e=!0}});t.addEventListener("testPassiveListener",null,n)}catch(i){}return e}(),gestures:"ongesturestart"in t}}()),NK}function WK(t){return void 0===t&&(t={}),LK||(LK=function(t){var e=(void 0===t?{}:t).userAgent,n=GK(),i=xK(),r=i.navigator.platform,s=e||i.navigator.userAgent,o={ios:!1,android:!1},a=i.screen.width,l=i.screen.height,c=s.match(/(Android);?[\s\/]+([\d.]+)?/),u=s.match(/(iPad).*OS\s([\d_]+)/),h=s.match(/(iPod)(.*OS\s([\d_]+))?/),d=!u&&s.match(/(iPhone\sOS|iOS)\s([\d_]+)/),p="Win32"===r,f="MacIntel"===r;return!u&&f&&n.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(a+"x"+l)>=0&&((u=s.match(/(Version)\/([\d.]+)/))||(u=[0,1,"13_0_0"]),f=!1),c&&!p&&(o.os="android",o.android=!0),(u||d||h)&&(o.os="ios",o.ios=!0),o}(t)),LK}function qK(){return jK||(jK=function(){var t,e=xK();return{isEdge:!!e.navigator.userAgent.match(/Edge/g),isSafari:(t=e.navigator.userAgent.toLowerCase(),t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent)}}()),jK}var XK={name:"resize",create:function(){var t=this;HK(t,{resize:{observer:null,createObserver:function(){!t||t.destroyed||!t.initialized||(t.resize.observer=new ResizeObserver(function(e){var n=t.width,i=t.height,r=n,s=i;e.forEach(function(e){var n=e.contentBoxSize,i=e.contentRect,o=e.target;o&&o!==t.el||(r=i?i.width:(n[0]||n).inlineSize,s=i?i.height:(n[0]||n).blockSize)}),(r!==n||s!==i)&&t.resize.resizeHandler()}),t.resize.observer.observe(t.el))},removeObserver:function(){t.resize.observer&&t.resize.observer.unobserve&&t.el&&(t.resize.observer.unobserve(t.el),t.resize.observer=null)},resizeHandler:function(){!t||t.destroyed||!t.initialized||(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler:function(){!t||t.destroyed||!t.initialized||t.emit("orientationchange")}}})},on:{init:function(t){var e=xK();t.params.resizeObserver&&void 0!==xK().ResizeObserver?t.resize.createObserver():(e.addEventListener("resize",t.resize.resizeHandler),e.addEventListener("orientationchange",t.resize.orientationChangeHandler))},destroy:function(t){var e=xK();t.resize.removeObserver(),e.removeEventListener("resize",t.resize.resizeHandler),e.removeEventListener("orientationchange",t.resize.orientationChangeHandler)}}};function YK(){return(YK=Object.assign||function(t){for(var e=1;e0)&&(!r.isTouched||!r.isMoved))){s.noSwipingClass&&""!==s.noSwipingClass&&a.target&&a.target.shadowRoot&&t.path&&t.path[0]&&(l=FK(t.path[0]));var c=s.noSwipingSelector?s.noSwipingSelector:"."+s.noSwipingClass;if(s.noSwiping&&(a.target&&a.target.shadowRoot?function(t,e){return void 0===e&&(e=this),function e(n){return n&&n!==_K()&&n!==xK()?(n.assignedSlot&&(n=n.assignedSlot),n.closest(t)||e(n.getRootNode().host)):null}(e)}(c,a.target):l.closest(c)[0]))return void(e.allowClick=!0);if(!s.swipeHandler||l.closest(s.swipeHandler)[0]){o.currentX="touchstart"===a.type?a.targetTouches[0].pageX:a.pageX,o.currentY="touchstart"===a.type?a.targetTouches[0].pageY:a.pageY;var u=o.currentX,h=o.currentY,d=s.edgeSwipeDetection||s.iOSEdgeSwipeDetection,p=s.edgeSwipeThreshold||s.iOSEdgeSwipeThreshold;if(d&&(u<=p||u>=i.innerWidth-p)){if("prevent"!==d)return;t.preventDefault()}if(HK(r,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=u,o.startY=h,r.touchStartTime=VK(),e.allowClick=!0,e.updateSize(),e.swipeDirection=void 0,s.threshold>0&&(r.allowThresholdMove=!1),"touchstart"!==a.type){var f=!0;l.is(r.focusableElements)&&(f=!1),n.activeElement&&FK(n.activeElement).is(r.focusableElements)&&n.activeElement!==l[0]&&n.activeElement.blur(),(s.touchStartForcePreventDefault||f&&e.allowTouchMove&&s.touchStartPreventDefault)&&!l[0].isContentEditable&&a.preventDefault()}e.emit("touchStart",a)}}}}function JK(t){var e=_K(),n=this,i=n.touchEventsData,r=n.params,s=n.touches,o=n.rtlTranslate;if(n.enabled){var a=t;if(a.originalEvent&&(a=a.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&n.emit("touchMoveOpposite",a));if(!i.isTouchEvent||"touchmove"===a.type){var l="touchmove"===a.type&&a.targetTouches&&(a.targetTouches[0]||a.changedTouches[0]),c="touchmove"===a.type?l.pageX:a.pageX,u="touchmove"===a.type?l.pageY:a.pageY;if(a.preventedByNestedSwiper)return s.startX=c,void(s.startY=u);if(!n.allowTouchMove)return n.allowClick=!1,void(i.isTouched&&(HK(s,{startX:c,startY:u,currentX:c,currentY:u}),i.touchStartTime=VK()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(n.isVertical()){if(us.startY&&n.translate>=n.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(cs.startX&&n.translate>=n.minTranslate())return;if(i.isTouchEvent&&e.activeElement&&a.target===e.activeElement&&FK(a.target).is(i.focusableElements))return i.isMoved=!0,void(n.allowClick=!1);if(i.allowTouchCallbacks&&n.emit("touchMove",a),!(a.targetTouches&&a.targetTouches.length>1)){s.currentX=c,s.currentY=u;var h=s.currentX-s.startX,d=s.currentY-s.startY;if(!(n.params.threshold&&Math.sqrt(Math.pow(h,2)+Math.pow(d,2))=25&&(p=180*Math.atan2(Math.abs(d),Math.abs(h))/Math.PI,i.isScrolling=n.isHorizontal()?p>r.touchAngle:90-p>r.touchAngle)),i.isScrolling&&n.emit("touchMoveOpposite",a),void 0===i.startMoving&&(s.currentX!==s.startX||s.currentY!==s.startY)&&(i.startMoving=!0),i.isScrolling)return void(i.isTouched=!1);if(i.startMoving){n.allowClick=!1,!r.cssMode&&a.cancelable&&a.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&a.stopPropagation(),i.isMoved||(r.loop&&n.loopFix(),i.startTranslate=n.getTranslate(),n.setTransition(0),n.animating&&n.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,r.grabCursor&&(!0===n.allowSlideNext||!0===n.allowSlidePrev)&&n.setGrabCursor(!0),n.emit("sliderFirstMove",a)),n.emit("sliderMove",a),i.isMoved=!0;var f=n.isHorizontal()?h:d;s.diff=f,f*=r.touchRatio,o&&(f=-f),n.swipeDirection=f>0?"prev":"next",i.currentTranslate=f+i.startTranslate;var g=!0,m=r.resistanceRatio;if(r.touchReleaseOnEdges&&(m=0),f>0&&i.currentTranslate>n.minTranslate()?(g=!1,r.resistance&&(i.currentTranslate=n.minTranslate()-1+Math.pow(-n.minTranslate()+i.startTranslate+f,m))):f<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),!n.allowSlidePrev&&!n.allowSlideNext&&(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(f)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,s.startX=s.currentX,s.startY=s.currentY,i.currentTranslate=i.startTranslate,void(s.diff=n.isHorizontal()?s.currentX-s.startX:s.currentY-s.startY)}!r.followFinger||r.cssMode||((r.freeMode||r.watchSlidesProgress||r.watchSlidesVisibility)&&(n.updateActiveIndex(),n.updateSlidesClasses()),r.freeMode&&(0===i.velocities.length&&i.velocities.push({position:s[n.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:s[n.isHorizontal()?"currentX":"currentY"],time:VK()})),n.updateProgress(i.currentTranslate),n.setTranslate(i.currentTranslate))}}}}}}function tQ(t){var e=this,n=e.touchEventsData,i=e.params,r=e.touches,s=e.rtlTranslate,o=e.$wrapperEl,a=e.slidesGrid,l=e.snapGrid;if(e.enabled){var c=t;if(c.originalEvent&&(c=c.originalEvent),n.allowTouchCallbacks&&e.emit("touchEnd",c),n.allowTouchCallbacks=!1,!n.isTouched)return n.isMoved&&i.grabCursor&&e.setGrabCursor(!1),n.isMoved=!1,void(n.startMoving=!1);i.grabCursor&&n.isMoved&&n.isTouched&&(!0===e.allowSlideNext||!0===e.allowSlidePrev)&&e.setGrabCursor(!1);var u,h=VK(),d=h-n.touchStartTime;if(e.allowClick&&(e.updateClickedSlide(c),e.emit("tap click",c),d<300&&h-n.lastClickTime<300&&e.emit("doubleTap doubleClick",c)),n.lastClickTime=VK(),BK(function(){e.destroyed||(e.allowClick=!0)}),!n.isTouched||!n.isMoved||!e.swipeDirection||0===r.diff||n.currentTranslate===n.startTranslate)return n.isTouched=!1,n.isMoved=!1,void(n.startMoving=!1);if(n.isTouched=!1,n.isMoved=!1,n.startMoving=!1,u=i.followFinger?s?e.translate:-e.translate:-n.currentTranslate,!i.cssMode){if(i.freeMode){if(u<-e.minTranslate())return void e.slideTo(e.activeIndex);if(u>-e.maxTranslate())return void e.slideTo(e.slides.length1){var p=n.velocities.pop(),f=n.velocities.pop(),g=p.time-f.time;e.velocity=(p.position-f.position)/g,e.velocity/=2,Math.abs(e.velocity)150||VK()-p.time>300)&&(e.velocity=0)}else e.velocity=0;e.velocity*=i.freeModeMomentumVelocityRatio,n.velocities.length=0;var m=1e3*i.freeModeMomentumRatio,b=e.translate+e.velocity*m;s&&(b=-b);var y,v,_=!1,w=20*Math.abs(e.velocity)*i.freeModeMomentumBounceRatio;if(be.minTranslate())i.freeModeMomentumBounce?(b-e.minTranslate()>w&&(b=e.minTranslate()+w),y=e.minTranslate(),_=!0,n.allowMomentumBounce=!0):b=e.minTranslate(),i.loop&&i.centeredSlides&&(v=!0);else if(i.freeModeSticky){for(var x,S=0;S-b){x=S;break}b=-(b=Math.abs(l[x]-b)=i.longSwipesMs)&&(e.updateProgress(),e.updateActiveIndex(),e.updateSlidesClasses()))}for(var O=0,T=e.slidesSizesGrid[0],k=0;k=a[k]&&u=a[k]&&(O=k,T=a[a.length-1]-a[a.length-2])}var P=(u-a[O])/T,M=Oi.longSwipesMs){if(!i.longSwipes)return void e.slideTo(e.activeIndex);"next"===e.swipeDirection&&e.slideTo(P>=i.longSwipesRatio?O+M:O),"prev"===e.swipeDirection&&e.slideTo(P>1-i.longSwipesRatio?O+M:O)}else{if(!i.shortSwipes)return void e.slideTo(e.activeIndex);!e.navigation||c.target!==e.navigation.nextEl&&c.target!==e.navigation.prevEl?("next"===e.swipeDirection&&e.slideTo(O+M),"prev"===e.swipeDirection&&e.slideTo(O)):e.slideTo(c.target===e.navigation.nextEl?O+M:O)}}}}function eQ(){var t=this,e=t.params,n=t.el;if(!n||0!==n.offsetWidth){e.breakpoints&&t.setBreakpoint();var i=t.allowSlideNext,r=t.allowSlidePrev,s=t.snapGrid;t.allowSlideNext=!0,t.allowSlidePrev=!0,t.updateSize(),t.updateSlides(),t.updateSlidesClasses(),t.slideTo(("auto"===e.slidesPerView||e.slidesPerView>1)&&t.isEnd&&!t.isBeginning&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0),t.autoplay&&t.autoplay.running&&t.autoplay.paused&&t.autoplay.run(),t.allowSlidePrev=r,t.allowSlideNext=i,t.params.watchOverflow&&s!==t.snapGrid&&t.checkOverflow()}}function nQ(t){var e=this;!e.enabled||e.allowClick||(e.params.preventClicks&&t.preventDefault(),e.params.preventClicksPropagation&&e.animating&&(t.stopPropagation(),t.stopImmediatePropagation()))}function iQ(){var t=this,e=t.wrapperEl,n=t.rtlTranslate;if(t.enabled){t.previousTranslate=t.translate,t.translate=t.isHorizontal()?n?e.scrollWidth-e.offsetWidth-e.scrollLeft:-e.scrollLeft:-e.scrollTop,-0===t.translate&&(t.translate=0),t.updateActiveIndex(),t.updateSlidesClasses();var i=t.maxTranslate()-t.minTranslate();(0===i?0:(t.translate-t.minTranslate())/i)!==t.progress&&t.updateProgress(n?-t.translate:t.translate),t.emit("setTranslate",t.translate,!1)}}var rQ=!1;function sQ(){}var oQ={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!1,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};function aQ(t,e){for(var n=0;n=0&&e.eventsAnyListeners.splice(n,1),e},off:function(t,e){var n=this;return n.eventsListeners&&t.split(" ").forEach(function(t){void 0===e?n.eventsListeners[t]=[]:n.eventsListeners[t]&&n.eventsListeners[t].forEach(function(i,r){(i===e||i.__emitterProxy&&i.__emitterProxy===e)&&n.eventsListeners[t].splice(r,1)})}),n},emit:function(){var t=this;if(!t.eventsListeners)return t;for(var e,n,i,r=arguments.length,s=new Array(r),o=0;o=0&&(v=parseFloat(v.replace("%",""))/100*s),t.virtualSize=-v,u.css(o?{marginLeft:"",marginBottom:"",marginTop:""}:{marginRight:"",marginBottom:"",marginTop:""}),i.slidesPerColumn>1&&(S=Math.floor(h/i.slidesPerColumn)===h/t.params.slidesPerColumn?h:Math.ceil(h/i.slidesPerColumn)*i.slidesPerColumn,"auto"!==i.slidesPerView&&"row"===i.slidesPerColumnFill&&(S=Math.max(S,i.slidesPerView*i.slidesPerColumn)));for(var T,k=i.slidesPerColumn,A=S/k,P=Math.floor(h/i.slidesPerColumn),M=0;M1){var D=void 0,R=void 0,N=void 0;if("row"===i.slidesPerColumnFill&&i.slidesPerGroup>1){var L=Math.floor(M/(i.slidesPerGroup*i.slidesPerColumn)),j=M-i.slidesPerColumn*i.slidesPerGroup*L,F=0===L?i.slidesPerGroup:Math.min(Math.ceil((h-L*k*i.slidesPerGroup)/k),i.slidesPerGroup);N=Math.floor(j/F),I.css({"-webkit-box-ordinal-group":D=(R=j-N*F+L*i.slidesPerGroup)+N*S/k,"-moz-box-ordinal-group":D,"-ms-flex-order":D,"-webkit-order":D,order:D})}else"column"===i.slidesPerColumnFill?(N=M-(R=Math.floor(M/k))*k,(R>P||R===P&&N===k-1)&&(N+=1)>=k&&(N=0,R+=1)):R=M-(N=Math.floor(M/A))*A;I.css(e("margin-top"),0!==N?i.spaceBetween&&i.spaceBetween+"px":"")}if("none"!==I.css("display")){if("auto"===i.slidesPerView){var B=getComputedStyle(I[0]),V=I[0].style.transform,z=I[0].style.webkitTransform;if(V&&(I[0].style.transform="none"),z&&(I[0].style.webkitTransform="none"),i.roundLengths)T=t.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else{var U=n(B,"width"),H=n(B,"padding-left"),$=n(B,"padding-right"),G=n(B,"margin-left"),W=n(B,"margin-right"),q=B.getPropertyValue("box-sizing");if(q&&"border-box"===q)T=U+G+W;else{var X=I[0];T=U+H+$+G+W+(X.offsetWidth-X.clientWidth)}}V&&(I[0].style.transform=V),z&&(I[0].style.webkitTransform=z),i.roundLengths&&(T=Math.floor(T))}else T=(s-(i.slidesPerView-1)*v)/i.slidesPerView,i.roundLengths&&(T=Math.floor(T)),u[M]&&(u[M].style[e("width")]=T+"px");u[M]&&(u[M].swiperSlideSize=T),f.push(T),i.centeredSlides?(_=_+T/2+w/2+v,0===w&&0!==M&&(_=_-s/2-v),0===M&&(_=_-s/2-v),Math.abs(_)<.001&&(_=0),i.roundLengths&&(_=Math.floor(_)),x%i.slidesPerGroup==0&&d.push(_),p.push(_)):(i.roundLengths&&(_=Math.floor(_)),(x-Math.min(t.params.slidesPerGroupSkip,x))%t.params.slidesPerGroup==0&&d.push(_),p.push(_),_=_+T+v),t.virtualSize+=T+v,w=T,x+=1}}if(t.virtualSize=Math.max(t.virtualSize,s)+m,o&&a&&("slide"===i.effect||"coverflow"===i.effect)&&r.css({width:t.virtualSize+i.spaceBetween+"px"}),i.setWrapperSize&&r.css(((C={})[e("width")]=t.virtualSize+i.spaceBetween+"px",C)),i.slidesPerColumn>1&&(t.virtualSize=(T+i.spaceBetween)*S,t.virtualSize=Math.ceil(t.virtualSize/i.slidesPerColumn)-i.spaceBetween,r.css(((O={})[e("width")]=t.virtualSize+i.spaceBetween+"px",O)),i.centeredSlides)){E=[];for(var Y=0;Y1&&d.push(t.virtualSize-s)}if(0===d.length&&(d=[0]),0!==i.spaceBetween){var J,tt=t.isHorizontal()&&o?"marginLeft":e("marginRight");u.filter(function(t,e){return!i.cssMode||e!==u.length-1}).css(((J={})[tt]=v+"px",J))}if(i.centeredSlides&&i.centeredSlidesBounds){var et=0;f.forEach(function(t){et+=t+(i.spaceBetween?i.spaceBetween:0)});var nt=(et-=i.spaceBetween)-s;d=d.map(function(t){return t<0?-g:t>nt?nt+m:t})}if(i.centerInsufficientSlides){var it=0;if(f.forEach(function(t){it+=t+(i.spaceBetween?i.spaceBetween:0)}),(it-=i.spaceBetween)1)if(n.params.centeredSlides)n.visibleSlides.each(function(t){i.push(t)});else for(e=0;en.slides.length&&!r)break;i.push(o(a))}else i.push(o(n.activeIndex));for(e=0;es?l:s}s&&n.$wrapperEl.css("height",s+"px")},updateSlidesOffset:function(){for(var t=this.slides,e=0;e=0&&c1&&u<=e.size||c<=0&&u>=e.size)&&(e.visibleSlides.push(a),e.visibleSlidesIndexes.push(o),i.eq(o).addClass(n.slideVisibleClass))}a.progress=r?-l:l}e.visibleSlides=FK(e.visibleSlides)}},updateProgress:function(t){var e=this;void 0===t&&(t=e&&e.translate&&e.translate*(e.rtlTranslate?-1:1)||0);var n=e.params,i=e.maxTranslate()-e.minTranslate(),r=e.progress,s=e.isBeginning,o=e.isEnd,a=s,l=o;0===i?(r=0,s=!0,o=!0):(s=(r=(t-e.minTranslate())/i)<=0,o=r>=1),HK(e,{progress:r,isBeginning:s,isEnd:o}),(n.watchSlidesProgress||n.watchSlidesVisibility||n.centeredSlides&&n.autoHeight)&&e.updateSlidesProgress(t),s&&!a&&e.emit("reachBeginning toEdge"),o&&!l&&e.emit("reachEnd toEdge"),(a&&!s||l&&!o)&&e.emit("fromEdge"),e.emit("progress",r)},updateSlidesClasses:function(){var t,e=this,n=e.slides,i=e.params,r=e.$wrapperEl,s=e.activeIndex,o=e.realIndex,a=e.virtual&&i.virtual.enabled;n.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(t=a?e.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+s+'"]'):n.eq(s)).addClass(i.slideActiveClass),i.loop&&(t.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass));var l=t.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===l.length&&(l=n.eq(0)).addClass(i.slideNextClass);var c=t.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=n.eq(-1)).addClass(i.slidePrevClass),i.loop&&(l.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),e.emitSlidesClasses()},updateActiveIndex:function(t){var e,n=this,i=n.rtlTranslate?n.translate:-n.translate,r=n.slidesGrid,s=n.snapGrid,o=n.params,a=n.activeIndex,l=n.realIndex,c=n.snapIndex,u=t;if(void 0===u){for(var h=0;h=r[h]&&i=r[h]&&i=r[h]&&(u=h);o.normalizeSlideIndex&&(u<0||void 0===u)&&(u=0)}if(s.indexOf(i)>=0)e=s.indexOf(i);else{var d=Math.min(o.slidesPerGroupSkip,u);e=d+Math.floor((u-d)/o.slidesPerGroup)}if(e>=s.length&&(e=s.length-1),u!==a){var p=parseInt(n.slides.eq(u).attr("data-swiper-slide-index")||u,10);HK(n,{snapIndex:e,realIndex:p,previousIndex:a,activeIndex:u}),n.emit("activeIndexChange"),n.emit("snapIndexChange"),l!==p&&n.emit("realIndexChange"),(n.initialized||n.params.runCallbacksOnInit)&&n.emit("slideChange")}else e!==c&&(n.snapIndex=e,n.emit("snapIndexChange"))},updateClickedSlide:function(t){var e,n=this,i=n.params,r=FK(t.target).closest("."+i.slideClass)[0],s=!1;if(r)for(var o=0;o6&&(i=i.split(", ").map(function(t){return t.replace(",",".")}).join(", ")),r=new s.WebKitCSSMatrix("none"===i?"":i)):n=(r=o.MozTransform||o.OTransform||o.MsTransform||o.msTransform||o.transform||o.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===e&&(i=s.WebKitCSSMatrix?r.m41:16===n.length?parseFloat(n[12]):parseFloat(n[4])),"y"===e&&(i=s.WebKitCSSMatrix?r.m42:16===n.length?parseFloat(n[13]):parseFloat(n[5])),i||0}(e.$wrapperEl[0],t);return i&&(s=-s),s||0},setTranslate:function(t,e){var n=this,i=n.rtlTranslate,r=n.params,s=n.$wrapperEl,o=n.wrapperEl,a=n.progress,l=0,c=0;n.isHorizontal()?l=i?-t:t:c=t,r.roundLengths&&(l=Math.floor(l),c=Math.floor(c)),r.cssMode?o[n.isHorizontal()?"scrollLeft":"scrollTop"]=n.isHorizontal()?-l:-c:r.virtualTranslate||s.transform("translate3d("+l+"px, "+c+"px, 0px)"),n.previousTranslate=n.translate,n.translate=n.isHorizontal()?l:c;var u=n.maxTranslate()-n.minTranslate();(0===u?0:(t-n.minTranslate())/u)!==a&&n.updateProgress(t),n.emit("setTranslate",n.translate,e)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(t,e,n,i,r){void 0===t&&(t=0),void 0===e&&(e=this.params.speed),void 0===n&&(n=!0),void 0===i&&(i=!0);var s=this,o=s.params,a=s.wrapperEl;if(s.animating&&o.preventInteractionOnTransition)return!1;var l,c=s.minTranslate(),u=s.maxTranslate();if(s.updateProgress(l=i&&t>c?c:i&&ts?"next":ir?"next":i=c.length&&(m=c.length-1),(d||l.initialSlide||0)===(h||0)&&n&&o.emit("beforeSlideChangeStart");var b,y=-c[m];if(o.updateProgress(y),l.normalizeSlideIndex)for(var v=0;v=w&&_=w&&_=w&&(a=v)}if(o.initialized&&a!==d&&(!o.allowSlideNext&&yo.translate&&y>o.maxTranslate()&&(d||0)!==a))return!1;if(b=a>d?"next":a=t&&(d=t)}),void 0!==d&&(c=o.indexOf(d))<0&&(c=i.activeIndex-1),i.slideTo(c,t,e,n)},slideReset:function(t,e,n){return void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),this.slideTo(this.activeIndex,t,e,n)},slideToClosest:function(t,e,n,i){void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),void 0===i&&(i=.5);var r=this,s=r.activeIndex,o=Math.min(r.params.slidesPerGroupSkip,s),a=o+Math.floor((s-o)/r.params.slidesPerGroup),l=r.rtlTranslate?r.translate:-r.translate;if(l>=r.snapGrid[a]){var c=r.snapGrid[a];l-c>(r.snapGrid[a+1]-c)*i&&(s+=r.params.slidesPerGroup)}else{var u=r.snapGrid[a-1];l-u<=(r.snapGrid[a]-u)*i&&(s-=r.params.slidesPerGroup)}return s=Math.max(s,0),s=Math.min(s,r.slidesGrid.length-1),r.slideTo(s,t,e,n)},slideToClickedSlide:function(){var t,e=this,n=e.params,i=e.$wrapperEl,r="auto"===n.slidesPerView?e.slidesPerViewDynamic():n.slidesPerView,s=e.clickedIndex;if(n.loop){if(e.animating)return;t=parseInt(FK(e.clickedSlide).attr("data-swiper-slide-index"),10),n.centeredSlides?se.slides.length-e.loopedSlides+r/2?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s):s>e.slides.length-r?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s)}else e.slideTo(s)}},loop:{loopCreate:function(){var t=this,e=_K(),n=t.params,i=t.$wrapperEl;i.children("."+n.slideClass+"."+n.slideDuplicateClass).remove();var r=i.children("."+n.slideClass);if(n.loopFillGroupWithBlank){var s=n.slidesPerGroup-r.length%n.slidesPerGroup;if(s!==n.slidesPerGroup){for(var o=0;or.length&&(t.loopedSlides=r.length);var l=[],c=[];r.each(function(e,n){var i=FK(e);n=r.length-t.loopedSlides&&l.push(e),i.attr("data-swiper-slide-index",n)});for(var u=0;u=0;h-=1)i.prepend(FK(l[h].cloneNode(!0)).addClass(n.slideDuplicateClass))},loopFix:function(){var t=this;t.emit("beforeLoopFix");var e,n=t.activeIndex,i=t.slides,r=t.loopedSlides,s=t.allowSlidePrev,o=t.allowSlideNext,a=t.snapGrid,l=t.rtlTranslate;t.allowSlidePrev=!0,t.allowSlideNext=!0;var c=-a[n]-t.getTranslate();n=i.length-r&&(e=-i.length+n+r,t.slideTo(e+=r,0,!1,!0)&&0!==c&&t.setTranslate((l?-t.translate:t.translate)-c)),t.allowSlidePrev=s,t.allowSlideNext=o,t.emit("loopFix")},loopDestroy:function(){var t=this,e=t.params,n=t.slides;t.$wrapperEl.children("."+e.slideClass+"."+e.slideDuplicateClass+",."+e.slideClass+"."+e.slideBlankClass).remove(),n.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(t){var e=this;if(!(e.support.touch||!e.params.simulateTouch||e.params.watchOverflow&&e.isLocked||e.params.cssMode)){var n=e.el;n.style.cursor="move",n.style.cursor=t?"-webkit-grabbing":"-webkit-grab",n.style.cursor=t?"-moz-grabbin":"-moz-grab",n.style.cursor=t?"grabbing":"grab"}},unsetGrabCursor:function(){var t=this;t.support.touch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(t.el.style.cursor="")}},manipulation:{appendSlide:function(t){var e=this,n=e.$wrapperEl,i=e.params;if(i.loop&&e.loopDestroy(),"object"==typeof t&&"length"in t)for(var r=0;r=o)n.appendSlide(e);else{for(var a=s>t?s+1:s,l=[],c=o-1;c>=t;c-=1){var u=n.slides.eq(c);u.remove(),l.unshift(u)}if("object"==typeof e&&"length"in e){for(var h=0;ht?s+e.length:s}else i.append(e);for(var d=0;d1,d=u.slidesPerColumn>1,p=s.enabled;h&&!d?(o.removeClass(s.containerModifierClass+"multirow "+s.containerModifierClass+"multirow-column"),t.emitContainerClasses()):!h&&d&&(o.addClass(s.containerModifierClass+"multirow"),(u.slidesPerColumnFill&&"column"===u.slidesPerColumnFill||!u.slidesPerColumnFill&&"column"===s.slidesPerColumnFill)&&o.addClass(s.containerModifierClass+"multirow-column"),t.emitContainerClasses());var f=u.direction&&u.direction!==s.direction,g=s.loop&&(u.slidesPerView!==s.slidesPerView||f);f&&n&&t.changeDirection(),HK(t.params,u);var m=t.params.enabled;HK(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev}),p&&!m?t.disable():!p&&m&&t.enable(),t.currentBreakpoint=l,t.emit("_beforeBreakpoint",u),g&&n&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(e-r+t.loopedSlides,0,!1)),t.emit("breakpoint",u)}}},getBreakpoint:function(t,e,n){if(void 0===e&&(e="window"),t&&("container"!==e||n)){var i=!1,r=xK(),s="window"===e?r.innerHeight:n.clientHeight,o=Object.keys(t).map(function(t){if("string"==typeof t&&0===t.indexOf("@")){var e=parseFloat(t.substr(1));return{value:s*e,point:t}}return{value:t,point:t}});o.sort(function(t,e){return parseInt(t.value,10)-parseInt(e.value,10)});for(var a=0;a0&&e.slidesOffsetBefore+e.spaceBetween*(t.slides.length-1)+t.slides[0].offsetWidth*t.slides.length;t.isLocked=e.slidesOffsetBefore&&e.slidesOffsetAfter&&i?i<=t.size:1===t.snapGrid.length,t.allowSlideNext=!t.isLocked,t.allowSlidePrev=!t.isLocked,n!==t.isLocked&&t.emit(t.isLocked?"lock":"unlock"),n&&n!==t.isLocked&&(t.isEnd=!1,t.navigation&&t.navigation.update())}},classes:{addClasses:function(){var t=this,e=t.classNames,n=t.params,i=t.$el,r=t.device,s=t.support,o=function(t,e){var n=[];return t.forEach(function(t){"object"==typeof t?Object.keys(t).forEach(function(i){t[i]&&n.push(e+i)}):"string"==typeof t&&n.push(e+t)}),n}(["initialized",n.direction,{"pointer-events":s.pointerEvents&&!s.touch},{"free-mode":n.freeMode},{autoheight:n.autoHeight},{rtl:t.rtl},{multirow:n.slidesPerColumn>1},{"multirow-column":n.slidesPerColumn>1&&"column"===n.slidesPerColumnFill},{android:r.android},{ios:r.ios},{"css-mode":n.cssMode}],n.containerModifierClass);e.push.apply(e,o),i.addClass([].concat(e).join(" ")),t.emitContainerClasses()},removeClasses:function(){var t=this;t.$el.removeClass(t.classNames.join(" ")),t.emitContainerClasses()}},images:{loadImage:function(t,e,n,i,r,s){var o,a=xK();function l(){s&&s()}FK(t).parent("picture")[0]||t.complete&&r||!e?l():((o=new a.Image).onload=l,o.onerror=l,i&&(o.sizes=i),n&&(o.srcset=n),e&&(o.src=e))},preloadImages:function(){var t=this;function e(){null==t||!t||t.destroyed||(void 0!==t.imagesLoaded&&(t.imagesLoaded+=1),t.imagesLoaded===t.imagesToLoad.length&&(t.params.updateOnImagesReady&&t.update(),t.emit("imagesReady")))}t.imagesToLoad=t.$el.find("img");for(var n=0;n1){var o=[];return FK(n.el).each(function(e){var i=HK({},n,{el:e});o.push(new t(i))}),o}var a=this;a.__swiper__=!0,a.support=GK(),a.device=WK({userAgent:n.userAgent}),a.browser=qK(),a.eventsListeners={},a.eventsAnyListeners=[],void 0===a.modules&&(a.modules={}),Object.keys(a.modules).forEach(function(t){var e=a.modules[t];if(e.params){var i=Object.keys(e.params)[0],r=e.params[i];if("object"!=typeof r||null===r||(["navigation","pagination","scrollbar"].indexOf(i)>=0&&!0===n[i]&&(n[i]={auto:!0}),!(i in n)||!("enabled"in r)))return;!0===n[i]&&(n[i]={enabled:!0}),"object"==typeof n[i]&&!("enabled"in n[i])&&(n[i].enabled=!0),n[i]||(n[i]={enabled:!1})}});var l,c,u=HK({},oQ);return a.useParams(u),a.params=HK({},u,cQ,n),a.originalParams=HK({},a.params),a.passedParams=HK({},n),a.params&&a.params.on&&Object.keys(a.params.on).forEach(function(t){a.on(t,a.params.on[t])}),a.params&&a.params.onAny&&a.onAny(a.params.onAny),a.$=FK,HK(a,{enabled:a.params.enabled,el:e,classNames:[],slides:FK(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===a.params.direction},isVertical:function(){return"vertical"===a.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:a.params.allowSlideNext,allowSlidePrev:a.params.allowSlidePrev,touchEvents:(l=["touchstart","touchmove","touchend","touchcancel"],c=["mousedown","mousemove","mouseup"],a.support.pointerEvents&&(c=["pointerdown","pointermove","pointerup"]),a.touchEventsTouch={start:l[0],move:l[1],end:l[2],cancel:l[3]},a.touchEventsDesktop={start:c[0],move:c[1],end:c[2]},a.support.touch||!a.params.simulateTouch?a.touchEventsTouch:a.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:a.params.focusableElements,lastClickTime:VK(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:a.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),a.useModules(),a.emit("_swiper"),a.params.init&&a.init(),a}var e=t.prototype;return e.enable=function(){var t=this;t.enabled||(t.enabled=!0,t.params.grabCursor&&t.setGrabCursor(),t.emit("enable"))},e.disable=function(){var t=this;!t.enabled||(t.enabled=!1,t.params.grabCursor&&t.unsetGrabCursor(),t.emit("disable"))},e.setProgress=function(t,e){var n=this;t=Math.min(Math.max(t,0),1);var i=n.minTranslate(),r=n.maxTranslate();n.translateTo((r-i)*t+i,void 0===e?0:e),n.updateActiveIndex(),n.updateSlidesClasses()},e.emitContainerClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=t.el.className.split(" ").filter(function(e){return 0===e.indexOf("swiper-container")||0===e.indexOf(t.params.containerModifierClass)});t.emit("_containerClasses",e.join(" "))}},e.getSlideClasses=function(t){var e=this;return t.className.split(" ").filter(function(t){return 0===t.indexOf("swiper-slide")||0===t.indexOf(e.params.slideClass)}).join(" ")},e.emitSlidesClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=[];t.slides.each(function(n){var i=t.getSlideClasses(n);e.push({slideEl:n,classNames:i}),t.emit("_slideClass",n,i)}),t.emit("_slideClasses",e)}},e.slidesPerViewDynamic=function(){var t=this,e=t.slides,n=t.slidesGrid,i=t.size,r=t.activeIndex,s=1;if(t.params.centeredSlides){for(var o,a=e[r].swiperSlideSize,l=r+1;li&&(o=!0));for(var c=r-1;c>=0;c-=1)e[c]&&!o&&(s+=1,(a+=e[c].swiperSlideSize)>i&&(o=!0))}else for(var u=r+1;u1)&&t.isEnd&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0)||i(),n.watchOverflow&&e!==t.snapGrid&&t.checkOverflow(),t.emit("update")}function i(){var e=Math.min(Math.max(t.rtlTranslate?-1*t.translate:t.translate,t.maxTranslate()),t.minTranslate());t.setTranslate(e),t.updateActiveIndex(),t.updateSlidesClasses()}},e.changeDirection=function(t,e){void 0===e&&(e=!0);var n=this,i=n.params.direction;return t||(t="horizontal"===i?"vertical":"horizontal"),t===i||"horizontal"!==t&&"vertical"!==t||(n.$el.removeClass(""+n.params.containerModifierClass+i).addClass(""+n.params.containerModifierClass+t),n.emitContainerClasses(),n.params.direction=t,n.slides.each(function(e){"vertical"===t?e.style.width="":e.style.height=""}),n.emit("changeDirection"),e&&n.update()),n},e.mount=function(t){var e=this;if(e.mounted)return!0;var n=FK(t||e.params.el);if(!(t=n[0]))return!1;t.swiper=e;var i=function(){return"."+(e.params.wrapperClass||"").trim().split(" ").join(".")},r=function(){if(t&&t.shadowRoot&&t.shadowRoot.querySelector){var e=FK(t.shadowRoot.querySelector(i()));return e.children=function(t){return n.children(t)},e}return n.children(i())}();if(0===r.length&&e.params.createElements){var s=_K().createElement("div");r=FK(s),s.className=e.params.wrapperClass,n.append(s),n.children("."+e.params.slideClass).each(function(t){r.append(t)})}return HK(e,{$el:n,el:t,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction"),rtlTranslate:"horizontal"===e.params.direction&&("rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0},e.init=function(t){var e=this;return e.initialized||!1===e.mount(t)||(e.emit("beforeInit"),e.params.breakpoints&&e.setBreakpoint(),e.addClasses(),e.params.loop&&e.loopCreate(),e.updateSize(),e.updateSlides(),e.params.watchOverflow&&e.checkOverflow(),e.params.grabCursor&&e.enabled&&e.setGrabCursor(),e.params.preloadImages&&e.preloadImages(),e.slideTo(e.params.loop?e.params.initialSlide+e.loopedSlides:e.params.initialSlide,0,e.params.runCallbacksOnInit,!1,!0),e.attachEvents(),e.initialized=!0,e.emit("init"),e.emit("afterInit")),e},e.destroy=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!0);var n=this,i=n.params,r=n.$el,s=n.$wrapperEl,o=n.slides;return void 0===n.params||n.destroyed||(n.emit("beforeDestroy"),n.initialized=!1,n.detachEvents(),i.loop&&n.loopDestroy(),e&&(n.removeClasses(),r.removeAttr("style"),s.removeAttr("style"),o&&o.length&&o.removeClass([i.slideVisibleClass,i.slideActiveClass,i.slideNextClass,i.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),n.emit("destroy"),Object.keys(n.eventsListeners).forEach(function(t){n.off(t)}),!1!==t&&(n.$el[0].swiper=null,function(e){var n=e;Object.keys(n).forEach(function(e){try{n[e]=null}catch(t){}try{delete n[e]}catch(t){}})}(n)),n.destroyed=!0),null},t.extendDefaults=function(t){HK(cQ,t)},t.installModule=function(e){t.prototype.modules||(t.prototype.modules={});var n=e.name||Object.keys(t.prototype.modules).length+"_"+VK();t.prototype.modules[n]=e},t.use=function(e){return Array.isArray(e)?(e.forEach(function(e){return t.installModule(e)}),t):(t.installModule(e),t)},function(t,e,n){n&&aQ(t,n)}(t,0,[{key:"extendedDefaults",get:function(){return cQ}},{key:"defaults",get:function(){return oQ}}]),t}();Object.keys(lQ).forEach(function(t){Object.keys(lQ[t]).forEach(function(e){uQ.prototype[e]=lQ[t][e]})}),uQ.use([XK,QK]);var hQ=uQ;const dQ=["prevElRef"],pQ=["nextElRef"],fQ=["scrollbarElRef"],gQ=["paginationElRef"];function mQ(t,e){1&t&&(aa(0),oa(1,"div",6,7),oa(3,"div",8,9),la())}function bQ(t,e){1&t&&oa(0,"div",10,11)}function yQ(t,e){1&t&&oa(0,"div",12,13)}function vQ(t,e){}function _Q(t,e){1&t&&Jo(0,vQ,0,0,"ng-template")}function wQ(t,e){}function xQ(t,e){1&t&&Jo(0,wQ,0,0,"ng-template")}function SQ(t,e){}function EQ(t,e){1&t&&Jo(0,SQ,0,0,"ng-template")}function CQ(t,e){}const OQ=function(t){return{$implicit:t}};function TQ(t,e){if(1&t&&(ra(0,"div",3),Jo(1,CQ,0,0,"ng-template",18),sa()),2&t){const t=va().$implicit;na("ngClass",va(2).zoomContainerClass),ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(3,OQ,t.slideData))}}function kQ(t,e){}function AQ(t,e){if(1&t&&(aa(0),Jo(1,kQ,0,0,"ng-template",18),la()),2&t){const t=va().$implicit;ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(2,OQ,t.slideData))}}function PQ(t,e){if(1&t&&(ra(0,"div",15),Jo(1,TQ,2,5,"div",16),Jo(2,AQ,2,4,"ng-container",17),sa()),2&t){const t=e.$implicit,n=va().key,i=va();(function(t){Ua(qa,Fa,t,!1)})(i.style),na("ngClass",(t.class?t.class+" ":"")+i.slideClass+(""!==n?" "+i.slideDuplicateClass:""))("ngSwitch",t.zoom),Ko("data-swiper-slide-index",t.virtualIndex?t.virtualIndex:t.slideIndex),ws(1),na("ngSwitchCase",!0)}}function MQ(t,e){1&t&&(Jo(0,PQ,3,6,"div",14),Mc(1,"async")),2&t&&na("ngForOf",Ic(1,1,e.loopSlides))}const IQ=[[["","slot","container-start"]],[["","slot","wrapper-start"]],[["","slot","wrapper-end"]],[["","slot","container-end"]]],DQ=function(t){return{loopSlides:t,key:"prepend"}},RQ=function(t){return{loopSlides:t,key:""}},NQ=function(t){return{loopSlides:t,key:"append"}},LQ=["[slot=container-start]","[slot=wrapper-start]","[slot=wrapper-end]","[slot=container-end]"];function jQ(t){return"object"==typeof t&&null!==t&&t.constructor&&"Object"===Object.prototype.toString.call(t).slice(8,-1)}function FQ(t,e,n){return!0===VQ(t)&&e&&!e.el||!("boolean"!=typeof e&&e.el!==(null==n?void 0:n.nativeElement)&&("string"==typeof e.el||"object"==typeof e.el))}function BQ(t,e){const n=["__proto__","constructor","prototype"];Object.keys(e).filter(t=>n.indexOf(t)<0).forEach(n=>{void 0!==t[n]?t[n]&&!e[n]||(jQ(e[n])&&jQ(t[n])&&Object.keys(e[n]).length>0?e[n].__swiper__?t[n]=e[n]:BQ(t[n],e[n]):t[n]=e[n]):t[n]=e[n]})}function VQ(t){return null!=t&&"false"!=`${t}`}const zQ=["pagination","navigation","scrollbar","virtual"];function UQ(t,e={}){return jQ(t)?t:!0===VQ(t)&&e}const HQ=["init","_direction","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_freeModeMomentum","_freeModeMomentumRatio","_freeModeMomentumBounce","_freeModeMomentumBounceRatio","_freeModeMomentumVelocityRatio","_freeModeSticky","_freeModeMinimumVelocity","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","_spaceBetween","_slidesPerView","_slidesPerColumn","_slidesPerColumnFill","_slidesPerGroup","_slidesPerGroupSkip","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_watchSlidesVisibility","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_preloadImages","updateOnImagesReady","_loop","_loopAdditionalSlides","_loopedSlides","_loopFillGroupWithBlank","loopPreventsSlide","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","hashNavigation","history","keyboard","lazy","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom"].map(t=>t.replace(/_/,""));function $Q(t={}){const e={on:{}},n={};BQ(e,hQ.defaults),BQ(e,hQ.extendedDefaults),e._emitClasses=!0;const i={};return Object.keys(t).forEach(r=>{const s=r.replace(/^_/,"");void 0!==t[s]&&(HQ.indexOf(s)>=0?jQ(t[s])?(e[s]={},n[s]={},BQ(e[s],t[s]),BQ(n[s],t[s])):(e[s]=t[s],n[s]=t[s]):i[s]=t[s])}),{params:e,passedParams:n,rest:i}}let GQ=(()=>{class t{constructor(t){this.template=t,this.class="",this.slideData={isActive:!1,isPrev:!1,isNext:!1,isVisible:!1,isDuplicate:!1}}set zoom(t){this._zoom=VQ(t)}get zoom(){return this._zoom}get classNames(){return this._classNames}set classNames(t){this._classNames!==t&&(this._classNames=t,this.slideData={isActive:this._hasClass(["swiper-slide-active","swiper-slide-duplicate-active"]),isVisible:this._hasClass(["swiper-slide-visible"]),isDuplicate:this._hasClass(["swiper-slide-duplicate"]),isPrev:this._hasClass(["swiper-slide-prev","swiper-slide-duplicate-prev"]),isNext:this._hasClass(["swiper-slide-next","swiper-slide-duplicate-next"])})}_hasClass(t){return t.some(t=>this._classNames.indexOf(t)>=0)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","swiperSlide",""]],inputs:{class:"class",zoom:"zoom",virtualIndex:"virtualIndex"}}),t})(),WQ=(()=>{class t{constructor(t,e,n,i){this._ngZone=t,this.elementRef=e,this._changeDetectorRef=n,this._platformId=i,this.slideClass="swiper-slide",this.wrapperClass="swiper-wrapper",this.showNavigation=!0,this.showPagination=!0,this.showScrollbar=!0,this.s__beforeBreakpoint=new Rc,this.s__containerClasses=new Rc,this.s__slideClass=new Rc,this.s__swiper=new Rc,this.s_activeIndexChange=new Rc,this.s_afterInit=new Rc,this.s_autoplay=new Rc,this.s_autoplayStart=new Rc,this.s_autoplayStop=new Rc,this.s_beforeDestroy=new Rc,this.s_beforeInit=new Rc,this.s_beforeLoopFix=new Rc,this.s_beforeResize=new Rc,this.s_beforeSlideChangeStart=new Rc,this.s_beforeTransitionStart=new Rc,this.s_breakpoint=new Rc,this.s_changeDirection=new Rc,this.s_click=new Rc,this.s_doubleTap=new Rc,this.s_doubleClick=new Rc,this.s_destroy=new Rc,this.s_fromEdge=new Rc,this.s_hashChange=new Rc,this.s_hashSet=new Rc,this.s_imagesReady=new Rc,this.s_init=new Rc,this.s_keyPress=new Rc,this.s_lazyImageLoad=new Rc,this.s_lazyImageReady=new Rc,this.s_loopFix=new Rc,this.s_momentumBounce=new Rc,this.s_navigationHide=new Rc,this.s_navigationShow=new Rc,this.s_observerUpdate=new Rc,this.s_orientationchange=new Rc,this.s_paginationHide=new Rc,this.s_paginationRender=new Rc,this.s_paginationShow=new Rc,this.s_paginationUpdate=new Rc,this.s_progress=new Rc,this.s_reachBeginning=new Rc,this.s_reachEnd=new Rc,this.s_realIndexChange=new Rc,this.s_resize=new Rc,this.s_scroll=new Rc,this.s_scrollbarDragEnd=new Rc,this.s_scrollbarDragMove=new Rc,this.s_scrollbarDragStart=new Rc,this.s_setTransition=new Rc,this.s_setTranslate=new Rc,this.s_slideChange=new Rc,this.s_slideChangeTransitionEnd=new Rc,this.s_slideChangeTransitionStart=new Rc,this.s_slideNextTransitionEnd=new Rc,this.s_slideNextTransitionStart=new Rc,this.s_slidePrevTransitionEnd=new Rc,this.s_slidePrevTransitionStart=new Rc,this.s_slideResetTransitionStart=new Rc,this.s_slideResetTransitionEnd=new Rc,this.s_sliderMove=new Rc,this.s_sliderFirstMove=new Rc,this.s_slidesLengthChange=new Rc,this.s_slidesGridLengthChange=new Rc,this.s_snapGridLengthChange=new Rc,this.s_snapIndexChange=new Rc,this.s_tap=new Rc,this.s_toEdge=new Rc,this.s_touchEnd=new Rc,this.s_touchMove=new Rc,this.s_touchMoveOpposite=new Rc,this.s_touchStart=new Rc,this.s_transitionEnd=new Rc,this.s_transitionStart=new Rc,this.s_update=new Rc,this.s_zoomChange=new Rc,this.s_swiper=new Rc,this.indexChange=new Rc,this._activeSlides=new P,this.containerClasses="swiper-container",this.slidesChanges=t=>{this.slides=t.map((t,e)=>(t.slideIndex=e,t.classNames=this.slideClass,t)),this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.virtual?this.swiperRef&&this.swiperRef.virtual&&this._ngZone.runOutsideAngular(()=>{this.swiperRef.virtual.slides=this.slides,this.swiperRef.virtual.update(!0)}):(this.prependSlides=wd(this.slides.slice(this.slides.length-this.loopedSlides)),this.appendSlides=wd(this.slides.slice(0,this.loopedSlides))),this._changeDetectorRef.detectChanges()},this.style=null,this.updateVirtualSlides=t=>{!this.swiperRef||this.currentVirtualData&&this.currentVirtualData.from===t.from&&this.currentVirtualData.to===t.to&&this.currentVirtualData.offset===t.offset||(this.style=this.swiperRef.isHorizontal()?{[this.swiperRef.rtlTranslate?"right":"left"]:`${t.offset}px`}:{top:`${t.offset}px`},this.currentVirtualData=t,this._activeSlides.next(t.slides),this._ngZone.run(()=>{this._changeDetectorRef.detectChanges()}),this._ngZone.runOutsideAngular(()=>{this.swiperRef.updateSlides(),this.swiperRef.updateProgress(),this.swiperRef.updateSlidesClasses(),this.swiperRef.lazy&&this.swiperRef.params.lazy.enabled&&this.swiperRef.lazy.load(),this.swiperRef.virtual.update(!0)}))}}set navigation(t){var e,n,i;const r="boolean"!=typeof this._navigation?null===(e=this._navigation)||void 0===e?void 0:e.nextEl:null,s="boolean"!=typeof this._navigation?null===(n=this._navigation)||void 0===n?void 0:n.prevEl:null;this._navigation=UQ(t,{nextEl:r||null,prevEl:s||null}),this.showNavigation=!(!0!==VQ(t)||this._navigation&&"boolean"!=typeof this._navigation&&this._navigation.prevEl!==(null===(i=this._prevElRef)||void 0===i?void 0:i.nativeElement)&&(null!==this._navigation.prevEl||null!==this._navigation.nextEl)&&("string"==typeof this._navigation.nextEl||"string"==typeof this._navigation.prevEl||"object"==typeof this._navigation.nextEl||"object"==typeof this._navigation.prevEl))}get navigation(){return this._navigation}set pagination(t){var e;const n="boolean"!=typeof this._pagination?null===(e=this._pagination)||void 0===e?void 0:e.el:null;this._pagination=UQ(t,{el:n||null}),this.showPagination=FQ(t,this._pagination,this._paginationElRef)}get pagination(){return this._pagination}set scrollbar(t){var e;const n="boolean"!=typeof this._scrollbar?null===(e=this._scrollbar)||void 0===e?void 0:e.el:null;this._scrollbar=UQ(t,{el:n||null}),this.showScrollbar=FQ(t,this._scrollbar,this._scrollbarElRef)}get scrollbar(){return this._scrollbar}set virtual(t){this._virtual=UQ(t)}get virtual(){return this._virtual}set index(t){this.setIndex(t)}set config(t){this.updateSwiper(t);const{params:e}=$Q(t);Object.assign(this,e)}set prevElRef(t){this._prevElRef=t,this._setElement(t,this.navigation,"navigation","prevEl")}set nextElRef(t){this._nextElRef=t,this._setElement(t,this.navigation,"navigation","nextEl")}set scrollbarElRef(t){this._scrollbarElRef=t,this._setElement(t,this.scrollbar,"scrollbar")}set paginationElRef(t){this._paginationElRef=t,this._setElement(t,this.pagination,"pagination")}get activeSlides(){return this.virtual?this._activeSlides:wd(this.slides)}get zoomContainerClass(){return"boolean"!=typeof this.zoom?this.zoom.containerClass:"swiper-zoom-container"}_setElement(t,e,n,i="el"){if(!t||!e)return;if(e&&t.nativeElement){if(e[i]===t.nativeElement)return;e[i]=t.nativeElement}const r={};r[n]=!0,this.updateInitSwiper(r)}ngOnInit(){const{params:t}=$Q(this);Object.assign(this,t)}ngAfterViewInit(){this.childrenSlidesInit(),this.initSwiper(),this._changeDetectorRef.detectChanges(),setTimeout(()=>{this.s_swiper.emit(this.swiperRef)})}childrenSlidesInit(){this.slidesChanges(this.slidesEl),this.slidesEl.changes.subscribe(this.slidesChanges)}get isSwiperActive(){return this.swiperRef&&!this.swiperRef.destroyed}initSwiper(){const{params:t}=$Q(this);Object.assign(this,t),this._ngZone.runOutsideAngular(()=>{t.init=!1,t.virtual||(t.observer=!0),t.onAny=(t,...e)=>{const n=this[`s_${t}`];n&&n.emit(...e)},Object.assign(t.on,{_containerClasses(t,e){this.containerClasses=e},_slideClasses:(t,e)=>{e.forEach(({slideEl:t,classNames:e},n)=>{const i=parseInt(t.getAttribute("data-swiper-slide-index"))||n;if(this.virtual){const t=this.slides.find(t=>t.virtualIndex&&t.virtualIndex===i);if(t)return void(t.classNames=e)}this.slides[i]&&(this.slides[i].classNames=e)}),this._changeDetectorRef.detectChanges()}});const e=new hQ(t);if(e.loopCreate=()=>{},e.loopDestroy=()=>{},t.loop&&(e.loopedSlides=this.loopedSlides),e.virtual&&e.params.virtual.enabled){e.virtual.slides=this.slides;const t={cache:!1,renderExternal:this.updateVirtualSlides,renderExternalUpdate:!1};BQ(e.params.virtual,t),BQ(e.originalParams.virtual,t)}Lh(this._platformId)&&(this.swiperRef=e.init(this.elementRef.nativeElement),this.swiperRef.virtual&&this.swiperRef.params.virtual.enabled&&this.swiperRef.virtual.update(!0),this._changeDetectorRef.detectChanges(),e.on("slideChange",()=>{this.indexChange.emit(this.swiperRef.realIndex)}))})}ngOnChanges(t){this.updateSwiper(t),this._changeDetectorRef.detectChanges()}updateInitSwiper(t){!t||!this.swiperRef||this.swiperRef.destroyed||this._ngZone.runOutsideAngular(()=>{const{pagination:e,navigation:n,scrollbar:i,thumbs:r}=this.swiperRef;t.pagination&&(this.pagination&&"boolean"!=typeof this.pagination&&this.pagination.el&&e&&!e.el?(this.updateParameter("pagination",this.pagination),e.init(),e.render(),e.update()):(e.destroy(),e.el=null)),t.scrollbar&&(this.scrollbar&&"boolean"!=typeof this.scrollbar&&this.scrollbar.el&&i&&!i.el?(this.updateParameter("scrollbar",this.scrollbar),i.init(),i.updateSize(),i.setTranslate()):(i.destroy(),i.el=null)),t.navigation&&(this.navigation&&"boolean"!=typeof this.navigation&&this.navigation.prevEl&&this.navigation.nextEl&&n&&!n.prevEl&&!n.nextEl?(this.updateParameter("navigation",this.navigation),n.init(),n.update()):n.prevEl&&n.nextEl&&(n.destroy(),n.nextEl=null,n.prevEl=null)),t.thumbs&&this.thumbs&&this.thumbs.swiper&&(this.updateParameter("thumbs",this.thumbs),r.init()&&r.update(!0)),t.controller&&this.controller&&this.controller.control&&(this.swiperRef.controller.control=this.controller.control),this.swiperRef.update()})}updateSwiper(t){this._ngZone.runOutsideAngular(()=>{var e,n;if(!t.config&&t&&this.swiperRef&&!this.swiperRef.destroyed){for(const i in t){if(zQ.indexOf(i)>=0)continue;const r=null!==(n=null===(e=t[i])||void 0===e?void 0:e.currentValue)&&void 0!==n?n:t[i];this.updateParameter(i,r)}t.allowSlideNext&&(this.swiperRef.allowSlideNext=this.allowSlideNext),t.allowSlidePrev&&(this.swiperRef.allowSlidePrev=this.allowSlidePrev),t.direction&&this.swiperRef.changeDirection(this.direction,!1),t.breakpoints&&(this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.swiperRef.currentBreakpoint=null,this.swiperRef.setBreakpoint()),(t.thumbs||t.controller)&&this.updateInitSwiper(t),this.swiperRef.update()}})}calcLoopedSlides(){if(!this.loop)return;let t=this.slidesPerView;if(this.breakpoints){const e=hQ.prototype.getBreakpoint(this.breakpoints),n=e in this.breakpoints?this.breakpoints[e]:void 0;n&&n.slidesPerView&&(t=n.slidesPerView)}if("auto"===t)return this.loopedSlides=this.slides.length,this.slides.length;let e=this.loopedSlides||t;return e+=this.loopAdditionalSlides,e>this.slides.length&&(e=this.slides.length),this.loopedSlides=e,e}updateParameter(t,e){if(!this.swiperRef||this.swiperRef.destroyed)return;const n=t.replace(/^_/,""),i=jQ(this.swiperRef.params[n]);if(Object.keys(this.swiperRef.modules).indexOf(n)>=0){const t=this.swiperRef.modules[n].params[n];i?BQ(this.swiperRef.params[n],t):this.swiperRef.params[n]=t}i&&jQ(e)?BQ(this.swiperRef.params[n],e):this.swiperRef.params[n]=e}setIndex(t,e,n){this.isSwiperActive?t!==this.swiperRef.activeIndex&&this._ngZone.runOutsideAngular(()=>{this.loop?this.swiperRef.slideToLoop(t,e,!n):this.swiperRef.slideTo(t,e,!n)}):this.initialSlide=t}ngOnDestroy(){this._ngZone.runOutsideAngular(()=>{var t;null===(t=this.swiperRef)||void 0===t||t.destroy(!0,!1)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["swiper"],["","swiper",""]],contentQueries:function(t,e,n){if(1&t&&Xc(n,GQ,4),2&t){let t;Wc(t=Yc())&&(e.slidesEl=t)}},viewQuery:function(t,e){if(1&t&&(qc(dQ,5),qc(pQ,5),qc(fQ,5),qc(gQ,5)),2&t){let t;Wc(t=Yc())&&(e.prevElRef=t.first),Wc(t=Yc())&&(e.nextElRef=t.first),Wc(t=Yc())&&(e.scrollbarElRef=t.first),Wc(t=Yc())&&(e.paginationElRef=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.containerClasses)},inputs:{slideClass:"slideClass",wrapperClass:"wrapperClass",navigation:"navigation",pagination:"pagination",scrollbar:"scrollbar",virtual:"virtual",index:"index",config:"config",loopedSlides:"loopedSlides",initialSlide:"initialSlide",direction:"direction",touchEventsTarget:"touchEventsTarget",speed:"speed",cssMode:"cssMode",updateOnWindowResize:"updateOnWindowResize",resizeObserver:"resizeObserver",nested:"nested",focusableElements:"focusableElements",width:"width",height:"height",preventInteractionOnTransition:"preventInteractionOnTransition",userAgent:"userAgent",url:"url",edgeSwipeDetection:"edgeSwipeDetection",edgeSwipeThreshold:"edgeSwipeThreshold",freeMode:"freeMode",freeModeMomentum:"freeModeMomentum",freeModeMomentumRatio:"freeModeMomentumRatio",freeModeMomentumBounce:"freeModeMomentumBounce",freeModeMomentumBounceRatio:"freeModeMomentumBounceRatio",freeModeMomentumVelocityRatio:"freeModeMomentumVelocityRatio",freeModeSticky:"freeModeSticky",freeModeMinimumVelocity:"freeModeMinimumVelocity",autoHeight:"autoHeight",setWrapperSize:"setWrapperSize",virtualTranslate:"virtualTranslate",effect:"effect",breakpoints:"breakpoints",spaceBetween:"spaceBetween",slidesPerView:"slidesPerView",slidesPerColumn:"slidesPerColumn",slidesPerColumnFill:"slidesPerColumnFill",slidesPerGroup:"slidesPerGroup",slidesPerGroupSkip:"slidesPerGroupSkip",centeredSlides:"centeredSlides",centeredSlidesBounds:"centeredSlidesBounds",slidesOffsetBefore:"slidesOffsetBefore",slidesOffsetAfter:"slidesOffsetAfter",normalizeSlideIndex:"normalizeSlideIndex",centerInsufficientSlides:"centerInsufficientSlides",watchOverflow:"watchOverflow",roundLengths:"roundLengths",touchRatio:"touchRatio",touchAngle:"touchAngle",simulateTouch:"simulateTouch",shortSwipes:"shortSwipes",longSwipes:"longSwipes",longSwipesRatio:"longSwipesRatio",longSwipesMs:"longSwipesMs",followFinger:"followFinger",allowTouchMove:"allowTouchMove",threshold:"threshold",touchMoveStopPropagation:"touchMoveStopPropagation",touchStartPreventDefault:"touchStartPreventDefault",touchStartForcePreventDefault:"touchStartForcePreventDefault",touchReleaseOnEdges:"touchReleaseOnEdges",uniqueNavElements:"uniqueNavElements",resistance:"resistance",resistanceRatio:"resistanceRatio",watchSlidesProgress:"watchSlidesProgress",watchSlidesVisibility:"watchSlidesVisibility",grabCursor:"grabCursor",preventClicks:"preventClicks",preventClicksPropagation:"preventClicksPropagation",slideToClickedSlide:"slideToClickedSlide",preloadImages:"preloadImages",updateOnImagesReady:"updateOnImagesReady",loop:"loop",loopAdditionalSlides:"loopAdditionalSlides",loopFillGroupWithBlank:"loopFillGroupWithBlank",loopPreventsSlide:"loopPreventsSlide",allowSlidePrev:"allowSlidePrev",allowSlideNext:"allowSlideNext",swipeHandler:"swipeHandler",noSwiping:"noSwiping",noSwipingClass:"noSwipingClass",noSwipingSelector:"noSwipingSelector",passiveListeners:"passiveListeners",containerModifierClass:"containerModifierClass",slideBlankClass:"slideBlankClass",slideActiveClass:"slideActiveClass",slideDuplicateActiveClass:"slideDuplicateActiveClass",slideVisibleClass:"slideVisibleClass",slideDuplicateClass:"slideDuplicateClass",slideNextClass:"slideNextClass",slideDuplicateNextClass:"slideDuplicateNextClass",slidePrevClass:"slidePrevClass",slideDuplicatePrevClass:"slideDuplicatePrevClass",runCallbacksOnInit:"runCallbacksOnInit",observeParents:"observeParents",observeSlideChildren:"observeSlideChildren",a11y:"a11y",autoplay:"autoplay",controller:"controller",coverflowEffect:"coverflowEffect",cubeEffect:"cubeEffect",fadeEffect:"fadeEffect",flipEffect:"flipEffect",hashNavigation:"hashNavigation",history:"history",keyboard:"keyboard",lazy:"lazy",mousewheel:"mousewheel",parallax:"parallax",thumbs:"thumbs",zoom:"zoom",class:"class",id:"id"},outputs:{s__beforeBreakpoint:"_beforeBreakpoint",s__containerClasses:"_containerClasses",s__slideClass:"_slideClass",s__swiper:"_swiper",s_activeIndexChange:"activeIndexChange",s_afterInit:"afterInit",s_autoplay:"autoplay",s_autoplayStart:"autoplayStart",s_autoplayStop:"autoplayStop",s_beforeDestroy:"beforeDestroy",s_beforeInit:"beforeInit",s_beforeLoopFix:"beforeLoopFix",s_beforeResize:"beforeResize",s_beforeSlideChangeStart:"beforeSlideChangeStart",s_beforeTransitionStart:"beforeTransitionStart",s_breakpoint:"breakpoint",s_changeDirection:"changeDirection",s_click:"click",s_doubleTap:"doubleTap",s_doubleClick:"doubleClick",s_destroy:"destroy",s_fromEdge:"fromEdge",s_hashChange:"hashChange",s_hashSet:"hashSet",s_imagesReady:"imagesReady",s_init:"init",s_keyPress:"keyPress",s_lazyImageLoad:"lazyImageLoad",s_lazyImageReady:"lazyImageReady",s_loopFix:"loopFix",s_momentumBounce:"momentumBounce",s_navigationHide:"navigationHide",s_navigationShow:"navigationShow",s_observerUpdate:"observerUpdate",s_orientationchange:"orientationchange",s_paginationHide:"paginationHide",s_paginationRender:"paginationRender",s_paginationShow:"paginationShow",s_paginationUpdate:"paginationUpdate",s_progress:"progress",s_reachBeginning:"reachBeginning",s_reachEnd:"reachEnd",s_realIndexChange:"realIndexChange",s_resize:"resize",s_scroll:"scroll",s_scrollbarDragEnd:"scrollbarDragEnd",s_scrollbarDragMove:"scrollbarDragMove",s_scrollbarDragStart:"scrollbarDragStart",s_setTransition:"setTransition",s_setTranslate:"setTranslate",s_slideChange:"slideChange",s_slideChangeTransitionEnd:"slideChangeTransitionEnd",s_slideChangeTransitionStart:"slideChangeTransitionStart",s_slideNextTransitionEnd:"slideNextTransitionEnd",s_slideNextTransitionStart:"slideNextTransitionStart",s_slidePrevTransitionEnd:"slidePrevTransitionEnd",s_slidePrevTransitionStart:"slidePrevTransitionStart",s_slideResetTransitionStart:"slideResetTransitionStart",s_slideResetTransitionEnd:"slideResetTransitionEnd",s_sliderMove:"sliderMove",s_sliderFirstMove:"sliderFirstMove",s_slidesLengthChange:"slidesLengthChange",s_slidesGridLengthChange:"slidesGridLengthChange",s_snapGridLengthChange:"snapGridLengthChange",s_snapIndexChange:"snapIndexChange",s_tap:"tap",s_toEdge:"toEdge",s_touchEnd:"touchEnd",s_touchMove:"touchMove",s_touchMoveOpposite:"touchMoveOpposite",s_touchStart:"touchStart",s_transitionEnd:"transitionEnd",s_transitionStart:"transitionStart",s_update:"update",s_zoomChange:"zoomChange",s_swiper:"swiper",indexChange:"indexChange"},features:[ye],ngContentSelectors:LQ,decls:13,vars:17,consts:[[4,"ngIf"],["class","swiper-scrollbar",4,"ngIf"],["class","swiper-pagination",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["slidesTemplate",""],[1,"swiper-button-prev"],["prevElRef",""],[1,"swiper-button-next"],["nextElRef",""],[1,"swiper-scrollbar"],["scrollbarElRef",""],[1,"swiper-pagination"],["paginationElRef",""],[3,"ngClass","style","ngSwitch",4,"ngFor","ngForOf"],[3,"ngClass","ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,e){if(1&t&&(wa(IQ),xa(0),Jo(1,mQ,5,0,"ng-container",0),Jo(2,bQ,2,0,"div",1),Jo(3,yQ,2,0,"div",2),ra(4,"div",3),xa(5,1),Jo(6,_Q,1,0,void 0,4),Jo(7,xQ,1,0,void 0,4),Jo(8,EQ,1,0,void 0,4),xa(9,2),sa(),xa(10,3),Jo(11,MQ,2,3,"ng-template",null,5,Jc)),2&t){const t=ta(12);ws(1),na("ngIf",e.navigation&&e.showNavigation),ws(1),na("ngIf",e.scrollbar&&e.showScrollbar),ws(1),na("ngIf",e.pagination&&e.showPagination),ws(1),na("ngClass",e.wrapperClass),Ko("id",e.id),ws(2),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(11,DQ,e.prependSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(13,RQ,e.activeSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(15,NQ,e.appendSlides))}},directives:[_h,mh,kh,yh,Eh,Ch,Oh],pipes:[Dh],styles:["\n swiper {\n display: block;\n }\n "],encapsulation:2,changeDetection:0}),t})(),qQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();function XQ(){return(XQ=Object.assign||function(t){for(var e=1;e0&&(n(s,!!t.isBeginning),t.params.watchOverflow&&t.enabled&&s[t.isLocked?"addClass":"removeClass"](e.lockClass)),r&&r.length>0&&(n(r,!!t.isEnd),t.params.watchOverflow&&t.enabled&&r[t.isLocked?"addClass":"removeClass"](e.lockClass))}},onPrevClick:function(t){var e=this;t.preventDefault(),(!e.isBeginning||e.params.loop)&&e.slidePrev()},onNextClick:function(t){var e=this;t.preventDefault(),(!e.isEnd||e.params.loop)&&e.slideNext()},init:function(){var t,e,n=this,i=n.params.navigation;n.params.navigation=function(t,e,n,i){var r=_K();return n&&Object.keys(i).forEach(function(n){if(!e[n]&&!0===e.auto){var s=r.createElement("div");s.className=i[n],t.append(s),e[n]=s}}),e}(n.$el,n.params.navigation,n.params.createElements,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),(i.nextEl||i.prevEl)&&(i.nextEl&&(t=FK(i.nextEl),n.params.uniqueNavElements&&"string"==typeof i.nextEl&&t.length>1&&1===n.$el.find(i.nextEl).length&&(t=n.$el.find(i.nextEl))),i.prevEl&&(e=FK(i.prevEl),n.params.uniqueNavElements&&"string"==typeof i.prevEl&&e.length>1&&1===n.$el.find(i.prevEl).length&&(e=n.$el.find(i.prevEl))),t&&t.length>0&&t.on("click",n.navigation.onNextClick),e&&e.length>0&&e.on("click",n.navigation.onPrevClick),HK(n.navigation,{$nextEl:t,nextEl:t&&t[0],$prevEl:e,prevEl:e&&e[0]}),n.enabled||(t&&t.addClass(i.lockClass),e&&e.addClass(i.lockClass)))},destroy:function(){var t=this,e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n.length&&(n.off("click",t.navigation.onNextClick),n.removeClass(t.params.navigation.disabledClass)),i&&i.length&&(i.off("click",t.navigation.onPrevClick),i.removeClass(t.params.navigation.disabledClass))}},KQ={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){$K(this,{navigation:XQ({},YQ)})},on:{init:function(t){t.navigation.init(),t.navigation.update()},toEdge:function(t){t.navigation.update()},fromEdge:function(t){t.navigation.update()},destroy:function(t){t.navigation.destroy()},"enable disable":function(t){var e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass),i&&i[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass)},click:function(t,e){var n=t.navigation,i=n.$nextEl,r=n.$prevEl,s=e.target;if(t.params.navigation.hideOnClick&&!FK(s).is(r)&&!FK(s).is(i)){if(t.pagination&&t.params.pagination&&t.params.pagination.clickable&&(t.pagination.el===s||t.pagination.el.contains(s)))return;var o;i?o=i.hasClass(t.params.navigation.hiddenClass):r&&(o=r.hasClass(t.params.navigation.hiddenClass)),t.emit(!0===o?"navigationShow":"navigationHide"),i&&i.toggleClass(t.params.navigation.hiddenClass),r&&r.toggleClass(t.params.navigation.hiddenClass)}}}};let QQ=(()=>{class t{constructor(){hQ.use([KQ])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,qQ]]}),t})(),ZQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),JQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX,f_,QQ,ZQ]]}),t})(),tZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Dp,JQ]]}),t})();const eZ={isolated:!0},nZ=new oi("Message service configuration",{providedIn:"root",factory:()=>eZ});let iZ=(()=>{class t{constructor(t,e,n){this.source=t,this.channel=e,this.messages=n}sendMessage(t){this.channel.next({id:this.nextMessageId(),source:this.source,payload:t})}getMessages(){return this.messages.pipe(Hd(t=>t.source!==this.source))}getMessagesFromSource(t){return this.getMessages().pipe(Hd(e=>e.source===t))}getMessagesFromSources(t){return this.getMessages().pipe(Hd(e=>t.includes(e.source)))}nextMessageId(){return t.counter++}}return t.counter=0,t})(),rZ=(()=>{class t{constructor(t,e){this.config=t,this.parent=e,this.channel=new P,this.messages=t.isolated||!e?this.channel.asObservable():U([this.channel,e.messages.pipe(Xp(()=>!this.channel.closed))]).pipe(Y())}ngOnDestroy(){this.channel.complete()}connect(t){return new iZ(t,this.channel,this.messages)}}return t.\u0275fac=function(e){return new(e||t)(Ci(nZ),Ci(t,12))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),sZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:nZ,useValue:eZ}],imports:[[gd,ky,f_]]}),t})();function oZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function aZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function lZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function cZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}const uZ=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",hZ=jy(class{constructor(t){this._elementRef=t}},"primary"),dZ=new oi("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}});class pZ extends hZ{constructor(t,e,n,i,r){super(t),this._document=n,this._diameter=100,this._value=0,this._fallbackAnimation=!1,this.mode="determinate";const s=pZ._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),s.has(n.head)||s.set(n.head,new Set([100])),this._fallbackAnimation=e.EDGE||e.TRIDENT,this._noopAnimations="NoopAnimations"===i&&!!r&&!r._forceAnimations,r&&(r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth))}get diameter(){return this._diameter}set diameter(t){this._diameter=bd(t),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(t){this._strokeWidth=bd(t)}get value(){return"determinate"===this.mode?this._value:0}set value(t){this._value=Math.max(0,Math.min(100,bd(t)))}ngOnInit(){const t=this._elementRef.nativeElement;this._styleRoot=xp(t)||this._document.head,this._attachStyleNode(),t.classList.add(`mat-progress-spinner-indeterminate${this._fallbackAnimation?"-fallback":""}-animation`)}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const t=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${t} ${t}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_attachStyleNode(){const t=this._styleRoot,e=this._diameter,n=pZ._diameters;let i=n.get(t);if(!i||!i.has(e)){const r=this._document.createElement("style");r.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),r.textContent=this._getAnimationText(),t.appendChild(r),i||(i=new Set,n.set(t,i)),i.add(e)}}_getAnimationText(){const t=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*t).replace(/END_VALUE/g,""+.2*t).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}pZ.\u0275fac=function(t){return new(t||pZ)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},pZ.\u0275cmp=Jt({type:pZ,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(t,e){2&t&&(Ko("aria-valuemin","determinate"===e.mode?0:null)("aria-valuemax","determinate"===e.mode?100:null)("aria-valuenow","determinate"===e.mode?e.value:null)("mode",e.mode),La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,oZ,1,9,"circle",1),Jo(2,aZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),pZ._diameters=new WeakMap;let fZ=(()=>{class t extends pZ{constructor(t,e,n,i,r){super(t,e,n,i,r),this.mode="indeterminate"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},t.\u0275cmp=Jt({type:t,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(t,e){2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color"},features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,lZ,1,9,"circle",1),Jo(2,cZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),t})(),gZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,Rh],Ny]}),t})(),mZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,gZ]]}),t})(),bZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,gZ]]}),t})();const yZ={initialConfig:{},parse:{},rename:{}};class vZ{constructor(t,e){this.configState=t,this.storedChanges={},this.options=Object.assign(Object.assign({},yZ),e)}addChanges(t){this.storedChanges=Object.assign(Object.assign({},this.storedChanges),t)}applyChanges(t,e={}){void 0===t&&(t=this.storedChanges,this.storedChanges={});const{configState:n,options:{initialConfig:i}}=this,r=n.snapshot,s=Object.assign(Object.assign(Object.assign({},i),r),e);for(const[o,a]of Object.entries(t))this.processChange(o,a,s);n.setConfig(s)}processChange(t,e,n){var i,r;const{options:{parse:s,rename:o}}=this,a=null!==(i=o[t])&&void 0!==i?i:t,l=e.currentValue,c=null!==(r=s[t])&&void 0!==r?r:s[a];if(null==l)delete n[a];else if(c)try{n[a]=c(l)}catch(u){console.warn(`Failed to parse ${t} = ${l}`,u.message)}else n[a]=l}}let _Z=(()=>{class t{constructor(t,e,n={}){this.configState=t,this.cdr=e,this.options=n,this.initialized=!1,this.configManager=new vZ(this.configState,this.options)}ngOnInit(){var t;this._init=setTimeout(()=>this.initialize(),null!==(t=this.options.initialDelay)&&void 0!==t?t:0)}ngOnDestroy(){this._init&&clearTimeout(this._init)}ngOnChanges(t){this.configManager.addChanges(t),this.initialized&&this.configManager.applyChanges()}initialize(){this._init=void 0,!this.initialized&&(this.configManager.applyChanges(),this.initialized=!0,this.cdr.markForCheck())}}return t.\u0275fac=function(t){!function(){throw new Error("invalid")}()},t.\u0275dir=se({type:t,features:[ye]}),t})();const wZ={boolean:t=>"false"!=`${t}`,json:t=>"string"==typeof t?JSON.parse(t):t,function:t=>{if("function"!=typeof t)throw new Error("Expected a javascript function");return t}};let xZ=(()=>{class t{constructor(){this.className="ccf-spinner-overlay",this.active=!1}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-spinner-overlay"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("active",e.active))},inputs:{active:"active",text:"text"},decls:3,vars:1,consts:[[1,"content"]],template:function(t,e){1&t&&(oa(0,"mat-spinner"),ra(1,"div",0),Za(2),sa()),2&t&&(ws(2),Ja(e.text))},directives:[fZ],styles:["[_nghost-%COMP%]{display:flex;position:absolute;width:100%;height:100%;z-index:99;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;visibility:hidden;opacity:0;transition:visibility .6s,opacity .4s ease-in-out}[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{margin-bottom:1rem;opacity:0;transition:opacity .3s ease-in-out .3s}.active[_nghost-%COMP%]{pointer-events:auto;visibility:visible;opacity:1}.active[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{opacity:1}"],changeDetection:0}),t})();const SZ=rZ,EZ=["*"];let CZ=(()=>{class t{constructor(t,e){this.className="ccf-drawer-content",this.animationsEnabled=!1,this.leftMargin=0,this.rightMargin=0,this.faded=!1,this.drawers=[],this.subscriptions=new g;const n=t.connect(this).getMessages();this.subscriptions.add(n.subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){switch(t.payload.type){case"drawer-containers-changed":return this.drawers=t.payload.drawers,this.updateFaded(),!0;case"drawer-initialized":return this.animationsEnabled=!0,!0;case"drawer-toggled":{const e=t.source.position,{opened:n,width:i,margin:r}=t.payload;return this.updateMargin(e,n,i,r),this.updateFaded(),!0}default:return!1}}updateMargin(t,e,n,i){const r=e?n+i:i;"start"===t?this.leftMargin=r:this.rightMargin=r}updateFaded(){const[t,e]=this.drawers;this.faded=(null==t?void 0:t.opened)&&(null==t?void 0:t.expanded)||(null==e?void 0:e.opened)&&(null==e?void 0:e.expanded)}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-content"]],hostVars:9,hostBindings:function(t,e){2&t&&(rl("@fadeInOut",e.faded),Ba(e.className),La("margin-left",e.leftMargin,"px")("margin-right",e.rightMargin,"px"),ja("cff-drawer-content-animations",e.animationsEnabled))},ngContentSelectors:EZ,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:["[_nghost-%COMP%]{display:block;height:calc(100% - 5.5rem);z-index:2;overflow:auto}.cff-drawer-content-animations[_nghost-%COMP%]{transition-duration:.5s;transition-timing-function:ease-in-out;transition-property:margin-left,margin-right}"],data:{animation:[Vg("fadeInOut",[$g("false",Hg({opacity:1})),$g("true",Hg({opacity:0})),Wg("false <=> true",zg("1s"))])]},changeDetection:0}),t})();const OZ=["*"],TZ={params:{width:0,margin:0,margin2:0}};class kZ{constructor(){this.initialized=!1,this.deferred=new Promise(t=>{this.resolve=t})}set(){this.initialized=!0,this.resolve()}wait(){return lw(this,void 0,void 0,function*(){return this.deferred})}valueOf(){return this.initialized}}let AZ=(()=>{class t{constructor(t,e,n){this.element=n,this.className="ccf-drawer",this._position="start",this._opened=!1,this._expanded=!1,this.openedChange=new Rc(!0),this.expandedChange=new Rc(!0),this.stateChange=new Rc(!0),this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._measuredWidth=0,this.width=0,this._measuredMargin=0,this.margin2=0,this.initialized=new kZ,this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get classEnd(){return"end"===this.position}get position(){return this._position}set position(t){this._position=t||"start"}get opened(){return this._opened}set opened(t){this.toggle(md(t))}get expanded(){return this._expanded}set expanded(t){this.toggleExpanded(md(t))}get expandedStateObj(){return{value:this.expandedState2,params:{width:this.width,margin:this.measuredMargin,margin2:this.margin2}}}get measuredWidth(){if(this._measuredWidth>0)return this._measuredWidth;const t=this.element.nativeElement;if(!t)return 0;const e=t.getBoundingClientRect(),n=e.right-e.left;return 0===n?0:(this._measuredWidth=n,n)}get measuredMargin(){if(this._measuredMargin>0)return this._measuredMargin;const t=this.element.nativeElement;if(!t)return 0;const e=globalThis.getComputedStyle(t).getPropertyValue("start"===this.position?"margin-right":"margin-left"),n=Number(e.slice(0,-2));return this._measuredMargin=n,n}ngAfterViewInit(){this.initialized.set(),setTimeout(()=>this.channel.sendMessage({type:"drawer-initialized"}))}ngOnDestroy(){this.subscriptions.unsubscribe()}open(){this.toggle(!0)}close(){this.toggle(!1)}toggle(t=!this.opened){this.opened!==t&&(t?this.openedState=this.initialized.valueOf()?"open":"open-instant":(this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._expanded=!1),this._opened=t,this.sendToggle())}openExpanded(){this.toggleExpanded(!0)}closeExpanded(){this.toggleExpanded(!1)}toggleExpanded(t=!this.expanded){this.expanded!==t&&(t?this.expandedState=this.initialized.valueOf()?"open":"open-instant":(this.expandedState="closed",this.expandedState2="collapsed"),this._expanded=t,this.sendToggle())}closeOpenDone(){this.openedChange.emit(this.opened)}expandCollapseDone(){this.expandedChange.emit(this.expanded)}sendToggle(){return lw(this,void 0,void 0,function*(){yield this.initialized.wait(),this.channel.sendMessage({type:"drawer-toggled",opened:this.opened,expanded:this.expanded,width:this.measuredWidth,margin:this.measuredMargin}),this.stateChange.emit()})}handleMessage(t){switch(t.payload.type){case"drawer-toggled":return this.syncExpanded(t.source),!0;default:return!1}}syncExpanded(t){(this.expanded||t.expanded)&&(this.expanded&&t.expanded?this.expandedState2=t.expandedState2="half":this.expanded?t.opened?(this.expandedState2="extended",this.width=t.measuredWidth+t.measuredMargin):(this.expandedState2="full",this.margin2=t.measuredMargin):this.opened?(t.expandedState2="extended",t.width=this.measuredWidth+this.measuredMargin):(t.expandedState2="full",t.margin2=this.measuredMargin))}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc),ea(kl))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer"]],hostVars:10,hostBindings:function(t,e){1&t&&ga("@openClose.done",function(){return e.closeOpenDone()})("@expandCollapse.done",function(){return e.expandCollapseDone()}),2&t&&(rl("@openClose",e.openedState)("@expandCollapse",e.expandedStateObj),Ba(e.className),ja("ccf-drawer-end",e.classEnd)("ccf-drawer-opened",e.opened)("ccf-drawer-expanded",e.expanded))},inputs:{position:"position",opened:"opened",expanded:"expanded"},outputs:{openedChange:"openedChange",expandedChange:"expandedChange",stateChange:"stateChange"},exportAs:["ccfDrawer"],ngContentSelectors:OZ,decls:2,vars:0,consts:[[1,"cff-drawer-inner-container"]],template:function(t,e){1&t&&(wa(),ra(0,"div",0),xa(1),sa())},styles:["[_nghost-%COMP%]{display:block;position:absolute;top:0;bottom:0;z-index:2;outline:0;transform:translate(-100%);background-color:#fff}.ccf-drawer-end[_nghost-%COMP%]{right:0;transform:translate(100%)}[_nghost-%COMP%] .cff-drawer-inner-container[_ngcontent-%COMP%]{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}"],data:{animation:[Vg("openClose",[$g("open, open-instant",Hg({transform:"none"})),$g("closed",Hg({})),Wg("closed => open-instant",zg(0)),Wg("closed <=> open, open-instant => closed",zg(".5s ease-in-out"))]),Vg("expandCollapse",[$g("collapsed",Hg({})),$g("half",Hg({width:"calc(50% - {{ margin }}px)"}),TZ),$g("extended",Hg({width:"calc(100% - {{ width }}px - {{ margin }}px)"}),TZ),$g("full",Hg({width:"calc(100% - {{ margin }}px - {{ margin2 }}px)"}),TZ),Wg("* <=> *",zg(".5s ease-in-out"))])]},changeDetection:0}),t})();function PZ(t,e){1&t&&(ra(0,"ccf-drawer-content"),xa(1,2),sa())}const MZ=[[["ccf-drawer"]],[["ccf-drawer-content"]],"*"],IZ=["ccf-drawer","ccf-drawer-content","*"];function DZ(t){throw new Error(`Multiple drawers in position ${t}`)}let RZ=(()=>{class t{constructor(t,e){this.cdr=e,this.className="ccf-drawer-container",this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get content(){var t;return null!==(t=this.content1.first)&&void 0!==t?t:this.content2.first}get hasWrappedContent(){return 0!==this.content1.length}ngAfterViewInit(){this.drawers.changes.pipe(Kd(null)).subscribe(()=>{const t=this.validateDrawers();this.channel.sendMessage({type:"drawer-containers-changed",drawers:t}),this.cdr.markForCheck()}),this.content1.changes.pipe(Kd(null)).subscribe(()=>{this.channel.sendMessage({type:"content-container-changed",content:this.content}),this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return!0}validateDrawers(){const t=this.drawers.toArray(),e=t.filter(t=>"start"===t.position),n=t.filter(t=>"end"===t.position);return e.length>1&&DZ("start"),n.length>1&&DZ("end"),[e[0],n[0]]}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-container"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,AZ,5),Xc(n,CZ,5)),2&t){let t;Wc(t=Yc())&&(e.drawers=t),Wc(t=Yc())&&(e.content1=t)}},viewQuery:function(t,e){if(1&t&&qc(CZ,5),2&t){let t;Wc(t=Yc())&&(e.content2=t)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},exportAs:["ccfDrawerContainer"],features:[_l([SZ])],ngContentSelectors:IZ,decls:3,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&(wa(MZ),xa(0),xa(1,1),Jo(2,PZ,2,0,"ccf-drawer-content",0)),2&t&&(ws(2),na("ngIf",!e.hasWrappedContent))},directives:[_h,CZ],styles:["[_nghost-%COMP%]{display:block;position:relative;z-index:1;overflow:hidden;-webkit-overflow-scrolling:touch}"],changeDetection:0}),t})();function NZ(t,e){if(1&t&&(ra(0,"mat-option",6),ra(1,"div"),Za(2),sa(),sa()),2&t){const t=e.$implicit,n=va();na("value",t),ws(1),Ba(n.optionsVisible),ws(1),tl(" ",t," ")}}let LZ=(()=>{class t{constructor(t){this.ga=t,this.selectionChange=new Rc,this.optionsVisible="invisible"}toggleOptions(){this.optionsVisible="visible"===this.optionsVisible?"invisible":"visible"}selectionChanged(t){this.selection=t,this.ga.event("selection_change","dropdown",`${this.label}:${t}`),this.selectionChange.emit(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dropdown"]],inputs:{label:"label",options:"options",selection:"selection"},outputs:{selectionChange:"selectionChange"},decls:7,vars:3,consts:[[1,"ccf-dropdown","wrapper"],[1,"container"],[1,"dropdown-form-field"],[1,"label"],["disableOptionCentering","true","panelClass","option-panel","disableRipple","true",1,"selected-value",3,"value","selectionChange","openedChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-form-field",2),ra(3,"div",3),Za(4),sa(),ra(5,"mat-select",4),fa("selectionChange",function(t){return e.selectionChanged(t.value)})("openedChange",function(){return e.toggleOptions()}),Jo(6,NZ,3,5,"mat-option",5),sa(),sa(),sa(),sa()),2&t&&(ws(4),tl(" ",e.label," "),ws(1),na("value",e.selection),ws(1),na("ngForOf",e.options))},directives:[lU,XX,yh,av],styles:["@-webkit-keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dropdown-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:1em;padding-right:1em;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{font-size:.875rem;border:none}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix mat-select{font-size:1rem;font-weight:bold}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .option-panel{-webkit-animation:slideInHorizontalDropdown .3s;animation:slideInHorizontalDropdown .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;position:absolute!important;top:1.55rem;max-width:9.5rem} .option-panel .mat-option{border-bottom-width:1px;border-bottom-style:solid;padding-left:1em} .option-panel :last-child{border-bottom:none} .cdk-overlay-pane{min-width:0rem!important}.dropdown-form-field[_ngcontent-%COMP%]{height:3rem;width:100%}.dropdown-form-field[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{padding-bottom:.063rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem} .ccf-dropdown .mat-select-arrow-wrapper{transform:translatey(-.5em)}"],changeDetection:0}),t})();const jZ=["popover"];function FZ(t,e){if(1&t){const t=ua();ra(0,"div",7,8),ra(2,"div"),ra(3,"div",9),Za(4),sa(),ra(5,"input",10),fa("keyup",function(e){return $e(t),va().onKeyLow(e)}),sa(),sa(),ra(6,"ng5-slider",11),fa("valueChange",function(e){return $e(t),va().lowValue=e})("highValueChange",function(e){return $e(t),va().highValue=e})("userChangeEnd",function(){return $e(t),va().sliderValueChanged()}),sa(),ra(7,"div"),ra(8,"div",12),Za(9),sa(),ra(10,"input",13),fa("keyup",function(e){return $e(t),va().onKeyHigh(e)}),sa(),sa(),sa()}if(2&t){const t=va();ws(2),nl("label min fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.floor,"> "),ws(1),Sa("value",t.lowValue),ws(1),nl("slider fade-in ",t.contentsVisible,""),na("options",t.options)("value",t.lowValue)("highValue",t.highValue),ws(1),nl("label max fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.ceil," "),ws(1),Sa("value",t.highValue)}}let BZ=(()=>{class t{constructor(t,e,n){this.element=e,this.ga=n,this.selectionChange=new Rc,this.isSliderOpen=!1,this.contentsVisible="invisible",this.isSliderInitialized=!1;const i=t.position().flexibleConnectedTo(e).withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayRef=t.create({panelClass:"slider-pane",positionStrategy:i})}get rangeLabel(){const{lowValue:t,highValue:e}=this;return t===e?`${t}`:`${t}-${e}`}ngOnChanges(t){t.valueRange&&this.optionsChanged(),t.selection&&(this.lowValue=Math.min(...this.selection),this.highValue=Math.max(...this.selection))}optionsChanged(){var t,e;this.options={floor:this.valueRange?this.valueRange[0]:0,ceil:this.valueRange?this.valueRange[1]:0,step:1,hideLimitLabels:!0,hidePointerLabels:!0},this.lowValue=null!==(t=this.options.floor)&&void 0!==t?t:0,this.highValue=null!==(e=this.options.ceil)&&void 0!==e?e:0}ngOnDestroy(){this.overlayRef.dispose()}closeSliderPopover(t){var e,n;const{element:i,isSliderOpen:r,popoverElement:s}=this;r&&(i.nativeElement.contains(t)||(null===(n=null===(e=null==s?void 0:s.nativeElement)||void 0===e?void 0:e.contains)||void 0===n?void 0:n.call(e,t))||(this.overlayRef.detach(),this.isSliderInitialized=!1,this.isSliderOpen=!1,this.contentsVisible="invisible"))}toggleSliderPopover(){const{isSliderOpen:t,isSliderInitialized:e}=this;e?(this.overlayRef.detach(),this.isSliderInitialized=!1):!e&&!t&&this.initializeSliderPopover(),this.contentsVisible="visible"===this.contentsVisible?"invisible":"visible",this.isSliderOpen=!t}sliderValueChanged(){const{lowValue:t,highValue:e}=this;this.selection=[t,e],this.ga.event("slider_range_change","dual_slider",`${this.label}:${t}:${e}`),this.selectionChange.emit(this.selection)}initializeSliderPopover(){const{overlayRef:t,popoverPortal:e}=this;t.attach(e),t.updatePosition(),this.isSliderInitialized=!0}onKeyLow(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.lowValue=e),t.target.value=String(this.lowValue),t.target.blur(),this.sliderValueChanged())}onKeyHigh(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.highValue=e),t.target.value=String(this.highValue),t.target.blur(),this.sliderValueChanged())}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dual-slider"]],viewQuery:function(t,e){if(1&t&&(qc(Vp,7),qc(jZ,5,kl)),2&t){let t;Wc(t=Yc())&&(e.popoverPortal=t.first),Wc(t=Yc())&&(e.popoverElement=t.first)}},hostBindings:function(t,e){1&t&&fa("click",function(t){return e.closeSliderPopover(t.target)},!1,Ir)("touchstart",function(t){return e.closeSliderPopover(t.target)},!1,Ir)},inputs:{label:"label",valueRange:"valueRange",selection:"selection"},outputs:{selectionChange:"selectionChange"},features:[ye],decls:10,vars:4,consts:[[1,"ccf-slider","wrapper"],[1,"container"],["class","ccf-slider detached",4,"cdk-portal"],[1,"slider-form-field",3,"click"],[1,"slider-labels"],[1,"name-label"],[1,"range-label"],[1,"ccf-slider","detached"],["popover",""],[1,"label","floor"],["type","text",1,"input-low",3,"value","keyup"],[3,"options","value","highValue","valueChange","highValueChange","userChangeEnd"],[1,"label","ceil"],["type","text",1,"input-high",3,"value","keyup"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Jo(2,FZ,11,16,"div",2),ra(3,"mat-form-field",3),fa("click",function(){return e.toggleSliderPopover()}),ra(4,"div",4),ra(5,"span",5),Za(6),sa(),ra(7,"span",6),Za(8),sa(),sa(),oa(9,"mat-select"),sa(),sa(),sa()),2&t&&(ws(3),ja("highlight",e.isSliderOpen),ws(3),Ja(e.label),ws(2),Ja(e.rangeLabel))},directives:[zp,lU,XX,BY],styles:[".slider-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;font-size:.875rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.slider-labels[_ngcontent-%COMP%]{display:flex;flex-direction:column}.slider-labels[_ngcontent-%COMP%] .name-label[_ngcontent-%COMP%]{padding-bottom:.25rem}.slider-labels[_ngcontent-%COMP%] .range-label[_ngcontent-%COMP%]{font-weight:bold} .ccf-slider.wrapper .mat-select-arrow-wrapper{transform:translatey(-1.5em)}@-webkit-keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .slider-pane{position:absolute!important;top:-1px}.ccf-slider.detached[_ngcontent-%COMP%]{-webkit-animation:slideInHorizontalSlider .3s;animation:slideInHorizontalSlider .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;display:flex;justify-content:center;align-items:center;width:0rem;height:4.375rem;padding:.75rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] {visibility:hidden;margin-top:.9375rem;margin-bottom:.9375rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-bar{opacity:.2;height:.15rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-selection{opacity:1}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer{width:1rem;height:1rem;top:-.405rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer:after{display:none}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:2rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.min[_ngcontent-%COMP%]{margin-right:1rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%]{margin-left:1rem;align-items:flex-end}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{text-align:right}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .floor[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%]{font-size:.875rem}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:none;width:1.75rem;font-size:1rem;font-weight:bold;padding:0}"]}),t})();function VZ(t,e){if(1&t){const t=ua();ra(0,"div",4),ra(1,"mat-checkbox",5),fa("change",function(e){const n=$e(t).$implicit;return va().filterOnChange(e,n)}),Za(2),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("checked",null==n.selection?null:n.selection.includes(t)),ws(1),tl(" ",t," ")}}let zZ=(()=>{class t{constructor(t){this.ga=t,this.selection=[],this.columns=3,this.selectionChange=new Rc}filterOnChange(t,e){t.checked?(this.selection=[...this.selection,e],this.ga.event("filter_added","filter_checkbox",e)):(this.selection=this.selection.filter(t=>t!==e),this.ga.event("filter_removed","filter_checkbox",e)),this.selectionChange.emit(this.selection)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-checkbox"]],inputs:{label:"label",options:"options",selection:"selection",columns:"columns"},outputs:{selectionChange:"selectionChange"},decls:5,vars:6,consts:[[1,"filter-container"],[1,"filter-label"],[1,"options-container"],["class","option",4,"ngFor","ngForOf"],[1,"option"],[3,"checked","change"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Za(2),sa(),ra(3,"div",2),Jo(4,VZ,3,2,"div",3),sa(),sa()),2&t&&(ws(2),Ja(e.label),ws(1),ja("three",3===e.columns)("four",4===e.columns),ws(1),na("ngForOf",e.options))},directives:[yh,OX],styles:[".mat-checkbox.mat-accent .mat-checkbox-checkmark-path{stroke:#fff!important} .mat-checkbox.mat-accent .mat-checkbox-inner-container{margin-right:1rem}.filter-label[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:bold}.options-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap}.options-container.three[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:33%}.options-container.four[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:25%}.option[_ngcontent-%COMP%]{color:#fafafa}"],changeDetection:0}),t})();const UZ=function(){return["Both","Male","Female"]},HZ=function(){return[1,110]},$Z=function(){return[13,83]};let GZ=(()=>{class t{constructor(t){this.ga=t,this.filtersChange=new Rc,this.applyFilters=new Rc}updateFilter(t,e){this.filters=Object.assign(Object.assign({},this.filters),{[e]:t}),this.ga.event("filter_update","filter_content",`${e}:${t}`),this.filtersChange.emit(this.filters)}applyButtonClick(){this.ga.event("filters_applied","filter_content"),this.applyFilters.emit(this.filters)}refreshFilters(){this.filters=JSON.parse(JSON.stringify(iX)),this.ga.event("filters_reset","filter_content"),this.filtersChange.emit(this.filters)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-content"]],inputs:{hidden:"hidden",filters:"filters",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange",applyFilters:"applyFilters"},decls:14,vars:23,consts:[[1,"patient-filters"],["label","Sex",3,"options","selection","selectionChange"],["label","Age",3,"valueRange","selection","selectionChange"],["label","BMI",3,"valueRange","selection","selectionChange"],[1,"filter","assays"],["label","Assay Types",3,"columns","options","selection","selectionChange"],[1,"filter","providers"],["label","Tissue Providers",3,"columns","options","selection","selectionChange"],[1,"button-container"],["mat-button","",1,"outline-button",3,"click"],[1,"refresh-icon"],[1,"icon","refresh",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"ccf-dropdown",1),fa("selectionChange",function(t){return e.updateFilter(t,"sex")}),sa(),ra(2,"ccf-dual-slider",2),fa("selectionChange",function(t){return e.updateFilter(t,"ageRange")}),sa(),ra(3,"ccf-dual-slider",3),fa("selectionChange",function(t){return e.updateFilter(t,"bmiRange")}),sa(),sa(),ra(4,"div",4),ra(5,"ccf-checkbox",5),fa("selectionChange",function(t){return e.updateFilter(t,"technologies")}),sa(),sa(),ra(6,"div",6),ra(7,"ccf-checkbox",7),fa("selectionChange",function(t){return e.updateFilter(t,"tmc")}),sa(),sa(),ra(8,"div",8),ra(9,"button",9),fa("click",function(){return e.applyButtonClick()}),Za(10,"APPLY FILTERS"),sa(),ra(11,"div",10),ra(12,"mat-icon",11),fa("click",function(){return e.refreshFilters()}),Za(13,"refresh"),sa(),sa(),sa()),2&t&&(ja("hidden",e.hidden),ws(1),na("options",Oc(20,UZ))("selection",null==e.filters?null:e.filters.sex),ws(1),na("valueRange",Oc(21,HZ))("selection",null==e.filters?null:e.filters.ageRange),ws(1),na("valueRange",Oc(22,$Z))("selection",null==e.filters?null:e.filters.bmiRange),ws(1),ja("hidden",e.hidden),ws(1),na("columns",4)("options",e.technologyFilters)("selection",null==e.filters?null:e.filters.technologies),ws(1),ja("hidden",e.hidden),ws(1),na("columns",3)("options",e.providerFilters)("selection",null==e.filters?null:e.filters.tmc),ws(1),ja("hidden",e.hidden))},directives:[LZ,BZ,zZ,__,p_],styles:[".filter[_ngcontent-%COMP%]{margin-top:2rem}.filter.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.filter.assays[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{margin-right:0 rem;width:25%}.button-container[_ngcontent-%COMP%]{margin-top:2rem;display:flex;flex-direction:row-reverse;align-items:center}.button-container.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.outline-button[_ngcontent-%COMP%]{box-shadow:.1rem .1rem .2rem #0000001d}.refresh-icon[_ngcontent-%COMP%]{padding:.25rem;border-radius:.25rem;margin-right:1rem;display:flex;justify-content:center;align-items:center;transition:.6s}.refresh-icon[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{cursor:pointer;transition:.6s;transition-property:background}.patient-filters[_ngcontent-%COMP%]{display:flex;width:90%;padding-top:1rem}.patient-filters.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.patient-filters[_ngcontent-%COMP%] ccf-dual-slider[_ngcontent-%COMP%]{margin-left:.5rem;width:33%}.patient-filters[_ngcontent-%COMP%] ccf-dropdown[_ngcontent-%COMP%]{width:33%}"],changeDetection:0}),t})();function WZ(t,e){1&t&&(ra(0,"div"),ra(1,"mat-icon",7),Za(2,"close"),sa(),sa())}function qZ(t,e){1&t&&oa(0,"mat-icon",8)}let XZ=(()=>{class t{constructor(){this.filtersChange=new Rc,this.filtersVisible=!1}toggleFilterVisible(){this.filtersVisible=!this.filtersVisible}removeBox(){this.filtersVisible=!1}applyFilters(t){this.filters=t,this.filtersChange.emit(t),this.removeBox()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-popover"]],inputs:{filters:"filters",drawerExpanded:"drawerExpanded",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange"},decls:8,vars:12,consts:[[1,"filters-popover"],[1,"show-hide",3,"click"],[4,"ngIf","ngIfElse"],["notShow",""],[1,"popup-container"],[1,"popup-body"],[3,"technologyFilters","providerFilters","hidden","filters","applyFilters"],[1,"icon"],["svgIcon","filter",1,"icon","funnel"]],template:function(t,e){if(1&t&&(ra(0,"div",0),ra(1,"button",1),fa("click",function(){return e.toggleFilterVisible()}),Jo(2,WZ,3,0,"div",2),Jo(3,qZ,1,0,"ng-template",null,3,Jc),sa(),ra(5,"div",4),ra(6,"div",5),ra(7,"ccf-filters-content",6),fa("applyFilters",function(t){return e.applyFilters(t)}),sa(),sa(),sa(),sa()),2&t){const t=ta(4);ja("expanded",e.drawerExpanded),ws(2),na("ngIf",e.filtersVisible)("ngIfElse",t),ws(3),ja("visible",e.filtersVisible)("hidden",!e.filtersVisible),ws(2),na("technologyFilters",e.technologyFilters)("providerFilters",e.providerFilters)("hidden",!e.filtersVisible)("filters",e.filters)}},directives:[_h,GZ,p_],styles:[".filters-popover[_ngcontent-%COMP%]{position:inherit}.filters-popover.expanded[_ngcontent-%COMP%]{position:relative}.filters-popover.expanded[_ngcontent-%COMP%] .popup-container[_ngcontent-%COMP%]{right:inherit}.filters-popover.expanded[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding-left:4em!important}.popup-container[_ngcontent-%COMP%]{position:absolute;z-index:5;top:1.2rem;left:1.48rem;box-shadow:.2rem .2rem 1rem #00000058}.popup-container[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding:1.5rem;position:relative;height:26.5rem}.popup-container.visible[_ngcontent-%COMP%]{width:35rem;height:26.5rem;transition:width .2s ease-in-out;border-width:1px}.popup-container.visible[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:1;transition-delay:.3s;transition-duration:.2s}.popup-container.hidden[_ngcontent-%COMP%]{width:0;height:0;transition:all .2s ease-out;transition-delay:.3s;pointer-events:none}.popup-container.hidden[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.show-hide[_ngcontent-%COMP%]{background:none;border:none;z-index:10;position:relative;cursor:pointer;outline:none;padding:.5rem;border-radius:.25rem;transition:.6s}"],changeDetection:0}),t})();class YZ{constructor(){this.treeModel$=new lp(1),this.nodes$=this.treeModel$.pipe(D(t=>Object.values(t.nodes))),this.rootNode$=this.treeModel$.pipe(D(t=>t.nodes[t.root]))}setTreeModel(t){this.treeModel$.next(t),this.treeModel=t}filter(t){return this.nodes$.pipe(D(e=>this.lookup(e,t.toLowerCase())))}lookup(t,e){const n=new Map;return t&&t.forEach(t=>{if(t.label.toLowerCase().includes(e)&&!n.get(t.id))n.set(t.id,{index:this.getIndexOfMatch(t.label,e),displayLabel:this.formatLabel(t.label,e),node:t});else{const i=t.synonymLabels.find(t=>t.toLowerCase().includes(e));i&&!n.get(t.id)&&n.set(t.id,{index:this.getIndexOfMatch(t.label+" ("+i+")",e),displayLabel:this.formatLabel(t.label+" ("+i+")",e),node:t})}}),Array.from(n.values())}getIndexOfMatch(t,e){return t.toLowerCase().indexOf(e)}formatLabel(t,e){const n=this.getIndexOfMatch(t,e);return[t.slice(0,n),t.slice(n,n+e.length),t.slice(n+e.length)]}getChildren(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};return(0,_G.at)(i,t.children)}}YZ.\u0275fac=function(t){return new(t||YZ)},YZ.\u0275prov=xt({token:YZ,factory:YZ.\u0275fac}),sw([iB.ak],YZ.prototype,"getChildren",null);class KZ{constructor(t,e){this.original=t,this.level=e,this.visible=!0,this.opacity=20}get label(){return this.original.label}get expandable(){return this.original.children.length>0}static create(t,e){return new KZ(t,e)}}function QZ(t,e){if(1&t){const t=ua();ra(0,"div",4),fa("click",function(e){const n=$e(t).node,i=va();return i.select(e.ctrlKey,n,!0,!i.isSelected(n))}),Za(1),sa()}if(2&t){const t=e.node,n=va();ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label))("filtered-out",!n.occurenceData[t.original.id]&&!!n.termData[t.original.id])("unavailable",!n.termData[t.original.id])("selected",n.isSelected(t)),ws(1),Ja("colon"===t.label?"large intestine":t.label)}}function ZZ(t,e){1&t&&ca(0)}const JZ=function(t){return{node:t}};function tJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",5),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,9),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),oa(6,"div",10),Jo(7,ZZ,1,0,"ng-container",11),ra(8,"div",12),Za(9),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(3),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(18,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}function eJ(t,e){1&t&&ca(0)}function nJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",13),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,14),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),ra(6,"button",15),ra(7,"mat-icon",16),Za(8),sa(),sa(),Jo(9,eJ,1,0,"ng-container",11),ra(10,"div",12),Za(11),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(2),ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label)),Zo("aria-label","Toggle ",t.label,""),ws(2),tl(" ",n.control.isExpanded(t)?"expand_less":"expand_more"," "),ws(1),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(22,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}const iJ=(0,_G.property)("level"),rJ=(0,_G.property)("expandable");let sJ=(()=>{class t{constructor(t,e){this.cdr=t,this.ga=e,this.atScrollBottom=!1,this.nodeSelected=new Rc,this.nodeChanged=new Rc,this.indent="1.5rem",this.control=new WY(iJ,rJ),this.flattener=new dK(KZ.create,iJ,rJ,_G.invoke.bind(void 0,this,"getChildren")),this.dataSource=new pK(this.control,this.flattener),this._nodes=void 0,this.anySelectionsMade=!1,this.selectedNodes=[]}set nodes(t){var e;this._nodes=t,this.control&&(this.dataSource.data=null!==(e=this._nodes)&&void 0!==e?e:[])}get nodes(){return this._nodes}set getChildren(t){var e;this._getChildren=t,this.dataSource.data=null!==(e=this.nodes)&&void 0!==e?e:[]}get getChildren(){return this._getChildren}set occurenceData(t){this._occurenceData=t||{}}get occurenceData(){return this._occurenceData}set termData(t){this._termData=t||{}}get termData(){return this._termData}ngOnInit(){this.control.dataNodes&&this.control.expand(this.control.dataNodes[0])}ngOnChanges(t){if(t.ontologyFilter){const e=t.ontologyFilter.currentValue;(null==e?void 0:e.length)>=0&&this.selectByIDs(e)}t.rootNode&&this.selectByIDs([t.rootNode.currentValue])}selectByIDs(t){const e=this.control.dataNodes,n=e.filter(e=>t.indexOf(e.original.id)>-1);(null==n?void 0:n.length)>0&&(this.selectedNodes=n,this.ga.event("nodes_selected_by_ids","ontology_tree",n.map(t=>t.label).join(",")),this.control.collapseAll(),this.selectedNodes.forEach(t=>{this.expandAndSelect(t.original,t=>{var n;return null===(n=e.find(e=>e.original.id===t.parent))||void 0===n?void 0:n.original},!0)}))}expandAndSelect(t,e,n=!1){var i;const{cdr:r,control:s}=this,o=new Set;let a=e(t);for(;a;)o.add(a),a=e(a);const l=(0,_G.filter)(s.dataNodes,t=>o.has(t.original)),c=s.dataNodes.find(e=>e.original===t);n||(this.selectedNodes=[],s.collapseAll());for(const u of l)s.expand(u);"body"===t.label&&(null===(i=s.dataNodes)||void 0===i?void 0:i.length)>0&&s.expand(s.dataNodes[0]),this.select(n,c,!1,!0),r.detectChanges()}isInnerNode(t,e){return e.expandable}isSelected(t){return(null==t?void 0:t.original.id)===this.rootNode||this.selectedNodes.filter(e=>(null==t?void 0:t.original.label)===(null==e?void 0:e.original.label)).length>0}select(t,e,n,i){if(this.anySelectionsMade||(this.selectedNodes=[],this.anySelectionsMade=!0),void 0===e)return this.selectedNodes=[],void this.ga.event("nodes_unselected","ontology_tree");t?i?this.selectedNodes.indexOf(e)<0&&this.selectedNodes.push(e):this.selectedNodes.splice(this.selectedNodes.indexOf(e),1):(this.selectedNodes=[],i&&this.selectedNodes.push(e)),this.ga.event("nodes_selected","ontology_tree",this.selectedNodes.map(t=>t.label).join(",")),n&&this.nodeSelected.emit(this.selectedNodes.map(t=>null==t?void 0:t.original))}mouseOver(t){this.highlightedNode=t}mouseOut(){this.highlightedNode=void 0}updateOpacity(t,e){t.opacity=e,this.ga.event("opacity_update","ontology_tree",t.label,e),this.nodeChanged.emit(t)}resetNode(t){t.opacity=20,t.visible=!0,this.ga.event("node_reset","ontology_tree",t.label),this.nodeChanged.emit(t)}toggleVisibility(t){t.visible=!0!==t.visible,this.ga.event("visibility_update","ontology_tree",t.label,+t.visible),this.nodeChanged.emit(t)}getLeftIndent(t){return-1.5*t+"rem"}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<20}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-tree"]],inputs:{ontologyFilter:"ontologyFilter",rootNode:"rootNode",nodes:"nodes",getChildren:"getChildren",occurenceData:"occurenceData",termData:"termData",header:"header"},outputs:{nodeSelected:"nodeSelected",nodeChanged:"nodeChanged"},features:[ye],decls:5,vars:5,consts:[[1,"ccf-ontology-tree",3,"dataSource","treeControl","scroll"],["selectableRegion",""],["class","node leaf-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef"],["class","node inner-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef","matTreeNodeDefWhen"],[1,"text",3,"click"],["matTreeNodePadding","",1,"node","leaf-node",3,"matTreeNodePaddingIndent","mouseleave"],["svgIcon","app:opacity",1,"icon","opacity",3,"mouseenter"],[1,"slider"],[3,"visible","opacity","opacityChange","opacityReset","visibilityToggle"],["slider1",""],[1,"non-expandable"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"num-results"],["matTreeNodePadding","",1,"node","inner-node",3,"matTreeNodePaddingIndent","mouseleave"],["slider2",""],["mat-icon-button","","matTreeNodeToggle","",1,"toggle"],[1,"icon","font-icon"]],template:function(t,e){1&t&&(ra(0,"mat-tree",0),fa("scroll",function(t){return e.onScroll(t)}),Jo(1,QZ,2,9,"ng-template",null,1,Jc),Jo(3,tJ,10,20,"mat-tree-node",2),Jo(4,nJ,12,24,"mat-tree-node",3),sa()),2&t&&(ja("header-hidden",!e.header),na("dataSource",e.dataSource)("treeControl",e.control),ws(4),na("matTreeNodeDefWhen",e.isInnerNode))},directives:[cK,oK,sK,aK,p_,JW,kh,__,uK],styles:[".ccf-ontology-tree[_ngcontent-%COMP%]{background:none;scrollbar-width:thin;max-height:calc(50vh - 10rem);overflow:auto;overflow-x:hidden}.ccf-ontology-tree.header-hidden[_ngcontent-%COMP%]{max-height:40vh}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .toggle[_ngcontent-%COMP%]{z-index:-1;opacity:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .text[_ngcontent-%COMP%]{margin-left:.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]{min-height:0;font-size:1rem;margin-bottom:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:width;position:relative;z-index:1}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%]{width:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%] ccf-opacity-slider[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider{height:1.5rem;margin-left:1rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box .slider-and-label{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider{height:1.5rem;width:15rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider .mat-slider-wrapper{top:12px}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .opacity-value{width:3rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-right:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node.inner-node[_ngcontent-%COMP%] button.hidden[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .opacity[_ngcontent-%COMP%]{position:relative;min-width:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:normal}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .autocomplete-open[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{border-bottom:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .non-expandable[_ngcontent-%COMP%]{margin-left:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:nowrap;cursor:pointer;margin-left:1rem;opacity:1;width:50%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:opacity,width}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.hidden[_ngcontent-%COMP%]{opacity:0;width:0%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.unavailable[_ngcontent-%COMP%]{pointer-events:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-left:auto}.scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:90%;bottom:0;pointer-events:none}.scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function oJ(t,e){if(1&t&&(ra(0,"mat-option",8),ra(1,"span",9),Za(2),sa(),ra(3,"span",10),Za(4),sa(),ra(5,"span",11),Za(6),sa(),sa()),2&t){const t=e.$implicit;na("value",t),ws(2),Ja(t.displayLabel[0]),ws(2),Ja(t.displayLabel[1]),ws(2),Ja(t.displayLabel[2])}}let aJ=(()=>{class t{constructor(t,e){this.ontologyService=t,this.ga=e,this.selected=new Rc,this.formControl=new gz(""),this.autoCompleteOpen=!1}ngOnInit(){this.filteredResults$=this.formControl.valueChanges.pipe(Hd(t=>"string"==typeof t),Kd(""),Qd(t=>this.ontologyService.filter(t)),D(t=>(0,_G.sortBy)(t,[this.sortBySynonymResult,"index",this.sortLexically])))}displayFormatter(t){var e;return(null!==(e=null==t?void 0:t.displayLabel)&&void 0!==e?e:[]).join("")}sortBySynonymResult(t){return t.displayLabel.join().includes("(")?1:-1}sortLexically(t){return t.node.label.toLowerCase()}onSelect(t){const e=(0,_G.get)(t,["option","value","node"]);e&&(this.ga.event("search","ontology_search",e.id),this.selected.emit(e),this.formControl.reset())}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-search"]],inputs:{placeholderText:"placeholderText"},outputs:{selected:"selected"},decls:10,vars:9,consts:[[1,"ccf-ontology-search"],["appearance","outline",1,"field"],["matPrefix","","color","primary",1,"search"],["type","text","matInput","",1,"input",3,"placeholder","formControl","matAutocomplete"],[1,"ccf-ontology-search","detached","autocomplete",3,"displayWith","optionSelected","opened","closed"],["autocomplete",""],[1,"results-container"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"prefix"],[1,"search-term"],[1,"suffix"]],template:function(t,e){if(1&t&&(ra(0,"form",0),ra(1,"mat-form-field",1),ra(2,"mat-icon",2),Za(3,"search"),sa(),oa(4,"input",3),ra(5,"mat-autocomplete",4,5),fa("optionSelected",function(t){return e.onSelect(t)})("opened",function(){return e.autoCompleteOpen=!0})("closed",function(){return e.autoCompleteOpen=!1}),ra(7,"div",6),Jo(8,oJ,7,4,"mat-option",7),Mc(9,"async"),sa(),sa(),sa(),sa()),2&t){const t=ta(6);ja("autocomplete-open",e.autoCompleteOpen),ws(4),na("placeholder",e.placeholderText)("formControl",e.formControl)("matAutocomplete",t),ws(1),na("displayWith",e.displayFormatter),ws(3),na("ngForOf",Ic(9,7,e.filteredResults$))}},directives:[wz,YV,_z,lU,p_,nU,LU,TV,TU,XV,Cz,xU,yh,av],pipes:[Dh],styles:[".ccf-ontology-search[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem .25rem 0;margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;height:3rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix input{margin-left:.4rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-prefix{top:.5rem;border:none}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0 .25rem;min-width:2.5rem} .ccf-ontology-search.detached{border:.125rem solid;border-top:none;border-radius:0 0 .25rem .25rem;max-height:18rem} .ccf-ontology-search.detached .results-container{width:23.75rem;margin-bottom:1rem;overflow:auto;max-height:15rem;scrollbar-width:thin} .ccf-ontology-search.detached .results-container mat-option{height:1.5rem;width:23.75rem} .ccf-ontology-search.detached .results-container mat-option .search-term{text-decoration:underline}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0;border-bottom:none}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem 0 0;border-bottom:none}"],changeDetection:0}),t})();const lJ=function(t){return[t]};function cJ(t,e){if(1&t){const t=ua();ra(0,"ccf-ontology-tree",2),fa("nodeSelected",function(e){return $e(t),va().ontologySelection.emit(e)}),sa()}if(2&t){const t=e.ngIf,n=va();na("nodes",Tc(7,lJ,t))("rootNode",t.id)("getChildren",n.ontologySearchService.getChildren)("occurenceData",n.occurenceData)("termData",n.termData)("ontologyFilter",n.ontologyFilter)("header",n.header)}}let uJ=(()=>{class t{constructor(t){this.ontologySearchService=t,this.ontologySelection=new Rc}ngOnChanges(t){"treeModel"in t&&this.treeModel&&this.ontologySearchService.setTreeModel(this.treeModel)}selected(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};this.tree.expandAndSelect(t,t=>i[t.parent])}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-selection"]],viewQuery:function(t,e){if(1&t&&qc(sJ,5),2&t){let t;Wc(t=Yc())&&(e.tree=t.first)}},inputs:{occurenceData:"occurenceData",termData:"termData",treeModel:"treeModel",ontologyFilter:"ontologyFilter",header:"header",placeholderText:"placeholderText"},outputs:{ontologySelection:"ontologySelection"},features:[_l([YZ]),ye],decls:3,vars:4,consts:[[3,"placeholderText","selected"],["class","tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected",4,"ngIf"],[1,"tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected"]],template:function(t,e){1&t&&(ra(0,"ccf-ontology-search",0),fa("selected",function(t){return e.selected(t)}),sa(),Jo(1,cJ,1,9,"ccf-ontology-tree",1),Mc(2,"async")),2&t&&(na("placeholderText",e.placeholderText),ws(1),na("ngIf",Ic(2,2,e.ontologySearchService.rootNode$)))},directives:[aJ,_h,sJ],pipes:[Dh],styles:[""],changeDetection:0}),t})(),hJ=(()=>{class t{constructor(t,e,n){this.drawer=t,this.cdr=n,this.className="ccf-drawer-toggle-button",this.position="start",this.opened=!1,this.subscriptions=new g;const i=e.connect(this);this.subscriptions.add(i.getMessagesFromSource(t).subscribe(t=>{this.handleMessage(t)&&n.markForCheck()}))}get classEnd(){return"end"===this.position}get icon(){let t="arrow_right",e="arrow_left";return"end"===this.position&&([t,e]=[e,t]),this.opened?e:t}ngAfterViewInit(){setTimeout(()=>{this.position=this.drawer.position,this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return"drawer-toggled"===t.payload.type&&(this.opened=t.payload.opened,!0)}toggle(){const t=this.drawer,{opened:e,expanded:n}=t;e?n?t.closeExpanded():t.close():t.open()}}return t.\u0275fac=function(e){return new(e||t)(ea(AZ),ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-toggle-button"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("ccf-drawer-toggle-button-end",e.classEnd))},decls:2,vars:1,consts:[["aria-hidden","false","aria-label","Close side drawer",1,"expand-collapse-icon",3,"click"]],template:function(t,e){1&t&&(ra(0,"mat-icon",0),fa("click",function(){return e.toggle()}),Za(1),sa()),2&t&&(ws(1),tl(" ",e.icon,"\n"))},directives:[p_],styles:["[_nghost-%COMP%]{position:absolute;top:calc(50% - 2.0625rem);right:-1.0625rem;width:1.0625rem;height:3rem;border-radius:0 .25rem .25rem 0;cursor:pointer;display:flex;align-items:center;transition:.6s}.ccf-drawer-toggle-button-end[_nghost-%COMP%]{right:unset;left:calc(-1rem - 1px);border-radius:.25rem 0 0 .25rem}[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{position:relative;right:.25rem;transition:all .5s}.ccf-drawer-toggle-button-end[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{right:unset;left:-.25rem}"],changeDetection:0}),t})();function dJ(t,e){1&t&&(ra(0,"div",7),oa(1,"mat-spinner",8),ra(2,"span",3),Za(3,"Loading External Site"),sa(),sa())}function pJ(t,e){if(1&t){const t=ua();ra(0,"iframe",9),fa("load",function(){return $e(t),va().loading=!1}),sa()}2&t&&Ko("src",va().safeUrl,wr)}let fJ=(()=>{class t{constructor(t){this.sanitizer=t,this.className="ccf-viewer",this.url="",this.closed=new Rc,this.loading=!0,this.safeUrl=null}ngOnChanges(t){"url"in t&&this.updateUrl()}updateUrl(){const{sanitizer:t,url:e}=this;this.safeUrl=null,e&&(this.safeUrl=t.bypassSecurityTrustResourceUrl(e),this.loading=!0)}}return t.\u0275fac=function(e){return new(e||t)(ea(hd))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-viewer"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{url:"url"},outputs:{closed:"closed"},features:[ye],decls:11,vars:4,consts:[[1,"toolbar"],["mat-flat-button","","target","_blank","rel","noopener noreferrer",1,"launch",3,"href","disabled"],[1,"icon"],[1,"text"],["mat-flat-button","",1,"close",3,"click"],["class","overlay",4,"ngIf"],["class","frame","title","Portal Data Viewer","referrerpolicy","no-referrer",3,"load",4,"ngIf"],[1,"overlay"],[1,"spinner"],["title","Portal Data Viewer","referrerpolicy","no-referrer",1,"frame",3,"load"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"a",1),ra(2,"mat-icon",2),Za(3,"launch"),sa(),ra(4,"span",3),Za(5,"Open in Portal"),sa(),sa(),ra(6,"button",4),fa("click",function(){return e.closed.emit()}),ra(7,"mat-icon",2),Za(8,"clear"),sa(),sa(),sa(),Jo(9,dJ,4,0,"div",5),Jo(10,pJ,1,1,"iframe",6)),2&t&&(ws(1),na("href",e.safeUrl,_r)("disabled",!e.safeUrl),ws(8),na("ngIf",e.loading),ws(1),na("ngIf",e.safeUrl))},directives:[w_,p_,__,_h,fZ],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;width:100%;height:1.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%]{margin-right:3.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch.mat-button-disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:.25rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .close[_ngcontent-%COMP%]{min-width:0;padding:0;line-height:1.5rem;border-radius:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:1.5rem;bottom:0;left:0;right:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{margin-bottom:.5rem}[_nghost-%COMP%] .frame[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0}),t})();function gJ(t,e){if(1&t&&oa(0,"div",3),2&t){const t=e.index;ja("line-tick-visible",va().tissueSectionExists(t+1))}}const mJ=function(){return[]};let bJ=(()=>{class t{constructor(){this.clsName="ccf-tissue-section-vis"}tissueSectionExists(t){return this.tissueSections.filter(e=>e.sectionNumber===t).length>0}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tissue-section-vis"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{totalTissueSections:"totalTissueSections",tissueSections:"tissueSections"},decls:7,vars:3,consts:[[1,"container"],["class","line-tick",3,"line-tick-visible",4,"ngFor","ngForOf"],[1,"x-axis"],[1,"line-tick"]],template:function(t,e){1&t&&(ra(0,"div"),Za(1,"0"),sa(),ra(2,"div",0),Jo(3,gJ,1,2,"div",1),oa(4,"div",2),sa(),ra(5,"div"),Za(6),sa()),2&t&&(ws(3),na("ngForOf",Oc(2,mJ).constructor(e.totalTissueSections)),ws(3),Ja(e.totalTissueSections))},directives:[yh],styles:["[_nghost-%COMP%]{width:100%;height:2.5rem;padding:.5rem 1rem;display:flex}[_nghost-%COMP%] .container[_ngcontent-%COMP%]{margin-right:.5rem;margin-left:.5rem;flex-grow:1;display:flex;position:relative;justify-content:space-evenly}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .line-tick[_ngcontent-%COMP%]{height:100%;width:1px;z-index:2}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .x-axis[_ngcontent-%COMP%]{width:100%;height:2px;position:absolute;top:calc(50% - 1px);right:0;z-index:1}"],changeDetection:0}),t})();function yJ(t,e){if(1&t){const t=ua();ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"a",9),fa("click",function(){$e(t);const e=va().$implicit;return va().linkClicked.emit(e)}),Za(4," DATA "),ra(5,"mat-icon"),Za(6,"open_in_new"),sa(),sa(),sa()}if(2&t){const t=va().$implicit;ws(1),La("background-image","url("+t.thumbnail+")"),ws(1),tl(" ",t.technology," ")}}function vJ(t,e){1&t&&(aa(0),Jo(1,yJ,7,3,"ng-template",6),la())}const _J=(()=>{let t=-1;return()=>(t+=1,t)})();let wJ=(()=>{class t{constructor(){this.className="ccf-thumbnail-carousel",this.linkClicked=new Rc,this.uid=_J(),this.config={allowTouchMove:!1,slidesOffsetBefore:4,slidesOffsetAfter:4,slidesPerView:"auto",spaceBetween:4,watchOverflow:!0},this.navigation={prevEl:"#"+this.prevButtonId,nextEl:"#"+this.nextButtonId}}get prevButtonId(){return`ccf-thumbnail-carousel-prev-button-${this.uid}`}get nextButtonId(){return`ccf-thumbnail-carousel-next-button-${this.uid}`}itemId(t,e){return e.thumbnail}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-thumbnail-carousel"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{data:"data"},outputs:{linkClicked:"linkClicked"},decls:11,vars:6,consts:[[1,"prev"],["mat-icon-button","","disableRipple",""],[1,"swiper",3,"config","navigation"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"next"],[1,"fade"],["swiperSlide",""],[1,"slide"],[1,"thumbnail"],[1,"link",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"button",1),ra(2,"mat-icon"),Za(3,"navigate_before"),sa(),sa(),sa(),ra(4,"swiper",2),Jo(5,vJ,2,0,"ng-container",3),sa(),ra(6,"div",4),ra(7,"button",1),oa(8,"div",5),ra(9,"mat-icon"),Za(10,"navigate_next"),sa(),sa(),sa()),2&t&&(ws(1),Ko("id",e.prevButtonId),ws(3),na("config",e.config)("navigation",e.navigation),ws(1),na("ngForOf",e.data)("ngForTrackBy",e.itemId),ws(2),Ko("id",e.nextButtonId))},directives:[__,p_,WQ,yh,GQ],styles:['[_nghost-%COMP%]{display:flex}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%]{flex-grow:1;padding-bottom:.3125rem}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%] .swiper-slide{width:3.75rem;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%]{display:flex;align-items:center;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] button[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:1.5rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{position:absolute;top:-.625rem;left:-2rem;z-index:10;width:2rem;height:3.125rem;opacity:1;transition:opacity ease-in-out .3s;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%]{cursor:default;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]{position:relative;width:100%;height:100%}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background-size:cover;position:relative;width:calc(100% - 2 * .125rem);height:calc(100% - 2 * .125rem);border-style:solid;border-width:.125rem;border-radius:.25rem;background-origin:padding-box;background-clip:padding-box;font-size:.875rem;font-weight:bold}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]:after{content:"";position:absolute;bottom:-.125rem;left:-.125rem;width:.125rem;height:.125rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;right:0;left:0;opacity:0;transition:opacity ease-in-out .3s;box-shadow:0 2px 4px #0009;font-size:.75rem;line-height:.75rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%], [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:focus, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:active{cursor:pointer;text-decoration:none}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]:hover .link[_ngcontent-%COMP%]{opacity:1}'],changeDetection:0}),t})();function xJ(t,e){if(1&t){const t=ua();ra(0,"mat-icon",14),fa("click",function(){return $e(t),va().toggleExpansion()}),Za(1),sa()}if(2&t){const t=va();ws(1),Ja(t.expanded?"expand_less":"expand_more")}}function SJ(t,e){if(1&t&&oa(0,"ccf-tissue-section-vis",20),2&t){const t=va(2);na("totalTissueSections",t.tissueBlock.sectionCount)("tissueSections",t.tissueBlock.sections)}}function EJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(2).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va(2);ws(1),na("data",t.tissueBlock.datasets)}}function CJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(3).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va().$implicit;ws(1),na("data",t.datasets)}}function OJ(t,e){if(1&t){const t=ua();ra(0,"div",22),ra(1,"div",23),ra(2,"mat-icon",24),Za(3,"bubble_chart"),sa(),ra(4,"div",17),ra(5,"div",8),Za(6),sa(),ra(7,"div",8),Za(8),sa(),sa(),ra(9,"div",9),fa("click",function(){const e=$e(t).$implicit;return va(2).linkHandler(e.link)}),ra(10,"div",10),Za(11,"TISSUE SECTION"),sa(),ra(12,"mat-icon",11),Za(13,"open_in_new"),sa(),sa(),sa(),Jo(14,CJ,2,1,"ng-container",13),sa()}if(2&t){const t=e.$implicit;ws(6),Ja(t.label),ws(2),Ja(t.description),ws(6),na("ngIf",t.datasets.length>0)}}function TJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"div",15),ra(2,"div",16),ra(3,"mat-icon",5),Za(4,"bubble_chart"),sa(),ra(5,"div",17),ra(6,"div",8),Za(7),sa(),ra(8,"div",8),Za(9),sa(),sa(),ra(10,"div",9),fa("click",function(){$e(t);const e=va();return e.linkHandler(e.tissueBlock.link)}),ra(11,"div",10),Za(12,"TISSUE BLOCK"),sa(),ra(13,"mat-icon",11),Za(14,"open_in_new"),sa(),sa(),sa(),Jo(15,SJ,1,2,"ccf-tissue-section-vis",18),Jo(16,EJ,2,1,"ng-container",13),sa(),Jo(17,OJ,15,3,"div",19),la()}if(2&t){const t=va();ws(7),Ja(t.tissueBlock.label),ws(2),Ja(t.tissueBlock.description),ws(6),na("ngIf",t.tissueBlock.sections.length>1),ws(1),na("ngIf",t.tissueBlock.datasets.length>0),ws(1),na("ngForOf",t.tissueBlock.sections)}}const kJ=function(t){return{"background-color":t}};let AJ=(()=>{class t{constructor(t){this.ga=t,this.clsName="ccf-donor-card",this.selected=!1,this.expanded=!1,this.highlighted=!1,this.checked=new Rc,this.linkClick=new Rc,this.hoverState=""}handleCheckbox(){this.selected=!this.selected,this.ga.event("selected_toggled","donor_card",this.tissueBlock.label,+this.selected),this.checked.emit(this.selected),this.expanded=!1}toggleExpansion(){this.selected&&(this.expanded=!this.expanded,this.ga.event("expanded_toggled","donor_card",this.tissueBlock.label,+this.expanded))}linkHandler(t){this.ga.event("link_clicked","donor_card",this.tissueBlock.label),this.selected?this.linkClick.emit(t):(this.selected=!0,this.checked.emit(this.selected))}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-donor-card"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{tissueBlock:"tissueBlock",selected:"selected",color:"color",expanded:"expanded",highlighted:"highlighted"},outputs:{checked:"checked",linkClick:"linkClick"},decls:19,vars:20,consts:[[1,"main-container"],[1,"checkbox-background",3,"ngStyle","click"],[1,"checkbox",3,"checked"],[1,"hoverable","default-padding","donor","mat-elevation-z2"],[1,"d-flex"],[1,"icon-size","icon-dark","mr-5"],[1,"donor-info"],[1,"title","description"],[1,"description"],[1,"hover-state","mat-elevation-z4",3,"click"],[1,"hover-title"],[1,"icon-size","hover-icon"],["class","icon-size ml-5 selectable",3,"click",4,"ngIf"],[4,"ngIf"],[1,"icon-size","ml-5","selectable",3,"click"],[1,"expanded-view","mat-elevation-z2","align-end"],[1,"info-block","hover-enabled","default-padding"],[1,"text-content"],[3,"totalTissueSections","tissueSections",4,"ngIf"],["class","expanded-view w-80 mat-elevation-z2 align-end",4,"ngFor","ngForOf"],[3,"totalTissueSections","tissueSections"],[1,"mt-05",3,"data","linkClicked"],[1,"expanded-view","w-80","mat-elevation-z2","align-end"],[1,"default-padding","info-block","hover-enabled"],[1,"icon-size","mr-5","icon-light"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),fa("click",function(){return e.handleCheckbox()}),oa(2,"mat-checkbox",2),sa(),ra(3,"div",3),ra(4,"div",4),ra(5,"mat-icon",5),Za(6,"person"),sa(),ra(7,"div",6),ra(8,"div",7),Za(9),sa(),ra(10,"div",8),Za(11),sa(),sa(),sa(),ra(12,"div",9),fa("click",function(){return e.linkHandler(e.tissueBlock.donor.link)}),ra(13,"div",10),Za(14,"DONOR"),sa(),ra(15,"mat-icon",11),Za(16,"open_in_new"),sa(),sa(),Jo(17,xJ,2,1,"mat-icon",12),sa(),sa(),Jo(18,TJ,18,5,"ng-container",13)),2&t&&(ws(1),ja("selected",e.selected)("highlighted",e.highlighted),na("ngStyle",Tc(18,kJ,e.selected?e.color:"transparent")),ws(1),ja("checkselected",e.selected),na("checked",e.selected),ws(1),ja("hover-enabled",e.selected)("expanded",e.expanded)("highlighted",e.highlighted),ws(6),Ja(e.tissueBlock.donor.label),ws(2),Ja(e.tissueBlock.donor.description),ws(6),na("ngIf",e.selected),ws(1),na("ngIf",e.expanded))},directives:[Th,OX,p_,_h,yh,bJ,wJ],styles:["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] .main-container[_ngcontent-%COMP%]{display:flex;min-height:3rem;width:100%;align-items:center;padding-left:.5rem}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%]{height:2rem;width:2rem;border-radius:50%;margin-right:.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-checked.mat-accent .mat-checkbox-background, [_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-indeterminate.mat-accent[_ngcontent-%COMP%] .mat-checkbox-background[_ngcontent-%COMP%]{background-color:transparent}[_nghost-%COMP%] .checkbox-background.highlighted[_ngcontent-%COMP%] .mat-ripple-element{opacity:.04}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkselected[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#fff!important}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:1.12rem;margin-bottom:.12rem}[_nghost-%COMP%] .align-end[_ngcontent-%COMP%]{margin-left:auto}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;width:100%;align-items:center}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]:not(:first-child){margin-top:.5rem}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;align-items:center;flex-grow:1;height:2.5rem}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .donor.highlighted[_ngcontent-%COMP%]{box-shadow:0 6px 2px -2px #0003,0 4px 4px #00000024,0 2px 10px #0000001f}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .hover-state[_ngcontent-%COMP%]{width:19.5rem!important}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .donor-info[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .hoverable[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]:hover .hover-state[_ngcontent-%COMP%]{opacity:1}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%]{transition:opacity .15s ease-in-out;opacity:0;cursor:pointer;position:absolute;height:100%;width:100%;top:0;margin-left:-.5rem;align-items:center;display:flex;justify-content:flex-end;padding-right:1rem;font-size:.75rem}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-title[_ngcontent-%COMP%]{font-weight:lighter}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-icon[_ngcontent-%COMP%]{margin-left:1rem}[_nghost-%COMP%] .default-padding[_ngcontent-%COMP%]{padding:.25rem .5rem}[_nghost-%COMP%] .expanded-view[_ngcontent-%COMP%]{margin-top:.25rem;width:85%;margin-bottom:.25rem}[_nghost-%COMP%] .d-flex[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] .icon-size[_ngcontent-%COMP%]{height:1.5rem;width:1.5rem;font-size:1.5rem}[_nghost-%COMP%] .selectable[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%]{width:80%!important}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{width:16rem!important}[_nghost-%COMP%] .ml-5[_ngcontent-%COMP%]{margin-left:.5rem}[_nghost-%COMP%] .mr-5[_ngcontent-%COMP%]{margin-right:.5rem}[_nghost-%COMP%] .mt-05[_ngcontent-%COMP%]{margin-top:.5rem}[_nghost-%COMP%] .description[_ngcontent-%COMP%]{width:17rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"],changeDetection:0}),t})();function PJ(t,e){if(1&t&&(ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"div",9),Za(4),sa(),sa()),2&t){const t=e.$implicit;ws(2),Ja(t.count),ws(2),Ja(t.label)}}function MJ(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("mouseenter",function(){const e=$e(t).$implicit;return va().handleHover(e.tissueBlock.spatialEntityId)})("mouseleave",function(){return $e(t),va().handleUnhover()}),ra(1,"ccf-donor-card",11),fa("checked",function(e){const n=$e(t).$implicit;return va().handleSelection(n,e)})("linkClick",function(e){return $e(t),va().handleLinkClick(e)}),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("tissueBlock",t.tissueBlock)("selected",t.selected)("color",t.color)("highlighted",t.tissueBlock.spatialEntityId===n.highlighted)}}let IJ=(()=>{class t{constructor(t){this.ga=t,this.linkClicked=new Rc,this.listResultSelected=new Rc,this.listResultDeselected=new Rc,this.itemHovered=new Rc,this.itemUnhovered=new Rc,this.atScrollBottom=!1}handleSelection(t,e){this.ga.event("list_result_selected","results_browser",this.resultLabel,+e),e?this.listResultSelected.next(t):this.listResultDeselected.next(t)}handleLinkClick(t){this.linkClicked.emit(t)}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<64}handleHover(t){this.itemHovered.emit(t)}handleUnhover(){this.itemUnhovered.emit()}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-results-browser"]],inputs:{listResults:"listResults",aggregateData:"aggregateData",resultLabel:"resultLabel",highlighted:"highlighted",header:"header"},outputs:{linkClicked:"linkClicked",listResultSelected:"listResultSelected",listResultDeselected:"listResultDeselected",itemHovered:"itemHovered",itemUnhovered:"itemUnhovered"},decls:8,vars:7,consts:[[1,"results-browser-container"],[1,"stat-box"],["id","title"],["class","stat-row",4,"ngFor","ngForOf"],[1,"results-browser-list",3,"scroll"],["class","browser-item-container",3,"mouseenter","mouseleave",4,"ngFor","ngForOf"],[1,"scroll-gradient"],[1,"stat-row"],[1,"stat-value"],[1,"stat-label"],[1,"browser-item-container",3,"mouseenter","mouseleave"],[3,"tissueBlock","selected","color","highlighted","checked","linkClick"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),Za(3),sa(),Jo(4,PJ,5,2,"div",3),sa(),ra(5,"div",4),fa("scroll",function(t){return e.onScroll(t)}),Jo(6,MJ,2,4,"div",5),sa(),oa(7,"div",6),sa()),2&t&&(ws(3),Ja(e.resultLabel),ws(1),na("ngForOf",e.aggregateData),ws(1),ja("header-hidden",!e.header),ws(1),na("ngForOf",e.listResults),ws(1),ja("hidden",!!e.atScrollBottom))},directives:[yh,AJ],styles:[".results-browser-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:calc(100% - 3rem);padding:0 1.5rem 1.5rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%]{margin-bottom:1.5rem;line-height:1.25;min-height:7.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] #title[_ngcontent-%COMP%]{font-size:1.25rem;margin-bottom:.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%]{display:flex;flex-direction:row}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin-right:1rem;width:5.5rem;text-align:right;font-weight:600}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-weight:300}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;padding-right:.5rem;height:calc(100vh - 20rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 16rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%] .browser-item-container[_ngcontent-%COMP%]{width:100%}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:95%;bottom:0;pointer-events:none}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function DJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGIN"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"login",_r)}}function RJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGOUT"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"logout",_r)}}let NJ=(()=>{class t{constructor(){this.refreshClicked=new Rc,this.downloadClicked=new Rc}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-header"]],inputs:{homeUrl:"homeUrl",loginDisabled:"loginDisabled",logoTooltip:"logoTooltip",loggedIn:"loggedIn",filters:"filters"},outputs:{refreshClicked:"refreshClicked",downloadClicked:"downloadClicked"},decls:6,vars:4,consts:[[1,"ccf-header"],[1,"home",3,"href"],["aria-hidden","false","aria-label","Reset tool","matTooltipPosition","right",1,"logo",3,"matTooltip"],[1,"filler"],["mat-button","","class","authentication","rel","noreferrer noopener","target","_blank",3,"disabled","href",4,"ngIf"],["mat-button","","rel","noreferrer noopener","target","_blank",1,"authentication",3,"href"]],template:function(t,e){1&t&&(ra(0,"mat-toolbar",0),ra(1,"a",1),oa(2,"div",2),sa(),oa(3,"div",3),Jo(4,DJ,2,3,"a",4),Jo(5,RJ,2,3,"a",4),sa()),2&t&&(ws(1),na("href",e.homeUrl,_r),ws(1),na("matTooltip",e.logoTooltip),ws(2),na("ngIf",!e.loggedIn),ws(1),na("ngIf",e.loggedIn))},directives:[Nq,ew,_h,w_],styles:[".ccf-header[_ngcontent-%COMP%]{height:4rem;padding:0 1.5rem;border-bottom-width:1px;border-bottom-style:solid;display:flex}.ccf-header[_ngcontent-%COMP%] .home[_ngcontent-%COMP%]{height:100%;width:25rem;align-items:center;display:flex}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{width:100%;height:50%;background-repeat:no-repeat;background-size:contain}.ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%]{height:1.5rem}.ccf-header[_ngcontent-%COMP%] .authentication[_ngcontent-%COMP%]{width:8.25rem;border-radius:.125rem;font-weight:500}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{display:flex;align-items:center;transition:color 1s;cursor:pointer;text-decoration:none}.ccf-header[_ngcontent-%COMP%] [_ngcontent-%COMP%]:not(:last-child){margin-right:1.5rem}.ccf-header[_ngcontent-%COMP%] .filler[_ngcontent-%COMP%]{flex-grow:1;margin:0}.ccf-header[_ngcontent-%COMP%] .filter-labels[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;font:400 1rem/1.25rem Inter,sans-serif}.ccf-header[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();const LJ=["bodyUI"];function jJ(t,e){if(1&t&&(oa(0,"ccf-header",34),Mc(1,"async"),Mc(2,"async"),Mc(3,"async"),Mc(4,"async")),2&t){const t=va();ja("hide",!1===Ic(1,6,t.header$)),na("logoTooltip",Ic(2,8,t.logoTooltip$))("homeUrl",Ic(3,10,t.homeUrl$))("loggedIn",t.loggedIn)("loginDisabled",Ic(4,12,t.loginDisabled$))}}function FJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t),va();const e=ta(70);return e.expanded=!e.expanded}),ra(1,"mat-icon",36),Za(2),sa(),sa()}if(2&t){va();const t=ta(70);ws(2),tl(" ",t.expanded?"arrow_drop_up":"arrow_drop_down"," ")}}function BJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t);const e=va();return e.organListVisible=!e.organListVisible}),ra(1,"mat-icon",37),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),tl(" ",t.organListVisible?"arrow_drop_up":"arrow_drop_down"," ")}}const VJ=function(){return{}},zJ=function(){return{x:2.2,y:2,z:.4}};let UJ=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this.data=n,this.theming=i,this.scene=r,this.listResultsState=s,this.consentService=o,this.snackbar=a,this.dataSource=c,this.globalConfig=u,this.ontologySelectionLabel="body",this.cellTypeSelectionLabel="cell",this.selectionLabel="body | cell",this.organListVisible=!0,this.url="",this.acceptableViewerDomains=Pq.acceptableViewerDomains||[],this.viewerOpen=!1,this.spinnerActive$=this.data.queryStatus$.pipe(D(t=>t===rX.Running)),this.theme$=this.globalConfig.getOption("theme"),this.themeMode$=new lp(1),this.header$=this.globalConfig.getOption("header"),this.homeUrl$=this.globalConfig.getOption("homeUrl"),this.logoTooltip$=this.globalConfig.getOption("logoTooltip"),this.loginDisabled$=this.globalConfig.getOption("loginDisabled"),i.initialize(t,e),l.setRootElement(t),n.tissueBlockData$.subscribe(),n.aggregateData$.subscribe(),n.ontologyTermOccurencesData$.subscribe(),n.cellTypeTermOccurencesData$.subscribe(),n.sceneData$.subscribe(),n.filter$.subscribe(),n.technologyFilterData$.subscribe(),n.providerFilterData$.subscribe(),this.ontologyTerms$=n.filter$.pipe(FU("ontologyTerms")),T_([this.theme$,this.themeMode$]).subscribe(([t,e])=>{this.theming.setTheme(`${t}-theme-${e}`),h.markForCheck()}),this.ontologyTreeModel$=this.dataSource.getOntologyTreeModel().pipe(up(1)),this.cellTypeTerms$=n.filter$.pipe(FU("cellTypeTerms")),this.cellTypeTreeModel$=this.dataSource.getCellTypeTreeModel().pipe(up(1))}get isLightTheme(){return this.theming.getTheme().endsWith("light")}ngOnInit(){const t=this.snackbar.openFromComponent(pq,{data:{preClose:()=>{t.dismiss()}},duration:"not-set"===this.consentService.consent?1/0:3e3});window.matchMedia?(window.matchMedia("(prefers-color-scheme: dark)").matches?this.themeMode$.next("dark"):this.themeMode$.next("light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t=>{this.themeMode$.next(t.matches?"dark":"light")})):this.themeMode$.next("light")}reset(t,e,n){t.open(),t.closeExpanded(),e.open(),e.closeExpanded(),n.removeBox(),this.resetView()}resetView(){this.bodyUI.target=[0,0,0],this.bodyUI.rotation=0,this.bodyUI.rotationX=0,this.bodyUI.bounds={x:2.2,y:2,z:.4}}toggleScheme(){this.themeMode$.next(this.isLightTheme?"dark":"light")}ontologySelected(t,e){if(t)return"anatomical-structures"===e?(this.data.updateFilter({ontologyTerms:t.map(t=>t.id)}),this.ontologySelectionLabel=this.createSelectionLabel(t)):(this.data.updateFilter({cellTypeTerms:t.map(t=>t.id)}),this.cellTypeSelectionLabel=this.createSelectionLabel(t)),this.selectionLabel=this.ontologySelectionLabel&&this.cellTypeSelectionLabel?`${this.ontologySelectionLabel} | ${this.cellTypeSelectionLabel}`:this.ontologySelectionLabel?`${this.ontologySelectionLabel}`:this.cellTypeSelectionLabel?`${this.cellTypeSelectionLabel}`:"",void(t[0]&&"body"===t[0].label&&this.resetView());this.data.updateFilter({ontologyTerms:[],cellTypeTerms:[]}),this.ontologySelectionLabel="",this.cellTypeSelectionLabel=""}createSelectionLabel(t){if(0===t.length)return"";if(1===t.length)return t[0].label;let e="";return t.forEach((n,i)=>{e+=n.label,inull==t?void 0:t.startsWith(e))?(this.url=t,this.viewerOpen=!!t):(window.open(t,"_blank"),this.closeiFrameViewer())}closeiFrameViewer(){this.viewerOpen=!1}get loggedIn(){var t;return(null!==(t=this.globalConfig.snapshot.hubmapToken)&&void 0!==t?t:"").length>0}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(No),ea(aX),ea(kq),ea(dX),ea(uX),ea(Y$),ea(q_),ea(Nf),ea(mq),ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root"]],viewQuery:function(t,e){if(1&t&&qc(LJ,5),2&t){let t;Wc(t=Yc())&&(e.bodyUI=t.first)}},decls:80,vars:111,consts:[[1,"ccf-app","mat-app-background"],["text","Loading CCF Exploration User Interface (EUI)",3,"active"],[3,"hide","logoTooltip","homeUrl","loggedIn","loginDisabled",4,"ngIf"],[1,"main-drawers"],["opened","",1,"left-drawer",3,"stateChange"],["left",""],[1,"filter-data"],[3,"filters","drawerExpanded","technologyFilters","providerFilters","filtersChange"],["filterbox",""],[1,"filter-text"],[1,"sex","filter-tag"],[1,"age","filter-tag"],[1,"bmi","filter-tag"],["placeholderText","Search anatomical structures...",1,"ontology-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["placeholderText","Search cell types...",1,"cell-type-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["position","end","opened","",1,"right-drawer",3,"stateChange"],["right",""],[1,"portal-view",3,"url","closed"],[1,"drawer-icons"],[1,"drawer-icons-left"],[1,"button",3,"matTooltip","click"],[1,"icon"],[1,"scheme-toggle","button",3,"matTooltip","click"],[1,"button"],["matTooltip","Reset View",1,"refresh","icon",3,"click"],["videoID","YAHJqvD3Q_8","infoTitle","CCF Exploration User Interface","matTooltip","Open Info"],[3,"listResults","aggregateData","resultLabel","highlighted","header","listResultSelected","listResultDeselected","linkClicked","itemHovered","itemUnhovered"],[1,"selector-drawer"],[1,"organ-selector",3,"multiselect","occurenceData","organList","selectedOrgans","organsChanged"],["selector",""],[1,"close-button-wrapper"],["class","close-button",3,"click",4,"ngIf"],[1,"stage-content",3,"scene","bounds","nodeClick","nodeHoverStart","nodeHoverStop"],["bodyUI",""],[3,"logoTooltip","homeUrl","loggedIn","loginDisabled"],[1,"close-button",3,"click"],["aria-hidden","false","aria-label","Expand carousel drawer",1,"expand-collapse-icon"],["aria-hidden","false","aria-label","Close carousel drawer",1,"expand-collapse-icon"]],template:function(t,e){if(1&t){const t=ua();ra(0,"div",0),oa(1,"ccf-spinner-overlay",1),Mc(2,"async"),Jo(3,jJ,5,14,"ccf-header",2),Mc(4,"async"),ra(5,"ccf-drawer-container",3),Mc(6,"async"),ra(7,"ccf-drawer",4,5),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(9,"div"),ra(10,"div",6),ra(11,"ccf-filters-popover",7,8),fa("filtersChange",function(t){return e.data.updateFilter(t)}),Mc(13,"async"),Mc(14,"async"),Mc(15,"async"),sa(),ra(16,"div",9),ra(17,"div",10),Za(18,"Sex: "),ra(19,"strong"),Za(20),Mc(21,"async"),sa(),sa(),ra(22,"div",11),Za(23,"Age: "),ra(24,"strong"),Za(25),Mc(26,"async"),Mc(27,"async"),sa(),sa(),ra(28,"div",12),Za(29,"BMI: "),ra(30,"strong"),Za(31),Mc(32,"async"),Mc(33,"async"),sa(),sa(),sa(),sa(),ra(34,"ccf-ontology-selection",13),fa("ontologySelection",function(t){return e.ontologySelected(t,"anatomical-structures")}),Mc(35,"async"),Mc(36,"async"),Mc(37,"async"),Mc(38,"async"),sa(),ra(39,"ccf-ontology-selection",14),fa("ontologySelection",function(t){return e.ontologySelected(t,"cell-type")}),Mc(40,"async"),Mc(41,"async"),Mc(42,"async"),Mc(43,"async"),sa(),oa(44,"ccf-drawer-toggle-button"),sa(),sa(),ra(45,"ccf-drawer",15,16),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(47,"ccf-viewer",17),fa("closed",function(){return e.viewerOpen=!1}),sa(),ra(48,"div",18),ra(49,"div",19),ra(50,"button",20),fa("click",function(){$e(t);const e=ta(12),n=ta(46);return e.removeBox(),n.toggleExpanded()}),ra(51,"mat-icon",21),Za(52),sa(),sa(),ra(53,"button",22),fa("click",function(){return e.toggleScheme()}),ra(54,"mat-icon",21),Za(55),sa(),sa(),ra(56,"button",23),ra(57,"mat-icon",24),fa("click",function(){$e(t);const n=ta(8),i=ta(46),r=ta(12);return e.reset(n,i,r)}),Za(58,"refresh "),sa(),sa(),sa(),oa(59,"ccf-info-button",25),sa(),ra(60,"ccf-results-browser",26),fa("listResultSelected",function(t){return e.listResultsState.selectListResult(t)})("listResultDeselected",function(t){return e.listResultsState.deselectListResult(t)})("linkClicked",function(t){return e.openiFrameViewer(t)})("itemHovered",function(t){return e.listResultsState.highlightNode(t)})("itemUnhovered",function(){return e.listResultsState.unHighlightNode()}),Mc(61,"async"),Mc(62,"async"),Mc(63,"async"),Mc(64,"async"),sa(),oa(65,"ccf-drawer-toggle-button"),sa(),ra(66,"ccf-drawer-content"),Mc(67,"async"),ra(68,"div",27),ra(69,"ccf-organ-selector",28,29),fa("organsChanged",function(t){return e.scene.setSelectedReferenceOrgans(t)}),Mc(71,"async"),Mc(72,"async"),Mc(73,"async"),sa(),sa(),ra(74,"div",30),Jo(75,FJ,3,1,"div",31),Jo(76,BJ,3,1,"div",31),sa(),ra(77,"ccf-body-ui",32,33),fa("nodeClick",function(t){return e.scene.sceneNodeClicked(t)})("nodeHoverStart",function(t){return e.scene.sceneNodeHovered(t)})("nodeHoverStop",function(){return e.scene.sceneNodeUnhover()}),Mc(79,"async"),sa(),sa(),sa(),sa()}if(2&t){const t=ta(46),n=ta(70);let i,r,s,o;ws(1),na("active",Ic(2,53,e.spinnerActive$)),ws(2),na("ngIf",!1===Ic(4,55,e.spinnerActive$)),ws(2),ja("header-hidden",!1===Ic(6,57,e.header$)),ws(6),na("filters",Ic(13,59,e.data.filter$))("drawerExpanded",t.expanded)("technologyFilters",Ic(14,61,e.data.technologyFilterData$))("providerFilters",Ic(15,63,e.data.providerFilterData$)),ws(9),Ja(null==(i=Ic(21,65,e.data.filter$))?null:i.sex),ws(5),el("",null==(r=Ic(26,67,e.data.filter$))?null:r.ageRange[0],"-",null==(r=Ic(27,69,e.data.filter$))?null:r.ageRange[1],""),ws(6),el("",null==(s=Ic(32,71,e.data.filter$))?null:s.bmiRange[0],"-",null==(s=Ic(33,73,e.data.filter$))?null:s.bmiRange[1],""),ws(3),na("treeModel",Ic(35,75,e.ontologyTreeModel$))("termData",Ic(36,77,e.data.ontologyTermsFullData$))("occurenceData",Ic(37,79,e.data.ontologyTermOccurencesData$))("header",Ic(38,81,e.header$)),ws(5),na("treeModel",Ic(40,83,e.cellTypeTreeModel$))("termData",Ic(41,85,e.data.cellTypeTermsFullData$))("occurenceData",Ic(42,87,e.data.cellTypeTermOccurencesData$))("header",Ic(43,89,e.header$)),ws(8),ja("opened",e.viewerOpen),na("url",e.url),ws(3),na("matTooltip",t.expanded?"Exit Fullscreen":"Enter Fullscreen"),ws(2),Ja(t.expanded?"fullscreen_exit":"fullscreen"),ws(1),na("matTooltip",e.isLightTheme?"Enter Dark Mode":"Enter Light Mode"),ws(2),tl("",e.isLightTheme?"brightness_2":"brightness_5"," "),ws(5),na("listResults",Ic(61,91,e.listResultsState.listResults$))("aggregateData",Ic(62,93,e.data.aggregateData$))("resultLabel",e.selectionLabel)("highlighted",Ic(63,95,e.listResultsState.highlightedNodeId$))("header",Ic(64,97,e.header$)),ws(6),ja("header-hidden",!1===Ic(67,99,e.header$)),ws(2),ja("closed",!e.organListVisible)("expanded",n.expanded),ws(1),na("multiselect",!0)("occurenceData",null!==(o=Ic(71,101,e.data.ontologyTermOccurencesData$))&&void 0!==o?o:Oc(109,VJ))("organList",Ic(72,103,e.scene.referenceOrgans$))("selectedOrgans",Ic(73,105,e.scene.selectedReferenceOrgans$)),ws(5),ja("closed",!e.organListVisible),ws(1),na("ngIf",e.organListVisible),ws(1),na("ngIf",!n.expanded),ws(1),ja("expanded-stage",!e.organListVisible)("selector-expanded",n.expanded),na("scene",Ic(79,107,e.scene.scene$))("bounds",Oc(110,zJ))}},directives:[xZ,_h,RZ,AZ,XZ,uJ,hJ,fJ,ew,p_,aq,IJ,CZ,QW,VW,NJ],pipes:[Dh],styles:[".cdk-overlay-container{position:absolute;font-size:1.2rem}[_nghost-%COMP%]{display:block;position:relative}.ccf-app[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:1rem;position:relative;text-align:left}.ccf-app[_ngcontent-%COMP%] ccf-header[_ngcontent-%COMP%]{z-index:99}.ccf-app[_ngcontent-%COMP%] ccf-header.hide[_ngcontent-%COMP%]{display:none}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%]{height:calc(100% - 5rem);width:100%;opacity:1;overflow:hidden;transform:scale(1)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container.header-hidden[_ngcontent-%COMP%]{height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%]{width:28.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%]{display:flex;padding-left:1.5rem;height:5rem;padding-right:1.5rem;align-items:center;justify-content:space-between}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%] .button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;outline:none;border-radius:.25rem;padding:.65rem;transition:.6s}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%]{overflow:hidden;border-radius:.5rem;height:calc(100vh - 4rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer[_ngcontent-%COMP%]{top:0rem;display:flex;flex-direction:column;position:relative;transition:all .5s ease-in-out;height:5rem;justify-content:start}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.expanded[_ngcontent-%COMP%]{height:15rem;overflow-y:auto}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.closed[_ngcontent-%COMP%]{height:1.5rem;top:-5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .stage-content[_ngcontent-%COMP%]{transition:all .5s ease-in-out;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .expanded-stage[_ngcontent-%COMP%]{height:calc(100% - 3rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-expanded[_ngcontent-%COMP%]{height:calc(100% - 16.5rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 1rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:center;border-top-right-radius:.5rem;border-top-left-radius:.5rem;height:0}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:flex;justify-content:center;height:1.0625rem;width:3rem;align-self:center;border-radius:0 0 .25rem .25rem;cursor:pointer;transition:.6s;position:relative;top:.5rem;z-index:1}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{position:relative;bottom:.2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem;height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cell-type-selection[_ngcontent-%COMP%] .ccf-ontology-search{margin-top:2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%]{height:5rem;display:flex;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:75%;margin-left:1.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%]{font-weight:300}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600!important}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view[_ngcontent-%COMP%]{position:fixed;left:0;top:0;bottom:0;right:425%;height:100%;transform:translate(-425%);width:calc(100% - 28.5rem);transition:transform .5s cubic-bezier(.82,.085,.395,.895)}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view.opened[_ngcontent-%COMP%]{transform:translate(0);transition:width 0s .5s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view[_ngcontent-%COMP%]{width:100vw}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view.opened[_ngcontent-%COMP%]{transition:width 0s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .shaded-toggle[_ngcontent-%COMP%]{box-shadow:-1px 0 4px #212121}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5rem}"],changeDetection:0}),t})();function HJ(t,e){1&t&&oa(0,"ccf-root")}function $J(t){const e=t=>"string"==typeof t,n=t=>Array.isArray(t)&&t.every(e);if("string"==typeof t){const e=wZ.json(t);if(n(e))return e}else if(n(t))return t;throw new Error("Invalid data sources")}let GJ=(()=>{class t extends _Z{constructor(t,e){super(t,e,{initialDelay:10,initialConfig:Object.assign(Object.assign(Object.assign({},Pq.dbOptions),globalThis.dbOptions),Pq.customization),parse:{dataSources:$J,useRemoteApi:wZ.boolean,header:wZ.boolean}})}}return t.\u0275fac=function(e){return new(e||t)(ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root-wc"]],inputs:{dataSources:"dataSources",hubmapDataService:"hubmapDataService",hubmapDataUrl:"hubmapDataUrl",hubmapAssetUrl:"hubmapAssetUrl",hubmapToken:"hubmapToken",hubmapPortalUrl:"hubmapPortalUrl",useRemoteApi:"useRemoteApi",remoteApiEndpoint:"remoteApiEndpoint",theme:"theme",header:"header",homeUrl:"homeUrl",logoTooltip:"logoTooltip",loginDisabled:"loginDisabled"},features:[jo],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&Jo(0,HJ,1,0,"ccf-root",0),2&t&&na("ngIf",e.initialized)},directives:[_h,UJ],encapsulation:2,changeDetection:0}),t})(),WJ=(()=>{class t{constructor(t){this.injector=t}ngDoBootstrap(){const t=function(t,e){const n=function(t,e){return e.get(El).resolveComponentFactory(t).inputs}(t,e.injector),i=e.strategyFactory||new Bf(t,e.injector),r=function(t){const e={};return t.forEach(({propName:t,templateName:n})=>{e[function(t){return t.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}(n)]=t}),e}(n);class s extends zf{constructor(t){super(),this.injector=t}get ngElementStrategy(){if(!this._ngElementStrategy){const t=this._ngElementStrategy=i.create(this.injector||e.injector);n.forEach(({propName:e})=>{if(!this.hasOwnProperty(e))return;const n=this[e];delete this[e],t.setInputValue(e,n)})}return this._ngElementStrategy}attributeChangedCallback(t,e,n,i){this.ngElementStrategy.setInputValue(r[t],n)}connectedCallback(){let t=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),t=!0),this.ngElementStrategy.connect(this),t||this.subscribeToEvents()}disconnectedCallback(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}subscribeToEvents(){this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(t=>{const e=function(t,e,n){if("function"!=typeof CustomEvent){const i=t.createEvent("CustomEvent");return i.initCustomEvent(e,!1,!1,n),i}return new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:n})}(this.ownerDocument,t.name,t.value);this.dispatchEvent(e)})}}return s.observedAttributes=Object.keys(r),n.forEach(({propName:t})=>{Object.defineProperty(s.prototype,t,{get(){return this.ngElementStrategy.getInputValue(t)},set(e){this.ngElementStrategy.setInputValue(t,e)},configurable:!0,enumerable:!0})}),s}(GJ,{injector:this.injector});customElements.define("ccf-eui",t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(No))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:Tq,useValue:"hubmap-theme-light"},{provide:gf,useExisting:Nf}],imports:[[ky,gd,gX,sZ,$Y,mK,f_,UY,tZ,mZ,zW,ZW,lq,rw,bZ,fq,G_]]}),t})();Pq.production&&function(){if(Ru)throw new Error("Cannot enable prod mode after platform setup.");Du=!1}(),pd().bootstrapModule(WJ).catch(t=>console.error(t))},91052:function(t){function e(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}t.exports=function(t){return function(){var n=this,i=arguments;return new Promise(function(r,s){var o=t.apply(n,i);function a(t){e(o,r,s,a,l,"next",t)}function l(t){e(o,r,s,a,l,"throw",t)}a(void 0)})}},t.exports.default=t.exports,t.exports.__esModule=!0},61948:function(t){t.exports=function(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},34321:function(t){function e(n){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=e=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=e=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),e(n)}t.exports=e,t.exports.default=t.exports,t.exports.__esModule=!0},91741:function(t){function e(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}e.keys=function(){return[]},e.resolve=e,e.id=91741,t.exports=e},88509:function(t,e,n){"use strict";t.exports=n.p+"7693192ac33f7744a3ca.ts"},9521:function(){},49125:function(){},75307:function(){}},function(t){t(t.s=93640)}]); \ No newline at end of file +var LBe=Object.defineProperty,BBe=Object.defineProperties,VBe=Object.getOwnPropertyDescriptors,mT=Object.getOwnPropertySymbols,pX=Object.prototype.hasOwnProperty,gX=Object.prototype.propertyIsEnumerable,kr=Math.pow,mX=(t,e,n)=>e in t?LBe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,wt=(t,e)=>{for(var n in e||(e={}))pX.call(e,n)&&mX(t,n,e[n]);if(mT)for(var n of mT(e))gX.call(e,n)&&mX(t,n,e[n]);return t},ii=(t,e)=>BBe(t,VBe(e)),_X=(t,e)=>{var n={};for(var i in t)pX.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&mT)for(var i of mT(t))e.indexOf(i)<0&&gX.call(t,i)&&(n[i]=t[i]);return n};(self.webpackChunkccf_ui=self.webpackChunkccf_ui||[]).push([[179],{71440:function(t,e,n){var i=n(91052).default;t.exports=function t(e,n,i){function r(o,a){if(!n[o]){if(!e[o]){if(s)return s(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[o]={exports:{}};e[o][0].call(c.exports,function(t){return r(e[o][1][t]||t)},c,c.exports,t,e,n,i)}return n[o].exports}for(var s=void 0,o=0;o0&&r[r.length-1])&&(6===s[0]||2===s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]0?o-4:o;for(n=0;n>16&255,l[u++]=e>>8&255,l[u++]=255&e;return 2===a&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,l[u++]=255&e),1===a&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e),l},n.fromByteArray=function(t){for(var e,n=t.length,r=n%3,s=[],o=16383,a=0,l=n-r;al?l:a+o));return 1===r?s.push(i[(e=t[n-1])>>2]+i[e<<4&63]+"=="):2===r&&s.push(i[(e=(t[n-2]<<8)+t[n-1])>>10]+i[e>>4&63]+i[e<<2&63]+"="),s.join("")};for(var i=[],r=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,l=o.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t){return i[t>>18&63]+i[t>>12&63]+i[t>>6&63]+i[63&t]}function h(t,e,n){for(var i=[],r=e;r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!=(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var n=t.toString("utf16le",e);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):e}function u(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function h(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function d(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}n.StringDecoder=s,s.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(r>0&&(t.lastNeed=r-1),r):--i=0?(r>0&&(t.lastNeed=r-2),r):--i=0?(r>0&&(2===r?r=0:t.lastNeed=r-3),r):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var i=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)},s.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},{"safe-buffer":4}],6:[function(t,e,n){(function(e){(function(){"use strict";var e=t("base64-js"),i=t("ieee754");n.Buffer=o,n.SlowBuffer=function(t){return+t!=t&&(t=0),o.alloc(+t)},n.INSPECT_MAX_BYTES=50;var r=2147483647;function s(t){if(t>r)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return e.__proto__=o.prototype,e}function o(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return c(t)}return a(t,e,n)}function a(t,e,n){if("string"==typeof t)return function(t,e){if(("string"!=typeof e||""===e)&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|d(t,e),i=s(n),r=i.write(t,e);return r!==n&&(i=i.slice(0,r)),i}(t,e);if(ArrayBuffer.isView(t))return u(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,e,n){if(e<0||t.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|t}function d(t,e){if(o.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var n=t.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(t).length;default:if(r)return i?-1:L(t).length;e=(""+e).toLowerCase(),r=!0}}function p(t,e,n){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length||((void 0===n||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,n);case"utf8":case"utf-8":return E(this,e,n);case"ascii":return C(this,e,n);case"latin1":case"binary":return O(this,e,n);case"base64":return S(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,n);default:if(i)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),i=!0}}function f(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function g(t,e,n,i,r){if(0===t.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),V(n=+n)&&(n=r?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(r)return-1;n=t.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof e&&(e=o.from(e,i)),o.isBuffer(e))return 0===e.length?-1:m(t,e,n,i,r);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):m(t,[e],n,i,r);throw new TypeError("val must be string, number or Buffer")}function m(t,e,n,i,r){var s,o=1,a=t.length,l=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(t.length<2||e.length<2)return-1;o=2,a/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(r){var u=-1;for(s=n;sa&&(n=a-l),s=n;s>=0;s--){for(var h=!0,d=0;dr&&(i=r):i=r;var s=e.length;i>s/2&&(i=s/2);for(var o=0;o>8,r.push(n%256),r.push(i);return r}(e,t.length-n),t,n,i)}function S(t,n,i){return e.fromByteArray(0===n&&i===t.length?t:t.slice(n,i))}function E(t,e,n){n=Math.min(t.length,n);for(var i=[],r=e;r239?4:c>223?3:c>191?2:1;if(r+h<=n)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(s=t[r+1]))&&(l=(31&c)<<6|63&s)>127&&(u=l);break;case 3:o=t[r+2],128==(192&(s=t[r+1]))&&128==(192&o)&&(l=(15&c)<<12|(63&s)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:o=t[r+2],a=t[r+3],128==(192&(s=t[r+1]))&&128==(192&o)&&128==(192&a)&&(l=(15&c)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(i.push((u-=65536)>>>10&1023|55296),u=56320|1023&u),i.push(u),r+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);for(var n="",i=0;ie&&(t+=" ... "),""},o.prototype.compare=function(t,e,n,i,r){if(B(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||n>t.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=n)return 0;if(i>=r)return-1;if(e>=n)return 1;if(this===t)return 0;for(var s=(r>>>=0)-(i>>>=0),a=(n>>>=0)-(e>>>=0),l=Math.min(s,a),c=this.slice(i,r),u=t.slice(e,n),h=0;h>>=0,isFinite(n)?(n>>>=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-e;if((void 0===n||n>r)&&(n=r),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return b(this,t,e,n);case"utf8":case"utf-8":return y(this,t,e,n);case"ascii":return v(this,t,e,n);case"latin1":case"binary":return _(this,t,e,n);case"base64":return w(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,e,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function C(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;ri)&&(n=i);for(var r="",s=e;sn)throw new RangeError("Trying to access beyond buffer length")}function P(t,e,n,i,r,s){if(!o.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||et.length)throw new RangeError("Index out of range")}function M(t,e,n,i,r,s){if(n+i>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function D(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,8),i.write(t,e,n,r,52,8),n+8}o.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t+--e],r=1;e>0&&(r*=256);)i+=this[t+--e]*r;return i},o.prototype.readUInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),this[t]},o.prototype.readUInt16LE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]|this[t+1]<<8},o.prototype.readUInt16BE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]<<8|this[t+1]},o.prototype.readUInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},o.prototype.readUInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},o.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s=(r*=128)&&(i-=Math.pow(2,8*e)),i},o.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=e,r=1,s=this[t+--i];i>0&&(r*=256);)s+=this[t+--i]*r;return s>=(r*=128)&&(s-=Math.pow(2,8*e)),s},o.prototype.readInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},o.prototype.readInt16LE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt16BE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},o.prototype.readInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},o.prototype.readFloatLE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!0,23,4)},o.prototype.readFloatBE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!1,23,4)},o.prototype.readDoubleLE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!0,52,8)},o.prototype.readDoubleBE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!1,52,8)},o.prototype.writeUIntLE=function(t,e,n,i){t=+t,e>>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=1,s=0;for(this[e]=255&t;++s>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=n-1,s=1;for(this[e+r]=255&t;--r>=0&&(s*=256);)this[e+r]=t/s&255;return e+n},o.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,255,0),this[e]=255&t,e+1},o.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},o.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=0,o=1,a=0;for(this[e]=255&t;++s>0)-a&255;return e+n},o.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=n-1,o=1,a=0;for(this[e+s]=255&t;--s>=0&&(o*=256);)t<0&&0===a&&0!==this[e+s+1]&&(a=1),this[e+s]=(t/o>>0)-a&255;return e+n},o.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},o.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},o.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeFloatLE=function(t,e,n){return I(this,t,e,!0,n)},o.prototype.writeFloatBE=function(t,e,n){return I(this,t,e,!1,n)},o.prototype.writeDoubleLE=function(t,e,n){return D(this,t,e,!0,n)},o.prototype.writeDoubleBE=function(t,e,n){return D(this,t,e,!1,n)},o.prototype.copy=function(t,e,n,i){if(!o.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&0!==i&&(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e=0;--s)t[s+e]=this[s+n];else Uint8Array.prototype.set.call(t,this.subarray(n,i),e);return r},o.prototype.fill=function(t,e,n,i){if("string"==typeof t){if("string"==typeof e?(i=e,e=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!o.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===t.length){var r=t.charCodeAt(0);("utf8"===i&&r<128||"latin1"===i)&&(t=r)}}else"number"==typeof t&&(t&=255);if(e<0||this.length>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(s=e;s55295&&n<57344){if(!r){if(n>56319){(e-=3)>-1&&s.push(239,191,189);continue}if(o+1===i){(e-=3)>-1&&s.push(239,191,189);continue}r=n;continue}if(n<56320){(e-=3)>-1&&s.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(e-=3)>-1&&s.push(239,191,189);if(r=null,n<128){if((e-=1)<0)break;s.push(n)}else if(n<2048){if((e-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function j(t){return e.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(R,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function F(t,e,n,i){for(var r=0;r=e.length||r>=t.length);++r)e[r+n]=t[r];return r}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function V(t){return t!=t}}).call(this)}).call(this,t("buffer").Buffer)},{"base64-js":2,buffer:6,ieee754:9}],7:[function(t,e,n){"use strict";e.exports=function t(e){return null===e||"object"!=typeof e||null!=e.toJSON?JSON.stringify(e):Array.isArray(e)?"["+e.reduce((e,n,i)=>e+(0===i?"":",")+t(void 0===n||"symbol"==typeof n?null:n),"")+"]":"{"+Object.keys(e).sort().reduce((n,i,r)=>void 0===e[i]||"symbol"==typeof e[i]?n:n+(0===n.length?"":",")+t(i)+":"+t(e[i]),"")+"}"}},{}],8:[function(t,e,n){"use strict";var i,r="object"==typeof Reflect?Reflect:null,s=r&&"function"==typeof r.apply?r.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};i=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var o=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(t,e){return new Promise(function(n,i){function r(n){t.removeListener(e,s),i(n)}function s(){"function"==typeof t.removeListener&&t.removeListener("error",r),n([].slice.call(arguments))}b(t,e,s,{once:!0}),"error"!==e&&function(t,e,n){"function"==typeof t.on&&b(t,"error",e,n)}(t,r,{once:!0})})},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var l=10;function c(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function u(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function h(t,e,n,i){var r,s,o;if(c(n),void 0===(s=t._events)?(s=t._events=Object.create(null),t._eventsCount=0):(void 0!==s.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),o=s[e]),void 0===o)o=s[e]=n,++t._eventsCount;else if("function"==typeof o?o=s[e]=i?[n,o]:[o,n]:i?o.unshift(n):o.push(n),(r=u(t))>0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,function(t){console&&console.warn&&console.warn(t)}(a)}return t}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=d.bind(i);return r.listener=n,i.wrapFn=r,r}function f(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(o=e[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var l=r[t];if(void 0===l)return!1;if("function"==typeof l)s(l,this,e);else{var c=l.length,u=m(l,c);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},a.prototype.listeners=function(t){return f(this,t,!0)},a.prototype.rawListeners=function(t){return f(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):g.call(t,e)},a.prototype.listenerCount=g,a.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},{}],9:[function(t,e,n){n.read=function(t,e,n,i,r){var s,o,a=8*r-i-1,l=(1<>1,u=-7,h=n?r-1:0,d=n?-1:1,p=t[e+h];for(h+=d,s=p&(1<<-u)-1,p>>=-u,u+=a;u>0;s=256*s+t[e+h],h+=d,u-=8);for(o=s&(1<<-u)-1,s>>=-u,u+=i;u>0;o=256*o+t[e+h],h+=d,u-=8);if(0===s)s=1-c;else{if(s===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,i),s-=c}return(p?-1:1)*o*Math.pow(2,s-i)},n.write=function(t,e,n,i,r,s){var o,a,l,c=8*s-r-1,u=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,p=i?0:s-1,f=i?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?d/l:d*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(a=0,o=u):o+h>=1?(a=(e*l-1)*Math.pow(2,r),o+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,r),o=0));r>=8;t[n+p]=255&a,p+=f,a/=256,r-=8);for(o=o<0;t[n+p]=255&o,p+=f,o/=256,c-=8);t[n+p-f]|=128*g}},{}],10:[function(t,e,n){e.exports="function"==typeof Object.create?function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},{}],11:[function(t,e,n){"use strict";const{isArray:r,isObject:s,isString:o}=t("./types"),{asArray:a}=t("./util"),{prependBase:l}=t("./url"),c=t("./JsonLdError"),u=t("./ResolvedContext");function h(t){throw new c("Invalid JSON-LD syntax; @context must be an object.","jsonld.SyntaxError",{code:"invalid local context",context:t})}function d({context:t,base:e}){if(!t)return;const n=t["@context"];if(o(n))t["@context"]=l(e,n);else if(r(n))for(let i=0;i10)throw new c("Maximum number of @context URLs exceeded.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"loading remote context failed":"context overflow",max:10});if(a.has(e))throw new c("Cyclical @context URLs detected.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"recursive context inclusion":"context overflow",url:e});let i,l;a.add(e);try{l=yield n(e),i=l.document||null,o(i)&&(i=JSON.parse(i))}catch(u){throw new c("Dereferencing a URL did not result in a valid JSON-LD object. Possible causes are an inaccessible URL perhaps due to a same-origin policy (ensure the server uses CORS if you are using client-side JavaScript), too many redirects, a non-JSON response, or more than one HTTP Link Header was provided for a remote context.","jsonld.InvalidUrl",{code:"loading remote context failed",url:e,cause:u})}if(!s(i))throw new c("Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object.","jsonld.InvalidUrl",{code:"invalid remote context",url:e});return i="@context"in i?{"@context":i["@context"]}:{"@context":{}},l.contextUrl&&(r(i["@context"])||(i["@context"]=[i["@context"]]),i["@context"].push(l.contextUrl)),{context:i,remoteDoc:l}})()}}},{"./JsonLdError":12,"./ResolvedContext":16,"./types":30,"./url":31,"./util":32}],12:[function(t,e,n){"use strict";e.exports=class extends Error{constructor(t="An unspecified JSON-LD error occurred.",e="jsonld.Error",n={}){super(t),this.name=e,this.message=t,this.details=n}}},{}],13:[function(t,e,n){"use strict";e.exports=t=>{class e{toString(){return"[object JsonLdProcessor]"}}return Object.defineProperty(e,"prototype",{writable:!1,enumerable:!1}),Object.defineProperty(e.prototype,"constructor",{writable:!0,enumerable:!1,configurable:!0,value:e}),e.compact=function(e,n){return arguments.length<2?Promise.reject(new TypeError("Could not compact, too few arguments.")):t.compact(e,n)},e.expand=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not expand, too few arguments.")):t.expand(e)},e.flatten=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not flatten, too few arguments.")):t.flatten(e)},e}},{}],14:[function(t,e,n){"use strict";e.exports=t("rdf-canonize").NQuads},{"rdf-canonize":46}],15:[function(t,e,n){"use strict";e.exports=class{constructor(){this._requests={}}wrapLoader(t){const e=this;return e._loader=t,function(){return e.add.apply(e,arguments)}}add(t){var e=this;return i(function*(){let n=e._requests[t];if(n)return Promise.resolve(n);n=e._requests[t]=e._loader(t);try{return yield n}finally{delete e._requests[t]}})()}}},{}],16:[function(t,e,n){"use strict";const i=t("lru-cache");e.exports=class{constructor({document:t}){this.document=t,this.cache=new i({max:10})}getProcessed(t){return this.cache.get(t)}setProcessed(t,e){this.cache.set(t,e)}}},{"lru-cache":33}],17:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isString:a,isUndefined:l}=t("./types"),{isList:c,isValue:u,isGraph:h,isSimpleGraph:d,isSubjectReference:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{removeBase:v,prependBase:_}=t("./url"),{addValue:w,asArray:x,compareShortestLeast:S}=t("./util"),E={};function C(t,e,n){if("@nest"!==f(t,e,{vocab:!0},n))throw new r("JSON-LD compact error; nested property must have an @nest value resolving to @nest.","jsonld.SyntaxError",{code:"invalid @nest value"})}e.exports=E,E.compact=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},compactionMap:f=(()=>{})}){if(s(n)){let r=[];for(let s=0;s1&&(T=Array.from(T).sort());const k=t;for(const e of T){const n=E.compactIri({activeCtx:k,iri:e,relativeTo:{vocab:!0}}),r=g(S,n,"@context");l(r)||(t=yield b({activeCtx:t,localCtx:r,options:i,propagate:!1}))}const A=Object.keys(n).sort();for(const l of A){const p=n[l];if("@id"!==l)if("@type"!==l)if("@reverse"!==l)if("@preserve"!==l)if("@index"!==l)if("@graph"!==l&&"@list"!==l&&"@included"!==l&&m(l)){const e=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,e,p)}else{if(!s(p))throw new r("JSON-LD expansion error; expanded value must be an array.","jsonld.SyntaxError");if(0===p.length){const e=E.compactIri({activeCtx:t,iri:l,value:p,relativeTo:{vocab:!0},reverse:v}),n=t.mappings.has(e)?t.mappings.get(e)["@nest"]:null;let r=_;n&&(C(t,n,i),o(_[n])||(_[n]={}),r=_[n]),w(r,e,p,{propertyIsArray:!0})}for(const e of p){const n=E.compactIri({activeCtx:t,iri:l,value:e,relativeTo:{vocab:!0},reverse:v}),r=t.mappings.has(n)?t.mappings.get(n)["@nest"]:null;let p=_;r&&(C(t,r,i),o(_[r])||(_[r]={}),p=_[r]);const m=g(t,n,"@container")||[],b=h(e),y=c(e);let S;y?S=e["@list"]:b&&(S=e["@graph"]);let O=yield E.compact({activeCtx:t,activeProperty:n,element:y||b?S:e,options:i,compactionMap:f});if(y){if(s(O)||(O=[O]),m.includes("@list")){w(p,n,O,{valueIsArray:!0,allowDuplicate:!0});continue}O={[E.compactIri({activeCtx:t,iri:"@list",relativeTo:{vocab:!0}})]:O},"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"])}if(b)if(m.includes("@graph")&&(m.includes("@id")||m.includes("@index")&&d(e))){let r;p.hasOwnProperty(n)?r=p[n]:p[n]=r={};const s=(m.includes("@id")?e["@id"]:e["@index"])||E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}});w(r,s,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})}else m.includes("@graph")&&d(e)?(s(O)&&O.length>1&&(O={"@included":O}),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})):(s(O)&&1===O.length&&i.compactArrays&&(O=O[0]),O={[E.compactIri({activeCtx:t,iri:"@graph",relativeTo:{vocab:!0}})]:O},"@id"in e&&(O[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e["@id"]),"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"]),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")}));else if(m.includes("@language")||m.includes("@index")||m.includes("@id")||m.includes("@type")){let r,s;if(p.hasOwnProperty(n)?r=p[n]:p[n]=r={},m.includes("@language"))u(O)&&(O=O["@value"]),s=e["@language"];else if(m.includes("@index")){const i=g(t,n,"@index")||"@index",r=E.compactIri({activeCtx:t,iri:i,relativeTo:{vocab:!0}});if("@index"===i)s=e["@index"],delete O[r];else{let t;if([s,...t]=x(O[i]||[]),a(s))switch(t.length){case 0:delete O[i];break;case 1:O[i]=t[0];break;default:O[i]=t}else s=null}}else if(m.includes("@id")){const e=E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}});s=O[e],delete O[e]}else if(m.includes("@type")){const r=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}});let o;switch([s,...o]=x(O[r]||[]),o.length){case 0:delete O[r];break;case 1:O[r]=o[0];break;default:O[r]=o}1===Object.keys(O).length&&"@id"in e&&(O=yield E.compact({activeCtx:t,activeProperty:n,element:{"@id":e["@id"]},options:i,compactionMap:f}))}s||(s=E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}})),w(r,s,O,{propertyIsArray:m.includes("@set")})}else{const t=!i.compactArrays||m.includes("@set")||m.includes("@list")||s(O)&&0===O.length||"@list"===l||"@graph"===l;w(p,n,O,{propertyIsArray:t})}}}else{if((g(t,e,"@container")||[]).includes("@index"))continue;const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,p)}else{const n=yield E.compact({activeCtx:t,activeProperty:e,element:p,options:i,compactionMap:f});s(n)&&0===n.length||w(_,l,n)}else{const e=yield E.compact({activeCtx:t,activeProperty:"@reverse",element:p,options:i,compactionMap:f});for(const n in e)if(t.mappings.has(n)&&t.mappings.get(n).reverse){const r=e[n],s=(g(t,n,"@container")||[]).includes("@set")||!i.compactArrays;w(_,n,r,{propertyIsArray:s}),delete e[n]}if(Object.keys(e).length>0){const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,e)}}else{let e=x(p).map(t=>E.compactIri({activeCtx:S,iri:t,relativeTo:{vocab:!0}}));1===e.length&&(e=e[0]);const n=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}}),i=(g(t,n,"@container")||[]).includes("@set")&&y(t,1.1)||s(e)&&0===p.length;w(_,n,e,{propertyIsArray:i})}else{let e=x(p).map(e=>E.compactIri({activeCtx:t,iri:e,relativeTo:{vocab:!1},base:i.base}));1===e.length&&(e=e[0]),_[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e}}return _}return n});return function(e){return t.apply(this,arguments)}}(),E.compactIri=({activeCtx:t,iri:e,value:n=null,relativeTo:i={vocab:!1},reverse:s=!1,base:a=null})=>{if(null===e)return e;t.isPropertyTermScoped&&t.previousContext&&(t=t.previousContext);const l=t.getInverse();if(m(e)&&e in l&&"@none"in l[e]&&"@type"in l[e]["@none"]&&"@none"in l[e]["@none"]["@type"])return l[e]["@none"]["@type"]["@none"];if(i.vocab&&e in l){const i=t["@language"]||"@none",r=[];o(n)&&"@index"in n&&!("@graph"in n)&&r.push("@index","@index@set"),o(n)&&"@preserve"in n&&(n=n["@preserve"][0]),h(n)?("@index"in n&&r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n&&r.push("@graph@id","@graph@id@set"),r.push("@graph","@graph@set","@set"),"@index"in n||r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n||r.push("@graph@id","@graph@id@set")):o(n)&&!u(n)&&r.push("@id","@id@set","@type","@set@type");let a="@language",l="@null";if(s)a="@type",l="@reverse",r.push("@set");else if(c(n)){"@index"in n||r.push("@list");const t=n["@list"];if(0===t.length)a="@any",l="@none";else{let e=0===t.length?i:null,n=null;for(let i=0;it.includes("_"));t&&a.push(t.replace(/^[^_]+_/,"_"))}a.push("@none");const l=t.inverse[e];for(const o of i){if(!(o in l))continue;const t=l[o][r];for(const e of a)if(e in t)return t[e]}return null}(t,e,n,r,a,l);if(null!==d)return d}if(i.vocab&&"@vocab"in t){const n=t["@vocab"];if(0===e.indexOf(n)&&e!==n){const i=e.substr(n.length);if(!t.mappings.has(i))return i}}let d=null;const p=[];let f=t.fastCurieMap;const g=e.length-1;for(let r=0;r=0;--r){const i=p[r],s=i.terms;for(const r of s){const s=r+":"+e.substr(i.iri.length);t.mappings.get(r)._prefix&&(!t.mappings.has(s)||null===n&&t.mappings.get(s)["@id"]===e)&&(null===d||S(s,d)<0)&&(d=s)}}if(null!==d)return d;for(const[o,c]of t.mappings)if(c&&c._prefix&&e.startsWith(o+":"))throw new r(`Absolute IRI "${e}" confused with prefix "${o}".`,"jsonld.SyntaxError",{code:"IRI confused with prefix",context:t});return i.vocab?e:"@base"in t?t["@base"]?v(_(a,t["@base"]),e):e:v(a,e)},E.compactValue=({activeCtx:t,activeProperty:e,value:n,options:i})=>{if(u(n)){const i=g(t,e,"@type"),r=g(t,e,"@language"),s=g(t,e,"@direction"),o=g(t,e,"@container")||[],l="@index"in n&&!o.includes("@index");if(!l&&"@none"!==i&&(n["@type"]===i||"@language"in n&&n["@language"]===r&&"@direction"in n&&n["@direction"]===s||"@language"in n&&n["@language"]===r||"@direction"in n&&n["@direction"]===s))return n["@value"];const c=Object.keys(n).length,u=1===c||2===c&&"@index"in n&&!l,h="@language"in t,d=a(n["@value"]),p=t.mappings.has(e)&&null===t.mappings.get(e)["@language"];if(u&&"@none"!==i&&(!h||!d||p))return n["@value"];const f={};return l&&(f[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=n["@index"]),"@type"in n?f[E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}})]=E.compactIri({activeCtx:t,iri:n["@type"],relativeTo:{vocab:!0}}):"@language"in n&&(f[E.compactIri({activeCtx:t,iri:"@language",relativeTo:{vocab:!0}})]=n["@language"]),"@direction"in n&&(f[E.compactIri({activeCtx:t,iri:"@direction",relativeTo:{vocab:!0}})]=n["@direction"]),f[E.compactIri({activeCtx:t,iri:"@value",relativeTo:{vocab:!0}})]=n["@value"],f}const r=f(t,e,{vocab:!0},i),s=g(t,e,"@type"),o=E.compactIri({activeCtx:t,iri:n["@id"],relativeTo:{vocab:"@vocab"===s},base:i.base});return"@id"===s||"@vocab"===s||"@graph"===r?o:{[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]:o}}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],18:[function(t,e,n){"use strict";const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#";e.exports={LINK_HEADER_REL:"http://www.w3.org/ns/json-ld#context",LINK_HEADER_CONTEXT:"http://www.w3.org/ns/json-ld#context",RDF:i,RDF_LIST:i+"List",RDF_FIRST:i+"first",RDF_REST:i+"rest",RDF_NIL:i+"nil",RDF_TYPE:i+"type",RDF_PLAIN_LITERAL:i+"PlainLiteral",RDF_XML_LITERAL:i+"XMLLiteral",RDF_JSON_LITERAL:i+"JSON",RDF_OBJECT:i+"object",RDF_LANGSTRING:i+"langString",XSD:r,XSD_BOOLEAN:r+"boolean",XSD_DOUBLE:r+"double",XSD_INTEGER:r+"integer",XSD_STRING:r+"string"}},{}],19:[function(t,e,n){"use strict";const r=t("./util"),s=t("./JsonLdError"),{isArray:o,isObject:a,isString:l,isUndefined:c}=t("./types"),{isAbsolute:u,isRelative:h,prependBase:d}=t("./url"),{asArray:p,compareShortestLeast:f}=t("./util"),g=new Map,m=/^@[a-zA-Z]+$/,b={};function y(t,e,n,i,r,s){if(null===e||!l(e)||b.isKeyword(e))return e;if(e.match(m))return null;if(i&&i.hasOwnProperty(e)&&!0!==r.get(e)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:e,defined:r,options:s}),(n=n||{}).vocab){const n=t.mappings.get(e);if(null===n)return null;if(a(n)&&"@id"in n)return n["@id"]}const o=e.indexOf(":");if(o>0){const n=e.substr(0,o),a=e.substr(o+1);if("_"===n||0===a.indexOf("//"))return e;i&&i.hasOwnProperty(n)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:n,defined:r,options:s});const l=t.mappings.get(n);if(l&&l._prefix)return l["@id"]+a;if(u(e))return e}if(n.vocab&&"@vocab"in t)return t["@vocab"]+e;if(n.base&&"@base"in t){if(t["@base"])return d(d(s.base,t["@base"]),e)}else if(n.base)return d(s.base,e);return e}function v(t,e){if(!t||"object"!=typeof t||!e||"object"!=typeof e)return t===e;const n=Array.isArray(t);if(n!==Array.isArray(e))return!1;if(n){if(t.length!==e.length)return!1;for(let n=0;n{if(i.has(n)){if(i.get(n))return;throw new s("Cyclical context definition detected.","jsonld.CyclicalContext",{code:"cyclic IRI mapping",context:e,term:n})}let h;if(i.set(n,!1),e.hasOwnProperty(n)&&(h=e[n]),"@type"===n&&a(h)&&"@set"===(h["@container"]||"@set")&&b.processingMode(t,1.1)){const t=["@container","@id","@protected"],i=Object.keys(h);if(0===i.length||i.some(e=>!t.includes(e)))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n})}else{if(b.isKeyword(n))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n});if(n.match(m))return void console.warn('WARNING: terms beginning with "@" are reserved for future use and ignored',{term:n});if(""===n)throw new s("Invalid JSON-LD syntax; a term cannot be an empty string.","jsonld.SyntaxError",{code:"invalid term definition",context:e})}const d=t.mappings.get(n);t.mappings.has(n)&&t.mappings.delete(n);let p=!1;if((l(h)||null===h)&&(p=!0,h={"@id":h}),!a(h))throw new s("Invalid JSON-LD syntax; @context term values must be strings or objects.","jsonld.SyntaxError",{code:"invalid term definition",context:e});const f={};t.mappings.set(n,f),f.reverse=!1;const g=["@container","@id","@language","@reverse","@type"];b.processingMode(t,1.1)&&g.push("@context","@direction","@index","@nest","@prefix","@protected");for(const o in h)if(!g.includes(o))throw new s("Invalid JSON-LD syntax; a term definition must not contain "+o,"jsonld.SyntaxError",{code:"invalid term definition",context:e});const _=n.indexOf(":");if(f._termHasColon=_>0,"@reverse"in h){if("@id"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @id.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});if("@nest"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @nest.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});const o=h["@reverse"];if(!l(o))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{reverse:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));const a=y(t,o,{vocab:!0,base:!1},e,i,r);if(!u(a))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be an absolute IRI or a blank node identifier.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=a,f.reverse=!0}else if("@id"in h){let o=h["@id"];if(o&&!l(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an array of strings or a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(null===o)f["@id"]=null;else{if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{id:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));if(o!==n){if(o=y(t,o,{vocab:!0,base:!1},e,i,r),!u(o)&&!b.isKeyword(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an absolute IRI, a blank node identifier, or a keyword.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(n.match(/(?::[^:])|\//)&&y(t,n,{vocab:!0,base:!1},e,new Map(i).set(n,!0),r)!==o)throw new s("Invalid JSON-LD syntax; term in form of IRI must expand to definition.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=o,f._prefix=p&&!f._termHasColon&&o.match(/[:\/\?#\[\]@]$/)}}}if(!("@id"in f))if(f._termHasColon){const s=n.substr(0,_);if(e.hasOwnProperty(s)&&b.createTermDefinition({activeCtx:t,localCtx:e,term:s,defined:i,options:r}),t.mappings.has(s)){const e=n.substr(_+1);f["@id"]=t.mappings.get(s)["@id"]+e}else f["@id"]=n}else if("@type"===n)f["@id"]=n;else{if(!("@vocab"in t))throw new s("Invalid JSON-LD syntax; @context terms must define an @id.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e,term:n});f["@id"]=t["@vocab"]+n}if((!0===h["@protected"]||!0===i.get("@protected")&&!1!==h["@protected"])&&(t.protected[n]=!0,f.protected=!0),i.set(n,!0),"@type"in h){let n=h["@type"];if(!l(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be a string.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if("@json"===n||"@none"===n){if(b.processingMode(t,1))throw new s(`Invalid JSON-LD syntax; an @context @type value must not be "${n}" in JSON-LD 1.0 mode.`,"jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else if("@id"!==n&&"@vocab"!==n){if(n=y(t,n,{vocab:!0,base:!1},e,i,r),!u(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be an absolute IRI.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if(0===n.indexOf("_:"))throw new s("Invalid JSON-LD syntax; an @context @type value must be an IRI, not a blank node identifier.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}f["@type"]=n}if("@container"in h){const n=l(h["@container"])?[h["@container"]]:h["@container"]||[],i=["@list","@set","@index","@language"];let r=!0;const a=n.includes("@set");if(b.processingMode(t,1.1)){if(i.push("@graph","@id","@type"),n.includes("@list")){if(1!==n.length)throw new s("Invalid JSON-LD syntax; @context @container with @list must have no other values","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else if(n.includes("@graph")){if(n.some(t=>"@graph"!==t&&"@id"!==t&&"@index"!==t&&"@set"!==t))throw new s("Invalid JSON-LD syntax; @context @container with @graph must have no other values other than @id, @index, and @set","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else r&=n.length<=(a?2:1);if(n.includes("@type")&&(f["@type"]=f["@type"]||"@id",!["@id","@vocab"].includes(f["@type"])))throw new s("Invalid JSON-LD syntax; container: @type requires @type to be @id or @vocab.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else r&=!o(h["@container"]),r&=n.length<=1;if(r&=n.every(t=>i.includes(t)),r&=!(a&&n.includes("@list")),!r)throw new s("Invalid JSON-LD syntax; @context @container value must be one of the following: "+i.join(", "),"jsonld.SyntaxError",{code:"invalid container mapping",context:e});if(f.reverse&&!n.every(t=>["@index","@set"].includes(t)))throw new s("Invalid JSON-LD syntax; @context @container value for a @reverse type definition must be @index or @set.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});f["@container"]=n}if("@index"in h){if(!("@container"in h)||!f["@container"].includes("@index"))throw new s(`Invalid JSON-LD syntax; @index without @index in @container: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});if(!l(h["@index"])||0===h["@index"].indexOf("@"))throw new s(`Invalid JSON-LD syntax; @index must expand to an IRI: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});f["@index"]=h["@index"]}if("@context"in h&&(f["@context"]=h["@context"]),"@language"in h&&!("@type"in h)){let t=h["@language"];if(null!==t&&!l(t))throw new s("Invalid JSON-LD syntax; @context @language value must be a string or null.","jsonld.SyntaxError",{code:"invalid language mapping",context:e});null!==t&&(t=t.toLowerCase()),f["@language"]=t}if("@prefix"in h){if(n.match(/:|\//))throw new s("Invalid JSON-LD syntax; @context @prefix used on a compact IRI term","jsonld.SyntaxError",{code:"invalid term definition",context:e});if(b.isKeyword(f["@id"]))throw new s("Invalid JSON-LD syntax; keywords may not be used as prefixes","jsonld.SyntaxError",{code:"invalid term definition",context:e});if("boolean"!=typeof h["@prefix"])throw new s("Invalid JSON-LD syntax; @context value for @prefix must be boolean","jsonld.SyntaxError",{code:"invalid @prefix value",context:e});f._prefix=!0===h["@prefix"]}if("@direction"in h){const t=h["@direction"];if(null!==t&&"ltr"!==t&&"rtl"!==t)throw new s('Invalid JSON-LD syntax; @direction value must be null, "ltr", or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",context:e});f["@direction"]=t}if("@nest"in h){const t=h["@nest"];if(!l(t)||"@nest"!==t&&0===t.indexOf("@"))throw new s("Invalid JSON-LD syntax; @context @nest value must be a string which is not a keyword other than @nest.","jsonld.SyntaxError",{code:"invalid @nest value",context:e});f["@nest"]=t}const w=f["@id"];if("@context"===w||"@preserve"===w)throw new s("Invalid JSON-LD syntax; @context and @preserve cannot be aliased.","jsonld.SyntaxError",{code:"invalid keyword alias",context:e});if(d&&d.protected&&!c&&(t.protected[n]=!0,f.protected=!0,!v(d,f))){const t=r&&r.protectedMode||"error";if("error"===t)throw new s(`Invalid JSON-LD syntax; tried to redefine "${n}" which is a protected term.`,"jsonld.SyntaxError",{code:"protected term redefinition",context:e,term:n});if("warn"===t)return void console.warn("WARNING: protected term redefinition",{term:n});throw new s("Invalid protectedMode.","jsonld.SyntaxError",{code:"invalid protected mode",context:e,term:n,protectedMode:t})}},b.expandIri=(t,e,n,i)=>y(t,e,n,void 0,void 0,i),b.getInitialContext=t=>{const e=JSON.stringify({processingMode:t.processingMode}),n=g.get(e);if(n)return n;const i={processingMode:t.processingMode,mappings:new Map,inverse:null,getInverse:function(){const t=this;if(t.inverse)return t.inverse;const e=t.inverse={},n=t.fastCurieMap={},i={},r=(t["@language"]||"@none").toLowerCase(),a=t["@direction"],l=t.mappings,c=[...l.keys()].sort(f);for(const s of c){const t=l.get(s);if(null===t)continue;let c=t["@container"]||"@none";if(c=[].concat(c).sort().join(""),null===t["@id"])continue;const u=p(t["@id"]);for(const l of u){let u=e[l];const h=b.isKeyword(l);if(u)!h&&!t._termHasColon&&i[l].push(s);else if(e[l]=u={},!h&&!t._termHasColon){i[l]=[s];const t={iri:l,terms:i[l]};l[0]in n?n[l[0]].push(t):n[l[0]]=[t]}if(u[c]||(u[c]={"@language":{},"@type":{},"@any":{}}),u=u[c],o(s,u["@any"],"@none"),t.reverse)o(s,u["@type"],"@reverse");else if("@none"===t["@type"])o(s,u["@any"],"@none"),o(s,u["@language"],"@none"),o(s,u["@type"],"@none");else if("@type"in t)o(s,u["@type"],t["@type"]);else if("@language"in t&&"@direction"in t){const e=t["@language"],n=t["@direction"];o(s,u["@language"],e&&n?`${e}_${n}`.toLowerCase():e?e.toLowerCase():n?`_${n}`:"@null")}else"@language"in t?o(s,u["@language"],(t["@language"]||"@null").toLowerCase()):"@direction"in t?o(s,u["@language"],t["@direction"]?`_${t["@direction"]}`:"@none"):a?(o(s,u["@language"],`_${a}`),o(s,u["@language"],"@none"),o(s,u["@type"],"@none")):(o(s,u["@language"],r),o(s,u["@language"],"@none"),o(s,u["@type"],"@none"))}}for(const o in n)s(n,o,1);return e},clone:function(){const t={};return t.mappings=r.clone(this.mappings),t.clone=this.clone,t.inverse=null,t.getInverse=this.getInverse,t.protected=r.clone(this.protected),this.previousContext&&(t.previousContext=this.previousContext.clone()),t.revertToPreviousContext=this.revertToPreviousContext,"@base"in this&&(t["@base"]=this["@base"]),"@language"in this&&(t["@language"]=this["@language"]),"@vocab"in this&&(t["@vocab"]=this["@vocab"]),t},revertToPreviousContext:function(){return this.previousContext?this.previousContext.clone():this},protected:{}};return 1e4===g.size&&g.clear(),g.set(e,i),i;function s(t,e,n){const i=t[e],r=t[e]={};let o,a;for(const s of i)o=s.iri,a=n>=o.length?"":o[n],a in r?r[a].push(s):r[a]=[s];for(const l in r)""!==l&&s(r,l,n+1)}function o(t,e,n){e.hasOwnProperty(n)||(e[n]=t)}},b.getContextValue=(t,e,n)=>{if(null===e)return"@context"===n?void 0:null;if(t.mappings.has(e)){const i=t.mappings.get(e);if(c(n))return i;if(i.hasOwnProperty(n))return i[n]}return"@language"===n&&n in t||"@direction"===n&&n in t?t[n]:"@context"!==n?null:void 0},b.processingMode=(t,e)=>e.toString()>="1.1"?!t.processingMode||t.processingMode>="json-ld-"+e.toString():"json-ld-1.0"===t.processingMode,b.isKeyword=t=>{if(!l(t)||"@"!==t[0])return!1;switch(t){case"@base":case"@container":case"@context":case"@default":case"@direction":case"@embed":case"@explicit":case"@graph":case"@id":case"@included":case"@index":case"@json":case"@language":case"@list":case"@nest":case"@none":case"@omitDefault":case"@prefix":case"@preserve":case"@protected":case"@requireAll":case"@reverse":case"@set":case"@type":case"@value":case"@version":case"@vocab":return!0}return!1}},{"./JsonLdError":12,"./types":30,"./url":31,"./util":32}],20:[function(t,e,n){"use strict";const{parseLinkHeader:r,buildHeaders:s}=t("../util"),{LINK_HEADER_CONTEXT:o}=t("../constants"),a=t("../JsonLdError"),l=t("../RequestQueue"),{prependBase:c}=t("../url"),u=/(^|(\r\n))link:/i;function h(t,e,n){const i=new(t=t||XMLHttpRequest);return new Promise((t,r)=>{i.onload=()=>t(i),i.onerror=t=>r(t),i.open("GET",e,!0);for(const e in n)i.setRequestHeader(e,n[e]);i.send()})}e.exports=({secure:t,headers:e={},xhr:n}={headers:{}})=>{return e=s(e),(new l).wrapLoader(d);function d(t){return p.apply(this,arguments)}function p(){return(p=i(function*(i){if(0!==i.indexOf("http:")&&0!==i.indexOf("https:"))throw new a('URL could not be dereferenced; only "http" and "https" URLs are supported.',"jsonld.InvalidUrl",{code:"loading document failed",url:i});if(t&&0!==i.indexOf("https"))throw new a('URL could not be dereferenced; secure mode is enabled and the URL\'s scheme is not "https".',"jsonld.InvalidUrl",{code:"loading document failed",url:i});let s;try{s=yield h(n,i,e)}catch(m){throw new a("URL could not be dereferenced, an error occurred.","jsonld.LoadDocumentError",{code:"loading document failed",url:i,cause:m})}if(s.status>=400)throw new a("URL could not be dereferenced: "+s.statusText,"jsonld.LoadDocumentError",{code:"loading document failed",url:i,httpStatusCode:s.status});let l={contextUrl:null,documentUrl:i,document:s.response},p=null;const f=s.getResponseHeader("Content-Type");let g;if(u.test(s.getAllResponseHeaders())&&(g=s.getResponseHeader("Link")),g&&"application/ld+json"!==f){const t=r(g),e=t[o];if(Array.isArray(e))throw new a("URL could not be dereferenced, it has more than one associated HTTP Link Header.","jsonld.InvalidUrl",{code:"multiple context link headers",url:i});e&&(l.contextUrl=e.target),p=t.alternate,p&&"application/ld+json"==p.type&&!(f||"").match(/^application\/(\w*\+)?json$/)&&(l=yield d(c(i,p.target)))}return l})).apply(this,arguments)}}},{"../JsonLdError":12,"../RequestQueue":15,"../constants":18,"../url":31,"../util":32}],21:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isEmptyObject:a,isString:l,isUndefined:c}=t("./types"),{isList:u,isValue:h,isGraph:d,isSubject:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{isAbsolute:v}=t("./url"),{addValue:_,asArray:w,getValues:x,validateTypeValue:S}=t("./util"),E={};e.exports=E;const C=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/;function O(t){return T.apply(this,arguments)}function T(){return(T=i(function*({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x={},insideList:T,typeKey:k,typeScopedContext:M,expansionMap:I}){const D=Object.keys(i).sort(),R=[];let N;const L=i[k]&&"@json"===f(t,s(i[k])?i[k][0]:i[k],{vocab:!0},x);for(const O of D){let k,D=i[O];if("@context"===O)continue;let j=f(t,O,{vocab:!0},x);if((null===j||!v(j)&&!m(j))&&(j=I({unmappedProperty:O,activeCtx:t,activeProperty:e,parent:i,options:x,insideList:T,value:D,expandedParent:d}),void 0===j))continue;if(m(j)){if("@reverse"===n)throw new r("Invalid JSON-LD syntax; a keyword cannot be used as a @reverse property.","jsonld.SyntaxError",{code:"invalid reverse property map",value:D});if(j in d&&"@included"!==j&&"@type"!==j)throw new r("Invalid JSON-LD syntax; colliding keywords detected.","jsonld.SyntaxError",{code:"colliding keywords",keyword:j})}if("@id"===j){if(!l(D)){if(!x.isFrame)throw new r('Invalid JSON-LD syntax; "@id" value must a string.',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(o(D)){if(!a(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}else{if(!s(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(!D.every(t=>l(t)))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}}_(d,"@id",w(D).map(e=>l(e)?f(t,e,{base:!0},x):e),{propertyIsArray:x.isFrame});continue}if("@type"===j){o(D)&&(D=Object.fromEntries(Object.entries(D).map(([t,e])=>[f(M,t,{vocab:!0}),w(e).map(t=>f(M,t,{base:!0,vocab:!0}))]))),S(D,x.isFrame),_(d,"@type",w(D).map(t=>l(t)?f(M,t,{base:!0,vocab:!0},x):t),{propertyIsArray:x.isFrame});continue}if("@included"===j&&y(t,1.1)){const n=w(yield E.expand({activeCtx:t,activeProperty:e,element:D,options:x,expansionMap:I}));if(!n.every(t=>p(t)))throw new r("Invalid JSON-LD syntax; values of @included must expand to node objects.","jsonld.SyntaxError",{code:"invalid @included value",value:D});_(d,"@included",n,{propertyIsArray:!0});continue}if("@graph"===j&&!o(D)&&!s(D))throw new r('Invalid JSON-LD syntax; "@graph" value must not be an object or an array.',"jsonld.SyntaxError",{code:"invalid @graph value",value:D});if("@value"===j){N=D,L&&y(t,1.1)?d["@value"]=D:_(d,"@value",D,{propertyIsArray:x.isFrame});continue}if("@language"===j){if(null===D)continue;if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@language" value must be a string.',"jsonld.SyntaxError",{code:"invalid language-tagged string",value:D});D=w(D).map(t=>l(t)?t.toLowerCase():t);for(const t of D)l(t)&&!t.match(C)&&console.warn(`@language must be valid BCP47: ${t}`);_(d,"@language",D,{propertyIsArray:x.isFrame});continue}if("@direction"===j){if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@direction" value must be a string.',"jsonld.SyntaxError",{code:"invalid base direction",value:D});D=w(D);for(const t of D)if(l(t)&&"ltr"!==t&&"rtl"!==t)throw new r('Invalid JSON-LD syntax; "@direction" must be "ltr" or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",value:D});_(d,"@direction",D,{propertyIsArray:x.isFrame});continue}if("@index"===j){if(!l(D))throw new r('Invalid JSON-LD syntax; "@index" value must be a string.',"jsonld.SyntaxError",{code:"invalid @index value",value:D});_(d,"@index",D);continue}if("@reverse"===j){if(!o(D))throw new r('Invalid JSON-LD syntax; "@reverse" value must be an object.',"jsonld.SyntaxError",{code:"invalid @reverse value",value:D});if(k=yield E.expand({activeCtx:t,activeProperty:"@reverse",element:D,options:x,expansionMap:I}),"@reverse"in k)for(const t in k["@reverse"])_(d,t,k["@reverse"][t],{propertyIsArray:!0});let e=d["@reverse"]||null;for(const t in k){if("@reverse"===t)continue;null===e&&(e=d["@reverse"]={}),_(e,t,[],{propertyIsArray:!0});const n=k[t];for(let i=0;i"@id"===t||"@index"===t)&&(k=w(k).map(t=>({"@graph":w(t)}))),F.mappings.has(O)&&F.mappings.get(O).reverse){const t=d["@reverse"]=d["@reverse"]||{};k=w(k);for(let e=0;e"@value"===f(t,e,{vocab:!0},x)))throw new r("Invalid JSON-LD syntax; nested value must be a node object.","jsonld.SyntaxError",{code:"invalid @nest value",value:i});yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x,insideList:T,typeScopedContext:M,typeKey:k,expansionMap:I})}}})).apply(this,arguments)}function k({activeCtx:t,activeProperty:e,value:n,options:i}){if(null==n)return null;const r=f(t,e,{vocab:!0},i);if("@id"===r)return f(t,n,{base:!0},i);if("@type"===r)return f(t,n,{vocab:!0,base:!0},i);const s=g(t,e,"@type");if(("@id"===s||"@graph"===r)&&l(n))return{"@id":f(t,n,{base:!0},i)};if("@vocab"===s&&l(n))return{"@id":f(t,n,{vocab:!0,base:!0},i)};if(m(r))return n;const o={};if(s&&!["@id","@vocab","@none"].includes(s))o["@type"]=s;else if(l(n)){const n=g(t,e,"@language");null!==n&&(o["@language"]=n);const i=g(t,e,"@direction");null!==i&&(o["@direction"]=i)}return["boolean","number","string"].includes(typeof n)||(n=n.toString()),o["@value"]=n,o}function A(t,e,n,i){const o=[],a=Object.keys(e).sort();for(const c of a){const a=f(t,c,{vocab:!0},i);let u=e[c];s(u)||(u=[u]);for(const t of u){if(null===t)continue;if(!l(t))throw new r("Invalid JSON-LD syntax; language map values must be strings.","jsonld.SyntaxError",{code:"invalid language map value",languageMap:e});const i={"@value":t};"@none"!==a&&(i["@language"]=c.toLowerCase()),n&&(i["@direction"]=n),o.push(i)}}return o}function P(t){return M.apply(this,arguments)}function M(){return(M=i(function*({activeCtx:t,options:e,activeProperty:n,value:i,expansionMap:o,asGraph:a,indexKey:l,propertyIndex:u}){const p=[],m=Object.keys(i).sort(),y="@type"===l;for(let v of m){if(y){const n=g(t,v,"@context");c(n)||(t=yield b({activeCtx:t,localCtx:n,propagate:!1,options:e}))}let m,w=i[v];s(w)||(w=[w]),w=yield E.expand({activeCtx:t,activeProperty:n,element:w,options:e,insideList:!1,insideIndex:!0,expansionMap:o}),m=u?"@none"===v?"@none":k({activeCtx:t,activeProperty:l,value:v,options:e}):f(t,v,{vocab:!0},e),"@id"===l?v=f(t,v,{base:!0},e):y&&(v=m);for(let t of w){if(a&&!d(t)&&(t={"@graph":[t]}),"@type"===l)"@none"===m||(t["@type"]=t["@type"]?[v].concat(t["@type"]):[v]);else{if(h(t)&&!["@language","@type","@index"].includes(l))throw new r(`Invalid JSON-LD syntax; Attempt to add illegal key to value object: "${l}".`,"jsonld.SyntaxError",{code:"invalid value object",value:t});u?"@none"!==m&&_(t,u,m,{propertyIsArray:!0,prependValue:!0}):"@none"!==m&&!(l in t)&&(t[l]=v)}p.push(t)}}return p})).apply(this,arguments)}E.expand=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},insideList:u=!1,insideIndex:h=!1,typeScopedContext:d=null,expansionMap:p=(()=>{})}){if(null==n)return null;if("@default"===e&&(i=Object.assign({},i,{isFrame:!1})),!s(n)&&!o(n)){if(!u&&(null===e||"@graph"===f(t,e,{vocab:!0},i))){const r=yield p({unmappedValue:n,activeCtx:t,activeProperty:e,options:i,insideList:u});return void 0===r?null:r}return k({activeCtx:t,activeProperty:e,value:n,options:i})}if(s(n)){let r=[];const o=g(t,e,"@container")||[];u=u||o.includes("@list");for(let a=0;a1?e.slice().sort():e:[e];for(const n of s){const e=g(d,n,"@context");c(e)||(t=yield b({activeCtx:t,localCtx:e,options:i,propagate:!1}))}}let A={};yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:m,element:n,expandedParent:A,options:i,insideList:u,typeKey:T,typeScopedContext:d,expansionMap:p}),S=Object.keys(A);let P=S.length;if("@value"in A){if("@type"in A&&("@language"in A||"@direction"in A))throw new r('Invalid JSON-LD syntax; an element containing "@value" may not contain both "@type" and either "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});let s=P-1;if("@type"in A&&(s-=1),"@index"in A&&(s-=1),"@language"in A&&(s-=1),"@direction"in A&&(s-=1),0!==s)throw new r('Invalid JSON-LD syntax; an element containing "@value" may only have an "@index" property and either "@type" or either or both "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});const o=null===A["@value"]?[]:w(A["@value"]),c=x(A,"@type");if(!y(t,1.1)||!c.includes("@json")||1!==c.length)if(0===o.length){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}else{if(!o.every(t=>l(t)||a(t))&&"@language"in A)throw new r("Invalid JSON-LD syntax; only strings may be language-tagged.","jsonld.SyntaxError",{code:"invalid language-tagged value",element:A});if(!c.every(t=>v(t)&&!(l(t)&&0===t.indexOf("_:"))||a(t)))throw new r('Invalid JSON-LD syntax; an element containing "@value" and "@type" must have an absolute IRI for the value of "@type".',"jsonld.SyntaxError",{code:"invalid typed value",element:A})}}else if("@type"in A&&!s(A["@type"]))A["@type"]=[A["@type"]];else if("@set"in A||"@list"in A){if(P>1&&(2!==P||!("@index"in A)))throw new r('Invalid JSON-LD syntax; if an element has the property "@set" or "@list", then it can have at most one other property that is "@index".',"jsonld.SyntaxError",{code:"invalid set or list object",element:A});"@set"in A&&(A=A["@set"],S=Object.keys(A),P=S.length)}else if(1===P&&"@language"in A){const r=yield p(A,{unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}if(o(A)&&!i.keepFreeFloatingNodes&&!u&&(null===e||"@graph"===m)&&(0===P||"@value"in A||"@list"in A||1===P&&"@id"in A)){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}return A});return function(e){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],22:[function(t,e,n){"use strict";const{isSubjectReference:i}=t("./graphTypes"),{createMergedNodeMap:r}=t("./nodeMap"),s={};e.exports=s,s.flatten=t=>{const e=r(t),n=[],s=Object.keys(e).sort();for(let r=0;r=0;--i){const r=n[i];if(r.graph===e&&r.subject["@id"]===t["@id"])return!0}return!1}function f(t,e,n){const i="@"+n;let r=i in t?t[i][0]:e[n];if("embed"===n)if(!0===r)r="@once";else if(!1===r)r="@never";else if("@always"!==r&&"@never"!==r&&"@link"!==r&&"@first"!==r&&"@last"!==r&&"@once"!==r)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:t});return r}function g(t){if(!s.isArray(t)||1!==t.length||!s.isObject(t[0]))throw new l("Invalid JSON-LD syntax; a JSON-LD frame must be a single object.","jsonld.SyntaxError",{frame:t});if("@id"in t[0])for(const e of o.asArray(t[0]["@id"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @id in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t});if("@type"in t[0])for(const e of o.asArray(t[0]["@type"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @type in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t})}function m(t,e,n,a){let l=!0,c=!1;for(const u in n){let h=!1;const d=o.getValues(e,u),p=0===o.getValues(n,u).length;if("@id"===u){if(s.isEmptyObject(n["@id"][0]||{})?h=!0:n["@id"].length>=0&&(h=n["@id"].includes(d[0])),!a.requireAll)return h}else if("@type"===u){if(l=!1,p){if(d.length>0)return!1;h=!0}else if(1===n["@type"].length&&s.isEmptyObject(n["@type"][0]))h=d.length>0;else for(const t of n["@type"])h=!(!s.isObject(t)||!("@default"in t))||h||d.some(e=>e===t);if(!a.requireAll)return h}else{if(i(u))continue;{const e=o.getValues(n,u)[0];let i=!1;if(e&&(g([e]),i="@default"in e),l=!1,0===d.length&&i)continue;if(d.length>0&&p)return!1;if(void 0===e){if(d.length>0)return!1;h=!0}else if(r.isList(e)){const n=e["@list"][0];if(r.isList(d[0])){const e=d[0]["@list"];r.isValue(n)?h=e.some(t=>w(n,t)):(r.isSubject(n)||r.isSubjectReference(n))&&(h=e.some(e=>_(t,n,e,a)))}}else h=r.isValue(e)?d.some(t=>w(e,t)):r.isSubjectReference(e)?d.some(n=>_(t,e,n,a)):!!s.isObject(e)&&d.length>0}}if(!h&&a.requireAll)return!1;c=c||h}return l||c}function b(t,e){const n=t.uniqueEmbeds[t.graph],i=n[e],r=i.parent,a=i.property,l={"@id":e};if(s.isArray(r)){for(let t=0;t{const e=Object.keys(n);for(const i of e)i in n&&s.isObject(n[i].parent)&&n[i].parent["@id"]===t&&(delete n[i],c(i))};c(e)}function y(t,e){if(s.isArray(t))return t.map(t=>y(t,e));if(s.isObject(t)){if("@preserve"in t)return t["@preserve"][0];if(r.isValue(t))return t;if(r.isList(t))return t["@list"]=y(t["@list"],e),t;if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)"@id"===n&&e.bnodesToClear.includes(t[n])?delete t["@id"]:t[n]=y(t[n],e)}return t}function v(t,e,n){s.isObject(t)?o.addValue(t,e,n,{propertyIsArray:!0}):t.push(n)}function _(t,e,n,i){if(!("@id"in n))return!1;const r=t.subjects[n["@id"]];return r&&m(t,r,e,i)}function w(t,e){const n=e["@value"],i=e["@type"],r=e["@language"],o=t["@value"]?s.isArray(t["@value"])?t["@value"]:[t["@value"]]:[],a=t["@type"]?s.isArray(t["@type"])?t["@type"]:[t["@type"]]:[],l=t["@language"]?s.isArray(t["@language"])?t["@language"]:[t["@language"]]:[];return 0===o.length&&0===a.length&&0===l.length||!(!o.includes(n)&&!s.isEmptyObject(o[0])||!(!i&&0===a.length||a.includes(i)||i&&s.isEmptyObject(a[0]))||!(!r&&0===l.length||l.includes(r)||r&&s.isEmptyObject(l[0])))}e.exports=h,h.frameMergedOrDefault=(t,e,n)=>{const i={options:n,embedded:!1,graph:"@default",graphMap:{"@default":{}},subjectStack:[],link:{},bnodeMap:{}},r=new o.IdentifierIssuer("_:b");c(t,i.graphMap,"@default",r),n.merged&&(i.graphMap["@merged"]=u(i.graphMap),i.graph="@merged"),i.subjects=i.graphMap[i.graph];const s=[];return h.frame(i,Object.keys(i.subjects).sort(),e,s),n.pruneBlankNodeIdentifiers&&(n.bnodesToClear=Object.keys(i.bnodeMap).filter(t=>1===i.bnodeMap[t].length)),n.link={},y(s,n)},h.frame=(t,e,n,a,c=null)=>{g(n);const u=t.options,y={embed:f(n=n[0],u,"embed"),explicit:f(n,u,"explicit"),requireAll:f(n,u,"requireAll")};t.link.hasOwnProperty(t.graph)||(t.link[t.graph]={});const _=t.link[t.graph],x=function(t,e,n,i){const r={};for(const s of e){const e=t.graphMap[t.graph][s];m(t,e,n,i)&&(r[s]=e)}return r}(t,e,n,y),S=Object.keys(x).sort();for(const g of S){const m=x[g];if(null===c?t.uniqueEmbeds={[t.graph]:{}}:t.uniqueEmbeds[t.graph]=t.uniqueEmbeds[t.graph]||{},"@link"===y.embed&&g in _){v(a,c,_[g]);continue}const S={"@id":g};if(0===g.indexOf("_:")&&o.addValue(t.bnodeMap,g,S,{propertyIsArray:!0}),_[g]=S,("@first"===y.embed||"@last"===y.embed)&&t.is11)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:n});if(t.embedded||!t.uniqueEmbeds[t.graph].hasOwnProperty(g)){if(t.embedded&&("@never"===y.embed||p(m,t.graph,t.subjectStack))){v(a,c,S);continue}if(t.embedded&&("@first"==y.embed||"@once"==y.embed)&&t.uniqueEmbeds[t.graph].hasOwnProperty(g)){v(a,c,S);continue}if("@last"===y.embed&&g in t.uniqueEmbeds[t.graph]&&b(t,g),t.uniqueEmbeds[t.graph][g]={parent:a,property:c},t.subjectStack.push({subject:m,graph:t.graph}),g in t.graphMap){let e=!1,i=null;"@graph"in n?(i=n["@graph"][0],e=!("@merged"===g||"@default"===g),s.isObject(i)||(i={})):(e="@merged"!==t.graph,i={}),e&&h.frame(ii(wt({},t),{graph:g,embedded:!1}),Object.keys(t.graphMap[g]).sort(),[i],S,"@graph")}"@included"in n&&h.frame(ii(wt({},t),{embedded:!1}),e,n["@included"],S,"@included");for(const e of Object.keys(m).sort())if(i(e)){if(S[e]=o.clone(m[e]),"@type"===e)for(const e of m["@type"])0===e.indexOf("_:")&&o.addValue(t.bnodeMap,e,S,{propertyIsArray:!0})}else if(!y.explicit||e in n)for(const i of m[e]){const s=e in n?n[e]:d(y);if(r.isList(i)){const s=n[e]&&n[e][0]&&n[e][0]["@list"]?n[e][0]["@list"]:d(y),a={"@list":[]};v(S,e,a);const l=i["@list"];for(const e of l)r.isSubjectReference(e)?h.frame(ii(wt({},t),{embedded:!0}),[e["@id"]],s,a,"@list"):v(a,"@list",o.clone(e))}else r.isSubjectReference(i)?h.frame(ii(wt({},t),{embedded:!0}),[i["@id"]],s,S,e):w(s[0],i)&&v(S,e,o.clone(i))}for(const t of Object.keys(n).sort()){if("@type"===t){if(!s.isObject(n[t][0])||!("@default"in n[t][0]))continue}else if(i(t))continue;const e=n[t][0]||{};if(!f(e,u,"omitDefault")&&!(t in S)){let n="@null";"@default"in e&&(n=o.clone(e["@default"])),s.isArray(n)||(n=[n]),S[t]=[{"@preserve":n}]}}for(const e of Object.keys(n["@reverse"]||{}).sort()){const i=n["@reverse"][e];for(const n of Object.keys(t.subjects))o.getValues(t.subjects[n],e).some(t=>t["@id"]===g)&&(S["@reverse"]=S["@reverse"]||{},o.addValue(S["@reverse"],e,[],{propertyIsArray:!0}),h.frame(ii(wt({},t),{embedded:!0}),[n],i,S["@reverse"][e],c))}v(a,c,S),t.subjectStack.pop()}}},h.cleanupNull=(t,e)=>{if(s.isArray(t))return t.map(t=>h.cleanupNull(t,e)).filter(t=>t);if("@null"===t)return null;if(s.isObject(t)){if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)t[n]=h.cleanupNull(t[n],e)}return t}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32}],24:[function(t,e,n){"use strict";const r=t("./JsonLdError"),s=t("./graphTypes"),o=t("./types"),a=t("./util"),{RDF_LIST:l,RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,XSD_BOOLEAN:f,XSD_DOUBLE:g,XSD_INTEGER:m,XSD_STRING:b}=t("./constants"),y=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/,v={};function _(t,e,n){if(t.termType.endsWith("Node"))return{"@id":t.value};const i={"@value":t.value};if(t.language)i["@language"]=t.language;else{let a=t.datatype.value;if(a||(a=b),a===p){a="@json";try{i["@value"]=JSON.parse(i["@value"])}catch(s){throw new r("JSON literal could not be parsed.","jsonld.InvalidJsonLiteral",{code:"invalid JSON literal",value:i["@value"],cause:s})}}if(e){if(a===f)"true"===i["@value"]?i["@value"]=!0:"false"===i["@value"]&&(i["@value"]=!1);else if(o.isNumeric(i["@value"]))if(a===m){const t=parseInt(i["@value"],10);t.toFixed(0)===i["@value"]&&(i["@value"]=t)}else a===g&&(i["@value"]=parseFloat(i["@value"]));[f,m,g,b].includes(a)||(i["@type"]=a)}else if("i18n-datatype"===n&&a.startsWith("https://www.w3.org/ns/i18n#")){const[,t,e]=a.split(/[#_]/);t.length>0&&(i["@language"]=t,t.match(y)||console.warn(`@language must be valid BCP47: ${t}`)),i["@direction"]=e}else a!==b&&(i["@type"]=a)}return i}e.exports=v,v.fromRDF=function(){var t=i(function*(t,{useRdfType:e=!1,useNativeTypes:n=!1,rdfDirection:i=null}){const r={},p={"@default":r},f={};for(const s of t){const t="DefaultGraph"===s.graph.termType?"@default":s.graph.value;t in p||(p[t]={}),"@default"!==t&&!(t in r)&&(r[t]={"@id":t});const o=p[t],l=s.subject.value,c=s.predicate.value,u=s.object;l in o||(o[l]={"@id":l});const g=o[l],m=u.termType.endsWith("Node");if(m&&!(u.value in o)&&(o[u.value]={"@id":u.value}),c===d&&!e&&m){a.addValue(g,"@type",u.value,{propertyIsArray:!0});continue}const b=_(u,n,i);if(a.addValue(g,c,b,{propertyIsArray:!0}),m)if(u.value===h){const t=o[u.value];"usages"in t||(t.usages=[]),t.usages.push({node:g,property:c,value:b})}else f[u.value]=!(u.value in f)&&{node:g,property:c,value:b}}for(const a in p){const t=p[a];if(!(h in t))continue;const e=t[h];if(e.usages){for(let n of e.usages){let e=n.node,i=n.property,r=n.value;const a=[],h=[];let d=Object.keys(e).length;for(;i===u&&o.isObject(f[e["@id"]])&&o.isArray(e[c])&&1===e[c].length&&o.isArray(e[u])&&1===e[u].length&&(3===d||4===d&&o.isArray(e["@type"])&&1===e["@type"].length&&e["@type"][0]===l)&&(a.push(e[c][0]),h.push(e["@id"]),n=f[e["@id"]],e=n.node,i=n.property,r=n.value,d=Object.keys(e).length,s.isBlankNode(e)););delete r["@id"],r["@list"]=a.reverse();for(const n of h)delete t[n]}delete e.usages}}const g=[],m=Object.keys(r).sort();for(const o of m){const t=r[o];if(o in p){const e=t["@graph"]=[],n=p[o],i=Object.keys(n).sort();for(const t of i){const i=n[t];s.isSubjectReference(i)||e.push(i)}}s.isSubjectReference(t)||g.push(t)}return g});return function(e,n){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./constants":18,"./graphTypes":25,"./types":30,"./util":32}],25:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.isSubject=t=>!(!i.isObject(t)||"@value"in t||"@set"in t||"@list"in t)&&(Object.keys(t).length>1||!("@id"in t)),r.isSubjectReference=t=>i.isObject(t)&&1===Object.keys(t).length&&"@id"in t,r.isValue=t=>i.isObject(t)&&"@value"in t,r.isList=t=>i.isObject(t)&&"@list"in t,r.isGraph=t=>i.isObject(t)&&"@graph"in t&&1===Object.keys(t).filter(t=>"@id"!==t&&"@index"!==t).length,r.isSimpleGraph=t=>r.isGraph(t)&&!("@id"in t),r.isBlankNode=t=>!!i.isObject(t)&&("@id"in t?0===t["@id"].indexOf("_:"):0===Object.keys(t).length||!("@value"in t||"@set"in t||"@list"in t))},{"./types":30}],26:[function(t,e,n){const r=t("rdf-canonize"),s=t("./platform"),o=t("./util"),a=t("./ContextResolver"),l=o.IdentifierIssuer,c=t("./JsonLdError"),u=t("lru-cache"),h=t("./NQuads"),{expand:d}=t("./expand"),{flatten:p}=t("./flatten"),{fromRDF:f}=t("./fromRdf"),{toRDF:g}=t("./toRdf"),{frameMergedOrDefault:m,cleanupNull:b}=t("./frame"),{isArray:y,isObject:v,isString:_}=t("./types"),{isSubjectReference:w}=t("./graphTypes"),{expandIri:x,getInitialContext:S,process:E,processingMode:C}=t("./context"),{compact:O,compactIri:T}=t("./compact"),{createNodeMap:k,createMergedNodeMap:A,mergeNodeMaps:P}=t("./nodeMap"),M=function(e){const n={},M=new u({max:100});function I(t,n){var i=n,{documentLoader:r=e.documentLoader}=i,s=_X(i,["documentLoader"]);return Object.assign({},{documentLoader:r},s,t)}return e.compact=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not compact, too few arguments.");if(null===n)throw new c("The compaction context must not be null.","jsonld.CompactError",{code:"invalid local context"});if(null===t)return null;let r;(i=I(i,{base:_(t)?t:"",compactArrays:!0,compactToRelative:!0,graph:!1,skipExpansion:!1,link:!1,issuer:new l("_:b"),contextResolver:new a({sharedCache:M})})).link&&(i.skipExpansion=!0),i.compactToRelative||delete i.base,r=i.skipExpansion?t:yield e.expand(t,i);const s=yield e.processContext(S(i),n,i);let u=yield O({activeCtx:s,element:r,options:i,compactionMap:i.compactionMap});i.compactArrays&&!i.graph&&y(u)?1===u.length?u=u[0]:0===u.length&&(u={}):i.graph&&v(u)&&(u=[u]),v(n)&&"@context"in n&&(n=n["@context"]),n=o.clone(n),y(n)||(n=[n]);const h=n;n=[];for(let e=0;e0)&&n.push(h[e]);const d=n.length>0;if(1===n.length&&(n=n[0]),y(u)){const t=T({activeCtx:s,iri:"@graph",relativeTo:{vocab:!0}}),e=u;u={},d&&(u["@context"]=n),u[t]=e}else if(v(u)&&d){const t=u;u={"@context":n};for(const e in t)u[e]=t[e]}return u});return function(e,n,i){return t.apply(this,arguments)}}(),e.expand=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not expand, too few arguments.");!1===(n=I(n,{keepFreeFloatingNodes:!1,contextResolver:new a({sharedCache:M})})).expansionMap&&(n.expansionMap=void 0);const i={},r=[];if("expandContext"in n){const t=o.clone(n.expandContext);i.expandContext=v(t)&&"@context"in t?t:{"@context":t},r.push(i.expandContext)}let s;if(_(t)){const o=yield e.get(t,n);s=o.documentUrl,i.input=o.document,o.contextUrl&&(i.remoteContext={"@context":o.contextUrl},r.push(i.remoteContext))}else i.input=o.clone(t);"base"in n||(n.base=s||"");let l=S(n);for(const e of r)l=yield E({activeCtx:l,localCtx:e,options:n});let c=yield d({activeCtx:l,element:i.input,options:n,expansionMap:n.expansionMap});return v(c)&&"@graph"in c&&1===Object.keys(c).length?c=c["@graph"]:null===c&&(c=[]),y(c)||(c=[c]),c});return function(e,n){return t.apply(this,arguments)}}(),e.flatten=function(){var t=i(function*(t,n,i){if(arguments.length<1)return new TypeError("Could not flatten, too few arguments.");n="function"==typeof n?null:n||null,i=I(i,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const r=yield e.expand(t,i),s=p(r);return null===n?s:(i.graph=!0,i.skipExpansion=!0,yield e.compact(s,n,i))});return function(e,n,i){return t.apply(this,arguments)}}(),e.frame=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not frame, too few arguments.");if(i=I(i,{base:_(t)?t:"",embed:"@once",explicit:!1,requireAll:!1,omitDefault:!1,bnodesToClear:[],contextResolver:new a({sharedCache:M})}),_(n)){const t=yield e.get(n,i);if(n=t.document,t.contextUrl){let e=n["@context"];e?y(e)?e.push(t.contextUrl):e=[e,t.contextUrl]:e=t.contextUrl,n["@context"]=e}}const r=n&&n["@context"]||{},s=yield e.processContext(S(i),r,i);i.hasOwnProperty("omitGraph")||(i.omitGraph=C(s,1.1)),i.hasOwnProperty("pruneBlankNodeIdentifiers")||(i.pruneBlankNodeIdentifiers=C(s,1.1));const o=yield e.expand(t,i),l=wt({},i);l.isFrame=!0,l.keepFreeFloatingNodes=!0;const c=yield e.expand(n,l),u=Object.keys(n).map(t=>x(s,t,{vocab:!0}));l.merged=!u.includes("@graph"),l.is11=C(s,1.1);const h=m(o,c,l);l.graph=!i.omitGraph,l.skipExpansion=!0,l.link={},l.framing=!0;let d=yield e.compact(h,r,l);return l.link={},d=b(d,l),d});return function(e,n,i){return t.apply(this,arguments)}}(),e.link=function(){var t=i(function*(t,n,i){const r={};return n&&(r["@context"]=n),r["@embed"]="@link",e.frame(t,r,i)});return function(e,n,i){return t.apply(this,arguments)}}(),e.normalize=e.canonize=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not canonize, too few arguments.");if("inputFormat"in(n=I(n,{base:_(t)?t:"",algorithm:"URDNA2015",skipExpansion:!1,contextResolver:new a({sharedCache:M})}))){if("application/n-quads"!==n.inputFormat&&"application/nquads"!==n.inputFormat)throw new c("Unknown canonicalization input format.","jsonld.CanonizeError");const e=h.parse(t);return r.canonize(e,n)}const i=wt({},n);delete i.format,i.produceGeneralizedRdf=!1;const s=yield e.toRDF(t,i);return r.canonize(s,n)});return function(e,n){return t.apply(this,arguments)}}(),e.fromRDF=function(){var t=i(function*(t,e){if(arguments.length<1)throw new TypeError("Could not convert from RDF, too few arguments.");e=I(e,{format:_(t)?"application/n-quads":void 0});const{format:i}=e;let{rdfParser:r}=e;if(i){if(r=r||n[i],!r)throw new c("Unknown input format.","jsonld.UnknownFormat",{format:i})}else r=()=>t;const s=yield r(t);return f(s,e)});return function(e,n){return t.apply(this,arguments)}}(),e.toRDF=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not convert to RDF, too few arguments.");let i;i=(n=I(n,{base:_(t)?t:"",skipExpansion:!1,contextResolver:new a({sharedCache:M})})).skipExpansion?t:yield e.expand(t,n);const r=g(i,n);if(n.format){if("application/n-quads"===n.format||"application/nquads"===n.format)return h.serialize(r);throw new c("Unknown output format.","jsonld.UnknownFormat",{format:n.format})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.createNodeMap=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not create node map, too few arguments.");n=I(n,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const i=yield e.expand(t,n);return A(i,n)});return function(e,n){return t.apply(this,arguments)}}(),e.merge=function(){var t=i(function*(t,n,i){if(arguments.length<1)throw new TypeError("Could not merge, too few arguments.");if(!y(t))throw new TypeError('Could not merge, "docs" must be an array.');n="function"==typeof n?null:n||null,i=I(i,{contextResolver:new a({sharedCache:M})});const r=yield Promise.all(t.map(t=>{const n=wt({},i);return e.expand(t,n)}));let s=!0;"mergeNodes"in i&&(s=i.mergeNodes);const c=i.issuer||new l("_:b"),u={"@default":{}};for(let e=0;ee._documentLoader,set:t=>e._documentLoader=t}),e.documentLoader=function(){var t=i(function*(t){throw new c("Could not retrieve a JSON-LD document from the URL. URL dereferencing not implemented.","jsonld.LoadDocumentError",{code:"loading document failed",url:t})});return function(e){return t.apply(this,arguments)}}(),e.get=function(){var t=i(function*(t,n){let i;i="function"==typeof n.documentLoader?n.documentLoader:e.documentLoader;const r=yield i(t);try{if(!r.document)throw new c("No remote document found at the given URL.","jsonld.NullRemoteDocument");_(r.document)&&(r.document=JSON.parse(r.document))}catch(s){throw new c("Could not retrieve a JSON-LD document from the URL.","jsonld.LoadDocumentError",{code:"loading document failed",cause:s,remoteDoc:r})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.processContext=function(){var t=i(function*(t,e,n){return n=I(n,{base:"",contextResolver:new a({sharedCache:M})}),null===e?S(n):(e=o.clone(e),v(e)&&"@context"in e||(e={"@context":e}),E({activeCtx:t,localCtx:e,options:n}))});return function(e,n,i){return t.apply(this,arguments)}}(),e.getContextValue=t("./context").getContextValue,e.documentLoaders={},e.useDocumentLoader=function(t){if(!(t in e.documentLoaders))throw new c('Unknown document loader type: "'+t+'"',"jsonld.UnknownDocumentLoader",{type:t});e.documentLoader=e.documentLoaders[t].apply(e,Array.prototype.slice.call(arguments,1))},e.registerRDFParser=function(t,e){n[t]=e},e.unregisterRDFParser=function(t){delete n[t]},e.registerRDFParser("application/n-quads",h.parse),e.registerRDFParser("application/nquads",h.parse),e.url=t("./url"),e.util=o,Object.assign(e,o),e.promises=e,e.RequestQueue=t("./RequestQueue"),e.JsonLdProcessor=t("./JsonLdProcessor")(e),s.setupGlobals(e),s.setupDocumentLoaders(e),e},I=function(){return M(function(){return I()})};M(I),e.exports=I},{"./ContextResolver":11,"./JsonLdError":12,"./JsonLdProcessor":13,"./NQuads":14,"./RequestQueue":15,"./compact":17,"./context":19,"./expand":21,"./flatten":22,"./frame":23,"./fromRdf":24,"./graphTypes":25,"./nodeMap":27,"./platform":28,"./toRdf":29,"./types":30,"./url":31,"./util":32,"lru-cache":33,"rdf-canonize":46}],27:[function(t,e,n){"use strict";const{isKeyword:i}=t("./context"),r=t("./graphTypes"),s=t("./types"),o=t("./util"),a=t("./JsonLdError"),l={};e.exports=l,l.createMergedNodeMap=(t,e)=>{const n=(e=e||{}).issuer||new o.IdentifierIssuer("_:b"),i={"@default":{}};return l.createNodeMap(t,i,"@default",n),l.mergeNodeMaps(i)},l.createNodeMap=(t,e,n,c,u,h)=>{if(s.isArray(t)){for(const i of t)l.createNodeMap(i,e,n,c,void 0,h);return}if(!s.isObject(t))return void(h&&h.push(t));if(r.isValue(t)){if("@type"in t){let e=t["@type"];0===e.indexOf("_:")&&(t["@type"]=e=c.getId(e))}return void(h&&h.push(t))}if(h&&r.isList(t)){const i=[];return l.createNodeMap(t["@list"],e,n,c,u,i),void h.push({"@list":i})}if("@type"in t){const e=t["@type"];for(const t of e)0===t.indexOf("_:")&&c.getId(t)}s.isUndefined(u)&&(u=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"]),h&&h.push({"@id":u});const d=e[n],p=d[u]=d[u]||{};p["@id"]=u;const f=Object.keys(t).sort();for(let s of f){if("@id"===s)continue;if("@reverse"===s){const i={"@id":u},s=t["@reverse"];for(const t in s){const a=s[t];for(const s of a){let a=s["@id"];r.isBlankNode(s)&&(a=c.getId(a)),l.createNodeMap(s,e,n,c,a),o.addValue(d[a],t,i,{propertyIsArray:!0,allowDuplicate:!1})}}continue}if("@graph"===s){u in e||(e[u]={}),l.createNodeMap(t[s],e,u,c);continue}if("@included"===s){l.createNodeMap(t[s],e,n,c);continue}if("@type"!==s&&i(s)){if("@index"===s&&s in p&&(t[s]!==p[s]||t[s]["@id"]!==p[s]["@id"]))throw new a("Invalid JSON-LD syntax; conflicting @index property detected.","jsonld.SyntaxError",{code:"conflicting indexes",subject:p});p[s]=t[s];continue}const h=t[s];if(0===s.indexOf("_:")&&(s=c.getId(s)),0!==h.length)for(let t of h)if("@type"===s&&(t=0===t.indexOf("_:")?c.getId(t):t),r.isSubject(t)||r.isSubjectReference(t)){if("@id"in t&&!t["@id"])continue;const i=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"];o.addValue(p,s,{"@id":i},{propertyIsArray:!0,allowDuplicate:!1}),l.createNodeMap(t,e,n,c,i)}else if(r.isValue(t))o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else if(r.isList(t)){const i=[];l.createNodeMap(t["@list"],e,n,c,u,i),t={"@list":i},o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1})}else l.createNodeMap(t,e,n,c,u),o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else o.addValue(p,s,[],{propertyIsArray:!0})}},l.mergeNodeMapGraphs=t=>{const e={};for(const n of Object.keys(t).sort())for(const r of Object.keys(t[n]).sort()){const s=t[n][r];r in e||(e[r]={"@id":r});const a=e[r];for(const t of Object.keys(s).sort())if(i(t)&&"@type"!==t)a[t]=o.clone(s[t]);else for(const e of s[t])o.addValue(a,t,o.clone(e),{propertyIsArray:!0,allowDuplicate:!1})}return e},l.mergeNodeMaps=t=>{const e=t["@default"],n=Object.keys(t).sort();for(const i of n){if("@default"===i)continue;const n=t[i];let s=e[i];s?"@graph"in s||(s["@graph"]=[]):e[i]=s={"@id":i,"@graph":[]};const o=s["@graph"];for(const t of Object.keys(n).sort()){const e=n[t];r.isSubjectReference(e)||o.push(e)}}return e}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./util":32}],28:[function(t,e,n){"use strict";const i=t("./documentLoaders/xhr"),r={};e.exports=r,r.setupDocumentLoaders=function(t){"undefined"!=typeof XMLHttpRequest&&(t.documentLoaders.xhr=i,t.useDocumentLoader("xhr"))},r.setupGlobals=function(t){void 0===globalThis.JsonLdProcessor&&Object.defineProperty(globalThis,"JsonLdProcessor",{writable:!0,enumerable:!1,configurable:!0,value:t.JsonLdProcessor})}},{"./documentLoaders/xhr":20}],29:[function(t,e,n){"use strict";const{createNodeMap:i}=t("./nodeMap"),{isKeyword:r}=t("./context"),s=t("./graphTypes"),o=t("canonicalize"),a=t("./types"),l=t("./util"),{RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,RDF_LANGSTRING:f,XSD_BOOLEAN:g,XSD_DOUBLE:m,XSD_INTEGER:b,XSD_STRING:y}=t("./constants"),{isAbsolute:v}=t("./url"),_={};function w(t,e,n,i,s){const o=Object.keys(e).sort();for(const a of o){const o=e[a],l=Object.keys(o).sort();for(let e of l){const l=o[e];if("@type"===e)e=d;else if(r(e))continue;for(const r of l){const o={termType:a.startsWith("_:")?"BlankNode":"NamedNode",value:a};if(!v(a))continue;const l={termType:e.startsWith("_:")?"BlankNode":"NamedNode",value:e};if(!v(e)||"BlankNode"===l.termType&&!s.produceGeneralizedRdf)continue;const c=x(r,i,t,n,s.rdfDirection);c&&t.push({subject:o,predicate:l,object:c,graph:n})}}}}function x(t,e,n,i,r){const l={};if(s.isValue(t)){l.termType="Literal",l.value=void 0,l.datatype={termType:"NamedNode"};let e=t["@value"];const n=t["@type"]||null;"@json"===n?(l.value=o(e),l.datatype.value=p):a.isBoolean(e)?(l.value=e.toString(),l.datatype.value=n||g):a.isDouble(e)||n===m?(a.isDouble(e)||(e=parseFloat(e)),l.value=e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),l.datatype.value=n||m):a.isNumber(e)?(l.value=e.toFixed(0),l.datatype.value=n||b):"i18n-datatype"===r&&"@direction"in t?(l.datatype.value="https://www.w3.org/ns/i18n#"+(t["@language"]||"")+`_${t["@direction"]}`,l.value=e):"@language"in t?(l.value=e,l.datatype.value=n||f,l.language=t["@language"]):(l.value=e,l.datatype.value=n||y)}else if(s.isList(t)){const s=function(t,e,n,i,r){const s={termType:"NamedNode",value:c},o={termType:"NamedNode",value:u},a={termType:"NamedNode",value:h},l=t.pop(),d=l?{termType:"BlankNode",value:e.getId()}:a;let p=d;for(const c of t){const t=x(c,e,n,i,r),a={termType:"BlankNode",value:e.getId()};n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i}),p=a}if(l){const t=x(l,e,n,i,r);n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i})}return d}(t["@list"],e,n,i,r);l.termType=s.termType,l.value=s.value}else{const e=a.isObject(t)?t["@id"]:t;l.termType=e.startsWith("_:")?"BlankNode":"NamedNode",l.value=e}return"NamedNode"!==l.termType||v(l.value)?l:null}e.exports=_,_.toRDF=(t,e)=>{const n=new l.IdentifierIssuer("_:b"),r={"@default":{}};i(t,r,"@default",n);const s=[],o=Object.keys(r).sort();for(const i of o){let t;if("@default"===i)t={termType:"DefaultGraph",value:""};else{if(!v(i))continue;t=i.startsWith("_:")?{termType:"BlankNode"}:{termType:"NamedNode"},t.value=i}w(s,r[i],t,n,e)}return s}},{"./constants":18,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32,canonicalize:7}],30:[function(t,e,n){"use strict";const i={};e.exports=i,i.isArray=Array.isArray,i.isBoolean=t=>"boolean"==typeof t||"[object Boolean]"===Object.prototype.toString.call(t),i.isDouble=t=>i.isNumber(t)&&(-1!==String(t).indexOf(".")||Math.abs(t)>=1e21),i.isEmptyObject=t=>i.isObject(t)&&0===Object.keys(t).length,i.isNumber=t=>"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t),i.isNumeric=t=>!isNaN(parseFloat(t))&&isFinite(t),i.isObject=t=>"[object Object]"===Object.prototype.toString.call(t),i.isString=t=>"string"==typeof t||"[object String]"===Object.prototype.toString.call(t),i.isUndefined=t=>void 0===t},{}],31:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.parsers={simple:{keys:["href","scheme","authority","path","query","fragment"],regex:/^(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/},full:{keys:["href","protocol","scheme","authority","auth","user","password","hostname","port","path","directory","file","query","fragment"],regex:/^(([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?(?:(((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/}},r.parse=(t,e)=>{const n={},i=r.parsers[e||"full"],s=i.regex.exec(t);let o=i.keys.length;for(;o--;)n[i.keys[o]]=void 0===s[o]?null:s[o];return("https"===n.scheme&&"443"===n.port||"http"===n.scheme&&"80"===n.port)&&(n.href=n.href.replace(":"+n.port,""),n.authority=n.authority.replace(":"+n.port,""),n.port=null),n.normalizedPath=r.removeDotSegments(n.path),n},r.prependBase=(t,e)=>{if(null===t||r.isAbsolute(e))return e;(!t||i.isString(t))&&(t=r.parse(t||""));const n=r.parse(e),s={protocol:t.protocol||""};if(null!==n.authority)s.authority=n.authority,s.path=n.path,s.query=n.query;else if(s.authority=t.authority,""===n.path)s.path=t.path,s.query=null!==n.query?n.query:t.query;else{if(0===n.path.indexOf("/"))s.path=n.path;else{let e=t.path;e=e.substr(0,e.lastIndexOf("/")+1),(e.length>0||t.authority)&&"/"!==e.substr(-1)&&(e+="/"),e+=n.path,s.path=e}s.query=n.query}""!==n.path&&(s.path=r.removeDotSegments(s.path));let o=s.protocol;return null!==s.authority&&(o+="//"+s.authority),o+=s.path,null!==s.query&&(o+="?"+s.query),null!==n.fragment&&(o+="#"+n.fragment),""===o&&(o="./"),o},r.removeBase=(t,e)=>{if(null===t)return e;(!t||i.isString(t))&&(t=r.parse(t||""));let n="";if(""!==t.href?n+=(t.protocol||"")+"//"+(t.authority||""):e.indexOf("//")&&(n+="//"),0!==e.indexOf(n))return e;const s=r.parse(e.substr(n.length)),o=t.normalizedPath.split("/"),a=s.normalizedPath.split("/"),l=s.fragment||s.query?0:1;for(;o.length>0&&a.length>l&&o[0]===a[0];)o.shift(),a.shift();let c="";if(o.length>0){o.pop();for(let t=0;t{if(0===t.length)return"";const e=t.split("/"),n=[];for(;e.length>0;){const t=e.shift(),i=0===e.length;"."!==t?".."!==t?n.push(t):(n.pop(),i&&n.push("")):i&&n.push("")}return"/"===t[0]&&n.length>0&&""!==n[0]&&n.unshift(""),1===n.length&&""===n[0]?"/":n.join("/")};const s=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^\s]*$/;r.isAbsolute=t=>i.isString(t)&&s.test(t),r.isRelative=t=>i.isString(t)},{"./types":30}],32:[function(t,e,n){"use strict";const i=t("./graphTypes"),r=t("./types"),s=t("rdf-canonize").IdentifierIssuer,o=t("./JsonLdError"),a=/(?:<[^>]*?>|"[^"]*?"|[^,])+/g,l=/\s*<([^>]*?)>\s*(?:;\s*(.*))?/,c=/(.*?)=(?:(?:"([^"]*?)")|([^"]*?))\s*(?:(?:;\s*)|$)/g,u={accept:"application/ld+json, application/json"},h={};function d(t,e){if(r.isArray(e))for(let n=0;n{if(Object.keys(t).some(t=>"accept"===t.toLowerCase()))throw new RangeError('Accept header may not be specified; only "'+u.accept+'" is supported.');return Object.assign({Accept:u.accept},t)},h.parseLinkHeader=t=>{const e={},n=t.match(a);for(let i=0;i{if(!(r.isString(t)||r.isArray(t)&&t.every(t=>r.isString(t)))){if(e&&r.isObject(t))switch(Object.keys(t).length){case 0:return;case 1:if("@default"in t&&h.asArray(t["@default"]).every(t=>r.isString(t)))return}throw new o('Invalid JSON-LD syntax; "@type" value must a string, an array of strings, an empty object, or a default object.',"jsonld.SyntaxError",{code:"invalid type value",value:t})}},h.hasProperty=(t,e)=>{if(t.hasOwnProperty(e)){const n=t[e];return!r.isArray(n)||n.length>0}return!1},h.hasValue=(t,e,n)=>{if(h.hasProperty(t,e)){let s=t[e];const o=i.isList(s);if(r.isArray(s)||o){o&&(s=s["@list"]);for(let t=0;t{if("propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1),"valueIsArray"in i||(i.valueIsArray=!1),"allowDuplicate"in i||(i.allowDuplicate=!0),"prependValue"in i||(i.prependValue=!1),i.valueIsArray)t[e]=n;else if(r.isArray(n)){0===n.length&&i.propertyIsArray&&!t.hasOwnProperty(e)&&(t[e]=[]),i.prependValue&&(n=n.concat(t[e]),t[e]=[]);for(let r=0;r[].concat(t[e]||[]),h.removeProperty=(t,e)=>{delete t[e]},h.removeValue=(t,e,n,i)=>{"propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1);const r=h.getValues(t,e).filter(t=>!h.compareValues(t,n));0===r.length?h.removeProperty(t,e):t[e]=1!==r.length||i.propertyIsArray?r:r[0]},h.relabelBlankNodes=(t,e)=>d((e=e||{}).issuer||new s("_:b"),t),h.compareValues=(t,e)=>!!(t===e||i.isValue(t)&&i.isValue(e)&&t["@value"]===e["@value"]&&t["@type"]===e["@type"]&&t["@language"]===e["@language"]&&t["@index"]===e["@index"])||!!(r.isObject(t)&&"@id"in t&&r.isObject(e)&&"@id"in e)&&t["@id"]===e["@id"],h.compareShortestLeast=(t,e)=>t.length1;const g=(t,e,n)=>{const i=t[d].get(e);if(i){const e=i.value;if(m(t,e)){if(y(t,i),!t[a])return}else n&&(t[p]&&(i.value.now=Date.now()),t[h].unshiftNode(i));return e.value}},m=(t,e)=>{if(!e||!e.maxAge&&!t[l])return!1;const n=Date.now()-e.now;return e.maxAge?n>e.maxAge:t[l]&&n>t[l]},b=t=>{if(t[s]>t[r])for(let e=t[h].tail;t[s]>t[r]&&null!==e;){const n=e.prev;y(t,e),e=n}},y=(t,e)=>{if(e){const n=e.value;t[c]&&t[c](n.key,n.value),t[s]-=n.length,t[d].delete(n.key),t[h].removeNode(e)}};class v{constructor(t,e,n,i,r){this.key=t,this.value=e,this.length=n,this.now=i,this.maxAge=r||0}}const _=(t,e,n,i)=>{let r=n.value;m(t,r)&&(y(t,n),t[a]||(r=void 0)),r&&e.call(i,r.value,r.key,t)};e.exports=class{constructor(t){if("number"==typeof t&&(t={max:t}),t||(t={}),t.max&&("number"!=typeof t.max||t.max<0))throw new TypeError("max must be a non-negative number");this[r]=t.max||1/0;const e=t.length||f;if(this[o]="function"!=typeof e?f:e,this[a]=t.stale||!1,t.maxAge&&"number"!=typeof t.maxAge)throw new TypeError("maxAge must be a number");this[l]=t.maxAge||0,this[c]=t.dispose,this[u]=t.noDisposeOnSet||!1,this[p]=t.updateAgeOnGet||!1,this.reset()}set max(t){if("number"!=typeof t||t<0)throw new TypeError("max must be a non-negative number");this[r]=t||1/0,b(this)}get max(){return this[r]}set allowStale(t){this[a]=!!t}get allowStale(){return this[a]}set maxAge(t){if("number"!=typeof t)throw new TypeError("maxAge must be a non-negative number");this[l]=t,b(this)}get maxAge(){return this[l]}set lengthCalculator(t){"function"!=typeof t&&(t=f),t!==this[o]&&(this[o]=t,this[s]=0,this[h].forEach(t=>{t.length=this[o](t.value,t.key),this[s]+=t.length})),b(this)}get lengthCalculator(){return this[o]}get length(){return this[s]}get itemCount(){return this[h].length}rforEach(t,e){e=e||this;for(let n=this[h].tail;null!==n;){const i=n.prev;_(this,t,n,e),n=i}}forEach(t,e){e=e||this;for(let n=this[h].head;null!==n;){const i=n.next;_(this,t,n,e),n=i}}keys(){return this[h].toArray().map(t=>t.key)}values(){return this[h].toArray().map(t=>t.value)}reset(){this[c]&&this[h]&&this[h].length&&this[h].forEach(t=>this[c](t.key,t.value)),this[d]=new Map,this[h]=new i,this[s]=0}dump(){return this[h].map(t=>!m(this,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}).toArray().filter(t=>t)}dumpLru(){return this[h]}set(t,e,n){if((n=n||this[l])&&"number"!=typeof n)throw new TypeError("maxAge must be a number");const i=n?Date.now():0,a=this[o](e,t);if(this[d].has(t)){if(a>this[r])return y(this,this[d].get(t)),!1;const o=this[d].get(t).value;return this[c]&&(this[u]||this[c](t,o.value)),o.now=i,o.maxAge=n,o.value=e,this[s]+=a-o.length,o.length=a,this.get(t),b(this),!0}const p=new v(t,e,a,i,n);return p.length>this[r]?(this[c]&&this[c](t,e),!1):(this[s]+=p.length,this[h].unshift(p),this[d].set(t,this[h].head),b(this),!0)}has(t){if(!this[d].has(t))return!1;const e=this[d].get(t).value;return!m(this,e)}get(t){return g(this,t,!0)}peek(t){return g(this,t,!1)}pop(){const t=this[h].tail;return t?(y(this,t),t.value):null}del(t){y(this,this[d].get(t))}load(t){this.reset();const e=Date.now();for(let n=t.length-1;n>=0;n--){const i=t[n],r=i.e||0;if(0===r)this.set(i.k,i.v);else{const t=r-e;t>0&&this.set(i.k,i.v,t)}}}prune(){this[d].forEach((t,e)=>g(this,e,!1))}}},{yallist:92}],34:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#",s="http://www.w3.org/2000/10/swap/";n.default={xsd:{decimal:`${r}decimal`,boolean:`${r}boolean`,double:`${r}double`,integer:`${r}integer`,string:`${r}string`},rdf:{type:`${i}type`,nil:`${i}nil`,first:`${i}first`,rest:`${i}rest`,langString:`${i}langString`},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:`${s}reify#forSome`,forAll:`${s}reify#forAll`},log:{implies:`${s}log#implies`}}},{}],35:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.termFromId=function t(e,n){if(n=n||d,!e)return n.defaultGraph();switch(e[0]){case"?":return n.variable(e.substr(1));case"_":return n.blankNode(e.substr(2));case'"':if(n===d)return new g(e);if('"'===e[e.length-1])return n.literal(e.substr(1,e.length-2));const i=e.lastIndexOf('"',e.length-1);return n.literal(e.substr(1,i-1),"@"===e[i+1]?e.substr(i+2):n.namedNode(e.substr(i+3)));case"<":const r=h.exec(e);return n.quad(t(w(r[1]),n),t(w(r[2]),n),t(w(r[3]),n),r[4]&&t(w(r[4]),n));default:return n.namedNode(e)}},n.termToId=function t(e){if("string"==typeof e)return e;if(e instanceof p&&"Quad"!==e.termType)return e.id;if(!e)return l.id;switch(e.termType){case"NamedNode":return e.value;case"BlankNode":return`_:${e.value}`;case"Variable":return`?${e.value}`;case"DefaultGraph":return"";case"Literal":return`"${e.value}"${e.language?`@${e.language}`:e.datatype&&e.datatype.value!==a.string?`^^${e.datatype.value}`:""}`;case"Quad":return`<<${_(t(e.subject))} ${_(t(e.predicate))} ${_(t(e.object))}${(0,s.isDefaultGraph)(e.graph)?"":` ${t(e.graph)}`}>>`;default:throw new Error(`Unexpected termType: ${e.termType}`)}},n.escapeQuotes=_,n.unescapeQuotes=w,n.Triple=n.Quad=n.DefaultGraph=n.Variable=n.BlankNode=n.Literal=n.NamedNode=n.Term=n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=t("./N3Util");const{rdf:o,xsd:a}=r.default;let l,c=0;const u=/^"(.*".*)(?="[^"]*$)/,h=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,d={namedNode:function(t){return new f(t)},blankNode:function(t){return new m(t||"n3-"+c++)},variable:function(t){return new b(t)},literal:function(t,e){if("string"==typeof e)return new g(`"${t}"@${e.toLowerCase()}`);let n=e?e.value:"";return""===n&&("boolean"==typeof t?n=a.boolean:"number"==typeof t&&(Number.isFinite(t)?n=Number.isInteger(t)?a.integer:a.double:(n=a.double,Number.isNaN(t)||(t=t>0?"INF":"-INF")))),new g(""===n||n===a.string?`"${t}"`:`"${t}"^^${n}`)},defaultGraph:function(){return l},quad:x,triple:x};n.default=d;class p{constructor(t){this.id=t}get value(){return this.id}equals(t){return t instanceof p?this.id===t.id:!!t&&this.termType===t.termType&&this.value===t.value}toJSON(){return{termType:this.termType,value:this.value}}}n.Term=p;class f extends p{get termType(){return"NamedNode"}}n.NamedNode=f;class g extends p{get termType(){return"Literal"}get value(){return this.id.substring(1,this.id.lastIndexOf('"'))}get language(){const t=this.id;let e=t.lastIndexOf('"')+1;return e`"${e.replace(/"/g,'""')}`)}function w(t){return t.replace(u,(t,e)=>`"${e.replace(/""/g,'"')}`)}function x(t,e,n,i){return new v(t,e,n,i)}n.Triple=n.Quad=v},{"./IRIs":34,"./N3Util":41}],36:[function(t,e,n){(function(e){(function(){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=s(t("./IRIs")),r=s(t("queue-microtask"));function s(t){return t&&t.__esModule?t:{default:t}}const{xsd:o}=i.default,a=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\([^])/g,l={"\\":"\\","'":"'",'"':'"',n:"\n",r:"\r",t:"\t",f:"\f",b:"\b",_:"_","~":"~",".":".","-":"-","!":"!",$:"$","&":"&","(":"(",")":")","*":"*","+":"+",",":",",";":";","=":"=","/":"/","?":"?","#":"#","@":"@","%":"%"},c=/[\x00-\x20<>\\"\{\}\|\^\`]/,u={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},h=/$0^/;n.default=class{constructor(t){if(this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,this._lineMode=!!(t=t||{}).lineMode){this._n3Mode=!1;for(const t in this)!(t in u)&&this[t]instanceof RegExp&&(this[t]=h)}else this._n3Mode=!1!==t.n3;this._comments=!!t.comments,this._literalClosingPos=0}_tokenizeToEnd(t,e){let n=this._input;const i=this._comments;for(;;){let s,a;for(;s=this._newline.exec(n);)i&&(a=this._comment.exec(s[0]))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),n=n.substr(s[0].length,n.length),this._line++;if(!s&&(s=this._whitespace.exec(n))&&(n=n.substr(s[0].length,n.length)),this._endOfFile.test(n))return e&&(i&&(a=this._comment.exec(n))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),t(n=null,{line:this._line,type:"eof",value:"",prefix:""})),this._input=n;const l=this._line,u=n[0];let h="",d="",p="",f=null,g=0,m=!1;switch(u){case"^":if(n.length<3)break;if("^"!==n[1]){this._n3Mode&&(g=1,h="^");break}if(this._previousMarker="^^",n=n.substr(2),"<"!==n[0]){m=!0;break}case"<":if(f=this._unescapedIri.exec(n))h="IRI",d=f[1];else if(f=this._iri.exec(n)){if(d=this._unescape(f[1]),null===d||c.test(d))return r(this);h="IRI"}else n.length>1&&"<"===n[1]?(h="<<",g=2):this._n3Mode&&n.length>1&&"="===n[1]&&(h="inverse",g=2,d=">");break;case">":n.length>1&&">"===n[1]&&(h=">>",g=2);break;case"_":((f=this._blank.exec(n))||e&&(f=this._blank.exec(`${n} `)))&&(h="blank",p="_",d=f[1]);break;case'"':if(f=this._simpleQuotedString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){if(f=this._simpleApostropheString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(f=this._variable.exec(n))&&(h="var",d=f[0]);break;case"@":"literal"===this._previousMarker&&(f=this._langcode.exec(n))?(h="langcode",d=f[1]):(f=this._keyword.exec(n))&&(h=f[0]);break;case".":if(1===n.length?e:n[1]<"0"||n[1]>"9"){h=".",g=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(f=this._number.exec(n)||e&&(f=this._number.exec(`${n} `)))&&(h="literal",d=f[0],p="string"==typeof f[1]?o.double:"string"==typeof f[2]?o.decimal:o.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(f=this._sparqlKeyword.exec(n))?h=f[0].toUpperCase():m=!0;break;case"f":case"t":(f=this._boolean.exec(n))?(h="literal",d=f[0],p=o.boolean):m=!0;break;case"a":(f=this._shortPredicates.exec(n))?(h="abbreviation",d="a"):m=!0;break;case"=":this._n3Mode&&n.length>1&&(h="abbreviation",">"!==n[1]?(g=1,d="="):(g=2,d=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"{":case"}":this._lineMode||(g=1,h=u);break;default:m=!0}if(m&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(f=this._prefix.exec(n))?((f=this._prefixed.exec(n))||e&&(f=this._prefixed.exec(`${n} `)))&&(h="prefixed",p=f[1]||"",d=this._unescape(f[2])):(h="prefix",d=f[1]||"")),"^^"===this._previousMarker)switch(h){case"prefixed":h="type";break;case"IRI":h="typeIRI";break;default:h=""}if(!h)return e||!/^'''|^"""/.test(n)&&/\n|\r/.test(n)?r(this):this._input=n;const b={line:l,type:h,value:d,prefix:p};t(null,b),this.previousToken=b,this._previousMarker=h,n=n.substr(g||f[0].length,n.length)}function r(e){t(e._syntaxError(/^\S*/.exec(n)[0]))}}_unescape(t){let e=!1;const n=t.replace(a,(t,n,i,r)=>{if("string"==typeof n)return String.fromCharCode(Number.parseInt(n,16));if("string"==typeof i){let t=Number.parseInt(i,16);return t<=65535?String.fromCharCode(Number.parseInt(i,16)):String.fromCharCode(55296+((t-=65536)>>10),56320+(1023&t))}return r in l?l[r]:(e=!0,"")});return e?null:n}_parseLiteral(t){if(t.length>=3){const e=t.match(/^(?:"""|"|'''|'|)/)[0],n=e.length;let i=Math.max(this._literalClosingPos,n);for(;(i=t.indexOf(e,i))>0;){let e=0;for(;"\\"===t[i-e-1];)e++;if(e%2==0){const e=t.substring(n,i),r=e.split(/\r\n|\r|\n/).length-1,s=i+n;if(1===n&&0!==r||3===n&&this._lineMode)break;return this._line+=r,{value:this._unescape(e),matchLength:s}}i++}this._literalClosingPos=t.length-n+1}return{value:"",matchLength:0}}_syntaxError(t){this._input=null;const e=new Error(`Unexpected "${t}" on line ${this._line}.`);return e.context={token:void 0,line:this._line,previousToken:this.previousToken},e}_readStartingBom(t){return t.startsWith("\ufeff")?t.substr(1):t}tokenize(t,n){if(this._line=1,"string"==typeof t){if(this._input=this._readStartingBom(t),"function"!=typeof n){const t=[];let e;if(this._tokenizeToEnd((n,i)=>n?e=n:t.push(i),!0),e)throw e;return t}(0,r.default)(()=>this._tokenizeToEnd(n,!0))}else this._pendingBuffer=null,"function"==typeof t.setEncoding&&t.setEncoding("utf8"),t.on("data",t=>{null!==this._input&&0!==t.length&&(this._pendingBuffer&&(t=e.concat([this._pendingBuffer,t]),this._pendingBuffer=null),128&t[t.length-1]?this._pendingBuffer=t:(void 0===this._input?this._input=this._readStartingBom("string"==typeof t?t:t.toString()):this._input+=t,this._tokenizeToEnd(n,!1)))}),t.on("end",()=>{"string"==typeof this._input&&this._tokenizeToEnd(n,!0)}),t.on("error",n)}}}).call(this)}).call(this,t("buffer").Buffer)},{"./IRIs":34,buffer:6,"queue-microtask":45}],37:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=o(t("./N3Lexer")),r=o(t("./N3DataFactory")),s=o(t("./IRIs"));function o(t){return t&&t.__esModule?t:{default:t}}let a=0;class l{constructor(t){this._contextStack=[],this._graph=null,this._setBase((t=t||{}).baseIRI),t.factory&&u(this,t.factory);const e="string"==typeof t.format?t.format.match(/\w*$/)[0].toLowerCase():"",n=/turtle/.test(e),r=/trig/.test(e),s=/triple/.test(e),o=/quad/.test(e),a=this._n3Mode=/n3/.test(e),l=s||o;(this._supportsNamedGraphs=!(n||a))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(n||r||s||a),this._supportsRDFStar=""===e||/star|\*$/.test(e),l&&(this._resolveRelativeIRI=t=>null),this._blankNodePrefix="string"!=typeof t.blankNodePrefix?"":t.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=t.lexer||new i.default({lineMode:l,n3:a}),this._explicitQuantifiers=!!t.explicitQuantifiers}static _resetBlankNodePrefix(){a=0}_setBase(t){if(t){const e=t.indexOf("#");e>=0&&(t=t.substr(0,e)),this._base=t,this._basePath=t.indexOf("/")<0?t:t.replace(/[^\/?]*(?:\?.*)?$/,""),t=t.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=t[0],this._baseScheme=t[1]}else this._base="",this._basePath=""}_saveContext(t,e,n,i,r){const s=this._n3Mode;this._contextStack.push({subject:n,predicate:i,object:r,graph:e,type:t,inverse:!!s&&this._inversePredicate,blankPrefix:s?this._prefixes._:"",quantified:s?this._quantified:null}),s&&(this._inversePredicate=!1,this._prefixes._=this._graph?`${this._graph.id.substr(2)}.`:".",this._quantified=Object.create(this._quantified))}_restoreContext(){const t=this._contextStack.pop(),e=this._n3Mode;this._subject=t.subject,this._predicate=t.predicate,this._object=t.object,this._graph=t.graph,e&&(this._inversePredicate=t.inverse,this._prefixes._=t.blankPrefix,this._quantified=t.quantified)}_readInTopContext(t){switch(t.type){case"eof":return null!==this._graph?this._error("Unclosed graph",t):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(t)}}_readEntity(t,e){let n;switch(t.type){case"IRI":case"typeIRI":const e=this._resolveIRI(t.value);if(null===e)return this._error("Invalid IRI",t);n=this._namedNode(e);break;case"type":case"prefixed":const i=this._prefixes[t.prefix];if(void 0===i)return this._error(`Undefined prefix "${t.prefix}:"`,t);n=this._namedNode(i+t.value);break;case"blank":n=this._blankNode(this._prefixes[t.prefix]+t.value);break;case"var":n=this._variable(t.value.substr(1));break;default:return this._error(`Expected entity but got ${t.type}`,t)}return!e&&this._n3Mode&&n.id in this._quantified&&(n=this._quantified[n.id]),n}_readSubject(t){switch(this._predicate=null,t.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",t);case"}":return this._readPunctuation(t);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',t);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',t);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",t);if(0===t.prefix.length)return this._literalValue=t.value,this._completeSubjectLiteral;this._subject=this._literal(t.value,this._namedNode(t.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._subject=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}_readPredicate(t){const e=t.type;switch(e){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[t.value];break;case".":case"]":case"}":return null===this._predicate?this._error(`Unexpected ${e}`,t):(this._subject=null,"]"===e?this._readBlankNodeTail(t):this._readPunctuation(t));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",t);case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",t);default:if(void 0===(this._predicate=this._readEntity(t)))return}return this._readObject}_readObject(t){switch(t.type){case"literal":if(0===t.prefix.length)return this._literalValue=t.value,this._readDataTypeOrLang;this._object=this._literal(t.value,this._namedNode(t.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._object=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}_readPredicateOrNamedGraph(t){return"{"===t.type?this._readGraph(t):this._readPredicate(t)}_readGraph(t){return"{"!==t.type?this._error(`Expected graph but got ${t.type}`,t):(this._graph=this._subject,this._subject=null,this._readSubject)}_readBlankNodeHead(t){return"]"===t.type?(this._subject=null,this._readBlankNodeTail(t)):(this._predicate=null,this._readPredicate(t))}_readBlankNodeTail(t){if("]"!==t.type)return this._readBlankNodePunctuation(t);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);const e=null===this._predicate;return this._restoreContext(),null===this._object?e?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank:this._getContextEndReader()}_readPredicateAfterBlank(t){switch(t.type){case".":case"}":return this._subject=null,this._readPunctuation(t);default:return this._readPredicate(t)}}_readListItem(t){let e=null,n=null,i=this._readListItem;const r=this._subject,s=this._contextStack,o=s[s.length-1];switch(t.type){case"[":this._saveContext("blank",this._graph,n=this._blankNode(),this.RDF_FIRST,this._subject=e=this._blankNode()),i=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,n=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext(),0!==s.length&&"list"===s[s.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(i=this._readPredicate,this._subject===this.RDF_NIL)return i}else if(i=this._getContextEndReader(),this._object===this.RDF_NIL)return i;n=this.RDF_NIL;break;case"literal":0===t.prefix.length?(this._literalValue=t.value,i=this._readListItemDataTypeOrLang):(e=this._literal(t.value,this._namedNode(t.prefix)),i=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);default:if(void 0===(e=this._readEntity(t)))return}if(null===n&&(this._subject=n=this._blankNode()),null===r?null===o.predicate?o.subject=n:o.object=n:this._emit(r,this.RDF_REST,n,this._graph),null!==e){if(this._n3Mode&&("IRI"===t.type||"prefixed"===t.type))return this._saveContext("item",this._graph,n,this.RDF_FIRST,e),this._subject=e,this._predicate=null,this._getPathReader(this._readListItem);this._emit(n,this.RDF_FIRST,e,this._graph)}return i}_readDataTypeOrLang(t){return this._completeObjectLiteral(t,!1)}_readListItemDataTypeOrLang(t){return this._completeObjectLiteral(t,!0)}_completeLiteral(t){let e=this._literal(this._literalValue);switch(t.type){case"type":case"typeIRI":const n=this._readEntity(t);if(void 0===n)return;e=this._literal(this._literalValue,n),t=null;break;case"langcode":e=this._literal(this._literalValue,t.value),t=null}return{token:t,literal:e}}_completeSubjectLiteral(t){return this._subject=this._completeLiteral(t).literal,this._readPredicateOrNamedGraph}_completeObjectLiteral(t,e){const n=this._completeLiteral(t);if(n)return this._object=n.literal,e&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===n.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(n.token))}_readFormulaTail(t){return"}"!==t.type?this._readPunctuation(t):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext(),null===this._object?this._readPredicate:this._getContextEndReader())}_readPunctuation(t){let e,n=this._graph;const i=this._subject,r=this._inversePredicate;switch(t.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",t);if(this._n3Mode)return this._readFormulaTail(t);this._graph=null;case".":this._subject=null,e=this._contextStack.length?this._readSubject:this._readInTopContext,r&&(this._inversePredicate=!1);break;case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(n=this._readEntity(t))){e=this._readQuadPunctuation;break}return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}if(null!==i){const t=this._predicate,e=this._object;r?this._emit(e,t,i,n):this._emit(i,t,e,n)}return e}_readBlankNodePunctuation(t){let e;switch(t.type){case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}return this._emit(this._subject,this._predicate,this._object,this._graph),e}_readQuadPunctuation(t){return"."!==t.type?this._error("Expected dot to follow quad",t):this._readInTopContext}_readPrefix(t){return"prefix"!==t.type?this._error("Expected prefix to follow @prefix",t):(this._prefix=t.value,this._readPrefixIRI)}_readPrefixIRI(t){if("IRI"!==t.type)return this._error(`Expected IRI to follow prefix "${this._prefix}:"`,t);const e=this._readEntity(t);return this._prefixes[this._prefix]=e.value,this._prefixCallback(this._prefix,e),this._readDeclarationPunctuation}_readBaseIRI(t){const e="IRI"===t.type&&this._resolveIRI(t.value);return e?(this._setBase(e),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",t)}_readNamedGraphLabel(t){switch(t.type){case"IRI":case"blank":case"prefixed":return this._readSubject(t),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",t)}}_readNamedGraphBlankLabel(t){return"]"!==t.type?this._error("Invalid graph label",t):(this._subject=this._blankNode(),this._readGraph)}_readDeclarationPunctuation(t){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(t)):"."!==t.type?this._error("Expected declaration to end with a dot",t):this._readInTopContext}_readQuantifierList(t){let e;switch(t.type){case"IRI":case"prefixed":if(void 0!==(e=this._readEntity(t,!0)))break;default:return this._error(`Unexpected ${t.type}`,t)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,e,this.QUANTIFIERS_GRAPH)):this._quantified[e.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}_readQuantifierPunctuation(t){return","===t.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(t))}_getPathReader(t){return this._afterPath=t,this._readPath}_readPath(t){switch(t.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:const e=this._contextStack,n=e.length&&e[e.length-1];if(n&&"item"===n.type){const t=this._subject;this._restoreContext(),this._emit(this._subject,this.RDF_FIRST,t,this._graph)}return this._afterPath(t)}}_readForwardPath(t){let e,n;const i=this._blankNode();if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(e=this._subject,this._subject=i):(e=this._object,this._object=i),this._emit(e,n,i,this._graph),this._readPath}_readBackwardPath(t){const e=this._blankNode();let n,i;if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(i=this._subject,this._subject=e):(i=this._object,this._object=e),this._emit(e,n,i,this._graph),this._readPath}_readRDFStarTailOrGraph(t){return">>"!==t.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(t))?this._readRDFStarTail:this._error(`Expected >> to follow "${this._object.id}"`,t):this._readRDFStarTail(t)}_readRDFStarTail(t){if(">>"!==t.type)return this._error(`Expected >> but got ${t.type}`,t);const e=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext(),null===this._subject?(this._subject=e,this._readPredicate):(this._object=e,this._getContextEndReader())}_getContextEndReader(){const t=this._contextStack;if(!t.length)return this._readPunctuation;switch(t[t.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}_emit(t,e,n,i){this._callback(null,this._quad(t,e,n,i||this.DEFAULTGRAPH))}_error(t,e){const n=new Error(`${t} on line ${e.line}.`);n.context={token:e,line:e.line,previousToken:this._lexer.previousToken},this._callback(n),this._callback=c}_resolveIRI(t){return/^[a-z][a-z0-9+.-]*:/i.test(t)?t:this._resolveRelativeIRI(t)}_resolveRelativeIRI(t){if(!t.length)return this._base;switch(t[0]){case"#":return this._base+t;case"?":return this._base.replace(/(?:\?.*)?$/,t);case"/":return("/"===t[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(t);default:return/^[^/:]*:/.test(t)?null:this._removeDotSegments(this._basePath+t)}}_removeDotSegments(t){if(!/(^|\/)\.\.?($|[/#?])/.test(t))return t;const e=t.length;let n="",i=-1,r=-1,s=0,o="/";for(;i=r&&(n=n.substr(0,s)),"/"!==o)return`${n}/${t.substr(i+1)}`;s=i+1}}}o=t[++i]}return n+t.substring(s)}parse(t,e,n){if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):`b${a++}_`,this._prefixCallback=n||c,this._inversePredicate=!1,this._quantified=Object.create(null),!e){const e=[];let n;if(this._callback=(t,i)=>{t?n=t:i&&e.push(i)},this._lexer.tokenize(t).every(t=>this._readCallback=this._readCallback(t)),n)throw n;return e}this._callback=e,this._lexer.tokenize(t,(t,e)=>{null!==t?(this._callback(t),this._callback=c):this._readCallback&&(this._readCallback=this._readCallback(e))})}}function c(){}function u(t,e){const n=e.namedNode;t._namedNode=n,t._blankNode=e.blankNode,t._literal=e.literal,t._variable=e.variable,t._quad=e.quad,t.DEFAULTGRAPH=e.defaultGraph(),t.RDF_FIRST=n(s.default.rdf.first),t.RDF_REST=n(s.default.rdf.rest),t.RDF_NIL=n(s.default.rdf.nil),t.N3_FORALL=n(s.default.r.forAll),t.N3_FORSOME=n(s.default.r.forSome),t.ABBREVIATIONS={a:n(s.default.rdf.type),"=":n(s.default.owl.sameAs),">":n(s.default.log.implies)},t.QUANTIFIERS_GRAPH=n("urn:n3:quantifiers")}n.default=l,u(l.prototype,r.default)},{"./IRIs":34,"./N3DataFactory":35,"./N3Lexer":36}],38:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),s=t("readable-stream"),o=(i=t("./IRIs"))&&i.__esModule?i:{default:i};function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}class l{constructor(t,e){this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,!e&&t&&!t[0]&&(e=t,t=null),this._factory=(e=e||{}).factory||r.default,t&&this.addQuads(t)}get size(){let t=this._size;if(null!==t)return t;t=0;const e=this._graphs;let n,i;for(const r in e)for(const s in n=e[r].subjects)for(const e in i=n[s])t+=Object.keys(i[e]).length;return this._size=t}_addToIndex(t,e,n,i){const r=t[e]||(t[e]={}),s=r[n]||(r[n]={}),o=i in s;return o||(s[i]=null),!o}_removeFromIndex(t,e,n,i){const r=t[e],s=r[n];delete s[i];for(const o in s)return;delete r[n];for(const o in r)return;delete t[e]}_findInIndex(t,e,n,i,s,o,a,l,c,u){let h,d,p;const f=!e+!n+!i>1?Object.keys(this._ids):this._entities;e&&((h=t,t={})[e]=h[e]);for(const g in t){const e=f[g];if(d=t[g]){n&&((h=d,d={})[n]=h[n]);for(const t in d){const n=f[t];if(p=d[t]){const t=i?i in p?[i]:[]:Object.keys(p);for(let i=0;i{n in e||(e[n]=!0,t((0,r.termFromId)(this._entities[n],this._factory)))}}add(t){return this.addQuad(t),this}addQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);let s=this._graphs[i];s||(s=this._graphs[i]={subjects:{},predicates:{},objects:{}},Object.freeze(s));const o=this._ids,a=this._entities;t=o[t]||(o[a[++this._id]=t]=this._id),e=o[e]||(o[a[++this._id]=e]=this._id),n=o[n]||(o[a[++this._id]=n]=this._id);const l=this._addToIndex(s.subjects,t,e,n);return this._addToIndex(s.predicates,e,n,t),this._addToIndex(s.objects,n,t,e),this._size=null,l}addQuads(t){for(let e=0;e{this.addQuad(t)}),t}removeQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);const s=this._ids,o=this._graphs;let a,l,c;if(!((t=s[t])&&(e=s[e])&&(n=s[n])&&(a=o[i])&&(l=a.subjects[t])&&(c=l[e])&&n in c))return!1;for(t in this._removeFromIndex(a.subjects,t,e,n),this._removeFromIndex(a.predicates,e,n,t),this._removeFromIndex(a.objects,n,t,e),null!==this._size&&this._size--,a.subjects)return!0;return delete o[i],!0}removeQuads(t){for(let e=0;e{this.removeQuad(t)}),t}removeMatches(t,e,n,i){const r=new s.Readable({objectMode:!0});return r._read=()=>{for(const s of this.getQuads(t,e,n,i))r.push(s);r.push(null)},this.remove(r)}deleteGraph(t){return this.removeMatches(null,null,null,t)}getQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=[],o=this._getGraphs(i),a=this._ids;let l,u,h,d;if(c(t)&&!(u=a[t])||c(e)&&!(h=a[e])||c(n)&&!(d=a[n]))return s;for(const r in o)(l=o[r])&&(u?d?this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,null,s):h?this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,null,s):d?this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,null,s));return s}match(t,e,n,i){return new u(this,t,e,n,i)}countQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._getGraphs(i),o=this._ids;let a,l,u,h,d=0;if(c(t)&&!(l=o[t])||c(e)&&!(u=o[e])||c(n)&&!(h=o[n]))return 0;for(const r in s)(a=s[r])&&(d+=t?n?this._countInIndex(a.objects,h,l,u):this._countInIndex(a.subjects,l,u,h):e?this._countInIndex(a.predicates,u,h,l):this._countInIndex(a.objects,h,l,u));return d}forEach(t,e,n,i,r){this.some(e=>(t(e),!1),e,n,i,r)}every(t,e,n,i,r){let s=!1;const o=!this.some(e=>(s=!0,!t(e)),e,n,i,r);return s&&o}some(t,e,n,i,s){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i),s=s&&(0,r.termToId)(s);const o=this._getGraphs(s),a=this._ids;let l,u,h,d;if(c(e)&&!(u=a[e])||c(n)&&!(h=a[n])||c(i)&&!(d=a[i]))return!1;for(const r in o)if(l=o[r])if(u){if(d){if(this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,t,null))return!0}else if(h){if(this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,t,null))return!0}else if(d){if(this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,t,null))return!0;return!1}getSubjects(t,e,n){const i=[];return this.forSubjects(t=>{i.push(t)},t,e,n),i}forSubjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.predicates,l,u,t):this._loopByKey1(a.subjects,l,t):u?this._loopByKey0(a.objects,u,t):this._loop(a.subjects,t))}getPredicates(t,e,n){const i=[];return this.forPredicates(t=>{i.push(t)},t,e,n),i}forPredicates(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.objects,u,l,t):this._loopByKey0(a.subjects,l,t):u?this._loopByKey1(a.predicates,u,t):this._loop(a.predicates,t))}getObjects(t,e,n){const i=[];return this.forObjects(t=>{i.push(t)},t,e,n),i}forObjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.subjects,l,u,t):this._loopByKey1(a.objects,l,t):u?this._loopByKey0(a.predicates,u,t):this._loop(a.objects,t))}getGraphs(t,e,n){const i=[];return this.forGraphs(t=>{i.push(t)},t,e,n),i}forGraphs(t,e,n,i){for(const r in this._graphs)this.some(e=>(t(e.graph),!0),e,n,i,r)}createBlankNode(t){let e,n;if(t)for(e=t=`_:${t}`,n=1;this._ids[e];)e=t+n++;else do{e="_:b"+this._blankNodeIndex++}while(this._ids[e]);return this._ids[e]=++this._id,this._entities[this._id]=e,this._factory.blankNode(e.substr(2))}extractLists({remove:t=!1,ignoreErrors:e=!1}={}){const n={},i=e?()=>!0:(t,e)=>{throw new Error(`${t.value} ${e}`)},r=this.getQuads(null,o.default.rdf.rest,o.default.rdf.nil,null),s=t?[...r]:[];return r.forEach(e=>{const r=[];let a,l,c=!1;const u=e.graph;let h=e.subject;for(;h&&!c;){const t=this.getQuads(null,null,h,null),e=this.getQuads(h,null,null,null);let n,d=null,p=null,f=null;for(let r=0;r{switch(t){case"data":e=i;break;case"end":n=i}}},(t,e)=>{t&&this.emit("error",t)||e&&this.push(e)},(t,e)=>{this.emit("prefix",t,e)}),this._transform=(t,n,i)=>{e(t),i()},this._flush=t=>{n(),t()}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),this}}},{"./N3Parser":37,"readable-stream":81}],40:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=t("readable-stream"),s=(i=t("./N3Writer"))&&i.__esModule?i:{default:i};n.default=class extends r.Transform{constructor(t){super({encoding:"utf8",writableObjectMode:!0});const e=this._writer=new s.default({write:(t,e,n)=>{this.push(t),n&&n()},end:t=>{this.push(null),t&&t()}},t);this._transform=(t,n,i)=>{e.addQuad(t,i)},this._flush=t=>{e.end(t)}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),t.on("prefix",(t,e)=>{this._writer.addPrefix(t,e)}),this}}},{"./N3Writer":42,"readable-stream":81}],41:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.isNamedNode=function(t){return!!t&&"NamedNode"===t.termType},n.isBlankNode=function(t){return!!t&&"BlankNode"===t.termType},n.isLiteral=function(t){return!!t&&"Literal"===t.termType},n.isVariable=function(t){return!!t&&"Variable"===t.termType},n.isDefaultGraph=s,n.inDefaultGraph=function(t){return s(t.graph)},n.prefix=function(t,e){return o({"":t},e)("")},n.prefixes=o;var i,r=(i=t("./N3DataFactory"))&&i.__esModule?i:{default:i};function s(t){return!!t&&"DefaultGraph"===t.termType}function o(t,e){const n=Object.create(null);for(const r in t)i(r,t[r]);function i(t,i){if("string"==typeof i){const r=Object.create(null);n[t]=t=>r[t]||(r[t]=e.namedNode(i+t))}else if(!(t in n))throw new Error(`Unknown prefix: ${t}`);return n[t]}return e=e||r.default,i}},{"./N3DataFactory":35}],42:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),o=t("./N3Util");function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}const l=s.default.defaultGraph(),{rdf:c,xsd:u}=r.default,h=/["\\\t\n\r\b\f\u0000-\u0019\ud800-\udbff]/,d=/["\\\t\n\r\b\f\u0000-\u0019]|[\ud800-\udbff][\udc00-\udfff]/g,p={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};class f extends s.Term{equals(){return!1}}function g(t){let e=p[t];return void 0===e&&(1===t.length?(e=t.charCodeAt(0).toString(16),e="\\u0000".substr(0,6-e.length)+e):(e=(1024*(t.charCodeAt(0)-55296)+t.charCodeAt(1)+9216).toString(16),e="\\U00000000".substr(0,10-e.length)+e)),e}n.default=class{constructor(t,e){if(this._prefixRegex=/$0^/,t&&"function"!=typeof t.write&&(e=t,t=null),this._lists=(e=e||{}).lists,t)this._outputStream=t,this._endStream=void 0===e.end||!!e.end;else{let t="";this._outputStream={write(e,n,i){t+=e,i&&i()},end:e=>{e&&e(null,t)}},this._endStream=!0}this._subject=null,/triple|quad/i.test(e.format)?(this._lineMode=!0,this._writeQuad=this._writeQuadLine):(this._lineMode=!1,this._graph=l,this._baseIRI=e.baseIRI,this._prefixIRIs=Object.create(null),e.prefixes&&this.addPrefixes(e.prefixes))}get _inDefaultGraph(){return l.equals(this._graph)}_write(t,e){this._outputStream.write(t,"utf8",e)}_writeQuad(t,e,n,i,r){try{i.equals(this._graph)||(this._write((null===this._subject?"":this._inDefaultGraph?".\n":"\n}\n")+(l.equals(i)?"":`${this._encodeIriOrBlank(i)} {\n`)),this._graph=i,this._subject=null),t.equals(this._subject)?e.equals(this._predicate)?this._write(`, ${this._encodeObject(n)}`,r):this._write(`;\n ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r):this._write(`${(null===this._subject?"":".\n")+this._encodeSubject(this._subject=t)} ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r)}catch(s){r&&r(s)}}_writeQuadLine(t,e,n,i,r){delete this._prefixMatch,this._write(this.quadToString(t,e,n,i),r)}quadToString(t,e,n,i){return`${this._encodeSubject(t)} ${this._encodeIriOrBlank(e)} ${this._encodeObject(n)}${i&&i.value?` ${this._encodeIriOrBlank(i)} .\n`:" .\n"}`}quadsToString(t){return t.map(t=>this.quadToString(t.subject,t.predicate,t.object,t.graph)).join("")}_encodeSubject(t){return"Quad"===t.termType?this._encodeQuad(t):this._encodeIriOrBlank(t)}_encodeIriOrBlank(t){if("NamedNode"!==t.termType)return this._lists&&t.value in this._lists&&(t=this.list(this._lists[t.value])),"id"in t?t.id:`_:${t.value}`;let e=t.value;this._baseIRI&&e.startsWith(this._baseIRI)&&(e=e.substr(this._baseIRI.length)),h.test(e)&&(e=e.replace(d,g));const n=this._prefixRegex.exec(e);return n?n[1]?this._prefixIRIs[n[1]]+n[2]:e:`<${e}>`}_encodeLiteral(t){let e=t.value;if(h.test(e)&&(e=e.replace(d,g)),t.language)return`"${e}"@${t.language}`;if(this._lineMode){if(t.datatype.value===u.string)return`"${e}"`}else switch(t.datatype.value){case u.string:return`"${e}"`;case u.boolean:if("true"===e||"false"===e)return e;break;case u.integer:if(/^[+-]?\d+$/.test(e))return e;break;case u.decimal:if(/^[+-]?\d*\.\d+$/.test(e))return e;break;case u.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(e))return e}return`"${e}"^^${this._encodeIriOrBlank(t.datatype)}`}_encodePredicate(t){return t.value===c.type?"a":this._encodeIriOrBlank(t)}_encodeObject(t){switch(t.termType){case"Quad":return this._encodeQuad(t);case"Literal":return this._encodeLiteral(t);default:return this._encodeIriOrBlank(t)}}_encodeQuad({subject:t,predicate:e,object:n,graph:i}){return`<<${this._encodeSubject(t)} ${this._encodePredicate(e)} ${this._encodeObject(n)}${(0,o.isDefaultGraph)(i)?"":` ${this._encodeIriOrBlank(i)}`}>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(t,e,n,i,r){void 0===n?this._writeQuad(t.subject,t.predicate,t.object,t.graph,e):"function"==typeof i?this._writeQuad(t,e,n,l,i):this._writeQuad(t,e,n,i||l,r)}addQuads(t){for(let e=0;e.\n`)}if(n){let t="",e="";for(const n in this._prefixIRIs)t+=t?`|${n}`:n,e+=(e?"|":"")+this._prefixIRIs[n];t=t.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(?:${e})[^/]*$|^(${t})([a-zA-Z][\\-_a-zA-Z0-9]*)$`)}this._write(n?"\n":"",e)}blank(t,e){let n,i,r=t;switch(void 0===t?r=[]:t.termType?r=[{predicate:t,object:e}]:"length"in t||(r=[t]),i=r.length){case 0:return new f("[]");case 1:if(n=r[0],!(n.object instanceof f))return new f(`[ ${this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)} ]`);default:let e="[";for(let s=0;s{e=null,t(n,i)});if(this._endStream)try{return this._outputStream.end(e)}catch(n){}e&&e()}}},{"./IRIs":34,"./N3DataFactory":35,"./N3Util":41}],43:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"Lexer",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(n,"Parser",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(n,"Writer",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(n,"Store",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(n,"StreamParser",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(n,"StreamWriter",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(n,"DataFactory",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(n,"Term",{enumerable:!0,get:function(){return u.Term}}),Object.defineProperty(n,"NamedNode",{enumerable:!0,get:function(){return u.NamedNode}}),Object.defineProperty(n,"Literal",{enumerable:!0,get:function(){return u.Literal}}),Object.defineProperty(n,"BlankNode",{enumerable:!0,get:function(){return u.BlankNode}}),Object.defineProperty(n,"Variable",{enumerable:!0,get:function(){return u.Variable}}),Object.defineProperty(n,"DefaultGraph",{enumerable:!0,get:function(){return u.DefaultGraph}}),Object.defineProperty(n,"Quad",{enumerable:!0,get:function(){return u.Quad}}),Object.defineProperty(n,"Triple",{enumerable:!0,get:function(){return u.Triple}}),Object.defineProperty(n,"termFromId",{enumerable:!0,get:function(){return u.termFromId}}),Object.defineProperty(n,"termToId",{enumerable:!0,get:function(){return u.termToId}}),n.Util=void 0;var i=p(t("./N3Lexer")),r=p(t("./N3Parser")),s=p(t("./N3Writer")),o=p(t("./N3Store")),a=p(t("./N3StreamParser")),l=p(t("./N3StreamWriter")),c=d(t("./N3Util"));n.Util=c;var u=d(t("./N3DataFactory"));function h(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(h=function(t){return t?n:e})(t)}function d(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=h(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}function p(t){return t&&t.__esModule?t:{default:t}}},{"./N3DataFactory":35,"./N3Lexer":36,"./N3Parser":37,"./N3Store":38,"./N3StreamParser":39,"./N3StreamWriter":40,"./N3Util":41,"./N3Writer":42}],44:[function(t,e,n){var i,r,s=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function l(t){if(i===setTimeout)return setTimeout(t,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(t,0);try{return i(t,0)}catch(e){try{return i.call(null,t,0)}catch(n){return i.call(this,t,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(t){i=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var c,u=[],h=!1,d=-1;function p(){!h||!c||(h=!1,c.length?u=c.concat(u):d=-1,u.length&&f())}function f(){if(!h){var t=l(p);h=!0;for(var e=u.length;e;){for(c=u,u=[];++d1)for(var n=1;n(n||(n=Promise.resolve())).then(t).catch(t=>setTimeout(()=>{throw t},0))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],46:[function(t,e,n){e.exports=t("./lib")},{"./lib":55}],47:[function(t,e,n){"use strict";e.exports=class t{constructor(t,e=new Map,n=0){this.prefix=t,this._existing=e,this.counter=n}clone(){const{prefix:e,_existing:n,counter:i}=this;return new t(e,new Map(n),i)}getId(t){const e=t&&this._existing.get(t);if(e)return e;const n=this.prefix+this.counter;return this.counter++,t&&this._existing.set(t,n),n}hasId(t){return this._existing.has(t)}getOldIds(){return[...this._existing.keys()]}}},{}],48:[function(t,e,n){"use strict";t("setimmediate");const r=self.crypto||self.msCrypto;e.exports=class{constructor(t){if(!r||!r.subtle)throw new Error("crypto.subtle not found.");if("sha256"===t)this.algorithm={name:"SHA-256"};else{if("sha1"!==t)throw new Error(`Unsupport algorithm "${t}".`);this.algorithm={name:"SHA-1"}}this._content=""}update(t){this._content+=t}digest(){var t=this;return i(function*(){const e=(new TextEncoder).encode(t._content),n=new Uint8Array(yield r.subtle.digest(t.algorithm,e));let i="";for(let t=0;t]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]+(?:<([^:]+:[^>]*)>)[ \\t]+(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?)|(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"(?:(?:\\^\\^(?:<([^:]+:[^>]*)>))|(?:@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)))?))[ \\t]*(?:\\.|(?:(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]*\\.))[ \\t]*$'),e.exports=class t{static parse(t){const e=[],n={},h=t.split(c.eoln);let p=0;for(const f of h){if(p++,c.empty.test(f))continue;const t=f.match(c.quad);if(null===t)throw new Error("N-Quads parse error on line "+p+".");const h={subject:null,predicate:null,object:null,graph:null};if(h.subject=void 0!==t[1]?{termType:s,value:t[1]}:{termType:o,value:t[2]},h.predicate={termType:s,value:t[3]},void 0!==t[4]?h.object={termType:s,value:t[4]}:void 0!==t[5]?h.object={termType:o,value:t[5]}:(h.object={termType:a,value:void 0,datatype:{termType:s}},void 0!==t[7]?h.object.datatype.value=t[7]:void 0!==t[8]?(h.object.datatype.value=i,h.object.language=t[8]):h.object.datatype.value=r,h.object.value=t[6].replace(d,function(t,e,n,i){if(e)switch(e){case"t":return"\t";case"b":return"\b";case"n":return"\n";case"r":return"\r";case"f":return"\f";case'"':return'"';case"'":return"'";case"\\":return"\\"}if(n)return String.fromCharCode(parseInt(n,16));if(i)throw new Error("Unsupported U escape")})),h.graph=void 0!==t[9]?{termType:s,value:t[9]}:void 0!==t[10]?{termType:o,value:t[10]}:{termType:l,value:""},h.graph.value in n){let t=!0;const i=n[h.graph.value];for(const e of i)if(u(e,h)){t=!1;break}t&&(i.push(h),e.push(h))}else n[h.graph.value]=[h],e.push(h)}return e}static serialize(e){Array.isArray(e)||(e=t.legacyDatasetToQuads(e));const n=[];for(const i of e)n.push(t.serializeQuad(i));return n.sort().join("")}static serializeQuad(t){const e=t.subject,n=t.object,a=t.graph;let l="";return l+=e.termType===s?`<${e.value}>`:`${e.value}`,l+=` <${t.predicate.value}> `,n.termType===s?l+=`<${n.value}>`:n.termType===o?l+=n.value:(l+=`"${c=n.value,c.replace(h,function(t){switch(t){case'"':return'\\"';case"\\":return"\\\\";case"\n":return"\\n";case"\r":return"\\r"}})}"`,n.datatype.value===i?n.language&&(l+=`@${n.language}`):n.datatype.value!==r&&(l+=`^^<${n.datatype.value}>`)),a.termType===s?l+=` <${a.value}>`:a.termType===o&&(l+=` ${a.value}`),l+=" .\n",l;var c}static legacyDatasetToQuads(t){const e=[],n={"blank node":o,IRI:s,literal:a};for(const c in t)t[c].forEach(t=>{const u={};for(const e in t){const o=t[e],l={termType:n[o.type],value:o.value};l.termType===a&&(l.datatype={termType:s},"datatype"in o&&(l.datatype.value=o.datatype),"language"in o?("datatype"in o||(l.datatype.value=i),l.language=o.language):"datatype"in o||(l.datatype.value=r)),u[e]=l}u.graph="@default"===c?{termType:l,value:""}:{termType:c.startsWith("_:")?o:s,value:c},e.push(u)});return e}};const h=/["\\\n\r]/g;const d=/(?:\\([tbnrf"'\\]))|(?:\\u([0-9A-Fa-f]{4}))|(?:\\U([0-9A-Fa-f]{8}))/g},{}],50:[function(t,e,n){"use strict";e.exports=class{constructor(t){this.current=t.sort(),this.done=!1,this.dir=new Map;for(let e=0;ei)&&(a&&o>0&&n>t[o-1]||!a&&ot[o+1])&&(i=n,r=o)}if(null===i)this.done=!0;else{const n=e.get(i)?r-1:r+1;t[r]=t[n],t[n]=i;for(const r of t)r>i&&e.set(r,!e.get(r))}return n}}},{}],51:[function(t,e,n){(function(n){(function(){"use strict";const r=t("./IdentifierIssuer"),s=t("./MessageDigest"),o=t("./Permuter"),a=t("./NQuads");function l(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new r("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){var e=this;return i(function*(){e.quads=t;for(const r of t)e._addBlankNodeQuadInfo({quad:r,component:r.subject}),e._addBlankNodeQuadInfo({quad:r,component:r.object}),e._addBlankNodeQuadInfo({quad:r,component:r.graph});const n=new Map,i=[...e.blankNodeInfo.keys()];let s=0;for(const t of i)++s%100==0&&(yield e._yield()),yield e._hashAndTrackBlankNode({id:t,hashToBlankNodes:n});const o=[...n.keys()].sort(),c=[];for(const t of o){const i=n.get(t);i.length>1?c.push(i):e.canonicalIssuer.getId(i[0])}for(const t of c){const n=[];for(const i of t){if(e.canonicalIssuer.hasId(i))continue;const t=new r("_:b");t.getId(i);const s=yield e.hashNDegreeQuads(i,t);n.push(s)}n.sort(l);for(const t of n){const n=t.issuer.getOldIds();for(const t of n)e.canonicalIssuer.getId(t)}}const u=[];for(const t of e.quads){const n=wt({},t);n.subject=e._useCanonicalId({component:n.subject}),n.object=e._useCanonicalId({component:n.object}),n.graph=e._useCanonicalId({component:n.graph}),u.push(a.serializeQuad(n))}return u.sort(),u.join("")})()}hashFirstDegreeQuads(t){var e=this;return i(function*(){const n=[],i=e.blankNodeInfo.get(t),r=i.quads;for(const s of r){const i={subject:null,predicate:s.predicate,object:null,graph:null};i.subject=e.modifyFirstDegreeComponent(t,s.subject,"subject"),i.object=e.modifyFirstDegreeComponent(t,s.object,"object"),i.graph=e.modifyFirstDegreeComponent(t,s.graph,"graph"),n.push(a.serializeQuad(i))}n.sort();const o=new s(e.hashAlgorithm);for(const t of n)o.update(t);return i.hash=yield o.digest(),i.hash})()}hashRelatedBlankNode(t,e,n,r){var o=this;return i(function*(){let i;i=o.canonicalIssuer.hasId(t)?o.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):o.blankNodeInfo.get(t).hash;const a=new s(o.hashAlgorithm);return a.update(r),"g"!==r&&a.update(o.getRelatedPredicate(e)),a.update(i),a.digest()})()}hashNDegreeQuads(t,e){var n=this;return i(function*(){const i=new s(n.hashAlgorithm),r=yield n.createHashToRelated(t,e),a=[...r.keys()].sort();for(const t of a){i.update(t);let s,a="";const l=new o(r.get(t));let c=0;for(;l.hasNext();){const t=l.next();++c%3==0&&(yield n._yield());let i=e.clone(),r="";const o=[];let u=!1;for(const e of t)if(n.canonicalIssuer.hasId(e)?r+=n.canonicalIssuer.getId(e):(i.hasId(e)||o.push(e),r+=i.getId(e)),0!==a.length&&r>a){u=!0;break}if(!u){for(const t of o){const e=yield n.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==a.length&&r>a){u=!0;break}}u||(0===a.length||r`}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r)++s%100==0&&(yield n._yield()),yield Promise.all([n._addRelatedBlankNodeHash({quad:o,component:o.subject,position:"s",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.object,position:"o",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.graph,position:"g",id:t,issuer:e,hashToRelated:i})]);return i})()}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){var n=this;return i(function*(){const i=yield n.hashFirstDegreeQuads(t),r=e.get(i);r?r.push(t):e.set(i,[t])})()}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:r,issuer:s,hashToRelated:o}){var a=this;return i(function*(){if("BlankNode"!==e.termType||e.value===r)return;const i=e.value,l=yield a.hashRelatedBlankNode(i,t,s,n),c=o.get(l);c?c.push(i):o.set(l,[i])})()}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}_yield(){return i(function*(){return new Promise(t=>n(t))})()}}}).call(this)}).call(this,t("timers").setImmediate)},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50,timers:89}],52:[function(t,e,n){"use strict";const i=t("./IdentifierIssuer"),r=t("./MessageDigest"),s=t("./Permuter"),o=t("./NQuads");function a(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){this.quads=t;for(const i of t)this._addBlankNodeQuadInfo({quad:i,component:i.subject}),this._addBlankNodeQuadInfo({quad:i,component:i.object}),this._addBlankNodeQuadInfo({quad:i,component:i.graph});const e=new Map,n=[...this.blankNodeInfo.keys()];for(const i of n)this._hashAndTrackBlankNode({id:i,hashToBlankNodes:e});const r=[...e.keys()].sort(),s=[];for(const i of r){const t=e.get(i);t.length>1?s.push(t):this.canonicalIssuer.getId(t[0])}for(const o of s){const t=[];for(const e of o){if(this.canonicalIssuer.hasId(e))continue;const n=new i("_:b");n.getId(e);const r=this.hashNDegreeQuads(e,n);t.push(r)}t.sort(a);for(const e of t){const t=e.issuer.getOldIds();for(const e of t)this.canonicalIssuer.getId(e)}}const l=[];for(const i of this.quads){const t=wt({},i);t.subject=this._useCanonicalId({component:t.subject}),t.object=this._useCanonicalId({component:t.object}),t.graph=this._useCanonicalId({component:t.graph}),l.push(o.serializeQuad(t))}return l.sort(),l.join("")}hashFirstDegreeQuads(t){const e=[],n=this.blankNodeInfo.get(t),i=n.quads;for(const r of i){const n={subject:null,predicate:r.predicate,object:null,graph:null};n.subject=this.modifyFirstDegreeComponent(t,r.subject,"subject"),n.object=this.modifyFirstDegreeComponent(t,r.object,"object"),n.graph=this.modifyFirstDegreeComponent(t,r.graph,"graph"),e.push(o.serializeQuad(n))}e.sort();const s=new r(this.hashAlgorithm);for(const r of e)s.update(r);return n.hash=s.digest(),n.hash}hashRelatedBlankNode(t,e,n,i){let s;s=this.canonicalIssuer.hasId(t)?this.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):this.blankNodeInfo.get(t).hash;const o=new r(this.hashAlgorithm);return o.update(i),"g"!==i&&o.update(this.getRelatedPredicate(e)),o.update(s),o.digest()}hashNDegreeQuads(t,e){const n=new r(this.hashAlgorithm),i=this.createHashToRelated(t,e),o=[...i.keys()].sort();for(const r of o){n.update(r);let t,o="";const a=new s(i.get(r));for(;a.hasNext();){const n=a.next();let i=e.clone(),r="";const s=[];let l=!1;for(const t of n)if(this.canonicalIssuer.hasId(t)?r+=this.canonicalIssuer.getId(t):(i.hasId(t)||s.push(t),r+=i.getId(t)),0!==o.length&&r>o){l=!0;break}if(!l){for(const t of s){const e=this.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==o.length&&r>o){l=!0;break}}l||(0===o.length||r`}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i)this._addRelatedBlankNodeHash({quad:r,component:r.subject,position:"s",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.object,position:"o",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.graph,position:"g",id:t,issuer:e,hashToRelated:n});return n}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){const n=this.hashFirstDegreeQuads(t),i=e.get(n);i?i.push(t):e.set(n,[t])}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:i,issuer:r,hashToRelated:s}){if("BlankNode"!==e.termType||e.value===i)return;const o=e.value,a=this.hashRelatedBlankNode(o,t,r,n),l=s.get(a);l?l.push(o):s.set(a,[o])}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}}},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50}],53:[function(t,e,n){"use strict";const r=t("./URDNA2015");e.exports=class extends r{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r){let r,a;if("BlankNode"===o.subject.termType&&o.subject.value!==t)a=o.subject.value,r="p";else{if("BlankNode"!==o.object.termType||o.object.value===t)continue;a=o.object.value,r="r"}++s%100==0&&(yield n._yield());const l=yield n.hashRelatedBlankNode(a,o,e,r),c=i.get(l);c?c.push(a):i.set(l,[a])}return i})()}}},{"./URDNA2015":51}],54:[function(t,e,n){"use strict";const i=t("./URDNA2015Sync");e.exports=class extends i{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i){let i,s;if("BlankNode"===r.subject.termType&&r.subject.value!==t)s=r.subject.value,i="p";else{if("BlankNode"!==r.object.termType||r.object.value===t)continue;s=r.object.value,i="r"}const o=this.hashRelatedBlankNode(s,r,e,i),a=n.get(o);a?a.push(s):n.set(o,[s])}return n}}},{"./URDNA2015Sync":52}],55:[function(t,e,n){"use strict";const r=t("./URDNA2015"),s=t("./URGNA2012"),o=t("./URDNA2015Sync"),a=t("./URGNA2012Sync");let l;try{l=t("rdf-canonize-native")}catch(u){}const c={};e.exports=c,c.NQuads=t("./NQuads"),c.IdentifierIssuer=t("./IdentifierIssuer"),c._rdfCanonizeNative=function(t){return t&&(l=t),l},c.canonize=function(){var t=i(function*(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(!l)throw new Error("rdf-canonize-native not available");return new Promise((n,i)=>l.canonize(t,e,(t,e)=>t?i(t):n(e)))}if("URDNA2015"===e.algorithm)return new r(e).main(t);if("URGNA2012"===e.algorithm)return new s(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")});return function(e,n){return t.apply(this,arguments)}}(),c._canonizeSync=function(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(l)return l.canonizeSync(t,e);throw new Error("rdf-canonize-native not available")}if("URDNA2015"===e.algorithm)return new o(e).main(t);if("URGNA2012"===e.algorithm)return new a(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")}},{"./IdentifierIssuer":47,"./NQuads":49,"./URDNA2015":51,"./URDNA2015Sync":52,"./URGNA2012":53,"./URGNA2012Sync":54,"rdf-canonize-native":3}],56:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/BlankNode"),n),r(t("./lib/DataFactory"),n),r(t("./lib/DefaultGraph"),n),r(t("./lib/Literal"),n),r(t("./lib/NamedNode"),n),r(t("./lib/Quad"),n),r(t("./lib/Variable"),n)},{"./lib/BlankNode":57,"./lib/DataFactory":58,"./lib/DefaultGraph":59,"./lib/Literal":60,"./lib/NamedNode":61,"./lib/Quad":62,"./lib/Variable":63}],57:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.BlankNode=void 0;n.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},{}],58:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DataFactory=void 0;const i=t("./BlankNode"),r=t("./DefaultGraph"),s=t("./Literal"),o=t("./NamedNode"),a=t("./Quad"),l=t("./Variable");let c=0;n.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},{"./BlankNode":57,"./DefaultGraph":59,"./Literal":60,"./NamedNode":61,"./Quad":62,"./Variable":63}],59:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DefaultGraph=void 0;class i{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}n.DefaultGraph=i,i.INSTANCE=new i},{}],60:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Literal=void 0;const i=t("./NamedNode");class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}n.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},{"./NamedNode":61}],61:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NamedNode=void 0;n.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},{}],62:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Quad=void 0;n.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},{}],63:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Variable=void 0;n.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},{}],64:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/RdfXmlParser"),n)},{"./lib/RdfXmlParser":66}],65:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseError=void 0;class i extends Error{constructor(t,e){const n=t.saxStream._parser;super(t.trackPosition?`Line ${n.line+1} column ${n.column+1}: ${e}`:e)}}n.ParseError=i},{}],66:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseType=n.RdfXmlParser=void 0;const i=t("relative-to-absolute-iri"),r=t("sax"),s=t("stream"),o=t("./ParseError"),a=t("rdf-data-factory");class l extends s.Transform{constructor(t){super({readableObjectMode:!0}),this.activeTagStack=[],this.nodeIds={},t&&(Object.assign(this,t),this.options=t),this.dataFactory||(this.dataFactory=new a.DataFactory),this.baseIRI||(this.baseIRI=""),this.defaultGraph||(this.defaultGraph=this.dataFactory.defaultGraph()),this.saxStream=r.createStream(this.strict,{xmlns:!1,position:this.trackPosition}),this.strict||(this.saxStream._parser.looseCase="toString"),this.attachSaxListeners()}static parseNamespace(t,e){const n={};let i=!1;for(const s in t.attributes)s.startsWith("xmlns")&&(5===s.length?(i=!0,n[""]=t.attributes[s]):":"===s.charAt(5)&&(i=!0,n[s.substr(6)]=t.attributes[s]));const r=e&&e.ns?e.ns:[l.DEFAULT_NS];return i?r.concat([n]):r}static expandPrefixedTerm(t,e,n){const i=t.indexOf(":");let r,s;i>=0?(r=t.substr(0,i),s=t.substr(i+1)):(r="",s=t);let a=null,l=null;for(let o=e.length-1;o>=0;o--){const t=e[o][r];if(t){a=t;break}l||(l=e[o][""])}if(!a){if(r&&"xmlns"!==r)throw new o.ParseError(n,`The prefix '${r}' in term '${t}' was not bound.`);a=l||""}return{prefix:r,local:s,uri:a}}static isValidIri(t){return l.IRI_REGEX.test(t)}import(t){const e=new s.PassThrough({readableObjectMode:!0});t.on("error",t=>n.emit("error",t)),t.on("data",t=>e.push(t)),t.on("end",()=>e.push(null));const n=e.pipe(new l(this.options));return n}_transform(t,e,n){try{this.saxStream.write(t,e)}catch(i){return n(i)}n()}newParseError(t){return new o.ParseError(this,t)}valueToUri(t,e){return this.uriToNamedNode(i.resolve(t,e.baseIRI))}uriToNamedNode(t){if(!l.isValidIri(t))throw this.newParseError(`Invalid URI: ${t}`);return this.dataFactory.namedNode(t)}validateNcname(t){if(!l.NCNAME_MATCHER.test(t))throw this.newParseError(`Not a valid NCName: ${t}`)}attachSaxListeners(){this.saxStream.on("error",t=>this.emit("error",t)),this.saxStream.on("opentag",this.onTag.bind(this)),this.saxStream.on("text",this.onText.bind(this)),this.saxStream.on("closetag",this.onCloseTag.bind(this)),this.saxStream.on("doctype",this.onDoctype.bind(this))}onTag(t){const e=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null;let n=c.RESOURCE;if(e&&(e.hadChildren=!0,n=e.childrenParseType),e&&e.childrenStringTags){const n=t.name;let i="";for(const e in t.attributes)i+=` ${e}="${t.attributes[e]}"`;e.childrenStringTags.push(`<${n}${i}>`);const r={childrenStringTags:e.childrenStringTags};return r.childrenStringEmitClosingTag=``,void this.activeTagStack.push(r)}const i={};e?(i.language=e.language,i.baseIRI=e.baseIRI):i.baseIRI=this.baseIRI,this.activeTagStack.push(i),i.ns=l.parseNamespace(t,e),n===c.RESOURCE?this.onTagResource(t,i,e,!e):this.onTagProperty(t,i,e)}onTagResource(t,e,n,r){const s=l.expandPrefixedTerm(t.name,e.ns,this);e.childrenParseType=c.PROPERTY;let o=!0;if(s.uri===l.RDF){if(!r&&l.FORBIDDEN_NODE_ELEMENTS.indexOf(s.local)>=0)throw this.newParseError(`Illegal node element name: ${s.local}`);switch(s.local){case"RDF":e.childrenParseType=c.RESOURCE;case"Description":o=!1}}const a=[],u=[];let h=null,d=!1,p=!1,f=null;for(const c in t.attributes){const r=t.attributes[c],s=l.expandPrefixedTerm(c,e.ns,this);if(n&&s.uri===l.RDF)switch(s.local){case"about":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);h=r;continue;case"ID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h="#"+r,d=!0;continue;case"nodeID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h=r,p=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":f=r;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(s.uri===l.XML){if("lang"===s.local){e.language=""===r?null:r.toLowerCase();continue}if("base"===s.local){e.baseIRI=i.resolve(r,e.baseIRI);continue}}"xml"!==s.prefix&&s.uri&&(a.push(this.uriToNamedNode(s.uri+s.local)),u.push(r))}if(null!==h&&(e.subject=p?this.dataFactory.blankNode(h):this.valueToUri(h,e),d&&this.claimNodeId(e.subject)),e.subject||(e.subject=this.dataFactory.blankNode()),o){const t=this.uriToNamedNode(s.uri+s.local);this.emitTriple(e.subject,this.dataFactory.namedNode(l.RDF+"type"),t,n?n.reifiedStatementId:null)}if(n){if(n.predicate)if(n.childrenCollectionSubject){const t=this.dataFactory.blankNode();this.emitTriple(n.childrenCollectionSubject,n.childrenCollectionPredicate,t,n.reifiedStatementId),this.emitTriple(t,this.dataFactory.namedNode(l.RDF+"first"),e.subject,e.reifiedStatementId),n.childrenCollectionSubject=t,n.childrenCollectionPredicate=this.dataFactory.namedNode(l.RDF+"rest")}else{this.emitTriple(n.subject,n.predicate,e.subject,n.reifiedStatementId);for(let t=0;t=0)throw this.newParseError(`Illegal property element name: ${i.local}`);e.predicateSubPredicates=[],e.predicateSubObjects=[];let r=!1,s=!1,o=null,a=!0;const u=[],h=[];for(const d in t.attributes){const n=t.attributes[d],i=l.expandPrefixedTerm(d,e.ns,this);if(i.uri===l.RDF)switch(i.local){case"resource":if(o)throw this.newParseError(`Found both rdf:resource (${n}) and rdf:nodeID (${o}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${n})`);e.hadChildren=!0,o=n,a=!1;continue;case"datatype":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:datatype (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${n})`);e.datatype=this.valueToUri(n,e);continue;case"nodeID":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:nodeID (${n}).`);if(e.hadChildren)throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${n})`);this.validateNcname(n),e.hadChildren=!0,o=n,a=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(s)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(e.datatype)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${e.datatype.value})`);if(o)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${o})`);if("Resource"===n){r=!0,e.childrenParseType=c.PROPERTY;const t=this.dataFactory.blankNode();this.emitTriple(e.subject,e.predicate,t,e.reifiedStatementId),e.subject=t,e.predicate=null}else"Collection"===n?(r=!0,e.hadChildren=!0,e.childrenCollectionSubject=e.subject,e.childrenCollectionPredicate=e.predicate,a=!1):"Literal"===n&&(r=!0,e.childrenTagsToString=!0,e.childrenStringTags=[]);continue;case"ID":this.validateNcname(n),e.reifiedStatementId=this.valueToUri("#"+n,e),this.claimNodeId(e.reifiedStatementId);continue}else if(i.uri===l.XML&&"lang"===i.local){e.language=""===n?null:n.toLowerCase();continue}if("xml"!==i.prefix&&"xmlns"!==i.prefix&&i.uri){if(r||e.datatype)throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${n}`);e.hadChildren=!0,s=!0,u.push(this.uriToNamedNode(i.uri+i.local)),h.push(this.dataFactory.literal(n,e.datatype||e.language))}}if(null!==o){const t=e.subject;e.subject=a?this.dataFactory.blankNode(o):this.valueToUri(o,e),this.emitTriple(t,e.predicate,e.subject,e.reifiedStatementId);for(let n=0;n/g,(t,e,n)=>(this.saxStream._parser.ENTITIES[e]=n,""))}}var c,u;n.RdfXmlParser=l,l.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*):[^ "<>{}|\\\[\]`]*$/,l.MIME_TYPE="application/rdf+xml",l.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",l.XML="http://www.w3.org/XML/1998/namespace",l.XMLNS="http://www.w3.org/2000/xmlns/",l.DEFAULT_NS={xml:l.XML},l.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],l.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],l.NCNAME_MATCHER=/^([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_])([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_\-.0-9#xB7\u{0300}-\u{036F}\u{203F}-\u{2040}])*$/u,(u=c=n.ParseType||(n.ParseType={}))[u.RESOURCE=0]="RESOURCE",u[u.PROPERTY=1]="PROPERTY"},{"./ParseError":65,"rdf-data-factory":56,"relative-to-absolute-iri":82,sax:85,stream:87}],67:[function(t,e,n){"use strict";var i={};function r(t,e,n){n||(n=Error);var r=function(t){function n(n,i,r){return t.call(this,function(t,n,i){return"string"==typeof e?e:e(t,n,i)}(n,i,r))||this}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(n,t),n}(n);r.prototype.name=n.name,r.prototype.code=t,i[t]=r}function s(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(t){return String(t)}),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}r("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(t,e,n){var i,r;if("string"==typeof e&&function(t,e,n){return t.substr(!n||n<0?0:+n,e.length)===e}(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))r="The ".concat(t," ").concat(i," ").concat(s(e,"type"));else{var o=function(t,e,n){return"number"!=typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";r='The "'.concat(t,'" ').concat(o," ").concat(i," ").concat(s(e,"type"))}return r+". Received type ".concat(typeof n)},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=i},{}],68:[function(t,e,n){(function(n){(function(){"use strict";var i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};e.exports=c;var r=t("./_stream_readable"),s=t("./_stream_writable");t("inherits")(c,r);for(var o=i(s.prototype),a=0;a0)if("string"!=typeof e&&!o.objectMode&&Object.getPrototypeOf(e)!==a.prototype&&(e=function(t){return a.from(t)}(e)),i)o.endEmitted?x(t,new w):T(t,o,e,!0);else if(o.ended)x(t,new v);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!n?(e=o.decoder.write(e),o.objectMode||0!==e.length?T(t,o,e,!1):I(t,o)):T(t,o,e,!1)}else i||(o.reading=!1,I(t,o));return!o.ended&&(o.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=k?t=k:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;c("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(c("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(M,t))}function M(t){var e=t._readableState;c("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,j(t)}function I(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(D,t,e))}function D(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function N(t){c("readable nexttick read 0"),t.read(0)}function L(t,e){c("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),j(t),e.flowing&&!e.reading&&t.read(0)}function j(t){var e=t._readableState;for(c("flow",e.flowing);e.flowing&&null!==t.read(););}function F(t,e){return 0===e.length?null:(e.objectMode?n=e.buffer.shift():!t||t>=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n);var n}function B(t){var e=t._readableState;c("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(V,e,t))}function V(t,e){if(c("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}function z(t,e){for(var n=0,i=t.length;n=e.highWaterMark:e.length>0)||e.ended))return c("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?B(this):P(this),null;if(0===(t=A(t,e))&&e.ended)return 0===e.length&&B(this),null;var i,r=e.needReadable;return c("need readable",r),(0===e.length||e.length-t0?F(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&B(this)),null!==i&&this.emit("data",i),i},C.prototype._read=function(t){x(this,new _("_read()"))},C.prototype.pipe=function(t,e){var i=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t)}r.pipesCount+=1,c("pipe count=%d opts=%j",r.pipesCount,e);var o=e&&!1===e.end||t===n.stdout||t===n.stderr?m:l;function a(e,n){c("onunpipe"),e===i&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,c("cleanup"),t.removeListener("close",f),t.removeListener("finish",g),t.removeListener("drain",u),t.removeListener("error",p),t.removeListener("unpipe",a),i.removeListener("end",l),i.removeListener("end",m),i.removeListener("data",d),h=!0,r.awaitDrain&&(!t._writableState||t._writableState.needDrain)&&u())}function l(){c("onend"),t.end()}r.endEmitted?n.nextTick(o):i.once("end",o),t.on("unpipe",a);var u=function(t){return function(){var e=t._readableState;c("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,j(t))}}(i);t.on("drain",u);var h=!1;function d(e){c("ondata");var n=t.write(e);c("dest.write",n),!1===n&&((1===r.pipesCount&&r.pipes===t||r.pipesCount>1&&-1!==z(r.pipes,t))&&!h&&(c("false write response, pause",r.awaitDrain),r.awaitDrain++),i.pause())}function p(e){c("onerror",e),m(),t.removeListener("error",p),0===s(t,"error")&&x(t,e)}function f(){t.removeListener("finish",g),m()}function g(){c("onfinish"),t.removeListener("close",f),m()}function m(){c("unpipe"),i.unpipe(t)}return i.on("data",d),function(t,e,n){if("function"==typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",p),t.once("close",f),t.once("finish",g),t.emit("pipe",i),r.flowing||(c("pipe resume"),i.resume()),t},C.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n)),this;if(!t){var i=e.pipes,r=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,!1!==r.flowing&&this.resume()):"readable"===t&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,c("on readable",r.length,r.reading),r.length?P(this):r.reading||n.nextTick(N,this)),i},C.prototype.removeListener=function(t,e){var i=o.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(R,this),i},C.prototype.removeAllListeners=function(t){var e=o.prototype.removeAllListeners.apply(this,arguments);return("readable"===t||void 0===t)&&n.nextTick(R,this),e},C.prototype.resume=function(){var t=this._readableState;return t.flowing||(c("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(L,t,e))}(this,t)),t.paused=!1,this},C.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},C.prototype.wrap=function(t){var e=this,n=this._readableState,i=!1;for(var r in t.on("end",function(){if(c("wrapped end"),n.decoder&&!n.ended){var t=n.decoder.end();t&&t.length&&e.push(t)}e.push(null)}),t.on("data",function(r){c("wrapped data"),n.decoder&&(r=n.decoder.write(r)),n.objectMode&&null==r||!(n.objectMode||r&&r.length)||e.push(r)||(i=!0,t.pause())}),t)void 0===this[r]&&"function"==typeof t[r]&&(this[r]=function(e){return function(){return t[e].apply(t,arguments)}}(r));for(var s=0;s-1))throw new w(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(C.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(C.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),C.prototype._write=function(t,e,n){n(new g("_write()"))},C.prototype._writev=null,C.prototype.end=function(t,e,i){var r=this._writableState;return"function"==typeof t?(i=t,t=null,e=null):"function"==typeof e&&(i=e,e=null),null!=t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||function(t,e,i){e.ending=!0,I(t,e),i&&(e.finished?n.nextTick(i):t.once("finish",i)),e.ended=!0,t.writable=!1}(this,r,i),this},Object.defineProperty(C.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(C.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){!this._writableState||(this._writableState.destroyed=t)}}),C.prototype.destroy=h.destroy,C.prototype._undestroy=h.undestroy,C.prototype._destroy=function(t,e){e(t)}}).call(this)}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../errors":67,"./_stream_duplex":68,"./internal/streams/destroy":75,"./internal/streams/state":79,"./internal/streams/stream":80,_process:44,buffer:6,inherits:10,"util-deprecate":90}],73:[function(t,e,n){(function(n){(function(){"use strict";var i;function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var s=t("./end-of-stream"),o=Symbol("lastResolve"),a=Symbol("lastReject"),l=Symbol("error"),c=Symbol("ended"),u=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function p(t,e){return{value:t,done:e}}function f(t){var e=t[o];if(null!==e){var n=t[d].read();null!==n&&(t[u]=null,t[o]=null,t[a]=null,e(p(n,!1)))}}function g(t){n.nextTick(f,t)}var m=Object.getPrototypeOf(function(){}),b=Object.setPrototypeOf((r(i={get stream(){return this[d]},next:function(){var t=this,e=this[l];if(null!==e)return Promise.reject(e);if(this[c])return Promise.resolve(p(void 0,!0));if(this[d].destroyed)return new Promise(function(e,i){n.nextTick(function(){t[l]?i(t[l]):e(p(void 0,!0))})});var i,r=this[u];if(r)i=new Promise(function(t,e){return function(n,i){t.then(function(){e[c]?n(p(void 0,!0)):e[h](n,i)},i)}}(r,this));else{var s=this[d].read();if(null!==s)return Promise.resolve(p(s,!1));i=new Promise(this[h])}return this[u]=i,i}},Symbol.asyncIterator,function(){return this}),r(i,"return",function(){var t=this;return new Promise(function(e,n){t[d].destroy(null,function(t){t?n(t):e(p(void 0,!0))})})}),i),m);e.exports=function(t){var e,n=Object.create(b,(r(e={},d,{value:t,writable:!0}),r(e,o,{value:null,writable:!0}),r(e,a,{value:null,writable:!0}),r(e,l,{value:null,writable:!0}),r(e,c,{value:t._readableState.endEmitted,writable:!0}),r(e,h,{value:function(t,e){var i=n[d].read();i?(n[u]=null,n[o]=null,n[a]=null,t(p(i,!1))):(n[o]=t,n[a]=e)},writable:!0}),e));return n[u]=null,s(t,function(t){if(t&&"ERR_STREAM_PREMATURE_CLOSE"!==t.code){var e=n[a];return null!==e&&(n[u]=null,n[o]=null,n[a]=null,e(t)),void(n[l]=t)}var i=n[o];null!==i&&(n[u]=null,n[o]=null,n[a]=null,i(p(void 0,!0))),n[c]=!0}),t.on("readable",g.bind(null,n)),n}}).call(this)}).call(this,t("_process"))},{"./end-of-stream":76,_process:44}],74:[function(t,e,n){"use strict";function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,i)}return n}function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function s(t,e){for(var n=0;n0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n}},{key:"concat",value:function(t){if(0===this.length)return o.alloc(0);for(var e=o.allocUnsafe(t>>>0),n=this.head,i=0;n;)c(n.data,e,i),i+=n.data.length,n=n.next;return e}},{key:"consume",value:function(t,e){var n;return tr.length?r.length:t;if(i+=s===r.length?r:r.slice(0,t),0==(t-=s)){s===r.length?(++n,this.head=e.next?e.next:this.tail=null):(this.head=e,e.data=r.slice(s));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(t){var e=o.allocUnsafe(t),n=this.head,i=1;for(n.data.copy(e),t-=n.data.length;n=n.next;){var r=n.data,s=t>r.length?r.length:t;if(r.copy(e,e.length-t,0,s),0==(t-=s)){s===r.length?(++i,this.head=n.next?n.next:this.tail=null):(this.head=n,n.data=r.slice(s));break}++i}return this.length-=i,e}},{key:l,value:function(t,e){return a(this,function(t){for(var e=1;e0,function(t){r||(r=t),t&&o.forEach(c),!s&&(o.forEach(c),i(r))})});return e.reduce(u)}},{"../../../errors":67,"./end-of-stream":76}],79:[function(t,e,n){"use strict";var i=t("../../../errors").codes.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(t,e,n,r){var s=function(t,e,n){return null!=t.highWaterMark?t.highWaterMark:e?t[n]:null}(e,r,n);if(null!=s){if(!isFinite(s)||Math.floor(s)!==s||s<0)throw new i(r?n:"highWaterMark",s);return Math.floor(s)}return t.objectMode?16:16384}}},{"../../../errors":67}],80:[function(t,e,n){e.exports=t("events").EventEmitter},{events:8}],81:[function(t,e,n){(n=e.exports=t("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=t("./lib/_stream_writable.js"),n.Duplex=t("./lib/_stream_duplex.js"),n.Transform=t("./lib/_stream_transform.js"),n.PassThrough=t("./lib/_stream_passthrough.js"),n.finished=t("./lib/internal/streams/end-of-stream.js"),n.pipeline=t("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":68,"./lib/_stream_passthrough.js":69,"./lib/_stream_readable.js":70,"./lib/_stream_transform.js":71,"./lib/_stream_writable.js":72,"./lib/internal/streams/end-of-stream.js":76,"./lib/internal/streams/pipeline.js":78}],82:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(t){for(var e in t)n.hasOwnProperty(e)||(n[e]=t[e])}(t("./lib/Resolve"))},{"./lib/Resolve":83}],83:[function(t,e,n){"use strict";function i(t){const e=[];let n=0;for(;nt.join("")).join("/")}function r(t,e){let n=e+1;e>=0?"/"===t[e+1]&&"/"===t[e+2]&&(n=e+3):"/"===t[0]&&"/"===t[1]&&(n=2);const r=t.indexOf("/",n);return r<0?t:t.substr(0,r)+i(t.substr(r))}function s(t){return!t||"#"===t||"?"===t||"/"===t}Object.defineProperty(n,"__esModule",{value:!0}),n.resolve=function(t,e){const n=(e=e||"").indexOf("#");if(n>0&&(e=e.substr(0,n)),!t.length){if(e.indexOf(":")<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);return e}if(t.startsWith("?")){const n=e.indexOf("?");return n>0&&(e=e.substr(0,n)),e+t}if(t.startsWith("#"))return e+t;if(!e.length){const e=t.indexOf(":");if(e<0)throw new Error(`Found invalid relative IRI '${t}' for a missing baseIRI`);return r(t,e)}const s=t.indexOf(":");if(s>=0)return r(t,s);const o=e.indexOf(":");if(o<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);const a=e.substr(0,o+1);if(0===t.indexOf("//"))return a+r(t,s);let l;if(e.indexOf("//",o)===o+1){if(l=e.indexOf("/",o+3),l<0)return e.length>o+3?e+"/"+r(t,s):a+r(t,s)}else if(l=e.indexOf("/",o+1),l<0)return a+r(t,s);if(0===t.indexOf("/"))return e.substr(0,l)+i(t);let c=e.substr(l);const u=c.lastIndexOf("/");return u>=0&&u"===s?(O(e,"onsgmldeclaration",e.sgmlDecl),e.sgmlDecl="",e.state=S.TEXT):(m(s)&&(e.state=S.SGML_DECL_QUOTED),e.sgmlDecl+=s);continue;case S.SGML_DECL_QUOTED:s===e.q&&(e.state=S.SGML_DECL,e.q=""),e.sgmlDecl+=s;continue;case S.DOCTYPE:">"===s?(e.state=S.TEXT,O(e,"ondoctype",e.doctype),e.doctype=!0):(e.doctype+=s,"["===s?e.state=S.DOCTYPE_DTD:m(s)&&(e.state=S.DOCTYPE_QUOTED,e.q=s));continue;case S.DOCTYPE_QUOTED:e.doctype+=s,s===e.q&&(e.q="",e.state=S.DOCTYPE);continue;case S.DOCTYPE_DTD:e.doctype+=s,"]"===s?e.state=S.DOCTYPE:m(s)&&(e.state=S.DOCTYPE_DTD_QUOTED,e.q=s);continue;case S.DOCTYPE_DTD_QUOTED:e.doctype+=s,s===e.q&&(e.state=S.DOCTYPE_DTD,e.q="");continue;case S.COMMENT:"-"===s?e.state=S.COMMENT_ENDING:e.comment+=s;continue;case S.COMMENT_ENDING:"-"===s?(e.state=S.COMMENT_ENDED,e.comment=k(e.opt,e.comment),e.comment&&O(e,"oncomment",e.comment),e.comment=""):(e.comment+="-"+s,e.state=S.COMMENT);continue;case S.COMMENT_ENDED:">"!==s?(M(e,"Malformed comment"),e.comment+="--"+s,e.state=S.COMMENT):e.state=S.TEXT;continue;case S.CDATA:"]"===s?e.state=S.CDATA_ENDING:e.cdata+=s;continue;case S.CDATA_ENDING:"]"===s?e.state=S.CDATA_ENDING_2:(e.cdata+="]"+s,e.state=S.CDATA);continue;case S.CDATA_ENDING_2:">"===s?(e.cdata&&O(e,"oncdata",e.cdata),O(e,"onclosecdata"),e.cdata="",e.state=S.TEXT):"]"===s?e.cdata+="]":(e.cdata+="]]"+s,e.state=S.CDATA);continue;case S.PROC_INST:"?"===s?e.state=S.PROC_INST_ENDING:g(s)?e.state=S.PROC_INST_BODY:e.procInstName+=s;continue;case S.PROC_INST_BODY:if(!e.procInstBody&&g(s))continue;"?"===s?e.state=S.PROC_INST_ENDING:e.procInstBody+=s;continue;case S.PROC_INST_ENDING:">"===s?(O(e,"onprocessinginstruction",{name:e.procInstName,body:e.procInstBody}),e.procInstName=e.procInstBody="",e.state=S.TEXT):(e.procInstBody+="?"+s,e.state=S.PROC_INST_BODY);continue;case S.OPEN_TAG:y(d,s)?e.tagName+=s:(I(e),">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:(g(s)||M(e,"Invalid character in tag name"),e.state=S.ATTRIB));continue;case S.OPEN_TAG_SLASH:">"===s?(N(e,!0),L(e)):(M(e,"Forward-slash in opening tag not followed by >"),e.state=S.ATTRIB);continue;case S.ATTRIB:if(g(s))continue;">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME:"="===s?e.state=S.ATTRIB_VALUE:">"===s?(M(e,"Attribute without value"),e.attribValue=e.attribName,R(e),N(e)):g(s)?e.state=S.ATTRIB_NAME_SAW_WHITE:y(d,s)?e.attribName+=s:M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME_SAW_WHITE:if("="===s)e.state=S.ATTRIB_VALUE;else{if(g(s))continue;M(e,"Attribute without value"),e.tag.attributes[e.attribName]="",e.attribValue="",O(e,"onattribute",{name:e.attribName,value:""}),e.attribName="",">"===s?N(e):y(h,s)?(e.attribName=s,e.state=S.ATTRIB_NAME):(M(e,"Invalid attribute name"),e.state=S.ATTRIB)}continue;case S.ATTRIB_VALUE:if(g(s))continue;m(s)?(e.q=s,e.state=S.ATTRIB_VALUE_QUOTED):(M(e,"Unquoted attribute value"),e.state=S.ATTRIB_VALUE_UNQUOTED,e.attribValue=s);continue;case S.ATTRIB_VALUE_QUOTED:if(s!==e.q){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_Q:e.attribValue+=s;continue}R(e),e.q="",e.state=S.ATTRIB_VALUE_CLOSED;continue;case S.ATTRIB_VALUE_CLOSED:g(s)?e.state=S.ATTRIB:">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(M(e,"No whitespace between attributes"),e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_VALUE_UNQUOTED:if(!b(s)){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_U:e.attribValue+=s;continue}R(e),">"===s?N(e):e.state=S.ATTRIB;continue;case S.CLOSE_TAG:if(e.tagName)">"===s?L(e):y(d,s)?e.tagName+=s:e.script?(e.script+=""===s?L(e):M(e,"Invalid characters in closing tag");continue;case S.TEXT_ENTITY:case S.ATTRIB_VALUE_ENTITY_Q:case S.ATTRIB_VALUE_ENTITY_U:var a,l;switch(e.state){case S.TEXT_ENTITY:a=S.TEXT,l="textNode";break;case S.ATTRIB_VALUE_ENTITY_Q:a=S.ATTRIB_VALUE_QUOTED,l="attribValue";break;case S.ATTRIB_VALUE_ENTITY_U:a=S.ATTRIB_VALUE_UNQUOTED,l="attribValue"}";"===s?(e[l]+=j(e),e.entity="",e.state=a):y(e.entity.length?f:p,s)?e.entity+=s:(M(e,"Invalid character in entity name"),e[l]+="&"+e.entity+s,e.entity="",e.state=a);continue;default:throw new Error(e,"Unknown state: "+e.state)}return e.position>=e.bufferCheckPosition&&function(t){for(var e=Math.max(n.MAX_BUFFER_LENGTH,10),i=0,s=0,o=r.length;se)switch(r[s]){case"textNode":T(t);break;case"cdata":O(t,"oncdata",t.cdata),t.cdata="";break;case"script":O(t,"onscript",t.script),t.script="";break;default:A(t,"Max buffer length exceeded: "+r[s])}i=Math.max(i,a)}t.bufferCheckPosition=n.MAX_BUFFER_LENGTH-i+t.position}(e),e},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){!function(t){T(t),""!==t.cdata&&(O(t,"oncdata",t.cdata),t.cdata=""),""!==t.script&&(O(t,"onscript",t.script),t.script="")}(this)}};try{i=t("stream").Stream}catch(_){i=function(){}}var o=n.EVENTS.filter(function(t){return"error"!==t&&"end"!==t});function a(t,e){if(!(this instanceof a))return new a(t,e);i.apply(this),this._parser=new s(t,e),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(t){n.emit("error",t),n._parser.error=null},this._decoder=null,o.forEach(function(t){Object.defineProperty(n,"on"+t,{get:function(){return n._parser["on"+t]},set:function(e){if(!e)return n.removeAllListeners(t),n._parser["on"+t]=e,e;n.on(t,e)},enumerable:!0,configurable:!1})})}(a.prototype=Object.create(i.prototype,{constructor:{value:a}})).write=function(n){if("function"==typeof e&&"function"==typeof e.isBuffer&&e.isBuffer(n)){if(!this._decoder){var i=t("string_decoder").StringDecoder;this._decoder=new i("utf8")}n=this._decoder.write(n)}return this._parser.write(n.toString()),this.emit("data",n),!0},a.prototype.end=function(t){return t&&t.length&&this.write(t),this._parser.end(),!0},a.prototype.on=function(t,e){var n=this;return!n._parser["on"+t]&&-1!==o.indexOf(t)&&(n._parser["on"+t]=function(){var e=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);e.splice(0,0,t),n.emit.apply(n,e)}),i.prototype.on.call(n,t,e)};var l="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",u={xml:l,xmlns:c},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,d=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,p=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function g(t){return" "===t||"\n"===t||"\r"===t||"\t"===t}function m(t){return'"'===t||"'"===t}function b(t){return">"===t||g(t)}function y(t,e){return t.test(e)}function v(t,e){return!y(t,e)}var _,w,x,S=0;for(var E in n.STATE={BEGIN:S++,BEGIN_WHITESPACE:S++,TEXT:S++,TEXT_ENTITY:S++,OPEN_WAKA:S++,SGML_DECL:S++,SGML_DECL_QUOTED:S++,DOCTYPE:S++,DOCTYPE_QUOTED:S++,DOCTYPE_DTD:S++,DOCTYPE_DTD_QUOTED:S++,COMMENT_STARTING:S++,COMMENT:S++,COMMENT_ENDING:S++,COMMENT_ENDED:S++,CDATA:S++,CDATA_ENDING:S++,CDATA_ENDING_2:S++,PROC_INST:S++,PROC_INST_BODY:S++,PROC_INST_ENDING:S++,OPEN_TAG:S++,OPEN_TAG_SLASH:S++,ATTRIB:S++,ATTRIB_NAME:S++,ATTRIB_NAME_SAW_WHITE:S++,ATTRIB_VALUE:S++,ATTRIB_VALUE_QUOTED:S++,ATTRIB_VALUE_CLOSED:S++,ATTRIB_VALUE_UNQUOTED:S++,ATTRIB_VALUE_ENTITY_Q:S++,ATTRIB_VALUE_ENTITY_U:S++,CLOSE_TAG:S++,CLOSE_TAG_SAW_WHITE:S++,SCRIPT:S++,SCRIPT_ENDING:S++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(t){var e=n.ENTITIES[t],i="number"==typeof e?String.fromCharCode(e):e;n.ENTITIES[t]=i}),n.STATE)n.STATE[n.STATE[E]]=E;function C(t,e,n){t[e]&&t[e](n)}function O(t,e,n){t.textNode&&T(t),C(t,e,n)}function T(t){t.textNode=k(t.opt,t.textNode),t.textNode&&C(t,"ontext",t.textNode),t.textNode=""}function k(t,e){return t.trim&&(e=e.trim()),t.normalize&&(e=e.replace(/\s+/g," ")),e}function A(t,e){return T(t),t.trackPosition&&(e+="\nLine: "+t.line+"\nColumn: "+t.column+"\nChar: "+t.c),e=new Error(e),t.error=e,C(t,"onerror",e),t}function P(t){return t.sawRoot&&!t.closedRoot&&M(t,"Unclosed root tag"),t.state!==S.BEGIN&&t.state!==S.BEGIN_WHITESPACE&&t.state!==S.TEXT&&A(t,"Unexpected end"),T(t),t.c="",t.closed=!0,C(t,"onend"),s.call(t,t.strict,t.opt),t}function M(t,e){if("object"!=typeof t||!(t instanceof s))throw new Error("bad call to strictFail");t.strict&&A(t,e)}function I(t){t.strict||(t.tagName=t.tagName[t.looseCase]());var e=t.tags[t.tags.length-1]||t,n=t.tag={name:t.tagName,attributes:{}};t.opt.xmlns&&(n.ns=e.ns),t.attribList.length=0,O(t,"onopentagstart",n)}function D(t,e){var n=t.indexOf(":")<0?["",t]:t.split(":"),i=n[0],r=n[1];return e&&"xmlns"===t&&(i="xmlns",r=""),{prefix:i,local:r}}function R(t){if(t.strict||(t.attribName=t.attribName[t.looseCase]()),-1!==t.attribList.indexOf(t.attribName)||t.tag.attributes.hasOwnProperty(t.attribName))t.attribName=t.attribValue="";else{if(t.opt.xmlns){var e=D(t.attribName,!0),n=e.local;if("xmlns"===e.prefix)if("xml"===n&&t.attribValue!==l)M(t,"xml: prefix must be bound to "+l+"\nActual: "+t.attribValue);else if("xmlns"===n&&t.attribValue!==c)M(t,"xmlns: prefix must be bound to "+c+"\nActual: "+t.attribValue);else{var i=t.tag,r=t.tags[t.tags.length-1]||t;i.ns===r.ns&&(i.ns=Object.create(r.ns)),i.ns[n]=t.attribValue}t.attribList.push([t.attribName,t.attribValue])}else t.tag.attributes[t.attribName]=t.attribValue,O(t,"onattribute",{name:t.attribName,value:t.attribValue});t.attribName=t.attribValue=""}}function N(t,e){if(t.opt.xmlns){var n=t.tag,i=D(t.tagName);n.prefix=i.prefix,n.local=i.local,n.uri=n.ns[i.prefix]||"",n.prefix&&!n.uri&&(M(t,"Unbound namespace prefix: "+JSON.stringify(t.tagName)),n.uri=i.prefix),n.ns&&(t.tags[t.tags.length-1]||t).ns!==n.ns&&Object.keys(n.ns).forEach(function(e){O(t,"onopennamespace",{prefix:e,uri:n.ns[e]})});for(var r=0,s=t.attribList.length;r",t.tagName="",void(t.state=S.SCRIPT);O(t,"onscript",t.script),t.script=""}var e=t.tags.length,n=t.tagName;t.strict||(n=n[t.looseCase]());for(var i=n;e--&&t.tags[e].name!==i;)M(t,"Unexpected close tag");if(e<0)return M(t,"Unmatched closing tag: "+t.tagName),t.textNode+="",void(t.state=S.TEXT);t.tagName=n;for(var r=t.tags.length;r-- >e;){var s=t.tag=t.tags.pop();t.tagName=t.tag.name,O(t,"onclosetag",t.tagName);var o={};for(var a in s.ns)o[a]=s.ns[a];t.opt.xmlns&&s.ns!==(t.tags[t.tags.length-1]||t).ns&&Object.keys(s.ns).forEach(function(e){O(t,"onclosenamespace",{prefix:e,uri:s.ns[e]})})}0===e&&(t.closedRoot=!0),t.tagName=t.attribValue=t.attribName="",t.attribList.length=0,t.state=S.TEXT}function j(t){var e,n=t.entity,i=n.toLowerCase(),r="";return t.ENTITIES[n]?t.ENTITIES[n]:t.ENTITIES[i]?t.ENTITIES[i]:("#"===(n=i).charAt(0)&&("x"===n.charAt(1)?(n=n.slice(2),r=(e=parseInt(n,16)).toString(16)):(n=n.slice(1),r=(e=parseInt(n,10)).toString(10))),n=n.replace(/^0+/,""),isNaN(e)||r.toLowerCase()!==n?(M(t,"Invalid character entity"),"&"+t.entity+";"):String.fromCodePoint(e))}function F(t,e){"<"===e?(t.state=S.OPEN_WAKA,t.startTagPosition=t.position):g(e)||(M(t,"Non-whitespace before first tag."),t.textNode=e,t.state=S.TEXT)}function B(t,e){var n="";return e1114111||w(s)!==s)throw RangeError("Invalid code point: "+s);s<=65535?e.push(s):e.push(55296+((s-=65536)>>10),s%1024+56320),(n+1===i||e.length>t)&&(r+=_.apply(null,e),e.length=0)}return r},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:x,configurable:!0,writable:!0}):String.fromCodePoint=x)}(void 0===n?this.sax={}:n)}).call(this)}).call(this,t("buffer").Buffer)},{buffer:6,stream:87,string_decoder:5}],86:[function(t,e,n){(function(t,e){(function(){!function(e,n){"use strict";if(!e.setImmediate){var i,r=1,s={},o=!1,a=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,"[object process]"==={}.toString.call(e.process)?i=function(e){t.nextTick(function(){d(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(c="setImmediate$"+Math.random()+"$",u=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(c)&&d(+t.data.slice(c.length))},e.addEventListener?e.addEventListener("message",u,!1):e.attachEvent("onmessage",u),i=function(t){e.postMessage(c+t,"*")}):e.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){d(t.data)},i=function(e){t.port2.postMessage(e)}}():a&&"onreadystatechange"in a.createElement("script")?function(){var t=a.documentElement;i=function(e){var n=a.createElement("script");n.onreadystatechange=function(){d(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():i=function(t){setTimeout(d,0,t)},l.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n.setImmediate="function"==typeof e?e:function(t){var e=l++,i=!(arguments.length<2)&&o.call(arguments,1);return a[e]=!0,r(function(){a[e]&&(i?t.apply(null,i):t.call(null),n.clearImmediate(e))}),e},n.clearImmediate="function"==typeof i?i:function(t){delete a[t]}}).call(this)}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":44,timers:89}],90:[function(t,e,n){(function(t){(function(){function n(e){try{if(!t.localStorage)return!1}catch(i){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(t,e){if(n("noDeprecation"))return t;var i=!1;return function(){if(!i){if(n("throwDeprecation"))throw new Error(e);n("traceDeprecation")?console.trace(e):console.warn(e),i=!0}return t.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],91:[function(t,e,n){"use strict";e.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}},{}],92:[function(t,e,n){"use strict";function i(t){var e=this;if(e instanceof i||(e=new i),e.tail=null,e.head=null,e.length=0,t&&"function"==typeof t.forEach)t.forEach(function(t){e.push(t)});else if(arguments.length>0)for(var n=0,r=arguments.length;n1)n=e;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,n=this.head.value}for(var r=0;null!==i;r++)n=t(n,i.value,r),i=i.next;return n},i.prototype.reduceReverse=function(t,e){var n,i=this.tail;if(arguments.length>1)n=e;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,n=this.tail.value}for(var r=this.length-1;null!==i;r--)n=t(n,i.value,r),i=i.prev;return n},i.prototype.toArray=function(){for(var t=new Array(this.length),e=0,n=this.head;null!==n;e++)t[e]=n.value,n=n.next;return t},i.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,n=this.tail;null!==n;e++)t[e]=n.value,n=n.prev;return t},i.prototype.slice=function(t,e){(e=e||this.length)<0&&(e+=this.length),(t=t||0)<0&&(t+=this.length);var n=new i;if(ethis.length&&(e=this.length);for(var r=0,s=this.head;null!==s&&rthis.length&&(e=this.length);for(var r=this.length,s=this.tail;null!==s&&r>e;r--)s=s.prev;for(;null!==s&&r>t;r--,s=s.prev)n.push(s.value);return n},i.prototype.splice=function(t,e,...n){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,s=this.head;null!==s&&i{return(t=n||(n={})).typeOfFunction="function",t.boolTrue=!0,n;var t})();function i(t,e,i){if(!i||typeof i.value!==n.typeOfFunction)throw new TypeError("Only methods can be decorated with @bind. <"+e+"> is not a method!");return{configurable:n.boolTrue,get:function(){var t=i.value.bind(this);return Object.defineProperty(this,e,{value:t,configurable:n.boolTrue,writable:n.boolTrue}),t}}}e.ak=i,e.ZP=i},97266:function(t,e,n){t.exports={ResizeSensor:n(69835),ElementQueries:n(54845)}},54845:function(t,e,n){"use strict";var i,r,s;"undefined"!=typeof window&&window,r=[n(69835)],void 0!==(s="function"==typeof(i=function(t){var e=function(){var e,n={},i=[];function r(t){t||(t=document.documentElement);var e=window.getComputedStyle(t,null).fontSize;return parseFloat(e)||16}function s(t,e){var n=e.split(/\d/),i=n[n.length-1];switch(e=parseFloat(e),i){case"px":return e;case"em":return e*r(t);case"rem":return e*r();case"vw":return e*document.documentElement.clientWidth/100;case"vh":return e*document.documentElement.clientHeight/100;case"vmin":case"vmax":var s=document.documentElement.clientWidth/100,o=document.documentElement.clientHeight/100;return e*(0,Math["vmin"===i?"min":"max"])(s,o);default:return e}}function o(t,e){this.element=t;var i,r,o,a,l,c,u,h,d=["min-width","min-height","max-width","max-height"];this.call=function(){for(i in o=function(t){if(!t.getBoundingClientRect)return{width:t.offsetWidth,height:t.offsetHeight};var e=t.getBoundingClientRect();return{width:Math.round(e.width),height:Math.round(e.height)}}(this.element),c={},n[e])!n[e].hasOwnProperty(i)||(a=s(this.element,(r=n[e][i]).value),l="width"===r.property?o.width:o.height,u="","min"===r.mode&&l>=a&&(u+=r.value),"max"===r.mode&&l<=a&&(u+=r.value),c[h=r.mode+"-"+r.property]||(c[h]=""),u&&-1===(" "+c[h]+" ").indexOf(" "+u+" ")&&(c[h]+=" "+u));for(var t in d)!d.hasOwnProperty(t)||(c[d[t]]?this.element.setAttribute(d[t],c[d[t]].substr(1)):this.element.removeAttribute(d[t]))}}function a(e,n){e.elementQueriesSetupInformation||(e.elementQueriesSetupInformation=new o(e,n)),e.elementQueriesSensor||(e.elementQueriesSensor=new t(e,function(){e.elementQueriesSetupInformation.call()}))}function l(t,r,s,o){if(void 0===n[t]){n[t]=[];var a=i.length;e.innerHTML+="\n"+t+" {animation: 0.1s element-queries;}",e.innerHTML+="\n"+t+" > .resize-sensor {min-width: "+a+"px;}",i.push(t)}n[t].push({mode:r,property:s,value:o})}function c(t){var e;if(document.querySelectorAll&&(e=t?t.querySelectorAll.bind(t):document.querySelectorAll.bind(document)),!e&&"undefined"!=typeof $$&&(e=$$),!e&&"undefined"!=typeof jQuery&&(e=jQuery),!e)throw"No document.querySelectorAll, jQuery or Mootools's $$ found.";return e}function u(e){var n=[],i=[],r=[],s=0,o=-1,a=[];for(var l in e.children)if(e.children.hasOwnProperty(l)&&e.children[l].tagName&&"img"===e.children[l].tagName.toLowerCase()){n.push(e.children[l]);var c=e.children[l].getAttribute("min-width")||e.children[l].getAttribute("data-min-width"),u=e.children[l].getAttribute("data-src")||e.children[l].getAttribute("url");r.push(u),i.push({minWidth:c}),c?e.children[l].style.display="none":(s=n.length-1,e.children[l].style.display="block")}function h(){var t,l=!1;for(t in n)!n.hasOwnProperty(t)||i[t].minWidth&&e.offsetWidth>i[t].minWidth&&(l=t);if(l||(l=s),o!==l)if(a[l])n[o].style.display="none",n[l].style.display="block",o=l;else{var c=new Image;c.onload=function(){n[l].src=r[l],n[o].style.display="none",n[l].style.display="block",a[l]=!0,o=l},c.src=r[l]}else n[l].src=r[l]}o=s,e.resizeSensorInstance=new t(e,h),h()}var h=/,?[\s\t]*([^,\n]*?)((?:\[[\s\t]*?(?:min|max)-(?:width|height)[\s\t]*?[~$\^]?=[\s\t]*?"[^"]*?"[\s\t]*?])+)([^,\n\s\{]*)/gim,d=/\[[\s\t]*?(min|max)-(width|height)[\s\t]*?[~$\^]?=[\s\t]*?"([^"]*?)"[\s\t]*?]/gim;function p(t){var e,n,i,r;for(t=t.replace(/'/g,'"');null!==(e=h.exec(t));)for(n=e[1]+e[3],i=e[2];null!==(r=d.exec(i));)l(n,r[1],r[2],r[3])}function f(t){var e="";if(t)if("string"==typeof t)(-1!==(t=t.toLowerCase()).indexOf("min-width")||-1!==t.indexOf("max-width"))&&p(t);else for(var n=0,i=t.length;n img, [data-responsive-image] {overflow: hidden; padding: 0; } [responsive-image] > img, [data-responsive-image] > img {width: 100%;}",e.innerHTML+="\n@keyframes element-queries { 0% { visibility: inherit; } }",document.getElementsByTagName("head")[0].appendChild(e),g=!0);for(var r=0,s=document.styleSheets.length;r0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,console&&console.warn&&console.warn(a)}return t}function O(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function T(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=O.bind(i);return r.listener=n,i.wrapFn=r,r}function k(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(s=e[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var a=r[t];if(void 0===a)return!1;if("function"==typeof a)v(a,this,e);else{var l=a.length,c=P(a,l);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},w.prototype.listeners=function(t){return k(this,t,!0)},w.prototype.rawListeners=function(t){return k(this,t,!1)},w.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):A.call(t,e)},w.prototype.listenerCount=A,w.prototype.eventNames=function(){return this._eventsCount>0?m(this._events):[]},I.prototype.next=function(){if(this.done)return{done:!0};var t=this._next();return t.done&&(this.done=!0),t},"undefined"!=typeof Symbol&&(I.prototype[Symbol.iterator]=function(){return this}),I.of=function(){var t=arguments,e=t.length,n=0;return new I(function(){return n>=e?{done:!0}:{done:!1,value:t[n++]}})},I.empty=function(){var t=new I(null);return t.done=!0,t},I.is=function(t){return t instanceof I||"object"==typeof t&&null!==t&&"function"==typeof t.next};var D=I,R=function(t,e){for(var n,i=arguments.length>1?e:1/0,r=i!==1/0?new Array(i):[],s=0;;){if(s===i)return r;if((n=t.next()).done)return s!==e?r.slice(0,s):r;r[s++]=n.value}},N=function(t){function n(e,n){var i;return(i=t.call(this)||this).name="GraphError",i.message=e||"",i.data=n||{},i}return e(n,t),n}(o(Error)),L=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="InvalidArgumentsGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),j=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="NotFoundGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),F=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="UsageGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N);function B(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.undirectedDegree=0,this.directedSelfLoops=0,this.undirectedSelfLoops=0,this.in={},this.out={},this.undirected={}}function V(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}}function z(t,e){this.key=t,this.attributes=e,this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}}function U(t,e,n,i,r,s){this.key=e,this.attributes=s,this.undirected=t,this.source=i,this.target=r,this.generatedKey=n}function H(t,e,n,i,r,s,o){var a,l,c="out",u="in";if(e&&(c=u="undirected"),t.multi){if(void 0===(l=(a=s[c])[r])&&(l=new Set,a[r]=l),l.add(n),i===r&&e)return;void 0===(a=o[u])[i]&&(a[i]=l)}else{if(s[c][r]=n,i===r&&e)return;o[u][i]=n}}function $(t,e,n){var i=t.multi,r=n.source,s=n.target,o=r.key,a=s.key,l=r[e?"undirected":"out"],c=e?"undirected":"in";if(a in l)if(i){var u=l[a];1===u.size?(delete l[a],delete s[c][o]):u.delete(n)}else delete l[a];i||delete s[c][o]}V.prototype.upgradeToMixed=function(){this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}},z.prototype.upgradeToMixed=function(){this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}};var G=[{name:function(t){return"get".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes[i]}}},{name:function(t){return"get".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t){var i;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>1){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var r=""+t,s=""+arguments[1];if(!(i=c(this,r,s,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(r,'" - "').concat(s,'").'))}else if(!(i=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&i.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return i.attributes}}},{name:function(t){return"has".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes.hasOwnProperty(i)}}},{name:function(t){return"set".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r,this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"update".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("function"!=typeof r)throw new L("Graph.".concat(e,": updater should be a function."));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r(s.attributes[i]),this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"remove".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return delete r.attributes[i],this.emit("edgeAttributesUpdated",{key:r.key,type:"remove",attributes:r.attributes,name:i}),this}}},{name:function(t){return"replace".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes=i,this.emit("edgeAttributesUpdated",{key:r.key,type:"replace",attributes:r.attributes}),this}}},{name:function(t){return"merge".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return l(r.attributes,i),this.emit("edgeAttributesUpdated",{key:r.key,type:"merge",attributes:r.attributes,data:i}),this}}}],W=D,q=function(){var t,e=arguments,n=-1;return new W(function i(){if(!t){if(++n>=e.length)return{done:!0};t=e[n]}var r=t.next();return r.done?(t=null,i()):r})},X=[{name:"edges",type:"mixed"},{name:"inEdges",type:"directed",direction:"in"},{name:"outEdges",type:"directed",direction:"out"},{name:"inboundEdges",type:"mixed",direction:"in"},{name:"outboundEdges",type:"mixed",direction:"out"},{name:"directedEdges",type:"directed"},{name:"undirectedEdges",type:"undirected"}];function Y(t,e){for(var n in e)t.push(e[n].key)}function K(t,e){for(var n in e)e[n].forEach(function(e){return t.push(e.key)})}function Q(t,e,n){for(var i in t)if(i!==n){var r=t[i];e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey)}}function Z(t,e,n){for(var i in t)i!==n&&t[i].forEach(function(t){return e(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function J(t,e,n){for(var i in t)if(i!==n){var r=t[i];if(e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey))return!0}return!1}function tt(t,e,n){var i,r,s,o,a;for(var l in t)if(l!==n)for(i=t[l].values();!0!==(r=i.next()).done;)if(o=(s=r.value).source,e(s.key,s.attributes,o.key,(a=s.target).key,o.attributes,a.attributes,s.undirected,s.generatedKey))return!0;return!1}function et(t,e){var n=Object.keys(t),i=n.length,r=null,s=0;return new D(function o(){var a;if(r){var l=r.next();if(l.done)return r=null,s++,o();a=l.value}else{if(s>=i)return{done:!0};var c=n[s];if(c===e)return s++,o();if((a=t[c])instanceof Set)return r=a.values(),o();s++}return{done:!1,value:[a.key,a.attributes,a.source.key,a.target.key,a.source.attributes,a.target.attributes]}})}function nt(t,e,n){var i=e[n];i&&t.push(i.key)}function it(t,e,n){var i=e[n];i&&i.forEach(function(e){return t.push(e.key)})}function rt(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function st(t,e,n){var i=t[e];i&&i.forEach(function(t){return n(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function ot(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;return n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function at(t,e,n){var i=t[e];if(i){for(var r,s,o=i.values();!0!==(r=o.next()).done;)if(n((s=r.value).key,s.attributes,s.source.key,s.target.key,s.source.attributes,s.target.attributes,s.undirected,s.generatedKey))return!0;return!1}}function lt(t,e){var n=t[e];if(n instanceof Set){var i=n.values();return new D(function(){var t=i.next();if(t.done)return t;var e=t.value;return{done:!1,value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes]}})}return D.of([n.key,n.attributes,n.source.key,n.target.key,n.source.attributes,n.target.attributes])}function ct(t,e){if(0===t.size)return[];if("mixed"===e||e===t.type)return"function"==typeof Array.from?Array.from(t._edges.keys()):R(t._edges.keys(),t._edges.size);for(var n,i,r=new Array("undirected"===e?t.undirectedSize:t.directedSize),s="undirected"===e,o=t._edges.values(),a=0;!0!==(n=o.next()).done;)(i=n.value).undirected===s&&(r[a++]=i.key);return r}function ut(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey)}}function ht(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;if(n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey))break}}function dt(t,e){if(0===t.size)return D.empty();var n="mixed"!==e&&e!==t.type,i="undirected"===e,r=t._edges.values();return new D(function(){for(var t,e;;){if((t=r.next()).done)return t;if(e=t.value,!n||e.undirected===i)break}return{value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes],done:!1}})}function pt(t,e,n,i){var r=[],s=t?K:Y;return"undirected"!==e&&("out"!==n&&s(r,i.in),"in"!==n&&s(r,i.out),!n&&i.directedSelfLoops>0&&r.splice(r.lastIndexOf(i.key),1)),"directed"!==e&&s(r,i.undirected),r}function ft(t,e,n,i,r){var s=t?Z:Q;"undirected"!==e&&("out"!==n&&s(i.in,r),"in"!==n&&s(i.out,r,n?null:i.key)),"directed"!==e&&s(i.undirected,r)}function gt(t,e,n,i,r){var s=t?tt:J;"undirected"!==e&&("out"!==n&&s(i.in,r)||"in"!==n&&s(i.out,r,n?null:i.key))||"directed"===e||s(i.undirected,r)}function mt(t,e,n){var i=D.empty();return"undirected"!==t&&("out"!==e&&void 0!==n.in&&(i=q(i,et(n.in))),"in"!==e&&void 0!==n.out&&(i=q(i,et(n.out,e?null:n.key)))),"directed"!==t&&void 0!==n.undirected&&(i=q(i,et(n.undirected))),i}function bt(t,e,n,i,r){var s=e?it:nt,o=[];return"undirected"!==t&&(void 0!==i.in&&"out"!==n&&s(o,i.in,r),void 0!==i.out&&"in"!==n&&s(o,i.out,r),!n&&i.directedSelfLoops>0&&o.splice(o.lastIndexOf(i.key),1)),"directed"!==t&&void 0!==i.undirected&&s(o,i.undirected,r),o}function yt(t,e,n,i,r,s){var o=e?st:rt;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s),i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s)),"directed"!==t&&void 0!==i.undirected&&o(i.undirected,r,s)}function vt(t,e,n,i,r,s){var o=e?at:ot;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s)||i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s,n?null:i.key))||"directed"===t||void 0===i.undirected||o(i.undirected,r,s)}function _t(t,e,n,i){var r=D.empty();return"undirected"!==t&&(void 0!==n.in&&"out"!==e&&i in n.in&&(r=q(r,lt(n.in,i))),void 0!==n.out&&"in"!==e&&i in n.out&&(r=q(r,lt(n.out,i)))),"directed"!==t&&void 0!==n.undirected&&i in n.undirected&&(r=q(r,lt(n.undirected,i))),r}var wt=[{name:"neighbors",type:"mixed"},{name:"inNeighbors",type:"directed",direction:"in"},{name:"outNeighbors",type:"directed",direction:"out"},{name:"inboundNeighbors",type:"mixed",direction:"in"},{name:"outboundNeighbors",type:"mixed",direction:"out"},{name:"directedNeighbors",type:"directed"},{name:"undirectedNeighbors",type:"undirected"}];function xt(t,e){if(void 0!==e)for(var n in e)t.add(n)}function St(t,e,n){if("mixed"!==t){if("undirected"===t)return Object.keys(n.undirected);if("string"==typeof e)return Object.keys(n[e])}var i=new Set;return"undirected"!==t&&("out"!==e&&xt(i,n.in),"in"!==e&&xt(i,n.out)),"directed"!==t&&xt(i,n.undirected),R(i.values(),i.size)}function Et(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;n(o.key,o.attributes)}}function Ct(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;t.has(a.key)||(t.add(a.key),i(a.key,a.attributes))}}function Ot(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;if(n(o.key,o.attributes))return!0}return!1}function Tt(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;if(!t.has(a.key)&&(t.add(a.key),i(a.key,a.attributes)))return!0}return!1}function kt(t,e){var n=Object.keys(e),i=n.length,r=0;return new D(function(){if(r>=i)return{done:!0};var s=e[n[r++]];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===t?s.target:o;return{done:!1,value:[a.key,a.attributes]}})}function At(t,e,n){var i=Object.keys(n),r=i.length,s=0;return new D(function o(){if(s>=r)return{done:!0};var a=n[i[s++]];a instanceof Set&&(a=a.values().next().value);var l=a.source,c=l===e?a.target:l;return t.has(c.key)?o():(t.add(c.key),{done:!1,value:[c.key,c.attributes]})})}function Pt(t,e,n,i,r){var s=t._nodes.get(i);if("undirected"!==e){if("out"!==n&&void 0!==s.in)for(var o in s.in)if(o===r)return!0;if("in"!==n&&void 0!==s.out)for(var a in s.out)if(a===r)return!0}if("directed"!==e&&void 0!==s.undirected)for(var l in s.undirected)if(l===r)return!0;return!1}function Mt(t,e,n){for(var i,r,s,o,a,l,c,u=e._nodes.values(),h=e.type;!0!==(i=u.next()).done;){if(r=i.value,"undirected"!==h)for(s in o=r.out)if(l=(a=o[s]).target,c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return;if("directed"!==h)for(s in o=r.undirected)if((l=(a=o[s]).target).key!==s&&(l=a.source),c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return}}function It(t,e,n){for(var i,r,s,o,a,l,c,u,h,d=e._nodes.values(),p=e.type;!0!==(i=d.next()).done;){if(r=i.value,"undirected"!==p)for(s in l=r.out)for(o=l[s].values();!0!==(a=o.next()).done;)if(u=(c=a.value).target,h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return;if("directed"!==p)for(s in l=r.undirected)for(o=l[s].values();!0!==(a=o.next()).done;)if((u=(c=a.value).target).key!==s&&(u=c.source),h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return}}function Dt(t,e){var n={key:t};return d(e.attributes)||(n.attributes=l({},e.attributes)),n}function Rt(t,e){var n={source:e.source.key,target:e.target.key};return e.generatedKey||(n.key=t),d(e.attributes)||(n.attributes=l({},e.attributes)),e.undirected&&(n.undirected=!0),n}function Nt(t){return h(t)?"key"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?null:"invalid-attributes":"no-key":"not-object"}function Lt(t){return h(t)?"source"in t?"target"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?"undirected"in t&&"boolean"!=typeof t.undirected?"invalid-undirected":null:"invalid-attributes":"no-target":"no-source":"not-object"}var jt=new Set(["directed","undirected","mixed"]),Ft=new Set(["domain","_events","_eventsCount","_maxListeners"]),Bt={allowSelfLoops:!0,edgeKeyGenerator:null,multi:!1,type:"mixed"};function Vt(t,e,n){var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}function zt(t,e,n,i,r,s,o,a){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a&&!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));if(s=""+s,o=""+o,a=a||{},!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var l=t._nodes.get(s),c=t._nodes.get(o);if(!l)throw new j("Graph.".concat(e,': source node "').concat(s,'" not found.'));if(!c)throw new j("Graph.".concat(e,': target node "').concat(o,'" not found.'));var u={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(u)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));if(!t.multi&&(i?void 0!==l.undirected[o]:void 0!==l.out[o]))throw new F("Graph.".concat(e,': an edge linking "').concat(s,'" to "').concat(o,"\" already exists. If you really want to add multiple edges linking those nodes, you should create a multi graph by using the 'multi' option."));var d=new U(i,r,n,l,c,a);return t._edges.set(r,d),s===o?i?(l.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(l.directedSelfLoops++,t._directedSelfLoopCount++):i?(l.undirectedDegree++,c.undirectedDegree++):(l.outDegree++,c.inDegree++),H(t,i,d,s,o,l,c),i?t._undirectedSize++:t._directedSize++,u.key=r,t.emit("edgeAdded",u),r}function Ut(t,e,n,i,r,s,o,a,c){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a)if(c){if("function"!=typeof a)throw new L("Graph.".concat(e,': invalid updater function. Expecting a function but got "').concat(a,'"'))}else if(!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));var u;if(s=""+s,o=""+o,c&&(u=a,a=void 0),!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var d,p,f=t._nodes.get(s),g=t._nodes.get(o);if(!n&&(d=t._edges.get(r))){if(d.source.key!==s||d.target.key!==o||i&&(d.source.key!==o||d.target.key!==s))throw new F("Graph.".concat(e,': inconsistency detected when attempting to merge the "').concat(r,'" edge with "').concat(s,'" source & "').concat(o,'" target vs. ("').concat(d.source.key,'", "').concat(d.target.key,'").'));p=d}if(p||t.multi||!f||(p=i?f.undirected[o]:f.out[o]),p)return(c?u:a)?(c?(p.attributes=u(p.attributes),t.emit("edgeAttributesUpdated",{type:"replace",key:p.key,attributes:p.attributes})):(l(p.attributes,a),t.emit("edgeAttributesUpdated",{type:"merge",key:p.key,attributes:p.attributes,data:a})),p.key):p.key;a=a||{},c&&u&&(a=u(a));var m={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(m)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));return f||(f=Vt(t,s,{}),s===o&&(g=f)),g||(g=Vt(t,o,{})),d=new U(i,r,n,f,g,a),t._edges.set(r,d),s===o?i?(f.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(f.directedSelfLoops++,t._directedSelfLoopCount++):i?(f.undirectedDegree++,g.undirectedDegree++):(f.outDegree++,g.inDegree++),H(t,i,d,s,o,f,g),i?t._undirectedSize++:t._directedSize++,m.key=r,t.emit("edgeAdded",m),r}var Ht,$t=function(t){function n(e){var n;if(n=t.call(this)||this,(e=l({},Bt,e)).edgeKeyGenerator&&"function"!=typeof e.edgeKeyGenerator)throw new L("Graph.constructor: invalid 'edgeKeyGenerator' option. Expecting a function but got \"".concat(e.edgeKeyGenerator,'".'));if("boolean"!=typeof e.multi)throw new L("Graph.constructor: invalid 'multi' option. Expecting a boolean but got \"".concat(e.multi,'".'));if(!jt.has(e.type))throw new L('Graph.constructor: invalid \'type\' option. Should be one of "mixed", "directed" or "undirected" but got "'.concat(e.type,'".'));if("boolean"!=typeof e.allowSelfLoops)throw new L("Graph.constructor: invalid 'allowSelfLoops' option. Expecting a boolean but got \"".concat(e.allowSelfLoops,'".'));var i,r="mixed"===e.type?B:"directed"===e.type?V:z;return p(a(n),"NodeDataClass",r),p(a(n),"_attributes",{}),p(a(n),"_nodes",new Map),p(a(n),"_edges",new Map),p(a(n),"_directedSize",0),p(a(n),"_undirectedSize",0),p(a(n),"_directedSelfLoopCount",0),p(a(n),"_undirectedSelfLoopCount",0),p(a(n),"_edgeKeyGenerator",e.edgeKeyGenerator||(i=0,function(){return i++})),p(a(n),"_options",e),Ft.forEach(function(t){return p(a(n),t,n[t])}),f(a(n),"order",function(){return n._nodes.size}),f(a(n),"size",function(){return n._edges.size}),f(a(n),"directedSize",function(){return n._directedSize}),f(a(n),"undirectedSize",function(){return n._undirectedSize}),f(a(n),"selfLoopCount",function(){return n._directedSelfLoopCount+n._undirectedSelfLoopCount}),f(a(n),"directedSelfLoopCount",function(){return n._directedSelfLoopCount}),f(a(n),"undirectedSelfLoopCount",function(){return n._undirectedSelfLoopCount}),f(a(n),"multi",n._options.multi),f(a(n),"type",n._options.type),f(a(n),"allowSelfLoops",n._options.allowSelfLoops),f(a(n),"implementation",function(){return"graphology"}),n}e(n,t);var i=n.prototype;return i.hasNode=function(t){return this._nodes.has(""+t)},i.hasDirectedEdge=function(t,e){if("undirected"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&!n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.out[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasUndirectedEdge=function(t,e){if("directed"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.undirected[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasEdge=function(t,e){if(1===arguments.length)return this._edges.has(""+t);if(2===arguments.length){e=""+e;var n=this._nodes.get(t=""+t);if(!n)return!1;var i=void 0!==n.out&&n.out[e];return i||(i=void 0!==n.undirected&&n.undirected[e]),!(!i||this.multi&&!i.size)}throw new L("Graph.hasEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.directedEdge=function(t,e){if("undirected"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.directedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.directedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.directedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.directedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||void 0;return i?i.key:void 0}},i.undirectedEdge=function(t,e){if("directed"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.undirectedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.undirectedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.undirectedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.undirectedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.undirected&&n.undirected[e]||void 0;return i?i.key:void 0}},i.edge=function(t,e){if(this.multi)throw new F("Graph.edge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.edges instead.");e=""+e;var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.edge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.edge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||n.undirected&&n.undirected[e]||void 0;if(i)return i.key},i.inDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.inDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.inDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.inDegree+(e?n.directedSelfLoops:0)},i.outDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.outDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.outDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.outDegree+(e?n.directedSelfLoops:0)},i.directedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.directedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.directedDegree: could not find the "'.concat(t,'" node in the graph.'));if("undirected"===this.type)return 0;var i=e?n.directedSelfLoops:0;return n.inDegree+i+(n.outDegree+i)},i.undirectedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.undirectedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.undirectedDegree: could not find the "'.concat(t,'" node in the graph.'));return"directed"===this.type?0:n.undirectedDegree+2*(e?n.undirectedSelfLoops:0)},i.degree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.degree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.degree: could not find the "'.concat(t,'" node in the graph.'));var i=0,r=0;return"directed"!==this.type&&(e&&(r=n.undirectedSelfLoops),i+=n.undirectedDegree+2*r),"undirected"!==this.type&&(e&&(r=n.directedSelfLoops),i+=n.inDegree+n.outDegree+2*r),i},i.source=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.source: could not find the "'.concat(t,'" edge in the graph.'));return e.source.key},i.target=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.target: could not find the "'.concat(t,'" edge in the graph.'));return e.target.key},i.extremities=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.extremities: could not find the "'.concat(t,'" edge in the graph.'));return[e.source.key,e.target.key]},i.opposite=function(t,e){t=""+t;var n=this._edges.get(e=""+e);if(!n)throw new j('Graph.opposite: could not find the "'.concat(e,'" edge in the graph.'));var i=n.source.key,r=n.target.key;if(t!==i&&t!==r)throw new j('Graph.opposite: the "'.concat(t,'" node is not attached to the "').concat(e,'" edge (').concat(i,", ").concat(r,")."));return t===i?r:i},i.hasExtremity=function(t,e){e=""+e;var n=this._edges.get(t=""+t);if(!n)throw new j('Graph.hasExtremity: could not find the "'.concat(t,'" edge in the graph.'));return n.source.key===e||n.target.key===e},i.isUndirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isUndirected: could not find the "'.concat(t,'" edge in the graph.'));return e.undirected},i.isDirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isDirected: could not find the "'.concat(t,'" edge in the graph.'));return!e.undirected},i.isSelfLoop=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isSelfLoop: could not find the "'.concat(t,'" edge in the graph.'));return e.source===e.target},i.hasGeneratedKey=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.hasGeneratedKey: could not find the "'.concat(t,'" edge in the graph.'));return e.generatedKey},i.addNode=function(t,e){return function(t,e,n){if(n&&!h(n))throw new L('Graph.addNode: invalid attributes. Expecting an object but got "'.concat(n,'"'));if(n=n||{},t._nodes.has(e=""+e))throw new F('Graph.addNode: the "'.concat(e,'" node already exist in the graph.'));var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}(this,t,e).key},i.mergeNode=function(t,e){if(e&&!h(e))throw new L('Graph.mergeNode: invalid attributes. Expecting an object but got "'.concat(e,'"'));e=e||{};var n=this._nodes.get(t=""+t);return n?(e&&(l(n.attributes,e),this.emit("nodeAttributesUpdated",{type:"merge",key:t,attributes:n.attributes,data:e})),t):(n=new this.NodeDataClass(t,e),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:e}),t)},i.updateNode=function(t,e){if(e&&"function"!=typeof e)throw new L('Graph.updateNode: invalid updater function. Expecting a function but got "'.concat(e,'"'));var n=this._nodes.get(t=""+t);if(n)return e&&(n.attributes=e(n.attributes),this.emit("nodeAttributesUpdated",{type:"replace",key:t,attributes:n.attributes})),t;var i=e?e({}):{};return n=new this.NodeDataClass(t,i),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:i}),t},i.dropNode=function(t){var e=this,n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.dropNode: could not find the "'.concat(t,'" node in the graph.'));this.forEachEdge(t,function(t){e.dropEdge(t)}),this._nodes.delete(t),this.emit("nodeDropped",{key:t,attributes:n.attributes})},i.dropEdge=function(t){var e;if(arguments.length>1){var n=""+arguments[0],i=""+arguments[1];if(!(e=c(this,n,i,this.type)))throw new j('Graph.dropEdge: could not find the "'.concat(n,'" -> "').concat(i,'" edge in the graph.'))}else if(!(e=this._edges.get(t=""+t)))throw new j('Graph.dropEdge: could not find the "'.concat(t,'" edge in the graph.'));this._edges.delete(e.key);var r=e.source,s=e.target,o=e.attributes,a=e.undirected;return r===s?a?(r.undirectedSelfLoops--,this._undirectedSelfLoopCount--):(r.directedSelfLoops--,this._directedSelfLoopCount--):a?(r.undirectedDegree--,s.undirectedDegree--):(r.outDegree--,s.inDegree--),$(this,a,e),a?this._undirectedSize--:this._directedSize--,this.emit("edgeDropped",{key:t,attributes:o,source:r.key,target:s.key,undirected:a}),this},i.clear=function(){this._edges.clear(),this._nodes.clear(),this.emit("cleared")},i.clearEdges=function(){this._edges.clear(),this.clearIndex(),this.emit("edgesCleared")},i.getAttribute=function(t){return this._attributes[t]},i.getAttributes=function(){return this._attributes},i.hasAttribute=function(t){return this._attributes.hasOwnProperty(t)},i.setAttribute=function(t,e){return this._attributes[t]=e,this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.updateAttribute=function(t,e){if("function"!=typeof e)throw new L("Graph.updateAttribute: updater should be a function.");return this._attributes[t]=e(this._attributes[t]),this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.removeAttribute=function(t){return delete this._attributes[t],this.emit("attributesUpdated",{type:"remove",attributes:this._attributes,name:t}),this},i.replaceAttributes=function(t){if(!h(t))throw new L("Graph.replaceAttributes: provided attributes are not a plain object.");return this._attributes=t,this.emit("attributesUpdated",{type:"replace",attributes:this._attributes}),this},i.mergeAttributes=function(t){if(!h(t))throw new L("Graph.mergeAttributes: provided attributes are not a plain object.");return l(this._attributes,t),this.emit("attributesUpdated",{type:"merge",attributes:this._attributes,data:t}),this},i.getNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.getNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes[e]},i.getNodeAttributes=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.getNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));return e.attributes},i.hasNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes.hasOwnProperty(e)},i.setNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.setNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.setNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or value, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");return i.attributes[e]=n,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.updateNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.updateNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.updateNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or updater, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");if("function"!=typeof n)throw new L("Graph.updateAttribute: updater should be a function.");var r=i.attributes,s=n(r[e]);return r[e]=s,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.removeNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return delete n.attributes[e],this.emit("nodeAttributesUpdated",{key:t,type:"remove",attributes:n.attributes,name:e}),this},i.replaceNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.replaceNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.replaceNodeAttributes: provided attributes are not a plain object.");return n.attributes=e,this.emit("nodeAttributesUpdated",{key:t,type:"replace",attributes:n.attributes}),this},i.mergeNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.mergeNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.mergeNodeAttributes: provided attributes are not a plain object.");return l(n.attributes,e),this.emit("nodeAttributesUpdated",{key:t,type:"merge",attributes:n.attributes,data:e}),this},i.updateEachNodeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachNodeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachNodeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._nodes.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachNodeAttributesUpdated",{hints:e||null})},i.updateEachEdgeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachEdgeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachEdgeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._edges.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachEdgeAttributesUpdated",{hints:e||null})},i.forEach=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!1,this,t):Mt(!1,this,t)},i.forEachUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!0,this,t):Mt(!0,this,t)},i.adjacency=function(){return this.multi?(p=(l=this)._nodes.values(),f=l.type,g="outer",m=null,new D(function t(){var e;if("outer"===g)return!0===(e=p.next()).done?e:(c=e.value,g="directed",t());if("directed"===g)return"undirected"===f?(g="undirected",t()):(h=c.out,u=Object.keys(c.out),d=0,g="inner-directed",t());if("undirected"===g){if("directed"===f)return g="outer",t();h=c.undirected,u=Object.keys(c.undirected),d=0,g="inner-undirected"}if(!m&&d>=u.length)return g="inner-undirected"===g?"outer":"undirected",t();if(!m){var n=u[d++];return m=h[n].values(),t()}if((e=m.next()).done)return m=null,t();var i=e.value,r=i.target;return"inner-undirected"===g&&r.key===c.key&&(r=i.source),{done:!1,value:[c.key,r.key,c.attributes,r.attributes,i.key,i.attributes]}})):(s=(t=this)._nodes.values(),o=t.type,a="outer",new D(function t(){var l;if("outer"===a)return!0===(l=s.next()).done?l:(e=l.value,a="directed",t());if("directed"===a)return"undirected"===o?(a="undirected",t()):(i=e.out,n=Object.keys(e.out),r=0,a="inner-directed",t());if("undirected"===a){if("directed"===o)return a="outer",t();i=e.undirected,n=Object.keys(e.undirected),r=0,a="inner-undirected"}if(r>=n.length)return a="inner-undirected"===a?"outer":"undirected",t();var c=n[r++],u=i[c],h=u.target;return"inner-undirected"===a&&h.key===e.key&&(h=u.source),{done:!1,value:[e.key,h.key,e.attributes,h.attributes,u.key,u.attributes]}}));var t,e,n,i,r,s,o,a,l,c,u,h,d,p,f,g,m},i.nodes=function(){return"function"==typeof Array.from?Array.from(this._nodes.keys()):R(this._nodes.keys(),this._nodes.size)},i.forEachNode=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");this._nodes.forEach(function(e,n){t(n,e.attributes)})},i.forEachNodeUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");for(var e,n,i=this._nodes.values();!0!==(e=i.next())&&!t((n=e.value).key,n.attributes););},i.nodeEntries=function(){var t=this._nodes.values();return new D(function(){var e=t.next();if(e.done)return e;var n=e.value;return{value:[n.key,n.attributes],done:!1}})},i.exportNode=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.exportNode: could not find the "'.concat(t,'" node in the graph.'));return Dt(t,e)},i.exportEdge=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.exportEdge: could not find the "'.concat(t,'" edge in the graph.'));return Rt(t,e)},i.export=function(){var t=new Array(this._nodes.size),e=0;this._nodes.forEach(function(n,i){t[e++]=Dt(i,n)});var n=new Array(this._edges.size);return e=0,this._edges.forEach(function(t,i){n[e++]=Rt(i,t)}),{attributes:this.getAttributes(),nodes:t,edges:n,options:{type:this.type,multi:this.multi,allowSelfLoops:this.allowSelfLoops}}},i.importNode=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Nt(t);if(n){if("not-object"===n)throw new L('Graph.importNode: invalid serialized node. A serialized node should be a plain object with at least a "key" property.');if("no-key"===n)throw new L("Graph.importNode: no key provided.");if("invalid-attributes"===n)throw new L("Graph.importNode: invalid attributes. Attributes should be a plain object, null or omitted.")}var i=t.key,r=t.attributes,s=void 0===r?{}:r;return e?this.mergeNode(i,s):this.addNode(i,s),this},i.importEdge=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Lt(t);if(n){if("not-object"===n)throw new L('Graph.importEdge: invalid serialized edge. A serialized edge should be a plain object with at least a "source" & "target" property.');if("no-source"===n)throw new L("Graph.importEdge: missing souce.");if("no-target"===n)throw new L("Graph.importEdge: missing target.");if("invalid-attributes"===n)throw new L("Graph.importEdge: invalid attributes. Attributes should be a plain object, null or omitted.");if("invalid-undirected"===n)throw new L("Graph.importEdge: invalid undirected. Undirected should be boolean or omitted.")}var i=t.source,r=t.target,s=t.attributes,o=void 0===s?{}:s,a=t.undirected,l=void 0!==a&&a;return"key"in t?(e?l?this.mergeUndirectedEdgeWithKey:this.mergeDirectedEdgeWithKey:l?this.addUndirectedEdgeWithKey:this.addDirectedEdgeWithKey).call(this,t.key,i,r,o):(e?l?this.mergeUndirectedEdge:this.mergeDirectedEdge:l?this.addUndirectedEdge:this.addDirectedEdge).call(this,i,r,o),this},i.import=function(t){var e,n,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(u(t))return this.import(t.export(),r),this;if(!h(t))throw new L("Graph.import: invalid argument. Expecting a serialized graph or, alternatively, a Graph instance.");if(t.attributes){if(!h(t.attributes))throw new L("Graph.import: invalid attributes. Expecting a plain object.");r?this.mergeAttributes(t.attributes):this.replaceAttributes(t.attributes)}if(t.nodes){if(i=t.nodes,!Array.isArray(i))throw new L("Graph.import: invalid nodes. Expecting an array.");for(e=0,n=i.length;en)){var o=new Set;o.add(e.undirected[s]),e.undirected[s]=o,t._nodes.get(s).undirected[n]=o}})),this;var t},i.clearIndex=function(){return this._nodes.forEach(function(t){void 0!==t.in&&(t.in={},t.out={}),void 0!==t.undirected&&(t.undirected={})}),this},i.toJSON=function(){return this.export()},i.toString=function(){return"[object Graph]"},i.inspect=function(){var t=this,e={};this._nodes.forEach(function(t,n){e[n]=t.attributes});var n={},i={};this._edges.forEach(function(e,r){var s=e.undirected?"--":"->",o="",a="(".concat(e.source.key,")").concat(s,"(").concat(e.target.key,")");e.generatedKey?t.multi&&(void 0===i[a]?i[a]=0:i[a]++,o+="".concat(i[a],". ")):o+="[".concat(r,"]: "),n[o+=a]=e.attributes});var r={};for(var s in this)this.hasOwnProperty(s)&&!Ft.has(s)&&"function"!=typeof this[s]&&(r[s]=this[s]);return r.attributes=this._attributes,r.nodes=e,r.edges=n,p(r,"constructor",this.constructor),r},n}(b.exports.EventEmitter);"undefined"!=typeof Symbol&&($t.prototype[Symbol.for("nodejs.util.inspect.custom")]=$t.prototype.inspect),[{name:function(t){return"".concat(t,"Edge")},generateKey:!0},{name:function(t){return"".concat(t,"DirectedEdge")},generateKey:!0,type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdge")},generateKey:!0,type:"undirected"},{name:function(t){return"".concat(t,"EdgeWithKey")}},{name:function(t){return"".concat(t,"DirectedEdgeWithKey")},type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdgeWithKey")},type:"undirected"}].forEach(function(t){["add","merge","update"].forEach(function(e){var n=t.name(e),i="add"===e?zt:Ut;$t.prototype[n]=t.generateKey?function(r,s,o){return i(this,n,!0,"undirected"===(t.type||this.type),null,r,s,o,"update"===e)}:function(r,s,o,a){return i(this,n,!1,"undirected"===(t.type||this.type),r,s,o,a,"update"===e)}})}),"undefined"!=typeof Symbol&&($t.prototype[Symbol.iterator]=$t.prototype.adjacency),Ht=$t,G.forEach(function(t){var e=t.name,n=t.attacher;n(Ht,e("Edge"),"mixed"),n(Ht,e("DirectedEdge"),"directed"),n(Ht,e("UndirectedEdge"),"undirected")}),function(t){X.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t,e){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(!arguments.length)return ct(this,r);if(1===arguments.length){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return pt(this.multi,"mixed"===r?this.type:r,s,n)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" target node in the graph.'));return bt(r,this.multi,s,o,e)}throw new L("Graph.".concat(i,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ut(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return ft(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return yt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ht(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return gt(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return vt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t,e){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();if(!arguments.length)return dt(this,n);if(1===arguments.length){var s=this._nodes.get(t=""+t);if(!s)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return mt(n,i,s)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(r,': could not find the "').concat(e,'" target node in the graph.'));return _t(n,i,o,e)}throw new L("Graph.".concat(r,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))}}(t,e)})}($t),function(t){wt.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(2===arguments.length){var e=""+arguments[0],n=""+arguments[1];if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));if(!this._nodes.has(n))throw new j("Graph.".concat(i,': could not find the "').concat(n,'" node in the graph.'));return Pt(this,r,s,e,n)}if(1===arguments.length){var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return St("mixed"===r?this.type:r,s,o)}throw new L("Graph.".concat(i,": invalid number of arguments (expecting 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Et(n,n.undirected,i);if("string"==typeof e)return Et(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Ct(r,n,n.in,i),"in"!==e&&Ct(r,n,n.out,i)),"directed"!==t&&Ct(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Ot(n,n.undirected,i);if("string"==typeof e)return Ot(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Tt(r,n,n.in,i)||"in"!==e&&Tt(r,n,n.out,i))||"directed"===t||Tt(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();var e=this._nodes.get(t=""+t);if(void 0===e)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return function(t,e,n){if("mixed"!==t){if("undirected"===t)return kt(n,n.undirected);if("string"==typeof e)return kt(n,n[e])}var i=D.empty(),r=new Set;return"undirected"!==t&&("out"!==e&&(i=q(i,At(r,n,n.in))),"in"!==e&&(i=q(i,At(r,n,n.out)))),"directed"!==t&&(i=q(i,At(r,n,n.undirected))),i}("mixed"===n?this.type:n,i,e)}}(t,e)})}($t);var Gt=function(t){function n(e){var n=l({type:"directed"},e);if("multi"in n&&!1!==n.multi)throw new L("DirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("directed"!==n.type)throw new L('DirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Wt=function(t){function n(e){var n=l({type:"undirected"},e);if("multi"in n&&!1!==n.multi)throw new L("UndirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("undirected"!==n.type)throw new L('UndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),qt=function(t){function n(e){var n=l({multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiGraph.from: inconsistent indication that the graph should be simple in given options!");return t.call(this,n)||this}return e(n,t),n}($t),Xt=function(t){function n(e){var n=l({type:"directed",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiDirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("directed"!==n.type)throw new L('MultiDirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Yt=function(t){function n(e){var n=l({type:"undirected",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiUndirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("undirected"!==n.type)throw new L('MultiUndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t);function Kt(t){t.from=function(e,n){var i=l({},e.options,n),r=new t(i);return r.import(e),r}}return Kt($t),Kt(Gt),Kt(Wt),Kt(qt),Kt(Xt),Kt(Yt),$t.Graph=$t,$t.DirectedGraph=Gt,$t.UndirectedGraph=Wt,$t.MultiGraph=qt,$t.MultiDirectedGraph=Xt,$t.MultiUndirectedGraph=Yt,$t.InvalidArgumentsGraphError=L,$t.NotFoundGraphError=j,$t.UsageGraphError=F,$t}()},11524:function(t,e,n){var i;!function(r,s,o,a){"use strict";var l,c=["","webkit","Moz","MS","ms","o"],u=s.createElement("div"),h=Math.round,d=Math.abs,p=Date.now;function f(t,e,n){return setTimeout(w(t,n),e)}function g(t,e,n){return!!Array.isArray(t)&&(m(t,n[e],n),!0)}function m(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==a)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=r.console&&(r.console.warn||r.console.log);return s&&s.call(r.console,i,n),t.apply(this,arguments)}}l="function"!=typeof Object.assign?function(t){if(t===a||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n-1}function k(t){return t.trim().split(/\s+/g)}function A(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;in[e]}):i.sort()),i}function I(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s1&&!n.firstMultiple?n.firstMultiple=$(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,l=o?o.center:s.center,c=e.center=G(i);e.timeStamp=p(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=Y(l,c),e.distance=X(l,c),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};(1===e.eventType||4===s.eventType)&&(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=q(e.deltaX,e.deltaY);var u=W(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=u.x,e.overallVelocityY=u.y,e.overallVelocity=d(u.x)>d(u.y)?u.x:u.y,e.scale=o?function(t,e){return X(e[0],e[1],z)/X(t[0],t[1],z)}(o.pointers,i):1,e.rotation=o?function(t,e){return Y(e[1],e[0],z)+Y(t[1],t[0],z)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,l=e.timeStamp-o.timeStamp;if(8!=e.eventType&&(l>25||o.velocity===a)){var c=e.deltaX-o.deltaX,u=e.deltaY-o.deltaY,h=W(l,c,u);i=h.x,r=h.y,n=d(h.x)>d(h.y)?h.x:h.y,s=q(c,u),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var h=t.element;O(e.srcEvent.target,h)&&(h=e.srcEvent.target),e.target=h}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function $(t){for(var e=[],n=0;n=d(e)?t<0?2:4:e<0?8:16}function X(t,e,n){n||(n=V);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function Y(t,e,n){return n||(n=V),180*Math.atan2(e[n[1]]-t[n[1]],e[n[0]]-t[n[0]])/Math.PI}U.prototype={handler:function(){},init:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(R(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&C(this.element,this.evEl,this.domHandler),this.evTarget&&C(this.target,this.evTarget,this.domHandler),this.evWin&&C(R(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Q="mousedown",Z="mousemove mouseup";function J(){this.evEl=Q,this.evWin=Z,this.pressed=!1,U.apply(this,arguments)}_(J,U,{handler:function(t){var e=K[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:B,srcEvent:t}))}});var tt={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},et={2:F,3:"pen",4:B,5:"kinect"},nt="pointerdown",it="pointermove pointerup pointercancel";function rt(){this.evEl=nt,this.evWin=it,U.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(nt="MSPointerDown",it="MSPointerMove MSPointerUp MSPointerCancel"),_(rt,U,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace("ms",""),r=tt[i],s=et[t.pointerType]||t.pointerType,o=s==F,a=A(e,t.pointerId,"pointerId");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(n=!0),!(a<0)&&(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var st={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ot="touchstart",at="touchstart touchmove touchend touchcancel";function lt(){this.evTarget=ot,this.evWin=at,this.started=!1,U.apply(this,arguments)}function ct(t,e){var n=P(t.touches),i=P(t.changedTouches);return 12&e&&(n=M(n.concat(i),"identifier",!0)),[n,i]}_(lt,U,{handler:function(t){var e=st[t.type];if(1===e&&(this.started=!0),this.started){var n=ct.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:t})}}});var ut={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ht="touchstart touchmove touchend touchcancel";function dt(){this.evTarget=ht,this.targetIds={},U.apply(this,arguments)}function pt(t,e){var n=P(t.touches),i=this.targetIds;if(3&e&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=P(t.changedTouches),a=[],l=this.target;if(s=n.filter(function(t){return O(t.target,l)}),1===e)for(r=0;r-1&&i.splice(t,1)},2500)}}function bt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+kt(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+kt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&r&e.direction},attrTest:function(t){return Mt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=At(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),_(Dt,Mt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){1!==t.scale&&(t.additionalEvent=this.options.event+(t.scale<1?"in":"out")),this._super.emit.call(this,t)}}),_(Rt,Tt,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distancee.time;if(this._input=t,!i||!n||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=f(function(){this.state=8,this.tryEmit()},e.time,this);else if(4&t.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=p(),this.manager.emit(this.options.event,this._input)))}}),_(Nt,Mt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),_(Lt,Mt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return It.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:24&n&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&d(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=At(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),_(jt,Tt,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[wt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance"']/g,W=RegExp($.source),q=RegExp(G.source),X=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,J=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tt=/[\\^$.*+?()[\]{}|]/g,et=RegExp(tt.source),nt=/^\s+/,it=/\s/,rt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,st=/\{\n\/\* \[wrapped with (.+)\] \*/,ot=/,? & /,at=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lt=/[()=,{}\[\]\/\s]/,ct=/\\(\\)?/g,ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,dt=/^[-+]0x[0-9a-f]+$/i,pt=/^0b[01]+$/i,ft=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,mt=/^(?:0|[1-9]\d*)$/,bt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,yt=/($^)/,vt=/['\n\r\u2028\u2029\\]/g,_t="\\ud800-\\udfff",wt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xt="\\u2700-\\u27bf",St="a-z\\xdf-\\xf6\\xf8-\\xff",Et="A-Z\\xc0-\\xd6\\xd8-\\xde",Ct="\\ufe0e\\ufe0f",Ot="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Tt="["+_t+"]",kt="["+Ot+"]",At="["+wt+"]",Pt="\\d+",Mt="["+xt+"]",It="["+St+"]",Dt="[^"+_t+Ot+Pt+xt+St+Et+"]",Rt="\\ud83c[\\udffb-\\udfff]",Nt="[^"+_t+"]",Lt="(?:\\ud83c[\\udde6-\\uddff]){2}",jt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ft="["+Et+"]",Bt="(?:"+It+"|"+Dt+")",Vt="(?:"+Ft+"|"+Dt+")",zt="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ut="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ht="(?:"+At+"|"+Rt+")?",$t="["+Ct+"]?",Gt=$t+Ht+"(?:\\u200d(?:"+[Nt,Lt,jt].join("|")+")"+$t+Ht+")*",Wt="(?:"+[Mt,Lt,jt].join("|")+")"+Gt,qt="(?:"+[Nt+At+"?",At,Lt,jt,Tt].join("|")+")",Xt=RegExp("['\u2019]","g"),Yt=RegExp(At,"g"),Kt=RegExp(Rt+"(?="+Rt+")|"+qt+Gt,"g"),Qt=RegExp([Ft+"?"+It+"+"+zt+"(?="+[kt,Ft,"$"].join("|")+")",Vt+"+"+Ut+"(?="+[kt,Ft+Bt,"$"].join("|")+")",Ft+"?"+Bt+"+"+zt,Ft+"+"+Ut,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pt,Wt].join("|"),"g"),Zt=RegExp("[\\u200d"+_t+wt+Ct+"]"),Jt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,te=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ee=-1,ne={};ne[I]=ne[D]=ne[R]=ne[N]=ne[L]=ne[j]=ne[F]=ne[B]=ne[V]=!0,ne[f]=ne[g]=ne[P]=ne[m]=ne[M]=ne[b]=ne[y]=ne[v]=ne[w]=ne[x]=ne[S]=ne[C]=ne[O]=ne[T]=ne[A]=!1;var ie={};ie[f]=ie[g]=ie[P]=ie[M]=ie[m]=ie[b]=ie[I]=ie[D]=ie[R]=ie[N]=ie[L]=ie[w]=ie[x]=ie[S]=ie[C]=ie[O]=ie[T]=ie[k]=ie[j]=ie[F]=ie[B]=ie[V]=!0,ie[y]=ie[v]=ie[A]=!1;var re={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},se=parseFloat,oe=parseInt,ae="object"==typeof global&&global&&global.Object===Object&&global,le="object"==typeof self&&self&&self.Object===Object&&self,ce=ae||le||Function("return this")(),ue=e&&!e.nodeType&&e,he=ue&&t&&!t.nodeType&&t,de=he&&he.exports===ue,pe=de&&ae.process,fe=function(){try{return he&&he.require&&he.require("util").types||pe&&pe.binding&&pe.binding("util")}catch(t){}}(),ge=fe&&fe.isArrayBuffer,me=fe&&fe.isDate,be=fe&&fe.isMap,ye=fe&&fe.isRegExp,ve=fe&&fe.isSet,_e=fe&&fe.isTypedArray;function we(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function xe(t,e,n,i){for(var r=-1,s=null==t?0:t.length;++r-1}function ke(t,e,n){for(var i=-1,r=null==t?0:t.length;++i-1;);return n}function Qe(t,e){for(var n=t.length;n--&&je(e,t[n],0)>-1;);return n}function Ze(t,e){for(var n=t.length,i=0;n--;)t[n]===e&&++i;return i}var Je=Ue({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),tn=Ue({"&":"&","<":"<",">":">",'"':""","'":"'"});function en(t){return"\\"+re[t]}function nn(t){return Zt.test(t)}function rn(t){var e=-1,n=Array(t.size);return t.forEach(function(t,i){n[++e]=[i,t]}),n}function sn(t,e){return function(n){return t(e(n))}}function on(t,e){for(var n=-1,i=t.length,r=0,s=[];++n",""":'"',"'":"'"}),dn=function t(e){var n,i=(e=null==e?ce:dn.defaults(ce.Object(),e,dn.pick(ce,te))).Array,it=e.Date,_t=e.Error,wt=e.Function,xt=e.Math,St=e.Object,Et=e.RegExp,Ct=e.String,Ot=e.TypeError,Tt=i.prototype,kt=St.prototype,At=e["__core-js_shared__"],Pt=wt.prototype.toString,Mt=kt.hasOwnProperty,It=0,Dt=(n=/[^.]+$/.exec(At&&At.keys&&At.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Rt=kt.toString,Nt=Pt.call(St),Lt=ce._,jt=Et("^"+Pt.call(Mt).replace(tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ft=de?e.Buffer:r,Bt=e.Symbol,Vt=e.Uint8Array,zt=Ft?Ft.allocUnsafe:r,Ut=sn(St.getPrototypeOf,St),Ht=St.create,$t=kt.propertyIsEnumerable,Gt=Tt.splice,Wt=Bt?Bt.isConcatSpreadable:r,qt=Bt?Bt.iterator:r,Kt=Bt?Bt.toStringTag:r,Zt=function(){try{var t=os(St,"defineProperty");return t({},"",{}),t}catch(Ms){}}(),re=e.clearTimeout!==ce.clearTimeout&&e.clearTimeout,ae=it&&it.now!==ce.Date.now&&it.now,le=e.setTimeout!==ce.setTimeout&&e.setTimeout,ue=xt.ceil,he=xt.floor,pe=St.getOwnPropertySymbols,fe=Ft?Ft.isBuffer:r,Re=e.isFinite,Ue=Tt.join,pn=sn(St.keys,St),fn=xt.max,gn=xt.min,mn=it.now,bn=e.parseInt,yn=xt.random,vn=Tt.reverse,_n=os(e,"DataView"),wn=os(e,"Map"),xn=os(e,"Promise"),Sn=os(e,"Set"),En=os(e,"WeakMap"),Cn=os(St,"create"),On=En&&new En,Tn={},kn=Ns(_n),An=Ns(wn),Pn=Ns(xn),Mn=Ns(Sn),In=Ns(En),Dn=Bt?Bt.prototype:r,Rn=Dn?Dn.valueOf:r,Nn=Dn?Dn.toString:r;function Ln(t){if(Jo(t)&&!Uo(t)&&!(t instanceof Vn)){if(t instanceof Bn)return t;if(Mt.call(t,"__wrapped__"))return Ls(t)}return new Bn(t)}var jn=function(){function t(){}return function(e){if(!Zo(e))return{};if(Ht)return Ht(e);t.prototype=e;var n=new t;return t.prototype=r,n}}();function Fn(){}function Bn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=r}function Vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function zn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function ri(t,e,n,i,s,o){var a,l=1&e,c=2&e,u=4&e;if(n&&(a=s?n(t,i,s,o):n(t)),a!==r)return a;if(!Zo(t))return t;var h=Uo(t);if(h){if(a=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Mt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!l)return Er(t,a)}else{var d=cs(t),p=d==v||d==_;if(Wo(t))return yr(t,l);if(d==S||d==f||p&&!s){if(a=c||p?{}:hs(t),!l)return c?function(t,e){return Cr(t,ls(t),e)}(t,function(t,e){return t&&Cr(e,Pa(e),t)}(a,t)):function(t,e){return Cr(t,as(t),e)}(t,ti(a,t))}else{if(!ie[d])return s?t:{};a=function(t,e,n){var i=t.constructor;switch(e){case P:return vr(t);case m:case b:return new i(+t);case M:return function(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case I:case D:case R:case N:case L:case j:case F:case B:case V:return _r(t,n);case w:return new i;case x:case T:return new i(t);case C:return function(t){var e=new t.constructor(t.source,ht.exec(t));return e.lastIndex=t.lastIndex,e}(t);case O:return new i;case k:return function(t){return Rn?St(Rn.call(t)):{}}(t)}}(t,d,l)}}o||(o=new Gn);var g=o.get(t);if(g)return g;o.set(t,a),ra(t)?t.forEach(function(i){a.add(ri(i,e,n,i,t,o))}):ta(t)&&t.forEach(function(i,r){a.set(r,ri(i,e,n,r,t,o))});var y=h?r:(u?c?Jr:Zr:c?Pa:Aa)(t);return Se(y||t,function(i,r){y&&(i=t[r=i]),Qn(a,r,ri(i,e,n,r,t,o))}),a}function si(t,e,n){var i=n.length;if(null==t)return!i;for(t=St(t);i--;){var s=n[i],o=t[s];if(o===r&&!(s in t)||!(0,e[s])(o))return!1}return!0}function oi(t,e,n){if("function"!=typeof t)throw new Ot(s);return Os(function(){t.apply(r,n)},e)}function ai(t,e,n,i){var r=-1,s=Te,o=!0,a=t.length,l=[],c=e.length;if(!a)return l;n&&(e=Ae(e,qe(n))),i?(s=ke,o=!1):e.length>=200&&(s=Ye,o=!1,e=new $n(e));t:for(;++r-1},Un.prototype.set=function(t,e){var n=this.__data__,i=Zn(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this},Hn.prototype.clear=function(){this.size=0,this.__data__={hash:new zn,map:new(wn||Un),string:new zn}},Hn.prototype.delete=function(t){var e=rs(this,t).delete(t);return this.size-=e?1:0,e},Hn.prototype.get=function(t){return rs(this,t).get(t)},Hn.prototype.has=function(t){return rs(this,t).has(t)},Hn.prototype.set=function(t,e){var n=rs(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this},$n.prototype.add=$n.prototype.push=function(t){return this.__data__.set(t,o),this},$n.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.clear=function(){this.__data__=new Un,this.size=0},Gn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Gn.prototype.get=function(t){return this.__data__.get(t)},Gn.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Un){var i=n.__data__;if(!wn||i.length<199)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new Hn(i)}return n.set(t,e),this.size=n.size,this};var li=kr(mi),ci=kr(bi,!0);function ui(t,e){var n=!0;return li(t,function(t,i,r){return n=!!e(t,i,r)}),n}function hi(t,e,n){for(var i=-1,s=t.length;++i0&&n(a)?e>1?pi(a,e-1,n,i,r):Pe(r,a):i||(r[r.length]=a)}return r}var fi=Ar(),gi=Ar(!0);function mi(t,e){return t&&fi(t,e,Aa)}function bi(t,e){return t&&gi(t,e,Aa)}function yi(t,e){return Oe(e,function(e){return Yo(t[e])})}function vi(t,e){for(var n=0,i=(e=fr(e,t)).length;null!=t&&ne}function Si(t,e){return null!=t&&Mt.call(t,e)}function Ei(t,e){return null!=t&&e in St(t)}function Ci(t,e,n){for(var s=n?ke:Te,o=t[0].length,a=t.length,l=a,c=i(a),u=1/0,h=[];l--;){var d=t[l];l&&e&&(d=Ae(d,qe(e))),u=gn(d.length,u),c[l]=!n&&(e||o>=120&&d.length>=120)?new $n(l&&d):r}d=t[0];var p=-1,f=c[0];t:for(;++p=a?l:l*("desc"==n[i]?-1:1)}return t.index-e.index}(t,e,n)});i--;)t[i]=t[i].value;return t}(Ri(t,function(t,n,r){return{criteria:Ae(e,function(e){return e(t)}),index:++i,value:t}}))}function Vi(t,e,n){for(var i=-1,r=e.length,s={};++i-1;)a!==t&&Gt.call(a,l,1),Gt.call(t,l,1);return t}function Ui(t,e){for(var n=t?e.length:0,i=n-1;n--;){var r=e[n];if(n==i||r!==s){var s=r;ps(r)?Gt.call(t,r,1):or(t,r)}}return t}function Hi(t,e){return t+he(yn()*(e-t+1))}function $i(t,e){var n="";if(!t||e<1||e>h)return n;do{e%2&&(n+=t),(e=he(e/2))&&(t+=t)}while(e);return n}function Gi(t,e){return Ts(ws(t,e,el),t+"")}function Wi(t){return qn(Fa(t))}function qi(t,e){var n=Fa(t);return Ps(n,ii(e,0,n.length))}function Xi(t,e,n,i){if(!Zo(t))return t;for(var s=-1,o=(e=fr(e,t)).length,a=o-1,l=t;null!=l&&++ss?0:s+e),(n=n>s?s:n)<0&&(n+=s),s=e>n?0:n-e>>>0,e>>>=0;for(var o=i(s);++r>>1,o=t[s];null!==o&&!oa(o)&&(n?o<=e:o=200){var c=e?null:$r(t);if(c)return an(c);o=!1,r=Ye,l=new $n}else l=e?[]:a;t:for(;++i=i?t:Zi(t,e,n)}var br=re||function(t){return ce.clearTimeout(t)};function yr(t,e){if(e)return t.slice();var n=t.length,i=zt?zt(n):new t.constructor(n);return t.copy(i),i}function vr(t){var e=new t.constructor(t.byteLength);return new Vt(e).set(new Vt(t)),e}function _r(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function wr(t,e){if(t!==e){var n=t!==r,i=null===t,s=t==t,o=oa(t),a=e!==r,l=null===e,c=e==e,u=oa(e);if(!l&&!u&&!o&&t>e||o&&a&&c&&!l&&!u||i&&a&&c||!n&&c||!s)return 1;if(!i&&!o&&!u&&t1?n[s-1]:r,a=s>2?n[2]:r;for(o=t.length>3&&"function"==typeof o?(s--,o):r,a&&fs(n[0],n[1],a)&&(o=s<3?r:o,s=1),e=St(e);++i-1?s[o?e[a]:a]:r}}function Rr(t){return Qr(function(e){var n=e.length,i=n,o=Bn.prototype.thru;for(t&&e.reverse();i--;){var a=e[i];if("function"!=typeof a)throw new Ot(s);if(o&&!l&&"wrapper"==es(a))var l=new Bn([],!0)}for(i=l?i:n;++i1&&v.reverse(),p&&hl))return!1;var u=o.get(t),h=o.get(e);if(u&&h)return u==e&&h==t;var d=-1,p=!0,f=2&n?new $n:r;for(o.set(t,e),o.set(e,t);++d-1&&t%1==0&&t1?"& ":"")+e[i],e=e.join(n>2?", ":" "),t.replace(rt,"{\n/* [wrapped with "+e+"] */\n")}(i,function(t,e){return Se(p,function(n){var i="_."+n[0];e&n[1]&&!Te(t,i)&&t.push(i)}),t.sort()}(function(t){var e=t.match(st);return e?e[1].split(ot):[]}(i),n)))}function As(t){var e=0,n=0;return function(){var i=mn(),s=16-(i-n);if(n=i,s>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(r,arguments)}}function Ps(t,e){var n=-1,i=t.length,s=i-1;for(e=e===r?i:e;++n1?t[e-1]:r;return n="function"==typeof n?(t.pop(),n):r,no(t,n)});function co(t){var e=Ln(t);return e.__chain__=!0,e}function uo(t,e){return e(t)}var ho=Qr(function(t){var e=t.length,n=e?t[0]:0,i=this.__wrapped__,s=function(e){return ni(e,t)};return!(e>1||this.__actions__.length)&&i instanceof Vn&&ps(n)?((i=i.slice(n,+n+(e?1:0))).__actions__.push({func:uo,args:[s],thisArg:r}),new Bn(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(r),t})):this.thru(s)}),po=Or(function(t,e,n){Mt.call(t,n)?++t[n]:ei(t,n,1)}),fo=Dr(Vs),go=Dr(zs);function mo(t,e){return(Uo(t)?Se:li)(t,is(e,3))}function bo(t,e){return(Uo(t)?Ee:ci)(t,is(e,3))}var yo=Or(function(t,e,n){Mt.call(t,n)?t[n].push(e):ei(t,n,[e])}),vo=Gi(function(t,e,n){var r=-1,s="function"==typeof e,o=$o(t)?i(t.length):[];return li(t,function(t){o[++r]=s?we(e,t,n):Oi(t,e,n)}),o}),_o=Or(function(t,e,n){ei(t,n,e)});function wo(t,e){return(Uo(t)?Ae:Ri)(t,is(e,3))}var xo=Or(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),So=Gi(function(t,e){if(null==t)return[];var n=e.length;return n>1&&fs(t,e[0],e[1])?e=[]:n>2&&fs(e[0],e[1],e[2])&&(e=[e[0]]),Bi(t,pi(e,1),[])}),Eo=ae||function(){return ce.Date.now()};function Co(t,e,n){return e=n?r:e,Wr(t,c,r,r,r,r,e=t&&null==e?t.length:e)}function Oo(t,e){var n;if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=r),n}}var To=Gi(function(t,e,n){var i=1;if(n.length){var r=on(n,ns(To));i|=l}return Wr(t,i,e,n,r)}),ko=Gi(function(t,e,n){var i=3;if(n.length){var r=on(n,ns(ko));i|=l}return Wr(e,i,t,n,r)});function Ao(t,e,n){var i,o,a,l,c,u,h=0,d=!1,p=!1,f=!0;if("function"!=typeof t)throw new Ot(s);function g(e){var n=i,s=o;return i=o=r,h=e,l=t.apply(s,n)}function m(t){return h=t,c=Os(y,e),d?g(t):l}function b(t){var n=t-u;return u===r||n>=e||n<0||p&&t-h>=a}function y(){var t=Eo();if(b(t))return v(t);c=Os(y,function(t){var n=e-(t-u);return p?gn(n,a-(t-h)):n}(t))}function v(t){return c=r,f&&i?g(t):(i=o=r,l)}function _(){var t=Eo(),n=b(t);if(i=arguments,o=this,u=t,n){if(c===r)return m(u);if(p)return br(c),c=Os(y,e),g(u)}return c===r&&(c=Os(y,e)),l}return e=fa(e)||0,Zo(n)&&(d=!!n.leading,a=(p="maxWait"in n)?fn(fa(n.maxWait)||0,e):a,f="trailing"in n?!!n.trailing:f),_.cancel=function(){c!==r&&br(c),h=0,i=u=o=c=r},_.flush=function(){return c===r?l:v(Eo())},_}var Po=Gi(function(t,e){return oi(t,1,e)}),Mo=Gi(function(t,e,n){return oi(t,fa(e)||0,n)});function Io(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new Ot(s);var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],s=n.cache;if(s.has(r))return s.get(r);var o=t.apply(this,i);return n.cache=s.set(r,o)||s,o};return n.cache=new(Io.Cache||Hn),n}function Do(t){if("function"!=typeof t)throw new Ot(s);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Io.Cache=Hn;var Ro=gr(function(t,e){var n=(e=1==e.length&&Uo(e[0])?Ae(e[0],qe(is())):Ae(pi(e,1),qe(is()))).length;return Gi(function(i){for(var r=-1,s=gn(i.length,n);++r=e}),zo=Ti(function(){return arguments}())?Ti:function(t){return Jo(t)&&Mt.call(t,"callee")&&!$t.call(t,"callee")},Uo=i.isArray,Ho=ge?qe(ge):function(t){return Jo(t)&&wi(t)==P};function $o(t){return null!=t&&Qo(t.length)&&!Yo(t)}function Go(t){return Jo(t)&&$o(t)}var Wo=fe||fl,qo=me?qe(me):function(t){return Jo(t)&&wi(t)==b};function Xo(t){if(!Jo(t))return!1;var e=wi(t);return e==y||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!na(t)}function Yo(t){if(!Zo(t))return!1;var e=wi(t);return e==v||e==_||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Ko(t){return"number"==typeof t&&t==da(t)}function Qo(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=h}function Zo(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Jo(t){return null!=t&&"object"==typeof t}var ta=be?qe(be):function(t){return Jo(t)&&cs(t)==w};function ea(t){return"number"==typeof t||Jo(t)&&wi(t)==x}function na(t){if(!Jo(t)||wi(t)!=S)return!1;var e=Ut(t);if(null===e)return!0;var n=Mt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Pt.call(n)==Nt}var ia=ye?qe(ye):function(t){return Jo(t)&&wi(t)==C},ra=ve?qe(ve):function(t){return Jo(t)&&cs(t)==O};function sa(t){return"string"==typeof t||!Uo(t)&&Jo(t)&&wi(t)==T}function oa(t){return"symbol"==typeof t||Jo(t)&&wi(t)==k}var aa=_e?qe(_e):function(t){return Jo(t)&&Qo(t.length)&&!!ne[wi(t)]},la=zr(Di),ca=zr(function(t,e){return t<=e});function ua(t){if(!t)return[];if($o(t))return sa(t)?cn(t):Er(t);if(qt&&t[qt])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[qt]());var e=cs(t);return(e==w?rn:e==O?an:Fa)(t)}function ha(t){return t?(t=fa(t))===u||t===-u?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function da(t){var e=ha(t),n=e%1;return e==e?n?e-n:e:0}function pa(t){return t?ii(da(t),0,d):0}function fa(t){if("number"==typeof t)return t;if(oa(t))return NaN;if(Zo(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Zo(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=We(t);var n=pt.test(t);return n||gt.test(t)?oe(t.slice(2),n?2:8):dt.test(t)?NaN:+t}function ga(t){return Cr(t,Pa(t))}function ma(t){return null==t?"":rr(t)}var ba=Tr(function(t,e){if(ys(e)||$o(e))Cr(e,Aa(e),t);else for(var n in e)Mt.call(e,n)&&Qn(t,n,e[n])}),ya=Tr(function(t,e){Cr(e,Pa(e),t)}),va=Tr(function(t,e,n,i){Cr(e,Pa(e),t,i)}),_a=Tr(function(t,e,n,i){Cr(e,Aa(e),t,i)}),wa=Qr(ni),xa=Gi(function(t,e){t=St(t);var n=-1,i=e.length,s=i>2?e[2]:r;for(s&&fs(e[0],e[1],s)&&(i=1);++n1),e}),Cr(t,Jr(t),n),i&&(n=ri(n,7,Yr));for(var r=e.length;r--;)or(n,e[r]);return n}),Ra=Qr(function(t,e){return null==t?{}:function(t,e){return Vi(t,e,function(e,n){return Ca(t,n)})}(t,e)});function Na(t,e){if(null==t)return{};var n=Ae(Jr(t),function(t){return[t]});return e=is(e),Vi(t,n,function(t,n){return e(t,n[0])})}var La=Gr(Aa),ja=Gr(Pa);function Fa(t){return null==t?[]:Xe(t,Aa(t))}var Ba=Mr(function(t,e,n){return e=e.toLowerCase(),t+(n?Va(e):e)});function Va(t){return Xa(ma(t).toLowerCase())}function za(t){return(t=ma(t))&&t.replace(bt,Je).replace(Yt,"")}var Ua=Mr(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Ha=Mr(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),$a=Pr("toLowerCase"),Ga=Mr(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Wa=Mr(function(t,e,n){return t+(n?" ":"")+Xa(e)}),qa=Mr(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Xa=Pr("toUpperCase");function Ya(t,e,n){return t=ma(t),(e=n?r:e)===r?function(t){return Jt.test(t)}(t)?function(t){return t.match(Qt)||[]}(t):function(t){return t.match(at)||[]}(t):t.match(e)||[]}var Ka=Gi(function(t,e){try{return we(t,r,e)}catch(Is){return Xo(Is)?Is:new _t(Is)}}),Qa=Qr(function(t,e){return Se(e,function(e){e=Rs(e),ei(t,e,To(t[e],t))}),t});function Za(t){return function(){return t}}var Ja=Rr(),tl=Rr(!0);function el(t){return t}function nl(t){return Mi("function"==typeof t?t:ri(t,1))}var il=Gi(function(t,e){return function(n){return Oi(n,t,e)}}),rl=Gi(function(t,e){return function(n){return Oi(t,n,e)}});function sl(t,e,n){var i=Aa(e),r=yi(e,i);null==n&&(!Zo(e)||!r.length&&i.length)&&(n=e,e=t,t=this,r=yi(e,Aa(e)));var s=!(Zo(n)&&"chain"in n&&!n.chain),o=Yo(t);return Se(r,function(n){var i=e[n];t[n]=i,o&&(t.prototype[n]=function(){var e=this.__chain__;if(s||e){var n=t(this.__wrapped__),r=n.__actions__=Er(this.__actions__);return r.push({func:i,args:arguments,thisArg:t}),n.__chain__=e,n}return i.apply(t,Pe([this.value()],arguments))})}),t}function ol(){}var al=Fr(Ae),ll=Fr(Ce),cl=Fr(De);function ul(t){return gs(t)?ze(Rs(t)):function(t){return function(e){return vi(e,t)}}(t)}var hl=Vr(),dl=Vr(!0);function pl(){return[]}function fl(){return!1}var gl=jr(function(t,e){return t+e},0),ml=Hr("ceil"),bl=jr(function(t,e){return t/e},1),yl=Hr("floor"),vl=jr(function(t,e){return t*e},1),_l=Hr("round"),wl=jr(function(t,e){return t-e},0);return Ln.after=function(t,e){if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){if(--t<1)return e.apply(this,arguments)}},Ln.ary=Co,Ln.assign=ba,Ln.assignIn=ya,Ln.assignInWith=va,Ln.assignWith=_a,Ln.at=wa,Ln.before=Oo,Ln.bind=To,Ln.bindAll=Qa,Ln.bindKey=ko,Ln.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Uo(t)?t:[t]},Ln.chain=co,Ln.chunk=function(t,e,n){e=(n?fs(t,e,n):e===r)?1:fn(da(e),0);var s=null==t?0:t.length;if(!s||e<1)return[];for(var o=0,a=0,l=i(ue(s/e));os?0:s+n),(i=i===r||i>s?s:da(i))<0&&(i+=s),i=n>i?0:pa(i);n>>0)?(t=ma(t))&&("string"==typeof e||null!=e&&!ia(e))&&!(e=rr(e))&&nn(t)?mr(cn(t),0,n):t.split(e,n):[]},Ln.spread=function(t,e){if("function"!=typeof t)throw new Ot(s);return e=null==e?0:fn(da(e),0),Gi(function(n){var i=n[e],r=mr(n,0,e);return i&&Pe(r,i),we(t,this,r)})},Ln.tail=function(t){var e=null==t?0:t.length;return e?Zi(t,1,e):[]},Ln.take=function(t,e,n){return t&&t.length?Zi(t,0,(e=n||e===r?1:da(e))<0?0:e):[]},Ln.takeRight=function(t,e,n){var i=null==t?0:t.length;return i?Zi(t,(e=i-(e=n||e===r?1:da(e)))<0?0:e,i):[]},Ln.takeRightWhile=function(t,e){return t&&t.length?lr(t,is(e,3),!1,!0):[]},Ln.takeWhile=function(t,e){return t&&t.length?lr(t,is(e,3)):[]},Ln.tap=function(t,e){return e(t),t},Ln.throttle=function(t,e,n){var i=!0,r=!0;if("function"!=typeof t)throw new Ot(s);return Zo(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Ao(t,e,{leading:i,maxWait:e,trailing:r})},Ln.thru=uo,Ln.toArray=ua,Ln.toPairs=La,Ln.toPairsIn=ja,Ln.toPath=function(t){return Uo(t)?Ae(t,Rs):oa(t)?[t]:Er(Ds(ma(t)))},Ln.toPlainObject=ga,Ln.transform=function(t,e,n){var i=Uo(t),r=i||Wo(t)||aa(t);if(e=is(e,4),null==n){var s=t&&t.constructor;n=r?i?new s:[]:Zo(t)&&Yo(s)?jn(Ut(t)):{}}return(r?Se:mi)(t,function(t,i,r){return e(n,t,i,r)}),n},Ln.unary=function(t){return Co(t,1)},Ln.union=Zs,Ln.unionBy=Js,Ln.unionWith=to,Ln.uniq=function(t){return t&&t.length?sr(t):[]},Ln.uniqBy=function(t,e){return t&&t.length?sr(t,is(e,2)):[]},Ln.uniqWith=function(t,e){return e="function"==typeof e?e:r,t&&t.length?sr(t,r,e):[]},Ln.unset=function(t,e){return null==t||or(t,e)},Ln.unzip=eo,Ln.unzipWith=no,Ln.update=function(t,e,n){return null==t?t:ar(t,e,pr(n))},Ln.updateWith=function(t,e,n,i){return i="function"==typeof i?i:r,null==t?t:ar(t,e,pr(n),i)},Ln.values=Fa,Ln.valuesIn=function(t){return null==t?[]:Xe(t,Pa(t))},Ln.without=io,Ln.words=Ya,Ln.wrap=function(t,e){return No(pr(e),t)},Ln.xor=ro,Ln.xorBy=so,Ln.xorWith=oo,Ln.zip=ao,Ln.zipObject=function(t,e){return hr(t||[],e||[],Qn)},Ln.zipObjectDeep=function(t,e){return hr(t||[],e||[],Xi)},Ln.zipWith=lo,Ln.entries=La,Ln.entriesIn=ja,Ln.extend=ya,Ln.extendWith=va,sl(Ln,Ln),Ln.add=gl,Ln.attempt=Ka,Ln.camelCase=Ba,Ln.capitalize=Va,Ln.ceil=ml,Ln.clamp=function(t,e,n){return n===r&&(n=e,e=r),n!==r&&(n=(n=fa(n))==n?n:0),e!==r&&(e=(e=fa(e))==e?e:0),ii(fa(t),e,n)},Ln.clone=function(t){return ri(t,4)},Ln.cloneDeep=function(t){return ri(t,5)},Ln.cloneDeepWith=function(t,e){return ri(t,5,e="function"==typeof e?e:r)},Ln.cloneWith=function(t,e){return ri(t,4,e="function"==typeof e?e:r)},Ln.conformsTo=function(t,e){return null==e||si(t,e,Aa(e))},Ln.deburr=za,Ln.defaultTo=function(t,e){return null==t||t!=t?e:t},Ln.divide=bl,Ln.endsWith=function(t,e,n){t=ma(t),e=rr(e);var i=t.length,s=n=n===r?i:ii(da(n),0,i);return(n-=e.length)>=0&&t.slice(n,s)==e},Ln.eq=Fo,Ln.escape=function(t){return(t=ma(t))&&q.test(t)?t.replace(G,tn):t},Ln.escapeRegExp=function(t){return(t=ma(t))&&et.test(t)?t.replace(tt,"\\$&"):t},Ln.every=function(t,e,n){var i=Uo(t)?Ce:ui;return n&&fs(t,e,n)&&(e=r),i(t,is(e,3))},Ln.find=fo,Ln.findIndex=Vs,Ln.findKey=function(t,e){return Ne(t,is(e,3),mi)},Ln.findLast=go,Ln.findLastIndex=zs,Ln.findLastKey=function(t,e){return Ne(t,is(e,3),bi)},Ln.floor=yl,Ln.forEach=mo,Ln.forEachRight=bo,Ln.forIn=function(t,e){return null==t?t:fi(t,is(e,3),Pa)},Ln.forInRight=function(t,e){return null==t?t:gi(t,is(e,3),Pa)},Ln.forOwn=function(t,e){return t&&mi(t,is(e,3))},Ln.forOwnRight=function(t,e){return t&&bi(t,is(e,3))},Ln.get=Ea,Ln.gt=Bo,Ln.gte=Vo,Ln.has=function(t,e){return null!=t&&us(t,e,Si)},Ln.hasIn=Ca,Ln.head=Hs,Ln.identity=el,Ln.includes=function(t,e,n,i){t=$o(t)?t:Fa(t),n=n&&!i?da(n):0;var r=t.length;return n<0&&(n=fn(r+n,0)),sa(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&je(t,e,n)>-1},Ln.indexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=null==n?0:da(n);return r<0&&(r=fn(i+r,0)),je(t,e,r)},Ln.inRange=function(t,e,n){return e=ha(e),n===r?(n=e,e=0):n=ha(n),function(t,e,n){return t>=gn(e,n)&&t=-h&&t<=h},Ln.isSet=ra,Ln.isString=sa,Ln.isSymbol=oa,Ln.isTypedArray=aa,Ln.isUndefined=function(t){return t===r},Ln.isWeakMap=function(t){return Jo(t)&&cs(t)==A},Ln.isWeakSet=function(t){return Jo(t)&&"[object WeakSet]"==wi(t)},Ln.join=function(t,e){return null==t?"":Ue.call(t,e)},Ln.kebabCase=Ua,Ln.last=qs,Ln.lastIndexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var s=i;return n!==r&&(s=(s=da(n))<0?fn(i+s,0):gn(s,i-1)),e==e?function(t,e,n){for(var i=n+1;i--;)if(t[i]===e)return i;return i}(t,e,s):Le(t,Be,s,!0)},Ln.lowerCase=Ha,Ln.lowerFirst=$a,Ln.lt=la,Ln.lte=ca,Ln.max=function(t){return t&&t.length?hi(t,el,xi):r},Ln.maxBy=function(t,e){return t&&t.length?hi(t,is(e,2),xi):r},Ln.mean=function(t){return Ve(t,el)},Ln.meanBy=function(t,e){return Ve(t,is(e,2))},Ln.min=function(t){return t&&t.length?hi(t,el,Di):r},Ln.minBy=function(t,e){return t&&t.length?hi(t,is(e,2),Di):r},Ln.stubArray=pl,Ln.stubFalse=fl,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=vl,Ln.nth=function(t,e){return t&&t.length?Fi(t,da(e)):r},Ln.noConflict=function(){return ce._===this&&(ce._=Lt),this},Ln.noop=ol,Ln.now=Eo,Ln.pad=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;if(!e||i>=e)return t;var r=(e-i)/2;return Br(he(r),n)+t+Br(ue(r),n)},Ln.padEnd=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;return e&&ie){var i=t;t=e,e=i}if(n||t%1||e%1){var s=yn();return gn(t+s*(e-t+se("1e-"+((s+"").length-1))),e)}return Hi(t,e)},Ln.reduce=function(t,e,n){var i=Uo(t)?Me:He,r=arguments.length<3;return i(t,is(e,4),n,r,li)},Ln.reduceRight=function(t,e,n){var i=Uo(t)?Ie:He,r=arguments.length<3;return i(t,is(e,4),n,r,ci)},Ln.repeat=function(t,e,n){return e=(n?fs(t,e,n):e===r)?1:da(e),$i(ma(t),e)},Ln.replace=function(){var t=arguments,e=ma(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Ln.result=function(t,e,n){var i=-1,s=(e=fr(e,t)).length;for(s||(s=1,t=r);++ih)return[];var n=d,i=gn(t,d);e=is(e),t-=d;for(var r=Ge(i,e);++n=o)return t;var l=n-ln(i);if(l<1)return i;var c=a?mr(a,0,l).join(""):t.slice(0,l);if(s===r)return c+i;if(a&&(l+=c.length-l),ia(s)){if(t.slice(l).search(s)){var u,h=c;for(s.global||(s=Et(s.source,ma(ht.exec(s))+"g")),s.lastIndex=0;u=s.exec(h);)var d=u.index;c=c.slice(0,d===r?l:d)}}else if(t.indexOf(rr(s),l)!=l){var p=c.lastIndexOf(s);p>-1&&(c=c.slice(0,p))}return c+i},Ln.unescape=function(t){return(t=ma(t))&&W.test(t)?t.replace($,hn):t},Ln.uniqueId=function(t){var e=++It;return ma(t)+e},Ln.upperCase=qa,Ln.upperFirst=Xa,Ln.each=mo,Ln.eachRight=bo,Ln.first=Hs,sl(Ln,function(){var t={};return mi(Ln,function(e,n){Mt.call(Ln.prototype,n)||(t[n]=e)}),t}(),{chain:!1}),Ln.VERSION="4.17.21",Se(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){Ln[t].placeholder=Ln}),Se(["drop","take"],function(t,e){Vn.prototype[t]=function(n){n=n===r?1:fn(da(n),0);var i=this.__filtered__&&!e?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=gn(n,i.__takeCount__):i.__views__.push({size:gn(n,d),type:t+(i.__dir__<0?"Right":"")}),i},Vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Se(["filter","map","takeWhile"],function(t,e){var n=e+1,i=1==n||3==n;Vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:is(t,3),type:n}),e.__filtered__=e.__filtered__||i,e}}),Se(["head","last"],function(t,e){var n="take"+(e?"Right":"");Vn.prototype[t]=function(){return this[n](1).value()[0]}}),Se(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");Vn.prototype[t]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(el)},Vn.prototype.find=function(t){return this.filter(t).head()},Vn.prototype.findLast=function(t){return this.reverse().find(t)},Vn.prototype.invokeMap=Gi(function(t,e){return"function"==typeof t?new Vn(this):this.map(function(n){return Oi(n,t,e)})}),Vn.prototype.reject=function(t){return this.filter(Do(is(t)))},Vn.prototype.slice=function(t,e){t=da(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Vn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==r&&(n=(e=da(e))<0?n.dropRight(-e):n.take(e-t)),n)},Vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Vn.prototype.toArray=function(){return this.take(d)},mi(Vn.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),s=Ln[i?"take"+("last"==e?"Right":""):e],o=i||/^find/.test(e);!s||(Ln.prototype[e]=function(){var e=this.__wrapped__,a=i?[1]:arguments,l=e instanceof Vn,c=a[0],u=l||Uo(e),h=function(t){var e=s.apply(Ln,Pe([t],a));return i&&d?e[0]:e};u&&n&&"function"==typeof c&&1!=c.length&&(l=u=!1);var d=this.__chain__,p=!!this.__actions__.length,f=o&&!d,g=l&&!p;if(!o&&u){e=g?e:new Vn(this);var m=t.apply(e,a);return m.__actions__.push({func:uo,args:[h],thisArg:r}),new Bn(m,d)}return f&&g?t.apply(this,a):(m=this.thru(h),f?i?m.value()[0]:m.value():m)})}),Se(["pop","push","shift","sort","splice","unshift"],function(t){var e=Tt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);Ln.prototype[t]=function(){var t=arguments;if(i&&!this.__chain__){var r=this.value();return e.apply(Uo(r)?r:[],t)}return this[n](function(n){return e.apply(Uo(n)?n:[],t)})}}),mi(Vn.prototype,function(t,e){var n=Ln[e];if(n){var i=n.name+"";Mt.call(Tn,i)||(Tn[i]=[]),Tn[i].push({name:e,func:n})}}),Tn[Nr(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var t=new Vn(this.__wrapped__);return t.__actions__=Er(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Er(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Er(this.__views__),t},Vn.prototype.reverse=function(){if(this.__filtered__){var t=new Vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Uo(t),i=e<0,r=n?t.length:0,s=function(t,e,n){for(var i=-1,r=n.length;++i=this.__values__.length;return{done:t,value:t?r:this.__values__[this.__index__++]}},Ln.prototype.plant=function(t){for(var e,n=this;n instanceof Fn;){var i=Ls(n);i.__index__=0,i.__values__=r,e?s.__wrapped__=i:e=i;var s=i;n=n.__wrapped__}return s.__wrapped__=t,e},Ln.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Vn){var e=t;return this.__actions__.length&&(e=new Vn(this)),(e=e.reverse()).__actions__.push({func:uo,args:[Qs],thisArg:r}),new Bn(e,this.__chain__)}return this.thru(Qs)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return cr(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,qt&&(Ln.prototype[qt]=function(){return this}),Ln}();ce._=dn,(i=(function(){return dn}).call(e,n,e,t))!==r&&(t.exports=i)}).call(this)},5478:function(t){t.exports=function(){"use strict";function t(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,i=new Array(e);n=t.length?{done:!0}:{done:!1,value:t[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i={exports:{}};function r(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}i.exports={defaults:{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:r,changeDefaults:function(t){i.exports.defaults=t}};var s=/[&<>"']/,o=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,l=/[<>"']|&(?!#?\w+;)/g,c={"&":"&","<":"<",">":">",'"':""","'":"'"},u=function(t){return c[t]};var h=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function d(t){return t.replace(h,function(t,e){return"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""})}var p=/(^|[^\[])\^/g;var f=/[^\w:]/g,g=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var m={},b=/^[^:]+:\/*[^/]*$/,y=/^([^:]+:)[\s\S]*$/,v=/^([^:]+:\/*[^/]*)[\s\S]*$/;function _(t,e){m[" "+t]||(m[" "+t]=b.test(t)?t+"/":w(t,"/",!0));var n=-1===(t=m[" "+t]).indexOf(":");return"//"===e.substring(0,2)?n?e:t.replace(y,"$1")+e:"/"===e.charAt(0)?n?e:t.replace(v,"$1")+e:t+e}function w(t,e,n){var i=t.length;if(0===i)return"";for(var r=0;r1;)1&e&&(n+=t),e>>=1,t+=t;return n+t},P=i.exports.defaults,M=w,I=function(t,e){var n=t.replace(/\|/g,function(t,e,n){for(var i=!1,r=e;--r>=0&&"\\"===n[r];)i=!i;return i?"|":" |"}).split(/ \|/),i=0;if(n.length>e)n.splice(e);else for(;n.length1?{type:"space",raw:e[0]}:{raw:"\n"}},e.code=function(t){var e=this.rules.block.code.exec(t);if(e){var n=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:M(n,"\n")}}},e.fences=function(t){var e=this.rules.block.fences.exec(t);if(e){var n=e[0],i=function(t,e){var n=t.match(/^(\s+)(?:```)/);if(null===n)return e;var i=n[1];return e.split("\n").map(function(t){var e=t.match(/^\s+/);return null===e?t:e[0].length>=i.length?t.slice(i.length):t}).join("\n")}(n,e[3]||"");return{type:"code",raw:n,lang:e[2]?e[2].trim():e[2],text:i}}},e.heading=function(t){var e=this.rules.block.heading.exec(t);if(e){var n=e[2].trim();if(/#$/.test(n)){var i=M(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n}}},e.nptable=function(t){var e=this.rules.block.nptable.exec(t);if(e){var n={type:"table",header:I(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[],raw:e[0]};if(n.header.length===n.align.length){var i,r=n.align.length;for(i=0;i ?/gm,"");return{type:"blockquote",raw:e[0],text:n}}},e.list=function(t){var e=this.rules.block.list.exec(t);if(e){var n,i,r,s,o,a,l,c,u,h=e[0],d=e[2],p=d.length>1,f={type:"list",raw:h,ordered:p,start:p?+d.slice(0,-1):"",loose:!1,items:[]},g=e[0].match(this.rules.block.item),m=!1,b=g.length;r=this.rules.block.listItemStart.exec(g[0]);for(var y=0;yr[1].length:s[1].length>=r[0].length||s[1].length>3){g.splice(y,2,g[y]+(!this.options.pedantic&&s[1].length/i.test(i[0])&&(e=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:i[0],inLink:e,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):D(i[0]):i[0]}},e.link=function(t){var e=this.rules.inline.link.exec(t);if(e){var n=e[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;var i=M(n.slice(0,-1),"\\");if((n.length-i.length)%2==0)return}else{var r=R(e[2],"()");if(r>-1){var s=(0===e[0].indexOf("!")?5:4)+e[1].length+r;e[2]=e[2].substring(0,r),e[0]=e[0].substring(0,s).trim(),e[3]=""}}var o=e[2],a="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);l&&(o=l[1],a=l[3])}else a=e[3]?e[3].slice(1,-1):"";return o=o.trim(),/^$/.test(n)?o.slice(1):o.slice(1,-1)),N(e,{href:o&&o.replace(this.rules.inline._escapes,"$1"),title:a&&a.replace(this.rules.inline._escapes,"$1")},e[0])}},e.reflink=function(t,e){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var i=(n[2]||n[1]).replace(/\s+/g," ");if(!(i=e[i.toLowerCase()])||!i.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return N(n,i,n[0])}},e.emStrong=function(t,e,n){void 0===n&&(n="");var i=this.rules.inline.emStrong.lDelim.exec(t);if(i&&(!i[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var r=i[1]||i[2]||"";if(!r||r&&(""===n||this.rules.inline.punctuation.exec(n))){var s,o,a=i[0].length-1,l=a,c=0,u="*"===i[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(u.lastIndex=0,e=e.slice(-1*t.length+a);null!=(i=u.exec(e));)if(s=i[1]||i[2]||i[3]||i[4]||i[5]||i[6]){if(o=s.length,i[3]||i[4]){l+=o;continue}if((i[5]||i[6])&&a%3&&!((a+o)%3)){c+=o;continue}if(!((l-=o)>0))return o=Math.min(o,o+l+c),Math.min(a,o)%2?{type:"em",raw:t.slice(0,a+i.index+o+1),text:t.slice(1,a+i.index+o)}:{type:"strong",raw:t.slice(0,a+i.index+o+1),text:t.slice(2,a+i.index+o-1)}}}}},e.codespan=function(t){var e=this.rules.inline.code.exec(t);if(e){var n=e[2].replace(/\n/g," "),i=/[^ ]/.test(n),r=/^ /.test(n)&&/ $/.test(n);return i&&r&&(n=n.substring(1,n.length-1)),n=D(n,!0),{type:"codespan",raw:e[0],text:n}}},e.br=function(t){var e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}},e.del=function(t){var e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2]}},e.autolink=function(t,e){var n,i,r=this.rules.inline.autolink.exec(t);if(r)return i="@"===r[2]?"mailto:"+(n=D(this.options.mangle?e(r[1]):r[1])):n=D(r[1]),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}},e.url=function(t,e){var n;if(n=this.rules.inline.url.exec(t)){var i,r;if("@"===n[2])r="mailto:"+(i=D(this.options.mangle?e(n[0]):n[0]));else{var s;do{s=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(s!==n[0]);i=D(n[0]),r="www."===n[1]?"http://"+i:i}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}},e.inlineText=function(t,e,n){var i,r=this.rules.inline.text.exec(t);if(r)return i=e?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):D(r[0]):r[0]:D(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:i}},t}(),j=O,F=E,B=T,V={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:j,table:j,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};V.def=F(V.def).replace("label",V._label).replace("title",V._title).getRegex(),V.bullet=/(?:[*+-]|\d{1,9}[.)])/,V.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,V.item=F(V.item,"gm").replace(/bull/g,V.bullet).getRegex(),V.listItemStart=F(/^( *)(bull) */).replace("bull",V.bullet).getRegex(),V.list=F(V.list).replace(/bull/g,V.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+V.def.source+")").getRegex(),V._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",V._comment=/|$)/,V.html=F(V.html,"i").replace("comment",V._comment).replace("tag",V._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),V.paragraph=F(V._paragraph).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.blockquote=F(V.blockquote).replace("paragraph",V.paragraph).getRegex(),V.normal=B({},V),V.gfm=B({},V.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),V.gfm.nptable=F(V.gfm.nptable).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.gfm.table=F(V.gfm.table).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.pedantic=B({},V.normal,{html:F("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",V._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:j,paragraph:F(V.normal._paragraph).replace("hr",V.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",V.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var z={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:j,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:j,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"};z.punctuation=F(z.punctuation).replace(/punctuation/g,z._punctuation).getRegex(),z.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,z.escapedEmSt=/\\\*|\\_/g,z._comment=F(V._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),z.emStrong.lDelim=F(z.emStrong.lDelim).replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimAst=F(z.emStrong.rDelimAst,"g").replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimUnd=F(z.emStrong.rDelimUnd,"g").replace(/punct/g,z._punctuation).getRegex(),z._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,z._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,z._email=/[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])?)+(?![-_])/,z.autolink=F(z.autolink).replace("scheme",z._scheme).replace("email",z._email).getRegex(),z._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,z.tag=F(z.tag).replace("comment",z._comment).replace("attribute",z._attribute).getRegex(),z._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,z._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,z._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,z.link=F(z.link).replace("label",z._label).replace("href",z._href).replace("title",z._title).getRegex(),z.reflink=F(z.reflink).replace("label",z._label).getRegex(),z.reflinkSearch=F(z.reflinkSearch,"g").replace("reflink",z.reflink).replace("nolink",z.nolink).getRegex(),z.normal=B({},z),z.pedantic=B({},z.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:F(/^!?\[(label)\]\((.*?)\)/).replace("label",z._label).getRegex(),reflink:F(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",z._label).getRegex()}),z.gfm=B({},z.normal,{escape:F(z.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(n="x"+n.toString(16)),i+="&#"+n+";";return i}var K=function(){function e(t){this.tokens=[],this.tokens.links=Object.create(null),this.options=t||$,this.options.tokenizer=this.options.tokenizer||new H,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var e={block:G.normal,inline:W.normal};this.options.pedantic?(e.block=G.pedantic,e.inline=W.pedantic):this.options.gfm&&(e.block=G.gfm,e.inline=this.options.breaks?W.breaks:W.gfm),this.tokenizer.rules=e}e.lex=function(t,n){return new e(n).lex(t)},e.lexInline=function(t,n){return new e(n).inlineTokens(t)};var n=e.prototype;return n.lex=function(t){return t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(t,this.tokens,!0),this.inline(this.tokens),this.tokens},n.blockTokens=function(t,e,n){var i,r,s,o,a,l,c=this;for(void 0===e&&(e=[]),void 0===n&&(n=!0),this.options.pedantic&&(t=t.replace(/^ +$/gm,""));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(n){return!!(i=n.call(c,t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)}))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),i.type&&e.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.nptable(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),i.tokens=this.blockTokens(i.text,[],n),e.push(i);continue}if(i=this.tokenizer.list(t)){for(t=t.substring(i.raw.length),s=i.items.length,r=0;r=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),n&&(i=this.tokenizer.paragraph(a))){o=e[e.length-1],l&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i),l=a.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"text"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(t){var u="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(u);break}throw new Error(u)}}return e},n.inline=function(t){var e,n,i,r,s,o,a=t.length;for(e=0;e0)for(;null!=(l=this.tokenizer.rules.inline.reflinkSearch.exec(h));)d.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(l=this.tokenizer.rules.inline.blockSkip.exec(h));)h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(l=this.tokenizer.rules.inline.escapedEmSt.exec(h));)h=h.slice(0,l.index)+"++"+h.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;t;)if(c||(u=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(n){return!!(s=n.call(r,t,e))&&(t=t.substring(s.raw.length),e.push(s),!0)}))){if(s=this.tokenizer.escape(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.tag(t,n,i)){t=t.substring(s.raw.length),n=s.inLink,i=s.inRawBlock,(o=e[e.length-1])&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.link(t)){t=t.substring(s.raw.length),"link"===s.type&&(s.tokens=this.inlineTokens(s.text,[],!0,i)),e.push(s);continue}if(s=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(s.raw.length),o=e[e.length-1],"link"===s.type?(s.tokens=this.inlineTokens(s.text,[],!0,i),e.push(s)):o&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.emStrong(t,h,u)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.codespan(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.br(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.del(t)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.autolink(t,Y)){t=t.substring(s.raw.length),e.push(s);continue}if(!n&&(s=this.tokenizer.url(t,Y))){t=t.substring(s.raw.length),e.push(s);continue}if(a=t,this.options.extensions&&this.options.extensions.startInline&&function(){var e=1/0,n=t.slice(1),i=void 0;r.options.extensions.startInline.forEach(function(t){"number"==typeof(i=t.call(this,n))&&i>=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),s=this.tokenizer.inlineText(a,i,X)){t=t.substring(s.raw.length),"_"!==s.raw.slice(-1)&&(u=s.raw.slice(-1)),c=!0,(o=e[e.length-1])&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(t){var p="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(p);break}throw new Error(p)}}return e},function(e,n,i){n&&t(e.prototype,n),i&&t(e,i)}(e,null,[{key:"rules",get:function(){return{block:G,inline:W}}}]),e}(),Q=i.exports.defaults,Z=C,J=x,tt=function(){function t(t){this.options=t||Q}var e=t.prototype;return e.code=function(t,e,n){var i=(e||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(t,i);null!=r&&r!==t&&(n=!0,t=r)}return t=t.replace(/\n$/,"")+"\n",i?'
    '+(n?t:J(t,!0))+"
    \n":"
    "+(n?t:J(t,!0))+"
    \n"},e.blockquote=function(t){return"
    \n"+t+"
    \n"},e.html=function(t){return t},e.heading=function(t,e,n,i){return this.options.headerIds?"'+t+"\n":""+t+"\n"},e.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},e.list=function(t,e,n){var i=e?"ol":"ul";return"<"+i+(e&&1!==n?' start="'+n+'"':"")+">\n"+t+"\n"},e.listitem=function(t){return"
  • "+t+"
  • \n"},e.checkbox=function(t){return" "},e.paragraph=function(t){return"

    "+t+"

    \n"},e.table=function(t,e){return e&&(e=""+e+""),"\n\n"+t+"\n"+e+"
    \n"},e.tablerow=function(t){return"\n"+t+"\n"},e.tablecell=function(t,e){var n=e.header?"th":"td";return(e.align?"<"+n+' align="'+e.align+'">':"<"+n+">")+t+"\n"},e.strong=function(t){return""+t+""},e.em=function(t){return""+t+""},e.codespan=function(t){return""+t+""},e.br=function(){return this.options.xhtml?"
    ":"
    "},e.del=function(t){return""+t+""},e.link=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i='"+n+""},e.image=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i=''+n+'":">")},e.text=function(t){return t},t}(),et=function(){function t(){}var e=t.prototype;return e.strong=function(t){return t},e.em=function(t){return t},e.codespan=function(t){return t},e.del=function(t){return t},e.html=function(t){return t},e.text=function(t){return t},e.link=function(t,e,n){return""+n},e.image=function(t,e,n){return""+n},e.br=function(){return""},t}(),nt=function(){function t(){this.seen={}}var e=t.prototype;return e.serialize=function(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},e.getNextSafeSlug=function(t,e){var n=t,i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[t];do{n=t+"-"+ ++i}while(this.seen.hasOwnProperty(n))}return e||(this.seen[t]=i,this.seen[n]=0),n},e.slug=function(t,e){void 0===e&&(e={});var n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)},t}(),it=tt,rt=et,st=nt,ot=i.exports.defaults,at=S,lt=K,ct=function(){function t(t){this.options=t||ot,this.options.renderer=this.options.renderer||new it,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new rt,this.slugger=new st}t.parse=function(e,n){return new t(n).parse(e)},t.parseInline=function(e,n){return new t(n).parseInline(e)};var e=t.prototype;return e.parse=function(t,e){void 0===e&&(e=!0);var n,i,r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w="",x=t.length;for(n=0;n0&&"text"===m.tokens[0].type?(m.tokens[0].text=v+" "+m.tokens[0].text,m.tokens[0].tokens&&m.tokens[0].tokens.length>0&&"text"===m.tokens[0].tokens[0].type&&(m.tokens[0].tokens[0].text=v+" "+m.tokens[0].tokens[0].text)):m.tokens.unshift({type:"text",text:v}):g+=v),g+=this.parse(m.tokens,f),u+=this.renderer.listitem(g,y,b);w+=this.renderer.list(u,d,p);continue;case"html":w+=this.renderer.html(h.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(h.tokens));continue;case"text":for(u=h.tokens?this.parseInline(h.tokens):h.text;n+1An error occurred:

    "+mt(l.message+"",!0)+"
    ";throw l}}return _t.options=_t.setOptions=function(t){return ft(_t.defaults,t),yt(_t.defaults),_t},_t.getDefaults=bt,_t.defaults=vt,_t.use=function(){for(var t=this,e=arguments.length,n=new Array(e),i=0;iAn error occurred:

    "+mt(i.message+"",!0)+"
    ";throw i}},_t.Parser=ct,_t.parser=ct.parse,_t.Renderer=ht,_t.TextRenderer=dt,_t.Lexer=lt,_t.lexer=lt.lex,_t.Tokenizer=ut,_t.Slugger=pt,_t.parse=_t,_t}()},29369:function(t,e,n){var i=n(56284),r=n(67830);function s(){this.clear()}s.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},s.prototype.enqueue=function(t){return this.items.push(t),++this.size},s.prototype.dequeue=function(){if(this.size){var t=this.items[this.offset];return 2*++this.offset>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,t}},s.prototype.peek=function(){if(this.size)return this.items[this.offset]},s.prototype.forEach=function(t,e){e=arguments.length>1?e:this;for(var n=this.offset,i=0,r=this.items.length;n=t.length)return{done:!0};var n=t[e];return e++,{value:n,done:!1}})},s.prototype.entries=function(){var t=this.items,e=this.offset,n=0;return new i(function(){if(e>=t.length)return{done:!0};var i=t[e];return e++,{value:[n++,i],done:!1}})},"undefined"!=typeof Symbol&&(s.prototype[Symbol.iterator]=s.prototype.values),s.prototype.toString=function(){return this.toArray().join(",")},s.prototype.toJSON=function(){return this.toArray()},s.prototype.inspect=function(){var t=this.toArray();return Object.defineProperty(t,"constructor",{value:s,enumerable:!1}),t},"undefined"!=typeof Symbol&&(s.prototype[Symbol.for("nodejs.util.inspect.custom")]=s.prototype.inspect),s.from=function(t){var e=new s;return r(t,function(t){e.enqueue(t)}),e},s.of=function(){return s.from(arguments)},t.exports=s},65593:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=function(t){function e(){t.apply(this,arguments),this.value=null,this.hasNext=!1,this.hasCompleted=!1}return i(e,t),e.prototype._subscribe=function(e){return this.hasError?(e.error(this.thrownError),s.Subscription.EMPTY):this.hasCompleted&&this.hasNext?(e.next(this.value),e.complete(),s.Subscription.EMPTY):t.prototype._subscribe.call(this,e)},e.prototype.next=function(t){this.hasCompleted||(this.value=t,this.hasNext=!0)},e.prototype.error=function(e){this.hasCompleted||t.prototype.error.call(this,e)},e.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&t.prototype.next.call(this,this.value),t.prototype.complete.call(this)},e}(r.Subject);e.AsyncSubject=o},73907:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(6594),o=function(t){function e(e){t.call(this),this._value=e}return i(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var n=t.prototype._subscribe.call(this,e);return n&&!n.closed&&e.next(this._value),n},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new s.ObjectUnsubscribedError;return this._value},e.prototype.next=function(e){t.prototype.next.call(this,this._value=e)},e}(r.Subject);e.BehaviorSubject=o},36888:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n,i){t.call(this),this.parent=e,this.outerValue=n,this.outerIndex=i,this.index=0}return i(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(n(42109).Subscriber);e.InnerSubscriber=r},94429:function(t,e,n){"use strict";var i=n(18705),r=function(){function t(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}},t.prototype.accept=function(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)},t.prototype.toObservable=function(){switch(this.kind){case"N":return i.Observable.of(this.value);case"E":return i.Observable.throw(this.error);case"C":return i.Observable.empty()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}();e.Notification=r},18705:function(t,e,n){"use strict";var i=n(80019),r=n(18154),s=n(45783),o=n(10142),a=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var i=this.operator,s=r.toSubscriber(t,e,n);if(i?i.call(s,this.source):s.add(this.source||!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){t.syncErrorThrown=!0,t.syncErrorValue=e,t.error(e)}},t.prototype.forEach=function(t,e){var n=this;if(e||(i.root.Rx&&i.root.Rx.config&&i.root.Rx.config.Promise?e=i.root.Rx.config.Promise:i.root.Promise&&(e=i.root.Promise)),!e)throw new Error("no Promise impl found");return new e(function(e,i){var r;r=n.subscribe(function(e){if(r)try{t(e)}catch(n){i(n),r.unsubscribe()}else t(e)},i,e)})},t.prototype._subscribe=function(t){return this.source.subscribe(t)},t.prototype[s.observable]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;ee&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i},e}(r.Subject);e.ReplaySubject=u;var h=function(t,e){this.time=t,this.value=e}},25430:function(t,e,n){"use strict";var i=n(2369);e.xQ=i.Subject,n(18705),n(24769),n(95914),n(88007),n(3194),n(61898),n(16301),n(23276),n(66593),n(13745),n(57362),n(24518),n(68789),n(30520),n(67370),n(86866),n(11505),n(5031),n(36780),n(17038),n(15718),n(27915),n(90763),n(6846),n(65662),n(6799),n(81854),n(612),n(10838),n(6725),n(8827),n(43511),n(38922),n(25178),n(56937),n(22947),n(82894),n(11206),n(94183),n(16653),n(17930),n(81118),n(50317),n(90674),n(66460),n(79232),n(3945),n(44674),n(73505),n(38749),n(16479),n(22744),n(44475),n(97384),n(8237),n(24937),n(99013),n(84042),n(44436),n(7099),n(6217),n(57476),n(72646),n(91573),n(27387),n(27366),n(88859),n(65425),n(16733),n(23381),n(80404),n(63770),n(53626),n(98851),n(84878),n(26544),n(53582),n(61749),n(34838),n(49681),n(46227),n(56455),n(40881),n(94315),n(92910),n(52442),n(84664),n(61250),n(28310),n(43027),n(18252),n(49571),n(31782),n(9800),n(41854),n(74839),n(1305),n(99144),n(89952),n(85863),n(2865),n(92667),n(22185),n(72919),n(88630),n(75458),n(40780),n(35099),n(57502),n(81676),n(20579),n(71323),n(84950),n(57113),n(95073),n(75654),n(59889),n(96611),n(81845),n(7828),n(4881),n(74568),n(32352),n(50169),n(93543),n(61690),n(15914),n(68583),n(44808),n(49088),n(72293),n(42109),n(65593),n(81959),n(73907),n(51493),n(94429),n(44640),n(11758),n(6594),n(13815),n(84536),n(73390),n(62688),n(24482),n(18353);n(55298);n(10142);n(85522),n(90680),n(97088),n(12948),n(28592),n(72121),n(45783);n(39053)},11965:function(t,e){"use strict";var n=function(){function t(e,n){void 0===n&&(n=t.now),this.SchedulerAction=e,this.now=n}return t.prototype.schedule=function(t,e,n){return void 0===e&&(e=0),new this.SchedulerAction(this,t).schedule(n,e)},t.now=Date.now?Date.now:function(){return+new Date},t}();e.Scheduler=n},2369:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(42109),o=n(72293),a=n(6594),l=n(9060),c=n(28592),u=function(t){function e(e){t.call(this,e),this.destination=e}return i(e,t),e}(s.Subscriber);e.SubjectSubscriber=u;var h=function(t){function e(){t.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return i(e,t),e.prototype[c.rxSubscriber]=function(){return new u(this)},e.prototype.lift=function(t){var e=new d(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;if(!this.isStopped)for(var e=this.observers,n=e.length,i=e.slice(),r=0;r=t.length)return void i.complete();i.next(e[n]),t.index=n+1,this.schedule(t)}},e.prototype._subscribe=function(t){var n=this.arrayLike,i=this.scheduler,r=n.length;if(i)return i.schedule(e.dispatch,0,{arrayLike:n,index:0,length:r,subscriber:t});for(var s=0;s1?new e(t,i):1===r?new s.ScalarObservable(t[0],i):new o.EmptyObservable(i)},e.dispatch=function(t){var e=t.array,n=t.index,i=t.subscriber;n>=t.count?i.complete():(i.next(e[n]),!i.closed&&(t.index=n+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.array,i=n.length,r=this.scheduler;if(r)return r.schedule(e.dispatch,0,{array:n,index:0,count:i,subscriber:t});for(var s=0;s1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}(o.Subscriber)},34078:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e){t.call(this),this.observableFactory=e}return i(e,t),e.create=function(t){return new e(t)},e.prototype._subscribe=function(t){return new l(t,this.observableFactory)},e}(r.Observable);e.DeferObservable=a;var l=function(t){function e(e,n){t.call(this,e),this.factory=n,this.tryDefer()}return i(e,t),e.prototype.tryDefer=function(){try{this._callFactory()}catch(t){this._error(t)}},e.prototype._callFactory=function(){var t=this.factory();t&&this.add(s.subscribeToResult(this,t))},e}(o.OuterSubscriber)},70481:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e){t.call(this),this.scheduler=e}return i(e,t),e.create=function(t){return new e(t)},e.dispatch=function(t){t.subscriber.complete()},e.prototype._subscribe=function(t){var n=this.scheduler;if(n)return n.schedule(e.dispatch,0,{subscriber:t});t.complete()},e}(n(18705).Observable);e.EmptyObservable=r},72210:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.error=e,this.scheduler=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){t.subscriber.error(t.error)},e.prototype._subscribe=function(t){var n=this.error,i=this.scheduler;if(t.syncErrorThrowable=!0,i)return i.schedule(e.dispatch,0,{error:n,subscriber:t});t.error(n)},e}(n(18705).Observable);e.ErrorObservable=r},56064:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(70481),o=n(48242),a=n(93658),l=n(84308),c=function(t){function e(e,n){t.call(this),this.sources=e,this.resultSelector=n}return i(e,t),e.create=function(){for(var t=[],n=0;nu?u:e:e}(t)),this.arr=t,this.idx=e,this.len=n}return t.prototype[o.iterator]=function(){return this},t.prototype.next=function(){return this.idx=t.count?i.complete():(i.next(e),!i.closed&&(t.index=n+1,t.start=e+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=0,i=this.start,r=this._count,s=this.scheduler;if(s)return s.schedule(e.dispatch,0,{index:n,count:r,start:i,subscriber:t});for(;;){if(n++>=r){t.complete();break}if(t.next(i++),t.closed)break}},e}(n(18705).Observable);e.RangeObservable=r},80478:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.value=e,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){var e=t.value,n=t.subscriber;t.done?n.complete():(n.next(e),!n.closed&&(t.done=!0,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.value,i=this.scheduler;if(i)return i.schedule(e.dispatch,0,{done:!1,value:n,subscriber:t});t.next(n),t.closed||t.complete()},e}(n(18705).Observable);e.ScalarObservable=r},82966:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(85522),o=n(39479),a=function(t){function e(e,n,i){void 0===n&&(n=0),void 0===i&&(i=s.asap),t.call(this),this.source=e,this.delayTime=n,this.scheduler=i,(!o.isNumeric(n)||n<0)&&(this.delayTime=0),(!i||"function"!=typeof i.schedule)&&(this.scheduler=s.asap)}return i(e,t),e.create=function(t,n,i){return void 0===n&&(n=0),void 0===i&&(i=s.asap),new e(t,n,i)},e.dispatch=function(t){return this.add(t.source.subscribe(t.subscriber))},e.prototype._subscribe=function(t){return this.scheduler.schedule(e.dispatch,this.delayTime,{source:this.source,subscriber:t})},e}(r.Observable);e.SubscribeOnObservable=a},92870:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(39479),s=n(18705),o=n(90680),a=n(41503),l=n(783),c=function(t){function e(e,n,i){void 0===e&&(e=0),t.call(this),this.period=-1,this.dueTime=0,r.isNumeric(n)?this.period=Number(n)<1?1:Number(n):a.isScheduler(n)&&(i=n),a.isScheduler(i)||(i=o.async),this.scheduler=i,this.dueTime=l.isDate(e)?+e-this.scheduler.now():e}return i(e,t),e.create=function(t,n,i){return void 0===t&&(t=0),new e(t,n,i)},e.dispatch=function(t){var e=t.index,n=t.period,i=t.subscriber;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}},e.prototype._subscribe=function(t){var n=this;return n.scheduler.schedule(e.dispatch,n.dueTime,{index:0,period:n.period,subscriber:t})},e}(s.Observable);e.TimerObservable=c},16196:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e,n){t.call(this),this.resourceFactory=e,this.observableFactory=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.prototype._subscribe=function(t){var e,n=this.resourceFactory,i=this.observableFactory;try{return e=n(),new l(t,e,i)}catch(r){t.error(r)}},e}(r.Observable);e.UsingObservable=a;var l=function(t){function e(e,n,i){t.call(this,e),this.resource=n,this.observableFactory=i,e.add(n),this.tryUse()}return i(e,t),e.prototype.tryUse=function(){try{var t=this.observableFactory.call(this,this.resource);t&&this.add(s.subscribeToResult(this,t))}catch(e){this._error(e)}},e}(o.OuterSubscriber)},59246:function(t,e,n){"use strict";var i=n(19183);e.bindCallback=i.BoundCallbackObservable.create},65571:function(t,e,n){"use strict";var i=n(78655);e.bindNodeCallback=i.BoundNodeCallbackObservable.create},24669:function(t,e,n){"use strict";var i=n(41503),r=n(48242),s=n(96177),o=n(49134);e.combineLatest=function(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof l&&(n=t.pop()),null===a&&1===t.length&&t[0]instanceof i.Observable?t[0]:o.mergeAll(n)(new r.ArrayObservable(t,a))}},94503:function(t,e,n){"use strict";var i=n(20143);e.never=i.NeverObservable.create},69657:function(t,e,n){"use strict";var i=n(96177);e.of=i.ArrayObservable.of},61395:function(t,e,n){"use strict";var i=n(46243);e.onErrorResumeNext=i.onErrorResumeNextStatic},95425:function(t,e,n){"use strict";var i=n(19770);e.pairs=i.PairsObservable.create},24330:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(48242),s=n(96177),o=n(84308),a=n(93658);e.race=function(){for(var t=[],e=0;e=2&&(o=arguments[1]);var a=Number.POSITIVE_INFINITY;return e>=3&&(a=arguments[2]),s.bufferTime(t,o,a,n)(this)}},92523:function(t,e,n){"use strict";var i=n(15440);e.bufferToggle=function(t,e){return i.bufferToggle(t,e)(this)}},49436:function(t,e,n){"use strict";var i=n(51786);e.bufferWhen=function(t){return i.bufferWhen(t)(this)}},64731:function(t,e,n){"use strict";var i=n(93017);e._catch=function(t){return i.catchError(t)(this)}},92273:function(t,e,n){"use strict";var i=n(17054);e.combineAll=function(t){return i.combineAll(t)(this)}},8709:function(t,e,n){"use strict";var i=n(49134);e.combineLatest=function(){for(var t=[],e=0;e=2?i.reduce(t,e)(this):i.reduce(t)(this)}},12931:function(t,e,n){"use strict";var i=n(15329);e.repeat=function(t){return void 0===t&&(t=-1),i.repeat(t)(this)}},68816:function(t,e,n){"use strict";var i=n(63964);e.repeatWhen=function(t){return i.repeatWhen(t)(this)}},17144:function(t,e,n){"use strict";var i=n(40241);e.retry=function(t){return void 0===t&&(t=-1),i.retry(t)(this)}},82766:function(t,e,n){"use strict";var i=n(23896);e.retryWhen=function(t){return i.retryWhen(t)(this)}},62068:function(t,e,n){"use strict";var i=n(92043);e.sample=function(t){return i.sample(t)(this)}},97013:function(t,e,n){"use strict";var i=n(90680),r=n(71239);e.sampleTime=function(t,e){return void 0===e&&(e=i.async),r.sampleTime(t,e)(this)}},98996:function(t,e,n){"use strict";var i=n(64949);e.scan=function(t,e){return arguments.length>=2?i.scan(t,e)(this):i.scan(t)(this)}},77033:function(t,e,n){"use strict";var i=n(88948);e.sequenceEqual=function(t,e){return i.sequenceEqual(t,e)(this)}},10377:function(t,e,n){"use strict";var i=n(35473);e.share=function(){return i.share()(this)}},71623:function(t,e,n){"use strict";var i=n(62704);e.shareReplay=function(t,e,n){return i.shareReplay(t,e,n)(this)}},91956:function(t,e,n){"use strict";var i=n(92223);e.single=function(t){return i.single(t)(this)}},72355:function(t,e,n){"use strict";var i=n(11189);e.skip=function(t){return i.skip(t)(this)}},69329:function(t,e,n){"use strict";var i=n(73346);e.skipLast=function(t){return i.skipLast(t)(this)}},68481:function(t,e,n){"use strict";var i=n(12928);e.skipUntil=function(t){return i.skipUntil(t)(this)}},587:function(t,e,n){"use strict";var i=n(69415);e.skipWhile=function(t){return i.skipWhile(t)(this)}},49292:function(t,e,n){"use strict";var i=n(30673);e.startWith=function(){for(var t=[],e=0;e0&&this.destination.next(e),t.prototype._complete.call(this)},e}(r.Subscriber),a=function(t){function e(e,n,i){t.call(this,e),this.bufferSize=n,this.startBufferEvery=i,this.buffers=[],this.count=0}return i(e,t),e.prototype._next=function(t){var e=this,n=e.bufferSize,i=e.startBufferEvery,r=e.buffers,s=e.count;this.count++,s%i==0&&r.push([]);for(var o=r.length;o--;){var a=r[o];a.push(t),a.length===n&&(r.splice(o,1),this.destination.next(a))}},e.prototype._complete=function(){for(var e=this.buffers,n=this.destination;e.length>0;){var i=e.shift();i.length>0&&n.next(i)}t.prototype._complete.call(this)},e}(r.Subscriber)},6489:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(90680),s=n(42109),o=n(41503);e.bufferTime=function(t){var e=arguments.length,n=r.async;o.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],e--);var i=null;e>=2&&(i=arguments[1]);var s=Number.POSITIVE_INFINITY;return e>=3&&(s=arguments[2]),function(e){return e.lift(new a(t,i,s,n))}};var a=function(){function t(t,e,n,i){this.bufferTimeSpan=t,this.bufferCreationInterval=e,this.maxBufferSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},t}(),l=function(){this.buffer=[]},c=function(t){function e(e,n,i,r,s){t.call(this,e),this.bufferTimeSpan=n,this.bufferCreationInterval=i,this.maxBufferSize=r,this.scheduler=s,this.contexts=[];var o=this.openContext();if(this.timespanOnly=null==i||i<0,this.timespanOnly)this.add(o.closeAction=s.schedule(u,n,{subscriber:this,context:o,bufferTimeSpan:n}));else{var a={bufferTimeSpan:n,bufferCreationInterval:i,subscriber:this,scheduler:s};this.add(o.closeAction=s.schedule(d,n,{subscriber:this,context:o})),this.add(s.schedule(h,i,a))}}return i(e,t),e.prototype._next=function(t){for(var e,n=this.contexts,i=n.length,r=0;r0;){var i=e.shift();n.next(i.buffer)}t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.contexts=null},e.prototype.onBufferFull=function(t){this.closeContext(t);var e=t.closeAction;if(e.unsubscribe(),this.remove(e),!this.closed&&this.timespanOnly){t=this.openContext();var n=this.bufferTimeSpan;this.add(t.closeAction=this.scheduler.schedule(u,n,{subscriber:this,context:t,bufferTimeSpan:n}))}},e.prototype.openContext=function(){var t=new l;return this.contexts.push(t),t},e.prototype.closeContext=function(t){this.destination.next(t.buffer);var e=this.contexts;(e?e.indexOf(t):-1)>=0&&e.splice(e.indexOf(t),1)},e}(s.Subscriber);function u(t){var e=t.subscriber,n=t.context;n&&e.closeContext(n),e.closed||(t.context=e.openContext(),t.context.closeAction=this.schedule(t,t.bufferTimeSpan))}function h(t){var e=t.bufferCreationInterval,n=t.bufferTimeSpan,i=t.subscriber,r=t.scheduler,s=i.openContext();i.closed||(i.add(s.closeAction=r.schedule(d,n,{subscriber:i,context:s})),this.schedule(t,e))}function d(t){t.subscriber.closeContext(t.context)}},15440:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(93658),o=n(84308);e.bufferToggle=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.openings,this.closingSelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(s.subscribeToResult(this,n))}return i(e,t),e.prototype._next=function(t){for(var e=this.contexts,n=e.length,i=0;i0;){var i=n.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,t.prototype._error.call(this,e)},e.prototype._complete=function(){for(var e=this.contexts;e.length>0;){var n=e.shift();this.destination.next(n.buffer),n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){t?this.closeBuffer(t):this.openBuffer(e)},e.prototype.notifyComplete=function(t){this.closeBuffer(t.context)},e.prototype.openBuffer=function(t){try{var e=this.closingSelector.call(this,t);e&&this.trySubscribe(e)}catch(n){this._error(n)}},e.prototype.closeBuffer=function(t){var e=this.contexts;if(e&&t){var n=t.subscription;this.destination.next(t.buffer),e.splice(e.indexOf(t),1),this.remove(n),n.unsubscribe()}},e.prototype.trySubscribe=function(t){var e=this.contexts,n=new r.Subscription,i={buffer:[],subscription:n};e.push(i);var o=s.subscribeToResult(this,t,i);!o||o.closed?this.closeBuffer(i):(o.context=i,this.add(o),n.add(o))},e}(o.OuterSubscriber)},51786:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.bufferWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.closingSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.closingSelector))},t}(),u=function(t){function e(e,n){t.call(this,e),this.closingSelector=n,this.subscribing=!1,this.openBuffer()}return i(e,t),e.prototype._next=function(t){this.buffer.push(t)},e.prototype._complete=function(){var e=this.buffer;e&&this.destination.next(e),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.buffer=null,this.subscribing=!1},e.prototype.notifyNext=function(t,e,n,i,r){this.openBuffer()},e.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},e.prototype.openBuffer=function(){var t=this.closingSubscription;t&&(this.remove(t),t.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];var e=s.tryCatch(this.closingSelector)();e===o.errorObject?this.error(o.errorObject.e):(t=new r.Subscription,this.closingSubscription=t,this.add(t),this.subscribing=!0,t.add(l.subscribeToResult(this,e)),this.subscribing=!1)},e}(a.OuterSubscriber)},93017:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.catchError=function(t){return function(e){var n=new o(t),i=e.lift(n);return n.caught=i}};var o=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.selector,this.caught))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.selector=n,this.caught=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(i){return void t.prototype.error.call(this,i)}this._unsubscribeAndRecycle(),this.add(s.subscribeToResult(this,n))}},e}(r.OuterSubscriber)},17054:function(t,e,n){"use strict";var i=n(49134);e.combineAll=function(t){return function(e){return e.lift(new i.CombineLatestOperator(t))}}},49134:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(84308),a=n(93658),l={};e.combineLatest=function(){for(var t=[],e=0;e0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var s=Math.max(0,n[0].time-i.now());this.schedule(t,s)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new u(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(a.Notification.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t)},e.prototype._complete=function(){this.scheduleNotification(a.Notification.createComplete())},e}(o.Subscriber),u=function(t,e){this.time=t,this.notification=e}},22944:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(18705),o=n(84308),a=n(93658);e.delayWhen=function(t,e){return e?function(n){return new u(n,e).lift(new l(t))}:function(e){return e.lift(new l(t))}};var l=function(){function t(t){this.delayDurationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.delayDurationSelector))},t}(),c=function(t){function e(e,n){t.call(this,e),this.delayDurationSelector=n,this.completed=!1,this.delayNotifierSubscriptions=[],this.values=[]}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(t),this.removeSubscription(r),this.tryComplete()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype.notifyComplete=function(t){var e=this.removeSubscription(t);e&&this.destination.next(e),this.tryComplete()},e.prototype._next=function(t){try{var e=this.delayDurationSelector(t);e&&this.tryDelay(e,t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){this.completed=!0,this.tryComplete()},e.prototype.removeSubscription=function(t){t.unsubscribe();var e=this.delayNotifierSubscriptions.indexOf(t),n=null;return-1!==e&&(n=this.values[e],this.delayNotifierSubscriptions.splice(e,1),this.values.splice(e,1)),n},e.prototype.tryDelay=function(t,e){var n=a.subscribeToResult(this,t,e);n&&!n.closed&&(this.add(n),this.delayNotifierSubscriptions.push(n)),this.values.push(e)},e.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},e}(o.OuterSubscriber),u=function(t){function e(e,n){t.call(this),this.source=e,this.subscriptionDelay=n}return i(e,t),e.prototype._subscribe=function(t){this.subscriptionDelay.subscribe(new h(t,this.source))},e}(s.Observable),h=function(t){function e(e,n){t.call(this),this.parent=e,this.source=n,this.sourceSubscribed=!1}return i(e,t),e.prototype._next=function(t){this.subscribeToSource()},e.prototype._error=function(t){this.unsubscribe(),this.parent.error(t)},e.prototype._complete=function(){this.subscribeToSource()},e.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},e}(r.Subscriber)},95591:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.dematerialize=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){t.observe(this.destination)},e}(r.Subscriber)},25753:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658),o=n(40317);e.distinct=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.keySelector=t,this.flushes=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.keySelector,this.flushes))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=n,this.values=new o.Set,i&&this.add(s.subscribeToResult(this,i))}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.values.clear()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype._next=function(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)},e.prototype._useKeySelector=function(t){var e,n=this.destination;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)},e.prototype._finalizeNext=function(t,e){var n=this.values;n.has(t)||(n.add(t),this.destination.next(e))},e}(r.OuterSubscriber);e.DistinctSubscriber=l},65608:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.distinctUntilChanged=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compare=t,this.keySelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compare,this.keySelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=i,this.hasKey=!1,"function"==typeof n&&(this.compare=n)}return i(e,t),e.prototype.compare=function(t,e){return t===e},e.prototype._next=function(t){var e=t;if(this.keySelector&&(e=s.tryCatch(this.keySelector)(t))===o.errorObject)return this.destination.error(o.errorObject.e);var n=!1;if(this.hasKey){if((n=s.tryCatch(this.compare)(this.key,e))===o.errorObject)return this.destination.error(o.errorObject.e)}else this.hasKey=!0;!1===Boolean(n)&&(this.key=e,this.destination.next(t))},e}(r.Subscriber)},8330:function(t,e,n){"use strict";var i=n(65608);e.distinctUntilKeyChanged=function(t,e){return i.distinctUntilChanged(function(n,i){return e?e(n[t],i[t]):n[t]===i[t]})}},29264:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.elementAt=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){if(this.index=t,this.defaultValue=e,t<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.index,this.defaultValue))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.index=n,this.defaultValue=i}return i(e,t),e.prototype._next=function(t){0==this.index--&&(this.destination.next(t),this.destination.complete())},e.prototype._complete=function(){var t=this.destination;this.index>=0&&(void 0!==this.defaultValue?t.next(this.defaultValue):t.error(new s.ArgumentOutOfRangeError)),t.complete()},e}(r.Subscriber)},26285:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.every=function(t,e){return function(n){return n.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg,this.source))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.predicate=n,this.thisArg=i,this.source=r,this.index=0,this.thisArg=i||this}return i(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},93229:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaust=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e),this.hasCompleted=!1,this.hasSubscription=!1}return i(e,t),e.prototype._next=function(t){this.hasSubscription||(this.hasSubscription=!0,this.add(s.subscribeToResult(this,t)))},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},15758:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaustMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}return i(e,t),e.prototype._next=function(t){this.hasSubscription||this.tryNext(t)},e.prototype.tryNext=function(t){var e=this.index++,n=this.destination;try{var i=this.project(t,e);this.hasSubscription=!0,this.add(s.subscribeToResult(this,i,t,e))}catch(r){n.error(r)}},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.trySelectResult(t,e,n,i):s.next(e)},e.prototype.trySelectResult=function(t,e,n,i){var r=this.resultSelector,s=this.destination;try{var o=r(t,e,n,i);s.next(o)}catch(a){s.error(a)}},e.prototype.notifyError=function(t){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},55364:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(84308),a=n(93658);e.expand=function(t,e,n){return void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=void 0),e=(e||0)<1?Number.POSITIVE_INFINITY:e,function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.project=t,this.concurrent=e,this.scheduler=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.project,this.concurrent,this.scheduler))},t}();e.ExpandOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.project=n,this.concurrent=i,this.scheduler=r,this.index=0,this.active=0,this.hasCompleted=!1,i0&&this._next(e.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},e}(o.OuterSubscriber);e.ExpandSubscriber=c},27015:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.filter=function(t,e){return function(n){return n.lift(new s(t,e))}};var s=function(){function t(t,e){this.predicate=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.thisArg=i,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)},e}(r.Subscriber)},94367:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293);e.finalize=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.callback))},t}(),a=function(t){function e(e,n){t.call(this,e),this.add(new s.Subscription(n))}return i(e,t),e}(r.Subscriber)},16700:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.find=function(t,e){if("function"!=typeof t)throw new TypeError("predicate is not a function");return function(n){return n.lift(new s(t,n,!1,e))}};var s=function(){function t(t,e,n,i){this.predicate=t,this.source=e,this.yieldIndex=n,this.thisArg=i}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.source,this.yieldIndex,this.thisArg))},t}();e.FindValueOperator=s;var o=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.source=i,this.yieldIndex=r,this.thisArg=s,this.index=0}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){var e=this.predicate,n=this.thisArg,i=this.index++;try{e.call(n||this,t,i,this.source)&&this.notifyComplete(this.yieldIndex?i:t)}catch(r){this.destination.error(r)}},e.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},e}(r.Subscriber);e.FindValueSubscriber=o},86452:function(t,e,n){"use strict";var i=n(16700);e.findIndex=function(t,e){return function(n){return n.lift(new i.FindValueOperator(t,n,!0,e))}}},12309:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.first=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.index=0,this.hasCompleted=!1,this._emitted=!1}return i(e,t),e.prototype._next=function(t){var e=this.index++;this.predicate?this._tryPredicate(t,e):this._emit(t,e)},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}n&&this._emit(t,e)},e.prototype._emit=function(t,e){this.resultSelector?this._tryResultSelector(t,e):this._emitFinal(t)},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this._emitFinal(n)},e.prototype._emitFinal=function(t){var e=this.destination;this._emitted||(this._emitted=!0,e.next(t),e.complete(),this.hasCompleted=!0)},e.prototype._complete=function(){var t=this.destination;this.hasCompleted||void 0===this.defaultValue?this.hasCompleted||t.error(new s.EmptyError):(t.next(this.defaultValue),t.complete())},e}(r.Subscriber)},92577:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293),o=n(18705),a=n(2369),l=n(49754),c=n(30764);e.groupBy=function(t,e,n,i){return function(r){return r.lift(new u(t,e,n,i))}};var u=function(){function t(t,e,n,i){this.keySelector=t,this.elementSelector=e,this.durationSelector=n,this.subjectSelector=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},t}(),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.keySelector=n,this.elementSelector=i,this.durationSelector=r,this.subjectSelector=s,this.groups=null,this.attemptedToUnsubscribe=!1,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.keySelector(t)}catch(n){return void this.error(n)}this._group(t,e)},e.prototype._group=function(t,e){var n=this.groups;n||(n=this.groups="string"==typeof e?new c.FastMap:new l.Map);var i,r=n.get(e);if(this.elementSelector)try{i=this.elementSelector(t)}catch(u){this.error(u)}else i=t;if(!r){r=this.subjectSelector?this.subjectSelector():new a.Subject,n.set(e,r);var s=new p(e,r,this);if(this.destination.next(s),this.durationSelector){var o=void 0;try{o=this.durationSelector(new p(e,r))}catch(u){return void this.error(u)}this.add(o.subscribe(new d(e,r,this)))}}r.closed||r.next(i)},e.prototype._error=function(t){var e=this.groups;e&&(e.forEach(function(e,n){e.error(t)}),e.clear()),this.destination.error(t)},e.prototype._complete=function(){var t=this.groups;t&&(t.forEach(function(t,e){t.complete()}),t.clear()),this.destination.complete()},e.prototype.removeGroup=function(t){this.groups.delete(t)},e.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&t.prototype.unsubscribe.call(this))},e}(r.Subscriber),d=function(t){function e(e,n,i){t.call(this,n),this.key=e,this.group=n,this.parent=i}return i(e,t),e.prototype._next=function(t){this.complete()},e.prototype._unsubscribe=function(){var t=this.parent,e=this.key;this.key=this.parent=null,t&&t.removeGroup(e)},e}(r.Subscriber),p=function(t){function e(e,n,i){t.call(this),this.key=e,this.groupSubject=n,this.refCountSubscription=i}return i(e,t),e.prototype._subscribe=function(t){var e=new s.Subscription,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&e.add(new f(n)),e.add(i.subscribe(t)),e},e}(o.Observable);e.GroupedObservable=p;var f=function(t){function e(e){t.call(this),this.parent=e,e.count++}return i(e,t),e.prototype.unsubscribe=function(){var e=this.parent;!e.closed&&!this.closed&&(t.prototype.unsubscribe.call(this),e.count-=1,0===e.count&&e.attemptedToUnsubscribe&&e.unsubscribe())},e}(s.Subscription)},86898:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(68668);e.ignoreElements=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype._next=function(t){s.noop()},e}(r.Subscriber)},89121:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.isEmpty=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},4636:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.last=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.hasValue=!1,this.index=0,void 0!==r&&(this.lastValue=r,this.hasValue=!0)}return i(e,t),e.prototype._next=function(t){var e=this.index++;if(this.predicate)this._tryPredicate(t,e);else{if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}if(n){if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this.lastValue=n,this.hasValue=!0},e.prototype._complete=function(){var t=this.destination;this.hasValue?(t.next(this.lastValue),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},40119:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.map=function(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 s(t,e))}};var s=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.project,this.thisArg))},t}();e.MapOperator=s;var o=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.count=0,this.thisArg=i||this}return i(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.Subscriber)},23491:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.mapTo=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.value=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.value))},t}(),o=function(t){function e(e,n){t.call(this,e),this.value=n}return i(e,t),e.prototype._next=function(t){this.destination.next(this.value)},e}(r.Subscriber)},71177:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(94429);e.materialize=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){this.destination.next(s.Notification.createNext(t))},e.prototype._error=function(t){var e=this.destination;e.next(s.Notification.createError(t)),e.complete()},e.prototype._complete=function(){var t=this.destination;t.next(s.Notification.createComplete()),t.complete()},e}(r.Subscriber)},33499:function(t,e,n){"use strict";var i=n(97369);e.max=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)>0?e:n}:function(t,e){return t>e?t:e})}},56098:function(t,e,n){"use strict";var i=n(38781),r=n(38781);e.mergeStatic=r.merge,e.merge=function(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(s.OuterSubscriber);e.MergeMapSubscriber=a},6693:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.mergeMapTo=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"number"==typeof e&&(n=e,e=null),function(i){return i.lift(new o(t,e,n))}};var o=function(){function t(t,e,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.ish=t,this.resultSelector=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.ish,this.resultSelector,this.concurrent))},t}();e.MergeMapToOperator=o;var a=function(t){function e(e,n,i,r){void 0===r&&(r=Number.POSITIVE_INFINITY),t.call(this,e),this.ish=n,this.resultSelector=i,this.concurrent=r,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber);e.MergeMapToSubscriber=a},7550:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(93658),a=n(84308);e.mergeScan=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.accumulator=t,this.seed=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.accumulator,this.seed,this.concurrent))},t}();e.MergeScanOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this.acc=i,this.concurrent=r,this.hasValue=!1,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},e}(a.OuterSubscriber);e.MergeScanSubscriber=c},51213:function(t,e,n){"use strict";var i=n(97369);e.min=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)<0?e:n}:function(t,e){return t=2?function(n){return o.pipe(i.scan(t,e),r.takeLast(1),s.defaultIfEmpty(e))(n)}:function(e){return o.pipe(i.scan(function(e,n,i){return t(e,n,i+1)}),r.takeLast(1))(e)}}},1694:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.refCount=function(){return function(t){return t.lift(new s(t))}};var s=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var i=new o(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r},t}(),o=function(t){function e(e,n){t.call(this,e),this.connectable=n}return i(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._refCount;if(e<=0)this.connection=null;else if(t._refCount=e-1,e>1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null},e}(r.Subscriber)},15329:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(70481);e.repeat=function(t){return void 0===t&&(t=-1),function(e){return 0===t?new s.EmptyObservable:e.lift(new o(t<0?-1:t-1,e))}};var o=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.count,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.complete=function(){if(!this.isStopped){var e=this.source,n=this.count;if(0===n)return t.prototype.complete.call(this);n>-1&&(this.count=n-1),e.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},63964:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.repeatWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,e))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i,this.sourceIsBeingSubscribedTo=!0}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},e.prototype.notifyComplete=function(e){if(!1===this.sourceIsBeingSubscribedTo)return t.prototype.complete.call(this)},e.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return t.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next()}},e.prototype._unsubscribe=function(){var t=this.notifications,e=this.retriesSubscription;t&&(t.unsubscribe(),this.notifications=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype._unsubscribeAndRecycle=function(){var e=this,n=e.notifications,i=e.retries,r=e.retriesSubscription;return this.notifications=null,this.retries=null,this.retriesSubscription=null,t.prototype._unsubscribeAndRecycle.call(this),this.notifications=n,this.retries=i,this.retriesSubscription=r,this},e.prototype.subscribeToRetries=function(){this.notifications=new r.Subject;var e=s.tryCatch(this.notifier)(this.notifications);if(e===o.errorObject)return t.prototype.complete.call(this);this.retries=e,this.retriesSubscription=l.subscribeToResult(this,e)},e}(a.OuterSubscriber)},40241:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.retry=function(t){return void 0===t&&(t=-1),function(e){return e.lift(new s(t,e))}};var s=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.count,this.source))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return t.prototype.error.call(this,e);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},23896:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.retryWhen=function(t){return function(e){return e.lift(new c(t,e))}};var c=function(){function t(t,e){this.notifier=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,this.source))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.errors,i=this.retries,a=this.retriesSubscription;if(i)this.errors=null,this.retriesSubscription=null;else{if(n=new r.Subject,(i=s.tryCatch(this.notifier)(n))===o.errorObject)return t.prototype.error.call(this,o.errorObject.e);a=l.subscribeToResult(this,i)}this._unsubscribeAndRecycle(),this.errors=n,this.retries=i,this.retriesSubscription=a,n.next(e)}},e.prototype._unsubscribe=function(){var t=this.errors,e=this.retriesSubscription;t&&(t.unsubscribe(),this.errors=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype.notifyNext=function(t,e,n,i,r){var s=this,o=s.errors,a=s.retries,l=s.retriesSubscription;this.errors=null,this.retries=null,this.retriesSubscription=null,this._unsubscribeAndRecycle(),this.errors=o,this.retries=a,this.retriesSubscription=l,this.source.subscribe(this)},e}(a.OuterSubscriber)},92043:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.sample=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new a(t),i=e.subscribe(n);return i.add(s.subscribeToResult(n,this.notifier)),i},t}(),a=function(t){function e(){t.apply(this,arguments),this.hasValue=!1}return i(e,t),e.prototype._next=function(t){this.value=t,this.hasValue=!0},e.prototype.notifyNext=function(t,e,n,i,r){this.emitValue()},e.prototype.notifyComplete=function(){this.emitValue()},e.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},e}(r.OuterSubscriber)},71239:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(90680);e.sampleTime=function(t,e){return void 0===e&&(e=s.async),function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.period=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.period,this.scheduler))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.period=n,this.scheduler=i,this.hasValue=!1,this.add(i.schedule(l,n,{subscriber:this,period:n}))}return i(e,t),e.prototype._next=function(t){this.lastValue=t,this.hasValue=!0},e.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},e}(r.Subscriber);function l(t){var e=t.period;t.subscriber.notifyNext(),this.schedule(t,e)}},64949:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.scan=function(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.accumulator,this.seed,this.hasSeed))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this._seed=i,this.hasSeed=r,this.index=0}return i(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(i){this.destination.error(i)}this.seed=e,this.destination.next(e)},e}(r.Subscriber)},88948:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.sequenceEqual=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compareTo=t,this.comparor=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compareTo,this.comparor))},t}();e.SequenceEqualOperator=a;var l=function(t){function e(e,n,i){t.call(this,e),this.compareTo=n,this.comparor=i,this._a=[],this._b=[],this._oneComplete=!1,this.add(n.subscribe(new c(e,this)))}return i(e,t),e.prototype._next=function(t){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(t),this.checkValues())},e.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},e.prototype.checkValues=function(){for(var t=this,e=t._a,n=t._b,i=t.comparor;e.length>0&&n.length>0;){var r=e.shift(),a=n.shift(),l=!1;i?(l=s.tryCatch(i)(r,a))===o.errorObject&&this.destination.error(o.errorObject.e):l=r===a,l||this.emit(!1)}},e.prototype.emit=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype.nextB=function(t){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(t),this.checkValues())},e}(r.Subscriber);e.SequenceEqualSubscriber=l;var c=function(t){function e(e,n){t.call(this,e),this.parent=n}return i(e,t),e.prototype._next=function(t){this.parent.nextB(t)},e.prototype._error=function(t){this.parent.error(t)},e.prototype._complete=function(){this.parent._complete()},e}(r.Subscriber)},35473:function(t,e,n){"use strict";var i=n(27372),r=n(1694),s=n(2369);function o(){return new s.Subject}e.share=function(){return function(t){return r.refCount()(i.multicast(o)(t))}}},62704:function(t,e,n){"use strict";var i=n(81959);e.shareReplay=function(t,e,n){return function(r){return r.lift(function(t,e,n){var r,s,o=0,a=!1,l=!1;return function(c){o++,(!r||a)&&(a=!1,r=new i.ReplaySubject(t,e,n),s=c.subscribe({next:function(t){r.next(t)},error:function(t){a=!0,r.error(t)},complete:function(){l=!0,r.complete()}}));var u=r.subscribe(this);return function(){o--,u.unsubscribe(),s&&0===o&&l&&s.unsubscribe()}}}(t,e,n))}}},92223:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.single=function(t){return function(e){return e.lift(new o(t,e))}};var o=function(){function t(t,e){this.predicate=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.source=i,this.seenValue=!1,this.index=0}return i(e,t),e.prototype.applySingleValue=function(t){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=t)},e.prototype._next=function(t){var e=this.index++;this.predicate?this.tryNext(t,e):this.applySingleValue(t)},e.prototype.tryNext=function(t,e){try{this.predicate(t,e,this.source)&&this.applySingleValue(t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){var t=this.destination;this.index>0?(t.next(this.seenValue?this.singleValue:void 0),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},11189:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.skip=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.total=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.total))},t}(),o=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){++this.count>this.total&&this.destination.next(t)},e}(r.Subscriber)},73346:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.skipLast=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){if(this._skipCount=t,this._skipCount<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(0===this._skipCount?new r.Subscriber(t):new a(t,this._skipCount))},t}(),a=function(t){function e(e,n){t.call(this,e),this._skipCount=n,this._count=0,this._ring=new Array(n)}return i(e,t),e.prototype._next=function(t){var e=this._skipCount,n=this._count++;if(n1?new i.ArrayObservable(t,n):new s.EmptyObservable(n),e)}}},10118:function(t,e,n){"use strict";var i=n(82966);e.subscribeOn=function(t,e){return void 0===e&&(e=0),function(n){return n.lift(new r(t,e))}};var r=function(){function t(t,e){this.scheduler=t,this.delay=e}return t.prototype.call=function(t,e){return new i.SubscribeOnObservable(e,this.delay,this.scheduler).subscribe(t)},t}()},77243:function(t,e,n){"use strict";var i=n(18483),r=n(5027);e.switchAll=function(){return i.switchMap(r.identity)}},18483:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var i=this.innerSubscription;i&&i.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,t,e,n))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){this.resultSelector?this._tryNotifyNext(t,e,n,i):this.destination.next(e)},e.prototype._tryNotifyNext=function(t,e,n,i){var r;try{r=this.resultSelector(t,e,n,i)}catch(s){return void this.destination.error(s)}this.destination.next(r)},e}(r.OuterSubscriber)},10684:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMapTo=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.observable=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.observable,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.inner=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e=this.innerSubscription;e&&e.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,this.inner,t,this.index++))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.tryResultSelector(t,e,n,i):s.next(e)},e.prototype.tryResultSelector=function(t,e,n,i){var r,s=this.resultSelector,o=this.destination;try{r=s(t,e,n,i)}catch(a){return void o.error(a)}o.next(r)},e}(r.OuterSubscriber)},44396:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.take=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))},e}(r.Subscriber)},73935:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.takeLast=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.ring=new Array,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.ring,n=this.total,i=this.count++;e.length0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,o=r.length,a=0;a=0&&l%e==0&&!this.closed&&r.shift().complete(),++this.count%e==0&&!this.closed){var c=new s.Subject;r.push(c),n.next(c)}},e.prototype._error=function(t){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().complete();this.destination.complete()},e.prototype._unsubscribe=function(){this.count=0,this.windows=null},e}(r.Subscriber)},42603:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(90680),o=n(42109),a=n(39479),l=n(41503);e.windowTime=function(t){var e=s.async,n=null,i=Number.POSITIVE_INFINITY;return l.isScheduler(arguments[3])&&(e=arguments[3]),l.isScheduler(arguments[2])?e=arguments[2]:a.isNumeric(arguments[2])&&(i=arguments[2]),l.isScheduler(arguments[1])?e=arguments[1]:a.isNumeric(arguments[1])&&(n=arguments[1]),function(r){return r.lift(new c(t,n,i,e))}};var c=function(){function t(t,e,n,i){this.windowTimeSpan=t,this.windowCreationInterval=e,this.maxWindowSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},t}(),u=function(t){function e(){t.apply(this,arguments),this._numberOfNextedValues=0}return i(e,t),e.prototype.next=function(e){this._numberOfNextedValues++,t.prototype.next.call(this,e)},Object.defineProperty(e.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),e}(r.Subject),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.destination=e,this.windowTimeSpan=n,this.windowCreationInterval=i,this.maxWindowSize=r,this.scheduler=s,this.windows=[];var o=this.openWindow();if(null!==i&&i>=0){var a={windowTimeSpan:n,windowCreationInterval:i,subscriber:this,scheduler:s};this.add(s.schedule(f,n,{subscriber:this,window:o,context:null})),this.add(s.schedule(p,i,a))}else this.add(s.schedule(d,n,{subscriber:this,window:o,windowTimeSpan:n}))}return i(e,t),e.prototype._next=function(t){for(var e=this.windows,n=e.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}},e.prototype._error=function(t){for(var e=this.windows;e.length>0;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){for(var t=this.windows;t.length>0;){var e=t.shift();e.closed||e.complete()}this.destination.complete()},e.prototype.openWindow=function(){var t=new u;return this.windows.push(t),this.destination.next(t),t},e.prototype.closeWindow=function(t){t.complete();var e=this.windows;e.splice(e.indexOf(t),1)},e}(o.Subscriber);function d(t){var e=t.subscriber,n=t.windowTimeSpan,i=t.window;i&&e.closeWindow(i),t.window=e.openWindow(),this.schedule(t,n)}function p(t){var e=t.windowTimeSpan,n=t.subscriber,i=t.scheduler,r=t.windowCreationInterval,s=n.openWindow(),o=this,a={action:o,subscription:null};a.subscription=i.schedule(f,e,{subscriber:n,window:s,context:a}),o.add(a.subscription),o.schedule(t,r)}function f(t){var e=t.subscriber,n=t.window,i=t.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),e.closeWindow(n)}},59048:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=n(33463),a=n(85814),l=n(84308),c=n(93658);e.windowToggle=function(t,e){return function(n){return n.lift(new u(t,e))}};var u=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.openings,this.closingSelector))},t}(),h=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(this.openSubscription=c.subscribeToResult(this,n,n))}return i(e,t),e.prototype._next=function(t){var e=this.contexts;if(e)for(var n=e.length,i=0;i0){var o=s.indexOf(n);-1!==o&&s.splice(o,1)}},e.prototype.notifyComplete=function(){},e.prototype._next=function(t){if(0===this.toRespond.length){var e=[t].concat(this.values);this.project?this._tryProject(e):this.destination.next(e)}},e.prototype._tryProject=function(t){var e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.OuterSubscriber)},9477:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(42109),a=n(84308),l=n(93658),c=n(72121);function u(){for(var t=[],e=0;ethis.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),g=function(t){function e(e,n,i){t.call(this,e),this.parent=n,this.observable=i,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return i(e,t),e.prototype[c.iterator]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){this.buffer.push(e),this.parent.checkIterators()},e.prototype.subscribe=function(t,e){return l.subscribeToResult(this,this.observable,this,e)},e}(a.OuterSubscriber)},33310:function(t,e,n){"use strict";var i=n(9477);e.zipAll=function(t){return function(e){return e.lift(new i.ZipOperator(t))}}},28101:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this)}return i(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(n(72293).Subscription);e.Action=r},67529:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=n(95018),o=function(t){function e(e,n){t.call(this,e,n),this.scheduler=e,this.work=n}return i(e,t),e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=s.AnimationFrame.requestAnimationFrame(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(s.AnimationFrame.cancelAnimationFrame(n),e.scheduled=void 0)},e}(r.AsyncAction);e.AnimationFrameAction=o},68909:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=r.Immediate.setImmediate(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(r.Immediate.clearImmediate(n),e.scheduled=void 0)},e}(n(12624).AsyncAction);e.AsapAction=s},25766:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.schedule.call(this,e,n):(this.delay=n,this.state=e,this.scheduler.flush(this),this)},e.prototype.execute=function(e,n){return n>0||this.closed?t.prototype.execute.call(this,e,n):this._execute(e,n)},e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,i):e.flush(this)},e}(n(12624).AsyncAction);e.QueueAction=r},77373:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e}(n(42704).AsyncScheduler);e.QueueScheduler=r},18353:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=function(t){function e(e,n){var i=this;void 0===e&&(e=o),void 0===n&&(n=Number.POSITIVE_INFINITY),t.call(this,e,function(){return i.frame}),this.maxFrames=n,this.frame=0,this.index=-1}return i(e,t),e.prototype.flush=function(){for(var t,e,n=this.actions,i=this.maxFrames;(e=n.shift())&&(this.frame=e.delay)<=i&&!(t=e.execute(e.state,e.delay)););if(t){for(;e=n.shift();)e.unsubscribe();throw t}},e.frameTimeFactor=10,e}(n(42704).AsyncScheduler);e.VirtualTimeScheduler=s;var o=function(t){function e(e,n,i){void 0===i&&(i=e.index+=1),t.call(this,e,n),this.scheduler=e,this.work=n,this.index=i,this.active=!0,this.index=e.index=i}return i(e,t),e.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return t.prototype.schedule.call(this,n,i);this.active=!1;var r=new e(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},e.prototype.requestAsyncId=function(t,n,i){void 0===i&&(i=0),this.delay=t.frame+i;var r=t.actions;return r.push(this),r.sort(e.sortActions),!0},e.prototype.recycleAsyncId=function(t,e,n){void 0===n&&(n=0)},e.prototype._execute=function(e,n){if(!0===this.active)return t.prototype._execute.call(this,e,n)},e.sortActions=function(t,e){return t.delay===e.delay?t.index===e.index?0:t.index>e.index?1:-1:t.delay>e.delay?1:-1},e}(r.AsyncAction);e.VirtualAction=o},12948:function(t,e,n){"use strict";var i=n(67529),r=n(68909);e.animationFrame=new r.AnimationFrameScheduler(i.AnimationFrameAction)},85522:function(t,e,n){"use strict";var i=n(3496),r=n(25766);e.asap=new r.AsapScheduler(i.AsapAction)},90680:function(t,e,n){"use strict";var i=n(12624),r=n(42704);e.async=new r.AsyncScheduler(i.AsyncAction)},97088:function(t,e,n){"use strict";var i=n(7100),r=n(77373);e.queue=new r.QueueScheduler(i.QueueAction)},72121:function(t,e,n){"use strict";var i=n(80019);function r(t){var e=t.Symbol;if("function"==typeof e)return e.iterator||(e.iterator=e("iterator polyfill")),e.iterator;var n=t.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var i=t.Map;if(i)for(var r=Object.getOwnPropertyNames(i.prototype),s=0;s0;)e.shift().setup();t.prototype.flush.call(this);for(var n=this.flushTests.filter(function(t){return t.ready});n.length>0;){var i=n.shift();this.assertDeepEqual(i.actual,i.expected)}},e.parseMarblesAsSubscriptions=function(t){if("string"!=typeof t)return new l.SubscriptionLog(Number.POSITIVE_INFINITY);for(var e=t.length,n=-1,i=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,s=0;s-1?n:o;break;case"!":if(r!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");r=n>-1?n:o;break;default:throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+a+"'.")}}return r<0?new l.SubscriptionLog(i):new l.SubscriptionLog(i,r)},e.parseMarbles=function(t,e,n,i){if(void 0===i&&(i=!1),-1!==t.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var r=t.length,a=[],l=t.indexOf("^"),c=-1===l?0:l*-this.frameTimeFactor,u="object"!=typeof e?function(t){return t}:function(t){return i&&e[t]instanceof o.ColdObservable?e[t].messages:e[t]},h=-1,d=0;d-1?h:p,notification:f})}return a},e}(c.VirtualTimeScheduler);e.TestScheduler=u},95018:function(t,e,n){"use strict";var i=n(80019),r=function(t){t.requestAnimationFrame?(this.cancelAnimationFrame=t.cancelAnimationFrame.bind(t),this.requestAnimationFrame=t.requestAnimationFrame.bind(t)):t.mozRequestAnimationFrame?(this.cancelAnimationFrame=t.mozCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.mozRequestAnimationFrame.bind(t)):t.webkitRequestAnimationFrame?(this.cancelAnimationFrame=t.webkitCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.webkitRequestAnimationFrame.bind(t)):t.msRequestAnimationFrame?(this.cancelAnimationFrame=t.msCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.msRequestAnimationFrame.bind(t)):t.oRequestAnimationFrame?(this.cancelAnimationFrame=t.oCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.oRequestAnimationFrame.bind(t)):(this.cancelAnimationFrame=t.clearTimeout.bind(t),this.requestAnimationFrame=function(e){return t.setTimeout(e,1e3/60)})};e.RequestAnimationFrameDefinition=r,e.AnimationFrame=new r(i.root)},11758:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"argument out of range");this.name=e.name="ArgumentOutOfRangeError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.ArgumentOutOfRangeError=i},44640:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"no elements in sequence");this.name=e.name="EmptyError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.EmptyError=i},30764:function(t,e){"use strict";var n=function(){function t(){this.values={}}return t.prototype.delete=function(t){return this.values[t]=null,!0},t.prototype.set=function(t,e){return this.values[t]=e,this},t.prototype.get=function(t){return this.values[t]},t.prototype.forEach=function(t,e){var n=this.values;for(var i in n)n.hasOwnProperty(i)&&null!==n[i]&&t.call(e,n[i],i)},t.prototype.clear=function(){this.values={}},t}();e.FastMap=n},42982:function(t,e,n){"use strict";var i=n(80019),r=function(){function t(t){if(this.root=t,t.setImmediate&&"function"==typeof t.setImmediate)this.setImmediate=t.setImmediate.bind(t),this.clearImmediate=t.clearImmediate.bind(t);else{this.nextHandle=1,this.tasksByHandle={},this.currentlyRunningATask=!1,this.setImmediate=this.canUseProcessNextTick()?this.createProcessNextTickSetImmediate():this.canUsePostMessage()?this.createPostMessageSetImmediate():this.canUseMessageChannel()?this.createMessageChannelSetImmediate():this.canUseReadyStateChange()?this.createReadyStateChangeSetImmediate():this.createSetTimeoutSetImmediate();var e=function t(e){delete t.instance.tasksByHandle[e]};e.instance=this,this.clearImmediate=e}}return t.prototype.identify=function(t){return this.root.Object.prototype.toString.call(t)},t.prototype.canUseProcessNextTick=function(){return"[object process]"===this.identify(this.root.process)},t.prototype.canUseMessageChannel=function(){return Boolean(this.root.MessageChannel)},t.prototype.canUseReadyStateChange=function(){var t=this.root.document;return Boolean(t&&"onreadystatechange"in t.createElement("script"))},t.prototype.canUsePostMessage=function(){var t=this.root;if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}return!1},t.prototype.partiallyApplied=function(t){for(var e=[],n=1;n=0}},1856:function(t,e){"use strict";e.isObject=function(t){return null!=t&&"object"==typeof t}},35130:function(t,e){"use strict";e.isPromise=function(t){return t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}},41503:function(t,e){"use strict";e.isScheduler=function(t){return t&&"function"==typeof t.schedule}},68668:function(t,e){"use strict";e.noop=function(){}},67239:function(t,e){"use strict";e.not=function(t,e){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=t,n.thisArg=e,n}},10142:function(t,e,n){"use strict";var i=n(68668);function r(t){return t?1===t.length?t[0]:function(e){return t.reduce(function(t,e){return e(t)},e)}:i.noop}e.pipe=function(){for(var t=[],e=0;e=n?{done:!0}:{done:!1,value:t[i++]}})},e.empty=function(){var t=new e(null);return t.done=!0,t},e.is=function(t){return t instanceof e||"object"==typeof t&&null!==t&&"function"==typeof t.next},t.exports=e},97310:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.isMobile=function(){return void 0!==r.window.orientation},e.default=function(t){if(!t&&!(0,s.default)())return"Node";if((0,o.default)(t))return"Electron";var e="undefined"!=typeof navigator?navigator:{},n=t||e.userAgent||"";if(n.indexOf("Edge")>-1)return"Edge";var i=-1!==n.indexOf("MSIE "),a=-1!==n.indexOf("Trident/");return i||a?"IE":r.window.chrome?"Chrome":r.window.safari?"Safari":r.window.mozInnerScreenX?"Firefox":"Unknown"};var r=n(41151),s=i(n(61602)),o=i(n(22344))},41151:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.console=e.process=e.document=e.global=e.window=e.self=void 0;var r=i(n(34321)),s={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&process};e.self=s.self||s.window||s.global,e.window=s.window||s.self||s.global,e.global=s.global||s.self||s.window,e.document=s.document||{},e.process=s.process||{};var o=console;e.console=o},84761:function(t,e,n){"use strict";var i=n(61948),r=n(34321);Object.defineProperty(e,"CO",{enumerable:!0,get:function(){return s.global}}),Object.defineProperty(e,"jU",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"qs",{enumerable:!0,get:function(){return a.default}});var s=n(41151),o=c(n(61602)),a=c(n(97310));i(n(22344));function l(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(l=function(t){return t?n:e})(t)}function c(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var n=l(e);if(n&&n.has(t))return n.get(t);var i={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in t)if("default"!==o&&Object.prototype.hasOwnProperty.call(t,o)){var a=s?Object.getOwnPropertyDescriptor(t,o):null;a&&(a.get||a.set)?Object.defineProperty(i,o,a):i[o]=t[o]}return i.default=t,n&&n.set(t,i),i}},61602:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=o,e.isBrowserMainThread=function(){return o()&&"undefined"!=typeof document};var r=i(n(34321)),s=i(n(22344));function o(){return!("object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&"[object process]"===String(process)&&!process.browser)||(0,s.default)()}},22344:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){if("undefined"!=typeof window&&"object"===(0,r.default)(window.process)&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"===(0,r.default)(process.versions)&&Boolean(process.versions.electron))return!0;var e="object"===("undefined"==typeof navigator?"undefined":(0,r.default)(navigator))&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)};var r=i(n(34321))},86991:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(14180),e),r(n(75103),e),r(n(48965),e),r(n(32595),e),r(n(82417),e),r(n(92451),e),r(n(17735),e)},14180:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BlankNode=void 0,e.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},75103:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DataFactory=void 0;const i=n(14180),r=n(48965),s=n(32595),o=n(82417),a=n(92451),l=n(17735);let c=0;e.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},48965:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DefaultGraph=void 0;class n{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}e.DefaultGraph=n,n.INSTANCE=new n},32595:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Literal=void 0;const i=n(82417);class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}e.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},82417:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NamedNode=void 0,e.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},92451:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Quad=void 0,e.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},17735:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Variable=void 0,e.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},31609:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.getSupportedJavaScriptPrimitives=e.getSupportedRdfDatatypes=e.getTermRaw=e.toRdf=e.fromRdf=void 0;const s=n(86991),o=n(9938),a=n(66060);r(n(9938),e),r(n(88871),e),r(n(66060),e);const l=new s.DataFactory,c=new a.Translator;function u(t,e){return c.fromRdf(t,e)}c.registerHandler(new o.TypeHandlerString,o.TypeHandlerString.TYPES.map(t=>l.namedNode(t)),["string"]),c.registerHandler(new o.TypeHandlerBoolean,[o.TypeHandlerBoolean.TYPE].map(t=>l.namedNode(t)),["boolean"]),c.registerHandler(new o.TypeHandlerNumberDouble,o.TypeHandlerNumberDouble.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerNumberInteger,o.TypeHandlerNumberInteger.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerDate,o.TypeHandlerDate.TYPES.map(t=>l.namedNode(t)),["object"]),e.fromRdf=u,e.toRdf=function(t,e){return e&&"namedNode"in e&&(e={dataFactory:e}),(e=e||{})&&!e.dataFactory&&(e.dataFactory=l),c.toRdf(t,e)},e.getTermRaw=function(t,e){return"Literal"===t.termType?u(t,e):t.value},e.getSupportedRdfDatatypes=function(){return c.getSupportedRdfDatatypes()},e.getSupportedJavaScriptPrimitives=function(){return c.getSupportedJavaScriptPrimitives()}},88871:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0})},66060:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Translator=void 0,e.Translator=class{constructor(){this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}static incorrectRdfDataType(t){throw new Error(`Invalid RDF ${t.datatype.value} value: '${t.value}'`)}registerHandler(t,e,n){for(const i of e)this.supportedRdfDatatypes.push(i),this.fromRdfHandlers[i.value]=t;for(const i of n){let e=this.toRdfHandlers[i];e||(this.toRdfHandlers[i]=e=[]),e.push(t)}}fromRdf(t,e){const n=this.fromRdfHandlers[t.datatype.value];return n?n.fromRdf(t,e):t.value}toRdf(t,e){const n=this.toRdfHandlers[typeof t];if(n)for(const i of n){const n=i.toRdf(t,e);if(n)return n}throw new Error(`Invalid JavaScript value: '${t}'`)}getSupportedRdfDatatypes(){return this.supportedRdfDatatypes}getSupportedJavaScriptPrimitives(){return Object.keys(this.toRdfHandlers)}}},80727:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerBoolean=void 0;const i=n(66060);class r{fromRdf(t,e){switch(t.value){case"true":return!0;case"false":return!1;case"1":return!0;case"0":return!1}return e&&i.Translator.incorrectRdfDataType(t),!1}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t?"true":"false",e||n.namedNode(r.TYPE))}}e.TypeHandlerBoolean=r,r.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},52525:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerDate=void 0;const i=n(66060);class r{fromRdf(t,e){switch(e&&!t.value.match(r.VALIDATORS[t.datatype.value.substr(33,t.datatype.value.length)])&&i.Translator.incorrectRdfDataType(t),t.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(t.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":const e=t.value.split("-");return new Date(0,parseInt(e[0],10)-1,parseInt(e[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(t.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(t.value+"-01");default:return new Date(t.value)}}toRdf(t,{datatype:e,dataFactory:n}){if(e=e||n.namedNode(r.TYPES[0]),!(t instanceof Date))return null;const i=t;let s;switch(e.value){case"http://www.w3.org/2001/XMLSchema#gDay":s=String(i.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":s=i.getUTCMonth()+1+"-"+i.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":s=String(i.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":s=i.getUTCFullYear()+"-"+(i.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":s=i.toISOString().replace(/T.*$/,"");break;default:s=i.toISOString()}return n.literal(s,e)}}e.TypeHandlerDate=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],r.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},38554:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberDouble=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseFloat(t.value);return e&&isNaN(n)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return e=e||n.namedNode(r.TYPES[0]),isNaN(t)?n.literal("NaN",e):isFinite(t)?t%1==0?null:n.literal(t.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),e):n.literal(t>0?"INF":"-INF",e)}}e.TypeHandlerNumberDouble=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},37750:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberInteger=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseInt(t.value,10);return e&&(isNaN(n)||t.value.indexOf(".")>=0)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(String(t),e||n.namedNode(t<=r.MAX_INT&&t>=r.MIN_INT?r.TYPES[0]:r.TYPES[1]))}}e.TypeHandlerNumberInteger=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],r.MAX_INT=2147483647,r.MIN_INT=-2147483648},14608:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerString=void 0;class n{fromRdf(t){return t.value}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t,e)}}e.TypeHandlerString=n,n.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},9938:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(80727),e),r(n(52525),e),r(n(38554),e),r(n(37750),e),r(n(14608),e)},93640:function(t,e,n){"use strict";var i={};n.r(i),n.d(i,{decode:function(){return eL},encode:function(){return iL}});var r={};n.r(r),n.d(r,{decode:function(){return cL},encode:function(){return hL}});var s={};n.r(s),n.d(s,{decode:function(){return dL},encode:function(){return fL}});var o={};function a(t){return"function"==typeof t}n.r(o),n.d(o,{decode:function(){return mL},encode:function(){return yL}});let l=!1;const c={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 l&&console.log("RxJS: Back to a better error behavior. Thank you. <3");l=t},get useDeprecatedSynchronousErrorHandling(){return l}};function u(t){setTimeout(()=>{throw t},0)}const h={closed:!0,next(t){},error(t){if(c.useDeprecatedSynchronousErrorHandling)throw t;u(t)},complete(){}},d=Array.isArray||(t=>t&&"number"==typeof t.length);function p(t){return null!==t&&"object"==typeof t}const f=(()=>{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})();class g{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:e,_ctorUnsubscribe:n,_unsubscribe:i,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,e instanceof g)e.remove(this);else if(null!==e)for(let a=0;at.concat(e instanceof f?e.errors:e),[])}g.EMPTY=((m=new g).closed=!0,m);const y="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class v extends g{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=h;break;case 1:if(!t){this.destination=h;break}if("object"==typeof t){t instanceof v?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[y](){return this}static create(t,e,n){const i=new v(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 _ extends v{constructor(t,e,n,i){super(),this._parentSubscriber=t;let r,s=this;a(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==h&&(s=Object.create(e),a(s.unsubscribe)&&this.add(s.unsubscribe.bind(s)),s.unsubscribe=this.unsubscribe.bind(this))),this._context=s,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;c.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}=c;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):u(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;u(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);c.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(),c.useDeprecatedSynchronousErrorHandling)throw n;u(n)}}__tryOrSetError(t,e,n){if(!c.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return c.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(u(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const w="function"==typeof Symbol&&Symbol.observable||"@@observable";function x(t){return t}function S(...t){return E(t)}function E(t){return 0===t.length?x:1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}}let C=(()=>{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,r=function(t,e,n){if(t){if(t instanceof v)return t;if(t[y])return t[y]()}return t||e||n?new v(t,e,n):new v(h)}(t,e,n);if(r.add(i?i.call(r,this.source):this.source||c.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),c.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){c.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 v?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=O(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(r){n(r),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[w](){return this}pipe(...t){return 0===t.length?this:E(t)(this)}toPromise(t){return new(t=O(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function O(t){if(t||(t=c.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const T=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class k extends g{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 A extends v{constructor(t){super(t),this.destination=t}}let P=(()=>{class t extends C{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[y](){return new A(this)}lift(t){const e=new M(this,this);return e.operator=t,e}next(t){if(this.closed)throw new T;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let r=0;rnew M(t,e),t})();class M extends P{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):g.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}function D(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 R(t,e))}}class R{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new N(t,this.project,this.thisArg))}}class N extends v{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)}}const L=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function B(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const V=t=>{if(t&&"function"==typeof t[w])return(t=>e=>{const n=t[w]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)})(t);if(F(t))return L(t);if(B(t))return(t=>e=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,u),e))(t);if(t&&"function"==typeof t[j])return(t=>e=>{const n=t[j]();for(;;){let t;try{t=n.next()}catch(i){return e.error(i),e}if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e})(t);{const e=`You provided ${p(t)?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`;throw new TypeError(e)}};function z(t,e){return new C(n=>{const i=new g;let r=0;return i.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||i.add(this.schedule())):n.complete()})),i})}function U(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[w]}(t))return function(t,e){return new C(n=>{const i=new g;return i.add(e.schedule(()=>{const r=t[w]();i.add(r.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(B(t))return function(t,e){return new C(n=>{const i=new g;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(F(t))return z(t,e);if(function(t){return t&&"function"==typeof t[j]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new C(n=>{const i=new g;let r;return i.add(()=>{r&&"function"==typeof r.return&&r.return()}),i.add(e.schedule(()=>{r=t[j](),i.add(e.schedule(function(){if(n.closed)return;let t,e;try{const n=r.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 C?t:new C(V(t))}class H extends v{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class $ extends v{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function G(t,e){if(e.closed)return;if(t instanceof C)return t.subscribe(e);let n;try{n=V(t)(e)}catch(i){e.error(i)}return n}function W(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(W((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new X(t,this.project,this.concurrent))}}class X extends ${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(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Y(t=Number.POSITIVE_INFINITY){return W(x,t)}function K(t,e){return e?z(t,e):new C(L(t))}function Q(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return I(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 C?t[0]:Y(e)(K(t,n))}function Z(){return function(t){return t.lift(new J(t))}}class J{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new tt(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r}}class tt extends v{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 et extends C{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 g,t.add(this.source.subscribe(new it(this.getSubject(),this))),t.closed&&(this._connection=null,t=g.EMPTY)),t}refCount(){return Z()(this)}}const nt=(()=>{const t=et.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 it extends A{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 rt(t,e){return function(n){let i;if(i="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new st(i,e));const r=Object.create(n,nt);return r.source=n,r.subjectFactory=i,r}}class st{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,i=this.subjectFactory(),r=n(i).subscribe(t);return r.add(e.subscribe(i)),r}}function ot(){return new P}function at(){return t=>Z()(rt(ot)(t))}function lt(t){for(let e in t)if(t[e]===lt)return e;throw Error("Could not find renamed property on target object.")}function ct(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ut(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(ut).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 ht(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const dt=lt({__forward_ref__:lt});function pt(t){return t.__forward_ref__=pt,t.toString=function(){return ut(this())},t}function ft(t){return gt(t)?t():t}function gt(t){return"function"==typeof t&&t.hasOwnProperty(dt)&&t.__forward_ref__===pt}class mt extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function bt(t){return"string"==typeof t?t:null==t?"":String(t)}function yt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():bt(t)}function vt(t,e){const n=e?` in ${e}`:"";throw new mt("201",`No provider for ${yt(t)} found${n}`)}function _t(t,e){null==t&&function(t,e,n,i){throw new Error(`ASSERTION ERROR: ${t}`+(null==i?"":` [Expected=> ${n} ${i} ${e} <=Actual]`))}(e,t,null,"!=")}function xt(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function St(t){return{providers:t.providers||[],imports:t.imports||[]}}function Et(t){return Ct(t,Tt)||Ct(t,At)}function Ct(t,e){return t.hasOwnProperty(e)?t[e]:null}function Ot(t){return t&&(t.hasOwnProperty(kt)||t.hasOwnProperty(Pt))?t[kt]:null}const Tt=lt({"\u0275prov":lt}),kt=lt({"\u0275inj":lt}),At=lt({ngInjectableDef:lt}),Pt=lt({ngInjectorDef:lt});var Mt=(()=>((Mt=Mt||{})[Mt.Default=0]="Default",Mt[Mt.Host=1]="Host",Mt[Mt.Self=2]="Self",Mt[Mt.SkipSelf=4]="SkipSelf",Mt[Mt.Optional=8]="Optional",Mt))();let It;function Dt(t){const e=It;return It=t,e}function Rt(t,e,n){const i=Et(t);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&Mt.Optional?null:void 0!==e?e:void vt(ut(t),"Injector")}function Nt(t){return{toString:t}.toString()}var Lt=(()=>((Lt=Lt||{})[Lt.OnPush=0]="OnPush",Lt[Lt.Default=1]="Default",Lt))(),jt=(()=>((jt=jt||{})[jt.Emulated=0]="Emulated",jt[jt.None=2]="None",jt[jt.ShadowDom=3]="ShadowDom",jt))();const Ft="undefined"!=typeof globalThis&&globalThis,Bt="undefined"!=typeof window&&window,Vt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,zt="undefined"!=typeof global&&global,Ut=Ft||zt||Bt||Vt,Ht={},$t=[],Gt=lt({"\u0275cmp":lt}),Wt=lt({"\u0275dir":lt}),qt=lt({"\u0275pipe":lt}),Xt=lt({"\u0275mod":lt}),Yt=lt({"\u0275loc":lt}),Kt=lt({"\u0275fac":lt}),Qt=lt({__NG_ELEMENT_ID__:lt});let Zt=0;function Jt(t){return Nt(()=>{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===Lt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||$t,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||jt.Emulated,id:"c",styles:t.styles||$t,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,r=t.features,s=t.pipes;return n.id+=Zt++,n.inputs=re(t.inputs,e),n.outputs=re(t.outputs),r&&r.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(te):null,n.pipeDefs=s?()=>("function"==typeof s?s():s).map(ee):null,n})}function te(t){return ae(t)||function(t){return t[Wt]||null}(t)}function ee(t){return function(t){return t[qt]||null}(t)}const ne={};function ie(t){return Nt(()=>{const e={type:t.type,bootstrap:t.bootstrap||$t,declarations:t.declarations||$t,imports:t.imports||$t,exports:t.exports||$t,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&(ne[t.id]=t.type),e})}function re(t,e){if(null==t)return Ht;const n={};for(const i in t)if(t.hasOwnProperty(i)){let r=t[i],s=r;Array.isArray(r)&&(s=r[1],r=r[0]),n[r]=i,e&&(e[r]=s)}return n}const se=Jt;function oe(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function ae(t){return t[Gt]||null}function le(t,e){const n=t[Xt]||null;if(!n&&!0===e)throw new Error(`Type ${ut(t)} does not have '\u0275mod' property.`);return n}function ce(t){return Array.isArray(t)&&"object"==typeof t[1]}function ue(t){return Array.isArray(t)&&!0===t[1]}function he(t){return 0!=(8&t.flags)}function de(t){return 2==(2&t.flags)}function pe(t){return 1==(1&t.flags)}function fe(t){return null!==t.template}function ge(t){return 0!=(512&t[2])}function me(t,e){return t.hasOwnProperty(Kt)?t[Kt]:null}class be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function ye(){return ve}function ve(t){return t.type.prototype.ngOnChanges&&(t.setInput=we),_e}function _e(){const t=Se(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===Ht)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function we(t,e,n,i){const r=Se(t)||function(t,e){return t[xe]=e}(t,{previous:Ht,current:null}),s=r.current||(r.current={}),o=r.previous,a=this.declaredInputs[n],l=o[a];s[a]=new be(l&&l.currentValue,e,o===Ht),t[i]=e}ye.ngInherit=!0;const xe="__ngSimpleChanges__";function Se(t){return t[xe]||null}const Ee="http://www.w3.org/2000/svg";let Ce;function Oe(){return void 0!==Ce?Ce:"undefined"!=typeof document?document:void 0}function Te(t){return!!t.listen}const ke={createRenderer:(t,e)=>Oe()};function Ae(t){for(;Array.isArray(t);)t=t[0];return t}function Pe(t,e){return Ae(e[t])}function Me(t,e){return Ae(e[t.index])}function Ie(t,e){return t.data[e]}function De(t,e){return t[e]}function Re(t,e){const n=e[t];return ce(n)?n:n[0]}function Ne(t){return 4==(4&t[2])}function Le(t){return 128==(128&t[2])}function je(t,e){return null==e?null:t[e]}function Fe(t){t[18]=0}function Be(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 Ve={lFrame:dn(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function ze(){return Ve.bindingsEnabled}function Ue(){return Ve.lFrame.lView}function He(){return Ve.lFrame.tView}function $e(t){return Ve.lFrame.contextLView=t,t[8]}function Ge(){let t=We();for(;null!==t&&64===t.type;)t=t.parent;return t}function We(){return Ve.lFrame.currentTNode}function qe(t,e){const n=Ve.lFrame;n.currentTNode=t,n.isParent=e}function Xe(){return Ve.lFrame.isParent}function Ye(){Ve.lFrame.isParent=!1}function Ke(){return Ve.isInCheckNoChangesMode}function Qe(t){Ve.isInCheckNoChangesMode=t}function Ze(){const t=Ve.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function Je(){return Ve.lFrame.bindingIndex}function tn(){return Ve.lFrame.bindingIndex++}function en(t){const e=Ve.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function nn(t,e){const n=Ve.lFrame;n.bindingIndex=n.bindingRootIndex=t,rn(e)}function rn(t){Ve.lFrame.currentDirectiveIndex=t}function sn(t){const e=Ve.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}function on(){return Ve.lFrame.currentQueryIndex}function an(t){Ve.lFrame.currentQueryIndex=t}function ln(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function cn(t,e,n){if(n&Mt.SkipSelf){let i=e,r=t;for(;!(i=i.parent,null!==i||n&Mt.Host||(i=ln(r),null===i||(r=r[15],10&i.type))););if(null===i)return!1;e=i,t=r}const i=Ve.lFrame=hn();return i.currentTNode=e,i.lView=t,!0}function un(t){const e=hn(),n=t[1];Ve.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function hn(){const t=Ve.lFrame,e=null===t?null:t.child;return null===e?dn(t):e}function dn(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function pn(){const t=Ve.lFrame;return Ve.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const fn=pn;function gn(){const t=pn();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function mn(){return Ve.lFrame.selectedIndex}function bn(t){Ve.lFrame.selectedIndex=t}function yn(){const t=Ve.lFrame;return Ie(t.tView,t.selectedIndex)}function vn(){Ve.lFrame.currentNamespace=Ee}function _n(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[a]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e){t[2]+=2048;try{s.call(o)}finally{}}}else try{s.call(o)}finally{}}class On{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Tn(t,e,n){const i=Te(t);let r=0;for(;re){o=s-1;break}}}for(;s>16}(t),i=e;for(;n>0;)i=i[15],n--;return i}let Nn=!0;function Ln(t){const e=Nn;return Nn=t,e}let jn=0;function Fn(t,e){const n=Vn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Bn(i.data,t),Bn(e,null),Bn(i.blueprint,null));const r=zn(t,e),s=t.injectorIndex;if(In(r)){const t=Dn(r),n=Rn(r,e),i=n[1].data;for(let r=0;r<8;r++)e[s+r]=n[t+r]|i[t+r]}return e[s+8]=r,s}function Bn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Vn(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=0,i=null,r=e;for(;null!==r;){const t=r[1],e=t.type;if(i=2===e?t.declTNode:1===e?r[6]:null,null===i)return-1;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return-1}function Un(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Qt)&&(i=n[Qt]),null==i&&(i=n[Qt]=jn++);const r=255&i;e.data[t+(r>>5)]|=1<=0?255&e:qn:e}(n);if("function"==typeof s){if(!cn(e,t,i))return i&Mt.Host?Hn(r,n,i):$n(e,n,i,r);try{const t=s(i);if(null!=t||i&Mt.Optional)return t;vt(n)}finally{fn()}}else if("number"==typeof s){let r=null,o=Vn(t,e),a=-1,l=i&Mt.Host?e[16][6]:null;for((-1===o||i&Mt.SkipSelf)&&(a=-1===o?zn(t,e):e[o+8],-1!==a&&Zn(i,!1)?(r=e[1],o=Dn(a),e=Rn(a,e)):o=-1);-1!==o;){const t=e[1];if(Qn(s,o,t.data)){const t=Xn(o,e,n,r,i,l);if(t!==Wn)return t}a=e[o+8],-1!==a&&Zn(i,e[1].data[o+8]===l)&&Qn(s,o,e)?(r=t,o=Dn(a),e=Rn(a,e)):o=-1}}}return $n(e,n,i,r)}const Wn={};function qn(){return new Jn(Ge(),Ue())}function Xn(t,e,n,i,r,s){const o=e[1],a=o.data[t+8],l=Yn(a,o,n,null==i?de(a)&&Nn:i!=o&&0!=(3&a.type),r&Mt.Host&&s===a);return null!==l?Kn(e,o,l,a):Wn}function Yn(t,e,n,i,r){const s=t.providerIndexes,o=e.data,a=1048575&s,l=t.directiveStart,c=s>>20,u=r?a+c:t.directiveEnd;for(let h=i?a:a+c;h=l&&t.type===n)return h}if(r){const t=o[l];if(t&&fe(t)&&t.type===n)return l}return null}function Kn(t,e,n,i){let r=t[n];const s=e.data;if(function(t){return t instanceof On}(r)){const o=r;o.resolving&&function(t,e){throw new mt("200",`Circular dependency in DI detected for ${t}`)}(yt(s[n]));const a=Ln(o.canSeeViewProviders);o.resolving=!0;const l=o.injectImpl?Dt(o.injectImpl):null;cn(t,i,Mt.Default);try{r=t[n]=o.factory(void 0,s,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:r,ngDoCheck:s}=e.type.prototype;if(i){const i=ve(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,r),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s))}(n,s[n],e)}finally{null!==l&&Dt(l),Ln(a),o.resolving=!1,fn()}}return r}function Qn(t,e,n){return!!(n[e+(t>>5)]&1<{const e=t.prototype.constructor,n=e[Kt]||ei(e),i=Object.prototype;let r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){const t=r[Kt]||ei(r);if(t&&t!==n)return t;r=Object.getPrototypeOf(r)}return t=>new t})}function ei(t){return gt(t)?()=>{const e=ei(ft(t));return e&&e()}:me(t)}function ni(t){return function(t,e){if("class"===e)return t.classes;if("style"===e)return t.styles;const n=t.attrs;if(n){const t=n.length;let i=0;for(;i{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return i.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,i){const r=t.hasOwnProperty(ri)?t[ri]:Object.defineProperty(t,ri,{value:[]})[ri];for(;r.length<=i;)r.push(null);return(r[i]=r[i]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r})}class oi{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=xt({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const ai=Function;function li(t,e){void 0===e&&(e=t);for(let n=0;nArray.isArray(t)?ci(t,e):e(t))}function ui(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function hi(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function di(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let r=t.length;if(r==e)t.push(n,i);else if(1===r)t.push(i,t[0]),t[0]=n;else{for(r--,t.push(t[r-1],t[r]);r>e;)t[r]=t[r-2],r--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function fi(t,e){const n=gi(t,e);if(n>=0)return t[1|n]}function gi(t,e){return function(t,e,n){let i=0,r=t.length>>n;for(;r!==i;){const s=i+(r-i>>1),o=t[s<e?r=s:i=s+1}return~(r< ");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):ut(i)))}r=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${r}]: ${t.replace(vi,"\n ")}`}("\n"+t.message,r,n,i),t.ngTokenPath=r,t[yi]=null,t}const Mi=ki(si("Inject",t=>({token:t})),-1),Ii=ki(si("Optional"),8),Di=ki(si("SkipSelf"),4);let Ri,Ni;function Li(t){var e;return(null===(e=function(){if(void 0===Ri&&(Ri=null,Ut.trustedTypes))try{Ri=Ut.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return Ri}())||void 0===e?void 0:e.createHTML(t))||t}function ji(){if(void 0===Ni&&(Ni=null,Ut.trustedTypes))try{Ni=Ut.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(m){}return Ni}function Fi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createHTML(t))||t}function Bi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createScriptURL(t))||t}class Vi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class zi extends Vi{getTypeName(){return"HTML"}}class Ui extends Vi{getTypeName(){return"Style"}}class Hi extends Vi{getTypeName(){return"Script"}}class $i extends Vi{getTypeName(){return"URL"}}class Gi extends Vi{getTypeName(){return"ResourceURL"}}function Wi(t){return t instanceof Vi?t.changingThisBreaksApplicationSecurity:t}function qi(t,e){const n=Xi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see https://g.co/ng/security#xss)`)}return n===e}function Xi(t){return t instanceof Vi&&t.getTypeName()||null}class Yi{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{const e=(new window.DOMParser).parseFromString(Li(t),"text/html").body;return null===e?this.inertDocumentHelper.getInertBodyElement(t):(e.removeChild(e.firstChild),e)}catch(e){return null}}}class Ki{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=Li(t),e;const n=this.inertDocument.createElement("body");return n.innerHTML=Li(t),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0Ji(t.trim())).join(", ")}function er(t){const e={};for(const n of t.split(","))e[n]=!0;return e}function nr(...t){const e={};for(const n of t)for(const t in n)n.hasOwnProperty(t)&&(e[t]=!0);return e}const ir=er("area,br,col,hr,img,wbr"),rr=er("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),sr=er("rp,rt"),or=nr(ir,nr(rr,er("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),nr(sr,er("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),nr(sr,rr)),ar=er("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),lr=er("srcset"),cr=nr(ar,lr,er("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),er("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),ur=er("script,style,template");class hr{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let e=t.firstChild,n=!0;for(;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let t=this.checkClobberedElement(e,e.nextSibling);if(t){e=t;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")}startElement(t){const e=t.nodeName.toLowerCase();if(!or.hasOwnProperty(e))return this.sanitizedSomething=!0,!ur.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);const n=t.attributes;for(let i=0;i"),!0}endElement(t){const e=t.nodeName.toLowerCase();or.hasOwnProperty(e)&&!ir.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(fr(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 dr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,pr=/([^\#-~ |!])/g;function fr(t){return t.replace(/&/g,"&").replace(dr,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(pr,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let gr;function mr(t,e){let n=null;try{gr=gr||function(t){const e=new Ki(t);return function(){try{return!!(new window.DOMParser).parseFromString(Li(""),"text/html")}catch(t){return!1}}()?new Yi(e):e}(t);let i=e?String(e):"";n=gr.getInertBodyElement(i);let r=5,s=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=s,s=n.innerHTML,n=gr.getInertBodyElement(i)}while(i!==s);return Li((new hr).sanitizeChildren(br(n)||n))}finally{if(n){const t=br(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function br(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var yr=(()=>((yr=yr||{})[yr.NONE=0]="NONE",yr[yr.HTML=1]="HTML",yr[yr.STYLE=2]="STYLE",yr[yr.SCRIPT=3]="SCRIPT",yr[yr.URL=4]="URL",yr[yr.RESOURCE_URL=5]="RESOURCE_URL",yr))();function vr(t){const e=xr();return e?Fi(e.sanitize(yr.HTML,t)||""):qi(t,"HTML")?Fi(Wi(t)):mr(Oe(),bt(t))}function _r(t){const e=xr();return e?e.sanitize(yr.URL,t)||"":qi(t,"URL")?Wi(t):Ji(bt(t))}function wr(t){const e=xr();if(e)return Bi(e.sanitize(yr.RESOURCE_URL,t)||"");if(qi(t,"ResourceURL"))return Bi(Wi(t));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function xr(){const t=Ue();return t&&t[12]}const Sr="__ngContext__";function Er(t,e){t[Sr]=e}function Cr(t){const e=function(t){return t[Sr]||null}(t);return e?Array.isArray(e)?e:e.lView:null}function Or(t){return t.ngOriginalError}function Tr(t,...e){t.error(...e)}class Ar{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t&&t.ngErrorLogger||Tr}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?function(t){return t.ngDebugContext}(t)||this._findContext(Or(t)):null}_findOriginalError(t){let e=t&&Or(t);for(;e&&Or(e);)e=Or(e);return e||null}}const Pr=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Ut))();function Mr(t){return t.ownerDocument.defaultView}function Ir(t){return t.ownerDocument}function Dr(t){return t instanceof Function?t():t}var Rr=(()=>((Rr=Rr||{})[Rr.Important=1]="Important",Rr[Rr.DashCase=2]="DashCase",Rr))();function Nr(t,e){return undefined(t,e)}function Lr(t){const e=t[3];return ue(e)?e[3]:e}function jr(t){return Br(t[13])}function Fr(t){return Br(t[4])}function Br(t){for(;null!==t&&!ue(t);)t=t[4];return t}function Vr(t,e,n,i,r){if(null!=i){let s,o=!1;ue(i)?s=i:ce(i)&&(o=!0,i=i[0]);const a=Ae(i);0===t&&null!==n?null==r?Xr(e,n,a):qr(e,n,a,r||null,!0):1===t&&null!==n?qr(e,n,a,r||null,!0):2===t?function(t,e,n){const i=Kr(t,e);i&&function(t,e,n,i){Te(t)?t.removeChild(e,n,i):e.removeChild(n)}(t,i,e,n)}(e,a,o):3===t&&e.destroyNode(a),null!=s&&function(t,e,n,i,r){const s=n[7];s!==Ae(n)&&Vr(e,t,i,s,r);for(let o=10;o0&&(t[n-1][4]=i[4]);const s=hi(t,10+e);!function(t,e){rs(t,e,e[11],2,null,null),e[0]=null,e[6]=null}(i[1],i);const o=s[19];null!==o&&o.detachView(s[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function $r(t,e){if(!(256&e[2])){const n=e[11];Te(n)&&n.destroyNode&&rs(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Gr(t[1],t);for(;e;){let n=null;if(ce(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)ce(e)&&Gr(e[1],e),e=e[3];null===e&&(e=t),ce(e)&&Gr(e[1],e),n=e&&e[4]}e=n}}(e)}}function Gr(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?i[r=l]():i[r=-l].unsubscribe(),s+=2}else{const t=i[r=n[s+1]];n[s].call(t)}if(null!==i){for(let t=r+1;ts?"":r[u+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==ls(e,c,0)||2&i&&c!==t){if(fs(i))return!1;o=!0}}}}else{if(!o&&!fs(i)&&!fs(l))return!1;if(o&&fs(l))continue;o=!1,i=l|1&i}}return fs(i)||o}function fs(t){return 0==(1&t)}function gs(t,e,n,i){if(null===e)return-1;let r=0;if(i||!n){let n=!1;for(;r-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?r+="."+o:4&i&&(r+=" "+o);else""!==r&&!fs(o)&&(e+=ys(s,r),r=""),i=o,s=s||!fs(i);n++}return""!==r&&(e+=ys(s,r)),e}const _s={};function ws(t){xs(He(),Ue(),mn()+t,Ke())}function xs(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&wn(e,i,n)}else{const i=t.preOrderHooks;null!==i&&xn(e,i,0,n)}bn(n)}function Ss(t,e){return t<<17|e<<2}function Es(t){return t>>17&32767}function Cs(t){return 2|t}function Os(t){return(131068&t)>>2}function Ts(t,e){return-131069&t|e<<2}function ks(t){return 1|t}function As(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&xs(t,e,20,Ke()),n(i,r)}finally{bn(s)}}function js(t,e,n){if(he(e)){const i=e.directiveEnd;for(let r=e.directiveStart;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=s&&n.push(s),n.push(i,r,o)}}function qs(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function Xs(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function Ys(t,e,n){if(n){if(e.exportAs)for(let i=0;i0&&ro(n)}}function ro(t){for(let n=jr(t);null!==n;n=Fr(n))for(let t=10;t0&&ro(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&ro(i)}}function so(t,e){const n=Re(e,t),i=n[1];(function(t,e){for(let n=e.length;nPromise.resolve(null))();function po(t){return t[7]||(t[7]=[])}function fo(t){return t.cleanup||(t.cleanup=[])}function go(t,e,n){return(null===t||fe(t))&&(n=function(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(n[e.index])),n[11]}function mo(t,e){const n=t[9],i=n?n.get(Ar,null):null;i&&i.handleError(e)}function bo(t,e,n,i,r){for(let s=0;sthis.processProvider(n,t,e)),ci([t],t=>this.processInjectorType(t,[],r)),this.records.set(_o,Mo(void 0,this));const s=this.records.get(xo);this.scope=null!=s?s.value:null,this.source=i||("object"==typeof t?null:ut(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=mi,n=Mt.Default){this.assertNotDestroyed();const i=Si(this),r=Dt(void 0);try{if(!(n&Mt.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=function(t){return"function"==typeof t||"object"==typeof t&&t instanceof oi}(t)&&Et(t);e=n&&this.injectableDefInScope(n)?Mo(Ao(t),So):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Mt.Self?Oo():this.parent).get(t,e=n&Mt.Optional&&e===mi?null:e)}catch(s){if("NullInjectorError"===s.name){if((s[yi]=s[yi]||[]).unshift(ut(t)),i)throw s;return Pi(s,t,"R3InjectorError",this.source)}throw s}finally{Dt(r),Si(i)}}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(ut(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=ft(t)))return!1;let i=Ot(t);const r=null==i&&t.ngModule||void 0,s=void 0===r?t:r,o=-1!==n.indexOf(s);if(void 0!==r&&(i=Ot(r)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(s);try{ci(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||$t))}}this.injectorDefTypes.add(s);const a=me(s)||(()=>new s);this.records.set(s,Mo(a,So));const l=i.providers;if(null!=l&&!o){const e=t;ci(l,t=>this.processProvider(t,e,l))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let i=Do(t=ft(t))?t:ft(t&&t.provide);const r=function(t,e,n){return Io(t)?Mo(void 0,t.useValue):Mo(Po(t),So)}(t);if(Do(t)||!0!==t.multi)this.records.get(i);else{let e=this.records.get(i);e||(e=Mo(void 0,So,!0),e.factory=()=>Ti(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,r)}hydrate(t,e){return e.value===So&&(e.value=Eo,e.value=e.factory()),"object"==typeof e.value&&e.value&&function(t){return null!==t&&"object"==typeof t&&"function"==typeof t.ngOnDestroy}(e.value)&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){if(!t.providedIn)return!1;const e=ft(t.providedIn);return"string"==typeof e?"any"===e||e===this.scope:this.injectorDefTypes.has(e)}}function Ao(t){const e=Et(t),n=null!==e?e.factory:me(t);if(null!==n)return n;if(t instanceof oi)throw new Error(`Token ${ut(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=di(e,"?");throw new Error(`Can't resolve all parameters for ${ut(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[Tt]||t[At]);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 Po(t,e,n){let i;if(Do(t)){const e=ft(t);return me(e)||Ao(e)}if(Io(t))i=()=>ft(t.useValue);else if(function(t){return!(!t||!t.useFactory)}(t))i=()=>t.useFactory(...Ti(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Ci(ft(t.useExisting));else{const e=ft(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return me(e)||Ao(e);i=()=>new e(...Ti(t.deps))}return i}function Mo(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Io(t){return null!==t&&"object"==typeof t&&wi in t}function Do(t){return"function"==typeof t}const Ro=function(t,e,n){return function(t,e=null,n=null,i){const r=To(t,e,n,i);return r._resolveInjectorDefTypes(),r}({name:n},e,t,n)};class No{static create(t,e){return Array.isArray(t)?Ro(t,e,""):Ro(t.providers,t.parent,t.name||"")}}function Lo(t,e){_n(Cr(t)[1],Ge())}function jo(t){let e=function(t){return Object.getPrototypeOf(t.prototype).constructor}(t.type),n=!0;const i=[t];for(;e;){let r;if(fe(t))r=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");r=e.\u0275dir}if(r){if(n){i.push(r);const e=t;e.inputs=Fo(t.inputs),e.declaredInputs=Fo(t.declaredInputs),e.outputs=Fo(t.outputs);const n=r.hostBindings;n&&zo(t,n);const s=r.viewQuery,o=r.contentQueries;if(s&&Bo(t,s),o&&Vo(t,o),ct(t.inputs,r.inputs),ct(t.declaredInputs,r.declaredInputs),ct(t.outputs,r.outputs),fe(r)&&r.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(r.data.animation)}}const e=r.features;if(e)for(let i=0;i=0;i--){const r=t[i];r.hostVars=e+=r.hostVars,r.hostAttrs=Pn(r.hostAttrs,n=Pn(n,r.hostAttrs))}}(i)}function Fo(t){return t===Ht?{}:t===$t?[]:t}function Bo(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Vo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,r)=>{e(t,i,r),n(t,i,r)}:e}function zo(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}No.THROW_IF_NOT_FOUND=mi,No.NULL=new wo,No.\u0275prov=xt({token:No,providedIn:"any",factory:()=>Ci(_o)}),No.__NG_ELEMENT_ID__=-1;let Uo=null;function Ho(){if(!Uo){const t=Ut.Symbol;if(t&&t.iterator)Uo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Ae(t[i.index])):i.index;if(Te(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const r=t.cleanup;if(null!=r)for(let s=0;sn?t[n]:null}"string"==typeof t&&(s+=2)}return null}(t,e,r,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=s,o.__ngLastListenerFn__=s,d=!1;else{s=ya(i,e,u,s,!1);const t=n.listen(f,r,s);h.push(s,t),c&&c.push(r,m,g,g+1)}}else s=ya(i,e,u,s,!0),f.addEventListener(r,s,o),h.push(s),c&&c.push(r,m,g,o)}else s=ya(i,e,u,s,!1);const p=i.outputs;let f;if(d&&null!==p&&(f=p[r])){const t=f.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ve.lFrame.contextLView))[8]}(t)}function _a(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 r=0;r=0}const Ta={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function ka(t){return t.substring(Ta.key,Ta.keyEnd)}function Aa(t){return t.substring(Ta.value,Ta.valueEnd)}function Pa(t,e){const n=Ta.textEnd;return n===e?-1:(e=Ta.keyEnd=function(t,e,n){for(;e32;)e++;return e}(t,Ta.key=e,n),Da(t,e,n))}function Ma(t,e){const n=Ta.textEnd;let i=Ta.key=Da(t,e,n);return n===i?-1:(i=Ta.keyEnd=function(t,e,n){let i;for(;e=65&&(-33&i)<=90||i>=48&&i<=57);)e++;return e}(t,i,n),i=Ra(t,i,n),i=Ta.value=Da(t,i,n),i=Ta.valueEnd=function(t,e,n){let i=-1,r=-1,s=-1,o=e,a=o;for(;o32&&(a=o),s=r,r=i,i=-33&l}return a}(t,i,n),Ra(t,i,n))}function Ia(t){Ta.key=0,Ta.keyEnd=0,Ta.value=0,Ta.valueEnd=0,Ta.textEnd=t.length}function Da(t,e,n){for(;e=0;n=Ma(e,n))qa(t,ka(e),Aa(e))}function Ba(t){Ua(pi,Va,t,!0)}function Va(t,e){for(let n=function(t){return Ia(t),Pa(t,Da(t,0,Ta.textEnd))}(e);n>=0;n=Pa(e,n))pi(t,ka(e),!0)}function za(t,e,n,i){const r=Ue(),s=He(),o=en(2);s.firstUpdatePass&&$a(s,t,o,i),e!==_s&&Xo(r,o,e)&&Xa(s,s.data[mn()],r,r[11],t,r[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=ut(Wi(t)))),t}(e,n),i,o)}function Ua(t,e,n,i){const r=He(),s=en(2);r.firstUpdatePass&&$a(r,null,s,i);const o=Ue();if(n!==_s&&Xo(o,s,n)){const a=r.data[mn()];if(Qa(a,i)&&!Ha(r,s)){let t=i?a.classesWithoutHost:a.stylesWithoutHost;null!==t&&(n=ht(t,n||"")),ia(r,a,o,n,i)}else!function(t,e,n,i,r,s,o,a){r===_s&&(r=$t);let l=0,c=0,u=0=t.expandoStartIndex}function $a(t,e,n,i){const r=t.data;if(null===r[n+1]){const s=r[mn()],o=Ha(t,n);Qa(s,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const r=sn(t);let s=i?e.residualClasses:e.residualStyles;if(null===r)0===(i?e.classBindings:e.styleBindings)&&(n=Wa(n=Ga(null,t,e,n,i),e.attrs,i),s=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==r)if(n=Ga(r,t,e,n,i),null===s){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==Os(i))return t[Es(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Ga(null,t,e,n[1],i),n=Wa(n,e.attrs,i),function(t,e,n,i){t[Es(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else s=function(t,e,n){let i;const r=e.directiveEnd;for(let s=1+e.directiveStylingLast;s0)&&(u=!0)}else c=n;if(r)if(0!==l){const e=Es(t[a+1]);t[i+1]=Ss(e,a),0!==e&&(t[e+1]=Ts(t[e+1],i)),t[a+1]=function(t,e){return 131071&t|e<<17}(t[a+1],i)}else t[i+1]=Ss(a,0),0!==a&&(t[a+1]=Ts(t[a+1],i)),a=i;else t[i+1]=Ss(l,0),0===a?a=i:t[l+1]=Ts(t[l+1],i),l=i;u&&(t[i+1]=Cs(t[i+1])),Ca(t,c,i,!0),Ca(t,c,i,!1),function(t,e,n,i,r){const s=r?t.residualClasses:t.residualStyles;null!=s&&"string"==typeof e&&gi(s,e)>=0&&(n[i+1]=ks(n[i+1]))}(e,c,t,i,s),o=Ss(a,l),s?e.classBindings=o:e.styleBindings=o}(r,s,e,n,o,i)}}function Ga(t,e,n,i,r){let s=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[r],s=Array.isArray(e),l=s?e[1]:e,c=null===l;let u=n[r+1];u===_s&&(u=c?$t:void 0);let h=c?fi(u,i):l===i?u:void 0;if(s&&!Ka(h)&&(h=fi(e,i)),Ka(h)&&(a=h,o))return a;const d=t[r+1];r=o?Es(d):Os(d)}if(null!==e){let t=s?e.residualClasses:e.residualStyles;null!=t&&(a=fi(t,i))}return a}function Ka(t){return void 0!==t}function Qa(t,e){return 0!=(t.flags&(e?16:32))}function Za(t,e=""){const n=Ue(),i=He(),r=t+20,s=i.firstCreatePass?Ms(i,r,1,e,null):i.data[r],o=n[r]=function(t,e){return Te(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Jr(i,n,o,s),qe(s,!1)}function Ja(t){return tl("",t,""),Ja}function tl(t,e,n){const i=Ue(),r=Qo(i,t,e,n);return r!==_s&&yo(i,mn(),r),tl}function el(t,e,n,i,r){const s=Ue(),o=function(t,e,n,i,r,s){const o=Yo(t,Je(),n,r);return en(2),o?e+bt(n)+i+bt(r)+s:_s}(s,t,e,n,i,r);return o!==_s&&yo(s,mn(),o),el}function nl(t,e,n){Ua(pi,Va,Qo(Ue(),t,e,n),!0)}function il(t,e,n){const i=Ue();return Xo(i,tn(),e)&&$s(He(),yn(),i,t,e,i[11],n,!0),il}function rl(t,e,n){const i=Ue();if(Xo(i,tn(),e)){const r=He(),s=yn();$s(r,s,i,t,e,go(sn(r.data),s,i),n,!0)}return rl}const sl=void 0;var ol=["en",[["a","p"],["AM","PM"],sl],[["AM","PM"],sl,sl],[["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"]],sl,[["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"]],sl,[["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}",sl,"{1} 'at' {0}",sl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){const e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let al={};function ll(t){return t in al||(al[t]=Ut.ng&&Ut.ng.common&&Ut.ng.common.locales&&Ut.ng.common.locales[t]),al[t]}var cl=(()=>((cl=cl||{})[cl.LocaleId=0]="LocaleId",cl[cl.DayPeriodsFormat=1]="DayPeriodsFormat",cl[cl.DayPeriodsStandalone=2]="DayPeriodsStandalone",cl[cl.DaysFormat=3]="DaysFormat",cl[cl.DaysStandalone=4]="DaysStandalone",cl[cl.MonthsFormat=5]="MonthsFormat",cl[cl.MonthsStandalone=6]="MonthsStandalone",cl[cl.Eras=7]="Eras",cl[cl.FirstDayOfWeek=8]="FirstDayOfWeek",cl[cl.WeekendRange=9]="WeekendRange",cl[cl.DateFormat=10]="DateFormat",cl[cl.TimeFormat=11]="TimeFormat",cl[cl.DateTimeFormat=12]="DateTimeFormat",cl[cl.NumberSymbols=13]="NumberSymbols",cl[cl.NumberFormats=14]="NumberFormats",cl[cl.CurrencyCode=15]="CurrencyCode",cl[cl.CurrencySymbol=16]="CurrencySymbol",cl[cl.CurrencyName=17]="CurrencyName",cl[cl.Currencies=18]="Currencies",cl[cl.Directionality=19]="Directionality",cl[cl.PluralCase=20]="PluralCase",cl[cl.ExtraData=21]="ExtraData",cl))();const ul="en-US";let hl=ul;function dl(t){_t(t,"Expected localeId to be defined"),"string"==typeof t&&(hl=t.toLowerCase().replace(/_/g,"-"))}function pl(t,e,n,i,r){if(t=ft(t),Array.isArray(t))for(let s=0;s>20;if(Do(t)||!t.multi){const i=new On(l,r,ea),p=ml(a,e,r?u:u+d,h);-1===p?(Un(Fn(c,o),s,a),fl(s,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=ml(a,e,u+d,h),f=ml(a,e,u,u+d),g=p>=0&&n[p],m=f>=0&&n[f];if(r&&!m||!r&&!g){Un(Fn(c,o),s,a);const u=function(t,e,n,i,r){const s=new On(t,n,ea);return s.multi=[],s.index=e,s.componentProviders=0,gl(s,r,i&&!n),s}(r?yl:bl,n.length,r,i,l);!r&&m&&(n[f].providerFactory=u),fl(s,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(u),o.push(u)}else fl(s,t,p>-1?p:f,gl(n[r?f:p],l,!r&&i));!r&&i&&m&&n[f].componentProviders++}}}function fl(t,e,n,i){const r=Do(e);if(r||function(t){return!!t.useClass}(e)){const s=(e.useClass||e).prototype.ngOnDestroy;if(s){const o=t.destroyHooks||(t.destroyHooks=[]);if(!r&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,s]):o[t+1].push(i,s)}else o.push(n,s)}}}function gl(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function ml(t,e,n,i){for(let r=n;r{n.providersResolver=(n,i)=>function(t,e,n){const i=He();if(i.firstCreatePass){const r=fe(t);pl(n,i.data,i.blueprint,r,!0),pl(e,i.data,i.blueprint,r,!1)}}(n,i?i(t):t,e)}}class wl{}const xl="ngComponent";class Sl{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${ut(t)}. Did you add it to @NgModule.entryComponents?`);return e[xl]=t,e}(t)}}class El{}function Cl(...t){}function Ol(t,e){return new kl(Me(t,e))}El.NULL=new Sl;const Tl=function(){return Ol(Ge(),Ue())};let kl=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=Tl,t})();function Al(t){return t instanceof kl?t.nativeElement:t}class Pl{}let Ml=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Il(),t})();const Il=function(){const t=Ue(),e=Re(Ge().index,t);return function(t){return t[11]}(ce(e)?e:t)};let Dl=(()=>{class t{}return t.\u0275prov=xt({token:t,providedIn:"root",factory:()=>null}),t})();class Rl{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Nl=new Rl("12.2.5");class Ll{constructor(){}supports(t){return Go(t)}create(t){return new Fl(t)}}const jl=(t,e)=>e;class Fl{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||jl}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,r=null;for(;e||n;){const s=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==r&&Object.is(r.trackById,i)?(s&&(r=this._verifyReinsertion(r,t,i,e)),Object.is(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,i,e),s=!0),r=r._next,e++}),this.length=e;return this._truncate(r),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;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=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,i)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,i)):t=this._addAfter(new Bl(e,n),r,i),t}_verifyReinsertion(t,e,n,i){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,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,r=t._nextRemoved;return null===i?this._removalsHead=r:i._nextRemoved=r,null===r?this._removalsTail=i:r._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 zl),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 zl),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 Bl{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 Vl{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 zl{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Vl,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 Ul(t,e,n){const i=t.previousIndex;if(null===i)return i;let r=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,r=n._next;return i&&(i._next=r),r&&(r._prev=i),n._next=null,n._prev=null,n}const n=new Gl(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 Gl{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}}function Wl(){return new ql([new Ll])}let ql=(()=>{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=>t.create(e,n||Wl()),deps:[[t,new Di,new Ii]]}}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 '${function(t){return t.name||typeof t}(t)}'`)}}return t.\u0275prov=xt({token:t,providedIn:"root",factory:Wl}),t})();function Xl(){return new Yl([new Hl])}let Yl=(()=>{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=>t.create(e,n||Xl()),deps:[[t,new Di,new Ii]]}}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=xt({token:t,providedIn:"root",factory:Xl}),t})();function Kl(t,e,n,i,r=!1){for(;null!==n;){const s=e[n.index];if(null!==s&&i.push(Ae(s)),ue(s))for(let t=10;t-1&&(Hr(t,n),hi(e,n))}this._attachedToViewContainer=!1}$r(this._lView[1],this._lView)}onDestroy(t){Us(this._lView[1],this._lView,null,t)}markForCheck(){ao(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){lo(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Qe(!0);try{lo(t,e,n)}finally{Qe(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function(t,e){rs(t,e,e[11],2,null,null)}(this._lView[1],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Zl extends Ql{constructor(t){super(t),this._view=t}detectChanges(){co(this._view)}checkNoChanges(){!function(t){Qe(!0);try{co(t)}finally{Qe(!1)}}(this._view)}get context(){return null}}const Jl=function(t){return function(t,e,n){if(de(t)&&!n){const n=Re(t.index,e);return new Ql(n,n)}return 47&t.type?new Ql(e[16],e):null}(Ge(),Ue(),16==(16&t))};let tc=(()=>{class t{}return t.__NG_ELEMENT_ID__=Jl,t})();const ec=[new Hl],nc=new ql([new Ll]),ic=new Yl(ec),rc=function(){return lc(Ge(),Ue())};let sc=(()=>{class t{}return t.__NG_ELEMENT_ID__=rc,t})();const oc=sc,ac=class extends oc{constructor(t,e,n){super(),this._declarationLView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=Ps(this._declarationLView,e,t,16,null,e.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];const i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Ds(e,n,t),new Ql(n)}};function lc(t,e){return 4&t.type?new ac(e,t,Ol(t,e)):null}class cc{}const uc=function(){return mc(Ge(),Ue())};let hc=(()=>{class t{}return t.__NG_ELEMENT_ID__=uc,t})();const dc=hc,pc=class extends dc{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=n}get element(){return Ol(this._hostTNode,this._hostLView)}get injector(){return new Jn(this._hostTNode,this._hostLView)}get parentInjector(){const t=zn(this._hostTNode,this._hostLView);if(In(t)){const e=Rn(t,this._hostLView),n=Dn(t);return new Jn(e[1].data[n+8],e)}return new Jn(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const e=fc(this._lContainer);return null!==e&&e[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,r){const s=n||this.parentInjector;if(!r&&null==t.ngModule&&s){const t=s.get(cc,null);t&&(r=t)}const o=t.create(s,i,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(function(t){return ue(t[3])}(n)){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new pc(e,e[6],e[3]);i.detach(i.indexOf(t))}}const r=this._adjustIndex(e),s=this._lContainer;!function(t,e,n,i){const r=10+i,s=n.length;i>0&&(n[r-1][4]=e),iPr});class wc extends wl{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=function(t){return t.map(vs).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return vc(this.componentDef.inputs)}get outputs(){return vc(this.componentDef.outputs)}create(t,e,n,i){const r=(i=i||this.ngModule)?function(t,e){return{get:(n,i,r)=>{const s=t.get(n,bc,r);return s!==bc||i===bc?s:e.get(n,i,r)}}}(t,i.injector):t,s=r.get(Pl,ke),o=r.get(Dl,null),a=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Te(t))return t.selectRootElement(e,n===jt.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):zr(s.createRenderer(null,this.componentDef),l,function(t){const e=t.toLowerCase();return"svg"===e?Ee:"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),u=this.componentDef.onPush?576:528,h=function(t,e){return{components:[],scheduler:t||Pr,clean:ho,playerHandler:e||null,flags:0}}(),d=zs(0,null,null,1,0,null,null,null,null,null),p=Ps(null,d,h,u,null,null,s,a,o,r);let f,g;un(p);try{const t=function(t,e,n,i,r,s){const o=n[1];n[20]=t;const a=Ms(o,20,2,"#host",null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(vo(a,l,!0),null!==t&&(Tn(r,t,l),null!==a.classes&&as(r,t,a.classes),null!==a.styles&&os(r,t,a.styles)));const c=i.createRenderer(t,e),u=Ps(n,Vs(e),null,e.onPush?64:16,n[20],a,i,c,s||null,null);return o.firstCreatePass&&(Un(Fn(a,n),o,e.type),Xs(o,a),Ks(a,n.length,1)),oo(n,u),n[20]=u}(c,this.componentDef,p,s,a);if(c)if(n)Tn(a,c,["ng-version",Nl.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,r=2;for(;i0&&as(a,c,e.join(" "))}if(g=Ie(d,20),void 0!==e){const t=g.projection=[];for(let n=0;nt(o,e)),e.contentQueries){const t=Ge();e.contentQueries(1,o,t.directiveStart)}const a=Ge();return!s.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(bn(a.index),Ws(n[1],a,0,a.directiveStart,a.directiveEnd,e),qs(e,o)),o}(t,this.componentDef,p,h,[Lo]),Ds(d,p,null)}finally{gn()}return new xc(this.componentType,f,Ol(g,p),p,g)}}class xc extends class{}{constructor(t,e,n,i,r){super(),this.location=n,this._rootLView=i,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new Zl(i),this.componentType=t}get injector(){return new Jn(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(t){this.hostView.onDestroy(t)}}const Sc=new Map;class Ec extends cc{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new yc(this);const n=le(t),i=function(t){return t[Yt]||null}(t);i&&dl(i),this._bootstrapComponents=Dr(n.bootstrap),this._r3Injector=To(t,e,[{provide:cc,useValue:this},{provide:El,useValue:this.componentFactoryResolver}],ut(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=No.THROW_IF_NOT_FOUND,n=Mt.Default){return t===No||t===cc||t===_o?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 Cc extends class{}{constructor(t){super(),this.moduleType=t,null!==le(t)&&function(t){const e=new Set;!function t(n){const i=le(n,!0),r=i.id;null!==r&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${ut(e)} vs ${ut(e.name)}`)}(r,Sc.get(r),n),Sc.set(r,n));const s=Dr(i.imports);for(const o of s)e.has(o)||(e.add(o),t(o))}(t)}(t)}create(t){return new Ec(this.moduleType,t)}}function Oc(t,e,n){const i=Ze()+t,r=Ue();return r[i]===_s?qo(r,i,n?e.call(n):e()):function(t,e){return t[e]}(r,i)}function Tc(t,e,n,i){return Pc(Ue(),Ze(),t,e,n,i)}function kc(t,e,n,i,r,s){return function(t,e,n,i,r,s,o,a){const l=e+n;return function(t,e,n,i,r){const s=Yo(t,e,n,i);return Xo(t,e+2,r)||s}(t,l,r,s,o)?qo(t,l+3,a?i.call(a,r,s,o):i(r,s,o)):Ac(t,l+3)}(Ue(),Ze(),t,e,n,i,r,s)}function Ac(t,e){const n=t[e];return n===_s?void 0:n}function Pc(t,e,n,i,r,s){const o=e+n;return Xo(t,o,r)?qo(t,o+1,s?i.call(s,r):i(r)):Ac(t,o+1)}function Mc(t,e){const n=He();let i;const r=t+20;n.firstCreatePass?(i=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const i=e[n];if(t===i.name)return i}throw new mt("302",`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[r]=i,i.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(r,i.onDestroy)):i=n.data[r];const s=i.factory||(i.factory=me(i.type)),o=Dt(ea);try{const t=Ln(!1),e=s();return Ln(t),function(t,e,n,i){n>=t.data.length&&(t.data[n]=null,t.blueprint[n]=null),e[n]=i}(n,Ue(),r,e),e}finally{Dt(o)}}function Ic(t,e,n){const i=t+20,r=Ue(),s=De(r,i);return function(t,e){$o.isWrapped(e)&&(e=$o.unwrap(e),t[Je()]=_s);return e}(r,function(t,e){return t[1].data[e].pure}(r,i)?Pc(r,Ze(),e,s.transform,n,s):s.transform(n))}function Dc(t){return e=>{setTimeout(t,void 0,e)}}const Rc=class extends P{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){var i,r,s;let o=t,a=e||(()=>null),l=n;if(t&&"object"==typeof t){const e=t;o=null===(i=e.next)||void 0===i?void 0:i.bind(e),a=null===(r=e.error)||void 0===r?void 0:r.bind(e),l=null===(s=e.complete)||void 0===s?void 0:s.bind(e)}this.__isAsync&&(a=Dc(a),o&&(o=Dc(o)),l&&(l=Dc(l)));const c=super.subscribe({next:o,error:a,complete:l});return t instanceof g&&t.add(c),c}};function Nc(){return this._results[Ho()]()}class Lc{constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const e=Ho(),n=Lc.prototype;n[e]||(n[e]=Nc)}get changes(){return this._changes||(this._changes=new Rc)}get(t){return this._results[t]}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,e){const n=this;n.dirty=!1;const i=li(t);(this._changesDetected=!function(t,e,n){if(t.length!==e.length)return!1;for(let i=0;i0)i.push(o[t/2]);else{const r=s[t+1],o=e[-n];for(let t=10;t{class t{constructor(t){this.appInits=t,this.resolve=Cl,this.reject=Cl,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.subscribe({complete:t,error:n})});t.push(n)}}Promise.all(t).then(()=>{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Ci(tu,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const nu=new oi("AppId"),iu={provide:nu,useFactory:function(){return`${ru()}${ru()}${ru()}`},deps:[]};function ru(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const su=new oi("Platform Initializer"),ou=new oi("Platform ID"),au=new oi("appBootstrapListener");let lu=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const cu=new oi("LocaleId"),uu=new oi("DefaultCurrencyCode");class hu{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const du=function(t){return new Cc(t)},pu=du,fu=function(t){return Promise.resolve(du(t))},gu=function(t){const e=du(t),n=Dr(le(t).declarations).reduce((t,e)=>{const n=ae(e);return n&&t.push(new wc(n)),t},[]);return new hu(e,n)},mu=gu,bu=function(t){return Promise.resolve(gu(t))};let yu=(()=>{class t{constructor(){this.compileModuleSync=pu,this.compileModuleAsync=fu,this.compileModuleAndAllComponentsSync=mu,this.compileModuleAndAllComponentsAsync=bu}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const vu=new oi("compilerOptions"),_u=(()=>Promise.resolve(0))();function wu(t){"undefined"==typeof Zone?_u.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class xu{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Rc(!1),this.onMicrotaskEmpty=new Rc(!1),this.onStable=new Rc(!1),this.onError=new Rc(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const i=this;i._nesting=0,i._outer=i._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(i._inner=i._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(i._inner=i._inner.fork(Zone.longStackTraceZoneSpec)),i.shouldCoalesceEventChangeDetection=!n&&e,i.shouldCoalesceRunChangeDetection=n,i.lastRequestAnimationFrameId=-1,i.nativeRequestAnimationFrame=function(){let t=Ut.requestAnimationFrame,e=Ut.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=()=>{!function(t){t.isCheckStableRunning||-1!==t.lastRequestAnimationFrameId||(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Ut,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Cu(t),t.isCheckStableRunning=!0,Eu(t),t.isCheckStableRunning=!1},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Cu(t))}(t)};t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(n,i,r,s,o,a)=>{try{return Ou(t),n.invokeTask(r,s,o,a)}finally{(t.shouldCoalesceEventChangeDetection&&"eventTask"===s.type||t.shouldCoalesceRunChangeDetection)&&e(),Tu(t)}},onInvoke:(n,i,r,s,o,a,l)=>{try{return Ou(t),n.invoke(r,s,o,a,l)}finally{t.shouldCoalesceRunChangeDetection&&e(),Tu(t)}},onHasTask:(e,n,i,r)=>{e.hasTask(i,r),n===i&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,Cu(t),Eu(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,n,i,r)=>(e.handleError(i,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(i)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!xu.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(xu.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 r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+i,t,Su,Cl,Cl);try{return r.runTask(s,e,n)}finally{r.cancelTask(s)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}const Su={};function Eu(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 Cu(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&-1!==t.lastRequestAnimationFrameId)}function Ou(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function Tu(t){t._nesting--,Eu(t)}class ku{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Rc,this.onMicrotaskEmpty=new Rc,this.onStable=new Rc,this.onError=new Rc}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 Au=(()=>{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:()=>{xu.assertNotInAngularZone(),wu(()=>{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())wu(()=>{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/plugins/task-tracking" 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)(Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Pu=(()=>{class t{constructor(){this._applications=new Map,Iu.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 Iu.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Mu{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Iu=new Mu,Du=!0,Ru=!1;function Nu(){return Ru=!0,Du}let Lu;const ju=new oi("AllowMultipleToken");function Fu(t,e,n=[]){const i=`Platform: ${e}`,r=new oi(i);return(e=[])=>{let s=Bu();if(!s||s.injector.get(ju,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0},{provide:xo,useValue:"platform"});!function(t){if(Lu&&!Lu.destroyed&&!Lu.injector.get(ju,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Lu=t.get(Vu);const e=t.get(su,null);e&&e.forEach(t=>t())}(No.create({providers:t,name:i}))}return function(t){const e=Bu();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}(r)}}function Bu(){return Lu&&!Lu.destroyed?Lu:null}let Vu=(()=>{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 ku:("zone.js"===t?void 0:t)||new xu({enableLongStackTrace:Nu(),shouldCoalesceEventChangeDetection:!!(null==e?void 0:e.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==e?void 0:e.ngZoneRunCoalescing)}),n}(e?e.ngZone:void 0,{ngZoneEventCoalescing:e&&e.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:e&&e.ngZoneRunCoalescing||!1}),i=[{provide:xu,useValue:n}];return n.run(()=>{const r=No.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(r),o=s.injector.get(Ar,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.runOutsideAngular(()=>{const t=n.onError.subscribe({next:t=>{o.handleError(t)}});s.onDestroy(()=>{Hu(this._modules,s),t.unsubscribe()})}),function(t,n,i){try{const e=i();return ha(e)?e.catch(e=>{throw n.runOutsideAngular(()=>t.handleError(e)),e}):e}catch(e){throw n.runOutsideAngular(()=>t.handleError(e)),e}}(o,n,()=>{const t=s.injector.get(eu);return t.runInitializers(),t.donePromise.then(()=>(dl(s.injector.get(cu,ul)||ul),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=zu({},e);return function(t,e,n){const i=new Cc(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Uu);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${ut(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)(Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function zu(t,e){return Array.isArray(e)?e.reduce(zu,t):Object.assign(Object.assign({},t),e)}let Uu=(()=>{class t{constructor(t,e,n,i,r){this._zone=t,this._injector=e,this._exceptionHandler=n,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const s=new C(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),o=new C(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{xu.assertNotInAngularZone(),wu(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{xu.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Q(s,o.pipe(at()))}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 wl?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=function(t){return t.isBoundToModule}(n)?void 0:this._injector.get(cc),r=n.create(No.NULL,[],e||n.selector,i),s=r.location.nativeElement,o=r.injector.get(Au,null),a=o&&r.injector.get(Pu);return o&&a&&a.registerApplication(s,o),r.onDestroy(()=>{this.detachView(r.hostView),Hu(this.components,r),a&&a.unregisterApplication(s)}),this._loadComponent(r),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}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;Hu(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(au,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(No),Ci(Ar),Ci(El),Ci(eu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Hu(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const $u=Fu(null,"core",[{provide:ou,useValue:"unknown"},{provide:Vu,deps:[No]},{provide:Pu,deps:[]},{provide:lu,deps:[]}]),Gu=[{provide:Uu,useClass:Uu,deps:[xu,No,Ar,El,eu]},{provide:_c,deps:[xu],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:eu,useClass:eu,deps:[[new Ii,tu]]},{provide:yu,useClass:yu,deps:[]},iu,{provide:ql,useFactory:function(){return nc},deps:[]},{provide:Yl,useFactory:function(){return ic},deps:[]},{provide:cu,useFactory:function(t){return dl(t=t||"undefined"!=typeof $localize&&$localize.locale||ul),t},deps:[[new Mi(cu),new Ii,new Di]]},{provide:uu,useValue:"USD"}];let Wu=(()=>{class t{constructor(t){}}return t.\u0275fac=function(e){return new(e||t)(Ci(Uu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Gu}),t})(),qu=null;function Xu(){return qu}const Yu=new oi("DocumentToken");let Ku=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:Qu,token:t,providedIn:"platform"}),t})();function Qu(){return Ci(Zu)}let Zu=(()=>{class t extends Ku{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xu().getBaseHref(this._doc)}onPopState(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("popstate",t,!1),()=>e.removeEventListener("popstate",t)}onHashChange(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("hashchange",t,!1),()=>e.removeEventListener("hashchange",t)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ju()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ju()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:th,token:t,providedIn:"platform"}),t})();function Ju(){return!!window.history.pushState}function th(){return new Zu(Ci(Yu))}function eh(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function nh(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function ih(t){return t&&"?"!==t[0]?"?"+t:t}let rh=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:sh,token:t,providedIn:"root"}),t})();function sh(t){const e=Ci(Yu).location;return new ah(Ci(Ku),e&&e.origin||"")}const oh=new oi("appBaseHref");let ah=(()=>{class t extends rh{constructor(t,e){if(super(),this._platformLocation=t,this._removeListenerFns=[],null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return eh(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ih(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformLocation).historyGo)||void 0===n||n.call(e,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ku),Ci(oh,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lh=(()=>{class t{constructor(t,e){this._subject=new Rc,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=nh(uh(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+ih(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,uh(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformStrategy).historyGo)||void 0===n||n.call(e,t)}onUrlChange(t){this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}))}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(rh),Ci(Ku))},t.normalizeQueryParams=ih,t.joinWithSlash=eh,t.stripTrailingSlash=nh,t.\u0275prov=xt({factory:ch,token:t,providedIn:"root"}),t})();function ch(){return new lh(Ci(rh),Ci(Ku))}function uh(t){return t.replace(/\/index.html$/,"")}var hh=(()=>((hh=hh||{})[hh.Zero=0]="Zero",hh[hh.One=1]="One",hh[hh.Two=2]="Two",hh[hh.Few=3]="Few",hh[hh.Many=4]="Many",hh[hh.Other=5]="Other",hh))();const dh=function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ll(e);if(n)return n;const i=e.split("-")[0];if(n=ll(i),n)return n;if("en"===i)return ol;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[cl.PluralCase]};class ph{}let fh=(()=>{class t extends ph{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(dh(e||this.locale)(t)){case hh.Zero:return"zero";case hh.One:return"one";case hh.Two:return"two";case hh.Few:return"few";case hh.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Ci(cu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function gh(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(r)}return null}let mh=(()=>{class t{constructor(t,e,n,i){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=i,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Go(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${ut(t.item)}`);this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(Yl),ea(kl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class bh{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 yh=(()=>{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){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${e}' of type '${function(t){return t.name||typeof t}(e)}'. NgFor only supports binding to Iterables such as Arrays.`)}}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 bh(null,this._ngForOf,-1,-1),null===i?void 0:i),r=new vh(t,n);e.push(r)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,i);const s=new vh(t,r);e.push(s)}});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)(ea(hc),ea(sc),ea(ql))},t.\u0275dir=se({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class vh{constructor(t,e){this.record=t,this.view=e}}let _h=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new wh,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){xh("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){xh("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)(ea(hc),ea(sc))},t.\u0275dir=se({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class wh{constructor(){this.$implicit=null,this.ngIf=null}}function xh(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${ut(e)}'.`)}class Sh{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 Eh=(()=>{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 Sh(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),Oh=(()=>{class t{constructor(t,e,n){n._addDefault(new Sh(t,e))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchDefault",""]]}),t})(),Th=(()=>{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)(ea(kl),ea(Yl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),kh=(()=>{class t{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){if(t.ngTemplateOutlet){const t=this._viewContainerRef;this._viewRef&&t.remove(t.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?t.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else this._viewRef&&t.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return t.\u0275fac=function(e){return new(e||t)(ea(hc))},t.\u0275dir=se({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[ye]}),t})();class Ah{createSubscription(t,e){return t.subscribe({next:e,error:t=>{throw t}})}dispose(t){t.unsubscribe()}onDestroy(t){t.unsubscribe()}}class Ph{createSubscription(t,e){return t.then(e,t=>{throw t})}dispose(t){}onDestroy(t){}}const Mh=new Ph,Ih=new Ah;let Dh=(()=>{class t{constructor(t){this._ref=t,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):this._latestValue:(t&&this._subscribe(t),this._latestValue)}_subscribe(t){this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,e=>this._updateLatestValue(t,e))}_selectStrategy(e){if(ha(e))return Mh;if(da(e))return Ih;throw function(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${ut(t)}'`)}(t,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())}}return t.\u0275fac=function(e){return new(e||t)(ea(tc,16))},t.\u0275pipe=oe({name:"async",type:t,pure:!1}),t})(),Rh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:ph,useClass:fh}]}),t})();const Nh="browser";function Lh(t){return t===Nh}class jh{}class Fh extends class extends class{}{constructor(){super(...arguments),this.supportsDOMEvents=!0}}{static makeCurrent(){!function(t){qu||(qu=t)}(new Fh)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}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}getBaseHref(t){const e=(Vh=Vh||document.querySelector("base"),Vh?Vh.getAttribute("href"):null);return null==e?null:function(t){Bh=Bh||document.createElement("a"),Bh.setAttribute("href",t);const e=Bh.pathname;return"/"===e.charAt(0)?e:`/${e}`}(e)}resetBaseElement(){Vh=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return gh(document.cookie,t)}}let Bh,Vh=null;const zh=new oi("TRANSITION_ID"),Uh=[{provide:tu,useFactory:function(t,e,n){return()=>{n.get(eu).donePromise.then(()=>{const n=Xu(),i=e.querySelectorAll(`style[ng-transition="${t}"]`);for(let t=0;t{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Ut.getAllAngularTestabilities=()=>t.getAllTestabilities(),Ut.getAllAngularRootElements=()=>t.getAllRootElements(),Ut.frameworkStabilizers||(Ut.frameworkStabilizers=[]),Ut.frameworkStabilizers.push(t=>{const e=Ut.getAllAngularTestabilities();let n=e.length,i=!1;const r=function(e){i=i||e,n--,0==n&&t(i)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?Xu().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}let $h=(()=>{class t{build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gh=new oi("EventManagerPlugins");let Wh=(()=>{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=xt({token:t,factory:t.\u0275fac}),t})(),Yh=(()=>{class t extends Xh{constructor(t){super(),this._doc=t,this._hostNodes=new Map,this._hostNodes.set(t.head,[])}_addStylesToHost(t,e,n){t.forEach(t=>{const i=this._doc.createElement("style");i.textContent=t,n.push(e.appendChild(i))})}addHost(t){const e=[];this._addStylesToHost(this._stylesSet,t,e),this._hostNodes.set(t,e)}removeHost(t){const e=this._hostNodes.get(t);e&&e.forEach(Kh),this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach((e,n)=>{this._addStylesToHost(t,n,e)})}ngOnDestroy(){this._hostNodes.forEach(t=>t.forEach(Kh))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Kh(t){Xu().remove(t)}const Qh={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/"},Zh=/%COMP%/g;function Jh(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ed=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new nd(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new id(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case jt.ShadowDom:return new rd(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Jh(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)(Ci(Wh),Ci(Yh),Ci(nu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class nd{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Qh[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 r=Qh[i];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Qh[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&(Rr.DashCase|Rr.Important)?t.style.setProperty(e,n,i&Rr.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&Rr.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,td(n)):this.eventManager.addEventListener(t,e,td(n))}}class id extends nd{constructor(t,e,n,i){super(t),this.component=n;const r=Jh(i+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=function(t){return"_ngcontent-%COMP%".replace(Zh,t)}(i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Zh,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 rd extends nd{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=Jh(i.id,i.styles,[]);for(let s=0;s{class t extends qh{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)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const od=["alt","control","meta","shift"],ad={"\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"},ld={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"},cd={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let ud=(()=>{class t extends qh{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const r=t.parseEventName(n),s=t.eventCallback(r.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xu().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const r=t._normalizeKey(n.pop());let s="";if(od.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),s+=t+".")}),s+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=i,o.fullKey=s,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&&ld.hasOwnProperty(e)&&(e=ld[e]))}return ad[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),od.forEach(i=>{i!=n&&cd[i](t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return r=>{t.getEventFullKey(r)===e&&i.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),hd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return Ci(dd)},token:t,providedIn:"root"}),t})(),dd=(()=>{class t extends hd{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case yr.NONE:return e;case yr.HTML:return qi(e,"HTML")?Wi(e):mr(this._doc,String(e)).toString();case yr.STYLE:return qi(e,"Style")?Wi(e):e;case yr.SCRIPT:if(qi(e,"Script"))return Wi(e);throw new Error("unsafe value used in a script context");case yr.URL:return Xi(e),qi(e,"URL")?Wi(e):Ji(String(e));case yr.RESOURCE_URL:if(qi(e,"ResourceURL"))return Wi(e);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return function(t){return new zi(t)}(t)}bypassSecurityTrustStyle(t){return function(t){return new Ui(t)}(t)}bypassSecurityTrustScript(t){return function(t){return new Hi(t)}(t)}bypassSecurityTrustUrl(t){return function(t){return new $i(t)}(t)}bypassSecurityTrustResourceUrl(t){return function(t){return new Gi(t)}(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return function(t){return new dd(t.get(Yu))}(Ci(_o))},token:t,providedIn:"root"}),t})();const pd=Fu($u,"browser",[{provide:ou,useValue:Nh},{provide:su,useValue:function(){Fh.makeCurrent(),Hh.init()},multi:!0},{provide:Yu,useFactory:function(){return function(t){Ce=t}(document),document},deps:[]}]),fd=[[],{provide:xo,useValue:"root"},{provide:Ar,useFactory:function(){return new Ar},deps:[]},{provide:Gh,useClass:sd,multi:!0,deps:[Yu,xu,ou]},{provide:Gh,useClass:ud,multi:!0,deps:[Yu]},[],{provide:ed,useClass:ed,deps:[Wh,Yh,nu]},{provide:Pl,useExisting:ed},{provide:Xh,useExisting:Yh},{provide:Yh,useClass:Yh,deps:[Yu]},{provide:Au,useClass:Au,deps:[xu]},{provide:Wh,useClass:Wh,deps:[Gh,xu]},{provide:jh,useClass:$h,deps:[]},[]];let gd=(()=>{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:nu,useValue:e.appId},{provide:zh,useExisting:nu},Uh]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:fd,imports:[Rh,Wu]}),t})();function md(t){return null!=t&&"false"!=`${t}`}function bd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function yd(t){return Array.isArray(t)?t:[t]}function vd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function _d(t){return t instanceof kl?t.nativeElement:t}function wd(...t){let e=t[t.length-1];return I(e)?(t.pop(),z(t,e)):K(t)}function xd(t,e,n,i){return a(n)&&(i=n,n=void 0),i?xd(t,e,n).pipe(D(t=>d(t)?i(...t):i(t))):new C(i=>{Sd(t,e,function(t){i.next(arguments.length>1?Array.prototype.slice.call(arguments):t)},i,n)})}function Sd(t,e,n,i,r){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){const i=t;t.addEventListener(e,n,r),s=()=>i.removeEventListener(e,n,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){const i=t;t.on(e,n),s=()=>i.off(e,n)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){const i=t;t.addListener(e,n),s=()=>i.removeListener(e,n)}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(let s=0,o=t.length;s{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 Td extends Od{constructor(t,e=Od.now){super(t,()=>Td.delegate&&Td.delegate!==this?Td.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return Td.delegate&&Td.delegate!==this?Td.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}}}new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?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 kd=1;const Ad=Promise.resolve(),Pd={};function Md(t){return t in Pd&&(delete Pd[t],!0)}const Id={setImmediate(t){const e=kd++;return Pd[e]=!0,Ad.then(()=>Md(e)&&t()),e},clearImmediate(t){Md(t)}};new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=Id.setImmediate(t.flush.bind(t,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&&(Id.clearImmediate(e),t.scheduled=void 0)}});function Dd(t){return!!t&&(t instanceof C||"function"==typeof t.lift&&"function"==typeof t.subscribe)}function Rd(t,e){return n=>n.lift(new Nd(t,e))}class Nd{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new Ld(t,this.compare,this.keySelector))}}class Ld extends v{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(i){return this.destination.error(i)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(i){return this.destination.error(i)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}const jd=new Td(Cd);class Fd{constructor(t){this.durationSelector=t}call(t,e){return e.subscribe(new Bd(t,this.durationSelector))}}class Bd extends ${constructor(t,e){super(t),this.durationSelector=e,this.hasValue=!1}_next(t){if(this.value=t,this.hasValue=!0,!this.throttled){let n;try{const{durationSelector:e}=this;n=e(t)}catch(e){return this.destination.error(e)}const i=G(n,new H(this));!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}clearThrottle(){const{value:t,hasValue:e,throttled:n}=this;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),e&&(this.value=void 0,this.hasValue=!1,this.destination.next(t))}notifyNext(){this.clearThrottle()}notifyComplete(){this.clearThrottle()}}function Vd(t){return!d(t)&&t-parseFloat(t)+1>=0}function zd(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 Ud(t,e=jd){return function(t){return function(e){return e.lift(new Fd(t))}}(()=>function(t=0,e,n){let i=-1;return Vd(e)?i=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=jd),new C(e=>{const r=Vd(t)?t:+t-n.now();return n.schedule(zd,r,{index:0,period:i,subscriber:e})})}(t,e))}function Hd(t,e){return function(n){return n.lift(new $d(t,e))}}class $d{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new Gd(t,this.predicate,this.thisArg))}}class Gd extends v{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 Wd(t){return e=>e.lift(new qd(t))}class qd{constructor(t){this.notifier=t}call(t,e){const n=new Xd(t),i=G(this.notifier,new H(n));return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class Xd extends ${constructor(t){super(t),this.seenValue=!1}notifyNext(){this.seenValue=!0,this.complete()}notifyComplete(){}}function Yd(...t){return Y(1)(wd(...t))}function Kd(...t){const e=t[t.length-1];return I(e)?(t.pop(),n=>Yd(t,n,e)):e=>Yd(t,e)}function Qd(t,e){return"function"==typeof e?n=>n.pipe(Qd((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new Zd(t))}class Zd{constructor(t){this.project=t}call(t,e){return e.subscribe(new Jd(t,this.project))}}class Jd extends ${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)}_innerSub(t){const e=this.innerSubscription;e&&e.unsubscribe();const n=new H(this),i=this.destination;i.add(n),this.innerSubscription=G(t,n),this.innerSubscription!==n&&i.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;(!t||t.closed)&&super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=void 0}notifyComplete(){this.innerSubscription=void 0,this.isStopped&&super._complete()}notifyNext(t){this.destination.next(t)}}const tp=new class extends Td{}(class extends Cd{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}),ep=new C(t=>t.complete());function np(t){return t?function(t){return new C(e=>t.schedule(()=>e.complete()))}(t):ep}function ip(t,e){return new C(e?n=>e.schedule(rp,0,{error:t,subscriber:n}):e=>e.error(t))}function rp({error:t,subscriber:e}){e.error(t)}class sp{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return wd(this.value);case"E":return ip(this.error);case"C":return np()}throw new Error("unexpected notification kind value")}static createNext(t){return void 0!==t?new sp("N",t):sp.undefinedValueNotification}static createError(t){return new sp("E",void 0,t)}static createComplete(){return sp.completeNotification}}sp.completeNotification=new sp("C"),sp.undefinedValueNotification=new sp("N",void 0);class op extends v{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(op.dispatch,this.delay,new ap(t,this.destination)))}_next(t){this.scheduleMessage(sp.createNext(t))}_error(t){this.scheduleMessage(sp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(sp.createComplete()),this.unsubscribe()}}class ap{constructor(t,e){this.notification=t,this.destination=e}}class lp extends P{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){if(!this.isStopped){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift()}super.next(t)}nextTimeWindow(t){this.isStopped||(this._events.push(new cp(this._getNow(),t)),this._trimBufferThenGetEvents()),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),i=this.scheduler,r=n.length;let s;if(this.closed)throw new T;if(this.isStopped||this.hasError?s=g.EMPTY:(this.observers.push(t),s=new k(this,t)),i&&t.add(t=new op(t,i)),e)for(let o=0;oe&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i}}class cp{constructor(t,e){this.time=t,this.value=e}}function up(t,e,n){let i;return i=t&&"object"==typeof t?t:{bufferSize:t,windowTime:e,refCount:!1,scheduler:n},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:i}){let r,s,o=0,a=!1,l=!1;return function(c){let u;o++,!r||a?(a=!1,r=new lp(t,e,i),u=r.subscribe(this),s=c.subscribe({next(t){r.next(t)},error(t){a=!0,r.error(t)},complete(){l=!0,s=void 0,r.complete()}}),l&&(s=void 0)):u=r.subscribe(this),this.add(()=>{o--,u.unsubscribe(),u=void 0,s&&!l&&n&&0===o&&(s.unsubscribe(),s=void 0,r=void 0)})}}(i))}let hp;try{hp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(m){hp=!1}let dp,pp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Lh(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&&!hp)&&"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)(Ci(ou))},t.\u0275prov=xt({factory:function(){return new t(Ci(ou))},token:t,providedIn:"root"}),t})(),fp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const gp=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function mp(){if(dp)return dp;if("object"!=typeof document||!document)return dp=new Set(gp),dp;let t=document.createElement("input");return dp=new Set(gp.filter(e=>(t.setAttribute("type",e),t.type===e))),dp}let bp,yp,vp;function _p(t){return function(){if(null==bp&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>bp=!0}))}finally{bp=bp||!1}return bp}()?t:!!t.capture}function wp(){if(null==yp){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return yp=!1,yp;if("scrollBehavior"in document.documentElement.style)yp=!0;else{const t=Element.prototype.scrollTo;yp=!!t&&!/\{\s*\[native code\]\s*\}/.test(t.toString())}}return yp}function xp(t){if(function(){if(null==vp){const t="undefined"!=typeof document?document.head:null;vp=!(!t||!t.createShadowRoot&&!t.attachShadow)}return vp}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}function Sp(){let t="undefined"!=typeof document&&document?document.activeElement:null;for(;t&&t.shadowRoot;){const e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}function Ep(t){return t.composedPath?t.composedPath()[0]:t.target}const Cp=new oi("cdk-dir-doc",{providedIn:"root",factory:function(){return Oi(Yu)}});let Op=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Rc,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)(Ci(Cp,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Cp,8))},token:t,providedIn:"root"}),t})(),Tp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class kp{constructor(t=!1,e,n=!0){this._multiple=t,this._emitChanges=n,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new P,e&&e.length&&(t?e.forEach(t=>this._markSelected(t)):this._markSelected(e[0]),this._selectedToEmit.length=0)}get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}select(...t){this._verifyValueAssignment(t),t.forEach(t=>this._markSelected(t)),this._emitChangeEvent()}deselect(...t){this._verifyValueAssignment(t),t.forEach(t=>this._unmarkSelected(t)),this._emitChangeEvent()}toggle(t){this.isSelected(t)?this.deselect(t):this.select(t)}clear(){this._unmarkAll(),this._emitChangeEvent()}isSelected(t){return this._selection.has(t)}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(t){this._multiple&&this.selected&&this._selected.sort(t)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(t){this.isSelected(t)||(this._multiple||this._unmarkAll(),this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))}_unmarkSelected(t){this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))}_unmarkAll(){this.isEmpty()||this._selection.forEach(t=>this._unmarkSelected(t))}_verifyValueAssignment(t){}}let Ap=(()=>{class t{constructor(){this._listeners=[]}notify(t,e){for(let n of this._listeners)n(t,e)}listen(t){return this._listeners.push(t),()=>{this._listeners=this._listeners.filter(e=>t!==e)}}ngOnDestroy(){this._listeners=[]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Pp=(()=>{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new P,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 C(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(Ud(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):wd()}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(Hd(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(t,e){let n=_d(e),i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>xd(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)(Ci(xu),Ci(pp),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Mp=(()=>{class t{constructor(t,e,n){this._platform=t,this._change=new P,this._changeListener=t=>{this._change.next(t)},this._document=n,e.runOutsideAngular(()=>{if(t.isBrowser){const t=this._getWindow();t.addEventListener("resize",this._changeListener),t.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const t=this._getWindow();t.removeEventListener("resize",this._changeListener),t.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}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._document,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(Ud(t)):this._change}_getWindow(){return this._document.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)(Ci(pp),Ci(xu),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Ip=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),Dp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp,fp,Ip],Tp,Ip]}),t})();class Rp{attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;null!=t&&(this._attachedHost=null,t.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class Np extends Rp{constructor(t,e,n,i){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=i}}class Lp extends Rp{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class jp extends Rp{constructor(t){super(),this.element=t instanceof kl?t.nativeElement:t}}class Fp{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(t){return t instanceof Np?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof Lp?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof jp?(this._attachedPortal=t,this.attachDomPortal(t)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class Bp extends Fp{constructor(t,e,n,i,r){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=i,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");e.parentNode.insertBefore(n,e),this.outletElement.appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=r}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),this._attachedPortal=t,n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),n.detectChanges(),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),this._attachedPortal=t,n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let Vp=(()=>{class t extends Lp{constructor(t,e){super(t,e)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc),ea(hc))},t.\u0275dir=se({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[jo]}),t})(),zp=(()=>{class t extends Vp{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[_l([{provide:Vp,useExisting:t}]),jo]}),t})(),Up=(()=>{class t extends Fp{constructor(t,e,n){super(),this._componentFactoryResolver=t,this._viewContainerRef=e,this._isInitialized=!1,this.attached=new Rc,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");t.setAttachedHost(this),e.parentNode.insertBefore(n,e),this._getRootNode().appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=n}get portal(){return this._attachedPortal}set portal(t){this.hasAttached()&&!t&&!this._isInitialized||(this.hasAttached()&&super.detach(),t&&super.attach(t),this._attachedPortal=t)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedPortal=null,this._attachedRef=null}attachComponentPortal(t){t.setAttachedHost(this);const e=null!=t.viewContainerRef?t.viewContainerRef:this._viewContainerRef,n=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component),i=e.createComponent(n,e.length,t.injector||e.injector);return e!==this._viewContainerRef&&this._getRootNode().appendChild(i.hostView.rootNodes[0]),super.setDisposeFn(()=>i.destroy()),this._attachedPortal=t,this._attachedRef=i,this.attached.emit(i),i}attachTemplatePortal(t){t.setAttachedHost(this);const e=this._viewContainerRef.createEmbeddedView(t.templateRef,t.context);return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=t,this._attachedRef=e,this.attached.emit(e),e}_getRootNode(){const t=this._viewContainerRef.element.nativeElement;return t.nodeType===t.ELEMENT_NODE?t:t.parentNode}}return t.\u0275fac=function(e){return new(e||t)(ea(El),ea(hc),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[jo]}),t})(),Hp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const $p=(()=>{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 Gp(t){return e=>0===t?np():e.lift(new Wp(t))}class Wp{constructor(t){if(this.total=t,this.total<0)throw new $p}call(t,e){return e.subscribe(new qp(t,this.total))}}class qp extends v{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 Xp(t,e=!1){return n=>n.lift(new Yp(t,e))}class Yp{constructor(t,e){this.predicate=t,this.inclusive=e}call(t,e){return e.subscribe(new Kp(t,this.predicate,this.inclusive))}}class Kp extends v{constructor(t,e,n){super(t),this.predicate=e,this.inclusive=n,this.index=0}_next(t){const e=this.destination;let n;try{n=this.predicate(t,this.index++)}catch(i){return void e.error(i)}this.nextOrComplete(t,n)}nextOrComplete(t,e){const n=this.destination;Boolean(e)?n.next(t):(this.inclusive&&n.next(t),n.complete())}}function Qp(t,...e){return e.length?e.some(e=>t[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}const Zp=wp();class Jp{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=vd(-this._previousScrollPosition.left),t.style.top=vd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,i=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),Zp&&(e.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),Zp&&(e.scrollBehavior=i,n.scrollBehavior=r)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}class tf{constructor(t,e,n,i){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=i,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(t){this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class ef{enable(){}disable(){}attach(){}}function nf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function rf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class sf{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=i,this._scrollSubscription=null}attach(t){this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();nf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let of=(()=>{class t{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=()=>new ef,this.close=t=>new tf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t),this.block=()=>new Jp(this._viewportRuler,this._document),this.reposition=t=>new sf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t),this._document=i}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();class af{constructor(t){if(this.scrollStrategy=new ef,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){const e=Object.keys(t);for(const n of e)void 0!==t[n]&&(this[n]=t[n])}}}class lf{constructor(t,e,n,i,r){this.offsetX=n,this.offsetY=i,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}class cf{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}let uf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._document=t}ngOnDestroy(){this.detach()}add(t){this.remove(t),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this.detach()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),hf=(()=>{class t extends uf{constructor(t){super(t),this._keydownListener=t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEvents.observers.length>0){e[n]._keydownEvents.next(t);break}}}add(t){super.add(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),df=(()=>{class t extends uf{constructor(t,e){super(t),this._platform=e,this._cursorStyleIsSet=!1,this._clickListener=t=>{const e=Ep(t),n=this._attachedOverlays.slice();for(let i=n.length-1;i>-1;i--){const r=n[i];if(!(r._outsidePointerEvents.observers.length<1)&&r.hasAttached()){if(r.overlayElement.contains(e))break;r._outsidePointerEvents.next(t)}}}}add(t){if(super.add(t),!this._isAttached){const t=this._document.body;t.addEventListener("click",this._clickListener,!0),t.addEventListener("auxclick",this._clickListener,!0),t.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const t=this._document.body;t.removeEventListener("click",this._clickListener,!0),t.removeEventListener("auxclick",this._clickListener,!0),t.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(t.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu),Ci(pp))},token:t,providedIn:"root"}),t})();const pf="undefined"!=typeof window?window:{},ff=void 0!==pf.__karma__&&!!pf.__karma__||void 0!==pf.jasmine&&!!pf.jasmine||void 0!==pf.jest&&!!pf.jest||void 0!==pf.Mocha&&!!pf.Mocha;let gf=(()=>{class t{constructor(t,e){this._platform=e,this._document=t}ngOnDestroy(){const t=this._containerElement;t&&t.parentNode&&t.parentNode.removeChild(t)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t="cdk-overlay-container";if(this._platform.isBrowser||ff){const e=this._document.querySelectorAll(`.${t}[platform="server"], .${t}[platform="test"]`);for(let t=0;tthis._backdropClick.next(t),this._keydownEvents=new P,this._outsidePointerEvents=new P,i.scrollStrategy&&(this._scrollStrategy=i.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=i.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){const t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this.detachBackdrop(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host&&this._host.parentNode&&(this._host.parentNode.removeChild(this._host),this._host=null),this._previousHostParent=this._pane=null,t&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign(Object.assign({},this._config),t),this._updateElementSize()}setDirection(t){this._config=Object.assign(Object.assign({},this._config),{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const t=this._pane.style;t.width=vd(this._config.width),t.height=vd(this._config.height),t.minWidth=vd(this._config.minWidth),t.minHeight=vd(this._config.minHeight),t.maxWidth=vd(this._config.maxWidth),t.maxHeight=vd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachBackdrop(){const t="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(t)})}):this._backdropElement.classList.add(t)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t=this._backdropElement;if(!t)return;let e,n=()=>{t&&(t.removeEventListener("click",this._backdropClickHandler),t.removeEventListener("transitionend",n),t.parentNode&&t.parentNode.removeChild(t)),this._backdropElement==t&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(t,this._config.backdropClass,!1),clearTimeout(e)};t.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{t.addEventListener("transitionend",n)}),t.style.pointerEvents="none",e=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const i=t.classList;yd(e).forEach(t=>{t&&(n?i.add(t):i.remove(t))})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.pipe(Wd(Q(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const bf="cdk-overlay-connected-position-bounding-box",yf=/([A-Za-z%]+)$/;class vf{constructor(t,e,n,i,r){this._viewportRuler=e,this._document=n,this._platform=i,this._overlayContainer=r,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new P,this._resizeSubscription=g.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){this._validatePositions(),t.hostElement.classList.add(bf),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,i=[];let r;for(let s of this._preferredPositions){let o=this._getOriginPoint(t,s),a=this._getOverlayPoint(o,e,s),l=this._getOverlayFit(a,e,n,s);if(l.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(s,o);this._canFitWithFlexibleDimensions(l,a,n)?i.push({position:s,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,s)}):(!r||r.overlayFit.visibleAreae&&(e=i,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&_f(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(bf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,i;if("center"==e.originX)n=t.left+t.width/2;else{const i=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?i:r}return i="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom,{x:n,y:i}}_getOverlayPoint(t,e,n){let i,r;return i="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height,{x:t.x+i,y:t.y+r}}_getOverlayFit(t,e,n,i){const r=xf(e);let{x:s,y:o}=t,a=this._getOffset(i,"x"),l=this._getOffset(i,"y");a&&(s+=a),l&&(o+=l);let c=0-o,u=o+r.height-n.height,h=this._subtractOverflows(r.width,0-s,s+r.width-n.width),d=this._subtractOverflows(r.height,c,u),p=h*d;return{visibleArea:p,isCompletelyWithinViewport:r.width*r.height===p,fitsInViewportVertically:d===r.height,fitsInViewportHorizontally:h==r.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const i=n.bottom-e.y,r=n.right-e.x,s=wf(this._overlayRef.getConfig().minHeight),o=wf(this._overlayRef.getConfig().minWidth),a=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=s&&s<=i)&&a}return!1}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const i=xf(e),r=this._viewportRect,s=Math.max(t.x+i.width-r.width,0),o=Math.max(t.y+i.height-r.height,0),a=Math.max(r.top-n.top-t.y,0),l=Math.max(r.left-n.left-t.x,0);let c=0,u=0;return c=i.width<=r.width?l||-s:t.xi&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.y-i/2)}if("end"===e.overlayX&&!i||"start"===e.overlayX&&i)c=n.width-t.x+this._viewportMargin,a=t.x-this._viewportMargin;else if("start"===e.overlayX&&!i||"end"===e.overlayX&&i)l=t.x,a=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),i=this._lastBoundingBoxSize.width;a=2*e,l=t.x-e,a>i&&!this._isInitialRender&&!this._growAfterOpen&&(l=t.x-i/2)}return{top:s,left:l,bottom:o,right:c,width:a,height:r}}_setBoundingBoxStyles(t,e){const n=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));const i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;i.height=vd(n.height),i.top=vd(n.top),i.bottom=vd(n.bottom),i.width=vd(n.width),i.left=vd(n.left),i.right=vd(n.right),i.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",i.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(i.maxHeight=vd(t)),r&&(i.maxWidth=vd(r))}this._lastBoundingBoxSize=n,_f(this._boundingBox.style,i)}_resetBoundingBoxStyles(){_f(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){_f(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,s=this._overlayRef.getConfig();if(i){const i=this._viewportRuler.getViewportScrollPosition();_f(n,this._getExactOverlayY(e,t,i)),_f(n,this._getExactOverlayX(e,t,i))}else n.position="static";let o="",a=this._getOffset(e,"x"),l=this._getOffset(e,"y");a&&(o+=`translateX(${a}px) `),l&&(o+=`translateY(${l}px)`),n.transform=o.trim(),s.maxHeight&&(i?n.maxHeight=vd(s.maxHeight):r&&(n.maxHeight="")),s.maxWidth&&(i?n.maxWidth=vd(s.maxWidth):r&&(n.maxWidth="")),_f(this._pane.style,n)}_getExactOverlayY(t,e,n){let i={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let s=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=s,"bottom"===t.overlayY?i.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":i.top=vd(r.y),i}_getExactOverlayX(t,e,n){let i,r={left:"",right:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,n)),i=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left","right"===i?r.right=this._document.documentElement.clientWidth-(s.x+this._overlayRect.width)+"px":r.left=vd(s.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:rf(t,n),isOriginOutsideView:nf(t,n),isOverlayClipped:rf(e,n),isOverlayOutsideView:nf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,n=this._viewportRuler.getViewportScrollPosition();return{top:n.top+this._viewportMargin,left:n.left+this._viewportMargin,right:n.left+t-this._viewportMargin,bottom:n.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&yd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;if(t instanceof kl)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();const e=t.width||0,n=t.height||0;return{top:t.y,bottom:t.y+n,left:t.x,right:t.x+e,height:n,width:e}}}function _f(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function wf(t){if("number"!=typeof t&&null!=t){const[e,n]=t.split(yf);return n&&"px"!==n?null:parseFloat(e)}return t||null}function xf(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}class Sf{constructor(t,e,n,i,r,s,o){this._preferredPositions=[],this._positionStrategy=new vf(n,i,r,s,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e),this.onPositionChange=this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,i){const r=new lf(t,e,n,i);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Ef="cdk-global-overlay-wrapper";class Cf{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(Ef),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),{width:i,height:r,maxWidth:s,maxHeight:o}=n,a=!("100%"!==i&&"100vw"!==i||s&&"100%"!==s&&"100vw"!==s),l=!("100%"!==r&&"100vh"!==r||o&&"100%"!==o&&"100vh"!==o);t.position=this._cssPosition,t.marginLeft=a?"0":this._leftOffset,t.marginTop=l?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,a?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=l?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Ef),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}let Of=(()=>{class t{constructor(t,e,n,i){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=i}global(){return new Cf}connectedTo(t,e,n){return new Sf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new vf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},t.\u0275prov=xt({factory:function(){return new t(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},token:t,providedIn:"root"}),t})(),Tf=0,kf=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=i,this._keyboardDispatcher=r,this._injector=s,this._ngZone=o,this._document=a,this._directionality=l,this._location=c,this._outsideClickDispatcher=u}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),i=this._createPortalOutlet(n),r=new af(t);return r.direction=r.direction||this._directionality.value,new mf(i,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id="cdk-overlay-"+Tf++,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(Uu)),new Bp(t,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Ci(of),Ci(gf),Ci(El),Ci(Of),Ci(hf),Ci(No),Ci(xu),Ci(Yu),Ci(Op),Ci(lh),Ci(df))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Af=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Pf=new oi("cdk-connected-overlay-scroll-strategy");let Mf=(()=>{class t{constructor(t){this.elementRef=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl))},t.\u0275dir=se({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t})(),If=(()=>{class t{constructor(t,e,n,i,r){this._overlay=t,this._dir=r,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=g.EMPTY,this._attachSubscription=g.EMPTY,this._detachSubscription=g.EMPTY,this._positionSubscription=g.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Rc,this.positionChange=new Rc,this.attach=new Rc,this.detach=new Rc,this.overlayKeydown=new Rc,this.overlayOutsideClick=new Rc,this._templatePortal=new Lp(e,n),this._scrollStrategyFactory=i,this.scrollStrategy=this._scrollStrategyFactory()}get offsetX(){return this._offsetX}set offsetX(t){this._offsetX=t,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(t){this._offsetY=t,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(t){this._hasBackdrop=md(t)}get lockPosition(){return this._lockPosition}set lockPosition(t){this._lockPosition=md(t)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(t){this._flexibleDimensions=md(t)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(t){this._growAfterOpen=md(t)}get push(){return this._push}set push(t){this._push=md(t)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(t){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),t.origin&&this.open&&this._position.apply()),t.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Af);const t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=t.detachments().subscribe(()=>this.detach.emit()),t.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),27===t.keyCode&&!this.disableClose&&!Qp(t)&&(t.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{this.overlayOutsideClick.next(t)})}_buildConfig(){const t=this._position=this.positionStrategy||this._createPositionStrategy(),e=new af({direction:this._dir,positionStrategy:t,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(e.width=this.width),(this.height||0===this.height)&&(e.height=this.height),(this.minWidth||0===this.minWidth)&&(e.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(e.minHeight=this.minHeight),this.backdropClass&&(e.backdropClass=this.backdropClass),this.panelClass&&(e.panelClass=this.panelClass),e}_updatePositionStrategy(t){const e=this.positions.map(t=>({originX:t.originX,originY:t.originY,overlayX:t.overlayX,overlayY:t.overlayY,offsetX:t.offsetX||this.offsetX,offsetY:t.offsetY||this.offsetY,panelClass:t.panelClass||void 0}));return t.setOrigin(this.origin.elementRef).withPositions(e).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const t=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(t),t}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(t=>{this.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(Xp(()=>this.positionChange.observers.length>0)).subscribe(t=>{this.positionChange.emit(t),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(sc),ea(hc),ea(Pf),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ye]}),t})();const Df={provide:Pf,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};let Rf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[kf,Df],imports:[[Tp,Hp,Dp],Dp]}),t})(),Nf=(()=>{class t extends gf{constructor(){super(...arguments),this.attached=!1}setRootElement(t){this.attached&&(this.rootElement.nativeElement.removeChild(this._containerElement),this.attached=!1),this.rootElement=t,this.rootElement.nativeElement.style.display="block",this.rootElement.nativeElement.style.position="contents",this.rootElement.nativeElement.style.height="100%",this.appendToRoot()}_createContainer(){super._createContainer(),this.appendToRoot()}appendToRoot(){!this._containerElement||!this.rootElement||(this.rootElement.nativeElement.appendChild(this._containerElement),this.attached=!0)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const Lf={schedule(t,e){const n=setTimeout(t,e);return()=>clearTimeout(n)},scheduleBeforeRender(t){if("undefined"==typeof window)return Lf.schedule(t,0);if(void 0===window.requestAnimationFrame)return Lf.schedule(t,16);const e=window.requestAnimationFrame(t);return()=>window.cancelAnimationFrame(e)}};let jf;function Ff(t,e,n){let i=n;return function(t){return!!t&&t.nodeType===Node.ELEMENT_NODE}(t)&&e.some((e,n)=>!("*"===e||!function(t,e){if(!jf){const t=Element.prototype;jf=t.matches||t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector}return t.nodeType===Node.ELEMENT_NODE&&jf.call(t,e)}(t,e)||(i=n,0))),i}class Bf{constructor(t,e){this.componentFactory=e.get(El).resolveComponentFactory(t)}create(t){return new Vf(this.componentFactory,t)}}class Vf{constructor(t,e){this.componentFactory=t,this.injector=e,this.eventEmitters=new lp(1),this.events=this.eventEmitters.pipe(Qd(t=>Q(...t))),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(({propName:t})=>t)),this.ngZone=this.injector.get(xu),this.elementZone="undefined"==typeof Zone?null:this.ngZone.run(()=>Zone.current)}connect(t){this.runInZone(()=>{if(null!==this.scheduledDestroyFn)return this.scheduledDestroyFn(),void(this.scheduledDestroyFn=null);null===this.componentRef&&this.initializeComponent(t)})}disconnect(){this.runInZone(()=>{null===this.componentRef||null!==this.scheduledDestroyFn||(this.scheduledDestroyFn=Lf.schedule(()=>{null!==this.componentRef&&(this.componentRef.destroy(),this.componentRef=null,this.viewChangeDetectorRef=null)},10))})}getInputValue(t){return this.runInZone(()=>null===this.componentRef?this.initialInputValues.get(t):this.componentRef.instance[t])}setInputValue(t,e){this.runInZone(()=>{null!==this.componentRef?function(t,e){return t===e||t!=t&&e!=e}(e,this.getInputValue(t))&&(void 0!==e||!this.unchangedInputs.has(t))||(this.recordInputChange(t,e),this.unchangedInputs.delete(t),this.hasInputChanges=!0,this.componentRef.instance[t]=e,this.scheduleDetectChanges()):this.initialInputValues.set(t,e)})}initializeComponent(t){const e=No.create({providers:[],parent:this.injector}),n=function(t,e){const n=t.childNodes,i=e.map(()=>[]);let r=-1;e.some((t,e)=>"*"===t&&(r=e,!0));for(let s=0,o=n.length;s{this.initialInputValues.has(t)&&this.setInputValue(t,this.initialInputValues.get(t))}),this.initialInputValues.clear()}initializeOutputs(t){const e=this.componentFactory.outputs.map(({propName:e,templateName:n})=>t.instance[e].pipe(D(t=>({name:n,value:t}))));this.eventEmitters.next(e)}callNgOnChanges(t){if(!this.implementsOnChanges||null===this.inputChanges)return;const e=this.inputChanges;this.inputChanges=null,t.instance.ngOnChanges(e)}markViewForCheck(t){this.hasInputChanges&&(this.hasInputChanges=!1,t.markForCheck())}scheduleDetectChanges(){this.scheduledChangeDetectionFn||(this.scheduledChangeDetectionFn=Lf.scheduleBeforeRender(()=>{this.scheduledChangeDetectionFn=null,this.detectChanges()}))}recordInputChange(t,e){if(!this.implementsOnChanges)return;null===this.inputChanges&&(this.inputChanges={});const n=this.inputChanges[t];if(n)return void(n.currentValue=e);const i=this.unchangedInputs.has(t),r=i?void 0:this.getInputValue(t);this.inputChanges[t]=new be(r,e,i)}detectChanges(){null!==this.componentRef&&(this.callNgOnChanges(this.componentRef),this.markViewForCheck(this.viewChangeDetectorRef),this.componentRef.changeDetectorRef.detectChanges())}runInZone(t){return this.elementZone&&Zone.current!==this.elementZone?this.ngZone.run(t):t()}}class zf extends HTMLElement{constructor(){super(...arguments),this.ngElementEventsSubscription=null}}class Uf extends P{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new T;return this._value}next(t){super.next(this._value=t)}}function Hf(){}function $f(t,e,n){return function(i){return i.lift(new Gf(t,e,n))}}class Gf{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Wf(t,this.nextOrObserver,this.error,this.complete))}}class Wf extends v{constructor(t,e,n,i){super(t),this._tapNext=Hf,this._tapError=Hf,this._tapComplete=Hf,this._tapError=n||Hf,this._tapComplete=i||Hf,a(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Hf,this._tapError=e.error||Hf,this._tapComplete=e.complete||Hf)}_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(e){return void this.destination.error(e)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}function qf(t,e=jd){return n=>n.lift(new Xf(t,e))}class Xf{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Yf(t,this.dueTime,this.scheduler))}}class Yf extends v{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(Kf,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 Kf(t){t.debouncedNext()}function Qf(t){return e=>e.lift(new Zf(t))}class Zf{constructor(t){this.total=t}call(t,e){return e.subscribe(new Jf(t,this.total))}}class Jf extends v{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){++this.count>this.total&&this.destination.next(t)}}let tg=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),eg=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=_d(t);return new C(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 P,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)(Ci(tg))},t.\u0275prov=xt({factory:function(){return new t(Ci(tg))},token:t,providedIn:"root"}),t})(),ng=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Rc,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=bd(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(qf(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){var t;null===(t=this._currentSubscription)||void 0===t||t.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(eg),ea(kl),ea(xu))},t.\u0275dir=se({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),ig=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[tg]}),t})();function rg(t,e){return(t.getAttribute(e)||"").match(/\S+/g)||[]}const sg="cdk-describedby-message-container",og="cdk-describedby-message",ag="cdk-describedby-host";let lg=0;const cg=new Map;let ug=null,hg=(()=>{class t{constructor(t){this._document=t}describe(t,e,n){if(!this._canBeDescribed(t,e))return;const i=dg(e,n);"string"!=typeof e?(pg(e),cg.set(i,{messageElement:e,referenceCount:0})):cg.has(i)||this._createMessageElement(e,n),this._isElementDescribedByMessage(t,i)||this._addMessageReference(t,i)}removeDescription(t,e,n){if(!e||!this._isElementNode(t))return;const i=dg(e,n);if(this._isElementDescribedByMessage(t,i)&&this._removeMessageReference(t,i),"string"==typeof e){const t=cg.get(i);t&&0===t.referenceCount&&this._deleteMessageElement(i)}ug&&0===ug.childNodes.length&&this._deleteMessagesContainer()}ngOnDestroy(){const t=this._document.querySelectorAll(`[${ag}]`);for(let e=0;e0!=t.indexOf(og));t.setAttribute("aria-describedby",e.join(" "))}_addMessageReference(t,e){const n=cg.get(e);(function(t,e,n){const i=rg(t,e);i.some(t=>t.trim()==n.trim())||(i.push(n.trim()),t.setAttribute(e,i.join(" ")))})(t,"aria-describedby",n.messageElement.id),t.setAttribute(ag,""),n.referenceCount++}_removeMessageReference(t,e){const n=cg.get(e);n.referenceCount--,function(t,e,n){const i=rg(t,e).filter(t=>t!=n.trim());i.length?t.setAttribute(e,i.join(" ")):t.removeAttribute(e)}(t,"aria-describedby",n.messageElement.id),t.removeAttribute(ag)}_isElementDescribedByMessage(t,e){const n=rg(t,"aria-describedby"),i=cg.get(e),r=i&&i.messageElement.id;return!!r&&-1!=n.indexOf(r)}_canBeDescribed(t,e){if(!this._isElementNode(t))return!1;if(e&&"object"==typeof e)return!0;const n=null==e?"":`${e}`.trim(),i=t.getAttribute("aria-label");return!(!n||i&&i.trim()===n)}_isElementNode(t){return t.nodeType===this._document.ELEMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})();function dg(t,e){return"string"==typeof t?`${e||""}/${t}`:t}function pg(t){t.id||(t.id=`${og}-${lg++}`)}class fg extends class{constructor(t){this._items=t,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new P,this._typeaheadSubscription=g.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._skipPredicateFn=t=>t.disabled,this._pressedLetters=[],this.tabOut=new P,this.change=new P,t instanceof Lc&&t.changes.subscribe(t=>{if(this._activeItem){const e=t.toArray().indexOf(this._activeItem);e>-1&&e!==this._activeItemIndex&&(this._activeItemIndex=e)}})}skipPredicate(t){return this._skipPredicateFn=t,this}withWrap(t=!0){return this._wrap=t,this}withVerticalOrientation(t=!0){return this._vertical=t,this}withHorizontalOrientation(t){return this._horizontal=t,this}withAllowedModifierKeys(t){return this._allowedModifierKeys=t,this}withTypeAhead(t=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe($f(t=>this._pressedLetters.push(t)),qf(t),Hd(()=>this._pressedLetters.length>0),D(()=>this._pressedLetters.join(""))).subscribe(t=>{const e=this._getItemsArray();for(let n=1;n!t[e]||this._allowedModifierKeys.indexOf(e)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&n){this.setNextItemActive();break}return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&n){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&n){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}return;default:return void((n||Qp(t,"shiftKey"))&&(t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))))}this._pressedLetters=[],t.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(t){const e=this._getItemsArray(),n="number"==typeof t?t:e.indexOf(t),i=e[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}_setActiveItemByDelta(t){this._wrap?this._setActiveInWrapMode(t):this._setActiveInDefaultMode(t)}_setActiveInWrapMode(t){const e=this._getItemsArray();for(let n=1;n<=e.length;n++){const i=(this._activeItemIndex+t*n+e.length)%e.length;if(!this._skipPredicateFn(e[i]))return void this.setActiveItem(i)}}_setActiveInDefaultMode(t){this._setActiveItemByIndex(this._activeItemIndex+t,t)}_setActiveItemByIndex(t,e){const n=this._getItemsArray();if(n[t]){for(;this._skipPredicateFn(n[t]);)if(!n[t+=e])return;this.setActiveItem(t)}}_getItemsArray(){return this._items instanceof Lc?this._items.toArray():this._items}}{setActiveItem(t){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(t),this.activeItem&&this.activeItem.setActiveStyles()}}let gg=(()=>{class t{constructor(t){this._platform=t}isDisabled(t){return t.hasAttribute("disabled")}isVisible(t){return function(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(t)&&"visible"===getComputedStyle(t).visibility}isTabbable(t){if(!this._platform.isBrowser)return!1;const e=function(t){try{return t.frameElement}catch(e){return null}}(function(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}(t));if(e&&(-1===bg(e)||!this.isVisible(e)))return!1;let n=t.nodeName.toLowerCase(),i=bg(t);return t.hasAttribute("contenteditable")?-1!==i:!("iframe"===n||"object"===n||this._platform.WEBKIT&&this._platform.IOS&&!function(t){let e=t.nodeName.toLowerCase(),n="input"===e&&t.type;return"text"===n||"password"===n||"select"===e||"textarea"===e}(t))&&("audio"===n?!!t.hasAttribute("controls")&&-1!==i:"video"===n?-1!==i&&(null!==i||this._platform.FIREFOX||t.hasAttribute("controls")):t.tabIndex>=0)}isFocusable(t,e){return function(t){return!function(t){return function(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function(t){let e=t.nodeName.toLowerCase();return"input"===e||"select"===e||"button"===e||"textarea"===e}(t)||function(t){return function(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||mg(t))}(t)&&!this.isDisabled(t)&&((null==e?void 0:e.ignoreVisibility)||this.isVisible(t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function mg(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;let e=t.getAttribute("tabindex");return"-32768"!=e&&!(!e||isNaN(parseInt(e,10)))}function bg(t){if(!mg(t))return null;const e=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(e)?-1:e}class yg{constructor(t,e,n,i,r=!1){this._element=t,this._checker=e,this._ngZone=n,this._document=i,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,r||this.attachAnchors()}get enabled(){return this._enabled}set enabled(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}destroy(){const t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(t)))})}focusFirstTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(t)))})}focusLastTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(t)))})}_getRegionBoundary(t){let e=this._element.querySelectorAll(`[cdk-focus-region-${t}], [cdkFocusRegion${t}], [cdk-focus-${t}]`);for(let n=0;n=0;n--){let t=e[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[n]):null;if(t)return t}return null}_createAnchor(){const t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t}_toggleAnchorTabIndex(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}_executeOnStable(t){this._ngZone.isStable?t():this._ngZone.onStable.pipe(Gp(1)).subscribe(t)}}let vg=(()=>{class t{constructor(t,e,n){this._checker=t,this._ngZone=e,this._document=n}create(t,e=!1){return new yg(t,this._checker,this._ngZone,this._document,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(gg),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(gg),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();function _g(t){return 0===t.offsetX&&0===t.offsetY}function wg(t){const e=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!(!e||-1!==e.identifier||null!=e.radiusX&&1!==e.radiusX||null!=e.radiusY&&1!==e.radiusY)}"undefined"!=typeof Element&∈const xg=new oi("cdk-input-modality-detector-options"),Sg={ignoreKeys:[18,17,224,91,16]},Eg=_p({passive:!0,capture:!0});let Cg=(()=>{class t{constructor(t,e,n,i){this._platform=t,this._mostRecentTarget=null,this._modality=new Uf(null),this._lastTouchMs=0,this._onKeydown=t=>{var e,n;(null===(n=null===(e=this._options)||void 0===e?void 0:e.ignoreKeys)||void 0===n?void 0:n.some(e=>e===t.keyCode))||(this._modality.next("keyboard"),this._mostRecentTarget=Ep(t))},this._onMousedown=t=>{Date.now()-this._lastTouchMs<650||(this._modality.next(_g(t)?"keyboard":"mouse"),this._mostRecentTarget=Ep(t))},this._onTouchstart=t=>{wg(t)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Ep(t))},this._options=Object.assign(Object.assign({},Sg),i),this.modalityDetected=this._modality.pipe(Qf(1)),this.modalityChanged=this.modalityDetected.pipe(Rd()),t.isBrowser&&e.runOutsideAngular(()=>{n.addEventListener("keydown",this._onKeydown,Eg),n.addEventListener("mousedown",this._onMousedown,Eg),n.addEventListener("touchstart",this._onTouchstart,Eg)})}get mostRecentModality(){return this._modality.value}ngOnDestroy(){!this._platform.isBrowser||(document.removeEventListener("keydown",this._onKeydown,Eg),document.removeEventListener("mousedown",this._onMousedown,Eg),document.removeEventListener("touchstart",this._onTouchstart,Eg))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},token:t,providedIn:"root"}),t})();const Og=new oi("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),Tg=new oi("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let kg=(()=>{class t{constructor(t,e,n,i){this._ngZone=e,this._defaultOptions=i,this._document=n,this._liveElement=t||this._createLiveElement()}announce(t,...e){const n=this._defaultOptions;let i,r;return 1===e.length&&"number"==typeof e[0]?r=e[0]:[i,r]=e,this.clear(),clearTimeout(this._previousTimeout),i||(i=n&&n.politeness?n.politeness:"polite"),null==r&&n&&(r=n.duration),this._liveElement.setAttribute("aria-live",i),this._ngZone.runOutsideAngular(()=>new Promise(e=>{clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=t,e(),"number"==typeof r&&(this._previousTimeout=setTimeout(()=>this.clear(),r))},100)}))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement&&this._liveElement.parentNode&&(this._liveElement.parentNode.removeChild(this._liveElement),this._liveElement=null)}_createLiveElement(){const t="cdk-live-announcer-element",e=this._document.getElementsByClassName(t),n=this._document.createElement("div");for(let i=0;i{class t{constructor(t,e,n,i,r){this._ngZone=t,this._platform=e,this._inputModalityDetector=n,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new P,this._rootNodeFocusAndBlurListener=t=>{const e=Ep(t),n="focus"===t.type?this._onFocus:this._onBlur;for(let i=e;i;i=i.parentElement)n.call(this,t,i)},this._document=i,this._detectionMode=(null==r?void 0:r.detectionMode)||0}monitor(t,e=!1){const n=_d(t);if(!this._platform.isBrowser||1!==n.nodeType)return wd(null);const i=xp(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return e&&(r.checkChildren=!0),r.subject;const s={checkChildren:e,subject:new P,rootNode:i};return this._elementInfo.set(n,s),this._registerGlobalListeners(s),s.subject}stopMonitoring(t){const e=_d(t),n=this._elementInfo.get(e);n&&(n.subject.complete(),this._setClasses(e),this._elementInfo.delete(e),this._removeGlobalListeners(n))}focusVia(t,e,n){const i=_d(t);i===this._getDocument().activeElement?this._getClosestElementsInfo(i).forEach(([t,n])=>this._originChanged(t,e,n)):(this._setOrigin(e),"function"==typeof i.focus&&i.focus(n))}ngOnDestroy(){this._elementInfo.forEach((t,e)=>this.stopMonitoring(e))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_toggleClass(t,e,n){n?t.classList.add(e):t.classList.remove(e)}_getFocusOrigin(t){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(t)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}_shouldBeAttributedToTouch(t){return 1===this._detectionMode||!!(null==t?void 0:t.contains(this._inputModalityDetector._mostRecentTarget))}_setClasses(t,e){this._toggleClass(t,"cdk-focused",!!e),this._toggleClass(t,"cdk-touch-focused","touch"===e),this._toggleClass(t,"cdk-keyboard-focused","keyboard"===e),this._toggleClass(t,"cdk-mouse-focused","mouse"===e),this._toggleClass(t,"cdk-program-focused","program"===e)}_setOrigin(t,e=!1){this._ngZone.runOutsideAngular(()=>{this._origin=t,this._originFromTouchInteraction="touch"===t&&e,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(t,e){const n=this._elementInfo.get(e),i=Ep(t);!n||!n.checkChildren&&e!==i||this._originChanged(e,this._getFocusOrigin(i),n)}_onBlur(t,e){const n=this._elementInfo.get(e);!n||n.checkChildren&&t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||(this._setClasses(e),this._emitOrigin(n.subject,null))}_emitOrigin(t,e){this._ngZone.run(()=>t.next(e))}_registerGlobalListeners(t){if(!this._platform.isBrowser)return;const e=t.rootNode,n=this._rootNodeFocusListenerCount.get(e)||0;n||this._ngZone.runOutsideAngular(()=>{e.addEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.addEventListener("blur",this._rootNodeFocusAndBlurListener,Pg)}),this._rootNodeFocusListenerCount.set(e,n+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(Wd(this._stopInputModalityDetector)).subscribe(t=>{this._setOrigin(t,!0)}))}_removeGlobalListeners(t){const e=t.rootNode;if(this._rootNodeFocusListenerCount.has(e)){const t=this._rootNodeFocusListenerCount.get(e);t>1?this._rootNodeFocusListenerCount.set(e,t-1):(e.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Pg),this._rootNodeFocusListenerCount.delete(e))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(t,e,n){this._setClasses(t,e),this._emitOrigin(n.subject,e),this._lastFocusOrigin=e}_getClosestElementsInfo(t){const e=[];return this._elementInfo.forEach((n,i)=>{(i===t||n.checkChildren&&i.contains(t))&&e.push([i,n])}),e}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},token:t,providedIn:"root"}),t})();const Ig="cdk-high-contrast-black-on-white",Dg="cdk-high-contrast-white-on-black",Rg="cdk-high-contrast-active";let Ng=(()=>{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._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove(Rg),t.remove(Ig),t.remove(Dg),this._hasCheckedHighContrastMode=!0;const e=this.getHighContrastMode();1===e?(t.add(Rg),t.add(Ig)):2===e&&(t.add(Rg),t.add(Dg))}}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(Yu))},token:t,providedIn:"root"}),t})(),Lg=(()=>{class t{constructor(t){t._applyBodyHighContrastModeCssClasses()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp,ig]]}),t})();const jg=new Rl("12.2.5");class Fg{}const Bg="*";function Vg(t,e){return{type:7,name:t,definitions:e,options:{}}}function zg(t,e=null){return{type:4,styles:e,timings:t}}function Ug(t,e=null){return{type:2,steps:t,options:e}}function Hg(t){return{type:6,styles:t,offset:null}}function $g(t,e,n){return{type:0,name:t,styles:e,options:n}}function Gg(t){return{type:5,steps:t}}function Wg(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function qg(t=null){return{type:9,options:t}}function Xg(t,e,n=null){return{type:11,selector:t,animation:e,options:n}}function Yg(t){Promise.resolve(null).then(t)}class Kg{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,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(){Yg(()=>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(){this._started=!1}setPosition(t){this._position=this.totalTime?t*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class Qg{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 r=this.players.length;0==r?Yg(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++i==r&&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(){const t=this.players.reduce((t,e)=>null===t||e.totalTime>t.totalTime?e:t,null);return null!=t?t.getPosition():0}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 Zg(){return"undefined"!=typeof window&&void 0!==window.document}function Jg(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function tm(t){switch(t.length){case 0:return new Kg;case 1:return t[0];default:return new Qg(t)}}function em(t,e,n,i,r={},s={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,u=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=r[n];break;case Bg:a=s[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}u[i]=a}),i||a.push(u),c=u,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 nm(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&im(n,"start",t)));break;case"done":t.onDone(()=>i(n&&im(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&im(n,"destroy",t)))}}function im(t,e,n){const i=n.totalTime,r=rm(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),s=t._data;return null!=s&&(r._data=s),r}function rm(t,e,n,i,r="",s=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:r,totalTime:s,disabled:!!o}}function sm(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 om(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let am=(t,e)=>!1,lm=(t,e)=>!1,cm=(t,e,n)=>[];const um=Jg();(um||"undefined"!=typeof Element)&&(am=Zg()?(t,e)=>{for(;e&&e!==document.documentElement;){if(e===t)return!0;e=e.parentNode||e.host}return!1}:(t,e)=>t.contains(e),lm=(()=>{if(um||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]):lm}})(),cm=(t,e,n)=>{let i=[];if(n){const n=t.querySelectorAll(e);for(let t=0;t{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let ym=(()=>{class t{validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,r,s=[],o){return new Kg(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class vm{}vm.NOOP=new ym;const _m="ng-enter",wm="ng-leave",xm="ng-trigger",Sm=".ng-trigger",Em="ng-animating",Cm=".ng-animating";function Om(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Tm(parseFloat(e[1]),e[2])}function Tm(t,e){switch(e){case"s":return 1e3*t;default:return t}}function km(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,r=0,s="";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=Tm(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(r=Tm(parseFloat(o),n[4]));const a=n[5];a&&(s=a)}else i=t;if(!n){let n=!1,s=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(s,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:r,easing:s}}(t,e,n)}function Am(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Pm(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Am(t,n);return n}function Mm(t,e,n){return n?e+":"+n+";":""}function Im(t){let e="";for(let n=0;n{const r=zm(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[r]),t.style[r]=e[i]}),Jg()&&Im(t))}function Rm(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=zm(e);t.style[n]=""}),Jg()&&Im(t))}function Nm(t){return Array.isArray(t)?1==t.length?t[0]:Ug(t):t}const Lm=new RegExp("{{\\s*(.+?)\\s*}}","g");function jm(t){let e=[];if("string"==typeof t){let n;for(;n=Lm.exec(t);)e.push(n[1]);Lm.lastIndex=0}return e}function Fm(t,e,n){const i=t.toString(),r=i.replace(Lm,(t,i)=>{let r=e[i];return e.hasOwnProperty(i)||(n.push(`Please provide a value for the animation param ${i}`),r=""),r.toString()});return r==i?t:r}function Bm(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Vm=/-+([a-z0-9])/g;function zm(t){return t.replace(Vm,(...t)=>t[1].toUpperCase())}function Um(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function Hm(t,e){return 0===t||0===e}function $m(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let s=e[0],o=[];if(i.forEach(t=>{s.hasOwnProperty(t)||o.push(t),s[t]=n[t]}),o.length)for(var r=1;rfunction(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 r=i[1],s=i[2],o=i[3];e.push(Km(r,o));"<"==s[0]&&!("*"==r&&"*"==o)&&e.push(Km(o,r))}(t,n,e)):n.push(t),n}const Xm=new Set(["true","1"]),Ym=new Set(["false","0"]);function Km(t,e){const n=Xm.has(t)||Ym.has(t),i=Xm.has(e)||Ym.has(e);return(r,s)=>{let o="*"==t||t==r,a="*"==e||e==s;return!o&&n&&"boolean"==typeof r&&(o=r?Xm.has(t):Ym.has(t)),!a&&i&&"boolean"==typeof s&&(a=s?Xm.has(e):Ym.has(e)),o&&a}}const Qm=new RegExp("s*:selfs*,?","g");function Zm(t,e,n){return new Jm(t).build(e,n)}class Jm{constructor(t){this._driver=t}build(t,e){const n=new tb(e);return this._resetContextStyleTimingState(n),Gm(this,Nm(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 r=[],s=[];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,r.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,i+=r.depCount,s.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:s,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 r=new Set,s=i||{};if(n.styles.forEach(t=>{if(eb(t)){const e=t;Object.keys(e).forEach(t=>{jm(e[t]).forEach(t=>{s.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=Bm(r.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=Gm(this,Nm(t.animation),e);return{type:1,matchers:qm(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:nb(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Gm(this,t,e)),options:nb(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const r=t.steps.map(t=>{e.currentTime=n;const r=Gm(this,t,e);return i=Math.max(i,e.currentTime),r});return e.currentTime=i,{type:3,steps:r,options:nb(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 ib(km(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=ib(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||km(i,e),ib(n.duration,n.delay,n.easing)}(t.timings,e.errors);e.currentAnimateTimings=n;let i,r=t.styles?t.styles:Hg({});if(5==r.type)i=this.visitKeyframes(r,e);else{let r=t.styles,s=!1;if(!r){s=!0;const t={};n.easing&&(t.easing=n.easing),r=Hg(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(r,e);o.isEmptyStep=s,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==Bg?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,r=null;return n.forEach(t=>{if(eb(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,r=e.currentTime;n&&r>0&&(r-=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 s=e.collectedStyles[e.currentQuerySelector],o=s[n];let a=!0;o&&(r!=i&&r>=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 "${r}ms" and "${i}ms"`),a=!1),r=o.startTime),a&&(s[n]={startTime:r,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},r=jm(t);r.length&&r.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 r=[];let s=!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(eb(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(eb(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,s=s||c0&&i{const s=u>0?i==h?1:u*i:r[i],o=s*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=s,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Gm(this,Nm(t.animation),e),options:nb(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:nb(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:nb(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[r,s]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(Qm,"")),[t=t.replace(/@\*/g,Sm).replace(/@\w+/g,t=>Sm+"-"+t.substr(1)).replace(/:animating/g,Cm),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,sm(e.collectedStyles,e.currentQuerySelector,{});const o=Gm(this,Nm(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:i.limit||0,optional:!!i.optional,includeSelf:s,animation:o,originalSelector:t.selector,options:nb(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"}:km(t.timings,e.errors,!0);return{type:12,animation:Gm(this,Nm(t.animation),e),timings:n,options:null}}}class tb{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 eb(t){return!Array.isArray(t)&&"object"==typeof t}function nb(t){return t?(t=Am(t)).params&&(t.params=function(t){return t?Am(t):null}(t.params)):t={},t}function ib(t,e,n){return{duration:t,delay:e,easing:n}}function rb(t,e,n,i,r,s,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:r,delay:s,totalTime:r+s,easing:o,subTimeline:a}}class sb{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 ob=new RegExp(":enter","g"),ab=new RegExp(":leave","g");function lb(t,e,n,i,r,s={},o={},a,l,c=[]){return(new cb).buildKeyframes(t,e,n,i,r,s,o,a,l,c)}class cb{buildKeyframes(t,e,n,i,r,s,o,a,l,c=[]){l=l||new sb;const u=new hb(t,e,l,i,r,c,[]);u.options=a,u.currentTimeline.setStyles([s],null,u.errors,a),Gm(this,n,u);const h=u.timelines.filter(t=>t.containsAnimation());if(h.length&&Object.keys(o).length){const t=h[h.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,u.errors,a)}return h.length?h.map(t=>t.buildKeyframes()):[rb(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),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(n,i,i.options);r!=s&&e.transformIntoNewTimeline(s)}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 r=null!=n.duration?Om(n.duration):null,s=null!=n.delay?Om(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,s);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Gm(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const r=t.options;if(r&&(r.params||r.delay)&&(i=e.createSubContext(r),i.transformIntoNewTimeline(),null!=r.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=ub);const t=Om(r.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Gm(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 r=t.options&&t.options.delay?Om(t.options.delay):0;t.steps.forEach(s=>{const o=e.createSubContext(t.options);r&&o.delayNextStep(r),Gm(this,s,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 km(e.params?Fm(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 r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,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 r=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,r=n.duration,s=e.createSubContext().currentTimeline;s.easing=n.easing,t.styles.forEach(t=>{s.forwardTime((t.offset||0)*r),s.setStyles(t.styles,t.easing,e.errors,e.options),s.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(s),e.transformIntoNewTimeline(i+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},r=i.delay?Om(i.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=ub);let s=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);r&&o.delayNextStep(r),n===e.element&&(a=o.currentTimeline),Gm(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,r=t.timings,s=Math.abs(r.duration),o=s*(e.currentQueryTotal-1);let a=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Gm(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const ub={};class hb{constructor(t,e,n,i,r,s,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=r,this.errors=s,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=ub,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new db(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=Om(n.duration)),null!=n.delay&&(i.delay=Om(n.delay));const r=n.params;if(r){let t=i.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{(!e||!t.hasOwnProperty(n))&&(t[n]=Fm(r[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,r=new hb(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=ub,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:""},r=new pb(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(r),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,r,s){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(ob,"."+this._enterClassName)).replace(ab,"."+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!r&&0==o.length&&s.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class db{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 db(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]||Bg,this._currentKeyframe[t]=Bg}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const r=i&&i.params||{},s=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]=Bg})):Pm(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(s).forEach(t=>{const e=Fm(s[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:Bg),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((r,s)=>{const o=Pm(r,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):i==Bg&&e.add(n)}),n||(o.offset=s/this.duration),i.push(o)});const r=t.size?Bm(t.values()):[],s=e.size?Bm(e.values()):[];if(n){const t=i[0],e=Am(t);t.offset=0,e.offset=1,i=[t,e]}return rb(this.element,i,r,s,this.duration,this.startTime,this.easing,!1)}}class pb extends db{constructor(t,e,n,i,r,s,o=!1){super(t,e,s.delay),this.keyframes=n,this.preStyleProps=i,this.postStyleProps=r,this._stretchStartingKeyframe=o,this.timings={duration:s.duration,delay:s.delay,easing:s.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 r=[],s=n+e,o=e/s,a=Pm(t[0],!1);a.offset=0,r.push(a);const l=Pm(t[0],!1);l.offset=fb(o),r.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Pm(t[i],!1);o.offset=fb((e+o.offset*n)/s),r.push(o)}n=s,e=0,i="",t=r}return rb(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function fb(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class gb{}class mb extends gb{normalizePropertyName(t,e){return zm(t)}normalizeStyleValue(t,e,n,i){let r="";const s=n.toString().trim();if(bb[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="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 s+r}}const bb=(()=>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 yb(t,e,n,i,r,s,o,a,l,c,u,h,d){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:s,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:h,errors:d}}const vb={};class _b{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,r){return t.some(t=>t(e,n,i,r))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],r=this._stateStyles[t],s=i?i.buildStyles(e,n):{};return r?r.buildStyles(e,n):s}build(t,e,n,i,r,s,o,a,l,c){const u=[],h=this.ast.options&&this.ast.options.params||vb,d=this.buildStyles(n,o&&o.params||vb,u),p=a&&a.params||vb,f=this.buildStyles(i,p,u),g=new Set,m=new Map,b=new Map,y="void"===i,v={params:Object.assign(Object.assign({},h),p)},_=c?[]:lb(t,e,this.ast.animation,r,s,d,f,v,l,u);let w=0;if(_.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),u.length)return yb(e,this._triggerName,n,i,y,d,f,[],[],m,b,w,u);_.forEach(t=>{const n=t.element,i=sm(m,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const r=sm(b,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&g.add(n)});const x=Bm(g.values());return yb(e,this._triggerName,n,i,y,d,f,_,x,m,b,w)}}class wb{constructor(t,e,n){this.styles=t,this.defaultParams=e,this.normalizer=n}buildStyles(t,e){const n={},i=Am(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 r=t;Object.keys(r).forEach(t=>{let s=r[t];s.length>1&&(s=Fm(s,i,e));const o=this.normalizer.normalizePropertyName(t,e);s=this.normalizer.normalizeStyleValue(t,o,s,e),n[o]=s})}}),n}}class xb{constructor(t,e,n){this.name=t,this.ast=e,this._normalizer=n,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new wb(t.style,t.options&&t.options.params||{},n)}),Sb(this.states,"true","1"),Sb(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new _b(t,e,this.states))}),this.fallbackTransition=function(t,e,n){return new _b(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},e)}(t,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(r=>r.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function Sb(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Eb=new sb;class Cb{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=Zm(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,r=em(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],r=this._animations[t];let s;const o=new Map;if(r?(s=lb(this._driver,e,r,_m,wm,{},{},n,Eb,i),s.forEach(t=>{const e=sm(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),s=[]),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,Bg)})});const a=tm(s.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 r=rm(e,"","","");return nm(this._getPlayer(t),n,r,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 r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Ob="ng-animate-queued",Tb="ng-animate-disabled",kb=".ng-animate-disabled",Ab=[],Pb={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Mb={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Ib="__ng_removed";class Db{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=function(t){return null!=t?t:null}(n?t.value:t),n){const e=Am(t);delete e.value,this.options=e}else this.options={};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 Rb="void",Nb=new Db(Rb);class Lb{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,$b(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(!function(t){return"start"==t||"done"==t}(n))throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);const r=sm(this._elementListeners,t,[]),s={name:e,phase:n,callback:i};r.push(s);const o=sm(this._engine.statesByElement,t,{});return o.hasOwnProperty(e)||($b(t,xm),$b(t,xm+"-"+e),o[e]=Nb),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(s);t>=0&&r.splice(t,1),this._triggers[e]||delete o[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 r=this._getTrigger(e),s=new Fb(this.id,e,t);let o=this._engine.statesByElement.get(t);o||($b(t,xm),$b(t,xm+"-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Db(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Nb),l.value!==Rb&&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 r=0;r{Rm(t,n),Dm(t,i)})}return}const c=sm(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let u=r.matchTransition(a.value,l.value,t,l.params),h=!1;if(!u){if(!i)return;u=r.fallbackTransition,h=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:u,fromState:a,toState:l,player:s,isFallbackTransition:h}),h||($b(t,Ob),s.onStart(()=>{Gb(t,Ob)})),s.onDone(()=>{let e=this.players.indexOf(s);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(s);t>=0&&n.splice(t,1)}}),this.players.push(s),c.push(s),s}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,Sm,!0);n.forEach(t=>{if(t[Ib])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 r=this._engine.statesByElement.get(t);if(r){const s=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,Rb,i);n&&s.push(n)}}),s.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&tm(s).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t),n=this._engine.statesByElement.get(t);if(e&&n){const i=new Set;e.forEach(e=>{const r=e.name;if(i.has(r))return;i.add(r);const s=this._triggers[r].fallbackTransition,o=n[r]||Nb,a=new Db(Rb),l=new Fb(this.id,r,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:r,transition:s,fromState:o,toState:a,player:l,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[Ib];(!i||i===Pb)&&(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){$b(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const r=n.element,s=this._elementListeners.get(r);s&&s.forEach(e=>{if(e.name==n.triggerName){const i=rm(r,n.triggerName,n.fromState.value,n.toState.value);i._data=t,nm(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 jb{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 Lb(t,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?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 r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+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),$b(t,Tb)):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),Gb(t,Tb))}removeNode(t,e,n,i){if(Bb(e)){const r=t?this._fetchNamespace(t):null;if(r?r.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[Ib]={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,r){return Bb(e)?this._fetchNamespace(t).listen(e,n,i,r):()=>{}}_buildInstruction(t,e,n,i,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,Sm,!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,Cm,!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 tm(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t[Ib];if(e&&e.setForRemoval){if(t[Ib]=Pb,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,kb)&&this.markElementAsDisabled(t,!1),this.driver.query(t,kb,!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?tm(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 sb,i=[],r=new Map,s=[],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=_m+f++;p.set(e,n),t.forEach(t=>$b(t,n))});const g=[],m=new Set,b=new Set;for(let P=0;Pm.add(t)):b.add(t))}const y=new Map,v=Ub(h,Array.from(m));v.forEach((t,e)=>{const n=wm+f++;y.set(e,n),t.forEach(t=>$b(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>Gb(t,n))}),v.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>Gb(t,n))}),g.forEach(t=>{this.processLeaveNode(t)})});const _=[],w=[];for(let P=this._namespaceList.length-1;P>=0;P--)this._namespaceList[P].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(_.push(e),this.collectedEnterElements.length){const t=r[Ib];if(t&&t.setForMove)return void e.destroy()}const c=!u||!this.driver.containsElement(u,r),h=y.get(r),d=p.get(r),f=this._buildInstruction(t,n,d,h,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,f.timelines),s.push({instruction:f,player:e,element:r}),f.queriedElements.forEach(t=>sm(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`))}),_.forEach(t=>t.destroy()),this.reportError(t)}const x=new Map,S=new Map;s.forEach(t=>{const e=t.element;n.has(e)&&(S.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,x))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{sm(x,e,[]).push(t),t.destroy()})});const E=g.filter(t=>Xb(t,a,l)),C=new Map;zb(C,this.driver,b,l,Bg).forEach(t=>{Xb(t,a,l)&&E.push(t)});const O=new Map;d.forEach((t,e)=>{zb(O,this.driver,new Set(t),a,"!")}),E.forEach(t=>{const e=C.get(t),n=O.get(t);C.set(t,Object.assign(Object.assign({},e),n))});const T=[],k=[],A={};s.forEach(t=>{const{element:e,player:s,instruction:o}=t;if(n.has(e)){if(c.has(e))return s.onDestroy(()=>Dm(e,o.toStyles)),s.disabled=!0,s.overrideTotalTime(o.totalTime),void i.push(s);let t=A;if(S.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=S.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>S.set(e,t))}const n=this._buildAnimation(s.namespaceId,o,x,r,O,C);if(s.setRealPlayer(n),t===A)T.push(s);else{const e=this.playersByElement.get(t);e&&e.length&&(s.parentPlayer=tm(e)),i.push(s)}}else Rm(e,o.fromStyles),s.onDestroy(()=>Dm(e,o.toStyles)),k.push(s),c.has(e)&&i.push(s)}),k.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=tm(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let P=0;P!t.destroyed);i.length?Wb(this,t,i):this.processLeaveNode(t)}return g.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[Ib];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,r){let s=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(s=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||r==Rb;e.forEach(e=>{e.queued||!t&&e.triggerName!=i||s.push(e)})}}return(n||i)&&(s=s.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),s}_beforeAnimationBuild(t,e,n){const i=e.element,r=e.isRemovalTransition?void 0:t,s=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=sm(n,t,[]);this._getPreviousPlayers(t,a,r,s,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}Rm(i,e.fromStyles)}_buildAnimation(t,e,n,i,r,s){const o=e.triggerName,a=e.element,l=[],c=new Set,u=new Set,h=e.timelines.map(e=>{const h=e.element;c.add(h);const d=h[Ib];if(d&&d.removedBeforeQueried)return new Kg(e.duration,e.delay);const p=h!==a,f=function(t){const e=[];return qb(t,e),e}((n.get(h)||Ab).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===h),g=r.get(h),m=s.get(h),b=em(0,this._normalizer,0,e.keyframes,g,m),y=this._buildPlayer(e,b,f);if(e.subTimeline&&i&&u.add(h),p){const e=new Fb(t,o,h);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{sm(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=>$b(t,Em));const d=tm(h);return d.onDestroy(()=>{c.forEach(t=>Gb(t,Em)),Dm(a,e.toStyles)}),u.forEach(t=>{sm(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 Kg(t.duration,t.delay)}}class Fb{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new Kg,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=>nm(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){sm(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 Bb(t){return t&&1===t.nodeType}function Vb(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function zb(t,e,n,i,r){const s=[];n.forEach(t=>s.push(Vb(t)));const o=[];i.forEach((n,i)=>{const s={};n.forEach(t=>{const n=s[t]=e.computeStyle(i,t,r);(!n||0==n.length)&&(i[Ib]=Mb,o.push(i))}),t.set(i,s)});let a=0;return n.forEach(t=>Vb(t,s[a++])),o}function Ub(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),r=new Map;function s(t){if(!t)return 1;let e=r.get(t);if(e)return e;const o=t.parentNode;return e=n.has(o)?o:i.has(o)?1:s(o),r.set(t,e),e}return e.forEach(t=>{const e=s(t);1!==e&&n.get(e).push(t)}),n}const Hb="$$classes";function $b(t,e){if(t.classList)t.classList.add(e);else{let n=t[Hb];n||(n=t[Hb]={}),n[e]=!0}}function Gb(t,e){if(t.classList)t.classList.remove(e);else{let n=t[Hb];n&&delete n[e]}}function Wb(t,e,n){tm(n).onDone(()=>t.processLeaveNode(e))}function qb(t,e){for(let n=0;nr.add(t)):e.set(t,i),n.delete(t),!0}class Yb{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new jb(t,e,n),this._timelineEngine=new Cb(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,r){const s=t+"-"+i;let o=this._triggerCache[s];if(!o){const t=[],e=Zm(this._driver,r,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,n){return new xb(t,e,n)}(i,e,this._normalizer),this._triggerCache[s]=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,r]=om(n);this._timelineEngine.command(t,e,r,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,r){if("@"==n.charAt(0)){const[t,i]=om(n);return this._timelineEngine.listen(t,e,i,r)}return this._transitionEngine.listen(t,e,n,i,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Kb(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Zb(e[0]),e.length>1&&(i=Zb(e[e.length-1]))):e&&(n=Zb(e)),n||i?new Qb(t,n,i):null}class Qb{constructor(t,e,n){this._element=t,this._startStyles=e,this._endStyles=n,this._state=0;let i=Qb.initialStylesByElement.get(t);i||Qb.initialStylesByElement.set(t,i={}),this._initialStyles=i}start(){this._state<1&&(this._startStyles&&Dm(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Dm(this._element,this._initialStyles),this._endStyles&&(Dm(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(Qb.initialStylesByElement.delete(this._element),this._startStyles&&(Rm(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Rm(this._element,this._endStyles),this._endStyles=null),Dm(this._element,this._initialStyles),this._state=3)}}function Zb(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){(function(t,e){const n=ly(t,"").trim();let i=0;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(),oy(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=ly(t,"").split(","),i=sy(n,e);i>=0&&(n.splice(i,1),ay(t,"",n.join(",")))}(this._element,this._name))}}function iy(t,e,n){ay(t,"PlayState",n,ry(t,e))}function ry(t,e){const n=ly(t,"");return n.indexOf(",")>0?sy(n.split(","),e):sy([n],e)}function sy(t,e){for(let n=0;n=0)return n;return-1}function oy(t,e,n){n?t.removeEventListener(ey,e):t.addEventListener(ey,e)}function ay(t,e,n,i){const r=ty+e;if(null!=i){const e=t.style[r];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[r]=n}function ly(t,e){return t.style[ty+e]||""}class cy{constructor(t,e,n,i,r,s,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=r,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=s||"linear",this.totalTime=i+r,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._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new ny(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]:Wm(this.element,n))})}this.currentSnapshot=t}}class uy extends Kg{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=bm(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 hy{constructor(){this._count=0}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>bm(t));let i=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);i+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${r}animation-timing-function: ${n};\n`));default:return void(i+=`${r}${e}: ${n};\n`)}}),i+=`${r}}\n`}),i+="}\n";const s=document.createElement("style");return s.textContent=i,s}animate(t,e,n,i,r,s=[],o){const a=s.filter(t=>t instanceof cy),l={};Hm(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=$m(t,e,l));if(0==n)return new uy(t,c);const u="gen_css_kf_"+this._count++,h=this.buildKeyframeElement(t,u,e);(function(t){var e;const n=null===(e=t.getRootNode)||void 0===e?void 0:e.call(t);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head})(t).appendChild(h);const d=Kb(t,e),p=new cy(t,e,u,n,i,r,c,d);return p.onDestroy(()=>function(t){t.parentNode.removeChild(t)}(h)),p}}class dy{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){void 0===this.domPlayer&&this.init(),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]:Wm(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class py{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(fy().toString()),this._cssKeyframesDriver=new hy}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,r,s=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,r,s);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(a.easing=r);const l={},c=s.filter(t=>t instanceof dy);Hm(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const u=Kb(t,e=$m(t,e=e.map(t=>Pm(t,!1)),l));return new dy(t,e,a,u)}}function fy(){return Zg()&&Element.prototype.animate||{}}let gy=(()=>{class t extends Fg{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:jt.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?Ug(t):t;return yy(this._renderer,null,e,"register",[n]),new my(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pl),Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class my extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new by(this._id,t,e||{},this._renderer)}}class by{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 yy(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"),this._started=!1}setPosition(t){this._command("setPosition",t)}getPosition(){var t,e;return null!==(e=null===(t=this._renderer.engine.players[+this.id])||void 0===t?void 0:t.getPosition())&&void 0!==e?e:0}}function yy(t,e,n,i,r){return t.setProperty(e,`@@${n}:${i}`,r)}const vy="@.disabled";let _y=(()=>{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 wy("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,r=e.id+"-"+this._currentId;this._currentId++,this.engine.register(r,t);const s=e=>{Array.isArray(e)?e.forEach(s):this.engine.registerTrigger(i,r,t,e.name,e)};return e.data.animation.forEach(s),new xy(this,r,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)(Ci(Pl),Ci(Yb),Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class wy{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,i=!0){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,i)}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)&&e==vy?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 xy extends wy{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)&&e==vy?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 r=e.substr(1),s="";return"@"!=r.charAt(0)&&([r,s]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,i,r,s,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let Sy=(()=>{class t extends Yb{constructor(t,e,n){super(t.body,e,n)}ngOnDestroy(){this.flush()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(vm),Ci(gb))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Ey=new oi("AnimationModuleType"),Cy=[{provide:Fg,useClass:gy},{provide:gb,useFactory:function(){return new mb}},{provide:Yb,useClass:Sy},{provide:Pl,useFactory:function(t,e,n){return new _y(t,e,n)},deps:[ed,Yb,xu]}],Oy=[{provide:vm,useFactory:function(){return"function"==typeof fy()?new py:new hy}},{provide:Ey,useValue:"BrowserAnimations"},...Cy],Ty=[{provide:vm,useClass:ym},{provide:Ey,useValue:"NoopAnimations"},...Cy];let ky=(()=>{class t{static withConfig(e){return{ngModule:t,providers:e.disableAnimations?Ty:Oy}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Oy,imports:[gd]}),t})();function Ay(t,e){if(1&t&&oa(0,"mat-pseudo-checkbox",4),2&t){const t=va();na("state",t.selected?"checked":"unchecked")("disabled",t.disabled)}}function Py(t,e){if(1&t&&(ra(0,"span",5),Za(1),sa()),2&t){const t=va();ws(1),tl("(",t.group.label,")")}}const My=["*"],Iy=new Rl("12.2.5"),Dy=new oi("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ry,Ny=(()=>{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)}_getWindow(){const t=this._document.defaultView||window;return"object"==typeof t&&t?t:null}_checkIsEnabled(t){return!(!Nu()||this._isTestEnv())&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[t])}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){this._checkIsEnabled("doctype")&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){if(!this._checkIsEnabled("theme")||!this._document.body||"function"!=typeof getComputedStyle)return;const t=this._document.createElement("div");t.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(t);const e=getComputedStyle(t);e&&"none"!==e.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"),this._document.body.removeChild(t)}_checkCdkVersionMatch(){this._checkIsEnabled("version")&&Iy.full!==jg.full&&console.warn("The Angular Material version ("+Iy.full+") does not match the Angular CDK version ("+jg.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng),Ci(Dy,8),Ci(Yu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp],Tp]}),t})();function Ly(t){return class extends t{constructor(...t){super(...t),this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}}}function jy(t,e){return class extends t{constructor(...t){super(...t),this.defaultColor=e,this.color=e}get color(){return this._color}set color(t){const e=t||this.defaultColor;e!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),e&&this._elementRef.nativeElement.classList.add(`mat-${e}`),this._color=e)}}}function Fy(t){return class extends t{constructor(...t){super(...t),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(t){this._disableRipple=md(t)}}}function By(t,e=0){return class extends t{constructor(...t){super(...t),this._tabIndex=e,this.defaultTabIndex=e}get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(t){this._tabIndex=null!=t?bd(t):this.defaultTabIndex}}}function Vy(t){return class extends t{constructor(...t){super(...t),this.stateChanges=new P,this.errorState=!1}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{Ry="undefined"!=typeof Intl}catch(m){Ry=!1}let zy=(()=>{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=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})();class Uy{constructor(t,e,n){this._renderer=t,this.element=e,this.config=n,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const Hy={enterDuration:225,exitDuration:150},$y=_p({passive:!0}),Gy=["mousedown","touchstart"],Wy=["mouseup","mouseleave","touchend","touchcancel"];class qy{constructor(t,e,n,i){this._target=t,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,i.isBrowser&&(this._containerElement=_d(n))}fadeInRipple(t,e,n={}){const i=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),r=Object.assign(Object.assign({},Hy),n.animation);n.centered&&(t=i.left+i.width/2,e=i.top+i.height/2);const s=n.radius||function(t,e,n){const i=Math.max(Math.abs(t-n.left),Math.abs(t-n.right)),r=Math.max(Math.abs(e-n.top),Math.abs(e-n.bottom));return Math.sqrt(i*i+r*r)}(t,e,i),o=t-i.left,a=e-i.top,l=r.enterDuration,c=document.createElement("div");c.classList.add("mat-ripple-element"),c.style.left=o-s+"px",c.style.top=a-s+"px",c.style.height=2*s+"px",c.style.width=2*s+"px",null!=n.color&&(c.style.backgroundColor=n.color),c.style.transitionDuration=`${l}ms`,this._containerElement.appendChild(c),function(t){window.getComputedStyle(t).getPropertyValue("opacity")}(c),c.style.transform="scale(1)";const u=new Uy(this,c,n);return u.state=0,this._activeRipples.add(u),n.persistent||(this._mostRecentTransientRipple=u),this._runTimeoutOutsideZone(()=>{const t=u===this._mostRecentTransientRipple;u.state=1,!n.persistent&&(!t||!this._isPointerDown)&&u.fadeOut()},l),u}fadeOutRipple(t){const e=this._activeRipples.delete(t);if(t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),!e)return;const n=t.element,i=Object.assign(Object.assign({},Hy),t.config.animation);n.style.transitionDuration=`${i.exitDuration}ms`,n.style.opacity="0",t.state=2,this._runTimeoutOutsideZone(()=>{t.state=3,n.parentNode.removeChild(n)},i.exitDuration)}fadeOutAll(){this._activeRipples.forEach(t=>t.fadeOut())}fadeOutAllNonPersistent(){this._activeRipples.forEach(t=>{t.config.persistent||t.fadeOut()})}setupTriggerEvents(t){const e=_d(t);!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(Gy))}handleEvent(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(Wy),this._pointerUpEventsRegistered=!0)}_onMousedown(t){const e=_g(t),n=this._lastTouchStartEvent&&Date.now(){!t.config.persistent&&(1===t.state||t.config.terminateOnPointerUp&&0===t.state)&&t.fadeOut()}))}_runTimeoutOutsideZone(t,e=0){this._ngZone.runOutsideAngular(()=>setTimeout(t,e))}_registerEvents(t){this._ngZone.runOutsideAngular(()=>{t.forEach(t=>{this._triggerElement.addEventListener(t,this,$y)})})}_removeTriggerEvents(){this._triggerElement&&(Gy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}),this._pointerUpEventsRegistered&&Wy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}))}}const Xy=new oi("mat-ripple-global-options");let Yy=(()=>{class t{constructor(t,e,n,i,r){this._elementRef=t,this._animationMode=r,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=i||{},this._rippleRenderer=new qy(this,e,t,n)}get disabled(){return this._disabled}set disabled(t){t&&this.fadeOutAllNonPersistent(),this._disabled=t,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(t){this._trigger=t,this._setupTriggerEventsIfEnabled()}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(t,e=0,n){return"number"==typeof t?this._rippleRenderer.fadeInRipple(t,e,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(xu),ea(pp),ea(Xy,8),ea(Ey,8))},t.\u0275dir=se({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,e){2&t&&ja("mat-ripple-unbounded",e.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),t})(),Ky=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,fp],Ny]}),t})(),Qy=(()=>{class t{constructor(t){this._animationMode=t,this.state="unchecked",this.disabled=!1}}return t.\u0275fac=function(e){return new(e||t)(ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(t,e){2&t&&ja("mat-pseudo-checkbox-indeterminate","indeterminate"===e.state)("mat-pseudo-checkbox-checked","checked"===e.state)("mat-pseudo-checkbox-disabled",e.disabled)("_mat-animation-noopable","NoopAnimations"===e._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(t,e){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t})(),Zy=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny]]}),t})();const Jy=new oi("MAT_OPTION_PARENT_COMPONENT"),tv=Ly(class{});let ev=0,nv=(()=>{class t extends tv{constructor(t){var e;super(),this._labelId="mat-optgroup-label-"+ev++,this._inert=null!==(e=null==t?void 0:t.inertGroups)&&void 0!==e&&e}}return t.\u0275fac=function(e){return new(e||t)(ea(Jy,8))},t.\u0275dir=se({type:t,inputs:{label:"label"},features:[jo]}),t})();const iv=new oi("MatOptgroup");let rv=0;class sv{constructor(t,e=!1){this.source=t,this.isUserInput=e}}let ov=(()=>{class t{constructor(t,e,n,i){this._element=t,this._changeDetectorRef=e,this._parent=n,this.group=i,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+rv++,this.onSelectionChange=new Rc,this._stateChanges=new P}get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(t){this._disabled=md(t)}get disableRipple(){return this._parent&&this._parent.disableRipple}get active(){return this._active}get viewValue(){return(this._getHostElement().textContent||"").trim()}select(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}deselect(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}focus(t,e){const n=this._getHostElement();"function"==typeof n.focus&&n.focus(e)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(t){(13===t.keyCode||32===t.keyCode)&&!Qp(t)&&(this._selectViaInteraction(),t.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getAriaSelected(){return this.selected||!this.multiple&&null}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const t=this.viewValue;t!==this._mostRecentViewValue&&(this._mostRecentViewValue=t,this._stateChanges.next())}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(t=!1){this.onSelectionChange.emit(new sv(this,t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(void 0),ea(nv))},t.\u0275dir=se({type:t,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),t})(),av=(()=>{class t extends ov{constructor(t,e,n,i){super(t,e,n,i)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Jy,8),ea(iv,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(t,e){1&t&&fa("click",function(){return e._selectViaInteraction()})("keydown",function(t){return e._handleKeydown(t)}),2&t&&(il("id",e.id),Ko("tabindex",e._getTabIndex())("aria-selected",e._getAriaSelected())("aria-disabled",e.disabled.toString()),ja("mat-selected",e.selected)("mat-option-multiple",e.multiple)("mat-active",e.active)("mat-option-disabled",e.disabled))},exportAs:["matOption"],features:[jo],ngContentSelectors:My,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(t,e){1&t&&(wa(),Jo(0,Ay,1,2,"mat-pseudo-checkbox",0),ra(1,"span",1),xa(2),sa(),Jo(3,Py,2,1,"span",2),oa(4,"div",3)),2&t&&(na("ngIf",e.multiple),ws(3),na("ngIf",e.group&&e.group._inert),ws(1),na("matRippleTrigger",e._getHostElement())("matRippleDisabled",e.disabled||e.disableRipple))},directives:[_h,Yy,Qy],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t})();function lv(t,e,n){if(n.length){let i=e.toArray(),r=n.toArray(),s=0;for(let e=0;en+i?Math.max(0,t-i+e):n}let uv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Rh,Ny,Zy]]}),t})();function hv(...t){if(1===t.length){const e=t[0];if(d(e))return dv(e,null);if(p(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return dv(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return dv(t=1===t.length&&d(t[0])?t[0]:t,null).pipe(D(t=>e(...t)))}return dv(t,null)}function dv(t,e){return new C(n=>{const i=t.length;if(0===i)return void n.complete();const r=new Array(i);let s=0,o=0;for(let a=0;a{c||(c=!0,o++),r[a]=t},error:t=>n.error(t),complete:()=>{s++,(s===i||!c)&&(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}function pv(t){return function(e){const n=new fv(t),i=e.lift(n);return n.caught=i}}class fv{constructor(t){this.selector=t}call(t,e){return e.subscribe(new gv(t,this.selector,this.caught))}}class gv extends ${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 H(this);this.add(i);const r=G(n,i);r!==i&&this.add(r)}}}function mv(t){return e=>e.lift(new bv(t))}class bv{constructor(t){this.callback=t}call(t,e){return e.subscribe(new yv(t,this.callback))}}class yv extends v{constructor(t,e){super(t),this.add(new g(e))}}class vv{}class _v{}class wv{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(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(r):this.headers.set(i,[r])}})}:()=>{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 wv?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 wv;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof wv?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 r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.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 xv{encodeKey(t){return Cv(t)}encodeValue(t){return Cv(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const Sv=/%(\d[a-f0-9])/gi,Ev={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function Cv(t){return encodeURIComponent(t).replace(Sv,(t,e)=>{var n;return null!==(n=Ev[e])&&void 0!==n?n:t})}function Ov(t){return`${t}`}class Tv{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new xv,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.replace(/^\?/,"").split("&").forEach(t=>{const i=t.indexOf("="),[r,s]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(r)||[];o.push(s),n.set(r,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"})}appendAll(t){const e=[];return Object.keys(t).forEach(n=>{const i=t[n];Array.isArray(i)?i.forEach(t=>{e.push({param:n,value:t,op:"a"})}):e.push({param:n,value:i,op:"a"})}),this.clone(e)}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 Tv({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(Ov(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(Ov(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)}}class kv{constructor(){this.map=new Map}set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}keys(){return this.map.keys()}}function Av(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Pv(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Mv(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Iv{constructor(t,e,n,i){let r;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,r=i):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params)),this.headers||(this.headers=new wv),this.context||(this.context=new kv),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]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),c)),new Iv(n,i,s,{params:c,headers:l,context:u,reportProgress:a,responseType:r,withCredentials:o})}}var Dv=(()=>((Dv=Dv||{})[Dv.Sent=0]="Sent",Dv[Dv.UploadProgress=1]="UploadProgress",Dv[Dv.ResponseHeader=2]="ResponseHeader",Dv[Dv.DownloadProgress=3]="DownloadProgress",Dv[Dv.Response=4]="Response",Dv[Dv.User=5]="User",Dv))();class Rv{constructor(t,e=200,n="OK"){this.headers=t.headers||new wv,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}}class Nv extends Rv{constructor(t={}){super(t),this.type=Dv.ResponseHeader}clone(t={}){return new Nv({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})}}class Lv extends Rv{constructor(t={}){super(t),this.type=Dv.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Lv({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})}}class jv extends Rv{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Fv(t,e){return{body:e,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Bv=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Iv)i=t;else{let r,s;r=n.headers instanceof wv?n.headers:new wv(n.headers),n.params&&(s=n.params instanceof Tv?n.params:new Tv({fromObject:n.params})),i=new Iv(t,e,void 0!==n.body?n.body:null,{headers:r,context:n.context,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=wd(i).pipe(function(t,e){return W(t,e,1)}(t=>this.handler.handle(t)));if(t instanceof Iv||"events"===n.observe)return r;const s=r.pipe(Hd(t=>t instanceof Lv));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return s.pipe(D(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return s.pipe(D(t=>t.body))}case"response":return s;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 Tv).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,Fv(n,e))}post(t,e,n={}){return this.request("POST",t,Fv(n,e))}put(t,e,n={}){return this.request("PUT",t,Fv(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Ci(vv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Vv{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const zv=new oi("HTTP_INTERCEPTORS");let Uv=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Hv=/^\)\]\}',?\n/;let $v=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new C(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const i=t.serializeBody();let r=null;const s=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,i=n.statusText||"OK",s=new wv(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new Nv({headers:s,status:e,statusText:i,url:o}),r},o=()=>{let{headers:i,status:r,statusText:o,url:a}=s(),l=null;204!==r&&(l=void 0===n.response?n.responseText:n.response),0===r&&(r=l?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof l){const t=l;l=l.replace(Hv,"");try{l=""!==l?JSON.parse(l):null}catch(u){l=t,c&&(c=!1,l={error:u,text:l})}}c?(e.next(new Lv({body:l,headers:i,status:r,statusText:o,url:a||void 0})),e.complete()):e.error(new jv({error:l,headers:i,status:r,statusText:o,url:a||void 0}))},a=t=>{const{url:i}=s(),r=new jv({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:i||void 0});e.error(r)};let l=!1;const c=i=>{l||(e.next(s()),l=!0);let r={type:Dv.DownloadProgress,loaded:i.loaded};i.lengthComputable&&(r.total=i.total),"text"===t.responseType&&!!n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:Dv.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),n.addEventListener("timeout",a),n.addEventListener("abort",a),t.reportProgress&&(n.addEventListener("progress",c),null!==i&&n.upload&&n.upload.addEventListener("progress",u)),n.send(i),e.next({type:Dv.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("abort",a),n.removeEventListener("load",o),n.removeEventListener("timeout",a),t.reportProgress&&(n.removeEventListener("progress",c),null!==i&&n.upload&&n.upload.removeEventListener("progress",u)),n.readyState!==n.DONE&&n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(Ci(jh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gv=new oi("XSRF_COOKIE_NAME"),Wv=new oi("XSRF_HEADER_NAME");class qv{}let Xv=(()=>{class t{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=gh(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(ou),Ci(Gv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Yv=(()=>{class t{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const i=this.tokenService.getToken();return null!==i&&!t.headers.has(this.headerName)&&(t=t.clone({headers:t.headers.set(this.headerName,i)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(qv),Ci(Wv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Kv=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(zv,[]);this.chain=t.reduceRight((t,e)=>new Vv(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(_v),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Qv=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:Yv,useClass:Uv}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:Gv,useValue:e.cookieName}:[],e.headerName?{provide:Wv,useValue:e.headerName}:[]]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Yv,{provide:zv,useExisting:Yv,multi:!0},{provide:qv,useClass:Xv},{provide:Gv,useValue:"XSRF-TOKEN"},{provide:Wv,useValue:"X-XSRF-TOKEN"}]}),t})(),Zv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Bv,{provide:vv,useClass:Kv},$v,{provide:_v,useExisting:$v}],imports:[[Qv.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();const Jv=["*"];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,n){this.url=t,this.svgText=e,this.options=n}}let r_=(()=>{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._resolvers=[],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,null,i))}addSvgIconResolver(t){return this._resolvers.push(t),this}addSvgIconLiteralInNamespace(t,e,n,i){const r=this._sanitizer.sanitize(yr.HTML,n);if(!r)throw n_(n);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,null,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize(yr.HTML,e);if(!i)throw n_(e);return this._addSvgIconSetConfig(t,new i_("",i,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(yr.RESOURCE_URL,t);if(!e)throw e_(t);const n=this._cachedIconsByUrl.get(e);return n?wd(s_(n)):this._loadSvgIconFromConfig(new i_(t,null)).pipe($f(t=>this._cachedIconsByUrl.set(e,t)),D(t=>s_(t)))}getNamedSvgIcon(t,e=""){const n=o_(e,t);let i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(e,t),i)return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);const r=this._iconSetConfigs.get(e);return r?this._getSvgFromIconSetConfigs(t,r):ip(t_(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgText?wd(s_(this._svgElementFromConfig(t))):this._loadSvgIconFromConfig(t).pipe(D(t=>s_(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?wd(n):hv(e.filter(t=>!t.svgText).map(t=>this._loadSvgIconSetFromConfig(t).pipe(pv(e=>{const n=`Loading icon set URL: ${this._sanitizer.sanitize(yr.RESOURCE_URL,t.url)} failed: ${e.message}`;return this._errorHandler.handleError(new Error(n)),wd(null)})))).pipe(D(()=>{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.svgText&&i.svgText.indexOf(t)>-1){const e=this._svgElementFromConfig(i),n=this._extractSvgIconFromSet(e,t,i.options);if(n)return n}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe($f(e=>t.svgText=e),D(()=>this._svgElementFromConfig(t)))}_loadSvgIconSetFromConfig(t){return t.svgText?wd(null):this._fetchIcon(t).pipe($f(e=>t.svgText=e))}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);const s=this._svgElementFromString("");return s.appendChild(r),this._setSvgAttributes(s,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(s)),at());return this._inProgressUrlFetches.set(s,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}_svgElementFromConfig(t){if(!t.svgElement){const e=this._svgElementFromString(t.svgText);this._setSvgAttributes(e,t.options),t.svgElement=e}return t.svgElement}_getIconConfigFromResolvers(t,e){for(let n=0;ne?e.pathname+e.search:""}}}),u_=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],h_=u_.map(t=>`[${t}]`).join(", "),d_=/^url\(['"]?#(.*?)['"]?\)$/;let p_=(()=>{class t extends l_{constructor(t,e,n,i,r){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=r,this._inline=!1,this._currentIconFetch=g.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=md(t)}get svgIcon(){return this._svgIcon}set svgIcon(t){t!==this._svgIcon&&(t?this._updateSvgIcon(t):this._svgIcon&&this._clearSvgElement(),this._svgIcon=t)}get fontSet(){return this._fontSet}set fontSet(t){const e=this._cleanupFontValue(t);e!==this._fontSet&&(this._fontSet=e,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(t){const e=this._cleanupFontValue(t);e!==this._fontIcon&&(this._fontIcon=e,this._updateFontIconClasses())}_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}"`)}}ngOnInit(){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(h_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const r=e[i],s=r.getAttribute(t),o=s?s.match(d_):null;if(o){let e=n.get(r);e||(e=[],n.set(r,e)),e.push({name:t,value:o[1]})}})}_updateSvgIcon(t){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),t){const[e,n]=this._splitIconName(t);e&&(this._svgNamespace=e),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,e).pipe(Gp(1)).subscribe(t=>this._setSvgElement(t),t=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${e}:${n}! ${t.message}`))})}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(r_),ni("aria-hidden"),ea(c_),ea(Ar))},t.\u0275cmp=Jt({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:7,hostBindings:function(t,e){2&t&&(Ko("data-mat-icon-type",e._usingFontIcon()?"font":"svg")("data-mat-icon-name",e._svgName||e.fontIcon)("data-mat-icon-namespace",e._svgNamespace||e.fontSet),ja("mat-icon-inline",e.inline)("mat-icon-no-color","primary"!==e.color&&"accent"!==e.color&&"warn"!==e.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[jo],ngContentSelectors:Jv,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:[".mat-icon{background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}\n"],encapsulation:2,changeDetection:0}),t})(),f_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})();const g_=["mat-button",""],m_=["*"],b_=".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",y_=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],v_=jy(Ly(Fy(class{constructor(t){this._elementRef=t}})));let __=(()=>{class t extends v_{constructor(t,e,n){super(t),this._focusMonitor=e,this._animationMode=n,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const i of y_)this._hasHostAttributes(i)&&this._getHostElement().classList.add(i);t.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(t,e){t?this._focusMonitor.focusVia(this._getHostElement(),t,e):this._getHostElement().focus(e)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...t){return t.some(t=>this._getHostElement().hasAttribute(t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(t,e){if(1&t&&qc(Yy,5),2&t){let t;Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(t,e){2&t&&(Ko("disabled",e.disabled||null),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),w_=(()=>{class t extends __{constructor(t,e,n){super(e,t,n)}_haltDisabledEvents(t){this.disabled&&(t.preventDefault(),t.stopImmediatePropagation())}}return t.\u0275fac=function(e){return new(e||t)(ea(Mg),ea(kl),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(t,e){1&t&&fa("click",function(t){return e._haltDisabledEvents(t)}),2&t&&(Ko("tabindex",e.disabled?-1:e.tabIndex||0)("disabled",e.disabled||null)("aria-disabled",e.disabled.toString()),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),x_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny],Ny]}),t})();class S_ extends v{notifyNext(t,e,n,i,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}class E_ extends v{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()}}function C_(t,e,n,i,r=new E_(t,n,i)){if(!r.closed)return e instanceof C?e.subscribe(r):V(e)(r)}const O_={};function T_(...t){let e,n;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0]),K(t,n).lift(new k_(e))}class k_{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new A_(t,this.resultSelector))}}class A_ extends S_{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(O_),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{class t{constructor(t){this._platform=t,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):D_}matchMedia(t){return this._platform.WEBKIT&&function(t){if(!P_.has(t))try{M_||(M_=document.createElement("style"),M_.setAttribute("type","text/css"),document.head.appendChild(M_)),M_.sheet&&(M_.sheet.insertRule(`@media ${t} {.fx-query-test{ }}`,0),P_.add(t))}catch(e){console.error(e)}}(t),this._matchMedia(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function D_(t){return{matches:"all"===t||""===t,media:t,addListener:()=>{},removeListener:()=>{}}}let R_=(()=>{class t{constructor(t,e){this._mediaMatcher=t,this._zone=e,this._queries=new Map,this._destroySubject=new P}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(t){return N_(yd(t)).some(t=>this._registerQuery(t).mql.matches)}observe(t){let e=T_(N_(yd(t)).map(t=>this._registerQuery(t).observable));return e=Yd(e.pipe(Gp(1)),e.pipe(Qf(1),qf(0))),e.pipe(D(t=>{const e={matches:!1,breakpoints:{}};return t.forEach(({matches:t,query:n})=>{e.matches=e.matches||t,e.breakpoints[n]=t}),e}))}_registerQuery(t){if(this._queries.has(t))return this._queries.get(t);const e=this._mediaMatcher.matchMedia(t),n={observable:new C(t=>{const n=e=>this._zone.run(()=>t.next(e));return e.addListener(n),()=>{e.removeListener(n)}}).pipe(Kd(e),D(({matches:e})=>({query:t,matches:e})),Wd(this._destroySubject)),mql:e};return this._queries.set(t,n),n}}return t.\u0275fac=function(e){return new(e||t)(Ci(I_),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(I_),Ci(xu))},token:t,providedIn:"root"}),t})();function N_(t){return t.map(t=>t.split(",")).reduce((t,e)=>t.concat(e)).map(t=>t.trim())}function L_(t,e){if(1&t){const t=ua();ra(0,"div",1),ra(1,"button",2),fa("click",function(){return $e(t),va().action()}),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),Ja(t.data.action)}}function j_(t,e){}const F_=new oi("MatSnackBarData");class B_{constructor(){this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"}}const V_=Math.pow(2,31)-1;class z_{constructor(t,e){this._overlayRef=e,this._afterDismissed=new P,this._afterOpened=new P,this._onAction=new P,this._dismissedByAction=!1,this.containerInstance=t,this.onAction().subscribe(()=>this.dismiss()),t._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(t){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(t,V_))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}}let U_=(()=>{class t{constructor(t,e){this.snackBarRef=t,this.data=e}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}}return t.\u0275fac=function(e){return new(e||t)(ea(z_),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(t,e){1&t&&(ra(0,"span"),Za(1),sa(),Jo(2,L_,3,1,"div",0)),2&t&&(ws(1),Ja(e.data.message),ws(1),na("ngIf",e.hasAction))},directives:[_h,__],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}\n"],encapsulation:2,changeDetection:0}),t})();const H_={snackBarState:Vg("state",[$g("void, hidden",Hg({transform:"scale(0.8)",opacity:0})),$g("visible",Hg({transform:"scale(1)",opacity:1})),Wg("* => visible",zg("150ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void, * => hidden",zg("75ms cubic-bezier(0.4, 0.0, 1, 1)",Hg({opacity:0})))])};let $_=(()=>{class t extends Fp{constructor(t,e,n,i,r){super(),this._ngZone=t,this._elementRef=e,this._changeDetectorRef=n,this._platform=i,this.snackBarConfig=r,this._announceDelay=150,this._destroyed=!1,this._onAnnounce=new P,this._onExit=new P,this._onEnter=new P,this._animationState="void",this.attachDomPortal=t=>(this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachDomPortal(t)),this._live="assertive"!==r.politeness||r.announcementMessage?"off"===r.politeness?"off":"polite":"assertive",this._platform.FIREFOX&&("polite"===this._live&&(this._role="status"),"assertive"===this._live&&(this._role="alert"))}attachComponentPortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(t)}onAnimationEnd(t){const{fromState:e,toState:n}=t;if(("void"===n&&"void"!==e||"hidden"===n)&&this._completeExit(),"visible"===n){const t=this._onEnter;this._ngZone.run(()=>{t.next(),t.complete()})}}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}exit(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}ngOnDestroy(){this._destroyed=!0,this._completeExit()}_completeExit(){this._ngZone.onMicrotaskEmpty.pipe(Gp(1)).subscribe(()=>{this._onExit.next(),this._onExit.complete()})}_applySnackBarClasses(){const t=this._elementRef.nativeElement,e=this.snackBarConfig.panelClass;e&&(Array.isArray(e)?e.forEach(e=>t.classList.add(e)):t.classList.add(e)),"center"===this.snackBarConfig.horizontalPosition&&t.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&t.classList.add("mat-snack-bar-top")}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{const t=this._elementRef.nativeElement.querySelector("[aria-hidden]"),e=this._elementRef.nativeElement.querySelector("[aria-live]");if(t&&e){let n=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(n=document.activeElement),t.removeAttribute("aria-hidden"),e.appendChild(t),null==n||n.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(pp),ea(B_))},t.\u0275cmp=Jt({type:t,selectors:[["snack-bar-container"]],viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(t,e){1&t&&ga("@state.done",function(t){return e.onAnimationEnd(t)}),2&t&&rl("@state",e._animationState)},features:[jo],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(t,e){1&t&&(ra(0,"div",0),Jo(1,j_,0,0,"ng-template",1),sa(),oa(2,"div")),2&t&&(ws(2),Ko("aria-live",e._live)("role",e._role))},directives:[Up],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[H_.snackBarState]}}),t})(),G_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rf,Hp,Rh,x_,Ny],Ny]}),t})();const W_=new oi("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new B_}});let q_=(()=>{class t{constructor(t,e,n,i,r,s){this._overlay=t,this._live=e,this._injector=n,this._breakpointObserver=i,this._parentSnackBar=r,this._defaultConfig=s,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=U_,this.snackBarContainerComponent=$_,this.handsetCssClass="mat-snack-bar-handset"}get _openedSnackBarRef(){const t=this._parentSnackBar;return t?t._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(t){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=t:this._snackBarRefAtThisLevel=t}openFromComponent(t,e){return this._attach(t,e)}openFromTemplate(t,e){return this._attach(t,e)}open(t,e="",n){const i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:t,action:e},i.announcementMessage===t&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:B_,useValue:e}]}),i=new Np(this.snackBarContainerComponent,e.viewContainerRef,n),r=t.attach(i);return r.instance.snackBarConfig=e,r.instance}_attach(t,e){const n=Object.assign(Object.assign(Object.assign({},new B_),this._defaultConfig),e),i=this._createOverlay(n),r=this._attachSnackBarContainer(i,n),s=new z_(r,i);if(t instanceof sc){const e=new Lp(t,null,{$implicit:n.data,snackBarRef:s});s.instance=r.attachTemplatePortal(e)}else{const e=this._createInjector(n,s),i=new Np(t,void 0,e),o=r.attachComponentPortal(i);s.instance=o.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(Wd(i.detachments())).subscribe(t=>{const e=i.overlayElement.classList;t.matches?e.add(this.handsetCssClass):e.remove(this.handsetCssClass)}),n.announcementMessage&&r._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(s,n),this._openedSnackBarRef=s,this._openedSnackBarRef}_animateSnackBar(t,e){t.afterDismissed().subscribe(()=>{this._openedSnackBarRef==t&&(this._openedSnackBarRef=null),e.announcementMessage&&this._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{t.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):t.containerInstance.enter(),e.duration&&e.duration>0&&t.afterOpened().subscribe(()=>t._dismissAfter(e.duration))}_createOverlay(t){const e=new af;e.direction=t.direction;let n=this._overlay.position().global();const i="rtl"===t.direction,r="left"===t.horizontalPosition||"start"===t.horizontalPosition&&!i||"end"===t.horizontalPosition&&i,s=!r&&"center"!==t.horizontalPosition;return r?n.left("0"):s?n.right("0"):n.centerHorizontally(),"top"===t.verticalPosition?n.top("0"):n.bottom("0"),e.positionStrategy=n,this._overlay.create(e)}_createInjector(t,e){return No.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:z_,useValue:e},{provide:F_,useValue:t.data}]})}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(kg),Ci(No),Ci(R_),Ci(t,12),Ci(W_))},t.\u0275prov=xt({factory:function(){return new t(Ci(kf),Ci(kg),Ci(_o),Ci(R_),Ci(t,12),Ci(W_))},token:t,providedIn:G_}),t})();const X_={tooltipState:Vg("state",[$g("initial, void, hidden",Hg({opacity:0,transform:"scale(0)"})),$g("visible",Hg({transform:"scale(1)"})),Wg("* => visible",zg("200ms cubic-bezier(0, 0, 0.2, 1)",Gg([Hg({opacity:0,transform:"scale(0)",offset:0}),Hg({opacity:.5,transform:"scale(0.99)",offset:.5}),Hg({opacity:1,transform:"scale(1)",offset:1})]))),Wg("* => hidden",zg("100ms cubic-bezier(0, 0, 0.2, 1)",Hg({opacity:0})))])},Y_="tooltip-panel",K_=_p({passive:!0}),Q_=new oi("mat-tooltip-scroll-strategy"),Z_={provide:Q_,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition({scrollThrottle:20})}},J_=new oi("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}});let tw=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this._overlay=t,this._elementRef=e,this._scrollDispatcher=n,this._viewContainerRef=i,this._ngZone=r,this._platform=s,this._ariaDescriber=o,this._focusMonitor=a,this._dir=c,this._defaultOptions=u,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new P,this._handleKeydown=t=>{this._isTooltipVisible()&&27===t.keyCode&&!Qp(t)&&(t.preventDefault(),t.stopPropagation(),this._ngZone.run(()=>this.hide(0)))},this._scrollStrategy=l,this._document=h,u&&(u.position&&(this.position=u.position),u.touchGestures&&(this.touchGestures=u.touchGestures)),c.change.pipe(Wd(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)}),r.runOutsideAngular(()=>{e.nativeElement.addEventListener("keydown",this._handleKeydown)})}get position(){return this._position}set position(t){var e;t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(e=this._tooltipInstance)||void 0===e||e.show(0),this._overlayRef.updatePosition()))}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get message(){return this._message}set message(t){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=t?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(Wd(this._destroyed)).subscribe(t=>{t?"keyboard"===t&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const t=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),t.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(([e,n])=>{t.removeEventListener(e,n,K_)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay){if(this.disabled||!this.message||this._isTooltipVisible()&&!this._tooltipInstance._showTimeoutId&&!this._tooltipInstance._hideTimeoutId)return;const e=this._createOverlay();this._detach(),this._portal=this._portal||new Np(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=e.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}hide(t=this.hideDelay){this._tooltipInstance&&this._tooltipInstance.hide(t)}toggle(){this._isTooltipVisible()?this.hide():this.show()}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(){if(this._overlayRef)return this._overlayRef;const t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),e=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return e.positionChanges.pipe(Wd(this._destroyed)).subscribe(t=>{this._updateCurrentPositionClass(t.connectionPair),this._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:e,panelClass:`${this._cssClassPrefix}-${Y_}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(Wd(this._destroyed)).subscribe(()=>{var t;return null===(t=this._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){const e=t.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();e.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}_addOffset(t){return t}_getOrigin(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e||"below"==e?n={originX:"center",originY:"above"==e?"top":"bottom"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={originX:"start",originY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={originX:"end",originY:"center"});const{x:i,y:r}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:i,originY:r}}}_getOverlayPosition(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e?n={overlayX:"center",overlayY:"bottom"}:"below"==e?n={overlayX:"center",overlayY:"top"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={overlayX:"end",overlayY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={overlayX:"start",overlayY:"center"});const{x:i,y:r}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:i,overlayY:r}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(Gp(1),Wd(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return"above"===this.position||"below"===this.position?"top"===e?e="bottom":"bottom"===e&&(e="top"):"end"===t?t="start":"start"===t&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){const{overlayY:e,originX:n,originY:i}=t;let r;if(r="center"===e?this._dir&&"rtl"===this._dir.value?"end"===n?"left":"right":"start"===n?"left":"right":"bottom"===e&&"top"===i?"above":"below",r!==this._currentPosition){const t=this._overlayRef;if(t){const e=`${this._cssClassPrefix}-${Y_}-`;t.removePanelClass(e+this._currentPosition),t.addPanelClass(e+r)}this._currentPosition=r}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",()=>{this._setupPointerExitEventsIfNeeded(),this.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",()=>{this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const t=[];if(this._platformSupportsMouseEvents())t.push(["mouseleave",()=>this.hide()],["wheel",t=>this._wheelListener(t)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const e=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};t.push(["touchend",e],["touchcancel",e])}this._addListeners(t),this._passiveListeners.push(...t)}_addListeners(t){t.forEach(([t,e])=>{this._elementRef.nativeElement.addEventListener(t,e,K_)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(t){if(this._isTooltipVisible()){const e=this._document.elementFromPoint(t.clientX,t.clientY),n=this._elementRef.nativeElement;e!==n&&!n.contains(e)&&this.hide()}}_disableNativeGesturesIfNecessary(){const t=this.touchGestures;if("off"!==t){const e=this._elementRef.nativeElement,n=e.style;("on"===t||"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),("on"===t||!e.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(void 0),ea(Op),ea(void 0),ea(Yu))},t.\u0275dir=se({type:t,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),t})(),ew=(()=>{class t extends tw{constructor(t,e,n,i,r,s,o,a,l,c,u,h){super(t,e,n,i,r,s,o,a,l,c,u,h),this._tooltipComponent=iw}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(Q_),ea(Op,8),ea(J_,8),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[jo]}),t})(),nw=(()=>{class t{constructor(t){this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new P}show(t){clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(()=>{this._visibility="visible",this._showTimeoutId=void 0,this._onShow(),this._markForCheck()},t)}hide(t){clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._visibility="hidden",this._hideTimeoutId=void 0,this._markForCheck()},t)}afterHidden(){return this._onHide}isVisible(){return"visible"===this._visibility}ngOnDestroy(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}_animationStart(){this._closeOnInteraction=!1}_animationDone(t){const e=t.toState;"hidden"===e&&!this.isVisible()&&this._onHide.next(),("visible"===e||"hidden"===e)&&(this._closeOnInteraction=!0)}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_onShow(){}}return t.\u0275fac=function(e){return new(e||t)(ea(tc))},t.\u0275dir=se({type:t}),t})(),iw=(()=>{class t extends nw{constructor(t,e){super(t),this._breakpointObserver=e,this._isHandset=this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)")}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(R_))},t.\u0275cmp=Jt({type:t,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(t,e){2&t&&La("zoom","visible"===e._visibility?1:null)},features:[jo],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(t,e){if(1&t&&(ra(0,"div",0),fa("@state.start",function(){return e._animationStart()})("@state.done",function(t){return e._animationDone(t)}),Mc(1,"async"),Za(2),sa()),2&t){let t;ja("mat-tooltip-handset",null==(t=Ic(1,5,e._isHandset))?null:t.matches),na("ngClass",e.tooltipClass)("@state",e._visibility),ws(2),Ja(e.message)}},directives:[mh],pipes:[Dh],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[X_.tooltipState]},changeDetection:0}),t})(),rw=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Z_],imports:[[Lg,Rh,Rf,Ny],Ny,Ip]}),t})();function sw(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(o=(s<3?r(o):s>3?r(e,n,o):r(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o}function ow(t,e){return function(n,i){e(n,i,t)}}function aw(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function lw(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{l(i.next(t))}catch(e){s(e)}}function a(t){try{l(i.throw(t))}catch(e){s(e)}}function l(t){t.done?r(t.value):function(t){return t instanceof n?t:new n(function(e){e(t)})}(t.value).then(o,a)}l((i=i.apply(t,e||[])).next())})}function cw(t){if("undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"==typeof process.versions&&Boolean(process.versions.electron))return!0;const e="object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)}function uw(){return!("object"==typeof process&&"[object process]"===String(process)&&!process.browser)||cw()}const hw="undefined"!=typeof __VERSION__?__VERSION__:"untranspiled source",dw=uw();class pw{constructor(t,e,n="sessionStorage"){this.storage=function(e){try{const t=window[e],n="__storage_test__";return t.setItem(n,n),t.removeItem(n),t}catch(t){return null}}(n),this.id=t,this.config={},Object.assign(this.config,e),this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){return this.config={},this.updateConfiguration(t)}updateConfiguration(t){if(Object.assign(this.config,t),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}return this}_loadConfiguration(){let t={};if(this.storage){const e=this.storage.getItem(this.id);t=e?JSON.parse(e):{}}return Object.assign(this.config,t),this}}function fw(t,e,n,i=600){const r=t.src.replace(/\(/g,"%28").replace(/\)/g,"%29");t.width>i&&(n=Math.min(n,i/t.width));const s=t.width*n,o=t.height*n,a=["font-size:1px;","padding:".concat(Math.floor(o/2),"px ").concat(Math.floor(s/2),"px;"),"line-height:".concat(o,"px;"),"background:url(".concat(r,");"),"background-size:".concat(s,"px ").concat(o,"px;"),"color:transparent;"].join("");return["".concat(e," %c+"),a]}const gw={BLACK:30,RED:31,GREEN:32,YELLOW:33,BLUE:34,MAGENTA:35,CYAN:36,WHITE:37,BRIGHT_BLACK:90,BRIGHT_RED:91,BRIGHT_GREEN:92,BRIGHT_YELLOW:93,BRIGHT_BLUE:94,BRIGHT_MAGENTA:95,BRIGHT_CYAN:96,BRIGHT_WHITE:97};function mw(t){return"string"==typeof t?gw[t.toUpperCase()]||gw.WHITE:t}function bw(t,e){if(!t)throw new Error(e||"Assertion failed")}const yw={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"==typeof process&&process},vw=yw.window||yw.self||yw.global,_w=yw.process||{};function ww(){let t;if(dw&&vw.performance)t=vw.performance.now();else if(_w.hrtime){const e=_w.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}console;const xw={debug:dw&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Sw={enabled:!0,level:0};function Ew(){}const Cw={},Ow={once:!0};function Tw(t){for(const e in t)for(const n in t[e])return n||"untitled";return"empty"}let kw=(()=>{class t{constructor({id:t}={id:""}){this.id=t,this.VERSION=hw,this._startTs=ww(),this._deltaTs=ww(),this.LOG_THROTTLE_TIMEOUT=0,this._storage=new pw("__probe-".concat(this.id,"__"),Sw),this.userData={},this.timeStamp("".concat(this.id," started")),function(t,e=["constructor"]){const n=Object.getPrototypeOf(t),i=Object.getOwnPropertyNames(n);for(const r of i)"function"==typeof t[r]&&(e.find(t=>r===t)||(t[r]=t[r].bind(t)))}(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((ww()-this._startTs).toPrecision(10))}getDelta(){return Number((ww()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(t=!0){return this._storage.updateConfiguration({enabled:t}),this}setLevel(t){return this._storage.updateConfiguration({level:t}),this}assert(t,e){bw(t,e)}warn(t){return this._getLogFunction(0,t,xw.warn,arguments,Ow)}error(t){return this._getLogFunction(0,t,xw.error,arguments)}deprecated(t,e){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(e,"` instead"))}removed(t,e){return this.error("`".concat(t,"` has been removed. Use `").concat(e,"` instead"))}probe(t,e){return this._getLogFunction(t,e,xw.log,arguments,{time:!0,once:!0})}log(t,e){return this._getLogFunction(t,e,xw.debug,arguments)}info(t,e){return this._getLogFunction(t,e,console.info,arguments)}once(t,e){return this._getLogFunction(t,e,xw.debug||xw.info,arguments,Ow)}table(t,e,n){return e?this._getLogFunction(t,e,console.table||Ew,n&&[n],{tag:Tw(e)}):Ew}image({logLevel:t,priority:e,image:i,message:r="",scale:s=1}){return this._shouldLog(t||e)?dw?function({image:t,message:e="",scale:n=1}){if("string"==typeof t){const i=new Image;return i.onload=()=>{const t=fw(i,e,n);console.log(...t)},i.src=t,Ew}const i=t.nodeName||"";if("img"===i.toLowerCase())return console.log(...fw(t,e,n)),Ew;if("canvas"===i.toLowerCase()){const i=new Image;return i.onload=()=>console.log(...fw(i,e,n)),i.src=t.toDataURL(),Ew}return Ew}({image:i,message:r,scale:s}):function({image:t,message:e="",scale:r=1}){let s=null;try{s=n(75307)}catch(i){}return s?()=>s(t,{fit:"box",width:"".concat(Math.round(80*r),"%")}).then(t=>console.log(t)):Ew}({image:i,message:r,scale:s}):Ew}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}get(t){return this._storage.config[t]}set(t,e){this._storage.updateConfiguration({[t]:e})}time(t,e){return this._getLogFunction(t,e,console.time?console.time:console.info)}timeEnd(t,e){return this._getLogFunction(t,e,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,e){return this._getLogFunction(t,e,console.timeStamp||Ew)}group(t,e,n={collapsed:!1}){n=Pw({logLevel:t,message:e,opts:n});const{collapsed:i}=n;return n.method=(i?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}groupCollapsed(t,e,n={}){return this.group(t,e,Object.assign({},n,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",console.groupEnd||Ew)}withGroup(t,e,n){this.group(t,e)();try{n()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&this.getLevel()>=Aw(t)}_getLogFunction(t,e,n,i=[],r){if(this._shouldLog(t)){r=Pw({logLevel:t,message:e,args:i,opts:r}),bw(n=n||r.method),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=ww();const s=r.tag||r.message;if(r.once){if(Cw[s])return Ew;Cw[s]=ww()}return e=function(t,e,n){if("string"==typeof e){const i=n.time?function(t,e=8){const n=Math.max(e-t.length,0);return"".concat(" ".repeat(n)).concat(t)}(function(t){let e;return e=t<10?"".concat(t.toFixed(2),"ms"):t<100?"".concat(t.toFixed(1),"ms"):t<1e3?"".concat(t.toFixed(0),"ms"):"".concat((t/1e3).toFixed(2),"s"),e}(n.total)):"";e=function(t,e,n){return!dw&&"string"==typeof t&&(e&&(e=mw(e),t="\x1b[".concat(e,"m").concat(t,"\x1b[39m")),n&&(e=mw(n),t="\x1b[".concat(n+10,"m").concat(t,"\x1b[49m"))),t}(e=n.time?"".concat(t,": ").concat(i," ").concat(e):"".concat(t,": ").concat(e),n.color,n.background)}return e}(this.id,r.message,r),n.bind(console,e,...r.args)}return Ew}}return t.VERSION=hw,t})();function Aw(t){if(!t)return 0;let e;switch(typeof t){case"number":e=t;break;case"object":e=t.logLevel||t.priority||0;break;default:return 0}return bw(Number.isFinite(e)&&e>=0),e}function Pw(t){const{logLevel:e,message:n}=t;t.logLevel=Aw(e);const i=t.args?Array.from(t.args):[];for(;i.length&&i.shift()!==n;);switch(t.args=i,typeof e){case"string":case"function":void 0!==n&&i.unshift(n),t.message=e;break;case"object":Object.assign(t,e)}"function"==typeof t.message&&(t.message=t.message());const r=typeof t.message;return bw("string"===r||"object"===r),Object.assign(t,t.opts)}var Mw=new kw({id:"deck"});const Iw={DEFAULT:-1,LNGLAT:1,METER_OFFSETS:2,LNGLAT_OFFSETS:3,CARTESIAN:0};Object.defineProperty(Iw,"IDENTITY",{get:()=>Mw.deprecated("COORDINATE_SYSTEM.IDENTITY","COORDINATE_SYSTEM.CARTESIAN")()||0});const Dw={WEB_MERCATOR:1,GLOBE:2,WEB_MERCATOR_AUTO_OFFSET:4,IDENTITY:0},Rw={click:{handler:"onClick"},panstart:{handler:"onDragStart"},panmove:{handler:"onDrag"},panend:{handler:"onDragEnd"}},Nw=new kw({id:"luma.gl"});function Lw(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function jw(t){return"undefined"!=typeof WebGLRenderingContext&&t instanceof WebGLRenderingContext||"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&Number.isFinite(t._version))}function Fw(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}function Bw(t){return Lw(jw(t),"Invalid WebGLRenderingContext"),t}function Vw(t){return Lw(Fw(t),"Requires WebGL2"),t}var zw=n(84761);const Uw={};const Hw=function t(e){const n=e.gl;this.ext=e,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(e.maxVertexAttribs);for(let i=0;i{zw.CO.console&&zw.CO.console.log&&zw.CO.console.log("OESVertexArrayObject emulation library context restored"),e.reset_()},!0),this.reset_()};$w.prototype.VERTEX_ARRAY_BINDING_OES=34229,$w.prototype.reset_=function(){if(void 0!==this.vertexArrayObjects)for(let t=0;tFw(t)?void 0:0,Yw={3074:t=>Fw(t)?void 0:36064,35723:t=>Fw(t)?void 0:4352,35977:Xw,32937:Xw,36795:(t,e)=>{const n=Fw(t)?t.getExtension("EXT_disjoint_timer_query_webgl2"):t.getExtension("EXT_disjoint_timer_query");return n&&n.GPU_DISJOINT_EXT?e(n.GPU_DISJOINT_EXT):0},37445:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_VENDOR_WEBGL||7936)},37446:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_RENDERER_WEBGL||7937)},34047:(t,e)=>{const n=t.luma.extensions.EXT_texture_filter_anisotropic;return n?e(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):1},32883:Xw,35071:Xw,37447:Xw,36063:(t,e)=>{if(!Fw(t)){const n=t.getExtension(Ww);return n?e(n.MAX_COLOR_ATTACHMENTS_WEBGL):0}},35379:Xw,35374:Xw,35377:Xw,34852:t=>{if(!Fw(t)){const e=t.getExtension(Ww);return e?e.MAX_DRAW_BUFFERS_WEBGL:0}},36203:t=>t.getExtension(Gw)?2147483647:65535,33001:t=>t.getExtension(Gw)?16777216:65535,33e3:t=>16777216,37157:Xw,35373:Xw,35657:Xw,36183:Xw,37137:Xw,34045:Xw,35978:Xw,35979:Xw,35968:Xw,35376:Xw,35375:Xw,35659:Xw,37154:Xw,35371:Xw,35658:Xw,35076:Xw,35077:Xw,35380:Xw},Kw="ANGLE_instanced_arrays",Qw={OES_vertex_array_object:{meta:{suffix:"OES"},createVertexArray:()=>{Lw(!1,"VertexArray requires WebGL2 or OES_vertex_array_object extension")},deleteVertexArray:()=>{},bindVertexArray:()=>{},isVertexArray:()=>!1},[Kw]:{meta:{suffix:"ANGLE"},vertexAttribDivisor(t,e){Lw(0===e,"WebGL instanced rendering not supported")},drawElementsInstanced:()=>{},drawArraysInstanced:()=>{}},WEBGL_draw_buffers:{meta:{suffix:"WEBGL"},drawBuffers:()=>{Lw(!1)}},EXT_disjoint_timer_query:{meta:{suffix:"EXT"},createQuery:()=>{Lw(!1)},deleteQuery:()=>{Lw(!1)},beginQuery:()=>{Lw(!1)},endQuery:()=>{},getQuery(t,e){return this.getQueryObject(t,e)},getQueryParameter(t,e){return this.getQueryObject(t,e)},getQueryObject:()=>{}}},Zw={readBuffer:(t,e,n)=>{Fw(t)&&e(n)},getVertexAttrib:(t,e,n,i)=>{const{webgl2:r,ext:s}=function(t,e){return{webgl2:Fw(t),ext:t.getExtension("ANGLE_instanced_arrays")}}(t);let o;switch(i){case 35069:o=!!r&&void 0;break;case 35070:o=r||s?void 0:0}return void 0!==o?o:e(n,i)},getProgramParameter:(t,e,n,i)=>{if(!Fw(t))switch(i){case 35967:return 35981;case 35971:case 35382:return 0}return e(n,i)},getInternalformatParameter:(t,e,n,i,r)=>{if(!Fw(t))switch(r){case 32937:return new Int32Array([0])}return t.getInternalformatParameter(n,i,r)},getTexParameter(t,e,n,i){switch(i){case 34046:const{extensions:e}=t.luma,n=e.EXT_texture_filter_anisotropic;i=n&&n.TEXTURE_MAX_ANISOTROPY_EXT||34046}return e(n,i)},getParameter:function(t,e,n){const i=Yw[n],r="function"==typeof i?i(t,e,n):i;return void 0!==r?r:e(n)},hint:(t,e,n,i)=>e(n,i)};function Jw(t,{extension:e,target:n,target2:i}){const r=Qw[e];Lw(r);const{meta:s={}}=r,{suffix:o=""}=s,a=t.getExtension(e);for(const l of Object.keys(r)){const e=`${l}${o}`;let s=null;"meta"===l||"function"==typeof t[l]||(a&&"function"==typeof a[e]?s=(...t)=>a[e](...t):"function"==typeof r[l]&&(s=r[l].bind(n))),s&&(n[l]=s,i[l]=s)}}("undefined"!=typeof global?global:window).polyfillContext=function(t){t.luma=t.luma||{};const{luma:e}=t;return e.polyfilled||(function(t){if("function"==typeof t.createVertexArray)return;const e=t.getSupportedExtensions;t.getSupportedExtensions=function(){const t=e.call(this)||[];return t.indexOf("OES_vertex_array_object")<0&&t.push("OES_vertex_array_object"),t};const n=t.getExtension;t.getExtension=function(e){return n.call(this,e)||("OES_vertex_array_object"!==e?null:(t.__OESVertexArrayObject||(this.__OESVertexArrayObject=new $w(this)),this.__OESVertexArrayObject))}}(t),function(t){t.luma.extensions={};const e=t.getSupportedExtensions()||[];for(const n of e)t.luma[n]=t.getExtension(n)}(t),function(t,e){for(const n of Object.getOwnPropertyNames(e))"overrides"!==n&&Jw(t,{extension:n,target:t.luma,target2:t})}(t,Qw),function(t,{target:e,target2:n}){Object.keys(Zw).forEach(i=>{if("function"==typeof Zw[i]){const r=t[i]?t[i].bind(t):()=>{},s=Zw[i].bind(null,t,r);e[i]=s,n[i]=s}})}(t,{target:e,target2:t}),e.polyfilled=!0),t};const tx={3042:!1,32773:new Float32Array([0,0,0,0]),32777:32774,34877:32774,32969:1,32968:0,32971:1,32970:0,3106:new Float32Array([0,0,0,0]),3107:[!0,!0,!0,!0],2884:!1,2885:1029,2929:!1,2931:1,2932:513,2928:new Float32Array([0,1]),2930:!0,3024:!0,36006:null,2886:2305,33170:4352,2849:1,32823:!1,32824:0,10752:0,32938:1,32939:!1,3089:!1,3088:new Int32Array([0,0,1024,1024]),2960:!1,2961:0,2968:4294967295,36005:4294967295,2962:519,2967:0,2963:4294967295,34816:519,36003:0,36004:4294967295,2964:7680,2965:7680,2966:7680,34817:7680,34818:7680,34819:7680,2978:[0,0,1024,1024],3333:4,3317:4,37440:!1,37441:!1,37443:37444,35723:4352,36010:null,35977:!1,3330:0,3332:0,3331:0,3314:0,32878:0,3316:0,3315:0,32877:0},ex=(t,e,n)=>e?t.enable(n):t.disable(n),nx=(t,e,n)=>t.hint(n,e),ix=(t,e,n)=>t.pixelStorei(n,e);function rx(t){return Array.isArray(t)||ArrayBuffer.isView(t)}const sx={3042:ex,32773:(t,e)=>t.blendColor(...e),32777:"blendEquation",34877:"blendEquation",32969:"blendFunc",32968:"blendFunc",32971:"blendFunc",32970:"blendFunc",3106:(t,e)=>t.clearColor(...e),3107:(t,e)=>t.colorMask(...e),2884:ex,2885:(t,e)=>t.cullFace(e),2929:ex,2931:(t,e)=>t.clearDepth(e),2932:(t,e)=>t.depthFunc(e),2928:(t,e)=>t.depthRange(...e),2930:(t,e)=>t.depthMask(e),3024:ex,35723:nx,36006:(t,e)=>{const n=Fw(t)?36009:36160;return t.bindFramebuffer(n,e)},2886:(t,e)=>t.frontFace(e),33170:nx,2849:(t,e)=>t.lineWidth(e),32823:ex,32824:"polygonOffset",10752:"polygonOffset",35977:ex,32938:"sampleCoverage",32939:"sampleCoverage",3089:ex,3088:(t,e)=>t.scissor(...e),2960:ex,2961:(t,e)=>t.clearStencil(e),2968:(t,e)=>t.stencilMaskSeparate(1028,e),36005:(t,e)=>t.stencilMaskSeparate(1029,e),2962:"stencilFuncFront",2967:"stencilFuncFront",2963:"stencilFuncFront",34816:"stencilFuncBack",36003:"stencilFuncBack",36004:"stencilFuncBack",2964:"stencilOpFront",2965:"stencilOpFront",2966:"stencilOpFront",34817:"stencilOpBack",34818:"stencilOpBack",34819:"stencilOpBack",2978:(t,e)=>t.viewport(...e),3333:ix,3317:ix,37440:ix,37441:ix,37443:ix,3330:ix,3332:ix,3331:ix,36010:(t,e)=>t.bindFramebuffer(36008,e),3314:ix,32878:ix,3316:ix,3315:ix,32877:ix,framebuffer:(t,e)=>t.bindFramebuffer(36160,e&&"handle"in e?e.handle:e),blend:(t,e)=>e?t.enable(3042):t.disable(3042),blendColor:(t,e)=>t.blendColor(...e),blendEquation:(t,e)=>{e=rx(e)?e:[e,e],t.blendEquationSeparate(...e)},blendFunc:(t,e)=>{e=rx(e)&&2===e.length?[...e,...e]:e,t.blendFuncSeparate(...e)},clearColor:(t,e)=>t.clearColor(...e),clearDepth:(t,e)=>t.clearDepth(e),clearStencil:(t,e)=>t.clearStencil(e),colorMask:(t,e)=>t.colorMask(...e),cull:(t,e)=>e?t.enable(2884):t.disable(2884),cullFace:(t,e)=>t.cullFace(e),depthTest:(t,e)=>e?t.enable(2929):t.disable(2929),depthFunc:(t,e)=>t.depthFunc(e),depthMask:(t,e)=>t.depthMask(e),depthRange:(t,e)=>t.depthRange(...e),dither:(t,e)=>e?t.enable(3024):t.disable(3024),derivativeHint:(t,e)=>{t.hint(35723,e)},frontFace:(t,e)=>t.frontFace(e),mipmapHint:(t,e)=>t.hint(33170,e),lineWidth:(t,e)=>t.lineWidth(e),polygonOffsetFill:(t,e)=>e?t.enable(32823):t.disable(32823),polygonOffset:(t,e)=>t.polygonOffset(...e),sampleCoverage:(t,e)=>t.sampleCoverage(...e),scissorTest:(t,e)=>e?t.enable(3089):t.disable(3089),scissor:(t,e)=>t.scissor(...e),stencilTest:(t,e)=>e?t.enable(2960):t.disable(2960),stencilMask:(t,e)=>{e=rx(e)?e:[e,e];const[n,i]=e;t.stencilMaskSeparate(1028,n),t.stencilMaskSeparate(1029,i)},stencilFunc:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilFuncSeparate(1028,n,i,r),t.stencilFuncSeparate(1029,s,o,a)},stencilOp:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilOpSeparate(1028,n,i,r),t.stencilOpSeparate(1029,s,o,a)},viewport:(t,e)=>t.viewport(...e)};function ox(t,e,n){return void 0!==e[t]?e[t]:n[t]}const ax={blendEquation:(t,e,n)=>t.blendEquationSeparate(ox(32777,e,n),ox(34877,e,n)),blendFunc:(t,e,n)=>t.blendFuncSeparate(ox(32969,e,n),ox(32968,e,n),ox(32971,e,n),ox(32970,e,n)),polygonOffset:(t,e,n)=>t.polygonOffset(ox(32824,e,n),ox(10752,e,n)),sampleCoverage:(t,e,n)=>t.sampleCoverage(ox(32938,e,n),ox(32939,e,n)),stencilFuncFront:(t,e,n)=>t.stencilFuncSeparate(1028,ox(2962,e,n),ox(2967,e,n),ox(2963,e,n)),stencilFuncBack:(t,e,n)=>t.stencilFuncSeparate(1029,ox(34816,e,n),ox(36003,e,n),ox(36004,e,n)),stencilOpFront:(t,e,n)=>t.stencilOpSeparate(1028,ox(2964,e,n),ox(2965,e,n),ox(2966,e,n)),stencilOpBack:(t,e,n)=>t.stencilOpSeparate(1029,ox(34817,e,n),ox(34818,e,n),ox(34819,e,n))},lx={enable:(t,e)=>t({[e]:!0}),disable:(t,e)=>t({[e]:!1}),pixelStorei:(t,e,n)=>t({[e]:n}),hint:(t,e,n)=>t({[e]:n}),bindFramebuffer:(t,e,n)=>{switch(e){case 36160:return t({36006:n,36010:n});case 36009:return t({36006:n});case 36008:return t({36010:n});default:return null}},blendColor:(t,e,n,i,r)=>t({32773:new Float32Array([e,n,i,r])}),blendEquation:(t,e)=>t({32777:e,34877:e}),blendEquationSeparate:(t,e,n)=>t({32777:e,34877:n}),blendFunc:(t,e,n)=>t({32969:e,32968:n,32971:e,32970:n}),blendFuncSeparate:(t,e,n,i,r)=>t({32969:e,32968:n,32971:i,32970:r}),clearColor:(t,e,n,i,r)=>t({3106:new Float32Array([e,n,i,r])}),clearDepth:(t,e)=>t({2931:e}),clearStencil:(t,e)=>t({2961:e}),colorMask:(t,e,n,i,r)=>t({3107:[e,n,i,r]}),cullFace:(t,e)=>t({2885:e}),depthFunc:(t,e)=>t({2932:e}),depthRange:(t,e,n)=>t({2928:new Float32Array([e,n])}),depthMask:(t,e)=>t({2930:e}),frontFace:(t,e)=>t({2886:e}),lineWidth:(t,e)=>t({2849:e}),polygonOffset:(t,e,n)=>t({32824:e,10752:n}),sampleCoverage:(t,e,n)=>t({32938:e,32939:n}),scissor:(t,e,n,i,r)=>t({3088:new Int32Array([e,n,i,r])}),stencilMask:(t,e)=>t({2968:e,36005:e}),stencilMaskSeparate:(t,e,n)=>t({[1028===e?2968:36005]:n}),stencilFunc:(t,e,n,i)=>t({2962:e,2967:n,2963:i,34816:e,36003:n,36004:i}),stencilFuncSeparate:(t,e,n,i,r)=>t({[1028===e?2962:34816]:n,[1028===e?2967:36003]:i,[1028===e?2963:36004]:r}),stencilOp:(t,e,n,i)=>t({2964:e,2965:n,2966:i,34817:e,34818:n,34819:i}),stencilOpSeparate:(t,e,n,i,r)=>t({[1028===e?2964:34817]:n,[1028===e?2965:34818]:i,[1028===e?2966:34819]:r}),viewport:(t,e,n,i,r)=>t({2978:[e,n,i,r]})},cx=(t,e)=>t.isEnabled(e),ux={3042:cx,2884:cx,2929:cx,3024:cx,32823:cx,32926:cx,32928:cx,3089:cx,2960:cx,35977:cx};function hx(t){for(const e in t)return!1;return!0}function dx(t,e){if(t===e)return!0;const n=Array.isArray(t)||ArrayBuffer.isView(t),i=Array.isArray(e)||ArrayBuffer.isView(e);if(n&&i&&t.length===e.length){for(let n=0;n{})}={}){this.gl=t,this.program=null,this.stateStack=[],this.enable=!0,this.cache=e?function(t,e){if("number"==typeof(e=e||tx)){const n=e,i=ux[n];return i?i(t,n):t.getParameter(n)}const n=Array.isArray(e)?e:Object.keys(e),i={};for(const r of n){const e=ux[r];i[r]=e?e(t,Number(r)):t.getParameter(Number(r))}return i}(t):Object.assign({},tx),this.log=n,this._updateCache=this._updateCache.bind(this),Object.seal(this)}push(t={}){this.stateStack.push({})}pop(){Lw(this.stateStack.length>0),yx(this.gl,this.stateStack[this.stateStack.length-1]),this.stateStack.pop()}_updateCache(t){let e,n=!1;const i=this.stateStack.length>0&&this.stateStack[this.stateStack.length-1];for(const r in t){Lw(void 0!==r);const s=t[r],o=this.cache[r];dx(s,o)||(n=!0,e=o,i&&!(r in i)&&(i[r]=o),this.cache[r]=s)}return{valueChanged:n,oldValue:e}}}function mx(t,e={}){const{enable:n=!0,copyState:i}=e;if(Lw(void 0!==i),!t.state){const e="undefined"!=typeof global?global:window,{polyfillContext:n}=e;n&&n(t),t.state=new gx(t,{copyState:i}),function(t){const e=t.useProgram.bind(t);t.useProgram=function(n){t.state.program!==n&&(e(n),t.state.program=n)}}(t);for(const i in lx)fx(t,i,lx[i]);px(t,"getParameter"),px(t,"isEnabled")}return t.state.enable=n,t}function bx(t){Lw(t.state),t.state.pop()}function yx(t,e){if(Lw(jw(t),"setParameters requires a WebGL context"),hx(e))return;const n={};for(const r in e){const i=Number(r),s=sx[r];s&&("string"==typeof s?n[s]=!0:s(t,e[r],i))}const i=t.state&&t.state.cache;if(i)for(const r in n)ax[r](t,e,i)}function vx(t,e,n){if(hx(e))return n(t);const{nocatch:i=!0}=e;let r;if(function(t){t.state||mx(t,{copyState:!1}),t.state.push()}(t),yx(t,e),i)r=n(t),bx(t);else try{r=n(t)}finally{bx(t)}return r}function _x(t){const{luma:e}=t;if(t.canvas&&e){const{clientWidth:n}=e.canvasSizeInfo;return n?t.drawingBufferWidth/n:1}return 1}function wx(t,e,n=!0){return function(t,e,n,i,r){const s=xx(t[0],e,n);let o=Sx(t[1],e,i,r),a=xx(t[0]+1,e,n);const l=a===n-1?a:a-1;let c;return a=Sx(t[1]+1,e,i,r),r?(a=0===a?a:a+1,c=o,o=a):c=a===i-1?a:a-1,{x:s,y:o,width:Math.max(l-s+1,1),height:Math.max(c-o+1,1)}}(e,_x(t),t.drawingBufferWidth,t.drawingBufferHeight,n)}function xx(t,e,n){return Math.min(Math.round(t*e),n-1)}function Sx(t,e,n,i){return i?Math.max(0,n-1-Math.round(t*e)):Math.min(Math.round(t*e),n-1)}const Ex=(0,zw.jU)(),Cx=Ex&&"undefined"!=typeof document,Ox={webgl2:!0,webgl1:!0,throwOnError:!0,manageState:!0,canvas:null,debug:!1,width:800,height:600};function Tx(t={}){Lw(Ex,"createGLContext only available in the browser.\nCreate your own headless context or use 'createHeadlessContext' from @luma.gl/test-utils"),t=Object.assign({},Ox,t);const{width:e,height:n}=t;function i(e){if(t.throwOnError)throw new Error(e);return console.error(e),null}let r;t.onError=i;const{canvas:s}=t,o=function({canvas:t,width:e=800,height:n=600,onError:i}){let r;return"string"==typeof t?(Cx&&"complete"===document.readyState||i(`createGLContext called on canvas '${t}' before page was loaded`),r=document.getElementById(t)):t?r=t:(r=document.createElement("canvas"),r.id="lumagl-canvas",r.style.width=Number.isFinite(e)?`${e}px`:"100%",r.style.height=Number.isFinite(n)?`${n}px`:"100%",document.body.insertBefore(r,document.body.firstChild)),r}({canvas:s,width:e,height:n,onError:i});return r=function(t,e){const{onError:n}=e;let i=null;const r=t=>i=t.statusMessage||i;t.addEventListener("webglcontextcreationerror",r,!1);const{webgl1:s=!0,webgl2:o=!0}=e;let a=null;return o&&(a=a||t.getContext("webgl2",e),a=a||t.getContext("experimental-webgl2",e)),s&&(a=a||t.getContext("webgl",e),a=a||t.getContext("experimental-webgl",e)),t.removeEventListener("webglcontextcreationerror",r,!1),a?(e.onContextLost&&t.addEventListener("webglcontextlost",e.onContextLost,!1),e.onContextRestored&&t.addEventListener("webglcontextrestored",e.onContextRestored,!1),a):n(`Failed to create ${o&&!s?"WebGL2":"WebGL"} context: ${i||"Unknown error"}`)}(o,t),r?(r=kx(r,t),function(t){const e=Fw(t)?"WebGL2":"WebGL1",n=function(t){const e=t.getParameter(7936),n=t.getParameter(7937),i=t.getExtension("WEBGL_debug_renderer_info");return{vendor:i&&t.getParameter(i.UNMASKED_VENDOR_WEBGL||7936)||e,renderer:i&&t.getParameter(i.UNMASKED_RENDERER_WEBGL||7937)||n,vendorMasked:e,rendererMasked:n,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t);Nw.info(1,`${e}${t.debug?" debug":""} context ${n?`(${n.vendor},${n.renderer})`:""}`)()}(r),r):null}function kx(t,e={}){if(!t||t._instrumented)return t;t._version=t._version||function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext?2:1}(t),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{},e=Object.assign({},Ox,e);const{manageState:n,debug:i}=e;return n&&mx(t,{copyState:!1,log:(...t)=>Nw.log(1,...t)()}),Ex&&i&&(zw.CO.makeDebugContext?(t=zw.CO.makeDebugContext(t,e),Nw.level=Math.max(Nw.level,1)):Nw.warn('WebGL debug mode not activated. import "@luma.gl/debug" to enable.')()),t._instrumented=!0,t}function Ax(){let t;if("undefined"!=typeof window&&window.performance)t=window.performance.now();else if("undefined"!=typeof process&&process.hrtime){const e=process.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}class Px{constructor(t,e){this.name=t,this.type=e,this.sampleSize=1,this.reset()}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=Ax(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(Ax()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}}class Mx{constructor({id:t,stats:e}){this.id=t,this.stats={},this._initializeStats(e),Object.seal(this)}get(t,e="count"){return this._getOrCreate({name:t,type:e})}get size(){return Object.keys(this.stats).length}reset(){for(const t in this.stats)this.stats[t].reset();return this}forEach(t){for(const e in this.stats)t(this.stats[e])}getTable(){const t={};return this.forEach(e=>{t[e.name]={time:e.time||0,count:e.count||0,average:e.getAverageTime()||0,hz:e.getHz()||0}}),t}_initializeStats(t=[]){t.forEach(t=>this._getOrCreate(t))}_getOrCreate(t){if(!t||!t.name)return null;const{name:e,type:n}=t;return this.stats[e]||(this.stats[e]=t instanceof Px?t:new Px(e,n)),this.stats[e]}}const Ix="8.5.7",Dx=new class{constructor(){this.stats=new Map}get(t){return this.stats.has(t)||this.stats.set(t,new Mx({id:t})),this.stats.get(t)}};if(zw.CO.luma&&zw.CO.luma.VERSION!==Ix)throw new Error(`luma.gl - multiple VERSIONs detected: ${zw.CO.luma.VERSION} vs 8.5.7`);function Rx(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function Nx(t,e){if("string"!=typeof e)return e;const n=Number(e);if(!isNaN(n))return n;const i=t[e=e.replace(/^.*\./,"")];return Rx(void 0!==i,`Accessing undefined constant GL.${e}`),i}function Lx(t,e){e=Number(e);for(const n in t)if(t[n]===e)return`GL.${n}`;return String(e)}zw.CO.luma||((0,zw.jU)()&&Nw.log(1,"luma.gl 8.5.7 - set luma.log.level=1 (or higher) to trace rendering")(),zw.CO.luma=zw.CO.luma||{VERSION:Ix,version:Ix,log:Nw,stats:Dx,globals:{modules:{},nodeIO:{}}});const jx={};function Fx(t="id"){return jx[t]=jx[t]||1,`${t}-${jx[t]++}`}function Bx(t){return Rx("number"==typeof t,"Input must be a number"),t&&0==(t&t-1)}function Vx(t){let e=!0;for(const n in t){e=!1;break}return e}function zx(t,e,n,i){const r=`See luma.gl ${n} Upgrade Guide at https://luma.gl/docs/upgrade-guide`,s=Object.getPrototypeOf(t);i.forEach(t=>{s.methodName||(s[t]=()=>{throw Nw.removed(`Calling removed method ${e}.${t}: `,r)(),new Error(t)})})}const Ux="Resource subclass must define virtual methods";class Hx{constructor(t,e={}){Bw(t);const{id:n,userData:i={}}=e;this.gl=t,this.gl2=t,this.id=n||Fx(this.constructor.name),this.userData=i,this._bound=!1,this._handle=e.handle,void 0===this._handle&&(this._handle=this._createHandle()),this.byteLength=0,this._addStats()}toString(){return`${this.constructor.name}(${this.id})`}get handle(){return this._handle}delete({deleteChildren:t=!1}={}){const e=this._handle&&this._deleteHandle(this._handle);return this._handle&&this._removeStats(),this._handle=null,e&&t&&e.filter(Boolean).forEach(t=>t.delete()),this}bind(t=this.handle){if("function"!=typeof t)return this._bindHandle(t),this;let e;return this._bound?e=t():(this._bindHandle(this.handle),this._bound=!0,e=t(),this._bound=!1,this._bindHandle(null)),e}unbind(){this.bind(null)}getParameter(t,e={}){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension)){const e=n.webgl1,i="webgl2"in n?n.webgl2:n.webgl1;return t?i:e}}return this._getParameter(t,e)}getParameters(t={}){const{parameters:e,keys:n}=t,i=this.constructor.PARAMETERS||{},r=Fw(this.gl),s={},o=e||Object.keys(i);for(const a of o){const e=i[a];if(e&&(!("webgl2"in e)||r)&&(!("extension"in e)||this.gl.getExtension(e.extension))){const i=n?Lx(this.gl,a):a;s[i]=this.getParameter(a,t),n&&"GLenum"===e.type&&(s[i]=Lx(this.gl,s[i]))}}return s}setParameter(t,e){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension))throw new Error("Parameter not available on this platform");"GLenum"===n.type&&(e=Nx(e))}return this._setParameter(t,e),this}setParameters(t){for(const e in t)this.setParameter(e,t[e]);return this}stubRemovedMethods(t,e,n){return zx(this,t,e,n)}initialize(t){}_createHandle(){throw new Error(Ux)}_deleteHandle(){throw new Error(Ux)}_bindHandle(t){throw new Error(Ux)}_getOptsFromHandle(){throw new Error(Ux)}_getParameter(t,e){throw new Error(Ux)}_setParameter(t,e){throw new Error(Ux)}_context(){return this.gl.luma=this.gl.luma||{},this.gl.luma}_addStats(){const t=this.constructor.name,e=Dx.get("Resource Counts");e.get("Resources Created").incrementCount(),e.get(`${t}s Created`).incrementCount(),e.get(`${t}s Active`).incrementCount()}_removeStats(){const t=this.constructor.name;Dx.get("Resource Counts").get(`${t}s Active`).decrementCount()}_trackAllocatedMemory(t,e=this.constructor.name){const n=Dx.get("Memory Usage");n.get("GPU Memory").addCount(t),n.get(`${e} Memory`).addCount(t),this.byteLength=t}_trackDeallocatedMemory(t=this.constructor.name){const e=Dx.get("Memory Usage");e.get("GPU Memory").subtractCount(this.byteLength),e.get(`${t} Memory`).subtractCount(this.byteLength),this.byteLength=0}}function $x(t){switch(ArrayBuffer.isView(t)?t.constructor:t){case Float32Array:return 5126;case Uint16Array:return 5123;case Uint32Array:return 5125;case Uint8Array:case Uint8ClampedArray:return 5121;case Int8Array:return 5120;case Int16Array:return 5122;case Int32Array:return 5124;default:throw new Error("Failed to deduce GL constant from typed array")}}function Gx(t,{clamped:e=!0}={}){switch(t){case 5126:return Float32Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return e?Uint8ClampedArray:Uint8Array;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}function Wx({data:t,width:e,height:n}){const i=Math.round(e/2),r=Math.round(n/2),s=new Uint8Array(i*r*4);for(let o=0;othis._assign(t)),Object.freeze(this)}toString(){return JSON.stringify(this)}get BYTES_PER_ELEMENT(){return Kx.getBytesPerElement(this)}get BYTES_PER_VERTEX(){return Kx.getBytesPerVertex(this)}_assign(t={}){return void 0!==(t=qx("Accessor",t,Yx)).type&&(this.type=t.type,(5124===t.type||5125===t.type)&&(this.integer=!0)),void 0!==t.size&&(this.size=t.size),void 0!==t.offset&&(this.offset=t.offset),void 0!==t.stride&&(this.stride=t.stride),void 0!==t.normalized&&(this.normalized=t.normalized),void 0!==t.integer&&(this.integer=t.integer),void 0!==t.divisor&&(this.divisor=t.divisor),void 0!==t.buffer&&(this.buffer=t.buffer),void 0!==t.index&&(this.index="boolean"==typeof t.index?t.index?1:0:t.index),void 0!==t.instanced&&(this.divisor=t.instanced?1:0),void 0!==t.isInstanced&&(this.divisor=t.isInstanced?1:0),this}}const Qx={offset:"accessor.offset",stride:"accessor.stride",type:"accessor.type",size:"accessor.size",divisor:"accessor.divisor",normalized:"accessor.normalized",integer:"accessor.integer",instanced:"accessor.divisor",isInstanced:"accessor.divisor"},Zx={removedProps:{},replacedProps:{bytes:"byteLength"},deprecatedProps:Qx},Jx={removedProps:Qx};class tS extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Buffer","v6.0",["layout","setLayout","getIndexedParameter"]),this.target=e.target||(this.gl.webgl2?36662:34962),this.initialize(e),Object.seal(this)}getElementCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerElement(t))}getVertexCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerVertex(t))}initialize(t={}){return ArrayBuffer.isView(t)&&(t={data:t}),Number.isFinite(t)&&(t={byteLength:t}),t=qx("Buffer",t,Zx),this.usage=t.usage||35044,this.debugData=null,this.setAccessor(Object.assign({},t,t.accessor)),t.data?this._setData(t.data,t.offset,t.byteLength):this._setByteLength(t.byteLength||0),this}setProps(t){return"accessor"in(t=qx("Buffer",t,Jx))&&this.setAccessor(t.accessor),this}setAccessor(t){return delete(t=Object.assign({},t)).buffer,this.accessor=new Kx(t),this}reallocate(t){return t>this.byteLength?(this._setByteLength(t),!0):(this.bytesUsed=t,!1)}setData(t){return this.initialize(t)}subData(t){ArrayBuffer.isView(t)&&(t={data:t});const{data:e,offset:n=0,srcOffset:i=0}=t,r=t.byteLength||t.length;Rx(e);const s=this.gl.webgl2?36663:this.target;return this.gl.bindBuffer(s,this.handle),0!==i||void 0!==r?(Vw(this.gl),this.gl.bufferSubData(this.target,n,e,i,r)):this.gl.bufferSubData(s,n,e),this.gl.bindBuffer(s,null),this.debugData=null,this._inferType(e),this}copyData({sourceBuffer:t,readOffset:e=0,writeOffset:n=0,size:i}){const{gl:r}=this;return Vw(r),r.bindBuffer(36662,t.handle),r.bindBuffer(36663,this.handle),r.copyBufferSubData(36662,36663,e,n,i),r.bindBuffer(36662,null),r.bindBuffer(36663,null),this.debugData=null,this}getData({dstData:t=null,srcByteOffset:e=0,dstOffset:n=0,length:i=0}={}){Vw(this.gl);const r=Gx(this.accessor.type||5126,{clamped:!1}),s=this._getAvailableElementCount(e),o=n;let a,l;t?(l=t.length,a=l-o):(a=Math.min(s,i||s),l=o+a);const c=Math.min(s,a);return Rx((i=i||c)<=c),t=t||new r(l),this.gl.bindBuffer(36662,this.handle),this.gl.getBufferSubData(36662,e,t,n,i),this.gl.bindBuffer(36662,null),t}bind({target:t=this.target,index:e=this.accessor&&this.accessor.index,offset:n=0,size:i}={}){return 35345===t||35982===t?void 0!==i?this.gl.bindBufferRange(t,e,this.handle,n,i):(Rx(0===n),this.gl.bindBufferBase(t,e,this.handle)):this.gl.bindBuffer(t,this.handle),this}unbind({target:t=this.target,index:e=this.accessor&&this.accessor.index}={}){return 35345===t||35982===t?this.gl.bindBufferBase(t,e,null):this.gl.bindBuffer(t,null),this}getDebugData(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(10,this.byteLength)}),{data:this.debugData,changed:!0})}invalidateDebugData(){this.debugData=null}_setData(t,e=0,n=t.byteLength+e){Rx(ArrayBuffer.isView(t)),this._trackDeallocatedMemory();const i=this._getTarget();this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,this.usage),this.gl.bufferSubData(i,e,t),this.gl.bindBuffer(i,null),this.debugData=t.slice(0,10),this.bytesUsed=n,this._trackAllocatedMemory(n);const r=$x(t);return Rx(r),this.setAccessor(new Kx(this.accessor,{type:r})),this}_setByteLength(t,e=this.usage){Rx(t>=0),this._trackDeallocatedMemory();let n=t;0===t&&(n=new Float32Array(0));const i=this._getTarget();return this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,e),this.gl.bindBuffer(i,null),this.usage=e,this.debugData=null,this.bytesUsed=t,this._trackAllocatedMemory(t),this}_getTarget(){return this.gl.webgl2?36663:this.target}_getAvailableElementCount(t){const e=t/Gx(this.accessor.type||5126,{clamped:!1}).BYTES_PER_ELEMENT;return this.getElementCount()-e}_inferType(t){this.accessor.type||this.setAccessor(new Kx(this.accessor,{type:$x(t)}))}_createHandle(){return this.gl.createBuffer()}_deleteHandle(){this.gl.deleteBuffer(this.handle),this._trackDeallocatedMemory()}_getParameter(t){this.gl.bindBuffer(this.target,this.handle);const e=this.gl.getBufferParameter(this.target,t);return this.gl.bindBuffer(this.target,null),e}get type(){return Nw.deprecated("Buffer.type","Buffer.accessor.type")(),this.accessor.type}get bytes(){return Nw.deprecated("Buffer.bytes","Buffer.byteLength")(),this.byteLength}setByteLength(t){return Nw.deprecated("setByteLength","reallocate")(),this.reallocate(t)}updateAccessor(t){return Nw.deprecated("updateAccessor(...)","setAccessor(new Accessor(buffer.accessor, ...)")(),this.accessor=new Kx(this.accessor,t),this}}const eS={6407:{dataFormat:6407,types:[5121,33635]},6408:{dataFormat:6408,types:[5121,32819,32820]},6406:{dataFormat:6406,types:[5121]},6409:{dataFormat:6409,types:[5121]},6410:{dataFormat:6410,types:[5121]},33326:{dataFormat:6403,types:[5126],gl2:!0},33328:{dataFormat:33319,types:[5126],gl2:!0},34837:{dataFormat:6407,types:[5126],gl2:!0},34836:{dataFormat:6408,types:[5126],gl2:!0}},nS={6403:1,36244:1,33319:2,33320:2,6407:3,36248:3,6408:4,36249:4,6402:1,34041:1,6406:1,6409:1,6410:2},iS={5126:4,5125:4,5124:4,5123:2,5122:2,5131:2,5120:1,5121:1},rS=[9729,9728],sS=zw.CO.WebGLBuffer||function(){};class oS extends Hx{static isSupported(t,e={}){const{format:n,linearFiltering:i}=e;let r=!0;return n&&(r=r&&function(t,e){const n=eS[e];if(!n)return!1;if(void 0===n.gl1&&void 0===n.gl2)return!0;const i=Fw(t)&&n.gl2||n.gl1;return"string"==typeof i?t.getExtension(i):i}(t,n),r=r&&(!i||function(t,e){const n=eS[e];switch(n&&n.types[0]){case 5126:return t.getExtension("OES_texture_float_linear");case 5131:return t.getExtension("OES_texture_half_float_linear");default:return!0}}(t,n))),r}constructor(t,e){const{id:n=Fx("texture"),handle:i,target:r}=e;super(t,{id:n,handle:i}),this.target=r,this.textureUnit=void 0,this.loaded=!1,this.width=void 0,this.height=void 0,this.depth=void 0,this.format=void 0,this.type=void 0,this.dataFormat=void 0,this.border=void 0,this.textureUnit=void 0,this.mipmaps=void 0}toString(){return`Texture(${this.id},${this.width}x${this.height})`}initialize(t={}){let e=t.data;if(e instanceof Promise)return e.then(e=>this.initialize(Object.assign({},t,{pixels:e,data:e}))),this;const n="undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement;if(n&&e.readyStatethis.initialize(t)),this;const{pixels:i=null,format:r=6408,border:s=0,recreate:o=!1,parameters:a={},pixelStore:l={},textureUnit:c}=t;e||(e=i);let{width:u,height:h,dataFormat:d,type:p,compressed:f=!1,mipmaps:g=!0}=t;const{depth:m=0}=t;return({width:u,height:h,compressed:f,dataFormat:d,type:p}=this._deduceParameters({format:r,type:p,dataFormat:d,compressed:f,data:e,width:u,height:h})),this.width=u,this.height=h,this.depth=m,this.format=r,this.type=p,this.dataFormat=d,this.border=s,this.textureUnit=c,Number.isFinite(this.textureUnit)&&(this.gl.activeTexture(33984+this.textureUnit),this.gl.bindTexture(this.target,this.handle)),g&&this._isNPOT()&&(Nw.warn(`texture: ${this} is Non-Power-Of-Two, disabling mipmaping`)(),g=!1,this._updateForNPOT(a)),this.mipmaps=g,this.setImageData({data:e,width:u,height:h,depth:m,format:r,type:p,dataFormat:d,border:s,mipmaps:g,parameters:l,compressed:f}),g&&this.generateMipmap(),this.setParameters(a),o&&(this.data=e),n&&(this._video={video:e,parameters:a,lastTime:e.readyState>=HTMLVideoElement.HAVE_CURRENT_DATA?e.currentTime:-1}),this}update(){if(this._video){const{video:t,parameters:e,lastTime:n}=this._video;if(n===t.currentTime||t.readyState{this.gl.generateMipmap(this.target)}),this.gl.bindTexture(this.target,null),this)}setImageData(t){this._trackDeallocatedMemory("Texture");const{target:e=this.target,pixels:n=null,level:i=0,format:r=this.format,border:s=this.border,offset:o=0,parameters:a={}}=t;let{data:l=null,type:c=this.type,width:u=this.width,height:h=this.height,dataFormat:d=this.dataFormat,compressed:p=!1}=t;l||(l=n),({type:c,dataFormat:d,compressed:p,width:u,height:h}=this._deduceParameters({format:r,type:c,dataFormat:d,compressed:p,data:l,width:u,height:h}));const{gl:f}=this;f.bindTexture(this.target,this.handle);let g,m=null;return({data:l,dataType:m}=this._getDataType({data:l,compressed:p})),vx(this.gl,a,()=>{switch(m){case"null":f.texImage2D(e,i,r,u,h,s,d,c,l);break;case"typed-array":f.texImage2D(e,i,r,u,h,s,d,c,l,o);break;case"buffer":g=Vw(f),g.bindBuffer(35052,l.handle||l),g.texImage2D(e,i,r,u,h,s,d,c,o),g.bindBuffer(35052,null);break;case"browser-object":Fw(f)?f.texImage2D(e,i,r,u,h,s,d,c,l):f.texImage2D(e,i,r,d,c,l);break;case"compressed":for(const[t,n]of l.entries())f.compressedTexImage2D(e,t,n.format,n.width,n.height,s,n.data);break;default:Rx(!1,"Unknown image data type")}}),this._trackAllocatedMemory(l&&l.byteLength?l.byteLength:this.width*this.height*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}setSubImageData({target:t=this.target,pixels:e=null,data:n=null,x:i=0,y:r=0,width:s=this.width,height:o=this.height,level:a=0,format:l=this.format,type:c=this.type,dataFormat:u=this.dataFormat,compressed:h=!1,offset:d=0,border:p=this.border,parameters:f={}}){if(({type:c,dataFormat:u,compressed:h,width:s,height:o}=this._deduceParameters({format:l,type:c,dataFormat:u,compressed:h,data:n,width:s,height:o})),Rx(0===this.depth,"texSubImage not supported for 3D textures"),n||(n=e),n&&n.data){const t=n;n=t.data,s=t.shape[0],o=t.shape[1]}n instanceof tS&&(n=n.handle),this.gl.bindTexture(this.target,this.handle),vx(this.gl,f,()=>{if(h)this.gl.compressedTexSubImage2D(t,a,i,r,s,o,l,n);else if(null===n)this.gl.texSubImage2D(t,a,i,r,s,o,u,c,null);else if(ArrayBuffer.isView(n))this.gl.texSubImage2D(t,a,i,r,s,o,u,c,n,d);else if(n instanceof sS){const e=Vw(this.gl);e.bindBuffer(35052,n),e.texSubImage2D(t,a,i,r,s,o,u,c,d),e.bindBuffer(35052,null)}else Fw(this.gl)?Vw(this.gl).texSubImage2D(t,a,i,r,s,o,u,c,n):this.gl.texSubImage2D(t,a,i,r,u,c,n)}),this.gl.bindTexture(this.target,null)}copyFramebuffer(t={}){return Nw.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}getActiveUnit(){return this.gl.getParameter(34016)-33984}bind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,this.handle),t}unbind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,null),t}_getDataType({data:t,compressed:e=!1}){return e?{data:t,dataType:"compressed"}:null===t?{data:t,dataType:"null"}:ArrayBuffer.isView(t)?{data:t,dataType:"typed-array"}:t instanceof tS?{data:t.handle,dataType:"buffer"}:t instanceof sS?{data:t,dataType:"buffer"}:{data:t,dataType:"browser-object"}}_deduceParameters(t){const{format:e,data:n}=t;let{width:i,height:r,dataFormat:s,type:o,compressed:a}=t;const l=eS[e];return s=s||l&&l.dataFormat,o=o||l&&l.types[0],a=a||l&&l.compressed,({width:i,height:r}=this._deduceImageSize(n,i,r)),{dataFormat:s,type:o,compressed:a,width:i,height:r,format:e,data:n}}_deduceImageSize(t,e,n){let i;return i="undefined"!=typeof ImageData&&t instanceof ImageData?{width:t.width,height:t.height}:"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement?{width:t.naturalWidth,height:t.naturalHeight}:"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?{width:t.width,height:t.height}:"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement?{width:t.videoWidth,height:t.videoHeight}:t?{width:e,height:n}:{width:e>=0?e:1,height:n>=0?n:1},Rx(i,"Could not deduced texture size"),Rx(void 0===e||i.width===e,"Deduced texture width does not match supplied width"),Rx(void 0===n||i.height===n,"Deduced texture height does not match supplied height"),i}_createHandle(){return this.gl.createTexture()}_deleteHandle(){this.gl.deleteTexture(this.handle),this._trackDeallocatedMemory("Texture")}_getParameter(t){switch(t){case 4096:return this.width;case 4097:return this.height;default:this.gl.bindTexture(this.target,this.handle);const e=this.gl.getTexParameter(this.target,t);return this.gl.bindTexture(this.target,null),e}}_setParameter(t,e){switch(this.gl.bindTexture(this.target,this.handle),e=this._getNPOTParam(t,e),t){case 33082:case 33083:this.gl.texParameterf(this.handle,t,e);break;case 4096:case 4097:Rx(!1);break;default:this.gl.texParameteri(this.target,t,e)}return this.gl.bindTexture(this.target,null),this}_isNPOT(){return!(Fw(this.gl)||!this.width||!this.height||Bx(this.width)&&Bx(this.height))}_updateForNPOT(t){void 0===t[this.gl.TEXTURE_MIN_FILTER]&&(t[this.gl.TEXTURE_MIN_FILTER]=this.gl.LINEAR),void 0===t[this.gl.TEXTURE_WRAP_S]&&(t[this.gl.TEXTURE_WRAP_S]=this.gl.CLAMP_TO_EDGE),void 0===t[this.gl.TEXTURE_WRAP_T]&&(t[this.gl.TEXTURE_WRAP_T]=this.gl.CLAMP_TO_EDGE)}_getNPOTParam(t,e){if(this._isNPOT())switch(t){case 10241:-1===rS.indexOf(e)&&(e=9729);break;case 10242:case 10243:33071!==e&&(e=33071)}return e}}function aS(t,e){return Rx("string"==typeof t),t=""+t,new Promise((n,i)=>{try{const r=new Image;r.onload=()=>n(r),r.onerror=()=>i(new Error(`Could not load image ${t}.`)),r.crossOrigin=e&&e.crossOrigin||"anonymous",r.src=t}catch(r){i(r)}})}class lS extends oS{static isSupported(t,e){return oS.isSupported(t,e)}constructor(t,e={}){Bw(t),(e instanceof Promise||"string"==typeof e)&&(e={data:e}),"string"==typeof e.data&&(e=Object.assign({},e,{data:aS(e.data)})),super(t,Object.assign({},e,{target:3553})),this.initialize(e),Object.seal(this)}}const cS="EXT_color_buffer_float";var uS={33189:{bpp:2},33190:{gl2:!0,bpp:3},36012:{gl2:!0,bpp:4},36168:{bpp:1},34041:{bpp:4},35056:{gl2:!0,bpp:4},36013:{gl2:!0,bpp:5},32854:{bpp:2},36194:{bpp:2},32855:{bpp:2},33321:{gl2:!0,bpp:1},33330:{gl2:!0,bpp:1},33329:{gl2:!0,bpp:1},33332:{gl2:!0,bpp:2},33331:{gl2:!0,bpp:2},33334:{gl2:!0,bpp:4},33333:{gl2:!0,bpp:4},33323:{gl2:!0,bpp:2},33336:{gl2:!0,bpp:2},33335:{gl2:!0,bpp:2},33338:{gl2:!0,bpp:4},33337:{gl2:!0,bpp:4},33340:{gl2:!0,bpp:8},33339:{gl2:!0,bpp:8},32849:{gl2:!0,bpp:3},32856:{gl2:!0,bpp:4},32857:{gl2:!0,bpp:4},36220:{gl2:!0,bpp:4},36238:{gl2:!0,bpp:4},36975:{gl2:!0,bpp:4},36214:{gl2:!0,bpp:8},36232:{gl2:!0,bpp:8},36226:{gl2:!0,bpp:16},36208:{gl2:!0,bpp:16},33325:{gl2:cS,bpp:2},33327:{gl2:cS,bpp:4},34842:{gl2:cS,bpp:8},33326:{gl2:cS,bpp:4},33328:{gl2:cS,bpp:8},34836:{gl2:cS,bpp:16},35898:{gl2:cS,bpp:4}};class hS extends Hx{static isSupported(t,{format:e}={format:null}){return!e||function(t,e,n){const i=n[e];if(!i)return!1;const r=Fw(t)&&i.gl2||i.gl1;return"string"==typeof r?t.getExtension(r):r}(t,e,uS)}static getSamplesForFormat(t,{format:e}){return t.getInternalformatParameter(36161,e,32937)}constructor(t,e={}){super(t,e),this.initialize(e),Object.seal(this)}initialize({format:t,width:e=1,height:n=1,samples:i=0}){return Rx(t,"Needs format"),this._trackDeallocatedMemory(),this.gl.bindRenderbuffer(36161,this.handle),0!==i&&Fw(this.gl)?this.gl.renderbufferStorageMultisample(36161,i,t,e,n):this.gl.renderbufferStorage(36161,t,e,n),this.format=t,this.width=e,this.height=n,this.samples=i,this._trackAllocatedMemory(this.width*this.height*(this.samples||1)*uS[this.format].bpp),this}resize({width:t,height:e}){return t!==this.width||e!==this.height?this.initialize({width:t,height:e,format:this.format,samples:this.samples}):this}_createHandle(){return this.gl.createRenderbuffer()}_deleteHandle(){this.gl.deleteRenderbuffer(this.handle),this._trackDeallocatedMemory()}_bindHandle(t){this.gl.bindRenderbuffer(36161,t)}_syncHandle(t){this.format=this.getParameter(36164),this.width=this.getParameter(36162),this.height=this.getParameter(36163),this.samples=this.getParameter(36011)}_getParameter(t){return this.gl.bindRenderbuffer(36161,this.handle),this.gl.getRenderbufferParameter(36161,t)}}const dS="clear: bad arguments";function pS(t,{framebuffer:e=null,color:n=null,depth:i=null,stencil:r=null}={}){const s={};e&&(s.framebuffer=e);let o=0;n&&(o|=16384,!0!==n&&(s.clearColor=n)),i&&(o|=256,!0!==i&&(s.clearDepth=i)),r&&(o|=1024,!0!==i&&(s.clearStencil=i)),Rx(0!==o,dS),vx(t,s,()=>{t.clear(o)})}function fS(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}function gS(t){return function(){var e=this,n=arguments;return new Promise(function(i,r){var s=t.apply(e,n);function o(t){fS(s,i,r,o,a,"next",t)}function a(t){fS(s,i,r,o,a,"throw",t)}o(void 0)})}}const mS=[34069,34070,34071,34072,34073,34074];let bS=(()=>{class t extends oS{constructor(t,e={}){Bw(t),super(t,Object.assign({},e,{target:34067})),this.initialize(e),Object.seal(this)}initialize(t={}){const{mipmaps:e=!0,parameters:n={}}=t;return this.opts=t,this.setCubeMapImageData(t).then(()=>{this.loaded=!0,e&&this.generateMipmap(t),this.setParameters(n)}),this}subImage({face:t,data:e,x:n=0,y:i=0,mipmapLevel:r=0}){return this._subImage({target:t,data:e,x:n,y:i,mipmapLevel:r})}setCubeMapImageData({width:t,height:e,pixels:n,data:i,border:r=0,format:s=6408,type:o=5121}){var a=this;return gS(function*(){const{gl:l}=a,c=n||i,u=yield Promise.all(mS.map(t=>{const e=c[t];return Promise.all(Array.isArray(e)?e:[e])}));a.bind(),mS.forEach((n,i)=>{u[i].length>1&&!1!==a.opts.mipmaps&&Nw.warn(`${a.id} has mipmap and multiple LODs.`)(),u[i].forEach((i,a)=>{t&&e?l.texImage2D(n,a,s,t,e,r,s,o,i):l.texImage2D(n,a,s,s,o,i)})}),a.unbind()})()}setImageDataForFace(t){const{face:e,width:n,height:i,pixels:r,data:s,border:o=0,format:a=6408,type:l=5121}=t,{gl:c}=this,u=r||s;return this.bind(),u instanceof Promise?u.then(n=>this.setImageDataForFace(Object.assign({},t,{face:e,data:n,pixels:n}))):this.width||this.height?c.texImage2D(e,0,a,n,i,o,a,l,u):c.texImage2D(e,0,a,a,l,u),this}}return t.FACES=mS,t})();class yS extends oS{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e=Object.assign({depth:1},e,{target:32879,unpackFlipY:!1})),this.initialize(e),Object.seal(this)}setImageData({level:t=0,dataFormat:e=6408,width:n,height:i,depth:r=1,border:s=0,format:o,type:a=5121,offset:l=0,data:c,parameters:u={}}){return this._trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle),vx(this.gl,u,()=>{ArrayBuffer.isView(c)&&this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,c),c instanceof tS&&(this.gl.bindBuffer(35052,c.handle),this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,l))}),this._trackAllocatedMemory(c&&c.byteLength?c.byteLength:this.width*this.height*this.depth*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}}function vS(t,e){const{gl:n,width:i,height:r,id:s}=t;return new SS(n,Object.assign({},e,{id:`framebuffer-for-${s}`,width:i,height:r,attachments:{36064:t}}))}function _S(t,e={}){const{sourceX:n=0,sourceY:i=0,sourceFormat:r=6408}=e;let{sourceAttachment:s=36064,target:o=null,sourceWidth:a,sourceHeight:l,sourceType:c}=e;const{framebuffer:u,deleteFramebuffer:h}=function(t){return t instanceof SS?{framebuffer:t,deleteFramebuffer:!1}:{framebuffer:vS(t),deleteFramebuffer:!0}}(t);Rx(u);const{gl:d,handle:p,attachments:f}=u;a=a||u.width,l=l||u.height,36064===s&&null===p&&(s=1028),Rx(f[s]),c=c||f[s].type,o=function(t,e,n,i,r){if(t)return t;return new(Gx(e=e||5121,{clamped:!1}))(i*r*function(t){switch(t){case 6406:case 33326:case 6403:return 1;case 33328:case 33319:return 2;case 6407:case 34837:return 3;case 6408:case 34836:return 4;default:return Rx(!1),0}}(n))}(o,c,r,a,l),c=c||$x(o);const g=d.bindFramebuffer(36160,p);return d.readPixels(n,i,a,l,r,c,o),d.bindFramebuffer(36160,g||null),h&&u.delete(),o}function wS(t,{sourceAttachment:e=36064,targetMaxHeight:n=Number.MAX_SAFE_INTEGER}={}){let i=_S(t,{sourceAttachment:e}),{width:r,height:s}=t;for(;s>n;)({data:i,width:r,height:s}=Wx({data:i,width:r,height:s}));!function({data:t,width:e,height:n,bytesPerPixel:i=4,temp:r}){const s=e*i;r=r||new Uint8Array(s);for(let o=0;o=0&&e>=0,"Width and height need to be integers"),this.width=t,this.height=e,n)for(const c in n){const i=n[c];(Array.isArray(i)?i[0]:i).resize({width:t,height:e})}else n=this._createDefaultAttachments(i,r,s,t,e);this.update({clearAttachments:!0,attachments:n,readBuffer:a,drawBuffers:l}),n&&o&&this.checkStatus()}delete(){for(const t of this.ownResources)t.delete();return super.delete(),this}update({attachments:t={},readBuffer:e,drawBuffers:n,clearAttachments:i=!1,resizeAttachments:r=!0}){this.attach(t,{clearAttachments:i,resizeAttachments:r});const{gl:s}=this,o=s.bindFramebuffer(36160,this.handle);return e&&this._setReadBuffer(e),n&&this._setDrawBuffers(n),s.bindFramebuffer(36160,o||null),this}resize(t={}){let{width:e,height:n}=t;if(null===this.handle)return Rx(void 0===e&&void 0===n),this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;void 0===e&&(e=this.gl.drawingBufferWidth),void 0===n&&(n=this.gl.drawingBufferHeight),e!==this.width&&n!==this.height&&Nw.log(2,`Resizing framebuffer ${this.id} to ${e}x${n}`)();for(const i in this.attachments)this.attachments[i].resize({width:e,height:n});return this.width=e,this.height=n,this}attach(t,{clearAttachments:e=!1,resizeAttachments:n=!0}={}){const i={};e&&Object.keys(this.attachments).forEach(t=>{i[t]=null}),Object.assign(i,t);const r=this.gl.bindFramebuffer(36160,this.handle);for(const s in i){Rx(void 0!==s,"Misspelled framebuffer binding point?");const t=Number(s),e=i[t];let r=e;if(r)if(r instanceof hS)this._attachRenderbuffer({attachment:t,renderbuffer:r});else if(Array.isArray(e)){const[n,i=0,s=0]=e;r=n,this._attachTexture({attachment:t,texture:n,layer:i,level:s})}else this._attachTexture({attachment:t,texture:r,layer:0,level:0});else this._unattach(t);n&&r&&r.resize({width:this.width,height:this.height})}this.gl.bindFramebuffer(36160,r||null),Object.assign(this.attachments,t),Object.keys(this.attachments).filter(t=>!this.attachments[t]).forEach(t=>{delete this.attachments[t]})}checkStatus(){const t=this.getStatus();if(36053!==t)throw new Error(function(t){return(SS.STATUS||{})[t]||`Framebuffer error ${t}`}(t));return this}getStatus(){const{gl:t}=this,e=t.bindFramebuffer(36160,this.handle),n=t.checkFramebufferStatus(36160);return t.bindFramebuffer(36160,e||null),n}clear(t={}){const{color:e,depth:n,stencil:i,drawBuffers:r=[]}=t,s=this.gl.bindFramebuffer(36160,this.handle);return(e||n||i)&&pS(this.gl,{color:e,depth:n,stencil:i}),r.forEach((t,e)=>{!function(t,{framebuffer:e=null,buffer:n=6144,drawBuffer:i=0,value:r=[0,0,0,0]}={}){Vw(t),vx(t,{framebuffer:e},()=>{switch(n){case 6144:switch(r.constructor){case Int32Array:t.clearBufferiv(n,i,r);break;case Uint32Array:t.clearBufferuiv(n,i,r);break;case Float32Array:default:t.clearBufferfv(n,i,r)}break;case 6145:t.clearBufferfv(6145,0,[r]);break;case 6146:t.clearBufferiv(6146,0,[r]);break;case 34041:const[e,s]=r;t.clearBufferfi(34041,0,e,s);break;default:Rx(!1,dS)}})}(this.gl,{drawBuffer:e,value:t})}),this.gl.bindFramebuffer(36160,s||null),this}readPixels(t={}){return Nw.error("Framebuffer.readPixels() is no logner supported, use readPixelsToArray(framebuffer)")(),null}readPixelsToBuffer(t={}){return Nw.error("Framebuffer.readPixelsToBuffer()is no logner supported, use readPixelsToBuffer(framebuffer)")(),null}copyToDataUrl(t={}){return Nw.error("Framebuffer.copyToDataUrl() is no logner supported, use copyToDataUrl(framebuffer)")(),null}copyToImage(t={}){return Nw.error("Framebuffer.copyToImage() is no logner supported, use copyToImage(framebuffer)")(),null}copyToTexture(t={}){return Nw.error("Framebuffer.copyToTexture({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}blit(t={}){return Nw.error("Framebuffer.blit({...}) is no logner supported, use blit(source, target, opts)")(),null}invalidate({attachments:t=[],x:e=0,y:n=0,width:i,height:r}){const s=Vw(this.gl),o=s.bindFramebuffer(36008,this.handle);return 0===e&&0===n&&void 0===i&&void 0===r?s.invalidateFramebuffer(36008,t):s.invalidateFramebuffer(36008,t,e,n,i,r),s.bindFramebuffer(36008,o),this}getAttachmentParameter(t,e,n){let i=this._getAttachmentParameterFallback(e);return null===i&&(this.gl.bindFramebuffer(36160,this.handle),i=this.gl.getFramebufferAttachmentParameter(36160,t,e),this.gl.bindFramebuffer(36160,null)),n&&i>1e3&&(i=Lx(this.gl,i)),i}getAttachmentParameters(t=36064,e,n=this.constructor.ATTACHMENT_PARAMETERS||[]){const i={};for(const r of n)i[e?Lx(this.gl,r):r]=this.getAttachmentParameter(t,r,e);return i}getParameters(t=!0){const e=Object.keys(this.attachments),n={};for(const i of e){const e=Number(i);n[t?Lx(this.gl,e):e]=this.getAttachmentParameters(e,t)}return n}show(){return"undefined"!=typeof window&&window.open(wS(this),"luma-debug-texture"),this}log(t=0,e=""){if(t>Nw.level||"undefined"==typeof window)return this;e=e||`Framebuffer ${this.id}`;const n=wS(this,{targetMaxHeight:100});return Nw.image({logLevel:t,message:e,image:n},e)(),this}bind({target:t=36160}={}){return this.gl.bindFramebuffer(t,this.handle),this}unbind({target:t=36160}={}){return this.gl.bindFramebuffer(t,null),this}_createDefaultAttachments(t,e,n,i,r){let s=null;return t&&(s=s||{},s[36064]=new lS(this.gl,{id:`${this.id}-color0`,pixels:null,format:6408,type:5121,width:i,height:r,mipmaps:!1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.ownResources.push(s[36064])),e&&n?(s=s||{},s[33306]=new hS(this.gl,{id:`${this.id}-depth-stencil`,format:35056,width:i,height:111}),this.ownResources.push(s[33306])):e?(s=s||{},s[36096]=new hS(this.gl,{id:`${this.id}-depth`,format:33189,width:i,height:r}),this.ownResources.push(s[36096])):n&&Rx(!1),s}_unattach(t){const e=this.attachments[t];!e||(e instanceof hS?this.gl.framebufferRenderbuffer(36160,t,36161,null):this.gl.framebufferTexture2D(36160,t,3553,null,0),delete this.attachments[t])}_attachRenderbuffer({attachment:t=36064,renderbuffer:e}){const{gl:n}=this;n.framebufferRenderbuffer(36160,t,36161,e.handle),this.attachments[t]=e}_attachTexture({attachment:t=36064,texture:e,layer:n,level:i}){const{gl:r}=this;switch(r.bindTexture(e.target,e.handle),e.target){case 35866:case 32879:Vw(r).framebufferTextureLayer(36160,t,e.target,i,n);break;case 34067:const s=function(t){return t<34069?t+34069:t}(n);r.framebufferTexture2D(36160,t,s,e.handle,i);break;case 3553:r.framebufferTexture2D(36160,t,3553,e.handle,i);break;default:Rx(!1,"Illegal texture type")}r.bindTexture(e.target,null),this.attachments[t]=e}_setReadBuffer(t){const e=function(t){return Fw(t)?t:null}(this.gl);e?e.readBuffer(t):Rx(36064===t||1029===t,xS),this.readBuffer=t}_setDrawBuffers(t){const{gl:e}=this,n=Vw(e);if(n)n.drawBuffers(t);else{const n=e.getExtension("WEBGL_draw_buffers");n?n.drawBuffersWEBGL(t):Rx(1===t.length&&(36064===t[0]||1029===t[0]),xS)}this.drawBuffers=t}_getAttachmentParameterFallback(t){const e=function(t){t.luma=t.luma||{},t.luma.caps=t.luma.caps||{};for(const e in ES)void 0===t.luma.caps[e]&&(t.luma.caps[e]=TS(t,e));return t.luma.caps}(this.gl);switch(t){case 36052:return e.WEBGL2?null:0;case 33298:case 33299:case 33300:case 33301:case 33302:case 33303:return e.WEBGL2?null:8;case 33297:return e.WEBGL2?null:5125;case 33296:return e.WEBGL2||e.EXT_sRGB?null:9729;default:return null}}_createHandle(){return this.gl.createFramebuffer()}_deleteHandle(){this.gl.deleteFramebuffer(this.handle)}_bindHandle(t){return this.gl.bindFramebuffer(36160,t)}}SS.ATTACHMENT_PARAMETERS=[36049,36048,33296,33298,33299,33300,33301,33302,33303];var ES={WEBGL2:[!1,!0],VERTEX_ARRAY_OBJECT:["OES_vertex_array_object",!0],TIMER_QUERY:["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],INSTANCED_RENDERING:["ANGLE_instanced_arrays",!0],MULTIPLE_RENDER_TARGETS:["WEBGL_draw_buffers",!0],ELEMENT_INDEX_UINT32:["OES_element_index_uint",!0],BLEND_EQUATION_MINMAX:["EXT_blend_minmax",!0],FLOAT_BLEND:["EXT_float_blend"],COLOR_ENCODING_SRGB:["EXT_sRGB",!0],TEXTURE_DEPTH:["WEBGL_depth_texture",!0],TEXTURE_FLOAT:["OES_texture_float",!0],TEXTURE_HALF_FLOAT:["OES_texture_half_float",!0],TEXTURE_FILTER_LINEAR_FLOAT:["OES_texture_float_linear"],TEXTURE_FILTER_LINEAR_HALF_FLOAT:["OES_texture_half_float_linear"],TEXTURE_FILTER_ANISOTROPIC:["EXT_texture_filter_anisotropic"],COLOR_ATTACHMENT_RGBA32F:[function(t){const e=new lS(t,{format:6408,type:5126,dataFormat:6408}),n=new SS(t,{id:"test-framebuffer",check:!1,attachments:{36064:e}}),i=n.getStatus();return e.delete(),n.delete(),36053===i},"EXT_color_buffer_float"],COLOR_ATTACHMENT_FLOAT:[!1,"EXT_color_buffer_float"],COLOR_ATTACHMENT_HALF_FLOAT:["EXT_color_buffer_half_float"],GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]};function CS(t,e){return OS(t,e)}function OS(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>TS(t,e))}function TS(t,e){return t.luma=t.luma||{},t.luma.caps=t.luma.caps||{},void 0===t.luma.caps[e]&&(t.luma.caps[e]=function(t,e){const n=ES[e];let i;Rx(n,e);const r=Fw(t)&&n[1]||n[0];if("function"==typeof r)i=r(t);else if(Array.isArray(r)){i=!0;for(const e of r)i=i&&Boolean(t.getExtension(e))}else"string"==typeof r?i=Boolean(t.getExtension(r)):"boolean"==typeof r?i=r:Rx(!1);return i}(t,e)),t.luma.caps[e]||Nw.log(2,`Feature: ${e} not supported`)(),t.luma.caps[e]}class kS{constructor(t,e){this.opts=e,this.source=t}get value(){return this.source.value}getValue(){const t=this.source.getBuffer(),e=this.getAccessor();if(t)return[t,e];const{value:n}=this.source,{size:i}=e;let r=n;if(n&&n.length!==i){r=new Float32Array(i);const t=e.elementOffset||0;for(let e=0;ei&&(r=i);const s=this._pool,o=t.BYTES_PER_ELEMENT*r,a=s.findIndex(t=>t.byteLength>=o);if(a>=0){const e=new t(s.splice(a,1)[0],0,r);return n&&e.fill(0),e}return new t(r)}_release(t){if(!ArrayBuffer.isView(t))return;const e=this._pool,{buffer:n}=t,{byteLength:i}=n,r=e.findIndex(t=>t.byteLength>=i);r<0?e.push(n):(r>0||e.lengththis.props.poolSize&&e.shift()}};Math;const PS=1/180*Math.PI,MS={};function IS(t,{precision:e=MS.precision||4}={}){return t=function(t){return Math.round(t/MS.EPSILON)*MS.EPSILON}(t),`${parseFloat(t.toPrecision(e))}`}function DS(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function RS(t,e,n){if(DS(t)){n=n||function(t){return t.clone?t.clone():new Array(t.length)}(t);for(let i=0;it*PS,void 0)}(t)}function LS(t,e,n){return RS(t,t=>Math.max(e,Math.min(n,t)))}function jS(t,e,n){return DS(t)?t.map((t,i)=>jS(t,e[i],n)):n*e+(1-n)*t}function FS(t,e,n){const i=MS.EPSILON;n&&(MS.EPSILON=n);try{if(t===e)return!0;if(DS(t)&&DS(e)){if(t.length!==e.length)return!1;for(let n=0;n0?", ":"")+IS(this[n],t);return`${t.printTypes?this.constructor.name:""}[${e}]`}equals(t){if(!t||this.length!==t.length)return!1;for(let e=0;e=0&&t=0&&t0&&(dE.length=t.length,i=dE):i=hE,(e>0||Number.isFinite(n))&&(i=(Array.isArray(i)?i:Array.from(i)).slice(e,n),r.index=e-1),{iterable:i,objectInfo:r}}function fE(t){return t&&t[Symbol.asyncIterator]}function gE(t,e=(()=>!0)){return Array.isArray(t)?mE(t,e,[]):e(t)?[t]:[]}function mE(t,e,n){let i=-1;for(;++ia)return void e.set(t.subarray(0,a),n);if(e.set(t,n),!s)return;let l=o;for(;lt},spring:{stiffness:.05,damping:.5}};function xE(t,e){return t?(Number.isFinite(t)&&(t={duration:t}),t.type=t.type||"interpolation",wt(wt(wt({},wE[t.type]),e),t)):null}function SE(t,e){return e.getBuffer()?[e.getBuffer(),{divisor:0,size:e.size,normalized:e.settings.normalized}]:e.value}function EE(t){switch(t){case 1:return"float";case 2:return"vec2";case 3:return"vec3";case 4:return"vec4";default:throw new Error('No defined attribute type for size "'.concat(t,'"'))}}function CE(t){t.push(t.shift())}function OE(t,e){const{doublePrecision:n,settings:i,value:r,size:s}=t,o=n&&r instanceof Float64Array?2:1;return(i.noAlloc?r.length:e*s)*o}function TE({buffer:t,numInstances:e,attribute:n,fromLength:i,fromStartIndices:r,getData:s=(t=>t)}){const o=n.doublePrecision&&n.value instanceof Float64Array?2:1,a=n.size*o,l=n.byteOffset,c=n.startIndices,u=r&&c,h=OE(n,e),d=n.state.constant;if(!u&&i>=h)return;const p=d?n.value:n.getBuffer().getData({srcByteOffset:l});if(n.settings.normalized&&!d){const t=s;s=(e,i)=>n._normalizeConstant(t(e,i))}const f=d?(t,e)=>s(p,e):(t,e)=>s(p.subarray(t,t+a),e),g=t.getData({length:i}),m=new Float32Array(h);(function({source:t,target:e,size:n,getData:i,sourceStartIndices:r,targetStartIndices:s}){if(!Array.isArray(s))return _E({source:t,target:e,size:n,getData:i}),e;let o=0,a=0;const l=i&&((t,e)=>i(t+a,e)),c=Math.min(r.length,s.length);for(let u=1;u(t+128)/255*2-1);case 5122:return new Float32Array(t).map(t=>(t+32768)/65535*2-1);case 5121:return new Float32Array(t).map(t=>t/255);case 5123:return new Float32Array(t).map(t=>t/65535);default:return t}}_normalizeValue(t,e,n){const{defaultValue:i,size:r}=this.settings;if(Number.isFinite(t))return e[n]=t,e;if(!t)return e[n]=i[0],e;switch(r){case 4:e[n+3]=Number.isFinite(t[3])?t[3]:i[3];case 3:e[n+2]=Number.isFinite(t[2])?t[2]:i[2];case 2:e[n+1]=Number.isFinite(t[1])?t[1]:i[1];case 1:e[n+0]=Number.isFinite(t[0])?t[0]:i[0];break;default:let s=r;for(;--s>=0;)e[n+s]=Number.isFinite(t[s])?t[s]:i[s]}return e}_areValuesEqual(t,e){if(!t||!e)return!1;const{size:n}=this;for(let i=0;it[e])]:t[e],n)}setNeedsUpdate(t=this.id,e){if(this.state.needsUpdate=this.state.needsUpdate||t,this.setNeedsRedraw(t),e){const{startRow:t=0,endRow:n=1/0}=e;this.state.updateRanges=function(t,e){if(t===vE||(e[0]<0&&(e[0]=0),e[0]>=e[1]))return t;const n=[],i=t.length;let r=0;for(let s=0;se[1]?n.push(i):e=[Math.min(i[0],e[0]),Math.max(i[1],e[1])]}return n.splice(r,0,e),n}(this.state.updateRanges,[t,n])}else this.state.updateRanges=vE}clearNeedsUpdate(){this.state.needsUpdate=!1,this.state.updateRanges=yE}setNeedsRedraw(t=this.id){this.state.needsRedraw=this.state.needsRedraw||t}update(t){this.setData(t)}allocate(t){const{state:e,settings:n}=this;return!n.noAlloc&&!!n.update&&(super.allocate({numInstances:t,copy:e.updateRanges!==vE}),!0)}updateBuffer({numInstances:t,data:e,props:n,context:i}){if(!this.needsUpdate())return!1;const{state:{updateRanges:r},settings:{update:s,noAlloc:o}}=this;let a=!0;if(s){for(const[o,a]of r)s.call(i,this,{data:e,startRow:o,endRow:a,props:n,numInstances:t});if(this.value)if(this.constant||this.buffer.byteLength{if(!r){const n=i*a+l;for(let i=0;ic?l.set(e,f):(t._normalizeValue(e,m.target,0),bE({target:l,source:m.target,start:f,count:n}));f+=n*c}else t._normalizeValue(e,l,f),f+=c}}_validateAttributeUpdaters(){const{settings:t}=this;if(!t.noAlloc&&"function"!=typeof t.update)throw new Error("Attribute ".concat(this.id," missing update or accessor"))}_checkAttributeArray(){const{value:t}=this,e=Math.min(4,this.size);if(t&&t.length>=e){let n=!0;switch(e){case 4:n=n&&Number.isFinite(t[3]);case 3:n=n&&Number.isFinite(t[2]);case 2:n=n&&Number.isFinite(t[1]);case 1:n=n&&Number.isFinite(t[0]);break;default:n=!1}if(!n)throw new Error("Illegal attribute generated for ".concat(this.id))}}}let AE={};function PE(t){Mw.level>0&&AE[t]&&AE[t].call(...arguments)}function ME(t,e){if(!t)throw new Error(e||"shadertools: assertion failed.")}const IE="out vec4 transform_output;\nvoid main() {\n transform_output = vec4(0);\n}",DE=`#version 300 es\n${IE}`;function RE(t,e){e=Array.isArray(e)?e:[e];const n=t.replace(/^\s+/,"").split(/\s+/),[i,r,s]=n;return e.includes(i)&&r&&s?{qualifier:i,type:r,name:s.split(";")[0]}:null}function NE(t={}){const{version:e=100,input:n,inputType:i,output:r}=t;if(!n)return 300===e?DE:e>300?`#version ${e}\n${IE}`:"void main() {gl_FragColor = vec4(0);}";const s=function(t,e){switch(e){case"float":return`vec4(${t}, 0.0, 0.0, 1.0)`;case"vec2":return`vec4(${t}, 0.0, 1.0)`;case"vec3":return`vec4(${t}, 1.0)`;case"vec4":return t;default:return ME(!1),null}}(n,i);return e>=300?`#version ${e} ${300===e?"es":""}\nin ${i} ${n};\nout vec4 ${r};\nvoid main() {\n ${r} = ${s};\n}`:`varying ${i} ${n};\nvoid main() {\n gl_FragColor = ${s};\n}`}class LE extends Hx{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e),this.initialize(e),this.stubRemovedMethods("TransformFeedback","v6.0",["pause","resume"]),Object.seal(this)}initialize(t={}){return this.buffers={},this.unused={},this.configuration=null,this.bindOnUse=!0,Vx(this.buffers)||this.bind(()=>this._unbindBuffers()),this.setProps(t),this}setProps(t){"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"bindOnUse"in t&&(t=t.bindOnUse),"buffers"in t&&this.setBuffers(t.buffers)}setBuffers(t={}){return this.bind(()=>{for(const e in t)this.setBuffer(e,t[e])}),this}setBuffer(t,e){const n=this._getVaryingIndex(t),{buffer:i,byteSize:r,byteOffset:s}=this._getBufferParams(e);return n<0?(this.unused[t]=i,Nw.warn(()=>`${this.id} unused varying buffer ${t}`)(),this):(this.buffers[n]=e,this.bindOnUse||this._bindBuffer(n,i,s,r),this)}begin(t=0){return this.gl.bindTransformFeedback(36386,this.handle),this._bindBuffers(),this.gl.beginTransformFeedback(t),this}end(){return this.gl.endTransformFeedback(),this._unbindBuffers(),this.gl.bindTransformFeedback(36386,null),this}_getBufferParams(t){let e,n,i;return t instanceof tS?i=t:(i=t.buffer,n=t.byteSize,e=t.byteOffset),(void 0!==e||void 0!==n)&&(e=e||0,n=n||i.byteLength-e),{buffer:i,byteOffset:e,byteSize:n}}_getVaryingInfo(t){return this.configuration&&this.configuration.getVaryingInfo(t)}_getVaryingIndex(t){if(this.configuration)return this.configuration.getVaryingInfo(t).location;const e=Number(t);return Number.isFinite(e)?e:-1}_bindBuffers(){if(this.bindOnUse)for(const t in this.buffers){const{buffer:e,byteSize:n,byteOffset:i}=this._getBufferParams(this.buffers[t]);this._bindBuffer(t,e,i,n)}}_unbindBuffers(){if(this.bindOnUse)for(const t in this.buffers)this._bindBuffer(t,null)}_bindBuffer(t,e,n=0,i){const r=e&&e.handle;return r&&void 0!==i?this.gl.bindBufferRange(35982,t,r,n,i):this.gl.bindBufferBase(35982,t,r),this}_createHandle(){return this.gl.createTransformFeedback()}_deleteHandle(){this.gl.deleteTransformFeedback(this.handle)}_bindHandle(t){this.gl.bindTransformFeedback(36386,this.handle)}}class jE{constructor(t,e={}){this.gl=t,this.currentIndex=0,this.feedbackMap={},this.varyings=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}setupResources(t){for(const e of this.bindings)this._setupTransformFeedback(e,t)}updateModelProps(t={}){const{varyings:e}=this;return e.length>0&&(t=Object.assign({},t,{varyings:e})),t}getDrawOptions(t={}){const e=this.bindings[this.currentIndex],{sourceBuffers:n,transformFeedback:i}=e;return{attributes:Object.assign({},n,t.attributes),transformFeedback:i}}swap(){return!!this.feedbackMap&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupBuffers(t)}getBuffer(t){const{feedbackBuffers:e}=this.bindings[this.currentIndex],n=t?e[t]:null;return n?n instanceof tS?n:n.buffer:null}getData(t={}){const{varyingName:e}=t,n=this.getBuffer(e);return n?n.getData():null}delete(){for(const t in this.resources)this.resources[t].delete()}_initialize(t={}){this._setupBuffers(t),this.varyings=t.varyings||Object.keys(this.bindings[this.currentIndex].feedbackBuffers),this.varyings.length>0&&Rx(Fw(this.gl))}_getFeedbackBuffers(t){const{sourceBuffers:e={}}=t,n={};if(this.bindings[this.currentIndex]&&Object.assign(n,this.bindings[this.currentIndex].feedbackBuffers),this.feedbackMap)for(const i in this.feedbackMap){const t=this.feedbackMap[i];i in e&&(n[t]=i)}Object.assign(n,t.feedbackBuffers);for(const i in n){const t=n[i];if("string"==typeof t){const r=e[t],{byteLength:s,usage:o,accessor:a}=r;n[i]=this._createNewBuffer(i,{byteLength:s,usage:o,accessor:a})}}return n}_setupBuffers(t={}){const{sourceBuffers:e=null}=t;Object.assign(this.feedbackMap,t.feedbackMap);const n=this._getFeedbackBuffers(t);this._updateBindings({sourceBuffers:e,feedbackBuffers:n})}_setupTransformFeedback(t,{model:e}){const{program:n}=e;t.transformFeedback=new LE(this.gl,{program:n,buffers:t.feedbackBuffers})}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this.feedbackMap){const{sourceBuffers:t,feedbackBuffers:e}=this._swapBuffers(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceBuffers:t,feedbackBuffers:e})}}_updateBinding(t,e){return t?(Object.assign(t.sourceBuffers,e.sourceBuffers),Object.assign(t.feedbackBuffers,e.feedbackBuffers),t.transformFeedback&&t.transformFeedback.setBuffers(t.feedbackBuffers),t):{sourceBuffers:Object.assign({},e.sourceBuffers),feedbackBuffers:Object.assign({},e.feedbackBuffers)}}_swapBuffers(t){if(!this.feedbackMap)return null;const e=Object.assign({},t.sourceBuffers),n=Object.assign({},t.feedbackBuffers);for(const i in this.feedbackMap){const r=this.feedbackMap[i];e[i]=t.feedbackBuffers[r],n[r]=t.sourceBuffers[i],Rx(n[r]instanceof tS)}return{sourceBuffers:e,feedbackBuffers:n}}_createNewBuffer(t,e){const n=new tS(this.gl,e);return this.resources[t]&&this.resources[t].delete(),this.resources[t]=n,n}_getNextIndex(){return(this.currentIndex+1)%2}}function FE(t){let e=100;const n=t.match(/[^\s]+/g);if(n.length>=2&&"#version"===n[0]){const t=parseInt(n[1],10);Number.isFinite(t)&&(e=t)}return e}const BE="vs",VE={[BE]:"#ifdef MODULE_LOGDEPTH\n logdepth_adjustPosition(gl_Position);\n#endif\n",fs:"#ifdef MODULE_MATERIAL\n gl_FragColor = material_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LIGHTING\n gl_FragColor = lighting_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_FOG\n gl_FragColor = fog_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_PICKING\n gl_FragColor = picking_filterHighlightColor(gl_FragColor);\n gl_FragColor = picking_filterPickingColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LOGDEPTH\n logdepth_setFragDepth();\n#endif\n"},zE="__LUMA_INJECT_DECLARATIONS__",UE=/void\s+main\s*\([^)]*\)\s*\{\n?/,HE=/}\n?[^{}]*$/,$E=[];function GE(t,e,n,i=!1){const r=e===BE;for(const s in n){const e=n[s];e.sort((t,e)=>t.order-e.order),$E.length=e.length;for(let t=0,n=e.length;tt+i));break;case"vs:#main-end":r&&(t=t.replace(HE,t=>i+t));break;case"fs:#decl":r||(t=t.replace(zE,i));break;case"fs:#main-start":r||(t=t.replace(UE,t=>t+i));break;case"fs:#main-end":r||(t=t.replace(HE,t=>i+t));break;default:t=t.replace(s,t=>t+i)}}return t=t.replace(zE,""),i&&(t=t.replace(/\}\s*$/,t=>t+VE[e])),t}function WE(t){const e={};return ME(Array.isArray(t)&&t.length>1),t.forEach(t=>{for(const n in t)e[n]=e[n]?`${e[n]}\n${t[n]}`:t[n]}),e}const qE={name:"transform",vs:"attribute float transform_elementID;\nvec2 transform_getPixelSizeHalf(vec2 size) {\n return vec2(1.) / (2. * size);\n}\n\nvec2 transform_getPixelIndices(vec2 texSize, vec2 pixelSizeHalf) {\n float yIndex = floor((transform_elementID / texSize[0]) + pixelSizeHalf[1]);\n float xIndex = transform_elementID - (yIndex * texSize[0]);\n return vec2(xIndex, yIndex);\n}\nvec2 transform_getTexCoord(vec2 size) {\n vec2 pixelSizeHalf = transform_getPixelSizeHalf(size);\n vec2 indices = transform_getPixelIndices(size, pixelSizeHalf);\n vec2 coord = indices / size + pixelSizeHalf;\n return coord;\n}\nvec2 transform_getPos(vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec2 pos = (texCoord * (2.0, 2.0)) - (1., 1.);\n return pos;\n}\nvec4 transform_getInput(sampler2D texSampler, vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec4 textureColor = texture2D(texSampler, texCoord);\n return textureColor;\n}\n",fs:null},XE="transform_uSize_",YE="transform_position";const KE={10241:9728,10240:9728,10242:33071,10243:33071};class QE{constructor(t,e={}){this.gl=t,this.id=this.currentIndex=0,this._swapTexture=null,this.targetTextureVarying=null,this.targetTextureType=null,this.samplerTextureMap=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}updateModelProps(t={}){const e=this._processVertexShader(t);return Object.assign({},t,e)}getDrawOptions(t={}){const{sourceBuffers:e,sourceTextures:n,framebuffer:i,targetTexture:r}=this.bindings[this.currentIndex],s=Object.assign({},e,t.attributes),o=Object.assign({},t.uniforms),a=Object.assign({},t.parameters);let l=t.discard;if(this.hasSourceTextures||this.hasTargetTexture){s.transform_elementID=this.elementIDBuffer;for(const e in this.samplerTextureMap)o[e]=n[this.samplerTextureMap[e]];this._setSourceTextureParameters();const t=function({sourceTextureMap:t,targetTextureVarying:e,targetTexture:n}){const i={};let r,s;e&&(({width:r,height:s}=n),i[`${XE}${e}`]=[r,s]);for(const o in t)({width:r,height:s}=t[o]),i[`${XE}${o}`]=[r,s];return i}({sourceTextureMap:n,targetTextureVarying:this.targetTextureVarying,targetTexture:r});Object.assign(o,t)}return this.hasTargetTexture&&(l=!1,a.viewport=[0,0,i.width,i.height]),{attributes:s,framebuffer:i,uniforms:o,discard:l,parameters:a}}swap(){return!!this._swapTexture&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupTextures(t)}getTargetTexture(){const{targetTexture:t}=this.bindings[this.currentIndex];return t}getData({packed:t=!1}={}){const{framebuffer:e}=this.bindings[this.currentIndex],n=_S(e);if(!t)return n;const i=n.constructor,r=function(t){switch(t){case"float":return 1;case"vec2":return 2;case"vec3":return 3;case"vec4":return 4;default:return ME(!1),null}}(this.targetTextureType),s=new i(n.length*r/4);let o=0;for(let a=0;a0,this._updateBindings({sourceBuffers:e,sourceTextures:n,targetTexture:r}),"elementCount"in t&&this._updateElementIDBuffer(t.elementCount)}_updateElementIDBuffer(t){if("number"!=typeof t||this.elementCount>=t)return;const e=new Float32Array(t);e.forEach((t,e,n)=>{n[e]=e}),this.elementIDBuffer?this.elementIDBuffer.setData({data:e}):this.elementIDBuffer=new tS(this.gl,{data:e,accessor:{size:1}}),this.elementCount=t}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this._swapTexture){const{sourceTextures:t,targetTexture:e}=this._swapTextures(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceTextures:t,targetTexture:e})}}_updateBinding(t,e){const{sourceBuffers:n,sourceTextures:i,targetTexture:r}=e;if(t||(t={sourceBuffers:{},sourceTextures:{},targetTexture:null}),Object.assign(t.sourceTextures,i),Object.assign(t.sourceBuffers,n),r){t.targetTexture=r;const{width:e,height:n}=r,{framebuffer:i}=t;i?(i.update({attachments:{36064:r},resizeAttachments:!1}),i.resize({width:e,height:n})):t.framebuffer=new SS(this.gl,{id:"transform-framebuffer",width:e,height:n,attachments:{36064:r}})}return t}_setSourceTextureParameters(){const t=this.currentIndex,{sourceTextures:e}=this.bindings[t];for(const n in e)e[n].setParameters(KE)}_swapTextures(t){if(!this._swapTexture)return null;const e=Object.assign({},t.sourceTextures);return e[this._swapTexture]=t.targetTexture,{sourceTextures:e,targetTexture:t.sourceTextures[this._swapTexture]}}_createNewTexture(t){const e=function(t,e){Rx(t instanceof lS||t instanceof bS||t instanceof yS);const n=t.constructor,{gl:i,width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u}=t;return new n(i,Object.assign({width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u},{parameters:{10241:9728,10240:9728,10242:33071,10243:33071},pixelStore:{37440:!1}}))}(t);return this.ownTexture&&this.ownTexture.delete(),this.ownTexture=e,e}_getNextIndex(){return(this.currentIndex+1)%2}_processVertexShader(t={}){const{sourceTextures:e,targetTexture:n}=this.bindings[this.currentIndex],{vs:i,uniforms:r,targetTextureType:s,inject:o,samplerTextureMap:a}=function({vs:t,sourceTextureMap:e,targetTextureVarying:n,targetTexture:i}){let r=Object.keys(e).length,s=null;const o={};let a=t,l={};if(r>0||n){const t=a.split("\n"),c=t.slice();if(t.forEach((t,i,a)=>{if(r>0){const n=function(t,e){const n={},i=function(t){return RE(t,["attribute","in"])}(t);if(!i)return null;const{type:r,name:s}=i;if(s&&e[s]){const e=`// ${t} => Replaced by Transform with a sampler`,{samplerName:i,sizeName:o,uniformDeclerations:a}=function(t){const e=`transform_uSampler_${t}`,n=`${XE}${t}`;return{samplerName:e,sizeName:n,uniformDeclerations:` uniform sampler2D ${e};\n uniform vec2 ${n};`}}(s),l=` ${r} ${s} = transform_getInput(${i}, ${o}).${function(t){switch(t){case"float":return"x";case"vec2":return"xy";case"vec3":return"xyz";case"vec4":return"xyzw";default:return ME(!1),null}}(r)};\n`;return n[i]=s,{updatedLine:e,inject:{"vs:#decl":a,"vs:#main-start":l},samplerTextureMap:n}}return null}(t,e);if(n){const{updatedLine:t,inject:e}=n;c[i]=t,l=WE([l,e]),Object.assign(o,n.samplerTextureMap),r--}}n&&!s&&(s=function(t,e){const n=RE(t,["varying","out"]);return n&&n.name===e?n.type:null}(t,n))}),n){Rx(i);const t=`${XE}${n}`;l=WE([l,{"vs:#decl":`uniform vec2 ${t};\n`,"vs:#main-start":` vec2 ${YE} = transform_getPos(${t});\n gl_Position = vec4(${YE}, 0, 1.);\n`}])}a=c.join("\n")}return{vs:a,targetTextureType:s,inject:l,samplerTextureMap:o}}({vs:t.vs,sourceTextureMap:e,targetTextureVarying:this.targetTextureVarying,targetTexture:n}),l=WE([t.inject||{},o]);return this.targetTextureType=s,this.samplerTextureMap=a,{vs:i,fs:t._fs||NE({version:FE(i),input:this.targetTextureVarying,inputType:s,output:"transform_output"}),modules:this.hasSourceTextures||this.targetTextureVarying?[qE].concat(t.modules||[]):t.modules,uniforms:r,inject:l}}}const ZE={number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},array:{validate:(t,e)=>Array.isArray(t)||ArrayBuffer.isView(t)}};function JE(t){let e=tC(t);return"object"===e?t?"type"in t?Object.assign({},t,ZE[t.type]):"value"in t?(e=tC(t.value),Object.assign({type:e},t,ZE[e])):{type:"object",value:t}:{type:"object",value:null}:Object.assign({type:e,value:t},ZE[e])}function tC(t){return Array.isArray(t)||ArrayBuffer.isView(t)?"array":typeof t}class eC{constructor({name:t,vs:e,fs:n,dependencies:i=[],uniforms:r,getUniforms:s,deprecations:o=[],defines:a={},inject:l={},vertexShader:c,fragmentShader:u}){ME("string"==typeof t),this.name=t,this.vs=e||c,this.fs=n||u,this.getModuleUniforms=s,this.dependencies=i,this.deprecations=this._parseDeprecationDefinitions(o),this.defines=a,this.injections=function(t){const e={vs:{},fs:{}};for(const n in t){let i=t[n];const r=n.slice(0,2);"string"==typeof i&&(i={order:0,injection:i}),e[r][n]=i}return e}(l),r&&(this.uniforms=function(t){const e={};for(const n in t){const i=JE(t[n]);e[n]=i}return e}(r))}getModuleSource(t){let e;switch(t){case"vs":e=this.vs||"";break;case"fs":e=this.fs||"";break;default:ME(!1)}return`#define MODULE_${this.name.toUpperCase().replace(/[^0-9a-z]/gi,"_")}\n${e}// END MODULE_${this.name}\n\n`}getUniforms(t,e){return this.getModuleUniforms?this.getModuleUniforms(t,e):this.uniforms?this._defaultGetUniforms(t):{}}getDefines(){return this.defines}checkDeprecations(t,e){this.deprecations.forEach(n=>{n.regex.test(t)&&(n.deprecated?e.deprecated(n.old,n.new)():e.removed(n.old,n.new)())})}_parseDeprecationDefinitions(t){return t.forEach(t=>{switch(t.type){case"function":t.regex=new RegExp(`\\b${t.old}\\(`);break;default:t.regex=new RegExp(`${t.type} ${t.old};`)}}),t}_defaultGetUniforms(t={}){const e={},n=this.uniforms;for(const i in n){const r=n[i];i in t&&!r.private?(r.validate&&ME(r.validate(t[i],r),`${this.name}: invalid ${i}`),e[i]=t[i]):e[i]=r.value}return e}}function nC(t){return function(t){const e={},n={};return iC({modules:t,level:0,moduleMap:e,moduleDepth:n}),Object.keys(n).sort((t,e)=>n[e]-n[t]).map(t=>e[t])}(rC(t))}function iC({modules:t,level:e,moduleMap:n,moduleDepth:i}){if(e>=5)throw new Error("Possible loop in shader dependency graph");for(const r of t)n[r.name]=r,(void 0===i[r.name]||i[r.name](t instanceof eC||(ME("string"!=typeof t,`Shader module use by name is deprecated. Import shader module '${t}' and use it directly.`),ME(t.name,"shader module has no name"),(t=new eC(t)).dependencies=rC(t.dependencies)),t))}const sC={GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]},oC={};function aC(t,e){return t.match(/NVIDIA/i)||e.match(/NVIDIA/i)?"NVIDIA":t.match(/INTEL/i)||e.match(/INTEL/i)?"INTEL":t.match(/Apple/i)||e.match(/Apple/i)?"APPLE":t.match(/AMD/i)||e.match(/AMD/i)||t.match(/ATI/i)||e.match(/ATI/i)?"AMD":"UNKNOWN"}Object.keys(sC).forEach(t=>{oC[t]=t});const lC={};function cC(t,e,n={}){const i=sC[e];if(ME(i,e),!function(t={}){const e="undefined"!=typeof window&&window.navigator||{},n=t.userAgent||e.userAgent||"",i=-1!==n.indexOf("MSIE "),r=-1!==n.indexOf("Trident/");return i||r}(n))return!0;if(e in lC)return lC[e];const r=`#extension GL_${i[0]} : ${n.behavior||"enable"}\nvoid main(void) {}`,s=t.createShader(35633);t.shaderSource(s,r),t.compileShader(s);const o=t.getShaderParameter(s,35713);return t.deleteShader(s),lC[e]=o,o}function uC(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>function(t,e){const n=sC[e];ME(n,e);const i=function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}(t)&&n[1]||n[0],r="string"==typeof i?Boolean(t.getExtension(i)):i;return ME(!1===r||!0===r),r}(t,e))}function hC(t){return new RegExp(`\\b${t}[ \\t]+(\\w+[ \\t]+\\w+(\\[\\w+\\])?;)`,"g")}const dC=[[/^(#version[ \t]+(100|300[ \t]+es))?[ \t]*\n/,"#version 300 es\n"],[/\btexture(2D|2DProj|Cube)Lod(EXT)?\(/g,"textureLod("],[/\btexture(2D|2DProj|Cube)(EXT)?\(/g,"texture("]],pC=[...dC,[hC("attribute"),"in $1"],[hC("varying"),"out $1"]],fC=[...dC,[hC("varying"),"in $1"]],gC=[[/^#version[ \t]+300[ \t]+es/,"#version 100"],[/\btexture(2D|2DProj|Cube)Lod\(/g,"texture$1LodEXT("],[/\btexture\(/g,"texture2D("],[/\btextureLod\(/g,"texture2DLodEXT("]],mC=[...gC,[hC("in"),"attribute $1"],[hC("out"),"varying $1"]],bC=[...gC,[hC("in"),"varying $1"]],yC="gl_FragColor",vC=/\bout[ \t]+vec4[ \t]+(\w+)[ \t]*;\n?/,_C=/void\s+main\s*\([^)]*\)\s*\{\n?/;function wC(t,e){for(const[n,i]of e)t=t.replace(n,i);return t}const xC=`\n\n${zE}\n\n`,SC={[BE]:"vertex",fs:"fragment"};function EC(t,{id:e,source:n,type:i,modules:r,defines:s={},hookFunctions:o=[],inject:a={},transpileToGLSL100:l=!1,prologue:c=!0,log:u}){ME("string"==typeof n,"shader source must be a string");const h=i===BE,d=n.split("\n");let p=100,f="",g=n;0===d[0].indexOf("#version ")?(p=300,f=d[0],g=d.slice(1).join("\n")):f=`#version ${p}`;const m={};r.forEach(t=>{Object.assign(m,t.getDefines())}),Object.assign(m,s);let b=c?`${f}\n${function({id:t,source:e,type:n}){return t&&"string"==typeof t&&-1===e.indexOf("SHADER_NAME")?`\n#define SHADER_NAME ${t}_${SC[n]}\n\n`:""}({id:e,source:n,type:i})}\n${function({type:t}){return`\n#define SHADER_TYPE_${SC[t].toUpperCase()}\n`}({type:i})}\n${function(t){switch(function(t){const e=t.getExtension("WEBGL_debug_renderer_info"),n=t.getParameter(e&&e.UNMASKED_VENDOR_WEBGL||7936),i=t.getParameter(e&&e.UNMASKED_RENDERER_WEBGL||7937);return{gpuVendor:aC(n,i),vendor:n,renderer:i,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t).gpuVendor.toLowerCase()){case"nvidia":return"#define NVIDIA_GPU\n// Nvidia optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n";case"intel":return"#define INTEL_GPU\n// Intel optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n// Intel's built-in 'tan' function doesn't have acceptable precision\n#define LUMA_FP32_TAN_PRECISION_WORKAROUND 1\n// Intel GPU doesn't have full 32 bits precision in same cases, causes overflow\n#define LUMA_FP64_HIGH_BITS_OVERFLOW_WORKAROUND 1\n";case"amd":return"#define AMD_GPU\n";default:return"#define DEFAULT_GPU\n// Prevent driver from optimizing away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n"}}(t)}\n${function(t,e,n){let i="#if (__VERSION__ > 120)\n\n# define FEATURE_GLSL_DERIVATIVES\n# define FEATURE_GLSL_DRAW_BUFFERS\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FEATURE_GLSL_TEXTURE_LOD\n\n// DEPRECATED FLAGS, remove in v9\n# define FRAG_DEPTH\n# define DERIVATIVES\n# define DRAW_BUFFERS\n# define TEXTURE_LOD\n\n#endif // __VERSION\n";return uC(t,oC.GLSL_FRAG_DEPTH)&&(i+="\n// FRAG_DEPTH => gl_FragDepth is available\n#ifdef GL_EXT_frag_depth\n#extension GL_EXT_frag_depth : enable\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FRAG_DEPTH\n# define gl_FragDepth gl_FragDepthEXT\n#endif\n"),uC(t,oC.GLSL_DERIVATIVES)&&cC(t,oC.GLSL_DERIVATIVES)&&(i+="\n// DERIVATIVES => dxdF, dxdY and fwidth are available\n#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n# define FEATURE_GLSL_DERIVATIVES\n# define DERIVATIVES\n#endif\n"),uC(t,oC.GLSL_FRAG_DATA)&&cC(t,oC.GLSL_FRAG_DATA,{behavior:"require"})&&(i+="\n// DRAW_BUFFERS => gl_FragData[] is available\n#ifdef GL_EXT_draw_buffers\n#extension GL_EXT_draw_buffers : require\n#define FEATURE_GLSL_DRAW_BUFFERS\n#define DRAW_BUFFERS\n#endif\n"),uC(t,oC.GLSL_TEXTURE_LOD)&&(i+="// TEXTURE_LOD => texture2DLod etc are available\n#ifdef GL_EXT_shader_texture_lod\n#extension GL_EXT_shader_texture_lod : enable\n\n# define FEATURE_GLSL_TEXTURE_LOD\n# define TEXTURE_LOD\n\n#endif\n"),i}(t)}\n${function(t={}){let e=0,n="";for(const i in t){0===e&&(n+="\n// APPLICATION DEFINES\n"),e++;const r=t[i];(r||Number.isFinite(r))&&(n+=`#define ${i.toUpperCase()} ${t[i]}\n`)}return 0===e&&(n+="\n"),n}(m)}\n${h?"":"precision highp float;\n\n"}\n`:`${f}\n`;const y=function(t){const e={vs:{},fs:{}};return t.forEach(t=>{let n;"string"!=typeof t?(n=t,t=n.hook):n={},t=t.trim();const[i,r]=t.split(":"),s=t.replace(/\(.+/,"");e[i][s]=Object.assign(n,{signature:r})}),e}(o),v={},_={},w={};for(const x in a){const t="string"==typeof a[x]?{injection:a[x],order:0}:a[x],e=x.match(/^(v|f)s:(#)?([\w-]+)$/);if(e){const n=e[3];e[2]?"decl"===n?_[x]=[t]:w[x]=[t]:v[x]=[t]}else w[x]=[t]}for(const x of r){u&&x.checkDeprecations(g,u),b+=x.getModuleSource(i,p);const t=x.injections[i];for(const e in t){const n=e.match(/^(v|f)s:#([\w-]+)$/);if(n){const i="decl"===n[2]?_:w;i[e]=i[e]||[],i[e].push(t[e])}else v[e]=v[e]||[],v[e].push(t[e])}}return b+=xC,b=GE(b,i,_),b+=function(t,e){let n="";for(const i in t){const r=t[i];if(n+=`void ${r.signature} {\n`,r.header&&(n+=` ${r.header}`),e[i]){const t=e[i];t.sort((t,e)=>t.order-e.order);for(const e of t)n+=` ${e.injection}\n`}r.footer&&(n+=` ${r.footer}`),n+="}\n"}return n}(y[i],v),b+=g,b=GE(b,i,w),b=function(t,e,n){switch(e){case 300:return n?wC(t,pC):function(t){const e=(t=wC(t,fC)).match(vC);if(e){const n=e[1];t=t.replace(new RegExp(`\\b${yC}\\b`,"g"),n)}else{const e="fragmentColor";t=t.replace(_C,t=>`out vec4 ${e};\n${t}`).replace(new RegExp(`\\b${yC}\\b`,"g"),e)}return t}(t);case 100:return n?wC(t,mC):function(t){const e=(t=wC(t,bC)).match(vC);if(e){const n=e[1];t=t.replace(vC,"").replace(new RegExp(`\\b${n}\\b`,"g"),yC)}return t}(t);default:throw new Error(`unknown GLSL version ${e}`)}}(b,l?100:p,h),b}function CC(t){return function(e){const n={};for(const i of t){const t=i.getUniforms(e,n);Object.assign(n,t)}return n}}const OC={5126:VC.bind(null,"uniform1fv",IC,1,zC),35664:VC.bind(null,"uniform2fv",IC,2,zC),35665:VC.bind(null,"uniform3fv",IC,3,zC),35666:VC.bind(null,"uniform4fv",IC,4,zC),5124:VC.bind(null,"uniform1iv",DC,1,zC),35667:VC.bind(null,"uniform2iv",DC,2,zC),35668:VC.bind(null,"uniform3iv",DC,3,zC),35669:VC.bind(null,"uniform4iv",DC,4,zC),35670:VC.bind(null,"uniform1iv",DC,1,zC),35671:VC.bind(null,"uniform2iv",DC,2,zC),35672:VC.bind(null,"uniform3iv",DC,3,zC),35673:VC.bind(null,"uniform4iv",DC,4,zC),35674:VC.bind(null,"uniformMatrix2fv",IC,4,UC),35675:VC.bind(null,"uniformMatrix3fv",IC,9,UC),35676:VC.bind(null,"uniformMatrix4fv",IC,16,UC),35678:BC,35680:BC,5125:VC.bind(null,"uniform1uiv",RC,1,zC),36294:VC.bind(null,"uniform2uiv",RC,2,zC),36295:VC.bind(null,"uniform3uiv",RC,3,zC),36296:VC.bind(null,"uniform4uiv",RC,4,zC),35685:VC.bind(null,"uniformMatrix2x3fv",IC,6,UC),35686:VC.bind(null,"uniformMatrix2x4fv",IC,8,UC),35687:VC.bind(null,"uniformMatrix3x2fv",IC,6,UC),35688:VC.bind(null,"uniformMatrix3x4fv",IC,12,UC),35689:VC.bind(null,"uniformMatrix4x2fv",IC,8,UC),35690:VC.bind(null,"uniformMatrix4x3fv",IC,12,UC),35678:BC,35680:BC,35679:BC,35682:BC,36289:BC,36292:BC,36293:BC,36298:BC,36299:BC,36300:BC,36303:BC,36306:BC,36307:BC,36308:BC,36311:BC},TC={},kC={},AC={},PC=[0];function MC(t,e,n,i){1===e&&"boolean"==typeof t&&(t=t?1:0),Number.isFinite(t)&&(PC[0]=t,t=PC);const r=t.length;if(r%e&&Nw.warn(`Uniform size should be multiples of ${e}`,t)(),t instanceof n)return t;let s=i[r];s||(s=new n(r),i[r]=s);for(let o=0;o{const r=t!==i;return r&&(e.uniform1i(n,i),t=i),r}}function VC(t,e,n,i){let r=null,s=null;return(o,a,l)=>{const c=e(l,n),u=c.length;let h=!1;if(null===r)r=new Float32Array(u),s=u,h=!0;else{Rx(s===u,"Uniform length cannot change.");for(let t=0;t{const s=String(i+e);return GC(s,r-s.length)+n+t})}(e);return{shaderName:l,errors:$C(s,c),warnings:$C(o,c)}}(t,this.source,this.shaderType,this.id);throw Nw.error(`GLSL compilation errors in ${e}\n${n}`)(),Nw.warn(`GLSL compilation warnings in ${e}\n${i}`)(),new Error(`GLSL compilation errors in ${e}`)}}_deleteHandle(){this.gl.deleteShader(this.handle)}_getOptsFromHandle(){return{type:this.getParameter(35663),source:this.getSource()}}}class qC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35633}))}_createHandle(){return this.gl.createShader(35633)}}class XC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35632}))}_createHandle(){return this.gl.createShader(35632)}}const YC=5126,KC=5124,QC=5125,ZC={[YC]:[YC,1,"float"],35664:[YC,2,"vec2"],35665:[YC,3,"vec3"],35666:[YC,4,"vec4"],[KC]:[KC,1,"int"],35667:[KC,2,"ivec2"],35668:[KC,3,"ivec3"],35669:[KC,4,"ivec4"],[QC]:[QC,1,"uint"],36294:[QC,2,"uvec2"],36295:[QC,3,"uvec3"],36296:[QC,4,"uvec4"],35670:[YC,1,"bool"],35671:[YC,2,"bvec2"],35672:[YC,3,"bvec3"],35673:[YC,4,"bvec4"],35674:[YC,8,"mat2"],35685:[YC,8,"mat2x3"],35686:[YC,8,"mat2x4"],35675:[YC,12,"mat3"],35687:[YC,12,"mat3x2"],35688:[YC,12,"mat3x4"],35676:[YC,16,"mat4"],35689:[YC,16,"mat4x2"],35690:[YC,16,"mat4x3"]};function JC(t){const e=ZC[t];if(!e)return null;const[n,i]=e;return{type:n,components:i}}function tO(t,e){switch(t){case 5120:case 5121:case 5122:case 5123:t=YC}for(const n in ZC){const[i,r,s]=ZC[n];if(i===t&&r===e)return{glType:n,name:s}}return null}class eO{constructor(t){this.id=t.id,this.attributeInfos=[],this.attributeInfosByName={},this.attributeInfosByLocation=[],this.varyingInfos=[],this.varyingInfosByName={},Object.seal(this),this._readAttributesFromProgram(t),this._readVaryingsFromProgram(t)}getAttributeInfo(t){const e=Number(t);return Number.isFinite(e)?this.attributeInfosByLocation[e]:this.attributeInfosByName[t]||null}getAttributeLocation(t){const e=this.getAttributeInfo(t);return e?e.location:-1}getAttributeAccessor(t){const e=this.getAttributeInfo(t);return e?e.accessor:null}getVaryingInfo(t){const e=Number(t);return Number.isFinite(e)?this.varyingInfos[e]:this.varyingInfosByName[t]||null}getVaryingIndex(t){const e=this.getVaryingInfo();return e?e.location:-1}getVaryingAccessor(t){const e=this.getVaryingInfo();return e?e.accessor:null}_readAttributesFromProgram(t){const{gl:e}=t,n=e.getProgramParameter(t.handle,35721);for(let i=0;i=0&&this._addAttribute(o,n,r,s)}this.attributeInfos.sort((t,e)=>t.location-e.location)}_readVaryingsFromProgram(t){const{gl:e}=t;if(!Fw(e))return;const n=e.getProgramParameter(t.handle,35971);for(let i=0;it.location-e.location)}_addAttribute(t,e,n,i){const{type:r,components:s}=JC(n),o={type:r,size:i*s};this._inferProperties(t,e,o);const a={location:t,name:e,accessor:new Kx(o)};this.attributeInfos.push(a),this.attributeInfosByLocation[t]=a,this.attributeInfosByName[a.name]=a}_inferProperties(t,e,n){/instance/i.test(e)&&(n.divisor=1)}_addVarying(t,e,n,i){const{type:r,components:s}=JC(n),o={location:t,name:e,accessor:new Kx({type:r,size:i*s})};this.varyingInfos.push(o),this.varyingInfosByName[o.name]=o}}const nO=35981,iO=["setVertexArray","setAttributes","setBuffers","unsetBuffers","use","getUniformCount","getUniformInfo","getUniformLocation","getUniformValue","getVarying","getFragDataLocation","getAttachedShaders","getAttributeCount","getAttributeLocation","getAttributeInfo"];class rO extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Program","v6.0",iO),this._isCached=!1,this.initialize(e),Object.seal(this),this._setId(e.id)}initialize(t={}){const{hash:e,vs:n,fs:i,varyings:r,bufferMode:s=nO}=t;return this.hash=e||"",this.vs="string"==typeof n?new qC(this.gl,{id:`${t.id}-vs`,source:n}):n,this.fs="string"==typeof i?new XC(this.gl,{id:`${t.id}-fs`,source:i}):i,Rx(this.vs instanceof qC),Rx(this.fs instanceof XC),this.uniforms={},this._textureUniforms={},r&&r.length>0&&(Vw(this.gl),this.varyings=r,this.gl2.transformFeedbackVaryings(this.handle,r,s)),this._compileAndLink(),this._readUniformLocationsFromLinkedProgram(),this.configuration=new eO(this),this.setProps(t)}delete(t={}){return this._isCached?this:super.delete(t)}setProps(t){return"uniforms"in t&&this.setUniforms(t.uniforms),this}draw({logPriority:t,drawMode:e=4,vertexCount:n,offset:i=0,start:r,end:s,isIndexed:o=!1,indexType:a=5123,instanceCount:l=0,isInstanced:c=l>0,vertexArray:u=null,transformFeedback:h,framebuffer:d,parameters:p={},uniforms:f,samplers:g}){if((f||g)&&(Nw.deprecated("Program.draw({uniforms})","Program.setUniforms(uniforms)")(),this.setUniforms(f||{})),Nw.priority>=t){const i=d?d.id:"default",r=`mode=${Lx(this.gl,e)} verts=${n} instances=${l} indexType=${Lx(this.gl,a)} isInstanced=${c} isIndexed=${o} Framebuffer=${i}`;Nw.log(t,r)()}return Rx(u),this.gl.useProgram(this.handle),!(!this._areTexturesRenderable()||0===n||c&&0===l||(u.bindForDraw(n,l,()=>{if(void 0!==d&&(p=Object.assign({},p,{framebuffer:d})),h){const t=function(t){switch(t){case 0:return 0;case 1:case 3:case 2:return 1;case 4:case 5:case 6:return 4;default:return Rx(!1),0}}(e);h.begin(t)}this._bindTextures(),vx(this.gl,p,()=>{o&&c?this.gl2.drawElementsInstanced(e,n,a,i,l):o&&Fw(this.gl)&&!isNaN(r)&&!isNaN(s)?this.gl2.drawRangeElements(e,r,s,n,a,i):o?this.gl.drawElements(e,n,a,i):c?this.gl2.drawArraysInstanced(e,i,n,l):this.gl.drawArrays(e,i,n)}),h&&h.end()}),0))}setUniforms(t={}){Nw.priority>=2&&function(t,e,n){for(const i in t){const r=t[i];if((!n||Boolean(n[i]))&&!jC(r))throw e=e?`${e} `:"",console.error(`${e} Bad uniform ${i}`,r),new Error(`${e} Bad uniform ${i}`)}}(t,this.id,this._uniformSetters),this.gl.useProgram(this.handle);for(const e in t){const n=t[e],i=this._uniformSetters[e];if(i){let t=n,r=!1;if(t instanceof SS&&(t=t.texture),t instanceof oS)if(r=this.uniforms[e]!==n,r){void 0===i.textureIndex&&(i.textureIndex=this._textureIndexCounter++);const n=t,{textureIndex:r}=i;n.bind(r),t=r,this._textureUniforms[e]=n}else t=i.textureIndex;else this._textureUniforms[e]&&delete this._textureUniforms[e];(i(t)||r)&&FC(this.uniforms,e,n)}}return this}_areTexturesRenderable(){let t=!0;for(const e in this._textureUniforms){const n=this._textureUniforms[e];n.update(),t=t&&n.loaded}return t}_bindTextures(){for(const t in this._textureUniforms)this._textureUniforms[t].bind(this._uniformSetters[t].textureIndex)}_createHandle(){return this.gl.createProgram()}_deleteHandle(){this.gl.deleteProgram(this.handle)}_getOptionsFromHandle(t){const e=this.gl.getAttachedShaders(t),n={};for(const i of e)switch(this.gl.getShaderParameter(this.handle,35663)){case 35633:n.vs=new qC({handle:i});break;case 35632:n.fs=new XC({handle:i})}return n}_getParameter(t){return this.gl.getProgramParameter(this.handle,t)}_setId(t){if(!t){const t=this._getName();this.id=Fx(t)}}_getName(){let t=this.vs.getName()||this.fs.getName();return t=t.replace(/shader/i,""),t=t?`${t}-program`:"program",t}_compileAndLink(){const{gl:t}=this;if(t.attachShader(this.handle,this.vs.handle),t.attachShader(this.handle,this.fs.handle),Nw.time(4,`linkProgram for ${this._getName()}`)(),t.linkProgram(this.handle),Nw.timeEnd(4,`linkProgram for ${this._getName()}`)(),t.debug||Nw.level>0){if(!t.getProgramParameter(this.handle,35714))throw new Error(`Error linking: ${t.getProgramInfoLog(this.handle)}`);if(t.validateProgram(this.handle),!t.getProgramParameter(this.handle,35715))throw new Error(`Error validating: ${t.getProgramInfoLog(this.handle)}`)}}_readUniformLocationsFromLinkedProgram(){const{gl:t}=this;this._uniformSetters={},this._uniformCount=this._getParameter(35718);for(let e=0;e1)for(let e=0;ee.name===t.name)||this._defaultModules.push(t),this.stateHash++}removeDefaultModule(t){const e="string"==typeof t?t:t.name;this._defaultModules=this._defaultModules.filter(t=>t.name!==e),this.stateHash++}addShaderHook(t,e){e&&(t=Object.assign(e,{hook:t})),this._hookFunctions.push(t),this.stateHash++}get(t={}){const{vs:e="",fs:n="",defines:i={},inject:r={},varyings:s=[],bufferMode:o=35981,transpileToGLSL100:a=!1}=t,l=this._getModuleList(t.modules),c=this._getHash(e),u=this._getHash(n),h=l.map(t=>this._getHash(t.name)).sort(),d=s.map(t=>this._getHash(t)),p=Object.keys(i).sort(),f=Object.keys(r).sort(),g=[],m=[];for(const y of p)g.push(this._getHash(y)),g.push(this._getHash(i[y]));for(const y of f)m.push(this._getHash(y)),m.push(this._getHash(r[y]));const b=`${c}/${u}D${g.join("/")}M${h.join("/")}I${m.join("/")}V${d.join("/")}H${this.stateHash}B${o}${a?"T":""}`;if(!this._programCache[b]){const t=function(t,e){const{vs:n,fs:i}=e,r=nC(e.modules||[]);return{gl:t,vs:EC(t,Object.assign({},e,{source:n,type:BE,modules:r})),fs:EC(t,Object.assign({},e,{source:i,type:"fs",modules:r})),getUniforms:CC(r)}}(this.gl,{vs:e,fs:n,modules:l,inject:r,defines:i,hookFunctions:this._hookFunctions,transpileToGLSL100:a});this._programCache[b]=new rO(this.gl,{hash:b,vs:t.vs,fs:t.fs,varyings:s,bufferMode:o}),this._getUniforms[b]=t.getUniforms||(t=>{}),this._useCounts[b]=0}return this._useCounts[b]++,this._programCache[b]}getUniforms(t){return this._getUniforms[t.hash]||null}release(t){const e=t.hash;this._useCounts[e]--,0===this._useCounts[e]&&(this._programCache[e].delete(),delete this._programCache[e],delete this._getUniforms[e],delete this._useCounts[e])}_getHash(t){return void 0===this._hashes[t]&&(this._hashes[t]=this._hashCounter++),this._hashes[t]}_getModuleList(t=[]){const e=new Array(this._defaultModules.length+t.length),n={};let i=0;for(let r=0,s=this._defaultModules.length;r-1)return"Edge";const n=-1!==e.indexOf("MSIE "),i=-1!==e.indexOf("Trident/");return n||i?"IE":vw.chrome?"Chrome":vw.safari?"Safari":vw.mozInnerScreenX?"Firefox":"Unknown"}()}static getDefaultArray(t){return t.luma=t.luma||{},t.luma.defaultVertexArray||(t.luma.defaultVertexArray=new aO(t,{handle:null,isDefaultArray:!0})),t.luma.defaultVertexArray}static getMaxAttributes(t){return aO.MAX_ATTRIBUTES=aO.MAX_ATTRIBUTES||t.getParameter(34921),aO.MAX_ATTRIBUTES}static setConstant(t,e,n){switch(n.constructor){case Float32Array:aO._setConstantFloatArray(t,e,n);break;case Int32Array:aO._setConstantIntArray(t,e,n);break;case Uint32Array:aO._setConstantUintArray(t,e,n);break;default:Rx(!1)}}constructor(t,e={}){super(t,Object.assign({},e,{id:e.id||e.program&&e.program.id})),this.buffer=null,this.bufferValue=null,this.isDefaultArray=e.isDefaultArray||!1,this.gl2=t,this.initialize(e),Object.seal(this)}delete(){return super.delete(),this.buffer&&this.buffer.delete(),this}get MAX_ATTRIBUTES(){return aO.getMaxAttributes(this.gl)}initialize(t={}){return this.setProps(t)}setProps(t){return this}setElementBuffer(t=null,e={}){return Rx(!t||34963===t.target,"elements must be GL.ELEMENT_ARRAY_BUFFER"),this.bind(()=>{this.gl.bindBuffer(34963,t?t.handle:null)}),this}setBuffer(t,e,n){if(34963===e.target)return this.setElementBuffer(e,n);const{size:i,type:r,stride:s,offset:o,normalized:a,integer:l,divisor:c}=n,{gl:u,gl2:h}=this;return t=Number(t),this.bind(()=>{u.bindBuffer(34962,e.handle),l?(Rx(Fw(u)),h.vertexAttribIPointer(t,i,r,s,o)):u.vertexAttribPointer(t,i,r,a,s,o),u.enableVertexAttribArray(t),h.vertexAttribDivisor(t,c||0)}),this}enable(t,e=!0){return!e&&0===t&&!aO.isSupported(this.gl,{constantAttributeZero:!0})||(t=Number(t),this.bind(()=>e?this.gl.enableVertexAttribArray(t):this.gl.disableVertexAttribArray(t))),this}getConstantBuffer(t,e){const n=this._normalizeConstantArrayValue(e),i=n.byteLength*t,r=n.length*t;let s=!this.buffer;if(this.buffer=this.buffer||new tS(this.gl,i),s=s||this.buffer.reallocate(i),s=s||!this._compareConstantArrayValues(n,this.bufferValue),s){const t=function(t,e){return new t(function(t){return(!oO||oO.byteLength{switch(t){case 34373:return this.gl.getVertexAttribOffset(e,t);default:return this.gl.getVertexAttrib(e,t)}})}}const lO=/^(.+)__LOCATION_([0-9]+)$/,cO=["setBuffers","setGeneric","clearBindings","setLocations","setGenericValues","setDivisor","enable","disable"];class uO{constructor(t,e={}){this.id=e.id||e.program&&e.program.id,this.gl=t,this.configuration=null,this.elements=null,this.elementsAccessor=null,this.values=null,this.accessors=null,this.unused=null,this.drawParams=null,this.buffer=null,this.attributes={},this.vertexArrayObject=new aO(t),zx(this,"VertexArray","v6.0",cO),this.initialize(e),Object.seal(this)}delete(){this.buffer&&this.buffer.delete(),this.vertexArrayObject.delete()}initialize(t={}){return this.reset(),this.configuration=null,this.bindOnUse=!1,this.setProps(t)}reset(){this.elements=null,this.elementsAccessor=null;const{MAX_ATTRIBUTES:t}=this.vertexArrayObject;return this.values=new Array(t).fill(null),this.accessors=new Array(t).fill(null),this.unused={},this.drawParams=null,this}setProps(t){return"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"attributes"in t&&this.setAttributes(t.attributes),"elements"in t&&this.setElementBuffer(t.elements),"bindOnUse"in t&&(t=t.bindOnUse),this}clearDrawParams(){this.drawParams=null}getDrawParams(){return this.drawParams=this.drawParams||this._updateDrawParams(),this.drawParams}setAttributes(t){return Object.assign(this.attributes,t),this.vertexArrayObject.bind(()=>{for(const e in t)this._setAttribute(e,t[e]);this.gl.bindBuffer(34962,null)}),this}setElementBuffer(t=null,e={}){return this.elements=t,this.elementsAccessor=e,this.clearDrawParams(),this.vertexArrayObject.setElementBuffer(t,e),this}setBuffer(t,e,n={}){if(34963===e.target)return this.setElementBuffer(e,n);const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,e.accessor,n);return i>=0&&(this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.setBuffer(i,e,r)),this}setConstant(t,e,n={}){const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,Object.assign({size:e.length},n));return i>=0&&(e=this.vertexArrayObject._normalizeConstantArrayValue(e),this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.enable(i,!1)),this}unbindBuffers(){return this.vertexArrayObject.bind(()=>{this.elements&&this.vertexArrayObject.setElementBuffer(null),this.buffer=this.buffer||new tS(this.gl,{accessor:{size:4}});for(let t=0;t{this.elements&&this.setElementBuffer(this.elements);for(let t=0;t{this._setConstantAttributes(t,e),i=n()}),i}_resolveLocationAndAccessor(t,e,n,i){const r={location:-1,accessor:null},{location:s,name:o}=this._getAttributeIndex(t);if(!Number.isFinite(s)||s<0)return this.unused[t]=e,Nw.once(3,()=>`unused value ${t} in ${this.id}`)(),r;const a=this._getAttributeInfo(o||s);if(!a)return r;const l=Kx.resolve(a.accessor,this.accessors[s]||{},n,i),{size:c,type:u}=l;return Rx(Number.isFinite(c)&&Number.isFinite(u)),{location:s,accessor:l}}_getAttributeInfo(t){return this.configuration&&this.configuration.getAttributeInfo(t)}_getAttributeIndex(t){const e=Number(t);if(Number.isFinite(e))return{location:e};const n=lO.exec(t),i=n?n[1]:t,r=n?Number(n[2]):0;return this.configuration?{location:this.configuration.getAttributeLocation(i)+r,name:i}:{location:-1}}_setAttribute(t,e){if(e instanceof tS)this.setBuffer(t,e);else if(Array.isArray(e)&&e.length&&e[0]instanceof tS)this.setBuffer(t,e[0],e[1]);else if(ArrayBuffer.isView(e)||Array.isArray(e))this.setConstant(t,e);else{if(!(e.buffer instanceof tS))throw new Error("VertexArray: attributes must be Buffers or constants (i.e. typed array)");this.setBuffer(t,e.buffer,e)}}_setConstantAttributes(t,e){const n=Math.max(0|t,0|e);let i=this.values[0];ArrayBuffer.isView(i)&&this._setConstantAttributeZero(i,n);for(let r=1;r0;if(t.isInstanced=t.isInstanced||s,n instanceof tS){const e=n;if(s){const n=e.getVertexCount(i);t.instanceCount=Math.min(t.instanceCount,n)}else{const n=e.getVertexCount(i);t.vertexCount=Math.min(t.vertexCount,n)}}}setElements(t=null,e={}){return Nw.deprecated("setElements","setElementBuffer")(),this.setElementBuffer(t,e)}}function hO(t,e={}){const{isInteger:n=!1}=e;if(Array.isArray(t)||ArrayBuffer.isView(t))return function(t,e){const{maxElts:n=16,size:i=1}=e;let r="[";for(let s=0;s0&&(r+=","+(s%i==0?" ":"")),r+=hO(t[s],e);return`${r}${t.length>n?"...":"]"}`}(t,e);if(!Number.isFinite(t))return String(t);if(Math.abs(t)<1e-16)return n?"0":"0.";if(n||Math.abs(t)>100&&Math.abs(t)<1e4)return t.toFixed(0);const i=t.toPrecision(2);return i.indexOf(".0")===i.length-2?i.slice(0,-1):i}function dO(t,e,n,i){const{gl:r}=t;if(!e)return{[i]:"null","Format ":"N/A"};let s,o,a,l="NOT PROVIDED",c=1,u=0,h=0;if(n&&(l=n.type,c=n.size,l=String(l).replace("Array",""),s=-1!==l.indexOf("nt")),e instanceof tS){const t=e,{data:d,changed:p}=t.getDebugData();let f;return o=p?"*":"",a=d,h=t.byteLength,u=h/d.BYTES_PER_ELEMENT/c,n?f=`${n.divisor>0?"I ":"P "} ${u} (x${c}=${h} bytes ${Lx(r,l)})`:(s=!0,f=`${h} bytes`),{[i]:`${o}${hO(a,{size:c,isInteger:s})}`,"Format ":f}}return a=e,c=e.length,l=String(e.constructor.name).replace("Array",""),s=-1!==l.indexOf("nt"),{[i]:`${hO(a,{size:c,isInteger:s})} (constant)`,"Format ":`${c}x${l} (constant)`}}function pO(t,e){const{type:n,size:i}=e,r=tO(n,i);return r?`${t} (${r.name})`:t}function fO({header:t="Uniforms",program:e,uniforms:n,undefinedOnly:i=!1}){Rx(e);const r=".*Matrix",s={},o=Object.keys(e._uniformSetters).sort();let a=0;for(const u of o)!u.match(".*_.*")&&!u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)s[u]||gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;let l=0;const c={};if(!i)for(const u in n){const e=n[u];s[u]||(l++,c[u]={Type:`NOT USED: ${e}`,[t]:hO(e)})}return{table:s,count:a,unusedTable:c,unusedCount:l}}function gO({table:t,header:e,uniforms:n,uniformName:i,undefinedOnly:r}){const s=n[i],o=function(t){return null!=t}(s);return!(r&&o||(t[i]={[e]:o?hO(s):"N/A","Uniform Type":o?s:"NOT PROVIDED"},0))}function mO(t){const{type:e,size:n}=t.accessor,i=tO(e,n);return i?`${i.name} ${t.name}`:t.name}const bO={POSITION:"positions",NORMAL:"normals",COLOR_0:"colors",TEXCOORD_0:"texCoords",TEXCOORD_1:"texCoords1",TEXCOORD_2:"texCoords2"};function yO(t,e){const{attributeMap:n=bO}=e||{};return n&&n[t]||t}function vO(t,e){let n;switch(t){case"texCoords":case"texCoord1":case"texCoord2":case"texCoord3":n="uvs";break;case"vertices":case"positions":case"normals":case"pickingColors":n="vectors"}switch(n){case"vectors":e.size=e.size||3;break;case"uvs":e.size=e.size||2}Rx(Number.isFinite(e.size),`attribute ${t} needs size`)}const _O=()=>{},wO={};class xO{constructor(t,e={}){const{id:n=Fx("model")}=e;Rx(jw(t)),this.id=n,this.gl=t,this.id=e.id||Fx("Model"),this.lastLogTime=0,this.animated=!1,this.initialize(e)}initialize(t){this.props={},this.programManager=t.programManager||sO.getDefaultProgramManager(this.gl),this._programManagerState=-1,this._managedProgram=!1;const{program:e=null,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this.program=null,this.vertexArray=null,this._programDirty=!0,this.userData={},this.needsRedraw=!0,this._attributes={},this.attributes={},this.uniforms={},this.pickable=!0,this._checkProgram(),this.setUniforms(Object.assign({},this.getModuleUniforms(t.moduleSettings))),this.drawMode=void 0!==t.drawMode?t.drawMode:4,this.vertexCount=t.vertexCount||0,this.geometryBuffers={},this.isInstanced=t.isInstanced||t.instanced||t.instanceCount>0,this._setModelProps(t),this.geometry={},Rx(void 0!==this.drawMode&&Number.isFinite(this.vertexCount),"Model needs drawMode and vertexCount")}setProps(t){this._setModelProps(t)}delete(){for(const t in this._attributes)this._attributes[t]!==this.attributes[t]&&this._attributes[t].delete();this._managedProgram&&(this.programManager.release(this.program),this._managedProgram=!1),this.vertexArray.delete(),this._deleteGeometryBuffers()}getDrawMode(){return this.drawMode}getVertexCount(){return this.vertexCount}getInstanceCount(){return this.instanceCount}getAttributes(){return this.attributes}getProgram(){return this.program}setProgram(t){const{program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this._programDirty=!0}getUniforms(){return this.uniforms}setDrawMode(t){return this.drawMode=t,this}setVertexCount(t){return Rx(Number.isFinite(t)),this.vertexCount=t,this}setInstanceCount(t){return Rx(Number.isFinite(t)),this.instanceCount=t,this}setGeometry(t){return this.drawMode=t.drawMode,this.vertexCount=t.getVertexCount(),this._deleteGeometryBuffers(),this.geometryBuffers=function(t,e,n){const i={};let r=e.indices;for(const s in e.attributes){const n=e.attributes[s],o=yO(s,undefined);if("indices"===s)r=n;else if(n.constant)i[o]=n.value;else{const e=n.value,r=wt({},n);delete r.value,i[o]=[new tS(t,e),r],vO(s,r)}}if(r){const e=r.value||r;Rx(e instanceof Uint16Array||e instanceof Uint32Array,'attribute array for "indices" must be of integer type');const n={size:1,isIndexed:void 0===r.isIndexed||r.isIndexed};i.indices=[new tS(t,{data:e,target:34963}),n]}return i}(this.gl,t),this.vertexArray.setAttributes(this.geometryBuffers),this}setAttributes(t={}){if(Vx(t))return this;const e={};for(const n in t){const i=t[n];e[n]=i.getValue?i.getValue():i}return this.vertexArray.setAttributes(e),this}setUniforms(t={}){return Object.assign(this.uniforms,t),this}getModuleUniforms(t){this._checkProgram();const e=this.programManager.getUniforms(this.program);return e?e(t):{}}updateModuleSettings(t){const e=this.getModuleUniforms(t||{});return this.setUniforms(e)}clear(t){return pS(this.program.gl,t),this}draw(t={}){this._checkProgram();const{moduleSettings:e=null,framebuffer:n,uniforms:i={},attributes:r={},transformFeedback:s=this.transformFeedback,parameters:o={},vertexArray:a=this.vertexArray}=t;let l;this.setAttributes(r),this.updateModuleSettings(e),this.setUniforms(i),Nw.priority>=2&&(l=this._logDrawCallStart(2));const c=this.vertexArray.getDrawParams(),{isIndexed:u=c.isIndexed,indexType:h=c.indexType,indexOffset:d=c.indexOffset,vertexArrayInstanced:p=c.isInstanced}=this.props;p&&!this.isInstanced&&Nw.warn("Found instanced attributes on non-instanced model",this.id)();const{isInstanced:f,instanceCount:g}=this,{onBeforeRender:m=_O,onAfterRender:b=_O}=this.props;m(),this.program.setUniforms(this.uniforms);const y=this.program.draw(Object.assign(wO,t,{logPriority:l,uniforms:null,framebuffer:n,parameters:o,drawMode:this.getDrawMode(),vertexCount:this.getVertexCount(),vertexArray:a,transformFeedback:s,isIndexed:u,indexType:h,isInstanced:f,instanceCount:g,offset:u?d:0}));return b(),Nw.priority>=2&&this._logDrawCallEnd(l,a,n),y}transform(t={}){const{discard:e=!0,feedbackBuffers:n,unbindModels:i=[]}=t;let{parameters:r}=t;n&&this._setFeedbackBuffers(n),e&&(r=Object.assign({},r,{35977:e})),i.forEach(t=>t.vertexArray.unbindBuffers());try{this.draw(Object.assign({},t,{parameters:r}))}finally{i.forEach(t=>t.vertexArray.bindBuffers())}return this}render(t={}){return Nw.warn("Model.render() is deprecated. Use Model.setUniforms() and Model.draw()")(),this.setUniforms(t).draw()}_setModelProps(t){Object.assign(this.props,t),"uniforms"in t&&this.setUniforms(t.uniforms),"pickable"in t&&(this.pickable=t.pickable),"instanceCount"in t&&(this.instanceCount=t.instanceCount),"geometry"in t&&this.setGeometry(t.geometry),"attributes"in t&&this.setAttributes(t.attributes),"_feedbackBuffers"in t&&this._setFeedbackBuffers(t._feedbackBuffers)}_checkProgram(){if(!this._programDirty&&this.programManager.stateHash===this._programManagerState)return;let{program:t}=this.programProps;if(t)this._managedProgram=!1;else{const{vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}=this.programProps;t=this.programManager.get({vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}),this.program&&this._managedProgram&&this.programManager.release(this.program),this._programManagerState=this.programManager.stateHash,this._managedProgram=!0}Rx(t instanceof rO,"Model needs a program"),this._programDirty=!1,t!==this.program&&(this.program=t,this.vertexArray?this.vertexArray.setProps({program:this.program,attributes:this.vertexArray.attributes}):this.vertexArray=new uO(this.gl,{program:this.program}),this.setUniforms(Object.assign({},this.getModuleUniforms())))}_deleteGeometryBuffers(){for(const t in this.geometryBuffers){const e=this.geometryBuffers[t][0]||this.geometryBuffers[t];e instanceof tS&&e.delete()}}_setAnimationProps(t){this.animated&&Rx(t,"Model.draw(): animated uniforms but no animationProps")}_setFeedbackBuffers(t={}){if(Vx(t))return this;const{gl:e}=this.program;return this.transformFeedback=this.transformFeedback||new LE(e,{program:this.program}),this.transformFeedback.setBuffers(t),this}_logDrawCallStart(t){const e=t>3?0:1e4;if(!(Date.now()-this.lastLogTime>> DRAWING MODEL ${this.id}`,{collapsed:Nw.level<=2})(),t}_logDrawCallEnd(t,e,n,i){if(void 0===t)return;const r=function({vertexArray:t,header:e="Attributes"}){if(!t.configuration)return{};const n={};t.elements&&(n.ELEMENT_ARRAY_BUFFER=dO(t,t.elements,null,e));const i=t.values;for(const r in i){const s=t._getAttributeInfo(r);if(s){let o=`${r}: ${s.name}`;const a=t.accessors[s.location];a&&(o=`${r}: ${pO(s.name,a)}`),n[o]=dO(t,i[r],a,e)}}return n}({vertexArray:e,header:`${this.id} attributes`,attributes:this._attributes}),{table:s,unusedTable:o,unusedCount:a}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n)}),{table:l,count:c}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n),undefinedOnly:!0});c>0&&Nw.log("MISSING UNIFORMS",Object.keys(l))(),a>0&&Nw.log("UNUSED UNIFORMS",Object.keys(o))();const u=function(t){const e={},n=`Accessors for ${t.id}`;for(const i of t.attributeInfos)i&&(e[`in ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});for(const i of t.varyingInfos)i&&(e[`out ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});return e}(this.vertexArray.configuration);Nw.table(t,r)(),Nw.table(t,s)(),Nw.table(t+1,u)(),i&&i.log({logLevel:2,message:`Rendered to ${i.id}`}),Nw.groupEnd(2,`>>> DRAWING MODEL ${this.id}`)()}}class SO{static isSupported(t){return Fw(t)}constructor(t,e={}){this.gl=t,this.model=null,this.elementCount=0,this.bufferTransform=null,this.textureTransform=null,this.elementIDBuffer=null,this._initialize(e),Object.seal(this)}delete(){const{model:t,bufferTransform:e,textureTransform:n}=this;t&&t.delete(),e&&e.delete(),n&&n.delete()}run(t={}){const{clearRenderTarget:e=!0}=t,n=this._updateDrawOptions(t);e&&n.framebuffer&&n.framebuffer.clear({color:!0}),this.model.transform(n)}swap(){let t=!1;const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)t=t||n.swap();Rx(t,"Nothing to swap")}getBuffer(t=null){return this.bufferTransform&&this.bufferTransform.getBuffer(t)}getData(t={}){const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e){const e=n.getData(t);if(e)return e}return null}getFramebuffer(){return this.textureTransform&&this.textureTransform.getFramebuffer()}update(t={}){"elementCount"in t&&this.model.setVertexCount(t.elementCount);const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)n.update(t)}_initialize(t={}){const{gl:e}=this;this._buildResourceTransforms(e,t),t=this._updateModelProps(t),this.model=new xO(e,Object.assign({},t,{fs:t.fs||NE({version:FE(t.vs)}),id:t.id||"transform-model",drawMode:t.drawMode||0,vertexCount:t.elementCount})),this.bufferTransform&&this.bufferTransform.setupResources({model:this.model})}_updateModelProps(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=i.updateModelProps(e);return e}_buildResourceTransforms(t,e){(function(t){return!(Vx(t.feedbackBuffers)&&Vx(t.feedbackMap)&&!(t.varyings&&t.varyings.length>0))})(e)&&(this.bufferTransform=new jE(t,e)),function(t){return!(Vx(t._sourceTextures)&&!t._targetTexture&&!t._targetTextureVarying)}(e)&&(this.textureTransform=new QE(t,e)),Rx(this.bufferTransform||this.textureTransform,"must provide source/feedback buffers or source/target textures")}_updateDrawOptions(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=Object.assign(e,i.getDrawOptions(e));return e}}function EO(){}const CO={onStart:EO,onUpdate:EO,onInterrupt:EO,onEnd:EO};class OO{constructor(t){this._inProgress=!1,this._handle=null,this.timeline=t,this.settings={}}get inProgress(){return this._inProgress}start(t){this.cancel(),this.settings=wt(wt({},CO),t),this._inProgress=!0,this.settings.onStart(this)}end(){this._inProgress&&(this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1,this.settings.onEnd(this))}cancel(){this._inProgress&&(this.settings.onInterrupt(this),this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1)}update(){if(!this._inProgress)return!1;if(null===this._handle){const{timeline:t,settings:e}=this;this._handle=t.addChannel({delay:t.getTime(),duration:e.duration})}return this.time=this.timeline.getTime(this._handle),this._onUpdate(),this.settings.onUpdate(this),this.timeline.isFinished(this._handle)&&this.end(),!0}_onUpdate(){}}const TO={interpolation:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="interpolation",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,e.settings),this.currentStartIndices=e.startIndices,this.currentLength=0,this.transform=function(t,e){const n=EE(e.size);return new SO(t,{vs:"\n#define SHADER_NAME interpolation-transition-vertex-shader\n\nuniform float time;\nattribute ATTRIBUTE_TYPE aFrom;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vCurrent;\n\nvoid main(void) {\n vCurrent = mix(aFrom, aTo, time);\n gl_Position = vec4(0.0);\n}\n",defines:{ATTRIBUTE_TYPE:n},varyings:["vCurrent"]})}(t,e);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){if(t.duration<=0)return void this.transition.cancel();const{buffers:n,attribute:i}=this;CE(n);const r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aFrom:n[0],aTo:SE(0,i)},feedbackBuffers:{vCurrent:n[1]}})}update(){const t=this.transition.update();if(t){const{time:t,settings:{duration:e,easing:n}}=this.transition,i=n(t/e);this.transform.run({uniforms:{time:i}})}return t}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete()}},spring:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="spring",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,ii(wt({},e.settings),{normalized:!1})),this.currentStartIndices=e.startIndices,this.currentLength=0,this.texture=function(t){return new lS(t,{data:new Uint8Array(4),format:6408,type:5121,border:0,mipmaps:!1,dataFormat:6408,width:1,height:1})}(t),this.framebuffer=function(t,e){return new SS(t,{id:"spring-transition-is-transitioning-framebuffer",width:1,height:1,attachments:{36064:e}})}(t,this.texture),this.transform=function(t,e,n){const i=EE(e.size);return new SO(t,{framebuffer:n,vs:"\n#define SHADER_NAME spring-transition-vertex-shader\n\n#define EPSILON 0.00001\n\nuniform float stiffness;\nuniform float damping;\nattribute ATTRIBUTE_TYPE aPrev;\nattribute ATTRIBUTE_TYPE aCur;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vNext;\nvarying float vIsTransitioningFlag;\n\nATTRIBUTE_TYPE getNextValue(ATTRIBUTE_TYPE cur, ATTRIBUTE_TYPE prev, ATTRIBUTE_TYPE dest) {\n ATTRIBUTE_TYPE velocity = cur - prev;\n ATTRIBUTE_TYPE delta = dest - cur;\n ATTRIBUTE_TYPE spring = delta * stiffness;\n ATTRIBUTE_TYPE damper = velocity * -1.0 * damping;\n return spring + damper + velocity + cur;\n}\n\nvoid main(void) {\n bool isTransitioning = length(aCur - aPrev) > EPSILON || length(aTo - aCur) > EPSILON;\n vIsTransitioningFlag = isTransitioning ? 1.0 : 0.0;\n\n vNext = getNextValue(aCur, aPrev, aTo);\n gl_Position = vec4(0, 0, 0, 1);\n gl_PointSize = 100.0;\n}\n",fs:"\n#define SHADER_NAME spring-transition-is-transitioning-fragment-shader\n\nvarying float vIsTransitioningFlag;\n\nvoid main(void) {\n if (vIsTransitioningFlag == 0.0) {\n discard;\n }\n gl_FragColor = vec4(1.0);\n}",defines:{ATTRIBUTE_TYPE:i},varyings:["vNext"]})}(t,e,this.framebuffer);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){const{buffers:n,attribute:i}=this,r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aTo:SE(0,i)}})}update(){const{buffers:t,transform:e,framebuffer:n,transition:i}=this;return!!i.update()&&(e.update({sourceBuffers:{aPrev:t[0],aCur:t[1]},feedbackBuffers:{vNext:t[2]}}),e.run({framebuffer:n,discard:!1,clearRenderTarget:!0,uniforms:{stiffness:i.settings.stiffness,damping:i.settings.damping},parameters:{depthTest:!1,blend:!0,viewport:[0,0,1,1],blendFunc:[1,1],blendEquation:[32776,32776]}}),CE(t),this.attributeInTransition.update({buffer:t[1],value:this.attribute.value}),_S(n)[0]>0||i.end(),!0)}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete();this.texture.delete(),this.texture=null,this.framebuffer.delete(),this.framebuffer=null}}};class kO{constructor(t,{id:e,timeline:n}){this.id=e,this.gl=t,this.timeline=n,this.transitions={},this.needsRedraw=!1,this.numInstances=1,this.isSupported=SO.isSupported(t)}finalize(){for(const t in this.transitions)this._removeTransition(t)}update({attributes:t,transitions:e,numInstances:n}){this.numInstances=n||1;for(const i in t){const n=t[i],r=n.getTransitionSetting(e);!r||this._updateAttribute(i,n,r)}for(const i in this.transitions){const n=t[i];(!n||!n.getTransitionSetting(e))&&this._removeTransition(i)}}hasAttribute(t){const e=this.transitions[t];return e&&e.inProgress}getAttributes(){const t={};for(const e in this.transitions){const n=this.transitions[e];n.inProgress&&(t[e]=n.attributeInTransition)}return t}run(){if(!this.isSupported||0===this.numInstances)return!1;for(const e in this.transitions)this.transitions[e].update()&&(this.needsRedraw=!0);const t=this.needsRedraw;return this.needsRedraw=!1,t}_removeTransition(t){this.transitions[t].cancel(),delete this.transitions[t]}_updateAttribute(t,e,n){const i=this.transitions[t];let r=!i||i.type!==n.type;if(r){if(!this.isSupported)return void Mw.warn("WebGL2 not supported by this browser. Transition for ".concat(t," is disabled."))();i&&this._removeTransition(t);const s=TO[n.type];s?this.transitions[t]=new s({attribute:e,timeline:this.timeline,gl:this.gl}):(Mw.error("unsupported transition type '".concat(n.type,"'"))(),r=!1)}(r||e.needsRedraw())&&(this.needsRedraw=!0,this.transitions[t].start(n,this.numInstances))}}const AO="attributeManager.invalidate";class PO{constructor(t,{id:e="attribute-manager",stats:n,timeline:i}={}){this.id=e,this.gl=t,this.attributes={},this.updateTriggers={},this.accessors={},this.needsRedraw=!0,this.userData={},this.stats=n,this.attributeTransitionManager=new kO(t,{id:"".concat(e,"-transitions"),timeline:i}),Object.seal(this)}finalize(){for(const t in this.attributes)this.attributes[t].delete();this.attributeTransitionManager.finalize()}getNeedsRedraw(t={clearRedrawFlags:!1}){const e=this.needsRedraw;return this.needsRedraw=this.needsRedraw&&!t.clearRedrawFlags,e&&this.id}setNeedsRedraw(t=!0){return this.needsRedraw=!0,this}add(t,e){this._add(t,e)}addInstanced(t,e){this._add(t,e,{instanced:1})}remove(t){for(let e=0;e{t[n]||(t[n]=[]),t[n].push(e)});this.updateTriggers=t}_invalidateTrigger(t,e){const{attributes:n,updateTriggers:i}=this,r=i[t];return r&&r.forEach(t=>{const i=n[t];i&&i.setNeedsUpdate(i.id,e)}),r}_updateAttribute(t){const{attribute:e,numInstances:n}=t;PE("attribute.updateStart",e),e.allocate(n)&&PE("attribute.allocate",e,n),e.updateBuffer(t)&&(this.needsRedraw=!0,PE("attribute.updateEnd",e,n))}}function MO(t,e,n,i,r){const s=e-t;return(n-e)*r+-s*i+s+e}function IO(t,e){if(Array.isArray(t)){let n=0;for(let i=0;i0}add(t,e,n,i){const{transitions:r}=this;if(r.has(t)){const n=r.get(t),{value:i=n.settings.fromValue}=n;e=i,this.remove(t)}if(!(i=xE(i)))return;const s=DO[i.type];if(!s)return void Mw.error("unsupported transition type '".concat(i.type,"'"))();const o=new s(this.timeline);o.start(ii(wt({},i),{fromValue:e,toValue:n})),r.set(t,o)}remove(t){const{transitions:e}=this;e.has(t)&&(e.get(t).cancel(),e.delete(t))}update(){const t={};for(const[e,n]of this.transitions)n.update(),t[e]=n.value,n.inProgress||this.remove(e);return t}clear(){for(const t of this.transitions.keys())this.remove(t)}}const NO={COMPONENT:Symbol.for("component"),ASYNC_DEFAULTS:Symbol.for("asyncPropDefaults"),ASYNC_ORIGINAL:Symbol.for("asyncPropOriginal"),ASYNC_RESOLVED:Symbol.for("asyncPropResolved")},{COMPONENT:LO}=NO;function jO(t,e){if(!t.transitions)return null;const n={},i=UO(t);for(const r in t.transitions){const s=i[r],o=s&&s.type;("number"===o||"color"===o||"array"===o)&&BO(t[r],e[r],s)&&(n[r]=!0)}return n}function FO({newProps:t,oldProps:e,ignoreProps:n={},propTypes:i={},triggerName:r="props"}={}){if(e===t)return null;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return"".concat(r," changed shallowly");for(const s of Object.keys(t))if(!(s in n)){if(!(s in e))return"".concat(r,".").concat(s," added");const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}for(const s of Object.keys(e))if(!(s in n)){if(!(s in t))return"".concat(r,".").concat(s," dropped");if(!Object.hasOwnProperty.call(t,s)){const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}}return null}function BO(t,e,n){let i=n&&n.equal;return i&&!i(t,e,n)||!i&&(i=t&&e&&t.equals,i&&!i.call(t,e))?"changed deeply":i||e===t?null:"changed shallowly"}function VO(t,e){if(null===e)return"oldProps is null, initial diff";const n=e.extensions,{extensions:i}=t;if(i===n)return!1;if(i.length!==n.length)return!0;for(let r=0;r{for(const r in i)if(!HO(i[r],n[r])){e=t(i),n=i;break}return e}}function GO(t,e){if(!e)return t;const n=wt(wt({},t),e);if("defines"in e&&(n.defines=wt(wt({},t.defines),e.defines)),"modules"in e&&(n.modules=(t.modules||[]).concat(e.modules),e.modules.some(t=>"project64"===t.name))){const t=n.modules.findIndex(t=>"project32"===t.name);t>=0&&n.modules.splice(t,1)}if("inject"in e)if(t.inject){const i=wt({},t.inject);for(const t in e.inject)i[t]=(i[t]||"")+e.inject[t];n.inject=i}else n.inject=e.inject;return n}function WO(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8],h=e[9],d=e[10],p=e[11],f=e[12],g=e[13],m=e[14],b=e[15],y=n*a-i*o,v=n*l-r*o,_=n*c-s*o,w=i*l-r*a,x=i*c-s*a,S=r*c-s*l,E=u*g-h*f,C=u*m-d*f,O=u*b-p*f,T=h*m-d*g,k=h*b-p*g,A=d*b-p*m,P=y*A-v*k+_*T+w*O-x*C+S*E;return P?(t[0]=(a*A-l*k+c*T)*(P=1/P),t[1]=(r*k-i*A-s*T)*P,t[2]=(g*S-m*x+b*w)*P,t[3]=(d*x-h*S-p*w)*P,t[4]=(l*O-o*A-c*C)*P,t[5]=(n*A-r*O+s*C)*P,t[6]=(m*_-f*S-b*v)*P,t[7]=(u*S-d*_+p*v)*P,t[8]=(o*k-a*O+c*E)*P,t[9]=(i*O-n*k-s*E)*P,t[10]=(f*x-g*_+b*y)*P,t[11]=(h*_-u*x-p*y)*P,t[12]=(a*C-o*T-l*E)*P,t[13]=(n*T-i*C+r*E)*P,t[14]=(g*v-f*w-m*y)*P,t[15]=(u*w-h*v+d*y)*P,t):null}function qO(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],g=e[12],m=e[13],b=e[14],y=e[15],v=n[0],_=n[1],w=n[2],x=n[3];return t[0]=v*i+_*a+w*h+x*g,t[1]=v*r+_*l+w*d+x*m,t[2]=v*s+_*c+w*p+x*b,t[3]=v*o+_*u+w*f+x*y,t[4]=(v=n[4])*i+(_=n[5])*a+(w=n[6])*h+(x=n[7])*g,t[5]=v*r+_*l+w*d+x*m,t[6]=v*s+_*c+w*p+x*b,t[7]=v*o+_*u+w*f+x*y,t[8]=(v=n[8])*i+(_=n[9])*a+(w=n[10])*h+(x=n[11])*g,t[9]=v*r+_*l+w*d+x*m,t[10]=v*s+_*c+w*p+x*b,t[11]=v*o+_*u+w*f+x*y,t[12]=(v=n[12])*i+(_=n[13])*a+(w=n[14])*h+(x=n[15])*g,t[13]=v*r+_*l+w*d+x*m,t[14]=v*s+_*c+w*p+x*b,t[15]=v*o+_*u+w*f+x*y,t}function XO(t,e,n){var i,r,s,o,a,l,c,u,h,d,p,f,g=n[0],m=n[1],b=n[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*b+e[12],t[13]=e[1]*g+e[5]*m+e[9]*b+e[13],t[14]=e[2]*g+e[6]*m+e[10]*b+e[14],t[15]=e[3]*g+e[7]*m+e[11]*b+e[15]):(r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],t[0]=i=e[0],t[1]=r,t[2]=s,t[3]=o,t[4]=a,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=d,t[10]=p,t[11]=f,t[12]=i*g+a*m+h*b+e[12],t[13]=r*g+l*m+d*b+e[13],t[14]=s*g+c*m+p*b+e[14],t[15]=o*g+u*m+f*b+e[15]),t}function YO(t,e,n){var i=n[0],r=n[1],s=n[2];return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t[3]=e[3]*i,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function KO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[4],o=e[5],a=e[6],l=e[7],c=e[8],u=e[9],h=e[10],d=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=s*r+c*i,t[5]=o*r+u*i,t[6]=a*r+h*i,t[7]=l*r+d*i,t[8]=c*r-s*i,t[9]=u*r-o*i,t[10]=h*r-a*i,t[11]=d*r-l*i,t}function QO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[4],u=e[5],h=e[6],d=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r+c*i,t[1]=o*r+u*i,t[2]=a*r+h*i,t[3]=l*r+d*i,t[4]=c*r-s*i,t[5]=u*r-o*i,t[6]=h*r-a*i,t[7]=d*r-l*i,t}function ZO(t,e,n,i,r){var s,o=1/Math.tan(e/2);return t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=r&&r!==1/0?(t[10]=(r+i)*(s=1/(i-r)),t[14]=2*r*i*s):(t[10]=-1,t[14]=-2*i),t}function JO(t,e){var n=t[0],i=t[1],r=t[2],s=t[3],o=t[4],a=t[5],l=t[6],c=t[7],u=t[8],h=t[9],d=t[10],p=t[11],f=t[12],g=t[13],m=t[14],b=t[15],y=e[0],v=e[1],_=e[2],w=e[3],x=e[4],S=e[5],E=e[6],C=e[7],O=e[8],T=e[9],k=e[10],A=e[11],P=e[12],M=e[13],I=e[14],D=e[15];return Math.abs(n-y)<=WS*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-v)<=WS*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(r-_)<=WS*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(s-w)<=WS*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(o-x)<=WS*Math.max(1,Math.abs(o),Math.abs(x))&&Math.abs(a-S)<=WS*Math.max(1,Math.abs(a),Math.abs(S))&&Math.abs(l-E)<=WS*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-C)<=WS*Math.max(1,Math.abs(c),Math.abs(C))&&Math.abs(u-O)<=WS*Math.max(1,Math.abs(u),Math.abs(O))&&Math.abs(h-T)<=WS*Math.max(1,Math.abs(h),Math.abs(T))&&Math.abs(d-k)<=WS*Math.max(1,Math.abs(d),Math.abs(k))&&Math.abs(p-A)<=WS*Math.max(1,Math.abs(p),Math.abs(A))&&Math.abs(f-P)<=WS*Math.max(1,Math.abs(f),Math.abs(P))&&Math.abs(g-M)<=WS*Math.max(1,Math.abs(g),Math.abs(M))&&Math.abs(m-I)<=WS*Math.max(1,Math.abs(m),Math.abs(I))&&Math.abs(b-D)<=WS*Math.max(1,Math.abs(b),Math.abs(D))}function tT(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function eT(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3];return t[0]=n[0]*i+n[4]*r+n[8]*s+n[12]*o,t[1]=n[1]*i+n[5]*r+n[9]*s+n[13]*o,t[2]=n[2]*i+n[6]*r+n[10]*s+n[14]*o,t[3]=n[3]*i+n[7]*r+n[11]*s+n[15]*o,t}!function(){var t=new qS(4);qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();const nT=[0,0,0,0],iT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],rT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],sT=[0,0,0],oT=[0,0,0],aT=$O(function({viewport:t,devicePixelRatio:e,coordinateSystem:n,coordinateOrigin:i}){const{projectionCenter:r,viewProjectionMatrix:s,originCommon:o,cameraPosCommon:a,shaderCoordinateOrigin:l,geospatialOrigin:c}=function(t,e,n){const{viewMatrixUncentered:i,projectionMatrix:r}=t;let{viewMatrix:s,viewProjectionMatrix:o}=t,a=nT,l=nT,c=t.cameraPosition;const{geospatialOrigin:u,shaderCoordinateOrigin:h,offsetMode:d}=lT(t,e,n);return d&&(l=t.projectPosition(u||h),c=[c[0]-l[0],c[1]-l[1],c[2]-l[2]],l[3]=1,a=eT([],l,o),s=i||s,o=qO([],r,s),o=qO([],o,iT)),{viewMatrix:s,viewProjectionMatrix:o,projectionCenter:a,originCommon:l,cameraPosCommon:c,shaderCoordinateOrigin:h,geospatialOrigin:u}}(t,n,i),u=t.getDistanceScales(),h=[t.width*e,t.height*e],d=t.projectionMatrix.transform([0,0,-t.focalDistance,1])[3]||1,p={project_uCoordinateSystem:n,project_uProjectionMode:t.projectionMode,project_uCoordinateOrigin:l,project_uCommonOrigin:o.slice(0,3),project_uCenter:r,project_uViewportSize:h,project_uDevicePixelRatio:e,project_uFocalDistance:d,project_uCommonUnitsPerMeter:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit2:sT,project_uScale:t.scale,project_uViewProjectionMatrix:s,project_uCameraPosition:a};if(c){const e=t.getDistanceScales(c);switch(n){case Iw.METER_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerMeter,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerMeter2;break;case Iw.LNGLAT:case Iw.LNGLAT_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerDegree,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerDegree2;break;case Iw.CARTESIAN:p.project_uCommonUnitsPerWorldUnit=[1,1,e.unitsPerMeter[2]],p.project_uCommonUnitsPerWorldUnit2=[0,0,e.unitsPerMeter2[2]]}}return p});function lT(t,e,n=oT){let i,r=n,s=!0;switch(i=e===Iw.LNGLAT_OFFSETS||e===Iw.METER_OFFSETS?n:t.isGeospatial?[Math.fround(t.longitude),Math.fround(t.latitude),0]:null,t.projectionMode){case Dw.WEB_MERCATOR:(e===Iw.LNGLAT||e===Iw.CARTESIAN)&&(s=!1);break;case Dw.WEB_MERCATOR_AUTO_OFFSET:e===Iw.LNGLAT?r=i:e===Iw.CARTESIAN&&(r=[Math.fround(t.center[0]),Math.fround(t.center[1]),0],i=t.unprojectPosition(r),r[0]-=n[0],r[1]-=n[1],r[2]-=n[2]);break;case Dw.IDENTITY:r=t.position.map(Math.fround);break;case Dw.GLOBE:s=!1,i=null;break;default:s=!1}return r[2]=r[2]||0,{geospatialOrigin:i,shaderCoordinateOrigin:r,offsetMode:s}}class cT extends VS{get ELEMENTS(){return BS(!1),0}get RANK(){return BS(!1),0}toString(){let t="[";if(MS.printRowMajor){t+="row-major:";for(let e=0;e2*Math.PI)throw Error("radians");const s=n*Math.tan(t/2),o=s*e;return(new bT).ortho({left:-o,right:o,bottom:-s,top:s,near:i,far:r})}perspective({fovy:t,fov:e=45*Math.PI/180,aspect:n=1,near:i=.1,far:r=500}={}){if((t=t||e)>2*Math.PI)throw Error("radians");return ZO(this,t,n,i,r),this.check()}determinant(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],o=t[5],a=t[6],l=t[7],c=t[8],u=t[9],h=t[10],d=t[11],p=t[12],f=t[13],g=t[14],m=t[15];return(e*o-n*s)*(h*m-d*g)-(e*a-i*s)*(u*m-d*f)+(e*l-r*s)*(u*g-h*f)+(n*a-i*o)*(c*m-d*p)-(n*l-r*o)*(c*g-h*p)+(i*l-r*a)*(c*f-u*p)}(this)}getScale(t=[-0,-0,-0]){return t[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),t[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),t[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),t}getTranslation(t=[-0,-0,-0]){return t[0]=this[12],t[1]=this[13],t[2]=this[14],t}getRotation(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=0,t[4]=this[4]*i,t[5]=this[5]*r,t[6]=this[6]*s,t[7]=0,t[8]=this[8]*i,t[9]=this[9]*r,t[10]=this[10]*s,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}getRotationMatrix3(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=this[4]*i,t[4]=this[5]*r,t[5]=this[6]*s,t[6]=this[8]*i,t[7]=this[9]*r,t[8]=this[10]*s,t}transpose(){return function(t,e){if(t===e){var n=e[1],i=e[2],r=e[3],s=e[6],o=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=i,t[9]=s,t[11]=e[14],t[12]=r,t[13]=o,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15]}(this,this),this.check()}invert(){return WO(this,this),this.check()}multiplyLeft(t){return qO(this,t,this),this.check()}multiplyRight(t){return qO(this,this,t),this.check()}rotateX(t){return KO(this,this,t),this.check()}rotateY(t){return function(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[8],u=e[9],h=e[10],d=e[11];e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r-c*i,t[1]=o*r-u*i,t[2]=a*r-h*i,t[3]=l*r-d*i,t[8]=s*i+c*r,t[9]=o*i+u*r,t[10]=a*i+h*r,t[11]=l*i+d*r}(this,this,t),this.check()}rotateZ(t){return QO(this,this,t),this.check()}rotateXYZ([t,e,n]){return this.rotateX(t).rotateY(e).rotateZ(n)}rotateAxis(t,e){return function(t,e,n,i){var r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w,x,S,E,C,O,T,k=i[0],A=i[1],P=i[2],M=Math.hypot(k,A,P);M=-90&&e<=90,"invalid latitude"),[512*(t*ET+xT)/(2*xT),512*(xT+Math.log(Math.tan(ST+e*ET*.5)))/(2*xT)]}function kT([t,e]){const n=t/512*(2*xT)-xT,i=2*(Math.atan(Math.exp(e/512*(2*xT)-xT))-ST);return[n*CT,i*CT]}function AT({latitude:t,longitude:e,highPrecision:n=!1}){wT(Number.isFinite(t)&&Number.isFinite(e));const i={},r=Math.cos(t*ET),s=512/360,o=s/r,a=512/OT/r;if(i.unitsPerMeter=[a,a,a],i.metersPerUnit=[1/a,1/a,1/a],i.unitsPerDegree=[s,o,a],i.degreesPerUnit=[1/s,1/o,1/a],n){const e=ET*Math.tan(t*ET)/r,n=512/OT*e,l=n/o*a;i.unitsPerDegree2=[0,s*e/2,n],i.unitsPerMeter2=[l,0,l]}return i}function PT(t,e){const[n,i,r]=t,[s,o,a]=e,{unitsPerMeter:l,unitsPerMeter2:c}=AT({longitude:n,latitude:i,highPrecision:!0}),u=TT(t);u[0]+=s*(l[0]+c[0]*o),u[1]+=o*(l[1]+c[1]*o);const h=kT(u),d=(r||0)+(a||0);return Number.isFinite(r)||Number.isFinite(a)?[h[0],h[1],d]:h}function MT({height:t,pitch:e,bearing:n,altitude:i,scale:r,center:s=null}){const o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return XO(o,o,[0,0,-i]),KO(o,o,-e*ET),QO(o,o,n*ET),YO(o,o,[r/=t,r,r]),s&&XO(o,o,function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}([],s)),o}function IT({width:t,height:e,fovy:n=DT(1.5),altitude:i,pitch:r=0,nearZMultiplier:s=1,farZMultiplier:o=1}){void 0!==i&&(n=DT(i));const a=.5*n*ET,l=RT(n),c=r*ET,u=Math.sin(a)*l/Math.sin(Math.min(Math.max(Math.PI/2-c-a,.01),Math.PI-.01));return{fov:2*a,aspect:t/e,focalDistance:l,near:s,far:(Math.sin(c)*u+l)*o}}function DT(t){return 2*Math.atan(.5/t)*CT}function RT(t){return.5/Math.tan(.5*t*ET)}function NT(t,e){const[n,i,r=0]=t;return wT(Number.isFinite(n)&&Number.isFinite(i)&&Number.isFinite(r)),yT(e,[n,i,r,1])}function LT(t,e,n=0){const[i,r,s]=t;if(wT(Number.isFinite(i)&&Number.isFinite(r),"invalid pixel coordinate"),Number.isFinite(s))return yT(e,[i,r,s,1]);const o=yT(e,[i,r,0,1]),a=yT(e,[i,r,1,1]),l=o[2],c=a[2];return dT([],o,a,l===c?0:((n||0)-l)/(c-l))}function jT({width:t,height:e,bounds:n,minExtent:i=0,maxZoom:r=24,padding:s=0,offset:o=[0,0]}){const[[a,l],[c,u]]=n;Number.isFinite(s)?s={top:s,bottom:s,left:s,right:s}:wT(Number.isFinite(s.top)&&Number.isFinite(s.bottom)&&Number.isFinite(s.left)&&Number.isFinite(s.right));const h=new zT({width:t,height:e,longitude:0,latitude:0,zoom:0}),d=h.project([a,u]),p=h.project([c,l]),f=[Math.max(Math.abs(p[0]-d[0]),i),Math.max(Math.abs(p[1]-d[1]),i)],g=[t-s.left-s.right-2*Math.abs(o[0]),e-s.top-s.bottom-2*Math.abs(o[1])];wT(g[0]>0&&g[1]>0);const m=g[0]/f[0],b=g[1]/f[1],y=h.unproject([(p[0]+d[0])/2+(s.right-s.left)/2/m,(p[1]+d[1])/2+(s.bottom-s.top)/2/b]),v=Math.min(r,h.zoom+_T(Math.abs(Math.min(m,b))));return wT(Number.isFinite(v)),{longitude:y[0],latitude:y[1],zoom:v}}const FT=Math.PI/180;function BT(t,e=0){const{width:n,height:i,unproject:r}=t,s={targetZ:e},o=r([0,i],s),a=r([n,i],s);let l,c;return(t.fovy?.5*t.fovy*FT:Math.atan(.5/t.altitude))>(90-t.pitch)*FT-.01?(l=VT(t,0,e),c=VT(t,n,e)):(l=r([0,0],s),c=r([n,0],s)),[o,a,c,l]}function VT(t,e,n){const{pixelUnprojectionMatrix:i}=t,r=yT(i,[e,0,1,1]),s=yT(i,[e,t.height,1,1]),o=kT(dT([],r,s,(n*t.distanceScales.unitsPerMeter[2]-r[2])/(s[2]-r[2])));return o[2]=n,o}class zT{constructor({width:t,height:e,latitude:n=0,longitude:i=0,zoom:r=0,pitch:s=0,bearing:o=0,altitude:a=null,fovy:l=null,position:c=null,nearZMultiplier:u=.02,farZMultiplier:h=1.01}={width:1,height:1}){t=t||1,e=e||1,null===l&&null===a?l=DT(a=1.5):null===l?l=DT(a):null===a&&(a=RT(l));const d=function(t){return Math.pow(2,t)}(r);a=Math.max(.75,a);const p=AT({longitude:i,latitude:n}),f=TT([i,n]);f[2]=0,c&&function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2]}(f,f,function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t}([],c,p.unitsPerMeter)),this.projectionMatrix=function({width:t,height:e,pitch:n,altitude:i,fovy:r,nearZMultiplier:s,farZMultiplier:o}){const{fov:a,aspect:l,near:c,far:u}=IT({width:t,height:e,altitude:i,fovy:r,pitch:n,nearZMultiplier:s,farZMultiplier:o});return ZO([],a,l,c,u)}({width:t,height:e,pitch:s,fovy:l,nearZMultiplier:u,farZMultiplier:h}),this.viewMatrix=MT({height:e,scale:d,center:f,pitch:s,bearing:o,altitude:a}),this.width=t,this.height=e,this.scale=d,this.latitude=n,this.longitude=i,this.zoom=r,this.pitch=s,this.bearing=o,this.altitude=a,this.fovy=l,this.center=f,this.meterOffset=c||[0,0,0],this.distanceScales=p,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}_initMatrices(){const{width:t,height:e,projectionMatrix:n,viewMatrix:i}=this,r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];qO(r,r,n),qO(r,r,i),this.viewProjectionMatrix=r;const s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];YO(s,s,[t/2,-e/2,1]),XO(s,s,[1,-1,0]),qO(s,s,r);const o=WO([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],s);if(!o)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=s,this.pixelUnprojectionMatrix=o}equals(t){return t instanceof zT&&t.width===this.width&&t.height===this.height&&JO(t.projectionMatrix,this.projectionMatrix)&&JO(t.viewMatrix,this.viewMatrix)}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=TT(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=kT(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return TT(t)}unprojectFlat(t){return kT(t)}getMapCenterByLngLatPosition({lngLat:t,pos:e}){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],TT(t),hT([],n));return kT(uT([],this.center,i))}getLocationAtPoint({lngLat:t,pos:e}){return this.getMapCenterByLngLatPosition({lngLat:t,pos:e})}fitBounds(t,e={}){const{width:n,height:i}=this,{longitude:r,latitude:s,zoom:o}=jT(Object.assign({width:n,height:i,bounds:t},e));return new zT({width:n,height:i,longitude:r,latitude:s,zoom:o})}getBounds(t){const e=this.getBoundingRegion(t),n=Math.min(...e.map(t=>t[0])),i=Math.max(...e.map(t=>t[0]));return[[n,Math.min(...e.map(t=>t[1]))],[i,Math.max(...e.map(t=>t[1]))]]}getBoundingRegion(t={}){return BT(this,t.z||0)}}const UT=Math.PI/180,HT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],$T=[0,0,0],GT={unitsPerMeter:[1,1,1],metersPerUnit:[1,1,1]};let WT=(()=>{class t{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r=1,height:s=1}=t;this.id=e||this.constructor.displayName||"viewport",this.x=n,this.y=i,this.width=r||1,this.height=s||1,this._frustumPlanes={},this._initViewMatrix(t),this._initProjectionMatrix(t),this._initPixelMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),this.projectFlat=this.projectFlat.bind(this),this.unprojectFlat=this.unprojectFlat.bind(this)}get metersPerPixel(){return this.distanceScales.metersPerUnit[2]/this.scale}get projectionMode(){return this.isGeospatial?this.zoom<12?Dw.WEB_MERCATOR:Dw.WEB_MERCATOR_AUTO_OFFSET:Dw.IDENTITY}equals(e){return e instanceof t&&(this===e||e.width===this.width&&e.height===this.height&&e.scale===this.scale&&FS(e.projectionMatrix,this.projectionMatrix)&&FS(e.viewMatrix,this.viewMatrix))}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=this.projectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=this.unprojectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return this.isGeospatial?TT(t):t}unprojectFlat(t){return this.isGeospatial?kT(t):t}getBounds(t={}){const e={targetZ:t.z||0},n=this.unproject([0,0],e),i=this.unproject([this.width,0],e),r=this.unproject([0,this.height],e),s=this.unproject([this.width,this.height],e);return[Math.min(n[0],i[0],r[0],s[0]),Math.min(n[1],i[1],r[1],s[1]),Math.max(n[0],i[0],r[0],s[0]),Math.max(n[1],i[1],r[1],s[1])]}getDistanceScales(t=null){return t?AT({longitude:t[0],latitude:t[1],highPrecision:!0}):this.distanceScales}containsPixel({x:t,y:e,width:n=1,height:i=1}){return t{class t extends WT{constructor(t={}){const{latitude:e=0,longitude:n=0,zoom:i=11,pitch:r=0,bearing:s=0,nearZMultiplier:o=.1,farZMultiplier:a=1.01,orthographic:l=!1,repeat:c=!1,worldOffset:u=0}=t;let{width:h,height:d,altitude:p=1.5}=t;const f=Math.pow(2,i);h=h||1,d=d||1,p=Math.max(.75,p);const{fov:g,aspect:m,focalDistance:b,near:y,far:v}=IT({width:h,height:d,pitch:r,altitude:p,nearZMultiplier:o,farZMultiplier:a});let _=MT({height:d,pitch:r,bearing:s,scale:f,altitude:p});u&&(_=(new bT).translate([512*u,0,0]).multiplyLeft(_)),super(ii(wt({},t),{width:h,height:d,viewMatrix:_,longitude:n,latitude:e,zoom:i,orthographic:l,fovyRadians:g,aspect:m,focalDistance:b,near:y,far:v})),this.latitude=e,this.longitude=n,this.zoom=i,this.pitch=r,this.bearing=s,this.altitude=p,this.orthographic=l,this._subViewports=c?[]:null,Object.freeze(this)}get subViewports(){if(this._subViewports&&!this._subViewports.length){const e=this.getBounds(),n=Math.floor((e[0]+180)/360),i=Math.ceil((e[2]-180)/360);for(let r=n;r<=i;r++){const e=r?new t(ii(wt({},this),{worldOffset:r})):this;this._subViewports.push(e)}}return this._subViewports}addMetersToLngLat(t,e){return PT(t,e)}panByPosition(t,e){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],this.projectFlat(t),hT([],n)),r=uT([],this.center,i),[s,o]=this.unprojectFlat(r);return{longitude:s,latitude:o}}getBounds(t={}){const e=BT(this,t.z||0);return[Math.min(e[0][0],e[1][0],e[2][0],e[3][0]),Math.min(e[0][1],e[1][1],e[2][1],e[3][1]),Math.max(e[0][0],e[1][0],e[2][0],e[3][0]),Math.max(e[0][1],e[1][1],e[2][1],e[3][1])]}fitBounds(e,n={}){const{width:i,height:r}=this,{longitude:s,latitude:o,zoom:a}=jT(wt({width:i,height:r,bounds:e},n));return new t({width:i,height:r,longitude:s,latitude:o,zoom:a})}}return t.displayName="WebMercatorViewport",t})();function XT(t,e,n=!1){const i=e.projectPosition(t);if(n&&e instanceof qT){const[n,r,s=0]=t,o=e.getDistanceScales([n,r]);i[2]=s*o.unitsPerMeter[2]}return i}function KT(t,{viewport:e,modelMatrix:n,coordinateSystem:i,coordinateOrigin:r,offsetMode:s}){let[o,a,l=0]=t;switch(n&&([o,a,l]=eT([],[o,a,l,1],n)),i){case Iw.LNGLAT:return XT([o,a,l],e,s);case Iw.LNGLAT_OFFSETS:return XT([o+r[0],a+r[1],l+(r[2]||0)],e,s);case Iw.METER_OFFSETS:return XT(PT(r,[o,a,l]),e,s);case Iw.CARTESIAN:default:return e.isGeospatial?[o+r[0],a+r[1],l+r[2]]:e.projectPosition([o,a,l])}}const QT={10241:9987,10240:9729,10242:33071,10243:33071},ZT={},JT={boolean:{validate:(t,e)=>!0,equal:(t,e,n)=>Boolean(t)===Boolean(e)},number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},color:{validate:(t,e)=>e.optional&&!t||ik(t)&&(3===t.length||4===t.length),equal:(t,e,n)=>tk(t,e)},accessor:{validate(t,e){const n=rk(t);return"function"===n||n===rk(e.value)},equal:(t,e,n)=>"function"==typeof e||tk(t,e)},array:{validate:(t,e)=>e.optional&&!t||ik(t),equal:(t,e,n)=>n.compare?tk(t,e):t===e},function:{validate:(t,e)=>e.optional&&!t||"function"==typeof t,equal:(t,e,n)=>!n.compare||t===e},data:{transform:(t,e,n)=>{const{dataTransform:i}=n?n.props:{};return i&&t?i(t):t}},image:{transform:(t,e,n)=>function(t,e){const n=t.context&&t.context.gl;if(!n||!e)return null;if(e instanceof lS)return e;e.constructor&&"Object"!==e.constructor.name&&(e={data:e});let i=null;e.compressed&&(i={10241:e.data.length>1?9985:9729});const r=new lS(n,ii(wt({},e),{parameters:wt(wt(wt({},QT),i),t.props.textureParameters)}));return ZT[r.id]=!0,r}(n,t),release:t=>{!function(t){!t||!(t instanceof lS)||ZT[t.id]&&(t.delete(),delete ZT[t.id])}(t)}}};function tk(t,e){if(t===e)return!0;if(!ik(t)||!ik(e))return!1;const n=t.length;if(n!==e.length)return!1;for(let i=0;i{},this.oldProps=yk,this.oldAsyncProps=null}finalize(){for(const t in this.asyncProps){const e=this.asyncProps[t];e.type&&e.type.release&&e.type.release(e.resolvedValue,e.type,this.component)}}getOldProps(){return this.oldAsyncProps||this.oldProps}resetOldProps(){this.oldAsyncProps=null,this.oldProps=this.component.props}freezeAsyncOldProps(){if(!this.oldAsyncProps){this.oldProps=this.oldProps||this.component.props,this.oldAsyncProps=Object.create(this.oldProps);for(const t in this.asyncProps)Object.defineProperty(this.oldAsyncProps,t,{enumerable:!0,value:this.oldProps[t]})}}hasAsyncProp(t){return t in this.asyncProps}getAsyncProp(t){const e=this.asyncProps[t];return e&&e.resolvedValue}isAsyncPropLoading(t){if(t){const e=this.asyncProps[t];return Boolean(e&&e.pendingLoadCount>0&&e.pendingLoadCount!==e.resolvedLoadCount)}for(const e in this.asyncProps)if(this.isAsyncPropLoading(e))return!0;return!1}reloadAsyncProp(t,e){this._watchPromise(t,Promise.resolve(e))}setAsyncProps(t){const e=t[mk]||{},n=t[gk]||t,i=t[bk]||{};for(const r in e){const t=e[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t),e[r]=this.getAsyncProp(r)}for(const r in n){const t=n[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t)}}_updateAsyncProp(t,e){if(this._didAsyncInputValueChange(t,e)){if("string"==typeof e){var n;const i=null===(n=this.layer)||void 0===n?void 0:n.props.fetch;i&&(e=i(e,{propName:t,layer:this.layer}))}if(e instanceof Promise)return void this._watchPromise(t,e);if(fE(e))return void this._resolveAsyncIterable(t,e);this._setPropValue(t,e)}}_didAsyncInputValueChange(t,e){const n=this.asyncProps[t];return e!==n.resolvedValue&&e!==n.lastValue&&(n.lastValue=e,!0)}_setPropValue(t,e){const n=this.asyncProps[t];e=this._postProcessValue(n,e),n.resolvedValue=e,n.pendingLoadCount++,n.resolvedLoadCount=n.pendingLoadCount}_setAsyncPropValue(t,e,n){const i=this.asyncProps[t];i&&n>=i.resolvedLoadCount&&void 0!==e&&(this.freezeAsyncOldProps(),i.resolvedValue=e,i.resolvedLoadCount=n,this.onAsyncPropUpdated(t,e))}_watchPromise(t,e){const n=this.asyncProps[t];n.pendingLoadCount++;const i=n.pendingLoadCount;e.then(e=>{var r;e=this._postProcessValue(n,e),this._setAsyncPropValue(t,e,i);const s=null===(r=this.layer)||void 0===r?void 0:r.props.onDataLoad;"data"===t&&s&&s(e,{propName:t,layer:this.layer})}).catch(e=>{var n;null===(n=this.layer)||void 0===n||n.raiseError(e,"loading ".concat(t," of ").concat(this.layer))})}_resolveAsyncIterable(t,e){var n=this;return gS(function*(){var i;"data"!==t&&n._setPropValue(t,e);const r=n.asyncProps[t];r.pendingLoadCount++;const s=r.pendingLoadCount;let o=[],a=0;var l,c=!0,u=!1;try{for(var h,d,p=fk(e);c=(h=yield p.next()).done,d=yield h.value,!c;c=!0){const e=d,{dataTransform:i}=n.component?n.component.props:{};o=i?i(e,o):o.concat(e),Object.defineProperty(o,"__diff",{enumerable:!1,value:[{startRow:a,endRow:o.length}]}),a=o.length,n._setAsyncPropValue(t,o,s)}}catch(g){u=!0,l=g}finally{try{!c&&null!=p.return&&(yield p.return())}finally{if(u)throw l}}const f=null===(i=n.layer)||void 0===i?void 0:i.props.onDataLoad;f&&f(o,{propName:t,layer:n.layer})})()}_postProcessValue(t,e){const n=t.type;return n&&(n.release&&n.release(t.resolvedValue,n,this.component),n.transform)?n.transform(e,n,this.component):e}_createAsyncPropData(t,e){if(!this.asyncProps[t]){const n=this.component&&this.component.constructor._propTypes;this.asyncProps[t]={type:n&&n[t],lastValue:null,resolvedValue:e,pendingLoadCount:0,resolvedLoadCount:0}}}}const{ASYNC_ORIGINAL:_k,ASYNC_RESOLVED:wk,ASYNC_DEFAULTS:xk}=NO,Sk={};let Ek=0,Ck=(()=>{class t{constructor(){this.props=ck.apply(this,arguments),this.id=this.props.id,this.count=Ek++,this.lifecycle="Awaiting state",this.parent=null,this.context=null,this.state=null,this.internalState=null,Object.seal(this)}clone(t){const{props:e}=this,n={};for(const i in e[xk])i in e[wk]?n[i]=e[wk][i]:i in e[_k]&&(n[i]=e[_k][i]);return new this.constructor(wt(wt(wt({},e),n),t))}get stats(){return this.internalState.stats}_initState(){this.internalState=new vk({})}}return t.componentName="Component",t.defaultProps=Sk,t})();class Ok extends vk{constructor({attributeManager:t,layer:e}){super(e),this.attributeManager=t,this.model=null,this.needsRedraw=!0,this.subLayers=null,this.usesPickingColorCache=!1}get layer(){return this.component}set layer(t){this.component=t}}const Tk=t=>"function"==typeof t,kk=t=>null!==t&&"object"==typeof t,Ak=t=>kk(t)&&t.constructor==={}.constructor,Pk=t=>t&&"function"==typeof t[Symbol.iterator],Mk=t=>t&&"function"==typeof t[Symbol.asyncIterator],Ik=t=>"undefined"!=typeof Response&&t instanceof Response||t&&t.arrayBuffer&&t.text&&t.json,Dk=t=>"undefined"!=typeof Blob&&t instanceof Blob,Rk=t=>(t=>"undefined"!=typeof ReadableStream&&t instanceof ReadableStream||kk(t)&&Tk(t.tee)&&Tk(t.cancel)&&Tk(t.getReader))(t)||(t=>kk(t)&&Tk(t.read)&&Tk(t.pipe)&&(t=>"boolean"==typeof t)(t.readable))(t);function Nk(t,e){if(!t)throw new Error(e||"loader assertion failed.")}function Lk(t){var e;return!!t&&(Array.isArray(t)&&(t=t[0]),Array.isArray(null===(e=t)||void 0===e?void 0:e.extensions))}function jk(t){var e,n;let i;return Nk(t,"null loader"),Nk(Lk(t),"invalid loader"),Array.isArray(t)&&(i=t[1],t=ii(wt({},t=t[0]),{options:wt(wt({},t.options),i)})),(null!==(e=t)&&void 0!==e&&e.parseTextSync||null!==(n=t)&&void 0!==n&&n.parseText)&&(t.text=!0),t.text||(t.binary=!0),t}const Fk={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},Bk=Fk.global||Fk.self||Fk.window||{},Vk="object"!=typeof process||"[object process]"!==String(process)||process.browser,zk="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version);zk&&parseFloat(zk[1]);const Uk={};function Hk(t){for(const e in Uk)t.startsWith(e)&&(t=t.replace(e,Uk[e]));return!t.startsWith("http://")&&!t.startsWith("https://")&&(t=`${t}`),t}const $k=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,Gk=/^([-\w.]+\/[-\w.+]+)/;function Wk(t){const e=Gk.exec(t);return e?e[1]:t}function qk(t){const e=$k.exec(t);return e?e[1]:""}const Xk=/\?.*/;function Yk(t){if(Ik(t)){const e=Qk(t.url||"");return{url:e,type:Wk(t.headers.get("content-type")||"")||qk(e)}}return Dk(t)?{url:Qk(t.name||""),type:t.type||""}:"string"==typeof t?{url:Qk(t),type:qk(t)}:{url:"",type:""}}function Kk(t){return Ik(t)?t.headers["content-length"]||-1:Dk(t)?t.size:"string"==typeof t?t.length:t instanceof ArrayBuffer||ArrayBuffer.isView(t)?t.byteLength:-1}function Qk(t){return t.replace(Xk,"")}function Zk(t){return Jk.apply(this,arguments)}function Jk(){return(Jk=gS(function*(t){if(Ik(t))return t;const e={},n=Kk(t);n>=0&&(e["content-length"]=String(n));const{url:i,type:r}=Yk(t);r&&(e["content-type"]=r);const s=yield rA(t);s&&(e["x-first-bytes"]=s),"string"==typeof t&&(t=(new TextEncoder).encode(t));const o=new Response(t,{headers:e});return Object.defineProperty(o,"url",{value:i}),o})).apply(this,arguments)}function tA(t){return eA.apply(this,arguments)}function eA(){return(eA=gS(function*(t){if(!t.ok){const e=yield nA(t);throw new Error(e)}})).apply(this,arguments)}function nA(t){return iA.apply(this,arguments)}function iA(){return(iA=gS(function*(t){let e=`Failed to fetch resource ${t.url} (${t.status}): `;try{const n=t.headers.get("Content-Type");let i=t.statusText;n.includes("application/json")&&(i+=` ${yield t.text()}`),e+=i,e=e.length>60?`${e.slice(60)}...`:e}catch(n){}return e})).apply(this,arguments)}function rA(t){return sA.apply(this,arguments)}function sA(){return(sA=gS(function*(t){if("string"==typeof t)return`data:,${t.slice(0,5)}`;if(t instanceof Blob){const e=t.slice(0,5);return yield new Promise(t=>{const n=new FileReader;n.onload=e=>{var n;return t(null==e||null===(n=e.target)||void 0===n?void 0:n.result)},n.readAsDataURL(e)})}return t instanceof ArrayBuffer?`data:base64,${oA(t.slice(0,5))}`:null})).apply(this,arguments)}function oA(t){let e="";const n=new Uint8Array(t);for(let i=0;i{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}}const dA={fetch:null,mimeType:void 0,nothrow:!1,log:new class{constructor(){cA(this,"console",void 0),this.console=console}log(...t){return this.console.log.bind(this.console,...t)}info(...t){return this.console.info.bind(this.console,...t)}warn(...t){return this.console.warn.bind(this.console,...t)}error(...t){return this.console.error.bind(this.console,...t)}},CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},pA={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function fA(){Bk.loaders=Bk.loaders||{};const{loaders:t}=Bk;return t._state=t._state||{},t._state}const gA=()=>{const t=fA();return t.globalOptions=t.globalOptions||wt({},dA),t.globalOptions};function mA(t,e,n,i){return n=n||[],function(t,e){yA(t,null,dA,pA,e);for(const n of e)yA(t&&t[n.id]||{},n.id,n.options&&n.options[n.id]||{},n.deprecatedOptions&&n.deprecatedOptions[n.id]||{},e)}(t,n=Array.isArray(n)?n:[n]),function(t,e,n){const i=wt({},t.options||{});return function(t,e){e&&!("baseUri"in t)&&(t.baseUri=e)}(i,n),null===i.log&&(i.log=new hA),_A(i,gA()),_A(i,e),i}(e,t,i)}function bA(t,e){const n=gA(),i=t||n;return"function"==typeof i.fetch?i.fetch:kk(i.fetch)?t=>aA(t,i):null!=e&&e.fetch?null==e?void 0:e.fetch:aA}function yA(t,e,n,i,r){const s=e||"Top level",o=e?`${e}.`:"";for(const a in t){const l=!e&&kk(t[a]),c="baseUri"===a&&!e,u="workerUrl"===a&&e;if(!(a in n)&&!c&&!u)if(a in i)uA.warn(`${s} loader option '${o}${a}' no longer supported, use '${i[a]}'`)();else if(!l){const t=vA(a,r);uA.warn(`${s} loader option '${o}${a}' not recognized. ${t}`)()}}}function vA(t,e){const n=t.toLowerCase();let i="";for(const r of e)for(const e in r.options){if(t===e)return`Did you mean '${r.id}.${e}'?`;const s=e.toLowerCase();(n.startsWith(s)||s.startsWith(n))&&(i=i||`Did you mean '${r.id}.${e}'?`)}return i}function _A(t,e){for(const n in e)n in e&&(t[n]=Ak(e[n])&&Ak(t[n])?wt(wt({},t[n]),e[n]):e[n])}function wA(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}function xA(t,e="3.0.12"){return wA(t,"no worker provided"),!(!e||!t.version)}const SA={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},EA=SA.global||SA.self||SA.window||{},CA="object"!=typeof process||"[object process]"!==String(process)||process.browser,OA="function"==typeof importScripts,TA="undefined"!=typeof window&&void 0!==window.orientation,kA="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),AA=(kA&&parseFloat(kA[1]),new Map);function PA(t){const e=new Blob([t],{type:"application/javascript"});return URL.createObjectURL(e)}function MA(t,e=!0,n){const i=n||new Set;if(t)if(IA(t))i.add(t);else if(IA(t.buffer))i.add(t.buffer);else if(!ArrayBuffer.isView(t)&&e&&"object"==typeof t)for(const r in t)MA(t[r],e,i);return void 0===n?Array.from(i):[]}function IA(t){return!!t&&(t instanceof ArrayBuffer||"undefined"!=typeof MessagePort&&t instanceof MessagePort||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas)}const DA=()=>{};class RA{static isSupported(){return"undefined"!=typeof Worker}constructor(t){cA(this,"name",void 0),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"terminated",!1),cA(this,"worker",void 0),cA(this,"onMessage",void 0),cA(this,"onError",void 0),cA(this,"_loadableURL","");const{name:e,source:n,url:i}=t;wA(n||i),this.name=e,this.source=n,this.url=i,this.onMessage=DA,this.onError=t=>console.log(t),this.worker=this._createBrowserWorker()}destroy(){this.onMessage=DA,this.onError=DA,this.worker.terminate(),this.terminated=!0}get isRunning(){return Boolean(this.onMessage)}postMessage(t,e){e=e||MA(t),this.worker.postMessage(t,e)}_getErrorFromErrorEvent(t){let e="Failed to load ";return e+=`worker ${this.name}. `,t.message&&(e+=`${t.message} in `),t.lineno&&(e+=`:${t.lineno}:${t.colno}`),new Error(e)}_createBrowserWorker(){this._loadableURL=function(t){wA(t.source&&!t.url||!t.source&&t.url);let e=AA.get(t.source||t.url);return e||(t.url&&(e=function(t){return t.startsWith("http")?PA(function(t){return`try {\n importScripts('${t}');\n} catch (error) {\n console.error(error);\n throw error;\n}`}(t)):t}(t.url),AA.set(t.url,e)),t.source&&(e=PA(t.source),AA.set(t.source,e))),wA(e),e}({source:this.source,url:this.url});const t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=t=>{t.data?this.onMessage(t.data):this.onError(new Error("No data received"))},t.onerror=t=>{this.onError(this._getErrorFromErrorEvent(t)),this.terminated=!0},t.onmessageerror=t=>console.error(t),t}}class NA{constructor(t,e){cA(this,"name",void 0),cA(this,"workerThread",void 0),cA(this,"isRunning",void 0),cA(this,"result",void 0),cA(this,"_resolve",void 0),cA(this,"_reject",void 0),this.name=t,this.workerThread=e,this.isRunning=!0,this._resolve=()=>{},this._reject=()=>{},this.result=new Promise((t,e)=>{this._resolve=t,this._reject=e})}postMessage(t,e){this.workerThread.postMessage({source:"loaders.gl",type:t,payload:e})}done(t){wA(this.isRunning),this.isRunning=!1,this._resolve(t)}error(t){wA(this.isRunning),this.isRunning=!1,this._reject(t)}}class LA{constructor(t){cA(this,"name","unnamed"),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"maxConcurrency",1),cA(this,"maxMobileConcurrency",1),cA(this,"onDebug",()=>{}),cA(this,"reuseWorkers",!0),cA(this,"props",{}),cA(this,"jobQueue",[]),cA(this,"idleQueue",[]),cA(this,"count",0),cA(this,"isDestroyed",!1),this.source=t.source,this.url=t.url,this.setProps(t)}destroy(){this.idleQueue.forEach(t=>t.destroy()),this.isDestroyed=!0}setProps(t){this.props=wt(wt({},this.props),t),void 0!==t.name&&(this.name=t.name),void 0!==t.maxConcurrency&&(this.maxConcurrency=t.maxConcurrency),void 0!==t.maxMobileConcurrency&&(this.maxMobileConcurrency=t.maxMobileConcurrency),void 0!==t.reuseWorkers&&(this.reuseWorkers=t.reuseWorkers),void 0!==t.onDebug&&(this.onDebug=t.onDebug)}startJob(t,e=((t,e,n)=>t.done(n)),n=((t,e)=>t.error(e))){var i=this;return gS(function*(){const r=new Promise(r=>(i.jobQueue.push({name:t,onMessage:e,onError:n,onStart:r}),i));return i._startQueuedJob(),yield r})()}_startQueuedJob(){var t=this;return gS(function*(){if(!t.jobQueue.length)return;const e=t._getAvailableWorker();if(!e)return;const n=t.jobQueue.shift();if(n){t.onDebug({message:"Starting job",name:n.name,workerThread:e,backlog:t.jobQueue.length});const i=new NA(n.name,e);e.onMessage=t=>n.onMessage(i,t.type,t.payload),e.onError=t=>n.onError(i,t),n.onStart(i);try{yield i.result}finally{t.returnWorkerToQueue(e)}}})()}returnWorkerToQueue(t){this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(t.destroy(),this.count--):this.idleQueue.push(t),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count{},reuseWorkers:!0};class FA{static isSupported(){return RA.isSupported()}static getWorkerFarm(t={}){return FA._workerFarm=FA._workerFarm||new FA({}),FA._workerFarm.setProps(t),FA._workerFarm}constructor(t){cA(this,"props",void 0),cA(this,"workerPools",new Map),this.props=wt({},jA),this.setProps(t),this.workerPools=new Map}destroy(){for(const t of this.workerPools.values())t.destroy()}setProps(t){this.props=wt(wt({},this.props),t);for(const e of this.workerPools.values())e.setProps(this._getWorkerPoolProps())}getWorkerPool(t){const{name:e,source:n,url:i}=t;let r=this.workerPools.get(e);return r||(r=new LA({name:e,source:n,url:i}),r.setProps(this._getWorkerPoolProps()),this.workerPools.set(e,r)),r}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}}function BA(t,e={}){const n=`${t.id}-worker.js`;let i=(e[t.id]||{}).workerUrl;if("test"===e._workerType&&(i=`modules/${t.module}/dist/${n}`),!i){let e=t.version;"latest"===e&&(e="latest"),i=`https://unpkg.com/@loaders.gl/${t.module}${e?`@${e}`:""}/dist/${n}`}return wA(i),i}function VA(t,e){return!!FA.isSupported()&&t.worker&&(null==e?void 0:e.worker)}function zA(t,e,n,i,r){return UA.apply(this,arguments)}function UA(){return(UA=gS(function*(t,e,n,i,r){const s=t.id,o=BA(t,n),a=FA.getWorkerFarm(n).getWorkerPool({name:s,url:o});n=JSON.parse(JSON.stringify(n));const l=yield a.startJob("process-on-worker",HA.bind(null,r));return l.postMessage("process",{input:e,options:n}),yield(yield l.result).result})).apply(this,arguments)}function HA(t,e,n,i){return $A.apply(this,arguments)}function $A(){return($A=gS(function*(t,e,n,i){switch(n){case"done":e.done(i);break;case"error":e.error(i.error);break;case"process":const{id:s,input:o,options:a}=i;try{const n=yield t(o,a);e.postMessage("done",{id:s,result:n})}catch(r){const t=r instanceof Error?r.message:"unknown error";e.postMessage("error",{id:s,error:t})}break;default:console.warn(`parse-with-worker unknown message ${n}`)}})).apply(this,arguments)}cA(FA,"_workerFarm",void 0);var GA=n(9521);function WA(t){if(function(t){return t&&"object"==typeof t&&t.isBuffer}(t)&&(t=function(t){return GA.toArrayBuffer?GA.toArrayBuffer(t):t}(t)),t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t))return 0===t.byteOffset&&t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);if("string"==typeof t){const e=t;return(new TextEncoder).encode(e).buffer}if(t&&"object"==typeof t&&t._toArrayBuffer)return t._toArrayBuffer();throw new Error("toArrayBuffer")}function qA(...t){const e=t.map(t=>t instanceof ArrayBuffer?new Uint8Array(t):t),n=e.reduce((t,e)=>t+e.byteLength,0),i=new Uint8Array(n);let r=0;for(const s of e)i.set(s,r),r+=s.byteLength;return i.buffer}function XA(t,e,n){const i=void 0!==n?new Uint8Array(t).subarray(e,e+n):new Uint8Array(t).subarray(e);return new Uint8Array(i).buffer}function YA(t){return KA.apply(this,arguments)}function KA(){return(KA=gS(function*(t){const e=[];var n,i=!0,r=!1;try{for(var s,o,a=fk(t);i=(s=yield a.next()).done,o=yield s.value,!i;i=!0)e.push(o)}catch(l){r=!0,n=l}finally{try{!i&&null!=a.return&&(yield a.return())}finally{if(r)throw n}}return qA(...e)})).apply(this,arguments)}const QA=262144;function ZA(t){this.wrapped=t}function JA(t){return new ZA(t)}function tP(t){var e,n;function i(e,n){try{var s=t[e](n),o=s.value,a=o instanceof ZA;Promise.resolve(a?o.wrapped:o).then(function(t){a?i("return"===e?"return":"next",t):r(s.done?"return":"normal",t)},function(t){i("throw",t)})}catch(l){r("throw",l)}}function r(t,r){switch(t){case"return":e.resolve({value:r,done:!0});break;case"throw":e.reject(r);break;default:e.resolve({value:r,done:!1})}(e=e.next)?i(e.key,e.arg):n=null}this._invoke=function(t,r){return new Promise(function(s,o){var a={key:t,arg:r,resolve:s,reject:o,next:null};n?n=n.next=a:(e=n=a,i(t,r))})},"function"!=typeof t.return&&(this.return=void 0)}function eP(t){return function(){return new tP(t.apply(this,arguments))}}function nP(){return(nP=eP(function*(t,e){const n=(null==e?void 0:e.chunkSize)||1048576;let i=0;for(;it&&"object"==typeof t&&t.isBuffer)(t)&&(t=t.buffer),t instanceof ArrayBuffer){const n=t;return e.text&&!e.binary?new TextDecoder("utf8").decode(n):n}if(ArrayBuffer.isView(t)){if(e.text&&!e.binary)return new TextDecoder("utf8").decode(t);let n=t.buffer;const i=t.byteLength||t.length;return(0!==t.byteOffset||i!==n.byteLength)&&(n=n.slice(t.byteOffset,t.byteOffset+i)),n}throw new Error(aP)}function cP(t,e,n){return uP.apply(this,arguments)}function uP(){return(uP=gS(function*(t,e,n){const i=t instanceof ArrayBuffer||ArrayBuffer.isView(t);if("string"==typeof t||i)return lP(t,e);if(Dk(t)&&(t=yield Zk(t)),Ik(t)){const n=t;return yield tA(n),e.binary?yield n.arrayBuffer():yield n.text()}if(Rk(t)&&(t=oP(t,n)),Pk(t)||Mk(t))return YA(t);throw new Error(aP)})).apply(this,arguments)}function hP(t,e,n=null){if(n)return n;const i=wt({fetch:bA(e,t)},t);return Array.isArray(i.loaders)||(i.loaders=null),i}function dP(t,e){if(!e&&t&&!Array.isArray(t))return t;let n;if(t&&(n=Array.isArray(t)?t:[t]),e&&e.loaders){const t=Array.isArray(e.loaders)?e.loaders:[e.loaders];n=n?[...n,...t]:t}return n&&n.length?n:null}const pP=()=>{const t=fA();return t.loaderRegistry=t.loaderRegistry||[],t.loaderRegistry};function fP(t){const e=pP();t=Array.isArray(t)?t:[t];for(const n of t){const t=jk(n);e.find(e=>t===e)||e.unshift(t)}}const gP=/\.([^.]+)$/;function mP(t){return bP.apply(this,arguments)}function bP(){return(bP=gS(function*(t,e=[],n,i){if(!vP(t))return null;let r=yP(t,e,ii(wt({},n),{nothrow:!0}),i);if(r)return r;if(Dk(t)&&(r=yP(t=yield t.slice(0,10).arrayBuffer(),e,n,i)),!(r||null!=n&&n.nothrow))throw new Error(_P(t));return r})).apply(this,arguments)}function yP(t,e=[],n,i){if(!vP(t))return null;if(e&&!Array.isArray(e))return jk(e);let r=[];e&&(r=r.concat(e)),null!=n&&n.ignoreRegisteredLoaders||r.push(...pP()),function(t){for(const e of t)jk(e)}(r);const s=function(t,e,n,i){const{url:r,type:s}=Yk(t),o=r||(null==i?void 0:i.url);let a=null;return null!=n&&n.mimeType&&(a=wP(e,null==n?void 0:n.mimeType)),a=a||function(t,e){const n=e&&gP.exec(e),i=n&&n[1];return i?function(t,e){e=e.toLowerCase();for(const n of t)for(const t of n.extensions)if(t.toLowerCase()===e)return n;return null}(t,i):null}(e,o),a=a||wP(e,s),a=a||function(t,e){if(!e)return null;for(const n of t)if("string"==typeof e){if(xP(e,n))return n}else if(ArrayBuffer.isView(e)){if(SP(e.buffer,e.byteOffset,n))return n}else if(e instanceof ArrayBuffer&&SP(e,0,n))return n;return null}(e,t),a=a||wP(e,null==n?void 0:n.fallbackMimeType),a}(t,r,n,i);if(!(s||null!=n&&n.nothrow))throw new Error(_P(t));return s}function vP(t){return!(t instanceof Response&&204===t.status)}function _P(t){const{url:e,type:n}=Yk(t);let i="No valid loader found";return t&&(i+=` data: "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?EP(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?EP(t,0,e):""}(t)}", contentType: "${n}"`),e&&(i+=` url: ${e}`),i}function wP(t,e){for(const n of t)if(n.mimeTypes&&n.mimeTypes.includes(e)||e===`application/x.${n.id}`)return n;return null}function xP(t,e){return e.testText?e.testText(t):(Array.isArray(e.tests)?e.tests:[e.tests]).some(e=>t.startsWith(e))}function SP(t,e,n){return(Array.isArray(n.tests)?n.tests:[n.tests]).some(i=>function(t,e,n,i){if(i instanceof ArrayBuffer)return function(t,e,n){if(t.byteLength<(n=n||t.byteLength)||e.byteLengtht.equals(e));let RP=new Uint8ClampedArray(0);const NP={data:{type:"data",value:IP,async:!0},dataComparator:null,_dataDiff:{type:"function",value:t=>t&&t.__diff,compare:!1,optional:!0},dataTransform:{type:"function",value:null,compare:!1,optional:!0},onDataLoad:{type:"function",value:null,compare:!1,optional:!0},onError:{type:"function",value:null,compare:!1,optional:!0},fetch:{type:"function",value:(t,{propName:e,layer:n,loaders:i,loadOptions:r,signal:s})=>{const{resourceManager:o}=n.context;var a;r=r||n.getLoadOptions(),i=i||n.props.loaders,s&&(r=ii(wt({},r),{fetch:ii(wt({},null===(a=r)||void 0===a?void 0:a.fetch),{signal:s})}));let l=o.contains(t);return!l&&!r&&(o.add({resourceId:t,data:AP(t,i),persistent:!1}),l=!0),l?o.subscribe({resourceId:t,onChange:t=>n.internalState.reloadAsyncProp(e,t),consumerId:n.id,requestId:e}):AP(t,i,r)},compare:!1},updateTriggers:{},visible:!0,pickable:!1,opacity:{type:"number",min:0,max:1,value:1},onHover:{type:"function",value:null,compare:!1,optional:!0},onClick:{type:"function",value:null,compare:!1,optional:!0},onDragStart:{type:"function",value:null,compare:!1,optional:!0},onDrag:{type:"function",value:null,compare:!1,optional:!0},onDragEnd:{type:"function",value:null,compare:!1,optional:!0},coordinateSystem:Iw.DEFAULT,coordinateOrigin:{type:"array",value:[0,0,0],compare:!0},modelMatrix:{type:"array",value:null,compare:!0,optional:!0},wrapLongitude:!1,positionFormat:"XYZ",colorFormat:"RGBA",parameters:{},transitions:null,extensions:[],loaders:{type:"array",value:[],optional:!0,compare:!0},getPolygonOffset:{type:"function",value:({layerIndex:t})=>[0,100*-t],compare:!1},highlightedObjectIndex:-1,autoHighlight:!1,highlightColor:{type:"accessor",value:[0,0,128,128]}};let LP=(()=>{class t extends Ck{toString(){return"".concat(this.constructor.layerName||this.constructor.name,"({id: '").concat(this.props.id,"'})")}raiseError(t,e){var n,i,r,s;e&&(t.message="".concat(e,": ").concat(t.message)),(null===(n=(i=this.props).onError)||void 0===n?void 0:n.call(i,t))||null===(r=this.context)||void 0===r||null===(s=r.onError)||void 0===s||s.call(r,t,this)}setState(t){this.setChangeFlags({stateChanged:!0}),Object.assign(this.state,t),this.setNeedsRedraw()}setNeedsRedraw(t=!0){this.internalState&&(this.internalState.needsRedraw=t)}setNeedsUpdate(){this.context.layerManager.setNeedsUpdate(String(this)),this.internalState.needsUpdate=!0}getNeedsRedraw(t={clearRedrawFlags:!1}){return this._getNeedsRedraw(t)}needsUpdate(){return this.internalState.needsUpdate||this.hasUniformTransition()||this.shouldUpdateState(this._getUpdateParams())}hasUniformTransition(){return this.internalState.uniformTransitions.active}get isLoaded(){return this.internalState&&!this.internalState.isAsyncPropLoading()}get wrapLongitude(){return this.props.wrapLongitude}isPickable(){return this.props.pickable&&this.props.visible}getModels(){return this.state&&(this.state.models||(this.state.model?[this.state.model]:[]))}getAttributeManager(){return this.internalState&&this.internalState.attributeManager}getCurrentLayer(){return this.internalState&&this.internalState.layer}getLoadOptions(){return this.props.loadOptions}project(t){const{viewport:e}=this.context,n=KT(t,{viewport:e,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem}),[i,r,s]=NT(n,e.pixelProjectionMatrix);return 2===t.length?[i,r]:[i,r,s]}unproject(t){const{viewport:e}=this.context;return e.unproject(t)}projectPosition(t){return function(t,e){const{viewport:n,coordinateSystem:i,coordinateOrigin:r,modelMatrix:s,fromCoordinateSystem:o,fromCoordinateOrigin:a}=function(t){const e=wt({},t);let{coordinateSystem:n}=t;const{viewport:i,coordinateOrigin:r,fromCoordinateSystem:s,fromCoordinateOrigin:o}=t;return n===Iw.DEFAULT&&(n=i.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN),void 0===s&&(e.fromCoordinateSystem=n),void 0===o&&(e.fromCoordinateOrigin=r),e.coordinateSystem=n,e}(e),{geospatialOrigin:l,shaderCoordinateOrigin:c,offsetMode:u}=lT(n,i,r),h=KT(t,{viewport:n,modelMatrix:s,coordinateSystem:o,coordinateOrigin:a,offsetMode:u});u&&function(t,e,n){t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2]}(h,h,n.projectPosition(l||c));return h}(t,{viewport:this.context.viewport,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem})}use64bitPositions(){const{coordinateSystem:t}=this.props;return t===Iw.DEFAULT||t===Iw.LNGLAT||t===Iw.CARTESIAN}onHover(t,e){return!!this.props.onHover&&this.props.onHover(t,e)}onClick(t,e){return!!this.props.onClick&&this.props.onClick(t,e)}nullPickingColor(){return[0,0,0]}encodePickingColor(t,e=[]){return e[0]=t+1&255,e[1]=t+1>>8&255,e[2]=t+1>>8>>8&255,e}decodePickingColor(t){uE(t instanceof Uint8Array);const[e,n,i]=t;return e+256*n+65536*i-1}initializeState(){throw new Error("Layer ".concat(this," has not defined initializeState"))}getShaders(t){for(const e of this.props.extensions)t=GO(t,e.getShaders.call(this,e));return t}shouldUpdateState({changeFlags:t}){return t.propsOrDataChanged}updateState({oldProps:t,props:e,changeFlags:n}){const i=this.getAttributeManager();if(n.dataChanged&&i){const{dataChanged:t}=n;if(Array.isArray(t))for(const e of t)i.invalidateAll(e);else i.invalidateAll()}const r=e.highlightedObjectIndex>=0||e.pickable;if((t.highlightedObjectIndex>=0||t.pickable)!==r&&i){const{pickingColors:t,instancePickingColors:e}=i.attributes,n=t||e;n&&(r&&n.constant&&(n.constant=!1,i.invalidate(n.id)),!n.value&&!r&&(n.constant=!0,n.value=[0,0,0]))}}finalizeState(){for(const e of this.getModels())e.delete();const t=this.getAttributeManager();t&&t.finalize(),this.context.resourceManager.unsubscribe({consumerId:this.id}),this.internalState.uniformTransitions.clear(),this.internalState.finalize()}draw(t){for(const e of this.getModels())e.draw(t)}getPickingInfo({info:t}){const{index:e}=t;return e>=0&&Array.isArray(this.props.data)&&(t.object=this.props.data[e]),t}activateViewport(t){const e=this.internalState.viewport;this.internalState.viewport=t,(!e||!DP({oldViewport:e,viewport:t}))&&(this.setChangeFlags({viewportChanged:!0}),this.isComposite?this.needsUpdate()&&this.setNeedsUpdate():this._update())}invalidateAttribute(t="all",e=""){const n=this.getAttributeManager();!n||("all"===t?n.invalidateAll():n.invalidate(t))}updateAttributes(t){for(const e of this.getModels())this._setModelAttributes(e,t)}_updateAttributes(t){const e=this.getAttributeManager();if(!e)return;const n=this.getNumInstances(t),i=this.getStartIndices(t);e.update({data:t.data,numInstances:n,startIndices:i,props:t,transitions:t.transitions,buffers:t.data.attributes,context:this,ignoreUnknownAttributes:!0});const r=e.getChangedAttributes({clearChangedFlags:!0});this.updateAttributes(r)}_updateAttributeTransition(){const t=this.getAttributeManager();t&&t.updateTransition()}_updateUniformTransition(){const{uniformTransitions:t}=this.internalState;if(t.active){const e=t.update(),n=Object.create(this.props);for(const t in e)Object.defineProperty(n,t,{value:e[t]});return n}return this.props}calculateInstancePickingColors(t,{numInstances:e}){if(t.constant)return;const n=Math.floor(RP.length/3);if(this.internalState.usesPickingColorCache=!0,nMP&&Mw.warn("Layer has too many data objects. Picking might not be able to distinguish all objects.")(),RP=AS.allocate(RP,e,{size:3,copy:!0,maxCount:Math.max(e,MP)});const t=Math.floor(RP.length/3),i=[];for(let e=n;e{const i={moduleParameters:t,uniforms:e,parameters:n,context:this.context};for(const t of this.props.extensions)t.draw.call(this,i,t);this.draw(i)})}finally{this.props=i}}getChangeFlags(){return this.internalState.changeFlags}setChangeFlags(t){const{changeFlags:e}=this.internalState;for(const i in t)if(t[i]){let n=!1;switch(i){case"dataChanged":Array.isArray(e[i])&&(e[i]=Array.isArray(t[i])?e[i].concat(t[i]):t[i],n=!0);default:e[i]||(e[i]=t[i],n=!0)}n&&PE("layer.changeFlag",this,i,t)}const n=e.dataChanged||e.updateTriggersChanged||e.propsChanged||e.extensionsChanged;e.propsOrDataChanged=n,e.somethingChanged=n||t.viewportChanged||t.stateChanged}clearChangeFlags(){this.internalState.changeFlags={dataChanged:!1,propsChanged:!1,updateTriggersChanged:!1,viewportChanged:!1,stateChanged:!1,extensionsChanged:!1,propsOrDataChanged:!1,somethingChanged:!1}}diffProps(t,e){const n=function(t,e){const n=FO({newProps:t,oldProps:e,propTypes:UO(t),ignoreProps:{data:null,updateTriggers:null,extensions:null,transitions:null}}),i=function(t,e){if(null===e)return"oldProps is null, initial diff";let n=null;const{dataComparator:i,_dataDiff:r}=t;return i?i(t.data,e.data)||(n="Data comparator detected a change"):t.data!==e.data&&(n="A new data container was supplied"),n&&r&&(n=r(t.data,e.data)||n),n}(t,e);let r=!1;return i||(r=function(t,e){if(null===e)return"oldProps is null, initial diff";if("all"in t.updateTriggers&&zO(t,e,"all"))return{all:!0};const n={};let i=!1;for(const r in t.updateTriggers)"all"!==r&&zO(t,e,r)&&(n[r]=!0,i=n);return i}(t,e)),{dataChanged:i,propsChanged:n,updateTriggersChanged:r,extensionsChanged:VO(t,e),transitionsChanged:jO(t,e)}}(t,e);if(n.updateTriggersChanged)for(const i in n.updateTriggersChanged)n.updateTriggersChanged[i]&&this.invalidateAttribute(i);if(n.transitionsChanged)for(const i in n.transitionsChanged)this.internalState.uniformTransitions.add(i,e[i],t[i],t.transitions[i]);return this.setChangeFlags(n)}validateProps(){!function(t){const e=UO(t);for(const n in e){const i=e[n],{validate:r}=i;if(r&&!r(t[n],i))throw new Error("Invalid prop ".concat(n,": ").concat(t[n]))}}(this.props)}setModuleParameters(t){for(const e of this.getModels())e.updateModuleSettings(t)}updateAutoHighlight(t){this.props.autoHighlight&&this._updateAutoHighlight(t)}_updateAutoHighlight(t){const e={pickingSelectedColor:t.picked?t.color:null},{highlightColor:n}=this.props;t.picked&&"function"==typeof n&&(e.pickingHighlightColor=n(t)),this.setModuleParameters(e),this.setNeedsRedraw()}_updateModules({props:t,oldProps:e},n){const{autoHighlight:i,highlightedObjectIndex:r,highlightColor:s}=t;if(n||e.autoHighlight!==i||e.highlightedObjectIndex!==r||e.highlightColor!==s){const t={};i||(t.pickingSelectedColor=null),Array.isArray(s)&&(t.pickingHighlightColor=s),Number.isInteger(r)&&(t.pickingSelectedColor=r>=0?this.encodePickingColor(r):null),this.setModuleParameters(t)}}_getUpdateParams(){return{props:this.props,oldProps:this.internalState.getOldProps(),context:this.context,changeFlags:this.internalState.changeFlags}}_getNeedsRedraw(t){if(!this.internalState)return!1;let e=!1;e=e||this.internalState.needsRedraw&&this.id,this.internalState.needsRedraw=this.internalState.needsRedraw&&!t.clearRedrawFlags;const n=this.getAttributeManager(),i=n&&n.getNeedsRedraw(t);return e=e||i,e}_getAttributeManager(){return new PO(this.context.gl,{id:this.props.id,stats:this.context.stats,timeline:this.context.timeline})}_initState(){uE(!this.internalState&&!this.state),uE(isFinite(this.props.coordinateSystem));const t=this._getAttributeManager();t&&t.addInstanced({instancePickingColors:{type:5121,size:3,noAlloc:!0,update:this.calculateInstancePickingColors}}),this.internalState=new Ok({attributeManager:t,layer:this}),this.clearChangeFlags(),this.state={},Object.defineProperty(this.state,"attributeManager",{get:()=>(Mw.deprecated("layer.state.attributeManager","layer.getAttributeManager()"),t)}),this.internalState.layer=this,this.internalState.uniformTransitions=new RO(this.context.timeline),this.internalState.onAsyncPropUpdated=this._onAsyncPropUpdated.bind(this),this.internalState.setAsyncProps(this.props)}_transferState(t){PE("layer.matched",this,this===t);const{state:e,internalState:n}=t;this!==t&&(this.internalState=n,this.internalState.layer=this,this.state=e,this.internalState.setAsyncProps(this.props),this.diffProps(this.props,this.internalState.getOldProps()))}_onAsyncPropUpdated(){this.diffProps(this.props,this.internalState.getOldProps()),this.setNeedsUpdate()}}return t.layerName="Layer",t.defaultProps=NP,t})(),jP=(()=>{class t extends LP{get isComposite(){return!0}get isLoaded(){return super.isLoaded&&this.getSubLayers().every(t=>t.isLoaded)}getSubLayers(){return this.internalState&&this.internalState.subLayers||[]}initializeState(){}setState(t){super.setState(t),this.setNeedsUpdate()}getPickingInfo({info:t}){const{object:e}=t;return e&&e.__source&&e.__source.parent&&e.__source.parent.id===this.id&&(t.object=e.__source.object,t.index=e.__source.index),t}renderLayers(){return null}filterSubLayer(t){return!0}shouldRenderSubLayer(t,e){return e&&e.length}getSubLayerClass(t,e){const{_subLayerProps:n}=this.props;return n&&n[t]&&n[t].type||e}getSubLayerRow(t,e,n){return t.__source={parent:this,object:e,index:n},t}getSubLayerAccessor(t){if("function"==typeof t){const e={data:this.props.data,target:[]};return(n,i)=>n&&n.__source?(e.index=n.__source.index,t(n.__source.object,e)):t(n,i)}return t}getSubLayerProps(t={}){const{opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g,_subLayerProps:m}=this.props,b={opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g},y=m&&m[t.id],v=y&&y.updateTriggers,_=t.id||"sublayer";if(y){const e=this.constructor._propTypes,n=t.type?t.type._propTypes:{};for(const t in y){const i=n[t]||e[t];i&&"accessor"===i.type&&(y[t]=this.getSubLayerAccessor(y[t]))}}Object.assign(b,t,y),b.id="".concat(this.props.id,"-").concat(_),b.updateTriggers=wt(wt({all:this.props.updateTriggers.all},t.updateTriggers),v);for(const w of f){const t=w.getSubLayerProps.call(this,w);t&&Object.assign(b,t,{updateTriggers:Object.assign(b.updateTriggers,t.updateTriggers)})}return b}_updateAutoHighlight(t){for(const e of this.getSubLayers())e.updateAutoHighlight(t)}_getAttributeManager(){return null}_renderLayers(){let{subLayers:t}=this.internalState;const e=!t||this.needsUpdate();e&&(t=this.renderLayers(),t=gE(t,Boolean),this.internalState.subLayers=t),PE("compositeLayer.renderLayers",this,e,t);for(const n of t)n.parent=this}}return t.layerName="CompositeLayer",t})();const FP=/([0-9]+\.?[0-9]*)(%|px)/;function BP(t){switch(typeof t){case"number":return{position:t,relative:!1};case"string":const e=t.match(FP);if(e&&e.length>=3){const t="%"===e[2],n=parseFloat(e[1]);return{position:t?n/100:n,relative:t}}default:throw new Error("Could not parse position string ".concat(t))}}function VP(t,e){return t.relative?Math.round(t.position*e):t.position}function zP(t,e){if(t===e)return!0;if(!t||!e)return!1;for(const n in t){const i=t[n],r=e[n];if(!(i===r||Array.isArray(i)&&Array.isArray(r)&&zP(i,r)))return!1}return!0}class UP{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r="100%",height:s="100%",projectionMatrix:o=null,fovy:a=50,near:l=.1,far:c=1e3,modelMatrix:u=null,viewportInstance:h=null,type:d=WT}=t;uE(!h||h instanceof WT),this.viewportInstance=h,this.id=e||this.constructor.displayName||"view",this.type=d,this.props=ii(wt({},t),{id:this.id,projectionMatrix:o,fovy:a,near:l,far:c,modelMatrix:u}),this._parseDimensions({x:n,y:i,width:r,height:s}),this.equals=this.equals.bind(this),Object.seal(this)}equals(t){return this===t||(this.viewportInstance?t.viewportInstance&&this.viewportInstance.equals(t.viewportInstance):zP(this.props,t.props))}makeViewport({width:t,height:e,viewState:n}){if(this.viewportInstance)return this.viewportInstance;n=this.filterViewState(n);const i=this.getDimensions({width:t,height:e});return this._getViewport(n,i)}getViewStateId(){switch(typeof this.props.viewState){case"string":return this.props.viewState;case"object":return this.props.viewState&&this.props.viewState.id;default:return this.id}}filterViewState(t){if(this.props.viewState&&"object"==typeof this.props.viewState){if(!this.props.viewState.id)return this.props.viewState;const e=wt({},t);for(const t in this.props.viewState)"id"!==t&&(e[t]=this.props.viewState[t]);return e}return t}getDimensions({width:t,height:e}){return{x:VP(this._x,t),y:VP(this._y,e),width:VP(this._width,t),height:VP(this._height,e)}}_getControllerProps(t){let e=this.props.controller;return e?!0===e?t:("function"==typeof e&&(e={type:e}),wt(wt({},t),e)):null}_getViewport(t,e){const{type:n}=this;return new n(wt(wt(wt({},t),this.props),e))}_parseDimensions({x:t,y:e,width:n,height:i}){this._x=BP(t),this._y=BP(e),this._width=BP(n),this._height=BP(i)}}const HP=()=>{},$P={transitionEasing:t=>t,transitionInterruption:1,onTransitionStart:HP,onTransitionInterrupt:HP,onTransitionEnd:HP};class GP{constructor(t,e={}){this.ControllerState=t,this.props=wt(wt({},$P),e),this.propsInTransition=null,this.transition=new OO(e.timeline),this.onViewStateChange=e.onViewStateChange||HP,this.onStateChange=e.onStateChange||HP,this._onTransitionUpdate=this._onTransitionUpdate.bind(this)}finalize(){this.transition.cancel()}getViewportInTransition(){return this.propsInTransition}processViewStateChange(t){let e=!1;const n=this.props;if(t=wt(wt({},$P),t),this.props=t,this._shouldIgnoreViewportChange(n,t))return e;if(this._isTransitionEnabled(t)){const{interruption:i,endProps:r}=this.transition.settings,s=wt(wt({},n),2===i?r:this.propsInTransition||n);this._triggerTransition(s,t),e=!0}else this.transition.cancel();return e}updateTransition(){this.transition.update()}_isTransitionEnabled(t){const{transitionDuration:e,transitionInterpolator:n}=t;return(e>0||"auto"===e)&&Boolean(n)}_isUpdateDueToCurrentTransition(t){return!!this.transition.inProgress&&this.transition.settings.interpolator.arePropsEqual(t,this.propsInTransition)}_shouldIgnoreViewportChange(t,e){return this.transition.inProgress?3===this.transition.settings.interruption||this._isUpdateDueToCurrentTransition(e):!this._isTransitionEnabled(e)||e.transitionInterpolator.arePropsEqual(t,e)}_triggerTransition(t,e){const n=new this.ControllerState(t),i=new this.ControllerState(e).shortestPathFrom(n),{transitionInterpolator:r}=e,s=r.getDuration?r.getDuration(t,e):e.transitionDuration;if(0===s)return;const o=e.transitionInterpolator.initializeProps(t,i);this.propsInTransition={},this.duration=s,this.transition.start({duration:s,easing:e.transitionEasing,interpolator:e.transitionInterpolator,interruption:e.transitionInterruption,startProps:o.start,endProps:o.end,onStart:e.onTransitionStart,onUpdate:this._onTransitionUpdate,onInterrupt:this._onTransitionEnd(e.onTransitionInterrupt),onEnd:this._onTransitionEnd(e.onTransitionEnd)}),this.onStateChange({inTransition:!0}),this.updateTransition()}_onTransitionEnd(t){return e=>{this.propsInTransition=null,this.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1}),t(e)}}_onTransitionUpdate(t){const{time:e,settings:{interpolator:n,startProps:i,endProps:r,duration:s,easing:o}}=t,a=o(e/s),l=n.interpolateProps(i,r,a);this.propsInTransition=new this.ControllerState(wt(wt({},this.props),l)).getViewportProps(),this.onViewStateChange({viewState:this.propsInTransition,oldViewState:this.props})}}const WP=["longitude","latitude","zoom","bearing","pitch"],qP=["longitude","latitude","zoom"];class XP extends class{constructor(t={}){Array.isArray(t)&&(t={compare:t,extract:t,required:t});const{compare:e,extract:n,required:i}=t;this._propsToCompare=e,this._propsToExtract=n,this._requiredProps=i}arePropsEqual(t,e){for(const n of this._propsToCompare||Object.keys(e))if(!(n in t)||!(n in e)||!FS(t[n],e[n]))return!1;return!0}initializeProps(t,e){let n;if(this._propsToExtract){const i={},r={};for(const n of this._propsToExtract)i[n]=t[n],r[n]=e[n];n={start:i,end:r}}else n={start:t,end:e};return this._checkRequiredProps(n.start),this._checkRequiredProps(n.end),n}interpolateProps(t,e,n){return e}getDuration(t,e){return e.transitionDuration}_checkRequiredProps(t){!this._requiredProps||this._requiredProps.forEach(e=>{const n=t[e];uE(Number.isFinite(n)||Array.isArray(n),"".concat(e," is required for transition"))})}}{constructor(t={}){super((Array.isArray(t)?t:t.transitionProps)||{compare:WP,extract:WP,required:qP}),this.opts=t}initializeProps(t,e){const n=super.initializeProps(t,e),{makeViewport:i,around:r}=this.opts;if(i&&r){const s=i(t),o=i(e),a=s.unproject(r);n.start.around=r,Object.assign(n.end,{around:o.project(a),aroundPosition:a,width:e.width,height:e.height})}return n}interpolateProps(t,e,n){const i={};for(const r of this._propsToExtract)i[r]=jS(t[r]||0,e[r]||0,n);if(e.aroundPosition){const r=this.opts.makeViewport(wt(wt({},e),i));Object.assign(i,r.panByPosition(e.aroundPosition,jS(t.around,e.around,n)))}return i}}const YP={transitionDuration:0},KP={transitionDuration:300,transitionEasing:t=>t,transitionInterruption:1},QP=t=>1-(1-t)*(1-t),ZP=["wheel"],JP=["panstart","panmove","panend"],tM=["pinchstart","pinchmove","pinchend"],eM=["tripanstart","tripanmove","tripanend"],nM=["doubletap"],iM=["keydown"];class rM{constructor(t,e={}){this.ControllerState=t,this.controllerState=null,this.controllerStateProps=null,this.eventManager=null,this.transitionManager=new GP(t,ii(wt({},e),{onViewStateChange:this._onTransition.bind(this),onStateChange:this._setInteractionState.bind(this)}));const n=this.linearTransitionProps;this._transition=n&&ii(wt({},KP),{transitionInterpolator:new XP({transitionProps:n})}),this._events=null,this._interactionState={isDragging:!1},this._customEvents=[],this.onViewStateChange=null,this.onStateChange=null,this.handleEvent=this.handleEvent.bind(this),this.setProps(e)}get linearTransitionProps(){return null}set events(t){this.toggleEvents(this._customEvents,!1),this.toggleEvents(t,!0),this._customEvents=t,this.setProps(this.controllerStateProps)}finalize(){for(const t in this._events)this._events[t]&&this.eventManager.off(t,this.handleEvent);this.transitionManager.finalize()}handleEvent(t){const{ControllerState:e}=this;this.controllerState=new e(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state));const n=this._eventStartBlocked;switch(t.type){case"panstart":return!n&&this._onPanStart(t);case"panmove":return this._onPan(t);case"panend":return this._onPanEnd(t);case"pinchstart":return!n&&this._onPinchStart(t);case"pinchmove":return this._onPinch(t);case"pinchend":return this._onPinchEnd(t);case"tripanstart":return!n&&this._onTriplePanStart(t);case"tripanmove":return this._onTriplePan(t);case"tripanend":return this._onTriplePanEnd(t);case"doubletap":return this._onDoubleTap(t);case"wheel":return this._onWheel(t);case"keydown":return this._onKeyDown(t);default:return!1}}getCenter(t){const{x:e,y:n}=this.controllerStateProps,{offsetCenter:i}=t;return[i.x-e,i.y-n]}isPointInBounds(t,e){const{width:n,height:i}=this.controllerStateProps;if(e&&e.handled)return!1;const r=t[0]>=0&&t[0]<=n&&t[1]>=0&&t[1]<=i;return r&&e&&e.stopPropagation(),r}isFunctionKeyPressed(t){const{srcEvent:e}=t;return Boolean(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}isDragging(){return this._interactionState.isDragging}blockEvents(t){const e=setTimeout(()=>{this._eventStartBlocked===e&&(this._eventStartBlocked=null)},t);this._eventStartBlocked=e}setProps(t){"onViewStateChange"in t&&(this.onViewStateChange=t.onViewStateChange),"onStateChange"in t&&(this.onStateChange=t.onStateChange),"makeViewport"in t&&(this.makeViewport=t.makeViewport),"dragMode"in t&&(this.dragMode=t.dragMode),this.controllerStateProps=t,"eventManager"in t&&this.eventManager!==t.eventManager&&(this.eventManager=t.eventManager,this._events={},this.toggleEvents(this._customEvents,!0)),"transitionInterpolator"in t||(t.transitionInterpolator=this._getTransitionProps().transitionInterpolator),this.transitionManager.processViewStateChange(t);let{inertia:e}=t;!0===e&&(e=300),this.inertia=e;const{scrollZoom:n=!0,dragPan:i=!0,dragRotate:r=!0,doubleClickZoom:s=!0,touchZoom:o=!0,touchRotate:a=!1,keyboard:l=!0}=t,c=Boolean(this.onViewStateChange);this.toggleEvents(ZP,c&&n),this.toggleEvents(JP,c&&(i||r)),this.toggleEvents(tM,c&&(o||a)),this.toggleEvents(eM,c&&a),this.toggleEvents(nM,c&&s),this.toggleEvents(iM,c&&l),this.scrollZoom=n,this.dragPan=i,this.dragRotate=r,this.doubleClickZoom=s,this.touchZoom=o,this.touchRotate=a,this.keyboard=l}updateTransition(){this.transitionManager.updateTransition()}toggleEvents(t,e){this.eventManager&&t.forEach(t=>{this._events[t]!==e&&(this._events[t]=e,e?this.eventManager.on(t,this.handleEvent):this.eventManager.off(t,this.handleEvent))})}updateViewport(t,e={},n={}){const i=wt(wt({},t.getViewportProps()),e),r=this.controllerState!==t;if(this._state=t.getState(),this._setInteractionState(n),r){const t=this.controllerState?this.controllerState.getViewportProps():null;this.onViewStateChange&&this.onViewStateChange({viewState:i,interactionState:this._interactionState,oldViewState:t})}}_onTransition(t){this.onViewStateChange&&(t.interactionState=this._interactionState,this.onViewStateChange(t))}_setInteractionState(t){Object.assign(this._interactionState,t),this.onStateChange&&this.onStateChange(this._interactionState)}_onPanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;let n=this.isFunctionKeyPressed(t)||t.rightButton;(this.invertPan||"pan"===this.dragMode)&&(n=!n);const i=this.controllerState[n?"panStart":"rotateStart"]({pos:e});return this._panMove=n,this.updateViewport(i,YP,{isDragging:!0}),!0}_onPan(t){return!!this.isDragging()&&(this._panMove?this._onPanMove(t):this._onPanRotate(t))}_onPanEnd(t){return!!this.isDragging()&&(this._panMove?this._onPanMoveEnd(t):this._onPanRotateEnd(t))}_onPanMove(t){if(!this.dragPan)return!1;const e=this.getCenter(t),n=this.controllerState.pan({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isPanning:!0}),!0}_onPanMoveEnd(t){const{inertia:e}=this;if(this.dragPan&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.pan({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).panEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:!0})}else{const t=this.controllerState.panEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1})}return!0}_onPanRotate(t){if(!this.dragRotate)return!1;const e=this.getCenter(t),n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onPanRotateEnd(t){const{inertia:e}=this;if(this.dragRotate&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.rotate({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).rotateEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0})}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onWheel(t){if(!this.scrollZoom)return!1;t.preventDefault();const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const{speed:n=.01,smooth:i=!1}=this.scrollZoom,{delta:r}=t;let s=2/(1+Math.exp(-Math.abs(r*n)));r<0&&0!==s&&(s=1/s);const o=this.controllerState.zoom({pos:e,scale:s});return this.updateViewport(o,ii(wt({},this._getTransitionProps({around:e})),{transitionDuration:i?250:1}),{isZooming:!0,isPanning:!0}),!0}_onTriplePanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.rotateStart({pos:e});return this.updateViewport(n,YP,{isDragging:!0}),!0}_onTriplePan(t){if(!this.touchRotate||!this.isDragging())return!1;const e=this.getCenter(t);e[0]-=t.deltaX;const n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onTriplePanEnd(t){if(!this.isDragging())return!1;const{inertia:e}=this;if(this.touchRotate&&e&&t.velocityY){const n=this.getCenter(t),i=[n[0],n[1]+=t.velocityY*e/2],r=this.controllerState.rotate({pos:i});this.updateViewport(r,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0}),this.blockEvents(e)}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onPinchStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.zoomStart({pos:e}).rotateStart({pos:e});return this._startPinchRotation=t.rotation,this._lastPinchEvent=t,this.updateViewport(n,YP,{isDragging:!0}),!0}_onPinch(t){if(!this.touchZoom&&!this.touchRotate||!this.isDragging())return!1;let e=this.controllerState;if(this.touchZoom){const{scale:n}=t,i=this.getCenter(t);e=e.zoom({pos:i,scale:n})}if(this.touchRotate){const{rotation:n}=t;e=e.rotate({deltaAngleX:this._startPinchRotation-n})}return this.updateViewport(e,YP,{isDragging:!0,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:this.touchRotate}),this._lastPinchEvent=t,!0}_onPinchEnd(t){if(!this.isDragging())return!1;const{inertia:e,_lastPinchEvent:n}=this;if(this.touchZoom&&e&&n&&t.scale!==n.scale){const i=this.getCenter(t);let r=this.controllerState.rotateEnd();const s=Math.log2(t.scale),o=(s-Math.log2(n.scale))/(t.deltaTime-n.deltaTime),a=Math.pow(2,s+o*e/2);r=r.zoom({pos:i,scale:a}).zoomEnd(),this.updateViewport(r,ii(wt({},this._getTransitionProps({around:i})),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:!1}),this.blockEvents(e)}else{const t=this.controllerState.zoomEnd().rotateEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1,isZooming:!1,isRotating:!1})}return this._startPinchRotation=null,this._lastPinchEvent=null,!0}_onDoubleTap(t){if(!this.doubleClickZoom)return!1;const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.isFunctionKeyPressed(t),i=this.controllerState.zoom({pos:e,scale:n?.5:2});return this.updateViewport(i,this._getTransitionProps({around:e}),{isZooming:!0,isPanning:!0}),this.blockEvents(100),!0}_onKeyDown(t){if(!this.keyboard)return!1;const e=this.isFunctionKeyPressed(t),{zoomSpeed:n,moveSpeed:i,rotateSpeedX:r,rotateSpeedY:s}=this.keyboard,{controllerState:o}=this;let a;const l={};switch(t.srcEvent.code){case"Minus":a=e?o.zoomOut(n).zoomOut(n):o.zoomOut(n),l.isZooming=!0;break;case"Equal":a=e?o.zoomIn(n).zoomIn(n):o.zoomIn(n),l.isZooming=!0;break;case"ArrowLeft":e?(a=o.rotateLeft(r),l.isRotating=!0):(a=o.moveLeft(i),l.isPanning=!0);break;case"ArrowRight":e?(a=o.rotateRight(r),l.isRotating=!0):(a=o.moveRight(i),l.isPanning=!0);break;case"ArrowUp":e?(a=o.rotateUp(s),l.isRotating=!0):(a=o.moveUp(i),l.isPanning=!0);break;case"ArrowDown":e?(a=o.rotateDown(s),l.isRotating=!0):(a=o.moveDown(i),l.isPanning=!0);break;default:return!1}return this.updateViewport(a,this._getTransitionProps(),l),!0}_getTransitionProps(t){const{_transition:e}=this;return e?t?ii(wt({},e),{transitionInterpolator:new XP(ii(wt({},t),{transitionProps:this.linearTransitionProps,makeViewport:this.controllerState.makeViewport}))}):e:YP}}class sM{constructor(t){this._viewportProps=this._applyConstraints(t)}getViewportProps(){return this._viewportProps}getState(){return this._state}shortestPathFrom(t){return this._viewportProps}_applyConstraints(t){return t}}const oM=[0,0,0];class aM extends sM{constructor({makeViewport:t,width:e,height:n,rotationX:i=0,rotationOrbit:r=0,target:s=oM,zoom:o=0,minRotationX:a=-90,maxRotationX:l=90,minZoom:c=-(1/0),maxZoom:u=Infinity,startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m}){super({width:e,height:n,rotationX:i,rotationOrbit:r,target:s,zoom:o,minRotationX:a,maxRotationX:l,minZoom:c,maxZoom:u}),this._state={startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanPosition:this._unproject(t)})}pan({pos:t,startPosition:e}){const n=this._state.startPanPosition||e;if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanPosition:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startRotationX:this._viewportProps.rotationX,startRotationOrbit:this._viewportProps.rotationOrbit})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startRotationX:r,startRotationOrbit:s}=this._state,{width:o,height:a}=this._viewportProps;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let l;if(t){let e=(t[0]-i[0])/o;(r<-90||r>90)&&(e*=-1),l={rotationX:r+(t[1]-i[1])/a*180,rotationOrbit:s+180*e}}else l={rotationX:r+n,rotationOrbit:s+e};return this._getUpdatedState(l)}rotateEnd(){return this._getUpdatedState({startRotationX:null,startRotationOrbit:null})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{rotationOrbit:i}=n;return Math.abs(i-e.rotationOrbit)>180&&(n.rotationOrbit=i<0?i+360:i-360),n}zoomStart({pos:t}){return this._getUpdatedState({startZoomPosition:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){const{zoom:i}=this._viewportProps;let{startZoom:r,startZoomPosition:s}=this._state;Number.isFinite(r)||(r=i,s=this._unproject(e)||this._unproject(t));const o=this._calculateNewZoom({scale:n,startZoom:r}),a=this.makeViewport(ii(wt({},this._viewportProps),{zoom:o}));return this._getUpdatedState(wt({zoom:o},a.panByPosition(s,t)))}zoomEnd(){return this._getUpdatedState({startZoomPosition:null,startZoom:null})}zoomIn(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:t})})}zoomOut(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:1/t})})}moveLeft(t=50){return this._panFromCenter([-t,0])}moveRight(t=50){return this._panFromCenter([t,0])}moveUp(t=50){return this._panFromCenter([0,-t])}moveDown(t=50){return this._panFromCenter([0,t])}rotateLeft(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit-t})}rotateRight(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit+t})}rotateUp(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX-t})}rotateDown(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX+t})}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return Number.isFinite(e)||(e=this._viewportProps.zoom),LS(e+Math.log2(t),i,n)}_panFromCenter(t){const{width:e,height:n,target:i}=this._viewportProps;return this.pan({startPosition:i,pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new aM(wt(wt(wt({},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i,maxRotationX:r,minRotationX:s,rotationOrbit:o}=t;return t.zoom=LS(i,n,e),t.rotationX=LS(t.rotationX,s,r),(o<-180||o>180)&&(t.rotationOrbit=function(t,e){const n=t%360;return n<0?360+n:n}(o+180)-180),t}}class lM extends rM{constructor(t){super(aM,t)}get linearTransitionProps(){return["target","zoom","rotationX","rotationOrbit"]}}class cM extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(aM,t)}_onPanRotate(t){return!1}get linearTransitionProps(){return["target","zoom"]}}const uM=(new bT).lookAt({eye:[0,0,1]});function hM({width:t,height:e,near:n,far:i}){return t=t||1,e=e||1,(new bT).ortho({left:-t/2,right:t/2,bottom:-e/2,top:e/2,near:n,far:i})}class dM extends WT{constructor(t){const{width:e,height:n,near:i=.1,far:r=1e3,zoom:s=0,target:o=[0,0,0],flipY:a=!0}=t,l=Math.pow(2,s);super(ii(wt({},t),{longitude:null,position:o,viewMatrix:uM.clone().scale([l,l*(a?-1:1),l]),projectionMatrix:hM({width:e,height:n,near:i,far:r}),zoom:s}))}panByPosition(t,e){const n=uT([],t,hT([],LT(e,this.pixelUnprojectionMatrix)));return{target:uT([],this.center,n)}}}let pM=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:dM}))}get controller(){return this._getControllerProps({type:cM})}}return t.displayName="OrthographicView",t})();const fM=Math.PI/180;function gM({height:t,fovy:e,orbitAxis:n,rotationX:i,rotationOrbit:r,zoom:s}){const o=.5/Math.tan(e*fM/2),a="Z"===n?[0,0,1]:[0,1,0],l="Z"===n?[0,-o,0]:[0,0,o],c=(new bT).lookAt({eye:l,up:a});c.rotateX(i*fM),"Z"===n?c.rotateZ(r*fM):c.rotateY(r*fM);const u=Math.pow(2,s)/(t||1);return c.scale(u),c}class mM extends WT{constructor(t){const{height:e,fovy:n,orbitAxis:i,target:r=[0,0,0],rotationX:s=0,rotationOrbit:o=0,zoom:a=0}=t;super(ii(wt({},t),{longitude:null,viewMatrix:gM({height:e,fovy:n,orbitAxis:i,rotationX:s,rotationOrbit:o,zoom:a}),fovy:n,position:r,zoom:a})),this.projectedCenter=this.project(this.center)}unproject(t,{topLeft:e=!0}={}){const[n,i,r=this.projectedCenter[2]]=t,s=e?i:this.height-i,[o,a,l]=LT([n,s,r],this.pixelUnprojectionMatrix);return[o,a,l]}panByPosition(t,e){const n=this.project(t);return{target:this.unproject([this.width/2+n[0]-e[0],this.height/2+n[1]-e[1],this.projectedCenter[2]])}}}let bM=(()=>{class t extends UP{constructor(t={}){const{orbitAxis:e="Z"}=t;super(ii(wt({},t),{orbitAxis:e,type:mM}))}get controller(){return this._getControllerProps({type:lM})}}return t.displayName="OrbitView",t})();const yM=[255,255,255],vM=1;let _M=0;class wM{constructor(t={}){const{color:e=yM}=t,{intensity:n=vM}=t;this.id=t.id||"ambient-".concat(_M++),this.color=e,this.intensity=n,this.type="ambient"}}const xM=[255,255,255],SM=1,EM=[0,0,-1];let CM=0;class OM{constructor(t={}){const{color:e=xM}=t,{intensity:n=SM}=t,{direction:i=EM}=t,{_shadow:r=!1}=t;this.id=t.id||"directional-".concat(CM++),this.color=e,this.intensity=n,this.type="directional",this.direction=new nE(i).normalize().toArray(),this.shadow=r}getProjectedLight(){return this}}class TM{constructor(t={}){const{id:e="effect"}=t;this.id=e,this.props=wt({},t)}preRender(){}getModuleParameters(){}cleanup(){}}class kM extends class{constructor(t,e={}){const{id:n="pass"}=e;this.id=n,this.gl=t,this.props=wt({},e)}setProps(t){Object.assign(this.props,t)}render(){}cleanup(){}}{render(t){return yx(this.gl,{framebuffer:t.target}),this._drawLayers(t)}_drawLayers(t){const{viewports:e,views:n,onViewportActive:i,clearCanvas:r=!0}=t;t.pass=t.pass||"unknown";const s=this.gl;r&&function(t){yx(t,{viewport:[0,0,t.drawingBufferWidth,t.drawingBufferHeight]}),t.clear(16640)}(s);const o=[];for(const a of e){const e=a.viewport||a,r=n&&n[e.id];i(e);const l=this._getDrawLayerParams(e,t);t.view=r;const c=e.subViewports||[e];for(const n of c){t.viewport=n;const e=this._drawLayersInViewport(s,t,l);o.push(e)}}return o}_getDrawLayerParams(t,{layers:e,pass:n,layerFilter:i,effects:r,moduleParameters:s}){const o=[],a=AM(),l={viewport:t,isPicking:n.startsWith("picking"),renderPass:n};for(let c=0;cpS(t,e))}const a={totalCount:e.length,visibleCount:0,compositeCount:0,pickableCount:0};yx(t,{viewport:o});for(let c=0;c{const o=r.props._offset,a=r.id,l=r.parent&&r.parent.id;let c;if(l&&!(l in e)&&i(r.parent,!1),l in n){const t=n[l]=n[l]||AM(e[l],e);c=t(r,s),n[a]=t}else Number.isFinite(o)?(c=o+(e[l]||0),n[a]=null):c=t;return s&&c>=t&&(t=c+1),e[a]=c,c};return i}class PM extends kM{constructor(t,e){super(t,e),this.shadowMap=new lS(t,{width:1,height:1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.depthBuffer=new hS(t,{format:33189,width:1,height:1}),this.fbo=new SS(t,{id:"shadowmap",width:1,height:1,attachments:{36064:this.shadowMap,36096:this.depthBuffer}})}render(t){const e=this.fbo;vx(this.gl,{depthRange:[0,1],depthTest:!0,blend:!1,clearColor:[1,1,1,1]},()=>{const n=t.viewports[0],i=_x(this.gl),r=n.width*i,s=n.height*i;(r!==e.width||s!==e.height)&&e.resize({width:r,height:s}),super.render(ii(wt({},t),{target:e,pass:"shadow"}))})}shouldDrawLayer(t){return!1!==t.props.shadowEnabled}getModuleParameters(){return{drawToShadowMap:!0}}delete(){this.fbo&&(this.fbo.delete(),this.fbo=null),this.shadowMap&&(this.shadowMap.delete(),this.shadowMap=null),this.depthBuffer&&(this.depthBuffer.delete(),this.depthBuffer=null)}}const MM=Object.keys(Iw).map(t=>"const int COORDINATE_SYSTEM_".concat(t," = ").concat(Iw[t],";")).join(""),IM=Object.keys(Dw).map(t=>"const int PROJECTION_MODE_".concat(t," = ").concat(Dw[t],";")).join("");var DM="".concat(MM,"\n").concat(IM,"\n\nuniform int project_uCoordinateSystem;\nuniform int project_uProjectionMode;\nuniform float project_uScale;\nuniform bool project_uWrapLongitude;\nuniform vec3 project_uCommonUnitsPerMeter;\nuniform vec3 project_uCommonUnitsPerWorldUnit;\nuniform vec3 project_uCommonUnitsPerWorldUnit2;\nuniform vec4 project_uCenter;\nuniform mat4 project_uModelMatrix;\nuniform mat4 project_uViewProjectionMatrix;\nuniform vec2 project_uViewportSize;\nuniform float project_uDevicePixelRatio;\nuniform float project_uFocalDistance;\nuniform vec3 project_uCameraPosition;\nuniform vec3 project_uCoordinateOrigin;\nuniform vec3 project_uCommonOrigin;\n\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / (PI * 2.0);\nconst vec3 ZERO_64_LOW = vec3(0.0);\nconst float EARTH_RADIUS = 6370972.0;\nconst float GLOBE_RADIUS = 256.0;\nfloat project_size(float meters) {\n return meters * project_uCommonUnitsPerMeter.z;\n}\n\nvec2 project_size(vec2 meters) {\n return meters * project_uCommonUnitsPerMeter.xy;\n}\n\nvec3 project_size(vec3 meters) {\n return meters * project_uCommonUnitsPerMeter;\n}\n\nvec4 project_size(vec4 meters) {\n return vec4(meters.xyz * project_uCommonUnitsPerMeter, meters.w);\n}\nvec3 project_normal(vec3 vector) {\n vec4 normal_modelspace = project_uModelMatrix * vec4(vector, 0.0);\n return normalize(normal_modelspace.xyz * project_uCommonUnitsPerMeter);\n}\n\nvec4 project_offset_(vec4 offset) {\n float dy = offset.y;\n vec3 commonUnitsPerWorldUnit = project_uCommonUnitsPerWorldUnit + project_uCommonUnitsPerWorldUnit2 * dy;\n return vec4(offset.xyz * commonUnitsPerWorldUnit, offset.w);\n}\nvec2 project_mercator_(vec2 lnglat) {\n float x = lnglat.x;\n if (project_uWrapLongitude) {\n x = mod(x + 180., 360.0) - 180.;\n }\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan_fp32(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\nvec3 project_globe_(vec3 lnglatz) {\n float lambda = radians(lnglatz.x);\n float phi = radians(lnglatz.y);\n float cosPhi = cos(phi);\n float D = (lnglatz.z / EARTH_RADIUS + 1.0) * GLOBE_RADIUS;\n\n return vec3(\n sin(lambda) * cosPhi,\n -cos(lambda) * cosPhi,\n sin(phi)\n ) * D;\n}\nvec4 project_position(vec4 position, vec3 position64Low) {\n vec4 position_world = project_uModelMatrix * position;\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_mercator_(position_world.xy),\n project_size(position_world.z),\n position_world.w\n );\n }\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN) {\n position_world.xyz += project_uCoordinateOrigin;\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_globe_(position_world.xyz),\n position_world.w\n );\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n if (abs(position_world.y - project_uCoordinateOrigin.y) > 0.25) {\n return vec4(\n project_mercator_(position_world.xy) - project_uCommonOrigin.xy,\n project_size(position_world.z),\n position_world.w\n );\n }\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_IDENTITY ||\n (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET &&\n (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT ||\n project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN))) {\n position_world.xyz -= project_uCoordinateOrigin;\n }\n return project_offset_(position_world + project_uModelMatrix * vec4(position64Low, 0.0));\n}\n\nvec4 project_position(vec4 position) {\n return project_position(position, ZERO_64_LOW);\n}\n\nvec3 project_position(vec3 position, vec3 position64Low) {\n vec4 projected_position = project_position(vec4(position, 1.0), position64Low);\n return projected_position.xyz;\n}\n\nvec3 project_position(vec3 position) {\n vec4 projected_position = project_position(vec4(position, 1.0), ZERO_64_LOW);\n return projected_position.xyz;\n}\n\nvec2 project_position(vec2 position) {\n vec4 projected_position = project_position(vec4(position, 0.0, 1.0), ZERO_64_LOW);\n return projected_position.xy;\n}\n\nvec4 project_common_position_to_clipspace(vec4 position, mat4 viewProjectionMatrix, vec4 center) {\n return viewProjectionMatrix * position + center;\n}\nvec4 project_common_position_to_clipspace(vec4 position) {\n return project_common_position_to_clipspace(position, project_uViewProjectionMatrix, project_uCenter);\n}\nvec2 project_pixel_size_to_clipspace(vec2 pixels) {\n vec2 offset = pixels / project_uViewportSize * project_uDevicePixelRatio * 2.0;\n return offset * project_uFocalDistance;\n}\n\nfloat project_size_to_pixel(float meters) {\n return project_size(meters) * project_uScale;\n}\nfloat project_pixel_size(float pixels) {\n return pixels / project_uScale;\n}\nvec2 project_pixel_size(vec2 pixels) {\n return pixels / project_uScale;\n}\nmat3 project_get_orientation_matrix(vec3 up) {\n vec3 uz = normalize(up);\n vec3 ux = abs(uz.z) == 1.0 ? vec3(1.0, 0.0, 0.0) : normalize(vec3(uz.y, -uz.x, 0));\n vec3 uy = cross(uz, ux);\n return mat3(ux, uy, uz);\n}\n\nbool project_needs_rotation(vec3 commonPosition, out mat3 transform) {\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n transform = project_get_orientation_matrix(commonPosition);\n return true;\n }\n return false;\n}\n");const RM={};var NM={name:"project",dependencies:[{name:"fp32",vs:"#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\nconst float TWO_PI = 6.2831854820251465;\nconst float PI_2 = 1.5707963705062866;\nconst float PI_16 = 0.1963495463132858;\n\nconst float SIN_TABLE_0 = 0.19509032368659973;\nconst float SIN_TABLE_1 = 0.3826834261417389;\nconst float SIN_TABLE_2 = 0.5555702447891235;\nconst float SIN_TABLE_3 = 0.7071067690849304;\n\nconst float COS_TABLE_0 = 0.9807852506637573;\nconst float COS_TABLE_1 = 0.9238795042037964;\nconst float COS_TABLE_2 = 0.8314695954322815;\nconst float COS_TABLE_3 = 0.7071067690849304;\n\nconst float INVERSE_FACTORIAL_3 = 1.666666716337204e-01;\nconst float INVERSE_FACTORIAL_5 = 8.333333767950535e-03;\nconst float INVERSE_FACTORIAL_7 = 1.9841270113829523e-04;\nconst float INVERSE_FACTORIAL_9 = 2.75573188446287533e-06;\n\nfloat sin_taylor_fp32(float a) {\n float r, s, t, x;\n\n if (a == 0.0) {\n return 0.0;\n }\n\n x = -a * a;\n s = a;\n r = a;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_3;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_5;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_7;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_9;\n s = s + t;\n\n return s;\n}\n\nvoid sincos_taylor_fp32(float a, out float sin_t, out float cos_t) {\n if (a == 0.0) {\n sin_t = 0.0;\n cos_t = 1.0;\n }\n sin_t = sin_taylor_fp32(a);\n cos_t = sqrt(1.0 - sin_t * sin_t);\n}\n\nfloat tan_taylor_fp32(float a) {\n float sin_a;\n float cos_a;\n\n if (a == 0.0) {\n return 0.0;\n }\n float z = floor(a / TWO_PI);\n float r = a - TWO_PI * z;\n\n float t;\n float q = floor(r / PI_2 + 0.5);\n int j = int(q);\n\n if (j < -2 || j > 2) {\n return 1.0 / 0.0;\n }\n\n t = r - PI_2 * q;\n\n q = floor(t / PI_16 + 0.5);\n int k = int(q);\n int abs_k = int(abs(float(k)));\n\n if (abs_k > 4) {\n return 1.0 / 0.0;\n } else {\n t = t - PI_16 * q;\n }\n\n float u = 0.0;\n float v = 0.0;\n\n float sin_t, cos_t;\n float s, c;\n sincos_taylor_fp32(t, sin_t, cos_t);\n\n if (k == 0) {\n s = sin_t;\n c = cos_t;\n } else {\n if (abs(float(abs_k) - 1.0) < 0.5) {\n u = COS_TABLE_0;\n v = SIN_TABLE_0;\n } else if (abs(float(abs_k) - 2.0) < 0.5) {\n u = COS_TABLE_1;\n v = SIN_TABLE_1;\n } else if (abs(float(abs_k) - 3.0) < 0.5) {\n u = COS_TABLE_2;\n v = SIN_TABLE_2;\n } else if (abs(float(abs_k) - 4.0) < 0.5) {\n u = COS_TABLE_3;\n v = SIN_TABLE_3;\n }\n if (k > 0) {\n s = u * sin_t + v * cos_t;\n c = u * cos_t - v * sin_t;\n } else {\n s = u * sin_t - v * cos_t;\n c = u * cos_t + v * sin_t;\n }\n }\n\n if (j == 0) {\n sin_a = s;\n cos_a = c;\n } else if (j == 1) {\n sin_a = c;\n cos_a = -s;\n } else if (j == -1) {\n sin_a = -c;\n cos_a = s;\n } else {\n sin_a = -s;\n cos_a = -c;\n }\n return sin_a / cos_a;\n}\n#endif\n\nfloat tan_fp32(float a) {\n#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\n return tan_taylor_fp32(a);\n#else\n return tan(a);\n#endif\n}\n",fs:null}],vs:DM,getUniforms:function(t=RM){return t.viewport?function({viewport:t,devicePixelRatio:e=1,modelMatrix:n=null,coordinateSystem:i=Iw.DEFAULT,coordinateOrigin:r,autoWrapLongitude:s=!1}={}){i===Iw.DEFAULT&&(i=t.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN);const o=aT({viewport:t,devicePixelRatio:e,coordinateSystem:i,coordinateOrigin:r});return o.project_uWrapLongitude=s,o.project_uModelMatrix=n||rT,o}(t):{}}};const LM=$O(function({viewport:t,center:e}){return new bT(t.viewProjectionMatrix).invert().transform(e)}),jM=$O(function({viewport:t,shadowMatrices:e}){const n=[],i=t.pixelUnprojectionMatrix,r=t.isGeospatial?void 0:1,s=[[0,0,r],[t.width,0,r],[0,t.height,r],[t.width,t.height,r],[0,0,-1],[t.width,0,-1],[0,t.height,-1],[t.width,t.height,-1]].map(t=>function(t,e){const[n,i,r]=t,s=LT([n,i,r],e);return Number.isFinite(r)?s:[s[0],s[1],0]}(t,i));for(const o of e){const e=o.clone().translate(new nE(t.center).negate()),i=s.map(t=>e.transform(t)),r=(new bT).ortho({left:Math.min(...i.map(t=>t[0])),right:Math.max(...i.map(t=>t[0])),bottom:Math.min(...i.map(t=>t[1])),top:Math.max(...i.map(t=>t[1])),near:Math.min(...i.map(t=>-t[2])),far:Math.max(...i.map(t=>-t[2]))});n.push(r.multiplyRight(o))}return n}),FM=[0,0,0,1],BM=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0];var VM={name:"shadow",dependencies:[NM],vs:"\nconst int max_lights = 2;\nuniform mat4 shadow_uViewProjectionMatrices[max_lights];\nuniform vec4 shadow_uProjectCenters[max_lights];\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform int shadow_uLightId;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nvec4 shadow_setVertexPosition(vec4 position_commonspace) {\n if (shadow_uDrawShadowMap) {\n return project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[shadow_uLightId], shadow_uProjectCenters[shadow_uLightId]);\n }\n if (shadow_uUseShadowMap) {\n for (int i = 0; i < max_lights; i++) {\n if(i < int(shadow_uLightCount)) {\n vec4 shadowMap_position = project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[i], shadow_uProjectCenters[i]);\n shadow_vPosition[i] = (shadowMap_position.xyz / shadowMap_position.w + 1.0) / 2.0;\n }\n }\n }\n return gl_Position;\n}\n",fs:"\nconst int max_lights = 2;\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform sampler2D shadow_uShadowMap0;\nuniform sampler2D shadow_uShadowMap1;\nuniform vec4 shadow_uColor;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nconst vec4 bitPackShift = vec4(1.0, 255.0, 65025.0, 16581375.0);\nconst vec4 bitUnpackShift = 1.0 / bitPackShift;\nconst vec4 bitMask = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n\nfloat shadow_getShadowWeight(vec3 position, sampler2D shadowMap) {\n vec4 rgbaDepth = texture2D(shadowMap, position.xy);\n\n float z = dot(rgbaDepth, bitUnpackShift);\n return smoothstep(0.001, 0.01, position.z - z);\n}\n\nvec4 shadow_filterShadowColor(vec4 color) {\n if (shadow_uDrawShadowMap) {\n vec4 rgbaDepth = fract(gl_FragCoord.z * bitPackShift);\n rgbaDepth -= rgbaDepth.gbaa * bitMask;\n return rgbaDepth;\n }\n if (shadow_uUseShadowMap) {\n float shadowAlpha = 0.0;\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[0], shadow_uShadowMap0);\n if(shadow_uLightCount > 1.0) {\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[1], shadow_uShadowMap1);\n }\n shadowAlpha *= shadow_uColor.a / shadow_uLightCount;\n float blendedAlpha = shadowAlpha + color.a * (1.0 - shadowAlpha);\n\n return vec4(\n mix(color.rgb, shadow_uColor.rgb, shadowAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n return color;\n}\n",inject:{"vs:DECKGL_FILTER_GL_POSITION":"\n position = shadow_setVertexPosition(geometry.position);\n ","fs:DECKGL_FILTER_COLOR":"\n color = shadow_filterShadowColor(color);\n "},getUniforms:(t={},e={})=>{if(t.drawToShadowMap||t.shadowMaps&&t.shadowMaps.length>0){const{shadowEnabled:n=!0}=t;return n&&t.shadowMatrices&&t.shadowMatrices.length>0?function(t={},e={}){const n={shadow_uDrawShadowMap:Boolean(t.drawToShadowMap),shadow_uUseShadowMap:!!t.shadowMaps&&t.shadowMaps.length>0,shadow_uColor:t.shadowColor||FM,shadow_uLightId:t.shadowLightId||0,shadow_uLightCount:t.shadowMatrices.length},i=LM({viewport:t.viewport,center:e.project_uCenter}),r=[],s=jM({shadowMatrices:t.shadowMatrices,viewport:t.viewport}).slice();for(let o=0;o0?t.shadowMaps[o]:t.dummyShadowMap;return n}(t,e):{shadow_uDrawShadowMap:!1,shadow_uUseShadowMap:!1}}return{}}};const zM={color:[255,255,255],intensity:1},UM=[{color:[255,255,255],intensity:1,direction:[-1,3,-1]},{color:[255,255,255],intensity:.9,direction:[1,-8,-2.5]}],HM=[0,0,0,200/255];class $M extends TM{constructor(t){super(t),this.ambientLight=null,this.directionalLights=[],this.pointLights=[],this.shadowColor=HM,this.shadowPasses=[],this.shadowMaps=[],this.dummyShadowMap=null,this.shadow=!1,this.programManager=null;for(const e in t){const n=t[e];switch(n.type){case"ambient":this.ambientLight=n;break;case"directional":this.directionalLights.push(n);break;case"point":this.pointLights.push(n)}}this._applyDefaultLights(),this.shadow=this.directionalLights.some(t=>t.shadow)}preRender(t,{layers:e,layerFilter:n,viewports:i,onViewportActive:r,views:s}){if(this.shadow){this.shadowMatrices=this._createLightMatrix(),0===this.shadowPasses.length&&this._createShadowPasses(t),this.programManager||(this.programManager=sO.getDefaultProgramManager(t),VM&&this.programManager.addDefaultModule(VM)),this.dummyShadowMap||(this.dummyShadowMap=new lS(t,{width:1,height:1}));for(let t=0;te.getProjectedLight({layer:t})),pointLights:this.pointLights.map(e=>e.getProjectedLight({layer:t}))},e}cleanup(){for(const t of this.shadowPasses)t.delete();this.shadowPasses.length=0,this.shadowMaps.length=0,this.dummyShadowMap&&(this.dummyShadowMap.delete(),this.dummyShadowMap=null),this.shadow&&this.programManager&&(this.programManager.removeDefaultModule(VM),this.programManager=null)}_createLightMatrix(){const t=[];for(const e of this.directionalLights){const n=(new bT).lookAt({eye:new nE(e.direction).negate()});t.push(n)}return t}_createShadowPasses(t){for(let e=0;e=e.delay+e.duration*e.repeat}getTime(t){if(void 0===t)return this.time;const e=this.channels.get(t);return void 0===e?-1:e.time}setTime(t){this.time=Math.max(0,t);const e=this.channels.values();for(const i of e)this._setChannelTime(i,this.time);const n=this.animations.values();for(const i of n){const{animation:t,channel:e}=i;t.setTime(this.getTime(e))}}play(){this.playing=!0}pause(){this.playing=!1,this.lastEngineTime=-1}reset(){this.setTime(0)}attachAnimation(t,e){const n=WM++;return this.animations.set(n,{animation:t,channel:e}),t.setTime(this.getTime(e)),n}detachAnimation(t){this.animations.delete(t)}update(t){this.playing&&(-1===this.lastEngineTime&&(this.lastEngineTime=t),this.setTime(this.time+(t-this.lastEngineTime)),this.lastEngineTime=t)}_setChannelTime(t,e){const n=e-t.delay;n>=t.duration*t.repeat?t.time=t.duration*t.rate:(t.time=Math.max(0,n)%t.duration,t.time*=t.rate)}}class XM{constructor(t,e,n){this.id=t,this.context=n,this._loadCount=0,this._subscribers=new Set,this.setData(e)}subscribe(t){this._subscribers.add(t)}unsubscribe(t){this._subscribers.delete(t)}inUse(){return this._subscribers.size>0}delete(){}getData(){return this.isLoaded?this._error?Promise.reject(this._error):this._content:this._loader.then(()=>this.getData())}setData(t,e){if(t===this._data&&!e)return;this._data=t;const n=++this._loadCount;let i=t;"string"==typeof t&&(i=AP(t)),i instanceof Promise?(this.isLoaded=!1,this._loader=i.then(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=null,this._content=t)}).catch(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=t||!0)})):(this.isLoaded=!0,this._error=null,this._content=t);for(const r of this._subscribers)r.onChange(this.getData())}}class YM{constructor({gl:t,protocol:e}){this.protocol=e||"resource://",this._context={gl:t,resourceManager:this},this._resources={},this._consumers={},this._pruneRequest=null}contains(t){return!!t.startsWith(this.protocol)||t in this._resources}add({resourceId:t,data:e,forceUpdate:n=!1,persistent:i=!0}){let r=this._resources[t];r?r.setData(e,n):(r=new XM(t,e,this._context),this._resources[t]=r),r.persistent=i}remove(t){const e=this._resources[t];e&&(e.delete(),delete this._resources[t])}unsubscribe({consumerId:t}){const e=this._consumers[t];if(e){for(const t in e){const n=e[t];n.resource&&n.resource.unsubscribe(n)}delete this._consumers[t],this.prune()}}subscribe({resourceId:t,onChange:e,consumerId:n,requestId:i="default"}){const{_resources:r,protocol:s}=this;t.startsWith(s)&&(r[t=t.replace(s,"")]||this.add({resourceId:t,data:null,persistent:!1}));const o=r[t];if(this._track(n,i,o,e),o)return o.getData()}prune(){this._pruneRequest||(this._pruneRequest=setTimeout(()=>this._prune(),0))}finalize(){for(const t in this._resources)this._resources[t].delete()}_track(t,e,n,i){const r=this._consumers,s=r[t]=r[t]||{},o=s[e]||{};o.resource&&(o.resource.unsubscribe(o),o.resource=null,this.prune()),n&&(s[e]=o,o.onChange=i,o.resource=n,n.subscribe(o))}_prune(){this._pruneRequest=null;for(const t of Object.keys(this._resources)){const e=this._resources[t];!e.persistent&&!e.inUse()&&(e.delete(),delete this._resources[t])}}}const KM=[{name:"geometry",vs:"\nstruct VertexGeometry {\n vec4 position;\n vec3 worldPosition;\n vec3 worldPositionAlt;\n vec3 normal;\n vec2 uv;\n vec3 pickingColor;\n} geometry;\n",fs:"\n#define SMOOTH_EDGE_RADIUS 0.5\n\nstruct FragmentGeometry {\n vec2 uv;\n} geometry;\n\nfloat smoothedge(float edge, float x) {\n return smoothstep(edge - SMOOTH_EDGE_RADIUS, edge + SMOOTH_EDGE_RADIUS, x);\n}\n"},NM],QM=["vs:DECKGL_FILTER_SIZE(inout vec3 size, VertexGeometry geometry)","vs:DECKGL_FILTER_GL_POSITION(inout vec4 position, VertexGeometry geometry)","vs:DECKGL_FILTER_COLOR(inout vec4 color, VertexGeometry geometry)","fs:DECKGL_FILTER_COLOR(inout vec4 color, FragmentGeometry geometry)"];function ZM(t){const e=sO.getDefaultProgramManager(t);for(const n of KM)e.addDefaultModule(n);for(const n of QM)e.addShaderHook(n);return e}const JM=Object.seal({layerManager:null,resourceManager:null,deck:null,gl:null,stats:null,shaderCache:null,pickingFBO:null,mousePosition:null,userData:{}});class tI{constructor(t,{deck:e,stats:n,viewport:i,timeline:r}={}){this.lastRenderedLayers=[],this.layers=[],this.resourceManager=new YM({gl:t,protocol:"deck://"}),this.context=ii(wt({},JM),{layerManager:this,gl:t,deck:e,programManager:t&&ZM(t),stats:n||new Mx({id:"deck.gl"}),viewport:i||new WT({id:"DEFAULT-INITIAL-VIEWPORT"}),timeline:r||new qM,resourceManager:this.resourceManager}),this._nextLayers=null,this._needsRedraw="Initial render",this._needsUpdate=!1,this._debug=!1,this.activateViewport=this.activateViewport.bind(this),Object.seal(this)}finalize(){this.resourceManager.finalize();for(const t of this.layers)this._finalizeLayer(t)}needsRedraw(t={clearRedrawFlags:!1}){let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);for(const n of this.layers){const i=n.getNeedsRedraw(t);e=e||i}return e}needsUpdate(){return this._nextLayers&&this._nextLayers!==this.lastRenderedLayers?"layers changed":this._needsUpdate}setNeedsRedraw(t){this._needsRedraw=this._needsRedraw||t}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t}getLayers({layerIds:t=null}={}){return t?this.layers.filter(e=>t.find(t=>0===e.id.indexOf(t))):this.layers}setProps(t){"debug"in t&&(this._debug=t.debug),"userData"in t&&(this.context.userData=t.userData),"layers"in t&&(this._nextLayers=t.layers),"onError"in t&&(this.context.onError=t.onError)}setLayers(t,e){PE("layerManager.setLayers",this,e,t),this.lastRenderedLayers=t,t=gE(t,Boolean);for(const n of t)n.context=this.context;return this._updateLayers(this.layers,t),this}updateLayers(){const t=this.needsUpdate();t&&(this.setNeedsRedraw("updating layers: ".concat(t)),this.setLayers(this._nextLayers||this.lastRenderedLayers,t)),this._nextLayers=null}activateViewport(t){return PE("layerManager.activateViewport",this,t),t&&(this.context.viewport=t),this}_handleError(t,e,n){n.raiseError(e,"".concat(t," of ").concat(n))}_updateLayers(t,e){const n={};for(const s of t)n[s.id]?Mw.warn("Multiple old layers with same id ".concat(s.id))():n[s.id]=s;const i=[];this._updateSublayersRecursively(e,n,i),this._finalizeOldLayers(n);let r=!1;for(const s of i)if(s.hasUniformTransition()){r=!0;break}this._needsUpdate=r,this.layers=i}_updateSublayersRecursively(t,e,n){for(const r of t){r.context=this.context;const t=e[r.id];null===t&&Mw.warn("Multiple new layers with same id ".concat(r.id))(),e[r.id]=null;let s=null;try{this._debug&&t!==r&&r.validateProps(),t?(this._transferLayerState(t,r),this._updateLayer(r)):this._initializeLayer(r),n.push(r),s=r.isComposite&&r.getSubLayers()}catch(i){this._handleError("matching",i,r)}s&&this._updateSublayersRecursively(s,e,n)}}_finalizeOldLayers(t){for(const e in t){const n=t[e];n&&this._finalizeLayer(n)}}_initializeLayer(t){try{t._initialize(),t.lifecycle="Initialized"}catch(e){this._handleError("initialization",e,t)}}_transferLayerState(t,e){e._transferState(t),e.lifecycle="Matched. State transferred from previous layer",e!==t&&(t.lifecycle="Discarded. Awaiting garbage collection")}_updateLayer(t){try{t._update()}catch(e){this._handleError("update",e,t)}}_finalizeLayer(t){this._needsRedraw=this._needsRedraw||"finalized ".concat(t),t.lifecycle="No longer matched. Awaiting garbage collection";try{t._finalize(),t.lifecycle="Finalized! Awaiting garbage collection"}catch(e){this._handleError("finalization",e,t)}}}class eI{constructor(t={}){this.views=[],this.width=100,this.height=100,this.viewState={},this.controllers={},this.timeline=t.timeline,this._viewports=[],this._viewportMap={},this._isUpdating=!1,this._needsRedraw="Initial render",this._needsUpdate=!0,this._eventManager=t.eventManager,this._eventCallbacks={onViewStateChange:t.onViewStateChange,onInteractionStateChange:t.onInteractionStateChange},Object.seal(this),this.setProps(t)}finalize(){for(const t in this.controllers)this.controllers[t]&&this.controllers[t].finalize();this.controllers={}}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t,this._needsRedraw=this._needsRedraw||t}updateViewStates(){for(const t in this.controllers){const e=this.controllers[t];e&&e.updateTransition()}}getViewports(t){return t?this._viewports.filter(e=>e.containsPixel(t)):this._viewports}getViews(){const t={};return this.views.forEach(e=>{t[e.id]=e}),t}getView(t){return"string"==typeof t?this.views.find(e=>e.id===t):t}getViewState(t){const e=this.getView(t),n=e&&this.viewState[e.getViewStateId()]||this.viewState;return e?e.filterViewState(n):n}getViewport(t){return this._viewportMap[t]}unproject(t,e){const n=this.getViewports(),i={x:t[0],y:t[1]};for(let r=n.length-1;r>=0;--r){const s=n[r];if(s.containsPixel(i)){const n=t.slice();return n[0]-=s.x,n[1]-=s.y,s.unproject(n,e)}}return null}setProps(t){"views"in t&&this._setViews(t.views),"viewState"in t&&this._setViewState(t.viewState),("width"in t||"height"in t)&&this._setSize(t.width,t.height),this._isUpdating||this._update()}_update(){this._isUpdating=!0,this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._isUpdating=!1}_setSize(t,e){(t!==this.width||e!==this.height)&&(this.width=t,this.height=e,this.setNeedsUpdate("Size changed"))}_setViews(t){t=gE(t,Boolean),this._diffViews(t,this.views)&&this.setNeedsUpdate("views changed"),this.views=t}_setViewState(t){t?(!zP(t,this.viewState)&&this.setNeedsUpdate("viewState changed"),this.viewState=t):Mw.warn("missing `viewState` or `initialViewState`")()}_onViewStateChange(t,e){e.viewId=t,this._eventCallbacks.onViewStateChange&&this._eventCallbacks.onViewStateChange(e)}_createController(t,e){return new(0,e.type)(wt({timeline:this.timeline,eventManager:this._eventManager,onViewStateChange:this._onViewStateChange.bind(this,e.id),onStateChange:this._eventCallbacks.onInteractionStateChange,makeViewport:e=>t._getViewport(e,{width:e.width,height:e.height})},e))}_updateController(t,e,n,i){let r=t.controller;return r?(r=ii(wt(wt(wt({},e),t.props),r),{id:t.id,x:n.x,y:n.y,width:n.width,height:n.height}),i?i.setProps(r):i=this._createController(t,r),i):null}_rebuildViewports(){const{width:t,height:e,views:n}=this,i=this.controllers;this._viewports=[],this.controllers={};let r=!1;for(let s=n.length;s--;){const o=n[s],a=this.getViewState(o),l=o.makeViewport({width:t,height:e,viewState:a});let c=i[o.id];o.controller&&!c&&(r=!0),(r||!o.controller)&&c&&(c.finalize(),c=null),this.controllers[o.id]=this._updateController(o,a,l,c),this._viewports.unshift(l)}for(const s in i)i[s]&&!this.controllers[s]&&i[s].finalize();this._buildViewportMap()}_buildViewportMap(){this._viewportMap={},this._viewports.forEach(t=>{t.id&&(this._viewportMap[t.id]=this._viewportMap[t.id]||t)})}_diffViews(t,e){return t.length!==e.length||t.some((n,i)=>!t[i].equals(e[i]))}}class nI extends sM{constructor({makeViewport:t,width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o=0,pitch:a=0,altitude:l=1.5,maxZoom:c=20,minZoom:u=0,maxPitch:h=60,minPitch:d=0,startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y,normalize:v}={}){uE(Number.isFinite(r)),uE(Number.isFinite(i)),uE(Number.isFinite(s)),super({width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o,pitch:a,altitude:l,maxZoom:c,minZoom:u,maxPitch:h,minPitch:d,normalize:v}),this._state={startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanLngLat:this._unproject(t)})}pan({pos:t,startPos:e}){const n=this._state.startPanLngLat||this._unproject(e);if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanLngLat:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startBearing:this._viewportProps.bearing,startPitch:this._viewportProps.pitch})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startBearing:r,startPitch:s}=this._state;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let o;return o=t?this._calculateNewPitchAndBearing(ii(wt({},this._getRotationParams(t,i)),{startBearing:r,startPitch:s})):{bearing:r+e,pitch:s+n},this._getUpdatedState(o)}rotateEnd(){return this._getUpdatedState({startBearing:null,startPitch:null})}zoomStart({pos:t}){return this._getUpdatedState({startZoomLngLat:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){let{startZoom:i,startZoomLngLat:r}=this._state;Number.isFinite(i)||(i=this._viewportProps.zoom,r=this._unproject(e)||this._unproject(t));const s=this._calculateNewZoom({scale:n,startZoom:i}),o=this.makeViewport(ii(wt({},this._viewportProps),{zoom:s}));return this._getUpdatedState(wt({zoom:s},o.panByPosition(r,t)))}zoomEnd(){return this._getUpdatedState({startZoomLngLat:null,startZoom:null})}zoomIn(t=2){return this._zoomFromCenter(t)}zoomOut(t=2){return this._zoomFromCenter(1/t)}moveLeft(t=100){return this._panFromCenter([t,0])}moveRight(t=100){return this._panFromCenter([-t,0])}moveUp(t=100){return this._panFromCenter([0,t])}moveDown(t=100){return this._panFromCenter([0,-t])}rotateLeft(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing-t})}rotateRight(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing+t})}rotateUp(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch+t})}rotateDown(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch-t})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{bearing:i,longitude:r}=n;return Math.abs(i-e.bearing)>180&&(n.bearing=i<0?i+360:i-360),Math.abs(r-e.longitude)>180&&(n.longitude=r<0?r+360:r-360),n}_zoomFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.zoom({pos:[e/2,n/2],scale:t})}_panFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.pan({startPos:[e/2,n/2],pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new this.constructor(wt(wt(wt({makeViewport:this.makeViewport},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i}=t;t.zoom=LS(i,n,e);const{maxPitch:r,minPitch:s,pitch:o}=t;t.pitch=LS(o,s,r);const{normalize:a=!0}=t;return a&&Object.assign(t,function({width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s=0,bearing:o=0}){(n<-180||n>180)&&(n=vT(n+180,360)-180),(o<-180||o>180)&&(o=vT(o+180,360)-180);const a=_T(e/512);if(r<=a)r=a,i=0;else{const t=e/2/Math.pow(2,r),n=kT([0,t])[1];if(ie&&(i=e)}}return{width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s,bearing:o}}(t)),t}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return LS(e+Math.log2(t),i,n)}_calculateNewPitchAndBearing({deltaScaleX:t,deltaScaleY:e,startBearing:n,startPitch:i}){e=LS(e,-1,1);const{minPitch:r,maxPitch:s}=this._viewportProps;let o=i;return e>0?o=i+e*(s-i):e<0&&(o=i-e*(r-i)),{pitch:o,bearing:n+180*t}}_getRotationParams(t,e){const n=t[0]-e[0],i=t[1]-e[1],r=t[1],s=e[1],{width:o,height:a}=this._viewportProps,l=n/o;let c=0;return i>0?Math.abs(a-s)>5&&(c=i/(s-a)*1.2):i<0&&s>5&&(c=1-r/s),c=Math.min(1,Math.max(-1,c)),{deltaScaleX:l,deltaScaleY:c}}}class iI extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(nI,t)}setProps(t){const e=this.controllerStateProps;super.setProps(t),(!e||e.height!==t.height)&&this.updateViewport(new this.ControllerState(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state)))}get linearTransitionProps(){return["longitude","latitude","zoom","bearing","pitch"]}}let rI=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:qT}))}get controller(){return this._getControllerProps({type:iI})}}return t.displayName="MapView",t})();const sI=new $M;class oI{constructor(){this.effects=[],this._internalEffects=[],this._needsRedraw="Initial render",this.setEffects()}setProps(t){"effects"in t&&(t.effects.length!==this.effects.length||!zP(t.effects,this.effects))&&(this.setEffects(t.effects),this._needsRedraw="effects changed")}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}getEffects(){return this._internalEffects}finalize(){this.cleanup()}setEffects(t=[]){this.cleanup(),this.effects=t,this._createInternalEffects()}cleanup(){for(const t of this.effects)t.cleanup();for(const t of this._internalEffects)t.cleanup();this.effects.length=0,this._internalEffects.length=0}_createInternalEffects(){this._internalEffects=this.effects.slice(),this.effects.some(t=>t instanceof $M)||this._internalEffects.push(sI)}}class aI extends kM{}const lI={blendFunc:[1,0,32771,0],blendEquation:32774};class cI extends kM{render(t){t.pickingFBO?(this.useAlpha=!0,this._drawPickingBuffer(t)):(this.useAlpha=!1,super.render(t))}_drawPickingBuffer({layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pickingFBO:s,deviceRect:{x:o,y:a,width:l,height:c},pass:u="picking",redrawReason:h,pickZ:d}){const p=this.gl;return this.pickZ=d,vx(p,ii(wt({scissorTest:!0,scissor:[o,a,l,c],clearColor:[0,0,0,0],depthMask:!0,depthTest:!0,depthRange:[0,1],colorMask:[!0,!0,!0,!0]},lI),{blend:!d}),()=>{super.render({target:s,layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pass:u,redrawReason:h})})}shouldDrawLayer(t){return t.props.pickable}getModuleParameters(){return{pickingActive:1,pickingAttribute:this.pickZ,lightSources:{}}}getLayerParameters(t,e){const n=this.pickZ?{blend:!1}:ii(wt({},lI),{blend:!0,blendColor:[0,0,0,this.useAlpha?(e+1)/255:1]});return wt(wt({},t.props.parameters),n)}}class uI{constructor(t){this.gl=t,this.layerFilter=null,this.drawPickingColors=!1,this.drawLayersPass=new aI(t),this.pickLayersPass=new cI(t),this.renderCount=0,this._needsRedraw="Initial render",this.renderBuffers=[],this.lastPostProcessEffect=null}setProps(t){"layerFilter"in t&&this.layerFilter!==t.layerFilter&&(this.layerFilter=t.layerFilter,this._needsRedraw="layerFilter changed"),"drawPickingColors"in t&&this.drawPickingColors!==t.drawPickingColors&&(this.drawPickingColors=t.drawPickingColors,this._needsRedraw="drawPickingColors changed")}renderLayers(t){const e=this.drawPickingColors?this.pickLayersPass:this.drawLayersPass;t.layerFilter=this.layerFilter,t.effects=t.effects||[],t.target=t.target||SS.getDefaultFramebuffer(this.gl),this._preRender(t.effects,t);const n=this.lastPostProcessEffect?this.renderBuffers[0]:t.target,i=e.render(ii(wt({},t),{target:n}));this._postRender(t.effects,t),this.renderCount++,PE("deckRenderer.renderLayers",this,i,t)}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}finalize(){const{renderBuffers:t}=this;for(const e of t)e.delete();t.length=0}_preRender(t,e){let n=null;for(const i of t)i.preRender(this.gl,e),i.postRender&&(n=i);n&&this._resizeRenderBuffers(),this.lastPostProcessEffect=n}_resizeRenderBuffers(){const{renderBuffers:t}=this;0===t.length&&t.push(new SS(this.gl),new SS(this.gl));for(const e of t)e.resize()}_postRender(t,e){const{renderBuffers:n}=this,i={inputBuffer:n[0],swapBuffer:n[1],target:null};for(const r of t)if(r.postRender){if(r===this.lastPostProcessEffect){i.target=e.target,r.postRender(this.gl,i);break}const t=r.postRender(this.gl,i);i.inputBuffer=t,i.swapBuffer=t===n[0]?n[1]:n[0]}}}const hI={pickedColor:null,pickedLayer:null,pickedObjectIndex:-1};function dI({pickedColors:t,layers:e,deviceX:n,deviceY:i,deviceRadius:r,deviceRect:s}){if(t){const{x:o,y:a,width:l,height:c}=s;let u=r*r,h=-1,d=0;for(let e=0;eu)d+=4*l;else for(let e=0;e=0){const t=e+o-n,i=t*t+s;i<=u&&(u=i,h=d)}d+=4}}if(h>=0){const n=t[h+3]-1,i=t.slice(h,h+4),r=e[n];if(r){const t=r.decodePickingColor(i),e=Math.floor(h/4/l);return{pickedColor:i,pickedLayer:r,pickedObjectIndex:t,pickedX:o+(h/4-e*l),pickedY:a+e}}Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}return hI}function pI({pickInfo:t,mode:e,viewports:n,layerFilter:i,pixelRatio:r,x:s,y:o,z:a}){const l=t&&t.pickedLayer,c=function(t,e,n){for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.containsPixel(e)&&(!n||n(r)))return r}return t[0]}(n,{x:s,y:o},i&&l&&(t=>i({layer:l,viewport:t,isPicking:!0,renderPass:"picking:".concat(e)}))),u=c&&c.unproject([s-c.x,o-c.y],{targetZ:a});return{color:null,layer:null,viewport:c,index:-1,picked:!1,x:s,y:o,pixel:[s,o],coordinate:u,devicePixel:t&&[t.pickedX,t.pickedY],pixelRatio:r}}function fI(t){const{pickInfo:e,lastPickedInfo:n,mode:i,layers:r}=t,{pickedColor:s,pickedLayer:o,pickedObjectIndex:a}=e,l=o?[o]:[];if("hover"===i){const t=n.index,e=n.layerId,i=o&&o.props.id;if(i!==e||a!==t){if(i!==e){const t=r.find(t=>t.props.id===e);t&&l.unshift(t)}n.layerId=i,n.index=a,n.info=null}}const c=pI(t),u=new Map;return u.set(null,c),l.forEach(t=>{let e=wt({},c);t===o&&(e.color=s,e.index=a,e.picked=!0),e=gI({layer:t,info:e,mode:i}),t===o&&"hover"===i&&(n.info=e),u.set(e.layer.id,e),"hover"===i&&e.layer.updateAutoHighlight(e)}),u}function gI({layer:t,info:e,mode:n}){for(;t&&e;){const i=e.layer||null;e.sourceLayer=i,e.layer=t,e=t.getPickingInfo({info:e,mode:n,sourceLayer:i}),t=t.parent}return e}class mI{constructor(t){this.gl=t,this.pickingFBO=null,this.pickLayersPass=new cI(t),this.layerFilter=null,this.lastPickedInfo={index:-1,layerId:null,info:null}}setProps(t){"layerFilter"in t&&(this.layerFilter=t.layerFilter),"_pickable"in t&&(this._pickable=t._pickable)}finalize(){this.pickingFBO&&this.pickingFBO.delete(),this.depthFBO&&(this.depthFBO.color.delete(),this.depthFBO.delete())}pickObject(t){return this._pickClosestObject(t)}pickObjects(t){return this._pickVisibleObjects(t)}getLastPickedObject({x:t,y:e,layers:n,viewports:i},r=this.lastPickedInfo.info){const s=r&&r.layer&&r.layer.id,o=r&&r.viewport&&r.viewport.id,a=s?n.find(t=>t.id===s):null,l=o&&i.find(t=>t.id===o)||i[0],c=l&&l.unproject([t-l.x,e-l.y]),u={x:t,y:e,viewport:l,coordinate:c,layer:a};return a?wt(wt({},r),u):Object.assign(u,{color:null,object:null,index:-1})}_resizeBuffer(){const{gl:t}=this;return this.pickingFBO||(this.pickingFBO=new SS(t),SS.isSupported(t,{colorBufferFloat:!0})&&(this.depthFBO=new SS(t),this.depthFBO.attach({36064:new lS(t,{format:Fw(t)?34836:6408,type:5126})}))),this.pickingFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.depthFBO&&this.depthFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.pickingFBO}_getPickable(t){if(!1===this._pickable)return null;const e=t.filter(t=>t.isPickable()&&!t.isComposite);return e.length>255?(Mw.warn("Too many pickable layers, only picking the first 255")(),e.slice(0,255)):e.length?e:null}_pickClosestObject({layers:t,views:e,viewports:n,x:i,y:r,radius:s=0,depth:o=1,mode:a="query",unproject3D:l,onViewportActive:c}){if(!(t=this._getPickable(t)))return{result:[],emptyInfo:pI({viewports:n,x:i,y:r})};this._resizeBuffer();const u=_x(this.gl),h=wx(this.gl,[i,r],!0),d=[h.x+Math.floor(h.width/2),h.y+Math.floor(h.height/2)],p=Math.round(s*u),{width:f,height:g}=this.pickingFBO,m=this._getPickingRect({deviceX:d[0],deviceY:d[1],deviceRadius:p,deviceWidth:f,deviceHeight:g});let b;const y=[],v={};for(let _=0;_=0){const s=t.slice(i,i+4),o=s.join(",");if(!n.has(o)){const t=e[r];t?n.set(o,{pickedColor:s,pickedLayer:t,pickedObjectIndex:t.decodePickingColor(s)}):Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}}return Array.from(n.values())}({pickedColors:this._drawAndSample({layers:t,views:e,viewports:n,onViewportActive:c,deviceRect:{x:d,y:g,width:f.x+f.width-d,height:p-g},pass:"picking:".concat(a),redrawReason:a}),layers:t}),b=new Map,y=Number.isFinite(l);for(let v=0;v=l);v++){const t=m[v];let e={color:t.pickedColor,layer:null,index:t.pickedObjectIndex,picked:!0,x:i,y:r,width:s,height:o,pixelRatio:u};e=gI({layer:t.pickedLayer,info:e,mode:a}),b.has(e.object)||b.set(e.object,e)}return Array.from(b.values())}_drawAndSample({layers:t,views:e,viewports:n,onViewportActive:i,deviceRect:r,pass:s,redrawReason:o,pickZ:a}){if(t.length<1)return null;const l=a?this.depthFBO:this.pickingFBO;this.pickLayersPass.render({layers:t,layerFilter:this.layerFilter,views:e,viewports:n,onViewportActive:i,pickingFBO:l,deviceRect:r,pass:s,redrawReason:o,pickZ:a});const{x:c,y:u,width:h,height:d}=r,p=new(a?Float32Array:Uint8Array)(h*d*4);return _S(l,{sourceX:c,sourceY:u,sourceWidth:h,sourceHeight:d,target:p}),p}_getPickingRect({deviceX:t,deviceY:e,deviceRadius:n,deviceWidth:i,deviceHeight:r}){const s=Math.max(0,t-n),o=Math.max(0,e-n),a=Math.min(i,t+n+1)-s,l=Math.min(r,e+n+1)-o;return a<=0||l<=0?null:{x:s,y:o,width:a,height:l}}}const bI={zIndex:1,position:"absolute",pointerEvents:"none",color:"#a0a7b4",backgroundColor:"#29323c",padding:"10px",top:0,left:0,display:"none"};class yI{constructor(t){const e=t.parentElement;e&&(this.el=document.createElement("div"),this.el.className="deck-tooltip",Object.assign(this.el.style,bI),e.appendChild(this.el)),this.isVisible=!1}setTooltip(t,e,n){const i=this.el;if("string"==typeof t)i.innerText=t;else{if(!t)return this.isVisible=!1,void(i.style.display="none");"text"in t&&(i.innerText=t.text),"html"in t&&(i.innerHTML=t.html),"className"in t&&(i.className=t.className),Object.assign(i.style,t.style)}this.isVisible=!0,i.style.display="block",i.style.transform="translate(".concat(e,"px, ").concat(n,"px)")}remove(){this.el&&this.el.remove()}}function vI(t,e){if(!t)throw new Error(e)}const _I={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},wI=_I.global||_I.self||_I.window,xI="object"!=typeof process||"[object process]"!==String(process)||process.browser,SI="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),{_parseImageNode:EI}=(SI&&parseFloat(SI[1]),wI),CI="undefined"!=typeof Image,OI="undefined"!=typeof ImageBitmap,TI=Boolean(EI),kI=!!xI||TI;function AI(t){const e=function(t){return"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?"imagebitmap":"undefined"!=typeof Image&&t instanceof Image?"image":t&&"object"==typeof t&&t.data&&t.width&&t.height?"data":null}(t);if(!e)throw new Error("Not an image");return e}function PI(t){switch(AI(t)){case"data":return t;case"image":case"imagebitmap":const e=document.createElement("canvas"),n=e.getContext("2d");if(!n)throw new Error("getImageData");return e.width=t.width,e.height=t.height,n.drawImage(t,0,0),n.getImageData(0,0,t.width,t.height);default:throw new Error("getImageData")}}const MI=/^data:image\/svg\+xml/,II=/\.svg((\?|#).*)?$/;function DI(t){return t&&(MI.test(t)||II.test(t))}function RI(t,e){if(DI(e)){let e=(new TextDecoder).decode(t);try{"function"==typeof unescape&&"function"==typeof encodeURIComponent&&(e=unescape(encodeURIComponent(e)))}catch(n){throw new Error(n.message)}return`data:image/svg+xml;base64,${btoa(e)}`}return NI(t,e)}function NI(t,e){if(DI(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}function LI(t,e,n){return jI.apply(this,arguments)}function jI(){return(jI=gS(function*(t,e,n){const i=RI(t,n),r=self.URL||self.webkitURL,s="string"!=typeof i&&r.createObjectURL(i);try{return yield FI(s||i,e)}finally{s&&r.revokeObjectURL(s)}})).apply(this,arguments)}function FI(t,e){return BI.apply(this,arguments)}function BI(){return(BI=gS(function*(t,e){const n=new Image;return n.src=t,e.image&&e.image.decode&&n.decode?(yield n.decode(),n):yield new Promise((e,i)=>{try{n.onload=()=>e(n),n.onerror=e=>i(new Error(`Could not load image ${t}: ${e}`))}catch(r){i(r)}})})).apply(this,arguments)}const VI={};let zI=!0;function UI(t,e,n){return HI.apply(this,arguments)}function HI(){return(HI=gS(function*(t,e,n){let i;i=DI(n)?yield LI(t,e,n):NI(t,n);const r=e&&e.imagebitmap;return yield $I(i,r)})).apply(this,arguments)}function $I(t){return GI.apply(this,arguments)}function GI(){return(GI=gS(function*(t,e=null){if((WI(e)||!zI)&&(e=null),e)try{return yield createImageBitmap(t,e)}catch(n){console.warn(n),zI=!1}return yield createImageBitmap(t)})).apply(this,arguments)}function WI(t){for(const e in t||VI)return!1;return!0}const qI=!1,XI=!0;function YI(t){const e=KI(t);return function(t){const e=KI(t);return e.byteLength>=24&&2303741511===e.getUint32(0,qI)?{mimeType:"image/png",width:e.getUint32(16,qI),height:e.getUint32(20,qI)}:null}(e)||function(t){const e=KI(t);if(!(e.byteLength>=3&&65496===e.getUint16(0,qI)&&255===e.getUint8(2)))return null;const{tableMarkers:n,sofMarkers:i}=function(){const t=new Set([65499,65476,65484,65501,65534]);for(let e=65504;e<65520;++e)t.add(e);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}();let r=2;for(;r+9=10&&1195984440===e.getUint32(0,qI)?{mimeType:"image/gif",width:e.getUint16(6,XI),height:e.getUint16(8,XI)}:null}(e)||function(t){const e=KI(t);return e.byteLength>=14&&16973===e.getUint16(0,qI)&&e.getUint32(2,XI)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,XI),height:e.getUint32(22,XI)}:null}(e)}function KI(t){if(t instanceof DataView)return t;if(ArrayBuffer.isView(t))return new DataView(t.buffer);if(t instanceof ArrayBuffer)return new DataView(t);throw new Error("toDataView")}function QI(t,e){const{mimeType:n}=YI(t)||{},{_parseImageNode:i}=wI;return vI(i),i(t,n,e)}function ZI(){return(ZI=gS(function*(t,e,n){const i=((e=e||{}).image||{}).type||"auto",{url:r}=n||{};let s;switch(JI(i)){case"imagebitmap":s=yield UI(t,e,r);break;case"image":s=yield LI(t,e,r);break;case"data":s=yield QI(t,e);break;default:vI(!1)}return"data"===i&&(s=PI(s)),s})).apply(this,arguments)}function JI(t){switch(t){case"auto":case"data":return function(){if(OI)return"imagebitmap";if(CI)return"image";if(kI)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}();default:return function(t){switch(t){case"auto":return OI||CI||kI;case"imagebitmap":return OI;case"image":return CI;case"data":return kI;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}(t),t}}const tD={id:"image",module:"images",name:"Images",version:"3.0.12",mimeTypes:["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],extensions:["png","jpg","jpeg","gif","webp","bmp","ico","svg"],parse:function(t,e,n){return ZI.apply(this,arguments)},tests:[t=>Boolean(YI(new DataView(t)))],options:{image:{type:"auto",decode:!0}}};var eD={name:"JSON",extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:function(t){const e=t[0],n=t[t.length-1];return"{"===e&&"}"===n||"["===e&&"]"===n},parseTextSync:JSON.parse};const nD="8.5.8",iD=zw.CO.deck&&zw.CO.deck.VERSION;if(iD&&iD!==nD)throw new Error("deck.gl - multiple versions detected: ".concat(iD," vs ").concat(nD));iD||(Mw.log(1,"deck.gl ".concat(nD))(),zw.CO.deck=Object.assign(zw.CO.deck||{},{VERSION:nD,version:nD,log:Mw,_registerLoggers:function(t){AE=t}}),fP([eD,[tD,{imagebitmap:{premultiplyAlpha:"none"}}]]));var rD=zw.CO.deck;class sD extends Hx{static isSupported(t,e=[]){const n=Fw(t),i=OS(t,"TIMER_QUERY");let r=n||i;for(const s of e)switch(s){case"queries":r=r&&n;break;case"timers":r=r&&i;break;default:Rx(!1)}return r}constructor(t,e={}){super(t,e),this.target=null,this._queryPending=!1,this._pollingPromise=null,Object.seal(this)}beginTimeElapsedQuery(){return this.begin(35007)}beginOcclusionQuery({conservative:t=!1}={}){return this.begin(t?36202:35887)}beginTransformFeedbackQuery(){return this.begin(35976)}begin(t){return this._queryPending||(this.target=t,this.gl2.beginQuery(this.target,this.handle)),this}end(){return this._queryPending||this.target&&(this.gl2.endQuery(this.target),this.target=null,this._queryPending=!0),this}isResultAvailable(){if(!this._queryPending)return!1;const t=this.gl2.getQueryParameter(this.handle,34919);return t&&(this._queryPending=!1),t}isTimerDisjoint(){return this.gl2.getParameter(36795)}getResult(){return this.gl2.getQueryParameter(this.handle,34918)}getTimerMilliseconds(){return this.getResult()/1e6}createPoll(t=Number.POSITIVE_INFINITY){if(this._pollingPromise)return this._pollingPromise;let e=0;return this._pollingPromise=new Promise((n,i)=>{const r=()=>{this.isResultAvailable()?(n(this.getResult()),this._pollingPromise=null):e++>t?(i("Timed out"),this._pollingPromise=null):requestAnimationFrame(r)};requestAnimationFrame(r)}),this._pollingPromise}_createHandle(){return sD.isSupported(this.gl)?this.gl2.createQuery():null}_deleteHandle(){this.gl2.deleteQuery(this.handle)}}const oD=(0,zw.jU)()&&"undefined"!=typeof document;let aD=0;class lD{constructor(t={}){const{onCreateContext:e=(t=>Tx(t)),onAddHTML:n=null,onInitialize:i=(()=>{}),onRender:r=(()=>{}),onFinalize:s=(()=>{}),onError:o,gl:a=null,glOptions:l={},debug:c=!1,createFramebuffer:u=!1,autoResizeViewport:h=!0,autoResizeDrawingBuffer:d=!0,stats:p=Dx.get("animation-loop-"+aD++)}=t;let{useDevicePixels:f=!0}=t;"useDevicePixelRatio"in t&&(Nw.deprecated("useDevicePixelRatio","useDevicePixels")(),f=t.useDevicePixelRatio),this.props={onCreateContext:e,onAddHTML:n,onInitialize:i,onRender:r,onFinalize:s,onError:o,gl:a,glOptions:l,debug:c,createFramebuffer:u},this.gl=a,this.needsRedraw=null,this.timeline=null,this.stats=p,this.cpuTime=this.stats.get("CPU Time"),this.gpuTime=this.stats.get("GPU Time"),this.frameRate=this.stats.get("Frame Rate"),this._initialized=!1,this._running=!1,this._animationFrameId=null,this._nextFramePromise=null,this._resolveNextFrame=null,this._cpuStartTime=0,this.setProps({autoResizeViewport:h,autoResizeDrawingBuffer:d,useDevicePixels:f}),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this._pageLoadPromise=null,this._onMousemove=this._onMousemove.bind(this),this._onMouseleave=this._onMouseleave.bind(this)}delete(){this.stop(),this._setDisplay(null)}setNeedsRedraw(t){return Rx("string"==typeof t),this.needsRedraw=this.needsRedraw||t,this}setProps(t){return"autoResizeViewport"in t&&(this.autoResizeViewport=t.autoResizeViewport),"autoResizeDrawingBuffer"in t&&(this.autoResizeDrawingBuffer=t.autoResizeDrawingBuffer),"useDevicePixels"in t&&(this.useDevicePixels=t.useDevicePixels),this}start(t={}){if(this._running)return this;this._running=!0;const e=this._getPageLoadPromise().then(()=>!this._running||this._initialized?null:(this._createWebGLContext(t),this._createFramebuffer(),this._startEventHandling(),this._initializeCallbackData(),this._updateCallbackData(),this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._gpuTimeQuery=sD.isSupported(this.gl,["timers"])?new sD(this.gl):null,this._initialized=!0,this.onInitialize(this.animationProps))).then(t=>{this._running&&(this._addCallbackData(t||{}),!1!==t&&this._startLoop())});return this.props.onError&&e.catch(this.props.onError),this}redraw(){return this.isContextLost()||(this._beginTimers(),this._setupFrame(),this._updateCallbackData(),this._renderFrame(this.animationProps),this._clearNeedsRedraw(),this.offScreen&&this.gl.commit&&this.gl.commit(),this._resolveNextFrame&&(this._resolveNextFrame(this),this._nextFramePromise=null,this._resolveNextFrame=null),this._endTimers()),this}stop(){return this._running&&(this._finalizeCallbackData(),this._cancelAnimationFrame(this._animationFrameId),this._nextFramePromise=null,this._resolveNextFrame=null,this._animationFrameId=null,this._running=!1),this}attachTimeline(t){return this.timeline=t,this.timeline}detachTimeline(){this.timeline=null}waitForRender(){return this.setNeedsRedraw("waitForRender"),this._nextFramePromise||(this._nextFramePromise=new Promise(t=>{this._resolveNextFrame=t})),this._nextFramePromise}toDataURL(){var t=this;return gS(function*(){return t.setNeedsRedraw("toDataURL"),yield t.waitForRender(),t.gl.canvas.toDataURL()})()}isContextLost(){return this.gl.isContextLost()}onCreateContext(...t){return this.props.onCreateContext(...t)}onInitialize(...t){return this.props.onInitialize(...t)}onRender(...t){return this.props.onRender(...t)}onFinalize(...t){return this.props.onFinalize(...t)}getHTMLControlValue(t,e=1){const n=document.getElementById(t);return n?Number(n.value):e}setViewParameters(){return Nw.removed("AnimationLoop.setViewParameters","AnimationLoop.setProps")(),this}_startLoop(){const t=()=>{!this._running||(this.redraw(),this._animationFrameId=this._requestAnimationFrame(t))};this._cancelAnimationFrame(this._animationFrameId),this._animationFrameId=this._requestAnimationFrame(t)}_getPageLoadPromise(){return this._pageLoadPromise||(this._pageLoadPromise=oD?new Promise((t,e)=>{oD&&"complete"===document.readyState?t(document):window.addEventListener("load",()=>{t(document)})}):Promise.resolve({})),this._pageLoadPromise}_setDisplay(t){this.display&&(this.display.delete(),this.display.animationLoop=null),t&&(t.animationLoop=this),this.display=t}_cancelAnimationFrame(t){return this.display&&this.display.cancelAnimationFrame?this.display.cancelAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.cancelAnimationFrame?window.cancelAnimationFrame(t):clearTimeout(t)}(t)}_requestAnimationFrame(t){if(this._running)return this.display&&this.display.requestAnimationFrame?this.display.requestAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame(t):setTimeout(t,1e3/60)}(t)}_renderFrame(...t){this.display?this.display._renderFrame(...t):this.onRender(...t)}_clearNeedsRedraw(){this.needsRedraw=null}_setupFrame(){this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._resizeFramebuffer()}_initializeCallbackData(){this.animationProps={gl:this.gl,stop:this.stop,canvas:this.gl.canvas,framebuffer:this.framebuffer,useDevicePixels:this.useDevicePixels,needsRedraw:null,startTime:Date.now(),engineTime:0,tick:0,tock:0,time:0,_timeline:this.timeline,_loop:this,_animationLoop:this,_mousePosition:null}}_updateCallbackData(){const{width:t,height:e,aspect:n}=this._getSizeAndAspect();(t!==this.animationProps.width||e!==this.animationProps.height)&&this.setNeedsRedraw("drawing buffer resized"),n!==this.animationProps.aspect&&this.setNeedsRedraw("drawing buffer aspect changed"),this.animationProps.width=t,this.animationProps.height=e,this.animationProps.aspect=n,this.animationProps.needsRedraw=this.needsRedraw,this.animationProps.engineTime=Date.now()-this.animationProps.startTime,this.timeline&&this.timeline.update(this.animationProps.engineTime),this.animationProps.tick=Math.floor(this.animationProps.time/1e3*60),this.animationProps.tock++,this.animationProps.time=this.timeline?this.timeline.getTime():this.animationProps.engineTime,this.animationProps._offScreen=this.offScreen}_finalizeCallbackData(){this.onFinalize(this.animationProps)}_addCallbackData(t){"object"==typeof t&&null!==t&&(this.animationProps=Object.assign({},this.animationProps,t))}_createWebGLContext(t){if(this.offScreen=t.canvas&&"undefined"!=typeof OffscreenCanvas&&t.canvas instanceof OffscreenCanvas,t=Object.assign({},t,this.props.glOptions),this.gl=this.props.gl?kx(this.props.gl,t):this.onCreateContext(t),!jw(this.gl))throw new Error("AnimationLoop.onCreateContext - illegal context returned");(function(t){yx(t,tx)})(this.gl),this._createInfoDiv()}_createInfoDiv(){if(this.gl.canvas&&this.props.onAddHTML){const t=document.createElement("div");document.body.appendChild(t),t.style.position="relative";const e=document.createElement("div");e.style.position="absolute",e.style.left="10px",e.style.bottom="10px",e.style.width="300px",e.style.background="white",t.appendChild(this.gl.canvas),t.appendChild(e);const n=this.props.onAddHTML(e);n&&(e.innerHTML=n)}}_getSizeAndAspect(){const t=this.gl.drawingBufferWidth,e=this.gl.drawingBufferHeight;let n=1;const{canvas:i}=this.gl;return i&&i.clientHeight?n=i.clientWidth/i.clientHeight:t>0&&e>0&&(n=t/e),{width:t,height:e,aspect:n}}_resizeViewport(){this.autoResizeViewport&&this.gl.viewport(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight)}_resizeCanvasDrawingBuffer(){this.autoResizeDrawingBuffer&&function(t,e={}){if(t.canvas)return void function(t,e,n){let i="width"in n?n.width:t.canvas.clientWidth,r="height"in n?n.height:t.canvas.clientHeight;(!i||!r)&&(Nw.log(1,"Canvas clientWidth/clientHeight is 0")(),e=1,i=t.canvas.width||1,r=t.canvas.height||1),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{};const s=t.luma.canvasSizeInfo;if(s.clientWidth!==i||s.clientHeight!==r||s.devicePixelRatio!==e){let n=e;const s=Math.floor(i*n),o=Math.floor(r*n);t.canvas.width=s,t.canvas.height=o,(t.drawingBufferWidth!==s||t.drawingBufferHeight!==o)&&(Nw.warn("Device pixel ratio clamped")(),n=Math.min(t.drawingBufferWidth/i,t.drawingBufferHeight/r),t.canvas.width=Math.floor(i*n),t.canvas.height=Math.floor(r*n)),Object.assign(t.luma.canvasSizeInfo,{clientWidth:i,clientHeight:r,devicePixelRatio:e})}}(t,function(t){const e="undefined"==typeof window?1:window.devicePixelRatio||1;return Number.isFinite(t)?t<=0?1:t:t?e:1}(e.useDevicePixels),e);const n=t.getExtension("STACKGL_resize_drawingbuffer");n&&"width"in e&&"height"in e&&n.resize(e.width,e.height)}(this.gl,{useDevicePixels:this.useDevicePixels})}_createFramebuffer(){this.props.createFramebuffer&&(this.framebuffer=new SS(this.gl))}_resizeFramebuffer(){this.framebuffer&&this.framebuffer.resize({width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight})}_beginTimers(){this.frameRate.timeEnd(),this.frameRate.timeStart(),this._gpuTimeQuery&&this._gpuTimeQuery.isResultAvailable()&&!this._gpuTimeQuery.isTimerDisjoint()&&this.stats.get("GPU Time").addTime(this._gpuTimeQuery.getTimerMilliseconds()),this._gpuTimeQuery&&this._gpuTimeQuery.beginTimeElapsedQuery(),this.cpuTime.timeStart()}_endTimers(){this.cpuTime.timeEnd(),this._gpuTimeQuery&&this._gpuTimeQuery.end()}_startEventHandling(){const{canvas:t}=this.gl;t&&(t.addEventListener("mousemove",this._onMousemove),t.addEventListener("mouseleave",this._onMouseleave))}_onMousemove(t){this.animationProps._mousePosition=[t.offsetX,t.offsetY]}_onMouseleave(t){this.animationProps._mousePosition=null}}var cD=n(11524),uD=n.n(cD);const hD={mousedown:1,mousemove:2,mouseup:4};(function(t){const e=t.prototype.handler;t.prototype.handler=function(t){const n=this.store;t.button>0&&"pointerdown"===t.type&&(function(e,n){for(let i=0;i=0&&(this.pressed=!0),2&e&&0===t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:"mouse",srcEvent:t}))}}(uD().MouseInput);const dD=uD().Manager;var pD=uD();const fD=pD?[[pD.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[pD.Rotate,{enable:!1}],[pD.Pinch,{enable:!1}],[pD.Swipe,{enable:!1}],[pD.Pan,{threshold:0,enable:!1}],[pD.Press,{enable:!1}],[pD.Tap,{event:"doubletap",taps:2,enable:!1}],[pD.Tap,{event:"anytap",enable:!1}],[pD.Tap,{enable:!1}]]:null,gD={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},mD={doubletap:["tap"]},bD={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},yD={KEY_EVENTS:["keydown","keyup"],MOUSE_EVENTS:["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],WHEEL_EVENTS:["wheel","mousewheel"]},vD={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},_D={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},wD="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",xD="undefined"!=typeof window?window:global;"undefined"!=typeof global?global:window,"undefined"!=typeof document&&document;let SD=!1;try{const t={get passive(){return SD=!0,!0}};xD.addEventListener("test",t,t),xD.removeEventListener("test",t,t)}catch(m){}const ED=-1!==wD.indexOf("firefox"),{WHEEL_EVENTS:CD}=yD,OD=4.000244140625;class TD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.events=CD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent,!!SD&&{passive:!1}))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){"wheel"===t&&(this.options.enable=e)}handleEvent(t){if(!this.options.enable)return;let e=t.deltaY;xD.WheelEvent&&(ED&&t.deltaMode===xD.WheelEvent.DOM_DELTA_PIXEL&&(e/=xD.devicePixelRatio),t.deltaMode===xD.WheelEvent.DOM_DELTA_LINE&&(e*=40));const n={x:t.clientX,y:t.clientY};0!==e&&e%OD==0&&(e=Math.floor(e/OD)),t.shiftKey&&e&&(e*=.25),this._onWheel(t,-e,n)}_onWheel(t,e,n){this.callback({type:"wheel",center:n,delta:e,srcEvent:t,pointerType:"mouse",target:t.target})}}const{MOUSE_EVENTS:kD}=yD,AD="pointermove",PD="pointerover",MD="pointerout",ID="pointerleave";class DD{constructor(t,e,n={}){this.element=t,this.callback=e,this.pressed=!1,this.options=Object.assign({enable:!0},n),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=kD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===AD&&(this.enableMoveEvent=e),t===PD&&(this.enableOverEvent=e),t===MD&&(this.enableOutEvent=e),t===ID&&(this.enableLeaveEvent=e)}handleEvent(t){this.handleOverEvent(t),this.handleOutEvent(t),this.handleLeaveEvent(t),this.handleMoveEvent(t)}handleOverEvent(t){this.enableOverEvent&&"mouseover"===t.type&&this.callback({type:PD,srcEvent:t,pointerType:"mouse",target:t.target})}handleOutEvent(t){this.enableOutEvent&&"mouseout"===t.type&&this.callback({type:MD,srcEvent:t,pointerType:"mouse",target:t.target})}handleLeaveEvent(t){this.enableLeaveEvent&&"mouseleave"===t.type&&this.callback({type:ID,srcEvent:t,pointerType:"mouse",target:t.target})}handleMoveEvent(t){if(this.enableMoveEvent)switch(t.type){case"mousedown":t.button>=0&&(this.pressed=!0);break;case"mousemove":0===t.which&&(this.pressed=!1),this.pressed||this.callback({type:AD,srcEvent:t,pointerType:"mouse",target:t.target});break;case"mouseup":this.pressed=!1}}}const{KEY_EVENTS:RD}=yD,ND="keydown";class LD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=RD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),t.tabIndex=n.tabIndex||0,t.style.outline="none",this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===ND&&(this.enableDownEvent=e),"keyup"===t&&(this.enableUpEvent=e)}handleEvent(t){const e=t.target||t.srcElement;"INPUT"===e.tagName&&"text"===e.type||"TEXTAREA"===e.tagName||(this.enableDownEvent&&"keydown"===t.type&&this.callback({type:ND,srcEvent:t,key:t.key,target:t.target}),this.enableUpEvent&&"keyup"===t.type&&this.callback({type:"keyup",srcEvent:t,key:t.key,target:t.target}))}}const jD="contextmenu";class FD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.handleEvent=this.handleEvent.bind(this),t.addEventListener("contextmenu",this.handleEvent)}destroy(){this.element.removeEventListener("contextmenu",this.handleEvent)}enableEventType(t,e){t===jD&&(this.options.enable=e)}handleEvent(t){!this.options.enable||this.callback({type:jD,center:{x:t.clientX,y:t.clientY},srcEvent:t,pointerType:"mouse",target:t.target})}}const BD={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4},VD={srcElement:"root",priority:0};class zD{constructor(t){this.eventManager=t,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}isEmpty(){return!this._active}add(t,e,n,i=!1,r=!1){const{handlers:s,handlersByElement:o}=this;n&&("object"!=typeof n||n.addEventListener)&&(n={srcElement:n}),n=n?Object.assign({},VD,n):VD;let a=o.get(n.srcElement);a||(a=[],o.set(n.srcElement,a));const l={type:t,handler:e,srcElement:n.srcElement,priority:n.priority};i&&(l.once=!0),r&&(l.passive=!0),s.push(l),this._active=this._active||!l.passive;let c=a.length-1;for(;c>=0&&!(a[c].priority>=l.priority);)c--;a.splice(c+1,0,l)}remove(t,e){const{handlers:n,handlersByElement:i}=this;for(let r=n.length-1;r>=0;r--){const s=n[r];if(s.type===t&&s.handler===e){n.splice(r,1);const t=i.get(s.srcElement);t.splice(t.indexOf(s),1),0===t.length&&i.delete(s.srcElement)}}this._active=n.some(t=>!t.passive)}handleEvent(t){if(this.isEmpty())return;const e=this._normalizeEvent(t);let n=t.srcEvent.target;for(;n&&n!==e.rootElement;){if(this._emit(e,n),e.handled)return;n=n.parentNode}this._emit(e,"root")}_emit(t,e){const n=this.handlersByElement.get(e);if(n){let e=!1;const i=()=>{t.handled=!0},r=()=>{t.handled=!0,e=!0},s=[];for(let o=0;o{const e=this.manager.get(t);e&&gD[t].forEach(t=>{e.recognizeWith(t)})});for(const n in e.recognizerOptions){const t=this.manager.get(n);if(t){const i=e.recognizerOptions[n];delete i.enable,t.set(i)}}this.wheelInput=new TD(t,this._onOtherEvent,{enable:!1}),this.moveInput=new DD(t,this._onOtherEvent,{enable:!1}),this.keyInput=new LD(t,this._onOtherEvent,{enable:!1,tabIndex:e.tabIndex}),this.contextmenuInput=new FD(t,this._onOtherEvent,{enable:!1});for(const[n,i]of this.events)i.isEmpty()||(this._toggleRecognizer(i.recognizerName,!0),this.manager.on(n,i.handleEvent))}destroy(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}on(t,e,n){this._addEventHandler(t,e,n,!1)}once(t,e,n){this._addEventHandler(t,e,n,!0)}watch(t,e,n){this._addEventHandler(t,e,n,!1,!0)}off(t,e){this._removeEventHandler(t,e)}_toggleRecognizer(t,e){const{manager:n}=this;if(!n)return;const i=n.get(t);if(i&&i.options.enable!==e){i.set({enable:e});const r=mD[t];r&&!this.options.recognizers&&r.forEach(r=>{const s=n.get(r);e?(s.requireFailure(t),i.dropRequireFailure(r)):s.dropRequireFailure(t)})}this.wheelInput.enableEventType(t,e),this.moveInput.enableEventType(t,e),this.keyInput.enableEventType(t,e),this.contextmenuInput.enableEventType(t,e)}_addEventHandler(t,e,n,i,r){if("string"!=typeof t){n=e;for(const e in t)this._addEventHandler(e,t[e],n,i,r);return}const{manager:s,events:o}=this,a=_D[t]||t;let l=o.get(a);l||(l=new zD(this),o.set(a,l),l.recognizerName=vD[a]||a,s&&s.on(a,l.handleEvent)),l.add(t,e,n,i,r),l.isEmpty()||this._toggleRecognizer(l.recognizerName,!0)}_removeEventHandler(t,e){if("string"!=typeof t){for(const e in t)this._removeEventHandler(e,t[e]);return}const{events:n}=this,i=n.get(_D[t]||t);if(i&&(i.remove(t,e),i.isEmpty())){const{recognizerName:t}=i;let e=!1;for(const i of n.values())if(i.recognizerName===t&&!i.isEmpty()){e=!0;break}e||this._toggleRecognizer(t,!1)}}_onBasicInput(t){const{srcEvent:e}=t,n=bD[e.type];n&&this.manager.emit(n,t)}_onOtherEvent(t){this.manager.emit(t.type,t)}}function $D(){}const GD={id:"",width:"100%",height:"100%",pickingRadius:0,layerFilter:null,glOptions:{},gl:null,layers:[],effects:[],views:null,controller:null,useDevicePixels:!0,touchAction:"none",eventRecognizerOptions:{},_framebuffer:null,_animate:!1,_pickable:!0,_typedArrayManagerProps:{},onWebGLInitialized:$D,onResize:$D,onViewStateChange:$D,onInteractionStateChange:$D,onBeforeRender:$D,onAfterRender:$D,onLoad:$D,onError:(t,e)=>Mw.error(t)(),_onMetrics:null,getCursor:({isDragging:t})=>t?"grabbing":"grab",debug:!1,drawPickingColors:!1};class WD{constructor(t){t=wt(wt({},GD),t),this.props={},this.width=0,this.height=0,this.viewManager=null,this.layerManager=null,this.effectManager=null,this.deckRenderer=null,this.deckPicker=null,this._needsRedraw=!0,this._pickRequest={},this._lastPointerDownInfo=null,this.viewState=null,this.interactiveState={isHovering:!1,isDragging:!1},this._onEvent=this._onEvent.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),t.viewState&&t.initialViewState&&Mw.warn("View state tracking is disabled. Use either `initialViewState` for auto update or `viewState` for manual update.")(),"IE"===(0,zw.qs)()&&Mw.warn("IE 11 support will be deprecated in v8.0")(),t.gl||"undefined"!=typeof document&&(this.canvas=this._createCanvas(t)),this.animationLoop=this._createAnimationLoop(t),this.stats=new Mx({id:"deck.gl"}),this.metrics={fps:0,setPropsTime:0,updateAttributesTime:0,framesRedrawn:0,pickTime:0,pickCount:0,gpuTime:0,gpuTimePerFrame:0,cpuTime:0,cpuTimePerFrame:0,bufferMemory:0,textureMemory:0,renderbufferMemory:0,gpuMemory:0},this._metricsCounter=0,this.setProps(t),t._typedArrayManagerProps&&AS.setProps(t._typedArrayManagerProps),this.animationLoop.start()}finalize(){this.animationLoop.stop(),this.animationLoop=null,this._lastPointerDownInfo=null,this.layerManager&&(this.layerManager.finalize(),this.layerManager=null,this.viewManager.finalize(),this.viewManager=null,this.effectManager.finalize(),this.effectManager=null,this.deckRenderer.finalize(),this.deckRenderer=null,this.deckPicker.finalize(),this.deckPicker=null,this.eventManager.destroy(),this.eventManager=null,this.tooltip.remove(),this.tooltip=null),!this.props.canvas&&!this.props.gl&&this.canvas&&(this.canvas.parentElement.removeChild(this.canvas),this.canvas=null)}setProps(t){this.stats.get("setProps Time").timeStart(),"onLayerHover"in t&&Mw.removed("onLayerHover","onHover")(),"onLayerClick"in t&&Mw.removed("onLayerClick","onClick")(),t.initialViewState&&!zP(this.props.initialViewState,t.initialViewState)&&(this.viewState=t.initialViewState),Object.assign(this.props,t),this._setCanvasSize(this.props);const e=Object.create(this.props);Object.assign(e,{views:this._getViews(),width:this.width,height:this.height,viewState:this._getViewState()}),this.animationLoop.setProps(e),this.layerManager&&(this.viewManager.setProps(e),this.layerManager.activateViewport(this.getViewports()[0]),this.layerManager.setProps(e),this.effectManager.setProps(e),this.deckRenderer.setProps(e),this.deckPicker.setProps(e)),this.stats.get("setProps Time").timeEnd()}needsRedraw(t={clearRedrawFlags:!1}){if(this.props._animate)return"Deck._animate";let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);const n=this.viewManager.needsRedraw(t),i=this.layerManager.needsRedraw(t),r=this.effectManager.needsRedraw(t),s=this.deckRenderer.needsRedraw(t);return e=e||n||i||r||s,e}redraw(t){if(!this.layerManager)return;const e=t||this.needsRedraw({clearRedrawFlags:!0});!e||(this.stats.get("Redraw Count").incrementCount(),this.props._customRender?this.props._customRender(e):this._drawLayers(e))}getViews(){return this.viewManager.views}getViewports(t){return this.viewManager.getViewports(t)}pickObject(t){const e=this._pick("pickObject","pickObject Time",t).result;return e.length?e[0]:null}pickMultipleObjects(t){return t.depth=t.depth||10,this._pick("pickObject","pickMultipleObjects Time",t).result}pickObjects(t){return this._pick("pickObjects","pickObjects Time",t)}_addResources(t,e=!1){for(const n in t)this.layerManager.resourceManager.add({resourceId:n,data:t[n],forceUpdate:e})}_removeResources(t){for(const e of t)this.layerManager.resourceManager.remove(e)}_pick(t,e,n){const{stats:i}=this;i.get("Pick Count").incrementCount(),i.get(e).timeStart();const r=this.deckPicker[t](wt({layers:this.layerManager.getLayers(n),views:this.viewManager.getViews(),viewports:this.getViewports(n),onViewportActive:this.layerManager.activateViewport},n));return i.get(e).timeEnd(),r}_createCanvas(t){let e=t.canvas;return"string"==typeof e&&(e=document.getElementById(e),uE(e)),e||(e=document.createElement("canvas"),e.id=t.id||"deckgl-overlay",(t.parent||document.body).appendChild(e)),Object.assign(e.style,t.style),e}_setCanvasSize(t){if(!this.canvas)return;let{width:e,height:n}=t;(e||0===e)&&(e=Number.isFinite(e)?"".concat(e,"px"):e,this.canvas.style.width=e),(n||0===n)&&(n=Number.isFinite(n)?"".concat(n,"px"):n,this.canvas.style.position="absolute",this.canvas.style.height=n)}_updateCanvasSize(){if(this._checkForCanvasSizeChange()){const{width:t,height:e}=this;this.viewManager.setProps({width:t,height:e}),this.props.onResize({width:this.width,height:this.height})}}_checkForCanvasSizeChange(){const{canvas:t}=this;if(!t)return!1;const e=t.clientWidth||t.width,n=t.clientHeight||t.height;return(e!==this.width||n!==this.height)&&(this.width=e,this.height=n,!0)}_createAnimationLoop(t){const{width:e,height:n,gl:i,glOptions:r,debug:s,onError:o,onBeforeRender:a,onAfterRender:l,useDevicePixels:c,autoResizeDrawingBuffer:u}=t;return new lD({width:e,height:n,useDevicePixels:c,autoResizeDrawingBuffer:u,autoResizeViewport:!1,gl:i,onCreateContext:t=>Tx(ii(wt(wt({},r),t),{canvas:this.canvas,debug:s,onContextLost:()=>this._onContextLost()})),onInitialize:t=>this._setGLContext(t.gl),onRender:this._onRenderFrame.bind(this),onBeforeRender:a,onAfterRender:l,onError:o})}_getViewState(){return this.props.viewState||this.viewState}_getViews(){let t=this.props.views||[new rI({id:"default-view"})];return t=Array.isArray(t)?t:[t],t.length&&this.props.controller&&(t[0].props.controller=this.props.controller),t}_onContextLost(){const{onError:t}=this.props;this.animationLoop&&t&&t(new Error("WebGL context is lost"))}_onPointerMove(t){const{_pickRequest:e}=this;if("pointerleave"===t.type)e.x=-1,e.y=-1,e.radius=0;else{if(t.leftButton||t.rightButton)return;{const n=t.offsetCenter;if(!n)return;e.x=n.x,e.y=n.y,e.radius=this.props.pickingRadius}}this.layerManager&&(this.layerManager.context.mousePosition={x:e.x,y:e.y}),e.event=t,e.mode="hover"}_pickAndCallback(){const{_pickRequest:t}=this;if(t.event){const{result:e,emptyInfo:n}=this._pick("pickObject","pickObject Time",t);this.interactiveState.isHovering=e.length>0;let i=n,r=!1;for(const s of e)i=s,r=s.layer.onHover(s,t.event);if(!r&&this.props.onHover&&this.props.onHover(i,t.event),this.props.getTooltip){const t=this.props.getTooltip(i);this.tooltip.setTooltip(t,i.x,i.y)}t.event=null}}_updateCursor(){const t=this.props.parent||this.canvas;t&&(t.style.cursor=this.props.getCursor(this.interactiveState))}_setGLContext(t){if(this.layerManager)return;this.canvas||(this.canvas=t.canvas,kx(t,{enable:!0,copyState:!0})),this.tooltip=new yI(this.canvas),yx(t,{blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthTest:!0,depthFunc:515}),this.props.onWebGLInitialized(t);const e=new qM;e.play(),this.animationLoop.attachTimeline(e),this.eventManager=new HD(this.props.parent||t.canvas,{touchAction:this.props.touchAction,recognizerOptions:this.props.eventRecognizerOptions,events:{pointerdown:this._onPointerDown,pointermove:this._onPointerMove,pointerleave:this._onPointerMove}});for(const i in Rw)this.eventManager.on(i,this._onEvent);this.viewManager=new eI({timeline:e,eventManager:this.eventManager,onViewStateChange:this._onViewStateChange.bind(this),onInteractionStateChange:this._onInteractionStateChange.bind(this),views:this._getViews(),viewState:this._getViewState(),width:this.width,height:this.height});const n=this.viewManager.getViewports()[0];this.layerManager=new tI(t,{deck:this,stats:this.stats,viewport:n,timeline:e}),this.effectManager=new oI,this.deckRenderer=new uI(t),this.deckPicker=new mI(t),this.setProps(this.props),this._updateCanvasSize(),this.props.onLoad()}_drawLayers(t,e){const{gl:n}=this.layerManager.context;yx(n,this.props.parameters),this.props.onBeforeRender({gl:n}),this.deckRenderer.renderLayers(wt({target:this.props._framebuffer,layers:this.layerManager.getLayers(),viewports:this.viewManager.getViewports(),onViewportActive:this.layerManager.activateViewport,views:this.viewManager.getViews(),pass:"screen",redrawReason:t,effects:this.effectManager.getEffects()},e)),this.props.onAfterRender({gl:n})}_onRenderFrame(t){this._getFrameStats(),this._metricsCounter++%60==0&&(this._getMetrics(),this.stats.reset(),Mw.table(4,this.metrics)(),this.props._onMetrics&&this.props._onMetrics(this.metrics)),this._updateCanvasSize(),this._updateCursor(),this.tooltip.isVisible&&this.viewManager.needsRedraw()&&this.tooltip.setTooltip(null),this.layerManager.updateLayers(),this._pickAndCallback(),this.redraw(!1),this.viewManager&&this.viewManager.updateViewStates()}_onViewStateChange(t){const e=this.props.onViewStateChange(t)||t.viewState;this.viewState&&(this.viewState=ii(wt({},this.viewState),{[t.viewId]:e}),this.props.viewState||this.viewManager&&this.viewManager.setProps({viewState:this.viewState}))}_onInteractionStateChange(t){this.interactiveState.isDragging=t.isDragging,this.props.onInteractionStateChange(t)}_onEvent(t){const e=Rw[t.type],n=t.offsetCenter;if(!e||!n)return;const i=this.layerManager.getLayers(),r=this.deckPicker.getLastPickedObject({x:n.x,y:n.y,layers:i,viewports:this.getViewports(n)},this._lastPointerDownInfo),{layer:s}=r,o=s&&(s[e.handler]||s.props[e.handler]),a=this.props[e.handler];let l=!1;o&&(l=o.call(s,r,t)),!l&&a&&a(r,t)}_onPointerDown(t){const e=t.offsetCenter;this._lastPointerDownInfo=this.pickObject({x:e.x,y:e.y,radius:this.props.pickingRadius})}_getFrameStats(){const{stats:t}=this;t.get("frameRate").timeEnd(),t.get("frameRate").timeStart();const e=this.animationLoop.stats;t.get("GPU Time").addTime(e.get("GPU Time").lastTiming),t.get("CPU Time").addTime(e.get("CPU Time").lastTiming)}_getMetrics(){const{metrics:t,stats:e}=this;t.fps=e.get("frameRate").getHz(),t.setPropsTime=e.get("setProps Time").time,t.updateAttributesTime=e.get("Update Attributes").time,t.framesRedrawn=e.get("Redraw Count").count,t.pickTime=e.get("pickObject Time").time+e.get("pickMultipleObjects Time").time+e.get("pickObjects Time").time,t.pickCount=e.get("Pick Count").count,t.gpuTime=e.get("GPU Time").time,t.cpuTime=e.get("CPU Time").time,t.gpuTimePerFrame=e.get("GPU Time").getAverageTime(),t.cpuTimePerFrame=e.get("CPU Time").getAverageTime();const n=Dx.get("Memory Usage");t.bufferMemory=n.get("Buffer Memory").count,t.textureMemory=n.get("Texture Memory").count,t.renderbufferMemory=n.get("Renderbuffer Memory").count,t.gpuMemory=n.get("GPU Memory").count}}WD.getPropTypes=function(t){return{id:t.string,width:t.oneOfType([t.number,t.string]),height:t.oneOfType([t.number,t.string]),layers:t.oneOfType([t.object,t.array]),layerFilter:t.func,views:t.oneOfType([t.object,t.array]),viewState:t.object,effects:t.arrayOf(t.instanceOf(TM)),controller:t.oneOfType([t.func,t.bool,t.object]),gl:t.object,glOptions:t.object,parameters:t.object,pickingRadius:t.number,useDevicePixels:t.oneOfType([t.bool,t.number]),touchAction:t.string,eventRecognizerOptions:t.object,onWebGLInitialized:t.func,onResize:t.func,onViewStateChange:t.func,onInteractionStateChange:t.func,onBeforeRender:t.func,onAfterRender:t.func,onLoad:t.func,onError:t.func,debug:t.bool,drawPickingColors:t.bool,_framebuffer:t.object,_animate:t.bool,_pickable:t.bool,_typedArrayManagerProps:t.object}},WD.defaultProps=GD,WD.VERSION=rD.VERSION;var qD={name:"project32",dependencies:[NM],vs:"\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset, out vec4 commonPosition\n) {\n vec3 projectedPosition = project_position(position, position64Low);\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n // offset is specified as ENU\n // when in globe projection, rotate offset so that the ground alighs with the surface of the globe\n mat3 rotation = project_get_orientation_matrix(projectedPosition);\n offset = rotation * offset;\n }\n commonPosition = vec4(projectedPosition + offset, 1.0);\n return project_common_position_to_clipspace(commonPosition);\n}\n\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset\n) {\n vec4 commonPosition;\n return project_position_to_clipspace(position, position64Low, offset, commonPosition);\n}\n"},XD="#if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\n\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation;\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform AmbientLight lighting_uAmbientLight;\nuniform PointLight lighting_uPointLight[MAX_LIGHTS];\nuniform DirectionalLight lighting_uDirectionalLight[MAX_LIGHTS];\nuniform int lighting_uPointLightCount;\nuniform int lighting_uDirectionalLightCount;\n\nuniform bool lighting_uEnabled;\n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n#endif\n";const YD={lightSources:{}};function KD({color:t=[0,0,0],intensity:e=1}={}){return t.map(t=>t*e/255)}const QD={name:"lights",vs:XD,fs:XD,getUniforms:function t(e=YD){if("lightSources"in e){const{ambientLight:t,pointLights:n,directionalLights:i}=e.lightSources||{};return t||n&&n.length>0||i&&i.length>0?Object.assign({},function({ambientLight:t,pointLights:e=[],directionalLights:n=[]}){const i={};return i["lighting_uAmbientLight.color"]=t?KD(t):[0,0,0],e.forEach((t,e)=>{i[`lighting_uPointLight[${e}].color`]=KD(t),i[`lighting_uPointLight[${e}].position`]=t.position,i[`lighting_uPointLight[${e}].attenuation`]=t.attenuation||[1,0,0]}),i.lighting_uPointLightCount=e.length,n.forEach((t,e)=>{i[`lighting_uDirectionalLight[${e}].color`]=KD(t),i[`lighting_uDirectionalLight[${e}].direction`]=t.direction}),i.lighting_uDirectionalLightCount=n.length,i}({ambientLight:t,pointLights:n,directionalLights:i}),{lighting_uEnabled:!0}):{lighting_uEnabled:!1}}if("lights"in e){const n={pointLights:[],directionalLights:[]};for(const t of e.lights||[])switch(t.type){case"ambient":n.ambientLight=t;break;case"directional":n.directionalLights.push(t);break;case"point":n.pointLights.push(t)}return t({lightSources:n})}return{}},defines:{MAX_LIGHTS:3}};const ZD={};const JD={name:"phong-lighting",dependencies:[QD],fs:"\nuniform float lighting_uAmbient;\nuniform float lighting_uDiffuse;\nuniform float lighting_uShininess;\nuniform vec3 lighting_uSpecularColor;\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 light_direction, vec3 view_direction, vec3 normal_worldspace, vec3 color) {\n vec3 halfway_direction = normalize(light_direction + view_direction);\n float lambertian = dot(light_direction, normal_worldspace);\n float specular = 0.0;\n if (lambertian > 0.0) {\n float specular_angle = max(dot(normal_worldspace, halfway_direction), 0.0);\n specular = pow(specular_angle, lighting_uShininess);\n }\n lambertian = max(lambertian, 0.0);\n return (lambertian * lighting_uDiffuse * surfaceColor + specular * lighting_uSpecularColor) * color;\n}\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = surfaceColor;\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n lightColor = lighting_uAmbient * surfaceColor * lighting_uAmbientLight.color;\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n\nvec3 lighting_getSpecularLightColor(vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = vec3(0, 0, 0);\n vec3 surfaceColor = vec3(0, 0, 0);\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n",defines:{LIGHTING_FRAGMENT:1},getUniforms:function(t=ZD){if(!("material"in t))return{};const{material:e}=t;return e?function(t){const{ambient:e=.35,diffuse:n=.6,shininess:i=32,specularColor:r=[30,30,30]}=t;return{lighting_uAmbient:e,lighting_uDiffuse:n,lighting_uShininess:i,lighting_uSpecularColor:r.map(t=>t/255)}}(e):{lighting_uEnabled:!1}}},tR={pickingSelectedColor:null,pickingHighlightColor:new Uint8Array([0,255,255,255]),pickingActive:!1,pickingAttribute:!1};var eR=wt({inject:{"vs:DECKGL_FILTER_COLOR":"\n picking_setPickingColor(geometry.pickingColor);\n // for picking depth values\n picking_setPickingAttribute(geometry.position.z);\n ","fs:DECKGL_FILTER_COLOR":{order:99,injection:"\n // use highlight color if this fragment belongs to the selected object.\n color = picking_filterHighlightColor(color);\n\n // use picking color if rendering to picking FBO.\n color = picking_filterPickingColor(color);\n "}}},{name:"picking",vs:"uniform bool picking_uActive;\nuniform bool picking_uAttribute;\nuniform vec3 picking_uSelectedColor;\nuniform bool picking_uSelectedColorValid;\n\nout vec4 picking_vRGBcolor_Avalid;\n\nconst float COLOR_SCALE = 1. / 255.;\n\nbool picking_isColorValid(vec3 color) {\n return dot(color, vec3(1.0)) > 0.001;\n}\n\nbool isVertexPicked(vec3 vertexColor) {\n return\n picking_uSelectedColorValid &&\n !picking_isColorValid(abs(vertexColor - picking_uSelectedColor));\n}\n\nvoid picking_setPickingColor(vec3 pickingColor) {\n if (picking_uActive) {\n picking_vRGBcolor_Avalid.a = float(picking_isColorValid(pickingColor));\n\n if (!picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = pickingColor * COLOR_SCALE;\n }\n } else {\n picking_vRGBcolor_Avalid.a = float(isVertexPicked(pickingColor));\n }\n}\n\nvoid picking_setPickingAttribute(float value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.r = value;\n }\n}\nvoid picking_setPickingAttribute(vec2 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rg = value;\n }\n}\nvoid picking_setPickingAttribute(vec3 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = value;\n }\n}\n",fs:"uniform bool picking_uActive;\nuniform vec3 picking_uSelectedColor;\nuniform vec4 picking_uHighlightColor;\n\nin vec4 picking_vRGBcolor_Avalid;\nvec4 picking_filterHighlightColor(vec4 color) {\n if (picking_uActive) {\n return color;\n }\n bool selected = bool(picking_vRGBcolor_Avalid.a);\n\n if (selected) {\n float highLightAlpha = picking_uHighlightColor.a;\n float blendedAlpha = highLightAlpha + color.a * (1.0 - highLightAlpha);\n float highLightRatio = highLightAlpha / blendedAlpha;\n\n vec3 blendedRGB = mix(color.rgb, picking_uHighlightColor.rgb, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n } else {\n return color;\n }\n}\nvec4 picking_filterPickingColor(vec4 color) {\n if (picking_uActive) {\n if (picking_vRGBcolor_Avalid.a == 0.0) {\n discard;\n }\n return picking_vRGBcolor_Avalid;\n }\n return color;\n}\nvec4 picking_filterColor(vec4 color) {\n vec4 highightColor = picking_filterHighlightColor(color);\n return picking_filterPickingColor(highightColor);\n}\n\n",getUniforms:function(t=tR){const e={};if(void 0!==t.pickingSelectedColor)if(t.pickingSelectedColor){const n=t.pickingSelectedColor.slice(0,3);e.picking_uSelectedColorValid=1,e.picking_uSelectedColor=n}else e.picking_uSelectedColorValid=0;if(t.pickingHighlightColor){const n=Array.from(t.pickingHighlightColor,t=>t/255);Number.isFinite(n[3])||(n[3]=1),e.picking_uHighlightColor=n}return void 0!==t.pickingActive&&(e.picking_uActive=Boolean(t.pickingActive),e.picking_uAttribute=Boolean(t.pickingAttribute)),e}});const nR={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6};class iR{static get DRAW_MODE(){return nR}constructor(t={}){const{id:e=Fx("geometry"),drawMode:n=nR.TRIANGLES,attributes:i={},indices:r=null,vertexCount:s=null}=t;this.id=e,this.drawMode=0|n,this.attributes={},this.userData={},this._setAttributes(i,r),this.vertexCount=s||this._calculateVertexCount(this.attributes,this.indices)}get mode(){return this.drawMode}getVertexCount(){return this.vertexCount}getAttributes(){return this.indices?wt({indices:this.indices},this.attributes):this.attributes}_print(t){return`Geometry ${this.id} attribute ${t}`}_setAttributes(t,e){e&&(this.indices=ArrayBuffer.isView(e)?{value:e,size:1}:e);for(const n in t){let e=t[n];e=ArrayBuffer.isView(e)?{value:e}:e,Rx(ArrayBuffer.isView(e.value),`${this._print(n)}: must be typed array or object with value as typed array`),("POSITION"===n||"positions"===n)&&!e.size&&(e.size=3),"indices"===n?(Rx(!this.indices),this.indices=e):this.attributes[n]=e}return this.indices&&void 0!==this.indices.isIndexed&&(this.indices=Object.assign({},this.indices),delete this.indices.isIndexed),this}_calculateVertexCount(t,e){if(e)return e.value.length;let n=1/0;for(const i in t){const e=t[i],{value:r,size:s,constant:o}=e;!o&&r&&s>=1&&(n=Math.min(n,r.length/s))}return Rx(Number.isFinite(n)),n}}const rR=Math.PI/180,sR=new Float32Array(16),oR=new Float32Array(12);function aR(t,e,n){const i=e[0]*rR,r=e[1]*rR,s=e[2]*rR,o=Math.sin(s),a=Math.sin(i),l=Math.sin(r),c=Math.cos(s),u=Math.cos(i),h=Math.cos(r),d=n[0],p=n[1],f=n[2];t[0]=d*h*u,t[1]=d*l*u,t[2]=d*-a,t[3]=p*(-l*c+h*a*o),t[4]=p*(h*c+l*a*o),t[5]=p*u*o,t[6]=f*(l*o+h*a*c),t[7]=f*(-h*o+l*a*c),t[8]=f*u*c}function lR(t){return t[0]=t[0],t[1]=t[1],t[2]=t[2],t[3]=t[4],t[4]=t[5],t[5]=t[6],t[6]=t[8],t[7]=t[9],t[8]=t[10],t[9]=t[12],t[10]=t[13],t[11]=t[14],t.subarray(0,12)}const cR={size:12,accessor:["getOrientation","getScale","getTranslation","getTransformMatrix"],shaderAttributes:{instanceModelMatrix__LOCATION_0:{size:3,elementOffset:0},instanceModelMatrix__LOCATION_1:{size:3,elementOffset:3},instanceModelMatrix__LOCATION_2:{size:3,elementOffset:6},instanceTranslation:{size:3,elementOffset:9}},update(t,{startRow:e,endRow:n}){const{data:i,getOrientation:r,getScale:s,getTranslation:o,getTransformMatrix:a}=this.props,l=Array.isArray(a),c=l&&16===a.length,u=Array.isArray(s),h=Array.isArray(r),d=Array.isArray(o),p=c||!l&&Boolean(a(i[0]));t.constant=p?c:h&&u&&d;const f=t.value;if(t.constant){let e;p?(sR.set(a),e=lR(sR)):(e=oR,aR(e,r,s),e.set(o,9)),t.value=new Float32Array(e)}else{let l=e*t.size;const{iterable:g,objectInfo:m}=pE(i,e,n);for(const t of g){let e;m.index++,p?(sR.set(c?a:a(t,m)),e=lR(sR)):(e=oR,aR(e,h?r:r(t,m),u?s:s(t,m)),e.set(d?o:o(t,m),9)),f[l++]=e[0],f[l++]=e[1],f[l++]=e[2],f[l++]=e[3],f[l++]=e[4],f[l++]=e[5],f[l++]=e[6],f[l++]=e[7],f[l++]=e[8],f[l++]=e[9],f[l++]=e[10],f[l++]=e[11]}}}};function uR(t,e){return e===Iw.CARTESIAN||e===Iw.METER_OFFSETS||e===Iw.DEFAULT&&!t.isGeospatial}function hR(t,e){(t.COLOR_0||t.colors)&&e||(t.colors={constant:!0,value:new Float32Array([1,1,1])}),Mw.assert(t.positions||t.POSITION,'no "postions" or "POSITION" attribute in mesh')}function dR(t,e){if(t.attributes)return hR(t.attributes,e),t instanceof iR?t:new iR(t);if(t.positions||t.POSITION)return hR(t,e),new iR({attributes:t});throw Error("Invalid mesh")}const pR={mesh:{value:null,type:"object",async:!0},texture:{type:"image",value:null,async:!0},sizeScale:{type:"number",value:1,min:0},_useMeshColors:{type:"boolean",value:!1},_instanced:!0,wireframe:!1,material:!0,getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:[0,0,0,255]},getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]}};let fR=(()=>{class t extends LP{getShaders(){const t=!Fw(this.context.gl),e={};return CS(this.context.gl,"GLSL_DERIVATIVES")&&(e.DERIVATIVES_AVAILABLE=1),super.getShaders({vs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\nuniform float sizeScale;\nuniform bool composeModelMatrix;\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.uv = texCoords;\n geometry.pickingColor = instancePickingColors;\n\n vTexCoord = texCoords;\n cameraPosition = project_uCameraPosition;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n geometry.normal = normals_commonspace;\n\n vec3 pos = (instanceModelMatrix * positions) * sizeScale + instanceTranslation;\n\n if (composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), position_commonspace);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, position_commonspace);\n }\n\n geometry.position = position_commonspace;\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\nuniform sampler2D sampler;\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal;\n if (flatShading) {\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec4 color = hasTexture ? texture(sampler, vTexCoord) : vColor;\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, color.a * opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n",modules:[qD,JD,eR],transpileToGLSL100:t,defines:e})}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{transition:!0,type:5130,fp64:this.use64bitPositions(),size:3,accessor:"getPosition"},instanceColors:{type:5121,transition:!0,size:this.props.colorFormat.length,normalized:!0,accessor:"getColor",defaultValue:[0,0,0,255]},instanceModelMatrix:cR}),this.setState({emptyTexture:new lS(this.context.gl,{data:new Uint8Array(4),width:1,height:1})})}updateState({props:t,oldProps:e,changeFlags:n}){if(super.updateState({props:t,oldProps:e,changeFlags:n}),t.mesh!==e.mesh||n.extensionsChanged){var i;if(null===(i=this.state.model)||void 0===i||i.delete(),t.mesh){this.state.model=this.getModel(t.mesh);const e=t.mesh.attributes||t.mesh;this.setState({hasNormals:Boolean(e.NORMAL||e.normals)})}this.getAttributeManager().invalidateAll()}t.texture!==e.texture&&this.setTexture(t.texture),this.state.model&&this.state.model.setDrawMode(this.props.wireframe?3:4)}finalizeState(){super.finalizeState(),this.state.emptyTexture.delete()}draw({uniforms:t}){if(!this.state.model)return;const{viewport:e}=this.context,{sizeScale:n,coordinateSystem:i,_instanced:r}=this.props;this.state.model.setUniforms(t).setUniforms({sizeScale:n,composeModelMatrix:!r||uR(e,i),flatShading:!this.state.hasNormals}).draw()}getModel(t){const e=new xO(this.context.gl,ii(wt({},this.getShaders()),{id:this.props.id,geometry:dR(t,this.props._useMeshColors),isInstanced:!0})),{texture:n}=this.props,{emptyTexture:i}=this.state;return e.setUniforms({sampler:n||i,hasTexture:Boolean(n)}),e}setTexture(t){const{emptyTexture:e,model:n}=this.state;null==n||n.setUniforms({sampler:t||e,hasTexture:Boolean(t)})}}return t.layerName="SimpleMeshLayer",t.defaultProps=pR,t})();const gR={name:"pbr",vs:"uniform mat4 u_MVPMatrix;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_NormalMatrix;\n\nvarying vec3 pbr_vPosition;\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n# else\nvarying vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = u_ModelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(u_NormalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(u_ModelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else\n pbr_vNormal = normalize(vec3(u_ModelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n",fs:"#if defined(USE_TEX_LOD) && !defined(FEATURE_GLSL_TEXTURE_LOD)\n# error PBR fragment shader: Texture LOD is not available\n#endif\n\n#if !defined(HAS_TANGENTS) && !defined(FEATURE_GLSL_DERIVATIVES)\n# error PBR fragment shader: Derivatives are not available\n#endif\n\n\n#if (__VERSION__ < 300)\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL1COND; INCR)\n#else\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL2COND; INCR)\n#endif\n\nprecision highp float;\n\nuniform bool pbr_uUnlit;\n\n#ifdef USE_IBL\nuniform samplerCube u_DiffuseEnvSampler;\nuniform samplerCube u_SpecularEnvSampler;\nuniform sampler2D u_brdfLUT;\nuniform vec2 u_ScaleIBLAmbient;\n#endif\n\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D u_BaseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D u_NormalSampler;\nuniform float u_NormalScale;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D u_EmissiveSampler;\nuniform vec3 u_EmissiveFactor;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D u_MetallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D u_OcclusionSampler;\nuniform float u_OcclusionStrength;\n#endif\n\n#ifdef ALPHA_CUTOFF\nuniform float u_AlphaCutoff;\n#endif\n\nuniform vec2 u_MetallicRoughnessValues;\nuniform vec4 u_BaseColorFactor;\n\nuniform vec3 u_Camera;\n#ifdef PBR_DEBUG\nuniform vec4 u_ScaleDiffBaseMR;\nuniform vec4 u_ScaleFGDSpec;\n#endif\n\nvarying vec3 pbr_vPosition;\n\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n#else\nvarying vec3 pbr_vNormal;\n#endif\n#endif\n\n\nstruct PBRInfo\n{\n float NdotL;\n float NdotV;\n float NdotH;\n float LdotH;\n float VdotH;\n float perceptualRoughness;\n float metalness;\n vec3 reflectance0;\n vec3 reflectance90;\n float alphaRoughness;\n vec3 diffuseColor;\n vec3 specularColor;\n vec3 n;\n vec3 v;\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif\n return vec4(linOut,srgbIn.w);;\n#else\n return srgbIn;\n#endif\n}\n\nvec3 getNormal()\n{\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture2D(u_NormalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(u_NormalScale, u_NormalScale, 1.0)));\n#else\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInputs, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0;\n float lod = (pbrInputs.perceptualRoughness * mipCount);\n vec3 brdf = SRGBtoLINEAR(texture2D(u_brdfLUT,\n vec2(pbrInputs.NdotV, 1.0 - pbrInputs.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(textureCube(u_DiffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(textureCubeLod(u_SpecularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(textureCube(u_SpecularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInputs.diffuseColor;\n vec3 specular = specularLight * (pbrInputs.specularColor * brdf.x + brdf.y);\n diffuse *= u_ScaleIBLAmbient.x;\n specular *= u_ScaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n\nvec3 diffuse(PBRInfo pbrInputs)\n{\n return pbrInputs.diffuseColor / M_PI;\n}\n\nvec3 specularReflection(PBRInfo pbrInputs)\n{\n return pbrInputs.reflectance0 +\n (pbrInputs.reflectance90 - pbrInputs.reflectance0) *\n pow(clamp(1.0 - pbrInputs.VdotH, 0.0, 1.0), 5.0);\n}\n\n\n\nfloat geometricOcclusion(PBRInfo pbrInputs)\n{\n float NdotL = pbrInputs.NdotL;\n float NdotV = pbrInputs.NdotV;\n float r = pbrInputs.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n\n\n\n\nfloat microfacetDistribution(PBRInfo pbrInputs)\n{\n float roughnessSq = pbrInputs.alphaRoughness * pbrInputs.alphaRoughness;\n float f = (pbrInputs.NdotH * roughnessSq - pbrInputs.NdotH) * pbrInputs.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInputs) {\n pbrInputs.NdotL = 1.0;\n pbrInputs.NdotH = 0.0;\n pbrInputs.LdotH = 0.0;\n pbrInputs.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInputs, vec3 lightDirection) {\n vec3 n = pbrInputs.n;\n vec3 v = pbrInputs.v;\n vec3 l = normalize(lightDirection);\n vec3 h = normalize(l+v);\n\n pbrInputs.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInputs.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInputs.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInputs.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInputs, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInputs, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInputs, vec3 lightColor) {\n vec3 F = specularReflection(pbrInputs);\n float G = geometricOcclusion(pbrInputs);\n float D = microfacetDistribution(pbrInputs);\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInputs);\n vec3 specContrib = F * G * D / (4.0 * pbrInputs.NdotL * pbrInputs.NdotV);\n return pbrInputs.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture2D(u_BaseColorSampler, pbr_vUV)) * u_BaseColorFactor;\n#else\n vec4 baseColor = u_BaseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < u_AlphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbr_uUnlit){\n color.rgb = baseColor.rgb;\n }\n else{\n\n\n float perceptualRoughness = u_MetallicRoughnessValues.y;\n float metallic = u_MetallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n\n vec4 mrSample = texture2D(u_MetallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n\n\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal();\n vec3 v = normalize(u_Camera - pbr_vPosition);\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInputs = PBRInfo(\n 0.0,\n NdotV,\n 0.0,\n 0.0,\n 0.0,\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n#ifdef USE_LIGHTS\n PBRInfo_setAmbientLight(pbrInputs);\n color += calculateFinalColor(pbrInputs, lighting_uAmbientLight.color);\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uDirectionalLightCount, i++) {\n if (i < lighting_uDirectionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInputs, lighting_uDirectionalLight[i].direction);\n color += calculateFinalColor(pbrInputs, lighting_uDirectionalLight[i].color);\n }\n }\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uPointLightCount, i++) {\n if (i < lighting_uPointLightCount) {\n PBRInfo_setPointLight(pbrInputs, lighting_uPointLight[i]);\n float attenuation = getPointLightAttenuation(lighting_uPointLight[i], distance(lighting_uPointLight[i].position, pbr_vPosition));\n color += calculateFinalColor(pbrInputs, lighting_uPointLight[i].color / attenuation);\n }\n }\n#endif\n#ifdef USE_IBL\n color += getIBLContribution(pbrInputs, n, reflection);\n#endif\n#ifdef HAS_OCCLUSIONMAP\n float ao = texture2D(u_OcclusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, u_OcclusionStrength);\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n vec3 emissive = SRGBtoLINEAR(texture2D(u_EmissiveSampler, pbr_vUV)).rgb * u_EmissiveFactor;\n color += emissive;\n#endif\n\n#ifdef PBR_DEBUG\n\n\n\n\n\n color = mix(color, baseColor.rgb, u_ScaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), u_ScaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), u_ScaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n",defines:{LIGHTING_FRAGMENT:1},dependencies:[QD]};class mR{constructor(t={}){const{id:e}=t;this.id=e||Fx(this.constructor.name),this.display=!0,this.position=new nE,this.rotation=new nE,this.scale=new nE(1,1,1),this.matrix=new bT,this.userData={},this.props={},this._setScenegraphNodeProps(t)}delete(){}setProps(t){return this._setScenegraphNodeProps(t),this}toString(){return`{type: ScenegraphNode, id: ${this.id})}`}setPosition(t){return Rx(3===t.length,"setPosition requires vector argument"),this.position=t,this}setRotation(t){return Rx(3===t.length,"setRotation requires vector argument"),this.rotation=t,this}setScale(t){return Rx(3===t.length,"setScale requires vector argument"),this.scale=t,this}setMatrix(t,e=!0){e?this.matrix.copy(t):this.matrix=t}setMatrixComponents({position:t,rotation:e,scale:n,update:i=!0}){return t&&this.setPosition(t),e&&this.setRotation(e),n&&this.setScale(n),i&&this.updateMatrix(),this}updateMatrix(){const t=this.position,e=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(t),this.matrix.rotateXYZ(e),this.matrix.scale(n),this}update(t={}){const{position:e,rotation:n,scale:i}=t;return e&&this.setPosition(e),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}getCoordinateUniforms(t,e){Rx(t),e=e||this.matrix;const n=new bT(t).multiplyRight(e),i=n.invert(),r=i.transpose();return{viewMatrix:t,modelMatrix:e,objectMatrix:e,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:r}}_setScenegraphNodeProps(t){"display"in t&&(this.display=t.display),"position"in t&&this.setPosition(t.position),"rotation"in t&&this.setRotation(t.rotation),"scale"in t&&this.setScale(t.scale),"matrix"in t&&this.setMatrix(t.matrix),Object.assign(this.props,t)}}class bR extends mR{constructor(t={}){t=Array.isArray(t)?{children:t}:t;const{children:e=[]}=t;Nw.assert(e.every(t=>t instanceof mR),"every child must an instance of ScenegraphNode"),super(t),this.children=e}add(...t){for(const e of t)Array.isArray(e)?this.add(...e):this.children.push(e);return this}remove(t){const e=this.children,n=e.indexOf(t);return n>-1&&e.splice(n,1),this}removeAll(){return this.children=[],this}delete(){this.children.forEach(t=>t.delete()),this.removeAll(),super.delete()}traverse(t,{worldMatrix:e=new bT}={}){const n=new bT(e).multiplyRight(this.matrix);for(const i of this.children)i instanceof bR?i.traverse(t,{worldMatrix:n}):t(i,{worldMatrix:n})}}function yR(){var t=new qS(4);return qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function vR(t,e,n){n*=.5;var i=Math.sin(n);return t[0]=i*e[0],t[1]=i*e[1],t[2]=i*e[2],t[3]=Math.cos(n),t}function _R(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=n[0],l=n[1],c=n[2],u=n[3];return t[0]=i*u+o*a+r*c-s*l,t[1]=r*u+o*l+s*a-i*c,t[2]=s*u+o*c+i*l-r*a,t[3]=o*u-i*a-r*l-s*c,t}var wR=tT,xR=function(){var t=XS(),e=YS(1,0,0),n=YS(0,1,0);return function(i,r,s){var o=KS(r,s);return o<-.999999?(QS(t,e,r),function(t){return Math.hypot(t[0],t[1],t[2])}(t)<1e-6&&QS(t,n,r),function(t,e){var n=e[0],i=e[1],r=e[2],s=n*n+i*i+r*r;s>0&&(s=1/Math.sqrt(s)),t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s}(t,t),vR(i,t,Math.PI),i):o>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(QS(t,r,s),i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=1+o,function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=n*o,t[1]=i*o,t[2]=r*o,t[3]=s*o,t}(i,i))}}();yR(),yR(),function(){var t=new qS(9);qS!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1}();const SR=[0,0,0,1],ER={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},CR={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function OR(t){if(!t._animation){const e=CR[t.componentType],n=ER[t.type],i=n*t.count,{buffer:r,byteOffset:s}=t.bufferView.data,o=new e(r,s+(t.byteOffset||0),i);if(1===n)t._animation=Array.from(o);else{const e=[];for(let t=0;t0)n=Math.sqrt(i+1),t[3]=.5*n,t[0]=(e[5]-e[7])*(n=.5/n),t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{var r=0;e[4]>e[0]&&(r=1),e[8]>e[3*r+r]&&(r=2);var s=(r+1)%3,o=(r+2)%3;n=Math.sqrt(e[3*r+r]-e[3*s+s]-e[3*o+o]+1),t[r]=.5*n,t[3]=(e[3*s+o]-e[3*o+s])*(n=.5/n),t[s]=(e[3*s+r]+e[3*r+s])*n,t[o]=(e[3*o+r]+e[3*r+o])*n}}(this,t),this.check()}identity(){return function(t){t[0]=0,t[1]=0,t[2]=0,t[3]=1}(this),this.check()}fromAxisRotation(t,e){return vR(this,t,e),this.check()}setAxisAngle(t,e){return this.fromAxisRotation(t,e)}get ELEMENTS(){return 4}get x(){return this[0]}set x(t){this[0]=zS(t)}get y(){return this[1]}set y(t){this[1]=zS(t)}get z(){return this[2]}set z(t){this[2]=zS(t)}get w(){return this[3]}set w(t){this[3]=zS(t)}len(){return function(t){return Math.hypot(t[0],t[1],t[2],t[3])}(this)}lengthSquared(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3];return e*e+n*n+i*i+r*r}(this)}dot(t,e){if(void 0!==e)throw new Error("Quaternion.dot only takes one argument");return function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}(this,t)}rotationTo(t,e){return xR(this,t,e),this.check()}add(t,e){if(void 0!==e)throw new Error("Quaternion.add only takes one argument");return function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3]}(this,this,t),this.check()}calculateW(){return function(t,e){var n=e[0],i=e[1],r=e[2];t[0]=n,t[1]=i,t[2]=r,t[3]=Math.sqrt(Math.abs(1-n*n-i*i-r*r))}(this,this),this.check()}conjugate(){return function(t,e){t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3]}(this,this),this.check()}invert(){return function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s,a=o?1/o:0;t[0]=-n*a,t[1]=-i*a,t[2]=-r*a,t[3]=s*a}(this,this),this.check()}lerp(t,e,n){return function(t,e,n,i){var r=e[0],s=e[1],o=e[2],a=e[3];t[0]=r+i*(n[0]-r),t[1]=s+i*(n[1]-s),t[2]=o+i*(n[2]-o),t[3]=a+i*(n[3]-a)}(this,t,e,n),this.check()}multiplyRight(t,e){return BS(!e),_R(this,this,t),this.check()}multiplyLeft(t,e){return BS(!e),_R(this,t,this),this.check()}normalize(){const t=this.len(),e=t>0?1/t:0;return this[0]=this[0]*e,this[1]=this[1]*e,this[2]=this[2]*e,this[3]=this[3]*e,0===t&&(this[3]=1),this.check()}rotateX(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+o*a,t[1]=r*l+s*a,t[2]=s*l-r*a,t[3]=o*l-i*a}(this,this,t),this.check()}rotateY(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l-s*a,t[1]=r*l+o*a,t[2]=s*l+i*a,t[3]=o*l-r*a}(this,this,t),this.check()}rotateZ(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+r*a,t[1]=r*l-i*a,t[2]=s*l+o*a,t[3]=o*l-s*a}(this,this,t),this.check()}scale(t){return wR(this,this,t),this.check()}slerp(t,e,n){switch(arguments.length){case 1:({start:t=SR,target:e,ratio:n}=arguments[0]);break;case 2:[e,n]=arguments,t=this}return function(t,e,n,i){var r,s,o,a,l,c=e[0],u=e[1],h=e[2],d=e[3],p=n[0],f=n[1],g=n[2],m=n[3];(s=c*p+u*f+h*g+d*m)<0&&(s=-s,p=-p,f=-f,g=-g,m=-m),1-s>WS?(r=Math.acos(s),o=Math.sin(r),a=Math.sin((1-i)*r)/o,l=Math.sin(i*r)/o):(a=1-i,l=i),t[0]=a*c+l*p,t[1]=a*u+l*f,t[2]=a*h+l*g,t[3]=a*d+l*m}(this,t,e,n),this.check()}transformVector4(t,e=t){return function(t,e,n){var i=e[0],r=e[1],s=e[2],o=n[0],a=n[1],l=n[2],c=n[3],u=c*i+a*s-l*r,h=c*r+l*i-o*s,d=c*s+o*r-a*i,p=-o*i-a*r-l*s;t[0]=u*c+p*-o+h*-l-d*-a,t[1]=h*c+p*-a+d*-o-u*-l,t[2]=d*c+p*-l+u*-a-h*-o,t[3]=e[3]}(e,t,this),US(e,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(t,e){return this.setAxisAngle(t,e)}premultiply(t,e){return this.multiplyLeft(t,e)}multiply(t,e){return this.multiplyRight(t,e)}};class AR{constructor(t){this.startTime=0,this.playing=!0,this.speed=1,this.channels=[],Object.assign(this,t)}animate(t){if(!this.playing)return;const e=(t/1e3-this.startTime)*this.speed;this.channels.forEach(({sampler:t,target:n,path:i})=>{(function(t,{input:e,interpolation:n,output:i},r,s){const o=t%e[e.length-1],a=e.findIndex(t=>t>=o),l=Math.max(0,a-1);if(!Array.isArray(r[s]))switch(s){case"translation":r[s]=[0,0,0];break;case"rotation":r[s]=[0,0,0,1];break;case"scale":r[s]=[1,1,1];break;default:Nw.warn(`Bad animation path ${s}`)()}Rx(r[s].length===i[l].length);const c=e[l],u=e[a];switch(n){case"STEP":!function(t,e,n){for(let i=0;ic&&function(t,e,n,i,r){if("rotation"===e){kR.slerp({start:n,target:i,ratio:r});for(let n=0;nc&&function(t,e,{p0:n,outTangent0:i,inTangent1:r,p1:s,tDiff:o,ratio:a}){for(let l=0;l{const i=e.name||`Animation-${n}`,r=e.samplers.map(({input:e,interpolation:n="LINEAR",output:i})=>({input:OR(t.accessors[e]),interpolation:n,output:OR(t.accessors[i])})),s=e.channels.map(({sampler:e,target:n})=>({sampler:r[e],target:t.nodes[n.node],path:n.path}));return new AR({name:i,channels:s})})}animate(t){this.setTime(t)}setTime(t){this.animations.forEach(e=>e.animate(t))}getAnimations(){return this.animations}}class MR extends mR{constructor(t,e={}){super(e),this.onBeforeRender=null,this.AfterRender=null,t instanceof xO?(this.model=t,this._setModelNodeProps(e)):this.model=new xO(t,e),this.managedResources=e.managedResources||[]}setProps(t){return super.setProps(t),this._setModelNodeProps(t),this}delete(){this.model&&(this.model.delete(),this.model=null),this.managedResources.forEach(t=>t.delete()),this.managedResources=[]}draw(...t){return this.model.draw(...t)}setUniforms(...t){return this.model.setUniforms(...t),this}setAttributes(...t){return this.model.setAttributes(...t),this}updateModuleSettings(...t){return this.model.updateModuleSettings(...t),this}_setModelNodeProps(t){this.model.setProps(t)}}class IR{constructor(t,{attributes:e,material:n,pbrDebug:i,imageBasedLightingEnvironment:r,lights:s,useTangents:o}){this.gl=t,this.defines={MANUAL_SRGB:1,SRGB_FAST_APPROXIMATION:1},CS(t,"GLSL_TEXTURE_LOD")&&(this.defines.USE_TEX_LOD=1),this.uniforms={u_Camera:[0,0,0],u_MetallicRoughnessValues:[1,1]},this.parameters={},this.generatedTextures=[],r&&(this.uniforms.u_DiffuseEnvSampler=r.getDiffuseEnvSampler(),this.uniforms.u_SpecularEnvSampler=r.getSpecularEnvSampler(),this.uniforms.u_brdfLUT=r.getBrdfTexture(),this.uniforms.u_ScaleIBLAmbient=[1,1]),i&&(this.uniforms.u_ScaleDiffBaseMR=[0,0,0,0],this.uniforms.u_ScaleFGDSpec=[0,0,0,0]),this.defineIfPresent(e.NORMAL,"HAS_NORMALS"),this.defineIfPresent(e.TANGENT&&o,"HAS_TANGENTS"),this.defineIfPresent(e.TEXCOORD_0,"HAS_UV"),this.defineIfPresent(r,"USE_IBL"),this.defineIfPresent(s,"USE_LIGHTS"),this.defineIfPresent(i,"PBR_DEBUG"),n&&this.parseMaterial(n)}defineIfPresent(t,e){t&&(this.defines[e]=1)}parseTexture(t,e,n=null){const i=t.texture.source.image;let r,s={};i.compressed?(r=i,s={[this.gl.TEXTURE_MIN_FILTER]:i.data.length>1?this.gl.LINEAR_MIPMAP_NEAREST:this.gl.LINEAR}):r={data:i};const o=new lS(this.gl,wt({id:t.name||t.id,parameters:wt(wt({},t.texture&&t.texture.sampler&&t.texture.sampler.parameters||{}),s),pixelStore:{[this.gl.UNPACK_FLIP_Y_WEBGL]:!1}},r));this.uniforms[e]=o,this.defineIfPresent(n,n),this.generatedTextures.push(o)}parsePbrMetallicRoughness(t){t.baseColorTexture&&this.parseTexture(t.baseColorTexture,"u_BaseColorSampler","HAS_BASECOLORMAP"),this.uniforms.u_BaseColorFactor=t.baseColorFactor||[1,1,1,1],t.metallicRoughnessTexture&&this.parseTexture(t.metallicRoughnessTexture,"u_MetallicRoughnessSampler","HAS_METALROUGHNESSMAP");const{metallicFactor:e=1,roughnessFactor:n=1}=t;this.uniforms.u_MetallicRoughnessValues=[e,n]}parseMaterial(t){if(this.uniforms.pbr_uUnlit=Boolean(t.unlit),t.pbrMetallicRoughness&&this.parsePbrMetallicRoughness(t.pbrMetallicRoughness),t.normalTexture){this.parseTexture(t.normalTexture,"u_NormalSampler","HAS_NORMALMAP");const{scale:e=1}=t.normalTexture;this.uniforms.u_NormalScale=e}if(t.occlusionTexture){this.parseTexture(t.occlusionTexture,"u_OcclusionSampler","HAS_OCCLUSIONMAP");const{strength:e=1}=t.occlusionTexture;this.uniforms.u_OcclusionStrength=e}if(t.emissiveTexture&&(this.parseTexture(t.emissiveTexture,"u_EmissiveSampler","HAS_EMISSIVEMAP"),this.uniforms.u_EmissiveFactor=t.emissiveFactor||[0,0,0]),"MASK"===t.alphaMode){const{alphaCutoff:e=.5}=t;this.defines.ALPHA_CUTOFF=1,this.uniforms.u_AlphaCutoff=e}else"BLEND"===t.alphaMode&&(Nw.warn("BLEND alphaMode might not work well because it requires mesh sorting")(),Object.assign(this.parameters,{blend:!0,blendEquation:this.gl.FUNC_ADD,blendFunc:[this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA]}))}}function DR(t,e){return Fw(t)?`#version 300 es\n${e}`:e}const RR={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},NR={modelOptions:{},pbrDebug:!1,imageBasedLightingEnvironment:null,lights:!0,useTangents:!1};class LR{constructor(t,e={}){this.gl=t,this.options=Object.assign({},NR,e)}instantiate(t){return this.gltf=t,(t.scenes||[]).map(t=>this.createScene(t))}createAnimator(){return Array.isArray(this.gltf.animations)?new PR(this.gltf):null}createScene(t){const e=(t.nodes||[]).map(t=>this.createNode(t));return new bR({id:t.name||t.id,children:e})}createNode(t){if(!t._node){const e=(t.children||[]).map(t=>this.createNode(t));t.mesh&&e.push(this.createMesh(t.mesh));const n=new bR({id:t.name||t.id,children:e});if(t.matrix)n.setMatrix(t.matrix);else{if(n.matrix.identity(),t.translation&&n.matrix.translate(t.translation),t.rotation){const e=(new bT).fromQuaternion(t.rotation);n.matrix.multiplyRight(e)}t.scale&&n.matrix.scale(t.scale)}t._node=n}return t._node}createMesh(t){if(!t._mesh){const e=(t.primitives||[]).map((e,n)=>this.createPrimitive(e,n,t)),n=new bR({id:t.name||t.id,children:e});t._mesh=n}return t._mesh}getVertexCount(t){Nw.warn("getVertexCount() not found")()}createPrimitive(t,e,n){return function(t,e){const{id:n,drawMode:i,vertexCount:r,attributes:s,modelOptions:o}=e,a=new IR(t,e);Nw.info(4,"createGLTFModel defines: ",a.defines)();const l=[];l.push(...a.generatedTextures),l.push(...Object.values(s).map(t=>t.buffer));const c=new MR(t,Object.assign({id:n,drawMode:i,vertexCount:r,modules:[gR],defines:a.defines,parameters:a.parameters,vs:DR(t,"\n#if (__VERSION__ < 300)\n #define _attr attribute\n#else\n #define _attr in\n#endif\n\n _attr vec4 POSITION;\n\n #ifdef HAS_NORMALS\n _attr vec4 NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _attr vec4 TANGENT;\n #endif\n\n #ifdef HAS_UV\n _attr vec2 TEXCOORD_0;\n #endif\n\n void main(void) {\n vec4 _NORMAL = vec4(0.);\n vec4 _TANGENT = vec4(0.);\n vec2 _TEXCOORD_0 = vec2(0.);\n\n #ifdef HAS_NORMALS\n _NORMAL = NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _TANGENT = TANGENT;\n #endif\n\n #ifdef HAS_UV\n _TEXCOORD_0 = TEXCOORD_0;\n #endif\n\n pbr_setPositionNormalTangentUV(POSITION, _NORMAL, _TANGENT, _TEXCOORD_0);\n gl_Position = u_MVPMatrix * POSITION;\n }\n"),fs:DR(t,"\n#if (__VERSION__ < 300)\n #define fragmentColor gl_FragColor\n#else\n out vec4 fragmentColor;\n#endif\n\n void main(void) {\n fragmentColor = pbr_filterColor(vec4(0));\n }\n"),managedResources:l},o));return c.setProps({attributes:s}),c.setUniforms(a.uniforms),c}(this.gl,Object.assign({id:t.name||`${n.name||n.id}-primitive-${e}`,drawMode:t.mode||4,vertexCount:t.indices?t.indices.count:this.getVertexCount(t.attributes),attributes:this.createAttributes(t.attributes,t.indices),material:t.material},this.options))}createAttributes(t,e){const n={};return Object.keys(t).forEach(e=>{n[e]=this.createAccessor(t[e],this.createBuffer(t[e],this.gl.ARRAY_BUFFER))}),e&&(n.indices=this.createAccessor(e,this.createBuffer(e,this.gl.ELEMENT_ARRAY_BUFFER))),Nw.info(4,"glTF Attributes",{attributes:t,indices:e,generated:n})(),n}createBuffer(t,e){t.bufferView||(t.bufferView={});const{bufferView:n}=t;return n.lumaBuffers||(n.lumaBuffers={}),n.lumaBuffers[e]||(n.lumaBuffers[e]=new tS(this.gl,{id:`from-${n.id}`,data:n.data||t.value,target:e})),n.lumaBuffers[e]}createAccessor(t,e){return new Kx({buffer:e,offset:t.byteOffset||0,stride:t.bufferView.byteStride||0,type:t.componentType,size:RR[t.type]})}createSampler(t){return t}needsPOT(){return!1}}function jR(t,e,n){if(t.byteLength<=e+n)return"";const i=new DataView(t);let r="";for(let s=0;se[t.name]);return new UR(n,this.metadata)}selectAt(...t){const e=t.map(t=>this.fields[t]).filter(Boolean);return new UR(e,this.metadata)}assign(t){let e,n=this.metadata;if(t instanceof UR){const i=t;e=i.fields,n=HR(HR(new Map,this.metadata),i.metadata)}else e=t;const i=Object.create(null);for(const s of this.fields)i[s.name]=s;for(const s of e)i[s.name]=s;const r=Object.values(i);return new UR(r,n)}}function HR(t,e){return new Map([...t||new Map,...e||new Map])}let $R,GR,WR,qR,XR,YR,KR,QR;!function(t){t[t.NONE=0]="NONE",t[t.Null=1]="Null",t[t.Int=2]="Int",t[t.Float=3]="Float",t[t.Binary=4]="Binary",t[t.Utf8=5]="Utf8",t[t.Bool=6]="Bool",t[t.Decimal=7]="Decimal",t[t.Date=8]="Date",t[t.Time=9]="Time",t[t.Timestamp=10]="Timestamp",t[t.Interval=11]="Interval",t[t.List=12]="List",t[t.Struct=13]="Struct",t[t.Union=14]="Union",t[t.FixedSizeBinary=15]="FixedSizeBinary",t[t.FixedSizeList=16]="FixedSizeList",t[t.Map=17]="Map",t[t.Dictionary=-1]="Dictionary",t[t.Int8=-2]="Int8",t[t.Int16=-3]="Int16",t[t.Int32=-4]="Int32",t[t.Int64=-5]="Int64",t[t.Uint8=-6]="Uint8",t[t.Uint16=-7]="Uint16",t[t.Uint32=-8]="Uint32",t[t.Uint64=-9]="Uint64",t[t.Float16=-10]="Float16",t[t.Float32=-11]="Float32",t[t.Float64=-12]="Float64",t[t.DateDay=-13]="DateDay",t[t.DateMillisecond=-14]="DateMillisecond",t[t.TimestampSecond=-15]="TimestampSecond",t[t.TimestampMillisecond=-16]="TimestampMillisecond",t[t.TimestampMicrosecond=-17]="TimestampMicrosecond",t[t.TimestampNanosecond=-18]="TimestampNanosecond",t[t.TimeSecond=-19]="TimeSecond",t[t.TimeMillisecond=-20]="TimeMillisecond",t[t.TimeMicrosecond=-21]="TimeMicrosecond",t[t.TimeNanosecond=-22]="TimeNanosecond",t[t.DenseUnion=-23]="DenseUnion",t[t.SparseUnion=-24]="SparseUnion",t[t.IntervalDayTime=-25]="IntervalDayTime",t[t.IntervalYearMonth=-26]="IntervalYearMonth"}($R||($R={}));class ZR{static isNull(t){return t&&t.typeId===$R.Null}static isInt(t){return t&&t.typeId===$R.Int}static isFloat(t){return t&&t.typeId===$R.Float}static isBinary(t){return t&&t.typeId===$R.Binary}static isUtf8(t){return t&&t.typeId===$R.Utf8}static isBool(t){return t&&t.typeId===$R.Bool}static isDecimal(t){return t&&t.typeId===$R.Decimal}static isDate(t){return t&&t.typeId===$R.Date}static isTime(t){return t&&t.typeId===$R.Time}static isTimestamp(t){return t&&t.typeId===$R.Timestamp}static isInterval(t){return t&&t.typeId===$R.Interval}static isList(t){return t&&t.typeId===$R.List}static isStruct(t){return t&&t.typeId===$R.Struct}static isUnion(t){return t&&t.typeId===$R.Union}static isFixedSizeBinary(t){return t&&t.typeId===$R.FixedSizeBinary}static isFixedSizeList(t){return t&&t.typeId===$R.FixedSizeList}static isMap(t){return t&&t.typeId===$R.Map}static isDictionary(t){return t&&t.typeId===$R.Dictionary}get typeId(){return $R.NONE}compareTo(t){return this===t}}Symbol,Symbol,GR=Symbol.toStringTag;class JR extends ZR{constructor(t,e){super(),cA(this,"isSigned",void 0),cA(this,"bitWidth",void 0),this.isSigned=t,this.bitWidth=e}get typeId(){return $R.Int}get[GR](){return"Int"}toString(){return`${this.isSigned?"I":"Ui"}nt${this.bitWidth}`}}class tN extends JR{constructor(){super(!0,8)}}class eN extends JR{constructor(){super(!0,16)}}class nN extends JR{constructor(){super(!0,32)}}class iN extends JR{constructor(){super(!1,8)}}class rN extends JR{constructor(){super(!1,16)}}class sN extends JR{constructor(){super(!1,32)}}WR=Symbol.toStringTag;class oN extends ZR{constructor(t){super(),cA(this,"precision",void 0),this.precision=t}get typeId(){return $R.Float}get[WR](){return"Float"}toString(){return`Float${this.precision}`}}class aN extends oN{constructor(){super(32)}}class lN extends oN{constructor(){super(64)}}Symbol,Symbol,qR=Symbol.toStringTag,XR=Symbol.toStringTag,YR=Symbol.toStringTag,KR=Symbol.toStringTag,QR=Symbol.toStringTag;class cN extends ZR{constructor(t,e){super(),cA(this,"listSize",void 0),cA(this,"children",void 0),this.listSize=t,this.children=[e]}get typeId(){return $R.FixedSizeList}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get[QR](){return"FixedSizeList"}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}}class uN{constructor(t,e,n=!1,i=new Map){cA(this,"name",void 0),cA(this,"type",void 0),cA(this,"nullable",void 0),cA(this,"metadata",void 0),this.name=t,this.type=e,this.nullable=n,this.metadata=i}get typeId(){return this.type&&this.type.typeId}clone(){return new uN(this.name,this.type,this.nullable,this.metadata)}compareTo(t){return this.name===t.name&&this.type===t.type&&this.nullable===t.nullable&&this.metadata===t.metadata}toString(){return`${this.type}${this.nullable?", nullable":""}${this.metadata?`, metadata: ${this.metadata}`:""}`}}function hN(t,e,n){const i=n?dN(n.metadata):void 0,r=function(t){switch(t.constructor){case Int8Array:return new tN;case Uint8Array:return new iN;case Int16Array:return new eN;case Uint16Array:return new rN;case Int32Array:return new nN;case Uint32Array:return new sN;case Float32Array:return new aN;case Float64Array:return new lN;default:throw new Error("array type not supported")}}(e.value);return new uN(t,new cN(e.size,new uN("value",r)),!1,i)}function dN(t){const e=new Map;for(const n in t)e.set(`${n}.string`,JSON.stringify(t[n]));return e}const pN={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},fN={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array};class gN{constructor(t){cA(this,"draco",void 0),cA(this,"decoder",void 0),cA(this,"metadataQuerier",void 0),this.draco=t,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}destroy(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}parseSync(t,e={}){const n=new this.draco.DecoderBuffer;n.Init(new Int8Array(t),t.byteLength),this._disableAttributeTransforms(e);const i=this.decoder.GetEncodedGeometryType(n),r=i===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let t;switch(i){case this.draco.TRIANGULAR_MESH:t=this.decoder.DecodeBufferToMesh(n,r);break;case this.draco.POINT_CLOUD:t=this.decoder.DecodeBufferToPointCloud(n,r);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!t.ok()||!r.ptr){const e=`DRACO decompression failed: ${t.error_msg()}`;throw new Error(e)}const s=this._getDracoLoaderData(r,i,e),o=this._getMeshData(r,s,e),a=function(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,o=-1/0;const a=t.POSITION?t.POSITION.value:[],l=a&&a.length;for(let c=0;cr?t:r,s=l>s?l:s,o=u>o?u:o}return[[e,n,i],[r,s,o]]}(o.attributes),l=function(t,e,n){const i=dN(e.metadata),r=[],s=function(t){const e={};for(const n in t){const i=t[n];e[i.name||"undefined"]=i}return e}(e.attributes);for(const o in t){const e=hN(o,t[o],s[o]);r.push(e)}if(n){const t=hN("indices",n);r.push(t)}return new UR(r,i)}(o.attributes,s,o.indices);return ii(wt({loader:"draco",loaderData:s,header:{vertexCount:r.num_points(),boundingBox:a}},o),{schema:l})}finally{this.draco.destroy(n),r&&this.draco.destroy(r)}}_getDracoLoaderData(t,e,n){const i=this._getTopLevelMetadata(t),r=this._getDracoAttributes(t,n);return{geometry_type:e,num_attributes:t.num_attributes(),num_points:t.num_points(),num_faces:t instanceof this.draco.Mesh?t.num_faces():0,metadata:i,attributes:r}}_getDracoAttributes(t,e){const n={};for(let i=0;ithis.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits(),range:e.range(),min_values:new Float32Array([1,2,3]).map(t=>e.min_value(t))}}finally{this.draco.destroy(e)}}return null}_getOctahedronTransform(t,e){const{octahedronAttributes:n=[]}=e,i=t.attribute_type();if(n.map(t=>this.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits()}}finally{this.draco.destroy(e)}}return null}}var mN=n(49125);const bN={};function yN(t){return vN.apply(this,arguments)}function vN(){return(vN=gS(function*(t,e=null,n={}){return e&&(t=_N(t,e,n)),bN[t]=bN[t]||wN(t),yield bN[t]})).apply(this,arguments)}function _N(t,e,n){if(t.startsWith("http"))return t;const i=n.modules||{};return i[t]?i[t]:CA?n.CDN?(wA(n.CDN.startsWith("http")),`${n.CDN}/${e}@3.0.12/dist/libs/${t}`):OA?`../src/libs/${t}`:`modules/${e}/src/libs/${t}`:`modules/${e}/dist/libs/${t}`}function wN(t){return xN.apply(this,arguments)}function xN(){return(xN=gS(function*(t){return t.endsWith("wasm")?yield(yield fetch(t)).arrayBuffer():CA?OA?importScripts(t):SN(yield(yield fetch(t)).text(),t):mN.requireFromFile&&(yield mN.requireFromFile(t))})).apply(this,arguments)}function SN(t,e){if(!CA)return mN.requireFromString&&mN.requireFromString(t,e);if(OA)return eval.call(EA,t),null;const n=document.createElement("script");n.id=e;try{n.appendChild(document.createTextNode(t))}catch(i){n.text=t}return document.body.appendChild(n),null}const EN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.js",CN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_wasm_wrapper.js",ON="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.wasm";let TN;function kN(t){return AN.apply(this,arguments)}function AN(){return(AN=gS(function*(t){const e=t.modules||{};return TN=e.draco3d?TN||e.draco3d.createDecoderModule({}).then(t=>({draco:t})):TN||PN(t),yield TN})).apply(this,arguments)}function PN(t){return MN.apply(this,arguments)}function MN(){return(MN=gS(function*(t){let e,n;switch(t.draco&&t.draco.decoderType){case"js":e=yield yN(EN,"draco",t);break;case"wasm":default:[e,n]=yield Promise.all([yield yN(CN,"draco",t),yield yN(ON,"draco",t)])}return e=e||globalThis.DracoDecoderModule,yield IN(e,n)})).apply(this,arguments)}function IN(t,e){const n={};return e&&(n.wasmBinary=e),new Promise(e=>{t(ii(wt({},n),{onModuleLoaded:t=>e({draco:t})}))})}const DN=ii(wt({},zR),{parse:function(t,e){return RN.apply(this,arguments)}});function RN(){return(RN=gS(function*(t,e){const{draco:n}=yield kN(e),i=new gN(n);try{return i.parseSync(t,null==e?void 0:e.draco)}finally{i.destroy()}})).apply(this,arguments)}function NN(t,e){return Nk(t>=0),Nk(e>0),t+(e-1)&~(e-1)}function LN(t,e,n){let i;return i=t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer||t.arrayBuffer,t.byteOffset,t.byteLength),e.set(i,n),n+NN(i.byteLength,4)}const jN=["SCALAR","VEC2","VEC3","VEC4"],FN=[[Int8Array,5120],[Uint8Array,5121],[Int16Array,5122],[Uint16Array,5123],[Uint32Array,5125],[Float32Array,5126],[Float64Array,5130]],BN=new Map(FN),VN={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},zN={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},UN={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function HN(t){return jN[t-1]||jN[0]}function $N(t){const e=BN.get(t.constructor);if(!e)throw new Error("Illegal typed array");return e}function GN(t,e){const n=UN[t.componentType],i=VN[t.type],r=t.count*i,s=t.count*i*zN[t.componentType];return FR(s>=0&&s<=e.byteLength),{ArrayType:n,length:r,byteLength:s}}const WN={asset:{version:"2.0",generator:"loaders.gl"},buffers:[]};class qN{constructor(t){cA(this,"gltf",void 0),cA(this,"sourceBuffers",void 0),cA(this,"byteLength",void 0),this.gltf=t||{json:wt({},WN),buffers:[]},this.sourceBuffers=[],this.byteLength=0,this.gltf.buffers&&this.gltf.buffers[0]&&(this.byteLength=this.gltf.buffers[0].byteLength,this.sourceBuffers=[this.gltf.buffers[0]])}get json(){return this.gltf.json}getApplicationData(t){return this.json[t]}getExtraData(t){return(this.json.extras||{})[t]}getExtension(t){return this.getUsedExtensions().find(e=>e===t)?(this.json.extensions||{})[t]||!0:null}getRequiredExtension(t){return this.getRequiredExtensions().find(e=>e===t)?this.getExtension(t):null}getRequiredExtensions(){return this.json.extensionsRequired||[]}getUsedExtensions(){return this.json.extensionsUsed||[]}getObjectExtension(t,e){return(t.extensions||{})[e]}getScene(t){return this.getObject("scenes",t)}getNode(t){return this.getObject("nodes",t)}getSkin(t){return this.getObject("skins",t)}getMesh(t){return this.getObject("meshes",t)}getMaterial(t){return this.getObject("materials",t)}getAccessor(t){return this.getObject("accessors",t)}getTexture(t){return this.getObject("textures",t)}getSampler(t){return this.getObject("samplers",t)}getImage(t){return this.getObject("images",t)}getBufferView(t){return this.getObject("bufferViews",t)}getBuffer(t){return this.getObject("buffers",t)}getObject(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];if(!n)throw new Error(`glTF file error: Could not find ${t}[${e}]`);return n}getTypedArrayForBufferView(t){t=this.getBufferView(t);const e=this.gltf.buffers[t.buffer];return FR(e),new Uint8Array(e.arrayBuffer,(t.byteOffset||0)+e.byteOffset,t.byteLength)}getTypedArrayForAccessor(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data,{ArrayType:i,length:r}=GN(t,e);return new i(n,e.byteOffset+t.byteOffset,r)}getTypedArrayForImageData(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data;return new Uint8Array(n,e.byteOffset||0,e.byteLength)}addApplicationData(t,e){return this.json[t]=e,this}addExtraData(t,e){return this.json.extras=this.json.extras||{},this.json.extras[t]=e,this}addObjectExtension(t,e,n){return t.extensions=t.extensions||{},t.extensions[e]=n,this.registerUsedExtension(e),this}setObjectExtension(t,e,n){(t.extensions||{})[e]=n}removeObjectExtension(t,e){const n=t.extensions||{},i=n[e];return delete n[e],i}addExtension(t,e={}){return FR(e),this.json.extensions=this.json.extensions||{},this.json.extensions[t]=e,this.registerUsedExtension(t),e}addRequiredExtension(t,e={}){return FR(e),this.addExtension(t,e),this.registerRequiredExtension(t),e}registerUsedExtension(t){this.json.extensionsUsed=this.json.extensionsUsed||[],this.json.extensionsUsed.find(e=>e===t)||this.json.extensionsUsed.push(t)}registerRequiredExtension(t){this.registerUsedExtension(t),this.json.extensionsRequired=this.json.extensionsRequired||[],this.json.extensionsRequired.find(e=>e===t)||this.json.extensionsRequired.push(t)}removeExtension(t){this.json.extensionsRequired&&this._removeStringFromArray(this.json.extensionsRequired,t),this.json.extensionsUsed&&this._removeStringFromArray(this.json.extensionsUsed,t),this.json.extensions&&delete this.json.extensions[t]}setDefaultScene(t){this.json.scene=t}addScene(t){const{nodeIndices:e}=t;return this.json.scenes=this.json.scenes||[],this.json.scenes.push({nodes:e}),this.json.scenes.length-1}addNode(t){const{meshIndex:e,matrix:n}=t;this.json.nodes=this.json.nodes||[];const i={mesh:e};return n&&(i.matrix=n),this.json.nodes.push(i),this.json.nodes.length-1}addMesh(t){const{attributes:e,indices:n,material:i,mode:r=4}=t,s={primitives:[{attributes:this._addAttributes(e),mode:r}]};if(n){const t=this._addIndices(n);s.primitives[0].indices=t}return Number.isFinite(i)&&(s.primitives[0].material=i),this.json.meshes=this.json.meshes||[],this.json.meshes.push(s),this.json.meshes.length-1}addPointCloud(t){const e={primitives:[{attributes:this._addAttributes(t),mode:0}]};return this.json.meshes=this.json.meshes||[],this.json.meshes.push(e),this.json.meshes.length-1}addImage(t,e){const n=YI(t),i=e||(null==n?void 0:n.mimeType),r={bufferView:this.addBufferView(t),mimeType:i};return this.json.images=this.json.images||[],this.json.images.push(r),this.json.images.length-1}addBufferView(t){const e=t.byteLength;FR(Number.isFinite(e)),this.sourceBuffers=this.sourceBuffers||[],this.sourceBuffers.push(t);const n={buffer:0,byteOffset:this.byteLength,byteLength:e};return this.byteLength+=NN(e,4),this.json.bufferViews=this.json.bufferViews||[],this.json.bufferViews.push(n),this.json.bufferViews.length-1}addAccessor(t,e){const n={bufferView:t,type:HN(e.size),componentType:e.componentType,count:e.count,max:e.max,min:e.min};return this.json.accessors=this.json.accessors||[],this.json.accessors.push(n),this.json.accessors.length-1}addBinaryBuffer(t,e={size:3}){const n=this.addBufferView(t);let i={min:e.min,max:e.max};(!i.min||!i.max)&&(i=this._getAccessorMinMax(t,e.size));const r={size:e.size,componentType:$N(t),count:Math.round(t.length/e.size),min:i.min,max:i.max};return this.addAccessor(n,Object.assign(r,e))}addTexture(t){const{imageIndex:e}=t,n={source:e};return this.json.textures=this.json.textures||[],this.json.textures.push(n),this.json.textures.length-1}addMaterial(t){return this.json.materials=this.json.materials||[],this.json.materials.push(t),this.json.materials.length-1}createBinaryChunk(){var t,e;this.gltf.buffers=[];const n=this.byteLength,i=new ArrayBuffer(n),r=new Uint8Array(i);let s=0;for(const o of this.sourceBuffers||[])s=LN(o,r,s);null!==(t=this.json)&&void 0!==t&&null!==(e=t.buffers)&&void 0!==e&&e[0]?this.json.buffers[0].byteLength=n:this.json.buffers=[{byteLength:n}],this.gltf.binary=i,this.sourceBuffers=[i]}_removeStringFromArray(t,e){let n=!0;for(;n;){const i=t.indexOf(e);i>-1?t.splice(i,1):n=!1}}_addAttributes(t={}){const e={};for(const n in t){const i=t[n],r=this._getGltfAttributeName(n),s=this.addBinaryBuffer(i.value,i);e[r]=s}return e}_addIndices(t){return this.addBinaryBuffer(t,{size:1})}_getGltfAttributeName(t){switch(t.toLowerCase()){case"position":case"positions":case"vertices":return"POSITION";case"normal":case"normals":return"NORMAL";case"color":case"colors":return"COLOR_0";case"texcoord":case"texcoords":return"TEXCOORD_0";default:return t}}_getAccessorMinMax(t,e){const n={min:null,max:null};if(t.length0)throw new Error("glTF: Empty primitive detected: Draco decompression failure?")}function*lL(t){for(const e of t.json.meshes||[])for(const t of e.primitives)yield t}function cL(t){return uL.apply(this,arguments)}function uL(){return(uL=gS(function*(t){const e=new qN(t),{json:n}=e;e.removeExtension(QN);for(const i of n.materials||[])i.extensions&&i.extensions.KHR_materials_unlit&&(i.unlit=!0),e.removeObjectExtension(i,QN)})).apply(this,arguments)}function hL(t){const e=new qN(t),{json:n}=e;if(e.materials)for(const i of n.materials||[])i.unlit&&(delete i.unlit,e.addObjectExtension(i,QN,{}),e.addExtension(QN))}function dL(t){return pL.apply(this,arguments)}function pL(){return(pL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(KN);i&&(e.json.lights=i.lights,e.removeExtension(KN));for(const r of n.nodes||[]){const t=e.getObjectExtension(r,KN);t&&(r.light=t.light),e.removeObjectExtension(r,KN)}})).apply(this,arguments)}function fL(t){return gL.apply(this,arguments)}function gL(){return(gL=gS(function*(t){const e=new qN(t),{json:n}=e;if(n.lights){const t=e.addExtension(KN);FR(!t.lights),t.lights=n.lights,delete n.lights}if(e.json.lights){for(const t of e.json.lights)e.addObjectExtension(t.node,KN,t);delete e.json.lights}})).apply(this,arguments)}function mL(t){return bL.apply(this,arguments)}function bL(){return(bL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(ZN);if(i){const t=_L(i,e);for(const i of n.materials||[]){const n=e.getObjectExtension(i,ZN);n&&(i.technique=Object.assign({},n,t[n.technique]),i.technique.values=wL(i.technique,e)),e.removeObjectExtension(i,ZN)}e.removeExtension(ZN)}})).apply(this,arguments)}function yL(t,e){return vL.apply(this,arguments)}function vL(){return(vL=gS(function*(t,e){})).apply(this,arguments)}function _L(t,e){const{programs:n=[],shaders:i=[],techniques:r=[]}=t,s=new TextDecoder;return i.forEach(t=>{if(!Number.isFinite(t.bufferView))throw new Error("KHR_techniques_webgl: no shader code");t.code=s.decode(e.getTypedArrayForBufferView(t.bufferView))}),n.forEach(t=>{t.fragmentShader=i[t.fragmentShader],t.vertexShader=i[t.vertexShader]}),r.forEach(t=>{t.program=n[t.program]}),r}function wL(t,e){const n=Object.assign({},t.values);return Object.keys(t.uniforms||{}).forEach(e=>{t.uniforms[e].value&&!(e in n)&&(n[e]=t.uniforms[e].value)}),Object.keys(n).forEach(t=>{"object"==typeof n[t]&&void 0!==n[t].index&&(n[t].texture=e.getTexture(n[t].index))}),n}const xL={KHR_draco_mesh_compression:i,KHR_materials_unlit:r,KHR_lights_punctual:s,KHR_techniques_webgl:o};function SL(t){return EL.apply(this,arguments)}function EL(){return(EL=gS(function*(t,e={},n){for(const r in xL){var i;const s=(null==e||null===(i=e.gltf)||void 0===i?void 0:i.excludeExtensions)||{};r in s&&!s[r]||(yield xL[r].decode(t,e,n))}})).apply(this,arguments)}const CL={accessors:"accessor",animations:"animation",buffers:"buffer",bufferViews:"bufferView",images:"image",materials:"material",meshes:"mesh",nodes:"node",samplers:"sampler",scenes:"scene",skins:"skin",textures:"texture"},OL={accessor:"accessors",animations:"animation",buffer:"buffers",bufferView:"bufferViews",image:"images",material:"materials",mesh:"meshes",node:"nodes",sampler:"samplers",scene:"scenes",skin:"skins",texture:"textures"};class TL{constructor(t){this.idToIndexMap={animations:{},accessors:{},buffers:{},bufferViews:{},images:{},materials:{},meshes:{},nodes:{},samplers:{},scenes:{},skins:{},textures:{}}}normalize(t,e){this.json=t.json;const n=t.json;switch(n.asset&&n.asset.version){case"2.0":return;case void 0:case"1.0":break;default:return void console.warn(`glTF: Unknown version ${n.asset.version}`)}if(!e.normalize)throw new Error("glTF v1 is not supported.");console.warn("Converting glTF v1 to glTF v2 format. This is experimental and may fail."),this._addAsset(n),this._convertTopLevelObjectsToArrays(n),function(t){const e=new qN(t),{json:n}=e;for(const i of n.images||[]){const t=e.removeObjectExtension(i,XN);t&&Object.assign(i,t)}n.buffers&&n.buffers[0]&&delete n.buffers[0].uri,e.removeExtension(XN)}(t),this._convertObjectIdsToArrayIndices(n),this._updateObjects(n),this._updateMaterial(n)}_addAsset(t){t.asset=t.asset||{},t.asset.version="2.0",t.asset.generator=t.asset.generator||"Normalized to glTF 2.0 by loaders.gl"}_convertTopLevelObjectsToArrays(t){for(const e in CL)this._convertTopLevelObjectToArray(t,e)}_convertTopLevelObjectToArray(t,e){const n=t[e];if(n&&!Array.isArray(n)){t[e]=[];for(const i in n){const r=n[i];r.id=r.id||i;const s=t[e].length;t[e].push(r),this.idToIndexMap[e][i]=s}}}_convertObjectIdsToArrayIndices(t){for(const e in CL)this._convertIdsToIndices(t,e);"scene"in t&&(t.scene=this._convertIdToIndex(t.scene,"scene"));for(const e of t.textures)this._convertTextureIds(e);for(const e of t.meshes)this._convertMeshIds(e);for(const e of t.nodes)this._convertNodeIds(e);for(const e of t.scenes)this._convertSceneIds(e)}_convertTextureIds(t){t.source&&(t.source=this._convertIdToIndex(t.source,"image"))}_convertMeshIds(t){for(const e of t.primitives){const{attributes:t,indices:n,material:i}=e;for(const e in t)t[e]=this._convertIdToIndex(t[e],"accessor");n&&(e.indices=this._convertIdToIndex(n,"accessor")),i&&(e.material=this._convertIdToIndex(i,"material"))}}_convertNodeIds(t){t.children&&(t.children=t.children.map(t=>this._convertIdToIndex(t,"node"))),t.meshes&&(t.meshes=t.meshes.map(t=>this._convertIdToIndex(t,"mesh")))}_convertSceneIds(t){t.nodes&&(t.nodes=t.nodes.map(t=>this._convertIdToIndex(t,"node")))}_convertIdsToIndices(t,e){t[e]||(console.warn(`gltf v1: json doesn't contain attribute ${e}`),t[e]=[]);for(const n of t[e])for(const t in n){const e=this._convertIdToIndex(n[t],t);n[t]=e}}_convertIdToIndex(t,e){const n=OL[e];if(n in this.idToIndexMap){const i=this.idToIndexMap[n][t];if(!Number.isFinite(i))throw new Error(`gltf v1: failed to resolve ${e} with id ${t}`);return i}return t}_updateObjects(t){for(const e of this.json.buffers)delete e.type}_updateMaterial(t){for(const e of t.materials){e.pbrMetallicRoughness={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1};const n=e.values&&e.values.tex,i=t.textures.findIndex(t=>t.id===n);-1!==i&&(e.pbrMetallicRoughness.baseColorTexture={index:i})}}}function kL(t,e={}){return(new TL).normalize(t,e)}const AL={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},PL={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},ML={TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,REPEAT:10497,LINEAR:9729,NEAREST_MIPMAP_LINEAR:9986},IL={magFilter:ML.TEXTURE_MAG_FILTER,minFilter:ML.TEXTURE_MIN_FILTER,wrapS:ML.TEXTURE_WRAP_S,wrapT:ML.TEXTURE_WRAP_T},DL={[ML.TEXTURE_MAG_FILTER]:ML.LINEAR,[ML.TEXTURE_MIN_FILTER]:ML.NEAREST_MIPMAP_LINEAR,[ML.TEXTURE_WRAP_S]:ML.REPEAT,[ML.TEXTURE_WRAP_]:ML.REPEAT};class RL{postProcess(t,e={}){const{json:n,buffers:i=[],images:r=[],baseUri:s=""}=t;return FR(n),this.baseUri=s,this.json=n,this.buffers=i,this.images=r,this._resolveTree(this.json,e),this.json}_resolveTree(t,e={}){t.bufferViews&&(t.bufferViews=t.bufferViews.map((t,e)=>this._resolveBufferView(t,e))),t.images&&(t.images=t.images.map((t,e)=>this._resolveImage(t,e))),t.samplers&&(t.samplers=t.samplers.map((t,e)=>this._resolveSampler(t,e))),t.textures&&(t.textures=t.textures.map((t,e)=>this._resolveTexture(t,e))),t.accessors&&(t.accessors=t.accessors.map((t,e)=>this._resolveAccessor(t,e))),t.materials&&(t.materials=t.materials.map((t,e)=>this._resolveMaterial(t,e))),t.meshes&&(t.meshes=t.meshes.map((t,e)=>this._resolveMesh(t,e))),t.nodes&&(t.nodes=t.nodes.map((t,e)=>this._resolveNode(t,e))),t.skins&&(t.skins=t.skins.map((t,e)=>this._resolveSkin(t,e))),t.scenes&&(t.scenes=t.scenes.map((t,e)=>this._resolveScene(t,e))),void 0!==t.scene&&(t.scene=t.scenes[this.json.scene])}getScene(t){return this._get("scenes",t)}getNode(t){return this._get("nodes",t)}getSkin(t){return this._get("skins",t)}getMesh(t){return this._get("meshes",t)}getMaterial(t){return this._get("materials",t)}getAccessor(t){return this._get("accessors",t)}getCamera(t){return null}getTexture(t){return this._get("textures",t)}getSampler(t){return this._get("samplers",t)}getImage(t){return this._get("images",t)}getBufferView(t){return this._get("bufferViews",t)}getBuffer(t){return this._get("buffers",t)}_get(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];return n||console.warn(`glTF file error: Could not find ${t}[${e}]`),n}_resolveScene(t,e){return t.id=t.id||`scene-${e}`,t.nodes=(t.nodes||[]).map(t=>this.getNode(t)),t}_resolveNode(t,e){return t.id=t.id||`node-${e}`,t.children&&(t.children=t.children.map(t=>this.getNode(t))),void 0!==t.mesh?t.mesh=this.getMesh(t.mesh):void 0!==t.meshes&&t.meshes.length&&(t.mesh=t.meshes.reduce((t,e)=>{const n=this.getMesh(e);return t.id=n.id,t.primitives=t.primitives.concat(n.primitives),t},{primitives:[]})),void 0!==t.camera&&(t.camera=this.getCamera(t.camera)),void 0!==t.skin&&(t.skin=this.getSkin(t.skin)),t}_resolveSkin(t,e){return t.id=t.id||`skin-${e}`,t.inverseBindMatrices=this.getAccessor(t.inverseBindMatrices),t}_resolveMesh(t,e){return t.id=t.id||`mesh-${e}`,t.primitives&&(t.primitives=t.primitives.map(t=>{const e=(t=wt({},t)).attributes;t.attributes={};for(const n in e)t.attributes[n]=this.getAccessor(e[n]);return void 0!==t.indices&&(t.indices=this.getAccessor(t.indices)),void 0!==t.material&&(t.material=this.getMaterial(t.material)),t})),t}_resolveMaterial(t,e){if(t.id=t.id||`material-${e}`,t.normalTexture&&(t.normalTexture=wt({},t.normalTexture),t.normalTexture.texture=this.getTexture(t.normalTexture.index)),t.occlusionTexture&&(t.occlustionTexture=wt({},t.occlustionTexture),t.occlusionTexture.texture=this.getTexture(t.occlusionTexture.index)),t.emissiveTexture&&(t.emmisiveTexture=wt({},t.emmisiveTexture),t.emissiveTexture.texture=this.getTexture(t.emissiveTexture.index)),t.emissiveFactor||(t.emissiveFactor=t.emmisiveTexture?[1,1,1]:[0,0,0]),t.pbrMetallicRoughness){t.pbrMetallicRoughness=wt({},t.pbrMetallicRoughness);const e=t.pbrMetallicRoughness;e.baseColorTexture&&(e.baseColorTexture=wt({},e.baseColorTexture),e.baseColorTexture.texture=this.getTexture(e.baseColorTexture.index)),e.metallicRoughnessTexture&&(e.metallicRoughnessTexture=wt({},e.metallicRoughnessTexture),e.metallicRoughnessTexture.texture=this.getTexture(e.metallicRoughnessTexture.index))}return t}_resolveAccessor(t,e){if(t.id=t.id||`accessor-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView)),t.bytesPerComponent=function(t){return PL[t]}(t.componentType),t.components=function(t){return AL[t]}(t.type),t.bytesPerElement=t.bytesPerComponent*t.components,t.bufferView){const e=t.bufferView.buffer,{ArrayType:n,byteLength:i}=GN(t,t.bufferView),r=(t.bufferView.byteOffset||0)+(t.byteOffset||0)+e.byteOffset,s=e.arrayBuffer.slice(r,r+i);t.value=new n(s)}return t}_resolveTexture(t,e){return t.id=t.id||`texture-${e}`,t.sampler="sampler"in t?this.getSampler(t.sampler):DL,t.source=this.getImage(t.source),t}_resolveSampler(t,e){t.id=t.id||`sampler-${e}`,t.parameters={};for(const n in t){const e=this._enumSamplerParameter(n);void 0!==e&&(t.parameters[e]=t[n])}return t}_enumSamplerParameter(t){return IL[t]}_resolveImage(t,e){t.id=t.id||`image-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView));const n=this.images[e];return n&&(t.image=n),t}_resolveBufferView(t,e){t.id=t.id||`bufferView-${e}`;const n=t.buffer;t.buffer=this.buffers[n];let i=this.buffers[n].byteOffset||0;return"byteOffset"in t&&(i+=t.byteOffset),t.data=new Uint8Array(this.buffers[n].arrayBuffer,i,t.byteLength),t}_resolveCamera(t,e){return t.id=t.id||`camera-${e}`,t}}function NL(t,e){return(new RL).postProcess(t,e)}const LL=1735152710,jL=!0;function FL(t,e,n,i){const r=new Uint8Array(e.buffer,n,i),s=new TextDecoder("utf8").decode(r);return t.json=JSON.parse(s),NN(i,4)}function BL(t,e,n,i){return t.header.hasBinChunk=!0,t.binChunks.push({byteOffset:n,byteLength:i,arrayBuffer:e.buffer}),NN(i,4)}function VL(t,e){return zL.apply(this,arguments)}function zL(){return(zL=gS(function*(t,e,n=0,i,r){var s,o,a,l;UL(t,e,n,i),kL(t,{normalize:null==i||null===(s=i.gltf)||void 0===s?void 0:s.normalize});const c=[];if(null!=i&&null!==(o=i.gltf)&&void 0!==o&&o.loadBuffers&&t.json.buffers&&(yield HL(t,i,r)),null!=i&&null!==(a=i.gltf)&&void 0!==a&&a.loadImages){const e=GL(t,i,r);c.push(e)}const u=SL(t,i,r);return c.push(u),yield Promise.all(c),null!=i&&null!==(l=i.gltf)&&void 0!==l&&l.postProcess?NL(t,i):t})).apply(this,arguments)}function UL(t,e,n,i){if(i.uri&&(t.baseUri=i.uri),e instanceof ArrayBuffer&&!function(t,e=0,n={}){const i=new DataView(t),{magic:r=LL}=n,s=i.getUint32(e,!1);return s===r||s===LL}(e,n,i)&&(e=(new TextDecoder).decode(e)),"string"==typeof e)t.json=function(t){try{return JSON.parse(t)}catch(e){throw new Error(`Failed to parse JSON from data starting with "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?jR(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?jR(t,0,e):""}(t)}"`)}}(e);else if(e instanceof ArrayBuffer){const r={};n=function(t,e,n=0,i={}){const r=new DataView(e),s=function(t,e=0){return`${String.fromCharCode(t.getUint8(e+0))}${String.fromCharCode(t.getUint8(e+1))}${String.fromCharCode(t.getUint8(e+2))}${String.fromCharCode(t.getUint8(e+3))}`}(r,n+0),o=r.getUint32(n+4,jL),a=r.getUint32(n+8,jL);switch(Object.assign(t,{header:{byteOffset:n,byteLength:a,hasBinChunk:!1},type:s,version:o,json:{},binChunks:[]}),n+=12,t.version){case 1:return function(t,e,n){Nk(t.header.byteLength>20);const i=e.getUint32(n+0,jL),r=e.getUint32(n+4,jL);return n+=8,Nk(0===r),FL(t,e,n,i),(n+=i)+BL(t,e,n,t.header.byteLength)}(t,r,n);case 2:return function(t,e,n,i){return Nk(t.header.byteLength>20),function(t,e,n,i){for(;n+8<=t.header.byteLength;){const r=e.getUint32(n+0,jL),s=e.getUint32(n+4,jL);switch(n+=8,s){case 1313821514:FL(t,e,n,r);break;case 5130562:BL(t,e,n,r);break;case 0:i.strict||FL(t,e,n,r);break;case 1:i.strict||BL(t,e,n,r)}n+=NN(r,4)}}(t,e,n,{}),n+t.header.byteLength}(t,r,n);default:throw new Error(`Invalid GLB version ${t.version}. Only supports v1 and v2.`)}}(r,e,n,i.glb),FR("glTF"===r.type,`Invalid GLB magic string ${r.type}`),t._glb=r,t.json=r.json}else FR(!1,"GLTF: must be ArrayBuffer or string");if(t.buffers=new Array((t.json.buffers||[]).length).fill(null),t._glb&&t._glb.header.hasBinChunk){const{binChunks:e}=t._glb;t.buffers[0]={arrayBuffer:e[0].arrayBuffer,byteOffset:e[0].byteOffset,byteLength:e[0].byteLength}}t.images=new Array((t.json.images||[]).length).fill({})}function HL(t,e,n){return $L.apply(this,arguments)}function $L(){return($L=gS(function*(t,e,n){for(let s=0;s{t.traverse(t=>{Object.values(t.model.getUniforms()).forEach(t=>{!1===t.loaded&&e.push(t)})})}),yield ZL(()=>e.some(t=>!t.loaded))})).apply(this,arguments)}function ZL(t){return JL.apply(this,arguments)}function JL(){return(JL=gS(function*(t){for(;t();)yield new Promise(t=>requestAnimationFrame(t))})).apply(this,arguments)}const tj=[255,255,255,255],ej={scenegraph:{type:"object",value:null,async:!0},getScene:t=>t&&t.scenes?"object"==typeof t.scene?t.scene:t.scenes[t.scene||0]:t,getAnimator:t=>t&&t.animator,_animations:null,sizeScale:{type:"number",value:1,min:0},sizeMinPixels:{type:"number",min:0,value:0},sizeMaxPixels:{type:"number",min:0,value:Number.MAX_SAFE_INTEGER},getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:tj},_lighting:"flat",_imageBasedLightingEnvironment:null,getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]},loaders:[YL]};let nj=(()=>{class t extends LP{getShaders(){const t=[qD,eR];return"pbr"===this.props._lighting&&t.push(gR),{vs:"#version 300 es\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nuniform float sizeScale;\nuniform float sizeMinPixels;\nuniform float sizeMaxPixels;\nuniform mat4 sceneModelMatrix;\nuniform bool composeModelMatrix;\nin vec4 POSITION;\n\n#ifdef HAS_UV\n in vec2 TEXCOORD_0;\n#endif\n\n#ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n in vec4 NORMAL;\n #endif\n#endif\nout vec4 vColor;\n#ifndef MODULE_PBR\n #ifdef HAS_UV\n out vec2 vTEXCOORD_0;\n #endif\n#endif\nvoid main(void) {\n #if defined(HAS_UV) && !defined(MODULE_PBR)\n vTEXCOORD_0 = TEXCOORD_0;\n geometry.uv = vTEXCOORD_0;\n #endif\n\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n\n #ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n pbr_vNormal = project_normal(instanceModelMatrix * (sceneModelMatrix * vec4(NORMAL.xyz, 0.0)).xyz);\n geometry.normal = pbr_vNormal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV = TEXCOORD_0;\n #else\n pbr_vUV = vec2(0., 0.);\n #endif\n geometry.uv = pbr_vUV;\n #endif\n\n float originalSize = project_size_to_pixel(sizeScale);\n float clampedSize = clamp(originalSize, sizeMinPixels, sizeMaxPixels);\n\n vec3 pos = (instanceModelMatrix * (sceneModelMatrix * POSITION).xyz) * sizeScale * (clampedSize / originalSize) + instanceTranslation;\n if(composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), geometry.position);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, geometry.position);\n }\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBR\n pbr_vPosition = geometry.position.xyz;\n #endif\n\n vColor = instanceColors;\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\nuniform float opacity;\nin vec4 vColor;\n\nout vec4 fragmentColor;\n#ifndef MODULE_PBR\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n in vec2 vTEXCOORD_0;\n uniform sampler2D u_BaseColorSampler;\n #endif\n#endif\n\nvoid main(void) {\n #ifdef MODULE_PBR\n fragmentColor = vColor * pbr_filterColor(vec4(0));\n geometry.uv = pbr_vUV;\n #else\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n fragmentColor = vColor * texture2D(u_BaseColorSampler, vTEXCOORD_0);\n geometry.uv = vTEXCOORD_0;\n #else\n fragmentColor = vColor;\n #endif\n #endif\n\n fragmentColor.a *= opacity;\n DECKGL_FILTER_COLOR(fragmentColor, geometry);\n}\n",modules:t}}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:5130,fp64:this.use64bitPositions(),accessor:"getPosition",transition:!0},instanceColors:{type:5121,size:this.props.colorFormat.length,accessor:"getColor",normalized:!0,defaultValue:tj,transition:!0},instanceModelMatrix:cR})}updateState(t){super.updateState(t);const{props:e,oldProps:n}=t;e.scenegraph!==n.scenegraph?this._updateScenegraph(e):e._animations!==n._animations&&this._applyAnimationsProp(this.state.scenegraph,this.state.animator,e._animations)}finalizeState(){super.finalizeState(),this._deleteScenegraph()}_updateScenegraph(t){const{gl:e}=this.context;let n=null;if(t.scenegraph instanceof mR)n={scenes:[t.scenegraph]};else if(t.scenegraph&&!t.scenegraph.gltf){const i=t.scenegraph,r=function(t,e,n){const i=new LR(t,n);return{scenes:i.instantiate(e),animator:i.createAnimator()}}(e,i,this._getModelOptions());n=wt({gltf:i},r),function(t){return QL.apply(this,arguments)}(r).then(()=>this.setNeedsRedraw())}else t.scenegraph&&(Mw.deprecated("ScenegraphLayer.props.scenegraph","Use GLTFLoader instead of GLTFScenegraphLoader")(),n=t.scenegraph);const i={layer:this,gl:e},r=t.getScene(n,i),s=t.getAnimator(n,i);r instanceof mR?(this._deleteScenegraph(),this._applyAllAttributes(r),this._applyAnimationsProp(r,s,t._animations),this.setState({scenegraph:r,animator:s})):null!==r&&Mw.warn("invalid scenegraph:",r)()}_applyAllAttributes(t){if(this.state.attributesAvailable){const e=this.getAttributeManager().getAttributes();t.traverse(t=>{this._setModelAttributes(t.model,e)})}}_applyAnimationsProp(t,e,n){if(!t||!e||!n)return;const i=e.getAnimations();Object.keys(n).sort().forEach(t=>{const e=n[t];if("*"===t)i.forEach(t=>{Object.assign(t,e)});else if(Number.isFinite(Number(t))){const n=Number(t);n>=0&&ne===t);n?Object.assign(n,e):Mw.warn("animation ".concat(t," not found"))()}})}_deleteScenegraph(){const{scenegraph:t}=this.state;t instanceof mR&&t.delete()}_getModelOptions(){const{_imageBasedLightingEnvironment:t}=this.props;let e=null;return t&&(e="function"==typeof t?t({gl:this.context.gl,layer:this}):t),{gl:this.context.gl,waitForFullLoad:!0,imageBasedLightingEnvironment:e,modelOptions:wt({isInstanced:!0,transpileToGLSL100:!Fw(this.context.gl)},this.getShaders()),useTangents:!1}}updateAttributes(t){this.setState({attributesAvailable:!0}),this.state.scenegraph&&this.state.scenegraph.traverse(e=>{this._setModelAttributes(e.model,t)})}draw({moduleParameters:t=null,parameters:e={},context:n}){if(!this.state.scenegraph)return;this.props._animations&&this.state.animator&&(this.state.animator.animate(n.timeline.getTime()),this.setNeedsRedraw());const{viewport:i}=this.context,{sizeScale:r,sizeMinPixels:s,sizeMaxPixels:o,opacity:a,coordinateSystem:l}=this.props,c=this.getNumInstances();this.state.scenegraph.traverse((n,{worldMatrix:u})=>{n.model.setInstanceCount(c),n.updateModuleSettings(t),n.draw({parameters:e,uniforms:{sizeScale:r,opacity:a,sizeMinPixels:s,sizeMaxPixels:o,composeModelMatrix:uR(i,l),sceneModelMatrix:u,u_Camera:n.model.getUniforms().project_uCameraPosition}})})}}return t.layerName="ScenegraphLayer",t.defaultProps=ej,t})();const ij=new Uint16Array([0,1,2,0,2,3,4,5,6,4,6,7,8,9,10,8,10,11,12,13,14,12,14,15,16,17,18,16,18,19,20,21,22,20,22,23]),rj=new Float32Array([-1,-1,1,1,-1,1,1,1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1]),sj=new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,0]),oj=new Float32Array([0,0,1,0,1,1,0,1,1,0,1,1,0,1,0,0,0,1,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,0,1]),aj={POSITION:{size:3,value:new Float32Array(rj)},NORMAL:{size:3,value:new Float32Array(sj)},TEXCOORD_0:{size:2,value:new Float32Array(oj)}};class lj extends iR{constructor(t={}){const{id:e=Fx("cube-geometry")}=t;super(ii(wt({},t),{id:e,indices:{size:1,value:new Uint16Array(ij)},attributes:wt(wt({},aj),t.attributes)}))}}class cj{constructor(t=[0,0,0,0,0,0,0,0,0]){this.elements=void 0,this.elements=t}identity(){const t=this.elements;t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1}setZero(){const t=this.elements;t[0]=0,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t[8]=0}setTrace(t){const e=this.elements;e[0]=t.x,e[4]=t.y,e[8]=t.z}getTrace(t=new hj){const e=this.elements;return t.x=e[0],t.y=e[4],t.z=e[8],t}vmult(t,e=new hj){const n=this.elements,i=t.x,r=t.y,s=t.z;return e.x=n[0]*i+n[1]*r+n[2]*s,e.y=n[3]*i+n[4]*r+n[5]*s,e.z=n[6]*i+n[7]*r+n[8]*s,e}smult(t){for(let e=0;e0){const t=1/i;this.x*=t,this.y*=t,this.z*=t}else this.x=0,this.y=0,this.z=0;return i}unit(t=new hj){const e=this.x,n=this.y,i=this.z;let r=Math.sqrt(e*e+n*n+i*i);return r>0?(r=1/r,t.x=e*r,t.y=n*r,t.z=i*r):(t.x=1,t.y=0,t.z=0),t}length(){const t=this.x,e=this.y,n=this.z;return Math.sqrt(t*t+e*e+n*n)}lengthSquared(){return this.dot(this)}distanceTo(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return Math.sqrt((r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i))}distanceSquared(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return(r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i)}scale(t,e=new hj){const n=this.y,i=this.z;return e.x=t*this.x,e.y=t*n,e.z=t*i,e}vmul(t,e=new hj){return e.x=t.x*this.x,e.y=t.y*this.y,e.z=t.z*this.z,e}addScaledVector(t,e,n=new hj){return n.x=this.x+t*e.x,n.y=this.y+t*e.y,n.z=this.z+t*e.z,n}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}isZero(){return 0===this.x&&0===this.y&&0===this.z}negate(t=new hj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t}tangents(t,e){const n=this.length();if(n>0){const i=dj,r=1/n;i.set(this.x*r,this.y*r,this.z*r);const s=pj;Math.abs(i.x)<.9?(s.set(1,0,0),i.cross(s,t)):(s.set(0,1,0),i.cross(s,t)),i.cross(t,e)}else t.set(1,0,0),e.set(0,1,0)}toString(){return this.x+","+this.y+","+this.z}toArray(){return[this.x,this.y,this.z]}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}lerp(t,e,n){const i=this.x,r=this.y,s=this.z;n.x=i+(t.x-i)*e,n.y=r+(t.y-r)*e,n.z=s+(t.z-s)*e}almostEquals(t,e=1e-6){return!(Math.abs(this.x-t.x)>e||Math.abs(this.y-t.y)>e||Math.abs(this.z-t.z)>e)}almostZero(t=1e-6){return!(Math.abs(this.x)>t||Math.abs(this.y)>t||Math.abs(this.z)>t)}isAntiparallelTo(t,e){return this.negate(fj),fj.almostEquals(t,e)}clone(){return new hj(this.x,this.y,this.z)}}hj.ZERO=void 0,hj.UNIT_X=void 0,hj.UNIT_Y=void 0,hj.UNIT_Z=void 0,hj.ZERO=new hj(0,0,0),hj.UNIT_X=new hj(1,0,0),hj.UNIT_Y=new hj(0,1,0),hj.UNIT_Z=new hj(0,0,1);const dj=new hj,pj=new hj,fj=new hj;class gj{constructor(t={}){this.lowerBound=void 0,this.upperBound=void 0,this.lowerBound=new hj,this.upperBound=new hj,t.lowerBound&&this.lowerBound.copy(t.lowerBound),t.upperBound&&this.upperBound.copy(t.upperBound)}setFromPoints(t,e,n,i){const r=this.lowerBound,s=this.upperBound,o=n;r.copy(t[0]),o&&o.vmult(r,r),s.copy(r);for(let a=1;as.x&&(s.x=e.x),e.xs.y&&(s.y=e.y),e.ys.z&&(s.z=e.z),e.z=r.x&&e.y<=i.y&&n.y>=r.y&&e.z<=i.z&&n.z>=r.z}getCorners(t,e,n,i,r,s,o,a){const l=this.lowerBound,c=this.upperBound;t.copy(l),e.set(c.x,l.y,l.z),n.set(c.x,c.y,l.z),i.set(l.x,c.y,c.z),r.set(c.x,l.y,c.z),s.set(l.x,c.y,l.z),o.set(l.x,l.y,c.z),a.copy(c)}toLocalFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToLocal(e,e)}return e.setFromPoints(n)}toWorldFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToWorld(e,e)}return e.setFromPoints(n)}overlapsRay(t){const{direction:e,from:n}=t,i=1/e.x,r=1/e.y,s=1/e.z,o=(this.lowerBound.x-n.x)*i,a=(this.upperBound.x-n.x)*i,l=(this.lowerBound.y-n.y)*r,c=(this.upperBound.y-n.y)*r,u=(this.lowerBound.z-n.z)*s,h=(this.upperBound.z-n.z)*s,d=Math.max(Math.max(Math.min(o,a),Math.min(l,c)),Math.min(u,h)),p=Math.min(Math.min(Math.max(o,a),Math.max(l,c)),Math.max(u,h));return!(p<0||d>p)}}const mj=new hj,bj=[new hj,new hj,new hj,new hj,new hj,new hj,new hj,new hj];class yj{constructor(t=0,e=0,n=0,i=1){this.x=void 0,this.y=void 0,this.z=void 0,this.w=void 0,this.x=t,this.y=e,this.z=n,this.w=i}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}toString(){return this.x+","+this.y+","+this.z+","+this.w}toArray(){return[this.x,this.y,this.z,this.w]}setFromAxisAngle(t,e){const n=Math.sin(.5*e);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(.5*e),this}toAxisAngle(t=new hj){this.normalize();const e=2*Math.acos(this.w),n=Math.sqrt(1-this.w*this.w);return n<.001?(t.x=this.x,t.y=this.y,t.z=this.z):(t.x=this.x/n,t.y=this.y/n,t.z=this.z/n),[t,e]}setFromVectors(t,e){if(t.isAntiparallelTo(e)){const e=vj;t.tangents(e,_j),this.setFromAxisAngle(e,Math.PI)}else{const n=t.cross(e);this.x=n.x,this.y=n.y,this.z=n.z,this.w=Math.sqrt(kr(t.length(),2)*kr(e.length(),2))+t.dot(e),this.normalize()}return this}mult(t,e=new yj){const n=this.x,i=this.y,r=this.z,s=this.w,o=t.x,a=t.y,l=t.z,c=t.w;return e.x=n*c+s*o+i*l-r*a,e.y=i*c+s*a+r*o-n*l,e.z=r*c+s*l+n*a-i*o,e.w=s*c-n*o-i*a-r*l,e}inverse(t=new yj){const e=this.x,n=this.y,i=this.z,r=this.w;this.conjugate(t);const s=1/(e*e+n*n+i*i+r*r);return t.x*=s,t.y*=s,t.z*=s,t.w*=s,t}conjugate(t=new yj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t.w=this.w,t}normalize(){let t=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(t=1/t,this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}normalizeFast(){const t=(3-(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w))/2;return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}vmult(t,e=new hj){const n=t.x,i=t.y,r=t.z,s=this.x,o=this.y,a=this.z,l=this.w,c=l*n+o*r-a*i,u=l*i+a*n-s*r,h=l*r+s*i-o*n,d=-s*n-o*i-a*r;return e.x=c*l+d*-s+u*-a-h*-o,e.y=u*l+d*-o+h*-s-c*-a,e.z=h*l+d*-a+c*-o-u*-s,e}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}toEuler(t,e="YZX"){let n,i,r;const s=this.x,o=this.y,a=this.z,l=this.w;switch(e){case"YZX":const t=s*o+a*l;if(t>.499&&(n=2*Math.atan2(s,l),i=Math.PI/2,r=0),t<-.499&&(n=-2*Math.atan2(s,l),i=-Math.PI/2,r=0),void 0===n){const e=s*s,c=a*a;n=Math.atan2(2*o*l-2*s*a,1-o*o*2-2*c),i=Math.asin(2*t),r=Math.atan2(2*s*l-2*o*a,1-2*e-2*c)}break;default:throw new Error("Euler order "+e+" not supported yet.")}t.y=n,t.z=i,t.x=r}setFromEuler(t,e,n,i="XYZ"){const r=Math.cos(t/2),s=Math.cos(e/2),o=Math.cos(n/2),a=Math.sin(t/2),l=Math.sin(e/2),c=Math.sin(n/2);return"XYZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"YXZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"ZXY"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"ZYX"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"YZX"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o-a*l*c):"XZY"===i&&(this.x=a*s*o-r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o+a*l*c),this}clone(){return new yj(this.x,this.y,this.z,this.w)}slerp(t,e,n=new yj){const i=this.x,r=this.y,s=this.z,o=this.w;let a,l,c,u,h,d=t.x,p=t.y,f=t.z,g=t.w;return l=i*d+r*p+s*f+o*g,l<0&&(l=-l,d=-d,p=-p,f=-f,g=-g),1-l>1e-6?(a=Math.acos(l),c=Math.sin(a),u=Math.sin((1-e)*a)/c,h=Math.sin(e*a)/c):(u=1-e,h=e),n.x=u*i+h*d,n.y=u*r+h*p,n.z=u*s+h*f,n.w=u*o+h*g,n}integrate(t,e,n,i=new yj){const r=t.x*n.x,s=t.y*n.y,o=t.z*n.z,a=this.x,l=this.y,c=this.z,u=this.w,h=.5*e;return i.x+=h*(r*u+s*c-o*l),i.y+=h*(s*u+o*a-r*c),i.z+=h*(o*u+r*l-s*a),i.w+=h*(-r*a-s*l-o*c),i}}const vj=new hj,_j=new hj,wj={SPHERE:1,PLANE:2,BOX:4,COMPOUND:8,CONVEXPOLYHEDRON:16,HEIGHTFIELD:32,PARTICLE:64,CYLINDER:128,TRIMESH:256};let xj=(()=>{class t{constructor(e={}){this.id=void 0,this.type=void 0,this.boundingSphereRadius=void 0,this.collisionResponse=void 0,this.collisionFilterGroup=void 0,this.collisionFilterMask=void 0,this.material=void 0,this.body=void 0,this.id=t.idCounter++,this.type=e.type||0,this.boundingSphereRadius=0,this.collisionResponse=!e.collisionResponse||e.collisionResponse,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:1,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.material=e.material?e.material:null,this.body=null}updateBoundingSphereRadius(){throw"computeBoundingSphereRadius() not implemented for shape type "+this.type}volume(){throw"volume() not implemented for shape type "+this.type}calculateLocalInertia(t,e){throw"calculateLocalInertia() not implemented for shape type "+this.type}calculateWorldAABB(t,e,n,i){throw"calculateWorldAABB() not implemented for shape type "+this.type}}return t.idCounter=0,t.types=wj,t})();class Sj{constructor(t={}){this.position=void 0,this.quaternion=void 0,this.position=new hj,this.quaternion=new yj,t.position&&this.position.copy(t.position),t.quaternion&&this.quaternion.copy(t.quaternion)}pointToLocal(t,e){return Sj.pointToLocalFrame(this.position,this.quaternion,t,e)}pointToWorld(t,e){return Sj.pointToWorldFrame(this.position,this.quaternion,t,e)}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}static pointToLocalFrame(t,e,n,i=new hj){return n.vsub(t,i),e.conjugate(Ej),Ej.vmult(i,i),i}static pointToWorldFrame(t,e,n,i=new hj){return e.vmult(n,i),i.vadd(t,i),i}static vectorToWorldFrame(t,e,n=new hj){return t.vmult(e,n),n}static vectorToLocalFrame(t,e,n,i=new hj){return e.w*=-1,e.vmult(n,i),e.w*=-1,i}}const Ej=new yj;class Cj extends xj{constructor(t={}){const{vertices:e=[],faces:n=[],normals:i=[],axes:r,boundingSphereRadius:s}=t;super({type:xj.types.CONVEXPOLYHEDRON}),this.vertices=void 0,this.faces=void 0,this.faceNormals=void 0,this.worldVertices=void 0,this.worldVerticesNeedsUpdate=void 0,this.worldFaceNormals=void 0,this.worldFaceNormalsNeedsUpdate=void 0,this.uniqueAxes=void 0,this.uniqueEdges=void 0,this.vertices=e,this.faces=n,this.faceNormals=i,0===this.faceNormals.length&&this.computeNormals(),s?this.boundingSphereRadius=s:this.updateBoundingSphereRadius(),this.worldVertices=[],this.worldVerticesNeedsUpdate=!0,this.worldFaceNormals=[],this.worldFaceNormalsNeedsUpdate=!0,this.uniqueAxes=r?r.slice():null,this.uniqueEdges=[],this.computeEdges()}computeEdges(){const t=this.faces,e=this.vertices,n=this.uniqueEdges;n.length=0;const i=new hj;for(let r=0;r!==t.length;r++){const s=t[r],o=s.length;for(let t=0;t!==o;t++){e[s[t]].vsub(e[s[(t+1)%o]],i),i.normalize();let r=!1;for(let t=0;t!==n.length;t++)if(n[t].almostEquals(i)||n[t].almostEquals(i)){r=!0;break}r||n.push(i.clone())}}}computeNormals(){this.faceNormals.length=this.faces.length;for(let t=0;th&&(h=t,u=p)}const d=[];for(let p=0;p=0&&this.clipFaceAgainstHull(s,t,e,d,o,a,l)}findSeparatingAxis(t,e,n,i,r,s,o,a){const l=new hj,c=new hj,u=new hj,h=new hj,d=new hj,p=new hj;let f=Number.MAX_VALUE;const g=this;if(g.uniqueAxes)for(let m=0;m!==g.uniqueAxes.length;m++){n.vmult(g.uniqueAxes[m],l);const o=g.testSepAxis(l,t,e,n,i,r);if(!1===o)return!1;o0&&s.negate(s),!0}testSepAxis(t,e,n,i,r,s){Cj.project(this,t,n,i,Oj),Cj.project(e,t,r,s,Tj);const o=Oj[0],a=Oj[1],l=Tj[0],c=Tj[1];if(o0?1/e:0,this.material=t.material||null,this.linearDamping="number"==typeof t.linearDamping?t.linearDamping:.01,this.type=e<=0?Dj.STATIC:Dj.DYNAMIC,typeof t.type==typeof Dj.STATIC&&(this.type=t.type),this.allowSleep=void 0===t.allowSleep||t.allowSleep,this.sleepState=Dj.AWAKE,this.sleepSpeedLimit=void 0!==t.sleepSpeedLimit?t.sleepSpeedLimit:.1,this.sleepTimeLimit=void 0!==t.sleepTimeLimit?t.sleepTimeLimit:1,this.timeLastSleepy=0,this.wakeUpAfterNarrowphase=!1,this.torque=new hj,this.quaternion=new yj,this.initQuaternion=new yj,this.previousQuaternion=new yj,this.interpolatedQuaternion=new yj,t.quaternion&&(this.quaternion.copy(t.quaternion),this.initQuaternion.copy(t.quaternion),this.previousQuaternion.copy(t.quaternion),this.interpolatedQuaternion.copy(t.quaternion)),this.angularVelocity=new hj,t.angularVelocity&&this.angularVelocity.copy(t.angularVelocity),this.initAngularVelocity=new hj,this.shapes=[],this.shapeOffsets=[],this.shapeOrientations=[],this.inertia=new hj,this.invInertia=new hj,this.invInertiaWorld=new cj,this.invMassSolve=0,this.invInertiaSolve=new hj,this.invInertiaWorldSolve=new cj,this.fixedRotation=void 0!==t.fixedRotation&&t.fixedRotation,this.angularDamping=void 0!==t.angularDamping?t.angularDamping:.01,this.linearFactor=new hj(1,1,1),t.linearFactor&&this.linearFactor.copy(t.linearFactor),this.angularFactor=new hj(1,1,1),t.angularFactor&&this.angularFactor.copy(t.angularFactor),this.aabb=new gj,this.aabbNeedsUpdate=!0,this.boundingRadius=0,this.wlambda=new hj,this.isTrigger=Boolean(t.isTrigger),t.shape&&this.addShape(t.shape),this.updateMassProperties()}wakeUp(){const t=this.sleepState;this.sleepState=Dj.AWAKE,this.wakeUpAfterNarrowphase=!1,t===Dj.SLEEPING&&this.dispatchEvent(Dj.wakeupEvent)}sleep(){this.sleepState=Dj.SLEEPING,this.velocity.set(0,0,0),this.angularVelocity.set(0,0,0),this.wakeUpAfterNarrowphase=!1}sleepTick(t){if(this.allowSleep){const e=this.sleepState,n=this.velocity.lengthSquared()+this.angularVelocity.lengthSquared(),i=kr(this.sleepSpeedLimit,2);e===Dj.AWAKE&&ni?this.wakeUp():e===Dj.SLEEPY&&t-this.timeLastSleepy>this.sleepTimeLimit&&(this.sleep(),this.dispatchEvent(Dj.sleepEvent))}}updateSolveMassProperties(){this.sleepState===Dj.SLEEPING||this.type===Dj.KINEMATIC?(this.invMassSolve=0,this.invInertiaSolve.setZero(),this.invInertiaWorldSolve.setZero()):(this.invMassSolve=this.invMass,this.invInertiaSolve.copy(this.invInertia),this.invInertiaWorldSolve.copy(this.invInertiaWorld))}pointToLocalFrame(t,e=new hj){return t.vsub(this.position,e),this.quaternion.conjugate().vmult(e,e),e}vectorToLocalFrame(t,e=new hj){return this.quaternion.conjugate().vmult(t,e),e}pointToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e.vadd(this.position,e),e}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}addShape(t,e,n){const i=new hj,r=new yj;return e&&i.copy(e),n&&r.copy(n),this.shapes.push(t),this.shapeOffsets.push(i),this.shapeOrientations.push(r),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=this,this}removeShape(t){const e=this.shapes.indexOf(t);return-1===e?(console.warn("Shape does not belong to the body"),this):(this.shapes.splice(e,1),this.shapeOffsets.splice(e,1),this.shapeOrientations.splice(e,1),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=null,this)}updateBoundingRadius(){const t=this.shapes,e=this.shapeOffsets,n=t.length;let i=0;for(let r=0;r!==n;r++){const n=t[r];n.updateBoundingSphereRadius();const s=e[r].length(),o=n.boundingSphereRadius;s+o>i&&(i=s+o)}this.boundingRadius=i}updateAABB(){const t=this.shapes,e=this.shapeOffsets,n=this.shapeOrientations,i=t.length,r=Rj,s=Nj,o=this.quaternion,a=this.aabb,l=Lj;for(let c=0;c!==i;c++){const i=t[c];o.vmult(e[c],r),r.vadd(this.position,r),o.mult(n[c],s),i.calculateWorldAABB(r,s,l.lowerBound,l.upperBound),0===c?a.copy(l):a.extend(l)}this.aabbNeedsUpdate=!1}updateInertiaWorld(t){const e=this.invInertia;if(e.x!==e.y||e.y!==e.z||t){const t=jj,n=Fj;t.setRotationFromQuaternion(this.quaternion),t.transpose(n),t.scale(e,t),t.mmult(n,this.invInertiaWorld)}}applyForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=Bj;e.cross(t,n),this.force.vadd(t,this.force),this.torque.vadd(n,this.torque)}applyLocalForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=Vj,i=zj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyForce(n,i)}applyTorque(t){this.type===Dj.DYNAMIC&&(this.sleepState===Dj.SLEEPING&&this.wakeUp(),this.torque.vadd(t,this.torque))}applyImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=e,i=Uj;i.copy(t),i.scale(this.invMass,i),this.velocity.vadd(i,this.velocity);const r=Hj;n.cross(t,r),this.invInertiaWorld.vmult(r,r),this.angularVelocity.vadd(r,this.angularVelocity)}applyLocalImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=$j,i=Gj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyImpulse(n,i)}updateMassProperties(){const t=Wj;this.invMass=this.mass>0?1/this.mass:0;const e=this.inertia,n=this.fixedRotation;this.updateAABB(),t.set((this.aabb.upperBound.x-this.aabb.lowerBound.x)/2,(this.aabb.upperBound.y-this.aabb.lowerBound.y)/2,(this.aabb.upperBound.z-this.aabb.lowerBound.z)/2),Pj.calculateInertia(t,this.mass,e),this.invInertia.set(e.x>0&&!n?1/e.x:0,e.y>0&&!n?1/e.y:0,e.z>0&&!n?1/e.z:0),this.updateInertiaWorld(!0)}getVelocityAtWorldPoint(t,e){const n=new hj;return t.vsub(this.position,n),this.angularVelocity.cross(n,e),this.velocity.vadd(e,e),e}integrate(t,e,n){if(this.previousPosition.copy(this.position),this.previousQuaternion.copy(this.quaternion),this.type!==Dj.DYNAMIC&&this.type!==Dj.KINEMATIC||this.sleepState===Dj.SLEEPING)return;const i=this.velocity,r=this.angularVelocity,s=this.position,o=this.force,a=this.torque,l=this.quaternion,c=this.invInertiaWorld,u=this.linearFactor,h=this.invMass*t;i.x+=o.x*h*u.x,i.y+=o.y*h*u.y,i.z+=o.z*h*u.z;const d=c.elements,p=this.angularFactor,f=a.x*p.x,g=a.y*p.y,m=a.z*p.z;r.x+=t*(d[0]*f+d[1]*g+d[2]*m),r.y+=t*(d[3]*f+d[4]*g+d[5]*m),r.z+=t*(d[6]*f+d[7]*g+d[8]*m),s.x+=i.x*t,s.y+=i.y*t,s.z+=i.z*t,l.integrate(this.angularVelocity,t,this.angularFactor,l),e&&(n?l.normalizeFast():l.normalize()),this.aabbNeedsUpdate=!0,this.updateInertiaWorld()}}Dj.idCounter=0,Dj.COLLIDE_EVENT_NAME="collide",Dj.DYNAMIC=1,Dj.STATIC=2,Dj.KINEMATIC=4,Dj.AWAKE=0,Dj.SLEEPY=1,Dj.SLEEPING=2,Dj.wakeupEvent={type:"wakeup"},Dj.sleepyEvent={type:"sleepy"},Dj.sleepEvent={type:"sleep"};const Rj=new hj,Nj=new yj,Lj=new gj,jj=new cj,Fj=new cj,Bj=new hj,Vj=new hj,zj=new hj,Uj=new hj,Hj=new hj,$j=new hj,Gj=new hj,Wj=new hj;new hj,new hj;class qj{constructor(){this.rayFromWorld=void 0,this.rayToWorld=void 0,this.hitNormalWorld=void 0,this.hitPointWorld=void 0,this.hasHit=void 0,this.shape=void 0,this.body=void 0,this.hitFaceIndex=void 0,this.distance=void 0,this.shouldStop=void 0,this.rayFromWorld=new hj,this.rayToWorld=new hj,this.hitNormalWorld=new hj,this.hitPointWorld=new hj,this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}reset(){this.rayFromWorld.setZero(),this.rayToWorld.setZero(),this.hitNormalWorld.setZero(),this.hitPointWorld.setZero(),this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}abort(){this.shouldStop=!0}set(t,e,n,i,r,s,o){this.rayFromWorld.copy(t),this.rayToWorld.copy(e),this.hitNormalWorld.copy(n),this.hitPointWorld.copy(i),this.shape=r,this.body=s,this.distance=o}}let Xj,Yj,Kj,Qj,Zj,Jj,tF;Xj=xj.types.SPHERE,Yj=xj.types.PLANE,Kj=xj.types.BOX,Qj=xj.types.CYLINDER,Zj=xj.types.CONVEXPOLYHEDRON,Jj=xj.types.HEIGHTFIELD,tF=xj.types.TRIMESH;class eF{get[Xj](){return this._intersectSphere}get[Yj](){return this._intersectPlane}get[Kj](){return this._intersectBox}get[Qj](){return this._intersectConvex}get[Zj](){return this._intersectConvex}get[Jj](){return this._intersectHeightfield}get[tF](){return this._intersectTrimesh}constructor(t=new hj,e=new hj){this.from=void 0,this.to=void 0,this.direction=void 0,this.precision=void 0,this.checkCollisionResponse=void 0,this.skipBackfaces=void 0,this.collisionFilterMask=void 0,this.collisionFilterGroup=void 0,this.mode=void 0,this.result=void 0,this.hasHit=void 0,this.callback=void 0,this.from=t.clone(),this.to=e.clone(),this.direction=new hj,this.precision=1e-4,this.checkCollisionResponse=!0,this.skipBackfaces=!1,this.collisionFilterMask=-1,this.collisionFilterGroup=-1,this.mode=eF.ANY,this.result=new qj,this.hasHit=!1,this.callback=t=>{}}intersectWorld(t,e){return this.mode=e.mode||eF.ANY,this.result=e.result||new qj,this.skipBackfaces=!!e.skipBackfaces,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:-1,this.checkCollisionResponse=void 0===e.checkCollisionResponse||e.checkCollisionResponse,e.from&&this.from.copy(e.from),e.to&&this.to.copy(e.to),this.callback=e.callback||(()=>{}),this.hasHit=!1,this.result.reset(),this.updateDirection(),this.getAABB(nF),iF.length=0,t.broadphase.aabbQuery(t,nF,iF),this.intersectBodies(iF),this.hasHit}intersectBody(t,e){e&&(this.result=e,this.updateDirection());const n=this.checkCollisionResponse;if(n&&!t.collisionResponse||0==(this.collisionFilterGroup&t.collisionFilterMask)||0==(t.collisionFilterGroup&this.collisionFilterMask))return;const i=oF,r=aF;for(let s=0,o=t.shapes.length;st.boundingSphereRadius)return;const r=this[t.type];r&&r.call(this,t,e,n,i,t)}_intersectBox(t,e,n,i,r){return this._intersectConvex(t.convexPolyhedronRepresentation,e,n,i,r)}_intersectPlane(t,e,n,i,r){const s=this.from,o=this.to,a=this.direction,l=new hj(0,0,1);e.vmult(l,l);const c=new hj;s.vsub(n,c);const u=c.dot(l);if(o.vsub(n,c),u*c.dot(l)>0||s.distanceTo(o)=0&&t<=1&&(s.lerp(o,t,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1)),this.result.shouldStop)return;e>=0&&e<=1&&(s.lerp(o,e,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1))}}_intersectConvex(t,e,n,i,r,s){const o=yF,a=vF,l=s&&s.faceList||null,c=t.faces,u=t.vertices,h=t.faceNormals,d=this.direction,p=this.from,f=p.distanceTo(this.to),g=l?l.length:c.length,m=this.result;for(let b=0;!m.shouldStop&&bf||this.reportIntersection(o,lF,r,i,t)}}}}_intersectTrimesh(t,e,n,i,r,s){const o=_F,a=OF,l=TF,c=vF,u=wF,h=xF,d=SF,p=CF,f=EF,g=t.indices,m=this.from,b=this.to,y=this.direction;l.position.copy(n),l.quaternion.copy(e),Sj.vectorToLocalFrame(n,e,y,u),Sj.pointToLocalFrame(n,e,m,h),Sj.pointToLocalFrame(n,e,b,d),d.x*=t.scale.x,d.y*=t.scale.y,d.z*=t.scale.z,h.x*=t.scale.x,h.y*=t.scale.y,h.z*=t.scale.z,d.vsub(h,u),u.normalize();const v=h.distanceSquared(d);t.tree.rayQuery(this,l,a);for(let _=0,w=a.length;!this.result.shouldStop&&_!==w;_++){const s=a[_];t.getNormal(s,o),t.getVertex(g[3*s],cF),cF.vsub(h,c);const l=u.dot(o),d=o.dot(c)/l;if(d<0)continue;u.scale(d,lF),lF.vadd(h,lF),t.getVertex(g[3*s+1],uF),t.getVertex(g[3*s+2],hF);const m=lF.distanceSquared(h);!eF.pointInTriangle(lF,uF,cF,hF)&&!eF.pointInTriangle(lF,cF,uF,hF)||m>v||(Sj.vectorToWorldFrame(e,o,f),Sj.pointToWorldFrame(n,e,lF,p),this.reportIntersection(f,p,r,i,s))}a.length=0}reportIntersection(t,e,n,i,r){const s=this.from,o=this.to,a=s.distanceTo(e),l=this.result;if(!(this.skipBackfaces&&t.dot(this.direction)>0))switch(l.hitFaceIndex=void 0!==r?r:-1,this.mode){case eF.ALL:this.hasHit=!0,l.set(s,o,t,e,n,i,a),l.hasHit=!0,this.callback(l);break;case eF.CLOSEST:(a=0&&(u=r*l-s*o)>=0&&c+uDate.now()-t}var iB=n(24517);function rB(t,e,n){e||(e=new bT(bT.IDENTITY));const i=new bT(bT.IDENTITY);if(!t)return!0;if(t.matrix)i.copy(t.matrix);else{if(i.identity(),t.translation&&i.translate(t.translation),t.rotation){const e=new bT(bT.IDENTITY).fromQuaternion(t.rotation);i.multiplyRight(e)}t.scale&&i.scale(t.scale)}const r=new bT(e).multiplyRight(i);if(!1===n(t,r,e))return!1;for(const s of t.nodes||t.children||[])if(!1===rB(s,r,n))return!1;return!0}function sB(){fP([zR,YL])}function oB(t,e){const n=e.nodes.find(e=>e.name===t);if(n){let i=!1;for(const t of e.scenes)i||rB(t,new bT(bT.IDENTITY),(t,e)=>t!==n||(t.matrix=e,t.translation=void 0,t.rotation=void 0,t.scale=void 0,i=!0,!1));return e.scene={id:t,name:t,nodes:[n]},e.scenes=[e.scene],{scene:e.scene,scenes:e.scenes}}return e}function aB(t,e){return lw(this,void 0,void 0,function*(){const n=t.scenegraph;let i;i=e?e[n]||(e[n]=fetch(n).then(t=>t.blob())):fetch(n);const r=yield CP(i,YL,{DracoLoader:DN,gltf:{decompressMeshes:!0,postProcess:!0}});return oB(t.scenegraphNode,r)})}function lB(t,e){return lw(this,void 0,void 0,function*(){return oB(t,yield e)})}function cB(t,e,n){if(e&&0!==e.length)return new fR(Object.assign({id:t,pickable:!0,autoHighlight:!1,highlightColor:[30,136,229,255],coordinateSystem:Iw.CARTESIAN,data:e,mesh:new lj,wireframe:!1,getTransformMatrix:t=>t.transformMatrix,getColor:t=>t.color||[255,255,255,229.5]},n))}let uB=(()=>{class t extends jP{initializeState(){const{data:t}=this.props;this.setState({data:null!=t?t:[],zoomOpacity:.8,doCollisions:!1}),sB()}renderLayers(){const e=this.state,n=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&t.unpickable),i=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&!t.unpickable),r=e.data.filter(t=>!t.scenegraph&&t.wireframe),s=e.data.filter(t=>!!t.scenegraph);e.doCollisions&&function(t){lw(this,void 0,void 0,function*(){console.log("Starting Collisioning");const e=t.filter(t=>!t.scenegraph&&!t.wireframe).map(t=>{const e=new bT(t.transformMatrix),n=e.transformAsPoint([-1,-1,-1],[]),i=e.transformAsPoint([1,1,1],[]);return{"@id":t["@id"],name:t.tooltip,entityId:t.entityId,bbox:new gj({lowerBound:new hj(...n.map((t,e)=>Math.min(t,i[e]))),upperBound:new hj(...i.map((t,e)=>Math.max(t,n[e])))})}}),n=[];for(const o of t.filter(t=>!!t.scenegraph)){const t=yield AP(o.scenegraph,YL,{DracoLoader:DN,decompress:!0,postProcess:!0});for(const e of t.scenes)rB(e,new bT(o.transformMatrix),(e,i)=>{if(e.mesh&&e.mesh.primitives&&e.mesh.primitives.length>0)for(const r of e.mesh.primitives)if(r.attributes.POSITION&&r.attributes.POSITION.min){const s=i.transformAsPoint(r.attributes.POSITION.min,[]),a=i.transformAsPoint(r.attributes.POSITION.max,[]);n.push({"@id":o["@id"],name:e.name,entityId:o.entityId,bbox:new gj({lowerBound:new hj(...s.map((t,e)=>Math.min(t,a[e]))),upperBound:new hj(...a.map((t,e)=>Math.max(t,s[e])))}),gltf:t})}return!0})}const i=[],r=[];for(const t of e){const e=[];for(const i of n)t.bbox.overlaps(i.bbox)&&e.push({"@id":i["@id"],name:i.name});e.length>0?i.push({"@id":t.entityId,name:t.name,hits:e}):r.push(t)}console.log({sourceBoxes:e,targetBoxes:n,report:i,sad:r,maxHits:Math.max(...i.map(t=>t.hits.length))});const s=[];for(const t of i){s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":"","Hit Name":""});for(const e of t.hits)s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":e["@id"],"Hit Name":e.name})}return console.log(s),i})}(e.data);const o={};for(const a of s)a.scenegraph&&a.scenegraphNode&&!Object.prototype.hasOwnProperty.call(o,a.scenegraph)&&(o[a.scenegraph]=aB({scenegraph:a.scenegraph},t.gltfCache));return[cB("cubes",n,{wireframe:!1,pickable:!1}),cB("pickableCubes",i,{wireframe:!1,pickable:!0}),cB("wireframes",r,{wireframe:!0,pickable:!1}),...s.map(t=>{var n;return new nj({id:"models-"+t["@id"],opacity:t.zoomBasedOpacity?e.zoomOpacity:void 0!==t.opacity?t.opacity:1,pickable:!t.unpickable,coordinateSystem:Iw.CARTESIAN,data:[t],scenegraph:t.scenegraphNode?lB(t.scenegraphNode,o[t.scenegraph]):t.scenegraph,_lighting:t._lighting,getTransformMatrix:t.transformMatrix,getColor:null!==(n=t.color)&&void 0!==n?n:[0,255,0,127.5],parameters:{depthMask:!t.zoomBasedOpacity&&(void 0===t.opacity||1===t.opacity)}})})].filter(t=>!!t)}getPickingInfo(t){return t.info}}return t.layerName="BodyUILayer",t.gltfCache={},t})();function hB(t,e=[]){for(const n of t.nodes||t.children||[])e.push(n.name),hB(n,e);return e}let dB=(()=>{class t{constructor(t){var e,n,i,r,s;this.deckProps=t,this.bodyUILayer=new uB({}),this.nodeClickSubject=new P,this.nodeHoverStartSubject=new P,this.nodeHoverStopSubject=new P,this.sceneRotationSubject=new Uf([0,0]),this.nodeDragStartSubject=new P,this.nodeDragSubject=new P,this.nodeDragEndSubject=new P,this.nodeClick$=this.nodeClickSubject.pipe(at()),this.nodeHoverStart$=this.nodeHoverStartSubject.pipe(at()),this.nodeHoverStop$=this.nodeHoverStopSubject.pipe(at()),this.sceneRotation$=this.sceneRotationSubject.pipe(at()),this.nodeDragStart$=this.nodeDragStartSubject.pipe(at()),this.nodeDrag$=this.nodeDragSubject.pipe(at()),this.nodeDragEnd$=this.nodeDragEndSubject.pipe(at());const o=Object.assign(Object.assign({},t),{views:["orthographic"===t.camera?new pM({flipY:!1,near:-1e3}):new bM({orbitAxis:"Y"})],controller:void 0===t.interactive||t.interactive,layers:[this.bodyUILayer],onHover:this._onHover,onClick:this._onClick,onViewStateChange:this._onViewStateChange,onDragStart:this._onDragStart,onDrag:this._onDrag,onDragEnd:this._onDragEnd,getCursor:t=>{var e;return null!==(e=this.cursor)&&void 0!==e?e:t.isDragging?"grabbing":"grab"}});t.legacyLighting&&(o.effects=[new $M({ambientLight:new wM({color:[255,255,255],intensity:10})})]),this.deck=new WD(o),this.deck.setProps({viewState:{orbitAxis:"Y",minRotationX:null!==(e=t.minRotationX)&&void 0!==e?e:-15,maxRotationX:null!==(n=t.maxRotationX)&&void 0!==n?n:15,target:null!==(i=t.target)&&void 0!==i?i:[.5,.5,0],rotationX:0,rotationOrbit:null!==(r=t.rotation)&&void 0!==r?r:0,zoom:null!==(s=t.zoom)&&void 0!==s?s:9.5,camera:t.camera}}),t.rotation&&this.sceneRotationSubject.next([t.rotation,0])}initialize(){return lw(this,void 0,void 0,function*(){for(;!this.bodyUILayer.state;)yield new Promise(t=>{setTimeout(t,200)})})}finalize(){this.deck.finalize()}setScene(t){if((null==t?void 0:t.length)>0){let e=this.bodyUILayer.state.zoomOpacity,n=!1;for(const i of t)i.zoomToOnLoad&&(this.zoomTo(i),n=!0);e=n?.05:e,this.deckProps.debugSceneNodeProcessing?this.debugSceneNodeProcessing(t,e):this.bodyUILayer.setState({data:t,zoomOpacity:e})}}debugSceneNodeProcessing(t,e){const n="https://hubmapconsortium.github.io/ccf-3d-reference-object-library/VH_Female/United/VHF_United_Color.glb",i=new bT([.076,0,0,0,0,.076,16875389974302382e-33,0,0,-16875389974302382e-33,.076,0,.49,.034,.11,1]);(function(t,e,n){return lw(this,void 0,void 0,function*(){sB();const n=yield aB({scenegraph:t,scenegraphNode:"VHF_Kidney_L_Low1"}),i={},r=[];for(const s of n.scenes)rB(s,e=new bT(e||bT.IDENTITY),(n,s)=>{const o={"@id":n.name||n.id,"@type":"ProcessedNode",transformMatrix:new bT(s),wireframe:!0,node:n};if(r.push({"@id":`GLTF:${o["@id"]}`,"@type":"GLTFNode",scenegraph:t,scenegraphNode:o["@id"],transformMatrix:new bT(e||bT.IDENTITY),tooltip:n.name||n.id,color:[255,255,255,255],_lighting:"pbr",zoomBasedOpacity:!0,node:n}),n.mesh&&n.mesh.primitives&&n.mesh.primitives.length>0)for(const t of n.mesh.primitives)if(t.attributes.POSITION&&t.attributes.POSITION.min){const e=s.transformAsPoint(t.attributes.POSITION.min,[]),n=s.transformAsPoint(t.attributes.POSITION.max,[]);o.bbox=new gj({lowerBound:new hj(...e.map((t,e)=>Math.min(t,n[e]))),upperBound:new hj(...n.map((t,n)=>Math.max(t,e[n])))})}return i[o["@id"]]=o,!0});for(const t of Object.values(i).filter(t=>!t.bbox)){for(const e of hB(t.node).map(t=>i[t]).filter(t=>t.bbox))t.bbox?t.bbox.extend(e.bbox):t.bbox=e.bbox.clone();t.bbox||delete i[t["@id"]]}for(const t of Object.values(i)){const e=t.bbox.lowerBound,n=(t.size=t.bbox.upperBound.clone().vsub(e)).clone().vmul(new hj(.5,.5,.5)),i=t.center=e.clone().vadd(n);t.transformMatrix=new bT(bT.IDENTITY).translate(i.toArray()).scale(n.toArray())}for(const t of r)i[t["@id"]]=t;return i})})(n,i).then(r=>{console.log("results",r),console.log("data",t),(t=t.concat(Object.values(r))).push({"@id":"TEST","@type":"TEST",scenegraph:n,scenegraphNode:"VHF_Kidney_R_Low",transformMatrix:i,color:[255,255,255,200],_lighting:"pbr",zoomBasedOpacity:!1}),this.bodyUILayer.setState({data:t,zoomOpacity:e})})}zoomTo(t){const e=new bT(t.transformMatrix);this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:e.getTranslation(),rotationX:0,rotationOrbit:0,zoom:11.5})})}setRotation(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationOrbit:t})})}setRotationX(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationX:t})})}setZoom(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{zoom:t})})}setTarget(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:t})})}setInteractive(t){this.deck.setProps({controller:t})}_onHover(t){const{lastHovered:e}=this;this.cursor=t.picked?"pointer":void 0,t.picked&&t.object&&t.object["@id"]?e!==t.object&&(e&&this.nodeHoverStopSubject.next(e),this.lastHovered=t.object,this.nodeHoverStartSubject.next(t.object)):e&&(this.nodeHoverStopSubject.next(e),this.lastHovered=void 0)}_onClick(t,e){var n,i;t.picked&&t.object&&t.object["@id"]&&this.nodeClickSubject.next({node:t.object,ctrlClick:null!==(i=null===(n=null==e?void 0:e.srcEvent)||void 0===n?void 0:n.ctrlKey)&&void 0!==i?i:void 0})}_onViewStateChange(t){var e;if(null===(e=t.interactionState)||void 0===e?void 0:e.isZooming){const e=this.bodyUILayer.state,n=Math.min(Math.max(1-(t.viewState.zoom-8.9)/2,.05),1);e.zoomOpacity!==n&&this.bodyUILayer.setState({data:e.data,zoomOpacity:n})}this.deck.setProps({viewState:Object.assign({},t.viewState)}),this.sceneRotationSubject.next([t.viewState.rotationOrbit,t.viewState.rotationX])}_onDragStart(t,e){this._dragEvent(t,e,this.nodeDragStartSubject)}_onDrag(t,e){this._dragEvent(t,e,this.nodeDragSubject)}_onDragEnd(t,e){this._dragEvent(t,e,this.nodeDragEndSubject)}_dragEvent(t,e,n){var i;(null===(i=null==t?void 0:t.object)||void 0===i?void 0:i["@id"])&&n.next({node:t.object,info:t,e})}}return sw([iB.ZP],t.prototype,"_onHover",null),sw([iB.ZP],t.prototype,"_onClick",null),sw([iB.ZP],t.prototype,"_onViewStateChange",null),sw([iB.ZP],t.prototype,"_onDragStart",null),sw([iB.ZP],t.prototype,"_onDrag",null),sw([iB.ZP],t.prototype,"_onDragEnd",null),t})();function pB(t,e){return t===e}function fB(t,e,n){if(null===e||null===n||e.length!==n.length)return!1;const i=e.length;for(let r=0;r(t&&t.providers||[]).some(t=>t&&t.provide&&"MockNgModuleResolver"===t.provide.name||!1))});let bB=(()=>{class t{constructor(){this.bootstrap$=new lp(1)}get appBootstrapped$(){return this.bootstrap$.asObservable()}bootstrap(){this.bootstrap$.next(!0),this.bootstrap$.complete()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const yB=new oi("INITIAL_STATE_TOKEN");let vB=(()=>{class t{static set(t){this.value=t}static pop(){const t=this.value;return this.value={},t}}return t.value={},t})();const _B=new oi("Internals.StateContextFactory"),wB=new oi("Internals.StateFactory");function xB(t,e){return e?n=>n.pipe(xB((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new SB(t))}class SB{constructor(t){this.project=t}call(t,e){return e.subscribe(new EB(t,this.project))}}class EB extends ${constructor(t,e){super(t),this.project=e,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}_next(t){this.hasSubscription||this.tryNext(t)}tryNext(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this.hasSubscription=!0,this._innerSub(e)}_innerSub(t){const e=new H(this),n=this.destination;n.add(e);const i=G(t,e);i!==e&&n.add(i)}_complete(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete(),this.unsubscribe()}notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()}}function CB(t=null){return e=>e.lift(new OB(t))}class OB{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new TB(t,this.defaultValue))}}class TB extends v{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}const kB={STATE_NAME:t=>`${t} is not a valid state name. It needs to be a valid object property name.`,STATE_NAME_PROPERTY:()=>"States must register a 'name' property",STATE_UNIQUE:(t,e,n)=>`State name '${t}' from ${e} already exists in ${n}`,STATE_DECORATOR:()=>"States must be decorated with @State() decorator",INCORRECT_PRODUCTION:()=>"Angular is running in production mode but NGXS is still running in the development mode!\nPlease set developmentMode to false on the NgxsModule options when in production mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",INCORRECT_DEVELOPMENT:()=>"RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",SELECT_FACTORY_NOT_CONNECTED:()=>"You have forgotten to import the NGXS module!",ACTION_DECORATOR:()=>"@Action() decorator cannot be used with static methods",SELECTOR_DECORATOR:()=>"Selectors only work on methods",ZONE_WARNING:()=>"Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\nPlease set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\nNgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })",PATCHING_ARRAY:()=>"Patching arrays is not supported.",PATCHING_PRIMITIVE:()=>"Patching primitives is not supported.",UNDECORATED_STATE_IN_IVY:t=>`'${t}' class should be decorated with @Injectable() right after the @State() decorator`};let AB=(()=>{class t{constructor(t,e){this._ngZone=t,this._platformId=e,this.verifyZoneIsNotNooped(this._ngZone)}enter(t){return function(t){return"server"===t}(this._platformId)?this.runInsideAngular(t):this.runOutsideAngular(t)}leave(t){return this.runInsideAngular(t)}runInsideAngular(t){return xu.isInAngularZone()?t():this._ngZone.run(t)}runOutsideAngular(t){return xu.isInAngularZone()?this._ngZone.runOutsideAngular(t):t()}verifyZoneIsNotNooped(t){t instanceof xu||console.warn(kB.ZONE_WARNING())}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(ou))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const PB=new oi("ROOT_STATE_TOKEN"),MB=new oi("FEATURE_STATE_TOKEN"),IB=new oi("NGXS_PLUGINS"),DB=new oi("NG_TEST_MODE"),RB=new oi("NG_DEV_MODE"),NB="NGXS_META",LB="NGXS_OPTIONS_META";let jB=(()=>{class t{constructor(){this.defaultsState={},this.selectorOptions={injectContainerState:!0,suppressErrors:!0},this.compatibility={strictContentSecurityPolicy:!1},this.executionStrategy=AB}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class FB{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}}const BB=new oi("NGXS_EXECUTION_STRATEGY");function VB(t){return t.constructor&&t.constructor.type?t.constructor.type:t.type}const zB=(t,e,n)=>{t=Object.assign({},t);const i=e.split("."),r=i.length-1;return i.reduce((t,e,i)=>(t[e]=i===r?n:Array.isArray(t[e])?t[e].slice():Object.assign({},t[e]),t&&t[e]),t),t},UB=(t,e)=>e.split(".").reduce((t,e)=>t&&t[e],t),HB=t=>t&&"object"==typeof t&&!Array.isArray(t),$B=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(HB(t)&&HB(n))for(const i in n)HB(n[i])?(t[i]||Object.assign(t,{[i]:{}}),$B(t[i],n[i])):Object.assign(t,{[i]:n[i]});return $B(t,...e)};function GB(t){return t[NB]}function WB(t,e){const n=UB(e.currentAppState,t.path),i=UB(e.newAppState,t.path);return new FB(n,i,!t.isInitialised)}function qB(...t){return function(t,e,n=XB){const i=function(t){return t.reduce((t,e)=>(t[VB(e)]=!0,t),{})}(t),r=e&&function(t){return t.reduce((t,e)=>(t[e]=!0,t),{})}(e);return function(t){return t.pipe(function(t,e){return Hd(n=>{const i=VB(n.action);return t[i]&&(!e||e[n.status])})}(i,r),n())}}(t,["DISPATCHED"])}function XB(){return D(t=>t.action)}function YB(t){return e=>new C(n=>e.subscribe({next(e){t.leave(()=>n.next(e))},error(e){t.leave(()=>n.error(e))},complete(){t.leave(()=>n.complete())}}))}let KB=(()=>{class t{constructor(t){this._executionStrategy=t}enter(t){return this._executionStrategy.enter(t)}leave(t){return this._executionStrategy.leave(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(BB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class QB extends P{constructor(){super(...arguments),this._itemQueue=[],this._busyPushingNext=!1}next(t){if(this._busyPushingNext)this._itemQueue.unshift(t);else{for(this._busyPushingNext=!0,super.next(t);this._itemQueue.length>0;){const t=this._itemQueue.pop();super.next(t)}this._busyPushingNext=!1}}}let ZB=(()=>{class t extends QB{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),JB=(()=>{class t extends C{constructor(t,e){super(n=>{const i=t.pipe(YB(e)).subscribe({next:t=>n.next(t),error:t=>n.error(t),complete:()=>n.complete()});n.add(i)})}}return t.\u0275fac=function(e){return new(e||t)(Ci(ZB),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const tV=t=>(...e)=>t.shift()(...e,(...e)=>tV(t)(...e));let eV=(()=>{class t extends Uf{constructor(){super({})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),nV=(()=>{class t{constructor(t,e){this._parentManager=t,this._pluginHandlers=e,this.plugins=[],this.registerHandlers()}get rootPlugins(){return this._parentManager&&this._parentManager.plugins||this.plugins}registerHandlers(){const t=this.getPluginHandlers();this.rootPlugins.push(...t)}getPluginHandlers(){return(this._pluginHandlers||[]).map(t=>t.handle?t.handle.bind(t):t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(IB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),iV=(()=>{class t extends P{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),rV=(()=>{class t{constructor(t,e,n,i,r,s){this._injector=t,this._actions=e,this._actionResults=n,this._pluginManager=i,this._stateStream=r,this._ngxsExecutionStrategy=s}dispatch(t){const e=this._ngxsExecutionStrategy.enter(()=>this.dispatchByEvents(t));return e.subscribe({error:t=>this._ngxsExecutionStrategy.leave(()=>{try{this._errorHandler=this._errorHandler||this._injector.get(Ar),this._errorHandler.handleError(t)}catch(e){}})}),e.pipe(YB(this._ngxsExecutionStrategy))}dispatchByEvents(t){return Array.isArray(t)?0===t.length?wd(this._stateStream.getValue()):hv(t.map(t=>this.dispatchSingle(t))):this.dispatchSingle(t)}dispatchSingle(t){if(!VB(t))return ip(new Error(`This action doesn't have a type property: ${t.constructor.name}`));const e=this._stateStream.getValue();return tV([...this._pluginManager.plugins,(t,n)=>{t!==e&&this._stateStream.next(t);const i=this.getActionResultStream(n);return i.subscribe(t=>this._actions.next(t)),this._actions.next({action:n,status:"DISPATCHED"}),this.createDispatchObservable(i)}])(e,t).pipe(up())}getActionResultStream(t){return this._actionResults.pipe(Hd(e=>e.action===t&&"DISPATCHED"!==e.status),Gp(1),up())}createDispatchObservable(t){return t.pipe(xB(t=>{switch(t.status){case"SUCCESSFUL":return wd(this._stateStream.getValue());case"ERRORED":return ip(t.error);default:return ep}})).pipe(up())}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(ZB),Ci(iV),Ci(nV),Ci(eV),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const sV=t=>{Object.freeze(t);const e="function"==typeof t,n=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(function(i){n.call(t,i)&&(!e||"caller"!==i&&"callee"!==i&&"arguments"!==i)&&null!==t[i]&&("object"==typeof t[i]||"function"==typeof t[i])&&!Object.isFrozen(t[i])&&sV(t[i])}),t};let oV=(()=>{class t{constructor(t,e){this.isDevMode=t,this.isTestMode=e}}return t.\u0275fac=function(e){return new(e||t)(Ci(RB),Ci(DB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),aV=(()=>{class t{constructor(t,e){this._host=t,this._config=e}get isIncorrectProduction(){return!this._host.isDevMode()&&this._config.developmentMode}get isIncorrectDevelopment(){return this._host.isDevMode()&&!this._config.developmentMode}verifyDevMode(){this._host.isTestMode()||(this.isIncorrectProduction?console.warn(kB.INCORRECT_PRODUCTION()):this.isIncorrectDevelopment&&console.warn(kB.INCORRECT_DEVELOPMENT()))}}return t.\u0275fac=function(e){return new(e||t)(Ci(oV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lV=(()=>{class t{constructor(t,e,n,i){this._stateStream=t,this._dispatcher=e,this._config=n,i.verifyDevMode()}getRootStateOperations(){const t={getState:()=>this._stateStream.getValue(),setState:t=>this._stateStream.next(t),dispatch:t=>this._dispatcher.dispatch(t)};return this._config.developmentMode?this.ensureStateAndActionsAreImmutable(t):t}ensureStateAndActionsAreImmutable(t){return{getState:()=>t.getState(),setState:e=>{const n=sV(e);return t.setState(n)},dispatch:e=>t.dispatch(e)}}setStateToTheCurrentWithNew(t){const e=this.getRootStateOperations(),n=e.getState();e.setState(Object.assign({},n,t.defaults))}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(rV),Ci(jB),Ci(aV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),cV=(()=>{class t{constructor(t){this._internalStateOperations=t}createStateContext(t){const e=this._internalStateOperations.getRootStateOperations();function n(e){return UB(e,t.path)}function i(n,i){const r=zB(n,t.path,i),s=t.instance;if(s.ngxsOnChanges){const e=WB(t,{currentAppState:n,newAppState:r});s.ngxsOnChanges(e)}return e.setState(r),r}function r(t,e){return i(t,e(n(t)))}return{getState:()=>n(e.getState()),patchState:t=>r(e.getState(),function(t){return e=>{if(Array.isArray(t))throw new Error(kB.PATCHING_ARRAY());if("object"!=typeof t)throw new Error(kB.PATCHING_PRIMITIVE());const n=Object.assign({},e);for(const i in t)n[i]=t[i];return n}}(t)),setState(t){const n=e.getState();return function(t){return"function"==typeof t}(t)?r(n,t):i(n,t)},dispatch:t=>e.dispatch(t)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class uV{static stateNameErrorMessage(t){return kB.STATE_NAME(t)}static checkCorrectStateName(t){if(!t)throw new Error(kB.STATE_NAME_PROPERTY());if(!this.stateNameRegex.test(t))throw new Error(this.stateNameErrorMessage(t))}static checkStateNameIsUnique(t,e){const n=this.getValidStateMeta(t).name,i=e[n];if(i&&i!==t)throw new Error(kB.STATE_UNIQUE(n,t.name,i.name));return n}static getValidStateMeta(t){const e=GB(t);if(!e)throw new Error(kB.STATE_DECORATOR());return e}}uV.stateNameRegex=new RegExp("^[a-zA-Z0-9_]+$");let hV=(()=>{class t{constructor(t,e,n,i,r,s,o){this._injector=t,this._config=e,this._parentFactory=n,this._actions=i,this._actionResults=r,this._stateContextFactory=s,this._initialState=o,this._actionsSubscription=null,this._states=[],this._statesByName={},this._statePaths={},this.getRuntimeSelectorContext=gB(()=>{const t=this;function e(e){const n=t.statePaths[e];return n?function(t,e){return e&&e.compatibility&&e.compatibility.strictContentSecurityPolicy?function(t){const e=t.slice();return t=>e.reduce((t,e)=>t&&t[e],t)}(t):function(t){const e=t;let n="store."+e[0],i=0;const r=e.length;let s=n;for(;++i(n||(n=e(t)),n?n(...i):void 0))},getSelectorOptions:e=>Object.assign({},t._config.selectorOptions,e||{})}})}get states(){return this._parentFactory?this._parentFactory.states:this._states}get statesByName(){return this._parentFactory?this._parentFactory.statesByName:this._statesByName}get statePaths(){return this._parentFactory?this._parentFactory.statePaths:this._statePaths}static cloneDefaults(t){let e={};return e=Array.isArray(t)?t.slice():function(t){return"object"==typeof t&&null!==t||"function"==typeof t}(t)?Object.assign({},t):void 0===t?{}:t,e}static checkStatesAreValid(t){t.forEach(uV.getValidStateMeta)}ngOnDestroy(){this._actionsSubscription.unsubscribe()}add(e){t.checkStatesAreValid(e);const{newStates:n}=this.addToStatesMap(e);if(!n.length)return[];const i=function(t){const e=e=>{const n=t.find(t=>t===e);if(!n)throw new Error(`Child state not found: ${e}. \r\nYou may have forgotten to add states to module`);return n[NB].name};return t.reduce((t,n)=>{const{name:i,children:r}=n[NB];return t[i]=(r||[]).map(e),t},{})}(n),r=function(t){const e=[],n={},i=(r,s=[])=>{Array.isArray(s)||(s=[]),s.push(r),n[r]=!0,t[r].forEach(t=>{if(s.indexOf(t)>=0)throw new Error(`Circular dependency '${t}' is required by '${r}': ${s.join(" -> ")}`);n[t]||i(t,s.slice(0))}),e.indexOf(r)<0&&e.push(r)};return Object.keys(t).forEach(t=>i(t)),e.reverse()}(i),s=function(t,e={}){const n=(t,e)=>{for(const i in t)if(t.hasOwnProperty(i)&&t[i].indexOf(e)>=0){const e=n(t,i);return null!==e?`${e}.${i}`:i}return null};for(const i in t)if(t.hasOwnProperty(i)){const r=n(t,i);e[i]=r?`${r}.${i}`:i}return e}(i),o=function(t){return t.reduce((t,e)=>(t[e[NB].name]=e,t),{})}(n),a=[];for(const l of r){const e=o[l],n=s[l],i=e[NB];this.addRuntimeInfoToMeta(i,n);const r={name:l,path:n,isInitialised:!1,actions:i.actions,instance:this._injector.get(e),defaults:t.cloneDefaults(i.defaults)};this.hasBeenMountedAndBootstrapped(l,n)||a.push(r),this.states.push(r)}return a}addAndReturnDefaults(t){const e=this.add(t||[]);return{defaults:e.reduce((t,e)=>zB(t,e.path,e.defaults),{}),states:e}}connectActionHandlers(){null===this._actionsSubscription&&(this._actionsSubscription=this._actions.pipe(Hd(t=>"DISPATCHED"===t.status),W(({action:t})=>this.invokeActions(this._actions,t).pipe(D(()=>({action:t,status:"SUCCESSFUL"})),CB({action:t,status:"CANCELED"}),pv(e=>wd({action:t,status:"ERRORED",error:e}))))).subscribe(t=>this._actionResults.next(t)))}invokeActions(t,e){const n=VB(e),i=[];for(const s of this.states){const o=s.actions[n];if(o)for(const n of o){const o=this._stateContextFactory.createStateContext(s);try{let r=s.instance[n.fn](o,e);r instanceof Promise&&(r=U(r)),r instanceof C?(r=r.pipe(CB({})),n.options.cancelUncompleted&&(r=r.pipe(Wd(t.pipe(qB(e)))))):r=wd({}).pipe(up()),i.push(r)}catch(r){i.push(ip(r))}}}return i.length||i.push(wd({})),hv(i)}addToStatesMap(t){const e=[],n=this.statesByName;for(const i of t){const t=uV.checkStateNameIsUnique(i,n);!n[t]&&(e.push(i),n[t]=i)}return{newStates:e}}addRuntimeInfoToMeta(t,e){this.statePaths[t.name]=e,t.path=e}hasBeenMountedAndBootstrapped(t,e){const n=void 0!==UB(this._initialState,e);return this.statesByName[t]&&n}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(jB),Ci(t,12),Ci(ZB),Ci(iV),Ci(cV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),dV=(()=>{class t{constructor(t,e,n){this.internalStateOperations=t,this.stateContextFactory=e,this.bootstrapper=n}ngxsBootstrap(t,e){this.internalStateOperations.getRootStateOperations().dispatch(t).pipe(Hd(()=>!!e),$f(()=>this.invokeInit(e.states)),W(()=>this.bootstrapper.appBootstrapped$),Hd(t=>!!t)).subscribe(()=>this.invokeBootstrap(e.states))}invokeInit(t){for(const e of t){const t=e.instance;if(t.ngxsOnChanges){const n=WB(e,{currentAppState:{},newAppState:this.internalStateOperations.getRootStateOperations().getState()});t.ngxsOnChanges(n)}t.ngxsOnInit&&t.ngxsOnInit(this.getStateContext(e)),e.isInitialised=!0}}invokeBootstrap(t){for(const e of t){const t=e.instance;t.ngxsAfterBootstrap&&t.ngxsAfterBootstrap(this.getStateContext(e))}}getStateContext(t){return this.stateContextFactory.createStateContext(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV),Ci(cV),Ci(bB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();let pV=(()=>{class t{constructor(t,e,n,i,r,s){this._stateStream=t,this._internalStateOperations=e,this._config=n,this._internalExecutionStrategy=i,this._stateFactory=r,this.initStateStream(s)}dispatch(t){return this._internalStateOperations.getRootStateOperations().dispatch(t)}select(t){const e=this.getStoreBoundSelectorFn(t);return this._stateStream.pipe(D(e),pv(t=>{const{suppressErrors:e}=this._config.selectorOptions;return t instanceof TypeError&&e?wd(void 0):ip(t)}),Rd(),YB(this._internalExecutionStrategy))}selectOnce(t){return this.select(t).pipe(Gp(1))}selectSnapshot(t){return this.getStoreBoundSelectorFn(t)(this._stateStream.getValue())}subscribe(t){return this._stateStream.pipe(YB(this._internalExecutionStrategy)).subscribe(t)}snapshot(){return this._internalStateOperations.getRootStateOperations().getState()}reset(t){return this._internalStateOperations.getRootStateOperations().setState(t)}getStoreBoundSelectorFn(t){return function(t){const e=function(t){return t.NGXS_SELECTOR_META}(t)||GB(t);return e&&e.makeRootSelector||(()=>t)}(t)(this._stateFactory.getRuntimeSelectorContext())}initStateStream(t){const e=this._stateStream.value;if(!e||0===Object.keys(e).length){const e=Object.keys(this._config.defaultsState).length>0?Object.assign({},this._config.defaultsState,t):t;this._stateStream.next(e)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(lV),Ci(jB),Ci(KB),Ci(hV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fV=(()=>{class t{constructor(e,n){t.store=e,t.config=n}ngOnDestroy(){t.store=null,t.config=null}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t.store=null,t.config=null,t})();class gV{static get type(){return"@@INIT"}}class mV{constructor(t){this.addedStates=t}static get type(){return"@@UPDATE_STATE"}}const bV=new lp(1);let yV=(()=>{class t{constructor(e,n,i,r,s=[],o){!function(){try{const t=window.ng,e=!(t.probe&&t.coreTokens)&&Nu();bV.next(e)}catch(t){bV.next(!1)}finally{bV.complete()}}();const a=e.addAndReturnDefaults(s);n.setStateToTheCurrentWithNew(a),e.connectActionHandlers(),o.ngxsBootstrap(new gV,a)}}return t.\u0275fac=function(e){return new(e||t)(Ci(hV),Ci(lV),Ci(pV),Ci(fV),Ci(PB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),vV=(()=>{class t{constructor(e,n,i,r=[],s){const o=t.flattenStates(r),a=i.addAndReturnDefaults(o);a.states.length&&(n.setStateToTheCurrentWithNew(a),s.ngxsBootstrap(new mV(a.defaults),a))}static flattenStates(t=[]){return t.reduce((t,e)=>t.concat(e),[])}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(lV),Ci(hV),Ci(MB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class _V{static forRoot(t=[],e={}){return{ngModule:yV,providers:[hV,cV,JB,ZB,bB,aV,oV,dV,rV,iV,lV,KB,pV,eV,fV,nV,...t,..._V.ngxsTokenProviders(t,e)]}}static forFeature(t=[]){return{ngModule:vV,providers:[hV,nV,...t,{provide:MB,multi:!0,useValue:t}]}}static ngxsTokenProviders(t,e){return[{provide:DB,useValue:mB},{provide:RB,useValue:Nu},{provide:BB,useClass:e.executionStrategy||AB},{provide:PB,useValue:t},{provide:_V.ROOT_OPTIONS,useValue:e},{provide:jB,useFactory:_V.ngxsConfigFactory,deps:[_V.ROOT_OPTIONS]},{provide:au,useFactory:_V.appBootstrapListenerFactory,multi:!0,deps:[bB]},{provide:yB,useFactory:_V.getInitialState},{provide:_B,useExisting:cV},{provide:wB,useExisting:hV}]}static ngxsConfigFactory(t){return $B(new jB,t)}static appBootstrapListenerFactory(t){return()=>t.bootstrap()}static getInitialState(){return vB.pop()}}function wV(t){return e=>{!function(t){bV.subscribe(e=>{e&&(t.\u0275prov||console.warn(kB.UNDECORATED_STATE_IN_IVY(t.name)))})}(e);const n=e,i=function(t){if(!t.hasOwnProperty(NB)){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,NB,{value:e})}return GB(t)}(n),r=Object.getPrototypeOf(n),s=function(e){return Object.assign({},e[LB]||{},t)}(r);(function(t){const{meta:e,inheritedStateClass:n,optionsWithInheritance:i}=t,{children:r,defaults:s,name:o}=i,a="string"==typeof o?o:o&&o.getName()||null;uV.checkCorrectStateName(a),n.hasOwnProperty(NB)&&(e.actions=Object.assign({},e.actions,(n[NB]||{}).actions)),e.children=r,e.defaults=s,e.name=a})({meta:i,inheritedStateClass:r,optionsWithInheritance:s}),n[LB]=s}}_V.\u0275fac=function(t){return new(t||_V)},_V.\u0275mod=ie({type:_V}),_V.\u0275inj=St({}),_V.ROOT_OPTIONS=new oi("ROOT_OPTIONS");let xV=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}setProperty(t,e){this._renderer.setProperty(this._elementRef.nativeElement,t,e)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl))},t.\u0275dir=se({type:t}),t})(),SV=(()=>{class t extends xV{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();const EV=new oi("NgValueAccessor"),CV={provide:EV,useExisting:pt(()=>TV),multi:!0},OV=new oi("CompositionEventMode");let TV=(()=>{class t extends xV{constructor(t,e,n){super(t,e),this._compositionMode=n,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Xu()?Xu().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this.setProperty("value",null==t?"":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)(ea(Ml),ea(kl),ea(OV,8))},t.\u0275dir=se({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&&fa("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:[_l([CV]),jo]}),t})();const kV=new oi("NgValidators"),AV=new oi("NgAsyncValidators");function PV(t){return null!=t}function MV(t){const e=ha(t)?U(t):t;return pa(e),e}function IV(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 DV(t,e){return e.map(e=>e(t))}function RV(t){return t.map(t=>function(t){return!t.validate}(t)?t:e=>t.validate(e))}function NV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return IV(DV(t,e))}}(RV(t)):null}function LV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return hv(DV(t,e).map(MV)).pipe(D(IV))}}(RV(t)):null}function jV(t,e){return null===t?[e]:Array.isArray(t)?[...t,e]:[t,e]}function FV(t){return t._rawValidators}function BV(t){return t._rawAsyncValidators}function VV(t){return t?Array.isArray(t)?t:[t]:[]}function zV(t,e){return Array.isArray(t)?t.includes(e):t===e}function UV(t,e){const n=VV(e);return VV(t).forEach(t=>{zV(n,t)||n.push(t)}),n}function HV(t,e){return VV(e).filter(e=>!zV(t,e))}let $V=(()=>{class t{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=NV(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=LV(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}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=se({type:t}),t})(),GV=(()=>{class t extends $V{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();class WV extends $V{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class qV{constructor(t){this._cd=t}is(t){var e,n,i;return"submitted"===t?!!(null===(e=this._cd)||void 0===e?void 0:e.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[t])}}let XV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(WV,2))},t.\u0275dir=se({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))},features:[jo]}),t})(),YV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(GV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))("ng-submitted",e.is("submitted"))},features:[jo]}),t})();function KV(t,e){JV(t,e),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&ez(t,e)})}(t,e),function(t,e){const n=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};t.registerOnChange(n),e._registerOnDestroy(()=>{t._unregisterOnChange(n)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&ez(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),function(t,e){if(e.valueAccessor.setDisabledState){const n=t=>{e.valueAccessor.setDisabledState(t)};t.registerOnDisabledChange(n),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(n)})}}(t,e)}function QV(t,e,n=!0){const i=()=>{};e.valueAccessor&&(e.valueAccessor.registerOnChange(i),e.valueAccessor.registerOnTouched(i)),tz(t,e),t&&(e._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function ZV(t,e){t.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(e)})}function JV(t,e){const n=FV(t);null!==e.validator?t.setValidators(jV(n,e.validator)):"function"==typeof n&&t.setValidators([n]);const i=BV(t);null!==e.asyncValidator?t.setAsyncValidators(jV(i,e.asyncValidator)):"function"==typeof i&&t.setAsyncValidators([i]);const r=()=>t.updateValueAndValidity();ZV(e._rawValidators,r),ZV(e._rawAsyncValidators,r)}function tz(t,e){let n=!1;if(null!==t){if(null!==e.validator){const i=FV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.validator);r.length!==i.length&&(n=!0,t.setValidators(r))}}if(null!==e.asyncValidator){const i=BV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.asyncValidator);r.length!==i.length&&(n=!0,t.setAsyncValidators(r))}}}const i=()=>{};return ZV(e._rawValidators,i),ZV(e._rawAsyncValidators,i),n}function ez(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function nz(t,e){JV(t,e)}function iz(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function rz(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const sz="VALID",oz="INVALID",az="PENDING",lz="DISABLED";function cz(t){return(pz(t)?t.validators:t)||null}function uz(t){return Array.isArray(t)?NV(t):t||null}function hz(t,e){return(pz(e)?e.asyncValidators:t)||null}function dz(t){return Array.isArray(t)?LV(t):t||null}function pz(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class fz{constructor(t,e){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=e,this._composedValidatorFn=uz(this._rawValidators),this._composedAsyncValidatorFn=dz(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===sz}get invalid(){return this.status===oz}get pending(){return this.status==az}get disabled(){return this.status===lz}get enabled(){return this.status!==lz}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._rawValidators=t,this._composedValidatorFn=uz(t)}setAsyncValidators(t){this._rawAsyncValidators=t,this._composedAsyncValidatorFn=dz(t)}addValidators(t){this.setValidators(UV(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(UV(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(HV(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(HV(t,this._rawAsyncValidators))}hasValidator(t){return zV(this._rawValidators,t)}hasAsyncValidator(t){return zV(this._rawAsyncValidators,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=az,!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=lz,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=sz,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(),(this.status===sz||this.status===az)&&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()?lz:sz}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=az,this._hasOwnPendingAsyncValidator=!0;const e=MV(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(e,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e||(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length))return null;let i=t;return e.forEach(t=>{i=i instanceof mz?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof bz&&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 Rc,this.statusChanges=new Rc}_calculateStatus(){return this._allControlsDisabled()?lz:this.errors?oz:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(az)?az:this._anyControlsHaveStatus(oz)?oz:sz}_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){pz(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class gz extends fz{constructor(t=null,e,n){super(cz(e),hz(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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)}_unregisterOnChange(t){rz(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){rz(this._onDisabledChange,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 mz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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,n={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?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=>{const n=this.controls[e];n&&t(n,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 bz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(t){return this.controls[t]}push(t,e={}){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(t,e,n={}){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:n.emitEvent})}removeAt(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?t.value:t.getRawValue())}clear(t={}){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:t.emitEvent}))}_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 yz={provide:GV,useExisting:pt(()=>_z)},vz=(()=>Promise.resolve(null))();let _z=(()=>{class t extends GV{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Rc,this.form=new mz({},NV(t),LV(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){vz.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),KV(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),rz(this._directives,t)})}addFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path),n=new mz({});nz(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){vz.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,iz(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)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([yz]),jo]}),t})(),wz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})(),xz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Sz=new oi("NgModelWithFormControlWarning"),Ez={provide:WV,useExisting:pt(()=>Cz)};let Cz=(()=>{class t extends WV{constructor(t,e,n,i){super(),this._ngModelWarningConfig=i,this.update=new Rc,this._ngModelWarningSent=!1,this._setValidators(t),this._setAsyncValidators(e),this.valueAccessor=function(t,e){if(!e)return null;let n,i,r;return Array.isArray(e),e.forEach(t=>{t.constructor===TV?n=t:function(t){return Object.getPrototypeOf(t.constructor)===SV}(t)?i=t:r=t}),r||i||n||null}(0,n)}set isDisabled(t){}ngOnChanges(t){if(this._isControlChanged(t)){const e=t.form.previousValue;e&&QV(e,this,!1),KV(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}(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.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&QV(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_isControlChanged(t){return t.hasOwnProperty("form")}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10),ea(EV,10),ea(Sz,8))},t.\u0275dir=se({type:t,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[_l([Ez]),jo,ye]}),t._ngModelWarningSentOnce=!1,t})();const Oz={provide:GV,useExisting:pt(()=>Tz)};let Tz=(()=>{class t extends GV{constructor(t,e){super(),this.validators=t,this.asyncValidators=e,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new Rc,this._setValidators(t),this._setAsyncValidators(e)}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(tz(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return KV(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){QV(t.control||null,t,!1),rz(this.directives,t)}addFormGroup(t){this._setUpFormContainer(t)}removeFormGroup(t){this._cleanUpFormContainer(t)}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){this._setUpFormContainer(t)}removeFormArray(t){this._cleanUpFormContainer(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,iz(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=t.control,n=this.form.get(t.path);e!==n&&(QV(e||null,t),n instanceof gz&&(KV(n,t),t.control=n))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(t){const e=this.form.get(t.path);nz(e,t),e.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(t){if(this.form){const e=this.form.get(t.path);e&&function(t,e){return tz(t,e)}(e,t)&&e.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){JV(this.form,this),this._oldForm&&tz(this._oldForm,this)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([Oz]),jo,ye]}),t})(),kz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[xz]]}),t})(),Az=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})(),Pz=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sz,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})();function Mz(t){return new C(e=>{let n;try{n=t()}catch(i){return void e.error(i)}return(n?U(n):np()).subscribe(e)})}const Iz=["underline"],Dz=["connectionContainer"],Rz=["inputContainer"],Nz=["label"];function Lz(t,e){1&t&&(aa(0),ra(1,"div",14),oa(2,"div",15),oa(3,"div",16),oa(4,"div",17),sa(),ra(5,"div",18),oa(6,"div",15),oa(7,"div",16),oa(8,"div",17),sa(),la())}function jz(t,e){1&t&&(ra(0,"div",19),xa(1,1),sa())}function Fz(t,e){if(1&t&&(aa(0),xa(1,2),ra(2,"span"),Za(3),sa(),la()),2&t){const t=va(2);ws(3),Ja(t._control.placeholder)}}function Bz(t,e){1&t&&xa(0,3,["*ngSwitchCase","true"])}function Vz(t,e){1&t&&(ra(0,"span",23),Za(1," *"),sa())}function zz(t,e){if(1&t){const t=ua();ra(0,"label",20,21),fa("cdkObserveContent",function(){return $e(t),va().updateOutlineGap()}),Jo(2,Fz,4,1,"ng-container",12),Jo(3,Bz,1,0,"ng-content",12),Jo(4,Vz,2,0,"span",22),sa()}if(2&t){const t=va();ja("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),na("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),Ko("for",t._control.id)("aria-owns",t._control.id),ws(2),na("ngSwitchCase",!1),ws(1),na("ngSwitchCase",!0),ws(1),na("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function Uz(t,e){1&t&&(ra(0,"div",24),xa(1,4),sa())}function Hz(t,e){if(1&t&&(ra(0,"div",25,26),oa(2,"span",27),sa()),2&t){const t=va();ws(2),ja("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $z(t,e){1&t&&(ra(0,"div"),xa(1,5),sa()),2&t&&na("@transitionMessages",va()._subscriptAnimationState)}function Gz(t,e){if(1&t&&(ra(0,"div",31),Za(1),sa()),2&t){const t=va(2);na("id",t._hintLabelId),ws(1),Ja(t.hintLabel)}}function Wz(t,e){if(1&t&&(ra(0,"div",28),Jo(1,Gz,2,2,"div",29),xa(2,6),oa(3,"div",30),xa(4,7),sa()),2&t){const t=va();na("@transitionMessages",t._subscriptAnimationState),ws(1),na("ngIf",t.hintLabel)}}const qz=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Xz=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Yz=new oi("MatError"),Kz={transitionMessages:Vg("transitionMessages",[$g("enter",Hg({opacity:1,transform:"translateY(0%)"})),Wg("void => enter",[Hg({opacity:0,transform:"translateY(-5px)"}),zg("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Qz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t}),t})();const Zz=new oi("MatHint");let Jz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-label"]]}),t})(),tU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-placeholder"]]}),t})();const eU=new oi("MatPrefix");let nU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","matPrefix",""]],features:[_l([{provide:eU,useExisting:t}])]}),t})();const iU=new oi("MatSuffix");let rU=0;const sU=jy(class{constructor(t){this._elementRef=t}},"primary"),oU=new oi("MAT_FORM_FIELD_DEFAULT_OPTIONS"),aU=new oi("MatFormField");let lU=(()=>{class t extends sU{constructor(t,e,n,i,r,s,o,a){super(t),this._changeDetectorRef=e,this._dir=i,this._defaults=r,this._platform=s,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new P,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+rU++,this._labelId="mat-form-field-label-"+rU++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=r&&r.appearance?r.appearance:"legacy",this._hideRequiredMarker=!(!r||null==r.hideRequiredMarker)&&r.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=md(t)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_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}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}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(Kd(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(Wd(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe(Wd(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),Q(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Kd(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Kd(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(Wd(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._labelChildNonStatic&&!this._labelChildStatic)}_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,xd(this._label.nativeElement,"transitionend").pipe(Gp(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&t.push(...this._control.userAriaDescribedBy.split(" ")),"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.push(...this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if(!("outline"===this.appearance&&t&&t.children.length&&t.textContent.trim()&&this._platform.isBrowser))return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),s=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const r=i.getBoundingClientRect();if(0===r.width&&0===r.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const s=this._getStartEnd(r),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.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,ig],Ny]}),t})();function uU(t,e=jd){const n=function(t){return t instanceof Date&&!isNaN(+t)}(t)?+t-e.now():Math.abs(t);return t=>t.lift(new hU(n,e))}class hU{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new dU(t,this.delay,this.scheduler))}}class dU extends v{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,i=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-i.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(dU.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new pU(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(sp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(sp.createComplete()),this.unsubscribe()}}class pU{constructor(t,e){this.time=t,this.notification=e}}const fU=["panel"];function gU(t,e){if(1&t&&(ra(0,"div",0,1),xa(2),sa()),2&t){const t=e.id,n=va();na("id",n.id)("ngClass",n._classList),Ko("aria-label",n.ariaLabel||null)("aria-labelledby",n._getPanelAriaLabelledby(t))}}const mU=["*"];let bU=0;class yU{constructor(t,e){this.source=t,this.option=e}}const vU=Fy(class{}),_U=new oi("mat-autocomplete-default-options",{providedIn:"root",factory:function(){return{autoActiveFirstOption:!1}}});let wU=(()=>{class t extends vU{constructor(t,e,n,i){super(),this._changeDetectorRef=t,this._elementRef=e,this._activeOptionChanges=g.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new Rc,this.opened=new Rc,this.closed=new Rc,this.optionActivated=new Rc,this._classList={},this.id="mat-autocomplete-"+bU++,this.inertGroups=(null==i?void 0:i.SAFARI)||!1,this._autoActiveFirstOption=!!n.autoActiveFirstOption}get isOpen(){return this._isOpen&&this.showPanel}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(t){this._autoActiveFirstOption=md(t)}set classList(t){this._classList=t&&t.length?function(t,e=/\s+/){const n=[];if(null!=t){const i=Array.isArray(t)?t:`${t}`.split(e);for(const t of i){const e=`${t}`.trim();e&&n.push(e)}}return n}(t).reduce((t,e)=>(t[e]=!0,t),{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}ngAfterContentInit(){this._keyManager=new fg(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(t=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[t]||null})}),this._setVisibility()}ngOnDestroy(){this._activeOptionChanges.unsubscribe()}_setScrollTop(t){this.panel&&(this.panel.nativeElement.scrollTop=t)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(t){const e=new yU(this,t);this.optionSelected.emit(e)}_getPanelAriaLabelledby(t){return this.ariaLabel?null:this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}_setVisibilityClasses(t){t[this._visibleClass]=this.showPanel,t[this._hiddenClass]=!this.showPanel}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(kl),ea(_U),ea(pp))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(sc,7),qc(fU,5)),2&t){let t;Wc(t=Yc())&&(e.template=t.first),Wc(t=Yc())&&(e.panel=t.first)}},inputs:{displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",classList:["class","classList"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],panelWidth:"panelWidth"},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[jo]}),t})(),xU=(()=>{class t extends wU{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,iv,5),Xc(n,av,5)),2&t){let t;Wc(t=Yc())&&(e.optionGroups=t),Wc(t=Yc())&&(e.options=t)}},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[_l([{provide:Jy,useExisting:t}]),jo],ngContentSelectors:mU,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(t,e){1&t&&(wa(),Jo(0,gU,3,4,"ng-template"))},directives:[mh],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t})();const SU=new oi("mat-autocomplete-scroll-strategy"),EU={provide:SU,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}},CU={provide:EV,useExisting:pt(()=>TU),multi:!0};let OU=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this._element=t,this._overlay=e,this._viewContainerRef=n,this._zone=i,this._changeDetectorRef=r,this._dir=o,this._formField=a,this._document=l,this._viewportRuler=c,this._defaults=u,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=g.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new P,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=Mz(()=>this.autocomplete&&this.autocomplete.options?Q(...this.autocomplete.options.map(t=>t.onSelectionChange)):this._zone.onStable.pipe(Gp(1),Qd(()=>this.optionSelections))),this._scrollStrategy=s}get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(t){this._autocompleteDisabled=md(t)}ngAfterViewInit(){const t=this._getWindow();void 0!==t&&this._zone.runOutsideAngular(()=>t.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(t){t.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const t=this._getWindow();void 0!==t&&t.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return Q(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(Hd(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(Hd(()=>this._overlayAttached)):wd()).pipe(D(t=>t instanceof sv?t:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return Q(xd(this._document,"click"),xd(this._document,"auxclick"),xd(this._document,"touchend")).pipe(Hd(t=>{const e=Ep(t),n=this._formField?this._formField._elementRef.nativeElement:null,i=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&e!==this._element.nativeElement&&(!n||!n.contains(e))&&(!i||!i.contains(e))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(e)}))}writeValue(t){Promise.resolve(null).then(()=>this._setTriggerValue(t))}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this._element.nativeElement.disabled=t}_handleKeydown(t){const e=t.keyCode;if(27===e&&!Qp(t)&&t.preventDefault(),this.activeOption&&13===e&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else if(this.autocomplete){const n=this.autocomplete._keyManager.activeItem,i=38===e||40===e;this.panelOpen||9===e?this.autocomplete._keyManager.onKeydown(t):i&&this._canOpen()&&this.openPanel(),(i||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}_handleInput(t){let e=t.target,n=e.value;"number"===e.type&&(n=""==n?null:parseFloat(n)),this._previousValue!==n&&(this._previousValue=n,this._onChange(n),this._canOpen()&&this._document.activeElement===t.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_floatLabel(t=!1){this._formField&&"auto"===this._formField.floatLabel&&(t?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){return Q(this._zone.onStable.pipe(Gp(1)),this.autocomplete.options.changes.pipe($f(()=>this._positionStrategy.reapplyLastPosition()),uU(0))).pipe(Qd(()=>{const t=this.panelOpen;return this._resetActiveItem(),this.autocomplete._setVisibility(),this.panelOpen&&(this._overlayRef.updatePosition(),t!==this.panelOpen&&this.autocomplete.opened.emit()),this.panelClosingActions}),Gp(1)).subscribe(t=>this._setValueAndClose(t))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_setTriggerValue(t){const e=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(t):t,n=null!=e?e:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n,this._previousValue=n}_setValueAndClose(t){t&&t.source&&(this._clearPreviousSelectedOption(t.source),this._setTriggerValue(t.source.value),this._onChange(t.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(t.source)),this.closePanel()}_clearPreviousSelectedOption(t){this.autocomplete.options.forEach(e=>{e!==t&&e.selected&&e.deselect()})}_attachOverlay(){var t;let e=this._overlayRef;e?(this._positionStrategy.setOrigin(this._getConnectedElement()),e.updateSize({width:this._getPanelWidth()})):(this._portal=new Lp(this.autocomplete.template,this._viewContainerRef,{id:null===(t=this._formField)||void 0===t?void 0:t.getLabelId()}),e=this._overlay.create(this._getOverlayConfig()),this._overlayRef=e,e.keydownEvents().subscribe(t=>{(27===t.keyCode&&!Qp(t)||38===t.keyCode&&Qp(t,"altKey"))&&(this._closeKeyEventStream.next(),this._resetActiveItem(),t.stopPropagation(),t.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&e&&e.updateSize({width:this._getPanelWidth()})})),e&&!e.hasAttached()&&(e.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const n=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&n!==this.panelOpen&&this.autocomplete.opened.emit()}_getOverlayConfig(){var t;return new af({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(t=this._defaults)||void 0===t?void 0:t.overlayPanelClass})}_getOverlayPosition(){const t=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(t),this._positionStrategy=t,t}_setStrategyPositions(t){const e=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],n=this._aboveClass,i=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:n},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:n}];let r;r="above"===this.position?i:"below"===this.position?e:[...e,...i],t.withPositions(r)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const t=this.autocomplete;t.autoActiveFirstOption?t._keyManager.setFirstItemActive():t._keyManager.setActiveItem(-1)}_canOpen(){const t=this._element.nativeElement;return!t.readOnly&&!t.disabled&&!this._autocompleteDisabled}_getWindow(){var t;return(null===(t=this._document)||void 0===t?void 0:t.defaultView)||window}_scrollToOption(t){const e=this.autocomplete,n=lv(t,e.options,e.optionGroups);if(0===t&&1===n)e._setScrollTop(0);else if(e.panel){const n=e.options.toArray()[t];if(n){const t=n._getHostElement(),i=cv(t.offsetTop,t.offsetHeight,e._getScrollTop(),e.panel.nativeElement.offsetHeight);e._setScrollTop(i)}}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(kf),ea(hc),ea(xu),ea(tc),ea(SU),ea(Op,8),ea(aU,9),ea(Yu,8),ea(Mp),ea(_U,8))},t.\u0275dir=se({type:t,inputs:{position:["matAutocompletePosition","position"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"],autocomplete:["matAutocomplete","autocomplete"],connectedTo:["matAutocompleteConnectedTo","connectedTo"]},features:[ye]}),t})(),TU=(()=>{class t extends OU{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(t,e){1&t&&fa("focusin",function(){return e._handleFocus()})("blur",function(){return e._onTouched()})("input",function(t){return e._handleInput(t)})("keydown",function(t){return e._handleKeydown(t)}),2&t&&Ko("autocomplete",e.autocompleteAttribute)("role",e.autocompleteDisabled?null:"combobox")("aria-autocomplete",e.autocompleteDisabled?null:"list")("aria-activedescendant",e.panelOpen&&e.activeOption?e.activeOption.id:null)("aria-expanded",e.autocompleteDisabled?null:e.panelOpen.toString())("aria-owns",e.autocompleteDisabled||!e.panelOpen||null==e.autocomplete?null:e.autocomplete.id)("aria-haspopup",!e.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[_l([CU]),jo]}),t})(),kU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[EU],imports:[[Rf,uv,Ny,Rh],Ip,uv,Ny]}),t})();const AU=_p({passive:!0});let PU=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return ep;const e=_d(t),n=this._monitoredElements.get(e);if(n)return n.subject;const i=new P,r="cdk-text-field-autofilled",s=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(r)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(r)&&(e.classList.remove(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",s,AU),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",s,AU)}}),i}stopMonitoring(t){const e=_d(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)(Ci(pp),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu))},token:t,providedIn:"root"}),t})(),MU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp]]}),t})();const IU=new oi("MAT_INPUT_VALUE_ACCESSOR"),DU=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let RU=0;const NU=Vy(class{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}});let LU=(()=>{class t extends NU{constructor(t,e,n,i,r,s,o,a,l,c){super(s,i,r,n),this._elementRef=t,this._platform=e,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+RU++,this.focused=!1,this.stateChanges=new P,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=>mp().has(t));const u=this._elementRef.nativeElement,h=u.nodeName.toLowerCase();this._inputValueAccessor=o||u,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{const e=t.target;!e.value&&0===e.selectionStart&&0===e.selectionEnd&&(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===h,this._isTextarea="textarea"===h,this._isInFormField=!!c,this._isNativeSelect&&(this.controlType=u.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=md(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=md(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&mp().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=md(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.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){var t,e;const n=(null===(e=null===(t=this._formField)||void 0===t?void 0:t._hideControlPlaceholder)||void 0===e?void 0:e.call(t))?null:this.placeholder;if(n!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=n,n?t.setAttribute("placeholder",n):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){DU.indexOf(this._type)}_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){t.length?this._elementRef.nativeElement.setAttribute("aria-describedby",t.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(WV,10),ea(_z,8),ea(Tz,8),ea(zy),ea(IU,10),ea(PU),ea(xu),ea(aU,8))},t.\u0275dir=se({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._focusChanged(!0)})("blur",function(){return e._focusChanged(!1)})("input",function(){return e._onInput()}),2&t&&(il("disabled",e.disabled)("required",e.required),Ko("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-invalid",e.empty&&e.required?null:e.errorState)("aria-required",e.required),ja("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[_l([{provide:Qz,useExisting:t}]),jo,ye]}),t})(),jU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[zy],imports:[[MU,cU,Ny],MU,cU]}),t})();function FU(...t){const e=t.length;if(0===e)throw new Error("list of properties cannot be empty.");return n=>D(function(t,e){return n=>{let i=n;for(let r=0;rYU),multi:!0};class qU{}const XU=By(jy(Ly(class{constructor(t){this._elementRef=t}}),"accent"));let YU=(()=>{class t extends XU{constructor(t,e,n,i,r,s,o,a){super(t),this._focusMonitor=e,this._changeDetectorRef=n,this._dir=i,this._ngZone=s,this._animationMode=a,this._invert=!1,this._max=100,this._min=0,this._step=1,this._thumbLabel=!1,this._tickInterval=0,this._value=null,this._vertical=!1,this.change=new Rc,this.input=new Rc,this.valueChange=new Rc,this.onTouched=()=>{},this._percent=0,this._isSliding=null,this._isActive=!1,this._tickIntervalPercent=0,this._sliderDimensions=null,this._controlValueAccessorChangeFn=()=>{},this._dirChangeSubscription=g.EMPTY,this._pointerDown=t=>{this.disabled||this._isSliding||!KU(t)&&0!==t.button||this._ngZone.run(()=>{this._touchId=KU(t)?function(t,e){for(let n=0;n{if("pointer"===this._isSliding){const e=QU(t,this._touchId);if(e){t.preventDefault();const n=this.value;this._lastPointerEvent=t,this._updateValueFromPosition(e),n!=this.value&&this._emitInputEvent()}}},this._pointerUp=t=>{"pointer"===this._isSliding&&(!KU(t)||"number"!=typeof this._touchId||ZU(t.changedTouches,this._touchId))&&(t.preventDefault(),this._removeGlobalEvents(),this._isSliding=null,this._touchId=void 0,this._valueOnSlideStart!=this.value&&!this.disabled&&this._emitChangeEvent(),this._valueOnSlideStart=this._lastPointerEvent=null)},this._windowBlur=()=>{this._lastPointerEvent&&this._pointerUp(this._lastPointerEvent)},this._document=o,this.tabIndex=parseInt(r)||0,s.runOutsideAngular(()=>{const e=t.nativeElement;e.addEventListener("mousedown",this._pointerDown,GU),e.addEventListener("touchstart",this._pointerDown,GU)})}get invert(){return this._invert}set invert(t){this._invert=md(t)}get max(){return this._max}set max(t){this._max=bd(t,this._max),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get min(){return this._min}set min(t){this._min=bd(t,this._min),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get step(){return this._step}set step(t){this._step=bd(t,this._step),this._step%1!=0&&(this._roundToDecimal=this._step.toString().split(".").pop().length),this._changeDetectorRef.markForCheck()}get thumbLabel(){return this._thumbLabel}set thumbLabel(t){this._thumbLabel=md(t)}get tickInterval(){return this._tickInterval}set tickInterval(t){this._tickInterval="auto"===t?"auto":"number"==typeof t||"string"==typeof t?bd(t,this._tickInterval):0}get value(){return null===this._value&&(this.value=this._min),this._value}set value(t){if(t!==this._value){let e=bd(t,0);this._roundToDecimal&&e!==this.min&&e!==this.max&&(e=parseFloat(e.toFixed(this._roundToDecimal))),this._value=e,this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}}get vertical(){return this._vertical}set vertical(t){this._vertical=md(t)}get displayValue(){return this.displayWith?this.displayWith(this.value):this._roundToDecimal&&this.value&&this.value%1!=0?this.value.toFixed(this._roundToDecimal):this.value||0}focus(t){this._focusHostElement(t)}blur(){this._blurHostElement()}get percent(){return this._clamp(this._percent)}_shouldInvertAxis(){return this.vertical?!this.invert:this.invert}_isMinValue(){return 0===this.percent}_getThumbGap(){return this.disabled?7:this._isMinValue()&&!this.thumbLabel?this._isActive?10:7:0}_getTrackBackgroundStyles(){const t=this.vertical?`1, ${1-this.percent}, 1`:1-this.percent+", 1, 1";return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"-":""}${this._getThumbGap()}px) scale3d(${t})`}}_getTrackFillStyles(){const t=this.percent,e=this.vertical?`1, ${t}, 1`:`${t}, 1, 1`;return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"":"-"}${this._getThumbGap()}px) scale3d(${e})`,display:0===t?"none":""}}_getTicksContainerStyles(){return{transform:`translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"-":""}${this._tickIntervalPercent/2*100}%)`}}_getTicksStyles(){let t=100*this._tickIntervalPercent,e={backgroundSize:this.vertical?`2px ${t}%`:`${t}% 2px`,transform:`translateZ(0) translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"":"-"}${t/2}%)${this.vertical||"rtl"!=this._getDirection()?"":" rotate(180deg)"}`};if(this._isMinValue()&&this._getThumbGap()){const t=this._shouldInvertAxis();let n;n=this.vertical?t?"Bottom":"Top":t?"Right":"Left",e[`padding${n}`]=`${this._getThumbGap()}px`}return e}_getThumbContainerStyles(){const t=this._shouldInvertAxis();return{transform:`translate${this.vertical?"Y":"X"}(-${100*(("rtl"!=this._getDirection()||this.vertical?t:!t)?this.percent:1-this.percent)}%)`}}_shouldInvertMouseCoords(){const t=this._shouldInvertAxis();return"rtl"!=this._getDirection()||this.vertical?t:!t}_getDirection(){return this._dir&&"rtl"==this._dir.value?"rtl":"ltr"}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{this._isActive=!!t&&"keyboard"!==t,this._changeDetectorRef.detectChanges()}),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>{this._changeDetectorRef.markForCheck()}))}ngOnDestroy(){const t=this._elementRef.nativeElement;t.removeEventListener("mousedown",this._pointerDown,GU),t.removeEventListener("touchstart",this._pointerDown,GU),this._lastPointerEvent=null,this._removeGlobalEvents(),this._focusMonitor.stopMonitoring(this._elementRef),this._dirChangeSubscription.unsubscribe()}_onMouseenter(){this.disabled||(this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent())}_onFocus(){this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent()}_onBlur(){this.onTouched()}_onKeydown(t){if(this.disabled||Qp(t)||this._isSliding&&"keyboard"!==this._isSliding)return;const e=this.value;switch(t.keyCode){case 33:this._increment(10);break;case 34:this._increment(-10);break;case 35:this.value=this.max;break;case 36:this.value=this.min;break;case 37:this._increment("rtl"==this._getDirection()?1:-1);break;case 38:this._increment(1);break;case 39:this._increment("rtl"==this._getDirection()?-1:1);break;case 40:this._increment(-1);break;default:return}e!=this.value&&(this._emitInputEvent(),this._emitChangeEvent()),this._isSliding="keyboard",t.preventDefault()}_onKeyup(){"keyboard"===this._isSliding&&(this._isSliding=null)}_getWindow(){return this._document.defaultView||window}_bindGlobalEvents(t){const e=this._document,n=KU(t),i=n?"touchend":"mouseup";e.addEventListener(n?"touchmove":"mousemove",this._pointerMove,GU),e.addEventListener(i,this._pointerUp,GU),n&&e.addEventListener("touchcancel",this._pointerUp,GU);const r=this._getWindow();void 0!==r&&r&&r.addEventListener("blur",this._windowBlur)}_removeGlobalEvents(){const t=this._document;t.removeEventListener("mousemove",this._pointerMove,GU),t.removeEventListener("mouseup",this._pointerUp,GU),t.removeEventListener("touchmove",this._pointerMove,GU),t.removeEventListener("touchend",this._pointerUp,GU),t.removeEventListener("touchcancel",this._pointerUp,GU);const e=this._getWindow();void 0!==e&&e&&e.removeEventListener("blur",this._windowBlur)}_increment(t){this.value=this._clamp((this.value||0)+this.step*t,this.min,this.max)}_updateValueFromPosition(t){if(!this._sliderDimensions)return;let e=this._clamp(((this.vertical?t.y:t.x)-(this.vertical?this._sliderDimensions.top:this._sliderDimensions.left))/(this.vertical?this._sliderDimensions.height:this._sliderDimensions.width));if(this._shouldInvertMouseCoords()&&(e=1-e),0===e)this.value=this.min;else if(1===e)this.value=this.max;else{const t=this._calculateValue(e),n=Math.round((t-this.min)/this.step)*this.step+this.min;this.value=this._clamp(n,this.min,this.max)}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.value),this.valueChange.emit(this.value),this.change.emit(this._createChangeEvent())}_emitInputEvent(){this.input.emit(this._createChangeEvent())}_updateTickIntervalPercent(){if(this.tickInterval&&this._sliderDimensions)if("auto"==this.tickInterval){let t=this.vertical?this._sliderDimensions.height:this._sliderDimensions.width,e=Math.ceil(30/(t*this.step/(this.max-this.min)))*this.step;this._tickIntervalPercent=e/t}else this._tickIntervalPercent=this.tickInterval*this.step/(this.max-this.min)}_createChangeEvent(t=this.value){let e=new qU;return e.source=this,e.value=t,e}_calculatePercentage(t){return((t||0)-this.min)/(this.max-this.min)}_calculateValue(t){return this.min+t*(this.max-this.min)}_clamp(t,e=0,n=1){return Math.max(e,Math.min(t,n))}_getSliderDimensions(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}_focusHostElement(t){this._elementRef.nativeElement.focus(t)}_blurHostElement(){this._elementRef.nativeElement.blur()}writeValue(t){this.value=t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.disabled=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(tc),ea(Op,8),ni("tabindex"),ea(xu),ea(Yu),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-slider"]],viewQuery:function(t,e){if(1&t&&qc($U,5),2&t){let t;Wc(t=Yc())&&(e._sliderWrapper=t.first)}},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()})("keydown",function(t){return e._onKeydown(t)})("keyup",function(){return e._onKeyup()})("mouseenter",function(){return e._onMouseenter()})("selectstart",function(t){return t.preventDefault()}),2&t&&(il("tabIndex",e.tabIndex),Ko("aria-disabled",e.disabled)("aria-valuemax",e.max)("aria-valuemin",e.min)("aria-valuenow",e.value)("aria-valuetext",null==e.valueText?e.displayValue:e.valueText)("aria-orientation",e.vertical?"vertical":"horizontal"),ja("mat-slider-disabled",e.disabled)("mat-slider-has-ticks",e.tickInterval)("mat-slider-horizontal",!e.vertical)("mat-slider-axis-inverted",e._shouldInvertAxis())("mat-slider-invert-mouse-coords",e._shouldInvertMouseCoords())("mat-slider-sliding",e._isSliding)("mat-slider-thumb-label-showing",e.thumbLabel)("mat-slider-vertical",e.vertical)("mat-slider-min-value",e._isMinValue())("mat-slider-hide-last-tick",e.disabled||e._isMinValue()&&e._getThumbGap()&&e._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",vertical:"vertical",displayWith:"displayWith",valueText:"valueText"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[_l([WU]),jo],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(t,e){1&t&&(ra(0,"div",0,1),ra(2,"div",2),oa(3,"div",3),oa(4,"div",4),sa(),ra(5,"div",5),oa(6,"div",6),sa(),ra(7,"div",7),oa(8,"div",8),oa(9,"div",9),ra(10,"div",10),ra(11,"span",11),Za(12),sa(),sa(),sa(),sa()),2&t&&(ws(3),na("ngStyle",e._getTrackBackgroundStyles()),ws(1),na("ngStyle",e._getTrackFillStyles()),ws(1),na("ngStyle",e._getTicksContainerStyles()),ws(1),na("ngStyle",e._getTicksStyles()),ws(1),na("ngStyle",e._getThumbContainerStyles()),ws(5),Ja(e.displayValue))},directives:[Th],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),t})();function KU(t){return"t"===t.type[0]}function QU(t,e){let n;return n=KU(t)?"number"==typeof e?ZU(t.touches,e)||ZU(t.changedTouches,e):t.touches[0]||t.changedTouches[0]:t,n?{x:n.clientX,y:n.clientY}:void 0}function ZU(t,e){for(let n=0;n{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny],Ny]}),t})();function tH(t,e){}class eH{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus=!0,this.restoreFocus=!0,this.closeOnNavigation=!0}}const nH={dialogContainer:Vg("dialogContainer",[$g("void, exit",Hg({opacity:0,transform:"scale(0.7)"})),$g("enter",Hg({transform:"none"})),Wg("* => enter",zg("150ms cubic-bezier(0, 0, 0.2, 1)",Hg({transform:"none",opacity:1}))),Wg("* => void, * => exit",zg("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Hg({opacity:0})))])};let iH=(()=>{class t extends Fp{constructor(t,e,n,i,r,s){super(),this._elementRef=t,this._focusTrapFactory=e,this._changeDetectorRef=n,this._config=r,this._focusMonitor=s,this._animationStateChanged=new Rc,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=t=>(this._portalOutlet.hasAttached(),this._portalOutlet.attachDomPortal(t)),this._ariaLabelledBy=r.ariaLabelledBy||null,this._document=i}_initializeWithAttachedContent(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement(),this._focusDialogContainer()}attachComponentPortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(t)}_recaptureFocus(){this._containsFocus()||(!this._config.autoFocus||!this._focusTrap.focusInitialElement())&&this._elementRef.nativeElement.focus()}_trapFocus(){this._config.autoFocus?this._focusTrap.focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()}_restoreFocus(){const t=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&t&&"function"==typeof t.focus){const e=Sp(),n=this._elementRef.nativeElement;(!e||e===this._document.body||e===n||n.contains(e))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_setupFocusTrap(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}_capturePreviouslyFocusedElement(){this._document&&(this._elementFocusedBeforeDialogWasOpened=Sp())}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const t=this._elementRef.nativeElement,e=Sp();return t===e||t.contains(e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(vg),ea(tc),ea(Yu,8),ea(eH),ea(Mg))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},features:[jo]}),t})(),rH=(()=>{class t extends iH{constructor(){super(...arguments),this._state="enter"}_onAnimationDone({toState:t,totalTime:e}){"enter"===t?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})):"exit"===t&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:e}))}_onAnimationStart({toState:t,totalTime:e}){"enter"===t?this._animationStateChanged.next({state:"opening",totalTime:e}):("exit"===t||"void"===t)&&this._animationStateChanged.next({state:"closing",totalTime:e})}_startExitAnimation(){this._state="exit",this._changeDetectorRef.markForCheck()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(t,e){1&t&&ga("@dialogContainer.start",function(t){return e._onAnimationStart(t)})("@dialogContainer.done",function(t){return e._onAnimationDone(t)}),2&t&&(il("id",e._id),Ko("role",e._config.role)("aria-labelledby",e._config.ariaLabel?null:e._ariaLabelledBy)("aria-label",e._config.ariaLabel)("aria-describedby",e._config.ariaDescribedBy||null),rl("@dialogContainer",e._state))},features:[jo],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,e){1&t&&Jo(0,tH,0,0,"ng-template",0)},directives:[Up],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[nH.dialogContainer]}}),t})(),sH=0;class oH{constructor(t,e,n="mat-dialog-"+sH++){this._overlayRef=t,this._containerInstance=e,this.id=n,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new P,this._afterClosed=new P,this._beforeClosed=new P,this._state=0,e._id=n,e._animationStateChanged.pipe(Hd(t=>"opened"===t.state),Gp(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe(Hd(t=>"closed"===t.state),Gp(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),t.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._afterClosed.next(this._result),this._afterClosed.complete(),this.componentInstance=null,this._overlayRef.dispose()}),t.keydownEvents().pipe(Hd(t=>27===t.keyCode&&!this.disableClose&&!Qp(t))).subscribe(t=>{t.preventDefault(),aH(this,"keyboard")}),t.backdropClick().subscribe(()=>{this.disableClose?this._containerInstance._recaptureFocus():aH(this,"mouse")})}close(t){this._result=t,this._containerInstance._animationStateChanged.pipe(Hd(t=>"closing"===t.state),Gp(1)).subscribe(e=>{this._beforeClosed.next(t),this._beforeClosed.complete(),this._overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._afterClosed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._overlayRef.backdropClick()}keydownEvents(){return this._overlayRef.keydownEvents()}updatePosition(t){let e=this._getPositionStrategy();return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this}updateSize(t="",e=""){return this._overlayRef.updateSize({width:t,height:e}),this._overlayRef.updatePosition(),this}addPanelClass(t){return this._overlayRef.addPanelClass(t),this}removePanelClass(t){return this._overlayRef.removePanelClass(t),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._overlayRef.dispose()}_getPositionStrategy(){return this._overlayRef.getConfig().positionStrategy}}function aH(t,e,n){return void 0!==t._containerInstance&&(t._containerInstance._closeInteractionType=e),t.close(n)}const lH=new oi("MatDialogData"),cH=new oi("mat-dialog-default-options"),uH=new oi("mat-dialog-scroll-strategy"),hH={provide:uH,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.block()}};let dH=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l){this._overlay=t,this._injector=e,this._defaultOptions=n,this._parentDialog=i,this._overlayContainer=r,this._dialogRefConstructor=o,this._dialogContainerType=a,this._dialogDataToken=l,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new P,this._afterOpenedAtThisLevel=new P,this._ariaHiddenElements=new Map,this.afterAllClosed=Mz(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Kd(void 0))),this._scrollStrategy=s}get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const t=this._parentDialog;return t?t._getAfterAllClosed():this._afterAllClosedAtThisLevel}open(t,e){(e=function(t,e){return Object.assign(Object.assign({},e),t)}(e,this._defaultOptions||new eH)).id&&this.getDialogById(e.id);const n=this._createOverlay(e),i=this._attachDialogContainer(n,e),r=this._attachDialogContent(t,i,n,e);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(r),r.afterClosed().subscribe(()=>this._removeOpenDialog(r)),this.afterOpened.next(r),i._initializeWithAttachedContent(),r}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(t){return this.openDialogs.find(e=>e.id===t)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_createOverlay(t){const e=this._getOverlayConfig(t);return this._overlay.create(e)}_getOverlayConfig(t){const e=new af({positionStrategy:this._overlay.position().global(),scrollStrategy:t.scrollStrategy||this._scrollStrategy(),panelClass:t.panelClass,hasBackdrop:t.hasBackdrop,direction:t.direction,minWidth:t.minWidth,minHeight:t.minHeight,maxWidth:t.maxWidth,maxHeight:t.maxHeight,disposeOnNavigation:t.closeOnNavigation});return t.backdropClass&&(e.backdropClass=t.backdropClass),e}_attachDialogContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:eH,useValue:e}]}),i=new Np(this._dialogContainerType,e.viewContainerRef,n,e.componentFactoryResolver);return t.attach(i).instance}_attachDialogContent(t,e,n,i){const r=new this._dialogRefConstructor(n,e,i.id);if(t instanceof sc)e.attachTemplatePortal(new Lp(t,null,{$implicit:i.data,dialogRef:r}));else{const n=this._createInjector(i,r,e),s=e.attachComponentPortal(new Np(t,i.viewContainerRef,n));r.componentInstance=s.instance}return r.updateSize(i.width,i.height).updatePosition(i.position),r}_createInjector(t,e,n){const i=t&&t.viewContainerRef&&t.viewContainerRef.injector,r=[{provide:this._dialogContainerType,useValue:n},{provide:this._dialogDataToken,useValue:t.data},{provide:this._dialogRefConstructor,useValue:e}];return t.direction&&(!i||!i.get(Op,null,Mt.Optional))&&r.push({provide:Op,useValue:{value:t.direction,change:wd()}}),No.create({parent:i||this._injector,providers:r})}_removeOpenDialog(t){const e=this.openDialogs.indexOf(t);e>-1&&(this.openDialogs.splice(e,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((t,e)=>{t?e.setAttribute("aria-hidden",t):e.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const t=this._overlayContainer.getContainerElement();if(t.parentElement){const e=t.parentElement.children;for(let n=e.length-1;n>-1;n--){let i=e[n];i!==t&&"SCRIPT"!==i.nodeName&&"STYLE"!==i.nodeName&&!i.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}}}_closeDialogs(t){let e=t.length;for(;e--;)t[e].close()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(No),ea(void 0),ea(void 0),ea(gf),ea(void 0),ea(ai),ea(ai),ea(oi))},t.\u0275dir=se({type:t}),t})(),pH=(()=>{class t extends dH{constructor(t,e,n,i,r,s,o){super(t,e,i,s,o,r,oH,rH,lH)}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(No),Ci(lh,8),Ci(cH,8),Ci(uH),Ci(t,12),Ci(gf))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fH=0,gH=(()=>{class t{constructor(t,e,n){this._dialogRef=t,this._elementRef=e,this._dialog=n,this.id="mat-dialog-title-"+fH++}ngOnInit(){this._dialogRef||(this._dialogRef=function(t,e){let n=t.nativeElement.parentElement;for(;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?e.find(t=>t.id===n.id):null}(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{const t=this._dialogRef._containerInstance;t&&!t._ariaLabelledBy&&(t._ariaLabelledBy=this.id)})}}return t.\u0275fac=function(e){return new(e||t)(ea(oH,8),ea(kl),ea(pH))},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(t,e){2&t&&il("id",e.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t})(),mH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t})();let bH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[pH,hH],imports:[[Rf,Hp,Ny],Ny]}),t})();const yH=new oi("CdkAccordion");let vH=0,_H=(()=>{class t{constructor(t,e,n){this.accordion=t,this._changeDetectorRef=e,this._expansionDispatcher=n,this._openCloseAllSubscription=g.EMPTY,this.closed=new Rc,this.opened=new Rc,this.destroyed=new Rc,this.expandedChange=new Rc,this.id="cdk-accordion-child-"+vH++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=n.listen((t,e)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===e&&this.id!==t&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}get expanded(){return this._expanded}set expanded(t){t=md(t),this._expanded!==t&&(this._expanded=t,this.expandedChange.emit(t),t?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(t=>{this.disabled||(this.expanded=t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(yH,12),ea(tc),ea(Ap))},t.\u0275dir=se({type:t,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[_l([{provide:yH,useValue:void 0}])]}),t})(),wH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const xH=["body"];function SH(t,e){}const EH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],CH=["mat-expansion-panel-header","*","mat-action-row"];function OH(t,e){1&t&&oa(0,"span",2),2&t&&na("@indicatorRotate",va()._getExpandedState())}const TH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],kH=["mat-panel-title","mat-panel-description","*"],AH=new oi("MAT_ACCORDION"),PH="225ms cubic-bezier(0.4,0.0,0.2,1)",MH={indicatorRotate:Vg("indicatorRotate",[$g("collapsed, void",Hg({transform:"rotate(0deg)"})),$g("expanded",Hg({transform:"rotate(180deg)"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))]),bodyExpansion:Vg("bodyExpansion",[$g("collapsed, void",Hg({height:"0px",visibility:"hidden"})),$g("expanded",Hg({height:"*",visibility:"visible"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))])};let IH=(()=>{class t{constructor(t){this._template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","matExpansionPanelContent",""]]}),t})(),DH=0;const RH=new oi("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let NH=(()=>{class t extends _H{constructor(t,e,n,i,r,s,o){super(t,e,n),this._viewContainerRef=i,this._animationMode=s,this._hideToggle=!1,this.afterExpand=new Rc,this.afterCollapse=new Rc,this._inputChanges=new P,this._headerId="mat-expansion-panel-header-"+DH++,this._bodyAnimationDone=new P,this.accordion=t,this._document=r,this._bodyAnimationDone.pipe(Rd((t,e)=>t.fromState===e.fromState&&t.toState===e.toState)).subscribe(t=>{"void"!==t.fromState&&("expanded"===t.toState?this.afterExpand.emit():"collapsed"===t.toState&&this.afterCollapse.emit())}),o&&(this.hideToggle=o.hideToggle)}get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(t){this._hideToggle=md(t)}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(t){this._togglePosition=t}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this.opened.pipe(Kd(null),Hd(()=>this.expanded&&!this._portal),Gp(1)).subscribe(()=>{this._portal=new Lp(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(t){this._inputChanges.next(t)}ngOnDestroy(){super.ngOnDestroy(),this._bodyAnimationDone.complete(),this._inputChanges.complete()}_containsFocus(){if(this._body){const t=this._document.activeElement,e=this._body.nativeElement;return t===e||e.contains(t)}return!1}}return t.\u0275fac=function(e){return new(e||t)(ea(AH,12),ea(tc),ea(Ap),ea(hc),ea(Yu),ea(Ey,8),ea(RH,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,IH,5),2&t){let t;Wc(t=Yc())&&(e._lazyContent=t.first)}},viewQuery:function(t,e){if(1&t&&qc(xH,5),2&t){let t;Wc(t=Yc())&&(e._body=t.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(t,e){2&t&&ja("mat-expanded",e.expanded)("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-expansion-panel-spacing",e._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[_l([{provide:AH,useValue:void 0}]),jo,ye],ngContentSelectors:CH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,e){1&t&&(wa(EH),xa(0),ra(1,"div",0,1),fa("@bodyExpansion.done",function(t){return e._bodyAnimationDone.next(t)}),ra(3,"div",2),xa(4,1),Jo(5,SH,0,0,"ng-template",3),sa(),xa(6,2),sa()),2&t&&(ws(1),na("@bodyExpansion",e._getExpandedState())("id",e.id),Ko("aria-labelledby",e._headerId),ws(4),na("cdkPortalOutlet",e._portal))},directives:[Up],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[MH.bodyExpansion]},changeDetection:0}),t})();class LH{}const jH=By(LH);let FH=(()=>{class t extends jH{constructor(t,e,n,i,r,s,o){super(),this.panel=t,this._element=e,this._focusMonitor=n,this._changeDetectorRef=i,this._animationMode=s,this._parentChangeSubscription=g.EMPTY;const a=t.accordion?t.accordion._stateChanges.pipe(Hd(t=>!(!t.hideToggle&&!t.togglePosition))):ep;this.tabIndex=parseInt(o||"")||0,this._parentChangeSubscription=Q(t.opened,t.closed,a,t._inputChanges.pipe(Hd(t=>!!(t.hideToggle||t.disabled||t.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),t.closed.pipe(Hd(()=>t._containsFocus())).subscribe(()=>n.focusVia(e,"program")),r&&(this.expandedHeight=r.expandedHeight,this.collapsedHeight=r.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const t=this._isExpanded();return t&&this.expandedHeight?this.expandedHeight:!t&&this.collapsedHeight?this.collapsedHeight:null}_keydown(t){switch(t.keyCode){case 32:case 13:Qp(t)||(t.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(t))}}focus(t,e){t?this._focusMonitor.focusVia(this._element,t,e):this._element.nativeElement.focus(e)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(t=>{t&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}return t.\u0275fac=function(e){return new(e||t)(ea(NH,1),ea(kl),ea(Mg),ea(tc),ea(RH,8),ea(Ey,8),ni("tabindex"))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(t,e){1&t&&fa("click",function(){return e._toggle()})("keydown",function(t){return e._keydown(t)}),2&t&&(Ko("id",e.panel._headerId)("tabindex",e.tabIndex)("aria-controls",e._getPanelId())("aria-expanded",e._isExpanded())("aria-disabled",e.panel.disabled),La("height",e._getHeaderHeight()),ja("mat-expanded",e._isExpanded())("mat-expansion-toggle-indicator-after","after"===e._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===e._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[jo],ngContentSelectors:kH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(t,e){1&t&&(wa(TH),ra(0,"span",0),xa(1),xa(2,1),xa(3,2),sa(),Jo(4,OH,1,1,"span",1)),2&t&&(ws(4),na("ngIf",e._showToggle()))},directives:[_h],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[MH.indicatorRotate]},changeDetection:0}),t})(),BH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,wH,Hp]]}),t})();var VH=n(5478);Object.create(Error.prototype);const zH=["*"];var UH=(()=>(function(t){t.LineHighlight="line-highlight",t.LineNumbers="line-numbers"}(UH||(UH={})),UH))();class HH{}const $H=new oi("SECURITY_CONTEXT");let GH=(()=>{class t{constructor(t,e,n,i,r){this.platform=t,this.securityContext=e,this.http=n,this.sanitizer=r,this.initialMarkedOptions={renderer:new VH.Renderer},this.options=i}get options(){return this._options}set options(t){this._options=Object.assign(Object.assign({},this.initialMarkedOptions),t)}get renderer(){return this.options.renderer}set renderer(t){this.options.renderer=t}compile(t,e=!1,n=!1,i=this.options){const r=this.trimIndentation(t),s=e?this.decodeHtml(r):r,o=n?this.renderEmoji(s):s,a=VH.parse(o,i);return this.sanitizer.sanitize(this.securityContext,a)||""}getSource(t){if(!this.http)throw new Error("[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information");return this.http.get(t,{responseType:"text"}).pipe(D(e=>this.handleExtension(t,e)))}highlight(t){if(Lh(this.platform)&&"undefined"!=typeof Prism){t||(t=document);const e=t.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(e,t=>t.classList.add("language-none")),Prism.highlightAllUnder(t)}}renderKatex(t,e){if(!Lh(this.platform))return t;if("undefined"==typeof katex||void 0===katex.renderToString)throw new Error("[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information");return t.replace(/\$([^\s][^$]*?[^\s])\$/gm,(t,n)=>katex.renderToString(n,e))}decodeHtml(t){if(!Lh(this.platform))return t;const e=document.createElement("textarea");return e.innerHTML=t,e.value}handleExtension(t,e){const n=t?t.split("?")[0].split(".").splice(-1).join():"";return"md"!==n?"```"+n+"\n"+e+"\n```":e}renderEmoji(t){if(!Lh(this.platform))return t;if("undefined"==typeof joypixels||void 0===joypixels.shortnameToUnicode)throw new Error("[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information");return joypixels.shortnameToUnicode(t)}trimIndentation(t){if(!t)return"";let e;return t.split("\n").map(t=>{let n=e;return t.length>0&&(n=isNaN(n)?t.search(/\S|$/):Math.min(t.search(/\S|$/),n)),isNaN(e)&&(e=n),n?t.substring(n):t}).join("\n")}}return t.\u0275fac=function(e){return new(e||t)(Ci(ou),Ci($H),Ci(Bv,8),Ci(HH,8),Ci(hd))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),WH=(()=>{class t{constructor(t,e){this.element=t,this.markdownService=e,this.error=new Rc,this.load=new Rc,this.ready=new Rc,this._emoji=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1}get emoji(){return this._emoji}set emoji(t){this._emoji=this.coerceBooleanProperty(t)}get katex(){return this._katex}set katex(t){this._katex=this.coerceBooleanProperty(t)}get lineHighlight(){return this._lineHighlight}set lineHighlight(t){this._lineHighlight=this.coerceBooleanProperty(t)}get lineNumbers(){return this._lineNumbers}set lineNumbers(t){this._lineNumbers=this.coerceBooleanProperty(t)}ngOnChanges(){null==this.data?null==this.src||this.handleSrc():this.handleData()}ngAfterViewInit(){!this.data&&!this.src&&this.handleTransclusion()}render(t,e=!1){let n=this.markdownService.compile(t,e,this.emoji);n=this.katex?this.markdownService.renderKatex(n,this.katexOptions):n,this.element.nativeElement.innerHTML=n,this.handlePlugins(),this.markdownService.highlight(this.element.nativeElement),this.ready.emit()}coerceBooleanProperty(t){return null!=t&&"false"!=`${String(t)}`}handleData(){this.render(this.data)}handleSrc(){this.markdownService.getSource(this.src).subscribe(t=>{this.render(t),this.load.emit(t)},t=>this.error.emit(t))}handleTransclusion(){this.render(this.element.nativeElement.innerHTML,!0)}handlePlugins(){this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,UH.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}setPluginClass(t,e){const n=t.querySelectorAll("pre");for(let i=0;i{const r=e[t];if(r){const e=this.toLispCase(t);n.item(i).setAttribute(e,r.toString())}})}toLispCase(t){const e=t.match(/([A-Z])/g);if(!e)return t;let n=t.toString();for(let i=0,r=e.length;i{class t{static forRoot(e){return{ngModule:t,providers:[GH,e&&e.loader||[],e&&e.markedOptions||[],{provide:$H,useValue:e&&null!=e.sanitize?e.sanitize:yr.HTML}]}}static forChild(){return{ngModule:t}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function XH(t,e,n){return n?XH(t,e).pipe(D(t=>d(t)?n(...t):n(t))):new C(n=>{const i=(...t)=>n.next(1===t.length?t[0]:t);let r;try{r=t(i)}catch(s){return void n.error(s)}if(a(e))return()=>e(i,r)})}function YH(...t){return e=>{let n;return"function"==typeof t[t.length-1]&&(n=t.pop()),e.lift(new KH(t,n))}}class KH{constructor(t,e){this.observables=t,this.project=e}call(t,e){return e.subscribe(new QH(t,this.observables,this.project))}}class QH extends S_{constructor(t,e,n){super(t),this.observables=e,this.project=n,this.toRespond=[];const i=e.length;this.values=new Array(i);for(let r=0;r0){const t=i.indexOf(n);-1!==t&&i.splice(t,1)}}notifyComplete(){}_next(t){if(0===this.toRespond.length){const e=[t,...this.values];this.project?this._tryProject(e):this.destination.next(e)}}_tryProject(t){let e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}class ZH{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new JH(t,this.accumulator,this.seed,this.hasSeed))}}class JH extends v{constructor(t,e,n,i){super(t),this.accumulator=e,this._seed=n,this.hasSeed=i,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(i){this.destination.error(i)}this.seed=n,this.destination.next(n)}}class t${constructor(t){this.predicate=t}call(t,e){return e.subscribe(new e$(t,this.predicate))}}class e$ extends v{constructor(t,e){super(t),this.predicate=e,this.skipping=!0,this.index=0}_next(t){const e=this.destination;this.skipping&&this.tryCallPredicate(t),this.skipping||e.next(t)}tryCallPredicate(t){try{const e=this.predicate(t,this.index++);this.skipping=Boolean(e)}catch(e){this.destination.error(e)}}}const n$=["youtubeContainer"];let i$=(()=>{class t{constructor(t,e){this._ngZone=t,this._youtubeContainer=new P,this._destroyed=new P,this._playerChanges=new Uf(void 0),this._videoId=new Uf(void 0),this._height=new Uf(390),this._width=new Uf(640),this._startSeconds=new Uf(void 0),this._endSeconds=new Uf(void 0),this._suggestedQuality=new Uf(void 0),this._playerVars=new Uf(void 0),this.ready=this._getLazyEmitter("onReady"),this.stateChange=this._getLazyEmitter("onStateChange"),this.error=this._getLazyEmitter("onError"),this.apiChange=this._getLazyEmitter("onApiChange"),this.playbackQualityChange=this._getLazyEmitter("onPlaybackQualityChange"),this.playbackRateChange=this._getLazyEmitter("onPlaybackRateChange"),this._isBrowser=Lh(e)}get videoId(){return this._videoId.value}set videoId(t){this._videoId.next(t)}get height(){return this._height.value}set height(t){this._height.next(t||390)}get width(){return this._width.value}set width(t){this._width.next(t||640)}set startSeconds(t){this._startSeconds.next(t)}set endSeconds(t){this._endSeconds.next(t)}set suggestedQuality(t){this._suggestedQuality.next(t)}get playerVars(){return this._playerVars.value}set playerVars(t){this._playerVars.next(t)}ngOnInit(){if(!this._isBrowser)return;let t=wd(!0);if(!window.YT||!window.YT.Player){const e=new P;this._existingApiReadyCallback=window.onYouTubeIframeAPIReady,window.onYouTubeIframeAPIReady=()=>{this._existingApiReadyCallback&&this._existingApiReadyCallback(),this._ngZone.run(()=>e.next(!0))},t=e.pipe(Gp(1),Kd(!1))}const e=function(t,e,n,i,r,s,o){const a=T_([e,s]).pipe(YH(T_([i,r])),D(([t,e])=>{const[n,i]=t,[r,s]=e;return n?{videoId:n,playerVars:i,width:r,height:s}:void 0}));return T_([t,a,wd(o)]).pipe(function(t){return S(function(...t){let e=null;return"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0].slice()),n=>n.lift.call(U([n,...t]),new k_(e))}(t),function(t){return e=>e.lift(new t$(t))}(([t,e])=>!e),D(([t])=>t))}(n),function(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new ZH(t,e,n))}}(r$,void 0),Rd())}(this._youtubeContainer,this._videoId,t,this._width,this._height,this._playerVars,this._ngZone).pipe($f(t=>{this._playerChanges.next(t)}),W(t=>t?s$(t)?wd(t):new C(e=>{let n=!1,i=!1;const r=t=>{i=!0,n||(t.target.removeEventListener("onReady",r),e.next(t.target))};return t.addEventListener("onReady",r),()=>{n=!0,i||(t=>{s$(t)||t.destroy()})(t)}}).pipe(Gp(1),Kd(void 0)):wd(void 0)),Wd(this._destroyed),rt(new P));e.subscribe(t=>{this._player=t,t&&this._pendingPlayerState&&this._initializePlayer(t,this._pendingPlayerState),this._pendingPlayerState=void 0}),function(t,e,n){T_([t,e,n]).subscribe(([t,e,n])=>t&&t.setSize(e,n))}(e,this._width,this._height),function(t,e){T_([t,e]).subscribe(([t,e])=>t&&e&&t.setPlaybackQuality(e))}(e,this._suggestedQuality),function(t,e,n,i,r,s){const o=T_([n,i]).pipe(D(([t,e])=>({startSeconds:t,endSeconds:e}))),a=o.pipe(o$(t,t=>!!t&&!function(t){const e=t.getPlayerState();return e!==YT.PlayerState.UNSTARTED&&e!==YT.PlayerState.CUED}(t))),l=e.pipe(o$(t,(t,e)=>!!t&&t.videoId!==e));Q(t.pipe(o$(T_([e,o]),([t,e],n)=>!(!n||t==n.videoId&&!e.startSeconds&&!e.endSeconds))),l,a).pipe(YH(T_([t,e,o,r])),D(([t,e])=>e),Wd(s)).subscribe(([t,e,n,i])=>{!e||!t||(t.videoId=e,t.cueVideoById(Object.assign({videoId:e,suggestedQuality:i},n)))})}(e,this._videoId,this._startSeconds,this._endSeconds,this._suggestedQuality,this._destroyed),e.connect()}createEventsBoundInZone(){return{}}ngAfterViewInit(){this._youtubeContainer.next(this.youtubeContainer.nativeElement)}ngOnDestroy(){this._player&&(this._player.destroy(),window.onYouTubeIframeAPIReady=this._existingApiReadyCallback),this._playerChanges.complete(),this._videoId.complete(),this._height.complete(),this._width.complete(),this._startSeconds.complete(),this._endSeconds.complete(),this._suggestedQuality.complete(),this._youtubeContainer.complete(),this._playerVars.complete(),this._destroyed.next(),this._destroyed.complete()}playVideo(){this._player?this._player.playVideo():this._getPendingState().playbackState=YT.PlayerState.PLAYING}pauseVideo(){this._player?this._player.pauseVideo():this._getPendingState().playbackState=YT.PlayerState.PAUSED}stopVideo(){this._player?this._player.stopVideo():this._getPendingState().playbackState=YT.PlayerState.CUED}seekTo(t,e){this._player?this._player.seekTo(t,e):this._getPendingState().seek={seconds:t,allowSeekAhead:e}}mute(){this._player?this._player.mute():this._getPendingState().muted=!0}unMute(){this._player?this._player.unMute():this._getPendingState().muted=!1}isMuted(){return this._player?this._player.isMuted():!!this._pendingPlayerState&&!!this._pendingPlayerState.muted}setVolume(t){this._player?this._player.setVolume(t):this._getPendingState().volume=t}getVolume(){return this._player?this._player.getVolume():this._pendingPlayerState&&null!=this._pendingPlayerState.volume?this._pendingPlayerState.volume:0}setPlaybackRate(t){if(this._player)return this._player.setPlaybackRate(t);this._getPendingState().playbackRate=t}getPlaybackRate(){return this._player?this._player.getPlaybackRate():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackRate?this._pendingPlayerState.playbackRate:0}getAvailablePlaybackRates(){return this._player?this._player.getAvailablePlaybackRates():[]}getVideoLoadedFraction(){return this._player?this._player.getVideoLoadedFraction():0}getPlayerState(){if(this._isBrowser&&window.YT)return this._player?this._player.getPlayerState():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackState?this._pendingPlayerState.playbackState:YT.PlayerState.UNSTARTED}getCurrentTime(){return this._player?this._player.getCurrentTime():this._pendingPlayerState&&this._pendingPlayerState.seek?this._pendingPlayerState.seek.seconds:0}getPlaybackQuality(){return this._player?this._player.getPlaybackQuality():"default"}getAvailableQualityLevels(){return this._player?this._player.getAvailableQualityLevels():[]}getDuration(){return this._player?this._player.getDuration():0}getVideoUrl(){return this._player?this._player.getVideoUrl():""}getVideoEmbedCode(){return this._player?this._player.getVideoEmbedCode():""}_getPendingState(){return this._pendingPlayerState||(this._pendingPlayerState={}),this._pendingPlayerState}_initializePlayer(t,e){const{playbackState:n,playbackRate:i,volume:r,muted:s,seek:o}=e;switch(n){case YT.PlayerState.PLAYING:t.playVideo();break;case YT.PlayerState.PAUSED:t.pauseVideo();break;case YT.PlayerState.CUED:t.stopVideo()}null!=i&&t.setPlaybackRate(i),null!=r&&t.setVolume(r),null!=s&&(s?t.mute():t.unMute()),null!=o&&t.seekTo(o.seconds,o.allowSeekAhead)}_getLazyEmitter(t){return this._playerChanges.pipe(Qd(e=>e?XH(n=>{e.addEventListener(t,n)},n=>{try{e.removeEventListener&&e.removeEventListener(t,n)}catch(i){}}):wd()),t=>new C(e=>t.subscribe({next:t=>this._ngZone.run(()=>e.next(t)),error:t=>e.error(t),complete:()=>e.complete()})),Wd(this._destroyed))}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["youtube-player"]],viewQuery:function(t,e){if(1&t&&qc(n$,5),2&t){let t;Wc(t=Yc())&&(e.youtubeContainer=t.first)}},inputs:{videoId:"videoId",height:"height",width:"width",startSeconds:"startSeconds",endSeconds:"endSeconds",suggestedQuality:"suggestedQuality",playerVars:"playerVars",showBeforeIframeApiLoads:"showBeforeIframeApiLoads"},outputs:{ready:"ready",stateChange:"stateChange",error:"error",apiChange:"apiChange",playbackQualityChange:"playbackQualityChange",playbackRateChange:"playbackRateChange"},decls:2,vars:0,consts:[["youtubeContainer",""]],template:function(t,e){1&t&&oa(0,"div",null,0)},encapsulation:2,changeDetection:0}),t})();function r$(t,[e,n,i]){if(t&&n&&t.playerVars!==n.playerVars)t.destroy();else{if(!n)return void(t&&t.destroy());if(t)return t}const r=i.runOutsideAngular(()=>new YT.Player(e,n));return r.videoId=n.videoId,r.playerVars=n.playerVars,r}function s$(t){return"getPlayerStatus"in t}function o$(t,e){return S(YH(t),Hd(([t,n])=>e(n,t)),D(([t])=>t))}let a$=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function l$(t){return!0===t}function c$(t){return null==t}function u$(t){return!c$(t)}function h$(t){return Boolean(t)}function d$(t){return c$(t)?t:JSON.parse(JSON.stringify(t))}const p$=t=>{const e=t instanceof Date;if("object"!=typeof t||null===t||e)return t;Object.freeze(t);const n="function"==typeof t,i=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(e=>{i.call(t,e)&&(!n||"caller"!==e&&"callee"!==e&&"arguments"!==e)&&null!==t[e]&&("object"==typeof t[e]||"function"==typeof t[e])&&!Object.isFrozen(t[e])&&p$(t[e])}),t};function f$(t){return u$(t)&&"object"==typeof t&&function(t){return"[object Object]"===Object.prototype.toString.call(t)}(t)}const g$="NGXS_DATA_META",m$="NGXS_META",b$="NGXS_ARGUMENT_REGISTRY_META";let y$=(()=>{class t{constructor(t){this.sequence$=new Uf(0),this.subscription=null,t&&(this.subscription=t.subscribe(()=>this.updateSequence()))}get sequenceValue(){return this.sequence$.getValue()}ngOnDestroy(){var t;this.sequence$.next(0),null===(t=this.subscription)||void 0===t||t.unsubscribe()}updateSequence(){this.sequence$.next(this.sequenceValue+1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function v$(t){return t[g$]}let _$=(()=>{class t{constructor(e,n,i){t.store=e.get(pV),t.ngZone=e.get(xu),t.factory=n,t.context=i,t.computed=e.get(y$)}}return t.store=null,t.computed=null,t.context=null,t.factory=null,t.ngZone=null,t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(wB),Ci(_B))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class w${constructor(){w$.statesCachedMeta.clear()}static createStateContext(t){return _$.context.createStateContext(t)}static ensureMappedState(t){if(c$(_$.factory)||c$(t))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return(u$(t.name)?w$.statesCachedMeta.get(t.name):null)||w$.ensureMeta(t)}static getRepositoryByInstance(t){var e;const n=null!==(e=v$(w$.getStateClassByInstance(t)))&&void 0!==e?e:null;if(c$(n))throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return n}static getStateClassByInstance(t){return(null!=t?t:{}).constructor}static clearMetaByInstance(t){const e=w$.getRepositoryByInstance(t);e.stateMeta.actions={},e.operations={}}static createPayload(t,e){const n={},i=Array.from(t);for(let r=0;r0?n:null}static createAction(t,e,n){const i=w$.createPayload(e,n);return new(function(t){return class{constructor(t){t&&Object.keys(t).forEach(e=>{this[e]=t[e]})}static get type(){return t}}}(t.type))(i)}static ensureMeta(t){var e;const n=u$(t.name)?null===(e=_$.factory.states)||void 0===e?void 0:e.find(e=>e.name===t.name):null;return u$(n)&&u$(t.name)&&w$.statesCachedMeta.set(t.name,n),n}}w$.statesCachedMeta=new Map,w$.\u0275fac=function(t){return new(t||w$)},w$.\u0275prov=xt({token:w$,factory:w$.\u0275fac}),new lp(1);class x$ extends Error{constructor(t){super(`Child states can only be added to an object. Cannot convert ${u$(null==t?void 0:t.constructor)?t.constructor.name:t} to PlainObject`)}}function S$(t){var e;return null!==(e=t.NGXS_OPTIONS_META)&&void 0!==e?e:{name:""}}function E$(t){var e;const n=S$(t),i=null!==(e=n.children)&&void 0!==e?e:[],r=d$(void 0===n.defaults?{}:n.defaults);if(i.length){if(f$(r))return function(t,e){return e.reduce((t,e)=>{const n=S$(e);if(function(t){const e="string"==typeof t?t.trim():t;return[void 0,null,NaN,"",1/0].includes(e)}(n.name))throw new Error("State name not provided in class");return t[n.name.toString()]=E$(e),t},null!=t?t:{})}(r,i);throw new x$(r)}return r}function C$(t){var e;return null!==(e=t.__NGXS_COMPUTED_OPTION__)&&void 0!==e?e:null}function O$(){var t,e;return null!==(e=null===(t=null==_$?void 0:_$.computed)||void 0===t?void 0:t.sequenceValue)&&void 0!==e?e:0}function T$(t){let e=!1;return Dd(t)&&(e=!0),e}function k$(t){return t[b$]}class A$ extends Error{constructor(t,e){super(`An argument with the name '${t}' already exists in the method '${e}'`)}}class P${constructor(){this.payloadMap=new Map,this.argumentMap=new Map}getPayloadTypeByIndex(t){var e;return null!==(e=this.payloadMap.get(t))&&void 0!==e?e:null}getArgumentNameByIndex(t){var e;return null!==(e=this.argumentMap.get(t))&&void 0!==e?e:null}createPayloadType(t,e,n){this.checkDuplicateName(t,e),this.payloadMap.set(n,t),this.payloadMap.set(t,t)}createArgumentName(t,e,n){this.checkDuplicateName(t,e),this.argumentMap.set(n,t),this.argumentMap.set(t,t)}checkDuplicateName(t,e){if(h$(this.argumentMap.has(t))||h$(this.payloadMap.has(t)))throw new A$(t,e)}}function M$(t){return Nu()?p$(t):t}function I$(t){return{enumerable:!0,configurable:!0,get(){const e=v$(t),n=w$.ensureMappedState(e.stateMeta);return w$.createStateContext(n)}}}function D$(t){if(!t)throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return Object.assign(Object.assign({},t),{getState:()=>Nu()?p$(t.getState()):t.getState(),setState(e){t.setState(e)},patchState(e){t.patchState(e)}})}function R$(){return(t,e,n)=>{!function(t,e){if(!function(t,e){var n;let i=t,r=!1;if(f$(i))for(;null!==i;){if(l$(null==i?void 0:i.hasOwnProperty(e))){r=!!(null===(n=Object.getOwnPropertyDescriptor(i,e))||void 0===n?void 0:n.get);break}i=Object.getPrototypeOf(i)}return r}(t,null==e?void 0:e.toString()))throw new Error(`The method must be a getter for the computed decorator to work properly.\nExample: \n@Computed() get ${e.toString()}() { \n\t .. \n}`)}(t,e);const i=n.get;return n.get=function(...t){const e=function(t){return c$(C$(t))&&Object.defineProperties(t,{__NGXS_COMPUTED_OPTION__:{enumerable:!0,configurable:!0,value:new WeakMap}}),C$(t)}(this),n=null==e?void 0:e.get(i);if(l$(null==n?void 0:n.isObservable))return null==n?void 0:n.value;if(c$(n)||n.sequenceId!==O$()){e.delete(i);const n=i.apply(this,t);return e.set(i,{value:n,sequenceId:O$(),isObservable:T$(n)}),n}return n.value},n}}const N$={cancelUncompleted:!0,insideZone:!1};function L$(t=N$){return(e,n,i)=>{!function(t,e){if(t.hasOwnProperty("prototype"))throw new Error("Cannot support static methods with @DataAction()");if(void 0===e)throw new Error("@DataAction() can only decorate a method implementation")}(e,i);const r=i.value,s=n.toString();return i.value=function(...e){const n=this;let i=null;const o=w$.getRepositoryByInstance(n),a=o.operations;let l=a[s];const c=o.stateMeta,u=k$(r);if(c$(l)){const e=function(t){var e,n,i;return null!==(i=null===(n=null===(e=(t+"").replace(/[/][/].*$/gm,"").replace(/\s+/g,"").replace(/[/][*][^/*]*[*][/]/g,"").split("){",1))||void 0===e?void 0:e[0])||void 0===n?void 0:n.replace(/^[^(]*[(]/,"").replace(/=[^,]+/g,"").split(",").filter(Boolean))&&void 0!==i?i:[]}(r),n=function(t){const{statePath:e,argumentsNames:n,methodName:i,argumentRegistry:r}=t;let s="";for(let o=0;o{var s;return l$(t.insideZone)?null===(s=_$.ngZone)||void 0===s||s.run(()=>{i=r.apply(n,e)}):i=r.apply(n,e),Dd(i)?wd(null).pipe(D(()=>i)):i};const h=w$.createAction(l,e,u),d=_$.store.dispatch(h);return Dd(i)?function(t,e){return hv([t,e]).pipe(D(t=>t.pop()))}(d,i):i},i}}function j$(t){return(e,n,i)=>{const r=t.trim();if(!r)throw new Error("Payload name should be initialized");(function(t,e){const n=t[e];return c$(k$(n))&&Object.defineProperties(n,{[b$]:{enumerable:!0,configurable:!0,value:new P$}}),k$(n)})(e,n).createPayloadType(r,n,i)}}function F$(){return t=>{const e=function(t){if(function(t){return!h$(t)}(t.hasOwnProperty(m$))){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,m$,{value:e})}return function(t){var e;return null===(e=t)||void 0===e?void 0:e[m$]}(t)}(t);if(c$(e.name))throw new Error("@StateRepository should be add before decorator @State");!function(t,e){(function(t){var e;const n=null!==(e=v$(t))&&void 0!==e?e:null;return(c$(n)||(null==n?void 0:n.stateClass)!==t)&&function(t){Object.defineProperty(t,g$,{writable:!0,configurable:!0,enumerable:!0,value:{stateMeta:null,operations:{},stateClass:t}})}(t),v$(t)}(t)).stateMeta=e}(t,e),function(t,e,n){Object.defineProperties(t.prototype,{name:{enumerable:!0,configurable:!0,value:e.name},initialState:{enumerable:!0,configurable:!0,get:()=>d$(n)},context:I$(t)})}(t,e,E$(t)),function(t){var e,n;const i=v$(t),r=null!==(n=null===(e=null==i?void 0:i.stateMeta)||void 0===e?void 0:e.name)&&void 0!==n?n:null;if(u$(r)){const e=`__${r}__selector`;Object.defineProperties(t.prototype,{[e]:{writable:!0,enumerable:!1,configurable:!0},state$:{enumerable:!0,configurable:!0,get(){if(u$(this[e]))return this[e];if(c$(_$.store))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return this[e]=_$.store.select(t).pipe(D(t=>Nu()?p$(t):t),up({refCount:!0,bufferSize:1})),this[e]}}})}}(t)}}let B$=(()=>{class t{constructor(){this.browserStorageEvents$=new P,this.isInitialised=!1,this.isBootstrapped=!1,this._dirty=!0}get dirty(){return this._dirty}set dirty(t){this._dirty=t}ngxsOnChanges(t){var e;this.dirty&&this.isBootstrapped&&(this.dirty=!1,null===(e=this.ngxsDataDoCheck)||void 0===e||e.call(this))}ngxsOnInit(){this.isInitialised=!0}ngxsAfterBootstrap(){var t;this.isBootstrapped=!0,this.dirty&&(this.dirty=!1,null===(t=this.ngxsDataDoCheck)||void 0===t||t.call(this))}markAsDirtyAfterReset(){var t;this.dirty=!0,null===(t=this.ngxsDataAfterReset)||void 0===t||t.call(this)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),V$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})(),z$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})();const U$=new oi("ngx-google-analytics-settings",{factory:()=>({trackingCode:"",enableTracing:!1})}),H$=new oi("ngx-window",{providedIn:"root",factory:()=>function(t){return Lh(t)?window:null}(Oi(ou))}),$$=new oi("ngx-data-layer",{providedIn:"root",factory:()=>function(t){return t?t.dataLayer=t.dataLayer||[]:null}(Oi(H$))}),G$=new oi("ngx-gtag-fn",{providedIn:"root",factory:()=>function(t,e){return t?t.gtag=t.gtag||function(){e.push(arguments)}:null}(Oi(H$),Oi($$))});let W$=(()=>{class t{constructor(t,e,n){this.settings=t,this._document=e,this._gtag=n}get document(){return this._document}throw(t){(this.settings.enableTracing||Nu())&&console&&console.error&&console.error(t)}toKeyValue(t){return t.size>0?Array.from(t).reduce((t,[e,n])=>Object.defineProperty(t,e,{value:n,enumerable:!0}),{}):void 0}gtag(...t){try{this._gtag(...t.filter(t=>void 0!==t))}catch(e){this.throw(e)}}event(t,e,n,i,r){try{const s=new Map;e&&s.set("event_category",e),n&&s.set("event_label",n),i&&s.set("value",i),void 0!==r&&s.set("interaction",r);const o=this.toKeyValue(s);o?this.gtag("event",t,o):this.gtag("event",t)}catch(s){this.throw(s)}}pageView(t,e,n,i){try{const r=new Map([["page_path",t]]);e&&r.set("page_title",e),(n||this.document)&&r.set("page_location",n||this.document.location.href),i&&Object.entries(i).map(([t,e])=>r.set(t,e)),this.gtag("config",this.settings.trackingCode,this.toKeyValue(r))}catch(r){this.throw(r)}}appView(t,e,n,i,r){try{const s=new Map([["screen_name",t],["app_name",e]]);n&&s.set("app_id",n),i&&s.set("app_version",i),r&&s.set("app_installer_id",r),this.gtag("event","screen_view",this.toKeyValue(s))}catch(s){this.throw(s)}}set(...t){try{this._gtag("set",...t)}catch(e){this.throw(e)}}exception(t,e){try{const n=new Map;t&&n.set("description",t),e&&n.set("fatal",e),this.toKeyValue(n)?this.gtag("event","exception",this.toKeyValue(n)):this.gtag("event","exception")}catch(n){this.throw(n)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(U$),Ci(Yu),Ci(G$))},t.\u0275prov=xt({factory:function(){return new t(Ci(U$),Ci(Yu),Ci(G$))},token:t,providedIn:"root"}),t})();const q$={provide:tu,multi:!0,useFactory:function(t,e,n){return()=>lw(this,void 0,void 0,function*(){var i;if(!t.trackingCode)return void(Nu()||console.error("Empty tracking code for Google Analytics. Make sure to provide one when initializing NgxGoogleAnalyticsModule."));if(!e)return void(Nu()||console.error("Was not possible create or read gtag() fn. Make sure this module is running on a Browser w/ access to Window interface."));n||Nu()||console.error("Was not possible to access Document interface. Make sure this module is running on a Browser w/ access do Document interface."),t.uri=t.uri||`https://www.googletagmanager.com/gtag/js?id=${t.trackingCode}`,t.initCommands=null!==(i=null==t?void 0:t.initCommands)&&void 0!==i?i:[],t.initCommands.find(t=>"config"===t.command)||t.initCommands.unshift({command:"config",values:[t.trackingCode]}),t.initCommands.find(t=>"js"===t.command)||t.initCommands.unshift({command:"js",values:[new Date]});for(const n of t.initCommands)e(n.command,...n.values);const r=n.createElement("script");r.async=!0,r.src=t.uri,t.nonce&&r.setAttribute("nonce",t.nonce),n.getElementsByTagName("head")[0].appendChild(r)})},deps:[U$,G$,Yu]};new oi("ngx-google-analytics-routing-settings",{factory:()=>({})});let X$=(()=>{class t{static forRoot(e,n=[],i,r,s){return{ngModule:t,providers:[{provide:U$,useValue:{trackingCode:e,initCommands:n,uri:i,enableTracing:r,nonce:s}},q$]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[]]}),t})(),Y$=(()=>{class t{constructor(){this.consent="not-set",this.consentChange=new lp(1),this.consentChange.next(this.consent)}ngOnDestroy(){this.consentChange.complete()}setConsent(t){this.consent!==t&&(this.consent=t,this.consentChange.next(t))}unsetConsent(){this.setConsent("not-set")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),K$=(()=>{class t{constructor(t,e,{trackingCode:n}){this.window=e,this.subscriptions=new g,this.token=n,this.subscriptions.add(t.consentChange.subscribe(t=>this.toggleGoogleAnalytics("rescinded"===t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}toggleGoogleAnalytics(t){this.window&&(this.window[`ga-disable-${this.token}`]=t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(H$),Ci(U$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Q$=new oi("Key under which consent is stored",{providedIn:"root",factory:()=>"ALLOW_TELEMETRY"}),Z$=[Y$,K$,(()=>{class t{constructor(t,e){this.key=e,this.subscriptions=new g;try{this.storage=localStorage}catch(n){}t.setConsent(this.loadConsent()),this.subscriptions.add(t.consentChange.subscribe(t=>this.saveConsent(t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}loadConsent(){var t,e;const n=null===(e=null===(t=this.storage)||void 0===t?void 0:t.getItem)||void 0===e?void 0:e.call(t,this.key);if(null==n)return"not-set";const i=n.trim().toLowerCase();switch(i){case"given":case"rescinded":return i;default:return"not-set"}}saveConsent(t){var e,n;null===(n=null===(e=this.storage)||void 0===e?void 0:e.setItem)||void 0===n||n.call(e,this.key,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(Q$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})()];function J$(t){return Object.entries(t).reduce((t,[e,n])=>(null!=n&&(t[e]=`${n}`),t),{})}let tG=(()=>{class t{static forRoot(e){const{providers:n=[]}=X$.forRoot(e.gaToken,function(t){const{appName:e,projectName:n,developmentMode:i}=t;return[{command:"set",values:[J$({appName:e,projectName:n,developmentMode:i})]}]}(e));return{ngModule:t,providers:n}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[...Z$,{provide:tu,multi:!0,useFactory:()=>()=>{},deps:Z$}],imports:[[X$]]}),t})();function eG(t,e,n,i){n&&"function"!=typeof n&&(i=n);const r="function"==typeof n?n:void 0,s=new lp(t,e,i);return t=>rt(()=>s,r)(t)}const nG=(t,e)=>JSON.stringify(t)===JSON.stringify(e),iG=t=>t.map(t=>void 0!==t?JSON.parse(JSON.stringify(t)):t),rG={storageStrategy:class extends class{}{constructor(){super(...arguments),this.cachePairs=[]}add(t,e,n){this.cachePairs.push(t)}addMany(t){this.cachePairs=t}updateAtIndex(t,e){Object.assign(this.cachePairs[t],e)}update(t,e){Object.assign(this.cachePairs[t],e)}getAll(){return this.cachePairs}removeAtIndex(t){this.cachePairs.splice(t,1)}remove(t){this.cachePairs.splice(t,1)}removeAll(){this.cachePairs.length=0}},globalCacheKey:"CACHE_STORAGE",promiseImplementation:Promise},sG=new P;function oG(t={}){return function(e,n,i){const r=t.cacheKey||e.constructor.name+"#"+n,s=i.value;if(i&&i.value){let e=t.storageStrategy?new t.storageStrategy:new rG.storageStrategy;const n=[];t.cacheModifier&&t.cacheModifier.subscribe(t=>e.addMany(t(e.getAll(r,this)),r,this)),Q(sG.asObservable(),t.cacheBusterObserver?t.cacheBusterObserver:np()).subscribe(t=>{e.removeAll(r,this),n.length=0}),t.cacheResolver=t.cacheResolver||rG.cacheResolver||nG,t.cacheHasher=t.cacheHasher||rG.cacheHasher||iG,i.value=function(...i){const o=e.getAll(r,this);let a=t.cacheHasher(i),l=o.find(e=>t.cacheResolver(e.parameters,a));const c=n.find(e=>t.cacheResolver(e.parameters,a));if((t.maxAge||rG.maxAge)&&l&&l.created&&((new Date).getTime()-new Date(l.created).getTime()>(t.maxAge||rG.maxAge)?(e.remove?e.remove(o.indexOf(l),l,r,this):e.removeAtIndex(o.indexOf(l),r,this),l=null):(t.slidingExpiration||rG.slidingExpiration)&&(l.created=new Date,e.update?e.update(o.indexOf(l),l,r,this):e.updateAtIndex(o.indexOf(l),l,r,this))),l){const e=wd(l.response);return t.async?e.pipe(uU(0)):e}if(c)return c.response;{const l=s.call(this,...i).pipe(mv(()=>{const e=n.find(e=>t.cacheResolver(e.parameters,a));n.splice(n.indexOf(e),1)}),$f(n=>{(!t.shouldCacheDecider||t.shouldCacheDecider(n))&&((!(t.maxCacheCount||rG.maxCacheCount)||1===(t.maxCacheCount||rG.maxCacheCount)||(t.maxCacheCount||rG.maxCacheCount)&&(t.maxCacheCount||rG.maxCacheCount)this.isJsonMime(t));return void 0===e?t[0]:e}selectHeaderAccept(t){if(0===t.length)return;const e=t.find(t=>this.isJsonMime(t));return void 0===e?t[0]:e}isJsonMime(t){const e=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==t&&(e.test(t)||"application/json-patch+json"===t.toLowerCase())}lookupCredential(t){const e=this.credentials[t];return"function"==typeof e?e():e}}let uG=(()=>{class t{constructor(t,e,n){this.httpClient=t,this.basePath="/v1",this.defaultHeaders=new wv,this.configuration=new cG,n&&(this.configuration=n),"string"!=typeof this.configuration.basePath&&("string"!=typeof e&&(e=this.basePath),this.configuration.basePath=e),this.encoder=this.configuration.encoder||new aG}addToHttpParams(t,e,n){return this.addToHttpParamsRecursive(t,e,n)}addToHttpParamsRecursive(t,e,n){if(null==e)return t;if("object"==typeof e)if(Array.isArray(e))e.forEach(e=>t=this.addToHttpParamsRecursive(t,e,n));else if(e instanceof Date){if(null==n)throw Error("key may not be null if value is Date");t=t.append(n,e.toISOString().substr(0,10))}else Object.keys(e).forEach(i=>t=this.addToHttpParamsRecursive(t,e[i],null!=n?`${n}.${i}`:i));else{if(null==n)throw Error("key may not be null if value is not object or array");t=t.append(n,e)}return t}aggregateResults(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/aggregate-results`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}gtexRuiLocations(t,e="body",n=!1,i){const r=t.cache;let s=new Tv({encoder:this.encoder});null!=r&&(s=this.addToHttpParams(s,r,"cache"));let o=this.defaultHeaders,a=i&&i.httpHeaderAccept;void 0===a&&(a=this.configuration.selectHeaderAccept(["application/json"])),void 0!==a&&(o=o.set("Accept",a));let l=i&&i.context;void 0===l&&(l=new kv);let c="json";return a&&(c=a.startsWith("text")?"text":this.configuration.isJsonMime(a)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/gtex/rui_locations.jsonld`,{context:l,params:s,responseType:c,withCredentials:this.configuration.withCredentials,headers:o,observe:e,reportProgress:n})}hubmapRuiLocations(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/hubmap/rui_locations.jsonld`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}ontologyTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}ontologyTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}providerNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/provider-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}referenceOrganScene(t,e="body",n=!1,i){const r=t.organIri;if(null==r)throw new Error("Required parameter organIri was null or undefined when calling referenceOrganScene.");const s=t.age,o=t.ageRange,a=t.bmi,l=t.bmiRange,c=t.cache,u=t.ontologyTerms,h=t.cellTypeTerms,d=t.providers,p=t.sex,f=t.technologies,g=t.token;let m=new Tv({encoder:this.encoder});null!=s&&(m=this.addToHttpParams(m,s,"age")),null!=o&&(m=this.addToHttpParams(m,o,"age-range")),null!=a&&(m=this.addToHttpParams(m,a,"bmi")),null!=l&&(m=this.addToHttpParams(m,l,"bmi-range")),null!=c&&(m=this.addToHttpParams(m,c,"cache")),u&&u.forEach(t=>{m=this.addToHttpParams(m,t,"ontology-terms")}),h&&h.forEach(t=>{m=this.addToHttpParams(m,t,"cell-type-terms")}),null!=r&&(m=this.addToHttpParams(m,r,"organ-iri")),d&&d.forEach(t=>{m=this.addToHttpParams(m,t,"providers")}),null!=p&&(m=this.addToHttpParams(m,p,"sex")),f&&f.forEach(t=>{m=this.addToHttpParams(m,t,"technologies")}),null!=g&&(m=this.addToHttpParams(m,g,"token"));let b=this.defaultHeaders,y=i&&i.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(b=b.set("Accept",y));let v=i&&i.context;void 0===v&&(v=new kv);let _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organ-scene`,{context:v,params:m,responseType:_,withCredentials:this.configuration.withCredentials,headers:b,observe:e,reportProgress:n})}referenceOrgans(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organs`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}scene(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/scene`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}technologyNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/technology-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}tissueBlocks(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/tissue-blocks`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv),Ci(lG,8),Ci(cG,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Bv),Ci(lG,8),Ci(cG,8))},token:t,providedIn:"root"}),t})(),hG=(()=>{class t{constructor(t,e){if(t)throw new Error("CcfApiModule is already loaded. Import in your base AppModule only.");if(!e)throw new Error("You need to import the HttpClientModule in your AppModule! \nSee also https://github.com/angular/angular/issues/20575")}static forRoot(e){return{ngModule:t,providers:[{provide:cG,useFactory:e}]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(Bv,8))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[],imports:[[]]}),t})();function dG(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}let pG;function fG(){return pG||(pG=function(t,e){const n=function(){if(navigator.userAgentData||!/Safari\//.test(navigator.userAgent)||/Chrom(e|ium)\//.test(navigator.userAgent)||!indexedDB.databases)return Promise.resolve();let t;return new Promise(e=>{const n=()=>indexedDB.databases().finally(e);t=setInterval(n,100),n()}).finally(()=>clearInterval(t))}().then(()=>{const t=indexedDB.open("keyval-store");return t.onupgradeneeded=()=>t.result.createObjectStore(e),dG(t)});return(t,i)=>n.then(n=>i(n.transaction(e,t).objectStore(e)))}(0,"keyval")),pG}function gG(t,e=fG()){return e("readonly",e=>dG(e.get(t)))}var mG=n(71440),bG=n(70698),yG=n(7445),vG=n.n(yG),_G=n(23815),wG=n(31609);const xG=mG.Util.prefixes({ccf:"http://purl.org/ccf/latest/ccf.owl#",entity:"http://purl.org/ccf/latest/ccf-entity.owl#",fma:"http://purl.obolibrary.org/obo/FMA_",obo:"http://purl.obolibrary.org/obo/",uberon:"http://purl.obolibrary.org/obo/UBERON_",cl:"http://purl.obolibrary.org/obo/CL_",lmha:"http://purl.obolibrary.org/obo/LMHA_",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",dc:"http://purl.org/dc/elements/1.1/"},mG.DataFactory),SG={x:xG("rdf"),type:xG("rdf")("type")},EG={x:xG("rdfs"),label:xG("rdfs")("label"),comment:xG("rdfs")("comment"),isDefinedBy:xG("rdfs")("isDefinedBy"),seeAlso:xG("rdfs")("seeAlso")},CG={x:xG("entity"),id:xG("entity")("id"),label:EG.label,description:EG.comment,link:EG.seeAlso,sex:xG("entity")("sex"),age:xG("entity")("age"),bmi:xG("entity")("bmi"),Male:mG.DataFactory.literal("Male"),Female:mG.DataFactory.literal("Female"),consortiumName:xG("entity")("consortium_name"),providerName:xG("entity")("provider_name"),providerUUID:xG("entity")("provider_uuid"),donor:xG("entity")("has_donor"),sections:xG("entity")("has_tissue_section"),datasets:xG("entity")("has_dataset"),sampleType:xG("entity")("sample_type"),TissueBlock:mG.DataFactory.literal("Tissue Block"),TissueSection:mG.DataFactory.literal("Tissue Section"),NonStandard:mG.DataFactory.literal("Non-standard"),sectionCount:xG("entity")("section_count"),sectionSize:xG("entity")("section_size"),sectionUnits:xG("entity")("section_units"),sectionNumber:xG("entity")("section_number"),spatialEntity:xG("entity")("has_spatial_entity"),ontologyTerms:xG("entity")("has_ontology_term"),cellTypeTerms:xG("entity")("has_cell_type_term"),technology:xG("entity")("technology"),thumbnail:xG("entity")("has_thumbnail")},OG=xG("ccf"),TG={x:OG,ontologyNode:{label:OG("ccf_preferred_label"),parent:OG("ccf_part_of"),children:OG("ccf_part_of"),rui_rank:OG("ccf_rui_rank"),synonymLabels:mG.DataFactory.namedNode("http://www.geneontology.org/formats/oboInOwl#hasExactSynonym")},asctb:{part_of:OG("ccf_part_of"),ct_is_a:OG("ct_is_a"),located_in:OG("located_in"),characterizes:OG("characterizes")},spatial:{Female:OG("VHFemale"),Male:OG("VHMale"),BothSexes:OG("VHBothSexes"),FemaleOrgans:OG("VHFemaleOrgans"),MaleOrgans:OG("VHMaleOrgans")},SpatialObjectReference:OG("SpatialObjectReference"),SpatialEntity:OG("SpatialEntity"),SpatialPlacement:OG("SpatialPlacement"),spatialObjectReference:{file:OG("has_object_file"),file_format:OG("has_object_file_format"),file_subpath:OG("has_object_file_subpath")},extractionSet:{label:EG.label,rui_rank:OG("ccf_rui_rank")},spatialEntity:{label:EG.label,comment:EG.comment,creator:xG("dc")("creator"),creator_first_name:OG("creator_first_name"),creator_last_name:OG("creator_last_name"),creator_orcid:OG("creator_orcid"),creation_date:OG("creation_date"),updated_date:OG("updated_date"),ccf_annotations:OG("ccf_annotation"),representation_of:OG("ccf_representation_of"),reference_organ:OG("anatomical_structure_of"),extraction_set_for:OG("extraction_set_for"),extraction_set:OG("extraction_site_for"),sex:OG("has_sex"),side:OG("has_side"),rui_rank:OG("ccf_rui_rank"),slice_thickness:OG("ccf_slice_thickness"),slice_count:OG("ccf_slice_count"),x_dimension:OG("has_x_dimension"),y_dimension:OG("has_y_dimension"),z_dimension:OG("has_z_dimension"),dimension_units:OG("has_dimension_units"),object:OG("has_object_reference")},spatialPlacement:{source:OG("has_placement_source"),target:OG("has_placement_target"),placement_date:OG("has_placement_date"),x_scaling:OG("has_x_scaling"),y_scaling:OG("has_y_scaling"),z_scaling:OG("has_z_scaling"),scaling_units:OG("has_scaling_units"),x_rotation:OG("has_x_rotation"),y_rotation:OG("has_y_rotation"),z_rotation:OG("has_z_rotation"),w_rotation:OG("has_theta_rotation"),rotation_order:OG("has_rotation_order"),rotation_units:OG("has_rotation_units"),x_translation:OG("has_x_translation"),y_translation:OG("has_y_translation"),z_translation:OG("has_z_translation"),translation_units:OG("has_translation_units")}},kG={x:xG("uberon"),body:xG("uberon")("0013702")},AG={x:xG("cl"),cell:xG("cl")("0000000")},PG={x:xG("fma")},MG=(xG("lmha"),{body:kG.body,cell:AG.cell,respiratory_system:kG.x("0001004"),colon:kG.x("0001155"),left_lung:kG.x("0002168"),right_lung:kG.x("0002167"),left_bronchus:kG.x("0002178"),right_bronchus:kG.x("0002177"),kidney:kG.x("0002113"),ureter:kG.x("0000056"),eye:kG.x("0000970"),fallopian_tube:kG.x("0003889"),knee:kG.x("0001465"),ovary:kG.x("0000992"),trachea:kG.x("0003126"),aorta:kG.x("0000947"),blood:kG.x("0000178"),bone_marrow:kG.x("0002371"),male_reproductive_system:kG.x("0000079"),lymph_node:kG.x("0000029"),blood_vasculature:kG.x("0004537"),brain:kG.x("0000955"),eye_left:kG.x("0004548"),eye_right:PG.x("54449"),fallopian_tube_left:kG.x("0001303"),fallopian_tube_right:kG.x("0001302"),heart:kG.x("0000948"),kidney_left:kG.x("0004538"),kidney_right:kG.x("0004539"),knee_left:PG.x("24978"),knee_right:PG.x("24977"),large_intestine:kG.x("0000059"),liver:kG.x("0002107"),lungs:kG.x("0002048"),mesenteric_lymph_node:kG.x("0002509"),ovary_left:PG.x("7214"),ovary_right:PG.x("7213"),pancreas:kG.x("0001264"),pelvis:kG.x("0001270"),prostate_gland:kG.x("0002367"),skin:kG.x("0002097"),small_intestine:kG.x("0002108"),spleen:kG.x("0002106"),thymus:kG.x("0002370"),ureter_left:kG.x("0001223"),ureter_right:kG.x("0001222"),urinary_bladder:kG.x("0001255"),uterus:kG.x("0000995")});function IG(t){const e={};return Object.entries(t).forEach(([t,n])=>{e[n.id]=t}),e}const DG={spatialObjectReference:IG(TG.spatialObjectReference),spatialEntity:IG(TG.spatialEntity),spatialPlacement:IG(TG.spatialPlacement)};function RG(t,e,n,i){const r={"@id":e,"@type":n};return t.some(t=>{const e=i[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(r,e,n)}return!1},mG.DataFactory.namedNode(e),null,null,null),r}const NG=(0,_G.memoize)(function(t,e){return RG(t,e,"SpatialObjectReference",DG.spatialObjectReference)},(t,e)=>e),LG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"ExtractionSet",DG.spatialEntity);return n.extractionSites=(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set,e,null).map(e=>VG(t,e.id)),["rui_rank"]),n},(t,e)=>e),jG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set_for,e,null).map(e=>LG(t,e.id)),["rui_rank"])},(t,e)=>e),FG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.reference_organ,e,null).map(e=>VG(t,e.id)).filter(t=>t["@id"]!==e),["rui_rank"])},(t,e)=>e),BG=(0,_G.memoize)(function(t){const e=[];return t.forEach(n=>{n.subject.id===n.object.id&&e.push(VG(t,n.subject.id))},null,TG.spatialEntity.reference_organ,null,null),(0,_G.sortBy)(e,["rui_rank"])}),VG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialEntity",DG.spatialEntity);return n.object&&(n.object=NG(t,n.object)),n.ccf_annotations&&(n.ccf_annotations=t.getObjects(e,TG.spatialEntity.ccf_annotations,null).map(t=>t.id)),t.forSubjects(t=>n.entityId=t.id,CG.spatialEntity,e,null),n},(t,e)=>e),zG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialPlacement",DG.spatialPlacement);return n.source&&(n.source=VG(t,n.source)),n.target&&(n.target=VG(t,n.target)),n},(t,e)=>e),UG=(0,_G.memoize)(function(t,e){const n=t.getObjects(mG.DataFactory.namedNode(e),CG.spatialEntity,null);if(n.length>0)return VG(t,n[0].id)},(t,e)=>e);function HG(t,e){const n=e;let i;switch(n.translation_units){case"centimeter":i=.01;break;case"millimeter":i=.001;break;case"meter":default:i=1}const r=[n.x_translation,n.y_translation,n.z_translation].map(t=>t*i),s=[n.x_rotation,n.y_rotation,n.z_rotation].map(NS),o=[n.x_scaling,n.y_scaling,n.z_scaling];return t.translate(r).rotateXYZ(s).scale(o)}class $G{constructor(t){this.db=t,this.createGraph()}createGraph(){this.graph=new bG.DirectedGraph;const t=this.db.store;t.forSubjects(t=>{this.addNode(t.id,"SpatialObjectReference")},SG.type,TG.SpatialObjectReference,null),t.forSubjects(t=>{this.addNode(t.id,"SpatialEntity")},SG.type,TG.SpatialEntity,null);const e={};t.some(t=>(e[t.subject.id]=t.object.id,!1),null,TG.spatialPlacement.source,null,null),t.some(t=>{const n=e[t.subject.id];return n&&this.addEdge(t.subject.id,n,t.object.id,"SpatialPlacement"),!1},null,TG.spatialPlacement.target,null,null)}addNode(t,e){this.graph.mergeNode(t,{type:e})}addEdge(t,e,n,i){this.graph.mergeDirectedEdge(e,n,{type:i,id:t})}getTransformationMatrix(t,e){if(t===e)return new bT(bT.IDENTITY);if(!this.graph.hasNode(t)||!this.graph.hasNode(e))return;const n=this.db.store,i=new bT(bT.IDENTITY),r=vG()(this.graph,t,e);if(r&&r.length>0){r.reverse();let t="";for(const e of r){if(t){const r=this.graph.getEdgeAttribute(e,t,"id");HG(i,zG(n,r))}t=e}return i}}}class GG{constructor(t){this.db=t}getSpatialEntity(t){return VG(this.db.store,t)}getExtractionSets(t){return jG(this.db.store,t)}getExtractionSet(t){return LG(this.db.store,t)}getAnatomicalStructures(t){return FG(this.db.store,t)}getReferenceOrgans(){return BG(this.db.store)}getReferenceBody(t){let e;switch(null==t?void 0:t.sex){case"Male":e=TG.spatial.Male.id;break;case"Female":e=TG.spatial.Female.id;break;case"Both":default:e=TG.spatial.BothSexes.id}return this.getSpatialEntity(e)}getReferenceOrganSets(t){let e=this.getReferenceOrgans();switch(null==t?void 0:t.sex){case"Male":e=e.filter(t=>"Male"===t.sex);break;case"Female":e=e.filter(t=>"Female"===t.sex)}return(null==t?void 0:t.debug)&&(e=e.map(t=>[[t],this.getAnatomicalStructures(t["@id"])]).reduce((t,[e,n])=>t.concat(n.length>0?n:e),[])),e}getReferenceSceneNodes(t){const e=this.getReferenceBody(t),n=[];let i=[...this.getReferenceOrganSets(t).map(t=>{const i="http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of,r=this.getSceneNode(t,e,{color:[255,255,255,255],opacity:i?.5:.2,unpickable:!0,_lighting:"pbr",zoomBasedOpacity:!i});return i&&r?void n.push(r):r})];return n.length>0&&(i=[...n,...i]),(null==t?void 0:t.debug)&&(i=i.concat([this.getSceneNode(this.getSpatialEntity(TG.x("VHRightKidney").id),e,{color:[0,0,255,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHLeftKidney").id),e,{color:[255,0,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC1").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC2").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC3").id),e,{color:[0,255,0,127.5],wireframe:!0})])),i.filter(t=>void 0!==t)}getReferenceOrganScene(t,e){var n,i;const r=null!==(n=void 0!==(null==e?void 0:e.sex))&&void 0!==n&&n,s=this.getReferenceOrgans().filter(n=>n.representation_of===t&&(!r||n.sex===(null==e?void 0:e.sex)));if(s.length>0){const t=s[0],n=this.getSceneNode(t,t,{color:[255,255,255,255],opacity:"http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of?.5:.2,unpickable:!0,_lighting:"pbr"}),r=(null!==(i=this.db.getSpatialEntities(e))&&void 0!==i?i:[]).map(e=>this.getSceneNode(e,t,{color:[255,255,255,229.5]}));return[n].concat(r).filter(t=>void 0!==t)}return[]}getEntitySceneNodes(t){const e=this.getReferenceBody(t);return this.db.getSpatialEntities(t).map(t=>this.getSceneNode(t,e,{color:[255,255,255,229.5]})).filter(t=>void 0!==t)}getSceneNode(t,e,n={}){var i,r,s,o;const a=null===(r=null===(i=null==t?void 0:t.object)||void 0===i?void 0:i.file_format)||void 0===r?void 0:r.startsWith("model/gltf");let l=this.db.graph.getTransformationMatrix(a&&t.object?t.object["@id"]:t["@id"],e["@id"]);if(l){if(a)l=new bT(bT.IDENTITY).rotateX(NS(90)).multiplyLeft(l);else{let e;switch(t.dimension_units){case"centimeter":e=.01;break;case"millimeter":e=.001;break;case"meter":default:e=1}const n=[t.x_dimension,t.y_dimension,t.z_dimension].map(t=>t*e/2);l.scale(n)}return Object.assign({"@id":t["@id"],"@type":"SpatialSceneNode",entityId:t.entityId,ccf_annotations:t.ccf_annotations,representation_of:t.representation_of,reference_organ:t.reference_organ,scenegraph:a?null===(s=t.object)||void 0===s?void 0:s.file:void 0,scenegraphNode:a?null===(o=t.object)||void 0===o?void 0:o.file_subpath:void 0,transformMatrix:l,tooltip:t.label},n)}}getScene(t){return[...this.getReferenceSceneNodes(t),...this.getEntitySceneNodes(t)]}}const WG="https://entity.api.hubmapconsortium.org/entities/",qG=new Set(["VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0009-LK-102-7-AF_preIMS_registered_thumbnail.jpg","VAN0009-LK-102-7-IMS_NegMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-IMS_PosMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-PAS_registered_thumbnail.jpg","VAN0010-LK-155-40-AF_preIMS_registered_thumbnail.jpg","VAN0010-LK-155-40-IMS_NegMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-IMS_PosMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-PAS_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg","VAN0013-LK-202-96-AF_preIMS_registered_thumbnail.jpg","VAN0013-LK-202-96-IMS_NegMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-IMS_PosMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-PAS_registered_thumbnail.jpg","VAN0013-LK-202-97-AF_preMxIF_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc1_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc2_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc3_registered_thumbnail.jpg","VAN0014-LK-203-108-AF_preIMS_registered_thumbnail.jpg","VAN0014-LK-203-108-IMS_NegMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-IMS_PosMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-PAS_registered_thumbnail.jpg","VAN0016-LK-202-89-AF_preIMS_registered_thumbnail.jpg","VAN0016-LK-202-89-IMS_NegMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-IMS_PosMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-PAS_registered_thumbnail.jpg","VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg"]),XG={"HBM558.SRZG.629":"HBM558.SRZG.629_UFL0002-SP-3-4-1.jpg","HBM562.NTMH.548":"HBM562.NTMH.548_UFL0006-SP-1-2-1.jpg","HBM685.KHRQ.684":"HBM685.KHRQ.684_UFL0008-LY07-1-1.jpg","HBM278.SFQW.627":"HBM278.SFQW.627_UFL0008-LY09-1-1.jpg","HBM427.SMGB.866":"HBM427.SMGB.866_UFL0004-SP-1-4-1.jpg","HBM432.LLCF.677":"HBM432.LLCF.677_UFL0001-SP-2-5-1.jpg","HBM586.ZSVS.996":"HBM586.ZSVS.996_UFL0008-SP-1-1-1.jpg","HBM285.XMBT.542":"HBM285.XMBT.542_UFL0006-TH-1-3-1.jpg","HBM289.BWJW.663":"HBM289.BWJW.663_UFL0006-TH-1-2-1.jpg","HBM255.SRPR.985":"HBM255.SRPR.985_UFL0005-TH-2-2-1.jpg","HBM799.WXHD.535":"HBM799.WXHD.535_UFL0009-LY02-1-1.jpg","HBM294.RZFN.624":"HBM294.RZFN.624_UFL0005-TH-1-1-1.jpg","HBM383.TRQG.424":"HBM383.TRQG.424_UFL0006-SP-1-3-1.jpg","HBM647.MFQB.496":"HBM647.MFQB.496_UFL0001-SP-1-2-1.jpg","HBM237.GGPR.739":"HBM237.GGPR.739_UFL0006-LY01-1-1.jpg","HBM288.TPBD.654":"HBM288.TPBD.654_UFL0003-SP-2-2-1.jpg","HBM974.NDXT.675":"HBM974.NDXT.675_UFL0008-TH-2-2-1.jpg","HBM589.SLVV.423":"HBM589.SLVV.423_UFL0008-LY10-1-1.jpg","HBM794.RLFN.358":"HBM794.RLFN.358_UFL0006-LY03-1-1.jpg","HBM372.BQSR.778":"HBM372.BQSR.778_UFL0007-SP-1-1-1.jpg","HBM499.TKDW.458":"HBM499.TKDW.458_UFL0009-LY03-1-1.jpg","HBM342.PRQB.739":"HBM342.PRQB.739_UFL0003-LY06-1-1.jpg","HBM633.CLVN.674":"HBM633.CLVN.674_UFL0003-SP-3-6-1.jpg","HBM343.JQKM.578":"HBM343.JQKM.578_UFL0009-LY01-1-1.jpg","HBM987.XGTH.368":"HBM987.XGTH.368_UFL0002-SP-2-4-1.jpg","HBM964.CWCP.788":"HBM964.CWCP.788_UFL0006-LY02-2-1.jpg","HBM244.TJLK.223":"HBM244.TJLK.223_UFL0003-SP-1-4-1.jpg","HBM646.FSBQ.966":"HBM646.FSBQ.966_UFL0007-SP-2-2-1.jpg","HBM572.GXSB.234":"HBM572.GXSB.234_UFL0003-SP-3-2-1.jpg","HBM772.TKGJ.794":"HBM772.TKGJ.794_UFL0008-SP-2-1-1.jpg","HBM239.CBWR.263":"HBM239.CBWR.263_UFL0008-SP-1-2-1.jpg","HBM992.NRTT.383":"HBM992.NRTT.383_UFL0006-SP-1-1-1.jpg","HBM283.DQXD.546":"HBM283.DQXD.546_UFL0003-SP-1-2-1.jpg","HBM795.JHND.856":"HBM795.JHND.856_UFL0007-SP-1-2-1.jpg","HBM267.BZKT.867":"HBM267.BZKT.867_UFL0003-SP-2-6-1.jpg","HBM838.DLMJ.782":"HBM838.DLMJ.782_UFL0008-TH-1-1-1.jpg","HBM337.FSXL.564":"HBM337.FSXL.564_UFL0001-SP-3-8-2.jpg","HBM355.JDLK.244":"HBM355.JDLK.244_UFL0004-SP-2-4-1.jpg","HBM599.PSZG.737":"HBM599.PSZG.737_UFL0006-LY02-1-1.jpg"},YG={"03b3d854-ed44-11e8-8bce-0e368f3075e8":"TMC-UCSD","07a29e4c-ed43-11e8-b56a-0e8017bdda58":"TMC-Florida","308f5ffc-ed43-11e8-b56a-0e8017bdda58":"TMC-CalTech","5bd084c8-edc2-11e8-802f-0e368f3075e8":"HBM-TestingGroup","73bb26e4-ed43-11e8-8f19-0a7c1eab007a":"TMC-Vanderbilt","def5fd76-ed43-11e8-b56a-0e8017bdda58":"TMC-Stanford","5c106f29-ea2d-11e9-85e8-0efb3ba9a670":"RTI-General Electric"},KG=function(){const t={};return Object.entries(MG).forEach(([e,n])=>t[e]=n.id),t}(),QG={AO:[KG.body,KG.heart,KG.aorta],BL:[KG.body,KG.urinary_bladder],BD:[KG.body,KG.pelvis,KG.blood],BM:[KG.body,KG.pelvis,KG.bone_marrow],BR:[KG.body,KG.brain],LB:[KG.body,KG.respiratory_system,KG.lungs,KG.left_bronchus],RB:[KG.body,KG.respiratory_system,KG.lungs,KG.right_bronchus],LE:[KG.body,KG.eye,KG.eye_left],RE:[KG.body,KG.eye,KG.eye_right],LF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_left],RF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_right],HT:[KG.body,KG.heart],LK:[KG.body,KG.kidney,KG.kidney_left],RK:[KG.body,KG.kidney,KG.kidney_right],LI:[KG.body,KG.large_intestine,KG.colon],LV:[KG.body,KG.liver],LL:[KG.body,KG.respiratory_system,KG.lungs,KG.left_lung],LN:[KG.body,KG.knee,KG.knee_left],RL:[KG.body,KG.respiratory_system,KG.lungs,KG.right_lung],RN:[KG.body,KG.knee,KG.knee_right],LY:[KG.body,KG.lymph_node,KG.mesenteric_lymph_node],LO:[KG.body,KG.ovary,KG.ovary_left],RO:[KG.body,KG.ovary,KG.ovary_right],PA:[KG.body,KG.pancreas],PL:[KG.body],SI:[KG.body,KG.small_intestine],SK:[KG.body,KG.skin],SP:[KG.body,KG.spleen],ST:[KG.body],TH:[KG.body,KG.thymus],TR:[KG.body,KG.respiratory_system,KG.lungs,KG.trachea],UR:[KG.body,KG.ureter],UT:[KG.body,KG.uterus],OT:[KG.body]},ZG={"@base":"http://purl.org/ccf/latest/ccf-entity.owl#","@vocab":"http://purl.org/ccf/latest/ccf-entity.owl#",ccf:"http://purl.org/ccf/latest/ccf.owl#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",label:"rdfs:label",description:"rdfs:comment",link:{"@id":"rdfs:seeAlso","@type":"@id"},samples:{"@reverse":"has_donor"},sections:{"@id":"has_tissue_section","@type":"@id"},datasets:{"@id":"has_dataset","@type":"@id"},rui_location:{"@id":"has_spatial_entity","@type":"@id"},ontologyTerms:{"@id":"has_ontology_term","@type":"@id"},cellTypeTerms:{"@id":"has_cell_type_term","@type":"@id"},thumbnail:{"@id":"has_thumbnail"}};class JG{constructor(t,e="",n="",i){var r,s;if(this.data=t,this.bad=!1,this["@type"]="Sample",this.sample_type="Tissue Block","Sample"!==this.data.entity_type)return void(this.bad=!0);const o=this.data.descendants||[],a=(this.data.ancestors||[]).find(t=>"Donor"===t.entity_type);this.donor=this.getDonor(a,n);const l=this.getRuiLocation(t,this.donor);l?this.rui_location=l:this.bad=!0,YG[t.group_uuid]||(YG[t.group_uuid]=t.group_name);const c=new Date(t.last_modified_timestamp).toLocaleDateString(),u=YG[t.group_uuid]||t.group_name,h=t.created_by_user_displayname;this["@id"]=WG+t.uuid,this.label=`Registered ${c}, ${h}, ${u}`,this.link=`${n}browse/sample/${t.uuid}`;const d={},p=[];this.sections=p;const f=[];this.datasets=f;for(const v of o.filter(t=>"Sample"===t.entity_type)){const e=this.getSection(v,t,n);d[v.submission_id]=e,p.push(e),e.section_number=null!==(r=e.section_number)&&void 0!==r?r:p.length}for(const v of o)if("Dataset"===v.entity_type){const t=this.getDataset(v,e,n,i),r=(0,_G.get)(v,["ingest_metadata","metadata","tissue_id"]);d[r]?null===(s=d[r].datasets)||void 0===s||s.push(t):f.push(t)}const g=null!=l?l:{},m=`${g.x_dimension} x ${g.y_dimension} x ${g.z_dimension} ${g.dimension_units}`;this.section_count=g.slice_count||p.length;const b=parseFloat((g.slice_thickness||(g.z_dimension||0)/Math.max(this.section_count,1)).toFixed(1));this.section_size=b;const y=g.dimension_units||"millimeter";this.section_units=y,this.description=`${m}, ${b} ${y}, ${t.specimen_type}, ${this.section_count} Sections`,p.forEach((t,e)=>{t.description=`${g.x_dimension} x ${g.y_dimension} x ${b} ${y}, ${b} ${y}, ${t.description}`,t.section_number=e+1})}getSection(t,e,n){const i=new Date(t.last_modified_timestamp).toLocaleDateString();return{"@id":WG+t.uuid,"@type":"Sample",label:`Registered ${i}, ${t.created_by_user_displayname}, ${YG[t.group_uuid]||t.group_name}`,description:`${e.specimen_type}`,link:`${n}browse/sample/${t.uuid}`,sample_type:"Tissue Section",section_number:1,samples:[],datasets:[]}}getDataset(t,e="",n="",i){var r;const s=new Date(t.last_modified_timestamp).toLocaleDateString(),o=YG[t.group_uuid]||t.group_name,a=t.created_by_user_displayname,l=[...t.data_types,(0,_G.get)(t,["ingest_metadata","metadata","assay_type"],"")],c=l.join("|").toLowerCase();let u,h="assets/icons/ico-unknown.svg";return-1!==c.indexOf("10x")?(u="10x",h="assets/icons/ico-bulk-10x.svg"):-1!==c.indexOf("af")?(u="AF",h="assets/icons/ico-spatial-af.svg"):-1!==c.indexOf("codex")?(u="CODEX",h="assets/icons/ico-spatial-codex.svg"):-1!==c.indexOf("imc")?(u="IMC",h="assets/icons/ico-spatial-imc.svg"):-1!==c.indexOf("lc")&&-1===c.indexOf("af")?(u="LC",h="assets/icons/ico-bulk-lc.svg"):u=-1!==c.indexOf("maldi")?"MALDI":-1!==c.indexOf("pas")?"PAS":"OTHER",h=null!==(r=this.getDatasetThumbnail(t,e,i))&&void 0!==r?r:h,{"@id":WG+t.uuid,"@type":"Dataset",label:`Registered ${s}, ${a}, ${o}`,description:`Data/Assay Types: ${l.join(", ")}`,link:`${n}browse/dataset/${t.uuid}`,technology:u,thumbnail:h}}getDatasetThumbnail(t,e,n){if(t.thumbnail_file){const i=t.thumbnail_file;return`${e}/${i.file_uuid}/${i.filename}`+(n?`?token=${n}`:"")}if("73bb26e4-ed43-11e8-8f19-0a7c1eab007a"===t.group_uuid){const i=(0,_G.get)(t,"metadata.files",[]).filter(t=>/\.(ome\.tif|ome\.tiff)$/.test(t.rel_path)).filter(t=>!/(multilayer\.ome\.tif|_ac\.ome\.tif)/.test(t.rel_path)).filter(t=>qG.has(t.rel_path.split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg"))).map(i=>`${e}/${t.uuid}/${i.rel_path}`+(n?`?token=${n}`:""));if(i.length>0){const t=i[0].split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg");if(qG.has(t))return`assets/thumbnails/TMC-Vanderbilt/DR1/${t}`}}else if("07a29e4c-ed43-11e8-b56a-0e8017bdda58"===t.group_uuid){const e=XG[t.hubmap_id];if(e)return`assets/thumbnails/TMC-Florida/${e}`}}getDonor(t,e){const n=(t.description||"").toLowerCase();let i;n.includes("female")?i="Female":n.includes("male")&&(i="Male");const r=n.match(/age ([0-9]+)/);let s,o;r&&(s=(0,_G.toNumber)(r[1]));for(const u of(0,_G.get)(t,"metadata.organ_donor_data",[]))"Feminine gender"===u.preferred_term||"Female"===u.preferred_term?i="Female":"Masculine gender"===u.preferred_term||"Male"===u.preferred_term?i="Male":"Current chronological age"===u.preferred_term||"Age"===u.preferred_term?s=(0,_G.toNumber)(u.data_value):"Body mass index"===u.preferred_term&&(o=(0,_G.toNumber)(u.data_value));let a="";i&&s&&(a+=`${i}, Age ${s}`,o&&(a+=`, BMI ${o.toFixed(1)}`));const l=new Date(t.last_modified_timestamp).toLocaleDateString(),c=YG[t.group_uuid]||t.group_name;return{"@id":WG+t.uuid,"@type":"Donor",label:a,description:`Entered ${l}, ${t.created_by_user_displayname}, ${c}`,link:`${e}browse/donor/${t.uuid}`,age:s,sex:i,bmi:o,consortium_name:"HuBMAP",provider_name:c,provider_uuid:t.group_uuid,samples:[]}}getRuiLocation(t,e){var n;const i=(t.ancestors||[]).find(t=>"Sample"===t.entity_type&&"organ"===t.specimen_type),r=QG[null==i?void 0:i.organ]||[KG.body];let s,o=t.rui_location;if(o&&("string"==typeof o&&(o=JSON.parse(o)),o.alignment_id?console.log("Detected a deprecated rui_location",t.uuid):o["@id"]&&(s=o)),s){s.ccf_annotations=r.concat(s.ccf_annotations||[]);const t=null!==(n=(0,_G.get)(s,["placement","target"]))&&void 0!==n?n:"";t.startsWith("http://purl.org/ccf/latest/ccf.owl#VHSpleenCC")&&(0,_G.set)(s,["placement","target"],t.replace("#VHSpleenCC","Male"===e.sex?"#VHMSpleenCC":"#VHFSpleenCC")),("http://purl.org/ccf/latest/ccf.owl#VHLeftKidney"===t||"http://purl.org/ccf/latest/ccf.owl#VHRightKidney"===t)&&(0,_G.set)(s,["placement","target"],"Male"===e.sex?t.replace("#VH","#VHM")+"_Patch":t.replace("#VH","#VHF")+"_Patch")}return s}getTissueBlock(){return(0,_G.omit)(Object.assign({},this),["data","bad","donor"])}toJsonLd(){return Object.assign(Object.assign({},this.donor),{samples:[this.getTissueBlock()]})}}const tW=["uuid","entity_type","group_uuid","group_name","last_modified_timestamp","created_by_user_displayname","ancestors","descendants","rui_location","specimen_type"],eW={exists:{field:"rui_location"}};function nW(t,e,n){return JSON.stringify({version:!0,from:t,size:e,stored_fields:["*"],script_fields:{},docvalue_fields:[],query:null!=n?n:eW,_source:{includes:tW}})}function iW(t,e){return lw(this,void 0,void 0,function*(){try{const n=yield fetch(t,e);return n.ok?yield n.json():void 0}catch(n){return}})}function rW(t,e,n,i,r="",s=""){return lw(this,void 0,void 0,function*(){let o;if("static"===e?o=yield iW(t):"search-api"===e&&(o=yield function(t,e,n){return lw(this,void 0,void 0,function*(){const i=function(t){const e=new Headers;return e.append("Content-type","application/json"),t&&e.append("Authorization",`Bearer ${t}`),e}(e),r=nW(0,50,n),s=yield iW(t,{method:"POST",headers:i,body:r});if(!s)return;const o=s.hits.total.value;if(o<=50)return s;const a=[];for(let e=50;e!t))return;const c=l.map(t=>t.hits.hits);return Object.assign(Object.assign({},s),{hits:Object.assign(Object.assign({},s.hits),{hits:s.hits.hits.concat(...c)})})})}(t,i,n)),o)return function(t,e="",n="",i,r=!1){const s={},o=(0,_G.get)(t,"hits.hits",[]).map(t=>(0,_G.get)(t,"_source",{})).map(t=>new JG(t,e,n,i).toJsonLd());for(const l of o){const t=l["@id"];s[t]?s[t].samples.push(l.samples[0]):s[t]=l}const a=Object.values(s);return r&&(function(t){let e=[],n=0;for(const i of t.filter(t=>t.samples.length>1)){const t=i.samples;for(let i=0;it["@id"]===r)&&(t[i].deleteMe=!0,n++)}i.samples=t.filter(t=>!0!==t.deleteMe)}n>0&&console.log(`\u26a0 ${n} sections identified as blocks`)}(a),console.log(a.map(t=>Object.assign({"@context":ZG},t)))),{"@context":ZG,"@graph":a}}(o,r,s,i);console.warn(`Unable to load ${t} as HuBMAP Data`)})}function sW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.donor,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function oW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.spatialEntity,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function aW(t,e){return n=>t.has(n.id)?e.add(n.id):void 0}function lW(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.namedNode(r);t.forSubjects(aW(e,i),TG.spatialEntity.ccf_annotations,n,null)}return i}function cW(t,e){const n=function(t,e){const n=new Map;return e.some(e=>(t.has(e.subject.id)&&(n.has(e.object.id)?n.get(e.object.id).add(e.subject.id):n.set(e.object.id,new Set([e.subject.id]))),!1),null,CG.spatialEntity,null,null),n}(t,e),i=new Map;return e.some(t=>{if(n.has(t.subject.id)){const e=n.get(t.subject.id);if(i.has(t.object.id)){const n=i.get(t.object.id);e.forEach(t=>n.add(t))}else i.set(t.object.id,new Set(e))}return!1},null,TG.spatialEntity.ccf_annotations,null,null),i}function uW(t,e,n){const i=mG.DataFactory.namedNode(e),r={"@id":e,"@type":"OntologyTreeNode",id:e,parent:"",children:[],synonymLabels:[],label:""},s={[TG.ontologyNode.label.id]:"label",[n]:"parent",[TG.ontologyNode.synonymLabels.id]:"synonymLabels"};return t.some(t=>{const e=s[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;"synonymLabels"===e?r.synonymLabels.push(n):(0,_G.set)(r,e,n)}return!1},i,null,null,null),r.children=t.getSubjects(n,i,null).map(t=>t.id),r}const hW=(0,_G.memoize)(function(t,e,n,i){const r={root:e,nodes:{}},s=new Set;t.some(t=>(s.add(t.subject.id),s.add(t.predicate.id),!1),null,i,null,null);for(const o of s)r.nodes[o]=uW(t,o,i);if(!r.nodes[e]){const s=t.getSubjects(i,e,null).map(t=>t.id).sort((t,e)=>r.nodes[t].label.localeCompare(r.nodes[e].label));r.nodes[e]={"@id":e,"@type":"OntologyTreeNode",id:e,label:n,children:s,synonymLabels:[]}}return r},(t,e,n)=>e+n),dW={[CG.label.id]:"label",[CG.description.id]:"description",[CG.link.id]:"link"},pW=Object.assign(Object.assign({},dW),{[CG.providerName.id]:"providerName"}),fW=Object.assign(Object.assign({},dW),{[CG.technology.id]:"technology",[CG.thumbnail.id]:"thumbnail"}),gW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionNumber.id]:"sectionNumber",[CG.datasets.id]:"datasets"}),mW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionCount.id]:"sectionCount",[CG.sectionSize.id]:"sectionSize",[CG.sectionUnits.id]:"sectionUnits",[CG.donor.id]:"donor",[CG.spatialEntity.id]:"spatialEntityId",[CG.sections.id]:"sections",[CG.datasets.id]:"datasets"}),bW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Donor"};return t.some(t=>{const e=pW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e);function yW(t,e){const n={"@id":e,"@type":"Dataset"};return t.some(t=>{const e=fW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}const vW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Sample",sections:[],datasets:[]};return t.some(e=>{const i=mW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("sections"===i){const e=function(t,e){const n={"@id":e,"@type":"Sample",datasets:[]};return t.some(e=>{const i=gW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("datasets"===i){const e=yW(t,r);n[i].push(e)}else(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}(t,r);n[i].push(e)}else if("datasets"===i){const e=yW(t,r);n[i].push(e)}else"donor"===i?n[i]=bW(t,r):(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e),_W={ccfOwlUrl:"https://purl.org/ccf/latest/ccf.owl",ccfContextUrl:"https://purl.org/ccf/latest/ccf-context.jsonld",dataSources:[],hubmapDataService:"static",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"",hubmapAssetsUrl:"https://assets.hubmapconsortium.org"};class wW{constructor(t=_W){this.options=t,this.store=new mG.Store(void 0,{factory:mG.DataFactory}),this.graph=new $G(this),this.scene=new GG(this)}connect(t,e=!1){return lw(this,void 0,void 0,function*(){return t&&(this.options=t),this.initializing||(this.initializing=e?this.cachedConnect():this.doConnect()),yield this.initializing,this.store.size>0})}cachedConnect(){return lw(this,void 0,void 0,function*(){const t=(new Date).getTime(),e="ccf-database.last_modified",n="ccf-database",i=yield gG(e).catch(()=>{});let r;i&&t-new Date(+i).getTime()>36e5?yield function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.delete(t)),dG(e.transaction)))}([n,e]).catch(()=>{}):r=yield gG(n).catch(()=>{}),r?yield this.deserialize(r):(yield this.doConnect(),function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.put(t[1],t[0])),dG(e.transaction)))}([[n,this.serialize()],[e,""+t]]).catch(()=>{}))})}doConnect(){var t,e;return lw(this,void 0,void 0,function*(){const n=[],i=null!==(e=null===(t=this.options.dataSources)||void 0===t?void 0:t.concat())&&void 0!==e?e:[],r=this.options.ccfOwlUrl;if(r.startsWith("{"))this.store=(0,mG.deserializeN3Store)(r,mG.DataFactory);else if(r.endsWith(".n3store.json")){const t=yield fetch(r).then(t=>t.text()).catch(()=>console.log("Couldn't locate serialized store."));t&&(this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory))}else(null==r?void 0:r.length)>0&&i.push(r);this.options.hubmapDataUrl&&(this.options.hubmapDataUrl.endsWith("jsonld")?i.push(this.options.hubmapDataUrl):n.push(rW(this.options.hubmapDataUrl,this.options.hubmapDataService,this.options.hubmapQuery,this.options.hubmapToken,this.options.hubmapAssetsUrl,this.options.hubmapPortalUrl).then(t=>{if(t)return this.addDataSources([t])}))),n.push(this.addDataSources(i)),yield Promise.all(n),yield this.synchronize()})}addDataSources(t,e){return lw(this,void 0,void 0,function*(){const n=null!=e?e:this.store;return yield Promise.all(t.map(t=>lw(this,void 0,void 0,function*(){"string"==typeof t?t.endsWith("jsonld")?yield(0,mG.addJsonLdToStore)(t,n):t.endsWith("n3")?yield(0,mG.addN3ToStore)(t,n):t.endsWith("rdf")||t.endsWith("owl")||t.endsWith("xml")?yield(0,mG.addRdfXmlToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n)}))),this})}synchronize(){return lw(this,void 0,void 0,function*(){return yield new Promise(t=>{setTimeout(t,500)}),this.graph.createGraph(),this})}serialize(){return(0,mG.serializeN3Store)(this.store)}deserialize(t){return lw(this,void 0,void 0,function*(){this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory),this.graph=new $G(this),this.scene=new GG(this),yield new Promise(t=>{setTimeout(t,10)})})}getIds(t={}){return function(t,e){var n,i,r,s,o,a;let l=function(t){const e=new Set;return t.forSubjects(t=>e.add(t.id),CG.spatialEntity,null,null),e}(t);if(l.size>0&&(l=function(t,e,n=!0){const i=new Set;if(t.forSubjects(aW(e,i),CG.spatialEntity,null,null),!n){const t=new Set;return e.forEach(e=>i.has(e)?void 0:t.add(e)),t}return i}(t,l)),l.size>0&&("Male"===e.sex||"Female"===e.sex)){const n=e.sex;l=sW(t,l,e=>function(t,e,n){const i=new Set;return t.forSubjects(aW(e,i),CG.sex,CG[n],null),i}(t,e,n))}if(l.size>0&&(null===(n=e.tmc)||void 0===n?void 0:n.length)>0&&(l=sW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.providerName,n,null)}return i}(t,n,e.tmc))),l.size>0&&(null===(i=e.technologies)||void 0===i?void 0:i.length)>0&&(l=function(t,e,n){var i;const r=new Map,s=new Set,o=new Set;t.some(t=>(e.has(t.subject.id)&&o.add(t.object.id),!1),null,CG.sections,null,null),t.some(t=>{var n;return(e.has(t.subject.id)||o.has(t.subject.id))&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.datasets,null,null);const a=n(s),l=new Set;for(const c of a)for(const t of null!==(i=r.get(c))&&void 0!==i?i:[])l.add(t);return l}(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.technology,n,null)}return i}(t,n,e.technologies))),l.size>0&&(null===(r=e.ontologyTerms)||void 0===r?void 0:r.length)>0&&(l=oW(t,l,n=>lW(t,n,e.ontologyTerms))),l.size>0&&(null===(s=e.cellTypeTerms)||void 0===s?void 0:s.length)>0&&(l=oW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n)t.forObjects(t=>{i.add(t.id)},r,TG.asctb.located_in,null),r===MG.cell.id&&i.add(MG.body.id);return lW(t,e,[...i])}(t,n,e.cellTypeTerms))),l.size>0&&2===(null===(o=e.ageRange)||void 0===o?void 0:o.length)&&(0,_G.isFinite)(e.ageRange[0])&&(0,_G.isFinite)(e.ageRange[1])){const n=Math.max(...e.ageRange),i=Math.min(...e.ageRange);1===i&&110===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.age,null,null),r}(t,e,i,n)))}if(l.size>0&&2===(null===(a=e.bmiRange)||void 0===a?void 0:a.length)&&(0,_G.isFinite)(e.bmiRange[0])&&(0,_G.isFinite)(e.bmiRange[1])){const n=Math.max(...e.bmiRange),i=Math.min(...e.bmiRange);13===i&&83===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.bmi,null,null),r}(t,e,i,n)))}return l}(this.store,t)}get(t){return this.store.getQuads(mG.DataFactory.namedNode(t),null,null,null)}search(t={}){return[...this.getIds(t)].map(t=>this.get(t))}getSpatialEntities(t){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>UG(this.store,t))}getDatasetTechnologyNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.technology,null,null),Array.from(e).sort()}(this.store)})}getProviderNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.providerName,null,null),Array.from(e).sort()}(this.store)})}getTissueBlockResults(t){return lw(this,void 0,void 0,function*(){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>vW(this.store,t))})}getAggregateResults(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n=new Set;e.some(e=>(t.has(e.subject.id)&&n.add(e.object.id),!1),null,CG.donor,null,null);const i=new Set;e.some(t=>(n.has(t.subject.id)&&i.add(t.object.id),!1),null,CG.providerUUID,null,null);const r=new Set;e.forSubjects(e=>{t.has(e.id)&&r.add(e.id)},CG.spatialEntity,null,null);const s=new Set;e.some(t=>(r.has(t.subject.id)&&s.add(t.object.id),!1),null,CG.sections,null,null);const o=new Set;return e.some(t=>{const e=t.subject;return(r.has(e.id)||s.has(e.id))&&o.add(t.object.id),!1},null,CG.datasets,null,null),Object.entries({"Tissue Data Providers":i.size,Donors:n.size,"Tissue Blocks":r.size,"Tissue Sections":s.size,"Tissue Datasets":o.size}).map(([t,e])=>({label:t,count:e}))}(this.getIds(t),this.store)})}getOntologyTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n={};return cW(t,e).forEach((t,e)=>{n[e]=t.size}),n}(this.getIds(t),this.store)})}getCellTypeTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){var n,i;const r=cW(t,e),s=new Map;e.some(t=>{const e=t.object.id;if(r.has(e)){const n=t.subject.id,i=r.get(e);if(s.has(n)){const t=s.get(n);i.forEach(e=>t.add(e))}else s.set(n,new Set(i))}return!1},null,TG.asctb.located_in,null,null);const o={};return s.forEach((t,e)=>{o[e]=t.size}),o[MG.cell.id]=null!==(i=null===(n=r.get(MG.body.id))||void 0===n?void 0:n.size)&&void 0!==i?i:0,o}(this.getIds(t),this.store)})}getOntologyTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){const e=hW(t,MG.body.id,"body",TG.asctb.part_of.id);return e.nodes[MG.body.id].children=["http://purl.obolibrary.org/obo/UBERON_0000955","http://purl.obolibrary.org/obo/UBERON_0000029","http://purl.obolibrary.org/obo/UBERON_0000970","http://purl.obolibrary.org/obo/UBERON_0003889","http://purl.obolibrary.org/obo/UBERON_0000948","http://purl.obolibrary.org/obo/UBERON_0002113","http://purl.obolibrary.org/obo/UBERON_0001465","http://purl.obolibrary.org/obo/UBERON_0002107","http://purl.obolibrary.org/obo/UBERON_0002048","http://purl.obolibrary.org/obo/UBERON_0000992","http://purl.obolibrary.org/obo/UBERON_0001264","http://purl.obolibrary.org/obo/UBERON_0001270","http://purl.obolibrary.org/obo/UBERON_0002367","http://purl.obolibrary.org/obo/UBERON_0002097","http://purl.obolibrary.org/obo/UBERON_0002108","http://purl.obolibrary.org/obo/UBERON_0000059","http://purl.obolibrary.org/obo/UBERON_0002106","http://purl.obolibrary.org/obo/UBERON_0002370","http://purl.obolibrary.org/obo/UBERON_0000056","http://purl.obolibrary.org/obo/UBERON_0001255","http://purl.obolibrary.org/obo/UBERON_0000995","http://purl.obolibrary.org/obo/UBERON_0004537"].filter(t=>t in e.nodes),e}(this.store)})}getCellTypeTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){return hW(t,MG.cell.id,"cell",TG.asctb.ct_is_a.id)}(this.store)})}getReferenceOrgans(){return lw(this,void 0,void 0,function*(){return this.scene.getReferenceOrgans()})}getScene(t){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getScene(t)})}getReferenceOrganScene(t,e){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getReferenceOrganScene(t,e)})}}const xW=Symbol("Comlink.proxy"),SW=Symbol("Comlink.endpoint"),EW=Symbol("Comlink.releaseProxy"),CW=Symbol("Comlink.thrown"),OW=t=>"object"==typeof t&&null!==t||"function"==typeof t,TW=new Map([["proxy",{canHandle:t=>OW(t)&&t[xW],serialize(t){const{port1:e,port2:n}=new MessageChannel;return kW(t,e),[n,[n]]},deserialize:t=>(t.start(),PW(t))}],["throw",{canHandle:t=>OW(t)&&CW in t,serialize({value:t}){let e;return e=t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}}]]);function kW(t,e=self){e.addEventListener("message",function n(i){if(!i||!i.data)return;const{id:r,type:s,path:o}=Object.assign({path:[]},i.data),a=(i.data.argumentList||[]).map(jW);let l;try{const e=o.slice(0,-1).reduce((t,e)=>t[e],t),n=o.reduce((t,e)=>t[e],t);switch(s){case"GET":l=n;break;case"SET":e[o.slice(-1)[0]]=jW(i.data.value),l=!0;break;case"APPLY":l=n.apply(e,a);break;case"CONSTRUCT":l=function(t){return Object.assign(t,{[xW]:!0})}(new n(...a));break;case"ENDPOINT":{const{port1:e,port2:n}=new MessageChannel;kW(t,n),l=function(t,e){return NW.set(t,e),t}(e,[e])}break;case"RELEASE":l=void 0;break;default:return}}catch(c){l={value:c,[CW]:0}}Promise.resolve(l).catch(t=>({value:t,[CW]:0})).then(t=>{const[i,o]=LW(t);e.postMessage(Object.assign(Object.assign({},i),{id:r}),o),"RELEASE"===s&&(e.removeEventListener("message",n),AW(e))})}),e.start&&e.start()}function AW(t){(function(t){return"MessagePort"===t.constructor.name})(t)&&t.close()}function PW(t,e){return IW(t,[],e)}function MW(t){if(t)throw new Error("Proxy has been released and is not useable")}function IW(t,e=[],n=function(){}){let i=!1;const r=new Proxy(n,{get(n,s){if(MW(i),s===EW)return()=>FW(t,{type:"RELEASE",path:e.map(t=>t.toString())}).then(()=>{AW(t),i=!0});if("then"===s){if(0===e.length)return{then:()=>r};const n=FW(t,{type:"GET",path:e.map(t=>t.toString())}).then(jW);return n.then.bind(n)}return IW(t,[...e,s])},set(n,r,s){MW(i);const[o,a]=LW(s);return FW(t,{type:"SET",path:[...e,r].map(t=>t.toString()),value:o},a).then(jW)},apply(n,r,s){MW(i);const o=e[e.length-1];if(o===SW)return FW(t,{type:"ENDPOINT"}).then(jW);if("bind"===o)return IW(t,e.slice(0,-1));const[a,l]=RW(s);return FW(t,{type:"APPLY",path:e.map(t=>t.toString()),argumentList:a},l).then(jW)},construct(n,r){MW(i);const[s,o]=RW(r);return FW(t,{type:"CONSTRUCT",path:e.map(t=>t.toString()),argumentList:s},o).then(jW)}});return r}function DW(t){return Array.prototype.concat.apply([],t)}function RW(t){const e=t.map(LW);return[e.map(t=>t[0]),DW(e.map(t=>t[1]))]}const NW=new WeakMap;function LW(t){for(const[e,n]of TW)if(n.canHandle(t)){const[i,r]=n.serialize(t);return[{type:"HANDLER",name:e,value:i},r]}return[{type:"RAW",value:t},NW.get(t)||[]]}function jW(t){switch(t.type){case"HANDLER":return TW.get(t.name).deserialize(t.value);case"RAW":return t.value}}function FW(t,e,n){return new Promise(i=>{const r=new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-");t.addEventListener("message",function e(n){!n.data||!n.data.id||n.data.id!==r||(t.removeEventListener("message",e),i(n.data))}),t.start&&t.start(),t.postMessage(Object.assign({id:r},e),n)})}const BW=["bodyCanvas"];let VW=(()=>{class t{constructor(){this.clsName="ccf-body-ui",this.rotationChange=new Rc,this.nodeDrag=new Rc,this.nodeClick=new Rc,this.nodeHoverStart=new Rc,this.nodeHoverStop=new Rc,this.initialized=new Rc,this._interactive=!0,this._rotation=0,this._rotationX=0,this._zoom=9.5,this._target=[0,0,0],this._scene=[],this.subscriptions=[]}get scene(){return this._scene}set scene(t){var e;this._scene=t,null===(e=this.bodyUI)||void 0===e||e.setScene(t)}get rotation(){return this._rotation}set rotation(t){var e;this._rotation=t,null===(e=this.bodyUI)||void 0===e||e.setRotation(t)}get rotationX(){return this._rotationX}set rotationX(t){var e;this._rotationX=t,null===(e=this.bodyUI)||void 0===e||e.setRotationX(t)}get zoom(){return this._zoom}set zoom(t){var e;this._zoom=t,null===(e=this.bodyUI)||void 0===e||e.setZoom(t)}get target(){return this._target}set target(t){var e;this._target=t,null===(e=this.bodyUI)||void 0===e||e.setTarget(t)}get bounds(){return this._bounds}set bounds(t){this._bounds=t,this.zoomToBounds(t)}get camera(){return this._camera}set camera(t){this._camera=t}get interactive(){return this._interactive}set interactive(t){this._interactive=t,this.bodyUI&&this.recreateBodyUI()}ngAfterViewInit(){this.setupBodyUI()}zoomToBounds(t,e={x:48,y:48}){if(this.bodyCanvas){const{width:n,height:i}=this.bodyCanvas.nativeElement,r=window.devicePixelRatio,s=Math.min(Math.log2((n-e.x)/r/t.x),Math.log2((i-e.y)/r/t.y));this.zoom=s}}setupBodyUI(){var t;return lw(this,void 0,void 0,function*(){const e=this.bodyCanvas.nativeElement,n=new dB({id:"body-ui",canvas:e,zoom:this.zoom,target:[0,0,0],rotation:0,minRotationX:-75,maxRotationX:75,interactive:this.interactive,camera:this.camera});e.addEventListener("contextmenu",t=>t.preventDefault()),yield n.initialize(),this.bodyUI=n,window.bodyUI=n,(null===(t=this.scene)||void 0===t?void 0:t.length)>0&&this.bodyUI.setScene(this.scene),this.bounds&&this.zoomToBounds(this.bounds),this.subscriptions=[this.bodyUI.sceneRotation$.subscribe(t=>this.rotationChange.next(t)),this.bodyUI.nodeDrag$.subscribe(t=>this.nodeDrag.emit(t)),this.bodyUI.nodeClick$.subscribe(t=>this.nodeClick.emit(t)),this.bodyUI.nodeHoverStart$.subscribe(t=>this.nodeHoverStart.emit(t)),this.bodyUI.nodeHoverStop$.subscribe(t=>this.nodeHoverStop.emit(t))],this.initialized.emit()})}recreateBodyUI(){this.clearSubscriptions(),this.bodyUI.finalize(),this.setupBodyUI()}clearSubscriptions(){this.subscriptions.forEach(t=>t.unsubscribe()),this.subscriptions=[]}ngOnDestroy(){this.clearSubscriptions()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-body-ui"]],viewQuery:function(t,e){if(1&t&&qc(BW,5,kl),2&t){let t;Wc(t=Yc())&&(e.bodyCanvas=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{scene:"scene",rotation:"rotation",rotationX:"rotationX",zoom:"zoom",target:"target",bounds:"bounds",camera:"camera",interactive:"interactive"},outputs:{rotationChange:"rotationChange",nodeDrag:"nodeDrag",nodeClick:"nodeClick",nodeHoverStart:"nodeHoverStart",nodeHoverStop:"nodeHoverStop",initialized:"initialized"},decls:2,vars:0,consts:[[1,"body-ui"],["bodyCanvas",""]],template:function(t,e){1&t&&oa(0,"canvas",0,1)},styles:["[_nghost-%COMP%]{height:100%;display:block}[_nghost-%COMP%] .body-ui[_ngcontent-%COMP%]{position:relative!important;background-color:#000;border-radius:.5rem}"]}),t})(),zW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();new oi("Maximum number of autocomplete options displayed",{providedIn:"root",factory:()=>10});const UW=["carouselContainer"],HW=["itemlist"],$W=["itemcontainer"];function GW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",9),fa("touchstart",function(){return $e(t),va().scroll("left")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("left")})("mousedown",function(){return $e(t),va().scroll("left")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_left"),sa()}2&t&&ja("disabled",va().onLeft)}function WW(t,e){if(1&t&&(ra(0,"div",15),Za(1),sa()),2&t){const t=va().$implicit,e=va();ws(1),Ja(e.occurenceData[t.id]||0)}}function qW(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("click",function(){const e=$e(t).$implicit;return va().selectOrgan(e)}),oa(1,"mat-icon",11),ra(2,"div",12),ra(3,"div",13),Za(4),sa(),Jo(5,WW,2,1,"div",14),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ja("disabled",t.disabled)("selected",n.isSelected(t)),ws(1),Sa("svgIcon",t.src),ws(3),Ja(t.name),ws(1),na("ngIf",void 0!==t.numResults)}}function XW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",16),fa("touchstart",function(){return $e(t),va().scroll("right")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("right")})("mousedown",function(){return $e(t),va().scroll("right")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_right"),sa()}2&t&&ja("disabled",va().onRight)}const YW=[{src:"app:skin",organ:"Skin",name:"Skin",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002097"},{src:"app:brain",organ:"Brain",name:"Brain",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000955"},{disabled:!0,src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000029"},{src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002509"},{disabled:!0,src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000970"},{src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004548"},{src:"app:eye",organ:"Eye",name:"Eye, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_54449"},{disabled:!0,src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0003889"},{src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001303"},{src:"app:fallopian-tube-right",organ:"Fallopian Tube",name:"Fallopian Tube, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001302"},{src:"app:heart",organ:"Heart",name:"Heart",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000948"},{disabled:!0,src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002113"},{src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004538"},{src:"app:kidney-right",organ:"Kidney",name:"Kidney, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004539"},{disabled:!0,src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001465"},{src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24978"},{src:"app:knee",organ:"Knee",name:"Knee, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24977"},{src:"app:liver",organ:"Liver",name:"Liver",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002107"},{disabled:!0,src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002048"},{src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001004"},{disabled:!0,src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000992"},{src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7214"},{src:"app:ovary-right",organ:"Ovary",name:"Ovary, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7213"},{src:"app:pancreas",organ:"Pancreas",name:"Pancreas",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001264"},{src:"app:pelvis-f",organ:"Pelvis",name:"Pelvis",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001270"},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0002367",disabled:!0},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0000079"},{src:"app:small-intestine",organ:"Small Intestine",name:"Small Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002108"},{src:"app:large-intestine",organ:"Large Intestine",name:"Large Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000059"},{src:"app:spleen",organ:"Spleen",name:"Spleen",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002106"},{src:"app:thymus",organ:"Thymus",name:"Thymus",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002370"},{disabled:!0,src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000056"},{src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001223"},{src:"app:ureter-right",organ:"Ureter",name:"Ureter, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001222"},{src:"app:bladder",organ:"Urinary Bladder",name:"Urinary Bladder",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001255"},{src:"app:uterus",organ:"Uterus",name:"Uterus",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000995"},{src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004537"},{disabled:!0,src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002049"}].sort((t,e)=>t.name.localeCompare(e.name)),KW=YW.filter(t=>!0!==t.disabled);let QW=(()=>{class t{constructor(){this.clsName="ccf-organ-selector",this.multiselect=!1,this.displayErrors=!1,this.organList=KW,this.selectedOrgans=[],this.expanded=!1,this.organsChanged=new Rc,this.onLeft=!0,this.onRight=!1,this.step=72}set occurenceData(t){this._occurenceData=t}get occurenceData(){return this._occurenceData}ngAfterViewInit(){const{carouselContainer:t}=this;this.sensor=new HU.ResizeSensor(t.nativeElement,()=>{this.set()})}ngOnChanges(t){"organList"in t&&this.set()}ngOnDestroy(){this.sensor.detach()}get error(){return!(!this.displayErrors||0===this.selectedOrgans.length)}shift(t){const{itemList:e}=this;let n=parseInt(e.nativeElement.style.left,10)||0;this.onLeft&&"left"===t||this.onRight&&"right"===t||(n="right"===t?n-this.step:n+this.step,e.nativeElement.style.left=n+"px",this.setLeftRight(n))}scroll(t){this.timeoutHandler=setInterval(()=>{this.shift(t)},200)}stopScroll(){this.timeoutHandler&&(clearInterval(this.timeoutHandler),this.timeoutHandler=void 0)}selectOrgan(t){this.selectedOrgans=this.multiselect?this.selectedOrgans.includes(t)?this.selectedOrgans.filter(e=>t!==e):this.selectedOrgans.concat([t]):[t],this.organsChanged.emit(this.selectedOrgans)}isSelected(t){return!!this.selectedOrgans.includes(t)}set(){const{itemList:t,itemContainer:e,carouselContainer:n}=this,i=parseInt(t.nativeElement.style.left,10)||0;if(t.nativeElement.offsetWidth>=this.organList.length*this.step)t.nativeElement.style.left="0px",this.onLeft=!0,this.onRight=!0;else{this.setLeftRight(i);const t=this.step*Math.floor(n.nativeElement.offsetWidth/this.step)-64;e.nativeElement.style.width=`${t}px`}}setWidth(){const{itemContainer:t,carouselContainer:e}=this,n=this.step*Math.floor(e.nativeElement.offsetWidth/this.step)-64;t.nativeElement.style.width=`${n}px`}setLeftRight(t){const{itemContainer:e}=this;this.onLeft=0===t,this.onRight=t<=e.nativeElement.offsetWidth-this.organList.length*this.step}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-organ-selector"]],viewQuery:function(t,e){if(1&t&&(qc(UW,7),qc(HW,7),qc($W,7)),2&t){let t;Wc(t=Yc())&&(e.carouselContainer=t.first),Wc(t=Yc())&&(e.itemList=t.first),Wc(t=Yc())&&(e.itemContainer=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{multiselect:"multiselect",displayErrors:"displayErrors",organList:"organList",selectedOrgans:"selectedOrgans",expanded:"expanded",occurenceData:"occurenceData"},outputs:{organsChanged:"organsChanged"},features:[ye],decls:9,vars:8,consts:[["matTooltip","Select the organ your tissue block is from.",1,"container",3,"matTooltipDisabled"],["carouselContainer",""],["class","carousel-left-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-item-container"],["itemcontainer",""],[1,"carousel-item-list"],["itemlist",""],["class","carousel-item",3,"disabled","selected","click",4,"ngFor","ngForOf"],["class","carousel-right-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-left-icon",3,"touchstart","touchend","click","mousedown","mouseup"],[1,"carousel-item",3,"click"],[1,"carousel-icon",3,"svgIcon"],[1,"carousel-text-container"],[1,"carousel-text"],["class","num-results",4,"ngIf"],[1,"num-results"],[1,"carousel-right-icon",3,"touchstart","touchend","click","mousedown","mouseup"]],template:function(t,e){1&t&&(ra(0,"div",0,1),Jo(2,GW,2,2,"mat-icon",2),ra(3,"div",3,4),ra(5,"div",5,6),Jo(7,qW,6,7,"div",7),sa(),sa(),Jo(8,XW,2,2,"mat-icon",8),sa()),2&t&&(ja("expanded",e.expanded)("error",e.error),na("matTooltipDisabled",e.multiselect),ws(2),na("ngIf",!e.expanded),ws(5),na("ngForOf",e.organList),ws(1),na("ngIf",!e.expanded))},directives:[ew,_h,yh,p_],styles:["[_nghost-%COMP%] .container[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;justify-content:space-between}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{font-size:2rem;transform:scaleY(1.2);height:2rem;width:2rem;cursor:pointer}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon.disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon.disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%]{text-align:right}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{text-align:left}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{overflow:hidden;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{position:relative;left:0rem;display:flex;transition:all .2s linear;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer;padding:.25rem .5rem;height:5rem;transition:.6s}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-icon[_ngcontent-%COMP%]{text-align:center;width:3.5rem;height:2rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:4rem;justify-content:center;text-align:center}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .carousel-text[_ngcontent-%COMP%]{display:flex;justify-content:center;font-size:.625rem;max-width:3.5rem;line-height:.8rem;min-height:1.6rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{font-size:.6875rem;line-height:1.5}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item.disabled[_ngcontent-%COMP%]{pointer-events:none}[_nghost-%COMP%] .error-message[_ngcontent-%COMP%]{color:red;height:1rem}[_nghost-%COMP%] .error-message.hidden[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{width:100%!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{flex-wrap:wrap;overflow:auto;left:0rem!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{height:5rem}"]}),t})(),ZW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,rw]]}),t})(),JW=(()=>{class t{constructor(){this.clsName="ccf-opacity-slider",this.opacity=20,this.visible=!0,this.opacityChange=new Rc,this.visibilityToggle=new Rc,this.opacityReset=new Rc}ngOnInit(){this.prevOpacity=this.visible?0:20}reset(){this.prevOpacity=20}changeOpacity(t){this.opacity=parseInt(t,10),this.opacityChange.emit(this.opacity)}toggleVisibility(){const t=this.opacity;this.opacity=this.prevOpacity,this.prevOpacity=t,this.visibilityToggle.emit(),this.opacityChange.emit(this.opacity)}resetOpacity(){this.prevOpacity=0,this.opacityReset.emit()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-opacity-slider"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{opacity:"opacity",visible:"visible"},outputs:{opacityChange:"opacityChange",visibilityToggle:"visibilityToggle",opacityReset:"opacityReset"},decls:10,vars:17,consts:[[1,"slider-box"],[1,"slider-and-label"],[1,"slider",3,"step","min","max","value","input"],[1,"opacity-value"],[1,"icons"],["matRipple","","svgIcon","app:visibility_off",1,"visibility","icon","invisible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","","svgIcon","app:visibility_on",1,"visibility","icon","visible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","",1,"icon","reset",3,"matRippleCentered","matRippleUnbounded","click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-slider",2),fa("input",function(t){return e.changeOpacity(t.value)}),sa(),ra(3,"span",3),Za(4),sa(),sa(),ra(5,"div",4),ra(6,"mat-icon",5),fa("click",function(){return e.toggleVisibility()}),sa(),ra(7,"mat-icon",6),fa("click",function(){return e.toggleVisibility()}),sa(),ra(8,"mat-icon",7),fa("click",function(){return e.resetOpacity()}),Za(9,"refresh"),sa(),sa(),sa()),2&t&&(ws(2),ja("disabled",!e.visible),na("step",1)("min",0)("max",100)("value",e.opacity),ws(2),tl("",e.opacity,"%"),ws(2),ja("hidden",e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),ja("hidden",!e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),na("matRippleCentered",!0)("matRippleUnbounded",!0))},directives:[YU,p_,Yy],styles:["[_nghost-%COMP%]{height:2.25rem;display:flex;align-items:center;justify-content:space-between;border-radius:.1875rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%]{width:60%;display:flex;align-items:center;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .mat-slider-wrapper{top:1.125rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:not-allowed}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .opacity-value[_ngcontent-%COMP%]{width:1.5rem;margin-left:.5rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%]{display:flex;cursor:pointer!important}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .reset[_ngcontent-%COMP%]{margin-right:1rem;padding:.25rem;cursor:pointer;transition:.6s;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility[_ngcontent-%COMP%]{transition:.6s;cursor:pointer;padding:.25rem;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})(),tq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,JU,Ky]]}),t})();function eq(t,e){if(1&t&&(ra(0,"div",15),oa(1,"youtube-player",16),sa()),2&t){const t=va(3);ws(1),Sa("videoId",t.videoID)}}function nq(t,e){if(1&t&&(ra(0,"mat-expansion-panel",10),ra(1,"mat-expansion-panel-header"),ra(2,"h2",11),Za(3),sa(),sa(),ra(4,"div",12),oa(5,"markdown",13),Jo(6,eq,2,1,"div",14),sa(),sa()),2&t){const t=va(),e=t.index,n=t.$implicit;na("expanded",0===e),ws(3),Ja(n.title),ws(2),ja("first",0===e),na("data",n.content),ws(1),na("ngIf",0===e)}}function iq(t,e){if(1&t&&(ra(0,"div",8),Jo(1,nq,7,6,"mat-expansion-panel",9),sa()),2&t){const t=e.$implicit;ws(1),na("ngIf",t)}}let rq=(()=>{class t{constructor(t,e){this.dialogRef=t,this.data=e,this.documentationContents=e.content||[],this.infoTitle=e.title||"",this.videoID=e.videoID}ngOnInit(){const t=document.createElement("script");t.src="https://www.youtube.com/iframe_api",document.body.appendChild(t)}close(){var t;null===(t=document.getElementsByClassName("modal-animated")[0])||void 0===t||t.classList.add("modal-animate-fade-out"),setTimeout(()=>{this.dialogRef.close()},250)}}return t.\u0275fac=function(e){return new(e||t)(ea(oH),ea(lH))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-dialog"]],decls:10,vars:2,consts:[[1,"rui-about","wrapper"],[1,"container"],[1,"close"],[1,"material-icons","close-icon",3,"click"],[1,"content"],["mat-dialog-title","",1,"title"],[1,"mat-typography","dialog-content"],["class","panel",4,"ngFor","ngForOf"],[1,"panel"],[3,"expanded",4,"ngIf"],[3,"expanded"],[1,"no-header-margin"],[1,"top-padding"],[1,"variable-binding",3,"data"],["class","video-player",4,"ngIf"],[1,"video-player"],[3,"videoId"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),ra(3,"mat-icon",3),fa("click",function(){return e.close()}),Za(4,"clear"),sa(),sa(),ra(5,"div",4),ra(6,"h2",5),Za(7),sa(),ra(8,"mat-dialog-content",6),Jo(9,iq,2,1,"div",7),sa(),sa(),sa(),sa()),2&t&&(ws(7),Ja(e.infoTitle),ws(2),na("ngForOf",e.documentationContents))},directives:[p_,gH,mH,yh,_h,NH,FH,WH,i$],styles:[".mat-dialog-container{padding:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:3rem;text-align:left}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:.875rem;line-height:1.5rem;margin-bottom:1rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .close[_ngcontent-%COMP%] .close-icon[_ngcontent-%COMP%]{float:right;cursor:pointer}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:1.5rem;margin-bottom:2.25rem;text-align:center}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:1rem;margin-top:0;margin-bottom:.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%]{margin-bottom:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .no-header-margin[_ngcontent-%COMP%]{font-weight:300;margin-bottom:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%]{display:flex}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] ul{margin-top:0;padding-left:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%]{height:50rem;min-height:10rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding[_ngcontent-%COMP%]{font-weight:300}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding.first[_ngcontent-%COMP%]{padding-right:3rem;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%]{position:relative;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%] iframe{width:100%;height:100%;max-height:17.5rem}"]}),t})(),sq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,bH,f_,BH,a$,qH.forRoot({})]]}),t})(),oq=(()=>{class t{constructor(t){this.http=t,this.markdownContent=new Uf([])}readMarkdown(){this.http.get("assets/docs/README.md",{responseType:"text"}).subscribe(t=>{const e=this.parseMarkdown(t);this.markdownContent.next(e)})}parseMarkdown(t){const e=[],n=t.split("# ");for(const i of n)if(i.length){const t=i.split("\n\n");e.push({title:t[0],content:t.splice(1).join("\n\n")})}return e}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),aq=(()=>{class t{constructor(t,e){this.dialog=t,this.infoButtonService=e,this.infoTitle="",this.subscriptions=new g,this.subscriptions.add(e.markdownContent.subscribe(t=>{t.length&&this.launchInfoDialog(t)}))}ngOnDestroy(){this.subscriptions.unsubscribe()}launchInfoDialog(t){this.dialog.open(rq,{autoFocus:!1,panelClass:"modal-animated",width:"60rem",data:{title:this.infoTitle,content:t,videoID:this.videoID}})}onDialogButtonClick(){this.infoButtonService.readMarkdown()}}return t.\u0275fac=function(e){return new(e||t)(ea(pH),ea(oq))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-button"]],inputs:{infoTitle:"infoTitle",videoID:"videoID"},decls:3,vars:0,consts:[[1,"info-button-wrapper"],["aria-hidden","false","aria-label","Page information",1,"ccf-info-button",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"mat-icon",1),fa("click",function(){return e.onDialogButtonClick()}),Za(2," info "),sa(),sa())},directives:[p_],styles:[".info-button-wrapper[_ngcontent-%COMP%]{border-radius:.25rem;padding:.65rem;transition:.6s}.info-button-wrapper[_ngcontent-%COMP%] .ccf-info-button[_ngcontent-%COMP%]{cursor:pointer;transition:color .6s;font-size:1.5rem;vertical-align:sub}"]}),t})(),lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,sq,f_,Zv]]}),t})(),cq=(()=>{let t=class extends z${constructor(){super(...arguments),this.optionCache=new Map}get config$(){return this.state$.pipe(Hd(t=>null!=t),up(1))}setConfig(t){this.setState(t)}patchConfig(t){this.patchState(t)}getProperty(t){return this.config$.pipe(FU(...t),Rd(),up(1))}getOption(...t){const e=this.getPathKey(t);if(this.optionCache.has(e))return this.optionCache.get(e);const n=this.config$.pipe(FU(...t),Rd(),up(1));return this.optionCache.set(e,n),n}getPathKey(t){return`${t.length}:${t.join(".")}`}};return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$()],t.prototype,"config$",null),t=sw([F$(),wV({name:"globalConfig",defaults:null})],t),t})();!function(){const t=localStorage.getItem("ALLOW_TELEMETRY");null===t||t.toLowerCase()}();let uq=(()=>{class t{constructor(t,e){t&&function(t,e){xd(t,"mousemove").pipe(function(t,e=jd,n=BU){return i=>i.lift(new VU(t,e,n.leading,n.trailing))}(1e3),D(e=>{const{clientWidth:n,clientHeight:i}=t,{clientX:r,clientY:s}=e;return[r,s,n,i].join("_")})).subscribe(t=>e.event("webpage","mousemove",t))}(t.body,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(W$))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function hq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!0)}),Za(1),sa()}if(2&t){const t=va();ws(1),tl(" ","not-set"===t.allowTelemetry?"I understand":"Opt in","\n")}}function dq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!1)}),Za(1,"Opt out"),sa()}}let pq=(()=>{class t{constructor(t,e,n){this.consentService=e,this.data=n,this.clsName="ccf-tracking-popup",this.container=t.nativeElement}get allowTelemetry(){return this.consentService.consent}dismiss(){this.data.preClose()}submit(t){this.consentService.setConsent(t?"given":"rescinded"),this.dismiss()}showButton(t){const{allowTelemetry:e}=this;return"not-set"===e||("opt-in"===t?"rescinded"===e:"given"===e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Y$),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tracking-popup"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},decls:4,vars:2,consts:[["mat-button","","color","basic",3,"click",4,"ngIf"],["mat-button","","color","basic",3,"click"]],template:function(t,e){1&t&&(ra(0,"p"),Za(1,"We log usage to improve this service."),sa(),Jo(2,hq,2,1,"button",0),Jo(3,dq,2,0,"button",0)),2&t&&(ws(2),na("ngIf",e.showButton("opt-in")),ws(1),na("ngIf",e.showButton("opt-out")))},directives:[_h,__],styles:["[_nghost-%COMP%]{display:flex;align-items:center;min-width:400px;color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:9999}[_nghost-%COMP%] p[_ngcontent-%COMP%]{margin:24px}[_nghost-%COMP%] button[_ngcontent-%COMP%]{margin:1rem;min-width:6rem;background-color:#007cbe;display:flex;justify-content:center}"],changeDetection:0}),t})(),fq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_]]}),t})();class gq extends class{getProviderNames(){return this.forwardCall("getProviderNames")}getDatasetTechnologyNames(){return this.forwardCall("getDatasetTechnologyNames")}getOntologyTreeModel(){return this.forwardCall("getOntologyTreeModel")}getCellTypeTreeModel(){return this.forwardCall("getCellTypeTreeModel")}getReferenceOrgans(){return this.forwardCall("getReferenceOrgans")}getTissueBlockResults(t){return this.forwardCall("getTissueBlockResults",t)}getAggregateResults(t){return this.forwardCall("getAggregateResults",t)}getOntologyTermOccurences(t){return this.forwardCall("getOntologyTermOccurences",t)}getCellTypeTermOccurences(t){return this.forwardCall("getCellTypeTermOccurences",t)}getScene(t){return this.forwardCall("getScene",t)}getReferenceOrganScene(t,e){return this.forwardCall("getReferenceOrganScene",t,e)}}{forwardCall(t,...e){return this.impl$.pipe(Qd(n=>n[t](...e)))}}let mq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const bq=new P,yq={cacheBusterObserver:bq},vq={cacheBusterObserver:bq,maxCacheCount:4};function _q(t,e,n){return t?{min:t[0]>e?t[0]:void 0,max:t[1]{var e;return Object.assign(Object.assign({},t),{transformMatrix:new bT(null!==(e=t.transformMatrix)&&void 0!==e?e:[])})})}let xq=(()=>{class t{constructor(t,e){this.api=t,this.globalConfig=e,e.getOption("hubmapToken").subscribe(bq)}getProviderNames(){return this.doRequest(t=>this.api.providerNames(t))}getDatasetTechnologyNames(){return this.doRequest(t=>this.api.technologyNames(t))}getOntologyTreeModel(){return this.doRequest(t=>this.api.ontologyTreeModel(t),void 0,{},t=>t)}getCellTypeTreeModel(){return this.doRequest(t=>this.api.cellTypeTreeModel(t),void 0,{},t=>t)}getReferenceOrgans(){return this.doRequest(t=>this.api.referenceOrgans(t),void 0,{},t=>t)}getTissueBlockResults(t){return this.doRequest(t=>this.api.tissueBlocks(t),t,{},t=>t)}getAggregateResults(t){return this.doRequest(t=>this.api.aggregateResults(t),t)}getOntologyTermOccurences(t){return this.doRequest(t=>this.api.ontologyTermOccurences(t),t)}getCellTypeTermOccurences(t){return this.doRequest(t=>this.api.cellTypeTermOccurences(t),t)}getScene(t){return this.doRequest(t=>this.api.scene(t),t,{},wq)}getReferenceOrganScene(t,e){return this.doRequest(t=>this.api.referenceOrganScene(t),e,{organIri:t},wq)}doRequest(t,e,n,i){const{api:r,globalConfig:s}=this,o=Object.assign(Object.assign({},function(t){var e,n;return{age:_q(null==t?void 0:t.ageRange,1,110),bmi:_q(null==t?void 0:t.bmiRange,13,83),sex:null===(n=null===(e=null==t?void 0:t.sex)||void 0===e?void 0:e.toLowerCase)||void 0===n?void 0:n.call(e),ontologyTerms:null==t?void 0:t.ontologyTerms,cellTypeTerms:null==t?void 0:t.cellTypeTerms,providers:null==t?void 0:t.tmc,technologies:null==t?void 0:t.technologies}}(e)),n);return s.getOption("remoteApiEndpoint").pipe(Gp(1),$f(t=>r.configuration.basePath=t),Qd(()=>t(o)),D(t=>i?i(t):t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(uG),Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),sw([oG(yq)],t.prototype,"getProviderNames",null),sw([oG(yq)],t.prototype,"getDatasetTechnologyNames",null),sw([oG(yq)],t.prototype,"getOntologyTreeModel",null),sw([oG(yq)],t.prototype,"getCellTypeTreeModel",null),sw([oG(yq)],t.prototype,"getReferenceOrgans",null),sw([oG(vq)],t.prototype,"getTissueBlockResults",null),sw([oG(vq)],t.prototype,"getAggregateResults",null),sw([oG(vq)],t.prototype,"getOntologyTermOccurences",null),sw([oG(vq)],t.prototype,"getCellTypeTermOccurences",null),sw([oG(vq)],t.prototype,"getScene",null),sw([oG(vq)],t.prototype,"getReferenceOrganScene",null),t})(),Sq=(()=>{class t extends gq{constructor(t){super(),this.impl$=this.database$=t.config$.pipe(t=>t,Hd(t=>Object.keys(t).length>0),Qd(t=>function(t,e){return new C(n=>{let i,r;try{i=t()}catch(o){return void n.error(o)}try{r=e(i)}catch(o){return void n.error(o)}const s=(r?U(r):ep).subscribe(n);return()=>{s.unsubscribe(),i&&i.unsubscribe()}})}(()=>this.createDatabase(t),e=>this.connectDatabase(e,t))),D(t=>t.database),up(1))}connectDatabase(t,e){return lw(this,void 0,void 0,function*(){const n=!Nu();return yield t.database.connect(e,n),t})}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Eq=(()=>{class t extends Sq{createDatabase(t){return{database:new wW(t),unsubscribe:()=>{}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Cq=(()=>{class t extends Sq{createDatabase(t){const e=this.createWorker(t),n=PW(e);return{database:n,unsubscribe:()=>{n[EW](),e.terminate()}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Oq=(()=>{class t extends gq{constructor(t,e){super(),this.impl$=t.config$.pipe(t=>t,D(t=>this.selectToken(t)),Rd(),D(t=>e.get(t)),up(1))}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Tq=new oi("Default theme class");let kq=(()=>{class t{constructor(t){this.defaultTheme=this.theme=null!=t?t:""}static initialize(e){const{injector:n,location:i}=e;n.get(t).initialize(i,n)}getTheme(){return this.theme}setTheme(t){t!==this.theme&&(this.applyThemeClass(this.theme,"remove"),this.applyThemeClass(t),this.theme=t)}resetTheme(){this.setTheme(this.defaultTheme)}initialize(t,e){this.element=t,this.injector=e,this.applyThemeClass(this.getTheme())}applyThemeClass(t,e="add"){var n;const{element:i,injector:r}=this;if(!t||!i||!r)return;const s=r.get(Ml,null);if(!s)return;const o=i.nativeElement,a=null===(n=r.get(gf,null))||void 0===n?void 0:n.getContainerElement(),l="add"===e?"addClass":"removeClass";s[l](o,t),a&&s[l](a,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Tq,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();var Aq;const Pq={production:!0,disableDbWorker:!0,acceptableViewerDomains:["https://portal.hubmapconsortium.org","https://portal.test.hubmapconsortium.org"],dbOptions:{ccfOwlUrl:"assets/ccf.owl.n3store.json",ccfContextUrl:"https://hubmapconsortium.github.io/hubmap-ontology/ccf-context.jsonld",dataSources:["assets/kpmp/data/rui_locations.jsonld","assets/sparc/data/rui_locations.jsonld","assets/gtex/data/rui_locations.jsonld"],hubmapDataService:"search-api",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"https://search.api.hubmapconsortium.org/entities/search",hubmapAssetsUrl:"https://assets.hubmapconsortium.org",hubmapToken:null!==(Aq=localStorage.getItem("HUBMAP_TOKEN"))&&void 0!==Aq?Aq:"",useRemoteApi:!1,remoteApiEndpoint:"https://ccf-api--staging.herokuapp.com/v1"},customization:{theme:"hubmap",header:!0,homeUrl:"https://portal.hubmapconsortium.org/",logoTooltip:"Human BioMolecular Atlas Project"},googleAnalyticsToken:"portal.hubmapconsortium.org"===window.location.hostname?"G-1WRJHN9FM6":"G-J9HWV9QPJ4"},Mq=["*",[["mat-toolbar-row"]]],Iq=["*","mat-toolbar-row"],Dq=jy(class{constructor(t){this._elementRef=t}});let Rq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),t})(),Nq=(()=>{class t extends Dq{constructor(t,e,n){super(t),this._platform=e,this._document=n}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu))},t.\u0275cmp=Jt({type:t,selectors:[["mat-toolbar"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,Rq,5),2&t){let t;Wc(t=Yc())&&(e._toolbarRows=t)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(t,e){2&t&&ja("mat-toolbar-multiple-rows",e._toolbarRows.length>0)("mat-toolbar-single-row",0===e._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[jo],ngContentSelectors:Iq,decls:2,vars:0,template:function(t,e){1&t&&(wa(Mq),xa(0),xa(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),t})(),Lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})(),jq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,Lq,rw]]}),t})(),Fq=(()=>{class t extends Cq{constructor(t,e){super(t),this.locator=e}createWorker(t){const e=this.getWorkerUrl(!0);return new Worker(e,{type:"module"})}getWorkerUrl(t){if(t)return new URL(n(88509),n.b);const e=this.locator.prepareExternalUrl("0-es2015.worker.js"),i=new Blob([`importScripts('${e}')`],{type:"application/javascript"});return URL.createObjectURL(i)}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(rh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Bq=(()=>{class t extends Oq{selectToken(t){const{useRemoteApi:e,remoteApiEndpoint:n}=t;return e&&n?xq:"undefined"==typeof Worker||Pq.disableDbWorker?Eq:Fq}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Vq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:au,useValue:kq.initialize,multi:!0},kq]}),t})(),zq=(()=>{class t{constructor(t,e){this.accessor=t,this.injector=e}static forRoot(e=[]){return{ngModule:t,providers:[w$,_$,y$,...e]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(w$,2),Ci(_$,2))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Uq=(t,e)=>((t,e)=>new Array(e+1).join("0"))(0,e-t.toString().length)+t;class Hq{constructor(t,e,n){this.action=t,this.store=e,this.logWriter=n}dispatched(t){const e=VB(this.action),n=function(t){return Uq(t.getHours(),2)+":"+Uq(t.getMinutes(),2)+":"+Uq(t.getSeconds(),2)+"."+Uq(t.getMilliseconds(),3)}(new Date);this.logWriter.startGroup(`action ${e} @ ${n}`),this._hasPayload(this.action)&&this.logWriter.logGrey("payload",Object.assign({},this.action)),this.logWriter.logGrey("prev state",t)}completed(t){this.logWriter.logGreen("next state",t),this.logWriter.endGroup()}errored(t){this.logWriter.logRedish("next state after error",this.store.snapshot()),this.logWriter.logRedish("error",t),this.logWriter.endGroup()}_hasPayload(t){return this._getNonEmptyProperties(t).length>0}_getNonEmptyProperties(t){return Object.keys(t).map(e=>t[e]).filter(t=>void 0!==t)}}class $q{constructor(t){this.options=t,this.options=this.options||{},this.logger=t.logger||console}startGroup(t){const e=this.options.collapsed?this.logger.groupCollapsed:this.logger.group;try{e.call(this.logger,t)}catch(n){console.log(t)}}endGroup(){try{this.logger.groupEnd()}catch(t){this.logger.log("\u2014\u2014 log end \u2014\u2014")}}logGrey(t,e){this.log(t,"color: #9E9E9E; font-weight: bold",e)}logGreen(t,e){this.log(t,"color: #4CAF50; font-weight: bold",e)}logRedish(t,e){this.log(t,"color: #FD8182; font-weight: bold",e)}log(t,e,n){this.isIE()?this.logger.log(t,n):this.logger.log("%c "+t,e,n)}isIE(){const t="undefined"!=typeof window&&window.navigator.userAgent?window.navigator.userAgent:"";let e=!1;const n=t.indexOf("MSIE "),i=t.indexOf("Trident/");return(n>-1||i>-1)&&(e=!0),e}}const Gq=new oi("NGXS_LOGGER_PLUGIN_OPTIONS");let Wq=(()=>{class t{constructor(t,e){this._options=t,this._injector=e}handle(t,e,n){if(this._options.disabled||!this._options.filter(e,t))return n(t,e);this._logWriter=this._logWriter||new $q(this._options),this._store=this._store||this._injector.get(pV);const i=new Hq(e,this._store,this._logWriter);return i.dispatched(t),n(t,e).pipe($f(t=>{i.completed(t)}),pv(t=>{throw i.errored(t),t}))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Gq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const qq=new oi("LOGGER_USER_OPTIONS");function Xq(t){return Object.assign({},{logger:console,collapsed:!1,disabled:!1,filter:()=>!0},t)}let Yq=(()=>{class t{static forRoot(e){return{ngModule:t,providers:[{provide:IB,useClass:Wq,multi:!0},{provide:qq,useValue:e},{provide:Gq,useFactory:Xq,deps:[qq]}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Kq=new RegExp("[^#a-f\\d]","gi"),Qq=new RegExp("^#?[a-f\\d]{3}[a-f\\d]?$|^#?[a-f\\d]{6}([a-f\\d]{2})?$","i"),Zq=["#FF8800","#2979ff","#ffd740","#b92dff","#da326f","#7323e2","#acf32b","#82B1FF","#E040FB","#00E5FF"].map((t,e)=>{const n=function(t,e={}){if("string"!=typeof t||Kq.test(t)||!Qq.test(t))throw new TypeError("Expected a valid hex string");let n=1;8===(t=t.replace(/^#/,"")).length&&(n=Number.parseInt(t.slice(6,8),16)/255,t=t.slice(0,6)),4===t.length&&(n=Number.parseInt(t.slice(3,4).repeat(2),16)/255,t=t.slice(0,3)),3===t.length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]);const i=Number.parseInt(t,16),r=i>>16,s=i>>8&255,o=255&i,a="number"==typeof e.alpha?e.alpha:n;return"array"===e.format?[r,s,o,a]:"css"===e.format?`rgb(${r} ${s} ${o}${1===a?"":` / ${Number((100*a).toFixed(2))}%`})`:{red:r,green:s,blue:o,alpha:a}}(t,{format:"array"});return n[3]=255,{color:t,rgba:n,rank:e}});let Jq=class extends z${constructor(){super(...arguments),this.forcedUnassignment=new P,this.forcedUnassignment$=this.forcedUnassignment.asObservable(),this.colorAssignments$=this.state$.pipe(FU("colorAssignments"),Rd()),this.colorAssignmentsList$=this.state$.pipe(FU("colorAssignmentsList"),Rd())}getColor(t){const{colorAssignments:e}=this.snapshot;return e[t]}assignColor(t,e=!1){let{colorAssignments:n,colorAssignmentsList:i,colorsAvailable:r}=this.snapshot;e&&(r=this.snapshot.colorPalette.concat(),i=[],n={});let s=n[t];return s||(r.length>0?s=r[0]:(s=i[i.length-1].color,i=i.slice(0,-1),this.forcedUnassignment.next()),r=r.filter(t=>t.color!==s.color),i=[{color:s,key:t}].concat(i),n=i.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:r,colorAssignments:n,colorAssignmentsList:i})),s}unassignColor(t){let{colorAssignments:e,colorAssignmentsList:n,colorsAvailable:i}=this.snapshot;const r=e[t];r&&(i=[r].concat(i),n=n.filter(t=>t.color.color!==r.color),e=n.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:i,colorAssignments:e,colorAssignmentsList:n}))}};function tX(t,e){return n=>n.lift(new eX(t,e))}Jq.\u0275fac=function(){let t;return function(e){return(t||(t=ti(Jq)))(e||Jq)}}(),Jq.\u0275prov=xt({token:Jq,factory:Jq.\u0275fac}),sw([L$(),ow(0,j$("key")),ow(1,j$("doReset"))],Jq.prototype,"assignColor",null),sw([L$(),ow(0,j$("key"))],Jq.prototype,"unassignColor",null),Jq=sw([F$(),wV({name:"colors",defaults:{colorPalette:Zq.concat(),colorsAvailable:Zq.concat(),colorAssignments:{},colorAssignmentsList:[]}})],Jq);class eX{constructor(t,e){this.keySelector=t,this.flushes=e}call(t,e){return e.subscribe(new nX(t,this.keySelector,this.flushes))}}class nX extends ${constructor(t,e,n){super(t),this.keySelector=e,this.values=new Set,n&&this.add(G(n,new H(this)))}notifyNext(){this.values.clear()}notifyError(t){this._error(t)}_next(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)}_useKeySelector(t){let e;const{destination:n}=this;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)}_finalizeNext(t,e){const{values:n}=this;n.has(t)||(n.add(t),this.destination.next(e))}}const iX={sex:"Both",ageRange:[1,110],bmiRange:[13,83],tmc:[],technologies:[],ontologyTerms:["http://purl.obolibrary.org/obo/UBERON_0013702"],cellTypeTerms:["http://purl.obolibrary.org/obo/CL_0000000"]};var rX=(()=>(function(t){t.Running="running",t.Completed="completed"}(rX||(rX={})),rX))();function sX(t){return()=>t.next(rX.Completed)}function oX(t,e){return n=>n.pipe(Qd(t),$f(e),eG(1),Z())}let aX=class extends V${constructor(t){super(),this.source=t,this._tissueBlockDataQueryStatus$=new lp(1),this._aggregateDataQueryStatus$=new lp(1),this._ontologyTermOccurencesDataQueryStatus$=new lp(1),this._cellTypeTermOccurencesDataQueryStatus$=new lp(1),this._sceneDataQueryStatus$=new lp(1),this._technologyFilterQueryStatus$=new lp(1),this._providerFilterQueryStatus$=new lp(1),this.ontologyTermsFullData$=new lp(1),this.cellTypeTermsFullData$=new lp(1),this.filter$=this.state$.pipe(FU("filter")),this.tissueBlockData$=this.filter$.pipe(oX(this.tissueBlockData,sX(this._tissueBlockDataQueryStatus$))),this.aggregateData$=this.filter$.pipe(oX(this.aggregateData,sX(this._aggregateDataQueryStatus$))),this.ontologyTermOccurencesData$=this.filter$.pipe(oX(this.ontologyTermOccurencesData,sX(this._ontologyTermOccurencesDataQueryStatus$))),this.cellTypeTermOccurencesData$=this.filter$.pipe(oX(this.cellTypeTermOccurencesData,sX(this._cellTypeTermOccurencesDataQueryStatus$))),this.sceneData$=this.filter$.pipe(oX(this.sceneData,sX(this._sceneDataQueryStatus$))),this.technologyFilterData$=this.filter$.pipe(oX(this.technologyFilterData,sX(this._technologyFilterQueryStatus$))),this.providerFilterData$=this.filter$.pipe(oX(this.providerFilterData,sX(this._providerFilterQueryStatus$))),this.tissueBlockDataQueryStatus$=this._tissueBlockDataQueryStatus$.pipe(tX()),this.aggregateDataQueryStatus$=this._aggregateDataQueryStatus$.pipe(tX()),this.ontologyTermOccurencesDataQueryStatus$=this._ontologyTermOccurencesDataQueryStatus$.pipe(tX()),this.cellTypeTermOccurencesDataQueryStatus$=this._cellTypeTermOccurencesDataQueryStatus$.pipe(tX()),this.sceneDataQueryStatus$=this._sceneDataQueryStatus$.pipe(tX()),this.technologyFilterQueryStatus$=this._technologyFilterQueryStatus$.pipe(tX()),this.providerFilterQueryStatus$=this._providerFilterQueryStatus$.pipe(tX()),this.queryStatus$=T_([this.tissueBlockDataQueryStatus$,this.aggregateDataQueryStatus$,this.ontologyTermOccurencesDataQueryStatus$,this.cellTypeTermOccurencesDataQueryStatus$,this.sceneDataQueryStatus$,this.technologyFilterQueryStatus$,this.providerFilterQueryStatus$]).pipe(D(t=>function(t){return t.every(t=>t===rX.Completed)}(t)?rX.Completed:rX.Running),tX()),this._tissueBlockDataQueryStatus$.next(rX.Completed),this._aggregateDataQueryStatus$.next(rX.Completed),this._ontologyTermOccurencesDataQueryStatus$.next(rX.Completed),this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Completed),this._sceneDataQueryStatus$.next(rX.Completed),this._technologyFilterQueryStatus$.next(rX.Completed),this._providerFilterQueryStatus$.next(rX.Completed)}ngxsOnInit(){const{ontologyTermsFullData$:t,ontologyTermOccurencesData$:e,cellTypeTermsFullData$:n,cellTypeTermOccurencesData$:i,source:r,snapshot:{filter:s}}=this;s===iX?(e.pipe(Gp(1)).subscribe(t),i.pipe(Gp(1)).subscribe(n)):(r.getOntologyTermOccurences().pipe(Gp(1)).subscribe(t),r.getCellTypeTermOccurences().pipe(Gp(1)).subscribe(n))}updateFilter(t){this.patchState({filter:Object.assign(Object.assign({},this.getState().filter),t)})}tissueBlockData(t){return this._tissueBlockDataQueryStatus$.next(rX.Running),this.source.getTissueBlockResults(t)}aggregateData(t){return this._aggregateDataQueryStatus$.next(rX.Running),this.source.getAggregateResults(t)}ontologyTermOccurencesData(t){return this._ontologyTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getOntologyTermOccurences(t)}cellTypeTermOccurencesData(t){return this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getCellTypeTermOccurences(t)}sceneData(t){return this._sceneDataQueryStatus$.next(rX.Running),this.source.getScene(t)}technologyFilterData(){return this._technologyFilterQueryStatus$.next(rX.Running),this.source.getDatasetTechnologyNames()}providerFilterData(){return this._providerFilterQueryStatus$.next(rX.Running),this.source.getProviderNames()}};aX.\u0275fac=function(t){return new(t||aX)(Ci(mq))},aX.\u0275prov=xt({token:aX,factory:aX.\u0275fac}),sw([L$(),ow(0,j$("filter"))],aX.prototype,"updateFilter",null),sw([iB.ak],aX.prototype,"tissueBlockData",null),sw([iB.ak],aX.prototype,"aggregateData",null),sw([iB.ak],aX.prototype,"ontologyTermOccurencesData",null),sw([iB.ak],aX.prototype,"cellTypeTermOccurencesData",null),sw([iB.ak],aX.prototype,"sceneData",null),sw([iB.ak],aX.prototype,"technologyFilterData",null),sw([iB.ak],aX.prototype,"providerFilterData",null),aX=sw([F$(),wV({name:"data",defaults:{filter:iX}})],aX);const lX=[{name:"bladder",namespace:"app",url:"assets/icons/organs/ico-organs-bladder.svg"},{name:"blood",namespace:"app",url:"assets/icons/organs/ico-organs-blood.svg"},{name:"bone-marrow",namespace:"app",url:"assets/icons/organs/ico-organs-bone-marrow.svg"},{name:"brain",namespace:"app",url:"assets/icons/organs/ico-organs-brain.svg"},{name:"eye",namespace:"app",url:"assets/icons/organs/ico-organs-eye.svg"},{name:"fallopian-tube-left",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-left.svg"},{name:"fallopian-tube-right",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-right.svg"},{name:"heart",namespace:"app",url:"assets/icons/organs/ico-organs-heart.svg"},{name:"kidney-left",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-left.svg"},{name:"kidney-right",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-right.svg"},{name:"kidney",namespace:"app",url:"assets/icons/organs/ico-organs-kidney.svg"},{name:"knee",namespace:"app",url:"assets/icons/organs/ico-organs-knee.svg"},{name:"large-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-large-intestine.svg"},{name:"liver",namespace:"app",url:"assets/icons/organs/ico-organs-liver.svg"},{name:"lung-left",namespace:"app",url:"assets/icons/organs/ico-organs-lung-left.svg"},{name:"lung-right",namespace:"app",url:"assets/icons/organs/ico-organs-lung-right.svg"},{name:"lung",namespace:"app",url:"assets/icons/organs/ico-organs-lung.svg"},{name:"lymph-nodes",namespace:"app",url:"assets/icons/organs/ico-organs-lymph-nodes.svg"},{name:"neuron",namespace:"app",url:"assets/icons/organs/ico-organs-neuron.svg"},{name:"ovaries",namespace:"app",url:"assets/icons/organs/ico-organs-ovaries.svg"},{name:"ovary-left",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-left.svg"},{name:"ovary-right",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-right.svg"},{name:"pancreas",namespace:"app",url:"assets/icons/organs/ico-organs-pancreas.svg"},{name:"pelvis-f",namespace:"app",url:"assets/icons/organs/ico-organs-pelvis-f.svg"},{name:"prostate",namespace:"app",url:"assets/icons/organs/ico-organs-prostate.svg"},{name:"skin",namespace:"app",url:"assets/icons/organs/ico-organs-skin.svg"},{name:"small-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-small intestine.svg"},{name:"spleen",namespace:"app",url:"assets/icons/organs/ico-organs-spleen.svg"},{name:"stomach",namespace:"app",url:"assets/icons/organs/ico-organs-stomach.svg"},{name:"thymus",namespace:"app",url:"assets/icons/organs/ico-organs-thymus.svg"},{name:"ureter-left",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-left.svg"},{name:"ureter-right",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-right.svg"},{name:"uterus",namespace:"app",url:"assets/icons/organs/ico-organs-uterus.svg"},{name:"vasculature-thick",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thick.svg"},{name:"vasculature-thin",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thin.svg"},{name:"opacity",namespace:"app",url:"assets/icons/opacity-24px.svg"},{name:"visibility_on",namespace:"app",url:"assets/icons/visibility-on-24px.svg"},{name:"visibility_off",namespace:"app",url:"assets/icons/visibility-off-24px.svg"},{name:"expand_more",namespace:"app",url:"assets/icons/expand_more-24px.svg"},{name:"expand_less",namespace:"app",url:"assets/icons/expand_less-24px.svg"},{name:"filter",url:"assets/icons/filter.svg"}];let cX=class extends V${constructor(t,e){super(),this.registry=t;for(const{name:n,namespace:i,url:r,html:s}of lX){const t={name:n,namespace:i,url:r&&e.bypassSecurityTrustResourceUrl(r),html:s&&e.bypassSecurityTrustHtml(s)};this.registerIconImpl(t)}}registerIcon(t){return this.registerIconImpl(t)}registerIconImpl(t){if(!this.registry||!t.url&&!t.html)return!1;const e=this.registry,n=e[this.getMethodName(t)],i=this.getArguments(t);if(!n)return!1;try{return n.apply(e,i),!0}catch(r){return!1}}getMethodName({name:t,namespace:e,url:n}){const i=["addSvgIcon"];return t||i.push("Set"),n||i.push("Literal"),e&&i.push("InNamespace"),i.join("")}getArguments({name:t,namespace:e,url:n,html:i}){return[e,t,null!=n?n:i].filter(t=>!!t)}};cX.\u0275fac=function(t){return new(t||cX)(Ci(r_,8),Ci(hd))},cX.\u0275prov=xt({token:cX,factory:cX.\u0275fac}),sw([L$()],cX.prototype,"registerIcon",null),cX=sw([F$(),wV({name:"iconRegistry"})],cX);let uX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.listResults$=this.state$.pipe(FU("listResults"),Rd()),this.highlightedNodeId$=this.state$.pipe(FU("highlightedNodeId"),Rd())}setListResults(t){this.ctx.patchState({listResults:t})}selectListResult(t){this.colorAssignments.assignColor(t.tissueBlock.spatialEntityId)}deselectListResult(t){this.colorAssignments.unassignColor(t.tissueBlock.spatialEntityId)}highlightNode(t){this.ctx.patchState({highlightedNodeId:t})}unHighlightNode(){this.ctx.patchState({highlightedNodeId:void 0})}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),T_([this.dataState.tissueBlockData$,this.colorAssignments.colorAssignments$]).pipe(D(([t,e])=>{const n=[],i=[];for(const r of t){const t=e[r.spatialEntityId];t?n.push({selected:!0,color:t.color,tissueBlock:r,rank:t.rank}):i.push({selected:!1,tissueBlock:r})}return(0,_G.sortBy)(n,["rank"]).concat(i)}),$f(t=>this.setListResults(t))).subscribe()}};uX.\u0275fac=function(t){return new(t||uX)(Ci(mq),Ci(No))},uX.\u0275prov=xt({token:uX,factory:uX.\u0275fac}),sw([L$(),ow(0,j$("listResults"))],uX.prototype,"setListResults",null),uX=sw([F$(),wV({name:"listResults",defaults:{listResults:[]}})],uX);const hX=new Set(["Skin","Heart","Kidney","Spleen"]);let dX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.referenceOrgans$=this.state$.pipe(FU("referenceOrgans"),Rd()),this.selectedReferenceOrgans$=this.state$.pipe(FU("selectedReferenceOrgans"),Rd()),this.scene$=this.state$.pipe(FU("scene"),Rd()),this.highlightedId$=this.state$.pipe(FU("highlightedId"),Rd())}setSelectedReferenceOrgans(t){this.ctx.patchState({selectedReferenceOrgans:t})}setReferenceOrgans(t){this.ctx.patchState({referenceOrgans:t})}setScene(t){this.ctx.patchState({scene:t})}sceneNodeClicked({node:t,ctrlClick:e}){t.representation_of&&"http://purl.org/ccf/latest/ccf.owl#VHFSkin"!==t["@id"]&&t.entityId?this.dataState.updateFilter({ontologyTerms:[t.representation_of]}):t.entityId&&this.colorAssignments.assignColor(t["@id"],!e)}sceneNodeHovered(t){this.listResults.highlightNode(t["@id"])}sceneNodeUnhover(){this.listResults.unHighlightNode()}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),this.listResults=this.injector.get(uX),this.dataService.getReferenceOrgans().pipe(D(t=>{const e=new Set(t.map(t=>t.representation_of));return YW.filter(t=>e.has(t.id)).map(t=>Object.assign(Object.assign({},t),{disabled:!1,numResults:0}))}),Gp(1),$f(t=>{this.setReferenceOrgans(t),this.setSelectedReferenceOrgans(t.filter(t=>hX.has(t.organ)))})).subscribe(),T_([this.dataState.sceneData$,this.selectedReferenceOrgans$,this.colorAssignments.colorAssignments$,this.dataService.getReferenceOrgans(),this.listResults.highlightedNodeId$]).pipe(D(([t,e,n,i,r])=>{const s=new Set(e.map(t=>t.id)),o=new Set(i.filter(t=>s.has(t.representation_of)).map(t=>t["@id"]));return t.filter(t=>{var e,n;return(null===(n=null===(e=t.ccf_annotations)||void 0===e?void 0:e.some)||void 0===n?void 0:n.call(e,t=>s.has(t)))||t.reference_organ&&o.has(t.reference_organ)}).map(t=>t.entityId&&(Object.prototype.hasOwnProperty.call(n,t["@id"])||r===t["@id"])?Object.assign(Object.assign({},t),{color:r===t["@id"]?[30,136,229,255]:n[t["@id"]].rgba}):t)}),$f(t=>this.setScene(t))).subscribe()}};dX.\u0275fac=function(t){return new(t||dX)(Ci(mq),Ci(No))},dX.\u0275prov=xt({token:dX,factory:dX.\u0275fac}),sw([L$(),ow(0,j$("selectedReferenceOrgans"))],dX.prototype,"setSelectedReferenceOrgans",null),sw([L$(),ow(0,j$("referenceOrgans"))],dX.prototype,"setReferenceOrgans",null),sw([L$(),ow(0,j$("scene"))],dX.prototype,"setScene",null),dX=sw([F$(),wV({name:"scene",defaults:{scene:[],referenceOrgans:[],selectedReferenceOrgans:[],selectedAnatomicalStructures:[],anatomicalStructureSettings:{}}})],dX);const pX=[cq,Jq,cX,uX,aX,dX];let fX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[zq.forRoot(),_V.forRoot(pX,{developmentMode:!Pq.production}),Yq.forRoot({disabled:Pq.production})]]}),t})(),gX=(()=>{class t{constructor(t){if(t)throw new Error("The core module should only be imported once in the root module")}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:mq,useExisting:Bq}],imports:[[Zv,tG.forRoot({gaToken:Pq.googleAnalyticsToken,appName:"eui"}),uq,hG.forRoot(()=>new cG({basePath:Pq.dbOptions.remoteApiEndpoint})),jq,fX,Vq],jq]}),t})();const mX=["input"],bX=function(t){return{enterDuration:t}},yX=["*"],vX=new oi("mat-checkbox-default-options",{providedIn:"root",factory:_X});function _X(){return{color:"accent",clickAction:"check-indeterminate"}}let wX=0;const xX=_X(),SX={provide:EV,useExisting:pt(()=>OX),multi:!0};class EX{}const CX=By(jy(Fy(Ly(class{constructor(t){this._elementRef=t}}))));let OX=(()=>{class t extends CX{constructor(t,e,n,i,r,s,o){super(t),this._changeDetectorRef=e,this._focusMonitor=n,this._ngZone=i,this._animationMode=s,this._options=o,this.ariaLabel="",this.ariaLabelledby=null,this._uniqueId="mat-checkbox-"+ ++wX,this.id=this._uniqueId,this.labelPosition="after",this.name=null,this.change=new Rc,this.indeterminateChange=new Rc,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||xX,this.color=this.defaultColor=this._options.color||xX.color,this.tabIndex=parseInt(r)||0}get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(t){this._required=md(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{t||Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}ngAfterViewChecked(){}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}get checked(){return this._checked}set checked(t){t!=this.checked&&(this._checked=t,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){const e=md(t);e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(t){const e=t!=this._indeterminate;this._indeterminate=md(t),e&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(t){this.checked=!!t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t}_getAriaChecked(){return this.checked?"true":this.indeterminate?"mixed":"false"}_transitionCheckState(t){let e=this._currentCheckState,n=this._elementRef.nativeElement;if(e!==t&&(this._currentAnimationClass.length>0&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(e,t),this._currentCheckState=t,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);const t=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(t)},1e3)})}}_emitChangeEvent(){const t=new EX;t.source=this,t.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(t),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked}_onInputClick(t){var e;const n=null===(e=this._options)||void 0===e?void 0:e.clickAction;t.stopPropagation(),this.disabled||"noop"===n?!this.disabled&&"noop"===n&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==n&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}focus(t,e){t?this._focusMonitor.focusVia(this._inputElement,t,e):this._inputElement.nativeElement.focus(e)}_onInteractionEvent(t){t.stopPropagation()}_getAnimationClassForCheckStateTransition(t,e){if("NoopAnimations"===this._animationMode)return"";let n="";switch(t){case 0:if(1===e)n="unchecked-checked";else{if(3!=e)return"";n="unchecked-indeterminate"}break;case 2:n=1===e?"unchecked-checked":"unchecked-indeterminate";break;case 1:n=2===e?"checked-unchecked":"checked-indeterminate";break;case 3:n=1===e?"indeterminate-checked":"indeterminate-unchecked"}return`mat-checkbox-anim-${n}`}_syncIndeterminate(t){const e=this._inputElement;e&&(e.nativeElement.indeterminate=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Mg),ea(xu),ni("tabindex"),ea(Ey,8),ea(vX,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-checkbox"]],viewQuery:function(t,e){if(1&t&&(qc(mX,5),qc(Yy,5)),2&t){let t;Wc(t=Yc())&&(e._inputElement=t.first),Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(t,e){2&t&&(il("id",e.id),Ko("tabindex",null),ja("mat-checkbox-indeterminate",e.indeterminate)("mat-checkbox-checked",e.checked)("mat-checkbox-disabled",e.disabled)("mat-checkbox-label-before","before"==e.labelPosition)("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",labelPosition:"labelPosition",name:"name",required:"required",checked:"checked",disabled:"disabled",indeterminate:"indeterminate",ariaDescribedby:["aria-describedby","ariaDescribedby"],value:"value"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[_l([SX]),jo],ngContentSelectors:yX,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(t,e){if(1&t&&(wa(),ra(0,"label",0,1),ra(2,"span",2),ra(3,"input",3,4),fa("change",function(t){return e._onInteractionEvent(t)})("click",function(t){return e._onInputClick(t)}),sa(),ra(5,"span",5),oa(6,"span",6),sa(),oa(7,"span",7),ra(8,"span",8),vn(),ra(9,"svg",9),oa(10,"path",10),sa(),Ve.lFrame.currentNamespace=null,oa(11,"span",11),sa(),sa(),ra(12,"span",12,13),fa("cdkObserveContent",function(){return e._onLabelTextChange()}),ra(14,"span",14),Za(15,"\xa0"),sa(),xa(16),sa(),sa()),2&t){const t=ta(1),n=ta(13);Ko("for",e.inputId),ws(2),ja("mat-checkbox-inner-container-no-side-margin",!n.textContent||!n.textContent.trim()),ws(1),na("id",e.inputId)("required",e.required)("checked",e.checked)("disabled",e.disabled)("tabIndex",e.tabIndex),Ko("value",e.value)("name",e.name)("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby)("aria-checked",e._getAriaChecked())("aria-describedby",e.ariaDescribedby),ws(2),na("matRippleTrigger",t)("matRippleDisabled",e._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Tc(19,bX,"NoopAnimations"===e._animationMode?0:150))}},directives:[Yy,ng],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),t})(),TX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),kX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny,ig,TX],Ny,TX]}),t})(),AX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX]]}),t})();const PX=["trigger"],MX=["panel"];function IX(t,e){if(1&t&&(ra(0,"span",8),Za(1),sa()),2&t){const t=va();ws(1),Ja(t.placeholder)}}function DX(t,e){if(1&t&&(ra(0,"span",12),Za(1),sa()),2&t){const t=va(2);ws(1),Ja(t.triggerValue)}}function RX(t,e){1&t&&xa(0,0,["*ngSwitchCase","true"])}function NX(t,e){1&t&&(ra(0,"span",9),Jo(1,DX,2,1,"span",10),Jo(2,RX,1,0,"ng-content",11),sa()),2&t&&(na("ngSwitch",!!va().customTrigger),ws(2),na("ngSwitchCase",!0))}function LX(t,e){if(1&t){const t=ua();ra(0,"div",13),ra(1,"div",14,15),fa("@transformPanel.done",function(e){return $e(t),va()._panelDoneAnimatingStream.next(e.toState)})("keydown",function(e){return $e(t),va()._handleKeydown(e)}),xa(3,1),sa(),sa()}if(2&t){const t=va();na("@transformPanelWrap",void 0),ws(1),nl("mat-select-panel ",t._getPanelTheme(),""),La("transform-origin",t._transformOrigin)("font-size",t._triggerFontSize,"px"),na("ngClass",t.panelClass)("@transformPanel",t.multiple?"showing-multiple":"showing"),Ko("id",t.id+"-panel")("aria-multiselectable",t.multiple)("aria-label",t.ariaLabel||null)("aria-labelledby",t._getPanelAriaLabelledby())}}const jX=[[["mat-select-trigger"]],"*"],FX=["mat-select-trigger","*"],BX={transformPanelWrap:Vg("transformPanelWrap",[Wg("* => void",Xg("@transformPanel",[qg()],{optional:!0}))]),transformPanel:Vg("transformPanel",[$g("void",Hg({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),$g("showing",Hg({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),$g("showing-multiple",Hg({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),Wg("void => *",zg("120ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void",zg("100ms 25ms linear",Hg({opacity:0})))])};let VX=0;const zX=new oi("mat-select-scroll-strategy"),UX=new oi("MAT_SELECT_CONFIG"),HX={provide:zX,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};class $X{constructor(t,e){this.source=t,this.value=e}}const GX=Fy(By(Ly(Vy(class{constructor(t,e,n,i,r){this._elementRef=t,this._defaultErrorStateMatcher=e,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}})))),WX=new oi("MatSelectTrigger");let qX=(()=>{class t extends GX{constructor(t,e,n,i,r,s,o,a,l,c,u,h,d,p){var f,g,m;super(r,i,o,a,c),this._viewportRuler=t,this._changeDetectorRef=e,this._ngZone=n,this._dir=s,this._parentFormField=l,this._liveAnnouncer=d,this._defaultOptions=p,this._panelOpen=!1,this._compareWith=(t,e)=>t===e,this._uid="mat-select-"+VX++,this._triggerAriaLabelledBy=null,this._destroy=new P,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+VX++,this._panelDoneAnimatingStream=new P,this._overlayPanelClass=(null===(f=this._defaultOptions)||void 0===f?void 0:f.overlayPanelClass)||"",this._focused=!1,this.controlType="mat-select",this._required=!1,this._multiple=!1,this._disableOptionCentering=null!==(m=null===(g=this._defaultOptions)||void 0===g?void 0:g.disableOptionCentering)&&void 0!==m&&m,this.ariaLabel="",this.optionSelectionChanges=Mz(()=>{const t=this.options;return t?t.changes.pipe(Kd(t),Qd(()=>Q(...t.map(t=>t.onSelectionChange)))):this._ngZone.onStable.pipe(Gp(1),Qd(()=>this.optionSelectionChanges))}),this.openedChange=new Rc,this._openedStream=this.openedChange.pipe(Hd(t=>t),D(()=>{})),this._closedStream=this.openedChange.pipe(Hd(t=>!t),D(()=>{})),this.selectionChange=new Rc,this.valueChange=new Rc,this.ngControl&&(this.ngControl.valueAccessor=this),null!=(null==p?void 0:p.typeaheadDebounceInterval)&&(this._typeaheadDebounceInterval=p.typeaheadDebounceInterval),this._scrollStrategyFactory=h,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(u)||0,this.id=this.id}get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(t){this._placeholder=t,this.stateChanges.next()}get required(){return this._required}set required(t){this._required=md(t),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(t){this._multiple=md(t)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(t){this._disableOptionCentering=md(t)}get compareWith(){return this._compareWith}set compareWith(t){this._compareWith=t,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(t){(t!==this._value||this._multiple&&Array.isArray(t))&&(this.options&&this._setSelectionByValue(t),this._value=t)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(t){this._typeaheadDebounceInterval=bd(t)}get id(){return this._id}set id(t){this._id=t||this._uid,this.stateChanges.next()}ngOnInit(){this._selectionModel=new kp(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(Rd(),Wd(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe(Wd(this._destroy)).subscribe(t=>{t.added.forEach(t=>t.select()),t.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Kd(null),Wd(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const t=this._getTriggerAriaLabelledby();if(t!==this._triggerAriaLabelledBy){const e=this._elementRef.nativeElement;this._triggerAriaLabelledBy=t,t?e.setAttribute("aria-labelledby",t):e.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}ngOnChanges(t){t.disabled&&this.stateChanges.next(),t.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(t){this.value=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const t=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&t.reverse(),t.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(t){this.disabled||(this.panelOpen?this._handleOpenKeydown(t):this._handleClosedKeydown(t))}_handleClosedKeydown(t){const e=t.keyCode,n=40===e||38===e||37===e||39===e,i=13===e||32===e,r=this._keyManager;if(!r.isTyping()&&i&&!Qp(t)||(this.multiple||t.altKey)&&n)t.preventDefault(),this.open();else if(!this.multiple){const e=this.selected;r.onKeydown(t);const n=this.selected;n&&e!==n&&this._liveAnnouncer.announce(n.viewValue,1e4)}}_handleOpenKeydown(t){const e=this._keyManager,n=t.keyCode,i=40===n||38===n,r=e.isTyping();if(i&&t.altKey)t.preventDefault(),this.close();else if(r||13!==n&&32!==n||!e.activeItem||Qp(t))if(!r&&this._multiple&&65===n&&t.ctrlKey){t.preventDefault();const e=this.options.some(t=>!t.disabled&&!t.selected);this.options.forEach(t=>{t.disabled||(e?t.select():t.deselect())})}else{const n=e.activeItemIndex;e.onKeydown(t),this._multiple&&i&&t.shiftKey&&e.activeItem&&e.activeItemIndex!==n&&e.activeItem._selectViaInteraction()}else t.preventDefault(),e.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Gp(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this._setSelectionByValue(this.ngControl?this.ngControl.value:this._value),this.stateChanges.next()})}_setSelectionByValue(t){if(this._selectionModel.selected.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&t)Array.isArray(t),t.forEach(t=>this._selectValue(t)),this._sortValues();else{const e=this._selectValue(t);e?this._keyManager.updateActiveItem(e):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectValue(t){const e=this.options.find(e=>{if(this._selectionModel.isSelected(e))return!1;try{return null!=e.value&&this._compareWith(e.value,t)}catch(n){return!1}});return e&&this._selectionModel.select(e),e}_initKeyManager(){this._keyManager=new fg(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.pipe(Wd(this._destroy)).subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const t=Q(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(Wd(t)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Q(...this.options.map(t=>t._stateChanges)).pipe(Wd(t)).subscribe(()=>{this._changeDetectorRef.markForCheck(),this.stateChanges.next()})}_onSelect(t,e){const n=this._selectionModel.isSelected(t);null!=t.value||this._multiple?(n!==t.selected&&(t.selected?this._selectionModel.select(t):this._selectionModel.deselect(t)),e&&this._keyManager.setActiveItem(t),this.multiple&&(this._sortValues(),e&&this.focus())):(t.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(t.value)),n!==this._selectionModel.isSelected(t)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const t=this.options.toArray();this._selectionModel.sort((e,n)=>this.sortComparator?this.sortComparator(e,n,t):t.indexOf(e)-t.indexOf(n)),this.stateChanges.next()}}_propagateChanges(t){let e=null;e=this.multiple?this.selected.map(t=>t.value):this.selected?this.selected.value:t,this._value=e,this.valueChange.emit(e),this._onChange(e),this.selectionChange.emit(this._getChangeEvent(e)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}_canOpen(){var t;return!this._panelOpen&&!this.disabled&&(null===(t=this.options)||void 0===t?void 0:t.length)>0}focus(t){this._elementRef.nativeElement.focus(t)}_getPanelAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();return this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();let n=(e?e+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}_panelDoneAnimating(t){this.openedChange.emit(t)}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return t.\u0275fac=function(e){return new(e||t)(ea(Mp),ea(tc),ea(xu),ea(zy),ea(kl),ea(Op,8),ea(_z,8),ea(Tz,8),ea(aU,8),ea(WV,10),ni("tabindex"),ea(zX),ea(kg),ea(UX,8))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(PX,5),qc(MX,5),qc(If,5)),2&t){let t;Wc(t=Yc())&&(e.trigger=t.first),Wc(t=Yc())&&(e.panel=t.first),Wc(t=Yc())&&(e._overlayDir=t.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[jo,ye]}),t})(),XX=(()=>{class t extends qX{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(t,e,n){const i=this._getItemHeight();return Math.min(Math.max(0,i*t-e+i/2),n)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(t){const e=lv(t,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===t&&1===e?0:cv((t+e)*n,n,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(t){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(t)}_getChangeEvent(t){return new $X(this,t)}_calculateOverlayOffsetX(){const t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),e=this._viewportRuler.getViewportSize(),n=this._isRtl(),i=this.multiple?56:32;let r;if(this.multiple)r=40;else if(this.disableOptionCentering)r=16;else{let t=this._selectionModel.selected[0]||this.options.first;r=t&&t.group?32:16}n||(r*=-1);const s=0-(t.left+r-(n?i:0)),o=t.right+r-e.width+(n?0:i);s>0?r+=s+8:o>0&&(r-=o+8),this._overlayDir.offsetX=Math.round(r),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(t,e,n){const i=this._getItemHeight(),r=(i-this._triggerRect.height)/2,s=Math.floor(256/i);let o;return this.disableOptionCentering?0:(o=0===this._scrollTop?t*i:this._scrollTop===n?(t-(this._getItemCount()-s))*i+(i-(this._getItemCount()*i-256)%i):e-i/2,Math.round(-1*o-r))}_checkOverlayWithinViewport(t){const e=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,s=Math.abs(this._offsetY),o=Math.min(this._getItemCount()*e,256)-s-this._triggerRect.height;o>r?this._adjustPanelUp(o,r):s>i?this._adjustPanelDown(s,i,t):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(t,e){const n=Math.round(t-e);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(t,e,n){const i=Math.round(t-e);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const t=this._getItemHeight(),e=this._getItemCount(),n=Math.min(e*t,256),i=e*t-n;let r;r=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),r+=lv(r,this.options,this.optionGroups);const s=n/2;this._scrollTop=this._calculateOverlayScroll(r,s,i),this._offsetY=this._calculateOverlayOffsetY(r,s,i),this._checkOverlayWithinViewport(i)}_getOriginBasedOnOption(){const t=this._getItemHeight(),e=(t-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-e+t/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-select"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,WX,5),Xc(n,av,5),Xc(n,iv,5)),2&t){let t;Wc(t=Yc())&&(e.customTrigger=t.first),Wc(t=Yc())&&(e.options=t),Wc(t=Yc())&&(e.optionGroups=t)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(t,e){1&t&&fa("keydown",function(t){return e._handleKeydown(t)})("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()}),2&t&&(Ko("id",e.id)("tabindex",e.tabIndex)("aria-controls",e.panelOpen?e.id+"-panel":null)("aria-expanded",e.panelOpen)("aria-label",e.ariaLabel||null)("aria-required",e.required.toString())("aria-disabled",e.disabled.toString())("aria-invalid",e.errorState)("aria-describedby",e._ariaDescribedby||null)("aria-activedescendant",e._getAriaActiveDescendant()),ja("mat-select-disabled",e.disabled)("mat-select-invalid",e.errorState)("mat-select-required",e.required)("mat-select-empty",e.empty)("mat-select-multiple",e.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[_l([{provide:Qz,useExisting:t},{provide:Jy,useExisting:t}]),jo],ngContentSelectors:FX,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(t,e){if(1&t&&(wa(jX),ra(0,"div",0,1),fa("click",function(){return e.toggle()}),ra(3,"div",2),Jo(4,IX,2,1,"span",3),Jo(5,NX,3,2,"span",4),sa(),ra(6,"div",5),oa(7,"div",6),sa(),sa(),Jo(8,LX,4,14,"ng-template",7),fa("backdropClick",function(){return e.close()})("attach",function(){return e._onAttached()})("detach",function(){return e.close()})),2&t){const t=ta(1);Ko("aria-owns",e.panelOpen?e.id+"-panel":null),ws(3),na("ngSwitch",e.empty),Ko("id",e._valueId),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1),ws(3),na("cdkConnectedOverlayPanelClass",e._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",e._scrollStrategy)("cdkConnectedOverlayOrigin",t)("cdkConnectedOverlayOpen",e.panelOpen)("cdkConnectedOverlayPositions",e._positions)("cdkConnectedOverlayMinWidth",null==e._triggerRect?null:e._triggerRect.width)("cdkConnectedOverlayOffsetY",e._offsetY)}},directives:[Mf,Eh,Ch,If,Oh,mh],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[BX.transformPanelWrap,BX.transformPanel]},changeDetection:0}),t})(),YX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[HX],imports:[[Rh,Rf,uv,Ny],Ip,cU,uv,Ny]}),t})(),KX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,cU,YX]]}),t})();var QX=n(25430),ZX=n(39053),JX=n(26202);const tY=["tooltipTemplate"],eY=["leftOuterSelectionBar"],nY=["rightOuterSelectionBar"],iY=["fullBar"],rY=["selectionBar"],sY=["minHandle"],oY=["maxHandle"],aY=["floorLabel"],lY=["ceilLabel"],cY=["minHandleLabel"],uY=["maxHandleLabel"],hY=["combinedLabel"],dY=["ticksElement"];function pY(t,e){if(1&t&&oa(0,"ng5-slider-tooltip-wrapper",31),2&t){const t=va().$implicit;na("template",va().tooltipTemplate)("tooltip",t.valueTooltip)("placement",t.valueTooltipPlacement)("content",t.value)}}function fY(t,e){1&t&&oa(0,"span",32),2&t&&na("innerHTML",va().$implicit.legend,vr)}const gY=function(t){return{"ng5-slider-selected":t}};function mY(t,e){if(1&t&&(ra(0,"span",27),oa(1,"ng5-slider-tooltip-wrapper",28),Jo(2,pY,1,4,"ng5-slider-tooltip-wrapper",29),Jo(3,fY,1,1,"span",30),sa()),2&t){const t=e.$implicit,n=va();na("ngClass",Tc(7,gY,t.selected))("ngStyle",t.style),ws(1),na("template",n.tooltipTemplate)("tooltip",t.tooltip)("placement",t.tooltipPlacement),ws(1),na("ngIf",null!=t.value),ws(1),na("ngIf",null!=t.legend)}}function bY(t,e){}function yY(t,e){1&t&&Jo(0,bY,0,0,"ng-template")}const vY=function(t,e,n){return{tooltip:t,placement:e,content:n}};function _Y(t,e){if(1&t&&(aa(0),Jo(1,yY,1,0,void 0,1),la()),2&t){const t=va();ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",kc(2,vY,t.tooltip,t.placement,t.content))}}function wY(t,e){if(1&t&&(aa(0),ra(1,"div",2),Za(2),sa(),la()),2&t){const t=va();ws(1),Ko("title",t.tooltip)("data-tooltip-placement",t.placement),ws(1),tl(" ",t.content," ")}}const xY={Min:0,Max:1};xY[xY.Min]="Min",xY[xY.Max]="Max";const SY={Low:0,High:1,Floor:2,Ceil:3,TickValue:4};SY[SY.Low]="Low",SY[SY.High]="High",SY[SY.Floor]="Floor",SY[SY.Ceil]="Ceil",SY[SY.TickValue]="TickValue";class EY{constructor(){this.floor=0,this.ceil=null,this.step=1,this.minRange=null,this.maxRange=null,this.pushRange=!1,this.minLimit=null,this.maxLimit=null,this.translate=null,this.combineLabels=null,this.getLegend=null,this.stepsArray=null,this.bindIndexForStepsArray=!1,this.draggableRange=!1,this.draggableRangeOnly=!1,this.showSelectionBar=!1,this.showSelectionBarEnd=!1,this.showSelectionBarFromValue=null,this.showOuterSelectionBars=!1,this.hidePointerLabels=!1,this.hideLimitLabels=!1,this.autoHideLimitLabels=!0,this.readOnly=!1,this.disabled=!1,this.mouseEventsInterval=50,this.touchEventsInterval=50,this.inputEventsInterval=100,this.outputEventsInterval=100,this.showTicks=!1,this.showTicksValues=!1,this.tickStep=null,this.tickValueStep=1,this.ticksArray=null,this.ticksTooltip=null,this.ticksValuesTooltip=null,this.vertical=!1,this.getSelectionBarColor=null,this.getTickColor=null,this.getPointerColor=null,this.keyboardSupport=!0,this.scale=1,this.enforceStep=!0,this.enforceRange=!0,this.noSwitching=!1,this.onlyBindHandles=!1,this.rightToLeft=!1,this.reversedControls=!1,this.boundPointerLabels=!0,this.logScale=!1,this.customValueToPosition=null,this.customPositionToValue=null,this.precisionLimit=12,this.selectionBarGradient=null,this.ariaLabel=null,this.ariaLabelledBy=null,this.ariaLabelHigh=null,this.ariaLabelledByHigh=null,this.handleDimension=null,this.barDimension=null,this.animate=!0}}class CY{}class OY{static isNullOrUndefined(t){return null==t}static linearValueToPosition(t,e,n){return(t-e)/(n-e)}static logValueToPosition(t,e,n){return((t=Math.log(t))-(e=Math.log(e)))/((n=Math.log(n))-e)}static linearPositionToValue(t,e,n){return t*(n-e)+e}static logPositionToValue(t,e,n){return e=Math.log(e),n=Math.log(n),Math.exp(t*(n-e)+e)}static findStepIndex(t,e){const n=e.map(e=>Math.abs(t-e.value));let i=0;for(let r=0;r{r.events.next(t)};return t.addEventListener(e,s,{passive:!0,capture:!1}),r.teardownCallback=()=>{t.removeEventListener(e,s,{passive:!0,capture:!1})},r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}detachEventListener(t){OY.isNullOrUndefined(t.eventsSubscription)||(t.eventsSubscription.unsubscribe(),t.eventsSubscription=null),OY.isNullOrUndefined(t.events)||(t.events.complete(),t.events=null),OY.isNullOrUndefined(t.teardownCallback)||(t.teardownCallback(),t.teardownCallback=null)}attachEventListener(t,e,n,i){const r=new AY;return r.eventName=e,r.events=new QX.xQ,r.teardownCallback=this.renderer.listen(t,e,t=>{r.events.next(t)}),r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}}let MY=(()=>{class t{constructor(t,e,n){this.elemRef=t,this.renderer=e,this.changeDetectionRef=n,this._position=0,this._dimension=0,this._alwaysHide=!1,this._vertical=!1,this._scale=1,this.opacity=1,this.visibility="visible",this.left="",this.bottom="",this.height="",this.width="",this.eventListeners=[],this.eventListenerHelper=new PY(this.renderer)}get position(){return this._position}get dimension(){return this._dimension}get alwaysHide(){return this._alwaysHide}get vertical(){return this._vertical}get scale(){return this._scale}setAlwaysHide(t){this._alwaysHide=t,this.visibility=t?"hidden":"visible"}hide(){this.opacity=0}show(){this.alwaysHide||(this.opacity=1)}isVisible(){return!this.alwaysHide&&0!==this.opacity}setVertical(t){this._vertical=t,this._vertical?(this.left="",this.width=""):(this.bottom="",this.height="")}setScale(t){this._scale=t}setPosition(t){this._position!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._position=t,this._vertical?this.bottom=Math.round(t)+"px":this.left=Math.round(t)+"px"}calculateDimension(){const t=this.getBoundingClientRect();this._dimension=this.vertical?(t.bottom-t.top)*this.scale:(t.right-t.left)*this.scale}setDimension(t){this._dimension!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._dimension=t,this._vertical?this.height=Math.round(t)+"px":this.width=Math.round(t)+"px"}getBoundingClientRect(){return this.elemRef.nativeElement.getBoundingClientRect()}on(t,e,n){const i=this.eventListenerHelper.attachEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}onPassive(t,e,n){const i=this.eventListenerHelper.attachPassiveEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}off(t){let e,n;OY.isNullOrUndefined(t)?(e=[],n=this.eventListeners):(e=this.eventListeners.filter(e=>e.eventName!==t),n=this.eventListeners.filter(e=>e.eventName===t));for(const i of n)this.eventListenerHelper.detachEventListener(i);this.eventListeners=e}isRefDestroyed(){return OY.isNullOrUndefined(this.changeDetectionRef)||this.changeDetectionRef.destroyed}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderElement",""]],hostVars:12,hostBindings:function(t,e){2&t&&La("opacity",e.opacity)("visibility",e.visibility)("left",e.left)("bottom",e.bottom)("height",e.height)("width",e.width)}}),t})(),IY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this.active=!1,this.role="",this.tabindex="",this.ariaOrientation="",this.ariaLabel="",this.ariaLabelledBy="",this.ariaValueNow="",this.ariaValueText="",this.ariaValueMin="",this.ariaValueMax=""}focus(){this.elemRef.nativeElement.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderHandle",""]],hostVars:11,hostBindings:function(t,e){2&t&&(Ko("role",e.role)("tabindex",e.tabindex)("aria-orientation",e.ariaOrientation)("aria-label",e.ariaLabel)("aria-labelledby",e.ariaLabelledBy)("aria-valuenow",e.ariaValueNow)("aria-valuetext",e.ariaValueText)("aria-valuemin",e.ariaValueMin)("aria-valuemax",e.ariaValueMax),ja("ng5-slider-active",e.active))},features:[jo]}),t})(),DY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this._value=null}get value(){return this._value}setValue(t){let e=!1;!this.alwaysHide&&(OY.isNullOrUndefined(this.value)||this.value.length!==t.length||this.value.length>0&&0===this.dimension)&&(e=!0),this._value=t,this.elemRef.nativeElement.innerHTML=t,e&&this.calculateDimension()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderLabel",""]],features:[jo]}),t})();class RY{constructor(){this.selected=!1,this.style={},this.tooltip=null,this.tooltipPlacement=null,this.value=null,this.valueTooltip=null,this.valueTooltipPlacement=null,this.legend=null}}class NY{constructor(){this.active=!1,this.value=0,this.difference=0,this.position=0,this.lowLimit=0,this.highLimit=0}}class LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue}}class jY extends LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue&&t.forceChange===e.forceChange}}const FY={provide:EV,useExisting:pt(()=>BY),multi:!0};let BY=(()=>{class t{constructor(t,e,n,i){this.renderer=t,this.elementRef=e,this.changeDetectionRef=n,this.zone=i,this.value=null,this.valueChange=new Rc,this.highValue=null,this.highValueChange=new Rc,this.options=new EY,this.userChangeStart=new Rc,this.userChange=new Rc,this.userChangeEnd=new Rc,this.initHasRun=!1,this.inputModelChangeSubject=new QX.xQ,this.inputModelChangeSubscription=null,this.outputModelChangeSubject=new QX.xQ,this.outputModelChangeSubscription=null,this.viewLowValue=null,this.viewHighValue=null,this.viewOptions=new EY,this.handleHalfDimension=0,this.maxHandlePosition=0,this.currentTrackingPointer=null,this.currentFocusPointer=null,this.firstKeyDown=!1,this.touchId=null,this.dragging=new NY,this.sliderElementVerticalClass=!1,this.sliderElementAnimateClass=!1,this.sliderElementDisabledAttr=null,this.barStyle={},this.minPointerStyle={},this.maxPointerStyle={},this.fullBarTransparentClass=!1,this.selectionBarDraggableClass=!1,this.ticksUnderValuesClass=!1,this.intermediateTicks=!1,this.ticks=[],this.eventListenerHelper=null,this.onMoveEventListener=null,this.onEndEventListener=null,this.resizeObserver=null,this.onTouchedCallback=null,this.onChangeCallback=null,this.eventListenerHelper=new PY(this.renderer)}set manualRefresh(t){this.unsubscribeManualRefresh(),this.manualRefreshSubscription=t.subscribe(()=>{setTimeout(()=>this.calculateViewDimensionsAndDetectChanges())})}set triggerFocus(t){this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=t.subscribe(t=>{this.focusPointer(t)})}get range(){return!OY.isNullOrUndefined(this.value)&&!OY.isNullOrUndefined(this.highValue)}get showTicks(){return this.viewOptions.showTicks}ngOnInit(){this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState()}ngAfterViewInit(){this.applyOptions(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval),this.subscribeOutputModelChangeSubject(this.viewOptions.outputEventsInterval),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}ngOnChanges(t){OY.isNullOrUndefined(t.options)||this.onChangeOptions(),(!OY.isNullOrUndefined(t.value)||!OY.isNullOrUndefined(t.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}ngOnDestroy(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}writeValue(t){t instanceof Array?(this.value=t[0],this.highValue=t[1]):this.value=t,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}registerOnChange(t){this.onChangeCallback=t}registerOnTouched(t){this.onTouchedCallback=t}setDisabledState(t){this.viewOptions.disabled=t,this.updateDisabledState()}onResize(t){this.calculateViewDimensionsAndDetectChanges()}subscribeInputModelChangeSubject(t){this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),(0,ZX.filter)(t=>!t.forceChange&&!t.internalChange),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.applyInputModelChange(t))}subscribeOutputModelChangeSubject(t){this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.publishOutputModelChange(t))}subscribeResizeObserver(){TY.isResizeObserverAvailable()&&(this.resizeObserver=new ResizeObserver(()=>this.calculateViewDimensionsAndDetectChanges()),this.resizeObserver.observe(this.elementRef.nativeElement))}unsubscribeResizeObserver(){TY.isResizeObserverAvailable()&&null!==this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}unsubscribeOnMove(){OY.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}unsubscribeOnEnd(){OY.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null)}unsubscribeInputModelChangeSubject(){OY.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}unsubscribeOutputModelChangeSubject(){OY.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}unsubscribeManualRefresh(){OY.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}unsubscribeTriggerFocus(){OY.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}getPointerElement(t){return t===xY.Min?this.minHandleElement:t===xY.Max?this.maxHandleElement:null}getCurrentTrackingValue(){return this.currentTrackingPointer===xY.Min?this.viewLowValue:this.currentTrackingPointer===xY.Max?this.viewHighValue:null}modelValueToViewValue(t){return OY.isNullOrUndefined(t)?NaN:OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+t:OY.findStepIndex(+t,this.viewOptions.stepsArray)}viewValueToModelValue(t){return OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?t:this.getStepValue(t)}getStepValue(t){const e=this.viewOptions.stepsArray[t];return OY.isNullOrUndefined(e)?NaN:e.value}applyViewChange(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!0})}applyInputModelChange(t){const e=this.normaliseModelValues(t),n=!LY.compare(t,e);n&&(this.value=e.value,this.highValue=e.highValue),this.viewLowValue=this.modelValueToViewValue(e.value),this.viewHighValue=this.range?this.modelValueToViewValue(e.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:e.value,highValue:e.highValue,forceChange:n,userEventInitiated:!1})}publishOutputModelChange(t){const e=()=>{this.valueChange.emit(t.value),this.range&&this.highValueChange.emit(t.highValue),OY.isNullOrUndefined(this.onChangeCallback)||this.onChangeCallback(this.range?[t.value,t.highValue]:t.value),OY.isNullOrUndefined(this.onTouchedCallback)||this.onTouchedCallback(this.range?[t.value,t.highValue]:t.value)};t.userEventInitiated?(e(),this.userChange.emit(this.getChangeContext())):setTimeout(()=>{e()})}normaliseModelValues(t){const e=new LY;if(e.value=t.value,e.highValue=t.highValue,this.viewOptions.enforceStep&&(e.value=this.roundStep(e.value),this.range&&(e.highValue=this.roundStep(e.highValue))),!OY.isNullOrUndefined(this.viewOptions.stepsArray)||!this.viewOptions.enforceRange)return e;if(e.value=kY.clampToRange(e.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(e.highValue=kY.clampToRange(e.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&t.value>t.highValue)if(this.viewOptions.noSwitching)e.value=e.highValue;else{const n=t.value;e.value=t.highValue,e.highValue=n}return e}renormaliseModelValues(){const t={value:this.value,highValue:this.highValue},e=this.normaliseModelValues(t);LY.compare(e,t)||(this.value=e.value,this.highValue=e.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!0,userEventInitiated:!1}))}onChangeOptions(){if(!this.initHasRun)return;const t=this.viewOptions.inputEventsInterval,e=this.viewOptions.outputEventsInterval;this.applyOptions(),t!==this.viewOptions.inputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval)),e!==this.viewOptions.outputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.outputEventsInterval)),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider()}applyOptions(){if(this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!OY.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!OY.isNullOrUndefined(this.viewOptions.tickStep)||!OY.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),OY.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),OY.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=(t,e)=>t+" - "+e),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}applyStepsArrayOptions(){this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(this.viewOptions.bindIndexForStepsArray?this.getStepValue(t):t)),this.viewOptions.getLegend=t=>this.viewOptions.stepsArray[t].legend}applyFloorCeilOptions(){if(OY.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),OY.isNullOrUndefined(this.viewOptions.ceil)||OY.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(t))}resetSlider(){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.unbindEvents(),this.manageEventsBindings(),this.updateDisabledState(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}focusPointer(t){t!==xY.Min&&t!==xY.Max&&(t=xY.Min),t===xY.Min?this.minHandleElement.focus():this.range&&t===xY.Max&&this.maxHandleElement.focus()}refocusPointerIfNeeded(){OY.isNullOrUndefined(this.currentFocusPointer)||(this.onPointerFocus(this.currentFocusPointer),this.getPointerElement(this.currentFocusPointer).focus())}manageElementsStyle(){this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);const t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(()=>{this.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(()=>{this.sliderElementAnimateClass=this.viewOptions.animate})}manageEventsBindings(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}updateDisabledState(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}updateVerticalState(){this.sliderElementVerticalClass=this.viewOptions.vertical;for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.setVertical(this.viewOptions.vertical)}updateScale(){for(const t of this.getAllSliderElements())t.setScale(this.viewOptions.scale)}getAllSliderElements(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}initHandles(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}addAccessibility(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.viewOptions.vertical&&(this.minHandleElement.ariaOrientation="vertical"),OY.isNullOrUndefined(this.viewOptions.ariaLabel)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical?"vertical":"horizontal",OY.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}updateAriaAttributes(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,SY.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,SY.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}calculateViewDimensions(){OY.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);const t=this.minHandleElement.dimension;this.handleHalfDimension=t/2,OY.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-t,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}calculateViewDimensionsAndDetectChanges(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}isRefDestroyed(){return this.changeDetectionRef.destroyed}updateTicksScale(){if(!this.viewOptions.showTicks)return;const t=OY.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,e=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();const n=t.map(t=>{let n=this.valueToPosition(t);this.viewOptions.vertical&&(n=this.maxHandlePosition-n);const i=e+"("+Math.round(n)+"px)",r=new RY;if(r.selected=this.isTickSelected(t),r.style={"-webkit-transform":i,"-moz-transform":i,"-o-transform":i,"-ms-transform":i,transform:i},r.selected&&!OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)&&(r.style["background-color"]=this.getSelectionBarColor()),!r.selected&&!OY.isNullOrUndefined(this.viewOptions.getTickColor)&&(r.style["background-color"]=this.getTickColor(t)),OY.isNullOrUndefined(this.viewOptions.ticksTooltip)||(r.tooltip=this.viewOptions.ticksTooltip(t),r.tooltipPlacement=this.viewOptions.vertical?"right":"top"),this.viewOptions.showTicksValues&&t%this.viewOptions.tickValueStep==0&&(r.value=this.getDisplayValue(t,SY.TickValue),OY.isNullOrUndefined(this.viewOptions.ticksValuesTooltip)||(r.valueTooltip=this.viewOptions.ticksValuesTooltip(t),r.valueTooltipPlacement=this.viewOptions.vertical?"right":"top")),!OY.isNullOrUndefined(this.viewOptions.getLegend)){const e=this.viewOptions.getLegend(t);OY.isNullOrUndefined(e)||(r.legend=e)}return r});if(OY.isNullOrUndefined(this.ticks)||this.ticks.length!==n.length)this.ticks=n;else for(let i=0;i=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&t<=this.viewLowValue)return!0}else{const e=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>e&&t>=e&&t<=this.viewLowValue)return!0;if(this.viewLowValue=this.viewLowValue)return!0}return!!(this.range&&t>=this.viewLowValue&&t<=this.viewHighValue)}updateFloorLabel(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,SY.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}updateCeilLabel(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,SY.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}updateHandles(t,e){t===xY.Min?this.updateLowHandle(e):t===xY.Max&&this.updateHighHandle(e),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}getHandleLabelPos(t,e){const n=t===xY.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,i=e-n/2+this.handleHalfDimension,r=this.fullBarElement.dimension-n;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&t===xY.Min||!this.viewOptions.rightToLeft&&t===xY.Max?Math.min(i,r):Math.min(Math.max(i,0),r):i}updateLowHandle(t){this.minHandleElement.setPosition(t),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,SY.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Min,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(xY.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateHighHandle(t){this.maxHandleElement.setPosition(t),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,SY.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Max,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(xY.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateFloorAndCeilLabelsVisibility(){if(this.viewOptions.hidePointerLabels)return;let t=!1,e=!1;const n=this.isLabelBelowFloorLabel(this.minHandleLabelElement),i=this.isLabelAboveCeilLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),s=this.isLabelBelowFloorLabel(this.combinedLabelElement),o=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(n?(t=!0,this.floorLabelElement.hide()):(t=!1,this.floorLabelElement.show()),i?(e=!0,this.ceilLabelElement.hide()):(e=!1,this.ceilLabelElement.show()),this.range){const i=this.combinedLabelElement.isVisible()?o:r,a=this.combinedLabelElement.isVisible()?s:n;i?this.ceilLabelElement.hide():e||this.ceilLabelElement.show(),a?this.floorLabelElement.hide():t||this.floorLabelElement.show()}}isLabelBelowFloorLabel(t){const e=t.position,n=this.floorLabelElement.position;return this.viewOptions.rightToLeft?e+t.dimension>=n-2:e<=n+this.floorLabelElement.dimension+2}isLabelAboveCeilLabel(t){const e=t.position,n=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?e<=n+this.ceilLabelElement.dimension+2:e+t.dimension>=n-2}updateSelectionBar(){let t=0,e=0;const n=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,i=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)e=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),t=i;else if(OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))n?(e=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),t=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(e=this.minHandleElement.position+this.handleHalfDimension,t=0);else{const n=this.viewOptions.showSelectionBarFromValue,i=this.valueToPosition(n);(this.viewOptions.rightToLeft?this.viewLowValue<=n:this.viewLowValue>n)?(e=this.minHandleElement.position-i,t=i+this.handleHalfDimension):(e=i-this.minHandleElement.position,t=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(e),this.selectionBarElement.setPosition(t),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(t),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.leftOuterSelectionBarElement.setPosition(t+e)):(this.leftOuterSelectionBarElement.setDimension(t),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.rightOuterSelectionBarElement.setPosition(t+e))),OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!OY.isNullOrUndefined(this.viewOptions.selectionBarGradient)){const i=OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),r=i-t>0&&!n||i-t<=0&&n;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?r?"bottom":"top":r?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(i+e+t+(r?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=i-t+(r?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{const t=this.getSelectionBarColor();this.barStyle={backgroundColor:t}}}getSelectionBarColor(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}getPointerColor(t){return this.viewOptions.getPointerColor(t===xY.Max?this.highValue:this.value,t)}getTickColor(t){return this.viewOptions.getTickColor(t)}updateCombinedLabel(){let t=null;if(t=this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position,t){const t=this.getDisplayValue(this.viewLowValue,SY.Low),e=this.getDisplayValue(this.viewHighValue,SY.High),n=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(e,t):this.viewOptions.combineLabels(t,e);this.combinedLabelElement.setValue(n);const i=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(i),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}getDisplayValue(t,e){return!OY.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(t=this.getStepValue(t)),this.viewOptions.translate(t,e)}roundStep(t,e){const n=OY.isNullOrUndefined(e)?this.viewOptions.step:e;let i=kY.roundToPrecisionLimit((t-this.viewOptions.floor)/n,this.viewOptions.precisionLimit);return i=Math.round(i)*n,kY.roundToPrecisionLimit(this.viewOptions.floor+i,this.viewOptions.precisionLimit)}valueToPosition(t){let e=OY.linearValueToPosition;OY.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(e=OY.logValueToPosition):e=this.viewOptions.customValueToPosition;let n=e(t=kY.clampToRange(t,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(n)&&(n=0),this.viewOptions.rightToLeft&&(n=1-n),n*this.maxHandlePosition}positionToValue(t){let e=t/this.maxHandlePosition;this.viewOptions.rightToLeft&&(e=1-e);let n=OY.linearPositionToValue;OY.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(n=OY.logPositionToValue):n=this.viewOptions.customPositionToValue;const i=n(e,this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(i)?0:i}getEventXY(t,e){if(t instanceof MouseEvent)return this.viewOptions.vertical?t.clientY:t.clientX;let n=0;const i=t.touches;if(!OY.isNullOrUndefined(e))for(let r=0;ri?xY.Max:this.viewOptions.rightToLeft?e>this.minHandleElement.position?xY.Min:xY.Max:ethis.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.on("mousedown",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.on("mousedown",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.on("mousedown",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.on("mousedown",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0,!0)))),this.viewOptions.onlyBindHandles||this.selectionBarElement.onPassive("touchstart",e=>this.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.onPassive("touchstart",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.onPassive("touchstart",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.onPassive("touchstart",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.onPassive("touchstart",t=>this.onStart(null,t,!1,!1,!0,!0)))),this.viewOptions.keyboardSupport&&(this.minHandleElement.on("focus",()=>this.onPointerFocus(xY.Min)),this.range&&this.maxHandleElement.on("focus",()=>this.onPointerFocus(xY.Max)))}unbindEvents(){this.unsubscribeOnMove(),this.unsubscribeOnEnd();for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.off()}onBarStart(t,e,n,i,r,s,o){e?this.onDragStart(t,n,i,r):this.onStart(t,n,i,r,s,o)}onStart(t,e,n,i,r,s){e.stopPropagation(),(!TY.isTouchEvent(e)||!JX.Z.hasSupport)&&e.preventDefault(),this.calculateViewDimensions(),OY.isNullOrUndefined(t)&&(t=this.getNearestHandle(e)),this.currentTrackingPointer=t;const o=this.getPointerElement(t);if(o.active=!0,this.viewOptions.keyboardSupport&&o.focus(),n){this.unsubscribeOnMove();const t=t=>this.dragging.active?this.onDragMove(t):this.onMove(t);this.onMoveEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchmove",t,this.viewOptions.touchEventsInterval):this.eventListenerHelper.attachEventListener(document,"mousemove",t,this.viewOptions.mouseEventsInterval)}if(i){this.unsubscribeOnEnd();const t=t=>this.onEnd(t);this.onEndEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchend",t):this.eventListenerHelper.attachEventListener(document,"mouseup",t)}this.userChangeStart.emit(this.getChangeContext()),TY.isTouchEvent(e)&&!OY.isNullOrUndefined(e.changedTouches)&&OY.isNullOrUndefined(this.touchId)&&(this.touchId=e.changedTouches[0].identifier),r&&this.onMove(e,!0),s&&this.onEnd(e)}onMove(t,e){let n=null;if(TY.isTouchEvent(t)){const e=t.changedTouches;for(let t=0;t=this.maxHandlePosition?r=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(r=this.positionToValue(i),r=e&&!OY.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(r,this.viewOptions.tickStep):this.roundStep(r)),this.positionTrackingHandle(r)}onEnd(t){TY.isTouchEvent(t)&&t.changedTouches[0].identifier!==this.touchId||(this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext()))}onPointerFocus(t){const e=this.getPointerElement(t);e.on("blur",()=>this.onPointerBlur(e)),e.on("keydown",t=>this.onKeyboardEvent(t)),e.on("keyup",()=>this.onKeyUp()),e.active=!0,this.currentTrackingPointer=t,this.currentFocusPointer=t,this.firstKeyDown=!0}onKeyUp(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}onPointerBlur(t){t.off("blur"),t.off("keydown"),t.off("keyup"),t.active=!1,OY.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}getKeyActions(t){const e=this.viewOptions.ceil-this.viewOptions.floor;let n=t+this.viewOptions.step,i=t-this.viewOptions.step,r=t+e/10,s=t-e/10;this.viewOptions.reversedControls&&(n=t-this.viewOptions.step,i=t+this.viewOptions.step,r=t-e/10,s=t+e/10);const o={UP:n,DOWN:i,LEFT:i,RIGHT:n,PAGEUP:r,PAGEDOWN:s,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(o.LEFT=n,o.RIGHT=i,this.viewOptions.vertical&&(o.UP=i,o.DOWN=n)),o}onKeyboardEvent(t){const e=this.getCurrentTrackingValue(),n=OY.isNullOrUndefined(t.keyCode)?t.which:t.keyCode,i=this.getKeyActions(e)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[n]];if(OY.isNullOrUndefined(i)||OY.isNullOrUndefined(this.currentTrackingPointer))return;t.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));const r=kY.clampToRange(i,this.viewOptions.floor,this.viewOptions.ceil),s=this.roundStep(r);if(this.viewOptions.draggableRangeOnly){const t=this.viewHighValue-this.viewLowValue;let e,n;this.currentTrackingPointer===xY.Min?(e=s,n=s+t,n>this.viewOptions.ceil&&(n=this.viewOptions.ceil,e=n-t)):this.currentTrackingPointer===xY.Max&&(n=s,e=s-t,e=this.maxHandlePosition-n;let a,l;if(e<=i){if(0===r.position)return;a=this.getMinValue(e,!0,!1),l=this.getMaxValue(e,!0,!1)}else if(o){if(s.position===this.maxHandlePosition)return;l=this.getMaxValue(e,!0,!0),a=this.getMinValue(e,!0,!0)}else a=this.getMinValue(e,!1,!1),l=this.getMaxValue(e,!1,!1);this.positionTrackingBar(a,l)}positionTrackingBar(t,e){!OY.isNullOrUndefined(this.viewOptions.minLimit)&&tthis.viewOptions.maxLimit&&(t=kY.roundToPrecisionLimit((e=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=t,this.viewHighValue=e,this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(t)),this.updateHandles(xY.Max,this.valueToPosition(e))}positionTrackingHandle(t){t=this.applyMinMaxLimit(t),this.range&&(this.viewOptions.pushRange?t=this.applyPushRange(t):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===xY.Min&&t>this.viewHighValue?t=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===xY.Max&&tthis.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(xY.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=xY.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===xY.Max&&tthis.viewOptions.maxLimit?this.viewOptions.maxLimit:t}applyMinMaxRange(t){const e=Math.abs(t-(this.currentTrackingPointer===xY.Min?this.viewHighValue:this.viewLowValue));if(!OY.isNullOrUndefined(this.viewOptions.minRange)&&ethis.viewOptions.maxRange){if(this.currentTrackingPointer===xY.Min)return kY.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===xY.Max)return kY.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return t}applyPushRange(t){const e=this.currentTrackingPointer===xY.Min?this.viewHighValue-t:t-this.viewLowValue,n=OY.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,i=this.viewOptions.maxRange;return ei&&(this.currentTrackingPointer===xY.Min?(this.viewHighValue=kY.roundToPrecisionLimit(t+i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===xY.Max&&(this.viewLowValue=kY.roundToPrecisionLimit(t-i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),t}getChangeContext(){const t=new CY;return t.pointerType=this.currentTrackingPointer,t.value=+this.value,this.range&&(t.highValue=+this.highValue),t}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl),ea(tc),ea(xu))},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,tY,5),2&t){let t;Wc(t=Yc())&&(e.tooltipTemplate=t.first)}},viewQuery:function(t,e){if(1&t&&(qc(eY,5,MY),qc(nY,5,MY),qc(iY,5,MY),qc(rY,5,MY),qc(sY,5,IY),qc(oY,5,IY),qc(aY,5,DY),qc(lY,5,DY),qc(cY,5,DY),qc(uY,5,DY),qc(hY,5,DY),qc(dY,5,MY)),2&t){let t;Wc(t=Yc())&&(e.leftOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.rightOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.fullBarElement=t.first),Wc(t=Yc())&&(e.selectionBarElement=t.first),Wc(t=Yc())&&(e.minHandleElement=t.first),Wc(t=Yc())&&(e.maxHandleElement=t.first),Wc(t=Yc())&&(e.floorLabelElement=t.first),Wc(t=Yc())&&(e.ceilLabelElement=t.first),Wc(t=Yc())&&(e.minHandleLabelElement=t.first),Wc(t=Yc())&&(e.maxHandleLabelElement=t.first),Wc(t=Yc())&&(e.combinedLabelElement=t.first),Wc(t=Yc())&&(e.ticksElement=t.first)}},hostAttrs:[1,"ng5-slider"],hostVars:5,hostBindings:function(t,e){1&t&&fa("resize",function(t){return e.onResize(t)},!1,Mr),2&t&&(Ko("disabled",e.sliderElementDisabledAttr),ja("vertical",e.sliderElementVerticalClass)("animate",e.sliderElementAnimateClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},features:[_l([FY]),ye],decls:29,vars:13,consts:[["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-left-out-selection"],["leftOuterSelectionBar",""],[1,"ng5-slider-span","ng5-slider-bar"],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-right-out-selection"],["rightOuterSelectionBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-full-bar"],["fullBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-selection-bar"],["selectionBar",""],[1,"ng5-slider-span","ng5-slider-bar","ng5-slider-selection",3,"ngStyle"],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-min",3,"ngStyle"],["minHandle",""],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-max",3,"ngStyle"],["maxHandle",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-floor"],["floorLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-ceil"],["ceilLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-value"],["minHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-high"],["maxHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-combined"],["combinedLabel",""],["ng5SliderElement","",1,"ng5-slider-ticks",3,"hidden"],["ticksElement",""],["class","ng5-slider-tick",3,"ngClass","ngStyle",4,"ngFor","ngForOf"],[1,"ng5-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],["class","ng5-slider-span ng5-slider-tick-value",3,"template","tooltip","placement","content",4,"ngIf"],["class","ng5-slider-span ng5-slider-tick-legend",3,"innerHTML",4,"ngIf"],[1,"ng5-slider-span","ng5-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ng5-slider-span","ng5-slider-tick-legend",3,"innerHTML"]],template:function(t,e){1&t&&(ra(0,"span",0,1),oa(2,"span",2),sa(),ra(3,"span",3,4),oa(5,"span",2),sa(),ra(6,"span",5,6),oa(8,"span",2),sa(),ra(9,"span",7,8),oa(11,"span",9),sa(),oa(12,"span",10,11),oa(14,"span",12,13),oa(16,"span",14,15),oa(18,"span",16,17),oa(20,"span",18,19),oa(22,"span",20,21),oa(24,"span",22,23),ra(26,"span",24,25),Jo(28,mY,4,9,"span",26),sa()),2&t&&(ws(6),ja("ng5-slider-transparent",e.fullBarTransparentClass),ws(3),ja("ng5-slider-draggable",e.selectionBarDraggableClass),ws(2),na("ngStyle",e.barStyle),ws(1),na("ngStyle",e.minPointerStyle),ws(2),La("display",e.range?"inherit":"none"),na("ngStyle",e.maxPointerStyle),ws(12),ja("ng5-slider-ticks-values-under",e.ticksUnderValuesClass),na("hidden",!e.showTicks),ws(2),na("ngForOf",e.ticks))},directives:function(){return[MY,Th,IY,DY,yh,mh,VY,_h]},styles:[".ng5-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y} .ng5-slider.with-legend{margin-bottom:40px} .ng5-slider[disabled]{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ng5-slider[disabled] .ng5-slider-draggable{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-selection{background:#8b91a2} .ng5-slider[disabled] .ng5-slider-tick{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-tick.ng5-slider-selected{background:#8b91a2} .ng5-slider .ng5-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ng5-slider .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider .ng5-slider-bar-wrapper{left:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ng5-slider .ng5-slider-draggable{cursor:move} .ng5-slider .ng5-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;border-radius:2px} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-transparent .ng5-slider-bar{background:0 0} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar{background:#df002d} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar{background:#03a688} .ng5-slider .ng5-slider-selection{z-index:2;background:#0db9f0;border-radius:2px} .ng5-slider .ng5-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;border-radius:16px} .ng5-slider .ng5-slider-pointer:after{content:'';width:8px;height:8px;position:absolute;top:12px;left:12px;border-radius:4px;background:#fff} .ng5-slider .ng5-slider-pointer:hover:after{background-color:#fff} .ng5-slider .ng5-slider-pointer.ng5-slider-active{z-index:4} .ng5-slider .ng5-slider-pointer.ng5-slider-active:after{background-color:#451aff} .ng5-slider .ng5-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ng5-slider .ng5-slider-bubble.ng5-slider-limit{color:#55637d} .ng5-slider .ng5-slider-ticks{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ng5-slider .ng5-slider-ticks-values-under .ng5-slider-tick-value{top:auto;bottom:-36px} .ng5-slider .ng5-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ng5-slider .ng5-slider-tick.ng5-slider-selected{background:#0db9f0} .ng5-slider .ng5-slider-tick-value{position:absolute;top:-34px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)} .ng5-slider .ng5-slider-tick-legend{position:absolute;top:24px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);max-width:50px;white-space:normal} .ng5-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;-ms-touch-action:pan-x;touch-action:pan-x} .ng5-slider.vertical .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider.vertical .ng5-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ng5-slider.vertical .ng5-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ng5-slider.vertical .ng5-slider-pointer{left:-14px!important;top:auto;bottom:0} .ng5-slider.vertical .ng5-slider-bubble{left:16px!important;bottom:0} .ng5-slider.vertical .ng5-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ng5-slider.vertical .ng5-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ng5-slider.vertical .ng5-slider-tick-value{left:24px;top:auto;-webkit-transform:translate(0,-28%);transform:translate(0,-28%)} .ng5-slider.vertical .ng5-slider-tick-legend{top:auto;right:24px;-webkit-transform:translate(0,-28%);transform:translate(0,-28%);max-width:none;white-space:nowrap} .ng5-slider.vertical .ng5-slider-ticks-values-under .ng5-slider-tick-value{bottom:auto;left:auto;right:24px} .ng5-slider *{-webkit-transition:none;transition:none} .ng5-slider.animate .ng5-slider-bar-wrapper{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-selection{-webkit-transition:background-color linear .3s;transition:background-color linear .3s} .ng5-slider.animate .ng5-slider-pointer{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-limit{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-combined{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-tick{-webkit-transition:background-color linear .3s;transition:background-color linear .3s}"]}),t})(),VY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},decls:2,vars:2,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ng5-slider-inner-tooltip"]],template:function(t,e){1&t&&(Jo(0,_Y,2,6,"ng-container",0),Jo(1,wY,3,3,"ng-container",0)),2&t&&(na("ngIf",e.template),ws(1),na("ngIf",!e.template))},directives:[_h,kh],styles:[".ng5-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]}),t})(),zY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),UY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Rf,Hp,cU,YX,zY]]}),t})(),HY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,AX,KX,UY,x_,f_]]}),t})(),$Y=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,HY]]}),t})(),GY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Az,Pz,kU,cU,jU,f_]]}),t})();class WY extends class{constructor(){this.expansionModel=new kp(!0)}toggle(t){this.expansionModel.toggle(this._trackByValue(t))}expand(t){this.expansionModel.select(this._trackByValue(t))}collapse(t){this.expansionModel.deselect(this._trackByValue(t))}isExpanded(t){return this.expansionModel.isSelected(this._trackByValue(t))}toggleDescendants(t){this.expansionModel.isSelected(this._trackByValue(t))?this.collapseDescendants(t):this.expandDescendants(t)}collapseAll(){this.expansionModel.clear()}expandDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.select(...e.map(t=>this._trackByValue(t)))}collapseDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.deselect(...e.map(t=>this._trackByValue(t)))}_trackByValue(t){return this.trackBy?this.trackBy(t):t}}{constructor(t,e,n){super(),this.getLevel=t,this.isExpandable=e,this.options=n,this.options&&(this.trackBy=this.options.trackBy)}getDescendants(t){const e=[];for(let n=this.dataNodes.indexOf(t)+1;nthis._trackByValue(t)))}}const qY=new oi("CDK_TREE_NODE_OUTLET_NODE");let XY=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeOutlet",""]]}),t})();class YY{constructor(t){this.$implicit=t}}let KY=(()=>{class t{constructor(t){this.template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeDef",""]],inputs:{when:["cdkTreeNodeDefWhen","when"]}}),t})(),QY=(()=>{class t{constructor(t,e){this._differs=t,this._changeDetectorRef=e,this._onDestroy=new P,this._levels=new Map,this.viewChange=new Uf({start:0,end:Number.MAX_VALUE})}get dataSource(){return this._dataSource}set dataSource(t){this._dataSource!==t&&this._switchDataSource(t)}ngOnInit(){this._dataDiffer=this._differs.find([]).create(this.trackBy)}ngOnDestroy(){this._nodeOutlet.viewContainer.clear(),this.viewChange.complete(),this._onDestroy.next(),this._onDestroy.complete(),this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null)}ngAfterContentChecked(){const t=this._nodeDefs.filter(t=>!t.when);this._defaultNodeDef=t[0],this.dataSource&&this._nodeDefs&&!this._dataSubscription&&this._observeRenderChanges()}_switchDataSource(t){this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null),t||this._nodeOutlet.viewContainer.clear(),this._dataSource=t,this._nodeDefs&&this._observeRenderChanges()}_observeRenderChanges(){let t;!function(t){return t&&"function"==typeof t.connect}(this._dataSource)?Dd(this._dataSource)?t=this._dataSource:Array.isArray(this._dataSource)&&(t=wd(this._dataSource)):t=this._dataSource.connect(this),t&&(this._dataSubscription=t.pipe(Wd(this._onDestroy)).subscribe(t=>this.renderNodeChanges(t)))}renderNodeChanges(t,e=this._dataDiffer,n=this._nodeOutlet.viewContainer,i){const r=e.diff(t);!r||(r.forEachOperation((e,r,s)=>{if(null==e.previousIndex)this.insertNode(t[s],s,n,i);else if(null==s)n.remove(r),this._levels.delete(e.item);else{const t=n.get(r);n.move(t,s)}}),this._changeDetectorRef.detectChanges())}_getNodeDef(t,e){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(n=>n.when&&n.when(e,t))||this._defaultNodeDef}insertNode(t,e,n,i){const r=this._getNodeDef(t,e),s=new YY(t);s.level=this.treeControl.getLevel?this.treeControl.getLevel(t):void 0!==i&&this._levels.has(i)?this._levels.get(i)+1:0,this._levels.set(t,s.level),(n||this._nodeOutlet.viewContainer).createEmbeddedView(r.template,s,e),ZY.mostRecentTreeNode&&(ZY.mostRecentTreeNode.data=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["cdk-tree"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,KY,5),2&t){let t;Wc(t=Yc())&&(e._nodeDefs=t)}},viewQuery:function(t,e){if(1&t&&qc(XY,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[XY],encapsulation:2}),t})(),ZY=(()=>{class t{constructor(e,n){this._elementRef=e,this._tree=n,this._destroyed=new P,this._dataChanges=new P,t.mostRecentTreeNode=this,this._elementRef.nativeElement.classList.add("cdk-tree-node"),this.role="treeitem"}get role(){return"treeitem"}set role(t){this._elementRef.nativeElement.setAttribute("role",t)}get data(){return this._data}set data(t){t!==this._data&&(this._data=t,this._setRoleFromData(),this._dataChanges.next())}get isExpanded(){return this._tree.treeControl.isExpanded(this._data)}_setExpanded(t){this._isAriaExpanded=t,this._elementRef.nativeElement.setAttribute("aria-expanded",`${t}`)}get level(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}ngOnInit(){this._parentNodeAriaLevel=function(t){let e=t.parentElement;for(;e&&!JY(e);)e=e.parentElement;return e?e.classList.contains("cdk-nested-tree-node")?bd(e.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level",`${this.level+1}`)}ngDoCheck(){this.isExpanded!=this._isAriaExpanded&&this._setExpanded(this.isExpanded)}ngOnDestroy(){t.mostRecentTreeNode===this&&(t.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}focus(){this._elementRef.nativeElement.focus()}_setRoleFromData(){this.role="treeitem"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY))},t.\u0275dir=se({type:t,selectors:[["cdk-tree-node"]],inputs:{role:"role"},exportAs:["cdkTreeNode"]}),t.mostRecentTreeNode=null,t})();function JY(t){const e=t.classList;return!(!(null==e?void 0:e.contains("cdk-nested-tree-node"))&&!(null==e?void 0:e.contains("cdk-tree")))}const tK=/([A-Za-z%]+)$/;let eK=(()=>{class t{constructor(t,e,n,i){this._treeNode=t,this._tree=e,this._element=n,this._dir=i,this._destroyed=new P,this.indentUnits="px",this._indent=40,this._setPadding(),i&&i.change.pipe(Wd(this._destroyed)).subscribe(()=>this._setPadding(!0)),t._dataChanges.subscribe(()=>this._setPadding())}get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_paddingIndent(){const t=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,e=null==this._level?t:this._level;return"number"==typeof e?`${e*this._indent}${this.indentUnits}`:null}_setPadding(t=!1){const e=this._paddingIndent();if(e!==this._currentPadding||t){const t=this._element.nativeElement,n=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",i="paddingLeft"===n?"paddingRight":"paddingLeft";t.style[n]=e||"",t.style[i]="",this._currentPadding=e}}_setLevelInput(t){this._level=bd(t,null),this._setPadding()}_setIndentInput(t){let e=t,n="px";if("string"==typeof t){const i=t.split(tK);e=i[0],n=i[1]||n}this.indentUnits=n,this._indent=bd(e),this._setPadding()}}return t.\u0275fac=function(e){return new(e||t)(ea(ZY),ea(QY),ea(kl),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),t})(),nK=(()=>{class t{constructor(t,e){this._tree=t,this._treeNode=e,this._recursive=!1}get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}_toggle(t){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),t.stopPropagation()}}return t.\u0275fac=function(e){return new(e||t)(ea(QY),ea(ZY))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(t,e){1&t&&fa("click",function(t){return e._toggle(t)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),t})(),iK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const rK=By(Ly(ZY));let sK=(()=>{class t extends rK{constructor(t,e,n){super(t,e),this.tabIndex=Number(n)||0,t.nativeElement.classList.add("mat-tree-node")}ngOnInit(){super.ngOnInit()}ngDoCheck(){super.ngDoCheck()}ngOnDestroy(){super.ngOnDestroy()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY),ni("tabindex"))},t.\u0275dir=se({type:t,selectors:[["mat-tree-node"]],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[_l([{provide:ZY,useExisting:t}]),jo]}),t})(),oK=(()=>{class t extends KY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[_l([{provide:KY,useExisting:t}]),jo]}),t})(),aK=(()=>{class t extends eK{get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[_l([{provide:eK,useExisting:t}]),jo]}),t})(),lK=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","matTreeNodeOutlet",""]],features:[_l([{provide:XY,useExisting:t}])]}),t})(),cK=(()=>{class t extends QY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-tree"]],viewQuery:function(t,e){if(1&t&&qc(lK,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"mat-tree","cdk-tree"],exportAs:["matTree"],features:[_l([{provide:QY,useExisting:t}]),jo],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[lK],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),t})(),uK=(()=>{class t extends nK{get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[_l([{provide:nK,useExisting:t}]),jo]}),t})(),hK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[iK,Ny],Ny]}),t})();class dK{constructor(t,e,n,i){this.transformFunction=t,this.getLevel=e,this.isExpandable=n,this.getChildren=i}_flattenNode(t,e,n,i){const r=this.transformFunction(t,e);if(n.push(r),this.isExpandable(r)){const r=this.getChildren(t);r&&(Array.isArray(r)?this._flattenChildren(r,e,n,i):r.pipe(Gp(1)).subscribe(t=>{this._flattenChildren(t,e,n,i)}))}return n}_flattenChildren(t,e,n,i){t.forEach((r,s)=>{let o=i.slice();o.push(s!=t.length-1),this._flattenNode(r,e+1,n,o)})}flattenNodes(t){let e=[];return t.forEach(t=>this._flattenNode(t,0,e,[])),e}expandFlattenedNodes(t,e){let n=[],i=[];return i[0]=!0,t.forEach(t=>{let r=!0;for(let e=0;e<=this.getLevel(t);e++)r=r&&i[e];r&&n.push(t),this.isExpandable(t)&&(i[this.getLevel(t)+1]=e.isExpanded(t))}),n}}class pK extends class{}{constructor(t,e,n){super(),this._treeControl=t,this._treeFlattener=e,this._flattenedData=new Uf([]),this._expandedData=new Uf([]),this._data=new Uf([]),n&&(this.data=n)}get data(){return this._data.value}set data(t){this._data.next(t),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}connect(t){return Q(t.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(D(()=>(this._expandedData.next(this._treeFlattener.expandFlattenedNodes(this._flattenedData.value,this._treeControl)),this._expandedData.value)))}disconnect(){}}let fK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,rw,hK,tq]]}),t})(),gK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK]]}),t})(),mK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK,gK],GY,fK,gK]}),t})();function bK(t){return null!==t&&"object"==typeof t&&"constructor"in t&&t.constructor===Object}function yK(t,e){void 0===t&&(t={}),void 0===e&&(e={}),Object.keys(e).forEach(function(n){void 0===t[n]?t[n]=e[n]:bK(e[n])&&bK(t[n])&&Object.keys(e[n]).length>0&&yK(t[n],e[n])})}var vK={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function _K(){var t="undefined"!=typeof document?document:{};return yK(t,vK),t}var wK={document:vK,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(t){return"undefined"==typeof setTimeout?(t(),null):setTimeout(t,0)},cancelAnimationFrame:function(t){"undefined"!=typeof setTimeout&&clearTimeout(t)}};function xK(){var t="undefined"!=typeof window?window:{};return yK(t,wK),t}function SK(t){return(SK=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function EK(t,e){return(EK=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function CK(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(m){return!1}}function OK(t,e,n){return(OK=CK()?Reflect.construct:function(t,e,n){var i=[null];i.push.apply(i,e);var r=new(Function.bind.apply(t,i));return n&&EK(r,n.prototype),r}).apply(null,arguments)}function TK(t){var e="function"==typeof Map?new Map:void 0;return(TK=function(t){if(null===t||!function(t){return-1!==Function.toString.call(t).indexOf("[native code]")}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return OK(t,arguments,SK(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),EK(n,t)})(t)}var kK=function(t){function e(e){var n;return function(t){var e=t.__proto__;Object.defineProperty(t,"__proto__",{get:function(){return e},set:function(t){e.__proto__=t}})}(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(n=t.call.apply(t,[this].concat(e))||this)),n}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(e,t),e}(TK(Array));function AK(t){void 0===t&&(t=[]);var e=[];return t.forEach(function(t){Array.isArray(t)?e.push.apply(e,AK(t)):e.push(t)}),e}function PK(t,e){return Array.prototype.filter.call(t,e)}function MK(t,e){var n=xK(),i=_K(),r=[];if(!e&&t instanceof kK)return t;if(!t)return new kK(r);if("string"==typeof t){var s=t.trim();if(s.indexOf("<")>=0&&s.indexOf(">")>=0){var o="div";0===s.indexOf("0}).length>0},toggleClass:function(){for(var t=arguments.length,e=new Array(t),n=0;n=0;p-=1){var f=d[p];s&&f.listener===s||s&&f.listener&&f.listener.dom7proxy&&f.listener.dom7proxy===s?(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1)):s||(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1))}}return this},trigger:function(){for(var t=xK(),e=arguments.length,n=new Array(e),i=0;i0}),c.dispatchEvent(u),c.dom7EventData=[],delete c.dom7EventData}}return this},transitionEnd:function(t){var e=this;return t&&e.on("transitionend",function n(i){i.target===this&&(t.call(this,i),e.off("transitionend",n))}),this},outerWidth:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetWidth+parseFloat(e.getPropertyValue("margin-right"))+parseFloat(e.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetHeight+parseFloat(e.getPropertyValue("margin-top"))+parseFloat(e.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){var t=xK();return this[0]?t.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var t=xK(),e=_K(),n=this[0],i=n.getBoundingClientRect(),r=e.body;return{top:i.top+(n===t?t.scrollY:n.scrollTop)-(n.clientTop||r.clientTop||0),left:i.left+(n===t?t.scrollX:n.scrollLeft)-(n.clientLeft||r.clientLeft||0)}}return null},css:function(t,e){var n,i=xK();if(1===arguments.length){if("string"!=typeof t){for(n=0;ne-1)return MK([]);if(t<0){var n=e+t;return MK(n<0?[]:[this[n]])}return MK([this[t]])},append:function(){for(var t,e=_K(),n=0;n=0;n-=1)this[e].insertBefore(r.childNodes[n],this[e].childNodes[0])}else if(t instanceof kK)for(n=0;n0?t?this[0].nextElementSibling&&MK(this[0].nextElementSibling).is(t)?MK([this[0].nextElementSibling]):MK([]):MK(this[0].nextElementSibling?[this[0].nextElementSibling]:[]):MK([])},nextAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.nextElementSibling;){var i=n.nextElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},prev:function(t){if(this.length>0){var e=this[0];return t?e.previousElementSibling&&MK(e.previousElementSibling).is(t)?MK([e.previousElementSibling]):MK([]):MK(e.previousElementSibling?[e.previousElementSibling]:[])}return MK([])},prevAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.previousElementSibling;){var i=n.previousElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},parent:function(t){for(var e=[],n=0;n=0,observer:"MutationObserver"in t||"WebkitMutationObserver"in t,passiveListener:function(){var e=!1;try{var n=Object.defineProperty({},"passive",{get:function(){e=!0}});t.addEventListener("testPassiveListener",null,n)}catch(i){}return e}(),gestures:"ongesturestart"in t}}()),NK}function WK(t){return void 0===t&&(t={}),LK||(LK=function(t){var e=(void 0===t?{}:t).userAgent,n=GK(),i=xK(),r=i.navigator.platform,s=e||i.navigator.userAgent,o={ios:!1,android:!1},a=i.screen.width,l=i.screen.height,c=s.match(/(Android);?[\s\/]+([\d.]+)?/),u=s.match(/(iPad).*OS\s([\d_]+)/),h=s.match(/(iPod)(.*OS\s([\d_]+))?/),d=!u&&s.match(/(iPhone\sOS|iOS)\s([\d_]+)/),p="Win32"===r,f="MacIntel"===r;return!u&&f&&n.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(a+"x"+l)>=0&&((u=s.match(/(Version)\/([\d.]+)/))||(u=[0,1,"13_0_0"]),f=!1),c&&!p&&(o.os="android",o.android=!0),(u||d||h)&&(o.os="ios",o.ios=!0),o}(t)),LK}function qK(){return jK||(jK=function(){var t,e=xK();return{isEdge:!!e.navigator.userAgent.match(/Edge/g),isSafari:(t=e.navigator.userAgent.toLowerCase(),t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent)}}()),jK}var XK={name:"resize",create:function(){var t=this;HK(t,{resize:{observer:null,createObserver:function(){!t||t.destroyed||!t.initialized||(t.resize.observer=new ResizeObserver(function(e){var n=t.width,i=t.height,r=n,s=i;e.forEach(function(e){var n=e.contentBoxSize,i=e.contentRect,o=e.target;o&&o!==t.el||(r=i?i.width:(n[0]||n).inlineSize,s=i?i.height:(n[0]||n).blockSize)}),(r!==n||s!==i)&&t.resize.resizeHandler()}),t.resize.observer.observe(t.el))},removeObserver:function(){t.resize.observer&&t.resize.observer.unobserve&&t.el&&(t.resize.observer.unobserve(t.el),t.resize.observer=null)},resizeHandler:function(){!t||t.destroyed||!t.initialized||(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler:function(){!t||t.destroyed||!t.initialized||t.emit("orientationchange")}}})},on:{init:function(t){var e=xK();t.params.resizeObserver&&void 0!==xK().ResizeObserver?t.resize.createObserver():(e.addEventListener("resize",t.resize.resizeHandler),e.addEventListener("orientationchange",t.resize.orientationChangeHandler))},destroy:function(t){var e=xK();t.resize.removeObserver(),e.removeEventListener("resize",t.resize.resizeHandler),e.removeEventListener("orientationchange",t.resize.orientationChangeHandler)}}};function YK(){return(YK=Object.assign||function(t){for(var e=1;e0)&&(!r.isTouched||!r.isMoved))){s.noSwipingClass&&""!==s.noSwipingClass&&a.target&&a.target.shadowRoot&&t.path&&t.path[0]&&(l=FK(t.path[0]));var c=s.noSwipingSelector?s.noSwipingSelector:"."+s.noSwipingClass;if(s.noSwiping&&(a.target&&a.target.shadowRoot?function(t,e){return void 0===e&&(e=this),function e(n){return n&&n!==_K()&&n!==xK()?(n.assignedSlot&&(n=n.assignedSlot),n.closest(t)||e(n.getRootNode().host)):null}(e)}(c,a.target):l.closest(c)[0]))return void(e.allowClick=!0);if(!s.swipeHandler||l.closest(s.swipeHandler)[0]){o.currentX="touchstart"===a.type?a.targetTouches[0].pageX:a.pageX,o.currentY="touchstart"===a.type?a.targetTouches[0].pageY:a.pageY;var u=o.currentX,h=o.currentY,d=s.edgeSwipeDetection||s.iOSEdgeSwipeDetection,p=s.edgeSwipeThreshold||s.iOSEdgeSwipeThreshold;if(d&&(u<=p||u>=i.innerWidth-p)){if("prevent"!==d)return;t.preventDefault()}if(HK(r,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=u,o.startY=h,r.touchStartTime=VK(),e.allowClick=!0,e.updateSize(),e.swipeDirection=void 0,s.threshold>0&&(r.allowThresholdMove=!1),"touchstart"!==a.type){var f=!0;l.is(r.focusableElements)&&(f=!1),n.activeElement&&FK(n.activeElement).is(r.focusableElements)&&n.activeElement!==l[0]&&n.activeElement.blur(),(s.touchStartForcePreventDefault||f&&e.allowTouchMove&&s.touchStartPreventDefault)&&!l[0].isContentEditable&&a.preventDefault()}e.emit("touchStart",a)}}}}function JK(t){var e=_K(),n=this,i=n.touchEventsData,r=n.params,s=n.touches,o=n.rtlTranslate;if(n.enabled){var a=t;if(a.originalEvent&&(a=a.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&n.emit("touchMoveOpposite",a));if(!i.isTouchEvent||"touchmove"===a.type){var l="touchmove"===a.type&&a.targetTouches&&(a.targetTouches[0]||a.changedTouches[0]),c="touchmove"===a.type?l.pageX:a.pageX,u="touchmove"===a.type?l.pageY:a.pageY;if(a.preventedByNestedSwiper)return s.startX=c,void(s.startY=u);if(!n.allowTouchMove)return n.allowClick=!1,void(i.isTouched&&(HK(s,{startX:c,startY:u,currentX:c,currentY:u}),i.touchStartTime=VK()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(n.isVertical()){if(us.startY&&n.translate>=n.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(cs.startX&&n.translate>=n.minTranslate())return;if(i.isTouchEvent&&e.activeElement&&a.target===e.activeElement&&FK(a.target).is(i.focusableElements))return i.isMoved=!0,void(n.allowClick=!1);if(i.allowTouchCallbacks&&n.emit("touchMove",a),!(a.targetTouches&&a.targetTouches.length>1)){s.currentX=c,s.currentY=u;var h=s.currentX-s.startX,d=s.currentY-s.startY;if(!(n.params.threshold&&Math.sqrt(Math.pow(h,2)+Math.pow(d,2))=25&&(p=180*Math.atan2(Math.abs(d),Math.abs(h))/Math.PI,i.isScrolling=n.isHorizontal()?p>r.touchAngle:90-p>r.touchAngle)),i.isScrolling&&n.emit("touchMoveOpposite",a),void 0===i.startMoving&&(s.currentX!==s.startX||s.currentY!==s.startY)&&(i.startMoving=!0),i.isScrolling)return void(i.isTouched=!1);if(i.startMoving){n.allowClick=!1,!r.cssMode&&a.cancelable&&a.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&a.stopPropagation(),i.isMoved||(r.loop&&n.loopFix(),i.startTranslate=n.getTranslate(),n.setTransition(0),n.animating&&n.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,r.grabCursor&&(!0===n.allowSlideNext||!0===n.allowSlidePrev)&&n.setGrabCursor(!0),n.emit("sliderFirstMove",a)),n.emit("sliderMove",a),i.isMoved=!0;var f=n.isHorizontal()?h:d;s.diff=f,f*=r.touchRatio,o&&(f=-f),n.swipeDirection=f>0?"prev":"next",i.currentTranslate=f+i.startTranslate;var g=!0,m=r.resistanceRatio;if(r.touchReleaseOnEdges&&(m=0),f>0&&i.currentTranslate>n.minTranslate()?(g=!1,r.resistance&&(i.currentTranslate=n.minTranslate()-1+Math.pow(-n.minTranslate()+i.startTranslate+f,m))):f<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),!n.allowSlidePrev&&!n.allowSlideNext&&(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(f)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,s.startX=s.currentX,s.startY=s.currentY,i.currentTranslate=i.startTranslate,void(s.diff=n.isHorizontal()?s.currentX-s.startX:s.currentY-s.startY)}!r.followFinger||r.cssMode||((r.freeMode||r.watchSlidesProgress||r.watchSlidesVisibility)&&(n.updateActiveIndex(),n.updateSlidesClasses()),r.freeMode&&(0===i.velocities.length&&i.velocities.push({position:s[n.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:s[n.isHorizontal()?"currentX":"currentY"],time:VK()})),n.updateProgress(i.currentTranslate),n.setTranslate(i.currentTranslate))}}}}}}function tQ(t){var e=this,n=e.touchEventsData,i=e.params,r=e.touches,s=e.rtlTranslate,o=e.$wrapperEl,a=e.slidesGrid,l=e.snapGrid;if(e.enabled){var c=t;if(c.originalEvent&&(c=c.originalEvent),n.allowTouchCallbacks&&e.emit("touchEnd",c),n.allowTouchCallbacks=!1,!n.isTouched)return n.isMoved&&i.grabCursor&&e.setGrabCursor(!1),n.isMoved=!1,void(n.startMoving=!1);i.grabCursor&&n.isMoved&&n.isTouched&&(!0===e.allowSlideNext||!0===e.allowSlidePrev)&&e.setGrabCursor(!1);var u,h=VK(),d=h-n.touchStartTime;if(e.allowClick&&(e.updateClickedSlide(c),e.emit("tap click",c),d<300&&h-n.lastClickTime<300&&e.emit("doubleTap doubleClick",c)),n.lastClickTime=VK(),BK(function(){e.destroyed||(e.allowClick=!0)}),!n.isTouched||!n.isMoved||!e.swipeDirection||0===r.diff||n.currentTranslate===n.startTranslate)return n.isTouched=!1,n.isMoved=!1,void(n.startMoving=!1);if(n.isTouched=!1,n.isMoved=!1,n.startMoving=!1,u=i.followFinger?s?e.translate:-e.translate:-n.currentTranslate,!i.cssMode){if(i.freeMode){if(u<-e.minTranslate())return void e.slideTo(e.activeIndex);if(u>-e.maxTranslate())return void e.slideTo(e.slides.length1){var p=n.velocities.pop(),f=n.velocities.pop(),g=p.time-f.time;e.velocity=(p.position-f.position)/g,e.velocity/=2,Math.abs(e.velocity)150||VK()-p.time>300)&&(e.velocity=0)}else e.velocity=0;e.velocity*=i.freeModeMomentumVelocityRatio,n.velocities.length=0;var m=1e3*i.freeModeMomentumRatio,b=e.translate+e.velocity*m;s&&(b=-b);var y,v,_=!1,w=20*Math.abs(e.velocity)*i.freeModeMomentumBounceRatio;if(be.minTranslate())i.freeModeMomentumBounce?(b-e.minTranslate()>w&&(b=e.minTranslate()+w),y=e.minTranslate(),_=!0,n.allowMomentumBounce=!0):b=e.minTranslate(),i.loop&&i.centeredSlides&&(v=!0);else if(i.freeModeSticky){for(var x,S=0;S-b){x=S;break}b=-(b=Math.abs(l[x]-b)=i.longSwipesMs)&&(e.updateProgress(),e.updateActiveIndex(),e.updateSlidesClasses()))}for(var O=0,T=e.slidesSizesGrid[0],k=0;k=a[k]&&u=a[k]&&(O=k,T=a[a.length-1]-a[a.length-2])}var P=(u-a[O])/T,M=Oi.longSwipesMs){if(!i.longSwipes)return void e.slideTo(e.activeIndex);"next"===e.swipeDirection&&e.slideTo(P>=i.longSwipesRatio?O+M:O),"prev"===e.swipeDirection&&e.slideTo(P>1-i.longSwipesRatio?O+M:O)}else{if(!i.shortSwipes)return void e.slideTo(e.activeIndex);!e.navigation||c.target!==e.navigation.nextEl&&c.target!==e.navigation.prevEl?("next"===e.swipeDirection&&e.slideTo(O+M),"prev"===e.swipeDirection&&e.slideTo(O)):e.slideTo(c.target===e.navigation.nextEl?O+M:O)}}}}function eQ(){var t=this,e=t.params,n=t.el;if(!n||0!==n.offsetWidth){e.breakpoints&&t.setBreakpoint();var i=t.allowSlideNext,r=t.allowSlidePrev,s=t.snapGrid;t.allowSlideNext=!0,t.allowSlidePrev=!0,t.updateSize(),t.updateSlides(),t.updateSlidesClasses(),t.slideTo(("auto"===e.slidesPerView||e.slidesPerView>1)&&t.isEnd&&!t.isBeginning&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0),t.autoplay&&t.autoplay.running&&t.autoplay.paused&&t.autoplay.run(),t.allowSlidePrev=r,t.allowSlideNext=i,t.params.watchOverflow&&s!==t.snapGrid&&t.checkOverflow()}}function nQ(t){var e=this;!e.enabled||e.allowClick||(e.params.preventClicks&&t.preventDefault(),e.params.preventClicksPropagation&&e.animating&&(t.stopPropagation(),t.stopImmediatePropagation()))}function iQ(){var t=this,e=t.wrapperEl,n=t.rtlTranslate;if(t.enabled){t.previousTranslate=t.translate,t.translate=t.isHorizontal()?n?e.scrollWidth-e.offsetWidth-e.scrollLeft:-e.scrollLeft:-e.scrollTop,-0===t.translate&&(t.translate=0),t.updateActiveIndex(),t.updateSlidesClasses();var i=t.maxTranslate()-t.minTranslate();(0===i?0:(t.translate-t.minTranslate())/i)!==t.progress&&t.updateProgress(n?-t.translate:t.translate),t.emit("setTranslate",t.translate,!1)}}var rQ=!1;function sQ(){}var oQ={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!1,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};function aQ(t,e){for(var n=0;n=0&&e.eventsAnyListeners.splice(n,1),e},off:function(t,e){var n=this;return n.eventsListeners&&t.split(" ").forEach(function(t){void 0===e?n.eventsListeners[t]=[]:n.eventsListeners[t]&&n.eventsListeners[t].forEach(function(i,r){(i===e||i.__emitterProxy&&i.__emitterProxy===e)&&n.eventsListeners[t].splice(r,1)})}),n},emit:function(){var t=this;if(!t.eventsListeners)return t;for(var e,n,i,r=arguments.length,s=new Array(r),o=0;o=0&&(v=parseFloat(v.replace("%",""))/100*s),t.virtualSize=-v,u.css(o?{marginLeft:"",marginBottom:"",marginTop:""}:{marginRight:"",marginBottom:"",marginTop:""}),i.slidesPerColumn>1&&(S=Math.floor(h/i.slidesPerColumn)===h/t.params.slidesPerColumn?h:Math.ceil(h/i.slidesPerColumn)*i.slidesPerColumn,"auto"!==i.slidesPerView&&"row"===i.slidesPerColumnFill&&(S=Math.max(S,i.slidesPerView*i.slidesPerColumn)));for(var T,k=i.slidesPerColumn,A=S/k,P=Math.floor(h/i.slidesPerColumn),M=0;M1){var D=void 0,R=void 0,N=void 0;if("row"===i.slidesPerColumnFill&&i.slidesPerGroup>1){var L=Math.floor(M/(i.slidesPerGroup*i.slidesPerColumn)),j=M-i.slidesPerColumn*i.slidesPerGroup*L,F=0===L?i.slidesPerGroup:Math.min(Math.ceil((h-L*k*i.slidesPerGroup)/k),i.slidesPerGroup);N=Math.floor(j/F),I.css({"-webkit-box-ordinal-group":D=(R=j-N*F+L*i.slidesPerGroup)+N*S/k,"-moz-box-ordinal-group":D,"-ms-flex-order":D,"-webkit-order":D,order:D})}else"column"===i.slidesPerColumnFill?(N=M-(R=Math.floor(M/k))*k,(R>P||R===P&&N===k-1)&&(N+=1)>=k&&(N=0,R+=1)):R=M-(N=Math.floor(M/A))*A;I.css(e("margin-top"),0!==N?i.spaceBetween&&i.spaceBetween+"px":"")}if("none"!==I.css("display")){if("auto"===i.slidesPerView){var B=getComputedStyle(I[0]),V=I[0].style.transform,z=I[0].style.webkitTransform;if(V&&(I[0].style.transform="none"),z&&(I[0].style.webkitTransform="none"),i.roundLengths)T=t.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else{var U=n(B,"width"),H=n(B,"padding-left"),$=n(B,"padding-right"),G=n(B,"margin-left"),W=n(B,"margin-right"),q=B.getPropertyValue("box-sizing");if(q&&"border-box"===q)T=U+G+W;else{var X=I[0];T=U+H+$+G+W+(X.offsetWidth-X.clientWidth)}}V&&(I[0].style.transform=V),z&&(I[0].style.webkitTransform=z),i.roundLengths&&(T=Math.floor(T))}else T=(s-(i.slidesPerView-1)*v)/i.slidesPerView,i.roundLengths&&(T=Math.floor(T)),u[M]&&(u[M].style[e("width")]=T+"px");u[M]&&(u[M].swiperSlideSize=T),f.push(T),i.centeredSlides?(_=_+T/2+w/2+v,0===w&&0!==M&&(_=_-s/2-v),0===M&&(_=_-s/2-v),Math.abs(_)<.001&&(_=0),i.roundLengths&&(_=Math.floor(_)),x%i.slidesPerGroup==0&&d.push(_),p.push(_)):(i.roundLengths&&(_=Math.floor(_)),(x-Math.min(t.params.slidesPerGroupSkip,x))%t.params.slidesPerGroup==0&&d.push(_),p.push(_),_=_+T+v),t.virtualSize+=T+v,w=T,x+=1}}if(t.virtualSize=Math.max(t.virtualSize,s)+m,o&&a&&("slide"===i.effect||"coverflow"===i.effect)&&r.css({width:t.virtualSize+i.spaceBetween+"px"}),i.setWrapperSize&&r.css(((C={})[e("width")]=t.virtualSize+i.spaceBetween+"px",C)),i.slidesPerColumn>1&&(t.virtualSize=(T+i.spaceBetween)*S,t.virtualSize=Math.ceil(t.virtualSize/i.slidesPerColumn)-i.spaceBetween,r.css(((O={})[e("width")]=t.virtualSize+i.spaceBetween+"px",O)),i.centeredSlides)){E=[];for(var Y=0;Y1&&d.push(t.virtualSize-s)}if(0===d.length&&(d=[0]),0!==i.spaceBetween){var J,tt=t.isHorizontal()&&o?"marginLeft":e("marginRight");u.filter(function(t,e){return!i.cssMode||e!==u.length-1}).css(((J={})[tt]=v+"px",J))}if(i.centeredSlides&&i.centeredSlidesBounds){var et=0;f.forEach(function(t){et+=t+(i.spaceBetween?i.spaceBetween:0)});var nt=(et-=i.spaceBetween)-s;d=d.map(function(t){return t<0?-g:t>nt?nt+m:t})}if(i.centerInsufficientSlides){var it=0;if(f.forEach(function(t){it+=t+(i.spaceBetween?i.spaceBetween:0)}),(it-=i.spaceBetween)1)if(n.params.centeredSlides)n.visibleSlides.each(function(t){i.push(t)});else for(e=0;en.slides.length&&!r)break;i.push(o(a))}else i.push(o(n.activeIndex));for(e=0;es?l:s}s&&n.$wrapperEl.css("height",s+"px")},updateSlidesOffset:function(){for(var t=this.slides,e=0;e=0&&c1&&u<=e.size||c<=0&&u>=e.size)&&(e.visibleSlides.push(a),e.visibleSlidesIndexes.push(o),i.eq(o).addClass(n.slideVisibleClass))}a.progress=r?-l:l}e.visibleSlides=FK(e.visibleSlides)}},updateProgress:function(t){var e=this;void 0===t&&(t=e&&e.translate&&e.translate*(e.rtlTranslate?-1:1)||0);var n=e.params,i=e.maxTranslate()-e.minTranslate(),r=e.progress,s=e.isBeginning,o=e.isEnd,a=s,l=o;0===i?(r=0,s=!0,o=!0):(s=(r=(t-e.minTranslate())/i)<=0,o=r>=1),HK(e,{progress:r,isBeginning:s,isEnd:o}),(n.watchSlidesProgress||n.watchSlidesVisibility||n.centeredSlides&&n.autoHeight)&&e.updateSlidesProgress(t),s&&!a&&e.emit("reachBeginning toEdge"),o&&!l&&e.emit("reachEnd toEdge"),(a&&!s||l&&!o)&&e.emit("fromEdge"),e.emit("progress",r)},updateSlidesClasses:function(){var t,e=this,n=e.slides,i=e.params,r=e.$wrapperEl,s=e.activeIndex,o=e.realIndex,a=e.virtual&&i.virtual.enabled;n.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(t=a?e.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+s+'"]'):n.eq(s)).addClass(i.slideActiveClass),i.loop&&(t.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass));var l=t.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===l.length&&(l=n.eq(0)).addClass(i.slideNextClass);var c=t.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=n.eq(-1)).addClass(i.slidePrevClass),i.loop&&(l.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),e.emitSlidesClasses()},updateActiveIndex:function(t){var e,n=this,i=n.rtlTranslate?n.translate:-n.translate,r=n.slidesGrid,s=n.snapGrid,o=n.params,a=n.activeIndex,l=n.realIndex,c=n.snapIndex,u=t;if(void 0===u){for(var h=0;h=r[h]&&i=r[h]&&i=r[h]&&(u=h);o.normalizeSlideIndex&&(u<0||void 0===u)&&(u=0)}if(s.indexOf(i)>=0)e=s.indexOf(i);else{var d=Math.min(o.slidesPerGroupSkip,u);e=d+Math.floor((u-d)/o.slidesPerGroup)}if(e>=s.length&&(e=s.length-1),u!==a){var p=parseInt(n.slides.eq(u).attr("data-swiper-slide-index")||u,10);HK(n,{snapIndex:e,realIndex:p,previousIndex:a,activeIndex:u}),n.emit("activeIndexChange"),n.emit("snapIndexChange"),l!==p&&n.emit("realIndexChange"),(n.initialized||n.params.runCallbacksOnInit)&&n.emit("slideChange")}else e!==c&&(n.snapIndex=e,n.emit("snapIndexChange"))},updateClickedSlide:function(t){var e,n=this,i=n.params,r=FK(t.target).closest("."+i.slideClass)[0],s=!1;if(r)for(var o=0;o6&&(i=i.split(", ").map(function(t){return t.replace(",",".")}).join(", ")),r=new s.WebKitCSSMatrix("none"===i?"":i)):n=(r=o.MozTransform||o.OTransform||o.MsTransform||o.msTransform||o.transform||o.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===e&&(i=s.WebKitCSSMatrix?r.m41:16===n.length?parseFloat(n[12]):parseFloat(n[4])),"y"===e&&(i=s.WebKitCSSMatrix?r.m42:16===n.length?parseFloat(n[13]):parseFloat(n[5])),i||0}(e.$wrapperEl[0],t);return i&&(s=-s),s||0},setTranslate:function(t,e){var n=this,i=n.rtlTranslate,r=n.params,s=n.$wrapperEl,o=n.wrapperEl,a=n.progress,l=0,c=0;n.isHorizontal()?l=i?-t:t:c=t,r.roundLengths&&(l=Math.floor(l),c=Math.floor(c)),r.cssMode?o[n.isHorizontal()?"scrollLeft":"scrollTop"]=n.isHorizontal()?-l:-c:r.virtualTranslate||s.transform("translate3d("+l+"px, "+c+"px, 0px)"),n.previousTranslate=n.translate,n.translate=n.isHorizontal()?l:c;var u=n.maxTranslate()-n.minTranslate();(0===u?0:(t-n.minTranslate())/u)!==a&&n.updateProgress(t),n.emit("setTranslate",n.translate,e)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(t,e,n,i,r){void 0===t&&(t=0),void 0===e&&(e=this.params.speed),void 0===n&&(n=!0),void 0===i&&(i=!0);var s=this,o=s.params,a=s.wrapperEl;if(s.animating&&o.preventInteractionOnTransition)return!1;var l,c=s.minTranslate(),u=s.maxTranslate();if(s.updateProgress(l=i&&t>c?c:i&&ts?"next":ir?"next":i=c.length&&(m=c.length-1),(d||l.initialSlide||0)===(h||0)&&n&&o.emit("beforeSlideChangeStart");var b,y=-c[m];if(o.updateProgress(y),l.normalizeSlideIndex)for(var v=0;v=w&&_=w&&_=w&&(a=v)}if(o.initialized&&a!==d&&(!o.allowSlideNext&&yo.translate&&y>o.maxTranslate()&&(d||0)!==a))return!1;if(b=a>d?"next":a=t&&(d=t)}),void 0!==d&&(c=o.indexOf(d))<0&&(c=i.activeIndex-1),i.slideTo(c,t,e,n)},slideReset:function(t,e,n){return void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),this.slideTo(this.activeIndex,t,e,n)},slideToClosest:function(t,e,n,i){void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),void 0===i&&(i=.5);var r=this,s=r.activeIndex,o=Math.min(r.params.slidesPerGroupSkip,s),a=o+Math.floor((s-o)/r.params.slidesPerGroup),l=r.rtlTranslate?r.translate:-r.translate;if(l>=r.snapGrid[a]){var c=r.snapGrid[a];l-c>(r.snapGrid[a+1]-c)*i&&(s+=r.params.slidesPerGroup)}else{var u=r.snapGrid[a-1];l-u<=(r.snapGrid[a]-u)*i&&(s-=r.params.slidesPerGroup)}return s=Math.max(s,0),s=Math.min(s,r.slidesGrid.length-1),r.slideTo(s,t,e,n)},slideToClickedSlide:function(){var t,e=this,n=e.params,i=e.$wrapperEl,r="auto"===n.slidesPerView?e.slidesPerViewDynamic():n.slidesPerView,s=e.clickedIndex;if(n.loop){if(e.animating)return;t=parseInt(FK(e.clickedSlide).attr("data-swiper-slide-index"),10),n.centeredSlides?se.slides.length-e.loopedSlides+r/2?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s):s>e.slides.length-r?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s)}else e.slideTo(s)}},loop:{loopCreate:function(){var t=this,e=_K(),n=t.params,i=t.$wrapperEl;i.children("."+n.slideClass+"."+n.slideDuplicateClass).remove();var r=i.children("."+n.slideClass);if(n.loopFillGroupWithBlank){var s=n.slidesPerGroup-r.length%n.slidesPerGroup;if(s!==n.slidesPerGroup){for(var o=0;or.length&&(t.loopedSlides=r.length);var l=[],c=[];r.each(function(e,n){var i=FK(e);n=r.length-t.loopedSlides&&l.push(e),i.attr("data-swiper-slide-index",n)});for(var u=0;u=0;h-=1)i.prepend(FK(l[h].cloneNode(!0)).addClass(n.slideDuplicateClass))},loopFix:function(){var t=this;t.emit("beforeLoopFix");var e,n=t.activeIndex,i=t.slides,r=t.loopedSlides,s=t.allowSlidePrev,o=t.allowSlideNext,a=t.snapGrid,l=t.rtlTranslate;t.allowSlidePrev=!0,t.allowSlideNext=!0;var c=-a[n]-t.getTranslate();n=i.length-r&&(e=-i.length+n+r,t.slideTo(e+=r,0,!1,!0)&&0!==c&&t.setTranslate((l?-t.translate:t.translate)-c)),t.allowSlidePrev=s,t.allowSlideNext=o,t.emit("loopFix")},loopDestroy:function(){var t=this,e=t.params,n=t.slides;t.$wrapperEl.children("."+e.slideClass+"."+e.slideDuplicateClass+",."+e.slideClass+"."+e.slideBlankClass).remove(),n.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(t){var e=this;if(!(e.support.touch||!e.params.simulateTouch||e.params.watchOverflow&&e.isLocked||e.params.cssMode)){var n=e.el;n.style.cursor="move",n.style.cursor=t?"-webkit-grabbing":"-webkit-grab",n.style.cursor=t?"-moz-grabbin":"-moz-grab",n.style.cursor=t?"grabbing":"grab"}},unsetGrabCursor:function(){var t=this;t.support.touch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(t.el.style.cursor="")}},manipulation:{appendSlide:function(t){var e=this,n=e.$wrapperEl,i=e.params;if(i.loop&&e.loopDestroy(),"object"==typeof t&&"length"in t)for(var r=0;r=o)n.appendSlide(e);else{for(var a=s>t?s+1:s,l=[],c=o-1;c>=t;c-=1){var u=n.slides.eq(c);u.remove(),l.unshift(u)}if("object"==typeof e&&"length"in e){for(var h=0;ht?s+e.length:s}else i.append(e);for(var d=0;d1,d=u.slidesPerColumn>1,p=s.enabled;h&&!d?(o.removeClass(s.containerModifierClass+"multirow "+s.containerModifierClass+"multirow-column"),t.emitContainerClasses()):!h&&d&&(o.addClass(s.containerModifierClass+"multirow"),(u.slidesPerColumnFill&&"column"===u.slidesPerColumnFill||!u.slidesPerColumnFill&&"column"===s.slidesPerColumnFill)&&o.addClass(s.containerModifierClass+"multirow-column"),t.emitContainerClasses());var f=u.direction&&u.direction!==s.direction,g=s.loop&&(u.slidesPerView!==s.slidesPerView||f);f&&n&&t.changeDirection(),HK(t.params,u);var m=t.params.enabled;HK(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev}),p&&!m?t.disable():!p&&m&&t.enable(),t.currentBreakpoint=l,t.emit("_beforeBreakpoint",u),g&&n&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(e-r+t.loopedSlides,0,!1)),t.emit("breakpoint",u)}}},getBreakpoint:function(t,e,n){if(void 0===e&&(e="window"),t&&("container"!==e||n)){var i=!1,r=xK(),s="window"===e?r.innerHeight:n.clientHeight,o=Object.keys(t).map(function(t){if("string"==typeof t&&0===t.indexOf("@")){var e=parseFloat(t.substr(1));return{value:s*e,point:t}}return{value:t,point:t}});o.sort(function(t,e){return parseInt(t.value,10)-parseInt(e.value,10)});for(var a=0;a0&&e.slidesOffsetBefore+e.spaceBetween*(t.slides.length-1)+t.slides[0].offsetWidth*t.slides.length;t.isLocked=e.slidesOffsetBefore&&e.slidesOffsetAfter&&i?i<=t.size:1===t.snapGrid.length,t.allowSlideNext=!t.isLocked,t.allowSlidePrev=!t.isLocked,n!==t.isLocked&&t.emit(t.isLocked?"lock":"unlock"),n&&n!==t.isLocked&&(t.isEnd=!1,t.navigation&&t.navigation.update())}},classes:{addClasses:function(){var t=this,e=t.classNames,n=t.params,i=t.$el,r=t.device,s=t.support,o=function(t,e){var n=[];return t.forEach(function(t){"object"==typeof t?Object.keys(t).forEach(function(i){t[i]&&n.push(e+i)}):"string"==typeof t&&n.push(e+t)}),n}(["initialized",n.direction,{"pointer-events":s.pointerEvents&&!s.touch},{"free-mode":n.freeMode},{autoheight:n.autoHeight},{rtl:t.rtl},{multirow:n.slidesPerColumn>1},{"multirow-column":n.slidesPerColumn>1&&"column"===n.slidesPerColumnFill},{android:r.android},{ios:r.ios},{"css-mode":n.cssMode}],n.containerModifierClass);e.push.apply(e,o),i.addClass([].concat(e).join(" ")),t.emitContainerClasses()},removeClasses:function(){var t=this;t.$el.removeClass(t.classNames.join(" ")),t.emitContainerClasses()}},images:{loadImage:function(t,e,n,i,r,s){var o,a=xK();function l(){s&&s()}FK(t).parent("picture")[0]||t.complete&&r||!e?l():((o=new a.Image).onload=l,o.onerror=l,i&&(o.sizes=i),n&&(o.srcset=n),e&&(o.src=e))},preloadImages:function(){var t=this;function e(){null==t||!t||t.destroyed||(void 0!==t.imagesLoaded&&(t.imagesLoaded+=1),t.imagesLoaded===t.imagesToLoad.length&&(t.params.updateOnImagesReady&&t.update(),t.emit("imagesReady")))}t.imagesToLoad=t.$el.find("img");for(var n=0;n1){var o=[];return FK(n.el).each(function(e){var i=HK({},n,{el:e});o.push(new t(i))}),o}var a=this;a.__swiper__=!0,a.support=GK(),a.device=WK({userAgent:n.userAgent}),a.browser=qK(),a.eventsListeners={},a.eventsAnyListeners=[],void 0===a.modules&&(a.modules={}),Object.keys(a.modules).forEach(function(t){var e=a.modules[t];if(e.params){var i=Object.keys(e.params)[0],r=e.params[i];if("object"!=typeof r||null===r||(["navigation","pagination","scrollbar"].indexOf(i)>=0&&!0===n[i]&&(n[i]={auto:!0}),!(i in n)||!("enabled"in r)))return;!0===n[i]&&(n[i]={enabled:!0}),"object"==typeof n[i]&&!("enabled"in n[i])&&(n[i].enabled=!0),n[i]||(n[i]={enabled:!1})}});var l,c,u=HK({},oQ);return a.useParams(u),a.params=HK({},u,cQ,n),a.originalParams=HK({},a.params),a.passedParams=HK({},n),a.params&&a.params.on&&Object.keys(a.params.on).forEach(function(t){a.on(t,a.params.on[t])}),a.params&&a.params.onAny&&a.onAny(a.params.onAny),a.$=FK,HK(a,{enabled:a.params.enabled,el:e,classNames:[],slides:FK(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===a.params.direction},isVertical:function(){return"vertical"===a.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:a.params.allowSlideNext,allowSlidePrev:a.params.allowSlidePrev,touchEvents:(l=["touchstart","touchmove","touchend","touchcancel"],c=["mousedown","mousemove","mouseup"],a.support.pointerEvents&&(c=["pointerdown","pointermove","pointerup"]),a.touchEventsTouch={start:l[0],move:l[1],end:l[2],cancel:l[3]},a.touchEventsDesktop={start:c[0],move:c[1],end:c[2]},a.support.touch||!a.params.simulateTouch?a.touchEventsTouch:a.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:a.params.focusableElements,lastClickTime:VK(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:a.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),a.useModules(),a.emit("_swiper"),a.params.init&&a.init(),a}var e=t.prototype;return e.enable=function(){var t=this;t.enabled||(t.enabled=!0,t.params.grabCursor&&t.setGrabCursor(),t.emit("enable"))},e.disable=function(){var t=this;!t.enabled||(t.enabled=!1,t.params.grabCursor&&t.unsetGrabCursor(),t.emit("disable"))},e.setProgress=function(t,e){var n=this;t=Math.min(Math.max(t,0),1);var i=n.minTranslate(),r=n.maxTranslate();n.translateTo((r-i)*t+i,void 0===e?0:e),n.updateActiveIndex(),n.updateSlidesClasses()},e.emitContainerClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=t.el.className.split(" ").filter(function(e){return 0===e.indexOf("swiper-container")||0===e.indexOf(t.params.containerModifierClass)});t.emit("_containerClasses",e.join(" "))}},e.getSlideClasses=function(t){var e=this;return t.className.split(" ").filter(function(t){return 0===t.indexOf("swiper-slide")||0===t.indexOf(e.params.slideClass)}).join(" ")},e.emitSlidesClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=[];t.slides.each(function(n){var i=t.getSlideClasses(n);e.push({slideEl:n,classNames:i}),t.emit("_slideClass",n,i)}),t.emit("_slideClasses",e)}},e.slidesPerViewDynamic=function(){var t=this,e=t.slides,n=t.slidesGrid,i=t.size,r=t.activeIndex,s=1;if(t.params.centeredSlides){for(var o,a=e[r].swiperSlideSize,l=r+1;li&&(o=!0));for(var c=r-1;c>=0;c-=1)e[c]&&!o&&(s+=1,(a+=e[c].swiperSlideSize)>i&&(o=!0))}else for(var u=r+1;u1)&&t.isEnd&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0)||i(),n.watchOverflow&&e!==t.snapGrid&&t.checkOverflow(),t.emit("update")}function i(){var e=Math.min(Math.max(t.rtlTranslate?-1*t.translate:t.translate,t.maxTranslate()),t.minTranslate());t.setTranslate(e),t.updateActiveIndex(),t.updateSlidesClasses()}},e.changeDirection=function(t,e){void 0===e&&(e=!0);var n=this,i=n.params.direction;return t||(t="horizontal"===i?"vertical":"horizontal"),t===i||"horizontal"!==t&&"vertical"!==t||(n.$el.removeClass(""+n.params.containerModifierClass+i).addClass(""+n.params.containerModifierClass+t),n.emitContainerClasses(),n.params.direction=t,n.slides.each(function(e){"vertical"===t?e.style.width="":e.style.height=""}),n.emit("changeDirection"),e&&n.update()),n},e.mount=function(t){var e=this;if(e.mounted)return!0;var n=FK(t||e.params.el);if(!(t=n[0]))return!1;t.swiper=e;var i=function(){return"."+(e.params.wrapperClass||"").trim().split(" ").join(".")},r=function(){if(t&&t.shadowRoot&&t.shadowRoot.querySelector){var e=FK(t.shadowRoot.querySelector(i()));return e.children=function(t){return n.children(t)},e}return n.children(i())}();if(0===r.length&&e.params.createElements){var s=_K().createElement("div");r=FK(s),s.className=e.params.wrapperClass,n.append(s),n.children("."+e.params.slideClass).each(function(t){r.append(t)})}return HK(e,{$el:n,el:t,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction"),rtlTranslate:"horizontal"===e.params.direction&&("rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0},e.init=function(t){var e=this;return e.initialized||!1===e.mount(t)||(e.emit("beforeInit"),e.params.breakpoints&&e.setBreakpoint(),e.addClasses(),e.params.loop&&e.loopCreate(),e.updateSize(),e.updateSlides(),e.params.watchOverflow&&e.checkOverflow(),e.params.grabCursor&&e.enabled&&e.setGrabCursor(),e.params.preloadImages&&e.preloadImages(),e.slideTo(e.params.loop?e.params.initialSlide+e.loopedSlides:e.params.initialSlide,0,e.params.runCallbacksOnInit,!1,!0),e.attachEvents(),e.initialized=!0,e.emit("init"),e.emit("afterInit")),e},e.destroy=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!0);var n=this,i=n.params,r=n.$el,s=n.$wrapperEl,o=n.slides;return void 0===n.params||n.destroyed||(n.emit("beforeDestroy"),n.initialized=!1,n.detachEvents(),i.loop&&n.loopDestroy(),e&&(n.removeClasses(),r.removeAttr("style"),s.removeAttr("style"),o&&o.length&&o.removeClass([i.slideVisibleClass,i.slideActiveClass,i.slideNextClass,i.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),n.emit("destroy"),Object.keys(n.eventsListeners).forEach(function(t){n.off(t)}),!1!==t&&(n.$el[0].swiper=null,function(e){var n=e;Object.keys(n).forEach(function(e){try{n[e]=null}catch(t){}try{delete n[e]}catch(t){}})}(n)),n.destroyed=!0),null},t.extendDefaults=function(t){HK(cQ,t)},t.installModule=function(e){t.prototype.modules||(t.prototype.modules={});var n=e.name||Object.keys(t.prototype.modules).length+"_"+VK();t.prototype.modules[n]=e},t.use=function(e){return Array.isArray(e)?(e.forEach(function(e){return t.installModule(e)}),t):(t.installModule(e),t)},function(t,e,n){n&&aQ(t,n)}(t,0,[{key:"extendedDefaults",get:function(){return cQ}},{key:"defaults",get:function(){return oQ}}]),t}();Object.keys(lQ).forEach(function(t){Object.keys(lQ[t]).forEach(function(e){uQ.prototype[e]=lQ[t][e]})}),uQ.use([XK,QK]);var hQ=uQ;const dQ=["prevElRef"],pQ=["nextElRef"],fQ=["scrollbarElRef"],gQ=["paginationElRef"];function mQ(t,e){1&t&&(aa(0),oa(1,"div",6,7),oa(3,"div",8,9),la())}function bQ(t,e){1&t&&oa(0,"div",10,11)}function yQ(t,e){1&t&&oa(0,"div",12,13)}function vQ(t,e){}function _Q(t,e){1&t&&Jo(0,vQ,0,0,"ng-template")}function wQ(t,e){}function xQ(t,e){1&t&&Jo(0,wQ,0,0,"ng-template")}function SQ(t,e){}function EQ(t,e){1&t&&Jo(0,SQ,0,0,"ng-template")}function CQ(t,e){}const OQ=function(t){return{$implicit:t}};function TQ(t,e){if(1&t&&(ra(0,"div",3),Jo(1,CQ,0,0,"ng-template",18),sa()),2&t){const t=va().$implicit;na("ngClass",va(2).zoomContainerClass),ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(3,OQ,t.slideData))}}function kQ(t,e){}function AQ(t,e){if(1&t&&(aa(0),Jo(1,kQ,0,0,"ng-template",18),la()),2&t){const t=va().$implicit;ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(2,OQ,t.slideData))}}function PQ(t,e){if(1&t&&(ra(0,"div",15),Jo(1,TQ,2,5,"div",16),Jo(2,AQ,2,4,"ng-container",17),sa()),2&t){const t=e.$implicit,n=va().key,i=va();(function(t){Ua(qa,Fa,t,!1)})(i.style),na("ngClass",(t.class?t.class+" ":"")+i.slideClass+(""!==n?" "+i.slideDuplicateClass:""))("ngSwitch",t.zoom),Ko("data-swiper-slide-index",t.virtualIndex?t.virtualIndex:t.slideIndex),ws(1),na("ngSwitchCase",!0)}}function MQ(t,e){1&t&&(Jo(0,PQ,3,6,"div",14),Mc(1,"async")),2&t&&na("ngForOf",Ic(1,1,e.loopSlides))}const IQ=[[["","slot","container-start"]],[["","slot","wrapper-start"]],[["","slot","wrapper-end"]],[["","slot","container-end"]]],DQ=function(t){return{loopSlides:t,key:"prepend"}},RQ=function(t){return{loopSlides:t,key:""}},NQ=function(t){return{loopSlides:t,key:"append"}},LQ=["[slot=container-start]","[slot=wrapper-start]","[slot=wrapper-end]","[slot=container-end]"];function jQ(t){return"object"==typeof t&&null!==t&&t.constructor&&"Object"===Object.prototype.toString.call(t).slice(8,-1)}function FQ(t,e,n){return!0===VQ(t)&&e&&!e.el||!("boolean"!=typeof e&&e.el!==(null==n?void 0:n.nativeElement)&&("string"==typeof e.el||"object"==typeof e.el))}function BQ(t,e){const n=["__proto__","constructor","prototype"];Object.keys(e).filter(t=>n.indexOf(t)<0).forEach(n=>{void 0!==t[n]?t[n]&&!e[n]||(jQ(e[n])&&jQ(t[n])&&Object.keys(e[n]).length>0?e[n].__swiper__?t[n]=e[n]:BQ(t[n],e[n]):t[n]=e[n]):t[n]=e[n]})}function VQ(t){return null!=t&&"false"!=`${t}`}const zQ=["pagination","navigation","scrollbar","virtual"];function UQ(t,e={}){return jQ(t)?t:!0===VQ(t)&&e}const HQ=["init","_direction","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_freeModeMomentum","_freeModeMomentumRatio","_freeModeMomentumBounce","_freeModeMomentumBounceRatio","_freeModeMomentumVelocityRatio","_freeModeSticky","_freeModeMinimumVelocity","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","_spaceBetween","_slidesPerView","_slidesPerColumn","_slidesPerColumnFill","_slidesPerGroup","_slidesPerGroupSkip","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_watchSlidesVisibility","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_preloadImages","updateOnImagesReady","_loop","_loopAdditionalSlides","_loopedSlides","_loopFillGroupWithBlank","loopPreventsSlide","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","hashNavigation","history","keyboard","lazy","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom"].map(t=>t.replace(/_/,""));function $Q(t={}){const e={on:{}},n={};BQ(e,hQ.defaults),BQ(e,hQ.extendedDefaults),e._emitClasses=!0;const i={};return Object.keys(t).forEach(r=>{const s=r.replace(/^_/,"");void 0!==t[s]&&(HQ.indexOf(s)>=0?jQ(t[s])?(e[s]={},n[s]={},BQ(e[s],t[s]),BQ(n[s],t[s])):(e[s]=t[s],n[s]=t[s]):i[s]=t[s])}),{params:e,passedParams:n,rest:i}}let GQ=(()=>{class t{constructor(t){this.template=t,this.class="",this.slideData={isActive:!1,isPrev:!1,isNext:!1,isVisible:!1,isDuplicate:!1}}set zoom(t){this._zoom=VQ(t)}get zoom(){return this._zoom}get classNames(){return this._classNames}set classNames(t){this._classNames!==t&&(this._classNames=t,this.slideData={isActive:this._hasClass(["swiper-slide-active","swiper-slide-duplicate-active"]),isVisible:this._hasClass(["swiper-slide-visible"]),isDuplicate:this._hasClass(["swiper-slide-duplicate"]),isPrev:this._hasClass(["swiper-slide-prev","swiper-slide-duplicate-prev"]),isNext:this._hasClass(["swiper-slide-next","swiper-slide-duplicate-next"])})}_hasClass(t){return t.some(t=>this._classNames.indexOf(t)>=0)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","swiperSlide",""]],inputs:{class:"class",zoom:"zoom",virtualIndex:"virtualIndex"}}),t})(),WQ=(()=>{class t{constructor(t,e,n,i){this._ngZone=t,this.elementRef=e,this._changeDetectorRef=n,this._platformId=i,this.slideClass="swiper-slide",this.wrapperClass="swiper-wrapper",this.showNavigation=!0,this.showPagination=!0,this.showScrollbar=!0,this.s__beforeBreakpoint=new Rc,this.s__containerClasses=new Rc,this.s__slideClass=new Rc,this.s__swiper=new Rc,this.s_activeIndexChange=new Rc,this.s_afterInit=new Rc,this.s_autoplay=new Rc,this.s_autoplayStart=new Rc,this.s_autoplayStop=new Rc,this.s_beforeDestroy=new Rc,this.s_beforeInit=new Rc,this.s_beforeLoopFix=new Rc,this.s_beforeResize=new Rc,this.s_beforeSlideChangeStart=new Rc,this.s_beforeTransitionStart=new Rc,this.s_breakpoint=new Rc,this.s_changeDirection=new Rc,this.s_click=new Rc,this.s_doubleTap=new Rc,this.s_doubleClick=new Rc,this.s_destroy=new Rc,this.s_fromEdge=new Rc,this.s_hashChange=new Rc,this.s_hashSet=new Rc,this.s_imagesReady=new Rc,this.s_init=new Rc,this.s_keyPress=new Rc,this.s_lazyImageLoad=new Rc,this.s_lazyImageReady=new Rc,this.s_loopFix=new Rc,this.s_momentumBounce=new Rc,this.s_navigationHide=new Rc,this.s_navigationShow=new Rc,this.s_observerUpdate=new Rc,this.s_orientationchange=new Rc,this.s_paginationHide=new Rc,this.s_paginationRender=new Rc,this.s_paginationShow=new Rc,this.s_paginationUpdate=new Rc,this.s_progress=new Rc,this.s_reachBeginning=new Rc,this.s_reachEnd=new Rc,this.s_realIndexChange=new Rc,this.s_resize=new Rc,this.s_scroll=new Rc,this.s_scrollbarDragEnd=new Rc,this.s_scrollbarDragMove=new Rc,this.s_scrollbarDragStart=new Rc,this.s_setTransition=new Rc,this.s_setTranslate=new Rc,this.s_slideChange=new Rc,this.s_slideChangeTransitionEnd=new Rc,this.s_slideChangeTransitionStart=new Rc,this.s_slideNextTransitionEnd=new Rc,this.s_slideNextTransitionStart=new Rc,this.s_slidePrevTransitionEnd=new Rc,this.s_slidePrevTransitionStart=new Rc,this.s_slideResetTransitionStart=new Rc,this.s_slideResetTransitionEnd=new Rc,this.s_sliderMove=new Rc,this.s_sliderFirstMove=new Rc,this.s_slidesLengthChange=new Rc,this.s_slidesGridLengthChange=new Rc,this.s_snapGridLengthChange=new Rc,this.s_snapIndexChange=new Rc,this.s_tap=new Rc,this.s_toEdge=new Rc,this.s_touchEnd=new Rc,this.s_touchMove=new Rc,this.s_touchMoveOpposite=new Rc,this.s_touchStart=new Rc,this.s_transitionEnd=new Rc,this.s_transitionStart=new Rc,this.s_update=new Rc,this.s_zoomChange=new Rc,this.s_swiper=new Rc,this.indexChange=new Rc,this._activeSlides=new P,this.containerClasses="swiper-container",this.slidesChanges=t=>{this.slides=t.map((t,e)=>(t.slideIndex=e,t.classNames=this.slideClass,t)),this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.virtual?this.swiperRef&&this.swiperRef.virtual&&this._ngZone.runOutsideAngular(()=>{this.swiperRef.virtual.slides=this.slides,this.swiperRef.virtual.update(!0)}):(this.prependSlides=wd(this.slides.slice(this.slides.length-this.loopedSlides)),this.appendSlides=wd(this.slides.slice(0,this.loopedSlides))),this._changeDetectorRef.detectChanges()},this.style=null,this.updateVirtualSlides=t=>{!this.swiperRef||this.currentVirtualData&&this.currentVirtualData.from===t.from&&this.currentVirtualData.to===t.to&&this.currentVirtualData.offset===t.offset||(this.style=this.swiperRef.isHorizontal()?{[this.swiperRef.rtlTranslate?"right":"left"]:`${t.offset}px`}:{top:`${t.offset}px`},this.currentVirtualData=t,this._activeSlides.next(t.slides),this._ngZone.run(()=>{this._changeDetectorRef.detectChanges()}),this._ngZone.runOutsideAngular(()=>{this.swiperRef.updateSlides(),this.swiperRef.updateProgress(),this.swiperRef.updateSlidesClasses(),this.swiperRef.lazy&&this.swiperRef.params.lazy.enabled&&this.swiperRef.lazy.load(),this.swiperRef.virtual.update(!0)}))}}set navigation(t){var e,n,i;const r="boolean"!=typeof this._navigation?null===(e=this._navigation)||void 0===e?void 0:e.nextEl:null,s="boolean"!=typeof this._navigation?null===(n=this._navigation)||void 0===n?void 0:n.prevEl:null;this._navigation=UQ(t,{nextEl:r||null,prevEl:s||null}),this.showNavigation=!(!0!==VQ(t)||this._navigation&&"boolean"!=typeof this._navigation&&this._navigation.prevEl!==(null===(i=this._prevElRef)||void 0===i?void 0:i.nativeElement)&&(null!==this._navigation.prevEl||null!==this._navigation.nextEl)&&("string"==typeof this._navigation.nextEl||"string"==typeof this._navigation.prevEl||"object"==typeof this._navigation.nextEl||"object"==typeof this._navigation.prevEl))}get navigation(){return this._navigation}set pagination(t){var e;const n="boolean"!=typeof this._pagination?null===(e=this._pagination)||void 0===e?void 0:e.el:null;this._pagination=UQ(t,{el:n||null}),this.showPagination=FQ(t,this._pagination,this._paginationElRef)}get pagination(){return this._pagination}set scrollbar(t){var e;const n="boolean"!=typeof this._scrollbar?null===(e=this._scrollbar)||void 0===e?void 0:e.el:null;this._scrollbar=UQ(t,{el:n||null}),this.showScrollbar=FQ(t,this._scrollbar,this._scrollbarElRef)}get scrollbar(){return this._scrollbar}set virtual(t){this._virtual=UQ(t)}get virtual(){return this._virtual}set index(t){this.setIndex(t)}set config(t){this.updateSwiper(t);const{params:e}=$Q(t);Object.assign(this,e)}set prevElRef(t){this._prevElRef=t,this._setElement(t,this.navigation,"navigation","prevEl")}set nextElRef(t){this._nextElRef=t,this._setElement(t,this.navigation,"navigation","nextEl")}set scrollbarElRef(t){this._scrollbarElRef=t,this._setElement(t,this.scrollbar,"scrollbar")}set paginationElRef(t){this._paginationElRef=t,this._setElement(t,this.pagination,"pagination")}get activeSlides(){return this.virtual?this._activeSlides:wd(this.slides)}get zoomContainerClass(){return"boolean"!=typeof this.zoom?this.zoom.containerClass:"swiper-zoom-container"}_setElement(t,e,n,i="el"){if(!t||!e)return;if(e&&t.nativeElement){if(e[i]===t.nativeElement)return;e[i]=t.nativeElement}const r={};r[n]=!0,this.updateInitSwiper(r)}ngOnInit(){const{params:t}=$Q(this);Object.assign(this,t)}ngAfterViewInit(){this.childrenSlidesInit(),this.initSwiper(),this._changeDetectorRef.detectChanges(),setTimeout(()=>{this.s_swiper.emit(this.swiperRef)})}childrenSlidesInit(){this.slidesChanges(this.slidesEl),this.slidesEl.changes.subscribe(this.slidesChanges)}get isSwiperActive(){return this.swiperRef&&!this.swiperRef.destroyed}initSwiper(){const{params:t}=$Q(this);Object.assign(this,t),this._ngZone.runOutsideAngular(()=>{t.init=!1,t.virtual||(t.observer=!0),t.onAny=(t,...e)=>{const n=this[`s_${t}`];n&&n.emit(...e)},Object.assign(t.on,{_containerClasses(t,e){this.containerClasses=e},_slideClasses:(t,e)=>{e.forEach(({slideEl:t,classNames:e},n)=>{const i=parseInt(t.getAttribute("data-swiper-slide-index"))||n;if(this.virtual){const t=this.slides.find(t=>t.virtualIndex&&t.virtualIndex===i);if(t)return void(t.classNames=e)}this.slides[i]&&(this.slides[i].classNames=e)}),this._changeDetectorRef.detectChanges()}});const e=new hQ(t);if(e.loopCreate=()=>{},e.loopDestroy=()=>{},t.loop&&(e.loopedSlides=this.loopedSlides),e.virtual&&e.params.virtual.enabled){e.virtual.slides=this.slides;const t={cache:!1,renderExternal:this.updateVirtualSlides,renderExternalUpdate:!1};BQ(e.params.virtual,t),BQ(e.originalParams.virtual,t)}Lh(this._platformId)&&(this.swiperRef=e.init(this.elementRef.nativeElement),this.swiperRef.virtual&&this.swiperRef.params.virtual.enabled&&this.swiperRef.virtual.update(!0),this._changeDetectorRef.detectChanges(),e.on("slideChange",()=>{this.indexChange.emit(this.swiperRef.realIndex)}))})}ngOnChanges(t){this.updateSwiper(t),this._changeDetectorRef.detectChanges()}updateInitSwiper(t){!t||!this.swiperRef||this.swiperRef.destroyed||this._ngZone.runOutsideAngular(()=>{const{pagination:e,navigation:n,scrollbar:i,thumbs:r}=this.swiperRef;t.pagination&&(this.pagination&&"boolean"!=typeof this.pagination&&this.pagination.el&&e&&!e.el?(this.updateParameter("pagination",this.pagination),e.init(),e.render(),e.update()):(e.destroy(),e.el=null)),t.scrollbar&&(this.scrollbar&&"boolean"!=typeof this.scrollbar&&this.scrollbar.el&&i&&!i.el?(this.updateParameter("scrollbar",this.scrollbar),i.init(),i.updateSize(),i.setTranslate()):(i.destroy(),i.el=null)),t.navigation&&(this.navigation&&"boolean"!=typeof this.navigation&&this.navigation.prevEl&&this.navigation.nextEl&&n&&!n.prevEl&&!n.nextEl?(this.updateParameter("navigation",this.navigation),n.init(),n.update()):n.prevEl&&n.nextEl&&(n.destroy(),n.nextEl=null,n.prevEl=null)),t.thumbs&&this.thumbs&&this.thumbs.swiper&&(this.updateParameter("thumbs",this.thumbs),r.init()&&r.update(!0)),t.controller&&this.controller&&this.controller.control&&(this.swiperRef.controller.control=this.controller.control),this.swiperRef.update()})}updateSwiper(t){this._ngZone.runOutsideAngular(()=>{var e,n;if(!t.config&&t&&this.swiperRef&&!this.swiperRef.destroyed){for(const i in t){if(zQ.indexOf(i)>=0)continue;const r=null!==(n=null===(e=t[i])||void 0===e?void 0:e.currentValue)&&void 0!==n?n:t[i];this.updateParameter(i,r)}t.allowSlideNext&&(this.swiperRef.allowSlideNext=this.allowSlideNext),t.allowSlidePrev&&(this.swiperRef.allowSlidePrev=this.allowSlidePrev),t.direction&&this.swiperRef.changeDirection(this.direction,!1),t.breakpoints&&(this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.swiperRef.currentBreakpoint=null,this.swiperRef.setBreakpoint()),(t.thumbs||t.controller)&&this.updateInitSwiper(t),this.swiperRef.update()}})}calcLoopedSlides(){if(!this.loop)return;let t=this.slidesPerView;if(this.breakpoints){const e=hQ.prototype.getBreakpoint(this.breakpoints),n=e in this.breakpoints?this.breakpoints[e]:void 0;n&&n.slidesPerView&&(t=n.slidesPerView)}if("auto"===t)return this.loopedSlides=this.slides.length,this.slides.length;let e=this.loopedSlides||t;return e+=this.loopAdditionalSlides,e>this.slides.length&&(e=this.slides.length),this.loopedSlides=e,e}updateParameter(t,e){if(!this.swiperRef||this.swiperRef.destroyed)return;const n=t.replace(/^_/,""),i=jQ(this.swiperRef.params[n]);if(Object.keys(this.swiperRef.modules).indexOf(n)>=0){const t=this.swiperRef.modules[n].params[n];i?BQ(this.swiperRef.params[n],t):this.swiperRef.params[n]=t}i&&jQ(e)?BQ(this.swiperRef.params[n],e):this.swiperRef.params[n]=e}setIndex(t,e,n){this.isSwiperActive?t!==this.swiperRef.activeIndex&&this._ngZone.runOutsideAngular(()=>{this.loop?this.swiperRef.slideToLoop(t,e,!n):this.swiperRef.slideTo(t,e,!n)}):this.initialSlide=t}ngOnDestroy(){this._ngZone.runOutsideAngular(()=>{var t;null===(t=this.swiperRef)||void 0===t||t.destroy(!0,!1)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["swiper"],["","swiper",""]],contentQueries:function(t,e,n){if(1&t&&Xc(n,GQ,4),2&t){let t;Wc(t=Yc())&&(e.slidesEl=t)}},viewQuery:function(t,e){if(1&t&&(qc(dQ,5),qc(pQ,5),qc(fQ,5),qc(gQ,5)),2&t){let t;Wc(t=Yc())&&(e.prevElRef=t.first),Wc(t=Yc())&&(e.nextElRef=t.first),Wc(t=Yc())&&(e.scrollbarElRef=t.first),Wc(t=Yc())&&(e.paginationElRef=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.containerClasses)},inputs:{slideClass:"slideClass",wrapperClass:"wrapperClass",navigation:"navigation",pagination:"pagination",scrollbar:"scrollbar",virtual:"virtual",index:"index",config:"config",loopedSlides:"loopedSlides",initialSlide:"initialSlide",direction:"direction",touchEventsTarget:"touchEventsTarget",speed:"speed",cssMode:"cssMode",updateOnWindowResize:"updateOnWindowResize",resizeObserver:"resizeObserver",nested:"nested",focusableElements:"focusableElements",width:"width",height:"height",preventInteractionOnTransition:"preventInteractionOnTransition",userAgent:"userAgent",url:"url",edgeSwipeDetection:"edgeSwipeDetection",edgeSwipeThreshold:"edgeSwipeThreshold",freeMode:"freeMode",freeModeMomentum:"freeModeMomentum",freeModeMomentumRatio:"freeModeMomentumRatio",freeModeMomentumBounce:"freeModeMomentumBounce",freeModeMomentumBounceRatio:"freeModeMomentumBounceRatio",freeModeMomentumVelocityRatio:"freeModeMomentumVelocityRatio",freeModeSticky:"freeModeSticky",freeModeMinimumVelocity:"freeModeMinimumVelocity",autoHeight:"autoHeight",setWrapperSize:"setWrapperSize",virtualTranslate:"virtualTranslate",effect:"effect",breakpoints:"breakpoints",spaceBetween:"spaceBetween",slidesPerView:"slidesPerView",slidesPerColumn:"slidesPerColumn",slidesPerColumnFill:"slidesPerColumnFill",slidesPerGroup:"slidesPerGroup",slidesPerGroupSkip:"slidesPerGroupSkip",centeredSlides:"centeredSlides",centeredSlidesBounds:"centeredSlidesBounds",slidesOffsetBefore:"slidesOffsetBefore",slidesOffsetAfter:"slidesOffsetAfter",normalizeSlideIndex:"normalizeSlideIndex",centerInsufficientSlides:"centerInsufficientSlides",watchOverflow:"watchOverflow",roundLengths:"roundLengths",touchRatio:"touchRatio",touchAngle:"touchAngle",simulateTouch:"simulateTouch",shortSwipes:"shortSwipes",longSwipes:"longSwipes",longSwipesRatio:"longSwipesRatio",longSwipesMs:"longSwipesMs",followFinger:"followFinger",allowTouchMove:"allowTouchMove",threshold:"threshold",touchMoveStopPropagation:"touchMoveStopPropagation",touchStartPreventDefault:"touchStartPreventDefault",touchStartForcePreventDefault:"touchStartForcePreventDefault",touchReleaseOnEdges:"touchReleaseOnEdges",uniqueNavElements:"uniqueNavElements",resistance:"resistance",resistanceRatio:"resistanceRatio",watchSlidesProgress:"watchSlidesProgress",watchSlidesVisibility:"watchSlidesVisibility",grabCursor:"grabCursor",preventClicks:"preventClicks",preventClicksPropagation:"preventClicksPropagation",slideToClickedSlide:"slideToClickedSlide",preloadImages:"preloadImages",updateOnImagesReady:"updateOnImagesReady",loop:"loop",loopAdditionalSlides:"loopAdditionalSlides",loopFillGroupWithBlank:"loopFillGroupWithBlank",loopPreventsSlide:"loopPreventsSlide",allowSlidePrev:"allowSlidePrev",allowSlideNext:"allowSlideNext",swipeHandler:"swipeHandler",noSwiping:"noSwiping",noSwipingClass:"noSwipingClass",noSwipingSelector:"noSwipingSelector",passiveListeners:"passiveListeners",containerModifierClass:"containerModifierClass",slideBlankClass:"slideBlankClass",slideActiveClass:"slideActiveClass",slideDuplicateActiveClass:"slideDuplicateActiveClass",slideVisibleClass:"slideVisibleClass",slideDuplicateClass:"slideDuplicateClass",slideNextClass:"slideNextClass",slideDuplicateNextClass:"slideDuplicateNextClass",slidePrevClass:"slidePrevClass",slideDuplicatePrevClass:"slideDuplicatePrevClass",runCallbacksOnInit:"runCallbacksOnInit",observeParents:"observeParents",observeSlideChildren:"observeSlideChildren",a11y:"a11y",autoplay:"autoplay",controller:"controller",coverflowEffect:"coverflowEffect",cubeEffect:"cubeEffect",fadeEffect:"fadeEffect",flipEffect:"flipEffect",hashNavigation:"hashNavigation",history:"history",keyboard:"keyboard",lazy:"lazy",mousewheel:"mousewheel",parallax:"parallax",thumbs:"thumbs",zoom:"zoom",class:"class",id:"id"},outputs:{s__beforeBreakpoint:"_beforeBreakpoint",s__containerClasses:"_containerClasses",s__slideClass:"_slideClass",s__swiper:"_swiper",s_activeIndexChange:"activeIndexChange",s_afterInit:"afterInit",s_autoplay:"autoplay",s_autoplayStart:"autoplayStart",s_autoplayStop:"autoplayStop",s_beforeDestroy:"beforeDestroy",s_beforeInit:"beforeInit",s_beforeLoopFix:"beforeLoopFix",s_beforeResize:"beforeResize",s_beforeSlideChangeStart:"beforeSlideChangeStart",s_beforeTransitionStart:"beforeTransitionStart",s_breakpoint:"breakpoint",s_changeDirection:"changeDirection",s_click:"click",s_doubleTap:"doubleTap",s_doubleClick:"doubleClick",s_destroy:"destroy",s_fromEdge:"fromEdge",s_hashChange:"hashChange",s_hashSet:"hashSet",s_imagesReady:"imagesReady",s_init:"init",s_keyPress:"keyPress",s_lazyImageLoad:"lazyImageLoad",s_lazyImageReady:"lazyImageReady",s_loopFix:"loopFix",s_momentumBounce:"momentumBounce",s_navigationHide:"navigationHide",s_navigationShow:"navigationShow",s_observerUpdate:"observerUpdate",s_orientationchange:"orientationchange",s_paginationHide:"paginationHide",s_paginationRender:"paginationRender",s_paginationShow:"paginationShow",s_paginationUpdate:"paginationUpdate",s_progress:"progress",s_reachBeginning:"reachBeginning",s_reachEnd:"reachEnd",s_realIndexChange:"realIndexChange",s_resize:"resize",s_scroll:"scroll",s_scrollbarDragEnd:"scrollbarDragEnd",s_scrollbarDragMove:"scrollbarDragMove",s_scrollbarDragStart:"scrollbarDragStart",s_setTransition:"setTransition",s_setTranslate:"setTranslate",s_slideChange:"slideChange",s_slideChangeTransitionEnd:"slideChangeTransitionEnd",s_slideChangeTransitionStart:"slideChangeTransitionStart",s_slideNextTransitionEnd:"slideNextTransitionEnd",s_slideNextTransitionStart:"slideNextTransitionStart",s_slidePrevTransitionEnd:"slidePrevTransitionEnd",s_slidePrevTransitionStart:"slidePrevTransitionStart",s_slideResetTransitionStart:"slideResetTransitionStart",s_slideResetTransitionEnd:"slideResetTransitionEnd",s_sliderMove:"sliderMove",s_sliderFirstMove:"sliderFirstMove",s_slidesLengthChange:"slidesLengthChange",s_slidesGridLengthChange:"slidesGridLengthChange",s_snapGridLengthChange:"snapGridLengthChange",s_snapIndexChange:"snapIndexChange",s_tap:"tap",s_toEdge:"toEdge",s_touchEnd:"touchEnd",s_touchMove:"touchMove",s_touchMoveOpposite:"touchMoveOpposite",s_touchStart:"touchStart",s_transitionEnd:"transitionEnd",s_transitionStart:"transitionStart",s_update:"update",s_zoomChange:"zoomChange",s_swiper:"swiper",indexChange:"indexChange"},features:[ye],ngContentSelectors:LQ,decls:13,vars:17,consts:[[4,"ngIf"],["class","swiper-scrollbar",4,"ngIf"],["class","swiper-pagination",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["slidesTemplate",""],[1,"swiper-button-prev"],["prevElRef",""],[1,"swiper-button-next"],["nextElRef",""],[1,"swiper-scrollbar"],["scrollbarElRef",""],[1,"swiper-pagination"],["paginationElRef",""],[3,"ngClass","style","ngSwitch",4,"ngFor","ngForOf"],[3,"ngClass","ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,e){if(1&t&&(wa(IQ),xa(0),Jo(1,mQ,5,0,"ng-container",0),Jo(2,bQ,2,0,"div",1),Jo(3,yQ,2,0,"div",2),ra(4,"div",3),xa(5,1),Jo(6,_Q,1,0,void 0,4),Jo(7,xQ,1,0,void 0,4),Jo(8,EQ,1,0,void 0,4),xa(9,2),sa(),xa(10,3),Jo(11,MQ,2,3,"ng-template",null,5,Jc)),2&t){const t=ta(12);ws(1),na("ngIf",e.navigation&&e.showNavigation),ws(1),na("ngIf",e.scrollbar&&e.showScrollbar),ws(1),na("ngIf",e.pagination&&e.showPagination),ws(1),na("ngClass",e.wrapperClass),Ko("id",e.id),ws(2),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(11,DQ,e.prependSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(13,RQ,e.activeSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(15,NQ,e.appendSlides))}},directives:[_h,mh,kh,yh,Eh,Ch,Oh],pipes:[Dh],styles:["\n swiper {\n display: block;\n }\n "],encapsulation:2,changeDetection:0}),t})(),qQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();function XQ(){return(XQ=Object.assign||function(t){for(var e=1;e0&&(n(s,!!t.isBeginning),t.params.watchOverflow&&t.enabled&&s[t.isLocked?"addClass":"removeClass"](e.lockClass)),r&&r.length>0&&(n(r,!!t.isEnd),t.params.watchOverflow&&t.enabled&&r[t.isLocked?"addClass":"removeClass"](e.lockClass))}},onPrevClick:function(t){var e=this;t.preventDefault(),(!e.isBeginning||e.params.loop)&&e.slidePrev()},onNextClick:function(t){var e=this;t.preventDefault(),(!e.isEnd||e.params.loop)&&e.slideNext()},init:function(){var t,e,n=this,i=n.params.navigation;n.params.navigation=function(t,e,n,i){var r=_K();return n&&Object.keys(i).forEach(function(n){if(!e[n]&&!0===e.auto){var s=r.createElement("div");s.className=i[n],t.append(s),e[n]=s}}),e}(n.$el,n.params.navigation,n.params.createElements,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),(i.nextEl||i.prevEl)&&(i.nextEl&&(t=FK(i.nextEl),n.params.uniqueNavElements&&"string"==typeof i.nextEl&&t.length>1&&1===n.$el.find(i.nextEl).length&&(t=n.$el.find(i.nextEl))),i.prevEl&&(e=FK(i.prevEl),n.params.uniqueNavElements&&"string"==typeof i.prevEl&&e.length>1&&1===n.$el.find(i.prevEl).length&&(e=n.$el.find(i.prevEl))),t&&t.length>0&&t.on("click",n.navigation.onNextClick),e&&e.length>0&&e.on("click",n.navigation.onPrevClick),HK(n.navigation,{$nextEl:t,nextEl:t&&t[0],$prevEl:e,prevEl:e&&e[0]}),n.enabled||(t&&t.addClass(i.lockClass),e&&e.addClass(i.lockClass)))},destroy:function(){var t=this,e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n.length&&(n.off("click",t.navigation.onNextClick),n.removeClass(t.params.navigation.disabledClass)),i&&i.length&&(i.off("click",t.navigation.onPrevClick),i.removeClass(t.params.navigation.disabledClass))}},KQ={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){$K(this,{navigation:XQ({},YQ)})},on:{init:function(t){t.navigation.init(),t.navigation.update()},toEdge:function(t){t.navigation.update()},fromEdge:function(t){t.navigation.update()},destroy:function(t){t.navigation.destroy()},"enable disable":function(t){var e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass),i&&i[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass)},click:function(t,e){var n=t.navigation,i=n.$nextEl,r=n.$prevEl,s=e.target;if(t.params.navigation.hideOnClick&&!FK(s).is(r)&&!FK(s).is(i)){if(t.pagination&&t.params.pagination&&t.params.pagination.clickable&&(t.pagination.el===s||t.pagination.el.contains(s)))return;var o;i?o=i.hasClass(t.params.navigation.hiddenClass):r&&(o=r.hasClass(t.params.navigation.hiddenClass)),t.emit(!0===o?"navigationShow":"navigationHide"),i&&i.toggleClass(t.params.navigation.hiddenClass),r&&r.toggleClass(t.params.navigation.hiddenClass)}}}};let QQ=(()=>{class t{constructor(){hQ.use([KQ])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,qQ]]}),t})(),ZQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),JQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX,f_,QQ,ZQ]]}),t})(),tZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Dp,JQ]]}),t})();const eZ={isolated:!0},nZ=new oi("Message service configuration",{providedIn:"root",factory:()=>eZ});let iZ=(()=>{class t{constructor(t,e,n){this.source=t,this.channel=e,this.messages=n}sendMessage(t){this.channel.next({id:this.nextMessageId(),source:this.source,payload:t})}getMessages(){return this.messages.pipe(Hd(t=>t.source!==this.source))}getMessagesFromSource(t){return this.getMessages().pipe(Hd(e=>e.source===t))}getMessagesFromSources(t){return this.getMessages().pipe(Hd(e=>t.includes(e.source)))}nextMessageId(){return t.counter++}}return t.counter=0,t})(),rZ=(()=>{class t{constructor(t,e){this.config=t,this.parent=e,this.channel=new P,this.messages=t.isolated||!e?this.channel.asObservable():U([this.channel,e.messages.pipe(Xp(()=>!this.channel.closed))]).pipe(Y())}ngOnDestroy(){this.channel.complete()}connect(t){return new iZ(t,this.channel,this.messages)}}return t.\u0275fac=function(e){return new(e||t)(Ci(nZ),Ci(t,12))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),sZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:nZ,useValue:eZ}],imports:[[gd,ky,f_]]}),t})();function oZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function aZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function lZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function cZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}const uZ=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",hZ=jy(class{constructor(t){this._elementRef=t}},"primary"),dZ=new oi("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}});class pZ extends hZ{constructor(t,e,n,i,r){super(t),this._document=n,this._diameter=100,this._value=0,this._fallbackAnimation=!1,this.mode="determinate";const s=pZ._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),s.has(n.head)||s.set(n.head,new Set([100])),this._fallbackAnimation=e.EDGE||e.TRIDENT,this._noopAnimations="NoopAnimations"===i&&!!r&&!r._forceAnimations,r&&(r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth))}get diameter(){return this._diameter}set diameter(t){this._diameter=bd(t),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(t){this._strokeWidth=bd(t)}get value(){return"determinate"===this.mode?this._value:0}set value(t){this._value=Math.max(0,Math.min(100,bd(t)))}ngOnInit(){const t=this._elementRef.nativeElement;this._styleRoot=xp(t)||this._document.head,this._attachStyleNode(),t.classList.add(`mat-progress-spinner-indeterminate${this._fallbackAnimation?"-fallback":""}-animation`)}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const t=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${t} ${t}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_attachStyleNode(){const t=this._styleRoot,e=this._diameter,n=pZ._diameters;let i=n.get(t);if(!i||!i.has(e)){const r=this._document.createElement("style");r.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),r.textContent=this._getAnimationText(),t.appendChild(r),i||(i=new Set,n.set(t,i)),i.add(e)}}_getAnimationText(){const t=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*t).replace(/END_VALUE/g,""+.2*t).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}pZ.\u0275fac=function(t){return new(t||pZ)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},pZ.\u0275cmp=Jt({type:pZ,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(t,e){2&t&&(Ko("aria-valuemin","determinate"===e.mode?0:null)("aria-valuemax","determinate"===e.mode?100:null)("aria-valuenow","determinate"===e.mode?e.value:null)("mode",e.mode),La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,oZ,1,9,"circle",1),Jo(2,aZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),pZ._diameters=new WeakMap;let fZ=(()=>{class t extends pZ{constructor(t,e,n,i,r){super(t,e,n,i,r),this.mode="indeterminate"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},t.\u0275cmp=Jt({type:t,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(t,e){2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color"},features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,lZ,1,9,"circle",1),Jo(2,cZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),t})(),gZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,Rh],Ny]}),t})(),mZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,gZ]]}),t})(),bZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,gZ]]}),t})();const yZ={initialConfig:{},parse:{},rename:{}};class vZ{constructor(t,e){this.configState=t,this.storedChanges={},this.options=Object.assign(Object.assign({},yZ),e)}addChanges(t){this.storedChanges=Object.assign(Object.assign({},this.storedChanges),t)}applyChanges(t,e={}){void 0===t&&(t=this.storedChanges,this.storedChanges={});const{configState:n,options:{initialConfig:i}}=this,r=n.snapshot,s=Object.assign(Object.assign(Object.assign({},i),r),e);for(const[o,a]of Object.entries(t))this.processChange(o,a,s);n.setConfig(s)}processChange(t,e,n){var i,r;const{options:{parse:s,rename:o}}=this,a=null!==(i=o[t])&&void 0!==i?i:t,l=e.currentValue,c=null!==(r=s[t])&&void 0!==r?r:s[a];if(null==l)delete n[a];else if(c)try{n[a]=c(l)}catch(u){console.warn(`Failed to parse ${t} = ${l}`,u.message)}else n[a]=l}}let _Z=(()=>{class t{constructor(t,e,n={}){this.configState=t,this.cdr=e,this.options=n,this.initialized=!1,this.configManager=new vZ(this.configState,this.options)}ngOnInit(){var t;this._init=setTimeout(()=>this.initialize(),null!==(t=this.options.initialDelay)&&void 0!==t?t:0)}ngOnDestroy(){this._init&&clearTimeout(this._init)}ngOnChanges(t){this.configManager.addChanges(t),this.initialized&&this.configManager.applyChanges()}initialize(){this._init=void 0,!this.initialized&&(this.configManager.applyChanges(),this.initialized=!0,this.cdr.markForCheck())}}return t.\u0275fac=function(t){!function(){throw new Error("invalid")}()},t.\u0275dir=se({type:t,features:[ye]}),t})();const wZ={boolean:t=>"false"!=`${t}`,json:t=>"string"==typeof t?JSON.parse(t):t,function:t=>{if("function"!=typeof t)throw new Error("Expected a javascript function");return t}};let xZ=(()=>{class t{constructor(){this.className="ccf-spinner-overlay",this.active=!1}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-spinner-overlay"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("active",e.active))},inputs:{active:"active",text:"text"},decls:3,vars:1,consts:[[1,"content"]],template:function(t,e){1&t&&(oa(0,"mat-spinner"),ra(1,"div",0),Za(2),sa()),2&t&&(ws(2),Ja(e.text))},directives:[fZ],styles:["[_nghost-%COMP%]{display:flex;position:absolute;width:100%;height:100%;z-index:99;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;visibility:hidden;opacity:0;transition:visibility .6s,opacity .4s ease-in-out}[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{margin-bottom:1rem;opacity:0;transition:opacity .3s ease-in-out .3s}.active[_nghost-%COMP%]{pointer-events:auto;visibility:visible;opacity:1}.active[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{opacity:1}"],changeDetection:0}),t})();const SZ=rZ,EZ=["*"];let CZ=(()=>{class t{constructor(t,e){this.className="ccf-drawer-content",this.animationsEnabled=!1,this.leftMargin=0,this.rightMargin=0,this.faded=!1,this.drawers=[],this.subscriptions=new g;const n=t.connect(this).getMessages();this.subscriptions.add(n.subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){switch(t.payload.type){case"drawer-containers-changed":return this.drawers=t.payload.drawers,this.updateFaded(),!0;case"drawer-initialized":return this.animationsEnabled=!0,!0;case"drawer-toggled":{const e=t.source.position,{opened:n,width:i,margin:r}=t.payload;return this.updateMargin(e,n,i,r),this.updateFaded(),!0}default:return!1}}updateMargin(t,e,n,i){const r=e?n+i:i;"start"===t?this.leftMargin=r:this.rightMargin=r}updateFaded(){const[t,e]=this.drawers;this.faded=(null==t?void 0:t.opened)&&(null==t?void 0:t.expanded)||(null==e?void 0:e.opened)&&(null==e?void 0:e.expanded)}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-content"]],hostVars:9,hostBindings:function(t,e){2&t&&(rl("@fadeInOut",e.faded),Ba(e.className),La("margin-left",e.leftMargin,"px")("margin-right",e.rightMargin,"px"),ja("cff-drawer-content-animations",e.animationsEnabled))},ngContentSelectors:EZ,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:["[_nghost-%COMP%]{display:block;height:calc(100% - 5.5rem);z-index:2;overflow:auto}.cff-drawer-content-animations[_nghost-%COMP%]{transition-duration:.5s;transition-timing-function:ease-in-out;transition-property:margin-left,margin-right}"],data:{animation:[Vg("fadeInOut",[$g("false",Hg({opacity:1})),$g("true",Hg({opacity:0})),Wg("false <=> true",zg("1s"))])]},changeDetection:0}),t})();const OZ=["*"],TZ={params:{width:0,margin:0,margin2:0}};class kZ{constructor(){this.initialized=!1,this.deferred=new Promise(t=>{this.resolve=t})}set(){this.initialized=!0,this.resolve()}wait(){return lw(this,void 0,void 0,function*(){return this.deferred})}valueOf(){return this.initialized}}let AZ=(()=>{class t{constructor(t,e,n){this.element=n,this.className="ccf-drawer",this._position="start",this._opened=!1,this._expanded=!1,this.openedChange=new Rc(!0),this.expandedChange=new Rc(!0),this.stateChange=new Rc(!0),this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._measuredWidth=0,this.width=0,this._measuredMargin=0,this.margin2=0,this.initialized=new kZ,this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get classEnd(){return"end"===this.position}get position(){return this._position}set position(t){this._position=t||"start"}get opened(){return this._opened}set opened(t){this.toggle(md(t))}get expanded(){return this._expanded}set expanded(t){this.toggleExpanded(md(t))}get expandedStateObj(){return{value:this.expandedState2,params:{width:this.width,margin:this.measuredMargin,margin2:this.margin2}}}get measuredWidth(){if(this._measuredWidth>0)return this._measuredWidth;const t=this.element.nativeElement;if(!t)return 0;const e=t.getBoundingClientRect(),n=e.right-e.left;return 0===n?0:(this._measuredWidth=n,n)}get measuredMargin(){if(this._measuredMargin>0)return this._measuredMargin;const t=this.element.nativeElement;if(!t)return 0;const e=globalThis.getComputedStyle(t).getPropertyValue("start"===this.position?"margin-right":"margin-left"),n=Number(e.slice(0,-2));return this._measuredMargin=n,n}ngAfterViewInit(){this.initialized.set(),setTimeout(()=>this.channel.sendMessage({type:"drawer-initialized"}))}ngOnDestroy(){this.subscriptions.unsubscribe()}open(){this.toggle(!0)}close(){this.toggle(!1)}toggle(t=!this.opened){this.opened!==t&&(t?this.openedState=this.initialized.valueOf()?"open":"open-instant":(this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._expanded=!1),this._opened=t,this.sendToggle())}openExpanded(){this.toggleExpanded(!0)}closeExpanded(){this.toggleExpanded(!1)}toggleExpanded(t=!this.expanded){this.expanded!==t&&(t?this.expandedState=this.initialized.valueOf()?"open":"open-instant":(this.expandedState="closed",this.expandedState2="collapsed"),this._expanded=t,this.sendToggle())}closeOpenDone(){this.openedChange.emit(this.opened)}expandCollapseDone(){this.expandedChange.emit(this.expanded)}sendToggle(){return lw(this,void 0,void 0,function*(){yield this.initialized.wait(),this.channel.sendMessage({type:"drawer-toggled",opened:this.opened,expanded:this.expanded,width:this.measuredWidth,margin:this.measuredMargin}),this.stateChange.emit()})}handleMessage(t){switch(t.payload.type){case"drawer-toggled":return this.syncExpanded(t.source),!0;default:return!1}}syncExpanded(t){(this.expanded||t.expanded)&&(this.expanded&&t.expanded?this.expandedState2=t.expandedState2="half":this.expanded?t.opened?(this.expandedState2="extended",this.width=t.measuredWidth+t.measuredMargin):(this.expandedState2="full",this.margin2=t.measuredMargin):this.opened?(t.expandedState2="extended",t.width=this.measuredWidth+this.measuredMargin):(t.expandedState2="full",t.margin2=this.measuredMargin))}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc),ea(kl))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer"]],hostVars:10,hostBindings:function(t,e){1&t&&ga("@openClose.done",function(){return e.closeOpenDone()})("@expandCollapse.done",function(){return e.expandCollapseDone()}),2&t&&(rl("@openClose",e.openedState)("@expandCollapse",e.expandedStateObj),Ba(e.className),ja("ccf-drawer-end",e.classEnd)("ccf-drawer-opened",e.opened)("ccf-drawer-expanded",e.expanded))},inputs:{position:"position",opened:"opened",expanded:"expanded"},outputs:{openedChange:"openedChange",expandedChange:"expandedChange",stateChange:"stateChange"},exportAs:["ccfDrawer"],ngContentSelectors:OZ,decls:2,vars:0,consts:[[1,"cff-drawer-inner-container"]],template:function(t,e){1&t&&(wa(),ra(0,"div",0),xa(1),sa())},styles:["[_nghost-%COMP%]{display:block;position:absolute;top:0;bottom:0;z-index:2;outline:0;transform:translate(-100%);background-color:#fff}.ccf-drawer-end[_nghost-%COMP%]{right:0;transform:translate(100%)}[_nghost-%COMP%] .cff-drawer-inner-container[_ngcontent-%COMP%]{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}"],data:{animation:[Vg("openClose",[$g("open, open-instant",Hg({transform:"none"})),$g("closed",Hg({})),Wg("closed => open-instant",zg(0)),Wg("closed <=> open, open-instant => closed",zg(".5s ease-in-out"))]),Vg("expandCollapse",[$g("collapsed",Hg({})),$g("half",Hg({width:"calc(50% - {{ margin }}px)"}),TZ),$g("extended",Hg({width:"calc(100% - {{ width }}px - {{ margin }}px)"}),TZ),$g("full",Hg({width:"calc(100% - {{ margin }}px - {{ margin2 }}px)"}),TZ),Wg("* <=> *",zg(".5s ease-in-out"))])]},changeDetection:0}),t})();function PZ(t,e){1&t&&(ra(0,"ccf-drawer-content"),xa(1,2),sa())}const MZ=[[["ccf-drawer"]],[["ccf-drawer-content"]],"*"],IZ=["ccf-drawer","ccf-drawer-content","*"];function DZ(t){throw new Error(`Multiple drawers in position ${t}`)}let RZ=(()=>{class t{constructor(t,e){this.cdr=e,this.className="ccf-drawer-container",this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get content(){var t;return null!==(t=this.content1.first)&&void 0!==t?t:this.content2.first}get hasWrappedContent(){return 0!==this.content1.length}ngAfterViewInit(){this.drawers.changes.pipe(Kd(null)).subscribe(()=>{const t=this.validateDrawers();this.channel.sendMessage({type:"drawer-containers-changed",drawers:t}),this.cdr.markForCheck()}),this.content1.changes.pipe(Kd(null)).subscribe(()=>{this.channel.sendMessage({type:"content-container-changed",content:this.content}),this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return!0}validateDrawers(){const t=this.drawers.toArray(),e=t.filter(t=>"start"===t.position),n=t.filter(t=>"end"===t.position);return e.length>1&&DZ("start"),n.length>1&&DZ("end"),[e[0],n[0]]}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-container"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,AZ,5),Xc(n,CZ,5)),2&t){let t;Wc(t=Yc())&&(e.drawers=t),Wc(t=Yc())&&(e.content1=t)}},viewQuery:function(t,e){if(1&t&&qc(CZ,5),2&t){let t;Wc(t=Yc())&&(e.content2=t)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},exportAs:["ccfDrawerContainer"],features:[_l([SZ])],ngContentSelectors:IZ,decls:3,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&(wa(MZ),xa(0),xa(1,1),Jo(2,PZ,2,0,"ccf-drawer-content",0)),2&t&&(ws(2),na("ngIf",!e.hasWrappedContent))},directives:[_h,CZ],styles:["[_nghost-%COMP%]{display:block;position:relative;z-index:1;overflow:hidden;-webkit-overflow-scrolling:touch}"],changeDetection:0}),t})();function NZ(t,e){if(1&t&&(ra(0,"mat-option",6),ra(1,"div"),Za(2),sa(),sa()),2&t){const t=e.$implicit,n=va();na("value",t),ws(1),Ba(n.optionsVisible),ws(1),tl(" ",t," ")}}let LZ=(()=>{class t{constructor(t){this.ga=t,this.selectionChange=new Rc,this.optionsVisible="invisible"}toggleOptions(){this.optionsVisible="visible"===this.optionsVisible?"invisible":"visible"}selectionChanged(t){this.selection=t,this.ga.event("selection_change","dropdown",`${this.label}:${t}`),this.selectionChange.emit(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dropdown"]],inputs:{label:"label",options:"options",selection:"selection"},outputs:{selectionChange:"selectionChange"},decls:7,vars:3,consts:[[1,"ccf-dropdown","wrapper"],[1,"container"],[1,"dropdown-form-field"],[1,"label"],["disableOptionCentering","true","panelClass","option-panel","disableRipple","true",1,"selected-value",3,"value","selectionChange","openedChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-form-field",2),ra(3,"div",3),Za(4),sa(),ra(5,"mat-select",4),fa("selectionChange",function(t){return e.selectionChanged(t.value)})("openedChange",function(){return e.toggleOptions()}),Jo(6,NZ,3,5,"mat-option",5),sa(),sa(),sa(),sa()),2&t&&(ws(4),tl(" ",e.label," "),ws(1),na("value",e.selection),ws(1),na("ngForOf",e.options))},directives:[lU,XX,yh,av],styles:["@-webkit-keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dropdown-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:1em;padding-right:1em;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{font-size:.875rem;border:none}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix mat-select{font-size:1rem;font-weight:bold}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .option-panel{-webkit-animation:slideInHorizontalDropdown .3s;animation:slideInHorizontalDropdown .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;position:absolute!important;top:1.55rem;max-width:9.5rem} .option-panel .mat-option{border-bottom-width:1px;border-bottom-style:solid;padding-left:1em} .option-panel :last-child{border-bottom:none} .cdk-overlay-pane{min-width:0rem!important}.dropdown-form-field[_ngcontent-%COMP%]{height:3rem;width:100%}.dropdown-form-field[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{padding-bottom:.063rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem} .ccf-dropdown .mat-select-arrow-wrapper{transform:translatey(-.5em)}"],changeDetection:0}),t})();const jZ=["popover"];function FZ(t,e){if(1&t){const t=ua();ra(0,"div",7,8),ra(2,"div"),ra(3,"div",9),Za(4),sa(),ra(5,"input",10),fa("keyup",function(e){return $e(t),va().onKeyLow(e)}),sa(),sa(),ra(6,"ng5-slider",11),fa("valueChange",function(e){return $e(t),va().lowValue=e})("highValueChange",function(e){return $e(t),va().highValue=e})("userChangeEnd",function(){return $e(t),va().sliderValueChanged()}),sa(),ra(7,"div"),ra(8,"div",12),Za(9),sa(),ra(10,"input",13),fa("keyup",function(e){return $e(t),va().onKeyHigh(e)}),sa(),sa(),sa()}if(2&t){const t=va();ws(2),nl("label min fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.floor,"> "),ws(1),Sa("value",t.lowValue),ws(1),nl("slider fade-in ",t.contentsVisible,""),na("options",t.options)("value",t.lowValue)("highValue",t.highValue),ws(1),nl("label max fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.ceil," "),ws(1),Sa("value",t.highValue)}}let BZ=(()=>{class t{constructor(t,e,n){this.element=e,this.ga=n,this.selectionChange=new Rc,this.isSliderOpen=!1,this.contentsVisible="invisible",this.isSliderInitialized=!1;const i=t.position().flexibleConnectedTo(e).withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayRef=t.create({panelClass:"slider-pane",positionStrategy:i})}get rangeLabel(){const{lowValue:t,highValue:e}=this;return t===e?`${t}`:`${t}-${e}`}ngOnChanges(t){t.valueRange&&this.optionsChanged(),t.selection&&(this.lowValue=Math.min(...this.selection),this.highValue=Math.max(...this.selection))}optionsChanged(){var t,e;this.options={floor:this.valueRange?this.valueRange[0]:0,ceil:this.valueRange?this.valueRange[1]:0,step:1,hideLimitLabels:!0,hidePointerLabels:!0},this.lowValue=null!==(t=this.options.floor)&&void 0!==t?t:0,this.highValue=null!==(e=this.options.ceil)&&void 0!==e?e:0}ngOnDestroy(){this.overlayRef.dispose()}closeSliderPopover(t){var e,n;const{element:i,isSliderOpen:r,popoverElement:s}=this;r&&(i.nativeElement.contains(t)||(null===(n=null===(e=null==s?void 0:s.nativeElement)||void 0===e?void 0:e.contains)||void 0===n?void 0:n.call(e,t))||(this.overlayRef.detach(),this.isSliderInitialized=!1,this.isSliderOpen=!1,this.contentsVisible="invisible"))}toggleSliderPopover(){const{isSliderOpen:t,isSliderInitialized:e}=this;e?(this.overlayRef.detach(),this.isSliderInitialized=!1):!e&&!t&&this.initializeSliderPopover(),this.contentsVisible="visible"===this.contentsVisible?"invisible":"visible",this.isSliderOpen=!t}sliderValueChanged(){const{lowValue:t,highValue:e}=this;this.selection=[t,e],this.ga.event("slider_range_change","dual_slider",`${this.label}:${t}:${e}`),this.selectionChange.emit(this.selection)}initializeSliderPopover(){const{overlayRef:t,popoverPortal:e}=this;t.attach(e),t.updatePosition(),this.isSliderInitialized=!0}onKeyLow(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.lowValue=e),t.target.value=String(this.lowValue),t.target.blur(),this.sliderValueChanged())}onKeyHigh(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.highValue=e),t.target.value=String(this.highValue),t.target.blur(),this.sliderValueChanged())}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dual-slider"]],viewQuery:function(t,e){if(1&t&&(qc(Vp,7),qc(jZ,5,kl)),2&t){let t;Wc(t=Yc())&&(e.popoverPortal=t.first),Wc(t=Yc())&&(e.popoverElement=t.first)}},hostBindings:function(t,e){1&t&&fa("click",function(t){return e.closeSliderPopover(t.target)},!1,Ir)("touchstart",function(t){return e.closeSliderPopover(t.target)},!1,Ir)},inputs:{label:"label",valueRange:"valueRange",selection:"selection"},outputs:{selectionChange:"selectionChange"},features:[ye],decls:10,vars:4,consts:[[1,"ccf-slider","wrapper"],[1,"container"],["class","ccf-slider detached",4,"cdk-portal"],[1,"slider-form-field",3,"click"],[1,"slider-labels"],[1,"name-label"],[1,"range-label"],[1,"ccf-slider","detached"],["popover",""],[1,"label","floor"],["type","text",1,"input-low",3,"value","keyup"],[3,"options","value","highValue","valueChange","highValueChange","userChangeEnd"],[1,"label","ceil"],["type","text",1,"input-high",3,"value","keyup"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Jo(2,FZ,11,16,"div",2),ra(3,"mat-form-field",3),fa("click",function(){return e.toggleSliderPopover()}),ra(4,"div",4),ra(5,"span",5),Za(6),sa(),ra(7,"span",6),Za(8),sa(),sa(),oa(9,"mat-select"),sa(),sa(),sa()),2&t&&(ws(3),ja("highlight",e.isSliderOpen),ws(3),Ja(e.label),ws(2),Ja(e.rangeLabel))},directives:[zp,lU,XX,BY],styles:[".slider-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;font-size:.875rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.slider-labels[_ngcontent-%COMP%]{display:flex;flex-direction:column}.slider-labels[_ngcontent-%COMP%] .name-label[_ngcontent-%COMP%]{padding-bottom:.25rem}.slider-labels[_ngcontent-%COMP%] .range-label[_ngcontent-%COMP%]{font-weight:bold} .ccf-slider.wrapper .mat-select-arrow-wrapper{transform:translatey(-1.5em)}@-webkit-keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .slider-pane{position:absolute!important;top:-1px}.ccf-slider.detached[_ngcontent-%COMP%]{-webkit-animation:slideInHorizontalSlider .3s;animation:slideInHorizontalSlider .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;display:flex;justify-content:center;align-items:center;width:0rem;height:4.375rem;padding:.75rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] {visibility:hidden;margin-top:.9375rem;margin-bottom:.9375rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-bar{opacity:.2;height:.15rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-selection{opacity:1}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer{width:1rem;height:1rem;top:-.405rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer:after{display:none}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:2rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.min[_ngcontent-%COMP%]{margin-right:1rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%]{margin-left:1rem;align-items:flex-end}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{text-align:right}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .floor[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%]{font-size:.875rem}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:none;width:1.75rem;font-size:1rem;font-weight:bold;padding:0}"]}),t})();function VZ(t,e){if(1&t){const t=ua();ra(0,"div",4),ra(1,"mat-checkbox",5),fa("change",function(e){const n=$e(t).$implicit;return va().filterOnChange(e,n)}),Za(2),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("checked",null==n.selection?null:n.selection.includes(t)),ws(1),tl(" ",t," ")}}let zZ=(()=>{class t{constructor(t){this.ga=t,this.selection=[],this.columns=3,this.selectionChange=new Rc}filterOnChange(t,e){t.checked?(this.selection=[...this.selection,e],this.ga.event("filter_added","filter_checkbox",e)):(this.selection=this.selection.filter(t=>t!==e),this.ga.event("filter_removed","filter_checkbox",e)),this.selectionChange.emit(this.selection)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-checkbox"]],inputs:{label:"label",options:"options",selection:"selection",columns:"columns"},outputs:{selectionChange:"selectionChange"},decls:5,vars:6,consts:[[1,"filter-container"],[1,"filter-label"],[1,"options-container"],["class","option",4,"ngFor","ngForOf"],[1,"option"],[3,"checked","change"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Za(2),sa(),ra(3,"div",2),Jo(4,VZ,3,2,"div",3),sa(),sa()),2&t&&(ws(2),Ja(e.label),ws(1),ja("three",3===e.columns)("four",4===e.columns),ws(1),na("ngForOf",e.options))},directives:[yh,OX],styles:[".mat-checkbox.mat-accent .mat-checkbox-checkmark-path{stroke:#fff!important} .mat-checkbox.mat-accent .mat-checkbox-inner-container{margin-right:1rem}.filter-label[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:bold}.options-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap}.options-container.three[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:33%}.options-container.four[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:25%}.option[_ngcontent-%COMP%]{color:#fafafa}"],changeDetection:0}),t})();const UZ=function(){return["Both","Male","Female"]},HZ=function(){return[1,110]},$Z=function(){return[13,83]};let GZ=(()=>{class t{constructor(t){this.ga=t,this.filtersChange=new Rc,this.applyFilters=new Rc}updateFilter(t,e){this.filters=Object.assign(Object.assign({},this.filters),{[e]:t}),this.ga.event("filter_update","filter_content",`${e}:${t}`),this.filtersChange.emit(this.filters)}applyButtonClick(){this.ga.event("filters_applied","filter_content"),this.applyFilters.emit(this.filters)}refreshFilters(){this.filters=JSON.parse(JSON.stringify(iX)),this.ga.event("filters_reset","filter_content"),this.filtersChange.emit(this.filters)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-content"]],inputs:{hidden:"hidden",filters:"filters",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange",applyFilters:"applyFilters"},decls:14,vars:23,consts:[[1,"patient-filters"],["label","Sex",3,"options","selection","selectionChange"],["label","Age",3,"valueRange","selection","selectionChange"],["label","BMI",3,"valueRange","selection","selectionChange"],[1,"filter","assays"],["label","Assay Types",3,"columns","options","selection","selectionChange"],[1,"filter","providers"],["label","Tissue Providers",3,"columns","options","selection","selectionChange"],[1,"button-container"],["mat-button","",1,"outline-button",3,"click"],[1,"refresh-icon"],[1,"icon","refresh",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"ccf-dropdown",1),fa("selectionChange",function(t){return e.updateFilter(t,"sex")}),sa(),ra(2,"ccf-dual-slider",2),fa("selectionChange",function(t){return e.updateFilter(t,"ageRange")}),sa(),ra(3,"ccf-dual-slider",3),fa("selectionChange",function(t){return e.updateFilter(t,"bmiRange")}),sa(),sa(),ra(4,"div",4),ra(5,"ccf-checkbox",5),fa("selectionChange",function(t){return e.updateFilter(t,"technologies")}),sa(),sa(),ra(6,"div",6),ra(7,"ccf-checkbox",7),fa("selectionChange",function(t){return e.updateFilter(t,"tmc")}),sa(),sa(),ra(8,"div",8),ra(9,"button",9),fa("click",function(){return e.applyButtonClick()}),Za(10,"APPLY FILTERS"),sa(),ra(11,"div",10),ra(12,"mat-icon",11),fa("click",function(){return e.refreshFilters()}),Za(13,"refresh"),sa(),sa(),sa()),2&t&&(ja("hidden",e.hidden),ws(1),na("options",Oc(20,UZ))("selection",null==e.filters?null:e.filters.sex),ws(1),na("valueRange",Oc(21,HZ))("selection",null==e.filters?null:e.filters.ageRange),ws(1),na("valueRange",Oc(22,$Z))("selection",null==e.filters?null:e.filters.bmiRange),ws(1),ja("hidden",e.hidden),ws(1),na("columns",4)("options",e.technologyFilters)("selection",null==e.filters?null:e.filters.technologies),ws(1),ja("hidden",e.hidden),ws(1),na("columns",3)("options",e.providerFilters)("selection",null==e.filters?null:e.filters.tmc),ws(1),ja("hidden",e.hidden))},directives:[LZ,BZ,zZ,__,p_],styles:[".filter[_ngcontent-%COMP%]{margin-top:2rem}.filter.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.filter.assays[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{margin-right:0 rem;width:25%}.button-container[_ngcontent-%COMP%]{margin-top:2rem;display:flex;flex-direction:row-reverse;align-items:center}.button-container.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.outline-button[_ngcontent-%COMP%]{box-shadow:.1rem .1rem .2rem #0000001d}.refresh-icon[_ngcontent-%COMP%]{padding:.25rem;border-radius:.25rem;margin-right:1rem;display:flex;justify-content:center;align-items:center;transition:.6s}.refresh-icon[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{cursor:pointer;transition:.6s;transition-property:background}.patient-filters[_ngcontent-%COMP%]{display:flex;width:90%;padding-top:1rem}.patient-filters.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.patient-filters[_ngcontent-%COMP%] ccf-dual-slider[_ngcontent-%COMP%]{margin-left:.5rem;width:33%}.patient-filters[_ngcontent-%COMP%] ccf-dropdown[_ngcontent-%COMP%]{width:33%}"],changeDetection:0}),t})();function WZ(t,e){1&t&&(ra(0,"div"),ra(1,"mat-icon",7),Za(2,"close"),sa(),sa())}function qZ(t,e){1&t&&oa(0,"mat-icon",8)}let XZ=(()=>{class t{constructor(){this.filtersChange=new Rc,this.filtersVisible=!1}toggleFilterVisible(){this.filtersVisible=!this.filtersVisible}removeBox(){this.filtersVisible=!1}applyFilters(t){this.filters=t,this.filtersChange.emit(t),this.removeBox()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-popover"]],inputs:{filters:"filters",drawerExpanded:"drawerExpanded",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange"},decls:8,vars:12,consts:[[1,"filters-popover"],[1,"show-hide",3,"click"],[4,"ngIf","ngIfElse"],["notShow",""],[1,"popup-container"],[1,"popup-body"],[3,"technologyFilters","providerFilters","hidden","filters","applyFilters"],[1,"icon"],["svgIcon","filter",1,"icon","funnel"]],template:function(t,e){if(1&t&&(ra(0,"div",0),ra(1,"button",1),fa("click",function(){return e.toggleFilterVisible()}),Jo(2,WZ,3,0,"div",2),Jo(3,qZ,1,0,"ng-template",null,3,Jc),sa(),ra(5,"div",4),ra(6,"div",5),ra(7,"ccf-filters-content",6),fa("applyFilters",function(t){return e.applyFilters(t)}),sa(),sa(),sa(),sa()),2&t){const t=ta(4);ja("expanded",e.drawerExpanded),ws(2),na("ngIf",e.filtersVisible)("ngIfElse",t),ws(3),ja("visible",e.filtersVisible)("hidden",!e.filtersVisible),ws(2),na("technologyFilters",e.technologyFilters)("providerFilters",e.providerFilters)("hidden",!e.filtersVisible)("filters",e.filters)}},directives:[_h,GZ,p_],styles:[".filters-popover[_ngcontent-%COMP%]{position:inherit}.filters-popover.expanded[_ngcontent-%COMP%]{position:relative}.filters-popover.expanded[_ngcontent-%COMP%] .popup-container[_ngcontent-%COMP%]{right:inherit}.filters-popover.expanded[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding-left:4em!important}.popup-container[_ngcontent-%COMP%]{position:absolute;z-index:5;top:1.2rem;left:1.48rem;box-shadow:.2rem .2rem 1rem #00000058}.popup-container[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding:1.5rem;position:relative;height:26.5rem}.popup-container.visible[_ngcontent-%COMP%]{width:35rem;height:26.5rem;transition:width .2s ease-in-out;border-width:1px}.popup-container.visible[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:1;transition-delay:.3s;transition-duration:.2s}.popup-container.hidden[_ngcontent-%COMP%]{width:0;height:0;transition:all .2s ease-out;transition-delay:.3s;pointer-events:none}.popup-container.hidden[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.show-hide[_ngcontent-%COMP%]{background:none;border:none;z-index:10;position:relative;cursor:pointer;outline:none;padding:.5rem;border-radius:.25rem;transition:.6s}"],changeDetection:0}),t})();class YZ{constructor(){this.treeModel$=new lp(1),this.nodes$=this.treeModel$.pipe(D(t=>Object.values(t.nodes))),this.rootNode$=this.treeModel$.pipe(D(t=>t.nodes[t.root]))}setTreeModel(t){this.treeModel$.next(t),this.treeModel=t}filter(t){return this.nodes$.pipe(D(e=>this.lookup(e,t.toLowerCase())))}lookup(t,e){const n=new Map;return t&&t.forEach(t=>{if(t.label.toLowerCase().includes(e)&&!n.get(t.id))n.set(t.id,{index:this.getIndexOfMatch(t.label,e),displayLabel:this.formatLabel(t.label,e),node:t});else{const i=t.synonymLabels.find(t=>t.toLowerCase().includes(e));i&&!n.get(t.id)&&n.set(t.id,{index:this.getIndexOfMatch(t.label+" ("+i+")",e),displayLabel:this.formatLabel(t.label+" ("+i+")",e),node:t})}}),Array.from(n.values())}getIndexOfMatch(t,e){return t.toLowerCase().indexOf(e)}formatLabel(t,e){const n=this.getIndexOfMatch(t,e);return[t.slice(0,n),t.slice(n,n+e.length),t.slice(n+e.length)]}getChildren(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};return(0,_G.at)(i,t.children)}}YZ.\u0275fac=function(t){return new(t||YZ)},YZ.\u0275prov=xt({token:YZ,factory:YZ.\u0275fac}),sw([iB.ak],YZ.prototype,"getChildren",null);class KZ{constructor(t,e){this.original=t,this.level=e,this.visible=!0,this.opacity=20}get label(){return this.original.label}get expandable(){return this.original.children.length>0}static create(t,e){return new KZ(t,e)}}function QZ(t,e){if(1&t){const t=ua();ra(0,"div",4),fa("click",function(e){const n=$e(t).node,i=va();return i.select(e.ctrlKey,n,!0,!i.isSelected(n))}),Za(1),sa()}if(2&t){const t=e.node,n=va();ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label))("filtered-out",!n.occurenceData[t.original.id]&&!!n.termData[t.original.id])("unavailable",!n.termData[t.original.id])("selected",n.isSelected(t)),ws(1),Ja("colon"===t.label?"large intestine":t.label)}}function ZZ(t,e){1&t&&ca(0)}const JZ=function(t){return{node:t}};function tJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",5),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,9),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),oa(6,"div",10),Jo(7,ZZ,1,0,"ng-container",11),ra(8,"div",12),Za(9),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(3),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(18,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}function eJ(t,e){1&t&&ca(0)}function nJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",13),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,14),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),ra(6,"button",15),ra(7,"mat-icon",16),Za(8),sa(),sa(),Jo(9,eJ,1,0,"ng-container",11),ra(10,"div",12),Za(11),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(2),ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label)),Zo("aria-label","Toggle ",t.label,""),ws(2),tl(" ",n.control.isExpanded(t)?"expand_less":"expand_more"," "),ws(1),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(22,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}const iJ=(0,_G.property)("level"),rJ=(0,_G.property)("expandable");let sJ=(()=>{class t{constructor(t,e){this.cdr=t,this.ga=e,this.atScrollBottom=!1,this.nodeSelected=new Rc,this.nodeChanged=new Rc,this.indent="1.5rem",this.control=new WY(iJ,rJ),this.flattener=new dK(KZ.create,iJ,rJ,_G.invoke.bind(void 0,this,"getChildren")),this.dataSource=new pK(this.control,this.flattener),this._nodes=void 0,this.anySelectionsMade=!1,this.selectedNodes=[]}set nodes(t){var e;this._nodes=t,this.control&&(this.dataSource.data=null!==(e=this._nodes)&&void 0!==e?e:[])}get nodes(){return this._nodes}set getChildren(t){var e;this._getChildren=t,this.dataSource.data=null!==(e=this.nodes)&&void 0!==e?e:[]}get getChildren(){return this._getChildren}set occurenceData(t){this._occurenceData=t||{}}get occurenceData(){return this._occurenceData}set termData(t){this._termData=t||{}}get termData(){return this._termData}ngOnInit(){this.control.dataNodes&&this.control.expand(this.control.dataNodes[0])}ngOnChanges(t){if(t.ontologyFilter){const e=t.ontologyFilter.currentValue;(null==e?void 0:e.length)>=0&&this.selectByIDs(e)}t.rootNode&&this.selectByIDs([t.rootNode.currentValue])}selectByIDs(t){const e=this.control.dataNodes,n=e.filter(e=>t.indexOf(e.original.id)>-1);(null==n?void 0:n.length)>0&&(this.selectedNodes=n,this.ga.event("nodes_selected_by_ids","ontology_tree",n.map(t=>t.label).join(",")),this.control.collapseAll(),this.selectedNodes.forEach(t=>{this.expandAndSelect(t.original,t=>{var n;return null===(n=e.find(e=>e.original.id===t.parent))||void 0===n?void 0:n.original},!0)}))}expandAndSelect(t,e,n=!1){var i;const{cdr:r,control:s}=this,o=new Set;let a=e(t);for(;a;)o.add(a),a=e(a);const l=(0,_G.filter)(s.dataNodes,t=>o.has(t.original)),c=s.dataNodes.find(e=>e.original===t);n||(this.selectedNodes=[],s.collapseAll());for(const u of l)s.expand(u);"body"===t.label&&(null===(i=s.dataNodes)||void 0===i?void 0:i.length)>0&&s.expand(s.dataNodes[0]),this.select(n,c,!1,!0),r.detectChanges()}isInnerNode(t,e){return e.expandable}isSelected(t){return(null==t?void 0:t.original.id)===this.rootNode||this.selectedNodes.filter(e=>(null==t?void 0:t.original.label)===(null==e?void 0:e.original.label)).length>0}select(t,e,n,i){if(this.anySelectionsMade||(this.selectedNodes=[],this.anySelectionsMade=!0),void 0===e)return this.selectedNodes=[],void this.ga.event("nodes_unselected","ontology_tree");t?i?this.selectedNodes.indexOf(e)<0&&this.selectedNodes.push(e):this.selectedNodes.splice(this.selectedNodes.indexOf(e),1):(this.selectedNodes=[],i&&this.selectedNodes.push(e)),this.ga.event("nodes_selected","ontology_tree",this.selectedNodes.map(t=>t.label).join(",")),n&&this.nodeSelected.emit(this.selectedNodes.map(t=>null==t?void 0:t.original))}mouseOver(t){this.highlightedNode=t}mouseOut(){this.highlightedNode=void 0}updateOpacity(t,e){t.opacity=e,this.ga.event("opacity_update","ontology_tree",t.label,e),this.nodeChanged.emit(t)}resetNode(t){t.opacity=20,t.visible=!0,this.ga.event("node_reset","ontology_tree",t.label),this.nodeChanged.emit(t)}toggleVisibility(t){t.visible=!0!==t.visible,this.ga.event("visibility_update","ontology_tree",t.label,+t.visible),this.nodeChanged.emit(t)}getLeftIndent(t){return-1.5*t+"rem"}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<20}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-tree"]],inputs:{ontologyFilter:"ontologyFilter",rootNode:"rootNode",nodes:"nodes",getChildren:"getChildren",occurenceData:"occurenceData",termData:"termData",header:"header"},outputs:{nodeSelected:"nodeSelected",nodeChanged:"nodeChanged"},features:[ye],decls:5,vars:5,consts:[[1,"ccf-ontology-tree",3,"dataSource","treeControl","scroll"],["selectableRegion",""],["class","node leaf-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef"],["class","node inner-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef","matTreeNodeDefWhen"],[1,"text",3,"click"],["matTreeNodePadding","",1,"node","leaf-node",3,"matTreeNodePaddingIndent","mouseleave"],["svgIcon","app:opacity",1,"icon","opacity",3,"mouseenter"],[1,"slider"],[3,"visible","opacity","opacityChange","opacityReset","visibilityToggle"],["slider1",""],[1,"non-expandable"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"num-results"],["matTreeNodePadding","",1,"node","inner-node",3,"matTreeNodePaddingIndent","mouseleave"],["slider2",""],["mat-icon-button","","matTreeNodeToggle","",1,"toggle"],[1,"icon","font-icon"]],template:function(t,e){1&t&&(ra(0,"mat-tree",0),fa("scroll",function(t){return e.onScroll(t)}),Jo(1,QZ,2,9,"ng-template",null,1,Jc),Jo(3,tJ,10,20,"mat-tree-node",2),Jo(4,nJ,12,24,"mat-tree-node",3),sa()),2&t&&(ja("header-hidden",!e.header),na("dataSource",e.dataSource)("treeControl",e.control),ws(4),na("matTreeNodeDefWhen",e.isInnerNode))},directives:[cK,oK,sK,aK,p_,JW,kh,__,uK],styles:[".ccf-ontology-tree[_ngcontent-%COMP%]{background:none;scrollbar-width:thin;max-height:calc(50vh - 10rem);overflow:auto;overflow-x:hidden}.ccf-ontology-tree.header-hidden[_ngcontent-%COMP%]{max-height:40vh}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .toggle[_ngcontent-%COMP%]{z-index:-1;opacity:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .text[_ngcontent-%COMP%]{margin-left:.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]{min-height:0;font-size:1rem;margin-bottom:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:width;position:relative;z-index:1}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%]{width:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%] ccf-opacity-slider[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider{height:1.5rem;margin-left:1rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box .slider-and-label{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider{height:1.5rem;width:15rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider .mat-slider-wrapper{top:12px}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .opacity-value{width:3rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-right:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node.inner-node[_ngcontent-%COMP%] button.hidden[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .opacity[_ngcontent-%COMP%]{position:relative;min-width:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:normal}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .autocomplete-open[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{border-bottom:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .non-expandable[_ngcontent-%COMP%]{margin-left:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:nowrap;cursor:pointer;margin-left:1rem;opacity:1;width:50%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:opacity,width}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.hidden[_ngcontent-%COMP%]{opacity:0;width:0%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.unavailable[_ngcontent-%COMP%]{pointer-events:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-left:auto}.scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:90%;bottom:0;pointer-events:none}.scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function oJ(t,e){if(1&t&&(ra(0,"mat-option",8),ra(1,"span",9),Za(2),sa(),ra(3,"span",10),Za(4),sa(),ra(5,"span",11),Za(6),sa(),sa()),2&t){const t=e.$implicit;na("value",t),ws(2),Ja(t.displayLabel[0]),ws(2),Ja(t.displayLabel[1]),ws(2),Ja(t.displayLabel[2])}}let aJ=(()=>{class t{constructor(t,e){this.ontologyService=t,this.ga=e,this.selected=new Rc,this.formControl=new gz(""),this.autoCompleteOpen=!1}ngOnInit(){this.filteredResults$=this.formControl.valueChanges.pipe(Hd(t=>"string"==typeof t),Kd(""),Qd(t=>this.ontologyService.filter(t)),D(t=>(0,_G.sortBy)(t,[this.sortBySynonymResult,"index",this.sortLexically])))}displayFormatter(t){var e;return(null!==(e=null==t?void 0:t.displayLabel)&&void 0!==e?e:[]).join("")}sortBySynonymResult(t){return t.displayLabel.join().includes("(")?1:-1}sortLexically(t){return t.node.label.toLowerCase()}onSelect(t){const e=(0,_G.get)(t,["option","value","node"]);e&&(this.ga.event("search","ontology_search",e.id),this.selected.emit(e),this.formControl.reset())}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-search"]],inputs:{placeholderText:"placeholderText"},outputs:{selected:"selected"},decls:10,vars:9,consts:[[1,"ccf-ontology-search"],["appearance","outline",1,"field"],["matPrefix","","color","primary",1,"search"],["type","text","matInput","",1,"input",3,"placeholder","formControl","matAutocomplete"],[1,"ccf-ontology-search","detached","autocomplete",3,"displayWith","optionSelected","opened","closed"],["autocomplete",""],[1,"results-container"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"prefix"],[1,"search-term"],[1,"suffix"]],template:function(t,e){if(1&t&&(ra(0,"form",0),ra(1,"mat-form-field",1),ra(2,"mat-icon",2),Za(3,"search"),sa(),oa(4,"input",3),ra(5,"mat-autocomplete",4,5),fa("optionSelected",function(t){return e.onSelect(t)})("opened",function(){return e.autoCompleteOpen=!0})("closed",function(){return e.autoCompleteOpen=!1}),ra(7,"div",6),Jo(8,oJ,7,4,"mat-option",7),Mc(9,"async"),sa(),sa(),sa(),sa()),2&t){const t=ta(6);ja("autocomplete-open",e.autoCompleteOpen),ws(4),na("placeholder",e.placeholderText)("formControl",e.formControl)("matAutocomplete",t),ws(1),na("displayWith",e.displayFormatter),ws(3),na("ngForOf",Ic(9,7,e.filteredResults$))}},directives:[wz,YV,_z,lU,p_,nU,LU,TV,TU,XV,Cz,xU,yh,av],pipes:[Dh],styles:[".ccf-ontology-search[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem .25rem 0;margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;height:3rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix input{margin-left:.4rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-prefix{top:.5rem;border:none}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0 .25rem;min-width:2.5rem} .ccf-ontology-search.detached{border:.125rem solid;border-top:none;border-radius:0 0 .25rem .25rem;max-height:18rem} .ccf-ontology-search.detached .results-container{width:23.75rem;margin-bottom:1rem;overflow:auto;max-height:15rem;scrollbar-width:thin} .ccf-ontology-search.detached .results-container mat-option{height:1.5rem;width:23.75rem} .ccf-ontology-search.detached .results-container mat-option .search-term{text-decoration:underline}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0;border-bottom:none}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem 0 0;border-bottom:none}"],changeDetection:0}),t})();const lJ=function(t){return[t]};function cJ(t,e){if(1&t){const t=ua();ra(0,"ccf-ontology-tree",2),fa("nodeSelected",function(e){return $e(t),va().ontologySelection.emit(e)}),sa()}if(2&t){const t=e.ngIf,n=va();na("nodes",Tc(7,lJ,t))("rootNode",t.id)("getChildren",n.ontologySearchService.getChildren)("occurenceData",n.occurenceData)("termData",n.termData)("ontologyFilter",n.ontologyFilter)("header",n.header)}}let uJ=(()=>{class t{constructor(t){this.ontologySearchService=t,this.ontologySelection=new Rc}ngOnChanges(t){"treeModel"in t&&this.treeModel&&this.ontologySearchService.setTreeModel(this.treeModel)}selected(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};this.tree.expandAndSelect(t,t=>i[t.parent])}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-selection"]],viewQuery:function(t,e){if(1&t&&qc(sJ,5),2&t){let t;Wc(t=Yc())&&(e.tree=t.first)}},inputs:{occurenceData:"occurenceData",termData:"termData",treeModel:"treeModel",ontologyFilter:"ontologyFilter",header:"header",placeholderText:"placeholderText"},outputs:{ontologySelection:"ontologySelection"},features:[_l([YZ]),ye],decls:3,vars:4,consts:[[3,"placeholderText","selected"],["class","tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected",4,"ngIf"],[1,"tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected"]],template:function(t,e){1&t&&(ra(0,"ccf-ontology-search",0),fa("selected",function(t){return e.selected(t)}),sa(),Jo(1,cJ,1,9,"ccf-ontology-tree",1),Mc(2,"async")),2&t&&(na("placeholderText",e.placeholderText),ws(1),na("ngIf",Ic(2,2,e.ontologySearchService.rootNode$)))},directives:[aJ,_h,sJ],pipes:[Dh],styles:[""],changeDetection:0}),t})(),hJ=(()=>{class t{constructor(t,e,n){this.drawer=t,this.cdr=n,this.className="ccf-drawer-toggle-button",this.position="start",this.opened=!1,this.subscriptions=new g;const i=e.connect(this);this.subscriptions.add(i.getMessagesFromSource(t).subscribe(t=>{this.handleMessage(t)&&n.markForCheck()}))}get classEnd(){return"end"===this.position}get icon(){let t="arrow_right",e="arrow_left";return"end"===this.position&&([t,e]=[e,t]),this.opened?e:t}ngAfterViewInit(){setTimeout(()=>{this.position=this.drawer.position,this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return"drawer-toggled"===t.payload.type&&(this.opened=t.payload.opened,!0)}toggle(){const t=this.drawer,{opened:e,expanded:n}=t;e?n?t.closeExpanded():t.close():t.open()}}return t.\u0275fac=function(e){return new(e||t)(ea(AZ),ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-toggle-button"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("ccf-drawer-toggle-button-end",e.classEnd))},decls:2,vars:1,consts:[["aria-hidden","false","aria-label","Close side drawer",1,"expand-collapse-icon",3,"click"]],template:function(t,e){1&t&&(ra(0,"mat-icon",0),fa("click",function(){return e.toggle()}),Za(1),sa()),2&t&&(ws(1),tl(" ",e.icon,"\n"))},directives:[p_],styles:["[_nghost-%COMP%]{position:absolute;top:calc(50% - 2.0625rem);right:-1.0625rem;width:1.0625rem;height:3rem;border-radius:0 .25rem .25rem 0;cursor:pointer;display:flex;align-items:center;transition:.6s}.ccf-drawer-toggle-button-end[_nghost-%COMP%]{right:unset;left:calc(-1rem - 1px);border-radius:.25rem 0 0 .25rem}[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{position:relative;right:.25rem;transition:all .5s}.ccf-drawer-toggle-button-end[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{right:unset;left:-.25rem}"],changeDetection:0}),t})();function dJ(t,e){1&t&&(ra(0,"div",7),oa(1,"mat-spinner",8),ra(2,"span",3),Za(3,"Loading External Site"),sa(),sa())}function pJ(t,e){if(1&t){const t=ua();ra(0,"iframe",9),fa("load",function(){return $e(t),va().loading=!1}),sa()}2&t&&Ko("src",va().safeUrl,wr)}let fJ=(()=>{class t{constructor(t){this.sanitizer=t,this.className="ccf-viewer",this.url="",this.closed=new Rc,this.loading=!0,this.safeUrl=null}ngOnChanges(t){"url"in t&&this.updateUrl()}updateUrl(){const{sanitizer:t,url:e}=this;this.safeUrl=null,e&&(this.safeUrl=t.bypassSecurityTrustResourceUrl(e),this.loading=!0)}}return t.\u0275fac=function(e){return new(e||t)(ea(hd))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-viewer"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{url:"url"},outputs:{closed:"closed"},features:[ye],decls:11,vars:4,consts:[[1,"toolbar"],["mat-flat-button","","target","_blank","rel","noopener noreferrer",1,"launch",3,"href","disabled"],[1,"icon"],[1,"text"],["mat-flat-button","",1,"close",3,"click"],["class","overlay",4,"ngIf"],["class","frame","title","Portal Data Viewer","referrerpolicy","no-referrer",3,"load",4,"ngIf"],[1,"overlay"],[1,"spinner"],["title","Portal Data Viewer","referrerpolicy","no-referrer",1,"frame",3,"load"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"a",1),ra(2,"mat-icon",2),Za(3,"launch"),sa(),ra(4,"span",3),Za(5,"Open in Portal"),sa(),sa(),ra(6,"button",4),fa("click",function(){return e.closed.emit()}),ra(7,"mat-icon",2),Za(8,"clear"),sa(),sa(),sa(),Jo(9,dJ,4,0,"div",5),Jo(10,pJ,1,1,"iframe",6)),2&t&&(ws(1),na("href",e.safeUrl,_r)("disabled",!e.safeUrl),ws(8),na("ngIf",e.loading),ws(1),na("ngIf",e.safeUrl))},directives:[w_,p_,__,_h,fZ],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;width:100%;height:1.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%]{margin-right:3.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch.mat-button-disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:.25rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .close[_ngcontent-%COMP%]{min-width:0;padding:0;line-height:1.5rem;border-radius:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:1.5rem;bottom:0;left:0;right:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{margin-bottom:.5rem}[_nghost-%COMP%] .frame[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0}),t})();function gJ(t,e){if(1&t&&oa(0,"div",3),2&t){const t=e.index;ja("line-tick-visible",va().tissueSectionExists(t+1))}}const mJ=function(){return[]};let bJ=(()=>{class t{constructor(){this.clsName="ccf-tissue-section-vis"}tissueSectionExists(t){return this.tissueSections.filter(e=>e.sectionNumber===t).length>0}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tissue-section-vis"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{totalTissueSections:"totalTissueSections",tissueSections:"tissueSections"},decls:7,vars:3,consts:[[1,"container"],["class","line-tick",3,"line-tick-visible",4,"ngFor","ngForOf"],[1,"x-axis"],[1,"line-tick"]],template:function(t,e){1&t&&(ra(0,"div"),Za(1,"0"),sa(),ra(2,"div",0),Jo(3,gJ,1,2,"div",1),oa(4,"div",2),sa(),ra(5,"div"),Za(6),sa()),2&t&&(ws(3),na("ngForOf",Oc(2,mJ).constructor(e.totalTissueSections)),ws(3),Ja(e.totalTissueSections))},directives:[yh],styles:["[_nghost-%COMP%]{width:100%;height:2.5rem;padding:.5rem 1rem;display:flex}[_nghost-%COMP%] .container[_ngcontent-%COMP%]{margin-right:.5rem;margin-left:.5rem;flex-grow:1;display:flex;position:relative;justify-content:space-evenly}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .line-tick[_ngcontent-%COMP%]{height:100%;width:1px;z-index:2}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .x-axis[_ngcontent-%COMP%]{width:100%;height:2px;position:absolute;top:calc(50% - 1px);right:0;z-index:1}"],changeDetection:0}),t})();function yJ(t,e){if(1&t){const t=ua();ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"a",9),fa("click",function(){$e(t);const e=va().$implicit;return va().linkClicked.emit(e)}),Za(4," DATA "),ra(5,"mat-icon"),Za(6,"open_in_new"),sa(),sa(),sa()}if(2&t){const t=va().$implicit;ws(1),La("background-image","url("+t.thumbnail+")"),ws(1),tl(" ",t.technology," ")}}function vJ(t,e){1&t&&(aa(0),Jo(1,yJ,7,3,"ng-template",6),la())}const _J=(()=>{let t=-1;return()=>(t+=1,t)})();let wJ=(()=>{class t{constructor(){this.className="ccf-thumbnail-carousel",this.linkClicked=new Rc,this.uid=_J(),this.config={allowTouchMove:!1,slidesOffsetBefore:4,slidesOffsetAfter:4,slidesPerView:"auto",spaceBetween:4,watchOverflow:!0},this.navigation={prevEl:"#"+this.prevButtonId,nextEl:"#"+this.nextButtonId}}get prevButtonId(){return`ccf-thumbnail-carousel-prev-button-${this.uid}`}get nextButtonId(){return`ccf-thumbnail-carousel-next-button-${this.uid}`}itemId(t,e){return e.thumbnail}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-thumbnail-carousel"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{data:"data"},outputs:{linkClicked:"linkClicked"},decls:11,vars:6,consts:[[1,"prev"],["mat-icon-button","","disableRipple",""],[1,"swiper",3,"config","navigation"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"next"],[1,"fade"],["swiperSlide",""],[1,"slide"],[1,"thumbnail"],[1,"link",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"button",1),ra(2,"mat-icon"),Za(3,"navigate_before"),sa(),sa(),sa(),ra(4,"swiper",2),Jo(5,vJ,2,0,"ng-container",3),sa(),ra(6,"div",4),ra(7,"button",1),oa(8,"div",5),ra(9,"mat-icon"),Za(10,"navigate_next"),sa(),sa(),sa()),2&t&&(ws(1),Ko("id",e.prevButtonId),ws(3),na("config",e.config)("navigation",e.navigation),ws(1),na("ngForOf",e.data)("ngForTrackBy",e.itemId),ws(2),Ko("id",e.nextButtonId))},directives:[__,p_,WQ,yh,GQ],styles:['[_nghost-%COMP%]{display:flex}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%]{flex-grow:1;padding-bottom:.3125rem}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%] .swiper-slide{width:3.75rem;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%]{display:flex;align-items:center;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] button[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:1.5rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{position:absolute;top:-.625rem;left:-2rem;z-index:10;width:2rem;height:3.125rem;opacity:1;transition:opacity ease-in-out .3s;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%]{cursor:default;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]{position:relative;width:100%;height:100%}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background-size:cover;position:relative;width:calc(100% - 2 * .125rem);height:calc(100% - 2 * .125rem);border-style:solid;border-width:.125rem;border-radius:.25rem;background-origin:padding-box;background-clip:padding-box;font-size:.875rem;font-weight:bold}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]:after{content:"";position:absolute;bottom:-.125rem;left:-.125rem;width:.125rem;height:.125rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;right:0;left:0;opacity:0;transition:opacity ease-in-out .3s;box-shadow:0 2px 4px #0009;font-size:.75rem;line-height:.75rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%], [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:focus, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:active{cursor:pointer;text-decoration:none}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]:hover .link[_ngcontent-%COMP%]{opacity:1}'],changeDetection:0}),t})();function xJ(t,e){if(1&t){const t=ua();ra(0,"mat-icon",14),fa("click",function(){return $e(t),va().toggleExpansion()}),Za(1),sa()}if(2&t){const t=va();ws(1),Ja(t.expanded?"expand_less":"expand_more")}}function SJ(t,e){if(1&t&&oa(0,"ccf-tissue-section-vis",20),2&t){const t=va(2);na("totalTissueSections",t.tissueBlock.sectionCount)("tissueSections",t.tissueBlock.sections)}}function EJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(2).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va(2);ws(1),na("data",t.tissueBlock.datasets)}}function CJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(3).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va().$implicit;ws(1),na("data",t.datasets)}}function OJ(t,e){if(1&t){const t=ua();ra(0,"div",22),ra(1,"div",23),ra(2,"mat-icon",24),Za(3,"bubble_chart"),sa(),ra(4,"div",17),ra(5,"div",8),Za(6),sa(),ra(7,"div",8),Za(8),sa(),sa(),ra(9,"div",9),fa("click",function(){const e=$e(t).$implicit;return va(2).linkHandler(e.link)}),ra(10,"div",10),Za(11,"TISSUE SECTION"),sa(),ra(12,"mat-icon",11),Za(13,"open_in_new"),sa(),sa(),sa(),Jo(14,CJ,2,1,"ng-container",13),sa()}if(2&t){const t=e.$implicit;ws(6),Ja(t.label),ws(2),Ja(t.description),ws(6),na("ngIf",t.datasets.length>0)}}function TJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"div",15),ra(2,"div",16),ra(3,"mat-icon",5),Za(4,"bubble_chart"),sa(),ra(5,"div",17),ra(6,"div",8),Za(7),sa(),ra(8,"div",8),Za(9),sa(),sa(),ra(10,"div",9),fa("click",function(){$e(t);const e=va();return e.linkHandler(e.tissueBlock.link)}),ra(11,"div",10),Za(12,"TISSUE BLOCK"),sa(),ra(13,"mat-icon",11),Za(14,"open_in_new"),sa(),sa(),sa(),Jo(15,SJ,1,2,"ccf-tissue-section-vis",18),Jo(16,EJ,2,1,"ng-container",13),sa(),Jo(17,OJ,15,3,"div",19),la()}if(2&t){const t=va();ws(7),Ja(t.tissueBlock.label),ws(2),Ja(t.tissueBlock.description),ws(6),na("ngIf",t.tissueBlock.sections.length>1),ws(1),na("ngIf",t.tissueBlock.datasets.length>0),ws(1),na("ngForOf",t.tissueBlock.sections)}}const kJ=function(t){return{"background-color":t}};let AJ=(()=>{class t{constructor(t){this.ga=t,this.clsName="ccf-donor-card",this.selected=!1,this.expanded=!1,this.highlighted=!1,this.checked=new Rc,this.linkClick=new Rc,this.hoverState=""}handleCheckbox(){this.selected=!this.selected,this.ga.event("selected_toggled","donor_card",this.tissueBlock.label,+this.selected),this.checked.emit(this.selected),this.expanded=!1}toggleExpansion(){this.selected&&(this.expanded=!this.expanded,this.ga.event("expanded_toggled","donor_card",this.tissueBlock.label,+this.expanded))}linkHandler(t){this.ga.event("link_clicked","donor_card",this.tissueBlock.label),this.selected?this.linkClick.emit(t):(this.selected=!0,this.checked.emit(this.selected))}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-donor-card"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{tissueBlock:"tissueBlock",selected:"selected",color:"color",expanded:"expanded",highlighted:"highlighted"},outputs:{checked:"checked",linkClick:"linkClick"},decls:19,vars:20,consts:[[1,"main-container"],[1,"checkbox-background",3,"ngStyle","click"],[1,"checkbox",3,"checked"],[1,"hoverable","default-padding","donor","mat-elevation-z2"],[1,"d-flex"],[1,"icon-size","icon-dark","mr-5"],[1,"donor-info"],[1,"title","description"],[1,"description"],[1,"hover-state","mat-elevation-z4",3,"click"],[1,"hover-title"],[1,"icon-size","hover-icon"],["class","icon-size ml-5 selectable",3,"click",4,"ngIf"],[4,"ngIf"],[1,"icon-size","ml-5","selectable",3,"click"],[1,"expanded-view","mat-elevation-z2","align-end"],[1,"info-block","hover-enabled","default-padding"],[1,"text-content"],[3,"totalTissueSections","tissueSections",4,"ngIf"],["class","expanded-view w-80 mat-elevation-z2 align-end",4,"ngFor","ngForOf"],[3,"totalTissueSections","tissueSections"],[1,"mt-05",3,"data","linkClicked"],[1,"expanded-view","w-80","mat-elevation-z2","align-end"],[1,"default-padding","info-block","hover-enabled"],[1,"icon-size","mr-5","icon-light"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),fa("click",function(){return e.handleCheckbox()}),oa(2,"mat-checkbox",2),sa(),ra(3,"div",3),ra(4,"div",4),ra(5,"mat-icon",5),Za(6,"person"),sa(),ra(7,"div",6),ra(8,"div",7),Za(9),sa(),ra(10,"div",8),Za(11),sa(),sa(),sa(),ra(12,"div",9),fa("click",function(){return e.linkHandler(e.tissueBlock.donor.link)}),ra(13,"div",10),Za(14,"DONOR"),sa(),ra(15,"mat-icon",11),Za(16,"open_in_new"),sa(),sa(),Jo(17,xJ,2,1,"mat-icon",12),sa(),sa(),Jo(18,TJ,18,5,"ng-container",13)),2&t&&(ws(1),ja("selected",e.selected)("highlighted",e.highlighted),na("ngStyle",Tc(18,kJ,e.selected?e.color:"transparent")),ws(1),ja("checkselected",e.selected),na("checked",e.selected),ws(1),ja("hover-enabled",e.selected)("expanded",e.expanded)("highlighted",e.highlighted),ws(6),Ja(e.tissueBlock.donor.label),ws(2),Ja(e.tissueBlock.donor.description),ws(6),na("ngIf",e.selected),ws(1),na("ngIf",e.expanded))},directives:[Th,OX,p_,_h,yh,bJ,wJ],styles:["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] .main-container[_ngcontent-%COMP%]{display:flex;min-height:3rem;width:100%;align-items:center;padding-left:.5rem}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%]{height:2rem;width:2rem;border-radius:50%;margin-right:.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-checked.mat-accent .mat-checkbox-background, [_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-indeterminate.mat-accent[_ngcontent-%COMP%] .mat-checkbox-background[_ngcontent-%COMP%]{background-color:transparent}[_nghost-%COMP%] .checkbox-background.highlighted[_ngcontent-%COMP%] .mat-ripple-element{opacity:.04}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkselected[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#fff!important}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:1.12rem;margin-bottom:.12rem}[_nghost-%COMP%] .align-end[_ngcontent-%COMP%]{margin-left:auto}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;width:100%;align-items:center}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]:not(:first-child){margin-top:.5rem}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;align-items:center;flex-grow:1;height:2.5rem}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .donor.highlighted[_ngcontent-%COMP%]{box-shadow:0 6px 2px -2px #0003,0 4px 4px #00000024,0 2px 10px #0000001f}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .hover-state[_ngcontent-%COMP%]{width:19.5rem!important}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .donor-info[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .hoverable[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]:hover .hover-state[_ngcontent-%COMP%]{opacity:1}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%]{transition:opacity .15s ease-in-out;opacity:0;cursor:pointer;position:absolute;height:100%;width:100%;top:0;margin-left:-.5rem;align-items:center;display:flex;justify-content:flex-end;padding-right:1rem;font-size:.75rem}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-title[_ngcontent-%COMP%]{font-weight:lighter}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-icon[_ngcontent-%COMP%]{margin-left:1rem}[_nghost-%COMP%] .default-padding[_ngcontent-%COMP%]{padding:.25rem .5rem}[_nghost-%COMP%] .expanded-view[_ngcontent-%COMP%]{margin-top:.25rem;width:85%;margin-bottom:.25rem}[_nghost-%COMP%] .d-flex[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] .icon-size[_ngcontent-%COMP%]{height:1.5rem;width:1.5rem;font-size:1.5rem}[_nghost-%COMP%] .selectable[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%]{width:80%!important}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{width:16rem!important}[_nghost-%COMP%] .ml-5[_ngcontent-%COMP%]{margin-left:.5rem}[_nghost-%COMP%] .mr-5[_ngcontent-%COMP%]{margin-right:.5rem}[_nghost-%COMP%] .mt-05[_ngcontent-%COMP%]{margin-top:.5rem}[_nghost-%COMP%] .description[_ngcontent-%COMP%]{width:17rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"],changeDetection:0}),t})();function PJ(t,e){if(1&t&&(ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"div",9),Za(4),sa(),sa()),2&t){const t=e.$implicit;ws(2),Ja(t.count),ws(2),Ja(t.label)}}function MJ(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("mouseenter",function(){const e=$e(t).$implicit;return va().handleHover(e.tissueBlock.spatialEntityId)})("mouseleave",function(){return $e(t),va().handleUnhover()}),ra(1,"ccf-donor-card",11),fa("checked",function(e){const n=$e(t).$implicit;return va().handleSelection(n,e)})("linkClick",function(e){return $e(t),va().handleLinkClick(e)}),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("tissueBlock",t.tissueBlock)("selected",t.selected)("color",t.color)("highlighted",t.tissueBlock.spatialEntityId===n.highlighted)}}let IJ=(()=>{class t{constructor(t){this.ga=t,this.linkClicked=new Rc,this.listResultSelected=new Rc,this.listResultDeselected=new Rc,this.itemHovered=new Rc,this.itemUnhovered=new Rc,this.atScrollBottom=!1}handleSelection(t,e){this.ga.event("list_result_selected","results_browser",this.resultLabel,+e),e?this.listResultSelected.next(t):this.listResultDeselected.next(t)}handleLinkClick(t){this.linkClicked.emit(t)}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<64}handleHover(t){this.itemHovered.emit(t)}handleUnhover(){this.itemUnhovered.emit()}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-results-browser"]],inputs:{listResults:"listResults",aggregateData:"aggregateData",resultLabel:"resultLabel",highlighted:"highlighted",header:"header"},outputs:{linkClicked:"linkClicked",listResultSelected:"listResultSelected",listResultDeselected:"listResultDeselected",itemHovered:"itemHovered",itemUnhovered:"itemUnhovered"},decls:8,vars:7,consts:[[1,"results-browser-container"],[1,"stat-box"],["id","title"],["class","stat-row",4,"ngFor","ngForOf"],[1,"results-browser-list",3,"scroll"],["class","browser-item-container",3,"mouseenter","mouseleave",4,"ngFor","ngForOf"],[1,"scroll-gradient"],[1,"stat-row"],[1,"stat-value"],[1,"stat-label"],[1,"browser-item-container",3,"mouseenter","mouseleave"],[3,"tissueBlock","selected","color","highlighted","checked","linkClick"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),Za(3),sa(),Jo(4,PJ,5,2,"div",3),sa(),ra(5,"div",4),fa("scroll",function(t){return e.onScroll(t)}),Jo(6,MJ,2,4,"div",5),sa(),oa(7,"div",6),sa()),2&t&&(ws(3),Ja(e.resultLabel),ws(1),na("ngForOf",e.aggregateData),ws(1),ja("header-hidden",!e.header),ws(1),na("ngForOf",e.listResults),ws(1),ja("hidden",!!e.atScrollBottom))},directives:[yh,AJ],styles:[".results-browser-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:calc(100% - 3rem);padding:0 1.5rem 1.5rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%]{margin-bottom:1.5rem;line-height:1.25;min-height:7.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] #title[_ngcontent-%COMP%]{font-size:1.25rem;margin-bottom:.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%]{display:flex;flex-direction:row}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin-right:1rem;width:5.5rem;text-align:right;font-weight:600}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-weight:300}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;padding-right:.5rem;height:calc(100vh - 20rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 16rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%] .browser-item-container[_ngcontent-%COMP%]{width:100%}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:95%;bottom:0;pointer-events:none}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function DJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGIN"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"login",_r)}}function RJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGOUT"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"logout",_r)}}let NJ=(()=>{class t{constructor(){this.refreshClicked=new Rc,this.downloadClicked=new Rc}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-header"]],inputs:{homeUrl:"homeUrl",loginDisabled:"loginDisabled",logoTooltip:"logoTooltip",loggedIn:"loggedIn",filters:"filters"},outputs:{refreshClicked:"refreshClicked",downloadClicked:"downloadClicked"},decls:6,vars:4,consts:[[1,"ccf-header"],[1,"home",3,"href"],["aria-hidden","false","aria-label","Reset tool","matTooltipPosition","right",1,"logo",3,"matTooltip"],[1,"filler"],["mat-button","","class","authentication","rel","noreferrer noopener","target","_blank",3,"disabled","href",4,"ngIf"],["mat-button","","rel","noreferrer noopener","target","_blank",1,"authentication",3,"href"]],template:function(t,e){1&t&&(ra(0,"mat-toolbar",0),ra(1,"a",1),oa(2,"div",2),sa(),oa(3,"div",3),Jo(4,DJ,2,3,"a",4),Jo(5,RJ,2,3,"a",4),sa()),2&t&&(ws(1),na("href",e.homeUrl,_r),ws(1),na("matTooltip",e.logoTooltip),ws(2),na("ngIf",!e.loggedIn),ws(1),na("ngIf",e.loggedIn))},directives:[Nq,ew,_h,w_],styles:[".ccf-header[_ngcontent-%COMP%]{height:4rem;padding:0 1.5rem;border-bottom-width:1px;border-bottom-style:solid;display:flex}.ccf-header[_ngcontent-%COMP%] .home[_ngcontent-%COMP%]{height:100%;width:25rem;align-items:center;display:flex}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{width:100%;height:50%;background-repeat:no-repeat;background-size:contain}.ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%]{height:1.5rem}.ccf-header[_ngcontent-%COMP%] .authentication[_ngcontent-%COMP%]{width:8.25rem;border-radius:.125rem;font-weight:500}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{display:flex;align-items:center;transition:color 1s;cursor:pointer;text-decoration:none}.ccf-header[_ngcontent-%COMP%] [_ngcontent-%COMP%]:not(:last-child){margin-right:1.5rem}.ccf-header[_ngcontent-%COMP%] .filler[_ngcontent-%COMP%]{flex-grow:1;margin:0}.ccf-header[_ngcontent-%COMP%] .filter-labels[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;font:400 1rem/1.25rem Inter,sans-serif}.ccf-header[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();const LJ=["bodyUI"];function jJ(t,e){if(1&t&&(oa(0,"ccf-header",34),Mc(1,"async"),Mc(2,"async"),Mc(3,"async"),Mc(4,"async")),2&t){const t=va();ja("hide",!1===Ic(1,6,t.header$)),na("logoTooltip",Ic(2,8,t.logoTooltip$))("homeUrl",Ic(3,10,t.homeUrl$))("loggedIn",t.loggedIn)("loginDisabled",Ic(4,12,t.loginDisabled$))}}function FJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t),va();const e=ta(70);return e.expanded=!e.expanded}),ra(1,"mat-icon",36),Za(2),sa(),sa()}if(2&t){va();const t=ta(70);ws(2),tl(" ",t.expanded?"arrow_drop_up":"arrow_drop_down"," ")}}function BJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t);const e=va();return e.organListVisible=!e.organListVisible}),ra(1,"mat-icon",37),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),tl(" ",t.organListVisible?"arrow_drop_up":"arrow_drop_down"," ")}}const VJ=function(){return{}},zJ=function(){return{x:2.2,y:2,z:.4}};let UJ=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this.data=n,this.theming=i,this.scene=r,this.listResultsState=s,this.consentService=o,this.snackbar=a,this.dataSource=c,this.globalConfig=u,this.ontologySelectionLabel="body",this.cellTypeSelectionLabel="cell",this.selectionLabel="body | cell",this.organListVisible=!0,this.url="",this.acceptableViewerDomains=Pq.acceptableViewerDomains||[],this.viewerOpen=!1,this.spinnerActive$=this.data.queryStatus$.pipe(D(t=>t===rX.Running)),this.theme$=this.globalConfig.getOption("theme"),this.themeMode$=new lp(1),this.header$=this.globalConfig.getOption("header"),this.homeUrl$=this.globalConfig.getOption("homeUrl"),this.logoTooltip$=this.globalConfig.getOption("logoTooltip"),this.loginDisabled$=this.globalConfig.getOption("loginDisabled"),i.initialize(t,e),l.setRootElement(t),n.tissueBlockData$.subscribe(),n.aggregateData$.subscribe(),n.ontologyTermOccurencesData$.subscribe(),n.cellTypeTermOccurencesData$.subscribe(),n.sceneData$.subscribe(),n.filter$.subscribe(),n.technologyFilterData$.subscribe(),n.providerFilterData$.subscribe(),this.ontologyTerms$=n.filter$.pipe(FU("ontologyTerms")),T_([this.theme$,this.themeMode$]).subscribe(([t,e])=>{this.theming.setTheme(`${t}-theme-${e}`),h.markForCheck()}),this.ontologyTreeModel$=this.dataSource.getOntologyTreeModel().pipe(up(1)),this.cellTypeTerms$=n.filter$.pipe(FU("cellTypeTerms")),this.cellTypeTreeModel$=this.dataSource.getCellTypeTreeModel().pipe(up(1))}get isLightTheme(){return this.theming.getTheme().endsWith("light")}ngOnInit(){const t=this.snackbar.openFromComponent(pq,{data:{preClose:()=>{t.dismiss()}},duration:"not-set"===this.consentService.consent?1/0:3e3});window.matchMedia?(window.matchMedia("(prefers-color-scheme: dark)").matches?this.themeMode$.next("dark"):this.themeMode$.next("light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t=>{this.themeMode$.next(t.matches?"dark":"light")})):this.themeMode$.next("light")}reset(t,e,n){t.open(),t.closeExpanded(),e.open(),e.closeExpanded(),n.removeBox(),this.resetView()}resetView(){this.bodyUI.target=[0,0,0],this.bodyUI.rotation=0,this.bodyUI.rotationX=0,this.bodyUI.bounds={x:2.2,y:2,z:.4}}toggleScheme(){this.themeMode$.next(this.isLightTheme?"dark":"light")}ontologySelected(t,e){if(t)return"anatomical-structures"===e?(this.data.updateFilter({ontologyTerms:t.map(t=>t.id)}),this.ontologySelectionLabel=this.createSelectionLabel(t)):(this.data.updateFilter({cellTypeTerms:t.map(t=>t.id)}),this.cellTypeSelectionLabel=this.createSelectionLabel(t)),this.selectionLabel=this.ontologySelectionLabel&&this.cellTypeSelectionLabel?`${this.ontologySelectionLabel} | ${this.cellTypeSelectionLabel}`:this.ontologySelectionLabel?`${this.ontologySelectionLabel}`:this.cellTypeSelectionLabel?`${this.cellTypeSelectionLabel}`:"",void(t[0]&&"body"===t[0].label&&this.resetView());this.data.updateFilter({ontologyTerms:[],cellTypeTerms:[]}),this.ontologySelectionLabel="",this.cellTypeSelectionLabel=""}createSelectionLabel(t){if(0===t.length)return"";if(1===t.length)return t[0].label;let e="";return t.forEach((n,i)=>{e+=n.label,inull==t?void 0:t.startsWith(e))?(this.url=t,this.viewerOpen=!!t):(window.open(t,"_blank"),this.closeiFrameViewer())}closeiFrameViewer(){this.viewerOpen=!1}get loggedIn(){var t;return(null!==(t=this.globalConfig.snapshot.hubmapToken)&&void 0!==t?t:"").length>0}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(No),ea(aX),ea(kq),ea(dX),ea(uX),ea(Y$),ea(q_),ea(Nf),ea(mq),ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root"]],viewQuery:function(t,e){if(1&t&&qc(LJ,5),2&t){let t;Wc(t=Yc())&&(e.bodyUI=t.first)}},decls:80,vars:111,consts:[[1,"ccf-app","mat-app-background"],["text","Loading CCF Exploration User Interface (EUI)",3,"active"],[3,"hide","logoTooltip","homeUrl","loggedIn","loginDisabled",4,"ngIf"],[1,"main-drawers"],["opened","",1,"left-drawer",3,"stateChange"],["left",""],[1,"filter-data"],[3,"filters","drawerExpanded","technologyFilters","providerFilters","filtersChange"],["filterbox",""],[1,"filter-text"],[1,"sex","filter-tag"],[1,"age","filter-tag"],[1,"bmi","filter-tag"],["placeholderText","Search anatomical structures...",1,"ontology-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["placeholderText","Search cell types...",1,"cell-type-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["position","end","opened","",1,"right-drawer",3,"stateChange"],["right",""],[1,"portal-view",3,"url","closed"],[1,"drawer-icons"],[1,"drawer-icons-left"],[1,"button",3,"matTooltip","click"],[1,"icon"],[1,"scheme-toggle","button",3,"matTooltip","click"],[1,"button"],["matTooltip","Reset View",1,"refresh","icon",3,"click"],["videoID","YAHJqvD3Q_8","infoTitle","CCF Exploration User Interface","matTooltip","Open Info"],[3,"listResults","aggregateData","resultLabel","highlighted","header","listResultSelected","listResultDeselected","linkClicked","itemHovered","itemUnhovered"],[1,"selector-drawer"],[1,"organ-selector",3,"multiselect","occurenceData","organList","selectedOrgans","organsChanged"],["selector",""],[1,"close-button-wrapper"],["class","close-button",3,"click",4,"ngIf"],[1,"stage-content",3,"scene","bounds","nodeClick","nodeHoverStart","nodeHoverStop"],["bodyUI",""],[3,"logoTooltip","homeUrl","loggedIn","loginDisabled"],[1,"close-button",3,"click"],["aria-hidden","false","aria-label","Expand carousel drawer",1,"expand-collapse-icon"],["aria-hidden","false","aria-label","Close carousel drawer",1,"expand-collapse-icon"]],template:function(t,e){if(1&t){const t=ua();ra(0,"div",0),oa(1,"ccf-spinner-overlay",1),Mc(2,"async"),Jo(3,jJ,5,14,"ccf-header",2),Mc(4,"async"),ra(5,"ccf-drawer-container",3),Mc(6,"async"),ra(7,"ccf-drawer",4,5),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(9,"div"),ra(10,"div",6),ra(11,"ccf-filters-popover",7,8),fa("filtersChange",function(t){return e.data.updateFilter(t)}),Mc(13,"async"),Mc(14,"async"),Mc(15,"async"),sa(),ra(16,"div",9),ra(17,"div",10),Za(18,"Sex: "),ra(19,"strong"),Za(20),Mc(21,"async"),sa(),sa(),ra(22,"div",11),Za(23,"Age: "),ra(24,"strong"),Za(25),Mc(26,"async"),Mc(27,"async"),sa(),sa(),ra(28,"div",12),Za(29,"BMI: "),ra(30,"strong"),Za(31),Mc(32,"async"),Mc(33,"async"),sa(),sa(),sa(),sa(),ra(34,"ccf-ontology-selection",13),fa("ontologySelection",function(t){return e.ontologySelected(t,"anatomical-structures")}),Mc(35,"async"),Mc(36,"async"),Mc(37,"async"),Mc(38,"async"),sa(),ra(39,"ccf-ontology-selection",14),fa("ontologySelection",function(t){return e.ontologySelected(t,"cell-type")}),Mc(40,"async"),Mc(41,"async"),Mc(42,"async"),Mc(43,"async"),sa(),oa(44,"ccf-drawer-toggle-button"),sa(),sa(),ra(45,"ccf-drawer",15,16),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(47,"ccf-viewer",17),fa("closed",function(){return e.viewerOpen=!1}),sa(),ra(48,"div",18),ra(49,"div",19),ra(50,"button",20),fa("click",function(){$e(t);const e=ta(12),n=ta(46);return e.removeBox(),n.toggleExpanded()}),ra(51,"mat-icon",21),Za(52),sa(),sa(),ra(53,"button",22),fa("click",function(){return e.toggleScheme()}),ra(54,"mat-icon",21),Za(55),sa(),sa(),ra(56,"button",23),ra(57,"mat-icon",24),fa("click",function(){$e(t);const n=ta(8),i=ta(46),r=ta(12);return e.reset(n,i,r)}),Za(58,"refresh "),sa(),sa(),sa(),oa(59,"ccf-info-button",25),sa(),ra(60,"ccf-results-browser",26),fa("listResultSelected",function(t){return e.listResultsState.selectListResult(t)})("listResultDeselected",function(t){return e.listResultsState.deselectListResult(t)})("linkClicked",function(t){return e.openiFrameViewer(t)})("itemHovered",function(t){return e.listResultsState.highlightNode(t)})("itemUnhovered",function(){return e.listResultsState.unHighlightNode()}),Mc(61,"async"),Mc(62,"async"),Mc(63,"async"),Mc(64,"async"),sa(),oa(65,"ccf-drawer-toggle-button"),sa(),ra(66,"ccf-drawer-content"),Mc(67,"async"),ra(68,"div",27),ra(69,"ccf-organ-selector",28,29),fa("organsChanged",function(t){return e.scene.setSelectedReferenceOrgans(t)}),Mc(71,"async"),Mc(72,"async"),Mc(73,"async"),sa(),sa(),ra(74,"div",30),Jo(75,FJ,3,1,"div",31),Jo(76,BJ,3,1,"div",31),sa(),ra(77,"ccf-body-ui",32,33),fa("nodeClick",function(t){return e.scene.sceneNodeClicked(t)})("nodeHoverStart",function(t){return e.scene.sceneNodeHovered(t)})("nodeHoverStop",function(){return e.scene.sceneNodeUnhover()}),Mc(79,"async"),sa(),sa(),sa(),sa()}if(2&t){const t=ta(46),n=ta(70);let i,r,s,o;ws(1),na("active",Ic(2,53,e.spinnerActive$)),ws(2),na("ngIf",!1===Ic(4,55,e.spinnerActive$)),ws(2),ja("header-hidden",!1===Ic(6,57,e.header$)),ws(6),na("filters",Ic(13,59,e.data.filter$))("drawerExpanded",t.expanded)("technologyFilters",Ic(14,61,e.data.technologyFilterData$))("providerFilters",Ic(15,63,e.data.providerFilterData$)),ws(9),Ja(null==(i=Ic(21,65,e.data.filter$))?null:i.sex),ws(5),el("",null==(r=Ic(26,67,e.data.filter$))?null:r.ageRange[0],"-",null==(r=Ic(27,69,e.data.filter$))?null:r.ageRange[1],""),ws(6),el("",null==(s=Ic(32,71,e.data.filter$))?null:s.bmiRange[0],"-",null==(s=Ic(33,73,e.data.filter$))?null:s.bmiRange[1],""),ws(3),na("treeModel",Ic(35,75,e.ontologyTreeModel$))("termData",Ic(36,77,e.data.ontologyTermsFullData$))("occurenceData",Ic(37,79,e.data.ontologyTermOccurencesData$))("header",Ic(38,81,e.header$)),ws(5),na("treeModel",Ic(40,83,e.cellTypeTreeModel$))("termData",Ic(41,85,e.data.cellTypeTermsFullData$))("occurenceData",Ic(42,87,e.data.cellTypeTermOccurencesData$))("header",Ic(43,89,e.header$)),ws(8),ja("opened",e.viewerOpen),na("url",e.url),ws(3),na("matTooltip",t.expanded?"Exit Fullscreen":"Enter Fullscreen"),ws(2),Ja(t.expanded?"fullscreen_exit":"fullscreen"),ws(1),na("matTooltip",e.isLightTheme?"Enter Dark Mode":"Enter Light Mode"),ws(2),tl("",e.isLightTheme?"brightness_2":"brightness_5"," "),ws(5),na("listResults",Ic(61,91,e.listResultsState.listResults$))("aggregateData",Ic(62,93,e.data.aggregateData$))("resultLabel",e.selectionLabel)("highlighted",Ic(63,95,e.listResultsState.highlightedNodeId$))("header",Ic(64,97,e.header$)),ws(6),ja("header-hidden",!1===Ic(67,99,e.header$)),ws(2),ja("closed",!e.organListVisible)("expanded",n.expanded),ws(1),na("multiselect",!0)("occurenceData",null!==(o=Ic(71,101,e.data.ontologyTermOccurencesData$))&&void 0!==o?o:Oc(109,VJ))("organList",Ic(72,103,e.scene.referenceOrgans$))("selectedOrgans",Ic(73,105,e.scene.selectedReferenceOrgans$)),ws(5),ja("closed",!e.organListVisible),ws(1),na("ngIf",e.organListVisible),ws(1),na("ngIf",!n.expanded),ws(1),ja("expanded-stage",!e.organListVisible)("selector-expanded",n.expanded),na("scene",Ic(79,107,e.scene.scene$))("bounds",Oc(110,zJ))}},directives:[xZ,_h,RZ,AZ,XZ,uJ,hJ,fJ,ew,p_,aq,IJ,CZ,QW,VW,NJ],pipes:[Dh],styles:[".cdk-overlay-container{position:absolute;font-size:1.2rem}[_nghost-%COMP%]{display:block;position:relative}.ccf-app[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:1rem;position:relative;text-align:left}.ccf-app[_ngcontent-%COMP%] ccf-header[_ngcontent-%COMP%]{z-index:99}.ccf-app[_ngcontent-%COMP%] ccf-header.hide[_ngcontent-%COMP%]{display:none}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%]{height:calc(100% - 5rem);width:100%;opacity:1;overflow:hidden;transform:scale(1)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container.header-hidden[_ngcontent-%COMP%]{height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%]{width:28.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%]{display:flex;padding-left:1.5rem;height:5rem;padding-right:1.5rem;align-items:center;justify-content:space-between}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%] .button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;outline:none;border-radius:.25rem;padding:.65rem;transition:.6s}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%]{overflow:hidden;border-radius:.5rem;height:calc(100vh - 4rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer[_ngcontent-%COMP%]{top:0rem;display:flex;flex-direction:column;position:relative;transition:all .5s ease-in-out;height:5rem;justify-content:start}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.expanded[_ngcontent-%COMP%]{height:15rem;overflow-y:auto}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.closed[_ngcontent-%COMP%]{height:1.5rem;top:-5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .stage-content[_ngcontent-%COMP%]{transition:all .5s ease-in-out;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .expanded-stage[_ngcontent-%COMP%]{height:calc(100% - 3rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-expanded[_ngcontent-%COMP%]{height:calc(100% - 16.5rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 1rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:center;border-top-right-radius:.5rem;border-top-left-radius:.5rem;height:0}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:flex;justify-content:center;height:1.0625rem;width:3rem;align-self:center;border-radius:0 0 .25rem .25rem;cursor:pointer;transition:.6s;position:relative;top:.5rem;z-index:1}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{position:relative;bottom:.2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem;height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cell-type-selection[_ngcontent-%COMP%] .ccf-ontology-search{margin-top:2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%]{height:5rem;display:flex;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:75%;margin-left:1.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%]{font-weight:300}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600!important}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view[_ngcontent-%COMP%]{position:fixed;left:0;top:0;bottom:0;right:425%;height:100%;transform:translate(-425%);width:calc(100% - 28.5rem);transition:transform .5s cubic-bezier(.82,.085,.395,.895)}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view.opened[_ngcontent-%COMP%]{transform:translate(0);transition:width 0s .5s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view[_ngcontent-%COMP%]{width:100vw}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view.opened[_ngcontent-%COMP%]{transition:width 0s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .shaded-toggle[_ngcontent-%COMP%]{box-shadow:-1px 0 4px #212121}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5rem}"],changeDetection:0}),t})();function HJ(t,e){1&t&&oa(0,"ccf-root")}function $J(t){const e=t=>"string"==typeof t,n=t=>Array.isArray(t)&&t.every(e);if("string"==typeof t){const e=wZ.json(t);if(n(e))return e}else if(n(t))return t;throw new Error("Invalid data sources")}let GJ=(()=>{class t extends _Z{constructor(t,e){super(t,e,{initialDelay:10,initialConfig:Object.assign(Object.assign(Object.assign({},Pq.dbOptions),globalThis.dbOptions),Pq.customization),parse:{dataSources:$J,useRemoteApi:wZ.boolean,header:wZ.boolean,loginDisabled:wZ.boolean}})}}return t.\u0275fac=function(e){return new(e||t)(ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root-wc"]],inputs:{dataSources:"dataSources",hubmapDataService:"hubmapDataService",hubmapDataUrl:"hubmapDataUrl",hubmapAssetUrl:"hubmapAssetUrl",hubmapToken:"hubmapToken",hubmapPortalUrl:"hubmapPortalUrl",useRemoteApi:"useRemoteApi",remoteApiEndpoint:"remoteApiEndpoint",theme:"theme",header:"header",homeUrl:"homeUrl",logoTooltip:"logoTooltip",loginDisabled:"loginDisabled"},features:[jo],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&Jo(0,HJ,1,0,"ccf-root",0),2&t&&na("ngIf",e.initialized)},directives:[_h,UJ],encapsulation:2,changeDetection:0}),t})(),WJ=(()=>{class t{constructor(t){this.injector=t}ngDoBootstrap(){const t=function(t,e){const n=function(t,e){return e.get(El).resolveComponentFactory(t).inputs}(t,e.injector),i=e.strategyFactory||new Bf(t,e.injector),r=function(t){const e={};return t.forEach(({propName:t,templateName:n})=>{e[function(t){return t.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}(n)]=t}),e}(n);class s extends zf{constructor(t){super(),this.injector=t}get ngElementStrategy(){if(!this._ngElementStrategy){const t=this._ngElementStrategy=i.create(this.injector||e.injector);n.forEach(({propName:e})=>{if(!this.hasOwnProperty(e))return;const n=this[e];delete this[e],t.setInputValue(e,n)})}return this._ngElementStrategy}attributeChangedCallback(t,e,n,i){this.ngElementStrategy.setInputValue(r[t],n)}connectedCallback(){let t=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),t=!0),this.ngElementStrategy.connect(this),t||this.subscribeToEvents()}disconnectedCallback(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}subscribeToEvents(){this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(t=>{const e=function(t,e,n){if("function"!=typeof CustomEvent){const i=t.createEvent("CustomEvent");return i.initCustomEvent(e,!1,!1,n),i}return new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:n})}(this.ownerDocument,t.name,t.value);this.dispatchEvent(e)})}}return s.observedAttributes=Object.keys(r),n.forEach(({propName:t})=>{Object.defineProperty(s.prototype,t,{get(){return this.ngElementStrategy.getInputValue(t)},set(e){this.ngElementStrategy.setInputValue(t,e)},configurable:!0,enumerable:!0})}),s}(GJ,{injector:this.injector});customElements.define("ccf-eui",t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(No))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:Tq,useValue:"hubmap-theme-light"},{provide:gf,useExisting:Nf}],imports:[[ky,gd,gX,sZ,$Y,mK,f_,UY,tZ,mZ,zW,ZW,lq,rw,bZ,fq,G_]]}),t})();Pq.production&&function(){if(Ru)throw new Error("Cannot enable prod mode after platform setup.");Du=!1}(),pd().bootstrapModule(WJ).catch(t=>console.error(t))},91052:function(t){function e(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}t.exports=function(t){return function(){var n=this,i=arguments;return new Promise(function(r,s){var o=t.apply(n,i);function a(t){e(o,r,s,a,l,"next",t)}function l(t){e(o,r,s,a,l,"throw",t)}a(void 0)})}},t.exports.default=t.exports,t.exports.__esModule=!0},61948:function(t){t.exports=function(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},34321:function(t){function e(n){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=e=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=e=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),e(n)}t.exports=e,t.exports.default=t.exports,t.exports.__esModule=!0},91741:function(t){function e(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}e.keys=function(){return[]},e.resolve=e,e.id=91741,t.exports=e},88509:function(t,e,n){"use strict";t.exports=n.p+"7693192ac33f7744a3ca.ts"},9521:function(){},49125:function(){},75307:function(){}},function(t){t(t.s=93640)}]); \ No newline at end of file diff --git a/main-es5.js b/main-es5.js index 41e5981e8..bc21295aa 100644 --- a/main-es5.js +++ b/main-es5.js @@ -1 +1 @@ -!function(){function e(t,n,i){return(e="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var i=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=p(e)););return e}(e,t);if(i){var r=Object.getOwnPropertyDescriptor(i,t);return r.get?r.get.call(n):r.value}})(t,n,i||t)}function t(e,t){return r(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var i,r,o=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(i=n.next()).done)&&(o.push(i.value),!t||o.length!==t);a=!0);}catch(u){s=!0,r=u}finally{try{a||null==n.return||n.return()}finally{if(s)throw r}}return o}(e,t)||w(e,t)||i()}function n(e){return r(e)||g(e)||w(e)||i()}function i(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(e){if(Array.isArray(e))return e}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&f(e,t)}function s(e){var t=d();return function(){var n,i=p(e);if(t){var r=p(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return u(this,n)}}function u(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return c(e)}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){var t="function"==typeof Map?new Map:void 0;return(l=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,i)}function i(){return h(e,arguments,p(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),f(i,e)})(e)}function h(e,t,n){return(h=d()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&f(r,n.prototype),r}).apply(null,arguments)}function d(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e){return function(e){if(Array.isArray(e))return k(e)}(e)||g(e)||w(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function y(e,t){for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw o}}}}function w(e,t){if(e){if("string"==typeof e)return k(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(e,t):void 0}}function k(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n0&&r[r.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]0?a-4:a;for(n=0;n>16&255,u[l++]=t>>8&255,u[l++]=255&t;return 2===s&&(t=r[e.charCodeAt(n)]<<2|r[e.charCodeAt(n+1)]>>4,u[l++]=255&t),1===s&&(t=r[e.charCodeAt(n)]<<10|r[e.charCodeAt(n+1)]<<4|r[e.charCodeAt(n+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t),u},n.fromByteArray=function(e){for(var t,n=e.length,r=n%3,o=[],a=16383,s=0,u=n-r;su?u:s+a));return 1===r?o.push(i[(t=e[n-1])>>2]+i[t<<4&63]+"=="):2===r&&o.push(i[(t=(e[n-2]<<8)+e[n-1])>>10]+i[t>>4&63]+i[t<<2&63]+"="),o.join("")};for(var i=[],r=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e){return i[e>>18&63]+i[e>>12&63]+i[e>>6&63]+i[63&e]}function h(e,t,n){for(var i=[],r=t;r>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function u(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function c(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}n.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(r>0&&(e.lastNeed=r-1),r):--i=0?(r>0&&(e.lastNeed=r-2),r):--i=0?(r>0&&(2===r?r=0:e.lastNeed=r-3),r):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var i=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},{"safe-buffer":4}],6:[function(e,t,n){(function(t){(function(){"use strict";var t=e("base64-js"),i=e("ieee754");n.Buffer=a,n.SlowBuffer=function(e){return+e!=e&&(e=0),a.alloc(+e)},n.INSPECT_MAX_BYTES=50;var r=2147483647;function o(e){if(e>r)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return t.__proto__=a.prototype,t}function a(e,t,n){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return c(e)}return s(e,t,n)}function s(e,t,n){if("string"==typeof e)return function(e,t){if(("string"!=typeof t||""===t)&&(t="utf8"),!a.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var n=0|d(e,t),i=o(n),r=i.write(e,t);return r!==n&&(i=i.slice(0,r)),i}(e,t);if(ArrayBuffer.isView(e))return l(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(B(e,ArrayBuffer)||e&&B(e.buffer,ArrayBuffer))return function(e,t,n){if(t<0||e.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|e}function d(e,t){if(a.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||B(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(e).length;default:if(r)return i?-1:L(e).length;t=(""+t).toLowerCase(),r=!0}}function f(e,t,n){var i=!1;if((void 0===t||t<0)&&(t=0),t>this.length||((void 0===n||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return E(this,t,n);case"latin1":case"binary":return C(this,t,n);case"base64":return x(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,t,n);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}function p(e,t,n){var i=e[t];e[t]=e[n],e[n]=i}function v(e,t,n,i,r){if(0===e.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),V(n=+n)&&(n=r?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(r)return-1;n=e.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof t&&(t=a.from(t,i)),a.isBuffer(t))return 0===t.length?-1:g(e,t,n,i,r);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):g(e,[t],n,i,r);throw new TypeError("val must be string, number or Buffer")}function g(e,t,n,i,r){var o,a=1,s=e.length,u=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;a=2,s/=2,u/=2,n/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(r){var l=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var h=!0,d=0;dr&&(i=r):i=r;var o=t.length;i>o/2&&(i=o/2);for(var a=0;a>8,r.push(n%256),r.push(i);return r}(t,e.length-n),e,n,i)}function x(e,n,i){return t.fromByteArray(0===n&&i===e.length?e:e.slice(n,i))}function S(e,t,n){n=Math.min(e.length,n);for(var i=[],r=t;r239?4:c>223?3:c>191?2:1;if(r+h<=n)switch(h){case 1:c<128&&(l=c);break;case 2:128==(192&(o=e[r+1]))&&(u=(31&c)<<6|63&o)>127&&(l=u);break;case 3:a=e[r+2],128==(192&(o=e[r+1]))&&128==(192&a)&&(u=(15&c)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:a=e[r+2],s=e[r+3],128==(192&(o=e[r+1]))&&128==(192&a)&&128==(192&s)&&(u=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,h=1):l>65535&&(i.push((l-=65536)>>>10&1023|55296),l=56320|1023&l),i.push(l),r+=h}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);for(var n="",i=0;ii)&&(n=i);for(var r="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function P(e,t,n,i,r,o){if(!a.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>r||te.length)throw new RangeError("Index out of range")}function M(e,t,n,i,r,o){if(n+i>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(e,t,n,r,o){return t=+t,n>>>=0,o||M(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function R(e,t,n,r,o){return t=+t,n>>>=0,o||M(e,0,n,8),i.write(e,t,n,r,52,8),n+8}n.kMaxLength=r,!(a.TYPED_ARRAY_SUPPORT=function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()}catch(t){return!1}}())&&"undefined"!=typeof console&&"function"==typeof console.error&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),a.poolSize=8192,a.from=function(e,t,n){return s(e,t,n)},a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,a.alloc=function(e,t,n){return function(e,t,n){return u(e),e<=0?o(e):void 0!==t?"string"==typeof n?o(e).fill(t,n):o(e).fill(t):o(e)}(e,t,n)},a.allocUnsafe=function(e){return c(e)},a.allocUnsafeSlow=function(e){return c(e)},a.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==a.prototype},a.compare=function(e,t){if(B(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),B(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),!a.isBuffer(e)||!a.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var n=e.length,i=t.length,r=0,o=Math.min(n,i);rt&&(e+=" ... "),""},a.prototype.compare=function(e,t,n,i,r){if(B(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),!a.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),t<0||n>e.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&t>=n)return 0;if(i>=r)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(r>>>=0)-(i>>>=0),s=(n>>>=0)-(t>>>=0),u=Math.min(o,s),c=this.slice(i,r),l=e.slice(t,n),h=0;h>>=0,isFinite(n)?(n>>>=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-t;if((void 0===n||n>r)&&(n=r),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var o=!1;;)switch(i){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return y(this,e,t,n);case"ascii":return b(this,e,t,n);case"latin1":case"binary":return _(this,e,t,n);case"base64":return w(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},a.prototype.slice=function(e,t){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t>>=0,t>>>=0,n||A(e,t,this.length);for(var i=this[e],r=1,o=0;++o>>=0,t>>>=0,n||A(e,t,this.length);for(var i=this[e+--t],r=1;t>0&&(r*=256);)i+=this[e+--t]*r;return i},a.prototype.readUInt8=function(e,t){return e>>>=0,t||A(e,1,this.length),this[e]},a.prototype.readUInt16LE=function(e,t){return e>>>=0,t||A(e,2,this.length),this[e]|this[e+1]<<8},a.prototype.readUInt16BE=function(e,t){return e>>>=0,t||A(e,2,this.length),this[e]<<8|this[e+1]},a.prototype.readUInt32LE=function(e,t){return e>>>=0,t||A(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},a.prototype.readUInt32BE=function(e,t){return e>>>=0,t||A(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},a.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||A(e,t,this.length);for(var i=this[e],r=1,o=0;++o=(r*=128)&&(i-=Math.pow(2,8*t)),i},a.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||A(e,t,this.length);for(var i=t,r=1,o=this[e+--i];i>0&&(r*=256);)o+=this[e+--i]*r;return o>=(r*=128)&&(o-=Math.pow(2,8*t)),o},a.prototype.readInt8=function(e,t){return e>>>=0,t||A(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},a.prototype.readInt16LE=function(e,t){e>>>=0,t||A(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt16BE=function(e,t){e>>>=0,t||A(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt32LE=function(e,t){return e>>>=0,t||A(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},a.prototype.readInt32BE=function(e,t){return e>>>=0,t||A(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},a.prototype.readFloatLE=function(e,t){return e>>>=0,t||A(e,4,this.length),i.read(this,e,!0,23,4)},a.prototype.readFloatBE=function(e,t){return e>>>=0,t||A(e,4,this.length),i.read(this,e,!1,23,4)},a.prototype.readDoubleLE=function(e,t){return e>>>=0,t||A(e,8,this.length),i.read(this,e,!0,52,8)},a.prototype.readDoubleBE=function(e,t){return e>>>=0,t||A(e,8,this.length),i.read(this,e,!1,52,8)},a.prototype.writeUIntLE=function(e,t,n,i){e=+e,t>>>=0,n>>>=0,i||P(this,e,t,n,Math.pow(2,8*n)-1,0);var r=1,o=0;for(this[t]=255&e;++o>>=0,n>>>=0,i||P(this,e,t,n,Math.pow(2,8*n)-1,0);var r=n-1,o=1;for(this[t+r]=255&e;--r>=0&&(o*=256);)this[t+r]=e/o&255;return t+n},a.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,1,255,0),this[t]=255&e,t+1},a.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},a.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},a.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},a.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},a.prototype.writeIntLE=function(e,t,n,i){if(e=+e,t>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,e,t,n,r-1,-r)}var o=0,a=1,s=0;for(this[t]=255&e;++o>0)-s&255;return t+n},a.prototype.writeIntBE=function(e,t,n,i){if(e=+e,t>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,e,t,n,r-1,-r)}var o=n-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},a.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},a.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},a.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},a.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},a.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},a.prototype.writeFloatLE=function(e,t,n){return I(this,e,t,!0,n)},a.prototype.writeFloatBE=function(e,t,n){return I(this,e,t,!1,n)},a.prototype.writeDoubleLE=function(e,t,n){return R(this,e,t,!0,n)},a.prototype.writeDoubleBE=function(e,t,n){return R(this,e,t,!1,n)},a.prototype.copy=function(e,t,n,i){if(!a.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&0!==i&&(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else Uint8Array.prototype.set.call(e,this.subarray(n,i),t);return r},a.prototype.fill=function(e,t,n,i){if("string"==typeof e){if("string"==typeof t?(i=t,t=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!a.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===e.length){var r=e.charCodeAt(0);("utf8"===i&&r<128||"latin1"===i)&&(e=r)}}else"number"==typeof e&&(e&=255);if(t<0||this.length>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!r){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===i){(t-=3)>-1&&o.push(239,191,189);continue}r=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(t-=3)>-1&&o.push(239,191,189);if(r=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function j(e){return t.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function F(e,t,n,i){for(var r=0;r=t.length||r>=e.length);++r)t[r+n]=e[r];return r}function B(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function V(e){return e!=e}}).call(this)}).call(this,e("buffer").Buffer)},{"base64-js":2,buffer:6,ieee754:9}],7:[function(e,t,n){"use strict";t.exports=function e(t){return null===t||"object"!=typeof t||null!=t.toJSON?JSON.stringify(t):Array.isArray(t)?"["+t.reduce(function(t,n,i){return t+(0===i?"":",")+e(void 0===n||"symbol"==typeof n?null:n)},"")+"]":"{"+Object.keys(t).sort().reduce(function(n,i,r){return void 0===t[i]||"symbol"==typeof t[i]?n:n+(0===n.length?"":",")+e(i)+":"+e(t[i])},"")+"}"}},{}],8:[function(e,t,n){"use strict";var i,r="object"==typeof Reflect?Reflect:null,o=r&&"function"==typeof r.apply?r.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};i=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var a=Number.isNaN||function(e){return e!=e};function s(){s.init.call(this)}t.exports=s,t.exports.once=function(e,t){return new Promise(function(n,i){function r(n){e.removeListener(t,o),i(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",r),n([].slice.call(arguments))}m(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&m(e,"error",t,{once:!0})}(e,r)})},s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var u=10;function c(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function l(e){return void 0===e._maxListeners?s.defaultMaxListeners:e._maxListeners}function h(e,t,n,i){var r,o,a;if(c(n),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),a=o[t]),void 0===a)a=o[t]=n,++e._eventsCount;else if("function"==typeof a?a=o[t]=i?[n,a]:[a,n]:i?a.unshift(n):a.push(n),(r=l(e))>0&&a.length>r&&!a.warned){a.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=a.length,function(e){console&&console.warn&&console.warn(e)}(s)}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,n){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},r=d.bind(i);return r.listener=n,i.wrapFn=r,r}function p(e,t,n){var i=e._events;if(void 0===i)return[];var r=i[t];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var u=r[e];if(void 0===u)return!1;if("function"==typeof u)o(u,this,t);else{var c=u.length,l=g(u,c);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,r=o;break}if(r<0)return this;0===r?n.shift():function(e,t){for(;t+1=0;i--)this.removeListener(e,t[i]);return this},s.prototype.listeners=function(e){return p(this,e,!0)},s.prototype.rawListeners=function(e){return p(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):v.call(e,t)},s.prototype.listenerCount=v,s.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},{}],9:[function(e,t,n){n.read=function(e,t,n,i,r){var o,a,s=8*r-i-1,u=(1<>1,l=-7,h=n?r-1:0,d=n?-1:1,f=e[t+h];for(h+=d,o=f&(1<<-l)-1,f>>=-l,l+=s;l>0;o=256*o+e[t+h],h+=d,l-=8);for(a=o&(1<<-l)-1,o>>=-l,l+=i;l>0;a=256*a+e[t+h],h+=d,l-=8);if(0===o)o=1-c;else{if(o===u)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,i),o-=c}return(f?-1:1)*a*Math.pow(2,o-i)},n.write=function(e,t,n,i,r,o){var a,s,u,c=8*o-r-1,l=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,f=i?0:o-1,p=i?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-a))<1&&(a--,u*=2),(t+=a+h>=1?d/u:d*Math.pow(2,1-h))*u>=2&&(a++,u/=2),a+h>=l?(s=0,a=l):a+h>=1?(s=(t*u-1)*Math.pow(2,r),a+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,r),a=0));r>=8;e[n+f]=255&s,f+=p,s/=256,r-=8);for(a=a<0;e[n+f]=255&a,f+=p,a/=256,c-=8);e[n+f-p]|=128*v}},{}],10:[function(e,t,n){t.exports="function"==typeof Object.create?function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},{}],11:[function(e,t,n){"use strict";var i=e("./types"),r=i.isArray,o=i.isObject,a=i.isString,s=e("./util").asArray,u=e("./url").prependBase,c=e("./JsonLdError"),l=e("./ResolvedContext");function d(e){throw new c("Invalid JSON-LD syntax; @context must be an object.","jsonld.SyntaxError",{code:"invalid local context",context:e})}function f(e){var t=e.context,n=e.base;if(t){var i=t["@context"];if(a(i))t["@context"]=u(n,i);else if(r(i))for(var s=0;s10)){e.next=2;break}throw new c("Maximum number of @context URLs exceeded.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"loading remote context failed":"context overflow",max:10});case 2:if(!s.has(n)){e.next=4;break}throw new c("Cyclical @context URLs detected.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"recursive context inclusion":"context overflow",url:n});case 4:return s.add(n),e.prev=5,e.next=8,i(n);case 8:l=e.sent,u=l.document||null,a(u)&&(u=JSON.parse(u)),e.next=16;break;case 13:throw e.prev=13,e.t0=e.catch(5),new c("Dereferencing a URL did not result in a valid JSON-LD object. Possible causes are an inaccessible URL perhaps due to a same-origin policy (ensure the server uses CORS if you are using client-side JavaScript), too many redirects, a non-JSON response, or more than one HTTP Link Header was provided for a remote context.","jsonld.InvalidUrl",{code:"loading remote context failed",url:n,cause:e.t0});case 16:if(o(u)){e.next=18;break}throw new c("Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object.","jsonld.InvalidUrl",{code:"invalid remote context",url:n});case 18:return e.abrupt("return",(u="@context"in u?{"@context":u["@context"]}:{"@context":{}},l.contextUrl&&(r(u["@context"])||(u["@context"]=[u["@context"]]),u["@context"].push(l.contextUrl)),{context:u,remoteDoc:l}));case 19:case"end":return e.stop()}},e,null,[[5,13]])}))()}}]),e}()},{"./JsonLdError":12,"./ResolvedContext":16,"./types":30,"./url":31,"./util":32}],12:[function(e,t,n){"use strict";t.exports=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"An unspecified JSON-LD error occurred.",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"jsonld.Error",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return m(this,n),(e=t.call(this,i)).name=r,e.message=i,e.details=o,e}return n}(l(Error))},{}],13:[function(e,t,n){"use strict";t.exports=function(e){var t=function(){function e(){m(this,e)}return b(e,[{key:"toString",value:function(){return"[object JsonLdProcessor]"}}]),e}();return Object.defineProperty(t,"prototype",{writable:!1,enumerable:!1}),Object.defineProperty(t.prototype,"constructor",{writable:!0,enumerable:!1,configurable:!0,value:t}),t.compact=function(t,n){return arguments.length<2?Promise.reject(new TypeError("Could not compact, too few arguments.")):e.compact(t,n)},t.expand=function(t){return arguments.length<1?Promise.reject(new TypeError("Could not expand, too few arguments.")):e.expand(t)},t.flatten=function(t){return arguments.length<1?Promise.reject(new TypeError("Could not flatten, too few arguments.")):e.flatten(t)},t}},{}],14:[function(e,t,n){"use strict";t.exports=e("rdf-canonize").NQuads},{"rdf-canonize":46}],15:[function(e,t,n){"use strict";t.exports=function(){function e(){m(this,e),this._requests={}}return b(e,[{key:"wrapLoader",value:function(e){var t=this;return t._loader=e,function(){return t.add.apply(t,arguments)}}},{key:"add",value:function(e){var t=this;return h(regeneratorRuntime.mark(function n(){var i;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!(i=t._requests[e])){n.next=3;break}return n.abrupt("return",Promise.resolve(i));case 3:return i=t._requests[e]=t._loader(e),n.prev=4,n.next=7,i;case 7:return n.abrupt("return",n.sent);case 8:return n.prev=8,delete t._requests[e],n.finish(8);case 11:case"end":return n.stop()}},n,null,[[4,,8,11]])}))()}}]),e}()},{}],16:[function(e,t,n){"use strict";var i=e("lru-cache");t.exports=function(){function e(t){var n=t.document;m(this,e),this.document=n,this.cache=new i({max:10})}return b(e,[{key:"getProcessed",value:function(e){return this.cache.get(e)}},{key:"setProcessed",value:function(e,t){this.cache.set(e,t)}}]),e}()},{"lru-cache":33}],17:[function(e,i,r){"use strict";var a,s=e("./JsonLdError"),u=e("./types"),c=u.isArray,l=u.isObject,d=u.isString,f=u.isUndefined,p=e("./graphTypes"),v=p.isList,g=p.isValue,m=p.isGraph,y=p.isSimpleGraph,b=p.isSubjectReference,w=e("./context"),k=w.expandIri,x=w.getContextValue,S=w.isKeyword,E=w.process,C=w.processingMode,O=e("./url"),T=O.removeBase,A=O.prependBase,P=e("./util"),M=P.addValue,I=P.asArray,R=P.compareShortestLeast,D={};function N(e,t,n){if("@nest"!==k(e,t,{vocab:!0},n))throw new s("JSON-LD compact error; nested property must have an @nest value resolving to @nest.","jsonld.SyntaxError",{code:"invalid @nest value"})}i.exports=D,D.compact=(a=h(regeneratorRuntime.mark(function e(t){var i,r,a,u,h,p,w,k,O,T,A,P,R;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.activeCtx,r=t.activeProperty,a=void 0===r?null:r,u=t.element,h=t.options,p=void 0===h?{}:h,w=t.compactionMap,k=void 0===w?function(){}:w,!c(u)){e.next=21;break}O=[],T=0;case 4:if(!(T1&&(L=Array.from(L).sort()),j=i,F=_(L),e.prev=27,F.s();case 29:if((B=F.n()).done){e.next=39;break}if(V=B.value,z=D.compactIri({activeCtx:j,iri:V,relativeTo:{vocab:!0}}),U=x(P,z,"@context"),e.t1=f(U),e.t1){e.next=37;break}return e.next=36,E({activeCtx:i,localCtx:U,options:p,propagate:!1});case 36:i=e.sent;case 37:e.next=29;break;case 39:e.next=44;break;case 41:e.prev=41,e.t2=e.catch(27),F.e(e.t2);case 44:return e.prev=44,F.f(),e.finish(44);case 47:H=Object.keys(u).sort(),G=_(H),e.prev=49,G.s();case 51:if((W=G.n()).done){e.next=184;break}if(q=W.value,X=u[q],"@id"===q){e.next=180;break}if("@type"===q){e.next=174;break}if("@reverse"===q){e.next=167;break}if("@preserve"===q){e.next=161;break}if("@index"===q){e.next=155;break}if("@graph"===q||"@list"===q||"@included"===q||!S(q)){e.next=64;break}Y=D.compactIri({activeCtx:i,iri:q,relativeTo:{vocab:!0}}),M(A,Y,X),e.next=153;break;case 64:if(c(X)){e.next=66;break}throw new s("JSON-LD expansion error; expanded value must be an array.","jsonld.SyntaxError");case 66:0===X.length&&(K=D.compactIri({activeCtx:i,iri:q,value:X,relativeTo:{vocab:!0},reverse:T}),$=i.mappings.has(K)?i.mappings.get(K)["@nest"]:null,Q=A,$&&(N(i,$,p),l(A[$])||(A[$]={}),Q=A[$]),M(Q,K,X,{propertyIsArray:!0})),Z=_(X),e.prev=68,Z.s();case 70:if((J=Z.n()).done){e.next=145;break}return ee=J.value,te=D.compactIri({activeCtx:i,iri:q,value:ee,relativeTo:{vocab:!0},reverse:T}),ne=i.mappings.has(te)?i.mappings.get(te)["@nest"]:null,ie=A,ne&&(N(i,ne,p),l(A[ne])||(A[ne]={}),ie=A[ne]),re=x(i,te,"@container")||[],oe=m(ee),ae=v(ee),se=void 0,ae?se=ee["@list"]:oe&&(se=ee["@graph"]),e.next=80,D.compact({activeCtx:i,activeProperty:te,element:ae||oe?se:ee,options:p,compactionMap:k});case 80:if(ue=e.sent,!ae){e.next=86;break}if(c(ue)||(ue=[ue]),!re.includes("@list")){e.next=85;break}return M(ie,te,ue,{valueIsArray:!0,allowDuplicate:!0}),e.abrupt("continue",143);case 85:ue=o({},D.compactIri({activeCtx:i,iri:"@list",relativeTo:{vocab:!0}}),ue),"@index"in ee&&(ue[D.compactIri({activeCtx:i,iri:"@index",relativeTo:{vocab:!0}})]=ee["@index"]);case 86:if(!oe){e.next=90;break}re.includes("@graph")&&(re.includes("@id")||re.includes("@index")&&y(ee))?(ce=void 0,ie.hasOwnProperty(te)?ce=ie[te]:ie[te]=ce={},le=(re.includes("@id")?ee["@id"]:ee["@index"])||D.compactIri({activeCtx:i,iri:"@none",relativeTo:{vocab:!0}}),M(ce,le,ue,{propertyIsArray:!p.compactArrays||re.includes("@set")})):re.includes("@graph")&&y(ee)?(c(ue)&&ue.length>1&&(ue={"@included":ue}),M(ie,te,ue,{propertyIsArray:!p.compactArrays||re.includes("@set")})):(c(ue)&&1===ue.length&&p.compactArrays&&(ue=ue[0]),ue=o({},D.compactIri({activeCtx:i,iri:"@graph",relativeTo:{vocab:!0}}),ue),"@id"in ee&&(ue[D.compactIri({activeCtx:i,iri:"@id",relativeTo:{vocab:!0}})]=ee["@id"]),"@index"in ee&&(ue[D.compactIri({activeCtx:i,iri:"@index",relativeTo:{vocab:!0}})]=ee["@index"]),M(ie,te,ue,{propertyIsArray:!p.compactArrays||re.includes("@set")})),e.next=143;break;case 90:if(!(re.includes("@language")||re.includes("@index")||re.includes("@id")||re.includes("@type"))){e.next=141;break}if(he=void 0,de=void 0,ie.hasOwnProperty(te)?he=ie[te]:ie[te]=he={},!re.includes("@language")){e.next=96;break}g(ue)&&(ue=ue["@value"]),de=ee["@language"],e.next=138;break;case 96:if(!re.includes("@index")){e.next=117;break}if(fe=x(i,te,"@index")||"@index",pe=D.compactIri({activeCtx:i,iri:fe,relativeTo:{vocab:!0}}),"@index"!==fe){e.next=102;break}de=ee["@index"],delete ue[pe],e.next=115;break;case 102:if(me=void 0,ve=I(ue[fe]||[]),ge=n(ve),de=ge[0],me=ge.slice(1),!d(de)){e.next=114;break}e.t3=me.length,e.next=0===e.t3?107:1===e.t3?109:111;break;case 107:return delete ue[fe],e.abrupt("break",112);case 109:return ue[fe]=me[0],e.abrupt("break",112);case 111:ue[fe]=me;case 112:e.next=115;break;case 114:de=null;case 115:e.next=138;break;case 117:if(!re.includes("@id")){e.next=122;break}ye=D.compactIri({activeCtx:i,iri:"@id",relativeTo:{vocab:!0}}),de=ue[ye],delete ue[ye],e.next=138;break;case 122:if(!re.includes("@type")){e.next=138;break}be=D.compactIri({activeCtx:i,iri:"@type",relativeTo:{vocab:!0}}),_e=void 0,e.t4=(t=I(ue[be]||[]),r=n(t),de=r[0],(_e=r.slice(1)).length),e.next=0===e.t4?128:1===e.t4?130:132;break;case 128:return delete ue[be],e.abrupt("break",133);case 130:return ue[be]=_e[0],e.abrupt("break",133);case 132:ue[be]=_e;case 133:if(e.t5=1===Object.keys(ue).length&&"@id"in ee,!e.t5){e.next=138;break}return e.next=137,D.compact({activeCtx:i,activeProperty:te,element:{"@id":ee["@id"]},options:p,compactionMap:k});case 137:ue=e.sent;case 138:de||(de=D.compactIri({activeCtx:i,iri:"@none",relativeTo:{vocab:!0}})),M(he,de,ue,{propertyIsArray:re.includes("@set")}),e.next=143;break;case 141:we=!p.compactArrays||re.includes("@set")||re.includes("@list")||c(ue)&&0===ue.length||"@list"===q||"@graph"===q,M(ie,te,ue,{propertyIsArray:we});case 143:e.next=70;break;case 145:e.next=150;break;case 147:e.prev=147,e.t6=e.catch(68),Z.e(e.t6);case 150:return e.prev=150,Z.f(),e.finish(150);case 153:e.next=159;break;case 155:if(!(x(i,a,"@container")||[]).includes("@index")){e.next=157;break}return e.abrupt("continue",182);case 157:ke=D.compactIri({activeCtx:i,iri:q,relativeTo:{vocab:!0}}),M(A,ke,X);case 159:e.next=165;break;case 161:return e.next=163,D.compact({activeCtx:i,activeProperty:a,element:X,options:p,compactionMap:k});case 163:xe=e.sent,c(xe)&&0===xe.length||M(A,q,xe);case 165:e.next=172;break;case 167:return e.next=169,D.compact({activeCtx:i,activeProperty:"@reverse",element:X,options:p,compactionMap:k});case 169:for(Ee in Se=e.sent)i.mappings.has(Ee)&&i.mappings.get(Ee).reverse&&(Ce=Se[Ee],Oe=(x(i,Ee,"@container")||[]).includes("@set")||!p.compactArrays,M(A,Ee,Ce,{propertyIsArray:Oe}),delete Se[Ee]);Object.keys(Se).length>0&&(Te=D.compactIri({activeCtx:i,iri:q,relativeTo:{vocab:!0}}),M(A,Te,Se));case 172:e.next=178;break;case 174:1===(Ae=I(X).map(function(e){return D.compactIri({activeCtx:P,iri:e,relativeTo:{vocab:!0}})})).length&&(Ae=Ae[0]),Pe=D.compactIri({activeCtx:i,iri:"@type",relativeTo:{vocab:!0}}),Me=(x(i,Pe,"@container")||[]).includes("@set")&&C(i,1.1)||c(Ae)&&0===X.length,M(A,Pe,Ae,{propertyIsArray:Me});case 178:e.next=182;break;case 180:1===(Ie=I(X).map(function(e){return D.compactIri({activeCtx:i,iri:e,relativeTo:{vocab:!1},base:p.base})})).length&&(Ie=Ie[0]),A[D.compactIri({activeCtx:i,iri:"@id",relativeTo:{vocab:!0}})]=Ie;case 182:e.next=51;break;case 184:e.next=189;break;case 186:e.prev=186,e.t7=e.catch(49),G.e(e.t7);case 189:return e.prev=189,G.f(),e.finish(189);case 192:return e.abrupt("return",{v:A});case 193:case"end":return e.stop()}},e,null,[[27,41,44,47],[49,186,189,192],[68,147,150,153]])})(),"t3",29);case 29:if("object"!=typeof(R=e.t3)){e.next=32;break}return e.abrupt("return",R.v);case 32:return e.abrupt("return",u);case 33:case"end":return e.stop()}},e)})),function(e){return a.apply(this,arguments)}),D.compactIri=function(e){var n=e.activeCtx,i=e.iri,r=e.value,o=void 0===r?null:r,a=e.relativeTo,u=void 0===a?{vocab:!1}:a,c=e.reverse,h=void 0!==c&&c,d=e.base,f=void 0===d?null:d;if(null===i)return i;n.isPropertyTermScoped&&n.previousContext&&(n=n.previousContext);var p=n.getInverse();if(S(i)&&i in p&&"@none"in p[i]&&"@type"in p[i]["@none"]&&"@none"in p[i]["@none"]["@type"])return p[i]["@none"]["@type"]["@none"];if(u.vocab&&i in p){var y=n["@language"]||"@none",b=[];l(o)&&"@index"in o&&!("@graph"in o)&&b.push("@index","@index@set"),l(o)&&"@preserve"in o&&(o=o["@preserve"][0]),m(o)?("@index"in o&&b.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in o&&b.push("@graph@id","@graph@id@set"),b.push("@graph","@graph@set","@set"),"@index"in o||b.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in o||b.push("@graph@id","@graph@id@set")):l(o)&&!g(o)&&b.push("@id","@id@set","@type","@set@type");var w="@language",k="@null";if(h)w="@type",k="@reverse",b.push("@set");else if(v(o)){"@index"in o||b.push("@list");var x=o["@list"];if(0===x.length)w="@any",k="@none";else{for(var E=0===x.length?y:null,C=null,O=0;O=0;--G){var W,q=V[G],X=_(q.terms);try{for(X.s();!(W=X.n()).done;){var Y=W.value,K=Y+":"+i.substr(q.iri.length);n.mappings.get(Y)._prefix&&(!n.mappings.has(K)||null===o&&n.mappings.get(K)["@id"]===i)&&(null===B||R(K,B)<0)&&(B=K)}}catch(te){X.e(te)}finally{X.f()}}if(null!==B)return B;var $,Q=_(n.mappings);try{for(Q.s();!($=Q.n()).done;){var Z=t($.value,2),J=Z[0],ee=Z[1];if(ee&&ee._prefix&&i.startsWith(J+":"))throw new s('Absolute IRI "'.concat(i,'" confused with prefix "').concat(J,'".'),"jsonld.SyntaxError",{code:"IRI confused with prefix",context:n})}}catch(te){Q.e(te)}finally{Q.f()}return u.vocab?i:"@base"in n?n["@base"]?T(A(f,n["@base"]),i):i:T(f,i)},D.compactValue=function(e){var t=e.activeCtx,n=e.activeProperty,i=e.value,r=e.options;if(g(i)){var a=x(t,n,"@type"),s=x(t,n,"@language"),u=x(t,n,"@direction"),c=x(t,n,"@container")||[],l="@index"in i&&!c.includes("@index");if(!l&&"@none"!==a&&(i["@type"]===a||"@language"in i&&i["@language"]===s&&"@direction"in i&&i["@direction"]===u||"@language"in i&&i["@language"]===s||"@direction"in i&&i["@direction"]===u))return i["@value"];var h=Object.keys(i).length,f=1===h||2===h&&"@index"in i&&!l,p="@language"in t,v=d(i["@value"]),m=t.mappings.has(n)&&null===t.mappings.get(n)["@language"];if(f&&"@none"!==a&&(!p||!v||m))return i["@value"];var y={};return l&&(y[D.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=i["@index"]),"@type"in i?y[D.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}})]=D.compactIri({activeCtx:t,iri:i["@type"],relativeTo:{vocab:!0}}):"@language"in i&&(y[D.compactIri({activeCtx:t,iri:"@language",relativeTo:{vocab:!0}})]=i["@language"]),"@direction"in i&&(y[D.compactIri({activeCtx:t,iri:"@direction",relativeTo:{vocab:!0}})]=i["@direction"]),y[D.compactIri({activeCtx:t,iri:"@value",relativeTo:{vocab:!0}})]=i["@value"],y}var b=k(t,n,{vocab:!0},r),_=x(t,n,"@type"),w=D.compactIri({activeCtx:t,iri:i["@id"],relativeTo:{vocab:"@vocab"===_},base:r.base});return"@id"===_||"@vocab"===_||"@graph"===b?w:o({},D.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}}),w)}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],18:[function(e,t,n){"use strict";var i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#";t.exports={LINK_HEADER_REL:"http://www.w3.org/ns/json-ld#context",LINK_HEADER_CONTEXT:"http://www.w3.org/ns/json-ld#context",RDF:i,RDF_LIST:i+"List",RDF_FIRST:i+"first",RDF_REST:i+"rest",RDF_NIL:i+"nil",RDF_TYPE:i+"type",RDF_PLAIN_LITERAL:i+"PlainLiteral",RDF_XML_LITERAL:i+"XMLLiteral",RDF_JSON_LITERAL:i+"JSON",RDF_OBJECT:i+"object",RDF_LANGSTRING:i+"langString",XSD:r,XSD_BOOLEAN:r+"boolean",XSD_DOUBLE:r+"double",XSD_INTEGER:r+"integer",XSD_STRING:r+"string"}},{}],19:[function(e,n,i){"use strict";var r,o=e("./util"),a=e("./JsonLdError"),s=e("./types"),u=s.isArray,c=s.isObject,l=s.isString,d=s.isUndefined,f=e("./url"),p=f.isAbsolute,g=f.isRelative,m=f.prependBase,y=e("./util"),b=y.asArray,w=y.compareShortestLeast,k=new Map,x=/^@[a-zA-Z]+$/,S={};function E(e,t,n,i,r,o){if(null===t||!l(t)||S.isKeyword(t))return t;if(t.match(x))return null;if(i&&i.hasOwnProperty(t)&&!0!==r.get(t)&&S.createTermDefinition({activeCtx:e,localCtx:i,term:t,defined:r,options:o}),(n=n||{}).vocab){var a=e.mappings.get(t);if(null===a)return null;if(c(a)&&"@id"in a)return a["@id"]}var s=t.indexOf(":");if(s>0){var u=t.substr(0,s),h=t.substr(s+1);if("_"===u||0===h.indexOf("//"))return t;i&&i.hasOwnProperty(u)&&S.createTermDefinition({activeCtx:e,localCtx:i,term:u,defined:r,options:o});var d=e.mappings.get(u);if(d&&d._prefix)return d["@id"]+h;if(p(t))return t}if(n.vocab&&"@vocab"in e)return e["@vocab"]+t;if(n.base&&"@base"in e){if(e["@base"])return m(m(o.base,e["@base"]),t)}else if(n.base)return m(o.base,t);return t}function C(e,t){if(!e||"object"!=typeof e||!t||"object"!=typeof t)return e===t;var n=Array.isArray(e);if(n!==Array.isArray(t))return!1;if(n){if(e.length!==t.length)return!1;for(var i=0;i0,"@reverse"in t){if("@id"in t)throw new a("Invalid JSON-LD syntax; a @reverse term definition must not contain @id.","jsonld.SyntaxError",{code:"invalid reverse property",context:i});if("@nest"in t)throw new a("Invalid JSON-LD syntax; a @reverse term definition must not contain @nest.","jsonld.SyntaxError",{code:"invalid reverse property",context:i});var k=t["@reverse"];if(!l(k))throw new a("Invalid JSON-LD syntax; a @context @reverse value must be a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});if(!S.isKeyword(k)&&k.match(x))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{reverse:k}),void(g?n.mappings.set(r,g):n.mappings.delete(r));var O=E(n,k,{vocab:!0,base:!1},i,o,s);if(!p(O))throw new a("Invalid JSON-LD syntax; a @context @reverse value must be an absolute IRI or a blank node identifier.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});y["@id"]=O,y.reverse=!0}else if("@id"in t){var T=t["@id"];if(T&&!l(T))throw new a("Invalid JSON-LD syntax; a @context @id value must be an array of strings or a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});if(null===T)y["@id"]=null;else{if(!S.isKeyword(T)&&T.match(x))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{id:T}),void(g?n.mappings.set(r,g):n.mappings.delete(r));if(T!==r){if(T=E(n,T,{vocab:!0,base:!1},i,o,s),!p(T)&&!S.isKeyword(T))throw new a("Invalid JSON-LD syntax; a @context @id value must be an absolute IRI, a blank node identifier, or a keyword.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});if(r.match(/(?::[^:])|\//)&&E(n,r,{vocab:!0,base:!1},i,new Map(o).set(r,!0),s)!==T)throw new a("Invalid JSON-LD syntax; term in form of IRI must expand to definition.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});y["@id"]=T,y._prefix=m&&!y._termHasColon&&T.match(/[:\/\?#\[\]@]$/)}}}if(!("@id"in y))if(y._termHasColon){var A=r.substr(0,w);if(i.hasOwnProperty(A)&&S.createTermDefinition({activeCtx:n,localCtx:i,term:A,defined:o,options:s}),n.mappings.has(A)){var P=r.substr(w+1);y["@id"]=n.mappings.get(A)["@id"]+P}else y["@id"]=r}else if("@type"===r)y["@id"]=r;else{if(!("@vocab"in n))throw new a("Invalid JSON-LD syntax; @context terms must define an @id.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i,term:r});y["@id"]=n["@vocab"]+r}if((!0===t["@protected"]||!0===o.get("@protected")&&!1!==t["@protected"])&&(n.protected[r]=!0,y.protected=!0),o.set(r,!0),"@type"in t){var M=t["@type"];if(!l(M))throw new a("Invalid JSON-LD syntax; an @context @type value must be a string.","jsonld.SyntaxError",{code:"invalid type mapping",context:i});if("@json"===M||"@none"===M){if(S.processingMode(n,1))throw new a('Invalid JSON-LD syntax; an @context @type value must not be "'.concat(M,'" in JSON-LD 1.0 mode.'),"jsonld.SyntaxError",{code:"invalid type mapping",context:i})}else if("@id"!==M&&"@vocab"!==M){if(M=E(n,M,{vocab:!0,base:!1},i,o,s),!p(M))throw new a("Invalid JSON-LD syntax; an @context @type value must be an absolute IRI.","jsonld.SyntaxError",{code:"invalid type mapping",context:i});if(0===M.indexOf("_:"))throw new a("Invalid JSON-LD syntax; an @context @type value must be an IRI, not a blank node identifier.","jsonld.SyntaxError",{code:"invalid type mapping",context:i})}y["@type"]=M}if("@container"in t){var I=l(t["@container"])?[t["@container"]]:t["@container"]||[],R=["@list","@set","@index","@language"],D=!0,N=I.includes("@set");if(S.processingMode(n,1.1)){if(R.push("@graph","@id","@type"),I.includes("@list")){if(1!==I.length)throw new a("Invalid JSON-LD syntax; @context @container with @list must have no other values","jsonld.SyntaxError",{code:"invalid container mapping",context:i})}else if(I.includes("@graph")){if(I.some(function(e){return"@graph"!==e&&"@id"!==e&&"@index"!==e&&"@set"!==e}))throw new a("Invalid JSON-LD syntax; @context @container with @graph must have no other values other than @id, @index, and @set","jsonld.SyntaxError",{code:"invalid container mapping",context:i})}else D&=I.length<=(N?2:1);if(I.includes("@type")&&(y["@type"]=y["@type"]||"@id",!["@id","@vocab"].includes(y["@type"])))throw new a("Invalid JSON-LD syntax; container: @type requires @type to be @id or @vocab.","jsonld.SyntaxError",{code:"invalid type mapping",context:i})}else D&=!u(t["@container"]),D&=I.length<=1;if(D&=I.every(function(e){return R.includes(e)}),!(D&=!(N&&I.includes("@list"))))throw new a("Invalid JSON-LD syntax; @context @container value must be one of the following: "+R.join(", "),"jsonld.SyntaxError",{code:"invalid container mapping",context:i});if(y.reverse&&!I.every(function(e){return["@index","@set"].includes(e)}))throw new a("Invalid JSON-LD syntax; @context @container value for a @reverse type definition must be @index or @set.","jsonld.SyntaxError",{code:"invalid reverse property",context:i});y["@container"]=I}if("@index"in t){if(!("@container"in t)||!y["@container"].includes("@index"))throw new a('Invalid JSON-LD syntax; @index without @index in @container: "'.concat(t["@index"],'" on term "').concat(r,'".'),"jsonld.SyntaxError",{code:"invalid term definition",context:i});if(!l(t["@index"])||0===t["@index"].indexOf("@"))throw new a('Invalid JSON-LD syntax; @index must expand to an IRI: "'.concat(t["@index"],'" on term "').concat(r,'".'),"jsonld.SyntaxError",{code:"invalid term definition",context:i});y["@index"]=t["@index"]}if("@context"in t&&(y["@context"]=t["@context"]),"@language"in t&&!("@type"in t)){var L=t["@language"];if(null!==L&&!l(L))throw new a("Invalid JSON-LD syntax; @context @language value must be a string or null.","jsonld.SyntaxError",{code:"invalid language mapping",context:i});null!==L&&(L=L.toLowerCase()),y["@language"]=L}if("@prefix"in t){if(r.match(/:|\//))throw new a("Invalid JSON-LD syntax; @context @prefix used on a compact IRI term","jsonld.SyntaxError",{code:"invalid term definition",context:i});if(S.isKeyword(y["@id"]))throw new a("Invalid JSON-LD syntax; keywords may not be used as prefixes","jsonld.SyntaxError",{code:"invalid term definition",context:i});if("boolean"!=typeof t["@prefix"])throw new a("Invalid JSON-LD syntax; @context value for @prefix must be boolean","jsonld.SyntaxError",{code:"invalid @prefix value",context:i});y._prefix=!0===t["@prefix"]}if("@direction"in t){var j=t["@direction"];if(null!==j&&"ltr"!==j&&"rtl"!==j)throw new a('Invalid JSON-LD syntax; @direction value must be null, "ltr", or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",context:i});y["@direction"]=j}if("@nest"in t){var F=t["@nest"];if(!l(F)||"@nest"!==F&&0===F.indexOf("@"))throw new a("Invalid JSON-LD syntax; @context @nest value must be a string which is not a keyword other than @nest.","jsonld.SyntaxError",{code:"invalid @nest value",context:i});y["@nest"]=F}var B=y["@id"];if("@context"===B||"@preserve"===B)throw new a("Invalid JSON-LD syntax; @context and @preserve cannot be aliased.","jsonld.SyntaxError",{code:"invalid keyword alias",context:i});if(g&&g.protected&&!d&&(n.protected[r]=!0,y.protected=!0,!C(g,y))){var V=s&&s.protectedMode||"error";if("error"===V)throw new a('Invalid JSON-LD syntax; tried to redefine "'.concat(r,'" which is a protected term.'),"jsonld.SyntaxError",{code:"protected term redefinition",context:i,term:r});if("warn"===V)return void console.warn("WARNING: protected term redefinition",{term:r});throw new a("Invalid protectedMode.","jsonld.SyntaxError",{code:"invalid protected mode",context:i,term:r,protectedMode:V})}},S.expandIri=function(e,t,n,i){return E(e,t,n,void 0,void 0,i)},S.getInitialContext=function(e){var t=JSON.stringify({processingMode:e.processingMode}),n=k.get(t);if(n)return n;var i={processingMode:e.processingMode,mappings:new Map,inverse:null,getInverse:function(){var e=this;if(e.inverse)return e.inverse;var t,n=e.inverse={},i=e.fastCurieMap={},o={},s=(e["@language"]||"@none").toLowerCase(),u=e["@direction"],c=e.mappings,l=_(v(c.keys()).sort(w));try{for(l.s();!(t=l.n()).done;){var h=t.value,d=c.get(h);if(null!==d){var f=d["@container"]||"@none";if(f=[].concat(f).sort().join(""),null!==d["@id"]){var p,g=_(b(d["@id"]));try{for(g.s();!(p=g.n()).done;){var m=p.value,y=n[m],k=S.isKeyword(m);if(y)!k&&!d._termHasColon&&o[m].push(h);else if(n[m]=y={},!k&&!d._termHasColon){o[m]=[h];var x={iri:m,terms:o[m]};m[0]in i?i[m[0]].push(x):i[m[0]]=[x]}if(y[f]||(y[f]={"@language":{},"@type":{},"@any":{}}),a(h,(y=y[f])["@any"],"@none"),d.reverse)a(h,y["@type"],"@reverse");else if("@none"===d["@type"])a(h,y["@any"],"@none"),a(h,y["@language"],"@none"),a(h,y["@type"],"@none");else if("@type"in d)a(h,y["@type"],d["@type"]);else if("@language"in d&&"@direction"in d){var E=d["@language"],C=d["@direction"];a(h,y["@language"],E&&C?"".concat(E,"_").concat(C).toLowerCase():E?E.toLowerCase():C?"_".concat(C):"@null")}else"@language"in d?a(h,y["@language"],(d["@language"]||"@null").toLowerCase()):"@direction"in d?a(h,y["@language"],d["@direction"]?"_".concat(d["@direction"]):"@none"):u?(a(h,y["@language"],"_".concat(u)),a(h,y["@language"],"@none"),a(h,y["@type"],"@none")):(a(h,y["@language"],s),a(h,y["@language"],"@none"),a(h,y["@type"],"@none"))}}catch(T){g.e(T)}finally{g.f()}}}}}catch(T){l.e(T)}finally{l.f()}for(var O in i)r(i,O,1);return n},clone:function(){var e={};return e.mappings=o.clone(this.mappings),e.clone=this.clone,e.inverse=null,e.getInverse=this.getInverse,e.protected=o.clone(this.protected),this.previousContext&&(e.previousContext=this.previousContext.clone()),e.revertToPreviousContext=this.revertToPreviousContext,"@base"in this&&(e["@base"]=this["@base"]),"@language"in this&&(e["@language"]=this["@language"]),"@vocab"in this&&(e["@vocab"]=this["@vocab"]),e},revertToPreviousContext:function(){return this.previousContext?this.previousContext.clone():this},protected:{}};return 1e4===k.size&&k.clear(),k.set(t,i),i;function r(e,t,n){var i,o,a,s=e[t],u=e[t]={},c=_(s);try{for(c.s();!(a=c.n()).done;){var l=a.value;(o=n>=(i=l.iri).length?"":i[n])in u?u[o].push(l):u[o]=[l]}}catch(d){c.e(d)}finally{c.f()}for(var h in u)""!==h&&r(u,h,n+1)}function a(e,t,n){t.hasOwnProperty(n)||(t[n]=e)}},S.getContextValue=function(e,t,n){if(null===t)return"@context"===n?void 0:null;if(e.mappings.has(t)){var i=e.mappings.get(t);if(d(n))return i;if(i.hasOwnProperty(n))return i[n]}return"@language"===n&&n in e||"@direction"===n&&n in e?e[n]:"@context"!==n?null:void 0},S.processingMode=function(e,t){return t.toString()>="1.1"?!e.processingMode||e.processingMode>="json-ld-"+t.toString():"json-ld-1.0"===e.processingMode},S.isKeyword=function(e){if(!l(e)||"@"!==e[0])return!1;switch(e){case"@base":case"@container":case"@context":case"@default":case"@direction":case"@embed":case"@explicit":case"@graph":case"@id":case"@included":case"@index":case"@json":case"@language":case"@list":case"@nest":case"@none":case"@omitDefault":case"@prefix":case"@preserve":case"@protected":case"@requireAll":case"@reverse":case"@set":case"@type":case"@value":case"@version":case"@vocab":return!0}return!1}},{"./JsonLdError":12,"./types":30,"./url":31,"./util":32}],20:[function(e,t,n){"use strict";var i=e("../util"),r=i.parseLinkHeader,o=i.buildHeaders,a=e("../constants").LINK_HEADER_CONTEXT,s=e("../JsonLdError"),u=e("../RequestQueue"),c=e("../url").prependBase,l=/(^|(\r\n))link:/i;function d(e,t,n){var i=new(e=e||XMLHttpRequest);return new Promise(function(e,r){for(var o in i.onload=function(){return e(i)},i.onerror=function(e){return r(e)},i.open("GET",t,!0),n)i.setRequestHeader(o,n[o]);i.send()})}t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{headers:{}},t=e.secure,n=e.headers,i=void 0===n?{}:n,f=e.xhr;return i=o(i),(new u).wrapLoader(p);function p(e){return v.apply(this,arguments)}function v(){return(v=h(regeneratorRuntime.mark(function e(n){var o,u,h,v,g,m,y;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(0===n.indexOf("http:")||0===n.indexOf("https:")){e.next=2;break}throw new s('URL could not be dereferenced; only "http" and "https" URLs are supported.',"jsonld.InvalidUrl",{code:"loading document failed",url:n});case 2:if(!t||0===n.indexOf("https")){e.next=4;break}throw new s('URL could not be dereferenced; secure mode is enabled and the URL\'s scheme is not "https".',"jsonld.InvalidUrl",{code:"loading document failed",url:n});case 4:return e.prev=4,e.next=7,d(f,n,i);case 7:o=e.sent,e.next=13;break;case 10:throw e.prev=10,e.t0=e.catch(4),new s("URL could not be dereferenced, an error occurred.","jsonld.LoadDocumentError",{code:"loading document failed",url:n,cause:e.t0});case 13:if(!(o.status>=400)){e.next=15;break}throw new s("URL could not be dereferenced: "+o.statusText,"jsonld.LoadDocumentError",{code:"loading document failed",url:n,httpStatusCode:o.status});case 15:if(u={contextUrl:null,documentUrl:n,document:o.response},h=null,v=o.getResponseHeader("Content-Type"),l.test(o.getAllResponseHeaders())&&(g=o.getResponseHeader("Link")),!g||"application/ld+json"===v){e.next=28;break}if(m=r(g),y=m[a],!Array.isArray(y)){e.next=21;break}throw new s("URL could not be dereferenced, it has more than one associated HTTP Link Header.","jsonld.InvalidUrl",{code:"multiple context link headers",url:n});case 21:if(y&&(u.contextUrl=y.target),h=m.alternate,e.t1=h&&"application/ld+json"==h.type&&!(v||"").match(/^application\/(\w*\+)?json$/),!e.t1){e.next=28;break}return e.next=27,p(c(n,h.target));case 27:u=e.sent;case 28:return e.abrupt("return",u);case 29:case"end":return e.stop()}},e,null,[[4,10]])}))).apply(this,arguments)}}},{"../JsonLdError":12,"../RequestQueue":15,"../constants":18,"../url":31,"../util":32}],21:[function(e,n,i){"use strict";var r=e("./JsonLdError"),o=e("./types"),a=o.isArray,s=o.isObject,u=o.isEmptyObject,c=o.isString,l=o.isUndefined,d=e("./graphTypes"),f=d.isList,p=d.isValue,v=d.isGraph,g=d.isSubject,m=e("./context"),y=m.expandIri,b=m.getContextValue,w=m.isKeyword,k=m.process,x=m.processingMode,S=e("./url").isAbsolute,E=e("./util"),C=E.addValue,O=E.asArray,T=E.getValues,A=E.validateTypeValue,P={};n.exports=P;var M,I=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/;function R(e){return D.apply(this,arguments)}function D(){return(D=h(regeneratorRuntime.mark(function e(n){var i,o,h,d,v,m,E,T,M,D,N,F,B,V,z,U,H,G,W,q,X,Y,K,$,Q,Z,J,ee,te,ne,ie,re,oe,ae,se,ue,ce,le,he,de,fe,pe,ve,ge,me,ye,be,_e,we,ke,xe,Se,Ee;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:i=n.activeCtx,o=n.activeProperty,h=n.expandedActiveProperty,d=n.element,v=n.expandedParent,m=n.options,E=void 0===m?{}:m,T=n.insideList,M=n.typeKey,D=n.typeScopedContext,N=n.expansionMap,F=Object.keys(d).sort(),B=[],z=d[M]&&"@json"===y(i,a(d[M])?d[M][0]:d[M],{vocab:!0},E),U=_(F),e.prev=4,U.s();case 6:if((H=U.n()).done){e.next=187;break}if(G=H.value,W=void 0,q=d[G],"@context"!==G){e.next=11;break}return e.abrupt("continue",185);case 11:if(null!==(X=y(i,G,{vocab:!0},E))&&(S(X)||w(X))||void 0!==(X=N({unmappedProperty:G,activeCtx:i,activeProperty:o,parent:d,options:E,insideList:T,value:q,expandedParent:v}))){e.next=14;break}return e.abrupt("continue",185);case 14:if(!w(X)){e.next=19;break}if("@reverse"!==h){e.next=17;break}throw new r("Invalid JSON-LD syntax; a keyword cannot be used as a @reverse property.","jsonld.SyntaxError",{code:"invalid reverse property map",value:q});case 17:if(!(X in v)||"@included"===X||"@type"===X){e.next=19;break}throw new r("Invalid JSON-LD syntax; colliding keywords detected.","jsonld.SyntaxError",{code:"colliding keywords",keyword:X});case 19:if("@id"!==X){e.next=34;break}if(c(q)){e.next=32;break}if(E.isFrame){e.next=23;break}throw new r('Invalid JSON-LD syntax; "@id" value must a string.',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 23:if(!s(q)){e.next=28;break}if(u(q)){e.next=26;break}throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 26:e.next=32;break;case 28:if(a(q)){e.next=30;break}throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 30:if(q.every(function(e){return c(e)})){e.next=32;break}throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 32:return C(v,"@id",O(q).map(function(e){return c(e)?y(i,e,{base:!0},E):e}),{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 34:if("@type"!==X){e.next=37;break}return s(q)&&(q=Object.fromEntries(Object.entries(q).map(function(e){var n=t(e,2),i=n[0],r=n[1];return[y(D,i,{vocab:!0}),O(r).map(function(e){return y(D,e,{base:!0,vocab:!0})})]}))),A(q,E.isFrame),C(v,"@type",O(q).map(function(e){return c(e)?y(D,e,{base:!0,vocab:!0},E):e}),{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 37:if("@included"!==X||!x(i,1.1)){e.next=47;break}return e.t0=O,e.next=41,P.expand({activeCtx:i,activeProperty:o,element:q,options:E,expansionMap:N});case 41:if(e.t1=e.sent,(Y=(0,e.t0)(e.t1)).every(function(e){return g(e)})){e.next=45;break}throw new r("Invalid JSON-LD syntax; values of @included must expand to node objects.","jsonld.SyntaxError",{code:"invalid @included value",value:q});case 45:return C(v,"@included",Y,{propertyIsArray:!0}),e.abrupt("continue",185);case 47:if("@graph"!==X||s(q)||a(q)){e.next=49;break}throw new r('Invalid JSON-LD syntax; "@graph" value must not be an object or an array.',"jsonld.SyntaxError",{code:"invalid @graph value",value:q});case 49:if("@value"!==X){e.next=52;break}return V=q,z&&x(i,1.1)?v["@value"]=q:C(v,"@value",q,{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 52:if("@language"!==X){e.next=62;break}if(null!==q){e.next=55;break}return e.abrupt("continue",185);case 55:if(c(q)||E.isFrame){e.next=57;break}throw new r('Invalid JSON-LD syntax; "@language" value must be a string.',"jsonld.SyntaxError",{code:"invalid language-tagged string",value:q});case 57:q=O(q).map(function(e){return c(e)?e.toLowerCase():e}),K=_(q);try{for(K.s();!($=K.n()).done;)Q=$.value,c(Q)&&!Q.match(I)&&console.warn("@language must be valid BCP47: ".concat(Q))}catch(Ce){K.e(Ce)}finally{K.f()}return C(v,"@language",q,{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 62:if("@direction"!==X){e.next=85;break}if(c(q)||E.isFrame){e.next=65;break}throw new r('Invalid JSON-LD syntax; "@direction" value must be a string.',"jsonld.SyntaxError",{code:"invalid base direction",value:q});case 65:q=O(q),Z=_(q),e.prev=67,Z.s();case 69:if((J=Z.n()).done){e.next=75;break}if(ee=J.value,!c(ee)||"ltr"===ee||"rtl"===ee){e.next=73;break}throw new r('Invalid JSON-LD syntax; "@direction" must be "ltr" or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",value:q});case 73:e.next=69;break;case 75:e.next=80;break;case 77:e.prev=77,e.t2=e.catch(67),Z.e(e.t2);case 80:return e.prev=80,Z.f(),e.finish(80);case 83:return C(v,"@direction",q,{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 85:if("@index"!==X){e.next=90;break}if(c(q)){e.next=88;break}throw new r('Invalid JSON-LD syntax; "@index" value must be a string.',"jsonld.SyntaxError",{code:"invalid @index value",value:q});case 88:return C(v,"@index",q),e.abrupt("continue",185);case 90:if("@reverse"!==X){e.next=118;break}if(s(q)){e.next=93;break}throw new r('Invalid JSON-LD syntax; "@reverse" value must be an object.',"jsonld.SyntaxError",{code:"invalid @reverse value",value:q});case 93:return e.next=95,P.expand({activeCtx:i,activeProperty:"@reverse",element:q,options:E,expansionMap:N});case 95:if(!("@reverse"in(W=e.sent))){e.next=98;break}for(te in W["@reverse"])C(v,te,W["@reverse"][te],{propertyIsArray:!0});case 98:ne=v["@reverse"]||null,e.t3=regeneratorRuntime.keys(W);case 100:if((e.t4=e.t3()).done){e.next=117;break}if("@reverse"!==(ie=e.t4.value)){e.next=104;break}return e.abrupt("continue",100);case 104:null===ne&&(ne=v["@reverse"]={}),C(ne,ie,[],{propertyIsArray:!0}),re=W[ie],oe=0;case 107:if(!(oe1?$.slice().sort():$:[$],Z=_(Q),e.prev=81,Z.s();case 83:if((J=Z.n()).done){e.next=93;break}if(ee=J.value,te=b(E,ee,"@context"),e.t5=l(te),e.t5){e.next=91;break}return e.next=90,k({activeCtx:n,localCtx:te,options:f,propagate:!1});case 90:n=e.sent;case 91:e.next=83;break;case 93:e.next=98;break;case 95:e.prev=95,e.t6=e.catch(81),Z.e(e.t6);case 98:return e.prev=98,Z.f(),e.finish(98);case 101:e.next=75;break;case 103:e.next=108;break;case 105:e.prev=105,e.t7=e.catch(73),X.e(e.t7);case 108:return e.prev=108,X.f(),e.finish(108);case 111:return ne={},e.next=114,R({activeCtx:n,activeProperty:o,expandedActiveProperty:F,element:h,expandedParent:ne,options:f,insideList:v,typeKey:q,typeScopedContext:E,expansionMap:A});case 114:if(V=Object.keys(ne),ie=V.length,!("@value"in ne)){e.next=137;break}if(!("@type"in ne)||!("@language"in ne)&&!("@direction"in ne)){e.next=119;break}throw new r('Invalid JSON-LD syntax; an element containing "@value" may not contain both "@type" and either "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:ne});case 119:if(re=ie-1,"@type"in ne&&(re-=1),"@index"in ne&&(re-=1),"@language"in ne&&(re-=1),"@direction"in ne&&(re-=1),0===re){e.next=122;break}throw new r('Invalid JSON-LD syntax; an element containing "@value" may only have an "@index" property and either "@type" or either or both "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:ne});case 122:if(oe=null===ne["@value"]?[]:O(ne["@value"]),ae=T(ne,"@type"),x(n,1.1)&&ae.includes("@json")&&1===ae.length){e.next=135;break}if(0!==oe.length){e.next=131;break}return e.next=127,A({unmappedValue:ne,activeCtx:n,activeProperty:o,element:h,options:f,insideList:v});case 127:se=e.sent,ne=void 0!==se?se:null,e.next=135;break;case 131:if(oe.every(function(e){return c(e)||u(e)})||!("@language"in ne)){e.next=133;break}throw new r("Invalid JSON-LD syntax; only strings may be language-tagged.","jsonld.SyntaxError",{code:"invalid language-tagged value",element:ne});case 133:if(ae.every(function(e){return S(e)&&!(c(e)&&0===e.indexOf("_:"))||u(e)})){e.next=135;break}throw new r('Invalid JSON-LD syntax; an element containing "@value" and "@type" must have an absolute IRI for the value of "@type".',"jsonld.SyntaxError",{code:"invalid typed value",element:ne});case 135:e.next=152;break;case 137:if(!("@type"in ne)||a(ne["@type"])){e.next=141;break}ne["@type"]=[ne["@type"]],e.next=152;break;case 141:if(!("@set"in ne)&&!("@list"in ne)){e.next=147;break}if(!(ie>1)||2===ie&&"@index"in ne){e.next=144;break}throw new r('Invalid JSON-LD syntax; if an element has the property "@set" or "@list", then it can have at most one other property that is "@index".',"jsonld.SyntaxError",{code:"invalid set or list object",element:ne});case 144:"@set"in ne&&(ne=ne["@set"],V=Object.keys(ne),ie=V.length),e.next=152;break;case 147:if(1!==ie||!("@language"in ne)){e.next=152;break}return e.next=150,A(ne,{unmappedValue:ne,activeCtx:n,activeProperty:o,element:h,options:f,insideList:v});case 150:ue=e.sent,ne=void 0!==ue?ue:null;case 152:if(!s(ne)||f.keepFreeFloatingNodes||v||null!==o&&"@graph"!==F||!(0===ie||"@value"in ne||"@list"in ne||1===ie&&"@id"in ne)){e.next=157;break}return e.next=155,A({unmappedValue:ne,activeCtx:n,activeProperty:o,element:h,options:f,insideList:v});case 155:ce=e.sent,ne=void 0!==ce?ce:null;case 157:return e.abrupt("return",ne);case 158:case"end":return e.stop()}},e,null,[[38,53,56,59],[73,105,108,111],[81,95,98,101]])})),function(e){return M.apply(this,arguments)})},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],22:[function(e,t,n){"use strict";var i=e("./graphTypes").isSubjectReference,r=e("./nodeMap").createMergedNodeMap,o={};t.exports=o,o.flatten=function(e){for(var t=r(e),n=[],o=Object.keys(t).sort(),a=0;a=0;--i){var r=n[i];if(r.graph===t&&r.subject["@id"]===e["@id"])return!0}return!1}function g(e,t,n){var i="@"+n,r=i in e?e[i][0]:t[n];if("embed"===n)if(!0===r)r="@once";else if(!1===r)r="@never";else if("@always"!==r&&"@never"!==r&&"@link"!==r&&"@first"!==r&&"@last"!==r&&"@once"!==r)throw new c("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:e});return r}function m(e){if(!a.isArray(e)||1!==e.length||!a.isObject(e[0]))throw new c("Invalid JSON-LD syntax; a JSON-LD frame must be a single object.","jsonld.SyntaxError",{frame:e});if("@id"in e[0]){var t,n=_(s.asArray(e[0]["@id"]));try{for(n.s();!(t=n.n()).done;){var i=t.value;if(!a.isObject(i)&&!u.isAbsolute(i)||a.isString(i)&&0===i.indexOf("_:"))throw new c("Invalid JSON-LD syntax; invalid @id in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:e})}}catch(h){n.e(h)}finally{n.f()}}if("@type"in e[0]){var r,o=_(s.asArray(e[0]["@type"]));try{for(o.s();!(r=o.n()).done;){var l=r.value;if(!a.isObject(l)&&!u.isAbsolute(l)||a.isString(l)&&0===l.indexOf("_:"))throw new c("Invalid JSON-LD syntax; invalid @type in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:e})}}catch(h){o.e(h)}finally{o.f()}}}function y(e,t,n,o){var u=!0,c=!1;for(var l in n){var h=!1,d=s.getValues(t,l),f=0===s.getValues(n,l).length;if("@id"===l){if(a.isEmptyObject(n["@id"][0]||{})?h=!0:n["@id"].length>=0&&(h=n["@id"].includes(d[0])),!o.requireAll)return h}else if("@type"===l){if(u=!1,f){if(d.length>0)return!1;h=!0}else if(1===n["@type"].length&&a.isEmptyObject(n["@type"][0]))h=d.length>0;else{var p,v=_(n["@type"]);try{var g=function(){var e=p.value;h=!(!a.isObject(e)||!("@default"in e))||h||d.some(function(t){return t===e})};for(v.s();!(p=v.n()).done;)g()}catch(b){v.e(b)}finally{v.f()}}if(!o.requireAll)return h}else{if(i(l))continue;var y=function(){var t=s.getValues(n,l)[0],i=!1;if(t&&(m([t]),i="@default"in t),u=!1,0===d.length&&i)return"continue";if(d.length>0&&f)return{v:!1};if(void 0===t){if(d.length>0)return{v:!1};h=!0}else if(r.isList(t)){var c=t["@list"][0];if(r.isList(d[0])){var p=d[0]["@list"];r.isValue(c)?h=p.some(function(e){return S(c,e)}):(r.isSubject(c)||r.isSubjectReference(c))&&(h=p.some(function(t){return x(e,c,t,o)}))}}else h=r.isValue(t)?d.some(function(e){return S(t,e)}):r.isSubjectReference(t)?d.some(function(n){return x(e,t,n,o)}):!!a.isObject(t)&&d.length>0}();if("continue"===y)continue;if("object"==typeof y)return y.v}if(!h&&o.requireAll)return!1;c=c||h}return u||c}function b(e,t){var n=e.uniqueEmbeds[e.graph],i=n[t],r=i.parent,o=i.property,u={"@id":t};if(a.isArray(r)){for(var c=0;c4&&void 0!==arguments[4]?arguments[4]:null;m(n);var h=e.options,d={embed:g(n=n[0],h,"embed"),explicit:g(n,h,"explicit"),requireAll:g(n,h,"requireAll")};e.link.hasOwnProperty(e.graph)||(e.link[e.graph]={});var w,x=e.link[e.graph],E=function(e,t,n,i){var r,o={},a=_(t);try{for(a.s();!(r=a.n()).done;){var s=r.value,u=e.graphMap[e.graph][s];y(e,u,n,i)&&(o[s]=u)}}catch(c){a.e(c)}finally{a.f()}return o}(e,t,n,d),C=Object.keys(E).sort(),O=_(C);try{var T=function(){var m=w.value,y=E[m];if(null===l?e.uniqueEmbeds=o({},e.graph,{}):e.uniqueEmbeds[e.graph]=e.uniqueEmbeds[e.graph]||{},"@link"===d.embed&&m in x)return k(u,l,x[m]),"continue";var C={"@id":m};if(0===m.indexOf("_:")&&s.addValue(e.bnodeMap,m,C,{propertyIsArray:!0}),x[m]=C,("@first"===d.embed||"@last"===d.embed)&&e.is11)throw new c("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:n});if(e.embedded||!e.uniqueEmbeds[e.graph].hasOwnProperty(m)){if(e.embedded&&("@never"===d.embed||v(y,e.graph,e.subjectStack)))return k(u,l,C),"continue";if(e.embedded&&("@first"==d.embed||"@once"==d.embed)&&e.uniqueEmbeds[e.graph].hasOwnProperty(m))return k(u,l,C),"continue";if("@last"===d.embed&&m in e.uniqueEmbeds[e.graph]&&b(e,m),e.uniqueEmbeds[e.graph][m]={parent:u,property:l},e.subjectStack.push({subject:y,graph:e.graph}),m in e.graphMap){var O=!1,T=null;"@graph"in n?(T=n["@graph"][0],O=!("@merged"===m||"@default"===m),a.isObject(T)||(T={})):(O="@merged"!==e.graph,T={}),O&&f.frame(I(M({},e),{graph:m,embedded:!1}),Object.keys(e.graphMap[m]).sort(),[T],C,"@graph")}"@included"in n&&f.frame(I(M({},e),{embedded:!1}),t,n["@included"],C,"@included");var A,P=_(Object.keys(y).sort());try{for(P.s();!(A=P.n()).done;){var R=A.value;if(i(R)){if(C[R]=s.clone(y[R]),"@type"===R){var D,N=_(y["@type"]);try{for(N.s();!(D=N.n()).done;){var L=D.value;0===L.indexOf("_:")&&s.addValue(e.bnodeMap,L,C,{propertyIsArray:!0})}}catch(re){N.e(re)}finally{N.f()}}}else if(!d.explicit||R in n){var j,F=_(y[R]);try{for(F.s();!(j=F.n()).done;){var B=j.value,V=R in n?n[R]:p(d);if(r.isList(B)){var z=n[R]&&n[R][0]&&n[R][0]["@list"]?n[R][0]["@list"]:p(d),U={"@list":[]};k(C,R,U);var H,G=_(B["@list"]);try{for(G.s();!(H=G.n()).done;){var W=H.value;r.isSubjectReference(W)?f.frame(I(M({},e),{embedded:!0}),[W["@id"]],z,U,"@list"):k(U,"@list",s.clone(W))}}catch(re){G.e(re)}finally{G.f()}}else r.isSubjectReference(B)?f.frame(I(M({},e),{embedded:!0}),[B["@id"]],V,C,R):S(V[0],B)&&k(C,R,s.clone(B))}}catch(re){F.e(re)}finally{F.f()}}}}catch(re){P.e(re)}finally{P.f()}var q,X=_(Object.keys(n).sort());try{for(X.s();!(q=X.n()).done;){var Y=q.value;if("@type"===Y){if(!a.isObject(n[Y][0])||!("@default"in n[Y][0]))continue}else if(i(Y))continue;var K=n[Y][0]||{};if(!g(K,h,"omitDefault")&&!(Y in C)){var $="@null";"@default"in K&&($=s.clone(K["@default"])),a.isArray($)||($=[$]),C[Y]=[{"@preserve":$}]}}}catch(re){X.e(re)}finally{X.f()}var Q,Z=_(Object.keys(n["@reverse"]||{}).sort());try{for(Z.s();!(Q=Z.n()).done;)for(var J=Q.value,ee=n["@reverse"][J],te=0,ne=Object.keys(e.subjects);te0&&(r["@language"]=l,l.match(k)||console.warn("@language must be valid BCP47: ".concat(l))),r["@direction"]=h}else a!==w&&(r["@type"]=a)}return r}n.exports=x,x.fromRDF=(r=h(regeneratorRuntime.mark(function e(t,n){var i,r,o,c,h,g,m,y,b,w,k,x,E,C,O,T,A,P,M,I,R,D,N,L,j,F,B,V,z,U,H,G,W,q,X,Y,K,$,Q,Z,J,ee,te,ne,ie,re,oe,ae,se;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:i=n.useRdfType,r=void 0!==i&&i,o=n.useNativeTypes,c=void 0!==o&&o,h=n.rdfDirection,g=void 0===h?null:h,y={"@default":m={}},b={},w=_(t),e.prev=3,w.s();case 5:if((k=w.n()).done){e.next=19;break}if(x=k.value,(E="DefaultGraph"===x.graph.termType?"@default":x.graph.value)in y||(y[E]={}),"@default"!==E&&!(E in m)&&(m[E]={"@id":E}),C=y[E],O=x.subject.value,T=x.predicate.value,A=x.object,O in C||(C[O]={"@id":O}),P=C[O],(M=A.termType.endsWith("Node"))&&!(A.value in C)&&(C[A.value]={"@id":A.value}),T!==v||r||!M){e.next=15;break}return u.addValue(P,"@type",A.value,{propertyIsArray:!0}),e.abrupt("continue",17);case 15:I=S(A,c,g),u.addValue(P,T,I,{propertyIsArray:!0}),M&&(A.value===p?("usages"in(R=C[A.value])||(R.usages=[]),R.usages.push({node:P,property:T,value:I})):b[A.value]=!(A.value in b)&&{node:P,property:T,value:I});case 17:e.next=5;break;case 19:e.next=24;break;case 21:e.prev=21,e.t0=e.catch(3),w.e(e.t0);case 24:return e.prev=24,w.f(),e.finish(24);case 27:e.t1=regeneratorRuntime.keys(y);case 28:if((e.t2=e.t1()).done){e.next=37;break}if(D=e.t2.value,N=y[D],p in N){e.next=33;break}return e.abrupt("continue",28);case 33:if((L=N[p]).usages){j=_(L.usages);try{for(j.s();!(F=j.n()).done;){for(B=F.value,V=B.node,z=B.property,U=B.value,H=[],G=[],W=Object.keys(V).length;z===f&&s.isObject(b[V["@id"]])&&s.isArray(V[d])&&1===V[d].length&&s.isArray(V[f])&&1===V[f].length&&(3===W||4===W&&s.isArray(V["@type"])&&1===V["@type"].length&&V["@type"][0]===l)&&(H.push(V[d][0]),G.push(V["@id"]),B=b[V["@id"]],V=B.node,z=B.property,U=B.value,W=Object.keys(V).length,a.isBlankNode(V)););for(delete U["@id"],U["@list"]=H.reverse(),q=0,X=G;q1||!("@id"in e))},r.isSubjectReference=function(e){return i.isObject(e)&&1===Object.keys(e).length&&"@id"in e},r.isValue=function(e){return i.isObject(e)&&"@value"in e},r.isList=function(e){return i.isObject(e)&&"@list"in e},r.isGraph=function(e){return i.isObject(e)&&"@graph"in e&&1===Object.keys(e).filter(function(e){return"@id"!==e&&"@index"!==e}).length},r.isSimpleGraph=function(e){return r.isGraph(e)&&!("@id"in e)},r.isBlankNode=function(e){return!!i.isObject(e)&&("@id"in e?0===e["@id"].indexOf("_:"):0===Object.keys(e).length||!("@value"in e||"@set"in e||"@list"in e))}},{"./types":30}],26:[function(e,t,n){var i=e("rdf-canonize"),r=e("./platform"),o=e("./util"),a=e("./ContextResolver"),s=o.IdentifierIssuer,u=e("./JsonLdError"),c=e("lru-cache"),l=e("./NQuads"),d=e("./expand").expand,f=e("./flatten").flatten,p=e("./fromRdf").fromRDF,v=e("./toRdf").toRDF,g=e("./frame"),m=g.frameMergedOrDefault,y=g.cleanupNull,b=e("./types"),w=b.isArray,k=b.isObject,x=b.isString,S=e("./graphTypes").isSubjectReference,E=e("./context"),A=E.expandIri,P=E.getInitialContext,I=E.process,R=E.processingMode,D=e("./compact"),N=D.compact,L=D.compactIri,j=e("./nodeMap"),F=j.createNodeMap,B=j.createMergedNodeMap,V=j.mergeNodeMaps,z=function(t){var n,g={},b=new c({max:100});function E(e,n){var i=n,r=i.documentLoader,o=void 0===r?t.documentLoader:r,a=function(e,t){var n={};for(var i in e)O.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(null!=e&&C){var r,o=_(C(e));try{for(o.s();!(r=o.n()).done;)i=r.value,t.indexOf(i)<0&&T.call(e,i)&&(n[i]=e[i])}catch(a){o.e(a)}finally{o.f()}}return n}(i,["documentLoader"]);return Object.assign({},{documentLoader:o},a,e)}return t.compact=(n=h(regeneratorRuntime.mark(function e(n,i,r){var c,l,h,d,f,p,v,g,m,y,_=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(_.length<2)){e.next=2;break}throw new TypeError("Could not compact, too few arguments.");case 2:if(null!==i){e.next=4;break}throw new u("The compaction context must not be null.","jsonld.CompactError",{code:"invalid local context"});case 4:if(null!==n){e.next=6;break}return e.abrupt("return",null);case 6:if((r=E(r,{base:x(n)?n:"",compactArrays:!0,compactToRelative:!0,graph:!1,skipExpansion:!1,link:!1,issuer:new s("_:b"),contextResolver:new a({sharedCache:b})})).link&&(r.skipExpansion=!0),r.compactToRelative||delete r.base,!r.skipExpansion){e.next=12;break}e.t0=n,e.next=15;break;case 12:return e.next=14,t.expand(n,r);case 14:e.t0=e.sent;case 15:return c=e.t0,e.next=18,t.processContext(P(r),i,r);case 18:return l=e.sent,e.next=21,N({activeCtx:l,element:c,options:r,compactionMap:r.compactionMap});case 21:h=e.sent,r.compactArrays&&!r.graph&&w(h)?1===h.length?h=h[0]:0===h.length&&(h={}):r.graph&&k(h)&&(h=[h]),k(i)&&"@context"in i&&(i=i["@context"]),i=o.clone(i),w(i)||(i=[i]),d=i,i=[];for(f=0;f0)&&i.push(d[f]);if(p=i.length>0,1===i.length&&(i=i[0]),w(h))v=L({activeCtx:l,iri:"@graph",relativeTo:{vocab:!0}}),g=h,h={},p&&(h["@context"]=i),h[v]=g;else if(k(h)&&p)for(y in m=h,h={"@context":i},m)h[y]=m[y];return e.abrupt("return",h);case 29:case"end":return e.stop()}},e)})),function(e,t,i){return n.apply(this,arguments)}),t.expand=function(){var e=h(regeneratorRuntime.mark(function e(n,i){var r,s,u,c,l,h,f,p,v,g,m=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(m.length<1)){e.next=2;break}throw new TypeError("Could not expand, too few arguments.");case 2:if(!1===(i=E(i,{keepFreeFloatingNodes:!1,contextResolver:new a({sharedCache:b})})).expansionMap&&(i.expansionMap=void 0),r={},s=[],"expandContext"in i&&(u=o.clone(i.expandContext),r.expandContext=k(u)&&"@context"in u?u:{"@context":u},s.push(r.expandContext)),!x(n)){e.next=12;break}return e.next=8,t.get(n,i);case 8:l=e.sent,c=l.documentUrl,r.input=l.document,l.contextUrl&&(r.remoteContext={"@context":l.contextUrl},s.push(r.remoteContext)),e.next=13;break;case 12:r.input=o.clone(n);case 13:"base"in i||(i.base=c||""),h=P(i),f=0,p=s;case 16:if(!(f=1e21)},i.isEmptyObject=function(e){return i.isObject(e)&&0===Object.keys(e).length},i.isNumber=function(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)},i.isNumeric=function(e){return!isNaN(parseFloat(e))&&isFinite(e)},i.isObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)},i.isString=function(e){return"string"==typeof e||"[object String]"===Object.prototype.toString.call(e)},i.isUndefined=function(e){return void 0===e}},{}],31:[function(e,t,n){"use strict";var i=e("./types"),r={};t.exports=r,r.parsers={simple:{keys:["href","scheme","authority","path","query","fragment"],regex:/^(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/},full:{keys:["href","protocol","scheme","authority","auth","user","password","hostname","port","path","directory","file","query","fragment"],regex:/^(([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?(?:(((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/}},r.parse=function(e,t){for(var n={},i=r.parsers[t||"full"],o=i.regex.exec(e),a=i.keys.length;a--;)n[i.keys[a]]=void 0===o[a]?null:o[a];return("https"===n.scheme&&"443"===n.port||"http"===n.scheme&&"80"===n.port)&&(n.href=n.href.replace(":"+n.port,""),n.authority=n.authority.replace(":"+n.port,""),n.port=null),n.normalizedPath=r.removeDotSegments(n.path),n},r.prependBase=function(e,t){if(null===e||r.isAbsolute(t))return t;(!e||i.isString(e))&&(e=r.parse(e||""));var n=r.parse(t),o={protocol:e.protocol||""};if(null!==n.authority)o.authority=n.authority,o.path=n.path,o.query=n.query;else if(o.authority=e.authority,""===n.path)o.path=e.path,o.query=null!==n.query?n.query:e.query;else{if(0===n.path.indexOf("/"))o.path=n.path;else{var a=e.path;((a=a.substr(0,a.lastIndexOf("/")+1)).length>0||e.authority)&&"/"!==a.substr(-1)&&(a+="/"),a+=n.path,o.path=a}o.query=n.query}""!==n.path&&(o.path=r.removeDotSegments(o.path));var s=o.protocol;return null!==o.authority&&(s+="//"+o.authority),s+=o.path,null!==o.query&&(s+="?"+o.query),null!==n.fragment&&(s+="#"+n.fragment),""===s&&(s="./"),s},r.removeBase=function(e,t){if(null===e)return t;(!e||i.isString(e))&&(e=r.parse(e||""));var n="";if(""!==e.href?n+=(e.protocol||"")+"//"+(e.authority||""):t.indexOf("//")&&(n+="//"),0!==t.indexOf(n))return t;for(var o=r.parse(t.substr(n.length)),a=e.normalizedPath.split("/"),s=o.normalizedPath.split("/"),u=o.fragment||o.query?0:1;a.length>0&&s.length>u&&a[0]===s[0];)a.shift(),s.shift();var c="";if(a.length>0){a.pop();for(var l=0;l0;){var i=t.shift(),r=0===t.length;"."!==i?".."!==i?n.push(i):(n.pop(),r&&n.push("")):r&&n.push("")}return"/"===e[0]&&n.length>0&&""!==n[0]&&n.unshift(""),1===n.length&&""===n[0]?"/":n.join("/")};var o=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^\s]*$/;r.isAbsolute=function(e){return i.isString(e)&&o.test(e)},r.isRelative=function(e){return i.isString(e)}},{"./types":30}],32:[function(e,n,i){"use strict";var r=e("./graphTypes"),o=e("./types"),a=e("rdf-canonize").IdentifierIssuer,s=e("./JsonLdError"),u=/(?:<[^>]*?>|"[^"]*?"|[^,])+/g,c=/\s*<([^>]*?)>\s*(?:;\s*(.*))?/,l=/(.*?)=(?:(?:"([^"]*?)")|([^"]*?))\s*(?:(?:;\s*)|$)/g,h="application/ld+json, application/json",d={};function f(e,t){if(o.isArray(t))for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};if(Object.keys(e).some(function(e){return"accept"===e.toLowerCase()}))throw new RangeError('Accept header may not be specified; only "'+h+'" is supported.');return Object.assign({Accept:h},e)},d.parseLinkHeader=function(e){for(var t={},n=e.match(u),i=0;i0}return!1},d.hasValue=function(e,t,n){if(d.hasProperty(e,t)){var i=e[t],a=r.isList(i);if(o.isArray(i)||a){a&&(i=i["@list"]);for(var s=0;st.maxAge:e[u]&&n>e[u]},y=function(e){if(e[o]>e[r])for(var t=e[h].tail;e[o]>e[r]&&null!==t;){var n=t.prev;_(e,t),t=n}},_=function(e,t){if(t){var n=t.value;e[c]&&e[c](n.key,n.value),e[o]-=n.length,e[d].delete(n.key),e[h].removeNode(t)}},w=function e(t,n,i,r,o){m(this,e),this.key=t,this.value=n,this.length=i,this.now=r,this.maxAge=o||0},k=function(e,t,n,i){var r=n.value;g(e,r)&&(_(e,n),e[s]||(r=void 0)),r&&t.call(i,r.value,r.key,e)};t.exports=function(){function e(t){if(m(this,e),"number"==typeof t&&(t={max:t}),t||(t={}),t.max&&("number"!=typeof t.max||t.max<0))throw new TypeError("max must be a non-negative number");this[r]=t.max||1/0;var n=t.length||p;if(this[a]="function"!=typeof n?p:n,this[s]=t.stale||!1,t.maxAge&&"number"!=typeof t.maxAge)throw new TypeError("maxAge must be a number");this[u]=t.maxAge||0,this[c]=t.dispose,this[l]=t.noDisposeOnSet||!1,this[f]=t.updateAgeOnGet||!1,this.reset()}return b(e,[{key:"max",get:function(){return this[r]},set:function(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[r]=e||1/0,y(this)}},{key:"allowStale",get:function(){return this[s]},set:function(e){this[s]=!!e}},{key:"maxAge",get:function(){return this[u]},set:function(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[u]=e,y(this)}},{key:"lengthCalculator",get:function(){return this[a]},set:function(e){var t=this;"function"!=typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[o]=0,this[h].forEach(function(e){e.length=t[a](e.value,e.key),t[o]+=e.length})),y(this)}},{key:"length",get:function(){return this[o]}},{key:"itemCount",get:function(){return this[h].length}},{key:"rforEach",value:function(e,t){t=t||this;for(var n=this[h].tail;null!==n;){var i=n.prev;k(this,e,n,t),n=i}}},{key:"forEach",value:function(e,t){t=t||this;for(var n=this[h].head;null!==n;){var i=n.next;k(this,e,n,t),n=i}}},{key:"keys",value:function(){return this[h].toArray().map(function(e){return e.key})}},{key:"values",value:function(){return this[h].toArray().map(function(e){return e.value})}},{key:"reset",value:function(){var e=this;this[c]&&this[h]&&this[h].length&&this[h].forEach(function(t){return e[c](t.key,t.value)}),this[d]=new Map,this[h]=new i,this[o]=0}},{key:"dump",value:function(){var e=this;return this[h].map(function(t){return!g(e,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}}).toArray().filter(function(e){return e})}},{key:"dumpLru",value:function(){return this[h]}},{key:"set",value:function(e,t,n){if((n=n||this[u])&&"number"!=typeof n)throw new TypeError("maxAge must be a number");var i=n?Date.now():0,s=this[a](t,e);if(this[d].has(e)){if(s>this[r])return _(this,this[d].get(e)),!1;var f=this[d].get(e).value;return this[c]&&(this[l]||this[c](e,f.value)),f.now=i,f.maxAge=n,f.value=t,this[o]+=s-f.length,f.length=s,this.get(e),y(this),!0}var p=new w(e,t,s,i,n);return p.length>this[r]?(this[c]&&this[c](e,t),!1):(this[o]+=p.length,this[h].unshift(p),this[d].set(e,this[h].head),y(this),!0)}},{key:"has",value:function(e){if(!this[d].has(e))return!1;var t=this[d].get(e).value;return!g(this,t)}},{key:"get",value:function(e){return v(this,e,!0)}},{key:"peek",value:function(e){return v(this,e,!1)}},{key:"pop",value:function(){var e=this[h].tail;return e?(_(this,e),e.value):null}},{key:"del",value:function(e){_(this,this[d].get(e))}},{key:"load",value:function(e){this.reset();for(var t=Date.now(),n=e.length-1;n>=0;n--){var i=e[n],r=i.e||0;if(0===r)this.set(i.k,i.v);else{var o=r-t;o>0&&this.set(i.k,i.v,o)}}}},{key:"prune",value:function(){var e=this;this[d].forEach(function(t,n){return v(e,n,!1)})}}]),e}()},{yallist:92}],34:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#",o="http://www.w3.org/2000/10/swap/";n.default={xsd:{decimal:"".concat(r,"decimal"),boolean:"".concat(r,"boolean"),double:"".concat(r,"double"),integer:"".concat(r,"integer"),string:"".concat(r,"string")},rdf:{type:"".concat(i,"type"),nil:"".concat(i,"nil"),first:"".concat(i,"first"),rest:"".concat(i,"rest"),langString:"".concat(i,"langString")},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:"".concat(o,"reify#forSome"),forAll:"".concat(o,"reify#forAll")},log:{implies:"".concat(o,"log#implies")}}},{}],35:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.termFromId=function e(t,n){if(n=n||y,!t)return n.defaultGraph();switch(t[0]){case"?":return n.variable(t.substr(1));case"_":return n.blankNode(t.substr(2));case'"':if(n===y)return new k(t);if('"'===t[t.length-1])return n.literal(t.substr(1,t.length-2));var i=t.lastIndexOf('"',t.length-1);return n.literal(t.substr(1,i-1),"@"===t[i+1]?t.substr(i+2):n.namedNode(t.substr(i+3)));case"<":var r=g.exec(t);return n.quad(e(T(r[1]),n),e(T(r[2]),n),e(T(r[3]),n),r[4]&&e(T(r[4]),n));default:return n.namedNode(t)}},n.termToId=function e(t){if("string"==typeof t)return t;if(t instanceof _&&"Quad"!==t.termType)return t.id;if(!t)return r.id;switch(t.termType){case"NamedNode":return t.value;case"BlankNode":return"_:".concat(t.value);case"Variable":return"?".concat(t.value);case"DefaultGraph":return"";case"Literal":return'"'.concat(t.value,'"').concat(t.language?"@".concat(t.language):t.datatype&&t.datatype.value!==f.string?"^^".concat(t.datatype.value):"");case"Quad":return"<<".concat(O(e(t.subject))," ").concat(O(e(t.predicate))," ").concat(O(e(t.object))).concat((0,l.isDefaultGraph)(t.graph)?"":" ".concat(e(t.graph)),">>");default:throw new Error("Unexpected termType: ".concat(t.termType))}},n.escapeQuotes=O,n.unescapeQuotes=T,n.Triple=n.Quad=n.DefaultGraph=n.Variable=n.BlankNode=n.Literal=n.NamedNode=n.Term=n.default=void 0;var i,r,o=(i=e("./IRIs"))&&i.__esModule?i:{default:i},l=e("./N3Util"),h=o.default,d=h.rdf,f=h.xsd,p=0,v=/^"(.*".*)(?="[^"]*$)/,g=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,y={namedNode:function(e){return new w(e)},blankNode:function(e){return new x(e||"n3-"+p++)},variable:function(e){return new S(e)},literal:function(e,t){if("string"==typeof t)return new k('"'.concat(e,'"@').concat(t.toLowerCase()));var n=t?t.value:"";return""===n&&("boolean"==typeof e?n=f.boolean:"number"==typeof e&&(Number.isFinite(e)?n=Number.isInteger(e)?f.integer:f.double:(n=f.double,Number.isNaN(e)||(e=e>0?"INF":"-INF")))),new k(""===n||n===f.string?'"'.concat(e,'"'):'"'.concat(e,'"^^').concat(n))},defaultGraph:function(){return r},quad:A,triple:A};n.default=y;var _=function(){function e(t){m(this,e),this.id=t}return b(e,[{key:"value",get:function(){return this.id}},{key:"equals",value:function(t){return t instanceof e?this.id===t.id:!!t&&this.termType===t.termType&&this.value===t.value}},{key:"toJSON",value:function(){return{termType:this.termType,value:this.value}}}]),e}();n.Term=_;var w=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"termType",get:function(){return"NamedNode"}}]),n}(_);n.NamedNode=w;var k=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"termType",get:function(){return"Literal"}},{key:"value",get:function(){return this.id.substring(1,this.id.lastIndexOf('"'))}},{key:"language",get:function(){var e=this.id,t=e.lastIndexOf('"')+1;return t\\"\{\}\|\^\`]/,l={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},h=/$0^/;n.default=function(){function e(t){if(m(this,e),this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,this._lineMode=!!(t=t||{}).lineMode)for(var n in this._n3Mode=!1,this)!(n in l)&&this[n]instanceof RegExp&&(this[n]=h);else this._n3Mode=!1!==t.n3;this._comments=!!t.comments,this._literalClosingPos=0}return b(e,[{key:"_tokenizeToEnd",value:function(e,t){for(var n,i=this._input,r=this._comments;;){for(var o=void 0,s=void 0;o=this._newline.exec(i);)r&&(s=this._comment.exec(o[0]))&&e(null,{line:this._line,type:"comment",value:s[1],prefix:""}),i=i.substr(o[0].length,i.length),this._line++;if(!o&&(o=this._whitespace.exec(i))&&(i=i.substr(o[0].length,i.length)),this._endOfFile.test(i))return t&&(r&&(s=this._comment.exec(i))&&e(null,{line:this._line,type:"comment",value:s[1],prefix:""}),e(i=null,{line:this._line,type:"eof",value:"",prefix:""})),this._input=i;var u=this._line,l=i[0],h="",d="",f="",p=null,v=0,g=!1;switch(l){case"^":if(i.length<3)break;if("^"!==i[1]){this._n3Mode&&(v=1,h="^");break}if(this._previousMarker="^^","<"!==(i=i.substr(2))[0]){g=!0;break}case"<":if(p=this._unescapedIri.exec(i))h="IRI",d=p[1];else if(p=this._iri.exec(i)){if(null===(d=this._unescape(p[1]))||c.test(d))return b(this);h="IRI"}else i.length>1&&"<"===i[1]?(h="<<",v=2):this._n3Mode&&i.length>1&&"="===i[1]&&(h="inverse",v=2,d=">");break;case">":i.length>1&&">"===i[1]&&(h=">>",v=2);break;case"_":((p=this._blank.exec(i))||t&&(p=this._blank.exec("".concat(i," "))))&&(h="blank",f="_",d=p[1]);break;case'"':if(p=this._simpleQuotedString.exec(i))d=p[1];else if(d=(n=this._parseLiteral(i)).value,v=n.matchLength,null===d)return b(this);(null!==p||0!==v)&&(h="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){var m;if(p=this._simpleApostropheString.exec(i))d=p[1];else if(d=(m=this._parseLiteral(i)).value,v=m.matchLength,null===d)return b(this);(null!==p||0!==v)&&(h="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(p=this._variable.exec(i))&&(h="var",d=p[0]);break;case"@":"literal"===this._previousMarker&&(p=this._langcode.exec(i))?(h="langcode",d=p[1]):(p=this._keyword.exec(i))&&(h=p[0]);break;case".":if(1===i.length?t:i[1]<"0"||i[1]>"9"){h=".",v=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(p=this._number.exec(i)||t&&(p=this._number.exec("".concat(i," "))))&&(h="literal",d=p[0],f="string"==typeof p[1]?a.double:"string"==typeof p[2]?a.decimal:a.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(p=this._sparqlKeyword.exec(i))?h=p[0].toUpperCase():g=!0;break;case"f":case"t":(p=this._boolean.exec(i))?(h="literal",d=p[0],f=a.boolean):g=!0;break;case"a":(p=this._shortPredicates.exec(i))?(h="abbreviation",d="a"):g=!0;break;case"=":this._n3Mode&&i.length>1&&(h="abbreviation",">"!==i[1]?(v=1,d="="):(v=2,d=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"{":case"}":this._lineMode||(v=1,h=l);break;default:g=!0}if(g&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(p=this._prefix.exec(i))?((p=this._prefixed.exec(i))||t&&(p=this._prefixed.exec("".concat(i," "))))&&(h="prefixed",f=p[1]||"",d=this._unescape(p[2])):(h="prefix",d=p[1]||"")),"^^"===this._previousMarker)switch(h){case"prefixed":h="type";break;case"IRI":h="typeIRI";break;default:h=""}if(!h)return t||!/^'''|^"""/.test(i)&&/\n|\r/.test(i)?b(this):this._input=i;var y={line:u,type:h,value:d,prefix:f};e(null,y),this.previousToken=y,this._previousMarker=h,i=i.substr(v||p[0].length,i.length)}function b(t){e(t._syntaxError(/^\S*/.exec(i)[0]))}}},{key:"_unescape",value:function(e){var t=!1,n=e.replace(s,function(e,n,i,r){if("string"==typeof n)return String.fromCharCode(Number.parseInt(n,16));if("string"==typeof i){var o=Number.parseInt(i,16);return o<=65535?String.fromCharCode(Number.parseInt(i,16)):String.fromCharCode(55296+((o-=65536)>>10),56320+(1023&o))}return r in u?u[r]:(t=!0,"")});return t?null:n}},{key:"_parseLiteral",value:function(e){if(e.length>=3){for(var t=e.match(/^(?:"""|"|'''|'|)/)[0],n=t.length,i=Math.max(this._literalClosingPos,n);(i=e.indexOf(t,i))>0;){for(var r=0;"\\"===e[i-r-1];)r++;if(r%2==0){var o=e.substring(n,i),a=o.split(/\r\n|\r|\n/).length-1,s=i+n;if(1===n&&0!==a||3===n&&this._lineMode)break;return this._line+=a,{value:this._unescape(o),matchLength:s}}i++}this._literalClosingPos=e.length-n+1}return{value:"",matchLength:0}}},{key:"_syntaxError",value:function(e){this._input=null;var t=new Error('Unexpected "'.concat(e,'" on line ').concat(this._line,"."));return t.context={token:void 0,line:this._line,previousToken:this.previousToken},t}},{key:"_readStartingBom",value:function(e){return e.startsWith("\ufeff")?e.substr(1):e}},{key:"tokenize",value:function(e,n){var i=this;if(this._line=1,"string"==typeof e){if(this._input=this._readStartingBom(e),"function"!=typeof n){var o,a=[];if(this._tokenizeToEnd(function(e,t){return e?o=e:a.push(t)},!0),o)throw o;return a}(0,r.default)(function(){return i._tokenizeToEnd(n,!0)})}else this._pendingBuffer=null,"function"==typeof e.setEncoding&&e.setEncoding("utf8"),e.on("data",function(e){null!==i._input&&0!==e.length&&(i._pendingBuffer&&(e=t.concat([i._pendingBuffer,e]),i._pendingBuffer=null),128&e[e.length-1]?i._pendingBuffer=e:(void 0===i._input?i._input=i._readStartingBom("string"==typeof e?e:e.toString()):i._input+=e,i._tokenizeToEnd(n,!1)))}),e.on("end",function(){"string"==typeof i._input&&i._tokenizeToEnd(n,!0)}),e.on("error",n)}}]),e}()}).call(this)}).call(this,e("buffer").Buffer)},{"./IRIs":34,buffer:6,"queue-microtask":45}],37:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=a(e("./N3Lexer")),r=a(e("./N3DataFactory")),o=a(e("./IRIs"));function a(e){return e&&e.__esModule?e:{default:e}}var s=0,u=function(){function e(t){m(this,e),this._contextStack=[],this._graph=null,this._setBase((t=t||{}).baseIRI),t.factory&&l(this,t.factory);var n="string"==typeof t.format?t.format.match(/\w*$/)[0].toLowerCase():"",r=/turtle/.test(n),o=/trig/.test(n),a=/triple/.test(n),s=/quad/.test(n),u=this._n3Mode=/n3/.test(n),c=a||s;(this._supportsNamedGraphs=!(r||u))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(r||o||a||u),this._supportsRDFStar=""===n||/star|\*$/.test(n),c&&(this._resolveRelativeIRI=function(e){return null}),this._blankNodePrefix="string"!=typeof t.blankNodePrefix?"":t.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=t.lexer||new i.default({lineMode:c,n3:u}),this._explicitQuantifiers=!!t.explicitQuantifiers}return b(e,[{key:"_setBase",value:function(e){if(e){var t=e.indexOf("#");t>=0&&(e=e.substr(0,t)),this._base=e,this._basePath=e.indexOf("/")<0?e:e.replace(/[^\/?]*(?:\?.*)?$/,""),e=e.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=e[0],this._baseScheme=e[1]}else this._base="",this._basePath=""}},{key:"_saveContext",value:function(e,t,n,i,r){var o=this._n3Mode;this._contextStack.push({subject:n,predicate:i,object:r,graph:t,type:e,inverse:!!o&&this._inversePredicate,blankPrefix:o?this._prefixes._:"",quantified:o?this._quantified:null}),o&&(this._inversePredicate=!1,this._prefixes._=this._graph?"".concat(this._graph.id.substr(2),"."):".",this._quantified=Object.create(this._quantified))}},{key:"_restoreContext",value:function(){var e=this._contextStack.pop(),t=this._n3Mode;this._subject=e.subject,this._predicate=e.predicate,this._object=e.object,this._graph=e.graph,t&&(this._inversePredicate=e.inverse,this._prefixes._=e.blankPrefix,this._quantified=e.quantified)}},{key:"_readInTopContext",value:function(e){switch(e.type){case"eof":return null!==this._graph?this._error("Unclosed graph",e):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(e)}}},{key:"_readEntity",value:function(e,t){var n;switch(e.type){case"IRI":case"typeIRI":var i=this._resolveIRI(e.value);if(null===i)return this._error("Invalid IRI",e);n=this._namedNode(i);break;case"type":case"prefixed":var r=this._prefixes[e.prefix];if(void 0===r)return this._error('Undefined prefix "'.concat(e.prefix,':"'),e);n=this._namedNode(r+e.value);break;case"blank":n=this._blankNode(this._prefixes[e.prefix]+e.value);break;case"var":n=this._variable(e.value.substr(1));break;default:return this._error("Expected entity but got ".concat(e.type),e)}return!t&&this._n3Mode&&n.id in this._quantified&&(n=this._quantified[n.id]),n}},{key:"_readSubject",value:function(e){switch(this._predicate=null,e.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",e);case"}":return this._readPunctuation(e);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',e);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',e);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",e);if(0===e.prefix.length)return this._literalValue=e.value,this._completeSubjectLiteral;this._subject=this._literal(e.value,this._namedNode(e.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._subject=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}},{key:"_readPredicate",value:function(e){var t=e.type;switch(t){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[e.value];break;case".":case"]":case"}":return null===this._predicate?this._error("Unexpected ".concat(t),e):(this._subject=null,"]"===t?this._readBlankNodeTail(e):this._readPunctuation(e));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",e);case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",e);default:if(void 0===(this._predicate=this._readEntity(e)))return}return this._readObject}},{key:"_readObject",value:function(e){switch(e.type){case"literal":if(0===e.prefix.length)return this._literalValue=e.value,this._readDataTypeOrLang;this._object=this._literal(e.value,this._namedNode(e.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._object=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}},{key:"_readPredicateOrNamedGraph",value:function(e){return"{"===e.type?this._readGraph(e):this._readPredicate(e)}},{key:"_readGraph",value:function(e){return"{"!==e.type?this._error("Expected graph but got ".concat(e.type),e):(this._graph=this._subject,this._subject=null,this._readSubject)}},{key:"_readBlankNodeHead",value:function(e){return"]"===e.type?(this._subject=null,this._readBlankNodeTail(e)):(this._predicate=null,this._readPredicate(e))}},{key:"_readBlankNodeTail",value:function(e){if("]"!==e.type)return this._readBlankNodePunctuation(e);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);var t=null===this._predicate;return this._restoreContext(),null===this._object?t?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank:this._getContextEndReader()}},{key:"_readPredicateAfterBlank",value:function(e){switch(e.type){case".":case"}":return this._subject=null,this._readPunctuation(e);default:return this._readPredicate(e)}}},{key:"_readListItem",value:function(e){var t=null,n=null,i=this._readListItem,r=this._subject,o=this._contextStack,a=o[o.length-1];switch(e.type){case"[":this._saveContext("blank",this._graph,n=this._blankNode(),this.RDF_FIRST,this._subject=t=this._blankNode()),i=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,n=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext(),0!==o.length&&"list"===o[o.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(i=this._readPredicate,this._subject===this.RDF_NIL)return i}else if(i=this._getContextEndReader(),this._object===this.RDF_NIL)return i;n=this.RDF_NIL;break;case"literal":0===e.prefix.length?(this._literalValue=e.value,i=this._readListItemDataTypeOrLang):(t=this._literal(e.value,this._namedNode(e.prefix)),i=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);default:if(void 0===(t=this._readEntity(e)))return}if(null===n&&(this._subject=n=this._blankNode()),null===r?null===a.predicate?a.subject=n:a.object=n:this._emit(r,this.RDF_REST,n,this._graph),null!==t){if(this._n3Mode&&("IRI"===e.type||"prefixed"===e.type))return this._saveContext("item",this._graph,n,this.RDF_FIRST,t),this._subject=t,this._predicate=null,this._getPathReader(this._readListItem);this._emit(n,this.RDF_FIRST,t,this._graph)}return i}},{key:"_readDataTypeOrLang",value:function(e){return this._completeObjectLiteral(e,!1)}},{key:"_readListItemDataTypeOrLang",value:function(e){return this._completeObjectLiteral(e,!0)}},{key:"_completeLiteral",value:function(e){var t=this._literal(this._literalValue);switch(e.type){case"type":case"typeIRI":var n=this._readEntity(e);if(void 0===n)return;t=this._literal(this._literalValue,n),e=null;break;case"langcode":t=this._literal(this._literalValue,e.value),e=null}return{token:e,literal:t}}},{key:"_completeSubjectLiteral",value:function(e){return this._subject=this._completeLiteral(e).literal,this._readPredicateOrNamedGraph}},{key:"_completeObjectLiteral",value:function(e,t){var n=this._completeLiteral(e);if(n)return this._object=n.literal,t&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===n.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(n.token))}},{key:"_readFormulaTail",value:function(e){return"}"!==e.type?this._readPunctuation(e):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext(),null===this._object?this._readPredicate:this._getContextEndReader())}},{key:"_readPunctuation",value:function(e){var t,n=this._graph,i=this._subject,r=this._inversePredicate;switch(e.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",e);if(this._n3Mode)return this._readFormulaTail(e);this._graph=null;case".":this._subject=null,t=this._contextStack.length?this._readSubject:this._readInTopContext,r&&(this._inversePredicate=!1);break;case";":t=this._readPredicate;break;case",":t=this._readObject;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(n=this._readEntity(e))){t=this._readQuadPunctuation;break}return this._error('Expected punctuation to follow "'.concat(this._object.id,'"'),e)}if(null!==i){var o=this._predicate,a=this._object;r?this._emit(a,o,i,n):this._emit(i,o,a,n)}return t}},{key:"_readBlankNodePunctuation",value:function(e){var t;switch(e.type){case";":t=this._readPredicate;break;case",":t=this._readObject;break;default:return this._error('Expected punctuation to follow "'.concat(this._object.id,'"'),e)}return this._emit(this._subject,this._predicate,this._object,this._graph),t}},{key:"_readQuadPunctuation",value:function(e){return"."!==e.type?this._error("Expected dot to follow quad",e):this._readInTopContext}},{key:"_readPrefix",value:function(e){return"prefix"!==e.type?this._error("Expected prefix to follow @prefix",e):(this._prefix=e.value,this._readPrefixIRI)}},{key:"_readPrefixIRI",value:function(e){if("IRI"!==e.type)return this._error('Expected IRI to follow prefix "'.concat(this._prefix,':"'),e);var t=this._readEntity(e);return this._prefixes[this._prefix]=t.value,this._prefixCallback(this._prefix,t),this._readDeclarationPunctuation}},{key:"_readBaseIRI",value:function(e){var t="IRI"===e.type&&this._resolveIRI(e.value);return t?(this._setBase(t),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",e)}},{key:"_readNamedGraphLabel",value:function(e){switch(e.type){case"IRI":case"blank":case"prefixed":return this._readSubject(e),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",e)}}},{key:"_readNamedGraphBlankLabel",value:function(e){return"]"!==e.type?this._error("Invalid graph label",e):(this._subject=this._blankNode(),this._readGraph)}},{key:"_readDeclarationPunctuation",value:function(e){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(e)):"."!==e.type?this._error("Expected declaration to end with a dot",e):this._readInTopContext}},{key:"_readQuantifierList",value:function(e){var t;switch(e.type){case"IRI":case"prefixed":if(void 0!==(t=this._readEntity(e,!0)))break;default:return this._error("Unexpected ".concat(e.type),e)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,t,this.QUANTIFIERS_GRAPH)):this._quantified[t.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}},{key:"_readQuantifierPunctuation",value:function(e){return","===e.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(e))}},{key:"_getPathReader",value:function(e){return this._afterPath=e,this._readPath}},{key:"_readPath",value:function(e){switch(e.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:var t=this._contextStack,n=t.length&&t[t.length-1];if(n&&"item"===n.type){var i=this._subject;this._restoreContext(),this._emit(this._subject,this.RDF_FIRST,i,this._graph)}return this._afterPath(e)}}},{key:"_readForwardPath",value:function(e){var t,n,i=this._blankNode();if(void 0!==(n=this._readEntity(e)))return null===this._predicate?(t=this._subject,this._subject=i):(t=this._object,this._object=i),this._emit(t,n,i,this._graph),this._readPath}},{key:"_readBackwardPath",value:function(e){var t,n,i=this._blankNode();if(void 0!==(t=this._readEntity(e)))return null===this._predicate?(n=this._subject,this._subject=i):(n=this._object,this._object=i),this._emit(i,t,n,this._graph),this._readPath}},{key:"_readRDFStarTailOrGraph",value:function(e){return">>"!==e.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(e))?this._readRDFStarTail:this._error('Expected >> to follow "'.concat(this._object.id,'"'),e):this._readRDFStarTail(e)}},{key:"_readRDFStarTail",value:function(e){if(">>"!==e.type)return this._error("Expected >> but got ".concat(e.type),e);var t=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext(),null===this._subject?(this._subject=t,this._readPredicate):(this._object=t,this._getContextEndReader())}},{key:"_getContextEndReader",value:function(){var e=this._contextStack;if(!e.length)return this._readPunctuation;switch(e[e.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}},{key:"_emit",value:function(e,t,n,i){this._callback(null,this._quad(e,t,n,i||this.DEFAULTGRAPH))}},{key:"_error",value:function(e,t){var n=new Error("".concat(e," on line ").concat(t.line,"."));n.context={token:t,line:t.line,previousToken:this._lexer.previousToken},this._callback(n),this._callback=c}},{key:"_resolveIRI",value:function(e){return/^[a-z][a-z0-9+.-]*:/i.test(e)?e:this._resolveRelativeIRI(e)}},{key:"_resolveRelativeIRI",value:function(e){if(!e.length)return this._base;switch(e[0]){case"#":return this._base+e;case"?":return this._base.replace(/(?:\?.*)?$/,e);case"/":return("/"===e[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(e);default:return/^[^/:]*:/.test(e)?null:this._removeDotSegments(this._basePath+e)}}},{key:"_removeDotSegments",value:function(e){if(!/(^|\/)\.\.?($|[/#?])/.test(e))return e;for(var t=e.length,n="",i=-1,r=-1,o=0,a="/";i=r&&(n=n.substr(0,o)),"/"!==a)return"".concat(n,"/").concat(e.substr(i+1));o=i+1}}}a=e[++i]}return n+e.substring(o)}},{key:"parse",value:function(e,t,n){var i=this;if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):"b".concat(s++,"_"),this._prefixCallback=n||c,this._inversePredicate=!1,this._quantified=Object.create(null),!t){var r,o=[];if(this._callback=function(e,t){e?r=e:t&&o.push(t)},this._lexer.tokenize(e).every(function(e){return i._readCallback=i._readCallback(e)}),r)throw r;return o}this._callback=t,this._lexer.tokenize(e,function(e,t){null!==e?(i._callback(e),i._callback=c):i._readCallback&&(i._readCallback=i._readCallback(t))})}}],[{key:"_resetBlankNodePrefix",value:function(){s=0}}]),e}();function c(){}function l(e,t){var n=t.namedNode;e._namedNode=n,e._blankNode=t.blankNode,e._literal=t.literal,e._variable=t.variable,e._quad=t.quad,e.DEFAULTGRAPH=t.defaultGraph(),e.RDF_FIRST=n(o.default.rdf.first),e.RDF_REST=n(o.default.rdf.rest),e.RDF_NIL=n(o.default.rdf.nil),e.N3_FORALL=n(o.default.r.forAll),e.N3_FORSOME=n(o.default.r.forSome),e.ABBREVIATIONS={a:n(o.default.rdf.type),"=":n(o.default.owl.sameAs),">":n(o.default.log.implies)},e.QUANTIFIERS_GRAPH=n("urn:n3:quantifiers")}n.default=u,l(u.prototype,r.default)},{"./IRIs":34,"./N3DataFactory":35,"./N3Lexer":36}],38:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var a=r?Object.getOwnPropertyDescriptor(e,o):null;a&&(a.get||a.set)?Object.defineProperty(i,o,a):i[o]=e[o]}return i.default=e,n&&n.set(e,i),i}(e("./N3DataFactory")),o=e("readable-stream"),u=(i=e("./IRIs"))&&i.__esModule?i:{default:i};function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var h=function(e){function t(e,n){m(this,t),this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,!n&&e&&!e[0]&&(n=e,e=null),this._factory=(n=n||{}).factory||r.default,e&&this.addQuads(e)}return b(t,[{key:"size",get:function(){var e=this._size;if(null!==e)return e;e=0;var t,n,i=this._graphs;for(var r in i)for(var o in t=i[r].subjects)for(var a in n=t[o])e+=Object.keys(n[a]).length;return this._size=e}},{key:"_addToIndex",value:function(e,t,n,i){var r=e[t]||(e[t]={}),o=r[n]||(r[n]={}),a=i in o;return a||(o[i]=null),!a}},{key:"_removeFromIndex",value:function(e,t,n,i){var r=e[t],o=r[n];for(var a in delete o[i],o)return;for(var s in delete r[n],r)return;delete e[t]}},{key:"_findInIndex",value:function(e,t,n,i,o,a,s,u,c,l){var h,d,f,p=!t+!n+!i>1?Object.keys(this._ids):this._entities;for(var v in t&&((h=e,e={})[t]=h[t]),e){var g=p[v];if(d=e[v])for(var m in n&&((h=d,d={})[n]=h[n]),d){var y=p[m];if(f=d[m])for(var b=(i?i in f?[i]:[]:Object.keys(f)),_=0;_0&&void 0!==arguments[0]?arguments[0]:{},n=t.remove,i=void 0!==n&&n,r=t.ignoreErrors,o=void 0!==r&&r,a={},s=o?function(){return!0}:function(e,t){throw new Error("".concat(e.value," ").concat(t))},c=this.getQuads(null,u.default.rdf.rest,u.default.rdf.nil,null),l=i?v(c):[];return c.forEach(function(t){for(var n,r,o=[],c=!1,h=t.graph,d=t.subject;d&&!c;){for(var f=e.getQuads(null,null,d,null),p=e.getQuads(d,null,null,null),v=void 0,g=null,m=null,y=null,b=0;b")}},{key:"_encodeLiteral",value:function(e){var t=e.value;if(p.test(t)&&(t=t.replace(v,_)),e.language)return'"'.concat(t,'"@').concat(e.language);if(this._lineMode){if(e.datatype.value===f.string)return'"'.concat(t,'"')}else switch(e.datatype.value){case f.string:return'"'.concat(t,'"');case f.boolean:if("true"===t||"false"===t)return t;break;case f.integer:if(/^[+-]?\d+$/.test(t))return t;break;case f.decimal:if(/^[+-]?\d*\.\d+$/.test(t))return t;break;case f.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(t))return t}return'"'.concat(t,'"^^').concat(this._encodeIriOrBlank(e.datatype))}},{key:"_encodePredicate",value:function(e){return e.value===d.type?"a":this._encodeIriOrBlank(e)}},{key:"_encodeObject",value:function(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}},{key:"_encodeQuad",value:function(e){var t=e.subject,n=e.predicate,i=e.object,r=e.graph;return"<<".concat(this._encodeSubject(t)," ").concat(this._encodePredicate(n)," ").concat(this._encodeObject(i)).concat((0,u.isDefaultGraph)(r)?"":" ".concat(this._encodeIriOrBlank(r)),">>")}},{key:"_blockedWrite",value:function(){throw new Error("Cannot write because the writer has been closed.")}},{key:"addQuad",value:function(e,t,n,i,r){void 0===n?this._writeQuad(e.subject,e.predicate,e.object,e.graph,t):"function"==typeof i?this._writeQuad(e,t,n,l,i):this._writeQuad(e,t,n,i||l,r)}},{key:"addQuads",value:function(e){for(var t=0;t.\n"))}if(n){var o="",a="";for(var s in this._prefixIRIs)o+=o?"|".concat(s):s,a+=(a?"|":"")+this._prefixIRIs[s];o=o.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp("^(?:".concat(a,")[^/]*$|^(").concat(o,")([a-zA-Z][\\-_a-zA-Z0-9]*)$"))}this._write(n?"\n":"",t)}},{key:"blank",value:function(e,t){var n,i,r=e;switch(void 0===e?r=[]:e.termType?r=[{predicate:e,object:t}]:"length"in e||(r=[e]),i=r.length){case 0:return new y("[]");case 1:if(!((n=r[0]).object instanceof y))return new y("[ ".concat(this._encodePredicate(n.predicate)," ").concat(this._encodeObject(n.object)," ]"));default:for(var o="[",a=0;a1)for(var n=1;n1&&void 0!==arguments[1]?arguments[1]:new Map,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;m(this,e),this.prefix=t,this._existing=n,this.counter=i}return b(e,[{key:"clone",value:function(){var t=this.prefix,n=this._existing,i=this.counter;return new e(t,new Map(n),i)}},{key:"getId",value:function(e){var t=e&&this._existing.get(e);if(t)return t;var n=this.prefix+this.counter;return this.counter++,e&&this._existing.set(e,n),n}},{key:"hasId",value:function(e){return this._existing.has(e)}},{key:"getOldIds",value:function(){return v(this._existing.keys())}}]),e}()},{}],48:[function(e,t,n){"use strict";e("setimmediate");var i=self.crypto||self.msCrypto;t.exports=function(){function e(t){if(m(this,e),!i||!i.subtle)throw new Error("crypto.subtle not found.");if("sha256"===t)this.algorithm={name:"SHA-256"};else{if("sha1"!==t)throw new Error('Unsupport algorithm "'.concat(t,'".'));this.algorithm={name:"SHA-1"}}this._content=""}return b(e,[{key:"update",value:function(e){this._content+=e}},{key:"digest",value:function(){var e=this;return h(regeneratorRuntime.mark(function t(){var n,r,o,a;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new TextEncoder).encode(e._content),t.t0=Uint8Array,t.next=4,i.subtle.digest(e.algorithm,n);case 4:for(t.t1=t.sent,r=new t.t0(t.t1),o="",a=0;a]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]+(?:<([^:]+:[^>]*)>)[ \\t]+(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?)|(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"(?:(?:\\^\\^(?:<([^:]+:[^>]*)>))|(?:@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)))?))[ \\t]*(?:\\.|(?:(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]*\\.))[ \\t]*$'),t.exports=function(){function e(){m(this,e)}return b(e,null,[{key:"parse",value:function(e){var t,n=[],h={},f=0,p=_(e.split(c.eoln));try{for(p.s();!(t=p.n()).done;){var v=t.value;if(f++,!c.empty.test(v)){var g=v.match(c.quad);if(null===g)throw new Error("N-Quads parse error on line "+f+".");var m={subject:null,predicate:null,object:null,graph:null};if(m.subject=void 0!==g[1]?{termType:o,value:g[1]}:{termType:a,value:g[2]},m.predicate={termType:o,value:g[3]},void 0!==g[4]?m.object={termType:o,value:g[4]}:void 0!==g[5]?m.object={termType:a,value:g[5]}:(m.object={termType:s,value:void 0,datatype:{termType:o}},void 0!==g[7]?m.object.datatype.value=g[7]:void 0!==g[8]?(m.object.datatype.value=i,m.object.language=g[8]):m.object.datatype.value=r,m.object.value=g[6].replace(d,function(e,t,n,i){if(t)switch(t){case"t":return"\t";case"b":return"\b";case"n":return"\n";case"r":return"\r";case"f":return"\f";case'"':return'"';case"'":return"'";case"\\":return"\\"}if(n)return String.fromCharCode(parseInt(n,16));if(i)throw new Error("Unsupported U escape")})),m.graph=void 0!==g[9]?{termType:o,value:g[9]}:void 0!==g[10]?{termType:a,value:g[10]}:{termType:u,value:""},m.graph.value in h){var y,b=!0,w=h[m.graph.value],k=_(w);try{for(k.s();!(y=k.n()).done;){if(l(y.value,m)){b=!1;break}}}catch(x){k.e(x)}finally{k.f()}b&&(w.push(m),n.push(m))}else h[m.graph.value]=[m],n.push(m)}}}catch(x){p.e(x)}finally{p.f()}return n}},{key:"serialize",value:function(t){Array.isArray(t)||(t=e.legacyDatasetToQuads(t));var n,i=[],r=_(t);try{for(r.s();!(n=r.n()).done;){var o=n.value;i.push(e.serializeQuad(o))}}catch(a){r.e(a)}finally{r.f()}return i.sort().join("")}},{key:"serializeQuad",value:function(e){var t=e.subject,n=e.object,s=e.graph,u="";return u+=t.termType===o?"<".concat(t.value,">"):"".concat(t.value),u+=" <".concat(e.predicate.value,"> "),n.termType===o?u+="<".concat(n.value,">"):n.termType===a?u+=n.value:(u+='"'.concat(n.value.replace(h,function(e){switch(e){case'"':return'\\"';case"\\":return"\\\\";case"\n":return"\\n";case"\r":return"\\r"}}),'"'),n.datatype.value===i?n.language&&(u+="@".concat(n.language)):n.datatype.value!==r&&(u+="^^<".concat(n.datatype.value,">"))),s.termType===o?u+=" <".concat(s.value,">"):s.termType===a&&(u+=" ".concat(s.value)),u+=" .\n"}},{key:"legacyDatasetToQuads",value:function(e){var t=[],n={"blank node":a,IRI:o,literal:s},c=function(c){e[c].forEach(function(e){var l={};for(var h in e){var d=e[h],f={termType:n[d.type],value:d.value};f.termType===s&&(f.datatype={termType:o},"datatype"in d&&(f.datatype.value=d.datatype),"language"in d?("datatype"in d||(f.datatype.value=i),f.language=d.language):"datatype"in d||(f.datatype.value=r)),l[h]=f}l.graph="@default"===c?{termType:u,value:""}:{termType:c.startsWith("_:")?a:o,value:c},t.push(l)})};for(var l in e)c(l);return t}}]),e}();var h=/["\\\n\r]/g,d=/(?:\\([tbnrf"'\\]))|(?:\\u([0-9A-Fa-f]{4}))|(?:\\U([0-9A-Fa-f]{8}))/g},{}],50:[function(e,t,n){"use strict";t.exports=function(){function e(t){m(this,e),this.current=t.sort(),this.done=!1,this.dir=new Map;for(var n=0;ni)&&(u&&a>0&&s>e[a-1]||!u&&ae[a+1])&&(i=s,r=a)}if(null===i)this.done=!0;else{var c=t.get(i)?r-1:r+1;e[r]=e[c],e[c]=i;var l,h=_(e);try{for(h.s();!(l=h.n()).done;){var d=l.value;d>i&&t.set(d,!t.get(d))}}catch(f){h.e(f)}finally{h.f()}}return n}}]),e}()},{}],51:[function(e,t,n){(function(n){(function(){"use strict";var i=e("./IdentifierIssuer"),r=e("./MessageDigest"),o=e("./Permuter"),a=e("./NQuads");function s(e,t){return e.hasht.hash?1:0}t.exports=function(){function e(){m(this,e),this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}return b(e,[{key:"main",value:function(e){var t=this;return h(regeneratorRuntime.mark(function n(){var r,o,u,c,l,h,d,f,p,g,m,y,b,w,k,x,S,E,C,O,T,A,P,I,R,D,N,L,j,F,B,V,z,U,H,G;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:t.quads=e,r=_(e);try{for(r.s();!(o=r.n()).done;)u=o.value,t._addBlankNodeQuadInfo({quad:u,component:u.subject}),t._addBlankNodeQuadInfo({quad:u,component:u.object}),t._addBlankNodeQuadInfo({quad:u,component:u.graph})}catch(W){r.e(W)}finally{r.f()}c=new Map,l=v(t.blankNodeInfo.keys()),h=0,d=_(l),n.prev=6,d.s();case 8:if((f=d.n()).done){n.next=18;break}if(p=f.value,n.t0=++h%100==0,!n.t0){n.next=14;break}return n.next=14,t._yield();case 14:return n.next=16,t._hashAndTrackBlankNode({id:p,hashToBlankNodes:c});case 16:n.next=8;break;case 18:n.next=23;break;case 20:n.prev=20,n.t1=n.catch(6),d.e(n.t1);case 23:return n.prev=23,d.f(),n.finish(23);case 26:g=v(c.keys()).sort(),m=[],y=_(g);try{for(y.s();!(b=y.n()).done;)w=b.value,(k=c.get(w)).length>1?m.push(k):t.canonicalIssuer.getId(k[0])}catch(W){y.e(W)}finally{y.f()}x=0,S=m;case 30:if(!(xf)){i.next=31;break}return k=!0,i.abrupt("break",33);case 31:i.next=26;break;case 33:i.next=38;break;case 35:i.prev=35,i.t1=i.catch(24),x.e(i.t1);case 38:return i.prev=38,x.f(),i.finish(38);case 41:if(k){i.next=64;break}C=_(w),i.prev=43,C.s();case 45:if((O=C.n()).done){i.next=55;break}return T=O.value,i.next=49,n.hashNDegreeQuads(T,y);case 49:if(A=i.sent,b+=y.getId(T),b+="<".concat(A.hash,">"),y=A.issuer,!(0!==f.length&&b>f)){i.next=53;break}return k=!0,i.abrupt("break",55);case 53:i.next=45;break;case 55:i.next=60;break;case 57:i.prev=57,i.t2=i.catch(43),C.e(i.t2);case 60:return i.prev=60,C.f(),i.finish(60);case 63:k||(0===f.length||b")}},{key:"createHashToRelated",value:function(e,t){var n=this;return h(regeneratorRuntime.mark(function i(){var r,o,a,s,u,c;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:r=new Map,o=n.blankNodeInfo.get(e).quads,a=0,s=_(o),i.prev=3,s.s();case 5:if((u=s.n()).done){i.next=15;break}if(c=u.value,i.t0=++a%100==0,!i.t0){i.next=11;break}return i.next=11,n._yield();case 11:return i.next=13,Promise.all([n._addRelatedBlankNodeHash({quad:c,component:c.subject,position:"s",id:e,issuer:t,hashToRelated:r}),n._addRelatedBlankNodeHash({quad:c,component:c.object,position:"o",id:e,issuer:t,hashToRelated:r}),n._addRelatedBlankNodeHash({quad:c,component:c.graph,position:"g",id:e,issuer:t,hashToRelated:r})]);case 13:i.next=5;break;case 15:i.next=20;break;case 17:i.prev=17,i.t1=i.catch(3),s.e(i.t1);case 20:return i.prev=20,s.f(),i.finish(20);case 23:return i.abrupt("return",r);case 24:case"end":return i.stop()}},i,null,[[3,17,20,23]])}))()}},{key:"_hashAndTrackBlankNode",value:function(e){var t=e.id,n=e.hashToBlankNodes,i=this;return h(regeneratorRuntime.mark(function e(){var r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i.hashFirstDegreeQuads(t);case 2:r=e.sent,(o=n.get(r))?o.push(t):n.set(r,[t]);case 5:case"end":return e.stop()}},e)}))()}},{key:"_addBlankNodeQuadInfo",value:function(e){var t=e.quad,n=e.component;if("BlankNode"===n.termType){var i=n.value,r=this.blankNodeInfo.get(i);r?r.quads.add(t):this.blankNodeInfo.set(i,{quads:new Set([t]),hash:null})}}},{key:"_addRelatedBlankNodeHash",value:function(e){var t=e.quad,n=e.component,i=e.position,r=e.id,o=e.issuer,a=e.hashToRelated,s=this;return h(regeneratorRuntime.mark(function e(){var u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("BlankNode"===n.termType&&n.value!==r){e.next=2;break}return e.abrupt("return");case 2:return u=n.value,e.next=5,s.hashRelatedBlankNode(u,t,o,i);case 5:c=e.sent,(l=a.get(c))?l.push(u):a.set(c,[u]);case 8:case"end":return e.stop()}},e)}))()}},{key:"_useCanonicalId",value:function(e){var t=e.component;return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}},{key:"_yield",value:function(){return h(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e){return n(e)}));case 1:case"end":return e.stop()}},e)}))()}}]),e}()}).call(this)}).call(this,e("timers").setImmediate)},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50,timers:89}],52:[function(e,t,n){"use strict";var i=e("./IdentifierIssuer"),r=e("./MessageDigest"),o=e("./Permuter"),a=e("./NQuads");function s(e,t){return e.hasht.hash?1:0}t.exports=function(){function e(){m(this,e),this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}return b(e,[{key:"main",value:function(e){this.quads=e;var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var r=t.value;this._addBlankNodeQuadInfo({quad:r,component:r.subject}),this._addBlankNodeQuadInfo({quad:r,component:r.object}),this._addBlankNodeQuadInfo({quad:r,component:r.graph})}}catch(j){n.e(j)}finally{n.f()}var o,u=new Map,c=_(v(this.blankNodeInfo.keys()));try{for(c.s();!(o=c.n()).done;){var l=o.value;this._hashAndTrackBlankNode({id:l,hashToBlankNodes:u})}}catch(j){c.e(j)}finally{c.f()}var h,d=[],f=_(v(u.keys()).sort());try{for(f.s();!(h=f.n()).done;){var p=h.value,g=u.get(p);g.length>1?d.push(g):this.canonicalIssuer.getId(g[0])}}catch(j){f.e(j)}finally{f.f()}for(var m=0,y=d;ml){y=!0;break}}}catch(C){b.e(C)}finally{b.f()}if(!y){var k,x=_(m);try{for(x.s();!(k=x.n()).done;){var S=k.value,E=this.hashNDegreeQuads(S,p);if(g+=p.getId(S),g+="<".concat(E.hash,">"),p=E.issuer,0!==l.length&&g>l){y=!0;break}}}catch(C){x.e(C)}finally{x.f()}y||(0===l.length||g")}},{key:"createHashToRelated",value:function(e,t){var n,i=new Map,r=_(this.blankNodeInfo.get(e).quads);try{for(r.s();!(n=r.n()).done;){var o=n.value;this._addRelatedBlankNodeHash({quad:o,component:o.subject,position:"s",id:e,issuer:t,hashToRelated:i}),this._addRelatedBlankNodeHash({quad:o,component:o.object,position:"o",id:e,issuer:t,hashToRelated:i}),this._addRelatedBlankNodeHash({quad:o,component:o.graph,position:"g",id:e,issuer:t,hashToRelated:i})}}catch(a){r.e(a)}finally{r.f()}return i}},{key:"_hashAndTrackBlankNode",value:function(e){var t=e.id,n=e.hashToBlankNodes,i=this.hashFirstDegreeQuads(t),r=n.get(i);r?r.push(t):n.set(i,[t])}},{key:"_addBlankNodeQuadInfo",value:function(e){var t=e.quad,n=e.component;if("BlankNode"===n.termType){var i=n.value,r=this.blankNodeInfo.get(i);r?r.quads.add(t):this.blankNodeInfo.set(i,{quads:new Set([t]),hash:null})}}},{key:"_addRelatedBlankNodeHash",value:function(e){var t=e.quad,n=e.component,i=e.position,r=e.id,o=e.issuer,a=e.hashToRelated;if("BlankNode"===n.termType&&n.value!==r){var s=n.value,u=this.hashRelatedBlankNode(s,t,o,i),c=a.get(u);c?c.push(s):a.set(u,[s])}}},{key:"_useCanonicalId",value:function(e){var t=e.component;return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}}]),e}()},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50}],53:[function(e,t,n){"use strict";var i=e("./URDNA2015");t.exports=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.call(this)).name="URGNA2012",e.hashAlgorithm="sha1",e}return b(n,[{key:"modifyFirstDegreeComponent",value:function(e,t,n){return"BlankNode"!==t.termType?t:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:t.value===e?"_:a":"_:z"}}},{key:"getRelatedPredicate",value:function(e){return e.predicate.value}},{key:"createHashToRelated",value:function(e,t){var n=this;return h(regeneratorRuntime.mark(function i(){var r,o,a,s,u,c,l,h,d,f;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:r=new Map,o=n.blankNodeInfo.get(e).quads,a=0,s=_(o),i.prev=3,s.s();case 5:if((u=s.n()).done){i.next=26;break}if(c=u.value,l=void 0,h=void 0,"BlankNode"!==c.subject.termType||c.subject.value===e){i.next=12;break}h=c.subject.value,l="p",i.next=15;break;case 12:if("BlankNode"===c.object.termType&&c.object.value!==e){i.next=14;break}return i.abrupt("continue",24);case 14:h=c.object.value,l="r";case 15:if(i.t0=++a%100==0,!i.t0){i.next=19;break}return i.next=19,n._yield();case 19:return i.next=21,n.hashRelatedBlankNode(h,c,t,l);case 21:d=i.sent,(f=r.get(d))?f.push(h):r.set(d,[h]);case 24:i.next=5;break;case 26:i.next=31;break;case 28:i.prev=28,i.t1=i.catch(3),s.e(i.t1);case 31:return i.prev=31,s.f(),i.finish(31);case 34:return i.abrupt("return",r);case 35:case"end":return i.stop()}},i,null,[[3,28,31,34]])}))()}}]),n}(i)},{"./URDNA2015":51}],54:[function(e,t,n){"use strict";var i=e("./URDNA2015Sync");t.exports=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.call(this)).name="URGNA2012",e.hashAlgorithm="sha1",e}return b(n,[{key:"modifyFirstDegreeComponent",value:function(e,t,n){return"BlankNode"!==t.termType?t:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:t.value===e?"_:a":"_:z"}}},{key:"getRelatedPredicate",value:function(e){return e.predicate.value}},{key:"createHashToRelated",value:function(e,t){var n,i=new Map,r=_(this.blankNodeInfo.get(e).quads);try{for(r.s();!(n=r.n()).done;){var o=n.value,a=void 0,s=void 0;if("BlankNode"===o.subject.termType&&o.subject.value!==e)s=o.subject.value,a="p";else{if("BlankNode"!==o.object.termType||o.object.value===e)continue;s=o.object.value,a="r"}var u=this.hashRelatedBlankNode(s,o,t,a),c=i.get(u);c?c.push(s):i.set(u,[s])}}catch(l){r.e(l)}finally{r.f()}return i}}]),n}(i)},{"./URDNA2015Sync":52}],55:[function(e,t,n){"use strict";var i,r=e("./URDNA2015"),o=e("./URGNA2012"),a=e("./URDNA2015Sync"),s=e("./URGNA2012Sync");try{i=e("rdf-canonize-native")}catch(u){}var u,c={};t.exports=c,c.NQuads=e("./NQuads"),c.IdentifierIssuer=e("./IdentifierIssuer"),c._rdfCanonizeNative=function(e){return e&&(i=e),i},c.canonize=(u=h(regeneratorRuntime.mark(function e(t,n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),!n.useNative){e.next=4;break}if(i){e.next=3;break}throw new Error("rdf-canonize-native not available");case 3:return e.abrupt("return",new Promise(function(e,r){return i.canonize(t,n,function(t,n){return t?r(t):e(n)})}));case 4:if("URDNA2015"!==n.algorithm){e.next=6;break}return e.abrupt("return",new r(n).main(t));case 6:if("URGNA2012"!==n.algorithm){e.next=8;break}return e.abrupt("return",new o(n).main(t));case 8:throw"algorithm"in n?new Error("Invalid RDF Dataset Canonicalization algorithm: "+n.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.");case 9:case"end":return e.stop()}},e)})),function(e,t){return u.apply(this,arguments)}),c._canonizeSync=function(e,t){if(Array.isArray(e)||(e=c.NQuads.legacyDatasetToQuads(e)),t.useNative){if(i)return i.canonizeSync(e,t);throw new Error("rdf-canonize-native not available")}if("URDNA2015"===t.algorithm)return new a(t).main(e);if("URGNA2012"===t.algorithm)return new s(t).main(e);throw"algorithm"in t?new Error("Invalid RDF Dataset Canonicalization algorithm: "+t.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")}},{"./IdentifierIssuer":47,"./NQuads":49,"./URDNA2015":51,"./URDNA2015Sync":52,"./URGNA2012":53,"./URGNA2012Sync":54,"rdf-canonize-native":3}],56:[function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(e("./lib/BlankNode"),n),r(e("./lib/DataFactory"),n),r(e("./lib/DefaultGraph"),n),r(e("./lib/Literal"),n),r(e("./lib/NamedNode"),n),r(e("./lib/Quad"),n),r(e("./lib/Variable"),n)},{"./lib/BlankNode":57,"./lib/DataFactory":58,"./lib/DefaultGraph":59,"./lib/Literal":60,"./lib/NamedNode":61,"./lib/Quad":62,"./lib/Variable":63}],57:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.BlankNode=void 0,n.BlankNode=function(){function e(t){m(this,e),this.termType="BlankNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}]),e}()},{}],58:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DataFactory=void 0;var i=e("./BlankNode"),r=e("./DefaultGraph"),o=e("./Literal"),a=e("./NamedNode"),s=e("./Quad"),u=e("./Variable"),c=0;n.DataFactory=function(){function e(t){m(this,e),this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||"df_".concat(c++,"_")}return b(e,[{key:"namedNode",value:function(e){return new a.NamedNode(e)}},{key:"blankNode",value:function(e){return new i.BlankNode(e||"".concat(this.blankNodePrefix).concat(this.blankNodeCounter++))}},{key:"literal",value:function(e,t){return new o.Literal(e,t)}},{key:"variable",value:function(e){return new u.Variable(e)}},{key:"defaultGraph",value:function(){return r.DefaultGraph.INSTANCE}},{key:"quad",value:function(e,t,n,i){return new s.Quad(e,t,n,i||this.defaultGraph())}},{key:"fromTerm",value:function(e){switch(e.termType){case"NamedNode":return this.namedNode(e.value);case"BlankNode":return this.blankNode(e.value);case"Literal":return e.language?this.literal(e.value,e.language):e.datatype.equals(o.Literal.XSD_STRING)?this.literal(e.value):this.literal(e.value,this.fromTerm(e.datatype));case"Variable":return this.variable(e.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(e.subject),this.fromTerm(e.predicate),this.fromTerm(e.object),this.fromTerm(e.graph))}}},{key:"fromQuad",value:function(e){return this.fromTerm(e)}},{key:"resetBlankNodeCounter",value:function(){this.blankNodeCounter=0}}]),e}()},{"./BlankNode":57,"./DefaultGraph":59,"./Literal":60,"./NamedNode":61,"./Quad":62,"./Variable":63}],59:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DefaultGraph=void 0;var i=function(){function e(){m(this,e),this.termType="DefaultGraph",this.value=""}return b(e,[{key:"equals",value:function(e){return!!e&&"DefaultGraph"===e.termType}}]),e}();n.DefaultGraph=i,i.INSTANCE=new i},{}],60:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Literal=void 0;var i=e("./NamedNode"),r=function(){function e(t,n){m(this,e),this.termType="Literal",this.value=t,"string"==typeof n?(this.language=n,this.datatype=e.RDF_LANGUAGE_STRING):n?(this.language="",this.datatype=n):(this.language="",this.datatype=e.XSD_STRING)}return b(e,[{key:"equals",value:function(e){return!!e&&"Literal"===e.termType&&e.value===this.value&&e.language===this.language&&e.datatype.equals(this.datatype)}}]),e}();n.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},{"./NamedNode":61}],61:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NamedNode=void 0,n.NamedNode=function(){function e(t){m(this,e),this.termType="NamedNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"NamedNode"===e.termType&&e.value===this.value}}]),e}()},{}],62:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Quad=void 0,n.Quad=function(){function e(t,n,i,r){m(this,e),this.termType="Quad",this.value="",this.subject=t,this.predicate=n,this.object=i,this.graph=r}return b(e,[{key:"equals",value:function(e){return!!e&&("Quad"===e.termType||!e.termType)&&this.subject.equals(e.subject)&&this.predicate.equals(e.predicate)&&this.object.equals(e.object)&&this.graph.equals(e.graph)}}]),e}()},{}],63:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Variable=void 0,n.Variable=function(){function e(t){m(this,e),this.termType="Variable",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"Variable"===e.termType&&e.value===this.value}}]),e}()},{}],64:[function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(e("./lib/RdfXmlParser"),n)},{"./lib/RdfXmlParser":66}],65:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseError=void 0;var i=function(e){a(n,e);var t=s(n);function n(e,i){m(this,n);var r=e.saxStream._parser;return t.call(this,e.trackPosition?"Line ".concat(r.line+1," column ").concat(r.column+1,": ").concat(i):i)}return n}(l(Error));n.ParseError=i},{}],66:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseType=n.RdfXmlParser=void 0;var i,r,o=e("relative-to-absolute-iri"),u=e("sax"),l=e("stream"),h=e("./ParseError"),d=e("rdf-data-factory"),f=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,{readableObjectMode:!0})).activeTagStack=[],i.nodeIds={},e&&(Object.assign(c(i),e),i.options=e),i.dataFactory||(i.dataFactory=new d.DataFactory),i.baseIRI||(i.baseIRI=""),i.defaultGraph||(i.defaultGraph=i.dataFactory.defaultGraph()),i.saxStream=u.createStream(i.strict,{xmlns:!1,position:i.trackPosition}),i.strict||(i.saxStream._parser.looseCase="toString"),i.attachSaxListeners(),i}return b(n,[{key:"import",value:function(e){var t=new l.PassThrough({readableObjectMode:!0});e.on("error",function(e){return i.emit("error",e)}),e.on("data",function(e){return t.push(e)}),e.on("end",function(){return t.push(null)});var i=t.pipe(new n(this.options));return i}},{key:"_transform",value:function(e,t,n){try{this.saxStream.write(e,t)}catch(i){return n(i)}n()}},{key:"newParseError",value:function(e){return new h.ParseError(this,e)}},{key:"valueToUri",value:function(e,t){return this.uriToNamedNode(o.resolve(e,t.baseIRI))}},{key:"uriToNamedNode",value:function(e){if(!n.isValidIri(e))throw this.newParseError("Invalid URI: ".concat(e));return this.dataFactory.namedNode(e)}},{key:"validateNcname",value:function(e){if(!n.NCNAME_MATCHER.test(e))throw this.newParseError("Not a valid NCName: ".concat(e))}},{key:"attachSaxListeners",value:function(){var e=this;this.saxStream.on("error",function(t){return e.emit("error",t)}),this.saxStream.on("opentag",this.onTag.bind(this)),this.saxStream.on("text",this.onText.bind(this)),this.saxStream.on("closetag",this.onCloseTag.bind(this)),this.saxStream.on("doctype",this.onDoctype.bind(this))}},{key:"onTag",value:function(e){var t=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null,r=i.RESOURCE;if(t&&(t.hadChildren=!0,r=t.childrenParseType),t&&t.childrenStringTags){var o=e.name,a="";for(var s in e.attributes)a+=" ".concat(s,'="').concat(e.attributes[s],'"');t.childrenStringTags.push("<".concat(o).concat(a,">"));var u={childrenStringTags:t.childrenStringTags};return u.childrenStringEmitClosingTag=""),void this.activeTagStack.push(u)}var c={};t?(c.language=t.language,c.baseIRI=t.baseIRI):c.baseIRI=this.baseIRI,this.activeTagStack.push(c),c.ns=n.parseNamespace(e,t),r===i.RESOURCE?this.onTagResource(e,c,t,!t):this.onTagProperty(e,c,t)}},{key:"onTagResource",value:function(e,t,r,a){var s=n.expandPrefixedTerm(e.name,t.ns,this);t.childrenParseType=i.PROPERTY;var u=!0;if(s.uri===n.RDF){if(!a&&n.FORBIDDEN_NODE_ELEMENTS.indexOf(s.local)>=0)throw this.newParseError("Illegal node element name: ".concat(s.local));switch(s.local){case"RDF":t.childrenParseType=i.RESOURCE;case"Description":u=!1}}var c=[],l=[],h=null,d=!1,f=!1,p=null;for(var v in e.attributes){var g=e.attributes[v],m=n.expandPrefixedTerm(v,t.ns,this);if(r&&m.uri===n.RDF)switch(m.local){case"about":if(h)throw this.newParseError("Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ".concat(g," and ").concat(h," where found."));h=g;continue;case"ID":if(h)throw this.newParseError("Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ".concat(g," and ").concat(h," where found."));this.validateNcname(g),h="#"+g,d=!0;continue;case"nodeID":if(h)throw this.newParseError("Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ".concat(g," and ").concat(h," where found."));this.validateNcname(g),h=g,f=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":p=g;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(m.uri===n.XML){if("lang"===m.local){t.language=""===g?null:g.toLowerCase();continue}if("base"===m.local){t.baseIRI=o.resolve(g,t.baseIRI);continue}}"xml"!==m.prefix&&m.uri&&(c.push(this.uriToNamedNode(m.uri+m.local)),l.push(g))}if(null!==h&&(t.subject=f?this.dataFactory.blankNode(h):this.valueToUri(h,t),d&&this.claimNodeId(t.subject)),t.subject||(t.subject=this.dataFactory.blankNode()),u){var y=this.uriToNamedNode(s.uri+s.local);this.emitTriple(t.subject,this.dataFactory.namedNode(n.RDF+"type"),y,r?r.reifiedStatementId:null)}if(r){if(r.predicate)if(r.childrenCollectionSubject){var b=this.dataFactory.blankNode();this.emitTriple(r.childrenCollectionSubject,r.childrenCollectionPredicate,b,r.reifiedStatementId),this.emitTriple(b,this.dataFactory.namedNode(n.RDF+"first"),t.subject,t.reifiedStatementId),r.childrenCollectionSubject=b,r.childrenCollectionPredicate=this.dataFactory.namedNode(n.RDF+"rest")}else{this.emitTriple(r.subject,r.predicate,t.subject,r.reifiedStatementId);for(var _=0;_=0)throw this.newParseError("Illegal property element name: ".concat(o.local));t.predicateSubPredicates=[],t.predicateSubObjects=[];var a=!1,s=!1,u=null,c=!0,l=[],h=[];for(var d in e.attributes){var f=e.attributes[d],p=n.expandPrefixedTerm(d,t.ns,this);if(p.uri===n.RDF)switch(p.local){case"resource":if(u)throw this.newParseError("Found both rdf:resource (".concat(f,") and rdf:nodeID (").concat(u,")."));if(a)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:resource (".concat(f,")"));t.hadChildren=!0,u=f,c=!1;continue;case"datatype":if(s)throw this.newParseError("Found both non-rdf:* property attributes and rdf:datatype (".concat(f,")."));if(a)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:datatype (".concat(f,")"));t.datatype=this.valueToUri(f,t);continue;case"nodeID":if(s)throw this.newParseError("Found both non-rdf:* property attributes and rdf:nodeID (".concat(f,")."));if(t.hadChildren)throw this.newParseError("Found both rdf:resource and rdf:nodeID (".concat(f,")."));if(a)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:nodeID (".concat(f,")"));this.validateNcname(f),t.hadChildren=!0,u=f,c=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(s)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(t.datatype)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:datatype (".concat(t.datatype.value,")"));if(u)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (".concat(u,")"));if("Resource"===f){a=!0,t.childrenParseType=i.PROPERTY;var v=this.dataFactory.blankNode();this.emitTriple(t.subject,t.predicate,v,t.reifiedStatementId),t.subject=v,t.predicate=null}else"Collection"===f?(a=!0,t.hadChildren=!0,t.childrenCollectionSubject=t.subject,t.childrenCollectionPredicate=t.predicate,c=!1):"Literal"===f&&(a=!0,t.childrenTagsToString=!0,t.childrenStringTags=[]);continue;case"ID":this.validateNcname(f),t.reifiedStatementId=this.valueToUri("#"+f,t),this.claimNodeId(t.reifiedStatementId);continue}else if(p.uri===n.XML&&"lang"===p.local){t.language=""===f?null:f.toLowerCase();continue}if("xml"!==p.prefix&&"xmlns"!==p.prefix&&p.uri){if(a||t.datatype)throw this.newParseError("Found illegal rdf:* properties on property element with attribute: ".concat(f));t.hadChildren=!0,s=!0,l.push(this.uriToNamedNode(p.uri+p.local)),h.push(this.dataFactory.literal(f,t.datatype||t.language))}}if(null!==u){var g=t.subject;t.subject=c?this.dataFactory.blankNode(u):this.valueToUri(u,t),this.emitTriple(g,t.predicate,t.subject,t.reifiedStatementId);for(var m=0;m/g,function(e,n,i){return t.saxStream._parser.ENTITIES[n]=i,""})}}],[{key:"parseNamespace",value:function(e,t){var i={},r=!1;for(var o in e.attributes)o.startsWith("xmlns")&&(5===o.length?(r=!0,i[""]=e.attributes[o]):":"===o.charAt(5)&&(r=!0,i[o.substr(6)]=e.attributes[o]));var a=t&&t.ns?t.ns:[n.DEFAULT_NS];return r?a.concat([i]):a}},{key:"expandPrefixedTerm",value:function(e,t,n){var i,r,o=e.indexOf(":");o>=0?(i=e.substr(0,o),r=e.substr(o+1)):(i="",r=e);for(var a=null,s=null,u=t.length-1;u>=0;u--){var c=t[u][i];if(c){a=c;break}s||(s=t[u][""])}if(!a){if(i&&"xmlns"!==i)throw new h.ParseError(n,"The prefix '".concat(i,"' in term '").concat(e,"' was not bound."));a=s||""}return{prefix:i,local:r,uri:a}}},{key:"isValidIri",value:function(e){return n.IRI_REGEX.test(e)}}]),n}(l.Transform);n.RdfXmlParser=f,f.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*):[^ "<>{}|\\\[\]`]*$/,f.MIME_TYPE="application/rdf+xml",f.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",f.XML="http://www.w3.org/XML/1998/namespace",f.XMLNS="http://www.w3.org/2000/xmlns/",f.DEFAULT_NS={xml:f.XML},f.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],f.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],f.NCNAME_MATCHER=/^((?:[A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]))((?:[#\x2D\.0-9A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]))*$/,(r=i=n.ParseType||(n.ParseType={}))[r.RESOURCE=0]="RESOURCE",r[r.PROPERTY=1]="PROPERTY"},{"./ParseError":65,"rdf-data-factory":56,"relative-to-absolute-iri":82,sax:85,stream:87}],67:[function(e,t,n){"use strict";var i={};function r(e,t,n){n||(n=Error);var r=function(e){function n(n,i,r){return e.call(this,function(e,n,i){return"string"==typeof t?t:t(e,n,i)}(n,i,r))||this}return function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}(n,e),n}(n);r.prototype.name=n.name,r.prototype.code=e,i[e]=r}function o(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map(function(e){return String(e)}),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(e,t,n){var i,r;if("string"==typeof t&&function(e,t,n){return e.substr(0,t.length)===t}(t,"not ")?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))r="The ".concat(e," ").concat(i," ").concat(o(t,"type"));else{var a=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+".".length>e.length)&&-1!==e.indexOf(".",n)}(e)?"property":"argument";r='The "'.concat(e,'" ').concat(a," ").concat(i," ").concat(o(t,"type"))}return r+". Received type ".concat(typeof n)},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.codes=i},{}],68:[function(e,t,n){(function(n){(function(){"use strict";var i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};t.exports=c;var r=e("./_stream_readable"),o=e("./_stream_writable");e("inherits")(c,r);for(var a=i(o.prototype),s=0;s0)if("string"!=typeof t&&!s.objectMode&&Object.getPrototypeOf(t)!==u.prototype&&(t=function(e){return u.from(e)}(t)),i)s.endEmitted?k(e,new w):O(e,s,t,!0);else if(s.ended)k(e,new b);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?O(e,s,t,!1):I(e,s)):O(e,s,t,!1)}else i||(s.reading=!1,I(e,s));return!s.ended&&(s.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=T?e=T:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function P(e){var t=e._readableState;o("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(o("emitReadable",t.flowing),t.emittedReadable=!0,n.nextTick(M,e))}function M(e){var t=e._readableState;o("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function I(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(R,e,t))}function R(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function N(e){o("readable nexttick read 0"),e.read(0)}function L(e,t){o("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(o("flow",t.flowing);t.flowing&&null!==e.read(););}function F(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function B(e){var t=e._readableState;o("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,n.nextTick(V,t,e))}function V(e,t){if(o("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function z(e,t){for(var n=0,i=e.length;n=t.highWaterMark:t.length>0)||t.ended))return o("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):P(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&B(this),null;var i,r=t.needReadable;return o("need readable",r),(0===t.length||t.length-e0?F(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&B(this)),null!==i&&this.emit("data",i),i},E.prototype._read=function(e){k(this,new _("_read()"))},E.prototype.pipe=function(e,t){var i=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,o("pipe count=%d opts=%j",r.pipesCount,t);var s=t&&!1===t.end||e===n.stdout||e===n.stderr?v:u;function u(){o("onend"),e.end()}r.endEmitted?n.nextTick(s):i.once("end",s),e.on("unpipe",function t(n,a){o("onunpipe"),n===i&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,o("cleanup"),e.removeListener("close",f),e.removeListener("finish",p),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",t),i.removeListener("end",u),i.removeListener("end",v),i.removeListener("data",h),l=!0,r.awaitDrain&&(!e._writableState||e._writableState.needDrain)&&c())});var c=function(e){return function(){var t=e._readableState;o("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(i);e.on("drain",c);var l=!1;function h(t){o("ondata");var n=e.write(t);o("dest.write",n),!1===n&&((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==z(r.pipes,e))&&!l&&(o("false write response, pause",r.awaitDrain),r.awaitDrain++),i.pause())}function d(t){o("onerror",t),v(),e.removeListener("error",d),0===a(e,"error")&&k(e,t)}function f(){e.removeListener("finish",p),v()}function p(){o("onfinish"),e.removeListener("close",f),v()}function v(){o("unpipe"),i.unpipe(e)}return i.on("data",h),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",d),e.once("close",f),e.once("finish",p),e.emit("pipe",i),r.flowing||(o("pipe resume"),i.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var i=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==r.flowing&&this.resume()):"readable"===e&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,o("on readable",r.length,r.reading),r.length?P(this):r.reading||n.nextTick(N,this)),i},E.prototype.removeListener=function(e,t){var i=s.prototype.removeListener.call(this,e,t);return"readable"===e&&n.nextTick(D,this),i},E.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return("readable"===e||void 0===e)&&n.nextTick(D,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(o("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(L,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return o("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(o("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,n=this._readableState,i=!1;for(var r in e.on("end",function(){if(o("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)}),e.on("data",function(r){o("wrapped data"),n.decoder&&(r=n.decoder.write(r)),n.objectMode&&null==r||!(n.objectMode||r&&r.length)||t.push(r)||(i=!0,e.pause())}),e)void 0===this[r]&&"function"==typeof e[r]&&(this[r]=function(t){return function(){return e[t].apply(e,arguments)}}(r));for(var a=0;a-1))throw new w(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,n){n(new v("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,i){var r=this._writableState;return"function"==typeof e?(i=e,e=null,t=null):"function"==typeof t&&(i=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,i){t.ending=!0,M(e,t),i&&(t.finished?n.nextTick(i):e.once("finish",i)),t.ended=!0,e.writable=!1}(this,r,i),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){!this._writableState||(this._writableState.destroyed=e)}}),E.prototype.destroy=h.destroy,E.prototype._undestroy=h.undestroy,E.prototype._destroy=function(e,t){t(e)}}).call(this)}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../errors":67,"./_stream_duplex":68,"./internal/streams/destroy":75,"./internal/streams/state":79,"./internal/streams/stream":80,_process:44,buffer:6,inherits:10,"util-deprecate":90}],73:[function(e,t,n){(function(n){(function(){"use strict";var i;function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var o=e("./end-of-stream"),a=Symbol("lastResolve"),s=Symbol("lastReject"),u=Symbol("error"),c=Symbol("ended"),l=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function f(e,t){return{value:e,done:t}}function p(e){var t=e[a];if(null!==t){var n=e[d].read();null!==n&&(e[l]=null,e[a]=null,e[s]=null,t(f(n,!1)))}}function v(e){n.nextTick(p,e)}var g=Object.getPrototypeOf(function(){}),m=Object.setPrototypeOf((r(i={get stream(){return this[d]},next:function(){var e=this,t=this[u];if(null!==t)return Promise.reject(t);if(this[c])return Promise.resolve(f(void 0,!0));if(this[d].destroyed)return new Promise(function(t,i){n.nextTick(function(){e[u]?i(e[u]):t(f(void 0,!0))})});var i,r=this[l];if(r)i=new Promise(function(e,t){return function(n,i){e.then(function(){t[c]?n(f(void 0,!0)):t[h](n,i)},i)}}(r,this));else{var o=this[d].read();if(null!==o)return Promise.resolve(f(o,!1));i=new Promise(this[h])}return this[l]=i,i}},Symbol.asyncIterator,function(){return this}),r(i,"return",function(){var e=this;return new Promise(function(t,n){e[d].destroy(null,function(e){e?n(e):t(f(void 0,!0))})})}),i),g);t.exports=function(e){var t,n=Object.create(m,(r(t={},d,{value:e,writable:!0}),r(t,a,{value:null,writable:!0}),r(t,s,{value:null,writable:!0}),r(t,u,{value:null,writable:!0}),r(t,c,{value:e._readableState.endEmitted,writable:!0}),r(t,h,{value:function(e,t){var i=n[d].read();i?(n[l]=null,n[a]=null,n[s]=null,e(f(i,!1))):(n[a]=e,n[s]=t)},writable:!0}),t));return n[l]=null,o(e,function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=n[s];return null!==t&&(n[l]=null,n[a]=null,n[s]=null,t(e)),void(n[u]=e)}var i=n[a];null!==i&&(n[l]=null,n[a]=null,n[s]=null,i(f(void 0,!0))),n[c]=!0}),e.on("readable",v.bind(null,n)),n}}).call(this)}).call(this,e("_process"))},{"./end-of-stream":76,_process:44}],74:[function(e,t,n){"use strict";function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,i)}return n}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){for(var n=0;n0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return a.alloc(0);for(var t=a.allocUnsafe(e>>>0),n=this.head,i=0;n;)c(n.data,t,i),i+=n.data.length,n=n.next;return t}},{key:"consume",value:function(e,t){var n;return er.length?r.length:e;if(i+=o===r.length?r:r.slice(0,e),0==(e-=o)){o===r.length?(++n,this.head=t.next?t.next:this.tail=null):(this.head=t,t.data=r.slice(o));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(e){var t=a.allocUnsafe(e),n=this.head,i=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var r=n.data,o=e>r.length?r.length:e;if(r.copy(t,t.length-e,0,o),0==(e-=o)){o===r.length?(++i,this.head=n.next?n.next:this.tail=null):(this.head=n,n.data=r.slice(o));break}++i}return this.length-=i,t}},{key:u,value:function(e,t){return s(this,function(e){for(var t=1;t0,function(e){r||(r=e),e&&a.forEach(c),!o&&(a.forEach(c),i(r))})});return t.reduce(l)}},{"../../../errors":67,"./end-of-stream":76}],79:[function(e,t,n){"use strict";var i=e("../../../errors").codes.ERR_INVALID_OPT_VALUE;t.exports={getHighWaterMark:function(e,t,n,r){var o=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(t,r,n);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new i(r?n:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},{"../../../errors":67}],80:[function(e,t,n){t.exports=e("events").EventEmitter},{events:8}],81:[function(e,t,n){(n=t.exports=e("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=e("./lib/_stream_writable.js"),n.Duplex=e("./lib/_stream_duplex.js"),n.Transform=e("./lib/_stream_transform.js"),n.PassThrough=e("./lib/_stream_passthrough.js"),n.finished=e("./lib/internal/streams/end-of-stream.js"),n.pipeline=e("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":68,"./lib/_stream_passthrough.js":69,"./lib/_stream_readable.js":70,"./lib/_stream_transform.js":71,"./lib/_stream_writable.js":72,"./lib/internal/streams/end-of-stream.js":76,"./lib/internal/streams/pipeline.js":78}],82:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(e){for(var t in e)n.hasOwnProperty(t)||(n[t]=e[t])}(e("./lib/Resolve"))},{"./lib/Resolve":83}],83:[function(e,t,n){"use strict";function i(e){for(var t=[],n=0;n=0?"/"===e[t+1]&&"/"===e[t+2]&&(n=t+3):"/"===e[0]&&"/"===e[1]&&(n=2);var r=e.indexOf("/",n);return r<0?e:e.substr(0,r)+i(e.substr(r))}function o(e){return!e||"#"===e||"?"===e||"/"===e}Object.defineProperty(n,"__esModule",{value:!0}),n.resolve=function(e,t){var n=(t=t||"").indexOf("#");if(n>0&&(t=t.substr(0,n)),!e.length){if(t.indexOf(":")<0)throw new Error("Found invalid baseIRI '".concat(t,"' for value '").concat(e,"'"));return t}if(e.startsWith("?")){var o=t.indexOf("?");return o>0&&(t=t.substr(0,o)),t+e}if(e.startsWith("#"))return t+e;if(!t.length){var a=e.indexOf(":");if(a<0)throw new Error("Found invalid relative IRI '".concat(e,"' for a missing baseIRI"));return r(e,a)}var s=e.indexOf(":");if(s>=0)return r(e,s);var u=t.indexOf(":");if(u<0)throw new Error("Found invalid baseIRI '".concat(t,"' for value '").concat(e,"'"));var c,l=t.substr(0,u+1);if(0===e.indexOf("//"))return l+r(e,s);if(t.indexOf("//",u)===u+1){if((c=t.indexOf("/",u+3))<0)return t.length>u+3?t+"/"+r(e,s):l+r(e,s)}else if((c=t.indexOf("/",u+1))<0)return l+r(e,s);if(0===e.indexOf("/"))return t.substr(0,c)+i(e);var h=t.substr(c),d=h.lastIndexOf("/");return d>=0&&d"===o?(C(t,"onsgmldeclaration",t.sgmlDecl),t.sgmlDecl="",t.state=x.TEXT):(g(o)&&(t.state=x.SGML_DECL_QUOTED),t.sgmlDecl+=o);continue;case x.SGML_DECL_QUOTED:o===t.q&&(t.state=x.SGML_DECL,t.q=""),t.sgmlDecl+=o;continue;case x.DOCTYPE:">"===o?(t.state=x.TEXT,C(t,"ondoctype",t.doctype),t.doctype=!0):(t.doctype+=o,"["===o?t.state=x.DOCTYPE_DTD:g(o)&&(t.state=x.DOCTYPE_QUOTED,t.q=o));continue;case x.DOCTYPE_QUOTED:t.doctype+=o,o===t.q&&(t.q="",t.state=x.DOCTYPE);continue;case x.DOCTYPE_DTD:t.doctype+=o,"]"===o?t.state=x.DOCTYPE:g(o)&&(t.state=x.DOCTYPE_DTD_QUOTED,t.q=o);continue;case x.DOCTYPE_DTD_QUOTED:t.doctype+=o,o===t.q&&(t.state=x.DOCTYPE_DTD,t.q="");continue;case x.COMMENT:"-"===o?t.state=x.COMMENT_ENDING:t.comment+=o;continue;case x.COMMENT_ENDING:"-"===o?(t.state=x.COMMENT_ENDED,t.comment=T(t.opt,t.comment),t.comment&&C(t,"oncomment",t.comment),t.comment=""):(t.comment+="-"+o,t.state=x.COMMENT);continue;case x.COMMENT_ENDED:">"!==o?(M(t,"Malformed comment"),t.comment+="--"+o,t.state=x.COMMENT):t.state=x.TEXT;continue;case x.CDATA:"]"===o?t.state=x.CDATA_ENDING:t.cdata+=o;continue;case x.CDATA_ENDING:"]"===o?t.state=x.CDATA_ENDING_2:(t.cdata+="]"+o,t.state=x.CDATA);continue;case x.CDATA_ENDING_2:">"===o?(t.cdata&&C(t,"oncdata",t.cdata),C(t,"onclosecdata"),t.cdata="",t.state=x.TEXT):"]"===o?t.cdata+="]":(t.cdata+="]]"+o,t.state=x.CDATA);continue;case x.PROC_INST:"?"===o?t.state=x.PROC_INST_ENDING:v(o)?t.state=x.PROC_INST_BODY:t.procInstName+=o;continue;case x.PROC_INST_BODY:if(!t.procInstBody&&v(o))continue;"?"===o?t.state=x.PROC_INST_ENDING:t.procInstBody+=o;continue;case x.PROC_INST_ENDING:">"===o?(C(t,"onprocessinginstruction",{name:t.procInstName,body:t.procInstBody}),t.procInstName=t.procInstBody="",t.state=x.TEXT):(t.procInstBody+="?"+o,t.state=x.PROC_INST_BODY);continue;case x.OPEN_TAG:y(d,o)?t.tagName+=o:(I(t),">"===o?N(t):"/"===o?t.state=x.OPEN_TAG_SLASH:(v(o)||M(t,"Invalid character in tag name"),t.state=x.ATTRIB));continue;case x.OPEN_TAG_SLASH:">"===o?(N(t,!0),L(t)):(M(t,"Forward-slash in opening tag not followed by >"),t.state=x.ATTRIB);continue;case x.ATTRIB:if(v(o))continue;">"===o?N(t):"/"===o?t.state=x.OPEN_TAG_SLASH:y(h,o)?(t.attribName=o,t.attribValue="",t.state=x.ATTRIB_NAME):M(t,"Invalid attribute name");continue;case x.ATTRIB_NAME:"="===o?t.state=x.ATTRIB_VALUE:">"===o?(M(t,"Attribute without value"),t.attribValue=t.attribName,D(t),N(t)):v(o)?t.state=x.ATTRIB_NAME_SAW_WHITE:y(d,o)?t.attribName+=o:M(t,"Invalid attribute name");continue;case x.ATTRIB_NAME_SAW_WHITE:if("="===o)t.state=x.ATTRIB_VALUE;else{if(v(o))continue;M(t,"Attribute without value"),t.tag.attributes[t.attribName]="",t.attribValue="",C(t,"onattribute",{name:t.attribName,value:""}),t.attribName="",">"===o?N(t):y(h,o)?(t.attribName=o,t.state=x.ATTRIB_NAME):(M(t,"Invalid attribute name"),t.state=x.ATTRIB)}continue;case x.ATTRIB_VALUE:if(v(o))continue;g(o)?(t.q=o,t.state=x.ATTRIB_VALUE_QUOTED):(M(t,"Unquoted attribute value"),t.state=x.ATTRIB_VALUE_UNQUOTED,t.attribValue=o);continue;case x.ATTRIB_VALUE_QUOTED:if(o!==t.q){"&"===o?t.state=x.ATTRIB_VALUE_ENTITY_Q:t.attribValue+=o;continue}D(t),t.q="",t.state=x.ATTRIB_VALUE_CLOSED;continue;case x.ATTRIB_VALUE_CLOSED:v(o)?t.state=x.ATTRIB:">"===o?N(t):"/"===o?t.state=x.OPEN_TAG_SLASH:y(h,o)?(M(t,"No whitespace between attributes"),t.attribName=o,t.attribValue="",t.state=x.ATTRIB_NAME):M(t,"Invalid attribute name");continue;case x.ATTRIB_VALUE_UNQUOTED:if(!m(o)){"&"===o?t.state=x.ATTRIB_VALUE_ENTITY_U:t.attribValue+=o;continue}D(t),">"===o?N(t):t.state=x.ATTRIB;continue;case x.CLOSE_TAG:if(t.tagName)">"===o?L(t):y(d,o)?t.tagName+=o:t.script?(t.script+=""===o?L(t):M(t,"Invalid characters in closing tag");continue;case x.TEXT_ENTITY:case x.ATTRIB_VALUE_ENTITY_Q:case x.ATTRIB_VALUE_ENTITY_U:var s,u;switch(t.state){case x.TEXT_ENTITY:s=x.TEXT,u="textNode";break;case x.ATTRIB_VALUE_ENTITY_Q:s=x.ATTRIB_VALUE_QUOTED,u="attribValue";break;case x.ATTRIB_VALUE_ENTITY_U:s=x.ATTRIB_VALUE_UNQUOTED,u="attribValue"}";"===o?(t[u]+=j(t),t.entity="",t.state=s):y(t.entity.length?p:f,o)?t.entity+=o:(M(t,"Invalid character in entity name"),t[u]+="&"+t.entity+o,t.entity="",t.state=s);continue;default:throw new Error(t,"Unknown state: "+t.state)}return t.position>=t.bufferCheckPosition&&function(e){for(var t=Math.max(n.MAX_BUFFER_LENGTH,10),i=0,o=0,a=r.length;ot)switch(r[o]){case"textNode":O(e);break;case"cdata":C(e,"oncdata",e.cdata),e.cdata="";break;case"script":C(e,"onscript",e.script),e.script="";break;default:A(e,"Max buffer length exceeded: "+r[o])}i=Math.max(i,s)}e.bufferCheckPosition=n.MAX_BUFFER_LENGTH-i+e.position}(t),t},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){!function(e){O(e),""!==e.cdata&&(C(e,"oncdata",e.cdata),e.cdata=""),""!==e.script&&(C(e,"onscript",e.script),e.script="")}(this)}};try{i=e("stream").Stream}catch(_){i=function(){}}var a=n.EVENTS.filter(function(e){return"error"!==e&&"end"!==e});function s(e,t){if(!(this instanceof s))return new s(e,t);i.apply(this),this._parser=new o(e,t),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(e){n.emit("error",e),n._parser.error=null},this._decoder=null,a.forEach(function(e){Object.defineProperty(n,"on"+e,{get:function(){return n._parser["on"+e]},set:function(t){if(!t)return n.removeAllListeners(e),n._parser["on"+e]=t,t;n.on(e,t)},enumerable:!0,configurable:!1})})}(s.prototype=Object.create(i.prototype,{constructor:{value:s}})).write=function(n){if("function"==typeof t&&"function"==typeof t.isBuffer&&t.isBuffer(n)){if(!this._decoder){var i=e("string_decoder").StringDecoder;this._decoder=new i("utf8")}n=this._decoder.write(n)}return this._parser.write(n.toString()),this.emit("data",n),!0},s.prototype.end=function(e){return e&&e.length&&this.write(e),this._parser.end(),!0},s.prototype.on=function(e,t){var n=this;return!n._parser["on"+e]&&-1!==a.indexOf(e)&&(n._parser["on"+e]=function(){var t=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);t.splice(0,0,e),n.emit.apply(n,t)}),i.prototype.on.call(n,e,t)};var u="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",l={xml:u,xmlns:c},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,d=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,p=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function v(e){return" "===e||"\n"===e||"\r"===e||"\t"===e}function g(e){return'"'===e||"'"===e}function m(e){return">"===e||v(e)}function y(e,t){return e.test(t)}function b(e,t){return!y(e,t)}var _,w,k,x=0;for(var S in n.STATE={BEGIN:x++,BEGIN_WHITESPACE:x++,TEXT:x++,TEXT_ENTITY:x++,OPEN_WAKA:x++,SGML_DECL:x++,SGML_DECL_QUOTED:x++,DOCTYPE:x++,DOCTYPE_QUOTED:x++,DOCTYPE_DTD:x++,DOCTYPE_DTD_QUOTED:x++,COMMENT_STARTING:x++,COMMENT:x++,COMMENT_ENDING:x++,COMMENT_ENDED:x++,CDATA:x++,CDATA_ENDING:x++,CDATA_ENDING_2:x++,PROC_INST:x++,PROC_INST_BODY:x++,PROC_INST_ENDING:x++,OPEN_TAG:x++,OPEN_TAG_SLASH:x++,ATTRIB:x++,ATTRIB_NAME:x++,ATTRIB_NAME_SAW_WHITE:x++,ATTRIB_VALUE:x++,ATTRIB_VALUE_QUOTED:x++,ATTRIB_VALUE_CLOSED:x++,ATTRIB_VALUE_UNQUOTED:x++,ATTRIB_VALUE_ENTITY_Q:x++,ATTRIB_VALUE_ENTITY_U:x++,CLOSE_TAG:x++,CLOSE_TAG_SAW_WHITE:x++,SCRIPT:x++,SCRIPT_ENDING:x++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(e){var t=n.ENTITIES[e],i="number"==typeof t?String.fromCharCode(t):t;n.ENTITIES[e]=i}),n.STATE)n.STATE[n.STATE[S]]=S;function E(e,t,n){e[t]&&e[t](n)}function C(e,t,n){e.textNode&&O(e),E(e,t,n)}function O(e){e.textNode=T(e.opt,e.textNode),e.textNode&&E(e,"ontext",e.textNode),e.textNode=""}function T(e,t){return e.trim&&(t=t.trim()),e.normalize&&(t=t.replace(/\s+/g," ")),t}function A(e,t){return O(e),e.trackPosition&&(t+="\nLine: "+e.line+"\nColumn: "+e.column+"\nChar: "+e.c),t=new Error(t),e.error=t,E(e,"onerror",t),e}function P(e){return e.sawRoot&&!e.closedRoot&&M(e,"Unclosed root tag"),e.state!==x.BEGIN&&e.state!==x.BEGIN_WHITESPACE&&e.state!==x.TEXT&&A(e,"Unexpected end"),O(e),e.c="",e.closed=!0,E(e,"onend"),o.call(e,e.strict,e.opt),e}function M(e,t){if("object"!=typeof e||!(e instanceof o))throw new Error("bad call to strictFail");e.strict&&A(e,t)}function I(e){e.strict||(e.tagName=e.tagName[e.looseCase]());var t=e.tags[e.tags.length-1]||e,n=e.tag={name:e.tagName,attributes:{}};e.opt.xmlns&&(n.ns=t.ns),e.attribList.length=0,C(e,"onopentagstart",n)}function R(e,t){var n=e.indexOf(":")<0?["",e]:e.split(":"),i=n[0],r=n[1];return t&&"xmlns"===e&&(i="xmlns",r=""),{prefix:i,local:r}}function D(e){if(e.strict||(e.attribName=e.attribName[e.looseCase]()),-1!==e.attribList.indexOf(e.attribName)||e.tag.attributes.hasOwnProperty(e.attribName))e.attribName=e.attribValue="";else{if(e.opt.xmlns){var t=R(e.attribName,!0),n=t.local;if("xmlns"===t.prefix)if("xml"===n&&e.attribValue!==u)M(e,"xml: prefix must be bound to "+u+"\nActual: "+e.attribValue);else if("xmlns"===n&&e.attribValue!==c)M(e,"xmlns: prefix must be bound to "+c+"\nActual: "+e.attribValue);else{var i=e.tag,r=e.tags[e.tags.length-1]||e;i.ns===r.ns&&(i.ns=Object.create(r.ns)),i.ns[n]=e.attribValue}e.attribList.push([e.attribName,e.attribValue])}else e.tag.attributes[e.attribName]=e.attribValue,C(e,"onattribute",{name:e.attribName,value:e.attribValue});e.attribName=e.attribValue=""}}function N(e,t){if(e.opt.xmlns){var n=e.tag,i=R(e.tagName);n.prefix=i.prefix,n.local=i.local,n.uri=n.ns[i.prefix]||"",n.prefix&&!n.uri&&(M(e,"Unbound namespace prefix: "+JSON.stringify(e.tagName)),n.uri=i.prefix),n.ns&&(e.tags[e.tags.length-1]||e).ns!==n.ns&&Object.keys(n.ns).forEach(function(t){C(e,"onopennamespace",{prefix:t,uri:n.ns[t]})});for(var r=0,o=e.attribList.length;r",e.tagName="",void(e.state=x.SCRIPT);C(e,"onscript",e.script),e.script=""}var t=e.tags.length,n=e.tagName;e.strict||(n=n[e.looseCase]());for(var i=n;t--&&e.tags[t].name!==i;)M(e,"Unexpected close tag");if(t<0)return M(e,"Unmatched closing tag: "+e.tagName),e.textNode+="",void(e.state=x.TEXT);e.tagName=n;for(var r=e.tags.length;r-- >t;){var o=e.tag=e.tags.pop();e.tagName=e.tag.name,C(e,"onclosetag",e.tagName);var a={};for(var s in o.ns)a[s]=o.ns[s];e.opt.xmlns&&o.ns!==(e.tags[e.tags.length-1]||e).ns&&Object.keys(o.ns).forEach(function(t){C(e,"onclosenamespace",{prefix:t,uri:o.ns[t]})})}0===t&&(e.closedRoot=!0),e.tagName=e.attribValue=e.attribName="",e.attribList.length=0,e.state=x.TEXT}function j(e){var t,n=e.entity,i=n.toLowerCase(),r="";return e.ENTITIES[n]?e.ENTITIES[n]:e.ENTITIES[i]?e.ENTITIES[i]:("#"===(n=i).charAt(0)&&("x"===n.charAt(1)?(n=n.slice(2),r=(t=parseInt(n,16)).toString(16)):(n=n.slice(1),r=(t=parseInt(n,10)).toString(10))),n=n.replace(/^0+/,""),isNaN(t)||r.toLowerCase()!==n?(M(e,"Invalid character entity"),"&"+e.entity+";"):String.fromCodePoint(t))}function F(e,t){"<"===t?(e.state=x.OPEN_WAKA,e.startTagPosition=e.position):v(t)||(M(e,"Non-whitespace before first tag."),e.textNode=t,e.state=x.TEXT)}function B(e,t){var n="";return t1114111||w(o)!==o)throw RangeError("Invalid code point: "+o);o<=65535?t.push(o):t.push(55296+((o-=65536)>>10),o%1024+56320),(n+1===i||t.length>e)&&(r+=_.apply(null,t),t.length=0)}return r},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:k,configurable:!0,writable:!0}):String.fromCodePoint=k)}(void 0===n?this.sax={}:n)}).call(this)}).call(this,e("buffer").Buffer)},{buffer:6,stream:87,string_decoder:5}],86:[function(e,t,n){(function(e,t){(function(){!function(t,n){"use strict";if(!t.setImmediate){var i,r=1,o={},a=!1,s=t.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(t);u=u&&u.setTimeout?u:t,"[object process]"==={}.toString.call(t.process)?i=function(t){e.nextTick(function(){d(t)})}:function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?(c="setImmediate$"+Math.random()+"$",l=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(c)&&d(+e.data.slice(c.length))},t.addEventListener?t.addEventListener("message",l,!1):t.attachEvent("onmessage",l),i=function(e){t.postMessage(c+e,"*")}):t.MessageChannel?function(){var e=new MessageChannel;e.port1.onmessage=function(e){d(e.data)},i=function(t){e.port2.postMessage(t)}}():s&&"onreadystatechange"in s.createElement("script")?function(){var e=s.documentElement;i=function(t){var n=s.createElement("script");n.onreadystatechange=function(){d(t),n.onreadystatechange=null,e.removeChild(n),n=null},e.appendChild(n)}}():i=function(e){setTimeout(d,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n.setImmediate="function"==typeof t?t:function(e){var t=u++,i=!(arguments.length<2)&&a.call(arguments,1);return s[t]=!0,r(function(){s[t]&&(i?e.apply(null,i):e.call(null),n.clearImmediate(t))}),t},n.clearImmediate="function"==typeof i?i:function(e){delete s[e]}}).call(this)}).call(this,e("timers").setImmediate,e("timers").clearImmediate)},{"process/browser.js":44,timers:89}],90:[function(e,t,n){(function(e){(function(){function n(t){try{if(!e.localStorage)return!1}catch(i){return!1}var n=e.localStorage[t];return null!=n&&"true"===String(n).toLowerCase()}t.exports=function(e,t){if(n("noDeprecation"))return e;var i=!1;return function(){if(!i){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),i=!0}return e.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],91:[function(e,t,n){"use strict";t.exports=function(e){e.prototype[Symbol.iterator]=regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t=this.head;case 1:if(!t){e.next=7;break}return e.next=4,t.value;case 4:t=t.next,e.next=1;break;case 7:case"end":return e.stop()}},e,this)})}},{}],92:[function(e,t,n){"use strict";function i(e){var t=this;if(t instanceof i||(t=new i),t.tail=null,t.head=null,t.length=0,e&&"function"==typeof e.forEach)e.forEach(function(e){t.push(e)});else if(arguments.length>0)for(var n=0,r=arguments.length;n1)n=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,n=this.head.value}for(var r=0;null!==i;r++)n=e(n,i.value,r),i=i.next;return n},i.prototype.reduceReverse=function(e,t){var n,i=this.tail;if(arguments.length>1)n=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,n=this.tail.value}for(var r=this.length-1;null!==i;r--)n=e(n,i.value,r),i=i.prev;return n},i.prototype.toArray=function(){for(var e=new Array(this.length),t=0,n=this.head;null!==n;t++)e[t]=n.value,n=n.next;return e},i.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,n=this.tail;null!==n;t++)e[t]=n.value,n=n.prev;return e},i.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var n=new i;if(tthis.length&&(t=this.length);for(var r=0,o=this.head;null!==o&&rthis.length&&(t=this.length);for(var r=this.length,o=this.tail;null!==o&&r>t;r--)o=o.prev;for(;null!==o&&r>e;r--,o=o.prev)n.push(o.value);return n},i.prototype.splice=function(e,t){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,i=this.head;null!==i&&n is not a method!");return{configurable:i.boolTrue,get:function(){var e=n.value.bind(this);return Object.defineProperty(this,t,{value:e,configurable:i.boolTrue,writable:i.boolTrue}),e}}}t.ak=r,t.ZP=r},97266:function(e,t,n){e.exports={ResizeSensor:n(69835),ElementQueries:n(54845)}},54845:function(e,t,n){"use strict";var i,r,o;"undefined"!=typeof window&&window,r=[n(69835)],void 0!==(o="function"==typeof(i=function(e){var t=function(){var t,n={},i=[];function r(e){e||(e=document.documentElement);var t=window.getComputedStyle(e,null).fontSize;return parseFloat(t)||16}function o(e,t){var n=t.split(/\d/),i=n[n.length-1];switch(t=parseFloat(t),i){case"px":return t;case"em":return t*r(e);case"rem":return t*r();case"vw":return t*document.documentElement.clientWidth/100;case"vh":return t*document.documentElement.clientHeight/100;case"vmin":case"vmax":var o=document.documentElement.clientWidth/100,a=document.documentElement.clientHeight/100;return t*(0,Math["vmin"===i?"min":"max"])(o,a);default:return t}}function a(e,t){this.element=e;var i,r,a,s,u,c,l,h,d=["min-width","min-height","max-width","max-height"];this.call=function(){for(i in a=function(e){if(!e.getBoundingClientRect)return{width:e.offsetWidth,height:e.offsetHeight};var t=e.getBoundingClientRect();return{width:Math.round(t.width),height:Math.round(t.height)}}(this.element),c={},n[t])!n[t].hasOwnProperty(i)||(s=o(this.element,(r=n[t][i]).value),u="width"===r.property?a.width:a.height,l="","min"===r.mode&&u>=s&&(l+=r.value),"max"===r.mode&&u<=s&&(l+=r.value),c[h=r.mode+"-"+r.property]||(c[h]=""),l&&-1===(" "+c[h]+" ").indexOf(" "+l+" ")&&(c[h]+=" "+l));for(var e in d)!d.hasOwnProperty(e)||(c[d[e]]?this.element.setAttribute(d[e],c[d[e]].substr(1)):this.element.removeAttribute(d[e]))}}function s(t,n){t.elementQueriesSetupInformation||(t.elementQueriesSetupInformation=new a(t,n)),t.elementQueriesSensor||(t.elementQueriesSensor=new e(t,function(){t.elementQueriesSetupInformation.call()}))}function u(e,r,o,a){if(void 0===n[e]){n[e]=[];var s=i.length;t.innerHTML+="\n"+e+" {animation: 0.1s element-queries;}",t.innerHTML+="\n"+e+" > .resize-sensor {min-width: "+s+"px;}",i.push(e)}n[e].push({mode:r,property:o,value:a})}function c(e){var t;if(document.querySelectorAll&&(t=e?e.querySelectorAll.bind(e):document.querySelectorAll.bind(document)),!t&&"undefined"!=typeof $$&&(t=$$),!t&&"undefined"!=typeof jQuery&&(t=jQuery),!t)throw"No document.querySelectorAll, jQuery or Mootools's $$ found.";return t}function l(t){var n=[],i=[],r=[],o=0,a=-1,s=[];for(var u in t.children)if(t.children.hasOwnProperty(u)&&t.children[u].tagName&&"img"===t.children[u].tagName.toLowerCase()){n.push(t.children[u]);var c=t.children[u].getAttribute("min-width")||t.children[u].getAttribute("data-min-width"),l=t.children[u].getAttribute("data-src")||t.children[u].getAttribute("url");r.push(l),i.push({minWidth:c}),c?t.children[u].style.display="none":(o=n.length-1,t.children[u].style.display="block")}function h(){var e,u=!1;for(e in n)!n.hasOwnProperty(e)||i[e].minWidth&&t.offsetWidth>i[e].minWidth&&(u=e);if(u||(u=o),a!==u)if(s[u])n[a].style.display="none",n[u].style.display="block",a=u;else{var c=new Image;c.onload=function(){n[u].src=r[u],n[a].style.display="none",n[u].style.display="block",s[u]=!0,a=u},c.src=r[u]}else n[u].src=r[u]}a=o,t.resizeSensorInstance=new e(t,h),h()}var h=/,?[\s\t]*([^,\n]*?)((?:\[[\s\t]*?(?:min|max)-(?:width|height)[\s\t]*?[~$\^]?=[\s\t]*?"[^"]*?"[\s\t]*?])+)([^,\n\s\{]*)/gim,d=/\[[\s\t]*?(min|max)-(width|height)[\s\t]*?[~$\^]?=[\s\t]*?"([^"]*?)"[\s\t]*?]/gim;function f(e){var t,n,i,r;for(e=e.replace(/'/g,'"');null!==(t=h.exec(e));)for(n=t[1]+t[3],i=t[2];null!==(r=d.exec(i));)u(n,r[1],r[2],r[3])}function p(e){var t="";if(e)if("string"==typeof e)(-1!==(e=e.toLowerCase()).indexOf("min-width")||-1!==e.indexOf("max-width"))&&f(e);else for(var n=0,i=e.length;n img, [data-responsive-image] {overflow: hidden; padding: 0; } [responsive-image] > img, [data-responsive-image] > img {width: 100%;}",t.innerHTML+="\n@keyframes element-queries { 0% { visibility: inherit; } }",document.getElementsByTagName("head")[0].appendChild(t),v=!0);for(var r=0,o=document.styleSheets.length;r0&&a.length>r&&!a.warned){a.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=a.length,console&&console.warn&&console.warn(s)}return e}function C(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function O(e,t,n){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},r=C.bind(i);return r.listener=n,i.wrapFn=r,r}function T(e,t,n){var i=e._events;if(void 0===i)return[];var r=i[t];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(o=t[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var s=r[e];if(void 0===s)return!1;if("function"==typeof s)b(s,this,t);else{var u=s.length,c=P(s,u);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,r=o;break}if(r<0)return this;0===r?n.shift():function(e,t){for(;t+1=0;i--)this.removeListener(e,t[i]);return this},w.prototype.listeners=function(e){return T(this,e,!0)},w.prototype.rawListeners=function(e){return T(this,e,!1)},w.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):A.call(e,t)},w.prototype.listenerCount=A,w.prototype.eventNames=function(){return this._eventsCount>0?g(this._events):[]},I.prototype.next=function(){if(this.done)return{done:!0};var e=this._next();return e.done&&(this.done=!0),e},"undefined"!=typeof Symbol&&(I.prototype[Symbol.iterator]=function(){return this}),I.of=function(){var e=arguments,t=e.length,n=0;return new I(function(){return n>=t?{done:!0}:{done:!1,value:e[n++]}})},I.empty=function(){var e=new I(null);return e.done=!0,e},I.is=function(e){return e instanceof I||"object"==typeof e&&null!==e&&"function"==typeof e.next};var R=I,D=function(e,t){for(var n,i=arguments.length>1?t:1/0,r=i!==1/0?new Array(i):[],o=0;;){if(o===i)return r;if((n=e.next()).done)return o!==t?r.slice(0,o):r;r[o++]=n.value}},N=function(e){function n(t,n){var i;return(i=e.call(this)||this).name="GraphError",i.message=t||"",i.data=n||{},i}return t(n,e),n}(a(Error)),L=function(e){function n(t,i){var r;return(r=e.call(this,t,i)||this).name="InvalidArgumentsGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(s(r),n.prototype.constructor),r}return t(n,e),n}(N),j=function(e){function n(t,i){var r;return(r=e.call(this,t,i)||this).name="NotFoundGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(s(r),n.prototype.constructor),r}return t(n,e),n}(N),F=function(e){function n(t,i){var r;return(r=e.call(this,t,i)||this).name="UsageGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(s(r),n.prototype.constructor),r}return t(n,e),n}(N);function B(e,t){this.key=e,this.attributes=t,this.inDegree=0,this.outDegree=0,this.undirectedDegree=0,this.directedSelfLoops=0,this.undirectedSelfLoops=0,this.in={},this.out={},this.undirected={}}function V(e,t){this.key=e,this.attributes=t,this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}}function z(e,t){this.key=e,this.attributes=t,this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}}function U(e,t,n,i,r,o){this.key=t,this.attributes=o,this.undirected=e,this.source=i,this.target=r,this.generatedKey=n}function H(e,t,n,i,r,o,a){var s,u,c="out",l="in";if(t&&(c=l="undirected"),e.multi){if(void 0===(u=(s=o[c])[r])&&(u=new Set,s[r]=u),u.add(n),i===r&&t)return;void 0===(s=a[l])[i]&&(s[i]=u)}else{if(o[c][r]=n,i===r&&t)return;a[l][i]=n}}function G(e,t,n){var i=e.multi,r=n.source,o=n.target,a=r.key,s=o.key,u=r[t?"undirected":"out"],c=t?"undirected":"in";if(s in u)if(i){var l=u[s];1===l.size?(delete u[s],delete o[c][a]):l.delete(n)}else delete u[s];i||delete o[c][a]}V.prototype.upgradeToMixed=function(){this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}},z.prototype.upgradeToMixed=function(){this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}};var W=[{name:function(e){return"get".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return r.attributes[i]}}},{name:function(e){return"get".concat(e,"Attributes")},attacher:function(e,t,n){e.prototype[t]=function(e){var i;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>1){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var r=""+e,o=""+arguments[1];if(!(i=c(this,r,o,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(r,'" - "').concat(o,'").'))}else if(!(i=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&i.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return i.attributes}}},{name:function(e){return"has".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return r.attributes.hasOwnProperty(i)}}},{name:function(e){return"set".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i,r){var o;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var a=""+e,s=""+i;if(i=arguments[2],r=arguments[3],!(o=c(this,a,s,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(a,'" - "').concat(s,'").'))}else if(!(o=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&o.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return o.attributes[i]=r,this.emit("edgeAttributesUpdated",{key:o.key,type:"set",attributes:o.attributes,name:i}),this}}},{name:function(e){return"update".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i,r){var o;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var a=""+e,s=""+i;if(i=arguments[2],r=arguments[3],!(o=c(this,a,s,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(a,'" - "').concat(s,'").'))}else if(!(o=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("function"!=typeof r)throw new L("Graph.".concat(t,": updater should be a function."));if("mixed"!==n&&o.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return o.attributes[i]=r(o.attributes[i]),this.emit("edgeAttributesUpdated",{key:o.key,type:"set",attributes:o.attributes,name:i}),this}}},{name:function(e){return"remove".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return delete r.attributes[i],this.emit("edgeAttributesUpdated",{key:r.key,type:"remove",attributes:r.attributes,name:i}),this}}},{name:function(e){return"replace".concat(e,"Attributes")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(t,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return r.attributes=i,this.emit("edgeAttributesUpdated",{key:r.key,type:"replace",attributes:r.attributes}),this}}},{name:function(e){return"merge".concat(e,"Attributes")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(t,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return u(r.attributes,i),this.emit("edgeAttributesUpdated",{key:r.key,type:"merge",attributes:r.attributes,data:i}),this}}}],q=R,X=function(){var e,t=arguments,n=-1;return new q(function i(){if(!e){if(++n>=t.length)return{done:!0};e=t[n]}var r=e.next();return r.done?(e=null,i()):r})},Y=[{name:"edges",type:"mixed"},{name:"inEdges",type:"directed",direction:"in"},{name:"outEdges",type:"directed",direction:"out"},{name:"inboundEdges",type:"mixed",direction:"in"},{name:"outboundEdges",type:"mixed",direction:"out"},{name:"directedEdges",type:"directed"},{name:"undirectedEdges",type:"undirected"}];function K(e,t){for(var n in t)e.push(t[n].key)}function $(e,t){for(var n in t)t[n].forEach(function(t){return e.push(t.key)})}function Q(e,t,n){for(var i in e)if(i!==n){var r=e[i];t(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey)}}function Z(e,t,n){for(var i in e)i!==n&&e[i].forEach(function(e){return t(e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes,e.undirected,e.generatedKey)})}function J(e,t,n){for(var i in e)if(i!==n){var r=e[i];if(t(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey))return!0}return!1}function ee(e,t,n){var i,r,o,a,s;for(var u in e)if(u!==n)for(i=e[u].values();!0!==(r=i.next()).done;)if(a=(o=r.value).source,t(o.key,o.attributes,a.key,(s=o.target).key,a.attributes,s.attributes,o.undirected,o.generatedKey))return!0;return!1}function te(e,t){var n=Object.keys(e),i=n.length,r=null,o=0;return new R(function a(){var s;if(r){var u=r.next();if(u.done)return r=null,o++,a();s=u.value}else{if(o>=i)return{done:!0};var c=n[o];if(c===t)return o++,a();if((s=e[c])instanceof Set)return r=s.values(),a();o++}return{done:!1,value:[s.key,s.attributes,s.source.key,s.target.key,s.source.attributes,s.target.attributes]}})}function ne(e,t,n){var i=t[n];i&&e.push(i.key)}function ie(e,t,n){var i=t[n];i&&i.forEach(function(t){return e.push(t.key)})}function re(e,t,n){var i=e[t];if(i){var r=i.source,o=i.target;n(i.key,i.attributes,r.key,o.key,r.attributes,o.attributes,i.undirected,i.generatedKey)}}function oe(e,t,n){var i=e[t];i&&i.forEach(function(e){return n(e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes,e.undirected,e.generatedKey)})}function ae(e,t,n){var i=e[t];if(i){var r=i.source,o=i.target;return n(i.key,i.attributes,r.key,o.key,r.attributes,o.attributes,i.undirected,i.generatedKey)}}function se(e,t,n){var i=e[t];if(i){for(var r,o,a=i.values();!0!==(r=a.next()).done;)if(n((o=r.value).key,o.attributes,o.source.key,o.target.key,o.source.attributes,o.target.attributes,o.undirected,o.generatedKey))return!0;return!1}}function ue(e,t){var n=e[t];if(n instanceof Set){var i=n.values();return new R(function(){var e=i.next();if(e.done)return e;var t=e.value;return{done:!1,value:[t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes]}})}return R.of([n.key,n.attributes,n.source.key,n.target.key,n.source.attributes,n.target.attributes])}function ce(e,t){if(0===e.size)return[];if("mixed"===t||t===e.type)return"function"==typeof Array.from?Array.from(e._edges.keys()):D(e._edges.keys(),e._edges.size);for(var n,i,r=new Array("undirected"===t?e.undirectedSize:e.directedSize),o="undirected"===t,a=e._edges.values(),s=0;!0!==(n=a.next()).done;)(i=n.value).undirected===o&&(r[s++]=i.key);return r}function le(e,t,n){if(0!==e.size)for(var i,r,o="mixed"!==t&&t!==e.type,a="undirected"===t,s=e._edges.values();!0!==(i=s.next()).done;)if(r=i.value,!o||r.undirected===a){var u=r.source,c=r.target;n(r.key,r.attributes,u.key,c.key,u.attributes,c.attributes,r.undirected,r.generatedKey)}}function he(e,t,n){if(0!==e.size)for(var i,r,o="mixed"!==t&&t!==e.type,a="undirected"===t,s=e._edges.values();!0!==(i=s.next()).done;)if(r=i.value,!o||r.undirected===a){var u=r.source,c=r.target;if(n(r.key,r.attributes,u.key,c.key,u.attributes,c.attributes,r.undirected,r.generatedKey))break}}function de(e,t){if(0===e.size)return R.empty();var n="mixed"!==t&&t!==e.type,i="undirected"===t,r=e._edges.values();return new R(function(){for(var e,t;;){if((e=r.next()).done)return e;if(t=e.value,!n||t.undirected===i)break}return{value:[t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes],done:!1}})}function fe(e,t,n,i){var r=[],o=e?$:K;return"undirected"!==t&&("out"!==n&&o(r,i.in),"in"!==n&&o(r,i.out),!n&&i.directedSelfLoops>0&&r.splice(r.lastIndexOf(i.key),1)),"directed"!==t&&o(r,i.undirected),r}function pe(e,t,n,i,r){var o=e?Z:Q;"undirected"!==t&&("out"!==n&&o(i.in,r),"in"!==n&&o(i.out,r,n?null:i.key)),"directed"!==t&&o(i.undirected,r)}function ve(e,t,n,i,r){var o=e?ee:J;"undirected"!==t&&("out"!==n&&o(i.in,r)||"in"!==n&&o(i.out,r,n?null:i.key))||"directed"===t||o(i.undirected,r)}function ge(e,t,n){var i=R.empty();return"undirected"!==e&&("out"!==t&&void 0!==n.in&&(i=X(i,te(n.in))),"in"!==t&&void 0!==n.out&&(i=X(i,te(n.out,t?null:n.key)))),"directed"!==e&&void 0!==n.undirected&&(i=X(i,te(n.undirected))),i}function me(e,t,n,i,r){var o=t?ie:ne,a=[];return"undirected"!==e&&(void 0!==i.in&&"out"!==n&&o(a,i.in,r),void 0!==i.out&&"in"!==n&&o(a,i.out,r),!n&&i.directedSelfLoops>0&&a.splice(a.lastIndexOf(i.key),1)),"directed"!==e&&void 0!==i.undirected&&o(a,i.undirected,r),a}function ye(e,t,n,i,r,o){var a=t?oe:re;"undirected"!==e&&(void 0!==i.in&&"out"!==n&&a(i.in,r,o),i.key!==r&&void 0!==i.out&&"in"!==n&&a(i.out,r,o)),"directed"!==e&&void 0!==i.undirected&&a(i.undirected,r,o)}function be(e,t,n,i,r,o){var a=t?se:ae;"undirected"!==e&&(void 0!==i.in&&"out"!==n&&a(i.in,r,o)||i.key!==r&&void 0!==i.out&&"in"!==n&&a(i.out,r,o,n?null:i.key))||"directed"===e||void 0===i.undirected||a(i.undirected,r,o)}function _e(e,t,n,i){var r=R.empty();return"undirected"!==e&&(void 0!==n.in&&"out"!==t&&i in n.in&&(r=X(r,ue(n.in,i))),void 0!==n.out&&"in"!==t&&i in n.out&&(r=X(r,ue(n.out,i)))),"directed"!==e&&void 0!==n.undirected&&i in n.undirected&&(r=X(r,ue(n.undirected,i))),r}var we=[{name:"neighbors",type:"mixed"},{name:"inNeighbors",type:"directed",direction:"in"},{name:"outNeighbors",type:"directed",direction:"out"},{name:"inboundNeighbors",type:"mixed",direction:"in"},{name:"outboundNeighbors",type:"mixed",direction:"out"},{name:"directedNeighbors",type:"directed"},{name:"undirectedNeighbors",type:"undirected"}];function ke(e,t){if(void 0!==t)for(var n in t)e.add(n)}function xe(e,t,n){if("mixed"!==e){if("undirected"===e)return Object.keys(n.undirected);if("string"==typeof t)return Object.keys(n[t])}var i=new Set;return"undirected"!==e&&("out"!==t&&ke(i,n.in),"in"!==t&&ke(i,n.out)),"directed"!==e&&ke(i,n.undirected),D(i.values(),i.size)}function Se(e,t,n){for(var i in t){var r=t[i];r instanceof Set&&(r=r.values().next().value);var o=r.source,a=o===e?r.target:o;n(a.key,a.attributes)}}function Ee(e,t,n,i){for(var r in n){var o=n[r];o instanceof Set&&(o=o.values().next().value);var a=o.source,s=a===t?o.target:a;e.has(s.key)||(e.add(s.key),i(s.key,s.attributes))}}function Ce(e,t,n){for(var i in t){var r=t[i];r instanceof Set&&(r=r.values().next().value);var o=r.source,a=o===e?r.target:o;if(n(a.key,a.attributes))return!0}return!1}function Oe(e,t,n,i){for(var r in n){var o=n[r];o instanceof Set&&(o=o.values().next().value);var a=o.source,s=a===t?o.target:a;if(!e.has(s.key)&&(e.add(s.key),i(s.key,s.attributes)))return!0}return!1}function Te(e,t){var n=Object.keys(t),i=n.length,r=0;return new R(function(){if(r>=i)return{done:!0};var o=t[n[r++]];o instanceof Set&&(o=o.values().next().value);var a=o.source,s=a===e?o.target:a;return{done:!1,value:[s.key,s.attributes]}})}function Ae(e,t,n){var i=Object.keys(n),r=i.length,o=0;return new R(function a(){if(o>=r)return{done:!0};var s=n[i[o++]];s instanceof Set&&(s=s.values().next().value);var u=s.source,c=u===t?s.target:u;return e.has(c.key)?a():(e.add(c.key),{done:!1,value:[c.key,c.attributes]})})}function Pe(e,t,n,i,r){var o=e._nodes.get(i);if("undirected"!==t){if("out"!==n&&void 0!==o.in)for(var a in o.in)if(a===r)return!0;if("in"!==n&&void 0!==o.out)for(var s in o.out)if(s===r)return!0}if("directed"!==t&&void 0!==o.undirected)for(var u in o.undirected)if(u===r)return!0;return!1}function Me(e,t,n){for(var i,r,o,a,s,u,c,l=t._nodes.values(),h=t.type;!0!==(i=l.next()).done;){if(r=i.value,"undirected"!==h)for(o in a=r.out)if(u=(s=a[o]).target,c=n(r.key,u.key,r.attributes,u.attributes,s.key,s.attributes,s.undirected,s.generatedKey),e&&c)return;if("directed"!==h)for(o in a=r.undirected)if((u=(s=a[o]).target).key!==o&&(u=s.source),c=n(r.key,u.key,r.attributes,u.attributes,s.key,s.attributes,s.undirected,s.generatedKey),e&&c)return}}function Ie(e,t,n){for(var i,r,o,a,s,u,c,l,h,d=t._nodes.values(),f=t.type;!0!==(i=d.next()).done;){if(r=i.value,"undirected"!==f)for(o in u=r.out)for(a=u[o].values();!0!==(s=a.next()).done;)if(l=(c=s.value).target,h=n(r.key,l.key,r.attributes,l.attributes,c.key,c.attributes,c.undirected,c.generatedKey),e&&h)return;if("directed"!==f)for(o in u=r.undirected)for(a=u[o].values();!0!==(s=a.next()).done;)if((l=(c=s.value).target).key!==o&&(l=c.source),h=n(r.key,l.key,r.attributes,l.attributes,c.key,c.attributes,c.undirected,c.generatedKey),e&&h)return}}function Re(e,t){var n={key:e};return d(t.attributes)||(n.attributes=u({},t.attributes)),n}function De(e,t){var n={source:t.source.key,target:t.target.key};return t.generatedKey||(n.key=e),d(t.attributes)||(n.attributes=u({},t.attributes)),t.undirected&&(n.undirected=!0),n}function Ne(e){return h(e)?"key"in e?!("attributes"in e)||h(e.attributes)&&null!==e.attributes?null:"invalid-attributes":"no-key":"not-object"}function Le(e){return h(e)?"source"in e?"target"in e?!("attributes"in e)||h(e.attributes)&&null!==e.attributes?"undirected"in e&&"boolean"!=typeof e.undirected?"invalid-undirected":null:"invalid-attributes":"no-target":"no-source":"not-object"}var je=new Set(["directed","undirected","mixed"]),Fe=new Set(["domain","_events","_eventsCount","_maxListeners"]),Be={allowSelfLoops:!0,edgeKeyGenerator:null,multi:!1,type:"mixed"};function Ve(e,t,n){var i=new e.NodeDataClass(t,n);return e._nodes.set(t,i),e.emit("nodeAdded",{key:t,attributes:n}),i}function ze(e,t,n,i,r,o,a,s){if(!i&&"undirected"===e.type)throw new F("Graph.".concat(t,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===e.type)throw new F("Graph.".concat(t,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(s&&!h(s))throw new L("Graph.".concat(t,': invalid attributes. Expecting an object but got "').concat(s,'"'));if(o=""+o,a=""+a,s=s||{},!e.allowSelfLoops&&o===a)throw new F("Graph.".concat(t,': source & target are the same ("').concat(o,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var u=e._nodes.get(o),c=e._nodes.get(a);if(!u)throw new j("Graph.".concat(t,': source node "').concat(o,'" not found.'));if(!c)throw new j("Graph.".concat(t,': target node "').concat(a,'" not found.'));var l={key:null,undirected:i,source:o,target:a,attributes:s};if(n&&(r=e._edgeKeyGenerator(l)),e._edges.has(r=""+r))throw new F("Graph.".concat(t,': the "').concat(r,'" edge already exists in the graph.'));if(!e.multi&&(i?void 0!==u.undirected[a]:void 0!==u.out[a]))throw new F("Graph.".concat(t,': an edge linking "').concat(o,'" to "').concat(a,"\" already exists. If you really want to add multiple edges linking those nodes, you should create a multi graph by using the 'multi' option."));var d=new U(i,r,n,u,c,s);return e._edges.set(r,d),o===a?i?(u.undirectedSelfLoops++,e._undirectedSelfLoopCount++):(u.directedSelfLoops++,e._directedSelfLoopCount++):i?(u.undirectedDegree++,c.undirectedDegree++):(u.outDegree++,c.inDegree++),H(e,i,d,o,a,u,c),i?e._undirectedSize++:e._directedSize++,l.key=r,e.emit("edgeAdded",l),r}function Ue(e,t,n,i,r,o,a,s,c){if(!i&&"undirected"===e.type)throw new F("Graph.".concat(t,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===e.type)throw new F("Graph.".concat(t,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(s)if(c){if("function"!=typeof s)throw new L("Graph.".concat(t,': invalid updater function. Expecting a function but got "').concat(s,'"'))}else if(!h(s))throw new L("Graph.".concat(t,': invalid attributes. Expecting an object but got "').concat(s,'"'));var l;if(o=""+o,a=""+a,c&&(l=s,s=void 0),!e.allowSelfLoops&&o===a)throw new F("Graph.".concat(t,': source & target are the same ("').concat(o,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var d,f,p=e._nodes.get(o),v=e._nodes.get(a);if(!n&&(d=e._edges.get(r))){if(d.source.key!==o||d.target.key!==a||i&&(d.source.key!==a||d.target.key!==o))throw new F("Graph.".concat(t,': inconsistency detected when attempting to merge the "').concat(r,'" edge with "').concat(o,'" source & "').concat(a,'" target vs. ("').concat(d.source.key,'", "').concat(d.target.key,'").'));f=d}if(f||e.multi||!p||(f=i?p.undirected[a]:p.out[a]),f)return(c?l:s)?(c?(f.attributes=l(f.attributes),e.emit("edgeAttributesUpdated",{type:"replace",key:f.key,attributes:f.attributes})):(u(f.attributes,s),e.emit("edgeAttributesUpdated",{type:"merge",key:f.key,attributes:f.attributes,data:s})),f.key):f.key;s=s||{},c&&l&&(s=l(s));var g={key:null,undirected:i,source:o,target:a,attributes:s};if(n&&(r=e._edgeKeyGenerator(g)),e._edges.has(r=""+r))throw new F("Graph.".concat(t,': the "').concat(r,'" edge already exists in the graph.'));return p||(p=Ve(e,o,{}),o===a&&(v=p)),v||(v=Ve(e,a,{})),d=new U(i,r,n,p,v,s),e._edges.set(r,d),o===a?i?(p.undirectedSelfLoops++,e._undirectedSelfLoopCount++):(p.directedSelfLoops++,e._directedSelfLoopCount++):i?(p.undirectedDegree++,v.undirectedDegree++):(p.outDegree++,v.inDegree++),H(e,i,d,o,a,p,v),i?e._undirectedSize++:e._directedSize++,g.key=r,e.emit("edgeAdded",g),r}var He,Ge=function(e){function n(t){var n;if(n=e.call(this)||this,(t=u({},Be,t)).edgeKeyGenerator&&"function"!=typeof t.edgeKeyGenerator)throw new L("Graph.constructor: invalid 'edgeKeyGenerator' option. Expecting a function but got \"".concat(t.edgeKeyGenerator,'".'));if("boolean"!=typeof t.multi)throw new L("Graph.constructor: invalid 'multi' option. Expecting a boolean but got \"".concat(t.multi,'".'));if(!je.has(t.type))throw new L('Graph.constructor: invalid \'type\' option. Should be one of "mixed", "directed" or "undirected" but got "'.concat(t.type,'".'));if("boolean"!=typeof t.allowSelfLoops)throw new L("Graph.constructor: invalid 'allowSelfLoops' option. Expecting a boolean but got \"".concat(t.allowSelfLoops,'".'));var i,r="mixed"===t.type?B:"directed"===t.type?V:z;return f(s(n),"NodeDataClass",r),f(s(n),"_attributes",{}),f(s(n),"_nodes",new Map),f(s(n),"_edges",new Map),f(s(n),"_directedSize",0),f(s(n),"_undirectedSize",0),f(s(n),"_directedSelfLoopCount",0),f(s(n),"_undirectedSelfLoopCount",0),f(s(n),"_edgeKeyGenerator",t.edgeKeyGenerator||(i=0,function(){return i++})),f(s(n),"_options",t),Fe.forEach(function(e){return f(s(n),e,n[e])}),p(s(n),"order",function(){return n._nodes.size}),p(s(n),"size",function(){return n._edges.size}),p(s(n),"directedSize",function(){return n._directedSize}),p(s(n),"undirectedSize",function(){return n._undirectedSize}),p(s(n),"selfLoopCount",function(){return n._directedSelfLoopCount+n._undirectedSelfLoopCount}),p(s(n),"directedSelfLoopCount",function(){return n._directedSelfLoopCount}),p(s(n),"undirectedSelfLoopCount",function(){return n._undirectedSelfLoopCount}),p(s(n),"multi",n._options.multi),p(s(n),"type",n._options.type),p(s(n),"allowSelfLoops",n._options.allowSelfLoops),p(s(n),"implementation",function(){return"graphology"}),n}t(n,e);var i=n.prototype;return i.hasNode=function(e){return this._nodes.has(""+e)},i.hasDirectedEdge=function(e,t){if("undirected"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+e);return!!n&&!n.undirected}if(2===arguments.length){t=""+t;var i=this._nodes.get(e=""+e);if(!i)return!1;var r=i.out[t];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasUndirectedEdge=function(e,t){if("directed"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+e);return!!n&&n.undirected}if(2===arguments.length){t=""+t;var i=this._nodes.get(e=""+e);if(!i)return!1;var r=i.undirected[t];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasEdge=function(e,t){if(1===arguments.length)return this._edges.has(""+e);if(2===arguments.length){t=""+t;var n=this._nodes.get(e=""+e);if(!n)return!1;var i=void 0!==n.out&&n.out[t];return i||(i=void 0!==n.undirected&&n.undirected[t]),!(!i||this.multi&&!i.size)}throw new L("Graph.hasEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.directedEdge=function(e,t){if("undirected"!==this.type){if(e=""+e,t=""+t,this.multi)throw new F("Graph.directedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.directedEdges instead.");var n=this._nodes.get(e);if(!n)throw new j('Graph.directedEdge: could not find the "'.concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j('Graph.directedEdge: could not find the "'.concat(t,'" target node in the graph.'));var i=n.out&&n.out[t]||void 0;return i?i.key:void 0}},i.undirectedEdge=function(e,t){if("directed"!==this.type){if(e=""+e,t=""+t,this.multi)throw new F("Graph.undirectedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.undirectedEdges instead.");var n=this._nodes.get(e);if(!n)throw new j('Graph.undirectedEdge: could not find the "'.concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j('Graph.undirectedEdge: could not find the "'.concat(t,'" target node in the graph.'));var i=n.undirected&&n.undirected[t]||void 0;return i?i.key:void 0}},i.edge=function(e,t){if(this.multi)throw new F("Graph.edge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.edges instead.");t=""+t;var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.edge: could not find the "'.concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j('Graph.edge: could not find the "'.concat(t,'" target node in the graph.'));var i=n.out&&n.out[t]||n.undirected&&n.undirected[t]||void 0;if(i)return i.key},i.inDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.inDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.inDegree: could not find the "'.concat(e,'" node in the graph.'));return"undirected"===this.type?0:n.inDegree+(t?n.directedSelfLoops:0)},i.outDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.outDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.outDegree: could not find the "'.concat(e,'" node in the graph.'));return"undirected"===this.type?0:n.outDegree+(t?n.directedSelfLoops:0)},i.directedDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.directedDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.directedDegree: could not find the "'.concat(e,'" node in the graph.'));if("undirected"===this.type)return 0;var i=t?n.directedSelfLoops:0;return n.inDegree+i+(n.outDegree+i)},i.undirectedDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.undirectedDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.undirectedDegree: could not find the "'.concat(e,'" node in the graph.'));return"directed"===this.type?0:n.undirectedDegree+2*(t?n.undirectedSelfLoops:0)},i.degree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.degree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.degree: could not find the "'.concat(e,'" node in the graph.'));var i=0,r=0;return"directed"!==this.type&&(t&&(r=n.undirectedSelfLoops),i+=n.undirectedDegree+2*r),"undirected"!==this.type&&(t&&(r=n.directedSelfLoops),i+=n.inDegree+n.outDegree+2*r),i},i.source=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.source: could not find the "'.concat(e,'" edge in the graph.'));return t.source.key},i.target=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.target: could not find the "'.concat(e,'" edge in the graph.'));return t.target.key},i.extremities=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.extremities: could not find the "'.concat(e,'" edge in the graph.'));return[t.source.key,t.target.key]},i.opposite=function(e,t){e=""+e;var n=this._edges.get(t=""+t);if(!n)throw new j('Graph.opposite: could not find the "'.concat(t,'" edge in the graph.'));var i=n.source.key,r=n.target.key;if(e!==i&&e!==r)throw new j('Graph.opposite: the "'.concat(e,'" node is not attached to the "').concat(t,'" edge (').concat(i,", ").concat(r,")."));return e===i?r:i},i.hasExtremity=function(e,t){t=""+t;var n=this._edges.get(e=""+e);if(!n)throw new j('Graph.hasExtremity: could not find the "'.concat(e,'" edge in the graph.'));return n.source.key===t||n.target.key===t},i.isUndirected=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.isUndirected: could not find the "'.concat(e,'" edge in the graph.'));return t.undirected},i.isDirected=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.isDirected: could not find the "'.concat(e,'" edge in the graph.'));return!t.undirected},i.isSelfLoop=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.isSelfLoop: could not find the "'.concat(e,'" edge in the graph.'));return t.source===t.target},i.hasGeneratedKey=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.hasGeneratedKey: could not find the "'.concat(e,'" edge in the graph.'));return t.generatedKey},i.addNode=function(e,t){return function(e,t,n){if(n&&!h(n))throw new L('Graph.addNode: invalid attributes. Expecting an object but got "'.concat(n,'"'));if(n=n||{},e._nodes.has(t=""+t))throw new F('Graph.addNode: the "'.concat(t,'" node already exist in the graph.'));var i=new e.NodeDataClass(t,n);return e._nodes.set(t,i),e.emit("nodeAdded",{key:t,attributes:n}),i}(this,e,t).key},i.mergeNode=function(e,t){if(t&&!h(t))throw new L('Graph.mergeNode: invalid attributes. Expecting an object but got "'.concat(t,'"'));t=t||{};var n=this._nodes.get(e=""+e);return n?(t&&(u(n.attributes,t),this.emit("nodeAttributesUpdated",{type:"merge",key:e,attributes:n.attributes,data:t})),e):(n=new this.NodeDataClass(e,t),this._nodes.set(e,n),this.emit("nodeAdded",{key:e,attributes:t}),e)},i.updateNode=function(e,t){if(t&&"function"!=typeof t)throw new L('Graph.updateNode: invalid updater function. Expecting a function but got "'.concat(t,'"'));var n=this._nodes.get(e=""+e);if(n)return t&&(n.attributes=t(n.attributes),this.emit("nodeAttributesUpdated",{type:"replace",key:e,attributes:n.attributes})),e;var i=t?t({}):{};return n=new this.NodeDataClass(e,i),this._nodes.set(e,n),this.emit("nodeAdded",{key:e,attributes:i}),e},i.dropNode=function(e){var t=this,n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.dropNode: could not find the "'.concat(e,'" node in the graph.'));this.forEachEdge(e,function(e){t.dropEdge(e)}),this._nodes.delete(e),this.emit("nodeDropped",{key:e,attributes:n.attributes})},i.dropEdge=function(e){var t;if(arguments.length>1){var n=""+arguments[0],i=""+arguments[1];if(!(t=c(this,n,i,this.type)))throw new j('Graph.dropEdge: could not find the "'.concat(n,'" -> "').concat(i,'" edge in the graph.'))}else if(!(t=this._edges.get(e=""+e)))throw new j('Graph.dropEdge: could not find the "'.concat(e,'" edge in the graph.'));this._edges.delete(t.key);var r=t.source,o=t.target,a=t.attributes,s=t.undirected;return r===o?s?(r.undirectedSelfLoops--,this._undirectedSelfLoopCount--):(r.directedSelfLoops--,this._directedSelfLoopCount--):s?(r.undirectedDegree--,o.undirectedDegree--):(r.outDegree--,o.inDegree--),G(this,s,t),s?this._undirectedSize--:this._directedSize--,this.emit("edgeDropped",{key:e,attributes:a,source:r.key,target:o.key,undirected:s}),this},i.clear=function(){this._edges.clear(),this._nodes.clear(),this.emit("cleared")},i.clearEdges=function(){this._edges.clear(),this.clearIndex(),this.emit("edgesCleared")},i.getAttribute=function(e){return this._attributes[e]},i.getAttributes=function(){return this._attributes},i.hasAttribute=function(e){return this._attributes.hasOwnProperty(e)},i.setAttribute=function(e,t){return this._attributes[e]=t,this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:e}),this},i.updateAttribute=function(e,t){if("function"!=typeof t)throw new L("Graph.updateAttribute: updater should be a function.");return this._attributes[e]=t(this._attributes[e]),this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:e}),this},i.removeAttribute=function(e){return delete this._attributes[e],this.emit("attributesUpdated",{type:"remove",attributes:this._attributes,name:e}),this},i.replaceAttributes=function(e){if(!h(e))throw new L("Graph.replaceAttributes: provided attributes are not a plain object.");return this._attributes=e,this.emit("attributesUpdated",{type:"replace",attributes:this._attributes}),this},i.mergeAttributes=function(e){if(!h(e))throw new L("Graph.mergeAttributes: provided attributes are not a plain object.");return u(this._attributes,e),this.emit("attributesUpdated",{type:"merge",attributes:this._attributes,data:e}),this},i.getNodeAttribute=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.getNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));return n.attributes[t]},i.getNodeAttributes=function(e){var t=this._nodes.get(e=""+e);if(!t)throw new j('Graph.getNodeAttributes: could not find the "'.concat(e,'" node in the graph.'));return t.attributes},i.hasNodeAttribute=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));return n.attributes.hasOwnProperty(t)},i.setNodeAttribute=function(e,t,n){var i=this._nodes.get(e=""+e);if(!i)throw new j('Graph.setNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.setNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or value, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");return i.attributes[t]=n,this.emit("nodeAttributesUpdated",{key:e,type:"set",attributes:i.attributes,name:t}),this},i.updateNodeAttribute=function(e,t,n){var i=this._nodes.get(e=""+e);if(!i)throw new j('Graph.updateNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.updateNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or updater, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");if("function"!=typeof n)throw new L("Graph.updateAttribute: updater should be a function.");var r=i.attributes,o=n(r[t]);return r[t]=o,this.emit("nodeAttributesUpdated",{key:e,type:"set",attributes:i.attributes,name:t}),this},i.removeNodeAttribute=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));return delete n.attributes[t],this.emit("nodeAttributesUpdated",{key:e,type:"remove",attributes:n.attributes,name:t}),this},i.replaceNodeAttributes=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.replaceNodeAttributes: could not find the "'.concat(e,'" node in the graph.'));if(!h(t))throw new L("Graph.replaceNodeAttributes: provided attributes are not a plain object.");return n.attributes=t,this.emit("nodeAttributesUpdated",{key:e,type:"replace",attributes:n.attributes}),this},i.mergeNodeAttributes=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.mergeNodeAttributes: could not find the "'.concat(e,'" node in the graph.'));if(!h(t))throw new L("Graph.mergeNodeAttributes: provided attributes are not a plain object.");return u(n.attributes,t),this.emit("nodeAttributesUpdated",{key:e,type:"merge",attributes:n.attributes,data:t}),this},i.updateEachNodeAttributes=function(e,t){if("function"!=typeof e)throw new L("Graph.updateEachNodeAttributes: expecting an updater function.");if(t&&!v(t))throw new L("Graph.updateEachNodeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._nodes.values();!0!==(n=r.next()).done;)(i=n.value).attributes=e(i.key,i.attributes);this.emit("eachNodeAttributesUpdated",{hints:t||null})},i.updateEachEdgeAttributes=function(e,t){if("function"!=typeof e)throw new L("Graph.updateEachEdgeAttributes: expecting an updater function.");if(t&&!v(t))throw new L("Graph.updateEachEdgeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._edges.values();!0!==(n=r.next()).done;)(i=n.value).attributes=e(i.key,i.attributes);this.emit("eachEdgeAttributesUpdated",{hints:t||null})},i.forEach=function(e){if("function"!=typeof e)throw new L("Graph.forEach: expecting a callback.");this.multi?Ie(!1,this,e):Me(!1,this,e)},i.forEachUntil=function(e){if("function"!=typeof e)throw new L("Graph.forEach: expecting a callback.");this.multi?Ie(!0,this,e):Me(!0,this,e)},i.adjacency=function(){return this.multi?(f=(u=this)._nodes.values(),p=u.type,v="outer",g=null,new R(function e(){var t;if("outer"===v)return!0===(t=f.next()).done?t:(c=t.value,v="directed",e());if("directed"===v)return"undirected"===p?(v="undirected",e()):(h=c.out,l=Object.keys(c.out),d=0,v="inner-directed",e());if("undirected"===v){if("directed"===p)return v="outer",e();h=c.undirected,l=Object.keys(c.undirected),d=0,v="inner-undirected"}if(!g&&d>=l.length)return v="inner-undirected"===v?"outer":"undirected",e();if(!g){var n=l[d++];return g=h[n].values(),e()}if((t=g.next()).done)return g=null,e();var i=t.value,r=i.target;return"inner-undirected"===v&&r.key===c.key&&(r=i.source),{done:!1,value:[c.key,r.key,c.attributes,r.attributes,i.key,i.attributes]}})):(o=(e=this)._nodes.values(),a=e.type,s="outer",new R(function e(){var u;if("outer"===s)return!0===(u=o.next()).done?u:(t=u.value,s="directed",e());if("directed"===s)return"undirected"===a?(s="undirected",e()):(i=t.out,n=Object.keys(t.out),r=0,s="inner-directed",e());if("undirected"===s){if("directed"===a)return s="outer",e();i=t.undirected,n=Object.keys(t.undirected),r=0,s="inner-undirected"}if(r>=n.length)return s="inner-undirected"===s?"outer":"undirected",e();var c=n[r++],l=i[c],h=l.target;return"inner-undirected"===s&&h.key===t.key&&(h=l.source),{done:!1,value:[t.key,h.key,t.attributes,h.attributes,l.key,l.attributes]}}));var e,t,n,i,r,o,a,s,u,c,l,h,d,f,p,v,g},i.nodes=function(){return"function"==typeof Array.from?Array.from(this._nodes.keys()):D(this._nodes.keys(),this._nodes.size)},i.forEachNode=function(e){if("function"!=typeof e)throw new L("Graph.forEachNode: expecting a callback.");this._nodes.forEach(function(t,n){e(n,t.attributes)})},i.forEachNodeUntil=function(e){if("function"!=typeof e)throw new L("Graph.forEachNode: expecting a callback.");for(var t,n,i=this._nodes.values();!0!==(t=i.next())&&!e((n=t.value).key,n.attributes););},i.nodeEntries=function(){var e=this._nodes.values();return new R(function(){var t=e.next();if(t.done)return t;var n=t.value;return{value:[n.key,n.attributes],done:!1}})},i.exportNode=function(e){var t=this._nodes.get(e=""+e);if(!t)throw new j('Graph.exportNode: could not find the "'.concat(e,'" node in the graph.'));return Re(e,t)},i.exportEdge=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.exportEdge: could not find the "'.concat(e,'" edge in the graph.'));return De(e,t)},i.export=function(){var e=new Array(this._nodes.size),t=0;this._nodes.forEach(function(n,i){e[t++]=Re(i,n)});var n=new Array(this._edges.size);return t=0,this._edges.forEach(function(e,i){n[t++]=De(i,e)}),{attributes:this.getAttributes(),nodes:e,edges:n,options:{type:this.type,multi:this.multi,allowSelfLoops:this.allowSelfLoops}}},i.importNode=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Ne(e);if(n){if("not-object"===n)throw new L('Graph.importNode: invalid serialized node. A serialized node should be a plain object with at least a "key" property.');if("no-key"===n)throw new L("Graph.importNode: no key provided.");if("invalid-attributes"===n)throw new L("Graph.importNode: invalid attributes. Attributes should be a plain object, null or omitted.")}var i=e.key,r=e.attributes,o=void 0===r?{}:r;return t?this.mergeNode(i,o):this.addNode(i,o),this},i.importEdge=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Le(e);if(n){if("not-object"===n)throw new L('Graph.importEdge: invalid serialized edge. A serialized edge should be a plain object with at least a "source" & "target" property.');if("no-source"===n)throw new L("Graph.importEdge: missing souce.");if("no-target"===n)throw new L("Graph.importEdge: missing target.");if("invalid-attributes"===n)throw new L("Graph.importEdge: invalid attributes. Attributes should be a plain object, null or omitted.");if("invalid-undirected"===n)throw new L("Graph.importEdge: invalid undirected. Undirected should be boolean or omitted.")}var i=e.source,r=e.target,o=e.attributes,a=void 0===o?{}:o,s=e.undirected,u=void 0!==s&&s;return"key"in e?(t?u?this.mergeUndirectedEdgeWithKey:this.mergeDirectedEdgeWithKey:u?this.addUndirectedEdgeWithKey:this.addDirectedEdgeWithKey).call(this,e.key,i,r,a):(t?u?this.mergeUndirectedEdge:this.mergeDirectedEdge:u?this.addUndirectedEdge:this.addDirectedEdge).call(this,i,r,a),this},i.import=function(e){var t,n,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(l(e))return this.import(e.export(),r),this;if(!h(e))throw new L("Graph.import: invalid argument. Expecting a serialized graph or, alternatively, a Graph instance.");if(e.attributes){if(!h(e.attributes))throw new L("Graph.import: invalid attributes. Expecting a plain object.");r?this.mergeAttributes(e.attributes):this.replaceAttributes(e.attributes)}if(e.nodes){if(i=e.nodes,!Array.isArray(i))throw new L("Graph.import: invalid nodes. Expecting an array.");for(t=0,n=i.length;tn)){var a=new Set;a.add(t.undirected[o]),t.undirected[o]=a,e._nodes.get(o).undirected[n]=a}})),this;var e},i.clearIndex=function(){return this._nodes.forEach(function(e){void 0!==e.in&&(e.in={},e.out={}),void 0!==e.undirected&&(e.undirected={})}),this},i.toJSON=function(){return this.export()},i.toString=function(){return"[object Graph]"},i.inspect=function(){var e=this,t={};this._nodes.forEach(function(e,n){t[n]=e.attributes});var n={},i={};this._edges.forEach(function(t,r){var o=t.undirected?"--":"->",a="",s="(".concat(t.source.key,")").concat(o,"(").concat(t.target.key,")");t.generatedKey?e.multi&&(void 0===i[s]?i[s]=0:i[s]++,a+="".concat(i[s],". ")):a+="[".concat(r,"]: "),n[a+=s]=t.attributes});var r={};for(var o in this)this.hasOwnProperty(o)&&!Fe.has(o)&&"function"!=typeof this[o]&&(r[o]=this[o]);return r.attributes=this._attributes,r.nodes=t,r.edges=n,f(r,"constructor",this.constructor),r},n}(m.exports.EventEmitter);"undefined"!=typeof Symbol&&(Ge.prototype[Symbol.for("nodejs.util.inspect.custom")]=Ge.prototype.inspect),[{name:function(e){return"".concat(e,"Edge")},generateKey:!0},{name:function(e){return"".concat(e,"DirectedEdge")},generateKey:!0,type:"directed"},{name:function(e){return"".concat(e,"UndirectedEdge")},generateKey:!0,type:"undirected"},{name:function(e){return"".concat(e,"EdgeWithKey")}},{name:function(e){return"".concat(e,"DirectedEdgeWithKey")},type:"directed"},{name:function(e){return"".concat(e,"UndirectedEdgeWithKey")},type:"undirected"}].forEach(function(e){["add","merge","update"].forEach(function(t){var n=e.name(t),i="add"===t?ze:Ue;Ge.prototype[n]=e.generateKey?function(r,o,a){return i(this,n,!0,"undirected"===(e.type||this.type),null,r,o,a,"update"===t)}:function(r,o,a,s){return i(this,n,!1,"undirected"===(e.type||this.type),r,o,a,s,"update"===t)}})}),"undefined"!=typeof Symbol&&(Ge.prototype[Symbol.iterator]=Ge.prototype.adjacency),He=Ge,W.forEach(function(e){var t=e.name,n=e.attacher;n(He,t("Edge"),"mixed"),n(He,t("DirectedEdge"),"directed"),n(He,t("UndirectedEdge"),"undirected")}),function(e){Y.forEach(function(t){var n,i,r,o;r=(n=t).type,o=n.direction,e.prototype[i=n.name]=function(e,t){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(!arguments.length)return ce(this,r);if(1===arguments.length){var n=this._nodes.get(e=""+e);if(void 0===n)throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));return fe(this.multi,"mixed"===r?this.type:r,o,n)}if(2===arguments.length){t=""+t;var a=this._nodes.get(e=""+e);if(!a)throw new j("Graph.".concat(i,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(i,': could not find the "').concat(t,'" target node in the graph.'));return me(r,this.multi,o,a,t)}throw new L("Graph.".concat(i,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))},function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1);e.prototype[o]=function(e,t,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return le(this,i,n=e);if(2===arguments.length){n=t;var a=this._nodes.get(e=""+e);if(void 0===a)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));return pe(this.multi,"mixed"===i?this.type:i,r,a,n)}if(3===arguments.length){t=""+t;var s=this._nodes.get(e=""+e);if(!s)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(o,': could not find the "').concat(t,'" target node in the graph.'));return ye(i,this.multi,r,s,t,n)}throw new L("Graph.".concat(o,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(e,t),function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";e.prototype[o]=function(e,t,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return he(this,i,n=e);if(2===arguments.length){n=t;var a=this._nodes.get(e=""+e);if(void 0===a)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));return ve(this.multi,"mixed"===i?this.type:i,r,a,n)}if(3===arguments.length){t=""+t;var s=this._nodes.get(e=""+e);if(!s)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(o,': could not find the "').concat(t,'" target node in the graph.'));return be(i,this.multi,r,s,t,n)}throw new L("Graph.".concat(o,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(e,t),function(e,t){var n=t.type,i=t.direction,r=t.name.slice(0,-1)+"Entries";e.prototype[r]=function(e,t){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return R.empty();if(!arguments.length)return de(this,n);if(1===arguments.length){var o=this._nodes.get(e=""+e);if(!o)throw new j("Graph.".concat(r,': could not find the "').concat(e,'" node in the graph.'));return ge(n,i,o)}if(2===arguments.length){t=""+t;var a=this._nodes.get(e=""+e);if(!a)throw new j("Graph.".concat(r,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(r,': could not find the "').concat(t,'" target node in the graph.'));return _e(n,i,a,t)}throw new L("Graph.".concat(r,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))}}(e,t)})}(Ge),function(e){we.forEach(function(t){var n,i,r,o;r=(n=t).type,o=n.direction,e.prototype[i=n.name]=function(e){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(2===arguments.length){var t=""+arguments[0],n=""+arguments[1];if(!this._nodes.has(t))throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));if(!this._nodes.has(n))throw new j("Graph.".concat(i,': could not find the "').concat(n,'" node in the graph.'));return Pe(this,r,o,t,n)}if(1===arguments.length){var a=this._nodes.get(e=""+e);if(void 0===a)throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));return xe("mixed"===r?this.type:r,o,a)}throw new L("Graph.".concat(i,": invalid number of arguments (expecting 1 or 2 and got ").concat(arguments.length,")."))},function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1);e.prototype[o]=function(e,t){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(e=""+e);if(void 0===n)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));!function(e,t,n,i){if("mixed"!==e){if("undirected"===e)return Se(n,n.undirected,i);if("string"==typeof t)return Se(n,n[t],i)}var r=new Set;"undirected"!==e&&("out"!==t&&Ee(r,n,n.in,i),"in"!==t&&Ee(r,n,n.out,i)),"directed"!==e&&Ee(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,t)}}}(e,t),function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";e.prototype[o]=function(e,t){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(e=""+e);if(void 0===n)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));!function(e,t,n,i){if("mixed"!==e){if("undirected"===e)return Ce(n,n.undirected,i);if("string"==typeof t)return Ce(n,n[t],i)}var r=new Set;"undirected"!==e&&("out"!==t&&Oe(r,n,n.in,i)||"in"!==t&&Oe(r,n,n.out,i))||"directed"===e||Oe(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,t)}}}(e,t),function(e,t){var n=t.type,i=t.direction,r=t.name.slice(0,-1)+"Entries";e.prototype[r]=function(e){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return R.empty();var t=this._nodes.get(e=""+e);if(void 0===t)throw new j("Graph.".concat(r,': could not find the "').concat(e,'" node in the graph.'));return function(e,t,n){if("mixed"!==e){if("undirected"===e)return Te(n,n.undirected);if("string"==typeof t)return Te(n,n[t])}var i=R.empty(),r=new Set;return"undirected"!==e&&("out"!==t&&(i=X(i,Ae(r,n,n.in))),"in"!==t&&(i=X(i,Ae(r,n,n.out)))),"directed"!==e&&(i=X(i,Ae(r,n,n.undirected))),i}("mixed"===n?this.type:n,i,t)}}(e,t)})}(Ge);var We=function(e){function n(t){var n=u({type:"directed"},t);if("multi"in n&&!1!==n.multi)throw new L("DirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("directed"!==n.type)throw new L('DirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge),qe=function(e){function n(t){var n=u({type:"undirected"},t);if("multi"in n&&!1!==n.multi)throw new L("UndirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("undirected"!==n.type)throw new L('UndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge),Xe=function(e){function n(t){var n=u({multi:!0},t);if("multi"in n&&!0!==n.multi)throw new L("MultiGraph.from: inconsistent indication that the graph should be simple in given options!");return e.call(this,n)||this}return t(n,e),n}(Ge),Ye=function(e){function n(t){var n=u({type:"directed",multi:!0},t);if("multi"in n&&!0!==n.multi)throw new L("MultiDirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("directed"!==n.type)throw new L('MultiDirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge),Ke=function(e){function n(t){var n=u({type:"undirected",multi:!0},t);if("multi"in n&&!0!==n.multi)throw new L("MultiUndirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("undirected"!==n.type)throw new L('MultiUndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge);function $e(e){e.from=function(t,n){var i=u({},t.options,n),r=new e(i);return r.import(t),r}}return $e(Ge),$e(We),$e(qe),$e(Xe),$e(Ye),$e(Ke),Ge.Graph=Ge,Ge.DirectedGraph=We,Ge.UndirectedGraph=qe,Ge.MultiGraph=Xe,Ge.MultiDirectedGraph=Ye,Ge.MultiUndirectedGraph=Ke,Ge.InvalidArgumentsGraphError=L,Ge.NotFoundGraphError=j,Ge.UsageGraphError=F,Ge}()},11524:function(e,t,n){var i;!function(r,o,a,s){"use strict";var u,c=["","webkit","Moz","MS","ms","o"],l=o.createElement("div"),h=Math.round,d=Math.abs,f=Date.now;function p(e,t,n){return setTimeout(w(e,n),t)}function v(e,t,n){return!!Array.isArray(e)&&(g(e,n[t],n),!0)}function g(e,t,n){var i;if(e)if(e.forEach)e.forEach(t,n);else if(e.length!==s)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=r.console&&(r.console.warn||r.console.log);return o&&o.call(r.console,i,n),e.apply(this,arguments)}}u="function"!=typeof Object.assign?function(e){if(e===s||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n-1}function T(e){return e.trim().split(/\s+/g)}function A(e,t,n){if(e.indexOf&&!n)return e.indexOf(t);for(var i=0;in[t]}):i.sort()),i}function I(e,t){for(var n,i,r=t[0].toUpperCase()+t.slice(1),o=0;o1&&!n.firstMultiple?n.firstMultiple=G(t):1===r&&(n.firstMultiple=!1);var o=n.firstInput,a=n.firstMultiple,u=a?a.center:o.center,c=t.center=W(i);t.timeStamp=f(),t.deltaTime=t.timeStamp-o.timeStamp,t.angle=K(u,c),t.distance=Y(u,c),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};(1===t.eventType||4===o.eventType)&&(r=e.prevDelta={x:o.deltaX||0,y:o.deltaY||0},i=e.offsetDelta={x:n.x,y:n.y}),t.deltaX=r.x+(n.x-i.x),t.deltaY=r.y+(n.y-i.y)}(n,t),t.offsetDirection=X(t.deltaX,t.deltaY);var l=q(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=l.x,t.overallVelocityY=l.y,t.overallVelocity=d(l.x)>d(l.y)?l.x:l.y,t.scale=a?function(e,t){return Y(t[0],t[1],z)/Y(e[0],e[1],z)}(a.pointers,i):1,t.rotation=a?function(e,t){return K(t[1],t[0],z)+K(e[1],e[0],z)}(a.pointers,i):0,t.maxPointers=n.prevInput?t.pointers.length>n.prevInput.maxPointers?t.pointers.length:n.prevInput.maxPointers:t.pointers.length,function(e,t){var n,i,r,o,a=e.lastInterval||t,u=t.timeStamp-a.timeStamp;if(8!=t.eventType&&(u>25||a.velocity===s)){var c=t.deltaX-a.deltaX,l=t.deltaY-a.deltaY,h=q(u,c,l);i=h.x,r=h.y,n=d(h.x)>d(h.y)?h.x:h.y,o=X(c,l),e.lastInterval=t}else n=a.velocity,i=a.velocityX,r=a.velocityY,o=a.direction;t.velocity=n,t.velocityX=i,t.velocityY=r,t.direction=o}(n,t);var h=e.element;C(t.srcEvent.target,h)&&(h=t.srcEvent.target),t.target=h}(e,n),e.emit("hammer.input",n),e.recognize(n),e.session.prevInput=n}function G(e){for(var t=[],n=0;n=d(t)?e<0?2:4:t<0?8:16}function Y(e,t,n){n||(n=V);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function K(e,t,n){return n||(n=V),180*Math.atan2(t[n[1]]-e[n[1]],t[n[0]]-e[n[0]])/Math.PI}U.prototype={handler:function(){},init:function(){this.evEl&&S(this.element,this.evEl,this.domHandler),this.evTarget&&S(this.target,this.evTarget,this.domHandler),this.evWin&&S(D(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(D(this.element),this.evWin,this.domHandler)}};var $={mousedown:1,mousemove:2,mouseup:4},Q="mousedown",Z="mousemove mouseup";function J(){this.evEl=Q,this.evWin=Z,this.pressed=!1,U.apply(this,arguments)}_(J,U,{handler:function(e){var t=$[e.type];1&t&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:B,srcEvent:e}))}});var ee={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},te={2:F,3:"pen",4:B,5:"kinect"},ne="pointerdown",ie="pointermove pointerup pointercancel";function re(){this.evEl=ne,this.evWin=ie,U.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(ne="MSPointerDown",ie="MSPointerMove MSPointerUp MSPointerCancel"),_(re,U,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=ee[i],o=te[e.pointerType]||e.pointerType,a=o==F,s=A(t,e.pointerId,"pointerId");1&r&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):12&r&&(n=!0),!(s<0)&&(t[s]=e,this.callback(this.manager,r,{pointers:t,changedPointers:[e],pointerType:o,srcEvent:e}),n&&t.splice(s,1))}});var oe={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ae="touchstart",se="touchstart touchmove touchend touchcancel";function ue(){this.evTarget=ae,this.evWin=se,this.started=!1,U.apply(this,arguments)}function ce(e,t){var n=P(e.touches),i=P(e.changedTouches);return 12&t&&(n=M(n.concat(i),"identifier",!0)),[n,i]}_(ue,U,{handler:function(e){var t=oe[e.type];if(1===t&&(this.started=!0),this.started){var n=ce.call(this,e,t);12&t&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:e})}}});var le={touchstart:1,touchmove:2,touchend:4,touchcancel:8},he="touchstart touchmove touchend touchcancel";function de(){this.evTarget=he,this.targetIds={},U.apply(this,arguments)}function fe(e,t){var n=P(e.touches),i=this.targetIds;if(3&t&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=P(e.changedTouches),s=[],u=this.target;if(o=n.filter(function(e){return C(e.target,u)}),1===t)for(r=0;r-1&&i.splice(e,1)},2500)}}function me(e){for(var t=e.srcEvent.clientX,n=e.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){var t=this,n=this.state;function i(n){t.manager.emit(n,e)}n<8&&i(t.options.event+Te(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=8&&i(t.options.event+Te(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=32},canEmit:function(){for(var e=0;et.threshold&&r&t.direction},attrTest:function(e){return Me.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=Ae(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),_(Re,Me,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ke]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},emit:function(e){1!==e.scale&&(e.additionalEvent=this.options.event+(e.scale<1?"in":"out")),this._super.emit.call(this,e)}}),_(De,Oe,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distancet.time;if(this._input=e,!i||!n||12&e.eventType&&!r)this.reset();else if(1&e.eventType)this.reset(),this._timer=p(function(){this.state=8,this.tryEmit()},t.time,this);else if(4&e.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&4&e.eventType?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=f(),this.manager.emit(this.options.event,this._input)))}}),_(Ne,Me,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ke]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),_(Le,Me,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return Ie.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return 30&n?t=e.overallVelocity:6&n?t=e.overallVelocityX:24&n&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&d(t)>this.options.velocity&&4&e.eventType},emit:function(e){var t=Ae(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),_(je,Oe,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[we]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distance"']/g,q=RegExp(G.source),X=RegExp(W.source),Y=/<%-([\s\S]+?)%>/g,K=/<%([\s\S]+?)%>/g,$=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,J=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,te=RegExp(ee.source),ne=/^\s+/,ie=/\s/,re=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,oe=/\{\n\/\* \[wrapped with (.+)\] \*/,ae=/,? & /,se=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,ce=/\\(\\)?/g,le=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,he=/\w*$/,de=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,pe=/^\[object .+?Constructor\]$/,ve=/^0o[0-7]+$/i,ge=/^(?:0|[1-9]\d*)$/,me=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ye=/($^)/,be=/['\n\r\u2028\u2029\\]/g,_e="\\ud800-\\udfff",we="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ke="\\u2700-\\u27bf",xe="a-z\\xdf-\\xf6\\xf8-\\xff",Se="A-Z\\xc0-\\xd6\\xd8-\\xde",Ee="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Oe="["+_e+"]",Te="["+Ce+"]",Ae="["+we+"]",Pe="\\d+",Me="["+ke+"]",Ie="["+xe+"]",Re="[^"+_e+Ce+Pe+ke+xe+Se+"]",De="\\ud83c[\\udffb-\\udfff]",Ne="[^"+_e+"]",Le="(?:\\ud83c[\\udde6-\\uddff]){2}",je="[\\ud800-\\udbff][\\udc00-\\udfff]",Fe="["+Se+"]",Be="(?:"+Ie+"|"+Re+")",Ve="(?:"+Fe+"|"+Re+")",ze="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ue="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",He="(?:"+Ae+"|"+De+")?",Ge="["+Ee+"]?",We=Ge+He+"(?:\\u200d(?:"+[Ne,Le,je].join("|")+")"+Ge+He+")*",qe="(?:"+[Me,Le,je].join("|")+")"+We,Xe="(?:"+[Ne+Ae+"?",Ae,Le,je,Oe].join("|")+")",Ye=RegExp("['\u2019]","g"),Ke=RegExp(Ae,"g"),$e=RegExp(De+"(?="+De+")|"+Xe+We,"g"),Qe=RegExp([Fe+"?"+Ie+"+"+ze+"(?="+[Te,Fe,"$"].join("|")+")",Ve+"+"+Ue+"(?="+[Te,Fe+Be,"$"].join("|")+")",Fe+"?"+Be+"+"+ze,Fe+"+"+Ue,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pe,qe].join("|"),"g"),Ze=RegExp("[\\u200d"+_e+we+Ee+"]"),Je=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,et=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],tt=-1,nt={};nt[I]=nt[R]=nt[D]=nt[N]=nt[L]=nt[j]=nt[F]=nt[B]=nt[V]=!0,nt[p]=nt[v]=nt[P]=nt[g]=nt[M]=nt[m]=nt[y]=nt[b]=nt[w]=nt[k]=nt[x]=nt[E]=nt[C]=nt[O]=nt[A]=!1;var it={};it[p]=it[v]=it[P]=it[M]=it[g]=it[m]=it[I]=it[R]=it[D]=it[N]=it[L]=it[w]=it[k]=it[x]=it[E]=it[C]=it[O]=it[T]=it[j]=it[F]=it[B]=it[V]=!0,it[y]=it[b]=it[A]=!1;var rt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ot=parseFloat,at=parseInt,st="object"==typeof global&&global&&global.Object===Object&&global,ut="object"==typeof self&&self&&self.Object===Object&&self,ct=st||ut||Function("return this")(),lt=t&&!t.nodeType&&t,ht=lt&&e&&!e.nodeType&&e,dt=ht&&ht.exports===lt,ft=dt&&st.process,pt=function(){try{return ht&&ht.require&&ht.require("util").types||ft&&ft.binding&&ft.binding("util")}catch(e){}}(),vt=pt&&pt.isArrayBuffer,gt=pt&&pt.isDate,mt=pt&&pt.isMap,yt=pt&&pt.isRegExp,bt=pt&&pt.isSet,_t=pt&&pt.isTypedArray;function wt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function kt(e,t,n,i){for(var r=-1,o=null==e?0:e.length;++r-1}function Tt(e,t,n){for(var i=-1,r=null==e?0:e.length;++i-1;);return n}function Qt(e,t){for(var n=e.length;n--&&jt(t,e[n],0)>-1;);return n}function Zt(e,t){for(var n=e.length,i=0;n--;)e[n]===t&&++i;return i}var Jt=Ut({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),en=Ut({"&":"&","<":"<",">":">",'"':""","'":"'"});function tn(e){return"\\"+rt[e]}function nn(e){return Ze.test(e)}function rn(e){var t=-1,n=Array(e.size);return e.forEach(function(e,i){n[++t]=[i,e]}),n}function on(e,t){return function(n){return e(t(n))}}function an(e,t){for(var n=-1,i=e.length,r=0,o=[];++n",""":'"',"'":"'"}),dn=function e(t){var n,i=(t=null==t?ct:dn.defaults(ct.Object(),t,dn.pick(ct,et))).Array,ie=t.Date,_e=t.Error,we=t.Function,ke=t.Math,xe=t.Object,Se=t.RegExp,Ee=t.String,Ce=t.TypeError,Oe=i.prototype,Te=xe.prototype,Ae=t["__core-js_shared__"],Pe=we.prototype.toString,Me=Te.hasOwnProperty,Ie=0,Re=(n=/[^.]+$/.exec(Ae&&Ae.keys&&Ae.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",De=Te.toString,Ne=Pe.call(xe),Le=ct._,je=Se("^"+Pe.call(Me).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Fe=dt?t.Buffer:r,Be=t.Symbol,Ve=t.Uint8Array,ze=Fe?Fe.allocUnsafe:r,Ue=on(xe.getPrototypeOf,xe),He=xe.create,Ge=Te.propertyIsEnumerable,We=Oe.splice,qe=Be?Be.isConcatSpreadable:r,Xe=Be?Be.iterator:r,$e=Be?Be.toStringTag:r,Ze=function(){try{var e=ao(xe,"defineProperty");return e({},"",{}),e}catch(Io){}}(),rt=t.clearTimeout!==ct.clearTimeout&&t.clearTimeout,st=ie&&ie.now!==ct.Date.now&&ie.now,ut=t.setTimeout!==ct.setTimeout&&t.setTimeout,lt=ke.ceil,ht=ke.floor,ft=xe.getOwnPropertySymbols,pt=Fe?Fe.isBuffer:r,Dt=t.isFinite,Ut=Oe.join,fn=on(xe.keys,xe),pn=ke.max,vn=ke.min,gn=ie.now,mn=t.parseInt,yn=ke.random,bn=Oe.reverse,_n=ao(t,"DataView"),wn=ao(t,"Map"),kn=ao(t,"Promise"),xn=ao(t,"Set"),Sn=ao(t,"WeakMap"),En=ao(xe,"create"),Cn=Sn&&new Sn,On={},Tn=Lo(_n),An=Lo(wn),Pn=Lo(kn),Mn=Lo(xn),In=Lo(Sn),Rn=Be?Be.prototype:r,Dn=Rn?Rn.valueOf:r,Nn=Rn?Rn.toString:r;function Ln(e){if(Ja(e)&&!Ua(e)&&!(e instanceof Vn)){if(e instanceof Bn)return e;if(Me.call(e,"__wrapped__"))return jo(e)}return new Bn(e)}var jn=function(){function e(){}return function(t){if(!Za(t))return{};if(He)return He(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function Fn(){}function Bn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Vn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function zn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function ri(e,t,n,i,o,a){var s,u=1&t,c=2&t,l=4&t;if(n&&(s=o?n(e,i,o,a):n(e)),s!==r)return s;if(!Za(e))return e;var h=Ua(e);if(h){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&Me.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!u)return Sr(e,s)}else{var d=co(e),f=d==b||d==_;if(qa(e))return yr(e,u);if(d==x||d==p||f&&!o){if(s=c||f?{}:ho(e),!u)return c?function(e,t){return Er(e,uo(e),t)}(e,function(e,t){return e&&Er(t,Ps(t),e)}(s,e)):function(e,t){return Er(e,so(e),t)}(e,ei(s,e))}else{if(!it[d])return o?e:{};s=function(e,t,n){var i=e.constructor;switch(t){case P:return br(e);case g:case m:return new i(+e);case M:return function(e,t){var n=t?br(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case I:case R:case D:case N:case L:case j:case F:case B:case V:return _r(e,n);case w:return new i;case k:case O:return new i(e);case E:return function(e){var t=new e.constructor(e.source,he.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new i;case T:return function(e){return Dn?xe(Dn.call(e)):{}}(e)}}(e,d,u)}}a||(a=new Wn);var v=a.get(e);if(v)return v;a.set(e,s),rs(e)?e.forEach(function(i){s.add(ri(i,t,n,i,e,a))}):es(e)&&e.forEach(function(i,r){s.set(r,ri(i,t,n,r,e,a))});var y=h?r:(l?c?Jr:Zr:c?Ps:As)(e);return xt(y||e,function(i,r){y&&(i=e[r=i]),Qn(s,r,ri(i,t,n,r,e,a))}),s}function oi(e,t,n){var i=n.length;if(null==e)return!i;for(e=xe(e);i--;){var o=n[i],a=e[o];if(a===r&&!(o in e)||!(0,t[o])(a))return!1}return!0}function ai(e,t,n){if("function"!=typeof e)throw new Ce(o);return Oo(function(){e.apply(r,n)},t)}function si(e,t,n,i){var r=-1,o=Ot,a=!0,s=e.length,u=[],c=t.length;if(!s)return u;n&&(t=At(t,Xt(n))),i?(o=Tt,a=!1):t.length>=200&&(o=Kt,a=!1,t=new Gn(t));e:for(;++r-1},Un.prototype.set=function(e,t){var n=this.__data__,i=Zn(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this},Hn.prototype.clear=function(){this.size=0,this.__data__={hash:new zn,map:new(wn||Un),string:new zn}},Hn.prototype.delete=function(e){var t=ro(this,e).delete(e);return this.size-=t?1:0,t},Hn.prototype.get=function(e){return ro(this,e).get(e)},Hn.prototype.has=function(e){return ro(this,e).has(e)},Hn.prototype.set=function(e,t){var n=ro(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this},Gn.prototype.add=Gn.prototype.push=function(e){return this.__data__.set(e,a),this},Gn.prototype.has=function(e){return this.__data__.has(e)},Wn.prototype.clear=function(){this.__data__=new Un,this.size=0},Wn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Wn.prototype.get=function(e){return this.__data__.get(e)},Wn.prototype.has=function(e){return this.__data__.has(e)},Wn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Un){var i=n.__data__;if(!wn||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Hn(i)}return n.set(e,t),this.size=n.size,this};var ui=Tr(gi),ci=Tr(mi,!0);function li(e,t){var n=!0;return ui(e,function(e,i,r){return n=!!t(e,i,r)}),n}function hi(e,t,n){for(var i=-1,o=e.length;++i0&&n(s)?t>1?fi(s,t-1,n,i,r):Pt(r,s):i||(r[r.length]=s)}return r}var pi=Ar(),vi=Ar(!0);function gi(e,t){return e&&pi(e,t,As)}function mi(e,t){return e&&vi(e,t,As)}function yi(e,t){return Ct(t,function(t){return Ka(e[t])})}function bi(e,t){for(var n=0,i=(t=pr(t,e)).length;null!=e&&nt}function xi(e,t){return null!=e&&Me.call(e,t)}function Si(e,t){return null!=e&&t in xe(e)}function Ei(e,t,n){for(var o=n?Tt:Ot,a=e[0].length,s=e.length,u=s,c=i(s),l=1/0,h=[];u--;){var d=e[u];u&&t&&(d=At(d,Xt(t))),l=vn(d.length,l),c[u]=!n&&(t||a>=120&&d.length>=120)?new Gn(u&&d):r}d=e[0];var f=-1,p=c[0];e:for(;++f=s?u:u*("desc"==n[i]?-1:1)}return e.index-t.index}(e,t,n)});i--;)e[i]=e[i].value;return e}(Di(e,function(e,n,r){return{criteria:At(t,function(t){return t(e)}),index:++i,value:e}}))}function Vi(e,t,n){for(var i=-1,r=t.length,o={};++i-1;)s!==e&&We.call(s,u,1),We.call(e,u,1);return e}function Ui(e,t){for(var n=e?t.length:0,i=n-1;n--;){var r=t[n];if(n==i||r!==o){var o=r;po(r)?We.call(e,r,1):ar(e,r)}}return e}function Hi(e,t){return e+ht(yn()*(t-e+1))}function Gi(e,t){var n="";if(!e||t<1||t>h)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Wi(e,t){return To(ko(e,t,tu),e+"")}function qi(e){return Xn(Fs(e))}function Xi(e,t){var n=Fs(e);return Mo(n,ii(t,0,n.length))}function Yi(e,t,n,i){if(!Za(e))return e;for(var o=-1,a=(t=pr(t,e)).length,s=a-1,u=e;null!=u&&++oo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=i(o);++r>>1,a=e[o];null!==a&&!as(a)&&(n?a<=t:a=200){var c=t?null:Gr(e);if(c)return sn(c);a=!1,r=Kt,u=new Gn}else u=t?[]:s;e:for(;++i=i?e:Zi(e,t,n)}var mr=rt||function(e){return ct.clearTimeout(e)};function yr(e,t){if(t)return e.slice();var n=e.length,i=ze?ze(n):new e.constructor(n);return e.copy(i),i}function br(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function _r(e,t){var n=t?br(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function wr(e,t){if(e!==t){var n=e!==r,i=null===e,o=e==e,a=as(e),s=t!==r,u=null===t,c=t==t,l=as(t);if(!u&&!l&&!a&&e>t||a&&s&&c&&!u&&!l||i&&s&&c||!n&&c||!o)return 1;if(!i&&!a&&!l&&e1?n[o-1]:r,s=o>2?n[2]:r;for(a=e.length>3&&"function"==typeof a?(o--,a):r,s&&vo(n[0],n[1],s)&&(a=o<3?r:a,o=1),t=xe(t);++i-1?o[a?t[s]:s]:r}}function Dr(e){return Qr(function(t){var n=t.length,i=n,a=Bn.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if("function"!=typeof s)throw new Ce(o);if(a&&!u&&"wrapper"==to(s))var u=new Bn([],!0)}for(i=u?i:n;++i1&&b.reverse(),f&&hu))return!1;var l=a.get(e),h=a.get(t);if(l&&h)return l==t&&h==e;var d=-1,f=!0,p=2&n?new Gn:r;for(a.set(e,t),a.set(t,e);++d-1&&e%1==0&&e1?"& ":"")+t[i],t=t.join(n>2?", ":" "),e.replace(re,"{\n/* [wrapped with "+t+"] */\n")}(i,function(e,t){return xt(f,function(n){var i="_."+n[0];t&n[1]&&!Ot(e,i)&&e.push(i)}),e.sort()}(function(e){var t=e.match(oe);return t?t[1].split(ae):[]}(i),n)))}function Po(e){var t=0,n=0;return function(){var i=gn(),o=16-(i-n);if(n=i,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function Mo(e,t){var n=-1,i=e.length,o=i-1;for(t=t===r?i:t;++n1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,ia(e,n)});function la(e){var t=Ln(e);return t.__chain__=!0,t}function ha(e,t){return t(e)}var da=Qr(function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,o=function(t){return ni(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Vn&&po(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:ha,args:[o],thisArg:r}),new Bn(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(r),e})):this.thru(o)}),fa=Cr(function(e,t,n){Me.call(e,n)?++e[n]:ti(e,n,1)}),pa=Rr(zo),va=Rr(Uo);function ga(e,t){return(Ua(e)?xt:ui)(e,io(t,3))}function ma(e,t){return(Ua(e)?St:ci)(e,io(t,3))}var ya=Cr(function(e,t,n){Me.call(e,n)?e[n].push(t):ti(e,n,[t])}),ba=Wi(function(e,t,n){var r=-1,o="function"==typeof t,a=Ga(e)?i(e.length):[];return ui(e,function(e){a[++r]=o?wt(t,e,n):Ci(e,t,n)}),a}),_a=Cr(function(e,t,n){ti(e,n,t)});function wa(e,t){return(Ua(e)?At:Di)(e,io(t,3))}var ka=Cr(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),xa=Wi(function(e,t){if(null==e)return[];var n=t.length;return n>1&&vo(e,t[0],t[1])?t=[]:n>2&&vo(t[0],t[1],t[2])&&(t=[t[0]]),Bi(e,fi(t,1),[])}),Sa=st||function(){return ct.Date.now()};function Ea(e,t,n){return t=n?r:t,qr(e,c,r,r,r,r,t=e&&null==t?e.length:t)}function Ca(e,t){var n;if("function"!=typeof t)throw new Ce(o);return e=ds(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var Oa=Wi(function(e,t,n){var i=1;if(n.length){var r=an(n,no(Oa));i|=u}return qr(e,i,t,n,r)}),Ta=Wi(function(e,t,n){var i=3;if(n.length){var r=an(n,no(Ta));i|=u}return qr(t,i,e,n,r)});function Aa(e,t,n){var i,a,s,u,c,l,h=0,d=!1,f=!1,p=!0;if("function"!=typeof e)throw new Ce(o);function v(t){var n=i,o=a;return i=a=r,h=t,u=e.apply(o,n)}function g(e){return h=e,c=Oo(y,t),d?v(e):u}function m(e){var n=e-l;return l===r||n>=t||n<0||f&&e-h>=s}function y(){var e=Sa();if(m(e))return b(e);c=Oo(y,function(e){var n=t-(e-l);return f?vn(n,s-(e-h)):n}(e))}function b(e){return c=r,p&&i?v(e):(i=a=r,u)}function _(){var e=Sa(),n=m(e);if(i=arguments,a=this,l=e,n){if(c===r)return g(l);if(f)return mr(c),c=Oo(y,t),v(l)}return c===r&&(c=Oo(y,t)),u}return t=ps(t)||0,Za(n)&&(d=!!n.leading,s=(f="maxWait"in n)?pn(ps(n.maxWait)||0,t):s,p="trailing"in n?!!n.trailing:p),_.cancel=function(){c!==r&&mr(c),h=0,i=l=a=c=r},_.flush=function(){return c===r?u:b(Sa())},_}var Pa=Wi(function(e,t){return ai(e,1,t)}),Ma=Wi(function(e,t,n){return ai(e,ps(t)||0,n)});function Ia(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ce(o);var n=function n(){var i=arguments,r=t?t.apply(this,i):i[0],o=n.cache;if(o.has(r))return o.get(r);var a=e.apply(this,i);return n.cache=o.set(r,a)||o,a};return n.cache=new(Ia.Cache||Hn),n}function Ra(e){if("function"!=typeof e)throw new Ce(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ia.Cache=Hn;var Da=vr(function(e,t){var n=(t=1==t.length&&Ua(t[0])?At(t[0],Xt(io())):At(fi(t,1),Xt(io()))).length;return Wi(function(i){for(var r=-1,o=vn(i.length,n);++r=t}),za=Oi(function(){return arguments}())?Oi:function(e){return Ja(e)&&Me.call(e,"callee")&&!Ge.call(e,"callee")},Ua=i.isArray,Ha=vt?Xt(vt):function(e){return Ja(e)&&wi(e)==P};function Ga(e){return null!=e&&Qa(e.length)&&!Ka(e)}function Wa(e){return Ja(e)&&Ga(e)}var qa=pt||pu,Xa=gt?Xt(gt):function(e){return Ja(e)&&wi(e)==m};function Ya(e){if(!Ja(e))return!1;var t=wi(e);return t==y||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ns(e)}function Ka(e){if(!Za(e))return!1;var t=wi(e);return t==b||t==_||"[object AsyncFunction]"==t||"[object Proxy]"==t}function $a(e){return"number"==typeof e&&e==ds(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}function Za(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ja(e){return null!=e&&"object"==typeof e}var es=mt?Xt(mt):function(e){return Ja(e)&&co(e)==w};function ts(e){return"number"==typeof e||Ja(e)&&wi(e)==k}function ns(e){if(!Ja(e)||wi(e)!=x)return!1;var t=Ue(e);if(null===t)return!0;var n=Me.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Pe.call(n)==Ne}var is=yt?Xt(yt):function(e){return Ja(e)&&wi(e)==E},rs=bt?Xt(bt):function(e){return Ja(e)&&co(e)==C};function os(e){return"string"==typeof e||!Ua(e)&&Ja(e)&&wi(e)==O}function as(e){return"symbol"==typeof e||Ja(e)&&wi(e)==T}var ss=_t?Xt(_t):function(e){return Ja(e)&&Qa(e.length)&&!!nt[wi(e)]},us=zr(Ri),cs=zr(function(e,t){return e<=t});function ls(e){if(!e)return[];if(Ga(e))return os(e)?cn(e):Sr(e);if(Xe&&e[Xe])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Xe]());var t=co(e);return(t==w?rn:t==C?sn:Fs)(e)}function hs(e){return e?(e=ps(e))===l||e===-l?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ds(e){var t=hs(e),n=t%1;return t==t?n?t-n:t:0}function fs(e){return e?ii(ds(e),0,d):0}function ps(e){if("number"==typeof e)return e;if(as(e))return NaN;if(Za(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Za(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=qt(e);var n=fe.test(e);return n||ve.test(e)?at(e.slice(2),n?2:8):de.test(e)?NaN:+e}function vs(e){return Er(e,Ps(e))}function gs(e){return null==e?"":rr(e)}var ms=Or(function(e,t){if(bo(t)||Ga(t))Er(t,As(t),e);else for(var n in t)Me.call(t,n)&&Qn(e,n,t[n])}),ys=Or(function(e,t){Er(t,Ps(t),e)}),bs=Or(function(e,t,n,i){Er(t,Ps(t),e,i)}),_s=Or(function(e,t,n,i){Er(t,As(t),e,i)}),ws=Qr(ni),ks=Wi(function(e,t){e=xe(e);var n=-1,i=t.length,o=i>2?t[2]:r;for(o&&vo(t[0],t[1],o)&&(i=1);++n1),t}),Er(e,Jr(e),n),i&&(n=ri(n,7,Kr));for(var r=t.length;r--;)ar(n,t[r]);return n}),Ds=Qr(function(e,t){return null==e?{}:function(e,t){return Vi(e,t,function(t,n){return Es(e,n)})}(e,t)});function Ns(e,t){if(null==e)return{};var n=At(Jr(e),function(e){return[e]});return t=io(t),Vi(e,n,function(e,n){return t(e,n[0])})}var Ls=Wr(As),js=Wr(Ps);function Fs(e){return null==e?[]:Yt(e,As(e))}var Bs=Mr(function(e,t,n){return t=t.toLowerCase(),e+(n?Vs(t):t)});function Vs(e){return Ys(gs(e).toLowerCase())}function zs(e){return(e=gs(e))&&e.replace(me,Jt).replace(Ke,"")}var Us=Mr(function(e,t,n){return e+(n?"-":"")+t.toLowerCase()}),Hs=Mr(function(e,t,n){return e+(n?" ":"")+t.toLowerCase()}),Gs=Pr("toLowerCase"),Ws=Mr(function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}),qs=Mr(function(e,t,n){return e+(n?" ":"")+Ys(t)}),Xs=Mr(function(e,t,n){return e+(n?" ":"")+t.toUpperCase()}),Ys=Pr("toUpperCase");function Ks(e,t,n){return e=gs(e),(t=n?r:t)===r?function(e){return Je.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(se)||[]}(e):e.match(t)||[]}var $s=Wi(function(e,t){try{return wt(e,r,t)}catch(Ro){return Ya(Ro)?Ro:new _e(Ro)}}),Qs=Qr(function(e,t){return xt(t,function(t){t=No(t),ti(e,t,Oa(e[t],e))}),e});function Zs(e){return function(){return e}}var Js=Dr(),eu=Dr(!0);function tu(e){return e}function nu(e){return Mi("function"==typeof e?e:ri(e,1))}var iu=Wi(function(e,t){return function(n){return Ci(n,e,t)}}),ru=Wi(function(e,t){return function(n){return Ci(e,n,t)}});function ou(e,t,n){var i=As(t),r=yi(t,i);null==n&&(!Za(t)||!r.length&&i.length)&&(n=t,t=e,e=this,r=yi(t,As(t)));var o=!(Za(n)&&"chain"in n&&!n.chain),a=Ka(e);return xt(r,function(n){var i=t[n];e[n]=i,a&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),r=n.__actions__=Sr(this.__actions__);return r.push({func:i,args:arguments,thisArg:e}),n.__chain__=t,n}return i.apply(e,Pt([this.value()],arguments))})}),e}function au(){}var su=Fr(At),uu=Fr(Et),cu=Fr(Rt);function lu(e){return go(e)?zt(No(e)):function(e){return function(t){return bi(t,e)}}(e)}var hu=Vr(),du=Vr(!0);function fu(){return[]}function pu(){return!1}var vu=jr(function(e,t){return e+t},0),gu=Hr("ceil"),mu=jr(function(e,t){return e/t},1),yu=Hr("floor"),bu=jr(function(e,t){return e*t},1),_u=Hr("round"),wu=jr(function(e,t){return e-t},0);return Ln.after=function(e,t){if("function"!=typeof t)throw new Ce(o);return e=ds(e),function(){if(--e<1)return t.apply(this,arguments)}},Ln.ary=Ea,Ln.assign=ms,Ln.assignIn=ys,Ln.assignInWith=bs,Ln.assignWith=_s,Ln.at=ws,Ln.before=Ca,Ln.bind=Oa,Ln.bindAll=Qs,Ln.bindKey=Ta,Ln.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ua(e)?e:[e]},Ln.chain=la,Ln.chunk=function(e,t,n){t=(n?vo(e,t,n):t===r)?1:pn(ds(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,s=0,u=i(lt(o/t));ao?0:o+n),(i=i===r||i>o?o:ds(i))<0&&(i+=o),i=n>i?0:fs(i);n>>0)?(e=gs(e))&&("string"==typeof t||null!=t&&!is(t))&&!(t=rr(t))&&nn(e)?gr(cn(e),0,n):e.split(t,n):[]},Ln.spread=function(e,t){if("function"!=typeof e)throw new Ce(o);return t=null==t?0:pn(ds(t),0),Wi(function(n){var i=n[t],r=gr(n,0,t);return i&&Pt(r,i),wt(e,this,r)})},Ln.tail=function(e){var t=null==e?0:e.length;return t?Zi(e,1,t):[]},Ln.take=function(e,t,n){return e&&e.length?Zi(e,0,(t=n||t===r?1:ds(t))<0?0:t):[]},Ln.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?Zi(e,(t=i-(t=n||t===r?1:ds(t)))<0?0:t,i):[]},Ln.takeRightWhile=function(e,t){return e&&e.length?ur(e,io(t,3),!1,!0):[]},Ln.takeWhile=function(e,t){return e&&e.length?ur(e,io(t,3)):[]},Ln.tap=function(e,t){return t(e),e},Ln.throttle=function(e,t,n){var i=!0,r=!0;if("function"!=typeof e)throw new Ce(o);return Za(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Aa(e,t,{leading:i,maxWait:t,trailing:r})},Ln.thru=ha,Ln.toArray=ls,Ln.toPairs=Ls,Ln.toPairsIn=js,Ln.toPath=function(e){return Ua(e)?At(e,No):as(e)?[e]:Sr(Do(gs(e)))},Ln.toPlainObject=vs,Ln.transform=function(e,t,n){var i=Ua(e),r=i||qa(e)||ss(e);if(t=io(t,4),null==n){var o=e&&e.constructor;n=r?i?new o:[]:Za(e)&&Ka(o)?jn(Ue(e)):{}}return(r?xt:gi)(e,function(e,i,r){return t(n,e,i,r)}),n},Ln.unary=function(e){return Ea(e,1)},Ln.union=Jo,Ln.unionBy=ea,Ln.unionWith=ta,Ln.uniq=function(e){return e&&e.length?or(e):[]},Ln.uniqBy=function(e,t){return e&&e.length?or(e,io(t,2)):[]},Ln.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?or(e,r,t):[]},Ln.unset=function(e,t){return null==e||ar(e,t)},Ln.unzip=na,Ln.unzipWith=ia,Ln.update=function(e,t,n){return null==e?e:sr(e,t,fr(n))},Ln.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:sr(e,t,fr(n),i)},Ln.values=Fs,Ln.valuesIn=function(e){return null==e?[]:Yt(e,Ps(e))},Ln.without=ra,Ln.words=Ks,Ln.wrap=function(e,t){return Na(fr(t),e)},Ln.xor=oa,Ln.xorBy=aa,Ln.xorWith=sa,Ln.zip=ua,Ln.zipObject=function(e,t){return hr(e||[],t||[],Qn)},Ln.zipObjectDeep=function(e,t){return hr(e||[],t||[],Yi)},Ln.zipWith=ca,Ln.entries=Ls,Ln.entriesIn=js,Ln.extend=ys,Ln.extendWith=bs,ou(Ln,Ln),Ln.add=vu,Ln.attempt=$s,Ln.camelCase=Bs,Ln.capitalize=Vs,Ln.ceil=gu,Ln.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=ps(n))==n?n:0),t!==r&&(t=(t=ps(t))==t?t:0),ii(ps(e),t,n)},Ln.clone=function(e){return ri(e,4)},Ln.cloneDeep=function(e){return ri(e,5)},Ln.cloneDeepWith=function(e,t){return ri(e,5,t="function"==typeof t?t:r)},Ln.cloneWith=function(e,t){return ri(e,4,t="function"==typeof t?t:r)},Ln.conformsTo=function(e,t){return null==t||oi(e,t,As(t))},Ln.deburr=zs,Ln.defaultTo=function(e,t){return null==e||e!=e?t:e},Ln.divide=mu,Ln.endsWith=function(e,t,n){e=gs(e),t=rr(t);var i=e.length,o=n=n===r?i:ii(ds(n),0,i);return(n-=t.length)>=0&&e.slice(n,o)==t},Ln.eq=Fa,Ln.escape=function(e){return(e=gs(e))&&X.test(e)?e.replace(W,en):e},Ln.escapeRegExp=function(e){return(e=gs(e))&&te.test(e)?e.replace(ee,"\\$&"):e},Ln.every=function(e,t,n){var i=Ua(e)?Et:li;return n&&vo(e,t,n)&&(t=r),i(e,io(t,3))},Ln.find=pa,Ln.findIndex=zo,Ln.findKey=function(e,t){return Nt(e,io(t,3),gi)},Ln.findLast=va,Ln.findLastIndex=Uo,Ln.findLastKey=function(e,t){return Nt(e,io(t,3),mi)},Ln.floor=yu,Ln.forEach=ga,Ln.forEachRight=ma,Ln.forIn=function(e,t){return null==e?e:pi(e,io(t,3),Ps)},Ln.forInRight=function(e,t){return null==e?e:vi(e,io(t,3),Ps)},Ln.forOwn=function(e,t){return e&&gi(e,io(t,3))},Ln.forOwnRight=function(e,t){return e&&mi(e,io(t,3))},Ln.get=Ss,Ln.gt=Ba,Ln.gte=Va,Ln.has=function(e,t){return null!=e&&lo(e,t,xi)},Ln.hasIn=Es,Ln.head=Go,Ln.identity=tu,Ln.includes=function(e,t,n,i){e=Ga(e)?e:Fs(e),n=n&&!i?ds(n):0;var r=e.length;return n<0&&(n=pn(r+n,0)),os(e)?n<=r&&e.indexOf(t,n)>-1:!!r&&jt(e,t,n)>-1},Ln.indexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=null==n?0:ds(n);return r<0&&(r=pn(i+r,0)),jt(e,t,r)},Ln.inRange=function(e,t,n){return t=hs(t),n===r?(n=t,t=0):n=hs(n),function(e,t,n){return e>=vn(t,n)&&e=-h&&e<=h},Ln.isSet=rs,Ln.isString=os,Ln.isSymbol=as,Ln.isTypedArray=ss,Ln.isUndefined=function(e){return e===r},Ln.isWeakMap=function(e){return Ja(e)&&co(e)==A},Ln.isWeakSet=function(e){return Ja(e)&&"[object WeakSet]"==wi(e)},Ln.join=function(e,t){return null==e?"":Ut.call(e,t)},Ln.kebabCase=Us,Ln.last=Yo,Ln.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var o=i;return n!==r&&(o=(o=ds(n))<0?pn(i+o,0):vn(o,i-1)),t==t?function(e,t,n){for(var i=n+1;i--;)if(e[i]===t)return i;return i}(e,t,o):Lt(e,Bt,o,!0)},Ln.lowerCase=Hs,Ln.lowerFirst=Gs,Ln.lt=us,Ln.lte=cs,Ln.max=function(e){return e&&e.length?hi(e,tu,ki):r},Ln.maxBy=function(e,t){return e&&e.length?hi(e,io(t,2),ki):r},Ln.mean=function(e){return Vt(e,tu)},Ln.meanBy=function(e,t){return Vt(e,io(t,2))},Ln.min=function(e){return e&&e.length?hi(e,tu,Ri):r},Ln.minBy=function(e,t){return e&&e.length?hi(e,io(t,2),Ri):r},Ln.stubArray=fu,Ln.stubFalse=pu,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=bu,Ln.nth=function(e,t){return e&&e.length?Fi(e,ds(t)):r},Ln.noConflict=function(){return ct._===this&&(ct._=Le),this},Ln.noop=au,Ln.now=Sa,Ln.pad=function(e,t,n){e=gs(e);var i=(t=ds(t))?un(e):0;if(!t||i>=t)return e;var r=(t-i)/2;return Br(ht(r),n)+e+Br(lt(r),n)},Ln.padEnd=function(e,t,n){e=gs(e);var i=(t=ds(t))?un(e):0;return t&&it){var i=e;e=t,t=i}if(n||e%1||t%1){var o=yn();return vn(e+o*(t-e+ot("1e-"+((o+"").length-1))),t)}return Hi(e,t)},Ln.reduce=function(e,t,n){var i=Ua(e)?Mt:Ht,r=arguments.length<3;return i(e,io(t,4),n,r,ui)},Ln.reduceRight=function(e,t,n){var i=Ua(e)?It:Ht,r=arguments.length<3;return i(e,io(t,4),n,r,ci)},Ln.repeat=function(e,t,n){return t=(n?vo(e,t,n):t===r)?1:ds(t),Gi(gs(e),t)},Ln.replace=function(){var e=arguments,t=gs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Ln.result=function(e,t,n){var i=-1,o=(t=pr(t,e)).length;for(o||(o=1,e=r);++ih)return[];var n=d,i=vn(e,d);t=io(t),e-=d;for(var r=Wt(i,t);++n=a)return e;var u=n-un(i);if(u<1)return i;var c=s?gr(s,0,u).join(""):e.slice(0,u);if(o===r)return c+i;if(s&&(u+=c.length-u),is(o)){if(e.slice(u).search(o)){var l,h=c;for(o.global||(o=Se(o.source,gs(he.exec(o))+"g")),o.lastIndex=0;l=o.exec(h);)var d=l.index;c=c.slice(0,d===r?u:d)}}else if(e.indexOf(rr(o),u)!=u){var f=c.lastIndexOf(o);f>-1&&(c=c.slice(0,f))}return c+i},Ln.unescape=function(e){return(e=gs(e))&&q.test(e)?e.replace(G,hn):e},Ln.uniqueId=function(e){var t=++Ie;return gs(e)+t},Ln.upperCase=Xs,Ln.upperFirst=Ys,Ln.each=ga,Ln.eachRight=ma,Ln.first=Go,ou(Ln,function(){var e={};return gi(Ln,function(t,n){Me.call(Ln.prototype,n)||(e[n]=t)}),e}(),{chain:!1}),Ln.VERSION="4.17.21",xt(["bind","bindKey","curry","curryRight","partial","partialRight"],function(e){Ln[e].placeholder=Ln}),xt(["drop","take"],function(e,t){Vn.prototype[e]=function(n){n=n===r?1:pn(ds(n),0);var i=this.__filtered__&&!t?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=vn(n,i.__takeCount__):i.__views__.push({size:vn(n,d),type:e+(i.__dir__<0?"Right":"")}),i},Vn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),xt(["filter","map","takeWhile"],function(e,t){var n=t+1,i=1==n||3==n;Vn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:io(e,3),type:n}),t.__filtered__=t.__filtered__||i,t}}),xt(["head","last"],function(e,t){var n="take"+(t?"Right":"");Vn.prototype[e]=function(){return this[n](1).value()[0]}}),xt(["initial","tail"],function(e,t){var n="drop"+(t?"":"Right");Vn.prototype[e]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(tu)},Vn.prototype.find=function(e){return this.filter(e).head()},Vn.prototype.findLast=function(e){return this.reverse().find(e)},Vn.prototype.invokeMap=Wi(function(e,t){return"function"==typeof e?new Vn(this):this.map(function(n){return Ci(n,e,t)})}),Vn.prototype.reject=function(e){return this.filter(Ra(io(e)))},Vn.prototype.slice=function(e,t){e=ds(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Vn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=ds(t))<0?n.dropRight(-t):n.take(t-e)),n)},Vn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vn.prototype.toArray=function(){return this.take(d)},gi(Vn.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),o=Ln[i?"take"+("last"==t?"Right":""):t],a=i||/^find/.test(t);!o||(Ln.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,u=t instanceof Vn,c=s[0],l=u||Ua(t),h=function(e){var t=o.apply(Ln,Pt([e],s));return i&&d?t[0]:t};l&&n&&"function"==typeof c&&1!=c.length&&(u=l=!1);var d=this.__chain__,f=!!this.__actions__.length,p=a&&!d,v=u&&!f;if(!a&&l){t=v?t:new Vn(this);var g=e.apply(t,s);return g.__actions__.push({func:ha,args:[h],thisArg:r}),new Bn(g,d)}return p&&v?e.apply(this,s):(g=this.thru(h),p?i?g.value()[0]:g.value():g)})}),xt(["pop","push","shift","sort","splice","unshift"],function(e){var t=Oe[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",i=/^(?:pop|shift)$/.test(e);Ln.prototype[e]=function(){var e=arguments;if(i&&!this.__chain__){var r=this.value();return t.apply(Ua(r)?r:[],e)}return this[n](function(n){return t.apply(Ua(n)?n:[],e)})}}),gi(Vn.prototype,function(e,t){var n=Ln[t];if(n){var i=n.name+"";Me.call(On,i)||(On[i]=[]),On[i].push({name:t,func:n})}}),On[Nr(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var e=new Vn(this.__wrapped__);return e.__actions__=Sr(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Sr(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Sr(this.__views__),e},Vn.prototype.reverse=function(){if(this.__filtered__){var e=new Vn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ua(e),i=t<0,r=n?e.length:0,o=function(e,t,n){for(var i=-1,r=n.length;++i=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},Ln.prototype.plant=function(e){for(var t,n=this;n instanceof Fn;){var i=jo(n);i.__index__=0,i.__values__=r,t?o.__wrapped__=i:t=i;var o=i;n=n.__wrapped__}return o.__wrapped__=e,t},Ln.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vn){var t=e;return this.__actions__.length&&(t=new Vn(this)),(t=t.reverse()).__actions__.push({func:ha,args:[Zo],thisArg:r}),new Bn(t,this.__chain__)}return this.thru(Zo)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return cr(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,Xe&&(Ln.prototype[Xe]=function(){return this}),Ln}();ct._=dn,(i=(function(){return dn}).call(t,n,t,e))!==r&&(e.exports=i)}).call(this)},5478:function(e){e.exports=function(){"use strict";function e(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,i=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i={exports:{}};i.exports={defaults:{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:function(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}},changeDefaults:function(e){i.exports.defaults=e}};var r=/[&<>"']/,o=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,s=/[<>"']|&(?!#?\w+;)/g,u={"&":"&","<":"<",">":">",'"':""","'":"'"},c=function(e){return u[e]},l=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function h(e){return e.replace(l,function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""})}var d=/(^|[^\[])\^/g,f=/[^\w:]/g,p=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i,v={},g=/^[^:]+:\/*[^/]*$/,m=/^([^:]+:)[\s\S]*$/,y=/^([^:]+:\/*[^/]*)[\s\S]*$/;function b(e,t,n){var i=e.length;if(0===i)return"";for(var r=0;r=0&&"\\"===n[r];)i=!i;return i?"|":" |"}).split(/ \|/),i=0;if(n.length>t)n.splice(t);else for(;n.length1?{type:"space",raw:t[0]}:{raw:"\n"}},t.code=function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:S(n,"\n")}}},t.fences=function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],i=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var i=n[1];return t.split("\n").map(function(e){var t=e.match(/^\s+/);return null===t?e:t[0].length>=i.length?e.slice(i.length):e}).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:i}}},t.heading=function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(/#$/.test(n)){var i=S(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n}}},t.nptable=function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:E(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){var i,r=n.align.length;for(i=0;i ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}},t.list=function(e){var t=this.rules.block.list.exec(e);if(t){var n,i,r,o,a,s,u,c,l,h=t[0],d=t[2],f=d.length>1,p={type:"list",raw:h,ordered:f,start:f?+d.slice(0,-1):"",loose:!1,items:[]},v=t[0].match(this.rules.block.item),g=!1,m=v.length;r=this.rules.block.listItemStart.exec(v[0]);for(var y=0;yr[1].length:o[1].length>=r[0].length||o[1].length>3){v.splice(y,2,v[y]+(!this.options.pedantic&&o[1].length/i.test(i[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:i[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):C(i[0]):i[0]}},t.link=function(e){var t=this.rules.inline.link.exec(e);if(t){var n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;var i=S(n.slice(0,-1),"\\");if((n.length-i.length)%2==0)return}else{var r=function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,i=0,r=0;r-1){var o=(0===t[0].indexOf("!")?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,o).trim(),t[3]=""}}var a=t[2],s="";if(this.options.pedantic){var u=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(a);u&&(a=u[1],s=u[3])}else s=t[3]?t[3].slice(1,-1):"";return a=a.trim(),/^$/.test(n)?a.slice(1):a.slice(1,-1)),O(t,{href:a&&a.replace(this.rules.inline._escapes,"$1"),title:s&&s.replace(this.rules.inline._escapes,"$1")},t[0])}},t.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var i=(n[2]||n[1]).replace(/\s+/g," ");if(!(i=t[i.toLowerCase()])||!i.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return O(n,i,n[0])}},t.emStrong=function(e,t,n){void 0===n&&(n="");var i=this.rules.inline.emStrong.lDelim.exec(e);if(i&&(!i[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var r=i[1]||i[2]||"";if(!r||r&&(""===n||this.rules.inline.punctuation.exec(n))){var o,a,s=i[0].length-1,u=s,c=0,l="*"===i[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(l.lastIndex=0,t=t.slice(-1*e.length+s);null!=(i=l.exec(t));)if(o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6]){if(a=o.length,i[3]||i[4]){u+=a;continue}if((i[5]||i[6])&&s%3&&!((s+a)%3)){c+=a;continue}if(!((u-=a)>0))return a=Math.min(a,a+u+c),Math.min(s,a)%2?{type:"em",raw:e.slice(0,s+i.index+a+1),text:e.slice(1,s+i.index+a)}:{type:"strong",raw:e.slice(0,s+i.index+a+1),text:e.slice(2,s+i.index+a-1)}}}}},t.codespan=function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),i=/[^ ]/.test(n),r=/^ /.test(n)&&/ $/.test(n);return i&&r&&(n=n.substring(1,n.length-1)),n=C(n,!0),{type:"codespan",raw:t[0],text:n}}},t.br=function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}},t.del=function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2]}},t.autolink=function(e,t){var n,i,r=this.rules.inline.autolink.exec(e);if(r)return i="@"===r[2]?"mailto:"+(n=C(this.options.mangle?t(r[1]):r[1])):n=C(r[1]),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}},t.url=function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var i,r;if("@"===n[2])r="mailto:"+(i=C(this.options.mangle?t(n[0]):n[0]));else{var o;do{o=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(o!==n[0]);i=C(n[0]),r="www."===n[1]?"http://"+i:i}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}},t.inlineText=function(e,t,n){var i,r=this.rules.inline.text.exec(e);if(r)return i=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):C(r[0]):r[0]:C(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:i}},e}(),A={exec:function(){}},P=function(e,t){e=e.source||e,t=t||"";var n={replace:function(t,i){return i=(i=i.source||i).replace(d,"$1"),e=e.replace(t,i),n},getRegex:function(){return new RegExp(e,t)}};return n},M=k,I={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:A,table:A,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};I.def=P(I.def).replace("label",I._label).replace("title",I._title).getRegex(),I.bullet=/(?:[*+-]|\d{1,9}[.)])/,I.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,I.item=P(I.item,"gm").replace(/bull/g,I.bullet).getRegex(),I.listItemStart=P(/^( *)(bull) */).replace("bull",I.bullet).getRegex(),I.list=P(I.list).replace(/bull/g,I.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+I.def.source+")").getRegex(),I._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",I._comment=/|$)/,I.html=P(I.html,"i").replace("comment",I._comment).replace("tag",I._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),I.paragraph=P(I._paragraph).replace("hr",I.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",I._tag).getRegex(),I.blockquote=P(I.blockquote).replace("paragraph",I.paragraph).getRegex(),I.normal=M({},I),I.gfm=M({},I.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),I.gfm.nptable=P(I.gfm.nptable).replace("hr",I.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",I._tag).getRegex(),I.gfm.table=P(I.gfm.table).replace("hr",I.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",I._tag).getRegex(),I.pedantic=M({},I.normal,{html:P("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",I._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:A,paragraph:P(I.normal._paragraph).replace("hr",I.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",I.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var R={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:A,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:A,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"};R.punctuation=P(R.punctuation).replace(/punctuation/g,R._punctuation).getRegex(),R.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,R.escapedEmSt=/\\\*|\\_/g,R._comment=P(I._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),R.emStrong.lDelim=P(R.emStrong.lDelim).replace(/punct/g,R._punctuation).getRegex(),R.emStrong.rDelimAst=P(R.emStrong.rDelimAst,"g").replace(/punct/g,R._punctuation).getRegex(),R.emStrong.rDelimUnd=P(R.emStrong.rDelimUnd,"g").replace(/punct/g,R._punctuation).getRegex(),R._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,R._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,R._email=/[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])?)+(?![-_])/,R.autolink=P(R.autolink).replace("scheme",R._scheme).replace("email",R._email).getRegex(),R._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,R.tag=P(R.tag).replace("comment",R._comment).replace("attribute",R._attribute).getRegex(),R._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,R._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,R._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,R.link=P(R.link).replace("label",R._label).replace("href",R._href).replace("title",R._title).getRegex(),R.reflink=P(R.reflink).replace("label",R._label).getRegex(),R.reflinkSearch=P(R.reflinkSearch,"g").replace("reflink",R.reflink).replace("nolink",R.nolink).getRegex(),R.normal=M({},R),R.pedantic=M({},R.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:P(/^!?\[(label)\]\((.*?)\)/).replace("label",R._label).getRegex(),reflink:P(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",R._label).getRegex()}),R.gfm=M({},R.normal,{escape:P(R.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\1;)1&t&&(n+=e),t>>=1,e+=e;return n+e};function V(e){return e.replace(/---/g,"\u2014").replace(/--/g,"\u2013").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1\u2018").replace(/'/g,"\u2019").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1\u201c").replace(/"/g,"\u201d").replace(/\.{3}/g,"\u2026")}function z(e){var t,n,i="",r=e.length;for(t=0;t.5&&(n="x"+n.toString(16)),i+="&#"+n+";";return i}var U=function(){function t(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||L,this.options.tokenizer=this.options.tokenizer||new N,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var t={block:j.normal,inline:F.normal};this.options.pedantic?(t.block=j.pedantic,t.inline=F.pedantic):this.options.gfm&&(t.block=j.gfm,t.inline=this.options.breaks?F.breaks:F.gfm),this.tokenizer.rules=t}t.lex=function(e,n){return new t(n).lex(e)},t.lexInline=function(e,n){return new t(n).inlineTokens(e)};var n=t.prototype;return n.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens},n.blockTokens=function(e,t,n){var i,r,o,a,s,u,c=this;for(void 0===t&&(t=[]),void 0===n&&(n=!0),this.options.pedantic&&(e=e.replace(/^ +$/gm,""));e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(n){return!!(i=n.call(c,e,t))&&(e=e.substring(i.raw.length),t.push(i),!0)}))){if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length),i.type&&t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length),(a=t[t.length-1])&&"paragraph"===a.type?(a.raw+="\n"+i.raw,a.text+="\n"+i.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.nptable(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),i.tokens=this.blockTokens(i.text,[],n),t.push(i);continue}if(i=this.tokenizer.list(e)){for(e=e.substring(i.raw.length),o=i.items.length,r=0;r=0&&(t=Math.min(t,i))}),t<1/0&&t>=0&&(s=e.substring(0,t+1))}(),n&&(i=this.tokenizer.paragraph(s))){a=t[t.length-1],u&&"paragraph"===a.type?(a.raw+="\n"+i.raw,a.text+="\n"+i.text):t.push(i),u=s.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length),(a=t[t.length-1])&&"text"===a.type?(a.raw+="\n"+i.raw,a.text+="\n"+i.text):t.push(i);continue}if(e){var l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}throw new Error(l)}}return t},n.inline=function(e){var t,n,i,r,o,a,s=e.length;for(t=0;t0)for(;null!=(u=this.tokenizer.rules.inline.reflinkSearch.exec(h));)d.includes(u[0].slice(u[0].lastIndexOf("[")+1,-1))&&(h=h.slice(0,u.index)+"["+B("a",u[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(u=this.tokenizer.rules.inline.blockSkip.exec(h));)h=h.slice(0,u.index)+"["+B("a",u[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(u=this.tokenizer.rules.inline.escapedEmSt.exec(h));)h=h.slice(0,u.index)+"++"+h.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;e;)if(c||(l=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(n){return!!(o=n.call(r,e,t))&&(e=e.substring(o.raw.length),t.push(o),!0)}))){if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e,n,i)){e=e.substring(o.raw.length),n=o.inLink,i=o.inRawBlock,(a=t[t.length-1])&&"text"===o.type&&"text"===a.type?(a.raw+=o.raw,a.text+=o.text):t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),"link"===o.type&&(o.tokens=this.inlineTokens(o.text,[],!0,i)),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length),a=t[t.length-1],"link"===o.type?(o.tokens=this.inlineTokens(o.text,[],!0,i),t.push(o)):a&&"text"===o.type&&"text"===a.type?(a.raw+=o.raw,a.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,h,l)){e=e.substring(o.raw.length),o.tokens=this.inlineTokens(o.text,[],n,i),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e)){e=e.substring(o.raw.length),o.tokens=this.inlineTokens(o.text,[],n,i),t.push(o);continue}if(o=this.tokenizer.autolink(e,z)){e=e.substring(o.raw.length),t.push(o);continue}if(!n&&(o=this.tokenizer.url(e,z))){e=e.substring(o.raw.length),t.push(o);continue}if(s=e,this.options.extensions&&this.options.extensions.startInline&&function(){var t=1/0,n=e.slice(1),i=void 0;r.options.extensions.startInline.forEach(function(e){"number"==typeof(i=e.call(this,n))&&i>=0&&(t=Math.min(t,i))}),t<1/0&&t>=0&&(s=e.substring(0,t+1))}(),o=this.tokenizer.inlineText(s,i,V)){e=e.substring(o.raw.length),"_"!==o.raw.slice(-1)&&(l=o.raw.slice(-1)),c=!0,(a=t[t.length-1])&&"text"===a.type?(a.raw+=o.raw,a.text+=o.text):t.push(o);continue}if(e){var f="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(f);break}throw new Error(f)}}return t},function(t,n,i){i&&e(t,i)}(t,0,[{key:"rules",get:function(){return{block:j,inline:F}}}]),t}(),H=i.exports.defaults,G=function(e,t,n){if(e){var i;try{i=decodeURIComponent(h(n)).replace(f,"").toLowerCase()}catch(r){return null}if(0===i.indexOf("javascript:")||0===i.indexOf("vbscript:")||0===i.indexOf("data:"))return null}t&&!p.test(n)&&(n=function(e,t){v[" "+e]||(v[" "+e]=g.test(e)?e+"/":b(e,"/",!0));var n=-1===(e=v[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(m,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(y,"$1")+t:e+t}(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(r){return null}return n},W=_,q=function(){function e(e){this.options=e||H}var t=e.prototype;return t.code=function(e,t,n){var i=(t||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(e,i);null!=r&&r!==e&&(n=!0,e=r)}return e=e.replace(/\n$/,"")+"\n",i?'
    '+(n?e:W(e,!0))+"
    \n":"
    "+(n?e:W(e,!0))+"
    \n"},t.blockquote=function(e){return"
    \n"+e+"
    \n"},t.html=function(e){return e},t.heading=function(e,t,n,i){return this.options.headerIds?"'+e+"\n":""+e+"\n"},t.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},t.list=function(e,t,n){var i=t?"ol":"ul";return"<"+i+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"\n"},t.listitem=function(e){return"
  • "+e+"
  • \n"},t.checkbox=function(e){return" "},t.paragraph=function(e){return"

    "+e+"

    \n"},t.table=function(e,t){return t&&(t=""+t+""),"\n\n"+e+"\n"+t+"
    \n"},t.tablerow=function(e){return"\n"+e+"\n"},t.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"\n"},t.strong=function(e){return""+e+""},t.em=function(e){return""+e+""},t.codespan=function(e){return""+e+""},t.br=function(){return this.options.xhtml?"
    ":"
    "},t.del=function(e){return""+e+""},t.link=function(e,t,n){if(null===(e=G(this.options.sanitize,this.options.baseUrl,e)))return n;var i='"+n+""},t.image=function(e,t,n){if(null===(e=G(this.options.sanitize,this.options.baseUrl,e)))return n;var i=''+n+'":">")},t.text=function(e){return e},e}(),X=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return""+n},t.image=function(e,t,n){return""+n},t.br=function(){return""},e}(),Y=function(){function e(){this.seen={}}var t=e.prototype;return t.serialize=function(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},t.getNextSafeSlug=function(e,t){var n=e,i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[e];do{n=e+"-"+ ++i}while(this.seen.hasOwnProperty(n))}return t||(this.seen[e]=i,this.seen[n]=0),n},t.slug=function(e,t){void 0===t&&(t={});var n=this.serialize(e);return this.getNextSafeSlug(n,t.dryrun)},e}(),K=q,$=X,Q=Y,Z=i.exports.defaults,J=w,ee=U,te=function(){function e(e){this.options=e||Z,this.options.renderer=this.options.renderer||new K,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new $,this.slugger=new Q}e.parse=function(t,n){return new e(n).parse(t)},e.parseInline=function(t,n){return new e(n).parseInline(t)};var t=e.prototype;return t.parse=function(e,t){void 0===t&&(t=!0);var n,i,r,o,a,s,u,c,l,h,d,f,p,v,g,m,y,b,_,w="",k=e.length;for(n=0;n0&&"text"===g.tokens[0].type?(g.tokens[0].text=b+" "+g.tokens[0].text,g.tokens[0].tokens&&g.tokens[0].tokens.length>0&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=b+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:b}):v+=b),v+=this.parse(g.tokens,p),l+=this.renderer.listitem(v,y,m);w+=this.renderer.list(l,d,f);continue;case"html":w+=this.renderer.html(h.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(h.tokens));continue;case"text":for(l=h.tokens?this.parseInline(h.tokens):h.text;n+1An error occurred:

    "+ue(u.message+"",!0)+"
    ";throw u}}return de.options=de.setOptions=function(e){return ae(de.defaults,e),le(de.defaults),de},de.getDefaults=ce,de.defaults=he,de.use=function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;iAn error occurred:

    "+ue(i.message+"",!0)+"
    ";throw i}},de.Parser=te,de.parser=te.parse,de.Renderer=ie,de.TextRenderer=re,de.Lexer=ee,de.lexer=ee.lex,de.Tokenizer=ne,de.Slugger=oe,de.parse=de,de}()},29369:function(e,t,n){var i=n(56284),r=n(67830);function o(){this.clear()}o.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},o.prototype.enqueue=function(e){return this.items.push(e),++this.size},o.prototype.dequeue=function(){if(this.size){var e=this.items[this.offset];return 2*++this.offset>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,e}},o.prototype.peek=function(){if(this.size)return this.items[this.offset]},o.prototype.forEach=function(e,t){t=arguments.length>1?t:this;for(var n=this.offset,i=0,r=this.items.length;n=e.length)return{done:!0};var n=e[t];return t++,{value:n,done:!1}})},o.prototype.entries=function(){var e=this.items,t=this.offset,n=0;return new i(function(){if(t>=e.length)return{done:!0};var i=e[t];return t++,{value:[n++,i],done:!1}})},"undefined"!=typeof Symbol&&(o.prototype[Symbol.iterator]=o.prototype.values),o.prototype.toString=function(){return this.toArray().join(",")},o.prototype.toJSON=function(){return this.toArray()},o.prototype.inspect=function(){var e=this.toArray();return Object.defineProperty(e,"constructor",{value:o,enumerable:!1}),e},"undefined"!=typeof Symbol&&(o.prototype[Symbol.for("nodejs.util.inspect.custom")]=o.prototype.inspect),o.from=function(e){var t=new o;return r(e,function(e){t.enqueue(e)}),t},o.of=function(){return o.from(arguments)},e.exports=o},65593:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(72293),a=function(e){function t(){e.apply(this,arguments),this.value=null,this.hasNext=!1,this.hasCompleted=!1}return i(t,e),t.prototype._subscribe=function(t){return this.hasError?(t.error(this.thrownError),o.Subscription.EMPTY):this.hasCompleted&&this.hasNext?(t.next(this.value),t.complete(),o.Subscription.EMPTY):e.prototype._subscribe.call(this,t)},t.prototype.next=function(e){this.hasCompleted||(this.value=e,this.hasNext=!0)},t.prototype.error=function(t){this.hasCompleted||e.prototype.error.call(this,t)},t.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&e.prototype.next.call(this,this.value),e.prototype.complete.call(this)},t}(r.Subject);t.AsyncSubject=a},73907:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(6594),a=function(e){function t(t){e.call(this),this._value=t}return i(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),t.prototype._subscribe=function(t){var n=e.prototype._subscribe.call(this,t);return n&&!n.closed&&t.next(this._value),n},t.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new o.ObjectUnsubscribedError;return this._value},t.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},t}(r.Subject);t.BehaviorSubject=a},36888:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n,i){e.call(this),this.parent=t,this.outerValue=n,this.outerIndex=i,this.index=0}return i(t,e),t.prototype._next=function(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)},t.prototype._error=function(e){this.parent.notifyError(e,this),this.unsubscribe()},t.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},t}(n(42109).Subscriber);t.InnerSubscriber=r},94429:function(e,t,n){"use strict";var i=n(18705),r=function(){function e(e,t,n){this.kind=e,this.value=t,this.error=n,this.hasValue="N"===e}return e.prototype.observe=function(e){switch(this.kind){case"N":return e.next&&e.next(this.value);case"E":return e.error&&e.error(this.error);case"C":return e.complete&&e.complete()}},e.prototype.do=function(e,t,n){switch(this.kind){case"N":return e&&e(this.value);case"E":return t&&t(this.error);case"C":return n&&n()}},e.prototype.accept=function(e,t,n){return e&&"function"==typeof e.next?this.observe(e):this.do(e,t,n)},e.prototype.toObservable=function(){switch(this.kind){case"N":return i.Observable.of(this.value);case"E":return i.Observable.throw(this.error);case"C":return i.Observable.empty()}throw new Error("unexpected notification kind value")},e.createNext=function(t){return void 0!==t?new e("N",t):e.undefinedValueNotification},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e.undefinedValueNotification=new e("N",void 0),e}();t.Notification=r},18705:function(e,t,n){"use strict";var i=n(80019),r=n(18154),o=n(45783),a=n(10142),s=function(){function e(e){this._isScalar=!1,e&&(this._subscribe=e)}return e.prototype.lift=function(t){var n=new e;return n.source=this,n.operator=t,n},e.prototype.subscribe=function(e,t,n){var i=this.operator,o=r.toSubscriber(e,t,n);if(i?i.call(o,this.source):o.add(this.source||!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o},e.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.syncErrorThrown=!0,e.syncErrorValue=t,e.error(t)}},e.prototype.forEach=function(e,t){var n=this;if(t||(i.root.Rx&&i.root.Rx.config&&i.root.Rx.config.Promise?t=i.root.Rx.config.Promise:i.root.Promise&&(t=i.root.Promise)),!t)throw new Error("no Promise impl found");return new t(function(t,i){var r;r=n.subscribe(function(t){if(r)try{e(t)}catch(n){i(n),r.unsubscribe()}else e(t)},i,t)})},e.prototype._subscribe=function(e){return this.source.subscribe(e)},e.prototype[o.observable]=function(){return this},e.prototype.pipe=function(){for(var e=[],t=0;tt&&(o=Math.max(o,r-t)),o>0&&i.splice(0,o),i},t}(r.Subject);t.ReplaySubject=l;var h=function(e,t){this.time=e,this.value=t}},25430:function(e,t,n){"use strict";var i=n(2369);t.xQ=i.Subject,n(18705),n(24769),n(95914),n(88007),n(3194),n(61898),n(16301),n(23276),n(66593),n(13745),n(57362),n(24518),n(68789),n(30520),n(67370),n(86866),n(11505),n(5031),n(36780),n(17038),n(15718),n(27915),n(90763),n(6846),n(65662),n(6799),n(81854),n(612),n(10838),n(6725),n(8827),n(43511),n(38922),n(25178),n(56937),n(22947),n(82894),n(11206),n(94183),n(16653),n(17930),n(81118),n(50317),n(90674),n(66460),n(79232),n(3945),n(44674),n(73505),n(38749),n(16479),n(22744),n(44475),n(97384),n(8237),n(24937),n(99013),n(84042),n(44436),n(7099),n(6217),n(57476),n(72646),n(91573),n(27387),n(27366),n(88859),n(65425),n(16733),n(23381),n(80404),n(63770),n(53626),n(98851),n(84878),n(26544),n(53582),n(61749),n(34838),n(49681),n(46227),n(56455),n(40881),n(94315),n(92910),n(52442),n(84664),n(61250),n(28310),n(43027),n(18252),n(49571),n(31782),n(9800),n(41854),n(74839),n(1305),n(99144),n(89952),n(85863),n(2865),n(92667),n(22185),n(72919),n(88630),n(75458),n(40780),n(35099),n(57502),n(81676),n(20579),n(71323),n(84950),n(57113),n(95073),n(75654),n(59889),n(96611),n(81845),n(7828),n(4881),n(74568),n(32352),n(50169),n(93543),n(61690),n(15914),n(68583),n(44808),n(49088),n(72293),n(42109),n(65593),n(81959),n(73907),n(51493),n(94429),n(44640),n(11758),n(6594),n(13815),n(84536),n(73390),n(62688),n(24482),n(18353),n(55298),n(10142),n(85522),n(90680),n(97088),n(12948),n(28592),n(72121),n(45783),n(39053)},11965:function(e,t){"use strict";var n=function(){function e(t,n){void 0===n&&(n=e.now),this.SchedulerAction=t,this.now=n}return e.prototype.schedule=function(e,t,n){return void 0===t&&(t=0),new this.SchedulerAction(this,e).schedule(n,t)},e.now=Date.now?Date.now:function(){return+new Date},e}();t.Scheduler=n},2369:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(42109),a=n(72293),s=n(6594),u=n(9060),c=n(28592),l=function(e){function t(t){e.call(this,t),this.destination=t}return i(t,e),t}(o.Subscriber);t.SubjectSubscriber=l;var h=function(e){function t(){e.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return i(t,e),t.prototype[c.rxSubscriber]=function(){return new l(this)},t.prototype.lift=function(e){var t=new d(this,this);return t.operator=e,t},t.prototype.next=function(e){if(this.closed)throw new s.ObjectUnsubscribedError;if(!this.isStopped)for(var t=this.observers,n=t.length,i=t.slice(),r=0;r=e.length)return void i.complete();i.next(t[n]),e.index=n+1,this.schedule(e)}},t.prototype._subscribe=function(e){var n=this.arrayLike,i=this.scheduler,r=n.length;if(i)return i.schedule(t.dispatch,0,{arrayLike:n,index:0,length:r,subscriber:e});for(var o=0;o1?new t(e,i):1===r?new o.ScalarObservable(e[0],i):new a.EmptyObservable(i)},t.dispatch=function(e){var t=e.array,n=e.index,i=e.subscriber;n>=e.count?i.complete():(i.next(t[n]),!i.closed&&(e.index=n+1,this.schedule(e)))},t.prototype._subscribe=function(e){var n=this.array,i=n.length,r=this.scheduler;if(r)return r.schedule(t.dispatch,0,{array:n,index:0,count:i,subscriber:e});for(var o=0;o1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}(a.Subscriber)},34078:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(93658),a=n(84308),s=function(e){function t(t){e.call(this),this.observableFactory=t}return i(t,e),t.create=function(e){return new t(e)},t.prototype._subscribe=function(e){return new u(e,this.observableFactory)},t}(r.Observable);t.DeferObservable=s;var u=function(e){function t(t,n){e.call(this,t),this.factory=n,this.tryDefer()}return i(t,e),t.prototype.tryDefer=function(){try{this._callFactory()}catch(e){this._error(e)}},t.prototype._callFactory=function(){var e=this.factory();e&&this.add(o.subscribeToResult(this,e))},t}(a.OuterSubscriber)},70481:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t){e.call(this),this.scheduler=t}return i(t,e),t.create=function(e){return new t(e)},t.dispatch=function(e){e.subscriber.complete()},t.prototype._subscribe=function(e){var n=this.scheduler;if(n)return n.schedule(t.dispatch,0,{subscriber:e});e.complete()},t}(n(18705).Observable);t.EmptyObservable=r},72210:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n){e.call(this),this.error=t,this.scheduler=n}return i(t,e),t.create=function(e,n){return new t(e,n)},t.dispatch=function(e){e.subscriber.error(e.error)},t.prototype._subscribe=function(e){var n=this.error,i=this.scheduler;if(e.syncErrorThrowable=!0,i)return i.schedule(t.dispatch,0,{error:n,subscriber:e});e.error(n)},t}(n(18705).Observable);t.ErrorObservable=r},56064:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(70481),a=n(48242),s=n(93658),u=n(84308),c=function(e){function t(t,n){e.call(this),this.sources=t,this.resultSelector=n}return i(t,e),t.create=function(){for(var e=[],n=0;nl?l:t:t}(e)),this.arr=e,this.idx=t,this.len=n}return e.prototype[a.iterator]=function(){return this},e.prototype.next=function(){return this.idx=e.count?i.complete():(i.next(t),!i.closed&&(e.index=n+1,e.start=t+1,this.schedule(e)))},t.prototype._subscribe=function(e){var n=0,i=this.start,r=this._count,o=this.scheduler;if(o)return o.schedule(t.dispatch,0,{index:n,count:r,start:i,subscriber:e});for(;;){if(n++>=r){e.complete();break}if(e.next(i++),e.closed)break}},t}(n(18705).Observable);t.RangeObservable=r},80478:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n){e.call(this),this.value=t,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return i(t,e),t.create=function(e,n){return new t(e,n)},t.dispatch=function(e){var t=e.value,n=e.subscriber;e.done?n.complete():(n.next(t),!n.closed&&(e.done=!0,this.schedule(e)))},t.prototype._subscribe=function(e){var n=this.value,i=this.scheduler;if(i)return i.schedule(t.dispatch,0,{done:!1,value:n,subscriber:e});e.next(n),e.closed||e.complete()},t}(n(18705).Observable);t.ScalarObservable=r},82966:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(85522),a=n(39479),s=function(e){function t(t,n,i){void 0===n&&(n=0),void 0===i&&(i=o.asap),e.call(this),this.source=t,this.delayTime=n,this.scheduler=i,(!a.isNumeric(n)||n<0)&&(this.delayTime=0),(!i||"function"!=typeof i.schedule)&&(this.scheduler=o.asap)}return i(t,e),t.create=function(e,n,i){return void 0===n&&(n=0),void 0===i&&(i=o.asap),new t(e,n,i)},t.dispatch=function(e){return this.add(e.source.subscribe(e.subscriber))},t.prototype._subscribe=function(e){return this.scheduler.schedule(t.dispatch,this.delayTime,{source:this.source,subscriber:e})},t}(r.Observable);t.SubscribeOnObservable=s},92870:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(39479),o=n(18705),a=n(90680),s=n(41503),u=n(783),c=function(e){function t(t,n,i){void 0===t&&(t=0),e.call(this),this.period=-1,this.dueTime=0,r.isNumeric(n)?this.period=Number(n)<1?1:Number(n):s.isScheduler(n)&&(i=n),s.isScheduler(i)||(i=a.async),this.scheduler=i,this.dueTime=u.isDate(t)?+t-this.scheduler.now():t}return i(t,e),t.create=function(e,n,i){return void 0===e&&(e=0),new t(e,n,i)},t.dispatch=function(e){var t=e.index,n=e.period,i=e.subscriber;if(i.next(t),!i.closed){if(-1===n)return i.complete();e.index=t+1,this.schedule(e,n)}},t.prototype._subscribe=function(e){var n=this;return n.scheduler.schedule(t.dispatch,n.dueTime,{index:0,period:n.period,subscriber:e})},t}(o.Observable);t.TimerObservable=c},16196:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(93658),a=n(84308),s=function(e){function t(t,n){e.call(this),this.resourceFactory=t,this.observableFactory=n}return i(t,e),t.create=function(e,n){return new t(e,n)},t.prototype._subscribe=function(e){var t,n=this.resourceFactory,i=this.observableFactory;try{return t=n(),new u(e,t,i)}catch(r){e.error(r)}},t}(r.Observable);t.UsingObservable=s;var u=function(e){function t(t,n,i){e.call(this,t),this.resource=n,this.observableFactory=i,t.add(n),this.tryUse()}return i(t,e),t.prototype.tryUse=function(){try{var e=this.observableFactory.call(this,this.resource);e&&this.add(o.subscribeToResult(this,e))}catch(t){this._error(t)}},t}(a.OuterSubscriber)},59246:function(e,t,n){"use strict";var i=n(19183);t.bindCallback=i.BoundCallbackObservable.create},65571:function(e,t,n){"use strict";var i=n(78655);t.bindNodeCallback=i.BoundNodeCallbackObservable.create},24669:function(e,t,n){"use strict";var i=n(41503),r=n(48242),o=n(96177),a=n(49134);t.combineLatest=function(){for(var e=[],t=0;t1&&"number"==typeof e[e.length-1]&&(n=e.pop())):"number"==typeof u&&(n=e.pop()),null===s&&1===e.length&&e[0]instanceof i.Observable?e[0]:a.mergeAll(n)(new r.ArrayObservable(e,s))}},94503:function(e,t,n){"use strict";var i=n(20143);t.never=i.NeverObservable.create},69657:function(e,t,n){"use strict";var i=n(96177);t.of=i.ArrayObservable.of},61395:function(e,t,n){"use strict";var i=n(46243);t.onErrorResumeNext=i.onErrorResumeNextStatic},95425:function(e,t,n){"use strict";var i=n(19770);t.pairs=i.PairsObservable.create},24330:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(48242),o=n(96177),a=n(84308),s=n(93658);t.race=function(){for(var e=[],t=0;t=2&&(a=arguments[1]);var s=Number.POSITIVE_INFINITY;return t>=3&&(s=arguments[2]),o.bufferTime(e,a,s,n)(this)}},92523:function(e,t,n){"use strict";var i=n(15440);t.bufferToggle=function(e,t){return i.bufferToggle(e,t)(this)}},49436:function(e,t,n){"use strict";var i=n(51786);t.bufferWhen=function(e){return i.bufferWhen(e)(this)}},64731:function(e,t,n){"use strict";var i=n(93017);t._catch=function(e){return i.catchError(e)(this)}},92273:function(e,t,n){"use strict";var i=n(17054);t.combineAll=function(e){return i.combineAll(e)(this)}},8709:function(e,t,n){"use strict";var i=n(49134);t.combineLatest=function(){for(var e=[],t=0;t=2?i.reduce(e,t)(this):i.reduce(e)(this)}},12931:function(e,t,n){"use strict";var i=n(15329);t.repeat=function(e){return void 0===e&&(e=-1),i.repeat(e)(this)}},68816:function(e,t,n){"use strict";var i=n(63964);t.repeatWhen=function(e){return i.repeatWhen(e)(this)}},17144:function(e,t,n){"use strict";var i=n(40241);t.retry=function(e){return void 0===e&&(e=-1),i.retry(e)(this)}},82766:function(e,t,n){"use strict";var i=n(23896);t.retryWhen=function(e){return i.retryWhen(e)(this)}},62068:function(e,t,n){"use strict";var i=n(92043);t.sample=function(e){return i.sample(e)(this)}},97013:function(e,t,n){"use strict";var i=n(90680),r=n(71239);t.sampleTime=function(e,t){return void 0===t&&(t=i.async),r.sampleTime(e,t)(this)}},98996:function(e,t,n){"use strict";var i=n(64949);t.scan=function(e,t){return arguments.length>=2?i.scan(e,t)(this):i.scan(e)(this)}},77033:function(e,t,n){"use strict";var i=n(88948);t.sequenceEqual=function(e,t){return i.sequenceEqual(e,t)(this)}},10377:function(e,t,n){"use strict";var i=n(35473);t.share=function(){return i.share()(this)}},71623:function(e,t,n){"use strict";var i=n(62704);t.shareReplay=function(e,t,n){return i.shareReplay(e,t,n)(this)}},91956:function(e,t,n){"use strict";var i=n(92223);t.single=function(e){return i.single(e)(this)}},72355:function(e,t,n){"use strict";var i=n(11189);t.skip=function(e){return i.skip(e)(this)}},69329:function(e,t,n){"use strict";var i=n(73346);t.skipLast=function(e){return i.skipLast(e)(this)}},68481:function(e,t,n){"use strict";var i=n(12928);t.skipUntil=function(e){return i.skipUntil(e)(this)}},587:function(e,t,n){"use strict";var i=n(69415);t.skipWhile=function(e){return i.skipWhile(e)(this)}},49292:function(e,t,n){"use strict";var i=n(30673);t.startWith=function(){for(var e=[],t=0;t0&&this.destination.next(t),e.prototype._complete.call(this)},t}(r.Subscriber),s=function(e){function t(t,n,i){e.call(this,t),this.bufferSize=n,this.startBufferEvery=i,this.buffers=[],this.count=0}return i(t,e),t.prototype._next=function(e){var t=this,n=t.bufferSize,i=t.startBufferEvery,r=t.buffers,o=t.count;this.count++,o%i==0&&r.push([]);for(var a=r.length;a--;){var s=r[a];s.push(e),s.length===n&&(r.splice(a,1),this.destination.next(s))}},t.prototype._complete=function(){for(var t=this.buffers,n=this.destination;t.length>0;){var i=t.shift();i.length>0&&n.next(i)}e.prototype._complete.call(this)},t}(r.Subscriber)},6489:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(90680),o=n(42109),a=n(41503);t.bufferTime=function(e){var t=arguments.length,n=r.async;a.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],t--);var i=null;t>=2&&(i=arguments[1]);var o=Number.POSITIVE_INFINITY;return t>=3&&(o=arguments[2]),function(t){return t.lift(new s(e,i,o,n))}};var s=function(){function e(e,t,n,i){this.bufferTimeSpan=e,this.bufferCreationInterval=t,this.maxBufferSize=n,this.scheduler=i}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},e}(),u=function(){this.buffer=[]},c=function(e){function t(t,n,i,r,o){e.call(this,t),this.bufferTimeSpan=n,this.bufferCreationInterval=i,this.maxBufferSize=r,this.scheduler=o,this.contexts=[];var a=this.openContext();if(this.timespanOnly=null==i||i<0,this.timespanOnly)this.add(a.closeAction=o.schedule(l,n,{subscriber:this,context:a,bufferTimeSpan:n}));else{var s={bufferTimeSpan:n,bufferCreationInterval:i,subscriber:this,scheduler:o};this.add(a.closeAction=o.schedule(d,n,{subscriber:this,context:a})),this.add(o.schedule(h,i,s))}}return i(t,e),t.prototype._next=function(e){for(var t,n=this.contexts,i=n.length,r=0;r0;){var i=t.shift();n.next(i.buffer)}e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.contexts=null},t.prototype.onBufferFull=function(e){this.closeContext(e);var t=e.closeAction;if(t.unsubscribe(),this.remove(t),!this.closed&&this.timespanOnly){e=this.openContext();var n=this.bufferTimeSpan;this.add(e.closeAction=this.scheduler.schedule(l,n,{subscriber:this,context:e,bufferTimeSpan:n}))}},t.prototype.openContext=function(){var e=new u;return this.contexts.push(e),e},t.prototype.closeContext=function(e){this.destination.next(e.buffer);var t=this.contexts;(t?t.indexOf(e):-1)>=0&&t.splice(t.indexOf(e),1)},t}(o.Subscriber);function l(e){var t=e.subscriber,n=e.context;n&&t.closeContext(n),t.closed||(e.context=t.openContext(),e.context.closeAction=this.schedule(e,e.bufferTimeSpan))}function h(e){var t=e.bufferCreationInterval,n=e.bufferTimeSpan,i=e.subscriber,r=e.scheduler,o=i.openContext();i.closed||(i.add(o.closeAction=r.schedule(d,n,{subscriber:i,context:o})),this.schedule(e,t))}function d(e){e.subscriber.closeContext(e.context)}},15440:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(72293),o=n(93658),a=n(84308);t.bufferToggle=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.openings=e,this.closingSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.openings,this.closingSelector))},e}(),u=function(e){function t(t,n,i){e.call(this,t),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(o.subscribeToResult(this,n))}return i(t,e),t.prototype._next=function(e){for(var t=this.contexts,n=t.length,i=0;i0;){var i=n.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,e.prototype._error.call(this,t)},t.prototype._complete=function(){for(var t=this.contexts;t.length>0;){var n=t.shift();this.destination.next(n.buffer),n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,e.prototype._complete.call(this)},t.prototype.notifyNext=function(e,t,n,i,r){e?this.closeBuffer(e):this.openBuffer(t)},t.prototype.notifyComplete=function(e){this.closeBuffer(e.context)},t.prototype.openBuffer=function(e){try{var t=this.closingSelector.call(this,e);t&&this.trySubscribe(t)}catch(n){this._error(n)}},t.prototype.closeBuffer=function(e){var t=this.contexts;if(t&&e){var n=e.subscription;this.destination.next(e.buffer),t.splice(t.indexOf(e),1),this.remove(n),n.unsubscribe()}},t.prototype.trySubscribe=function(e){var t=this.contexts,n=new r.Subscription,i={buffer:[],subscription:n};t.push(i);var a=o.subscribeToResult(this,e,i);!a||a.closed?this.closeBuffer(i):(a.context=i,this.add(a),n.add(a))},t}(a.OuterSubscriber)},51786:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(72293),o=n(33463),a=n(85814),s=n(84308),u=n(93658);t.bufferWhen=function(e){return function(t){return t.lift(new c(e))}};var c=function(){function e(e){this.closingSelector=e}return e.prototype.call=function(e,t){return t.subscribe(new l(e,this.closingSelector))},e}(),l=function(e){function t(t,n){e.call(this,t),this.closingSelector=n,this.subscribing=!1,this.openBuffer()}return i(t,e),t.prototype._next=function(e){this.buffer.push(e)},t.prototype._complete=function(){var t=this.buffer;t&&this.destination.next(t),e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.buffer=null,this.subscribing=!1},t.prototype.notifyNext=function(e,t,n,i,r){this.openBuffer()},t.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},t.prototype.openBuffer=function(){var e=this.closingSubscription;e&&(this.remove(e),e.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];var t=o.tryCatch(this.closingSelector)();t===a.errorObject?this.error(a.errorObject.e):(e=new r.Subscription,this.closingSubscription=e,this.add(e),this.subscribing=!0,e.add(u.subscribeToResult(this,t)),this.subscribing=!1)},t}(s.OuterSubscriber)},93017:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.catchError=function(e){return function(t){var n=new a(e),i=t.lift(n);return n.caught=i}};var a=function(){function e(e){this.selector=e}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.selector,this.caught))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.selector=n,this.caught=i}return i(t,e),t.prototype.error=function(t){if(!this.isStopped){var n=void 0;try{n=this.selector(t,this.caught)}catch(i){return void e.prototype.error.call(this,i)}this._unsubscribeAndRecycle(),this.add(o.subscribeToResult(this,n))}},t}(r.OuterSubscriber)},17054:function(e,t,n){"use strict";var i=n(49134);t.combineAll=function(e){return function(t){return t.lift(new i.CombineLatestOperator(e))}}},49134:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(96177),o=n(48242),a=n(84308),s=n(93658),u={};t.combineLatest=function(){for(var e=[],t=0;t0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var o=Math.max(0,n[0].time-i.now());this.schedule(e,o)}else this.unsubscribe(),t.active=!1},t.prototype._schedule=function(e){this.active=!0,this.add(e.schedule(t.dispatch,this.delay,{source:this,destination:this.destination,scheduler:e}))},t.prototype.scheduleNotification=function(e){if(!0!==this.errored){var t=this.scheduler,n=new l(t.now()+this.delay,e);this.queue.push(n),!1===this.active&&this._schedule(t)}},t.prototype._next=function(e){this.scheduleNotification(s.Notification.createNext(e))},t.prototype._error=function(e){this.errored=!0,this.queue=[],this.destination.error(e)},t.prototype._complete=function(){this.scheduleNotification(s.Notification.createComplete())},t}(a.Subscriber),l=function(e,t){this.time=e,this.notification=t}},22944:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(18705),a=n(84308),s=n(93658);t.delayWhen=function(e,t){return t?function(n){return new l(n,t).lift(new u(e))}:function(t){return t.lift(new u(e))}};var u=function(){function e(e){this.delayDurationSelector=e}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.delayDurationSelector))},e}(),c=function(e){function t(t,n){e.call(this,t),this.delayDurationSelector=n,this.completed=!1,this.delayNotifierSubscriptions=[],this.values=[]}return i(t,e),t.prototype.notifyNext=function(e,t,n,i,r){this.destination.next(e),this.removeSubscription(r),this.tryComplete()},t.prototype.notifyError=function(e,t){this._error(e)},t.prototype.notifyComplete=function(e){var t=this.removeSubscription(e);t&&this.destination.next(t),this.tryComplete()},t.prototype._next=function(e){try{var t=this.delayDurationSelector(e);t&&this.tryDelay(t,e)}catch(n){this.destination.error(n)}},t.prototype._complete=function(){this.completed=!0,this.tryComplete()},t.prototype.removeSubscription=function(e){e.unsubscribe();var t=this.delayNotifierSubscriptions.indexOf(e),n=null;return-1!==t&&(n=this.values[t],this.delayNotifierSubscriptions.splice(t,1),this.values.splice(t,1)),n},t.prototype.tryDelay=function(e,t){var n=s.subscribeToResult(this,e,t);n&&!n.closed&&(this.add(n),this.delayNotifierSubscriptions.push(n)),this.values.push(t)},t.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},t}(a.OuterSubscriber),l=function(e){function t(t,n){e.call(this),this.source=t,this.subscriptionDelay=n}return i(t,e),t.prototype._subscribe=function(e){this.subscriptionDelay.subscribe(new h(e,this.source))},t}(o.Observable),h=function(e){function t(t,n){e.call(this),this.parent=t,this.source=n,this.sourceSubscribed=!1}return i(t,e),t.prototype._next=function(e){this.subscribeToSource()},t.prototype._error=function(e){this.unsubscribe(),this.parent.error(e)},t.prototype._complete=function(){this.subscribeToSource()},t.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},t}(r.Subscriber)},95591:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.dematerialize=function(){return function(e){return e.lift(new o)}};var o=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new a(e))},e}(),a=function(e){function t(t){e.call(this,t)}return i(t,e),t.prototype._next=function(e){e.observe(this.destination)},t}(r.Subscriber)},25753:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658),a=n(40317);t.distinct=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.keySelector=e,this.flushes=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.keySelector,this.flushes))},e}(),u=function(e){function t(t,n,i){e.call(this,t),this.keySelector=n,this.values=new a.Set,i&&this.add(o.subscribeToResult(this,i))}return i(t,e),t.prototype.notifyNext=function(e,t,n,i,r){this.values.clear()},t.prototype.notifyError=function(e,t){this._error(e)},t.prototype._next=function(e){this.keySelector?this._useKeySelector(e):this._finalizeNext(e,e)},t.prototype._useKeySelector=function(e){var t,n=this.destination;try{t=this.keySelector(e)}catch(i){return void n.error(i)}this._finalizeNext(t,e)},t.prototype._finalizeNext=function(e,t){var n=this.values;n.has(e)||(n.add(e),this.destination.next(t))},t}(r.OuterSubscriber);t.DistinctSubscriber=u},65608:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(33463),a=n(85814);t.distinctUntilChanged=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.compare=e,this.keySelector=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.compare,this.keySelector))},e}(),u=function(e){function t(t,n,i){e.call(this,t),this.keySelector=i,this.hasKey=!1,"function"==typeof n&&(this.compare=n)}return i(t,e),t.prototype.compare=function(e,t){return e===t},t.prototype._next=function(e){var t=e;if(this.keySelector&&(t=o.tryCatch(this.keySelector)(e))===a.errorObject)return this.destination.error(a.errorObject.e);var n=!1;if(this.hasKey){if((n=o.tryCatch(this.compare)(this.key,t))===a.errorObject)return this.destination.error(a.errorObject.e)}else this.hasKey=!0;!1===Boolean(n)&&(this.key=t,this.destination.next(e))},t}(r.Subscriber)},8330:function(e,t,n){"use strict";var i=n(65608);t.distinctUntilKeyChanged=function(e,t){return i.distinctUntilChanged(function(n,i){return t?t(n[e],i[e]):n[e]===i[e]})}},29264:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758);t.elementAt=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){if(this.index=e,this.defaultValue=t,e<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.index,this.defaultValue))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.index=n,this.defaultValue=i}return i(t,e),t.prototype._next=function(e){0==this.index--&&(this.destination.next(e),this.destination.complete())},t.prototype._complete=function(){var e=this.destination;this.index>=0&&(void 0!==this.defaultValue?e.next(this.defaultValue):e.error(new o.ArgumentOutOfRangeError)),e.complete()},t}(r.Subscriber)},26285:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.every=function(e,t){return function(n){return n.lift(new o(e,t,n))}};var o=function(){function e(e,t,n){this.predicate=e,this.thisArg=t,this.source=n}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.predicate,this.thisArg,this.source))},e}(),a=function(e){function t(t,n,i,r){e.call(this,t),this.predicate=n,this.thisArg=i,this.source=r,this.index=0,this.thisArg=i||this}return i(t,e),t.prototype.notifyComplete=function(e){this.destination.next(e),this.destination.complete()},t.prototype._next=function(e){var t=!1;try{t=this.predicate.call(this.thisArg,e,this.index++,this.source)}catch(n){return void this.destination.error(n)}t||this.notifyComplete(!1)},t.prototype._complete=function(){this.notifyComplete(!0)},t}(r.Subscriber)},93229:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.exhaust=function(){return function(e){return e.lift(new a)}};var a=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new s(e))},e}(),s=function(e){function t(t){e.call(this,t),this.hasCompleted=!1,this.hasSubscription=!1}return i(t,e),t.prototype._next=function(e){this.hasSubscription||(this.hasSubscription=!0,this.add(o.subscribeToResult(this,e)))},t.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},t.prototype.notifyComplete=function(e){this.remove(e),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},t}(r.OuterSubscriber)},15758:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.exhaustMap=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.project=e,this.resultSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.project,this.resultSelector))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.project=n,this.resultSelector=i,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}return i(t,e),t.prototype._next=function(e){this.hasSubscription||this.tryNext(e)},t.prototype.tryNext=function(e){var t=this.index++,n=this.destination;try{var i=this.project(e,t);this.hasSubscription=!0,this.add(o.subscribeToResult(this,i,e,t))}catch(r){n.error(r)}},t.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},t.prototype.notifyNext=function(e,t,n,i,r){var o=this.destination;this.resultSelector?this.trySelectResult(e,t,n,i):o.next(t)},t.prototype.trySelectResult=function(e,t,n,i){var r=this.resultSelector,o=this.destination;try{var a=r(e,t,n,i);o.next(a)}catch(s){o.error(s)}},t.prototype.notifyError=function(e){this.destination.error(e)},t.prototype.notifyComplete=function(e){this.remove(e),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},t}(r.OuterSubscriber)},55364:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(33463),o=n(85814),a=n(84308),s=n(93658);t.expand=function(e,t,n){return void 0===t&&(t=Number.POSITIVE_INFINITY),void 0===n&&(n=void 0),t=(t||0)<1?Number.POSITIVE_INFINITY:t,function(i){return i.lift(new u(e,t,n))}};var u=function(){function e(e,t,n){this.project=e,this.concurrent=t,this.scheduler=n}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.project,this.concurrent,this.scheduler))},e}();t.ExpandOperator=u;var c=function(e){function t(t,n,i,r){e.call(this,t),this.project=n,this.concurrent=i,this.scheduler=r,this.index=0,this.active=0,this.hasCompleted=!1,i0&&this._next(t.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},t}(a.OuterSubscriber);t.ExpandSubscriber=c},27015:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.filter=function(e,t){return function(n){return n.lift(new o(e,t))}};var o=function(){function e(e,t){this.predicate=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.predicate,this.thisArg))},e}(),a=function(e){function t(t,n,i){e.call(this,t),this.predicate=n,this.thisArg=i,this.count=0}return i(t,e),t.prototype._next=function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)},t}(r.Subscriber)},94367:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(72293);t.finalize=function(e){return function(t){return t.lift(new a(e))}};var a=function(){function e(e){this.callback=e}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.callback))},e}(),s=function(e){function t(t,n){e.call(this,t),this.add(new o.Subscription(n))}return i(t,e),t}(r.Subscriber)},16700:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.find=function(e,t){if("function"!=typeof e)throw new TypeError("predicate is not a function");return function(n){return n.lift(new o(e,n,!1,t))}};var o=function(){function e(e,t,n,i){this.predicate=e,this.source=t,this.yieldIndex=n,this.thisArg=i}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.predicate,this.source,this.yieldIndex,this.thisArg))},e}();t.FindValueOperator=o;var a=function(e){function t(t,n,i,r,o){e.call(this,t),this.predicate=n,this.source=i,this.yieldIndex=r,this.thisArg=o,this.index=0}return i(t,e),t.prototype.notifyComplete=function(e){var t=this.destination;t.next(e),t.complete()},t.prototype._next=function(e){var t=this.predicate,n=this.thisArg,i=this.index++;try{t.call(n||this,e,i,this.source)&&this.notifyComplete(this.yieldIndex?i:e)}catch(r){this.destination.error(r)}},t.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},t}(r.Subscriber);t.FindValueSubscriber=a},86452:function(e,t,n){"use strict";var i=n(16700);t.findIndex=function(e,t){return function(n){return n.lift(new i.FindValueOperator(e,n,!0,t))}}},12309:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(44640);t.first=function(e,t,n){return function(i){return i.lift(new a(e,t,n,i))}};var a=function(){function e(e,t,n,i){this.predicate=e,this.resultSelector=t,this.defaultValue=n,this.source=i}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.predicate,this.resultSelector,this.defaultValue,this.source))},e}(),s=function(e){function t(t,n,i,r,o){e.call(this,t),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=o,this.index=0,this.hasCompleted=!1,this._emitted=!1}return i(t,e),t.prototype._next=function(e){var t=this.index++;this.predicate?this._tryPredicate(e,t):this._emit(e,t)},t.prototype._tryPredicate=function(e,t){var n;try{n=this.predicate(e,t,this.source)}catch(i){return void this.destination.error(i)}n&&this._emit(e,t)},t.prototype._emit=function(e,t){this.resultSelector?this._tryResultSelector(e,t):this._emitFinal(e)},t.prototype._tryResultSelector=function(e,t){var n;try{n=this.resultSelector(e,t)}catch(i){return void this.destination.error(i)}this._emitFinal(n)},t.prototype._emitFinal=function(e){var t=this.destination;this._emitted||(this._emitted=!0,t.next(e),t.complete(),this.hasCompleted=!0)},t.prototype._complete=function(){var e=this.destination;this.hasCompleted||void 0===this.defaultValue?this.hasCompleted||e.error(new o.EmptyError):(e.next(this.defaultValue),e.complete())},t}(r.Subscriber)},92577:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(72293),a=n(18705),s=n(2369),u=n(49754),c=n(30764);t.groupBy=function(e,t,n,i){return function(r){return r.lift(new l(e,t,n,i))}};var l=function(){function e(e,t,n,i){this.keySelector=e,this.elementSelector=t,this.durationSelector=n,this.subjectSelector=i}return e.prototype.call=function(e,t){return t.subscribe(new h(e,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},e}(),h=function(e){function t(t,n,i,r,o){e.call(this,t),this.keySelector=n,this.elementSelector=i,this.durationSelector=r,this.subjectSelector=o,this.groups=null,this.attemptedToUnsubscribe=!1,this.count=0}return i(t,e),t.prototype._next=function(e){var t;try{t=this.keySelector(e)}catch(n){return void this.error(n)}this._group(e,t)},t.prototype._group=function(e,t){var n=this.groups;n||(n=this.groups="string"==typeof t?new c.FastMap:new u.Map);var i,r=n.get(t);if(this.elementSelector)try{i=this.elementSelector(e)}catch(l){this.error(l)}else i=e;if(!r){r=this.subjectSelector?this.subjectSelector():new s.Subject,n.set(t,r);var o=new f(t,r,this);if(this.destination.next(o),this.durationSelector){var a=void 0;try{a=this.durationSelector(new f(t,r))}catch(l){return void this.error(l)}this.add(a.subscribe(new d(t,r,this)))}}r.closed||r.next(i)},t.prototype._error=function(e){var t=this.groups;t&&(t.forEach(function(t,n){t.error(e)}),t.clear()),this.destination.error(e)},t.prototype._complete=function(){var e=this.groups;e&&(e.forEach(function(e,t){e.complete()}),e.clear()),this.destination.complete()},t.prototype.removeGroup=function(e){this.groups.delete(e)},t.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&e.prototype.unsubscribe.call(this))},t}(r.Subscriber),d=function(e){function t(t,n,i){e.call(this,n),this.key=t,this.group=n,this.parent=i}return i(t,e),t.prototype._next=function(e){this.complete()},t.prototype._unsubscribe=function(){var e=this.parent,t=this.key;this.key=this.parent=null,e&&e.removeGroup(t)},t}(r.Subscriber),f=function(e){function t(t,n,i){e.call(this),this.key=t,this.groupSubject=n,this.refCountSubscription=i}return i(t,e),t.prototype._subscribe=function(e){var t=new o.Subscription,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&t.add(new p(n)),t.add(i.subscribe(e)),t},t}(a.Observable);t.GroupedObservable=f;var p=function(e){function t(t){e.call(this),this.parent=t,t.count++}return i(t,e),t.prototype.unsubscribe=function(){var t=this.parent;!t.closed&&!this.closed&&(e.prototype.unsubscribe.call(this),t.count-=1,0===t.count&&t.attemptedToUnsubscribe&&t.unsubscribe())},t}(o.Subscription)},86898:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(68668);t.ignoreElements=function(){return function(e){return e.lift(new a)}};var a=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new s(e))},e}(),s=function(e){function t(){e.apply(this,arguments)}return i(t,e),t.prototype._next=function(e){o.noop()},t}(r.Subscriber)},89121:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.isEmpty=function(){return function(e){return e.lift(new o)}};var o=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new a(e))},e}(),a=function(e){function t(t){e.call(this,t)}return i(t,e),t.prototype.notifyComplete=function(e){var t=this.destination;t.next(e),t.complete()},t.prototype._next=function(e){this.notifyComplete(!1)},t.prototype._complete=function(){this.notifyComplete(!0)},t}(r.Subscriber)},4636:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(44640);t.last=function(e,t,n){return function(i){return i.lift(new a(e,t,n,i))}};var a=function(){function e(e,t,n,i){this.predicate=e,this.resultSelector=t,this.defaultValue=n,this.source=i}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.predicate,this.resultSelector,this.defaultValue,this.source))},e}(),s=function(e){function t(t,n,i,r,o){e.call(this,t),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=o,this.hasValue=!1,this.index=0,void 0!==r&&(this.lastValue=r,this.hasValue=!0)}return i(t,e),t.prototype._next=function(e){var t=this.index++;if(this.predicate)this._tryPredicate(e,t);else{if(this.resultSelector)return void this._tryResultSelector(e,t);this.lastValue=e,this.hasValue=!0}},t.prototype._tryPredicate=function(e,t){var n;try{n=this.predicate(e,t,this.source)}catch(i){return void this.destination.error(i)}if(n){if(this.resultSelector)return void this._tryResultSelector(e,t);this.lastValue=e,this.hasValue=!0}},t.prototype._tryResultSelector=function(e,t){var n;try{n=this.resultSelector(e,t)}catch(i){return void this.destination.error(i)}this.lastValue=n,this.hasValue=!0},t.prototype._complete=function(){var e=this.destination;this.hasValue?(e.next(this.lastValue),e.complete()):e.error(new o.EmptyError)},t}(r.Subscriber)},40119:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.map=function(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new o(e,t))}};var o=function(){function e(e,t){this.project=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.project,this.thisArg))},e}();t.MapOperator=o;var a=function(e){function t(t,n,i){e.call(this,t),this.project=n,this.count=0,this.thisArg=i||this}return i(t,e),t.prototype._next=function(e){var t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(r.Subscriber)},23491:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.mapTo=function(e){return function(t){return t.lift(new o(e))}};var o=function(){function e(e){this.value=e}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.value))},e}(),a=function(e){function t(t,n){e.call(this,t),this.value=n}return i(t,e),t.prototype._next=function(e){this.destination.next(this.value)},t}(r.Subscriber)},71177:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(94429);t.materialize=function(){return function(e){return e.lift(new a)}};var a=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new s(e))},e}(),s=function(e){function t(t){e.call(this,t)}return i(t,e),t.prototype._next=function(e){this.destination.next(o.Notification.createNext(e))},t.prototype._error=function(e){var t=this.destination;t.next(o.Notification.createError(e)),t.complete()},t.prototype._complete=function(){var e=this.destination;e.next(o.Notification.createComplete()),e.complete()},t}(r.Subscriber)},33499:function(e,t,n){"use strict";var i=n(97369);t.max=function(e){return i.reduce("function"==typeof e?function(t,n){return e(t,n)>0?t:n}:function(e,t){return e>t?e:t})}},56098:function(e,t,n){"use strict";var i=n(38781),r=n(38781);t.mergeStatic=r.merge,t.merge=function(){for(var e=[],t=0;t0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(o.OuterSubscriber);t.MergeMapSubscriber=s},6693:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.mergeMapTo=function(e,t,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"number"==typeof t&&(n=t,t=null),function(i){return i.lift(new a(e,t,n))}};var a=function(){function e(e,t,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.ish=e,this.resultSelector=t,this.concurrent=n}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.ish,this.resultSelector,this.concurrent))},e}();t.MergeMapToOperator=a;var s=function(e){function t(t,n,i,r){void 0===r&&(r=Number.POSITIVE_INFINITY),e.call(this,t),this.ish=n,this.resultSelector=i,this.concurrent=r,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(t,e),t.prototype._next=function(e){if(this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(r.OuterSubscriber);t.MergeMapToSubscriber=s},7550:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(33463),o=n(85814),a=n(93658),s=n(84308);t.mergeScan=function(e,t,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(i){return i.lift(new u(e,t,n))}};var u=function(){function e(e,t,n){this.accumulator=e,this.seed=t,this.concurrent=n}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.accumulator,this.seed,this.concurrent))},e}();t.MergeScanOperator=u;var c=function(e){function t(t,n,i,r){e.call(this,t),this.accumulator=n,this.acc=i,this.concurrent=r,this.hasValue=!1,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(t,e),t.prototype._next=function(e){if(this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},t}(s.OuterSubscriber);t.MergeScanSubscriber=c},51213:function(e,t,n){"use strict";var i=n(97369);t.min=function(e){return i.reduce("function"==typeof e?function(t,n){return e(t,n)<0?t:n}:function(e,t){return e=2?function(n){return a.pipe(i.scan(e,t),r.takeLast(1),o.defaultIfEmpty(t))(n)}:function(t){return a.pipe(i.scan(function(t,n,i){return e(t,n,i+1)}),r.takeLast(1))(t)}}},1694:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.refCount=function(){return function(e){return e.lift(new o(e))}};var o=function(){function e(e){this.connectable=e}return e.prototype.call=function(e,t){var n=this.connectable;n._refCount++;var i=new a(e,n),r=t.subscribe(i);return i.closed||(i.connection=n.connect()),r},e}(),a=function(e){function t(t,n){e.call(this,t),this.connectable=n}return i(t,e),t.prototype._unsubscribe=function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null},t}(r.Subscriber)},15329:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(70481);t.repeat=function(e){return void 0===e&&(e=-1),function(t){return 0===e?new o.EmptyObservable:t.lift(new a(e<0?-1:e-1,t))}};var a=function(){function e(e,t){this.count=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.count,this.source))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.count=n,this.source=i}return i(t,e),t.prototype.complete=function(){if(!this.isStopped){var t=this.source,n=this.count;if(0===n)return e.prototype.complete.call(this);n>-1&&(this.count=n-1),t.subscribe(this._unsubscribeAndRecycle())}},t}(r.Subscriber)},63964:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(33463),a=n(85814),s=n(84308),u=n(93658);t.repeatWhen=function(e){return function(t){return t.lift(new c(e))}};var c=function(){function e(e){this.notifier=e}return e.prototype.call=function(e,t){return t.subscribe(new l(e,this.notifier,t))},e}(),l=function(e){function t(t,n,i){e.call(this,t),this.notifier=n,this.source=i,this.sourceIsBeingSubscribedTo=!0}return i(t,e),t.prototype.notifyNext=function(e,t,n,i,r){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},t.prototype.notifyComplete=function(t){if(!1===this.sourceIsBeingSubscribedTo)return e.prototype.complete.call(this)},t.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return e.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next()}},t.prototype._unsubscribe=function(){var e=this.notifications,t=this.retriesSubscription;e&&(e.unsubscribe(),this.notifications=null),t&&(t.unsubscribe(),this.retriesSubscription=null),this.retries=null},t.prototype._unsubscribeAndRecycle=function(){var t=this,n=t.notifications,i=t.retries,r=t.retriesSubscription;return this.notifications=null,this.retries=null,this.retriesSubscription=null,e.prototype._unsubscribeAndRecycle.call(this),this.notifications=n,this.retries=i,this.retriesSubscription=r,this},t.prototype.subscribeToRetries=function(){this.notifications=new r.Subject;var t=o.tryCatch(this.notifier)(this.notifications);if(t===a.errorObject)return e.prototype.complete.call(this);this.retries=t,this.retriesSubscription=u.subscribeToResult(this,t)},t}(s.OuterSubscriber)},40241:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.retry=function(e){return void 0===e&&(e=-1),function(t){return t.lift(new o(e,t))}};var o=function(){function e(e,t){this.count=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.count,this.source))},e}(),a=function(e){function t(t,n,i){e.call(this,t),this.count=n,this.source=i}return i(t,e),t.prototype.error=function(t){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return e.prototype.error.call(this,t);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},t}(r.Subscriber)},23896:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(33463),a=n(85814),s=n(84308),u=n(93658);t.retryWhen=function(e){return function(t){return t.lift(new c(e,t))}};var c=function(){function e(e,t){this.notifier=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new l(e,this.notifier,this.source))},e}(),l=function(e){function t(t,n,i){e.call(this,t),this.notifier=n,this.source=i}return i(t,e),t.prototype.error=function(t){if(!this.isStopped){var n=this.errors,i=this.retries,s=this.retriesSubscription;if(i)this.errors=null,this.retriesSubscription=null;else{if(n=new r.Subject,(i=o.tryCatch(this.notifier)(n))===a.errorObject)return e.prototype.error.call(this,a.errorObject.e);s=u.subscribeToResult(this,i)}this._unsubscribeAndRecycle(),this.errors=n,this.retries=i,this.retriesSubscription=s,n.next(t)}},t.prototype._unsubscribe=function(){var e=this.errors,t=this.retriesSubscription;e&&(e.unsubscribe(),this.errors=null),t&&(t.unsubscribe(),this.retriesSubscription=null),this.retries=null},t.prototype.notifyNext=function(e,t,n,i,r){var o=this,a=o.errors,s=o.retries,u=o.retriesSubscription;this.errors=null,this.retries=null,this.retriesSubscription=null,this._unsubscribeAndRecycle(),this.errors=a,this.retries=s,this.retriesSubscription=u,this.source.subscribe(this)},t}(s.OuterSubscriber)},92043:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.sample=function(e){return function(t){return t.lift(new a(e))}};var a=function(){function e(e){this.notifier=e}return e.prototype.call=function(e,t){var n=new s(e),i=t.subscribe(n);return i.add(o.subscribeToResult(n,this.notifier)),i},e}(),s=function(e){function t(){e.apply(this,arguments),this.hasValue=!1}return i(t,e),t.prototype._next=function(e){this.value=e,this.hasValue=!0},t.prototype.notifyNext=function(e,t,n,i,r){this.emitValue()},t.prototype.notifyComplete=function(){this.emitValue()},t.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},t}(r.OuterSubscriber)},71239:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(90680);t.sampleTime=function(e,t){return void 0===t&&(t=o.async),function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.period=e,this.scheduler=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.period,this.scheduler))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.period=n,this.scheduler=i,this.hasValue=!1,this.add(i.schedule(u,n,{subscriber:this,period:n}))}return i(t,e),t.prototype._next=function(e){this.lastValue=e,this.hasValue=!0},t.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},t}(r.Subscriber);function u(e){var t=e.period;e.subscriber.notifyNext(),this.schedule(e,t)}},64949:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.scan=function(e,t){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new o(e,t,n))}};var o=function(){function e(e,t,n){void 0===n&&(n=!1),this.accumulator=e,this.seed=t,this.hasSeed=n}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.accumulator,this.seed,this.hasSeed))},e}(),a=function(e){function t(t,n,i,r){e.call(this,t),this.accumulator=n,this._seed=i,this.hasSeed=r,this.index=0}return i(t,e),Object.defineProperty(t.prototype,"seed",{get:function(){return this._seed},set:function(e){this.hasSeed=!0,this._seed=e},enumerable:!0,configurable:!0}),t.prototype._next=function(e){if(this.hasSeed)return this._tryNext(e);this.seed=e,this.destination.next(e)},t.prototype._tryNext=function(e){var t,n=this.index++;try{t=this.accumulator(this.seed,e,n)}catch(i){this.destination.error(i)}this.seed=t,this.destination.next(t)},t}(r.Subscriber)},88948:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(33463),a=n(85814);t.sequenceEqual=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.compareTo=e,this.comparor=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.compareTo,this.comparor))},e}();t.SequenceEqualOperator=s;var u=function(e){function t(t,n,i){e.call(this,t),this.compareTo=n,this.comparor=i,this._a=[],this._b=[],this._oneComplete=!1,this.add(n.subscribe(new c(t,this)))}return i(t,e),t.prototype._next=function(e){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(e),this.checkValues())},t.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},t.prototype.checkValues=function(){for(var e=this,t=e._a,n=e._b,i=e.comparor;t.length>0&&n.length>0;){var r=t.shift(),s=n.shift(),u=!1;i?(u=o.tryCatch(i)(r,s))===a.errorObject&&this.destination.error(a.errorObject.e):u=r===s,u||this.emit(!1)}},t.prototype.emit=function(e){var t=this.destination;t.next(e),t.complete()},t.prototype.nextB=function(e){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(e),this.checkValues())},t}(r.Subscriber);t.SequenceEqualSubscriber=u;var c=function(e){function t(t,n){e.call(this,t),this.parent=n}return i(t,e),t.prototype._next=function(e){this.parent.nextB(e)},t.prototype._error=function(e){this.parent.error(e)},t.prototype._complete=function(){this.parent._complete()},t}(r.Subscriber)},35473:function(e,t,n){"use strict";var i=n(27372),r=n(1694),o=n(2369);function a(){return new o.Subject}t.share=function(){return function(e){return r.refCount()(i.multicast(a)(e))}}},62704:function(e,t,n){"use strict";var i=n(81959);t.shareReplay=function(e,t,n){return function(r){return r.lift(function(e,t,n){var r,o,a=0,s=!1,u=!1;return function(c){a++,(!r||s)&&(s=!1,r=new i.ReplaySubject(e,t,n),o=c.subscribe({next:function(e){r.next(e)},error:function(e){s=!0,r.error(e)},complete:function(){u=!0,r.complete()}}));var l=r.subscribe(this);return function(){a--,l.unsubscribe(),o&&0===a&&u&&o.unsubscribe()}}}(e,t,n))}}},92223:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(44640);t.single=function(e){return function(t){return t.lift(new a(e,t))}};var a=function(){function e(e,t){this.predicate=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.predicate,this.source))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.predicate=n,this.source=i,this.seenValue=!1,this.index=0}return i(t,e),t.prototype.applySingleValue=function(e){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=e)},t.prototype._next=function(e){var t=this.index++;this.predicate?this.tryNext(e,t):this.applySingleValue(e)},t.prototype.tryNext=function(e,t){try{this.predicate(e,t,this.source)&&this.applySingleValue(e)}catch(n){this.destination.error(n)}},t.prototype._complete=function(){var e=this.destination;this.index>0?(e.next(this.seenValue?this.singleValue:void 0),e.complete()):e.error(new o.EmptyError)},t}(r.Subscriber)},11189:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.skip=function(e){return function(t){return t.lift(new o(e))}};var o=function(){function e(e){this.total=e}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.total))},e}(),a=function(e){function t(t,n){e.call(this,t),this.total=n,this.count=0}return i(t,e),t.prototype._next=function(e){++this.count>this.total&&this.destination.next(e)},t}(r.Subscriber)},73346:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758);t.skipLast=function(e){return function(t){return t.lift(new a(e))}};var a=function(){function e(e){if(this._skipCount=e,this._skipCount<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(0===this._skipCount?new r.Subscriber(e):new s(e,this._skipCount))},e}(),s=function(e){function t(t,n){e.call(this,t),this._skipCount=n,this._count=0,this._ring=new Array(n)}return i(t,e),t.prototype._next=function(e){var t=this._skipCount,n=this._count++;if(n1?new i.ArrayObservable(e,n):new o.EmptyObservable(n),t)}}},10118:function(e,t,n){"use strict";var i=n(82966);t.subscribeOn=function(e,t){return void 0===t&&(t=0),function(n){return n.lift(new r(e,t))}};var r=function(){function e(e,t){this.scheduler=e,this.delay=t}return e.prototype.call=function(e,t){return new i.SubscribeOnObservable(t,this.delay,this.scheduler).subscribe(e)},e}()},77243:function(e,t,n){"use strict";var i=n(18483),r=n(5027);t.switchAll=function(){return i.switchMap(r.identity)}},18483:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.switchMap=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.project=e,this.resultSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.project,this.resultSelector))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.project=n,this.resultSelector=i,this.index=0}return i(t,e),t.prototype._next=function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(i){return void this.destination.error(i)}this._innerSub(t,e,n)},t.prototype._innerSub=function(e,t,n){var i=this.innerSubscription;i&&i.unsubscribe(),this.add(this.innerSubscription=o.subscribeToResult(this,e,t,n))},t.prototype._complete=function(){var t=this.innerSubscription;(!t||t.closed)&&e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.innerSubscription=null},t.prototype.notifyComplete=function(t){this.remove(t),this.innerSubscription=null,this.isStopped&&e.prototype._complete.call(this)},t.prototype.notifyNext=function(e,t,n,i,r){this.resultSelector?this._tryNotifyNext(e,t,n,i):this.destination.next(t)},t.prototype._tryNotifyNext=function(e,t,n,i){var r;try{r=this.resultSelector(e,t,n,i)}catch(o){return void this.destination.error(o)}this.destination.next(r)},t}(r.OuterSubscriber)},10684:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.switchMapTo=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.observable=e,this.resultSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.observable,this.resultSelector))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.inner=n,this.resultSelector=i,this.index=0}return i(t,e),t.prototype._next=function(e){var t=this.innerSubscription;t&&t.unsubscribe(),this.add(this.innerSubscription=o.subscribeToResult(this,this.inner,e,this.index++))},t.prototype._complete=function(){var t=this.innerSubscription;(!t||t.closed)&&e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.innerSubscription=null},t.prototype.notifyComplete=function(t){this.remove(t),this.innerSubscription=null,this.isStopped&&e.prototype._complete.call(this)},t.prototype.notifyNext=function(e,t,n,i,r){var o=this.destination;this.resultSelector?this.tryResultSelector(e,t,n,i):o.next(t)},t.prototype.tryResultSelector=function(e,t,n,i){var r,o=this.resultSelector,a=this.destination;try{r=o(e,t,n,i)}catch(s){return void a.error(s)}a.next(r)},t}(r.OuterSubscriber)},44396:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758),a=n(70481);t.take=function(e){return function(t){return 0===e?new a.EmptyObservable:t.lift(new s(e))}};var s=function(){function e(e){if(this.total=e,this.total<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.total))},e}(),u=function(e){function t(t,n){e.call(this,t),this.total=n,this.count=0}return i(t,e),t.prototype._next=function(e){var t=this.total,n=++this.count;n<=t&&(this.destination.next(e),n===t&&(this.destination.complete(),this.unsubscribe()))},t}(r.Subscriber)},73935:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758),a=n(70481);t.takeLast=function(e){return function(t){return 0===e?new a.EmptyObservable:t.lift(new s(e))}};var s=function(){function e(e){if(this.total=e,this.total<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.total))},e}(),u=function(e){function t(t,n){e.call(this,t),this.total=n,this.ring=new Array,this.count=0}return i(t,e),t.prototype._next=function(e){var t=this.ring,n=this.total,i=this.count++;t.length0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,a=r.length,s=0;s=0&&u%t==0&&!this.closed&&r.shift().complete(),++this.count%t==0&&!this.closed){var c=new o.Subject;r.push(c),n.next(c)}},t.prototype._error=function(e){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().error(e);this.destination.error(e)},t.prototype._complete=function(){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().complete();this.destination.complete()},t.prototype._unsubscribe=function(){this.count=0,this.windows=null},t}(r.Subscriber)},42603:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(90680),a=n(42109),s=n(39479),u=n(41503);t.windowTime=function(e){var t=o.async,n=null,i=Number.POSITIVE_INFINITY;return u.isScheduler(arguments[3])&&(t=arguments[3]),u.isScheduler(arguments[2])?t=arguments[2]:s.isNumeric(arguments[2])&&(i=arguments[2]),u.isScheduler(arguments[1])?t=arguments[1]:s.isNumeric(arguments[1])&&(n=arguments[1]),function(r){return r.lift(new c(e,n,i,t))}};var c=function(){function e(e,t,n,i){this.windowTimeSpan=e,this.windowCreationInterval=t,this.maxWindowSize=n,this.scheduler=i}return e.prototype.call=function(e,t){return t.subscribe(new h(e,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},e}(),l=function(e){function t(){e.apply(this,arguments),this._numberOfNextedValues=0}return i(t,e),t.prototype.next=function(t){this._numberOfNextedValues++,e.prototype.next.call(this,t)},Object.defineProperty(t.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),t}(r.Subject),h=function(e){function t(t,n,i,r,o){e.call(this,t),this.destination=t,this.windowTimeSpan=n,this.windowCreationInterval=i,this.maxWindowSize=r,this.scheduler=o,this.windows=[];var a=this.openWindow();if(null!==i&&i>=0){var s={windowTimeSpan:n,windowCreationInterval:i,subscriber:this,scheduler:o};this.add(o.schedule(p,n,{subscriber:this,window:a,context:null})),this.add(o.schedule(f,i,s))}else this.add(o.schedule(d,n,{subscriber:this,window:a,windowTimeSpan:n}))}return i(t,e),t.prototype._next=function(e){for(var t=this.windows,n=t.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}},t.prototype._error=function(e){for(var t=this.windows;t.length>0;)t.shift().error(e);this.destination.error(e)},t.prototype._complete=function(){for(var e=this.windows;e.length>0;){var t=e.shift();t.closed||t.complete()}this.destination.complete()},t.prototype.openWindow=function(){var e=new l;return this.windows.push(e),this.destination.next(e),e},t.prototype.closeWindow=function(e){e.complete();var t=this.windows;t.splice(t.indexOf(e),1)},t}(a.Subscriber);function d(e){var t=e.subscriber,n=e.windowTimeSpan,i=e.window;i&&t.closeWindow(i),e.window=t.openWindow(),this.schedule(e,n)}function f(e){var t=e.windowTimeSpan,n=e.subscriber,i=e.scheduler,r=e.windowCreationInterval,o=n.openWindow(),a=this,s={action:a,subscription:null};s.subscription=i.schedule(p,t,{subscriber:n,window:o,context:s}),a.add(s.subscription),a.schedule(e,r)}function p(e){var t=e.subscriber,n=e.window,i=e.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),t.closeWindow(n)}},59048:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(72293),a=n(33463),s=n(85814),u=n(84308),c=n(93658);t.windowToggle=function(e,t){return function(n){return n.lift(new l(e,t))}};var l=function(){function e(e,t){this.openings=e,this.closingSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new h(e,this.openings,this.closingSelector))},e}(),h=function(e){function t(t,n,i){e.call(this,t),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(this.openSubscription=c.subscribeToResult(this,n,n))}return i(t,e),t.prototype._next=function(e){var t=this.contexts;if(t)for(var n=t.length,i=0;i0){var a=o.indexOf(n);-1!==a&&o.splice(a,1)}},t.prototype.notifyComplete=function(){},t.prototype._next=function(e){if(0===this.toRespond.length){var t=[e].concat(this.values);this.project?this._tryProject(t):this.destination.next(t)}},t.prototype._tryProject=function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(r.OuterSubscriber)},9477:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(96177),o=n(48242),a=n(42109),s=n(84308),u=n(93658),c=n(72121);function l(){for(var e=[],t=0;tthis.index},e.prototype.hasCompleted=function(){return this.array.length===this.index},e}(),v=function(e){function t(t,n,i){e.call(this,t),this.parent=n,this.observable=i,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return i(t,e),t.prototype[c.iterator]=function(){return this},t.prototype.next=function(){var e=this.buffer;return 0===e.length&&this.isComplete?{value:null,done:!0}:{value:e.shift(),done:!1}},t.prototype.hasValue=function(){return this.buffer.length>0},t.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},t.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},t.prototype.notifyNext=function(e,t,n,i,r){this.buffer.push(t),this.parent.checkIterators()},t.prototype.subscribe=function(e,t){return u.subscribeToResult(this,this.observable,this,t)},t}(s.OuterSubscriber)},33310:function(e,t,n){"use strict";var i=n(9477);t.zipAll=function(e){return function(t){return t.lift(new i.ZipOperator(e))}}},28101:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n){e.call(this)}return i(t,e),t.prototype.schedule=function(e,t){return void 0===t&&(t=0),this},t}(n(72293).Subscription);t.Action=r},67529:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(12624),o=n(95018),a=function(e){function t(t,n){e.call(this,t,n),this.scheduler=t,this.work=n}return i(t,e),t.prototype.requestAsyncId=function(t,n,i){return void 0===i&&(i=0),null!==i&&i>0?e.prototype.requestAsyncId.call(this,t,n,i):(t.actions.push(this),t.scheduled||(t.scheduled=o.AnimationFrame.requestAnimationFrame(t.flush.bind(t,null))))},t.prototype.recycleAsyncId=function(t,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return e.prototype.recycleAsyncId.call(this,t,n,i);0===t.actions.length&&(o.AnimationFrame.cancelAnimationFrame(n),t.scheduled=void 0)},t}(r.AsyncAction);t.AnimationFrameAction=a},68909:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(){e.apply(this,arguments)}return i(t,e),t.prototype.flush=function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i0?e.prototype.requestAsyncId.call(this,t,n,i):(t.actions.push(this),t.scheduled||(t.scheduled=r.Immediate.setImmediate(t.flush.bind(t,null))))},t.prototype.recycleAsyncId=function(t,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return e.prototype.recycleAsyncId.call(this,t,n,i);0===t.actions.length&&(r.Immediate.clearImmediate(n),t.scheduled=void 0)},t}(n(12624).AsyncAction);t.AsapAction=o},25766:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(){e.apply(this,arguments)}return i(t,e),t.prototype.flush=function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i0?e.prototype.schedule.call(this,t,n):(this.delay=n,this.state=t,this.scheduler.flush(this),this)},t.prototype.execute=function(t,n){return n>0||this.closed?e.prototype.execute.call(this,t,n):this._execute(t,n)},t.prototype.requestAsyncId=function(t,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?e.prototype.requestAsyncId.call(this,t,n,i):t.flush(this)},t}(n(12624).AsyncAction);t.QueueAction=r},77373:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(){e.apply(this,arguments)}return i(t,e),t}(n(42704).AsyncScheduler);t.QueueScheduler=r},18353:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(12624),o=function(e){function t(t,n){var i=this;void 0===t&&(t=a),void 0===n&&(n=Number.POSITIVE_INFINITY),e.call(this,t,function(){return i.frame}),this.maxFrames=n,this.frame=0,this.index=-1}return i(t,e),t.prototype.flush=function(){for(var e,t,n=this.actions,i=this.maxFrames;(t=n.shift())&&(this.frame=t.delay)<=i&&!(e=t.execute(t.state,t.delay)););if(e){for(;t=n.shift();)t.unsubscribe();throw e}},t.frameTimeFactor=10,t}(n(42704).AsyncScheduler);t.VirtualTimeScheduler=o;var a=function(e){function t(t,n,i){void 0===i&&(i=t.index+=1),e.call(this,t,n),this.scheduler=t,this.work=n,this.index=i,this.active=!0,this.index=t.index=i}return i(t,e),t.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return e.prototype.schedule.call(this,n,i);this.active=!1;var r=new t(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},t.prototype.requestAsyncId=function(e,n,i){void 0===i&&(i=0),this.delay=e.frame+i;var r=e.actions;return r.push(this),r.sort(t.sortActions),!0},t.prototype.recycleAsyncId=function(e,t,n){void 0===n&&(n=0)},t.prototype._execute=function(t,n){if(!0===this.active)return e.prototype._execute.call(this,t,n)},t.sortActions=function(e,t){return e.delay===t.delay?e.index===t.index?0:e.index>t.index?1:-1:e.delay>t.delay?1:-1},t}(r.AsyncAction);t.VirtualAction=a},12948:function(e,t,n){"use strict";var i=n(67529),r=n(68909);t.animationFrame=new r.AnimationFrameScheduler(i.AnimationFrameAction)},85522:function(e,t,n){"use strict";var i=n(3496),r=n(25766);t.asap=new r.AsapScheduler(i.AsapAction)},90680:function(e,t,n){"use strict";var i=n(12624),r=n(42704);t.async=new r.AsyncScheduler(i.AsyncAction)},97088:function(e,t,n){"use strict";var i=n(7100),r=n(77373);t.queue=new r.QueueScheduler(i.QueueAction)},72121:function(e,t,n){"use strict";var i=n(80019);function r(e){var t=e.Symbol;if("function"==typeof t)return t.iterator||(t.iterator=t("iterator polyfill")),t.iterator;var n=e.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var i=e.Map;if(i)for(var r=Object.getOwnPropertyNames(i.prototype),o=0;o0;)t.shift().setup();e.prototype.flush.call(this);for(var n=this.flushTests.filter(function(e){return e.ready});n.length>0;){var i=n.shift();this.assertDeepEqual(i.actual,i.expected)}},t.parseMarblesAsSubscriptions=function(e){if("string"!=typeof e)return new u.SubscriptionLog(Number.POSITIVE_INFINITY);for(var t=e.length,n=-1,i=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,o=0;o-1?n:a;break;case"!":if(r!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");r=n>-1?n:a;break;default:throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+s+"'.")}}return r<0?new u.SubscriptionLog(i):new u.SubscriptionLog(i,r)},t.parseMarbles=function(e,t,n,i){if(void 0===i&&(i=!1),-1!==e.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var r=e.length,s=[],u=e.indexOf("^"),c=-1===u?0:u*-this.frameTimeFactor,l="object"!=typeof t?function(e){return e}:function(e){return i&&t[e]instanceof a.ColdObservable?t[e].messages:t[e]},h=-1,d=0;d-1?h:f,notification:p})}return s},t}(c.VirtualTimeScheduler);t.TestScheduler=l},95018:function(e,t,n){"use strict";var i=n(80019),r=function(e){e.requestAnimationFrame?(this.cancelAnimationFrame=e.cancelAnimationFrame.bind(e),this.requestAnimationFrame=e.requestAnimationFrame.bind(e)):e.mozRequestAnimationFrame?(this.cancelAnimationFrame=e.mozCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.mozRequestAnimationFrame.bind(e)):e.webkitRequestAnimationFrame?(this.cancelAnimationFrame=e.webkitCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.webkitRequestAnimationFrame.bind(e)):e.msRequestAnimationFrame?(this.cancelAnimationFrame=e.msCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.msRequestAnimationFrame.bind(e)):e.oRequestAnimationFrame?(this.cancelAnimationFrame=e.oCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.oRequestAnimationFrame.bind(e)):(this.cancelAnimationFrame=e.clearTimeout.bind(e),this.requestAnimationFrame=function(t){return e.setTimeout(t,1e3/60)})};t.RequestAnimationFrameDefinition=r,t.AnimationFrame=new r(i.root)},11758:function(e,t){"use strict";var n=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},i=function(e){function t(){var t=e.call(this,"argument out of range");this.name=t.name="ArgumentOutOfRangeError",this.stack=t.stack,this.message=t.message}return n(t,e),t}(Error);t.ArgumentOutOfRangeError=i},44640:function(e,t){"use strict";var n=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},i=function(e){function t(){var t=e.call(this,"no elements in sequence");this.name=t.name="EmptyError",this.stack=t.stack,this.message=t.message}return n(t,e),t}(Error);t.EmptyError=i},30764:function(e,t){"use strict";var n=function(){function e(){this.values={}}return e.prototype.delete=function(e){return this.values[e]=null,!0},e.prototype.set=function(e,t){return this.values[e]=t,this},e.prototype.get=function(e){return this.values[e]},e.prototype.forEach=function(e,t){var n=this.values;for(var i in n)n.hasOwnProperty(i)&&null!==n[i]&&e.call(t,n[i],i)},e.prototype.clear=function(){this.values={}},e}();t.FastMap=n},42982:function(e,t,n){"use strict";var i=n(80019),r=function(){function e(e){if(this.root=e,e.setImmediate&&"function"==typeof e.setImmediate)this.setImmediate=e.setImmediate.bind(e),this.clearImmediate=e.clearImmediate.bind(e);else{this.nextHandle=1,this.tasksByHandle={},this.currentlyRunningATask=!1,this.setImmediate=this.canUseProcessNextTick()?this.createProcessNextTickSetImmediate():this.canUsePostMessage()?this.createPostMessageSetImmediate():this.canUseMessageChannel()?this.createMessageChannelSetImmediate():this.canUseReadyStateChange()?this.createReadyStateChangeSetImmediate():this.createSetTimeoutSetImmediate();var t=function e(t){delete e.instance.tasksByHandle[t]};t.instance=this,this.clearImmediate=t}}return e.prototype.identify=function(e){return this.root.Object.prototype.toString.call(e)},e.prototype.canUseProcessNextTick=function(){return"[object process]"===this.identify(this.root.process)},e.prototype.canUseMessageChannel=function(){return Boolean(this.root.MessageChannel)},e.prototype.canUseReadyStateChange=function(){var e=this.root.document;return Boolean(e&&"onreadystatechange"in e.createElement("script"))},e.prototype.canUsePostMessage=function(){var e=this.root;if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}return!1},e.prototype.partiallyApplied=function(e){for(var t=[],n=1;n=0}},1856:function(e,t){"use strict";t.isObject=function(e){return null!=e&&"object"==typeof e}},35130:function(e,t){"use strict";t.isPromise=function(e){return e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}},41503:function(e,t){"use strict";t.isScheduler=function(e){return e&&"function"==typeof e.schedule}},68668:function(e,t){"use strict";t.noop=function(){}},67239:function(e,t){"use strict";t.not=function(e,t){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=e,n.thisArg=t,n}},10142:function(e,t,n){"use strict";var i=n(68668);function r(e){return e?1===e.length?e[0]:function(t){return e.reduce(function(e,t){return t(e)},t)}:i.noop}t.pipe=function(){for(var e=[],t=0;t=n?{done:!0}:{done:!1,value:e[i++]}})},t.empty=function(){var e=new t(null);return e.done=!0,e},t.is=function(e){return e instanceof t||"object"==typeof e&&null!==e&&"function"==typeof e.next},e.exports=t},97310:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.isMobile=function(){return void 0!==r.window.orientation},t.default=function(e){if(!e&&!(0,o.default)())return"Node";if((0,a.default)(e))return"Electron";var t="undefined"!=typeof navigator?navigator:{},n=e||t.userAgent||"";if(n.indexOf("Edge")>-1)return"Edge";var i=-1!==n.indexOf("MSIE "),s=-1!==n.indexOf("Trident/");return i||s?"IE":r.window.chrome?"Chrome":r.window.safari?"Safari":r.window.mozInnerScreenX?"Firefox":"Unknown"};var r=n(41151),o=i(n(61602)),a=i(n(22344))},41151:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.console=t.process=t.document=t.global=t.window=t.self=void 0;var r=i(n(34321)),o={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&process};t.self=o.self||o.window||o.global,t.window=o.window||o.self||o.global,t.global=o.global||o.self||o.window,t.document=o.document||{},t.process=o.process||{};var a=console;t.console=a},84761:function(e,t,n){"use strict";var i=n(61948),r=n(34321);Object.defineProperty(t,"CO",{enumerable:!0,get:function(){return o.global}}),Object.defineProperty(t,"jU",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"qs",{enumerable:!0,get:function(){return s.default}});var o=n(41151),a=c(n(61602)),s=c(n(97310));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var i={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var s=o?Object.getOwnPropertyDescriptor(e,a):null;s&&(s.get||s.set)?Object.defineProperty(i,a,s):i[a]=e[a]}return i.default=e,n&&n.set(e,i),i}i(n(22344))},61602:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.default=a,t.isBrowserMainThread=function(){return a()&&"undefined"!=typeof document};var r=i(n(34321)),o=i(n(22344));function a(){return!("object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&"[object process]"===String(process)&&!process.browser)||(0,o.default)()}},22344:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("undefined"!=typeof window&&"object"===(0,r.default)(window.process)&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"===(0,r.default)(process.versions)&&Boolean(process.versions.electron))return!0;var t="object"===("undefined"==typeof navigator?"undefined":(0,r.default)(navigator))&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=e||t;return!!(n&&n.indexOf("Electron")>=0)};var r=i(n(34321))},86991:function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(14180),t),r(n(75103),t),r(n(48965),t),r(n(32595),t),r(n(82417),t),r(n(92451),t),r(n(17735),t)},14180:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNode=void 0,t.BlankNode=function(){function e(t){m(this,e),this.termType="BlankNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}]),e}()},75103:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataFactory=void 0;var i=n(14180),r=n(48965),o=n(32595),a=n(82417),s=n(92451),u=n(17735),c=0;t.DataFactory=function(){function e(t){m(this,e),this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||"df_".concat(c++,"_")}return b(e,[{key:"namedNode",value:function(e){return new a.NamedNode(e)}},{key:"blankNode",value:function(e){return new i.BlankNode(e||"".concat(this.blankNodePrefix).concat(this.blankNodeCounter++))}},{key:"literal",value:function(e,t){return new o.Literal(e,t)}},{key:"variable",value:function(e){return new u.Variable(e)}},{key:"defaultGraph",value:function(){return r.DefaultGraph.INSTANCE}},{key:"quad",value:function(e,t,n,i){return new s.Quad(e,t,n,i||this.defaultGraph())}},{key:"fromTerm",value:function(e){switch(e.termType){case"NamedNode":return this.namedNode(e.value);case"BlankNode":return this.blankNode(e.value);case"Literal":return e.language?this.literal(e.value,e.language):e.datatype.equals(o.Literal.XSD_STRING)?this.literal(e.value):this.literal(e.value,this.fromTerm(e.datatype));case"Variable":return this.variable(e.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(e.subject),this.fromTerm(e.predicate),this.fromTerm(e.object),this.fromTerm(e.graph))}}},{key:"fromQuad",value:function(e){return this.fromTerm(e)}},{key:"resetBlankNodeCounter",value:function(){this.blankNodeCounter=0}}]),e}()},48965:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultGraph=void 0;var n=function(){function e(){m(this,e),this.termType="DefaultGraph",this.value=""}return b(e,[{key:"equals",value:function(e){return!!e&&"DefaultGraph"===e.termType}}]),e}();t.DefaultGraph=n,n.INSTANCE=new n},32595:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Literal=void 0;var i=n(82417),r=function(){function e(t,n){m(this,e),this.termType="Literal",this.value=t,"string"==typeof n?(this.language=n,this.datatype=e.RDF_LANGUAGE_STRING):n?(this.language="",this.datatype=n):(this.language="",this.datatype=e.XSD_STRING)}return b(e,[{key:"equals",value:function(e){return!!e&&"Literal"===e.termType&&e.value===this.value&&e.language===this.language&&e.datatype.equals(this.datatype)}}]),e}();t.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},82417:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NamedNode=void 0,t.NamedNode=function(){function e(t){m(this,e),this.termType="NamedNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"NamedNode"===e.termType&&e.value===this.value}}]),e}()},92451:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Quad=void 0,t.Quad=function(){function e(t,n,i,r){m(this,e),this.termType="Quad",this.value="",this.subject=t,this.predicate=n,this.object=i,this.graph=r}return b(e,[{key:"equals",value:function(e){return!!e&&("Quad"===e.termType||!e.termType)&&this.subject.equals(e.subject)&&this.predicate.equals(e.predicate)&&this.object.equals(e.object)&&this.graph.equals(e.graph)}}]),e}()},17735:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Variable=void 0,t.Variable=function(){function e(t){m(this,e),this.termType="Variable",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"Variable"===e.termType&&e.value===this.value}}]),e}()},31609:function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.getSupportedJavaScriptPrimitives=t.getSupportedRdfDatatypes=t.getTermRaw=t.toRdf=t.fromRdf=void 0;var o=n(86991),a=n(9938),s=n(66060);r(n(9938),t),r(n(88871),t),r(n(66060),t);var u=new o.DataFactory,c=new s.Translator;function l(e,t){return c.fromRdf(e,t)}c.registerHandler(new a.TypeHandlerString,a.TypeHandlerString.TYPES.map(function(e){return u.namedNode(e)}),["string"]),c.registerHandler(new a.TypeHandlerBoolean,[a.TypeHandlerBoolean.TYPE].map(function(e){return u.namedNode(e)}),["boolean"]),c.registerHandler(new a.TypeHandlerNumberDouble,a.TypeHandlerNumberDouble.TYPES.map(function(e){return u.namedNode(e)}),["number"]),c.registerHandler(new a.TypeHandlerNumberInteger,a.TypeHandlerNumberInteger.TYPES.map(function(e){return u.namedNode(e)}),["number"]),c.registerHandler(new a.TypeHandlerDate,a.TypeHandlerDate.TYPES.map(function(e){return u.namedNode(e)}),["object"]),t.fromRdf=l,t.toRdf=function(e,t){return t&&"namedNode"in t&&(t={dataFactory:t}),(t=t||{})&&!t.dataFactory&&(t.dataFactory=u),c.toRdf(e,t)},t.getTermRaw=function(e,t){return"Literal"===e.termType?l(e,t):e.value},t.getSupportedRdfDatatypes=function(){return c.getSupportedRdfDatatypes()},t.getSupportedJavaScriptPrimitives=function(){return c.getSupportedJavaScriptPrimitives()}},88871:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},66060:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Translator=void 0,t.Translator=function(){function e(){m(this,e),this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}return b(e,[{key:"registerHandler",value:function(e,t,n){var i,r=_(t);try{for(r.s();!(i=r.n()).done;){var o=i.value;this.supportedRdfDatatypes.push(o),this.fromRdfHandlers[o.value]=e}}catch(l){r.e(l)}finally{r.f()}var a,s=_(n);try{for(s.s();!(a=s.n()).done;){var u=a.value,c=this.toRdfHandlers[u];c||(this.toRdfHandlers[u]=c=[]),c.push(e)}}catch(l){s.e(l)}finally{s.f()}}},{key:"fromRdf",value:function(e,t){var n=this.fromRdfHandlers[e.datatype.value];return n?n.fromRdf(e,t):e.value}},{key:"toRdf",value:function(e,t){var n=this.toRdfHandlers[typeof e];if(n){var i,r=_(n);try{for(r.s();!(i=r.n()).done;){var o=i.value.toRdf(e,t);if(o)return o}}catch(a){r.e(a)}finally{r.f()}}throw new Error("Invalid JavaScript value: '".concat(e,"'"))}},{key:"getSupportedRdfDatatypes",value:function(){return this.supportedRdfDatatypes}},{key:"getSupportedJavaScriptPrimitives",value:function(){return Object.keys(this.toRdfHandlers)}}],[{key:"incorrectRdfDataType",value:function(e){throw new Error("Invalid RDF ".concat(e.datatype.value," value: '").concat(e.value,"'"))}}]),e}()},80727:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerBoolean=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e,t){switch(e.value){case"true":return!0;case"false":return!1;case"1":return!0;case"0":return!1}return t&&i.Translator.incorrectRdfDataType(e),!1}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;return r.literal(t?"true":"false",i||r.namedNode(e.TYPE))}}]),e}();t.TypeHandlerBoolean=r,r.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},52525:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerDate=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(t,n){switch(n&&!t.value.match(e.VALIDATORS[t.datatype.value.substr(33,t.datatype.value.length)])&&i.Translator.incorrectRdfDataType(t),t.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(t.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":var r=t.value.split("-");return new Date(0,parseInt(r[0],10)-1,parseInt(r[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(t.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(t.value+"-01");default:return new Date(t.value)}}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;if(i=i||r.namedNode(e.TYPES[0]),!(t instanceof Date))return null;var o,a=t;switch(i.value){case"http://www.w3.org/2001/XMLSchema#gDay":o=String(a.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":o=a.getUTCMonth()+1+"-"+a.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":o=String(a.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":o=a.getUTCFullYear()+"-"+(a.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":o=a.toISOString().replace(/T.*$/,"");break;default:o=a.toISOString()}return r.literal(o,i)}}]),e}();t.TypeHandlerDate=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],r.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},38554:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberDouble=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e,t){var n=parseFloat(e.value);return t&&isNaN(n)&&i.Translator.incorrectRdfDataType(e),n}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;return i=i||r.namedNode(e.TYPES[0]),isNaN(t)?r.literal("NaN",i):isFinite(t)?t%1==0?null:r.literal(t.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),i):r.literal(t>0?"INF":"-INF",i)}}]),e}();t.TypeHandlerNumberDouble=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},37750:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberInteger=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e,t){var n=parseInt(e.value,10);return t&&(isNaN(n)||e.value.indexOf(".")>=0)&&i.Translator.incorrectRdfDataType(e),n}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;return r.literal(String(t),i||r.namedNode(t<=e.MAX_INT&&t>=e.MIN_INT?e.TYPES[0]:e.TYPES[1]))}}]),e}();t.TypeHandlerNumberInteger=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],r.MAX_INT=2147483647,r.MIN_INT=-2147483648},14608:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerString=void 0;var n=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e){return e.value}},{key:"toRdf",value:function(e,t){var n=t.datatype;return t.dataFactory.literal(e,n)}}]),e}();t.TypeHandlerString=n,n.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},9938:function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(80727),t),r(n(52525),t),r(n(38554),t),r(n(37750),t),r(n(14608),t)},93640:function(n,i,r){"use strict";var d,f,g,y,w,k,x,S,E,C,O=regeneratorRuntime.mark(uL),T={};r.r(T),r.d(T,{decode:function(){return tL},encode:function(){return iL}});var P={};r.r(P),r.d(P,{decode:function(){return cL},encode:function(){return hL}});var R={};r.r(R),r.d(R,{decode:function(){return dL},encode:function(){return pL}});var D={};function N(e){return"function"==typeof e}r.r(D),r.d(D,{decode:function(){return gL},encode:function(){return yL}});var L=!1,j={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){var t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else L&&console.log("RxJS: Back to a better error behavior. Thank you. <3");L=e},get useDeprecatedSynchronousErrorHandling(){return L}};function F(e){setTimeout(function(){throw e},0)}var B={closed:!0,next:function(e){},error:function(e){if(j.useDeprecatedSynchronousErrorHandling)throw e;F(e)},complete:function(){}},V=Array.isArray||function(e){return e&&"number"==typeof e.length};function z(e){return null!==e&&"object"==typeof e}var U,H=function(){function e(e){return Error.call(this),this.message=e?"".concat(e.length," errors occurred during unsubscription:\n").concat(e.map(function(e,t){return"".concat(t+1,") ").concat(e.toString())}).join("\n ")):"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e}(),G=function(){function e(t){m(this,e),this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}return b(e,[{key:"unsubscribe",value:function(){var t;if(!this.closed){var n=this._parentOrParents,i=this._ctorUnsubscribe,r=this._unsubscribe,o=this._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(var a=0;a2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof t?function(i){return i.pipe(_e(function(n,i){return ge(e(n,i)).pipe(se(function(e,r){return t(n,e,i,r)}))},n))}:("number"==typeof t&&(n=t),function(t){return t.lift(new we(e,n))})}var we=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;m(this,e),this.project=t,this.concurrent=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new ke(e,this.project,this.concurrent))}}]),e}(),ke=function(e){a(n,e);var t=s(n);function n(e,i){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return m(this,n),(r=t.call(this,e)).project=i,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return b(n,[{key:"_next",value:function(e){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),n}(ye);function xe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return _e($,e)}function Se(e,t){return t?ve(e,t):new J(le(e))}function Ee(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(i=t.pop())):"number"==typeof o&&(i=t.pop()),null===r&&1===t.length&&t[0]instanceof J?t[0]:xe(i)(Se(t,r))}function Ce(){return function(e){return e.lift(new Oe(e))}}var Oe=function(){function e(t){m(this,e),this.connectable=t}return b(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var i=new Te(e,n),r=t.subscribe(i);return i.closed||(i.connection=n.connect()),r}}]),e}(),Te=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).connectable=i,r}return b(n,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}]),n}(X),Ae=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).source=e,r.subjectFactory=i,r._refCount=0,r._isComplete=!1,r}return b(n,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return(!e||e.isStopped)&&(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new G).add(this.source.subscribe(new Me(this.getSubject(),this))),e.closed&&(this._connection=null,e=G.EMPTY)),e}},{key:"refCount",value:function(){return Ce()(this)}}]),n}(J),Pe=function(){var e=Ae.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}}(),Me=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this,e)).connectable=t,r}return b(i,[{key:"_error",value:function(t){this._unsubscribe(),e(p(i.prototype),"_error",this).call(this,t)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),e(p(i.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),i}(ie);function Ie(e,t){return function(n){var i;if(i="function"==typeof e?e:function(){return e},"function"==typeof t)return n.lift(new Re(i,t));var r=Object.create(n,Pe);return r.source=n,r.subjectFactory=i,r}}var Re=function(){function e(t,n){m(this,e),this.subjectFactory=t,this.selector=n}return b(e,[{key:"call",value:function(e,t){var n=this.selector,i=this.subjectFactory(),r=n(i).subscribe(e);return r.add(t.subscribe(i)),r}}]),e}();function De(){return new re}function Ne(){return function(e){return Ce()(Ie(De)(e))}}function Le(e){for(var t in e)if(e[t]===Le)return t;throw Error("Could not find renamed property on target object.")}function je(e,t){for(var n in t)t.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function Fe(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(Fe).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return"".concat(e.overriddenName);if(e.name)return"".concat(e.name);var t=e.toString();if(null==t)return""+t;var n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function Be(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}var Ve=Le({__forward_ref__:Le});function ze(e){return e.__forward_ref__=ze,e.toString=function(){return Fe(this())},e}function Ue(e){return He(e)?e():e}function He(e){return"function"==typeof e&&e.hasOwnProperty(Ve)&&e.__forward_ref__===ze}var Ge=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,function(e,t){return"".concat(e?"NG0".concat(e,": "):"").concat(t)}(e,i))).code=e,r}return n}(l(Error));function We(e){return"string"==typeof e?e:null==e?"":String(e)}function qe(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():We(e)}function Xe(e,t){var n=t?" in ".concat(t):"";throw new Ge("201","No provider for ".concat(qe(e)," found").concat(n))}function Ye(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function Ke(e){return{providers:e.providers||[],imports:e.imports||[]}}function $e(e){return Qe(e,et)||Qe(e,nt)}function Qe(e,t){return e.hasOwnProperty(t)?e[t]:null}function Ze(e){return e&&(e.hasOwnProperty(tt)||e.hasOwnProperty(it))?e[tt]:null}var Je,et=Le({"\u0275prov":Le}),tt=Le({"\u0275inj":Le}),nt=Le({ngInjectableDef:Le}),it=Le({ngInjectorDef:Le}),rt=((rt=rt||{})[rt.Default=0]="Default",rt[rt.Host=1]="Host",rt[rt.Self=2]="Self",rt[rt.SkipSelf=4]="SkipSelf",rt[rt.Optional=8]="Optional",rt);function ot(e){var t=Je;return Je=e,t}function at(e,t,n){var i=$e(e);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&rt.Optional?null:void 0!==t?t:void Xe(Fe(e),"Injector")}function st(e){return{toString:e}.toString()}var ut=((ut=ut||{})[ut.OnPush=0]="OnPush",ut[ut.Default=1]="Default",ut),ct=((ct=ct||{})[ct.Emulated=0]="Emulated",ct[ct.None=2]="None",ct[ct.ShadowDom=3]="ShadowDom",ct),lt="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=lt||ft||ht||dt,vt={},gt=[],mt=Le({"\u0275cmp":Le}),yt=Le({"\u0275dir":Le}),bt=Le({"\u0275pipe":Le}),_t=Le({"\u0275mod":Le}),wt=Le({"\u0275loc":Le}),kt=Le({"\u0275fac":Le}),xt=Le({__NG_ELEMENT_ID__:Le}),St=0;function Et(e){return st(function(){var t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ut.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||gt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||ct.Emulated,id:"c",styles:e.styles||gt,_:null,setInput:null,schemas:e.schemas||null,tView:null},i=e.directives,r=e.features,o=e.pipes;return n.id+=St++,n.inputs=Pt(e.inputs,t),n.outputs=Pt(e.outputs),r&&r.forEach(function(e){return e(n)}),n.directiveDefs=i?function(){return("function"==typeof i?i():i).map(Ct)}:null,n.pipeDefs=o?function(){return("function"==typeof o?o():o).map(Ot)}:null,n})}function Ct(e){return It(e)||function(e){return e[yt]||null}(e)}function Ot(e){return function(e){return e[bt]||null}(e)}var Tt={};function At(e){return st(function(){var t={type:e.type,bootstrap:e.bootstrap||gt,declarations:e.declarations||gt,imports:e.imports||gt,exports:e.exports||gt,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&(Tt[e.id]=e.type),t})}function Pt(e,t){if(null==e)return vt;var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i],o=r;Array.isArray(r)&&(o=r[1],r=r[0]),n[r]=i,t&&(t[r]=o)}return n}var Mt=Et;function It(e){return e[mt]||null}function Rt(e,t){var n=e[_t]||null;if(!n&&!0===t)throw new Error("Type ".concat(Fe(e)," does not have '\u0275mod' property."));return n}function Dt(e){return Array.isArray(e)&&"object"==typeof e[1]}function Nt(e){return Array.isArray(e)&&!0===e[1]}function Lt(e){return 0!=(8&e.flags)}function jt(e){return 2==(2&e.flags)}function Ft(e){return 1==(1&e.flags)}function Bt(e){return null!==e.template}function Vt(e){return 0!=(512&e[2])}function zt(e,t){return e.hasOwnProperty(kt)?e[kt]:null}var Ut=function(){function e(t,n,i){m(this,e),this.previousValue=t,this.currentValue=n,this.firstChange=i}return b(e,[{key:"isFirstChange",value:function(){return this.firstChange}}]),e}();function Ht(){return Gt}function Gt(e){return e.type.prototype.ngOnChanges&&(e.setInput=qt),Wt}function Wt(){var e=Yt(this),t=null==e?void 0:e.current;if(t){var n=e.previous;if(n===vt)e.previous=t;else for(var i in t)n[i]=t[i];e.current=null,this.ngOnChanges(t)}}function qt(e,t,n,i){var r=Yt(e)||function(e,t){return e[Xt]=t}(e,{previous:vt,current:null}),o=r.current||(r.current={}),a=r.previous,s=this.declaredInputs[n],u=a[s];o[s]=new Ut(u&&u.currentValue,t,a===vt),e[i]=t}Ht.ngInherit=!0;var Xt="__ngSimpleChanges__";function Yt(e){return e[Xt]||null}var Kt,$t="http://www.w3.org/2000/svg";function Qt(){return void 0!==Kt?Kt:"undefined"!=typeof document?document:void 0}function Zt(e){return!!e.listen}var Jt={createRenderer:function(e,t){return Qt()}};function en(e){for(;Array.isArray(e);)e=e[0];return e}function tn(e,t){return en(t[e])}function nn(e,t){return en(t[e.index])}function rn(e,t){return e.data[t]}function on(e,t){return e[t]}function an(e,t){var n=t[e];return Dt(n)?n:n[0]}function sn(e){return 4==(4&e[2])}function un(e){return 128==(128&e[2])}function cn(e,t){return null==t?null:e[t]}function ln(e){e[18]=0}function hn(e,t){e[5]+=t;for(var n=e,i=e[3];null!==i&&(1===t&&1===n[5]||-1===t&&0===n[5]);)i[5]+=t,n=i,i=i[3]}var dn={lFrame:jn(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function fn(){return dn.bindingsEnabled}function pn(){return dn.lFrame.lView}function vn(){return dn.lFrame.tView}function gn(e){return dn.lFrame.contextLView=e,e[8]}function mn(){for(var e=yn();null!==e&&64===e.type;)e=e.parent;return e}function yn(){return dn.lFrame.currentTNode}function bn(e,t){var n=dn.lFrame;n.currentTNode=e,n.isParent=t}function _n(){return dn.lFrame.isParent}function wn(){dn.lFrame.isParent=!1}function kn(){return dn.isInCheckNoChangesMode}function xn(e){dn.isInCheckNoChangesMode=e}function Sn(){var e=dn.lFrame,t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function En(){return dn.lFrame.bindingIndex}function Cn(){return dn.lFrame.bindingIndex++}function On(e){var t=dn.lFrame,n=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,n}function Tn(e,t){var n=dn.lFrame;n.bindingIndex=n.bindingRootIndex=e,An(t)}function An(e){dn.lFrame.currentDirectiveIndex=e}function Pn(e){var t=dn.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}function Mn(){return dn.lFrame.currentQueryIndex}function In(e){dn.lFrame.currentQueryIndex=e}function Rn(e){var t=e[1];return 2===t.type?t.declTNode:1===t.type?e[6]:null}function Dn(e,t,n){if(n&rt.SkipSelf){for(var i=t,r=e;!(null!==(i=i.parent)||n&rt.Host||(i=Rn(r),null===i||(r=r[15],10&i.type))););if(null===i)return!1;t=i,e=r}var o=dn.lFrame=Ln();return o.currentTNode=t,o.lView=e,!0}function Nn(e){var t=Ln(),n=e[1];dn.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function Ln(){var e=dn.lFrame,t=null===e?null:e.child;return null===t?jn(e):t}function jn(e){var t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return null!==e&&(e.child=t),t}function Fn(){var e=dn.lFrame;return dn.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}var Bn=Fn;function Vn(){var e=Fn();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function zn(){return dn.lFrame.selectedIndex}function Un(e){dn.lFrame.selectedIndex=e}function Hn(){var e=dn.lFrame;return rn(e.tView,e.selectedIndex)}function Gn(){dn.lFrame.currentNamespace=$t}function Wn(e,t){for(var n=t.directiveStart,i=t.directiveEnd;n=i)break}else t[s]<0&&(e[18]+=65536),(a>11>16&&(3&e[2])===t){e[2]+=2048;try{o.call(a)}finally{}}}else try{o.call(a)}finally{}}var Qn=function e(t,n,i){m(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=i};function Zn(e,t,n){for(var i=Zt(e),r=0;rt){a=o-1;break}}}for(;o>16}(e),i=t;n>0;)i=i[15],n--;return i}var ai=!0;function si(e){var t=ai;return ai=e,t}var ui=0;function ci(e,t){var n=hi(e,t);if(-1!==n)return n;var i=t[1];i.firstCreatePass&&(e.injectorIndex=t.length,li(i.data,e),li(t,null),li(i.blueprint,null));var r=di(e,t),o=e.injectorIndex;if(ii(r))for(var a=ri(r),s=oi(r,t),u=s[1].data,c=0;c<8;c++)t[o+c]=s[a+c]|u[a+c];return t[o+8]=r,o}function li(e,t){e.push(0,0,0,0,0,0,0,0,t)}function hi(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function di(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=0,i=null,r=t;null!==r;){var o=r[1],a=o.type;if(null===(i=2===a?o.declTNode:1===a?r[6]:null))return-1;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return-1}function fi(e,t,n){!function(e,t,n){var i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(xt)&&(i=n[xt]),null==i&&(i=n[xt]=ui++);var r=255&i;t.data[e+(r>>5)]|=1<3&&void 0!==arguments[3]?arguments[3]:rt.Default,r=arguments.length>4?arguments[4]:void 0;if(null!==e){var o=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e.hasOwnProperty(xt)?e[xt]:void 0;return"number"==typeof t?t>=0?255&t:yi:t}(n);if("function"==typeof o){if(!Dn(t,e,i))return i&rt.Host?pi(r,n,i):vi(t,n,i,r);try{var a=o(i);if(null!=a||i&rt.Optional)return a;Xe(n)}finally{Bn()}}else if("number"==typeof o){var s=null,u=hi(e,t),c=-1,l=i&rt.Host?t[16][6]:null;for((-1===u||i&rt.SkipSelf)&&(-1!==(c=-1===u?di(e,t):t[u+8])&&xi(i,!1)?(s=t[1],u=ri(c),t=oi(c,t)):u=-1);-1!==u;){var h=t[1];if(ki(o,u,h.data)){var d=bi(u,t,n,s,i,l);if(d!==mi)return d}-1!==(c=t[u+8])&&xi(i,t[1].data[u+8]===l)&&ki(o,u,t)?(s=h,u=ri(c),t=oi(c,t)):u=-1}}}return vi(t,n,i,r)}var mi={};function yi(){return new Si(mn(),pn())}function bi(e,t,n,i,r,o){var a=t[1],s=a.data[e+8],u=_i(s,a,n,null==i?jt(s)&&ai:i!=a&&0!=(3&s.type),r&rt.Host&&o===s);return null!==u?wi(t,a,u,s):mi}function _i(e,t,n,i,r){for(var o=e.providerIndexes,a=t.data,s=1048575&o,u=e.directiveStart,c=o>>20,l=r?s+c:e.directiveEnd,h=i?s:s+c;h=u&&d.type===n)return h}if(r){var f=a[u];if(f&&Bt(f)&&f.type===n)return u}return null}function wi(e,t,n,i){var r=e[n],o=t.data;if(function(e){return e instanceof Qn}(r)){var a=r;a.resolving&&function(e,t){throw new Ge("200","Circular dependency in DI detected for ".concat(e))}(qe(o[n]));var s=si(a.canSeeViewProviders);a.resolving=!0;var u=a.injectImpl?ot(a.injectImpl):null;Dn(e,i,rt.Default);try{r=e[n]=a.factory(void 0,o,e,i),t.firstCreatePass&&n>=i.directiveStart&&function(e,t,n){var i=t.type.prototype,r=i.ngOnChanges,o=i.ngOnInit,a=i.ngDoCheck;if(r){var s=Gt(t);(n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s)}o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-e,o),a&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,a),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,a))}(n,o[n],t)}finally{null!==u&&ot(u),si(s),a.resolving=!1,Bn()}}return r}function ki(e,t,n){return!!(n[t+(e>>5)]&1<=e.length?e.push(n):e.splice(t,0,n)}function Ni(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function Li(e,t){for(var n=[],i=0;i=0?e[1|i]=n:function(e,t,n,i){var r=e.length;if(r==t)e.push(n,i);else if(1===r)e.push(i,e[0]),e[0]=n;else{for(r--,e.push(e[r-1],e[r]);r>t;)e[r]=e[r-2],r--;e[t]=n,e[t+1]=i}}(e,i=~i,t,n),i}function Fi(e,t){var n=Bi(e,t);if(n>=0)return e[1|n]}function Bi(e,t){return function(e,t,n){for(var i=0,r=e.length>>1;r!==i;){var o=i+(r-i>>1),a=e[o<<1];if(t===a)return o<<1;a>t?r=o:i=o+1}return~(r<<1)}(e,t)}var Vi,zi={},Ui="__NG_DI_FLAG__",Hi="ngTempTokenPath",Gi=/\n/gm,Wi="__source",qi=Le({provide:String,useValue:Le});function Xi(e){var t=Vi;return Vi=e,t}function Yi(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:rt.Default;if(void 0===Vi)throw new Error("inject() must be called from an injection context");return null===Vi?at(e,void 0,t):Vi.get(e,t&rt.Optional?null:void 0,t)}function Ki(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:rt.Default;return(Je||Yi)(Ue(e),t)}var $i=Ki;function Qi(e){for(var t=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var r=Fe(t);if(Array.isArray(t))r=t.map(Fe).join(" -> ");else if("object"==typeof t){var o=[];for(var a in t)if(t.hasOwnProperty(a)){var s=t[a];o.push(a+":"+("string"==typeof s?JSON.stringify(s):Fe(s)))}r="{".concat(o.join(", "),"}")}return"".concat(n).concat(i?"("+i+")":"","[").concat(r,"]: ").concat(e.replace(Gi,"\n "))}("\n"+e.message,r,n,i),e.ngTokenPath=r,e[Hi]=null,e}var tr,nr,ir=Zi(Ai("Inject",function(e){return{token:e}}),-1),rr=Zi(Ai("Optional"),8),or=Zi(Ai("SkipSelf"),4);function ar(e){var t;return(null===(t=function(){if(void 0===tr&&(tr=null,pt.trustedTypes))try{tr=pt.trustedTypes.createPolicy("angular",{createHTML:function(e){return e},createScript:function(e){return e},createScriptURL:function(e){return e}})}catch(e){}return tr}())||void 0===t?void 0:t.createHTML(e))||e}function sr(){if(void 0===nr&&(nr=null,pt.trustedTypes))try{nr=pt.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:function(e){return e},createScript:function(e){return e},createScriptURL:function(e){return e}})}catch(U){}return nr}function ur(e){var t;return(null===(t=sr())||void 0===t?void 0:t.createHTML(e))||e}function cr(e){var t;return(null===(t=sr())||void 0===t?void 0:t.createScriptURL(e))||e}var lr=function(){function e(t){m(this,e),this.changingThisBreaksApplicationSecurity=t}return b(e,[{key:"toString",value:function(){return"SafeValue must use [property]=binding: ".concat(this.changingThisBreaksApplicationSecurity," (see https://g.co/ng/security#xss)")}}]),e}(),hr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"HTML"}}]),n}(lr),dr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"Style"}}]),n}(lr),fr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"Script"}}]),n}(lr),pr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"URL"}}]),n}(lr),vr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"ResourceURL"}}]),n}(lr);function gr(e){return e instanceof lr?e.changingThisBreaksApplicationSecurity:e}function mr(e,t){var n=yr(e);if(null!=n&&n!==t){if("ResourceURL"===n&&"URL"===t)return!0;throw new Error("Required a safe ".concat(t,", got a ").concat(n," (see https://g.co/ng/security#xss)"))}return n===t}function yr(e){return e instanceof lr&&e.getTypeName()||null}var br=function(){function e(t){m(this,e),this.inertDocumentHelper=t}return b(e,[{key:"getInertBodyElement",value:function(e){e=""+e;try{var t=(new window.DOMParser).parseFromString(ar(e),"text/html").body;return null===t?this.inertDocumentHelper.getInertBodyElement(e):(t.removeChild(t.firstChild),t)}catch(t){return null}}}]),e}(),_r=function(){function e(t){if(m(this,e),this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){var n=this.inertDocument.createElement("html");this.inertDocument.appendChild(n);var i=this.inertDocument.createElement("body");n.appendChild(i)}}return b(e,[{key:"getInertBodyElement",value:function(e){var t=this.inertDocument.createElement("template");if("content"in t)return t.innerHTML=ar(e),t;var n=this.inertDocument.createElement("body");return n.innerHTML=ar(e),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}},{key:"stripCustomNsAttrs",value:function(e){for(var t=e.attributes,n=t.length-1;0"),!0}},{key:"endElement",value:function(e){var t=e.nodeName.toLowerCase();Mr.hasOwnProperty(t)&&!Tr.hasOwnProperty(t)&&(this.buf.push(""))}},{key:"chars",value:function(e){this.buf.push(Br(e))}},{key:"checkClobberedElement",value:function(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: ".concat(e.outerHTML));return t}}]),e}(),jr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Fr=/([^\#-~ |!])/g;function Br(e){return e.replace(/&/g,"&").replace(jr,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(Fr,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}function Vr(e,t){var n=null;try{Or=Or||function(e){var t=new _r(e);return function(){try{return!!(new window.DOMParser).parseFromString(ar(""),"text/html")}catch(e){return!1}}()?new br(t):t}(e);var i=t?String(t):"";n=Or.getInertBodyElement(i);var r=5,o=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=o,o=n.innerHTML,n=Or.getInertBodyElement(i)}while(i!==o);return ar((new Lr).sanitizeChildren(zr(n)||n))}finally{if(n)for(var a=zr(n)||n;a.firstChild;)a.removeChild(a.firstChild)}}function zr(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var Ur=((Ur=Ur||{})[Ur.NONE=0]="NONE",Ur[Ur.HTML=1]="HTML",Ur[Ur.STYLE=2]="STYLE",Ur[Ur.SCRIPT=3]="SCRIPT",Ur[Ur.URL=4]="URL",Ur[Ur.RESOURCE_URL=5]="RESOURCE_URL",Ur);function Hr(e){var t=qr();return t?ur(t.sanitize(Ur.HTML,e)||""):mr(e,"HTML")?ur(gr(e)):Vr(Qt(),We(e))}function Gr(e){var t=qr();return t?t.sanitize(Ur.URL,e)||"":mr(e,"URL")?gr(e):xr(We(e))}function Wr(e){var t=qr();if(t)return cr(t.sanitize(Ur.RESOURCE_URL,e)||"");if(mr(e,"ResourceURL"))return cr(gr(e));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function qr(){var e=pn();return e&&e[12]}var Xr="__ngContext__";function Yr(e,t){e[Xr]=t}function Kr(e){var t=function(e){return e[Xr]||null}(e);return t?Array.isArray(t)?t:t.lView:null}function $r(e){return e.ngOriginalError}function Qr(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i0&&(e[n-1][4]=i[4]);var o=Ni(e,10+t);!function(e,t){To(e,t,t[11],2,null,null),t[0]=null,t[6]=null}(i[1],i);var a=o[19];null!==a&&a.detachView(o[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}}function po(e,t){if(!(256&t[2])){var n=t[11];Zt(n)&&n.destroyNode&&To(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return vo(e[1],e);for(;t;){var n=null;if(Dt(t))n=t[13];else{var i=t[10];i&&(n=i)}if(!n){for(;t&&!t[4]&&t!==e;)Dt(t)&&vo(t[1],t),t=t[3];null===t&&(t=e),Dt(t)&&vo(t[1],t),n=t&&t[4]}t=n}}(t)}}function vo(e,t){if(!(256&t[2])){t[2]&=-129,t[2]|=256,function(e,t){var n;if(null!=e&&null!=(n=e.destroyHooks))for(var i=0;i=0?i[r=c]():i[r=-c].unsubscribe(),o+=2}else{var l=i[r=n[o+1]];n[o].call(l)}if(null!==i){for(var h=r+1;ho?"":r[l+1].toLowerCase();var d=8&i?h:null;if(d&&-1!==Io(d,c,0)||2&i&&c!==h){if(Fo(i))return!1;a=!0}}}}else{if(!a&&!Fo(i)&&!Fo(u))return!1;if(a&&Fo(u))continue;a=!1,i=u|1&i}}return Fo(i)||a}function Fo(e){return 0==(1&e)}function Bo(e,t,n,i){if(null===t)return-1;var r=0;if(i||!n){for(var o=!1;r-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],i=0;i0?'="'+s+'"':"")+"]"}else 8&i?r+="."+a:4&i&&(r+=" "+a);else""!==r&&!Fo(a)&&(t+=Uo(o,r),r=""),i=a,o=o||!Fo(i);n++}return""!==r&&(t+=Uo(o,r)),t}var Go={};function Wo(e){qo(vn(),pn(),zn()+e,kn())}function qo(e,t,n,i){if(!i)if(3==(3&t[2])){var r=e.preOrderCheckHooks;null!==r&&qn(t,r,n)}else{var o=e.preOrderHooks;null!==o&&Xn(t,o,0,n)}Un(n)}function Xo(e,t){return e<<17|t<<2}function Yo(e){return e>>17&32767}function Ko(e){return 2|e}function $o(e){return(131068&e)>>2}function Qo(e,t){return-131069&e|t<<2}function Zo(e){return 1|e}function Jo(e,t){var n=e.contentQueries;if(null!==n)for(var i=0;i20&&qo(e,t,20,kn()),n(i,r)}finally{Un(o)}}function sa(e,t,n){if(Lt(t))for(var i=t.directiveEnd,r=t.directiveStart;r2&&void 0!==arguments[2]?arguments[2]:nn,i=t.localNames;if(null!==i)for(var r=t.index+1,o=0;o0;){var n=e[--t];if("number"==typeof n&&n<0)return n}return 0})(s)!=u&&s.push(u),s.push(i,r,a)}}function ma(e,t){null!==e.hostBindings&&e.hostBindings(1,t)}function ya(e,t){t.flags|=2,(e.components||(e.components=[])).push(t.index)}function ba(e,t,n){if(n){if(t.exportAs)for(var i=0;i0&&Ta(n)}}function Ta(e){for(var t=ao(e);null!==t;t=so(t))for(var n=10;n0&&Ta(i)}var o=e[1].components;if(null!==o)for(var a=0;a0&&Ta(s)}}function Aa(e,t){var n=an(t,e),i=n[1];(function(e,t){for(var n=t.length;n1&&void 0!==arguments[1]?arguments[1]:zi;if(t===zi){var n=new Error("NullInjectorError: No provider for ".concat(Fe(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),qa=new Pi("Set Injector scope."),Xa={},Ya={};function Ka(){return void 0===Ha&&(Ha=new Wa),Ha}function $a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=arguments.length>3?arguments[3]:void 0;return new Qa(e,n,t||Ka(),i)}var Qa=function(){function e(t,n,i){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;m(this,e),this.parent=i,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var a=[];n&&Ri(n,function(e){return r.processProvider(e,t,n)}),Ri([t],function(e){return r.processInjectorType(e,[],a)}),this.records.set(Ga,es(void 0,this));var s=this.records.get(qa);this.scope=null!=s?s.value:null,this.source=o||("object"==typeof t?null:Fe(t))}return b(e,[{key:"destroyed",get:function(){return this._destroyed}},{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(function(e){return e.ngOnDestroy()})}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:zi,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rt.Default;this.assertNotDestroyed();var i=Xi(this),r=ot(void 0);try{if(!(n&rt.SkipSelf)){var o=this.records.get(e);if(void 0===o){var a=function(e){return"function"==typeof e||"object"==typeof e&&e instanceof Pi}(e)&&$e(e);o=a&&this.injectableDefInScope(a)?es(Za(e),Xa):null,this.records.set(e,o)}if(null!=o)return this.hydrate(e,o)}return(n&rt.Self?Ka():this.parent).get(e,t=n&rt.Optional&&t===zi?null:t)}catch(s){if("NullInjectorError"===s.name){if((s[Hi]=s[Hi]||[]).unshift(Fe(e)),i)throw s;return er(s,e,"R3InjectorError",this.source)}throw s}finally{ot(r),Xi(i)}}},{key:"_resolveInjectorDefTypes",value:function(){var e=this;this.injectorDefTypes.forEach(function(t){return e.get(t)})}},{key:"toString",value:function(){var e=[];return this.records.forEach(function(t,n){return e.push(Fe(n))}),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var i=this;if(!(e=Ue(e)))return!1;var r=Ze(e),o=null==r&&e.ngModule||void 0,a=void 0===o?e:o,s=-1!==n.indexOf(a);if(void 0!==o&&(r=Ze(o)),null==r)return!1;if(null!=r.imports&&!s){var u;n.push(a);try{Ri(r.imports,function(e){i.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))})}finally{}if(void 0!==u)for(var c=function(e){var t=u[e],n=t.ngModule,r=t.providers;Ri(r,function(e){return i.processProvider(e,n,r||gt)})},l=0;l0){var n=Li(t,"?");throw new Error("Can't resolve all parameters for ".concat(Fe(e),": (").concat(n.join(", "),")."))}var i=function(e){var t=e&&(e[et]||e[nt]);if(t){var n=function(e){if(e.hasOwnProperty("name"))return e.name;var t=(""+e).match(/^function\s*([^\s(]+)/);return null===t?"":t[1]}(e);return console.warn('DEPRECATED: DI is instantiating a token "'.concat(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 "').concat(n,'" class.')),t}return null}(e);return null!==i?function(){return i.factory(e)}:function(){return new e}}(e);throw new Error("unreachable")}function Ja(e,t,n){var i;if(ns(e)){var r=Ue(e);return zt(r)||Za(r)}if(ts(e))i=function(){return Ue(e.useValue)};else if(function(e){return!(!e||!e.useFactory)}(e))i=function(){return e.useFactory.apply(e,v(Qi(e.deps||[])))};else if(function(e){return!(!e||!e.useExisting)}(e))i=function(){return Ki(Ue(e.useExisting))};else{var o=Ue(e&&(e.useClass||e.provide));if(!function(e){return!!e.deps}(e))return zt(o)||Za(o);i=function(){return h(o,v(Qi(e.deps)))}}return i}function es(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function ts(e){return null!==e&&"object"==typeof e&&qi in e}function ns(e){return"function"==typeof e}var is=function(e,t,n){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=arguments.length>3?arguments[3]:void 0,r=$a(e,t,n,i);return r._resolveInjectorDefTypes(),r}({name:n},t,e,n)},rs=function(){function e(){m(this,e)}return b(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?is(e,t,""):is(e.providers,e.parent,e.name||"")}}]),e}();function os(e,t){Wn(Kr(e)[1],mn())}function as(e){for(var t=function(e){return Object.getPrototypeOf(e.prototype).constructor}(e.type),n=!0,i=[e];t;){var r=void 0;if(Bt(e))r=t.\u0275cmp||t.\u0275dir;else{if(t.\u0275cmp)throw new Error("Directives cannot inherit Components");r=t.\u0275dir}if(r){if(n){i.push(r);var o=e;o.inputs=ss(e.inputs),o.declaredInputs=ss(e.declaredInputs),o.outputs=ss(e.outputs);var a=r.hostBindings;a&&ls(e,a);var s=r.viewQuery,u=r.contentQueries;if(s&&us(e,s),u&&cs(e,u),je(e.inputs,r.inputs),je(e.declaredInputs,r.declaredInputs),je(e.outputs,r.outputs),Bt(r)&&r.data.animation){var c=e.data;c.animation=(c.animation||[]).concat(r.data.animation)}}var l=r.features;if(l)for(var h=0;h=0;i--){var r=e[i];r.hostVars=t+=r.hostVars,r.hostAttrs=ti(r.hostAttrs,n=ti(n,r.hostAttrs))}}(i)}function ss(e){return e===vt?{}:e===gt?[]:e}function us(e,t){var n=e.viewQuery;e.viewQuery=n?function(e,i){t(e,i),n(e,i)}:t}function cs(e,t){var n=e.contentQueries;e.contentQueries=n?function(e,i,r){t(e,i,r),n(e,i,r)}:t}function ls(e,t){var n=e.hostBindings;e.hostBindings=n?function(e,i){t(e,i),n(e,i)}:t}rs.THROW_IF_NOT_FOUND=zi,rs.NULL=new Wa,rs.\u0275prov=Ye({token:rs,providedIn:"any",factory:function(){return Ki(Ga)}}),rs.__NG_ELEMENT_ID__=-1;var hs=null;function ds(){if(!hs){var e=pt.Symbol;if(e&&e.iterator)hs=e.iterator;else for(var t=Object.getOwnPropertyNames(Map.prototype),n=0;n1&&void 0!==arguments[1]?arguments[1]:rt.Default,n=pn();return null===n?Ki(e,t):gi(mn(),n,Ue(e),t)}function Es(e,t,n){var i=pn();return ms(i,Cn(),t)&&pa(vn(),Hn(),i,e,t,i[11],n,!1),Es}function Cs(e,t,n,i,r){var o=r?"class":"style";Va(e,n,t.inputs[o],o,i)}function Os(e,t,n,i){var r=pn(),o=vn(),a=20+e,s=r[11],u=r[a]=lo(s,t,dn.lFrame.currentNamespace),c=o.firstCreatePass?function(e,t,n,i,r,o,a){var s=t.consts,u=ta(t,e,2,r,cn(s,o));return va(t,n,u,cn(s,a)),null!==u.attrs&&Ua(u,u.attrs,!1),null!==u.mergedAttrs&&Ua(u,u.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,u),u}(a,o,r,0,t,n,i):o.data[a];bn(c,!0);var l=c.mergedAttrs;null!==l&&Zn(s,u,l);var h=c.classes;null!==h&&Mo(s,u,h);var d=c.styles;null!==d&&Po(s,u,d),64!=(64&c.flags)&&xo(o,r,u,c),0===dn.lFrame.elementDepthCount&&Yr(u,r),dn.lFrame.elementDepthCount++,Ft(c)&&(ua(o,r,c),sa(o,c,r)),null!==i&&ca(r,c)}function Ts(){var e=mn();_n()?wn():bn(e=e.parent,!1);var t=e;dn.lFrame.elementDepthCount--;var n=vn();n.firstCreatePass&&(Wn(n,e),Lt(e)&&n.queries.elementEnd(e)),null!=t.classesWithoutHost&&function(e){return 0!=(16&e.flags)}(t)&&Cs(n,t,pn(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function(e){return 0!=(32&e.flags)}(t)&&Cs(n,t,pn(),t.stylesWithoutHost,!1)}function As(e,t,n,i){Os(e,t,n,i),Ts()}function Ps(e,t,n){var i=pn(),r=vn(),o=e+20,a=r.firstCreatePass?function(e,t,n,i,r){var o=t.consts,a=cn(o,i),s=ta(t,e,8,"ng-container",a);return null!==a&&Ua(s,a,!0),va(t,n,s,cn(o,r)),null!==t.queries&&t.queries.elementStart(t,s),s}(o,r,i,t,n):r.data[o];bn(a,!0);var s=i[o]=i[11].createComment("");xo(r,i,s,a),Yr(s,i),Ft(a)&&(ua(r,i,a),sa(r,a,i)),null!=n&&ca(i,a)}function Ms(){var e=mn(),t=vn();_n()?wn():bn(e=e.parent,!1),t.firstCreatePass&&(Wn(t,e),Lt(e)&&t.queries.elementEnd(e))}function Is(e,t,n){Ps(e,t,n),Ms()}function Rs(){return pn()}function Ds(e){return!!e&&"function"==typeof e.then}function Ns(e){return!!e&&"function"==typeof e.subscribe}var Ls=Ns;function js(e,t,n,i){var r=pn(),o=vn(),a=mn();return Bs(o,r,r[11],a,e,t,!!n,i),js}function Fs(e,t){var n=mn(),i=pn(),r=vn();return Bs(r,i,Fa(Pn(r.data),n,i),n,e,t,!1),Fs}function Bs(e,t,n,i,r,o,a,s){var u=Ft(i),c=e.firstCreatePass&&ja(e),l=t[8],h=La(t),d=!0;if(3&i.type||s){var f=nn(i,t),p=s?s(f):f,v=h.length,g=s?function(e){return s(en(e[i.index]))}:i.index;if(Zt(n)){var m=null;if(!s&&u&&(m=function(e,t,n,i){var r=e.cleanup;if(null!=r)for(var o=0;ou?s[u]:null}"string"==typeof a&&(o+=2)}return null}(e,t,r,i.index)),null!==m)(m.__ngLastListenerFn__||m).__ngNextListenerFn__=o,m.__ngLastListenerFn__=o,d=!1;else{o=zs(i,t,l,o,!1);var y=n.listen(p,r,o);h.push(o,y),c&&c.push(r,g,v,v+1)}}else o=zs(i,t,l,o,!0),p.addEventListener(r,o,a),h.push(o),c&&c.push(r,g,v,a)}else o=zs(i,t,l,o,!1);var b,_=i.outputs;if(d&&null!==_&&(b=_[r])){var w=b.length;if(w)for(var k=0;k0&&void 0!==arguments[0]?arguments[0]:1;return function(e){return(dn.lFrame.contextLView=function(e,t){for(;e>0;)t=t[15],e--;return t}(e,dn.lFrame.contextLView))[8]}(e)}function Hs(e,t){for(var n=null,i=function(e){var t=e.attrs;if(null!=t){var n=t.indexOf(5);if(0==(1&n))return t[n+1]}return null}(e),r=0;r1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0,i=pn(),r=vn(),o=ta(r,20+e,16,null,n||null);null===o.projection&&(o.projection=t),wn(),64!=(64&o.flags)&&function(e,t,n){Ao(t[11],0,t,n,go(e,n,t),wo(n.parent||t[6],n,t))}(r,i,o)}function qs(e,t,n){return Xs(e,"",t,"",n),qs}function Xs(e,t,n,i,r){var o=pn(),a=_s(o,t,n,i);return a!==Go&&pa(vn(),Hn(),o,e,a,o[11],r,!1),Xs}function Ys(e,t,n,i,r){for(var o=e[n+1],a=null===t,s=i?Yo(o):$o(o),u=!1;0!==s&&(!1===u||a);){var c=e[s+1];Ks(e[s],t)&&(u=!0,e[s+1]=i?Zo(c):Ko(c)),s=i?Yo(c):$o(c)}u&&(e[n+1]=i?Ko(o):Zo(o))}function Ks(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&Bi(e,t)>=0}var $s={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Qs(e){return e.substring($s.key,$s.keyEnd)}function Zs(e){return e.substring($s.value,$s.valueEnd)}function Js(e,t){var n=$s.textEnd;return n===t?-1:(t=$s.keyEnd=function(e,t,n){for(;t32;)t++;return t}(e,$s.key=t,n),nu(e,t,n))}function eu(e,t){var n=$s.textEnd,i=$s.key=nu(e,t,n);return n===i?-1:(i=$s.keyEnd=function(e,t,n){for(var i;t=65&&(-33&i)<=90||i>=48&&i<=57);)t++;return t}(e,i,n),i=iu(e,i,n),i=$s.value=nu(e,i,n),i=$s.valueEnd=function(e,t,n){for(var i=-1,r=-1,o=-1,a=t,s=a;a32&&(s=a),o=r,r=i,i=-33&u}return s}(e,i,n),iu(e,i,n))}function tu(e){$s.key=0,$s.keyEnd=0,$s.value=0,$s.valueEnd=0,$s.textEnd=e.length}function nu(e,t,n){for(;t=0;n=eu(t,n))gu(e,Qs(t),Zs(t))}function uu(e){hu(ji,cu,e,!0)}function cu(e,t){for(var n=function(e){return tu(e),Js(e,nu(e,0,$s.textEnd))}(t);n>=0;n=Js(t,n))ji(e,Qs(t),!0)}function lu(e,t,n,i){var r=pn(),o=vn(),a=On(2);o.firstUpdatePass&&fu(o,e,a,i),t!==Go&&ms(r,a,t)&&mu(o,o.data[zn()],r,r[11],e,r[a+1]=function(e,t){return null==e||("string"==typeof t?e+=t:"object"==typeof e&&(e=Fe(gr(e)))),e}(t,n),i,a)}function hu(e,t,n,i){var r=vn(),o=On(2);r.firstUpdatePass&&fu(r,null,o,i);var a=pn();if(n!==Go&&ms(a,o,n)){var s=r.data[zn()];if(_u(s,i)&&!du(r,o)){var u=i?s.classesWithoutHost:s.stylesWithoutHost;null!==u&&(n=Be(u,n||"")),Cs(r,s,a,n,i)}else!function(e,t,n,i,r,o,a,s){r===Go&&(r=gt);for(var u=0,c=0,l=0=e.expandoStartIndex}function fu(e,t,n,i){var r=e.data;if(null===r[n+1]){var o=r[zn()],a=du(e,n);_u(o,i)&&null===t&&!a&&(t=!1),t=function(e,t,n,i){var r=Pn(e),o=i?t.residualClasses:t.residualStyles;if(null===r)0===(i?t.classBindings:t.styleBindings)&&(n=vu(n=pu(null,e,t,n,i),t.attrs,i),o=null);else{var a=t.directiveStylingLast;if(-1===a||e[a]!==r)if(n=pu(r,e,t,n,i),null===o){var s=function(e,t,n){var i=n?t.classBindings:t.styleBindings;if(0!==$o(i))return e[Yo(i)]}(e,t,i);void 0!==s&&Array.isArray(s)&&function(e,t,n,i){e[Yo(n?t.classBindings:t.styleBindings)]=i}(e,t,i,s=vu(s=pu(null,e,t,s[1],i),t.attrs,i))}else o=function(e,t,n){for(var i,r=t.directiveEnd,o=1+t.directiveStylingLast;o0)&&(l=!0)}else c=n;if(r)if(0!==u){var d=Yo(e[s+1]);e[i+1]=Xo(d,s),0!==d&&(e[d+1]=Qo(e[d+1],i)),e[s+1]=function(e,t){return 131071&e|t<<17}(e[s+1],i)}else e[i+1]=Xo(s,0),0!==s&&(e[s+1]=Qo(e[s+1],i)),s=i;else e[i+1]=Xo(u,0),0===s?s=i:e[u+1]=Qo(e[u+1],i),u=i;l&&(e[i+1]=Ko(e[i+1])),Ys(e,c,i,!0),Ys(e,c,i,!1),function(e,t,n,i,r){var o=r?e.residualClasses:e.residualStyles;null!=o&&"string"==typeof t&&Bi(o,t)>=0&&(n[i+1]=Zo(n[i+1]))}(t,c,e,i,o),a=Xo(s,u),o?t.classBindings=a:t.styleBindings=a}(r,o,t,n,a,i)}}function pu(e,t,n,i,r){var o=null,a=n.directiveEnd,s=n.directiveStylingLast;for(-1===s?s=n.directiveStart:s++;s0;){var u=e[r],c=Array.isArray(u),l=c?u[1]:u,h=null===l,d=n[r+1];d===Go&&(d=h?gt:void 0);var f=h?Fi(d,i):l===i?d:void 0;if(c&&!bu(f)&&(f=Fi(u,i)),bu(f)&&(a=f,s))return a;var p=e[r+1];r=s?Yo(p):$o(p)}if(null!==t){var v=o?t.residualClasses:t.residualStyles;null!=v&&(a=Fi(v,i))}return a}function bu(e){return void 0!==e}function _u(e,t){return 0!=(e.flags&(t?16:32))}function wu(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=pn(),i=vn(),r=e+20,o=i.firstCreatePass?ta(i,r,1,t,null):i.data[r],a=n[r]=function(e,t){return Zt(e)?e.createText(t):e.createTextNode(t)}(n[11],t);xo(i,n,a,o),bn(o,!1)}function ku(e){return xu("",e,""),ku}function xu(e,t,n){var i=pn(),r=_s(i,e,t,n);return r!==Go&&za(i,zn(),r),xu}function Su(e,t,n,i,r){var o=pn(),a=function(e,t,n,i,r,o){var a=ys(e,En(),n,r);return On(2),a?t+We(n)+i+We(r)+o:Go}(o,e,t,n,i,r);return a!==Go&&za(o,zn(),a),Su}function Eu(e,t,n){hu(ji,cu,_s(pn(),e,t,n),!0)}function Cu(e,t,n){var i=pn();return ms(i,Cn(),t)&&pa(vn(),Hn(),i,e,t,i[11],n,!0),Cu}function Ou(e,t,n){var i=pn();if(ms(i,Cn(),t)){var r=vn(),o=Hn();pa(r,o,i,e,t,Fa(Pn(r.data),o,i),n,!0)}return Ou}var Tu=void 0,Au=["en",[["a","p"],["AM","PM"],Tu],[["AM","PM"],Tu,Tu],[["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"]],Tu,[["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"]],Tu,[["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}",Tu,"{1} 'at' {0}",Tu],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Pu={};function Mu(e){return e in Pu||(Pu[e]=pt.ng&&pt.ng.common&&pt.ng.common.locales&&pt.ng.common.locales[e]),Pu[e]}var Iu=((Iu=Iu||{})[Iu.LocaleId=0]="LocaleId",Iu[Iu.DayPeriodsFormat=1]="DayPeriodsFormat",Iu[Iu.DayPeriodsStandalone=2]="DayPeriodsStandalone",Iu[Iu.DaysFormat=3]="DaysFormat",Iu[Iu.DaysStandalone=4]="DaysStandalone",Iu[Iu.MonthsFormat=5]="MonthsFormat",Iu[Iu.MonthsStandalone=6]="MonthsStandalone",Iu[Iu.Eras=7]="Eras",Iu[Iu.FirstDayOfWeek=8]="FirstDayOfWeek",Iu[Iu.WeekendRange=9]="WeekendRange",Iu[Iu.DateFormat=10]="DateFormat",Iu[Iu.TimeFormat=11]="TimeFormat",Iu[Iu.DateTimeFormat=12]="DateTimeFormat",Iu[Iu.NumberSymbols=13]="NumberSymbols",Iu[Iu.NumberFormats=14]="NumberFormats",Iu[Iu.CurrencyCode=15]="CurrencyCode",Iu[Iu.CurrencySymbol=16]="CurrencySymbol",Iu[Iu.CurrencyName=17]="CurrencyName",Iu[Iu.Currencies=18]="Currencies",Iu[Iu.Directionality=19]="Directionality",Iu[Iu.PluralCase=20]="PluralCase",Iu[Iu.ExtraData=21]="ExtraData",Iu),Ru="en-US";function Du(e){(function(e,t){null==e&&function(e,t,n,i){throw new Error("ASSERTION ERROR: ".concat(e)+" [Expected=> ".concat(null," ").concat("!="," ").concat(t," <=Actual]"))}(t,e)})(e,"Expected localeId to be defined"),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}function Nu(e,t,n,i,r){if(e=Ue(e),Array.isArray(e))for(var o=0;o>20;if(ns(e)||!e.multi){var p=new Qn(c,r,Ss),v=Fu(u,t,r?h:h+f,d);-1===v?(fi(ci(l,s),a,u),Lu(a,e,t.length),t.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=1048576),n.push(p),s.push(p)):(n[v]=p,s[v]=p)}else{var g=Fu(u,t,h+f,d),m=Fu(u,t,h,h+f),y=g>=0&&n[g],b=m>=0&&n[m];if(r&&!b||!r&&!y){fi(ci(l,s),a,u);var _=function(e,t,n,i,r){var o=new Qn(e,n,Ss);return o.multi=[],o.index=t,o.componentProviders=0,ju(o,r,i&&!n),o}(r?Vu:Bu,n.length,r,i,c);!r&&b&&(n[m].providerFactory=_),Lu(a,e,t.length,0),t.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=1048576),n.push(_),s.push(_)}else Lu(a,e,g>-1?g:m,ju(n[r?m:g],c,!r&&i));!r&&i&&b&&n[m].componentProviders++}}}function Lu(e,t,n,i){var r=ns(t);if(r||function(e){return!!e.useClass}(t)){var o=(t.useClass||t).prototype.ngOnDestroy;if(o){var a=e.destroyHooks||(e.destroyHooks=[]);if(!r&&t.multi){var s=a.indexOf(n);-1===s?a.push(n,[i,o]):a[s+1].push(i,o)}else a.push(n,o)}}}function ju(e,t,n){return n&&e.componentProviders++,e.multi.push(t)-1}function Fu(e,t,n,i){for(var r=n;r1&&void 0!==arguments[1]?arguments[1]:[];return function(n){n.providersResolver=function(n,i){return function(e,t,n){var i=vn();if(i.firstCreatePass){var r=Bt(e);Nu(n,i.data,i.blueprint,r,!0),Nu(t,i.data,i.blueprint,r,!1)}}(n,i?i(e):e,t)}}}var Hu=function e(){m(this,e)},Gu=function e(){m(this,e)};function Wu(){}function qu(e,t){return new Yu(nn(e,t))}Gu.NULL=new(function(){function e(){m(this,e)}return b(e,[{key:"resolveComponentFactory",value:function(e){throw function(e){var t=Error("No component factory found for ".concat(Fe(e),". Did you add it to @NgModule.entryComponents?"));return t.ngComponent=e,t}(e)}}]),e}());var Xu=function(){return qu(mn(),pn())},Yu=function(){var e=function e(t){m(this,e),this.nativeElement=t};return e.__NG_ELEMENT_ID__=Xu,e}();function Ku(e){return e instanceof Yu?e.nativeElement:e}var $u=function e(){m(this,e)},Qu=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=function(){return Zu()},e}(),Zu=function(){var e=pn(),t=an(mn().index,e);return function(e){return e[11]}(Dt(t)?t:e)},Ju=function(){var e=function e(){m(this,e)};return e.\u0275prov=Ye({token:e,providedIn:"root",factory:function(){return null}}),e}(),ec=function e(t){m(this,e),this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")},tc=new ec("12.2.5"),nc=function(){function e(){m(this,e)}return b(e,[{key:"supports",value:function(e){return ps(e)}},{key:"create",value:function(e){return new rc(e)}}]),e}(),ic=function(e,t){return t},rc=function(){function e(t){m(this,e),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||ic}return b(e,[{key:"forEachItem",value:function(e){var t;for(t=this._itHead;null!==t;t=t._next)e(t)}},{key:"forEachOperation",value:function(e){for(var t=this._itHead,n=this._removalsHead,i=0,r=null;t||n;){var o=!n||t&&t.currentIndex4&&void 0!==arguments[4]&&arguments[4];null!==n;){var o=t[n.index];if(null!==o&&i.push(en(o)),Nt(o))for(var a=10;a-1&&(fo(e,n),Ni(t,n))}this._attachedToViewContainer=!1}po(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){da(this._lView[1],this._lView,null,e)}},{key:"markForCheck",value:function(){Ma(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){Ia(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){xn(!0);try{Ia(e,t,n)}finally{xn(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}},{key:"detachFromAppRef",value:function(){this._appRef=null,function(e,t){To(e,t,t[11],2,null,null)}(this._lView[1],this._lView)}},{key:"attachToAppRef",value:function(e){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}]),e}(),yc=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,e))._view=e,i}return b(n,[{key:"detectChanges",value:function(){Ra(this._view)}},{key:"checkNoChanges",value:function(){!function(e){xn(!0);try{Ra(e)}finally{xn(!1)}}(this._view)}},{key:"context",get:function(){return null}}]),n}(mc),bc=function(e){return function(e,t,n){if(jt(e)&&!n){var i=an(e.index,t);return new mc(i,i)}return 47&e.type?new mc(t[16],t):null}(mn(),pn(),16==(16&e))},_c=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=bc,e}(),wc=[new cc],kc=new fc([new nc]),xc=new vc(wc),Sc=function(){return Oc(mn(),pn())},Ec=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=Sc,e}(),Cc=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this))._declarationLView=e,o._declarationTContainer=i,o.elementRef=r,o}return b(n,[{key:"createEmbeddedView",value:function(e){var t=this._declarationTContainer.tViews,n=ea(this._declarationLView,t,e,16,null,t.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];var i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(t)),ia(t,n,e),new mc(n)}}]),n}(Ec);function Oc(e,t){return 4&e.type?new Cc(t,e,qu(e,t)):null}var Tc=function e(){m(this,e)},Ac=function(){return Dc(mn(),pn())},Pc=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=Ac,e}(),Mc=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this))._lContainer=e,o._hostTNode=i,o._hostLView=r,o}return b(n,[{key:"element",get:function(){return qu(this._hostTNode,this._hostLView)}},{key:"injector",get:function(){return new Si(this._hostTNode,this._hostLView)}},{key:"parentInjector",get:function(){var e=di(this._hostTNode,this._hostLView);if(ii(e)){var t=oi(e,this._hostLView),n=ri(e);return new Si(t[1].data[n+8],t)}return new Si(null,this._hostLView)}},{key:"clear",value:function(){for(;this.length>0;)this.remove(this.length-1)}},{key:"get",value:function(e){var t=Ic(this._lContainer);return null!==t&&t[e]||null}},{key:"length",get:function(){return this._lContainer.length-10}},{key:"createEmbeddedView",value:function(e,t,n){var i=e.createEmbeddedView(t||{});return this.insert(i,n),i}},{key:"createComponent",value:function(e,t,n,i,r){var o=n||this.parentInjector;if(!r&&null==e.ngModule&&o){var a=o.get(Tc,null);a&&(r=a)}var s=e.create(o,i,void 0,r);return this.insert(s.hostView,t),s}},{key:"insert",value:function(e,t){var i=e._lView,r=i[1];if(function(e){return Nt(e[3])}(i)){var o=this.indexOf(e);if(-1!==o)this.detach(o);else{var a=i[3],s=new n(a,a[6],a[3]);s.detach(s.indexOf(e))}}var u=this._adjustIndex(t),c=this._lContainer;!function(e,t,n,i){var r=10+i,o=n.length;i>0&&(n[r-1][4]=t),i1&&void 0!==arguments[1]?arguments[1]:0;return null==e?this.length+t:e}}]),n}(Pc);function Ic(e){return e[8]}function Rc(e){return e[8]||(e[8]=[])}function Dc(e,t){var n,i=t[e.index];if(Nt(i))n=i;else{var r;if(8&e.type)r=en(i);else{var o=t[11];r=o.createComment("");var a=nn(e,t);mo(o,_o(o,a),r,function(e,t){return Zt(e)?e.nextSibling(t):t.nextSibling}(o,a),!1)}t[e.index]=n=Ca(i,t,r,e),Pa(t,n)}return new Mc(n,e,t)}var Nc={},Lc=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).ngModule=e,i}return b(n,[{key:"resolveComponentFactory",value:function(e){var t=It(e);return new Bc(t,this.ngModule)}}]),n}(Gu);function jc(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}var Fc=new Pi("SCHEDULER_TOKEN",{providedIn:"root",factory:function(){return Jr}}),Bc=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).componentDef=e,r.ngModule=i,r.componentType=e.type,r.selector=function(e){return e.map(Ho).join(",")}(e.selectors),r.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],r.isBoundToModule=!!i,r}return b(n,[{key:"inputs",get:function(){return jc(this.componentDef.inputs)}},{key:"outputs",get:function(){return jc(this.componentDef.outputs)}},{key:"create",value:function(e,t,n,i){var r,o,a=(i=i||this.ngModule)?function(e,t){return{get:function(n,i,r){var o=e.get(n,Nc,r);return o!==Nc||i===Nc?o:t.get(n,i,r)}}}(e,i.injector):e,s=a.get($u,Jt),u=a.get(Ju,null),c=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",h=n?function(e,t,n){if(Zt(e))return e.selectRootElement(t,n===ct.ShadowDom);var i="string"==typeof t?e.querySelector(t):t;return i.textContent="",i}(c,n,this.componentDef.encapsulation):lo(s.createRenderer(null,this.componentDef),l,function(e){var t=e.toLowerCase();return"svg"===t?$t:"math"===t?"http://www.w3.org/1998/MathML/":null}(l)),d=this.componentDef.onPush?576:528,f={components:[],scheduler:Jr,clean:Na,playerHandler:null,flags:0},p=ha(0,null,null,1,0,null,null,null,null,null),v=ea(null,p,f,d,null,null,s,c,u,a);Nn(v);try{var g=function(e,t,n,i,r,o){var a=n[1];n[20]=e;var s=ta(a,20,2,"#host",null),u=s.mergedAttrs=t.hostAttrs;null!==u&&(Ua(s,u,!0),null!==e&&(Zn(r,e,u),null!==s.classes&&Mo(r,e,s.classes),null!==s.styles&&Po(r,e,s.styles)));var c=i.createRenderer(e,t),l=ea(n,la(t),null,t.onPush?64:16,n[20],s,i,c,null,null);return a.firstCreatePass&&(fi(ci(s,n),a,t.type),ya(a,s),_a(s,n.length,1)),Pa(n,l),n[20]=l}(h,this.componentDef,v,s,c);if(h)if(n)Zn(c,h,["ng-version",tc.full]);else{var m=function(e){for(var t=[],n=[],i=1,r=2;i0&&Mo(c,h,b.join(" "))}if(o=rn(p,20),void 0!==t)for(var _=o.projection=[],w=0;w1&&void 0!==arguments[1]?arguments[1]:rs.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rt.Default;return e===rs||e===Tc||e===Ga?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(function(e){return e()}),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}}]),n}(Tc),Hc=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).moduleType=e,null!==Rt(e)&&function(e){var t=new Set;!function e(n){var i=Rt(n,!0),r=i.id;null!==r&&(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(Fe(t)," vs ").concat(Fe(t.name)))}(r,zc.get(r),n),zc.set(r,n));var o,a=_(no(i.imports));try{for(a.s();!(o=a.n()).done;){var s=o.value;t.has(s)||(t.add(s),e(s))}}catch(u){a.e(u)}finally{a.f()}}(e)}(e),i}return b(n,[{key:"create",value:function(e){return new Uc(this.moduleType,e)}}]),n}(function(){return function e(){m(this,e)}}());function Gc(e,t,n){var i=Sn()+e,r=pn();return r[i]===Go?gs(r,i,n?t.call(n):t()):function(e,t){return e[t]}(r,i)}function Wc(e,t,n,i){return Xc(pn(),Sn(),e,t,n,i)}function qc(e,t){var n=e[t];return n===Go?void 0:n}function Xc(e,t,n,i,r,o){var a=t+n;return ms(e,a,r)?gs(e,a+1,o?i.call(o,r):i(r)):qc(e,a+1)}function Yc(e,t){var n,i=vn(),r=e+20;i.firstCreatePass?(n=function(e,t){if(t)for(var n=t.length-1;n>=0;n--){var i=t[n];if(e===i.name)return i}throw new Ge("302","The pipe '".concat(e,"' could not be found!"))}(t,i.pipeRegistry),i.data[r]=n,n.onDestroy&&(i.destroyHooks||(i.destroyHooks=[])).push(r,n.onDestroy)):n=i.data[r];var o=n.factory||(n.factory=zt(n.type)),a=ot(Ss);try{var s=si(!1),u=o();return si(s),function(e,t,n,i){n>=e.data.length&&(e.data[n]=null,e.blueprint[n]=null),t[n]=i}(i,pn(),r,u),u}finally{ot(a)}}function Kc(e,t,n){var i=e+20,r=pn(),o=on(r,i);return function(e,t){return fs.isWrapped(t)&&(t=fs.unwrap(t),e[En()]=Go),t}(r,function(e,t){return e[1].data[t].pure}(r,i)?Xc(r,Sn(),t,o.transform,n,o):o.transform(n))}function $c(e){return function(t){setTimeout(e,void 0,t)}}var Qc=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return m(this,i),(e=n.call(this)).__isAsync=t,e}return b(i,[{key:"emit",value:function(t){e(p(i.prototype),"next",this).call(this,t)}},{key:"subscribe",value:function(t,n,r){var o,a,s,u=t,c=n||function(){return null},l=r;if(t&&"object"==typeof t){var h=t;u=null===(o=h.next)||void 0===o?void 0:o.bind(h),c=null===(a=h.error)||void 0===a?void 0:a.bind(h),l=null===(s=h.complete)||void 0===s?void 0:s.bind(h)}this.__isAsync&&(c=$c(c),u&&(u=$c(u)),l&&(l=$c(l)));var d=e(p(i.prototype),"subscribe",this).call(this,{next:u,error:c,complete:l});return t instanceof G&&t.add(d),d}}]),i}(re);function Zc(){return this._results[ds()]()}var Jc=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];m(this,e),this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;var n=ds(),i=e.prototype;i[n]||(i[n]=Zc)}return b(e,[{key:"changes",get:function(){return this._changes||(this._changes=new Qc)}},{key:"get",value:function(e){return this._results[e]}},{key:"map",value:function(e){return this._results.map(e)}},{key:"filter",value:function(e){return this._results.filter(e)}},{key:"find",value:function(e){return this._results.find(e)}},{key:"reduce",value:function(e,t){return this._results.reduce(e,t)}},{key:"forEach",value:function(e){this._results.forEach(e)}},{key:"some",value:function(e){return this._results.some(e)}},{key:"toArray",value:function(){return this._results.slice()}},{key:"toString",value:function(){return this._results.toString()}},{key:"reset",value:function(e,t){var n=this;n.dirty=!1;var i=Ii(e);(this._changesDetected=!function(e,t,n){if(e.length!==t.length)return!1;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:[];m(this,e),this.queries=t}return b(e,[{key:"createEmbeddedView",value:function(t){var n=t.queries;if(null!==n){for(var i=null!==t.contentQueries?t.contentQueries[0]:n.length,r=[],o=0;o2&&void 0!==arguments[2]?arguments[2]:null;m(this,e),this.predicate=t,this.flags=n,this.read=i},il=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];m(this,e),this.queries=t}return b(e,[{key:"elementStart",value:function(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:-1;m(this,e),this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=n}return b(e,[{key:"elementStart",value:function(e,t){this.isApplyingToNode(t)&&this.matchTNode(e,t)}},{key:"elementEnd",value:function(e){this._declarationNodeIndex===e.index&&(this._appliesToNextNode=!1)}},{key:"template",value:function(e,t){this.elementStart(e,t)}},{key:"embeddedTView",value:function(t,n){return this.isApplyingToNode(t)?(this.crossesNgTemplate=!0,this.addMatch(-t.index,n),new e(this.metadata)):null}},{key:"isApplyingToNode",value:function(e){if(this._appliesToNextNode&&1!=(1&this.metadata.flags)){for(var t=this._declarationNodeIndex,n=e.parent;null!==n&&8&n.type&&n.index!==t;)n=n.parent;return t===(null!==n?n.index:-1)}return this._appliesToNextNode}},{key:"matchTNode",value:function(e,t){var n=this.metadata.predicate;if(Array.isArray(n))for(var i=0;i0)i.push(a[s/2]);else{for(var c=o[s+1],l=t[-u],h=10;h0&&(r=setTimeout(function(){i._callbacks=i._callbacks.filter(function(e){return e.timeoutId!==r}),e(i._didWork,i.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Yl=function(){var e=function(){function e(){m(this,e),this._applications=new Map,Kl.addToWindow(this)}return b(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Kl.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Kl=new(function(){function e(){m(this,e)}return b(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),$l=!0,Ql=!1;function Zl(){return Ql=!0,$l}var Jl=new Pi("AllowMultipleToken");function eh(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],i="Platform: ".concat(t),r=new Pi(i);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],o=th();if(!o||o.injector.get(Jl,!1))if(e)e(n.concat(t).concat({provide:r,useValue:!0}));else{var a=n.concat(t).concat({provide:r,useValue:!0},{provide:qa,useValue:"platform"});!function(e){if(Wl&&!Wl.destroyed&&!Wl.injector.get(Jl,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wl=e.get(nh);var t=e.get(kl,null);t&&t.forEach(function(e){return e()})}(rs.create({providers:a,name:i}))}return function(e){var t=th();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(r)}}function th(){return Wl&&!Wl.destroyed?Wl:null}var nh=function(){var e=function(){function e(t){m(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return b(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n=this,i=function(e,t){return"noop"===e?new ql:("zone.js"===e?void 0:e)||new Bl({enableLongStackTrace:Zl(),shouldCoalesceEventChangeDetection:!!(null==t?void 0:t.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==t?void 0:t.ngZoneRunCoalescing)})}(t?t.ngZone:void 0,{ngZoneEventCoalescing:t&&t.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:t&&t.ngZoneRunCoalescing||!1}),r=[{provide:Bl,useValue:i}];return i.run(function(){var o=rs.create({providers:r,parent:n.injector,name:e.moduleType.name}),a=e.create(o),s=a.injector.get(Zr,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return i.runOutsideAngular(function(){var e=i.onError.subscribe({next:function(e){s.handleError(e)}});a.onDestroy(function(){oh(n._modules,a),e.unsubscribe()})}),function(e,i,r){try{var o=((s=a.injector.get(yl)).runInitializers(),s.donePromise.then(function(){return Du(a.injector.get(Cl,Ru)||Ru),n._moduleDoBootstrap(a),a}));return Ds(o)?o.catch(function(t){throw i.runOutsideAngular(function(){return e.handleError(t)}),t}):o}catch(t){throw i.runOutsideAngular(function(){return e.handleError(t)}),t}var s}(s,i)})}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=ih({},n);return function(e,t,n){var i=new Hc(n);return Promise.resolve(i)}(0,0,e).then(function(e){return t.bootstrapModuleFactory(e,i)})}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(rh);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(function(e){return t.bootstrap(e)});else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(Fe(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.'));e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"injector",get:function(){return this._injector}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(e){return e.destroy()}),this._destroyListeners.forEach(function(e){return e()}),this._destroyed=!0}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function ih(e,t){return Array.isArray(t)?t.reduce(ih,e):Object.assign(Object.assign({},e),t)}var rh=function(){var e=function(){function e(t,n,i,r,o){var a=this;m(this,e),this._zone=t,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=r,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run(function(){a.tick()})}});var s=new J(function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular(function(){e.next(a._stable),e.complete()})}),u=new J(function(e){var t;a._zone.runOutsideAngular(function(){t=a._zone.onStable.subscribe(function(){Bl.assertNotInAngularZone(),Fl(function(){!a._stable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks&&(a._stable=!0,e.next(!0))})})});var n=a._zone.onUnstable.subscribe(function(){Bl.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular(function(){e.next(!1)}))});return function(){t.unsubscribe(),n.unsubscribe()}});this.isStable=Ee(s,u.pipe(Ne()))}return b(e,[{key:"bootstrap",value:function(e,t){var n,i=this;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.");n=e instanceof Hu?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var r=function(e){return e.isBoundToModule}(n)?void 0:this._injector.get(Tc),o=n.create(rs.NULL,[],t||n.selector,r),a=o.location.nativeElement,s=o.injector.get(Xl,null),u=s&&o.injector.get(Yl);return s&&u&&u.registerApplication(a,s),o.onDestroy(function(){i.detachView(o.hostView),oh(i.components,o),u&&u.unregisterApplication(a)}),this._loadComponent(o),o}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t,n=_(this._views);try{for(n.s();!(t=n.n()).done;){var i;t.value.detectChanges()}}catch(r){n.e(r)}finally{n.f()}}catch(i){this._zone.runOutsideAngular(function(){return e._exceptionHandler.handleError(i)})}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;oh(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Sl,[]).concat(this._bootstrapListeners).forEach(function(t){return t(e)})}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach(function(e){return e.destroy()}),this._onMicrotaskEmptySubscription.unsubscribe()}},{key:"viewCount",get:function(){return this._views.length}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(rs),Ki(Zr),Ki(Gu),Ki(yl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function oh(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var ah=eh(null,"core",[{provide:xl,useValue:"unknown"},{provide:nh,deps:[rs]},{provide:Yl,deps:[]},{provide:El,deps:[]}]),sh=[{provide:rh,useClass:rh,deps:[Bl,rs,Zr,Gu,yl]},{provide:Fc,deps:[Bl],useFactory:function(e){var t=[];return e.onStable.subscribe(function(){for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:yl,useClass:yl,deps:[[new rr,ml]]},{provide:Nl,useClass:Nl,deps:[]},_l,{provide:fc,useFactory:function(){return kc},deps:[]},{provide:vc,useFactory:function(){return xc},deps:[]},{provide:Cl,useFactory:function(e){return Du(e=e||"undefined"!=typeof $localize&&$localize.locale||Ru),e},deps:[[new ir(Cl),new rr,new or]]},{provide:Ol,useValue:"USD"}],uh=function(){var e=function e(t){m(this,e)};return e.\u0275fac=function(t){return new(t||e)(Ki(rh))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:sh}),e}(),ch=null;function lh(){return ch}var hh=new Pi("DocumentToken"),dh=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"historyGo",value:function(e){throw new Error("Not implemented")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:fh,token:e,providedIn:"platform"}),e}();function fh(){return Ki(ph)}var ph=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this))._doc=e,i._init(),i}return b(n,[{key:"_init",value:function(){this.location=window.location,this._history=window.history}},{key:"getBaseHrefFromDOM",value:function(){return lh().getBaseHref(this._doc)}},{key:"onPopState",value:function(e){var t=lh().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",e,!1),function(){return t.removeEventListener("popstate",e)}}},{key:"onHashChange",value:function(e){var t=lh().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",e,!1),function(){return t.removeEventListener("hashchange",e)}}},{key:"href",get:function(){return this.location.href}},{key:"protocol",get:function(){return this.location.protocol}},{key:"hostname",get:function(){return this.location.hostname}},{key:"port",get:function(){return this.location.port}},{key:"pathname",get:function(){return this.location.pathname},set:function(e){this.location.pathname=e}},{key:"search",get:function(){return this.location.search}},{key:"hash",get:function(){return this.location.hash}},{key:"pushState",value:function(e,t,n){vh()?this._history.pushState(e,t,n):this.location.hash=n}},{key:"replaceState",value:function(e,t,n){vh()?this._history.replaceState(e,t,n):this.location.hash=n}},{key:"forward",value:function(){this._history.forward()}},{key:"back",value:function(){this._history.back()}},{key:"historyGo",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._history.go(e)}},{key:"getState",value:function(){return this._history.state}}]),n}(dh);return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({factory:gh,token:e,providedIn:"platform"}),e}();function vh(){return!!window.history.pushState}function gh(){return new ph(Ki(hh))}function mh(e,t){if(0==e.length)return t;if(0==t.length)return e;var n=0;return e.endsWith("/")&&n++,t.startsWith("/")&&n++,2==n?e+t.substring(1):1==n?e+t:e+"/"+t}function yh(e){var t=e.match(/#|\?|$/),n=t&&t.index||e.length;return e.slice(0,n-("/"===e[n-1]?1:0))+e.slice(n)}function bh(e){return e&&"?"!==e[0]?"?"+e:e}var _h=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"historyGo",value:function(e){throw new Error("Not implemented")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:wh,token:e,providedIn:"root"}),e}();function wh(e){var t=Ki(hh).location;return new xh(Ki(dh),t&&t.origin||"")}var kh=new Pi("appBaseHref"),xh=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;if(m(this,n),(r=t.call(this))._platformLocation=e,r._removeListenerFns=[],null==i&&(i=r._platformLocation.getBaseHrefFromDOM()),null==i)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return r._baseHref=i,u(r)}return b(n,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"prepareExternalUrl",value:function(e){return mh(this._baseHref,e)}},{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this._platformLocation.pathname+bh(this._platformLocation.search),n=this._platformLocation.hash;return n&&e?"".concat(t).concat(n):t}},{key:"pushState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+bh(i));this._platformLocation.pushState(e,t,r)}},{key:"replaceState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+bh(i));this._platformLocation.replaceState(e,t,r)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformLocation).historyGo)||void 0===t||t.call(e,n)}}]),n}(_h);return e.\u0275fac=function(t){return new(t||e)(Ki(dh),Ki(kh,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Sh=function(){var e=function(){function e(t,n){var i=this;m(this,e),this._subject=new Qc,this._urlChangeListeners=[],this._platformStrategy=t;var r=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=yh(Ch(r)),this._platformStrategy.onPopState(function(e){i._subject.emit({url:i.path(!0),pop:!0,state:e.state,type:e.type})})}return b(e,[{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.normalize(this._platformStrategy.path(e))}},{key:"getState",value:function(){return this._platformLocation.getState()}},{key:"isCurrentPathEqualTo",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this.path()==this.normalize(e+bh(t))}},{key:"normalize",value:function(t){return e.stripTrailingSlash(function(e,t){return e&&t.startsWith(e)?t.substring(e.length):t}(this._baseHref,Ch(t)))}},{key:"prepareExternalUrl",value:function(e){return e&&"/"!==e[0]&&(e="/"+e),this._platformStrategy.prepareExternalUrl(e)}},{key:"go",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.pushState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+bh(t)),n)}},{key:"replaceState",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.replaceState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+bh(t)),n)}},{key:"forward",value:function(){this._platformStrategy.forward()}},{key:"back",value:function(){this._platformStrategy.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformStrategy).historyGo)||void 0===t||t.call(e,n)}},{key:"onUrlChange",value:function(e){var t=this;this._urlChangeListeners.push(e),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(function(e){t._notifyUrlChangeListeners(e.url,e.state)}))}},{key:"_notifyUrlChangeListeners",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;this._urlChangeListeners.forEach(function(n){return n(e,t)})}},{key:"subscribe",value:function(e,t,n){return this._subject.subscribe({next:e,error:t,complete:n})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(_h),Ki(dh))},e.normalizeQueryParams=bh,e.joinWithSlash=mh,e.stripTrailingSlash=yh,e.\u0275prov=Ye({factory:Eh,token:e,providedIn:"root"}),e}();function Eh(){return new Sh(Ki(_h),Ki(dh))}function Ch(e){return e.replace(/\/index.html$/,"")}var Oh=((Oh=Oh||{})[Oh.Zero=0]="Zero",Oh[Oh.One=1]="One",Oh[Oh.Two=2]="Two",Oh[Oh.Few=3]="Few",Oh[Oh.Many=4]="Many",Oh[Oh.Other=5]="Other",Oh),Th=function e(){m(this,e)},Ah=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).locale=e,i}return b(n,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Mu(t);if(n)return n;var i=t.split("-")[0];if(n=Mu(i))return n;if("en"===i)return Au;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Iu.PluralCase]}(t||this.locale)(e)){case Oh.Zero:return"zero";case Oh.One:return"one";case Oh.Two:return"two";case Oh.Few:return"few";case Oh.Many:return"many";default:return"other"}}}]),n}(Th);return e.\u0275fac=function(t){return new(t||e)(Ki(Cl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function Ph(e,n){n=encodeURIComponent(n);var i,r=_(e.split(";"));try{for(r.s();!(i=r.n()).done;){var o=i.value,a=o.indexOf("="),s=t(-1==a?[o,""]:[o.slice(0,a),o.slice(a+1)],2),u=s[0],c=s[1];if(u.trim()===n)return decodeURIComponent(c)}}catch(l){r.e(l)}finally{r.f()}return null}var Mh=function(){var e=function(){function e(t,n,i,r){m(this,e),this._iterableDiffers=t,this._keyValueDiffers=n,this._ngEl=i,this._renderer=r,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}return b(e,[{key:"klass",set:function(e){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof e?e.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}},{key:"ngClass",set:function(e){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof e?e.split(/\s+/):e,this._rawClass&&(ps(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}},{key:"ngDoCheck",value:function(){if(this._iterableDiffer){var e=this._iterableDiffer.diff(this._rawClass);e&&this._applyIterableChanges(e)}else if(this._keyValueDiffer){var t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}},{key:"_applyKeyValueChanges",value:function(e){var t=this;e.forEachAddedItem(function(e){return t._toggleClass(e.key,e.currentValue)}),e.forEachChangedItem(function(e){return t._toggleClass(e.key,e.currentValue)}),e.forEachRemovedItem(function(e){e.previousValue&&t._toggleClass(e.key,!1)})}},{key:"_applyIterableChanges",value:function(e){var t=this;e.forEachAddedItem(function(e){if("string"!=typeof e.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got ".concat(Fe(e.item)));t._toggleClass(e.item,!0)}),e.forEachRemovedItem(function(e){return t._toggleClass(e.item,!1)})}},{key:"_applyClasses",value:function(e){var t=this;e&&(Array.isArray(e)||e instanceof Set?e.forEach(function(e){return t._toggleClass(e,!0)}):Object.keys(e).forEach(function(n){return t._toggleClass(n,!!e[n])}))}},{key:"_removeClasses",value:function(e){var t=this;e&&(Array.isArray(e)||e instanceof Set?e.forEach(function(e){return t._toggleClass(e,!1)}):Object.keys(e).forEach(function(e){return t._toggleClass(e,!1)}))}},{key:"_toggleClass",value:function(e,t){var n=this;(e=e.trim())&&e.split(/\s+/g).forEach(function(e){t?n._renderer.addClass(n._ngEl.nativeElement,e):n._renderer.removeClass(n._ngEl.nativeElement,e)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(fc),Ss(vc),Ss(Yu),Ss(Qu))},e.\u0275dir=Mt({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),e}(),Ih=function(){function e(t,n,i,r){m(this,e),this.$implicit=t,this.ngForOf=n,this.index=i,this.count=r}return b(e,[{key:"first",get:function(){return 0===this.index}},{key:"last",get:function(){return this.index===this.count-1}},{key:"even",get:function(){return this.index%2==0}},{key:"odd",get:function(){return!this.even}}]),e}(),Rh=function(){var e=function(){function e(t,n,i){m(this,e),this._viewContainer=t,this._template=n,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return b(e,[{key:"ngForOf",set:function(e){this._ngForOf=e,this._ngForOfDirty=!0}},{key:"ngForTrackBy",get:function(){return this._trackByFn},set:function(e){this._trackByFn=e}},{key:"ngForTemplate",set:function(e){e&&(this._template=e)}},{key:"ngDoCheck",value:function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(n){throw new Error("Cannot find a differ supporting object '".concat(e,"' of type '").concat(function(e){return e.name||typeof e}(e),"'. NgFor only supports binding to Iterables such as Arrays."))}}if(this._differ){var t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}},{key:"_applyChanges",value:function(e){var t=this,n=[];e.forEachOperation(function(e,i,r){if(null==e.previousIndex){var o=t._viewContainer.createEmbeddedView(t._template,new Ih(null,t._ngForOf,-1,-1),null===r?void 0:r),a=new Dh(e,o);n.push(a)}else if(null==r)t._viewContainer.remove(null===i?void 0:i);else if(null!==i){var s=t._viewContainer.get(i);t._viewContainer.move(s,r);var u=new Dh(e,s);n.push(u)}});for(var i=0;i1&&void 0!==arguments[1])||arguments[1],i=e.findTestabilityInTree(t,n);if(null==i)throw new Error("Could not find testability for element.");return i},pt.getAllAngularTestabilities=function(){return e.getAllTestabilities()},pt.getAllAngularRootElements=function(){return e.getAllRootElements()},pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(function(e){var t=pt.getAllAngularTestabilities(),n=t.length,i=!1,r=function(t){i=i||t,0==--n&&e(i)};t.forEach(function(e){e.whenStable(r)})})}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var i=e.getTestability(t);return null!=i?i:n?lh().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){!function(e){Kl=e}(new e)}}]),e}(),rd=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"build",value:function(){return new XMLHttpRequest}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),od=new Pi("EventManagerPlugins"),ad=function(){var e=function(){function e(t,n){var i=this;m(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach(function(e){return e.manager=i}),this._plugins=t.slice().reverse()}return b(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,i=0;i-1&&(t.splice(n,1),o+=e+".")}),o+=r,0!=t.length||0===r.length)return null;var a={};return a.domEventName=i,a.fullKey=o,a}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&kd.hasOwnProperty(t)&&(t=kd[t]))}return wd[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),_d.forEach(function(i){i!=n&&xd[i](e)&&(t+=i+".")}),t+=n}},{key:"eventCallback",value:function(e,t,i){return function(r){n.getEventFullKey(r)===e&&i.runGuarded(function(){return t(r)})}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),n}(sd);return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Ed=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:function(){return Ki(Cd)},token:e,providedIn:"root"}),e}(),Cd=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this))._doc=e,i}return b(n,[{key:"sanitize",value:function(e,t){if(null==t)return null;switch(e){case Ur.NONE:return t;case Ur.HTML:return mr(t,"HTML")?gr(t):Vr(this._doc,String(t)).toString();case Ur.STYLE:return mr(t,"Style")?gr(t):t;case Ur.SCRIPT:if(mr(t,"Script"))return gr(t);throw new Error("unsafe value used in a script context");case Ur.URL:return yr(t),mr(t,"URL")?gr(t):xr(String(t));case Ur.RESOURCE_URL:if(mr(t,"ResourceURL"))return gr(t);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext ".concat(e," (see https://g.co/ng/security#xss)"))}}},{key:"bypassSecurityTrustHtml",value:function(e){return function(e){return new hr(e)}(e)}},{key:"bypassSecurityTrustStyle",value:function(e){return function(e){return new dr(e)}(e)}},{key:"bypassSecurityTrustScript",value:function(e){return function(e){return new fr(e)}(e)}},{key:"bypassSecurityTrustUrl",value:function(e){return function(e){return new pr(e)}(e)}},{key:"bypassSecurityTrustResourceUrl",value:function(e){return function(e){return new vr(e)}(e)}}]),n}(Ed);return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({factory:function(){return function(e){return new Cd(e.get(hh))}(Ki(Ga))},token:e,providedIn:"root"}),e}(),Od=eh(ah,"browser",[{provide:xl,useValue:Kh},{provide:kl,useValue:function(){Jh.makeCurrent(),id.init()},multi:!0},{provide:hh,useFactory:function(){return function(e){Kt=e}(document),document},deps:[]}]),Td=[[],{provide:qa,useValue:"root"},{provide:Zr,useFactory:function(){return new Zr},deps:[]},{provide:od,useClass:bd,multi:!0,deps:[hh,Bl,xl]},{provide:od,useClass:Sd,multi:!0,deps:[hh]},[],{provide:vd,useClass:vd,deps:[ad,cd,bl]},{provide:$u,useExisting:vd},{provide:ud,useExisting:cd},{provide:cd,useClass:cd,deps:[hh]},{provide:Xl,useClass:Xl,deps:[Bl]},{provide:ad,useClass:ad,deps:[od,Bl]},{provide:Zh,useClass:rd,deps:[]},[]],Ad=function(){var e=function(){function e(t){if(m(this,e),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.")}return b(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:bl,useValue:t.appId},{provide:td,useExisting:bl},nd]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(e,12))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:Td,imports:[Yh,uh]}),e}();function Pd(e){return null!=e&&"false"!="".concat(e)}function Md(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return function(e){return!isNaN(parseFloat(e))&&!isNaN(Number(e))}(e)?Number(e):t}function Id(e){return Array.isArray(e)?e:[e]}function Rd(e){return null==e?"":"string"==typeof e?e:"".concat(e,"px")}function Dd(e){return e instanceof Yu?e.nativeElement:e}function Nd(){for(var e=arguments.length,t=new Array(e),n=0;n1?Array.prototype.slice.call(arguments):e)},i,n)})}function jd(e,t,n,i,r){var o;if(function(e){return e&&"function"==typeof e.addEventListener&&"function"==typeof e.removeEventListener}(e)){var a=e;e.addEventListener(t,n,r),o=function(){return a.removeEventListener(t,n,r)}}else if(function(e){return e&&"function"==typeof e.on&&"function"==typeof e.off}(e)){var s=e;e.on(t,n),o=function(){return s.off(t,n)}}else if(function(e){return e&&"function"==typeof e.addListener&&"function"==typeof e.removeListener}(e)){var u=e;e.addListener(t,n),o=function(){return u.removeListener(t,n)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var c=0,l=e.length;c1&&void 0!==arguments[1]?arguments[1]:0;if(this.closed)return this;this.state=e;var n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,t)),this.pending=!0,this.delay=t,this.id=this.id||this.requestAsyncId(i,this.id,t),this}},{key:"requestAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return setInterval(e.flush.bind(e,this),n)}},{key:"recycleAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==n&&this.delay===n&&!1===this.pending)return t;clearInterval(t)}},{key:"execute",value:function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}},{key:"_execute",value:function(e,t){var n,i=!1;try{this.work(e)}catch(r){i=!0,n=!!r&&r||new Error(r)}if(i)return this.unsubscribe(),n}},{key:"_unsubscribe",value:function(){var e=this.id,t=this.scheduler,n=t.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=e&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null}}]),n}(function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this)}return b(n,[{key:"schedule",value:function(e){return this}}]),n}(G)),Bd=function(){var e=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.now;m(this,e),this.SchedulerAction=t,this.now=n}return b(e,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return new this.SchedulerAction(this,e).schedule(n,t)}}]),e}();return e.now=function(){return Date.now()},e}(),Vd=function(t){a(i,t);var n=s(i);function i(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Bd.now;return m(this,i),(t=n.call(this,e,function(){return i.delegate&&i.delegate!==c(t)?i.delegate.now():r()})).actions=[],t.active=!1,t.scheduled=void 0,t}return b(i,[{key:"schedule",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2?arguments[2]:void 0;return i.delegate&&i.delegate!==this?i.delegate.schedule(t,n,r):e(p(i.prototype),"schedule",this).call(this,t,n,r)}},{key:"flush",value:function(e){var t=this.actions;if(this.active)t.push(e);else{var n;this.active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this.active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}}}]),i}(Bd);new(function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"flush",value:function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0?e(p(i.prototype),"requestAsyncId",this).call(this,t,n,r):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(function(){return t.flush(null)})))}},{key:"recycleAsyncId",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==r&&r>0||null===r&&this.delay>0)return e(p(i.prototype),"recycleAsyncId",this).call(this,t,n,r);0===t.actions.length&&(cancelAnimationFrame(n),t.scheduled=void 0)}}]),i}(Fd));var zd=1,Ud=Promise.resolve(),Hd={};function Gd(e){return e in Hd&&(delete Hd[e],!0)}var Wd=function(e){var t=zd++;return Hd[t]=!0,Ud.then(function(){return Gd(t)&&e()}),t},qd=function(e){Gd(e)};function Xd(e){return!!e&&(e instanceof J||"function"==typeof e.lift&&"function"==typeof e.subscribe)}function Yd(e,t){return function(n){return n.lift(new Kd(e,t))}}new(function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"flush",value:function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0?e(p(i.prototype),"requestAsyncId",this).call(this,t,n,r):(t.actions.push(this),t.scheduled||(t.scheduled=Wd(t.flush.bind(t,null))))}},{key:"recycleAsyncId",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==r&&r>0||null===r&&this.delay>0)return e(p(i.prototype),"recycleAsyncId",this).call(this,t,n,r);0===t.actions.length&&(qd(n),t.scheduled=void 0)}}]),i}(Fd));var Kd=function(){function e(t,n){m(this,e),this.compare=t,this.keySelector=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new $d(e,this.compare,this.keySelector))}}]),e}(),$d=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).keySelector=r,o.hasKey=!1,"function"==typeof i&&(o.compare=i),o}return b(n,[{key:"compare",value:function(e,t){return e===t}},{key:"_next",value:function(e){var t;try{var n=this.keySelector;t=n?n(e):e}catch(n){return this.destination.error(n)}var i=!1;if(this.hasKey)try{i=(0,this.compare)(this.key,t)}catch(n){return this.destination.error(n)}else this.hasKey=!0;i||(this.key=t,this.destination.next(e))}}]),n}(X),Qd=new Vd(Fd),Zd=function(){function e(t){m(this,e),this.durationSelector=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new Jd(e,this.durationSelector))}}]),e}(),Jd=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).durationSelector=i,r.hasValue=!1,r}return b(n,[{key:"_next",value:function(e){if(this.value=e,this.hasValue=!0,!this.throttled){var t;try{var n;t=(0,this.durationSelector)(e)}catch(n){return this.destination.error(n)}var i=be(t,new me(this));!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}},{key:"clearThrottle",value:function(){var e=this.value,t=this.hasValue,n=this.throttled;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),t&&(this.value=void 0,this.hasValue=!1,this.destination.next(e))}},{key:"notifyNext",value:function(){this.clearThrottle()}},{key:"notifyComplete",value:function(){this.clearThrottle()}}]),n}(ye);function ef(e){return!V(e)&&e-parseFloat(e)+1>=0}function tf(e){var t=e.index,n=e.period,i=e.subscriber;if(i.next(t),!i.closed){if(-1===n)return i.complete();e.index=t+1,this.schedule(e,n)}}function nf(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Qd;return function(e){return function(t){return t.lift(new Zd(e))}}(function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,i=-1;return ef(t)?i=Number(t)<1?1:Number(t):ae(t)&&(n=t),ae(n)||(n=Qd),new J(function(t){var r=ef(e)?e:+e-n.now();return n.schedule(tf,r,{index:0,period:i,subscriber:t})})}(e,t)})}function rf(e,t){return function(n){return n.lift(new of(e,t))}}var of=function(){function e(t,n){m(this,e),this.predicate=t,this.thisArg=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new af(e,this.predicate,this.thisArg))}}]),e}(),af=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).predicate=i,o.thisArg=r,o.count=0,o}return b(n,[{key:"_next",value:function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)}}]),n}(X);function sf(e){return function(t){return t.lift(new uf(e))}}var uf=function(){function e(t){m(this,e),this.notifier=t}return b(e,[{key:"call",value:function(e,t){var n=new cf(e),i=be(this.notifier,new me(n));return i&&!n.seenValue?(n.add(i),t.subscribe(n)):n}}]),e}(),cf=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,e)).seenValue=!1,i}return b(n,[{key:"notifyNext",value:function(){this.seenValue=!0,this.complete()}},{key:"notifyComplete",value:function(){}}]),n}(ye);function lf(){return xe(1)(Nd.apply(void 0,arguments))}function hf(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:0;return n>0?e(p(i.prototype),"schedule",this).call(this,t,n):(this.delay=n,this.state=t,this.scheduler.flush(this),this)}},{key:"execute",value:function(t,n){return n>0||this.closed?e(p(i.prototype),"execute",this).call(this,t,n):this._execute(t,n)}},{key:"requestAsyncId",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0||null===r&&this.delay>0?e(p(i.prototype),"requestAsyncId",this).call(this,t,n,r):t.flush(this)}}]),i}(Fd)),gf=new J(function(e){return e.complete()});function mf(e){return e?function(e){return new J(function(t){return e.schedule(function(){return t.complete()})})}(e):gf}function yf(e,t){return new J(t?function(n){return t.schedule(bf,0,{error:e,subscriber:n})}:function(t){return t.error(e)})}function bf(e){var t=e.error;e.subscriber.error(t)}var _f=function(){function e(t,n,i){m(this,e),this.kind=t,this.value=n,this.error=i,this.hasValue="N"===t}return b(e,[{key:"observe",value:function(e){switch(this.kind){case"N":return e.next&&e.next(this.value);case"E":return e.error&&e.error(this.error);case"C":return e.complete&&e.complete()}}},{key:"do",value:function(e,t,n){switch(this.kind){case"N":return e&&e(this.value);case"E":return t&&t(this.error);case"C":return n&&n()}}},{key:"accept",value:function(e,t,n){return e&&"function"==typeof e.next?this.observe(e):this.do(e,t,n)}},{key:"toObservable",value:function(){switch(this.kind){case"N":return Nd(this.value);case"E":return yf(this.error);case"C":return mf()}throw new Error("unexpected notification kind value")}}],[{key:"createNext",value:function(t){return void 0!==t?new e("N",t):e.undefinedValueNotification}},{key:"createError",value:function(t){return new e("E",void 0,t)}},{key:"createComplete",value:function(){return e.completeNotification}}]),e}();_f.completeNotification=new _f("C"),_f.undefinedValueNotification=new _f("N",void 0);var wf,kf=function(e){a(n,e);var t=s(n);function n(e,i){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return m(this,n),(r=t.call(this,e)).scheduler=i,r.delay=o,r}return b(n,[{key:"scheduleMessage",value:function(e){this.destination.add(this.scheduler.schedule(n.dispatch,this.delay,new xf(e,this.destination)))}},{key:"_next",value:function(e){this.scheduleMessage(_f.createNext(e))}},{key:"_error",value:function(e){this.scheduleMessage(_f.createError(e)),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleMessage(_f.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){var t=e.notification,n=e.destination;t.observe(n),this.unsubscribe()}}]),n}(X),xf=function e(t,n){m(this,e),this.notification=t,this.destination=n},Sf=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY,o=arguments.length>2?arguments[2]:void 0;return m(this,i),(e=n.call(this)).scheduler=o,e._events=[],e._infiniteTimeWindow=!1,e._bufferSize=t<1?1:t,e._windowTime=r<1?1:r,r===Number.POSITIVE_INFINITY?(e._infiniteTimeWindow=!0,e.next=e.nextInfiniteTimeWindow):e.next=e.nextTimeWindow,e}return b(i,[{key:"nextInfiniteTimeWindow",value:function(t){if(!this.isStopped){var n=this._events;n.push(t),n.length>this._bufferSize&&n.shift()}e(p(i.prototype),"next",this).call(this,t)}},{key:"nextTimeWindow",value:function(t){this.isStopped||(this._events.push(new Ef(this._getNow(),t)),this._trimBufferThenGetEvents()),e(p(i.prototype),"next",this).call(this,t)}},{key:"_subscribe",value:function(e){var t,n=this._infiniteTimeWindow,i=n?this._events:this._trimBufferThenGetEvents(),r=this.scheduler,o=i.length;if(this.closed)throw new te;if(this.isStopped||this.hasError?t=G.EMPTY:(this.observers.push(e),t=new ne(this,e)),r&&e.add(e=new kf(e,r)),n)for(var a=0;at&&(o=Math.max(o,r-t)),o>0&&i.splice(0,o),i}}]),i}(re),Ef=function e(t,n){m(this,e),this.time=t,this.value=n};function Cf(e,t,n){var i;return i=e&&"object"==typeof e?e:{bufferSize:e,windowTime:t,refCount:!1,scheduler:n},function(e){return e.lift(function(e){var t,n,i=e.bufferSize,r=void 0===i?Number.POSITIVE_INFINITY:i,o=e.windowTime,a=void 0===o?Number.POSITIVE_INFINITY:o,s=e.refCount,u=e.scheduler,c=0,l=!1,h=!1;return function(e){var i;c++,!t||l?(l=!1,t=new Sf(r,a,u),i=t.subscribe(this),n=e.subscribe({next:function(e){t.next(e)},error:function(e){l=!0,t.error(e)},complete:function(){h=!0,n=void 0,t.complete()}}),h&&(n=void 0)):i=t.subscribe(this),this.add(function(){c--,i.unsubscribe(),i=void 0,n&&!h&&s&&0===c&&(n.unsubscribe(),n=void 0,t=void 0)})}}(i))}}try{wf="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(U){wf=!1}var Of,Tf,Af,Pf,Mf=function(){var e=function e(t){m(this,e),this._platformId=t,this.isBrowser=this._platformId?$h(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&&!wf)&&"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 e.\u0275fac=function(t){return new(t||e)(Ki(xl))},e.\u0275prov=Ye({factory:function(){return new e(Ki(xl))},token:e,providedIn:"root"}),e}(),If=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),Rf=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Df(){if(Of)return Of;if("object"!=typeof document||!document)return Of=new Set(Rf);var e=document.createElement("input");return Of=new Set(Rf.filter(function(t){return e.setAttribute("type",t),e.type===t}))}function Nf(e){return function(){if(null==Tf&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return Tf=!0}}))}finally{Tf=Tf||!1}return Tf}()?e:!!e.capture}function Lf(e){if(function(){if(null==Pf){var e="undefined"!=typeof document?document.head:null;Pf=!(!e||!e.createShadowRoot&&!e.attachShadow)}return Pf}()){var t=e.getRootNode?e.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&t instanceof ShadowRoot)return t}return null}function jf(){for(var e="undefined"!=typeof document&&document?document.activeElement:null;e&&e.shadowRoot;){var t=e.shadowRoot.activeElement;if(t===e)break;e=t}return e}function Ff(e){return e.composedPath?e.composedPath()[0]:e.target}var Bf=new Pi("cdk-dir-doc",{providedIn:"root",factory:function(){return $i(hh)}}),Vf=function(){var e=function(){function e(t){if(m(this,e),this.value="ltr",this.change=new Qc,t){var n=t.documentElement?t.documentElement.dir:null,i=(t.body?t.body.dir:null)||n;this.value="ltr"===i||"rtl"===i?i:"ltr"}}return b(e,[{key:"ngOnDestroy",value:function(){this.change.complete()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bf,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Bf,8))},token:e,providedIn:"root"}),e}(),zf=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),Uf=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1?arguments[1]:void 0,r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];m(this,e),this._multiple=n,this._emitChanges=r,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new re,i&&i.length&&(n?i.forEach(function(e){return t._markSelected(e)}):this._markSelected(i[0]),this._selectedToEmit.length=0)}return b(e,[{key:"selected",get:function(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}},{key:"select",value:function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;i0&&void 0!==arguments[0]?arguments[0]:20;return this._platform.isBrowser?new J(function(n){e._globalSubscription||e._addGlobalListener();var i=t>0?e._scrolled.pipe(nf(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){i.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):Nd()}},{key:"ngOnDestroy",value:function(){var e=this;this._removeGlobalListener(),this.scrollContainers.forEach(function(t,n){return e.deregister(n)}),this._scrolled.complete()}},{key:"ancestorScrolled",value:function(e,t){var n=this.getAncestorScrollContainers(e);return this.scrolled(t).pipe(rf(function(e){return!e||n.indexOf(e)>-1}))}},{key:"getAncestorScrollContainers",value:function(e){var t=this,n=[];return this.scrollContainers.forEach(function(i,r){t._scrollableContainsElement(r,e)&&n.push(r)}),n}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_scrollableContainsElement",value:function(e,t){var n=Dd(t),i=e.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}},{key:"_addGlobalListener",value:function(){var e=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return Ld(e._getWindow().document,"scroll").subscribe(function(){return e._scrolled.next()})})}},{key:"_removeGlobalListener",value:function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(Mf),Ki(hh,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Bl),Ki(Mf),Ki(hh,8))},token:e,providedIn:"root"}),e}(),Wf=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this._platform=t,this._change=new re,this._changeListener=function(e){r._change.next(e)},this._document=i,n.runOutsideAngular(function(){if(t.isBrowser){var e=r._getWindow();e.addEventListener("resize",r._changeListener),e.addEventListener("orientationchange",r._changeListener)}r.change().subscribe(function(){return r._viewportSize=null})})}return b(e,[{key:"ngOnDestroy",value:function(){if(this._platform.isBrowser){var e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}},{key:"getViewportSize",value:function(){this._viewportSize||this._updateViewportSize();var e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}},{key:"getViewportRect",value:function(){var e=this.getViewportScrollPosition(),t=this.getViewportSize(),n=t.width,i=t.height;return{top:e.top,left:e.left,bottom:e.top+i,right:e.left+n,height:i,width:n}}},{key:"getViewportScrollPosition",value:function(){if(!this._platform.isBrowser)return{top:0,left:0};var e=this._document,t=this._getWindow(),n=e.documentElement,i=n.getBoundingClientRect();return{top:-i.top||e.body.scrollTop||t.scrollY||n.scrollTop||0,left:-i.left||e.body.scrollLeft||t.scrollX||n.scrollLeft||0}}},{key:"change",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return e>0?this._change.pipe(nf(e)):this._change}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_updateViewportSize",value:function(){var e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(Bl),Ki(hh,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(Bl),Ki(hh,8))},token:e,providedIn:"root"}),e}(),qf=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),Xf=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[zf,If,qf],zf,qf]}),e}(),Yf=function(){function e(){m(this,e)}return b(e,[{key:"attach",value:function(e){return this._attachedHost=e,e.attach(this)}},{key:"detach",value:function(){var e=this._attachedHost;null!=e&&(this._attachedHost=null,e.detach())}},{key:"isAttached",get:function(){return null!=this._attachedHost}},{key:"setAttachedHost",value:function(e){this._attachedHost=e}}]),e}(),Kf=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this)).component=e,a.viewContainerRef=i,a.injector=r,a.componentFactoryResolver=o,a}return n}(Yf),$f=function(t){a(i,t);var n=s(i);function i(e,t,r){var o;return m(this,i),(o=n.call(this)).templateRef=e,o.viewContainerRef=t,o.context=r,o}return b(i,[{key:"origin",get:function(){return this.templateRef.elementRef}},{key:"attach",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.context;return this.context=n,e(p(i.prototype),"attach",this).call(this,t)}},{key:"detach",value:function(){return this.context=void 0,e(p(i.prototype),"detach",this).call(this)}}]),i}(Yf),Qf=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).element=e instanceof Yu?e.nativeElement:e,i}return n}(Yf),Zf=function(){function e(){m(this,e),this._isDisposed=!1,this.attachDomPortal=null}return b(e,[{key:"hasAttached",value:function(){return!!this._attachedPortal}},{key:"attach",value:function(e){return e instanceof Kf?(this._attachedPortal=e,this.attachComponentPortal(e)):e instanceof $f?(this._attachedPortal=e,this.attachTemplatePortal(e)):this.attachDomPortal&&e instanceof Qf?(this._attachedPortal=e,this.attachDomPortal(e)):void 0}},{key:"detach",value:function(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}},{key:"dispose",value:function(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}},{key:"setDisposeFn",value:function(e){this._disposeFn=e}},{key:"_invokeDisposeFn",value:function(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}]),e}(),Jf=function(t){a(i,t);var n=s(i);function i(t,r,o,a,s){var u,l;return m(this,i),(l=n.call(this)).outletElement=t,l._componentFactoryResolver=r,l._appRef=o,l._defaultInjector=a,l.attachDomPortal=function(t){var n=t.element,r=l._document.createComment("dom-portal");n.parentNode.insertBefore(r,n),l.outletElement.appendChild(n),l._attachedPortal=t,e((u=c(l),p(i.prototype)),"setDisposeFn",u).call(u,function(){r.parentNode&&r.parentNode.replaceChild(n,r)})},l._document=s,l}return b(i,[{key:"attachComponentPortal",value:function(e){var t,n=this,i=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component);return e.viewContainerRef?(t=e.viewContainerRef.createComponent(i,e.viewContainerRef.length,e.injector||e.viewContainerRef.injector),this.setDisposeFn(function(){return t.destroy()})):(t=i.create(e.injector||this._defaultInjector),this._appRef.attachView(t.hostView),this.setDisposeFn(function(){n._appRef.detachView(t.hostView),t.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(t)),this._attachedPortal=e,t}},{key:"attachTemplatePortal",value:function(e){var t=this,n=e.viewContainerRef,i=n.createEmbeddedView(e.templateRef,e.context);return i.rootNodes.forEach(function(e){return t.outletElement.appendChild(e)}),i.detectChanges(),this.setDisposeFn(function(){var e=n.indexOf(i);-1!==e&&n.remove(e)}),this._attachedPortal=e,i}},{key:"dispose",value:function(){e(p(i.prototype),"dispose",this).call(this),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}},{key:"_getComponentRootNode",value:function(e){return e.hostView.rootNodes[0]}}]),i}(Zf),ep=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,e,i)}return n}($f);return e.\u0275fac=function(t){return new(t||e)(Ss(Ec),Ss(Pc))},e.\u0275dir=Mt({type:e,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[as]}),e}(),tp=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(ep);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[Uu([{provide:ep,useExisting:t}]),as]}),t}(),np=function(){var t=function(t){a(i,t);var n=s(i);function i(t,r,o){var a,s;return m(this,i),(s=n.call(this))._componentFactoryResolver=t,s._viewContainerRef=r,s._isInitialized=!1,s.attached=new Qc,s.attachDomPortal=function(t){var n=t.element,r=s._document.createComment("dom-portal");t.setAttachedHost(c(s)),n.parentNode.insertBefore(r,n),s._getRootNode().appendChild(n),s._attachedPortal=t,e((a=c(s),p(i.prototype)),"setDisposeFn",a).call(a,function(){r.parentNode&&r.parentNode.replaceChild(n,r)})},s._document=o,s}return b(i,[{key:"portal",get:function(){return this._attachedPortal},set:function(t){this.hasAttached()&&!t&&!this._isInitialized||(this.hasAttached()&&e(p(i.prototype),"detach",this).call(this),t&&e(p(i.prototype),"attach",this).call(this,t),this._attachedPortal=t)}},{key:"attachedRef",get:function(){return this._attachedRef}},{key:"ngOnInit",value:function(){this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){e(p(i.prototype),"dispose",this).call(this),this._attachedPortal=null,this._attachedRef=null}},{key:"attachComponentPortal",value:function(t){t.setAttachedHost(this);var n=null!=t.viewContainerRef?t.viewContainerRef:this._viewContainerRef,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component),o=n.createComponent(r,n.length,t.injector||n.injector);return n!==this._viewContainerRef&&this._getRootNode().appendChild(o.hostView.rootNodes[0]),e(p(i.prototype),"setDisposeFn",this).call(this,function(){return o.destroy()}),this._attachedPortal=t,this._attachedRef=o,this.attached.emit(o),o}},{key:"attachTemplatePortal",value:function(t){var n=this;t.setAttachedHost(this);var r=this._viewContainerRef.createEmbeddedView(t.templateRef,t.context);return e(p(i.prototype),"setDisposeFn",this).call(this,function(){return n._viewContainerRef.clear()}),this._attachedPortal=t,this._attachedRef=r,this.attached.emit(r),r}},{key:"_getRootNode",value:function(){var e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}}]),i}(Zf);return t.\u0275fac=function(e){return new(e||t)(Ss(Gu),Ss(Pc),Ss(hh))},t.\u0275dir=Mt({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[as]}),t}(),ip=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),rp=function(){function e(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return e.prototype=Object.create(Error.prototype),e}();function op(e){return function(t){return 0===e?mf():t.lift(new ap(e))}}var ap=function(){function e(t){if(m(this,e),this.total=t,this.total<0)throw new rp}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new sp(e,this.total))}}]),e}(),sp=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).total=i,r.count=0,r}return b(n,[{key:"_next",value:function(e){var t=this.total,n=++this.count;n<=t&&(this.destination.next(e),n===t&&(this.destination.complete(),this.unsubscribe()))}}]),n}(X);function up(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return function(n){return n.lift(new cp(e,t))}}var cp=function(){function e(t,n){m(this,e),this.predicate=t,this.inclusive=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new lp(e,this.predicate,this.inclusive))}}]),e}(),lp=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).predicate=i,o.inclusive=r,o.index=0,o}return b(n,[{key:"_next",value:function(e){var t,n=this.destination;try{t=this.predicate(e,this.index++)}catch(i){return void n.error(i)}this.nextOrComplete(e,t)}},{key:"nextOrComplete",value:function(e,t){var n=this.destination;Boolean(t)?n.next(e):(this.inclusive&&n.next(e),n.complete())}}]),n}(X);function hp(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;it.height||e.scrollWidth>t.width}}]),e}(),pp=function(){function e(t,n,i,r){var o=this;m(this,e),this._scrollDispatcher=t,this._ngZone=n,this._viewportRuler=i,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return b(e,[{key:"attach",value:function(e){this._overlayRef=e}},{key:"enable",value:function(){var e=this;if(!this._scrollSubscription){var t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(function(){var t=e._viewportRuler.getViewportScrollPosition().top;Math.abs(t-e._initialScrollPosition)>e._config.threshold?e._detach():e._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),e}(),vp=function(){function e(){m(this,e)}return b(e,[{key:"enable",value:function(){}},{key:"disable",value:function(){}},{key:"attach",value:function(){}}]),e}();function gp(e,t){return t.some(function(t){return e.bottomt.bottom||e.rightt.right})}function mp(e,t){return t.some(function(t){return e.topt.bottom||e.leftt.right})}var yp=function(){function e(t,n,i,r){m(this,e),this._scrollDispatcher=t,this._viewportRuler=n,this._ngZone=i,this._config=r,this._scrollSubscription=null}return b(e,[{key:"attach",value:function(e){this._overlayRef=e}},{key:"enable",value:function(){var e=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(e._overlayRef.updatePosition(),e._config&&e._config.autoClose){var t=e._overlayRef.overlayElement.getBoundingClientRect(),n=e._viewportRuler.getViewportSize(),i=n.width,r=n.height;gp(t,[{width:i,height:r,bottom:r,right:i,top:0,left:0}])&&(e.disable(),e._ngZone.run(function(){return e._overlayRef.detach()}))}}))}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),e}(),bp=function(){var e=function e(t,n,i,r){var o=this;m(this,e),this._scrollDispatcher=t,this._viewportRuler=n,this._ngZone=i,this.noop=function(){return new vp},this.close=function(e){return new pp(o._scrollDispatcher,o._ngZone,o._viewportRuler,e)},this.block=function(){return new fp(o._viewportRuler,o._document)},this.reposition=function(e){return new yp(o._scrollDispatcher,o._viewportRuler,o._ngZone,e)},this._document=r};return e.\u0275fac=function(t){return new(t||e)(Ki(Gf),Ki(Wf),Ki(Bl),Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Gf),Ki(Wf),Ki(Bl),Ki(hh))},token:e,providedIn:"root"}),e}(),_p=function e(t){if(m(this,e),this.scrollStrategy=new vp,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t)for(var n=0,i=Object.keys(t);n-1&&this._attachedOverlays.splice(t,1),0===this._attachedOverlays.length&&this.detach()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(hh))},token:e,providedIn:"root"}),e}(),Sp=function(){var t=function(t){a(i,t);var n=s(i);function i(e){var t;return m(this,i),(t=n.call(this,e))._keydownListener=function(e){for(var n=t._attachedOverlays,i=n.length-1;i>-1;i--)if(n[i]._keydownEvents.observers.length>0){n[i]._keydownEvents.next(e);break}},t}return b(i,[{key:"add",value:function(t){e(p(i.prototype),"add",this).call(this,t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}},{key:"detach",value:function(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}]),i}(xp);return t.\u0275fac=function(e){return new(e||t)(Ki(hh))},t.\u0275prov=Ye({factory:function(){return new t(Ki(hh))},token:t,providedIn:"root"}),t}(),Ep=function(){var t=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this,e))._platform=t,r._cursorStyleIsSet=!1,r._clickListener=function(e){for(var t=Ff(e),n=r._attachedOverlays.slice(),i=n.length-1;i>-1;i--){var o=n[i];if(!(o._outsidePointerEvents.observers.length<1)&&o.hasAttached()){if(o.overlayElement.contains(t))break;o._outsidePointerEvents.next(e)}}},r}return b(i,[{key:"add",value:function(t){if(e(p(i.prototype),"add",this).call(this,t),!this._isAttached){var n=this._document.body;n.addEventListener("click",this._clickListener,!0),n.addEventListener("auxclick",this._clickListener,!0),n.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=n.style.cursor,n.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}},{key:"detach",value:function(){if(this._isAttached){var e=this._document.body;e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}]),i}(xp);return t.\u0275fac=function(e){return new(e||t)(Ki(hh),Ki(Mf))},t.\u0275prov=Ye({factory:function(){return new t(Ki(hh),Ki(Mf))},token:t,providedIn:"root"}),t}(),Cp="undefined"!=typeof window?window:{},Op=void 0!==Cp.__karma__&&!!Cp.__karma__||void 0!==Cp.jasmine&&!!Cp.jasmine||void 0!==Cp.jest&&!!Cp.jest||void 0!==Cp.Mocha&&!!Cp.Mocha,Tp=function(){var e=function(){function e(t,n){m(this,e),this._platform=n,this._document=t}return b(e,[{key:"ngOnDestroy",value:function(){var e=this._containerElement;e&&e.parentNode&&e.parentNode.removeChild(e)}},{key:"getContainerElement",value:function(){return this._containerElement||this._createContainer(),this._containerElement}},{key:"_createContainer",value:function(){var e="cdk-overlay-container";if(this._platform.isBrowser||Op)for(var t=this._document.querySelectorAll(".".concat(e,'[platform="server"], .').concat(e,'[platform="test"]')),n=0;nf&&(f=g,d=v)}}catch(m){p.e(m)}finally{p.f()}return this._isPushed=!1,void this._applyPosition(d.position,d.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(e.position,e.originPoint);this._applyPosition(e.position,e.originPoint)}}},{key:"detach",value:function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}},{key:"dispose",value:function(){this._isDisposed||(this._boundingBox&&Rp(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Pp),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}},{key:"reapplyLastPosition",value:function(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();var e=this._lastPosition||this._preferredPositions[0],t=this._getOriginPoint(this._originRect,e);this._applyPosition(e,t)}}},{key:"withScrollableContainers",value:function(e){return this._scrollables=e,this}},{key:"withPositions",value:function(e){return this._preferredPositions=e,-1===e.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}},{key:"withViewportMargin",value:function(e){return this._viewportMargin=e,this}},{key:"withFlexibleDimensions",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._hasFlexibleDimensions=e,this}},{key:"withGrowAfterOpen",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._growAfterOpen=e,this}},{key:"withPush",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._canPush=e,this}},{key:"withLockedPosition",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._positionLocked=e,this}},{key:"setOrigin",value:function(e){return this._origin=e,this}},{key:"withDefaultOffsetX",value:function(e){return this._offsetX=e,this}},{key:"withDefaultOffsetY",value:function(e){return this._offsetY=e,this}},{key:"withTransformOriginOn",value:function(e){return this._transformOriginSelector=e,this}},{key:"_getOriginPoint",value:function(e,t){var n;if("center"==t.originX)n=e.left+e.width/2;else{var i=this._isRtl()?e.right:e.left,r=this._isRtl()?e.left:e.right;n="start"==t.originX?i:r}return{x:n,y:"center"==t.originY?e.top+e.height/2:"top"==t.originY?e.top:e.bottom}}},{key:"_getOverlayPoint",value:function(e,t,n){var i,r;return i="center"==n.overlayX?-t.width/2:"start"===n.overlayX?this._isRtl()?-t.width:0:this._isRtl()?0:-t.width,r="center"==n.overlayY?-t.height/2:"top"==n.overlayY?0:-t.height,{x:e.x+i,y:e.y+r}}},{key:"_getOverlayFit",value:function(e,t,n,i){var r=Np(t),o=e.x,a=e.y,s=this._getOffset(i,"x"),u=this._getOffset(i,"y");s&&(o+=s),u&&(a+=u);var c=0-a,l=a+r.height-n.height,h=this._subtractOverflows(r.width,0-o,o+r.width-n.width),d=this._subtractOverflows(r.height,c,l),f=h*d;return{visibleArea:f,isCompletelyWithinViewport:r.width*r.height===f,fitsInViewportVertically:d===r.height,fitsInViewportHorizontally:h==r.width}}},{key:"_canFitWithFlexibleDimensions",value:function(e,t,n){if(this._hasFlexibleDimensions){var i=n.bottom-t.y,r=n.right-t.x,o=Dp(this._overlayRef.getConfig().minHeight),a=Dp(this._overlayRef.getConfig().minWidth),s=e.fitsInViewportHorizontally||null!=a&&a<=r;return(e.fitsInViewportVertically||null!=o&&o<=i)&&s}return!1}},{key:"_pushOverlayOnScreen",value:function(e,t,n){if(this._previousPushAmount&&this._positionLocked)return{x:e.x+this._previousPushAmount.x,y:e.y+this._previousPushAmount.y};var i,r,o=Np(t),a=this._viewportRect,s=Math.max(e.x+o.width-a.width,0),u=Math.max(e.y+o.height-a.height,0),c=Math.max(a.top-n.top-e.y,0),l=Math.max(a.left-n.left-e.x,0);return i=o.width<=a.width?l||-s:e.xh&&!this._isInitialRender&&!this._growAfterOpen&&(i=e.y-h/2)}if("end"===t.overlayX&&!c||"start"===t.overlayX&&c)s=u.width-e.x+this._viewportMargin,o=e.x-this._viewportMargin;else if("start"===t.overlayX&&!c||"end"===t.overlayX&&c)a=e.x,o=u.right-e.x;else{var d=Math.min(u.right-e.x+u.left,e.x),f=this._lastBoundingBoxSize.width;o=2*d,a=e.x-d,o>f&&!this._isInitialRender&&!this._growAfterOpen&&(a=e.x-f/2)}return{top:i,left:a,bottom:r,right:s,width:o,height:n}}},{key:"_setBoundingBoxStyles",value:function(e,t){var n=this._calculateBoundingBoxRect(e,t);!this._isInitialRender&&!this._growAfterOpen&&(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));var i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{var r=this._overlayRef.getConfig().maxHeight,o=this._overlayRef.getConfig().maxWidth;i.height=Rd(n.height),i.top=Rd(n.top),i.bottom=Rd(n.bottom),i.width=Rd(n.width),i.left=Rd(n.left),i.right=Rd(n.right),i.alignItems="center"===t.overlayX?"center":"end"===t.overlayX?"flex-end":"flex-start",i.justifyContent="center"===t.overlayY?"center":"bottom"===t.overlayY?"flex-end":"flex-start",r&&(i.maxHeight=Rd(r)),o&&(i.maxWidth=Rd(o))}this._lastBoundingBoxSize=n,Rp(this._boundingBox.style,i)}},{key:"_resetBoundingBoxStyles",value:function(){Rp(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}},{key:"_resetOverlayElementStyles",value:function(){Rp(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}},{key:"_setOverlayElementStyles",value:function(e,t){var n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,o=this._overlayRef.getConfig();if(i){var a=this._viewportRuler.getViewportScrollPosition();Rp(n,this._getExactOverlayY(t,e,a)),Rp(n,this._getExactOverlayX(t,e,a))}else n.position="static";var s="",u=this._getOffset(t,"x"),c=this._getOffset(t,"y");u&&(s+="translateX(".concat(u,"px) ")),c&&(s+="translateY(".concat(c,"px)")),n.transform=s.trim(),o.maxHeight&&(i?n.maxHeight=Rd(o.maxHeight):r&&(n.maxHeight="")),o.maxWidth&&(i?n.maxWidth=Rd(o.maxWidth):r&&(n.maxWidth="")),Rp(this._pane.style,n)}},{key:"_getExactOverlayY",value:function(e,t,n){var i={top:"",bottom:""},r=this._getOverlayPoint(t,this._overlayRect,e);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));var o=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=o,"bottom"===e.overlayY?i.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":i.top=Rd(r.y),i}},{key:"_getExactOverlayX",value:function(e,t,n){var i={left:"",right:""},r=this._getOverlayPoint(t,this._overlayRect,e);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"===(this._isRtl()?"end"===e.overlayX?"left":"right":"end"===e.overlayX?"right":"left")?i.right=this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)+"px":i.left=Rd(r.x),i}},{key:"_getScrollVisibility",value:function(){var e=this._getOriginRect(),t=this._pane.getBoundingClientRect(),n=this._scrollables.map(function(e){return e.getElementRef().nativeElement.getBoundingClientRect()});return{isOriginClipped:mp(e,n),isOriginOutsideView:gp(e,n),isOverlayClipped:mp(t,n),isOverlayOutsideView:gp(t,n)}}},{key:"_subtractOverflows",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i0&&void 0!==arguments[0]?arguments[0]:"";return this._bottomOffset="",this._topOffset=e,this._alignItems="flex-start",this}},{key:"left",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._rightOffset="",this._leftOffset=e,this._justifyContent="flex-start",this}},{key:"bottom",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._topOffset="",this._bottomOffset=e,this._alignItems="flex-end",this}},{key:"right",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._leftOffset="",this._rightOffset=e,this._justifyContent="flex-end",this}},{key:"width",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({width:e}):this._width=e,this}},{key:"height",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({height:e}):this._height=e,this}},{key:"centerHorizontally",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.left(e),this._justifyContent="center",this}},{key:"centerVertically",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.top(e),this._alignItems="center",this}},{key:"apply",value:function(){if(this._overlayRef&&this._overlayRef.hasAttached()){var e=this._overlayRef.overlayElement.style,t=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),i=n.width,r=n.height,o=n.maxWidth,a=n.maxHeight,s=!("100%"!==i&&"100vw"!==i||o&&"100%"!==o&&"100vw"!==o),u=!("100%"!==r&&"100vh"!==r||a&&"100%"!==a&&"100vh"!==a);e.position=this._cssPosition,e.marginLeft=s?"0":this._leftOffset,e.marginTop=u?"0":this._topOffset,e.marginBottom=this._bottomOffset,e.marginRight=this._rightOffset,s?t.justifyContent="flex-start":"center"===this._justifyContent?t.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?t.justifyContent="flex-end":"flex-end"===this._justifyContent&&(t.justifyContent="flex-start"):t.justifyContent=this._justifyContent,t.alignItems=u?"flex-start":this._alignItems}}},{key:"dispose",value:function(){if(!this._isDisposed&&this._overlayRef){var e=this._overlayRef.overlayElement.style,t=this._overlayRef.hostElement,n=t.style;t.classList.remove(Fp),n.justifyContent=n.alignItems=e.marginTop=e.marginBottom=e.marginLeft=e.marginRight=e.position="",this._overlayRef=null,this._isDisposed=!0}}}]),e}(),Vp=function(){var e=function(){function e(t,n,i,r){m(this,e),this._viewportRuler=t,this._document=n,this._platform=i,this._overlayContainer=r}return b(e,[{key:"global",value:function(){return new Bp}},{key:"connectedTo",value:function(e,t,n){return new jp(t,n,e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}},{key:"flexibleConnectedTo",value:function(e){return new Ip(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Wf),Ki(hh),Ki(Mf),Ki(Tp))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Wf),Ki(hh),Ki(Mf),Ki(Tp))},token:e,providedIn:"root"}),e}(),zp=0,Up=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c,l,h){m(this,e),this.scrollStrategies=t,this._overlayContainer=n,this._componentFactoryResolver=i,this._positionBuilder=r,this._keyboardDispatcher=o,this._injector=a,this._ngZone=s,this._document=u,this._directionality=c,this._location=l,this._outsideClickDispatcher=h}return b(e,[{key:"create",value:function(e){var t=this._createHostElement(),n=this._createPaneElement(t),i=this._createPortalOutlet(n),r=new _p(e);return r.direction=r.direction||this._directionality.value,new Ap(i,t,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}},{key:"position",value:function(){return this._positionBuilder}},{key:"_createPaneElement",value:function(e){var t=this._document.createElement("div");return t.id="cdk-overlay-"+zp++,t.classList.add("cdk-overlay-pane"),e.appendChild(t),t}},{key:"_createHostElement",value:function(){var e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}},{key:"_createPortalOutlet",value:function(e){return this._appRef||(this._appRef=this._injector.get(rh)),new Jf(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(bp),Ki(Tp),Ki(Gu),Ki(Vp),Ki(Sp),Ki(rs),Ki(Bl),Ki(hh),Ki(Vf),Ki(Sh),Ki(Ep))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Hp=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Gp=new Pi("cdk-connected-overlay-scroll-strategy"),Wp=function(){var e=function e(t){m(this,e),this.elementRef=t};return e.\u0275fac=function(t){return new(t||e)(Ss(Yu))},e.\u0275dir=Mt({type:e,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),e}(),qp=function(){var e=function(){function e(t,n,i,r,o){m(this,e),this._overlay=t,this._dir=o,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=G.EMPTY,this._attachSubscription=G.EMPTY,this._detachSubscription=G.EMPTY,this._positionSubscription=G.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Qc,this.positionChange=new Qc,this.attach=new Qc,this.detach=new Qc,this.overlayKeydown=new Qc,this.overlayOutsideClick=new Qc,this._templatePortal=new $f(n,i),this._scrollStrategyFactory=r,this.scrollStrategy=this._scrollStrategyFactory()}return b(e,[{key:"offsetX",get:function(){return this._offsetX},set:function(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}},{key:"offsetY",get:function(){return this._offsetY},set:function(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}},{key:"hasBackdrop",get:function(){return this._hasBackdrop},set:function(e){this._hasBackdrop=Pd(e)}},{key:"lockPosition",get:function(){return this._lockPosition},set:function(e){this._lockPosition=Pd(e)}},{key:"flexibleDimensions",get:function(){return this._flexibleDimensions},set:function(e){this._flexibleDimensions=Pd(e)}},{key:"growAfterOpen",get:function(){return this._growAfterOpen},set:function(e){this._growAfterOpen=Pd(e)}},{key:"push",get:function(){return this._push},set:function(e){this._push=Pd(e)}},{key:"overlayRef",get:function(){return this._overlayRef}},{key:"dir",get:function(){return this._dir?this._dir.value:"ltr"}},{key:"ngOnDestroy",value:function(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}},{key:"ngOnChanges",value:function(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}},{key:"_createOverlay",value:function(){var e=this;(!this.positions||!this.positions.length)&&(this.positions=Hp);var t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(function(){return e.attach.emit()}),this._detachSubscription=t.detachments().subscribe(function(){return e.detach.emit()}),t.keydownEvents().subscribe(function(t){e.overlayKeydown.next(t),27===t.keyCode&&!e.disableClose&&!hp(t)&&(t.preventDefault(),e._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(function(t){e.overlayOutsideClick.next(t)})}},{key:"_buildConfig",value:function(){var e=this._position=this.positionStrategy||this._createPositionStrategy(),t=new _p({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(t.width=this.width),(this.height||0===this.height)&&(t.height=this.height),(this.minWidth||0===this.minWidth)&&(t.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(t.minHeight=this.minHeight),this.backdropClass&&(t.backdropClass=this.backdropClass),this.panelClass&&(t.panelClass=this.panelClass),t}},{key:"_updatePositionStrategy",value:function(e){var t=this,n=this.positions.map(function(e){return{originX:e.originX,originY:e.originY,overlayX:e.overlayX,overlayY:e.overlayY,offsetX:e.offsetX||t.offsetX,offsetY:e.offsetY||t.offsetY,panelClass:e.panelClass||void 0}});return e.setOrigin(this.origin.elementRef).withPositions(n).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}},{key:"_createPositionStrategy",value:function(){var e=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(e),e}},{key:"_attachOverlay",value:function(){var e=this;this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(function(t){e.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(up(function(){return e.positionChange.observers.length>0})).subscribe(function(t){e.positionChange.emit(t),0===e.positionChange.observers.length&&e._positionSubscription.unsubscribe()}))}},{key:"_detachOverlay",value:function(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Ec),Ss(Pc),Ss(Gp),Ss(Vf,8))},e.\u0275dir=Mt({type:e,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[Ht]}),e}(),Xp={provide:Gp,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},Yp=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[Up,Xp],imports:[[zf,ip,Xf],Xf]}),e}(),Kp=function(){var t,n=function(t){a(i,t);var n=s(i);function i(){var e;return m(this,i),(e=n.apply(this,arguments)).attached=!1,e}return b(i,[{key:"setRootElement",value:function(e){this.attached&&(this.rootElement.nativeElement.removeChild(this._containerElement),this.attached=!1),this.rootElement=e,this.rootElement.nativeElement.style.display="block",this.rootElement.nativeElement.style.position="contents",this.rootElement.nativeElement.style.height="100%",this.appendToRoot()}},{key:"_createContainer",value:function(){e(p(i.prototype),"_createContainer",this).call(this),this.appendToRoot()}},{key:"appendToRoot",value:function(){!this._containerElement||!this.rootElement||(this.rootElement.nativeElement.appendChild(this._containerElement),this.attached=!0)}}]),i}(Tp);return n.\u0275fac=function(e){return(t||(t=Ei(n)))(e||n)},n.\u0275prov=Ye({token:n,factory:n.\u0275fac,providedIn:"root"}),n}(),$p={schedule:function(e,t){var n=setTimeout(e,t);return function(){return clearTimeout(n)}},scheduleBeforeRender:function(e){if("undefined"==typeof window)return $p.schedule(e,0);if(void 0===window.requestAnimationFrame)return $p.schedule(e,16);var t=window.requestAnimationFrame(e);return function(){return window.cancelAnimationFrame(t)}}};function Qp(e,t,n){var i=n;return function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE}(e)&&t.some(function(t,n){return!("*"===t||!function(e,t){if(!Lp){var n=Element.prototype;Lp=n.matches||n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}return e.nodeType===Node.ELEMENT_NODE&&Lp.call(e,t)}(e,t)||(i=n,0))}),i}var Zp=function(){function e(t,n){m(this,e),this.componentFactory=n.get(Gu).resolveComponentFactory(t)}return b(e,[{key:"create",value:function(e){return new Jp(this.componentFactory,e)}}]),e}(),Jp=function(){function e(t,n){m(this,e),this.componentFactory=t,this.injector=n,this.eventEmitters=new Sf(1),this.events=this.eventEmitters.pipe(df(function(e){return Ee.apply(void 0,v(e))})),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(function(e){return e.propName})),this.ngZone=this.injector.get(Bl),this.elementZone="undefined"==typeof Zone?null:this.ngZone.run(function(){return Zone.current})}return b(e,[{key:"connect",value:function(e){var t=this;this.runInZone(function(){if(null!==t.scheduledDestroyFn)return t.scheduledDestroyFn(),void(t.scheduledDestroyFn=null);null===t.componentRef&&t.initializeComponent(e)})}},{key:"disconnect",value:function(){var e=this;this.runInZone(function(){null===e.componentRef||null!==e.scheduledDestroyFn||(e.scheduledDestroyFn=$p.schedule(function(){null!==e.componentRef&&(e.componentRef.destroy(),e.componentRef=null,e.viewChangeDetectorRef=null)},10))})}},{key:"getInputValue",value:function(e){var t=this;return this.runInZone(function(){return null===t.componentRef?t.initialInputValues.get(e):t.componentRef.instance[e]})}},{key:"setInputValue",value:function(e,t){var n=this;this.runInZone(function(){null!==n.componentRef?function(e,t){return e===t||e!=e&&t!=t}(t,n.getInputValue(e))&&(void 0!==t||!n.unchangedInputs.has(e))||(n.recordInputChange(e,t),n.unchangedInputs.delete(e),n.hasInputChanges=!0,n.componentRef.instance[e]=t,n.scheduleDetectChanges()):n.initialInputValues.set(e,t)})}},{key:"initializeComponent",value:function(e){var t=rs.create({providers:[],parent:this.injector}),n=function(e,t){var n=e.childNodes,i=t.map(function(){return[]}),r=-1;t.some(function(e,t){return"*"===e&&(r=t,!0)});for(var o=0,a=n.length;o1&&void 0!==arguments[1]?arguments[1]:Qd;return function(n){return n.lift(new sv(e,t))}}var sv=function(){function e(t,n){m(this,e),this.dueTime=t,this.scheduler=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new uv(e,this.dueTime,this.scheduler))}}]),e}(),uv=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).dueTime=i,o.scheduler=r,o.debouncedSubscription=null,o.lastValue=null,o.hasValue=!1,o}return b(n,[{key:"_next",value:function(e){this.clearDebounce(),this.lastValue=e,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(cv,this.dueTime,this))}},{key:"_complete",value:function(){this.debouncedNext(),this.destination.complete()}},{key:"debouncedNext",value:function(){if(this.clearDebounce(),this.hasValue){var e=this.lastValue;this.lastValue=null,this.hasValue=!1,this.destination.next(e)}}},{key:"clearDebounce",value:function(){var e=this.debouncedSubscription;null!==e&&(this.remove(e),e.unsubscribe(),this.debouncedSubscription=null)}}]),n}(X);function cv(e){e.debouncedNext()}function lv(e){return function(t){return t.lift(new hv(e))}}var hv=function(){function e(t){m(this,e),this.total=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new dv(e,this.total))}}]),e}(),dv=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).total=i,r.count=0,r}return b(n,[{key:"_next",value:function(e){++this.count>this.total&&this.destination.next(e)}}]),n}(X),fv=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"create",value:function(e){return"undefined"==typeof MutationObserver?null:new MutationObserver(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:function(){return new e},token:e,providedIn:"root"}),e}(),pv=function(){var e=function(){function e(t){m(this,e),this._mutationObserverFactory=t,this._observedElements=new Map}return b(e,[{key:"ngOnDestroy",value:function(){var e=this;this._observedElements.forEach(function(t,n){return e._cleanupObserver(n)})}},{key:"observe",value:function(e){var t=this,n=Dd(e);return new J(function(e){var i=t._observeElement(n).subscribe(e);return function(){i.unsubscribe(),t._unobserveElement(n)}})}},{key:"_observeElement",value:function(e){if(this._observedElements.has(e))this._observedElements.get(e).count++;else{var t=new re,n=this._mutationObserverFactory.create(function(e){return t.next(e)});n&&n.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:n,stream:t,count:1})}return this._observedElements.get(e).stream}},{key:"_unobserveElement",value:function(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}},{key:"_cleanupObserver",value:function(e){if(this._observedElements.has(e)){var t=this._observedElements.get(e),n=t.observer,i=t.stream;n&&n.disconnect(),i.complete(),this._observedElements.delete(e)}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(fv))},e.\u0275prov=Ye({factory:function(){return new e(Ki(fv))},token:e,providedIn:"root"}),e}(),vv=function(){var e=function(){function e(t,n,i){m(this,e),this._contentObserver=t,this._elementRef=n,this._ngZone=i,this.event=new Qc,this._disabled=!1,this._currentSubscription=null}return b(e,[{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=Pd(e),this._disabled?this._unsubscribe():this._subscribe()}},{key:"debounce",get:function(){return this._debounce},set:function(e){this._debounce=Md(e),this._subscribe()}},{key:"ngAfterContentInit",value:function(){!this._currentSubscription&&!this.disabled&&this._subscribe()}},{key:"ngOnDestroy",value:function(){this._unsubscribe()}},{key:"_subscribe",value:function(){var e=this;this._unsubscribe();var t=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(function(){e._currentSubscription=(e.debounce?t.pipe(av(e.debounce)):t).subscribe(e.event)})}},{key:"_unsubscribe",value:function(){var e;null===(e=this._currentSubscription)||void 0===e||e.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(pv),Ss(Yu),Ss(Bl))},e.\u0275dir=Mt({type:e,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),e}(),gv=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[fv]}),e}();function mv(e,t){return(e.getAttribute(t)||"").match(/\S+/g)||[]}var yv="cdk-describedby-message-container",bv="cdk-describedby-message",_v="cdk-describedby-host",wv=0,kv=new Map,xv=null,Sv=function(){var e=function(){function e(t){m(this,e),this._document=t}return b(e,[{key:"describe",value:function(e,t,n){if(this._canBeDescribed(e,t)){var i=Ev(t,n);"string"!=typeof t?(Cv(t),kv.set(i,{messageElement:t,referenceCount:0})):kv.has(i)||this._createMessageElement(t,n),this._isElementDescribedByMessage(e,i)||this._addMessageReference(e,i)}}},{key:"removeDescription",value:function(e,t,n){if(t&&this._isElementNode(e)){var i=Ev(t,n);if(this._isElementDescribedByMessage(e,i)&&this._removeMessageReference(e,i),"string"==typeof t){var r=kv.get(i);r&&0===r.referenceCount&&this._deleteMessageElement(i)}xv&&0===xv.childNodes.length&&this._deleteMessagesContainer()}}},{key:"ngOnDestroy",value:function(){for(var e=this._document.querySelectorAll("[".concat(_v,"]")),t=0;t-1&&t!==n._activeItemIndex&&(n._activeItemIndex=t)}})}return b(e,[{key:"skipPredicate",value:function(e){return this._skipPredicateFn=e,this}},{key:"withWrap",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._wrap=e,this}},{key:"withVerticalOrientation",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._vertical=e,this}},{key:"withHorizontalOrientation",value:function(e){return this._horizontal=e,this}},{key:"withAllowedModifierKeys",value:function(e){return this._allowedModifierKeys=e,this}},{key:"withTypeAhead",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200;return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe(iv(function(t){return e._pressedLetters.push(t)}),av(t),rf(function(){return e._pressedLetters.length>0}),se(function(){return e._pressedLetters.join("")})).subscribe(function(t){for(var n=e._getItemsArray(),i=1;i0&&void 0!==arguments[0])||arguments[0];return this._homeAndEnd=e,this}},{key:"setActiveItem",value:function(e){var t=this._activeItem;this.updateActiveItem(e),this._activeItem!==t&&this.change.next(this._activeItemIndex)}},{key:"onKeydown",value:function(e){var t=this,n=e.keyCode,i=["altKey","ctrlKey","metaKey","shiftKey"].every(function(n){return!e[n]||t._allowedModifierKeys.indexOf(n)>-1});switch(n){case 9:return void this.tabOut.next();case 40:if(this._vertical&&i){this.setNextItemActive();break}return;case 38:if(this._vertical&&i){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&i){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&i){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&i){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&i){this.setLastItemActive();break}return;default:return void((i||hp(e,"shiftKey"))&&(e.key&&1===e.key.length?this._letterKeyStream.next(e.key.toLocaleUpperCase()):(n>=65&&n<=90||n>=48&&n<=57)&&this._letterKeyStream.next(String.fromCharCode(n))))}this._pressedLetters=[],e.preventDefault()}},{key:"activeItemIndex",get:function(){return this._activeItemIndex}},{key:"activeItem",get:function(){return this._activeItem}},{key:"isTyping",value:function(){return this._pressedLetters.length>0}},{key:"setFirstItemActive",value:function(){this._setActiveItemByIndex(0,1)}},{key:"setLastItemActive",value:function(){this._setActiveItemByIndex(this._items.length-1,-1)}},{key:"setNextItemActive",value:function(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}},{key:"setPreviousItemActive",value:function(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}},{key:"updateActiveItem",value:function(e){var t=this._getItemsArray(),n="number"==typeof e?e:t.indexOf(e),i=t[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}},{key:"_setActiveItemByDelta",value:function(e){this._wrap?this._setActiveInWrapMode(e):this._setActiveInDefaultMode(e)}},{key:"_setActiveInWrapMode",value:function(e){for(var t=this._getItemsArray(),n=1;n<=t.length;n++){var i=(this._activeItemIndex+e*n+t.length)%t.length;if(!this._skipPredicateFn(t[i]))return void this.setActiveItem(i)}}},{key:"_setActiveInDefaultMode",value:function(e){this._setActiveItemByIndex(this._activeItemIndex+e,e)}},{key:"_setActiveItemByIndex",value:function(e,t){var n=this._getItemsArray();if(n[e]){for(;this._skipPredicateFn(n[e]);)if(!n[e+=t])return;this.setActiveItem(e)}}},{key:"_getItemsArray",value:function(){return this._items instanceof Jc?this._items.toArray():this._items}}]),e}()),Tv=function(){var e=function(){function e(t){m(this,e),this._platform=t}return b(e,[{key:"isDisabled",value:function(e){return e.hasAttribute("disabled")}},{key:"isVisible",value:function(e){return function(e){return!!(e.offsetWidth||e.offsetHeight||"function"==typeof e.getClientRects&&e.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}},{key:"isTabbable",value:function(e){if(!this._platform.isBrowser)return!1;var t=function(e){try{return e.frameElement}catch(t){return null}}(function(e){return e.ownerDocument&&e.ownerDocument.defaultView||window}(e));if(t&&(-1===Pv(t)||!this.isVisible(t)))return!1;var n=e.nodeName.toLowerCase(),i=Pv(e);return e.hasAttribute("contenteditable")?-1!==i:!("iframe"===n||"object"===n||this._platform.WEBKIT&&this._platform.IOS&&!function(e){var t=e.nodeName.toLowerCase(),n="input"===t&&e.type;return"text"===n||"password"===n||"select"===t||"textarea"===t}(e))&&("audio"===n?!!e.hasAttribute("controls")&&-1!==i:"video"===n?-1!==i&&(null!==i||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}},{key:"isFocusable",value:function(e,t){return function(e){return!function(e){return function(e){return"input"==e.nodeName.toLowerCase()}(e)&&"hidden"==e.type}(e)&&(function(e){var t=e.nodeName.toLowerCase();return"input"===t||"select"===t||"button"===t||"textarea"===t}(e)||function(e){return function(e){return"a"==e.nodeName.toLowerCase()}(e)&&e.hasAttribute("href")}(e)||e.hasAttribute("contenteditable")||Av(e))}(e)&&!this.isDisabled(e)&&((null==t?void 0:t.ignoreVisibility)||this.isVisible(e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf))},token:e,providedIn:"root"}),e}();function Av(e){if(!e.hasAttribute("tabindex")||void 0===e.tabIndex)return!1;var t=e.getAttribute("tabindex");return"-32768"!=t&&!(!t||isNaN(parseInt(t,10)))}function Pv(e){if(!Av(e))return null;var t=parseInt(e.getAttribute("tabindex")||"",10);return isNaN(t)?-1:t}var Mv=function(){function e(t,n,i,r){var o=this,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];m(this,e),this._element=t,this._checker=n,this._ngZone=i,this._document=r,this._hasAttached=!1,this.startAnchorListener=function(){return o.focusLastTabbableElement()},this.endAnchorListener=function(){return o.focusFirstTabbableElement()},this._enabled=!0,a||this.attachAnchors()}return b(e,[{key:"enabled",get:function(){return this._enabled},set:function(e){this._enabled=e,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}},{key:"destroy",value:function(){var e=this._startAnchor,t=this._endAnchor;e&&(e.removeEventListener("focus",this.startAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),t&&(t.removeEventListener("focus",this.endAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}},{key:"attachAnchors",value:function(){var e=this;return!!this._hasAttached||(this._ngZone.runOutsideAngular(function(){e._startAnchor||(e._startAnchor=e._createAnchor(),e._startAnchor.addEventListener("focus",e.startAnchorListener)),e._endAnchor||(e._endAnchor=e._createAnchor(),e._endAnchor.addEventListener("focus",e.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}},{key:"focusInitialElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusInitialElement(e))})})}},{key:"focusFirstTabbableElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusFirstTabbableElement(e))})})}},{key:"focusLastTabbableElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusLastTabbableElement(e))})})}},{key:"_getRegionBoundary",value:function(e){for(var t=this._element.querySelectorAll("[cdk-focus-region-".concat(e,"], [cdkFocusRegion").concat(e,"], [cdk-focus-").concat(e,"]")),n=0;n=0;n--){var i=t[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(t[n]):null;if(i)return i}return null}},{key:"_createAnchor",value:function(){var e=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,e),e.classList.add("cdk-visually-hidden"),e.classList.add("cdk-focus-trap-anchor"),e.setAttribute("aria-hidden","true"),e}},{key:"_toggleAnchorTabIndex",value:function(e,t){e?t.setAttribute("tabindex","0"):t.removeAttribute("tabindex")}},{key:"toggleAnchors",value:function(e){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}},{key:"_executeOnStable",value:function(e){this._ngZone.isStable?e():this._ngZone.onStable.pipe(op(1)).subscribe(e)}}]),e}(),Iv=function(){var e=function(){function e(t,n,i){m(this,e),this._checker=t,this._ngZone=n,this._document=i}return b(e,[{key:"create",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Mv(e,this._checker,this._ngZone,this._document,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Tv),Ki(Bl),Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Tv),Ki(Bl),Ki(hh))},token:e,providedIn:"root"}),e}();function Rv(e){return 0===e.offsetX&&0===e.offsetY}function Dv(e){var t=e.touches&&e.touches[0]||e.changedTouches&&e.changedTouches[0];return!(!t||-1!==t.identifier||null!=t.radiusX&&1!==t.radiusX||null!=t.radiusY&&1!==t.radiusY)}"undefined"!=typeof Element&∈var Nv=new Pi("cdk-input-modality-detector-options"),Lv={ignoreKeys:[18,17,224,91,16]},jv=Nf({passive:!0,capture:!0}),Fv=function(){var e=function(){function e(t,n,i,r){var o=this;m(this,e),this._platform=t,this._mostRecentTarget=null,this._modality=new tv(null),this._lastTouchMs=0,this._onKeydown=function(e){var t,n;(null===(n=null===(t=o._options)||void 0===t?void 0:t.ignoreKeys)||void 0===n?void 0:n.some(function(t){return t===e.keyCode}))||(o._modality.next("keyboard"),o._mostRecentTarget=Ff(e))},this._onMousedown=function(e){Date.now()-o._lastTouchMs<650||(o._modality.next(Rv(e)?"keyboard":"mouse"),o._mostRecentTarget=Ff(e))},this._onTouchstart=function(e){Dv(e)?o._modality.next("keyboard"):(o._lastTouchMs=Date.now(),o._modality.next("touch"),o._mostRecentTarget=Ff(e))},this._options=Object.assign(Object.assign({},Lv),r),this.modalityDetected=this._modality.pipe(lv(1)),this.modalityChanged=this.modalityDetected.pipe(Yd()),t.isBrowser&&n.runOutsideAngular(function(){i.addEventListener("keydown",o._onKeydown,jv),i.addEventListener("mousedown",o._onMousedown,jv),i.addEventListener("touchstart",o._onTouchstart,jv)})}return b(e,[{key:"mostRecentModality",get:function(){return this._modality.value}},{key:"ngOnDestroy",value:function(){!this._platform.isBrowser||(document.removeEventListener("keydown",this._onKeydown,jv),document.removeEventListener("mousedown",this._onMousedown,jv),document.removeEventListener("touchstart",this._onTouchstart,jv))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(Bl),Ki(hh),Ki(Nv,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(Bl),Ki(hh),Ki(Nv,8))},token:e,providedIn:"root"}),e}(),Bv=new Pi("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),Vv=new Pi("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),zv=function(){var e=function(){function e(t,n,i,r){m(this,e),this._ngZone=n,this._defaultOptions=r,this._document=i,this._liveElement=t||this._createLiveElement()}return b(e,[{key:"announce",value:function(e){for(var n,i,r,o=this,a=this._defaultOptions,s=arguments.length,u=new Array(s>1?s-1:0),c=1;c1&&void 0!==arguments[1]&&arguments[1],n=Dd(e);if(!this._platform.isBrowser||1!==n.nodeType)return Nd(null);var i=Lf(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return t&&(r.checkChildren=!0),r.subject;var o={checkChildren:t,subject:new re,rootNode:i};return this._elementInfo.set(n,o),this._registerGlobalListeners(o),o.subject}},{key:"stopMonitoring",value:function(e){var t=Dd(e),n=this._elementInfo.get(t);n&&(n.subject.complete(),this._setClasses(t),this._elementInfo.delete(t),this._removeGlobalListeners(n))}},{key:"focusVia",value:function(e,n,i){var r=this,o=Dd(e);o===this._getDocument().activeElement?this._getClosestElementsInfo(o).forEach(function(e){var i=t(e,2),o=i[0],a=i[1];return r._originChanged(o,n,a)}):(this._setOrigin(n),"function"==typeof o.focus&&o.focus(i))}},{key:"ngOnDestroy",value:function(){var e=this;this._elementInfo.forEach(function(t,n){return e.stopMonitoring(n)})}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_toggleClass",value:function(e,t,n){n?e.classList.add(t):e.classList.remove(t)}},{key:"_getFocusOrigin",value:function(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}},{key:"_shouldBeAttributedToTouch",value:function(e){return 1===this._detectionMode||!!(null==e?void 0:e.contains(this._inputModalityDetector._mostRecentTarget))}},{key:"_setClasses",value:function(e,t){this._toggleClass(e,"cdk-focused",!!t),this._toggleClass(e,"cdk-touch-focused","touch"===t),this._toggleClass(e,"cdk-keyboard-focused","keyboard"===t),this._toggleClass(e,"cdk-mouse-focused","mouse"===t),this._toggleClass(e,"cdk-program-focused","program"===t)}},{key:"_setOrigin",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ngZone.runOutsideAngular(function(){t._origin=e,t._originFromTouchInteraction="touch"===e&&n,0===t._detectionMode&&(clearTimeout(t._originTimeoutId),t._originTimeoutId=setTimeout(function(){return t._origin=null},t._originFromTouchInteraction?650:1))})}},{key:"_onFocus",value:function(e,t){var n=this._elementInfo.get(t),i=Ff(e);!n||!n.checkChildren&&t!==i||this._originChanged(t,this._getFocusOrigin(i),n)}},{key:"_onBlur",value:function(e,t){var n=this._elementInfo.get(t);!n||n.checkChildren&&e.relatedTarget instanceof Node&&t.contains(e.relatedTarget)||(this._setClasses(t),this._emitOrigin(n.subject,null))}},{key:"_emitOrigin",value:function(e,t){this._ngZone.run(function(){return e.next(t)})}},{key:"_registerGlobalListeners",value:function(e){var t=this;if(this._platform.isBrowser){var n=e.rootNode,i=this._rootNodeFocusListenerCount.get(n)||0;i||this._ngZone.runOutsideAngular(function(){n.addEventListener("focus",t._rootNodeFocusAndBlurListener,Hv),n.addEventListener("blur",t._rootNodeFocusAndBlurListener,Hv)}),this._rootNodeFocusListenerCount.set(n,i+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(function(){t._getWindow().addEventListener("focus",t._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(sf(this._stopInputModalityDetector)).subscribe(function(e){t._setOrigin(e,!0)}))}}},{key:"_removeGlobalListeners",value:function(e){var t=e.rootNode;if(this._rootNodeFocusListenerCount.has(t)){var n=this._rootNodeFocusListenerCount.get(t);n>1?this._rootNodeFocusListenerCount.set(t,n-1):(t.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Hv),t.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Hv),this._rootNodeFocusListenerCount.delete(t))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}},{key:"_originChanged",value:function(e,t,n){this._setClasses(e,t),this._emitOrigin(n.subject,t),this._lastFocusOrigin=t}},{key:"_getClosestElementsInfo",value:function(e){var t=[];return this._elementInfo.forEach(function(n,i){(i===e||n.checkChildren&&i.contains(e))&&t.push([i,n])}),t}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(Mf),Ki(Fv),Ki(hh,8),Ki(Uv,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Bl),Ki(Mf),Ki(Fv),Ki(hh,8),Ki(Uv,8))},token:e,providedIn:"root"}),e}(),Wv="cdk-high-contrast-black-on-white",qv="cdk-high-contrast-white-on-black",Xv="cdk-high-contrast-active",Yv=function(){var e=function(){function e(t,n){m(this,e),this._platform=t,this._document=n}return b(e,[{key:"getHighContrastMode",value:function(){if(!this._platform.isBrowser)return 0;var e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);var t=this._document.defaultView||window,n=t&&t.getComputedStyle?t.getComputedStyle(e):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(e),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}},{key:"_applyBodyHighContrastModeCssClasses",value:function(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){var e=this._document.body.classList;e.remove(Xv),e.remove(Wv),e.remove(qv),this._hasCheckedHighContrastMode=!0;var t=this.getHighContrastMode();1===t?(e.add(Xv),e.add(Wv)):2===t&&(e.add(Xv),e.add(qv))}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(hh))},token:e,providedIn:"root"}),e}(),Kv=function(){var e=function e(t){m(this,e),t._applyBodyHighContrastModeCssClasses()};return e.\u0275fac=function(t){return new(t||e)(Ki(Yv))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[If,gv]]}),e}(),$v=new ec("12.2.5"),Qv=function e(){m(this,e)},Zv="*";function Jv(e,t){return{type:7,name:e,definitions:t,options:{}}}function eg(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:4,styles:t,timings:e}}function tg(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:2,steps:e,options:t}}function ng(e){return{type:6,styles:e,offset:null}}function ig(e,t,n){return{type:0,name:e,styles:t,options:n}}function rg(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:1,expr:e,animation:t,options:n}}function og(e){Promise.resolve(null).then(e)}var ag=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;m(this,e),this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=t+n}return b(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"hasStarted",value:function(){return this._started}},{key:"init",value:function(){}},{key:"play",value:function(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}},{key:"triggerMicrotask",value:function(){var e=this;og(function(){return e._onFinish()})}},{key:"_onStart",value:function(){this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[]}},{key:"pause",value:function(){}},{key:"restart",value:function(){}},{key:"finish",value:function(){this._onFinish()}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this._started=!1}},{key:"setPosition",value:function(e){this._position=this.totalTime?e*this.totalTime:1}},{key:"getPosition",value:function(){return this.totalTime?this._position/this.totalTime:1}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),sg=function(){function e(t){var n=this;m(this,e),this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;var i=0,r=0,o=0,a=this.players.length;0==a?og(function(){return n._onFinish()}):this.players.forEach(function(e){e.onDone(function(){++i==a&&n._onFinish()}),e.onDestroy(function(){++r==a&&n._onDestroy()}),e.onStart(function(){++o==a&&n._onStart()})}),this.totalTime=this.players.reduce(function(e,t){return Math.max(e,t.totalTime)},0)}return b(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"init",value:function(){this.players.forEach(function(e){return e.init()})}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"_onStart",value:function(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[])}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"hasStarted",value:function(){return this._started}},{key:"play",value:function(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(function(e){return e.play()})}},{key:"pause",value:function(){this.players.forEach(function(e){return e.pause()})}},{key:"restart",value:function(){this.players.forEach(function(e){return e.restart()})}},{key:"finish",value:function(){this._onFinish(),this.players.forEach(function(e){return e.finish()})}},{key:"destroy",value:function(){this._onDestroy()}},{key:"_onDestroy",value:function(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(function(e){return e.destroy()}),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this.players.forEach(function(e){return e.reset()}),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"setPosition",value:function(e){var t=e*this.totalTime;this.players.forEach(function(e){var n=e.totalTime?Math.min(1,t/e.totalTime):1;e.setPosition(n)})}},{key:"getPosition",value:function(){var e=this.players.reduce(function(e,t){return null===e||t.totalTime>e.totalTime?t:e},null);return null!=e?e.getPosition():0}},{key:"beforeDestroy",value:function(){this.players.forEach(function(e){e.beforeDestroy&&e.beforeDestroy()})}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}();function ug(){return"undefined"!=typeof window&&void 0!==window.document}function cg(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function lg(e){switch(e.length){case 0:return new ag;case 1:return e[0];default:return new sg(e)}}function hg(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=[],s=[],u=-1,c=null;if(i.forEach(function(e){var n=e.offset,i=n==u,l=i&&c||{};Object.keys(e).forEach(function(n){var i=n,s=e[n];if("offset"!==n)switch(i=t.normalizePropertyName(i,a),s){case"!":s=r[n];break;case Zv:s=o[n];break;default:s=t.normalizeStyleValue(n,i,s,a)}l[i]=s}),i||s.push(l),c=l,u=n}),a.length){var l="\n - ";throw new Error("Unable to animate due to the following errors:".concat(l).concat(a.join(l)))}return s}function dg(e,t,n,i){switch(t){case"start":e.onStart(function(){return i(n&&fg(n,"start",e))});break;case"done":e.onDone(function(){return i(n&&fg(n,"done",e))});break;case"destroy":e.onDestroy(function(){return i(n&&fg(n,"destroy",e))})}}function fg(e,t,n){var i=n.totalTime,r=pg(e.element,e.triggerName,e.fromState,e.toState,t||e.phaseName,null==i?e.totalTime:i,!!n.disabled),o=e._data;return null!=o&&(r._data=o),r}function pg(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,a=arguments.length>6?arguments[6]:void 0;return{element:e,triggerName:t,fromState:n,toState:i,phaseName:r,totalTime:o,disabled:!!a}}function vg(e,t,n){var i;return e instanceof Map?(i=e.get(t))||e.set(t,i=n):(i=e[t])||(i=e[t]=n),i}function gg(e){var t=e.indexOf(":");return[e.substring(1,t),e.substr(t+1)]}var mg=function(e,t){return!1},yg=function(e,t){return!1},bg=function(e,t,n){return[]},_g=cg();(_g||"undefined"!=typeof Element)&&(mg=ug()?function(e,t){for(;t&&t!==document.documentElement;){if(t===e)return!0;t=t.parentNode||t.host}return!1}:function(e,t){return e.contains(t)},yg=function(){if(_g||Element.prototype.matches)return function(e,t){return e.matches(t)};var e=Element.prototype,t=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;return t?function(e,n){return t.apply(e,[n])}:yg}(),bg=function(e,t,n){var i=[];if(n)for(var r=e.querySelectorAll(t),o=0;o1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).forEach(function(n){t[n]=e[n]}),t}function Vg(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t)for(var i in e)n[i]=e[i];else Bg(e,n);return n}function zg(e,t,n){return n?t+":"+n+";":""}function Ug(e){for(var t="",n=0;n *";case":leave":return"* => void";case":increment":return function(e,t){return parseFloat(t)>parseFloat(e)};case":decrement":return function(e,t){return parseFloat(t) *"}}(e,n);if("function"==typeof i)return void t.push(i);e=i}var r=e.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==r||r.length<4)return n.push('The provided transition expression "'.concat(e,'" is not supported')),t;var o=r[1],a=r[2],s=r[3];t.push(am(o,s)),"<"==a[0]&&("*"!=o||"*"!=s)&&t.push(am(s,o))}(e,n,t)}):n.push(e),n}var rm=new Set(["true","1"]),om=new Set(["false","0"]);function am(e,t){var n=rm.has(e)||om.has(e),i=rm.has(t)||om.has(t);return function(r,o){var a="*"==e||e==r,s="*"==t||t==o;return!a&&n&&"boolean"==typeof r&&(a=r?rm.has(e):om.has(e)),!s&&i&&"boolean"==typeof o&&(s=o?rm.has(t):om.has(t)),a&&s}}var sm=new RegExp("s*:selfs*,?","g");function um(e,t,n){return new cm(e).build(t,n)}var cm=function(){function e(t){m(this,e),this._driver=t}return b(e,[{key:"build",value:function(e,t){var n=new lm(t);return this._resetContextStyleTimingState(n),tm(this,Wg(e),n)}},{key:"_resetContextStyleTimingState",value:function(e){e.currentQuerySelector="",e.collectedStyles={},e.collectedStyles[""]={},e.currentTime=0}},{key:"visitTrigger",value:function(e,t){var n=this,i=t.queryCount=0,r=t.depCount=0,o=[],a=[];return"@"==e.name.charAt(0)&&t.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),e.definitions.forEach(function(e){if(n._resetContextStyleTimingState(t),0==e.type){var s=e,u=s.name;u.toString().split(/\s*,\s*/).forEach(function(e){s.name=e,o.push(n.visitState(s,t))}),s.name=u}else if(1==e.type){var c=n.visitTransition(e,t);i+=c.queryCount,r+=c.depCount,a.push(c)}else t.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:e.name,states:o,transitions:a,queryCount:i,depCount:r,options:null}}},{key:"visitState",value:function(e,t){var n=this.visitStyle(e.styles,t),i=e.options&&e.options.params||null;if(n.containsDynamicStyles){var r=new Set,o=i||{};if(n.styles.forEach(function(e){if(hm(e)){var t=e;Object.keys(t).forEach(function(e){Xg(t[e]).forEach(function(e){o.hasOwnProperty(e)||r.add(e)})})}}),r.size){var a=Kg(r.values());t.errors.push('state("'.concat(e.name,'", ...) must define default values for all the following style substitutions: ').concat(a.join(", ")))}}return{type:0,name:e.name,style:n,options:i?{params:i}:null}}},{key:"visitTransition",value:function(e,t){t.queryCount=0,t.depCount=0;var n=tm(this,Wg(e.animation),t);return{type:1,matchers:im(e.expr,t.errors),animation:n,queryCount:t.queryCount,depCount:t.depCount,options:dm(e.options)}}},{key:"visitSequence",value:function(e,t){var n=this;return{type:2,steps:e.steps.map(function(e){return tm(n,e,t)}),options:dm(e.options)}}},{key:"visitGroup",value:function(e,t){var n=this,i=t.currentTime,r=0,o=e.steps.map(function(e){t.currentTime=i;var o=tm(n,e,t);return r=Math.max(r,t.currentTime),o});return t.currentTime=r,{type:3,steps:o,options:dm(e.options)}}},{key:"visitAnimate",value:function(e,t){var n=function(e,t){var n=null;if(e.hasOwnProperty("duration"))n=e;else if("number"==typeof e)return fm(Fg(e,t).duration,0,"");var i=e;if(i.split(/\s+/).some(function(e){return"{"==e.charAt(0)&&"{"==e.charAt(1)})){var r=fm(0,0,"");return r.dynamic=!0,r.strValue=i,r}return fm((n=n||Fg(i,t)).duration,n.delay,n.easing)}(e.timings,t.errors);t.currentAnimateTimings=n;var i,r=e.styles?e.styles:ng({});if(5==r.type)i=this.visitKeyframes(r,t);else{var o=e.styles,a=!1;if(!o){a=!0;var s={};n.easing&&(s.easing=n.easing),o=ng(s)}t.currentTime+=n.duration+n.delay;var u=this.visitStyle(o,t);u.isEmptyStep=a,i=u}return t.currentAnimateTimings=null,{type:4,timings:n,style:i,options:null}}},{key:"visitStyle",value:function(e,t){var n=this._makeStyleAst(e,t);return this._validateStyleAst(n,t),n}},{key:"_makeStyleAst",value:function(e,t){var n=[];Array.isArray(e.styles)?e.styles.forEach(function(e){"string"==typeof e?e==Zv?n.push(e):t.errors.push("The provided style string value ".concat(e," is not allowed.")):n.push(e)}):n.push(e.styles);var i=!1,r=null;return n.forEach(function(e){if(hm(e)){var t=e,n=t.easing;if(n&&(r=n,delete t.easing),!i)for(var o in t)if(t[o].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:e.offset,containsDynamicStyles:i,options:null}}},{key:"_validateStyleAst",value:function(e,t){var n=this,i=t.currentAnimateTimings,r=t.currentTime,o=t.currentTime;i&&o>0&&(o-=i.duration+i.delay),e.styles.forEach(function(e){"string"!=typeof e&&Object.keys(e).forEach(function(i){if(n._driver.validateStyleProperty(i)){var a=t.collectedStyles[t.currentQuerySelector],s=a[i],u=!0;s&&(o!=r&&o>=s.startTime&&r<=s.endTime&&(t.errors.push('The CSS property "'.concat(i,'" that exists between the times of "').concat(s.startTime,'ms" and "').concat(s.endTime,'ms" is also being animated in a parallel animation between the times of "').concat(o,'ms" and "').concat(r,'ms"')),u=!1),o=s.startTime),u&&(a[i]={startTime:o,endTime:r}),t.options&&function(e,t,n){var i=t.params||{},r=Xg(e);r.length&&r.forEach(function(e){i.hasOwnProperty(e)||n.push("Unable to resolve the local animation param ".concat(e," in the given list of values"))})}(e[i],t.options,t.errors)}else t.errors.push('The provided animation property "'.concat(i,'" is not a supported CSS property for animations'))})})}},{key:"visitKeyframes",value:function(e,t){var n=this,i={type:5,styles:[],options:null};if(!t.currentAnimateTimings)return t.errors.push("keyframes() must be placed inside of a call to animate()"),i;var r=0,o=[],a=!1,s=!1,u=0,c=e.steps.map(function(e){var i=n._makeStyleAst(e,t),c=null!=i.offset?i.offset:function(e){if("string"==typeof e)return null;var t=null;if(Array.isArray(e))e.forEach(function(e){if(hm(e)&&e.hasOwnProperty("offset")){var n=e;t=parseFloat(n.offset),delete n.offset}});else if(hm(e)&&e.hasOwnProperty("offset")){var n=e;t=parseFloat(n.offset),delete n.offset}return t}(i.styles),l=0;return null!=c&&(r++,l=i.offset=c),s=s||l<0||l>1,a=a||l0&&r0?r==d?1:h*r:o[r],s=a*v;t.currentTime=f+p.delay+s,p.duration=s,n._validateStyleAst(e,t),e.offset=a,i.styles.push(e)}),i}},{key:"visitReference",value:function(e,t){return{type:8,animation:tm(this,Wg(e.animation),t),options:dm(e.options)}}},{key:"visitAnimateChild",value:function(e,t){return t.depCount++,{type:9,options:dm(e.options)}}},{key:"visitAnimateRef",value:function(e,t){return{type:10,animation:this.visitReference(e.animation,t),options:dm(e.options)}}},{key:"visitQuery",value:function(e,n){var i=n.currentQuerySelector,r=e.options||{};n.queryCount++,n.currentQuery=e;var o=t(function(e){var t=!!e.split(/\s*,\s*/).find(function(e){return":self"==e});return t&&(e=e.replace(sm,"")),[e=e.replace(/@\*/g,Rg).replace(/@\w+/g,function(e){return Rg+"-"+e.substr(1)}).replace(/:animating/g,Ng),t]}(e.selector),2),a=o[0],s=o[1];n.currentQuerySelector=i.length?i+" "+a:a,vg(n.collectedStyles,n.currentQuerySelector,{});var u=tm(this,Wg(e.animation),n);return n.currentQuery=null,n.currentQuerySelector=i,{type:11,selector:a,limit:r.limit||0,optional:!!r.optional,includeSelf:s,animation:u,originalSelector:e.selector,options:dm(e.options)}}},{key:"visitStagger",value:function(e,t){t.currentQuery||t.errors.push("stagger() can only be used inside of query()");var n="full"===e.timings?{duration:0,delay:0,easing:"full"}:Fg(e.timings,t.errors,!0);return{type:12,animation:tm(this,Wg(e.animation),t),timings:n,options:null}}}]),e}(),lm=function e(t){m(this,e),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 hm(e){return!Array.isArray(e)&&"object"==typeof e}function dm(e){return e?(e=Bg(e)).params&&(e.params=function(e){return e?Bg(e):null}(e.params)):e={},e}function fm(e,t,n){return{duration:e,delay:t,easing:n}}function pm(e,t,n,i,r,o){var a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,s=arguments.length>7&&void 0!==arguments[7]&&arguments[7];return{type:1,element:e,keyframes:t,preStyleProps:n,postStyleProps:i,duration:r,delay:o,totalTime:r+o,easing:a,subTimeline:s}}var vm=function(){function e(){m(this,e),this._map=new Map}return b(e,[{key:"consume",value:function(e){var t=this._map.get(e);return t?this._map.delete(e):t=[],t}},{key:"append",value:function(e,t){var n,i=this._map.get(e);i||this._map.set(e,i=[]),(n=i).push.apply(n,v(t))}},{key:"has",value:function(e){return this._map.has(e)}},{key:"clear",value:function(){this._map.clear()}}]),e}(),gm=new RegExp(":enter","g"),mm=new RegExp(":leave","g");function ym(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},s=arguments.length>7?arguments[7]:void 0,u=arguments.length>8?arguments[8]:void 0,c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];return(new bm).buildKeyframes(e,t,n,i,r,o,a,s,u,c)}var bm=function(){function e(){m(this,e)}return b(e,[{key:"buildKeyframes",value:function(e,t,n,i,r,o,a,s,u){var c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];u=u||new vm;var l=new wm(e,t,u,i,r,c,[]);l.options=s,l.currentTimeline.setStyles([o],null,l.errors,s),tm(this,n,l);var h=l.timelines.filter(function(e){return e.containsAnimation()});if(h.length&&Object.keys(a).length){var d=h[h.length-1];d.allowOnlyTimelineStyles()||d.setStyles([a],null,l.errors,s)}return h.length?h.map(function(e){return e.buildKeyframes()}):[pm(t,[],[],[],0,0,"",!1)]}},{key:"visitTrigger",value:function(e,t){}},{key:"visitState",value:function(e,t){}},{key:"visitTransition",value:function(e,t){}},{key:"visitAnimateChild",value:function(e,t){var n=t.subInstructions.consume(t.element);if(n){var i=t.createSubContext(e.options),r=t.currentTimeline.currentTime,o=this._visitSubInstructions(n,i,i.options);r!=o&&t.transformIntoNewTimeline(o)}t.previousNode=e}},{key:"visitAnimateRef",value:function(e,t){var n=t.createSubContext(e.options);n.transformIntoNewTimeline(),this.visitReference(e.animation,n),t.transformIntoNewTimeline(n.currentTimeline.currentTime),t.previousNode=e}},{key:"_visitSubInstructions",value:function(e,t,n){var i=t.currentTimeline.currentTime,r=null!=n.duration?Lg(n.duration):null,o=null!=n.delay?Lg(n.delay):null;return 0!==r&&e.forEach(function(e){var n=t.appendInstructionToTimeline(e,r,o);i=Math.max(i,n.duration+n.delay)}),i}},{key:"visitReference",value:function(e,t){t.updateOptions(e.options,!0),tm(this,e.animation,t),t.previousNode=e}},{key:"visitSequence",value:function(e,t){var n=this,i=t.subContextCount,r=t,o=e.options;if(o&&(o.params||o.delay)&&((r=t.createSubContext(o)).transformIntoNewTimeline(),null!=o.delay)){6==r.previousNode.type&&(r.currentTimeline.snapshotCurrentStyles(),r.previousNode=_m);var a=Lg(o.delay);r.delayNextStep(a)}e.steps.length&&(e.steps.forEach(function(e){return tm(n,e,r)}),r.currentTimeline.applyStylesToKeyframe(),r.subContextCount>i&&r.transformIntoNewTimeline()),t.previousNode=e}},{key:"visitGroup",value:function(e,t){var n=this,i=[],r=t.currentTimeline.currentTime,o=e.options&&e.options.delay?Lg(e.options.delay):0;e.steps.forEach(function(a){var s=t.createSubContext(e.options);o&&s.delayNextStep(o),tm(n,a,s),r=Math.max(r,s.currentTimeline.currentTime),i.push(s.currentTimeline)}),i.forEach(function(e){return t.currentTimeline.mergeTimelineCollectedStyles(e)}),t.transformIntoNewTimeline(r),t.previousNode=e}},{key:"_visitTiming",value:function(e,t){if(e.dynamic){var n=e.strValue;return Fg(t.params?Yg(n,t.params,t.errors):n,t.errors)}return{duration:e.duration,delay:e.delay,easing:e.easing}}},{key:"visitAnimate",value:function(e,t){var n=t.currentAnimateTimings=this._visitTiming(e.timings,t),i=t.currentTimeline;n.delay&&(t.incrementTime(n.delay),i.snapshotCurrentStyles());var r=e.style;5==r.type?this.visitKeyframes(r,t):(t.incrementTime(n.duration),this.visitStyle(r,t),i.applyStylesToKeyframe()),t.currentAnimateTimings=null,t.previousNode=e}},{key:"visitStyle",value:function(e,t){var n=t.currentTimeline,i=t.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();var r=i&&i.easing||e.easing;e.isEmptyStep?n.applyEmptyStep(r):n.setStyles(e.styles,r,t.errors,t.options),t.previousNode=e}},{key:"visitKeyframes",value:function(e,t){var n=t.currentAnimateTimings,i=t.currentTimeline.duration,r=n.duration,o=t.createSubContext().currentTimeline;o.easing=n.easing,e.styles.forEach(function(e){o.forwardTime((e.offset||0)*r),o.setStyles(e.styles,e.easing,t.errors,t.options),o.applyStylesToKeyframe()}),t.currentTimeline.mergeTimelineCollectedStyles(o),t.transformIntoNewTimeline(i+r),t.previousNode=e}},{key:"visitQuery",value:function(e,t){var n=this,i=t.currentTimeline.currentTime,r=e.options||{},o=r.delay?Lg(r.delay):0;o&&(6===t.previousNode.type||0==i&&t.currentTimeline.getCurrentStyleProperties().length)&&(t.currentTimeline.snapshotCurrentStyles(),t.previousNode=_m);var a=i,s=t.invokeQuery(e.selector,e.originalSelector,e.limit,e.includeSelf,!!r.optional,t.errors);t.currentQueryTotal=s.length;var u=null;s.forEach(function(i,r){t.currentQueryIndex=r;var s=t.createSubContext(e.options,i);o&&s.delayNextStep(o),i===t.element&&(u=s.currentTimeline),tm(n,e.animation,s),s.currentTimeline.applyStylesToKeyframe(),a=Math.max(a,s.currentTimeline.currentTime)}),t.currentQueryIndex=0,t.currentQueryTotal=0,t.transformIntoNewTimeline(a),u&&(t.currentTimeline.mergeTimelineCollectedStyles(u),t.currentTimeline.snapshotCurrentStyles()),t.previousNode=e}},{key:"visitStagger",value:function(e,t){var n=t.parentContext,i=t.currentTimeline,r=e.timings,o=Math.abs(r.duration),a=o*(t.currentQueryTotal-1),s=o*t.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":s=a-s;break;case"full":s=n.currentStaggerTime}var u=t.currentTimeline;s&&u.delayNextStep(s);var c=u.currentTime;tm(this,e.animation,t),t.previousNode=e,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}]),e}(),_m={},wm=function(){function e(t,n,i,r,o,a,s,u){m(this,e),this._driver=t,this.element=n,this.subInstructions=i,this._enterClassName=r,this._leaveClassName=o,this.errors=a,this.timelines=s,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=_m,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=u||new km(this._driver,n,0),s.push(this.currentTimeline)}return b(e,[{key:"params",get:function(){return this.options.params}},{key:"updateOptions",value:function(e,t){var n=this;if(e){var i=e,r=this.options;null!=i.duration&&(r.duration=Lg(i.duration)),null!=i.delay&&(r.delay=Lg(i.delay));var o=i.params;if(o){var a=r.params;a||(a=this.options.params={}),Object.keys(o).forEach(function(e){(!t||!a.hasOwnProperty(e))&&(a[e]=Yg(o[e],a,n.errors))})}}}},{key:"_copyOptions",value:function(){var e={};if(this.options){var t=this.options.params;if(t){var n=e.params={};Object.keys(t).forEach(function(e){n[e]=t[e]})}}return e}},{key:"createSubContext",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0,r=n||this.element,o=new e(this._driver,r,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(r,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(t),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}},{key:"transformIntoNewTimeline",value:function(e){return this.previousNode=_m,this.currentTimeline=this.currentTimeline.fork(this.element,e),this.timelines.push(this.currentTimeline),this.currentTimeline}},{key:"appendInstructionToTimeline",value:function(e,t,n){var i={duration:null!=t?t:e.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+e.delay,easing:""},r=new xm(this._driver,e.element,e.keyframes,e.preStyleProps,e.postStyleProps,i,e.stretchStartingKeyframe);return this.timelines.push(r),i}},{key:"incrementTime",value:function(e){this.currentTimeline.forwardTime(this.currentTimeline.duration+e)}},{key:"delayNextStep",value:function(e){e>0&&this.currentTimeline.delayNextStep(e)}},{key:"invokeQuery",value:function(e,t,n,i,r,o){var a=[];if(i&&a.push(this.element),e.length>0){e=(e=e.replace(gm,"."+this._enterClassName)).replace(mm,"."+this._leaveClassName);var s=this._driver.query(this.element,e,1!=n);0!==n&&(s=n<0?s.slice(s.length+n,s.length):s.slice(0,n)),a.push.apply(a,v(s))}return!r&&0==a.length&&o.push('`query("'.concat(t,'")` returned zero elements. (Use `query("').concat(t,'", { optional: true })` if you wish to allow this.)')),a}}]),e}(),km=function(){function e(t,n,i,r){m(this,e),this._driver=t,this.element=n,this.startTime=i,this._elementTimelineStylesLookup=r,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(n),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(n,this._localTimelineStyles)),this._loadKeyframe()}return b(e,[{key:"containsAnimation",value:function(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}},{key:"getCurrentStyleProperties",value:function(){return Object.keys(this._currentKeyframe)}},{key:"currentTime",get:function(){return this.startTime+this.duration}},{key:"delayNextStep",value:function(e){var t=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||t?(this.forwardTime(this.currentTime+e),t&&this.snapshotCurrentStyles()):this.startTime+=e}},{key:"fork",value:function(t,n){return this.applyStylesToKeyframe(),new e(this._driver,t,n||this.currentTime,this._elementTimelineStylesLookup)}},{key:"_loadKeyframe",value:function(){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))}},{key:"forwardFrame",value:function(){this.duration+=1,this._loadKeyframe()}},{key:"forwardTime",value:function(e){this.applyStylesToKeyframe(),this.duration=e,this._loadKeyframe()}},{key:"_updateStyle",value:function(e,t){this._localTimelineStyles[e]=t,this._globalTimelineStyles[e]=t,this._styleSummary[e]={time:this.currentTime,value:t}}},{key:"allowOnlyTimelineStyles",value:function(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}},{key:"applyEmptyStep",value:function(e){var t=this;e&&(this._previousKeyframe.easing=e),Object.keys(this._globalTimelineStyles).forEach(function(e){t._backFill[e]=t._globalTimelineStyles[e]||Zv,t._currentKeyframe[e]=Zv}),this._currentEmptyStepKeyframe=this._currentKeyframe}},{key:"setStyles",value:function(e,t,n,i){var r=this;t&&(this._previousKeyframe.easing=t);var o=i&&i.params||{},a=function(e,t){var n,i={};return e.forEach(function(e){"*"===e?(n=n||Object.keys(t)).forEach(function(e){i[e]=Zv}):Vg(e,!1,i)}),i}(e,this._globalTimelineStyles);Object.keys(a).forEach(function(e){var t=Yg(a[e],o,n);r._pendingStyles[e]=t,r._localTimelineStyles.hasOwnProperty(e)||(r._backFill[e]=r._globalTimelineStyles.hasOwnProperty(e)?r._globalTimelineStyles[e]:Zv),r._updateStyle(e,t)})}},{key:"applyStylesToKeyframe",value:function(){var e=this,t=this._pendingStyles,n=Object.keys(t);0!=n.length&&(this._pendingStyles={},n.forEach(function(n){e._currentKeyframe[n]=t[n]}),Object.keys(this._localTimelineStyles).forEach(function(t){e._currentKeyframe.hasOwnProperty(t)||(e._currentKeyframe[t]=e._localTimelineStyles[t])}))}},{key:"snapshotCurrentStyles",value:function(){var e=this;Object.keys(this._localTimelineStyles).forEach(function(t){var n=e._localTimelineStyles[t];e._pendingStyles[t]=n,e._updateStyle(t,n)})}},{key:"getFinalKeyframe",value:function(){return this._keyframes.get(this.duration)}},{key:"properties",get:function(){var e=[];for(var t in this._currentKeyframe)e.push(t);return e}},{key:"mergeTimelineCollectedStyles",value:function(e){var t=this;Object.keys(e._styleSummary).forEach(function(n){var i=t._styleSummary[n],r=e._styleSummary[n];(!i||r.time>i.time)&&t._updateStyle(n,r.value)})}},{key:"buildKeyframes",value:function(){var e=this;this.applyStylesToKeyframe();var t=new Set,n=new Set,i=1===this._keyframes.size&&0===this.duration,r=[];this._keyframes.forEach(function(o,a){var s=Vg(o,!0);Object.keys(s).forEach(function(e){var i=s[e];"!"==i?t.add(e):i==Zv&&n.add(e)}),i||(s.offset=a/e.duration),r.push(s)});var o=t.size?Kg(t.values()):[],a=n.size?Kg(n.values()):[];if(i){var s=r[0],u=Bg(s);s.offset=0,u.offset=1,r=[s,u]}return pm(this.element,r,o,a,this.duration,this.startTime,this.easing,!1)}}]),e}(),xm=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s){var u,c=arguments.length>6&&void 0!==arguments[6]&&arguments[6];return m(this,n),(u=t.call(this,e,i,s.delay)).keyframes=r,u.preStyleProps=o,u.postStyleProps=a,u._stretchStartingKeyframe=c,u.timings={duration:s.duration,delay:s.delay,easing:s.easing},u}return b(n,[{key:"containsAnimation",value:function(){return this.keyframes.length>1}},{key:"buildKeyframes",value:function(){var e=this.keyframes,t=this.timings,n=t.delay,i=t.duration,r=t.easing;if(this._stretchStartingKeyframe&&n){var o=[],a=i+n,s=n/a,u=Vg(e[0],!1);u.offset=0,o.push(u);var c=Vg(e[0],!1);c.offset=Sm(s),o.push(c);for(var l=e.length-1,h=1;h<=l;h++){var d=Vg(e[h],!1);d.offset=Sm((n+d.offset*i)/a),o.push(d)}i=a,n=0,r="",e=o}return pm(this.element,e,this.preStyleProps,this.postStyleProps,i,n,r,!0)}}]),n}(km);function Sm(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,n=Math.pow(10,t-1);return Math.round(e*n)/n}var Em=function e(){m(this,e)},Cm=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"normalizePropertyName",value:function(e,t){return Qg(e)}},{key:"normalizeStyleValue",value:function(e,t,n,i){var r="",o=n.toString().trim();if(Om[t]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{var a=n.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&0==a[1].length&&i.push("Please provide a CSS unit value for ".concat(e,":").concat(n))}return o+r}}]),n}(Em),Om=function(e){var t={};return e.forEach(function(e){return t[e]=!0}),t}("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 Tm(e,t,n,i,r,o,a,s,u,c,l,h,d){return{type:0,element:e,triggerName:t,isRemovalTransition:r,fromState:n,fromStyles:o,toState:i,toStyles:a,timelines:s,queriedElements:u,preStyleProps:c,postStyleProps:l,totalTime:h,errors:d}}var Am={},Pm=function(){function e(t,n,i){m(this,e),this._triggerName=t,this.ast=n,this._stateStyles=i}return b(e,[{key:"match",value:function(e,t,n,i){return function(e,t,n,i,r){return e.some(function(e){return e(t,n,i,r)})}(this.ast.matchers,e,t,n,i)}},{key:"buildStyles",value:function(e,t,n){var i=this._stateStyles["*"],r=this._stateStyles[e],o=i?i.buildStyles(t,n):{};return r?r.buildStyles(t,n):o}},{key:"build",value:function(e,t,n,i,r,o,a,s,u,c){var l=[],h=this.ast.options&&this.ast.options.params||Am,d=this.buildStyles(n,a&&a.params||Am,l),f=s&&s.params||Am,p=this.buildStyles(i,f,l),v=new Set,g=new Map,m=new Map,y="void"===i,b={params:Object.assign(Object.assign({},h),f)},_=c?[]:ym(e,t,this.ast.animation,r,o,d,p,b,u,l),w=0;if(_.forEach(function(e){w=Math.max(e.duration+e.delay,w)}),l.length)return Tm(t,this._triggerName,n,i,y,d,p,[],[],g,m,w,l);_.forEach(function(e){var n=e.element,i=vg(g,n,{});e.preStyleProps.forEach(function(e){return i[e]=!0});var r=vg(m,n,{});e.postStyleProps.forEach(function(e){return r[e]=!0}),n!==t&&v.add(n)});var k=Kg(v.values());return Tm(t,this._triggerName,n,i,y,d,p,_,k,g,m,w)}}]),e}(),Mm=function(){function e(t,n,i){m(this,e),this.styles=t,this.defaultParams=n,this.normalizer=i}return b(e,[{key:"buildStyles",value:function(e,t){var n=this,i={},r=Bg(this.defaultParams);return Object.keys(e).forEach(function(t){var n=e[t];null!=n&&(r[t]=n)}),this.styles.styles.forEach(function(e){if("string"!=typeof e){var o=e;Object.keys(o).forEach(function(e){var a=o[e];a.length>1&&(a=Yg(a,r,t));var s=n.normalizer.normalizePropertyName(e,t);a=n.normalizer.normalizeStyleValue(e,s,a,t),i[s]=a})}}),i}}]),e}(),Im=function(){function e(t,n,i){var r=this;m(this,e),this.name=t,this.ast=n,this._normalizer=i,this.transitionFactories=[],this.states={},n.states.forEach(function(e){r.states[e.name]=new Mm(e.style,e.options&&e.options.params||{},i)}),Rm(this.states,"true","1"),Rm(this.states,"false","0"),n.transitions.forEach(function(e){r.transitionFactories.push(new Pm(t,e,r.states))}),this.fallbackTransition=function(e,t,n){return new Pm(e,{type:1,animation:{type:2,steps:[],options:null},matchers:[function(e,t){return!0}],options:null,queryCount:0,depCount:0},t)}(t,this.states)}return b(e,[{key:"containsQueries",get:function(){return this.ast.queryCount>0}},{key:"matchTransition",value:function(e,t,n,i){return this.transitionFactories.find(function(r){return r.match(e,t,n,i)})||null}},{key:"matchStyles",value:function(e,t,n){return this.fallbackTransition.buildStyles(e,t,n)}}]),e}();function Rm(e,t,n){e.hasOwnProperty(t)?e.hasOwnProperty(n)||(e[n]=e[t]):e.hasOwnProperty(n)&&(e[t]=e[n])}var Dm=new vm,Nm=function(){function e(t,n,i){m(this,e),this.bodyNode=t,this._driver=n,this._normalizer=i,this._animations={},this._playersById={},this.players=[]}return b(e,[{key:"register",value:function(e,t){var n=[],i=um(this._driver,t,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: ".concat(n.join("\n")));this._animations[e]=i}},{key:"_buildPlayer",value:function(e,t,n){var i=e.element,r=hg(0,this._normalizer,0,e.keyframes,t,n);return this._driver.animate(i,r,e.duration,e.delay,e.easing,[],!0)}},{key:"create",value:function(e,t){var n,i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=[],a=this._animations[e],s=new Map;if(a?(n=ym(this._driver,t,a,Pg,Mg,{},{},r,Dm,o)).forEach(function(e){var t=vg(s,e.element,{});e.postStyleProps.forEach(function(e){return t[e]=null})}):(o.push("The requested animation doesn't exist or has already been destroyed"),n=[]),o.length)throw new Error("Unable to create the animation due to the following errors: ".concat(o.join("\n")));s.forEach(function(e,t){Object.keys(e).forEach(function(n){e[n]=i._driver.computeStyle(t,n,Zv)})});var u=lg(n.map(function(e){var t=s.get(e.element);return i._buildPlayer(e,{},t)}));return this._playersById[e]=u,u.onDestroy(function(){return i.destroy(e)}),this.players.push(u),u}},{key:"destroy",value:function(e){var t=this._getPlayer(e);t.destroy(),delete this._playersById[e];var n=this.players.indexOf(t);n>=0&&this.players.splice(n,1)}},{key:"_getPlayer",value:function(e){var t=this._playersById[e];if(!t)throw new Error("Unable to find the timeline player referenced by ".concat(e));return t}},{key:"listen",value:function(e,t,n,i){var r=pg(t,"","","");return dg(this._getPlayer(e),n,r,i),function(){}}},{key:"command",value:function(e,t,n,i){if("register"!=n)if("create"!=n){var r=this._getPlayer(e);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(e)}}else this.create(e,t,i[0]||{});else this.register(e,i[0])}}]),e}(),Lm="ng-animate-queued",jm="ng-animate-disabled",Fm=".ng-animate-disabled",Bm=[],Vm={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},zm={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Um="__ng_removed",Hm=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";m(this,e),this.namespaceId=n;var i=t&&t.hasOwnProperty("value");if(this.value=function(e){return null!=e?e:null}(i?t.value:t),i){var r=Bg(t);delete r.value,this.options=r}else this.options={};this.options.params||(this.options.params={})}return b(e,[{key:"params",get:function(){return this.options.params}},{key:"absorbOptions",value:function(e){var t=e.params;if(t){var n=this.options.params;Object.keys(t).forEach(function(e){null==n[e]&&(n[e]=t[e])})}}}]),e}(),Gm="void",Wm=new Hm(Gm),qm=function(){function e(t,n,i){m(this,e),this.id=t,this.hostElement=n,this._engine=i,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,ey(n,this._hostClassName)}return b(e,[{key:"listen",value:function(e,t,n,i){var r=this;if(!this._triggers.hasOwnProperty(t))throw new Error('Unable to listen on the animation trigger event "'.concat(n,'" because the animation trigger "').concat(t,"\" doesn't exist!"));if(null==n||0==n.length)throw new Error('Unable to listen on the animation trigger "'.concat(t,'" because the provided event is undefined!'));if(!function(e){return"start"==e||"done"==e}(n))throw new Error('The provided animation trigger event "'.concat(n,'" for the animation trigger "').concat(t,'" is not supported!'));var o=vg(this._elementListeners,e,[]),a={name:t,phase:n,callback:i};o.push(a);var s=vg(this._engine.statesByElement,e,{});return s.hasOwnProperty(t)||(ey(e,Ig),ey(e,Ig+"-"+t),s[t]=Wm),function(){r._engine.afterFlush(function(){var e=o.indexOf(a);e>=0&&o.splice(e,1),r._triggers[t]||delete s[t]})}}},{key:"register",value:function(e,t){return!this._triggers[e]&&(this._triggers[e]=t,!0)}},{key:"_getTrigger",value:function(e){var t=this._triggers[e];if(!t)throw new Error('The provided animation trigger "'.concat(e,'" has not been registered!'));return t}},{key:"trigger",value:function(e,t,n){var i=this,r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=this._getTrigger(t),a=new Ym(this.id,t,e),s=this._engine.statesByElement.get(e);s||(ey(e,Ig),ey(e,Ig+"-"+t),this._engine.statesByElement.set(e,s={}));var u=s[t],c=new Hm(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&u&&c.absorbOptions(u.options),s[t]=c,u||(u=Wm),c.value===Gm||u.value!==c.value){var l=vg(this._engine.playersByElement,e,[]);l.forEach(function(e){e.namespaceId==i.id&&e.triggerName==t&&e.queued&&e.destroy()});var h=o.matchTransition(u.value,c.value,e,c.params),d=!1;if(!h){if(!r)return;h=o.fallbackTransition,d=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:t,transition:h,fromState:u,toState:c,player:a,isFallbackTransition:d}),d||(ey(e,Lm),a.onStart(function(){ty(e,Lm)})),a.onDone(function(){var t=i.players.indexOf(a);t>=0&&i.players.splice(t,1);var n=i._engine.playersByElement.get(e);if(n){var r=n.indexOf(a);r>=0&&n.splice(r,1)}}),this.players.push(a),l.push(a),a}if(!function(e,t){var n=Object.keys(e),i=Object.keys(t);if(n.length!=i.length)return!1;for(var r=0;r=0){for(var i=!1,r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,t)){this._namespaceList.splice(r+1,0,e),i=!0;break}i||this._namespaceList.splice(0,0,e)}else this._namespaceList.push(e);return this.namespacesByHostElement.set(t,e),e}},{key:"register",value:function(e,t){var n=this._namespaceLookup[e];return n||(n=this.createNamespace(e,t)),n}},{key:"registerTrigger",value:function(e,t,n){var i=this._namespaceLookup[e];i&&i.register(t,n)&&this.totalAnimations++}},{key:"destroy",value:function(e,t){var n=this;if(e){var i=this._fetchNamespace(e);this.afterFlush(function(){n.namespacesByHostElement.delete(i.hostElement),delete n._namespaceLookup[e];var t=n._namespaceList.indexOf(i);t>=0&&n._namespaceList.splice(t,1)}),this.afterFlushAnimationsDone(function(){return i.destroy(t)})}}},{key:"_fetchNamespace",value:function(e){return this._namespaceLookup[e]}},{key:"fetchNamespacesByElement",value:function(e){var t=new Set,n=this.statesByElement.get(e);if(n)for(var i=Object.keys(n),r=0;r=0&&this.collectedLeaveElements.splice(o,1)}if(e){var a=this._fetchNamespace(e);a&&a.insertNode(t,n)}i&&this.collectEnterElement(t)}}},{key:"collectEnterElement",value:function(e){this.collectedEnterElements.push(e)}},{key:"markElementAsDisabled",value:function(e,t){t?this.disabledNodes.has(e)||(this.disabledNodes.add(e),ey(e,jm)):this.disabledNodes.has(e)&&(this.disabledNodes.delete(e),ty(e,jm))}},{key:"removeNode",value:function(e,t,n,i){if(Km(t)){var r=e?this._fetchNamespace(e):null;if(r?r.removeNode(t,i):this.markElementAsRemoved(e,t,!1,i),n){var o=this.namespacesByHostElement.get(t);o&&o.id!==e&&o.removeNode(t,i)}}else this._onRemovalComplete(t,i)}},{key:"markElementAsRemoved",value:function(e,t,n,i){this.collectedLeaveElements.push(t),t[Um]={namespaceId:e,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}},{key:"listen",value:function(e,t,n,i,r){return Km(t)?this._fetchNamespace(e).listen(t,n,i,r):function(){}}},{key:"_buildInstruction",value:function(e,t,n,i,r){return e.transition.build(this.driver,e.element,e.fromState.value,e.toState.value,n,i,e.fromState.options,e.toState.options,t,r)}},{key:"destroyInnerAnimations",value:function(e){var t=this,n=this.driver.query(e,Rg,!0);n.forEach(function(e){return t.destroyActiveAnimationsForElement(e)}),0!=this.playersByQueriedElement.size&&(n=this.driver.query(e,Ng,!0)).forEach(function(e){return t.finishActiveQueriedAnimationOnElement(e)})}},{key:"destroyActiveAnimationsForElement",value:function(e){var t=this.playersByElement.get(e);t&&t.forEach(function(e){e.queued?e.markedForDestroy=!0:e.destroy()})}},{key:"finishActiveQueriedAnimationOnElement",value:function(e){var t=this.playersByQueriedElement.get(e);t&&t.forEach(function(e){return e.finish()})}},{key:"whenRenderingDone",value:function(){var e=this;return new Promise(function(t){if(e.players.length)return lg(e.players).onDone(function(){return t()});t()})}},{key:"processLeaveNode",value:function(e){var t=this,n=e[Um];if(n&&n.setForRemoval){if(e[Um]=Vm,n.namespaceId){this.destroyInnerAnimations(e);var i=this._fetchNamespace(n.namespaceId);i&&i.clearElementCache(e)}this._onRemovalComplete(e,n.setForRemoval)}this.driver.matchesElement(e,Fm)&&this.markElementAsDisabled(e,!1),this.driver.query(e,Fm,!0).forEach(function(e){t.markElementAsDisabled(e,!1)})}},{key:"flush",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=[];if(this.newHostElements.size&&(this.newHostElements.forEach(function(t,n){return e._balanceNamespaceList(t,n)}),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(var i=0;i=0;O--)this._namespaceList[O].drainQueuedTransitions(t).forEach(function(e){var t=e.player,o=e.element;if(E.push(t),n.collectedEnterElements.length){var l=o[Um];if(l&&l.setForMove)return void t.destroy()}var d=!h||!n.driver.containsElement(h,o),f=x.get(o),v=p.get(o),g=n._buildInstruction(e,i,v,f,d);if(g.errors&&g.errors.length)C.push(g);else{if(d)return t.onStart(function(){return Gg(o,g.fromStyles)}),t.onDestroy(function(){return Hg(o,g.toStyles)}),void r.push(t);if(e.isFallbackTransition)return t.onStart(function(){return Gg(o,g.fromStyles)}),t.onDestroy(function(){return Hg(o,g.toStyles)}),void r.push(t);g.timelines.forEach(function(e){return e.stretchStartingKeyframe=!0}),i.append(o,g.timelines),a.push({instruction:g,player:t,element:o}),g.queriedElements.forEach(function(e){return vg(s,e,[]).push(t)}),g.preStyleProps.forEach(function(e,t){var n=Object.keys(e);if(n.length){var i=u.get(t);i||u.set(t,i=new Set),n.forEach(function(e){return i.add(e)})}}),g.postStyleProps.forEach(function(e,t){var n=Object.keys(e),i=c.get(t);i||c.set(t,i=new Set),n.forEach(function(e){return i.add(e)})})}});if(C.length){var T=[];C.forEach(function(e){T.push("@".concat(e.triggerName," has failed due to:\n")),e.errors.forEach(function(e){return T.push("- ".concat(e,"\n"))})}),E.forEach(function(e){return e.destroy()}),this.reportError(T)}var A=new Map,P=new Map;a.forEach(function(e){var t=e.element;i.has(t)&&(P.set(t,t),n._beforeAnimationBuild(e.player.namespaceId,e.instruction,A))}),r.forEach(function(e){var t=e.element;n._getPreviousPlayers(t,!1,e.namespaceId,e.triggerName,null).forEach(function(e){vg(A,t,[]).push(e),e.destroy()})});var M=m.filter(function(e){return ry(e,u,c)}),I=new Map;Qm(I,this.driver,b,c,Zv).forEach(function(e){ry(e,u,c)&&M.push(e)});var R=new Map;f.forEach(function(e,t){Qm(R,n.driver,new Set(e),u,"!")}),M.forEach(function(e){var t=I.get(e),n=R.get(e);I.set(e,Object.assign(Object.assign({},t),n))});var D=[],N=[],L={};a.forEach(function(e){var t=e.element,a=e.player,s=e.instruction;if(i.has(t)){if(l.has(t))return a.onDestroy(function(){return Hg(t,s.toStyles)}),a.disabled=!0,a.overrideTotalTime(s.totalTime),void r.push(a);var u=L;if(P.size>1){for(var c=t,h=[];c=c.parentNode;){var d=P.get(c);if(d){u=d;break}h.push(c)}h.forEach(function(e){return P.set(e,u)})}var f=n._buildAnimation(a.namespaceId,s,A,o,R,I);if(a.setRealPlayer(f),u===L)D.push(a);else{var p=n.playersByElement.get(u);p&&p.length&&(a.parentPlayer=lg(p)),r.push(a)}}else Gg(t,s.fromStyles),a.onDestroy(function(){return Hg(t,s.toStyles)}),N.push(a),l.has(t)&&r.push(a)}),N.forEach(function(e){var t=o.get(e.element);if(t&&t.length){var n=lg(t);e.setRealPlayer(n)}}),r.forEach(function(e){e.parentPlayer?e.syncPlayerEvents(e.parentPlayer):e.destroy()});for(var j=0;j0?this.driver.animate(e.element,t,e.duration,e.delay,e.easing,n):new ag(e.duration,e.delay)}}]),e}(),Ym=function(){function e(t,n,i){m(this,e),this.namespaceId=t,this.triggerName=n,this.element=i,this._player=new ag,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}return b(e,[{key:"setRealPlayer",value:function(e){var t=this;this._containsRealPlayer||(this._player=e,Object.keys(this._queuedCallbacks).forEach(function(n){t._queuedCallbacks[n].forEach(function(t){return dg(e,n,void 0,t)})}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(e.totalTime),this.queued=!1)}},{key:"getRealPlayer",value:function(){return this._player}},{key:"overrideTotalTime",value:function(e){this.totalTime=e}},{key:"syncPlayerEvents",value:function(e){var t=this,n=this._player;n.triggerCallback&&e.onStart(function(){return n.triggerCallback("start")}),e.onDone(function(){return t.finish()}),e.onDestroy(function(){return t.destroy()})}},{key:"_queueEvent",value:function(e,t){vg(this._queuedCallbacks,e,[]).push(t)}},{key:"onDone",value:function(e){this.queued&&this._queueEvent("done",e),this._player.onDone(e)}},{key:"onStart",value:function(e){this.queued&&this._queueEvent("start",e),this._player.onStart(e)}},{key:"onDestroy",value:function(e){this.queued&&this._queueEvent("destroy",e),this._player.onDestroy(e)}},{key:"init",value:function(){this._player.init()}},{key:"hasStarted",value:function(){return!this.queued&&this._player.hasStarted()}},{key:"play",value:function(){!this.queued&&this._player.play()}},{key:"pause",value:function(){!this.queued&&this._player.pause()}},{key:"restart",value:function(){!this.queued&&this._player.restart()}},{key:"finish",value:function(){this._player.finish()}},{key:"destroy",value:function(){this.destroyed=!0,this._player.destroy()}},{key:"reset",value:function(){!this.queued&&this._player.reset()}},{key:"setPosition",value:function(e){this.queued||this._player.setPosition(e)}},{key:"getPosition",value:function(){return this.queued?0:this._player.getPosition()}},{key:"triggerCallback",value:function(e){var t=this._player;t.triggerCallback&&t.triggerCallback(e)}}]),e}();function Km(e){return e&&1===e.nodeType}function $m(e,t){var n=e.style.display;return e.style.display=null!=t?t:"none",n}function Qm(e,t,n,i,r){var o=[];n.forEach(function(e){return o.push($m(e))});var a=[];i.forEach(function(n,i){var o={};n.forEach(function(e){var n=o[e]=t.computeStyle(i,e,r);(!n||0==n.length)&&(i[Um]=zm,a.push(i))}),e.set(i,o)});var s=0;return n.forEach(function(e){return $m(e,o[s++])}),a}function Zm(e,t){var n=new Map;if(e.forEach(function(e){return n.set(e,[])}),0==t.length)return n;var i=new Set(t),r=new Map;function o(e){if(!e)return 1;var t=r.get(e);if(t)return t;var a=e.parentNode;return t=n.has(a)?a:i.has(a)?1:o(a),r.set(e,t),t}return t.forEach(function(e){var t=o(e);1!==t&&n.get(t).push(e)}),n}var Jm="$$classes";function ey(e,t){if(e.classList)e.classList.add(t);else{var n=e[Jm];n||(n=e[Jm]={}),n[t]=!0}}function ty(e,t){if(e.classList)e.classList.remove(t);else{var n=e[Jm];n&&delete n[t]}}function ny(e,t,n){lg(n).onDone(function(){return e.processLeaveNode(t)})}function iy(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:-1;this._transitionEngine.flush(e)}},{key:"players",get:function(){return this._transitionEngine.players.concat(this._timelineEngine.players)}},{key:"whenRenderingDone",value:function(){return this._transitionEngine.whenRenderingDone()}}]),e}();function ay(e,t){var n=null,i=null;return Array.isArray(t)&&t.length?(n=uy(t[0]),t.length>1&&(i=uy(t[t.length-1]))):t&&(n=uy(t)),n||i?new sy(e,n,i):null}var sy=function(){function e(t,n,i){m(this,e),this._element=t,this._startStyles=n,this._endStyles=i,this._state=0;var r=e.initialStylesByElement.get(t);r||e.initialStylesByElement.set(t,r={}),this._initialStyles=r}return b(e,[{key:"start",value:function(){this._state<1&&(this._startStyles&&Hg(this._element,this._startStyles,this._initialStyles),this._state=1)}},{key:"finish",value:function(){this.start(),this._state<2&&(Hg(this._element,this._initialStyles),this._endStyles&&(Hg(this._element,this._endStyles),this._endStyles=null),this._state=1)}},{key:"destroy",value:function(){this.finish(),this._state<3&&(e.initialStylesByElement.delete(this._element),this._startStyles&&(Gg(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Gg(this._element,this._endStyles),this._endStyles=null),Hg(this._element,this._initialStyles),this._state=3)}}]),e}();function uy(e){for(var t=null,n=Object.keys(e),i=0;i=this._delay&&n>=this._duration&&this.finish()}},{key:"finish",value:function(){this._finished||(this._finished=!0,this._onDoneFn(),gy(this._element,this._eventFn,!0))}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.finish(),function(e,t){var n=yy(e,"").split(","),i=vy(n,t);i>=0&&(n.splice(i,1),my(e,"",n.join(",")))}(this._element,this._name))}}]),e}();function fy(e,t,n){my(e,"PlayState",n,py(e,t))}function py(e,t){var n=yy(e,"");return n.indexOf(",")>0?vy(n.split(","),t):vy([n],t)}function vy(e,t){for(var n=0;n=0)return n;return-1}function gy(e,t,n){n?e.removeEventListener(hy,t):e.addEventListener(hy,t)}function my(e,t,n,i){var r=ly+t;if(null!=i){var o=e.style[r];if(o.length){var a=o.split(",");a[i]=n,n=a.join(",")}}e.style[r]=n}function yy(e,t){return e.style[ly+t]||""}var by=function(){function e(t,n,i,r,o,a,s,u){m(this,e),this.element=t,this.keyframes=n,this.animationName=i,this._duration=r,this._delay=o,this._finalStyles=s,this._specialStyles=u,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=a||"linear",this.totalTime=r+o,this._buildStyler()}return b(e,[{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"destroy",value:function(){this.init(),!(this._state>=4)&&(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"_flushDoneFns",value:function(){this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[]}},{key:"_flushStartFns",value:function(){this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[]}},{key:"finish",value:function(){this.init(),!(this._state>=3)&&(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}},{key:"setPosition",value:function(e){this._styler.setPosition(e)}},{key:"getPosition",value:function(){return this._styler.getPosition()}},{key:"hasStarted",value:function(){return this._state>=2}},{key:"init",value:function(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}},{key:"play",value:function(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}},{key:"pause",value:function(){this.init(),this._styler.pause()}},{key:"restart",value:function(){this.reset(),this.play()}},{key:"reset",value:function(){this._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}},{key:"_buildStyler",value:function(){var e=this;this._styler=new dy(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",function(){return e.finish()})}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}},{key:"beforeDestroy",value:function(){var e=this;this.init();var t={};if(this.hasStarted()){var n=this._state>=3;Object.keys(this._finalStyles).forEach(function(i){"offset"!=i&&(t[i]=n?e._finalStyles[i]:nm(e.element,i))})}this.currentSnapshot=t}}]),e}(),_y=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this)).element=e,r._startingStyles={},r.__initialized=!1,r._styles=Og(t),r}return b(i,[{key:"init",value:function(){var t=this;this.__initialized||!this._startingStyles||(this.__initialized=!0,Object.keys(this._styles).forEach(function(e){t._startingStyles[e]=t.element.style[e]}),e(p(i.prototype),"init",this).call(this))}},{key:"play",value:function(){var t=this;!this._startingStyles||(this.init(),Object.keys(this._styles).forEach(function(e){return t.element.style.setProperty(e,t._styles[e])}),e(p(i.prototype),"play",this).call(this))}},{key:"destroy",value:function(){var t=this;!this._startingStyles||(Object.keys(this._startingStyles).forEach(function(e){var n=t._startingStyles[e];n?t.element.style.setProperty(e,n):t.element.style.removeProperty(e)}),this._startingStyles=null,e(p(i.prototype),"destroy",this).call(this))}}]),i}(ag),wy=function(){function e(){m(this,e),this._count=0}return b(e,[{key:"validateStyleProperty",value:function(e){return xg(e)}},{key:"matchesElement",value:function(e,t){return Sg(e,t)}},{key:"containsElement",value:function(e,t){return Eg(e,t)}},{key:"query",value:function(e,t,n){return Cg(e,t,n)}},{key:"computeStyle",value:function(e,t,n){return window.getComputedStyle(e)[t]}},{key:"buildKeyframeElement",value:function(e,t,n){n=n.map(function(e){return Og(e)});var i="@keyframes ".concat(t," {\n"),r="";n.forEach(function(e){r=" ";var t=parseFloat(e.offset);i+="".concat(r).concat(100*t,"% {\n"),r+=" ",Object.keys(e).forEach(function(t){var n=e[t];switch(t){case"offset":return;case"easing":return void(n&&(i+="".concat(r,"animation-timing-function: ").concat(n,";\n")));default:return void(i+="".concat(r).concat(t,": ").concat(n,";\n"))}}),i+="".concat(r,"}\n")}),i+="}\n";var o=document.createElement("style");return o.textContent=i,o}},{key:"animate",value:function(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=o.filter(function(e){return e instanceof by}),s={};Jg(n,i)&&a.forEach(function(e){var t=e.currentSnapshot;Object.keys(t).forEach(function(e){return s[e]=t[e]})});var u=function(e){var t={};return e&&(Array.isArray(e)?e:[e]).forEach(function(e){Object.keys(e).forEach(function(n){"offset"==n||"easing"==n||(t[n]=e[n])})}),t}(t=em(e,t,s));if(0==n)return new _y(e,u);var c="gen_css_kf_"+this._count++,l=this.buildKeyframeElement(e,c,t);(function(e){var t,n=null===(t=e.getRootNode)||void 0===t?void 0:t.call(e);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head})(e).appendChild(l);var h=ay(e,t),d=new by(e,t,c,n,i,r,u,h);return d.onDestroy(function(){return function(e){e.parentNode.removeChild(e)}(l)}),d}}]),e}(),ky=function(){function e(t,n,i,r){m(this,e),this.element=t,this.keyframes=n,this.options=i,this._specialStyles=r,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=i.duration,this._delay=i.delay||0,this.time=this._duration+this._delay}return b(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"init",value:function(){this._buildPlayer(),this._preparePlayerBeforeStart()}},{key:"_buildPlayer",value:function(){var e=this;if(!this._initialized){this._initialized=!0;var t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",function(){return e._onFinish()})}}},{key:"_preparePlayerBeforeStart",value:function(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}},{key:"_triggerWebAnimation",value:function(e,t,n){return e.animate(t,n)}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"play",value:function(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}},{key:"pause",value:function(){this.init(),this.domPlayer.pause()}},{key:"finish",value:function(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}},{key:"reset",value:function(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"_resetDomPlayerState",value:function(){this.domPlayer&&this.domPlayer.cancel()}},{key:"restart",value:function(){this.reset(),this.play()}},{key:"hasStarted",value:function(){return this._started}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"setPosition",value:function(e){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=e*this.time}},{key:"getPosition",value:function(){return this.domPlayer.currentTime/this.time}},{key:"totalTime",get:function(){return this._delay+this._duration}},{key:"beforeDestroy",value:function(){var e=this,t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(function(n){"offset"!=n&&(t[n]=e._finished?e._finalKeyframe[n]:nm(e.element,n))}),this.currentSnapshot=t}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),xy=function(){function e(){m(this,e),this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(Sy().toString()),this._cssKeyframesDriver=new wy}return b(e,[{key:"validateStyleProperty",value:function(e){return xg(e)}},{key:"matchesElement",value:function(e,t){return Sg(e,t)}},{key:"containsElement",value:function(e,t){return Eg(e,t)}},{key:"query",value:function(e,t,n){return Cg(e,t,n)}},{key:"computeStyle",value:function(e,t,n){return window.getComputedStyle(e)[t]}},{key:"overrideWebAnimationsSupport",value:function(e){this._isNativeImpl=e}},{key:"animate",value:function(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=arguments.length>6?arguments[6]:void 0;if(!a&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(e,t,n,i,r,o);var s={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(s.easing=r);var u={},c=o.filter(function(e){return e instanceof ky});Jg(n,i)&&c.forEach(function(e){var t=e.currentSnapshot;Object.keys(t).forEach(function(e){return u[e]=t[e]})});var l=ay(e,t=em(e,t=t.map(function(e){return Vg(e,!1)}),u));return new ky(e,t,s,l)}}]),e}();function Sy(){return ug()&&Element.prototype.animate||{}}var Ey=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this))._nextAnimationId=0,r._renderer=e.createRenderer(i.body,{id:"0",encapsulation:ct.None,styles:[],data:{animation:[]}}),r}return b(n,[{key:"build",value:function(e){var t=this._nextAnimationId.toString();this._nextAnimationId++;var n=Array.isArray(e)?tg(e):e;return Ty(this._renderer,null,t,"register",[n]),new Cy(t,this._renderer)}}]),n}(Qv);return e.\u0275fac=function(t){return new(t||e)(Ki($u),Ki(hh))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Cy=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this))._id=e,r._renderer=i,r}return b(n,[{key:"create",value:function(e,t){return new Oy(this._id,e,t||{},this._renderer)}}]),n}(function(){return function e(){m(this,e)}}()),Oy=function(){function e(t,n,i,r){m(this,e),this.id=t,this.element=n,this._renderer=r,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",i)}return b(e,[{key:"_listen",value:function(e,t){return this._renderer.listen(this.element,"@@".concat(this.id,":").concat(e),t)}},{key:"_command",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i=0&&e3&&void 0!==arguments[3])||arguments[3];this.delegate.insertBefore(e,t,n),this.engine.onInsert(this.namespaceId,t,e,i)}},{key:"removeChild",value:function(e,t,n){this.engine.onRemove(this.namespaceId,t,this.delegate,n)}},{key:"selectRootElement",value:function(e,t){return this.delegate.selectRootElement(e,t)}},{key:"parentNode",value:function(e){return this.delegate.parentNode(e)}},{key:"nextSibling",value:function(e){return this.delegate.nextSibling(e)}},{key:"setAttribute",value:function(e,t,n,i){this.delegate.setAttribute(e,t,n,i)}},{key:"removeAttribute",value:function(e,t,n){this.delegate.removeAttribute(e,t,n)}},{key:"addClass",value:function(e,t){this.delegate.addClass(e,t)}},{key:"removeClass",value:function(e,t){this.delegate.removeClass(e,t)}},{key:"setStyle",value:function(e,t,n,i){this.delegate.setStyle(e,t,n,i)}},{key:"removeStyle",value:function(e,t,n){this.delegate.removeStyle(e,t,n)}},{key:"setProperty",value:function(e,t,n){"@"==t.charAt(0)&&t==Ay?this.disableAnimations(e,!!n):this.delegate.setProperty(e,t,n)}},{key:"setValue",value:function(e,t){this.delegate.setValue(e,t)}},{key:"listen",value:function(e,t,n){return this.delegate.listen(e,t,n)}},{key:"disableAnimations",value:function(e,t){this.engine.disableAnimations(e,t)}}]),e}(),Iy=function(e){a(i,e);var n=s(i);function i(e,t,r,o){var a;return m(this,i),(a=n.call(this,t,r,o)).factory=e,a.namespaceId=t,a}return b(i,[{key:"setProperty",value:function(e,t,n){"@"==t.charAt(0)?"."==t.charAt(1)&&t==Ay?this.disableAnimations(e,n=void 0===n||!!n):this.engine.process(this.namespaceId,e,t.substr(1),n):this.delegate.setProperty(e,t,n)}},{key:"listen",value:function(e,n,i){var r=this;if("@"==n.charAt(0)){var o,a=function(e){switch(e){case"body":return document.body;case"document":return document;case"window":return window;default:return e}}(e),s=n.substr(1),u="";return"@"!=s.charAt(0)&&(s=(o=t(function(e){var t=e.indexOf(".");return[e.substring(0,t),e.substr(t+1)]}(s),2))[0],u=o[1]),this.engine.listen(this.namespaceId,a,s,u,function(e){r.factory.scheduleListenerCallback(e._data||-1,i,e)})}return this.delegate.listen(e,n,i)}}]),i}(My),Ry=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){return m(this,n),t.call(this,e.body,i,r)}return b(n,[{key:"ngOnDestroy",value:function(){this.flush()}}]),n}(oy);return e.\u0275fac=function(t){return new(t||e)(Ki(hh),Ki(Ag),Ki(Em))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Dy=new Pi("AnimationModuleType"),Ny=[{provide:Qv,useClass:Ey},{provide:Em,useFactory:function(){return new Cm}},{provide:oy,useClass:Ry},{provide:$u,useFactory:function(e,t,n){return new Py(e,t,n)},deps:[vd,oy,Bl]}],Ly=[{provide:Ag,useFactory:function(){return"function"==typeof Sy()?new xy:new wy}},{provide:Dy,useValue:"BrowserAnimations"}].concat(Ny),jy=[{provide:Ag,useClass:Tg},{provide:Dy,useValue:"NoopAnimations"}].concat(Ny),Fy=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"withConfig",value:function(t){return{ngModule:e,providers:t.disableAnimations?jy:Ly}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:Ly,imports:[Ad]}),e}();function By(e,t){if(1&e&&As(0,"mat-pseudo-checkbox",4),2&e){var n=Us();Es("state",n.selected?"checked":"unchecked")("disabled",n.disabled)}}function Vy(e,t){if(1&e&&(Os(0,"span",5),wu(1),Ts()),2&e){var n=Us();Wo(1),xu("(",n.group.label,")")}}var zy=["*"],Uy=new ec("12.2.5"),Hy=new Pi("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}}),Gy=function(){var e=function(){function e(t,n,i){m(this,e),this._hasDoneGlobalChecks=!1,this._document=i,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=n,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}return b(e,[{key:"_getWindow",value:function(){var e=this._document.defaultView||window;return"object"==typeof e&&e?e:null}},{key:"_checkIsEnabled",value:function(e){return!(!Zl()||this._isTestEnv())&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[e])}},{key:"_isTestEnv",value:function(){var e=this._getWindow();return e&&(e.__karma__||e.jasmine)}},{key:"_checkDoctypeIsDefined",value:function(){this._checkIsEnabled("doctype")&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}},{key:"_checkThemeIsPresent",value:function(){if(this._checkIsEnabled("theme")&&this._document.body&&"function"==typeof getComputedStyle){var e=this._document.createElement("div");e.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(e);var t=getComputedStyle(e);t&&"none"!==t.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"),this._document.body.removeChild(e)}}},{key:"_checkCdkVersionMatch",value:function(){this._checkIsEnabled("version")&&Uy.full!==$v.full&&console.warn("The Angular Material version ("+Uy.full+") does not match the Angular CDK version ("+$v.full+").\nPlease ensure the versions of these two packages exactly match.")}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Yv),Ki(Hy,8),Ki(hh))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[zf],zf]}),e}();function Wy(e){return function(e){a(n,e);var t=s(n);function n(){var e;m(this,n);for(var i=arguments.length,r=new Array(i),o=0;o1&&void 0!==arguments[1]?arguments[1]:0;return function(e){a(i,e);var n=s(i);function i(){var e;m(this,i);for(var r=arguments.length,o=new Array(r),a=0;a2&&void 0!==arguments[2]?arguments[2]:{},r=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),o=Object.assign(Object.assign({},Zy),i.animation);i.centered&&(e=r.left+r.width/2,t=r.top+r.height/2);var a=i.radius||function(e,t,n){var i=Math.max(Math.abs(e-n.left),Math.abs(e-n.right)),r=Math.max(Math.abs(t-n.top),Math.abs(t-n.bottom));return Math.sqrt(i*i+r*r)}(e,t,r),s=e-r.left,u=t-r.top,c=o.enterDuration,l=document.createElement("div");l.classList.add("mat-ripple-element"),l.style.left=s-a+"px",l.style.top=u-a+"px",l.style.height=2*a+"px",l.style.width=2*a+"px",null!=i.color&&(l.style.backgroundColor=i.color),l.style.transitionDuration="".concat(c,"ms"),this._containerElement.appendChild(l),function(e){window.getComputedStyle(e).getPropertyValue("opacity")}(l),l.style.transform="scale(1)";var h=new Qy(this,l,i);return h.state=0,this._activeRipples.add(h),i.persistent||(this._mostRecentTransientRipple=h),this._runTimeoutOutsideZone(function(){var e=h===n._mostRecentTransientRipple;h.state=1,!i.persistent&&(!e||!n._isPointerDown)&&h.fadeOut()},c),h}},{key:"fadeOutRipple",value:function(e){var t=this._activeRipples.delete(e);if(e===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),t){var n=e.element,i=Object.assign(Object.assign({},Zy),e.config.animation);n.style.transitionDuration="".concat(i.exitDuration,"ms"),n.style.opacity="0",e.state=2,this._runTimeoutOutsideZone(function(){e.state=3,n.parentNode.removeChild(n)},i.exitDuration)}}},{key:"fadeOutAll",value:function(){this._activeRipples.forEach(function(e){return e.fadeOut()})}},{key:"fadeOutAllNonPersistent",value:function(){this._activeRipples.forEach(function(e){e.config.persistent||e.fadeOut()})}},{key:"setupTriggerEvents",value:function(e){var t=Dd(e);!t||t===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=t,this._registerEvents(eb))}},{key:"handleEvent",value:function(e){"mousedown"===e.type?this._onMousedown(e):"touchstart"===e.type?this._onTouchStart(e):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(tb),this._pointerUpEventsRegistered=!0)}},{key:"_onMousedown",value:function(e){var t=Rv(e),n=this._lastTouchStartEvent&&Date.now()1&&void 0!==arguments[1]?arguments[1]:0;this._ngZone.runOutsideAngular(function(){return setTimeout(e,t)})}},{key:"_registerEvents",value:function(e){var t=this;this._ngZone.runOutsideAngular(function(){e.forEach(function(e){t._triggerElement.addEventListener(e,t,Jy)})})}},{key:"_removeTriggerEvents",value:function(){var e=this;this._triggerElement&&(eb.forEach(function(t){e._triggerElement.removeEventListener(t,e,Jy)}),this._pointerUpEventsRegistered&&tb.forEach(function(t){e._triggerElement.removeEventListener(t,e,Jy)}))}}]),e}(),ib=new Pi("mat-ripple-global-options"),rb=function(){var e=function(){function e(t,n,i,r,o){m(this,e),this._elementRef=t,this._animationMode=o,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=r||{},this._rippleRenderer=new nb(this,n,t,i)}return b(e,[{key:"disabled",get:function(){return this._disabled},set:function(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}},{key:"trigger",get:function(){return this._trigger||this._elementRef.nativeElement},set:function(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}},{key:"ngOnInit",value:function(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}},{key:"ngOnDestroy",value:function(){this._rippleRenderer._removeTriggerEvents()}},{key:"fadeOutAll",value:function(){this._rippleRenderer.fadeOutAll()}},{key:"fadeOutAllNonPersistent",value:function(){this._rippleRenderer.fadeOutAllNonPersistent()}},{key:"rippleConfig",get:function(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}},{key:"rippleDisabled",get:function(){return this.disabled||!!this._globalOptions.disabled}},{key:"_setupTriggerEventsIfEnabled",value:function(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}},{key:"launch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,t,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Bl),Ss(Mf),Ss(ib,8),Ss(Dy,8))},e.\u0275dir=Mt({type:e,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(e,t){2&e&&au("mat-ripple-unbounded",t.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),e}(),ob=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy,If],Gy]}),e}(),ab=function(){var e=function e(t){m(this,e),this._animationMode=t,this.state="unchecked",this.disabled=!1};return e.\u0275fac=function(t){return new(t||e)(Ss(Dy,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(e,t){2&e&&au("mat-pseudo-checkbox-indeterminate","indeterminate"===t.state)("mat-pseudo-checkbox-checked","checked"===t.state)("mat-pseudo-checkbox-disabled",t.disabled)("_mat-animation-noopable","NoopAnimations"===t._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(e,t){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),e}(),sb=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy]]}),e}(),ub=new Pi("MAT_OPTION_PARENT_COMPONENT"),cb=Wy(function(){return function e(){m(this,e)}}()),lb=0,hb=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i,r;return m(this,n),(i=t.call(this))._labelId="mat-optgroup-label-"+lb++,i._inert=null!==(r=null==e?void 0:e.inertGroups)&&void 0!==r&&r,i}return n}(cb);return e.\u0275fac=function(t){return new(t||e)(Ss(ub,8))},e.\u0275dir=Mt({type:e,inputs:{label:"label"},features:[as]}),e}(),db=new Pi("MatOptgroup"),fb=0,pb=function e(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];m(this,e),this.source=t,this.isUserInput=n},vb=function(){var e=function(){function e(t,n,i,r){m(this,e),this._element=t,this._changeDetectorRef=n,this._parent=i,this.group=r,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+fb++,this.onSelectionChange=new Qc,this._stateChanges=new re}return b(e,[{key:"multiple",get:function(){return this._parent&&this._parent.multiple}},{key:"selected",get:function(){return this._selected}},{key:"disabled",get:function(){return this.group&&this.group.disabled||this._disabled},set:function(e){this._disabled=Pd(e)}},{key:"disableRipple",get:function(){return this._parent&&this._parent.disableRipple}},{key:"active",get:function(){return this._active}},{key:"viewValue",get:function(){return(this._getHostElement().textContent||"").trim()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"focus",value:function(e,t){var n=this._getHostElement();"function"==typeof n.focus&&n.focus(t)}},{key:"setActiveStyles",value:function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}},{key:"setInactiveStyles",value:function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}},{key:"getLabel",value:function(){return this.viewValue}},{key:"_handleKeydown",value:function(e){(13===e.keyCode||32===e.keyCode)&&!hp(e)&&(this._selectViaInteraction(),e.preventDefault())}},{key:"_selectViaInteraction",value:function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}},{key:"_getAriaSelected",value:function(){return this.selected||!this.multiple&&null}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._element.nativeElement}},{key:"ngAfterViewChecked",value:function(){if(this._selected){var e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue=e,this._stateChanges.next())}}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"_emitSelectionChangeEvent",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.onSelectionChange.emit(new pb(this,e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(_c),Ss(void 0),Ss(hb))},e.\u0275dir=Mt({type:e,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),e}(),gb=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o){return m(this,n),t.call(this,e,i,r,o)}return n}(vb);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(_c),Ss(ub,8),Ss(db,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(e,t){1&e&&js("click",function(){return t._selectViaInteraction()})("keydown",function(e){return t._handleKeydown(e)}),2&e&&(Cu("id",t.id),bs("tabindex",t._getTabIndex())("aria-selected",t._getAriaSelected())("aria-disabled",t.disabled.toString()),au("mat-selected",t.selected)("mat-option-multiple",t.multiple)("mat-active",t.active)("mat-option-disabled",t.disabled))},exportAs:["matOption"],features:[as],ngContentSelectors:zy,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(e,t){1&e&&(Gs(),ks(0,By,1,2,"mat-pseudo-checkbox",0),Os(1,"span",1),Ws(2),Ts(),ks(3,Vy,2,1,"span",2),As(4,"div",3)),2&e&&(Es("ngIf",t.multiple),Wo(3),Es("ngIf",t.group&&t.group._inert),Wo(1),Es("matRippleTrigger",t._getHostElement())("matRippleDisabled",t.disabled||t.disableRipple))},directives:[Nh,rb,ab],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),e}();function mb(e,t,n){if(n.length){for(var i=t.toArray(),r=n.toArray(),o=0,a=0;an+i?Math.max(0,e-i+t):n}var bb=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[ob,Yh,Gy,sb]]}),e}();function _b(){for(var e=arguments.length,t=new Array(e),n=0;n0){var i=e.slice(0,t),r=i.toLowerCase(),o=e.slice(t+1).trim();n.maybeSetNormalizedName(i,r),n.headers.has(r)?n.headers.get(r).push(o):n.headers.set(r,[o])}})}:function(){n.headers=new Map,Object.keys(t).forEach(function(e){var i=t[e],r=e.toLowerCase();"string"==typeof i&&(i=[i]),i.length>0&&(n.headers.set(r,i),n.maybeSetNormalizedName(e,r))})}:this.headers=new Map}return b(e,[{key:"has",value:function(e){return this.init(),this.headers.has(e.toLowerCase())}},{key:"get",value:function(e){this.init();var t=this.headers.get(e.toLowerCase());return t&&t.length>0?t[0]:null}},{key:"keys",value:function(){return this.init(),Array.from(this.normalizedNames.values())}},{key:"getAll",value:function(e){return this.init(),this.headers.get(e.toLowerCase())||null}},{key:"append",value:function(e,t){return this.clone({name:e,value:t,op:"a"})}},{key:"set",value:function(e,t){return this.clone({name:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({name:e,value:t,op:"d"})}},{key:"maybeSetNormalizedName",value:function(e,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,e)}},{key:"init",value:function(){var t=this;this.lazyInit&&(this.lazyInit instanceof e?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(e){return t.applyUpdate(e)}),this.lazyUpdate=null))}},{key:"copyFrom",value:function(e){var t=this;e.init(),Array.from(e.headers.keys()).forEach(function(n){t.headers.set(n,e.headers.get(n)),t.normalizedNames.set(n,e.normalizedNames.get(n))})}},{key:"clone",value:function(t){var n=new e;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof e?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([t]),n}},{key:"applyUpdate",value:function(e){var t=e.name.toLowerCase();switch(e.op){case"a":case"s":var n=e.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(e.name,t);var i=("a"===e.op?this.headers.get(t):void 0)||[];i.push.apply(i,v(n)),this.headers.set(t,i);break;case"d":var r=e.value;if(r){var o=this.headers.get(t);if(!o)return;0===(o=o.filter(function(e){return-1===r.indexOf(e)})).length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,o)}else this.headers.delete(t),this.normalizedNames.delete(t)}}},{key:"forEach",value:function(e){var t=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return e(t.normalizedNames.get(n),t.headers.get(n))})}}]),e}(),Mb=function(){function e(){m(this,e)}return b(e,[{key:"encodeKey",value:function(e){return Db(e)}},{key:"encodeValue",value:function(e){return Db(e)}},{key:"decodeKey",value:function(e){return decodeURIComponent(e)}},{key:"decodeValue",value:function(e){return decodeURIComponent(e)}}]),e}(),Ib=/%(\d[a-f0-9])/gi,Rb={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function Db(e){return encodeURIComponent(e).replace(Ib,function(e,t){var n;return null!==(n=Rb[t])&&void 0!==n?n:e})}function Nb(e){return"".concat(e)}var Lb=function(){function e(){var n=this,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(m(this,e),this.updates=null,this.cloneFrom=null,this.encoder=i.encoder||new Mb,i.fromString){if(i.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(e,n){var i=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(function(e){var r=e.indexOf("="),o=t(-1==r?[n.decodeKey(e),""]:[n.decodeKey(e.slice(0,r)),n.decodeValue(e.slice(r+1))],2),a=o[0],s=o[1],u=i.get(a)||[];u.push(s),i.set(a,u)}),i}(i.fromString,this.encoder)}else i.fromObject?(this.map=new Map,Object.keys(i.fromObject).forEach(function(e){var t=i.fromObject[e];n.map.set(e,Array.isArray(t)?t:[t])})):this.map=null}return b(e,[{key:"has",value:function(e){return this.init(),this.map.has(e)}},{key:"get",value:function(e){this.init();var t=this.map.get(e);return t?t[0]:null}},{key:"getAll",value:function(e){return this.init(),this.map.get(e)||null}},{key:"keys",value:function(){return this.init(),Array.from(this.map.keys())}},{key:"append",value:function(e,t){return this.clone({param:e,value:t,op:"a"})}},{key:"appendAll",value:function(e){var t=[];return Object.keys(e).forEach(function(n){var i=e[n];Array.isArray(i)?i.forEach(function(e){t.push({param:n,value:e,op:"a"})}):t.push({param:n,value:i,op:"a"})}),this.clone(t)}},{key:"set",value:function(e,t){return this.clone({param:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({param:e,value:t,op:"d"})}},{key:"toString",value:function(){var e=this;return this.init(),this.keys().map(function(t){var n=e.encoder.encodeKey(t);return e.map.get(t).map(function(t){return n+"="+e.encoder.encodeValue(t)}).join("&")}).filter(function(e){return""!==e}).join("&")}},{key:"clone",value:function(t){var n=new e({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat(t),n}},{key:"init",value:function(){var e=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(t){return e.map.set(t,e.cloneFrom.map.get(t))}),this.updates.forEach(function(t){switch(t.op){case"a":case"s":var n=("a"===t.op?e.map.get(t.param):void 0)||[];n.push(Nb(t.value)),e.map.set(t.param,n);break;case"d":if(void 0===t.value){e.map.delete(t.param);break}var i=e.map.get(t.param)||[],r=i.indexOf(Nb(t.value));-1!==r&&i.splice(r,1),i.length>0?e.map.set(t.param,i):e.map.delete(t.param)}}),this.cloneFrom=this.updates=null)}}]),e}(),jb=function(){function e(){m(this,e),this.map=new Map}return b(e,[{key:"set",value:function(e,t){return this.map.set(e,t),this}},{key:"get",value:function(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}},{key:"delete",value:function(e){return this.map.delete(e),this}},{key:"keys",value:function(){return this.map.keys()}}]),e}();function Fb(e){return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer}function Bb(e){return"undefined"!=typeof Blob&&e instanceof Blob}function Vb(e){return"undefined"!=typeof FormData&&e instanceof FormData}var zb=function(){function e(t,n,i,r){var o;if(m(this,e),this.url=n,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==i?i:null,o=r):o=i,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params)),this.headers||(this.headers=new Pb),this.context||(this.context=new jb),this.params){var a=this.params.toString();if(0===a.length)this.urlWithParams=n;else{var s=n.indexOf("?");this.urlWithParams=n+(-1===s?"?":s0&&void 0!==arguments[0]?arguments[0]:{},i=n.method||this.method,r=n.url||this.url,o=n.responseType||this.responseType,a=void 0!==n.body?n.body:this.body,s=void 0!==n.withCredentials?n.withCredentials:this.withCredentials,u=void 0!==n.reportProgress?n.reportProgress:this.reportProgress,c=n.headers||this.headers,l=n.params||this.params,h=null!==(t=n.context)&&void 0!==t?t:this.context;return void 0!==n.setHeaders&&(c=Object.keys(n.setHeaders).reduce(function(e,t){return e.set(t,n.setHeaders[t])},c)),n.setParams&&(l=Object.keys(n.setParams).reduce(function(e,t){return e.set(t,n.setParams[t])},l)),new e(i,r,a,{params:l,headers:c,context:h,reportProgress:u,responseType:o,withCredentials:s})}}]),e}(),Ub=((Ub=Ub||{})[Ub.Sent=0]="Sent",Ub[Ub.UploadProgress=1]="UploadProgress",Ub[Ub.ResponseHeader=2]="ResponseHeader",Ub[Ub.DownloadProgress=3]="DownloadProgress",Ub[Ub.Response=4]="Response",Ub[Ub.User=5]="User",Ub),Hb=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"OK";m(this,e),this.headers=t.headers||new Pb,this.status=void 0!==t.status?t.status:n,this.statusText=t.statusText||i,this.url=t.url||null,this.ok=this.status>=200&&this.status<300},Gb=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m(this,n),(e=t.call(this,i)).type=Ub.ResponseHeader,e}return b(n,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new n({headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),n}(Hb),Wb=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m(this,n),(e=t.call(this,i)).type=Ub.Response,e.body=void 0!==i.body?i.body:null,e}return b(n,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new n({body:void 0!==e.body?e.body:this.body,headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),n}(Hb),qb=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,e,0,"Unknown Error")).name="HttpErrorResponse",i.ok=!1,i.message=i.status>=200&&i.status<300?"Http failure during parsing for ".concat(e.url||"(unknown url)"):"Http failure response for ".concat(e.url||"(unknown url)",": ").concat(e.status," ").concat(e.statusText),i.error=e.error||null,i}return n}(Hb);function Xb(e,t){return{body:t,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}var Yb=function(){var e=function(){function e(t){m(this,e),this.handler=t}return b(e,[{key:"request",value:function(e,t){var n,i,r,o=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e instanceof zb?n=e:(i=a.headers instanceof Pb?a.headers:new Pb(a.headers),a.params&&(r=a.params instanceof Lb?a.params:new Lb({fromObject:a.params})),n=new zb(e,t,void 0!==a.body?a.body:null,{headers:i,context:a.context,params:r,reportProgress:a.reportProgress,responseType:a.responseType||"json",withCredentials:a.withCredentials}));var s=Nd(n).pipe(_e(function(e){return o.handler.handle(e)},void 0,1));if(e instanceof zb||"events"===a.observe)return s;var u=s.pipe(rf(function(e){return e instanceof Wb}));switch(a.observe||"body"){case"body":switch(n.responseType){case"arraybuffer":return u.pipe(se(function(e){if(null!==e.body&&!(e.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return e.body}));case"blob":return u.pipe(se(function(e){if(null!==e.body&&!(e.body instanceof Blob))throw new Error("Response is not a Blob.");return e.body}));case"text":return u.pipe(se(function(e){if(null!==e.body&&"string"!=typeof e.body)throw new Error("Response is not a string.");return e.body}));case"json":default:return u.pipe(se(function(e){return e.body}))}case"response":return u;default:throw new Error("Unreachable: unhandled observe type ".concat(a.observe,"}"))}}},{key:"delete",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("DELETE",e,t)}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("GET",e,t)}},{key:"head",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("HEAD",e,t)}},{key:"jsonp",value:function(e,t){return this.request("JSONP",e,{params:(new Lb).append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}},{key:"options",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("OPTIONS",e,t)}},{key:"patch",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PATCH",e,Xb(n,t))}},{key:"post",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("POST",e,Xb(n,t))}},{key:"put",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PUT",e,Xb(n,t))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Tb))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Kb=function(){function e(t,n){m(this,e),this.next=t,this.interceptor=n}return b(e,[{key:"handle",value:function(e){return this.interceptor.intercept(e,this.next)}}]),e}(),$b=new Pi("HTTP_INTERCEPTORS"),Qb=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"intercept",value:function(e,t){return t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Zb=/^\)\]\}',?\n/,Jb=function(){var e=function(){function e(t){m(this,e),this.xhrFactory=t}return b(e,[{key:"handle",value:function(e){var t=this;if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new J(function(n){var i=t.xhrFactory.build();if(i.open(e.method,e.urlWithParams),e.withCredentials&&(i.withCredentials=!0),e.headers.forEach(function(e,t){return i.setRequestHeader(e,t.join(","))}),e.headers.has("Accept")||i.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){var r=e.detectContentTypeHeader();null!==r&&i.setRequestHeader("Content-Type",r)}if(e.responseType){var o=e.responseType.toLowerCase();i.responseType="json"!==o?o:"text"}var a=e.serializeBody(),s=null,u=function(){if(null!==s)return s;var t=1223===i.status?204:i.status,n=i.statusText||"OK",r=new Pb(i.getAllResponseHeaders()),o=function(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(i)||e.url;return s=new Gb({headers:r,status:t,statusText:n,url:o})},c=function(){var t=u(),r=t.headers,o=t.status,a=t.statusText,s=t.url,c=null;204!==o&&(c=void 0===i.response?i.responseText:i.response),0===o&&(o=c?200:0);var l=o>=200&&o<300;if("json"===e.responseType&&"string"==typeof c){var h=c;c=c.replace(Zb,"");try{c=""!==c?JSON.parse(c):null}catch(d){c=h,l&&(l=!1,c={error:d,text:c})}}l?(n.next(new Wb({body:c,headers:r,status:o,statusText:a,url:s||void 0})),n.complete()):n.error(new qb({error:c,headers:r,status:o,statusText:a,url:s||void 0}))},l=function(e){var t=u().url,r=new qb({error:e,status:i.status||0,statusText:i.statusText||"Unknown Error",url:t||void 0});n.error(r)},h=!1,d=function(t){h||(n.next(u()),h=!0);var r={type:Ub.DownloadProgress,loaded:t.loaded};t.lengthComputable&&(r.total=t.total),"text"===e.responseType&&!!i.responseText&&(r.partialText=i.responseText),n.next(r)},f=function(e){var t={type:Ub.UploadProgress,loaded:e.loaded};e.lengthComputable&&(t.total=e.total),n.next(t)};return i.addEventListener("load",c),i.addEventListener("error",l),i.addEventListener("timeout",l),i.addEventListener("abort",l),e.reportProgress&&(i.addEventListener("progress",d),null!==a&&i.upload&&i.upload.addEventListener("progress",f)),i.send(a),n.next({type:Ub.Sent}),function(){i.removeEventListener("error",l),i.removeEventListener("abort",l),i.removeEventListener("load",c),i.removeEventListener("timeout",l),e.reportProgress&&(i.removeEventListener("progress",d),null!==a&&i.upload&&i.upload.removeEventListener("progress",f)),i.readyState!==i.DONE&&i.abort()}})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Zh))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),e_=new Pi("XSRF_COOKIE_NAME"),t_=new Pi("XSRF_HEADER_NAME"),n_=function e(){m(this,e)},i_=function(){var e=function(){function e(t,n,i){m(this,e),this.doc=t,this.platform=n,this.cookieName=i,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return b(e,[{key:"getToken",value:function(){if("server"===this.platform)return null;var e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ph(e,this.cookieName),this.lastCookieString=e),this.lastToken}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(hh),Ki(xl),Ki(e_))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),r_=function(){var e=function(){function e(t,n){m(this,e),this.tokenService=t,this.headerName=n}return b(e,[{key:"intercept",value:function(e,t){var n=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||n.startsWith("http://")||n.startsWith("https://"))return t.handle(e);var i=this.tokenService.getToken();return null!==i&&!e.headers.has(this.headerName)&&(e=e.clone({headers:e.headers.set(this.headerName,i)})),t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(n_),Ki(t_))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),o_=function(){var e=function(){function e(t,n){m(this,e),this.backend=t,this.injector=n,this.chain=null}return b(e,[{key:"handle",value:function(e){if(null===this.chain){var t=this.injector.get($b,[]);this.chain=t.reduceRight(function(e,t){return new Kb(e,t)},this.backend)}return this.chain.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Ab),Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),a_=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"disable",value:function(){return{ngModule:e,providers:[{provide:r_,useClass:Qb}]}}},{key:"withOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:e,providers:[t.cookieName?{provide:e_,useValue:t.cookieName}:[],t.headerName?{provide:t_,useValue:t.headerName}:[]]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[r_,{provide:$b,useExisting:r_,multi:!0},{provide:n_,useClass:i_},{provide:e_,useValue:"XSRF-TOKEN"},{provide:t_,useValue:"X-XSRF-TOKEN"}]}),e}(),s_=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[Yb,{provide:Tb,useClass:o_},Jb,{provide:Ab,useExisting:Jb}],imports:[[a_.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),e}(),u_=["*"];function c_(e){return Error('Unable to find icon with the name "'.concat(e,'"'))}function l_(e){return Error("The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was \"".concat(e,'".'))}function h_(e){return Error("The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was \"".concat(e,'".'))}var d_=function e(t,n,i){m(this,e),this.url=t,this.svgText=n,this.options=i},f_=function(){var e=function(){function e(t,n,i,r){m(this,e),this._httpClient=t,this._sanitizer=n,this._errorHandler=r,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass="material-icons",this._document=i}return b(e,[{key:"addSvgIcon",value:function(e,t,n){return this.addSvgIconInNamespace("",e,t,n)}},{key:"addSvgIconLiteral",value:function(e,t,n){return this.addSvgIconLiteralInNamespace("",e,t,n)}},{key:"addSvgIconInNamespace",value:function(e,t,n,i){return this._addSvgIconConfig(e,t,new d_(n,null,i))}},{key:"addSvgIconResolver",value:function(e){return this._resolvers.push(e),this}},{key:"addSvgIconLiteralInNamespace",value:function(e,t,n,i){var r=this._sanitizer.sanitize(Ur.HTML,n);if(!r)throw h_(n);return this._addSvgIconConfig(e,t,new d_("",r,i))}},{key:"addSvgIconSet",value:function(e,t){return this.addSvgIconSetInNamespace("",e,t)}},{key:"addSvgIconSetLiteral",value:function(e,t){return this.addSvgIconSetLiteralInNamespace("",e,t)}},{key:"addSvgIconSetInNamespace",value:function(e,t,n){return this._addSvgIconSetConfig(e,new d_(t,null,n))}},{key:"addSvgIconSetLiteralInNamespace",value:function(e,t,n){var i=this._sanitizer.sanitize(Ur.HTML,t);if(!i)throw h_(t);return this._addSvgIconSetConfig(e,new d_("",i,n))}},{key:"registerFontClassAlias",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this._fontCssClassesByAlias.set(e,t),this}},{key:"classNameForFontAlias",value:function(e){return this._fontCssClassesByAlias.get(e)||e}},{key:"setDefaultFontSetClass",value:function(e){return this._defaultFontSetClass=e,this}},{key:"getDefaultFontSetClass",value:function(){return this._defaultFontSetClass}},{key:"getSvgIconFromUrl",value:function(e){var t=this,n=this._sanitizer.sanitize(Ur.RESOURCE_URL,e);if(!n)throw l_(e);var i=this._cachedIconsByUrl.get(n);return i?Nd(p_(i)):this._loadSvgIconFromConfig(new d_(e,null)).pipe(iv(function(e){return t._cachedIconsByUrl.set(n,e)}),se(function(e){return p_(e)}))}},{key:"getNamedSvgIcon",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=v_(t,e),i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(t,e))return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);var r=this._iconSetConfigs.get(t);return r?this._getSvgFromIconSetConfigs(e,r):yf(c_(n))}},{key:"ngOnDestroy",value:function(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}},{key:"_getSvgFromConfig",value:function(e){return e.svgText?Nd(p_(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(se(function(e){return p_(e)}))}},{key:"_getSvgFromIconSetConfigs",value:function(e,t){var n=this,i=this._extractIconWithNameFromAnySet(e,t);return i?Nd(i):_b(t.filter(function(e){return!e.svgText}).map(function(e){return n._loadSvgIconSetFromConfig(e).pipe(kb(function(t){var i="Loading icon set URL: ".concat(n._sanitizer.sanitize(Ur.RESOURCE_URL,e.url)," failed: ").concat(t.message);return n._errorHandler.handleError(new Error(i)),Nd(null)}))})).pipe(se(function(){var i=n._extractIconWithNameFromAnySet(e,t);if(!i)throw c_(e);return i}))}},{key:"_extractIconWithNameFromAnySet",value:function(e,t){for(var n=t.length-1;n>=0;n--){var i=t[n];if(i.svgText&&i.svgText.indexOf(e)>-1){var r=this._svgElementFromConfig(i),o=this._extractSvgIconFromSet(r,e,i.options);if(o)return o}}return null}},{key:"_loadSvgIconFromConfig",value:function(e){var t=this;return this._fetchIcon(e).pipe(iv(function(t){return e.svgText=t}),se(function(){return t._svgElementFromConfig(e)}))}},{key:"_loadSvgIconSetFromConfig",value:function(e){return e.svgText?Nd(null):this._fetchIcon(e).pipe(iv(function(t){return e.svgText=t}))}},{key:"_extractSvgIconFromSet",value:function(e,t,n){var i=e.querySelector('[id="'.concat(t,'"]'));if(!i)return null;var r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);var o=this._svgElementFromString("");return o.appendChild(r),this._setSvgAttributes(o,n)}},{key:"_svgElementFromString",value:function(e){var t=this._document.createElement("DIV");t.innerHTML=e;var n=t.querySelector("svg");if(!n)throw Error(" tag not found");return n}},{key:"_toSvgElement",value:function(e){for(var t=this._svgElementFromString(""),n=e.attributes,i=0;i*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",O_=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],T_=qy(Wy(Xy(function(){return function e(t){m(this,e),this._elementRef=t}}()))),A_=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;m(this,n),(o=t.call(this,e))._focusMonitor=i,o._animationMode=r,o.isRoundButton=o._hasHostAttributes("mat-fab","mat-mini-fab"),o.isIconButton=o._hasHostAttributes("mat-icon-button");var a,s=_(O_);try{for(s.s();!(a=s.n()).done;){var u=a.value;o._hasHostAttributes(u)&&o._getHostElement().classList.add(u)}}catch(c){s.e(c)}finally{s.f()}return e.nativeElement.classList.add("mat-button-base"),o.isRoundButton&&(o.color="accent"),o}return b(n,[{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t)}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_hasHostAttributes",value:function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;i4&&void 0!==arguments[4]?arguments[4]:new R_(e,n,i);if(!r.closed)return t instanceof J?t.subscribe(r):pe(t)(r)}var N_={};function L_(){for(var e=arguments.length,t=new Array(e),n=0;n visible",eg("150ms cubic-bezier(0, 0, 0.2, 1)")),rg("* => void, * => hidden",eg("75ms cubic-bezier(0.4, 0.0, 1, 1)",ng({opacity:0})))])},J_=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a){var s;return m(this,n),(s=t.call(this))._ngZone=e,s._elementRef=i,s._changeDetectorRef=r,s._platform=o,s.snackBarConfig=a,s._announceDelay=150,s._destroyed=!1,s._onAnnounce=new re,s._onExit=new re,s._onEnter=new re,s._animationState="void",s.attachDomPortal=function(e){return s._assertNotAttached(),s._applySnackBarClasses(),s._portalOutlet.attachDomPortal(e)},s._live="assertive"!==a.politeness||a.announcementMessage?"off"===a.politeness?"off":"polite":"assertive",s._platform.FIREFOX&&("polite"===s._live&&(s._role="status"),"assertive"===s._live&&(s._role="alert")),s}return b(n,[{key:"attachComponentPortal",value:function(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(e)}},{key:"attachTemplatePortal",value:function(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(e)}},{key:"onAnimationEnd",value:function(e){var t=e.fromState,n=e.toState;if(("void"===n&&"void"!==t||"hidden"===n)&&this._completeExit(),"visible"===n){var i=this._onEnter;this._ngZone.run(function(){i.next(),i.complete()})}}},{key:"enter",value:function(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}},{key:"exit",value:function(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}},{key:"ngOnDestroy",value:function(){this._destroyed=!0,this._completeExit()}},{key:"_completeExit",value:function(){var e=this;this._ngZone.onMicrotaskEmpty.pipe(op(1)).subscribe(function(){e._onExit.next(),e._onExit.complete()})}},{key:"_applySnackBarClasses",value:function(){var e=this._elementRef.nativeElement,t=this.snackBarConfig.panelClass;t&&(Array.isArray(t)?t.forEach(function(t){return e.classList.add(t)}):e.classList.add(t)),"center"===this.snackBarConfig.horizontalPosition&&e.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&e.classList.add("mat-snack-bar-top")}},{key:"_assertNotAttached",value:function(){this._portalOutlet.hasAttached()}},{key:"_screenReaderAnnounce",value:function(){var e=this;this._announceTimeoutId||this._ngZone.runOutsideAngular(function(){e._announceTimeoutId=setTimeout(function(){var t=e._elementRef.nativeElement.querySelector("[aria-hidden]"),n=e._elementRef.nativeElement.querySelector("[aria-live]");if(t&&n){var i=null;e._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(i=document.activeElement),t.removeAttribute("aria-hidden"),n.appendChild(t),null==i||i.focus(),e._onAnnounce.next(),e._onAnnounce.complete()}},e._announceDelay)})}}]),n}(Zf);return e.\u0275fac=function(t){return new(t||e)(Ss(Bl),Ss(Yu),Ss(_c),Ss(Mf),Ss(Y_))},e.\u0275cmp=Et({type:e,selectors:[["snack-bar-container"]],viewQuery:function(e,t){var n;(1&e&&ll(np,7),2&e)&&(cl(n=dl())&&(t._portalOutlet=n.first))},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(e,t){1&e&&Fs("@state.done",function(e){return t.onAnimationEnd(e)}),2&e&&Ou("@state",t._animationState)},features:[as],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(e,t){1&e&&(Os(0,"div",0),ks(1,q_,0,0,"ng-template",1),Ts(),As(2,"div")),2&e&&(Wo(2),bs("aria-live",t._live)("role",t._role))},directives:[np],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[Z_.snackBarState]}}),e}(),ew=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yp,ip,Yh,M_,Gy],Gy]}),e}(),tw=new Pi("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new Y_}}),nw=function(){var e=function(){function e(t,n,i,r,o,a){m(this,e),this._overlay=t,this._live=n,this._injector=i,this._breakpointObserver=r,this._parentSnackBar=o,this._defaultConfig=a,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=Q_,this.snackBarContainerComponent=J_,this.handsetCssClass="mat-snack-bar-handset"}return b(e,[{key:"_openedSnackBarRef",get:function(){var e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel},set:function(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}},{key:"openFromComponent",value:function(e,t){return this._attach(e,t)}},{key:"openFromTemplate",value:function(e,t){return this._attach(e,t)}},{key:"open",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:e,action:t},i.announcementMessage===e&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}},{key:"dismiss",value:function(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}},{key:"ngOnDestroy",value:function(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}},{key:"_attachSnackBarContainer",value:function(e,t){var n=rs.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:Y_,useValue:t}]}),i=new Kf(this.snackBarContainerComponent,t.viewContainerRef,n),r=e.attach(i);return r.instance.snackBarConfig=t,r.instance}},{key:"_attach",value:function(e,t){var n=this,i=Object.assign(Object.assign(Object.assign({},new Y_),this._defaultConfig),t),r=this._createOverlay(i),o=this._attachSnackBarContainer(r,i),a=new $_(o,r);if(e instanceof Ec){var s=new $f(e,null,{$implicit:i.data,snackBarRef:a});a.instance=o.attachTemplatePortal(s)}else{var u=this._createInjector(i,a),c=new Kf(e,void 0,u),l=o.attachComponentPortal(c);a.instance=l.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(sf(r.detachments())).subscribe(function(e){var t=r.overlayElement.classList;e.matches?t.add(n.handsetCssClass):t.remove(n.handsetCssClass)}),i.announcementMessage&&o._onAnnounce.subscribe(function(){n._live.announce(i.announcementMessage,i.politeness)}),this._animateSnackBar(a,i),this._openedSnackBarRef=a,this._openedSnackBarRef}},{key:"_animateSnackBar",value:function(e,t){var n=this;e.afterDismissed().subscribe(function(){n._openedSnackBarRef==e&&(n._openedSnackBarRef=null),t.announcementMessage&&n._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(function(){e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter(),t.duration&&t.duration>0&&e.afterOpened().subscribe(function(){return e._dismissAfter(t.duration)})}},{key:"_createOverlay",value:function(e){var t=new _p;t.direction=e.direction;var n=this._overlay.position().global(),i="rtl"===e.direction,r="left"===e.horizontalPosition||"start"===e.horizontalPosition&&!i||"end"===e.horizontalPosition&&i,o=!r&&"center"!==e.horizontalPosition;return r?n.left("0"):o?n.right("0"):n.centerHorizontally(),"top"===e.verticalPosition?n.top("0"):n.bottom("0"),t.positionStrategy=n,this._overlay.create(t)}},{key:"_createInjector",value:function(e,t){return rs.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:$_,useValue:t},{provide:X_,useValue:e.data}]})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Up),Ki(zv),Ki(rs),Ki(H_),Ki(e,12),Ki(tw))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Up),Ki(zv),Ki(Ga),Ki(H_),Ki(e,12),Ki(tw))},token:e,providedIn:ew}),e}(),iw={tooltipState:Jv("state",[ig("initial, void, hidden",ng({opacity:0,transform:"scale(0)"})),ig("visible",ng({transform:"scale(1)"})),rg("* => visible",eg("200ms cubic-bezier(0, 0, 0.2, 1)",function(e){return{type:5,steps:e}}([ng({opacity:0,transform:"scale(0)",offset:0}),ng({opacity:.5,transform:"scale(0.99)",offset:.5}),ng({opacity:1,transform:"scale(1)",offset:1})]))),rg("* => hidden",eg("100ms cubic-bezier(0, 0, 0.2, 1)",ng({opacity:0})))])},rw="tooltip-panel",ow=Nf({passive:!0}),aw=new Pi("mat-tooltip-scroll-strategy"),sw={provide:aw,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition({scrollThrottle:20})}}},uw=new Pi("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),cw=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c,l,h,d){var f=this;m(this,e),this._overlay=t,this._elementRef=n,this._scrollDispatcher=i,this._viewContainerRef=r,this._ngZone=o,this._platform=a,this._ariaDescriber=s,this._focusMonitor=u,this._dir=l,this._defaultOptions=h,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new re,this._handleKeydown=function(e){f._isTooltipVisible()&&27===e.keyCode&&!hp(e)&&(e.preventDefault(),e.stopPropagation(),f._ngZone.run(function(){return f.hide(0)}))},this._scrollStrategy=c,this._document=d,h&&(h.position&&(this.position=h.position),h.touchGestures&&(this.touchGestures=h.touchGestures)),l.change.pipe(sf(this._destroyed)).subscribe(function(){f._overlayRef&&f._updatePosition(f._overlayRef)}),o.runOutsideAngular(function(){n.nativeElement.addEventListener("keydown",f._handleKeydown)})}return b(e,[{key:"position",get:function(){return this._position},set:function(e){var t;e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(t=this._tooltipInstance)||void 0===t||t.show(0),this._overlayRef.updatePosition()))}},{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=Pd(e),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}},{key:"message",get:function(){return this._message},set:function(e){var t=this;this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){t._ariaDescriber.describe(t._elementRef.nativeElement,t.message,"tooltip")})}))}},{key:"tooltipClass",get:function(){return this._tooltipClass},set:function(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}},{key:"ngAfterViewInit",value:function(){var e=this;this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(sf(this._destroyed)).subscribe(function(t){t?"keyboard"===t&&e._ngZone.run(function(){return e.show()}):e._ngZone.run(function(){return e.hide(0)})})}},{key:"ngOnDestroy",value:function(){var e=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),e.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(function(n){var i=t(n,2),r=i[0],o=i[1];e.removeEventListener(r,o,ow)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}},{key:"show",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.showDelay;if(!this.disabled&&this.message&&(!this._isTooltipVisible()||this._tooltipInstance._showTimeoutId||this._tooltipInstance._hideTimeoutId)){var n=this._createOverlay();this._detach(),this._portal=this._portal||new Kf(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=n.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe(sf(this._destroyed)).subscribe(function(){return e._detach()}),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}}},{key:"hide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.hideDelay;this._tooltipInstance&&this._tooltipInstance.hide(e)}},{key:"toggle",value:function(){this._isTooltipVisible()?this.hide():this.show()}},{key:"_isTooltipVisible",value:function(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}},{key:"_createOverlay",value:function(){var e=this;if(this._overlayRef)return this._overlayRef;var t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),n=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(".".concat(this._cssClassPrefix,"-tooltip")).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return n.positionChanges.pipe(sf(this._destroyed)).subscribe(function(t){e._updateCurrentPositionClass(t.connectionPair),e._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&e._tooltipInstance.isVisible()&&e._ngZone.run(function(){return e.hide(0)})}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:n,panelClass:"".concat(this._cssClassPrefix,"-").concat(rw),scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(sf(this._destroyed)).subscribe(function(){return e._detach()}),this._overlayRef.outsidePointerEvents().pipe(sf(this._destroyed)).subscribe(function(){var t;return null===(t=e._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}},{key:"_detach",value:function(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}},{key:"_updatePosition",value:function(e){var t=e.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();t.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}},{key:"_addOffset",value:function(e){return e}},{key:"_getOrigin",value:function(){var e,t=!this._dir||"ltr"==this._dir.value,n=this.position;"above"==n||"below"==n?e={originX:"center",originY:"above"==n?"top":"bottom"}:"before"==n||"left"==n&&t||"right"==n&&!t?e={originX:"start",originY:"center"}:("after"==n||"right"==n&&t||"left"==n&&!t)&&(e={originX:"end",originY:"center"});var i=this._invertPosition(e.originX,e.originY);return{main:e,fallback:{originX:i.x,originY:i.y}}}},{key:"_getOverlayPosition",value:function(){var e,t=!this._dir||"ltr"==this._dir.value,n=this.position;"above"==n?e={overlayX:"center",overlayY:"bottom"}:"below"==n?e={overlayX:"center",overlayY:"top"}:"before"==n||"left"==n&&t||"right"==n&&!t?e={overlayX:"end",overlayY:"center"}:("after"==n||"right"==n&&t||"left"==n&&!t)&&(e={overlayX:"start",overlayY:"center"});var i=this._invertPosition(e.overlayX,e.overlayY);return{main:e,fallback:{overlayX:i.x,overlayY:i.y}}}},{key:"_updateTooltipMessage",value:function(){var e=this;this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(op(1),sf(this._destroyed)).subscribe(function(){e._tooltipInstance&&e._overlayRef.updatePosition()}))}},{key:"_setTooltipClass",value:function(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}},{key:"_invertPosition",value:function(e,t){return"above"===this.position||"below"===this.position?"top"===t?t="bottom":"bottom"===t&&(t="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:t}}},{key:"_updateCurrentPositionClass",value:function(e){var t,n=e.overlayY,i=e.originX,r=e.originY;if((t="center"===n?this._dir&&"rtl"===this._dir.value?"end"===i?"left":"right":"start"===i?"left":"right":"bottom"===n&&"top"===r?"above":"below")!==this._currentPosition){var o=this._overlayRef;if(o){var a="".concat(this._cssClassPrefix,"-").concat(rw,"-");o.removePanelClass(a+this._currentPosition),o.addPanelClass(a+t)}this._currentPosition=t}}},{key:"_setupPointerEnterEventsIfNeeded",value:function(){var e=this;this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",function(){e._setupPointerExitEventsIfNeeded(),e.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",function(){e._setupPointerExitEventsIfNeeded(),clearTimeout(e._touchstartTimeout),e._touchstartTimeout=setTimeout(function(){return e.show()},500)}])),this._addListeners(this._passiveListeners))}},{key:"_setupPointerExitEventsIfNeeded",value:function(){var e,t=this;if(!this._pointerExitEventsInitialized){this._pointerExitEventsInitialized=!0;var n=[];if(this._platformSupportsMouseEvents())n.push(["mouseleave",function(){return t.hide()}],["wheel",function(e){return t._wheelListener(e)}]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();var i=function(){clearTimeout(t._touchstartTimeout),t.hide(t._defaultOptions.touchendHideDelay)};n.push(["touchend",i],["touchcancel",i])}this._addListeners(n),(e=this._passiveListeners).push.apply(e,n)}}},{key:"_addListeners",value:function(e){var n=this;e.forEach(function(e){var i=t(e,2),r=i[0],o=i[1];n._elementRef.nativeElement.addEventListener(r,o,ow)})}},{key:"_platformSupportsMouseEvents",value:function(){return!this._platform.IOS&&!this._platform.ANDROID}},{key:"_wheelListener",value:function(e){if(this._isTooltipVisible()){var t=this._document.elementFromPoint(e.clientX,e.clientY),n=this._elementRef.nativeElement;t!==n&&!n.contains(t)&&this.hide()}}},{key:"_disableNativeGesturesIfNecessary",value:function(){var e=this.touchGestures;if("off"!==e){var t=this._elementRef.nativeElement,n=t.style;("on"===e||"INPUT"!==t.nodeName&&"TEXTAREA"!==t.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),("on"===e||!t.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Yu),Ss(Gf),Ss(Pc),Ss(Bl),Ss(Mf),Ss(Sv),Ss(Gv),Ss(void 0),Ss(Vf),Ss(void 0),Ss(hh))},e.\u0275dir=Mt({type:e,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),e}(),lw=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,c,l,h,d,f){var p;return m(this,n),(p=t.call(this,e,i,r,o,a,s,u,c,l,h,d,f))._tooltipComponent=dw,p}return n}(cw);return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Yu),Ss(Gf),Ss(Pc),Ss(Bl),Ss(Mf),Ss(Sv),Ss(Gv),Ss(aw),Ss(Vf,8),Ss(uw,8),Ss(hh))},e.\u0275dir=Mt({type:e,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[as]}),e}(),hw=function(){var e=function(){function e(t){m(this,e),this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new re}return b(e,[{key:"show",value:function(e){var t=this;clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(function(){t._visibility="visible",t._showTimeoutId=void 0,t._onShow(),t._markForCheck()},e)}},{key:"hide",value:function(e){var t=this;clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(function(){t._visibility="hidden",t._hideTimeoutId=void 0,t._markForCheck()},e)}},{key:"afterHidden",value:function(){return this._onHide}},{key:"isVisible",value:function(){return"visible"===this._visibility}},{key:"ngOnDestroy",value:function(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}},{key:"_animationStart",value:function(){this._closeOnInteraction=!1}},{key:"_animationDone",value:function(e){var t=e.toState;"hidden"===t&&!this.isVisible()&&this._onHide.next(),("visible"===t||"hidden"===t)&&(this._closeOnInteraction=!0)}},{key:"_handleBodyInteraction",value:function(){this._closeOnInteraction&&this.hide(0)}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}},{key:"_onShow",value:function(){}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(_c))},e.\u0275dir=Mt({type:e}),e}(),dw=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e))._breakpointObserver=i,r._isHandset=r._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)"),r}return n}(hw);return e.\u0275fac=function(t){return new(t||e)(Ss(_c),Ss(H_))},e.\u0275cmp=Et({type:e,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(e,t){2&e&&ou("zoom","visible"===t._visibility?1:null)},features:[as],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(e,t){var n;(1&e&&(Os(0,"div",0),js("@state.start",function(){return t._animationStart()})("@state.done",function(e){return t._animationDone(e)}),Yc(1,"async"),wu(2),Ts()),2&e)&&(au("mat-tooltip-handset",null==(n=Kc(1,5,t._isHandset))?null:n.matches),Es("ngClass",t.tooltipClass)("@state",t._visibility),Wo(2),ku(t.message))},directives:[Mh],pipes:[Xh],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[iw.tooltipState]},changeDetection:0}),e}(),fw=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[sw],imports:[[Kv,Yh,Yp,Gy],Gy,qf]}),e}();function pw(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a}function vw(e,t){return function(n,i){t(n,i,e)}}function gw(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function mw(e,t,n,i){return new(n||(n=Promise))(function(r,o){function a(e){try{u(i.next(e))}catch(t){o(t)}}function s(e){try{u(i.throw(e))}catch(t){o(t)}}function u(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(a,s)}u((i=i.apply(e,t||[])).next())})}function yw(e){if("undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"==typeof process.versions&&Boolean(process.versions.electron))return!0;var t="object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=e||t;return!!(n&&n.indexOf("Electron")>=0)}function bw(){return!("object"==typeof process&&"[object process]"===String(process)&&!process.browser)||yw()}var _w="undefined"!=typeof __VERSION__?__VERSION__:"untranspiled source",ww=bw(),kw=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"sessionStorage";m(this,e),this.storage=function(e){try{var n=window[e],i="__storage_test__";return n.setItem(i,i),n.removeItem(i),n}catch(t){return null}}(i),this.id=t,this.config={},Object.assign(this.config,n),this._loadConfiguration()}return b(e,[{key:"getConfiguration",value:function(){return this.config}},{key:"setConfiguration",value:function(e){return this.config={},this.updateConfiguration(e)}},{key:"updateConfiguration",value:function(e){if(Object.assign(this.config,e),this.storage){var t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}return this}},{key:"_loadConfiguration",value:function(){var e={};if(this.storage){var t=this.storage.getItem(this.id);e=t?JSON.parse(t):{}}return Object.assign(this.config,e),this}}]),e}();function xw(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:600,r=e.src.replace(/\(/g,"%28").replace(/\)/g,"%29");e.width>i&&(n=Math.min(n,i/e.width));var o=e.width*n,a=e.height*n,s=["font-size:1px;","padding:".concat(Math.floor(a/2),"px ").concat(Math.floor(o/2),"px;"),"line-height:".concat(a,"px;"),"background:url(".concat(r,");"),"background-size:".concat(o,"px ").concat(a,"px;"),"color:transparent;"].join("");return["".concat(t," %c+"),s]}var Sw={BLACK:30,RED:31,GREEN:32,YELLOW:33,BLUE:34,MAGENTA:35,CYAN:36,WHITE:37,BRIGHT_BLACK:90,BRIGHT_RED:91,BRIGHT_GREEN:92,BRIGHT_YELLOW:93,BRIGHT_BLUE:94,BRIGHT_MAGENTA:95,BRIGHT_CYAN:96,BRIGHT_WHITE:97};function Ew(e){return"string"==typeof e?Sw[e.toUpperCase()]||Sw.WHITE:e}function Cw(e,t){if(!e)throw new Error(t||"Assertion failed")}var Ow={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"==typeof process&&process},Tw=Ow.window||Ow.self||Ow.global,Aw=Ow.process||{};function Pw(){var e;if(ww&&Tw.performance)e=Tw.performance.now();else if(Aw.hrtime){var t=Aw.hrtime();e=1e3*t[0]+t[1]/1e6}else e=Date.now();return e}console;var Mw={debug:ww&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Iw={enabled:!0,level:0};function Rw(){}var Dw={},Nw={once:!0};function Lw(e){for(var t in e)for(var n in e[t])return n||"untitled";return"empty"}var jw=function(){var e=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{id:""},n=t.id;m(this,e),this.id=n,this.VERSION=_w,this._startTs=Pw(),this._deltaTs=Pw(),this.LOG_THROTTLE_TIMEOUT=0,this._storage=new kw("__probe-".concat(this.id,"__"),Iw),this.userData={},this.timeStamp("".concat(this.id," started")),function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["constructor"],i=Object.getPrototypeOf(e),r=Object.getOwnPropertyNames(i),o=_(r);try{var a=function(){var i=t.value;"function"==typeof e[i]&&(n.find(function(e){return i===e})||(e[i]=e[i].bind(e)))};for(o.s();!(t=o.n()).done;)a()}catch(s){o.e(s)}finally{o.f()}}(this),Object.seal(this)}return b(e,[{key:"level",get:function(){return this.getLevel()},set:function(e){this.setLevel(e)}},{key:"isEnabled",value:function(){return this._storage.config.enabled}},{key:"getLevel",value:function(){return this._storage.config.level}},{key:"getTotal",value:function(){return Number((Pw()-this._startTs).toPrecision(10))}},{key:"getDelta",value:function(){return Number((Pw()-this._deltaTs).toPrecision(10))}},{key:"priority",get:function(){return this.level},set:function(e){this.level=e}},{key:"getPriority",value:function(){return this.level}},{key:"enable",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._storage.updateConfiguration({enabled:e}),this}},{key:"setLevel",value:function(e){return this._storage.updateConfiguration({level:e}),this}},{key:"assert",value:function(e,t){Cw(e,t)}},{key:"warn",value:function(e){return this._getLogFunction(0,e,Mw.warn,arguments,Nw)}},{key:"error",value:function(e){return this._getLogFunction(0,e,Mw.error,arguments)}},{key:"deprecated",value:function(e,t){return this.warn("`".concat(e,"` is deprecated and will be removed in a later version. Use `").concat(t,"` instead"))}},{key:"removed",value:function(e,t){return this.error("`".concat(e,"` has been removed. Use `").concat(t,"` instead"))}},{key:"probe",value:function(e,t){return this._getLogFunction(e,t,Mw.log,arguments,{time:!0,once:!0})}},{key:"log",value:function(e,t){return this._getLogFunction(e,t,Mw.debug,arguments)}},{key:"info",value:function(e,t){return this._getLogFunction(e,t,console.info,arguments)}},{key:"once",value:function(e,t){return this._getLogFunction(e,t,Mw.debug||Mw.info,arguments,Nw)}},{key:"table",value:function(e,t,n){return t?this._getLogFunction(e,t,console.table||Rw,n&&[n],{tag:Lw(t)}):Rw}},{key:"image",value:function(e){var t=e.logLevel,n=e.priority,i=e.image,o=e.message,a=void 0===o?"":o,s=e.scale,u=void 0===s?1:s;return this._shouldLog(t||n)?ww?function(e){var t,n=e.image,i=e.message,r=void 0===i?"":i,o=e.scale,a=void 0===o?1:o;if("string"==typeof n){var s=new Image;return s.onload=function(){var e,t=xw(s,r,a);(e=console).log.apply(e,v(t))},s.src=n,Rw}var u=n.nodeName||"";if("img"===u.toLowerCase())return(t=console).log.apply(t,v(xw(n,r,a))),Rw;if("canvas"===u.toLowerCase()){var c=new Image;return c.onload=function(){var e;return(e=console).log.apply(e,v(xw(c,r,a)))},c.src=n.toDataURL(),Rw}return Rw}({image:i,message:a,scale:u}):function(e){var t=e.image,n=e.scale,o=void 0===n?1:n,a=null;try{a=r(75307)}catch(i){}return a?function(){return a(t,{fit:"box",width:"".concat(Math.round(80*o),"%")}).then(function(e){return console.log(e)})}:Rw}({image:i,message:a,scale:u}):Rw}},{key:"settings",value:function(){console.table?console.table(this._storage.config):console.log(this._storage.config)}},{key:"get",value:function(e){return this._storage.config[e]}},{key:"set",value:function(e,t){this._storage.updateConfiguration(o({},e,t))}},{key:"time",value:function(e,t){return this._getLogFunction(e,t,console.time?console.time:console.info)}},{key:"timeEnd",value:function(e,t){return this._getLogFunction(e,t,console.timeEnd?console.timeEnd:console.info)}},{key:"timeStamp",value:function(e,t){return this._getLogFunction(e,t,console.timeStamp||Rw)}},{key:"group",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{collapsed:!1},i=n=Bw({logLevel:e,message:t,opts:n}),r=i.collapsed;return n.method=(r?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}},{key:"groupCollapsed",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.group(e,t,Object.assign({},n,{collapsed:!0}))}},{key:"groupEnd",value:function(e){return this._getLogFunction(e,"",console.groupEnd||Rw)}},{key:"withGroup",value:function(e,t,n){this.group(e,t)();try{n()}finally{this.groupEnd(e)()}}},{key:"trace",value:function(){console.trace&&console.trace()}},{key:"_shouldLog",value:function(e){return this.isEnabled()&&this.getLevel()>=Fw(e)}},{key:"_getLogFunction",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],r=arguments.length>4?arguments[4]:void 0;if(this._shouldLog(e)){var o;r=Bw({logLevel:e,message:t,args:i,opts:r}),Cw(n=n||r.method),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=Pw();var a=r.tag||r.message;if(r.once){if(Dw[a])return Rw;Dw[a]=Pw()}return t=function(e,t,n){if("string"==typeof t){var i=n.time?function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:8,n=Math.max(t-e.length,0);return"".concat(" ".repeat(n)).concat(e)}(function(e){return e<10?"".concat(e.toFixed(2),"ms"):e<100?"".concat(e.toFixed(1),"ms"):e<1e3?"".concat(e.toFixed(0),"ms"):"".concat((e/1e3).toFixed(2),"s")}(n.total)):"";t=function(e,t,n){return!ww&&"string"==typeof e&&(t&&(t=Ew(t),e="\x1b[".concat(t,"m").concat(e,"\x1b[39m")),n&&(t=Ew(n),e="\x1b[".concat(n+10,"m").concat(e,"\x1b[49m"))),e}(t=n.time?"".concat(e,": ").concat(i," ").concat(t):"".concat(e,": ").concat(t),n.color,n.background)}return t}(this.id,r.message,r),(o=n).bind.apply(o,[console,t].concat(v(r.args)))}return Rw}}]),e}();return e.VERSION=_w,e}();function Fw(e){if(!e)return 0;var t;switch(typeof e){case"number":t=e;break;case"object":t=e.logLevel||e.priority||0;break;default:return 0}return Cw(Number.isFinite(t)&&t>=0),t}function Bw(e){var t=e.logLevel,n=e.message;e.logLevel=Fw(t);for(var i=e.args?Array.from(e.args):[];i.length&&i.shift()!==n;);switch(e.args=i,typeof t){case"string":case"function":void 0!==n&&i.unshift(n),e.message=t;break;case"object":Object.assign(e,t)}"function"==typeof e.message&&(e.message=e.message());var r=typeof e.message;return Cw("string"===r||"object"===r),Object.assign(e,e.opts)}var Vw=new jw({id:"deck"}),zw={DEFAULT:-1,LNGLAT:1,METER_OFFSETS:2,LNGLAT_OFFSETS:3,CARTESIAN:0};Object.defineProperty(zw,"IDENTITY",{get:function(){return Vw.deprecated("COORDINATE_SYSTEM.IDENTITY","COORDINATE_SYSTEM.CARTESIAN")()||0}});var Uw={WEB_MERCATOR:1,GLOBE:2,WEB_MERCATOR_AUTO_OFFSET:4,IDENTITY:0},Hw={click:{handler:"onClick"},panstart:{handler:"onDragStart"},panmove:{handler:"onDrag"},panend:{handler:"onDragEnd"}},Gw=new jw({id:"luma.gl"});function Ww(e,t){if(!e)throw new Error(t||"luma.gl: assertion failed.")}function qw(e){return"undefined"!=typeof WebGLRenderingContext&&e instanceof WebGLRenderingContext||"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||Boolean(e&&Number.isFinite(e._version))}function Xw(e){return"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||Boolean(e&&2===e._version)}function Yw(e){return Ww(qw(e),"Invalid WebGLRenderingContext"),e}function Kw(e){return Ww(Xw(e),"Requires WebGL2"),e}var $w=r(84761),Qw={},Zw=function e(t){var n=t.gl;this.ext=t,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(t.maxVertexAttribs);for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:{},i=n.copyState,r=void 0!==i&&i,o=n.log,a=void 0===o?function(){}:o;m(this,e),this.gl=t,this.program=null,this.stateStack=[],this.enable=!0,this.cache=r?function(e,t){if("number"==typeof(t=t||uk)){var n=t,i=yk[n];return i?i(e,n):e.getParameter(n)}var r,o={},a=_(Array.isArray(t)?t:Object.keys(t));try{for(a.s();!(r=a.n()).done;){var s=r.value,u=yk[s];o[s]=u?u(e,Number(s)):e.getParameter(Number(s))}}catch(c){a.e(c)}finally{a.f()}return o}(t):Object.assign({},uk),this.log=a,this._updateCache=this._updateCache.bind(this),Object.seal(this)}return b(e,[{key:"push",value:function(){this.stateStack.push({})}},{key:"pop",value:function(){Ww(this.stateStack.length>0),Ck(this.gl,this.stateStack[this.stateStack.length-1]),this.stateStack.pop()}},{key:"_updateCache",value:function(e){var t,n=!1,i=this.stateStack.length>0&&this.stateStack[this.stateStack.length-1];for(var r in e){Ww(void 0!==r);var o=e[r],a=this.cache[r];_k(o,a)||(n=!0,t=a,i&&!(r in i)&&(i[r]=a),this.cache[r]=o)}return{valueChanged:n,oldValue:t}}}]),e}();function Sk(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.enable,i=void 0===n||n,r=t.copyState;if(Ww(void 0!==r),!e.state){var o="undefined"!=typeof global?global:window,a=o.polyfillContext;for(var s in a&&a(e),e.state=new xk(e,{copyState:r}),function(e){var t=e.useProgram.bind(e);e.useProgram=function(n){e.state.program!==n&&(t(n),e.state.program=n)}}(e),gk)kk(e,s,gk[s]);wk(e,"getParameter"),wk(e,"isEnabled")}return e.state.enable=i,e}function Ek(e){Ww(e.state),e.state.pop()}function Ck(e,t){if(Ww(qw(e),"setParameters requires a WebGL context"),!bk(t)){var n={};for(var i in t){var r=Number(i),o=fk[i];o&&("string"==typeof o?n[o]=!0:o(e,t[i],r))}var a=e.state&&e.state.cache;if(a)for(var s in n)vk[s](e,t,a)}}function Ok(e,t,n){if(bk(t))return n(e);var i,r=t.nocatch,o=void 0===r||r;if(function(e){e.state||Sk(e,{copyState:!1}),e.state.push()}(e),Ck(e,t),o)i=n(e),Ek(e);else try{i=n(e)}finally{Ek(e)}return i}function Tk(e){var t=e.luma;if(e.canvas&&t){var n=t.canvasSizeInfo.clientWidth;return n?e.drawingBufferWidth/n:1}return 1}function Ak(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return function(e,t,n,i,r){var o,a=Pk(e[0],t,n),s=Mk(e[1],t,i,r),u=Pk(e[0]+1,t,n),c=u===n-1?u:u-1;return u=Mk(e[1]+1,t,i,r),r?(o=s,s=u=0===u?u:u+1):o=u===i-1?u:u-1,{x:a,y:s,width:Math.max(c-a+1,1),height:Math.max(o-s+1,1)}}(t,Tk(e),e.drawingBufferWidth,e.drawingBufferHeight,n)}function Pk(e,t,n){return Math.min(Math.round(e*t),n-1)}function Mk(e,t,n,i){return i?Math.max(0,n-1-Math.round(e*t)):Math.min(Math.round(e*t),n-1)}var Ik=(0,$w.jU)(),Rk=Ik&&"undefined"!=typeof document,Dk={webgl2:!0,webgl1:!0,throwOnError:!0,manageState:!0,canvas:null,debug:!1,width:800,height:600};function Nk(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Ww(Ik,"createGLContext only available in the browser.\nCreate your own headless context or use 'createHeadlessContext' from @luma.gl/test-utils");var t,n=e=Object.assign({},Dk,e),i=n.width,r=n.height;function o(t){if(e.throwOnError)throw new Error(t);return console.error(t),null}e.onError=o;var a=e,s=a.canvas,u=function(e){var t,n=e.canvas,i=e.width,r=void 0===i?800:i,o=e.height,a=void 0===o?600:o,s=e.onError;return"string"==typeof n?(Rk&&"complete"===document.readyState||s("createGLContext called on canvas '".concat(n,"' before page was loaded")),t=document.getElementById(n)):n?t=n:((t=document.createElement("canvas")).id="lumagl-canvas",t.style.width=Number.isFinite(r)?"".concat(r,"px"):"100%",t.style.height=Number.isFinite(a)?"".concat(a,"px"):"100%",document.body.insertBefore(t,document.body.firstChild)),t}({canvas:s,width:i,height:r,onError:o});return(t=function(e,t){var n=t.onError,i=null,r=function(e){return i=e.statusMessage||i};e.addEventListener("webglcontextcreationerror",r,!1);var o=t.webgl1,a=void 0===o||o,s=t.webgl2,u=void 0===s||s,c=null;return u&&(c=(c=c||e.getContext("webgl2",t))||e.getContext("experimental-webgl2",t)),a&&(c=(c=c||e.getContext("webgl",t))||e.getContext("experimental-webgl",t)),e.removeEventListener("webglcontextcreationerror",r,!1),c?(t.onContextLost&&e.addEventListener("webglcontextlost",t.onContextLost,!1),t.onContextRestored&&e.addEventListener("webglcontextrestored",t.onContextRestored,!1),c):n("Failed to create ".concat(u&&!a?"WebGL2":"WebGL"," context: ").concat(i||"Unknown error"))}(u,e))?(function(e){var t=Xw(e)?"WebGL2":"WebGL1",n=function(e){var t=e.getParameter(7936),n=e.getParameter(7937),i=e.getExtension("WEBGL_debug_renderer_info");return{vendor:i&&e.getParameter(i.UNMASKED_VENDOR_WEBGL||7936)||t,renderer:i&&e.getParameter(i.UNMASKED_RENDERER_WEBGL||7937)||n,vendorMasked:t,rendererMasked:n,version:e.getParameter(7938),shadingLanguageVersion:e.getParameter(35724)}}(e);Gw.info(1,"".concat(t).concat(e.debug?" debug":""," context ").concat(n?"(".concat(n.vendor,",").concat(n.renderer,")"):""))()}(t=Lk(t,e)),t):null}function Lk(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e||e._instrumented)return e;e._version=e._version||function(e){return"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext?2:1}(e),e.luma=e.luma||{},e.luma.canvasSizeInfo=e.luma.canvasSizeInfo||{};var n=t=Object.assign({},Dk,t),i=n.manageState,r=n.debug;return i&&Sk(e,{copyState:!1,log:function(){for(var e=arguments.length,t=new Array(e),n=0;n0?this.lastSampleCount/this.sampleSize:0}},{key:"getSampleAverageTime",value:function(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}},{key:"getSampleHz",value:function(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}},{key:"getAverageCount",value:function(){return this.samples>0?this.count/this.samples:0}},{key:"getAverageTime",value:function(){return this.samples>0?this.time/this.samples:0}},{key:"getHz",value:function(){return this.time>0?this.samples/(this.time/1e3):0}},{key:"reset",value:function(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}},{key:"_checkSampling",value:function(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}}]),e}(),Bk=function(){function e(t){var n=t.id,i=t.stats;m(this,e),this.id=n,this.stats={},this._initializeStats(i),Object.seal(this)}return b(e,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"count";return this._getOrCreate({name:e,type:t})}},{key:"size",get:function(){return Object.keys(this.stats).length}},{key:"reset",value:function(){for(var e in this.stats)this.stats[e].reset();return this}},{key:"forEach",value:function(e){for(var t in this.stats)e(this.stats[t])}},{key:"getTable",value:function(){var e={};return this.forEach(function(t){e[t.name]={time:t.time||0,count:t.count||0,average:t.getAverageTime()||0,hz:t.getHz()||0}}),e}},{key:"_initializeStats",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.forEach(function(t){return e._getOrCreate(t)})}},{key:"_getOrCreate",value:function(e){if(!e||!e.name)return null;var t=e.name,n=e.type;return this.stats[t]||(this.stats[t]=e instanceof Fk?e:new Fk(t,n)),this.stats[t]}}]),e}(),Vk="8.5.7",zk=new(function(){function e(){m(this,e),this.stats=new Map}return b(e,[{key:"get",value:function(e){return this.stats.has(e)||this.stats.set(e,new Bk({id:e})),this.stats.get(e)}}]),e}());if($w.CO.luma&&$w.CO.luma.VERSION!==Vk)throw new Error("luma.gl - multiple VERSIONs detected: ".concat($w.CO.luma.VERSION," vs 8.5.7"));function Uk(e,t){if(!e)throw new Error(t||"luma.gl: assertion failed.")}function Hk(e,t){if("string"!=typeof t)return t;var n=Number(t);if(!isNaN(n))return n;var i=e[t=t.replace(/^.*\./,"")];return Uk(void 0!==i,"Accessing undefined constant GL.".concat(t)),i}function Gk(e,t){for(var n in t=Number(t),e)if(e[n]===t)return"GL.".concat(n);return String(t)}$w.CO.luma||((0,$w.jU)()&&Gw.log(1,"luma.gl 8.5.7 - set luma.log.level=1 (or higher) to trace rendering")(),$w.CO.luma=$w.CO.luma||{VERSION:Vk,version:Vk,log:Gw,stats:zk,globals:{modules:{},nodeIO:{}}});var Wk={};function qk(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"id";return Wk[e]=Wk[e]||1,"".concat(e,"-").concat(Wk[e]++)}function Xk(e){return Uk("number"==typeof e,"Input must be a number"),e&&0==(e&e-1)}function Yk(e){var t=!0;for(var n in e){t=!1;break}return t}function Kk(e,t,n,i){var r="See luma.gl ".concat(n," Upgrade Guide at https://luma.gl/docs/upgrade-guide"),o=Object.getPrototypeOf(e);i.forEach(function(e){o.methodName||(o[e]=function(){throw Gw.removed("Calling removed method ".concat(t,".").concat(e,": "),r)(),new Error(e)})})}var $k="Resource subclass must define virtual methods",Qk=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),Yw(t);var i=n.id,r=n.userData,o=void 0===r?{}:r;this.gl=t,this.gl2=t,this.id=i||qk(this.constructor.name),this.userData=o,this._bound=!1,this._handle=n.handle,void 0===this._handle&&(this._handle=this._createHandle()),this.byteLength=0,this._addStats()}return b(e,[{key:"toString",value:function(){return"".concat(this.constructor.name,"(").concat(this.id,")")}},{key:"handle",get:function(){return this._handle}},{key:"delete",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.deleteChildren,n=void 0!==t&&t,i=this._handle&&this._deleteHandle(this._handle);return this._handle&&this._removeStats(),this._handle=null,i&&n&&i.filter(Boolean).forEach(function(e){return e.delete()}),this}},{key:"bind",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.handle;return"function"!=typeof t?(this._bindHandle(t),this):(this._bound?e=t():(this._bindHandle(this.handle),this._bound=!0,e=t(),this._bound=!1,this._bindHandle(null)),e)}},{key:"unbind",value:function(){this.bind(null)}},{key:"getParameter",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Uk(e=Hk(this.gl,e));var n=(this.constructor.PARAMETERS||{})[e];if(n){var i=Xw(this.gl);if("webgl2"in n&&!i||"extension"in n&&!this.gl.getExtension(n.extension)){var r=n.webgl1,o="webgl2"in n?n.webgl2:n.webgl1;return i?o:r}}return this._getParameter(e,t)}},{key:"getParameters",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.parameters,i=t.keys,r=this.constructor.PARAMETERS||{},o=Xw(this.gl),a={},s=n||Object.keys(r),u=_(s);try{for(u.s();!(e=u.n()).done;){var c=e.value,l=r[c];if(l&&(!("webgl2"in l)||o)&&(!("extension"in l)||this.gl.getExtension(l.extension))){var h=i?Gk(this.gl,c):c;a[h]=this.getParameter(c,t),i&&"GLenum"===l.type&&(a[h]=Gk(this.gl,a[h]))}}}catch(d){u.e(d)}finally{u.f()}return a}},{key:"setParameter",value:function(e,t){Uk(e=Hk(this.gl,e));var n=(this.constructor.PARAMETERS||{})[e];if(n){var i=Xw(this.gl);if("webgl2"in n&&!i||"extension"in n&&!this.gl.getExtension(n.extension))throw new Error("Parameter not available on this platform");"GLenum"===n.type&&(t=Hk(t))}return this._setParameter(e,t),this}},{key:"setParameters",value:function(e){for(var t in e)this.setParameter(t,e[t]);return this}},{key:"stubRemovedMethods",value:function(e,t,n){return Kk(this,e,t,n)}},{key:"initialize",value:function(e){}},{key:"_createHandle",value:function(){throw new Error($k)}},{key:"_deleteHandle",value:function(){throw new Error($k)}},{key:"_bindHandle",value:function(e){throw new Error($k)}},{key:"_getOptsFromHandle",value:function(){throw new Error($k)}},{key:"_getParameter",value:function(e,t){throw new Error($k)}},{key:"_setParameter",value:function(e,t){throw new Error($k)}},{key:"_context",value:function(){return this.gl.luma=this.gl.luma||{},this.gl.luma}},{key:"_addStats",value:function(){var e=this.constructor.name,t=zk.get("Resource Counts");t.get("Resources Created").incrementCount(),t.get("".concat(e,"s Created")).incrementCount(),t.get("".concat(e,"s Active")).incrementCount()}},{key:"_removeStats",value:function(){var e=this.constructor.name;zk.get("Resource Counts").get("".concat(e,"s Active")).decrementCount()}},{key:"_trackAllocatedMemory",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.name,n=zk.get("Memory Usage");n.get("GPU Memory").addCount(e),n.get("".concat(t," Memory")).addCount(e),this.byteLength=e}},{key:"_trackDeallocatedMemory",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.constructor.name,t=zk.get("Memory Usage");t.get("GPU Memory").subtractCount(this.byteLength),t.get("".concat(e," Memory")).subtractCount(this.byteLength),this.byteLength=0}}]),e}();function Zk(e){switch(ArrayBuffer.isView(e)?e.constructor:e){case Float32Array:return 5126;case Uint16Array:return 5123;case Uint32Array:return 5125;case Uint8Array:case Uint8ClampedArray:return 5121;case Int8Array:return 5120;case Int16Array:return 5122;case Int32Array:return 5124;default:throw new Error("Failed to deduce GL constant from typed array")}}function Jk(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.clamped,i=void 0===n||n;switch(e){case 5126:return Float32Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return i?Uint8ClampedArray:Uint8Array;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}function ex(e){for(var t=e.data,n=e.width,i=e.height,r=Math.round(n/2),o=Math.round(i/2),a=new Uint8Array(r*o*4),s=0;s0&&void 0!==arguments[0]?arguments[0]:{};return void 0!==(e=tx("Accessor",e,ix)).type&&(this.type=e.type,(5124===e.type||5125===e.type)&&(this.integer=!0)),void 0!==e.size&&(this.size=e.size),void 0!==e.offset&&(this.offset=e.offset),void 0!==e.stride&&(this.stride=e.stride),void 0!==e.normalized&&(this.normalized=e.normalized),void 0!==e.integer&&(this.integer=e.integer),void 0!==e.divisor&&(this.divisor=e.divisor),void 0!==e.buffer&&(this.buffer=e.buffer),void 0!==e.index&&(this.index="boolean"==typeof e.index?e.index?1:0:e.index),void 0!==e.instanced&&(this.divisor=e.instanced?1:0),void 0!==e.isInstanced&&(this.divisor=e.isInstanced?1:0),this}}],[{key:"getBytesPerElement",value:function(e){return Jk(e.type||5126).BYTES_PER_ELEMENT}},{key:"getBytesPerVertex",value:function(e){return Uk(e.size),Jk(e.type||5126).BYTES_PER_ELEMENT*e.size}},{key:"resolve",value:function(){for(var t=arguments.length,n=new Array(t),i=0;i1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),(i=t.call(this,e,r)).stubRemovedMethods("Buffer","v6.0",["layout","setLayout","getIndexedParameter"]),i.target=r.target||(i.gl.webgl2?36662:34962),i.initialize(r),Object.seal(c(i)),i}return b(n,[{key:"getElementCount",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.accessor;return Math.round(this.byteLength/rx.getBytesPerElement(e))}},{key:"getVertexCount",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.accessor;return Math.round(this.byteLength/rx.getBytesPerVertex(e))}},{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ArrayBuffer.isView(e)&&(e={data:e}),Number.isFinite(e)&&(e={byteLength:e}),e=tx("Buffer",e,ax),this.usage=e.usage||35044,this.debugData=null,this.setAccessor(Object.assign({},e,e.accessor)),e.data?this._setData(e.data,e.offset,e.byteLength):this._setByteLength(e.byteLength||0),this}},{key:"setProps",value:function(e){return"accessor"in(e=tx("Buffer",e,sx))&&this.setAccessor(e.accessor),this}},{key:"setAccessor",value:function(e){return delete(e=Object.assign({},e)).buffer,this.accessor=new rx(e),this}},{key:"reallocate",value:function(e){return e>this.byteLength?(this._setByteLength(e),!0):(this.bytesUsed=e,!1)}},{key:"setData",value:function(e){return this.initialize(e)}},{key:"subData",value:function(e){ArrayBuffer.isView(e)&&(e={data:e});var t=e,n=t.data,i=t.offset,r=void 0===i?0:i,o=t.srcOffset,a=void 0===o?0:o,s=e.byteLength||e.length;Uk(n);var u=this.gl.webgl2?36663:this.target;return this.gl.bindBuffer(u,this.handle),0!==a||void 0!==s?(Kw(this.gl),this.gl.bufferSubData(this.target,r,n,a,s)):this.gl.bufferSubData(u,r,n),this.gl.bindBuffer(u,null),this.debugData=null,this._inferType(n),this}},{key:"copyData",value:function(e){var t=e.sourceBuffer,n=e.readOffset,i=void 0===n?0:n,r=e.writeOffset,o=void 0===r?0:r,a=e.size,s=this.gl;return Kw(s),s.bindBuffer(36662,t.handle),s.bindBuffer(36663,this.handle),s.copyBufferSubData(36662,36663,i,o,a),s.bindBuffer(36662,null),s.bindBuffer(36663,null),this.debugData=null,this}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.dstData,n=void 0===t?null:t,i=e.srcByteOffset,r=void 0===i?0:i,o=e.dstOffset,a=void 0===o?0:o,s=e.length,u=void 0===s?0:s;Kw(this.gl);var c,l,h=Jk(this.accessor.type||5126,{clamped:!1}),d=this._getAvailableElementCount(r),f=a;n?c=(l=n.length)-f:l=f+(c=Math.min(d,u||d));var p=Math.min(d,c);return Uk((u=u||p)<=p),n=n||new h(l),this.gl.bindBuffer(36662,this.handle),this.gl.getBufferSubData(36662,r,n,a,u),this.gl.bindBuffer(36662,null),n}},{key:"bind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?this.target:t,i=e.index,r=void 0===i?this.accessor&&this.accessor.index:i,o=e.offset,a=void 0===o?0:o,s=e.size;return 35345===n||35982===n?void 0!==s?this.gl.bindBufferRange(n,r,this.handle,a,s):(Uk(0===a),this.gl.bindBufferBase(n,r,this.handle)):this.gl.bindBuffer(n,this.handle),this}},{key:"unbind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?this.target:t,i=e.index,r=void 0===i?this.accessor&&this.accessor.index:i;return 35345===n||35982===n?this.gl.bindBufferBase(n,r,null):this.gl.bindBuffer(n,null),this}},{key:"getDebugData",value:function(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(10,this.byteLength)}),{data:this.debugData,changed:!0})}},{key:"invalidateDebugData",value:function(){this.debugData=null}},{key:"_setData",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength+t;Uk(ArrayBuffer.isView(e)),this._trackDeallocatedMemory();var i=this._getTarget();this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,this.usage),this.gl.bufferSubData(i,t,e),this.gl.bindBuffer(i,null),this.debugData=e.slice(0,10),this.bytesUsed=n,this._trackAllocatedMemory(n);var r=Zk(e);return Uk(r),this.setAccessor(new rx(this.accessor,{type:r})),this}},{key:"_setByteLength",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.usage;Uk(e>=0),this._trackDeallocatedMemory();var n=e;0===e&&(n=new Float32Array(0));var i=this._getTarget();return this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,t),this.gl.bindBuffer(i,null),this.usage=t,this.debugData=null,this.bytesUsed=e,this._trackAllocatedMemory(e),this}},{key:"_getTarget",value:function(){return this.gl.webgl2?36663:this.target}},{key:"_getAvailableElementCount",value:function(e){var t=e/Jk(this.accessor.type||5126,{clamped:!1}).BYTES_PER_ELEMENT;return this.getElementCount()-t}},{key:"_inferType",value:function(e){this.accessor.type||this.setAccessor(new rx(this.accessor,{type:Zk(e)}))}},{key:"_createHandle",value:function(){return this.gl.createBuffer()}},{key:"_deleteHandle",value:function(){this.gl.deleteBuffer(this.handle),this._trackDeallocatedMemory()}},{key:"_getParameter",value:function(e){this.gl.bindBuffer(this.target,this.handle);var t=this.gl.getBufferParameter(this.target,e);return this.gl.bindBuffer(this.target,null),t}},{key:"type",get:function(){return Gw.deprecated("Buffer.type","Buffer.accessor.type")(),this.accessor.type}},{key:"bytes",get:function(){return Gw.deprecated("Buffer.bytes","Buffer.byteLength")(),this.byteLength}},{key:"setByteLength",value:function(e){return Gw.deprecated("setByteLength","reallocate")(),this.reallocate(e)}},{key:"updateAccessor",value:function(e){return Gw.deprecated("updateAccessor(...)","setAccessor(new Accessor(buffer.accessor, ...)")(),this.accessor=new rx(this.accessor,e),this}}]),n}(Qk),cx={6407:{dataFormat:6407,types:[5121,33635]},6408:{dataFormat:6408,types:[5121,32819,32820]},6406:{dataFormat:6406,types:[5121]},6409:{dataFormat:6409,types:[5121]},6410:{dataFormat:6410,types:[5121]},33326:{dataFormat:6403,types:[5126],gl2:!0},33328:{dataFormat:33319,types:[5126],gl2:!0},34837:{dataFormat:6407,types:[5126],gl2:!0},34836:{dataFormat:6408,types:[5126],gl2:!0}},lx={6403:1,36244:1,33319:2,33320:2,6407:3,36248:3,6408:4,36249:4,6402:1,34041:1,6406:1,6409:1,6410:2},hx={5126:4,5125:4,5124:4,5123:2,5122:2,5131:2,5120:1,5121:1},dx=[9729,9728],fx=$w.CO.WebGLBuffer||function(){},px=function(e){a(i,e);var n=s(i);function i(e,t){var r;m(this,i);var o=t.id,a=void 0===o?qk("texture"):o,s=t.handle,u=t.target;return(r=n.call(this,e,{id:a,handle:s})).target=u,r.textureUnit=void 0,r.loaded=!1,r.width=void 0,r.height=void 0,r.depth=void 0,r.format=void 0,r.type=void 0,r.dataFormat=void 0,r.border=void 0,r.textureUnit=void 0,r.mipmaps=void 0,r}return b(i,[{key:"toString",value:function(){return"Texture(".concat(this.id,",").concat(this.width,"x").concat(this.height,")")}},{key:"initialize",value:function(){var e,t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.data;if(i instanceof Promise)return i.then(function(e){return t.initialize(Object.assign({},n,{pixels:e,data:e}))}),this;var r="undefined"!=typeof HTMLVideoElement&&i instanceof HTMLVideoElement;if(r&&i.readyState=HTMLVideoElement.HAVE_CURRENT_DATA?i.currentTime:-1}),this}},{key:"update",value:function(){if(this._video){var e=this._video,t=e.video,n=e.parameters;if(e.lastTime===t.currentTime||t.readyState0&&void 0!==arguments[0]?arguments[0]:{};return this._isNPOT()?(Gw.warn("texture: ".concat(this," is Non-Power-Of-Two, disabling mipmaping"))(),this):(this.mipmaps=!0,this.gl.bindTexture(this.target,this.handle),Ok(this.gl,t,function(){e.gl.generateMipmap(e.target)}),this.gl.bindTexture(this.target,null),this)}},{key:"setImageData",value:function(e){var n,i;this._trackDeallocatedMemory("Texture");var r=e.target,o=void 0===r?this.target:r,a=e.pixels,s=void 0===a?null:a,u=e.level,c=void 0===u?0:u,l=e.format,h=void 0===l?this.format:l,d=e.border,f=void 0===d?this.border:d,p=e.offset,v=void 0===p?0:p,g=e.parameters,m=void 0===g?{}:g,y=e.data,b=void 0===y?null:y,w=e.type,k=void 0===w?this.type:w,x=e.width,S=void 0===x?this.width:x,E=e.height,C=void 0===E?this.height:E,O=e.dataFormat,T=void 0===O?this.dataFormat:O,A=e.compressed,P=void 0!==A&&A;b||(b=s),n=this._deduceParameters({format:h,type:k,dataFormat:T,compressed:P,data:b,width:S,height:C}),k=n.type,T=n.dataFormat,P=n.compressed,S=n.width,C=n.height;var M=this.gl;M.bindTexture(this.target,this.handle);var I,R;return i=this._getDataType({data:b,compressed:P}),b=i.data,R=i.dataType,Ok(this.gl,m,function(){switch(R){case"null":M.texImage2D(o,c,h,S,C,f,T,k,b);break;case"typed-array":M.texImage2D(o,c,h,S,C,f,T,k,b,v);break;case"buffer":(I=Kw(M)).bindBuffer(35052,b.handle||b),I.texImage2D(o,c,h,S,C,f,T,k,v),I.bindBuffer(35052,null);break;case"browser-object":Xw(M)?M.texImage2D(o,c,h,S,C,f,T,k,b):M.texImage2D(o,c,h,T,k,b);break;case"compressed":var e,n=_(b.entries());try{for(n.s();!(e=n.n()).done;){var i=t(e.value,2),r=i[0],a=i[1];M.compressedTexImage2D(o,r,a.format,a.width,a.height,f,a.data)}}catch(s){n.e(s)}finally{n.f()}break;default:Uk(!1,"Unknown image data type")}}),this._trackAllocatedMemory(b&&b.byteLength?b.byteLength:this.width*this.height*(lx[this.dataFormat]||4)*(hx[this.type]||1),"Texture"),this.loaded=!0,this}},{key:"setSubImageData",value:function(e){var t,n=this,i=e.target,r=void 0===i?this.target:i,o=e.pixels,a=void 0===o?null:o,s=e.data,u=void 0===s?null:s,c=e.x,l=void 0===c?0:c,h=e.y,d=void 0===h?0:h,f=e.width,p=void 0===f?this.width:f,v=e.height,g=void 0===v?this.height:v,m=e.level,y=void 0===m?0:m,b=e.format,_=void 0===b?this.format:b,w=e.type,k=void 0===w?this.type:w,x=e.dataFormat,S=void 0===x?this.dataFormat:x,E=e.compressed,C=void 0!==E&&E,O=e.offset,T=void 0===O?0:O,A=e.border,P=(void 0===A&&this.border,e.parameters),M=void 0===P?{}:P;if(t=this._deduceParameters({format:_,type:k,dataFormat:S,compressed:C,data:u,width:p,height:g}),k=t.type,S=t.dataFormat,C=t.compressed,p=t.width,g=t.height,Uk(0===this.depth,"texSubImage not supported for 3D textures"),u||(u=a),u&&u.data){var I=u;u=I.data,p=I.shape[0],g=I.shape[1]}u instanceof ux&&(u=u.handle),this.gl.bindTexture(this.target,this.handle),Ok(this.gl,M,function(){if(C)n.gl.compressedTexSubImage2D(r,y,l,d,p,g,_,u);else if(null===u)n.gl.texSubImage2D(r,y,l,d,p,g,S,k,null);else if(ArrayBuffer.isView(u))n.gl.texSubImage2D(r,y,l,d,p,g,S,k,u,T);else if(u instanceof fx){var e=Kw(n.gl);e.bindBuffer(35052,u),e.texSubImage2D(r,y,l,d,p,g,S,k,T),e.bindBuffer(35052,null)}else Xw(n.gl)?Kw(n.gl).texSubImage2D(r,y,l,d,p,g,S,k,u):n.gl.texSubImage2D(r,y,l,d,S,k,u)}),this.gl.bindTexture(this.target,null)}},{key:"copyFramebuffer",value:function(){return Gw.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}},{key:"getActiveUnit",value:function(){return this.gl.getParameter(34016)-33984}},{key:"bind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.textureUnit,t=this.gl;return void 0!==e&&(this.textureUnit=e,t.activeTexture(33984+e)),t.bindTexture(this.target,this.handle),e}},{key:"unbind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.textureUnit,t=this.gl;return void 0!==e&&(this.textureUnit=e,t.activeTexture(33984+e)),t.bindTexture(this.target,null),e}},{key:"_getDataType",value:function(e){var t=e.data,n=e.compressed;return void 0!==n&&n?{data:t,dataType:"compressed"}:null===t?{data:t,dataType:"null"}:ArrayBuffer.isView(t)?{data:t,dataType:"typed-array"}:t instanceof ux?{data:t.handle,dataType:"buffer"}:t instanceof fx?{data:t,dataType:"buffer"}:{data:t,dataType:"browser-object"}}},{key:"_deduceParameters",value:function(e){var t,n=e.format,i=e.data,r=e.width,o=e.height,a=e.dataFormat,s=e.type,u=e.compressed,c=cx[n];return{dataFormat:a=a||c&&c.dataFormat,type:s=s||c&&c.types[0],compressed:u=u||c&&c.compressed,width:r=(t=this._deduceImageSize(i,r,o)).width,height:o=t.height,format:n,data:i}}},{key:"_deduceImageSize",value:function(e,t,n){var i;return Uk(i="undefined"!=typeof ImageData&&e instanceof ImageData?{width:e.width,height:e.height}:"undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement?{width:e.naturalWidth,height:e.naturalHeight}:"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap?{width:e.width,height:e.height}:"undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement?{width:e.videoWidth,height:e.videoHeight}:e?{width:t,height:n}:{width:t>=0?t:1,height:n>=0?n:1},"Could not deduced texture size"),Uk(void 0===t||i.width===t,"Deduced texture width does not match supplied width"),Uk(void 0===n||i.height===n,"Deduced texture height does not match supplied height"),i}},{key:"_createHandle",value:function(){return this.gl.createTexture()}},{key:"_deleteHandle",value:function(){this.gl.deleteTexture(this.handle),this._trackDeallocatedMemory("Texture")}},{key:"_getParameter",value:function(e){switch(e){case 4096:return this.width;case 4097:return this.height;default:this.gl.bindTexture(this.target,this.handle);var t=this.gl.getTexParameter(this.target,e);return this.gl.bindTexture(this.target,null),t}}},{key:"_setParameter",value:function(e,t){switch(this.gl.bindTexture(this.target,this.handle),t=this._getNPOTParam(e,t),e){case 33082:case 33083:this.gl.texParameterf(this.handle,e,t);break;case 4096:case 4097:Uk(!1);break;default:this.gl.texParameteri(this.target,e,t)}return this.gl.bindTexture(this.target,null),this}},{key:"_isNPOT",value:function(){return!(Xw(this.gl)||!this.width||!this.height||Xk(this.width)&&Xk(this.height))}},{key:"_updateForNPOT",value:function(e){void 0===e[this.gl.TEXTURE_MIN_FILTER]&&(e[this.gl.TEXTURE_MIN_FILTER]=this.gl.LINEAR),void 0===e[this.gl.TEXTURE_WRAP_S]&&(e[this.gl.TEXTURE_WRAP_S]=this.gl.CLAMP_TO_EDGE),void 0===e[this.gl.TEXTURE_WRAP_T]&&(e[this.gl.TEXTURE_WRAP_T]=this.gl.CLAMP_TO_EDGE)}},{key:"_getNPOTParam",value:function(e,t){if(this._isNPOT())switch(e){case 10241:-1===dx.indexOf(t)&&(t=9729);break;case 10242:case 10243:33071!==t&&(t=33071)}return t}}],[{key:"isSupported",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.format,i=t.linearFiltering,r=!0;return n&&(r=(r=r&&function(e,t){var n=cx[t];if(!n)return!1;if(void 0===n.gl1&&void 0===n.gl2)return!0;var i=Xw(e)&&n.gl2||n.gl1;return"string"==typeof i?e.getExtension(i):i}(e,n))&&(!i||function(e,t){var n=cx[t];switch(n&&n.types[0]){case 5126:return e.getExtension("OES_texture_float_linear");case 5131:return e.getExtension("OES_texture_half_float_linear");default:return!0}}(e,n))),r}}]),i}(Qk);function vx(e,t){return Uk("string"==typeof e),e=""+e,new Promise(function(n,i){try{var r=new Image;r.onload=function(){return n(r)},r.onerror=function(){return i(new Error("Could not load image ".concat(e,".")))},r.crossOrigin=t&&t.crossOrigin||"anonymous",r.src=e}catch(r){i(r)}})}var gx=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Yw(e),(r instanceof Promise||"string"==typeof r)&&(r={data:r}),"string"==typeof r.data&&(r=Object.assign({},r,{data:vx(r.data)})),(i=t.call(this,e,Object.assign({},r,{target:3553}))).initialize(r),Object.seal(c(i)),i}return b(n,null,[{key:"isSupported",value:function(e,t){return px.isSupported(e,t)}}]),n}(px),mx="EXT_color_buffer_float",yx={33189:{bpp:2},33190:{gl2:!0,bpp:3},36012:{gl2:!0,bpp:4},36168:{bpp:1},34041:{bpp:4},35056:{gl2:!0,bpp:4},36013:{gl2:!0,bpp:5},32854:{bpp:2},36194:{bpp:2},32855:{bpp:2},33321:{gl2:!0,bpp:1},33330:{gl2:!0,bpp:1},33329:{gl2:!0,bpp:1},33332:{gl2:!0,bpp:2},33331:{gl2:!0,bpp:2},33334:{gl2:!0,bpp:4},33333:{gl2:!0,bpp:4},33323:{gl2:!0,bpp:2},33336:{gl2:!0,bpp:2},33335:{gl2:!0,bpp:2},33338:{gl2:!0,bpp:4},33337:{gl2:!0,bpp:4},33340:{gl2:!0,bpp:8},33339:{gl2:!0,bpp:8},32849:{gl2:!0,bpp:3},32856:{gl2:!0,bpp:4},32857:{gl2:!0,bpp:4},36220:{gl2:!0,bpp:4},36238:{gl2:!0,bpp:4},36975:{gl2:!0,bpp:4},36214:{gl2:!0,bpp:8},36232:{gl2:!0,bpp:8},36226:{gl2:!0,bpp:16},36208:{gl2:!0,bpp:16},33325:{gl2:mx,bpp:2},33327:{gl2:mx,bpp:4},34842:{gl2:mx,bpp:8},33326:{gl2:mx,bpp:4},33328:{gl2:mx,bpp:8},34836:{gl2:mx,bpp:16},35898:{gl2:mx,bpp:4}},bx=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),(i=t.call(this,e,r)).initialize(r),Object.seal(c(i)),i}return b(n,[{key:"initialize",value:function(e){var t=e.format,n=e.width,i=void 0===n?1:n,r=e.height,o=void 0===r?1:r,a=e.samples,s=void 0===a?0:a;return Uk(t,"Needs format"),this._trackDeallocatedMemory(),this.gl.bindRenderbuffer(36161,this.handle),0!==s&&Xw(this.gl)?this.gl.renderbufferStorageMultisample(36161,s,t,i,o):this.gl.renderbufferStorage(36161,t,i,o),this.format=t,this.width=i,this.height=o,this.samples=s,this._trackAllocatedMemory(this.width*this.height*(this.samples||1)*yx[this.format].bpp),this}},{key:"resize",value:function(e){var t=e.width,n=e.height;return t!==this.width||n!==this.height?this.initialize({width:t,height:n,format:this.format,samples:this.samples}):this}},{key:"_createHandle",value:function(){return this.gl.createRenderbuffer()}},{key:"_deleteHandle",value:function(){this.gl.deleteRenderbuffer(this.handle),this._trackDeallocatedMemory()}},{key:"_bindHandle",value:function(e){this.gl.bindRenderbuffer(36161,e)}},{key:"_syncHandle",value:function(e){this.format=this.getParameter(36164),this.width=this.getParameter(36162),this.height=this.getParameter(36163),this.samples=this.getParameter(36011)}},{key:"_getParameter",value:function(e){return this.gl.bindRenderbuffer(36161,this.handle),this.gl.getRenderbufferParameter(36161,e)}}],[{key:"isSupported",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{format:null},n=t.format;return!n||function(e,t,n){var i=n[t];if(!i)return!1;var r=Xw(e)&&i.gl2||i.gl1;return"string"==typeof r?e.getExtension(r):r}(e,n,yx)}},{key:"getSamplesForFormat",value:function(e,t){var n=t.format;return e.getInternalformatParameter(36161,n,32937)}}]),n}(Qk),_x="clear: bad arguments";function wx(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.framebuffer,i=void 0===n?null:n,r=t.color,o=void 0===r?null:r,a=t.depth,s=void 0===a?null:a,u=t.stencil,c=void 0===u?null:u,l={};i&&(l.framebuffer=i);var h=0;o&&(h|=16384,!0!==o&&(l.clearColor=o)),s&&(h|=256,!0!==s&&(l.clearDepth=s)),c&&(h|=1024,!0!==s&&(l.clearStencil=s)),Uk(0!==h,_x),Ok(e,l,function(){e.clear(h)})}function kx(e,t,n,i,r,o,a){try{var s=e[o](a),u=s.value}catch(c){return void n(c)}s.done?t(u):Promise.resolve(u).then(i,r)}function xx(e){return function(){var t=this,n=arguments;return new Promise(function(i,r){var o=e.apply(t,n);function a(e){kx(o,i,r,a,s,"next",e)}function s(e){kx(o,i,r,a,s,"throw",e)}a(void 0)})}}var Sx=[34069,34070,34071,34072,34073,34074],Ex=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Yw(e),(i=t.call(this,e,Object.assign({},r,{target:34067}))).initialize(r),Object.seal(c(i)),i}return b(n,[{key:"initialize",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.mipmaps,i=void 0===n||n,r=t.parameters,o=void 0===r?{}:r;return this.opts=t,this.setCubeMapImageData(t).then(function(){e.loaded=!0,i&&e.generateMipmap(t),e.setParameters(o)}),this}},{key:"subImage",value:function(e){var t=e.face,n=e.data,i=e.x,r=void 0===i?0:i,o=e.y,a=void 0===o?0:o,s=e.mipmapLevel,u=void 0===s?0:s;return this._subImage({target:t,data:n,x:r,y:a,mipmapLevel:u})}},{key:"setCubeMapImageData",value:function(e){var t=e.width,n=e.height,i=e.pixels,r=e.data,o=e.border,a=void 0===o?0:o,s=e.format,u=void 0===s?6408:s,c=e.type,l=void 0===c?5121:c,h=this;return xx(regeneratorRuntime.mark(function e(){var o,s,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=h.gl,s=i||r,e.next=4,Promise.all(Sx.map(function(e){var t=s[e];return Promise.all(Array.isArray(t)?t:[t])}));case 4:c=e.sent,h.bind(),Sx.forEach(function(e,i){c[i].length>1&&!1!==h.opts.mipmaps&&Gw.warn("".concat(h.id," has mipmap and multiple LODs."))(),c[i].forEach(function(i,r){t&&n?o.texImage2D(e,r,u,t,n,a,u,l,i):o.texImage2D(e,r,u,u,l,i)})}),h.unbind();case 6:case"end":return e.stop()}},e)}))()}},{key:"setImageDataForFace",value:function(e){var t=this,n=e.face,i=e.width,r=e.height,o=e.pixels,a=e.data,s=e.border,u=void 0===s?0:s,c=e.format,l=void 0===c?6408:c,h=e.type,d=void 0===h?5121:h,f=this.gl,p=o||a;return this.bind(),p instanceof Promise?p.then(function(i){return t.setImageDataForFace(Object.assign({},e,{face:n,data:i,pixels:i}))}):this.width||this.height?f.texImage2D(n,0,l,i,r,u,l,d,p):f.texImage2D(n,0,l,l,d,p),this}}]),n}(px);return e.FACES=Sx,e}(),Cx=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Kw(e),(i=t.call(this,e,r=Object.assign({depth:1},r,{target:32879,unpackFlipY:!1}))).initialize(r),Object.seal(c(i)),i}return b(n,[{key:"setImageData",value:function(e){var t=this,n=e.level,i=void 0===n?0:n,r=e.dataFormat,o=void 0===r?6408:r,a=e.width,s=e.height,u=e.depth,c=void 0===u?1:u,l=e.border,h=void 0===l?0:l,d=e.format,f=e.type,p=void 0===f?5121:f,v=e.offset,g=void 0===v?0:v,m=e.data,y=e.parameters,b=void 0===y?{}:y;return this._trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle),Ok(this.gl,b,function(){ArrayBuffer.isView(m)&&t.gl.texImage3D(t.target,i,o,a,s,c,h,d,p,m),m instanceof ux&&(t.gl.bindBuffer(35052,m.handle),t.gl.texImage3D(t.target,i,o,a,s,c,h,d,p,g))}),this._trackAllocatedMemory(m&&m.byteLength?m.byteLength:this.width*this.height*this.depth*(lx[this.dataFormat]||4)*(hx[this.type]||1),"Texture"),this.loaded=!0,this}}],[{key:"isSupported",value:function(e){return Xw(e)}}]),n}(px);function Ox(e,t){var n=e.gl,i=e.width,r=e.height,o=e.id;return new Mx(n,Object.assign({},t,{id:"framebuffer-for-".concat(o),width:i,height:r,attachments:{36064:e}}))}function Tx(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.sourceX,i=void 0===n?0:n,r=t.sourceY,o=void 0===r?0:r,a=t.sourceFormat,s=void 0===a?6408:a,u=t.sourceAttachment,c=void 0===u?36064:u,l=t.target,h=void 0===l?null:l,d=t.sourceWidth,f=t.sourceHeight,p=t.sourceType,v=function(e){return e instanceof Mx?{framebuffer:e,deleteFramebuffer:!1}:{framebuffer:Ox(e),deleteFramebuffer:!0}}(e),g=v.framebuffer,m=v.deleteFramebuffer;Uk(g);var y=g.gl,b=g.handle,_=g.attachments;d=d||g.width,f=f||g.height,36064===c&&null===b&&(c=1028),Uk(_[c]),h=function(e,t,n,i,r){return e||new(Jk(t=t||5121,{clamped:!1}))(i*r*function(e){switch(e){case 6406:case 33326:case 6403:return 1;case 33328:case 33319:return 2;case 6407:case 34837:return 3;case 6408:case 34836:return 4;default:return Uk(!1),0}}(n))}(h,p=p||_[c].type,s,d,f),p=p||Zk(h);var w=y.bindFramebuffer(36160,b);return y.readPixels(i,o,d,f,s,p,h),y.bindFramebuffer(36160,w||null),m&&g.delete(),h}function Ax(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.sourceAttachment,i=void 0===n?36064:n,r=t.targetMaxHeight,o=void 0===r?Number.MAX_SAFE_INTEGER:r,a=Tx(e,{sourceAttachment:i}),s=e.width,u=e.height;u>o;){var c=ex({data:a,width:s,height:u});a=c.data,s=c.width,u=c.height}!function(e){var t=e.data,n=e.height,i=e.bytesPerPixel,r=e.temp,o=e.width*(void 0===i?4:i);r=r||new Uint8Array(o);for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:{};return m(this,r),(t=i.call(this,e,n)).width=null,t.height=null,t.attachments={},t.readBuffer=36064,t.drawBuffers=[36064],t.ownResources=[],t.initialize(n),Object.seal(c(t)),t}return b(r,[{key:"MAX_COLOR_ATTACHMENTS",get:function(){var e=Kw(this.gl);return e.getParameter(e.MAX_COLOR_ATTACHMENTS)}},{key:"MAX_DRAW_BUFFERS",get:function(){var e=Kw(this.gl);return e.getParameter(e.MAX_DRAW_BUFFERS)}},{key:"color",get:function(){return this.attachments[36064]||null}},{key:"texture",get:function(){return this.attachments[36064]||null}},{key:"depth",get:function(){return this.attachments[36096]||this.attachments[33306]||null}},{key:"stencil",get:function(){return this.attachments[36128]||this.attachments[33306]||null}},{key:"initialize",value:function(e){var t=e.width,n=void 0===t?1:t,i=e.height,r=void 0===i?1:i,o=e.attachments,a=void 0===o?null:o,s=e.color,u=void 0===s||s,c=e.depth,l=void 0===c||c,h=e.stencil,d=void 0!==h&&h,f=e.check,p=void 0===f||f,v=e.readBuffer,g=e.drawBuffers;if(Uk(n>=0&&r>=0,"Width and height need to be integers"),this.width=n,this.height=r,a)for(var m in a){var y=a[m];(Array.isArray(y)?y[0]:y).resize({width:n,height:r})}else a=this._createDefaultAttachments(u,l,d,n,r);this.update({clearAttachments:!0,attachments:a,readBuffer:v,drawBuffers:g}),a&&p&&this.checkStatus()}},{key:"delete",value:function(){var t,n=_(this.ownResources);try{for(n.s();!(t=n.n()).done;){t.value.delete()}}catch(i){n.e(i)}finally{n.f()}return e(p(r.prototype),"delete",this).call(this),this}},{key:"update",value:function(e){var t=e.attachments,n=void 0===t?{}:t,i=e.readBuffer,r=e.drawBuffers,o=e.clearAttachments,a=void 0!==o&&o,s=e.resizeAttachments,u=void 0===s||s;this.attach(n,{clearAttachments:a,resizeAttachments:u});var c=this.gl,l=c.bindFramebuffer(36160,this.handle);return i&&this._setReadBuffer(i),r&&this._setDrawBuffers(r),c.bindFramebuffer(36160,l||null),this}},{key:"resize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.width,n=e.height;if(null===this.handle)return Uk(void 0===t&&void 0===n),this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;for(var i in void 0===t&&(t=this.gl.drawingBufferWidth),void 0===n&&(n=this.gl.drawingBufferHeight),t!==this.width&&n!==this.height&&Gw.log(2,"Resizing framebuffer ".concat(this.id," to ").concat(t,"x").concat(n))(),this.attachments)this.attachments[i].resize({width:t,height:n});return this.width=t,this.height=n,this}},{key:"attach",value:function(e){var n=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=i.clearAttachments,o=void 0!==r&&r,a=i.resizeAttachments,s=void 0===a||a,u={};o&&Object.keys(this.attachments).forEach(function(e){u[e]=null}),Object.assign(u,e);var c=this.gl.bindFramebuffer(36160,this.handle);for(var l in u){Uk(void 0!==l,"Misspelled framebuffer binding point?");var h=Number(l),d=u[h],f=d;if(f)if(f instanceof bx)this._attachRenderbuffer({attachment:h,renderbuffer:f});else if(Array.isArray(d)){var p=t(d,3),v=p[0],g=p[1],m=void 0===g?0:g,y=p[2],b=void 0===y?0:y;f=v,this._attachTexture({attachment:h,texture:v,layer:m,level:b})}else this._attachTexture({attachment:h,texture:f,layer:0,level:0});else this._unattach(h);s&&f&&f.resize({width:this.width,height:this.height})}this.gl.bindFramebuffer(36160,c||null),Object.assign(this.attachments,e),Object.keys(this.attachments).filter(function(e){return!n.attachments[e]}).forEach(function(e){delete n.attachments[e]})}},{key:"checkStatus",value:function(){var e=this.getStatus();if(36053!==e)throw new Error(function(e){return(r.STATUS||{})[e]||"Framebuffer error ".concat(e)}(e));return this}},{key:"getStatus",value:function(){var e=this.gl,t=e.bindFramebuffer(36160,this.handle),n=e.checkFramebufferStatus(36160);return e.bindFramebuffer(36160,t||null),n}},{key:"clear",value:function(){var e=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.color,r=n.depth,o=n.stencil,a=n.drawBuffers,s=void 0===a?[]:a,u=this.gl.bindFramebuffer(36160,this.handle);return(i||r||o)&&wx(this.gl,{color:i,depth:r,stencil:o}),s.forEach(function(n,i){!function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.framebuffer,r=void 0===i?null:i,o=n.buffer,a=void 0===o?6144:o,s=n.drawBuffer,u=void 0===s?0:s,c=n.value,l=void 0===c?[0,0,0,0]:c;Kw(e),Ok(e,{framebuffer:r},function(){switch(a){case 6144:switch(l.constructor){case Int32Array:e.clearBufferiv(a,u,l);break;case Uint32Array:e.clearBufferuiv(a,u,l);break;case Float32Array:default:e.clearBufferfv(a,u,l)}break;case 6145:e.clearBufferfv(6145,0,[l]);break;case 6146:e.clearBufferiv(6146,0,[l]);break;case 34041:var n=t(l,2),i=n[0],r=n[1];e.clearBufferfi(34041,0,i,r);break;default:Uk(!1,_x)}})}(e.gl,{drawBuffer:i,value:n})}),this.gl.bindFramebuffer(36160,u||null),this}},{key:"readPixels",value:function(){return Gw.error("Framebuffer.readPixels() is no logner supported, use readPixelsToArray(framebuffer)")(),null}},{key:"readPixelsToBuffer",value:function(){return Gw.error("Framebuffer.readPixelsToBuffer()is no logner supported, use readPixelsToBuffer(framebuffer)")(),null}},{key:"copyToDataUrl",value:function(){return Gw.error("Framebuffer.copyToDataUrl() is no logner supported, use copyToDataUrl(framebuffer)")(),null}},{key:"copyToImage",value:function(){return Gw.error("Framebuffer.copyToImage() is no logner supported, use copyToImage(framebuffer)")(),null}},{key:"copyToTexture",value:function(){return Gw.error("Framebuffer.copyToTexture({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}},{key:"blit",value:function(){return Gw.error("Framebuffer.blit({...}) is no logner supported, use blit(source, target, opts)")(),null}},{key:"invalidate",value:function(e){var t=e.attachments,n=void 0===t?[]:t,i=e.x,r=void 0===i?0:i,o=e.y,a=void 0===o?0:o,s=e.width,u=e.height,c=Kw(this.gl),l=c.bindFramebuffer(36008,this.handle);return 0===r&&0===a&&void 0===s&&void 0===u?c.invalidateFramebuffer(36008,n):c.invalidateFramebuffer(36008,n,r,a,s,u),c.bindFramebuffer(36008,l),this}},{key:"getAttachmentParameter",value:function(e,t,n){var i=this._getAttachmentParameterFallback(t);return null===i&&(this.gl.bindFramebuffer(36160,this.handle),i=this.gl.getFramebufferAttachmentParameter(36160,e,t),this.gl.bindFramebuffer(36160,null)),n&&i>1e3&&(i=Gk(this.gl,i)),i}},{key:"getAttachmentParameters",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:36064,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.constructor.ATTACHMENT_PARAMETERS||[],r={},o=_(i);try{for(o.s();!(e=o.n()).done;){var a=e.value;r[n?Gk(this.gl,a):a]=this.getAttachmentParameter(t,a,n)}}catch(s){o.e(s)}finally{o.f()}return r}},{key:"getParameters",value:function(){for(var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=Object.keys(this.attachments),n={},i=0,r=t;i0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(e>Gw.level||"undefined"==typeof window)return this;t=t||"Framebuffer ".concat(this.id);var n=Ax(this,{targetMaxHeight:100});return Gw.image({logLevel:e,message:t,image:n},t)(),this}},{key:"bind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?36160:t;return this.gl.bindFramebuffer(n,this.handle),this}},{key:"unbind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?36160:t;return this.gl.bindFramebuffer(n,null),this}},{key:"_createDefaultAttachments",value:function(e,t,n,i,r){var o=null;return e&&((o=o||{})[36064]=new gx(this.gl,{id:"".concat(this.id,"-color0"),pixels:null,format:6408,type:5121,width:i,height:r,mipmaps:!1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.ownResources.push(o[36064])),t&&n?((o=o||{})[33306]=new bx(this.gl,{id:"".concat(this.id,"-depth-stencil"),format:35056,width:i,height:111}),this.ownResources.push(o[33306])):t?((o=o||{})[36096]=new bx(this.gl,{id:"".concat(this.id,"-depth"),format:33189,width:i,height:r}),this.ownResources.push(o[36096])):n&&Uk(!1),o}},{key:"_unattach",value:function(e){var t=this.attachments[e];!t||(t instanceof bx?this.gl.framebufferRenderbuffer(36160,e,36161,null):this.gl.framebufferTexture2D(36160,e,3553,null,0),delete this.attachments[e])}},{key:"_attachRenderbuffer",value:function(e){var t=e.attachment,n=void 0===t?36064:t,i=e.renderbuffer;this.gl.framebufferRenderbuffer(36160,n,36161,i.handle),this.attachments[n]=i}},{key:"_attachTexture",value:function(e){var t=e.attachment,n=void 0===t?36064:t,i=e.texture,r=e.layer,o=e.level,a=this.gl;switch(a.bindTexture(i.target,i.handle),i.target){case 35866:case 32879:Kw(a).framebufferTextureLayer(36160,n,i.target,o,r);break;case 34067:var s=function(e){return e<34069?e+34069:e}(r);a.framebufferTexture2D(36160,n,s,i.handle,o);break;case 3553:a.framebufferTexture2D(36160,n,3553,i.handle,o);break;default:Uk(!1,"Illegal texture type")}a.bindTexture(i.target,null),this.attachments[n]=i}},{key:"_setReadBuffer",value:function(e){var t=function(e){return Xw(e)?e:null}(this.gl);t?t.readBuffer(e):Uk(36064===e||1029===e,Px),this.readBuffer=e}},{key:"_setDrawBuffers",value:function(e){var t=this.gl,n=Kw(t);if(n)n.drawBuffers(e);else{var i=t.getExtension("WEBGL_draw_buffers");i?i.drawBuffersWEBGL(e):Uk(1===e.length&&(36064===e[0]||1029===e[0]),Px)}this.drawBuffers=e}},{key:"_getAttachmentParameterFallback",value:function(e){var t=function(e){for(var t in e.luma=e.luma||{},e.luma.caps=e.luma.caps||{},Ix)void 0===e.luma.caps[t]&&(e.luma.caps[t]=Nx(e,t));return e.luma.caps}(this.gl);switch(e){case 36052:return t.WEBGL2?null:0;case 33298:case 33299:case 33300:case 33301:case 33302:case 33303:return t.WEBGL2?null:8;case 33297:return t.WEBGL2?null:5125;case 33296:return t.WEBGL2||t.EXT_sRGB?null:9729;default:return null}}},{key:"_createHandle",value:function(){return this.gl.createFramebuffer()}},{key:"_deleteHandle",value:function(){this.gl.deleteFramebuffer(this.handle)}},{key:"_bindHandle",value:function(e){return this.gl.bindFramebuffer(36160,e)}}],[{key:"isSupported",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.colorBufferFloat,i=t.colorBufferHalfFloat,r=!0;return n&&(r=Boolean(e.getExtension("EXT_color_buffer_float")||e.getExtension("WEBGL_color_buffer_float")||e.getExtension("OES_texture_float"))),i&&(r=r&&Boolean(e.getExtension("EXT_color_buffer_float")||e.getExtension("EXT_color_buffer_half_float"))),r}},{key:"getDefaultFramebuffer",value:function(e){return e.luma=e.luma||{},e.luma.defaultFramebuffer=e.luma.defaultFramebuffer||new r(e,{id:"default-framebuffer",handle:null,attachments:{}}),e.luma.defaultFramebuffer}}]),r}(Qk);Mx.ATTACHMENT_PARAMETERS=[36049,36048,33296,33298,33299,33300,33301,33302,33303];var Ix={WEBGL2:[!1,!0],VERTEX_ARRAY_OBJECT:["OES_vertex_array_object",!0],TIMER_QUERY:["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],INSTANCED_RENDERING:["ANGLE_instanced_arrays",!0],MULTIPLE_RENDER_TARGETS:["WEBGL_draw_buffers",!0],ELEMENT_INDEX_UINT32:["OES_element_index_uint",!0],BLEND_EQUATION_MINMAX:["EXT_blend_minmax",!0],FLOAT_BLEND:["EXT_float_blend"],COLOR_ENCODING_SRGB:["EXT_sRGB",!0],TEXTURE_DEPTH:["WEBGL_depth_texture",!0],TEXTURE_FLOAT:["OES_texture_float",!0],TEXTURE_HALF_FLOAT:["OES_texture_half_float",!0],TEXTURE_FILTER_LINEAR_FLOAT:["OES_texture_float_linear"],TEXTURE_FILTER_LINEAR_HALF_FLOAT:["OES_texture_half_float_linear"],TEXTURE_FILTER_ANISOTROPIC:["EXT_texture_filter_anisotropic"],COLOR_ATTACHMENT_RGBA32F:[function(e){var t=new gx(e,{format:6408,type:5126,dataFormat:6408}),n=new Mx(e,{id:"test-framebuffer",check:!1,attachments:{36064:t}}),i=n.getStatus();return t.delete(),n.delete(),36053===i},"EXT_color_buffer_float"],COLOR_ATTACHMENT_FLOAT:[!1,"EXT_color_buffer_float"],COLOR_ATTACHMENT_HALF_FLOAT:["EXT_color_buffer_half_float"],GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]};function Rx(e,t){return Dx(e,t)}function Dx(e,t){return(t=Array.isArray(t)?t:[t]).every(function(t){return Nx(e,t)})}function Nx(e,t){return e.luma=e.luma||{},e.luma.caps=e.luma.caps||{},void 0===e.luma.caps[t]&&(e.luma.caps[t]=function(e,t){var n,i=Ix[t];Uk(i,t);var r=Xw(e)&&i[1]||i[0];if("function"==typeof r)n=r(e);else if(Array.isArray(r)){n=!0;var o,a=_(r);try{for(a.s();!(o=a.n()).done;){var s=o.value;n=n&&Boolean(e.getExtension(s))}}catch(u){a.e(u)}finally{a.f()}}else"string"==typeof r?n=Boolean(e.getExtension(r)):"boolean"==typeof r?n=r:Uk(!1);return n}(e,t)),e.luma.caps[t]||Gw.log(2,"Feature: ".concat(t," not supported"))(),e.luma.caps[t]}var Lx=function(){function e(t,n){m(this,e),this.opts=n,this.source=t}return b(e,[{key:"value",get:function(){return this.source.value}},{key:"getValue",value:function(){var e=this.source.getBuffer(),t=this.getAccessor();if(e)return[e,t];var n=this.source.value,i=t.size,r=n;if(n&&n.length!==i){r=new Float32Array(i);for(var o=t.elementOffset||0,a=0;ai&&(r=i);var o=this._pool,a=e.BYTES_PER_ELEMENT*r,s=o.findIndex(function(e){return e.byteLength>=a});if(s>=0){var u=new e(o.splice(s,1)[0],0,r);return n&&u.fill(0),u}return new e(r)}},{key:"_release",value:function(e){if(ArrayBuffer.isView(e)){var t=this._pool,n=e.buffer,i=n.byteLength,r=t.findIndex(function(e){return e.byteLength>=i});r<0?t.push(n):(r>0||t.lengththis.props.poolSize&&t.shift()}}}]),e}());Math;var Fx=1/180*Math.PI,Bx={};function Vx(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.precision,i=void 0===n?Bx.precision||4:n;return e=function(e){return Math.round(e/Bx.EPSILON)*Bx.EPSILON}(e),"".concat(parseFloat(e.toPrecision(i)))}function zx(e){return Array.isArray(e)||ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Ux(e,t,n){if(zx(e)){n=n||function(e){return e.clone?e.clone():new Array(e.length)}(e);for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:0,n=0;n0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=0;n0?", ":"")+Vx(this[n],e);return"".concat(e.printTypes?this.constructor.name:"","[").concat(t,"]")}},{key:"equals",value:function(e){if(!e||this.length!==e.length)return!1;for(var t=0;t2&&void 0!==arguments[2]?arguments[2]:"";if(Bx.debug&&!function(e,t){if(e.length!==t)return!1;for(var n=0;n=0&&e=0&&e0&&void 0!==arguments[0]?arguments[0]:0,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return m(this,n),e=t.call(this,-0,-0,-0),1===arguments.length&&zx(i)?e.copy(i):(Bx.debug&&(Kx(i),Kx(r),Kx(o)),e[0]=i,e[1]=r,e[2]=o),e}return b(n,[{key:"set",value:function(e,t,n){return this[0]=e,this[1]=t,this[2]=n,this.check()}},{key:"copy",value:function(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this.check()}},{key:"fromObject",value:function(e){return Bx.debug&&(Kx(e.x),Kx(e.y),Kx(e.z)),this[0]=e.x,this[1]=e.y,this[2]=e.z,this.check()}},{key:"toObject",value:function(e){return e.x=this[0],e.y=this[1],e.z=this[2],e}},{key:"ELEMENTS",get:function(){return 3}},{key:"z",get:function(){return this[2]},set:function(e){this[2]=Kx(e)}},{key:"angle",value:function(e){return function(e,t){var n=e[0],i=e[1],r=e[2],o=t[0],a=t[1],s=t[2],u=Math.sqrt(n*n+i*i+r*r)*Math.sqrt(o*o+a*a+s*s),c=u&&rS(e,t)/u;return Math.acos(Math.min(Math.max(c,-1),1))}(this,e)}},{key:"cross",value:function(e){return oS(this,this,e),this.check()}},{key:"rotateX",value:function(e){var t=e.radians,n=e.origin;return function(e,t,n,i){var r=[],o=[];r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2],o[0]=r[0],o[1]=r[1]*Math.cos(i)-r[2]*Math.sin(i),o[2]=r[1]*Math.sin(i)+r[2]*Math.cos(i),e[0]=o[0]+n[0],e[1]=o[1]+n[1],e[2]=o[2]+n[2]}(this,this,void 0===n?cS:n,t),this.check()}},{key:"rotateY",value:function(e){var t=e.radians,n=e.origin;return function(e,t,n,i){var r=[],o=[];r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2],o[0]=r[2]*Math.sin(i)+r[0]*Math.cos(i),o[1]=r[1],o[2]=r[2]*Math.cos(i)-r[0]*Math.sin(i),e[0]=o[0]+n[0],e[1]=o[1]+n[1],e[2]=o[2]+n[2]}(this,this,void 0===n?cS:n,t),this.check()}},{key:"rotateZ",value:function(e){var t=e.radians,n=e.origin;return function(e,t,n,i){var r=[],o=[];r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2],o[0]=r[0]*Math.cos(i)-r[1]*Math.sin(i),o[1]=r[0]*Math.sin(i)+r[1]*Math.cos(i),o[2]=r[2],e[0]=o[0]+n[0],e[1]=o[1]+n[1],e[2]=o[2]+n[2]}(this,this,void 0===n?cS:n,t),this.check()}},{key:"transform",value:function(e){return this.transformAsPoint(e)}},{key:"transformAsPoint",value:function(e){return aS(this,this,e),this.check()}},{key:"transformAsVector",value:function(e){return sS(this,this,e),this.check()}},{key:"transformByMatrix3",value:function(e){return function(e,t,n){var i=t[0],r=t[1],o=t[2];e[0]=i*n[0]+r*n[3]+o*n[6],e[1]=i*n[1]+r*n[4]+o*n[7],e[2]=i*n[2]+r*n[5]+o*n[8]}(this,this,e),this.check()}},{key:"transformByMatrix2",value:function(e){return function(e,t,n){var i=t[0],r=t[1];e[0]=n[0]*i+n[2]*r,e[1]=n[1]*i+n[3]*r,e[2]=t[2]}(this,this,e),this.check()}},{key:"transformByQuaternion",value:function(e){return function(e,t,n){var i=n[0],r=n[1],o=n[2],a=t[0],s=t[1],u=t[2],c=r*u-o*s,l=o*a-i*u,h=i*s-r*a,d=r*h-o*l,f=o*c-i*h,p=i*l-r*c,v=2*n[3];l*=v,h*=v,f*=2,p*=2,e[0]=a+(c*=v)+(d*=2),e[1]=s+l+f,e[2]=u+h+p}(this,this,e),this.check()}}],[{key:"ZERO",get:function(){return lS.ZERO=lS.ZERO||Object.freeze(new n(0,0,0,0))}}]),n}(Jx),dS=new hS;function fS(e,t,n,i){dS.set(e,t,n);var r=dS.len();return{distance:i/r,normal:new hS(-e/r,-t/r,-n/r)}}function pS(e){return e-Math.fround(e)}function vS(e,t){var n=t.size,i=void 0===n?1:n,r=t.startIndex,o=void 0===r?0:r,a=t.endIndex;Number.isFinite(a)||(a=e.length);var s=(a-o)/i;uS=jx.allocate(uS,s,{type:Float32Array,size:2*i});for(var u=o,c=0;u1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0,i=bS,r={index:-1,data:e,target:[]};return e?"function"==typeof e[Symbol.iterator]?i=e:e.length>0&&(_S.length=e.length,i=_S):i=bS,(t>0||Number.isFinite(n))&&(i=(Array.isArray(i)?i:Array.from(i)).slice(t,n),r.index=t-1),{iterable:i,objectInfo:r}}function kS(e){return e&&e[Symbol.asyncIterator]}function xS(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){return!0};return Array.isArray(e)?SS(e,t,[]):t(e)?[e]:[]}function SS(e,t,n){for(var i=-1;++ic)n.set(t.subarray(0,c),r);else if(n.set(t,r),s)for(var l=u;l=f)){var v=p?i.value:i.getBuffer().getData({srcByteOffset:l});if(i.settings.normalized&&!p){var g=s;s=function(e,t){return i._normalizeConstant(g(e,t))}}var m=p?function(e,t){return s(v,t)}:function(e,t){return s(v.subarray(e,e+c),t)},y=t.getData({length:r}),b=new Float32Array(f);(function(e){var t=e.source,n=e.target,i=e.size,r=e.getData,o=e.sourceStartIndices,a=e.targetStartIndices;if(!Array.isArray(a))return TS({source:t,target:n,size:i,getData:r}),n;for(var s=0,u=0,c=r&&function(e,t){return r(e+u,t)},l=Math.min(o.length,a.length),h=1;h1&&void 0!==arguments[1]?arguments[1]:{};m(this,r),t=i.call(this,e,n);var o=n.transition,a=void 0!==o&&o,s=n.noAlloc,u=void 0!==s&&s,c=n.update,l=void 0===c?null:c,h=n.accessor,d=void 0===h?null:h,f=n.transform,p=void 0===f?null:f,v=n.startIndices,g=void 0===v?null:v;return Object.assign(t.settings,{transition:a,noAlloc:u,update:l||d&&t._autoUpdater,accessor:d,transform:p}),Object.assign(t.state,{lastExternalBuffer:null,binaryValue:null,binaryAccessor:null,needsUpdate:!0,needsRedraw:!1,updateRanges:OS,startIndices:g}),Object.seal(t.settings),Object.seal(t.state),t._validateAttributeUpdaters(),t}return b(r,[{key:"startIndices",get:function(){return this.state.startIndices},set:function(e){this.state.startIndices=e}},{key:"needsUpdate",value:function(){return this.state.needsUpdate}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.clearChangedFlags,n=void 0!==t&&t,i=this.state.needsRedraw;return this.state.needsRedraw=i&&!n,i}},{key:"getUpdateTriggers",value:function(){var e=this.settings.accessor;return[this.id].concat("function"!=typeof e&&e||[])}},{key:"supportsTransition",value:function(){return Boolean(this.settings.transition)}},{key:"getTransitionSetting",value:function(e){if(!e||!this.supportsTransition())return null;var t=this.settings.accessor,n=this.settings.transition;return PS(Array.isArray(t)?e[t.find(function(t){return e[t]})]:e[t],n)}},{key:"setNeedsUpdate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.id,t=arguments.length>1?arguments[1]:void 0;if(this.state.needsUpdate=this.state.needsUpdate||e,this.setNeedsRedraw(e),t){var n=t.startRow,i=void 0===n?0:n,r=t.endRow,o=void 0===r?1/0:r;this.state.updateRanges=function(e,t){if(e===OS||(t[0]<0&&(t[0]=0),t[0]>=t[1]))return e;for(var n=[],i=e.length,r=0,o=0;ot[1]?n.push(a):t=[Math.min(a[0],t[0]),Math.max(a[1],t[1])]}return n.splice(r,0,t),n}(this.state.updateRanges,[i,o])}else this.state.updateRanges=OS}},{key:"clearNeedsUpdate",value:function(){this.state.needsUpdate=!1,this.state.updateRanges=CS}},{key:"setNeedsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.id;this.state.needsRedraw=this.state.needsRedraw||e}},{key:"update",value:function(e){this.setData(e)}},{key:"allocate",value:function(t){var n=this.state,i=this.settings;return!i.noAlloc&&!!i.update&&(e(p(r.prototype),"allocate",this).call(this,{numInstances:t,copy:n.updateRanges!==OS}),!0)}},{key:"updateBuffer",value:function(n){var i=n.numInstances,o=n.data,a=n.props,s=n.context;if(!this.needsUpdate())return!1;var u=this.state.updateRanges,c=this.settings,l=c.update,h=c.noAlloc,d=!0;if(l){var f,v=_(u);try{for(v.s();!(f=v.n()).done;){var g=t(f.value,2),m=g[0],y=g[1];l.call(s,this,{data:o,startRow:m,endRow:y,props:a,numInstances:i})}}catch(O){v.e(O)}finally{v.f()}if(this.value)if(this.constant||this.buffer.byteLength1&&void 0!==arguments[1]?arguments[1]:null,n=this.state,i=this.settings;return e?!(i.noAlloc||(n.binaryValue===e?(this.clearNeedsUpdate(),0):(n.binaryValue=e,this.setNeedsRedraw(),ArrayBuffer.isView(e)&&(e={value:e}),i.transform||t!==this.startIndices?(yS(ArrayBuffer.isView(e.value),"invalid ".concat(i.accessor)),n.binaryAccessor=function(e,t){var n=t.size,i=t.stride,r=t.offset,o=t.startIndices,a=t.nested,s=e.BYTES_PER_ELEMENT,u=i?i/s:n,c=r?r/s:0,l=Math.floor((e.length-c)/u);return function(t,i){var r=i.index,s=i.target;if(!o){for(var h=r*u+c,d=0;dl?c.set(x,g):(e._normalizeValue(x,b.target,0),ES({target:c,source:b.target,start:g,count:S}));g+=S*l}else e._normalizeValue(x,c,g),g+=l}}catch(A){w.e(A)}finally{w.f()}}}},{key:"_validateAttributeUpdaters",value:function(){var e=this.settings;if(!e.noAlloc&&"function"!=typeof e.update)throw new Error("Attribute ".concat(this.id," missing update or accessor"))}},{key:"_checkAttributeArray",value:function(){var e=this.value,t=Math.min(4,this.size);if(e&&e.length>=t){var n=!0;switch(t){case 4:n=n&&Number.isFinite(e[3]);case 3:n=n&&Number.isFinite(e[2]);case 2:n=n&&Number.isFinite(e[1]);case 1:n=n&&Number.isFinite(e[0]);break;default:n=!1}if(!n)throw new Error("Illegal attribute generated for ".concat(this.id))}}}]),r}(function(){function e(t,n){m(this,e),this.gl=t,this.id=n.id,this.size=n.size;var i=n.logicalType||n.type,r=5130===i,o=n.defaultValue;o=Number.isFinite(o)?[o]:o||new Array(this.size).fill(0),n.defaultValue=o;var a=i;r?a=5126:!a&&n.isIndexed?a=t&&Rx(t,"ELEMENT_INDEX_UINT32")?5125:5123:a||(a=5126),n.logicalType=i,n.type=a;var s=function(e){switch(e){case 5126:return Float32Array;case 5130:return Float64Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return Uint8ClampedArray;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Unknown GL type")}}(i||a||5126);this.shaderAttributes={},this.doublePrecision=r,r&&!1===n.fp64&&(s=Float32Array),n.bytesPerElement=s.BYTES_PER_ELEMENT,this.defaultType=s,this.value=null,this.settings=n,this.state={externalBuffer:null,bufferAccessor:n,allocatedValue:null,constant:!1},this._buffer=null,this.setData(n)}return b(e,[{key:"buffer",get:function(){if(!this._buffer){var e=this.settings,t=e.isIndexed,n=e.type;this._buffer=new ux(this.gl,{id:this.id,target:t?34963:34962,accessor:{type:n}})}return this._buffer}},{key:"byteOffset",get:function(){var e=this.getAccessor();return e.vertexOffset?e.vertexOffset*gS(e):0}},{key:"delete",value:function(){this._buffer&&(this._buffer.delete(),this._buffer=null),jx.release(this.state.allocatedValue)}},{key:"getShaderAttributes",value:function(e,t){if(this.doublePrecision){var n={},i=this.value instanceof Float64Array,r=function(e,t){var n=mS(e,t);return{high:n,low:I(M({},n),{offset:n.offset+4*e.size})}}(this.getAccessor(),t||{});return n[e]=new Lx(this,r.high),n["".concat(e,"64Low")]=i?new Lx(this,r.low):new Float32Array(this.size),n}if(t){var a=mS(this.getAccessor(),t);return o({},e,new Lx(this,a))}return o({},e,this)}},{key:"getBuffer",value:function(){return this.state.constant?null:this.state.externalBuffer||this._buffer}},{key:"getValue",value:function(){return this.state.constant?this.value:[this.getBuffer(),this.getAccessor()]}},{key:"getAccessor",value:function(){return this.state.bufferAccessor}},{key:"setData",value:function(e){var t=this.state;ArrayBuffer.isView(e)?e={value:e}:e instanceof ux&&(e={buffer:e});var n=M(M({},this.settings),e);if(t.bufferAccessor=n,e.constant){var i=e.value;if(i=this._normalizeValue(i,[],0),this.settings.normalized&&(i=this._normalizeConstant(i)),t.constant&&this._areValuesEqual(i,this.value))return!1;t.externalBuffer=null,t.constant=!0,this.value=i}else if(e.buffer){var r=e.buffer;t.externalBuffer=r,t.constant=!1,this.value=e.value;var o=e.value instanceof Float64Array;n.type=e.type||r.accessor.type,n.bytesPerElement=r.accessor.BYTES_PER_ELEMENT*(o?2:1),n.stride=gS(n)}else if(e.value){this._checkExternalBuffer(e);var a=e.value;t.externalBuffer=null,t.constant=!1,this.value=a,n.bytesPerElement=a.BYTES_PER_ELEMENT,n.stride=gS(n);var s=this.buffer,u=this.byteOffset;this.doublePrecision&&a instanceof Float64Array&&(a=vS(a,n));var c=a.byteLength+u+2*n.stride;s.byteLength0&&void 0!==arguments[0]?arguments[0]:{},t=this.value,n=e.startOffset,i=void 0===n?0:n,r=e.endOffset;this.buffer.subData({data:this.doublePrecision&&t instanceof Float64Array?vS(t,{size:this.size,startIndex:i,endIndex:r}):t.subarray(i,r),offset:i*t.BYTES_PER_ELEMENT+this.byteOffset})}},{key:"allocate",value:function(e){var t=e.numInstances,n=e.copy,i=void 0!==n&&n,r=this.state,o=r.allocatedValue,a=jx.allocate(o,t+1,{size:this.size,type:this.defaultType,copy:i});this.value=a;var s=this.buffer,u=this.byteOffset;return s.byteLength=0;)t[n+a]=Number.isFinite(e[a])?e[a]:r[a]}return t}},{key:"_areValuesEqual",value:function(e,t){if(!e||!t)return!1;for(var n=this.size,i=0;i0&&jS[e]&&(t=jS[e]).call.apply(t,arguments)}function BS(e,t){if(!e)throw new Error(t||"shadertools: assertion failed.")}var VS="out vec4 transform_output;\nvoid main() {\n transform_output = vec4(0);\n}",zS="#version 300 es\n".concat(VS);function US(e,n){n=Array.isArray(n)?n:[n];var i=t(e.replace(/^\s+/,"").split(/\s+/),3),r=i[0],o=i[1],a=i[2];return n.includes(r)&&o&&a?{qualifier:r,type:o,name:a.split(";")[0]}:null}function HS(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.version,n=void 0===t?100:t,i=e.input,r=e.inputType,o=e.output;if(!i)return 300===n?zS:n>300?"#version ".concat(n,"\n").concat(VS):"void main() {gl_FragColor = vec4(0);}";var a=function(e,t){switch(t){case"float":return"vec4(".concat(e,", 0.0, 0.0, 1.0)");case"vec2":return"vec4(".concat(e,", 0.0, 1.0)");case"vec3":return"vec4(".concat(e,", 1.0)");case"vec4":return e;default:return BS(!1),null}}(i,r);return n>=300?"#version ".concat(n," ").concat(300===n?"es":"","\nin ").concat(r," ").concat(i,";\nout vec4 ").concat(o,";\nvoid main() {\n ").concat(o," = ").concat(a,";\n}"):"varying ".concat(r," ").concat(i,";\nvoid main() {\n gl_FragColor = ").concat(a,";\n}")}var GS=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Kw(e),(i=t.call(this,e,r)).initialize(r),i.stubRemovedMethods("TransformFeedback","v6.0",["pause","resume"]),Object.seal(c(i)),i}return b(n,[{key:"initialize",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.buffers={},this.unused={},this.configuration=null,this.bindOnUse=!0,Yk(this.buffers)||this.bind(function(){return e._unbindBuffers()}),this.setProps(t),this}},{key:"setProps",value:function(e){"program"in e&&(this.configuration=e.program&&e.program.configuration),"configuration"in e&&(this.configuration=e.configuration),"bindOnUse"in e&&(e=e.bindOnUse),"buffers"in e&&this.setBuffers(e.buffers)}},{key:"setBuffers",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.bind(function(){for(var n in t)e.setBuffer(n,t[n])}),this}},{key:"setBuffer",value:function(e,t){var n=this,i=this._getVaryingIndex(e),r=this._getBufferParams(t),o=r.buffer,a=r.byteSize,s=r.byteOffset;return i<0?(this.unused[e]=o,Gw.warn(function(){return"".concat(n.id," unused varying buffer ").concat(e)})(),this):(this.buffers[i]=t,this.bindOnUse||this._bindBuffer(i,o,s,a),this)}},{key:"begin",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.gl.bindTransformFeedback(36386,this.handle),this._bindBuffers(),this.gl.beginTransformFeedback(e),this}},{key:"end",value:function(){return this.gl.endTransformFeedback(),this._unbindBuffers(),this.gl.bindTransformFeedback(36386,null),this}},{key:"_getBufferParams",value:function(e){var t,n,i;return e instanceof ux?i=e:(i=e.buffer,n=e.byteSize,t=e.byteOffset),(void 0!==t||void 0!==n)&&(t=t||0,n=n||i.byteLength-t),{buffer:i,byteOffset:t,byteSize:n}}},{key:"_getVaryingInfo",value:function(e){return this.configuration&&this.configuration.getVaryingInfo(e)}},{key:"_getVaryingIndex",value:function(e){if(this.configuration)return this.configuration.getVaryingInfo(e).location;var t=Number(e);return Number.isFinite(t)?t:-1}},{key:"_bindBuffers",value:function(){if(this.bindOnUse)for(var e in this.buffers){var t=this._getBufferParams(this.buffers[e]),n=t.buffer,i=t.byteSize,r=t.byteOffset;this._bindBuffer(e,n,r,i)}}},{key:"_unbindBuffers",value:function(){if(this.bindOnUse)for(var e in this.buffers)this._bindBuffer(e,null)}},{key:"_bindBuffer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=arguments.length>3?arguments[3]:void 0,r=t&&t.handle;return r&&void 0!==i?this.gl.bindBufferRange(35982,e,r,n,i):this.gl.bindBufferBase(35982,e,r),this}},{key:"_createHandle",value:function(){return this.gl.createTransformFeedback()}},{key:"_deleteHandle",value:function(){this.gl.deleteTransformFeedback(this.handle)}},{key:"_bindHandle",value:function(e){this.gl.bindTransformFeedback(36386,this.handle)}}],[{key:"isSupported",value:function(e){return Xw(e)}}]),n}(Qk),WS=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.currentIndex=0,this.feedbackMap={},this.varyings=null,this.bindings=[],this.resources={},this._initialize(n),Object.seal(this)}return b(e,[{key:"setupResources",value:function(e){var t,n=_(this.bindings);try{for(n.s();!(t=n.n()).done;){var i=t.value;this._setupTransformFeedback(i,e)}}catch(r){n.e(r)}finally{n.f()}}},{key:"updateModelProps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.varyings;return t.length>0&&(e=Object.assign({},e,{varyings:t})),e}},{key:"getDrawOptions",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.bindings[this.currentIndex],n=t.sourceBuffers,i=t.transformFeedback;return{attributes:Object.assign({},n,e.attributes),transformFeedback:i}}},{key:"swap",value:function(){return!!this.feedbackMap&&(this.currentIndex=this._getNextIndex(),!0)}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setupBuffers(e)}},{key:"getBuffer",value:function(e){var t=this.bindings[this.currentIndex].feedbackBuffers,n=e?t[e]:null;return n?n instanceof ux?n:n.buffer:null}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.varyingName,n=this.getBuffer(t);return n?n.getData():null}},{key:"delete",value:function(){for(var e in this.resources)this.resources[e].delete()}},{key:"_initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setupBuffers(e),this.varyings=e.varyings||Object.keys(this.bindings[this.currentIndex].feedbackBuffers),this.varyings.length>0&&Uk(Xw(this.gl))}},{key:"_getFeedbackBuffers",value:function(e){var t=e.sourceBuffers,n=void 0===t?{}:t,i={};if(this.bindings[this.currentIndex]&&Object.assign(i,this.bindings[this.currentIndex].feedbackBuffers),this.feedbackMap)for(var r in this.feedbackMap){var o=this.feedbackMap[r];r in n&&(i[o]=r)}for(var a in Object.assign(i,e.feedbackBuffers),i){var s=i[a];if("string"==typeof s){var u=n[s],c=u.byteLength,l=u.usage,h=u.accessor;i[a]=this._createNewBuffer(a,{byteLength:c,usage:l,accessor:h})}}return i}},{key:"_setupBuffers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.sourceBuffers,n=void 0===t?null:t;Object.assign(this.feedbackMap,e.feedbackMap);var i=this._getFeedbackBuffers(e);this._updateBindings({sourceBuffers:n,feedbackBuffers:i})}},{key:"_setupTransformFeedback",value:function(e,t){var n=t.model.program;e.transformFeedback=new GS(this.gl,{program:n,buffers:e.feedbackBuffers})}},{key:"_updateBindings",value:function(e){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],e),this.feedbackMap){var t=this._swapBuffers(this.bindings[this.currentIndex]),n=t.sourceBuffers,i=t.feedbackBuffers,r=this._getNextIndex();this.bindings[r]=this._updateBinding(this.bindings[r],{sourceBuffers:n,feedbackBuffers:i})}}},{key:"_updateBinding",value:function(e,t){return e?(Object.assign(e.sourceBuffers,t.sourceBuffers),Object.assign(e.feedbackBuffers,t.feedbackBuffers),e.transformFeedback&&e.transformFeedback.setBuffers(e.feedbackBuffers),e):{sourceBuffers:Object.assign({},t.sourceBuffers),feedbackBuffers:Object.assign({},t.feedbackBuffers)}}},{key:"_swapBuffers",value:function(e){if(!this.feedbackMap)return null;var t=Object.assign({},e.sourceBuffers),n=Object.assign({},e.feedbackBuffers);for(var i in this.feedbackMap){var r=this.feedbackMap[i];t[i]=e.feedbackBuffers[r],n[r]=e.sourceBuffers[i],Uk(n[r]instanceof ux)}return{sourceBuffers:t,feedbackBuffers:n}}},{key:"_createNewBuffer",value:function(e,t){var n=new ux(this.gl,t);return this.resources[e]&&this.resources[e].delete(),this.resources[e]=n,n}},{key:"_getNextIndex",value:function(){return(this.currentIndex+1)%2}}]),e}();function qS(e){var t=100,n=e.match(/[^\s]+/g);if(n.length>=2&&"#version"===n[0]){var i=parseInt(n[1],10);Number.isFinite(i)&&(t=i)}return t}var XS="vs",YS=(o(f={},XS,"#ifdef MODULE_LOGDEPTH\n logdepth_adjustPosition(gl_Position);\n#endif\n"),o(f,"fs","#ifdef MODULE_MATERIAL\n gl_FragColor = material_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LIGHTING\n gl_FragColor = lighting_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_FOG\n gl_FragColor = fog_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_PICKING\n gl_FragColor = picking_filterHighlightColor(gl_FragColor);\n gl_FragColor = picking_filterPickingColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LOGDEPTH\n logdepth_setFragDepth();\n#endif\n"),f),KS="__LUMA_INJECT_DECLARATIONS__",$S=/void\s+main\s*\([^)]*\)\s*\{\n?/,QS=/}\n?[^{}]*$/,ZS=[];function JS(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],r=t===XS,o=function(t){var i=n[t];i.sort(function(e,t){return e.order-t.order}),ZS.length=i.length;for(var o=0,a=i.length;o1),e.forEach(function(e){for(var n in e)t[n]=t[n]?"".concat(t[n],"\n").concat(e[n]):e[n]}),t}var tE={name:"transform",vs:"attribute float transform_elementID;\nvec2 transform_getPixelSizeHalf(vec2 size) {\n return vec2(1.) / (2. * size);\n}\n\nvec2 transform_getPixelIndices(vec2 texSize, vec2 pixelSizeHalf) {\n float yIndex = floor((transform_elementID / texSize[0]) + pixelSizeHalf[1]);\n float xIndex = transform_elementID - (yIndex * texSize[0]);\n return vec2(xIndex, yIndex);\n}\nvec2 transform_getTexCoord(vec2 size) {\n vec2 pixelSizeHalf = transform_getPixelSizeHalf(size);\n vec2 indices = transform_getPixelIndices(size, pixelSizeHalf);\n vec2 coord = indices / size + pixelSizeHalf;\n return coord;\n}\nvec2 transform_getPos(vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec2 pos = (texCoord * (2.0, 2.0)) - (1., 1.);\n return pos;\n}\nvec4 transform_getInput(sampler2D texSampler, vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec4 textureColor = texture2D(texSampler, texCoord);\n return textureColor;\n}\n",fs:null},nE="transform_uSize_",iE="transform_position",rE={10241:9728,10240:9728,10242:33071,10243:33071},oE=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.id=this.currentIndex=0,this._swapTexture=null,this.targetTextureVarying=null,this.targetTextureType=null,this.samplerTextureMap=null,this.bindings=[],this.resources={},this._initialize(n),Object.seal(this)}return b(e,[{key:"updateModelProps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._processVertexShader(e);return Object.assign({},e,t)}},{key:"getDrawOptions",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.bindings[this.currentIndex],n=t.sourceBuffers,i=t.sourceTextures,r=t.framebuffer,o=t.targetTexture,a=Object.assign({},n,e.attributes),s=Object.assign({},e.uniforms),u=Object.assign({},e.parameters),c=e.discard;if(this.hasSourceTextures||this.hasTargetTexture){for(var l in a.transform_elementID=this.elementIDBuffer,this.samplerTextureMap)s[l]=i[this.samplerTextureMap[l]];this._setSourceTextureParameters();var h=function(e){var t,n,i,r=e.sourceTextureMap,o=e.targetTextureVarying,a=e.targetTexture,s={};for(var u in o&&(n=(t=a).width,i=t.height,s["".concat(nE).concat(o)]=[n,i]),r){var c;n=(c=r[u]).width,i=c.height,s["".concat(nE).concat(u)]=[n,i]}return s}({sourceTextureMap:i,targetTextureVarying:this.targetTextureVarying,targetTexture:o});Object.assign(s,h)}return this.hasTargetTexture&&(c=!1,u.viewport=[0,0,r.width,r.height]),{attributes:a,framebuffer:r,uniforms:s,discard:c,parameters:u}}},{key:"swap",value:function(){return!!this._swapTexture&&(this.currentIndex=this._getNextIndex(),!0)}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setupTextures(e)}},{key:"getTargetTexture",value:function(){return this.bindings[this.currentIndex].targetTexture}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.packed,n=void 0!==t&&t,i=this.bindings[this.currentIndex].framebuffer,r=Tx(i);if(!n)return r;for(var o=r.constructor,a=function(e){switch(e){case"float":return 1;case"vec2":return 2;case"vec3":return 3;case"vec4":return 4;default:return BS(!1),null}}(this.targetTextureType),s=new o(r.length*a/4),u=0,c=0;c0&&void 0!==arguments[0]?arguments[0]:{},t=e._targetTextureVarying,n=e._swapTexture;this._swapTexture=n,this.targetTextureVarying=t,this.hasTargetTexture=t,this._setupTextures(e)}},{key:"_createTargetTexture",value:function(e){var t=e.sourceTextures,n=e.textureOrReference;if(n instanceof gx)return n;var i=t[n];return i?(this._targetRefTexName=n,this._createNewTexture(i)):null}},{key:"_setupTextures",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.sourceBuffers,n=e._sourceTextures,i=void 0===n?{}:n,r=e._targetTexture,o=this._createTargetTexture({sourceTextures:i,textureOrReference:r});this.hasSourceTextures=this.hasSourceTextures||i&&Object.keys(i).length>0,this._updateBindings({sourceBuffers:t,sourceTextures:i,targetTexture:o}),"elementCount"in e&&this._updateElementIDBuffer(e.elementCount)}},{key:"_updateElementIDBuffer",value:function(e){if(!("number"!=typeof e||this.elementCount>=e)){var t=new Float32Array(e);t.forEach(function(e,t,n){n[t]=t}),this.elementIDBuffer?this.elementIDBuffer.setData({data:t}):this.elementIDBuffer=new ux(this.gl,{data:t,accessor:{size:1}}),this.elementCount=e}}},{key:"_updateBindings",value:function(e){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],e),this._swapTexture){var t=this._swapTextures(this.bindings[this.currentIndex]),n=t.sourceTextures,i=t.targetTexture,r=this._getNextIndex();this.bindings[r]=this._updateBinding(this.bindings[r],{sourceTextures:n,targetTexture:i})}}},{key:"_updateBinding",value:function(e,t){var n=t.sourceBuffers,i=t.sourceTextures,r=t.targetTexture;if(e||(e={sourceBuffers:{},sourceTextures:{},targetTexture:null}),Object.assign(e.sourceTextures,i),Object.assign(e.sourceBuffers,n),r){e.targetTexture=r;var o=r.width,a=r.height,s=e.framebuffer;s?(s.update({attachments:{36064:r},resizeAttachments:!1}),s.resize({width:o,height:a})):e.framebuffer=new Mx(this.gl,{id:"transform-framebuffer",width:o,height:a,attachments:{36064:r}})}return e}},{key:"_setSourceTextureParameters",value:function(){var e=this.currentIndex,t=this.bindings[e].sourceTextures;for(var n in t)t[n].setParameters(rE)}},{key:"_swapTextures",value:function(e){if(!this._swapTexture)return null;var t=Object.assign({},e.sourceTextures);return t[this._swapTexture]=e.targetTexture,{sourceTextures:t,targetTexture:e.sourceTextures[this._swapTexture]}}},{key:"_createNewTexture",value:function(e){var t=function(e,t){Uk(e instanceof gx||e instanceof Ex||e instanceof Cx);var n=e.constructor,i=e.gl,r=e.width,o=e.height,a=e.format,s=e.type,u=e.dataFormat,c=e.border,l=e.mipmaps;return new n(i,Object.assign({width:r,height:o,format:a,type:s,dataFormat:u,border:c,mipmaps:l},{parameters:{10241:9728,10240:9728,10242:33071,10243:33071},pixelStore:{37440:!1}}))}(e);return this.ownTexture&&this.ownTexture.delete(),this.ownTexture=t,t}},{key:"_getNextIndex",value:function(){return(this.currentIndex+1)%2}},{key:"_processVertexShader",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.bindings[this.currentIndex],n=t.sourceTextures,i=t.targetTexture,r=function(e){var t=e.vs,n=e.sourceTextureMap,i=e.targetTextureVarying,r=e.targetTexture,o=Object.keys(n).length,a=null,s={},u=t,c={};if(o>0||i){var l=u.split("\n"),h=l.slice();if(l.forEach(function(e,t,r){if(o>0){var u=function(e,t){var n={},i=function(e){return US(e,["attribute","in"])}(e);if(!i)return null;var r=i.type,o=i.name;if(o&&t[o]){var a="// ".concat(e," => Replaced by Transform with a sampler"),s=function(e){var t="transform_uSampler_".concat(e),n="".concat(nE).concat(e);return{samplerName:t,sizeName:n,uniformDeclerations:" uniform sampler2D ".concat(t,";\n uniform vec2 ").concat(n,";")}}(o),u=s.samplerName,c=s.sizeName,l=s.uniformDeclerations,h=" ".concat(r," ").concat(o," = transform_getInput(").concat(u,", ").concat(c,").").concat(function(e){switch(e){case"float":return"x";case"vec2":return"xy";case"vec3":return"xyz";case"vec4":return"xyzw";default:return BS(!1),null}}(r),";\n");return n[u]=o,{updatedLine:a,inject:{"vs:#decl":l,"vs:#main-start":h},samplerTextureMap:n}}return null}(e,n);if(u){var l=u.updatedLine,d=u.inject;h[t]=l,c=eE([c,d]),Object.assign(s,u.samplerTextureMap),o--}}i&&!a&&(a=function(e,t){var n=US(e,["varying","out"]);return n&&n.name===t?n.type:null}(e,i))}),i){Uk(r);var d="".concat(nE).concat(i);c=eE([c,{"vs:#decl":"uniform vec2 ".concat(d,";\n"),"vs:#main-start":" vec2 ".concat(iE," = transform_getPos(").concat(d,");\n gl_Position = vec4(").concat(iE,", 0, 1.);\n")}])}u=h.join("\n")}return{vs:u,targetTextureType:a,inject:c,samplerTextureMap:s}}({vs:e.vs,sourceTextureMap:n,targetTextureVarying:this.targetTextureVarying,targetTexture:i}),o=r.vs,a=r.uniforms,s=r.targetTextureType,u=r.inject,c=r.samplerTextureMap,l=eE([e.inject||{},u]);return this.targetTextureType=s,this.samplerTextureMap=c,{vs:o,fs:e._fs||HS({version:qS(o),input:this.targetTextureVarying,inputType:s,output:"transform_output"}),modules:this.hasSourceTextures||this.targetTextureVarying?[tE].concat(e.modules||[]):e.modules,uniforms:a,inject:l}}}]),e}(),aE={number:{validate:function(e,t){return Number.isFinite(e)&&(!("max"in t)||e<=t.max)&&(!("min"in t)||e>=t.min)}},array:{validate:function(e,t){return Array.isArray(e)||ArrayBuffer.isView(e)}}};function sE(e){var t=uE(e);return"object"===t?e?"type"in e?Object.assign({},e,aE[e.type]):"value"in e?(t=uE(e.value),Object.assign({type:t},e,aE[t])):{type:"object",value:e}:{type:"object",value:null}:Object.assign({type:t,value:e},aE[t])}function uE(e){return Array.isArray(e)||ArrayBuffer.isView(e)?"array":typeof e}var cE=function(){function e(t){var n=t.name,i=t.vs,r=t.fs,o=t.dependencies,a=void 0===o?[]:o,s=t.uniforms,u=t.getUniforms,c=t.deprecations,l=void 0===c?[]:c,h=t.defines,d=void 0===h?{}:h,f=t.inject,p=void 0===f?{}:f,v=t.vertexShader,g=t.fragmentShader;m(this,e),BS("string"==typeof n),this.name=n,this.vs=i||v,this.fs=r||g,this.getModuleUniforms=u,this.dependencies=a,this.deprecations=this._parseDeprecationDefinitions(l),this.defines=d,this.injections=function(e){var t={vs:{},fs:{}};for(var n in e){var i=e[n];"string"==typeof i&&(i={order:0,injection:i}),t[n.slice(0,2)][n]=i}return t}(p),s&&(this.uniforms=function(e){var t={};for(var n in e){var i=sE(e[n]);t[n]=i}return t}(s))}return b(e,[{key:"getModuleSource",value:function(e){var t;switch(e){case"vs":t=this.vs||"";break;case"fs":t=this.fs||"";break;default:BS(!1)}return"#define MODULE_".concat(this.name.toUpperCase().replace(/[^0-9a-z]/gi,"_"),"\n").concat(t,"// END MODULE_").concat(this.name,"\n\n")}},{key:"getUniforms",value:function(e,t){return this.getModuleUniforms?this.getModuleUniforms(e,t):this.uniforms?this._defaultGetUniforms(e):{}}},{key:"getDefines",value:function(){return this.defines}},{key:"checkDeprecations",value:function(e,t){this.deprecations.forEach(function(n){n.regex.test(e)&&(n.deprecated?t.deprecated(n.old,n.new)():t.removed(n.old,n.new)())})}},{key:"_parseDeprecationDefinitions",value:function(e){return e.forEach(function(e){switch(e.type){case"function":e.regex=new RegExp("\\b".concat(e.old,"\\("));break;default:e.regex=new RegExp("".concat(e.type," ").concat(e.old,";"))}}),e}},{key:"_defaultGetUniforms",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={},n=this.uniforms;for(var i in n){var r=n[i];i in e&&!r.private?(r.validate&&BS(r.validate(e[i],r),"".concat(this.name,": invalid ").concat(i)),t[i]=e[i]):t[i]=r.value}return t}}]),e}();function lE(e){return function(e){var t={},n={};return hE({modules:e,level:0,moduleMap:t,moduleDepth:n}),Object.keys(n).sort(function(e,t){return n[t]-n[e]}).map(function(e){return t[e]})}(dE(e))}function hE(e){var t=e.modules,n=e.level,i=e.moduleMap,r=e.moduleDepth;if(n>=5)throw new Error("Possible loop in shader dependency graph");var o,a=_(t);try{for(a.s();!(o=a.n()).done;){var s=o.value;i[s.name]=s,(void 0===r[s.name]||r[s.name]2&&void 0!==arguments[2]?arguments[2]:{},i=fE[t];if(BS(i,t),!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="undefined"!=typeof window&&window.navigator||{},n=e.userAgent||t.userAgent||"",i=-1!==n.indexOf("MSIE "),r=-1!==n.indexOf("Trident/");return i||r}(n))return!0;if(t in gE)return gE[t];var r="#extension GL_".concat(i[0]," : ").concat(n.behavior||"enable","\nvoid main(void) {}"),o=e.createShader(35633);e.shaderSource(o,r),e.compileShader(o);var a=e.getShaderParameter(o,35713);return e.deleteShader(o),gE[t]=a,a}function yE(e,t){return(t=Array.isArray(t)?t:[t]).every(function(t){return function(e,t){var n=fE[t];BS(n,t);var i=function(e){return"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||Boolean(e&&2===e._version)}(e)&&n[1]||n[0],r="string"==typeof i?Boolean(e.getExtension(i)):i;return BS(!1===r||!0===r),r}(e,t)})}function bE(e){return new RegExp("\\b".concat(e,"[ \\t]+(\\w+[ \\t]+\\w+(\\[\\w+\\])?;)"),"g")}var _E=[[/^(#version[ \t]+(100|300[ \t]+es))?[ \t]*\n/,"#version 300 es\n"],[/\btexture(2D|2DProj|Cube)Lod(EXT)?\(/g,"textureLod("],[/\btexture(2D|2DProj|Cube)(EXT)?\(/g,"texture("]],wE=[].concat(_E,[[bE("attribute"),"in $1"],[bE("varying"),"out $1"]]),kE=[].concat(_E,[[bE("varying"),"in $1"]]),xE=[[/^#version[ \t]+300[ \t]+es/,"#version 100"],[/\btexture(2D|2DProj|Cube)Lod\(/g,"texture$1LodEXT("],[/\btexture\(/g,"texture2D("],[/\btextureLod\(/g,"texture2DLodEXT("]],SE=[].concat(xE,[[bE("in"),"attribute $1"],[bE("out"),"varying $1"]]),EE=[].concat(xE,[[bE("in"),"varying $1"]]),CE="gl_FragColor",OE=/\bout[ \t]+vec4[ \t]+(\w+)[ \t]*;\n?/,TE=/void\s+main\s*\([^)]*\)\s*\{\n?/;function AE(e,n){var i,r=_(n);try{for(r.s();!(i=r.n()).done;){var o=t(i.value,2),a=o[0],s=o[1];e=e.replace(a,s)}}catch(u){r.e(u)}finally{r.f()}return e}var PE="\n\n".concat(KS,"\n\n"),ME=(o(g={},XS,"vertex"),o(g,"fs","fragment"),g);function IE(e,n){var i=n.id,r=n.source,o=n.type,a=n.modules,s=n.defines,u=void 0===s?{}:s,c=n.hookFunctions,l=void 0===c?[]:c,h=n.inject,d=void 0===h?{}:h,f=n.transpileToGLSL100,p=void 0!==f&&f,v=n.prologue,g=void 0===v||v,m=n.log;BS("string"==typeof r,"shader source must be a string");var y=o===XS,b=r.split("\n"),w=100,k="",x=r;0===b[0].indexOf("#version ")?(w=300,k=b[0],x=b.slice(1).join("\n")):k="#version ".concat(w);var S={};a.forEach(function(e){Object.assign(S,e.getDefines())}),Object.assign(S,u);var E,C=g?"".concat(k,"\n").concat(function(e){var t=e.id,n=e.type;return t&&"string"==typeof t&&-1===e.source.indexOf("SHADER_NAME")?"\n#define SHADER_NAME ".concat(t,"_").concat(ME[n],"\n\n"):""}({id:i,source:r,type:o}),"\n").concat((E={type:o},"\n#define SHADER_TYPE_".concat(ME[E.type].toUpperCase(),"\n")),"\n").concat(function(e){switch(function(e){var t=e.getExtension("WEBGL_debug_renderer_info"),n=e.getParameter(t&&t.UNMASKED_VENDOR_WEBGL||7936),i=e.getParameter(t&&t.UNMASKED_RENDERER_WEBGL||7937);return{gpuVendor:vE(n,i),vendor:n,renderer:i,version:e.getParameter(7938),shadingLanguageVersion:e.getParameter(35724)}}(e).gpuVendor.toLowerCase()){case"nvidia":return"#define NVIDIA_GPU\n// Nvidia optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n";case"intel":return"#define INTEL_GPU\n// Intel optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n// Intel's built-in 'tan' function doesn't have acceptable precision\n#define LUMA_FP32_TAN_PRECISION_WORKAROUND 1\n// Intel GPU doesn't have full 32 bits precision in same cases, causes overflow\n#define LUMA_FP64_HIGH_BITS_OVERFLOW_WORKAROUND 1\n";case"amd":return"#define AMD_GPU\n";default:return"#define DEFAULT_GPU\n// Prevent driver from optimizing away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n"}}(e),"\n").concat(function(e,t,n){var i="#if (__VERSION__ > 120)\n\n# define FEATURE_GLSL_DERIVATIVES\n# define FEATURE_GLSL_DRAW_BUFFERS\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FEATURE_GLSL_TEXTURE_LOD\n\n// DEPRECATED FLAGS, remove in v9\n# define FRAG_DEPTH\n# define DERIVATIVES\n# define DRAW_BUFFERS\n# define TEXTURE_LOD\n\n#endif // __VERSION\n";return yE(e,pE.GLSL_FRAG_DEPTH)&&(i+="\n// FRAG_DEPTH => gl_FragDepth is available\n#ifdef GL_EXT_frag_depth\n#extension GL_EXT_frag_depth : enable\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FRAG_DEPTH\n# define gl_FragDepth gl_FragDepthEXT\n#endif\n"),yE(e,pE.GLSL_DERIVATIVES)&&mE(e,pE.GLSL_DERIVATIVES)&&(i+="\n// DERIVATIVES => dxdF, dxdY and fwidth are available\n#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n# define FEATURE_GLSL_DERIVATIVES\n# define DERIVATIVES\n#endif\n"),yE(e,pE.GLSL_FRAG_DATA)&&mE(e,pE.GLSL_FRAG_DATA,{behavior:"require"})&&(i+="\n// DRAW_BUFFERS => gl_FragData[] is available\n#ifdef GL_EXT_draw_buffers\n#extension GL_EXT_draw_buffers : require\n#define FEATURE_GLSL_DRAW_BUFFERS\n#define DRAW_BUFFERS\n#endif\n"),yE(e,pE.GLSL_TEXTURE_LOD)&&(i+="// TEXTURE_LOD => texture2DLod etc are available\n#ifdef GL_EXT_shader_texture_lod\n#extension GL_EXT_shader_texture_lod : enable\n\n# define FEATURE_GLSL_TEXTURE_LOD\n# define TEXTURE_LOD\n\n#endif\n"),i}(e),"\n").concat(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=0,n="";for(var i in e){0===t&&(n+="\n// APPLICATION DEFINES\n"),t++;var r=e[i];(r||Number.isFinite(r))&&(n+="#define ".concat(i.toUpperCase()," ").concat(e[i],"\n"))}return 0===t&&(n+="\n"),n}(S),"\n").concat(y?"":"precision highp float;\n\n","\n"):"".concat(k,"\n"),O=function(e){var n={vs:{},fs:{}};return e.forEach(function(e){var i;"string"!=typeof e?e=(i=e).hook:i={};var r=t((e=e.trim()).split(":"),2),o=r[0],a=r[1],s=e.replace(/\(.+/,"");n[o][s]=Object.assign(i,{signature:a})}),n}(l),T={},A={},P={};for(var M in d){var I="string"==typeof d[M]?{injection:d[M],order:0}:d[M],R=M.match(/^(v|f)s:(#)?([\w-]+)$/);if(R){var D=R[3];R[2]?"decl"===D?A[M]=[I]:P[M]=[I]:T[M]=[I]}else P[M]=[I]}var N,L=_(a);try{for(L.s();!(N=L.n()).done;){var j=N.value;m&&j.checkDeprecations(x,m),C+=j.getModuleSource(o,w);var F=j.injections[o];for(var B in F){var V=B.match(/^(v|f)s:#([\w-]+)$/);if(V){var z="decl"===V[2]?A:P;z[B]=z[B]||[],z[B].push(F[B])}else T[B]=T[B]||[],T[B].push(F[B])}}}catch(U){L.e(U)}finally{L.f()}return C=JS(C+=PE,o,A),C+=function(e,t){var n="";for(var i in e){var r=e[i];if(n+="void ".concat(r.signature," {\n"),r.header&&(n+=" ".concat(r.header)),t[i]){var o=t[i];o.sort(function(e,t){return e.order-t.order});var a,s=_(o);try{for(s.s();!(a=s.n()).done;){var u=a.value;n+=" ".concat(u.injection,"\n")}}catch(U){s.e(U)}finally{s.f()}}r.footer&&(n+=" ".concat(r.footer)),n+="}\n"}return n}(O[o],T),C=function(e,t,n){switch(t){case 300:return n?AE(e,wE):function(e){var t=(e=AE(e,kE)).match(OE);if(t){var n=t[1];e=e.replace(new RegExp("\\b".concat(CE,"\\b"),"g"),n)}else{var i="fragmentColor";e=e.replace(TE,function(e){return"out vec4 ".concat(i,";\n").concat(e)}).replace(new RegExp("\\b".concat(CE,"\\b"),"g"),i)}return e}(e);case 100:return n?AE(e,SE):function(e){var t=(e=AE(e,EE)).match(OE);if(t){var n=t[1];e=e.replace(OE,"").replace(new RegExp("\\b".concat(n,"\\b"),"g"),CE)}return e}(e);default:throw new Error("unknown GLSL version ".concat(t))}}(C=JS(C+=x,o,P),p?100:w,y)}function RE(e){return function(t){var n,i={},r=_(e);try{for(r.s();!(n=r.n()).done;){var o=n.value.getUniforms(t,i);Object.assign(i,o)}}catch(a){r.e(a)}finally{r.f()}return i}}var DE=(o(y={5126:YE.bind(null,"uniform1fv",VE,1,KE),35664:YE.bind(null,"uniform2fv",VE,2,KE),35665:YE.bind(null,"uniform3fv",VE,3,KE),35666:YE.bind(null,"uniform4fv",VE,4,KE),5124:YE.bind(null,"uniform1iv",zE,1,KE),35667:YE.bind(null,"uniform2iv",zE,2,KE),35668:YE.bind(null,"uniform3iv",zE,3,KE),35669:YE.bind(null,"uniform4iv",zE,4,KE),35670:YE.bind(null,"uniform1iv",zE,1,KE),35671:YE.bind(null,"uniform2iv",zE,2,KE),35672:YE.bind(null,"uniform3iv",zE,3,KE),35673:YE.bind(null,"uniform4iv",zE,4,KE),35674:YE.bind(null,"uniformMatrix2fv",VE,4,$E),35675:YE.bind(null,"uniformMatrix3fv",VE,9,$E),35676:YE.bind(null,"uniformMatrix4fv",VE,16,$E),35678:XE,35680:XE,5125:YE.bind(null,"uniform1uiv",UE,1,KE),36294:YE.bind(null,"uniform2uiv",UE,2,KE),36295:YE.bind(null,"uniform3uiv",UE,3,KE),36296:YE.bind(null,"uniform4uiv",UE,4,KE),35685:YE.bind(null,"uniformMatrix2x3fv",VE,6,$E),35686:YE.bind(null,"uniformMatrix2x4fv",VE,8,$E),35687:YE.bind(null,"uniformMatrix3x2fv",VE,6,$E),35688:YE.bind(null,"uniformMatrix3x4fv",VE,12,$E),35689:YE.bind(null,"uniformMatrix4x2fv",VE,8,$E),35690:YE.bind(null,"uniformMatrix4x3fv",VE,12,$E)},"35678",XE),o(y,"35680",XE),o(y,35679,XE),o(y,35682,XE),o(y,36289,XE),o(y,36292,XE),o(y,36293,XE),o(y,36298,XE),o(y,36299,XE),o(y,36300,XE),o(y,36303,XE),o(y,36306,XE),o(y,36307,XE),o(y,36308,XE),o(y,36311,XE),y),NE={},LE={},jE={},FE=[0];function BE(e,t,n,i){1===t&&"boolean"==typeof e&&(e=e?1:0),Number.isFinite(e)&&(FE[0]=e,e=FE);var r=e.length;if(r%t&&Gw.warn("Uniform size should be multiples of ".concat(t),e)(),e instanceof n)return e;var o=i[r];o||(o=new n(r),i[r]=o);for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:"unnamed",n=e.match(/#define[\s*]SHADER_NAME[\s*]([A-Za-z0-9_-]+)[\s*]/);return n?n[1]:t}function ZE(e,t){for(var n="",i=0;i0&&void 0!==arguments[0]?arguments[0]:this.source;if(e.startsWith("#version ")||(e="#version 100\n".concat(e)),this.source=e,this.gl.shaderSource(this.handle,this.source),this.gl.compileShader(this.handle),!this.getParameter(35713)){var t=this.gl.getShaderInfoLog(this.handle),n=function(e,t,n,i){for(var r=e.split(/\r?\n/),o={},a={},s=i||QE(t)||"(unnamed)",u="".concat(function(e){switch(e){case 35632:return"fragment";case 35633:return"vertex";default:return"unknown type"}}(n)," shader ").concat(s),c=0;c1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:": ",i=e.split(/\r?\n/),r=String(i.length+t-1).length;return i.map(function(e,i){var o=String(i+t);return JE(o,r-o.length)+n+e})}(t);return{shaderName:u,errors:ZE(o,p),warnings:ZE(a,p)}}(t,this.source,this.shaderType,this.id),i=n.shaderName,r=n.errors,o=n.warnings;throw Gw.error("GLSL compilation errors in ".concat(i,"\n").concat(r))(),Gw.warn("GLSL compilation warnings in ".concat(i,"\n").concat(o))(),new Error("GLSL compilation errors in ".concat(i))}}},{key:"_deleteHandle",value:function(){this.gl.deleteShader(this.handle)}},{key:"_getOptsFromHandle",value:function(){return{type:this.getParameter(35663),source:this.getSource()}}}],[{key:"getTypeName",value:function(e){switch(e){case 35633:return"vertex-shader";case 35632:return"fragment-shader";default:return Uk(!1),"unknown"}}}]),n}(Qk),tC=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),"string"==typeof i&&(i={source:i}),t.call(this,e,Object.assign({},i,{shaderType:35633}))}return b(n,[{key:"_createHandle",value:function(){return this.gl.createShader(35633)}}]),n}(eC),nC=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),"string"==typeof i&&(i={source:i}),t.call(this,e,Object.assign({},i,{shaderType:35632}))}return b(n,[{key:"_createHandle",value:function(){return this.gl.createShader(35632)}}]),n}(eC),iC=5126,rC=5124,oC=5125,aC=(o(w={},iC,[iC,1,"float"]),o(w,35664,[iC,2,"vec2"]),o(w,35665,[iC,3,"vec3"]),o(w,35666,[iC,4,"vec4"]),o(w,rC,[rC,1,"int"]),o(w,35667,[rC,2,"ivec2"]),o(w,35668,[rC,3,"ivec3"]),o(w,35669,[rC,4,"ivec4"]),o(w,oC,[oC,1,"uint"]),o(w,36294,[oC,2,"uvec2"]),o(w,36295,[oC,3,"uvec3"]),o(w,36296,[oC,4,"uvec4"]),o(w,35670,[iC,1,"bool"]),o(w,35671,[iC,2,"bvec2"]),o(w,35672,[iC,3,"bvec3"]),o(w,35673,[iC,4,"bvec4"]),o(w,35674,[iC,8,"mat2"]),o(w,35685,[iC,8,"mat2x3"]),o(w,35686,[iC,8,"mat2x4"]),o(w,35675,[iC,12,"mat3"]),o(w,35687,[iC,12,"mat3x2"]),o(w,35688,[iC,12,"mat3x4"]),o(w,35676,[iC,16,"mat4"]),o(w,35689,[iC,16,"mat4x2"]),o(w,35690,[iC,16,"mat4x3"]),w);function sC(e){var n=aC[e];if(!n)return null;var i=t(n,2);return{type:i[0],components:i[1]}}function uC(e,n){switch(e){case 5120:case 5121:case 5122:case 5123:e=iC}for(var i in aC){var r=t(aC[i],3),o=r[0],a=r[1],s=r[2];if(o===e&&a===n)return{glType:i,name:s}}return null}var cC=function(){function e(t){m(this,e),this.id=t.id,this.attributeInfos=[],this.attributeInfosByName={},this.attributeInfosByLocation=[],this.varyingInfos=[],this.varyingInfosByName={},Object.seal(this),this._readAttributesFromProgram(t),this._readVaryingsFromProgram(t)}return b(e,[{key:"getAttributeInfo",value:function(e){var t=Number(e);return Number.isFinite(t)?this.attributeInfosByLocation[t]:this.attributeInfosByName[e]||null}},{key:"getAttributeLocation",value:function(e){var t=this.getAttributeInfo(e);return t?t.location:-1}},{key:"getAttributeAccessor",value:function(e){var t=this.getAttributeInfo(e);return t?t.accessor:null}},{key:"getVaryingInfo",value:function(e){var t=Number(e);return Number.isFinite(t)?this.varyingInfos[t]:this.varyingInfosByName[e]||null}},{key:"getVaryingIndex",value:function(e){var t=this.getVaryingInfo();return t?t.location:-1}},{key:"getVaryingAccessor",value:function(e){var t=this.getVaryingInfo();return t?t.accessor:null}},{key:"_readAttributesFromProgram",value:function(e){for(var t=e.gl,n=t.getProgramParameter(e.handle,35721),i=0;i=0&&this._addAttribute(u,o,a,s)}this.attributeInfos.sort(function(e,t){return e.location-t.location})}},{key:"_readVaryingsFromProgram",value:function(e){var t=e.gl;if(Xw(t)){for(var n=t.getProgramParameter(e.handle,35971),i=0;i1&&void 0!==arguments[1]?arguments[1]:{};return m(this,i),(t=n.call(this,e,r)).stubRemovedMethods("Program","v6.0",lC),t._isCached=!1,t.initialize(r),Object.seal(c(t)),t._setId(r.id),t}return b(i,[{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.hash,n=e.vs,i=e.fs,r=e.varyings,o=e.bufferMode,a=void 0===o?35981:o;return this.hash=t||"",this.vs="string"==typeof n?new tC(this.gl,{id:"".concat(e.id,"-vs"),source:n}):n,this.fs="string"==typeof i?new nC(this.gl,{id:"".concat(e.id,"-fs"),source:i}):i,Uk(this.vs instanceof tC),Uk(this.fs instanceof nC),this.uniforms={},this._textureUniforms={},r&&r.length>0&&(Kw(this.gl),this.varyings=r,this.gl2.transformFeedbackVaryings(this.handle,r,a)),this._compileAndLink(),this._readUniformLocationsFromLinkedProgram(),this.configuration=new cC(this),this.setProps(e)}},{key:"delete",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._isCached?this:e(p(i.prototype),"delete",this).call(this,t)}},{key:"setProps",value:function(e){return"uniforms"in e&&this.setUniforms(e.uniforms),this}},{key:"draw",value:function(e){var t=this,n=e.logPriority,i=e.drawMode,r=void 0===i?4:i,o=e.vertexCount,a=e.offset,s=void 0===a?0:a,u=e.start,c=e.end,l=e.isIndexed,h=void 0!==l&&l,d=e.indexType,f=void 0===d?5123:d,p=e.instanceCount,v=void 0===p?0:p,g=e.isInstanced,m=void 0===g?v>0:g,y=e.vertexArray,b=void 0===y?null:y,_=e.transformFeedback,w=e.framebuffer,k=e.parameters,x=void 0===k?{}:k,S=e.uniforms,E=e.samplers;if((S||E)&&(Gw.deprecated("Program.draw({uniforms})","Program.setUniforms(uniforms)")(),this.setUniforms(S||{})),Gw.priority>=n){var C=w?w.id:"default",O="mode=".concat(Gk(this.gl,r)," verts=").concat(o," instances=").concat(v," indexType=").concat(Gk(this.gl,f)," isInstanced=").concat(m," isIndexed=").concat(h," Framebuffer=").concat(C);Gw.log(n,O)()}return Uk(b),this.gl.useProgram(this.handle),!(!this._areTexturesRenderable()||0===o||m&&0===v||(b.bindForDraw(o,v,function(){if(void 0!==w&&(x=Object.assign({},x,{framebuffer:w})),_){var e=function(e){switch(e){case 0:return 0;case 1:case 3:case 2:return 1;case 4:case 5:case 6:return 4;default:return Uk(!1),0}}(r);_.begin(e)}t._bindTextures(),Ok(t.gl,x,function(){h&&m?t.gl2.drawElementsInstanced(r,o,f,s,v):h&&Xw(t.gl)&&!isNaN(u)&&!isNaN(c)?t.gl2.drawRangeElements(r,u,c,o,f,s):h?t.gl.drawElements(r,o,f,s):m?t.gl2.drawArraysInstanced(r,s,o,v):t.gl.drawArrays(r,s,o)}),_&&_.end()}),0))}},{key:"setUniforms",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};for(var t in Gw.priority>=2&&function(e,t,n){for(var i in e){var r=e[i];if((!n||Boolean(n[i]))&&!WE(r))throw t=t?"".concat(t," "):"",console.error("".concat(t," Bad uniform ").concat(i),r),new Error("".concat(t," Bad uniform ").concat(i))}}(e,this.id,this._uniformSetters),this.gl.useProgram(this.handle),e){var n=e[t],i=this._uniformSetters[t];if(i){var r=n,o=!1;if(r instanceof Mx&&(r=r.texture),r instanceof px)if(o=this.uniforms[t]!==n){void 0===i.textureIndex&&(i.textureIndex=this._textureIndexCounter++);var a=r,s=i.textureIndex;a.bind(s),r=s,this._textureUniforms[t]=a}else r=i.textureIndex;else this._textureUniforms[t]&&delete this._textureUniforms[t];(i(r)||o)&&qE(this.uniforms,t,n)}}return this}},{key:"_areTexturesRenderable",value:function(){var e=!0;for(var t in this._textureUniforms){var n=this._textureUniforms[t];n.update(),e=e&&n.loaded}return e}},{key:"_bindTextures",value:function(){for(var e in this._textureUniforms)this._textureUniforms[e].bind(this._uniformSetters[e].textureIndex)}},{key:"_createHandle",value:function(){return this.gl.createProgram()}},{key:"_deleteHandle",value:function(){this.gl.deleteProgram(this.handle)}},{key:"_getOptionsFromHandle",value:function(e){var t,n={},i=_(this.gl.getAttachedShaders(e));try{for(i.s();!(t=i.n()).done;){var r=t.value;switch(this.gl.getShaderParameter(this.handle,35663)){case 35633:n.vs=new tC({handle:r});break;case 35632:n.fs=new nC({handle:r})}}}catch(o){i.e(o)}finally{i.f()}return n}},{key:"_getParameter",value:function(e){return this.gl.getProgramParameter(this.handle,e)}},{key:"_setId",value:function(e){if(!e){var t=this._getName();this.id=qk(t)}}},{key:"_getName",value:function(){var e=this.vs.getName()||this.fs.getName();return e=(e=e.replace(/shader/i,""))?"".concat(e,"-program"):"program"}},{key:"_compileAndLink",value:function(){var e=this.gl;if(e.attachShader(this.handle,this.vs.handle),e.attachShader(this.handle,this.fs.handle),Gw.time(4,"linkProgram for ".concat(this._getName()))(),e.linkProgram(this.handle),Gw.timeEnd(4,"linkProgram for ".concat(this._getName()))(),e.debug||Gw.level>0){if(!e.getProgramParameter(this.handle,35714))throw new Error("Error linking: ".concat(e.getProgramInfoLog(this.handle)));if(e.validateProgram(this.handle),!e.getProgramParameter(this.handle,35715))throw new Error("Error validating: ".concat(e.getProgramInfoLog(this.handle)))}}},{key:"_readUniformLocationsFromLinkedProgram",value:function(){var e=this.gl;this._uniformSetters={},this._uniformCount=this._getParameter(35718);for(var t=0;t1)for(var o=0;o0&&void 0!==arguments[0]?arguments[0]:{},i=n.vs,r=void 0===i?"":i,o=n.fs,a=void 0===o?"":o,s=n.defines,u=void 0===s?{}:s,c=n.inject,l=void 0===c?{}:c,h=n.varyings,d=void 0===h?[]:h,f=n.bufferMode,p=void 0===f?35981:f,v=n.transpileToGLSL100,g=void 0!==v&&v,m=this._getModuleList(n.modules),y=this._getHash(r),b=this._getHash(a),w=m.map(function(e){return t._getHash(e.name)}).sort(),k=d.map(function(e){return t._getHash(e)}),x=Object.keys(u).sort(),S=Object.keys(l).sort(),E=[],C=[],O=_(x);try{for(O.s();!(e=O.n()).done;){var T=e.value;E.push(this._getHash(T)),E.push(this._getHash(u[T]))}}catch(D){O.e(D)}finally{O.f()}var A,P=_(S);try{for(P.s();!(A=P.n()).done;){var M=A.value;C.push(this._getHash(M)),C.push(this._getHash(l[M]))}}catch(D){P.e(D)}finally{P.f()}var I="".concat(y,"/").concat(b,"D").concat(E.join("/"),"M").concat(w.join("/"),"I").concat(C.join("/"),"V").concat(k.join("/"),"H").concat(this.stateHash,"B").concat(p).concat(g?"T":"");if(!this._programCache[I]){var R=function(e,t){var n=t.vs,i=t.fs,r=lE(t.modules||[]);return{gl:e,vs:IE(e,Object.assign({},t,{source:n,type:XS,modules:r})),fs:IE(e,Object.assign({},t,{source:i,type:"fs",modules:r})),getUniforms:RE(r)}}(this.gl,{vs:r,fs:a,modules:m,inject:l,defines:u,hookFunctions:this._hookFunctions,transpileToGLSL100:g});this._programCache[I]=new hC(this.gl,{hash:I,vs:R.vs,fs:R.fs,varyings:d,bufferMode:p}),this._getUniforms[I]=R.getUniforms||function(e){},this._useCounts[I]=0}return this._useCounts[I]++,this._programCache[I]}},{key:"getUniforms",value:function(e){return this._getUniforms[e.hash]||null}},{key:"release",value:function(e){var t=e.hash;this._useCounts[t]--,0===this._useCounts[t]&&(this._programCache[t].delete(),delete this._programCache[t],delete this._getUniforms[t],delete this._useCounts[t])}},{key:"_getHash",value:function(e){return void 0===this._hashes[e]&&(this._hashes[e]=this._hashCounter++),this._hashes[e]}},{key:"_getModuleList",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=new Array(this._defaultModules.length+e.length),n={},i=0,r=0,o=this._defaultModules.length;r1&&void 0!==arguments[1]?arguments[1]:{};return m(this,i),(t=n.call(this,e,Object.assign({},r,{id:r.id||r.program&&r.program.id}))).buffer=null,t.bufferValue=null,t.isDefaultArray=r.isDefaultArray||!1,t.gl2=e,t.initialize(r),Object.seal(c(t)),t}return b(i,[{key:"delete",value:function(){return e(p(i.prototype),"delete",this).call(this),this.buffer&&this.buffer.delete(),this}},{key:"MAX_ATTRIBUTES",get:function(){return i.getMaxAttributes(this.gl)}},{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.setProps(e)}},{key:"setProps",value:function(e){return this}},{key:"setElementBuffer",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return Uk(!t||34963===t.target,"elements must be GL.ELEMENT_ARRAY_BUFFER"),this.bind(function(){e.gl.bindBuffer(34963,t?t.handle:null)}),this}},{key:"setBuffer",value:function(e,t,n){if(34963===t.target)return this.setElementBuffer(t,n);var i=n.size,r=n.type,o=n.stride,a=n.offset,s=n.normalized,u=n.integer,c=n.divisor,l=this.gl,h=this.gl2;return e=Number(e),this.bind(function(){l.bindBuffer(34962,t.handle),u?(Uk(Xw(l)),h.vertexAttribIPointer(e,i,r,o,a)):l.vertexAttribPointer(e,i,r,s,o,a),l.enableVertexAttribArray(e),h.vertexAttribDivisor(e,c||0)}),this}},{key:"enable",value:function(e){var t=this,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return!n&&0===e&&!i.isSupported(this.gl,{constantAttributeZero:!0})||(e=Number(e),this.bind(function(){return n?t.gl.enableVertexAttribArray(e):t.gl.disableVertexAttribArray(e)})),this}},{key:"getConstantBuffer",value:function(e,t){var n=this._normalizeConstantArrayValue(t),i=n.byteLength*e,r=n.length*e,o=!this.buffer;if(this.buffer=this.buffer||new ux(this.gl,i),o=(o=o||this.buffer.reallocate(i))||!this._compareConstantArrayValues(n,this.bufferValue)){var a=function(e,t){return new e(function(e){return(!fC||fC.byteLength1&&void 0!==arguments[1]?arguments[1]:{};return!t.constantAttributeZero||Xw(e)||"Chrome"===function(e){if(!bw())return"Node";if(yw(void 0))return"Electron";var t=("undefined"!=typeof navigator?navigator:{}).userAgent||"";if(t.indexOf("Edge")>-1)return"Edge";var n=-1!==t.indexOf("MSIE "),i=-1!==t.indexOf("Trident/");return n||i?"IE":Tw.chrome?"Chrome":Tw.safari?"Safari":Tw.mozInnerScreenX?"Firefox":"Unknown"}()}},{key:"getDefaultArray",value:function(e){return e.luma=e.luma||{},e.luma.defaultVertexArray||(e.luma.defaultVertexArray=new i(e,{handle:null,isDefaultArray:!0})),e.luma.defaultVertexArray}},{key:"getMaxAttributes",value:function(e){return i.MAX_ATTRIBUTES=i.MAX_ATTRIBUTES||e.getParameter(34921),i.MAX_ATTRIBUTES}},{key:"setConstant",value:function(e,t,n){switch(n.constructor){case Float32Array:i._setConstantFloatArray(e,t,n);break;case Int32Array:i._setConstantIntArray(e,t,n);break;case Uint32Array:i._setConstantUintArray(e,t,n);break;default:Uk(!1)}}},{key:"_setConstantFloatArray",value:function(e,t,n){switch(n.length){case 1:e.vertexAttrib1fv(t,n);break;case 2:e.vertexAttrib2fv(t,n);break;case 3:e.vertexAttrib3fv(t,n);break;case 4:e.vertexAttrib4fv(t,n);break;default:Uk(!1)}}},{key:"_setConstantIntArray",value:function(e,t,n){switch(Uk(Xw(e)),n.length){case 1:e.vertexAttribI1iv(t,n);break;case 2:e.vertexAttribI2iv(t,n);break;case 3:e.vertexAttribI3iv(t,n);break;case 4:e.vertexAttribI4iv(t,n);break;default:Uk(!1)}}},{key:"_setConstantUintArray",value:function(e,t,n){switch(Uk(Xw(e)),n.length){case 1:e.vertexAttribI1uiv(t,n);break;case 2:e.vertexAttribI2uiv(t,n);break;case 3:e.vertexAttribI3uiv(t,n);break;case 4:e.vertexAttribI4uiv(t,n);break;default:Uk(!1)}}}]),i}(Qk),vC=/^(.+)__LOCATION_([0-9]+)$/,gC=["setBuffers","setGeneric","clearBindings","setLocations","setGenericValues","setDivisor","enable","disable"],mC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.id=n.id||n.program&&n.program.id,this.gl=t,this.configuration=null,this.elements=null,this.elementsAccessor=null,this.values=null,this.accessors=null,this.unused=null,this.drawParams=null,this.buffer=null,this.attributes={},this.vertexArrayObject=new pC(t),Kk(this,"VertexArray","v6.0",gC),this.initialize(n),Object.seal(this)}return b(e,[{key:"delete",value:function(){this.buffer&&this.buffer.delete(),this.vertexArrayObject.delete()}},{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.reset(),this.configuration=null,this.bindOnUse=!1,this.setProps(e)}},{key:"reset",value:function(){this.elements=null,this.elementsAccessor=null;var e=this.vertexArrayObject.MAX_ATTRIBUTES;return this.values=new Array(e).fill(null),this.accessors=new Array(e).fill(null),this.unused={},this.drawParams=null,this}},{key:"setProps",value:function(e){return"program"in e&&(this.configuration=e.program&&e.program.configuration),"configuration"in e&&(this.configuration=e.configuration),"attributes"in e&&this.setAttributes(e.attributes),"elements"in e&&this.setElementBuffer(e.elements),"bindOnUse"in e&&(e=e.bindOnUse),this}},{key:"clearDrawParams",value:function(){this.drawParams=null}},{key:"getDrawParams",value:function(){return this.drawParams=this.drawParams||this._updateDrawParams(),this.drawParams}},{key:"setAttributes",value:function(e){var t=this;return Object.assign(this.attributes,e),this.vertexArrayObject.bind(function(){for(var n in e)t._setAttribute(n,e[n]);t.gl.bindBuffer(34962,null)}),this}},{key:"setElementBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.elements=e,this.elementsAccessor=t,this.clearDrawParams(),this.vertexArrayObject.setElementBuffer(e,t),this}},{key:"setBuffer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(34963===t.target)return this.setElementBuffer(t,n);var i=this._resolveLocationAndAccessor(e,t,t.accessor,n),r=i.location,o=i.accessor;return r>=0&&(this.values[r]=t,this.accessors[r]=o,this.clearDrawParams(),this.vertexArrayObject.setBuffer(r,t,o)),this}},{key:"setConstant",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=this._resolveLocationAndAccessor(e,t,Object.assign({size:t.length},n)),r=i.location,o=i.accessor;return r>=0&&(t=this.vertexArrayObject._normalizeConstantArrayValue(t),this.values[r]=t,this.accessors[r]=o,this.clearDrawParams(),this.vertexArrayObject.enable(r,!1)),this}},{key:"unbindBuffers",value:function(){var e=this;return this.vertexArrayObject.bind(function(){e.elements&&e.vertexArrayObject.setElementBuffer(null),e.buffer=e.buffer||new ux(e.gl,{accessor:{size:4}});for(var t=0;t0;if(e.isInstanced=e.isInstanced||r,n instanceof ux){var o=n;if(r){var a=o.getVertexCount(i);e.instanceCount=Math.min(e.instanceCount,a)}else{var s=o.getVertexCount(i);e.vertexCount=Math.min(e.vertexCount,s)}}}}},{key:"setElements",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Gw.deprecated("setElements","setElementBuffer")(),this.setElementBuffer(e,t)}}]),e}();function yC(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isInteger,i=void 0!==n&&n;if(Array.isArray(e)||ArrayBuffer.isView(e))return function(e,t){for(var n=t.maxElts,i=void 0===n?16:n,r=t.size,o=void 0===r?1:r,a="[",s=0;s0&&(a+=","+(s%o==0?" ":"")),a+=yC(e[s],t);return"".concat(a).concat(e.length>i?"...":"]")}(e,t);if(!Number.isFinite(e))return String(e);if(Math.abs(e)<1e-16)return i?"0":"0.";if(i||Math.abs(e)>100&&Math.abs(e)<1e4)return e.toFixed(0);var r=e.toPrecision(2);return r.indexOf(".0")===r.length-2?r.slice(0,-1):r}function bC(e,t,n,i){var r,a,s=e.gl;if(!t)return o(r={},i,"null"),o(r,"Format ","N/A"),r;var u,c,l,h="NOT PROVIDED",d=1,f=0,p=0;if(n&&(h=n.type,d=n.size,u=-1!==(h=String(h).replace("Array","")).indexOf("nt")),t instanceof ux){var v,g,m=t,y=m.getDebugData(),b=y.data;return c=y.changed?"*":"",l=b,f=(p=m.byteLength)/b.BYTES_PER_ELEMENT/d,n?g="".concat(n.divisor>0?"I ":"P "," ").concat(f," (x").concat(d,"=").concat(p," bytes ").concat(Gk(s,h),")"):(u=!0,g="".concat(p," bytes")),o(v={},i,"".concat(c).concat(yC(l,{size:d,isInteger:u}))),o(v,"Format ",g),v}return l=t,d=t.length,u=-1!==(h=String(t.constructor.name).replace("Array","")).indexOf("nt"),o(a={},i,"".concat(yC(l,{size:d,isInteger:u})," (constant)")),o(a,"Format ","".concat(d,"x").concat(h," (constant)")),a}function _C(e,t){var n=uC(t.type,t.size);return n?"".concat(e," (").concat(n.name,")"):e}function wC(e){var t=e.header,n=void 0===t?"Uniforms":t,i=e.program,r=e.uniforms,a=e.undefinedOnly,s=void 0!==a&&a;Uk(i);var u,c=".*Matrix",l={},h=Object.keys(i._uniformSetters).sort(),d=0,f=_(h);try{for(f.s();!(u=f.n()).done;){var p=u.value;!p.match(".*_.*")&&!p.match(c)&&kC({table:l,header:n,uniforms:r,uniformName:p,undefinedOnly:s})&&d++}}catch(C){f.e(C)}finally{f.f()}var v,g=_(h);try{for(g.s();!(v=g.n()).done;){var m=v.value;m.match(c)&&kC({table:l,header:n,uniforms:r,uniformName:m,undefinedOnly:s})&&d++}}catch(C){g.e(C)}finally{g.f()}var y,b=_(h);try{for(b.s();!(y=b.n()).done;){var w=y.value;l[w]||kC({table:l,header:n,uniforms:r,uniformName:w,undefinedOnly:s})&&d++}}catch(C){b.e(C)}finally{b.f()}var k=0,x={};if(!s)for(var S in r){var E=r[S];l[S]||(k++,x[S]=o({Type:"NOT USED: ".concat(E)},n,yC(E)))}return{table:l,count:d,unusedTable:x,unusedCount:k}}function kC(e){var t,n=e.table,i=e.header,r=e.uniforms,a=e.uniformName,s=e.undefinedOnly,u=r[a],c=function(e){return null!=e}(u);return!(s&&c||(n[a]=(t={},o(t,i,c?yC(u):"N/A"),o(t,"Uniform Type",c?u:"NOT PROVIDED"),t),0))}function xC(e){var t=e.accessor,n=uC(t.type,t.size);return n?"".concat(n.name," ").concat(e.name):e.name}var SC={POSITION:"positions",NORMAL:"normals",COLOR_0:"colors",TEXCOORD_0:"texCoords",TEXCOORD_1:"texCoords1",TEXCOORD_2:"texCoords2"};function EC(e,t){var n=(t||{}).attributeMap,i=void 0===n?SC:n;return i&&i[e]||e}function CC(e,t){var n;switch(e){case"texCoords":case"texCoord1":case"texCoord2":case"texCoord3":n="uvs";break;case"vertices":case"positions":case"normals":case"pickingColors":n="vectors"}switch(n){case"vectors":t.size=t.size||3;break;case"uvs":t.size=t.size||2}Uk(Number.isFinite(t.size),"attribute ".concat(e," needs size"))}var OC=function(){},TC={},AC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e);var i=n.id,r=void 0===i?qk("model"):i;Uk(qw(t)),this.id=r,this.gl=t,this.id=n.id||qk("Model"),this.lastLogTime=0,this.animated=!1,this.initialize(n)}return b(e,[{key:"initialize",value:function(e){this.props={},this.programManager=e.programManager||dC.getDefaultProgramManager(this.gl),this._programManagerState=-1,this._managedProgram=!1;var t=e.program,n=void 0===t?null:t,i=e.vs,r=e.fs,o=e.modules,a=e.defines,s=e.inject,u=e.varyings,c=e.bufferMode,l=e.transpileToGLSL100;this.programProps={program:n,vs:i,fs:r,modules:o,defines:a,inject:s,varyings:u,bufferMode:c,transpileToGLSL100:l},this.program=null,this.vertexArray=null,this._programDirty=!0,this.userData={},this.needsRedraw=!0,this._attributes={},this.attributes={},this.uniforms={},this.pickable=!0,this._checkProgram(),this.setUniforms(Object.assign({},this.getModuleUniforms(e.moduleSettings))),this.drawMode=void 0!==e.drawMode?e.drawMode:4,this.vertexCount=e.vertexCount||0,this.geometryBuffers={},this.isInstanced=e.isInstanced||e.instanced||e.instanceCount>0,this._setModelProps(e),this.geometry={},Uk(void 0!==this.drawMode&&Number.isFinite(this.vertexCount),"Model needs drawMode and vertexCount")}},{key:"setProps",value:function(e){this._setModelProps(e)}},{key:"delete",value:function(){for(var e in this._attributes)this._attributes[e]!==this.attributes[e]&&this._attributes[e].delete();this._managedProgram&&(this.programManager.release(this.program),this._managedProgram=!1),this.vertexArray.delete(),this._deleteGeometryBuffers()}},{key:"getDrawMode",value:function(){return this.drawMode}},{key:"getVertexCount",value:function(){return this.vertexCount}},{key:"getInstanceCount",value:function(){return this.instanceCount}},{key:"getAttributes",value:function(){return this.attributes}},{key:"getProgram",value:function(){return this.program}},{key:"setProgram",value:function(e){var t=e.program,n=e.vs,i=e.fs,r=e.modules,o=e.defines,a=e.inject,s=e.varyings,u=e.bufferMode,c=e.transpileToGLSL100;this.programProps={program:t,vs:n,fs:i,modules:r,defines:o,inject:a,varyings:s,bufferMode:u,transpileToGLSL100:c},this._programDirty=!0}},{key:"getUniforms",value:function(){return this.uniforms}},{key:"setDrawMode",value:function(e){return this.drawMode=e,this}},{key:"setVertexCount",value:function(e){return Uk(Number.isFinite(e)),this.vertexCount=e,this}},{key:"setInstanceCount",value:function(e){return Uk(Number.isFinite(e)),this.instanceCount=e,this}},{key:"setGeometry",value:function(e){return this.drawMode=e.drawMode,this.vertexCount=e.getVertexCount(),this._deleteGeometryBuffers(),this.geometryBuffers=function(e,t,n){var i={},r=t.indices;for(var o in t.attributes){var a=t.attributes[o],s=EC(o,void 0);if("indices"===o)r=a;else if(a.constant)i[s]=a.value;else{var u=a.value,c=M({},a);delete c.value,i[s]=[new ux(e,u),c],CC(o,c)}}if(r){var l=r.value||r;Uk(l instanceof Uint16Array||l instanceof Uint32Array,'attribute array for "indices" must be of integer type');var h={size:1,isIndexed:void 0===r.isIndexed||r.isIndexed};i.indices=[new ux(e,{data:l,target:34963}),h]}return i}(this.gl,e),this.vertexArray.setAttributes(this.geometryBuffers),this}},{key:"setAttributes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Yk(e))return this;var t={};for(var n in e){var i=e[n];t[n]=i.getValue?i.getValue():i}return this.vertexArray.setAttributes(t),this}},{key:"setUniforms",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object.assign(this.uniforms,e),this}},{key:"getModuleUniforms",value:function(e){this._checkProgram();var t=this.programManager.getUniforms(this.program);return t?t(e):{}}},{key:"updateModuleSettings",value:function(e){var t=this.getModuleUniforms(e||{});return this.setUniforms(t)}},{key:"clear",value:function(e){return wx(this.program.gl,e),this}},{key:"draw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._checkProgram();var t,n=e.moduleSettings,i=void 0===n?null:n,r=e.framebuffer,o=e.uniforms,a=void 0===o?{}:o,s=e.attributes,u=void 0===s?{}:s,c=e.transformFeedback,l=void 0===c?this.transformFeedback:c,h=e.parameters,d=void 0===h?{}:h,f=e.vertexArray,p=void 0===f?this.vertexArray:f;this.setAttributes(u),this.updateModuleSettings(i),this.setUniforms(a),Gw.priority>=2&&(t=this._logDrawCallStart(2));var v=this.vertexArray.getDrawParams(),g=this.props,m=g.isIndexed,y=void 0===m?v.isIndexed:m,b=g.indexType,_=void 0===b?v.indexType:b,w=g.indexOffset,k=void 0===w?v.indexOffset:w,x=g.vertexArrayInstanced,S=void 0===x?v.isInstanced:x;S&&!this.isInstanced&&Gw.warn("Found instanced attributes on non-instanced model",this.id)();var E=this.isInstanced,C=this.instanceCount,O=this.props,T=O.onBeforeRender,A=void 0===T?OC:T,P=O.onAfterRender,M=void 0===P?OC:P;A(),this.program.setUniforms(this.uniforms);var I=this.program.draw(Object.assign(TC,e,{logPriority:t,uniforms:null,framebuffer:r,parameters:d,drawMode:this.getDrawMode(),vertexCount:this.getVertexCount(),vertexArray:p,transformFeedback:l,isIndexed:y,indexType:_,isInstanced:E,instanceCount:C,offset:y?k:0}));return M(),Gw.priority>=2&&this._logDrawCallEnd(t,p,r),I}},{key:"transform",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.discard,n=void 0===t||t,i=e.feedbackBuffers,r=e.unbindModels,o=void 0===r?[]:r,a=e.parameters;i&&this._setFeedbackBuffers(i),n&&(a=Object.assign({},a,{35977:n})),o.forEach(function(e){return e.vertexArray.unbindBuffers()});try{this.draw(Object.assign({},e,{parameters:a}))}finally{o.forEach(function(e){return e.vertexArray.bindBuffers()})}return this}},{key:"render",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Gw.warn("Model.render() is deprecated. Use Model.setUniforms() and Model.draw()")(),this.setUniforms(e).draw()}},{key:"_setModelProps",value:function(e){Object.assign(this.props,e),"uniforms"in e&&this.setUniforms(e.uniforms),"pickable"in e&&(this.pickable=e.pickable),"instanceCount"in e&&(this.instanceCount=e.instanceCount),"geometry"in e&&this.setGeometry(e.geometry),"attributes"in e&&this.setAttributes(e.attributes),"_feedbackBuffers"in e&&this._setFeedbackBuffers(e._feedbackBuffers)}},{key:"_checkProgram",value:function(){if(this._programDirty||this.programManager.stateHash!==this._programManagerState){var e=this.programProps.program;if(e)this._managedProgram=!1;else{var t=this.programProps,n=t.vs,i=t.fs,r=t.modules,o=t.inject,a=t.defines,s=t.varyings,u=t.bufferMode,c=t.transpileToGLSL100;e=this.programManager.get({vs:n,fs:i,modules:r,inject:o,defines:a,varyings:s,bufferMode:u,transpileToGLSL100:c}),this.program&&this._managedProgram&&this.programManager.release(this.program),this._programManagerState=this.programManager.stateHash,this._managedProgram=!0}Uk(e instanceof hC,"Model needs a program"),this._programDirty=!1,e!==this.program&&(this.program=e,this.vertexArray?this.vertexArray.setProps({program:this.program,attributes:this.vertexArray.attributes}):this.vertexArray=new mC(this.gl,{program:this.program}),this.setUniforms(Object.assign({},this.getModuleUniforms())))}}},{key:"_deleteGeometryBuffers",value:function(){for(var e in this.geometryBuffers){var t=this.geometryBuffers[e][0]||this.geometryBuffers[e];t instanceof ux&&t.delete()}}},{key:"_setAnimationProps",value:function(e){this.animated&&Uk(e,"Model.draw(): animated uniforms but no animationProps")}},{key:"_setFeedbackBuffers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Yk(e))return this;var t=this.program.gl;return this.transformFeedback=this.transformFeedback||new GS(t,{program:this.program}),this.transformFeedback.setBuffers(e),this}},{key:"_logDrawCallStart",value:function(e){var t=e>3?0:1e4;if(!(Date.now()-this.lastLogTime>> DRAWING MODEL ".concat(this.id),{collapsed:Gw.level<=2})(),e}},{key:"_logDrawCallEnd",value:function(e,t,n,i){if(void 0!==e){var r=function(e){var t=e.vertexArray,n=e.header,i=void 0===n?"Attributes":n;if(!t.configuration)return{};var r={};t.elements&&(r.ELEMENT_ARRAY_BUFFER=bC(t,t.elements,null,i));var o=t.values;for(var a in o){var s=t._getAttributeInfo(a);if(s){var u="".concat(a,": ").concat(s.name),c=t.accessors[s.location];c&&(u="".concat(a,": ").concat(_C(s.name,c))),r[u]=bC(t,o[a],c,i)}}return r}({vertexArray:t,header:"".concat(this.id," attributes"),attributes:this._attributes}),a=wC({header:"".concat(this.id," uniforms"),program:this.program,uniforms:Object.assign({},this.program.uniforms,n)}),s=a.table,u=a.unusedTable,c=a.unusedCount,l=wC({header:"".concat(this.id," uniforms"),program:this.program,uniforms:Object.assign({},this.program.uniforms,n),undefinedOnly:!0}),h=l.table;l.count>0&&Gw.log("MISSING UNIFORMS",Object.keys(h))(),c>0&&Gw.log("UNUSED UNIFORMS",Object.keys(u))();var d=function(e){var t,n={},i="Accessors for ".concat(e.id),r=_(e.attributeInfos);try{for(r.s();!(t=r.n()).done;){var a=t.value;a&&(n["in ".concat(xC(a))]=o({},i,JSON.stringify(a.accessor)))}}catch(l){r.e(l)}finally{r.f()}var s,u=_(e.varyingInfos);try{for(u.s();!(s=u.n()).done;){var c=s.value;c&&(n["out ".concat(xC(c))]=o({},i,JSON.stringify(c.accessor)))}}catch(l){u.e(l)}finally{u.f()}return n}(this.vertexArray.configuration);Gw.table(e,r)(),Gw.table(e,s)(),Gw.table(e+1,d)(),i&&i.log({logLevel:2,message:"Rendered to ".concat(i.id)}),Gw.groupEnd(2,">>> DRAWING MODEL ".concat(this.id))()}}}]),e}(),PC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.model=null,this.elementCount=0,this.bufferTransform=null,this.textureTransform=null,this.elementIDBuffer=null,this._initialize(n),Object.seal(this)}return b(e,[{key:"delete",value:function(){var e=this.model,t=this.bufferTransform,n=this.textureTransform;e&&e.delete(),t&&t.delete(),n&&n.delete()}},{key:"run",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.clearRenderTarget,n=void 0===t||t,i=this._updateDrawOptions(e);n&&i.framebuffer&&i.framebuffer.clear({color:!0}),this.model.transform(i)}},{key:"swap",value:function(){var e,t=!1,n=_([this.bufferTransform,this.textureTransform].filter(Boolean));try{for(n.s();!(e=n.n()).done;){var i=e.value;t=t||i.swap()}}catch(r){n.e(r)}finally{n.f()}Uk(t,"Nothing to swap")}},{key:"getBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return this.bufferTransform&&this.bufferTransform.getBuffer(e)}},{key:"getData",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=[this.bufferTransform,this.textureTransform].filter(Boolean),i=_(n);try{for(i.s();!(e=i.n()).done;){var r=e.value,o=r.getData(t);if(o)return o}}catch(a){i.e(a)}finally{i.f()}return null}},{key:"getFramebuffer",value:function(){return this.textureTransform&&this.textureTransform.getFramebuffer()}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"elementCount"in e&&this.model.setVertexCount(e.elementCount);var t,n=[this.bufferTransform,this.textureTransform].filter(Boolean),i=_(n);try{for(i.s();!(t=i.n()).done;){var r=t.value;r.update(e)}}catch(o){i.e(o)}finally{i.f()}}},{key:"_initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.gl;this._buildResourceTransforms(t,e),e=this._updateModelProps(e),this.model=new AC(t,Object.assign({},e,{fs:e.fs||HS({version:qS(e.vs)}),id:e.id||"transform-model",drawMode:e.drawMode||0,vertexCount:e.elementCount})),this.bufferTransform&&this.bufferTransform.setupResources({model:this.model})}},{key:"_updateModelProps",value:function(e){var t,n=Object.assign({},e),i=_([this.bufferTransform,this.textureTransform].filter(Boolean));try{for(i.s();!(t=i.n()).done;){n=t.value.updateModelProps(n)}}catch(r){i.e(r)}finally{i.f()}return n}},{key:"_buildResourceTransforms",value:function(e,t){(function(e){return!(Yk(e.feedbackBuffers)&&Yk(e.feedbackMap)&&!(e.varyings&&e.varyings.length>0))})(t)&&(this.bufferTransform=new WS(e,t)),function(e){return!(Yk(e._sourceTextures)&&!e._targetTexture&&!e._targetTextureVarying)}(t)&&(this.textureTransform=new oE(e,t)),Uk(this.bufferTransform||this.textureTransform,"must provide source/feedback buffers or source/target textures")}},{key:"_updateDrawOptions",value:function(e){var t,n=Object.assign({},e),i=_([this.bufferTransform,this.textureTransform].filter(Boolean));try{for(i.s();!(t=i.n()).done;){var r=t.value;n=Object.assign(n,r.getDrawOptions(n))}}catch(o){i.e(o)}finally{i.f()}return n}}],[{key:"isSupported",value:function(e){return Xw(e)}}]),e}();function MC(){}var IC={onStart:MC,onUpdate:MC,onInterrupt:MC,onEnd:MC},RC=function(){function e(t){m(this,e),this._inProgress=!1,this._handle=null,this.timeline=t,this.settings={}}return b(e,[{key:"inProgress",get:function(){return this._inProgress}},{key:"start",value:function(e){this.cancel(),this.settings=M(M({},IC),e),this._inProgress=!0,this.settings.onStart(this)}},{key:"end",value:function(){this._inProgress&&(this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1,this.settings.onEnd(this))}},{key:"cancel",value:function(){this._inProgress&&(this.settings.onInterrupt(this),this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1)}},{key:"update",value:function(){if(!this._inProgress)return!1;if(null===this._handle){var e=this.timeline,t=this.settings;this._handle=e.addChannel({delay:e.getTime(),duration:t.duration})}return this.time=this.timeline.getTime(this._handle),this._onUpdate(),this.settings.onUpdate(this),this.timeline.isFinished(this._handle)&&this.end(),!0}},{key:"_onUpdate",value:function(){}}]),e}(),DC={interpolation:function(){function e(t){var n=t.gl,i=t.attribute,r=t.timeline;m(this,e),this.gl=n,this.type="interpolation",this.transition=new RC(r),this.attribute=i,this.attributeInTransition=new LS(n,i.settings),this.currentStartIndices=i.startIndices,this.currentLength=0,this.transform=function(e,t){var n=IS(t.size);return new PC(e,{vs:"\n#define SHADER_NAME interpolation-transition-vertex-shader\n\nuniform float time;\nattribute ATTRIBUTE_TYPE aFrom;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vCurrent;\n\nvoid main(void) {\n vCurrent = mix(aFrom, aTo, time);\n gl_Position = vec4(0.0);\n}\n",defines:{ATTRIBUTE_TYPE:n},varyings:["vCurrent"]})}(n,i);var o={byteLength:0,usage:35050};this.buffers=[new ux(n,o),new ux(n,o)]}return b(e,[{key:"inProgress",get:function(){return this.transition.inProgress}},{key:"start",value:function(e,t){if(e.duration<=0)this.transition.cancel();else{var n=this.buffers,i=this.attribute;RS(n);var r,o={numInstances:t,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:e.enter},a=_(n);try{for(a.s();!(r=a.n()).done;){var s=r.value;NS(M({buffer:s},o))}}catch(u){a.e(u)}finally{a.f()}this.currentStartIndices=i.startIndices,this.currentLength=DS(i,t),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(e),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aFrom:n[0],aTo:MS(0,i)},feedbackBuffers:{vCurrent:n[1]}})}}},{key:"update",value:function(){var e=this.transition.update();if(e){var t=this.transition,n=t.time,i=t.settings,r=i.duration,o=(0,i.easing)(n/r);this.transform.run({uniforms:{time:o}})}return e}},{key:"cancel",value:function(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete()}}]),e}(),spring:function(){function e(t){var n=t.gl,i=t.attribute,r=t.timeline;m(this,e),this.gl=n,this.type="spring",this.transition=new RC(r),this.attribute=i,this.attributeInTransition=new LS(n,I(M({},i.settings),{normalized:!1})),this.currentStartIndices=i.startIndices,this.currentLength=0,this.texture=function(e){return new gx(e,{data:new Uint8Array(4),format:6408,type:5121,border:0,mipmaps:!1,dataFormat:6408,width:1,height:1})}(n),this.framebuffer=function(e,t){return new Mx(e,{id:"spring-transition-is-transitioning-framebuffer",width:1,height:1,attachments:{36064:t}})}(n,this.texture),this.transform=function(e,t,n){var i=IS(t.size);return new PC(e,{framebuffer:n,vs:"\n#define SHADER_NAME spring-transition-vertex-shader\n\n#define EPSILON 0.00001\n\nuniform float stiffness;\nuniform float damping;\nattribute ATTRIBUTE_TYPE aPrev;\nattribute ATTRIBUTE_TYPE aCur;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vNext;\nvarying float vIsTransitioningFlag;\n\nATTRIBUTE_TYPE getNextValue(ATTRIBUTE_TYPE cur, ATTRIBUTE_TYPE prev, ATTRIBUTE_TYPE dest) {\n ATTRIBUTE_TYPE velocity = cur - prev;\n ATTRIBUTE_TYPE delta = dest - cur;\n ATTRIBUTE_TYPE spring = delta * stiffness;\n ATTRIBUTE_TYPE damper = velocity * -1.0 * damping;\n return spring + damper + velocity + cur;\n}\n\nvoid main(void) {\n bool isTransitioning = length(aCur - aPrev) > EPSILON || length(aTo - aCur) > EPSILON;\n vIsTransitioningFlag = isTransitioning ? 1.0 : 0.0;\n\n vNext = getNextValue(aCur, aPrev, aTo);\n gl_Position = vec4(0, 0, 0, 1);\n gl_PointSize = 100.0;\n}\n",fs:"\n#define SHADER_NAME spring-transition-is-transitioning-fragment-shader\n\nvarying float vIsTransitioningFlag;\n\nvoid main(void) {\n if (vIsTransitioningFlag == 0.0) {\n discard;\n }\n gl_FragColor = vec4(1.0);\n}",defines:{ATTRIBUTE_TYPE:i},varyings:["vNext"]})}(n,i,this.framebuffer);var o={byteLength:0,usage:35050};this.buffers=[new ux(n,o),new ux(n,o),new ux(n,o)]}return b(e,[{key:"inProgress",get:function(){return this.transition.inProgress}},{key:"start",value:function(e,t){var n,i=this.buffers,r=this.attribute,o={numInstances:t,attribute:r,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:e.enter},a=_(i);try{for(a.s();!(n=a.n()).done;){var s=n.value;NS(M({buffer:s},o))}}catch(u){a.e(u)}finally{a.f()}this.currentStartIndices=r.startIndices,this.currentLength=DS(r,t),this.attributeInTransition.update({buffer:i[1],value:r.value}),this.transition.start(e),this.transform.update({elementCount:Math.floor(this.currentLength/r.size),sourceBuffers:{aTo:MS(0,r)}})}},{key:"update",value:function(){var e=this.buffers,t=this.transform,n=this.framebuffer,i=this.transition;return!!i.update()&&(t.update({sourceBuffers:{aPrev:e[0],aCur:e[1]},feedbackBuffers:{vNext:e[2]}}),t.run({framebuffer:n,discard:!1,clearRenderTarget:!0,uniforms:{stiffness:i.settings.stiffness,damping:i.settings.damping},parameters:{depthTest:!1,blend:!0,viewport:[0,0,1,1],blendFunc:[1,1],blendEquation:[32776,32776]}}),RS(e),this.attributeInTransition.update({buffer:e[1],value:this.attribute.value}),Tx(n)[0]>0||i.end(),!0)}},{key:"cancel",value:function(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete();this.texture.delete(),this.texture=null,this.framebuffer.delete(),this.framebuffer=null}}]),e}()},NC=function(){function e(t,n){var i=n.id,r=n.timeline;m(this,e),this.id=i,this.gl=t,this.timeline=r,this.transitions={},this.needsRedraw=!1,this.numInstances=1,this.isSupported=PC.isSupported(t)}return b(e,[{key:"finalize",value:function(){for(var e in this.transitions)this._removeTransition(e)}},{key:"update",value:function(e){var t=e.attributes,n=e.transitions,i=e.numInstances;for(var r in this.numInstances=i||1,t){var o=t[r],a=o.getTransitionSetting(n);!a||this._updateAttribute(r,o,a)}for(var s in this.transitions){var u=t[s];(!u||!u.getTransitionSetting(n))&&this._removeTransition(s)}}},{key:"hasAttribute",value:function(e){var t=this.transitions[e];return t&&t.inProgress}},{key:"getAttributes",value:function(){var e={};for(var t in this.transitions){var n=this.transitions[t];n.inProgress&&(e[t]=n.attributeInTransition)}return e}},{key:"run",value:function(){if(!this.isSupported||0===this.numInstances)return!1;for(var e in this.transitions)this.transitions[e].update()&&(this.needsRedraw=!0);var t=this.needsRedraw;return this.needsRedraw=!1,t}},{key:"_removeTransition",value:function(e){this.transitions[e].cancel(),delete this.transitions[e]}},{key:"_updateAttribute",value:function(e,t,n){var i=this.transitions[e],r=!i||i.type!==n.type;if(r){if(!this.isSupported)return void Vw.warn("WebGL2 not supported by this browser. Transition for ".concat(e," is disabled."))();i&&this._removeTransition(e);var o=DC[n.type];o?this.transitions[e]=new o({attribute:t,timeline:this.timeline,gl:this.gl}):(Vw.error("unsupported transition type '".concat(n.type,"'"))(),r=!1)}(r||t.needsRedraw())&&(this.needsRedraw=!0,this.transitions[e].start(n,this.numInstances))}}]),e}(),LC="attributeManager.invalidate",jC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.id,r=void 0===i?"attribute-manager":i,o=n.stats,a=n.timeline;m(this,e),this.id=r,this.gl=t,this.attributes={},this.updateTriggers={},this.accessors={},this.needsRedraw=!0,this.userData={},this.stats=o,this.attributeTransitionManager=new NC(t,{id:"".concat(r,"-transitions"),timeline:a}),Object.seal(this)}return b(e,[{key:"finalize",value:function(){for(var e in this.attributes)this.attributes[e].delete();this.attributeTransitionManager.finalize()}},{key:"getNeedsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this.needsRedraw;return this.needsRedraw=this.needsRedraw&&!e.clearRedrawFlags,t&&this.id}},{key:"setNeedsRedraw",value:function(){return this.needsRedraw=!0,this}},{key:"add",value:function(e,t){this._add(e,t)}},{key:"addInstanced",value:function(e,t){this._add(e,t,{instanced:1})}},{key:"remove",value:function(e){for(var t=0;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.data,n=e.numInstances,i=e.startIndices,r=void 0===i?null:i,o=e.transitions,a=e.props,s=void 0===a?{}:a,u=e.buffers,c=void 0===u?{}:u,l=e.context,h=void 0===l?{}:l,d=!1;for(var f in FS("attributeManager.updateStart",this),this.stats&&this.stats.get("Update Attributes").timeStart(),this.attributes){var p=this.attributes[f],v=p.settings.accessor;p.startIndices=r,s[f]&&Vw.removed("props.".concat(f),"data.attributes.".concat(f))(),p.setExternalBuffer(c[f])||p.setBinaryValue(c[v],t.startIndices)||!c[v]&&p.setConstantValue(s[v])||p.needsUpdate()&&(d=!0,this._updateAttribute({attribute:p,numInstances:n,data:t,props:s,context:h})),this.needsRedraw|=p.needsRedraw()}d&&FS("attributeManager.updateEnd",this,n),this.stats&&this.stats.get("Update Attributes").timeEnd(),this.attributeTransitionManager.update({attributes:this.attributes,numInstances:n,transitions:o})}},{key:"updateTransition",value:function(){var e=this.attributeTransitionManager.run();return this.needsRedraw=this.needsRedraw||e,e}},{key:"getAttributes",value:function(){return this.attributes}},{key:"getChangedAttributes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearChangedFlags:!1},t=this.attributes,n=this.attributeTransitionManager,i=M({},n.getAttributes());for(var r in t){var o=t[r];o.needsRedraw(e)&&!n.hasAttribute(r)&&(i[r]=o)}return i}},{key:"getShaderAttributes",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e||(e=this.getAttributes());var n={};for(var i in e)t[i]||Object.assign(n,e[i].getShaderAttributes());return n}},{key:"getAccessors",value:function(){return this.updateTriggers}},{key:"_add",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};for(var i in t&&Vw.warn("AttributeManager.add({updaters}) - updater map no longer supported")(),e)this.attributes[i]=this._createAttribute(i,e[i],n);this._mapUpdateTriggersToAttributes()}},{key:"_createAttribute",value:function(e,t,n){var i=I(M({},t),{id:e,isIndexed:t.isIndexed||t.elements||!1,constant:t.constant||!1,size:(t.elements?1:t.size)||1,value:t.value||null,divisor:t.instanced||n.instanced?1:t.divisor||0});return new LS(this.gl,i)}},{key:"_mapUpdateTriggersToAttributes",value:function(){var e=this,t={},n=function(n){e.attributes[n].getUpdateTriggers().forEach(function(e){t[e]||(t[e]=[]),t[e].push(n)})};for(var i in this.attributes)n(i);this.updateTriggers=t}},{key:"_invalidateTrigger",value:function(e,t){var n=this.attributes,i=this.updateTriggers[e];return i&&i.forEach(function(e){var i=n[e];i&&i.setNeedsUpdate(i.id,t)}),i}},{key:"_updateAttribute",value:function(e){var t=e.attribute,n=e.numInstances;FS("attribute.updateStart",t),t.allocate(n)&&FS("attribute.allocate",t,n),t.updateBuffer(e)&&(this.needsRedraw=!0,FS("attribute.updateEnd",t,n))}}]),e}();function FC(e,t,n,i,r){var o=t-e;return(n-t)*r+-o*i+o+t}function BC(e,t){if(Array.isArray(e)){for(var n=0,i=0;i0}},{key:"add",value:function(e,t,n,i){var r=this.transitions;if(r.has(e)){var o=r.get(e),a=o.value;t=void 0===a?o.settings.fromValue:a,this.remove(e)}if(i=PS(i)){var s=VC[i.type];if(s){var u=new s(this.timeline);u.start(I(M({},i),{fromValue:t,toValue:n})),r.set(e,u)}else Vw.error("unsupported transition type '".concat(i.type,"'"))()}}},{key:"remove",value:function(e){var t=this.transitions;t.has(e)&&(t.get(e).cancel(),t.delete(e))}},{key:"update",value:function(){var e,n={},i=_(this.transitions);try{for(i.s();!(e=i.n()).done;){var r=t(e.value,2),o=r[0],a=r[1];a.update(),n[o]=a.value,a.inProgress||this.remove(o)}}catch(s){i.e(s)}finally{i.f()}return n}},{key:"clear",value:function(){var e,t=_(this.transitions.keys());try{for(t.s();!(e=t.n()).done;){var n=e.value;this.remove(n)}}catch(i){t.e(i)}finally{t.f()}}}]),e}(),UC={COMPONENT:Symbol.for("component"),ASYNC_DEFAULTS:Symbol.for("asyncPropDefaults"),ASYNC_ORIGINAL:Symbol.for("asyncPropOriginal"),ASYNC_RESOLVED:Symbol.for("asyncPropResolved")},HC=UC.COMPONENT;function GC(e,t){if(!e.transitions)return null;var n={},i=KC(e);for(var r in e.transitions){var o=i[r],a=o&&o.type;("number"===a||"color"===a||"array"===a)&&qC(e[r],t[r],o)&&(n[r]=!0)}return n}function WC(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.newProps,n=e.oldProps,i=e.ignoreProps,r=void 0===i?{}:i,o=e.propTypes,a=void 0===o?{}:o,s=e.triggerName,u=void 0===s?"props":s;if(n===t)return null;if("object"!=typeof t||null===t||"object"!=typeof n||null===n)return"".concat(u," changed shallowly");for(var c=0,l=Object.keys(t);c=0&&n.modules.splice(i,1)}if("inject"in t)if(e.inject){var r=M({},e.inject);for(var o in t.inject)r[o]=(r[o]||"")+t.inject[o];n.inject=r}else n.inject=t.inject;return n}function JC(e,t){var n=t[0],i=t[1],r=t[2],o=t[3],a=t[4],s=t[5],u=t[6],c=t[7],l=t[8],h=t[9],d=t[10],f=t[11],p=t[12],v=t[13],g=t[14],m=t[15],y=n*s-i*a,b=n*u-r*a,_=n*c-o*a,w=i*u-r*s,k=i*c-o*s,x=r*c-o*u,S=l*v-h*p,E=l*g-d*p,C=l*m-f*p,O=h*g-d*v,T=h*m-f*v,A=d*m-f*g,P=y*A-b*T+_*O+w*C-k*E+x*S;return P?(e[0]=(s*A-u*T+c*O)*(P=1/P),e[1]=(r*T-i*A-o*O)*P,e[2]=(v*x-g*k+m*w)*P,e[3]=(d*k-h*x-f*w)*P,e[4]=(u*C-a*A-c*E)*P,e[5]=(n*A-r*C+o*E)*P,e[6]=(g*_-p*x-m*b)*P,e[7]=(l*x-d*_+f*b)*P,e[8]=(a*T-s*C+c*S)*P,e[9]=(i*C-n*T-o*S)*P,e[10]=(p*k-v*_+m*y)*P,e[11]=(h*_-l*k-f*y)*P,e[12]=(s*E-a*O-u*S)*P,e[13]=(n*O-i*E+r*S)*P,e[14]=(v*b-p*w-g*y)*P,e[15]=(l*w-h*b+d*y)*P,e):null}function eO(e,t,n){var i=t[0],r=t[1],o=t[2],a=t[3],s=t[4],u=t[5],c=t[6],l=t[7],h=t[8],d=t[9],f=t[10],p=t[11],v=t[12],g=t[13],m=t[14],y=t[15],b=n[0],_=n[1],w=n[2],k=n[3];return e[0]=b*i+_*s+w*h+k*v,e[1]=b*r+_*u+w*d+k*g,e[2]=b*o+_*c+w*f+k*m,e[3]=b*a+_*l+w*p+k*y,e[4]=(b=n[4])*i+(_=n[5])*s+(w=n[6])*h+(k=n[7])*v,e[5]=b*r+_*u+w*d+k*g,e[6]=b*o+_*c+w*f+k*m,e[7]=b*a+_*l+w*p+k*y,e[8]=(b=n[8])*i+(_=n[9])*s+(w=n[10])*h+(k=n[11])*v,e[9]=b*r+_*u+w*d+k*g,e[10]=b*o+_*c+w*f+k*m,e[11]=b*a+_*l+w*p+k*y,e[12]=(b=n[12])*i+(_=n[13])*s+(w=n[14])*h+(k=n[15])*v,e[13]=b*r+_*u+w*d+k*g,e[14]=b*o+_*c+w*f+k*m,e[15]=b*a+_*l+w*p+k*y,e}function tO(e,t,n){var i,r,o,a,s,u,c,l,h,d,f,p,v=n[0],g=n[1],m=n[2];return t===e?(e[12]=t[0]*v+t[4]*g+t[8]*m+t[12],e[13]=t[1]*v+t[5]*g+t[9]*m+t[13],e[14]=t[2]*v+t[6]*g+t[10]*m+t[14],e[15]=t[3]*v+t[7]*g+t[11]*m+t[15]):(r=t[1],o=t[2],a=t[3],s=t[4],u=t[5],c=t[6],l=t[7],h=t[8],d=t[9],f=t[10],p=t[11],e[0]=i=t[0],e[1]=r,e[2]=o,e[3]=a,e[4]=s,e[5]=u,e[6]=c,e[7]=l,e[8]=h,e[9]=d,e[10]=f,e[11]=p,e[12]=i*v+s*g+h*m+t[12],e[13]=r*v+u*g+d*m+t[13],e[14]=o*v+c*g+f*m+t[14],e[15]=a*v+l*g+p*m+t[15]),e}function nO(e,t,n){var i=n[0],r=n[1],o=n[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*r,e[5]=t[5]*r,e[6]=t[6]*r,e[7]=t[7]*r,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function iO(e,t,n){var i=Math.sin(n),r=Math.cos(n),o=t[4],a=t[5],s=t[6],u=t[7],c=t[8],l=t[9],h=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=o*r+c*i,e[5]=a*r+l*i,e[6]=s*r+h*i,e[7]=u*r+d*i,e[8]=c*r-o*i,e[9]=l*r-a*i,e[10]=h*r-s*i,e[11]=d*r-u*i,e}function rO(e,t,n){var i=Math.sin(n),r=Math.cos(n),o=t[0],a=t[1],s=t[2],u=t[3],c=t[4],l=t[5],h=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*r+c*i,e[1]=a*r+l*i,e[2]=s*r+h*i,e[3]=u*r+d*i,e[4]=c*r-o*i,e[5]=l*r-a*i,e[6]=h*r-s*i,e[7]=d*r-u*i,e}function oO(e,t,n,i,r){var o,a=1/Math.tan(t/2);return e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=r&&r!==1/0?(e[10]=(r+i)*(o=1/(i-r)),e[14]=2*r*i*o):(e[10]=-1,e[14]=-2*i),e}function aO(e,t){var n=e[0],i=e[1],r=e[2],o=e[3],a=e[4],s=e[5],u=e[6],c=e[7],l=e[8],h=e[9],d=e[10],f=e[11],p=e[12],v=e[13],g=e[14],m=e[15],y=t[0],b=t[1],_=t[2],w=t[3],k=t[4],x=t[5],S=t[6],E=t[7],C=t[8],O=t[9],T=t[10],A=t[11],P=t[12],M=t[13],I=t[14],R=t[15];return Math.abs(n-y)<=eS*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-b)<=eS*Math.max(1,Math.abs(i),Math.abs(b))&&Math.abs(r-_)<=eS*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(o-w)<=eS*Math.max(1,Math.abs(o),Math.abs(w))&&Math.abs(a-k)<=eS*Math.max(1,Math.abs(a),Math.abs(k))&&Math.abs(s-x)<=eS*Math.max(1,Math.abs(s),Math.abs(x))&&Math.abs(u-S)<=eS*Math.max(1,Math.abs(u),Math.abs(S))&&Math.abs(c-E)<=eS*Math.max(1,Math.abs(c),Math.abs(E))&&Math.abs(l-C)<=eS*Math.max(1,Math.abs(l),Math.abs(C))&&Math.abs(h-O)<=eS*Math.max(1,Math.abs(h),Math.abs(O))&&Math.abs(d-T)<=eS*Math.max(1,Math.abs(d),Math.abs(T))&&Math.abs(f-A)<=eS*Math.max(1,Math.abs(f),Math.abs(A))&&Math.abs(p-P)<=eS*Math.max(1,Math.abs(p),Math.abs(P))&&Math.abs(v-M)<=eS*Math.max(1,Math.abs(v),Math.abs(M))&&Math.abs(g-I)<=eS*Math.max(1,Math.abs(g),Math.abs(I))&&Math.abs(m-R)<=eS*Math.max(1,Math.abs(m),Math.abs(R))}function sO(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function uO(e,t,n){var i=t[0],r=t[1],o=t[2],a=t[3];return e[0]=n[0]*i+n[4]*r+n[8]*o+n[12]*a,e[1]=n[1]*i+n[5]*r+n[9]*o+n[13]*a,e[2]=n[2]*i+n[6]*r+n[10]*o+n[14]*a,e[3]=n[3]*i+n[7]*r+n[11]*o+n[15]*a,e}!function(){var e=new tS(4);tS!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0)}();var cO=[0,0,0,0],lO=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],hO=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],dO=[0,0,0],fO=[0,0,0],pO=QC(function(e){var t=e.viewport,n=e.devicePixelRatio,i=e.coordinateSystem,r=function(e,t,n){var i=e.viewMatrixUncentered,r=e.projectionMatrix,o=e.viewMatrix,a=e.viewProjectionMatrix,s=cO,u=cO,c=e.cameraPosition,l=vO(e,t,n),h=l.geospatialOrigin,d=l.shaderCoordinateOrigin;return l.offsetMode&&(u=e.projectPosition(h||d),c=[c[0]-u[0],c[1]-u[1],c[2]-u[2]],u[3]=1,s=uO([],u,a),a=eO([],r,o=i||o),a=eO([],a,lO)),{viewMatrix:o,viewProjectionMatrix:a,projectionCenter:s,originCommon:u,cameraPosCommon:c,shaderCoordinateOrigin:d,geospatialOrigin:h}}(t,i,e.coordinateOrigin),o=r.projectionCenter,a=r.viewProjectionMatrix,s=r.originCommon,u=r.cameraPosCommon,c=r.shaderCoordinateOrigin,l=r.geospatialOrigin,h=t.getDistanceScales(),d=[t.width*n,t.height*n],f=t.projectionMatrix.transform([0,0,-t.focalDistance,1])[3]||1,p={project_uCoordinateSystem:i,project_uProjectionMode:t.projectionMode,project_uCoordinateOrigin:c,project_uCommonOrigin:s.slice(0,3),project_uCenter:o,project_uViewportSize:d,project_uDevicePixelRatio:n,project_uFocalDistance:f,project_uCommonUnitsPerMeter:h.unitsPerMeter,project_uCommonUnitsPerWorldUnit:h.unitsPerMeter,project_uCommonUnitsPerWorldUnit2:dO,project_uScale:t.scale,project_uViewProjectionMatrix:a,project_uCameraPosition:u};if(l){var v=t.getDistanceScales(l);switch(i){case zw.METER_OFFSETS:p.project_uCommonUnitsPerWorldUnit=v.unitsPerMeter,p.project_uCommonUnitsPerWorldUnit2=v.unitsPerMeter2;break;case zw.LNGLAT:case zw.LNGLAT_OFFSETS:p.project_uCommonUnitsPerWorldUnit=v.unitsPerDegree,p.project_uCommonUnitsPerWorldUnit2=v.unitsPerDegree2;break;case zw.CARTESIAN:p.project_uCommonUnitsPerWorldUnit=[1,1,v.unitsPerMeter[2]],p.project_uCommonUnitsPerWorldUnit2=[0,0,v.unitsPerMeter2[2]]}}return p});function vO(e,t){var n,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:fO,r=i,o=!0;switch(n=t===zw.LNGLAT_OFFSETS||t===zw.METER_OFFSETS?i:e.isGeospatial?[Math.fround(e.longitude),Math.fround(e.latitude),0]:null,e.projectionMode){case Uw.WEB_MERCATOR:(t===zw.LNGLAT||t===zw.CARTESIAN)&&(o=!1);break;case Uw.WEB_MERCATOR_AUTO_OFFSET:t===zw.LNGLAT?r=n:t===zw.CARTESIAN&&(r=[Math.fround(e.center[0]),Math.fround(e.center[1]),0],n=e.unprojectPosition(r),r[0]-=i[0],r[1]-=i[1],r[2]-=i[2]);break;case Uw.IDENTITY:r=e.position.map(Math.fround);break;case Uw.GLOBE:o=!1,n=null;break;default:o=!1}return r[2]=r[2]||0,{geospatialOrigin:n,shaderCoordinateOrigin:r,offsetMode:o}}var gO=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"ELEMENTS",get:function(){return Xx(!1),0}},{key:"RANK",get:function(){return Xx(!1),0}},{key:"toString",value:function(){var e="[";if(Bx.printRowMajor){e+="row-major:";for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:new Array(this.RANK).fill(-0),n=e*this.RANK,i=0;i2*Math.PI)throw Error("radians");var d=s*Math.tan(n/2),f=d*o;return(new i).ortho({left:-f,right:f,bottom:-d,top:d,near:c,far:h})}},{key:"perspective",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.fovy,n=e.fov,i=void 0===n?45*Math.PI/180:n,r=e.aspect,o=void 0===r?1:r,a=e.near,s=void 0===a?.1:a,u=e.far,c=void 0===u?500:u;if((t=t||i)>2*Math.PI)throw Error("radians");return oO(this,t,o,s,c),this.check()}},{key:"determinant",value:function(){return function(e){var t=e[0],n=e[1],i=e[2],r=e[3],o=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],h=e[10],d=e[11],f=e[12],p=e[13],v=e[14],g=e[15];return(t*a-n*o)*(h*g-d*v)-(t*s-i*o)*(l*g-d*p)+(t*u-r*o)*(l*v-h*p)+(n*s-i*a)*(c*g-d*f)-(n*u-r*a)*(c*v-h*f)+(i*u-r*s)*(c*p-l*f)}(this)}},{key:"getScale",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0];return e[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),e[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),e[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),e}},{key:"getTranslation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0];return e[0]=this[12],e[1]=this[13],e[2]=this[14],e}},{key:"getRotation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=this.getScale(t||[-0,-0,-0]),i=1/n[0],r=1/n[1],o=1/n[2];return e[0]=this[0]*i,e[1]=this[1]*r,e[2]=this[2]*o,e[3]=0,e[4]=this[4]*i,e[5]=this[5]*r,e[6]=this[6]*o,e[7]=0,e[8]=this[8]*i,e[9]=this[9]*r,e[10]=this[10]*o,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},{key:"getRotationMatrix3",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0,-0,-0,-0,-0,-0,-0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=this.getScale(t||[-0,-0,-0]),i=1/n[0],r=1/n[1],o=1/n[2];return e[0]=this[0]*i,e[1]=this[1]*r,e[2]=this[2]*o,e[3]=this[4]*i,e[4]=this[5]*r,e[5]=this[6]*o,e[6]=this[8]*i,e[7]=this[9]*r,e[8]=this[10]*o,e}},{key:"transpose",value:function(){return function(e,t){if(e===t){var n=t[1],i=t[2],r=t[3],o=t[6],a=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=i,e[9]=o,e[11]=t[14],e[12]=r,e[13]=a,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15]}(this,this),this.check()}},{key:"invert",value:function(){return JC(this,this),this.check()}},{key:"multiplyLeft",value:function(e){return eO(this,e,this),this.check()}},{key:"multiplyRight",value:function(e){return eO(this,this,e),this.check()}},{key:"rotateX",value:function(e){return iO(this,this,e),this.check()}},{key:"rotateY",value:function(e){return function(e,t,n){var i=Math.sin(n),r=Math.cos(n),o=t[0],a=t[1],s=t[2],u=t[3],c=t[8],l=t[9],h=t[10],d=t[11];t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*r-c*i,e[1]=a*r-l*i,e[2]=s*r-h*i,e[3]=u*r-d*i,e[8]=o*i+c*r,e[9]=a*i+l*r,e[10]=s*i+h*r,e[11]=u*i+d*r}(this,this,e),this.check()}},{key:"rotateZ",value:function(e){return rO(this,this,e),this.check()}},{key:"rotateXYZ",value:function(e){var n=t(e,3),i=n[0],r=n[1],o=n[2];return this.rotateX(i).rotateY(r).rotateZ(o)}},{key:"rotateAxis",value:function(e,t){return function(e,t,n,i){var r,o,a,s,u,c,l,h,d,f,p,v,g,m,y,b,_,w,k,x,S,E,C,O,T=i[0],A=i[1],P=i[2],M=Math.hypot(T,A,P);M=-90&&r<=90,"invalid latitude"),[512*(i*MO+AO)/(2*AO),512*(AO+Math.log(Math.tan(PO+r*MO*.5)))/(2*AO)]}function NO(e){var n=t(e,2),i=n[0],r=n[1],o=i/512*(2*AO)-AO,a=2*(Math.atan(Math.exp(r/512*(2*AO)-AO))-PO);return[o*IO,a*IO]}function LO(e){var t=e.latitude,n=e.longitude,i=e.highPrecision,r=void 0!==i&&i;TO(Number.isFinite(t)&&Number.isFinite(n));var o={},a=Math.cos(t*MO),s=512/360,u=s/a,c=512/RO/a;if(o.unitsPerMeter=[c,c,c],o.metersPerUnit=[1/c,1/c,1/c],o.unitsPerDegree=[s,u,c],o.degreesPerUnit=[1/s,1/u,1/c],r){var l=MO*Math.tan(t*MO)/a,h=512/RO*l,d=h/u*c;o.unitsPerDegree2=[0,s*l/2,h],o.unitsPerMeter2=[d,0,d]}return o}function jO(e,n){var i=t(e,3),r=i[0],o=i[1],a=i[2],s=t(n,3),u=s[0],c=s[1],l=s[2],h=LO({longitude:r,latitude:o,highPrecision:!0}),d=h.unitsPerMeter,f=h.unitsPerMeter2,p=DO(e);p[0]+=u*(d[0]+f[0]*c),p[1]+=c*(d[1]+f[1]*c);var v=NO(p),g=(a||0)+(l||0);return Number.isFinite(a)||Number.isFinite(l)?[v[0],v[1],g]:v}function FO(e){var t=e.height,n=e.pitch,i=e.bearing,r=e.altitude,o=e.scale,a=e.center,s=void 0===a?null:a,u=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return tO(u,u,[0,0,-r]),iO(u,u,-n*MO),rO(u,u,i*MO),nO(u,u,[o/=t,o,o]),s&&tO(u,u,function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}([],s)),u}function BO(e){var t=e.width,n=e.height,i=e.fovy,r=void 0===i?VO(1.5):i,o=e.altitude,a=e.pitch,s=void 0===a?0:a,u=e.nearZMultiplier,c=void 0===u?1:u,l=e.farZMultiplier,h=void 0===l?1:l;void 0!==o&&(r=VO(o));var d=.5*r*MO,f=zO(r),p=s*MO,v=Math.sin(d)*f/Math.sin(Math.min(Math.max(Math.PI/2-p-d,.01),Math.PI-.01));return{fov:2*d,aspect:t/n,focalDistance:f,near:c,far:(Math.sin(p)*v+f)*h}}function VO(e){return 2*Math.atan(.5/e)*IO}function zO(e){return.5/Math.tan(.5*e*MO)}function UO(e,n){var i=t(e,3),r=i[0],o=i[1],a=i[2],s=void 0===a?0:a;return TO(Number.isFinite(r)&&Number.isFinite(o)&&Number.isFinite(s)),EO(n,[r,o,s,1])}function HO(e,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=t(e,3),o=r[0],a=r[1],s=r[2];if(TO(Number.isFinite(o)&&Number.isFinite(a),"invalid pixel coordinate"),Number.isFinite(s))return EO(n,[o,a,s,1]);var u=EO(n,[o,a,0,1]),c=EO(n,[o,a,1,1]),l=u[2],h=c[2];return bO([],u,c,l===h?0:((i||0)-l)/(h-l))}function GO(e){var n=e.width,i=e.height,r=e.bounds,o=e.minExtent,a=void 0===o?0:o,s=e.maxZoom,u=void 0===s?24:s,c=e.padding,l=void 0===c?0:c,h=e.offset,d=void 0===h?[0,0]:h,f=t(r,2),p=t(f[0],2),v=p[0],g=p[1],m=t(f[1],2),y=m[0],b=m[1];Number.isFinite(l)?l={top:l,bottom:l,left:l,right:l}:TO(Number.isFinite(l.top)&&Number.isFinite(l.bottom)&&Number.isFinite(l.left)&&Number.isFinite(l.right));var _=new YO({width:n,height:i,longitude:0,latitude:0,zoom:0}),w=_.project([v,b]),k=_.project([y,g]),x=[Math.max(Math.abs(k[0]-w[0]),a),Math.max(Math.abs(k[1]-w[1]),a)],S=[n-l.left-l.right-2*Math.abs(d[0]),i-l.top-l.bottom-2*Math.abs(d[1])];TO(S[0]>0&&S[1]>0);var E=S[0]/x[0],C=S[1]/x[1],O=_.unproject([(k[0]+w[0])/2+(l.right-l.left)/2/E,(k[1]+w[1])/2+(l.bottom-l.top)/2/C]),T=Math.min(u,_.zoom+OO(Math.abs(Math.min(E,C))));return TO(Number.isFinite(T)),{longitude:O[0],latitude:O[1],zoom:T}}var WO=Math.PI/180;function qO(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=e.width,o=e.height,a=e.unproject,s={targetZ:i},u=a([0,o],s),c=a([r,o],s);return(e.fovy?.5*e.fovy*WO:Math.atan(.5/e.altitude))>(90-e.pitch)*WO-.01?(t=XO(e,0,i),n=XO(e,r,i)):(t=a([0,0],s),n=a([r,0],s)),[u,c,n,t]}function XO(e,t,n){var i=e.pixelUnprojectionMatrix,r=EO(i,[t,0,1,1]),o=EO(i,[t,e.height,1,1]),a=NO(bO([],r,o,(n*e.distanceScales.unitsPerMeter[2]-r[2])/(o[2]-r[2])));return a[2]=n,a}var YO=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{width:1,height:1},n=t.width,i=t.height,r=t.latitude,o=void 0===r?0:r,a=t.longitude,s=void 0===a?0:a,u=t.zoom,c=void 0===u?0:u,l=t.pitch,h=void 0===l?0:l,d=t.bearing,f=void 0===d?0:d,p=t.altitude,v=void 0===p?null:p,g=t.fovy,y=void 0===g?null:g,b=t.position,_=void 0===b?null:b,w=t.nearZMultiplier,k=void 0===w?.02:w,x=t.farZMultiplier,S=void 0===x?1.01:x;m(this,e),n=n||1,i=i||1,null===y&&null===v?y=VO(v=1.5):null===y?y=VO(v):null===v&&(v=zO(y));var E=function(e){return Math.pow(2,e)}(c);v=Math.max(.75,v);var C,O,T=LO({longitude:s,latitude:o}),A=DO([s,o]);A[2]=0,_&&function(e,t,n){e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2]}(A,A,function(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}([],_,T.unitsPerMeter)),this.projectionMatrix=oO([],(O=BO({width:(C={width:n,height:i,pitch:h,fovy:y,nearZMultiplier:k,farZMultiplier:S}).width,height:C.height,altitude:C.altitude,fovy:C.fovy,pitch:C.pitch,nearZMultiplier:C.nearZMultiplier,farZMultiplier:C.farZMultiplier})).fov,O.aspect,O.near,O.far),this.viewMatrix=FO({height:i,scale:E,center:A,pitch:h,bearing:f,altitude:v}),this.width=n,this.height=i,this.scale=E,this.latitude=o,this.longitude=s,this.zoom=c,this.pitch=h,this.bearing=f,this.altitude=v,this.fovy=y,this.center=A,this.meterOffset=_||[0,0,0],this.distanceScales=T,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}return b(e,[{key:"_initMatrices",value:function(){var e=this.width,t=this.height,n=this.projectionMatrix,i=this.viewMatrix,r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];eO(r,r,n),eO(r,r,i),this.viewProjectionMatrix=r;var o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];nO(o,o,[e/2,-t/2,1]),tO(o,o,[1,-1,0]),eO(o,o,r);var a=JC([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],o);if(!a)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=o,this.pixelUnprojectionMatrix=a}},{key:"equals",value:function(t){return t instanceof e&&t.width===this.width&&t.height===this.height&&aO(t.projectionMatrix,this.projectionMatrix)&&aO(t.viewMatrix,this.viewMatrix)}},{key:"project",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=UO(this.projectPosition(e),this.pixelProjectionMatrix),a=t(o,2),s=a[0],u=a[1],c=r?u:this.height-u;return 2===e.length?[s,c]:[s,c,o[2]]}},{key:"unproject",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=n.targetZ,a=t(e,3),s=a[0],u=a[1],c=a[2],l=HO([s,r?u:this.height-u,c],this.pixelUnprojectionMatrix,o&&o*this.distanceScales.unitsPerMeter[2]),h=this.unprojectPosition(l),d=t(h,3),f=d[0],p=d[1],v=d[2];return Number.isFinite(c)?[f,p,v]:Number.isFinite(o)?[f,p,o]:[f,p]}},{key:"projectPosition",value:function(e){var n=t(DO(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.unitsPerMeter[2]]}},{key:"unprojectPosition",value:function(e){var n=t(NO(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.metersPerUnit[2]]}},{key:"projectFlat",value:function(e){return DO(e)}},{key:"unprojectFlat",value:function(e){return NO(e)}},{key:"getMapCenterByLngLatPosition",value:function(e){var t=e.lngLat,n=HO(e.pos,this.pixelUnprojectionMatrix),i=mO([],DO(t),yO([],n));return NO(mO([],this.center,i))}},{key:"getLocationAtPoint",value:function(e){var t=e.lngLat,n=e.pos;return this.getMapCenterByLngLatPosition({lngLat:t,pos:n})}},{key:"fitBounds",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=this.width,r=this.height,o=GO(Object.assign({width:i,height:r,bounds:t},n)),a=o.longitude,s=o.latitude,u=o.zoom;return new e({width:i,height:r,longitude:a,latitude:s,zoom:u})}},{key:"getBounds",value:function(e){var t=this.getBoundingRegion(e),n=Math.min.apply(Math,v(t.map(function(e){return e[0]}))),i=Math.max.apply(Math,v(t.map(function(e){return e[0]})));return[[n,Math.min.apply(Math,v(t.map(function(e){return e[1]})))],[i,Math.max.apply(Math,v(t.map(function(e){return e[1]})))]]}},{key:"getBoundingRegion",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return qO(this,e.z||0)}}]),e}(),KO=Math.PI/180,$O=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],QO=[0,0,0],ZO={unitsPerMeter:[1,1,1],metersPerUnit:[1,1,1]},JO=function(){var e=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?null:n,r=t.x,o=void 0===r?0:r,a=t.y,s=void 0===a?0:a,u=t.width,c=void 0===u?1:u,l=t.height,h=void 0===l?1:l;this.id=i||this.constructor.displayName||"viewport",this.x=o,this.y=s,this.width=c||1,this.height=h||1,this._frustumPlanes={},this._initViewMatrix(t),this._initProjectionMatrix(t),this._initPixelMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),this.projectFlat=this.projectFlat.bind(this),this.unprojectFlat=this.unprojectFlat.bind(this)}return b(e,[{key:"metersPerPixel",get:function(){return this.distanceScales.metersPerUnit[2]/this.scale}},{key:"projectionMode",get:function(){return this.isGeospatial?this.zoom<12?Uw.WEB_MERCATOR:Uw.WEB_MERCATOR_AUTO_OFFSET:Uw.IDENTITY}},{key:"equals",value:function(t){return t instanceof e&&(this===t||t.width===this.width&&t.height===this.height&&t.scale===this.scale&&qx(t.projectionMatrix,this.projectionMatrix)&&qx(t.viewMatrix,this.viewMatrix))}},{key:"project",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=UO(this.projectPosition(e),this.pixelProjectionMatrix),a=t(o,2),s=a[0],u=a[1],c=r?u:this.height-u;return 2===e.length?[s,c]:[s,c,o[2]]}},{key:"unproject",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=n.targetZ,a=t(e,3),s=a[0],u=a[1],c=a[2],l=HO([s,r?u:this.height-u,c],this.pixelUnprojectionMatrix,o&&o*this.distanceScales.unitsPerMeter[2]),h=this.unprojectPosition(l),d=t(h,3),f=d[0],p=d[1],v=d[2];return Number.isFinite(c)?[f,p,v]:Number.isFinite(o)?[f,p,o]:[f,p]}},{key:"projectPosition",value:function(e){var n=t(this.projectFlat(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.unitsPerMeter[2]]}},{key:"unprojectPosition",value:function(e){var n=t(this.unprojectFlat(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.metersPerUnit[2]]}},{key:"projectFlat",value:function(e){return this.isGeospatial?DO(e):e}},{key:"unprojectFlat",value:function(e){return this.isGeospatial?NO(e):e}},{key:"getBounds",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={targetZ:e.z||0},n=this.unproject([0,0],t),i=this.unproject([this.width,0],t),r=this.unproject([0,this.height],t),o=this.unproject([this.width,this.height],t);return[Math.min(n[0],i[0],r[0],o[0]),Math.min(n[1],i[1],r[1],o[1]),Math.max(n[0],i[0],r[0],o[0]),Math.max(n[1],i[1],r[1],o[1])]}},{key:"getDistanceScales",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return e?LO({longitude:e[0],latitude:e[1],highPrecision:!0}):this.distanceScales}},{key:"containsPixel",value:function(e){var t=e.x,n=e.y,i=e.width,r=void 0===i?1:i,o=e.height,a=void 0===o?1:o;return t0&&void 0!==arguments[0]?arguments[0]:{};m(this,i);var r=t.latitude,o=void 0===r?0:r,a=t.longitude,s=void 0===a?0:a,u=t.zoom,l=void 0===u?11:u,h=t.pitch,d=void 0===h?0:h,f=t.bearing,p=void 0===f?0:f,v=t.nearZMultiplier,g=void 0===v?.1:v,y=t.farZMultiplier,b=void 0===y?1.01:y,_=t.orthographic,w=void 0!==_&&_,k=t.repeat,x=void 0!==k&&k,S=t.worldOffset,E=void 0===S?0:S,C=t.width,O=t.height,T=t.altitude,A=void 0===T?1.5:T,P=Math.pow(2,l),R=BO({width:C=C||1,height:O=O||1,pitch:d,altitude:A=Math.max(.75,A),nearZMultiplier:g,farZMultiplier:b}),D=R.fov,N=R.aspect,L=R.focalDistance,j=R.near,F=R.far,B=FO({height:O,pitch:d,bearing:p,scale:P,altitude:A});return E&&(B=(new SO).translate([512*E,0,0]).multiplyLeft(B)),(e=n.call(this,I(M({},t),{width:C,height:O,viewMatrix:B,longitude:s,latitude:o,zoom:l,orthographic:w,fovyRadians:D,aspect:N,focalDistance:L,near:j,far:F}))).latitude=o,e.longitude=s,e.zoom=l,e.pitch=d,e.bearing=p,e.altitude=A,e.orthographic=w,e._subViewports=x?[]:null,Object.freeze(c(e)),e}return b(i,[{key:"subViewports",get:function(){if(this._subViewports&&!this._subViewports.length)for(var e=this.getBounds(),t=Math.floor((e[0]+180)/360),n=Math.ceil((e[2]-180)/360),r=t;r<=n;r++){var o=r?new i(I(M({},this),{worldOffset:r})):this;this._subViewports.push(o)}return this._subViewports}},{key:"addMetersToLngLat",value:function(e,t){return jO(e,t)}},{key:"panByPosition",value:function(e,n){var i=HO(n,this.pixelUnprojectionMatrix),r=mO([],this.projectFlat(e),yO([],i)),o=mO([],this.center,r),a=t(this.unprojectFlat(o),2);return{longitude:a[0],latitude:a[1]}}},{key:"getBounds",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=qO(this,e.z||0);return[Math.min(t[0][0],t[1][0],t[2][0],t[3][0]),Math.min(t[0][1],t[1][1],t[2][1],t[3][1]),Math.max(t[0][0],t[1][0],t[2][0],t[3][0]),Math.max(t[0][1],t[1][1],t[2][1],t[3][1])]}},{key:"fitBounds",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.width,r=this.height,o=GO(M({width:n,height:r,bounds:e},t)),a=o.longitude,s=o.latitude,u=o.zoom;return new i({width:n,height:r,longitude:a,latitude:s,zoom:u})}}]),i}(JO);return e.displayName="WebMercatorViewport",e}();function tT(e,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=n.projectPosition(e);if(i&&n instanceof eT){var o=t(e,3),a=o[0],s=o[1],u=o[2],c=void 0===u?0:u,l=n.getDistanceScales([a,s]);r[2]=c*l.unitsPerMeter[2]}return r}function nT(e,n){var i,r=n.viewport,o=n.modelMatrix,a=n.coordinateSystem,s=n.coordinateOrigin,u=n.offsetMode,c=t(e,3),l=c[0],h=c[1],d=c[2],f=void 0===d?0:d;switch(o&&(l=(i=t(uO([],[l,h,f,1],o),3))[0],h=i[1],f=i[2]),a){case zw.LNGLAT:return tT([l,h,f],r,u);case zw.LNGLAT_OFFSETS:return tT([l+s[0],h+s[1],f+(s[2]||0)],r,u);case zw.METER_OFFSETS:return tT(jO(s,[l,h,f]),r,u);case zw.CARTESIAN:default:return r.isGeospatial?[l+s[0],h+s[1],f+s[2]]:r.projectPosition([l,h,f])}}var iT={10241:9987,10240:9729,10242:33071,10243:33071},rT={},oT={boolean:{validate:function(e,t){return!0},equal:function(e,t,n){return Boolean(e)===Boolean(t)}},number:{validate:function(e,t){return Number.isFinite(e)&&(!("max"in t)||e<=t.max)&&(!("min"in t)||e>=t.min)}},color:{validate:function(e,t){return t.optional&&!e||cT(e)&&(3===e.length||4===e.length)},equal:function(e,t,n){return aT(e,t)}},accessor:{validate:function(e,t){var n=lT(e);return"function"===n||n===lT(t.value)},equal:function(e,t,n){return"function"==typeof t||aT(e,t)}},array:{validate:function(e,t){return t.optional&&!e||cT(e)},equal:function(e,t,n){return n.compare?aT(e,t):e===t}},function:{validate:function(e,t){return t.optional&&!e||"function"==typeof e},equal:function(e,t,n){return!n.compare||e===t}},data:{transform:function(e,t,n){var i=(n?n.props:{}).dataTransform;return i&&e?i(e):e}},image:{transform:function(e,t,n){return function(e,t){var n=e.context&&e.context.gl;if(!n||!t)return null;if(t instanceof gx)return t;t.constructor&&"Object"!==t.constructor.name&&(t={data:t});var i=null;t.compressed&&(i={10241:t.data.length>1?9985:9729});var r=new gx(n,I(M({},t),{parameters:M(M(M({},iT),i),e.props.textureParameters)}));return rT[r.id]=!0,r}(n,e)},release:function(e){!function(e){!e||!(e instanceof gx)||rT[e.id]&&(e.delete(),delete rT[e.id])}(e)}}};function aT(e,t){if(e===t)return!0;if(!cT(e)||!cT(t))return!1;var n=e.length;if(n!==t.length)return!1;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:null;m(this,e),this.component=t,this.asyncProps={},this.onAsyncPropUpdated=function(){},this.oldProps=ST,this.oldAsyncProps=null}return b(e,[{key:"finalize",value:function(){for(var e in this.asyncProps){var t=this.asyncProps[e];t.type&&t.type.release&&t.type.release(t.resolvedValue,t.type,this.component)}}},{key:"getOldProps",value:function(){return this.oldAsyncProps||this.oldProps}},{key:"resetOldProps",value:function(){this.oldAsyncProps=null,this.oldProps=this.component.props}},{key:"freezeAsyncOldProps",value:function(){if(!this.oldAsyncProps)for(var e in this.oldProps=this.oldProps||this.component.props,this.oldAsyncProps=Object.create(this.oldProps),this.asyncProps)Object.defineProperty(this.oldAsyncProps,e,{enumerable:!0,value:this.oldProps[e]})}},{key:"hasAsyncProp",value:function(e){return e in this.asyncProps}},{key:"getAsyncProp",value:function(e){var t=this.asyncProps[e];return t&&t.resolvedValue}},{key:"isAsyncPropLoading",value:function(e){if(e){var t=this.asyncProps[e];return Boolean(t&&t.pendingLoadCount>0&&t.pendingLoadCount!==t.resolvedLoadCount)}for(var n in this.asyncProps)if(this.isAsyncPropLoading(n))return!0;return!1}},{key:"reloadAsyncProp",value:function(e,t){this._watchPromise(e,Promise.resolve(t))}},{key:"setAsyncProps",value:function(e){var t=e[kT]||{},n=e[wT]||e,i=e[xT]||{};for(var r in t){var o=t[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,o),t[r]=this.getAsyncProp(r)}for(var a in n){var s=n[a];this._createAsyncPropData(a,i[a]),this._updateAsyncProp(a,s)}}},{key:"_updateAsyncProp",value:function(e,t){if(this._didAsyncInputValueChange(e,t)){if("string"==typeof t){var n,i=null===(n=this.layer)||void 0===n?void 0:n.props.fetch;i&&(t=i(t,{propName:e,layer:this.layer}))}if(t instanceof Promise)return void this._watchPromise(e,t);if(kS(t))return void this._resolveAsyncIterable(e,t);this._setPropValue(e,t)}}},{key:"_didAsyncInputValueChange",value:function(e,t){var n=this.asyncProps[e];return t!==n.resolvedValue&&t!==n.lastValue&&(n.lastValue=t,!0)}},{key:"_setPropValue",value:function(e,t){var n=this.asyncProps[e];t=this._postProcessValue(n,t),n.resolvedValue=t,n.pendingLoadCount++,n.resolvedLoadCount=n.pendingLoadCount}},{key:"_setAsyncPropValue",value:function(e,t,n){var i=this.asyncProps[e];i&&n>=i.resolvedLoadCount&&void 0!==t&&(this.freezeAsyncOldProps(),i.resolvedValue=t,i.resolvedLoadCount=n,this.onAsyncPropUpdated(e,t))}},{key:"_watchPromise",value:function(e,t){var n=this,i=this.asyncProps[e];i.pendingLoadCount++;var r=i.pendingLoadCount;t.then(function(t){var o;t=n._postProcessValue(i,t),n._setAsyncPropValue(e,t,r);var a=null===(o=n.layer)||void 0===o?void 0:o.props.onDataLoad;"data"===e&&a&&a(t,{propName:e,layer:n.layer})}).catch(function(t){var i;null===(i=n.layer)||void 0===i||i.raiseError(t,"loading ".concat(e," of ").concat(n.layer))})}},{key:"_resolveAsyncIterable",value:function(e,t){var n=this;return xx(regeneratorRuntime.mark(function i(){var r,o,a,s,u,c,l,h,d,f,p,v,g,m,y;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:"data"!==e&&n._setPropValue(e,t),(o=n.asyncProps[e]).pendingLoadCount++,a=o.pendingLoadCount,s=[],u=0,l=!0,h=!1,i.prev=6,p=_T(t);case 8:return i.next=10,p.next();case 10:return l=(d=i.sent).done,i.next=13,d.value;case 13:if(f=i.sent,l){i.next=20;break}v=f,g=n.component?n.component.props:{},m=g.dataTransform,s=m?m(v,s):s.concat(v),Object.defineProperty(s,"__diff",{enumerable:!1,value:[{startRow:u,endRow:s.length}]}),u=s.length,n._setAsyncPropValue(e,s,a);case 17:l=!0,i.next=8;break;case 20:i.next=25;break;case 22:i.prev=22,i.t0=i.catch(6),h=!0,c=i.t0;case 25:if(i.prev=25,i.prev=26,i.t1=!l&&null!=p.return,!i.t1){i.next=31;break}return i.next=31,p.return();case 31:if(i.prev=31,!h){i.next=34;break}throw c;case 34:return i.finish(31);case 35:return i.finish(25);case 36:(y=null===(r=n.layer)||void 0===r?void 0:r.props.onDataLoad)&&y(s,{propName:e,layer:n.layer});case 38:case"end":return i.stop()}},i,null,[[6,22,25,36],[26,,31,35]])}))()}},{key:"_postProcessValue",value:function(e,t){var n=e.type;return n&&(n.release&&n.release(e.resolvedValue,n,this.component),n.transform)?n.transform(t,n,this.component):t}},{key:"_createAsyncPropData",value:function(e,t){if(!this.asyncProps[e]){var n=this.component&&this.component.constructor._propTypes;this.asyncProps[e]={type:n&&n[e],lastValue:null,resolvedValue:t,pendingLoadCount:0,resolvedLoadCount:0}}}}]),e}(),CT=UC.ASYNC_ORIGINAL,OT=UC.ASYNC_RESOLVED,TT=UC.ASYNC_DEFAULTS,AT={},PT=0,MT=function(){var e=function(){function e(){m(this,e),this.props=vT.apply(this,arguments),this.id=this.props.id,this.count=PT++,this.lifecycle="Awaiting state",this.parent=null,this.context=null,this.state=null,this.internalState=null,Object.seal(this)}return b(e,[{key:"clone",value:function(e){var t=this.props,n={};for(var i in t[TT])i in t[OT]?n[i]=t[OT][i]:i in t[CT]&&(n[i]=t[CT][i]);return new this.constructor(M(M(M({},t),n),e))}},{key:"stats",get:function(){return this.internalState.stats}},{key:"_initState",value:function(){this.internalState=new ET({})}}]),e}();return e.componentName="Component",e.defaultProps=AT,e}(),IT=function(e){a(n,e);var t=s(n);function n(e){var i,r=e.attributeManager,o=e.layer;return m(this,n),(i=t.call(this,o)).attributeManager=r,i.model=null,i.needsRedraw=!0,i.subLayers=null,i.usesPickingColorCache=!1,i}return b(n,[{key:"layer",get:function(){return this.component},set:function(e){this.component=e}}]),n}(ET),RT=function(e){return"function"==typeof e},DT=function(e){return null!==e&&"object"==typeof e},NT=function(e){return DT(e)&&e.constructor==={}.constructor},LT=function(e){return e&&"function"==typeof e[Symbol.iterator]},jT=function(e){return e&&"function"==typeof e[Symbol.asyncIterator]},FT=function(e){return"undefined"!=typeof Response&&e instanceof Response||e&&e.arrayBuffer&&e.text&&e.json},BT=function(e){return"undefined"!=typeof Blob&&e instanceof Blob},VT=function(e){return function(e){return"undefined"!=typeof ReadableStream&&e instanceof ReadableStream||DT(e)&&RT(e.tee)&&RT(e.cancel)&&RT(e.getReader)}(e)||function(e){return DT(e)&&RT(e.read)&&RT(e.pipe)&&function(e){return"boolean"==typeof e}(e.readable)}(e)};function zT(e,t){if(!e)throw new Error(t||"loader assertion failed.")}function UT(e){var t;return!!e&&(Array.isArray(e)&&(e=e[0]),Array.isArray(null===(t=e)||void 0===t?void 0:t.extensions))}function HT(e){var t,n,i;return zT(e,"null loader"),zT(UT(e),"invalid loader"),Array.isArray(e)&&(i=e[1],e=I(M({},e=e[0]),{options:M(M({},e.options),i)})),(null!==(t=e)&&void 0!==t&&t.parseTextSync||null!==(n=e)&&void 0!==n&&n.parseText)&&(e.text=!0),e.text||(e.binary=!0),e}var GT={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},WT=GT.global||GT.self||GT.window||{},qT="object"!=typeof process||"[object process]"!==String(process)||process.browser,XT="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version);XT&&parseFloat(XT[1]);var KT={};function $T(e){for(var t in KT)e.startsWith(t)&&(e=e.replace(t,KT[t]));return!e.startsWith("http://")&&!e.startsWith("https://")&&(e="".concat(e)),e}var QT=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,ZT=/^([-\w.]+\/[-\w.+]+)/;function JT(e){var t=ZT.exec(e);return t?t[1]:e}function eA(e){var t=QT.exec(e);return t?t[1]:""}var tA=/\?.*/;function nA(e){if(FT(e)){var t=rA(e.url||"");return{url:t,type:JT(e.headers.get("content-type")||"")||eA(t)}}return BT(e)?{url:rA(e.name||""),type:e.type||""}:"string"==typeof e?{url:rA(e),type:eA(e)}:{url:"",type:""}}function iA(e){return FT(e)?e.headers["content-length"]||-1:BT(e)?e.size:"string"==typeof e?e.length:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?e.byteLength:-1}function rA(e){return e.replace(tA,"")}function oA(e){return aA.apply(this,arguments)}function aA(){return(aA=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!FT(t)){e.next=2;break}return e.abrupt("return",t);case 2:return n={},(i=iA(t))>=0&&(n["content-length"]=String(i)),r=nA(t),o=r.url,(a=r.type)&&(n["content-type"]=a),e.next=8,hA(t);case 8:return(s=e.sent)&&(n["x-first-bytes"]=s),"string"==typeof t&&(t=(new TextEncoder).encode(t)),u=new Response(t,{headers:n}),e.abrupt("return",(Object.defineProperty(u,"url",{value:o}),u));case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}function sA(e){return uA.apply(this,arguments)}function uA(){return(uA=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t.ok){e.next=5;break}return e.next=3,cA(t);case 3:throw n=e.sent,new Error(n);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function cA(e){return lA.apply(this,arguments)}function lA(){return(lA=xx(regeneratorRuntime.mark(function e(t){var n,i,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n="Failed to fetch resource ".concat(t.url," (").concat(t.status,"): "),e.prev=1,i=t.headers.get("Content-Type"),r=t.statusText,e.t0=i.includes("application/json"),!e.t0){e.next=12;break}return e.t1=r,e.t2=" ",e.next=10,t.text();case 10:e.t3=e.sent,r=e.t1+=e.t2.concat.call(e.t2,e.t3);case 12:n=(n+=r).length>60?"".concat(n.slice(60),"..."):n,e.next=18;break;case 16:e.prev=16,e.t4=e.catch(1);case 18:return e.abrupt("return",n);case 19:case"end":return e.stop()}},e,null,[[1,16]])}))).apply(this,arguments)}function hA(e){return dA.apply(this,arguments)}function dA(){return(dA=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t){e.next=2;break}return e.abrupt("return","data:,".concat(t.slice(0,5)));case 2:if(!(t instanceof Blob)){e.next=7;break}return n=t.slice(0,5),e.next=6,new Promise(function(e){var t=new FileReader;t.onload=function(t){var n;return e(null==t||null===(n=t.target)||void 0===n?void 0:n.result)},t.readAsDataURL(n)});case 6:return e.abrupt("return",e.sent);case 7:return e.abrupt("return",t instanceof ArrayBuffer?"data:base64,".concat(fA(t.slice(0,5))):null);case 8:case"end":return e.stop()}},e)}))).apply(this,arguments)}function fA(e){for(var t="",n=new Uint8Array(e),i=0;i1&&void 0!==arguments[1]?arguments[1]:"3.0.12";return TA(e,"no worker provided"),!(!t||!e.version)}var PA={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},MA=PA.global||PA.self||PA.window||{},IA="object"!=typeof process||"[object process]"!==String(process)||process.browser,RA="function"==typeof importScripts,DA="undefined"!=typeof window&&void 0!==window.orientation,NA="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),LA=(NA&&parseFloat(NA[1]),new Map);function jA(e){var t=new Blob([e],{type:"application/javascript"});return URL.createObjectURL(t)}function FA(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0,i=n||new Set;if(e)if(BA(e))i.add(e);else if(BA(e.buffer))i.add(e.buffer);else if(!ArrayBuffer.isView(e)&&t&&"object"==typeof e)for(var r in e)FA(e[r],t,i);return void 0===n?Array.from(i):[]}function BA(e){return!!e&&(e instanceof ArrayBuffer||"undefined"!=typeof MessagePort&&e instanceof MessagePort||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas)}var VA=function(){},zA=function(){function e(t){m(this,e),gA(this,"name",void 0),gA(this,"source",void 0),gA(this,"url",void 0),gA(this,"terminated",!1),gA(this,"worker",void 0),gA(this,"onMessage",void 0),gA(this,"onError",void 0),gA(this,"_loadableURL","");var n=t.name,i=t.source,r=t.url;TA(i||r),this.name=n,this.source=i,this.url=r,this.onMessage=VA,this.onError=function(e){return console.log(e)},this.worker=this._createBrowserWorker()}return b(e,[{key:"destroy",value:function(){this.onMessage=VA,this.onError=VA,this.worker.terminate(),this.terminated=!0}},{key:"isRunning",get:function(){return Boolean(this.onMessage)}},{key:"postMessage",value:function(e,t){t=t||FA(e),this.worker.postMessage(e,t)}},{key:"_getErrorFromErrorEvent",value:function(e){var t="Failed to load ";return t+="worker ".concat(this.name,". "),e.message&&(t+="".concat(e.message," in ")),e.lineno&&(t+=":".concat(e.lineno,":").concat(e.colno)),new Error(t)}},{key:"_createBrowserWorker",value:function(){var e=this;this._loadableURL=function(e){TA(e.source&&!e.url||!e.source&&e.url);var t=LA.get(e.source||e.url);return t||(e.url&&(t=function(e){return e.startsWith("http")?jA(function(e){return"try {\n importScripts('".concat(e,"');\n} catch (error) {\n console.error(error);\n throw error;\n}")}(e)):e}(e.url),LA.set(e.url,t)),e.source&&(t=jA(e.source),LA.set(e.source,t))),TA(t),t}({source:this.source,url:this.url});var t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=function(t){t.data?e.onMessage(t.data):e.onError(new Error("No data received"))},t.onerror=function(t){e.onError(e._getErrorFromErrorEvent(t)),e.terminated=!0},t.onmessageerror=function(e){return console.error(e)},t}}],[{key:"isSupported",value:function(){return"undefined"!=typeof Worker}}]),e}(),UA=function(){function e(t,n){var i=this;m(this,e),gA(this,"name",void 0),gA(this,"workerThread",void 0),gA(this,"isRunning",void 0),gA(this,"result",void 0),gA(this,"_resolve",void 0),gA(this,"_reject",void 0),this.name=t,this.workerThread=n,this.isRunning=!0,this._resolve=function(){},this._reject=function(){},this.result=new Promise(function(e,t){i._resolve=e,i._reject=t})}return b(e,[{key:"postMessage",value:function(e,t){this.workerThread.postMessage({source:"loaders.gl",type:e,payload:t})}},{key:"done",value:function(e){TA(this.isRunning),this.isRunning=!1,this._resolve(e)}},{key:"error",value:function(e){TA(this.isRunning),this.isRunning=!1,this._reject(e)}}]),e}(),HA=function(){function e(t){m(this,e),gA(this,"name","unnamed"),gA(this,"source",void 0),gA(this,"url",void 0),gA(this,"maxConcurrency",1),gA(this,"maxMobileConcurrency",1),gA(this,"onDebug",function(){}),gA(this,"reuseWorkers",!0),gA(this,"props",{}),gA(this,"jobQueue",[]),gA(this,"idleQueue",[]),gA(this,"count",0),gA(this,"isDestroyed",!1),this.source=t.source,this.url=t.url,this.setProps(t)}return b(e,[{key:"destroy",value:function(){this.idleQueue.forEach(function(e){return e.destroy()}),this.isDestroyed=!0}},{key:"setProps",value:function(e){this.props=M(M({},this.props),e),void 0!==e.name&&(this.name=e.name),void 0!==e.maxConcurrency&&(this.maxConcurrency=e.maxConcurrency),void 0!==e.maxMobileConcurrency&&(this.maxMobileConcurrency=e.maxMobileConcurrency),void 0!==e.reuseWorkers&&(this.reuseWorkers=e.reuseWorkers),void 0!==e.onDebug&&(this.onDebug=e.onDebug)}},{key:"startJob",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e,t,n){return e.done(n)},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(e,t){return e.error(t)},i=this;return xx(regeneratorRuntime.mark(function r(){var o;return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return o=new Promise(function(r){return i.jobQueue.push({name:e,onMessage:t,onError:n,onStart:r}),i}),i._startQueuedJob(),r.next=4,o;case 4:return r.abrupt("return",r.sent);case 5:case"end":return r.stop()}},r)}))()}},{key:"_startQueuedJob",value:function(){var e=this;return xx(regeneratorRuntime.mark(function t(){var n,i,r;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e.jobQueue.length){t.next=2;break}return t.abrupt("return");case 2:if(n=e._getAvailableWorker()){t.next=5;break}return t.abrupt("return");case 5:if(!(i=e.jobQueue.shift())){t.next=16;break}return e.onDebug({message:"Starting job",name:i.name,workerThread:n,backlog:e.jobQueue.length}),r=new UA(i.name,n),n.onMessage=function(e){return i.onMessage(r,e.type,e.payload)},n.onError=function(e){return i.onError(r,e)},i.onStart(r),t.prev=10,t.next=13,r.result;case 13:return t.prev=13,e.returnWorkerToQueue(n),t.finish(13);case 16:case"end":return t.stop()}},t,null,[[10,,13,16]])}))()}},{key:"returnWorkerToQueue",value:function(e){this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(e.destroy(),this.count--):this.idleQueue.push(e),this.isDestroyed||this._startQueuedJob()}},{key:"_getAvailableWorker",value:function(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count0&&void 0!==arguments[0]?arguments[0]:{};return e._workerFarm=e._workerFarm||new e({}),e._workerFarm.setProps(t),e._workerFarm}}]),e}();function qA(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="".concat(e.id,"-worker.js"),i=(t[e.id]||{}).workerUrl;if("test"===t._workerType&&(i="modules/".concat(e.module,"/dist/").concat(n)),!i){var r=e.version;"latest"===r&&(r="latest"),i="https://unpkg.com/@loaders.gl/".concat(e.module).concat(r?"@".concat(r):"","/dist/").concat(n)}return TA(i),i}function XA(e,t){return!!WA.isSupported()&&e.worker&&(null==t?void 0:t.worker)}function YA(e,t,n,i,r){return KA.apply(this,arguments)}function KA(){return(KA=xx(regeneratorRuntime.mark(function e(t,n,i,r,o){var a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return a=t.id,s=qA(t,i),u=WA.getWorkerFarm(i).getWorkerPool({name:a,url:s}),i=JSON.parse(JSON.stringify(i)),e.next=4,u.startJob("process-on-worker",$A.bind(null,o));case 4:return(c=e.sent).postMessage("process",{input:n,options:i}),e.next=8,c.result;case 8:return e.next=10,e.sent.result;case 10:return e.abrupt("return",e.sent);case 11:case"end":return e.stop()}},e)}))).apply(this,arguments)}function $A(e,t,n,i){return QA.apply(this,arguments)}function QA(){return(QA=xx(regeneratorRuntime.mark(function e(t,n,i,r){var o,a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=i,e.next="done"===e.t0?3:"error"===e.t0?5:"process"===e.t0?7:20;break;case 3:return n.done(r),e.abrupt("break",21);case 5:return n.error(r.error),e.abrupt("break",21);case 7:return o=r.id,a=r.input,s=r.options,e.prev=8,e.next=11,t(a,s);case 11:u=e.sent,n.postMessage("done",{id:o,result:u}),e.next=19;break;case 15:e.prev=15,e.t1=e.catch(8),c=e.t1 instanceof Error?e.t1.message:"unknown error",n.postMessage("error",{id:o,error:c});case 19:return e.abrupt("break",21);case 20:console.warn("parse-with-worker unknown message ".concat(i));case 21:case"end":return e.stop()}},e,null,[[8,15]])}))).apply(this,arguments)}gA(WA,"_workerFarm",void 0);var ZA=r(9521);function JA(e){if(function(e){return e&&"object"==typeof e&&e.isBuffer}(e)&&(e=function(e){return ZA.toArrayBuffer?ZA.toArrayBuffer(e):e}(e)),e instanceof ArrayBuffer)return e;if(ArrayBuffer.isView(e))return 0===e.byteOffset&&e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);if("string"==typeof e){var t=e;return(new TextEncoder).encode(t).buffer}if(e&&"object"==typeof e&&e._toArrayBuffer)return e._toArrayBuffer();throw new Error("toArrayBuffer")}function eP(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==c[1]?c[1]:{},i=n.chunkSize,r=void 0===i?rP:i,o=0;case 3:if(!(o2&&void 0!==arguments[2]?arguments[2]:null;if(n)return n;var i=M({fetch:SA(t,e)},e);return Array.isArray(i.loaders)||(i.loaders=null),i}function bP(e,t){if(!t&&e&&!Array.isArray(e))return e;var n;if(e&&(n=Array.isArray(e)?e:[e]),t&&t.loaders){var i=Array.isArray(t.loaders)?t.loaders:[t.loaders];n=n?[].concat(v(n),v(i)):i}return n&&n.length?n:null}var _P=function(){var e=wA();return e.loaderRegistry=e.loaderRegistry||[],e.loaderRegistry};function wP(e){var t,n=_P(),i=_(e=Array.isArray(e)?e:[e]);try{var r=function(){var e=HT(t.value);n.find(function(t){return e===t})||n.unshift(e)};for(i.s();!(t=i.n()).done;)r()}catch(o){i.e(o)}finally{i.f()}}var kP=/\.([^.]+)$/;function xP(e){return SP.apply(this,arguments)}function SP(){return(SP=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=a.length>1&&void 0!==a[1]?a[1]:[],i=a.length>2?a[2]:void 0,r=a.length>3?a[3]:void 0,CP(t)){e.next=5;break}return e.abrupt("return",null);case 5:if(!(o=EP(t,n,I(M({},i),{nothrow:!0}),r))){e.next=8;break}return e.abrupt("return",o);case 8:if(e.t0=BT(t),!e.t0){e.next=18;break}return e.t1=EP,e.next=13,t.slice(0,10).arrayBuffer();case 13:e.t2=t=e.sent,e.t3=n,e.t4=i,e.t5=r,o=(0,e.t1)(e.t2,e.t3,e.t4,e.t5);case 18:if(o||null!=i&&i.nothrow){e.next=20;break}throw new Error(OP(t));case 20:return e.abrupt("return",o);case 21:case"end":return e.stop()}},e)}))).apply(this,arguments)}function EP(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0;if(!CP(e))return null;if(n&&!Array.isArray(n))return HT(n);var o=[];n&&(o=o.concat(n)),null!=i&&i.ignoreRegisteredLoaders||(t=o).push.apply(t,v(_P())),function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){HT(t.value)}}catch(i){n.e(i)}finally{n.f()}}(o);var a=function(e,t,n,i){var r=nA(e),o=r.url,a=r.type,s=o||(null==i?void 0:i.url),u=null;return null!=n&&n.mimeType&&(u=TP(t,null==n?void 0:n.mimeType)),u=(u=(u=(u=u||function(e,t){var n=t&&kP.exec(t),i=n&&n[1];return i?function(e,t){t=t.toLowerCase();var n,i=_(e);try{for(i.s();!(n=i.n()).done;){var r,o=n.value,a=_(o.extensions);try{for(a.s();!(r=a.n()).done;){if(r.value.toLowerCase()===t)return o}}catch(s){a.e(s)}finally{a.f()}}}catch(s){i.e(s)}finally{i.f()}return null}(e,i):null}(t,s))||TP(t,a))||function(e,t){if(!t)return null;var n,i=_(e);try{for(i.s();!(n=i.n()).done;){var r=n.value;if("string"==typeof t){if(AP(t,r))return r}else if(ArrayBuffer.isView(t)){if(PP(t.buffer,t.byteOffset,r))return r}else if(t instanceof ArrayBuffer&&PP(t,0,r))return r}}catch(o){i.e(o)}finally{i.f()}return null}(t,e))||TP(t,null==n?void 0:n.fallbackMimeType)}(e,o,i,r);if(!(a||null!=i&&i.nothrow))throw new Error(OP(e));return a}function CP(e){return!(e instanceof Response&&204===e.status)}function OP(e){var t=nA(e),n=t.url,i=t.type,r="No valid loader found";return e&&(r+=' data: "'.concat(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5;return"string"==typeof e?e.slice(0,t):ArrayBuffer.isView(e)?MP(e.buffer,e.byteOffset,t):e instanceof ArrayBuffer?MP(e,0,t):""}(e),'", contentType: "').concat(i,'"')),n&&(r+=" url: ".concat(n)),r}function TP(e,t){var n,i=_(e);try{for(i.s();!(n=i.n()).done;){var r=n.value;if(r.mimeTypes&&r.mimeTypes.includes(t)||t==="application/x.".concat(r.id))return r}}catch(o){i.e(o)}finally{i.f()}return null}function AP(e,t){return t.testText?t.testText(e):(Array.isArray(t.tests)?t.tests:[t.tests]).some(function(t){return e.startsWith(t)})}function PP(e,t,n){return(Array.isArray(n.tests)?n.tests:[n.tests]).some(function(i){return function(e,t,n,i){if(i instanceof ArrayBuffer)return function(e,t,n){if(e.byteLength<(n=n||e.byteLength)||t.byteLength0&&void 0!==arguments[0])||arguments[0];this.internalState&&(this.internalState.needsRedraw=e)}},{key:"setNeedsUpdate",value:function(){this.context.layerManager.setNeedsUpdate(String(this)),this.internalState.needsUpdate=!0}},{key:"getNeedsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1};return this._getNeedsRedraw(e)}},{key:"needsUpdate",value:function(){return this.internalState.needsUpdate||this.hasUniformTransition()||this.shouldUpdateState(this._getUpdateParams())}},{key:"hasUniformTransition",value:function(){return this.internalState.uniformTransitions.active}},{key:"isLoaded",get:function(){return this.internalState&&!this.internalState.isAsyncPropLoading()}},{key:"wrapLongitude",get:function(){return this.props.wrapLongitude}},{key:"isPickable",value:function(){return this.props.pickable&&this.props.visible}},{key:"getModels",value:function(){return this.state&&(this.state.models||(this.state.model?[this.state.model]:[]))}},{key:"getAttributeManager",value:function(){return this.internalState&&this.internalState.attributeManager}},{key:"getCurrentLayer",value:function(){return this.internalState&&this.internalState.layer}},{key:"getLoadOptions",value:function(){return this.props.loadOptions}},{key:"project",value:function(e){var n=this.context.viewport,i=t(UO(nT(e,{viewport:n,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem}),n.pixelProjectionMatrix),3),r=i[0],o=i[1],a=i[2];return 2===e.length?[r,o]:[r,o,a]}},{key:"unproject",value:function(e){return this.context.viewport.unproject(e)}},{key:"projectPosition",value:function(e){return function(e,t){var n=function(e){var t=M({},e),n=e.coordinateSystem,i=e.coordinateOrigin,r=e.fromCoordinateSystem,o=e.fromCoordinateOrigin;return n===zw.DEFAULT&&(n=e.viewport.isGeospatial?zw.LNGLAT:zw.CARTESIAN),void 0===r&&(t.fromCoordinateSystem=n),void 0===o&&(t.fromCoordinateOrigin=i),t.coordinateSystem=n,t}(t),i=n.viewport,r=n.coordinateSystem,o=n.coordinateOrigin,a=n.modelMatrix,s=n.fromCoordinateSystem,u=n.fromCoordinateOrigin,c=vO(i,r,o),l=c.geospatialOrigin,h=c.shaderCoordinateOrigin,d=c.offsetMode,f=nT(e,{viewport:i,modelMatrix:a,coordinateSystem:s,coordinateOrigin:u,offsetMode:d});return d&&function(e,t,n){e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2]}(f,f,i.projectPosition(l||h)),f}(e,{viewport:this.context.viewport,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem})}},{key:"use64bitPositions",value:function(){var e=this.props.coordinateSystem;return e===zw.DEFAULT||e===zw.LNGLAT||e===zw.CARTESIAN}},{key:"onHover",value:function(e,t){return!!this.props.onHover&&this.props.onHover(e,t)}},{key:"onClick",value:function(e,t){return!!this.props.onClick&&this.props.onClick(e,t)}},{key:"nullPickingColor",value:function(){return[0,0,0]}},{key:"encodePickingColor",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return t[0]=e+1&255,t[1]=e+1>>8&255,t[2]=e+1>>8>>8&255,t}},{key:"decodePickingColor",value:function(e){yS(e instanceof Uint8Array);var n=t(e,3);return n[0]+256*n[1]+65536*n[2]-1}},{key:"initializeState",value:function(){throw new Error("Layer ".concat(this," has not defined initializeState"))}},{key:"getShaders",value:function(e){var t,n=_(this.props.extensions);try{for(n.s();!(t=n.n()).done;){var i=t.value;e=ZC(e,i.getShaders.call(this,i))}}catch(r){n.e(r)}finally{n.f()}return e}},{key:"shouldUpdateState",value:function(e){return e.changeFlags.propsOrDataChanged}},{key:"updateState",value:function(e){var t=e.oldProps,n=e.props,i=e.changeFlags,r=this.getAttributeManager();if(i.dataChanged&&r){var o=i.dataChanged;if(Array.isArray(o)){var a,s=_(o);try{for(s.s();!(a=s.n()).done;){var u=a.value;r.invalidateAll(u)}}catch(p){s.e(p)}finally{s.f()}}else r.invalidateAll()}var c=n.highlightedObjectIndex>=0||n.pickable;if((t.highlightedObjectIndex>=0||t.pickable)!==c&&r){var l=r.attributes,h=l.pickingColors,d=l.instancePickingColors,f=h||d;f&&(c&&f.constant&&(f.constant=!1,r.invalidate(f.id)),!f.value&&!c&&(f.constant=!0,f.value=[0,0,0]))}}},{key:"finalizeState",value:function(){var e,t=_(this.getModels());try{for(t.s();!(e=t.n()).done;){e.value.delete()}}catch(i){t.e(i)}finally{t.f()}var n=this.getAttributeManager();n&&n.finalize(),this.context.resourceManager.unsubscribe({consumerId:this.id}),this.internalState.uniformTransitions.clear(),this.internalState.finalize()}},{key:"draw",value:function(e){var t,n=_(this.getModels());try{for(n.s();!(t=n.n()).done;){t.value.draw(e)}}catch(i){n.e(i)}finally{n.f()}}},{key:"getPickingInfo",value:function(e){var t=e.info,n=t.index;return n>=0&&Array.isArray(this.props.data)&&(t.object=this.props.data[n]),t}},{key:"activateViewport",value:function(e){var t=this.internalState.viewport;this.internalState.viewport=e,(!t||!VP({oldViewport:t,viewport:e}))&&(this.setChangeFlags({viewportChanged:!0}),this.isComposite?this.needsUpdate()&&this.setNeedsUpdate():this._update())}},{key:"invalidateAttribute",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"all",t=this.getAttributeManager();!t||("all"===e?t.invalidateAll():t.invalidate(e))}},{key:"updateAttributes",value:function(e){var t,n=_(this.getModels());try{for(n.s();!(t=n.n()).done;){var i=t.value;this._setModelAttributes(i,e)}}catch(r){n.e(r)}finally{n.f()}}},{key:"_updateAttributes",value:function(e){var t=this.getAttributeManager();if(t){var n=this.getNumInstances(e),i=this.getStartIndices(e);t.update({data:e.data,numInstances:n,startIndices:i,props:e,transitions:e.transitions,buffers:e.data.attributes,context:this,ignoreUnknownAttributes:!0});var r=t.getChangedAttributes({clearChangedFlags:!0});this.updateAttributes(r)}}},{key:"_updateAttributeTransition",value:function(){var e=this.getAttributeManager();e&&e.updateTransition()}},{key:"_updateUniformTransition",value:function(){var e=this.internalState.uniformTransitions;if(e.active){var t=e.update(),n=Object.create(this.props);for(var i in t)Object.defineProperty(n,i,{value:t[i]});return n}return this.props}},{key:"calculateInstancePickingColors",value:function(e,t){var n=t.numInstances;if(!e.constant){var i=Math.floor(zP.length/3);if(this.internalState.usesPickingColorCache=!0,iFP&&Vw.warn("Layer has too many data objects. Picking might not be able to distinguish all objects.")(),zP=jx.allocate(zP,n,{size:3,copy:!0,maxCount:Math.max(n,FP)});for(var r=Math.floor(zP.length/3),o=[],a=i;a=0?this.encodePickingColor(o):null),this.setModuleParameters(s)}}},{key:"_getUpdateParams",value:function(){return{props:this.props,oldProps:this.internalState.getOldProps(),context:this.context,changeFlags:this.internalState.changeFlags}}},{key:"_getNeedsRedraw",value:function(e){if(!this.internalState)return!1;var t=!1;t=t||this.internalState.needsRedraw&&this.id,this.internalState.needsRedraw=this.internalState.needsRedraw&&!e.clearRedrawFlags;var n=this.getAttributeManager(),i=n&&n.getNeedsRedraw(e);return t=t||i}},{key:"_getAttributeManager",value:function(){return new jC(this.context.gl,{id:this.props.id,stats:this.context.stats,timeline:this.context.timeline})}},{key:"_initState",value:function(){yS(!this.internalState&&!this.state),yS(isFinite(this.props.coordinateSystem));var e=this._getAttributeManager();e&&e.addInstanced({instancePickingColors:{type:5121,size:3,noAlloc:!0,update:this.calculateInstancePickingColors}}),this.internalState=new IT({attributeManager:e,layer:this}),this.clearChangeFlags(),this.state={},Object.defineProperty(this.state,"attributeManager",{get:function(){return Vw.deprecated("layer.state.attributeManager","layer.getAttributeManager()"),e}}),this.internalState.layer=this,this.internalState.uniformTransitions=new zC(this.context.timeline),this.internalState.onAsyncPropUpdated=this._onAsyncPropUpdated.bind(this),this.internalState.setAsyncProps(this.props)}},{key:"_transferState",value:function(e){FS("layer.matched",this,this===e);var t=e.state,n=e.internalState;this!==e&&(this.internalState=n,this.internalState.layer=this,this.state=t,this.internalState.setAsyncProps(this.props),this.diffProps(this.props,this.internalState.getOldProps()))}},{key:"_onAsyncPropUpdated",value:function(){this.diffProps(this.props,this.internalState.getOldProps()),this.setNeedsUpdate()}}]),i}(MT);return e.layerName="Layer",e.defaultProps=UP,e}(),GP=function(){var t=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"isComposite",get:function(){return!0}},{key:"isLoaded",get:function(){return e(p(i.prototype),"isLoaded",this)&&this.getSubLayers().every(function(e){return e.isLoaded})}},{key:"getSubLayers",value:function(){return this.internalState&&this.internalState.subLayers||[]}},{key:"initializeState",value:function(){}},{key:"setState",value:function(t){e(p(i.prototype),"setState",this).call(this,t),this.setNeedsUpdate()}},{key:"getPickingInfo",value:function(e){var t=e.info,n=t.object;return n&&n.__source&&n.__source.parent&&n.__source.parent.id===this.id&&(t.object=n.__source.object,t.index=n.__source.index),t}},{key:"renderLayers",value:function(){return null}},{key:"filterSubLayer",value:function(e){return!0}},{key:"shouldRenderSubLayer",value:function(e,t){return t&&t.length}},{key:"getSubLayerClass",value:function(e,t){var n=this.props._subLayerProps;return n&&n[e]&&n[e].type||t}},{key:"getSubLayerRow",value:function(e,t,n){return e.__source={parent:this,object:t,index:n},e}},{key:"getSubLayerAccessor",value:function(e){if("function"==typeof e){var t={data:this.props.data,target:[]};return function(n,i){return n&&n.__source?(t.index=n.__source.index,e(n.__source.object,t)):e(n,i)}}return e}},{key:"getSubLayerProps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.props,n=t.opacity,i=t.pickable,r=t.visible,o=t.parameters,a=t.getPolygonOffset,s=t.highlightedObjectIndex,u=t.autoHighlight,c=t.highlightColor,l=t.coordinateSystem,h=t.coordinateOrigin,d=t.wrapLongitude,f=t.positionFormat,p=t.modelMatrix,v=t.extensions,g=t.fetch,m=t._subLayerProps,y={opacity:n,pickable:i,visible:r,parameters:o,getPolygonOffset:a,highlightedObjectIndex:s,autoHighlight:u,highlightColor:c,coordinateSystem:l,coordinateOrigin:h,wrapLongitude:d,positionFormat:f,modelMatrix:p,extensions:v,fetch:g},b=m&&m[e.id],w=b&&b.updateTriggers,k=e.id||"sublayer";if(b){var x=this.constructor._propTypes,S=e.type?e.type._propTypes:{};for(var E in b){var C=S[E]||x[E];C&&"accessor"===C.type&&(b[E]=this.getSubLayerAccessor(b[E]))}}Object.assign(y,e,b),y.id="".concat(this.props.id,"-").concat(k),y.updateTriggers=M(M({all:this.props.updateTriggers.all},e.updateTriggers),w);var O,T=_(v);try{for(T.s();!(O=T.n()).done;){var A=O.value,P=A.getSubLayerProps.call(this,A);P&&Object.assign(y,P,{updateTriggers:Object.assign(y.updateTriggers,P.updateTriggers)})}}catch(I){T.e(I)}finally{T.f()}return y}},{key:"_updateAutoHighlight",value:function(e){var t,n=_(this.getSubLayers());try{for(n.s();!(t=n.n()).done;){t.value.updateAutoHighlight(e)}}catch(i){n.e(i)}finally{n.f()}}},{key:"_getAttributeManager",value:function(){return null}},{key:"_renderLayers",value:function(){var e=this.internalState.subLayers,t=!e||this.needsUpdate();t&&(e=xS(e=this.renderLayers(),Boolean),this.internalState.subLayers=e),FS("compositeLayer.renderLayers",this,t,e);var n,i=_(e);try{for(i.s();!(n=i.n()).done;){n.value.parent=this}}catch(r){i.e(r)}finally{i.f()}}}]),i}(HP);return t.layerName="CompositeLayer",t}(),WP=/([0-9]+\.?[0-9]*)(%|px)/;function qP(e){switch(typeof e){case"number":return{position:e,relative:!1};case"string":var t=e.match(WP);if(t&&t.length>=3){var n="%"===t[2],i=parseFloat(t[1]);return{position:n?i/100:i,relative:n}}default:throw new Error("Could not parse position string ".concat(e))}}function XP(e,t){return e.relative?Math.round(e.position*t):e.position}function YP(e,t){if(e===t)return!0;if(!e||!t)return!1;for(var n in e){var i=e[n],r=t[n];if(!(i===r||Array.isArray(i)&&Array.isArray(r)&&YP(i,r)))return!1}return!0}var KP=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?null:n,r=t.x,o=void 0===r?0:r,a=t.y,s=void 0===a?0:a,u=t.width,c=void 0===u?"100%":u,l=t.height,h=void 0===l?"100%":l,d=t.projectionMatrix,f=void 0===d?null:d,p=t.fovy,v=void 0===p?50:p,g=t.near,y=void 0===g?.1:g,b=t.far,_=void 0===b?1e3:b,w=t.modelMatrix,k=void 0===w?null:w,x=t.viewportInstance,S=void 0===x?null:x,E=t.type,C=void 0===E?JO:E;yS(!S||S instanceof JO),this.viewportInstance=S,this.id=i||this.constructor.displayName||"view",this.type=C,this.props=I(M({},t),{id:this.id,projectionMatrix:f,fovy:v,near:y,far:_,modelMatrix:k}),this._parseDimensions({x:o,y:s,width:c,height:h}),this.equals=this.equals.bind(this),Object.seal(this)}return b(e,[{key:"equals",value:function(e){return this===e||(this.viewportInstance?e.viewportInstance&&this.viewportInstance.equals(e.viewportInstance):YP(this.props,e.props))}},{key:"makeViewport",value:function(e){var t=e.width,n=e.height,i=e.viewState;if(this.viewportInstance)return this.viewportInstance;i=this.filterViewState(i);var r=this.getDimensions({width:t,height:n});return this._getViewport(i,r)}},{key:"getViewStateId",value:function(){switch(typeof this.props.viewState){case"string":return this.props.viewState;case"object":return this.props.viewState&&this.props.viewState.id;default:return this.id}}},{key:"filterViewState",value:function(e){if(this.props.viewState&&"object"==typeof this.props.viewState){if(!this.props.viewState.id)return this.props.viewState;var t=M({},e);for(var n in this.props.viewState)"id"!==n&&(t[n]=this.props.viewState[n]);return t}return e}},{key:"getDimensions",value:function(e){var t=e.width,n=e.height;return{x:XP(this._x,t),y:XP(this._y,n),width:XP(this._width,t),height:XP(this._height,n)}}},{key:"_getControllerProps",value:function(e){var t=this.props.controller;return t?!0===t?e:("function"==typeof t&&(t={type:t}),M(M({},e),t)):null}},{key:"_getViewport",value:function(e,t){return new(0,this.type)(M(M(M({},e),this.props),t))}},{key:"_parseDimensions",value:function(e){var t=e.x,n=e.y,i=e.width,r=e.height;this._x=qP(t),this._y=qP(n),this._width=qP(i),this._height=qP(r)}}]),e}(),$P=function(){},QP={transitionEasing:function(e){return e},transitionInterruption:1,onTransitionStart:$P,onTransitionInterrupt:$P,onTransitionEnd:$P},ZP=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.ControllerState=t,this.props=M(M({},QP),n),this.propsInTransition=null,this.transition=new RC(n.timeline),this.onViewStateChange=n.onViewStateChange||$P,this.onStateChange=n.onStateChange||$P,this._onTransitionUpdate=this._onTransitionUpdate.bind(this)}return b(e,[{key:"finalize",value:function(){this.transition.cancel()}},{key:"getViewportInTransition",value:function(){return this.propsInTransition}},{key:"processViewStateChange",value:function(e){var t=!1,n=this.props;if(e=M(M({},QP),e),this.props=e,this._shouldIgnoreViewportChange(n,e))return t;if(this._isTransitionEnabled(e)){var i=this.transition.settings,r=i.interruption,o=i.endProps,a=M(M({},n),2===r?o:this.propsInTransition||n);this._triggerTransition(a,e),t=!0}else this.transition.cancel();return t}},{key:"updateTransition",value:function(){this.transition.update()}},{key:"_isTransitionEnabled",value:function(e){var t=e.transitionDuration,n=e.transitionInterpolator;return(t>0||"auto"===t)&&Boolean(n)}},{key:"_isUpdateDueToCurrentTransition",value:function(e){return!!this.transition.inProgress&&this.transition.settings.interpolator.arePropsEqual(e,this.propsInTransition)}},{key:"_shouldIgnoreViewportChange",value:function(e,t){return this.transition.inProgress?3===this.transition.settings.interruption||this._isUpdateDueToCurrentTransition(t):!this._isTransitionEnabled(t)||t.transitionInterpolator.arePropsEqual(e,t)}},{key:"_triggerTransition",value:function(e,t){var n=new this.ControllerState(e),i=new this.ControllerState(t).shortestPathFrom(n),r=t.transitionInterpolator,o=r.getDuration?r.getDuration(e,t):t.transitionDuration;if(0!==o){var a=t.transitionInterpolator.initializeProps(e,i);this.propsInTransition={},this.duration=o,this.transition.start({duration:o,easing:t.transitionEasing,interpolator:t.transitionInterpolator,interruption:t.transitionInterruption,startProps:a.start,endProps:a.end,onStart:t.onTransitionStart,onUpdate:this._onTransitionUpdate,onInterrupt:this._onTransitionEnd(t.onTransitionInterrupt),onEnd:this._onTransitionEnd(t.onTransitionEnd)}),this.onStateChange({inTransition:!0}),this.updateTransition()}}},{key:"_onTransitionEnd",value:function(e){var t=this;return function(n){t.propsInTransition=null,t.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1}),e(n)}}},{key:"_onTransitionUpdate",value:function(e){var t=e.time,n=e.settings,i=n.interpolator,r=n.startProps,o=n.endProps,a=n.duration,s=(0,n.easing)(t/a),u=i.interpolateProps(r,o,s);this.propsInTransition=new this.ControllerState(M(M({},this.props),u)).getViewportProps(),this.onViewStateChange({viewState:this.propsInTransition,oldViewState:this.props})}}]),e}(),JP=["longitude","latitude","zoom","bearing","pitch"],eM=["longitude","latitude","zoom"],tM=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m(this,i),(e=n.call(this,(Array.isArray(t)?t:t.transitionProps)||{compare:JP,extract:JP,required:eM})).opts=t,e}return b(i,[{key:"initializeProps",value:function(t,n){var r=e(p(i.prototype),"initializeProps",this).call(this,t,n),o=this.opts,a=o.makeViewport,s=o.around;if(a&&s){var u=a(t),c=a(n),l=u.unproject(s);r.start.around=s,Object.assign(r.end,{around:c.project(l),aroundPosition:l,width:n.width,height:n.height})}return r}},{key:"interpolateProps",value:function(e,t,n){var i,r={},o=_(this._propsToExtract);try{for(o.s();!(i=o.n()).done;){var a=i.value;r[a]=Wx(e[a]||0,t[a]||0,n)}}catch(u){o.e(u)}finally{o.f()}if(t.aroundPosition){var s=this.opts.makeViewport(M(M({},t),r));Object.assign(r,s.panByPosition(t.aroundPosition,Wx(e.around,t.around,n)))}return r}}]),i}(function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),Array.isArray(t)&&(t={compare:t,extract:t,required:t});var n=t,i=n.compare,r=n.extract,o=n.required;this._propsToCompare=i,this._propsToExtract=r,this._requiredProps=o}return b(e,[{key:"arePropsEqual",value:function(e,t){var n,i=_(this._propsToCompare||Object.keys(t));try{for(i.s();!(n=i.n()).done;){var r=n.value;if(!(r in e)||!(r in t)||!qx(e[r],t[r]))return!1}}catch(o){i.e(o)}finally{i.f()}return!0}},{key:"initializeProps",value:function(e,t){var n;if(this._propsToExtract){var i,r={},o={},a=_(this._propsToExtract);try{for(a.s();!(i=a.n()).done;){var s=i.value;r[s]=e[s],o[s]=t[s]}}catch(u){a.e(u)}finally{a.f()}n={start:r,end:o}}else n={start:e,end:t};return this._checkRequiredProps(n.start),this._checkRequiredProps(n.end),n}},{key:"interpolateProps",value:function(e,t,n){return t}},{key:"getDuration",value:function(e,t){return t.transitionDuration}},{key:"_checkRequiredProps",value:function(e){!this._requiredProps||this._requiredProps.forEach(function(t){var n=e[t];yS(Number.isFinite(n)||Array.isArray(n),"".concat(t," is required for transition"))})}}]),e}()),nM={transitionDuration:0},iM={transitionDuration:300,transitionEasing:function(e){return e},transitionInterruption:1},rM=function(e){return 1-(1-e)*(1-e)},oM=["wheel"],aM=["panstart","panmove","panend"],sM=["pinchstart","pinchmove","pinchend"],uM=["tripanstart","tripanmove","tripanend"],cM=["doubletap"],lM=["keydown"],hM=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.ControllerState=t,this.controllerState=null,this.controllerStateProps=null,this.eventManager=null,this.transitionManager=new ZP(t,I(M({},n),{onViewStateChange:this._onTransition.bind(this),onStateChange:this._setInteractionState.bind(this)}));var i=this.linearTransitionProps;this._transition=i&&I(M({},iM),{transitionInterpolator:new tM({transitionProps:i})}),this._events=null,this._interactionState={isDragging:!1},this._customEvents=[],this.onViewStateChange=null,this.onStateChange=null,this.handleEvent=this.handleEvent.bind(this),this.setProps(n)}return b(e,[{key:"linearTransitionProps",get:function(){return null}},{key:"events",set:function(e){this.toggleEvents(this._customEvents,!1),this.toggleEvents(e,!0),this._customEvents=e,this.setProps(this.controllerStateProps)}},{key:"finalize",value:function(){for(var e in this._events)this._events[e]&&this.eventManager.off(e,this.handleEvent);this.transitionManager.finalize()}},{key:"handleEvent",value:function(e){var t=this.ControllerState;this.controllerState=new t(M(M({makeViewport:this.makeViewport},this.controllerStateProps),this._state));var n=this._eventStartBlocked;switch(e.type){case"panstart":return!n&&this._onPanStart(e);case"panmove":return this._onPan(e);case"panend":return this._onPanEnd(e);case"pinchstart":return!n&&this._onPinchStart(e);case"pinchmove":return this._onPinch(e);case"pinchend":return this._onPinchEnd(e);case"tripanstart":return!n&&this._onTriplePanStart(e);case"tripanmove":return this._onTriplePan(e);case"tripanend":return this._onTriplePanEnd(e);case"doubletap":return this._onDoubleTap(e);case"wheel":return this._onWheel(e);case"keydown":return this._onKeyDown(e);default:return!1}}},{key:"getCenter",value:function(e){var t=this.controllerStateProps,n=t.x,i=t.y,r=e.offsetCenter;return[r.x-n,r.y-i]}},{key:"isPointInBounds",value:function(e,t){var n=this.controllerStateProps,i=n.width,r=n.height;if(t&&t.handled)return!1;var o=e[0]>=0&&e[0]<=i&&e[1]>=0&&e[1]<=r;return o&&t&&t.stopPropagation(),o}},{key:"isFunctionKeyPressed",value:function(e){var t=e.srcEvent;return Boolean(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}},{key:"isDragging",value:function(){return this._interactionState.isDragging}},{key:"blockEvents",value:function(e){var t=this,n=setTimeout(function(){t._eventStartBlocked===n&&(t._eventStartBlocked=null)},e);this._eventStartBlocked=n}},{key:"setProps",value:function(e){"onViewStateChange"in e&&(this.onViewStateChange=e.onViewStateChange),"onStateChange"in e&&(this.onStateChange=e.onStateChange),"makeViewport"in e&&(this.makeViewport=e.makeViewport),"dragMode"in e&&(this.dragMode=e.dragMode),this.controllerStateProps=e,"eventManager"in e&&this.eventManager!==e.eventManager&&(this.eventManager=e.eventManager,this._events={},this.toggleEvents(this._customEvents,!0)),"transitionInterpolator"in e||(e.transitionInterpolator=this._getTransitionProps().transitionInterpolator),this.transitionManager.processViewStateChange(e);var t=e.inertia;!0===t&&(t=300),this.inertia=t;var n=e.scrollZoom,i=void 0===n||n,r=e.dragPan,o=void 0===r||r,a=e.dragRotate,s=void 0===a||a,u=e.doubleClickZoom,c=void 0===u||u,l=e.touchZoom,h=void 0===l||l,d=e.touchRotate,f=void 0!==d&&d,p=e.keyboard,v=void 0===p||p,g=Boolean(this.onViewStateChange);this.toggleEvents(oM,g&&i),this.toggleEvents(aM,g&&(o||s)),this.toggleEvents(sM,g&&(h||f)),this.toggleEvents(uM,g&&f),this.toggleEvents(cM,g&&c),this.toggleEvents(lM,g&&v),this.scrollZoom=i,this.dragPan=o,this.dragRotate=s,this.doubleClickZoom=c,this.touchZoom=h,this.touchRotate=f,this.keyboard=v}},{key:"updateTransition",value:function(){this.transitionManager.updateTransition()}},{key:"toggleEvents",value:function(e,t){var n=this;this.eventManager&&e.forEach(function(e){n._events[e]!==t&&(n._events[e]=t,t?n.eventManager.on(e,n.handleEvent):n.eventManager.off(e,n.handleEvent))})}},{key:"updateViewport",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=M(M({},e.getViewportProps()),t),r=this.controllerState!==e;if(this._state=e.getState(),this._setInteractionState(n),r){var o=this.controllerState?this.controllerState.getViewportProps():null;this.onViewStateChange&&this.onViewStateChange({viewState:i,interactionState:this._interactionState,oldViewState:o})}}},{key:"_onTransition",value:function(e){this.onViewStateChange&&(e.interactionState=this._interactionState,this.onViewStateChange(e))}},{key:"_setInteractionState",value:function(e){Object.assign(this._interactionState,e),this.onStateChange&&this.onStateChange(this._interactionState)}},{key:"_onPanStart",value:function(e){var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.isFunctionKeyPressed(e)||e.rightButton;(this.invertPan||"pan"===this.dragMode)&&(n=!n);var i=this.controllerState[n?"panStart":"rotateStart"]({pos:t});return this._panMove=n,this.updateViewport(i,nM,{isDragging:!0}),!0}},{key:"_onPan",value:function(e){return!!this.isDragging()&&(this._panMove?this._onPanMove(e):this._onPanRotate(e))}},{key:"_onPanEnd",value:function(e){return!!this.isDragging()&&(this._panMove?this._onPanMoveEnd(e):this._onPanRotateEnd(e))}},{key:"_onPanMove",value:function(e){if(!this.dragPan)return!1;var t=this.getCenter(e),n=this.controllerState.pan({pos:t});return this.updateViewport(n,nM,{isDragging:!0,isPanning:!0}),!0}},{key:"_onPanMoveEnd",value:function(e){var t=this.inertia;if(this.dragPan&&t&&e.velocity){var n=this.getCenter(e),i=this.controllerState.pan({pos:[n[0]+e.velocityX*t/2,n[1]+e.velocityY*t/2]}).panEnd();this.updateViewport(i,I(M({},this._getTransitionProps()),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isPanning:!0})}else{var r=this.controllerState.panEnd();this.updateViewport(r,null,{isDragging:!1,isPanning:!1})}return!0}},{key:"_onPanRotate",value:function(e){if(!this.dragRotate)return!1;var t=this.getCenter(e),n=this.controllerState.rotate({pos:t});return this.updateViewport(n,nM,{isDragging:!0,isRotating:!0}),!0}},{key:"_onPanRotateEnd",value:function(e){var t=this.inertia;if(this.dragRotate&&t&&e.velocity){var n=this.getCenter(e),i=this.controllerState.rotate({pos:[n[0]+e.velocityX*t/2,n[1]+e.velocityY*t/2]}).rotateEnd();this.updateViewport(i,I(M({},this._getTransitionProps()),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isRotating:!0})}else{var r=this.controllerState.rotateEnd();this.updateViewport(r,null,{isDragging:!1,isRotating:!1})}return!0}},{key:"_onWheel",value:function(e){if(!this.scrollZoom)return!1;e.preventDefault();var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.scrollZoom,i=n.speed,r=void 0===i?.01:i,o=n.smooth,a=void 0!==o&&o,s=e.delta,u=2/(1+Math.exp(-Math.abs(s*r)));s<0&&0!==u&&(u=1/u);var c=this.controllerState.zoom({pos:t,scale:u});return this.updateViewport(c,I(M({},this._getTransitionProps({around:t})),{transitionDuration:a?250:1}),{isZooming:!0,isPanning:!0}),!0}},{key:"_onTriplePanStart",value:function(e){var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.controllerState.rotateStart({pos:t});return this.updateViewport(n,nM,{isDragging:!0}),!0}},{key:"_onTriplePan",value:function(e){if(!this.touchRotate||!this.isDragging())return!1;var t=this.getCenter(e);t[0]-=e.deltaX;var n=this.controllerState.rotate({pos:t});return this.updateViewport(n,nM,{isDragging:!0,isRotating:!0}),!0}},{key:"_onTriplePanEnd",value:function(e){if(!this.isDragging())return!1;var t=this.inertia;if(this.touchRotate&&t&&e.velocityY){var n=this.getCenter(e),i=[n[0],n[1]+=e.velocityY*t/2],r=this.controllerState.rotate({pos:i});this.updateViewport(r,I(M({},this._getTransitionProps()),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isRotating:!0}),this.blockEvents(t)}else{var o=this.controllerState.rotateEnd();this.updateViewport(o,null,{isDragging:!1,isRotating:!1})}return!0}},{key:"_onPinchStart",value:function(e){var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.controllerState.zoomStart({pos:t}).rotateStart({pos:t});return this._startPinchRotation=e.rotation,this._lastPinchEvent=e,this.updateViewport(n,nM,{isDragging:!0}),!0}},{key:"_onPinch",value:function(e){if(!this.touchZoom&&!this.touchRotate||!this.isDragging())return!1;var t=this.controllerState;if(this.touchZoom){var n=e.scale,i=this.getCenter(e);t=t.zoom({pos:i,scale:n})}if(this.touchRotate){var r=e.rotation;t=t.rotate({deltaAngleX:this._startPinchRotation-r})}return this.updateViewport(t,nM,{isDragging:!0,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:this.touchRotate}),this._lastPinchEvent=e,!0}},{key:"_onPinchEnd",value:function(e){if(!this.isDragging())return!1;var t=this.inertia,n=this._lastPinchEvent;if(this.touchZoom&&t&&n&&e.scale!==n.scale){var i=this.getCenter(e),r=this.controllerState.rotateEnd(),o=Math.log2(e.scale),a=(o-Math.log2(n.scale))/(e.deltaTime-n.deltaTime),s=Math.pow(2,o+a*t/2);r=r.zoom({pos:i,scale:s}).zoomEnd(),this.updateViewport(r,I(M({},this._getTransitionProps({around:i})),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:!1}),this.blockEvents(t)}else{var u=this.controllerState.zoomEnd().rotateEnd();this.updateViewport(u,null,{isDragging:!1,isPanning:!1,isZooming:!1,isRotating:!1})}return this._startPinchRotation=null,this._lastPinchEvent=null,!0}},{key:"_onDoubleTap",value:function(e){if(!this.doubleClickZoom)return!1;var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.isFunctionKeyPressed(e),i=this.controllerState.zoom({pos:t,scale:n?.5:2});return this.updateViewport(i,this._getTransitionProps({around:t}),{isZooming:!0,isPanning:!0}),this.blockEvents(100),!0}},{key:"_onKeyDown",value:function(e){if(!this.keyboard)return!1;var t,n=this.isFunctionKeyPressed(e),i=this.keyboard,r=i.zoomSpeed,o=i.moveSpeed,a=i.rotateSpeedX,s=i.rotateSpeedY,u=this.controllerState,c={};switch(e.srcEvent.code){case"Minus":t=n?u.zoomOut(r).zoomOut(r):u.zoomOut(r),c.isZooming=!0;break;case"Equal":t=n?u.zoomIn(r).zoomIn(r):u.zoomIn(r),c.isZooming=!0;break;case"ArrowLeft":n?(t=u.rotateLeft(a),c.isRotating=!0):(t=u.moveLeft(o),c.isPanning=!0);break;case"ArrowRight":n?(t=u.rotateRight(a),c.isRotating=!0):(t=u.moveRight(o),c.isPanning=!0);break;case"ArrowUp":n?(t=u.rotateUp(s),c.isRotating=!0):(t=u.moveUp(o),c.isPanning=!0);break;case"ArrowDown":n?(t=u.rotateDown(s),c.isRotating=!0):(t=u.moveDown(o),c.isPanning=!0);break;default:return!1}return this.updateViewport(t,this._getTransitionProps(),c),!0}},{key:"_getTransitionProps",value:function(e){var t=this._transition;return t?e?I(M({},t),{transitionInterpolator:new tM(I(M({},e),{transitionProps:this.linearTransitionProps,makeViewport:this.controllerState.makeViewport}))}):t:nM}}]),e}(),dM=function(){function e(t){m(this,e),this._viewportProps=this._applyConstraints(t)}return b(e,[{key:"getViewportProps",value:function(){return this._viewportProps}},{key:"getState",value:function(){return this._state}},{key:"shortestPathFrom",value:function(e){return this._viewportProps}},{key:"_applyConstraints",value:function(e){return e}}]),e}(),fM=[0,0,0],pM=function(e){a(n,e);var t=s(n);function n(e){var i,r=e.makeViewport,o=e.width,a=e.height,s=e.rotationX,u=void 0===s?0:s,c=e.rotationOrbit,l=void 0===c?0:c,h=e.target,d=void 0===h?fM:h,f=e.zoom,p=void 0===f?0:f,v=e.minRotationX,g=void 0===v?-90:v,y=e.maxRotationX,b=void 0===y?90:y,_=e.minZoom,w=void 0===_?-1/0:_,k=e.maxZoom,x=void 0===k?1/0:k,S=e.startPanPosition,E=e.startRotatePos,C=e.startRotationX,O=e.startRotationOrbit,T=e.startZoomPosition,A=e.startZoom;return m(this,n),(i=t.call(this,{width:o,height:a,rotationX:u,rotationOrbit:l,target:d,zoom:p,minRotationX:g,maxRotationX:b,minZoom:w,maxZoom:x}))._state={startPanPosition:S,startRotatePos:E,startRotationX:C,startRotationOrbit:O,startZoomPosition:T,startZoom:A},i.makeViewport=r,i}return b(n,[{key:"panStart",value:function(e){var t=e.pos;return this._getUpdatedState({startPanPosition:this._unproject(t)})}},{key:"pan",value:function(e){var t=e.pos,n=e.startPosition,i=this._state.startPanPosition||n;if(!i)return this;var r=this.makeViewport(this._viewportProps).panByPosition(i,t);return this._getUpdatedState(r)}},{key:"panEnd",value:function(){return this._getUpdatedState({startPanPosition:null})}},{key:"rotateStart",value:function(e){var t=e.pos;return this._getUpdatedState({startRotatePos:t,startRotationX:this._viewportProps.rotationX,startRotationOrbit:this._viewportProps.rotationOrbit})}},{key:"rotate",value:function(e){var t,n=e.pos,i=e.deltaAngleX,r=void 0===i?0:i,o=e.deltaAngleY,a=void 0===o?0:o,s=this._state,u=s.startRotatePos,c=s.startRotationX,l=s.startRotationOrbit,h=this._viewportProps,d=h.width,f=h.height;if(!u||!Number.isFinite(c)||!Number.isFinite(l))return this;if(n){var p=(n[0]-u[0])/d;(c<-90||c>90)&&(p*=-1),t={rotationX:c+(n[1]-u[1])/f*180,rotationOrbit:l+180*p}}else t={rotationX:c+a,rotationOrbit:l+r};return this._getUpdatedState(t)}},{key:"rotateEnd",value:function(){return this._getUpdatedState({startRotationX:null,startRotationOrbit:null})}},{key:"shortestPathFrom",value:function(e){var t=e.getViewportProps(),n=M({},this._viewportProps),i=n.rotationOrbit;return Math.abs(i-t.rotationOrbit)>180&&(n.rotationOrbit=i<0?i+360:i-360),n}},{key:"zoomStart",value:function(e){var t=e.pos;return this._getUpdatedState({startZoomPosition:this._unproject(t),startZoom:this._viewportProps.zoom})}},{key:"zoom",value:function(e){var t=e.pos,n=e.startPos,i=e.scale,r=this._viewportProps.zoom,o=this._state,a=o.startZoom,s=o.startZoomPosition;Number.isFinite(a)||(a=r,s=this._unproject(n)||this._unproject(t));var u=this._calculateNewZoom({scale:i,startZoom:a}),c=this.makeViewport(I(M({},this._viewportProps),{zoom:u}));return this._getUpdatedState(M({zoom:u},c.panByPosition(s,t)))}},{key:"zoomEnd",value:function(){return this._getUpdatedState({startZoomPosition:null,startZoom:null})}},{key:"zoomIn",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._getUpdatedState({zoom:this._calculateNewZoom({scale:e})})}},{key:"zoomOut",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._getUpdatedState({zoom:this._calculateNewZoom({scale:1/e})})}},{key:"moveLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([-e,0])}},{key:"moveRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([e,0])}},{key:"moveUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([0,-e])}},{key:"moveDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([0,e])}},{key:"rotateLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit-e})}},{key:"rotateRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit+e})}},{key:"rotateUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({rotationX:this._viewportProps.rotationX-e})}},{key:"rotateDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({rotationX:this._viewportProps.rotationX+e})}},{key:"_unproject",value:function(e){var t=this.makeViewport(this._viewportProps);return e&&t.unproject(e)}},{key:"_calculateNewZoom",value:function(e){var t=e.scale,n=e.startZoom,i=this._viewportProps,r=i.maxZoom,o=i.minZoom;return Number.isFinite(n)||(n=this._viewportProps.zoom),Gx(n+Math.log2(t),o,r)}},{key:"_panFromCenter",value:function(e){var t=this._viewportProps,n=t.width,i=t.height,r=t.target;return this.pan({startPosition:r,pos:[n/2+e[0],i/2+e[1]]})}},{key:"_getUpdatedState",value:function(e){return new n(M(M(M({},this._viewportProps),this._state),e))}},{key:"_applyConstraints",value:function(e){var t=e.maxZoom,n=e.minZoom,i=e.zoom,r=e.maxRotationX,o=e.minRotationX,a=e.rotationOrbit;return e.zoom=Gx(i,n,t),e.rotationX=Gx(e.rotationX,o,r),(a<-180||a>180)&&(e.rotationOrbit=function(e,t){var n=e%360;return n<0?360+n:n}(a+180)-180),e}}]),n}(dM),vM=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,pM,e)}return b(n,[{key:"linearTransitionProps",get:function(){return["target","zoom","rotationX","rotationOrbit"]}}]),n}(hM),gM=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),e.dragMode=e.dragMode||"pan",t.call(this,pM,e)}return b(n,[{key:"_onPanRotate",value:function(e){return!1}},{key:"linearTransitionProps",get:function(){return["target","zoom"]}}]),n}(hM),mM=(new SO).lookAt({eye:[0,0,1]});function yM(e){var t=e.width,n=e.height,i=e.near,r=e.far;return t=t||1,n=n||1,(new SO).ortho({left:-t/2,right:t/2,bottom:-n/2,top:n/2,near:i,far:r})}var bM=function(e){a(n,e);var t=s(n);function n(e){m(this,n);var i=e.width,r=e.height,o=e.near,a=void 0===o?.1:o,s=e.far,u=void 0===s?1e3:s,c=e.zoom,l=void 0===c?0:c,h=e.target,d=void 0===h?[0,0,0]:h,f=e.flipY,p=void 0===f||f,v=Math.pow(2,l);return t.call(this,I(M({},e),{longitude:null,position:d,viewMatrix:mM.clone().scale([v,v*(p?-1:1),v]),projectionMatrix:yM({width:i,height:r,near:a,far:u}),zoom:l}))}return b(n,[{key:"panByPosition",value:function(e,t){var n=mO([],e,yO([],HO(t,this.pixelUnprojectionMatrix)));return{target:mO([],this.center,n)}}}]),n}(JO),_M=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,I(M({},e),{type:bM}))}return b(n,[{key:"controller",get:function(){return this._getControllerProps({type:gM})}}]),n}(KP);return e.displayName="OrthographicView",e}(),wM=Math.PI/180;function kM(e){var t=e.height,n=e.fovy,i=e.orbitAxis,r=e.rotationX,o=e.rotationOrbit,a=e.zoom,s=.5/Math.tan(n*wM/2),u="Z"===i?[0,0,1]:[0,1,0],c="Z"===i?[0,-s,0]:[0,0,s],l=(new SO).lookAt({eye:c,up:u});l.rotateX(r*wM),"Z"===i?l.rotateZ(o*wM):l.rotateY(o*wM);var h=Math.pow(2,a)/(t||1);return l.scale(h),l}var xM=function(e){a(i,e);var n=s(i);function i(e){var t;m(this,i);var r=e.height,o=e.fovy,a=e.orbitAxis,s=e.target,u=void 0===s?[0,0,0]:s,c=e.rotationX,l=void 0===c?0:c,h=e.rotationOrbit,d=void 0===h?0:h,f=e.zoom,p=void 0===f?0:f;return(t=n.call(this,I(M({},e),{longitude:null,viewMatrix:kM({height:r,fovy:o,orbitAxis:a,rotationX:l,rotationOrbit:d,zoom:p}),fovy:o,position:u,zoom:p}))).projectedCenter=t.project(t.center),t}return b(i,[{key:"unproject",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=t(e,3),a=o[0],s=o[1],u=o[2],c=void 0===u?this.projectedCenter[2]:u,l=r?s:this.height-s,h=HO([a,l,c],this.pixelUnprojectionMatrix),d=t(h,3),f=d[0],p=d[1],v=d[2];return[f,p,v]}},{key:"panByPosition",value:function(e,t){var n=this.project(e);return{target:this.unproject([this.width/2+n[0]-t[0],this.height/2+n[1]-t[1],this.projectedCenter[2]])}}}]),i}(JO),SM=function(){var e=function(e){a(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,n);var i=e.orbitAxis,r=void 0===i?"Z":i;return t.call(this,I(M({},e),{orbitAxis:r,type:xM}))}return b(n,[{key:"controller",get:function(){return this._getControllerProps({type:vM})}}]),n}(KP);return e.displayName="OrbitView",e}(),EM=[255,255,255],CM=0,OM=function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.color,i=void 0===n?EM:n,r=t.intensity,o=void 0===r?1:r;this.id=t.id||"ambient-".concat(CM++),this.color=i,this.intensity=o,this.type="ambient"},TM=[255,255,255],AM=[0,0,-1],PM=0,MM=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.color,i=void 0===n?TM:n,r=t.intensity,o=void 0===r?1:r,a=t.direction,s=void 0===a?AM:a,u=t._shadow,c=void 0!==u&&u;this.id=t.id||"directional-".concat(PM++),this.color=i,this.intensity=o,this.type="directional",this.direction=new hS(s).normalize().toArray(),this.shadow=c}return b(e,[{key:"getProjectedLight",value:function(){return this}}]),e}(),IM=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?"effect":n;this.id=i,this.props=M({},t)}return b(e,[{key:"preRender",value:function(){}},{key:"getModuleParameters",value:function(){}},{key:"cleanup",value:function(){}}]),e}(),RM=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"render",value:function(e){return Ck(this.gl,{framebuffer:e.target}),this._drawLayers(e)}},{key:"_drawLayers",value:function(e){var t=e.viewports,n=e.views,i=e.onViewportActive,r=e.clearCanvas,o=void 0===r||r;e.pass=e.pass||"unknown";var a=this.gl;o&&function(e){Ck(e,{viewport:[0,0,e.drawingBufferWidth,e.drawingBufferHeight]}),e.clear(16640)}(a);var s,u=[],c=_(t);try{for(c.s();!(s=c.n()).done;){var l=s.value,h=l.viewport||l,d=n&&n[h.id];i(h);var f=this._getDrawLayerParams(h,e);e.view=d;var p,v=_(h.subViewports||[h]);try{for(v.s();!(p=v.n()).done;){var g=p.value;e.viewport=g;var m=this._drawLayersInViewport(a,e,f);u.push(m)}}catch(y){v.e(y)}finally{v.f()}}}catch(y){c.e(y)}finally{c.f()}return u}},{key:"_getDrawLayerParams",value:function(e,t){for(var n=t.layers,i=t.pass,r=t.layerFilter,o=t.effects,a=t.moduleParameters,s=[],u=DM(),c={viewport:e,isPicking:i.startsWith("picking"),renderPass:i},l=0;l1&&void 0!==arguments[1]?arguments[1]:{};m(this,e);var i=n.id,r=void 0===i?"pass":i;this.id=r,this.gl=t,this.props=M({},n)}return b(e,[{key:"setProps",value:function(e){Object.assign(this.props,e)}},{key:"render",value:function(){}},{key:"cleanup",value:function(){}}]),e}());function DM(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={},i=function i(r,o){var a,s=r.props._offset,u=r.id,c=r.parent&&r.parent.id;if(c&&!(c in t)&&i(r.parent,!1),c in n){var l=n[c]=n[c]||DM(t[c],t);a=l(r,o),n[u]=l}else Number.isFinite(s)?(a=s+(t[c]||0),n[u]=null):a=e;return o&&a>=e&&(e=a+1),t[u]=a,a};return i}var NM=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this,e,t)).shadowMap=new gx(e,{width:1,height:1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),r.depthBuffer=new bx(e,{format:33189,width:1,height:1}),r.fbo=new Mx(e,{id:"shadowmap",width:1,height:1,attachments:{36064:r.shadowMap,36096:r.depthBuffer}}),r}return b(i,[{key:"render",value:function(t){var n=this,r=this.fbo;Ok(this.gl,{depthRange:[0,1],depthTest:!0,blend:!1,clearColor:[1,1,1,1]},function(){var o=t.viewports[0],a=Tk(n.gl),s=o.width*a,u=o.height*a;(s!==r.width||u!==r.height)&&r.resize({width:s,height:u}),e(p(i.prototype),"render",n).call(n,I(M({},t),{target:r,pass:"shadow"}))})}},{key:"shouldDrawLayer",value:function(e){return!1!==e.props.shadowEnabled}},{key:"getModuleParameters",value:function(){return{drawToShadowMap:!0}}},{key:"delete",value:function(){this.fbo&&(this.fbo.delete(),this.fbo=null),this.shadowMap&&(this.shadowMap.delete(),this.shadowMap=null),this.depthBuffer&&(this.depthBuffer.delete(),this.depthBuffer=null)}}]),i}(RM),LM=Object.keys(zw).map(function(e){return"const int COORDINATE_SYSTEM_".concat(e," = ").concat(zw[e],";")}).join(""),jM=Object.keys(Uw).map(function(e){return"const int PROJECTION_MODE_".concat(e," = ").concat(Uw[e],";")}).join(""),FM="".concat(LM,"\n").concat(jM,"\n\nuniform int project_uCoordinateSystem;\nuniform int project_uProjectionMode;\nuniform float project_uScale;\nuniform bool project_uWrapLongitude;\nuniform vec3 project_uCommonUnitsPerMeter;\nuniform vec3 project_uCommonUnitsPerWorldUnit;\nuniform vec3 project_uCommonUnitsPerWorldUnit2;\nuniform vec4 project_uCenter;\nuniform mat4 project_uModelMatrix;\nuniform mat4 project_uViewProjectionMatrix;\nuniform vec2 project_uViewportSize;\nuniform float project_uDevicePixelRatio;\nuniform float project_uFocalDistance;\nuniform vec3 project_uCameraPosition;\nuniform vec3 project_uCoordinateOrigin;\nuniform vec3 project_uCommonOrigin;\n\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / (PI * 2.0);\nconst vec3 ZERO_64_LOW = vec3(0.0);\nconst float EARTH_RADIUS = 6370972.0;\nconst float GLOBE_RADIUS = 256.0;\nfloat project_size(float meters) {\n return meters * project_uCommonUnitsPerMeter.z;\n}\n\nvec2 project_size(vec2 meters) {\n return meters * project_uCommonUnitsPerMeter.xy;\n}\n\nvec3 project_size(vec3 meters) {\n return meters * project_uCommonUnitsPerMeter;\n}\n\nvec4 project_size(vec4 meters) {\n return vec4(meters.xyz * project_uCommonUnitsPerMeter, meters.w);\n}\nvec3 project_normal(vec3 vector) {\n vec4 normal_modelspace = project_uModelMatrix * vec4(vector, 0.0);\n return normalize(normal_modelspace.xyz * project_uCommonUnitsPerMeter);\n}\n\nvec4 project_offset_(vec4 offset) {\n float dy = offset.y;\n vec3 commonUnitsPerWorldUnit = project_uCommonUnitsPerWorldUnit + project_uCommonUnitsPerWorldUnit2 * dy;\n return vec4(offset.xyz * commonUnitsPerWorldUnit, offset.w);\n}\nvec2 project_mercator_(vec2 lnglat) {\n float x = lnglat.x;\n if (project_uWrapLongitude) {\n x = mod(x + 180., 360.0) - 180.;\n }\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan_fp32(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\nvec3 project_globe_(vec3 lnglatz) {\n float lambda = radians(lnglatz.x);\n float phi = radians(lnglatz.y);\n float cosPhi = cos(phi);\n float D = (lnglatz.z / EARTH_RADIUS + 1.0) * GLOBE_RADIUS;\n\n return vec3(\n sin(lambda) * cosPhi,\n -cos(lambda) * cosPhi,\n sin(phi)\n ) * D;\n}\nvec4 project_position(vec4 position, vec3 position64Low) {\n vec4 position_world = project_uModelMatrix * position;\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_mercator_(position_world.xy),\n project_size(position_world.z),\n position_world.w\n );\n }\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN) {\n position_world.xyz += project_uCoordinateOrigin;\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_globe_(position_world.xyz),\n position_world.w\n );\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n if (abs(position_world.y - project_uCoordinateOrigin.y) > 0.25) {\n return vec4(\n project_mercator_(position_world.xy) - project_uCommonOrigin.xy,\n project_size(position_world.z),\n position_world.w\n );\n }\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_IDENTITY ||\n (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET &&\n (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT ||\n project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN))) {\n position_world.xyz -= project_uCoordinateOrigin;\n }\n return project_offset_(position_world + project_uModelMatrix * vec4(position64Low, 0.0));\n}\n\nvec4 project_position(vec4 position) {\n return project_position(position, ZERO_64_LOW);\n}\n\nvec3 project_position(vec3 position, vec3 position64Low) {\n vec4 projected_position = project_position(vec4(position, 1.0), position64Low);\n return projected_position.xyz;\n}\n\nvec3 project_position(vec3 position) {\n vec4 projected_position = project_position(vec4(position, 1.0), ZERO_64_LOW);\n return projected_position.xyz;\n}\n\nvec2 project_position(vec2 position) {\n vec4 projected_position = project_position(vec4(position, 0.0, 1.0), ZERO_64_LOW);\n return projected_position.xy;\n}\n\nvec4 project_common_position_to_clipspace(vec4 position, mat4 viewProjectionMatrix, vec4 center) {\n return viewProjectionMatrix * position + center;\n}\nvec4 project_common_position_to_clipspace(vec4 position) {\n return project_common_position_to_clipspace(position, project_uViewProjectionMatrix, project_uCenter);\n}\nvec2 project_pixel_size_to_clipspace(vec2 pixels) {\n vec2 offset = pixels / project_uViewportSize * project_uDevicePixelRatio * 2.0;\n return offset * project_uFocalDistance;\n}\n\nfloat project_size_to_pixel(float meters) {\n return project_size(meters) * project_uScale;\n}\nfloat project_pixel_size(float pixels) {\n return pixels / project_uScale;\n}\nvec2 project_pixel_size(vec2 pixels) {\n return pixels / project_uScale;\n}\nmat3 project_get_orientation_matrix(vec3 up) {\n vec3 uz = normalize(up);\n vec3 ux = abs(uz.z) == 1.0 ? vec3(1.0, 0.0, 0.0) : normalize(vec3(uz.y, -uz.x, 0));\n vec3 uy = cross(uz, ux);\n return mat3(ux, uy, uz);\n}\n\nbool project_needs_rotation(vec3 commonPosition, out mat3 transform) {\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n transform = project_get_orientation_matrix(commonPosition);\n return true;\n }\n return false;\n}\n"),BM={},VM={name:"project",dependencies:[{name:"fp32",vs:"#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\nconst float TWO_PI = 6.2831854820251465;\nconst float PI_2 = 1.5707963705062866;\nconst float PI_16 = 0.1963495463132858;\n\nconst float SIN_TABLE_0 = 0.19509032368659973;\nconst float SIN_TABLE_1 = 0.3826834261417389;\nconst float SIN_TABLE_2 = 0.5555702447891235;\nconst float SIN_TABLE_3 = 0.7071067690849304;\n\nconst float COS_TABLE_0 = 0.9807852506637573;\nconst float COS_TABLE_1 = 0.9238795042037964;\nconst float COS_TABLE_2 = 0.8314695954322815;\nconst float COS_TABLE_3 = 0.7071067690849304;\n\nconst float INVERSE_FACTORIAL_3 = 1.666666716337204e-01;\nconst float INVERSE_FACTORIAL_5 = 8.333333767950535e-03;\nconst float INVERSE_FACTORIAL_7 = 1.9841270113829523e-04;\nconst float INVERSE_FACTORIAL_9 = 2.75573188446287533e-06;\n\nfloat sin_taylor_fp32(float a) {\n float r, s, t, x;\n\n if (a == 0.0) {\n return 0.0;\n }\n\n x = -a * a;\n s = a;\n r = a;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_3;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_5;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_7;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_9;\n s = s + t;\n\n return s;\n}\n\nvoid sincos_taylor_fp32(float a, out float sin_t, out float cos_t) {\n if (a == 0.0) {\n sin_t = 0.0;\n cos_t = 1.0;\n }\n sin_t = sin_taylor_fp32(a);\n cos_t = sqrt(1.0 - sin_t * sin_t);\n}\n\nfloat tan_taylor_fp32(float a) {\n float sin_a;\n float cos_a;\n\n if (a == 0.0) {\n return 0.0;\n }\n float z = floor(a / TWO_PI);\n float r = a - TWO_PI * z;\n\n float t;\n float q = floor(r / PI_2 + 0.5);\n int j = int(q);\n\n if (j < -2 || j > 2) {\n return 1.0 / 0.0;\n }\n\n t = r - PI_2 * q;\n\n q = floor(t / PI_16 + 0.5);\n int k = int(q);\n int abs_k = int(abs(float(k)));\n\n if (abs_k > 4) {\n return 1.0 / 0.0;\n } else {\n t = t - PI_16 * q;\n }\n\n float u = 0.0;\n float v = 0.0;\n\n float sin_t, cos_t;\n float s, c;\n sincos_taylor_fp32(t, sin_t, cos_t);\n\n if (k == 0) {\n s = sin_t;\n c = cos_t;\n } else {\n if (abs(float(abs_k) - 1.0) < 0.5) {\n u = COS_TABLE_0;\n v = SIN_TABLE_0;\n } else if (abs(float(abs_k) - 2.0) < 0.5) {\n u = COS_TABLE_1;\n v = SIN_TABLE_1;\n } else if (abs(float(abs_k) - 3.0) < 0.5) {\n u = COS_TABLE_2;\n v = SIN_TABLE_2;\n } else if (abs(float(abs_k) - 4.0) < 0.5) {\n u = COS_TABLE_3;\n v = SIN_TABLE_3;\n }\n if (k > 0) {\n s = u * sin_t + v * cos_t;\n c = u * cos_t - v * sin_t;\n } else {\n s = u * sin_t - v * cos_t;\n c = u * cos_t + v * sin_t;\n }\n }\n\n if (j == 0) {\n sin_a = s;\n cos_a = c;\n } else if (j == 1) {\n sin_a = c;\n cos_a = -s;\n } else if (j == -1) {\n sin_a = -c;\n cos_a = s;\n } else {\n sin_a = -s;\n cos_a = -c;\n }\n return sin_a / cos_a;\n}\n#endif\n\nfloat tan_fp32(float a) {\n#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\n return tan_taylor_fp32(a);\n#else\n return tan(a);\n#endif\n}\n",fs:null}],vs:FM,getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:BM;return e.viewport?function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.viewport,n=e.devicePixelRatio,i=void 0===n?1:n,r=e.modelMatrix,o=void 0===r?null:r,a=e.coordinateSystem,s=void 0===a?zw.DEFAULT:a,u=e.coordinateOrigin,c=e.autoWrapLongitude,l=void 0!==c&&c;s===zw.DEFAULT&&(s=t.isGeospatial?zw.LNGLAT:zw.CARTESIAN);var h=pO({viewport:t,devicePixelRatio:i,coordinateSystem:s,coordinateOrigin:u});return h.project_uWrapLongitude=l,h.project_uModelMatrix=o||hO,h}(e):{}}},zM=QC(function(e){var t=e.viewport,n=e.center;return new SO(t.viewProjectionMatrix).invert().transform(n)}),UM=QC(function(e){var n,i=e.viewport,r=e.shadowMatrices,o=[],a=i.pixelUnprojectionMatrix,s=i.isGeospatial?void 0:1,u=[[0,0,s],[i.width,0,s],[0,i.height,s],[i.width,i.height,s],[0,0,-1],[i.width,0,-1],[0,i.height,-1],[i.width,i.height,-1]].map(function(e){return function(e,n){var i=t(e,3),r=i[0],o=i[1],a=i[2],s=HO([r,o,a],n);return Number.isFinite(a)?s:[s[0],s[1],0]}(e,a)}),c=_(r);try{var l=function(){var e=n.value,t=e.clone().translate(new hS(i.center).negate()),r=u.map(function(e){return t.transform(e)}),a=(new SO).ortho({left:Math.min.apply(Math,v(r.map(function(e){return e[0]}))),right:Math.max.apply(Math,v(r.map(function(e){return e[0]}))),bottom:Math.min.apply(Math,v(r.map(function(e){return e[1]}))),top:Math.max.apply(Math,v(r.map(function(e){return e[1]}))),near:Math.min.apply(Math,v(r.map(function(e){return-e[2]}))),far:Math.max.apply(Math,v(r.map(function(e){return-e[2]})))});o.push(a.multiplyRight(e))};for(c.s();!(n=c.n()).done;)l()}catch(h){c.e(h)}finally{c.f()}return o}),HM=[0,0,0,1],GM=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],WM={name:"shadow",dependencies:[VM],vs:"\nconst int max_lights = 2;\nuniform mat4 shadow_uViewProjectionMatrices[max_lights];\nuniform vec4 shadow_uProjectCenters[max_lights];\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform int shadow_uLightId;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nvec4 shadow_setVertexPosition(vec4 position_commonspace) {\n if (shadow_uDrawShadowMap) {\n return project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[shadow_uLightId], shadow_uProjectCenters[shadow_uLightId]);\n }\n if (shadow_uUseShadowMap) {\n for (int i = 0; i < max_lights; i++) {\n if(i < int(shadow_uLightCount)) {\n vec4 shadowMap_position = project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[i], shadow_uProjectCenters[i]);\n shadow_vPosition[i] = (shadowMap_position.xyz / shadowMap_position.w + 1.0) / 2.0;\n }\n }\n }\n return gl_Position;\n}\n",fs:"\nconst int max_lights = 2;\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform sampler2D shadow_uShadowMap0;\nuniform sampler2D shadow_uShadowMap1;\nuniform vec4 shadow_uColor;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nconst vec4 bitPackShift = vec4(1.0, 255.0, 65025.0, 16581375.0);\nconst vec4 bitUnpackShift = 1.0 / bitPackShift;\nconst vec4 bitMask = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n\nfloat shadow_getShadowWeight(vec3 position, sampler2D shadowMap) {\n vec4 rgbaDepth = texture2D(shadowMap, position.xy);\n\n float z = dot(rgbaDepth, bitUnpackShift);\n return smoothstep(0.001, 0.01, position.z - z);\n}\n\nvec4 shadow_filterShadowColor(vec4 color) {\n if (shadow_uDrawShadowMap) {\n vec4 rgbaDepth = fract(gl_FragCoord.z * bitPackShift);\n rgbaDepth -= rgbaDepth.gbaa * bitMask;\n return rgbaDepth;\n }\n if (shadow_uUseShadowMap) {\n float shadowAlpha = 0.0;\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[0], shadow_uShadowMap0);\n if(shadow_uLightCount > 1.0) {\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[1], shadow_uShadowMap1);\n }\n shadowAlpha *= shadow_uColor.a / shadow_uLightCount;\n float blendedAlpha = shadowAlpha + color.a * (1.0 - shadowAlpha);\n\n return vec4(\n mix(color.rgb, shadow_uColor.rgb, shadowAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n return color;\n}\n",inject:{"vs:DECKGL_FILTER_GL_POSITION":"\n position = shadow_setVertexPosition(geometry.position);\n ","fs:DECKGL_FILTER_COLOR":"\n color = shadow_filterShadowColor(color);\n "},getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e.drawToShadowMap||e.shadowMaps&&e.shadowMaps.length>0){var n=e.shadowEnabled,i=void 0===n||n;return i&&e.shadowMatrices&&e.shadowMatrices.length>0?function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={shadow_uDrawShadowMap:Boolean(e.drawToShadowMap),shadow_uUseShadowMap:!!e.shadowMaps&&e.shadowMaps.length>0,shadow_uColor:e.shadowColor||HM,shadow_uLightId:e.shadowLightId||0,shadow_uLightCount:e.shadowMatrices.length},i=zM({viewport:e.viewport,center:t.project_uCenter}),r=[],o=UM({shadowMatrices:e.shadowMatrices,viewport:e.viewport}).slice(),a=0;a0?e.shadowMaps[c]:e.dummyShadowMap;return n}(e,t):{shadow_uDrawShadowMap:!1,shadow_uUseShadowMap:!1}}return{}}},qM={color:[255,255,255],intensity:1},XM=[{color:[255,255,255],intensity:1,direction:[-1,3,-1]},{color:[255,255,255],intensity:.9,direction:[1,-8,-2.5]}],YM=[0,0,0,200/255],KM=function(e){a(n,e);var t=s(n);function n(e){var i;for(var r in m(this,n),(i=t.call(this,e)).ambientLight=null,i.directionalLights=[],i.pointLights=[],i.shadowColor=YM,i.shadowPasses=[],i.shadowMaps=[],i.dummyShadowMap=null,i.shadow=!1,i.programManager=null,e){var o=e[r];switch(o.type){case"ambient":i.ambientLight=o;break;case"directional":i.directionalLights.push(o);break;case"point":i.pointLights.push(o)}}return i._applyDefaultLights(),i.shadow=i.directionalLights.some(function(e){return e.shadow}),i}return b(n,[{key:"preRender",value:function(e,t){var n=t.layers,i=t.layerFilter,r=t.viewports,o=t.onViewportActive,a=t.views;if(this.shadow){this.shadowMatrices=this._createLightMatrix(),0===this.shadowPasses.length&&this._createShadowPasses(e),this.programManager||(this.programManager=dC.getDefaultProgramManager(e),WM&&this.programManager.addDefaultModule(WM)),this.dummyShadowMap||(this.dummyShadowMap=new gx(e,{width:1,height:1}));for(var s=0;s=t.delay+t.duration*t.repeat}},{key:"getTime",value:function(e){if(void 0===e)return this.time;var t=this.channels.get(e);return void 0===t?-1:t.time}},{key:"setTime",value:function(e){this.time=Math.max(0,e);var t,n=_(this.channels.values());try{for(n.s();!(t=n.n()).done;){var i=t.value;this._setChannelTime(i,this.time)}}catch(c){n.e(c)}finally{n.f()}var r,o=_(this.animations.values());try{for(o.s();!(r=o.n()).done;){var a=r.value,s=a.animation,u=a.channel;s.setTime(this.getTime(u))}}catch(c){o.e(c)}finally{o.f()}}},{key:"play",value:function(){this.playing=!0}},{key:"pause",value:function(){this.playing=!1,this.lastEngineTime=-1}},{key:"reset",value:function(){this.setTime(0)}},{key:"attachAnimation",value:function(e,t){var n=QM++;return this.animations.set(n,{animation:e,channel:t}),e.setTime(this.getTime(t)),n}},{key:"detachAnimation",value:function(e){this.animations.delete(e)}},{key:"update",value:function(e){this.playing&&(-1===this.lastEngineTime&&(this.lastEngineTime=e),this.setTime(this.time+(e-this.lastEngineTime)),this.lastEngineTime=e)}},{key:"_setChannelTime",value:function(e,t){var n=t-e.delay;n>=e.duration*e.repeat?e.time=e.duration*e.rate:(e.time=Math.max(0,n)%e.duration,e.time*=e.rate)}}]),e}(),JM=function(){function e(t,n,i){m(this,e),this.id=t,this.context=i,this._loadCount=0,this._subscribers=new Set,this.setData(n)}return b(e,[{key:"subscribe",value:function(e){this._subscribers.add(e)}},{key:"unsubscribe",value:function(e){this._subscribers.delete(e)}},{key:"inUse",value:function(){return this._subscribers.size>0}},{key:"delete",value:function(){}},{key:"getData",value:function(){var e=this;return this.isLoaded?this._error?Promise.reject(this._error):this._content:this._loader.then(function(){return e.getData()})}},{key:"setData",value:function(e,t){var n=this;if(e!==this._data||t){this._data=e;var i=++this._loadCount,r=e;"string"==typeof e&&(r=LP(e)),r instanceof Promise?(this.isLoaded=!1,this._loader=r.then(function(e){n._loadCount===i&&(n.isLoaded=!0,n._error=null,n._content=e)}).catch(function(e){n._loadCount===i&&(n.isLoaded=!0,n._error=e||!0)})):(this.isLoaded=!0,this._error=null,this._content=e);var o,a=_(this._subscribers);try{for(a.s();!(o=a.n()).done;){o.value.onChange(this.getData())}}catch(s){a.e(s)}finally{a.f()}}}}]),e}(),eI=function(){function e(t){var n=t.gl,i=t.protocol;m(this,e),this.protocol=i||"resource://",this._context={gl:n,resourceManager:this},this._resources={},this._consumers={},this._pruneRequest=null}return b(e,[{key:"contains",value:function(e){return!!e.startsWith(this.protocol)||e in this._resources}},{key:"add",value:function(e){var t=e.resourceId,n=e.data,i=e.forceUpdate,r=void 0!==i&&i,o=e.persistent,a=void 0===o||o,s=this._resources[t];s?s.setData(n,r):(s=new JM(t,n,this._context),this._resources[t]=s),s.persistent=a}},{key:"remove",value:function(e){var t=this._resources[e];t&&(t.delete(),delete this._resources[e])}},{key:"unsubscribe",value:function(e){var t=e.consumerId,n=this._consumers[t];if(n){for(var i in n){var r=n[i];r.resource&&r.resource.unsubscribe(r)}delete this._consumers[t],this.prune()}}},{key:"subscribe",value:function(e){var t=e.resourceId,n=e.onChange,i=e.consumerId,r=e.requestId,o=void 0===r?"default":r,a=this._resources,s=this.protocol;t.startsWith(s)&&(a[t=t.replace(s,"")]||this.add({resourceId:t,data:null,persistent:!1}));var u=a[t];if(this._track(i,o,u,n),u)return u.getData()}},{key:"prune",value:function(){var e=this;this._pruneRequest||(this._pruneRequest=setTimeout(function(){return e._prune()},0))}},{key:"finalize",value:function(){for(var e in this._resources)this._resources[e].delete()}},{key:"_track",value:function(e,t,n,i){var r=this._consumers,o=r[e]=r[e]||{},a=o[t]||{};a.resource&&(a.resource.unsubscribe(a),a.resource=null,this.prune()),n&&(o[t]=a,a.onChange=i,a.resource=n,n.subscribe(a))}},{key:"_prune",value:function(){this._pruneRequest=null;for(var e=0,t=Object.keys(this._resources);e1&&void 0!==arguments[1]?arguments[1]:{},i=n.deck,r=n.stats,o=n.viewport,a=n.timeline;m(this,e),this.lastRenderedLayers=[],this.layers=[],this.resourceManager=new eI({gl:t,protocol:"deck://"}),this.context=I(M({},rI),{layerManager:this,gl:t,deck:i,programManager:t&&iI(t),stats:r||new Bk({id:"deck.gl"}),viewport:o||new JO({id:"DEFAULT-INITIAL-VIEWPORT"}),timeline:a||new ZM,resourceManager:this.resourceManager}),this._nextLayers=null,this._needsRedraw="Initial render",this._needsUpdate=!1,this._debug=!1,this.activateViewport=this.activateViewport.bind(this),Object.seal(this)}return b(e,[{key:"finalize",value:function(){this.resourceManager.finalize();var e,t=_(this.layers);try{for(t.s();!(e=t.n()).done;){var n=e.value;this._finalizeLayer(n)}}catch(i){t.e(i)}finally{t.f()}}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;e.clearRedrawFlags&&(this._needsRedraw=!1);var n,i=_(this.layers);try{for(i.s();!(n=i.n()).done;){var r=n.value,o=r.getNeedsRedraw(e);t=t||o}}catch(a){i.e(a)}finally{i.f()}return t}},{key:"needsUpdate",value:function(){return this._nextLayers&&this._nextLayers!==this.lastRenderedLayers?"layers changed":this._needsUpdate}},{key:"setNeedsRedraw",value:function(e){this._needsRedraw=this._needsRedraw||e}},{key:"setNeedsUpdate",value:function(e){this._needsUpdate=this._needsUpdate||e}},{key:"getLayers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.layerIds,n=void 0===t?null:t;return n?this.layers.filter(function(e){return n.find(function(t){return 0===e.id.indexOf(t)})}):this.layers}},{key:"setProps",value:function(e){"debug"in e&&(this._debug=e.debug),"userData"in e&&(this.context.userData=e.userData),"layers"in e&&(this._nextLayers=e.layers),"onError"in e&&(this.context.onError=e.onError)}},{key:"setLayers",value:function(e,t){FS("layerManager.setLayers",this,t,e),this.lastRenderedLayers=e;var n,i=_(e=xS(e,Boolean));try{for(i.s();!(n=i.n()).done;){n.value.context=this.context}}catch(r){i.e(r)}finally{i.f()}return this._updateLayers(this.layers,e),this}},{key:"updateLayers",value:function(){var e=this.needsUpdate();e&&(this.setNeedsRedraw("updating layers: ".concat(e)),this.setLayers(this._nextLayers||this.lastRenderedLayers,e)),this._nextLayers=null}},{key:"activateViewport",value:function(e){return FS("layerManager.activateViewport",this,e),e&&(this.context.viewport=e),this}},{key:"_handleError",value:function(e,t,n){n.raiseError(t,"".concat(e," of ").concat(n))}},{key:"_updateLayers",value:function(e,t){var n,i={},r=_(e);try{for(r.s();!(n=r.n()).done;){var o=n.value;i[o.id]?Vw.warn("Multiple old layers with same id ".concat(o.id))():i[o.id]=o}}catch(l){r.e(l)}finally{r.f()}var a=[];this._updateSublayersRecursively(t,i,a),this._finalizeOldLayers(i);for(var s=!1,u=0,c=a;u0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.views=[],this.width=100,this.height=100,this.viewState={},this.controllers={},this.timeline=t.timeline,this._viewports=[],this._viewportMap={},this._isUpdating=!1,this._needsRedraw="Initial render",this._needsUpdate=!0,this._eventManager=t.eventManager,this._eventCallbacks={onViewStateChange:t.onViewStateChange,onInteractionStateChange:t.onInteractionStateChange},Object.seal(this),this.setProps(t)}return b(e,[{key:"finalize",value:function(){for(var e in this.controllers)this.controllers[e]&&this.controllers[e].finalize();this.controllers={}}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;return e.clearRedrawFlags&&(this._needsRedraw=!1),t}},{key:"setNeedsUpdate",value:function(e){this._needsUpdate=this._needsUpdate||e,this._needsRedraw=this._needsRedraw||e}},{key:"updateViewStates",value:function(){for(var e in this.controllers){var t=this.controllers[e];t&&t.updateTransition()}}},{key:"getViewports",value:function(e){return e?this._viewports.filter(function(t){return t.containsPixel(e)}):this._viewports}},{key:"getViews",value:function(){var e={};return this.views.forEach(function(t){e[t.id]=t}),e}},{key:"getView",value:function(e){return"string"==typeof e?this.views.find(function(t){return t.id===e}):e}},{key:"getViewState",value:function(e){var t=this.getView(e),n=t&&this.viewState[t.getViewStateId()]||this.viewState;return t?t.filterViewState(n):n}},{key:"getViewport",value:function(e){return this._viewportMap[e]}},{key:"unproject",value:function(e,t){for(var n=this.getViewports(),i={x:e[0],y:e[1]},r=n.length-1;r>=0;--r){var o=n[r];if(o.containsPixel(i)){var a=e.slice();return a[0]-=o.x,a[1]-=o.y,o.unproject(a,t)}}return null}},{key:"setProps",value:function(e){"views"in e&&this._setViews(e.views),"viewState"in e&&this._setViewState(e.viewState),("width"in e||"height"in e)&&this._setSize(e.width,e.height),this._isUpdating||this._update()}},{key:"_update",value:function(){this._isUpdating=!0,this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._isUpdating=!1}},{key:"_setSize",value:function(e,t){(e!==this.width||t!==this.height)&&(this.width=e,this.height=t,this.setNeedsUpdate("Size changed"))}},{key:"_setViews",value:function(e){e=xS(e,Boolean),this._diffViews(e,this.views)&&this.setNeedsUpdate("views changed"),this.views=e}},{key:"_setViewState",value:function(e){e?(!YP(e,this.viewState)&&this.setNeedsUpdate("viewState changed"),this.viewState=e):Vw.warn("missing `viewState` or `initialViewState`")()}},{key:"_onViewStateChange",value:function(e,t){t.viewId=e,this._eventCallbacks.onViewStateChange&&this._eventCallbacks.onViewStateChange(t)}},{key:"_createController",value:function(e,t){return new(0,t.type)(M({timeline:this.timeline,eventManager:this._eventManager,onViewStateChange:this._onViewStateChange.bind(this,t.id),onStateChange:this._eventCallbacks.onInteractionStateChange,makeViewport:function(t){return e._getViewport(t,{width:t.width,height:t.height})}},t))}},{key:"_updateController",value:function(e,t,n,i){var r=e.controller;return r?(r=I(M(M(M({},t),e.props),r),{id:e.id,x:n.x,y:n.y,width:n.width,height:n.height}),i?i.setProps(r):i=this._createController(e,r),i):null}},{key:"_rebuildViewports",value:function(){var e=this.width,t=this.height,n=this.views,i=this.controllers;this._viewports=[],this.controllers={};for(var r=!1,o=n.length;o--;){var a=n[o],s=this.getViewState(a),u=a.makeViewport({width:e,height:t,viewState:s}),c=i[a.id];a.controller&&!c&&(r=!0),(r||!a.controller)&&c&&(c.finalize(),c=null),this.controllers[a.id]=this._updateController(a,s,u,c),this._viewports.unshift(u)}for(var l in i)i[l]&&!this.controllers[l]&&i[l].finalize();this._buildViewportMap()}},{key:"_buildViewportMap",value:function(){var e=this;this._viewportMap={},this._viewports.forEach(function(t){t.id&&(e._viewportMap[t.id]=e._viewportMap[t.id]||t)})}},{key:"_diffViews",value:function(e,t){return e.length!==t.length||e.some(function(n,i){return!e[i].equals(t[i])})}}]),e}(),sI=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=i.makeViewport,o=i.width,a=i.height,s=i.latitude,u=i.longitude,c=i.zoom,l=i.bearing,h=void 0===l?0:l,d=i.pitch,f=void 0===d?0:d,p=i.altitude,v=void 0===p?1.5:p,g=i.maxZoom,y=void 0===g?20:g,b=i.minZoom,_=void 0===b?0:b,w=i.maxPitch,k=void 0===w?60:w,x=i.minPitch,S=void 0===x?0:x,E=i.startPanLngLat,C=i.startZoomLngLat,O=i.startRotatePos,T=i.startBearing,A=i.startPitch,P=i.startZoom,M=i.normalize;return m(this,n),yS(Number.isFinite(u)),yS(Number.isFinite(s)),yS(Number.isFinite(c)),(e=t.call(this,{width:o,height:a,latitude:s,longitude:u,zoom:c,bearing:h,pitch:f,altitude:v,maxZoom:y,minZoom:_,maxPitch:k,minPitch:S,normalize:M}))._state={startPanLngLat:E,startZoomLngLat:C,startRotatePos:O,startBearing:T,startPitch:A,startZoom:P},e.makeViewport=r,e}return b(n,[{key:"panStart",value:function(e){var t=e.pos;return this._getUpdatedState({startPanLngLat:this._unproject(t)})}},{key:"pan",value:function(e){var t=e.pos,n=e.startPos,i=this._state.startPanLngLat||this._unproject(n);if(!i)return this;var r=this.makeViewport(this._viewportProps).panByPosition(i,t);return this._getUpdatedState(r)}},{key:"panEnd",value:function(){return this._getUpdatedState({startPanLngLat:null})}},{key:"rotateStart",value:function(e){var t=e.pos;return this._getUpdatedState({startRotatePos:t,startBearing:this._viewportProps.bearing,startPitch:this._viewportProps.pitch})}},{key:"rotate",value:function(e){var t,n=e.pos,i=e.deltaAngleX,r=void 0===i?0:i,o=e.deltaAngleY,a=void 0===o?0:o,s=this._state,u=s.startRotatePos,c=s.startBearing,l=s.startPitch;return u&&Number.isFinite(c)&&Number.isFinite(l)?(t=n?this._calculateNewPitchAndBearing(I(M({},this._getRotationParams(n,u)),{startBearing:c,startPitch:l})):{bearing:c+r,pitch:l+a},this._getUpdatedState(t)):this}},{key:"rotateEnd",value:function(){return this._getUpdatedState({startBearing:null,startPitch:null})}},{key:"zoomStart",value:function(e){var t=e.pos;return this._getUpdatedState({startZoomLngLat:this._unproject(t),startZoom:this._viewportProps.zoom})}},{key:"zoom",value:function(e){var t=e.pos,n=e.startPos,i=e.scale,r=this._state,o=r.startZoom,a=r.startZoomLngLat;Number.isFinite(o)||(o=this._viewportProps.zoom,a=this._unproject(n)||this._unproject(t));var s=this._calculateNewZoom({scale:i,startZoom:o}),u=this.makeViewport(I(M({},this._viewportProps),{zoom:s}));return this._getUpdatedState(M({zoom:s},u.panByPosition(a,t)))}},{key:"zoomEnd",value:function(){return this._getUpdatedState({startZoomLngLat:null,startZoom:null})}},{key:"zoomIn",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._zoomFromCenter(e)}},{key:"zoomOut",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._zoomFromCenter(1/e)}},{key:"moveLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([e,0])}},{key:"moveRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([-e,0])}},{key:"moveUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([0,e])}},{key:"moveDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([0,-e])}},{key:"rotateLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({bearing:this._viewportProps.bearing-e})}},{key:"rotateRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({bearing:this._viewportProps.bearing+e})}},{key:"rotateUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({pitch:this._viewportProps.pitch+e})}},{key:"rotateDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({pitch:this._viewportProps.pitch-e})}},{key:"shortestPathFrom",value:function(e){var t=e.getViewportProps(),n=M({},this._viewportProps),i=n.bearing,r=n.longitude;return Math.abs(i-t.bearing)>180&&(n.bearing=i<0?i+360:i-360),Math.abs(r-t.longitude)>180&&(n.longitude=r<0?r+360:r-360),n}},{key:"_zoomFromCenter",value:function(e){var t=this._viewportProps,n=t.width,i=t.height;return this.zoom({pos:[n/2,i/2],scale:e})}},{key:"_panFromCenter",value:function(e){var t=this._viewportProps,n=t.width,i=t.height;return this.pan({startPos:[n/2,i/2],pos:[n/2+e[0],i/2+e[1]]})}},{key:"_getUpdatedState",value:function(e){return new this.constructor(M(M(M({makeViewport:this.makeViewport},this._viewportProps),this._state),e))}},{key:"_applyConstraints",value:function(e){var t=e.maxZoom,n=e.minZoom,i=e.zoom;e.zoom=Gx(i,n,t);var r=e.maxPitch,o=e.minPitch,a=e.pitch;e.pitch=Gx(a,o,r);var s=e.normalize;return(void 0===s||s)&&Object.assign(e,function(e){var t=e.width,n=e.height,i=e.longitude,r=e.latitude,o=e.zoom,a=e.pitch,s=void 0===a?0:a,u=e.bearing,c=void 0===u?0:u;(i<-180||i>180)&&(i=CO(i+180,360)-180),(c<-180||c>180)&&(c=CO(c+180,360)-180);var l=OO(n/512);if(o<=l)o=l,r=0;else{var h=n/2/Math.pow(2,o),d=NO([0,h])[1];if(rf&&(r=f)}}return{width:t,height:n,longitude:i,latitude:r,zoom:o,pitch:s,bearing:c}}(e)),e}},{key:"_unproject",value:function(e){var t=this.makeViewport(this._viewportProps);return e&&t.unproject(e)}},{key:"_calculateNewZoom",value:function(e){var t=e.scale,n=e.startZoom,i=this._viewportProps,r=i.maxZoom,o=i.minZoom;return Gx(n+Math.log2(t),o,r)}},{key:"_calculateNewPitchAndBearing",value:function(e){var t=e.deltaScaleX,n=e.deltaScaleY,i=e.startBearing,r=e.startPitch;n=Gx(n,-1,1);var o=this._viewportProps,a=o.minPitch,s=o.maxPitch,u=r;return n>0?u=r+n*(s-r):n<0&&(u=r-n*(a-r)),{pitch:u,bearing:i+180*t}}},{key:"_getRotationParams",value:function(e,t){var n=e[0]-t[0],i=e[1]-t[1],r=e[1],o=t[1],a=this._viewportProps,s=a.width,u=a.height,c=n/s,l=0;return i>0?Math.abs(u-o)>5&&(l=i/(o-u)*1.2):i<0&&o>5&&(l=1-r/o),{deltaScaleX:c,deltaScaleY:l=Math.min(1,Math.max(-1,l))}}}]),n}(dM),uI=function(t){a(i,t);var n=s(i);function i(e){return m(this,i),e.dragMode=e.dragMode||"pan",n.call(this,sI,e)}return b(i,[{key:"setProps",value:function(t){var n=this.controllerStateProps;e(p(i.prototype),"setProps",this).call(this,t),(!n||n.height!==t.height)&&this.updateViewport(new this.ControllerState(M(M({makeViewport:this.makeViewport},this.controllerStateProps),this._state)))}},{key:"linearTransitionProps",get:function(){return["longitude","latitude","zoom","bearing","pitch"]}}]),i}(hM),cI=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,I(M({},e),{type:eT}))}return b(n,[{key:"controller",get:function(){return this._getControllerProps({type:uI})}}]),n}(KP);return e.displayName="MapView",e}(),lI=new KM,hI=function(){function e(){m(this,e),this.effects=[],this._internalEffects=[],this._needsRedraw="Initial render",this.setEffects()}return b(e,[{key:"setProps",value:function(e){"effects"in e&&(e.effects.length!==this.effects.length||!YP(e.effects,this.effects))&&(this.setEffects(e.effects),this._needsRedraw="effects changed")}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;return e.clearRedrawFlags&&(this._needsRedraw=!1),t}},{key:"getEffects",value:function(){return this._internalEffects}},{key:"finalize",value:function(){this.cleanup()}},{key:"setEffects",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.cleanup(),this.effects=e,this._createInternalEffects()}},{key:"cleanup",value:function(){var e,t=_(this.effects);try{for(t.s();!(e=t.n()).done;){e.value.cleanup()}}catch(r){t.e(r)}finally{t.f()}var n,i=_(this._internalEffects);try{for(i.s();!(n=i.n()).done;){n.value.cleanup()}}catch(r){i.e(r)}finally{i.f()}this.effects.length=0,this._internalEffects.length=0}},{key:"_createInternalEffects",value:function(){this._internalEffects=this.effects.slice(),this.effects.some(function(e){return e instanceof KM})||this._internalEffects.push(lI)}}]),e}(),dI=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(RM),fI={blendFunc:[1,0,32771,0],blendEquation:32774},pI=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"render",value:function(t){t.pickingFBO?(this.useAlpha=!0,this._drawPickingBuffer(t)):(this.useAlpha=!1,e(p(i.prototype),"render",this).call(this,t))}},{key:"_drawPickingBuffer",value:function(t){var n=this,r=t.layers,o=t.layerFilter,a=t.views,s=t.viewports,u=t.onViewportActive,c=t.pickingFBO,l=t.deviceRect,h=l.x,d=l.y,f=l.width,v=l.height,g=t.pass,m=void 0===g?"picking":g,y=t.redrawReason,b=t.pickZ,_=this.gl;return this.pickZ=b,Ok(_,I(M({scissorTest:!0,scissor:[h,d,f,v],clearColor:[0,0,0,0],depthMask:!0,depthTest:!0,depthRange:[0,1],colorMask:[!0,!0,!0,!0]},fI),{blend:!b}),function(){e(p(i.prototype),"render",n).call(n,{target:c,layers:r,layerFilter:o,views:a,viewports:s,onViewportActive:u,pass:m,redrawReason:y})})}},{key:"shouldDrawLayer",value:function(e){return e.props.pickable}},{key:"getModuleParameters",value:function(){return{pickingActive:1,pickingAttribute:this.pickZ,lightSources:{}}}},{key:"getLayerParameters",value:function(e,t){var n=this.pickZ?{blend:!1}:I(M({},fI),{blend:!0,blendColor:[0,0,0,this.useAlpha?(t+1)/255:1]});return M(M({},e.props.parameters),n)}}]),i}(RM),vI=function(){function e(t){m(this,e),this.gl=t,this.layerFilter=null,this.drawPickingColors=!1,this.drawLayersPass=new dI(t),this.pickLayersPass=new pI(t),this.renderCount=0,this._needsRedraw="Initial render",this.renderBuffers=[],this.lastPostProcessEffect=null}return b(e,[{key:"setProps",value:function(e){"layerFilter"in e&&this.layerFilter!==e.layerFilter&&(this.layerFilter=e.layerFilter,this._needsRedraw="layerFilter changed"),"drawPickingColors"in e&&this.drawPickingColors!==e.drawPickingColors&&(this.drawPickingColors=e.drawPickingColors,this._needsRedraw="drawPickingColors changed")}},{key:"renderLayers",value:function(e){var t=this.drawPickingColors?this.pickLayersPass:this.drawLayersPass;e.layerFilter=this.layerFilter,e.effects=e.effects||[],e.target=e.target||Mx.getDefaultFramebuffer(this.gl),this._preRender(e.effects,e);var n=this.lastPostProcessEffect?this.renderBuffers[0]:e.target,i=t.render(I(M({},e),{target:n}));this._postRender(e.effects,e),this.renderCount++,FS("deckRenderer.renderLayers",this,i,e)}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;return e.clearRedrawFlags&&(this._needsRedraw=!1),t}},{key:"finalize",value:function(){var e,t=this.renderBuffers,n=_(t);try{for(n.s();!(e=n.n()).done;){e.value.delete()}}catch(i){n.e(i)}finally{n.f()}t.length=0}},{key:"_preRender",value:function(e,t){var n,i=null,r=_(e);try{for(r.s();!(n=r.n()).done;){var o=n.value;o.preRender(this.gl,t),o.postRender&&(i=o)}}catch(a){r.e(a)}finally{r.f()}i&&this._resizeRenderBuffers(),this.lastPostProcessEffect=i}},{key:"_resizeRenderBuffers",value:function(){var e=this.renderBuffers;0===e.length&&e.push(new Mx(this.gl),new Mx(this.gl));var t,n=_(e);try{for(n.s();!(t=n.n()).done;){t.value.resize()}}catch(i){n.e(i)}finally{n.f()}}},{key:"_postRender",value:function(e,t){var n,i=this.renderBuffers,r={inputBuffer:i[0],swapBuffer:i[1],target:null},o=_(e);try{for(o.s();!(n=o.n()).done;){var a=n.value;if(a.postRender){if(a===this.lastPostProcessEffect){r.target=t.target,a.postRender(this.gl,r);break}var s=a.postRender(this.gl,r);r.inputBuffer=s,r.swapBuffer=s===i[0]?i[1]:i[0]}}}catch(u){o.e(u)}finally{o.f()}}}]),e}(),gI={pickedColor:null,pickedLayer:null,pickedObjectIndex:-1};function mI(e){var t=e.pickedColors,n=e.layers,i=e.deviceX,r=e.deviceY,o=e.deviceRadius,a=e.deviceRect;if(t){for(var s=a.x,u=a.y,c=a.width,l=a.height,h=o*o,d=-1,f=0,p=0;ph)f+=4*c;else for(var m=0;m=0){var y=m+s-i,b=y*y+g;b<=h&&(h=b,d=f)}f+=4}}if(d>=0){var _=t[d+3]-1,w=t.slice(d,d+4),k=n[_];if(k){var x=k.decodePickingColor(w),S=Math.floor(d/4/c);return{pickedColor:w,pickedLayer:k,pickedObjectIndex:x,pickedX:s+(d/4-S*c),pickedY:u+S}}Vw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}return gI}function yI(e){var t=e.pickInfo,n=e.mode,i=e.viewports,r=e.layerFilter,o=e.pixelRatio,a=e.x,s=e.y,u=e.z,c=t&&t.pickedLayer,l=function(e,t,n){for(var i=e.length-1;i>=0;i--){var r=e[i];if(r.containsPixel(t)&&(!n||n(r)))return r}return e[0]}(i,{x:a,y:s},r&&c&&function(e){return r({layer:c,viewport:e,isPicking:!0,renderPass:"picking:".concat(n)})}),h=l&&l.unproject([a-l.x,s-l.y],{targetZ:u});return{color:null,layer:null,viewport:l,index:-1,picked:!1,x:a,y:s,pixel:[a,s],coordinate:h,devicePixel:t&&[t.pickedX,t.pickedY],pixelRatio:o}}function bI(e){var t=e.pickInfo,n=e.lastPickedInfo,i=e.mode,r=e.layers,o=t.pickedColor,a=t.pickedLayer,s=t.pickedObjectIndex,u=a?[a]:[];if("hover"===i){var c=n.index,l=n.layerId,h=a&&a.props.id;if(h!==l||s!==c){if(h!==l){var d=r.find(function(e){return e.props.id===l});d&&u.unshift(d)}n.layerId=h,n.index=s,n.info=null}}var f=yI(e),p=new Map;return p.set(null,f),u.forEach(function(e){var t=M({},f);e===a&&(t.color=o,t.index=s,t.picked=!0),t=_I({layer:e,info:t,mode:i}),e===a&&"hover"===i&&(n.info=t),p.set(t.layer.id,t),"hover"===i&&t.layer.updateAutoHighlight(t)}),p}function _I(e){for(var t=e.layer,n=e.info,i=e.mode;t&&n;){var r=n.layer||null;n.sourceLayer=r,n.layer=t,n=t.getPickingInfo({info:n,mode:i,sourceLayer:r}),t=t.parent}return n}var wI=function(){function e(t){m(this,e),this.gl=t,this.pickingFBO=null,this.pickLayersPass=new pI(t),this.layerFilter=null,this.lastPickedInfo={index:-1,layerId:null,info:null}}return b(e,[{key:"setProps",value:function(e){"layerFilter"in e&&(this.layerFilter=e.layerFilter),"_pickable"in e&&(this._pickable=e._pickable)}},{key:"finalize",value:function(){this.pickingFBO&&this.pickingFBO.delete(),this.depthFBO&&(this.depthFBO.color.delete(),this.depthFBO.delete())}},{key:"pickObject",value:function(e){return this._pickClosestObject(e)}},{key:"pickObjects",value:function(e){return this._pickVisibleObjects(e)}},{key:"getLastPickedObject",value:function(e){var t=e.x,n=e.y,i=e.layers,r=e.viewports,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.lastPickedInfo.info,a=o&&o.layer&&o.layer.id,s=o&&o.viewport&&o.viewport.id,u=a?i.find(function(e){return e.id===a}):null,c=s&&r.find(function(e){return e.id===s})||r[0],l=c&&c.unproject([t-c.x,n-c.y]),h={x:t,y:n,viewport:c,coordinate:l,layer:u};return u?M(M({},o),h):Object.assign(h,{color:null,object:null,index:-1})}},{key:"_resizeBuffer",value:function(){var e=this.gl;return this.pickingFBO||(this.pickingFBO=new Mx(e),Mx.isSupported(e,{colorBufferFloat:!0})&&(this.depthFBO=new Mx(e),this.depthFBO.attach({36064:new gx(e,{format:Xw(e)?34836:6408,type:5126})}))),this.pickingFBO.resize({width:e.canvas.width,height:e.canvas.height}),this.depthFBO&&this.depthFBO.resize({width:e.canvas.width,height:e.canvas.height}),this.pickingFBO}},{key:"_getPickable",value:function(e){if(!1===this._pickable)return null;var t=e.filter(function(e){return e.isPickable()&&!e.isComposite});return t.length>255?(Vw.warn("Too many pickable layers, only picking the first 255")(),t.slice(0,255)):t.length?t:null}},{key:"_pickClosestObject",value:function(e){var t=e.layers,n=e.views,i=e.viewports,r=e.x,o=e.y,a=e.radius,s=void 0===a?0:a,u=e.depth,c=void 0===u?1:u,l=e.mode,h=void 0===l?"query":l,d=e.unproject3D,f=e.onViewportActive;if(!(t=this._getPickable(t)))return{result:[],emptyInfo:yI({viewports:i,x:r,y:o})};this._resizeBuffer();for(var p,v=Tk(this.gl),g=Ak(this.gl,[r,o],!0),m=[g.x+Math.floor(g.width/2),g.y+Math.floor(g.height/2)],y=Math.round(s*v),b=this.pickingFBO,w=b.width,k=b.height,x=this._getPickingRect({deviceX:m[0],deviceY:m[1],deviceRadius:y,deviceWidth:w,deviceHeight:k}),S=[],E={},C=0;C=0){var a=t.slice(r,r+4),s=a.join(",");if(!i.has(s)){var u=n[o];u?i.set(s,{pickedColor:a,pickedLayer:u,pickedObjectIndex:u.decodePickingColor(a)}):Vw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}}return Array.from(i.values())}({pickedColors:this._drawAndSample({layers:t,views:n,viewports:i,onViewportActive:p,deviceRect:{x:m,y:_,width:b.x+b.width-m,height:y-_},pass:"picking:".concat(h),redrawReason:h}),layers:t}),k=new Map,x=Number.isFinite(f),S=0;S=f);S++){var E=w[S],C={color:E.pickedColor,layer:null,index:E.pickedObjectIndex,picked:!0,x:r,y:o,width:s,height:c,pixelRatio:v};C=_I({layer:E.pickedLayer,info:C,mode:h}),k.has(C.object)||k.set(C.object,C)}return Array.from(k.values())}},{key:"_drawAndSample",value:function(e){var t=e.layers,n=e.views,i=e.viewports,r=e.onViewportActive,o=e.deviceRect,a=e.pass,s=e.redrawReason,u=e.pickZ;if(t.length<1)return null;var c=u?this.depthFBO:this.pickingFBO;this.pickLayersPass.render({layers:t,layerFilter:this.layerFilter,views:n,viewports:i,onViewportActive:r,pickingFBO:c,deviceRect:o,pass:a,redrawReason:s,pickZ:u});var l=o.x,h=o.y,d=o.width,f=o.height,p=new(u?Float32Array:Uint8Array)(d*f*4);return Tx(c,{sourceX:l,sourceY:h,sourceWidth:d,sourceHeight:f,target:p}),p}},{key:"_getPickingRect",value:function(e){var t=e.deviceX,n=e.deviceY,i=e.deviceRadius,r=e.deviceWidth,o=e.deviceHeight,a=Math.max(0,t-i),s=Math.max(0,n-i),u=Math.min(r,t+i+1)-a,c=Math.min(o,n+i+1)-s;return u<=0||c<=0?null:{x:a,y:s,width:u,height:c}}}]),e}(),kI={zIndex:1,position:"absolute",pointerEvents:"none",color:"#a0a7b4",backgroundColor:"#29323c",padding:"10px",top:0,left:0,display:"none"},xI=function(){function e(t){m(this,e);var n=t.parentElement;n&&(this.el=document.createElement("div"),this.el.className="deck-tooltip",Object.assign(this.el.style,kI),n.appendChild(this.el)),this.isVisible=!1}return b(e,[{key:"setTooltip",value:function(e,t,n){var i=this.el;if("string"==typeof e)i.innerText=e;else{if(!e)return this.isVisible=!1,void(i.style.display="none");"text"in e&&(i.innerText=e.text),"html"in e&&(i.innerHTML=e.html),"className"in e&&(i.className=e.className),Object.assign(i.style,e.style)}this.isVisible=!0,i.style.display="block",i.style.transform="translate(".concat(t,"px, ").concat(n,"px)")}},{key:"remove",value:function(){this.el&&this.el.remove()}}]),e}();function SI(e,t){if(!e)throw new Error(t)}var EI={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},CI=EI.global||EI.self||EI.window,OI="object"!=typeof process||"[object process]"!==String(process)||process.browser,TI="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),AI=(TI&&parseFloat(TI[1]),CI)._parseImageNode,PI="undefined"!=typeof Image,MI="undefined"!=typeof ImageBitmap,II=Boolean(AI),RI=!!OI||II;function DI(e){switch(function(e){var t=function(e){return"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap?"imagebitmap":"undefined"!=typeof Image&&e instanceof Image?"image":e&&"object"==typeof e&&e.data&&e.width&&e.height?"data":null}(e);if(!t)throw new Error("Not an image");return t}(e)){case"data":return e;case"image":case"imagebitmap":var t=document.createElement("canvas"),n=t.getContext("2d");if(!n)throw new Error("getImageData");return t.width=e.width,t.height=e.height,n.drawImage(e,0,0),n.getImageData(0,0,e.width,e.height);default:throw new Error("getImageData")}}var NI=/^data:image\/svg\+xml/,LI=/\.svg((\?|#).*)?$/;function jI(e){return e&&(NI.test(e)||LI.test(e))}function FI(e,t){if(jI(t)){var n=(new TextDecoder).decode(e);try{"function"==typeof unescape&&"function"==typeof encodeURIComponent&&(n=unescape(encodeURIComponent(n)))}catch(i){throw new Error(i.message)}return"data:image/svg+xml;base64,".concat(btoa(n))}return BI(e,t)}function BI(e,t){if(jI(t))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(e)])}function VI(e,t,n){return zI.apply(this,arguments)}function zI(){return(zI=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=FI(t,i),o=self.URL||self.webkitURL,a="string"!=typeof r&&o.createObjectURL(r),e.prev=1,e.next=4,UI(a||r,n);case 4:return e.abrupt("return",e.sent);case 5:return e.prev=5,a&&o.revokeObjectURL(a),e.finish(5);case 8:case"end":return e.stop()}},e,null,[[1,,5,8]])}))).apply(this,arguments)}function UI(e,t){return HI.apply(this,arguments)}function HI(){return(HI=xx(regeneratorRuntime.mark(function e(t,n){var i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if((i=new Image).src=t,!(n.image&&n.image.decode&&i.decode)){e.next=8;break}return e.next=5,i.decode();case 5:e.t0=i,e.next=11;break;case 8:return e.next=10,new Promise(function(e,n){try{i.onload=function(){return e(i)},i.onerror=function(e){return n(new Error("Could not load image ".concat(t,": ").concat(e)))}}catch(r){n(r)}});case 10:e.t0=e.sent;case 11:return e.abrupt("return",e.t0);case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}var GI={},WI=!0;function qI(e,t,n){return XI.apply(this,arguments)}function XI(){return(XI=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!jI(i)){e.next=6;break}return e.next=3,VI(t,n,i);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=BI(t,i);case 7:return r=e.t0,o=n&&n.imagebitmap,e.next=11,YI(r,o);case 11:return e.abrupt("return",e.sent);case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}function YI(e){return KI.apply(this,arguments)}function KI(){return(KI=xx(regeneratorRuntime.mark(function e(t){var n,i=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(($I(n=i.length>1&&void 0!==i[1]?i[1]:null)||!WI)&&(n=null),!n){e.next=11;break}return e.prev=2,e.next=5,createImageBitmap(t,n);case 5:return e.abrupt("return",e.sent);case 8:e.prev=8,e.t0=e.catch(2),console.warn(e.t0),WI=!1;case 11:return e.next=13,createImageBitmap(t);case 13:return e.abrupt("return",e.sent);case 14:case"end":return e.stop()}},e,null,[[2,8]])}))).apply(this,arguments)}function $I(e){for(var t in e||GI)return!1;return!0}var QI=!1,ZI=!0;function JI(e){var t=eR(e);return function(e){var t=eR(e);return t.byteLength>=24&&2303741511===t.getUint32(0,QI)?{mimeType:"image/png",width:t.getUint32(16,QI),height:t.getUint32(20,QI)}:null}(t)||function(e){var t=eR(e);if(!(t.byteLength>=3&&65496===t.getUint16(0,QI)&&255===t.getUint8(2)))return null;for(var n=function(){for(var e=new Set([65499,65476,65484,65501,65534]),t=65504;t<65520;++t)e.add(t);return{tableMarkers:e,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}(),i=n.tableMarkers,r=n.sofMarkers,o=2;o+9=10&&1195984440===t.getUint32(0,QI)?{mimeType:"image/gif",width:t.getUint16(6,ZI),height:t.getUint16(8,ZI)}:null}(t)||function(e){var t=eR(e);return t.byteLength>=14&&16973===t.getUint16(0,QI)&&t.getUint32(2,ZI)===t.byteLength?{mimeType:"image/bmp",width:t.getUint32(18,ZI),height:t.getUint32(22,ZI)}:null}(t)}function eR(e){if(e instanceof DataView)return e;if(ArrayBuffer.isView(e))return new DataView(e.buffer);if(e instanceof ArrayBuffer)return new DataView(e);throw new Error("toDataView")}function tR(e,t){var n=(JI(e)||{}).mimeType,i=CI._parseImageNode;return SI(i),i(e,n,t)}function nR(){return(nR=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:r=((n=n||{}).image||{}).type||"auto",o=(i||{}).url,e.t0=iR(r),e.next="imagebitmap"===e.t0?4:"image"===e.t0?8:"data"===e.t0?12:16;break;case 4:return e.next=6,qI(t,n,o);case 6:return a=e.sent,e.abrupt("break",17);case 8:return e.next=10,VI(t,n,o);case 10:return a=e.sent,e.abrupt("break",17);case 12:return e.next=14,tR(t,n);case 14:return a=e.sent,e.abrupt("break",17);case 16:SI(!1);case 17:return e.abrupt("return",("data"===r&&(a=DI(a)),a));case 18:case"end":return e.stop()}},e)}))).apply(this,arguments)}function iR(e){switch(e){case"auto":case"data":return function(){if(MI)return"imagebitmap";if(PI)return"image";if(RI)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}();default:return function(e){switch(e){case"auto":return MI||PI||RI;case"imagebitmap":return MI;case"image":return PI;case"data":return RI;default:throw new Error("@loaders.gl/images: image ".concat(e," not supported in this environment"))}}(e),e}}var rR={id:"image",module:"images",name:"Images",version:"3.0.12",mimeTypes:["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],extensions:["png","jpg","jpeg","gif","webp","bmp","ico","svg"],parse:function(e,t,n){return nR.apply(this,arguments)},tests:[function(e){return Boolean(JI(new DataView(e)))}],options:{image:{type:"auto",decode:!0}}},oR={name:"JSON",extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:function(e){var t=e[0],n=e[e.length-1];return"{"===t&&"}"===n||"["===t&&"]"===n},parseTextSync:JSON.parse},aR="8.5.8",sR=$w.CO.deck&&$w.CO.deck.VERSION;if(sR&&sR!==aR)throw new Error("deck.gl - multiple versions detected: ".concat(sR," vs ").concat(aR));sR||(Vw.log(1,"deck.gl ".concat(aR))(),$w.CO.deck=Object.assign($w.CO.deck||{},{VERSION:aR,version:aR,log:Vw,_registerLoggers:function(e){jS=e}}),wP([oR,[rR,{imagebitmap:{premultiplyAlpha:"none"}}]]));var uR=$w.CO.deck,cR=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),(i=t.call(this,e,r)).target=null,i._queryPending=!1,i._pollingPromise=null,Object.seal(c(i)),i}return b(n,[{key:"beginTimeElapsedQuery",value:function(){return this.begin(35007)}},{key:"beginOcclusionQuery",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.conservative,n=void 0!==t&&t;return this.begin(n?36202:35887)}},{key:"beginTransformFeedbackQuery",value:function(){return this.begin(35976)}},{key:"begin",value:function(e){return this._queryPending||(this.target=e,this.gl2.beginQuery(this.target,this.handle)),this}},{key:"end",value:function(){return this._queryPending||this.target&&(this.gl2.endQuery(this.target),this.target=null,this._queryPending=!0),this}},{key:"isResultAvailable",value:function(){if(!this._queryPending)return!1;var e=this.gl2.getQueryParameter(this.handle,34919);return e&&(this._queryPending=!1),e}},{key:"isTimerDisjoint",value:function(){return this.gl2.getParameter(36795)}},{key:"getResult",value:function(){return this.gl2.getQueryParameter(this.handle,34918)}},{key:"getTimerMilliseconds",value:function(){return this.getResult()/1e6}},{key:"createPoll",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;if(this._pollingPromise)return this._pollingPromise;var n=0;return this._pollingPromise=new Promise(function(i,r){requestAnimationFrame(function o(){e.isResultAvailable()?(i(e.getResult()),e._pollingPromise=null):n++>t?(r("Timed out"),e._pollingPromise=null):requestAnimationFrame(o)})}),this._pollingPromise}},{key:"_createHandle",value:function(){return n.isSupported(this.gl)?this.gl2.createQuery():null}},{key:"_deleteHandle",value:function(){this.gl2.deleteQuery(this.handle)}}],[{key:"isSupported",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=Xw(e),r=Dx(e,"TIMER_QUERY"),o=i||r,a=_(n);try{for(a.s();!(t=a.n()).done;){var s=t.value;switch(s){case"queries":o=o&&i;break;case"timers":o=o&&r;break;default:Uk(!1)}}}catch(u){a.e(u)}finally{a.f()}return o}}]),n}(Qk),lR=(0,$w.jU)()&&"undefined"!=typeof document,hR=0,dR=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.onCreateContext,i=void 0===n?function(e){return Nk(e)}:n,r=t.onAddHTML,o=void 0===r?null:r,a=t.onInitialize,s=void 0===a?function(){}:a,u=t.onRender,c=void 0===u?function(){}:u,l=t.onFinalize,h=void 0===l?function(){}:l,d=t.onError,f=t.gl,p=void 0===f?null:f,v=t.glOptions,g=void 0===v?{}:v,y=t.debug,b=void 0!==y&&y,_=t.createFramebuffer,w=void 0!==_&&_,k=t.autoResizeViewport,x=void 0===k||k,S=t.autoResizeDrawingBuffer,E=void 0===S||S,C=t.stats,O=void 0===C?zk.get("animation-loop-"+hR++):C,T=t.useDevicePixels,A=void 0===T||T;"useDevicePixelRatio"in t&&(Gw.deprecated("useDevicePixelRatio","useDevicePixels")(),A=t.useDevicePixelRatio),this.props={onCreateContext:i,onAddHTML:o,onInitialize:s,onRender:c,onFinalize:h,onError:d,gl:p,glOptions:g,debug:b,createFramebuffer:w},this.gl=p,this.needsRedraw=null,this.timeline=null,this.stats=O,this.cpuTime=this.stats.get("CPU Time"),this.gpuTime=this.stats.get("GPU Time"),this.frameRate=this.stats.get("Frame Rate"),this._initialized=!1,this._running=!1,this._animationFrameId=null,this._nextFramePromise=null,this._resolveNextFrame=null,this._cpuStartTime=0,this.setProps({autoResizeViewport:x,autoResizeDrawingBuffer:E,useDevicePixels:A}),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this._pageLoadPromise=null,this._onMousemove=this._onMousemove.bind(this),this._onMouseleave=this._onMouseleave.bind(this)}return b(e,[{key:"delete",value:function(){this.stop(),this._setDisplay(null)}},{key:"setNeedsRedraw",value:function(e){return Uk("string"==typeof e),this.needsRedraw=this.needsRedraw||e,this}},{key:"setProps",value:function(e){return"autoResizeViewport"in e&&(this.autoResizeViewport=e.autoResizeViewport),"autoResizeDrawingBuffer"in e&&(this.autoResizeDrawingBuffer=e.autoResizeDrawingBuffer),"useDevicePixels"in e&&(this.useDevicePixels=e.useDevicePixels),this}},{key:"start",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this._running)return this;this._running=!0;var n=this._getPageLoadPromise().then(function(){return!e._running||e._initialized?null:(e._createWebGLContext(t),e._createFramebuffer(),e._startEventHandling(),e._initializeCallbackData(),e._updateCallbackData(),e._resizeCanvasDrawingBuffer(),e._resizeViewport(),e._gpuTimeQuery=cR.isSupported(e.gl,["timers"])?new cR(e.gl):null,e._initialized=!0,e.onInitialize(e.animationProps))}).then(function(t){e._running&&(e._addCallbackData(t||{}),!1!==t&&e._startLoop())});return this.props.onError&&n.catch(this.props.onError),this}},{key:"redraw",value:function(){return this.isContextLost()||(this._beginTimers(),this._setupFrame(),this._updateCallbackData(),this._renderFrame(this.animationProps),this._clearNeedsRedraw(),this.offScreen&&this.gl.commit&&this.gl.commit(),this._resolveNextFrame&&(this._resolveNextFrame(this),this._nextFramePromise=null,this._resolveNextFrame=null),this._endTimers()),this}},{key:"stop",value:function(){return this._running&&(this._finalizeCallbackData(),this._cancelAnimationFrame(this._animationFrameId),this._nextFramePromise=null,this._resolveNextFrame=null,this._animationFrameId=null,this._running=!1),this}},{key:"attachTimeline",value:function(e){return this.timeline=e,this.timeline}},{key:"detachTimeline",value:function(){this.timeline=null}},{key:"waitForRender",value:function(){var e=this;return this.setNeedsRedraw("waitForRender"),this._nextFramePromise||(this._nextFramePromise=new Promise(function(t){e._resolveNextFrame=t})),this._nextFramePromise}},{key:"toDataURL",value:function(){var e=this;return xx(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.setNeedsRedraw("toDataURL"),t.next=3,e.waitForRender();case 3:return t.abrupt("return",e.gl.canvas.toDataURL());case 4:case"end":return t.stop()}},t)}))()}},{key:"isContextLost",value:function(){return this.gl.isContextLost()}},{key:"onCreateContext",value:function(){var e;return(e=this.props).onCreateContext.apply(e,arguments)}},{key:"onInitialize",value:function(){var e;return(e=this.props).onInitialize.apply(e,arguments)}},{key:"onRender",value:function(){var e;return(e=this.props).onRender.apply(e,arguments)}},{key:"onFinalize",value:function(){var e;return(e=this.props).onFinalize.apply(e,arguments)}},{key:"getHTMLControlValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=document.getElementById(e);return n?Number(n.value):t}},{key:"setViewParameters",value:function(){return Gw.removed("AnimationLoop.setViewParameters","AnimationLoop.setProps")(),this}},{key:"_startLoop",value:function(){var e=this;this._cancelAnimationFrame(this._animationFrameId),this._animationFrameId=this._requestAnimationFrame(function t(){!e._running||(e.redraw(),e._animationFrameId=e._requestAnimationFrame(t))})}},{key:"_getPageLoadPromise",value:function(){return this._pageLoadPromise||(this._pageLoadPromise=lR?new Promise(function(e,t){lR&&"complete"===document.readyState?e(document):window.addEventListener("load",function(){e(document)})}):Promise.resolve({})),this._pageLoadPromise}},{key:"_setDisplay",value:function(e){this.display&&(this.display.delete(),this.display.animationLoop=null),e&&(e.animationLoop=this),this.display=e}},{key:"_cancelAnimationFrame",value:function(e){return this.display&&this.display.cancelAnimationFrame?this.display.cancelAnimationFrame(e):function(e){return"undefined"!=typeof window&&window.cancelAnimationFrame?window.cancelAnimationFrame(e):clearTimeout(e)}(e)}},{key:"_requestAnimationFrame",value:function(e){if(this._running)return this.display&&this.display.requestAnimationFrame?this.display.requestAnimationFrame(e):function(e){return"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame(e):setTimeout(e,1e3/60)}(e)}},{key:"_renderFrame",value:function(){var e;this.display?(e=this.display)._renderFrame.apply(e,arguments):this.onRender.apply(this,arguments)}},{key:"_clearNeedsRedraw",value:function(){this.needsRedraw=null}},{key:"_setupFrame",value:function(){this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._resizeFramebuffer()}},{key:"_initializeCallbackData",value:function(){this.animationProps={gl:this.gl,stop:this.stop,canvas:this.gl.canvas,framebuffer:this.framebuffer,useDevicePixels:this.useDevicePixels,needsRedraw:null,startTime:Date.now(),engineTime:0,tick:0,tock:0,time:0,_timeline:this.timeline,_loop:this,_animationLoop:this,_mousePosition:null}}},{key:"_updateCallbackData",value:function(){var e=this._getSizeAndAspect(),t=e.width,n=e.height,i=e.aspect;(t!==this.animationProps.width||n!==this.animationProps.height)&&this.setNeedsRedraw("drawing buffer resized"),i!==this.animationProps.aspect&&this.setNeedsRedraw("drawing buffer aspect changed"),this.animationProps.width=t,this.animationProps.height=n,this.animationProps.aspect=i,this.animationProps.needsRedraw=this.needsRedraw,this.animationProps.engineTime=Date.now()-this.animationProps.startTime,this.timeline&&this.timeline.update(this.animationProps.engineTime),this.animationProps.tick=Math.floor(this.animationProps.time/1e3*60),this.animationProps.tock++,this.animationProps.time=this.timeline?this.timeline.getTime():this.animationProps.engineTime,this.animationProps._offScreen=this.offScreen}},{key:"_finalizeCallbackData",value:function(){this.onFinalize(this.animationProps)}},{key:"_addCallbackData",value:function(e){"object"==typeof e&&null!==e&&(this.animationProps=Object.assign({},this.animationProps,e))}},{key:"_createWebGLContext",value:function(e){if(this.offScreen=e.canvas&&"undefined"!=typeof OffscreenCanvas&&e.canvas instanceof OffscreenCanvas,e=Object.assign({},e,this.props.glOptions),this.gl=this.props.gl?Lk(this.props.gl,e):this.onCreateContext(e),!qw(this.gl))throw new Error("AnimationLoop.onCreateContext - illegal context returned");(function(e){Ck(e,uk)})(this.gl),this._createInfoDiv()}},{key:"_createInfoDiv",value:function(){if(this.gl.canvas&&this.props.onAddHTML){var e=document.createElement("div");document.body.appendChild(e),e.style.position="relative";var t=document.createElement("div");t.style.position="absolute",t.style.left="10px",t.style.bottom="10px",t.style.width="300px",t.style.background="white",e.appendChild(this.gl.canvas),e.appendChild(t);var n=this.props.onAddHTML(t);n&&(t.innerHTML=n)}}},{key:"_getSizeAndAspect",value:function(){var e=this.gl.drawingBufferWidth,t=this.gl.drawingBufferHeight,n=1,i=this.gl.canvas;return i&&i.clientHeight?n=i.clientWidth/i.clientHeight:e>0&&t>0&&(n=e/t),{width:e,height:t,aspect:n}}},{key:"_resizeViewport",value:function(){this.autoResizeViewport&&this.gl.viewport(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight)}},{key:"_resizeCanvasDrawingBuffer",value:function(){this.autoResizeDrawingBuffer&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e.canvas)!function(e,t,n){var i="width"in n?n.width:e.canvas.clientWidth,r="height"in n?n.height:e.canvas.clientHeight;(!i||!r)&&(Gw.log(1,"Canvas clientWidth/clientHeight is 0")(),t=1,i=e.canvas.width||1,r=e.canvas.height||1),e.luma=e.luma||{},e.luma.canvasSizeInfo=e.luma.canvasSizeInfo||{};var o=e.luma.canvasSizeInfo;if(o.clientWidth!==i||o.clientHeight!==r||o.devicePixelRatio!==t){var a=t,s=Math.floor(i*a),u=Math.floor(r*a);e.canvas.width=s,e.canvas.height=u,(e.drawingBufferWidth!==s||e.drawingBufferHeight!==u)&&(Gw.warn("Device pixel ratio clamped")(),a=Math.min(e.drawingBufferWidth/i,e.drawingBufferHeight/r),e.canvas.width=Math.floor(i*a),e.canvas.height=Math.floor(r*a)),Object.assign(e.luma.canvasSizeInfo,{clientWidth:i,clientHeight:r,devicePixelRatio:t})}}(e,function(e){var t="undefined"==typeof window?1:window.devicePixelRatio||1;return Number.isFinite(e)?e<=0?1:e:e?t:1}(t.useDevicePixels),t);else{var n=e.getExtension("STACKGL_resize_drawingbuffer");n&&"width"in t&&"height"in t&&n.resize(t.width,t.height)}}(this.gl,{useDevicePixels:this.useDevicePixels})}},{key:"_createFramebuffer",value:function(){this.props.createFramebuffer&&(this.framebuffer=new Mx(this.gl))}},{key:"_resizeFramebuffer",value:function(){this.framebuffer&&this.framebuffer.resize({width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight})}},{key:"_beginTimers",value:function(){this.frameRate.timeEnd(),this.frameRate.timeStart(),this._gpuTimeQuery&&this._gpuTimeQuery.isResultAvailable()&&!this._gpuTimeQuery.isTimerDisjoint()&&this.stats.get("GPU Time").addTime(this._gpuTimeQuery.getTimerMilliseconds()),this._gpuTimeQuery&&this._gpuTimeQuery.beginTimeElapsedQuery(),this.cpuTime.timeStart()}},{key:"_endTimers",value:function(){this.cpuTime.timeEnd(),this._gpuTimeQuery&&this._gpuTimeQuery.end()}},{key:"_startEventHandling",value:function(){var e=this.gl.canvas;e&&(e.addEventListener("mousemove",this._onMousemove),e.addEventListener("mouseleave",this._onMouseleave))}},{key:"_onMousemove",value:function(e){this.animationProps._mousePosition=[e.offsetX,e.offsetY]}},{key:"_onMouseleave",value:function(e){this.animationProps._mousePosition=null}}]),e}(),fR=r(11524),pR=r.n(fR),vR={mousedown:1,mousemove:2,mouseup:4};(function(e){var t=e.prototype.handler;e.prototype.handler=function(e){var n=this.store;e.button>0&&"pointerdown"===e.type&&(function(t,n){for(var i=0;i=0&&(this.pressed=!0),2&t&&0===e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:"mouse",srcEvent:e}))}}(pR().MouseInput);var gR=pR().Manager,mR=pR(),yR=mR?[[mR.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[mR.Rotate,{enable:!1}],[mR.Pinch,{enable:!1}],[mR.Swipe,{enable:!1}],[mR.Pan,{threshold:0,enable:!1}],[mR.Press,{enable:!1}],[mR.Tap,{event:"doubletap",taps:2,enable:!1}],[mR.Tap,{event:"anytap",enable:!1}],[mR.Tap,{enable:!1}]]:null,bR={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},_R={doubletap:["tap"]},wR={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},kR=["keydown","keyup"],xR=["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],SR=["wheel","mousewheel"],ER={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},CR={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},OR="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",TR="undefined"!=typeof window?window:global;"undefined"!=typeof global?global:window,"undefined"!=typeof document&&document;var AR=!1;try{var PR={get passive(){return AR=!0,!0}};TR.addEventListener("test",PR,PR),TR.removeEventListener("test",PR,PR)}catch(U){}var MR=-1!==OR.indexOf("firefox"),IR=SR,RR=4.000244140625,DR=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.options=Object.assign({enable:!0},r),this.events=IR.concat(r.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(function(e){return t.addEventListener(e,i.handleEvent,!!AR&&{passive:!1})})}return b(e,[{key:"destroy",value:function(){var e=this;this.events.forEach(function(t){return e.element.removeEventListener(t,e.handleEvent)})}},{key:"enableEventType",value:function(e,t){"wheel"===e&&(this.options.enable=t)}},{key:"handleEvent",value:function(e){if(this.options.enable){var t=e.deltaY;TR.WheelEvent&&(MR&&e.deltaMode===TR.WheelEvent.DOM_DELTA_PIXEL&&(t/=TR.devicePixelRatio),e.deltaMode===TR.WheelEvent.DOM_DELTA_LINE&&(t*=40));var n={x:e.clientX,y:e.clientY};0!==t&&t%RR==0&&(t=Math.floor(t/RR)),e.shiftKey&&t&&(t*=.25),this._onWheel(e,-t,n)}}},{key:"_onWheel",value:function(e,t,n){this.callback({type:"wheel",center:n,delta:t,srcEvent:e,pointerType:"mouse",target:e.target})}}]),e}(),NR=xR,LR="pointermove",jR="pointerover",FR="pointerout",BR="pointerleave",VR=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.pressed=!1,this.options=Object.assign({enable:!0},r),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=NR.concat(r.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(function(e){return t.addEventListener(e,i.handleEvent)})}return b(e,[{key:"destroy",value:function(){var e=this;this.events.forEach(function(t){return e.element.removeEventListener(t,e.handleEvent)})}},{key:"enableEventType",value:function(e,t){e===LR&&(this.enableMoveEvent=t),e===jR&&(this.enableOverEvent=t),e===FR&&(this.enableOutEvent=t),e===BR&&(this.enableLeaveEvent=t)}},{key:"handleEvent",value:function(e){this.handleOverEvent(e),this.handleOutEvent(e),this.handleLeaveEvent(e),this.handleMoveEvent(e)}},{key:"handleOverEvent",value:function(e){this.enableOverEvent&&"mouseover"===e.type&&this.callback({type:jR,srcEvent:e,pointerType:"mouse",target:e.target})}},{key:"handleOutEvent",value:function(e){this.enableOutEvent&&"mouseout"===e.type&&this.callback({type:FR,srcEvent:e,pointerType:"mouse",target:e.target})}},{key:"handleLeaveEvent",value:function(e){this.enableLeaveEvent&&"mouseleave"===e.type&&this.callback({type:BR,srcEvent:e,pointerType:"mouse",target:e.target})}},{key:"handleMoveEvent",value:function(e){if(this.enableMoveEvent)switch(e.type){case"mousedown":e.button>=0&&(this.pressed=!0);break;case"mousemove":0===e.which&&(this.pressed=!1),this.pressed||this.callback({type:LR,srcEvent:e,pointerType:"mouse",target:e.target});break;case"mouseup":this.pressed=!1}}}]),e}(),zR=kR,UR="keydown",HR=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.options=Object.assign({enable:!0},r),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=zR.concat(r.events||[]),this.handleEvent=this.handleEvent.bind(this),t.tabIndex=r.tabIndex||0,t.style.outline="none",this.events.forEach(function(e){return t.addEventListener(e,i.handleEvent)})}return b(e,[{key:"destroy",value:function(){var e=this;this.events.forEach(function(t){return e.element.removeEventListener(t,e.handleEvent)})}},{key:"enableEventType",value:function(e,t){e===UR&&(this.enableDownEvent=t),"keyup"===e&&(this.enableUpEvent=t)}},{key:"handleEvent",value:function(e){var t=e.target||e.srcElement;"INPUT"===t.tagName&&"text"===t.type||"TEXTAREA"===t.tagName||(this.enableDownEvent&&"keydown"===e.type&&this.callback({type:UR,srcEvent:e,key:e.key,target:e.target}),this.enableUpEvent&&"keyup"===e.type&&this.callback({type:"keyup",srcEvent:e,key:e.key,target:e.target}))}}]),e}(),GR="contextmenu",WR=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.options=Object.assign({enable:!0},i),this.handleEvent=this.handleEvent.bind(this),t.addEventListener("contextmenu",this.handleEvent)}return b(e,[{key:"destroy",value:function(){this.element.removeEventListener("contextmenu",this.handleEvent)}},{key:"enableEventType",value:function(e,t){e===GR&&(this.options.enable=t)}},{key:"handleEvent",value:function(e){!this.options.enable||this.callback({type:GR,center:{x:e.clientX,y:e.clientY},srcEvent:e,pointerType:"mouse",target:e.target})}}]),e}(),qR={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4},XR={srcElement:"root",priority:0},YR=function(){function e(t){m(this,e),this.eventManager=t,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}return b(e,[{key:"isEmpty",value:function(){return!this._active}},{key:"add",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=this.handlers,a=this.handlersByElement;n&&("object"!=typeof n||n.addEventListener)&&(n={srcElement:n}),n=n?Object.assign({},XR,n):XR;var s=a.get(n.srcElement);s||(s=[],a.set(n.srcElement,s));var u={type:e,handler:t,srcElement:n.srcElement,priority:n.priority};i&&(u.once=!0),r&&(u.passive=!0),o.push(u),this._active=this._active||!u.passive;for(var c=s.length-1;c>=0&&!(s[c].priority>=u.priority);)c--;s.splice(c+1,0,u)}},{key:"remove",value:function(e,t){for(var n=this.handlers,i=this.handlersByElement,r=n.length-1;r>=0;r--){var o=n[r];if(o.type===e&&o.handler===t){n.splice(r,1);var a=i.get(o.srcElement);a.splice(a.indexOf(o),1),0===a.length&&i.delete(o.srcElement)}}this._active=n.some(function(e){return!e.passive})}},{key:"handleEvent",value:function(e){if(!this.isEmpty()){for(var t=this._normalizeEvent(e),n=e.srcEvent.target;n&&n!==t.rootElement;){if(this._emit(t,n),t.handled)return;n=n.parentNode}this._emit(t,"root")}}},{key:"_emit",value:function(e,t){var n=this.handlersByElement.get(t);if(n){for(var i=!1,r=function(){e.handled=!0},o=function(){e.handled=!0,i=!0},a=[],s=0;s0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.options=Object.assign({},KR,n),this.events=new Map,this._onBasicInput=this._onBasicInput.bind(this),this._onOtherEvent=this._onOtherEvent.bind(this),this.setElement(t);var i=n.events;i&&this.on(i)}return b(e,[{key:"setElement",value:function(e){var n=this;if(this.element&&this.destroy(),this.element=e,e){var i=this.options;for(var r in this.manager=new(0,i.Manager)(e,{touchAction:i.touchAction,recognizers:i.recognizers||yR}).on("hammer.input",this._onBasicInput),i.recognizers||Object.keys(bR).forEach(function(e){var t=n.manager.get(e);t&&bR[e].forEach(function(e){t.recognizeWith(e)})}),i.recognizerOptions){var o=this.manager.get(r);if(o){var a=i.recognizerOptions[r];delete a.enable,o.set(a)}}this.wheelInput=new DR(e,this._onOtherEvent,{enable:!1}),this.moveInput=new VR(e,this._onOtherEvent,{enable:!1}),this.keyInput=new HR(e,this._onOtherEvent,{enable:!1,tabIndex:i.tabIndex}),this.contextmenuInput=new WR(e,this._onOtherEvent,{enable:!1});var s,u=_(this.events);try{for(u.s();!(s=u.n()).done;){var c=t(s.value,2),l=c[0],h=c[1];h.isEmpty()||(this._toggleRecognizer(h.recognizerName,!0),this.manager.on(l,h.handleEvent))}}catch(d){u.e(d)}finally{u.f()}}}},{key:"destroy",value:function(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}},{key:"on",value:function(e,t,n){this._addEventHandler(e,t,n,!1)}},{key:"once",value:function(e,t,n){this._addEventHandler(e,t,n,!0)}},{key:"watch",value:function(e,t,n){this._addEventHandler(e,t,n,!1,!0)}},{key:"off",value:function(e,t){this._removeEventHandler(e,t)}},{key:"_toggleRecognizer",value:function(e,t){var n=this.manager;if(n){var i=n.get(e);if(i&&i.options.enable!==t){i.set({enable:t});var r=_R[e];r&&!this.options.recognizers&&r.forEach(function(r){var o=n.get(r);t?(o.requireFailure(e),i.dropRequireFailure(r)):o.dropRequireFailure(e)})}this.wheelInput.enableEventType(e,t),this.moveInput.enableEventType(e,t),this.keyInput.enableEventType(e,t),this.contextmenuInput.enableEventType(e,t)}}},{key:"_addEventHandler",value:function(e,t,n,i,r){if("string"==typeof e){var o=this.manager,a=this.events,s=CR[e]||e,u=a.get(s);u||(u=new YR(this),a.set(s,u),u.recognizerName=ER[s]||s,o&&o.on(s,u.handleEvent)),u.add(e,t,n,i,r),u.isEmpty()||this._toggleRecognizer(u.recognizerName,!0)}else for(var c in n=t,e)this._addEventHandler(c,e[c],n,i,r)}},{key:"_removeEventHandler",value:function(e,t){if("string"==typeof e){var n=this.events,i=n.get(CR[e]||e);if(i&&(i.remove(e,t),i.isEmpty())){var r,o=i.recognizerName,a=!1,s=_(n.values());try{for(s.s();!(r=s.n()).done;){var u=r.value;if(u.recognizerName===o&&!u.isEmpty()){a=!0;break}}}catch(l){s.e(l)}finally{s.f()}a||this._toggleRecognizer(o,!1)}}else for(var c in e)this._removeEventHandler(c,e[c])}},{key:"_onBasicInput",value:function(e){var t=e.srcEvent,n=wR[t.type];n&&this.manager.emit(n,e)}},{key:"_onOtherEvent",value:function(e){this.manager.emit(e.type,e)}}]),e}();function QR(){}var ZR={id:"",width:"100%",height:"100%",pickingRadius:0,layerFilter:null,glOptions:{},gl:null,layers:[],effects:[],views:null,controller:null,useDevicePixels:!0,touchAction:"none",eventRecognizerOptions:{},_framebuffer:null,_animate:!1,_pickable:!0,_typedArrayManagerProps:{},onWebGLInitialized:QR,onResize:QR,onViewStateChange:QR,onInteractionStateChange:QR,onBeforeRender:QR,onAfterRender:QR,onLoad:QR,onError:function(e,t){return Vw.error(e)()},_onMetrics:null,getCursor:function(e){return e.isDragging?"grabbing":"grab"},debug:!1,drawPickingColors:!1},JR=function(){function e(t){m(this,e),t=M(M({},ZR),t),this.props={},this.width=0,this.height=0,this.viewManager=null,this.layerManager=null,this.effectManager=null,this.deckRenderer=null,this.deckPicker=null,this._needsRedraw=!0,this._pickRequest={},this._lastPointerDownInfo=null,this.viewState=null,this.interactiveState={isHovering:!1,isDragging:!1},this._onEvent=this._onEvent.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),t.viewState&&t.initialViewState&&Vw.warn("View state tracking is disabled. Use either `initialViewState` for auto update or `viewState` for manual update.")(),"IE"===(0,$w.qs)()&&Vw.warn("IE 11 support will be deprecated in v8.0")(),t.gl||"undefined"!=typeof document&&(this.canvas=this._createCanvas(t)),this.animationLoop=this._createAnimationLoop(t),this.stats=new Bk({id:"deck.gl"}),this.metrics={fps:0,setPropsTime:0,updateAttributesTime:0,framesRedrawn:0,pickTime:0,pickCount:0,gpuTime:0,gpuTimePerFrame:0,cpuTime:0,cpuTimePerFrame:0,bufferMemory:0,textureMemory:0,renderbufferMemory:0,gpuMemory:0},this._metricsCounter=0,this.setProps(t),t._typedArrayManagerProps&&jx.setProps(t._typedArrayManagerProps),this.animationLoop.start()}return b(e,[{key:"finalize",value:function(){this.animationLoop.stop(),this.animationLoop=null,this._lastPointerDownInfo=null,this.layerManager&&(this.layerManager.finalize(),this.layerManager=null,this.viewManager.finalize(),this.viewManager=null,this.effectManager.finalize(),this.effectManager=null,this.deckRenderer.finalize(),this.deckRenderer=null,this.deckPicker.finalize(),this.deckPicker=null,this.eventManager.destroy(),this.eventManager=null,this.tooltip.remove(),this.tooltip=null),!this.props.canvas&&!this.props.gl&&this.canvas&&(this.canvas.parentElement.removeChild(this.canvas),this.canvas=null)}},{key:"setProps",value:function(e){this.stats.get("setProps Time").timeStart(),"onLayerHover"in e&&Vw.removed("onLayerHover","onHover")(),"onLayerClick"in e&&Vw.removed("onLayerClick","onClick")(),e.initialViewState&&!YP(this.props.initialViewState,e.initialViewState)&&(this.viewState=e.initialViewState),Object.assign(this.props,e),this._setCanvasSize(this.props);var t=Object.create(this.props);Object.assign(t,{views:this._getViews(),width:this.width,height:this.height,viewState:this._getViewState()}),this.animationLoop.setProps(t),this.layerManager&&(this.viewManager.setProps(t),this.layerManager.activateViewport(this.getViewports()[0]),this.layerManager.setProps(t),this.effectManager.setProps(t),this.deckRenderer.setProps(t),this.deckPicker.setProps(t)),this.stats.get("setProps Time").timeEnd()}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1};if(this.props._animate)return"Deck._animate";var t=this._needsRedraw;e.clearRedrawFlags&&(this._needsRedraw=!1);var n=this.viewManager.needsRedraw(e),i=this.layerManager.needsRedraw(e),r=this.effectManager.needsRedraw(e),o=this.deckRenderer.needsRedraw(e);return t=t||n||i||r||o}},{key:"redraw",value:function(e){if(this.layerManager){var t=e||this.needsRedraw({clearRedrawFlags:!0});!t||(this.stats.get("Redraw Count").incrementCount(),this.props._customRender?this.props._customRender(t):this._drawLayers(t))}}},{key:"getViews",value:function(){return this.viewManager.views}},{key:"getViewports",value:function(e){return this.viewManager.getViewports(e)}},{key:"pickObject",value:function(e){var t=this._pick("pickObject","pickObject Time",e).result;return t.length?t[0]:null}},{key:"pickMultipleObjects",value:function(e){return e.depth=e.depth||10,this._pick("pickObject","pickMultipleObjects Time",e).result}},{key:"pickObjects",value:function(e){return this._pick("pickObjects","pickObjects Time",e)}},{key:"_addResources",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];for(var n in e)this.layerManager.resourceManager.add({resourceId:n,data:e[n],forceUpdate:t})}},{key:"_removeResources",value:function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var i=t.value;this.layerManager.resourceManager.remove(i)}}catch(r){n.e(r)}finally{n.f()}}},{key:"_pick",value:function(e,t,n){var i=this.stats;i.get("Pick Count").incrementCount(),i.get(t).timeStart();var r=this.deckPicker[e](M({layers:this.layerManager.getLayers(n),views:this.viewManager.getViews(),viewports:this.getViewports(n),onViewportActive:this.layerManager.activateViewport},n));return i.get(t).timeEnd(),r}},{key:"_createCanvas",value:function(e){var t=e.canvas;return"string"==typeof t&&yS(t=document.getElementById(t)),t||((t=document.createElement("canvas")).id=e.id||"deckgl-overlay",(e.parent||document.body).appendChild(t)),Object.assign(t.style,e.style),t}},{key:"_setCanvasSize",value:function(e){if(this.canvas){var t=e.width,n=e.height;(t||0===t)&&(t=Number.isFinite(t)?"".concat(t,"px"):t,this.canvas.style.width=t),(n||0===n)&&(n=Number.isFinite(n)?"".concat(n,"px"):n,this.canvas.style.position="absolute",this.canvas.style.height=n)}}},{key:"_updateCanvasSize",value:function(){if(this._checkForCanvasSizeChange()){var e=this.width,t=this.height;this.viewManager.setProps({width:e,height:t}),this.props.onResize({width:this.width,height:this.height})}}},{key:"_checkForCanvasSizeChange",value:function(){var e=this.canvas;if(!e)return!1;var t=e.clientWidth||e.width,n=e.clientHeight||e.height;return(t!==this.width||n!==this.height)&&(this.width=t,this.height=n,!0)}},{key:"_createAnimationLoop",value:function(e){var t=this,n=e.width,i=e.height,r=e.gl,o=e.glOptions,a=e.debug,s=e.onError,u=e.onBeforeRender,c=e.onAfterRender,l=e.useDevicePixels,h=e.autoResizeDrawingBuffer;return new dR({width:n,height:i,useDevicePixels:l,autoResizeDrawingBuffer:h,autoResizeViewport:!1,gl:r,onCreateContext:function(e){return Nk(I(M(M({},o),e),{canvas:t.canvas,debug:a,onContextLost:function(){return t._onContextLost()}}))},onInitialize:function(e){return t._setGLContext(e.gl)},onRender:this._onRenderFrame.bind(this),onBeforeRender:u,onAfterRender:c,onError:s})}},{key:"_getViewState",value:function(){return this.props.viewState||this.viewState}},{key:"_getViews",value:function(){var e=this.props.views||[new cI({id:"default-view"})];return(e=Array.isArray(e)?e:[e]).length&&this.props.controller&&(e[0].props.controller=this.props.controller),e}},{key:"_onContextLost",value:function(){var e=this.props.onError;this.animationLoop&&e&&e(new Error("WebGL context is lost"))}},{key:"_onPointerMove",value:function(e){var t=this._pickRequest;if("pointerleave"===e.type)t.x=-1,t.y=-1,t.radius=0;else{if(e.leftButton||e.rightButton)return;var n=e.offsetCenter;if(!n)return;t.x=n.x,t.y=n.y,t.radius=this.props.pickingRadius}this.layerManager&&(this.layerManager.context.mousePosition={x:t.x,y:t.y}),t.event=e,t.mode="hover"}},{key:"_pickAndCallback",value:function(){var e=this._pickRequest;if(e.event){var t=this._pick("pickObject","pickObject Time",e),n=t.result,i=t.emptyInfo;this.interactiveState.isHovering=n.length>0;var r,o=i,a=!1,s=_(n);try{for(s.s();!(r=s.n()).done;){var u=r.value;o=u,a=u.layer.onHover(u,e.event)}}catch(l){s.e(l)}finally{s.f()}if(!a&&this.props.onHover&&this.props.onHover(o,e.event),this.props.getTooltip){var c=this.props.getTooltip(o);this.tooltip.setTooltip(c,o.x,o.y)}e.event=null}}},{key:"_updateCursor",value:function(){var e=this.props.parent||this.canvas;e&&(e.style.cursor=this.props.getCursor(this.interactiveState))}},{key:"_setGLContext",value:function(e){if(!this.layerManager){this.canvas||(this.canvas=e.canvas,Lk(e,{enable:!0,copyState:!0})),this.tooltip=new xI(this.canvas),Ck(e,{blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthTest:!0,depthFunc:515}),this.props.onWebGLInitialized(e);var t=new ZM;for(var n in t.play(),this.animationLoop.attachTimeline(t),this.eventManager=new $R(this.props.parent||e.canvas,{touchAction:this.props.touchAction,recognizerOptions:this.props.eventRecognizerOptions,events:{pointerdown:this._onPointerDown,pointermove:this._onPointerMove,pointerleave:this._onPointerMove}}),Hw)this.eventManager.on(n,this._onEvent);this.viewManager=new aI({timeline:t,eventManager:this.eventManager,onViewStateChange:this._onViewStateChange.bind(this),onInteractionStateChange:this._onInteractionStateChange.bind(this),views:this._getViews(),viewState:this._getViewState(),width:this.width,height:this.height});var i=this.viewManager.getViewports()[0];this.layerManager=new oI(e,{deck:this,stats:this.stats,viewport:i,timeline:t}),this.effectManager=new hI,this.deckRenderer=new vI(e),this.deckPicker=new wI(e),this.setProps(this.props),this._updateCanvasSize(),this.props.onLoad()}}},{key:"_drawLayers",value:function(e,t){var n=this.layerManager.context.gl;Ck(n,this.props.parameters),this.props.onBeforeRender({gl:n}),this.deckRenderer.renderLayers(M({target:this.props._framebuffer,layers:this.layerManager.getLayers(),viewports:this.viewManager.getViewports(),onViewportActive:this.layerManager.activateViewport,views:this.viewManager.getViews(),pass:"screen",redrawReason:e,effects:this.effectManager.getEffects()},t)),this.props.onAfterRender({gl:n})}},{key:"_onRenderFrame",value:function(e){this._getFrameStats(),this._metricsCounter++%60==0&&(this._getMetrics(),this.stats.reset(),Vw.table(4,this.metrics)(),this.props._onMetrics&&this.props._onMetrics(this.metrics)),this._updateCanvasSize(),this._updateCursor(),this.tooltip.isVisible&&this.viewManager.needsRedraw()&&this.tooltip.setTooltip(null),this.layerManager.updateLayers(),this._pickAndCallback(),this.redraw(!1),this.viewManager&&this.viewManager.updateViewStates()}},{key:"_onViewStateChange",value:function(e){var t=this.props.onViewStateChange(e)||e.viewState;this.viewState&&(this.viewState=I(M({},this.viewState),o({},e.viewId,t)),this.props.viewState||this.viewManager&&this.viewManager.setProps({viewState:this.viewState}))}},{key:"_onInteractionStateChange",value:function(e){this.interactiveState.isDragging=e.isDragging,this.props.onInteractionStateChange(e)}},{key:"_onEvent",value:function(e){var t=Hw[e.type],n=e.offsetCenter;if(t&&n){var i=this.layerManager.getLayers(),r=this.deckPicker.getLastPickedObject({x:n.x,y:n.y,layers:i,viewports:this.getViewports(n)},this._lastPointerDownInfo),o=r.layer,a=o&&(o[t.handler]||o.props[t.handler]),s=this.props[t.handler],u=!1;a&&(u=a.call(o,r,e)),!u&&s&&s(r,e)}}},{key:"_onPointerDown",value:function(e){var t=e.offsetCenter;this._lastPointerDownInfo=this.pickObject({x:t.x,y:t.y,radius:this.props.pickingRadius})}},{key:"_getFrameStats",value:function(){var e=this.stats;e.get("frameRate").timeEnd(),e.get("frameRate").timeStart();var t=this.animationLoop.stats;e.get("GPU Time").addTime(t.get("GPU Time").lastTiming),e.get("CPU Time").addTime(t.get("CPU Time").lastTiming)}},{key:"_getMetrics",value:function(){var e=this.metrics,t=this.stats;e.fps=t.get("frameRate").getHz(),e.setPropsTime=t.get("setProps Time").time,e.updateAttributesTime=t.get("Update Attributes").time,e.framesRedrawn=t.get("Redraw Count").count,e.pickTime=t.get("pickObject Time").time+t.get("pickMultipleObjects Time").time+t.get("pickObjects Time").time,e.pickCount=t.get("Pick Count").count,e.gpuTime=t.get("GPU Time").time,e.cpuTime=t.get("CPU Time").time,e.gpuTimePerFrame=t.get("GPU Time").getAverageTime(),e.cpuTimePerFrame=t.get("CPU Time").getAverageTime();var n=zk.get("Memory Usage");e.bufferMemory=n.get("Buffer Memory").count,e.textureMemory=n.get("Texture Memory").count,e.renderbufferMemory=n.get("Renderbuffer Memory").count,e.gpuMemory=n.get("GPU Memory").count}}]),e}();JR.getPropTypes=function(e){return{id:e.string,width:e.oneOfType([e.number,e.string]),height:e.oneOfType([e.number,e.string]),layers:e.oneOfType([e.object,e.array]),layerFilter:e.func,views:e.oneOfType([e.object,e.array]),viewState:e.object,effects:e.arrayOf(e.instanceOf(IM)),controller:e.oneOfType([e.func,e.bool,e.object]),gl:e.object,glOptions:e.object,parameters:e.object,pickingRadius:e.number,useDevicePixels:e.oneOfType([e.bool,e.number]),touchAction:e.string,eventRecognizerOptions:e.object,onWebGLInitialized:e.func,onResize:e.func,onViewStateChange:e.func,onInteractionStateChange:e.func,onBeforeRender:e.func,onAfterRender:e.func,onLoad:e.func,onError:e.func,debug:e.bool,drawPickingColors:e.bool,_framebuffer:e.object,_animate:e.bool,_pickable:e.bool,_typedArrayManagerProps:e.object}},JR.defaultProps=ZR,JR.VERSION=uR.VERSION;var eD={name:"project32",dependencies:[VM],vs:"\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset, out vec4 commonPosition\n) {\n vec3 projectedPosition = project_position(position, position64Low);\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n // offset is specified as ENU\n // when in globe projection, rotate offset so that the ground alighs with the surface of the globe\n mat3 rotation = project_get_orientation_matrix(projectedPosition);\n offset = rotation * offset;\n }\n commonPosition = vec4(projectedPosition + offset, 1.0);\n return project_common_position_to_clipspace(commonPosition);\n}\n\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset\n) {\n vec4 commonPosition;\n return project_position_to_clipspace(position, position64Low, offset, commonPosition);\n}\n"},tD="#if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\n\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation;\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform AmbientLight lighting_uAmbientLight;\nuniform PointLight lighting_uPointLight[MAX_LIGHTS];\nuniform DirectionalLight lighting_uDirectionalLight[MAX_LIGHTS];\nuniform int lighting_uPointLightCount;\nuniform int lighting_uDirectionalLightCount;\n\nuniform bool lighting_uEnabled;\n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n#endif\n",nD={lightSources:{}};function iD(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.color,n=void 0===t?[0,0,0]:t,i=e.intensity,r=void 0===i?1:i;return n.map(function(e){return e*r/255})}var rD={name:"lights",vs:tD,fs:tD,getUniforms:function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:nD;if("lightSources"in t){var n=t.lightSources||{},i=n.ambientLight,r=n.pointLights,o=n.directionalLights;return i||r&&r.length>0||o&&o.length>0?Object.assign({},function(e){var t=e.ambientLight,n=e.pointLights,i=void 0===n?[]:n,r=e.directionalLights,o=void 0===r?[]:r,a={};return a["lighting_uAmbientLight.color"]=t?iD(t):[0,0,0],i.forEach(function(e,t){a["lighting_uPointLight[".concat(t,"].color")]=iD(e),a["lighting_uPointLight[".concat(t,"].position")]=e.position,a["lighting_uPointLight[".concat(t,"].attenuation")]=e.attenuation||[1,0,0]}),a.lighting_uPointLightCount=i.length,o.forEach(function(e,t){a["lighting_uDirectionalLight[".concat(t,"].color")]=iD(e),a["lighting_uDirectionalLight[".concat(t,"].direction")]=e.direction}),a.lighting_uDirectionalLightCount=o.length,a}({ambientLight:i,pointLights:r,directionalLights:o}),{lighting_uEnabled:!0}):{lighting_uEnabled:!1}}if("lights"in t){var a,s={pointLights:[],directionalLights:[]},u=_(t.lights||[]);try{for(u.s();!(a=u.n()).done;){var c=a.value;switch(c.type){case"ambient":s.ambientLight=c;break;case"directional":s.directionalLights.push(c);break;case"point":s.pointLights.push(c)}}}catch(l){u.e(l)}finally{u.f()}return e({lightSources:s})}return{}},defines:{MAX_LIGHTS:3}},oD={},aD={name:"phong-lighting",dependencies:[rD],fs:"\nuniform float lighting_uAmbient;\nuniform float lighting_uDiffuse;\nuniform float lighting_uShininess;\nuniform vec3 lighting_uSpecularColor;\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 light_direction, vec3 view_direction, vec3 normal_worldspace, vec3 color) {\n vec3 halfway_direction = normalize(light_direction + view_direction);\n float lambertian = dot(light_direction, normal_worldspace);\n float specular = 0.0;\n if (lambertian > 0.0) {\n float specular_angle = max(dot(normal_worldspace, halfway_direction), 0.0);\n specular = pow(specular_angle, lighting_uShininess);\n }\n lambertian = max(lambertian, 0.0);\n return (lambertian * lighting_uDiffuse * surfaceColor + specular * lighting_uSpecularColor) * color;\n}\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = surfaceColor;\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n lightColor = lighting_uAmbient * surfaceColor * lighting_uAmbientLight.color;\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n\nvec3 lighting_getSpecularLightColor(vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = vec3(0, 0, 0);\n vec3 surfaceColor = vec3(0, 0, 0);\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n",defines:{LIGHTING_FRAGMENT:1},getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:oD;if(!("material"in e))return{};var t=e.material;return t?function(e){var t=e.ambient,n=void 0===t?.35:t,i=e.diffuse,r=void 0===i?.6:i,o=e.shininess,a=void 0===o?32:o,s=e.specularColor;return{lighting_uAmbient:n,lighting_uDiffuse:r,lighting_uShininess:a,lighting_uSpecularColor:(void 0===s?[30,30,30]:s).map(function(e){return e/255})}}(t):{lighting_uEnabled:!1}}},sD={pickingSelectedColor:null,pickingHighlightColor:new Uint8Array([0,255,255,255]),pickingActive:!1,pickingAttribute:!1},uD=M({inject:{"vs:DECKGL_FILTER_COLOR":"\n picking_setPickingColor(geometry.pickingColor);\n // for picking depth values\n picking_setPickingAttribute(geometry.position.z);\n ","fs:DECKGL_FILTER_COLOR":{order:99,injection:"\n // use highlight color if this fragment belongs to the selected object.\n color = picking_filterHighlightColor(color);\n\n // use picking color if rendering to picking FBO.\n color = picking_filterPickingColor(color);\n "}}},{name:"picking",vs:"uniform bool picking_uActive;\nuniform bool picking_uAttribute;\nuniform vec3 picking_uSelectedColor;\nuniform bool picking_uSelectedColorValid;\n\nout vec4 picking_vRGBcolor_Avalid;\n\nconst float COLOR_SCALE = 1. / 255.;\n\nbool picking_isColorValid(vec3 color) {\n return dot(color, vec3(1.0)) > 0.001;\n}\n\nbool isVertexPicked(vec3 vertexColor) {\n return\n picking_uSelectedColorValid &&\n !picking_isColorValid(abs(vertexColor - picking_uSelectedColor));\n}\n\nvoid picking_setPickingColor(vec3 pickingColor) {\n if (picking_uActive) {\n picking_vRGBcolor_Avalid.a = float(picking_isColorValid(pickingColor));\n\n if (!picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = pickingColor * COLOR_SCALE;\n }\n } else {\n picking_vRGBcolor_Avalid.a = float(isVertexPicked(pickingColor));\n }\n}\n\nvoid picking_setPickingAttribute(float value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.r = value;\n }\n}\nvoid picking_setPickingAttribute(vec2 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rg = value;\n }\n}\nvoid picking_setPickingAttribute(vec3 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = value;\n }\n}\n",fs:"uniform bool picking_uActive;\nuniform vec3 picking_uSelectedColor;\nuniform vec4 picking_uHighlightColor;\n\nin vec4 picking_vRGBcolor_Avalid;\nvec4 picking_filterHighlightColor(vec4 color) {\n if (picking_uActive) {\n return color;\n }\n bool selected = bool(picking_vRGBcolor_Avalid.a);\n\n if (selected) {\n float highLightAlpha = picking_uHighlightColor.a;\n float blendedAlpha = highLightAlpha + color.a * (1.0 - highLightAlpha);\n float highLightRatio = highLightAlpha / blendedAlpha;\n\n vec3 blendedRGB = mix(color.rgb, picking_uHighlightColor.rgb, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n } else {\n return color;\n }\n}\nvec4 picking_filterPickingColor(vec4 color) {\n if (picking_uActive) {\n if (picking_vRGBcolor_Avalid.a == 0.0) {\n discard;\n }\n return picking_vRGBcolor_Avalid;\n }\n return color;\n}\nvec4 picking_filterColor(vec4 color) {\n vec4 highightColor = picking_filterHighlightColor(color);\n return picking_filterPickingColor(highightColor);\n}\n\n",getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:sD,t={};if(void 0!==e.pickingSelectedColor)if(e.pickingSelectedColor){var n=e.pickingSelectedColor.slice(0,3);t.picking_uSelectedColorValid=1,t.picking_uSelectedColor=n}else t.picking_uSelectedColorValid=0;if(e.pickingHighlightColor){var i=Array.from(e.pickingHighlightColor,function(e){return e/255});Number.isFinite(i[3])||(i[3]=1),t.picking_uHighlightColor=i}return void 0!==e.pickingActive&&(t.picking_uActive=Boolean(e.pickingActive),t.picking_uAttribute=Boolean(e.pickingAttribute)),t}}),cD={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},lD=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?qk("geometry"):n,r=t.drawMode,o=void 0===r?cD.TRIANGLES:r,a=t.attributes,s=void 0===a?{}:a,u=t.indices,c=void 0===u?null:u,l=t.vertexCount,h=void 0===l?null:l;this.id=i,this.drawMode=0|o,this.attributes={},this.userData={},this._setAttributes(s,c),this.vertexCount=h||this._calculateVertexCount(this.attributes,this.indices)}return b(e,[{key:"mode",get:function(){return this.drawMode}},{key:"getVertexCount",value:function(){return this.vertexCount}},{key:"getAttributes",value:function(){return this.indices?M({indices:this.indices},this.attributes):this.attributes}},{key:"_print",value:function(e){return"Geometry ".concat(this.id," attribute ").concat(e)}},{key:"_setAttributes",value:function(e,t){for(var n in t&&(this.indices=ArrayBuffer.isView(t)?{value:t,size:1}:t),e){var i=e[n];i=ArrayBuffer.isView(i)?{value:i}:i,Uk(ArrayBuffer.isView(i.value),"".concat(this._print(n),": must be typed array or object with value as typed array")),("POSITION"===n||"positions"===n)&&!i.size&&(i.size=3),"indices"===n?(Uk(!this.indices),this.indices=i):this.attributes[n]=i}return this.indices&&void 0!==this.indices.isIndexed&&(this.indices=Object.assign({},this.indices),delete this.indices.isIndexed),this}},{key:"_calculateVertexCount",value:function(e,t){if(t)return t.value.length;var n=1/0;for(var i in e){var r=e[i],o=r.value,a=r.size;!r.constant&&o&&a>=1&&(n=Math.min(n,o.length/a))}return Uk(Number.isFinite(n)),n}}],[{key:"DRAW_MODE",get:function(){return cD}}]),e}(),hD=Math.PI/180,dD=new Float32Array(16),fD=new Float32Array(12);function pD(e,t,n){var i=t[0]*hD,r=t[1]*hD,o=t[2]*hD,a=Math.sin(o),s=Math.sin(i),u=Math.sin(r),c=Math.cos(o),l=Math.cos(i),h=Math.cos(r),d=n[0],f=n[1],p=n[2];e[0]=d*h*l,e[1]=d*u*l,e[2]=d*-s,e[3]=f*(-u*c+h*s*a),e[4]=f*(h*c+u*s*a),e[5]=f*l*a,e[6]=p*(u*a+h*s*c),e[7]=p*(-h*a+u*s*c),e[8]=p*l*c}function vD(e){return e[0]=e[0],e[1]=e[1],e[2]=e[2],e[3]=e[4],e[4]=e[5],e[5]=e[6],e[6]=e[8],e[7]=e[9],e[8]=e[10],e[9]=e[12],e[10]=e[13],e[11]=e[14],e.subarray(0,12)}var gD={size:12,accessor:["getOrientation","getScale","getTranslation","getTransformMatrix"],shaderAttributes:{instanceModelMatrix__LOCATION_0:{size:3,elementOffset:0},instanceModelMatrix__LOCATION_1:{size:3,elementOffset:3},instanceModelMatrix__LOCATION_2:{size:3,elementOffset:6},instanceTranslation:{size:3,elementOffset:9}},update:function(e,t){var n=t.startRow,i=t.endRow,r=this.props,o=r.data,a=r.getOrientation,s=r.getScale,u=r.getTranslation,c=r.getTransformMatrix,l=Array.isArray(c),h=l&&16===c.length,d=Array.isArray(s),f=Array.isArray(a),p=Array.isArray(u),v=h||!l&&Boolean(c(o[0]));e.constant=v?h:f&&d&&p;var g=e.value;if(e.constant){var m;v?(dD.set(c),m=vD(dD)):(pD(m=fD,a,s),m.set(u,9)),e.value=new Float32Array(m)}else{var y,b=n*e.size,w=wS(o,n,i),k=w.iterable,x=w.objectInfo,S=_(k);try{for(S.s();!(y=S.n()).done;){var E=y.value,C=void 0;x.index++,v?(dD.set(h?c:c(E,x)),C=vD(dD)):(pD(C=fD,f?a:a(E,x),d?s:s(E,x)),C.set(p?u:u(E,x),9)),g[b++]=C[0],g[b++]=C[1],g[b++]=C[2],g[b++]=C[3],g[b++]=C[4],g[b++]=C[5],g[b++]=C[6],g[b++]=C[7],g[b++]=C[8],g[b++]=C[9],g[b++]=C[10],g[b++]=C[11]}}catch(O){S.e(O)}finally{S.f()}}}};function mD(e,t){return t===zw.CARTESIAN||t===zw.METER_OFFSETS||t===zw.DEFAULT&&!e.isGeospatial}function yD(e,t){(e.COLOR_0||e.colors)&&t||(e.colors={constant:!0,value:new Float32Array([1,1,1])}),Vw.assert(e.positions||e.POSITION,'no "postions" or "POSITION" attribute in mesh')}function bD(e,t){if(e.attributes)return yD(e.attributes,t),e instanceof lD?e:new lD(e);if(e.positions||e.POSITION)return yD(e,t),new lD({attributes:e});throw Error("Invalid mesh")}var _D={mesh:{value:null,type:"object",async:!0},texture:{type:"image",value:null,async:!0},sizeScale:{type:"number",value:1,min:0},_useMeshColors:{type:"boolean",value:!1},_instanced:!0,wireframe:!1,material:!0,getPosition:{type:"accessor",value:function(e){return e.position}},getColor:{type:"accessor",value:[0,0,0,255]},getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]}},wD=function(){var t=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"getShaders",value:function(){var t=!Xw(this.context.gl),n={};return Rx(this.context.gl,"GLSL_DERIVATIVES")&&(n.DERIVATIVES_AVAILABLE=1),e(p(i.prototype),"getShaders",this).call(this,{vs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\nuniform float sizeScale;\nuniform bool composeModelMatrix;\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.uv = texCoords;\n geometry.pickingColor = instancePickingColors;\n\n vTexCoord = texCoords;\n cameraPosition = project_uCameraPosition;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n geometry.normal = normals_commonspace;\n\n vec3 pos = (instanceModelMatrix * positions) * sizeScale + instanceTranslation;\n\n if (composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), position_commonspace);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, position_commonspace);\n }\n\n geometry.position = position_commonspace;\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\nuniform sampler2D sampler;\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal;\n if (flatShading) {\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec4 color = hasTexture ? texture(sampler, vTexCoord) : vColor;\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, color.a * opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n",modules:[eD,aD,uD],transpileToGLSL100:t,defines:n})}},{key:"initializeState",value:function(){this.getAttributeManager().addInstanced({instancePositions:{transition:!0,type:5130,fp64:this.use64bitPositions(),size:3,accessor:"getPosition"},instanceColors:{type:5121,transition:!0,size:this.props.colorFormat.length,normalized:!0,accessor:"getColor",defaultValue:[0,0,0,255]},instanceModelMatrix:gD}),this.setState({emptyTexture:new gx(this.context.gl,{data:new Uint8Array(4),width:1,height:1})})}},{key:"updateState",value:function(t){var n=t.props,r=t.oldProps,o=t.changeFlags;if(e(p(i.prototype),"updateState",this).call(this,{props:n,oldProps:r,changeFlags:o}),n.mesh!==r.mesh||o.extensionsChanged){var a;if(null===(a=this.state.model)||void 0===a||a.delete(),n.mesh){this.state.model=this.getModel(n.mesh);var s=n.mesh.attributes||n.mesh;this.setState({hasNormals:Boolean(s.NORMAL||s.normals)})}this.getAttributeManager().invalidateAll()}n.texture!==r.texture&&this.setTexture(n.texture),this.state.model&&this.state.model.setDrawMode(this.props.wireframe?3:4)}},{key:"finalizeState",value:function(){e(p(i.prototype),"finalizeState",this).call(this),this.state.emptyTexture.delete()}},{key:"draw",value:function(e){var t=e.uniforms;if(this.state.model){var n=this.context.viewport,i=this.props,r=i.sizeScale,o=i.coordinateSystem,a=i._instanced;this.state.model.setUniforms(t).setUniforms({sizeScale:r,composeModelMatrix:!a||mD(n,o),flatShading:!this.state.hasNormals}).draw()}}},{key:"getModel",value:function(e){var t=new AC(this.context.gl,I(M({},this.getShaders()),{id:this.props.id,geometry:bD(e,this.props._useMeshColors),isInstanced:!0})),n=this.props.texture,i=this.state.emptyTexture;return t.setUniforms({sampler:n||i,hasTexture:Boolean(n)}),t}},{key:"setTexture",value:function(e){var t=this.state,n=t.emptyTexture,i=t.model;null==i||i.setUniforms({sampler:e||n,hasTexture:Boolean(e)})}}]),i}(HP);return t.layerName="SimpleMeshLayer",t.defaultProps=_D,t}(),kD={name:"pbr",vs:"uniform mat4 u_MVPMatrix;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_NormalMatrix;\n\nvarying vec3 pbr_vPosition;\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n# else\nvarying vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = u_ModelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(u_NormalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(u_ModelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else\n pbr_vNormal = normalize(vec3(u_ModelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n",fs:"#if defined(USE_TEX_LOD) && !defined(FEATURE_GLSL_TEXTURE_LOD)\n# error PBR fragment shader: Texture LOD is not available\n#endif\n\n#if !defined(HAS_TANGENTS) && !defined(FEATURE_GLSL_DERIVATIVES)\n# error PBR fragment shader: Derivatives are not available\n#endif\n\n\n#if (__VERSION__ < 300)\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL1COND; INCR)\n#else\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL2COND; INCR)\n#endif\n\nprecision highp float;\n\nuniform bool pbr_uUnlit;\n\n#ifdef USE_IBL\nuniform samplerCube u_DiffuseEnvSampler;\nuniform samplerCube u_SpecularEnvSampler;\nuniform sampler2D u_brdfLUT;\nuniform vec2 u_ScaleIBLAmbient;\n#endif\n\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D u_BaseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D u_NormalSampler;\nuniform float u_NormalScale;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D u_EmissiveSampler;\nuniform vec3 u_EmissiveFactor;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D u_MetallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D u_OcclusionSampler;\nuniform float u_OcclusionStrength;\n#endif\n\n#ifdef ALPHA_CUTOFF\nuniform float u_AlphaCutoff;\n#endif\n\nuniform vec2 u_MetallicRoughnessValues;\nuniform vec4 u_BaseColorFactor;\n\nuniform vec3 u_Camera;\n#ifdef PBR_DEBUG\nuniform vec4 u_ScaleDiffBaseMR;\nuniform vec4 u_ScaleFGDSpec;\n#endif\n\nvarying vec3 pbr_vPosition;\n\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n#else\nvarying vec3 pbr_vNormal;\n#endif\n#endif\n\n\nstruct PBRInfo\n{\n float NdotL;\n float NdotV;\n float NdotH;\n float LdotH;\n float VdotH;\n float perceptualRoughness;\n float metalness;\n vec3 reflectance0;\n vec3 reflectance90;\n float alphaRoughness;\n vec3 diffuseColor;\n vec3 specularColor;\n vec3 n;\n vec3 v;\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif\n return vec4(linOut,srgbIn.w);;\n#else\n return srgbIn;\n#endif\n}\n\nvec3 getNormal()\n{\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture2D(u_NormalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(u_NormalScale, u_NormalScale, 1.0)));\n#else\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInputs, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0;\n float lod = (pbrInputs.perceptualRoughness * mipCount);\n vec3 brdf = SRGBtoLINEAR(texture2D(u_brdfLUT,\n vec2(pbrInputs.NdotV, 1.0 - pbrInputs.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(textureCube(u_DiffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(textureCubeLod(u_SpecularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(textureCube(u_SpecularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInputs.diffuseColor;\n vec3 specular = specularLight * (pbrInputs.specularColor * brdf.x + brdf.y);\n diffuse *= u_ScaleIBLAmbient.x;\n specular *= u_ScaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n\nvec3 diffuse(PBRInfo pbrInputs)\n{\n return pbrInputs.diffuseColor / M_PI;\n}\n\nvec3 specularReflection(PBRInfo pbrInputs)\n{\n return pbrInputs.reflectance0 +\n (pbrInputs.reflectance90 - pbrInputs.reflectance0) *\n pow(clamp(1.0 - pbrInputs.VdotH, 0.0, 1.0), 5.0);\n}\n\n\n\nfloat geometricOcclusion(PBRInfo pbrInputs)\n{\n float NdotL = pbrInputs.NdotL;\n float NdotV = pbrInputs.NdotV;\n float r = pbrInputs.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n\n\n\n\nfloat microfacetDistribution(PBRInfo pbrInputs)\n{\n float roughnessSq = pbrInputs.alphaRoughness * pbrInputs.alphaRoughness;\n float f = (pbrInputs.NdotH * roughnessSq - pbrInputs.NdotH) * pbrInputs.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInputs) {\n pbrInputs.NdotL = 1.0;\n pbrInputs.NdotH = 0.0;\n pbrInputs.LdotH = 0.0;\n pbrInputs.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInputs, vec3 lightDirection) {\n vec3 n = pbrInputs.n;\n vec3 v = pbrInputs.v;\n vec3 l = normalize(lightDirection);\n vec3 h = normalize(l+v);\n\n pbrInputs.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInputs.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInputs.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInputs.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInputs, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInputs, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInputs, vec3 lightColor) {\n vec3 F = specularReflection(pbrInputs);\n float G = geometricOcclusion(pbrInputs);\n float D = microfacetDistribution(pbrInputs);\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInputs);\n vec3 specContrib = F * G * D / (4.0 * pbrInputs.NdotL * pbrInputs.NdotV);\n return pbrInputs.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture2D(u_BaseColorSampler, pbr_vUV)) * u_BaseColorFactor;\n#else\n vec4 baseColor = u_BaseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < u_AlphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbr_uUnlit){\n color.rgb = baseColor.rgb;\n }\n else{\n\n\n float perceptualRoughness = u_MetallicRoughnessValues.y;\n float metallic = u_MetallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n\n vec4 mrSample = texture2D(u_MetallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n\n\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal();\n vec3 v = normalize(u_Camera - pbr_vPosition);\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInputs = PBRInfo(\n 0.0,\n NdotV,\n 0.0,\n 0.0,\n 0.0,\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n#ifdef USE_LIGHTS\n PBRInfo_setAmbientLight(pbrInputs);\n color += calculateFinalColor(pbrInputs, lighting_uAmbientLight.color);\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uDirectionalLightCount, i++) {\n if (i < lighting_uDirectionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInputs, lighting_uDirectionalLight[i].direction);\n color += calculateFinalColor(pbrInputs, lighting_uDirectionalLight[i].color);\n }\n }\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uPointLightCount, i++) {\n if (i < lighting_uPointLightCount) {\n PBRInfo_setPointLight(pbrInputs, lighting_uPointLight[i]);\n float attenuation = getPointLightAttenuation(lighting_uPointLight[i], distance(lighting_uPointLight[i].position, pbr_vPosition));\n color += calculateFinalColor(pbrInputs, lighting_uPointLight[i].color / attenuation);\n }\n }\n#endif\n#ifdef USE_IBL\n color += getIBLContribution(pbrInputs, n, reflection);\n#endif\n#ifdef HAS_OCCLUSIONMAP\n float ao = texture2D(u_OcclusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, u_OcclusionStrength);\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n vec3 emissive = SRGBtoLINEAR(texture2D(u_EmissiveSampler, pbr_vUV)).rgb * u_EmissiveFactor;\n color += emissive;\n#endif\n\n#ifdef PBR_DEBUG\n\n\n\n\n\n color = mix(color, baseColor.rgb, u_ScaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), u_ScaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), u_ScaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n",defines:{LIGHTING_FRAGMENT:1},dependencies:[rD]},xD=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id;this.id=n||qk(this.constructor.name),this.display=!0,this.position=new hS,this.rotation=new hS,this.scale=new hS(1,1,1),this.matrix=new SO,this.userData={},this.props={},this._setScenegraphNodeProps(t)}return b(e,[{key:"delete",value:function(){}},{key:"setProps",value:function(e){return this._setScenegraphNodeProps(e),this}},{key:"toString",value:function(){return"{type: ScenegraphNode, id: ".concat(this.id,")}")}},{key:"setPosition",value:function(e){return Uk(3===e.length,"setPosition requires vector argument"),this.position=e,this}},{key:"setRotation",value:function(e){return Uk(3===e.length,"setRotation requires vector argument"),this.rotation=e,this}},{key:"setScale",value:function(e){return Uk(3===e.length,"setScale requires vector argument"),this.scale=e,this}},{key:"setMatrix",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];t?this.matrix.copy(e):this.matrix=e}},{key:"setMatrixComponents",value:function(e){var t=e.position,n=e.rotation,i=e.scale,r=e.update,o=void 0===r||r;return t&&this.setPosition(t),n&&this.setRotation(n),i&&this.setScale(i),o&&this.updateMatrix(),this}},{key:"updateMatrix",value:function(){var e=this.position,t=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(e),this.matrix.rotateXYZ(t),this.matrix.scale(n),this}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.position,n=e.rotation,i=e.scale;return t&&this.setPosition(t),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}},{key:"getCoordinateUniforms",value:function(e,t){Uk(e),t=t||this.matrix;var n=new SO(e).multiplyRight(t),i=n.invert(),r=i.transpose();return{viewMatrix:e,modelMatrix:t,objectMatrix:t,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:r}}},{key:"_setScenegraphNodeProps",value:function(e){"display"in e&&(this.display=e.display),"position"in e&&this.setPosition(e.position),"rotation"in e&&this.setRotation(e.rotation),"scale"in e&&this.setScale(e.scale),"matrix"in e&&this.setMatrix(e.matrix),Object.assign(this.props,e)}}]),e}(),SD=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,i);var r=t=Array.isArray(t)?{children:t}:t,o=r.children,a=void 0===o?[]:o;return Gw.assert(a.every(function(e){return e instanceof xD}),"every child must an instance of ScenegraphNode"),(e=n.call(this,t)).children=a,e}return b(i,[{key:"add",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n-1&&t.splice(n,1),this}},{key:"removeAll",value:function(){return this.children=[],this}},{key:"delete",value:function(){this.children.forEach(function(e){return e.delete()}),this.removeAll(),e(p(i.prototype),"delete",this).call(this)}},{key:"traverse",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.worldMatrix,o=void 0===r?new SO:r,a=new SO(o).multiplyRight(this.matrix),s=_(this.children);try{for(s.s();!(t=s.n()).done;){var u=t.value;u instanceof i?u.traverse(e,{worldMatrix:a}):e(u,{worldMatrix:a})}}catch(c){s.e(c)}finally{s.f()}}}]),i}(xD);function ED(){var e=new tS(4);return tS!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function CD(e,t,n){n*=.5;var i=Math.sin(n);return e[0]=i*t[0],e[1]=i*t[1],e[2]=i*t[2],e[3]=Math.cos(n),e}function OD(e,t,n){var i=t[0],r=t[1],o=t[2],a=t[3],s=n[0],u=n[1],c=n[2],l=n[3];return e[0]=i*l+a*s+r*c-o*u,e[1]=r*l+a*u+o*s-i*c,e[2]=o*l+a*c+i*u-r*s,e[3]=a*l-i*s-r*u-o*c,e}var TD=sO,AD=function(){var e=nS(),t=iS(1,0,0),n=iS(0,1,0);return function(i,r,o){var a=rS(r,o);return a<-.999999?(oS(e,t,r),function(e){return Math.hypot(e[0],e[1],e[2])}(e)<1e-6&&oS(e,n,r),function(e,t){var n=t[0],i=t[1],r=t[2],o=n*n+i*i+r*r;o>0&&(o=1/Math.sqrt(o)),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o}(e,e),CD(i,e,Math.PI),i):a>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(oS(e,r,o),i[0]=e[0],i[1]=e[1],i[2]=e[2],i[3]=1+a,function(e,t){var n=t[0],i=t[1],r=t[2],o=t[3],a=n*n+i*i+r*r+o*o;return a>0&&(a=1/Math.sqrt(a)),e[0]=n*a,e[1]=i*a,e[2]=r*a,e[3]=o*a,e}(i,i))}}();ED(),ED(),function(){var e=new tS(9);tS!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1}();var PD=[0,0,0,1],MD={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},ID={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function RD(e){if(!e._animation){var t=ID[e.componentType],n=MD[e.type],i=n*e.count,r=e.bufferView.data,o=new t(r.buffer,r.byteOffset+(e.byteOffset||0),i);if(1===n)e._animation=Array.from(o);else{for(var a=[],s=0;s0&&void 0!==arguments[0]?arguments[0]:0,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1;return m(this,i),e=n.call(this,-0,-0,-0,-0),Array.isArray(t)&&1===arguments.length?e.copy(t):e.set(t,r,o,a),e}return b(i,[{key:"copy",value:function(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}},{key:"set",value:function(e,t,n,i){return this[0]=e,this[1]=t,this[2]=n,this[3]=i,this.check()}},{key:"fromMatrix3",value:function(e){return function(e,t){var n,i=t[0]+t[4]+t[8];if(i>0)n=Math.sqrt(i+1),e[3]=.5*n,e[0]=(t[5]-t[7])*(n=.5/n),e[1]=(t[6]-t[2])*n,e[2]=(t[1]-t[3])*n;else{var r=0;t[4]>t[0]&&(r=1),t[8]>t[3*r+r]&&(r=2);var o=(r+1)%3,a=(r+2)%3;n=Math.sqrt(t[3*r+r]-t[3*o+o]-t[3*a+a]+1),e[r]=.5*n,e[3]=(t[3*o+a]-t[3*a+o])*(n=.5/n),e[o]=(t[3*o+r]+t[3*r+o])*n,e[a]=(t[3*a+r]+t[3*r+a])*n}}(this,e),this.check()}},{key:"identity",value:function(){return function(e){e[0]=0,e[1]=0,e[2]=0,e[3]=1}(this),this.check()}},{key:"fromAxisRotation",value:function(e,t){return CD(this,e,t),this.check()}},{key:"setAxisAngle",value:function(e,t){return this.fromAxisRotation(e,t)}},{key:"ELEMENTS",get:function(){return 4}},{key:"x",get:function(){return this[0]},set:function(e){this[0]=Kx(e)}},{key:"y",get:function(){return this[1]},set:function(e){this[1]=Kx(e)}},{key:"z",get:function(){return this[2]},set:function(e){this[2]=Kx(e)}},{key:"w",get:function(){return this[3]},set:function(e){this[3]=Kx(e)}},{key:"len",value:function(){return function(e){return Math.hypot(e[0],e[1],e[2],e[3])}(this)}},{key:"lengthSquared",value:function(){return function(e){var t=e[0],n=e[1],i=e[2],r=e[3];return t*t+n*n+i*i+r*r}(this)}},{key:"dot",value:function(e,t){if(void 0!==t)throw new Error("Quaternion.dot only takes one argument");return function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}(this,e)}},{key:"rotationTo",value:function(e,t){return AD(this,e,t),this.check()}},{key:"add",value:function(e,t){if(void 0!==t)throw new Error("Quaternion.add only takes one argument");return function(e,t,n){e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3]}(this,this,e),this.check()}},{key:"calculateW",value:function(){return function(e,t){var n=t[0],i=t[1],r=t[2];e[0]=n,e[1]=i,e[2]=r,e[3]=Math.sqrt(Math.abs(1-n*n-i*i-r*r))}(this,this),this.check()}},{key:"conjugate",value:function(){return function(e,t){e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3]}(this,this),this.check()}},{key:"invert",value:function(){return function(e,t){var n=t[0],i=t[1],r=t[2],o=t[3],a=n*n+i*i+r*r+o*o,s=a?1/a:0;e[0]=-n*s,e[1]=-i*s,e[2]=-r*s,e[3]=o*s}(this,this),this.check()}},{key:"lerp",value:function(e,t,n){return function(e,t,n,i){var r=t[0],o=t[1],a=t[2],s=t[3];e[0]=r+i*(n[0]-r),e[1]=o+i*(n[1]-o),e[2]=a+i*(n[2]-a),e[3]=s+i*(n[3]-s)}(this,e,t,n),this.check()}},{key:"multiplyRight",value:function(e,t){return Xx(!t),OD(this,this,e),this.check()}},{key:"multiplyLeft",value:function(e,t){return Xx(!t),OD(this,e,this),this.check()}},{key:"normalize",value:function(){var e=this.len(),t=e>0?1/e:0;return this[0]=this[0]*t,this[1]=this[1]*t,this[2]=this[2]*t,this[3]=this[3]*t,0===e&&(this[3]=1),this.check()}},{key:"rotateX",value:function(e){return function(e,t,n){n*=.5;var i=t[0],r=t[1],o=t[2],a=t[3],s=Math.sin(n),u=Math.cos(n);e[0]=i*u+a*s,e[1]=r*u+o*s,e[2]=o*u-r*s,e[3]=a*u-i*s}(this,this,e),this.check()}},{key:"rotateY",value:function(e){return function(e,t,n){n*=.5;var i=t[0],r=t[1],o=t[2],a=t[3],s=Math.sin(n),u=Math.cos(n);e[0]=i*u-o*s,e[1]=r*u+a*s,e[2]=o*u+i*s,e[3]=a*u-r*s}(this,this,e),this.check()}},{key:"rotateZ",value:function(e){return function(e,t,n){n*=.5;var i=t[0],r=t[1],o=t[2],a=t[3],s=Math.sin(n),u=Math.cos(n);e[0]=i*u+r*s,e[1]=r*u-i*s,e[2]=o*u+a*s,e[3]=a*u-o*s}(this,this,e),this.check()}},{key:"scale",value:function(e){return TD(this,this,e),this.check()}},{key:"slerp",value:function(e,n,i){var r;switch(arguments.length){case 1:var o=arguments[0],a=o.start;e=void 0===a?PD:a,n=o.target,i=o.ratio;break;case 2:n=(r=t(arguments,2))[0],i=r[1],e=this}return function(e,t,n,i){var r,o,a,s,u,c=t[0],l=t[1],h=t[2],d=t[3],f=n[0],p=n[1],v=n[2],g=n[3];(o=c*f+l*p+h*v+d*g)<0&&(o=-o,f=-f,p=-p,v=-v,g=-g),1-o>eS?(r=Math.acos(o),a=Math.sin(r),s=Math.sin((1-i)*r)/a,u=Math.sin(i*r)/a):(s=1-i,u=i),e[0]=s*c+u*f,e[1]=s*l+u*p,e[2]=s*h+u*v,e[3]=s*d+u*g}(this,e,n,i),this.check()}},{key:"transformVector4",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return function(e,t,n){var i=t[0],r=t[1],o=t[2],a=n[0],s=n[1],u=n[2],c=n[3],l=c*i+s*o-u*r,h=c*r+u*i-a*o,d=c*o+a*r-s*i,f=-a*i-s*r-u*o;e[0]=l*c+f*-a+h*-u-d*-s,e[1]=h*c+f*-s+d*-a-l*-u,e[2]=d*c+f*-u+l*-s-h*-a,e[3]=t[3]}(t,e,this),$x(t,4)}},{key:"lengthSq",value:function(){return this.lengthSquared()}},{key:"setFromAxisAngle",value:function(e,t){return this.setAxisAngle(e,t)}},{key:"premultiply",value:function(e,t){return this.multiplyLeft(e,t)}},{key:"multiply",value:function(e,t){return this.multiplyRight(e,t)}}]),i}(Yx)),LD=function(){function e(t){m(this,e),this.startTime=0,this.playing=!0,this.speed=1,this.channels=[],Object.assign(this,t)}return b(e,[{key:"animate",value:function(e){if(this.playing){var t=(e/1e3-this.startTime)*this.speed;this.channels.forEach(function(e){var n=e.sampler,i=e.target,r=e.path;(function(e,t,n,i){var r=t.input,o=t.interpolation,a=t.output,s=e%r[r.length-1],u=r.findIndex(function(e){return e>=s}),c=Math.max(0,u-1);if(!Array.isArray(n[i]))switch(i){case"translation":n[i]=[0,0,0];break;case"rotation":n[i]=[0,0,0,1];break;case"scale":n[i]=[1,1,1];break;default:Gw.warn("Bad animation path ".concat(i))()}Uk(n[i].length===a[c].length);var l=r[c],h=r[u];switch(o){case"STEP":!function(e,t,n){for(var i=0;il&&function(e,t,n,i,r){if("rotation"===t){ND.slerp({start:n,target:i,ratio:r});for(var o=0;ol&&function(e,t,n){for(var i=n.p0,r=n.outTangent0,o=n.inTangent1,a=n.p1,s=n.tDiff,u=n.ratio,c=0;c1&&void 0!==arguments[1]?arguments[1]:{};return m(this,i),(t=n.call(this,r)).onBeforeRender=null,t.AfterRender=null,e instanceof AC?(t.model=e,t._setModelNodeProps(r)):t.model=new AC(e,r),t.managedResources=r.managedResources||[],t}return b(i,[{key:"setProps",value:function(t){return e(p(i.prototype),"setProps",this).call(this,t),this._setModelNodeProps(t),this}},{key:"delete",value:function(){this.model&&(this.model.delete(),this.model=null),this.managedResources.forEach(function(e){return e.delete()}),this.managedResources=[]}},{key:"draw",value:function(){var e;return(e=this.model).draw.apply(e,arguments)}},{key:"setUniforms",value:function(){var e;return(e=this.model).setUniforms.apply(e,arguments),this}},{key:"setAttributes",value:function(){var e;return(e=this.model).setAttributes.apply(e,arguments),this}},{key:"updateModuleSettings",value:function(){var e;return(e=this.model).updateModuleSettings.apply(e,arguments),this}},{key:"_setModelNodeProps",value:function(e){this.model.setProps(e)}}]),i}(xD),BD=function(){function e(t,n){var i=n.attributes,r=n.material,o=n.pbrDebug,a=n.imageBasedLightingEnvironment,s=n.lights,u=n.useTangents;m(this,e),this.gl=t,this.defines={MANUAL_SRGB:1,SRGB_FAST_APPROXIMATION:1},Rx(t,"GLSL_TEXTURE_LOD")&&(this.defines.USE_TEX_LOD=1),this.uniforms={u_Camera:[0,0,0],u_MetallicRoughnessValues:[1,1]},this.parameters={},this.generatedTextures=[],a&&(this.uniforms.u_DiffuseEnvSampler=a.getDiffuseEnvSampler(),this.uniforms.u_SpecularEnvSampler=a.getSpecularEnvSampler(),this.uniforms.u_brdfLUT=a.getBrdfTexture(),this.uniforms.u_ScaleIBLAmbient=[1,1]),o&&(this.uniforms.u_ScaleDiffBaseMR=[0,0,0,0],this.uniforms.u_ScaleFGDSpec=[0,0,0,0]),this.defineIfPresent(i.NORMAL,"HAS_NORMALS"),this.defineIfPresent(i.TANGENT&&u,"HAS_TANGENTS"),this.defineIfPresent(i.TEXCOORD_0,"HAS_UV"),this.defineIfPresent(a,"USE_IBL"),this.defineIfPresent(s,"USE_LIGHTS"),this.defineIfPresent(o,"PBR_DEBUG"),r&&this.parseMaterial(r)}return b(e,[{key:"defineIfPresent",value:function(e,t){e&&(this.defines[t]=1)}},{key:"parseTexture",value:function(e,t){var n,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=e.texture.source.image,a={};r.compressed?(n=r,a=o({},this.gl.TEXTURE_MIN_FILTER,r.data.length>1?this.gl.LINEAR_MIPMAP_NEAREST:this.gl.LINEAR)):n={data:r};var s=new gx(this.gl,M({id:e.name||e.id,parameters:M(M({},e.texture&&e.texture.sampler&&e.texture.sampler.parameters||{}),a),pixelStore:o({},this.gl.UNPACK_FLIP_Y_WEBGL,!1)},n));this.uniforms[t]=s,this.defineIfPresent(i,i),this.generatedTextures.push(s)}},{key:"parsePbrMetallicRoughness",value:function(e){e.baseColorTexture&&this.parseTexture(e.baseColorTexture,"u_BaseColorSampler","HAS_BASECOLORMAP"),this.uniforms.u_BaseColorFactor=e.baseColorFactor||[1,1,1,1],e.metallicRoughnessTexture&&this.parseTexture(e.metallicRoughnessTexture,"u_MetallicRoughnessSampler","HAS_METALROUGHNESSMAP");var t=e.metallicFactor,n=void 0===t?1:t,i=e.roughnessFactor,r=void 0===i?1:i;this.uniforms.u_MetallicRoughnessValues=[n,r]}},{key:"parseMaterial",value:function(e){if(this.uniforms.pbr_uUnlit=Boolean(e.unlit),e.pbrMetallicRoughness&&this.parsePbrMetallicRoughness(e.pbrMetallicRoughness),e.normalTexture){this.parseTexture(e.normalTexture,"u_NormalSampler","HAS_NORMALMAP");var t=e.normalTexture.scale,n=void 0===t?1:t;this.uniforms.u_NormalScale=n}if(e.occlusionTexture){this.parseTexture(e.occlusionTexture,"u_OcclusionSampler","HAS_OCCLUSIONMAP");var i=e.occlusionTexture.strength,r=void 0===i?1:i;this.uniforms.u_OcclusionStrength=r}if(e.emissiveTexture&&(this.parseTexture(e.emissiveTexture,"u_EmissiveSampler","HAS_EMISSIVEMAP"),this.uniforms.u_EmissiveFactor=e.emissiveFactor||[0,0,0]),"MASK"===e.alphaMode){var o=e.alphaCutoff,a=void 0===o?.5:o;this.defines.ALPHA_CUTOFF=1,this.uniforms.u_AlphaCutoff=a}else"BLEND"===e.alphaMode&&(Gw.warn("BLEND alphaMode might not work well because it requires mesh sorting")(),Object.assign(this.parameters,{blend:!0,blendEquation:this.gl.FUNC_ADD,blendFunc:[this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA]}))}}]),e}();function VD(e,t){return Xw(e)?"#version 300 es\n".concat(t):t}var zD={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},UD={modelOptions:{},pbrDebug:!1,imageBasedLightingEnvironment:null,lights:!0,useTangents:!1},HD=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.options=Object.assign({},UD,n)}return b(e,[{key:"instantiate",value:function(e){var t=this;return this.gltf=e,(e.scenes||[]).map(function(e){return t.createScene(e)})}},{key:"createAnimator",value:function(){return Array.isArray(this.gltf.animations)?new jD(this.gltf):null}},{key:"createScene",value:function(e){var t=this,n=(e.nodes||[]).map(function(e){return t.createNode(e)});return new SD({id:e.name||e.id,children:n})}},{key:"createNode",value:function(e){var t=this;if(!e._node){var n=(e.children||[]).map(function(e){return t.createNode(e)});e.mesh&&n.push(this.createMesh(e.mesh));var i=new SD({id:e.name||e.id,children:n});if(e.matrix)i.setMatrix(e.matrix);else{if(i.matrix.identity(),e.translation&&i.matrix.translate(e.translation),e.rotation){var r=(new SO).fromQuaternion(e.rotation);i.matrix.multiplyRight(r)}e.scale&&i.matrix.scale(e.scale)}e._node=i}return e._node}},{key:"createMesh",value:function(e){var t=this;if(!e._mesh){var n=(e.primitives||[]).map(function(n,i){return t.createPrimitive(n,i,e)}),i=new SD({id:e.name||e.id,children:n});e._mesh=i}return e._mesh}},{key:"getVertexCount",value:function(e){Gw.warn("getVertexCount() not found")()}},{key:"createPrimitive",value:function(e,t,n){return function(e,t){var n=t.id,i=t.drawMode,r=t.vertexCount,o=t.attributes,a=t.modelOptions,s=new BD(e,t);Gw.info(4,"createGLTFModel defines: ",s.defines)();var u=[];u.push.apply(u,v(s.generatedTextures)),u.push.apply(u,v(Object.values(o).map(function(e){return e.buffer})));var c=new FD(e,Object.assign({id:n,drawMode:i,vertexCount:r,modules:[kD],defines:s.defines,parameters:s.parameters,vs:VD(e,"\n#if (__VERSION__ < 300)\n #define _attr attribute\n#else\n #define _attr in\n#endif\n\n _attr vec4 POSITION;\n\n #ifdef HAS_NORMALS\n _attr vec4 NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _attr vec4 TANGENT;\n #endif\n\n #ifdef HAS_UV\n _attr vec2 TEXCOORD_0;\n #endif\n\n void main(void) {\n vec4 _NORMAL = vec4(0.);\n vec4 _TANGENT = vec4(0.);\n vec2 _TEXCOORD_0 = vec2(0.);\n\n #ifdef HAS_NORMALS\n _NORMAL = NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _TANGENT = TANGENT;\n #endif\n\n #ifdef HAS_UV\n _TEXCOORD_0 = TEXCOORD_0;\n #endif\n\n pbr_setPositionNormalTangentUV(POSITION, _NORMAL, _TANGENT, _TEXCOORD_0);\n gl_Position = u_MVPMatrix * POSITION;\n }\n"),fs:VD(e,"\n#if (__VERSION__ < 300)\n #define fragmentColor gl_FragColor\n#else\n out vec4 fragmentColor;\n#endif\n\n void main(void) {\n fragmentColor = pbr_filterColor(vec4(0));\n }\n"),managedResources:u},a));return c.setProps({attributes:o}),c.setUniforms(s.uniforms),c}(this.gl,Object.assign({id:e.name||"".concat(n.name||n.id,"-primitive-").concat(t),drawMode:e.mode||4,vertexCount:e.indices?e.indices.count:this.getVertexCount(e.attributes),attributes:this.createAttributes(e.attributes,e.indices),material:e.material},this.options))}},{key:"createAttributes",value:function(e,t){var n=this,i={};return Object.keys(e).forEach(function(t){i[t]=n.createAccessor(e[t],n.createBuffer(e[t],n.gl.ARRAY_BUFFER))}),t&&(i.indices=this.createAccessor(t,this.createBuffer(t,this.gl.ELEMENT_ARRAY_BUFFER))),Gw.info(4,"glTF Attributes",{attributes:e,indices:t,generated:i})(),i}},{key:"createBuffer",value:function(e,t){e.bufferView||(e.bufferView={});var n=e.bufferView;return n.lumaBuffers||(n.lumaBuffers={}),n.lumaBuffers[t]||(n.lumaBuffers[t]=new ux(this.gl,{id:"from-".concat(n.id),data:n.data||e.value,target:t})),n.lumaBuffers[t]}},{key:"createAccessor",value:function(e,t){return new rx({buffer:t,offset:e.byteOffset||0,stride:e.bufferView.byteStride||0,type:e.componentType,size:zD[e.type]})}},{key:"createSampler",value:function(e){return e}},{key:"needsPOT",value:function(){return!1}}]),e}();function GD(e,t,n){if(e.byteLength<=t+n)return"";for(var i=new DataView(e),r="",o=0;o")}}]),i}(ZD,Symbol.toStringTag),lN=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new Map;m(this,e),gA(this,"name",void 0),gA(this,"type",void 0),gA(this,"nullable",void 0),gA(this,"metadata",void 0),this.name=t,this.type=n,this.nullable=i,this.metadata=r}return b(e,[{key:"typeId",get:function(){return this.type&&this.type.typeId}},{key:"clone",value:function(){return new e(this.name,this.type,this.nullable,this.metadata)}},{key:"compareTo",value:function(e){return this.name===e.name&&this.type===e.type&&this.nullable===e.nullable&&this.metadata===e.metadata}},{key:"toString",value:function(){return"".concat(this.type).concat(this.nullable?", nullable":"").concat(this.metadata?", metadata: ".concat(this.metadata):"")}}]),e}();function hN(e,t,n){var i=n?dN(n.metadata):void 0,r=function(e){switch(e.constructor){case Int8Array:return new eN;case Uint8Array:return new iN;case Int16Array:return new tN;case Uint16Array:return new rN;case Int32Array:return new nN;case Uint32Array:return new oN;case Float32Array:return new sN;case Float64Array:return new uN;default:throw new Error("array type not supported")}}(t.value);return new lN(e,new cN(t.size,new lN("value",r)),!1,i)}function dN(e){var t=new Map;for(var n in e)t.set("".concat(n,".string"),JSON.stringify(e[n]));return t}var fN={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},pN={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array},vN=function(){function e(t){m(this,e),gA(this,"draco",void 0),gA(this,"decoder",void 0),gA(this,"metadataQuerier",void 0),this.draco=t,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}return b(e,[{key:"destroy",value:function(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}},{key:"parseSync",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=new this.draco.DecoderBuffer;n.Init(new Int8Array(e),e.byteLength),this._disableAttributeTransforms(t);var i=this.decoder.GetEncodedGeometryType(n),r=i===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{var o;switch(i){case this.draco.TRIANGULAR_MESH:o=this.decoder.DecodeBufferToMesh(n,r);break;case this.draco.POINT_CLOUD:o=this.decoder.DecodeBufferToPointCloud(n,r);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!o.ok()||!r.ptr){var a="DRACO decompression failed: ".concat(o.error_msg());throw new Error(a)}var s=this._getDracoLoaderData(r,i,t),u=this._getMeshData(r,s,t),c=function(e){for(var t=1/0,n=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0,s=e.POSITION?e.POSITION.value:[],u=s&&s.length,c=0;cr?l:r,o=h>o?h:o,a=d>a?d:a}return[[t,n,i],[r,o,a]]}(u.attributes),l=function(e,t,n){var i=dN(t.metadata),r=[],o=function(e){var t={};for(var n in e){var i=e[n];t[i.name||"undefined"]=i}return t}(t.attributes);for(var a in e){var s=hN(a,e[a],o[a]);r.push(s)}if(n){var u=hN("indices",n);r.push(u)}return new $D(r,i)}(u.attributes,s,u.indices);return I(M({loader:"draco",loaderData:s,header:{vertexCount:r.num_points(),boundingBox:c}},u),{schema:l})}finally{this.draco.destroy(n),r&&this.draco.destroy(r)}}},{key:"_getDracoLoaderData",value:function(e,t,n){var i=this._getTopLevelMetadata(e),r=this._getDracoAttributes(e,n);return{geometry_type:t,num_attributes:e.num_attributes(),num_points:e.num_points(),num_faces:e instanceof this.draco.Mesh?e.num_faces():0,metadata:i,attributes:r}}},{key:"_getDracoAttributes",value:function(e,t){for(var n={},i=0;i1&&void 0!==r[1]?r[1]:null,i=r.length>2&&void 0!==r[2]?r[2]:{},n&&(t=_N(t,n,i)),mN[t]=mN[t]||wN(t),e.next=6,mN[t];case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _N(e,t,n){if(e.startsWith("http"))return e;var i=n.modules||{};return i[e]?i[e]:IA?n.CDN?(TA(n.CDN.startsWith("http")),"".concat(n.CDN,"/").concat(t,"@3.0.12/dist/libs/").concat(e)):RA?"../src/libs/".concat(e):"modules/".concat(t,"/src/libs/").concat(e):"modules/".concat(t,"/dist/libs/").concat(e)}function wN(e){return kN.apply(this,arguments)}function kN(){return(kN=xx(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.endsWith("wasm")){e.next=8;break}return e.next=3,fetch(t);case 3:return e.next=5,e.sent.arrayBuffer();case 5:e.t0=e.sent,e.next=31;break;case 8:if(!IA){e.next=24;break}if(!RA){e.next=13;break}e.t2=importScripts(t),e.next=21;break;case 13:return e.t3=xN,e.next=16,fetch(t);case 16:return e.next=18,e.sent.text();case 18:e.t4=e.sent,e.t5=t,e.t2=(0,e.t3)(e.t4,e.t5);case 21:e.t1=e.t2,e.next=30;break;case 24:if(e.t6=gN.requireFromFile,!e.t6){e.next=29;break}return e.next=28,gN.requireFromFile(t);case 28:e.t6=e.sent;case 29:e.t1=e.t6;case 30:e.t0=e.t1;case 31:return e.abrupt("return",e.t0);case 32:case"end":return e.stop()}},e)}))).apply(this,arguments)}function xN(e,t){if(!IA)return gN.requireFromString&&gN.requireFromString(e,t);if(RA)return eval.call(MA,e),null;var n=document.createElement("script");n.id=t;try{n.appendChild(document.createTextNode(e))}catch(i){n.text=e}return document.body.appendChild(n),null}var SN,EN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.js",CN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_wasm_wrapper.js",ON="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.wasm";function TN(e){return AN.apply(this,arguments)}function AN(){return(AN=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.modules||{},SN=n.draco3d?SN||n.draco3d.createDecoderModule({}).then(function(e){return{draco:e}}):SN||PN(t),e.next=4,SN;case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function PN(e){return MN.apply(this,arguments)}function MN(){return(MN=xx(regeneratorRuntime.mark(function e(n){var i,r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=n.draco&&n.draco.decoderType,e.next="js"===e.t0?3:(e.t0,7);break;case 3:return e.next=5,yN(EN,"draco",n);case 5:return i=e.sent,e.abrupt("break",21);case 7:return e.t1=Promise,e.next=10,yN(CN,"draco",n);case 10:return e.t2=e.sent,e.next=13,yN(ON,"draco",n);case 13:return e.t3=e.sent,e.t4=[e.t2,e.t3],e.next=17,e.t1.all.call(e.t1,e.t4);case 17:o=e.sent,a=t(o,2),i=a[0],r=a[1];case 21:return i=i||globalThis.DracoDecoderModule,e.next=24,IN(i,r);case 24:return e.abrupt("return",e.sent);case 25:case"end":return e.stop()}},e)}))).apply(this,arguments)}function IN(e,t){var n={};return t&&(n.wasmBinary=t),new Promise(function(t){e(I(M({},n),{onModuleLoaded:function(e){return t({draco:e})}}))})}var RN=I(M({},KD),{parse:function(e,t){return DN.apply(this,arguments)}});function DN(){return(DN=xx(regeneratorRuntime.mark(function e(t,n){var i,r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,TN(n);case 2:return i=e.sent,r=i.draco,o=new vN(r),e.prev=5,e.abrupt("return",o.parseSync(t,null==n?void 0:n.draco));case 7:return e.prev=7,o.destroy(),e.finish(7);case 10:case"end":return e.stop()}},e,null,[[5,,7,10]])}))).apply(this,arguments)}function NN(e,t){return zT(e>=0),zT(t>0),e+(t-1)&~(t-1)}function LN(e,t,n){var i;return i=e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer||e.arrayBuffer,e.byteOffset,e.byteLength),t.set(i,n),n+NN(i.byteLength,4)}var jN=["SCALAR","VEC2","VEC3","VEC4"],FN=[[Int8Array,5120],[Uint8Array,5121],[Int16Array,5122],[Uint16Array,5123],[Uint32Array,5125],[Float32Array,5126],[Float64Array,5130]],BN=new Map(FN),VN={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},zN={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},UN={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function HN(e){return jN[e-1]||jN[0]}function GN(e){var t=BN.get(e.constructor);if(!t)throw new Error("Illegal typed array");return t}function WN(e,t){var n=UN[e.componentType],i=VN[e.type],r=e.count*i,o=e.count*i*zN[e.componentType];return WD(o>=0&&o<=t.byteLength),{ArrayType:n,length:r,byteLength:o}}var qN={asset:{version:"2.0",generator:"loaders.gl"},buffers:[]},XN=function(){function e(t){m(this,e),gA(this,"gltf",void 0),gA(this,"sourceBuffers",void 0),gA(this,"byteLength",void 0),this.gltf=t||{json:M({},qN),buffers:[]},this.sourceBuffers=[],this.byteLength=0,this.gltf.buffers&&this.gltf.buffers[0]&&(this.byteLength=this.gltf.buffers[0].byteLength,this.sourceBuffers=[this.gltf.buffers[0]])}return b(e,[{key:"json",get:function(){return this.gltf.json}},{key:"getApplicationData",value:function(e){return this.json[e]}},{key:"getExtraData",value:function(e){return(this.json.extras||{})[e]}},{key:"getExtension",value:function(e){return this.getUsedExtensions().find(function(t){return t===e})?(this.json.extensions||{})[e]||!0:null}},{key:"getRequiredExtension",value:function(e){return this.getRequiredExtensions().find(function(t){return t===e})?this.getExtension(e):null}},{key:"getRequiredExtensions",value:function(){return this.json.extensionsRequired||[]}},{key:"getUsedExtensions",value:function(){return this.json.extensionsUsed||[]}},{key:"getObjectExtension",value:function(e,t){return(e.extensions||{})[t]}},{key:"getScene",value:function(e){return this.getObject("scenes",e)}},{key:"getNode",value:function(e){return this.getObject("nodes",e)}},{key:"getSkin",value:function(e){return this.getObject("skins",e)}},{key:"getMesh",value:function(e){return this.getObject("meshes",e)}},{key:"getMaterial",value:function(e){return this.getObject("materials",e)}},{key:"getAccessor",value:function(e){return this.getObject("accessors",e)}},{key:"getTexture",value:function(e){return this.getObject("textures",e)}},{key:"getSampler",value:function(e){return this.getObject("samplers",e)}},{key:"getImage",value:function(e){return this.getObject("images",e)}},{key:"getBufferView",value:function(e){return this.getObject("bufferViews",e)}},{key:"getBuffer",value:function(e){return this.getObject("buffers",e)}},{key:"getObject",value:function(e,t){if("object"==typeof t)return t;var n=this.json[e]&&this.json[e][t];if(!n)throw new Error("glTF file error: Could not find ".concat(e,"[").concat(t,"]"));return n}},{key:"getTypedArrayForBufferView",value:function(e){e=this.getBufferView(e);var t=this.gltf.buffers[e.buffer];return WD(t),new Uint8Array(t.arrayBuffer,(e.byteOffset||0)+t.byteOffset,e.byteLength)}},{key:"getTypedArrayForAccessor",value:function(e){e=this.getAccessor(e);var t=this.getBufferView(e.bufferView),n=this.getBuffer(t.buffer).data,i=WN(e,t),r=i.ArrayType,o=i.length;return new r(n,t.byteOffset+e.byteOffset,o)}},{key:"getTypedArrayForImageData",value:function(e){e=this.getAccessor(e);var t=this.getBufferView(e.bufferView),n=this.getBuffer(t.buffer).data;return new Uint8Array(n,t.byteOffset||0,t.byteLength)}},{key:"addApplicationData",value:function(e,t){return this.json[e]=t,this}},{key:"addExtraData",value:function(e,t){return this.json.extras=this.json.extras||{},this.json.extras[e]=t,this}},{key:"addObjectExtension",value:function(e,t,n){return e.extensions=e.extensions||{},e.extensions[t]=n,this.registerUsedExtension(t),this}},{key:"setObjectExtension",value:function(e,t,n){(e.extensions||{})[t]=n}},{key:"removeObjectExtension",value:function(e,t){var n=e.extensions||{},i=n[t];return delete n[t],i}},{key:"addExtension",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return WD(t),this.json.extensions=this.json.extensions||{},this.json.extensions[e]=t,this.registerUsedExtension(e),t}},{key:"addRequiredExtension",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return WD(t),this.addExtension(e,t),this.registerRequiredExtension(e),t}},{key:"registerUsedExtension",value:function(e){this.json.extensionsUsed=this.json.extensionsUsed||[],this.json.extensionsUsed.find(function(t){return t===e})||this.json.extensionsUsed.push(e)}},{key:"registerRequiredExtension",value:function(e){this.registerUsedExtension(e),this.json.extensionsRequired=this.json.extensionsRequired||[],this.json.extensionsRequired.find(function(t){return t===e})||this.json.extensionsRequired.push(e)}},{key:"removeExtension",value:function(e){this.json.extensionsRequired&&this._removeStringFromArray(this.json.extensionsRequired,e),this.json.extensionsUsed&&this._removeStringFromArray(this.json.extensionsUsed,e),this.json.extensions&&delete this.json.extensions[e]}},{key:"setDefaultScene",value:function(e){this.json.scene=e}},{key:"addScene",value:function(e){var t=e.nodeIndices;return this.json.scenes=this.json.scenes||[],this.json.scenes.push({nodes:t}),this.json.scenes.length-1}},{key:"addNode",value:function(e){var t=e.meshIndex,n=e.matrix;this.json.nodes=this.json.nodes||[];var i={mesh:t};return n&&(i.matrix=n),this.json.nodes.push(i),this.json.nodes.length-1}},{key:"addMesh",value:function(e){var t=e.attributes,n=e.indices,i=e.material,r=e.mode,o=void 0===r?4:r,a={primitives:[{attributes:this._addAttributes(t),mode:o}]};if(n){var s=this._addIndices(n);a.primitives[0].indices=s}return Number.isFinite(i)&&(a.primitives[0].material=i),this.json.meshes=this.json.meshes||[],this.json.meshes.push(a),this.json.meshes.length-1}},{key:"addPointCloud",value:function(e){var t={primitives:[{attributes:this._addAttributes(e),mode:0}]};return this.json.meshes=this.json.meshes||[],this.json.meshes.push(t),this.json.meshes.length-1}},{key:"addImage",value:function(e,t){var n=JI(e),i=t||(null==n?void 0:n.mimeType),r={bufferView:this.addBufferView(e),mimeType:i};return this.json.images=this.json.images||[],this.json.images.push(r),this.json.images.length-1}},{key:"addBufferView",value:function(e){var t=e.byteLength;WD(Number.isFinite(t)),this.sourceBuffers=this.sourceBuffers||[],this.sourceBuffers.push(e);var n={buffer:0,byteOffset:this.byteLength,byteLength:t};return this.byteLength+=NN(t,4),this.json.bufferViews=this.json.bufferViews||[],this.json.bufferViews.push(n),this.json.bufferViews.length-1}},{key:"addAccessor",value:function(e,t){var n={bufferView:e,type:HN(t.size),componentType:t.componentType,count:t.count,max:t.max,min:t.min};return this.json.accessors=this.json.accessors||[],this.json.accessors.push(n),this.json.accessors.length-1}},{key:"addBinaryBuffer",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{size:3},n=this.addBufferView(e),i={min:t.min,max:t.max};(!i.min||!i.max)&&(i=this._getAccessorMinMax(e,t.size));var r={size:t.size,componentType:GN(e),count:Math.round(e.length/t.size),min:i.min,max:i.max};return this.addAccessor(n,Object.assign(r,t))}},{key:"addTexture",value:function(e){var t={source:e.imageIndex};return this.json.textures=this.json.textures||[],this.json.textures.push(t),this.json.textures.length-1}},{key:"addMaterial",value:function(e){return this.json.materials=this.json.materials||[],this.json.materials.push(e),this.json.materials.length-1}},{key:"createBinaryChunk",value:function(){var e,t;this.gltf.buffers=[];var n,i=this.byteLength,r=new ArrayBuffer(i),o=new Uint8Array(r),a=0,s=_(this.sourceBuffers||[]);try{for(s.s();!(n=s.n()).done;){a=LN(n.value,o,a)}}catch(u){s.e(u)}finally{s.f()}null!==(e=this.json)&&void 0!==e&&null!==(t=e.buffers)&&void 0!==t&&t[0]?this.json.buffers[0].byteLength=i:this.json.buffers=[{byteLength:i}],this.gltf.binary=r,this.sourceBuffers=[r]}},{key:"_removeStringFromArray",value:function(e,t){for(var n=!0;n;){var i=e.indexOf(t);i>-1?e.splice(i,1):n=!1}}},{key:"_addAttributes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={};for(var n in e){var i=e[n],r=this._getGltfAttributeName(n),o=this.addBinaryBuffer(i.value,i);t[r]=o}return t}},{key:"_addIndices",value:function(e){return this.addBinaryBuffer(e,{size:1})}},{key:"_getGltfAttributeName",value:function(e){switch(e.toLowerCase()){case"position":case"positions":case"vertices":return"POSITION";case"normal":case"normals":return"NORMAL";case"color":case"colors":return"COLOR_0";case"texcoord":case"texcoords":return"TEXCOORD_0";default:return e}}},{key:"_getAccessorMinMax",value:function(e,t){var n={min:null,max:null};if(e.length2&&void 0!==arguments[2]&&arguments[2];return e?Array.isArray(e)?new t(e):!n||e instanceof t?e:new t(e):null}(t,Float32Array)),i=t.length/n),{buffer:t,size:n,count:i}}(e),n=t.buffer,i=t.size;return{value:n,size:i,byteOffset:0,count:t.count,type:HN(i),componentType:GN(n)}}function tL(e,t,n){return nL.apply(this,arguments)}function nL(){return(nL=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=n&&null!==(r=n.gltf)&&void 0!==r&&r.decompressMeshes){e.next=2;break}return e.abrupt("return");case 2:o=new XN(t),a=[],s=_(uL(o));try{for(s.s();!(u=s.n()).done;)c=u.value,o.getObjectExtension(c,KN)&&a.push(rL(o,c,n,i))}catch(l){s.e(l)}finally{s.f()}return e.next=7,Promise.all(a);case 7:o.removeExtension(KN);case 8:case"end":return e.stop()}},e)}))).apply(this,arguments)}function iL(e){var t,n=new XN(e),i=_(n.json.meshes||[]);try{for(i.s();!(t=i.n()).done;){var r=t.value;aL(r),n.addRequiredExtension(KN)}}catch(o){i.e(o)}finally{i.f()}}function rL(e,t,n,i){return oL.apply(this,arguments)}function oL(){return(oL=xx(regeneratorRuntime.mark(function e(n,i,r,o){var a,s,u,c,l,h,d,f,p,v,g,m,y;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(a=n.getObjectExtension(i,KN)){e.next=3;break}return e.abrupt("return");case 3:return s=n.getTypedArrayForBufferView(a.bufferView),u=tP(s.buffer,s.byteOffset),c=o.parse,delete(l=M({},r))["3d-tiles"],e.next=7,c(u,RN,l,o);case 7:for(h=e.sent,d=JN(h.attributes),f=0,p=Object.entries(d);f2&&void 0!==arguments[2]?arguments[2]:4,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;if(!r.DracoWriter)throw new Error("options.gltf.DracoWriter not provided");var s=r.DracoWriter.encodeSync({attributes:e}),u=null==a||null===(n=a.parseSync)||void 0===n?void 0:n.call(a,{attributes:e}),c=r._addFauxAttributes(u.attributes),l=r.addBufferView(s);return{primitives:[{attributes:c,mode:i,extensions:o({},KN,{bufferView:l,attributes:c})}]}}function sL(e){if(!e.attributes&&Object.keys(e.attributes).length>0)throw new Error("glTF: Empty primitive detected: Draco decompression failure?")}function uL(e){var t,n,i,r,o,a;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:t=_(e.json.meshes||[]),s.prev=1,t.s();case 3:if((n=t.n()).done){s.next=24;break}i=n.value,r=_(i.primitives),s.prev=6,r.s();case 8:if((o=r.n()).done){s.next=14;break}return a=o.value,s.next=12,a;case 12:s.next=8;break;case 14:s.next=19;break;case 16:s.prev=16,s.t0=s.catch(6),r.e(s.t0);case 19:return s.prev=19,r.f(),s.finish(19);case 22:s.next=3;break;case 24:s.next=29;break;case 26:s.prev=26,s.t1=s.catch(1),t.e(s.t1);case 29:return s.prev=29,t.f(),s.finish(29);case 32:case"end":return s.stop()}},O,null,[[1,26,29,32],[6,16,19,22]])}function cL(e){return lL.apply(this,arguments)}function lL(){return(lL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=new XN(t),i=n.json,n.removeExtension(QN),r=_(i.materials||[]);try{for(r.s();!(o=r.n()).done;)(a=o.value).extensions&&a.extensions.KHR_materials_unlit&&(a.unlit=!0),n.removeObjectExtension(a,QN)}catch(s){r.e(s)}finally{r.f()}case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function hL(e){var t=new XN(e),n=t.json;if(t.materials){var i,r=_(n.materials||[]);try{for(r.s();!(i=r.n()).done;){var o=i.value;o.unlit&&(delete o.unlit,t.addObjectExtension(o,QN,{}),t.addExtension(QN))}}catch(a){r.e(a)}finally{r.f()}}}function dL(e){return fL.apply(this,arguments)}function fL(){return(fL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=new XN(t),i=n.json,(r=n.getExtension($N))&&(n.json.lights=r.lights,n.removeExtension($N)),o=_(i.nodes||[]);try{for(o.s();!(a=o.n()).done;)s=a.value,(u=n.getObjectExtension(s,$N))&&(s.light=u.light),n.removeObjectExtension(s,$N)}catch(c){o.e(c)}finally{o.f()}case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function pL(e){return vL.apply(this,arguments)}function vL(){return(vL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=new XN(t),(i=n.json).lights&&(WD(!(r=n.addExtension($N)).lights),r.lights=i.lights,delete i.lights),n.json.lights){o=_(n.json.lights);try{for(o.s();!(a=o.n()).done;)s=a.value,n.addObjectExtension(s.node,$N,s)}catch(u){o.e(u)}finally{o.f()}delete n.json.lights}case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function gL(e){return mL.apply(this,arguments)}function mL(){return(mL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=new XN(t),i=n.json,r=n.getExtension(ZN)){o=_L(r,n),a=_(i.materials||[]);try{for(a.s();!(s=a.n()).done;)u=s.value,(c=n.getObjectExtension(u,ZN))&&(u.technique=Object.assign({},c,o[c.technique]),u.technique.values=wL(u.technique,n)),n.removeObjectExtension(u,ZN)}catch(l){a.e(l)}finally{a.f()}n.removeExtension(ZN)}case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function yL(e,t){return bL.apply(this,arguments)}function bL(){return(bL=xx(regeneratorRuntime.mark(function e(t,n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _L(e,t){var n=e.programs,i=void 0===n?[]:n,r=e.shaders,o=void 0===r?[]:r,a=e.techniques,s=void 0===a?[]:a,u=new TextDecoder;return o.forEach(function(e){if(!Number.isFinite(e.bufferView))throw new Error("KHR_techniques_webgl: no shader code");e.code=u.decode(t.getTypedArrayForBufferView(e.bufferView))}),i.forEach(function(e){e.fragmentShader=o[e.fragmentShader],e.vertexShader=o[e.vertexShader]}),s.forEach(function(e){e.program=i[e.program]}),s}function wL(e,t){var n=Object.assign({},e.values);return Object.keys(e.uniforms||{}).forEach(function(t){e.uniforms[t].value&&!(t in n)&&(n[t]=e.uniforms[t].value)}),Object.keys(n).forEach(function(e){"object"==typeof n[e]&&void 0!==n[e].index&&(n[e].texture=t.getTexture(n[e].index))}),n}var kL={KHR_draco_mesh_compression:T,KHR_materials_unlit:P,KHR_lights_punctual:R,KHR_techniques_webgl:D};function xL(e){return SL.apply(this,arguments)}function SL(){return(SL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=s.length>1&&void 0!==s[1]?s[1]:{},i=s.length>2?s[2]:void 0,e.t0=regeneratorRuntime.keys(kL);case 3:if((e.t1=e.t0()).done){e.next=12;break}if(r=e.t1.value,a=(null==n||null===(o=n.gltf)||void 0===o?void 0:o.excludeExtensions)||{},e.t2=r in a&&!a[r],e.t2){e.next=10;break}return e.next=10,kL[r].decode(t,n,i);case 10:e.next=3;break;case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}var EL={accessors:"accessor",animations:"animation",buffers:"buffer",bufferViews:"bufferView",images:"image",materials:"material",meshes:"mesh",nodes:"node",samplers:"sampler",scenes:"scene",skins:"skin",textures:"texture"},CL={accessor:"accessors",animations:"animation",buffer:"buffers",bufferView:"bufferViews",image:"images",material:"materials",mesh:"meshes",node:"nodes",sampler:"samplers",scene:"scenes",skin:"skins",texture:"textures"},OL=function(){function e(t){m(this,e),this.idToIndexMap={animations:{},accessors:{},buffers:{},bufferViews:{},images:{},materials:{},meshes:{},nodes:{},samplers:{},scenes:{},skins:{},textures:{}}}return b(e,[{key:"normalize",value:function(e,t){this.json=e.json;var n=e.json;switch(n.asset&&n.asset.version){case"2.0":return;case void 0:case"1.0":break;default:return void console.warn("glTF: Unknown version ".concat(n.asset.version))}if(!t.normalize)throw new Error("glTF v1 is not supported.");console.warn("Converting glTF v1 to glTF v2 format. This is experimental and may fail."),this._addAsset(n),this._convertTopLevelObjectsToArrays(n),function(e){var t,n=new XN(e),i=n.json,r=_(i.images||[]);try{for(r.s();!(t=r.n()).done;){var o=t.value,a=n.removeObjectExtension(o,YN);a&&Object.assign(o,a)}}catch(s){r.e(s)}finally{r.f()}i.buffers&&i.buffers[0]&&delete i.buffers[0].uri,n.removeExtension(YN)}(e),this._convertObjectIdsToArrayIndices(n),this._updateObjects(n),this._updateMaterial(n)}},{key:"_addAsset",value:function(e){e.asset=e.asset||{},e.asset.version="2.0",e.asset.generator=e.asset.generator||"Normalized to glTF 2.0 by loaders.gl"}},{key:"_convertTopLevelObjectsToArrays",value:function(e){for(var t in EL)this._convertTopLevelObjectToArray(e,t)}},{key:"_convertTopLevelObjectToArray",value:function(e,t){var n=e[t];if(n&&!Array.isArray(n))for(var i in e[t]=[],n){var r=n[i];r.id=r.id||i;var o=e[t].length;e[t].push(r),this.idToIndexMap[t][i]=o}}},{key:"_convertObjectIdsToArrayIndices",value:function(e){for(var t in EL)this._convertIdsToIndices(e,t);"scene"in e&&(e.scene=this._convertIdToIndex(e.scene,"scene"));var n,i=_(e.textures);try{for(i.s();!(n=i.n()).done;){var r=n.value;this._convertTextureIds(r)}}catch(p){i.e(p)}finally{i.f()}var o,a=_(e.meshes);try{for(a.s();!(o=a.n()).done;){var s=o.value;this._convertMeshIds(s)}}catch(p){a.e(p)}finally{a.f()}var u,c=_(e.nodes);try{for(c.s();!(u=c.n()).done;){var l=u.value;this._convertNodeIds(l)}}catch(p){c.e(p)}finally{c.f()}var h,d=_(e.scenes);try{for(d.s();!(h=d.n()).done;){var f=h.value;this._convertSceneIds(f)}}catch(p){d.e(p)}finally{d.f()}}},{key:"_convertTextureIds",value:function(e){e.source&&(e.source=this._convertIdToIndex(e.source,"image"))}},{key:"_convertMeshIds",value:function(e){var t,n=_(e.primitives);try{for(n.s();!(t=n.n()).done;){var i=t.value,r=i.attributes,o=i.indices,a=i.material;for(var s in r)r[s]=this._convertIdToIndex(r[s],"accessor");o&&(i.indices=this._convertIdToIndex(o,"accessor")),a&&(i.material=this._convertIdToIndex(a,"material"))}}catch(u){n.e(u)}finally{n.f()}}},{key:"_convertNodeIds",value:function(e){var t=this;e.children&&(e.children=e.children.map(function(e){return t._convertIdToIndex(e,"node")})),e.meshes&&(e.meshes=e.meshes.map(function(e){return t._convertIdToIndex(e,"mesh")}))}},{key:"_convertSceneIds",value:function(e){var t=this;e.nodes&&(e.nodes=e.nodes.map(function(e){return t._convertIdToIndex(e,"node")}))}},{key:"_convertIdsToIndices",value:function(e,t){e[t]||(console.warn("gltf v1: json doesn't contain attribute ".concat(t)),e[t]=[]);var n,i=_(e[t]);try{for(i.s();!(n=i.n()).done;){var r=n.value;for(var o in r){var a=this._convertIdToIndex(r[o],o);r[o]=a}}}catch(s){i.e(s)}finally{i.f()}}},{key:"_convertIdToIndex",value:function(e,t){var n=CL[t];if(n in this.idToIndexMap){var i=this.idToIndexMap[n][e];if(!Number.isFinite(i))throw new Error("gltf v1: failed to resolve ".concat(t," with id ").concat(e));return i}return e}},{key:"_updateObjects",value:function(e){var t,n=_(this.json.buffers);try{for(n.s();!(t=n.n()).done;){delete t.value.type}}catch(i){n.e(i)}finally{n.f()}}},{key:"_updateMaterial",value:function(e){var t,n=_(e.materials);try{var i=function(){var n=t.value;n.pbrMetallicRoughness={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1};var i=n.values&&n.values.tex,r=e.textures.findIndex(function(e){return e.id===i});-1!==r&&(n.pbrMetallicRoughness.baseColorTexture={index:r})};for(n.s();!(t=n.n()).done;)i()}catch(r){n.e(r)}finally{n.f()}}}]),e}();function TL(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(new OL).normalize(e,t)}var AL={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},PL={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},ML={TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,REPEAT:10497,LINEAR:9729,NEAREST_MIPMAP_LINEAR:9986},IL={magFilter:ML.TEXTURE_MAG_FILTER,minFilter:ML.TEXTURE_MIN_FILTER,wrapS:ML.TEXTURE_WRAP_S,wrapT:ML.TEXTURE_WRAP_T},RL=(o(k={},ML.TEXTURE_MAG_FILTER,ML.LINEAR),o(k,ML.TEXTURE_MIN_FILTER,ML.NEAREST_MIPMAP_LINEAR),o(k,ML.TEXTURE_WRAP_S,ML.REPEAT),o(k,ML.TEXTURE_WRAP_,ML.REPEAT),k),DL=function(){function e(){m(this,e)}return b(e,[{key:"postProcess",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.json,i=e.buffers,r=void 0===i?[]:i,o=e.images,a=void 0===o?[]:o,s=e.baseUri,u=void 0===s?"":s;return WD(n),this.baseUri=u,this.json=n,this.buffers=r,this.images=a,this._resolveTree(this.json,t),this.json}},{key:"_resolveTree",value:function(e){var t=this;e.bufferViews&&(e.bufferViews=e.bufferViews.map(function(e,n){return t._resolveBufferView(e,n)})),e.images&&(e.images=e.images.map(function(e,n){return t._resolveImage(e,n)})),e.samplers&&(e.samplers=e.samplers.map(function(e,n){return t._resolveSampler(e,n)})),e.textures&&(e.textures=e.textures.map(function(e,n){return t._resolveTexture(e,n)})),e.accessors&&(e.accessors=e.accessors.map(function(e,n){return t._resolveAccessor(e,n)})),e.materials&&(e.materials=e.materials.map(function(e,n){return t._resolveMaterial(e,n)})),e.meshes&&(e.meshes=e.meshes.map(function(e,n){return t._resolveMesh(e,n)})),e.nodes&&(e.nodes=e.nodes.map(function(e,n){return t._resolveNode(e,n)})),e.skins&&(e.skins=e.skins.map(function(e,n){return t._resolveSkin(e,n)})),e.scenes&&(e.scenes=e.scenes.map(function(e,n){return t._resolveScene(e,n)})),void 0!==e.scene&&(e.scene=e.scenes[this.json.scene])}},{key:"getScene",value:function(e){return this._get("scenes",e)}},{key:"getNode",value:function(e){return this._get("nodes",e)}},{key:"getSkin",value:function(e){return this._get("skins",e)}},{key:"getMesh",value:function(e){return this._get("meshes",e)}},{key:"getMaterial",value:function(e){return this._get("materials",e)}},{key:"getAccessor",value:function(e){return this._get("accessors",e)}},{key:"getCamera",value:function(e){return null}},{key:"getTexture",value:function(e){return this._get("textures",e)}},{key:"getSampler",value:function(e){return this._get("samplers",e)}},{key:"getImage",value:function(e){return this._get("images",e)}},{key:"getBufferView",value:function(e){return this._get("bufferViews",e)}},{key:"getBuffer",value:function(e){return this._get("buffers",e)}},{key:"_get",value:function(e,t){if("object"==typeof t)return t;var n=this.json[e]&&this.json[e][t];return n||console.warn("glTF file error: Could not find ".concat(e,"[").concat(t,"]")),n}},{key:"_resolveScene",value:function(e,t){var n=this;return e.id=e.id||"scene-".concat(t),e.nodes=(e.nodes||[]).map(function(e){return n.getNode(e)}),e}},{key:"_resolveNode",value:function(e,t){var n=this;return e.id=e.id||"node-".concat(t),e.children&&(e.children=e.children.map(function(e){return n.getNode(e)})),void 0!==e.mesh?e.mesh=this.getMesh(e.mesh):void 0!==e.meshes&&e.meshes.length&&(e.mesh=e.meshes.reduce(function(e,t){var i=n.getMesh(t);return e.id=i.id,e.primitives=e.primitives.concat(i.primitives),e},{primitives:[]})),void 0!==e.camera&&(e.camera=this.getCamera(e.camera)),void 0!==e.skin&&(e.skin=this.getSkin(e.skin)),e}},{key:"_resolveSkin",value:function(e,t){return e.id=e.id||"skin-".concat(t),e.inverseBindMatrices=this.getAccessor(e.inverseBindMatrices),e}},{key:"_resolveMesh",value:function(e,t){var n=this;return e.id=e.id||"mesh-".concat(t),e.primitives&&(e.primitives=e.primitives.map(function(e){var t=(e=M({},e)).attributes;for(var i in e.attributes={},t)e.attributes[i]=n.getAccessor(t[i]);return void 0!==e.indices&&(e.indices=n.getAccessor(e.indices)),void 0!==e.material&&(e.material=n.getMaterial(e.material)),e})),e}},{key:"_resolveMaterial",value:function(e,t){if(e.id=e.id||"material-".concat(t),e.normalTexture&&(e.normalTexture=M({},e.normalTexture),e.normalTexture.texture=this.getTexture(e.normalTexture.index)),e.occlusionTexture&&(e.occlustionTexture=M({},e.occlustionTexture),e.occlusionTexture.texture=this.getTexture(e.occlusionTexture.index)),e.emissiveTexture&&(e.emmisiveTexture=M({},e.emmisiveTexture),e.emissiveTexture.texture=this.getTexture(e.emissiveTexture.index)),e.emissiveFactor||(e.emissiveFactor=e.emmisiveTexture?[1,1,1]:[0,0,0]),e.pbrMetallicRoughness){e.pbrMetallicRoughness=M({},e.pbrMetallicRoughness);var n=e.pbrMetallicRoughness;n.baseColorTexture&&(n.baseColorTexture=M({},n.baseColorTexture),n.baseColorTexture.texture=this.getTexture(n.baseColorTexture.index)),n.metallicRoughnessTexture&&(n.metallicRoughnessTexture=M({},n.metallicRoughnessTexture),n.metallicRoughnessTexture.texture=this.getTexture(n.metallicRoughnessTexture.index))}return e}},{key:"_resolveAccessor",value:function(e,t){if(e.id=e.id||"accessor-".concat(t),void 0!==e.bufferView&&(e.bufferView=this.getBufferView(e.bufferView)),e.bytesPerComponent=function(e){return PL[e]}(e.componentType),e.components=function(e){return AL[e]}(e.type),e.bytesPerElement=e.bytesPerComponent*e.components,e.bufferView){var n=e.bufferView.buffer,i=WN(e,e.bufferView),r=i.ArrayType,o=i.byteLength,a=(e.bufferView.byteOffset||0)+(e.byteOffset||0)+n.byteOffset,s=n.arrayBuffer.slice(a,a+o);e.value=new r(s)}return e}},{key:"_resolveTexture",value:function(e,t){return e.id=e.id||"texture-".concat(t),e.sampler="sampler"in e?this.getSampler(e.sampler):RL,e.source=this.getImage(e.source),e}},{key:"_resolveSampler",value:function(e,t){for(var n in e.id=e.id||"sampler-".concat(t),e.parameters={},e){var i=this._enumSamplerParameter(n);void 0!==i&&(e.parameters[i]=e[n])}return e}},{key:"_enumSamplerParameter",value:function(e){return IL[e]}},{key:"_resolveImage",value:function(e,t){e.id=e.id||"image-".concat(t),void 0!==e.bufferView&&(e.bufferView=this.getBufferView(e.bufferView));var n=this.images[t];return n&&(e.image=n),e}},{key:"_resolveBufferView",value:function(e,t){e.id=e.id||"bufferView-".concat(t);var n=e.buffer;e.buffer=this.buffers[n];var i=this.buffers[n].byteOffset||0;return"byteOffset"in e&&(i+=e.byteOffset),e.data=new Uint8Array(this.buffers[n].arrayBuffer,i,e.byteLength),e}},{key:"_resolveCamera",value:function(e,t){return e.id=e.id||"camera-".concat(t),e}}]),e}();function NL(e,t){return(new DL).postProcess(e,t)}var LL=1735152710,jL=!0;function FL(e,t,n,i){var r=new Uint8Array(t.buffer,n,i),o=new TextDecoder("utf8").decode(r);return e.json=JSON.parse(o),NN(i,4)}function BL(e,t,n,i){return e.header.hasBinChunk=!0,e.binChunks.push({byteOffset:n,byteLength:i,arrayBuffer:t.buffer}),NN(i,4)}function VL(e,t){return zL.apply(this,arguments)}function zL(){return(zL=xx(regeneratorRuntime.mark(function e(t,n){var i,r,o,a,s,u,c,l,h,d,f=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(i=f.length>2&&void 0!==f[2]?f[2]:0,r=f.length>3?f[3]:void 0,o=f.length>4?f[4]:void 0,UL(t,n,i,r),TL(t,{normalize:null==r||null===(a=r.gltf)||void 0===a?void 0:a.normalize}),l=[],e.t0=null!=r&&null!==(s=r.gltf)&&void 0!==s&&s.loadBuffers&&t.json.buffers,!e.t0){e.next=9;break}return e.next=9,HL(t,r,o);case 9:if(null==r||null===(u=r.gltf)||void 0===u||!u.loadImages){e.next=12;break}h=WL(t,r,o),l.push(h);case 12:return d=xL(t,r,o),l.push(d),e.next=16,Promise.all(l);case 16:return e.abrupt("return",null!=r&&null!==(c=r.gltf)&&void 0!==c&&c.postProcess?NL(t,r):t);case 17:case"end":return e.stop()}},e)}))).apply(this,arguments)}function UL(e,t,n,i){if(i.uri&&(e.baseUri=i.uri),t instanceof ArrayBuffer&&!function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=new DataView(e),r=n.magic,o=void 0===r?LL:r,a=i.getUint32(t,!1);return a===o||a===LL}(t,n,i)&&(t=(new TextDecoder).decode(t)),"string"==typeof t)e.json=function(e){try{return JSON.parse(e)}catch(t){throw new Error('Failed to parse JSON from data starting with "'.concat(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5;return"string"==typeof e?e.slice(0,t):ArrayBuffer.isView(e)?GD(e.buffer,e.byteOffset,t):e instanceof ArrayBuffer?GD(e,0,t):""}(e),'"'))}}(t);else if(t instanceof ArrayBuffer){var r={};n=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=new DataView(t),r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return"".concat(String.fromCharCode(e.getUint8(t+0))).concat(String.fromCharCode(e.getUint8(t+1))).concat(String.fromCharCode(e.getUint8(t+2))).concat(String.fromCharCode(e.getUint8(t+3)))}(i,n+0),o=i.getUint32(n+4,jL),a=i.getUint32(n+8,jL);switch(Object.assign(e,{header:{byteOffset:n,byteLength:a,hasBinChunk:!1},type:r,version:o,json:{},binChunks:[]}),n+=12,e.version){case 1:return function(e,t,n){zT(e.header.byteLength>20);var i=t.getUint32(n+0,jL),r=t.getUint32(n+4,jL);return n+=8,zT(0===r),FL(e,t,n,i),(n+=i)+BL(e,t,n,e.header.byteLength)}(e,i,n);case 2:return function(e,t,n,i){return zT(e.header.byteLength>20),function(e,t,n,i){for(;n+8<=e.header.byteLength;){var r=t.getUint32(n+0,jL),o=t.getUint32(n+4,jL);switch(n+=8,o){case 1313821514:FL(e,t,n,r);break;case 5130562:BL(e,t,n,r);break;case 0:i.strict||FL(e,t,n,r);break;case 1:i.strict||BL(e,t,n,r)}n+=NN(r,4)}}(e,t,n,{}),n+e.header.byteLength}(e,i,n);default:throw new Error("Invalid GLB version ".concat(e.version,". Only supports v1 and v2."))}}(r,t,n,i.glb),WD("glTF"===r.type,"Invalid GLB magic string ".concat(r.type)),e._glb=r,e.json=r.json}else WD(!1,"GLTF: must be ArrayBuffer or string");if(e.buffers=new Array((e.json.buffers||[]).length).fill(null),e._glb&&e._glb.header.hasBinChunk){var o=e._glb.binChunks;e.buffers[0]={arrayBuffer:o[0].arrayBuffer,byteOffset:o[0].byteOffset,byteLength:o[0].byteLength}}e.images=new Array((e.json.images||[]).length).fill({})}function HL(e,t,n){return GL.apply(this,arguments)}function GL(){return(GL=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:r=0;case 1:if(!(r1&&void 0!==a[1]?a[1]:{},i=a.length>2?a[2]:void 0,(n=M(M({},KL.options),n)).gltf=M(M({},KL.options.gltf),n.gltf),r=n.byteOffset,o=void 0===r?0:r,e.next=6,VL({},t,o,n,i);case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}},e)}))).apply(this,arguments)}function QL(){return(QL=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=[],t.scenes.forEach(function(e){e.traverse(function(e){Object.values(e.model.getUniforms()).forEach(function(e){!1===e.loaded&&n.push(e)})})}),e.next=4,ZL(function(){return n.some(function(e){return!e.loaded})});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ZL(e){return JL.apply(this,arguments)}function JL(){return(JL=xx(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t()){e.next=5;break}return e.next=3,new Promise(function(e){return requestAnimationFrame(e)});case 3:e.next=0;break;case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}var ej=[255,255,255,255],tj={scenegraph:{type:"object",value:null,async:!0},getScene:function(e){return e&&e.scenes?"object"==typeof e.scene?e.scene:e.scenes[e.scene||0]:e},getAnimator:function(e){return e&&e.animator},_animations:null,sizeScale:{type:"number",value:1,min:0},sizeMinPixels:{type:"number",min:0,value:0},sizeMaxPixels:{type:"number",min:0,value:Number.MAX_SAFE_INTEGER},getPosition:{type:"accessor",value:function(e){return e.position}},getColor:{type:"accessor",value:ej},_lighting:"flat",_imageBasedLightingEnvironment:null,getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]},loaders:[KL]},nj=function(){var t=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"getShaders",value:function(){var e=[eD,uD];return"pbr"===this.props._lighting&&e.push(kD),{vs:"#version 300 es\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nuniform float sizeScale;\nuniform float sizeMinPixels;\nuniform float sizeMaxPixels;\nuniform mat4 sceneModelMatrix;\nuniform bool composeModelMatrix;\nin vec4 POSITION;\n\n#ifdef HAS_UV\n in vec2 TEXCOORD_0;\n#endif\n\n#ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n in vec4 NORMAL;\n #endif\n#endif\nout vec4 vColor;\n#ifndef MODULE_PBR\n #ifdef HAS_UV\n out vec2 vTEXCOORD_0;\n #endif\n#endif\nvoid main(void) {\n #if defined(HAS_UV) && !defined(MODULE_PBR)\n vTEXCOORD_0 = TEXCOORD_0;\n geometry.uv = vTEXCOORD_0;\n #endif\n\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n\n #ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n pbr_vNormal = project_normal(instanceModelMatrix * (sceneModelMatrix * vec4(NORMAL.xyz, 0.0)).xyz);\n geometry.normal = pbr_vNormal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV = TEXCOORD_0;\n #else\n pbr_vUV = vec2(0., 0.);\n #endif\n geometry.uv = pbr_vUV;\n #endif\n\n float originalSize = project_size_to_pixel(sizeScale);\n float clampedSize = clamp(originalSize, sizeMinPixels, sizeMaxPixels);\n\n vec3 pos = (instanceModelMatrix * (sceneModelMatrix * POSITION).xyz) * sizeScale * (clampedSize / originalSize) + instanceTranslation;\n if(composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), geometry.position);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, geometry.position);\n }\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBR\n pbr_vPosition = geometry.position.xyz;\n #endif\n\n vColor = instanceColors;\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\nuniform float opacity;\nin vec4 vColor;\n\nout vec4 fragmentColor;\n#ifndef MODULE_PBR\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n in vec2 vTEXCOORD_0;\n uniform sampler2D u_BaseColorSampler;\n #endif\n#endif\n\nvoid main(void) {\n #ifdef MODULE_PBR\n fragmentColor = vColor * pbr_filterColor(vec4(0));\n geometry.uv = pbr_vUV;\n #else\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n fragmentColor = vColor * texture2D(u_BaseColorSampler, vTEXCOORD_0);\n geometry.uv = vTEXCOORD_0;\n #else\n fragmentColor = vColor;\n #endif\n #endif\n\n fragmentColor.a *= opacity;\n DECKGL_FILTER_COLOR(fragmentColor, geometry);\n}\n",modules:e}}},{key:"initializeState",value:function(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:5130,fp64:this.use64bitPositions(),accessor:"getPosition",transition:!0},instanceColors:{type:5121,size:this.props.colorFormat.length,accessor:"getColor",normalized:!0,defaultValue:ej,transition:!0},instanceModelMatrix:gD})}},{key:"updateState",value:function(t){e(p(i.prototype),"updateState",this).call(this,t);var n=t.props,r=t.oldProps;n.scenegraph!==r.scenegraph?this._updateScenegraph(n):n._animations!==r._animations&&this._applyAnimationsProp(this.state.scenegraph,this.state.animator,n._animations)}},{key:"finalizeState",value:function(){e(p(i.prototype),"finalizeState",this).call(this),this._deleteScenegraph()}},{key:"_updateScenegraph",value:function(e){var t=this,n=this.context.gl,i=null;if(e.scenegraph instanceof xD)i={scenes:[e.scenegraph]};else if(e.scenegraph&&!e.scenegraph.gltf){var r=e.scenegraph,o=function(e,t,n){var i=new HD(e,n);return{scenes:i.instantiate(t),animator:i.createAnimator()}}(n,r,this._getModelOptions());i=M({gltf:r},o),function(e){return QL.apply(this,arguments)}(o).then(function(){return t.setNeedsRedraw()})}else e.scenegraph&&(Vw.deprecated("ScenegraphLayer.props.scenegraph","Use GLTFLoader instead of GLTFScenegraphLoader")(),i=e.scenegraph);var a={layer:this,gl:n},s=e.getScene(i,a),u=e.getAnimator(i,a);s instanceof xD?(this._deleteScenegraph(),this._applyAllAttributes(s),this._applyAnimationsProp(s,u,e._animations),this.setState({scenegraph:s,animator:u})):null!==s&&Vw.warn("invalid scenegraph:",s)()}},{key:"_applyAllAttributes",value:function(e){var t=this;if(this.state.attributesAvailable){var n=this.getAttributeManager().getAttributes();e.traverse(function(e){t._setModelAttributes(e.model,n)})}}},{key:"_applyAnimationsProp",value:function(e,t,n){if(e&&t&&n){var i=t.getAnimations();Object.keys(n).sort().forEach(function(e){var t=n[e];if("*"===e)i.forEach(function(e){Object.assign(e,t)});else if(Number.isFinite(Number(e))){var r=Number(e);r>=0&&r0&&void 0!==arguments[0]?arguments[0]:{};m(this,n);var i=e.id,r=void 0===i?qk("cube-geometry"):i;return t.call(this,I(M({},e),{id:r,indices:{size:1,value:new Uint16Array(ij)},attributes:M(M({},sj),e.attributes)}))}return n}(lD),cj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[0,0,0,0,0,0,0,0,0];m(this,e),this.elements=void 0,this.elements=t}return b(e,[{key:"identity",value:function(){var e=this.elements;e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1}},{key:"setZero",value:function(){var e=this.elements;e[0]=0,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e[8]=0}},{key:"setTrace",value:function(e){var t=this.elements;t[0]=e.x,t[4]=e.y,t[8]=e.z}},{key:"getTrace",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new hj,t=this.elements;return e.x=t[0],e.y=t[4],e.z=t[8],e}},{key:"vmult",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj,n=this.elements,i=e.x,r=e.y,o=e.z;return t.x=n[0]*i+n[1]*r+n[2]*o,t.y=n[3]*i+n[4]*r+n[5]*o,t.z=n[6]*i+n[7]*r+n[8]*o,t}},{key:"smult",value:function(e){for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:new e,i=this.elements,r=t.elements,o=n.elements,a=i[0],s=i[1],u=i[2],c=i[3],l=i[4],h=i[5],d=i[6],f=i[7],p=i[8],v=r[0],g=r[1],m=r[2],y=r[3],b=r[4],_=r[5],w=r[6],k=r[7],x=r[8];return o[0]=a*v+s*y+u*w,o[1]=a*g+s*b+u*k,o[2]=a*m+s*_+u*x,o[3]=c*v+l*y+h*w,o[4]=c*g+l*b+h*k,o[5]=c*m+l*_+h*x,o[6]=d*v+f*y+p*w,o[7]=d*g+f*b+p*k,o[8]=d*m+f*_+p*x,n}},{key:"scale",value:function(t){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=this.elements,r=n.elements,o=0;3!==o;o++)r[3*o+0]=t.x*i[3*o+0],r[3*o+1]=t.y*i[3*o+1],r[3*o+2]=t.z*i[3*o+2];return n}},{key:"solve",value:function(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj,r=[];for(t=0;t<12;t++)r.push(0);for(t=0;t<3;t++)for(n=0;n<3;n++)r[t+4*n]=this.elements[t+3*n];r[3]=e.x,r[7]=e.y,r[11]=e.z;var o,a,s=3,u=s;do{if(0===r[(t=u-s)+4*t])for(n=t+1;n0&&void 0!==arguments[0]?arguments[0]:new e,r=lj;for(t=0;t<3;t++)for(n=0;n<3;n++)r[t+6*n]=this.elements[t+3*n];r[3]=1,r[9]=0,r[15]=0,r[4]=0,r[10]=1,r[16]=0,r[5]=0,r[11]=0,r[17]=1;var o,a,s=3,u=s;do{if(0===r[(t=u-s)+6*t])for(n=t+1;n0&&void 0!==arguments[0]?arguments[0]:new e,i=this.elements,r=n.elements;return r[0]=i[0],r[4]=i[4],r[8]=i[8],t=i[1],r[1]=i[3],r[3]=t,t=i[2],r[2]=i[6],r[6]=t,t=i[5],r[5]=i[7],r[7]=t,n}}]),e}(),lj=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],hj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;m(this,e),this.x=void 0,this.y=void 0,this.z=void 0,this.x=t,this.y=n,this.z=i}return b(e,[{key:"cross",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=t.x,r=t.y,o=t.z,a=this.x,s=this.y,u=this.z;return n.x=s*o-u*r,n.y=u*i-a*o,n.z=a*r-s*i,n}},{key:"set",value:function(e,t,n){return this.x=e,this.y=t,this.z=n,this}},{key:"setZero",value:function(){this.x=this.y=this.z=0}},{key:"vadd",value:function(t,n){if(!n)return new e(this.x+t.x,this.y+t.y,this.z+t.z);n.x=t.x+this.x,n.y=t.y+this.y,n.z=t.z+this.z}},{key:"vsub",value:function(t,n){if(!n)return new e(this.x-t.x,this.y-t.y,this.z-t.z);n.x=this.x-t.x,n.y=this.y-t.y,n.z=this.z-t.z}},{key:"crossmat",value:function(){return new cj([0,-this.z,this.y,this.z,0,-this.x,-this.y,this.x,0])}},{key:"normalize",value:function(){var e=this.x,t=this.y,n=this.z,i=Math.sqrt(e*e+t*t+n*n);if(i>0){var r=1/i;this.x*=r,this.y*=r,this.z*=r}else this.x=0,this.y=0,this.z=0;return i}},{key:"unit",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e,n=this.x,i=this.y,r=this.z,o=Math.sqrt(n*n+i*i+r*r);return o>0?(o=1/o,t.x=n*o,t.y=i*o,t.z=r*o):(t.x=1,t.y=0,t.z=0),t}},{key:"length",value:function(){var e=this.x,t=this.y,n=this.z;return Math.sqrt(e*e+t*t+n*n)}},{key:"lengthSquared",value:function(){return this.dot(this)}},{key:"distanceTo",value:function(e){var t=this.x,n=this.y,i=this.z,r=e.x,o=e.y,a=e.z;return Math.sqrt((r-t)*(r-t)+(o-n)*(o-n)+(a-i)*(a-i))}},{key:"distanceSquared",value:function(e){var t=this.x,n=this.y,i=this.z,r=e.x,o=e.y,a=e.z;return(r-t)*(r-t)+(o-n)*(o-n)+(a-i)*(a-i)}},{key:"scale",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=this.y,r=this.z;return n.x=t*this.x,n.y=t*i,n.z=t*r,n}},{key:"vmul",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e;return n.x=t.x*this.x,n.y=t.y*this.y,n.z=t.z*this.z,n}},{key:"addScaledVector",value:function(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new e;return i.x=this.x+t*n.x,i.y=this.y+t*n.y,i.z=this.z+t*n.z,i}},{key:"dot",value:function(e){return this.x*e.x+this.y*e.y+this.z*e.z}},{key:"isZero",value:function(){return 0===this.x&&0===this.y&&0===this.z}},{key:"negate",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e;return t.x=-this.x,t.y=-this.y,t.z=-this.z,t}},{key:"tangents",value:function(e,t){var n=this.length();if(n>0){var i=dj,r=1/n;i.set(this.x*r,this.y*r,this.z*r);var o=fj;Math.abs(i.x)<.9?(o.set(1,0,0),i.cross(o,e)):(o.set(0,1,0),i.cross(o,e)),i.cross(e,t)}else e.set(1,0,0),t.set(0,1,0)}},{key:"toString",value:function(){return this.x+","+this.y+","+this.z}},{key:"toArray",value:function(){return[this.x,this.y,this.z]}},{key:"copy",value:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}},{key:"lerp",value:function(e,t,n){var i=this.x,r=this.y,o=this.z;n.x=i+(e.x-i)*t,n.y=r+(e.y-r)*t,n.z=o+(e.z-o)*t}},{key:"almostEquals",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e-6;return!(Math.abs(this.x-e.x)>t||Math.abs(this.y-e.y)>t||Math.abs(this.z-e.z)>t)}},{key:"almostZero",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e-6;return!(Math.abs(this.x)>e||Math.abs(this.y)>e||Math.abs(this.z)>e)}},{key:"isAntiparallelTo",value:function(e,t){return this.negate(pj),pj.almostEquals(e,t)}},{key:"clone",value:function(){return new e(this.x,this.y,this.z)}}]),e}();hj.ZERO=void 0,hj.UNIT_X=void 0,hj.UNIT_Y=void 0,hj.UNIT_Z=void 0,hj.ZERO=new hj(0,0,0),hj.UNIT_X=new hj(1,0,0),hj.UNIT_Y=new hj(0,1,0),hj.UNIT_Z=new hj(0,0,1);var dj=new hj,fj=new hj,pj=new hj,vj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.lowerBound=void 0,this.upperBound=void 0,this.lowerBound=new hj,this.upperBound=new hj,t.lowerBound&&this.lowerBound.copy(t.lowerBound),t.upperBound&&this.upperBound.copy(t.upperBound)}return b(e,[{key:"setFromPoints",value:function(e,t,n,i){var r=this.lowerBound,o=this.upperBound,a=n;r.copy(e[0]),a&&a.vmult(r,r),o.copy(r);for(var s=1;so.x&&(o.x=u.x),u.xo.y&&(o.y=u.y),u.yo.z&&(o.z=u.z),u.z=r.x&&t.y<=i.y&&n.y>=r.y&&t.z<=i.z&&n.z>=r.z}},{key:"getCorners",value:function(e,t,n,i,r,o,a,s){var u=this.lowerBound,c=this.upperBound;e.copy(u),t.set(c.x,u.y,u.z),n.set(c.x,c.y,u.z),i.set(u.x,c.y,c.z),r.set(c.x,u.y,c.z),o.set(u.x,c.y,u.z),a.set(u.x,u.y,c.z),s.copy(c)}},{key:"toLocalFrame",value:function(e,t){var n=mj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(var i=0;8!==i;i++){var r=n[i];e.pointToLocal(r,r)}return t.setFromPoints(n)}},{key:"toWorldFrame",value:function(e,t){var n=mj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(var i=0;8!==i;i++){var r=n[i];e.pointToWorld(r,r)}return t.setFromPoints(n)}},{key:"overlapsRay",value:function(e){var t=e.direction,n=e.from,i=1/t.x,r=1/t.y,o=1/t.z,a=(this.lowerBound.x-n.x)*i,s=(this.upperBound.x-n.x)*i,u=(this.lowerBound.y-n.y)*r,c=(this.upperBound.y-n.y)*r,l=(this.lowerBound.z-n.z)*o,h=(this.upperBound.z-n.z)*o,d=Math.max(Math.max(Math.min(a,s),Math.min(u,c)),Math.min(l,h)),f=Math.min(Math.min(Math.max(a,s),Math.max(u,c)),Math.max(l,h));return!(f<0||d>f)}}]),e}(),gj=new hj,mj=[new hj,new hj,new hj,new hj,new hj,new hj,new hj,new hj],yj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1;m(this,e),this.x=void 0,this.y=void 0,this.z=void 0,this.w=void 0,this.x=t,this.y=n,this.z=i,this.w=r}return b(e,[{key:"set",value:function(e,t,n,i){return this.x=e,this.y=t,this.z=n,this.w=i,this}},{key:"toString",value:function(){return this.x+","+this.y+","+this.z+","+this.w}},{key:"toArray",value:function(){return[this.x,this.y,this.z,this.w]}},{key:"setFromAxisAngle",value:function(e,t){var n=Math.sin(.5*t);return this.x=e.x*n,this.y=e.y*n,this.z=e.z*n,this.w=Math.cos(.5*t),this}},{key:"toAxisAngle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new hj;this.normalize();var t=2*Math.acos(this.w),n=Math.sqrt(1-this.w*this.w);return n<.001?(e.x=this.x,e.y=this.y,e.z=this.z):(e.x=this.x/n,e.y=this.y/n,e.z=this.z/n),[e,t]}},{key:"setFromVectors",value:function(e,t){if(e.isAntiparallelTo(t)){var n=bj;e.tangents(n,_j),this.setFromAxisAngle(n,Math.PI)}else{var i=e.cross(t);this.x=i.x,this.y=i.y,this.z=i.z,this.w=Math.sqrt(A(e.length(),2)*A(t.length(),2))+e.dot(t),this.normalize()}return this}},{key:"mult",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=this.x,r=this.y,o=this.z,a=this.w,s=t.x,u=t.y,c=t.z,l=t.w;return n.x=i*l+a*s+r*c-o*u,n.y=r*l+a*u+o*s-i*c,n.z=o*l+a*c+i*u-r*s,n.w=a*l-i*s-r*u-o*c,n}},{key:"inverse",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e,n=this.x,i=this.y,r=this.z,o=this.w;this.conjugate(t);var a=1/(n*n+i*i+r*r+o*o);return t.x*=a,t.y*=a,t.z*=a,t.w*=a,t}},{key:"conjugate",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e;return t.x=-this.x,t.y=-this.y,t.z=-this.z,t.w=this.w,t}},{key:"normalize",value:function(){var e=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===e?(this.x=0,this.y=0,this.z=0,this.w=0):(e=1/e,this.x*=e,this.y*=e,this.z*=e,this.w*=e),this}},{key:"normalizeFast",value:function(){var e=(3-(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w))/2;return 0===e?(this.x=0,this.y=0,this.z=0,this.w=0):(this.x*=e,this.y*=e,this.z*=e,this.w*=e),this}},{key:"vmult",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj,n=e.x,i=e.y,r=e.z,o=this.x,a=this.y,s=this.z,u=this.w,c=u*n+a*r-s*i,l=u*i+s*n-o*r,h=u*r+o*i-a*n,d=-o*n-a*i-s*r;return t.x=c*u+d*-o+l*-s-h*-a,t.y=l*u+d*-a+h*-o-c*-s,t.z=h*u+d*-s+c*-a-l*-o,t}},{key:"copy",value:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w,this}},{key:"toEuler",value:function(e){var t,n,i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"YZX",o=this.x,a=this.y,s=this.z,u=this.w;switch(r){case"YZX":var c=o*a+s*u;if(c>.499&&(t=2*Math.atan2(o,u),n=Math.PI/2,i=0),c<-.499&&(t=-2*Math.atan2(o,u),n=-Math.PI/2,i=0),void 0===t){var l=o*o,h=s*s;t=Math.atan2(2*a*u-2*o*s,1-a*a*2-2*h),n=Math.asin(2*c),i=Math.atan2(2*o*u-2*a*s,1-2*l-2*h)}break;default:throw new Error("Euler order "+r+" not supported yet.")}e.y=t,e.z=n,e.x=i}},{key:"setFromEuler",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"XYZ",r=Math.cos(e/2),o=Math.cos(t/2),a=Math.cos(n/2),s=Math.sin(e/2),u=Math.sin(t/2),c=Math.sin(n/2);return"XYZ"===i?(this.x=s*o*a+r*u*c,this.y=r*u*a-s*o*c,this.z=r*o*c+s*u*a,this.w=r*o*a-s*u*c):"YXZ"===i?(this.x=s*o*a+r*u*c,this.y=r*u*a-s*o*c,this.z=r*o*c-s*u*a,this.w=r*o*a+s*u*c):"ZXY"===i?(this.x=s*o*a-r*u*c,this.y=r*u*a+s*o*c,this.z=r*o*c+s*u*a,this.w=r*o*a-s*u*c):"ZYX"===i?(this.x=s*o*a-r*u*c,this.y=r*u*a+s*o*c,this.z=r*o*c-s*u*a,this.w=r*o*a+s*u*c):"YZX"===i?(this.x=s*o*a+r*u*c,this.y=r*u*a+s*o*c,this.z=r*o*c-s*u*a,this.w=r*o*a-s*u*c):"XZY"===i&&(this.x=s*o*a-r*u*c,this.y=r*u*a-s*o*c,this.z=r*o*c+s*u*a,this.w=r*o*a+s*u*c),this}},{key:"clone",value:function(){return new e(this.x,this.y,this.z,this.w)}},{key:"slerp",value:function(t,n){var i,r,o,a,s,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new e,c=this.x,l=this.y,h=this.z,d=this.w,f=t.x,p=t.y,v=t.z,g=t.w;return(r=c*f+l*p+h*v+d*g)<0&&(r=-r,f=-f,p=-p,v=-v,g=-g),1-r>1e-6?(i=Math.acos(r),o=Math.sin(i),a=Math.sin((1-n)*i)/o,s=Math.sin(n*i)/o):(a=1-n,s=n),u.x=a*c+s*f,u.y=a*l+s*p,u.z=a*h+s*v,u.w=a*d+s*g,u}},{key:"integrate",value:function(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new e,o=t.x*i.x,a=t.y*i.y,s=t.z*i.z,u=this.x,c=this.y,l=this.z,h=this.w,d=.5*n;return r.x+=d*(o*h+a*l-s*c),r.y+=d*(a*h+s*u-o*l),r.z+=d*(s*h+o*c-a*u),r.w+=d*(-o*u-a*c-s*l),r}}]),e}(),bj=new hj,_j=new hj,wj={SPHERE:1,PLANE:2,BOX:4,COMPOUND:8,CONVEXPOLYHEDRON:16,HEIGHTFIELD:32,PARTICLE:64,CYLINDER:128,TRIMESH:256},kj=function(){var e=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.id=void 0,this.type=void 0,this.boundingSphereRadius=void 0,this.collisionResponse=void 0,this.collisionFilterGroup=void 0,this.collisionFilterMask=void 0,this.material=void 0,this.body=void 0,this.id=e.idCounter++,this.type=t.type||0,this.boundingSphereRadius=0,this.collisionResponse=!t.collisionResponse||t.collisionResponse,this.collisionFilterGroup=void 0!==t.collisionFilterGroup?t.collisionFilterGroup:1,this.collisionFilterMask=void 0!==t.collisionFilterMask?t.collisionFilterMask:-1,this.material=t.material?t.material:null,this.body=null}return b(e,[{key:"updateBoundingSphereRadius",value:function(){throw"computeBoundingSphereRadius() not implemented for shape type "+this.type}},{key:"volume",value:function(){throw"volume() not implemented for shape type "+this.type}},{key:"calculateLocalInertia",value:function(e,t){throw"calculateLocalInertia() not implemented for shape type "+this.type}},{key:"calculateWorldAABB",value:function(e,t,n,i){throw"calculateWorldAABB() not implemented for shape type "+this.type}}]),e}();return e.idCounter=0,e.types=wj,e}(),xj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.position=void 0,this.quaternion=void 0,this.position=new hj,this.quaternion=new yj,t.position&&this.position.copy(t.position),t.quaternion&&this.quaternion.copy(t.quaternion)}return b(e,[{key:"pointToLocal",value:function(t,n){return e.pointToLocalFrame(this.position,this.quaternion,t,n)}},{key:"pointToWorld",value:function(t,n){return e.pointToWorldFrame(this.position,this.quaternion,t,n)}},{key:"vectorToWorldFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.vmult(e,t),t}}],[{key:"pointToLocalFrame",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new hj;return n.vsub(e,i),t.conjugate(Sj),Sj.vmult(i,i),i}},{key:"pointToWorldFrame",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new hj;return t.vmult(n,i),i.vadd(e,i),i}},{key:"vectorToWorldFrame",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new hj;return e.vmult(t,n),n}},{key:"vectorToLocalFrame",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new hj;return t.w*=-1,t.vmult(n,i),t.w*=-1,i}}]),e}(),Sj=new yj,Ej=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,n);var r=i.vertices,o=void 0===r?[]:r,a=i.faces,s=void 0===a?[]:a,u=i.normals,c=void 0===u?[]:u,l=i.axes,h=i.boundingSphereRadius;return(e=t.call(this,{type:kj.types.CONVEXPOLYHEDRON})).vertices=void 0,e.faces=void 0,e.faceNormals=void 0,e.worldVertices=void 0,e.worldVerticesNeedsUpdate=void 0,e.worldFaceNormals=void 0,e.worldFaceNormalsNeedsUpdate=void 0,e.uniqueAxes=void 0,e.uniqueEdges=void 0,e.vertices=o,e.faces=s,e.faceNormals=c,0===e.faceNormals.length&&e.computeNormals(),h?e.boundingSphereRadius=h:e.updateBoundingSphereRadius(),e.worldVertices=[],e.worldVerticesNeedsUpdate=!0,e.worldFaceNormals=[],e.worldFaceNormalsNeedsUpdate=!0,e.uniqueAxes=l?l.slice():null,e.uniqueEdges=[],e.computeEdges(),e}return b(n,[{key:"computeEdges",value:function(){var e=this.faces,t=this.vertices,n=this.uniqueEdges;n.length=0;for(var i=new hj,r=0;r!==e.length;r++)for(var o=e[r],a=o.length,s=0;s!==a;s++){t[o[s]].vsub(t[o[(s+1)%a]],i),i.normalize();for(var u=!1,c=0;c!==n.length;c++)if(n[c].almostEquals(i)||n[c].almostEquals(i)){u=!0;break}u||n.push(i.clone())}}},{key:"computeNormals",value:function(){this.faceNormals.length=this.faces.length;for(var e=0;eh&&(h=f,l=d)}for(var p=[],v=0;v=0&&this.clipFaceAgainstHull(o,e,t,p,a,s,u)}},{key:"findSeparatingAxis",value:function(e,t,n,i,r,o,a,s){var u=new hj,c=new hj,l=new hj,h=new hj,d=new hj,f=new hj,p=Number.MAX_VALUE,v=this;if(v.uniqueAxes)for(var g=0;g!==v.uniqueAxes.length;g++){n.vmult(v.uniqueAxes[g],u);var m=v.testSepAxis(u,e,t,n,i,r);if(!1===m)return!1;m0&&o.negate(o),!0}},{key:"testSepAxis",value:function(e,t,i,r,o,a){n.project(this,e,i,r,Cj),n.project(t,e,o,a,Oj);var s=Cj[0],u=Cj[1],c=Oj[0],l=Oj[1];if(st.x&&(t.x=r.x),r.yt.y&&(t.y=r.y),r.zt.z&&(t.z=r.z)}}},{key:"computeWorldFaceNormals",value:function(e){for(var t=this.faceNormals.length;this.worldFaceNormals.lengthe&&(e=i)}this.boundingSphereRadius=Math.sqrt(e)}},{key:"calculateWorldAABB",value:function(e,t,n,i){for(var r,o,a,s,u,c,l=this.vertices,h=new hj,d=0;ds)&&(s=f.x),(void 0===o||f.yu)&&(u=f.y),(void 0===a||f.zc)&&(c=f.z)}n.set(r,o,a),i.set(s,u,c)}},{key:"volume",value:function(){return 4*Math.PI*this.boundingSphereRadius/3}},{key:"getAveragePointLocal",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new hj,t=this.vertices,n=0;n0||c>0&&h<0)return!1}return-1}}],[{key:"computeNormal",value:function(e,t,n,i){var r=new hj,o=new hj;t.vsub(e,o),n.vsub(t,r),r.cross(o,i),i.isZero()||i.normalize()}},{key:"project",value:function(e,t,n,i,r){var o=e.vertices.length,a=Tj,s=0,u=0,c=Aj,l=e.vertices;c.setZero(),xj.vectorToLocalFrame(n,i,t,a),xj.pointToLocalFrame(n,i,c,c);var h=c.dot(a);u=s=l[0].dot(a);for(var d=1;ds&&(s=f),f(s-=h)){var p=u;u=s,s=p}r[0]=s,r[1]=u}}]),n}(kj),Cj=[],Oj=[],Tj=new hj,Aj=new hj,Pj=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,{type:kj.types.BOX})).halfExtents=void 0,i.convexPolyhedronRepresentation=void 0,i.halfExtents=e,i.convexPolyhedronRepresentation=null,i.updateConvexPolyhedronRepresentation(),i.updateBoundingSphereRadius(),i}return b(n,[{key:"updateConvexPolyhedronRepresentation",value:function(){var e=this.halfExtents.x,t=this.halfExtents.y,n=this.halfExtents.z,i=hj,r=[new i(-e,-t,-n),new i(e,-t,-n),new i(e,t,-n),new i(-e,t,-n),new i(-e,-t,n),new i(e,-t,n),new i(e,t,n),new i(-e,t,n)],o=[new i(0,0,1),new i(0,1,0),new i(1,0,0)],a=new Ej({vertices:r,faces:[[3,2,1,0],[4,5,6,7],[5,4,0,1],[2,3,7,6],[0,4,7,3],[1,2,6,5]],axes:o});this.convexPolyhedronRepresentation=a,a.material=this.material}},{key:"calculateLocalInertia",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return n.calculateInertia(this.halfExtents,e,t),t}},{key:"getSideNormals",value:function(e,t){var n=e,i=this.halfExtents;if(n[0].set(i.x,0,0),n[1].set(0,i.y,0),n[2].set(0,0,i.z),n[3].set(-i.x,0,0),n[4].set(0,-i.y,0),n[5].set(0,0,-i.z),void 0!==t)for(var r=0;r!==n.length;r++)t.vmult(n[r],n[r]);return n}},{key:"volume",value:function(){return 8*this.halfExtents.x*this.halfExtents.y*this.halfExtents.z}},{key:"updateBoundingSphereRadius",value:function(){this.boundingSphereRadius=this.halfExtents.length()}},{key:"forEachWorldCorner",value:function(e,t,n){for(var i=this.halfExtents,r=[[i.x,i.y,i.z],[-i.x,i.y,i.z],[-i.x,-i.y,i.z],[-i.x,-i.y,-i.z],[i.x,-i.y,-i.z],[i.x,i.y,-i.z],[-i.x,i.y,-i.z],[i.x,-i.y,i.z]],o=0;oi.x&&(i.x=u),c>i.y&&(i.y=c),l>i.z&&(i.z=l),u0&&void 0!==arguments[0]?arguments[0]:{};m(this,n),(e=t.call(this)).id=void 0,e.index=void 0,e.world=void 0,e.preStep=void 0,e.postStep=void 0,e.vlambda=void 0,e.collisionFilterGroup=void 0,e.collisionFilterMask=void 0,e.collisionResponse=void 0,e.position=void 0,e.previousPosition=void 0,e.interpolatedPosition=void 0,e.initPosition=void 0,e.velocity=void 0,e.initVelocity=void 0,e.force=void 0,e.mass=void 0,e.invMass=void 0,e.material=void 0,e.linearDamping=void 0,e.type=void 0,e.allowSleep=void 0,e.sleepState=void 0,e.sleepSpeedLimit=void 0,e.sleepTimeLimit=void 0,e.timeLastSleepy=void 0,e.wakeUpAfterNarrowphase=void 0,e.torque=void 0,e.quaternion=void 0,e.initQuaternion=void 0,e.previousQuaternion=void 0,e.interpolatedQuaternion=void 0,e.angularVelocity=void 0,e.initAngularVelocity=void 0,e.shapes=void 0,e.shapeOffsets=void 0,e.shapeOrientations=void 0,e.inertia=void 0,e.invInertia=void 0,e.invInertiaWorld=void 0,e.invMassSolve=void 0,e.invInertiaSolve=void 0,e.invInertiaWorldSolve=void 0,e.fixedRotation=void 0,e.angularDamping=void 0,e.linearFactor=void 0,e.angularFactor=void 0,e.aabb=void 0,e.aabbNeedsUpdate=void 0,e.boundingRadius=void 0,e.wlambda=void 0,e.isTrigger=void 0,e.id=n.idCounter++,e.index=-1,e.world=null,e.preStep=null,e.postStep=null,e.vlambda=new hj,e.collisionFilterGroup="number"==typeof i.collisionFilterGroup?i.collisionFilterGroup:1,e.collisionFilterMask="number"==typeof i.collisionFilterMask?i.collisionFilterMask:-1,e.collisionResponse="boolean"!=typeof i.collisionResponse||i.collisionResponse,e.position=new hj,e.previousPosition=new hj,e.interpolatedPosition=new hj,e.initPosition=new hj,i.position&&(e.position.copy(i.position),e.previousPosition.copy(i.position),e.interpolatedPosition.copy(i.position),e.initPosition.copy(i.position)),e.velocity=new hj,i.velocity&&e.velocity.copy(i.velocity),e.initVelocity=new hj,e.force=new hj;var r="number"==typeof i.mass?i.mass:0;return e.mass=r,e.invMass=r>0?1/r:0,e.material=i.material||null,e.linearDamping="number"==typeof i.linearDamping?i.linearDamping:.01,e.type=r<=0?n.STATIC:n.DYNAMIC,typeof i.type==typeof n.STATIC&&(e.type=i.type),e.allowSleep=void 0===i.allowSleep||i.allowSleep,e.sleepState=n.AWAKE,e.sleepSpeedLimit=void 0!==i.sleepSpeedLimit?i.sleepSpeedLimit:.1,e.sleepTimeLimit=void 0!==i.sleepTimeLimit?i.sleepTimeLimit:1,e.timeLastSleepy=0,e.wakeUpAfterNarrowphase=!1,e.torque=new hj,e.quaternion=new yj,e.initQuaternion=new yj,e.previousQuaternion=new yj,e.interpolatedQuaternion=new yj,i.quaternion&&(e.quaternion.copy(i.quaternion),e.initQuaternion.copy(i.quaternion),e.previousQuaternion.copy(i.quaternion),e.interpolatedQuaternion.copy(i.quaternion)),e.angularVelocity=new hj,i.angularVelocity&&e.angularVelocity.copy(i.angularVelocity),e.initAngularVelocity=new hj,e.shapes=[],e.shapeOffsets=[],e.shapeOrientations=[],e.inertia=new hj,e.invInertia=new hj,e.invInertiaWorld=new cj,e.invMassSolve=0,e.invInertiaSolve=new hj,e.invInertiaWorldSolve=new cj,e.fixedRotation=void 0!==i.fixedRotation&&i.fixedRotation,e.angularDamping=void 0!==i.angularDamping?i.angularDamping:.01,e.linearFactor=new hj(1,1,1),i.linearFactor&&e.linearFactor.copy(i.linearFactor),e.angularFactor=new hj(1,1,1),i.angularFactor&&e.angularFactor.copy(i.angularFactor),e.aabb=new vj,e.aabbNeedsUpdate=!0,e.boundingRadius=0,e.wlambda=new hj,e.isTrigger=Boolean(i.isTrigger),i.shape&&e.addShape(i.shape),e.updateMassProperties(),e}return b(n,[{key:"wakeUp",value:function(){var e=this.sleepState;this.sleepState=n.AWAKE,this.wakeUpAfterNarrowphase=!1,e===n.SLEEPING&&this.dispatchEvent(n.wakeupEvent)}},{key:"sleep",value:function(){this.sleepState=n.SLEEPING,this.velocity.set(0,0,0),this.angularVelocity.set(0,0,0),this.wakeUpAfterNarrowphase=!1}},{key:"sleepTick",value:function(e){if(this.allowSleep){var t=this.sleepState,i=this.velocity.lengthSquared()+this.angularVelocity.lengthSquared(),r=A(this.sleepSpeedLimit,2);t===n.AWAKE&&ir?this.wakeUp():t===n.SLEEPY&&e-this.timeLastSleepy>this.sleepTimeLimit&&(this.sleep(),this.dispatchEvent(n.sleepEvent))}}},{key:"updateSolveMassProperties",value:function(){this.sleepState===n.SLEEPING||this.type===n.KINEMATIC?(this.invMassSolve=0,this.invInertiaSolve.setZero(),this.invInertiaWorldSolve.setZero()):(this.invMassSolve=this.invMass,this.invInertiaSolve.copy(this.invInertia),this.invInertiaWorldSolve.copy(this.invInertiaWorld))}},{key:"pointToLocalFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return e.vsub(this.position,t),this.quaternion.conjugate().vmult(t,t),t}},{key:"vectorToLocalFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.conjugate().vmult(e,t),t}},{key:"pointToWorldFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.vmult(e,t),t.vadd(this.position,t),t}},{key:"vectorToWorldFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.vmult(e,t),t}},{key:"addShape",value:function(e,t,n){var i=new hj,r=new yj;return t&&i.copy(t),n&&r.copy(n),this.shapes.push(e),this.shapeOffsets.push(i),this.shapeOrientations.push(r),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,e.body=this,this}},{key:"removeShape",value:function(e){var t=this.shapes.indexOf(e);return-1===t?(console.warn("Shape does not belong to the body"),this):(this.shapes.splice(t,1),this.shapeOffsets.splice(t,1),this.shapeOrientations.splice(t,1),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,e.body=null,this)}},{key:"updateBoundingRadius",value:function(){for(var e=this.shapes,t=this.shapeOffsets,n=e.length,i=0,r=0;r!==n;r++){var o=e[r];o.updateBoundingSphereRadius();var a=t[r].length(),s=o.boundingSphereRadius;a+s>i&&(i=a+s)}this.boundingRadius=i}},{key:"updateAABB",value:function(){for(var e=this.shapes,t=this.shapeOffsets,n=this.shapeOrientations,i=e.length,r=Dj,o=Nj,a=this.quaternion,s=this.aabb,u=Lj,c=0;c!==i;c++){var l=e[c];a.vmult(t[c],r),r.vadd(this.position,r),a.mult(n[c],o),l.calculateWorldAABB(r,o,u.lowerBound,u.upperBound),0===c?s.copy(u):s.extend(u)}this.aabbNeedsUpdate=!1}},{key:"updateInertiaWorld",value:function(e){var t=this.invInertia;if(t.x!==t.y||t.y!==t.z||e){var n=jj,i=Fj;n.setRotationFromQuaternion(this.quaternion),n.transpose(i),n.scale(t,n),n.mmult(i,this.invInertiaWorld)}}},{key:"applyForce",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){this.sleepState===n.SLEEPING&&this.wakeUp();var i=Bj;t.cross(e,i),this.force.vadd(e,this.force),this.torque.vadd(i,this.torque)}}},{key:"applyLocalForce",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){var i=Vj,r=zj;this.vectorToWorldFrame(e,i),this.vectorToWorldFrame(t,r),this.applyForce(i,r)}}},{key:"applyTorque",value:function(e){this.type===n.DYNAMIC&&(this.sleepState===n.SLEEPING&&this.wakeUp(),this.torque.vadd(e,this.torque))}},{key:"applyImpulse",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){this.sleepState===n.SLEEPING&&this.wakeUp();var i=t,r=Uj;r.copy(e),r.scale(this.invMass,r),this.velocity.vadd(r,this.velocity);var o=Hj;i.cross(e,o),this.invInertiaWorld.vmult(o,o),this.angularVelocity.vadd(o,this.angularVelocity)}}},{key:"applyLocalImpulse",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){var i=Gj,r=Wj;this.vectorToWorldFrame(e,i),this.vectorToWorldFrame(t,r),this.applyImpulse(i,r)}}},{key:"updateMassProperties",value:function(){var e=qj;this.invMass=this.mass>0?1/this.mass:0;var t=this.inertia,n=this.fixedRotation;this.updateAABB(),e.set((this.aabb.upperBound.x-this.aabb.lowerBound.x)/2,(this.aabb.upperBound.y-this.aabb.lowerBound.y)/2,(this.aabb.upperBound.z-this.aabb.lowerBound.z)/2),Pj.calculateInertia(e,this.mass,t),this.invInertia.set(t.x>0&&!n?1/t.x:0,t.y>0&&!n?1/t.y:0,t.z>0&&!n?1/t.z:0),this.updateInertiaWorld(!0)}},{key:"getVelocityAtWorldPoint",value:function(e,t){var n=new hj;return e.vsub(this.position,n),this.angularVelocity.cross(n,t),this.velocity.vadd(t,t),t}},{key:"integrate",value:function(e,t,i){if(this.previousPosition.copy(this.position),this.previousQuaternion.copy(this.quaternion),(this.type===n.DYNAMIC||this.type===n.KINEMATIC)&&this.sleepState!==n.SLEEPING){var r=this.velocity,o=this.angularVelocity,a=this.position,s=this.force,u=this.torque,c=this.quaternion,l=this.invInertiaWorld,h=this.linearFactor,d=this.invMass*e;r.x+=s.x*d*h.x,r.y+=s.y*d*h.y,r.z+=s.z*d*h.z;var f=l.elements,p=this.angularFactor,v=u.x*p.x,g=u.y*p.y,m=u.z*p.z;o.x+=e*(f[0]*v+f[1]*g+f[2]*m),o.y+=e*(f[3]*v+f[4]*g+f[5]*m),o.z+=e*(f[6]*v+f[7]*g+f[8]*m),a.x+=r.x*e,a.y+=r.y*e,a.z+=r.z*e,c.integrate(this.angularVelocity,e,this.angularFactor,c),t&&(i?c.normalizeFast():c.normalize()),this.aabbNeedsUpdate=!0,this.updateInertiaWorld()}}}]),n}(function(){function e(){m(this,e),this._listeners=void 0}return b(e,[{key:"addEventListener",value:function(e,t){void 0===this._listeners&&(this._listeners={});var n=this._listeners;return void 0===n[e]&&(n[e]=[]),n[e].includes(t)||n[e].push(t),this}},{key:"hasEventListener",value:function(e,t){if(void 0===this._listeners)return!1;var n=this._listeners;return!(void 0===n[e]||!n[e].includes(t))}},{key:"hasAnyEventListener",value:function(e){return void 0!==this._listeners&&void 0!==this._listeners[e]}},{key:"removeEventListener",value:function(e,t){if(void 0===this._listeners)return this;var n=this._listeners;if(void 0===n[e])return this;var i=n[e].indexOf(t);return-1!==i&&n[e].splice(i,1),this}},{key:"dispatchEvent",value:function(e){if(void 0===this._listeners)return this;var t=this._listeners[e.type];if(void 0!==t){e.target=this;for(var n=0,i=t.length;n0&&void 0!==arguments[0]?arguments[0]:new hj,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;m(this,s),this.from=void 0,this.to=void 0,this.direction=void 0,this.precision=void 0,this.checkCollisionResponse=void 0,this.skipBackfaces=void 0,this.collisionFilterMask=void 0,this.collisionFilterGroup=void 0,this.mode=void 0,this.result=void 0,this.hasHit=void 0,this.callback=void 0,this.from=e.clone(),this.to=t.clone(),this.direction=new hj,this.precision=1e-4,this.checkCollisionResponse=!0,this.skipBackfaces=!1,this.collisionFilterMask=-1,this.collisionFilterGroup=-1,this.mode=s.ANY,this.result=new Xj,this.hasHit=!1,this.callback=function(e){}}return b(s,[{key:e,get:function(){return this._intersectSphere}},{key:t,get:function(){return this._intersectPlane}},{key:n,get:function(){return this._intersectBox}},{key:i,get:function(){return this._intersectConvex}},{key:r,get:function(){return this._intersectConvex}},{key:o,get:function(){return this._intersectHeightfield}},{key:a,get:function(){return this._intersectTrimesh}},{key:"intersectWorld",value:function(e,t){return this.mode=t.mode||s.ANY,this.result=t.result||new Xj,this.skipBackfaces=!!t.skipBackfaces,this.collisionFilterMask=void 0!==t.collisionFilterMask?t.collisionFilterMask:-1,this.collisionFilterGroup=void 0!==t.collisionFilterGroup?t.collisionFilterGroup:-1,this.checkCollisionResponse=void 0===t.checkCollisionResponse||t.checkCollisionResponse,t.from&&this.from.copy(t.from),t.to&&this.to.copy(t.to),this.callback=t.callback||function(){},this.hasHit=!1,this.result.reset(),this.updateDirection(),this.getAABB(Kj),$j.length=0,e.broadphase.aabbQuery(e,Kj,$j),this.intersectBodies($j),this.hasHit}},{key:"intersectBody",value:function(e,t){t&&(this.result=t,this.updateDirection());var n=this.checkCollisionResponse;if((!n||e.collisionResponse)&&0!=(this.collisionFilterGroup&e.collisionFilterMask)&&0!=(e.collisionFilterGroup&this.collisionFilterMask))for(var i=Jj,r=eF,o=0,a=e.shapes.length;oe.boundingSphereRadius)){var r=this[e.type];r&&r.call(this,e,t,n,i,e)}}},{key:"_intersectBox",value:function(e,t,n,i,r){return this._intersectConvex(e.convexPolyhedronRepresentation,t,n,i,r)}},{key:"_intersectPlane",value:function(e,t,n,i,r){var o=this.from,a=this.to,s=this.direction,u=new hj(0,0,1);t.vmult(u,u);var c=new hj;o.vsub(n,c);var l=c.dot(u);if(a.vsub(n,c),!(l*c.dot(u)>0||o.distanceTo(a)=0&&p<=1&&(o.lerp(a,p,d),d.vsub(n,f),f.normalize(),this.reportIntersection(f,d,r,i,-1)),this.result.shouldStop)return;v>=0&&v<=1&&(o.lerp(a,v,d),d.vsub(n,f),f.normalize(),this.reportIntersection(f,d,r,i,-1))}}},{key:"_intersectConvex",value:function(e,t,n,i,r,o){for(var a=hF,u=dF,c=o&&o.faceList||null,l=e.faces,h=e.vertices,d=e.faceNormals,f=this.direction,p=this.from,v=p.distanceTo(this.to),g=c?c.length:l.length,m=this.result,y=0;!m.shouldStop&&yv||this.reportIntersection(a,tF,r,i,b)}}}}}},{key:"_intersectTrimesh",value:function(e,t,n,i,r,o){var a=fF,u=bF,c=_F,l=dF,h=pF,d=vF,f=gF,p=yF,v=mF,g=e.indices,m=this.from,y=this.to,b=this.direction;c.position.copy(n),c.quaternion.copy(t),xj.vectorToLocalFrame(n,t,b,h),xj.pointToLocalFrame(n,t,m,d),xj.pointToLocalFrame(n,t,y,f),f.x*=e.scale.x,f.y*=e.scale.y,f.z*=e.scale.z,d.x*=e.scale.x,d.y*=e.scale.y,d.z*=e.scale.z,f.vsub(d,h),h.normalize();var _=d.distanceSquared(f);e.tree.rayQuery(this,c,u);for(var w=0,k=u.length;!this.result.shouldStop&&w!==k;w++){var x=u[w];e.getNormal(x,a),e.getVertex(g[3*x],nF),nF.vsub(d,l);var S=h.dot(a),E=a.dot(l)/S;if(!(E<0)){h.scale(E,tF),tF.vadd(d,tF),e.getVertex(g[3*x+1],iF),e.getVertex(g[3*x+2],rF);var C=tF.distanceSquared(d);!s.pointInTriangle(tF,iF,nF,rF)&&!s.pointInTriangle(tF,nF,iF,rF)||C>_||(xj.vectorToWorldFrame(t,a,v),xj.pointToWorldFrame(n,t,tF,p),this.reportIntersection(v,p,r,i,x))}}u.length=0}},{key:"reportIntersection",value:function(e,t,n,i,r){var o=this.from,a=this.to,u=o.distanceTo(t),c=this.result;if(!(this.skipBackfaces&&e.dot(this.direction)>0))switch(c.hitFaceIndex=void 0!==r?r:-1,this.mode){case s.ALL:this.hasHit=!0,c.set(o,a,e,t,n,i,u),c.hasHit=!0,this.callback(c);break;case s.CLOSEST:(u=0&&(o=a*l-s*u)>=0&&r+o0){var o,a=_(e.mesh.primitives);try{for(a.s();!(o=a.n()).done;){var s=o.value;s.attributes.POSITION&&s.attributes.POSITION.min&&function(){var o=r.transformAsPoint(s.attributes.POSITION.min,[]),a=r.transformAsPoint(s.attributes.POSITION.max,[]);i.push({"@id":t["@id"],name:e.name,entityId:t.entityId,bbox:new vj({lowerBound:h(hj,v(o.map(function(e,t){return Math.min(e,a[t])}))),upperBound:h(hj,v(a.map(function(e,t){return Math.max(e,o[t])})))}),gltf:n})}()}}catch(u){a.e(u)}finally{a.f()}}return!0})}catch(s){r.e(s)}finally{r.f()}case 6:case"end":return e.stop()}},e)}),r.s();case 6:if((o=r.n()).done){t.next=10;break}return t.delegateYield(a(),"t0",8);case 8:t.next=6;break;case 10:t.next=15;break;case 12:t.prev=12,t.t1=t.catch(3),r.e(t.t1);case 15:return t.prev=15,r.f(),t.finish(15);case 18:s=[],u=[],c=_(n);try{for(c.s();!(l=c.n()).done;){d=l.value,f=[],p=_(i);try{for(p.s();!(g=p.n()).done;)m=g.value,d.bbox.overlaps(m.bbox)&&f.push({"@id":m["@id"],name:m.name})}catch(C){p.e(C)}finally{p.f()}f.length>0?s.push({"@id":d.entityId,name:d.name,hits:f}):u.push(d)}}catch(C){c.e(C)}finally{c.f()}for(console.log({sourceBoxes:n,targetBoxes:i,report:s,sad:u,maxHits:Math.max.apply(Math,v(s.map(function(e){return e.hits.length})))}),y=[],b=0,w=s;b1&&void 0!==arguments[1]?arguments[1]:[],i=_(e.nodes||e.children||[]);try{for(i.s();!(t=i.n()).done;){var r=t.value;n.push(r.name),DF(r,n)}}catch(o){i.e(o)}finally{i.f()}return n}var NF=function(){var e=function(){function e(t){var n,i,r,o,a,s=this;m(this,e),this.deckProps=t,this.bodyUILayer=new RF({}),this.nodeClickSubject=new re,this.nodeHoverStartSubject=new re,this.nodeHoverStopSubject=new re,this.sceneRotationSubject=new tv([0,0]),this.nodeDragStartSubject=new re,this.nodeDragSubject=new re,this.nodeDragEndSubject=new re,this.nodeClick$=this.nodeClickSubject.pipe(Ne()),this.nodeHoverStart$=this.nodeHoverStartSubject.pipe(Ne()),this.nodeHoverStop$=this.nodeHoverStopSubject.pipe(Ne()),this.sceneRotation$=this.sceneRotationSubject.pipe(Ne()),this.nodeDragStart$=this.nodeDragStartSubject.pipe(Ne()),this.nodeDrag$=this.nodeDragSubject.pipe(Ne()),this.nodeDragEnd$=this.nodeDragEndSubject.pipe(Ne());var u=Object.assign(Object.assign({},t),{views:["orthographic"===t.camera?new _M({flipY:!1,near:-1e3}):new SM({orbitAxis:"Y"})],controller:void 0===t.interactive||t.interactive,layers:[this.bodyUILayer],onHover:this._onHover,onClick:this._onClick,onViewStateChange:this._onViewStateChange,onDragStart:this._onDragStart,onDrag:this._onDrag,onDragEnd:this._onDragEnd,getCursor:function(e){var t;return null!==(t=s.cursor)&&void 0!==t?t:e.isDragging?"grabbing":"grab"}});t.legacyLighting&&(u.effects=[new KM({ambientLight:new OM({color:[255,255,255],intensity:10})})]),this.deck=new JR(u),this.deck.setProps({viewState:{orbitAxis:"Y",minRotationX:null!==(n=t.minRotationX)&&void 0!==n?n:-15,maxRotationX:null!==(i=t.maxRotationX)&&void 0!==i?i:15,target:null!==(r=t.target)&&void 0!==r?r:[.5,.5,0],rotationX:0,rotationOrbit:null!==(o=t.rotation)&&void 0!==o?o:0,zoom:null!==(a=t.zoom)&&void 0!==a?a:9.5,camera:t.camera}}),t.rotation&&this.sceneRotationSubject.next([t.rotation,0])}return b(e,[{key:"initialize",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.bodyUILayer.state){e.next=5;break}return e.next=3,new Promise(function(e){setTimeout(e,200)});case 3:e.next=0;break;case 5:case"end":return e.stop()}},e,this)}))}},{key:"finalize",value:function(){this.deck.finalize()}},{key:"setScene",value:function(e){if((null==e?void 0:e.length)>0){var t,n=this.bodyUILayer.state.zoomOpacity,i=!1,r=_(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;o.zoomToOnLoad&&(this.zoomTo(o),i=!0)}}catch(a){r.e(a)}finally{r.f()}n=i?.05:n,this.deckProps.debugSceneNodeProcessing?this.debugSceneNodeProcessing(e,n):this.bodyUILayer.setState({data:e,zoomOpacity:n})}}},{key:"debugSceneNodeProcessing",value:function(e,t){var n=this,i="https://hubmapconsortium.github.io/ccf-3d-reference-object-library/VH_Female/United/VHF_United_Color.glb",r=new SO([.076,0,0,0,0,.076,16875389974302382e-33,0,0,-16875389974302382e-33,.076,0,.49,.034,.11,1]);(function(e,t,n){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i,r,o,a,s,u,c,l,d,f,p,g,m,y,b,w,k,x,S,E;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return TF(),n.next=3,PF({scenegraph:e,scenegraphNode:"VHF_Kidney_L_Low1"});case 3:i=n.sent,r={},o=[],a=_(i.scenes);try{for(a.s();!(s=a.n()).done;)OF(s.value,t=new SO(t||SO.IDENTITY),function(n,i){var a={"@id":n.name||n.id,"@type":"ProcessedNode",transformMatrix:new SO(i),wireframe:!0,node:n};if(o.push({"@id":"GLTF:".concat(a["@id"]),"@type":"GLTFNode",scenegraph:e,scenegraphNode:a["@id"],transformMatrix:new SO(t||SO.IDENTITY),tooltip:n.name||n.id,color:[255,255,255,255],_lighting:"pbr",zoomBasedOpacity:!0,node:n}),n.mesh&&n.mesh.primitives&&n.mesh.primitives.length>0){var s,u=_(n.mesh.primitives);try{for(u.s();!(s=u.n()).done;){var c=s.value;c.attributes.POSITION&&c.attributes.POSITION.min&&function(){var e=i.transformAsPoint(c.attributes.POSITION.min,[]),t=i.transformAsPoint(c.attributes.POSITION.max,[]);a.bbox=new vj({lowerBound:h(hj,v(e.map(function(e,n){return Math.min(e,t[n])}))),upperBound:h(hj,v(t.map(function(t,n){return Math.max(t,e[n])})))})}()}}catch(l){u.e(l)}finally{u.f()}}return r[a["@id"]]=a,!0})}catch(C){a.e(C)}finally{a.f()}u=_(Object.values(r).filter(function(e){return!e.bbox}));try{for(u.s();!(c=u.n()).done;){l=c.value,d=_(DF(l.node).map(function(e){return r[e]}).filter(function(e){return e.bbox}));try{for(d.s();!(f=d.n()).done;)p=f.value,l.bbox?l.bbox.extend(p.bbox):l.bbox=p.bbox.clone()}catch(C){d.e(C)}finally{d.f()}l.bbox||delete r[l["@id"]]}}catch(C){u.e(C)}finally{u.f()}for(g=0,m=Object.values(r);g1&&void 0!==arguments[1]?arguments[1]:LF,n=null,i=null;function r(){return jF(t,n,arguments)||(i=e.apply(null,arguments)),n=arguments,i}return r.reset=function(){n=null,i=null},r}var BF=FF(function(){var e=th();if(!e)return!1;var t=e.injector.get(Ll,null);return!!t&&t.some(function(e){return(e&&e.providers||[]).some(function(e){return e&&e.provide&&"MockNgModuleResolver"===e.provide.name||!1})})}),VF=function(){var e=function(){function e(){m(this,e),this.bootstrap$=new Sf(1)}return b(e,[{key:"appBootstrapped$",get:function(){return this.bootstrap$.asObservable()}},{key:"bootstrap",value:function(){this.bootstrap$.next(!0),this.bootstrap$.complete()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),zF=new Pi("INITIAL_STATE_TOKEN"),UF=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"set",value:function(e){this.value=e}},{key:"pop",value:function(){var e=this.value;return this.value={},e}}]),e}();return e.value={},e}(),HF=new Pi("Internals.StateContextFactory"),GF=new Pi("Internals.StateFactory");function WF(e,t){return t?function(n){return n.pipe(WF(function(n,i){return ge(e(n,i)).pipe(se(function(e,r){return t(n,e,i,r)}))}))}:function(t){return t.lift(new qF(e))}}var qF=function(){function e(t){m(this,e),this.project=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new XF(e,this.project))}}]),e}(),XF=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).project=i,r.hasSubscription=!1,r.hasCompleted=!1,r.index=0,r}return b(n,[{key:"_next",value:function(e){this.hasSubscription||this.tryNext(e)}},{key:"tryNext",value:function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(i){return void this.destination.error(i)}this.hasSubscription=!0,this._innerSub(t)}},{key:"_innerSub",value:function(e){var t=new me(this),n=this.destination;n.add(t);var i=be(e,t);i!==t&&n.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e){this.destination.next(e)}},{key:"notifyError",value:function(e){this.destination.error(e)}},{key:"notifyComplete",value:function(){this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()}}]),n}(ye);function YF(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return function(t){return t.lift(new KF(e))}}var KF=function(){function e(t){m(this,e),this.defaultValue=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new $F(e,this.defaultValue))}}]),e}(),$F=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).defaultValue=i,r.isEmpty=!0,r}return b(n,[{key:"_next",value:function(e){this.isEmpty=!1,this.destination.next(e)}},{key:"_complete",value:function(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}]),n}(X),QF=function(e){return"".concat(e," is not a valid state name. It needs to be a valid object property name.")},ZF=function(){return"States must register a 'name' property"},JF=function(e,t,n){return"State name '".concat(e,"' from ").concat(t," already exists in ").concat(n)},eB=function(){return"States must be decorated with @State() decorator"},tB=function(){return"Angular is running in production mode but NGXS is still running in the development mode!\nPlease set developmentMode to false on the NgxsModule options when in production mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })"},nB=function(){return"RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })"},iB=function(){return"Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\nPlease set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\nNgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })"},rB=function(){return"Patching arrays is not supported."},oB=function(){return"Patching primitives is not supported."},aB=function(e){return"'".concat(e,"' class should be decorated with @Injectable() right after the @State() decorator")},sB=function(){var e=function(){function e(t,n){m(this,e),this._ngZone=t,this._platformId=n,this.verifyZoneIsNotNooped(this._ngZone)}return b(e,[{key:"enter",value:function(e){return function(e){return"server"===e}(this._platformId)?this.runInsideAngular(e):this.runOutsideAngular(e)}},{key:"leave",value:function(e){return this.runInsideAngular(e)}},{key:"runInsideAngular",value:function(e){return Bl.isInAngularZone()?e():this._ngZone.run(e)}},{key:"runOutsideAngular",value:function(e){return Bl.isInAngularZone()?this._ngZone.runOutsideAngular(e):e()}},{key:"verifyZoneIsNotNooped",value:function(e){e instanceof Bl||console.warn(iB())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(xl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),uB=new Pi("ROOT_STATE_TOKEN"),cB=new Pi("FEATURE_STATE_TOKEN"),lB=new Pi("NGXS_PLUGINS"),hB=new Pi("NG_TEST_MODE"),dB=new Pi("NG_DEV_MODE"),fB="NGXS_META",pB="NGXS_OPTIONS_META",vB=function(){var e=function e(){m(this,e),this.defaultsState={},this.selectorOptions={injectContainerState:!0,suppressErrors:!0},this.compatibility={strictContentSecurityPolicy:!1},this.executionStrategy=sB};return e.\u0275prov=Ye({token:e,factory:e.\u0275fac=function(t){return new(t||e)}}),e}(),gB=function e(t,n,i){m(this,e),this.previousValue=t,this.currentValue=n,this.firstChange=i},mB=new Pi("NGXS_EXECUTION_STRATEGY");function yB(e){return e.constructor&&e.constructor.type?e.constructor.type:e.type}var bB=function(e,t,n){e=Object.assign({},e);var i=t.split("."),r=i.length-1;return i.reduce(function(e,t,i){return e[t]=i===r?n:Array.isArray(e[t])?e[t].slice():Object.assign({},e[t]),e&&e[t]},e),e},_B=function(e,t){return t.split(".").reduce(function(e,t){return e&&e[t]},e)},wB=function(e){return e&&"object"==typeof e&&!Array.isArray(e)},kB=function e(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r2&&void 0!==arguments[2]?arguments[2]:CB,i=function(e){return e.reduce(function(e,t){return e[yB(t)]=!0,e},{})}(e),r=t&&function(e){return e.reduce(function(e,t){return e[t]=!0,e},{})}(t);return function(e){return e.pipe(function(e,t){return rf(function(n){var i=yB(n.action);return e[i]&&(!t||t[n.status])})}(i,r),n())}}(t,["DISPATCHED"])}function CB(){return se(function(e){return e.action})}function OB(e){return function(t){return new J(function(n){return t.subscribe({next:function(t){e.leave(function(){return n.next(t)})},error:function(t){e.leave(function(){return n.error(t)})},complete:function(){e.leave(function(){return n.complete()})}})})}}var TB=function(){var e=function(){function e(t){m(this,e),this._executionStrategy=t}return b(e,[{key:"enter",value:function(e){return this._executionStrategy.enter(e)}},{key:"leave",value:function(e){return this._executionStrategy.leave(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(mB))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),AB=function(t){a(i,t);var n=s(i);function i(){var e;return m(this,i),(e=n.apply(this,arguments))._itemQueue=[],e._busyPushingNext=!1,e}return b(i,[{key:"next",value:function(t){if(this._busyPushingNext)this._itemQueue.unshift(t);else{for(this._busyPushingNext=!0,e(p(i.prototype),"next",this).call(this,t);this._itemQueue.length>0;){var n=this._itemQueue.pop();e(p(i.prototype),"next",this).call(this,n)}this._busyPushingNext=!1}}}]),i}(re),PB=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(AB);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac}),t}(),MB=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,function(t){var n=e.pipe(OB(i)).subscribe({next:function(e){return t.next(e)},error:function(e){return t.error(e)},complete:function(){return t.complete()}});t.add(n)})}return n}(J);return e.\u0275fac=function(t){return new(t||e)(Ki(PB),Ki(TB))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),IB=function e(t){return function(){for(var n=arguments.length,i=new Array(n),r=0;r1&&void 0!==arguments[1]?arguments[1]:[];Array.isArray(o)||(o=[]),o.push(r),n[r]=!0,e[r].forEach(function(e){if(o.indexOf(e)>=0)throw new Error("Circular dependency '".concat(e,"' is required by '").concat(r,"': ").concat(o.join(" -> ")));n[e]||i(e,o.slice(0))}),t.indexOf(r)<0&&t.push(r)};return Object.keys(e).forEach(function(e){return i(e)}),t.reverse()}(r),a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=function e(t,n){for(var i in t)if(t.hasOwnProperty(i)&&t[i].indexOf(n)>=0){var r=e(t,i);return null!==r?"".concat(r,".").concat(i):i}return null};for(var i in e)if(e.hasOwnProperty(i)){var r=n(e,i);t[i]=r?"".concat(r,".").concat(i):i}return t}(r),s=function(e){return e.reduce(function(e,t){return e[t[fB].name]=t,e},{})}(n),u=[],c=_(o);try{for(c.s();!(i=c.n()).done;){var l=i.value,h=s[l],d=a[l],f=h[fB];this.addRuntimeInfoToMeta(f,d);var p={name:l,path:d,isInitialised:!1,actions:f.actions,instance:this._injector.get(h),defaults:e.cloneDefaults(f.defaults)};this.hasBeenMountedAndBootstrapped(l,d)||u.push(p),this.states.push(p)}}catch(v){c.e(v)}finally{c.f()}return u}},{key:"addAndReturnDefaults",value:function(e){var t=this.add(e||[]);return{defaults:t.reduce(function(e,t){return bB(e,t.path,t.defaults)},{}),states:t}}},{key:"connectActionHandlers",value:function(){var e=this;null===this._actionsSubscription&&(this._actionsSubscription=this._actions.pipe(rf(function(e){return"DISPATCHED"===e.status}),_e(function(t){var n=t.action;return e.invokeActions(e._actions,n).pipe(se(function(){return{action:n,status:"SUCCESSFUL"}}),YF({action:n,status:"CANCELED"}),kb(function(e){return Nd({action:n,status:"ERRORED",error:e})}))})).subscribe(function(t){return e._actionResults.next(t)}))}},{key:"invokeActions",value:function(e,t){var n,i=yB(t),r=[],o=_(this.states);try{for(o.s();!(n=o.n()).done;){var a=n.value,s=a.actions[i];if(s){var u,c=_(s);try{for(c.s();!(u=c.n()).done;){var l=u.value,h=this._stateContextFactory.createStateContext(a);try{var d=a.instance[l.fn](h,t);d instanceof Promise&&(d=ge(d)),d instanceof J?(d=d.pipe(YF({})),l.options.cancelUncompleted&&(d=d.pipe(sf(e.pipe(EB(t)))))):d=Nd({}).pipe(Cf()),r.push(d)}catch(d){r.push(yf(d))}}}catch(f){c.e(f)}finally{c.f()}}}}catch(f){o.e(f)}finally{o.f()}return r.length||r.push(Nd({})),_b(r)}},{key:"addToStatesMap",value:function(e){var t,n=[],i=this.statesByName,r=_(e);try{for(r.s();!(t=r.n()).done;){var o=t.value,a=UB.checkStateNameIsUnique(o,i);!i[a]&&(n.push(o),i[a]=o)}}catch(s){r.e(s)}finally{r.f()}return{newStates:n}}},{key:"addRuntimeInfoToMeta",value:function(e,t){this.statePaths[e.name]=t,e.path=t}},{key:"hasBeenMountedAndBootstrapped",value:function(e,t){var n=void 0!==_B(this._initialState,t);return this.statesByName[e]&&n}}],[{key:"cloneDefaults",value:function(e){return Array.isArray(e)?e.slice():function(e){return"object"==typeof e&&null!==e||"function"==typeof e}(e)?Object.assign({},e):void 0===e?{}:e}},{key:"checkStatesAreValid",value:function(e){e.forEach(UB.getValidStateMeta)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(rs),Ki(vB),Ki(e,12),Ki(PB),Ki(NB),Ki(zB),Ki(zF,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),GB=function(){var e=function(){function e(t,n,i){m(this,e),this.internalStateOperations=t,this.stateContextFactory=n,this.bootstrapper=i}return b(e,[{key:"ngxsBootstrap",value:function(e,t){var n=this;this.internalStateOperations.getRootStateOperations().dispatch(e).pipe(rf(function(){return!!t}),iv(function(){return n.invokeInit(t.states)}),_e(function(){return n.bootstrapper.appBootstrapped$}),rf(function(e){return!!e})).subscribe(function(){return n.invokeBootstrap(t.states)})}},{key:"invokeInit",value:function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var i=t.value,r=i.instance;if(r.ngxsOnChanges){var o=SB(i,{currentAppState:{},newAppState:this.internalStateOperations.getRootStateOperations().getState()});r.ngxsOnChanges(o)}r.ngxsOnInit&&r.ngxsOnInit(this.getStateContext(i)),i.isInitialised=!0}}catch(a){n.e(a)}finally{n.f()}}},{key:"invokeBootstrap",value:function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var i=t.value,r=i.instance;r.ngxsAfterBootstrap&&r.ngxsAfterBootstrap(this.getStateContext(i))}}catch(o){n.e(o)}finally{n.f()}}},{key:"getStateContext",value:function(e){return this.stateContextFactory.createStateContext(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(VB),Ki(zB),Ki(VF))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),WB=function(){var e=function(){function e(t,n,i,r,o,a){m(this,e),this._stateStream=t,this._internalStateOperations=n,this._config=i,this._internalExecutionStrategy=r,this._stateFactory=o,this.initStateStream(a)}return b(e,[{key:"dispatch",value:function(e){return this._internalStateOperations.getRootStateOperations().dispatch(e)}},{key:"select",value:function(e){var t=this,n=this.getStoreBoundSelectorFn(e);return this._stateStream.pipe(se(n),kb(function(e){var n=t._config.selectorOptions.suppressErrors;return e instanceof TypeError&&n?Nd(void 0):yf(e)}),Yd(),OB(this._internalExecutionStrategy))}},{key:"selectOnce",value:function(e){return this.select(e).pipe(op(1))}},{key:"selectSnapshot",value:function(e){return this.getStoreBoundSelectorFn(e)(this._stateStream.getValue())}},{key:"subscribe",value:function(e){return this._stateStream.pipe(OB(this._internalExecutionStrategy)).subscribe(e)}},{key:"snapshot",value:function(){return this._internalStateOperations.getRootStateOperations().getState()}},{key:"reset",value:function(e){return this._internalStateOperations.getRootStateOperations().setState(e)}},{key:"getStoreBoundSelectorFn",value:function(e){return function(e){var t=function(e){return e.NGXS_SELECTOR_META}(e)||xB(e);return t&&t.makeRootSelector||function(){return e}}(e)(this._stateFactory.getRuntimeSelectorContext())}},{key:"initStateStream",value:function(e){var t=this._stateStream.value;if(!t||0===Object.keys(t).length){var n=Object.keys(this._config.defaultsState).length>0?Object.assign({},this._config.defaultsState,e):e;this._stateStream.next(n)}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(RB),Ki(VB),Ki(vB),Ki(TB),Ki(HB),Ki(zF,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),qB=function(){var e=function(){function e(t,n){m(this,e),e.store=t,e.config=n}return b(e,[{key:"ngOnDestroy",value:function(){e.store=null,e.config=null}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(WB),Ki(vB))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e.store=null,e.config=null,e}(),XB=function(){function e(){m(this,e)}return b(e,null,[{key:"type",get:function(){return"@@INIT"}}]),e}(),YB=function(){function e(t){m(this,e),this.addedStates=t}return b(e,null,[{key:"type",get:function(){return"@@UPDATE_STATE"}}]),e}(),KB=new Sf(1),$B=function(){var e=function e(t,n,i,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],a=arguments.length>5?arguments[5]:void 0;m(this,e),function(){try{var t=window.ng,n=!(t.probe&&t.coreTokens)&&Zl();KB.next(n)}catch(e){KB.next(!1)}finally{KB.complete()}}();var s=t.addAndReturnDefaults(o);n.setStateToTheCurrentWithNew(s),t.connectActionHandlers(),a.ngxsBootstrap(new XB,s)};return e.\u0275fac=function(t){return new(t||e)(Ki(HB),Ki(VB),Ki(WB),Ki(qB),Ki(uB,8),Ki(GB))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),QB=function(){var e=function(){function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=arguments.length>4?arguments[4]:void 0;m(this,e);var a=e.flattenStates(r),s=i.addAndReturnDefaults(a);s.states.length&&(n.setStateToTheCurrentWithNew(s),o.ngxsBootstrap(new YB(s.defaults),s))}return b(e,null,[{key:"flattenStates",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.reduce(function(e,t){return e.concat(t)},[])}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(WB),Ki(VB),Ki(HB),Ki(cB,8),Ki(GB))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),ZB=function(){function e(){m(this,e)}return b(e,null,[{key:"forRoot",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return{ngModule:$B,providers:[HB,zB,MB,PB,VF,BB,FB,GB,LB,NB,VB,TB,WB,RB,qB,DB].concat(v(t),v(e.ngxsTokenProviders(t,n)))}}},{key:"forFeature",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{ngModule:QB,providers:[HB,DB].concat(v(e),[{provide:cB,multi:!0,useValue:e}])}}},{key:"ngxsTokenProviders",value:function(t,n){return[{provide:hB,useValue:BF},{provide:dB,useValue:Zl},{provide:mB,useClass:n.executionStrategy||sB},{provide:uB,useValue:t},{provide:e.ROOT_OPTIONS,useValue:n},{provide:vB,useFactory:e.ngxsConfigFactory,deps:[e.ROOT_OPTIONS]},{provide:Sl,useFactory:e.appBootstrapListenerFactory,multi:!0,deps:[VF]},{provide:zF,useFactory:e.getInitialState},{provide:HF,useExisting:zB},{provide:GF,useExisting:HB}]}},{key:"ngxsConfigFactory",value:function(e){return kB(new vB,e)}},{key:"appBootstrapListenerFactory",value:function(e){return function(){return e.bootstrap()}}},{key:"getInitialState",value:function(){return UF.pop()}}]),e}();function JB(e){return function(t){!function(e){KB.subscribe(function(t){t&&(e.\u0275prov||console.warn(aB(e.name)))})}(t);var n=t,i=function(e){if(!e.hasOwnProperty(fB)){var t={name:null,actions:{},defaults:{},path:null,makeRootSelector:function(e){return e.getStateGetter(t.name)},children:[]};Object.defineProperty(e,fB,{value:t})}return xB(e)}(n),r=Object.getPrototypeOf(n),o=function(t){return Object.assign({},t[pB]||{},e)}(r);(function(e){var t=e.meta,n=e.inheritedStateClass,i=e.optionsWithInheritance,r=i.children,o=i.defaults,a=i.name,s="string"==typeof a?a:a&&a.getName()||null;UB.checkCorrectStateName(s),n.hasOwnProperty(fB)&&(t.actions=Object.assign({},t.actions,(n[fB]||{}).actions)),t.children=r,t.defaults=o,t.name=s})({meta:i,inheritedStateClass:r,optionsWithInheritance:o}),n[pB]=o}}ZB.\u0275fac=function(e){return new(e||ZB)},ZB.\u0275mod=At({type:ZB}),ZB.\u0275inj=Ke({}),ZB.ROOT_OPTIONS=new Pi("ROOT_OPTIONS");var eV=function(){var e=function(){function e(t,n){m(this,e),this._renderer=t,this._elementRef=n,this.onChange=function(e){},this.onTouched=function(){}}return b(e,[{key:"setProperty",value:function(e,t){this._renderer.setProperty(this._elementRef.nativeElement,e,t)}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"registerOnChange",value:function(e){this.onChange=e}},{key:"setDisabledState",value:function(e){this.setProperty("disabled",e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Qu),Ss(Yu))},e.\u0275dir=Mt({type:e}),e}(),tV=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(eV);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,features:[as]}),t}(),nV=new Pi("NgValueAccessor"),iV={provide:nV,useExisting:ze(function(){return oV}),multi:!0},rV=new Pi("CompositionEventMode"),oV=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e,i))._compositionMode=r,o._composing=!1,null==o._compositionMode&&(o._compositionMode=!function(){var e=lh()?lh().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}()),o}return b(n,[{key:"writeValue",value:function(e){this.setProperty("value",null==e?"":e)}},{key:"_handleInput",value:function(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}},{key:"_compositionStart",value:function(){this._composing=!0}},{key:"_compositionEnd",value:function(e){this._composing=!1,this._compositionMode&&this.onChange(e)}}]),n}(eV);return e.\u0275fac=function(t){return new(t||e)(Ss(Qu),Ss(Yu),Ss(rV,8))},e.\u0275dir=Mt({type:e,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(e,t){1&e&&js("input",function(e){return t._handleInput(e.target.value)})("blur",function(){return t.onTouched()})("compositionstart",function(){return t._compositionStart()})("compositionend",function(e){return t._compositionEnd(e.target.value)})},features:[Uu([iV]),as]}),e}(),aV=new Pi("NgValidators"),sV=new Pi("NgAsyncValidators");function uV(e){return null!=e}function cV(e){var t=Ds(e)?ge(e):e;return Ls(t),t}function lV(e){var t={};return e.forEach(function(e){t=null!=e?Object.assign(Object.assign({},t),e):t}),0===Object.keys(t).length?null:t}function hV(e,t){return t.map(function(t){return t(e)})}function dV(e){return e.map(function(e){return function(e){return!e.validate}(e)?e:function(t){return e.validate(t)}})}function fV(e){return null!=e?function(e){if(!e)return null;var t=e.filter(uV);return 0==t.length?null:function(e){return lV(hV(e,t))}}(dV(e)):null}function pV(e){return null!=e?function(e){if(!e)return null;var t=e.filter(uV);return 0==t.length?null:function(e){return _b(hV(e,t).map(cV)).pipe(se(lV))}}(dV(e)):null}function vV(e,t){return null===e?[t]:Array.isArray(e)?[].concat(v(e),[t]):[e,t]}function gV(e){return e._rawValidators}function mV(e){return e._rawAsyncValidators}function yV(e){return e?Array.isArray(e)?e:[e]:[]}function bV(e,t){return Array.isArray(e)?e.includes(t):e===t}function _V(e,t){var n=yV(t);return yV(e).forEach(function(e){bV(n,e)||n.push(e)}),n}function wV(e,t){return yV(t).filter(function(t){return!bV(e,t)})}var kV=function(){var e=function(){function e(){m(this,e),this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}return b(e,[{key:"value",get:function(){return this.control?this.control.value:null}},{key:"valid",get:function(){return this.control?this.control.valid:null}},{key:"invalid",get:function(){return this.control?this.control.invalid:null}},{key:"pending",get:function(){return this.control?this.control.pending:null}},{key:"disabled",get:function(){return this.control?this.control.disabled:null}},{key:"enabled",get:function(){return this.control?this.control.enabled:null}},{key:"errors",get:function(){return this.control?this.control.errors:null}},{key:"pristine",get:function(){return this.control?this.control.pristine:null}},{key:"dirty",get:function(){return this.control?this.control.dirty:null}},{key:"touched",get:function(){return this.control?this.control.touched:null}},{key:"status",get:function(){return this.control?this.control.status:null}},{key:"untouched",get:function(){return this.control?this.control.untouched:null}},{key:"statusChanges",get:function(){return this.control?this.control.statusChanges:null}},{key:"valueChanges",get:function(){return this.control?this.control.valueChanges:null}},{key:"path",get:function(){return null}},{key:"_setValidators",value:function(e){this._rawValidators=e||[],this._composedValidatorFn=fV(this._rawValidators)}},{key:"_setAsyncValidators",value:function(e){this._rawAsyncValidators=e||[],this._composedAsyncValidatorFn=pV(this._rawAsyncValidators)}},{key:"validator",get:function(){return this._composedValidatorFn||null}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn||null}},{key:"_registerOnDestroy",value:function(e){this._onDestroyCallbacks.push(e)}},{key:"_invokeOnDestroyCallbacks",value:function(){this._onDestroyCallbacks.forEach(function(e){return e()}),this._onDestroyCallbacks=[]}},{key:"reset",value:function(e){this.control&&this.control.reset(e)}},{key:"hasError",value:function(e,t){return!!this.control&&this.control.hasError(e,t)}},{key:"getError",value:function(e,t){return this.control?this.control.getError(e,t):null}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e}),e}(),xV=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"formDirective",get:function(){return null}},{key:"path",get:function(){return null}}]),n}(kV);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,features:[as]}),t}(),SV=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._parent=null,e.name=null,e.valueAccessor=null,e}return n}(kV),EV=function(){function e(t){m(this,e),this._cd=t}return b(e,[{key:"is",value:function(e){var t,n,i;return"submitted"===e?!!(null===(t=this._cd)||void 0===t?void 0:t.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[e])}}]),e}(),CV=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,e)}return n}(EV);return e.\u0275fac=function(t){return new(t||e)(Ss(SV,2))},e.\u0275dir=Mt({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,t){2&e&&au("ng-untouched",t.is("untouched"))("ng-touched",t.is("touched"))("ng-pristine",t.is("pristine"))("ng-dirty",t.is("dirty"))("ng-valid",t.is("valid"))("ng-invalid",t.is("invalid"))("ng-pending",t.is("pending"))},features:[as]}),e}(),OV=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,e)}return n}(EV);return e.\u0275fac=function(t){return new(t||e)(Ss(xV,10))},e.\u0275dir=Mt({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(e,t){2&e&&au("ng-untouched",t.is("untouched"))("ng-touched",t.is("touched"))("ng-pristine",t.is("pristine"))("ng-dirty",t.is("dirty"))("ng-valid",t.is("valid"))("ng-invalid",t.is("invalid"))("ng-pending",t.is("pending"))("ng-submitted",t.is("submitted"))},features:[as]}),e}();function TV(e,t){MV(e,t),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(function(n){e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&RV(e,t)})}(e,t),function(e,t){var n=function(e,n){t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)};e.registerOnChange(n),t._registerOnDestroy(function(){e._unregisterOnChange(n)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(function(){e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&RV(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function(e,t){if(t.valueAccessor.setDisabledState){var n=function(e){t.valueAccessor.setDisabledState(e)};e.registerOnDisabledChange(n),t._registerOnDestroy(function(){e._unregisterOnDisabledChange(n)})}}(e,t)}function AV(e,t){var n=function(){};t.valueAccessor&&(t.valueAccessor.registerOnChange(n),t.valueAccessor.registerOnTouched(n)),IV(e,t),e&&(t._invokeOnDestroyCallbacks(),e._registerOnCollectionChange(function(){}))}function PV(e,t){e.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function MV(e,t){var n=gV(e);null!==t.validator?e.setValidators(vV(n,t.validator)):"function"==typeof n&&e.setValidators([n]);var i=mV(e);null!==t.asyncValidator?e.setAsyncValidators(vV(i,t.asyncValidator)):"function"==typeof i&&e.setAsyncValidators([i]);var r=function(){return e.updateValueAndValidity()};PV(t._rawValidators,r),PV(t._rawAsyncValidators,r)}function IV(e,t){var n=!1;if(null!==e){if(null!==t.validator){var i=gV(e);if(Array.isArray(i)&&i.length>0){var r=i.filter(function(e){return e!==t.validator});r.length!==i.length&&(n=!0,e.setValidators(r))}}if(null!==t.asyncValidator){var o=mV(e);if(Array.isArray(o)&&o.length>0){var a=o.filter(function(e){return e!==t.asyncValidator});a.length!==o.length&&(n=!0,e.setAsyncValidators(a))}}}var s=function(){};return PV(t._rawValidators,s),PV(t._rawAsyncValidators,s),n}function RV(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function DV(e,t){MV(e,t)}function NV(e,t){e._syncPendingControls(),t.forEach(function(e){var t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})}function LV(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var jV="VALID",FV="INVALID",BV="PENDING",VV="DISABLED";function zV(e){return(WV(e)?e.validators:e)||null}function UV(e){return Array.isArray(e)?fV(e):e||null}function HV(e,t){return(WV(t)?t.asyncValidators:e)||null}function GV(e){return Array.isArray(e)?pV(e):e||null}function WV(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}var qV=function(){function e(t,n){m(this,e),this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=function(){},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=n,this._composedValidatorFn=UV(this._rawValidators),this._composedAsyncValidatorFn=GV(this._rawAsyncValidators)}return b(e,[{key:"validator",get:function(){return this._composedValidatorFn},set:function(e){this._rawValidators=this._composedValidatorFn=e}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn},set:function(e){this._rawAsyncValidators=this._composedAsyncValidatorFn=e}},{key:"parent",get:function(){return this._parent}},{key:"valid",get:function(){return this.status===jV}},{key:"invalid",get:function(){return this.status===FV}},{key:"pending",get:function(){return this.status==BV}},{key:"disabled",get:function(){return this.status===VV}},{key:"enabled",get:function(){return this.status!==VV}},{key:"dirty",get:function(){return!this.pristine}},{key:"untouched",get:function(){return!this.touched}},{key:"updateOn",get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}},{key:"setValidators",value:function(e){this._rawValidators=e,this._composedValidatorFn=UV(e)}},{key:"setAsyncValidators",value:function(e){this._rawAsyncValidators=e,this._composedAsyncValidatorFn=GV(e)}},{key:"addValidators",value:function(e){this.setValidators(_V(e,this._rawValidators))}},{key:"addAsyncValidators",value:function(e){this.setAsyncValidators(_V(e,this._rawAsyncValidators))}},{key:"removeValidators",value:function(e){this.setValidators(wV(e,this._rawValidators))}},{key:"removeAsyncValidators",value:function(e){this.setAsyncValidators(wV(e,this._rawAsyncValidators))}},{key:"hasValidator",value:function(e){return bV(this._rawValidators,e)}},{key:"hasAsyncValidator",value:function(e){return bV(this._rawAsyncValidators,e)}},{key:"clearValidators",value:function(){this.validator=null}},{key:"clearAsyncValidators",value:function(){this.asyncValidator=null}},{key:"markAsTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!0,this._parent&&!e.onlySelf&&this._parent.markAsTouched(e)}},{key:"markAllAsTouched",value:function(){this.markAsTouched({onlySelf:!0}),this._forEachChild(function(e){return e.markAllAsTouched()})}},{key:"markAsUntouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!1,this._pendingTouched=!1,this._forEachChild(function(e){e.markAsUntouched({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"markAsDirty",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!1,this._parent&&!e.onlySelf&&this._parent.markAsDirty(e)}},{key:"markAsPristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!0,this._pendingDirty=!1,this._forEachChild(function(e){e.markAsPristine({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"markAsPending",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.status=BV,!1!==e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!e.onlySelf&&this._parent.markAsPending(e)}},{key:"disable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status=VV,this.errors=null,this._forEachChild(function(t){t.disable(Object.assign(Object.assign({},e),{onlySelf:!0}))}),this._updateValue(),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach(function(e){return e(!0)})}},{key:"enable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status=jV,this._forEachChild(function(t){t.enable(Object.assign(Object.assign({},e),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach(function(e){return e(!1)})}},{key:"_updateAncestors",value:function(e){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}},{key:"setParent",value:function(e){this._parent=e}},{key:"updateValueAndValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===jV||this.status===BV)&&this._runAsyncValidator(e.emitEvent)),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(e)}},{key:"_updateTreeValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{emitEvent:!0};this._forEachChild(function(t){return t._updateTreeValidity(e)}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}},{key:"_setInitialStatus",value:function(){this.status=this._allControlsDisabled()?VV:jV}},{key:"_runValidator",value:function(){return this.validator?this.validator(this):null}},{key:"_runAsyncValidator",value:function(e){var t=this;if(this.asyncValidator){this.status=BV,this._hasOwnPendingAsyncValidator=!0;var n=cV(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(function(n){t._hasOwnPendingAsyncValidator=!1,t.setErrors(n,{emitEvent:e})})}}},{key:"_cancelExistingSubscription",value:function(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}},{key:"setErrors",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errors=e,this._updateControlsErrors(!1!==t.emitEvent)}},{key:"get",value:function(e){return function(e,t,n){if(null==t||(Array.isArray(t)||(t=t.split(".")),Array.isArray(t)&&0===t.length))return null;var i=e;return t.forEach(function(e){i=i instanceof YV?i.controls.hasOwnProperty(e)?i.controls[e]:null:i instanceof KV&&i.at(e)||null}),i}(this,e)}},{key:"getError",value:function(e,t){var n=t?this.get(t):this;return n&&n.errors?n.errors[e]:null}},{key:"hasError",value:function(e,t){return!!this.getError(e,t)}},{key:"root",get:function(){for(var e=this;e._parent;)e=e._parent;return e}},{key:"_updateControlsErrors",value:function(e){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(e)}},{key:"_initObservables",value:function(){this.valueChanges=new Qc,this.statusChanges=new Qc}},{key:"_calculateStatus",value:function(){return this._allControlsDisabled()?VV:this.errors?FV:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(BV)?BV:this._anyControlsHaveStatus(FV)?FV:jV}},{key:"_anyControlsHaveStatus",value:function(e){return this._anyControls(function(t){return t.status===e})}},{key:"_anyControlsDirty",value:function(){return this._anyControls(function(e){return e.dirty})}},{key:"_anyControlsTouched",value:function(){return this._anyControls(function(e){return e.touched})}},{key:"_updatePristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!this._anyControlsDirty(),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"_updateTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=this._anyControlsTouched(),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"_isBoxedValue",value:function(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}},{key:"_registerOnCollectionChange",value:function(e){this._onCollectionChange=e}},{key:"_setUpdateStrategy",value:function(e){WV(e)&&null!=e.updateOn&&(this._updateOn=e.updateOn)}},{key:"_parentMarkedDirty",value:function(e){return!e&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}]),e}(),XV=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1?arguments[1]:void 0,o=arguments.length>2?arguments[2]:void 0;return m(this,n),(e=t.call(this,zV(r),HV(o,r)))._onChange=[],e._applyFormState(i),e._setUpdateStrategy(r),e._initObservables(),e.updateValueAndValidity({onlySelf:!0,emitEvent:!!e.asyncValidator}),e}return b(n,[{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.value=this._pendingValue=e,this._onChange.length&&!1!==n.emitModelToViewChange&&this._onChange.forEach(function(e){return e(t.value,!1!==n.emitViewToModelChange)}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.setValue(e,t)}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._applyFormState(e),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}},{key:"_updateValue",value:function(){}},{key:"_anyControls",value:function(e){return!1}},{key:"_allControlsDisabled",value:function(){return this.disabled}},{key:"registerOnChange",value:function(e){this._onChange.push(e)}},{key:"_unregisterOnChange",value:function(e){LV(this._onChange,e)}},{key:"registerOnDisabledChange",value:function(e){this._onDisabledChange.push(e)}},{key:"_unregisterOnDisabledChange",value:function(e){LV(this._onDisabledChange,e)}},{key:"_forEachChild",value:function(e){}},{key:"_syncPendingControls",value:function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}},{key:"_applyFormState",value:function(e){this._isBoxedValue(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}}]),n}(qV),YV=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,zV(i),HV(r,i))).controls=e,o._initObservables(),o._setUpdateStrategy(i),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!!o.asyncValidator}),o}return b(n,[{key:"registerControl",value:function(e,t){return this.controls[e]?this.controls[e]:(this.controls[e]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}},{key:"addControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.registerControl(e,t),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"removeControl",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),delete this.controls[e],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}},{key:"setControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),delete this.controls[e],t&&this.registerControl(e,t),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"contains",value:function(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),Object.keys(e).forEach(function(i){t._throwIfControlMissing(i),t.controls[i].setValue(e[i],{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=e&&(Object.keys(e).forEach(function(i){t.controls[i]&&t.controls[i].patchValue(e[i],{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n))}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(n,i){n.reset(e[i],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this._reduceChildren({},function(e,t,n){return e[n]=t instanceof XV?t.value:t.getRawValue(),e})}},{key:"_syncPendingControls",value:function(){var e=this._reduceChildren(!1,function(e,t){return!!t._syncPendingControls()||e});return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){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[e])throw new Error("Cannot find form control with name: ".concat(e,"."))}},{key:"_forEachChild",value:function(e){var t=this;Object.keys(this.controls).forEach(function(n){var i=t.controls[n];i&&e(i,n)})}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild(function(t){t.setParent(e),t._registerOnCollectionChange(e._onCollectionChange)})}},{key:"_updateValue",value:function(){this.value=this._reduceValue()}},{key:"_anyControls",value:function(e){for(var t=0,n=Object.keys(this.controls);t0||this.disabled}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control with name: '".concat(n,"'."))})}}]),n}(qV),KV=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,zV(i),HV(r,i))).controls=e,o._initObservables(),o._setUpdateStrategy(i),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!!o.asyncValidator}),o}return b(n,[{key:"at",value:function(e){return this.controls[e]}},{key:"push",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls.push(e),this._registerControl(e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}},{key:"insert",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity({emitEvent:n.emitEvent})}},{key:"removeAt",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),this.updateValueAndValidity({emitEvent:t.emitEvent})}},{key:"setControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"length",get:function(){return this.controls.length}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),e.forEach(function(e,i){t._throwIfControlMissing(i),t.at(i).setValue(e,{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=e&&(e.forEach(function(e,i){t.at(i)&&t.at(i).patchValue(e,{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n))}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(n,i){n.reset(e[i],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this.controls.map(function(e){return e instanceof XV?e.value:e.getRawValue()})}},{key:"clear",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.controls.length<1||(this._forEachChild(function(e){return e._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity({emitEvent:e.emitEvent}))}},{key:"_syncPendingControls",value:function(){var e=this.controls.reduce(function(e,t){return!!t._syncPendingControls()||e},!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){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(e))throw new Error("Cannot find form control at index ".concat(e))}},{key:"_forEachChild",value:function(e){this.controls.forEach(function(t,n){e(t,n)})}},{key:"_updateValue",value:function(){var e=this;this.value=this.controls.filter(function(t){return t.enabled||e.disabled}).map(function(e){return e.value})}},{key:"_anyControls",value:function(e){return this.controls.some(function(t){return t.enabled&&e(t)})}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild(function(t){return e._registerControl(t)})}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control at index: ".concat(n,"."))})}},{key:"_allControlsDisabled",value:function(){var e,t=_(this.controls);try{for(t.s();!(e=t.n()).done;){if(e.value.enabled)return!1}}catch(n){t.e(n)}finally{t.f()}return this.controls.length>0||this.disabled}},{key:"_registerControl",value:function(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}}]),n}(qV),$V={provide:xV,useExisting:ze(function(){return ZV})},QV=Promise.resolve(null),ZV=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).submitted=!1,r._directives=[],r.ngSubmit=new Qc,r.form=new YV({},fV(e),pV(i)),r}return b(n,[{key:"ngAfterViewInit",value:function(){this._setUpdateStrategy()}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"controls",get:function(){return this.form.controls}},{key:"addControl",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path);e.control=n.registerControl(e.name,e.control),TV(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),t._directives.push(e)})}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name),LV(t._directives,e)})}},{key:"addFormGroup",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path),i=new YV({});DV(i,e),n.registerControl(e.name,i),i.updateValueAndValidity({emitEvent:!1})})}},{key:"removeFormGroup",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name)})}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){var n=this;QV.then(function(){n.form.get(e.path).setValue(t)})}},{key:"setValue",value:function(e){this.control.setValue(e)}},{key:"onSubmit",value:function(e){return this.submitted=!0,NV(this.form,this._directives),this.ngSubmit.emit(e),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(e){this.form.reset(e),this.submitted=!1}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}},{key:"_findContainer",value:function(e){return e.pop(),e.length?this.form.get(e):this.form}}]),n}(xV);return e.\u0275fac=function(t){return new(t||e)(Ss(aV,10),Ss(sV,10))},e.\u0275dir=Mt({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(e,t){1&e&&js("submit",function(e){return t.onSubmit(e)})("reset",function(){return t.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Uu([$V]),as]}),e}(),JV=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),e}(),ez=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),tz=new Pi("NgModelWithFormControlWarning"),nz={provide:SV,useExisting:ze(function(){return iz})},iz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this))._ngModelWarningConfig=o,a.update=new Qc,a._ngModelWarningSent=!1,a._setValidators(e),a._setAsyncValidators(i),a.valueAccessor=function(e,t){return t?(Array.isArray(t),t.forEach(function(e){e.constructor===oV?n=e:function(e){return Object.getPrototypeOf(e.constructor)===tV}(e)?i=e:r=e}),r||i||n||null):null;var n,i,r}(0,r),a}return b(n,[{key:"isDisabled",set:function(e){}},{key:"ngOnChanges",value:function(e){if(this._isControlChanged(e)){var t=e.form.previousValue;t&&AV(t,this,!1),TV(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}(function(e,t){if(!e.hasOwnProperty("model"))return!1;var n=e.model;return!!n.isFirstChange()||!Object.is(t,n.currentValue)})(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.form&&AV(this.form,this,!1)}},{key:"path",get:function(){return[]}},{key:"control",get:function(){return this.form}},{key:"viewToModelUpdate",value:function(e){this.viewModel=e,this.update.emit(e)}},{key:"_isControlChanged",value:function(e){return e.hasOwnProperty("form")}}]),n}(SV);return e.\u0275fac=function(t){return new(t||e)(Ss(aV,10),Ss(sV,10),Ss(nV,10),Ss(tz,8))},e.\u0275dir=Mt({type:e,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[Uu([nz]),as,Ht]}),e._ngModelWarningSentOnce=!1,e}(),rz={provide:xV,useExisting:ze(function(){return oz})},oz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).validators=e,r.asyncValidators=i,r.submitted=!1,r._onCollectionChange=function(){return r._updateDomValue()},r.directives=[],r.form=null,r.ngSubmit=new Qc,r._setValidators(e),r._setAsyncValidators(i),r}return b(n,[{key:"ngOnChanges",value:function(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}},{key:"ngOnDestroy",value:function(){this.form&&(IV(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(function(){}))}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"addControl",value:function(e){var t=this.form.get(e.path);return TV(t,e),t.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),t}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){AV(e.control||null,e,!1),LV(this.directives,e)}},{key:"addFormGroup",value:function(e){this._setUpFormContainer(e)}},{key:"removeFormGroup",value:function(e){this._cleanUpFormContainer(e)}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"addFormArray",value:function(e){this._setUpFormContainer(e)}},{key:"removeFormArray",value:function(e){this._cleanUpFormContainer(e)}},{key:"getFormArray",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){this.form.get(e.path).setValue(t)}},{key:"onSubmit",value:function(e){return this.submitted=!0,NV(this.form,this.directives),this.ngSubmit.emit(e),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(e){this.form.reset(e),this.submitted=!1}},{key:"_updateDomValue",value:function(){var e=this;this.directives.forEach(function(t){var n=t.control,i=e.form.get(t.path);n!==i&&(AV(n||null,t),i instanceof XV&&(TV(i,t),t.control=i))}),this.form._updateTreeValidity({emitEvent:!1})}},{key:"_setUpFormContainer",value:function(e){var t=this.form.get(e.path);DV(t,e),t.updateValueAndValidity({emitEvent:!1})}},{key:"_cleanUpFormContainer",value:function(e){if(this.form){var t=this.form.get(e.path);t&&function(e,t){return IV(e,t)}(t,e)&&t.updateValueAndValidity({emitEvent:!1})}}},{key:"_updateRegistrations",value:function(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){})}},{key:"_updateValidators",value:function(){MV(this.form,this),this._oldForm&&IV(this._oldForm,this)}},{key:"_checkFormPresent",value:function(){}}]),n}(xV);return e.\u0275fac=function(t){return new(t||e)(Ss(aV,10),Ss(sV,10))},e.\u0275dir=Mt({type:e,selectors:[["","formGroup",""]],hostBindings:function(e,t){1&e&&js("submit",function(e){return t.onSubmit(e)})("reset",function(){return t.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Uu([rz]),as,Ht]}),e}(),az=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[ez]]}),e}(),sz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[az]}),e}(),uz=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"withConfig",value:function(t){return{ngModule:e,providers:[{provide:tz,useValue:t.warnOnNgModelWithFormControl}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[az]}),e}();function cz(e){return new J(function(t){var n;try{n=e()}catch(i){return void t.error(i)}return(n?ge(n):mf()).subscribe(t)})}var lz=["underline"],hz=["connectionContainer"],dz=["inputContainer"],fz=["label"];function pz(e,t){1&e&&(Ps(0),Os(1,"div",14),As(2,"div",15),As(3,"div",16),As(4,"div",17),Ts(),Os(5,"div",18),As(6,"div",15),As(7,"div",16),As(8,"div",17),Ts(),Ms())}function vz(e,t){1&e&&(Os(0,"div",19),Ws(1,1),Ts())}function gz(e,t){if(1&e&&(Ps(0),Ws(1,2),Os(2,"span"),wu(3),Ts(),Ms()),2&e){var n=Us(2);Wo(3),ku(n._control.placeholder)}}function mz(e,t){1&e&&Ws(0,3,["*ngSwitchCase","true"])}function yz(e,t){1&e&&(Os(0,"span",23),wu(1," *"),Ts())}function bz(e,t){if(1&e){var n=Rs();Os(0,"label",20,21),js("cdkObserveContent",function(){return gn(n),Us().updateOutlineGap()}),ks(2,gz,4,1,"ng-container",12),ks(3,mz,1,0,"ng-content",12),ks(4,yz,2,0,"span",22),Ts()}if(2&e){var i=Us();au("mat-empty",i._control.empty&&!i._shouldAlwaysFloat())("mat-form-field-empty",i._control.empty&&!i._shouldAlwaysFloat())("mat-accent","accent"==i.color)("mat-warn","warn"==i.color),Es("cdkObserveContentDisabled","outline"!=i.appearance)("id",i._labelId)("ngSwitch",i._hasLabel()),bs("for",i._control.id)("aria-owns",i._control.id),Wo(2),Es("ngSwitchCase",!1),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngIf",!i.hideRequiredMarker&&i._control.required&&!i._control.disabled)}}function _z(e,t){1&e&&(Os(0,"div",24),Ws(1,4),Ts())}function wz(e,t){if(1&e&&(Os(0,"div",25,26),As(2,"span",27),Ts()),2&e){var n=Us();Wo(2),au("mat-accent","accent"==n.color)("mat-warn","warn"==n.color)}}function kz(e,t){1&e&&(Os(0,"div"),Ws(1,5),Ts()),2&e&&Es("@transitionMessages",Us()._subscriptAnimationState)}function xz(e,t){if(1&e&&(Os(0,"div",31),wu(1),Ts()),2&e){var n=Us(2);Es("id",n._hintLabelId),Wo(1),ku(n.hintLabel)}}function Sz(e,t){if(1&e&&(Os(0,"div",28),ks(1,xz,2,2,"div",29),Ws(2,6),As(3,"div",30),Ws(4,7),Ts()),2&e){var n=Us();Es("@transitionMessages",n._subscriptAnimationState),Wo(1),Es("ngIf",n.hintLabel)}}var Ez=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Cz=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Oz=new Pi("MatError"),Tz={transitionMessages:Jv("transitionMessages",[ig("enter",ng({opacity:1,transform:"translateY(0%)"})),rg("void => enter",[ng({opacity:0,transform:"translateY(-5px)"}),eg("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},Az=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e}),e}(),Pz=new Pi("MatHint"),Mz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["mat-label"]]}),e}(),Iz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["mat-placeholder"]]}),e}(),Rz=new Pi("MatPrefix"),Dz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["","matPrefix",""]],features:[Uu([{provide:Rz,useExisting:e}])]}),e}(),Nz=new Pi("MatSuffix"),Lz=0,jz=qy(function(){return function e(t){m(this,e),this._elementRef=t}}(),"primary"),Fz=new Pi("MAT_FORM_FIELD_DEFAULT_OPTIONS"),Bz=new Pi("MatFormField"),Vz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,c){var l;return m(this,n),(l=t.call(this,e))._changeDetectorRef=i,l._dir=o,l._defaults=a,l._platform=s,l._ngZone=u,l._outlineGapCalculationNeededImmediately=!1,l._outlineGapCalculationNeededOnStable=!1,l._destroyed=new re,l._showAlwaysAnimate=!1,l._subscriptAnimationState="",l._hintLabel="",l._hintLabelId="mat-hint-"+Lz++,l._labelId="mat-form-field-label-"+Lz++,l.floatLabel=l._getDefaultFloatLabelState(),l._animationsEnabled="NoopAnimations"!==c,l.appearance=a&&a.appearance?a.appearance:"legacy",l._hideRequiredMarker=!(!a||null==a.hideRequiredMarker)&&a.hideRequiredMarker,l}return b(n,[{key:"appearance",get:function(){return this._appearance},set:function(e){var t=this._appearance;this._appearance=e||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&t!==e&&(this._outlineGapCalculationNeededOnStable=!0)}},{key:"hideRequiredMarker",get:function(){return this._hideRequiredMarker},set:function(e){this._hideRequiredMarker=Pd(e)}},{key:"_shouldAlwaysFloat",value:function(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}},{key:"_canLabelFloat",value:function(){return"never"!==this.floatLabel}},{key:"hintLabel",get:function(){return this._hintLabel},set:function(e){this._hintLabel=e,this._processHints()}},{key:"floatLabel",get:function(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel},set:function(e){e!==this._floatLabel&&(this._floatLabel=e||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}},{key:"_control",get:function(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic},set:function(e){this._explicitFormFieldControl=e}},{key:"getLabelId",value:function(){return this._hasFloatingLabel()?this._labelId:null}},{key:"getConnectedOverlayOrigin",value:function(){return this._connectionContainerRef||this._elementRef}},{key:"ngAfterContentInit",value:function(){var e=this;this._validateControlChild();var t=this._control;t.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-".concat(t.controlType)),t.stateChanges.pipe(hf(null)).subscribe(function(){e._validatePlaceholders(),e._syncDescribedByIds(),e._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(sf(this._destroyed)).subscribe(function(){return e._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){e._ngZone.onStable.pipe(sf(e._destroyed)).subscribe(function(){e._outlineGapCalculationNeededOnStable&&e.updateOutlineGap()})}),Ee(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(function(){e._outlineGapCalculationNeededOnStable=!0,e._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(hf(null)).subscribe(function(){e._processHints(),e._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(hf(null)).subscribe(function(){e._syncDescribedByIds(),e._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(sf(this._destroyed)).subscribe(function(){"function"==typeof requestAnimationFrame?e._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return e.updateOutlineGap()})}):e.updateOutlineGap()})}},{key:"ngAfterContentChecked",value:function(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}},{key:"ngAfterViewInit",value:function(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_shouldForward",value:function(e){var t=this._control?this._control.ngControl:null;return t&&t[e]}},{key:"_hasPlaceholder",value:function(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}},{key:"_hasLabel",value:function(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}},{key:"_shouldLabelFloat",value:function(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}},{key:"_hideControlPlaceholder",value:function(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}},{key:"_hasFloatingLabel",value:function(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}},{key:"_getDisplayedMessages",value:function(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}},{key:"_animateAndLockLabel",value:function(){var e=this;this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,Ld(this._label.nativeElement,"transitionend").pipe(op(1)).subscribe(function(){e._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}},{key:"_validatePlaceholders",value:function(){}},{key:"_processHints",value:function(){this._validateHints(),this._syncDescribedByIds()}},{key:"_validateHints",value:function(){}},{key:"_getDefaultFloatLabelState",value:function(){return this._defaults&&this._defaults.floatLabel||"auto"}},{key:"_syncDescribedByIds",value:function(){if(this._control){var e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push.apply(e,v(this._control.userAriaDescribedBy.split(" "))),"hint"===this._getDisplayedMessages()){var t=this._hintChildren?this._hintChildren.find(function(e){return"start"===e.align}):null,n=this._hintChildren?this._hintChildren.find(function(e){return"end"===e.align}):null;t?e.push(t.id):this._hintLabel&&e.push(this._hintLabelId),n&&e.push(n.id)}else this._errorChildren&&e.push.apply(e,v(this._errorChildren.map(function(e){return e.id})));this._control.setDescribedByIds(e)}}},{key:"_validateControlChild",value:function(){}},{key:"updateOutlineGap",value:function(){var e=this._label?this._label.nativeElement:null;if("outline"===this.appearance&&e&&e.children.length&&e.textContent.trim()&&this._platform.isBrowser)if(this._isAttachedToDOM()){var t=0,n=0,i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),o=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){var a=i.getBoundingClientRect();if(0===a.width&&0===a.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);for(var s=this._getStartEnd(a),u=e.children,c=this._getStartEnd(u[0].getBoundingClientRect()),l=0,h=0;h0?.75*l+10:0}for(var d=0;d1&&void 0!==arguments[1]?arguments[1]:Qd,n=function(e){return e instanceof Date&&!isNaN(+e)}(e)?+e-t.now():Math.abs(e);return function(e){return e.lift(new Hz(n,t))}}var Hz=function(){function e(t,n){m(this,e),this.delay=t,this.scheduler=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new Gz(e,this.delay,this.scheduler))}}]),e}(),Gz=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).delay=i,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return b(n,[{key:"_schedule",value:function(e){this.active=!0,this.destination.add(e.schedule(n.dispatch,this.delay,{source:this,destination:this.destination,scheduler:e}))}},{key:"scheduleNotification",value:function(e){if(!0!==this.errored){var t=this.scheduler,n=new Wz(t.now()+this.delay,e);this.queue.push(n),!1===this.active&&this._schedule(t)}}},{key:"_next",value:function(e){this.scheduleNotification(_f.createNext(e))}},{key:"_error",value:function(e){this.errored=!0,this.queue=[],this.destination.error(e),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleNotification(_f.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){for(var t=e.source,n=t.queue,i=e.scheduler,r=e.destination;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var o=Math.max(0,n[0].time-i.now());this.schedule(e,o)}else this.unsubscribe(),t.active=!1}}]),n}(X),Wz=function e(t,n){m(this,e),this.time=t,this.notification=n},qz=["panel"];function Xz(e,t){if(1&e&&(Os(0,"div",0,1),Ws(2),Ts()),2&e){var n=t.id,i=Us();Es("id",i.id)("ngClass",i._classList),bs("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby(n))}}var Yz=["*"],Kz=0,$z=function e(t,n){m(this,e),this.source=t,this.option=n},Qz=Xy(function(){return function e(){m(this,e)}}()),Zz=new Pi("mat-autocomplete-default-options",{providedIn:"root",factory:function(){return{autoActiveFirstOption:!1}}}),Jz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this))._changeDetectorRef=e,a._elementRef=i,a._activeOptionChanges=G.EMPTY,a.showPanel=!1,a._isOpen=!1,a.displayWith=null,a.optionSelected=new Qc,a.opened=new Qc,a.closed=new Qc,a.optionActivated=new Qc,a._classList={},a.id="mat-autocomplete-"+Kz++,a.inertGroups=(null==o?void 0:o.SAFARI)||!1,a._autoActiveFirstOption=!!r.autoActiveFirstOption,a}return b(n,[{key:"isOpen",get:function(){return this._isOpen&&this.showPanel}},{key:"autoActiveFirstOption",get:function(){return this._autoActiveFirstOption},set:function(e){this._autoActiveFirstOption=Pd(e)}},{key:"classList",set:function(e){this._classList=e&&e.length?function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:/\s+/,n=[];if(null!=e){var i,r=Array.isArray(e)?e:"".concat(e).split(t),o=_(r);try{for(o.s();!(i=o.n()).done;){var a=i.value,s="".concat(a).trim();s&&n.push(s)}}catch(u){o.e(u)}finally{o.f()}}return n}(e).reduce(function(e,t){return e[t]=!0,e},{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}},{key:"ngAfterContentInit",value:function(){var e=this;this._keyManager=new Ov(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(function(t){e.isOpen&&e.optionActivated.emit({source:e,option:e.options.toArray()[t]||null})}),this._setVisibility()}},{key:"ngOnDestroy",value:function(){this._activeOptionChanges.unsubscribe()}},{key:"_setScrollTop",value:function(e){this.panel&&(this.panel.nativeElement.scrollTop=e)}},{key:"_getScrollTop",value:function(){return this.panel?this.panel.nativeElement.scrollTop:0}},{key:"_setVisibility",value:function(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}},{key:"_emitSelectEvent",value:function(e){var t=new $z(this,e);this.optionSelected.emit(t)}},{key:"_getPanelAriaLabelledby",value:function(e){return this.ariaLabel?null:this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}},{key:"_setVisibilityClasses",value:function(e){e[this._visibleClass]=this.showPanel,e[this._hiddenClass]=!this.showPanel}}]),n}(Qz);return e.\u0275fac=function(t){return new(t||e)(Ss(_c),Ss(Yu),Ss(Zz),Ss(Mf))},e.\u0275dir=Mt({type:e,viewQuery:function(e,t){var n;(1&e&&(ll(Ec,7),ll(qz,5)),2&e)&&(cl(n=dl())&&(t.template=n.first),cl(n=dl())&&(t.panel=n.first))},inputs:{displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",classList:["class","classList"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],panelWidth:"panelWidth"},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[as]}),e}(),eU=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._visibleClass="mat-autocomplete-visible",e._hiddenClass="mat-autocomplete-hidden",e}return n}(Jz);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275cmp=Et({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(e,t,n){var i;(1&e&&(hl(n,db,5),hl(n,gb,5)),2&e)&&(cl(i=dl())&&(t.optionGroups=i),cl(i=dl())&&(t.options=i))},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[Uu([{provide:ub,useExisting:t}]),as],ngContentSelectors:Yz,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(e,t){1&e&&(Gs(),ks(0,Xz,3,4,"ng-template"))},directives:[Mh],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t}(),tU=new Pi("mat-autocomplete-scroll-strategy"),nU={provide:tU,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},iU={provide:nV,useExisting:ze(function(){return oU}),multi:!0},rU=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c,l,h){var d=this;m(this,e),this._element=t,this._overlay=n,this._viewContainerRef=i,this._zone=r,this._changeDetectorRef=o,this._dir=s,this._formField=u,this._document=c,this._viewportRuler=l,this._defaults=h,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=G.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new re,this._windowBlurHandler=function(){d._canOpenOnNextFocus=d._document.activeElement!==d._element.nativeElement||d.panelOpen},this._onChange=function(){},this._onTouched=function(){},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=cz(function(){return d.autocomplete&&d.autocomplete.options?Ee.apply(void 0,v(d.autocomplete.options.map(function(e){return e.onSelectionChange}))):d._zone.onStable.pipe(op(1),df(function(){return d.optionSelections}))}),this._scrollStrategy=a}return b(e,[{key:"autocompleteDisabled",get:function(){return this._autocompleteDisabled},set:function(e){this._autocompleteDisabled=Pd(e)}},{key:"ngAfterViewInit",value:function(){var e=this,t=this._getWindow();void 0!==t&&this._zone.runOutsideAngular(function(){return t.addEventListener("blur",e._windowBlurHandler)})}},{key:"ngOnChanges",value:function(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}},{key:"ngOnDestroy",value:function(){var e=this._getWindow();void 0!==e&&e.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}},{key:"panelOpen",get:function(){return this._overlayAttached&&this.autocomplete.showPanel}},{key:"openPanel",value:function(){this._attachOverlay(),this._floatLabel()}},{key:"closePanel",value:function(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}},{key:"updatePosition",value:function(){this._overlayAttached&&this._overlayRef.updatePosition()}},{key:"panelClosingActions",get:function(){var e=this;return Ee(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(rf(function(){return e._overlayAttached})),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(rf(function(){return e._overlayAttached})):Nd()).pipe(se(function(e){return e instanceof pb?e:null}))}},{key:"activeOption",get:function(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}},{key:"_getOutsideClickStream",value:function(){var e=this;return Ee(Ld(this._document,"click"),Ld(this._document,"auxclick"),Ld(this._document,"touchend")).pipe(rf(function(t){var n=Ff(t),i=e._formField?e._formField._elementRef.nativeElement:null,r=e.connectedTo?e.connectedTo.elementRef.nativeElement:null;return e._overlayAttached&&n!==e._element.nativeElement&&(!i||!i.contains(n))&&(!r||!r.contains(n))&&!!e._overlayRef&&!e._overlayRef.overlayElement.contains(n)}))}},{key:"writeValue",value:function(e){var t=this;Promise.resolve(null).then(function(){return t._setTriggerValue(e)})}},{key:"registerOnChange",value:function(e){this._onChange=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this._element.nativeElement.disabled=e}},{key:"_handleKeydown",value:function(e){var t=e.keyCode;if(27===t&&!hp(e)&&e.preventDefault(),this.activeOption&&13===t&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),e.preventDefault();else if(this.autocomplete){var n=this.autocomplete._keyManager.activeItem,i=38===t||40===t;this.panelOpen||9===t?this.autocomplete._keyManager.onKeydown(e):i&&this._canOpen()&&this.openPanel(),(i||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}},{key:"_handleInput",value:function(e){var t=e.target,n=t.value;"number"===t.type&&(n=""==n?null:parseFloat(n)),this._previousValue!==n&&(this._previousValue=n,this._onChange(n),this._canOpen()&&this._document.activeElement===e.target&&this.openPanel())}},{key:"_handleFocus",value:function(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}},{key:"_floatLabel",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this._formField&&"auto"===this._formField.floatLabel&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}},{key:"_resetLabel",value:function(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}},{key:"_subscribeToClosingActions",value:function(){var e=this;return Ee(this._zone.onStable.pipe(op(1)),this.autocomplete.options.changes.pipe(iv(function(){return e._positionStrategy.reapplyLastPosition()}),Uz(0))).pipe(df(function(){var t=e.panelOpen;return e._resetActiveItem(),e.autocomplete._setVisibility(),e.panelOpen&&(e._overlayRef.updatePosition(),t!==e.panelOpen&&e.autocomplete.opened.emit()),e.panelClosingActions}),op(1)).subscribe(function(t){return e._setValueAndClose(t)})}},{key:"_destroyPanel",value:function(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}},{key:"_setTriggerValue",value:function(e){var t=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(e):e,n=null!=t?t:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n,this._previousValue=n}},{key:"_setValueAndClose",value:function(e){e&&e.source&&(this._clearPreviousSelectedOption(e.source),this._setTriggerValue(e.source.value),this._onChange(e.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(e.source)),this.closePanel()}},{key:"_clearPreviousSelectedOption",value:function(e){this.autocomplete.options.forEach(function(t){t!==e&&t.selected&&t.deselect()})}},{key:"_attachOverlay",value:function(){var e,t=this,n=this._overlayRef;n?(this._positionStrategy.setOrigin(this._getConnectedElement()),n.updateSize({width:this._getPanelWidth()})):(this._portal=new $f(this.autocomplete.template,this._viewContainerRef,{id:null===(e=this._formField)||void 0===e?void 0:e.getLabelId()}),n=this._overlay.create(this._getOverlayConfig()),this._overlayRef=n,n.keydownEvents().subscribe(function(e){(27===e.keyCode&&!hp(e)||38===e.keyCode&&hp(e,"altKey"))&&(t._closeKeyEventStream.next(),t._resetActiveItem(),e.stopPropagation(),e.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(function(){t.panelOpen&&n&&n.updateSize({width:t._getPanelWidth()})})),n&&!n.hasAttached()&&(n.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());var i=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&i!==this.panelOpen&&this.autocomplete.opened.emit()}},{key:"_getOverlayConfig",value:function(){var e;return new _p({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(e=this._defaults)||void 0===e?void 0:e.overlayPanelClass})}},{key:"_getOverlayPosition",value:function(){var e=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(e),this._positionStrategy=e,e}},{key:"_setStrategyPositions",value:function(e){var t,n=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],i=this._aboveClass,r=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:i},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:i}];t="above"===this.position?r:"below"===this.position?n:[].concat(n,r),e.withPositions(t)}},{key:"_getConnectedElement",value:function(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}},{key:"_getPanelWidth",value:function(){return this.autocomplete.panelWidth||this._getHostWidth()}},{key:"_getHostWidth",value:function(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}},{key:"_resetActiveItem",value:function(){var e=this.autocomplete;e.autoActiveFirstOption?e._keyManager.setFirstItemActive():e._keyManager.setActiveItem(-1)}},{key:"_canOpen",value:function(){var e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this._autocompleteDisabled}},{key:"_getWindow",value:function(){var e;return(null===(e=this._document)||void 0===e?void 0:e.defaultView)||window}},{key:"_scrollToOption",value:function(e){var t=this.autocomplete,n=mb(e,t.options,t.optionGroups);if(0===e&&1===n)t._setScrollTop(0);else if(t.panel){var i=t.options.toArray()[e];if(i){var r=i._getHostElement(),o=yb(r.offsetTop,r.offsetHeight,t._getScrollTop(),t.panel.nativeElement.offsetHeight);t._setScrollTop(o)}}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Up),Ss(Pc),Ss(Bl),Ss(_c),Ss(tU),Ss(Vf,8),Ss(Bz,9),Ss(hh,8),Ss(Wf),Ss(Zz,8))},e.\u0275dir=Mt({type:e,inputs:{position:["matAutocompletePosition","position"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"],autocomplete:["matAutocomplete","autocomplete"],connectedTo:["matAutocompleteConnectedTo","connectedTo"]},features:[Ht]}),e}(),oU=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._aboveClass="mat-autocomplete-panel-above",e}return n}(rU);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(e,t){1&e&&js("focusin",function(){return t._handleFocus()})("blur",function(){return t._onTouched()})("input",function(e){return t._handleInput(e)})("keydown",function(e){return t._handleKeydown(e)}),2&e&&bs("autocomplete",t.autocompleteAttribute)("role",t.autocompleteDisabled?null:"combobox")("aria-autocomplete",t.autocompleteDisabled?null:"list")("aria-activedescendant",t.panelOpen&&t.activeOption?t.activeOption.id:null)("aria-expanded",t.autocompleteDisabled?null:t.panelOpen.toString())("aria-owns",t.autocompleteDisabled||!t.panelOpen||null==t.autocomplete?null:t.autocomplete.id)("aria-haspopup",!t.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[Uu([iU]),as]}),t}(),aU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[nU],imports:[[Yp,bb,Gy,Yh],qf,bb,Gy]}),e}(),sU=Nf({passive:!0}),uU=function(){var e=function(){function e(t,n){m(this,e),this._platform=t,this._ngZone=n,this._monitoredElements=new Map}return b(e,[{key:"monitor",value:function(e){var t=this;if(!this._platform.isBrowser)return gf;var n=Dd(e),i=this._monitoredElements.get(n);if(i)return i.subject;var r=new re,o="cdk-text-field-autofilled",a=function(e){"cdk-text-field-autofill-start"!==e.animationName||n.classList.contains(o)?"cdk-text-field-autofill-end"===e.animationName&&n.classList.contains(o)&&(n.classList.remove(o),t._ngZone.run(function(){return r.next({target:e.target,isAutofilled:!1})})):(n.classList.add(o),t._ngZone.run(function(){return r.next({target:e.target,isAutofilled:!0})}))};return this._ngZone.runOutsideAngular(function(){n.addEventListener("animationstart",a,sU),n.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(n,{subject:r,unlisten:function(){n.removeEventListener("animationstart",a,sU)}}),r}},{key:"stopMonitoring",value:function(e){var t=Dd(e),n=this._monitoredElements.get(t);n&&(n.unlisten(),n.subject.complete(),t.classList.remove("cdk-text-field-autofill-monitored"),t.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(t))}},{key:"ngOnDestroy",value:function(){var e=this;this._monitoredElements.forEach(function(t,n){return e.stopMonitoring(n)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(Bl))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(Bl))},token:e,providedIn:"root"}),e}(),cU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[If]]}),e}(),lU=new Pi("MAT_INPUT_VALUE_ACCESSOR"),hU=["button","checkbox","file","hidden","image","radio","range","reset","submit"],dU=0,fU=Ky(function(){return function e(t,n,i,r){m(this,e),this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}}()),pU=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,c,l,h){var d;m(this,n),(d=t.call(this,s,o,a,r))._elementRef=e,d._platform=i,d._autofillMonitor=c,d._formField=h,d._uid="mat-input-"+dU++,d.focused=!1,d.stateChanges=new re,d.controlType="mat-input",d.autofilled=!1,d._disabled=!1,d._required=!1,d._type="text",d._readonly=!1,d._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(function(e){return Df().has(e)});var f=d._elementRef.nativeElement,p=f.nodeName.toLowerCase();return d._inputValueAccessor=u||f,d._previousNativeValue=d.value,d.id=d.id,i.IOS&&l.runOutsideAngular(function(){e.nativeElement.addEventListener("keyup",function(e){var t=e.target;!t.value&&0===t.selectionStart&&0===t.selectionEnd&&(t.setSelectionRange(1,1),t.setSelectionRange(0,0))})}),d._isServer=!d._platform.isBrowser,d._isNativeSelect="select"===p,d._isTextarea="textarea"===p,d._isInFormField=!!h,d._isNativeSelect&&(d.controlType=f.multiple?"mat-native-select-multiple":"mat-native-select"),d}return b(n,[{key:"disabled",get:function(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled},set:function(e){this._disabled=Pd(e),this.focused&&(this.focused=!1,this.stateChanges.next())}},{key:"id",get:function(){return this._id},set:function(e){this._id=e||this._uid}},{key:"required",get:function(){return this._required},set:function(e){this._required=Pd(e)}},{key:"type",get:function(){return this._type},set:function(e){this._type=e||"text",this._validateType(),!this._isTextarea&&Df().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}},{key:"value",get:function(){return this._inputValueAccessor.value},set:function(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}},{key:"readonly",get:function(){return this._readonly},set:function(e){this._readonly=Pd(e)}},{key:"ngAfterViewInit",value:function(){var e=this;this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(function(t){e.autofilled=t.isAutofilled,e.stateChanges.next()})}},{key:"ngOnChanges",value:function(){this.stateChanges.next()}},{key:"ngOnDestroy",value:function(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement)}},{key:"ngDoCheck",value:function(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}},{key:"focus",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_focusChanged",value:function(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}},{key:"_onInput",value:function(){}},{key:"_dirtyCheckPlaceholder",value:function(){var e,t,n=(null===(t=null===(e=this._formField)||void 0===e?void 0:e._hideControlPlaceholder)||void 0===t?void 0:t.call(e))?null:this.placeholder;if(n!==this._previousPlaceholder){var i=this._elementRef.nativeElement;this._previousPlaceholder=n,n?i.setAttribute("placeholder",n):i.removeAttribute("placeholder")}}},{key:"_dirtyCheckNativeValue",value:function(){var e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}},{key:"_validateType",value:function(){hU.indexOf(this._type)}},{key:"_isNeverEmpty",value:function(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}},{key:"_isBadInput",value:function(){var e=this._elementRef.nativeElement.validity;return e&&e.badInput}},{key:"empty",get:function(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}},{key:"shouldLabelFloat",get:function(){if(this._isNativeSelect){var e=this._elementRef.nativeElement,t=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&t&&t.label)}return this.focused||!this.empty}},{key:"setDescribedByIds",value:function(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}},{key:"onContainerClick",value:function(){this.focused||this.focus()}}]),n}(fU);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Mf),Ss(SV,10),Ss(ZV,8),Ss(oz,8),Ss($y),Ss(lU,10),Ss(uU),Ss(Bl),Ss(Bz,8))},e.\u0275dir=Mt({type:e,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(e,t){1&e&&js("focus",function(){return t._focusChanged(!0)})("blur",function(){return t._focusChanged(!1)})("input",function(){return t._onInput()}),2&e&&(Cu("disabled",t.disabled)("required",t.required),bs("id",t.id)("data-placeholder",t.placeholder)("readonly",t.readonly&&!t._isNativeSelect||null)("aria-invalid",t.empty&&t.required?null:t.errorState)("aria-required",t.required),au("mat-input-server",t._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[Uu([{provide:Az,useExisting:e}]),as,Ht]}),e}(),vU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[$y],imports:[[cU,zz,Gy],cU,zz]}),e}();function gU(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:this.value,t=new EU;return t.source=this,t.value=e,t}},{key:"_calculatePercentage",value:function(e){return((e||0)-this.min)/(this.max-this.min)}},{key:"_calculateValue",value:function(e){return this.min+e*(this.max-this.min)}},{key:"_clamp",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.max(t,Math.min(e,n))}},{key:"_getSliderDimensions",value:function(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}},{key:"_focusHostElement",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_blurHostElement",value:function(){this._elementRef.nativeElement.blur()}},{key:"writeValue",value:function(e){this.value=e}},{key:"registerOnChange",value:function(e){this._controlValueAccessorChangeFn=e}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e}}]),n}(CU);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Gv),Ss(_c),Ss(Vf,8),Oi("tabindex"),Ss(Bl),Ss(hh),Ss(Dy,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-slider"]],viewQuery:function(e,t){var n;(1&e&&ll(kU,5),2&e)&&(cl(n=dl())&&(t._sliderWrapper=n.first))},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(e,t){1&e&&js("focus",function(){return t._onFocus()})("blur",function(){return t._onBlur()})("keydown",function(e){return t._onKeydown(e)})("keyup",function(){return t._onKeyup()})("mouseenter",function(){return t._onMouseenter()})("selectstart",function(e){return e.preventDefault()}),2&e&&(Cu("tabIndex",t.tabIndex),bs("aria-disabled",t.disabled)("aria-valuemax",t.max)("aria-valuemin",t.min)("aria-valuenow",t.value)("aria-valuetext",null==t.valueText?t.displayValue:t.valueText)("aria-orientation",t.vertical?"vertical":"horizontal"),au("mat-slider-disabled",t.disabled)("mat-slider-has-ticks",t.tickInterval)("mat-slider-horizontal",!t.vertical)("mat-slider-axis-inverted",t._shouldInvertAxis())("mat-slider-invert-mouse-coords",t._shouldInvertMouseCoords())("mat-slider-sliding",t._isSliding)("mat-slider-thumb-label-showing",t.thumbLabel)("mat-slider-vertical",t.vertical)("mat-slider-min-value",t._isMinValue())("mat-slider-hide-last-tick",t.disabled||t._isMinValue()&&t._getThumbGap()&&t._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",vertical:"vertical",displayWith:"displayWith",valueText:"valueText"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[Uu([SU]),as],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(e,t){1&e&&(Os(0,"div",0,1),Os(2,"div",2),As(3,"div",3),As(4,"div",4),Ts(),Os(5,"div",5),As(6,"div",6),Ts(),Os(7,"div",7),As(8,"div",8),As(9,"div",9),Os(10,"div",10),Os(11,"span",11),wu(12),Ts(),Ts(),Ts(),Ts()),2&e&&(Wo(3),Es("ngStyle",t._getTrackBackgroundStyles()),Wo(1),Es("ngStyle",t._getTrackFillStyles()),Wo(1),Es("ngStyle",t._getTicksContainerStyles()),Wo(1),Es("ngStyle",t._getTicksStyles()),Wo(1),Es("ngStyle",t._getThumbContainerStyles()),Wo(5),ku(t.displayValue))},directives:[Uh],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),e}();function TU(e){return"t"===e.type[0]}function AU(e,t){var n;return(n=TU(e)?"number"==typeof t?PU(e.touches,t)||PU(e.changedTouches,t):e.touches[0]||e.changedTouches[0]:e)?{x:n.clientX,y:n.clientY}:void 0}function PU(e,t){for(var n=0;n enter",eg("150ms cubic-bezier(0, 0, 0.2, 1)",ng({transform:"none",opacity:1}))),rg("* => void, * => exit",eg("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",ng({opacity:0})))])},NU=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s){var u;return m(this,n),(u=t.call(this))._elementRef=e,u._focusTrapFactory=i,u._changeDetectorRef=r,u._config=a,u._focusMonitor=s,u._animationStateChanged=new Qc,u._elementFocusedBeforeDialogWasOpened=null,u._closeInteractionType=null,u.attachDomPortal=function(e){return u._portalOutlet.hasAttached(),u._portalOutlet.attachDomPortal(e)},u._ariaLabelledBy=a.ariaLabelledBy||null,u._document=o,u}return b(n,[{key:"_initializeWithAttachedContent",value:function(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement(),this._focusDialogContainer()}},{key:"attachComponentPortal",value:function(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(e)}},{key:"attachTemplatePortal",value:function(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(e)}},{key:"_recaptureFocus",value:function(){this._containsFocus()||(!this._config.autoFocus||!this._focusTrap.focusInitialElement())&&this._elementRef.nativeElement.focus()}},{key:"_trapFocus",value:function(){this._config.autoFocus?this._focusTrap.focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()}},{key:"_restoreFocus",value:function(){var e=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&e&&"function"==typeof e.focus){var t=jf(),n=this._elementRef.nativeElement;(!t||t===this._document.body||t===n||n.contains(t))&&(this._focusMonitor?(this._focusMonitor.focusVia(e,this._closeInteractionType),this._closeInteractionType=null):e.focus())}this._focusTrap&&this._focusTrap.destroy()}},{key:"_setupFocusTrap",value:function(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}},{key:"_capturePreviouslyFocusedElement",value:function(){this._document&&(this._elementFocusedBeforeDialogWasOpened=jf())}},{key:"_focusDialogContainer",value:function(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}},{key:"_containsFocus",value:function(){var e=this._elementRef.nativeElement,t=jf();return e===t||e.contains(t)}}]),n}(Zf);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Iv),Ss(_c),Ss(hh,8),Ss(RU),Ss(Gv))},e.\u0275dir=Mt({type:e,viewQuery:function(e,t){var n;(1&e&&ll(np,7),2&e)&&(cl(n=dl())&&(t._portalOutlet=n.first))},features:[as]}),e}(),LU=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._state="enter",e}return b(n,[{key:"_onAnimationDone",value:function(e){var t=e.toState,n=e.totalTime;"enter"===t?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:n})):"exit"===t&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:n}))}},{key:"_onAnimationStart",value:function(e){var t=e.toState,n=e.totalTime;"enter"===t?this._animationStateChanged.next({state:"opening",totalTime:n}):("exit"===t||"void"===t)&&this._animationStateChanged.next({state:"closing",totalTime:n})}},{key:"_startExitAnimation",value:function(){this._state="exit",this._changeDetectorRef.markForCheck()}}]),n}(NU);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275cmp=Et({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(e,t){1&e&&Fs("@dialogContainer.start",function(e){return t._onAnimationStart(e)})("@dialogContainer.done",function(e){return t._onAnimationDone(e)}),2&e&&(Cu("id",t._id),bs("role",t._config.role)("aria-labelledby",t._config.ariaLabel?null:t._ariaLabelledBy)("aria-label",t._config.ariaLabel)("aria-describedby",t._config.ariaDescribedBy||null),Ou("@dialogContainer",t._state))},features:[as],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(e,t){1&e&&ks(0,IU,0,0,"ng-template",0)},directives:[np],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[DU.dialogContainer]}}),t}(),jU=0,FU=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"mat-dialog-"+jU++;m(this,e),this._overlayRef=t,this._containerInstance=n,this.id=r,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new re,this._afterClosed=new re,this._beforeClosed=new re,this._state=0,n._id=r,n._animationStateChanged.pipe(rf(function(e){return"opened"===e.state}),op(1)).subscribe(function(){i._afterOpened.next(),i._afterOpened.complete()}),n._animationStateChanged.pipe(rf(function(e){return"closed"===e.state}),op(1)).subscribe(function(){clearTimeout(i._closeFallbackTimeout),i._finishDialogClose()}),t.detachments().subscribe(function(){i._beforeClosed.next(i._result),i._beforeClosed.complete(),i._afterClosed.next(i._result),i._afterClosed.complete(),i.componentInstance=null,i._overlayRef.dispose()}),t.keydownEvents().pipe(rf(function(e){return 27===e.keyCode&&!i.disableClose&&!hp(e)})).subscribe(function(e){e.preventDefault(),BU(i,"keyboard")}),t.backdropClick().subscribe(function(){i.disableClose?i._containerInstance._recaptureFocus():BU(i,"mouse")})}return b(e,[{key:"close",value:function(e){var t=this;this._result=e,this._containerInstance._animationStateChanged.pipe(rf(function(e){return"closing"===e.state}),op(1)).subscribe(function(n){t._beforeClosed.next(e),t._beforeClosed.complete(),t._overlayRef.detachBackdrop(),t._closeFallbackTimeout=setTimeout(function(){return t._finishDialogClose()},n.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}},{key:"afterOpened",value:function(){return this._afterOpened}},{key:"afterClosed",value:function(){return this._afterClosed}},{key:"beforeClosed",value:function(){return this._beforeClosed}},{key:"backdropClick",value:function(){return this._overlayRef.backdropClick()}},{key:"keydownEvents",value:function(){return this._overlayRef.keydownEvents()}},{key:"updatePosition",value:function(e){var t=this._getPositionStrategy();return e&&(e.left||e.right)?e.left?t.left(e.left):t.right(e.right):t.centerHorizontally(),e&&(e.top||e.bottom)?e.top?t.top(e.top):t.bottom(e.bottom):t.centerVertically(),this._overlayRef.updatePosition(),this}},{key:"updateSize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this._overlayRef.updateSize({width:e,height:t}),this._overlayRef.updatePosition(),this}},{key:"addPanelClass",value:function(e){return this._overlayRef.addPanelClass(e),this}},{key:"removePanelClass",value:function(e){return this._overlayRef.removePanelClass(e),this}},{key:"getState",value:function(){return this._state}},{key:"_finishDialogClose",value:function(){this._state=2,this._overlayRef.dispose()}},{key:"_getPositionStrategy",value:function(){return this._overlayRef.getConfig().positionStrategy}}]),e}();function BU(e,t,n){return void 0!==e._containerInstance&&(e._containerInstance._closeInteractionType=t),e.close(n)}var VU=new Pi("MatDialogData"),zU=new Pi("mat-dialog-default-options"),UU=new Pi("mat-dialog-scroll-strategy"),HU={provide:UU,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.block()}}},GU=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c){var l=this;m(this,e),this._overlay=t,this._injector=n,this._defaultOptions=i,this._parentDialog=r,this._overlayContainer=o,this._dialogRefConstructor=s,this._dialogContainerType=u,this._dialogDataToken=c,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new re,this._afterOpenedAtThisLevel=new re,this._ariaHiddenElements=new Map,this.afterAllClosed=cz(function(){return l.openDialogs.length?l._getAfterAllClosed():l._getAfterAllClosed().pipe(hf(void 0))}),this._scrollStrategy=a}return b(e,[{key:"openDialogs",get:function(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}},{key:"afterOpened",get:function(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}},{key:"_getAfterAllClosed",value:function(){var e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}},{key:"open",value:function(e,t){var n=this;(t=function(e,t){return Object.assign(Object.assign({},t),e)}(t,this._defaultOptions||new RU)).id&&this.getDialogById(t.id);var i=this._createOverlay(t),r=this._attachDialogContainer(i,t),o=this._attachDialogContent(e,r,i,t);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(o),o.afterClosed().subscribe(function(){return n._removeOpenDialog(o)}),this.afterOpened.next(o),r._initializeWithAttachedContent(),o}},{key:"closeAll",value:function(){this._closeDialogs(this.openDialogs)}},{key:"getDialogById",value:function(e){return this.openDialogs.find(function(t){return t.id===e})}},{key:"ngOnDestroy",value:function(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}},{key:"_createOverlay",value:function(e){var t=this._getOverlayConfig(e);return this._overlay.create(t)}},{key:"_getOverlayConfig",value:function(e){var t=new _p({positionStrategy:this._overlay.position().global(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,disposeOnNavigation:e.closeOnNavigation});return e.backdropClass&&(t.backdropClass=e.backdropClass),t}},{key:"_attachDialogContainer",value:function(e,t){var n=rs.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:RU,useValue:t}]}),i=new Kf(this._dialogContainerType,t.viewContainerRef,n,t.componentFactoryResolver);return e.attach(i).instance}},{key:"_attachDialogContent",value:function(e,t,n,i){var r=new this._dialogRefConstructor(n,t,i.id);if(e instanceof Ec)t.attachTemplatePortal(new $f(e,null,{$implicit:i.data,dialogRef:r}));else{var o=this._createInjector(i,r,t),a=t.attachComponentPortal(new Kf(e,i.viewContainerRef,o));r.componentInstance=a.instance}return r.updateSize(i.width,i.height).updatePosition(i.position),r}},{key:"_createInjector",value:function(e,t,n){var i=e&&e.viewContainerRef&&e.viewContainerRef.injector,r=[{provide:this._dialogContainerType,useValue:n},{provide:this._dialogDataToken,useValue:e.data},{provide:this._dialogRefConstructor,useValue:t}];return e.direction&&(!i||!i.get(Vf,null,rt.Optional))&&r.push({provide:Vf,useValue:{value:e.direction,change:Nd()}}),rs.create({parent:i||this._injector,providers:r})}},{key:"_removeOpenDialog",value:function(e){var t=this.openDialogs.indexOf(e);t>-1&&(this.openDialogs.splice(t,1),this.openDialogs.length||(this._ariaHiddenElements.forEach(function(e,t){e?t.setAttribute("aria-hidden",e):t.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}},{key:"_hideNonDialogContentFromAssistiveTechnology",value:function(){var e=this._overlayContainer.getContainerElement();if(e.parentElement)for(var t=e.parentElement.children,n=t.length-1;n>-1;n--){var i=t[n];i!==e&&"SCRIPT"!==i.nodeName&&"STYLE"!==i.nodeName&&!i.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}}},{key:"_closeDialogs",value:function(e){for(var t=e.length;t--;)e[t].close()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(rs),Ss(void 0),Ss(void 0),Ss(Tp),Ss(void 0),Ss(Mi),Ss(Mi),Ss(Pi))},e.\u0275dir=Mt({type:e}),e}(),WU=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u){return m(this,n),t.call(this,e,i,o,s,u,a,FU,LU,VU)}return n}(GU);return e.\u0275fac=function(t){return new(t||e)(Ki(Up),Ki(rs),Ki(Sh,8),Ki(zU,8),Ki(UU),Ki(e,12),Ki(Tp))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),qU=0,XU=function(){var e=function(){function e(t,n,i){m(this,e),this._dialogRef=t,this._elementRef=n,this._dialog=i,this.id="mat-dialog-title-"+qU++}return b(e,[{key:"ngOnInit",value:function(){var e=this;this._dialogRef||(this._dialogRef=function(e,t){for(var n=e.nativeElement.parentElement;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?t.find(function(e){return e.id===n.id}):null}(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(function(){var t=e._dialogRef._containerInstance;t&&!t._ariaLabelledBy&&(t._ariaLabelledBy=e.id)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(FU,8),Ss(Yu),Ss(WU))},e.\u0275dir=Mt({type:e,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(e,t){2&e&&Cu("id",t.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),e}(),YU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),e}(),KU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[WU,HU],imports:[[Yp,ip,Gy],Gy]}),e}(),$U=new Pi("CdkAccordion"),QU=0,ZU=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this.accordion=t,this._changeDetectorRef=n,this._expansionDispatcher=i,this._openCloseAllSubscription=G.EMPTY,this.closed=new Qc,this.opened=new Qc,this.destroyed=new Qc,this.expandedChange=new Qc,this.id="cdk-accordion-child-"+QU++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=function(){},this._removeUniqueSelectionListener=i.listen(function(e,t){r.accordion&&!r.accordion.multi&&r.accordion.id===t&&r.id!==e&&(r.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}return b(e,[{key:"expanded",get:function(){return this._expanded},set:function(e){e=Pd(e),this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=Pd(e)}},{key:"ngOnDestroy",value:function(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}},{key:"toggle",value:function(){this.disabled||(this.expanded=!this.expanded)}},{key:"close",value:function(){this.disabled||(this.expanded=!1)}},{key:"open",value:function(){this.disabled||(this.expanded=!0)}},{key:"_subscribeToOpenCloseAllActions",value:function(){var e=this;return this.accordion._openCloseAllActions.subscribe(function(t){e.disabled||(e.expanded=t)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss($U,12),Ss(_c),Ss(Hf))},e.\u0275dir=Mt({type:e,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[Uu([{provide:$U,useValue:void 0}])]}),e}(),JU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),eH=["body"];function tH(e,t){}var nH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],iH=["mat-expansion-panel-header","*","mat-action-row"];function rH(e,t){1&e&&As(0,"span",2),2&e&&Es("@indicatorRotate",Us()._getExpandedState())}var oH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],aH=["mat-panel-title","mat-panel-description","*"],sH=new Pi("MAT_ACCORDION"),uH="225ms cubic-bezier(0.4,0.0,0.2,1)",cH={indicatorRotate:Jv("indicatorRotate",[ig("collapsed, void",ng({transform:"rotate(0deg)"})),ig("expanded",ng({transform:"rotate(180deg)"})),rg("expanded <=> collapsed, void => collapsed",eg(uH))]),bodyExpansion:Jv("bodyExpansion",[ig("collapsed, void",ng({height:"0px",visibility:"hidden"})),ig("expanded",ng({height:"*",visibility:"visible"})),rg("expanded <=> collapsed, void => collapsed",eg(uH))])},lH=function(){var e=function e(t){m(this,e),this._template=t};return e.\u0275fac=function(t){return new(t||e)(Ss(Ec))},e.\u0275dir=Mt({type:e,selectors:[["ng-template","matExpansionPanelContent",""]]}),e}(),hH=0,dH=new Pi("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),fH=function(){var t=function(t){a(i,t);var n=s(i);function i(e,t,r,o,a,s,u){var c;return m(this,i),(c=n.call(this,e,t,r))._viewContainerRef=o,c._animationMode=s,c._hideToggle=!1,c.afterExpand=new Qc,c.afterCollapse=new Qc,c._inputChanges=new re,c._headerId="mat-expansion-panel-header-"+hH++,c._bodyAnimationDone=new re,c.accordion=e,c._document=a,c._bodyAnimationDone.pipe(Yd(function(e,t){return e.fromState===t.fromState&&e.toState===t.toState})).subscribe(function(e){"void"!==e.fromState&&("expanded"===e.toState?c.afterExpand.emit():"collapsed"===e.toState&&c.afterCollapse.emit())}),u&&(c.hideToggle=u.hideToggle),c}return b(i,[{key:"hideToggle",get:function(){return this._hideToggle||this.accordion&&this.accordion.hideToggle},set:function(e){this._hideToggle=Pd(e)}},{key:"togglePosition",get:function(){return this._togglePosition||this.accordion&&this.accordion.togglePosition},set:function(e){this._togglePosition=e}},{key:"_hasSpacing",value:function(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}},{key:"_getExpandedState",value:function(){return this.expanded?"expanded":"collapsed"}},{key:"toggle",value:function(){this.expanded=!this.expanded}},{key:"close",value:function(){this.expanded=!1}},{key:"open",value:function(){this.expanded=!0}},{key:"ngAfterContentInit",value:function(){var e=this;this._lazyContent&&this.opened.pipe(hf(null),rf(function(){return e.expanded&&!e._portal}),op(1)).subscribe(function(){e._portal=new $f(e._lazyContent._template,e._viewContainerRef)})}},{key:"ngOnChanges",value:function(e){this._inputChanges.next(e)}},{key:"ngOnDestroy",value:function(){e(p(i.prototype),"ngOnDestroy",this).call(this),this._bodyAnimationDone.complete(),this._inputChanges.complete()}},{key:"_containsFocus",value:function(){if(this._body){var e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}}]),i}(ZU);return t.\u0275fac=function(e){return new(e||t)(Ss(sH,12),Ss(_c),Ss(Hf),Ss(Pc),Ss(hh),Ss(Dy,8),Ss(dH,8))},t.\u0275cmp=Et({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,lH,5),2&e)&&(cl(i=dl())&&(t._lazyContent=i.first))},viewQuery:function(e,t){var n;(1&e&&ll(eH,5),2&e)&&(cl(n=dl())&&(t._body=n.first))},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(e,t){2&e&&au("mat-expanded",t.expanded)("_mat-animation-noopable","NoopAnimations"===t._animationMode)("mat-expansion-panel-spacing",t._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[Uu([{provide:sH,useValue:void 0}]),as,Ht],ngContentSelectors:iH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(e,t){1&e&&(Gs(nH),Ws(0),Os(1,"div",0,1),js("@bodyExpansion.done",function(e){return t._bodyAnimationDone.next(e)}),Os(3,"div",2),Ws(4,1),ks(5,tH,0,0,"ng-template",3),Ts(),Ws(6,2),Ts()),2&e&&(Wo(1),Es("@bodyExpansion",t._getExpandedState())("id",t.id),bs("aria-labelledby",t._headerId),Wo(4),Es("cdkPortalOutlet",t._portal))},directives:[np],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[cH.bodyExpansion]},changeDetection:0}),t}(),pH=Yy(function e(){m(this,e)}),vH=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u){var c;m(this,n),(c=t.call(this)).panel=e,c._element=i,c._focusMonitor=r,c._changeDetectorRef=o,c._animationMode=s,c._parentChangeSubscription=G.EMPTY;var l=e.accordion?e.accordion._stateChanges.pipe(rf(function(e){return!(!e.hideToggle&&!e.togglePosition)})):gf;return c.tabIndex=parseInt(u||"")||0,c._parentChangeSubscription=Ee(e.opened,e.closed,l,e._inputChanges.pipe(rf(function(e){return!!(e.hideToggle||e.disabled||e.togglePosition)}))).subscribe(function(){return c._changeDetectorRef.markForCheck()}),e.closed.pipe(rf(function(){return e._containsFocus()})).subscribe(function(){return r.focusVia(i,"program")}),a&&(c.expandedHeight=a.expandedHeight,c.collapsedHeight=a.collapsedHeight),c}return b(n,[{key:"disabled",get:function(){return this.panel.disabled}},{key:"_toggle",value:function(){this.disabled||this.panel.toggle()}},{key:"_isExpanded",value:function(){return this.panel.expanded}},{key:"_getExpandedState",value:function(){return this.panel._getExpandedState()}},{key:"_getPanelId",value:function(){return this.panel.id}},{key:"_getTogglePosition",value:function(){return this.panel.togglePosition}},{key:"_showToggle",value:function(){return!this.panel.hideToggle&&!this.panel.disabled}},{key:"_getHeaderHeight",value:function(){var e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}},{key:"_keydown",value:function(e){switch(e.keyCode){case 32:case 13:hp(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}},{key:"ngAfterViewInit",value:function(){var e=this;this._focusMonitor.monitor(this._element).subscribe(function(t){t&&e.panel.accordion&&e.panel.accordion._handleHeaderFocus(e)})}},{key:"ngOnDestroy",value:function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}]),n}(pH);return e.\u0275fac=function(t){return new(t||e)(Ss(fH,1),Ss(Yu),Ss(Gv),Ss(_c),Ss(dH,8),Ss(Dy,8),Oi("tabindex"))},e.\u0275cmp=Et({type:e,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(e,t){1&e&&js("click",function(){return t._toggle()})("keydown",function(e){return t._keydown(e)}),2&e&&(bs("id",t.panel._headerId)("tabindex",t.tabIndex)("aria-controls",t._getPanelId())("aria-expanded",t._isExpanded())("aria-disabled",t.panel.disabled),ou("height",t._getHeaderHeight()),au("mat-expanded",t._isExpanded())("mat-expansion-toggle-indicator-after","after"===t._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===t._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[as],ngContentSelectors:aH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(e,t){1&e&&(Gs(oH),Os(0,"span",0),Ws(1),Ws(2,1),Ws(3,2),Ts(),ks(4,rH,1,1,"span",1)),2&e&&(Wo(4),Es("ngIf",t._showToggle()))},directives:[Nh],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[cH.indicatorRotate]},changeDetection:0}),e}(),gH=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Gy,JU,ip]]}),e}(),mH=r(5478);Object.create(Error.prototype);var yH=["*"],bH=(function(e){e.LineHighlight="line-highlight",e.LineNumbers="line-numbers"}(bH||(bH={})),bH),_H=function e(){m(this,e)},wH=new Pi("SECURITY_CONTEXT"),kH=function(){var e=function(){function e(t,n,i,r,o){m(this,e),this.platform=t,this.securityContext=n,this.http=i,this.sanitizer=o,this.initialMarkedOptions={renderer:new mH.Renderer},this.options=r}return b(e,[{key:"options",get:function(){return this._options},set:function(e){this._options=Object.assign(Object.assign({},this.initialMarkedOptions),e)}},{key:"renderer",get:function(){return this.options.renderer},set:function(e){this.options.renderer=e}},{key:"compile",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:this.options,r=this.trimIndentation(e),o=t?this.decodeHtml(r):r,a=n?this.renderEmoji(o):o,s=mH.parse(a,i);return this.sanitizer.sanitize(this.securityContext,s)||""}},{key:"getSource",value:function(e){var t=this;if(!this.http)throw new Error("[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information");return this.http.get(e,{responseType:"text"}).pipe(se(function(n){return t.handleExtension(e,n)}))}},{key:"highlight",value:function(e){if($h(this.platform)&&"undefined"!=typeof Prism){e||(e=document);var t=e.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(t,function(e){return e.classList.add("language-none")}),Prism.highlightAllUnder(e)}}},{key:"renderKatex",value:function(e,t){if(!$h(this.platform))return e;if("undefined"==typeof katex||void 0===katex.renderToString)throw new Error("[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information");return e.replace(/\$([^\s][^$]*?[^\s])\$/gm,function(e,n){return katex.renderToString(n,t)})}},{key:"decodeHtml",value:function(e){if(!$h(this.platform))return e;var t=document.createElement("textarea");return t.innerHTML=e,t.value}},{key:"handleExtension",value:function(e,t){var n=e?e.split("?")[0].split(".").splice(-1).join():"";return"md"!==n?"```"+n+"\n"+t+"\n```":t}},{key:"renderEmoji",value:function(e){if(!$h(this.platform))return e;if("undefined"==typeof joypixels||void 0===joypixels.shortnameToUnicode)throw new Error("[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information");return joypixels.shortnameToUnicode(e)}},{key:"trimIndentation",value:function(e){return e?e.split("\n").map(function(e){var n=t;return e.length>0&&(n=isNaN(n)?e.search(/\S|$/):Math.min(e.search(/\S|$/),n)),isNaN(t)&&(t=n),n?e.substring(n):e}).join("\n"):"";var t}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(xl),Ki(wH),Ki(Yb,8),Ki(_H,8),Ki(Ed))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),xH=function(){var e=function(){function e(t,n){m(this,e),this.element=t,this.markdownService=n,this.error=new Qc,this.load=new Qc,this.ready=new Qc,this._emoji=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1}return b(e,[{key:"emoji",get:function(){return this._emoji},set:function(e){this._emoji=this.coerceBooleanProperty(e)}},{key:"katex",get:function(){return this._katex},set:function(e){this._katex=this.coerceBooleanProperty(e)}},{key:"lineHighlight",get:function(){return this._lineHighlight},set:function(e){this._lineHighlight=this.coerceBooleanProperty(e)}},{key:"lineNumbers",get:function(){return this._lineNumbers},set:function(e){this._lineNumbers=this.coerceBooleanProperty(e)}},{key:"ngOnChanges",value:function(){null==this.data?null==this.src||this.handleSrc():this.handleData()}},{key:"ngAfterViewInit",value:function(){!this.data&&!this.src&&this.handleTransclusion()}},{key:"render",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.markdownService.compile(e,t,this.emoji);n=this.katex?this.markdownService.renderKatex(n,this.katexOptions):n,this.element.nativeElement.innerHTML=n,this.handlePlugins(),this.markdownService.highlight(this.element.nativeElement),this.ready.emit()}},{key:"coerceBooleanProperty",value:function(e){return null!=e&&"false"!="".concat(String(e))}},{key:"handleData",value:function(){this.render(this.data)}},{key:"handleSrc",value:function(){var e=this;this.markdownService.getSource(this.src).subscribe(function(t){e.render(t),e.load.emit(t)},function(t){return e.error.emit(t)})}},{key:"handleTransclusion",value:function(){this.render(this.element.nativeElement.innerHTML,!0)}},{key:"handlePlugins",value:function(){this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,bH.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}},{key:"setPluginClass",value:function(e,t){for(var n=e.querySelectorAll("pre"),i=0;i0){var r=i.indexOf(n);-1!==r&&i.splice(r,1)}}},{key:"notifyComplete",value:function(){}},{key:"_next",value:function(e){if(0===this.toRespond.length){var t=[e].concat(v(this.values));this.project?this._tryProject(t):this.destination.next(t)}}},{key:"_tryProject",value:function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}]),n}(I_),AH=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];m(this,e),this.accumulator=t,this.seed=n,this.hasSeed=i}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new PH(e,this.accumulator,this.seed,this.hasSeed))}}]),e}(),PH=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this,e)).accumulator=i,a._seed=r,a.hasSeed=o,a.index=0,a}return b(n,[{key:"seed",get:function(){return this._seed},set:function(e){this.hasSeed=!0,this._seed=e}},{key:"_next",value:function(e){if(this.hasSeed)return this._tryNext(e);this.seed=e,this.destination.next(e)}},{key:"_tryNext",value:function(e){var t,n=this.index++;try{t=this.accumulator(this.seed,e,n)}catch(i){this.destination.error(i)}this.seed=t,this.destination.next(t)}}]),n}(X),MH=function(){function e(t){m(this,e),this.predicate=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new IH(e,this.predicate))}}]),e}(),IH=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).predicate=i,r.skipping=!0,r.index=0,r}return b(n,[{key:"_next",value:function(e){var t=this.destination;this.skipping&&this.tryCallPredicate(e),this.skipping||t.next(e)}},{key:"tryCallPredicate",value:function(e){try{var t=this.predicate(e,this.index++);this.skipping=Boolean(t)}catch(t){this.destination.error(t)}}}]),n}(X),RH=["youtubeContainer"],DH=function(){var e=function(){function e(t,n){m(this,e),this._ngZone=t,this._youtubeContainer=new re,this._destroyed=new re,this._playerChanges=new tv(void 0),this._videoId=new tv(void 0),this._height=new tv(390),this._width=new tv(640),this._startSeconds=new tv(void 0),this._endSeconds=new tv(void 0),this._suggestedQuality=new tv(void 0),this._playerVars=new tv(void 0),this.ready=this._getLazyEmitter("onReady"),this.stateChange=this._getLazyEmitter("onStateChange"),this.error=this._getLazyEmitter("onError"),this.apiChange=this._getLazyEmitter("onApiChange"),this.playbackQualityChange=this._getLazyEmitter("onPlaybackQualityChange"),this.playbackRateChange=this._getLazyEmitter("onPlaybackRateChange"),this._isBrowser=$h(n)}return b(e,[{key:"videoId",get:function(){return this._videoId.value},set:function(e){this._videoId.next(e)}},{key:"height",get:function(){return this._height.value},set:function(e){this._height.next(e||390)}},{key:"width",get:function(){return this._width.value},set:function(e){this._width.next(e||640)}},{key:"startSeconds",set:function(e){this._startSeconds.next(e)}},{key:"endSeconds",set:function(e){this._endSeconds.next(e)}},{key:"suggestedQuality",set:function(e){this._suggestedQuality.next(e)}},{key:"playerVars",get:function(){return this._playerVars.value},set:function(e){this._playerVars.next(e)}},{key:"ngOnInit",value:function(){var e=this;if(this._isBrowser){var n=Nd(!0);if(!window.YT||!window.YT.Player){var i=new re;this._existingApiReadyCallback=window.onYouTubeIframeAPIReady,window.onYouTubeIframeAPIReady=function(){e._existingApiReadyCallback&&e._existingApiReadyCallback(),e._ngZone.run(function(){return i.next(!0)})},n=i.pipe(op(1),hf(!1))}var r=function(e,n,i,r,o,a,s){var u=L_([n,a]).pipe(CH(L_([r,o])),se(function(e){var n=t(e,2),i=n[0],r=n[1],o=t(i,2),a=o[0],s=o[1],u=t(r,2),c=u[0],l=u[1];return a?{videoId:a,playerVars:s,width:c,height:l}:void 0}));return L_([e,u,Nd(s)]).pipe(function(e){return Q(function(){for(var e=arguments.length,t=new Array(e),n=0;n=2&&(n=!0),function(i){return i.lift(new AH(e,t,n))}}(NH,void 0),Yd())}(this._youtubeContainer,this._videoId,n,this._width,this._height,this._playerVars,this._ngZone).pipe(iv(function(t){e._playerChanges.next(t)}),_e(function(e){return e?LH(e)?Nd(e):new J(function(t){var n=!1,i=!1;return e.addEventListener("onReady",function e(r){i=!0,n||(r.target.removeEventListener("onReady",e),t.next(r.target))}),function(){n=!0,i||function(e){LH(e)||e.destroy()}(e)}}).pipe(op(1),hf(void 0)):Nd(void 0)}),sf(this._destroyed),Ie(new re));r.subscribe(function(t){e._player=t,t&&e._pendingPlayerState&&e._initializePlayer(t,e._pendingPlayerState),e._pendingPlayerState=void 0}),function(e,n,i){L_([e,n,i]).subscribe(function(e){var n=t(e,3),i=n[0],r=n[1],o=n[2];return i&&i.setSize(r,o)})}(r,this._width,this._height),function(e,n){L_([e,n]).subscribe(function(e){var n=t(e,2),i=n[0],r=n[1];return i&&r&&i.setPlaybackQuality(r)})}(r,this._suggestedQuality),function(e,n,i,r,o,a){var s=L_([i,r]).pipe(se(function(e){var n=t(e,2);return{startSeconds:n[0],endSeconds:n[1]}})),u=s.pipe(jH(e,function(e){return!!e&&!function(e){var t=e.getPlayerState();return t!==YT.PlayerState.UNSTARTED&&t!==YT.PlayerState.CUED}(e)})),c=n.pipe(jH(e,function(e,t){return!!e&&e.videoId!==t}));Ee(e.pipe(jH(L_([n,s]),function(e,n){var i=t(e,2),r=i[0],o=i[1];return!(!n||r==n.videoId&&!o.startSeconds&&!o.endSeconds)})),c,u).pipe(CH(L_([e,n,s,o])),se(function(e){var n=t(e,2);n[0];return n[1]}),sf(a)).subscribe(function(e){var n=t(e,4),i=n[0],r=n[1],o=n[2],a=n[3];!r||!i||(i.videoId=r,i.cueVideoById(Object.assign({videoId:r,suggestedQuality:a},o)))})}(r,this._videoId,this._startSeconds,this._endSeconds,this._suggestedQuality,this._destroyed),r.connect()}}},{key:"createEventsBoundInZone",value:function(){return{}}},{key:"ngAfterViewInit",value:function(){this._youtubeContainer.next(this.youtubeContainer.nativeElement)}},{key:"ngOnDestroy",value:function(){this._player&&(this._player.destroy(),window.onYouTubeIframeAPIReady=this._existingApiReadyCallback),this._playerChanges.complete(),this._videoId.complete(),this._height.complete(),this._width.complete(),this._startSeconds.complete(),this._endSeconds.complete(),this._suggestedQuality.complete(),this._youtubeContainer.complete(),this._playerVars.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"playVideo",value:function(){this._player?this._player.playVideo():this._getPendingState().playbackState=YT.PlayerState.PLAYING}},{key:"pauseVideo",value:function(){this._player?this._player.pauseVideo():this._getPendingState().playbackState=YT.PlayerState.PAUSED}},{key:"stopVideo",value:function(){this._player?this._player.stopVideo():this._getPendingState().playbackState=YT.PlayerState.CUED}},{key:"seekTo",value:function(e,t){this._player?this._player.seekTo(e,t):this._getPendingState().seek={seconds:e,allowSeekAhead:t}}},{key:"mute",value:function(){this._player?this._player.mute():this._getPendingState().muted=!0}},{key:"unMute",value:function(){this._player?this._player.unMute():this._getPendingState().muted=!1}},{key:"isMuted",value:function(){return this._player?this._player.isMuted():!!this._pendingPlayerState&&!!this._pendingPlayerState.muted}},{key:"setVolume",value:function(e){this._player?this._player.setVolume(e):this._getPendingState().volume=e}},{key:"getVolume",value:function(){return this._player?this._player.getVolume():this._pendingPlayerState&&null!=this._pendingPlayerState.volume?this._pendingPlayerState.volume:0}},{key:"setPlaybackRate",value:function(e){if(this._player)return this._player.setPlaybackRate(e);this._getPendingState().playbackRate=e}},{key:"getPlaybackRate",value:function(){return this._player?this._player.getPlaybackRate():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackRate?this._pendingPlayerState.playbackRate:0}},{key:"getAvailablePlaybackRates",value:function(){return this._player?this._player.getAvailablePlaybackRates():[]}},{key:"getVideoLoadedFraction",value:function(){return this._player?this._player.getVideoLoadedFraction():0}},{key:"getPlayerState",value:function(){if(this._isBrowser&&window.YT)return this._player?this._player.getPlayerState():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackState?this._pendingPlayerState.playbackState:YT.PlayerState.UNSTARTED}},{key:"getCurrentTime",value:function(){return this._player?this._player.getCurrentTime():this._pendingPlayerState&&this._pendingPlayerState.seek?this._pendingPlayerState.seek.seconds:0}},{key:"getPlaybackQuality",value:function(){return this._player?this._player.getPlaybackQuality():"default"}},{key:"getAvailableQualityLevels",value:function(){return this._player?this._player.getAvailableQualityLevels():[]}},{key:"getDuration",value:function(){return this._player?this._player.getDuration():0}},{key:"getVideoUrl",value:function(){return this._player?this._player.getVideoUrl():""}},{key:"getVideoEmbedCode",value:function(){return this._player?this._player.getVideoEmbedCode():""}},{key:"_getPendingState",value:function(){return this._pendingPlayerState||(this._pendingPlayerState={}),this._pendingPlayerState}},{key:"_initializePlayer",value:function(e,t){var n=t.playbackState,i=t.playbackRate,r=t.volume,o=t.muted,a=t.seek;switch(n){case YT.PlayerState.PLAYING:e.playVideo();break;case YT.PlayerState.PAUSED:e.pauseVideo();break;case YT.PlayerState.CUED:e.stopVideo()}null!=i&&e.setPlaybackRate(i),null!=r&&e.setVolume(r),null!=o&&(o?e.mute():e.unMute()),null!=a&&e.seekTo(a.seconds,a.allowSeekAhead)}},{key:"_getLazyEmitter",value:function(e){var t=this;return this._playerChanges.pipe(df(function(t){return t?EH(function(n){t.addEventListener(e,n)},function(n){try{t.removeEventListener&&t.removeEventListener(e,n)}catch(i){}}):Nd()}),function(e){return new J(function(n){return e.subscribe({next:function(e){return t._ngZone.run(function(){return n.next(e)})},error:function(e){return n.error(e)},complete:function(){return n.complete()}})})},sf(this._destroyed))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Bl),Ss(xl))},e.\u0275cmp=Et({type:e,selectors:[["youtube-player"]],viewQuery:function(e,t){var n;(1&e&&ll(RH,5),2&e)&&(cl(n=dl())&&(t.youtubeContainer=n.first))},inputs:{videoId:"videoId",height:"height",width:"width",startSeconds:"startSeconds",endSeconds:"endSeconds",suggestedQuality:"suggestedQuality",playerVars:"playerVars",showBeforeIframeApiLoads:"showBeforeIframeApiLoads"},outputs:{ready:"ready",stateChange:"stateChange",error:"error",apiChange:"apiChange",playbackQualityChange:"playbackQualityChange",playbackRateChange:"playbackRateChange"},decls:2,vars:0,consts:[["youtubeContainer",""]],template:function(e,t){1&e&&As(0,"div",null,0)},encapsulation:2,changeDetection:0}),e}();function NH(e,n){var i=t(n,3),r=i[0],o=i[1],a=i[2];if(e&&o&&e.playerVars!==o.playerVars)e.destroy();else{if(!o)return void(e&&e.destroy());if(e)return e}var s=a.runOutsideAngular(function(){return new YT.Player(r,o)});return s.videoId=o.videoId,s.playerVars=o.playerVars,s}function LH(e){return"getPlayerStatus"in e}function jH(e,n){return Q(CH(e),rf(function(e){var i=t(e,2),r=i[0],o=i[1];return n(o,r)}),se(function(e){return t(e,1)[0]}))}var FH=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}();function BH(e){return!0===e}function VH(e){return null==e}function zH(e){return!VH(e)}function UH(e){return Boolean(e)}function HH(e){return VH(e)?e:JSON.parse(JSON.stringify(e))}var GH=function e(t){var n=t instanceof Date;if("object"!=typeof t||null===t||n)return t;Object.freeze(t);var i="function"==typeof t,r=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(function(n){r.call(t,n)&&(!i||"caller"!==n&&"callee"!==n&&"arguments"!==n)&&null!==t[n]&&("object"==typeof t[n]||"function"==typeof t[n])&&!Object.isFrozen(t[n])&&e(t[n])}),t};function WH(e){return zH(e)&&"object"==typeof e&&function(e){return"[object Object]"===Object.prototype.toString.call(e)}(e)}var qH="NGXS_DATA_META",XH="NGXS_META",YH="NGXS_ARGUMENT_REGISTRY_META",KH=function(){var e=function(){function e(t){var n=this;m(this,e),this.sequence$=new tv(0),this.subscription=null,t&&(this.subscription=t.subscribe(function(){return n.updateSequence()}))}return b(e,[{key:"sequenceValue",get:function(){return this.sequence$.getValue()}},{key:"ngOnDestroy",value:function(){var e;this.sequence$.next(0),null===(e=this.subscription)||void 0===e||e.unsubscribe()}},{key:"updateSequence",value:function(){this.sequence$.next(this.sequenceValue+1)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(WB,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function $H(e){return e[qH]}var QH=function(){var e=function e(t,n,i){m(this,e),e.store=t.get(WB),e.ngZone=t.get(Bl),e.factory=n,e.context=i,e.computed=t.get(KH)};return e.store=null,e.computed=null,e.context=null,e.factory=null,e.ngZone=null,e.\u0275prov=Ye({token:e,factory:e.\u0275fac=function(t){return new(t||e)(Ki(rs),Ki(GF),Ki(HF))}}),e}(),ZH=function(){function e(){m(this,e),e.statesCachedMeta.clear()}return b(e,null,[{key:"createStateContext",value:function(e){return QH.context.createStateContext(e)}},{key:"ensureMappedState",value:function(t){if(VH(QH.factory)||VH(t))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return(zH(t.name)?e.statesCachedMeta.get(t.name):null)||e.ensureMeta(t)}},{key:"getRepositoryByInstance",value:function(t){var n,i=null!==(n=$H(e.getStateClassByInstance(t)))&&void 0!==n?n:null;if(VH(i))throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return i}},{key:"getStateClassByInstance",value:function(e){return(null!=e?e:{}).constructor}},{key:"clearMetaByInstance",value:function(t){var n=e.getRepositoryByInstance(t);n.stateMeta.actions={},n.operations={}}},{key:"createPayload",value:function(e,t){for(var n={},i=Array.from(e),r=0;r0?n:null}},{key:"createAction",value:function(t,n,i){var r=e.createPayload(n,i);return new(function(e){return function(){function t(e){var n=this;m(this,t),e&&Object.keys(e).forEach(function(t){n[t]=e[t]})}return b(t,null,[{key:"type",get:function(){return e}}]),t}()}(t.type))(r)}},{key:"ensureMeta",value:function(t){var n,i=zH(t.name)?null===(n=QH.factory.states)||void 0===n?void 0:n.find(function(e){return e.name===t.name}):null;return zH(i)&&zH(t.name)&&e.statesCachedMeta.set(t.name,i),i}}]),e}();ZH.statesCachedMeta=new Map,ZH.\u0275fac=function(e){return new(e||ZH)},ZH.\u0275prov=Ye({token:ZH,factory:ZH.\u0275fac}),new Sf(1);var JH=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,"Child states can only be added to an object. Cannot convert ".concat(zH(null==e?void 0:e.constructor)?e.constructor.name:e," to PlainObject"))}return n}(l(Error));function eG(e){var t;return null!==(t=e.NGXS_OPTIONS_META)&&void 0!==t?t:{name:""}}function tG(e){var t,n=eG(e),i=null!==(t=n.children)&&void 0!==t?t:[],r=HH(void 0===n.defaults?{}:n.defaults);if(i.length){if(WH(r))return function(e,t){return t.reduce(function(e,t){var n=eG(t);if(function(e){var t="string"==typeof e?e.trim():e;return[void 0,null,NaN,"",1/0].includes(t)}(n.name))throw new Error("State name not provided in class");return e[n.name.toString()]=tG(t),e},null!=e?e:{})}(r,i);throw new JH(r)}return r}function nG(e){var t;return null!==(t=e.__NGXS_COMPUTED_OPTION__)&&void 0!==t?t:null}function iG(){var e,t;return null!==(t=null===(e=null==QH?void 0:QH.computed)||void 0===e?void 0:e.sequenceValue)&&void 0!==t?t:0}function rG(e){var t=!1;return Xd(e)&&(t=!0),t}function oG(e){return e[YH]}var aG=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,"An argument with the name '".concat(e,"' already exists in the method '").concat(i,"'"))}return n}(l(Error)),sG=function(){function e(){m(this,e),this.payloadMap=new Map,this.argumentMap=new Map}return b(e,[{key:"getPayloadTypeByIndex",value:function(e){var t;return null!==(t=this.payloadMap.get(e))&&void 0!==t?t:null}},{key:"getArgumentNameByIndex",value:function(e){var t;return null!==(t=this.argumentMap.get(e))&&void 0!==t?t:null}},{key:"createPayloadType",value:function(e,t,n){this.checkDuplicateName(e,t),this.payloadMap.set(n,e),this.payloadMap.set(e,e)}},{key:"createArgumentName",value:function(e,t,n){this.checkDuplicateName(e,t),this.argumentMap.set(n,e),this.argumentMap.set(e,e)}},{key:"checkDuplicateName",value:function(e,t){if(UH(this.argumentMap.has(e))||UH(this.payloadMap.has(e)))throw new aG(e,t)}}]),e}();function uG(e){return Zl()?GH(e):e}function cG(e){return{enumerable:!0,configurable:!0,get:function(){var t=$H(e),n=ZH.ensureMappedState(t.stateMeta);return ZH.createStateContext(n)}}}function lG(e){if(!e)throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return Object.assign(Object.assign({},e),{getState:function(){return Zl()?GH(e.getState()):e.getState()},setState:function(t){e.setState(t)},patchState:function(t){e.patchState(t)}})}function hG(){return function(e,t,n){!function(e,t){if(!function(e,t){var n,i=e,r=!1;if(WH(i))for(;null!==i;){if(BH(null==i?void 0:i.hasOwnProperty(t))){r=!!(null===(n=Object.getOwnPropertyDescriptor(i,t))||void 0===n?void 0:n.get);break}i=Object.getPrototypeOf(i)}return r}(e,null==t?void 0:t.toString()))throw new Error("The method must be a getter for the computed decorator to work properly.\nExample: \n@Computed() get ".concat(t.toString(),"() { \n\t .. \n}"))}(e,t);var i=n.get;return n.get=function(){var e=function(e){return VH(nG(e))&&Object.defineProperties(e,{__NGXS_COMPUTED_OPTION__:{enumerable:!0,configurable:!0,value:new WeakMap}}),nG(e)}(this),t=null==e?void 0:e.get(i);if(BH(null==t?void 0:t.isObservable))return null==t?void 0:t.value;if(VH(t)||t.sequenceId!==iG()){e.delete(i);for(var n=arguments.length,r=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:dG;return function(t,n,i){!function(e,t){if(e.hasOwnProperty("prototype"))throw new Error("Cannot support static methods with @DataAction()");if(void 0===t)throw new Error("@DataAction() can only decorate a method implementation")}(t,i);var r=i.value,o=n.toString();return i.value=function(){for(var t=arguments.length,n=new Array(t),i=0;i0?Array.from(e).reduce(function(e,n){var i=t(n,2),r=i[0],o=i[1];return Object.defineProperty(e,r,{value:o,enumerable:!0})},{}):void 0}},{key:"gtag",value:function(){try{for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;return{ngModule:e,providers:[{provide:bG,useValue:{trackingCode:t,initCommands:n,uri:i,enableTracing:r,nonce:o}},SG]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[]]}),e}(),CG=function(){var e=function(){function e(){m(this,e),this.consent="not-set",this.consentChange=new Sf(1),this.consentChange.next(this.consent)}return b(e,[{key:"ngOnDestroy",value:function(){this.consentChange.complete()}},{key:"setConsent",value:function(e){this.consent!==e&&(this.consent=e,this.consentChange.next(e))}},{key:"unsetConsent",value:function(){this.setConsent("not-set")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),OG=function(){var e=function(){function e(t,n,i){var r=this,o=i.trackingCode;m(this,e),this.window=n,this.subscriptions=new G,this.token=o,this.subscriptions.add(t.consentChange.subscribe(function(e){return r.toggleGoogleAnalytics("rescinded"===e)}))}return b(e,[{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"toggleGoogleAnalytics",value:function(e){this.window&&(this.window["ga-disable-".concat(this.token)]=e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(CG),Ki(_G),Ki(bG))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),TG=new Pi("Key under which consent is stored",{providedIn:"root",factory:function(){return"ALLOW_TELEMETRY"}}),AG=[CG,OG,function(){var e=function(){function e(t,n){var i=this;m(this,e),this.key=n,this.subscriptions=new G;try{this.storage=localStorage}catch(r){}t.setConsent(this.loadConsent()),this.subscriptions.add(t.consentChange.subscribe(function(e){return i.saveConsent(e)}))}return b(e,[{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"loadConsent",value:function(){var e,t,n=null===(t=null===(e=this.storage)||void 0===e?void 0:e.getItem)||void 0===t?void 0:t.call(e,this.key);if(null==n)return"not-set";var i=n.trim().toLowerCase();switch(i){case"given":case"rescinded":return i;default:return"not-set"}}},{key:"saveConsent",value:function(e){var t,n;null===(n=null===(t=this.storage)||void 0===t?void 0:t.setItem)||void 0===n||n.call(t,this.key,e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(CG),Ki(TG))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}()];function PG(e){return Object.entries(e).reduce(function(e,n){var i=t(n,2),r=i[0],o=i[1];return null!=o&&(e[r]="".concat(o)),e},{})}var MG=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"forRoot",value:function(t){var n=EG.forRoot(t.gaToken,function(e){return[{command:"set",values:[PG({appName:e.appName,projectName:e.projectName,developmentMode:e.developmentMode})]}]}(t)).providers;return{ngModule:e,providers:void 0===n?[]:n}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[].concat(AG,[{provide:ml,multi:!0,useFactory:function(){return function(){}},deps:AG}]),imports:[[EG]]}),e}();function IG(e,t,n,i){n&&"function"!=typeof n&&(i=n);var r="function"==typeof n?n:void 0,o=new Sf(e,t,i);return function(e){return Ie(function(){return o},r)(e)}}var RG=function(e,t){return JSON.stringify(e)===JSON.stringify(t)},DG=function(e){return e.map(function(e){return void 0!==e?JSON.parse(JSON.stringify(e)):e})},NG={storageStrategy:function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments)).cachePairs=[],e}return b(n,[{key:"add",value:function(e,t,n){this.cachePairs.push(e)}},{key:"addMany",value:function(e){this.cachePairs=e}},{key:"updateAtIndex",value:function(e,t){Object.assign(this.cachePairs[e],t)}},{key:"update",value:function(e,t){Object.assign(this.cachePairs[e],t)}},{key:"getAll",value:function(){return this.cachePairs}},{key:"removeAtIndex",value:function(e){this.cachePairs.splice(e,1)}},{key:"remove",value:function(e){this.cachePairs.splice(e,1)}},{key:"removeAll",value:function(){this.cachePairs.length=0}}]),n}(function(){return function e(){m(this,e)}}()),globalCacheKey:"CACHE_STORAGE",promiseImplementation:Promise},LG=new re;function jG(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,n,i){var r=this,o=e.cacheKey||t.constructor.name+"#"+n,a=i.value;if(i&&i.value){var s=e.storageStrategy?new e.storageStrategy:new NG.storageStrategy,u=[];e.cacheModifier&&e.cacheModifier.subscribe(function(e){return s.addMany(e(s.getAll(o,r)),o,r)}),Ee(LG.asObservable(),e.cacheBusterObserver?e.cacheBusterObserver:mf()).subscribe(function(e){s.removeAll(o,r),u.length=0}),e.cacheResolver=e.cacheResolver||NG.cacheResolver||RG,e.cacheHasher=e.cacheHasher||NG.cacheHasher||DG,i.value=function(){for(var t=this,n=s.getAll(o,this),i=arguments.length,r=new Array(i),c=0;c(e.maxAge||NG.maxAge)?(s.remove?s.remove(n.indexOf(h),h,o,this):s.removeAtIndex(n.indexOf(h),o,this),h=null):(e.slidingExpiration||NG.slidingExpiration)&&(h.created=new Date,s.update?s.update(n.indexOf(h),h,o,this):s.updateAtIndex(n.indexOf(h),h,o,this))),h){var f=Nd(h.response);return e.async?f.pipe(Uz(0)):f}if(d)return d.response;var p=a.call.apply(a,[this].concat(r)).pipe(Eb(function(){var t=u.find(function(t){return e.cacheResolver(t.parameters,l)});u.splice(u.indexOf(t),1)}),iv(function(i){(!e.shouldCacheDecider||e.shouldCacheDecider(i))&&((!(e.maxCacheCount||NG.maxCacheCount)||1===(e.maxCacheCount||NG.maxCacheCount)||(e.maxCacheCount||NG.maxCacheCount)&&(e.maxCacheCount||NG.maxCacheCount)0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.apiKeys=t.apiKeys,this.username=t.username,this.password=t.password,this.accessToken=t.accessToken,this.basePath=t.basePath,this.withCredentials=t.withCredentials,this.encoder=t.encoder,this.credentials=t.credentials?t.credentials:{}}return b(e,[{key:"selectHeaderContentType",value:function(e){var t=this;if(0!==e.length){var n=e.find(function(e){return t.isJsonMime(e)});return void 0===n?e[0]:n}}},{key:"selectHeaderAccept",value:function(e){var t=this;if(0!==e.length){var n=e.find(function(e){return t.isJsonMime(e)});return void 0===n?e[0]:n}}},{key:"isJsonMime",value:function(e){var t=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==e&&(t.test(e)||"application/json-patch+json"===e.toLowerCase())}},{key:"lookupCredential",value:function(e){var t=this.credentials[e];return"function"==typeof t?t():t}}]),e}(),UG=function(){var e=function(){function e(t,n,i){m(this,e),this.httpClient=t,this.basePath="/v1",this.defaultHeaders=new Pb,this.configuration=new zG,i&&(this.configuration=i),"string"!=typeof this.configuration.basePath&&("string"!=typeof n&&(n=this.basePath),this.configuration.basePath=n),this.encoder=this.configuration.encoder||new BG}return b(e,[{key:"addToHttpParams",value:function(e,t,n){return this.addToHttpParamsRecursive(e,t,n)}},{key:"addToHttpParamsRecursive",value:function(e,t,n){var i=this;if(null==t)return e;if("object"==typeof t)if(Array.isArray(t))t.forEach(function(t){return e=i.addToHttpParamsRecursive(e,t,n)});else if(t instanceof Date){if(null==n)throw Error("key may not be null if value is Date");e=e.append(n,t.toISOString().substr(0,10))}else Object.keys(t).forEach(function(r){return e=i.addToHttpParamsRecursive(e,t[r],null!=n?"".concat(n,".").concat(r):r)});else{if(null==n)throw Error("key may not be null if value is not object or array");e=e.append(n,t)}return e}},{key:"aggregateResults",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/aggregate-results"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"cellTypeTermOccurences",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/cell-type-term-occurences"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"cellTypeTreeModel",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/cell-type-tree-model"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"gtexRuiLocations",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=new Lb({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache"));var a=this.defaultHeaders,s=i&&i.httpHeaderAccept;void 0===s&&(s=this.configuration.selectHeaderAccept(["application/json"])),void 0!==s&&(a=a.set("Accept",s));var u=i&&i.context;void 0===u&&(u=new jb);var c="json";return s&&(c=s.startsWith("text")?"text":this.configuration.isJsonMime(s)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/gtex/rui_locations.jsonld"),{context:u,params:o,responseType:c,withCredentials:this.configuration.withCredentials,headers:a,observe:t,reportProgress:n})}},{key:"hubmapRuiLocations",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/hubmap/rui_locations.jsonld"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"ontologyTermOccurences",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/ontology-term-occurences"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"ontologyTreeModel",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/ontology-tree-model"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"providerNames",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/provider-names"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"referenceOrganScene",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.organIri;if(null==o)throw new Error("Required parameter organIri was null or undefined when calling referenceOrganScene.");var a=e.age,s=e.ageRange,u=e.bmi,c=e.bmiRange,l=e.cache,h=e.ontologyTerms,d=e.cellTypeTerms,f=e.providers,p=e.sex,v=e.technologies,g=e.token,m=new Lb({encoder:this.encoder});null!=a&&(m=this.addToHttpParams(m,a,"age")),null!=s&&(m=this.addToHttpParams(m,s,"age-range")),null!=u&&(m=this.addToHttpParams(m,u,"bmi")),null!=c&&(m=this.addToHttpParams(m,c,"bmi-range")),null!=l&&(m=this.addToHttpParams(m,l,"cache")),h&&h.forEach(function(e){m=t.addToHttpParams(m,e,"ontology-terms")}),d&&d.forEach(function(e){m=t.addToHttpParams(m,e,"cell-type-terms")}),null!=o&&(m=this.addToHttpParams(m,o,"organ-iri")),f&&f.forEach(function(e){m=t.addToHttpParams(m,e,"providers")}),null!=p&&(m=this.addToHttpParams(m,p,"sex")),v&&v.forEach(function(e){m=t.addToHttpParams(m,e,"technologies")}),null!=g&&(m=this.addToHttpParams(m,g,"token"));var y=this.defaultHeaders,b=r&&r.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(y=y.set("Accept",b));var _=r&&r.context;void 0===_&&(_=new jb);var w="json";return b&&(w=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/reference-organ-scene"),{context:_,params:m,responseType:w,withCredentials:this.configuration.withCredentials,headers:y,observe:n,reportProgress:i})}},{key:"referenceOrgans",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/reference-organs"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"scene",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/scene"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"technologyNames",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/technology-names"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"tissueBlocks",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/tissue-blocks"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Yb),Ki(VG,8),Ki(zG,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Yb),Ki(VG,8),Ki(zG,8))},token:e,providedIn:"root"}),e}(),HG=function(){var e=function(){function e(t,n){if(m(this,e),t)throw new Error("CcfApiModule is already loaded. Import in your base AppModule only.");if(!n)throw new Error("You need to import the HttpClientModule in your AppModule! \nSee also https://github.com/angular/angular/issues/20575")}return b(e,null,[{key:"forRoot",value:function(t){return{ngModule:e,providers:[{provide:zG,useFactory:t}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(e,12),Ki(Yb,8))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[],imports:[[]]}),e}();function GG(e){return new Promise(function(t,n){e.oncomplete=e.onsuccess=function(){return t(e.result)},e.onabort=e.onerror=function(){return n(e.error)}})}function WG(){return FG||(e="keyval",t=function(){return navigator.userAgentData||!/Safari\//.test(navigator.userAgent)||/Chrom(e|ium)\//.test(navigator.userAgent)||!indexedDB.databases?Promise.resolve():new Promise(function(t){var n=function(){return indexedDB.databases().finally(t)};e=setInterval(n,100),n()}).finally(function(){return clearInterval(e)});var e}().then(function(){var t=indexedDB.open("keyval-store");return t.onupgradeneeded=function(){return t.result.createObjectStore(e)},GG(t)}),FG=function(n,i){return t.then(function(t){return i(t.transaction(e,n).objectStore(e))})}),FG;var e,t}function qG(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:WG();return t("readonly",function(t){return GG(t.get(e))})}var XG=r(71440),YG=r(70698),KG=r(7445),$G=r.n(KG),QG=r(23815),ZG=r(31609),JG=XG.Util.prefixes({ccf:"http://purl.org/ccf/latest/ccf.owl#",entity:"http://purl.org/ccf/latest/ccf-entity.owl#",fma:"http://purl.obolibrary.org/obo/FMA_",obo:"http://purl.obolibrary.org/obo/",uberon:"http://purl.obolibrary.org/obo/UBERON_",cl:"http://purl.obolibrary.org/obo/CL_",lmha:"http://purl.obolibrary.org/obo/LMHA_",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",dc:"http://purl.org/dc/elements/1.1/"},XG.DataFactory),eW={x:JG("rdf"),type:JG("rdf")("type")},tW={x:JG("rdfs"),label:JG("rdfs")("label"),comment:JG("rdfs")("comment"),isDefinedBy:JG("rdfs")("isDefinedBy"),seeAlso:JG("rdfs")("seeAlso")},nW={x:JG("entity"),id:JG("entity")("id"),label:tW.label,description:tW.comment,link:tW.seeAlso,sex:JG("entity")("sex"),age:JG("entity")("age"),bmi:JG("entity")("bmi"),Male:XG.DataFactory.literal("Male"),Female:XG.DataFactory.literal("Female"),consortiumName:JG("entity")("consortium_name"),providerName:JG("entity")("provider_name"),providerUUID:JG("entity")("provider_uuid"),donor:JG("entity")("has_donor"),sections:JG("entity")("has_tissue_section"),datasets:JG("entity")("has_dataset"),sampleType:JG("entity")("sample_type"),TissueBlock:XG.DataFactory.literal("Tissue Block"),TissueSection:XG.DataFactory.literal("Tissue Section"),NonStandard:XG.DataFactory.literal("Non-standard"),sectionCount:JG("entity")("section_count"),sectionSize:JG("entity")("section_size"),sectionUnits:JG("entity")("section_units"),sectionNumber:JG("entity")("section_number"),spatialEntity:JG("entity")("has_spatial_entity"),ontologyTerms:JG("entity")("has_ontology_term"),cellTypeTerms:JG("entity")("has_cell_type_term"),technology:JG("entity")("technology"),thumbnail:JG("entity")("has_thumbnail")},iW=JG("ccf"),rW={x:iW,ontologyNode:{label:iW("ccf_preferred_label"),parent:iW("ccf_part_of"),children:iW("ccf_part_of"),rui_rank:iW("ccf_rui_rank"),synonymLabels:XG.DataFactory.namedNode("http://www.geneontology.org/formats/oboInOwl#hasExactSynonym")},asctb:{part_of:iW("ccf_part_of"),ct_is_a:iW("ct_is_a"),located_in:iW("located_in"),characterizes:iW("characterizes")},spatial:{Female:iW("VHFemale"),Male:iW("VHMale"),BothSexes:iW("VHBothSexes"),FemaleOrgans:iW("VHFemaleOrgans"),MaleOrgans:iW("VHMaleOrgans")},SpatialObjectReference:iW("SpatialObjectReference"),SpatialEntity:iW("SpatialEntity"),SpatialPlacement:iW("SpatialPlacement"),spatialObjectReference:{file:iW("has_object_file"),file_format:iW("has_object_file_format"),file_subpath:iW("has_object_file_subpath")},extractionSet:{label:tW.label,rui_rank:iW("ccf_rui_rank")},spatialEntity:{label:tW.label,comment:tW.comment,creator:JG("dc")("creator"),creator_first_name:iW("creator_first_name"),creator_last_name:iW("creator_last_name"),creator_orcid:iW("creator_orcid"),creation_date:iW("creation_date"),updated_date:iW("updated_date"),ccf_annotations:iW("ccf_annotation"),representation_of:iW("ccf_representation_of"),reference_organ:iW("anatomical_structure_of"),extraction_set_for:iW("extraction_set_for"),extraction_set:iW("extraction_site_for"),sex:iW("has_sex"),side:iW("has_side"),rui_rank:iW("ccf_rui_rank"),slice_thickness:iW("ccf_slice_thickness"),slice_count:iW("ccf_slice_count"),x_dimension:iW("has_x_dimension"),y_dimension:iW("has_y_dimension"),z_dimension:iW("has_z_dimension"),dimension_units:iW("has_dimension_units"),object:iW("has_object_reference")},spatialPlacement:{source:iW("has_placement_source"),target:iW("has_placement_target"),placement_date:iW("has_placement_date"),x_scaling:iW("has_x_scaling"),y_scaling:iW("has_y_scaling"),z_scaling:iW("has_z_scaling"),scaling_units:iW("has_scaling_units"),x_rotation:iW("has_x_rotation"),y_rotation:iW("has_y_rotation"),z_rotation:iW("has_z_rotation"),w_rotation:iW("has_theta_rotation"),rotation_order:iW("has_rotation_order"),rotation_units:iW("has_rotation_units"),x_translation:iW("has_x_translation"),y_translation:iW("has_y_translation"),z_translation:iW("has_z_translation"),translation_units:iW("has_translation_units")}},oW={x:JG("uberon"),body:JG("uberon")("0013702")},aW={x:JG("cl"),cell:JG("cl")("0000000")},sW={x:JG("fma")},uW=(JG("lmha"),{body:oW.body,cell:aW.cell,respiratory_system:oW.x("0001004"),colon:oW.x("0001155"),left_lung:oW.x("0002168"),right_lung:oW.x("0002167"),left_bronchus:oW.x("0002178"),right_bronchus:oW.x("0002177"),kidney:oW.x("0002113"),ureter:oW.x("0000056"),eye:oW.x("0000970"),fallopian_tube:oW.x("0003889"),knee:oW.x("0001465"),ovary:oW.x("0000992"),trachea:oW.x("0003126"),aorta:oW.x("0000947"),blood:oW.x("0000178"),bone_marrow:oW.x("0002371"),male_reproductive_system:oW.x("0000079"),lymph_node:oW.x("0000029"),blood_vasculature:oW.x("0004537"),brain:oW.x("0000955"),eye_left:oW.x("0004548"),eye_right:sW.x("54449"),fallopian_tube_left:oW.x("0001303"),fallopian_tube_right:oW.x("0001302"),heart:oW.x("0000948"),kidney_left:oW.x("0004538"),kidney_right:oW.x("0004539"),knee_left:sW.x("24978"),knee_right:sW.x("24977"),large_intestine:oW.x("0000059"),liver:oW.x("0002107"),lungs:oW.x("0002048"),mesenteric_lymph_node:oW.x("0002509"),ovary_left:sW.x("7214"),ovary_right:sW.x("7213"),pancreas:oW.x("0001264"),pelvis:oW.x("0001270"),prostate_gland:oW.x("0002367"),skin:oW.x("0002097"),small_intestine:oW.x("0002108"),spleen:oW.x("0002106"),thymus:oW.x("0002370"),ureter_left:oW.x("0001223"),ureter_right:oW.x("0001222"),urinary_bladder:oW.x("0001255"),uterus:oW.x("0000995")});function cW(e){var n={};return Object.entries(e).forEach(function(e){var i=t(e,2),r=i[0],o=i[1];n[o.id]=r}),n}var lW={spatialObjectReference:cW(rW.spatialObjectReference),spatialEntity:cW(rW.spatialEntity),spatialPlacement:cW(rW.spatialPlacement)};function hW(e,t,n,i){var r={"@id":t,"@type":n};return e.some(function(e){var t=i[e.predicate.id];if(t){var n="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;(0,QG.set)(r,t,n)}return!1},XG.DataFactory.namedNode(t),null,null,null),r}var dW=(0,QG.memoize)(function(e,t){return hW(e,t,"SpatialObjectReference",lW.spatialObjectReference)},function(e,t){return t}),fW=(0,QG.memoize)(function(e,t){var n=hW(e,t,"ExtractionSet",lW.spatialEntity);return n.extractionSites=(0,QG.sortBy)(e.getSubjects(rW.spatialEntity.extraction_set,t,null).map(function(t){return mW(e,t.id)}),["rui_rank"]),n},function(e,t){return t}),pW=(0,QG.memoize)(function(e,t){return(0,QG.sortBy)(e.getSubjects(rW.spatialEntity.extraction_set_for,t,null).map(function(t){return fW(e,t.id)}),["rui_rank"])},function(e,t){return t}),vW=(0,QG.memoize)(function(e,t){return(0,QG.sortBy)(e.getSubjects(rW.spatialEntity.reference_organ,t,null).map(function(t){return mW(e,t.id)}).filter(function(e){return e["@id"]!==t}),["rui_rank"])},function(e,t){return t}),gW=(0,QG.memoize)(function(e){var t=[];return e.forEach(function(n){n.subject.id===n.object.id&&t.push(mW(e,n.subject.id))},null,rW.spatialEntity.reference_organ,null,null),(0,QG.sortBy)(t,["rui_rank"])}),mW=(0,QG.memoize)(function(e,t){var n=hW(e,t,"SpatialEntity",lW.spatialEntity);return n.object&&(n.object=dW(e,n.object)),n.ccf_annotations&&(n.ccf_annotations=e.getObjects(t,rW.spatialEntity.ccf_annotations,null).map(function(e){return e.id})),e.forSubjects(function(e){return n.entityId=e.id},nW.spatialEntity,t,null),n},function(e,t){return t}),yW=(0,QG.memoize)(function(e,t){var n=hW(e,t,"SpatialPlacement",lW.spatialPlacement);return n.source&&(n.source=mW(e,n.source)),n.target&&(n.target=mW(e,n.target)),n},function(e,t){return t}),bW=(0,QG.memoize)(function(e,t){var n=e.getObjects(XG.DataFactory.namedNode(t),nW.spatialEntity,null);if(n.length>0)return mW(e,n[0].id)},function(e,t){return t});function _W(e,t){var n,i=t;switch(i.translation_units){case"centimeter":n=.01;break;case"millimeter":n=.001;break;case"meter":default:n=1}var r=[i.x_translation,i.y_translation,i.z_translation].map(function(e){return e*n}),o=[i.x_rotation,i.y_rotation,i.z_rotation].map(Hx),a=[i.x_scaling,i.y_scaling,i.z_scaling];return e.translate(r).rotateXYZ(o).scale(a)}var wW=function(){function e(t){m(this,e),this.db=t,this.createGraph()}return b(e,[{key:"createGraph",value:function(){var e=this;this.graph=new YG.DirectedGraph;var t=this.db.store;t.forSubjects(function(t){e.addNode(t.id,"SpatialObjectReference")},eW.type,rW.SpatialObjectReference,null),t.forSubjects(function(t){e.addNode(t.id,"SpatialEntity")},eW.type,rW.SpatialEntity,null);var n={};t.some(function(e){return n[e.subject.id]=e.object.id,!1},null,rW.spatialPlacement.source,null,null),t.some(function(t){var i=n[t.subject.id];return i&&e.addEdge(t.subject.id,i,t.object.id,"SpatialPlacement"),!1},null,rW.spatialPlacement.target,null,null)}},{key:"addNode",value:function(e,t){this.graph.mergeNode(e,{type:t})}},{key:"addEdge",value:function(e,t,n,i){this.graph.mergeDirectedEdge(t,n,{type:i,id:e})}},{key:"getTransformationMatrix",value:function(e,t){if(e===t)return new SO(SO.IDENTITY);if(this.graph.hasNode(e)&&this.graph.hasNode(t)){var n=this.db.store,i=new SO(SO.IDENTITY),r=$G()(this.graph,e,t);if(r&&r.length>0){r.reverse();var o,a="",s=_(r);try{for(s.s();!(o=s.n()).done;){var u=o.value;if(a){var c=this.graph.getEdgeAttribute(u,a,"id");_W(i,yW(n,c))}a=u}}catch(l){s.e(l)}finally{s.f()}return i}}}}]),e}(),kW=function(){function e(t){m(this,e),this.db=t}return b(e,[{key:"getSpatialEntity",value:function(e){return mW(this.db.store,e)}},{key:"getExtractionSets",value:function(e){return pW(this.db.store,e)}},{key:"getExtractionSet",value:function(e){return fW(this.db.store,e)}},{key:"getAnatomicalStructures",value:function(e){return vW(this.db.store,e)}},{key:"getReferenceOrgans",value:function(){return gW(this.db.store)}},{key:"getReferenceBody",value:function(e){var t;switch(null==e?void 0:e.sex){case"Male":t=rW.spatial.Male.id;break;case"Female":t=rW.spatial.Female.id;break;case"Both":default:t=rW.spatial.BothSexes.id}return this.getSpatialEntity(t)}},{key:"getReferenceOrganSets",value:function(e){var n=this,i=this.getReferenceOrgans();switch(null==e?void 0:e.sex){case"Male":i=i.filter(function(e){return"Male"===e.sex});break;case"Female":i=i.filter(function(e){return"Female"===e.sex})}return(null==e?void 0:e.debug)&&(i=i.map(function(e){return[[e],n.getAnatomicalStructures(e["@id"])]}).reduce(function(e,n){var i=t(n,2),r=i[0],o=i[1];return e.concat(o.length>0?o:r)},[])),i}},{key:"getReferenceSceneNodes",value:function(e){var t=this,n=this.getReferenceBody(e),i=[],r=v(this.getReferenceOrganSets(e).map(function(e){var r="http://purl.obolibrary.org/obo/UBERON_0002097"===e.representation_of,o=t.getSceneNode(e,n,{color:[255,255,255,255],opacity:r?.5:.2,unpickable:!0,_lighting:"pbr",zoomBasedOpacity:!r});return r&&o?void i.push(o):o}));return i.length>0&&(r=[].concat(i,v(r))),(null==e?void 0:e.debug)&&(r=r.concat([this.getSceneNode(this.getSpatialEntity(rW.x("VHRightKidney").id),n,{color:[0,0,255,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHLeftKidney").id),n,{color:[255,0,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHSpleenCC1").id),n,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHSpleenCC2").id),n,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHSpleenCC3").id),n,{color:[0,255,0,127.5],wireframe:!0})])),r.filter(function(e){return void 0!==e})}},{key:"getReferenceOrganScene",value:function(e,t){var n,i,r=this,o=null!==(n=void 0!==(null==t?void 0:t.sex))&&void 0!==n&&n,a=this.getReferenceOrgans().filter(function(n){return n.representation_of===e&&(!o||n.sex===(null==t?void 0:t.sex))});if(a.length>0){var s=a[0],u=this.getSceneNode(s,s,{color:[255,255,255,255],opacity:"http://purl.obolibrary.org/obo/UBERON_0002097"===s.representation_of?.5:.2,unpickable:!0,_lighting:"pbr"}),c=(null!==(i=this.db.getSpatialEntities(t))&&void 0!==i?i:[]).map(function(e){return r.getSceneNode(e,s,{color:[255,255,255,229.5]})});return[u].concat(c).filter(function(e){return void 0!==e})}return[]}},{key:"getEntitySceneNodes",value:function(e){var t=this,n=this.getReferenceBody(e);return this.db.getSpatialEntities(e).map(function(e){return t.getSceneNode(e,n,{color:[255,255,255,229.5]})}).filter(function(e){return void 0!==e})}},{key:"getSceneNode",value:function(e,t){var n,i,r,o,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=null===(i=null===(n=null==e?void 0:e.object)||void 0===n?void 0:n.file_format)||void 0===i?void 0:i.startsWith("model/gltf"),u=this.db.graph.getTransformationMatrix(s&&e.object?e.object["@id"]:e["@id"],t["@id"]);if(u){if(s)u=new SO(SO.IDENTITY).rotateX(Hx(90)).multiplyLeft(u);else{var c;switch(e.dimension_units){case"centimeter":c=.01;break;case"millimeter":c=.001;break;case"meter":default:c=1}var l=[e.x_dimension,e.y_dimension,e.z_dimension].map(function(e){return e*c/2});u.scale(l)}return Object.assign({"@id":e["@id"],"@type":"SpatialSceneNode",entityId:e.entityId,ccf_annotations:e.ccf_annotations,representation_of:e.representation_of,reference_organ:e.reference_organ,scenegraph:s?null===(r=e.object)||void 0===r?void 0:r.file:void 0,scenegraphNode:s?null===(o=e.object)||void 0===o?void 0:o.file_subpath:void 0,transformMatrix:u,tooltip:e.label},a)}}},{key:"getScene",value:function(e){return[].concat(v(this.getReferenceSceneNodes(e)),v(this.getEntitySceneNodes(e)))}}]),e}(),xW="https://entity.api.hubmapconsortium.org/entities/",SW=new Set(["VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0009-LK-102-7-AF_preIMS_registered_thumbnail.jpg","VAN0009-LK-102-7-IMS_NegMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-IMS_PosMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-PAS_registered_thumbnail.jpg","VAN0010-LK-155-40-AF_preIMS_registered_thumbnail.jpg","VAN0010-LK-155-40-IMS_NegMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-IMS_PosMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-PAS_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg","VAN0013-LK-202-96-AF_preIMS_registered_thumbnail.jpg","VAN0013-LK-202-96-IMS_NegMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-IMS_PosMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-PAS_registered_thumbnail.jpg","VAN0013-LK-202-97-AF_preMxIF_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc1_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc2_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc3_registered_thumbnail.jpg","VAN0014-LK-203-108-AF_preIMS_registered_thumbnail.jpg","VAN0014-LK-203-108-IMS_NegMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-IMS_PosMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-PAS_registered_thumbnail.jpg","VAN0016-LK-202-89-AF_preIMS_registered_thumbnail.jpg","VAN0016-LK-202-89-IMS_NegMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-IMS_PosMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-PAS_registered_thumbnail.jpg","VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg"]),EW={"HBM558.SRZG.629":"HBM558.SRZG.629_UFL0002-SP-3-4-1.jpg","HBM562.NTMH.548":"HBM562.NTMH.548_UFL0006-SP-1-2-1.jpg","HBM685.KHRQ.684":"HBM685.KHRQ.684_UFL0008-LY07-1-1.jpg","HBM278.SFQW.627":"HBM278.SFQW.627_UFL0008-LY09-1-1.jpg","HBM427.SMGB.866":"HBM427.SMGB.866_UFL0004-SP-1-4-1.jpg","HBM432.LLCF.677":"HBM432.LLCF.677_UFL0001-SP-2-5-1.jpg","HBM586.ZSVS.996":"HBM586.ZSVS.996_UFL0008-SP-1-1-1.jpg","HBM285.XMBT.542":"HBM285.XMBT.542_UFL0006-TH-1-3-1.jpg","HBM289.BWJW.663":"HBM289.BWJW.663_UFL0006-TH-1-2-1.jpg","HBM255.SRPR.985":"HBM255.SRPR.985_UFL0005-TH-2-2-1.jpg","HBM799.WXHD.535":"HBM799.WXHD.535_UFL0009-LY02-1-1.jpg","HBM294.RZFN.624":"HBM294.RZFN.624_UFL0005-TH-1-1-1.jpg","HBM383.TRQG.424":"HBM383.TRQG.424_UFL0006-SP-1-3-1.jpg","HBM647.MFQB.496":"HBM647.MFQB.496_UFL0001-SP-1-2-1.jpg","HBM237.GGPR.739":"HBM237.GGPR.739_UFL0006-LY01-1-1.jpg","HBM288.TPBD.654":"HBM288.TPBD.654_UFL0003-SP-2-2-1.jpg","HBM974.NDXT.675":"HBM974.NDXT.675_UFL0008-TH-2-2-1.jpg","HBM589.SLVV.423":"HBM589.SLVV.423_UFL0008-LY10-1-1.jpg","HBM794.RLFN.358":"HBM794.RLFN.358_UFL0006-LY03-1-1.jpg","HBM372.BQSR.778":"HBM372.BQSR.778_UFL0007-SP-1-1-1.jpg","HBM499.TKDW.458":"HBM499.TKDW.458_UFL0009-LY03-1-1.jpg","HBM342.PRQB.739":"HBM342.PRQB.739_UFL0003-LY06-1-1.jpg","HBM633.CLVN.674":"HBM633.CLVN.674_UFL0003-SP-3-6-1.jpg","HBM343.JQKM.578":"HBM343.JQKM.578_UFL0009-LY01-1-1.jpg","HBM987.XGTH.368":"HBM987.XGTH.368_UFL0002-SP-2-4-1.jpg","HBM964.CWCP.788":"HBM964.CWCP.788_UFL0006-LY02-2-1.jpg","HBM244.TJLK.223":"HBM244.TJLK.223_UFL0003-SP-1-4-1.jpg","HBM646.FSBQ.966":"HBM646.FSBQ.966_UFL0007-SP-2-2-1.jpg","HBM572.GXSB.234":"HBM572.GXSB.234_UFL0003-SP-3-2-1.jpg","HBM772.TKGJ.794":"HBM772.TKGJ.794_UFL0008-SP-2-1-1.jpg","HBM239.CBWR.263":"HBM239.CBWR.263_UFL0008-SP-1-2-1.jpg","HBM992.NRTT.383":"HBM992.NRTT.383_UFL0006-SP-1-1-1.jpg","HBM283.DQXD.546":"HBM283.DQXD.546_UFL0003-SP-1-2-1.jpg","HBM795.JHND.856":"HBM795.JHND.856_UFL0007-SP-1-2-1.jpg","HBM267.BZKT.867":"HBM267.BZKT.867_UFL0003-SP-2-6-1.jpg","HBM838.DLMJ.782":"HBM838.DLMJ.782_UFL0008-TH-1-1-1.jpg","HBM337.FSXL.564":"HBM337.FSXL.564_UFL0001-SP-3-8-2.jpg","HBM355.JDLK.244":"HBM355.JDLK.244_UFL0004-SP-2-4-1.jpg","HBM599.PSZG.737":"HBM599.PSZG.737_UFL0006-LY02-1-1.jpg"},CW={"03b3d854-ed44-11e8-8bce-0e368f3075e8":"TMC-UCSD","07a29e4c-ed43-11e8-b56a-0e8017bdda58":"TMC-Florida","308f5ffc-ed43-11e8-b56a-0e8017bdda58":"TMC-CalTech","5bd084c8-edc2-11e8-802f-0e368f3075e8":"HBM-TestingGroup","73bb26e4-ed43-11e8-8f19-0a7c1eab007a":"TMC-Vanderbilt","def5fd76-ed43-11e8-b56a-0e8017bdda58":"TMC-Stanford","5c106f29-ea2d-11e9-85e8-0efb3ba9a670":"RTI-General Electric"},OW=function(){var e={};return Object.entries(uW).forEach(function(n){var i=t(n,2),r=i[0],o=i[1];return e[r]=o.id}),e}(),TW={AO:[OW.body,OW.heart,OW.aorta],BL:[OW.body,OW.urinary_bladder],BD:[OW.body,OW.pelvis,OW.blood],BM:[OW.body,OW.pelvis,OW.bone_marrow],BR:[OW.body,OW.brain],LB:[OW.body,OW.respiratory_system,OW.lungs,OW.left_bronchus],RB:[OW.body,OW.respiratory_system,OW.lungs,OW.right_bronchus],LE:[OW.body,OW.eye,OW.eye_left],RE:[OW.body,OW.eye,OW.eye_right],LF:[OW.body,OW.fallopian_tube,OW.fallopian_tube_left],RF:[OW.body,OW.fallopian_tube,OW.fallopian_tube_right],HT:[OW.body,OW.heart],LK:[OW.body,OW.kidney,OW.kidney_left],RK:[OW.body,OW.kidney,OW.kidney_right],LI:[OW.body,OW.large_intestine,OW.colon],LV:[OW.body,OW.liver],LL:[OW.body,OW.respiratory_system,OW.lungs,OW.left_lung],LN:[OW.body,OW.knee,OW.knee_left],RL:[OW.body,OW.respiratory_system,OW.lungs,OW.right_lung],RN:[OW.body,OW.knee,OW.knee_right],LY:[OW.body,OW.lymph_node,OW.mesenteric_lymph_node],LO:[OW.body,OW.ovary,OW.ovary_left],RO:[OW.body,OW.ovary,OW.ovary_right],PA:[OW.body,OW.pancreas],PL:[OW.body],SI:[OW.body,OW.small_intestine],SK:[OW.body,OW.skin],SP:[OW.body,OW.spleen],ST:[OW.body],TH:[OW.body,OW.thymus],TR:[OW.body,OW.respiratory_system,OW.lungs,OW.trachea],UR:[OW.body,OW.ureter],UT:[OW.body,OW.uterus],OT:[OW.body]},AW={"@base":"http://purl.org/ccf/latest/ccf-entity.owl#","@vocab":"http://purl.org/ccf/latest/ccf-entity.owl#",ccf:"http://purl.org/ccf/latest/ccf.owl#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",label:"rdfs:label",description:"rdfs:comment",link:{"@id":"rdfs:seeAlso","@type":"@id"},samples:{"@reverse":"has_donor"},sections:{"@id":"has_tissue_section","@type":"@id"},datasets:{"@id":"has_dataset","@type":"@id"},rui_location:{"@id":"has_spatial_entity","@type":"@id"},ontologyTerms:{"@id":"has_ontology_term","@type":"@id"},cellTypeTerms:{"@id":"has_cell_type_term","@type":"@id"},thumbnail:{"@id":"has_thumbnail"}},PW=function(){function e(t){var n,i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",a=arguments.length>3?arguments[3]:void 0;if(m(this,e),this.data=t,this.bad=!1,this["@type"]="Sample",this.sample_type="Tissue Block","Sample"===this.data.entity_type){var s=this.data.descendants||[],u=(this.data.ancestors||[]).find(function(e){return"Donor"===e.entity_type});this.donor=this.getDonor(u,o);var c=this.getRuiLocation(t,this.donor);c?this.rui_location=c:this.bad=!0,CW[t.group_uuid]||(CW[t.group_uuid]=t.group_name);var l=new Date(t.last_modified_timestamp).toLocaleDateString(),h=CW[t.group_uuid]||t.group_name,d=t.created_by_user_displayname;this["@id"]=xW+t.uuid,this.label="Registered ".concat(l,", ").concat(d,", ").concat(h),this.link="".concat(o,"browse/sample/").concat(t.uuid);var f={},p=[];this.sections=p;var v=[];this.datasets=v;var g,y=_(s.filter(function(e){return"Sample"===e.entity_type}));try{for(y.s();!(g=y.n()).done;){var b=g.value,w=this.getSection(b,t,o);f[b.submission_id]=w,p.push(w),w.section_number=null!==(n=w.section_number)&&void 0!==n?n:p.length}}catch(M){y.e(M)}finally{y.f()}var k,x=_(s);try{for(x.s();!(k=x.n()).done;){var S=k.value;if("Dataset"===S.entity_type){var E=this.getDataset(S,r,o,a),C=(0,QG.get)(S,["ingest_metadata","metadata","tissue_id"]);f[C]?null===(i=f[C].datasets)||void 0===i||i.push(E):v.push(E)}}}catch(M){x.e(M)}finally{x.f()}var O=null!=c?c:{},T="".concat(O.x_dimension," x ").concat(O.y_dimension," x ").concat(O.z_dimension," ").concat(O.dimension_units);this.section_count=O.slice_count||p.length;var A=parseFloat((O.slice_thickness||(O.z_dimension||0)/Math.max(this.section_count,1)).toFixed(1));this.section_size=A;var P=O.dimension_units||"millimeter";this.section_units=P,this.description="".concat(T,", ").concat(A," ").concat(P,", ").concat(t.specimen_type,", ").concat(this.section_count," Sections"),p.forEach(function(e,t){e.description="".concat(O.x_dimension," x ").concat(O.y_dimension," x ").concat(A," ").concat(P,", ").concat(A," ").concat(P,", ").concat(e.description),e.section_number=t+1})}else this.bad=!0}return b(e,[{key:"getSection",value:function(e,t,n){var i=new Date(e.last_modified_timestamp).toLocaleDateString();return{"@id":xW+e.uuid,"@type":"Sample",label:"Registered ".concat(i,", ").concat(e.created_by_user_displayname,", ").concat(CW[e.group_uuid]||e.group_name),description:"".concat(t.specimen_type),link:"".concat(n,"browse/sample/").concat(e.uuid),sample_type:"Tissue Section",section_number:1,samples:[],datasets:[]}}},{key:"getDataset",value:function(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",o=arguments.length>3?arguments[3]:void 0,a=new Date(e.last_modified_timestamp).toLocaleDateString(),s=CW[e.group_uuid]||e.group_name,u=e.created_by_user_displayname,c=[].concat(v(e.data_types),[(0,QG.get)(e,["ingest_metadata","metadata","assay_type"],"")]),l=c.join("|").toLowerCase(),h="assets/icons/ico-unknown.svg";return-1!==l.indexOf("10x")?(n="10x",h="assets/icons/ico-bulk-10x.svg"):-1!==l.indexOf("af")?(n="AF",h="assets/icons/ico-spatial-af.svg"):-1!==l.indexOf("codex")?(n="CODEX",h="assets/icons/ico-spatial-codex.svg"):-1!==l.indexOf("imc")?(n="IMC",h="assets/icons/ico-spatial-imc.svg"):-1!==l.indexOf("lc")&&-1===l.indexOf("af")?(n="LC",h="assets/icons/ico-bulk-lc.svg"):n=-1!==l.indexOf("maldi")?"MALDI":-1!==l.indexOf("pas")?"PAS":"OTHER",h=null!==(t=this.getDatasetThumbnail(e,i,o))&&void 0!==t?t:h,{"@id":xW+e.uuid,"@type":"Dataset",label:"Registered ".concat(a,", ").concat(u,", ").concat(s),description:"Data/Assay Types: ".concat(c.join(", ")),link:"".concat(r,"browse/dataset/").concat(e.uuid),technology:n,thumbnail:h}}},{key:"getDatasetThumbnail",value:function(e,t,n){if(e.thumbnail_file){var i=e.thumbnail_file;return"".concat(t,"/").concat(i.file_uuid,"/").concat(i.filename)+(n?"?token=".concat(n):"")}if("73bb26e4-ed43-11e8-8f19-0a7c1eab007a"===e.group_uuid){var r=(0,QG.get)(e,"metadata.files",[]).filter(function(e){return/\.(ome\.tif|ome\.tiff)$/.test(e.rel_path)}).filter(function(e){return!/(multilayer\.ome\.tif|_ac\.ome\.tif)/.test(e.rel_path)}).filter(function(e){return SW.has(e.rel_path.split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg"))}).map(function(i){return"".concat(t,"/").concat(e.uuid,"/").concat(i.rel_path)+(n?"?token=".concat(n):"")});if(r.length>0){var o=r[0].split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg");if(SW.has(o))return"assets/thumbnails/TMC-Vanderbilt/DR1/".concat(o)}}else if("07a29e4c-ed43-11e8-b56a-0e8017bdda58"===e.group_uuid){var a=EW[e.hubmap_id];if(a)return"assets/thumbnails/TMC-Florida/".concat(a)}}},{key:"getDonor",value:function(e,t){var n,i=(e.description||"").toLowerCase();i.includes("female")?n="Female":i.includes("male")&&(n="Male");var r,o,a=i.match(/age ([0-9]+)/);a&&(r=(0,QG.toNumber)(a[1]));var s,u=_((0,QG.get)(e,"metadata.organ_donor_data",[]));try{for(u.s();!(s=u.n()).done;){var c=s.value;"Feminine gender"===c.preferred_term||"Female"===c.preferred_term?n="Female":"Masculine gender"===c.preferred_term||"Male"===c.preferred_term?n="Male":"Current chronological age"===c.preferred_term||"Age"===c.preferred_term?r=(0,QG.toNumber)(c.data_value):"Body mass index"===c.preferred_term&&(o=(0,QG.toNumber)(c.data_value))}}catch(f){u.e(f)}finally{u.f()}var l="";n&&r&&(l+="".concat(n,", Age ").concat(r),o&&(l+=", BMI ".concat(o.toFixed(1))));var h=new Date(e.last_modified_timestamp).toLocaleDateString(),d=CW[e.group_uuid]||e.group_name;return{"@id":xW+e.uuid,"@type":"Donor",label:l,description:"Entered ".concat(h,", ").concat(e.created_by_user_displayname,", ").concat(d),link:"".concat(t,"browse/donor/").concat(e.uuid),age:r,sex:n,bmi:o,consortium_name:"HuBMAP",provider_name:d,provider_uuid:e.group_uuid,samples:[]}}},{key:"getRuiLocation",value:function(e,t){var n,i,r=(e.ancestors||[]).find(function(e){return"Sample"===e.entity_type&&"organ"===e.specimen_type}),o=TW[null==r?void 0:r.organ]||[OW.body],a=e.rui_location;if(a&&("string"==typeof a&&(a=JSON.parse(a)),a.alignment_id?console.log("Detected a deprecated rui_location",e.uuid):a["@id"]&&(i=a)),i){i.ccf_annotations=o.concat(i.ccf_annotations||[]);var s=null!==(n=(0,QG.get)(i,["placement","target"]))&&void 0!==n?n:"";s.startsWith("http://purl.org/ccf/latest/ccf.owl#VHSpleenCC")&&(0,QG.set)(i,["placement","target"],s.replace("#VHSpleenCC","Male"===t.sex?"#VHMSpleenCC":"#VHFSpleenCC")),("http://purl.org/ccf/latest/ccf.owl#VHLeftKidney"===s||"http://purl.org/ccf/latest/ccf.owl#VHRightKidney"===s)&&(0,QG.set)(i,["placement","target"],"Male"===t.sex?s.replace("#VH","#VHM")+"_Patch":s.replace("#VH","#VHF")+"_Patch")}return i}},{key:"getTissueBlock",value:function(){return(0,QG.omit)(Object.assign({},this),["data","bad","donor"])}},{key:"toJsonLd",value:function(){return Object.assign(Object.assign({},this.donor),{samples:[this.getTissueBlock()]})}}]),e}(),MW=["uuid","entity_type","group_uuid","group_name","last_modified_timestamp","created_by_user_displayname","ancestors","descendants","rui_location","specimen_type"],IW={exists:{field:"rui_location"}};function RW(e,t,n){return JSON.stringify({version:!0,from:e,size:t,stored_fields:["*"],script_fields:{},docvalue_fields:[],query:null!=n?n:IW,_source:{includes:MW}})}function DW(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,fetch(e,t);case 3:if(!(i=n.sent).ok){n.next=10;break}return n.next=7,i.json();case 7:n.t0=n.sent,n.next=11;break;case 10:n.t0=void 0;case 11:return n.abrupt("return",n.t0);case 14:return n.prev=14,n.t1=n.catch(0),n.abrupt("return");case 17:case"end":return n.stop()}},n,null,[[0,14]])}))}function NW(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"";return mw(this,void 0,void 0,regeneratorRuntime.mark(function a(){var s;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if("static"!==t){a.next=6;break}return a.next=3,DW(e);case 3:s=a.sent,a.next=11;break;case 6:if(a.t0="search-api"===t,!a.t0){a.next=11;break}return a.next=10,function(e,t,n){return mw(this,void 0,void 0,regeneratorRuntime.mark(function i(){var r,o,a,s,u,c,l,h,d;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return o=function(e){var t=new Headers;return t.append("Content-type","application/json"),e&&t.append("Authorization","Bearer ".concat(e)),t}(t),a=RW(0,50,n),i.next=4,DW(e,{method:"POST",headers:o,body:a});case 4:if(s=i.sent){i.next=7;break}return i.abrupt("return");case 7:if(!((u=s.hits.total.value)<=50)){i.next=10;break}return i.abrupt("return",s);case 10:for(c=[],l=50;l1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=arguments.length>3?arguments[3]:void 0,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],a={},s=(0,QG.get)(e,"hits.hits",[]).map(function(e){return(0,QG.get)(e,"_source",{})}).map(function(e){return new PW(e,n,i,r).toJsonLd()}),u=_(s);try{for(u.s();!(t=u.n()).done;){var c=t.value,l=c["@id"];a[l]?a[l].samples.push(c.samples[0]):a[l]=c}}catch(d){u.e(d)}finally{u.f()}var h=Object.values(a);return o&&(function(e){var t,n=[],i=0,r=_(e.filter(function(e){return e.samples.length>1}));try{for(r.s();!(t=r.n()).done;){for(var o=t.value,a=o.samples,s=function(e){var t=a[e]["@id"];n=n.concat(a[e].datasets);var r,o=_(a[e].sections);try{for(o.s();!(r=o.n()).done;){var s=r.value;n=n.concat(s.datasets)}}catch(d){o.e(d)}finally{o.f()}for(var u=e+1;u0&&console.log("\u26a0 ".concat(i," sections identified as blocks"))}(h),console.log(h.map(function(e){return Object.assign({"@context":AW},e)}))),{"@context":AW,"@graph":h}}(s,r,o,i));case 13:console.warn("Unable to load ".concat(e," as HuBMAP Data"));case 14:case"end":return a.stop()}},a)}))}function LW(e,t,n){var i,r=new Map,o=new Set;e.some(function(e){var n;return t.has(e.subject.id)&&(o.add(e.object.id),r.has(e.object.id)?null===(n=r.get(e.object.id))||void 0===n||n.push(e.subject.id):r.set(e.object.id,[e.subject.id])),!1},null,nW.donor,null,null);var a,s=n(o),u=new Set,c=_(s);try{for(c.s();!(a=c.n()).done;){var l,h=a.value,d=_(null!==(i=r.get(h))&&void 0!==i?i:[]);try{for(d.s();!(l=d.n()).done;){var f=l.value;u.add(f)}}catch(p){d.e(p)}finally{d.f()}}}catch(p){c.e(p)}finally{c.f()}return u}function jW(e,t,n){var i,r=new Map,o=new Set;e.some(function(e){var n;return t.has(e.subject.id)&&(o.add(e.object.id),r.has(e.object.id)?null===(n=r.get(e.object.id))||void 0===n||n.push(e.subject.id):r.set(e.object.id,[e.subject.id])),!1},null,nW.spatialEntity,null,null);var a,s=n(o),u=new Set,c=_(s);try{for(c.s();!(a=c.n()).done;){var l,h=a.value,d=_(null!==(i=r.get(h))&&void 0!==i?i:[]);try{for(d.s();!(l=d.n()).done;){var f=l.value;u.add(f)}}catch(p){d.e(p)}finally{d.f()}}}catch(p){c.e(p)}finally{c.f()}return u}function FW(e,t){return function(n){return e.has(n.id)?t.add(n.id):void 0}}function BW(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value,s=XG.DataFactory.namedNode(a);e.forSubjects(FW(t,r),rW.spatialEntity.ccf_annotations,s,null)}}catch(u){o.e(u)}finally{o.f()}return r}function VW(e,t){var n=function(e,t){var n=new Map;return t.some(function(t){return e.has(t.subject.id)&&(n.has(t.object.id)?n.get(t.object.id).add(t.subject.id):n.set(t.object.id,new Set([t.subject.id]))),!1},null,nW.spatialEntity,null,null),n}(e,t),i=new Map;return t.some(function(e){if(n.has(e.subject.id)){var t=n.get(e.subject.id);if(i.has(e.object.id)){var r=i.get(e.object.id);t.forEach(function(e){return r.add(e)})}else i.set(e.object.id,new Set(t))}return!1},null,rW.spatialEntity.ccf_annotations,null,null),i}function zW(e,t,n){var i,r=XG.DataFactory.namedNode(t),a={"@id":t,"@type":"OntologyTreeNode",id:t,parent:"",children:[],synonymLabels:[],label:""},s=(o(i={},rW.ontologyNode.label.id,"label"),o(i,n,"parent"),o(i,rW.ontologyNode.synonymLabels.id,"synonymLabels"),i);return e.some(function(e){var t=s[e.predicate.id];if(t){var n="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;"synonymLabels"===t?a.synonymLabels.push(n):(0,QG.set)(a,t,n)}return!1},r,null,null,null),a.children=e.getSubjects(n,r,null).map(function(e){return e.id}),a}var UW=(0,QG.memoize)(function(e,t,n,i){var r={root:t,nodes:{}},o=new Set;e.some(function(e){return o.add(e.subject.id),o.add(e.predicate.id),!1},null,i,null,null);var a,s=_(o);try{for(s.s();!(a=s.n()).done;){var u=a.value;r.nodes[u]=zW(e,u,i)}}catch(l){s.e(l)}finally{s.f()}if(!r.nodes[t]){var c=e.getSubjects(i,t,null).map(function(e){return e.id}).sort(function(e,t){return r.nodes[e].label.localeCompare(r.nodes[t].label)});r.nodes[t]={"@id":t,"@type":"OntologyTreeNode",id:t,label:n,children:c,synonymLabels:[]}}return r},function(e,t,n){return t+n}),HW=(o(x={},nW.label.id,"label"),o(x,nW.description.id,"description"),o(x,nW.link.id,"link"),x),GW=Object.assign(Object.assign({},HW),o({},nW.providerName.id,"providerName")),WW=Object.assign(Object.assign({},HW),(o(S={},nW.technology.id,"technology"),o(S,nW.thumbnail.id,"thumbnail"),S)),qW=Object.assign(Object.assign({},HW),(o(E={},nW.sampleType.id,"sampleType"),o(E,nW.sectionNumber.id,"sectionNumber"),o(E,nW.datasets.id,"datasets"),E)),XW=Object.assign(Object.assign({},HW),(o(C={},nW.sampleType.id,"sampleType"),o(C,nW.sectionCount.id,"sectionCount"),o(C,nW.sectionSize.id,"sectionSize"),o(C,nW.sectionUnits.id,"sectionUnits"),o(C,nW.donor.id,"donor"),o(C,nW.spatialEntity.id,"spatialEntityId"),o(C,nW.sections.id,"sections"),o(C,nW.datasets.id,"datasets"),C)),YW=(0,QG.memoize)(function(e,t){var n={"@id":t,"@type":"Donor"};return e.some(function(e){var t=GW[e.predicate.id];if(t){var i="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;(0,QG.set)(n,t,i)}return!1},XG.DataFactory.namedNode(t),null,null,null),n},function(e,t){return t});function KW(e,t){var n={"@id":t,"@type":"Dataset"};return e.some(function(e){var t=WW[e.predicate.id];if(t){var i="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;(0,QG.set)(n,t,i)}return!1},XG.DataFactory.namedNode(t),null,null,null),n}var $W=(0,QG.memoize)(function(e,t){var n={"@id":t,"@type":"Sample",sections:[],datasets:[]};return e.some(function(t){var i=XW[t.predicate.id];if(i){var r="Literal"===t.object.termType?(0,ZG.fromRdf)(t.object):t.object.id;if("sections"===i){var o=function(e,t){var n={"@id":t,"@type":"Sample",datasets:[]};return e.some(function(t){var i=qW[t.predicate.id];if(i){var r="Literal"===t.object.termType?(0,ZG.fromRdf)(t.object):t.object.id;if("datasets"===i){var o=KW(e,r);n[i].push(o)}else(0,QG.set)(n,i,r)}return!1},XG.DataFactory.namedNode(t),null,null,null),n}(e,r);n[i].push(o)}else if("datasets"===i){var a=KW(e,r);n[i].push(a)}else"donor"===i?n[i]=YW(e,r):(0,QG.set)(n,i,r)}return!1},XG.DataFactory.namedNode(t),null,null,null),n},function(e,t){return t}),QW={ccfOwlUrl:"https://purl.org/ccf/latest/ccf.owl",ccfContextUrl:"https://purl.org/ccf/latest/ccf-context.jsonld",dataSources:[],hubmapDataService:"static",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"",hubmapAssetsUrl:"https://assets.hubmapconsortium.org"},ZW=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:QW;m(this,e),this.options=t,this.store=new XG.Store(void 0,{factory:XG.DataFactory}),this.graph=new wW(this),this.scene=new kW(this)}return b(e,[{key:"connect",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e&&(this.options=e),this.initializing||(this.initializing=t?this.cachedConnect():this.doConnect()),n.next=4,this.initializing;case 4:return n.abrupt("return",this.store.size>0);case 5:case"end":return n.stop()}},n,this)}))}},{key:"cachedConnect",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){var t,n,i,r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=(new Date).getTime(),n="ccf-database.last_modified",i="ccf-database",e.next=5,qG(n).catch(function(){});case 5:if(!((r=e.sent)&&t-new Date(+r).getTime()>36e5)){e.next=11;break}return e.next=9,function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:WG();return t("readwrite",function(t){return e.forEach(function(e){return t.delete(e)}),GG(t.transaction)})}([i,n]).catch(function(){});case 9:e.next=14;break;case 11:return e.next=13,qG(i).catch(function(){});case 13:o=e.sent;case 14:if(!o){e.next=19;break}return e.next=17,this.deserialize(o);case 17:e.next=22;break;case 19:return e.next=21,this.doConnect();case 21:(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:WG();return t("readwrite",function(t){return e.forEach(function(e){return t.put(e[1],e[0])}),GG(t.transaction)})})([[i,this.serialize()],[n,""+t]]).catch(function(){});case 22:case"end":return e.stop()}},e,this)}))}},{key:"doConnect",value:function(){var e,t;return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i,r,o,a,s=this;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(i=[],r=null!==(t=null===(e=this.options.dataSources)||void 0===e?void 0:e.concat())&&void 0!==t?t:[],!(o=this.options.ccfOwlUrl).startsWith("{")){n.next=5;break}this.store=(0,XG.deserializeN3Store)(o,XG.DataFactory),n.next=13;break;case 5:if(!o.endsWith(".n3store.json")){n.next=12;break}return n.next=8,fetch(o).then(function(e){return e.text()}).catch(function(){return console.log("Couldn't locate serialized store.")});case 8:(a=n.sent)&&(this.store=(0,XG.deserializeN3Store)(a,XG.DataFactory)),n.next=13;break;case 12:(null==o?void 0:o.length)>0&&r.push(o);case 13:return this.options.hubmapDataUrl&&(this.options.hubmapDataUrl.endsWith("jsonld")?r.push(this.options.hubmapDataUrl):i.push(NW(this.options.hubmapDataUrl,this.options.hubmapDataService,this.options.hubmapQuery,this.options.hubmapToken,this.options.hubmapAssetsUrl,this.options.hubmapPortalUrl).then(function(e){if(e)return s.addDataSources([e])}))),i.push(this.addDataSources(r)),n.next=17,Promise.all(i);case 17:return n.next=19,this.synchronize();case 19:case"end":return n.stop()}},n,this)}))}},{key:"addDataSources",value:function(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i,r=this;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return i=null!=t?t:this.store,n.next=3,Promise.all(e.map(function(e){return mw(r,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if("string"!=typeof e){t.next=20;break}if(!e.endsWith("jsonld")){t.next=6;break}return t.next=4,(0,XG.addJsonLdToStore)(e,i);case 4:t.next=18;break;case 6:if(!e.endsWith("n3")){t.next=11;break}return t.next=9,(0,XG.addN3ToStore)(e,i);case 9:t.next=18;break;case 11:if(!(e.endsWith("rdf")||e.endsWith("owl")||e.endsWith("xml"))){t.next=16;break}return t.next=14,(0,XG.addRdfXmlToStore)(e,i);case 14:t.next=18;break;case 16:return t.next=18,(0,XG.addJsonLdToStore)(e,i);case 18:t.next=22;break;case 20:return t.next=22,(0,XG.addJsonLdToStore)(e,i);case 22:case"end":return t.stop()}},t)}))}));case 3:return n.abrupt("return",this);case 4:case"end":return n.stop()}},n,this)}))}},{key:"synchronize",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise(function(e){setTimeout(e,500)});case 2:return this.graph.createGraph(),e.abrupt("return",this);case 4:case"end":return e.stop()}},e,this)}))}},{key:"serialize",value:function(){return(0,XG.serializeN3Store)(this.store)}},{key:"deserialize",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return this.store=(0,XG.deserializeN3Store)(e,XG.DataFactory),this.graph=new wW(this),this.scene=new kW(this),t.next=5,new Promise(function(e){setTimeout(e,10)});case 5:case"end":return t.stop()}},t,this)}))}},{key:"getIds",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(e,t){var n,i,r,o,a,s,u=function(e){var t=new Set;return e.forSubjects(function(e){return t.add(e.id)},nW.spatialEntity,null,null),t}(e);if(u.size>0&&(u=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=new Set;if(e.forSubjects(FW(t,i),nW.spatialEntity,null,null),!n){var r=new Set;return t.forEach(function(e){return i.has(e)?void 0:r.add(e)}),r}return i}(e,u)),u.size>0&&("Male"===t.sex||"Female"===t.sex)){var c=t.sex;u=LW(e,u,function(t){return function(e,t,n){var i=new Set;return e.forSubjects(FW(t,i),nW.sex,nW[n],null),i}(e,t,c)})}if(u.size>0&&(null===(n=t.tmc)||void 0===n?void 0:n.length)>0&&(u=LW(e,u,function(n){return function(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value,s=XG.DataFactory.literal(a);e.forSubjects(FW(t,r),nW.providerName,s,null)}}catch(u){o.e(u)}finally{o.f()}return r}(e,n,t.tmc)})),u.size>0&&(null===(i=t.technologies)||void 0===i?void 0:i.length)>0&&(u=function(e,t,n){var i,r=new Map,o=new Set,a=new Set;e.some(function(e){return t.has(e.subject.id)&&a.add(e.object.id),!1},null,nW.sections,null,null),e.some(function(e){var n;return(t.has(e.subject.id)||a.has(e.subject.id))&&(o.add(e.object.id),r.has(e.object.id)?null===(n=r.get(e.object.id))||void 0===n||n.push(e.subject.id):r.set(e.object.id,[e.subject.id])),!1},null,nW.datasets,null,null);var s,u=n(o),c=new Set,l=_(u);try{for(l.s();!(s=l.n()).done;){var h,d=s.value,f=_(null!==(i=r.get(d))&&void 0!==i?i:[]);try{for(f.s();!(h=f.n()).done;){var p=h.value;c.add(p)}}catch(v){f.e(v)}finally{f.f()}}}catch(v){l.e(v)}finally{l.f()}return c}(e,u,function(n){return function(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value,s=XG.DataFactory.literal(a);e.forSubjects(FW(t,r),nW.technology,s,null)}}catch(u){o.e(u)}finally{o.f()}return r}(e,n,t.technologies)})),u.size>0&&(null===(r=t.ontologyTerms)||void 0===r?void 0:r.length)>0&&(u=jW(e,u,function(n){return BW(e,n,t.ontologyTerms)})),u.size>0&&(null===(o=t.cellTypeTerms)||void 0===o?void 0:o.length)>0&&(u=jW(e,u,function(n){return function(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value;e.forObjects(function(e){r.add(e.id)},a,rW.asctb.located_in,null),a===uW.cell.id&&r.add(uW.body.id)}}catch(s){o.e(s)}finally{o.f()}return BW(e,t,v(r))}(e,n,t.cellTypeTerms)})),u.size>0&&2===(null===(a=t.ageRange)||void 0===a?void 0:a.length)&&(0,QG.isFinite)(t.ageRange[0])&&(0,QG.isFinite)(t.ageRange[1])){var l=Math.max.apply(Math,v(t.ageRange)),h=Math.min.apply(Math,v(t.ageRange));1===h&&110===l||(u=LW(e,u,function(t){return function(e,t,n,i){var r=new Set;return e.some(function(e){if(t.has(e.subject.id)){var o=(0,ZG.fromRdf)(e.object);o>=n&&o<=i&&r.add(e.subject.id)}return!1},null,nW.age,null,null),r}(e,t,h,l)}))}if(u.size>0&&2===(null===(s=t.bmiRange)||void 0===s?void 0:s.length)&&(0,QG.isFinite)(t.bmiRange[0])&&(0,QG.isFinite)(t.bmiRange[1])){var d=Math.max.apply(Math,v(t.bmiRange)),f=Math.min.apply(Math,v(t.bmiRange));13===f&&83===d||(u=LW(e,u,function(t){return function(e,t,n,i){var r=new Set;return e.some(function(e){if(t.has(e.subject.id)){var o=(0,ZG.fromRdf)(e.object);o>=n&&o<=i&&r.add(e.subject.id)}return!1},null,nW.bmi,null,null),r}(e,t,f,d)}))}return u}(this.store,e)}},{key:"get",value:function(e){return this.store.getQuads(XG.DataFactory.namedNode(e),null,null,null)}},{key:"search",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return v(this.getIds(t)).map(function(t){return e.get(t)})}},{key:"getSpatialEntities",value:function(e){var t=this;return e=Object.assign(Object.assign({},e),{hasSpatialEntity:!0}),v(this.getIds(e)).map(function(e){return bW(t.store,e)})}},{key:"getDatasetTechnologyNames",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){var t=new Set;return e.some(function(e){return t.add(e.object.value),!1},null,nW.technology,null,null),Array.from(t).sort()}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getProviderNames",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){var t=new Set;return e.some(function(e){return t.add(e.object.value),!1},null,nW.providerName,null,null),Array.from(t).sort()}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getTissueBlockResults",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){var n=this;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",(e=Object.assign(Object.assign({},e),{hasSpatialEntity:!0}),v(this.getIds(e)).map(function(e){return $W(n.store,e)})));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getAggregateResults",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",function(e,n){var i=new Set;n.some(function(t){return e.has(t.subject.id)&&i.add(t.object.id),!1},null,nW.donor,null,null);var r=new Set;n.some(function(e){return i.has(e.subject.id)&&r.add(e.object.id),!1},null,nW.providerUUID,null,null);var o=new Set;n.forSubjects(function(t){e.has(t.id)&&o.add(t.id)},nW.spatialEntity,null,null);var a=new Set;n.some(function(e){return o.has(e.subject.id)&&a.add(e.object.id),!1},null,nW.sections,null,null);var s=new Set;return n.some(function(e){var t=e.subject;return(o.has(t.id)||a.has(t.id))&&s.add(e.object.id),!1},null,nW.datasets,null,null),Object.entries({"Tissue Data Providers":r.size,Donors:i.size,"Tissue Blocks":o.size,"Tissue Sections":a.size,"Tissue Datasets":s.size}).map(function(e){var n=t(e,2);return{label:n[0],count:n[1]}})}(this.getIds(e),this.store));case 1:case"end":return n.stop()}},n,this)}))}},{key:"getOntologyTermOccurences",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",function(e,t){var n={};return VW(e,t).forEach(function(e,t){n[t]=e.size}),n}(this.getIds(e),this.store));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getCellTypeTermOccurences",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",function(e,t){var n,i,r=VW(e,t),o=new Map;t.some(function(e){var t=e.object.id;if(r.has(t)){var n=e.subject.id,i=r.get(t);if(o.has(n)){var a=o.get(n);i.forEach(function(e){return a.add(e)})}else o.set(n,new Set(i))}return!1},null,rW.asctb.located_in,null,null);var a={};return o.forEach(function(e,t){a[t]=e.size}),a[uW.cell.id]=null!==(i=null===(n=r.get(uW.body.id))||void 0===n?void 0:n.size)&&void 0!==i?i:0,a}(this.getIds(e),this.store));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getOntologyTreeModel",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){var t=UW(e,uW.body.id,"body",rW.asctb.part_of.id);return t.nodes[uW.body.id].children=["http://purl.obolibrary.org/obo/UBERON_0000955","http://purl.obolibrary.org/obo/UBERON_0000029","http://purl.obolibrary.org/obo/UBERON_0000970","http://purl.obolibrary.org/obo/UBERON_0003889","http://purl.obolibrary.org/obo/UBERON_0000948","http://purl.obolibrary.org/obo/UBERON_0002113","http://purl.obolibrary.org/obo/UBERON_0001465","http://purl.obolibrary.org/obo/UBERON_0002107","http://purl.obolibrary.org/obo/UBERON_0002048","http://purl.obolibrary.org/obo/UBERON_0000992","http://purl.obolibrary.org/obo/UBERON_0001264","http://purl.obolibrary.org/obo/UBERON_0001270","http://purl.obolibrary.org/obo/UBERON_0002367","http://purl.obolibrary.org/obo/UBERON_0002097","http://purl.obolibrary.org/obo/UBERON_0002108","http://purl.obolibrary.org/obo/UBERON_0000059","http://purl.obolibrary.org/obo/UBERON_0002106","http://purl.obolibrary.org/obo/UBERON_0002370","http://purl.obolibrary.org/obo/UBERON_0000056","http://purl.obolibrary.org/obo/UBERON_0001255","http://purl.obolibrary.org/obo/UBERON_0000995","http://purl.obolibrary.org/obo/UBERON_0004537"].filter(function(e){return e in t.nodes}),t}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getCellTypeTreeModel",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){return UW(e,uW.cell.id,"cell",rW.asctb.ct_is_a.id)}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getReferenceOrgans",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.scene.getReferenceOrgans());case 1:case"end":return e.stop()}},e,this)}))}},{key:"getScene",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",(this.graph.createGraph(),this.scene.getScene(e)));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getReferenceOrganScene",value:function(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",(this.graph.createGraph(),this.scene.getReferenceOrganScene(e,t)));case 1:case"end":return n.stop()}},n,this)}))}}]),e}(),JW=Symbol("Comlink.proxy"),eq=Symbol("Comlink.endpoint"),tq=Symbol("Comlink.releaseProxy"),nq=Symbol("Comlink.thrown"),iq=function(e){return"object"==typeof e&&null!==e||"function"==typeof e},rq=new Map([["proxy",{canHandle:function(e){return iq(e)&&e[JW]},serialize:function(e){var t=new MessageChannel,n=t.port1,i=t.port2;return oq(e,n),[i,[i]]},deserialize:function(e){return e.start(),sq(e)}}],["throw",{canHandle:function(e){return iq(e)&&nq in e},serialize:function(e){var t=e.value;return[t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[]]},deserialize:function(e){throw e.isError?Object.assign(new Error(e.value.message),e.value):e.value}}]]);function oq(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:self;n.addEventListener("message",function i(r){if(r&&r.data){var a,s=Object.assign({path:[]},r.data),u=s.id,c=s.type,l=s.path,d=(r.data.argumentList||[]).map(pq);try{var f=l.slice(0,-1).reduce(function(e,t){return e[t]},e),p=l.reduce(function(e,t){return e[t]},e);switch(c){case"GET":a=p;break;case"SET":f[l.slice(-1)[0]]=pq(r.data.value),a=!0;break;case"APPLY":a=p.apply(f,d);break;case"CONSTRUCT":a=function(e){return Object.assign(e,o({},JW,!0))}(h(p,v(d)));break;case"ENDPOINT":var g=new MessageChannel,m=g.port1,y=g.port2;oq(e,y),a=function(e,t){return dq.set(e,t),e}(m,[m]);break;case"RELEASE":a=void 0;break;default:return}}catch(f){a=o({value:f},nq,0)}Promise.resolve(a).catch(function(e){return o({value:e},nq,0)}).then(function(e){var r=t(fq(e),2),o=r[0],a=r[1];n.postMessage(Object.assign(Object.assign({},o),{id:u}),a),"RELEASE"===c&&(n.removeEventListener("message",i),aq(n))})}}),n.start&&n.start()}function aq(e){(function(e){return"MessagePort"===e.constructor.name})(e)&&e.close()}function sq(e,t){return cq(e,[],t)}function uq(e){if(e)throw new Error("Proxy has been released and is not useable")}function cq(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=!1,o=new Proxy(i,{get:function(t,i){if(uq(r),i===tq)return function(){return vq(e,{type:"RELEASE",path:n.map(function(e){return e.toString()})}).then(function(){aq(e),r=!0})};if("then"===i){if(0===n.length)return{then:function(){return o}};var a=vq(e,{type:"GET",path:n.map(function(e){return e.toString()})}).then(pq);return a.then.bind(a)}return cq(e,[].concat(v(n),[i]))},set:function(i,o,a){uq(r);var s=t(fq(a),2),u=s[0],c=s[1];return vq(e,{type:"SET",path:[].concat(v(n),[o]).map(function(e){return e.toString()}),value:u},c).then(pq)},apply:function(i,o,a){uq(r);var s=n[n.length-1];if(s===eq)return vq(e,{type:"ENDPOINT"}).then(pq);if("bind"===s)return cq(e,n.slice(0,-1));var u=t(hq(a),2),c=u[0],l=u[1];return vq(e,{type:"APPLY",path:n.map(function(e){return e.toString()}),argumentList:c},l).then(pq)},construct:function(i,o){uq(r);var a=t(hq(o),2),s=a[0],u=a[1];return vq(e,{type:"CONSTRUCT",path:n.map(function(e){return e.toString()}),argumentList:s},u).then(pq)}});return o}function lq(e){return Array.prototype.concat.apply([],e)}function hq(e){var t=e.map(fq);return[t.map(function(e){return e[0]}),lq(t.map(function(e){return e[1]}))]}var dq=new WeakMap;function fq(e){var n,i=_(rq);try{for(i.s();!(n=i.n()).done;){var r=t(n.value,2),o=r[0],a=r[1];if(a.canHandle(e)){var s=t(a.serialize(e),2);return[{type:"HANDLER",name:o,value:s[0]},s[1]]}}}catch(u){i.e(u)}finally{i.f()}return[{type:"RAW",value:e},dq.get(e)||[]]}function pq(e){switch(e.type){case"HANDLER":return rq.get(e.name).deserialize(e.value);case"RAW":return e.value}}function vq(e,t,n){return new Promise(function(i){var r=new Array(4).fill(0).map(function(){return Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)}).join("-");e.addEventListener("message",function t(n){!n.data||!n.data.id||n.data.id!==r||(e.removeEventListener("message",t),i(n.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:r},t),n)})}var gq=["bodyCanvas"],mq=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-body-ui",this.rotationChange=new Qc,this.nodeDrag=new Qc,this.nodeClick=new Qc,this.nodeHoverStart=new Qc,this.nodeHoverStop=new Qc,this.initialized=new Qc,this._interactive=!0,this._rotation=0,this._rotationX=0,this._zoom=9.5,this._target=[0,0,0],this._scene=[],this.subscriptions=[]}return b(e,[{key:"scene",get:function(){return this._scene},set:function(e){var t;this._scene=e,null===(t=this.bodyUI)||void 0===t||t.setScene(e)}},{key:"rotation",get:function(){return this._rotation},set:function(e){var t;this._rotation=e,null===(t=this.bodyUI)||void 0===t||t.setRotation(e)}},{key:"rotationX",get:function(){return this._rotationX},set:function(e){var t;this._rotationX=e,null===(t=this.bodyUI)||void 0===t||t.setRotationX(e)}},{key:"zoom",get:function(){return this._zoom},set:function(e){var t;this._zoom=e,null===(t=this.bodyUI)||void 0===t||t.setZoom(e)}},{key:"target",get:function(){return this._target},set:function(e){var t;this._target=e,null===(t=this.bodyUI)||void 0===t||t.setTarget(e)}},{key:"bounds",get:function(){return this._bounds},set:function(e){this._bounds=e,this.zoomToBounds(e)}},{key:"camera",get:function(){return this._camera},set:function(e){this._camera=e}},{key:"interactive",get:function(){return this._interactive},set:function(e){this._interactive=e,this.bodyUI&&this.recreateBodyUI()}},{key:"ngAfterViewInit",value:function(){this.setupBodyUI()}},{key:"zoomToBounds",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{x:48,y:48};if(this.bodyCanvas){var n=this.bodyCanvas.nativeElement,i=n.width,r=n.height,o=window.devicePixelRatio,a=Math.min(Math.log2((i-t.x)/o/e.x),Math.log2((r-t.y)/o/e.y));this.zoom=a}}},{key:"setupBodyUI",value:function(){var e;return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){var n,i,r=this;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=this.bodyCanvas.nativeElement,i=new NF({id:"body-ui",canvas:n,zoom:this.zoom,target:[0,0,0],rotation:0,minRotationX:-75,maxRotationX:75,interactive:this.interactive,camera:this.camera}),n.addEventListener("contextmenu",function(e){return e.preventDefault()}),t.next=4,i.initialize();case 4:this.bodyUI=i,window.bodyUI=i,(null===(e=this.scene)||void 0===e?void 0:e.length)>0&&this.bodyUI.setScene(this.scene),this.bounds&&this.zoomToBounds(this.bounds),this.subscriptions=[this.bodyUI.sceneRotation$.subscribe(function(e){return r.rotationChange.next(e)}),this.bodyUI.nodeDrag$.subscribe(function(e){return r.nodeDrag.emit(e)}),this.bodyUI.nodeClick$.subscribe(function(e){return r.nodeClick.emit(e)}),this.bodyUI.nodeHoverStart$.subscribe(function(e){return r.nodeHoverStart.emit(e)}),this.bodyUI.nodeHoverStop$.subscribe(function(e){return r.nodeHoverStop.emit(e)})],this.initialized.emit();case 10:case"end":return t.stop()}},t,this)}))}},{key:"recreateBodyUI",value:function(){this.clearSubscriptions(),this.bodyUI.finalize(),this.setupBodyUI()}},{key:"clearSubscriptions",value:function(){this.subscriptions.forEach(function(e){return e.unsubscribe()}),this.subscriptions=[]}},{key:"ngOnDestroy",value:function(){this.clearSubscriptions()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-body-ui"]],viewQuery:function(e,t){var n;(1&e&&ll(gq,5,Yu),2&e)&&(cl(n=dl())&&(t.bodyCanvas=n.first))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{scene:"scene",rotation:"rotation",rotationX:"rotationX",zoom:"zoom",target:"target",bounds:"bounds",camera:"camera",interactive:"interactive"},outputs:{rotationChange:"rotationChange",nodeDrag:"nodeDrag",nodeClick:"nodeClick",nodeHoverStart:"nodeHoverStart",nodeHoverStop:"nodeHoverStop",initialized:"initialized"},decls:2,vars:0,consts:[[1,"body-ui"],["bodyCanvas",""]],template:function(e,t){1&e&&As(0,"canvas",0,1)},styles:["[_nghost-%COMP%]{height:100%;display:block}[_nghost-%COMP%] .body-ui[_ngcontent-%COMP%]{position:relative!important;background-color:#000;border-radius:.5rem}"]}),e}(),yq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}();new Pi("Maximum number of autocomplete options displayed",{providedIn:"root",factory:function(){return 10}});var bq=["carouselContainer"],_q=["itemlist"],wq=["itemcontainer"];function kq(e,t){if(1&e){var n=Rs();Os(0,"mat-icon",9),js("touchstart",function(){return gn(n),Us().scroll("left")})("touchend",function(){return gn(n),Us().stopScroll()})("click",function(){return gn(n),Us().shift("left")})("mousedown",function(){return gn(n),Us().scroll("left")})("mouseup",function(){return gn(n),Us().stopScroll()}),wu(1,"chevron_left"),Ts()}2&e&&au("disabled",Us().onLeft)}function xq(e,t){if(1&e&&(Os(0,"div",15),wu(1),Ts()),2&e){var n=Us().$implicit,i=Us();Wo(1),ku(i.occurenceData[n.id]||0)}}function Sq(e,t){if(1&e){var n=Rs();Os(0,"div",10),js("click",function(){var e=gn(n).$implicit;return Us().selectOrgan(e)}),As(1,"mat-icon",11),Os(2,"div",12),Os(3,"div",13),wu(4),Ts(),ks(5,xq,2,1,"div",14),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us();au("disabled",i.disabled)("selected",r.isSelected(i)),Wo(1),qs("svgIcon",i.src),Wo(3),ku(i.name),Wo(1),Es("ngIf",void 0!==i.numResults)}}function Eq(e,t){if(1&e){var n=Rs();Os(0,"mat-icon",16),js("touchstart",function(){return gn(n),Us().scroll("right")})("touchend",function(){return gn(n),Us().stopScroll()})("click",function(){return gn(n),Us().shift("right")})("mousedown",function(){return gn(n),Us().scroll("right")})("mouseup",function(){return gn(n),Us().stopScroll()}),wu(1,"chevron_right"),Ts()}2&e&&au("disabled",Us().onRight)}var Cq=[{src:"app:skin",organ:"Skin",name:"Skin",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002097"},{src:"app:brain",organ:"Brain",name:"Brain",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000955"},{disabled:!0,src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000029"},{src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002509"},{disabled:!0,src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000970"},{src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004548"},{src:"app:eye",organ:"Eye",name:"Eye, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_54449"},{disabled:!0,src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0003889"},{src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001303"},{src:"app:fallopian-tube-right",organ:"Fallopian Tube",name:"Fallopian Tube, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001302"},{src:"app:heart",organ:"Heart",name:"Heart",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000948"},{disabled:!0,src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002113"},{src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004538"},{src:"app:kidney-right",organ:"Kidney",name:"Kidney, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004539"},{disabled:!0,src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001465"},{src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24978"},{src:"app:knee",organ:"Knee",name:"Knee, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24977"},{src:"app:liver",organ:"Liver",name:"Liver",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002107"},{disabled:!0,src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002048"},{src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001004"},{disabled:!0,src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000992"},{src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7214"},{src:"app:ovary-right",organ:"Ovary",name:"Ovary, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7213"},{src:"app:pancreas",organ:"Pancreas",name:"Pancreas",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001264"},{src:"app:pelvis-f",organ:"Pelvis",name:"Pelvis",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001270"},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0002367",disabled:!0},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0000079"},{src:"app:small-intestine",organ:"Small Intestine",name:"Small Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002108"},{src:"app:large-intestine",organ:"Large Intestine",name:"Large Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000059"},{src:"app:spleen",organ:"Spleen",name:"Spleen",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002106"},{src:"app:thymus",organ:"Thymus",name:"Thymus",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002370"},{disabled:!0,src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000056"},{src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001223"},{src:"app:ureter-right",organ:"Ureter",name:"Ureter, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001222"},{src:"app:bladder",organ:"Urinary Bladder",name:"Urinary Bladder",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001255"},{src:"app:uterus",organ:"Uterus",name:"Uterus",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000995"},{src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004537"},{disabled:!0,src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002049"}].sort(function(e,t){return e.name.localeCompare(t.name)}),Oq=Cq.filter(function(e){return!0!==e.disabled}),Tq=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-organ-selector",this.multiselect=!1,this.displayErrors=!1,this.organList=Oq,this.selectedOrgans=[],this.expanded=!1,this.organsChanged=new Qc,this.onLeft=!0,this.onRight=!1,this.step=72}return b(e,[{key:"occurenceData",get:function(){return this._occurenceData},set:function(e){this._occurenceData=e}},{key:"ngAfterViewInit",value:function(){var e=this,t=this.carouselContainer;this.sensor=new wU.ResizeSensor(t.nativeElement,function(){e.set()})}},{key:"ngOnChanges",value:function(e){"organList"in e&&this.set()}},{key:"ngOnDestroy",value:function(){this.sensor.detach()}},{key:"error",get:function(){return!(!this.displayErrors||0===this.selectedOrgans.length)}},{key:"shift",value:function(e){var t=this.itemList,n=parseInt(t.nativeElement.style.left,10)||0;this.onLeft&&"left"===e||this.onRight&&"right"===e||(n="right"===e?n-this.step:n+this.step,t.nativeElement.style.left=n+"px",this.setLeftRight(n))}},{key:"scroll",value:function(e){var t=this;this.timeoutHandler=setInterval(function(){t.shift(e)},200)}},{key:"stopScroll",value:function(){this.timeoutHandler&&(clearInterval(this.timeoutHandler),this.timeoutHandler=void 0)}},{key:"selectOrgan",value:function(e){this.selectedOrgans=this.multiselect?this.selectedOrgans.includes(e)?this.selectedOrgans.filter(function(t){return e!==t}):this.selectedOrgans.concat([e]):[e],this.organsChanged.emit(this.selectedOrgans)}},{key:"isSelected",value:function(e){return!!this.selectedOrgans.includes(e)}},{key:"set",value:function(){var e=this.itemList,t=this.itemContainer,n=this.carouselContainer,i=parseInt(e.nativeElement.style.left,10)||0;if(e.nativeElement.offsetWidth>=this.organList.length*this.step)e.nativeElement.style.left="0px",this.onLeft=!0,this.onRight=!0;else{this.setLeftRight(i);var r=this.step*Math.floor(n.nativeElement.offsetWidth/this.step)-64;t.nativeElement.style.width="".concat(r,"px")}}},{key:"setWidth",value:function(){var e=this.itemContainer,t=this.carouselContainer,n=this.step*Math.floor(t.nativeElement.offsetWidth/this.step)-64;e.nativeElement.style.width="".concat(n,"px")}},{key:"setLeftRight",value:function(e){var t=this.itemContainer;this.onLeft=0===e,this.onRight=e<=t.nativeElement.offsetWidth-this.organList.length*this.step}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-organ-selector"]],viewQuery:function(e,t){var n;(1&e&&(ll(bq,7),ll(_q,7),ll(wq,7)),2&e)&&(cl(n=dl())&&(t.carouselContainer=n.first),cl(n=dl())&&(t.itemList=n.first),cl(n=dl())&&(t.itemContainer=n.first))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{multiselect:"multiselect",displayErrors:"displayErrors",organList:"organList",selectedOrgans:"selectedOrgans",expanded:"expanded",occurenceData:"occurenceData"},outputs:{organsChanged:"organsChanged"},features:[Ht],decls:9,vars:8,consts:[["matTooltip","Select the organ your tissue block is from.",1,"container",3,"matTooltipDisabled"],["carouselContainer",""],["class","carousel-left-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-item-container"],["itemcontainer",""],[1,"carousel-item-list"],["itemlist",""],["class","carousel-item",3,"disabled","selected","click",4,"ngFor","ngForOf"],["class","carousel-right-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-left-icon",3,"touchstart","touchend","click","mousedown","mouseup"],[1,"carousel-item",3,"click"],[1,"carousel-icon",3,"svgIcon"],[1,"carousel-text-container"],[1,"carousel-text"],["class","num-results",4,"ngIf"],[1,"num-results"],[1,"carousel-right-icon",3,"touchstart","touchend","click","mousedown","mouseup"]],template:function(e,t){1&e&&(Os(0,"div",0,1),ks(2,kq,2,2,"mat-icon",2),Os(3,"div",3,4),Os(5,"div",5,6),ks(7,Sq,6,7,"div",7),Ts(),Ts(),ks(8,Eq,2,2,"mat-icon",8),Ts()),2&e&&(au("expanded",t.expanded)("error",t.error),Es("matTooltipDisabled",t.multiselect),Wo(2),Es("ngIf",!t.expanded),Wo(5),Es("ngForOf",t.organList),Wo(1),Es("ngIf",!t.expanded))},directives:[lw,Nh,Rh,k_],styles:["[_nghost-%COMP%] .container[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;justify-content:space-between}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{font-size:2rem;transform:scaleY(1.2);height:2rem;width:2rem;cursor:pointer}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon.disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon.disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%]{text-align:right}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{text-align:left}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{overflow:hidden;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{position:relative;left:0rem;display:flex;transition:all .2s linear;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer;padding:.25rem .5rem;height:5rem;transition:.6s}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-icon[_ngcontent-%COMP%]{text-align:center;width:3.5rem;height:2rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:4rem;justify-content:center;text-align:center}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .carousel-text[_ngcontent-%COMP%]{display:flex;justify-content:center;font-size:.625rem;max-width:3.5rem;line-height:.8rem;min-height:1.6rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{font-size:.6875rem;line-height:1.5}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item.disabled[_ngcontent-%COMP%]{pointer-events:none}[_nghost-%COMP%] .error-message[_ngcontent-%COMP%]{color:red;height:1rem}[_nghost-%COMP%] .error-message.hidden[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{width:100%!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{flex-wrap:wrap;overflow:auto;left:0rem!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{height:5rem}"]}),e}(),Aq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,x_,fw]]}),e}(),Pq=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-opacity-slider",this.opacity=20,this.visible=!0,this.opacityChange=new Qc,this.visibilityToggle=new Qc,this.opacityReset=new Qc}return b(e,[{key:"ngOnInit",value:function(){this.prevOpacity=this.visible?0:20}},{key:"reset",value:function(){this.prevOpacity=20}},{key:"changeOpacity",value:function(e){this.opacity=parseInt(e,10),this.opacityChange.emit(this.opacity)}},{key:"toggleVisibility",value:function(){var e=this.opacity;this.opacity=this.prevOpacity,this.prevOpacity=e,this.visibilityToggle.emit(),this.opacityChange.emit(this.opacity)}},{key:"resetOpacity",value:function(){this.prevOpacity=0,this.opacityReset.emit()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-opacity-slider"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{opacity:"opacity",visible:"visible"},outputs:{opacityChange:"opacityChange",visibilityToggle:"visibilityToggle",opacityReset:"opacityReset"},decls:10,vars:17,consts:[[1,"slider-box"],[1,"slider-and-label"],[1,"slider",3,"step","min","max","value","input"],[1,"opacity-value"],[1,"icons"],["matRipple","","svgIcon","app:visibility_off",1,"visibility","icon","invisible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","","svgIcon","app:visibility_on",1,"visibility","icon","visible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","",1,"icon","reset",3,"matRippleCentered","matRippleUnbounded","click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"mat-slider",2),js("input",function(e){return t.changeOpacity(e.value)}),Ts(),Os(3,"span",3),wu(4),Ts(),Ts(),Os(5,"div",4),Os(6,"mat-icon",5),js("click",function(){return t.toggleVisibility()}),Ts(),Os(7,"mat-icon",6),js("click",function(){return t.toggleVisibility()}),Ts(),Os(8,"mat-icon",7),js("click",function(){return t.resetOpacity()}),wu(9,"refresh"),Ts(),Ts(),Ts()),2&e&&(Wo(2),au("disabled",!t.visible),Es("step",1)("min",0)("max",100)("value",t.opacity),Wo(2),xu("",t.opacity,"%"),Wo(2),au("hidden",t.visible),Es("matRippleCentered",!0)("matRippleUnbounded",!0),Wo(1),au("hidden",!t.visible),Es("matRippleCentered",!0)("matRippleUnbounded",!0),Wo(1),Es("matRippleCentered",!0)("matRippleUnbounded",!0))},directives:[OU,k_,rb],styles:["[_nghost-%COMP%]{height:2.25rem;display:flex;align-items:center;justify-content:space-between;border-radius:.1875rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%]{width:60%;display:flex;align-items:center;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .mat-slider-wrapper{top:1.125rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:not-allowed}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .opacity-value[_ngcontent-%COMP%]{width:1.5rem;margin-left:.5rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%]{display:flex;cursor:pointer!important}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .reset[_ngcontent-%COMP%]{margin-right:1rem;padding:.25rem;cursor:pointer;transition:.6s;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility[_ngcontent-%COMP%]{transition:.6s;cursor:pointer;padding:.25rem;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}(),Mq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,x_,MU,ob]]}),e}();function Iq(e,t){if(1&e&&(Os(0,"div",15),As(1,"youtube-player",16),Ts()),2&e){var n=Us(3);Wo(1),qs("videoId",n.videoID)}}function Rq(e,t){if(1&e&&(Os(0,"mat-expansion-panel",10),Os(1,"mat-expansion-panel-header"),Os(2,"h2",11),wu(3),Ts(),Ts(),Os(4,"div",12),As(5,"markdown",13),ks(6,Iq,2,1,"div",14),Ts(),Ts()),2&e){var n=Us(),i=n.index,r=n.$implicit;Es("expanded",0===i),Wo(3),ku(r.title),Wo(2),au("first",0===i),Es("data",r.content),Wo(1),Es("ngIf",0===i)}}function Dq(e,t){if(1&e&&(Os(0,"div",8),ks(1,Rq,7,6,"mat-expansion-panel",9),Ts()),2&e){var n=t.$implicit;Wo(1),Es("ngIf",n)}}var Nq=function(){var e=function(){function e(t,n){m(this,e),this.dialogRef=t,this.data=n,this.documentationContents=n.content||[],this.infoTitle=n.title||"",this.videoID=n.videoID}return b(e,[{key:"ngOnInit",value:function(){var e=document.createElement("script");e.src="https://www.youtube.com/iframe_api",document.body.appendChild(e)}},{key:"close",value:function(){var e,t=this;null===(e=document.getElementsByClassName("modal-animated")[0])||void 0===e||e.classList.add("modal-animate-fade-out"),setTimeout(function(){t.dialogRef.close()},250)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(FU),Ss(VU))},e.\u0275cmp=Et({type:e,selectors:[["ccf-info-dialog"]],decls:10,vars:2,consts:[[1,"rui-about","wrapper"],[1,"container"],[1,"close"],[1,"material-icons","close-icon",3,"click"],[1,"content"],["mat-dialog-title","",1,"title"],[1,"mat-typography","dialog-content"],["class","panel",4,"ngFor","ngForOf"],[1,"panel"],[3,"expanded",4,"ngIf"],[3,"expanded"],[1,"no-header-margin"],[1,"top-padding"],[1,"variable-binding",3,"data"],["class","video-player",4,"ngIf"],[1,"video-player"],[3,"videoId"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"div",2),Os(3,"mat-icon",3),js("click",function(){return t.close()}),wu(4,"clear"),Ts(),Ts(),Os(5,"div",4),Os(6,"h2",5),wu(7),Ts(),Os(8,"mat-dialog-content",6),ks(9,Dq,2,1,"div",7),Ts(),Ts(),Ts(),Ts()),2&e&&(Wo(7),ku(t.infoTitle),Wo(2),Es("ngForOf",t.documentationContents))},directives:[k_,XU,YU,Rh,Nh,fH,vH,xH,DH],styles:[".mat-dialog-container{padding:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:3rem;text-align:left}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:.875rem;line-height:1.5rem;margin-bottom:1rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .close[_ngcontent-%COMP%] .close-icon[_ngcontent-%COMP%]{float:right;cursor:pointer}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:1.5rem;margin-bottom:2.25rem;text-align:center}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:1rem;margin-top:0;margin-bottom:.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%]{margin-bottom:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .no-header-margin[_ngcontent-%COMP%]{font-weight:300;margin-bottom:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%]{display:flex}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] ul{margin-top:0;padding-left:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%]{height:50rem;min-height:10rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding[_ngcontent-%COMP%]{font-weight:300}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding.first[_ngcontent-%COMP%]{padding-right:3rem;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%]{position:relative;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%] iframe{width:100%;height:100%;max-height:17.5rem}"]}),e}(),Lq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,KU,x_,gH,FH,SH.forRoot({})]]}),e}(),jq=function(){var e=function(){function e(t){m(this,e),this.http=t,this.markdownContent=new tv([])}return b(e,[{key:"readMarkdown",value:function(){var e=this;this.http.get("assets/docs/README.md",{responseType:"text"}).subscribe(function(t){var n=e.parseMarkdown(t);e.markdownContent.next(n)})}},{key:"parseMarkdown",value:function(e){var t,n=[],i=_(e.split("# "));try{for(i.s();!(t=i.n()).done;){var r=t.value;if(r.length){var o=r.split("\n\n");n.push({title:o[0],content:o.splice(1).join("\n\n")})}}}catch(a){i.e(a)}finally{i.f()}return n}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Yb))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac,providedIn:"root"}),e}(),Fq=function(){var e=function(){function e(t,n){var i=this;m(this,e),this.dialog=t,this.infoButtonService=n,this.infoTitle="",this.subscriptions=new G,this.subscriptions.add(n.markdownContent.subscribe(function(e){e.length&&i.launchInfoDialog(e)}))}return b(e,[{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"launchInfoDialog",value:function(e){this.dialog.open(Nq,{autoFocus:!1,panelClass:"modal-animated",width:"60rem",data:{title:this.infoTitle,content:e,videoID:this.videoID}})}},{key:"onDialogButtonClick",value:function(){this.infoButtonService.readMarkdown()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(WU),Ss(jq))},e.\u0275cmp=Et({type:e,selectors:[["ccf-info-button"]],inputs:{infoTitle:"infoTitle",videoID:"videoID"},decls:3,vars:0,consts:[[1,"info-button-wrapper"],["aria-hidden","false","aria-label","Page information",1,"ccf-info-button",3,"click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"mat-icon",1),js("click",function(){return t.onDialogButtonClick()}),wu(2," info "),Ts(),Ts())},directives:[k_],styles:[".info-button-wrapper[_ngcontent-%COMP%]{border-radius:.25rem;padding:.65rem;transition:.6s}.info-button-wrapper[_ngcontent-%COMP%] .ccf-info-button[_ngcontent-%COMP%]{cursor:pointer;transition:color .6s;font-size:1.5rem;vertical-align:sub}"]}),e}(),Bq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Lq,x_,s_]]}),e}(),Vq=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments)).optionCache=new Map,e}return b(n,[{key:"config$",get:function(){return this.state$.pipe(rf(function(e){return null!=e}),Cf(1))}},{key:"setConfig",value:function(e){this.setState(e)}},{key:"patchConfig",value:function(e){this.patchState(e)}},{key:"getProperty",value:function(e){return this.config$.pipe(gU.apply(void 0,v(e)),Yd(),Cf(1))}},{key:"getOption",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:Qd,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:mU;return function(i){return i.lift(new yU(e,t,n.leading,n.trailing))}}(1e3),se(function(t){var n=e.clientWidth,i=e.clientHeight;return[t.clientX,t.clientY,n,i].join("_")})).subscribe(function(e){return t.event("webpage","mousemove",e)})}(t.body,n)};return e.\u0275fac=function(t){return new(t||e)(Ki(hh),Ki(xG))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}();function Uq(e,t){if(1&e){var n=Rs();Os(0,"button",1),js("click",function(){return gn(n),Us().submit(!0)}),wu(1),Ts()}if(2&e){var i=Us();Wo(1),xu(" ","not-set"===i.allowTelemetry?"I understand":"Opt in","\n")}}function Hq(e,t){if(1&e){var n=Rs();Os(0,"button",1),js("click",function(){return gn(n),Us().submit(!1)}),wu(1,"Opt out"),Ts()}}var Gq=function(){var e=function(){function e(t,n,i){m(this,e),this.consentService=n,this.data=i,this.clsName="ccf-tracking-popup",this.container=t.nativeElement}return b(e,[{key:"allowTelemetry",get:function(){return this.consentService.consent}},{key:"dismiss",value:function(){this.data.preClose()}},{key:"submit",value:function(e){this.consentService.setConsent(e?"given":"rescinded"),this.dismiss()}},{key:"showButton",value:function(e){var t=this.allowTelemetry;return"not-set"===t||("opt-in"===e?"rescinded"===t:"given"===t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(CG),Ss(X_))},e.\u0275cmp=Et({type:e,selectors:[["ccf-tracking-popup"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},decls:4,vars:2,consts:[["mat-button","","color","basic",3,"click",4,"ngIf"],["mat-button","","color","basic",3,"click"]],template:function(e,t){1&e&&(Os(0,"p"),wu(1,"We log usage to improve this service."),Ts(),ks(2,Uq,2,1,"button",0),ks(3,Hq,2,0,"button",0)),2&e&&(Wo(2),Es("ngIf",t.showButton("opt-in")),Wo(1),Es("ngIf",t.showButton("opt-out")))},directives:[Nh,A_],styles:["[_nghost-%COMP%]{display:flex;align-items:center;min-width:400px;color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:9999}[_nghost-%COMP%] p[_ngcontent-%COMP%]{margin:24px}[_nghost-%COMP%] button[_ngcontent-%COMP%]{margin:1rem;min-width:6rem;background-color:#007cbe;display:flex;justify-content:center}"],changeDetection:0}),e}(),Wq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_]]}),e}(),qq=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"forwardCall",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;it?e[0]:void 0,max:e[1]0}),df(function(e){return function(e,t){return new J(function(n){var i,r;try{i=e()}catch(a){return void n.error(a)}try{r=t(i)}catch(a){return void n.error(a)}var o=(r?ge(r):gf).subscribe(n);return function(){o.unsubscribe(),i&&i.unsubscribe()}})}(function(){return i.createDatabase(e)},function(t){return i.connectDatabase(t,e)})}),se(function(e){return e.database}),Cf(1)),i}return b(n,[{key:"connectDatabase",value:function(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return i=!Zl(),n.next=3,e.database.connect(t,i);case 3:return n.abrupt("return",e);case 4:case"end":return n.stop()}},n)}))}}]),n}(qq);return e.\u0275fac=function(t){return new(t||e)(Ki(Vq))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),nX=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"createDatabase",value:function(e){return{database:new ZW(e),unsubscribe:function(){}}}}]),n}(tX);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac,providedIn:"root"}),t}(),iX=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"createDatabase",value:function(e){var t=this.createWorker(e),n=sq(t);return{database:n,unsubscribe:function(){n[tq](),t.terminate()}}}}]),n}(tX);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac}),t}(),rX=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).impl$=e.config$.pipe(function(e){return e},se(function(e){return r.selectToken(e)}),Yd(),se(function(e){return i.get(e)}),Cf(1)),r}return n}(qq);return e.\u0275fac=function(t){return new(t||e)(Ki(Vq),Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),oX=new Pi("Default theme class"),aX=function(){var e=function(){function e(t){m(this,e),this.defaultTheme=this.theme=null!=t?t:""}return b(e,[{key:"getTheme",value:function(){return this.theme}},{key:"setTheme",value:function(e){e!==this.theme&&(this.applyThemeClass(this.theme,"remove"),this.applyThemeClass(e),this.theme=e)}},{key:"resetTheme",value:function(){this.setTheme(this.defaultTheme)}},{key:"initialize",value:function(e,t){this.element=e,this.injector=t,this.applyThemeClass(this.getTheme())}},{key:"applyThemeClass",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"add",i=this.element,r=this.injector;if(e&&i&&r){var o=r.get(Qu,null);if(o){var a=i.nativeElement,s=null===(t=r.get(Tp,null))||void 0===t?void 0:t.getContainerElement(),u="add"===n?"addClass":"removeClass";o[u](a,e),s&&o[u](s,e)}}}}],[{key:"initialize",value:function(t){var n=t.injector,i=t.location;n.get(e).initialize(i,n)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(oX,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),sX={production:!0,disableDbWorker:!0,acceptableViewerDomains:["https://portal.hubmapconsortium.org","https://portal.test.hubmapconsortium.org"],dbOptions:{ccfOwlUrl:"assets/ccf.owl.n3store.json",ccfContextUrl:"https://hubmapconsortium.github.io/hubmap-ontology/ccf-context.jsonld",dataSources:["assets/kpmp/data/rui_locations.jsonld","assets/sparc/data/rui_locations.jsonld","assets/gtex/data/rui_locations.jsonld"],hubmapDataService:"search-api",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"https://search.api.hubmapconsortium.org/entities/search",hubmapAssetsUrl:"https://assets.hubmapconsortium.org",hubmapToken:null!==(Jq=localStorage.getItem("HUBMAP_TOKEN"))&&void 0!==Jq?Jq:"",useRemoteApi:!1,remoteApiEndpoint:"https://ccf-api--staging.herokuapp.com/v1"},customization:{theme:"hubmap",header:!0,homeUrl:"https://portal.hubmapconsortium.org/",logoTooltip:"Human BioMolecular Atlas Project"},googleAnalyticsToken:"portal.hubmapconsortium.org"===window.location.hostname?"G-1WRJHN9FM6":"G-J9HWV9QPJ4"},uX=["*",[["mat-toolbar-row"]]],cX=["*","mat-toolbar-row"],lX=qy(function(){return function e(t){m(this,e),this._elementRef=t}}()),hX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),e}(),dX=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e))._platform=i,o._document=r,o}return b(n,[{key:"ngAfterViewInit",value:function(){var e=this;this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(function(){return e._checkToolbarMixedModes()}))}},{key:"_checkToolbarMixedModes",value:function(){}}]),n}(lX);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Mf),Ss(hh))},e.\u0275cmp=Et({type:e,selectors:[["mat-toolbar"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,hX,5),2&e)&&(cl(i=dl())&&(t._toolbarRows=i))},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(e,t){2&e&&au("mat-toolbar-multiple-rows",t._toolbarRows.length>0)("mat-toolbar-single-row",0===t._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[as],ngContentSelectors:cX,decls:2,vars:0,template:function(e,t){1&e&&(Gs(uX),Ws(0),Ws(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),e}(),fX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy],Gy]}),e}(),pX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,fX,fw]]}),e}(),vX=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).locator=i,r}return b(n,[{key:"createWorker",value:function(e){var t=this.getWorkerUrl(!0);return new Worker(t,{type:"module"})}},{key:"getWorkerUrl",value:function(e){if(e)return new URL(r(88509),r.b);var t=this.locator.prepareExternalUrl("0-es2015.worker.js"),n=new Blob(["importScripts('".concat(t,"')")],{type:"application/javascript"});return URL.createObjectURL(n)}}]),n}(iX);return e.\u0275fac=function(t){return new(t||e)(Ki(Vq),Ki(_h))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac,providedIn:"root"}),e}(),gX=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"selectToken",value:function(e){var t=e.useRemoteApi,n=e.remoteApiEndpoint;return t&&n?eX:"undefined"==typeof Worker||sX.disableDbWorker?nX:vX}}]),n}(rX);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac,providedIn:"root"}),t}(),mX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:Sl,useValue:aX.initialize,multi:!0},aX]}),e}(),yX=function(){var e=function(){function e(t,n){m(this,e),this.accessor=t,this.injector=n}return b(e,null,[{key:"forRoot",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{ngModule:e,providers:[ZH,QH,KH].concat(v(t))}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(ZH,2),Ki(QH,2))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),bX=function(e,t){return function(e,t){return new Array(t+1).join("0")}(0,t-e.toString().length)+e},_X=function(){function e(t,n,i){m(this,e),this.action=t,this.store=n,this.logWriter=i}return b(e,[{key:"dispatched",value:function(e){var t=yB(this.action),n=function(e){return bX(e.getHours(),2)+":"+bX(e.getMinutes(),2)+":"+bX(e.getSeconds(),2)+"."+bX(e.getMilliseconds(),3)}(new Date);this.logWriter.startGroup("action ".concat(t," @ ").concat(n)),this._hasPayload(this.action)&&this.logWriter.logGrey("payload",Object.assign({},this.action)),this.logWriter.logGrey("prev state",e)}},{key:"completed",value:function(e){this.logWriter.logGreen("next state",e),this.logWriter.endGroup()}},{key:"errored",value:function(e){this.logWriter.logRedish("next state after error",this.store.snapshot()),this.logWriter.logRedish("error",e),this.logWriter.endGroup()}},{key:"_hasPayload",value:function(e){return this._getNonEmptyProperties(e).length>0}},{key:"_getNonEmptyProperties",value:function(e){return Object.keys(e).map(function(t){return e[t]}).filter(function(e){return void 0!==e})}}]),e}(),wX=function(){function e(t){m(this,e),this.options=t,this.options=this.options||{},this.logger=t.logger||console}return b(e,[{key:"startGroup",value:function(e){var t=this.options.collapsed?this.logger.groupCollapsed:this.logger.group;try{t.call(this.logger,e)}catch(n){console.log(e)}}},{key:"endGroup",value:function(){try{this.logger.groupEnd()}catch(e){this.logger.log("\u2014\u2014 log end \u2014\u2014")}}},{key:"logGrey",value:function(e,t){this.log(e,"color: #9E9E9E; font-weight: bold",t)}},{key:"logGreen",value:function(e,t){this.log(e,"color: #4CAF50; font-weight: bold",t)}},{key:"logRedish",value:function(e,t){this.log(e,"color: #FD8182; font-weight: bold",t)}},{key:"log",value:function(e,t,n){this.isIE()?this.logger.log(e,n):this.logger.log("%c "+e,t,n)}},{key:"isIE",value:function(){var e="undefined"!=typeof window&&window.navigator.userAgent?window.navigator.userAgent:"",t=!1,n=e.indexOf("MSIE "),i=e.indexOf("Trident/");return(n>-1||i>-1)&&(t=!0),t}}]),e}(),kX=new Pi("NGXS_LOGGER_PLUGIN_OPTIONS"),xX=function(){var e=function(){function e(t,n){m(this,e),this._options=t,this._injector=n}return b(e,[{key:"handle",value:function(e,t,n){if(this._options.disabled||!this._options.filter(t,e))return n(e,t);this._logWriter=this._logWriter||new wX(this._options),this._store=this._store||this._injector.get(WB);var i=new _X(t,this._store,this._logWriter);return i.dispatched(e),n(e,t).pipe(iv(function(e){i.completed(e)}),kb(function(e){throw i.errored(e),e}))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(kX),Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),SX=new Pi("LOGGER_USER_OPTIONS");function EX(e){return Object.assign({},{logger:console,collapsed:!1,disabled:!1,filter:function(){return!0}},e)}var CX=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"forRoot",value:function(t){return{ngModule:e,providers:[{provide:lB,useClass:xX,multi:!0},{provide:SX,useValue:t},{provide:kX,useFactory:EX,deps:[SX]}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),OX=new RegExp("[^#a-f\\d]","gi"),TX=new RegExp("^#?[a-f\\d]{3}[a-f\\d]?$|^#?[a-f\\d]{6}([a-f\\d]{2})?$","i"),AX=["#FF8800","#2979ff","#ffd740","#b92dff","#da326f","#7323e2","#acf32b","#82B1FF","#E040FB","#00E5FF"].map(function(e,t){var n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("string"!=typeof e||OX.test(e)||!TX.test(e))throw new TypeError("Expected a valid hex string");var n=1;8===(e=e.replace(/^#/,"")).length&&(n=Number.parseInt(e.slice(6,8),16)/255,e=e.slice(0,6)),4===e.length&&(n=Number.parseInt(e.slice(3,4).repeat(2),16)/255,e=e.slice(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var i=Number.parseInt(e,16),r=i>>16,o=i>>8&255,a=255&i,s="number"==typeof t.alpha?t.alpha:n;return"array"===t.format?[r,o,a,s]:"css"===t.format?"rgb(".concat(r," ").concat(o," ").concat(a).concat(1===s?"":" / ".concat(Number((100*s).toFixed(2)),"%"),")"):{red:r,green:o,blue:a,alpha:s}}(e,{format:"array"});return n[3]=255,{color:e,rgba:n,rank:t}}),PX=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments)).forcedUnassignment=new re,e.forcedUnassignment$=e.forcedUnassignment.asObservable(),e.colorAssignments$=e.state$.pipe(gU("colorAssignments"),Yd()),e.colorAssignmentsList$=e.state$.pipe(gU("colorAssignmentsList"),Yd()),e}return b(n,[{key:"getColor",value:function(e){return this.snapshot.colorAssignments[e]}},{key:"assignColor",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.snapshot,i=n.colorAssignments,r=n.colorAssignmentsList,o=n.colorsAvailable;t&&(o=this.snapshot.colorPalette.concat(),r=[],i={});var a=i[e];return a||(o.length>0?a=o[0]:(a=r[r.length-1].color,r=r.slice(0,-1),this.forcedUnassignment.next()),o=o.filter(function(e){return e.color!==a.color}),i=(r=[{color:a,key:e}].concat(r)).reduce(function(e,t,n){return e[t.key]=Object.assign(Object.assign({},t.color),{rank:n}),e},{}),this.ctx.patchState({colorsAvailable:o,colorAssignments:i,colorAssignmentsList:r})),a}},{key:"unassignColor",value:function(e){var t=this.snapshot,n=t.colorAssignments,i=t.colorAssignmentsList,r=t.colorsAvailable,o=n[e];o&&(r=[o].concat(r),n=(i=i.filter(function(e){return e.color.color!==o.color})).reduce(function(e,t,n){return e[t.key]=Object.assign(Object.assign({},t.color),{rank:n}),e},{}),this.ctx.patchState({colorsAvailable:r,colorAssignments:n,colorAssignmentsList:i}))}}]),n}(yG);function MX(e,t){return function(n){return n.lift(new IX(e,t))}}PX.\u0275fac=function(){var e;return function(t){return(e||(e=Ei(PX)))(t||PX)}}(),PX.\u0275prov=Ye({token:PX,factory:PX.\u0275fac}),pw([fG(),vw(0,pG("key")),vw(1,pG("doReset"))],PX.prototype,"assignColor",null),pw([fG(),vw(0,pG("key"))],PX.prototype,"unassignColor",null),PX=pw([vG(),JB({name:"colors",defaults:{colorPalette:AX.concat(),colorsAvailable:AX.concat(),colorAssignments:{},colorAssignmentsList:[]}})],PX);var IX=function(){function e(t,n){m(this,e),this.keySelector=t,this.flushes=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new RX(e,this.keySelector,this.flushes))}}]),e}(),RX=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).keySelector=i,o.values=new Set,r&&o.add(be(r,new me(c(o)))),o}return b(n,[{key:"notifyNext",value:function(){this.values.clear()}},{key:"notifyError",value:function(e){this._error(e)}},{key:"_next",value:function(e){this.keySelector?this._useKeySelector(e):this._finalizeNext(e,e)}},{key:"_useKeySelector",value:function(e){var t,n=this.destination;try{t=this.keySelector(e)}catch(i){return void n.error(i)}this._finalizeNext(t,e)}},{key:"_finalizeNext",value:function(e,t){var n=this.values;n.has(e)||(n.add(e),this.destination.next(t))}}]),n}(ye),DX={sex:"Both",ageRange:[1,110],bmiRange:[13,83],tmc:[],technologies:[],ontologyTerms:["http://purl.obolibrary.org/obo/UBERON_0013702"],cellTypeTerms:["http://purl.obolibrary.org/obo/CL_0000000"]},NX=(function(e){e.Running="running",e.Completed="completed"}(NX||(NX={})),NX);function LX(e){return function(){return e.next(NX.Completed)}}function jX(e,t){return function(n){return n.pipe(df(e),iv(t),IG(1),Ce())}}var FX=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).source=e,i._tissueBlockDataQueryStatus$=new Sf(1),i._aggregateDataQueryStatus$=new Sf(1),i._ontologyTermOccurencesDataQueryStatus$=new Sf(1),i._cellTypeTermOccurencesDataQueryStatus$=new Sf(1),i._sceneDataQueryStatus$=new Sf(1),i._technologyFilterQueryStatus$=new Sf(1),i._providerFilterQueryStatus$=new Sf(1),i.ontologyTermsFullData$=new Sf(1),i.cellTypeTermsFullData$=new Sf(1),i.filter$=i.state$.pipe(gU("filter")),i.tissueBlockData$=i.filter$.pipe(jX(i.tissueBlockData,LX(i._tissueBlockDataQueryStatus$))),i.aggregateData$=i.filter$.pipe(jX(i.aggregateData,LX(i._aggregateDataQueryStatus$))),i.ontologyTermOccurencesData$=i.filter$.pipe(jX(i.ontologyTermOccurencesData,LX(i._ontologyTermOccurencesDataQueryStatus$))),i.cellTypeTermOccurencesData$=i.filter$.pipe(jX(i.cellTypeTermOccurencesData,LX(i._cellTypeTermOccurencesDataQueryStatus$))),i.sceneData$=i.filter$.pipe(jX(i.sceneData,LX(i._sceneDataQueryStatus$))),i.technologyFilterData$=i.filter$.pipe(jX(i.technologyFilterData,LX(i._technologyFilterQueryStatus$))),i.providerFilterData$=i.filter$.pipe(jX(i.providerFilterData,LX(i._providerFilterQueryStatus$))),i.tissueBlockDataQueryStatus$=i._tissueBlockDataQueryStatus$.pipe(MX()),i.aggregateDataQueryStatus$=i._aggregateDataQueryStatus$.pipe(MX()),i.ontologyTermOccurencesDataQueryStatus$=i._ontologyTermOccurencesDataQueryStatus$.pipe(MX()),i.cellTypeTermOccurencesDataQueryStatus$=i._cellTypeTermOccurencesDataQueryStatus$.pipe(MX()),i.sceneDataQueryStatus$=i._sceneDataQueryStatus$.pipe(MX()),i.technologyFilterQueryStatus$=i._technologyFilterQueryStatus$.pipe(MX()),i.providerFilterQueryStatus$=i._providerFilterQueryStatus$.pipe(MX()),i.queryStatus$=L_([i.tissueBlockDataQueryStatus$,i.aggregateDataQueryStatus$,i.ontologyTermOccurencesDataQueryStatus$,i.cellTypeTermOccurencesDataQueryStatus$,i.sceneDataQueryStatus$,i.technologyFilterQueryStatus$,i.providerFilterQueryStatus$]).pipe(se(function(e){return function(e){return e.every(function(e){return e===NX.Completed})}(e)?NX.Completed:NX.Running}),MX()),i._tissueBlockDataQueryStatus$.next(NX.Completed),i._aggregateDataQueryStatus$.next(NX.Completed),i._ontologyTermOccurencesDataQueryStatus$.next(NX.Completed),i._cellTypeTermOccurencesDataQueryStatus$.next(NX.Completed),i._sceneDataQueryStatus$.next(NX.Completed),i._technologyFilterQueryStatus$.next(NX.Completed),i._providerFilterQueryStatus$.next(NX.Completed),i}return b(n,[{key:"ngxsOnInit",value:function(){var e=this.ontologyTermsFullData$,t=this.ontologyTermOccurencesData$,n=this.cellTypeTermsFullData$,i=this.cellTypeTermOccurencesData$,r=this.source;this.snapshot.filter===DX?(t.pipe(op(1)).subscribe(e),i.pipe(op(1)).subscribe(n)):(r.getOntologyTermOccurences().pipe(op(1)).subscribe(e),r.getCellTypeTermOccurences().pipe(op(1)).subscribe(n))}},{key:"updateFilter",value:function(e){this.patchState({filter:Object.assign(Object.assign({},this.getState().filter),e)})}},{key:"tissueBlockData",value:function(e){return this._tissueBlockDataQueryStatus$.next(NX.Running),this.source.getTissueBlockResults(e)}},{key:"aggregateData",value:function(e){return this._aggregateDataQueryStatus$.next(NX.Running),this.source.getAggregateResults(e)}},{key:"ontologyTermOccurencesData",value:function(e){return this._ontologyTermOccurencesDataQueryStatus$.next(NX.Running),this.source.getOntologyTermOccurences(e)}},{key:"cellTypeTermOccurencesData",value:function(e){return this._cellTypeTermOccurencesDataQueryStatus$.next(NX.Running),this.source.getCellTypeTermOccurences(e)}},{key:"sceneData",value:function(e){return this._sceneDataQueryStatus$.next(NX.Running),this.source.getScene(e)}},{key:"technologyFilterData",value:function(){return this._technologyFilterQueryStatus$.next(NX.Running),this.source.getDatasetTechnologyNames()}},{key:"providerFilterData",value:function(){return this._providerFilterQueryStatus$.next(NX.Running),this.source.getProviderNames()}}]),n}(mG);FX.\u0275fac=function(e){return new(e||FX)(Ki(Xq))},FX.\u0275prov=Ye({token:FX,factory:FX.\u0275fac}),pw([fG(),vw(0,pG("filter"))],FX.prototype,"updateFilter",null),pw([CF.ak],FX.prototype,"tissueBlockData",null),pw([CF.ak],FX.prototype,"aggregateData",null),pw([CF.ak],FX.prototype,"ontologyTermOccurencesData",null),pw([CF.ak],FX.prototype,"cellTypeTermOccurencesData",null),pw([CF.ak],FX.prototype,"sceneData",null),pw([CF.ak],FX.prototype,"technologyFilterData",null),pw([CF.ak],FX.prototype,"providerFilterData",null),FX=pw([vG(),JB({name:"data",defaults:{filter:DX}})],FX);var BX=[{name:"bladder",namespace:"app",url:"assets/icons/organs/ico-organs-bladder.svg"},{name:"blood",namespace:"app",url:"assets/icons/organs/ico-organs-blood.svg"},{name:"bone-marrow",namespace:"app",url:"assets/icons/organs/ico-organs-bone-marrow.svg"},{name:"brain",namespace:"app",url:"assets/icons/organs/ico-organs-brain.svg"},{name:"eye",namespace:"app",url:"assets/icons/organs/ico-organs-eye.svg"},{name:"fallopian-tube-left",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-left.svg"},{name:"fallopian-tube-right",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-right.svg"},{name:"heart",namespace:"app",url:"assets/icons/organs/ico-organs-heart.svg"},{name:"kidney-left",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-left.svg"},{name:"kidney-right",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-right.svg"},{name:"kidney",namespace:"app",url:"assets/icons/organs/ico-organs-kidney.svg"},{name:"knee",namespace:"app",url:"assets/icons/organs/ico-organs-knee.svg"},{name:"large-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-large-intestine.svg"},{name:"liver",namespace:"app",url:"assets/icons/organs/ico-organs-liver.svg"},{name:"lung-left",namespace:"app",url:"assets/icons/organs/ico-organs-lung-left.svg"},{name:"lung-right",namespace:"app",url:"assets/icons/organs/ico-organs-lung-right.svg"},{name:"lung",namespace:"app",url:"assets/icons/organs/ico-organs-lung.svg"},{name:"lymph-nodes",namespace:"app",url:"assets/icons/organs/ico-organs-lymph-nodes.svg"},{name:"neuron",namespace:"app",url:"assets/icons/organs/ico-organs-neuron.svg"},{name:"ovaries",namespace:"app",url:"assets/icons/organs/ico-organs-ovaries.svg"},{name:"ovary-left",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-left.svg"},{name:"ovary-right",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-right.svg"},{name:"pancreas",namespace:"app",url:"assets/icons/organs/ico-organs-pancreas.svg"},{name:"pelvis-f",namespace:"app",url:"assets/icons/organs/ico-organs-pelvis-f.svg"},{name:"prostate",namespace:"app",url:"assets/icons/organs/ico-organs-prostate.svg"},{name:"skin",namespace:"app",url:"assets/icons/organs/ico-organs-skin.svg"},{name:"small-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-small intestine.svg"},{name:"spleen",namespace:"app",url:"assets/icons/organs/ico-organs-spleen.svg"},{name:"stomach",namespace:"app",url:"assets/icons/organs/ico-organs-stomach.svg"},{name:"thymus",namespace:"app",url:"assets/icons/organs/ico-organs-thymus.svg"},{name:"ureter-left",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-left.svg"},{name:"ureter-right",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-right.svg"},{name:"uterus",namespace:"app",url:"assets/icons/organs/ico-organs-uterus.svg"},{name:"vasculature-thick",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thick.svg"},{name:"vasculature-thin",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thin.svg"},{name:"opacity",namespace:"app",url:"assets/icons/opacity-24px.svg"},{name:"visibility_on",namespace:"app",url:"assets/icons/visibility-on-24px.svg"},{name:"visibility_off",namespace:"app",url:"assets/icons/visibility-off-24px.svg"},{name:"expand_more",namespace:"app",url:"assets/icons/expand_more-24px.svg"},{name:"expand_less",namespace:"app",url:"assets/icons/expand_less-24px.svg"},{name:"filter",url:"assets/icons/filter.svg"}],VX=function(e){a(n,e);var t=s(n);function n(e,i){var r;m(this,n),(r=t.call(this)).registry=e;var o,a=_(BX);try{for(a.s();!(o=a.n()).done;){var s=o.value,u=s.name,c=s.namespace,l=s.url,h=s.html,d={name:u,namespace:c,url:l&&i.bypassSecurityTrustResourceUrl(l),html:h&&i.bypassSecurityTrustHtml(h)};r.registerIconImpl(d)}}catch(f){a.e(f)}finally{a.f()}return r}return b(n,[{key:"registerIcon",value:function(e){return this.registerIconImpl(e)}},{key:"registerIconImpl",value:function(e){if(!this.registry||!e.url&&!e.html)return!1;var t=this.registry,n=t[this.getMethodName(e)],i=this.getArguments(e);if(!n)return!1;try{return n.apply(t,i),!0}catch(r){return!1}}},{key:"getMethodName",value:function(e){var t=e.name,n=e.namespace,i=e.url,r=["addSvgIcon"];return t||r.push("Set"),i||r.push("Literal"),n&&r.push("InNamespace"),r.join("")}},{key:"getArguments",value:function(e){var t=e.name,n=e.namespace,i=e.url,r=e.html;return[n,t,null!=i?i:r].filter(function(e){return!!e})}}]),n}(mG);VX.\u0275fac=function(e){return new(e||VX)(Ki(f_,8),Ki(Ed))},VX.\u0275prov=Ye({token:VX,factory:VX.\u0275fac}),pw([fG()],VX.prototype,"registerIcon",null),VX=pw([vG(),JB({name:"iconRegistry"})],VX);var zX=function(n){a(r,n);var i=s(r);function r(e,t){var n;return m(this,r),(n=i.call(this)).dataService=e,n.injector=t,n.listResults$=n.state$.pipe(gU("listResults"),Yd()),n.highlightedNodeId$=n.state$.pipe(gU("highlightedNodeId"),Yd()),n}return b(r,[{key:"setListResults",value:function(e){this.ctx.patchState({listResults:e})}},{key:"selectListResult",value:function(e){this.colorAssignments.assignColor(e.tissueBlock.spatialEntityId)}},{key:"deselectListResult",value:function(e){this.colorAssignments.unassignColor(e.tissueBlock.spatialEntityId)}},{key:"highlightNode",value:function(e){this.ctx.patchState({highlightedNodeId:e})}},{key:"unHighlightNode",value:function(){this.ctx.patchState({highlightedNodeId:void 0})}},{key:"ngxsOnInit",value:function(){var n=this;e(p(r.prototype),"ngxsOnInit",this).call(this),this.dataState=this.injector.get(FX),this.colorAssignments=this.injector.get(PX),L_([this.dataState.tissueBlockData$,this.colorAssignments.colorAssignments$]).pipe(se(function(e){var n,i=t(e,2),r=i[0],o=i[1],a=[],s=[],u=_(r);try{for(u.s();!(n=u.n()).done;){var c=n.value,l=o[c.spatialEntityId];l?a.push({selected:!0,color:l.color,tissueBlock:c,rank:l.rank}):s.push({selected:!1,tissueBlock:c})}}catch(h){u.e(h)}finally{u.f()}return(0,QG.sortBy)(a,["rank"]).concat(s)}),iv(function(e){return n.setListResults(e)})).subscribe()}}]),r}(yG);zX.\u0275fac=function(e){return new(e||zX)(Ki(Xq),Ki(rs))},zX.\u0275prov=Ye({token:zX,factory:zX.\u0275fac}),pw([fG(),vw(0,pG("listResults"))],zX.prototype,"setListResults",null),zX=pw([vG(),JB({name:"listResults",defaults:{listResults:[]}})],zX);var UX=new Set(["Skin","Heart","Kidney","Spleen"]),HX=function(n){a(r,n);var i=s(r);function r(e,t){var n;return m(this,r),(n=i.call(this)).dataService=e,n.injector=t,n.referenceOrgans$=n.state$.pipe(gU("referenceOrgans"),Yd()),n.selectedReferenceOrgans$=n.state$.pipe(gU("selectedReferenceOrgans"),Yd()),n.scene$=n.state$.pipe(gU("scene"),Yd()),n.highlightedId$=n.state$.pipe(gU("highlightedId"),Yd()),n}return b(r,[{key:"setSelectedReferenceOrgans",value:function(e){this.ctx.patchState({selectedReferenceOrgans:e})}},{key:"setReferenceOrgans",value:function(e){this.ctx.patchState({referenceOrgans:e})}},{key:"setScene",value:function(e){this.ctx.patchState({scene:e})}},{key:"sceneNodeClicked",value:function(e){var t=e.node,n=e.ctrlClick;t.representation_of&&"http://purl.org/ccf/latest/ccf.owl#VHFSkin"!==t["@id"]&&t.entityId?this.dataState.updateFilter({ontologyTerms:[t.representation_of]}):t.entityId&&this.colorAssignments.assignColor(t["@id"],!n)}},{key:"sceneNodeHovered",value:function(e){this.listResults.highlightNode(e["@id"])}},{key:"sceneNodeUnhover",value:function(){this.listResults.unHighlightNode()}},{key:"ngxsOnInit",value:function(){var n=this;e(p(r.prototype),"ngxsOnInit",this).call(this),this.dataState=this.injector.get(FX),this.colorAssignments=this.injector.get(PX),this.listResults=this.injector.get(zX),this.dataService.getReferenceOrgans().pipe(se(function(e){var t=new Set(e.map(function(e){return e.representation_of}));return Cq.filter(function(e){return t.has(e.id)}).map(function(e){return Object.assign(Object.assign({},e),{disabled:!1,numResults:0})})}),op(1),iv(function(e){n.setReferenceOrgans(e),n.setSelectedReferenceOrgans(e.filter(function(e){return UX.has(e.organ)}))})).subscribe(),L_([this.dataState.sceneData$,this.selectedReferenceOrgans$,this.colorAssignments.colorAssignments$,this.dataService.getReferenceOrgans(),this.listResults.highlightedNodeId$]).pipe(se(function(e){var n=t(e,5),i=n[0],r=n[1],o=n[2],a=n[3],s=n[4],u=new Set(r.map(function(e){return e.id})),c=new Set(a.filter(function(e){return u.has(e.representation_of)}).map(function(e){return e["@id"]}));return i.filter(function(e){var t,n;return(null===(n=null===(t=e.ccf_annotations)||void 0===t?void 0:t.some)||void 0===n?void 0:n.call(t,function(e){return u.has(e)}))||e.reference_organ&&c.has(e.reference_organ)}).map(function(e){return e.entityId&&(Object.prototype.hasOwnProperty.call(o,e["@id"])||s===e["@id"])?Object.assign(Object.assign({},e),{color:s===e["@id"]?[30,136,229,255]:o[e["@id"]].rgba}):e})}),iv(function(e){return n.setScene(e)})).subscribe()}}]),r}(yG);HX.\u0275fac=function(e){return new(e||HX)(Ki(Xq),Ki(rs))},HX.\u0275prov=Ye({token:HX,factory:HX.\u0275fac}),pw([fG(),vw(0,pG("selectedReferenceOrgans"))],HX.prototype,"setSelectedReferenceOrgans",null),pw([fG(),vw(0,pG("referenceOrgans"))],HX.prototype,"setReferenceOrgans",null),pw([fG(),vw(0,pG("scene"))],HX.prototype,"setScene",null),HX=pw([vG(),JB({name:"scene",defaults:{scene:[],referenceOrgans:[],selectedReferenceOrgans:[],selectedAnatomicalStructures:[],anatomicalStructureSettings:{}}})],HX);var GX=[Vq,PX,VX,zX,FX,HX],WX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[yX.forRoot(),ZB.forRoot(GX,{developmentMode:!sX.production}),CX.forRoot({disabled:sX.production})]]}),e}(),qX=function(){var e=function e(t){if(m(this,e),t)throw new Error("The core module should only be imported once in the root module")};return e.\u0275fac=function(t){return new(t||e)(Ki(e,12))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:Xq,useExisting:gX}],imports:[[s_,MG.forRoot({gaToken:sX.googleAnalyticsToken,appName:"eui"}),zq,HG.forRoot(function(){return new zG({basePath:sX.dbOptions.remoteApiEndpoint})}),pX,WX,mX],pX]}),e}(),XX=["input"],YX=function(e){return{enterDuration:e}},KX=["*"],$X=new Pi("mat-checkbox-default-options",{providedIn:"root",factory:QX});function QX(){return{color:"accent",clickAction:"check-indeterminate"}}var ZX=0,JX={color:"accent",clickAction:"check-indeterminate"},eY={provide:nV,useExisting:ze(function(){return iY}),multi:!0},tY=function e(){m(this,e)},nY=Yy(qy(Xy(Wy(function(){return function e(t){m(this,e),this._elementRef=t}}())))),iY=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u){var c;return m(this,n),(c=t.call(this,e))._changeDetectorRef=i,c._focusMonitor=r,c._ngZone=o,c._animationMode=s,c._options=u,c.ariaLabel="",c.ariaLabelledby=null,c._uniqueId="mat-checkbox-"+ ++ZX,c.id=c._uniqueId,c.labelPosition="after",c.name=null,c.change=new Qc,c.indeterminateChange=new Qc,c._onTouched=function(){},c._currentAnimationClass="",c._currentCheckState=0,c._controlValueAccessorChangeFn=function(){},c._checked=!1,c._disabled=!1,c._indeterminate=!1,c._options=c._options||JX,c.color=c.defaultColor=c._options.color||JX.color,c.tabIndex=parseInt(a)||0,c}return b(n,[{key:"inputId",get:function(){return"".concat(this.id||this._uniqueId,"-input")}},{key:"required",get:function(){return this._required},set:function(e){this._required=Pd(e)}},{key:"ngAfterViewInit",value:function(){var e=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(t){t||Promise.resolve().then(function(){e._onTouched(),e._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}},{key:"ngAfterViewChecked",value:function(){}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"checked",get:function(){return this._checked},set:function(e){e!=this.checked&&(this._checked=e,this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(e){var t=Pd(e);t!==this.disabled&&(this._disabled=t,this._changeDetectorRef.markForCheck())}},{key:"indeterminate",get:function(){return this._indeterminate},set:function(e){var t=e!=this._indeterminate;this._indeterminate=Pd(e),t&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_onLabelTextChange",value:function(){this._changeDetectorRef.detectChanges()}},{key:"writeValue",value:function(e){this.checked=!!e}},{key:"registerOnChange",value:function(e){this._controlValueAccessorChangeFn=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e}},{key:"_getAriaChecked",value:function(){return this.checked?"true":this.indeterminate?"mixed":"false"}},{key:"_transitionCheckState",value:function(e){var t=this._currentCheckState,n=this._elementRef.nativeElement;if(t!==e&&(this._currentAnimationClass.length>0&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(t,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);var i=this._currentAnimationClass;this._ngZone.runOutsideAngular(function(){setTimeout(function(){n.classList.remove(i)},1e3)})}}},{key:"_emitChangeEvent",value:function(){var e=new tY;e.source=this,e.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(e),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}},{key:"toggle",value:function(){this.checked=!this.checked}},{key:"_onInputClick",value:function(e){var t,n=this,i=null===(t=this._options)||void 0===t?void 0:t.clickAction;e.stopPropagation(),this.disabled||"noop"===i?!this.disabled&&"noop"===i&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==i&&Promise.resolve().then(function(){n._indeterminate=!1,n.indeterminateChange.emit(n._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._inputElement,e,t):this._inputElement.nativeElement.focus(t)}},{key:"_onInteractionEvent",value:function(e){e.stopPropagation()}},{key:"_getAnimationClassForCheckStateTransition",value:function(e,t){if("NoopAnimations"===this._animationMode)return"";var n="";switch(e){case 0:if(1===t)n="unchecked-checked";else{if(3!=t)return"";n="unchecked-indeterminate"}break;case 2:n=1===t?"unchecked-checked":"unchecked-indeterminate";break;case 1:n=2===t?"checked-unchecked":"checked-indeterminate";break;case 3:n=1===t?"indeterminate-checked":"indeterminate-unchecked"}return"mat-checkbox-anim-".concat(n)}},{key:"_syncIndeterminate",value:function(e){var t=this._inputElement;t&&(t.nativeElement.indeterminate=e)}}]),n}(nY);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(_c),Ss(Gv),Ss(Bl),Oi("tabindex"),Ss(Dy,8),Ss($X,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-checkbox"]],viewQuery:function(e,t){var n;(1&e&&(ll(XX,5),ll(rb,5)),2&e)&&(cl(n=dl())&&(t._inputElement=n.first),cl(n=dl())&&(t.ripple=n.first))},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(e,t){2&e&&(Cu("id",t.id),bs("tabindex",null),au("mat-checkbox-indeterminate",t.indeterminate)("mat-checkbox-checked",t.checked)("mat-checkbox-disabled",t.disabled)("mat-checkbox-label-before","before"==t.labelPosition)("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",labelPosition:"labelPosition",name:"name",required:"required",checked:"checked",disabled:"disabled",indeterminate:"indeterminate",ariaDescribedby:["aria-describedby","ariaDescribedby"],value:"value"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[Uu([eY]),as],ngContentSelectors:KX,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(e,t){if(1&e&&(Gs(),Os(0,"label",0,1),Os(2,"span",2),Os(3,"input",3,4),js("change",function(e){return t._onInteractionEvent(e)})("click",function(e){return t._onInputClick(e)}),Ts(),Os(5,"span",5),As(6,"span",6),Ts(),As(7,"span",7),Os(8,"span",8),Gn(),Os(9,"svg",9),As(10,"path",10),Ts(),dn.lFrame.currentNamespace=null,As(11,"span",11),Ts(),Ts(),Os(12,"span",12,13),js("cdkObserveContent",function(){return t._onLabelTextChange()}),Os(14,"span",14),wu(15,"\xa0"),Ts(),Ws(16),Ts(),Ts()),2&e){var n=xs(1),i=xs(13);bs("for",t.inputId),Wo(2),au("mat-checkbox-inner-container-no-side-margin",!i.textContent||!i.textContent.trim()),Wo(1),Es("id",t.inputId)("required",t.required)("checked",t.checked)("disabled",t.disabled)("tabIndex",t.tabIndex),bs("value",t.value)("name",t.name)("aria-label",t.ariaLabel||null)("aria-labelledby",t.ariaLabelledby)("aria-checked",t._getAriaChecked())("aria-describedby",t.ariaDescribedby),Wo(2),Es("matRippleTrigger",n)("matRippleDisabled",t._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Wc(19,YX,"NoopAnimations"===t._animationMode?0:150))}},directives:[rb,vv],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),e}(),rY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),oY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[ob,Gy,gv,rY],Gy,rY]}),e}(),aY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,oY]]}),e}(),sY=["trigger"],uY=["panel"];function cY(e,t){if(1&e&&(Os(0,"span",8),wu(1),Ts()),2&e){var n=Us();Wo(1),ku(n.placeholder)}}function lY(e,t){if(1&e&&(Os(0,"span",12),wu(1),Ts()),2&e){var n=Us(2);Wo(1),ku(n.triggerValue)}}function hY(e,t){1&e&&Ws(0,0,["*ngSwitchCase","true"])}function dY(e,t){1&e&&(Os(0,"span",9),ks(1,lY,2,1,"span",10),ks(2,hY,1,0,"ng-content",11),Ts()),2&e&&(Es("ngSwitch",!!Us().customTrigger),Wo(2),Es("ngSwitchCase",!0))}function fY(e,t){if(1&e){var n=Rs();Os(0,"div",13),Os(1,"div",14,15),js("@transformPanel.done",function(e){return gn(n),Us()._panelDoneAnimatingStream.next(e.toState)})("keydown",function(e){return gn(n),Us()._handleKeydown(e)}),Ws(3,1),Ts(),Ts()}if(2&e){var i=Us();Es("@transformPanelWrap",void 0),Wo(1),Eu("mat-select-panel ",i._getPanelTheme(),""),ou("transform-origin",i._transformOrigin)("font-size",i._triggerFontSize,"px"),Es("ngClass",i.panelClass)("@transformPanel",i.multiple?"showing-multiple":"showing"),bs("id",i.id+"-panel")("aria-multiselectable",i.multiple)("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby())}}var pY=[[["mat-select-trigger"]],"*"],vY=["mat-select-trigger","*"],gY={transformPanelWrap:Jv("transformPanelWrap",[rg("* => void",function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:11,selector:e,animation:t,options:n}}("@transformPanel",[function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return{type:9,options:e}}()],{optional:!0}))]),transformPanel:Jv("transformPanel",[ig("void",ng({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),ig("showing",ng({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),ig("showing-multiple",ng({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),rg("void => *",eg("120ms cubic-bezier(0, 0, 0.2, 1)")),rg("* => void",eg("100ms 25ms linear",ng({opacity:0})))])},mY=0,yY=new Pi("mat-select-scroll-strategy"),bY=new Pi("MAT_SELECT_CONFIG"),_Y={provide:yY,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},wY=function e(t,n){m(this,e),this.source=t,this.value=n},kY=Xy(Yy(Wy(Ky(function(){return function e(t,n,i,r,o){m(this,e),this._elementRef=t,this._defaultErrorStateMatcher=n,this._parentForm=i,this._parentFormGroup=r,this.ngControl=o}}())))),xY=new Pi("MatSelectTrigger"),SY=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,l,h,d,f,p,g,y){var b,_,w,k;return m(this,n),(b=t.call(this,a,o,u,l,d))._viewportRuler=e,b._changeDetectorRef=i,b._ngZone=r,b._dir=s,b._parentFormField=h,b._liveAnnouncer=g,b._defaultOptions=y,b._panelOpen=!1,b._compareWith=function(e,t){return e===t},b._uid="mat-select-"+mY++,b._triggerAriaLabelledBy=null,b._destroy=new re,b._onChange=function(){},b._onTouched=function(){},b._valueId="mat-select-value-"+mY++,b._panelDoneAnimatingStream=new re,b._overlayPanelClass=(null===(_=b._defaultOptions)||void 0===_?void 0:_.overlayPanelClass)||"",b._focused=!1,b.controlType="mat-select",b._required=!1,b._multiple=!1,b._disableOptionCentering=null!==(k=null===(w=b._defaultOptions)||void 0===w?void 0:w.disableOptionCentering)&&void 0!==k&&k,b.ariaLabel="",b.optionSelectionChanges=cz(function(){var e=b.options;return e?e.changes.pipe(hf(e),df(function(){return Ee.apply(void 0,v(e.map(function(e){return e.onSelectionChange})))})):b._ngZone.onStable.pipe(op(1),df(function(){return b.optionSelectionChanges}))}),b.openedChange=new Qc,b._openedStream=b.openedChange.pipe(rf(function(e){return e}),se(function(){})),b._closedStream=b.openedChange.pipe(rf(function(e){return!e}),se(function(){})),b.selectionChange=new Qc,b.valueChange=new Qc,b.ngControl&&(b.ngControl.valueAccessor=c(b)),null!=(null==y?void 0:y.typeaheadDebounceInterval)&&(b._typeaheadDebounceInterval=y.typeaheadDebounceInterval),b._scrollStrategyFactory=p,b._scrollStrategy=b._scrollStrategyFactory(),b.tabIndex=parseInt(f)||0,b.id=b.id,b}return b(n,[{key:"focused",get:function(){return this._focused||this._panelOpen}},{key:"placeholder",get:function(){return this._placeholder},set:function(e){this._placeholder=e,this.stateChanges.next()}},{key:"required",get:function(){return this._required},set:function(e){this._required=Pd(e),this.stateChanges.next()}},{key:"multiple",get:function(){return this._multiple},set:function(e){this._multiple=Pd(e)}},{key:"disableOptionCentering",get:function(){return this._disableOptionCentering},set:function(e){this._disableOptionCentering=Pd(e)}},{key:"compareWith",get:function(){return this._compareWith},set:function(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function(e){(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e)}},{key:"typeaheadDebounceInterval",get:function(){return this._typeaheadDebounceInterval},set:function(e){this._typeaheadDebounceInterval=Md(e)}},{key:"id",get:function(){return this._id},set:function(e){this._id=e||this._uid,this.stateChanges.next()}},{key:"ngOnInit",value:function(){var e=this;this._selectionModel=new Uf(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(Yd(),sf(this._destroy)).subscribe(function(){return e._panelDoneAnimating(e.panelOpen)})}},{key:"ngAfterContentInit",value:function(){var e=this;this._initKeyManager(),this._selectionModel.changed.pipe(sf(this._destroy)).subscribe(function(e){e.added.forEach(function(e){return e.select()}),e.removed.forEach(function(e){return e.deselect()})}),this.options.changes.pipe(hf(null),sf(this._destroy)).subscribe(function(){e._resetOptions(),e._initializeSelection()})}},{key:"ngDoCheck",value:function(){var e=this._getTriggerAriaLabelledby();if(e!==this._triggerAriaLabelledBy){var t=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?t.setAttribute("aria-labelledby",e):t.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}},{key:"ngOnChanges",value:function(e){e.disabled&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}},{key:"ngOnDestroy",value:function(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}},{key:"toggle",value:function(){this.panelOpen?this.close():this.open()}},{key:"open",value:function(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}},{key:"close",value:function(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}},{key:"writeValue",value:function(e){this.value=e}},{key:"registerOnChange",value:function(e){this._onChange=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"panelOpen",get:function(){return this._panelOpen}},{key:"selected",get:function(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}},{key:"triggerValue",get:function(){if(this.empty)return"";if(this._multiple){var e=this._selectionModel.selected.map(function(e){return e.viewValue});return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}},{key:"_isRtl",value:function(){return!!this._dir&&"rtl"===this._dir.value}},{key:"_handleKeydown",value:function(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}},{key:"_handleClosedKeydown",value:function(e){var t=e.keyCode,n=40===t||38===t||37===t||39===t,i=13===t||32===t,r=this._keyManager;if(!r.isTyping()&&i&&!hp(e)||(this.multiple||e.altKey)&&n)e.preventDefault(),this.open();else if(!this.multiple){var o=this.selected;r.onKeydown(e);var a=this.selected;a&&o!==a&&this._liveAnnouncer.announce(a.viewValue,1e4)}}},{key:"_handleOpenKeydown",value:function(e){var t=this._keyManager,n=e.keyCode,i=40===n||38===n,r=t.isTyping();if(i&&e.altKey)e.preventDefault(),this.close();else if(r||13!==n&&32!==n||!t.activeItem||hp(e))if(!r&&this._multiple&&65===n&&e.ctrlKey){e.preventDefault();var o=this.options.some(function(e){return!e.disabled&&!e.selected});this.options.forEach(function(e){e.disabled||(o?e.select():e.deselect())})}else{var a=t.activeItemIndex;t.onKeydown(e),this._multiple&&i&&e.shiftKey&&t.activeItem&&t.activeItemIndex!==a&&t.activeItem._selectViaInteraction()}else e.preventDefault(),t.activeItem._selectViaInteraction()}},{key:"_onFocus",value:function(){this.disabled||(this._focused=!0,this.stateChanges.next())}},{key:"_onBlur",value:function(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}},{key:"_onAttached",value:function(){var e=this;this._overlayDir.positionChange.pipe(op(1)).subscribe(function(){e._changeDetectorRef.detectChanges(),e._positioningSettled()})}},{key:"_getPanelTheme",value:function(){return this._parentFormField?"mat-".concat(this._parentFormField.color):""}},{key:"empty",get:function(){return!this._selectionModel||this._selectionModel.isEmpty()}},{key:"_initializeSelection",value:function(){var e=this;Promise.resolve().then(function(){e._setSelectionByValue(e.ngControl?e.ngControl.value:e._value),e.stateChanges.next()})}},{key:"_setSelectionByValue",value:function(e){var t=this;if(this._selectionModel.selected.forEach(function(e){return e.setInactiveStyles()}),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(function(e){return t._selectValue(e)}),this._sortValues();else{var n=this._selectValue(e);n?this._keyManager.updateActiveItem(n):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}},{key:"_selectValue",value:function(e){var t=this,n=this.options.find(function(n){if(t._selectionModel.isSelected(n))return!1;try{return null!=n.value&&t._compareWith(n.value,e)}catch(i){return!1}});return n&&this._selectionModel.select(n),n}},{key:"_initKeyManager",value:function(){var e=this;this._keyManager=new Ov(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(sf(this._destroy)).subscribe(function(){e.panelOpen&&(!e.multiple&&e._keyManager.activeItem&&e._keyManager.activeItem._selectViaInteraction(),e.focus(),e.close())}),this._keyManager.change.pipe(sf(this._destroy)).subscribe(function(){e._panelOpen&&e.panel?e._scrollOptionIntoView(e._keyManager.activeItemIndex||0):!e._panelOpen&&!e.multiple&&e._keyManager.activeItem&&e._keyManager.activeItem._selectViaInteraction()})}},{key:"_resetOptions",value:function(){var e=this,t=Ee(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(sf(t)).subscribe(function(t){e._onSelect(t.source,t.isUserInput),t.isUserInput&&!e.multiple&&e._panelOpen&&(e.close(),e.focus())}),Ee.apply(void 0,v(this.options.map(function(e){return e._stateChanges}))).pipe(sf(t)).subscribe(function(){e._changeDetectorRef.markForCheck(),e.stateChanges.next()})}},{key:"_onSelect",value:function(e,t){var n=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(n!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),t&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),t&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),n!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}},{key:"_sortValues",value:function(){var e=this;if(this.multiple){var t=this.options.toArray();this._selectionModel.sort(function(n,i){return e.sortComparator?e.sortComparator(n,i,t):t.indexOf(n)-t.indexOf(i)}),this.stateChanges.next()}}},{key:"_propagateChanges",value:function(e){var t;t=this.multiple?this.selected.map(function(e){return e.value}):this.selected?this.selected.value:e,this._value=t,this.valueChange.emit(t),this._onChange(t),this.selectionChange.emit(this._getChangeEvent(t)),this._changeDetectorRef.markForCheck()}},{key:"_highlightCorrectOption",value:function(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}},{key:"_canOpen",value:function(){var e;return!this._panelOpen&&!this.disabled&&(null===(e=this.options)||void 0===e?void 0:e.length)>0}},{key:"focus",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_getPanelAriaLabelledby",value:function(){var e;if(this.ariaLabel)return null;var t=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();return this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}},{key:"_getAriaActiveDescendant",value:function(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}},{key:"_getTriggerAriaLabelledby",value:function(){var e;if(this.ariaLabel)return null;var t=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId(),n=(t?t+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}},{key:"_panelDoneAnimating",value:function(e){this.openedChange.emit(e)}},{key:"setDescribedByIds",value:function(e){this._ariaDescribedby=e.join(" ")}},{key:"onContainerClick",value:function(){this.focus(),this.open()}},{key:"shouldLabelFloat",get:function(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}]),n}(kY);return e.\u0275fac=function(t){return new(t||e)(Ss(Wf),Ss(_c),Ss(Bl),Ss($y),Ss(Yu),Ss(Vf,8),Ss(ZV,8),Ss(oz,8),Ss(Bz,8),Ss(SV,10),Oi("tabindex"),Ss(yY),Ss(zv),Ss(bY,8))},e.\u0275dir=Mt({type:e,viewQuery:function(e,t){var n;(1&e&&(ll(sY,5),ll(uY,5),ll(qp,5)),2&e)&&(cl(n=dl())&&(t.trigger=n.first),cl(n=dl())&&(t.panel=n.first),cl(n=dl())&&(t._overlayDir=n.first))},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[as,Ht]}),e}(),EY=function(){var t,n=function(t){a(i,t);var n=s(i);function i(){var e;return m(this,i),(e=n.apply(this,arguments))._scrollTop=0,e._triggerFontSize=0,e._transformOrigin="top",e._offsetY=0,e._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}],e}return b(i,[{key:"_calculateOverlayScroll",value:function(e,t,n){var i=this._getItemHeight();return Math.min(Math.max(0,i*e-t+i/2),n)}},{key:"ngOnInit",value:function(){var t=this;e(p(i.prototype),"ngOnInit",this).call(this),this._viewportRuler.change().pipe(sf(this._destroy)).subscribe(function(){t.panelOpen&&(t._triggerRect=t.trigger.nativeElement.getBoundingClientRect(),t._changeDetectorRef.markForCheck())})}},{key:"open",value:function(){var t=this;e(p(i.prototype),"_canOpen",this).call(this)&&(e(p(i.prototype),"open",this).call(this),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(op(1)).subscribe(function(){t._triggerFontSize&&t._overlayDir.overlayRef&&t._overlayDir.overlayRef.overlayElement&&(t._overlayDir.overlayRef.overlayElement.style.fontSize="".concat(t._triggerFontSize,"px"))}))}},{key:"_scrollOptionIntoView",value:function(e){var t=mb(e,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===e&&1===t?0:yb((e+t)*n,n,this.panel.nativeElement.scrollTop,256)}},{key:"_positioningSettled",value:function(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}},{key:"_panelDoneAnimating",value:function(t){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),e(p(i.prototype),"_panelDoneAnimating",this).call(this,t)}},{key:"_getChangeEvent",value:function(e){return new wY(this,e)}},{key:"_calculateOverlayOffsetX",value:function(){var e,t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),n=this._viewportRuler.getViewportSize(),i=this._isRtl(),r=this.multiple?56:32;if(this.multiple)e=40;else if(this.disableOptionCentering)e=16;else{var o=this._selectionModel.selected[0]||this.options.first;e=o&&o.group?32:16}i||(e*=-1);var a=0-(t.left+e-(i?r:0)),s=t.right+e-n.width+(i?0:r);a>0?e+=a+8:s>0&&(e-=s+8),this._overlayDir.offsetX=Math.round(e),this._overlayDir.overlayRef.updatePosition()}},{key:"_calculateOverlayOffsetY",value:function(e,t,n){var i,r=this._getItemHeight(),o=(r-this._triggerRect.height)/2,a=Math.floor(256/r);return this.disableOptionCentering?0:(i=0===this._scrollTop?e*r:this._scrollTop===n?(e-(this._getItemCount()-a))*r+(r-(this._getItemCount()*r-256)%r):t-r/2,Math.round(-1*i-o))}},{key:"_checkOverlayWithinViewport",value:function(e){var t=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,o=Math.abs(this._offsetY),a=Math.min(this._getItemCount()*t,256)-o-this._triggerRect.height;a>r?this._adjustPanelUp(a,r):o>i?this._adjustPanelDown(o,i,e):this._transformOrigin=this._getOriginBasedOnOption()}},{key:"_adjustPanelUp",value:function(e,t){var n=Math.round(e-t);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}},{key:"_adjustPanelDown",value:function(e,t,n){var i=Math.round(e-t);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}},{key:"_calculateOverlayPosition",value:function(){var e,t=this._getItemHeight(),n=this._getItemCount(),i=Math.min(n*t,256),r=n*t-i;e=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),e+=mb(e,this.options,this.optionGroups);var o=i/2;this._scrollTop=this._calculateOverlayScroll(e,o,r),this._offsetY=this._calculateOverlayOffsetY(e,o,r),this._checkOverlayWithinViewport(r)}},{key:"_getOriginBasedOnOption",value:function(){var e=this._getItemHeight(),t=(e-this._triggerRect.height)/2;return"50% ".concat(Math.abs(this._offsetY)-t+e/2,"px 0px")}},{key:"_getItemHeight",value:function(){return 3*this._triggerFontSize}},{key:"_getItemCount",value:function(){return this.options.length+this.optionGroups.length}}]),i}(SY);return n.\u0275fac=function(e){return(t||(t=Ei(n)))(e||n)},n.\u0275cmp=Et({type:n,selectors:[["mat-select"]],contentQueries:function(e,t,n){var i;(1&e&&(hl(n,xY,5),hl(n,gb,5),hl(n,db,5)),2&e)&&(cl(i=dl())&&(t.customTrigger=i.first),cl(i=dl())&&(t.options=i),cl(i=dl())&&(t.optionGroups=i))},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(e,t){1&e&&js("keydown",function(e){return t._handleKeydown(e)})("focus",function(){return t._onFocus()})("blur",function(){return t._onBlur()}),2&e&&(bs("id",t.id)("tabindex",t.tabIndex)("aria-controls",t.panelOpen?t.id+"-panel":null)("aria-expanded",t.panelOpen)("aria-label",t.ariaLabel||null)("aria-required",t.required.toString())("aria-disabled",t.disabled.toString())("aria-invalid",t.errorState)("aria-describedby",t._ariaDescribedby||null)("aria-activedescendant",t._getAriaActiveDescendant()),au("mat-select-disabled",t.disabled)("mat-select-invalid",t.errorState)("mat-select-required",t.required)("mat-select-empty",t.empty)("mat-select-multiple",t.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[Uu([{provide:Az,useExisting:n},{provide:ub,useExisting:n}]),as],ngContentSelectors:vY,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(e,t){if(1&e&&(Gs(pY),Os(0,"div",0,1),js("click",function(){return t.toggle()}),Os(3,"div",2),ks(4,cY,2,1,"span",3),ks(5,dY,3,2,"span",4),Ts(),Os(6,"div",5),As(7,"div",6),Ts(),Ts(),ks(8,fY,4,14,"ng-template",7),js("backdropClick",function(){return t.close()})("attach",function(){return t._onAttached()})("detach",function(){return t.close()})),2&e){var n=xs(1);bs("aria-owns",t.panelOpen?t.id+"-panel":null),Wo(3),Es("ngSwitch",t.empty),bs("id",t._valueId),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngSwitchCase",!1),Wo(3),Es("cdkConnectedOverlayPanelClass",t._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",t._scrollStrategy)("cdkConnectedOverlayOrigin",n)("cdkConnectedOverlayOpen",t.panelOpen)("cdkConnectedOverlayPositions",t._positions)("cdkConnectedOverlayMinWidth",null==t._triggerRect?null:t._triggerRect.width)("cdkConnectedOverlayOffsetY",t._offsetY)}},directives:[Wp,Bh,Vh,qp,zh,Mh],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[gY.transformPanelWrap,gY.transformPanel]},changeDetection:0}),n}(),CY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[_Y],imports:[[Yh,Yp,bb,Gy],qf,zz,bb,Gy]}),e}(),OY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,zz,CY]]}),e}(),TY=r(25430),AY=r(39053),PY=r(26202),MY=["tooltipTemplate"],IY=["leftOuterSelectionBar"],RY=["rightOuterSelectionBar"],DY=["fullBar"],NY=["selectionBar"],LY=["minHandle"],jY=["maxHandle"],FY=["floorLabel"],BY=["ceilLabel"],VY=["minHandleLabel"],zY=["maxHandleLabel"],UY=["combinedLabel"],HY=["ticksElement"];function GY(e,t){if(1&e&&As(0,"ng5-slider-tooltip-wrapper",31),2&e){var n=Us().$implicit;Es("template",Us().tooltipTemplate)("tooltip",n.valueTooltip)("placement",n.valueTooltipPlacement)("content",n.value)}}function WY(e,t){1&e&&As(0,"span",32),2&e&&Es("innerHTML",Us().$implicit.legend,Hr)}var qY=function(e){return{"ng5-slider-selected":e}};function XY(e,t){if(1&e&&(Os(0,"span",27),As(1,"ng5-slider-tooltip-wrapper",28),ks(2,GY,1,4,"ng5-slider-tooltip-wrapper",29),ks(3,WY,1,1,"span",30),Ts()),2&e){var n=t.$implicit,i=Us();Es("ngClass",Wc(7,qY,n.selected))("ngStyle",n.style),Wo(1),Es("template",i.tooltipTemplate)("tooltip",n.tooltip)("placement",n.tooltipPlacement),Wo(1),Es("ngIf",null!=n.value),Wo(1),Es("ngIf",null!=n.legend)}}function YY(e,t){}function KY(e,t){1&e&&ks(0,YY,0,0,"ng-template")}var $Y=function(e,t,n){return{tooltip:e,placement:t,content:n}};function QY(e,t){if(1&e&&(Ps(0),ks(1,KY,1,0,void 0,1),Ms()),2&e){var n=Us();Wo(1),Es("ngTemplateOutlet",n.template)("ngTemplateOutletContext",function(e,t,n,i,r,o){return function(e,t,n,i,r,o,a,s){var u=t+n;return function(e,t,n,i,r){var o=ys(e,t,n,i);return ms(e,t+2,r)||o}(e,u,r,o,a)?gs(e,u+3,s?i.call(s,r,o,a):i(r,o,a)):qc(e,u+3)}(pn(),Sn(),e,t,n,i,r,o)}(2,$Y,n.tooltip,n.placement,n.content))}}function ZY(e,t){if(1&e&&(Ps(0),Os(1,"div",2),wu(2),Ts(),Ms()),2&e){var n=Us();Wo(1),bs("title",n.tooltip)("data-tooltip-placement",n.placement),Wo(1),xu(" ",n.content," ")}}var JY={Min:0,Max:1};JY[JY.Min]="Min",JY[JY.Max]="Max";var eK={Low:0,High:1,Floor:2,Ceil:3,TickValue:4};eK[eK.Low]="Low",eK[eK.High]="High",eK[eK.Floor]="Floor",eK[eK.Ceil]="Ceil",eK[eK.TickValue]="TickValue";var tK=function e(){m(this,e),this.floor=0,this.ceil=null,this.step=1,this.minRange=null,this.maxRange=null,this.pushRange=!1,this.minLimit=null,this.maxLimit=null,this.translate=null,this.combineLabels=null,this.getLegend=null,this.stepsArray=null,this.bindIndexForStepsArray=!1,this.draggableRange=!1,this.draggableRangeOnly=!1,this.showSelectionBar=!1,this.showSelectionBarEnd=!1,this.showSelectionBarFromValue=null,this.showOuterSelectionBars=!1,this.hidePointerLabels=!1,this.hideLimitLabels=!1,this.autoHideLimitLabels=!0,this.readOnly=!1,this.disabled=!1,this.mouseEventsInterval=50,this.touchEventsInterval=50,this.inputEventsInterval=100,this.outputEventsInterval=100,this.showTicks=!1,this.showTicksValues=!1,this.tickStep=null,this.tickValueStep=1,this.ticksArray=null,this.ticksTooltip=null,this.ticksValuesTooltip=null,this.vertical=!1,this.getSelectionBarColor=null,this.getTickColor=null,this.getPointerColor=null,this.keyboardSupport=!0,this.scale=1,this.enforceStep=!0,this.enforceRange=!0,this.noSwitching=!1,this.onlyBindHandles=!1,this.rightToLeft=!1,this.reversedControls=!1,this.boundPointerLabels=!0,this.logScale=!1,this.customValueToPosition=null,this.customPositionToValue=null,this.precisionLimit=12,this.selectionBarGradient=null,this.ariaLabel=null,this.ariaLabelledBy=null,this.ariaLabelHigh=null,this.ariaLabelledByHigh=null,this.handleDimension=null,this.barDimension=null,this.animate=!0},nK=function e(){m(this,e)},iK=function(){function e(){m(this,e)}return b(e,null,[{key:"isNullOrUndefined",value:function(e){return null==e}},{key:"linearValueToPosition",value:function(e,t,n){return(e-t)/(n-t)}},{key:"logValueToPosition",value:function(e,t,n){return((e=Math.log(e))-(t=Math.log(t)))/((n=Math.log(n))-t)}},{key:"linearPositionToValue",value:function(e,t,n){return e*(n-t)+t}},{key:"logPositionToValue",value:function(e,t,n){return t=Math.log(t),n=Math.log(n),Math.exp(e*(n-t)+t)}},{key:"findStepIndex",value:function(e,t){for(var n=t.map(function(t){return Math.abs(e-t.value)}),i=0,r=0;r0&&0===this.dimension)&&(t=!0),this._value=e,this.elemRef.nativeElement.innerHTML=e,t&&this.calculateDimension()}}]),n}(uK);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Qu),Ss(_c))},e.\u0275dir=Mt({type:e,selectors:[["","ng5SliderLabel",""]],features:[as]}),e}(),hK=function e(){m(this,e),this.selected=!1,this.style={},this.tooltip=null,this.tooltipPlacement=null,this.value=null,this.valueTooltip=null,this.valueTooltipPlacement=null,this.legend=null},dK=function e(){m(this,e),this.active=!1,this.value=0,this.difference=0,this.position=0,this.lowLimit=0,this.highLimit=0},fK=function(){function e(){m(this,e)}return b(e,null,[{key:"compare",value:function(e,t){return!(iK.isNullOrUndefined(e)&&iK.isNullOrUndefined(t)||iK.isNullOrUndefined(e)!==iK.isNullOrUndefined(t))&&e.value===t.value&&e.highValue===t.highValue}}]),e}(),pK=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,null,[{key:"compare",value:function(e,t){return!(iK.isNullOrUndefined(e)&&iK.isNullOrUndefined(t)||iK.isNullOrUndefined(e)!==iK.isNullOrUndefined(t))&&e.value===t.value&&e.highValue===t.highValue&&e.forceChange===t.forceChange}}]),n}(fK),vK={provide:nV,useExisting:ze(function(){return gK}),multi:!0},gK=function(){var e=function(){function e(t,n,i,r){m(this,e),this.renderer=t,this.elementRef=n,this.changeDetectionRef=i,this.zone=r,this.value=null,this.valueChange=new Qc,this.highValue=null,this.highValueChange=new Qc,this.options=new tK,this.userChangeStart=new Qc,this.userChange=new Qc,this.userChangeEnd=new Qc,this.initHasRun=!1,this.inputModelChangeSubject=new TY.xQ,this.inputModelChangeSubscription=null,this.outputModelChangeSubject=new TY.xQ,this.outputModelChangeSubscription=null,this.viewLowValue=null,this.viewHighValue=null,this.viewOptions=new tK,this.handleHalfDimension=0,this.maxHandlePosition=0,this.currentTrackingPointer=null,this.currentFocusPointer=null,this.firstKeyDown=!1,this.touchId=null,this.dragging=new dK,this.sliderElementVerticalClass=!1,this.sliderElementAnimateClass=!1,this.sliderElementDisabledAttr=null,this.barStyle={},this.minPointerStyle={},this.maxPointerStyle={},this.fullBarTransparentClass=!1,this.selectionBarDraggableClass=!1,this.ticksUnderValuesClass=!1,this.intermediateTicks=!1,this.ticks=[],this.eventListenerHelper=null,this.onMoveEventListener=null,this.onEndEventListener=null,this.resizeObserver=null,this.onTouchedCallback=null,this.onChangeCallback=null,this.eventListenerHelper=new sK(this.renderer)}return b(e,[{key:"manualRefresh",set:function(e){var t=this;this.unsubscribeManualRefresh(),this.manualRefreshSubscription=e.subscribe(function(){setTimeout(function(){return t.calculateViewDimensionsAndDetectChanges()})})}},{key:"triggerFocus",set:function(e){var t=this;this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=e.subscribe(function(e){t.focusPointer(e)})}},{key:"range",get:function(){return!iK.isNullOrUndefined(this.value)&&!iK.isNullOrUndefined(this.highValue)}},{key:"showTicks",get:function(){return this.viewOptions.showTicks}},{key:"ngOnInit",value:function(){this.viewOptions=new tK,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState()}},{key:"ngAfterViewInit",value:function(){this.applyOptions(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval),this.subscribeOutputModelChangeSubject(this.viewOptions.outputEventsInterval),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}},{key:"ngOnChanges",value:function(e){iK.isNullOrUndefined(e.options)||this.onChangeOptions(),(!iK.isNullOrUndefined(e.value)||!iK.isNullOrUndefined(e.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}},{key:"ngOnDestroy",value:function(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}},{key:"writeValue",value:function(e){e instanceof Array?(this.value=e[0],this.highValue=e[1]):this.value=e,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}},{key:"registerOnChange",value:function(e){this.onChangeCallback=e}},{key:"registerOnTouched",value:function(e){this.onTouchedCallback=e}},{key:"setDisabledState",value:function(e){this.viewOptions.disabled=e,this.updateDisabledState()}},{key:"onResize",value:function(e){this.calculateViewDimensionsAndDetectChanges()}},{key:"subscribeInputModelChangeSubject",value:function(e){var t=this;this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe((0,AY.distinctUntilChanged)(pK.compare),(0,AY.filter)(function(e){return!e.forceChange&&!e.internalChange}),iK.isNullOrUndefined(e)?(0,AY.tap)(function(){}):(0,AY.throttleTime)(e,void 0,{leading:!0,trailing:!0})).subscribe(function(e){return t.applyInputModelChange(e)})}},{key:"subscribeOutputModelChangeSubject",value:function(e){var t=this;this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe((0,AY.distinctUntilChanged)(pK.compare),iK.isNullOrUndefined(e)?(0,AY.tap)(function(){}):(0,AY.throttleTime)(e,void 0,{leading:!0,trailing:!0})).subscribe(function(e){return t.publishOutputModelChange(e)})}},{key:"subscribeResizeObserver",value:function(){var e=this;rK.isResizeObserverAvailable()&&(this.resizeObserver=new ResizeObserver(function(){return e.calculateViewDimensionsAndDetectChanges()}),this.resizeObserver.observe(this.elementRef.nativeElement))}},{key:"unsubscribeResizeObserver",value:function(){rK.isResizeObserverAvailable()&&null!==this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}},{key:"unsubscribeOnMove",value:function(){iK.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}},{key:"unsubscribeOnEnd",value:function(){iK.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null)}},{key:"unsubscribeInputModelChangeSubject",value:function(){iK.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}},{key:"unsubscribeOutputModelChangeSubject",value:function(){iK.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}},{key:"unsubscribeManualRefresh",value:function(){iK.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}},{key:"unsubscribeTriggerFocus",value:function(){iK.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}},{key:"getPointerElement",value:function(e){return e===JY.Min?this.minHandleElement:e===JY.Max?this.maxHandleElement:null}},{key:"getCurrentTrackingValue",value:function(){return this.currentTrackingPointer===JY.Min?this.viewLowValue:this.currentTrackingPointer===JY.Max?this.viewHighValue:null}},{key:"modelValueToViewValue",value:function(e){return iK.isNullOrUndefined(e)?NaN:iK.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+e:iK.findStepIndex(+e,this.viewOptions.stepsArray)}},{key:"viewValueToModelValue",value:function(e){return iK.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?e:this.getStepValue(e)}},{key:"getStepValue",value:function(e){var t=this.viewOptions.stepsArray[e];return iK.isNullOrUndefined(t)?NaN:t.value}},{key:"applyViewChange",value:function(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!0})}},{key:"applyInputModelChange",value:function(e){var t=this.normaliseModelValues(e),n=!fK.compare(e,t);n&&(this.value=t.value,this.highValue=t.highValue),this.viewLowValue=this.modelValueToViewValue(t.value),this.viewHighValue=this.range?this.modelValueToViewValue(t.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:t.value,highValue:t.highValue,forceChange:n,userEventInitiated:!1})}},{key:"publishOutputModelChange",value:function(e){var t=this,n=function(){t.valueChange.emit(e.value),t.range&&t.highValueChange.emit(e.highValue),iK.isNullOrUndefined(t.onChangeCallback)||t.onChangeCallback(t.range?[e.value,e.highValue]:e.value),iK.isNullOrUndefined(t.onTouchedCallback)||t.onTouchedCallback(t.range?[e.value,e.highValue]:e.value)};e.userEventInitiated?(n(),this.userChange.emit(this.getChangeContext())):setTimeout(function(){n()})}},{key:"normaliseModelValues",value:function(e){var t=new fK;if(t.value=e.value,t.highValue=e.highValue,this.viewOptions.enforceStep&&(t.value=this.roundStep(t.value),this.range&&(t.highValue=this.roundStep(t.highValue))),!iK.isNullOrUndefined(this.viewOptions.stepsArray)||!this.viewOptions.enforceRange)return t;if(t.value=oK.clampToRange(t.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(t.highValue=oK.clampToRange(t.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&e.value>e.highValue)if(this.viewOptions.noSwitching)t.value=t.highValue;else{var n=e.value;t.value=e.highValue,t.highValue=n}return t}},{key:"renormaliseModelValues",value:function(){var e={value:this.value,highValue:this.highValue},t=this.normaliseModelValues(e);fK.compare(t,e)||(this.value=t.value,this.highValue=t.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!0,userEventInitiated:!1}))}},{key:"onChangeOptions",value:function(){if(this.initHasRun){var e=this.viewOptions.inputEventsInterval,t=this.viewOptions.outputEventsInterval;this.applyOptions(),e!==this.viewOptions.inputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval)),t!==this.viewOptions.outputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.outputEventsInterval)),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider()}}},{key:"applyOptions",value:function(){if(this.viewOptions=new tK,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!iK.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!iK.isNullOrUndefined(this.viewOptions.tickStep)||!iK.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!iK.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),iK.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),iK.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=function(e,t){return e+" - "+t}),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}},{key:"applyStepsArrayOptions",value:function(){var e=this;this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,iK.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=function(t){return String(e.viewOptions.bindIndexForStepsArray?e.getStepValue(t):t)}),this.viewOptions.getLegend=function(t){return e.viewOptions.stepsArray[t].legend}}},{key:"applyFloorCeilOptions",value:function(){if(iK.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),iK.isNullOrUndefined(this.viewOptions.ceil)||iK.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,iK.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=function(e){return String(e)})}},{key:"resetSlider",value:function(){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.unbindEvents(),this.manageEventsBindings(),this.updateDisabledState(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}},{key:"focusPointer",value:function(e){e!==JY.Min&&e!==JY.Max&&(e=JY.Min),e===JY.Min?this.minHandleElement.focus():this.range&&e===JY.Max&&this.maxHandleElement.focus()}},{key:"refocusPointerIfNeeded",value:function(){iK.isNullOrUndefined(this.currentFocusPointer)||(this.onPointerFocus(this.currentFocusPointer),this.getPointerElement(this.currentFocusPointer).focus())}},{key:"manageElementsStyle",value:function(){var e=this;this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);var t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(function(){e.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(function(){e.sliderElementAnimateClass=e.viewOptions.animate})}},{key:"manageEventsBindings",value:function(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}},{key:"updateDisabledState",value:function(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}},{key:"updateVerticalState",value:function(){this.sliderElementVerticalClass=this.viewOptions.vertical;var e,t=_(this.getAllSliderElements());try{for(t.s();!(e=t.n()).done;){var n=e.value;iK.isNullOrUndefined(n)||n.setVertical(this.viewOptions.vertical)}}catch(i){t.e(i)}finally{t.f()}}},{key:"updateScale",value:function(){var e,t=_(this.getAllSliderElements());try{for(t.s();!(e=t.n()).done;){e.value.setScale(this.viewOptions.scale)}}catch(n){t.e(n)}finally{t.f()}}},{key:"getAllSliderElements",value:function(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}},{key:"initHandles",value:function(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}},{key:"addAccessibility",value:function(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.viewOptions.vertical&&(this.minHandleElement.ariaOrientation="vertical"),iK.isNullOrUndefined(this.viewOptions.ariaLabel)?iK.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical?"vertical":"horizontal",iK.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?iK.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}},{key:"updateAriaAttributes",value:function(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,eK.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,eK.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}},{key:"calculateViewDimensions",value:function(){iK.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);var e=this.minHandleElement.dimension;this.handleHalfDimension=e/2,iK.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-e,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}},{key:"calculateViewDimensionsAndDetectChanges",value:function(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}},{key:"isRefDestroyed",value:function(){return this.changeDetectionRef.destroyed}},{key:"updateTicksScale",value:function(){var e=this;if(this.viewOptions.showTicks){var t=iK.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,n=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();var i=t.map(function(t){var i=e.valueToPosition(t);e.viewOptions.vertical&&(i=e.maxHandlePosition-i);var r=n+"("+Math.round(i)+"px)",o=new hK;if(o.selected=e.isTickSelected(t),o.style={"-webkit-transform":r,"-moz-transform":r,"-o-transform":r,"-ms-transform":r,transform:r},o.selected&&!iK.isNullOrUndefined(e.viewOptions.getSelectionBarColor)&&(o.style["background-color"]=e.getSelectionBarColor()),!o.selected&&!iK.isNullOrUndefined(e.viewOptions.getTickColor)&&(o.style["background-color"]=e.getTickColor(t)),iK.isNullOrUndefined(e.viewOptions.ticksTooltip)||(o.tooltip=e.viewOptions.ticksTooltip(t),o.tooltipPlacement=e.viewOptions.vertical?"right":"top"),e.viewOptions.showTicksValues&&t%e.viewOptions.tickValueStep==0&&(o.value=e.getDisplayValue(t,eK.TickValue),iK.isNullOrUndefined(e.viewOptions.ticksValuesTooltip)||(o.valueTooltip=e.viewOptions.ticksValuesTooltip(t),o.valueTooltipPlacement=e.viewOptions.vertical?"right":"top")),!iK.isNullOrUndefined(e.viewOptions.getLegend)){var a=e.viewOptions.getLegend(t);iK.isNullOrUndefined(a)||(o.legend=a)}return o});if(iK.isNullOrUndefined(this.ticks)||this.ticks.length!==i.length)this.ticks=i;else for(var r=0;r=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&e<=this.viewLowValue)return!0}else{var t=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>t&&e>=t&&e<=this.viewLowValue)return!0;if(this.viewLowValue=this.viewLowValue)return!0}return!!(this.range&&e>=this.viewLowValue&&e<=this.viewHighValue)}},{key:"updateFloorLabel",value:function(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,eK.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}},{key:"updateCeilLabel",value:function(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,eK.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}},{key:"updateHandles",value:function(e,t){e===JY.Min?this.updateLowHandle(t):e===JY.Max&&this.updateHighHandle(t),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}},{key:"getHandleLabelPos",value:function(e,t){var n=e===JY.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,i=t-n/2+this.handleHalfDimension,r=this.fullBarElement.dimension-n;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&e===JY.Min||!this.viewOptions.rightToLeft&&e===JY.Max?Math.min(i,r):Math.min(Math.max(i,0),r):i}},{key:"updateLowHandle",value:function(e){this.minHandleElement.setPosition(e),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,eK.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(JY.Min,e)),iK.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(JY.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}},{key:"updateHighHandle",value:function(e){this.maxHandleElement.setPosition(e),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,eK.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(JY.Max,e)),iK.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(JY.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}},{key:"updateFloorAndCeilLabelsVisibility",value:function(){if(!this.viewOptions.hidePointerLabels){var e=!1,t=!1,n=this.isLabelBelowFloorLabel(this.minHandleLabelElement),i=this.isLabelAboveCeilLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),o=this.isLabelBelowFloorLabel(this.combinedLabelElement),a=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(n?(e=!0,this.floorLabelElement.hide()):(e=!1,this.floorLabelElement.show()),i?(t=!0,this.ceilLabelElement.hide()):(t=!1,this.ceilLabelElement.show()),this.range){var s=this.combinedLabelElement.isVisible()?a:r,u=this.combinedLabelElement.isVisible()?o:n;s?this.ceilLabelElement.hide():t||this.ceilLabelElement.show(),u?this.floorLabelElement.hide():e||this.floorLabelElement.show()}}}},{key:"isLabelBelowFloorLabel",value:function(e){var t=e.position,n=this.floorLabelElement.position;return this.viewOptions.rightToLeft?t+e.dimension>=n-2:t<=n+this.floorLabelElement.dimension+2}},{key:"isLabelAboveCeilLabel",value:function(e){var t=e.position,n=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?t<=n+this.ceilLabelElement.dimension+2:t+e.dimension>=n-2}},{key:"updateSelectionBar",value:function(){var e=0,t=0,n=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,i=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)t=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),e=i;else if(iK.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))n?(t=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),e=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(t=this.minHandleElement.position+this.handleHalfDimension,e=0);else{var r=this.viewOptions.showSelectionBarFromValue,o=this.valueToPosition(r);(this.viewOptions.rightToLeft?this.viewLowValue<=r:this.viewLowValue>r)?(t=this.minHandleElement.position-o,e=o+this.handleHalfDimension):(t=o-this.minHandleElement.position,e=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(t),this.selectionBarElement.setPosition(e),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(e),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(e+t)),this.leftOuterSelectionBarElement.setPosition(e+t)):(this.leftOuterSelectionBarElement.setDimension(e),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(e+t)),this.rightOuterSelectionBarElement.setPosition(e+t))),iK.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!iK.isNullOrUndefined(this.viewOptions.selectionBarGradient)){var a=iK.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),s=a-e>0&&!n||a-e<=0&&n;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?s?"bottom":"top":s?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(a+t+e+(s?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=a-e+(s?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{var u=this.getSelectionBarColor();this.barStyle={backgroundColor:u}}}},{key:"getSelectionBarColor",value:function(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}},{key:"getPointerColor",value:function(e){return this.viewOptions.getPointerColor(e===JY.Max?this.highValue:this.value,e)}},{key:"getTickColor",value:function(e){return this.viewOptions.getTickColor(e)}},{key:"updateCombinedLabel",value:function(){if(this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position){var e=this.getDisplayValue(this.viewLowValue,eK.Low),t=this.getDisplayValue(this.viewHighValue,eK.High),n=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(t,e):this.viewOptions.combineLabels(e,t);this.combinedLabelElement.setValue(n);var i=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(i),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}},{key:"getDisplayValue",value:function(e,t){return!iK.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(e=this.getStepValue(e)),this.viewOptions.translate(e,t)}},{key:"roundStep",value:function(e,t){var n=iK.isNullOrUndefined(t)?this.viewOptions.step:t,i=oK.roundToPrecisionLimit((e-this.viewOptions.floor)/n,this.viewOptions.precisionLimit);return i=Math.round(i)*n,oK.roundToPrecisionLimit(this.viewOptions.floor+i,this.viewOptions.precisionLimit)}},{key:"valueToPosition",value:function(e){var t=iK.linearValueToPosition;iK.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(t=iK.logValueToPosition):t=this.viewOptions.customValueToPosition;var n=t(e=oK.clampToRange(e,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return iK.isNullOrUndefined(n)&&(n=0),this.viewOptions.rightToLeft&&(n=1-n),n*this.maxHandlePosition}},{key:"positionToValue",value:function(e){var t=e/this.maxHandlePosition;this.viewOptions.rightToLeft&&(t=1-t);var n=iK.linearPositionToValue;iK.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(n=iK.logPositionToValue):n=this.viewOptions.customPositionToValue;var i=n(t,this.viewOptions.floor,this.viewOptions.ceil);return iK.isNullOrUndefined(i)?0:i}},{key:"getEventXY",value:function(e,t){if(e instanceof MouseEvent)return this.viewOptions.vertical?e.clientY:e.clientX;var n=0,i=e.touches;if(!iK.isNullOrUndefined(t))for(var r=0;ri?JY.Max:this.viewOptions.rightToLeft?t>this.minHandleElement.position?JY.Min:JY.Max:t=this.maxHandlePosition?o=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(o=this.positionToValue(a),o=t&&!iK.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(o,this.viewOptions.tickStep):this.roundStep(o)),this.positionTrackingHandle(o)}},{key:"onEnd",value:function(e){rK.isTouchEvent(e)&&e.changedTouches[0].identifier!==this.touchId||(this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext()))}},{key:"onPointerFocus",value:function(e){var t=this,n=this.getPointerElement(e);n.on("blur",function(){return t.onPointerBlur(n)}),n.on("keydown",function(e){return t.onKeyboardEvent(e)}),n.on("keyup",function(){return t.onKeyUp()}),n.active=!0,this.currentTrackingPointer=e,this.currentFocusPointer=e,this.firstKeyDown=!0}},{key:"onKeyUp",value:function(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}},{key:"onPointerBlur",value:function(e){e.off("blur"),e.off("keydown"),e.off("keyup"),e.active=!1,iK.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}},{key:"getKeyActions",value:function(e){var t=this.viewOptions.ceil-this.viewOptions.floor,n=e+this.viewOptions.step,i=e-this.viewOptions.step,r=e+t/10,o=e-t/10;this.viewOptions.reversedControls&&(n=e-this.viewOptions.step,i=e+this.viewOptions.step,r=e-t/10,o=e+t/10);var a={UP:n,DOWN:i,LEFT:i,RIGHT:n,PAGEUP:r,PAGEDOWN:o,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(a.LEFT=n,a.RIGHT=i,this.viewOptions.vertical&&(a.UP=i,a.DOWN=n)),a}},{key:"onKeyboardEvent",value:function(e){var t=this.getCurrentTrackingValue(),n=iK.isNullOrUndefined(e.keyCode)?e.which:e.keyCode,i=this.getKeyActions(t)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[n]];if(!iK.isNullOrUndefined(i)&&!iK.isNullOrUndefined(this.currentTrackingPointer)){e.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));var r=oK.clampToRange(i,this.viewOptions.floor,this.viewOptions.ceil),o=this.roundStep(r);if(this.viewOptions.draggableRangeOnly){var a,s,u=this.viewHighValue-this.viewLowValue;this.currentTrackingPointer===JY.Min?(a=o,(s=o+u)>this.viewOptions.ceil&&(a=(s=this.viewOptions.ceil)-u)):this.currentTrackingPointer===JY.Max&&(s=o,(a=o-u)=this.maxHandlePosition-t;if(o<=n){if(0===i.position)return;a=this.getMinValue(o,!0,!1),s=this.getMaxValue(o,!0,!1)}else if(u){if(r.position===this.maxHandlePosition)return;s=this.getMaxValue(o,!0,!0),a=this.getMinValue(o,!0,!0)}else a=this.getMinValue(o,!1,!1),s=this.getMaxValue(o,!1,!1);this.positionTrackingBar(a,s)}},{key:"positionTrackingBar",value:function(e,t){!iK.isNullOrUndefined(this.viewOptions.minLimit)&&ethis.viewOptions.maxLimit&&(e=oK.roundToPrecisionLimit((t=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=e,this.viewHighValue=t,this.applyViewChange(),this.updateHandles(JY.Min,this.valueToPosition(e)),this.updateHandles(JY.Max,this.valueToPosition(t))}},{key:"positionTrackingHandle",value:function(e){e=this.applyMinMaxLimit(e),this.range&&(this.viewOptions.pushRange?e=this.applyPushRange(e):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===JY.Min&&e>this.viewHighValue?e=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===JY.Max&&ethis.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(JY.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=JY.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===JY.Max&&ethis.viewOptions.maxLimit?this.viewOptions.maxLimit:e}},{key:"applyMinMaxRange",value:function(e){var t=Math.abs(e-(this.currentTrackingPointer===JY.Min?this.viewHighValue:this.viewLowValue));if(!iK.isNullOrUndefined(this.viewOptions.minRange)&&tthis.viewOptions.maxRange){if(this.currentTrackingPointer===JY.Min)return oK.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===JY.Max)return oK.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return e}},{key:"applyPushRange",value:function(e){var t=this.currentTrackingPointer===JY.Min?this.viewHighValue-e:e-this.viewLowValue,n=iK.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,i=this.viewOptions.maxRange;return ti&&(this.currentTrackingPointer===JY.Min?(this.viewHighValue=oK.roundToPrecisionLimit(e+i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(JY.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===JY.Max&&(this.viewLowValue=oK.roundToPrecisionLimit(e-i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(JY.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),e}},{key:"getChangeContext",value:function(){var e=new nK;return e.pointerType=this.currentTrackingPointer,e.value=+this.value,this.range&&(e.highValue=+this.highValue),e}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Qu),Ss(Yu),Ss(_c),Ss(Bl))},e.\u0275cmp=Et({type:e,selectors:[["ng5-slider"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,MY,5),2&e)&&(cl(i=dl())&&(t.tooltipTemplate=i.first))},viewQuery:function(e,t){var n;(1&e&&(ll(IY,5,uK),ll(RY,5,uK),ll(DY,5,uK),ll(NY,5,uK),ll(LY,5,cK),ll(jY,5,cK),ll(FY,5,lK),ll(BY,5,lK),ll(VY,5,lK),ll(zY,5,lK),ll(UY,5,lK),ll(HY,5,uK)),2&e)&&(cl(n=dl())&&(t.leftOuterSelectionBarElement=n.first),cl(n=dl())&&(t.rightOuterSelectionBarElement=n.first),cl(n=dl())&&(t.fullBarElement=n.first),cl(n=dl())&&(t.selectionBarElement=n.first),cl(n=dl())&&(t.minHandleElement=n.first),cl(n=dl())&&(t.maxHandleElement=n.first),cl(n=dl())&&(t.floorLabelElement=n.first),cl(n=dl())&&(t.ceilLabelElement=n.first),cl(n=dl())&&(t.minHandleLabelElement=n.first),cl(n=dl())&&(t.maxHandleLabelElement=n.first),cl(n=dl())&&(t.combinedLabelElement=n.first),cl(n=dl())&&(t.ticksElement=n.first))},hostAttrs:[1,"ng5-slider"],hostVars:5,hostBindings:function(e,t){1&e&&js("resize",function(e){return t.onResize(e)},!1,eo),2&e&&(bs("disabled",t.sliderElementDisabledAttr),au("vertical",t.sliderElementVerticalClass)("animate",t.sliderElementAnimateClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},features:[Uu([vK]),Ht],decls:29,vars:13,consts:[["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-left-out-selection"],["leftOuterSelectionBar",""],[1,"ng5-slider-span","ng5-slider-bar"],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-right-out-selection"],["rightOuterSelectionBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-full-bar"],["fullBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-selection-bar"],["selectionBar",""],[1,"ng5-slider-span","ng5-slider-bar","ng5-slider-selection",3,"ngStyle"],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-min",3,"ngStyle"],["minHandle",""],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-max",3,"ngStyle"],["maxHandle",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-floor"],["floorLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-ceil"],["ceilLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-value"],["minHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-high"],["maxHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-combined"],["combinedLabel",""],["ng5SliderElement","",1,"ng5-slider-ticks",3,"hidden"],["ticksElement",""],["class","ng5-slider-tick",3,"ngClass","ngStyle",4,"ngFor","ngForOf"],[1,"ng5-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],["class","ng5-slider-span ng5-slider-tick-value",3,"template","tooltip","placement","content",4,"ngIf"],["class","ng5-slider-span ng5-slider-tick-legend",3,"innerHTML",4,"ngIf"],[1,"ng5-slider-span","ng5-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ng5-slider-span","ng5-slider-tick-legend",3,"innerHTML"]],template:function(e,t){1&e&&(Os(0,"span",0,1),As(2,"span",2),Ts(),Os(3,"span",3,4),As(5,"span",2),Ts(),Os(6,"span",5,6),As(8,"span",2),Ts(),Os(9,"span",7,8),As(11,"span",9),Ts(),As(12,"span",10,11),As(14,"span",12,13),As(16,"span",14,15),As(18,"span",16,17),As(20,"span",18,19),As(22,"span",20,21),As(24,"span",22,23),Os(26,"span",24,25),ks(28,XY,4,9,"span",26),Ts()),2&e&&(Wo(6),au("ng5-slider-transparent",t.fullBarTransparentClass),Wo(3),au("ng5-slider-draggable",t.selectionBarDraggableClass),Wo(2),Es("ngStyle",t.barStyle),Wo(1),Es("ngStyle",t.minPointerStyle),Wo(2),ou("display",t.range?"inherit":"none"),Es("ngStyle",t.maxPointerStyle),Wo(12),au("ng5-slider-ticks-values-under",t.ticksUnderValuesClass),Es("hidden",!t.showTicks),Wo(2),Es("ngForOf",t.ticks))},directives:function(){return[uK,Uh,cK,lK,Rh,Mh,mK,Nh]},styles:[".ng5-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y} .ng5-slider.with-legend{margin-bottom:40px} .ng5-slider[disabled]{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ng5-slider[disabled] .ng5-slider-draggable{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-selection{background:#8b91a2} .ng5-slider[disabled] .ng5-slider-tick{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-tick.ng5-slider-selected{background:#8b91a2} .ng5-slider .ng5-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ng5-slider .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider .ng5-slider-bar-wrapper{left:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ng5-slider .ng5-slider-draggable{cursor:move} .ng5-slider .ng5-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;border-radius:2px} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-transparent .ng5-slider-bar{background:0 0} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar{background:#df002d} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar{background:#03a688} .ng5-slider .ng5-slider-selection{z-index:2;background:#0db9f0;border-radius:2px} .ng5-slider .ng5-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;border-radius:16px} .ng5-slider .ng5-slider-pointer:after{content:'';width:8px;height:8px;position:absolute;top:12px;left:12px;border-radius:4px;background:#fff} .ng5-slider .ng5-slider-pointer:hover:after{background-color:#fff} .ng5-slider .ng5-slider-pointer.ng5-slider-active{z-index:4} .ng5-slider .ng5-slider-pointer.ng5-slider-active:after{background-color:#451aff} .ng5-slider .ng5-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ng5-slider .ng5-slider-bubble.ng5-slider-limit{color:#55637d} .ng5-slider .ng5-slider-ticks{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ng5-slider .ng5-slider-ticks-values-under .ng5-slider-tick-value{top:auto;bottom:-36px} .ng5-slider .ng5-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ng5-slider .ng5-slider-tick.ng5-slider-selected{background:#0db9f0} .ng5-slider .ng5-slider-tick-value{position:absolute;top:-34px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)} .ng5-slider .ng5-slider-tick-legend{position:absolute;top:24px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);max-width:50px;white-space:normal} .ng5-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;-ms-touch-action:pan-x;touch-action:pan-x} .ng5-slider.vertical .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider.vertical .ng5-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ng5-slider.vertical .ng5-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ng5-slider.vertical .ng5-slider-pointer{left:-14px!important;top:auto;bottom:0} .ng5-slider.vertical .ng5-slider-bubble{left:16px!important;bottom:0} .ng5-slider.vertical .ng5-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ng5-slider.vertical .ng5-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ng5-slider.vertical .ng5-slider-tick-value{left:24px;top:auto;-webkit-transform:translate(0,-28%);transform:translate(0,-28%)} .ng5-slider.vertical .ng5-slider-tick-legend{top:auto;right:24px;-webkit-transform:translate(0,-28%);transform:translate(0,-28%);max-width:none;white-space:nowrap} .ng5-slider.vertical .ng5-slider-ticks-values-under .ng5-slider-tick-value{bottom:auto;left:auto;right:24px} .ng5-slider *{-webkit-transition:none;transition:none} .ng5-slider.animate .ng5-slider-bar-wrapper{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-selection{-webkit-transition:background-color linear .3s;transition:background-color linear .3s} .ng5-slider.animate .ng5-slider-pointer{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-limit{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-combined{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-tick{-webkit-transition:background-color linear .3s;transition:background-color linear .3s}"]}),e}(),mK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ng5-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},decls:2,vars:2,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ng5-slider-inner-tooltip"]],template:function(e,t){1&e&&(ks(0,QY,2,6,"ng-container",0),ks(1,ZY,3,3,"ng-container",0)),2&e&&(Es("ngIf",t.template),Wo(1),Es("ngIf",!t.template))},directives:[Nh,Hh],styles:[".ng5-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]}),e}(),yK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}(),bK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Yp,ip,zz,CY,yK]]}),e}(),_K=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,aY,OY,bK,M_,x_]]}),e}(),wK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,x_,_K]]}),e}(),kK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,sz,uz,aU,zz,vU,x_]]}),e}(),xK=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this)).getLevel=e,o.isExpandable=i,o.options=r,o.options&&(o.trackBy=o.options.trackBy),o}return b(n,[{key:"getDescendants",value:function(e){for(var t=[],n=this.dataNodes.indexOf(e)+1;n1&&void 0!==arguments[1]?arguments[1]:this._dataDiffer,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this._nodeOutlet.viewContainer,r=arguments.length>3?arguments[3]:void 0,o=n.diff(e);!o||(o.forEachOperation(function(n,o,a){if(null==n.previousIndex)t.insertNode(e[a],a,i,r);else if(null==a)i.remove(o),t._levels.delete(n.item);else{var s=i.get(o);i.move(s,a)}}),this._changeDetectorRef.detectChanges())}},{key:"_getNodeDef",value:function(e,t){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(function(n){return n.when&&n.when(t,e)})||this._defaultNodeDef}},{key:"insertNode",value:function(e,t,n,i){var r=this._getNodeDef(e,t),o=new CK(e);o.level=this.treeControl.getLevel?this.treeControl.getLevel(e):void 0!==i&&this._levels.has(i)?this._levels.get(i)+1:0,this._levels.set(e,o.level),(n||this._nodeOutlet.viewContainer).createEmbeddedView(r.template,o,t),AK.mostRecentTreeNode&&(AK.mostRecentTreeNode.data=e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(fc),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["cdk-tree"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,OK,5),2&e)&&(cl(i=dl())&&(t._nodeDefs=i))},viewQuery:function(e,t){var n;(1&e&&ll(EK,7),2&e)&&(cl(n=dl())&&(t._nodeOutlet=n.first))},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(e,t){1&e&&Is(0,0)},directives:[EK],encapsulation:2}),e}(),AK=function(){var e=function(){function e(t,n){m(this,e),this._elementRef=t,this._tree=n,this._destroyed=new re,this._dataChanges=new re,e.mostRecentTreeNode=this,this._elementRef.nativeElement.classList.add("cdk-tree-node"),this.role="treeitem"}return b(e,[{key:"role",get:function(){return"treeitem"},set:function(e){this._elementRef.nativeElement.setAttribute("role",e)}},{key:"data",get:function(){return this._data},set:function(e){e!==this._data&&(this._data=e,this._setRoleFromData(),this._dataChanges.next())}},{key:"isExpanded",get:function(){return this._tree.treeControl.isExpanded(this._data)}},{key:"_setExpanded",value:function(e){this._isAriaExpanded=e,this._elementRef.nativeElement.setAttribute("aria-expanded","".concat(e))}},{key:"level",get:function(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}},{key:"ngOnInit",value:function(){this._parentNodeAriaLevel=function(e){for(var t=e.parentElement;t&&!PK(t);)t=t.parentElement;return t?t.classList.contains("cdk-nested-tree-node")?Md(t.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level","".concat(this.level+1))}},{key:"ngDoCheck",value:function(){this.isExpanded!=this._isAriaExpanded&&this._setExpanded(this.isExpanded)}},{key:"ngOnDestroy",value:function(){e.mostRecentTreeNode===this&&(e.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"focus",value:function(){this._elementRef.nativeElement.focus()}},{key:"_setRoleFromData",value:function(){this.role="treeitem"}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(TK))},e.\u0275dir=Mt({type:e,selectors:[["cdk-tree-node"]],inputs:{role:"role"},exportAs:["cdkTreeNode"]}),e.mostRecentTreeNode=null,e}();function PK(e){var t=e.classList;return!(!(null==t?void 0:t.contains("cdk-nested-tree-node"))&&!(null==t?void 0:t.contains("cdk-tree")))}var MK=/([A-Za-z%]+)$/,IK=function(){var e=function(){function e(t,n,i,r){var o=this;m(this,e),this._treeNode=t,this._tree=n,this._element=i,this._dir=r,this._destroyed=new re,this.indentUnits="px",this._indent=40,this._setPadding(),r&&r.change.pipe(sf(this._destroyed)).subscribe(function(){return o._setPadding(!0)}),t._dataChanges.subscribe(function(){return o._setPadding()})}return b(e,[{key:"level",get:function(){return this._level},set:function(e){this._setLevelInput(e)}},{key:"indent",get:function(){return this._indent},set:function(e){this._setIndentInput(e)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_paddingIndent",value:function(){var e=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,t=null==this._level?e:this._level;return"number"==typeof t?"".concat(t*this._indent).concat(this.indentUnits):null}},{key:"_setPadding",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this._paddingIndent();if(t!==this._currentPadding||e){var n=this._element.nativeElement,i=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",r="paddingLeft"===i?"paddingRight":"paddingLeft";n.style[i]=t||"",n.style[r]="",this._currentPadding=t}}},{key:"_setLevelInput",value:function(e){this._level=Md(e,null),this._setPadding()}},{key:"_setIndentInput",value:function(e){var t=e,n="px";if("string"==typeof e){var i=e.split(MK);t=i[0],n=i[1]||n}this.indentUnits=n,this._indent=Md(t),this._setPadding()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(AK),Ss(TK),Ss(Yu),Ss(Vf,8))},e.\u0275dir=Mt({type:e,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),e}(),RK=function(){var e=function(){function e(t,n){m(this,e),this._tree=t,this._treeNode=n,this._recursive=!1}return b(e,[{key:"recursive",get:function(){return this._recursive},set:function(e){this._recursive=Pd(e)}},{key:"_toggle",value:function(e){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),e.stopPropagation()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(TK),Ss(AK))},e.\u0275dir=Mt({type:e,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(e,t){1&e&&js("click",function(e){return t._toggle(e)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),e}(),DK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),NK=Yy(Wy(AK)),LK=function(){var t=function(t){a(i,t);var n=s(i);function i(e,t,r){var o;return m(this,i),(o=n.call(this,e,t)).tabIndex=Number(r)||0,e.nativeElement.classList.add("mat-tree-node"),o}return b(i,[{key:"ngOnInit",value:function(){e(p(i.prototype),"ngOnInit",this).call(this)}},{key:"ngDoCheck",value:function(){e(p(i.prototype),"ngDoCheck",this).call(this)}},{key:"ngOnDestroy",value:function(){e(p(i.prototype),"ngOnDestroy",this).call(this)}}]),i}(NK);return t.\u0275fac=function(e){return new(e||t)(Ss(Yu),Ss(TK),Oi("tabindex"))},t.\u0275dir=Mt({type:t,selectors:[["mat-tree-node"]],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[Uu([{provide:AK,useExisting:t}]),as]}),t}(),jK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(OK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[Uu([{provide:OK,useExisting:t}]),as]}),t}(),FK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"level",get:function(){return this._level},set:function(e){this._setLevelInput(e)}},{key:"indent",get:function(){return this._indent},set:function(e){this._setIndentInput(e)}}]),n}(IK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[Uu([{provide:IK,useExisting:t}]),as]}),t}(),BK=function(){var e=function e(t,n){m(this,e),this.viewContainer=t,this._node=n};return e.\u0275fac=function(t){return new(t||e)(Ss(Pc),Ss(SK,8))},e.\u0275dir=Mt({type:e,selectors:[["","matTreeNodeOutlet",""]],features:[Uu([{provide:EK,useExisting:e}])]}),e}(),VK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(TK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275cmp=Et({type:t,selectors:[["mat-tree"]],viewQuery:function(e,t){var n;(1&e&&ll(BK,7),2&e)&&(cl(n=dl())&&(t._nodeOutlet=n.first))},hostAttrs:["role","tree",1,"mat-tree","cdk-tree"],exportAs:["matTree"],features:[Uu([{provide:TK,useExisting:t}]),as],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(e,t){1&e&&Is(0,0)},directives:[BK],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),t}(),zK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"recursive",get:function(){return this._recursive},set:function(e){this._recursive=Pd(e)}}]),n}(RK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[Uu([{provide:RK,useExisting:t}]),as]}),t}(),UK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[DK,Gy],Gy]}),e}(),HK=function(){function e(t,n,i,r){m(this,e),this.transformFunction=t,this.getLevel=n,this.isExpandable=i,this.getChildren=r}return b(e,[{key:"_flattenNode",value:function(e,t,n,i){var r=this,o=this.transformFunction(e,t);if(n.push(o),this.isExpandable(o)){var a=this.getChildren(e);a&&(Array.isArray(a)?this._flattenChildren(a,t,n,i):a.pipe(op(1)).subscribe(function(e){r._flattenChildren(e,t,n,i)}))}return n}},{key:"_flattenChildren",value:function(e,t,n,i){var r=this;e.forEach(function(o,a){var s=i.slice();s.push(a!=e.length-1),r._flattenNode(o,t+1,n,s)})}},{key:"flattenNodes",value:function(e){var t=this,n=[];return e.forEach(function(e){return t._flattenNode(e,0,n,[])}),n}},{key:"expandFlattenedNodes",value:function(e,t){var n=this,i=[],r=[];return r[0]=!0,e.forEach(function(e){for(var o=!0,a=0;a<=n.getLevel(e);a++)o=o&&r[a];o&&i.push(e),n.isExpandable(e)&&(r[n.getLevel(e)+1]=t.isExpanded(e))}),i}}]),e}(),GK=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this))._treeControl=e,o._treeFlattener=i,o._flattenedData=new tv([]),o._expandedData=new tv([]),o._data=new tv([]),r&&(o.data=r),o}return b(n,[{key:"data",get:function(){return this._data.value},set:function(e){this._data.next(e),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}},{key:"connect",value:function(e){var t=this;return Ee(e.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(se(function(){return t._expandedData.next(t._treeFlattener.expandFlattenedNodes(t._flattenedData.value,t._treeControl)),t._expandedData.value}))}},{key:"disconnect",value:function(){}}]),n}(function(){return function e(){m(this,e)}}()),WK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,fw,UK,Mq]]}),e}(),qK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,kK,WK]]}),e}(),XK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,kK,WK,qK],kK,WK,qK]}),e}();function YK(e){return null!==e&&"object"==typeof e&&"constructor"in e&&e.constructor===Object}function KK(e,t){void 0===e&&(e={}),void 0===t&&(t={}),Object.keys(t).forEach(function(n){void 0===e[n]?e[n]=t[n]:YK(t[n])&&YK(e[n])&&Object.keys(t[n]).length>0&&KK(e[n],t[n])})}var $K={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function QK(){var e="undefined"!=typeof document?document:{};return KK(e,$K),e}var ZK={document:$K,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(e){return"undefined"==typeof setTimeout?(e(),null):setTimeout(e,0)},cancelAnimationFrame:function(e){"undefined"!=typeof setTimeout&&clearTimeout(e)}};function JK(){var e="undefined"!=typeof window?window:{};return KK(e,ZK),e}function e$(e){return(e$=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function t$(e,t){return(t$=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function n$(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(U){return!1}}function i$(e,t,n){return(i$=n$()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&t$(r,n.prototype),r}).apply(null,arguments)}function r$(e){var t="function"==typeof Map?new Map:void 0;return(r$=function(e){if(null===e||!function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return i$(e,arguments,e$(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),t$(n,e)})(e)}var o$=function(e){function t(t){var n;return function(e){var t=e.__proto__;Object.defineProperty(e,"__proto__",{get:function(){return t},set:function(e){t.__proto__=e}})}(function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(n=e.call.apply(e,[this].concat(t))||this)),n}return function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}(t,e),t}(r$(Array));function a$(e){void 0===e&&(e=[]);var t=[];return e.forEach(function(e){Array.isArray(e)?t.push.apply(t,a$(e)):t.push(e)}),t}function s$(e,t){return Array.prototype.filter.call(e,t)}function u$(e,t){var n=JK(),i=QK(),r=[];if(!t&&e instanceof o$)return e;if(!e)return new o$(r);if("string"==typeof e){var o=e.trim();if(o.indexOf("<")>=0&&o.indexOf(">")>=0){var a="div";0===o.indexOf("0}).length>0},toggleClass:function(){for(var e=arguments.length,t=new Array(e),n=0;n=0;f-=1){var p=d[f];o&&p.listener===o||o&&p.listener&&p.listener.dom7proxy&&p.listener.dom7proxy===o?(h.removeEventListener(c,p.proxyListener,a),d.splice(f,1)):o||(h.removeEventListener(c,p.proxyListener,a),d.splice(f,1))}}return this},trigger:function(){for(var e=JK(),t=arguments.length,n=new Array(t),i=0;i0}),c.dispatchEvent(l),c.dom7EventData=[],delete c.dom7EventData}}return this},transitionEnd:function(e){var t=this;return e&&t.on("transitionend",function n(i){i.target===this&&(e.call(this,i),t.off("transitionend",n))}),this},outerWidth:function(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){var e=JK();return this[0]?e.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var e=JK(),t=QK(),n=this[0],i=n.getBoundingClientRect(),r=t.body;return{top:i.top+(n===e?e.scrollY:n.scrollTop)-(n.clientTop||r.clientTop||0),left:i.left+(n===e?e.scrollX:n.scrollLeft)-(n.clientLeft||r.clientLeft||0)}}return null},css:function(e,t){var n,i=JK();if(1===arguments.length){if("string"!=typeof e){for(n=0;nt-1)return u$([]);if(e<0){var n=t+e;return u$(n<0?[]:[this[n]])}return u$([this[e]])},append:function(){for(var e,t=QK(),n=0;n=0;n-=1)this[t].insertBefore(r.childNodes[n],this[t].childNodes[0])}else if(e instanceof o$)for(n=0;n0?e?this[0].nextElementSibling&&u$(this[0].nextElementSibling).is(e)?u$([this[0].nextElementSibling]):u$([]):u$(this[0].nextElementSibling?[this[0].nextElementSibling]:[]):u$([])},nextAll:function(e){var t=[],n=this[0];if(!n)return u$([]);for(;n.nextElementSibling;){var i=n.nextElementSibling;e?u$(i).is(e)&&t.push(i):t.push(i),n=i}return u$(t)},prev:function(e){if(this.length>0){var t=this[0];return e?t.previousElementSibling&&u$(t.previousElementSibling).is(e)?u$([t.previousElementSibling]):u$([]):u$(t.previousElementSibling?[t.previousElementSibling]:[])}return u$([])},prevAll:function(e){var t=[],n=this[0];if(!n)return u$([]);for(;n.previousElementSibling;){var i=n.previousElementSibling;e?u$(i).is(e)&&t.push(i):t.push(i),n=i}return u$(t)},parent:function(e){for(var t=[],n=0;n=0,observer:"MutationObserver"in e||"WebkitMutationObserver"in e,passiveListener:function(){var t=!1;try{var n=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassiveListener",null,n)}catch(i){}return t}(),gestures:"ongesturestart"in e}}()),d$}function x$(e){return void 0===e&&(e={}),f$||(f$=function(e){var t=(void 0===e?{}:e).userAgent,n=k$(),i=JK(),r=i.navigator.platform,o=t||i.navigator.userAgent,a={ios:!1,android:!1},s=i.screen.width,u=i.screen.height,c=o.match(/(Android);?[\s\/]+([\d.]+)?/),l=o.match(/(iPad).*OS\s([\d_]+)/),h=o.match(/(iPod)(.*OS\s([\d_]+))?/),d=!l&&o.match(/(iPhone\sOS|iOS)\s([\d_]+)/),f="Win32"===r,p="MacIntel"===r;return!l&&p&&n.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(s+"x"+u)>=0&&((l=o.match(/(Version)\/([\d.]+)/))||(l=[0,1,"13_0_0"]),p=!1),c&&!f&&(a.os="android",a.android=!0),(l||d||h)&&(a.os="ios",a.ios=!0),a}(e)),f$}function S$(){return p$||(p$=function(){var e,t=JK();return{isEdge:!!t.navigator.userAgent.match(/Edge/g),isSafari:(e=t.navigator.userAgent.toLowerCase(),e.indexOf("safari")>=0&&e.indexOf("chrome")<0&&e.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(t.navigator.userAgent)}}()),p$}var E$={name:"resize",create:function(){var e=this;_$(e,{resize:{observer:null,createObserver:function(){!e||e.destroyed||!e.initialized||(e.resize.observer=new ResizeObserver(function(t){var n=e.width,i=e.height,r=n,o=i;t.forEach(function(t){var n=t.contentBoxSize,i=t.contentRect,a=t.target;a&&a!==e.el||(r=i?i.width:(n[0]||n).inlineSize,o=i?i.height:(n[0]||n).blockSize)}),(r!==n||o!==i)&&e.resize.resizeHandler()}),e.resize.observer.observe(e.el))},removeObserver:function(){e.resize.observer&&e.resize.observer.unobserve&&e.el&&(e.resize.observer.unobserve(e.el),e.resize.observer=null)},resizeHandler:function(){!e||e.destroyed||!e.initialized||(e.emit("beforeResize"),e.emit("resize"))},orientationChangeHandler:function(){!e||e.destroyed||!e.initialized||e.emit("orientationchange")}}})},on:{init:function(e){var t=JK();e.params.resizeObserver&&void 0!==JK().ResizeObserver?e.resize.createObserver():(t.addEventListener("resize",e.resize.resizeHandler),t.addEventListener("orientationchange",e.resize.orientationChangeHandler))},destroy:function(e){var t=JK();e.resize.removeObserver(),t.removeEventListener("resize",e.resize.resizeHandler),t.removeEventListener("orientationchange",e.resize.orientationChangeHandler)}}};function C$(){return(C$=Object.assign||function(e){for(var t=1;t0)&&(!r.isTouched||!r.isMoved))){o.noSwipingClass&&""!==o.noSwipingClass&&s.target&&s.target.shadowRoot&&e.path&&e.path[0]&&(u=v$(e.path[0]));var c=o.noSwipingSelector?o.noSwipingSelector:"."+o.noSwipingClass;if(o.noSwiping&&(s.target&&s.target.shadowRoot?function(e,t){return void 0===t&&(t=this),function t(n){return n&&n!==QK()&&n!==JK()?(n.assignedSlot&&(n=n.assignedSlot),n.closest(e)||t(n.getRootNode().host)):null}(t)}(c,s.target):u.closest(c)[0]))return void(t.allowClick=!0);if(!o.swipeHandler||u.closest(o.swipeHandler)[0]){a.currentX="touchstart"===s.type?s.targetTouches[0].pageX:s.pageX,a.currentY="touchstart"===s.type?s.targetTouches[0].pageY:s.pageY;var l=a.currentX,h=a.currentY,d=o.edgeSwipeDetection||o.iOSEdgeSwipeDetection,f=o.edgeSwipeThreshold||o.iOSEdgeSwipeThreshold;if(d&&(l<=f||l>=i.innerWidth-f)){if("prevent"!==d)return;e.preventDefault()}if(_$(r,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),a.startX=l,a.startY=h,r.touchStartTime=m$(),t.allowClick=!0,t.updateSize(),t.swipeDirection=void 0,o.threshold>0&&(r.allowThresholdMove=!1),"touchstart"!==s.type){var p=!0;u.is(r.focusableElements)&&(p=!1),n.activeElement&&v$(n.activeElement).is(r.focusableElements)&&n.activeElement!==u[0]&&n.activeElement.blur(),(o.touchStartForcePreventDefault||p&&t.allowTouchMove&&o.touchStartPreventDefault)&&!u[0].isContentEditable&&s.preventDefault()}t.emit("touchStart",s)}}}}function P$(e){var t=QK(),n=this,i=n.touchEventsData,r=n.params,o=n.touches,a=n.rtlTranslate;if(n.enabled){var s=e;if(s.originalEvent&&(s=s.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&n.emit("touchMoveOpposite",s));if(!i.isTouchEvent||"touchmove"===s.type){var u="touchmove"===s.type&&s.targetTouches&&(s.targetTouches[0]||s.changedTouches[0]),c="touchmove"===s.type?u.pageX:s.pageX,l="touchmove"===s.type?u.pageY:s.pageY;if(s.preventedByNestedSwiper)return o.startX=c,void(o.startY=l);if(!n.allowTouchMove)return n.allowClick=!1,void(i.isTouched&&(_$(o,{startX:c,startY:l,currentX:c,currentY:l}),i.touchStartTime=m$()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(n.isVertical()){if(lo.startY&&n.translate>=n.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(co.startX&&n.translate>=n.minTranslate())return;if(i.isTouchEvent&&t.activeElement&&s.target===t.activeElement&&v$(s.target).is(i.focusableElements))return i.isMoved=!0,void(n.allowClick=!1);if(i.allowTouchCallbacks&&n.emit("touchMove",s),!(s.targetTouches&&s.targetTouches.length>1)){o.currentX=c,o.currentY=l;var h=o.currentX-o.startX,d=o.currentY-o.startY;if(!(n.params.threshold&&Math.sqrt(Math.pow(h,2)+Math.pow(d,2))=25&&(f=180*Math.atan2(Math.abs(d),Math.abs(h))/Math.PI,i.isScrolling=n.isHorizontal()?f>r.touchAngle:90-f>r.touchAngle)),i.isScrolling&&n.emit("touchMoveOpposite",s),void 0===i.startMoving&&(o.currentX!==o.startX||o.currentY!==o.startY)&&(i.startMoving=!0),i.isScrolling)return void(i.isTouched=!1);if(i.startMoving){n.allowClick=!1,!r.cssMode&&s.cancelable&&s.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&s.stopPropagation(),i.isMoved||(r.loop&&n.loopFix(),i.startTranslate=n.getTranslate(),n.setTransition(0),n.animating&&n.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,r.grabCursor&&(!0===n.allowSlideNext||!0===n.allowSlidePrev)&&n.setGrabCursor(!0),n.emit("sliderFirstMove",s)),n.emit("sliderMove",s),i.isMoved=!0;var p=n.isHorizontal()?h:d;o.diff=p,p*=r.touchRatio,a&&(p=-p),n.swipeDirection=p>0?"prev":"next",i.currentTranslate=p+i.startTranslate;var v=!0,g=r.resistanceRatio;if(r.touchReleaseOnEdges&&(g=0),p>0&&i.currentTranslate>n.minTranslate()?(v=!1,r.resistance&&(i.currentTranslate=n.minTranslate()-1+Math.pow(-n.minTranslate()+i.startTranslate+p,g))):p<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),!n.allowSlidePrev&&!n.allowSlideNext&&(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(p)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,o.startX=o.currentX,o.startY=o.currentY,i.currentTranslate=i.startTranslate,void(o.diff=n.isHorizontal()?o.currentX-o.startX:o.currentY-o.startY)}!r.followFinger||r.cssMode||((r.freeMode||r.watchSlidesProgress||r.watchSlidesVisibility)&&(n.updateActiveIndex(),n.updateSlidesClasses()),r.freeMode&&(0===i.velocities.length&&i.velocities.push({position:o[n.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:o[n.isHorizontal()?"currentX":"currentY"],time:m$()})),n.updateProgress(i.currentTranslate),n.setTranslate(i.currentTranslate))}}}}}}function M$(e){var t=this,n=t.touchEventsData,i=t.params,r=t.touches,o=t.rtlTranslate,a=t.$wrapperEl,s=t.slidesGrid,u=t.snapGrid;if(t.enabled){var c=e;if(c.originalEvent&&(c=c.originalEvent),n.allowTouchCallbacks&&t.emit("touchEnd",c),n.allowTouchCallbacks=!1,!n.isTouched)return n.isMoved&&i.grabCursor&&t.setGrabCursor(!1),n.isMoved=!1,void(n.startMoving=!1);i.grabCursor&&n.isMoved&&n.isTouched&&(!0===t.allowSlideNext||!0===t.allowSlidePrev)&&t.setGrabCursor(!1);var l,h=m$(),d=h-n.touchStartTime;if(t.allowClick&&(t.updateClickedSlide(c),t.emit("tap click",c),d<300&&h-n.lastClickTime<300&&t.emit("doubleTap doubleClick",c)),n.lastClickTime=m$(),g$(function(){t.destroyed||(t.allowClick=!0)}),!n.isTouched||!n.isMoved||!t.swipeDirection||0===r.diff||n.currentTranslate===n.startTranslate)return n.isTouched=!1,n.isMoved=!1,void(n.startMoving=!1);if(n.isTouched=!1,n.isMoved=!1,n.startMoving=!1,l=i.followFinger?o?t.translate:-t.translate:-n.currentTranslate,!i.cssMode){if(i.freeMode){if(l<-t.minTranslate())return void t.slideTo(t.activeIndex);if(l>-t.maxTranslate())return void t.slideTo(t.slides.length1){var f=n.velocities.pop(),p=n.velocities.pop(),v=f.time-p.time;t.velocity=(f.position-p.position)/v,t.velocity/=2,Math.abs(t.velocity)150||m$()-f.time>300)&&(t.velocity=0)}else t.velocity=0;t.velocity*=i.freeModeMomentumVelocityRatio,n.velocities.length=0;var g=1e3*i.freeModeMomentumRatio,m=t.translate+t.velocity*g;o&&(m=-m);var y,b,_=!1,w=20*Math.abs(t.velocity)*i.freeModeMomentumBounceRatio;if(mt.minTranslate())i.freeModeMomentumBounce?(m-t.minTranslate()>w&&(m=t.minTranslate()+w),y=t.minTranslate(),_=!0,n.allowMomentumBounce=!0):m=t.minTranslate(),i.loop&&i.centeredSlides&&(b=!0);else if(i.freeModeSticky){for(var k,x=0;x-m){k=x;break}m=-(m=Math.abs(u[k]-m)=i.longSwipesMs)&&(t.updateProgress(),t.updateActiveIndex(),t.updateSlidesClasses()))}for(var C=0,O=t.slidesSizesGrid[0],T=0;T=s[T]&&l=s[T]&&(C=T,O=s[s.length-1]-s[s.length-2])}var P=(l-s[C])/O,M=Ci.longSwipesMs){if(!i.longSwipes)return void t.slideTo(t.activeIndex);"next"===t.swipeDirection&&t.slideTo(P>=i.longSwipesRatio?C+M:C),"prev"===t.swipeDirection&&t.slideTo(P>1-i.longSwipesRatio?C+M:C)}else{if(!i.shortSwipes)return void t.slideTo(t.activeIndex);!t.navigation||c.target!==t.navigation.nextEl&&c.target!==t.navigation.prevEl?("next"===t.swipeDirection&&t.slideTo(C+M),"prev"===t.swipeDirection&&t.slideTo(C)):t.slideTo(c.target===t.navigation.nextEl?C+M:C)}}}}function I$(){var e=this,t=e.params,n=e.el;if(!n||0!==n.offsetWidth){t.breakpoints&&e.setBreakpoint();var i=e.allowSlideNext,r=e.allowSlidePrev,o=e.snapGrid;e.allowSlideNext=!0,e.allowSlidePrev=!0,e.updateSize(),e.updateSlides(),e.updateSlidesClasses(),e.slideTo(("auto"===t.slidesPerView||t.slidesPerView>1)&&e.isEnd&&!e.isBeginning&&!e.params.centeredSlides?e.slides.length-1:e.activeIndex,0,!1,!0),e.autoplay&&e.autoplay.running&&e.autoplay.paused&&e.autoplay.run(),e.allowSlidePrev=r,e.allowSlideNext=i,e.params.watchOverflow&&o!==e.snapGrid&&e.checkOverflow()}}function R$(e){var t=this;!t.enabled||t.allowClick||(t.params.preventClicks&&e.preventDefault(),t.params.preventClicksPropagation&&t.animating&&(e.stopPropagation(),e.stopImmediatePropagation()))}function D$(){var e=this,t=e.wrapperEl,n=e.rtlTranslate;if(e.enabled){e.previousTranslate=e.translate,e.translate=e.isHorizontal()?n?t.scrollWidth-t.offsetWidth-t.scrollLeft:-t.scrollLeft:-t.scrollTop,-0===e.translate&&(e.translate=0),e.updateActiveIndex(),e.updateSlidesClasses();var i=e.maxTranslate()-e.minTranslate();(0===i?0:(e.translate-e.minTranslate())/i)!==e.progress&&e.updateProgress(n?-e.translate:e.translate),e.emit("setTranslate",e.translate,!1)}}var N$=!1;function L$(){}var j$={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!1,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};var F$={modular:{useParams:function(e){var t=this;!t.modules||Object.keys(t.modules).forEach(function(n){var i=t.modules[n];i.params&&_$(e,i.params)})},useModules:function(e){void 0===e&&(e={});var t=this;!t.modules||Object.keys(t.modules).forEach(function(n){var i=t.modules[n],r=e[n]||{};i.on&&t.on&&Object.keys(i.on).forEach(function(e){t.on(e,i.on[e])}),i.create&&i.create.bind(t)(r)})}},eventsEmitter:{on:function(e,t,n){var i=this;if("function"!=typeof t)return i;var r=n?"unshift":"push";return e.split(" ").forEach(function(e){i.eventsListeners[e]||(i.eventsListeners[e]=[]),i.eventsListeners[e][r](t)}),i},once:function(e,t,n){var i=this;if("function"!=typeof t)return i;function r(){i.off(e,r),r.__emitterProxy&&delete r.__emitterProxy;for(var n=arguments.length,o=new Array(n),a=0;a=0&&t.eventsAnyListeners.splice(n,1),t},off:function(e,t){var n=this;return n.eventsListeners&&e.split(" ").forEach(function(e){void 0===t?n.eventsListeners[e]=[]:n.eventsListeners[e]&&n.eventsListeners[e].forEach(function(i,r){(i===t||i.__emitterProxy&&i.__emitterProxy===t)&&n.eventsListeners[e].splice(r,1)})}),n},emit:function(){var e=this;if(!e.eventsListeners)return e;for(var t,n,i,r=arguments.length,o=new Array(r),a=0;a=0&&(b=parseFloat(b.replace("%",""))/100*o),e.virtualSize=-b,l.css(a?{marginLeft:"",marginBottom:"",marginTop:""}:{marginRight:"",marginBottom:"",marginTop:""}),i.slidesPerColumn>1&&(x=Math.floor(h/i.slidesPerColumn)===h/e.params.slidesPerColumn?h:Math.ceil(h/i.slidesPerColumn)*i.slidesPerColumn,"auto"!==i.slidesPerView&&"row"===i.slidesPerColumnFill&&(x=Math.max(x,i.slidesPerView*i.slidesPerColumn)));for(var O,T=i.slidesPerColumn,A=x/T,P=Math.floor(h/i.slidesPerColumn),M=0;M1){var R=void 0,D=void 0,N=void 0;if("row"===i.slidesPerColumnFill&&i.slidesPerGroup>1){var L=Math.floor(M/(i.slidesPerGroup*i.slidesPerColumn)),j=M-i.slidesPerColumn*i.slidesPerGroup*L,F=0===L?i.slidesPerGroup:Math.min(Math.ceil((h-L*T*i.slidesPerGroup)/T),i.slidesPerGroup);N=Math.floor(j/F),I.css({"-webkit-box-ordinal-group":R=(D=j-N*F+L*i.slidesPerGroup)+N*x/T,"-moz-box-ordinal-group":R,"-ms-flex-order":R,"-webkit-order":R,order:R})}else"column"===i.slidesPerColumnFill?(N=M-(D=Math.floor(M/T))*T,(D>P||D===P&&N===T-1)&&(N+=1)>=T&&(N=0,D+=1)):D=M-(N=Math.floor(M/A))*A;I.css(t("margin-top"),0!==N?i.spaceBetween&&i.spaceBetween+"px":"")}if("none"!==I.css("display")){if("auto"===i.slidesPerView){var B=getComputedStyle(I[0]),V=I[0].style.transform,z=I[0].style.webkitTransform;if(V&&(I[0].style.transform="none"),z&&(I[0].style.webkitTransform="none"),i.roundLengths)O=e.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else{var U=n(B,"width"),H=n(B,"padding-left"),G=n(B,"padding-right"),W=n(B,"margin-left"),q=n(B,"margin-right"),X=B.getPropertyValue("box-sizing");if(X&&"border-box"===X)O=U+W+q;else{var Y=I[0];O=U+H+G+W+q+(Y.offsetWidth-Y.clientWidth)}}V&&(I[0].style.transform=V),z&&(I[0].style.webkitTransform=z),i.roundLengths&&(O=Math.floor(O))}else O=(o-(i.slidesPerView-1)*b)/i.slidesPerView,i.roundLengths&&(O=Math.floor(O)),l[M]&&(l[M].style[t("width")]=O+"px");l[M]&&(l[M].swiperSlideSize=O),p.push(O),i.centeredSlides?(_=_+O/2+w/2+b,0===w&&0!==M&&(_=_-o/2-b),0===M&&(_=_-o/2-b),Math.abs(_)<.001&&(_=0),i.roundLengths&&(_=Math.floor(_)),k%i.slidesPerGroup==0&&d.push(_),f.push(_)):(i.roundLengths&&(_=Math.floor(_)),(k-Math.min(e.params.slidesPerGroupSkip,k))%e.params.slidesPerGroup==0&&d.push(_),f.push(_),_=_+O+b),e.virtualSize+=O+b,w=O,k+=1}}if(e.virtualSize=Math.max(e.virtualSize,o)+g,a&&s&&("slide"===i.effect||"coverflow"===i.effect)&&r.css({width:e.virtualSize+i.spaceBetween+"px"}),i.setWrapperSize&&r.css(((E={})[t("width")]=e.virtualSize+i.spaceBetween+"px",E)),i.slidesPerColumn>1&&(e.virtualSize=(O+i.spaceBetween)*x,e.virtualSize=Math.ceil(e.virtualSize/i.slidesPerColumn)-i.spaceBetween,r.css(((C={})[t("width")]=e.virtualSize+i.spaceBetween+"px",C)),i.centeredSlides)){S=[];for(var K=0;K1&&d.push(e.virtualSize-o)}if(0===d.length&&(d=[0]),0!==i.spaceBetween){var J,ee=e.isHorizontal()&&a?"marginLeft":t("marginRight");l.filter(function(e,t){return!i.cssMode||t!==l.length-1}).css(((J={})[ee]=b+"px",J))}if(i.centeredSlides&&i.centeredSlidesBounds){var te=0;p.forEach(function(e){te+=e+(i.spaceBetween?i.spaceBetween:0)});var ne=(te-=i.spaceBetween)-o;d=d.map(function(e){return e<0?-v:e>ne?ne+g:e})}if(i.centerInsufficientSlides){var ie=0;if(p.forEach(function(e){ie+=e+(i.spaceBetween?i.spaceBetween:0)}),(ie-=i.spaceBetween)1)if(n.params.centeredSlides)n.visibleSlides.each(function(e){i.push(e)});else for(t=0;tn.slides.length&&!r)break;i.push(a(s))}else i.push(a(n.activeIndex));for(t=0;to?u:o}o&&n.$wrapperEl.css("height",o+"px")},updateSlidesOffset:function(){for(var e=this.slides,t=0;t=0&&c1&&l<=t.size||c<=0&&l>=t.size)&&(t.visibleSlides.push(s),t.visibleSlidesIndexes.push(a),i.eq(a).addClass(n.slideVisibleClass))}s.progress=r?-u:u}t.visibleSlides=v$(t.visibleSlides)}},updateProgress:function(e){var t=this;void 0===e&&(e=t&&t.translate&&t.translate*(t.rtlTranslate?-1:1)||0);var n=t.params,i=t.maxTranslate()-t.minTranslate(),r=t.progress,o=t.isBeginning,a=t.isEnd,s=o,u=a;0===i?(r=0,o=!0,a=!0):(o=(r=(e-t.minTranslate())/i)<=0,a=r>=1),_$(t,{progress:r,isBeginning:o,isEnd:a}),(n.watchSlidesProgress||n.watchSlidesVisibility||n.centeredSlides&&n.autoHeight)&&t.updateSlidesProgress(e),o&&!s&&t.emit("reachBeginning toEdge"),a&&!u&&t.emit("reachEnd toEdge"),(s&&!o||u&&!a)&&t.emit("fromEdge"),t.emit("progress",r)},updateSlidesClasses:function(){var e,t=this,n=t.slides,i=t.params,r=t.$wrapperEl,o=t.activeIndex,a=t.realIndex,s=t.virtual&&i.virtual.enabled;n.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(e=s?t.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+o+'"]'):n.eq(o)).addClass(i.slideActiveClass),i.loop&&(e.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+a+'"]').addClass(i.slideDuplicateActiveClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+a+'"]').addClass(i.slideDuplicateActiveClass));var u=e.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===u.length&&(u=n.eq(0)).addClass(i.slideNextClass);var c=e.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=n.eq(-1)).addClass(i.slidePrevClass),i.loop&&(u.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+u.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+u.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),t.emitSlidesClasses()},updateActiveIndex:function(e){var t,n=this,i=n.rtlTranslate?n.translate:-n.translate,r=n.slidesGrid,o=n.snapGrid,a=n.params,s=n.activeIndex,u=n.realIndex,c=n.snapIndex,l=e;if(void 0===l){for(var h=0;h=r[h]&&i=r[h]&&i=r[h]&&(l=h);a.normalizeSlideIndex&&(l<0||void 0===l)&&(l=0)}if(o.indexOf(i)>=0)t=o.indexOf(i);else{var d=Math.min(a.slidesPerGroupSkip,l);t=d+Math.floor((l-d)/a.slidesPerGroup)}if(t>=o.length&&(t=o.length-1),l!==s){var f=parseInt(n.slides.eq(l).attr("data-swiper-slide-index")||l,10);_$(n,{snapIndex:t,realIndex:f,previousIndex:s,activeIndex:l}),n.emit("activeIndexChange"),n.emit("snapIndexChange"),u!==f&&n.emit("realIndexChange"),(n.initialized||n.params.runCallbacksOnInit)&&n.emit("slideChange")}else t!==c&&(n.snapIndex=t,n.emit("snapIndexChange"))},updateClickedSlide:function(e){var t,n=this,i=n.params,r=v$(e.target).closest("."+i.slideClass)[0],o=!1;if(r)for(var a=0;a6&&(i=i.split(", ").map(function(e){return e.replace(",",".")}).join(", ")),r=new o.WebKitCSSMatrix("none"===i?"":i)):n=(r=a.MozTransform||a.OTransform||a.MsTransform||a.msTransform||a.transform||a.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===t&&(i=o.WebKitCSSMatrix?r.m41:16===n.length?parseFloat(n[12]):parseFloat(n[4])),"y"===t&&(i=o.WebKitCSSMatrix?r.m42:16===n.length?parseFloat(n[13]):parseFloat(n[5])),i||0}(t.$wrapperEl[0],e);return i&&(o=-o),o||0},setTranslate:function(e,t){var n=this,i=n.rtlTranslate,r=n.params,o=n.$wrapperEl,a=n.wrapperEl,s=n.progress,u=0,c=0;n.isHorizontal()?u=i?-e:e:c=e,r.roundLengths&&(u=Math.floor(u),c=Math.floor(c)),r.cssMode?a[n.isHorizontal()?"scrollLeft":"scrollTop"]=n.isHorizontal()?-u:-c:r.virtualTranslate||o.transform("translate3d("+u+"px, "+c+"px, 0px)"),n.previousTranslate=n.translate,n.translate=n.isHorizontal()?u:c;var l=n.maxTranslate()-n.minTranslate();(0===l?0:(e-n.minTranslate())/l)!==s&&n.updateProgress(e),n.emit("setTranslate",n.translate,t)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(e,t,n,i,r){void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===n&&(n=!0),void 0===i&&(i=!0);var o=this,a=o.params,s=o.wrapperEl;if(o.animating&&a.preventInteractionOnTransition)return!1;var u,c=o.minTranslate(),l=o.maxTranslate();if(o.updateProgress(u=i&&e>c?c:i&&eo?"next":ir?"next":i=c.length&&(g=c.length-1),(d||u.initialSlide||0)===(h||0)&&n&&a.emit("beforeSlideChangeStart");var m,y=-c[g];if(a.updateProgress(y),u.normalizeSlideIndex)for(var b=0;b=w&&_=w&&_=w&&(s=b)}if(a.initialized&&s!==d&&(!a.allowSlideNext&&ya.translate&&y>a.maxTranslate()&&(d||0)!==s))return!1;if(m=s>d?"next":s=e&&(d=e)}),void 0!==d&&(c=a.indexOf(d))<0&&(c=i.activeIndex-1),i.slideTo(c,e,t,n)},slideReset:function(e,t,n){return void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),this.slideTo(this.activeIndex,e,t,n)},slideToClosest:function(e,t,n,i){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),void 0===i&&(i=.5);var r=this,o=r.activeIndex,a=Math.min(r.params.slidesPerGroupSkip,o),s=a+Math.floor((o-a)/r.params.slidesPerGroup),u=r.rtlTranslate?r.translate:-r.translate;if(u>=r.snapGrid[s]){var c=r.snapGrid[s];u-c>(r.snapGrid[s+1]-c)*i&&(o+=r.params.slidesPerGroup)}else{var l=r.snapGrid[s-1];u-l<=(r.snapGrid[s]-l)*i&&(o-=r.params.slidesPerGroup)}return o=Math.max(o,0),o=Math.min(o,r.slidesGrid.length-1),r.slideTo(o,e,t,n)},slideToClickedSlide:function(){var e,t=this,n=t.params,i=t.$wrapperEl,r="auto"===n.slidesPerView?t.slidesPerViewDynamic():n.slidesPerView,o=t.clickedIndex;if(n.loop){if(t.animating)return;e=parseInt(v$(t.clickedSlide).attr("data-swiper-slide-index"),10),n.centeredSlides?ot.slides.length-t.loopedSlides+r/2?(t.loopFix(),o=i.children("."+n.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),g$(function(){t.slideTo(o)})):t.slideTo(o):o>t.slides.length-r?(t.loopFix(),o=i.children("."+n.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),g$(function(){t.slideTo(o)})):t.slideTo(o)}else t.slideTo(o)}},loop:{loopCreate:function(){var e=this,t=QK(),n=e.params,i=e.$wrapperEl;i.children("."+n.slideClass+"."+n.slideDuplicateClass).remove();var r=i.children("."+n.slideClass);if(n.loopFillGroupWithBlank){var o=n.slidesPerGroup-r.length%n.slidesPerGroup;if(o!==n.slidesPerGroup){for(var a=0;ar.length&&(e.loopedSlides=r.length);var u=[],c=[];r.each(function(t,n){var i=v$(t);n=r.length-e.loopedSlides&&u.push(t),i.attr("data-swiper-slide-index",n)});for(var l=0;l=0;h-=1)i.prepend(v$(u[h].cloneNode(!0)).addClass(n.slideDuplicateClass))},loopFix:function(){var e=this;e.emit("beforeLoopFix");var t,n=e.activeIndex,i=e.slides,r=e.loopedSlides,o=e.allowSlidePrev,a=e.allowSlideNext,s=e.snapGrid,u=e.rtlTranslate;e.allowSlidePrev=!0,e.allowSlideNext=!0;var c=-s[n]-e.getTranslate();n=i.length-r&&(t=-i.length+n+r,e.slideTo(t+=r,0,!1,!0)&&0!==c&&e.setTranslate((u?-e.translate:e.translate)-c)),e.allowSlidePrev=o,e.allowSlideNext=a,e.emit("loopFix")},loopDestroy:function(){var e=this,t=e.params,n=e.slides;e.$wrapperEl.children("."+t.slideClass+"."+t.slideDuplicateClass+",."+t.slideClass+"."+t.slideBlankClass).remove(),n.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(e){var t=this;if(!(t.support.touch||!t.params.simulateTouch||t.params.watchOverflow&&t.isLocked||t.params.cssMode)){var n=t.el;n.style.cursor="move",n.style.cursor=e?"-webkit-grabbing":"-webkit-grab",n.style.cursor=e?"-moz-grabbin":"-moz-grab",n.style.cursor=e?"grabbing":"grab"}},unsetGrabCursor:function(){var e=this;e.support.touch||e.params.watchOverflow&&e.isLocked||e.params.cssMode||(e.el.style.cursor="")}},manipulation:{appendSlide:function(e){var t=this,n=t.$wrapperEl,i=t.params;if(i.loop&&t.loopDestroy(),"object"==typeof e&&"length"in e)for(var r=0;r=a)n.appendSlide(t);else{for(var s=o>e?o+1:o,u=[],c=a-1;c>=e;c-=1){var l=n.slides.eq(c);l.remove(),u.unshift(l)}if("object"==typeof t&&"length"in t){for(var h=0;he?o+t.length:o}else i.append(t);for(var d=0;d1,d=l.slidesPerColumn>1,f=o.enabled;h&&!d?(a.removeClass(o.containerModifierClass+"multirow "+o.containerModifierClass+"multirow-column"),e.emitContainerClasses()):!h&&d&&(a.addClass(o.containerModifierClass+"multirow"),(l.slidesPerColumnFill&&"column"===l.slidesPerColumnFill||!l.slidesPerColumnFill&&"column"===o.slidesPerColumnFill)&&a.addClass(o.containerModifierClass+"multirow-column"),e.emitContainerClasses());var p=l.direction&&l.direction!==o.direction,v=o.loop&&(l.slidesPerView!==o.slidesPerView||p);p&&n&&e.changeDirection(),_$(e.params,l);var g=e.params.enabled;_$(e,{allowTouchMove:e.params.allowTouchMove,allowSlideNext:e.params.allowSlideNext,allowSlidePrev:e.params.allowSlidePrev}),f&&!g?e.disable():!f&&g&&e.enable(),e.currentBreakpoint=u,e.emit("_beforeBreakpoint",l),v&&n&&(e.loopDestroy(),e.loopCreate(),e.updateSlides(),e.slideTo(t-r+e.loopedSlides,0,!1)),e.emit("breakpoint",l)}}},getBreakpoint:function(e,t,n){if(void 0===t&&(t="window"),e&&("container"!==t||n)){var i=!1,r=JK(),o="window"===t?r.innerHeight:n.clientHeight,a=Object.keys(e).map(function(e){if("string"==typeof e&&0===e.indexOf("@")){var t=parseFloat(e.substr(1));return{value:o*t,point:e}}return{value:e,point:e}});a.sort(function(e,t){return parseInt(e.value,10)-parseInt(t.value,10)});for(var s=0;s0&&t.slidesOffsetBefore+t.spaceBetween*(e.slides.length-1)+e.slides[0].offsetWidth*e.slides.length;e.isLocked=t.slidesOffsetBefore&&t.slidesOffsetAfter&&i?i<=e.size:1===e.snapGrid.length,e.allowSlideNext=!e.isLocked,e.allowSlidePrev=!e.isLocked,n!==e.isLocked&&e.emit(e.isLocked?"lock":"unlock"),n&&n!==e.isLocked&&(e.isEnd=!1,e.navigation&&e.navigation.update())}},classes:{addClasses:function(){var e=this,t=e.classNames,n=e.params,i=e.$el,r=e.device,o=e.support,a=function(e,t){var n=[];return e.forEach(function(e){"object"==typeof e?Object.keys(e).forEach(function(i){e[i]&&n.push(t+i)}):"string"==typeof e&&n.push(t+e)}),n}(["initialized",n.direction,{"pointer-events":o.pointerEvents&&!o.touch},{"free-mode":n.freeMode},{autoheight:n.autoHeight},{rtl:e.rtl},{multirow:n.slidesPerColumn>1},{"multirow-column":n.slidesPerColumn>1&&"column"===n.slidesPerColumnFill},{android:r.android},{ios:r.ios},{"css-mode":n.cssMode}],n.containerModifierClass);t.push.apply(t,a),i.addClass([].concat(t).join(" ")),e.emitContainerClasses()},removeClasses:function(){var e=this;e.$el.removeClass(e.classNames.join(" ")),e.emitContainerClasses()}},images:{loadImage:function(e,t,n,i,r,o){var a,s=JK();function u(){o&&o()}v$(e).parent("picture")[0]||e.complete&&r||!t?u():((a=new s.Image).onload=u,a.onerror=u,i&&(a.sizes=i),n&&(a.srcset=n),t&&(a.src=t))},preloadImages:function(){var e=this;function t(){null==e||!e||e.destroyed||(void 0!==e.imagesLoaded&&(e.imagesLoaded+=1),e.imagesLoaded===e.imagesToLoad.length&&(e.params.updateOnImagesReady&&e.update(),e.emit("imagesReady")))}e.imagesToLoad=e.$el.find("img");for(var n=0;n1){var a=[];return v$(n.el).each(function(t){var i=_$({},n,{el:t});a.push(new e(i))}),a}var s=this;s.__swiper__=!0,s.support=k$(),s.device=x$({userAgent:n.userAgent}),s.browser=S$(),s.eventsListeners={},s.eventsAnyListeners=[],void 0===s.modules&&(s.modules={}),Object.keys(s.modules).forEach(function(e){var t=s.modules[e];if(t.params){var i=Object.keys(t.params)[0],r=t.params[i];if("object"!=typeof r||null===r||(["navigation","pagination","scrollbar"].indexOf(i)>=0&&!0===n[i]&&(n[i]={auto:!0}),!(i in n)||!("enabled"in r)))return;!0===n[i]&&(n[i]={enabled:!0}),"object"==typeof n[i]&&!("enabled"in n[i])&&(n[i].enabled=!0),n[i]||(n[i]={enabled:!1})}});var u,c,l=_$({},j$);return s.useParams(l),s.params=_$({},l,B$,n),s.originalParams=_$({},s.params),s.passedParams=_$({},n),s.params&&s.params.on&&Object.keys(s.params.on).forEach(function(e){s.on(e,s.params.on[e])}),s.params&&s.params.onAny&&s.onAny(s.params.onAny),s.$=v$,_$(s,{enabled:s.params.enabled,el:t,classNames:[],slides:v$(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===s.params.direction},isVertical:function(){return"vertical"===s.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:s.params.allowSlideNext,allowSlidePrev:s.params.allowSlidePrev,touchEvents:(u=["touchstart","touchmove","touchend","touchcancel"],c=["mousedown","mousemove","mouseup"],s.support.pointerEvents&&(c=["pointerdown","pointermove","pointerup"]),s.touchEventsTouch={start:u[0],move:u[1],end:u[2],cancel:u[3]},s.touchEventsDesktop={start:c[0],move:c[1],end:c[2]},s.support.touch||!s.params.simulateTouch?s.touchEventsTouch:s.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:s.params.focusableElements,lastClickTime:m$(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:s.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),s.useModules(),s.emit("_swiper"),s.params.init&&s.init(),s}var t=e.prototype;return t.enable=function(){var e=this;e.enabled||(e.enabled=!0,e.params.grabCursor&&e.setGrabCursor(),e.emit("enable"))},t.disable=function(){var e=this;!e.enabled||(e.enabled=!1,e.params.grabCursor&&e.unsetGrabCursor(),e.emit("disable"))},t.setProgress=function(e,t){var n=this;e=Math.min(Math.max(e,0),1);var i=n.minTranslate(),r=n.maxTranslate();n.translateTo((r-i)*e+i,void 0===t?0:t),n.updateActiveIndex(),n.updateSlidesClasses()},t.emitContainerClasses=function(){var e=this;if(e.params._emitClasses&&e.el){var t=e.el.className.split(" ").filter(function(t){return 0===t.indexOf("swiper-container")||0===t.indexOf(e.params.containerModifierClass)});e.emit("_containerClasses",t.join(" "))}},t.getSlideClasses=function(e){var t=this;return e.className.split(" ").filter(function(e){return 0===e.indexOf("swiper-slide")||0===e.indexOf(t.params.slideClass)}).join(" ")},t.emitSlidesClasses=function(){var e=this;if(e.params._emitClasses&&e.el){var t=[];e.slides.each(function(n){var i=e.getSlideClasses(n);t.push({slideEl:n,classNames:i}),e.emit("_slideClass",n,i)}),e.emit("_slideClasses",t)}},t.slidesPerViewDynamic=function(){var e=this,t=e.slides,n=e.slidesGrid,i=e.size,r=e.activeIndex,o=1;if(e.params.centeredSlides){for(var a,s=t[r].swiperSlideSize,u=r+1;ui&&(a=!0));for(var c=r-1;c>=0;c-=1)t[c]&&!a&&(o+=1,(s+=t[c].swiperSlideSize)>i&&(a=!0))}else for(var l=r+1;l1)&&e.isEnd&&!e.params.centeredSlides?e.slides.length-1:e.activeIndex,0,!1,!0)||i(),n.watchOverflow&&t!==e.snapGrid&&e.checkOverflow(),e.emit("update")}function i(){var t=Math.min(Math.max(e.rtlTranslate?-1*e.translate:e.translate,e.maxTranslate()),e.minTranslate());e.setTranslate(t),e.updateActiveIndex(),e.updateSlidesClasses()}},t.changeDirection=function(e,t){void 0===t&&(t=!0);var n=this,i=n.params.direction;return e||(e="horizontal"===i?"vertical":"horizontal"),e===i||"horizontal"!==e&&"vertical"!==e||(n.$el.removeClass(""+n.params.containerModifierClass+i).addClass(""+n.params.containerModifierClass+e),n.emitContainerClasses(),n.params.direction=e,n.slides.each(function(t){"vertical"===e?t.style.width="":t.style.height=""}),n.emit("changeDirection"),t&&n.update()),n},t.mount=function(e){var t=this;if(t.mounted)return!0;var n=v$(e||t.params.el);if(!(e=n[0]))return!1;e.swiper=t;var i=function(){return"."+(t.params.wrapperClass||"").trim().split(" ").join(".")},r=function(){if(e&&e.shadowRoot&&e.shadowRoot.querySelector){var t=v$(e.shadowRoot.querySelector(i()));return t.children=function(e){return n.children(e)},t}return n.children(i())}();if(0===r.length&&t.params.createElements){var o=QK().createElement("div");r=v$(o),o.className=t.params.wrapperClass,n.append(o),n.children("."+t.params.slideClass).each(function(e){r.append(e)})}return _$(t,{$el:n,el:e,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===e.dir.toLowerCase()||"rtl"===n.css("direction"),rtlTranslate:"horizontal"===t.params.direction&&("rtl"===e.dir.toLowerCase()||"rtl"===n.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0},t.init=function(e){var t=this;return t.initialized||!1===t.mount(e)||(t.emit("beforeInit"),t.params.breakpoints&&t.setBreakpoint(),t.addClasses(),t.params.loop&&t.loopCreate(),t.updateSize(),t.updateSlides(),t.params.watchOverflow&&t.checkOverflow(),t.params.grabCursor&&t.enabled&&t.setGrabCursor(),t.params.preloadImages&&t.preloadImages(),t.slideTo(t.params.loop?t.params.initialSlide+t.loopedSlides:t.params.initialSlide,0,t.params.runCallbacksOnInit,!1,!0),t.attachEvents(),t.initialized=!0,t.emit("init"),t.emit("afterInit")),t},t.destroy=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0);var n=this,i=n.params,r=n.$el,o=n.$wrapperEl,a=n.slides;return void 0===n.params||n.destroyed||(n.emit("beforeDestroy"),n.initialized=!1,n.detachEvents(),i.loop&&n.loopDestroy(),t&&(n.removeClasses(),r.removeAttr("style"),o.removeAttr("style"),a&&a.length&&a.removeClass([i.slideVisibleClass,i.slideActiveClass,i.slideNextClass,i.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),n.emit("destroy"),Object.keys(n.eventsListeners).forEach(function(e){n.off(e)}),!1!==e&&(n.$el[0].swiper=null,function(t){var n=t;Object.keys(n).forEach(function(t){try{n[t]=null}catch(e){}try{delete n[t]}catch(e){}})}(n)),n.destroyed=!0),null},e.extendDefaults=function(e){_$(B$,e)},e.installModule=function(t){e.prototype.modules||(e.prototype.modules={});var n=t.name||Object.keys(e.prototype.modules).length+"_"+m$();e.prototype.modules[n]=t},e.use=function(t){return Array.isArray(t)?(t.forEach(function(t){return e.installModule(t)}),e):(e.installModule(t),e)},function(e,t,n){n&&function(e,t){for(var n=0;n0?t[n].__swiper__?e[n]=t[n]:vQ(e[n],t[n]):e[n]=t[n]):e[n]=t[n]})}function gQ(e){return null!=e&&"false"!="".concat(e)}var mQ=["pagination","navigation","scrollbar","virtual"];function yQ(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fQ(e)?e:!0===gQ(e)&&t}var bQ=["init","_direction","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_freeModeMomentum","_freeModeMomentumRatio","_freeModeMomentumBounce","_freeModeMomentumBounceRatio","_freeModeMomentumVelocityRatio","_freeModeSticky","_freeModeMinimumVelocity","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","_spaceBetween","_slidesPerView","_slidesPerColumn","_slidesPerColumnFill","_slidesPerGroup","_slidesPerGroupSkip","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_watchSlidesVisibility","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_preloadImages","updateOnImagesReady","_loop","_loopAdditionalSlides","_loopedSlides","_loopFillGroupWithBlank","loopPreventsSlide","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","hashNavigation","history","keyboard","lazy","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom"].map(function(e){return e.replace(/_/,"")});function _Q(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={on:{}},n={};vQ(t,z$.defaults),vQ(t,z$.extendedDefaults),t._emitClasses=!0;var i={};return Object.keys(e).forEach(function(r){var o=r.replace(/^_/,"");void 0!==e[o]&&(bQ.indexOf(o)>=0?fQ(e[o])?(t[o]={},n[o]={},vQ(t[o],e[o]),vQ(n[o],e[o])):(t[o]=e[o],n[o]=e[o]):i[o]=e[o])}),{params:t,passedParams:n,rest:i}}var wQ=function(){var e=function(){function e(t){m(this,e),this.template=t,this.class="",this.slideData={isActive:!1,isPrev:!1,isNext:!1,isVisible:!1,isDuplicate:!1}}return b(e,[{key:"zoom",get:function(){return this._zoom},set:function(e){this._zoom=gQ(e)}},{key:"classNames",get:function(){return this._classNames},set:function(e){this._classNames!==e&&(this._classNames=e,this.slideData={isActive:this._hasClass(["swiper-slide-active","swiper-slide-duplicate-active"]),isVisible:this._hasClass(["swiper-slide-visible"]),isDuplicate:this._hasClass(["swiper-slide-duplicate"]),isPrev:this._hasClass(["swiper-slide-prev","swiper-slide-duplicate-prev"]),isNext:this._hasClass(["swiper-slide-next","swiper-slide-duplicate-next"])})}},{key:"_hasClass",value:function(e){var t=this;return e.some(function(e){return t._classNames.indexOf(e)>=0})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Ec))},e.\u0275dir=Mt({type:e,selectors:[["ng-template","swiperSlide",""]],inputs:{class:"class",zoom:"zoom",virtualIndex:"virtualIndex"}}),e}(),kQ=function(){var e=function(){function e(t,n,i,r){var a=this;m(this,e),this._ngZone=t,this.elementRef=n,this._changeDetectorRef=i,this._platformId=r,this.slideClass="swiper-slide",this.wrapperClass="swiper-wrapper",this.showNavigation=!0,this.showPagination=!0,this.showScrollbar=!0,this.s__beforeBreakpoint=new Qc,this.s__containerClasses=new Qc,this.s__slideClass=new Qc,this.s__swiper=new Qc,this.s_activeIndexChange=new Qc,this.s_afterInit=new Qc,this.s_autoplay=new Qc,this.s_autoplayStart=new Qc,this.s_autoplayStop=new Qc,this.s_beforeDestroy=new Qc,this.s_beforeInit=new Qc,this.s_beforeLoopFix=new Qc,this.s_beforeResize=new Qc,this.s_beforeSlideChangeStart=new Qc,this.s_beforeTransitionStart=new Qc,this.s_breakpoint=new Qc,this.s_changeDirection=new Qc,this.s_click=new Qc,this.s_doubleTap=new Qc,this.s_doubleClick=new Qc,this.s_destroy=new Qc,this.s_fromEdge=new Qc,this.s_hashChange=new Qc,this.s_hashSet=new Qc,this.s_imagesReady=new Qc,this.s_init=new Qc,this.s_keyPress=new Qc,this.s_lazyImageLoad=new Qc,this.s_lazyImageReady=new Qc,this.s_loopFix=new Qc,this.s_momentumBounce=new Qc,this.s_navigationHide=new Qc,this.s_navigationShow=new Qc,this.s_observerUpdate=new Qc,this.s_orientationchange=new Qc,this.s_paginationHide=new Qc,this.s_paginationRender=new Qc,this.s_paginationShow=new Qc,this.s_paginationUpdate=new Qc,this.s_progress=new Qc,this.s_reachBeginning=new Qc,this.s_reachEnd=new Qc,this.s_realIndexChange=new Qc,this.s_resize=new Qc,this.s_scroll=new Qc,this.s_scrollbarDragEnd=new Qc,this.s_scrollbarDragMove=new Qc,this.s_scrollbarDragStart=new Qc,this.s_setTransition=new Qc,this.s_setTranslate=new Qc,this.s_slideChange=new Qc,this.s_slideChangeTransitionEnd=new Qc,this.s_slideChangeTransitionStart=new Qc,this.s_slideNextTransitionEnd=new Qc,this.s_slideNextTransitionStart=new Qc,this.s_slidePrevTransitionEnd=new Qc,this.s_slidePrevTransitionStart=new Qc,this.s_slideResetTransitionStart=new Qc,this.s_slideResetTransitionEnd=new Qc,this.s_sliderMove=new Qc,this.s_sliderFirstMove=new Qc,this.s_slidesLengthChange=new Qc,this.s_slidesGridLengthChange=new Qc,this.s_snapGridLengthChange=new Qc,this.s_snapIndexChange=new Qc,this.s_tap=new Qc,this.s_toEdge=new Qc,this.s_touchEnd=new Qc,this.s_touchMove=new Qc,this.s_touchMoveOpposite=new Qc,this.s_touchStart=new Qc,this.s_transitionEnd=new Qc,this.s_transitionStart=new Qc,this.s_update=new Qc,this.s_zoomChange=new Qc,this.s_swiper=new Qc,this.indexChange=new Qc,this._activeSlides=new re,this.containerClasses="swiper-container",this.slidesChanges=function(e){a.slides=e.map(function(e,t){return e.slideIndex=t,e.classNames=a.slideClass,e}),a.loop&&!a.loopedSlides&&a.calcLoopedSlides(),a.virtual?a.swiperRef&&a.swiperRef.virtual&&a._ngZone.runOutsideAngular(function(){a.swiperRef.virtual.slides=a.slides,a.swiperRef.virtual.update(!0)}):(a.prependSlides=Nd(a.slides.slice(a.slides.length-a.loopedSlides)),a.appendSlides=Nd(a.slides.slice(0,a.loopedSlides))),a._changeDetectorRef.detectChanges()},this.style=null,this.updateVirtualSlides=function(e){!a.swiperRef||a.currentVirtualData&&a.currentVirtualData.from===e.from&&a.currentVirtualData.to===e.to&&a.currentVirtualData.offset===e.offset||(a.style=a.swiperRef.isHorizontal()?o({},a.swiperRef.rtlTranslate?"right":"left","".concat(e.offset,"px")):{top:"".concat(e.offset,"px")},a.currentVirtualData=e,a._activeSlides.next(e.slides),a._ngZone.run(function(){a._changeDetectorRef.detectChanges()}),a._ngZone.runOutsideAngular(function(){a.swiperRef.updateSlides(),a.swiperRef.updateProgress(),a.swiperRef.updateSlidesClasses(),a.swiperRef.lazy&&a.swiperRef.params.lazy.enabled&&a.swiperRef.lazy.load(),a.swiperRef.virtual.update(!0)}))}}return b(e,[{key:"navigation",get:function(){return this._navigation},set:function(e){var t,n,i,r="boolean"!=typeof this._navigation?null===(t=this._navigation)||void 0===t?void 0:t.nextEl:null,o="boolean"!=typeof this._navigation?null===(n=this._navigation)||void 0===n?void 0:n.prevEl:null;this._navigation=yQ(e,{nextEl:r||null,prevEl:o||null}),this.showNavigation=!(!0!==gQ(e)||this._navigation&&"boolean"!=typeof this._navigation&&this._navigation.prevEl!==(null===(i=this._prevElRef)||void 0===i?void 0:i.nativeElement)&&(null!==this._navigation.prevEl||null!==this._navigation.nextEl)&&("string"==typeof this._navigation.nextEl||"string"==typeof this._navigation.prevEl||"object"==typeof this._navigation.nextEl||"object"==typeof this._navigation.prevEl))}},{key:"pagination",get:function(){return this._pagination},set:function(e){var t,n="boolean"!=typeof this._pagination?null===(t=this._pagination)||void 0===t?void 0:t.el:null;this._pagination=yQ(e,{el:n||null}),this.showPagination=pQ(e,this._pagination,this._paginationElRef)}},{key:"scrollbar",get:function(){return this._scrollbar},set:function(e){var t,n="boolean"!=typeof this._scrollbar?null===(t=this._scrollbar)||void 0===t?void 0:t.el:null;this._scrollbar=yQ(e,{el:n||null}),this.showScrollbar=pQ(e,this._scrollbar,this._scrollbarElRef)}},{key:"virtual",get:function(){return this._virtual},set:function(e){this._virtual=yQ(e)}},{key:"index",set:function(e){this.setIndex(e)}},{key:"config",set:function(e){this.updateSwiper(e);var t=_Q(e).params;Object.assign(this,t)}},{key:"prevElRef",set:function(e){this._prevElRef=e,this._setElement(e,this.navigation,"navigation","prevEl")}},{key:"nextElRef",set:function(e){this._nextElRef=e,this._setElement(e,this.navigation,"navigation","nextEl")}},{key:"scrollbarElRef",set:function(e){this._scrollbarElRef=e,this._setElement(e,this.scrollbar,"scrollbar")}},{key:"paginationElRef",set:function(e){this._paginationElRef=e,this._setElement(e,this.pagination,"pagination")}},{key:"activeSlides",get:function(){return this.virtual?this._activeSlides:Nd(this.slides)}},{key:"zoomContainerClass",get:function(){return"boolean"!=typeof this.zoom?this.zoom.containerClass:"swiper-zoom-container"}},{key:"_setElement",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"el";if(e&&t){if(t&&e.nativeElement){if(t[i]===e.nativeElement)return;t[i]=e.nativeElement}var r={};r[n]=!0,this.updateInitSwiper(r)}}},{key:"ngOnInit",value:function(){var e=_Q(this).params;Object.assign(this,e)}},{key:"ngAfterViewInit",value:function(){var e=this;this.childrenSlidesInit(),this.initSwiper(),this._changeDetectorRef.detectChanges(),setTimeout(function(){e.s_swiper.emit(e.swiperRef)})}},{key:"childrenSlidesInit",value:function(){this.slidesChanges(this.slidesEl),this.slidesEl.changes.subscribe(this.slidesChanges)}},{key:"isSwiperActive",get:function(){return this.swiperRef&&!this.swiperRef.destroyed}},{key:"initSwiper",value:function(){var e=this,t=_Q(this).params;Object.assign(this,t),this._ngZone.runOutsideAngular(function(){t.init=!1,t.virtual||(t.observer=!0),t.onAny=function(t){for(var n=e["s_".concat(t)],i=arguments.length,r=new Array(i>1?i-1:0),o=1;o=0)){var o=null!==(i=null===(n=e[r])||void 0===n?void 0:n.currentValue)&&void 0!==i?i:e[r];t.updateParameter(r,o)}e.allowSlideNext&&(t.swiperRef.allowSlideNext=t.allowSlideNext),e.allowSlidePrev&&(t.swiperRef.allowSlidePrev=t.allowSlidePrev),e.direction&&t.swiperRef.changeDirection(t.direction,!1),e.breakpoints&&(t.loop&&!t.loopedSlides&&t.calcLoopedSlides(),t.swiperRef.currentBreakpoint=null,t.swiperRef.setBreakpoint()),(e.thumbs||e.controller)&&t.updateInitSwiper(e),t.swiperRef.update()}})}},{key:"calcLoopedSlides",value:function(){if(this.loop){var e=this.slidesPerView;if(this.breakpoints){var t=z$.prototype.getBreakpoint(this.breakpoints),n=t in this.breakpoints?this.breakpoints[t]:void 0;n&&n.slidesPerView&&(e=n.slidesPerView)}if("auto"===e)return this.loopedSlides=this.slides.length,this.slides.length;var i=this.loopedSlides||e;return(i+=this.loopAdditionalSlides)>this.slides.length&&(i=this.slides.length),this.loopedSlides=i,i}}},{key:"updateParameter",value:function(e,t){if(this.swiperRef&&!this.swiperRef.destroyed){var n=e.replace(/^_/,""),i=fQ(this.swiperRef.params[n]);if(Object.keys(this.swiperRef.modules).indexOf(n)>=0){var r=this.swiperRef.modules[n].params[n];i?vQ(this.swiperRef.params[n],r):this.swiperRef.params[n]=r}i&&fQ(t)?vQ(this.swiperRef.params[n],t):this.swiperRef.params[n]=t}}},{key:"setIndex",value:function(e,t,n){var i=this;this.isSwiperActive?e!==this.swiperRef.activeIndex&&this._ngZone.runOutsideAngular(function(){i.loop?i.swiperRef.slideToLoop(e,t,!n):i.swiperRef.slideTo(e,t,!n)}):this.initialSlide=e}},{key:"ngOnDestroy",value:function(){var e=this;this._ngZone.runOutsideAngular(function(){var t;null===(t=e.swiperRef)||void 0===t||t.destroy(!0,!1)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Bl),Ss(Yu),Ss(_c),Ss(xl))},e.\u0275cmp=Et({type:e,selectors:[["swiper"],["","swiper",""]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,wQ,4),2&e)&&(cl(i=dl())&&(t.slidesEl=i))},viewQuery:function(e,t){var n;(1&e&&(ll(U$,5),ll(H$,5),ll(G$,5),ll(W$,5)),2&e)&&(cl(n=dl())&&(t.prevElRef=n.first),cl(n=dl())&&(t.nextElRef=n.first),cl(n=dl())&&(t.scrollbarElRef=n.first),cl(n=dl())&&(t.paginationElRef=n.first))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.containerClasses)},inputs:{slideClass:"slideClass",wrapperClass:"wrapperClass",navigation:"navigation",pagination:"pagination",scrollbar:"scrollbar",virtual:"virtual",index:"index",config:"config",loopedSlides:"loopedSlides",initialSlide:"initialSlide",direction:"direction",touchEventsTarget:"touchEventsTarget",speed:"speed",cssMode:"cssMode",updateOnWindowResize:"updateOnWindowResize",resizeObserver:"resizeObserver",nested:"nested",focusableElements:"focusableElements",width:"width",height:"height",preventInteractionOnTransition:"preventInteractionOnTransition",userAgent:"userAgent",url:"url",edgeSwipeDetection:"edgeSwipeDetection",edgeSwipeThreshold:"edgeSwipeThreshold",freeMode:"freeMode",freeModeMomentum:"freeModeMomentum",freeModeMomentumRatio:"freeModeMomentumRatio",freeModeMomentumBounce:"freeModeMomentumBounce",freeModeMomentumBounceRatio:"freeModeMomentumBounceRatio",freeModeMomentumVelocityRatio:"freeModeMomentumVelocityRatio",freeModeSticky:"freeModeSticky",freeModeMinimumVelocity:"freeModeMinimumVelocity",autoHeight:"autoHeight",setWrapperSize:"setWrapperSize",virtualTranslate:"virtualTranslate",effect:"effect",breakpoints:"breakpoints",spaceBetween:"spaceBetween",slidesPerView:"slidesPerView",slidesPerColumn:"slidesPerColumn",slidesPerColumnFill:"slidesPerColumnFill",slidesPerGroup:"slidesPerGroup",slidesPerGroupSkip:"slidesPerGroupSkip",centeredSlides:"centeredSlides",centeredSlidesBounds:"centeredSlidesBounds",slidesOffsetBefore:"slidesOffsetBefore",slidesOffsetAfter:"slidesOffsetAfter",normalizeSlideIndex:"normalizeSlideIndex",centerInsufficientSlides:"centerInsufficientSlides",watchOverflow:"watchOverflow",roundLengths:"roundLengths",touchRatio:"touchRatio",touchAngle:"touchAngle",simulateTouch:"simulateTouch",shortSwipes:"shortSwipes",longSwipes:"longSwipes",longSwipesRatio:"longSwipesRatio",longSwipesMs:"longSwipesMs",followFinger:"followFinger",allowTouchMove:"allowTouchMove",threshold:"threshold",touchMoveStopPropagation:"touchMoveStopPropagation",touchStartPreventDefault:"touchStartPreventDefault",touchStartForcePreventDefault:"touchStartForcePreventDefault",touchReleaseOnEdges:"touchReleaseOnEdges",uniqueNavElements:"uniqueNavElements",resistance:"resistance",resistanceRatio:"resistanceRatio",watchSlidesProgress:"watchSlidesProgress",watchSlidesVisibility:"watchSlidesVisibility",grabCursor:"grabCursor",preventClicks:"preventClicks",preventClicksPropagation:"preventClicksPropagation",slideToClickedSlide:"slideToClickedSlide",preloadImages:"preloadImages",updateOnImagesReady:"updateOnImagesReady",loop:"loop",loopAdditionalSlides:"loopAdditionalSlides",loopFillGroupWithBlank:"loopFillGroupWithBlank",loopPreventsSlide:"loopPreventsSlide",allowSlidePrev:"allowSlidePrev",allowSlideNext:"allowSlideNext",swipeHandler:"swipeHandler",noSwiping:"noSwiping",noSwipingClass:"noSwipingClass",noSwipingSelector:"noSwipingSelector",passiveListeners:"passiveListeners",containerModifierClass:"containerModifierClass",slideBlankClass:"slideBlankClass",slideActiveClass:"slideActiveClass",slideDuplicateActiveClass:"slideDuplicateActiveClass",slideVisibleClass:"slideVisibleClass",slideDuplicateClass:"slideDuplicateClass",slideNextClass:"slideNextClass",slideDuplicateNextClass:"slideDuplicateNextClass",slidePrevClass:"slidePrevClass",slideDuplicatePrevClass:"slideDuplicatePrevClass",runCallbacksOnInit:"runCallbacksOnInit",observeParents:"observeParents",observeSlideChildren:"observeSlideChildren",a11y:"a11y",autoplay:"autoplay",controller:"controller",coverflowEffect:"coverflowEffect",cubeEffect:"cubeEffect",fadeEffect:"fadeEffect",flipEffect:"flipEffect",hashNavigation:"hashNavigation",history:"history",keyboard:"keyboard",lazy:"lazy",mousewheel:"mousewheel",parallax:"parallax",thumbs:"thumbs",zoom:"zoom",class:"class",id:"id"},outputs:{s__beforeBreakpoint:"_beforeBreakpoint",s__containerClasses:"_containerClasses",s__slideClass:"_slideClass",s__swiper:"_swiper",s_activeIndexChange:"activeIndexChange",s_afterInit:"afterInit",s_autoplay:"autoplay",s_autoplayStart:"autoplayStart",s_autoplayStop:"autoplayStop",s_beforeDestroy:"beforeDestroy",s_beforeInit:"beforeInit",s_beforeLoopFix:"beforeLoopFix",s_beforeResize:"beforeResize",s_beforeSlideChangeStart:"beforeSlideChangeStart",s_beforeTransitionStart:"beforeTransitionStart",s_breakpoint:"breakpoint",s_changeDirection:"changeDirection",s_click:"click",s_doubleTap:"doubleTap",s_doubleClick:"doubleClick",s_destroy:"destroy",s_fromEdge:"fromEdge",s_hashChange:"hashChange",s_hashSet:"hashSet",s_imagesReady:"imagesReady",s_init:"init",s_keyPress:"keyPress",s_lazyImageLoad:"lazyImageLoad",s_lazyImageReady:"lazyImageReady",s_loopFix:"loopFix",s_momentumBounce:"momentumBounce",s_navigationHide:"navigationHide",s_navigationShow:"navigationShow",s_observerUpdate:"observerUpdate",s_orientationchange:"orientationchange",s_paginationHide:"paginationHide",s_paginationRender:"paginationRender",s_paginationShow:"paginationShow",s_paginationUpdate:"paginationUpdate",s_progress:"progress",s_reachBeginning:"reachBeginning",s_reachEnd:"reachEnd",s_realIndexChange:"realIndexChange",s_resize:"resize",s_scroll:"scroll",s_scrollbarDragEnd:"scrollbarDragEnd",s_scrollbarDragMove:"scrollbarDragMove",s_scrollbarDragStart:"scrollbarDragStart",s_setTransition:"setTransition",s_setTranslate:"setTranslate",s_slideChange:"slideChange",s_slideChangeTransitionEnd:"slideChangeTransitionEnd",s_slideChangeTransitionStart:"slideChangeTransitionStart",s_slideNextTransitionEnd:"slideNextTransitionEnd",s_slideNextTransitionStart:"slideNextTransitionStart",s_slidePrevTransitionEnd:"slidePrevTransitionEnd",s_slidePrevTransitionStart:"slidePrevTransitionStart",s_slideResetTransitionStart:"slideResetTransitionStart",s_slideResetTransitionEnd:"slideResetTransitionEnd",s_sliderMove:"sliderMove",s_sliderFirstMove:"sliderFirstMove",s_slidesLengthChange:"slidesLengthChange",s_slidesGridLengthChange:"slidesGridLengthChange",s_snapGridLengthChange:"snapGridLengthChange",s_snapIndexChange:"snapIndexChange",s_tap:"tap",s_toEdge:"toEdge",s_touchEnd:"touchEnd",s_touchMove:"touchMove",s_touchMoveOpposite:"touchMoveOpposite",s_touchStart:"touchStart",s_transitionEnd:"transitionEnd",s_transitionStart:"transitionStart",s_update:"update",s_zoomChange:"zoomChange",s_swiper:"swiper",indexChange:"indexChange"},features:[Ht],ngContentSelectors:dQ,decls:13,vars:17,consts:[[4,"ngIf"],["class","swiper-scrollbar",4,"ngIf"],["class","swiper-pagination",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["slidesTemplate",""],[1,"swiper-button-prev"],["prevElRef",""],[1,"swiper-button-next"],["nextElRef",""],[1,"swiper-scrollbar"],["scrollbarElRef",""],[1,"swiper-pagination"],["paginationElRef",""],[3,"ngClass","style","ngSwitch",4,"ngFor","ngForOf"],[3,"ngClass","ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(e,t){if(1&e&&(Gs(uQ),Ws(0),ks(1,q$,5,0,"ng-container",0),ks(2,X$,2,0,"div",1),ks(3,Y$,2,0,"div",2),Os(4,"div",3),Ws(5,1),ks(6,$$,1,0,void 0,4),ks(7,Z$,1,0,void 0,4),ks(8,eQ,1,0,void 0,4),Ws(9,2),Ts(),Ws(10,3),ks(11,sQ,2,3,"ng-template",null,5,gl)),2&e){var n=xs(12);Wo(1),Es("ngIf",t.navigation&&t.showNavigation),Wo(1),Es("ngIf",t.scrollbar&&t.showScrollbar),Wo(1),Es("ngIf",t.pagination&&t.showPagination),Wo(1),Es("ngClass",t.wrapperClass),bs("id",t.id),Wo(2),Es("ngTemplateOutlet",n)("ngTemplateOutletContext",Wc(11,cQ,t.prependSlides)),Wo(1),Es("ngTemplateOutlet",n)("ngTemplateOutletContext",Wc(13,lQ,t.activeSlides)),Wo(1),Es("ngTemplateOutlet",n)("ngTemplateOutletContext",Wc(15,hQ,t.appendSlides))}},directives:[Nh,Mh,Hh,Rh,Bh,Vh,zh],pipes:[Xh],styles:["\n swiper {\n display: block;\n }\n "],encapsulation:2,changeDetection:0}),e}(),xQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}();function SQ(){return(SQ=Object.assign||function(e){for(var t=1;t0&&(n(o,!!e.isBeginning),e.params.watchOverflow&&e.enabled&&o[e.isLocked?"addClass":"removeClass"](t.lockClass)),r&&r.length>0&&(n(r,!!e.isEnd),e.params.watchOverflow&&e.enabled&&r[e.isLocked?"addClass":"removeClass"](t.lockClass))}},onPrevClick:function(e){var t=this;e.preventDefault(),(!t.isBeginning||t.params.loop)&&t.slidePrev()},onNextClick:function(e){var t=this;e.preventDefault(),(!t.isEnd||t.params.loop)&&t.slideNext()},init:function(){var e,t,n=this,i=n.params.navigation;n.params.navigation=function(e,t,n,i){var r=QK();return n&&Object.keys(i).forEach(function(n){if(!t[n]&&!0===t.auto){var o=r.createElement("div");o.className=i[n],e.append(o),t[n]=o}}),t}(n.$el,n.params.navigation,n.params.createElements,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),(i.nextEl||i.prevEl)&&(i.nextEl&&(e=v$(i.nextEl),n.params.uniqueNavElements&&"string"==typeof i.nextEl&&e.length>1&&1===n.$el.find(i.nextEl).length&&(e=n.$el.find(i.nextEl))),i.prevEl&&(t=v$(i.prevEl),n.params.uniqueNavElements&&"string"==typeof i.prevEl&&t.length>1&&1===n.$el.find(i.prevEl).length&&(t=n.$el.find(i.prevEl))),e&&e.length>0&&e.on("click",n.navigation.onNextClick),t&&t.length>0&&t.on("click",n.navigation.onPrevClick),_$(n.navigation,{$nextEl:e,nextEl:e&&e[0],$prevEl:t,prevEl:t&&t[0]}),n.enabled||(e&&e.addClass(i.lockClass),t&&t.addClass(i.lockClass)))},destroy:function(){var e=this,t=e.navigation,n=t.$nextEl,i=t.$prevEl;n&&n.length&&(n.off("click",e.navigation.onNextClick),n.removeClass(e.params.navigation.disabledClass)),i&&i.length&&(i.off("click",e.navigation.onPrevClick),i.removeClass(e.params.navigation.disabledClass))}},CQ={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){w$(this,{navigation:SQ({},EQ)})},on:{init:function(e){e.navigation.init(),e.navigation.update()},toEdge:function(e){e.navigation.update()},fromEdge:function(e){e.navigation.update()},destroy:function(e){e.navigation.destroy()},"enable disable":function(e){var t=e.navigation,n=t.$nextEl,i=t.$prevEl;n&&n[e.enabled?"removeClass":"addClass"](e.params.navigation.lockClass),i&&i[e.enabled?"removeClass":"addClass"](e.params.navigation.lockClass)},click:function(e,t){var n=e.navigation,i=n.$nextEl,r=n.$prevEl,o=t.target;if(e.params.navigation.hideOnClick&&!v$(o).is(r)&&!v$(o).is(i)){if(e.pagination&&e.params.pagination&&e.params.pagination.clickable&&(e.pagination.el===o||e.pagination.el.contains(o)))return;var a;i?a=i.hasClass(e.params.navigation.hiddenClass):r&&(a=r.hasClass(e.params.navigation.hiddenClass)),e.emit(!0===a?"navigationShow":"navigationHide"),i&&i.toggleClass(e.params.navigation.hiddenClass),r&&r.toggleClass(e.params.navigation.hiddenClass)}}}},OQ=function(){var e=function e(){m(this,e),z$.use([CQ])};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,xQ]]}),e}(),TQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}(),AQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,oY,x_,OQ,TQ]]}),e}(),PQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Xf,AQ]]}),e}(),MQ={isolated:!0},IQ=new Pi("Message service configuration",{providedIn:"root",factory:function(){return MQ}}),RQ=function(){var e=function(){function e(t,n,i){m(this,e),this.source=t,this.channel=n,this.messages=i}return b(e,[{key:"sendMessage",value:function(e){this.channel.next({id:this.nextMessageId(),source:this.source,payload:e})}},{key:"getMessages",value:function(){var e=this;return this.messages.pipe(rf(function(t){return t.source!==e.source}))}},{key:"getMessagesFromSource",value:function(e){return this.getMessages().pipe(rf(function(t){return t.source===e}))}},{key:"getMessagesFromSources",value:function(e){return this.getMessages().pipe(rf(function(t){return e.includes(t.source)}))}},{key:"nextMessageId",value:function(){return e.counter++}}]),e}();return e.counter=0,e}(),DQ=function(){var e=function(){function e(t,n){var i=this;m(this,e),this.config=t,this.parent=n,this.channel=new re,this.messages=t.isolated||!n?this.channel.asObservable():ge([this.channel,n.messages.pipe(up(function(){return!i.channel.closed}))]).pipe(xe())}return b(e,[{key:"ngOnDestroy",value:function(){this.channel.complete()}},{key:"connect",value:function(e){return new RQ(e,this.channel,this.messages)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(IQ),Ki(e,12))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac,providedIn:"root"}),e}(),NQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:IQ,useValue:MQ}],imports:[[Ad,Fy,x_]]}),e}();function LQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("animation-name","mat-progress-spinner-stroke-rotate-"+n._spinnerAnimationLabel)("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}function jQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}function FQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("animation-name","mat-progress-spinner-stroke-rotate-"+n._spinnerAnimationLabel)("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}function BQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}var VQ=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",zQ=qy(function(){return function e(t){m(this,e),this._elementRef=t}}(),"primary"),UQ=new Pi("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}}),HQ=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a){var s;m(this,n),(s=t.call(this,e))._document=r,s._diameter=100,s._value=0,s._fallbackAnimation=!1,s.mode="determinate";var u=n._diameters;return s._spinnerAnimationLabel=s._getSpinnerAnimationLabel(),u.has(r.head)||u.set(r.head,new Set([100])),s._fallbackAnimation=i.EDGE||i.TRIDENT,s._noopAnimations="NoopAnimations"===o&&!!a&&!a._forceAnimations,a&&(a.diameter&&(s.diameter=a.diameter),a.strokeWidth&&(s.strokeWidth=a.strokeWidth)),s}return b(n,[{key:"diameter",get:function(){return this._diameter},set:function(e){this._diameter=Md(e),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}},{key:"strokeWidth",get:function(){return this._strokeWidth||this.diameter/10},set:function(e){this._strokeWidth=Md(e)}},{key:"value",get:function(){return"determinate"===this.mode?this._value:0},set:function(e){this._value=Math.max(0,Math.min(100,Md(e)))}},{key:"ngOnInit",value:function(){var e=this._elementRef.nativeElement;this._styleRoot=Lf(e)||this._document.head,this._attachStyleNode(),e.classList.add("mat-progress-spinner-indeterminate".concat(this._fallbackAnimation?"-fallback":"","-animation"))}},{key:"_getCircleRadius",value:function(){return(this.diameter-10)/2}},{key:"_getViewBox",value:function(){var e=2*this._getCircleRadius()+this.strokeWidth;return"0 0 ".concat(e," ").concat(e)}},{key:"_getStrokeCircumference",value:function(){return 2*Math.PI*this._getCircleRadius()}},{key:"_getStrokeDashOffset",value:function(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}},{key:"_getCircleStrokeWidth",value:function(){return this.strokeWidth/this.diameter*100}},{key:"_attachStyleNode",value:function(){var e=this._styleRoot,t=this._diameter,i=n._diameters,r=i.get(e);if(!r||!r.has(t)){var o=this._document.createElement("style");o.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),o.textContent=this._getAnimationText(),e.appendChild(o),r||(r=new Set,i.set(e,r)),r.add(t)}}},{key:"_getAnimationText",value:function(){var e=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*e).replace(/END_VALUE/g,""+.2*e).replace(/DIAMETER/g,"".concat(this._spinnerAnimationLabel))}},{key:"_getSpinnerAnimationLabel",value:function(){return this.diameter.toString().replace(".","_")}}]),n}(zQ);HQ.\u0275fac=function(e){return new(e||HQ)(Ss(Yu),Ss(Mf),Ss(hh,8),Ss(Dy,8),Ss(UQ))},HQ.\u0275cmp=Et({type:HQ,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(e,t){2&e&&(bs("aria-valuemin","determinate"===t.mode?0:null)("aria-valuemax","determinate"===t.mode?100:null)("aria-valuenow","determinate"===t.mode?t.value:null)("mode",t.mode),ou("width",t.diameter,"px")("height",t.diameter,"px"),au("_mat-animation-noopable",t._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[as],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(e,t){1&e&&(Gn(),Os(0,"svg",0),ks(1,LQ,1,9,"circle",1),ks(2,jQ,1,7,"circle",2),Ts()),2&e&&(ou("width",t.diameter,"px")("height",t.diameter,"px"),Es("ngSwitch","indeterminate"===t.mode),bs("viewBox",t._getViewBox()),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngSwitchCase",!1))},directives:[Bh,Vh],styles:[VQ],encapsulation:2,changeDetection:0}),HQ._diameters=new WeakMap;var GQ=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a){var s;return m(this,n),(s=t.call(this,e,i,r,o,a)).mode="indeterminate",s}return n}(HQ);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Mf),Ss(hh,8),Ss(Dy,8),Ss(UQ))},e.\u0275cmp=Et({type:e,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(e,t){2&e&&(ou("width",t.diameter,"px")("height",t.diameter,"px"),au("_mat-animation-noopable",t._noopAnimations))},inputs:{color:"color"},features:[as],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(e,t){1&e&&(Gn(),Os(0,"svg",0),ks(1,FQ,1,9,"circle",1),ks(2,BQ,1,7,"circle",2),Ts()),2&e&&(ou("width",t.diameter,"px")("height",t.diameter,"px"),Es("ngSwitch","indeterminate"===t.mode),bs("viewBox",t._getViewBox()),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngSwitchCase",!1))},directives:[Bh,Vh],styles:[VQ],encapsulation:2,changeDetection:0}),e}(),WQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy,Yh],Gy]}),e}(),qQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,WQ]]}),e}(),XQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,WQ]]}),e}(),YQ={initialConfig:{},parse:{},rename:{}},KQ=function(){function e(t,n){m(this,e),this.configState=t,this.storedChanges={},this.options=Object.assign(Object.assign({},YQ),n)}return b(e,[{key:"addChanges",value:function(e){this.storedChanges=Object.assign(Object.assign({},this.storedChanges),e)}},{key:"applyChanges",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};void 0===e&&(e=this.storedChanges,this.storedChanges={});for(var i=this.configState,r=this.options.initialConfig,o=i.snapshot,a=Object.assign(Object.assign(Object.assign({},r),o),n),s=0,u=Object.entries(e);s true",eg("1s"))])]},changeDetection:0}),e}(),nZ=["*"],iZ={params:{width:0,margin:0,margin2:0}},rZ=function(){function e(){var t=this;m(this,e),this.initialized=!1,this.deferred=new Promise(function(e){t.resolve=e})}return b(e,[{key:"set",value:function(){this.initialized=!0,this.resolve()}},{key:"wait",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.deferred);case 1:case"end":return e.stop()}},e,this)}))}},{key:"valueOf",value:function(){return this.initialized}}]),e}(),oZ=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this.element=i,this.className="ccf-drawer",this._position="start",this._opened=!1,this._expanded=!1,this.openedChange=new Qc(!0),this.expandedChange=new Qc(!0),this.stateChange=new Qc(!0),this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._measuredWidth=0,this.width=0,this._measuredMargin=0,this.margin2=0,this.initialized=new rZ,this.subscriptions=new G,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(function(e){r.handleMessage(e)&&n.markForCheck()}))}return b(e,[{key:"classEnd",get:function(){return"end"===this.position}},{key:"position",get:function(){return this._position},set:function(e){this._position=e||"start"}},{key:"opened",get:function(){return this._opened},set:function(e){this.toggle(Pd(e))}},{key:"expanded",get:function(){return this._expanded},set:function(e){this.toggleExpanded(Pd(e))}},{key:"expandedStateObj",get:function(){return{value:this.expandedState2,params:{width:this.width,margin:this.measuredMargin,margin2:this.margin2}}}},{key:"measuredWidth",get:function(){if(this._measuredWidth>0)return this._measuredWidth;var e=this.element.nativeElement;if(!e)return 0;var t=e.getBoundingClientRect(),n=t.right-t.left;return 0===n?0:(this._measuredWidth=n,n)}},{key:"measuredMargin",get:function(){if(this._measuredMargin>0)return this._measuredMargin;var e=this.element.nativeElement;if(!e)return 0;var t=globalThis.getComputedStyle(e).getPropertyValue("start"===this.position?"margin-right":"margin-left"),n=Number(t.slice(0,-2));return this._measuredMargin=n,n}},{key:"ngAfterViewInit",value:function(){var e=this;this.initialized.set(),setTimeout(function(){return e.channel.sendMessage({type:"drawer-initialized"})})}},{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"open",value:function(){this.toggle(!0)}},{key:"close",value:function(){this.toggle(!1)}},{key:"toggle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.opened;this.opened!==e&&(e?this.openedState=this.initialized.valueOf()?"open":"open-instant":(this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._expanded=!1),this._opened=e,this.sendToggle())}},{key:"openExpanded",value:function(){this.toggleExpanded(!0)}},{key:"closeExpanded",value:function(){this.toggleExpanded(!1)}},{key:"toggleExpanded",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.expanded;this.expanded!==e&&(e?this.expandedState=this.initialized.valueOf()?"open":"open-instant":(this.expandedState="closed",this.expandedState2="collapsed"),this._expanded=e,this.sendToggle())}},{key:"closeOpenDone",value:function(){this.openedChange.emit(this.opened)}},{key:"expandCollapseDone",value:function(){this.expandedChange.emit(this.expanded)}},{key:"sendToggle",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.initialized.wait();case 2:this.channel.sendMessage({type:"drawer-toggled",opened:this.opened,expanded:this.expanded,width:this.measuredWidth,margin:this.measuredMargin}),this.stateChange.emit();case 4:case"end":return e.stop()}},e,this)}))}},{key:"handleMessage",value:function(e){switch(e.payload.type){case"drawer-toggled":return this.syncExpanded(e.source),!0;default:return!1}}},{key:"syncExpanded",value:function(e){(this.expanded||e.expanded)&&(this.expanded&&e.expanded?this.expandedState2=e.expandedState2="half":this.expanded?e.opened?(this.expandedState2="extended",this.width=e.measuredWidth+e.measuredMargin):(this.expandedState2="full",this.margin2=e.measuredMargin):this.opened?(e.expandedState2="extended",e.width=this.measuredWidth+this.measuredMargin):(e.expandedState2="full",e.margin2=this.measuredMargin))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(JQ),Ss(_c),Ss(Yu))},e.\u0275cmp=Et({type:e,selectors:[["ccf-drawer"]],hostVars:10,hostBindings:function(e,t){1&e&&Fs("@openClose.done",function(){return t.closeOpenDone()})("@expandCollapse.done",function(){return t.expandCollapseDone()}),2&e&&(Ou("@openClose",t.openedState)("@expandCollapse",t.expandedStateObj),uu(t.className),au("ccf-drawer-end",t.classEnd)("ccf-drawer-opened",t.opened)("ccf-drawer-expanded",t.expanded))},inputs:{position:"position",opened:"opened",expanded:"expanded"},outputs:{openedChange:"openedChange",expandedChange:"expandedChange",stateChange:"stateChange"},exportAs:["ccfDrawer"],ngContentSelectors:nZ,decls:2,vars:0,consts:[[1,"cff-drawer-inner-container"]],template:function(e,t){1&e&&(Gs(),Os(0,"div",0),Ws(1),Ts())},styles:["[_nghost-%COMP%]{display:block;position:absolute;top:0;bottom:0;z-index:2;outline:0;transform:translate(-100%);background-color:#fff}.ccf-drawer-end[_nghost-%COMP%]{right:0;transform:translate(100%)}[_nghost-%COMP%] .cff-drawer-inner-container[_ngcontent-%COMP%]{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}"],data:{animation:[Jv("openClose",[ig("open, open-instant",ng({transform:"none"})),ig("closed",ng({})),rg("closed => open-instant",eg(0)),rg("closed <=> open, open-instant => closed",eg(".5s ease-in-out"))]),Jv("expandCollapse",[ig("collapsed",ng({})),ig("half",ng({width:"calc(50% - {{ margin }}px)"}),iZ),ig("extended",ng({width:"calc(100% - {{ width }}px - {{ margin }}px)"}),iZ),ig("full",ng({width:"calc(100% - {{ margin }}px - {{ margin2 }}px)"}),iZ),rg("* <=> *",eg(".5s ease-in-out"))])]},changeDetection:0}),e}();function aZ(e,t){1&e&&(Os(0,"ccf-drawer-content"),Ws(1,2),Ts())}var sZ=[[["ccf-drawer"]],[["ccf-drawer-content"]],"*"],uZ=["ccf-drawer","ccf-drawer-content","*"];function cZ(e){throw new Error("Multiple drawers in position ".concat(e))}var lZ=function(){var e=function(){function e(t,n){var i=this;m(this,e),this.cdr=n,this.className="ccf-drawer-container",this.subscriptions=new G,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(function(e){i.handleMessage(e)&&n.markForCheck()}))}return b(e,[{key:"content",get:function(){var e;return null!==(e=this.content1.first)&&void 0!==e?e:this.content2.first}},{key:"hasWrappedContent",get:function(){return 0!==this.content1.length}},{key:"ngAfterViewInit",value:function(){var e=this;this.drawers.changes.pipe(hf(null)).subscribe(function(){var t=e.validateDrawers();e.channel.sendMessage({type:"drawer-containers-changed",drawers:t}),e.cdr.markForCheck()}),this.content1.changes.pipe(hf(null)).subscribe(function(){e.channel.sendMessage({type:"content-container-changed",content:e.content}),e.cdr.markForCheck()})}},{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"handleMessage",value:function(e){return!0}},{key:"validateDrawers",value:function(){var e=this.drawers.toArray(),t=e.filter(function(e){return"start"===e.position}),n=e.filter(function(e){return"end"===e.position});return t.length>1&&cZ("start"),n.length>1&&cZ("end"),[t[0],n[0]]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(JQ),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-drawer-container"]],contentQueries:function(e,t,n){var i;(1&e&&(hl(n,oZ,5),hl(n,tZ,5)),2&e)&&(cl(i=dl())&&(t.drawers=i),cl(i=dl())&&(t.content1=i))},viewQuery:function(e,t){var n;(1&e&&ll(tZ,5),2&e)&&(cl(n=dl())&&(t.content2=n))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.className)},exportAs:["ccfDrawerContainer"],features:[Uu([JQ])],ngContentSelectors:uZ,decls:3,vars:1,consts:[[4,"ngIf"]],template:function(e,t){1&e&&(Gs(sZ),Ws(0),Ws(1,1),ks(2,aZ,2,0,"ccf-drawer-content",0)),2&e&&(Wo(2),Es("ngIf",!t.hasWrappedContent))},directives:[Nh,tZ],styles:["[_nghost-%COMP%]{display:block;position:relative;z-index:1;overflow:hidden;-webkit-overflow-scrolling:touch}"],changeDetection:0}),e}();function hZ(e,t){if(1&e&&(Os(0,"mat-option",6),Os(1,"div"),wu(2),Ts(),Ts()),2&e){var n=t.$implicit,i=Us();Es("value",n),Wo(1),uu(i.optionsVisible),Wo(1),xu(" ",n," ")}}var dZ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.selectionChange=new Qc,this.optionsVisible="invisible"}return b(e,[{key:"toggleOptions",value:function(){this.optionsVisible="visible"===this.optionsVisible?"invisible":"visible"}},{key:"selectionChanged",value:function(e){this.selection=e,this.ga.event("selection_change","dropdown","".concat(this.label,":").concat(e)),this.selectionChange.emit(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-dropdown"]],inputs:{label:"label",options:"options",selection:"selection"},outputs:{selectionChange:"selectionChange"},decls:7,vars:3,consts:[[1,"ccf-dropdown","wrapper"],[1,"container"],[1,"dropdown-form-field"],[1,"label"],["disableOptionCentering","true","panelClass","option-panel","disableRipple","true",1,"selected-value",3,"value","selectionChange","openedChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"mat-form-field",2),Os(3,"div",3),wu(4),Ts(),Os(5,"mat-select",4),js("selectionChange",function(e){return t.selectionChanged(e.value)})("openedChange",function(){return t.toggleOptions()}),ks(6,hZ,3,5,"mat-option",5),Ts(),Ts(),Ts(),Ts()),2&e&&(Wo(4),xu(" ",t.label," "),Wo(1),Es("value",t.selection),Wo(1),Es("ngForOf",t.options))},directives:[Vz,EY,Rh,gb],styles:["@-webkit-keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dropdown-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:1em;padding-right:1em;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{font-size:.875rem;border:none}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix mat-select{font-size:1rem;font-weight:bold}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .option-panel{-webkit-animation:slideInHorizontalDropdown .3s;animation:slideInHorizontalDropdown .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;position:absolute!important;top:1.55rem;max-width:9.5rem} .option-panel .mat-option{border-bottom-width:1px;border-bottom-style:solid;padding-left:1em} .option-panel :last-child{border-bottom:none} .cdk-overlay-pane{min-width:0rem!important}.dropdown-form-field[_ngcontent-%COMP%]{height:3rem;width:100%}.dropdown-form-field[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{padding-bottom:.063rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem} .ccf-dropdown .mat-select-arrow-wrapper{transform:translatey(-.5em)}"],changeDetection:0}),e}(),fZ=["popover"];function pZ(e,t){if(1&e){var n=Rs();Os(0,"div",7,8),Os(2,"div"),Os(3,"div",9),wu(4),Ts(),Os(5,"input",10),js("keyup",function(e){return gn(n),Us().onKeyLow(e)}),Ts(),Ts(),Os(6,"ng5-slider",11),js("valueChange",function(e){return gn(n),Us().lowValue=e})("highValueChange",function(e){return gn(n),Us().highValue=e})("userChangeEnd",function(){return gn(n),Us().sliderValueChanged()}),Ts(),Os(7,"div"),Os(8,"div",12),wu(9),Ts(),Os(10,"input",13),js("keyup",function(e){return gn(n),Us().onKeyHigh(e)}),Ts(),Ts(),Ts()}if(2&e){var i=Us();Wo(2),Eu("label min fade-in ",i.contentsVisible,""),Wo(2),xu(" ",i.options.floor,"> "),Wo(1),qs("value",i.lowValue),Wo(1),Eu("slider fade-in ",i.contentsVisible,""),Es("options",i.options)("value",i.lowValue)("highValue",i.highValue),Wo(1),Eu("label max fade-in ",i.contentsVisible,""),Wo(2),xu(" ",i.options.ceil," "),Wo(1),qs("value",i.highValue)}}var vZ=function(){var e=function(){function e(t,n,i){m(this,e),this.element=n,this.ga=i,this.selectionChange=new Qc,this.isSliderOpen=!1,this.contentsVisible="invisible",this.isSliderInitialized=!1;var r=t.position().flexibleConnectedTo(n).withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayRef=t.create({panelClass:"slider-pane",positionStrategy:r})}return b(e,[{key:"rangeLabel",get:function(){var e=this.lowValue,t=this.highValue;return e===t?"".concat(e):"".concat(e,"-").concat(t)}},{key:"ngOnChanges",value:function(e){e.valueRange&&this.optionsChanged(),e.selection&&(this.lowValue=Math.min.apply(Math,v(this.selection)),this.highValue=Math.max.apply(Math,v(this.selection)))}},{key:"optionsChanged",value:function(){var e,t;this.options={floor:this.valueRange?this.valueRange[0]:0,ceil:this.valueRange?this.valueRange[1]:0,step:1,hideLimitLabels:!0,hidePointerLabels:!0},this.lowValue=null!==(e=this.options.floor)&&void 0!==e?e:0,this.highValue=null!==(t=this.options.ceil)&&void 0!==t?t:0}},{key:"ngOnDestroy",value:function(){this.overlayRef.dispose()}},{key:"closeSliderPopover",value:function(e){var t,n,i=this.element,r=this.isSliderOpen,o=this.popoverElement;r&&(i.nativeElement.contains(e)||(null===(n=null===(t=null==o?void 0:o.nativeElement)||void 0===t?void 0:t.contains)||void 0===n?void 0:n.call(t,e))||(this.overlayRef.detach(),this.isSliderInitialized=!1,this.isSliderOpen=!1,this.contentsVisible="invisible"))}},{key:"toggleSliderPopover",value:function(){var e=this.isSliderOpen,t=this.isSliderInitialized;t?(this.overlayRef.detach(),this.isSliderInitialized=!1):!t&&!e&&this.initializeSliderPopover(),this.contentsVisible="visible"===this.contentsVisible?"invisible":"visible",this.isSliderOpen=!e}},{key:"sliderValueChanged",value:function(){var e=this.lowValue,t=this.highValue;this.selection=[e,t],this.ga.event("slider_range_change","dual_slider","".concat(this.label,":").concat(e,":").concat(t)),this.selectionChange.emit(this.selection)}},{key:"initializeSliderPopover",value:function(){var e=this.overlayRef,t=this.popoverPortal;e.attach(t),e.updatePosition(),this.isSliderInitialized=!0}},{key:"onKeyLow",value:function(e){var t=Number(e.target.value);"Enter"===e.key&&(t>=Number(this.options.floor)&&t<=Number(this.options.ceil)&&(this.lowValue=t),e.target.value=String(this.lowValue),e.target.blur(),this.sliderValueChanged())}},{key:"onKeyHigh",value:function(e){var t=Number(e.target.value);"Enter"===e.key&&(t>=Number(this.options.floor)&&t<=Number(this.options.ceil)&&(this.highValue=t),e.target.value=String(this.highValue),e.target.blur(),this.sliderValueChanged())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Yu),Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-dual-slider"]],viewQuery:function(e,t){var n;(1&e&&(ll(ep,7),ll(fZ,5,Yu)),2&e)&&(cl(n=dl())&&(t.popoverPortal=n.first),cl(n=dl())&&(t.popoverElement=n.first))},hostBindings:function(e,t){1&e&&js("click",function(e){return t.closeSliderPopover(e.target)},!1,to)("touchstart",function(e){return t.closeSliderPopover(e.target)},!1,to)},inputs:{label:"label",valueRange:"valueRange",selection:"selection"},outputs:{selectionChange:"selectionChange"},features:[Ht],decls:10,vars:4,consts:[[1,"ccf-slider","wrapper"],[1,"container"],["class","ccf-slider detached",4,"cdk-portal"],[1,"slider-form-field",3,"click"],[1,"slider-labels"],[1,"name-label"],[1,"range-label"],[1,"ccf-slider","detached"],["popover",""],[1,"label","floor"],["type","text",1,"input-low",3,"value","keyup"],[3,"options","value","highValue","valueChange","highValueChange","userChangeEnd"],[1,"label","ceil"],["type","text",1,"input-high",3,"value","keyup"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),ks(2,pZ,11,16,"div",2),Os(3,"mat-form-field",3),js("click",function(){return t.toggleSliderPopover()}),Os(4,"div",4),Os(5,"span",5),wu(6),Ts(),Os(7,"span",6),wu(8),Ts(),Ts(),As(9,"mat-select"),Ts(),Ts(),Ts()),2&e&&(Wo(3),au("highlight",t.isSliderOpen),Wo(3),ku(t.label),Wo(2),ku(t.rangeLabel))},directives:[tp,Vz,EY,gK],styles:[".slider-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;font-size:.875rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.slider-labels[_ngcontent-%COMP%]{display:flex;flex-direction:column}.slider-labels[_ngcontent-%COMP%] .name-label[_ngcontent-%COMP%]{padding-bottom:.25rem}.slider-labels[_ngcontent-%COMP%] .range-label[_ngcontent-%COMP%]{font-weight:bold} .ccf-slider.wrapper .mat-select-arrow-wrapper{transform:translatey(-1.5em)}@-webkit-keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .slider-pane{position:absolute!important;top:-1px}.ccf-slider.detached[_ngcontent-%COMP%]{-webkit-animation:slideInHorizontalSlider .3s;animation:slideInHorizontalSlider .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;display:flex;justify-content:center;align-items:center;width:0rem;height:4.375rem;padding:.75rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] {visibility:hidden;margin-top:.9375rem;margin-bottom:.9375rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-bar{opacity:.2;height:.15rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-selection{opacity:1}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer{width:1rem;height:1rem;top:-.405rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer:after{display:none}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:2rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.min[_ngcontent-%COMP%]{margin-right:1rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%]{margin-left:1rem;align-items:flex-end}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{text-align:right}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .floor[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%]{font-size:.875rem}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:none;width:1.75rem;font-size:1rem;font-weight:bold;padding:0}"]}),e}();function gZ(e,t){if(1&e){var n=Rs();Os(0,"div",4),Os(1,"mat-checkbox",5),js("change",function(e){var t=gn(n).$implicit;return Us().filterOnChange(e,t)}),wu(2),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us();Wo(1),Es("checked",null==r.selection?null:r.selection.includes(i)),Wo(1),xu(" ",i," ")}}var mZ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.selection=[],this.columns=3,this.selectionChange=new Qc}return b(e,[{key:"filterOnChange",value:function(e,t){e.checked?(this.selection=[].concat(v(this.selection),[t]),this.ga.event("filter_added","filter_checkbox",t)):(this.selection=this.selection.filter(function(e){return e!==t}),this.ga.event("filter_removed","filter_checkbox",t)),this.selectionChange.emit(this.selection)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-checkbox"]],inputs:{label:"label",options:"options",selection:"selection",columns:"columns"},outputs:{selectionChange:"selectionChange"},decls:5,vars:6,consts:[[1,"filter-container"],[1,"filter-label"],[1,"options-container"],["class","option",4,"ngFor","ngForOf"],[1,"option"],[3,"checked","change"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),wu(2),Ts(),Os(3,"div",2),ks(4,gZ,3,2,"div",3),Ts(),Ts()),2&e&&(Wo(2),ku(t.label),Wo(1),au("three",3===t.columns)("four",4===t.columns),Wo(1),Es("ngForOf",t.options))},directives:[Rh,iY],styles:[".mat-checkbox.mat-accent .mat-checkbox-checkmark-path{stroke:#fff!important} .mat-checkbox.mat-accent .mat-checkbox-inner-container{margin-right:1rem}.filter-label[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:bold}.options-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap}.options-container.three[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:33%}.options-container.four[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:25%}.option[_ngcontent-%COMP%]{color:#fafafa}"],changeDetection:0}),e}(),yZ=function(){return["Both","Male","Female"]},bZ=function(){return[1,110]},_Z=function(){return[13,83]},wZ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.filtersChange=new Qc,this.applyFilters=new Qc}return b(e,[{key:"updateFilter",value:function(e,t){this.filters=Object.assign(Object.assign({},this.filters),o({},t,e)),this.ga.event("filter_update","filter_content","".concat(t,":").concat(e)),this.filtersChange.emit(this.filters)}},{key:"applyButtonClick",value:function(){this.ga.event("filters_applied","filter_content"),this.applyFilters.emit(this.filters)}},{key:"refreshFilters",value:function(){this.filters=JSON.parse(JSON.stringify(DX)),this.ga.event("filters_reset","filter_content"),this.filtersChange.emit(this.filters)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-filters-content"]],inputs:{hidden:"hidden",filters:"filters",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange",applyFilters:"applyFilters"},decls:14,vars:23,consts:[[1,"patient-filters"],["label","Sex",3,"options","selection","selectionChange"],["label","Age",3,"valueRange","selection","selectionChange"],["label","BMI",3,"valueRange","selection","selectionChange"],[1,"filter","assays"],["label","Assay Types",3,"columns","options","selection","selectionChange"],[1,"filter","providers"],["label","Tissue Providers",3,"columns","options","selection","selectionChange"],[1,"button-container"],["mat-button","",1,"outline-button",3,"click"],[1,"refresh-icon"],[1,"icon","refresh",3,"click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"ccf-dropdown",1),js("selectionChange",function(e){return t.updateFilter(e,"sex")}),Ts(),Os(2,"ccf-dual-slider",2),js("selectionChange",function(e){return t.updateFilter(e,"ageRange")}),Ts(),Os(3,"ccf-dual-slider",3),js("selectionChange",function(e){return t.updateFilter(e,"bmiRange")}),Ts(),Ts(),Os(4,"div",4),Os(5,"ccf-checkbox",5),js("selectionChange",function(e){return t.updateFilter(e,"technologies")}),Ts(),Ts(),Os(6,"div",6),Os(7,"ccf-checkbox",7),js("selectionChange",function(e){return t.updateFilter(e,"tmc")}),Ts(),Ts(),Os(8,"div",8),Os(9,"button",9),js("click",function(){return t.applyButtonClick()}),wu(10,"APPLY FILTERS"),Ts(),Os(11,"div",10),Os(12,"mat-icon",11),js("click",function(){return t.refreshFilters()}),wu(13,"refresh"),Ts(),Ts(),Ts()),2&e&&(au("hidden",t.hidden),Wo(1),Es("options",Gc(20,yZ))("selection",null==t.filters?null:t.filters.sex),Wo(1),Es("valueRange",Gc(21,bZ))("selection",null==t.filters?null:t.filters.ageRange),Wo(1),Es("valueRange",Gc(22,_Z))("selection",null==t.filters?null:t.filters.bmiRange),Wo(1),au("hidden",t.hidden),Wo(1),Es("columns",4)("options",t.technologyFilters)("selection",null==t.filters?null:t.filters.technologies),Wo(1),au("hidden",t.hidden),Wo(1),Es("columns",3)("options",t.providerFilters)("selection",null==t.filters?null:t.filters.tmc),Wo(1),au("hidden",t.hidden))},directives:[dZ,vZ,mZ,A_,k_],styles:[".filter[_ngcontent-%COMP%]{margin-top:2rem}.filter.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.filter.assays[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{margin-right:0 rem;width:25%}.button-container[_ngcontent-%COMP%]{margin-top:2rem;display:flex;flex-direction:row-reverse;align-items:center}.button-container.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.outline-button[_ngcontent-%COMP%]{box-shadow:.1rem .1rem .2rem #0000001d}.refresh-icon[_ngcontent-%COMP%]{padding:.25rem;border-radius:.25rem;margin-right:1rem;display:flex;justify-content:center;align-items:center;transition:.6s}.refresh-icon[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{cursor:pointer;transition:.6s;transition-property:background}.patient-filters[_ngcontent-%COMP%]{display:flex;width:90%;padding-top:1rem}.patient-filters.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.patient-filters[_ngcontent-%COMP%] ccf-dual-slider[_ngcontent-%COMP%]{margin-left:.5rem;width:33%}.patient-filters[_ngcontent-%COMP%] ccf-dropdown[_ngcontent-%COMP%]{width:33%}"],changeDetection:0}),e}();function kZ(e,t){1&e&&(Os(0,"div"),Os(1,"mat-icon",7),wu(2,"close"),Ts(),Ts())}function xZ(e,t){1&e&&As(0,"mat-icon",8)}var SZ=function(){var e=function(){function e(){m(this,e),this.filtersChange=new Qc,this.filtersVisible=!1}return b(e,[{key:"toggleFilterVisible",value:function(){this.filtersVisible=!this.filtersVisible}},{key:"removeBox",value:function(){this.filtersVisible=!1}},{key:"applyFilters",value:function(e){this.filters=e,this.filtersChange.emit(e),this.removeBox()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-filters-popover"]],inputs:{filters:"filters",drawerExpanded:"drawerExpanded",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange"},decls:8,vars:12,consts:[[1,"filters-popover"],[1,"show-hide",3,"click"],[4,"ngIf","ngIfElse"],["notShow",""],[1,"popup-container"],[1,"popup-body"],[3,"technologyFilters","providerFilters","hidden","filters","applyFilters"],[1,"icon"],["svgIcon","filter",1,"icon","funnel"]],template:function(e,t){if(1&e&&(Os(0,"div",0),Os(1,"button",1),js("click",function(){return t.toggleFilterVisible()}),ks(2,kZ,3,0,"div",2),ks(3,xZ,1,0,"ng-template",null,3,gl),Ts(),Os(5,"div",4),Os(6,"div",5),Os(7,"ccf-filters-content",6),js("applyFilters",function(e){return t.applyFilters(e)}),Ts(),Ts(),Ts(),Ts()),2&e){var n=xs(4);au("expanded",t.drawerExpanded),Wo(2),Es("ngIf",t.filtersVisible)("ngIfElse",n),Wo(3),au("visible",t.filtersVisible)("hidden",!t.filtersVisible),Wo(2),Es("technologyFilters",t.technologyFilters)("providerFilters",t.providerFilters)("hidden",!t.filtersVisible)("filters",t.filters)}},directives:[Nh,wZ,k_],styles:[".filters-popover[_ngcontent-%COMP%]{position:inherit}.filters-popover.expanded[_ngcontent-%COMP%]{position:relative}.filters-popover.expanded[_ngcontent-%COMP%] .popup-container[_ngcontent-%COMP%]{right:inherit}.filters-popover.expanded[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding-left:4em!important}.popup-container[_ngcontent-%COMP%]{position:absolute;z-index:5;top:1.2rem;left:1.48rem;box-shadow:.2rem .2rem 1rem #00000058}.popup-container[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding:1.5rem;position:relative;height:26.5rem}.popup-container.visible[_ngcontent-%COMP%]{width:35rem;height:26.5rem;transition:width .2s ease-in-out;border-width:1px}.popup-container.visible[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:1;transition-delay:.3s;transition-duration:.2s}.popup-container.hidden[_ngcontent-%COMP%]{width:0;height:0;transition:all .2s ease-out;transition-delay:.3s;pointer-events:none}.popup-container.hidden[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.show-hide[_ngcontent-%COMP%]{background:none;border:none;z-index:10;position:relative;cursor:pointer;outline:none;padding:.5rem;border-radius:.25rem;transition:.6s}"],changeDetection:0}),e}(),EZ=function(){function e(){m(this,e),this.treeModel$=new Sf(1),this.nodes$=this.treeModel$.pipe(se(function(e){return Object.values(e.nodes)})),this.rootNode$=this.treeModel$.pipe(se(function(e){return e.nodes[e.root]}))}return b(e,[{key:"setTreeModel",value:function(e){this.treeModel$.next(e),this.treeModel=e}},{key:"filter",value:function(e){var t=this;return this.nodes$.pipe(se(function(n){return t.lookup(n,e.toLowerCase())}))}},{key:"lookup",value:function(e,t){var n=this,i=new Map;return e&&e.forEach(function(e){if(e.label.toLowerCase().includes(t)&&!i.get(e.id))i.set(e.id,{index:n.getIndexOfMatch(e.label,t),displayLabel:n.formatLabel(e.label,t),node:e});else{var r=e.synonymLabels.find(function(e){return e.toLowerCase().includes(t)});r&&!i.get(e.id)&&i.set(e.id,{index:n.getIndexOfMatch(e.label+" ("+r+")",t),displayLabel:n.formatLabel(e.label+" ("+r+")",t),node:e})}}),Array.from(i.values())}},{key:"getIndexOfMatch",value:function(e,t){return e.toLowerCase().indexOf(t)}},{key:"formatLabel",value:function(e,t){var n=this.getIndexOfMatch(e,t);return[e.slice(0,n),e.slice(n,n+t.length),e.slice(n+t.length)]}},{key:"getChildren",value:function(e){var t,n,i=null!==(n=null===(t=this.treeModel)||void 0===t?void 0:t.nodes)&&void 0!==n?n:{};return(0,QG.at)(i,e.children)}}]),e}();EZ.\u0275fac=function(e){return new(e||EZ)},EZ.\u0275prov=Ye({token:EZ,factory:EZ.\u0275fac}),pw([CF.ak],EZ.prototype,"getChildren",null);var CZ=function(){function e(t,n){m(this,e),this.original=t,this.level=n,this.visible=!0,this.opacity=20}return b(e,[{key:"label",get:function(){return this.original.label}},{key:"expandable",get:function(){return this.original.children.length>0}}],[{key:"create",value:function(t,n){return new e(t,n)}}]),e}();function OZ(e,t){if(1&e){var n=Rs();Os(0,"div",4),js("click",function(e){var t=gn(n).node,i=Us();return i.select(e.ctrlKey,t,!0,!i.isSelected(t))}),wu(1),Ts()}if(2&e){var i=t.node,r=Us();au("hidden",i.label===(null==r.highlightedNode?null:r.highlightedNode.label))("filtered-out",!r.occurenceData[i.original.id]&&!!r.termData[i.original.id])("unavailable",!r.termData[i.original.id])("selected",r.isSelected(i)),Wo(1),ku("colon"===i.label?"large intestine":i.label)}}function TZ(e,t){1&e&&Is(0)}var AZ=function(e){return{node:e}};function PZ(e,t){if(1&e){var n=Rs();Os(0,"mat-tree-node",5),js("mouseleave",function(){gn(n);var e=xs(5);return Us().mouseOut(),e.reset()}),Os(1,"div"),Os(2,"mat-icon",6),js("mouseenter",function(){var e=gn(n).$implicit;return Us().mouseOver(e)}),Ts(),Os(3,"div",7),Os(4,"ccf-opacity-slider",8,9),js("opacityChange",function(e){var t=gn(n).$implicit;return Us().updateOpacity(t,e)})("opacityReset",function(){var e=gn(n).$implicit;return Us().resetNode(e)})("visibilityToggle",function(){var e=gn(n).$implicit;return Us().toggleVisibility(e)}),Ts(),Ts(),Ts(),As(6,"div",10),ks(7,TZ,1,0,"ng-container",11),Os(8,"div",12),wu(9),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us(),o=xs(2);Es("matTreeNodePaddingIndent",r.indent),Wo(1),ou("display",-1!==i.opacity?"none":"block"),Wo(1),ou("left",r.getLeftIndent(i.level)),au("fade",!0!==i.visible),Wo(1),ou("left",r.getLeftIndent(i.level)),au("hidden",i.label!==(null==r.highlightedNode?null:r.highlightedNode.label)),Wo(1),Es("visible",i.visible)("opacity",i.opacity),Wo(3),Es("ngTemplateOutlet",o)("ngTemplateOutletContext",Wc(18,AZ,i)),Wo(1),au("suborgan",i.level>1),Wo(1),ku(r.occurenceData[i.original.id]||0)}}function MZ(e,t){1&e&&Is(0)}function IZ(e,t){if(1&e){var n=Rs();Os(0,"mat-tree-node",13),js("mouseleave",function(){gn(n);var e=xs(5);return Us().mouseOut(),e.reset()}),Os(1,"div"),Os(2,"mat-icon",6),js("mouseenter",function(){var e=gn(n).$implicit;return Us().mouseOver(e)}),Ts(),Os(3,"div",7),Os(4,"ccf-opacity-slider",8,14),js("opacityChange",function(e){var t=gn(n).$implicit;return Us().updateOpacity(t,e)})("opacityReset",function(){var e=gn(n).$implicit;return Us().resetNode(e)})("visibilityToggle",function(){var e=gn(n).$implicit;return Us().toggleVisibility(e)}),Ts(),Ts(),Ts(),Os(6,"button",15),Os(7,"mat-icon",16),wu(8),Ts(),Ts(),ks(9,MZ,1,0,"ng-container",11),Os(10,"div",12),wu(11),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us(),o=xs(2);Es("matTreeNodePaddingIndent",r.indent),Wo(1),ou("display",-1!==i.opacity?"none":"block"),Wo(1),ou("left",r.getLeftIndent(i.level)),au("fade",!0!==i.visible),Wo(1),ou("left",r.getLeftIndent(i.level)),au("hidden",i.label!==(null==r.highlightedNode?null:r.highlightedNode.label)),Wo(1),Es("visible",i.visible)("opacity",i.opacity),Wo(2),au("hidden",i.label===(null==r.highlightedNode?null:r.highlightedNode.label)),ws("aria-label","Toggle ",i.label,""),Wo(2),xu(" ",r.control.isExpanded(i)?"expand_less":"expand_more"," "),Wo(1),Es("ngTemplateOutlet",o)("ngTemplateOutletContext",Wc(22,AZ,i)),Wo(1),au("suborgan",i.level>1),Wo(1),ku(r.occurenceData[i.original.id]||0)}}var RZ=(0,QG.property)("level"),DZ=(0,QG.property)("expandable"),NZ=function(){var e=function(){function e(t,n){m(this,e),this.cdr=t,this.ga=n,this.atScrollBottom=!1,this.nodeSelected=new Qc,this.nodeChanged=new Qc,this.indent="1.5rem",this.control=new xK(RZ,DZ),this.flattener=new HK(CZ.create,RZ,DZ,QG.invoke.bind(void 0,this,"getChildren")),this.dataSource=new GK(this.control,this.flattener),this._nodes=void 0,this.anySelectionsMade=!1,this.selectedNodes=[]}return b(e,[{key:"nodes",get:function(){return this._nodes},set:function(e){var t;this._nodes=e,this.control&&(this.dataSource.data=null!==(t=this._nodes)&&void 0!==t?t:[])}},{key:"getChildren",get:function(){return this._getChildren},set:function(e){var t;this._getChildren=e,this.dataSource.data=null!==(t=this.nodes)&&void 0!==t?t:[]}},{key:"occurenceData",get:function(){return this._occurenceData},set:function(e){this._occurenceData=e||{}}},{key:"termData",get:function(){return this._termData},set:function(e){this._termData=e||{}}},{key:"ngOnInit",value:function(){this.control.dataNodes&&this.control.expand(this.control.dataNodes[0])}},{key:"ngOnChanges",value:function(e){if(e.ontologyFilter){var t=e.ontologyFilter.currentValue;(null==t?void 0:t.length)>=0&&this.selectByIDs(t)}e.rootNode&&this.selectByIDs([e.rootNode.currentValue])}},{key:"selectByIDs",value:function(e){var t=this,n=this.control.dataNodes,i=n.filter(function(t){return e.indexOf(t.original.id)>-1});(null==i?void 0:i.length)>0&&(this.selectedNodes=i,this.ga.event("nodes_selected_by_ids","ontology_tree",i.map(function(e){return e.label}).join(",")),this.control.collapseAll(),this.selectedNodes.forEach(function(e){t.expandAndSelect(e.original,function(e){var t;return null===(t=n.find(function(t){return t.original.id===e.parent}))||void 0===t?void 0:t.original},!0)}))}},{key:"expandAndSelect",value:function(e,t){for(var n,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=this.cdr,o=this.control,a=new Set,s=t(e);s;)a.add(s),s=t(s);var u=(0,QG.filter)(o.dataNodes,function(e){return a.has(e.original)}),c=o.dataNodes.find(function(t){return t.original===e});i||(this.selectedNodes=[],o.collapseAll());var l,h=_(u);try{for(h.s();!(l=h.n()).done;){var d=l.value;o.expand(d)}}catch(f){h.e(f)}finally{h.f()}"body"===e.label&&(null===(n=o.dataNodes)||void 0===n?void 0:n.length)>0&&o.expand(o.dataNodes[0]),this.select(i,c,!1,!0),r.detectChanges()}},{key:"isInnerNode",value:function(e,t){return t.expandable}},{key:"isSelected",value:function(e){return(null==e?void 0:e.original.id)===this.rootNode||this.selectedNodes.filter(function(t){return(null==e?void 0:e.original.label)===(null==t?void 0:t.original.label)}).length>0}},{key:"select",value:function(e,t,n,i){if(this.anySelectionsMade||(this.selectedNodes=[],this.anySelectionsMade=!0),void 0===t)return this.selectedNodes=[],void this.ga.event("nodes_unselected","ontology_tree");e?i?this.selectedNodes.indexOf(t)<0&&this.selectedNodes.push(t):this.selectedNodes.splice(this.selectedNodes.indexOf(t),1):(this.selectedNodes=[],i&&this.selectedNodes.push(t)),this.ga.event("nodes_selected","ontology_tree",this.selectedNodes.map(function(e){return e.label}).join(",")),n&&this.nodeSelected.emit(this.selectedNodes.map(function(e){return null==e?void 0:e.original}))}},{key:"mouseOver",value:function(e){this.highlightedNode=e}},{key:"mouseOut",value:function(){this.highlightedNode=void 0}},{key:"updateOpacity",value:function(e,t){e.opacity=t,this.ga.event("opacity_update","ontology_tree",e.label,t),this.nodeChanged.emit(e)}},{key:"resetNode",value:function(e){e.opacity=20,e.visible=!0,this.ga.event("node_reset","ontology_tree",e.label),this.nodeChanged.emit(e)}},{key:"toggleVisibility",value:function(e){e.visible=!0!==e.visible,this.ga.event("visibility_update","ontology_tree",e.label,+e.visible),this.nodeChanged.emit(e)}},{key:"getLeftIndent",value:function(e){return-1.5*e+"rem"}},{key:"onScroll",value:function(e){if(e.target){var t=e.target,n=t.clientHeight,i=t.scrollHeight,r=t.scrollTop;this.atScrollBottom=i-r-n<20}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(_c),Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-ontology-tree"]],inputs:{ontologyFilter:"ontologyFilter",rootNode:"rootNode",nodes:"nodes",getChildren:"getChildren",occurenceData:"occurenceData",termData:"termData",header:"header"},outputs:{nodeSelected:"nodeSelected",nodeChanged:"nodeChanged"},features:[Ht],decls:5,vars:5,consts:[[1,"ccf-ontology-tree",3,"dataSource","treeControl","scroll"],["selectableRegion",""],["class","node leaf-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef"],["class","node inner-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef","matTreeNodeDefWhen"],[1,"text",3,"click"],["matTreeNodePadding","",1,"node","leaf-node",3,"matTreeNodePaddingIndent","mouseleave"],["svgIcon","app:opacity",1,"icon","opacity",3,"mouseenter"],[1,"slider"],[3,"visible","opacity","opacityChange","opacityReset","visibilityToggle"],["slider1",""],[1,"non-expandable"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"num-results"],["matTreeNodePadding","",1,"node","inner-node",3,"matTreeNodePaddingIndent","mouseleave"],["slider2",""],["mat-icon-button","","matTreeNodeToggle","",1,"toggle"],[1,"icon","font-icon"]],template:function(e,t){1&e&&(Os(0,"mat-tree",0),js("scroll",function(e){return t.onScroll(e)}),ks(1,OZ,2,9,"ng-template",null,1,gl),ks(3,PZ,10,20,"mat-tree-node",2),ks(4,IZ,12,24,"mat-tree-node",3),Ts()),2&e&&(au("header-hidden",!t.header),Es("dataSource",t.dataSource)("treeControl",t.control),Wo(4),Es("matTreeNodeDefWhen",t.isInnerNode))},directives:[VK,jK,LK,FK,k_,Pq,Hh,A_,zK],styles:[".ccf-ontology-tree[_ngcontent-%COMP%]{background:none;scrollbar-width:thin;max-height:calc(50vh - 10rem);overflow:auto;overflow-x:hidden}.ccf-ontology-tree.header-hidden[_ngcontent-%COMP%]{max-height:40vh}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .toggle[_ngcontent-%COMP%]{z-index:-1;opacity:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .text[_ngcontent-%COMP%]{margin-left:.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]{min-height:0;font-size:1rem;margin-bottom:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:width;position:relative;z-index:1}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%]{width:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%] ccf-opacity-slider[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider{height:1.5rem;margin-left:1rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box .slider-and-label{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider{height:1.5rem;width:15rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider .mat-slider-wrapper{top:12px}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .opacity-value{width:3rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-right:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node.inner-node[_ngcontent-%COMP%] button.hidden[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .opacity[_ngcontent-%COMP%]{position:relative;min-width:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:normal}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .autocomplete-open[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{border-bottom:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .non-expandable[_ngcontent-%COMP%]{margin-left:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:nowrap;cursor:pointer;margin-left:1rem;opacity:1;width:50%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:opacity,width}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.hidden[_ngcontent-%COMP%]{opacity:0;width:0%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.unavailable[_ngcontent-%COMP%]{pointer-events:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-left:auto}.scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:90%;bottom:0;pointer-events:none}.scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}();function LZ(e,t){if(1&e&&(Os(0,"mat-option",8),Os(1,"span",9),wu(2),Ts(),Os(3,"span",10),wu(4),Ts(),Os(5,"span",11),wu(6),Ts(),Ts()),2&e){var n=t.$implicit;Es("value",n),Wo(2),ku(n.displayLabel[0]),Wo(2),ku(n.displayLabel[1]),Wo(2),ku(n.displayLabel[2])}}var jZ=function(){var e=function(){function e(t,n){m(this,e),this.ontologyService=t,this.ga=n,this.selected=new Qc,this.formControl=new XV(""),this.autoCompleteOpen=!1}return b(e,[{key:"ngOnInit",value:function(){var e=this;this.filteredResults$=this.formControl.valueChanges.pipe(rf(function(e){return"string"==typeof e}),hf(""),df(function(t){return e.ontologyService.filter(t)}),se(function(t){return(0,QG.sortBy)(t,[e.sortBySynonymResult,"index",e.sortLexically])}))}},{key:"displayFormatter",value:function(e){var t;return(null!==(t=null==e?void 0:e.displayLabel)&&void 0!==t?t:[]).join("")}},{key:"sortBySynonymResult",value:function(e){return e.displayLabel.join().includes("(")?1:-1}},{key:"sortLexically",value:function(e){return e.node.label.toLowerCase()}},{key:"onSelect",value:function(e){var t=(0,QG.get)(e,["option","value","node"]);t&&(this.ga.event("search","ontology_search",t.id),this.selected.emit(t),this.formControl.reset())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(EZ),Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-ontology-search"]],inputs:{placeholderText:"placeholderText"},outputs:{selected:"selected"},decls:10,vars:9,consts:[[1,"ccf-ontology-search"],["appearance","outline",1,"field"],["matPrefix","","color","primary",1,"search"],["type","text","matInput","",1,"input",3,"placeholder","formControl","matAutocomplete"],[1,"ccf-ontology-search","detached","autocomplete",3,"displayWith","optionSelected","opened","closed"],["autocomplete",""],[1,"results-container"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"prefix"],[1,"search-term"],[1,"suffix"]],template:function(e,t){if(1&e&&(Os(0,"form",0),Os(1,"mat-form-field",1),Os(2,"mat-icon",2),wu(3,"search"),Ts(),As(4,"input",3),Os(5,"mat-autocomplete",4,5),js("optionSelected",function(e){return t.onSelect(e)})("opened",function(){return t.autoCompleteOpen=!0})("closed",function(){return t.autoCompleteOpen=!1}),Os(7,"div",6),ks(8,LZ,7,4,"mat-option",7),Yc(9,"async"),Ts(),Ts(),Ts(),Ts()),2&e){var n=xs(6);au("autocomplete-open",t.autoCompleteOpen),Wo(4),Es("placeholder",t.placeholderText)("formControl",t.formControl)("matAutocomplete",n),Wo(1),Es("displayWith",t.displayFormatter),Wo(3),Es("ngForOf",Kc(9,7,t.filteredResults$))}},directives:[JV,OV,ZV,Vz,k_,Dz,pU,oV,oU,CV,iz,eU,Rh,gb],pipes:[Xh],styles:[".ccf-ontology-search[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem .25rem 0;margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;height:3rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix input{margin-left:.4rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-prefix{top:.5rem;border:none}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0 .25rem;min-width:2.5rem} .ccf-ontology-search.detached{border:.125rem solid;border-top:none;border-radius:0 0 .25rem .25rem;max-height:18rem} .ccf-ontology-search.detached .results-container{width:23.75rem;margin-bottom:1rem;overflow:auto;max-height:15rem;scrollbar-width:thin} .ccf-ontology-search.detached .results-container mat-option{height:1.5rem;width:23.75rem} .ccf-ontology-search.detached .results-container mat-option .search-term{text-decoration:underline}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0;border-bottom:none}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem 0 0;border-bottom:none}"],changeDetection:0}),e}(),FZ=function(e){return[e]};function BZ(e,t){if(1&e){var n=Rs();Os(0,"ccf-ontology-tree",2),js("nodeSelected",function(e){return gn(n),Us().ontologySelection.emit(e)}),Ts()}if(2&e){var i=t.ngIf,r=Us();Es("nodes",Wc(7,FZ,i))("rootNode",i.id)("getChildren",r.ontologySearchService.getChildren)("occurenceData",r.occurenceData)("termData",r.termData)("ontologyFilter",r.ontologyFilter)("header",r.header)}}var VZ=function(){var e=function(){function e(t){m(this,e),this.ontologySearchService=t,this.ontologySelection=new Qc}return b(e,[{key:"ngOnChanges",value:function(e){"treeModel"in e&&this.treeModel&&this.ontologySearchService.setTreeModel(this.treeModel)}},{key:"selected",value:function(e){var t,n,i=null!==(n=null===(t=this.treeModel)||void 0===t?void 0:t.nodes)&&void 0!==n?n:{};this.tree.expandAndSelect(e,function(e){return i[e.parent]})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(EZ))},e.\u0275cmp=Et({type:e,selectors:[["ccf-ontology-selection"]],viewQuery:function(e,t){var n;(1&e&&ll(NZ,5),2&e)&&(cl(n=dl())&&(t.tree=n.first))},inputs:{occurenceData:"occurenceData",termData:"termData",treeModel:"treeModel",ontologyFilter:"ontologyFilter",header:"header",placeholderText:"placeholderText"},outputs:{ontologySelection:"ontologySelection"},features:[Uu([EZ]),Ht],decls:3,vars:4,consts:[[3,"placeholderText","selected"],["class","tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected",4,"ngIf"],[1,"tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected"]],template:function(e,t){1&e&&(Os(0,"ccf-ontology-search",0),js("selected",function(e){return t.selected(e)}),Ts(),ks(1,BZ,1,9,"ccf-ontology-tree",1),Yc(2,"async")),2&e&&(Es("placeholderText",t.placeholderText),Wo(1),Es("ngIf",Kc(2,2,t.ontologySearchService.rootNode$)))},directives:[jZ,Nh,NZ],pipes:[Xh],styles:[""],changeDetection:0}),e}(),zZ=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this.drawer=t,this.cdr=i,this.className="ccf-drawer-toggle-button",this.position="start",this.opened=!1,this.subscriptions=new G;var o=n.connect(this);this.subscriptions.add(o.getMessagesFromSource(t).subscribe(function(e){r.handleMessage(e)&&i.markForCheck()}))}return b(e,[{key:"classEnd",get:function(){return"end"===this.position}},{key:"icon",get:function(){var e,t="arrow_right",n="arrow_left";return"end"===this.position&&(t=(e=[n,t])[0],n=e[1]),this.opened?n:t}},{key:"ngAfterViewInit",value:function(){var e=this;setTimeout(function(){e.position=e.drawer.position,e.cdr.markForCheck()})}},{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"handleMessage",value:function(e){return"drawer-toggled"===e.payload.type&&(this.opened=e.payload.opened,!0)}},{key:"toggle",value:function(){var e=this.drawer,t=e.opened,n=e.expanded;t?n?e.closeExpanded():e.close():e.open()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(oZ),Ss(JQ),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-drawer-toggle-button"]],hostVars:4,hostBindings:function(e,t){2&e&&(uu(t.className),au("ccf-drawer-toggle-button-end",t.classEnd))},decls:2,vars:1,consts:[["aria-hidden","false","aria-label","Close side drawer",1,"expand-collapse-icon",3,"click"]],template:function(e,t){1&e&&(Os(0,"mat-icon",0),js("click",function(){return t.toggle()}),wu(1),Ts()),2&e&&(Wo(1),xu(" ",t.icon,"\n"))},directives:[k_],styles:["[_nghost-%COMP%]{position:absolute;top:calc(50% - 2.0625rem);right:-1.0625rem;width:1.0625rem;height:3rem;border-radius:0 .25rem .25rem 0;cursor:pointer;display:flex;align-items:center;transition:.6s}.ccf-drawer-toggle-button-end[_nghost-%COMP%]{right:unset;left:calc(-1rem - 1px);border-radius:.25rem 0 0 .25rem}[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{position:relative;right:.25rem;transition:all .5s}.ccf-drawer-toggle-button-end[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{right:unset;left:-.25rem}"],changeDetection:0}),e}();function UZ(e,t){1&e&&(Os(0,"div",7),As(1,"mat-spinner",8),Os(2,"span",3),wu(3,"Loading External Site"),Ts(),Ts())}function HZ(e,t){if(1&e){var n=Rs();Os(0,"iframe",9),js("load",function(){return gn(n),Us().loading=!1}),Ts()}2&e&&bs("src",Us().safeUrl,Wr)}var GZ=function(){var e=function(){function e(t){m(this,e),this.sanitizer=t,this.className="ccf-viewer",this.url="",this.closed=new Qc,this.loading=!0,this.safeUrl=null}return b(e,[{key:"ngOnChanges",value:function(e){"url"in e&&this.updateUrl()}},{key:"updateUrl",value:function(){var e=this.sanitizer,t=this.url;this.safeUrl=null,t&&(this.safeUrl=e.bypassSecurityTrustResourceUrl(t),this.loading=!0)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Ed))},e.\u0275cmp=Et({type:e,selectors:[["ccf-viewer"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.className)},inputs:{url:"url"},outputs:{closed:"closed"},features:[Ht],decls:11,vars:4,consts:[[1,"toolbar"],["mat-flat-button","","target","_blank","rel","noopener noreferrer",1,"launch",3,"href","disabled"],[1,"icon"],[1,"text"],["mat-flat-button","",1,"close",3,"click"],["class","overlay",4,"ngIf"],["class","frame","title","Portal Data Viewer","referrerpolicy","no-referrer",3,"load",4,"ngIf"],[1,"overlay"],[1,"spinner"],["title","Portal Data Viewer","referrerpolicy","no-referrer",1,"frame",3,"load"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"a",1),Os(2,"mat-icon",2),wu(3,"launch"),Ts(),Os(4,"span",3),wu(5,"Open in Portal"),Ts(),Ts(),Os(6,"button",4),js("click",function(){return t.closed.emit()}),Os(7,"mat-icon",2),wu(8,"clear"),Ts(),Ts(),Ts(),ks(9,UZ,4,0,"div",5),ks(10,HZ,1,1,"iframe",6)),2&e&&(Wo(1),Es("href",t.safeUrl,Gr)("disabled",!t.safeUrl),Wo(8),Es("ngIf",t.loading),Wo(1),Es("ngIf",t.safeUrl))},directives:[P_,k_,A_,Nh,GQ],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;width:100%;height:1.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%]{margin-right:3.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch.mat-button-disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:.25rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .close[_ngcontent-%COMP%]{min-width:0;padding:0;line-height:1.5rem;border-radius:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:1.5rem;bottom:0;left:0;right:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{margin-bottom:.5rem}[_nghost-%COMP%] .frame[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0}),e}();function WZ(e,t){if(1&e&&As(0,"div",3),2&e){var n=t.index;au("line-tick-visible",Us().tissueSectionExists(n+1))}}var qZ=function(){return[]},XZ=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-tissue-section-vis"}return b(e,[{key:"tissueSectionExists",value:function(e){return this.tissueSections.filter(function(t){return t.sectionNumber===e}).length>0}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-tissue-section-vis"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{totalTissueSections:"totalTissueSections",tissueSections:"tissueSections"},decls:7,vars:3,consts:[[1,"container"],["class","line-tick",3,"line-tick-visible",4,"ngFor","ngForOf"],[1,"x-axis"],[1,"line-tick"]],template:function(e,t){1&e&&(Os(0,"div"),wu(1,"0"),Ts(),Os(2,"div",0),ks(3,WZ,1,2,"div",1),As(4,"div",2),Ts(),Os(5,"div"),wu(6),Ts()),2&e&&(Wo(3),Es("ngForOf",Gc(2,qZ).constructor(t.totalTissueSections)),Wo(3),ku(t.totalTissueSections))},directives:[Rh],styles:["[_nghost-%COMP%]{width:100%;height:2.5rem;padding:.5rem 1rem;display:flex}[_nghost-%COMP%] .container[_ngcontent-%COMP%]{margin-right:.5rem;margin-left:.5rem;flex-grow:1;display:flex;position:relative;justify-content:space-evenly}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .line-tick[_ngcontent-%COMP%]{height:100%;width:1px;z-index:2}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .x-axis[_ngcontent-%COMP%]{width:100%;height:2px;position:absolute;top:calc(50% - 1px);right:0;z-index:1}"],changeDetection:0}),e}();function YZ(e,t){if(1&e){var n=Rs();Os(0,"div",7),Os(1,"div",8),wu(2),Ts(),Os(3,"a",9),js("click",function(){gn(n);var e=Us().$implicit;return Us().linkClicked.emit(e)}),wu(4," DATA "),Os(5,"mat-icon"),wu(6,"open_in_new"),Ts(),Ts(),Ts()}if(2&e){var i=Us().$implicit;Wo(1),ou("background-image","url("+i.thumbnail+")"),Wo(1),xu(" ",i.technology," ")}}function KZ(e,t){1&e&&(Ps(0),ks(1,YZ,7,3,"ng-template",6),Ms())}var $Z=function(){var e=-1;return function(){return e+=1}}(),QZ=function(){var e=function(){function e(){m(this,e),this.className="ccf-thumbnail-carousel",this.linkClicked=new Qc,this.uid=$Z(),this.config={allowTouchMove:!1,slidesOffsetBefore:4,slidesOffsetAfter:4,slidesPerView:"auto",spaceBetween:4,watchOverflow:!0},this.navigation={prevEl:"#"+this.prevButtonId,nextEl:"#"+this.nextButtonId}}return b(e,[{key:"prevButtonId",get:function(){return"ccf-thumbnail-carousel-prev-button-".concat(this.uid)}},{key:"nextButtonId",get:function(){return"ccf-thumbnail-carousel-next-button-".concat(this.uid)}},{key:"itemId",value:function(e,t){return t.thumbnail}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-thumbnail-carousel"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.className)},inputs:{data:"data"},outputs:{linkClicked:"linkClicked"},decls:11,vars:6,consts:[[1,"prev"],["mat-icon-button","","disableRipple",""],[1,"swiper",3,"config","navigation"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"next"],[1,"fade"],["swiperSlide",""],[1,"slide"],[1,"thumbnail"],[1,"link",3,"click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"button",1),Os(2,"mat-icon"),wu(3,"navigate_before"),Ts(),Ts(),Ts(),Os(4,"swiper",2),ks(5,KZ,2,0,"ng-container",3),Ts(),Os(6,"div",4),Os(7,"button",1),As(8,"div",5),Os(9,"mat-icon"),wu(10,"navigate_next"),Ts(),Ts(),Ts()),2&e&&(Wo(1),bs("id",t.prevButtonId),Wo(3),Es("config",t.config)("navigation",t.navigation),Wo(1),Es("ngForOf",t.data)("ngForTrackBy",t.itemId),Wo(2),bs("id",t.nextButtonId))},directives:[A_,k_,kQ,Rh,wQ],styles:['[_nghost-%COMP%]{display:flex}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%]{flex-grow:1;padding-bottom:.3125rem}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%] .swiper-slide{width:3.75rem;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%]{display:flex;align-items:center;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] button[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:1.5rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{position:absolute;top:-.625rem;left:-2rem;z-index:10;width:2rem;height:3.125rem;opacity:1;transition:opacity ease-in-out .3s;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%]{cursor:default;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]{position:relative;width:100%;height:100%}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background-size:cover;position:relative;width:calc(100% - 2 * .125rem);height:calc(100% - 2 * .125rem);border-style:solid;border-width:.125rem;border-radius:.25rem;background-origin:padding-box;background-clip:padding-box;font-size:.875rem;font-weight:bold}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]:after{content:"";position:absolute;bottom:-.125rem;left:-.125rem;width:.125rem;height:.125rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;right:0;left:0;opacity:0;transition:opacity ease-in-out .3s;box-shadow:0 2px 4px #0009;font-size:.75rem;line-height:.75rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%], [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:focus, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:active{cursor:pointer;text-decoration:none}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]:hover .link[_ngcontent-%COMP%]{opacity:1}'],changeDetection:0}),e}();function ZZ(e,t){if(1&e){var n=Rs();Os(0,"mat-icon",14),js("click",function(){return gn(n),Us().toggleExpansion()}),wu(1),Ts()}if(2&e){var i=Us();Wo(1),ku(i.expanded?"expand_less":"expand_more")}}function JZ(e,t){if(1&e&&As(0,"ccf-tissue-section-vis",20),2&e){var n=Us(2);Es("totalTissueSections",n.tissueBlock.sectionCount)("tissueSections",n.tissueBlock.sections)}}function eJ(e,t){if(1&e){var n=Rs();Ps(0),Os(1,"ccf-thumbnail-carousel",21),js("linkClicked",function(e){return gn(n),Us(2).linkHandler(e.link)}),Ts(),Ms()}if(2&e){var i=Us(2);Wo(1),Es("data",i.tissueBlock.datasets)}}function tJ(e,t){if(1&e){var n=Rs();Ps(0),Os(1,"ccf-thumbnail-carousel",21),js("linkClicked",function(e){return gn(n),Us(3).linkHandler(e.link)}),Ts(),Ms()}if(2&e){var i=Us().$implicit;Wo(1),Es("data",i.datasets)}}function nJ(e,t){if(1&e){var n=Rs();Os(0,"div",22),Os(1,"div",23),Os(2,"mat-icon",24),wu(3,"bubble_chart"),Ts(),Os(4,"div",17),Os(5,"div",8),wu(6),Ts(),Os(7,"div",8),wu(8),Ts(),Ts(),Os(9,"div",9),js("click",function(){var e=gn(n).$implicit;return Us(2).linkHandler(e.link)}),Os(10,"div",10),wu(11,"TISSUE SECTION"),Ts(),Os(12,"mat-icon",11),wu(13,"open_in_new"),Ts(),Ts(),Ts(),ks(14,tJ,2,1,"ng-container",13),Ts()}if(2&e){var i=t.$implicit;Wo(6),ku(i.label),Wo(2),ku(i.description),Wo(6),Es("ngIf",i.datasets.length>0)}}function iJ(e,t){if(1&e){var n=Rs();Ps(0),Os(1,"div",15),Os(2,"div",16),Os(3,"mat-icon",5),wu(4,"bubble_chart"),Ts(),Os(5,"div",17),Os(6,"div",8),wu(7),Ts(),Os(8,"div",8),wu(9),Ts(),Ts(),Os(10,"div",9),js("click",function(){gn(n);var e=Us();return e.linkHandler(e.tissueBlock.link)}),Os(11,"div",10),wu(12,"TISSUE BLOCK"),Ts(),Os(13,"mat-icon",11),wu(14,"open_in_new"),Ts(),Ts(),Ts(),ks(15,JZ,1,2,"ccf-tissue-section-vis",18),ks(16,eJ,2,1,"ng-container",13),Ts(),ks(17,nJ,15,3,"div",19),Ms()}if(2&e){var i=Us();Wo(7),ku(i.tissueBlock.label),Wo(2),ku(i.tissueBlock.description),Wo(6),Es("ngIf",i.tissueBlock.sections.length>1),Wo(1),Es("ngIf",i.tissueBlock.datasets.length>0),Wo(1),Es("ngForOf",i.tissueBlock.sections)}}var rJ=function(e){return{"background-color":e}},oJ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.clsName="ccf-donor-card",this.selected=!1,this.expanded=!1,this.highlighted=!1,this.checked=new Qc,this.linkClick=new Qc,this.hoverState=""}return b(e,[{key:"handleCheckbox",value:function(){this.selected=!this.selected,this.ga.event("selected_toggled","donor_card",this.tissueBlock.label,+this.selected),this.checked.emit(this.selected),this.expanded=!1}},{key:"toggleExpansion",value:function(){this.selected&&(this.expanded=!this.expanded,this.ga.event("expanded_toggled","donor_card",this.tissueBlock.label,+this.expanded))}},{key:"linkHandler",value:function(e){this.ga.event("link_clicked","donor_card",this.tissueBlock.label),this.selected?this.linkClick.emit(e):(this.selected=!0,this.checked.emit(this.selected))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-donor-card"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{tissueBlock:"tissueBlock",selected:"selected",color:"color",expanded:"expanded",highlighted:"highlighted"},outputs:{checked:"checked",linkClick:"linkClick"},decls:19,vars:20,consts:[[1,"main-container"],[1,"checkbox-background",3,"ngStyle","click"],[1,"checkbox",3,"checked"],[1,"hoverable","default-padding","donor","mat-elevation-z2"],[1,"d-flex"],[1,"icon-size","icon-dark","mr-5"],[1,"donor-info"],[1,"title","description"],[1,"description"],[1,"hover-state","mat-elevation-z4",3,"click"],[1,"hover-title"],[1,"icon-size","hover-icon"],["class","icon-size ml-5 selectable",3,"click",4,"ngIf"],[4,"ngIf"],[1,"icon-size","ml-5","selectable",3,"click"],[1,"expanded-view","mat-elevation-z2","align-end"],[1,"info-block","hover-enabled","default-padding"],[1,"text-content"],[3,"totalTissueSections","tissueSections",4,"ngIf"],["class","expanded-view w-80 mat-elevation-z2 align-end",4,"ngFor","ngForOf"],[3,"totalTissueSections","tissueSections"],[1,"mt-05",3,"data","linkClicked"],[1,"expanded-view","w-80","mat-elevation-z2","align-end"],[1,"default-padding","info-block","hover-enabled"],[1,"icon-size","mr-5","icon-light"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),js("click",function(){return t.handleCheckbox()}),As(2,"mat-checkbox",2),Ts(),Os(3,"div",3),Os(4,"div",4),Os(5,"mat-icon",5),wu(6,"person"),Ts(),Os(7,"div",6),Os(8,"div",7),wu(9),Ts(),Os(10,"div",8),wu(11),Ts(),Ts(),Ts(),Os(12,"div",9),js("click",function(){return t.linkHandler(t.tissueBlock.donor.link)}),Os(13,"div",10),wu(14,"DONOR"),Ts(),Os(15,"mat-icon",11),wu(16,"open_in_new"),Ts(),Ts(),ks(17,ZZ,2,1,"mat-icon",12),Ts(),Ts(),ks(18,iJ,18,5,"ng-container",13)),2&e&&(Wo(1),au("selected",t.selected)("highlighted",t.highlighted),Es("ngStyle",Wc(18,rJ,t.selected?t.color:"transparent")),Wo(1),au("checkselected",t.selected),Es("checked",t.selected),Wo(1),au("hover-enabled",t.selected)("expanded",t.expanded)("highlighted",t.highlighted),Wo(6),ku(t.tissueBlock.donor.label),Wo(2),ku(t.tissueBlock.donor.description),Wo(6),Es("ngIf",t.selected),Wo(1),Es("ngIf",t.expanded))},directives:[Uh,iY,k_,Nh,Rh,XZ,QZ],styles:["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] .main-container[_ngcontent-%COMP%]{display:flex;min-height:3rem;width:100%;align-items:center;padding-left:.5rem}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%]{height:2rem;width:2rem;border-radius:50%;margin-right:.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-checked.mat-accent .mat-checkbox-background, [_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-indeterminate.mat-accent[_ngcontent-%COMP%] .mat-checkbox-background[_ngcontent-%COMP%]{background-color:transparent}[_nghost-%COMP%] .checkbox-background.highlighted[_ngcontent-%COMP%] .mat-ripple-element{opacity:.04}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkselected[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#fff!important}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:1.12rem;margin-bottom:.12rem}[_nghost-%COMP%] .align-end[_ngcontent-%COMP%]{margin-left:auto}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;width:100%;align-items:center}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]:not(:first-child){margin-top:.5rem}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;align-items:center;flex-grow:1;height:2.5rem}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .donor.highlighted[_ngcontent-%COMP%]{box-shadow:0 6px 2px -2px #0003,0 4px 4px #00000024,0 2px 10px #0000001f}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .hover-state[_ngcontent-%COMP%]{width:19.5rem!important}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .donor-info[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .hoverable[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]:hover .hover-state[_ngcontent-%COMP%]{opacity:1}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%]{transition:opacity .15s ease-in-out;opacity:0;cursor:pointer;position:absolute;height:100%;width:100%;top:0;margin-left:-.5rem;align-items:center;display:flex;justify-content:flex-end;padding-right:1rem;font-size:.75rem}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-title[_ngcontent-%COMP%]{font-weight:lighter}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-icon[_ngcontent-%COMP%]{margin-left:1rem}[_nghost-%COMP%] .default-padding[_ngcontent-%COMP%]{padding:.25rem .5rem}[_nghost-%COMP%] .expanded-view[_ngcontent-%COMP%]{margin-top:.25rem;width:85%;margin-bottom:.25rem}[_nghost-%COMP%] .d-flex[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] .icon-size[_ngcontent-%COMP%]{height:1.5rem;width:1.5rem;font-size:1.5rem}[_nghost-%COMP%] .selectable[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%]{width:80%!important}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{width:16rem!important}[_nghost-%COMP%] .ml-5[_ngcontent-%COMP%]{margin-left:.5rem}[_nghost-%COMP%] .mr-5[_ngcontent-%COMP%]{margin-right:.5rem}[_nghost-%COMP%] .mt-05[_ngcontent-%COMP%]{margin-top:.5rem}[_nghost-%COMP%] .description[_ngcontent-%COMP%]{width:17rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"],changeDetection:0}),e}();function aJ(e,t){if(1&e&&(Os(0,"div",7),Os(1,"div",8),wu(2),Ts(),Os(3,"div",9),wu(4),Ts(),Ts()),2&e){var n=t.$implicit;Wo(2),ku(n.count),Wo(2),ku(n.label)}}function sJ(e,t){if(1&e){var n=Rs();Os(0,"div",10),js("mouseenter",function(){var e=gn(n).$implicit;return Us().handleHover(e.tissueBlock.spatialEntityId)})("mouseleave",function(){return gn(n),Us().handleUnhover()}),Os(1,"ccf-donor-card",11),js("checked",function(e){var t=gn(n).$implicit;return Us().handleSelection(t,e)})("linkClick",function(e){return gn(n),Us().handleLinkClick(e)}),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us();Wo(1),Es("tissueBlock",i.tissueBlock)("selected",i.selected)("color",i.color)("highlighted",i.tissueBlock.spatialEntityId===r.highlighted)}}var uJ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.linkClicked=new Qc,this.listResultSelected=new Qc,this.listResultDeselected=new Qc,this.itemHovered=new Qc,this.itemUnhovered=new Qc,this.atScrollBottom=!1}return b(e,[{key:"handleSelection",value:function(e,t){this.ga.event("list_result_selected","results_browser",this.resultLabel,+t),t?this.listResultSelected.next(e):this.listResultDeselected.next(e)}},{key:"handleLinkClick",value:function(e){this.linkClicked.emit(e)}},{key:"onScroll",value:function(e){if(e.target){var t=e.target,n=t.clientHeight,i=t.scrollHeight,r=t.scrollTop;this.atScrollBottom=i-r-n<64}}},{key:"handleHover",value:function(e){this.itemHovered.emit(e)}},{key:"handleUnhover",value:function(){this.itemUnhovered.emit()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-results-browser"]],inputs:{listResults:"listResults",aggregateData:"aggregateData",resultLabel:"resultLabel",highlighted:"highlighted",header:"header"},outputs:{linkClicked:"linkClicked",listResultSelected:"listResultSelected",listResultDeselected:"listResultDeselected",itemHovered:"itemHovered",itemUnhovered:"itemUnhovered"},decls:8,vars:7,consts:[[1,"results-browser-container"],[1,"stat-box"],["id","title"],["class","stat-row",4,"ngFor","ngForOf"],[1,"results-browser-list",3,"scroll"],["class","browser-item-container",3,"mouseenter","mouseleave",4,"ngFor","ngForOf"],[1,"scroll-gradient"],[1,"stat-row"],[1,"stat-value"],[1,"stat-label"],[1,"browser-item-container",3,"mouseenter","mouseleave"],[3,"tissueBlock","selected","color","highlighted","checked","linkClick"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"div",2),wu(3),Ts(),ks(4,aJ,5,2,"div",3),Ts(),Os(5,"div",4),js("scroll",function(e){return t.onScroll(e)}),ks(6,sJ,2,4,"div",5),Ts(),As(7,"div",6),Ts()),2&e&&(Wo(3),ku(t.resultLabel),Wo(1),Es("ngForOf",t.aggregateData),Wo(1),au("header-hidden",!t.header),Wo(1),Es("ngForOf",t.listResults),Wo(1),au("hidden",!!t.atScrollBottom))},directives:[Rh,oJ],styles:[".results-browser-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:calc(100% - 3rem);padding:0 1.5rem 1.5rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%]{margin-bottom:1.5rem;line-height:1.25;min-height:7.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] #title[_ngcontent-%COMP%]{font-size:1.25rem;margin-bottom:.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%]{display:flex;flex-direction:row}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin-right:1rem;width:5.5rem;text-align:right;font-weight:600}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-weight:300}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;padding-right:.5rem;height:calc(100vh - 20rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 16rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%] .browser-item-container[_ngcontent-%COMP%]{width:100%}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:95%;bottom:0;pointer-events:none}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}();function cJ(e,t){if(1&e&&(Os(0,"a",5),wu(1,"LOGIN"),Ts()),2&e){var n=Us();au("disabled",n.loginDisabled||!n.homeUrl),Es("href",n.homeUrl+"login",Gr)}}function lJ(e,t){if(1&e&&(Os(0,"a",5),wu(1,"LOGOUT"),Ts()),2&e){var n=Us();au("disabled",n.loginDisabled||!n.homeUrl),Es("href",n.homeUrl+"logout",Gr)}}var hJ=function(){var e=function e(){m(this,e),this.refreshClicked=new Qc,this.downloadClicked=new Qc};return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-header"]],inputs:{homeUrl:"homeUrl",loginDisabled:"loginDisabled",logoTooltip:"logoTooltip",loggedIn:"loggedIn",filters:"filters"},outputs:{refreshClicked:"refreshClicked",downloadClicked:"downloadClicked"},decls:6,vars:4,consts:[[1,"ccf-header"],[1,"home",3,"href"],["aria-hidden","false","aria-label","Reset tool","matTooltipPosition","right",1,"logo",3,"matTooltip"],[1,"filler"],["mat-button","","class","authentication","rel","noreferrer noopener","target","_blank",3,"disabled","href",4,"ngIf"],["mat-button","","rel","noreferrer noopener","target","_blank",1,"authentication",3,"href"]],template:function(e,t){1&e&&(Os(0,"mat-toolbar",0),Os(1,"a",1),As(2,"div",2),Ts(),As(3,"div",3),ks(4,cJ,2,3,"a",4),ks(5,lJ,2,3,"a",4),Ts()),2&e&&(Wo(1),Es("href",t.homeUrl,Gr),Wo(1),Es("matTooltip",t.logoTooltip),Wo(2),Es("ngIf",!t.loggedIn),Wo(1),Es("ngIf",t.loggedIn))},directives:[dX,lw,Nh,P_],styles:[".ccf-header[_ngcontent-%COMP%]{height:4rem;padding:0 1.5rem;border-bottom-width:1px;border-bottom-style:solid;display:flex}.ccf-header[_ngcontent-%COMP%] .home[_ngcontent-%COMP%]{height:100%;width:25rem;align-items:center;display:flex}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{width:100%;height:50%;background-repeat:no-repeat;background-size:contain}.ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%]{height:1.5rem}.ccf-header[_ngcontent-%COMP%] .authentication[_ngcontent-%COMP%]{width:8.25rem;border-radius:.125rem;font-weight:500}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{display:flex;align-items:center;transition:color 1s;cursor:pointer;text-decoration:none}.ccf-header[_ngcontent-%COMP%] [_ngcontent-%COMP%]:not(:last-child){margin-right:1.5rem}.ccf-header[_ngcontent-%COMP%] .filler[_ngcontent-%COMP%]{flex-grow:1;margin:0}.ccf-header[_ngcontent-%COMP%] .filter-labels[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;font:400 1rem/1.25rem Inter,sans-serif}.ccf-header[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}(),dJ=["bodyUI"];function fJ(e,t){if(1&e&&(As(0,"ccf-header",34),Yc(1,"async"),Yc(2,"async"),Yc(3,"async"),Yc(4,"async")),2&e){var n=Us();au("hide",!1===Kc(1,6,n.header$)),Es("logoTooltip",Kc(2,8,n.logoTooltip$))("homeUrl",Kc(3,10,n.homeUrl$))("loggedIn",n.loggedIn)("loginDisabled",Kc(4,12,n.loginDisabled$))}}function pJ(e,t){if(1&e){var n=Rs();Os(0,"div",35),js("click",function(){gn(n),Us();var e=xs(70);return e.expanded=!e.expanded}),Os(1,"mat-icon",36),wu(2),Ts(),Ts()}if(2&e){Us();var i=xs(70);Wo(2),xu(" ",i.expanded?"arrow_drop_up":"arrow_drop_down"," ")}}function vJ(e,t){if(1&e){var n=Rs();Os(0,"div",35),js("click",function(){gn(n);var e=Us();return e.organListVisible=!e.organListVisible}),Os(1,"mat-icon",37),wu(2),Ts(),Ts()}if(2&e){var i=Us();Wo(2),xu(" ",i.organListVisible?"arrow_drop_up":"arrow_drop_down"," ")}}var gJ=function(){return{}},mJ=function(){return{x:2.2,y:2,z:.4}},yJ=function(){var e=function(){function e(n,i,r,o,a,s,u,c,l,h,d,f){var p=this;m(this,e),this.data=r,this.theming=o,this.scene=a,this.listResultsState=s,this.consentService=u,this.snackbar=c,this.dataSource=h,this.globalConfig=d,this.ontologySelectionLabel="body",this.cellTypeSelectionLabel="cell",this.selectionLabel="body | cell",this.organListVisible=!0,this.url="",this.acceptableViewerDomains=sX.acceptableViewerDomains||[],this.viewerOpen=!1,this.spinnerActive$=this.data.queryStatus$.pipe(se(function(e){return e===NX.Running})),this.theme$=this.globalConfig.getOption("theme"),this.themeMode$=new Sf(1),this.header$=this.globalConfig.getOption("header"),this.homeUrl$=this.globalConfig.getOption("homeUrl"),this.logoTooltip$=this.globalConfig.getOption("logoTooltip"),this.loginDisabled$=this.globalConfig.getOption("loginDisabled"),o.initialize(n,i),l.setRootElement(n),r.tissueBlockData$.subscribe(),r.aggregateData$.subscribe(),r.ontologyTermOccurencesData$.subscribe(),r.cellTypeTermOccurencesData$.subscribe(),r.sceneData$.subscribe(),r.filter$.subscribe(),r.technologyFilterData$.subscribe(),r.providerFilterData$.subscribe(),this.ontologyTerms$=r.filter$.pipe(gU("ontologyTerms")),L_([this.theme$,this.themeMode$]).subscribe(function(e){var n=t(e,2),i=n[0],r=n[1];p.theming.setTheme("".concat(i,"-theme-").concat(r)),f.markForCheck()}),this.ontologyTreeModel$=this.dataSource.getOntologyTreeModel().pipe(Cf(1)),this.cellTypeTerms$=r.filter$.pipe(gU("cellTypeTerms")),this.cellTypeTreeModel$=this.dataSource.getCellTypeTreeModel().pipe(Cf(1))}return b(e,[{key:"isLightTheme",get:function(){return this.theming.getTheme().endsWith("light")}},{key:"ngOnInit",value:function(){var e=this,t=this.snackbar.openFromComponent(Gq,{data:{preClose:function(){t.dismiss()}},duration:"not-set"===this.consentService.consent?1/0:3e3});window.matchMedia?(window.matchMedia("(prefers-color-scheme: dark)").matches?this.themeMode$.next("dark"):this.themeMode$.next("light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",function(t){e.themeMode$.next(t.matches?"dark":"light")})):this.themeMode$.next("light")}},{key:"reset",value:function(e,t,n){e.open(),e.closeExpanded(),t.open(),t.closeExpanded(),n.removeBox(),this.resetView()}},{key:"resetView",value:function(){this.bodyUI.target=[0,0,0],this.bodyUI.rotation=0,this.bodyUI.rotationX=0,this.bodyUI.bounds={x:2.2,y:2,z:.4}}},{key:"toggleScheme",value:function(){this.themeMode$.next(this.isLightTheme?"dark":"light")}},{key:"ontologySelected",value:function(e,t){if(e)return"anatomical-structures"===t?(this.data.updateFilter({ontologyTerms:e.map(function(e){return e.id})}),this.ontologySelectionLabel=this.createSelectionLabel(e)):(this.data.updateFilter({cellTypeTerms:e.map(function(e){return e.id})}),this.cellTypeSelectionLabel=this.createSelectionLabel(e)),this.selectionLabel=this.ontologySelectionLabel&&this.cellTypeSelectionLabel?"".concat(this.ontologySelectionLabel," | ").concat(this.cellTypeSelectionLabel):this.ontologySelectionLabel?"".concat(this.ontologySelectionLabel):this.cellTypeSelectionLabel?"".concat(this.cellTypeSelectionLabel):"",void(e[0]&&"body"===e[0].label&&this.resetView());this.data.updateFilter({ontologyTerms:[],cellTypeTerms:[]}),this.ontologySelectionLabel="",this.cellTypeSelectionLabel=""}},{key:"createSelectionLabel",value:function(e){if(0===e.length)return"";if(1===e.length)return e[0].label;var t="";return e.forEach(function(n,i){t+=n.label,i0}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(rs),Ss(FX),Ss(aX),Ss(HX),Ss(zX),Ss(CG),Ss(nw),Ss(Kp),Ss(Xq),Ss(Vq),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-root"]],viewQuery:function(e,t){var n;(1&e&&ll(dJ,5),2&e)&&(cl(n=dl())&&(t.bodyUI=n.first))},decls:80,vars:111,consts:[[1,"ccf-app","mat-app-background"],["text","Loading CCF Exploration User Interface (EUI)",3,"active"],[3,"hide","logoTooltip","homeUrl","loggedIn","loginDisabled",4,"ngIf"],[1,"main-drawers"],["opened","",1,"left-drawer",3,"stateChange"],["left",""],[1,"filter-data"],[3,"filters","drawerExpanded","technologyFilters","providerFilters","filtersChange"],["filterbox",""],[1,"filter-text"],[1,"sex","filter-tag"],[1,"age","filter-tag"],[1,"bmi","filter-tag"],["placeholderText","Search anatomical structures...",1,"ontology-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["placeholderText","Search cell types...",1,"cell-type-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["position","end","opened","",1,"right-drawer",3,"stateChange"],["right",""],[1,"portal-view",3,"url","closed"],[1,"drawer-icons"],[1,"drawer-icons-left"],[1,"button",3,"matTooltip","click"],[1,"icon"],[1,"scheme-toggle","button",3,"matTooltip","click"],[1,"button"],["matTooltip","Reset View",1,"refresh","icon",3,"click"],["videoID","YAHJqvD3Q_8","infoTitle","CCF Exploration User Interface","matTooltip","Open Info"],[3,"listResults","aggregateData","resultLabel","highlighted","header","listResultSelected","listResultDeselected","linkClicked","itemHovered","itemUnhovered"],[1,"selector-drawer"],[1,"organ-selector",3,"multiselect","occurenceData","organList","selectedOrgans","organsChanged"],["selector",""],[1,"close-button-wrapper"],["class","close-button",3,"click",4,"ngIf"],[1,"stage-content",3,"scene","bounds","nodeClick","nodeHoverStart","nodeHoverStop"],["bodyUI",""],[3,"logoTooltip","homeUrl","loggedIn","loginDisabled"],[1,"close-button",3,"click"],["aria-hidden","false","aria-label","Expand carousel drawer",1,"expand-collapse-icon"],["aria-hidden","false","aria-label","Close carousel drawer",1,"expand-collapse-icon"]],template:function(e,t){if(1&e){var n=Rs();Os(0,"div",0),As(1,"ccf-spinner-overlay",1),Yc(2,"async"),ks(3,fJ,5,14,"ccf-header",2),Yc(4,"async"),Os(5,"ccf-drawer-container",3),Yc(6,"async"),Os(7,"ccf-drawer",4,5),js("stateChange",function(){return gn(n),xs(12).removeBox()}),Os(9,"div"),Os(10,"div",6),Os(11,"ccf-filters-popover",7,8),js("filtersChange",function(e){return t.data.updateFilter(e)}),Yc(13,"async"),Yc(14,"async"),Yc(15,"async"),Ts(),Os(16,"div",9),Os(17,"div",10),wu(18,"Sex: "),Os(19,"strong"),wu(20),Yc(21,"async"),Ts(),Ts(),Os(22,"div",11),wu(23,"Age: "),Os(24,"strong"),wu(25),Yc(26,"async"),Yc(27,"async"),Ts(),Ts(),Os(28,"div",12),wu(29,"BMI: "),Os(30,"strong"),wu(31),Yc(32,"async"),Yc(33,"async"),Ts(),Ts(),Ts(),Ts(),Os(34,"ccf-ontology-selection",13),js("ontologySelection",function(e){return t.ontologySelected(e,"anatomical-structures")}),Yc(35,"async"),Yc(36,"async"),Yc(37,"async"),Yc(38,"async"),Ts(),Os(39,"ccf-ontology-selection",14),js("ontologySelection",function(e){return t.ontologySelected(e,"cell-type")}),Yc(40,"async"),Yc(41,"async"),Yc(42,"async"),Yc(43,"async"),Ts(),As(44,"ccf-drawer-toggle-button"),Ts(),Ts(),Os(45,"ccf-drawer",15,16),js("stateChange",function(){return gn(n),xs(12).removeBox()}),Os(47,"ccf-viewer",17),js("closed",function(){return t.viewerOpen=!1}),Ts(),Os(48,"div",18),Os(49,"div",19),Os(50,"button",20),js("click",function(){gn(n);var e=xs(12),t=xs(46);return e.removeBox(),t.toggleExpanded()}),Os(51,"mat-icon",21),wu(52),Ts(),Ts(),Os(53,"button",22),js("click",function(){return t.toggleScheme()}),Os(54,"mat-icon",21),wu(55),Ts(),Ts(),Os(56,"button",23),Os(57,"mat-icon",24),js("click",function(){gn(n);var e=xs(8),i=xs(46),r=xs(12);return t.reset(e,i,r)}),wu(58,"refresh "),Ts(),Ts(),Ts(),As(59,"ccf-info-button",25),Ts(),Os(60,"ccf-results-browser",26),js("listResultSelected",function(e){return t.listResultsState.selectListResult(e)})("listResultDeselected",function(e){return t.listResultsState.deselectListResult(e)})("linkClicked",function(e){return t.openiFrameViewer(e)})("itemHovered",function(e){return t.listResultsState.highlightNode(e)})("itemUnhovered",function(){return t.listResultsState.unHighlightNode()}),Yc(61,"async"),Yc(62,"async"),Yc(63,"async"),Yc(64,"async"),Ts(),As(65,"ccf-drawer-toggle-button"),Ts(),Os(66,"ccf-drawer-content"),Yc(67,"async"),Os(68,"div",27),Os(69,"ccf-organ-selector",28,29),js("organsChanged",function(e){return t.scene.setSelectedReferenceOrgans(e)}),Yc(71,"async"),Yc(72,"async"),Yc(73,"async"),Ts(),Ts(),Os(74,"div",30),ks(75,pJ,3,1,"div",31),ks(76,vJ,3,1,"div",31),Ts(),Os(77,"ccf-body-ui",32,33),js("nodeClick",function(e){return t.scene.sceneNodeClicked(e)})("nodeHoverStart",function(e){return t.scene.sceneNodeHovered(e)})("nodeHoverStop",function(){return t.scene.sceneNodeUnhover()}),Yc(79,"async"),Ts(),Ts(),Ts(),Ts()}if(2&e){var i,r,o,a,s=xs(46),u=xs(70);Wo(1),Es("active",Kc(2,53,t.spinnerActive$)),Wo(2),Es("ngIf",!1===Kc(4,55,t.spinnerActive$)),Wo(2),au("header-hidden",!1===Kc(6,57,t.header$)),Wo(6),Es("filters",Kc(13,59,t.data.filter$))("drawerExpanded",s.expanded)("technologyFilters",Kc(14,61,t.data.technologyFilterData$))("providerFilters",Kc(15,63,t.data.providerFilterData$)),Wo(9),ku(null==(i=Kc(21,65,t.data.filter$))?null:i.sex),Wo(5),Su("",null==(r=Kc(26,67,t.data.filter$))?null:r.ageRange[0],"-",null==(r=Kc(27,69,t.data.filter$))?null:r.ageRange[1],""),Wo(6),Su("",null==(o=Kc(32,71,t.data.filter$))?null:o.bmiRange[0],"-",null==(o=Kc(33,73,t.data.filter$))?null:o.bmiRange[1],""),Wo(3),Es("treeModel",Kc(35,75,t.ontologyTreeModel$))("termData",Kc(36,77,t.data.ontologyTermsFullData$))("occurenceData",Kc(37,79,t.data.ontologyTermOccurencesData$))("header",Kc(38,81,t.header$)),Wo(5),Es("treeModel",Kc(40,83,t.cellTypeTreeModel$))("termData",Kc(41,85,t.data.cellTypeTermsFullData$))("occurenceData",Kc(42,87,t.data.cellTypeTermOccurencesData$))("header",Kc(43,89,t.header$)),Wo(8),au("opened",t.viewerOpen),Es("url",t.url),Wo(3),Es("matTooltip",s.expanded?"Exit Fullscreen":"Enter Fullscreen"),Wo(2),ku(s.expanded?"fullscreen_exit":"fullscreen"),Wo(1),Es("matTooltip",t.isLightTheme?"Enter Dark Mode":"Enter Light Mode"),Wo(2),xu("",t.isLightTheme?"brightness_2":"brightness_5"," "),Wo(5),Es("listResults",Kc(61,91,t.listResultsState.listResults$))("aggregateData",Kc(62,93,t.data.aggregateData$))("resultLabel",t.selectionLabel)("highlighted",Kc(63,95,t.listResultsState.highlightedNodeId$))("header",Kc(64,97,t.header$)),Wo(6),au("header-hidden",!1===Kc(67,99,t.header$)),Wo(2),au("closed",!t.organListVisible)("expanded",u.expanded),Wo(1),Es("multiselect",!0)("occurenceData",null!==(a=Kc(71,101,t.data.ontologyTermOccurencesData$))&&void 0!==a?a:Gc(109,gJ))("organList",Kc(72,103,t.scene.referenceOrgans$))("selectedOrgans",Kc(73,105,t.scene.selectedReferenceOrgans$)),Wo(5),au("closed",!t.organListVisible),Wo(1),Es("ngIf",t.organListVisible),Wo(1),Es("ngIf",!u.expanded),Wo(1),au("expanded-stage",!t.organListVisible)("selector-expanded",u.expanded),Es("scene",Kc(79,107,t.scene.scene$))("bounds",Gc(110,mJ))}},directives:[ZQ,Nh,lZ,oZ,SZ,VZ,zZ,GZ,lw,k_,Fq,uJ,tZ,Tq,mq,hJ],pipes:[Xh],styles:[".cdk-overlay-container{position:absolute;font-size:1.2rem}[_nghost-%COMP%]{display:block;position:relative}.ccf-app[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:1rem;position:relative;text-align:left}.ccf-app[_ngcontent-%COMP%] ccf-header[_ngcontent-%COMP%]{z-index:99}.ccf-app[_ngcontent-%COMP%] ccf-header.hide[_ngcontent-%COMP%]{display:none}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%]{height:calc(100% - 5rem);width:100%;opacity:1;overflow:hidden;transform:scale(1)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container.header-hidden[_ngcontent-%COMP%]{height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%]{width:28.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%]{display:flex;padding-left:1.5rem;height:5rem;padding-right:1.5rem;align-items:center;justify-content:space-between}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%] .button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;outline:none;border-radius:.25rem;padding:.65rem;transition:.6s}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%]{overflow:hidden;border-radius:.5rem;height:calc(100vh - 4rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer[_ngcontent-%COMP%]{top:0rem;display:flex;flex-direction:column;position:relative;transition:all .5s ease-in-out;height:5rem;justify-content:start}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.expanded[_ngcontent-%COMP%]{height:15rem;overflow-y:auto}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.closed[_ngcontent-%COMP%]{height:1.5rem;top:-5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .stage-content[_ngcontent-%COMP%]{transition:all .5s ease-in-out;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .expanded-stage[_ngcontent-%COMP%]{height:calc(100% - 3rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-expanded[_ngcontent-%COMP%]{height:calc(100% - 16.5rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 1rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:center;border-top-right-radius:.5rem;border-top-left-radius:.5rem;height:0}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:flex;justify-content:center;height:1.0625rem;width:3rem;align-self:center;border-radius:0 0 .25rem .25rem;cursor:pointer;transition:.6s;position:relative;top:.5rem;z-index:1}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{position:relative;bottom:.2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem;height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cell-type-selection[_ngcontent-%COMP%] .ccf-ontology-search{margin-top:2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%]{height:5rem;display:flex;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:75%;margin-left:1.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%]{font-weight:300}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600!important}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view[_ngcontent-%COMP%]{position:fixed;left:0;top:0;bottom:0;right:425%;height:100%;transform:translate(-425%);width:calc(100% - 28.5rem);transition:transform .5s cubic-bezier(.82,.085,.395,.895)}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view.opened[_ngcontent-%COMP%]{transform:translate(0);transition:width 0s .5s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view[_ngcontent-%COMP%]{width:100vw}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view.opened[_ngcontent-%COMP%]{transition:width 0s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .shaded-toggle[_ngcontent-%COMP%]{box-shadow:-1px 0 4px #212121}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5rem}"],changeDetection:0}),e}();function bJ(e,t){1&e&&As(0,"ccf-root")}function _J(e){var t=function(e){return"string"==typeof e},n=function(e){return Array.isArray(e)&&e.every(t)};if("string"==typeof e){var i=QQ.json(e);if(n(i))return i}else if(n(e))return e;throw new Error("Invalid data sources")}var wJ=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,e,i,{initialDelay:10,initialConfig:Object.assign(Object.assign(Object.assign({},sX.dbOptions),globalThis.dbOptions),sX.customization),parse:{dataSources:_J,useRemoteApi:QQ.boolean,header:QQ.boolean}})}return n}($Q);return e.\u0275fac=function(t){return new(t||e)(Ss(Vq),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-root-wc"]],inputs:{dataSources:"dataSources",hubmapDataService:"hubmapDataService",hubmapDataUrl:"hubmapDataUrl",hubmapAssetUrl:"hubmapAssetUrl",hubmapToken:"hubmapToken",hubmapPortalUrl:"hubmapPortalUrl",useRemoteApi:"useRemoteApi",remoteApiEndpoint:"remoteApiEndpoint",theme:"theme",header:"header",homeUrl:"homeUrl",logoTooltip:"logoTooltip",loginDisabled:"loginDisabled"},features:[as],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(e,t){1&e&&ks(0,bJ,1,0,"ccf-root",0),2&e&&Es("ngIf",t.initialized)},directives:[Nh,yJ],encapsulation:2,changeDetection:0}),e}(),kJ=function(){var e=function(){function e(t){m(this,e),this.injector=t}return b(e,[{key:"ngDoBootstrap",value:function(){var e=function(e,t){var n=function(e,t){return t.get(Gu).resolveComponentFactory(e).inputs}(e,t.injector),i=t.strategyFactory||new Zp(e,t.injector),r=function(e){var t={};return e.forEach(function(e){var n=e.propName,i=e.templateName;t[function(e){return e.replace(/[A-Z]/g,function(e){return"-".concat(e.toLowerCase())})}(i)]=n}),t}(n),o=function(e){a(u,e);var o=s(u);function u(e){var t;return m(this,u),(t=o.call(this)).injector=e,t}return b(u,[{key:"ngElementStrategy",get:function(){var e=this;if(!this._ngElementStrategy){var r=this._ngElementStrategy=i.create(this.injector||t.injector);n.forEach(function(t){var n=t.propName;if(e.hasOwnProperty(n)){var i=e[n];delete e[n],r.setInputValue(n,i)}})}return this._ngElementStrategy}},{key:"attributeChangedCallback",value:function(e,t,n,i){this.ngElementStrategy.setInputValue(r[e],n)}},{key:"connectedCallback",value:function(){var e=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),e=!0),this.ngElementStrategy.connect(this),e||this.subscribeToEvents()}},{key:"disconnectedCallback",value:function(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}},{key:"subscribeToEvents",value:function(){var e=this;this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(function(t){var n=function(e,t,n){if("function"!=typeof CustomEvent){var i=e.createEvent("CustomEvent");return i.initCustomEvent(t,!1,!1,n),i}return new CustomEvent(t,{bubbles:!1,cancelable:!1,detail:n})}(e.ownerDocument,t.name,t.value);e.dispatchEvent(n)})}}]),u}(ev);return o.observedAttributes=Object.keys(r),n.forEach(function(e){var t=e.propName;Object.defineProperty(o.prototype,t,{get:function(){return this.ngElementStrategy.getInputValue(t)},set:function(e){this.ngElementStrategy.setInputValue(t,e)},configurable:!0,enumerable:!0})}),o}(wJ,{injector:this.injector});customElements.define("ccf-eui",e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(rs))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:oX,useValue:"hubmap-theme-light"},{provide:Tp,useExisting:Kp}],imports:[[Fy,Ad,qX,NQ,wK,XK,x_,bK,PQ,qQ,yq,Aq,Bq,fw,XQ,Wq,ew]]}),e}();sX.production&&function(){if(Ql)throw new Error("Cannot enable prod mode after platform setup.");$l=!1}(),Od().bootstrapModule(kJ).catch(function(e){return console.error(e)})},91052:function(e){function t(e,t,n,i,r,o,a){try{var s=e[o](a),u=s.value}catch(c){return void n(c)}s.done?t(u):Promise.resolve(u).then(i,r)}e.exports=function(e){return function(){var n=this,i=arguments;return new Promise(function(r,o){var a=e.apply(n,i);function s(e){t(a,r,o,s,u,"next",e)}function u(e){t(a,r,o,s,u,"throw",e)}s(void 0)})}},e.exports.default=e.exports,e.exports.__esModule=!0},61948:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},34321:function(e){function t(n){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=t=function(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=t=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),t(n)}e.exports=t,e.exports.default=e.exports,e.exports.__esModule=!0},91741:function(e){function t(e){return Promise.resolve().then(function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}t.keys=function(){return[]},t.resolve=t,t.id=91741,e.exports=t},88509:function(e,t,n){"use strict";e.exports=n.p+"7693192ac33f7744a3ca.ts"},9521:function(){},49125:function(){},75307:function(){}},function(e){e(e.s=93640)}])}(); \ No newline at end of file +!function(){function e(t,n,i){return(e="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var i=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=p(e)););return e}(e,t);if(i){var r=Object.getOwnPropertyDescriptor(i,t);return r.get?r.get.call(n):r.value}})(t,n,i||t)}function t(e,t){return r(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var i,r,o=[],a=!0,s=!1;try{for(n=n.call(e);!(a=(i=n.next()).done)&&(o.push(i.value),!t||o.length!==t);a=!0);}catch(u){s=!0,r=u}finally{try{a||null==n.return||n.return()}finally{if(s)throw r}}return o}(e,t)||w(e,t)||i()}function n(e){return r(e)||g(e)||w(e)||i()}function i(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(e){if(Array.isArray(e))return e}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&f(e,t)}function s(e){var t=d();return function(){var n,i=p(e);if(t){var r=p(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return u(this,n)}}function u(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return c(e)}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function l(e){var t="function"==typeof Map?new Map:void 0;return(l=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,i)}function i(){return h(e,arguments,p(this).constructor)}return i.prototype=Object.create(e.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),f(i,e)})(e)}function h(e,t,n){return(h=d()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&f(r,n.prototype),r}).apply(null,arguments)}function d(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function v(e){return function(e){if(Array.isArray(e))return k(e)}(e)||g(e)||w(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}function m(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function y(e,t){for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,o=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw o}}}}function w(e,t){if(e){if("string"==typeof e)return k(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?k(e,t):void 0}}function k(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n0&&r[r.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!r||o[1]>r[0]&&o[1]0?a-4:a;for(n=0;n>16&255,u[l++]=t>>8&255,u[l++]=255&t;return 2===s&&(t=r[e.charCodeAt(n)]<<2|r[e.charCodeAt(n+1)]>>4,u[l++]=255&t),1===s&&(t=r[e.charCodeAt(n)]<<10|r[e.charCodeAt(n+1)]<<4|r[e.charCodeAt(n+2)]>>2,u[l++]=t>>8&255,u[l++]=255&t),u},n.fromByteArray=function(e){for(var t,n=e.length,r=n%3,o=[],a=16383,s=0,u=n-r;su?u:s+a));return 1===r?o.push(i[(t=e[n-1])>>2]+i[t<<4&63]+"=="):2===r&&o.push(i[(t=(e[n-2]<<8)+e[n-1])>>10]+i[t>>4&63]+i[t<<2&63]+"="),o.join("")};for(var i=[],r=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e){return i[e>>18&63]+i[e>>12&63]+i[e>>6&63]+i[63&e]}function h(e,t,n){for(var i=[],r=t;r>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t,n){if(128!=(192&t[0]))return e.lastNeed=0,"\ufffd";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"\ufffd";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"\ufffd"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function u(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function c(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):t}function l(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function h(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function f(e){return e&&e.length?this.write(e):""}n.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(r>0&&(e.lastNeed=r-1),r):--i=0?(r>0&&(e.lastNeed=r-2),r):--i=0?(r>0&&(2===r?r=0:e.lastNeed=r-3),r):0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var i=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,i),e.toString("utf8",t,i)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},{"safe-buffer":4}],6:[function(e,t,n){(function(t){(function(){"use strict";var t=e("base64-js"),i=e("ieee754");n.Buffer=a,n.SlowBuffer=function(e){return+e!=e&&(e=0),a.alloc(+e)},n.INSPECT_MAX_BYTES=50;var r=2147483647;function o(e){if(e>r)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return t.__proto__=a.prototype,t}function a(e,t,n){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return c(e)}return s(e,t,n)}function s(e,t,n){if("string"==typeof e)return function(e,t){if(("string"!=typeof t||""===t)&&(t="utf8"),!a.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var n=0|d(e,t),i=o(n),r=i.write(e,t);return r!==n&&(i=i.slice(0,r)),i}(e,t);if(ArrayBuffer.isView(e))return l(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(B(e,ArrayBuffer)||e&&B(e.buffer,ArrayBuffer))return function(e,t,n){if(t<0||e.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|e}function d(e,t){if(a.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||B(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(e).length;default:if(r)return i?-1:L(e).length;t=(""+t).toLowerCase(),r=!0}}function f(e,t,n){var i=!1;if((void 0===t||t<0)&&(t=0),t>this.length||((void 0===n||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return O(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return E(this,t,n);case"latin1":case"binary":return C(this,t,n);case"base64":return x(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,t,n);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}function p(e,t,n){var i=e[t];e[t]=e[n],e[n]=i}function v(e,t,n,i,r){if(0===e.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),V(n=+n)&&(n=r?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(r)return-1;n=e.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof t&&(t=a.from(t,i)),a.isBuffer(t))return 0===t.length?-1:g(e,t,n,i,r);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):g(e,[t],n,i,r);throw new TypeError("val must be string, number or Buffer")}function g(e,t,n,i,r){var o,a=1,s=e.length,u=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;a=2,s/=2,u/=2,n/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(r){var l=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var h=!0,d=0;dr&&(i=r):i=r;var o=t.length;i>o/2&&(i=o/2);for(var a=0;a>8,r.push(n%256),r.push(i);return r}(t,e.length-n),e,n,i)}function x(e,n,i){return t.fromByteArray(0===n&&i===e.length?e:e.slice(n,i))}function S(e,t,n){n=Math.min(e.length,n);for(var i=[],r=t;r239?4:c>223?3:c>191?2:1;if(r+h<=n)switch(h){case 1:c<128&&(l=c);break;case 2:128==(192&(o=e[r+1]))&&(u=(31&c)<<6|63&o)>127&&(l=u);break;case 3:a=e[r+2],128==(192&(o=e[r+1]))&&128==(192&a)&&(u=(15&c)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:a=e[r+2],s=e[r+3],128==(192&(o=e[r+1]))&&128==(192&a)&&128==(192&s)&&(u=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,h=1):l>65535&&(i.push((l-=65536)>>>10&1023|55296),l=56320|1023&l),i.push(l),r+=h}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);for(var n="",i=0;ii)&&(n=i);for(var r="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function P(e,t,n,i,r,o){if(!a.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>r||te.length)throw new RangeError("Index out of range")}function M(e,t,n,i,r,o){if(n+i>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(e,t,n,r,o){return t=+t,n>>>=0,o||M(e,0,n,4),i.write(e,t,n,r,23,4),n+4}function R(e,t,n,r,o){return t=+t,n>>>=0,o||M(e,0,n,8),i.write(e,t,n,r,52,8),n+8}n.kMaxLength=r,!(a.TYPED_ARRAY_SUPPORT=function(){try{var e=new Uint8Array(1);return e.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===e.foo()}catch(t){return!1}}())&&"undefined"!=typeof console&&"function"==typeof console.error&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),a.poolSize=8192,a.from=function(e,t,n){return s(e,t,n)},a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,a.alloc=function(e,t,n){return function(e,t,n){return u(e),e<=0?o(e):void 0!==t?"string"==typeof n?o(e).fill(t,n):o(e).fill(t):o(e)}(e,t,n)},a.allocUnsafe=function(e){return c(e)},a.allocUnsafeSlow=function(e){return c(e)},a.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==a.prototype},a.compare=function(e,t){if(B(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),B(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),!a.isBuffer(e)||!a.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var n=e.length,i=t.length,r=0,o=Math.min(n,i);rt&&(e+=" ... "),""},a.prototype.compare=function(e,t,n,i,r){if(B(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),!a.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),t<0||n>e.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&t>=n)return 0;if(i>=r)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(r>>>=0)-(i>>>=0),s=(n>>>=0)-(t>>>=0),u=Math.min(o,s),c=this.slice(i,r),l=e.slice(t,n),h=0;h>>=0,isFinite(n)?(n>>>=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-t;if((void 0===n||n>r)&&(n=r),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var o=!1;;)switch(i){case"hex":return m(this,e,t,n);case"utf8":case"utf-8":return y(this,e,t,n);case"ascii":return b(this,e,t,n);case"latin1":case"binary":return _(this,e,t,n);case"base64":return w(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},a.prototype.slice=function(e,t){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t>>=0,t>>>=0,n||A(e,t,this.length);for(var i=this[e],r=1,o=0;++o>>=0,t>>>=0,n||A(e,t,this.length);for(var i=this[e+--t],r=1;t>0&&(r*=256);)i+=this[e+--t]*r;return i},a.prototype.readUInt8=function(e,t){return e>>>=0,t||A(e,1,this.length),this[e]},a.prototype.readUInt16LE=function(e,t){return e>>>=0,t||A(e,2,this.length),this[e]|this[e+1]<<8},a.prototype.readUInt16BE=function(e,t){return e>>>=0,t||A(e,2,this.length),this[e]<<8|this[e+1]},a.prototype.readUInt32LE=function(e,t){return e>>>=0,t||A(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},a.prototype.readUInt32BE=function(e,t){return e>>>=0,t||A(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},a.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||A(e,t,this.length);for(var i=this[e],r=1,o=0;++o=(r*=128)&&(i-=Math.pow(2,8*t)),i},a.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||A(e,t,this.length);for(var i=t,r=1,o=this[e+--i];i>0&&(r*=256);)o+=this[e+--i]*r;return o>=(r*=128)&&(o-=Math.pow(2,8*t)),o},a.prototype.readInt8=function(e,t){return e>>>=0,t||A(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},a.prototype.readInt16LE=function(e,t){e>>>=0,t||A(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt16BE=function(e,t){e>>>=0,t||A(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt32LE=function(e,t){return e>>>=0,t||A(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},a.prototype.readInt32BE=function(e,t){return e>>>=0,t||A(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},a.prototype.readFloatLE=function(e,t){return e>>>=0,t||A(e,4,this.length),i.read(this,e,!0,23,4)},a.prototype.readFloatBE=function(e,t){return e>>>=0,t||A(e,4,this.length),i.read(this,e,!1,23,4)},a.prototype.readDoubleLE=function(e,t){return e>>>=0,t||A(e,8,this.length),i.read(this,e,!0,52,8)},a.prototype.readDoubleBE=function(e,t){return e>>>=0,t||A(e,8,this.length),i.read(this,e,!1,52,8)},a.prototype.writeUIntLE=function(e,t,n,i){e=+e,t>>>=0,n>>>=0,i||P(this,e,t,n,Math.pow(2,8*n)-1,0);var r=1,o=0;for(this[t]=255&e;++o>>=0,n>>>=0,i||P(this,e,t,n,Math.pow(2,8*n)-1,0);var r=n-1,o=1;for(this[t+r]=255&e;--r>=0&&(o*=256);)this[t+r]=e/o&255;return t+n},a.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,1,255,0),this[t]=255&e,t+1},a.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},a.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},a.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},a.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},a.prototype.writeIntLE=function(e,t,n,i){if(e=+e,t>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,e,t,n,r-1,-r)}var o=0,a=1,s=0;for(this[t]=255&e;++o>0)-s&255;return t+n},a.prototype.writeIntBE=function(e,t,n,i){if(e=+e,t>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,e,t,n,r-1,-r)}var o=n-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a>>0)-s&255;return t+n},a.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},a.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},a.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},a.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},a.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||P(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},a.prototype.writeFloatLE=function(e,t,n){return I(this,e,t,!0,n)},a.prototype.writeFloatBE=function(e,t,n){return I(this,e,t,!1,n)},a.prototype.writeDoubleLE=function(e,t,n){return R(this,e,t,!0,n)},a.prototype.writeDoubleBE=function(e,t,n){return R(this,e,t,!1,n)},a.prototype.copy=function(e,t,n,i){if(!a.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&0!==i&&(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else Uint8Array.prototype.set.call(e,this.subarray(n,i),t);return r},a.prototype.fill=function(e,t,n,i){if("string"==typeof e){if("string"==typeof t?(i=t,t=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!a.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===e.length){var r=e.charCodeAt(0);("utf8"===i&&r<128||"latin1"===i)&&(e=r)}}else"number"==typeof e&&(e&=255);if(t<0||this.length>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!r){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===i){(t-=3)>-1&&o.push(239,191,189);continue}r=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(t-=3)>-1&&o.push(239,191,189);if(r=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function j(e){return t.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(D,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function F(e,t,n,i){for(var r=0;r=t.length||r>=e.length);++r)t[r+n]=e[r];return r}function B(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function V(e){return e!=e}}).call(this)}).call(this,e("buffer").Buffer)},{"base64-js":2,buffer:6,ieee754:9}],7:[function(e,t,n){"use strict";t.exports=function e(t){return null===t||"object"!=typeof t||null!=t.toJSON?JSON.stringify(t):Array.isArray(t)?"["+t.reduce(function(t,n,i){return t+(0===i?"":",")+e(void 0===n||"symbol"==typeof n?null:n)},"")+"]":"{"+Object.keys(t).sort().reduce(function(n,i,r){return void 0===t[i]||"symbol"==typeof t[i]?n:n+(0===n.length?"":",")+e(i)+":"+e(t[i])},"")+"}"}},{}],8:[function(e,t,n){"use strict";var i,r="object"==typeof Reflect?Reflect:null,o=r&&"function"==typeof r.apply?r.apply:function(e,t,n){return Function.prototype.apply.call(e,t,n)};i=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var a=Number.isNaN||function(e){return e!=e};function s(){s.init.call(this)}t.exports=s,t.exports.once=function(e,t){return new Promise(function(n,i){function r(n){e.removeListener(t,o),i(n)}function o(){"function"==typeof e.removeListener&&e.removeListener("error",r),n([].slice.call(arguments))}m(e,t,o,{once:!0}),"error"!==t&&function(e,t,n){"function"==typeof e.on&&m(e,"error",t,{once:!0})}(e,r)})},s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var u=10;function c(e){if("function"!=typeof e)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function l(e){return void 0===e._maxListeners?s.defaultMaxListeners:e._maxListeners}function h(e,t,n,i){var r,o,a;if(c(n),void 0===(o=e._events)?(o=e._events=Object.create(null),e._eventsCount=0):(void 0!==o.newListener&&(e.emit("newListener",t,n.listener?n.listener:n),o=e._events),a=o[t]),void 0===a)a=o[t]=n,++e._eventsCount;else if("function"==typeof a?a=o[t]=i?[n,a]:[a,n]:i?a.unshift(n):a.push(n),(r=l(e))>0&&a.length>r&&!a.warned){a.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=a.length,function(e){console&&console.warn&&console.warn(e)}(s)}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function f(e,t,n){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},r=d.bind(i);return r.listener=n,i.wrapFn=r,r}function p(e,t,n){var i=e._events;if(void 0===i)return[];var r=i[t];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var u=r[e];if(void 0===u)return!1;if("function"==typeof u)o(u,this,t);else{var c=u.length,l=g(u,c);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,r=o;break}if(r<0)return this;0===r?n.shift():function(e,t){for(;t+1=0;i--)this.removeListener(e,t[i]);return this},s.prototype.listeners=function(e){return p(this,e,!0)},s.prototype.rawListeners=function(e){return p(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):v.call(e,t)},s.prototype.listenerCount=v,s.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},{}],9:[function(e,t,n){n.read=function(e,t,n,i,r){var o,a,s=8*r-i-1,u=(1<>1,l=-7,h=n?r-1:0,d=n?-1:1,f=e[t+h];for(h+=d,o=f&(1<<-l)-1,f>>=-l,l+=s;l>0;o=256*o+e[t+h],h+=d,l-=8);for(a=o&(1<<-l)-1,o>>=-l,l+=i;l>0;a=256*a+e[t+h],h+=d,l-=8);if(0===o)o=1-c;else{if(o===u)return a?NaN:1/0*(f?-1:1);a+=Math.pow(2,i),o-=c}return(f?-1:1)*a*Math.pow(2,o-i)},n.write=function(e,t,n,i,r,o){var a,s,u,c=8*o-r-1,l=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,f=i?0:o-1,p=i?1:-1,v=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=l):(a=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-a))<1&&(a--,u*=2),(t+=a+h>=1?d/u:d*Math.pow(2,1-h))*u>=2&&(a++,u/=2),a+h>=l?(s=0,a=l):a+h>=1?(s=(t*u-1)*Math.pow(2,r),a+=h):(s=t*Math.pow(2,h-1)*Math.pow(2,r),a=0));r>=8;e[n+f]=255&s,f+=p,s/=256,r-=8);for(a=a<0;e[n+f]=255&a,f+=p,a/=256,c-=8);e[n+f-p]|=128*v}},{}],10:[function(e,t,n){t.exports="function"==typeof Object.create?function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},{}],11:[function(e,t,n){"use strict";var i=e("./types"),r=i.isArray,o=i.isObject,a=i.isString,s=e("./util").asArray,u=e("./url").prependBase,c=e("./JsonLdError"),l=e("./ResolvedContext");function d(e){throw new c("Invalid JSON-LD syntax; @context must be an object.","jsonld.SyntaxError",{code:"invalid local context",context:e})}function f(e){var t=e.context,n=e.base;if(t){var i=t["@context"];if(a(i))t["@context"]=u(n,i);else if(r(i))for(var s=0;s10)){e.next=2;break}throw new c("Maximum number of @context URLs exceeded.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"loading remote context failed":"context overflow",max:10});case 2:if(!s.has(n)){e.next=4;break}throw new c("Cyclical @context URLs detected.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"recursive context inclusion":"context overflow",url:n});case 4:return s.add(n),e.prev=5,e.next=8,i(n);case 8:l=e.sent,u=l.document||null,a(u)&&(u=JSON.parse(u)),e.next=16;break;case 13:throw e.prev=13,e.t0=e.catch(5),new c("Dereferencing a URL did not result in a valid JSON-LD object. Possible causes are an inaccessible URL perhaps due to a same-origin policy (ensure the server uses CORS if you are using client-side JavaScript), too many redirects, a non-JSON response, or more than one HTTP Link Header was provided for a remote context.","jsonld.InvalidUrl",{code:"loading remote context failed",url:n,cause:e.t0});case 16:if(o(u)){e.next=18;break}throw new c("Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object.","jsonld.InvalidUrl",{code:"invalid remote context",url:n});case 18:return e.abrupt("return",(u="@context"in u?{"@context":u["@context"]}:{"@context":{}},l.contextUrl&&(r(u["@context"])||(u["@context"]=[u["@context"]]),u["@context"].push(l.contextUrl)),{context:u,remoteDoc:l}));case 19:case"end":return e.stop()}},e,null,[[5,13]])}))()}}]),e}()},{"./JsonLdError":12,"./ResolvedContext":16,"./types":30,"./url":31,"./util":32}],12:[function(e,t,n){"use strict";t.exports=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"An unspecified JSON-LD error occurred.",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"jsonld.Error",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return m(this,n),(e=t.call(this,i)).name=r,e.message=i,e.details=o,e}return n}(l(Error))},{}],13:[function(e,t,n){"use strict";t.exports=function(e){var t=function(){function e(){m(this,e)}return b(e,[{key:"toString",value:function(){return"[object JsonLdProcessor]"}}]),e}();return Object.defineProperty(t,"prototype",{writable:!1,enumerable:!1}),Object.defineProperty(t.prototype,"constructor",{writable:!0,enumerable:!1,configurable:!0,value:t}),t.compact=function(t,n){return arguments.length<2?Promise.reject(new TypeError("Could not compact, too few arguments.")):e.compact(t,n)},t.expand=function(t){return arguments.length<1?Promise.reject(new TypeError("Could not expand, too few arguments.")):e.expand(t)},t.flatten=function(t){return arguments.length<1?Promise.reject(new TypeError("Could not flatten, too few arguments.")):e.flatten(t)},t}},{}],14:[function(e,t,n){"use strict";t.exports=e("rdf-canonize").NQuads},{"rdf-canonize":46}],15:[function(e,t,n){"use strict";t.exports=function(){function e(){m(this,e),this._requests={}}return b(e,[{key:"wrapLoader",value:function(e){var t=this;return t._loader=e,function(){return t.add.apply(t,arguments)}}},{key:"add",value:function(e){var t=this;return h(regeneratorRuntime.mark(function n(){var i;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!(i=t._requests[e])){n.next=3;break}return n.abrupt("return",Promise.resolve(i));case 3:return i=t._requests[e]=t._loader(e),n.prev=4,n.next=7,i;case 7:return n.abrupt("return",n.sent);case 8:return n.prev=8,delete t._requests[e],n.finish(8);case 11:case"end":return n.stop()}},n,null,[[4,,8,11]])}))()}}]),e}()},{}],16:[function(e,t,n){"use strict";var i=e("lru-cache");t.exports=function(){function e(t){var n=t.document;m(this,e),this.document=n,this.cache=new i({max:10})}return b(e,[{key:"getProcessed",value:function(e){return this.cache.get(e)}},{key:"setProcessed",value:function(e,t){this.cache.set(e,t)}}]),e}()},{"lru-cache":33}],17:[function(e,i,r){"use strict";var a,s=e("./JsonLdError"),u=e("./types"),c=u.isArray,l=u.isObject,d=u.isString,f=u.isUndefined,p=e("./graphTypes"),v=p.isList,g=p.isValue,m=p.isGraph,y=p.isSimpleGraph,b=p.isSubjectReference,w=e("./context"),k=w.expandIri,x=w.getContextValue,S=w.isKeyword,E=w.process,C=w.processingMode,O=e("./url"),T=O.removeBase,A=O.prependBase,P=e("./util"),M=P.addValue,I=P.asArray,R=P.compareShortestLeast,D={};function N(e,t,n){if("@nest"!==k(e,t,{vocab:!0},n))throw new s("JSON-LD compact error; nested property must have an @nest value resolving to @nest.","jsonld.SyntaxError",{code:"invalid @nest value"})}i.exports=D,D.compact=(a=h(regeneratorRuntime.mark(function e(t){var i,r,a,u,h,p,w,k,O,T,A,P,R;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(i=t.activeCtx,r=t.activeProperty,a=void 0===r?null:r,u=t.element,h=t.options,p=void 0===h?{}:h,w=t.compactionMap,k=void 0===w?function(){}:w,!c(u)){e.next=21;break}O=[],T=0;case 4:if(!(T1&&(L=Array.from(L).sort()),j=i,F=_(L),e.prev=27,F.s();case 29:if((B=F.n()).done){e.next=39;break}if(V=B.value,z=D.compactIri({activeCtx:j,iri:V,relativeTo:{vocab:!0}}),U=x(P,z,"@context"),e.t1=f(U),e.t1){e.next=37;break}return e.next=36,E({activeCtx:i,localCtx:U,options:p,propagate:!1});case 36:i=e.sent;case 37:e.next=29;break;case 39:e.next=44;break;case 41:e.prev=41,e.t2=e.catch(27),F.e(e.t2);case 44:return e.prev=44,F.f(),e.finish(44);case 47:H=Object.keys(u).sort(),G=_(H),e.prev=49,G.s();case 51:if((W=G.n()).done){e.next=184;break}if(q=W.value,X=u[q],"@id"===q){e.next=180;break}if("@type"===q){e.next=174;break}if("@reverse"===q){e.next=167;break}if("@preserve"===q){e.next=161;break}if("@index"===q){e.next=155;break}if("@graph"===q||"@list"===q||"@included"===q||!S(q)){e.next=64;break}Y=D.compactIri({activeCtx:i,iri:q,relativeTo:{vocab:!0}}),M(A,Y,X),e.next=153;break;case 64:if(c(X)){e.next=66;break}throw new s("JSON-LD expansion error; expanded value must be an array.","jsonld.SyntaxError");case 66:0===X.length&&(K=D.compactIri({activeCtx:i,iri:q,value:X,relativeTo:{vocab:!0},reverse:T}),$=i.mappings.has(K)?i.mappings.get(K)["@nest"]:null,Q=A,$&&(N(i,$,p),l(A[$])||(A[$]={}),Q=A[$]),M(Q,K,X,{propertyIsArray:!0})),Z=_(X),e.prev=68,Z.s();case 70:if((J=Z.n()).done){e.next=145;break}return ee=J.value,te=D.compactIri({activeCtx:i,iri:q,value:ee,relativeTo:{vocab:!0},reverse:T}),ne=i.mappings.has(te)?i.mappings.get(te)["@nest"]:null,ie=A,ne&&(N(i,ne,p),l(A[ne])||(A[ne]={}),ie=A[ne]),re=x(i,te,"@container")||[],oe=m(ee),ae=v(ee),se=void 0,ae?se=ee["@list"]:oe&&(se=ee["@graph"]),e.next=80,D.compact({activeCtx:i,activeProperty:te,element:ae||oe?se:ee,options:p,compactionMap:k});case 80:if(ue=e.sent,!ae){e.next=86;break}if(c(ue)||(ue=[ue]),!re.includes("@list")){e.next=85;break}return M(ie,te,ue,{valueIsArray:!0,allowDuplicate:!0}),e.abrupt("continue",143);case 85:ue=o({},D.compactIri({activeCtx:i,iri:"@list",relativeTo:{vocab:!0}}),ue),"@index"in ee&&(ue[D.compactIri({activeCtx:i,iri:"@index",relativeTo:{vocab:!0}})]=ee["@index"]);case 86:if(!oe){e.next=90;break}re.includes("@graph")&&(re.includes("@id")||re.includes("@index")&&y(ee))?(ce=void 0,ie.hasOwnProperty(te)?ce=ie[te]:ie[te]=ce={},le=(re.includes("@id")?ee["@id"]:ee["@index"])||D.compactIri({activeCtx:i,iri:"@none",relativeTo:{vocab:!0}}),M(ce,le,ue,{propertyIsArray:!p.compactArrays||re.includes("@set")})):re.includes("@graph")&&y(ee)?(c(ue)&&ue.length>1&&(ue={"@included":ue}),M(ie,te,ue,{propertyIsArray:!p.compactArrays||re.includes("@set")})):(c(ue)&&1===ue.length&&p.compactArrays&&(ue=ue[0]),ue=o({},D.compactIri({activeCtx:i,iri:"@graph",relativeTo:{vocab:!0}}),ue),"@id"in ee&&(ue[D.compactIri({activeCtx:i,iri:"@id",relativeTo:{vocab:!0}})]=ee["@id"]),"@index"in ee&&(ue[D.compactIri({activeCtx:i,iri:"@index",relativeTo:{vocab:!0}})]=ee["@index"]),M(ie,te,ue,{propertyIsArray:!p.compactArrays||re.includes("@set")})),e.next=143;break;case 90:if(!(re.includes("@language")||re.includes("@index")||re.includes("@id")||re.includes("@type"))){e.next=141;break}if(he=void 0,de=void 0,ie.hasOwnProperty(te)?he=ie[te]:ie[te]=he={},!re.includes("@language")){e.next=96;break}g(ue)&&(ue=ue["@value"]),de=ee["@language"],e.next=138;break;case 96:if(!re.includes("@index")){e.next=117;break}if(fe=x(i,te,"@index")||"@index",pe=D.compactIri({activeCtx:i,iri:fe,relativeTo:{vocab:!0}}),"@index"!==fe){e.next=102;break}de=ee["@index"],delete ue[pe],e.next=115;break;case 102:if(me=void 0,ve=I(ue[fe]||[]),ge=n(ve),de=ge[0],me=ge.slice(1),!d(de)){e.next=114;break}e.t3=me.length,e.next=0===e.t3?107:1===e.t3?109:111;break;case 107:return delete ue[fe],e.abrupt("break",112);case 109:return ue[fe]=me[0],e.abrupt("break",112);case 111:ue[fe]=me;case 112:e.next=115;break;case 114:de=null;case 115:e.next=138;break;case 117:if(!re.includes("@id")){e.next=122;break}ye=D.compactIri({activeCtx:i,iri:"@id",relativeTo:{vocab:!0}}),de=ue[ye],delete ue[ye],e.next=138;break;case 122:if(!re.includes("@type")){e.next=138;break}be=D.compactIri({activeCtx:i,iri:"@type",relativeTo:{vocab:!0}}),_e=void 0,e.t4=(t=I(ue[be]||[]),r=n(t),de=r[0],(_e=r.slice(1)).length),e.next=0===e.t4?128:1===e.t4?130:132;break;case 128:return delete ue[be],e.abrupt("break",133);case 130:return ue[be]=_e[0],e.abrupt("break",133);case 132:ue[be]=_e;case 133:if(e.t5=1===Object.keys(ue).length&&"@id"in ee,!e.t5){e.next=138;break}return e.next=137,D.compact({activeCtx:i,activeProperty:te,element:{"@id":ee["@id"]},options:p,compactionMap:k});case 137:ue=e.sent;case 138:de||(de=D.compactIri({activeCtx:i,iri:"@none",relativeTo:{vocab:!0}})),M(he,de,ue,{propertyIsArray:re.includes("@set")}),e.next=143;break;case 141:we=!p.compactArrays||re.includes("@set")||re.includes("@list")||c(ue)&&0===ue.length||"@list"===q||"@graph"===q,M(ie,te,ue,{propertyIsArray:we});case 143:e.next=70;break;case 145:e.next=150;break;case 147:e.prev=147,e.t6=e.catch(68),Z.e(e.t6);case 150:return e.prev=150,Z.f(),e.finish(150);case 153:e.next=159;break;case 155:if(!(x(i,a,"@container")||[]).includes("@index")){e.next=157;break}return e.abrupt("continue",182);case 157:ke=D.compactIri({activeCtx:i,iri:q,relativeTo:{vocab:!0}}),M(A,ke,X);case 159:e.next=165;break;case 161:return e.next=163,D.compact({activeCtx:i,activeProperty:a,element:X,options:p,compactionMap:k});case 163:xe=e.sent,c(xe)&&0===xe.length||M(A,q,xe);case 165:e.next=172;break;case 167:return e.next=169,D.compact({activeCtx:i,activeProperty:"@reverse",element:X,options:p,compactionMap:k});case 169:for(Ee in Se=e.sent)i.mappings.has(Ee)&&i.mappings.get(Ee).reverse&&(Ce=Se[Ee],Oe=(x(i,Ee,"@container")||[]).includes("@set")||!p.compactArrays,M(A,Ee,Ce,{propertyIsArray:Oe}),delete Se[Ee]);Object.keys(Se).length>0&&(Te=D.compactIri({activeCtx:i,iri:q,relativeTo:{vocab:!0}}),M(A,Te,Se));case 172:e.next=178;break;case 174:1===(Ae=I(X).map(function(e){return D.compactIri({activeCtx:P,iri:e,relativeTo:{vocab:!0}})})).length&&(Ae=Ae[0]),Pe=D.compactIri({activeCtx:i,iri:"@type",relativeTo:{vocab:!0}}),Me=(x(i,Pe,"@container")||[]).includes("@set")&&C(i,1.1)||c(Ae)&&0===X.length,M(A,Pe,Ae,{propertyIsArray:Me});case 178:e.next=182;break;case 180:1===(Ie=I(X).map(function(e){return D.compactIri({activeCtx:i,iri:e,relativeTo:{vocab:!1},base:p.base})})).length&&(Ie=Ie[0]),A[D.compactIri({activeCtx:i,iri:"@id",relativeTo:{vocab:!0}})]=Ie;case 182:e.next=51;break;case 184:e.next=189;break;case 186:e.prev=186,e.t7=e.catch(49),G.e(e.t7);case 189:return e.prev=189,G.f(),e.finish(189);case 192:return e.abrupt("return",{v:A});case 193:case"end":return e.stop()}},e,null,[[27,41,44,47],[49,186,189,192],[68,147,150,153]])})(),"t3",29);case 29:if("object"!=typeof(R=e.t3)){e.next=32;break}return e.abrupt("return",R.v);case 32:return e.abrupt("return",u);case 33:case"end":return e.stop()}},e)})),function(e){return a.apply(this,arguments)}),D.compactIri=function(e){var n=e.activeCtx,i=e.iri,r=e.value,o=void 0===r?null:r,a=e.relativeTo,u=void 0===a?{vocab:!1}:a,c=e.reverse,h=void 0!==c&&c,d=e.base,f=void 0===d?null:d;if(null===i)return i;n.isPropertyTermScoped&&n.previousContext&&(n=n.previousContext);var p=n.getInverse();if(S(i)&&i in p&&"@none"in p[i]&&"@type"in p[i]["@none"]&&"@none"in p[i]["@none"]["@type"])return p[i]["@none"]["@type"]["@none"];if(u.vocab&&i in p){var y=n["@language"]||"@none",b=[];l(o)&&"@index"in o&&!("@graph"in o)&&b.push("@index","@index@set"),l(o)&&"@preserve"in o&&(o=o["@preserve"][0]),m(o)?("@index"in o&&b.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in o&&b.push("@graph@id","@graph@id@set"),b.push("@graph","@graph@set","@set"),"@index"in o||b.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in o||b.push("@graph@id","@graph@id@set")):l(o)&&!g(o)&&b.push("@id","@id@set","@type","@set@type");var w="@language",k="@null";if(h)w="@type",k="@reverse",b.push("@set");else if(v(o)){"@index"in o||b.push("@list");var x=o["@list"];if(0===x.length)w="@any",k="@none";else{for(var E=0===x.length?y:null,C=null,O=0;O=0;--G){var W,q=V[G],X=_(q.terms);try{for(X.s();!(W=X.n()).done;){var Y=W.value,K=Y+":"+i.substr(q.iri.length);n.mappings.get(Y)._prefix&&(!n.mappings.has(K)||null===o&&n.mappings.get(K)["@id"]===i)&&(null===B||R(K,B)<0)&&(B=K)}}catch(te){X.e(te)}finally{X.f()}}if(null!==B)return B;var $,Q=_(n.mappings);try{for(Q.s();!($=Q.n()).done;){var Z=t($.value,2),J=Z[0],ee=Z[1];if(ee&&ee._prefix&&i.startsWith(J+":"))throw new s('Absolute IRI "'.concat(i,'" confused with prefix "').concat(J,'".'),"jsonld.SyntaxError",{code:"IRI confused with prefix",context:n})}}catch(te){Q.e(te)}finally{Q.f()}return u.vocab?i:"@base"in n?n["@base"]?T(A(f,n["@base"]),i):i:T(f,i)},D.compactValue=function(e){var t=e.activeCtx,n=e.activeProperty,i=e.value,r=e.options;if(g(i)){var a=x(t,n,"@type"),s=x(t,n,"@language"),u=x(t,n,"@direction"),c=x(t,n,"@container")||[],l="@index"in i&&!c.includes("@index");if(!l&&"@none"!==a&&(i["@type"]===a||"@language"in i&&i["@language"]===s&&"@direction"in i&&i["@direction"]===u||"@language"in i&&i["@language"]===s||"@direction"in i&&i["@direction"]===u))return i["@value"];var h=Object.keys(i).length,f=1===h||2===h&&"@index"in i&&!l,p="@language"in t,v=d(i["@value"]),m=t.mappings.has(n)&&null===t.mappings.get(n)["@language"];if(f&&"@none"!==a&&(!p||!v||m))return i["@value"];var y={};return l&&(y[D.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=i["@index"]),"@type"in i?y[D.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}})]=D.compactIri({activeCtx:t,iri:i["@type"],relativeTo:{vocab:!0}}):"@language"in i&&(y[D.compactIri({activeCtx:t,iri:"@language",relativeTo:{vocab:!0}})]=i["@language"]),"@direction"in i&&(y[D.compactIri({activeCtx:t,iri:"@direction",relativeTo:{vocab:!0}})]=i["@direction"]),y[D.compactIri({activeCtx:t,iri:"@value",relativeTo:{vocab:!0}})]=i["@value"],y}var b=k(t,n,{vocab:!0},r),_=x(t,n,"@type"),w=D.compactIri({activeCtx:t,iri:i["@id"],relativeTo:{vocab:"@vocab"===_},base:r.base});return"@id"===_||"@vocab"===_||"@graph"===b?w:o({},D.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}}),w)}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],18:[function(e,t,n){"use strict";var i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#";t.exports={LINK_HEADER_REL:"http://www.w3.org/ns/json-ld#context",LINK_HEADER_CONTEXT:"http://www.w3.org/ns/json-ld#context",RDF:i,RDF_LIST:i+"List",RDF_FIRST:i+"first",RDF_REST:i+"rest",RDF_NIL:i+"nil",RDF_TYPE:i+"type",RDF_PLAIN_LITERAL:i+"PlainLiteral",RDF_XML_LITERAL:i+"XMLLiteral",RDF_JSON_LITERAL:i+"JSON",RDF_OBJECT:i+"object",RDF_LANGSTRING:i+"langString",XSD:r,XSD_BOOLEAN:r+"boolean",XSD_DOUBLE:r+"double",XSD_INTEGER:r+"integer",XSD_STRING:r+"string"}},{}],19:[function(e,n,i){"use strict";var r,o=e("./util"),a=e("./JsonLdError"),s=e("./types"),u=s.isArray,c=s.isObject,l=s.isString,d=s.isUndefined,f=e("./url"),p=f.isAbsolute,g=f.isRelative,m=f.prependBase,y=e("./util"),b=y.asArray,w=y.compareShortestLeast,k=new Map,x=/^@[a-zA-Z]+$/,S={};function E(e,t,n,i,r,o){if(null===t||!l(t)||S.isKeyword(t))return t;if(t.match(x))return null;if(i&&i.hasOwnProperty(t)&&!0!==r.get(t)&&S.createTermDefinition({activeCtx:e,localCtx:i,term:t,defined:r,options:o}),(n=n||{}).vocab){var a=e.mappings.get(t);if(null===a)return null;if(c(a)&&"@id"in a)return a["@id"]}var s=t.indexOf(":");if(s>0){var u=t.substr(0,s),h=t.substr(s+1);if("_"===u||0===h.indexOf("//"))return t;i&&i.hasOwnProperty(u)&&S.createTermDefinition({activeCtx:e,localCtx:i,term:u,defined:r,options:o});var d=e.mappings.get(u);if(d&&d._prefix)return d["@id"]+h;if(p(t))return t}if(n.vocab&&"@vocab"in e)return e["@vocab"]+t;if(n.base&&"@base"in e){if(e["@base"])return m(m(o.base,e["@base"]),t)}else if(n.base)return m(o.base,t);return t}function C(e,t){if(!e||"object"!=typeof e||!t||"object"!=typeof t)return e===t;var n=Array.isArray(e);if(n!==Array.isArray(t))return!1;if(n){if(e.length!==t.length)return!1;for(var i=0;i0,"@reverse"in t){if("@id"in t)throw new a("Invalid JSON-LD syntax; a @reverse term definition must not contain @id.","jsonld.SyntaxError",{code:"invalid reverse property",context:i});if("@nest"in t)throw new a("Invalid JSON-LD syntax; a @reverse term definition must not contain @nest.","jsonld.SyntaxError",{code:"invalid reverse property",context:i});var k=t["@reverse"];if(!l(k))throw new a("Invalid JSON-LD syntax; a @context @reverse value must be a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});if(!S.isKeyword(k)&&k.match(x))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{reverse:k}),void(g?n.mappings.set(r,g):n.mappings.delete(r));var O=E(n,k,{vocab:!0,base:!1},i,o,s);if(!p(O))throw new a("Invalid JSON-LD syntax; a @context @reverse value must be an absolute IRI or a blank node identifier.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});y["@id"]=O,y.reverse=!0}else if("@id"in t){var T=t["@id"];if(T&&!l(T))throw new a("Invalid JSON-LD syntax; a @context @id value must be an array of strings or a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});if(null===T)y["@id"]=null;else{if(!S.isKeyword(T)&&T.match(x))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{id:T}),void(g?n.mappings.set(r,g):n.mappings.delete(r));if(T!==r){if(T=E(n,T,{vocab:!0,base:!1},i,o,s),!p(T)&&!S.isKeyword(T))throw new a("Invalid JSON-LD syntax; a @context @id value must be an absolute IRI, a blank node identifier, or a keyword.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});if(r.match(/(?::[^:])|\//)&&E(n,r,{vocab:!0,base:!1},i,new Map(o).set(r,!0),s)!==T)throw new a("Invalid JSON-LD syntax; term in form of IRI must expand to definition.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i});y["@id"]=T,y._prefix=m&&!y._termHasColon&&T.match(/[:\/\?#\[\]@]$/)}}}if(!("@id"in y))if(y._termHasColon){var A=r.substr(0,w);if(i.hasOwnProperty(A)&&S.createTermDefinition({activeCtx:n,localCtx:i,term:A,defined:o,options:s}),n.mappings.has(A)){var P=r.substr(w+1);y["@id"]=n.mappings.get(A)["@id"]+P}else y["@id"]=r}else if("@type"===r)y["@id"]=r;else{if(!("@vocab"in n))throw new a("Invalid JSON-LD syntax; @context terms must define an @id.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:i,term:r});y["@id"]=n["@vocab"]+r}if((!0===t["@protected"]||!0===o.get("@protected")&&!1!==t["@protected"])&&(n.protected[r]=!0,y.protected=!0),o.set(r,!0),"@type"in t){var M=t["@type"];if(!l(M))throw new a("Invalid JSON-LD syntax; an @context @type value must be a string.","jsonld.SyntaxError",{code:"invalid type mapping",context:i});if("@json"===M||"@none"===M){if(S.processingMode(n,1))throw new a('Invalid JSON-LD syntax; an @context @type value must not be "'.concat(M,'" in JSON-LD 1.0 mode.'),"jsonld.SyntaxError",{code:"invalid type mapping",context:i})}else if("@id"!==M&&"@vocab"!==M){if(M=E(n,M,{vocab:!0,base:!1},i,o,s),!p(M))throw new a("Invalid JSON-LD syntax; an @context @type value must be an absolute IRI.","jsonld.SyntaxError",{code:"invalid type mapping",context:i});if(0===M.indexOf("_:"))throw new a("Invalid JSON-LD syntax; an @context @type value must be an IRI, not a blank node identifier.","jsonld.SyntaxError",{code:"invalid type mapping",context:i})}y["@type"]=M}if("@container"in t){var I=l(t["@container"])?[t["@container"]]:t["@container"]||[],R=["@list","@set","@index","@language"],D=!0,N=I.includes("@set");if(S.processingMode(n,1.1)){if(R.push("@graph","@id","@type"),I.includes("@list")){if(1!==I.length)throw new a("Invalid JSON-LD syntax; @context @container with @list must have no other values","jsonld.SyntaxError",{code:"invalid container mapping",context:i})}else if(I.includes("@graph")){if(I.some(function(e){return"@graph"!==e&&"@id"!==e&&"@index"!==e&&"@set"!==e}))throw new a("Invalid JSON-LD syntax; @context @container with @graph must have no other values other than @id, @index, and @set","jsonld.SyntaxError",{code:"invalid container mapping",context:i})}else D&=I.length<=(N?2:1);if(I.includes("@type")&&(y["@type"]=y["@type"]||"@id",!["@id","@vocab"].includes(y["@type"])))throw new a("Invalid JSON-LD syntax; container: @type requires @type to be @id or @vocab.","jsonld.SyntaxError",{code:"invalid type mapping",context:i})}else D&=!u(t["@container"]),D&=I.length<=1;if(D&=I.every(function(e){return R.includes(e)}),!(D&=!(N&&I.includes("@list"))))throw new a("Invalid JSON-LD syntax; @context @container value must be one of the following: "+R.join(", "),"jsonld.SyntaxError",{code:"invalid container mapping",context:i});if(y.reverse&&!I.every(function(e){return["@index","@set"].includes(e)}))throw new a("Invalid JSON-LD syntax; @context @container value for a @reverse type definition must be @index or @set.","jsonld.SyntaxError",{code:"invalid reverse property",context:i});y["@container"]=I}if("@index"in t){if(!("@container"in t)||!y["@container"].includes("@index"))throw new a('Invalid JSON-LD syntax; @index without @index in @container: "'.concat(t["@index"],'" on term "').concat(r,'".'),"jsonld.SyntaxError",{code:"invalid term definition",context:i});if(!l(t["@index"])||0===t["@index"].indexOf("@"))throw new a('Invalid JSON-LD syntax; @index must expand to an IRI: "'.concat(t["@index"],'" on term "').concat(r,'".'),"jsonld.SyntaxError",{code:"invalid term definition",context:i});y["@index"]=t["@index"]}if("@context"in t&&(y["@context"]=t["@context"]),"@language"in t&&!("@type"in t)){var L=t["@language"];if(null!==L&&!l(L))throw new a("Invalid JSON-LD syntax; @context @language value must be a string or null.","jsonld.SyntaxError",{code:"invalid language mapping",context:i});null!==L&&(L=L.toLowerCase()),y["@language"]=L}if("@prefix"in t){if(r.match(/:|\//))throw new a("Invalid JSON-LD syntax; @context @prefix used on a compact IRI term","jsonld.SyntaxError",{code:"invalid term definition",context:i});if(S.isKeyword(y["@id"]))throw new a("Invalid JSON-LD syntax; keywords may not be used as prefixes","jsonld.SyntaxError",{code:"invalid term definition",context:i});if("boolean"!=typeof t["@prefix"])throw new a("Invalid JSON-LD syntax; @context value for @prefix must be boolean","jsonld.SyntaxError",{code:"invalid @prefix value",context:i});y._prefix=!0===t["@prefix"]}if("@direction"in t){var j=t["@direction"];if(null!==j&&"ltr"!==j&&"rtl"!==j)throw new a('Invalid JSON-LD syntax; @direction value must be null, "ltr", or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",context:i});y["@direction"]=j}if("@nest"in t){var F=t["@nest"];if(!l(F)||"@nest"!==F&&0===F.indexOf("@"))throw new a("Invalid JSON-LD syntax; @context @nest value must be a string which is not a keyword other than @nest.","jsonld.SyntaxError",{code:"invalid @nest value",context:i});y["@nest"]=F}var B=y["@id"];if("@context"===B||"@preserve"===B)throw new a("Invalid JSON-LD syntax; @context and @preserve cannot be aliased.","jsonld.SyntaxError",{code:"invalid keyword alias",context:i});if(g&&g.protected&&!d&&(n.protected[r]=!0,y.protected=!0,!C(g,y))){var V=s&&s.protectedMode||"error";if("error"===V)throw new a('Invalid JSON-LD syntax; tried to redefine "'.concat(r,'" which is a protected term.'),"jsonld.SyntaxError",{code:"protected term redefinition",context:i,term:r});if("warn"===V)return void console.warn("WARNING: protected term redefinition",{term:r});throw new a("Invalid protectedMode.","jsonld.SyntaxError",{code:"invalid protected mode",context:i,term:r,protectedMode:V})}},S.expandIri=function(e,t,n,i){return E(e,t,n,void 0,void 0,i)},S.getInitialContext=function(e){var t=JSON.stringify({processingMode:e.processingMode}),n=k.get(t);if(n)return n;var i={processingMode:e.processingMode,mappings:new Map,inverse:null,getInverse:function(){var e=this;if(e.inverse)return e.inverse;var t,n=e.inverse={},i=e.fastCurieMap={},o={},s=(e["@language"]||"@none").toLowerCase(),u=e["@direction"],c=e.mappings,l=_(v(c.keys()).sort(w));try{for(l.s();!(t=l.n()).done;){var h=t.value,d=c.get(h);if(null!==d){var f=d["@container"]||"@none";if(f=[].concat(f).sort().join(""),null!==d["@id"]){var p,g=_(b(d["@id"]));try{for(g.s();!(p=g.n()).done;){var m=p.value,y=n[m],k=S.isKeyword(m);if(y)!k&&!d._termHasColon&&o[m].push(h);else if(n[m]=y={},!k&&!d._termHasColon){o[m]=[h];var x={iri:m,terms:o[m]};m[0]in i?i[m[0]].push(x):i[m[0]]=[x]}if(y[f]||(y[f]={"@language":{},"@type":{},"@any":{}}),a(h,(y=y[f])["@any"],"@none"),d.reverse)a(h,y["@type"],"@reverse");else if("@none"===d["@type"])a(h,y["@any"],"@none"),a(h,y["@language"],"@none"),a(h,y["@type"],"@none");else if("@type"in d)a(h,y["@type"],d["@type"]);else if("@language"in d&&"@direction"in d){var E=d["@language"],C=d["@direction"];a(h,y["@language"],E&&C?"".concat(E,"_").concat(C).toLowerCase():E?E.toLowerCase():C?"_".concat(C):"@null")}else"@language"in d?a(h,y["@language"],(d["@language"]||"@null").toLowerCase()):"@direction"in d?a(h,y["@language"],d["@direction"]?"_".concat(d["@direction"]):"@none"):u?(a(h,y["@language"],"_".concat(u)),a(h,y["@language"],"@none"),a(h,y["@type"],"@none")):(a(h,y["@language"],s),a(h,y["@language"],"@none"),a(h,y["@type"],"@none"))}}catch(T){g.e(T)}finally{g.f()}}}}}catch(T){l.e(T)}finally{l.f()}for(var O in i)r(i,O,1);return n},clone:function(){var e={};return e.mappings=o.clone(this.mappings),e.clone=this.clone,e.inverse=null,e.getInverse=this.getInverse,e.protected=o.clone(this.protected),this.previousContext&&(e.previousContext=this.previousContext.clone()),e.revertToPreviousContext=this.revertToPreviousContext,"@base"in this&&(e["@base"]=this["@base"]),"@language"in this&&(e["@language"]=this["@language"]),"@vocab"in this&&(e["@vocab"]=this["@vocab"]),e},revertToPreviousContext:function(){return this.previousContext?this.previousContext.clone():this},protected:{}};return 1e4===k.size&&k.clear(),k.set(t,i),i;function r(e,t,n){var i,o,a,s=e[t],u=e[t]={},c=_(s);try{for(c.s();!(a=c.n()).done;){var l=a.value;(o=n>=(i=l.iri).length?"":i[n])in u?u[o].push(l):u[o]=[l]}}catch(d){c.e(d)}finally{c.f()}for(var h in u)""!==h&&r(u,h,n+1)}function a(e,t,n){t.hasOwnProperty(n)||(t[n]=e)}},S.getContextValue=function(e,t,n){if(null===t)return"@context"===n?void 0:null;if(e.mappings.has(t)){var i=e.mappings.get(t);if(d(n))return i;if(i.hasOwnProperty(n))return i[n]}return"@language"===n&&n in e||"@direction"===n&&n in e?e[n]:"@context"!==n?null:void 0},S.processingMode=function(e,t){return t.toString()>="1.1"?!e.processingMode||e.processingMode>="json-ld-"+t.toString():"json-ld-1.0"===e.processingMode},S.isKeyword=function(e){if(!l(e)||"@"!==e[0])return!1;switch(e){case"@base":case"@container":case"@context":case"@default":case"@direction":case"@embed":case"@explicit":case"@graph":case"@id":case"@included":case"@index":case"@json":case"@language":case"@list":case"@nest":case"@none":case"@omitDefault":case"@prefix":case"@preserve":case"@protected":case"@requireAll":case"@reverse":case"@set":case"@type":case"@value":case"@version":case"@vocab":return!0}return!1}},{"./JsonLdError":12,"./types":30,"./url":31,"./util":32}],20:[function(e,t,n){"use strict";var i=e("../util"),r=i.parseLinkHeader,o=i.buildHeaders,a=e("../constants").LINK_HEADER_CONTEXT,s=e("../JsonLdError"),u=e("../RequestQueue"),c=e("../url").prependBase,l=/(^|(\r\n))link:/i;function d(e,t,n){var i=new(e=e||XMLHttpRequest);return new Promise(function(e,r){for(var o in i.onload=function(){return e(i)},i.onerror=function(e){return r(e)},i.open("GET",t,!0),n)i.setRequestHeader(o,n[o]);i.send()})}t.exports=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{headers:{}},t=e.secure,n=e.headers,i=void 0===n?{}:n,f=e.xhr;return i=o(i),(new u).wrapLoader(p);function p(e){return v.apply(this,arguments)}function v(){return(v=h(regeneratorRuntime.mark(function e(n){var o,u,h,v,g,m,y;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(0===n.indexOf("http:")||0===n.indexOf("https:")){e.next=2;break}throw new s('URL could not be dereferenced; only "http" and "https" URLs are supported.',"jsonld.InvalidUrl",{code:"loading document failed",url:n});case 2:if(!t||0===n.indexOf("https")){e.next=4;break}throw new s('URL could not be dereferenced; secure mode is enabled and the URL\'s scheme is not "https".',"jsonld.InvalidUrl",{code:"loading document failed",url:n});case 4:return e.prev=4,e.next=7,d(f,n,i);case 7:o=e.sent,e.next=13;break;case 10:throw e.prev=10,e.t0=e.catch(4),new s("URL could not be dereferenced, an error occurred.","jsonld.LoadDocumentError",{code:"loading document failed",url:n,cause:e.t0});case 13:if(!(o.status>=400)){e.next=15;break}throw new s("URL could not be dereferenced: "+o.statusText,"jsonld.LoadDocumentError",{code:"loading document failed",url:n,httpStatusCode:o.status});case 15:if(u={contextUrl:null,documentUrl:n,document:o.response},h=null,v=o.getResponseHeader("Content-Type"),l.test(o.getAllResponseHeaders())&&(g=o.getResponseHeader("Link")),!g||"application/ld+json"===v){e.next=28;break}if(m=r(g),y=m[a],!Array.isArray(y)){e.next=21;break}throw new s("URL could not be dereferenced, it has more than one associated HTTP Link Header.","jsonld.InvalidUrl",{code:"multiple context link headers",url:n});case 21:if(y&&(u.contextUrl=y.target),h=m.alternate,e.t1=h&&"application/ld+json"==h.type&&!(v||"").match(/^application\/(\w*\+)?json$/),!e.t1){e.next=28;break}return e.next=27,p(c(n,h.target));case 27:u=e.sent;case 28:return e.abrupt("return",u);case 29:case"end":return e.stop()}},e,null,[[4,10]])}))).apply(this,arguments)}}},{"../JsonLdError":12,"../RequestQueue":15,"../constants":18,"../url":31,"../util":32}],21:[function(e,n,i){"use strict";var r=e("./JsonLdError"),o=e("./types"),a=o.isArray,s=o.isObject,u=o.isEmptyObject,c=o.isString,l=o.isUndefined,d=e("./graphTypes"),f=d.isList,p=d.isValue,v=d.isGraph,g=d.isSubject,m=e("./context"),y=m.expandIri,b=m.getContextValue,w=m.isKeyword,k=m.process,x=m.processingMode,S=e("./url").isAbsolute,E=e("./util"),C=E.addValue,O=E.asArray,T=E.getValues,A=E.validateTypeValue,P={};n.exports=P;var M,I=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/;function R(e){return D.apply(this,arguments)}function D(){return(D=h(regeneratorRuntime.mark(function e(n){var i,o,h,d,v,m,E,T,M,D,N,F,B,V,z,U,H,G,W,q,X,Y,K,$,Q,Z,J,ee,te,ne,ie,re,oe,ae,se,ue,ce,le,he,de,fe,pe,ve,ge,me,ye,be,_e,we,ke,xe,Se,Ee;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:i=n.activeCtx,o=n.activeProperty,h=n.expandedActiveProperty,d=n.element,v=n.expandedParent,m=n.options,E=void 0===m?{}:m,T=n.insideList,M=n.typeKey,D=n.typeScopedContext,N=n.expansionMap,F=Object.keys(d).sort(),B=[],z=d[M]&&"@json"===y(i,a(d[M])?d[M][0]:d[M],{vocab:!0},E),U=_(F),e.prev=4,U.s();case 6:if((H=U.n()).done){e.next=187;break}if(G=H.value,W=void 0,q=d[G],"@context"!==G){e.next=11;break}return e.abrupt("continue",185);case 11:if(null!==(X=y(i,G,{vocab:!0},E))&&(S(X)||w(X))||void 0!==(X=N({unmappedProperty:G,activeCtx:i,activeProperty:o,parent:d,options:E,insideList:T,value:q,expandedParent:v}))){e.next=14;break}return e.abrupt("continue",185);case 14:if(!w(X)){e.next=19;break}if("@reverse"!==h){e.next=17;break}throw new r("Invalid JSON-LD syntax; a keyword cannot be used as a @reverse property.","jsonld.SyntaxError",{code:"invalid reverse property map",value:q});case 17:if(!(X in v)||"@included"===X||"@type"===X){e.next=19;break}throw new r("Invalid JSON-LD syntax; colliding keywords detected.","jsonld.SyntaxError",{code:"colliding keywords",keyword:X});case 19:if("@id"!==X){e.next=34;break}if(c(q)){e.next=32;break}if(E.isFrame){e.next=23;break}throw new r('Invalid JSON-LD syntax; "@id" value must a string.',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 23:if(!s(q)){e.next=28;break}if(u(q)){e.next=26;break}throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 26:e.next=32;break;case 28:if(a(q)){e.next=30;break}throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 30:if(q.every(function(e){return c(e)})){e.next=32;break}throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:q});case 32:return C(v,"@id",O(q).map(function(e){return c(e)?y(i,e,{base:!0},E):e}),{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 34:if("@type"!==X){e.next=37;break}return s(q)&&(q=Object.fromEntries(Object.entries(q).map(function(e){var n=t(e,2),i=n[0],r=n[1];return[y(D,i,{vocab:!0}),O(r).map(function(e){return y(D,e,{base:!0,vocab:!0})})]}))),A(q,E.isFrame),C(v,"@type",O(q).map(function(e){return c(e)?y(D,e,{base:!0,vocab:!0},E):e}),{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 37:if("@included"!==X||!x(i,1.1)){e.next=47;break}return e.t0=O,e.next=41,P.expand({activeCtx:i,activeProperty:o,element:q,options:E,expansionMap:N});case 41:if(e.t1=e.sent,(Y=(0,e.t0)(e.t1)).every(function(e){return g(e)})){e.next=45;break}throw new r("Invalid JSON-LD syntax; values of @included must expand to node objects.","jsonld.SyntaxError",{code:"invalid @included value",value:q});case 45:return C(v,"@included",Y,{propertyIsArray:!0}),e.abrupt("continue",185);case 47:if("@graph"!==X||s(q)||a(q)){e.next=49;break}throw new r('Invalid JSON-LD syntax; "@graph" value must not be an object or an array.',"jsonld.SyntaxError",{code:"invalid @graph value",value:q});case 49:if("@value"!==X){e.next=52;break}return V=q,z&&x(i,1.1)?v["@value"]=q:C(v,"@value",q,{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 52:if("@language"!==X){e.next=62;break}if(null!==q){e.next=55;break}return e.abrupt("continue",185);case 55:if(c(q)||E.isFrame){e.next=57;break}throw new r('Invalid JSON-LD syntax; "@language" value must be a string.',"jsonld.SyntaxError",{code:"invalid language-tagged string",value:q});case 57:q=O(q).map(function(e){return c(e)?e.toLowerCase():e}),K=_(q);try{for(K.s();!($=K.n()).done;)Q=$.value,c(Q)&&!Q.match(I)&&console.warn("@language must be valid BCP47: ".concat(Q))}catch(Ce){K.e(Ce)}finally{K.f()}return C(v,"@language",q,{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 62:if("@direction"!==X){e.next=85;break}if(c(q)||E.isFrame){e.next=65;break}throw new r('Invalid JSON-LD syntax; "@direction" value must be a string.',"jsonld.SyntaxError",{code:"invalid base direction",value:q});case 65:q=O(q),Z=_(q),e.prev=67,Z.s();case 69:if((J=Z.n()).done){e.next=75;break}if(ee=J.value,!c(ee)||"ltr"===ee||"rtl"===ee){e.next=73;break}throw new r('Invalid JSON-LD syntax; "@direction" must be "ltr" or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",value:q});case 73:e.next=69;break;case 75:e.next=80;break;case 77:e.prev=77,e.t2=e.catch(67),Z.e(e.t2);case 80:return e.prev=80,Z.f(),e.finish(80);case 83:return C(v,"@direction",q,{propertyIsArray:E.isFrame}),e.abrupt("continue",185);case 85:if("@index"!==X){e.next=90;break}if(c(q)){e.next=88;break}throw new r('Invalid JSON-LD syntax; "@index" value must be a string.',"jsonld.SyntaxError",{code:"invalid @index value",value:q});case 88:return C(v,"@index",q),e.abrupt("continue",185);case 90:if("@reverse"!==X){e.next=118;break}if(s(q)){e.next=93;break}throw new r('Invalid JSON-LD syntax; "@reverse" value must be an object.',"jsonld.SyntaxError",{code:"invalid @reverse value",value:q});case 93:return e.next=95,P.expand({activeCtx:i,activeProperty:"@reverse",element:q,options:E,expansionMap:N});case 95:if(!("@reverse"in(W=e.sent))){e.next=98;break}for(te in W["@reverse"])C(v,te,W["@reverse"][te],{propertyIsArray:!0});case 98:ne=v["@reverse"]||null,e.t3=regeneratorRuntime.keys(W);case 100:if((e.t4=e.t3()).done){e.next=117;break}if("@reverse"!==(ie=e.t4.value)){e.next=104;break}return e.abrupt("continue",100);case 104:null===ne&&(ne=v["@reverse"]={}),C(ne,ie,[],{propertyIsArray:!0}),re=W[ie],oe=0;case 107:if(!(oe1?$.slice().sort():$:[$],Z=_(Q),e.prev=81,Z.s();case 83:if((J=Z.n()).done){e.next=93;break}if(ee=J.value,te=b(E,ee,"@context"),e.t5=l(te),e.t5){e.next=91;break}return e.next=90,k({activeCtx:n,localCtx:te,options:f,propagate:!1});case 90:n=e.sent;case 91:e.next=83;break;case 93:e.next=98;break;case 95:e.prev=95,e.t6=e.catch(81),Z.e(e.t6);case 98:return e.prev=98,Z.f(),e.finish(98);case 101:e.next=75;break;case 103:e.next=108;break;case 105:e.prev=105,e.t7=e.catch(73),X.e(e.t7);case 108:return e.prev=108,X.f(),e.finish(108);case 111:return ne={},e.next=114,R({activeCtx:n,activeProperty:o,expandedActiveProperty:F,element:h,expandedParent:ne,options:f,insideList:v,typeKey:q,typeScopedContext:E,expansionMap:A});case 114:if(V=Object.keys(ne),ie=V.length,!("@value"in ne)){e.next=137;break}if(!("@type"in ne)||!("@language"in ne)&&!("@direction"in ne)){e.next=119;break}throw new r('Invalid JSON-LD syntax; an element containing "@value" may not contain both "@type" and either "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:ne});case 119:if(re=ie-1,"@type"in ne&&(re-=1),"@index"in ne&&(re-=1),"@language"in ne&&(re-=1),"@direction"in ne&&(re-=1),0===re){e.next=122;break}throw new r('Invalid JSON-LD syntax; an element containing "@value" may only have an "@index" property and either "@type" or either or both "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:ne});case 122:if(oe=null===ne["@value"]?[]:O(ne["@value"]),ae=T(ne,"@type"),x(n,1.1)&&ae.includes("@json")&&1===ae.length){e.next=135;break}if(0!==oe.length){e.next=131;break}return e.next=127,A({unmappedValue:ne,activeCtx:n,activeProperty:o,element:h,options:f,insideList:v});case 127:se=e.sent,ne=void 0!==se?se:null,e.next=135;break;case 131:if(oe.every(function(e){return c(e)||u(e)})||!("@language"in ne)){e.next=133;break}throw new r("Invalid JSON-LD syntax; only strings may be language-tagged.","jsonld.SyntaxError",{code:"invalid language-tagged value",element:ne});case 133:if(ae.every(function(e){return S(e)&&!(c(e)&&0===e.indexOf("_:"))||u(e)})){e.next=135;break}throw new r('Invalid JSON-LD syntax; an element containing "@value" and "@type" must have an absolute IRI for the value of "@type".',"jsonld.SyntaxError",{code:"invalid typed value",element:ne});case 135:e.next=152;break;case 137:if(!("@type"in ne)||a(ne["@type"])){e.next=141;break}ne["@type"]=[ne["@type"]],e.next=152;break;case 141:if(!("@set"in ne)&&!("@list"in ne)){e.next=147;break}if(!(ie>1)||2===ie&&"@index"in ne){e.next=144;break}throw new r('Invalid JSON-LD syntax; if an element has the property "@set" or "@list", then it can have at most one other property that is "@index".',"jsonld.SyntaxError",{code:"invalid set or list object",element:ne});case 144:"@set"in ne&&(ne=ne["@set"],V=Object.keys(ne),ie=V.length),e.next=152;break;case 147:if(1!==ie||!("@language"in ne)){e.next=152;break}return e.next=150,A(ne,{unmappedValue:ne,activeCtx:n,activeProperty:o,element:h,options:f,insideList:v});case 150:ue=e.sent,ne=void 0!==ue?ue:null;case 152:if(!s(ne)||f.keepFreeFloatingNodes||v||null!==o&&"@graph"!==F||!(0===ie||"@value"in ne||"@list"in ne||1===ie&&"@id"in ne)){e.next=157;break}return e.next=155,A({unmappedValue:ne,activeCtx:n,activeProperty:o,element:h,options:f,insideList:v});case 155:ce=e.sent,ne=void 0!==ce?ce:null;case 157:return e.abrupt("return",ne);case 158:case"end":return e.stop()}},e,null,[[38,53,56,59],[73,105,108,111],[81,95,98,101]])})),function(e){return M.apply(this,arguments)})},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],22:[function(e,t,n){"use strict";var i=e("./graphTypes").isSubjectReference,r=e("./nodeMap").createMergedNodeMap,o={};t.exports=o,o.flatten=function(e){for(var t=r(e),n=[],o=Object.keys(t).sort(),a=0;a=0;--i){var r=n[i];if(r.graph===t&&r.subject["@id"]===e["@id"])return!0}return!1}function g(e,t,n){var i="@"+n,r=i in e?e[i][0]:t[n];if("embed"===n)if(!0===r)r="@once";else if(!1===r)r="@never";else if("@always"!==r&&"@never"!==r&&"@link"!==r&&"@first"!==r&&"@last"!==r&&"@once"!==r)throw new c("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:e});return r}function m(e){if(!a.isArray(e)||1!==e.length||!a.isObject(e[0]))throw new c("Invalid JSON-LD syntax; a JSON-LD frame must be a single object.","jsonld.SyntaxError",{frame:e});if("@id"in e[0]){var t,n=_(s.asArray(e[0]["@id"]));try{for(n.s();!(t=n.n()).done;){var i=t.value;if(!a.isObject(i)&&!u.isAbsolute(i)||a.isString(i)&&0===i.indexOf("_:"))throw new c("Invalid JSON-LD syntax; invalid @id in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:e})}}catch(h){n.e(h)}finally{n.f()}}if("@type"in e[0]){var r,o=_(s.asArray(e[0]["@type"]));try{for(o.s();!(r=o.n()).done;){var l=r.value;if(!a.isObject(l)&&!u.isAbsolute(l)||a.isString(l)&&0===l.indexOf("_:"))throw new c("Invalid JSON-LD syntax; invalid @type in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:e})}}catch(h){o.e(h)}finally{o.f()}}}function y(e,t,n,o){var u=!0,c=!1;for(var l in n){var h=!1,d=s.getValues(t,l),f=0===s.getValues(n,l).length;if("@id"===l){if(a.isEmptyObject(n["@id"][0]||{})?h=!0:n["@id"].length>=0&&(h=n["@id"].includes(d[0])),!o.requireAll)return h}else if("@type"===l){if(u=!1,f){if(d.length>0)return!1;h=!0}else if(1===n["@type"].length&&a.isEmptyObject(n["@type"][0]))h=d.length>0;else{var p,v=_(n["@type"]);try{var g=function(){var e=p.value;h=!(!a.isObject(e)||!("@default"in e))||h||d.some(function(t){return t===e})};for(v.s();!(p=v.n()).done;)g()}catch(b){v.e(b)}finally{v.f()}}if(!o.requireAll)return h}else{if(i(l))continue;var y=function(){var t=s.getValues(n,l)[0],i=!1;if(t&&(m([t]),i="@default"in t),u=!1,0===d.length&&i)return"continue";if(d.length>0&&f)return{v:!1};if(void 0===t){if(d.length>0)return{v:!1};h=!0}else if(r.isList(t)){var c=t["@list"][0];if(r.isList(d[0])){var p=d[0]["@list"];r.isValue(c)?h=p.some(function(e){return S(c,e)}):(r.isSubject(c)||r.isSubjectReference(c))&&(h=p.some(function(t){return x(e,c,t,o)}))}}else h=r.isValue(t)?d.some(function(e){return S(t,e)}):r.isSubjectReference(t)?d.some(function(n){return x(e,t,n,o)}):!!a.isObject(t)&&d.length>0}();if("continue"===y)continue;if("object"==typeof y)return y.v}if(!h&&o.requireAll)return!1;c=c||h}return u||c}function b(e,t){var n=e.uniqueEmbeds[e.graph],i=n[t],r=i.parent,o=i.property,u={"@id":t};if(a.isArray(r)){for(var c=0;c4&&void 0!==arguments[4]?arguments[4]:null;m(n);var h=e.options,d={embed:g(n=n[0],h,"embed"),explicit:g(n,h,"explicit"),requireAll:g(n,h,"requireAll")};e.link.hasOwnProperty(e.graph)||(e.link[e.graph]={});var w,x=e.link[e.graph],E=function(e,t,n,i){var r,o={},a=_(t);try{for(a.s();!(r=a.n()).done;){var s=r.value,u=e.graphMap[e.graph][s];y(e,u,n,i)&&(o[s]=u)}}catch(c){a.e(c)}finally{a.f()}return o}(e,t,n,d),C=Object.keys(E).sort(),O=_(C);try{var T=function(){var m=w.value,y=E[m];if(null===l?e.uniqueEmbeds=o({},e.graph,{}):e.uniqueEmbeds[e.graph]=e.uniqueEmbeds[e.graph]||{},"@link"===d.embed&&m in x)return k(u,l,x[m]),"continue";var C={"@id":m};if(0===m.indexOf("_:")&&s.addValue(e.bnodeMap,m,C,{propertyIsArray:!0}),x[m]=C,("@first"===d.embed||"@last"===d.embed)&&e.is11)throw new c("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:n});if(e.embedded||!e.uniqueEmbeds[e.graph].hasOwnProperty(m)){if(e.embedded&&("@never"===d.embed||v(y,e.graph,e.subjectStack)))return k(u,l,C),"continue";if(e.embedded&&("@first"==d.embed||"@once"==d.embed)&&e.uniqueEmbeds[e.graph].hasOwnProperty(m))return k(u,l,C),"continue";if("@last"===d.embed&&m in e.uniqueEmbeds[e.graph]&&b(e,m),e.uniqueEmbeds[e.graph][m]={parent:u,property:l},e.subjectStack.push({subject:y,graph:e.graph}),m in e.graphMap){var O=!1,T=null;"@graph"in n?(T=n["@graph"][0],O=!("@merged"===m||"@default"===m),a.isObject(T)||(T={})):(O="@merged"!==e.graph,T={}),O&&f.frame(I(M({},e),{graph:m,embedded:!1}),Object.keys(e.graphMap[m]).sort(),[T],C,"@graph")}"@included"in n&&f.frame(I(M({},e),{embedded:!1}),t,n["@included"],C,"@included");var A,P=_(Object.keys(y).sort());try{for(P.s();!(A=P.n()).done;){var R=A.value;if(i(R)){if(C[R]=s.clone(y[R]),"@type"===R){var D,N=_(y["@type"]);try{for(N.s();!(D=N.n()).done;){var L=D.value;0===L.indexOf("_:")&&s.addValue(e.bnodeMap,L,C,{propertyIsArray:!0})}}catch(re){N.e(re)}finally{N.f()}}}else if(!d.explicit||R in n){var j,F=_(y[R]);try{for(F.s();!(j=F.n()).done;){var B=j.value,V=R in n?n[R]:p(d);if(r.isList(B)){var z=n[R]&&n[R][0]&&n[R][0]["@list"]?n[R][0]["@list"]:p(d),U={"@list":[]};k(C,R,U);var H,G=_(B["@list"]);try{for(G.s();!(H=G.n()).done;){var W=H.value;r.isSubjectReference(W)?f.frame(I(M({},e),{embedded:!0}),[W["@id"]],z,U,"@list"):k(U,"@list",s.clone(W))}}catch(re){G.e(re)}finally{G.f()}}else r.isSubjectReference(B)?f.frame(I(M({},e),{embedded:!0}),[B["@id"]],V,C,R):S(V[0],B)&&k(C,R,s.clone(B))}}catch(re){F.e(re)}finally{F.f()}}}}catch(re){P.e(re)}finally{P.f()}var q,X=_(Object.keys(n).sort());try{for(X.s();!(q=X.n()).done;){var Y=q.value;if("@type"===Y){if(!a.isObject(n[Y][0])||!("@default"in n[Y][0]))continue}else if(i(Y))continue;var K=n[Y][0]||{};if(!g(K,h,"omitDefault")&&!(Y in C)){var $="@null";"@default"in K&&($=s.clone(K["@default"])),a.isArray($)||($=[$]),C[Y]=[{"@preserve":$}]}}}catch(re){X.e(re)}finally{X.f()}var Q,Z=_(Object.keys(n["@reverse"]||{}).sort());try{for(Z.s();!(Q=Z.n()).done;)for(var J=Q.value,ee=n["@reverse"][J],te=0,ne=Object.keys(e.subjects);te0&&(r["@language"]=l,l.match(k)||console.warn("@language must be valid BCP47: ".concat(l))),r["@direction"]=h}else a!==w&&(r["@type"]=a)}return r}n.exports=x,x.fromRDF=(r=h(regeneratorRuntime.mark(function e(t,n){var i,r,o,c,h,g,m,y,b,w,k,x,E,C,O,T,A,P,M,I,R,D,N,L,j,F,B,V,z,U,H,G,W,q,X,Y,K,$,Q,Z,J,ee,te,ne,ie,re,oe,ae,se;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:i=n.useRdfType,r=void 0!==i&&i,o=n.useNativeTypes,c=void 0!==o&&o,h=n.rdfDirection,g=void 0===h?null:h,y={"@default":m={}},b={},w=_(t),e.prev=3,w.s();case 5:if((k=w.n()).done){e.next=19;break}if(x=k.value,(E="DefaultGraph"===x.graph.termType?"@default":x.graph.value)in y||(y[E]={}),"@default"!==E&&!(E in m)&&(m[E]={"@id":E}),C=y[E],O=x.subject.value,T=x.predicate.value,A=x.object,O in C||(C[O]={"@id":O}),P=C[O],(M=A.termType.endsWith("Node"))&&!(A.value in C)&&(C[A.value]={"@id":A.value}),T!==v||r||!M){e.next=15;break}return u.addValue(P,"@type",A.value,{propertyIsArray:!0}),e.abrupt("continue",17);case 15:I=S(A,c,g),u.addValue(P,T,I,{propertyIsArray:!0}),M&&(A.value===p?("usages"in(R=C[A.value])||(R.usages=[]),R.usages.push({node:P,property:T,value:I})):b[A.value]=!(A.value in b)&&{node:P,property:T,value:I});case 17:e.next=5;break;case 19:e.next=24;break;case 21:e.prev=21,e.t0=e.catch(3),w.e(e.t0);case 24:return e.prev=24,w.f(),e.finish(24);case 27:e.t1=regeneratorRuntime.keys(y);case 28:if((e.t2=e.t1()).done){e.next=37;break}if(D=e.t2.value,N=y[D],p in N){e.next=33;break}return e.abrupt("continue",28);case 33:if((L=N[p]).usages){j=_(L.usages);try{for(j.s();!(F=j.n()).done;){for(B=F.value,V=B.node,z=B.property,U=B.value,H=[],G=[],W=Object.keys(V).length;z===f&&s.isObject(b[V["@id"]])&&s.isArray(V[d])&&1===V[d].length&&s.isArray(V[f])&&1===V[f].length&&(3===W||4===W&&s.isArray(V["@type"])&&1===V["@type"].length&&V["@type"][0]===l)&&(H.push(V[d][0]),G.push(V["@id"]),B=b[V["@id"]],V=B.node,z=B.property,U=B.value,W=Object.keys(V).length,a.isBlankNode(V)););for(delete U["@id"],U["@list"]=H.reverse(),q=0,X=G;q1||!("@id"in e))},r.isSubjectReference=function(e){return i.isObject(e)&&1===Object.keys(e).length&&"@id"in e},r.isValue=function(e){return i.isObject(e)&&"@value"in e},r.isList=function(e){return i.isObject(e)&&"@list"in e},r.isGraph=function(e){return i.isObject(e)&&"@graph"in e&&1===Object.keys(e).filter(function(e){return"@id"!==e&&"@index"!==e}).length},r.isSimpleGraph=function(e){return r.isGraph(e)&&!("@id"in e)},r.isBlankNode=function(e){return!!i.isObject(e)&&("@id"in e?0===e["@id"].indexOf("_:"):0===Object.keys(e).length||!("@value"in e||"@set"in e||"@list"in e))}},{"./types":30}],26:[function(e,t,n){var i=e("rdf-canonize"),r=e("./platform"),o=e("./util"),a=e("./ContextResolver"),s=o.IdentifierIssuer,u=e("./JsonLdError"),c=e("lru-cache"),l=e("./NQuads"),d=e("./expand").expand,f=e("./flatten").flatten,p=e("./fromRdf").fromRDF,v=e("./toRdf").toRDF,g=e("./frame"),m=g.frameMergedOrDefault,y=g.cleanupNull,b=e("./types"),w=b.isArray,k=b.isObject,x=b.isString,S=e("./graphTypes").isSubjectReference,E=e("./context"),A=E.expandIri,P=E.getInitialContext,I=E.process,R=E.processingMode,D=e("./compact"),N=D.compact,L=D.compactIri,j=e("./nodeMap"),F=j.createNodeMap,B=j.createMergedNodeMap,V=j.mergeNodeMaps,z=function(t){var n,g={},b=new c({max:100});function E(e,n){var i=n,r=i.documentLoader,o=void 0===r?t.documentLoader:r,a=function(e,t){var n={};for(var i in e)O.call(e,i)&&t.indexOf(i)<0&&(n[i]=e[i]);if(null!=e&&C){var r,o=_(C(e));try{for(o.s();!(r=o.n()).done;)i=r.value,t.indexOf(i)<0&&T.call(e,i)&&(n[i]=e[i])}catch(a){o.e(a)}finally{o.f()}}return n}(i,["documentLoader"]);return Object.assign({},{documentLoader:o},a,e)}return t.compact=(n=h(regeneratorRuntime.mark(function e(n,i,r){var c,l,h,d,f,p,v,g,m,y,_=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(_.length<2)){e.next=2;break}throw new TypeError("Could not compact, too few arguments.");case 2:if(null!==i){e.next=4;break}throw new u("The compaction context must not be null.","jsonld.CompactError",{code:"invalid local context"});case 4:if(null!==n){e.next=6;break}return e.abrupt("return",null);case 6:if((r=E(r,{base:x(n)?n:"",compactArrays:!0,compactToRelative:!0,graph:!1,skipExpansion:!1,link:!1,issuer:new s("_:b"),contextResolver:new a({sharedCache:b})})).link&&(r.skipExpansion=!0),r.compactToRelative||delete r.base,!r.skipExpansion){e.next=12;break}e.t0=n,e.next=15;break;case 12:return e.next=14,t.expand(n,r);case 14:e.t0=e.sent;case 15:return c=e.t0,e.next=18,t.processContext(P(r),i,r);case 18:return l=e.sent,e.next=21,N({activeCtx:l,element:c,options:r,compactionMap:r.compactionMap});case 21:h=e.sent,r.compactArrays&&!r.graph&&w(h)?1===h.length?h=h[0]:0===h.length&&(h={}):r.graph&&k(h)&&(h=[h]),k(i)&&"@context"in i&&(i=i["@context"]),i=o.clone(i),w(i)||(i=[i]),d=i,i=[];for(f=0;f0)&&i.push(d[f]);if(p=i.length>0,1===i.length&&(i=i[0]),w(h))v=L({activeCtx:l,iri:"@graph",relativeTo:{vocab:!0}}),g=h,h={},p&&(h["@context"]=i),h[v]=g;else if(k(h)&&p)for(y in m=h,h={"@context":i},m)h[y]=m[y];return e.abrupt("return",h);case 29:case"end":return e.stop()}},e)})),function(e,t,i){return n.apply(this,arguments)}),t.expand=function(){var e=h(regeneratorRuntime.mark(function e(n,i){var r,s,u,c,l,h,f,p,v,g,m=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(m.length<1)){e.next=2;break}throw new TypeError("Could not expand, too few arguments.");case 2:if(!1===(i=E(i,{keepFreeFloatingNodes:!1,contextResolver:new a({sharedCache:b})})).expansionMap&&(i.expansionMap=void 0),r={},s=[],"expandContext"in i&&(u=o.clone(i.expandContext),r.expandContext=k(u)&&"@context"in u?u:{"@context":u},s.push(r.expandContext)),!x(n)){e.next=12;break}return e.next=8,t.get(n,i);case 8:l=e.sent,c=l.documentUrl,r.input=l.document,l.contextUrl&&(r.remoteContext={"@context":l.contextUrl},s.push(r.remoteContext)),e.next=13;break;case 12:r.input=o.clone(n);case 13:"base"in i||(i.base=c||""),h=P(i),f=0,p=s;case 16:if(!(f=1e21)},i.isEmptyObject=function(e){return i.isObject(e)&&0===Object.keys(e).length},i.isNumber=function(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)},i.isNumeric=function(e){return!isNaN(parseFloat(e))&&isFinite(e)},i.isObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)},i.isString=function(e){return"string"==typeof e||"[object String]"===Object.prototype.toString.call(e)},i.isUndefined=function(e){return void 0===e}},{}],31:[function(e,t,n){"use strict";var i=e("./types"),r={};t.exports=r,r.parsers={simple:{keys:["href","scheme","authority","path","query","fragment"],regex:/^(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/},full:{keys:["href","protocol","scheme","authority","auth","user","password","hostname","port","path","directory","file","query","fragment"],regex:/^(([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?(?:(((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/}},r.parse=function(e,t){for(var n={},i=r.parsers[t||"full"],o=i.regex.exec(e),a=i.keys.length;a--;)n[i.keys[a]]=void 0===o[a]?null:o[a];return("https"===n.scheme&&"443"===n.port||"http"===n.scheme&&"80"===n.port)&&(n.href=n.href.replace(":"+n.port,""),n.authority=n.authority.replace(":"+n.port,""),n.port=null),n.normalizedPath=r.removeDotSegments(n.path),n},r.prependBase=function(e,t){if(null===e||r.isAbsolute(t))return t;(!e||i.isString(e))&&(e=r.parse(e||""));var n=r.parse(t),o={protocol:e.protocol||""};if(null!==n.authority)o.authority=n.authority,o.path=n.path,o.query=n.query;else if(o.authority=e.authority,""===n.path)o.path=e.path,o.query=null!==n.query?n.query:e.query;else{if(0===n.path.indexOf("/"))o.path=n.path;else{var a=e.path;((a=a.substr(0,a.lastIndexOf("/")+1)).length>0||e.authority)&&"/"!==a.substr(-1)&&(a+="/"),a+=n.path,o.path=a}o.query=n.query}""!==n.path&&(o.path=r.removeDotSegments(o.path));var s=o.protocol;return null!==o.authority&&(s+="//"+o.authority),s+=o.path,null!==o.query&&(s+="?"+o.query),null!==n.fragment&&(s+="#"+n.fragment),""===s&&(s="./"),s},r.removeBase=function(e,t){if(null===e)return t;(!e||i.isString(e))&&(e=r.parse(e||""));var n="";if(""!==e.href?n+=(e.protocol||"")+"//"+(e.authority||""):t.indexOf("//")&&(n+="//"),0!==t.indexOf(n))return t;for(var o=r.parse(t.substr(n.length)),a=e.normalizedPath.split("/"),s=o.normalizedPath.split("/"),u=o.fragment||o.query?0:1;a.length>0&&s.length>u&&a[0]===s[0];)a.shift(),s.shift();var c="";if(a.length>0){a.pop();for(var l=0;l0;){var i=t.shift(),r=0===t.length;"."!==i?".."!==i?n.push(i):(n.pop(),r&&n.push("")):r&&n.push("")}return"/"===e[0]&&n.length>0&&""!==n[0]&&n.unshift(""),1===n.length&&""===n[0]?"/":n.join("/")};var o=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^\s]*$/;r.isAbsolute=function(e){return i.isString(e)&&o.test(e)},r.isRelative=function(e){return i.isString(e)}},{"./types":30}],32:[function(e,n,i){"use strict";var r=e("./graphTypes"),o=e("./types"),a=e("rdf-canonize").IdentifierIssuer,s=e("./JsonLdError"),u=/(?:<[^>]*?>|"[^"]*?"|[^,])+/g,c=/\s*<([^>]*?)>\s*(?:;\s*(.*))?/,l=/(.*?)=(?:(?:"([^"]*?)")|([^"]*?))\s*(?:(?:;\s*)|$)/g,h="application/ld+json, application/json",d={};function f(e,t){if(o.isArray(t))for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};if(Object.keys(e).some(function(e){return"accept"===e.toLowerCase()}))throw new RangeError('Accept header may not be specified; only "'+h+'" is supported.');return Object.assign({Accept:h},e)},d.parseLinkHeader=function(e){for(var t={},n=e.match(u),i=0;i0}return!1},d.hasValue=function(e,t,n){if(d.hasProperty(e,t)){var i=e[t],a=r.isList(i);if(o.isArray(i)||a){a&&(i=i["@list"]);for(var s=0;st.maxAge:e[u]&&n>e[u]},y=function(e){if(e[o]>e[r])for(var t=e[h].tail;e[o]>e[r]&&null!==t;){var n=t.prev;_(e,t),t=n}},_=function(e,t){if(t){var n=t.value;e[c]&&e[c](n.key,n.value),e[o]-=n.length,e[d].delete(n.key),e[h].removeNode(t)}},w=function e(t,n,i,r,o){m(this,e),this.key=t,this.value=n,this.length=i,this.now=r,this.maxAge=o||0},k=function(e,t,n,i){var r=n.value;g(e,r)&&(_(e,n),e[s]||(r=void 0)),r&&t.call(i,r.value,r.key,e)};t.exports=function(){function e(t){if(m(this,e),"number"==typeof t&&(t={max:t}),t||(t={}),t.max&&("number"!=typeof t.max||t.max<0))throw new TypeError("max must be a non-negative number");this[r]=t.max||1/0;var n=t.length||p;if(this[a]="function"!=typeof n?p:n,this[s]=t.stale||!1,t.maxAge&&"number"!=typeof t.maxAge)throw new TypeError("maxAge must be a number");this[u]=t.maxAge||0,this[c]=t.dispose,this[l]=t.noDisposeOnSet||!1,this[f]=t.updateAgeOnGet||!1,this.reset()}return b(e,[{key:"max",get:function(){return this[r]},set:function(e){if("number"!=typeof e||e<0)throw new TypeError("max must be a non-negative number");this[r]=e||1/0,y(this)}},{key:"allowStale",get:function(){return this[s]},set:function(e){this[s]=!!e}},{key:"maxAge",get:function(){return this[u]},set:function(e){if("number"!=typeof e)throw new TypeError("maxAge must be a non-negative number");this[u]=e,y(this)}},{key:"lengthCalculator",get:function(){return this[a]},set:function(e){var t=this;"function"!=typeof e&&(e=p),e!==this[a]&&(this[a]=e,this[o]=0,this[h].forEach(function(e){e.length=t[a](e.value,e.key),t[o]+=e.length})),y(this)}},{key:"length",get:function(){return this[o]}},{key:"itemCount",get:function(){return this[h].length}},{key:"rforEach",value:function(e,t){t=t||this;for(var n=this[h].tail;null!==n;){var i=n.prev;k(this,e,n,t),n=i}}},{key:"forEach",value:function(e,t){t=t||this;for(var n=this[h].head;null!==n;){var i=n.next;k(this,e,n,t),n=i}}},{key:"keys",value:function(){return this[h].toArray().map(function(e){return e.key})}},{key:"values",value:function(){return this[h].toArray().map(function(e){return e.value})}},{key:"reset",value:function(){var e=this;this[c]&&this[h]&&this[h].length&&this[h].forEach(function(t){return e[c](t.key,t.value)}),this[d]=new Map,this[h]=new i,this[o]=0}},{key:"dump",value:function(){var e=this;return this[h].map(function(t){return!g(e,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}}).toArray().filter(function(e){return e})}},{key:"dumpLru",value:function(){return this[h]}},{key:"set",value:function(e,t,n){if((n=n||this[u])&&"number"!=typeof n)throw new TypeError("maxAge must be a number");var i=n?Date.now():0,s=this[a](t,e);if(this[d].has(e)){if(s>this[r])return _(this,this[d].get(e)),!1;var f=this[d].get(e).value;return this[c]&&(this[l]||this[c](e,f.value)),f.now=i,f.maxAge=n,f.value=t,this[o]+=s-f.length,f.length=s,this.get(e),y(this),!0}var p=new w(e,t,s,i,n);return p.length>this[r]?(this[c]&&this[c](e,t),!1):(this[o]+=p.length,this[h].unshift(p),this[d].set(e,this[h].head),y(this),!0)}},{key:"has",value:function(e){if(!this[d].has(e))return!1;var t=this[d].get(e).value;return!g(this,t)}},{key:"get",value:function(e){return v(this,e,!0)}},{key:"peek",value:function(e){return v(this,e,!1)}},{key:"pop",value:function(){var e=this[h].tail;return e?(_(this,e),e.value):null}},{key:"del",value:function(e){_(this,this[d].get(e))}},{key:"load",value:function(e){this.reset();for(var t=Date.now(),n=e.length-1;n>=0;n--){var i=e[n],r=i.e||0;if(0===r)this.set(i.k,i.v);else{var o=r-t;o>0&&this.set(i.k,i.v,o)}}}},{key:"prune",value:function(){var e=this;this[d].forEach(function(t,n){return v(e,n,!1)})}}]),e}()},{yallist:92}],34:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#",o="http://www.w3.org/2000/10/swap/";n.default={xsd:{decimal:"".concat(r,"decimal"),boolean:"".concat(r,"boolean"),double:"".concat(r,"double"),integer:"".concat(r,"integer"),string:"".concat(r,"string")},rdf:{type:"".concat(i,"type"),nil:"".concat(i,"nil"),first:"".concat(i,"first"),rest:"".concat(i,"rest"),langString:"".concat(i,"langString")},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:"".concat(o,"reify#forSome"),forAll:"".concat(o,"reify#forAll")},log:{implies:"".concat(o,"log#implies")}}},{}],35:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.termFromId=function e(t,n){if(n=n||y,!t)return n.defaultGraph();switch(t[0]){case"?":return n.variable(t.substr(1));case"_":return n.blankNode(t.substr(2));case'"':if(n===y)return new k(t);if('"'===t[t.length-1])return n.literal(t.substr(1,t.length-2));var i=t.lastIndexOf('"',t.length-1);return n.literal(t.substr(1,i-1),"@"===t[i+1]?t.substr(i+2):n.namedNode(t.substr(i+3)));case"<":var r=g.exec(t);return n.quad(e(T(r[1]),n),e(T(r[2]),n),e(T(r[3]),n),r[4]&&e(T(r[4]),n));default:return n.namedNode(t)}},n.termToId=function e(t){if("string"==typeof t)return t;if(t instanceof _&&"Quad"!==t.termType)return t.id;if(!t)return r.id;switch(t.termType){case"NamedNode":return t.value;case"BlankNode":return"_:".concat(t.value);case"Variable":return"?".concat(t.value);case"DefaultGraph":return"";case"Literal":return'"'.concat(t.value,'"').concat(t.language?"@".concat(t.language):t.datatype&&t.datatype.value!==f.string?"^^".concat(t.datatype.value):"");case"Quad":return"<<".concat(O(e(t.subject))," ").concat(O(e(t.predicate))," ").concat(O(e(t.object))).concat((0,l.isDefaultGraph)(t.graph)?"":" ".concat(e(t.graph)),">>");default:throw new Error("Unexpected termType: ".concat(t.termType))}},n.escapeQuotes=O,n.unescapeQuotes=T,n.Triple=n.Quad=n.DefaultGraph=n.Variable=n.BlankNode=n.Literal=n.NamedNode=n.Term=n.default=void 0;var i,r,o=(i=e("./IRIs"))&&i.__esModule?i:{default:i},l=e("./N3Util"),h=o.default,d=h.rdf,f=h.xsd,p=0,v=/^"(.*".*)(?="[^"]*$)/,g=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,y={namedNode:function(e){return new w(e)},blankNode:function(e){return new x(e||"n3-"+p++)},variable:function(e){return new S(e)},literal:function(e,t){if("string"==typeof t)return new k('"'.concat(e,'"@').concat(t.toLowerCase()));var n=t?t.value:"";return""===n&&("boolean"==typeof e?n=f.boolean:"number"==typeof e&&(Number.isFinite(e)?n=Number.isInteger(e)?f.integer:f.double:(n=f.double,Number.isNaN(e)||(e=e>0?"INF":"-INF")))),new k(""===n||n===f.string?'"'.concat(e,'"'):'"'.concat(e,'"^^').concat(n))},defaultGraph:function(){return r},quad:A,triple:A};n.default=y;var _=function(){function e(t){m(this,e),this.id=t}return b(e,[{key:"value",get:function(){return this.id}},{key:"equals",value:function(t){return t instanceof e?this.id===t.id:!!t&&this.termType===t.termType&&this.value===t.value}},{key:"toJSON",value:function(){return{termType:this.termType,value:this.value}}}]),e}();n.Term=_;var w=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"termType",get:function(){return"NamedNode"}}]),n}(_);n.NamedNode=w;var k=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"termType",get:function(){return"Literal"}},{key:"value",get:function(){return this.id.substring(1,this.id.lastIndexOf('"'))}},{key:"language",get:function(){var e=this.id,t=e.lastIndexOf('"')+1;return t\\"\{\}\|\^\`]/,l={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},h=/$0^/;n.default=function(){function e(t){if(m(this,e),this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,this._lineMode=!!(t=t||{}).lineMode)for(var n in this._n3Mode=!1,this)!(n in l)&&this[n]instanceof RegExp&&(this[n]=h);else this._n3Mode=!1!==t.n3;this._comments=!!t.comments,this._literalClosingPos=0}return b(e,[{key:"_tokenizeToEnd",value:function(e,t){for(var n,i=this._input,r=this._comments;;){for(var o=void 0,s=void 0;o=this._newline.exec(i);)r&&(s=this._comment.exec(o[0]))&&e(null,{line:this._line,type:"comment",value:s[1],prefix:""}),i=i.substr(o[0].length,i.length),this._line++;if(!o&&(o=this._whitespace.exec(i))&&(i=i.substr(o[0].length,i.length)),this._endOfFile.test(i))return t&&(r&&(s=this._comment.exec(i))&&e(null,{line:this._line,type:"comment",value:s[1],prefix:""}),e(i=null,{line:this._line,type:"eof",value:"",prefix:""})),this._input=i;var u=this._line,l=i[0],h="",d="",f="",p=null,v=0,g=!1;switch(l){case"^":if(i.length<3)break;if("^"!==i[1]){this._n3Mode&&(v=1,h="^");break}if(this._previousMarker="^^","<"!==(i=i.substr(2))[0]){g=!0;break}case"<":if(p=this._unescapedIri.exec(i))h="IRI",d=p[1];else if(p=this._iri.exec(i)){if(null===(d=this._unescape(p[1]))||c.test(d))return b(this);h="IRI"}else i.length>1&&"<"===i[1]?(h="<<",v=2):this._n3Mode&&i.length>1&&"="===i[1]&&(h="inverse",v=2,d=">");break;case">":i.length>1&&">"===i[1]&&(h=">>",v=2);break;case"_":((p=this._blank.exec(i))||t&&(p=this._blank.exec("".concat(i," "))))&&(h="blank",f="_",d=p[1]);break;case'"':if(p=this._simpleQuotedString.exec(i))d=p[1];else if(d=(n=this._parseLiteral(i)).value,v=n.matchLength,null===d)return b(this);(null!==p||0!==v)&&(h="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){var m;if(p=this._simpleApostropheString.exec(i))d=p[1];else if(d=(m=this._parseLiteral(i)).value,v=m.matchLength,null===d)return b(this);(null!==p||0!==v)&&(h="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(p=this._variable.exec(i))&&(h="var",d=p[0]);break;case"@":"literal"===this._previousMarker&&(p=this._langcode.exec(i))?(h="langcode",d=p[1]):(p=this._keyword.exec(i))&&(h=p[0]);break;case".":if(1===i.length?t:i[1]<"0"||i[1]>"9"){h=".",v=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(p=this._number.exec(i)||t&&(p=this._number.exec("".concat(i," "))))&&(h="literal",d=p[0],f="string"==typeof p[1]?a.double:"string"==typeof p[2]?a.decimal:a.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(p=this._sparqlKeyword.exec(i))?h=p[0].toUpperCase():g=!0;break;case"f":case"t":(p=this._boolean.exec(i))?(h="literal",d=p[0],f=a.boolean):g=!0;break;case"a":(p=this._shortPredicates.exec(i))?(h="abbreviation",d="a"):g=!0;break;case"=":this._n3Mode&&i.length>1&&(h="abbreviation",">"!==i[1]?(v=1,d="="):(v=2,d=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"{":case"}":this._lineMode||(v=1,h=l);break;default:g=!0}if(g&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(p=this._prefix.exec(i))?((p=this._prefixed.exec(i))||t&&(p=this._prefixed.exec("".concat(i," "))))&&(h="prefixed",f=p[1]||"",d=this._unescape(p[2])):(h="prefix",d=p[1]||"")),"^^"===this._previousMarker)switch(h){case"prefixed":h="type";break;case"IRI":h="typeIRI";break;default:h=""}if(!h)return t||!/^'''|^"""/.test(i)&&/\n|\r/.test(i)?b(this):this._input=i;var y={line:u,type:h,value:d,prefix:f};e(null,y),this.previousToken=y,this._previousMarker=h,i=i.substr(v||p[0].length,i.length)}function b(t){e(t._syntaxError(/^\S*/.exec(i)[0]))}}},{key:"_unescape",value:function(e){var t=!1,n=e.replace(s,function(e,n,i,r){if("string"==typeof n)return String.fromCharCode(Number.parseInt(n,16));if("string"==typeof i){var o=Number.parseInt(i,16);return o<=65535?String.fromCharCode(Number.parseInt(i,16)):String.fromCharCode(55296+((o-=65536)>>10),56320+(1023&o))}return r in u?u[r]:(t=!0,"")});return t?null:n}},{key:"_parseLiteral",value:function(e){if(e.length>=3){for(var t=e.match(/^(?:"""|"|'''|'|)/)[0],n=t.length,i=Math.max(this._literalClosingPos,n);(i=e.indexOf(t,i))>0;){for(var r=0;"\\"===e[i-r-1];)r++;if(r%2==0){var o=e.substring(n,i),a=o.split(/\r\n|\r|\n/).length-1,s=i+n;if(1===n&&0!==a||3===n&&this._lineMode)break;return this._line+=a,{value:this._unescape(o),matchLength:s}}i++}this._literalClosingPos=e.length-n+1}return{value:"",matchLength:0}}},{key:"_syntaxError",value:function(e){this._input=null;var t=new Error('Unexpected "'.concat(e,'" on line ').concat(this._line,"."));return t.context={token:void 0,line:this._line,previousToken:this.previousToken},t}},{key:"_readStartingBom",value:function(e){return e.startsWith("\ufeff")?e.substr(1):e}},{key:"tokenize",value:function(e,n){var i=this;if(this._line=1,"string"==typeof e){if(this._input=this._readStartingBom(e),"function"!=typeof n){var o,a=[];if(this._tokenizeToEnd(function(e,t){return e?o=e:a.push(t)},!0),o)throw o;return a}(0,r.default)(function(){return i._tokenizeToEnd(n,!0)})}else this._pendingBuffer=null,"function"==typeof e.setEncoding&&e.setEncoding("utf8"),e.on("data",function(e){null!==i._input&&0!==e.length&&(i._pendingBuffer&&(e=t.concat([i._pendingBuffer,e]),i._pendingBuffer=null),128&e[e.length-1]?i._pendingBuffer=e:(void 0===i._input?i._input=i._readStartingBom("string"==typeof e?e:e.toString()):i._input+=e,i._tokenizeToEnd(n,!1)))}),e.on("end",function(){"string"==typeof i._input&&i._tokenizeToEnd(n,!0)}),e.on("error",n)}}]),e}()}).call(this)}).call(this,e("buffer").Buffer)},{"./IRIs":34,buffer:6,"queue-microtask":45}],37:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=a(e("./N3Lexer")),r=a(e("./N3DataFactory")),o=a(e("./IRIs"));function a(e){return e&&e.__esModule?e:{default:e}}var s=0,u=function(){function e(t){m(this,e),this._contextStack=[],this._graph=null,this._setBase((t=t||{}).baseIRI),t.factory&&l(this,t.factory);var n="string"==typeof t.format?t.format.match(/\w*$/)[0].toLowerCase():"",r=/turtle/.test(n),o=/trig/.test(n),a=/triple/.test(n),s=/quad/.test(n),u=this._n3Mode=/n3/.test(n),c=a||s;(this._supportsNamedGraphs=!(r||u))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(r||o||a||u),this._supportsRDFStar=""===n||/star|\*$/.test(n),c&&(this._resolveRelativeIRI=function(e){return null}),this._blankNodePrefix="string"!=typeof t.blankNodePrefix?"":t.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=t.lexer||new i.default({lineMode:c,n3:u}),this._explicitQuantifiers=!!t.explicitQuantifiers}return b(e,[{key:"_setBase",value:function(e){if(e){var t=e.indexOf("#");t>=0&&(e=e.substr(0,t)),this._base=e,this._basePath=e.indexOf("/")<0?e:e.replace(/[^\/?]*(?:\?.*)?$/,""),e=e.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=e[0],this._baseScheme=e[1]}else this._base="",this._basePath=""}},{key:"_saveContext",value:function(e,t,n,i,r){var o=this._n3Mode;this._contextStack.push({subject:n,predicate:i,object:r,graph:t,type:e,inverse:!!o&&this._inversePredicate,blankPrefix:o?this._prefixes._:"",quantified:o?this._quantified:null}),o&&(this._inversePredicate=!1,this._prefixes._=this._graph?"".concat(this._graph.id.substr(2),"."):".",this._quantified=Object.create(this._quantified))}},{key:"_restoreContext",value:function(){var e=this._contextStack.pop(),t=this._n3Mode;this._subject=e.subject,this._predicate=e.predicate,this._object=e.object,this._graph=e.graph,t&&(this._inversePredicate=e.inverse,this._prefixes._=e.blankPrefix,this._quantified=e.quantified)}},{key:"_readInTopContext",value:function(e){switch(e.type){case"eof":return null!==this._graph?this._error("Unclosed graph",e):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(e)}}},{key:"_readEntity",value:function(e,t){var n;switch(e.type){case"IRI":case"typeIRI":var i=this._resolveIRI(e.value);if(null===i)return this._error("Invalid IRI",e);n=this._namedNode(i);break;case"type":case"prefixed":var r=this._prefixes[e.prefix];if(void 0===r)return this._error('Undefined prefix "'.concat(e.prefix,':"'),e);n=this._namedNode(r+e.value);break;case"blank":n=this._blankNode(this._prefixes[e.prefix]+e.value);break;case"var":n=this._variable(e.value.substr(1));break;default:return this._error("Expected entity but got ".concat(e.type),e)}return!t&&this._n3Mode&&n.id in this._quantified&&(n=this._quantified[n.id]),n}},{key:"_readSubject",value:function(e){switch(this._predicate=null,e.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",e);case"}":return this._readPunctuation(e);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',e);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',e);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",e);if(0===e.prefix.length)return this._literalValue=e.value,this._completeSubjectLiteral;this._subject=this._literal(e.value,this._namedNode(e.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._subject=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}},{key:"_readPredicate",value:function(e){var t=e.type;switch(t){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[e.value];break;case".":case"]":case"}":return null===this._predicate?this._error("Unexpected ".concat(t),e):(this._subject=null,"]"===t?this._readBlankNodeTail(e):this._readPunctuation(e));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",e);case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",e);default:if(void 0===(this._predicate=this._readEntity(e)))return}return this._readObject}},{key:"_readObject",value:function(e){switch(e.type){case"literal":if(0===e.prefix.length)return this._literalValue=e.value,this._readDataTypeOrLang;this._object=this._literal(e.value,this._namedNode(e.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",e);default:if(void 0===(this._object=this._readEntity(e)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}},{key:"_readPredicateOrNamedGraph",value:function(e){return"{"===e.type?this._readGraph(e):this._readPredicate(e)}},{key:"_readGraph",value:function(e){return"{"!==e.type?this._error("Expected graph but got ".concat(e.type),e):(this._graph=this._subject,this._subject=null,this._readSubject)}},{key:"_readBlankNodeHead",value:function(e){return"]"===e.type?(this._subject=null,this._readBlankNodeTail(e)):(this._predicate=null,this._readPredicate(e))}},{key:"_readBlankNodeTail",value:function(e){if("]"!==e.type)return this._readBlankNodePunctuation(e);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);var t=null===this._predicate;return this._restoreContext(),null===this._object?t?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank:this._getContextEndReader()}},{key:"_readPredicateAfterBlank",value:function(e){switch(e.type){case".":case"}":return this._subject=null,this._readPunctuation(e);default:return this._readPredicate(e)}}},{key:"_readListItem",value:function(e){var t=null,n=null,i=this._readListItem,r=this._subject,o=this._contextStack,a=o[o.length-1];switch(e.type){case"[":this._saveContext("blank",this._graph,n=this._blankNode(),this.RDF_FIRST,this._subject=t=this._blankNode()),i=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,n=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext(),0!==o.length&&"list"===o[o.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(i=this._readPredicate,this._subject===this.RDF_NIL)return i}else if(i=this._getContextEndReader(),this._object===this.RDF_NIL)return i;n=this.RDF_NIL;break;case"literal":0===e.prefix.length?(this._literalValue=e.value,i=this._readListItemDataTypeOrLang):(t=this._literal(e.value,this._namedNode(e.prefix)),i=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",e);default:if(void 0===(t=this._readEntity(e)))return}if(null===n&&(this._subject=n=this._blankNode()),null===r?null===a.predicate?a.subject=n:a.object=n:this._emit(r,this.RDF_REST,n,this._graph),null!==t){if(this._n3Mode&&("IRI"===e.type||"prefixed"===e.type))return this._saveContext("item",this._graph,n,this.RDF_FIRST,t),this._subject=t,this._predicate=null,this._getPathReader(this._readListItem);this._emit(n,this.RDF_FIRST,t,this._graph)}return i}},{key:"_readDataTypeOrLang",value:function(e){return this._completeObjectLiteral(e,!1)}},{key:"_readListItemDataTypeOrLang",value:function(e){return this._completeObjectLiteral(e,!0)}},{key:"_completeLiteral",value:function(e){var t=this._literal(this._literalValue);switch(e.type){case"type":case"typeIRI":var n=this._readEntity(e);if(void 0===n)return;t=this._literal(this._literalValue,n),e=null;break;case"langcode":t=this._literal(this._literalValue,e.value),e=null}return{token:e,literal:t}}},{key:"_completeSubjectLiteral",value:function(e){return this._subject=this._completeLiteral(e).literal,this._readPredicateOrNamedGraph}},{key:"_completeObjectLiteral",value:function(e,t){var n=this._completeLiteral(e);if(n)return this._object=n.literal,t&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===n.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(n.token))}},{key:"_readFormulaTail",value:function(e){return"}"!==e.type?this._readPunctuation(e):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext(),null===this._object?this._readPredicate:this._getContextEndReader())}},{key:"_readPunctuation",value:function(e){var t,n=this._graph,i=this._subject,r=this._inversePredicate;switch(e.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",e);if(this._n3Mode)return this._readFormulaTail(e);this._graph=null;case".":this._subject=null,t=this._contextStack.length?this._readSubject:this._readInTopContext,r&&(this._inversePredicate=!1);break;case";":t=this._readPredicate;break;case",":t=this._readObject;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(n=this._readEntity(e))){t=this._readQuadPunctuation;break}return this._error('Expected punctuation to follow "'.concat(this._object.id,'"'),e)}if(null!==i){var o=this._predicate,a=this._object;r?this._emit(a,o,i,n):this._emit(i,o,a,n)}return t}},{key:"_readBlankNodePunctuation",value:function(e){var t;switch(e.type){case";":t=this._readPredicate;break;case",":t=this._readObject;break;default:return this._error('Expected punctuation to follow "'.concat(this._object.id,'"'),e)}return this._emit(this._subject,this._predicate,this._object,this._graph),t}},{key:"_readQuadPunctuation",value:function(e){return"."!==e.type?this._error("Expected dot to follow quad",e):this._readInTopContext}},{key:"_readPrefix",value:function(e){return"prefix"!==e.type?this._error("Expected prefix to follow @prefix",e):(this._prefix=e.value,this._readPrefixIRI)}},{key:"_readPrefixIRI",value:function(e){if("IRI"!==e.type)return this._error('Expected IRI to follow prefix "'.concat(this._prefix,':"'),e);var t=this._readEntity(e);return this._prefixes[this._prefix]=t.value,this._prefixCallback(this._prefix,t),this._readDeclarationPunctuation}},{key:"_readBaseIRI",value:function(e){var t="IRI"===e.type&&this._resolveIRI(e.value);return t?(this._setBase(t),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",e)}},{key:"_readNamedGraphLabel",value:function(e){switch(e.type){case"IRI":case"blank":case"prefixed":return this._readSubject(e),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",e)}}},{key:"_readNamedGraphBlankLabel",value:function(e){return"]"!==e.type?this._error("Invalid graph label",e):(this._subject=this._blankNode(),this._readGraph)}},{key:"_readDeclarationPunctuation",value:function(e){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(e)):"."!==e.type?this._error("Expected declaration to end with a dot",e):this._readInTopContext}},{key:"_readQuantifierList",value:function(e){var t;switch(e.type){case"IRI":case"prefixed":if(void 0!==(t=this._readEntity(e,!0)))break;default:return this._error("Unexpected ".concat(e.type),e)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,t,this.QUANTIFIERS_GRAPH)):this._quantified[t.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}},{key:"_readQuantifierPunctuation",value:function(e){return","===e.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(e))}},{key:"_getPathReader",value:function(e){return this._afterPath=e,this._readPath}},{key:"_readPath",value:function(e){switch(e.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:var t=this._contextStack,n=t.length&&t[t.length-1];if(n&&"item"===n.type){var i=this._subject;this._restoreContext(),this._emit(this._subject,this.RDF_FIRST,i,this._graph)}return this._afterPath(e)}}},{key:"_readForwardPath",value:function(e){var t,n,i=this._blankNode();if(void 0!==(n=this._readEntity(e)))return null===this._predicate?(t=this._subject,this._subject=i):(t=this._object,this._object=i),this._emit(t,n,i,this._graph),this._readPath}},{key:"_readBackwardPath",value:function(e){var t,n,i=this._blankNode();if(void 0!==(t=this._readEntity(e)))return null===this._predicate?(n=this._subject,this._subject=i):(n=this._object,this._object=i),this._emit(i,t,n,this._graph),this._readPath}},{key:"_readRDFStarTailOrGraph",value:function(e){return">>"!==e.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(e))?this._readRDFStarTail:this._error('Expected >> to follow "'.concat(this._object.id,'"'),e):this._readRDFStarTail(e)}},{key:"_readRDFStarTail",value:function(e){if(">>"!==e.type)return this._error("Expected >> but got ".concat(e.type),e);var t=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext(),null===this._subject?(this._subject=t,this._readPredicate):(this._object=t,this._getContextEndReader())}},{key:"_getContextEndReader",value:function(){var e=this._contextStack;if(!e.length)return this._readPunctuation;switch(e[e.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}},{key:"_emit",value:function(e,t,n,i){this._callback(null,this._quad(e,t,n,i||this.DEFAULTGRAPH))}},{key:"_error",value:function(e,t){var n=new Error("".concat(e," on line ").concat(t.line,"."));n.context={token:t,line:t.line,previousToken:this._lexer.previousToken},this._callback(n),this._callback=c}},{key:"_resolveIRI",value:function(e){return/^[a-z][a-z0-9+.-]*:/i.test(e)?e:this._resolveRelativeIRI(e)}},{key:"_resolveRelativeIRI",value:function(e){if(!e.length)return this._base;switch(e[0]){case"#":return this._base+e;case"?":return this._base.replace(/(?:\?.*)?$/,e);case"/":return("/"===e[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(e);default:return/^[^/:]*:/.test(e)?null:this._removeDotSegments(this._basePath+e)}}},{key:"_removeDotSegments",value:function(e){if(!/(^|\/)\.\.?($|[/#?])/.test(e))return e;for(var t=e.length,n="",i=-1,r=-1,o=0,a="/";i=r&&(n=n.substr(0,o)),"/"!==a)return"".concat(n,"/").concat(e.substr(i+1));o=i+1}}}a=e[++i]}return n+e.substring(o)}},{key:"parse",value:function(e,t,n){var i=this;if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):"b".concat(s++,"_"),this._prefixCallback=n||c,this._inversePredicate=!1,this._quantified=Object.create(null),!t){var r,o=[];if(this._callback=function(e,t){e?r=e:t&&o.push(t)},this._lexer.tokenize(e).every(function(e){return i._readCallback=i._readCallback(e)}),r)throw r;return o}this._callback=t,this._lexer.tokenize(e,function(e,t){null!==e?(i._callback(e),i._callback=c):i._readCallback&&(i._readCallback=i._readCallback(t))})}}],[{key:"_resetBlankNodePrefix",value:function(){s=0}}]),e}();function c(){}function l(e,t){var n=t.namedNode;e._namedNode=n,e._blankNode=t.blankNode,e._literal=t.literal,e._variable=t.variable,e._quad=t.quad,e.DEFAULTGRAPH=t.defaultGraph(),e.RDF_FIRST=n(o.default.rdf.first),e.RDF_REST=n(o.default.rdf.rest),e.RDF_NIL=n(o.default.rdf.nil),e.N3_FORALL=n(o.default.r.forAll),e.N3_FORSOME=n(o.default.r.forSome),e.ABBREVIATIONS={a:n(o.default.rdf.type),"=":n(o.default.owl.sameAs),">":n(o.default.log.implies)},e.QUANTIFIERS_GRAPH=n("urn:n3:quantifiers")}n.default=u,l(u.prototype,r.default)},{"./IRIs":34,"./N3DataFactory":35,"./N3Lexer":36}],38:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=l(t);if(n&&n.has(e))return n.get(e);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in e)if("default"!==o&&Object.prototype.hasOwnProperty.call(e,o)){var a=r?Object.getOwnPropertyDescriptor(e,o):null;a&&(a.get||a.set)?Object.defineProperty(i,o,a):i[o]=e[o]}return i.default=e,n&&n.set(e,i),i}(e("./N3DataFactory")),o=e("readable-stream"),u=(i=e("./IRIs"))&&i.__esModule?i:{default:i};function l(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(l=function(e){return e?n:t})(e)}var h=function(e){function t(e,n){m(this,t),this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,!n&&e&&!e[0]&&(n=e,e=null),this._factory=(n=n||{}).factory||r.default,e&&this.addQuads(e)}return b(t,[{key:"size",get:function(){var e=this._size;if(null!==e)return e;e=0;var t,n,i=this._graphs;for(var r in i)for(var o in t=i[r].subjects)for(var a in n=t[o])e+=Object.keys(n[a]).length;return this._size=e}},{key:"_addToIndex",value:function(e,t,n,i){var r=e[t]||(e[t]={}),o=r[n]||(r[n]={}),a=i in o;return a||(o[i]=null),!a}},{key:"_removeFromIndex",value:function(e,t,n,i){var r=e[t],o=r[n];for(var a in delete o[i],o)return;for(var s in delete r[n],r)return;delete e[t]}},{key:"_findInIndex",value:function(e,t,n,i,o,a,s,u,c,l){var h,d,f,p=!t+!n+!i>1?Object.keys(this._ids):this._entities;for(var v in t&&((h=e,e={})[t]=h[t]),e){var g=p[v];if(d=e[v])for(var m in n&&((h=d,d={})[n]=h[n]),d){var y=p[m];if(f=d[m])for(var b=(i?i in f?[i]:[]:Object.keys(f)),_=0;_0&&void 0!==arguments[0]?arguments[0]:{},n=t.remove,i=void 0!==n&&n,r=t.ignoreErrors,o=void 0!==r&&r,a={},s=o?function(){return!0}:function(e,t){throw new Error("".concat(e.value," ").concat(t))},c=this.getQuads(null,u.default.rdf.rest,u.default.rdf.nil,null),l=i?v(c):[];return c.forEach(function(t){for(var n,r,o=[],c=!1,h=t.graph,d=t.subject;d&&!c;){for(var f=e.getQuads(null,null,d,null),p=e.getQuads(d,null,null,null),v=void 0,g=null,m=null,y=null,b=0;b")}},{key:"_encodeLiteral",value:function(e){var t=e.value;if(p.test(t)&&(t=t.replace(v,_)),e.language)return'"'.concat(t,'"@').concat(e.language);if(this._lineMode){if(e.datatype.value===f.string)return'"'.concat(t,'"')}else switch(e.datatype.value){case f.string:return'"'.concat(t,'"');case f.boolean:if("true"===t||"false"===t)return t;break;case f.integer:if(/^[+-]?\d+$/.test(t))return t;break;case f.decimal:if(/^[+-]?\d*\.\d+$/.test(t))return t;break;case f.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(t))return t}return'"'.concat(t,'"^^').concat(this._encodeIriOrBlank(e.datatype))}},{key:"_encodePredicate",value:function(e){return e.value===d.type?"a":this._encodeIriOrBlank(e)}},{key:"_encodeObject",value:function(e){switch(e.termType){case"Quad":return this._encodeQuad(e);case"Literal":return this._encodeLiteral(e);default:return this._encodeIriOrBlank(e)}}},{key:"_encodeQuad",value:function(e){var t=e.subject,n=e.predicate,i=e.object,r=e.graph;return"<<".concat(this._encodeSubject(t)," ").concat(this._encodePredicate(n)," ").concat(this._encodeObject(i)).concat((0,u.isDefaultGraph)(r)?"":" ".concat(this._encodeIriOrBlank(r)),">>")}},{key:"_blockedWrite",value:function(){throw new Error("Cannot write because the writer has been closed.")}},{key:"addQuad",value:function(e,t,n,i,r){void 0===n?this._writeQuad(e.subject,e.predicate,e.object,e.graph,t):"function"==typeof i?this._writeQuad(e,t,n,l,i):this._writeQuad(e,t,n,i||l,r)}},{key:"addQuads",value:function(e){for(var t=0;t.\n"))}if(n){var o="",a="";for(var s in this._prefixIRIs)o+=o?"|".concat(s):s,a+=(a?"|":"")+this._prefixIRIs[s];o=o.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp("^(?:".concat(a,")[^/]*$|^(").concat(o,")([a-zA-Z][\\-_a-zA-Z0-9]*)$"))}this._write(n?"\n":"",t)}},{key:"blank",value:function(e,t){var n,i,r=e;switch(void 0===e?r=[]:e.termType?r=[{predicate:e,object:t}]:"length"in e||(r=[e]),i=r.length){case 0:return new y("[]");case 1:if(!((n=r[0]).object instanceof y))return new y("[ ".concat(this._encodePredicate(n.predicate)," ").concat(this._encodeObject(n.object)," ]"));default:for(var o="[",a=0;a1)for(var n=1;n1&&void 0!==arguments[1]?arguments[1]:new Map,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;m(this,e),this.prefix=t,this._existing=n,this.counter=i}return b(e,[{key:"clone",value:function(){var t=this.prefix,n=this._existing,i=this.counter;return new e(t,new Map(n),i)}},{key:"getId",value:function(e){var t=e&&this._existing.get(e);if(t)return t;var n=this.prefix+this.counter;return this.counter++,e&&this._existing.set(e,n),n}},{key:"hasId",value:function(e){return this._existing.has(e)}},{key:"getOldIds",value:function(){return v(this._existing.keys())}}]),e}()},{}],48:[function(e,t,n){"use strict";e("setimmediate");var i=self.crypto||self.msCrypto;t.exports=function(){function e(t){if(m(this,e),!i||!i.subtle)throw new Error("crypto.subtle not found.");if("sha256"===t)this.algorithm={name:"SHA-256"};else{if("sha1"!==t)throw new Error('Unsupport algorithm "'.concat(t,'".'));this.algorithm={name:"SHA-1"}}this._content=""}return b(e,[{key:"update",value:function(e){this._content+=e}},{key:"digest",value:function(){var e=this;return h(regeneratorRuntime.mark(function t(){var n,r,o,a;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=(new TextEncoder).encode(e._content),t.t0=Uint8Array,t.next=4,i.subtle.digest(e.algorithm,n);case 4:for(t.t1=t.sent,r=new t.t0(t.t1),o="",a=0;a]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]+(?:<([^:]+:[^>]*)>)[ \\t]+(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?)|(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"(?:(?:\\^\\^(?:<([^:]+:[^>]*)>))|(?:@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)))?))[ \\t]*(?:\\.|(?:(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]*\\.))[ \\t]*$'),t.exports=function(){function e(){m(this,e)}return b(e,null,[{key:"parse",value:function(e){var t,n=[],h={},f=0,p=_(e.split(c.eoln));try{for(p.s();!(t=p.n()).done;){var v=t.value;if(f++,!c.empty.test(v)){var g=v.match(c.quad);if(null===g)throw new Error("N-Quads parse error on line "+f+".");var m={subject:null,predicate:null,object:null,graph:null};if(m.subject=void 0!==g[1]?{termType:o,value:g[1]}:{termType:a,value:g[2]},m.predicate={termType:o,value:g[3]},void 0!==g[4]?m.object={termType:o,value:g[4]}:void 0!==g[5]?m.object={termType:a,value:g[5]}:(m.object={termType:s,value:void 0,datatype:{termType:o}},void 0!==g[7]?m.object.datatype.value=g[7]:void 0!==g[8]?(m.object.datatype.value=i,m.object.language=g[8]):m.object.datatype.value=r,m.object.value=g[6].replace(d,function(e,t,n,i){if(t)switch(t){case"t":return"\t";case"b":return"\b";case"n":return"\n";case"r":return"\r";case"f":return"\f";case'"':return'"';case"'":return"'";case"\\":return"\\"}if(n)return String.fromCharCode(parseInt(n,16));if(i)throw new Error("Unsupported U escape")})),m.graph=void 0!==g[9]?{termType:o,value:g[9]}:void 0!==g[10]?{termType:a,value:g[10]}:{termType:u,value:""},m.graph.value in h){var y,b=!0,w=h[m.graph.value],k=_(w);try{for(k.s();!(y=k.n()).done;){if(l(y.value,m)){b=!1;break}}}catch(x){k.e(x)}finally{k.f()}b&&(w.push(m),n.push(m))}else h[m.graph.value]=[m],n.push(m)}}}catch(x){p.e(x)}finally{p.f()}return n}},{key:"serialize",value:function(t){Array.isArray(t)||(t=e.legacyDatasetToQuads(t));var n,i=[],r=_(t);try{for(r.s();!(n=r.n()).done;){var o=n.value;i.push(e.serializeQuad(o))}}catch(a){r.e(a)}finally{r.f()}return i.sort().join("")}},{key:"serializeQuad",value:function(e){var t=e.subject,n=e.object,s=e.graph,u="";return u+=t.termType===o?"<".concat(t.value,">"):"".concat(t.value),u+=" <".concat(e.predicate.value,"> "),n.termType===o?u+="<".concat(n.value,">"):n.termType===a?u+=n.value:(u+='"'.concat(n.value.replace(h,function(e){switch(e){case'"':return'\\"';case"\\":return"\\\\";case"\n":return"\\n";case"\r":return"\\r"}}),'"'),n.datatype.value===i?n.language&&(u+="@".concat(n.language)):n.datatype.value!==r&&(u+="^^<".concat(n.datatype.value,">"))),s.termType===o?u+=" <".concat(s.value,">"):s.termType===a&&(u+=" ".concat(s.value)),u+=" .\n"}},{key:"legacyDatasetToQuads",value:function(e){var t=[],n={"blank node":a,IRI:o,literal:s},c=function(c){e[c].forEach(function(e){var l={};for(var h in e){var d=e[h],f={termType:n[d.type],value:d.value};f.termType===s&&(f.datatype={termType:o},"datatype"in d&&(f.datatype.value=d.datatype),"language"in d?("datatype"in d||(f.datatype.value=i),f.language=d.language):"datatype"in d||(f.datatype.value=r)),l[h]=f}l.graph="@default"===c?{termType:u,value:""}:{termType:c.startsWith("_:")?a:o,value:c},t.push(l)})};for(var l in e)c(l);return t}}]),e}();var h=/["\\\n\r]/g,d=/(?:\\([tbnrf"'\\]))|(?:\\u([0-9A-Fa-f]{4}))|(?:\\U([0-9A-Fa-f]{8}))/g},{}],50:[function(e,t,n){"use strict";t.exports=function(){function e(t){m(this,e),this.current=t.sort(),this.done=!1,this.dir=new Map;for(var n=0;ni)&&(u&&a>0&&s>e[a-1]||!u&&ae[a+1])&&(i=s,r=a)}if(null===i)this.done=!0;else{var c=t.get(i)?r-1:r+1;e[r]=e[c],e[c]=i;var l,h=_(e);try{for(h.s();!(l=h.n()).done;){var d=l.value;d>i&&t.set(d,!t.get(d))}}catch(f){h.e(f)}finally{h.f()}}return n}}]),e}()},{}],51:[function(e,t,n){(function(n){(function(){"use strict";var i=e("./IdentifierIssuer"),r=e("./MessageDigest"),o=e("./Permuter"),a=e("./NQuads");function s(e,t){return e.hasht.hash?1:0}t.exports=function(){function e(){m(this,e),this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}return b(e,[{key:"main",value:function(e){var t=this;return h(regeneratorRuntime.mark(function n(){var r,o,u,c,l,h,d,f,p,g,m,y,b,w,k,x,S,E,C,O,T,A,P,I,R,D,N,L,j,F,B,V,z,U,H,G;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:t.quads=e,r=_(e);try{for(r.s();!(o=r.n()).done;)u=o.value,t._addBlankNodeQuadInfo({quad:u,component:u.subject}),t._addBlankNodeQuadInfo({quad:u,component:u.object}),t._addBlankNodeQuadInfo({quad:u,component:u.graph})}catch(W){r.e(W)}finally{r.f()}c=new Map,l=v(t.blankNodeInfo.keys()),h=0,d=_(l),n.prev=6,d.s();case 8:if((f=d.n()).done){n.next=18;break}if(p=f.value,n.t0=++h%100==0,!n.t0){n.next=14;break}return n.next=14,t._yield();case 14:return n.next=16,t._hashAndTrackBlankNode({id:p,hashToBlankNodes:c});case 16:n.next=8;break;case 18:n.next=23;break;case 20:n.prev=20,n.t1=n.catch(6),d.e(n.t1);case 23:return n.prev=23,d.f(),n.finish(23);case 26:g=v(c.keys()).sort(),m=[],y=_(g);try{for(y.s();!(b=y.n()).done;)w=b.value,(k=c.get(w)).length>1?m.push(k):t.canonicalIssuer.getId(k[0])}catch(W){y.e(W)}finally{y.f()}x=0,S=m;case 30:if(!(xf)){i.next=31;break}return k=!0,i.abrupt("break",33);case 31:i.next=26;break;case 33:i.next=38;break;case 35:i.prev=35,i.t1=i.catch(24),x.e(i.t1);case 38:return i.prev=38,x.f(),i.finish(38);case 41:if(k){i.next=64;break}C=_(w),i.prev=43,C.s();case 45:if((O=C.n()).done){i.next=55;break}return T=O.value,i.next=49,n.hashNDegreeQuads(T,y);case 49:if(A=i.sent,b+=y.getId(T),b+="<".concat(A.hash,">"),y=A.issuer,!(0!==f.length&&b>f)){i.next=53;break}return k=!0,i.abrupt("break",55);case 53:i.next=45;break;case 55:i.next=60;break;case 57:i.prev=57,i.t2=i.catch(43),C.e(i.t2);case 60:return i.prev=60,C.f(),i.finish(60);case 63:k||(0===f.length||b")}},{key:"createHashToRelated",value:function(e,t){var n=this;return h(regeneratorRuntime.mark(function i(){var r,o,a,s,u,c;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:r=new Map,o=n.blankNodeInfo.get(e).quads,a=0,s=_(o),i.prev=3,s.s();case 5:if((u=s.n()).done){i.next=15;break}if(c=u.value,i.t0=++a%100==0,!i.t0){i.next=11;break}return i.next=11,n._yield();case 11:return i.next=13,Promise.all([n._addRelatedBlankNodeHash({quad:c,component:c.subject,position:"s",id:e,issuer:t,hashToRelated:r}),n._addRelatedBlankNodeHash({quad:c,component:c.object,position:"o",id:e,issuer:t,hashToRelated:r}),n._addRelatedBlankNodeHash({quad:c,component:c.graph,position:"g",id:e,issuer:t,hashToRelated:r})]);case 13:i.next=5;break;case 15:i.next=20;break;case 17:i.prev=17,i.t1=i.catch(3),s.e(i.t1);case 20:return i.prev=20,s.f(),i.finish(20);case 23:return i.abrupt("return",r);case 24:case"end":return i.stop()}},i,null,[[3,17,20,23]])}))()}},{key:"_hashAndTrackBlankNode",value:function(e){var t=e.id,n=e.hashToBlankNodes,i=this;return h(regeneratorRuntime.mark(function e(){var r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,i.hashFirstDegreeQuads(t);case 2:r=e.sent,(o=n.get(r))?o.push(t):n.set(r,[t]);case 5:case"end":return e.stop()}},e)}))()}},{key:"_addBlankNodeQuadInfo",value:function(e){var t=e.quad,n=e.component;if("BlankNode"===n.termType){var i=n.value,r=this.blankNodeInfo.get(i);r?r.quads.add(t):this.blankNodeInfo.set(i,{quads:new Set([t]),hash:null})}}},{key:"_addRelatedBlankNodeHash",value:function(e){var t=e.quad,n=e.component,i=e.position,r=e.id,o=e.issuer,a=e.hashToRelated,s=this;return h(regeneratorRuntime.mark(function e(){var u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("BlankNode"===n.termType&&n.value!==r){e.next=2;break}return e.abrupt("return");case 2:return u=n.value,e.next=5,s.hashRelatedBlankNode(u,t,o,i);case 5:c=e.sent,(l=a.get(c))?l.push(u):a.set(c,[u]);case 8:case"end":return e.stop()}},e)}))()}},{key:"_useCanonicalId",value:function(e){var t=e.component;return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}},{key:"_yield",value:function(){return h(regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",new Promise(function(e){return n(e)}));case 1:case"end":return e.stop()}},e)}))()}}]),e}()}).call(this)}).call(this,e("timers").setImmediate)},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50,timers:89}],52:[function(e,t,n){"use strict";var i=e("./IdentifierIssuer"),r=e("./MessageDigest"),o=e("./Permuter"),a=e("./NQuads");function s(e,t){return e.hasht.hash?1:0}t.exports=function(){function e(){m(this,e),this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}return b(e,[{key:"main",value:function(e){this.quads=e;var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var r=t.value;this._addBlankNodeQuadInfo({quad:r,component:r.subject}),this._addBlankNodeQuadInfo({quad:r,component:r.object}),this._addBlankNodeQuadInfo({quad:r,component:r.graph})}}catch(j){n.e(j)}finally{n.f()}var o,u=new Map,c=_(v(this.blankNodeInfo.keys()));try{for(c.s();!(o=c.n()).done;){var l=o.value;this._hashAndTrackBlankNode({id:l,hashToBlankNodes:u})}}catch(j){c.e(j)}finally{c.f()}var h,d=[],f=_(v(u.keys()).sort());try{for(f.s();!(h=f.n()).done;){var p=h.value,g=u.get(p);g.length>1?d.push(g):this.canonicalIssuer.getId(g[0])}}catch(j){f.e(j)}finally{f.f()}for(var m=0,y=d;ml){y=!0;break}}}catch(C){b.e(C)}finally{b.f()}if(!y){var k,x=_(m);try{for(x.s();!(k=x.n()).done;){var S=k.value,E=this.hashNDegreeQuads(S,p);if(g+=p.getId(S),g+="<".concat(E.hash,">"),p=E.issuer,0!==l.length&&g>l){y=!0;break}}}catch(C){x.e(C)}finally{x.f()}y||(0===l.length||g")}},{key:"createHashToRelated",value:function(e,t){var n,i=new Map,r=_(this.blankNodeInfo.get(e).quads);try{for(r.s();!(n=r.n()).done;){var o=n.value;this._addRelatedBlankNodeHash({quad:o,component:o.subject,position:"s",id:e,issuer:t,hashToRelated:i}),this._addRelatedBlankNodeHash({quad:o,component:o.object,position:"o",id:e,issuer:t,hashToRelated:i}),this._addRelatedBlankNodeHash({quad:o,component:o.graph,position:"g",id:e,issuer:t,hashToRelated:i})}}catch(a){r.e(a)}finally{r.f()}return i}},{key:"_hashAndTrackBlankNode",value:function(e){var t=e.id,n=e.hashToBlankNodes,i=this.hashFirstDegreeQuads(t),r=n.get(i);r?r.push(t):n.set(i,[t])}},{key:"_addBlankNodeQuadInfo",value:function(e){var t=e.quad,n=e.component;if("BlankNode"===n.termType){var i=n.value,r=this.blankNodeInfo.get(i);r?r.quads.add(t):this.blankNodeInfo.set(i,{quads:new Set([t]),hash:null})}}},{key:"_addRelatedBlankNodeHash",value:function(e){var t=e.quad,n=e.component,i=e.position,r=e.id,o=e.issuer,a=e.hashToRelated;if("BlankNode"===n.termType&&n.value!==r){var s=n.value,u=this.hashRelatedBlankNode(s,t,o,i),c=a.get(u);c?c.push(s):a.set(u,[s])}}},{key:"_useCanonicalId",value:function(e){var t=e.component;return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}}]),e}()},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50}],53:[function(e,t,n){"use strict";var i=e("./URDNA2015");t.exports=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.call(this)).name="URGNA2012",e.hashAlgorithm="sha1",e}return b(n,[{key:"modifyFirstDegreeComponent",value:function(e,t,n){return"BlankNode"!==t.termType?t:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:t.value===e?"_:a":"_:z"}}},{key:"getRelatedPredicate",value:function(e){return e.predicate.value}},{key:"createHashToRelated",value:function(e,t){var n=this;return h(regeneratorRuntime.mark(function i(){var r,o,a,s,u,c,l,h,d,f;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:r=new Map,o=n.blankNodeInfo.get(e).quads,a=0,s=_(o),i.prev=3,s.s();case 5:if((u=s.n()).done){i.next=26;break}if(c=u.value,l=void 0,h=void 0,"BlankNode"!==c.subject.termType||c.subject.value===e){i.next=12;break}h=c.subject.value,l="p",i.next=15;break;case 12:if("BlankNode"===c.object.termType&&c.object.value!==e){i.next=14;break}return i.abrupt("continue",24);case 14:h=c.object.value,l="r";case 15:if(i.t0=++a%100==0,!i.t0){i.next=19;break}return i.next=19,n._yield();case 19:return i.next=21,n.hashRelatedBlankNode(h,c,t,l);case 21:d=i.sent,(f=r.get(d))?f.push(h):r.set(d,[h]);case 24:i.next=5;break;case 26:i.next=31;break;case 28:i.prev=28,i.t1=i.catch(3),s.e(i.t1);case 31:return i.prev=31,s.f(),i.finish(31);case 34:return i.abrupt("return",r);case 35:case"end":return i.stop()}},i,null,[[3,28,31,34]])}))()}}]),n}(i)},{"./URDNA2015":51}],54:[function(e,t,n){"use strict";var i=e("./URDNA2015Sync");t.exports=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.call(this)).name="URGNA2012",e.hashAlgorithm="sha1",e}return b(n,[{key:"modifyFirstDegreeComponent",value:function(e,t,n){return"BlankNode"!==t.termType?t:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:t.value===e?"_:a":"_:z"}}},{key:"getRelatedPredicate",value:function(e){return e.predicate.value}},{key:"createHashToRelated",value:function(e,t){var n,i=new Map,r=_(this.blankNodeInfo.get(e).quads);try{for(r.s();!(n=r.n()).done;){var o=n.value,a=void 0,s=void 0;if("BlankNode"===o.subject.termType&&o.subject.value!==e)s=o.subject.value,a="p";else{if("BlankNode"!==o.object.termType||o.object.value===e)continue;s=o.object.value,a="r"}var u=this.hashRelatedBlankNode(s,o,t,a),c=i.get(u);c?c.push(s):i.set(u,[s])}}catch(l){r.e(l)}finally{r.f()}return i}}]),n}(i)},{"./URDNA2015Sync":52}],55:[function(e,t,n){"use strict";var i,r=e("./URDNA2015"),o=e("./URGNA2012"),a=e("./URDNA2015Sync"),s=e("./URGNA2012Sync");try{i=e("rdf-canonize-native")}catch(u){}var u,c={};t.exports=c,c.NQuads=e("./NQuads"),c.IdentifierIssuer=e("./IdentifierIssuer"),c._rdfCanonizeNative=function(e){return e&&(i=e),i},c.canonize=(u=h(regeneratorRuntime.mark(function e(t,n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),!n.useNative){e.next=4;break}if(i){e.next=3;break}throw new Error("rdf-canonize-native not available");case 3:return e.abrupt("return",new Promise(function(e,r){return i.canonize(t,n,function(t,n){return t?r(t):e(n)})}));case 4:if("URDNA2015"!==n.algorithm){e.next=6;break}return e.abrupt("return",new r(n).main(t));case 6:if("URGNA2012"!==n.algorithm){e.next=8;break}return e.abrupt("return",new o(n).main(t));case 8:throw"algorithm"in n?new Error("Invalid RDF Dataset Canonicalization algorithm: "+n.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.");case 9:case"end":return e.stop()}},e)})),function(e,t){return u.apply(this,arguments)}),c._canonizeSync=function(e,t){if(Array.isArray(e)||(e=c.NQuads.legacyDatasetToQuads(e)),t.useNative){if(i)return i.canonizeSync(e,t);throw new Error("rdf-canonize-native not available")}if("URDNA2015"===t.algorithm)return new a(t).main(e);if("URGNA2012"===t.algorithm)return new s(t).main(e);throw"algorithm"in t?new Error("Invalid RDF Dataset Canonicalization algorithm: "+t.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")}},{"./IdentifierIssuer":47,"./NQuads":49,"./URDNA2015":51,"./URDNA2015Sync":52,"./URGNA2012":53,"./URGNA2012Sync":54,"rdf-canonize-native":3}],56:[function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(e("./lib/BlankNode"),n),r(e("./lib/DataFactory"),n),r(e("./lib/DefaultGraph"),n),r(e("./lib/Literal"),n),r(e("./lib/NamedNode"),n),r(e("./lib/Quad"),n),r(e("./lib/Variable"),n)},{"./lib/BlankNode":57,"./lib/DataFactory":58,"./lib/DefaultGraph":59,"./lib/Literal":60,"./lib/NamedNode":61,"./lib/Quad":62,"./lib/Variable":63}],57:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.BlankNode=void 0,n.BlankNode=function(){function e(t){m(this,e),this.termType="BlankNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}]),e}()},{}],58:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DataFactory=void 0;var i=e("./BlankNode"),r=e("./DefaultGraph"),o=e("./Literal"),a=e("./NamedNode"),s=e("./Quad"),u=e("./Variable"),c=0;n.DataFactory=function(){function e(t){m(this,e),this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||"df_".concat(c++,"_")}return b(e,[{key:"namedNode",value:function(e){return new a.NamedNode(e)}},{key:"blankNode",value:function(e){return new i.BlankNode(e||"".concat(this.blankNodePrefix).concat(this.blankNodeCounter++))}},{key:"literal",value:function(e,t){return new o.Literal(e,t)}},{key:"variable",value:function(e){return new u.Variable(e)}},{key:"defaultGraph",value:function(){return r.DefaultGraph.INSTANCE}},{key:"quad",value:function(e,t,n,i){return new s.Quad(e,t,n,i||this.defaultGraph())}},{key:"fromTerm",value:function(e){switch(e.termType){case"NamedNode":return this.namedNode(e.value);case"BlankNode":return this.blankNode(e.value);case"Literal":return e.language?this.literal(e.value,e.language):e.datatype.equals(o.Literal.XSD_STRING)?this.literal(e.value):this.literal(e.value,this.fromTerm(e.datatype));case"Variable":return this.variable(e.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(e.subject),this.fromTerm(e.predicate),this.fromTerm(e.object),this.fromTerm(e.graph))}}},{key:"fromQuad",value:function(e){return this.fromTerm(e)}},{key:"resetBlankNodeCounter",value:function(){this.blankNodeCounter=0}}]),e}()},{"./BlankNode":57,"./DefaultGraph":59,"./Literal":60,"./NamedNode":61,"./Quad":62,"./Variable":63}],59:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DefaultGraph=void 0;var i=function(){function e(){m(this,e),this.termType="DefaultGraph",this.value=""}return b(e,[{key:"equals",value:function(e){return!!e&&"DefaultGraph"===e.termType}}]),e}();n.DefaultGraph=i,i.INSTANCE=new i},{}],60:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Literal=void 0;var i=e("./NamedNode"),r=function(){function e(t,n){m(this,e),this.termType="Literal",this.value=t,"string"==typeof n?(this.language=n,this.datatype=e.RDF_LANGUAGE_STRING):n?(this.language="",this.datatype=n):(this.language="",this.datatype=e.XSD_STRING)}return b(e,[{key:"equals",value:function(e){return!!e&&"Literal"===e.termType&&e.value===this.value&&e.language===this.language&&e.datatype.equals(this.datatype)}}]),e}();n.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},{"./NamedNode":61}],61:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NamedNode=void 0,n.NamedNode=function(){function e(t){m(this,e),this.termType="NamedNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"NamedNode"===e.termType&&e.value===this.value}}]),e}()},{}],62:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Quad=void 0,n.Quad=function(){function e(t,n,i,r){m(this,e),this.termType="Quad",this.value="",this.subject=t,this.predicate=n,this.object=i,this.graph=r}return b(e,[{key:"equals",value:function(e){return!!e&&("Quad"===e.termType||!e.termType)&&this.subject.equals(e.subject)&&this.predicate.equals(e.predicate)&&this.object.equals(e.object)&&this.graph.equals(e.graph)}}]),e}()},{}],63:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Variable=void 0,n.Variable=function(){function e(t){m(this,e),this.termType="Variable",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"Variable"===e.termType&&e.value===this.value}}]),e}()},{}],64:[function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(e("./lib/RdfXmlParser"),n)},{"./lib/RdfXmlParser":66}],65:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseError=void 0;var i=function(e){a(n,e);var t=s(n);function n(e,i){m(this,n);var r=e.saxStream._parser;return t.call(this,e.trackPosition?"Line ".concat(r.line+1," column ").concat(r.column+1,": ").concat(i):i)}return n}(l(Error));n.ParseError=i},{}],66:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseType=n.RdfXmlParser=void 0;var i,r,o=e("relative-to-absolute-iri"),u=e("sax"),l=e("stream"),h=e("./ParseError"),d=e("rdf-data-factory"),f=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,{readableObjectMode:!0})).activeTagStack=[],i.nodeIds={},e&&(Object.assign(c(i),e),i.options=e),i.dataFactory||(i.dataFactory=new d.DataFactory),i.baseIRI||(i.baseIRI=""),i.defaultGraph||(i.defaultGraph=i.dataFactory.defaultGraph()),i.saxStream=u.createStream(i.strict,{xmlns:!1,position:i.trackPosition}),i.strict||(i.saxStream._parser.looseCase="toString"),i.attachSaxListeners(),i}return b(n,[{key:"import",value:function(e){var t=new l.PassThrough({readableObjectMode:!0});e.on("error",function(e){return i.emit("error",e)}),e.on("data",function(e){return t.push(e)}),e.on("end",function(){return t.push(null)});var i=t.pipe(new n(this.options));return i}},{key:"_transform",value:function(e,t,n){try{this.saxStream.write(e,t)}catch(i){return n(i)}n()}},{key:"newParseError",value:function(e){return new h.ParseError(this,e)}},{key:"valueToUri",value:function(e,t){return this.uriToNamedNode(o.resolve(e,t.baseIRI))}},{key:"uriToNamedNode",value:function(e){if(!n.isValidIri(e))throw this.newParseError("Invalid URI: ".concat(e));return this.dataFactory.namedNode(e)}},{key:"validateNcname",value:function(e){if(!n.NCNAME_MATCHER.test(e))throw this.newParseError("Not a valid NCName: ".concat(e))}},{key:"attachSaxListeners",value:function(){var e=this;this.saxStream.on("error",function(t){return e.emit("error",t)}),this.saxStream.on("opentag",this.onTag.bind(this)),this.saxStream.on("text",this.onText.bind(this)),this.saxStream.on("closetag",this.onCloseTag.bind(this)),this.saxStream.on("doctype",this.onDoctype.bind(this))}},{key:"onTag",value:function(e){var t=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null,r=i.RESOURCE;if(t&&(t.hadChildren=!0,r=t.childrenParseType),t&&t.childrenStringTags){var o=e.name,a="";for(var s in e.attributes)a+=" ".concat(s,'="').concat(e.attributes[s],'"');t.childrenStringTags.push("<".concat(o).concat(a,">"));var u={childrenStringTags:t.childrenStringTags};return u.childrenStringEmitClosingTag=""),void this.activeTagStack.push(u)}var c={};t?(c.language=t.language,c.baseIRI=t.baseIRI):c.baseIRI=this.baseIRI,this.activeTagStack.push(c),c.ns=n.parseNamespace(e,t),r===i.RESOURCE?this.onTagResource(e,c,t,!t):this.onTagProperty(e,c,t)}},{key:"onTagResource",value:function(e,t,r,a){var s=n.expandPrefixedTerm(e.name,t.ns,this);t.childrenParseType=i.PROPERTY;var u=!0;if(s.uri===n.RDF){if(!a&&n.FORBIDDEN_NODE_ELEMENTS.indexOf(s.local)>=0)throw this.newParseError("Illegal node element name: ".concat(s.local));switch(s.local){case"RDF":t.childrenParseType=i.RESOURCE;case"Description":u=!1}}var c=[],l=[],h=null,d=!1,f=!1,p=null;for(var v in e.attributes){var g=e.attributes[v],m=n.expandPrefixedTerm(v,t.ns,this);if(r&&m.uri===n.RDF)switch(m.local){case"about":if(h)throw this.newParseError("Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ".concat(g," and ").concat(h," where found."));h=g;continue;case"ID":if(h)throw this.newParseError("Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ".concat(g," and ").concat(h," where found."));this.validateNcname(g),h="#"+g,d=!0;continue;case"nodeID":if(h)throw this.newParseError("Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ".concat(g," and ").concat(h," where found."));this.validateNcname(g),h=g,f=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":p=g;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(m.uri===n.XML){if("lang"===m.local){t.language=""===g?null:g.toLowerCase();continue}if("base"===m.local){t.baseIRI=o.resolve(g,t.baseIRI);continue}}"xml"!==m.prefix&&m.uri&&(c.push(this.uriToNamedNode(m.uri+m.local)),l.push(g))}if(null!==h&&(t.subject=f?this.dataFactory.blankNode(h):this.valueToUri(h,t),d&&this.claimNodeId(t.subject)),t.subject||(t.subject=this.dataFactory.blankNode()),u){var y=this.uriToNamedNode(s.uri+s.local);this.emitTriple(t.subject,this.dataFactory.namedNode(n.RDF+"type"),y,r?r.reifiedStatementId:null)}if(r){if(r.predicate)if(r.childrenCollectionSubject){var b=this.dataFactory.blankNode();this.emitTriple(r.childrenCollectionSubject,r.childrenCollectionPredicate,b,r.reifiedStatementId),this.emitTriple(b,this.dataFactory.namedNode(n.RDF+"first"),t.subject,t.reifiedStatementId),r.childrenCollectionSubject=b,r.childrenCollectionPredicate=this.dataFactory.namedNode(n.RDF+"rest")}else{this.emitTriple(r.subject,r.predicate,t.subject,r.reifiedStatementId);for(var _=0;_=0)throw this.newParseError("Illegal property element name: ".concat(o.local));t.predicateSubPredicates=[],t.predicateSubObjects=[];var a=!1,s=!1,u=null,c=!0,l=[],h=[];for(var d in e.attributes){var f=e.attributes[d],p=n.expandPrefixedTerm(d,t.ns,this);if(p.uri===n.RDF)switch(p.local){case"resource":if(u)throw this.newParseError("Found both rdf:resource (".concat(f,") and rdf:nodeID (").concat(u,")."));if(a)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:resource (".concat(f,")"));t.hadChildren=!0,u=f,c=!1;continue;case"datatype":if(s)throw this.newParseError("Found both non-rdf:* property attributes and rdf:datatype (".concat(f,")."));if(a)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:datatype (".concat(f,")"));t.datatype=this.valueToUri(f,t);continue;case"nodeID":if(s)throw this.newParseError("Found both non-rdf:* property attributes and rdf:nodeID (".concat(f,")."));if(t.hadChildren)throw this.newParseError("Found both rdf:resource and rdf:nodeID (".concat(f,")."));if(a)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:nodeID (".concat(f,")"));this.validateNcname(f),t.hadChildren=!0,u=f,c=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(s)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(t.datatype)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:datatype (".concat(t.datatype.value,")"));if(u)throw this.newParseError("rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (".concat(u,")"));if("Resource"===f){a=!0,t.childrenParseType=i.PROPERTY;var v=this.dataFactory.blankNode();this.emitTriple(t.subject,t.predicate,v,t.reifiedStatementId),t.subject=v,t.predicate=null}else"Collection"===f?(a=!0,t.hadChildren=!0,t.childrenCollectionSubject=t.subject,t.childrenCollectionPredicate=t.predicate,c=!1):"Literal"===f&&(a=!0,t.childrenTagsToString=!0,t.childrenStringTags=[]);continue;case"ID":this.validateNcname(f),t.reifiedStatementId=this.valueToUri("#"+f,t),this.claimNodeId(t.reifiedStatementId);continue}else if(p.uri===n.XML&&"lang"===p.local){t.language=""===f?null:f.toLowerCase();continue}if("xml"!==p.prefix&&"xmlns"!==p.prefix&&p.uri){if(a||t.datatype)throw this.newParseError("Found illegal rdf:* properties on property element with attribute: ".concat(f));t.hadChildren=!0,s=!0,l.push(this.uriToNamedNode(p.uri+p.local)),h.push(this.dataFactory.literal(f,t.datatype||t.language))}}if(null!==u){var g=t.subject;t.subject=c?this.dataFactory.blankNode(u):this.valueToUri(u,t),this.emitTriple(g,t.predicate,t.subject,t.reifiedStatementId);for(var m=0;m/g,function(e,n,i){return t.saxStream._parser.ENTITIES[n]=i,""})}}],[{key:"parseNamespace",value:function(e,t){var i={},r=!1;for(var o in e.attributes)o.startsWith("xmlns")&&(5===o.length?(r=!0,i[""]=e.attributes[o]):":"===o.charAt(5)&&(r=!0,i[o.substr(6)]=e.attributes[o]));var a=t&&t.ns?t.ns:[n.DEFAULT_NS];return r?a.concat([i]):a}},{key:"expandPrefixedTerm",value:function(e,t,n){var i,r,o=e.indexOf(":");o>=0?(i=e.substr(0,o),r=e.substr(o+1)):(i="",r=e);for(var a=null,s=null,u=t.length-1;u>=0;u--){var c=t[u][i];if(c){a=c;break}s||(s=t[u][""])}if(!a){if(i&&"xmlns"!==i)throw new h.ParseError(n,"The prefix '".concat(i,"' in term '").concat(e,"' was not bound."));a=s||""}return{prefix:i,local:r,uri:a}}},{key:"isValidIri",value:function(e){return n.IRI_REGEX.test(e)}}]),n}(l.Transform);n.RdfXmlParser=f,f.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*):[^ "<>{}|\\\[\]`]*$/,f.MIME_TYPE="application/rdf+xml",f.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",f.XML="http://www.w3.org/XML/1998/namespace",f.XMLNS="http://www.w3.org/2000/xmlns/",f.DEFAULT_NS={xml:f.XML},f.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],f.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],f.NCNAME_MATCHER=/^((?:[A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]))((?:[#\x2D\.0-9A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF]))*$/,(r=i=n.ParseType||(n.ParseType={}))[r.RESOURCE=0]="RESOURCE",r[r.PROPERTY=1]="PROPERTY"},{"./ParseError":65,"rdf-data-factory":56,"relative-to-absolute-iri":82,sax:85,stream:87}],67:[function(e,t,n){"use strict";var i={};function r(e,t,n){n||(n=Error);var r=function(e){function n(n,i,r){return e.call(this,function(e,n,i){return"string"==typeof t?t:t(e,n,i)}(n,i,r))||this}return function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}(n,e),n}(n);r.prototype.name=n.name,r.prototype.code=e,i[e]=r}function o(e,t){if(Array.isArray(e)){var n=e.length;return e=e.map(function(e){return String(e)}),n>2?"one of ".concat(t," ").concat(e.slice(0,n-1).join(", "),", or ")+e[n-1]:2===n?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}return"of ".concat(t," ").concat(String(e))}r("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(e,t,n){var i,r;if("string"==typeof t&&function(e,t,n){return e.substr(0,t.length)===t}(t,"not ")?(i="must not be",t=t.replace(/^not /,"")):i="must be",function(e,t,n){return(void 0===n||n>e.length)&&(n=e.length),e.substring(n-t.length,n)===t}(e," argument"))r="The ".concat(e," ").concat(i," ").concat(o(t,"type"));else{var a=function(e,t,n){return"number"!=typeof n&&(n=0),!(n+".".length>e.length)&&-1!==e.indexOf(".",n)}(e)?"property":"argument";r='The "'.concat(e,'" ').concat(a," ").concat(i," ").concat(o(t,"type"))}return r+". Received type ".concat(typeof n)},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),t.exports.codes=i},{}],68:[function(e,t,n){(function(n){(function(){"use strict";var i=Object.keys||function(e){var t=[];for(var n in e)t.push(n);return t};t.exports=c;var r=e("./_stream_readable"),o=e("./_stream_writable");e("inherits")(c,r);for(var a=i(o.prototype),s=0;s0)if("string"!=typeof t&&!s.objectMode&&Object.getPrototypeOf(t)!==u.prototype&&(t=function(e){return u.from(e)}(t)),i)s.endEmitted?k(e,new w):O(e,s,t,!0);else if(s.ended)k(e,new b);else{if(s.destroyed)return!1;s.reading=!1,s.decoder&&!n?(t=s.decoder.write(t),s.objectMode||0!==t.length?O(e,s,t,!1):I(e,s)):O(e,s,t,!1)}else i||(s.reading=!1,I(e,s));return!s.ended&&(s.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=T?e=T:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function P(e){var t=e._readableState;o("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(o("emitReadable",t.flowing),t.emittedReadable=!0,n.nextTick(M,e))}function M(e){var t=e._readableState;o("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,j(e)}function I(e,t){t.readingMore||(t.readingMore=!0,n.nextTick(R,e,t))}function R(e,t){for(;!t.reading&&!t.ended&&(t.length0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function N(e){o("readable nexttick read 0"),e.read(0)}function L(e,t){o("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),j(e),t.flowing&&!t.reading&&e.read(0)}function j(e){var t=e._readableState;for(o("flow",t.flowing);t.flowing&&null!==e.read(););}function F(e,t){return 0===t.length?null:(t.objectMode?n=t.buffer.shift():!e||e>=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.first():t.buffer.concat(t.length),t.buffer.clear()):n=t.buffer.consume(e,t.decoder),n);var n}function B(e){var t=e._readableState;o("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,n.nextTick(V,t,e))}function V(e,t){if(o("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&0===e.length&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var n=t._writableState;(!n||n.autoDestroy&&n.finished)&&t.destroy()}}function z(e,t){for(var n=0,i=e.length;n=t.highWaterMark:t.length>0)||t.ended))return o("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?B(this):P(this),null;if(0===(e=A(e,t))&&t.ended)return 0===t.length&&B(this),null;var i,r=t.needReadable;return o("need readable",r),(0===t.length||t.length-e0?F(e,t):null)?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&B(this)),null!==i&&this.emit("data",i),i},E.prototype._read=function(e){k(this,new _("_read()"))},E.prototype.pipe=function(e,t){var i=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=e;break;case 1:r.pipes=[r.pipes,e];break;default:r.pipes.push(e)}r.pipesCount+=1,o("pipe count=%d opts=%j",r.pipesCount,t);var s=t&&!1===t.end||e===n.stdout||e===n.stderr?v:u;function u(){o("onend"),e.end()}r.endEmitted?n.nextTick(s):i.once("end",s),e.on("unpipe",function t(n,a){o("onunpipe"),n===i&&a&&!1===a.hasUnpiped&&(a.hasUnpiped=!0,o("cleanup"),e.removeListener("close",f),e.removeListener("finish",p),e.removeListener("drain",c),e.removeListener("error",d),e.removeListener("unpipe",t),i.removeListener("end",u),i.removeListener("end",v),i.removeListener("data",h),l=!0,r.awaitDrain&&(!e._writableState||e._writableState.needDrain)&&c())});var c=function(e){return function(){var t=e._readableState;o("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&a(e,"data")&&(t.flowing=!0,j(e))}}(i);e.on("drain",c);var l=!1;function h(t){o("ondata");var n=e.write(t);o("dest.write",n),!1===n&&((1===r.pipesCount&&r.pipes===e||r.pipesCount>1&&-1!==z(r.pipes,e))&&!l&&(o("false write response, pause",r.awaitDrain),r.awaitDrain++),i.pause())}function d(t){o("onerror",t),v(),e.removeListener("error",d),0===a(e,"error")&&k(e,t)}function f(){e.removeListener("finish",p),v()}function p(){o("onfinish"),e.removeListener("close",f),v()}function v(){o("unpipe"),i.unpipe(e)}return i.on("data",h),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?Array.isArray(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",d),e.once("close",f),e.once("finish",p),e.emit("pipe",i),r.flowing||(o("pipe resume"),i.resume()),e},E.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var i=t.pipes,r=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o0,!1!==r.flowing&&this.resume()):"readable"===e&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,o("on readable",r.length,r.reading),r.length?P(this):r.reading||n.nextTick(N,this)),i},E.prototype.removeListener=function(e,t){var i=s.prototype.removeListener.call(this,e,t);return"readable"===e&&n.nextTick(D,this),i},E.prototype.removeAllListeners=function(e){var t=s.prototype.removeAllListeners.apply(this,arguments);return("readable"===e||void 0===e)&&n.nextTick(D,this),t},E.prototype.resume=function(){var e=this._readableState;return e.flowing||(o("resume"),e.flowing=!e.readableListening,function(e,t){t.resumeScheduled||(t.resumeScheduled=!0,n.nextTick(L,e,t))}(this,e)),e.paused=!1,this},E.prototype.pause=function(){return o("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(o("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},E.prototype.wrap=function(e){var t=this,n=this._readableState,i=!1;for(var r in e.on("end",function(){if(o("wrapped end"),n.decoder&&!n.ended){var e=n.decoder.end();e&&e.length&&t.push(e)}t.push(null)}),e.on("data",function(r){o("wrapped data"),n.decoder&&(r=n.decoder.write(r)),n.objectMode&&null==r||!(n.objectMode||r&&r.length)||t.push(r)||(i=!0,e.pause())}),e)void 0===this[r]&&"function"==typeof e[r]&&(this[r]=function(t){return function(){return e[t].apply(e,arguments)}}(r));for(var a=0;a-1))throw new w(e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(E.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(E.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),E.prototype._write=function(e,t,n){n(new v("_write()"))},E.prototype._writev=null,E.prototype.end=function(e,t,i){var r=this._writableState;return"function"==typeof e?(i=e,e=null,t=null):"function"==typeof t&&(i=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,i){t.ending=!0,M(e,t),i&&(t.finished?n.nextTick(i):e.once("finish",i)),t.ended=!0,e.writable=!1}(this,r,i),this},Object.defineProperty(E.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(E.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){!this._writableState||(this._writableState.destroyed=e)}}),E.prototype.destroy=h.destroy,E.prototype._undestroy=h.undestroy,E.prototype._destroy=function(e,t){t(e)}}).call(this)}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../errors":67,"./_stream_duplex":68,"./internal/streams/destroy":75,"./internal/streams/state":79,"./internal/streams/stream":80,_process:44,buffer:6,inherits:10,"util-deprecate":90}],73:[function(e,t,n){(function(n){(function(){"use strict";var i;function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var o=e("./end-of-stream"),a=Symbol("lastResolve"),s=Symbol("lastReject"),u=Symbol("error"),c=Symbol("ended"),l=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function f(e,t){return{value:e,done:t}}function p(e){var t=e[a];if(null!==t){var n=e[d].read();null!==n&&(e[l]=null,e[a]=null,e[s]=null,t(f(n,!1)))}}function v(e){n.nextTick(p,e)}var g=Object.getPrototypeOf(function(){}),m=Object.setPrototypeOf((r(i={get stream(){return this[d]},next:function(){var e=this,t=this[u];if(null!==t)return Promise.reject(t);if(this[c])return Promise.resolve(f(void 0,!0));if(this[d].destroyed)return new Promise(function(t,i){n.nextTick(function(){e[u]?i(e[u]):t(f(void 0,!0))})});var i,r=this[l];if(r)i=new Promise(function(e,t){return function(n,i){e.then(function(){t[c]?n(f(void 0,!0)):t[h](n,i)},i)}}(r,this));else{var o=this[d].read();if(null!==o)return Promise.resolve(f(o,!1));i=new Promise(this[h])}return this[l]=i,i}},Symbol.asyncIterator,function(){return this}),r(i,"return",function(){var e=this;return new Promise(function(t,n){e[d].destroy(null,function(e){e?n(e):t(f(void 0,!0))})})}),i),g);t.exports=function(e){var t,n=Object.create(m,(r(t={},d,{value:e,writable:!0}),r(t,a,{value:null,writable:!0}),r(t,s,{value:null,writable:!0}),r(t,u,{value:null,writable:!0}),r(t,c,{value:e._readableState.endEmitted,writable:!0}),r(t,h,{value:function(e,t){var i=n[d].read();i?(n[l]=null,n[a]=null,n[s]=null,e(f(i,!1))):(n[a]=e,n[s]=t)},writable:!0}),t));return n[l]=null,o(e,function(e){if(e&&"ERR_STREAM_PREMATURE_CLOSE"!==e.code){var t=n[s];return null!==t&&(n[l]=null,n[a]=null,n[s]=null,t(e)),void(n[u]=e)}var i=n[a];null!==i&&(n[l]=null,n[a]=null,n[s]=null,i(f(void 0,!0))),n[c]=!0}),e.on("readable",v.bind(null,n)),n}}).call(this)}).call(this,e("_process"))},{"./end-of-stream":76,_process:44}],74:[function(e,t,n){"use strict";function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,i)}return n}function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){for(var n=0;n0?this.tail.next=t:this.head=t,this.tail=t,++this.length}},{key:"unshift",value:function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length}},{key:"shift",value:function(){if(0!==this.length){var e=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,e}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n}},{key:"concat",value:function(e){if(0===this.length)return a.alloc(0);for(var t=a.allocUnsafe(e>>>0),n=this.head,i=0;n;)c(n.data,t,i),i+=n.data.length,n=n.next;return t}},{key:"consume",value:function(e,t){var n;return er.length?r.length:e;if(i+=o===r.length?r:r.slice(0,e),0==(e-=o)){o===r.length?(++n,this.head=t.next?t.next:this.tail=null):(this.head=t,t.data=r.slice(o));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(e){var t=a.allocUnsafe(e),n=this.head,i=1;for(n.data.copy(t),e-=n.data.length;n=n.next;){var r=n.data,o=e>r.length?r.length:e;if(r.copy(t,t.length-e,0,o),0==(e-=o)){o===r.length?(++i,this.head=n.next?n.next:this.tail=null):(this.head=n,n.data=r.slice(o));break}++i}return this.length-=i,t}},{key:u,value:function(e,t){return s(this,function(e){for(var t=1;t0,function(e){r||(r=e),e&&a.forEach(c),!o&&(a.forEach(c),i(r))})});return t.reduce(l)}},{"../../../errors":67,"./end-of-stream":76}],79:[function(e,t,n){"use strict";var i=e("../../../errors").codes.ERR_INVALID_OPT_VALUE;t.exports={getHighWaterMark:function(e,t,n,r){var o=function(e,t,n){return null!=e.highWaterMark?e.highWaterMark:t?e[n]:null}(t,r,n);if(null!=o){if(!isFinite(o)||Math.floor(o)!==o||o<0)throw new i(r?n:"highWaterMark",o);return Math.floor(o)}return e.objectMode?16:16384}}},{"../../../errors":67}],80:[function(e,t,n){t.exports=e("events").EventEmitter},{events:8}],81:[function(e,t,n){(n=t.exports=e("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=e("./lib/_stream_writable.js"),n.Duplex=e("./lib/_stream_duplex.js"),n.Transform=e("./lib/_stream_transform.js"),n.PassThrough=e("./lib/_stream_passthrough.js"),n.finished=e("./lib/internal/streams/end-of-stream.js"),n.pipeline=e("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":68,"./lib/_stream_passthrough.js":69,"./lib/_stream_readable.js":70,"./lib/_stream_transform.js":71,"./lib/_stream_writable.js":72,"./lib/internal/streams/end-of-stream.js":76,"./lib/internal/streams/pipeline.js":78}],82:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(e){for(var t in e)n.hasOwnProperty(t)||(n[t]=e[t])}(e("./lib/Resolve"))},{"./lib/Resolve":83}],83:[function(e,t,n){"use strict";function i(e){for(var t=[],n=0;n=0?"/"===e[t+1]&&"/"===e[t+2]&&(n=t+3):"/"===e[0]&&"/"===e[1]&&(n=2);var r=e.indexOf("/",n);return r<0?e:e.substr(0,r)+i(e.substr(r))}function o(e){return!e||"#"===e||"?"===e||"/"===e}Object.defineProperty(n,"__esModule",{value:!0}),n.resolve=function(e,t){var n=(t=t||"").indexOf("#");if(n>0&&(t=t.substr(0,n)),!e.length){if(t.indexOf(":")<0)throw new Error("Found invalid baseIRI '".concat(t,"' for value '").concat(e,"'"));return t}if(e.startsWith("?")){var o=t.indexOf("?");return o>0&&(t=t.substr(0,o)),t+e}if(e.startsWith("#"))return t+e;if(!t.length){var a=e.indexOf(":");if(a<0)throw new Error("Found invalid relative IRI '".concat(e,"' for a missing baseIRI"));return r(e,a)}var s=e.indexOf(":");if(s>=0)return r(e,s);var u=t.indexOf(":");if(u<0)throw new Error("Found invalid baseIRI '".concat(t,"' for value '").concat(e,"'"));var c,l=t.substr(0,u+1);if(0===e.indexOf("//"))return l+r(e,s);if(t.indexOf("//",u)===u+1){if((c=t.indexOf("/",u+3))<0)return t.length>u+3?t+"/"+r(e,s):l+r(e,s)}else if((c=t.indexOf("/",u+1))<0)return l+r(e,s);if(0===e.indexOf("/"))return t.substr(0,c)+i(e);var h=t.substr(c),d=h.lastIndexOf("/");return d>=0&&d"===o?(C(t,"onsgmldeclaration",t.sgmlDecl),t.sgmlDecl="",t.state=x.TEXT):(g(o)&&(t.state=x.SGML_DECL_QUOTED),t.sgmlDecl+=o);continue;case x.SGML_DECL_QUOTED:o===t.q&&(t.state=x.SGML_DECL,t.q=""),t.sgmlDecl+=o;continue;case x.DOCTYPE:">"===o?(t.state=x.TEXT,C(t,"ondoctype",t.doctype),t.doctype=!0):(t.doctype+=o,"["===o?t.state=x.DOCTYPE_DTD:g(o)&&(t.state=x.DOCTYPE_QUOTED,t.q=o));continue;case x.DOCTYPE_QUOTED:t.doctype+=o,o===t.q&&(t.q="",t.state=x.DOCTYPE);continue;case x.DOCTYPE_DTD:t.doctype+=o,"]"===o?t.state=x.DOCTYPE:g(o)&&(t.state=x.DOCTYPE_DTD_QUOTED,t.q=o);continue;case x.DOCTYPE_DTD_QUOTED:t.doctype+=o,o===t.q&&(t.state=x.DOCTYPE_DTD,t.q="");continue;case x.COMMENT:"-"===o?t.state=x.COMMENT_ENDING:t.comment+=o;continue;case x.COMMENT_ENDING:"-"===o?(t.state=x.COMMENT_ENDED,t.comment=T(t.opt,t.comment),t.comment&&C(t,"oncomment",t.comment),t.comment=""):(t.comment+="-"+o,t.state=x.COMMENT);continue;case x.COMMENT_ENDED:">"!==o?(M(t,"Malformed comment"),t.comment+="--"+o,t.state=x.COMMENT):t.state=x.TEXT;continue;case x.CDATA:"]"===o?t.state=x.CDATA_ENDING:t.cdata+=o;continue;case x.CDATA_ENDING:"]"===o?t.state=x.CDATA_ENDING_2:(t.cdata+="]"+o,t.state=x.CDATA);continue;case x.CDATA_ENDING_2:">"===o?(t.cdata&&C(t,"oncdata",t.cdata),C(t,"onclosecdata"),t.cdata="",t.state=x.TEXT):"]"===o?t.cdata+="]":(t.cdata+="]]"+o,t.state=x.CDATA);continue;case x.PROC_INST:"?"===o?t.state=x.PROC_INST_ENDING:v(o)?t.state=x.PROC_INST_BODY:t.procInstName+=o;continue;case x.PROC_INST_BODY:if(!t.procInstBody&&v(o))continue;"?"===o?t.state=x.PROC_INST_ENDING:t.procInstBody+=o;continue;case x.PROC_INST_ENDING:">"===o?(C(t,"onprocessinginstruction",{name:t.procInstName,body:t.procInstBody}),t.procInstName=t.procInstBody="",t.state=x.TEXT):(t.procInstBody+="?"+o,t.state=x.PROC_INST_BODY);continue;case x.OPEN_TAG:y(d,o)?t.tagName+=o:(I(t),">"===o?N(t):"/"===o?t.state=x.OPEN_TAG_SLASH:(v(o)||M(t,"Invalid character in tag name"),t.state=x.ATTRIB));continue;case x.OPEN_TAG_SLASH:">"===o?(N(t,!0),L(t)):(M(t,"Forward-slash in opening tag not followed by >"),t.state=x.ATTRIB);continue;case x.ATTRIB:if(v(o))continue;">"===o?N(t):"/"===o?t.state=x.OPEN_TAG_SLASH:y(h,o)?(t.attribName=o,t.attribValue="",t.state=x.ATTRIB_NAME):M(t,"Invalid attribute name");continue;case x.ATTRIB_NAME:"="===o?t.state=x.ATTRIB_VALUE:">"===o?(M(t,"Attribute without value"),t.attribValue=t.attribName,D(t),N(t)):v(o)?t.state=x.ATTRIB_NAME_SAW_WHITE:y(d,o)?t.attribName+=o:M(t,"Invalid attribute name");continue;case x.ATTRIB_NAME_SAW_WHITE:if("="===o)t.state=x.ATTRIB_VALUE;else{if(v(o))continue;M(t,"Attribute without value"),t.tag.attributes[t.attribName]="",t.attribValue="",C(t,"onattribute",{name:t.attribName,value:""}),t.attribName="",">"===o?N(t):y(h,o)?(t.attribName=o,t.state=x.ATTRIB_NAME):(M(t,"Invalid attribute name"),t.state=x.ATTRIB)}continue;case x.ATTRIB_VALUE:if(v(o))continue;g(o)?(t.q=o,t.state=x.ATTRIB_VALUE_QUOTED):(M(t,"Unquoted attribute value"),t.state=x.ATTRIB_VALUE_UNQUOTED,t.attribValue=o);continue;case x.ATTRIB_VALUE_QUOTED:if(o!==t.q){"&"===o?t.state=x.ATTRIB_VALUE_ENTITY_Q:t.attribValue+=o;continue}D(t),t.q="",t.state=x.ATTRIB_VALUE_CLOSED;continue;case x.ATTRIB_VALUE_CLOSED:v(o)?t.state=x.ATTRIB:">"===o?N(t):"/"===o?t.state=x.OPEN_TAG_SLASH:y(h,o)?(M(t,"No whitespace between attributes"),t.attribName=o,t.attribValue="",t.state=x.ATTRIB_NAME):M(t,"Invalid attribute name");continue;case x.ATTRIB_VALUE_UNQUOTED:if(!m(o)){"&"===o?t.state=x.ATTRIB_VALUE_ENTITY_U:t.attribValue+=o;continue}D(t),">"===o?N(t):t.state=x.ATTRIB;continue;case x.CLOSE_TAG:if(t.tagName)">"===o?L(t):y(d,o)?t.tagName+=o:t.script?(t.script+=""===o?L(t):M(t,"Invalid characters in closing tag");continue;case x.TEXT_ENTITY:case x.ATTRIB_VALUE_ENTITY_Q:case x.ATTRIB_VALUE_ENTITY_U:var s,u;switch(t.state){case x.TEXT_ENTITY:s=x.TEXT,u="textNode";break;case x.ATTRIB_VALUE_ENTITY_Q:s=x.ATTRIB_VALUE_QUOTED,u="attribValue";break;case x.ATTRIB_VALUE_ENTITY_U:s=x.ATTRIB_VALUE_UNQUOTED,u="attribValue"}";"===o?(t[u]+=j(t),t.entity="",t.state=s):y(t.entity.length?p:f,o)?t.entity+=o:(M(t,"Invalid character in entity name"),t[u]+="&"+t.entity+o,t.entity="",t.state=s);continue;default:throw new Error(t,"Unknown state: "+t.state)}return t.position>=t.bufferCheckPosition&&function(e){for(var t=Math.max(n.MAX_BUFFER_LENGTH,10),i=0,o=0,a=r.length;ot)switch(r[o]){case"textNode":O(e);break;case"cdata":C(e,"oncdata",e.cdata),e.cdata="";break;case"script":C(e,"onscript",e.script),e.script="";break;default:A(e,"Max buffer length exceeded: "+r[o])}i=Math.max(i,s)}e.bufferCheckPosition=n.MAX_BUFFER_LENGTH-i+e.position}(t),t},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){!function(e){O(e),""!==e.cdata&&(C(e,"oncdata",e.cdata),e.cdata=""),""!==e.script&&(C(e,"onscript",e.script),e.script="")}(this)}};try{i=e("stream").Stream}catch(_){i=function(){}}var a=n.EVENTS.filter(function(e){return"error"!==e&&"end"!==e});function s(e,t){if(!(this instanceof s))return new s(e,t);i.apply(this),this._parser=new o(e,t),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(e){n.emit("error",e),n._parser.error=null},this._decoder=null,a.forEach(function(e){Object.defineProperty(n,"on"+e,{get:function(){return n._parser["on"+e]},set:function(t){if(!t)return n.removeAllListeners(e),n._parser["on"+e]=t,t;n.on(e,t)},enumerable:!0,configurable:!1})})}(s.prototype=Object.create(i.prototype,{constructor:{value:s}})).write=function(n){if("function"==typeof t&&"function"==typeof t.isBuffer&&t.isBuffer(n)){if(!this._decoder){var i=e("string_decoder").StringDecoder;this._decoder=new i("utf8")}n=this._decoder.write(n)}return this._parser.write(n.toString()),this.emit("data",n),!0},s.prototype.end=function(e){return e&&e.length&&this.write(e),this._parser.end(),!0},s.prototype.on=function(e,t){var n=this;return!n._parser["on"+e]&&-1!==a.indexOf(e)&&(n._parser["on"+e]=function(){var t=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);t.splice(0,0,e),n.emit.apply(n,t)}),i.prototype.on.call(n,e,t)};var u="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",l={xml:u,xmlns:c},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,d=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,p=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function v(e){return" "===e||"\n"===e||"\r"===e||"\t"===e}function g(e){return'"'===e||"'"===e}function m(e){return">"===e||v(e)}function y(e,t){return e.test(t)}function b(e,t){return!y(e,t)}var _,w,k,x=0;for(var S in n.STATE={BEGIN:x++,BEGIN_WHITESPACE:x++,TEXT:x++,TEXT_ENTITY:x++,OPEN_WAKA:x++,SGML_DECL:x++,SGML_DECL_QUOTED:x++,DOCTYPE:x++,DOCTYPE_QUOTED:x++,DOCTYPE_DTD:x++,DOCTYPE_DTD_QUOTED:x++,COMMENT_STARTING:x++,COMMENT:x++,COMMENT_ENDING:x++,COMMENT_ENDED:x++,CDATA:x++,CDATA_ENDING:x++,CDATA_ENDING_2:x++,PROC_INST:x++,PROC_INST_BODY:x++,PROC_INST_ENDING:x++,OPEN_TAG:x++,OPEN_TAG_SLASH:x++,ATTRIB:x++,ATTRIB_NAME:x++,ATTRIB_NAME_SAW_WHITE:x++,ATTRIB_VALUE:x++,ATTRIB_VALUE_QUOTED:x++,ATTRIB_VALUE_CLOSED:x++,ATTRIB_VALUE_UNQUOTED:x++,ATTRIB_VALUE_ENTITY_Q:x++,ATTRIB_VALUE_ENTITY_U:x++,CLOSE_TAG:x++,CLOSE_TAG_SAW_WHITE:x++,SCRIPT:x++,SCRIPT_ENDING:x++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(e){var t=n.ENTITIES[e],i="number"==typeof t?String.fromCharCode(t):t;n.ENTITIES[e]=i}),n.STATE)n.STATE[n.STATE[S]]=S;function E(e,t,n){e[t]&&e[t](n)}function C(e,t,n){e.textNode&&O(e),E(e,t,n)}function O(e){e.textNode=T(e.opt,e.textNode),e.textNode&&E(e,"ontext",e.textNode),e.textNode=""}function T(e,t){return e.trim&&(t=t.trim()),e.normalize&&(t=t.replace(/\s+/g," ")),t}function A(e,t){return O(e),e.trackPosition&&(t+="\nLine: "+e.line+"\nColumn: "+e.column+"\nChar: "+e.c),t=new Error(t),e.error=t,E(e,"onerror",t),e}function P(e){return e.sawRoot&&!e.closedRoot&&M(e,"Unclosed root tag"),e.state!==x.BEGIN&&e.state!==x.BEGIN_WHITESPACE&&e.state!==x.TEXT&&A(e,"Unexpected end"),O(e),e.c="",e.closed=!0,E(e,"onend"),o.call(e,e.strict,e.opt),e}function M(e,t){if("object"!=typeof e||!(e instanceof o))throw new Error("bad call to strictFail");e.strict&&A(e,t)}function I(e){e.strict||(e.tagName=e.tagName[e.looseCase]());var t=e.tags[e.tags.length-1]||e,n=e.tag={name:e.tagName,attributes:{}};e.opt.xmlns&&(n.ns=t.ns),e.attribList.length=0,C(e,"onopentagstart",n)}function R(e,t){var n=e.indexOf(":")<0?["",e]:e.split(":"),i=n[0],r=n[1];return t&&"xmlns"===e&&(i="xmlns",r=""),{prefix:i,local:r}}function D(e){if(e.strict||(e.attribName=e.attribName[e.looseCase]()),-1!==e.attribList.indexOf(e.attribName)||e.tag.attributes.hasOwnProperty(e.attribName))e.attribName=e.attribValue="";else{if(e.opt.xmlns){var t=R(e.attribName,!0),n=t.local;if("xmlns"===t.prefix)if("xml"===n&&e.attribValue!==u)M(e,"xml: prefix must be bound to "+u+"\nActual: "+e.attribValue);else if("xmlns"===n&&e.attribValue!==c)M(e,"xmlns: prefix must be bound to "+c+"\nActual: "+e.attribValue);else{var i=e.tag,r=e.tags[e.tags.length-1]||e;i.ns===r.ns&&(i.ns=Object.create(r.ns)),i.ns[n]=e.attribValue}e.attribList.push([e.attribName,e.attribValue])}else e.tag.attributes[e.attribName]=e.attribValue,C(e,"onattribute",{name:e.attribName,value:e.attribValue});e.attribName=e.attribValue=""}}function N(e,t){if(e.opt.xmlns){var n=e.tag,i=R(e.tagName);n.prefix=i.prefix,n.local=i.local,n.uri=n.ns[i.prefix]||"",n.prefix&&!n.uri&&(M(e,"Unbound namespace prefix: "+JSON.stringify(e.tagName)),n.uri=i.prefix),n.ns&&(e.tags[e.tags.length-1]||e).ns!==n.ns&&Object.keys(n.ns).forEach(function(t){C(e,"onopennamespace",{prefix:t,uri:n.ns[t]})});for(var r=0,o=e.attribList.length;r",e.tagName="",void(e.state=x.SCRIPT);C(e,"onscript",e.script),e.script=""}var t=e.tags.length,n=e.tagName;e.strict||(n=n[e.looseCase]());for(var i=n;t--&&e.tags[t].name!==i;)M(e,"Unexpected close tag");if(t<0)return M(e,"Unmatched closing tag: "+e.tagName),e.textNode+="",void(e.state=x.TEXT);e.tagName=n;for(var r=e.tags.length;r-- >t;){var o=e.tag=e.tags.pop();e.tagName=e.tag.name,C(e,"onclosetag",e.tagName);var a={};for(var s in o.ns)a[s]=o.ns[s];e.opt.xmlns&&o.ns!==(e.tags[e.tags.length-1]||e).ns&&Object.keys(o.ns).forEach(function(t){C(e,"onclosenamespace",{prefix:t,uri:o.ns[t]})})}0===t&&(e.closedRoot=!0),e.tagName=e.attribValue=e.attribName="",e.attribList.length=0,e.state=x.TEXT}function j(e){var t,n=e.entity,i=n.toLowerCase(),r="";return e.ENTITIES[n]?e.ENTITIES[n]:e.ENTITIES[i]?e.ENTITIES[i]:("#"===(n=i).charAt(0)&&("x"===n.charAt(1)?(n=n.slice(2),r=(t=parseInt(n,16)).toString(16)):(n=n.slice(1),r=(t=parseInt(n,10)).toString(10))),n=n.replace(/^0+/,""),isNaN(t)||r.toLowerCase()!==n?(M(e,"Invalid character entity"),"&"+e.entity+";"):String.fromCodePoint(t))}function F(e,t){"<"===t?(e.state=x.OPEN_WAKA,e.startTagPosition=e.position):v(t)||(M(e,"Non-whitespace before first tag."),e.textNode=t,e.state=x.TEXT)}function B(e,t){var n="";return t1114111||w(o)!==o)throw RangeError("Invalid code point: "+o);o<=65535?t.push(o):t.push(55296+((o-=65536)>>10),o%1024+56320),(n+1===i||t.length>e)&&(r+=_.apply(null,t),t.length=0)}return r},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:k,configurable:!0,writable:!0}):String.fromCodePoint=k)}(void 0===n?this.sax={}:n)}).call(this)}).call(this,e("buffer").Buffer)},{buffer:6,stream:87,string_decoder:5}],86:[function(e,t,n){(function(e,t){(function(){!function(t,n){"use strict";if(!t.setImmediate){var i,r=1,o={},a=!1,s=t.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(t);u=u&&u.setTimeout?u:t,"[object process]"==={}.toString.call(t.process)?i=function(t){e.nextTick(function(){d(t)})}:function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?(c="setImmediate$"+Math.random()+"$",l=function(e){e.source===t&&"string"==typeof e.data&&0===e.data.indexOf(c)&&d(+e.data.slice(c.length))},t.addEventListener?t.addEventListener("message",l,!1):t.attachEvent("onmessage",l),i=function(e){t.postMessage(c+e,"*")}):t.MessageChannel?function(){var e=new MessageChannel;e.port1.onmessage=function(e){d(e.data)},i=function(t){e.port2.postMessage(t)}}():s&&"onreadystatechange"in s.createElement("script")?function(){var e=s.documentElement;i=function(t){var n=s.createElement("script");n.onreadystatechange=function(){d(t),n.onreadystatechange=null,e.removeChild(n),n=null},e.appendChild(n)}}():i=function(e){setTimeout(d,0,e)},u.setImmediate=function(e){"function"!=typeof e&&(e=new Function(""+e));for(var t=new Array(arguments.length-1),n=0;n=0&&(e._idleTimeoutId=setTimeout(function(){e._onTimeout&&e._onTimeout()},t))},n.setImmediate="function"==typeof t?t:function(e){var t=u++,i=!(arguments.length<2)&&a.call(arguments,1);return s[t]=!0,r(function(){s[t]&&(i?e.apply(null,i):e.call(null),n.clearImmediate(t))}),t},n.clearImmediate="function"==typeof i?i:function(e){delete s[e]}}).call(this)}).call(this,e("timers").setImmediate,e("timers").clearImmediate)},{"process/browser.js":44,timers:89}],90:[function(e,t,n){(function(e){(function(){function n(t){try{if(!e.localStorage)return!1}catch(i){return!1}var n=e.localStorage[t];return null!=n&&"true"===String(n).toLowerCase()}t.exports=function(e,t){if(n("noDeprecation"))return e;var i=!1;return function(){if(!i){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),i=!0}return e.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],91:[function(e,t,n){"use strict";t.exports=function(e){e.prototype[Symbol.iterator]=regeneratorRuntime.mark(function e(){var t;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:t=this.head;case 1:if(!t){e.next=7;break}return e.next=4,t.value;case 4:t=t.next,e.next=1;break;case 7:case"end":return e.stop()}},e,this)})}},{}],92:[function(e,t,n){"use strict";function i(e){var t=this;if(t instanceof i||(t=new i),t.tail=null,t.head=null,t.length=0,e&&"function"==typeof e.forEach)e.forEach(function(e){t.push(e)});else if(arguments.length>0)for(var n=0,r=arguments.length;n1)n=t;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,n=this.head.value}for(var r=0;null!==i;r++)n=e(n,i.value,r),i=i.next;return n},i.prototype.reduceReverse=function(e,t){var n,i=this.tail;if(arguments.length>1)n=t;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,n=this.tail.value}for(var r=this.length-1;null!==i;r--)n=e(n,i.value,r),i=i.prev;return n},i.prototype.toArray=function(){for(var e=new Array(this.length),t=0,n=this.head;null!==n;t++)e[t]=n.value,n=n.next;return e},i.prototype.toArrayReverse=function(){for(var e=new Array(this.length),t=0,n=this.tail;null!==n;t++)e[t]=n.value,n=n.prev;return e},i.prototype.slice=function(e,t){(t=t||this.length)<0&&(t+=this.length),(e=e||0)<0&&(e+=this.length);var n=new i;if(tthis.length&&(t=this.length);for(var r=0,o=this.head;null!==o&&rthis.length&&(t=this.length);for(var r=this.length,o=this.tail;null!==o&&r>t;r--)o=o.prev;for(;null!==o&&r>e;r--,o=o.prev)n.push(o.value);return n},i.prototype.splice=function(e,t){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);for(var n=0,i=this.head;null!==i&&n is not a method!");return{configurable:i.boolTrue,get:function(){var e=n.value.bind(this);return Object.defineProperty(this,t,{value:e,configurable:i.boolTrue,writable:i.boolTrue}),e}}}t.ak=r,t.ZP=r},97266:function(e,t,n){e.exports={ResizeSensor:n(69835),ElementQueries:n(54845)}},54845:function(e,t,n){"use strict";var i,r,o;"undefined"!=typeof window&&window,r=[n(69835)],void 0!==(o="function"==typeof(i=function(e){var t=function(){var t,n={},i=[];function r(e){e||(e=document.documentElement);var t=window.getComputedStyle(e,null).fontSize;return parseFloat(t)||16}function o(e,t){var n=t.split(/\d/),i=n[n.length-1];switch(t=parseFloat(t),i){case"px":return t;case"em":return t*r(e);case"rem":return t*r();case"vw":return t*document.documentElement.clientWidth/100;case"vh":return t*document.documentElement.clientHeight/100;case"vmin":case"vmax":var o=document.documentElement.clientWidth/100,a=document.documentElement.clientHeight/100;return t*(0,Math["vmin"===i?"min":"max"])(o,a);default:return t}}function a(e,t){this.element=e;var i,r,a,s,u,c,l,h,d=["min-width","min-height","max-width","max-height"];this.call=function(){for(i in a=function(e){if(!e.getBoundingClientRect)return{width:e.offsetWidth,height:e.offsetHeight};var t=e.getBoundingClientRect();return{width:Math.round(t.width),height:Math.round(t.height)}}(this.element),c={},n[t])!n[t].hasOwnProperty(i)||(s=o(this.element,(r=n[t][i]).value),u="width"===r.property?a.width:a.height,l="","min"===r.mode&&u>=s&&(l+=r.value),"max"===r.mode&&u<=s&&(l+=r.value),c[h=r.mode+"-"+r.property]||(c[h]=""),l&&-1===(" "+c[h]+" ").indexOf(" "+l+" ")&&(c[h]+=" "+l));for(var e in d)!d.hasOwnProperty(e)||(c[d[e]]?this.element.setAttribute(d[e],c[d[e]].substr(1)):this.element.removeAttribute(d[e]))}}function s(t,n){t.elementQueriesSetupInformation||(t.elementQueriesSetupInformation=new a(t,n)),t.elementQueriesSensor||(t.elementQueriesSensor=new e(t,function(){t.elementQueriesSetupInformation.call()}))}function u(e,r,o,a){if(void 0===n[e]){n[e]=[];var s=i.length;t.innerHTML+="\n"+e+" {animation: 0.1s element-queries;}",t.innerHTML+="\n"+e+" > .resize-sensor {min-width: "+s+"px;}",i.push(e)}n[e].push({mode:r,property:o,value:a})}function c(e){var t;if(document.querySelectorAll&&(t=e?e.querySelectorAll.bind(e):document.querySelectorAll.bind(document)),!t&&"undefined"!=typeof $$&&(t=$$),!t&&"undefined"!=typeof jQuery&&(t=jQuery),!t)throw"No document.querySelectorAll, jQuery or Mootools's $$ found.";return t}function l(t){var n=[],i=[],r=[],o=0,a=-1,s=[];for(var u in t.children)if(t.children.hasOwnProperty(u)&&t.children[u].tagName&&"img"===t.children[u].tagName.toLowerCase()){n.push(t.children[u]);var c=t.children[u].getAttribute("min-width")||t.children[u].getAttribute("data-min-width"),l=t.children[u].getAttribute("data-src")||t.children[u].getAttribute("url");r.push(l),i.push({minWidth:c}),c?t.children[u].style.display="none":(o=n.length-1,t.children[u].style.display="block")}function h(){var e,u=!1;for(e in n)!n.hasOwnProperty(e)||i[e].minWidth&&t.offsetWidth>i[e].minWidth&&(u=e);if(u||(u=o),a!==u)if(s[u])n[a].style.display="none",n[u].style.display="block",a=u;else{var c=new Image;c.onload=function(){n[u].src=r[u],n[a].style.display="none",n[u].style.display="block",s[u]=!0,a=u},c.src=r[u]}else n[u].src=r[u]}a=o,t.resizeSensorInstance=new e(t,h),h()}var h=/,?[\s\t]*([^,\n]*?)((?:\[[\s\t]*?(?:min|max)-(?:width|height)[\s\t]*?[~$\^]?=[\s\t]*?"[^"]*?"[\s\t]*?])+)([^,\n\s\{]*)/gim,d=/\[[\s\t]*?(min|max)-(width|height)[\s\t]*?[~$\^]?=[\s\t]*?"([^"]*?)"[\s\t]*?]/gim;function f(e){var t,n,i,r;for(e=e.replace(/'/g,'"');null!==(t=h.exec(e));)for(n=t[1]+t[3],i=t[2];null!==(r=d.exec(i));)u(n,r[1],r[2],r[3])}function p(e){var t="";if(e)if("string"==typeof e)(-1!==(e=e.toLowerCase()).indexOf("min-width")||-1!==e.indexOf("max-width"))&&f(e);else for(var n=0,i=e.length;n img, [data-responsive-image] {overflow: hidden; padding: 0; } [responsive-image] > img, [data-responsive-image] > img {width: 100%;}",t.innerHTML+="\n@keyframes element-queries { 0% { visibility: inherit; } }",document.getElementsByTagName("head")[0].appendChild(t),v=!0);for(var r=0,o=document.styleSheets.length;r0&&a.length>r&&!a.warned){a.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=a.length,console&&console.warn&&console.warn(s)}return e}function C(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function O(e,t,n){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},r=C.bind(i);return r.listener=n,i.wrapFn=r,r}function T(e,t,n){var i=e._events;if(void 0===i)return[];var r=i[t];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(o=t[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var s=r[e];if(void 0===s)return!1;if("function"==typeof s)b(s,this,t);else{var u=s.length,c=P(s,u);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,r=o;break}if(r<0)return this;0===r?n.shift():function(e,t){for(;t+1=0;i--)this.removeListener(e,t[i]);return this},w.prototype.listeners=function(e){return T(this,e,!0)},w.prototype.rawListeners=function(e){return T(this,e,!1)},w.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):A.call(e,t)},w.prototype.listenerCount=A,w.prototype.eventNames=function(){return this._eventsCount>0?g(this._events):[]},I.prototype.next=function(){if(this.done)return{done:!0};var e=this._next();return e.done&&(this.done=!0),e},"undefined"!=typeof Symbol&&(I.prototype[Symbol.iterator]=function(){return this}),I.of=function(){var e=arguments,t=e.length,n=0;return new I(function(){return n>=t?{done:!0}:{done:!1,value:e[n++]}})},I.empty=function(){var e=new I(null);return e.done=!0,e},I.is=function(e){return e instanceof I||"object"==typeof e&&null!==e&&"function"==typeof e.next};var R=I,D=function(e,t){for(var n,i=arguments.length>1?t:1/0,r=i!==1/0?new Array(i):[],o=0;;){if(o===i)return r;if((n=e.next()).done)return o!==t?r.slice(0,o):r;r[o++]=n.value}},N=function(e){function n(t,n){var i;return(i=e.call(this)||this).name="GraphError",i.message=t||"",i.data=n||{},i}return t(n,e),n}(a(Error)),L=function(e){function n(t,i){var r;return(r=e.call(this,t,i)||this).name="InvalidArgumentsGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(s(r),n.prototype.constructor),r}return t(n,e),n}(N),j=function(e){function n(t,i){var r;return(r=e.call(this,t,i)||this).name="NotFoundGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(s(r),n.prototype.constructor),r}return t(n,e),n}(N),F=function(e){function n(t,i){var r;return(r=e.call(this,t,i)||this).name="UsageGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(s(r),n.prototype.constructor),r}return t(n,e),n}(N);function B(e,t){this.key=e,this.attributes=t,this.inDegree=0,this.outDegree=0,this.undirectedDegree=0,this.directedSelfLoops=0,this.undirectedSelfLoops=0,this.in={},this.out={},this.undirected={}}function V(e,t){this.key=e,this.attributes=t,this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}}function z(e,t){this.key=e,this.attributes=t,this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}}function U(e,t,n,i,r,o){this.key=t,this.attributes=o,this.undirected=e,this.source=i,this.target=r,this.generatedKey=n}function H(e,t,n,i,r,o,a){var s,u,c="out",l="in";if(t&&(c=l="undirected"),e.multi){if(void 0===(u=(s=o[c])[r])&&(u=new Set,s[r]=u),u.add(n),i===r&&t)return;void 0===(s=a[l])[i]&&(s[i]=u)}else{if(o[c][r]=n,i===r&&t)return;a[l][i]=n}}function G(e,t,n){var i=e.multi,r=n.source,o=n.target,a=r.key,s=o.key,u=r[t?"undirected":"out"],c=t?"undirected":"in";if(s in u)if(i){var l=u[s];1===l.size?(delete u[s],delete o[c][a]):l.delete(n)}else delete u[s];i||delete o[c][a]}V.prototype.upgradeToMixed=function(){this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}},z.prototype.upgradeToMixed=function(){this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}};var W=[{name:function(e){return"get".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return r.attributes[i]}}},{name:function(e){return"get".concat(e,"Attributes")},attacher:function(e,t,n){e.prototype[t]=function(e){var i;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>1){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var r=""+e,o=""+arguments[1];if(!(i=c(this,r,o,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(r,'" - "').concat(o,'").'))}else if(!(i=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&i.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return i.attributes}}},{name:function(e){return"has".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return r.attributes.hasOwnProperty(i)}}},{name:function(e){return"set".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i,r){var o;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var a=""+e,s=""+i;if(i=arguments[2],r=arguments[3],!(o=c(this,a,s,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(a,'" - "').concat(s,'").'))}else if(!(o=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&o.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return o.attributes[i]=r,this.emit("edgeAttributesUpdated",{key:o.key,type:"set",attributes:o.attributes,name:i}),this}}},{name:function(e){return"update".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i,r){var o;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var a=""+e,s=""+i;if(i=arguments[2],r=arguments[3],!(o=c(this,a,s,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(a,'" - "').concat(s,'").'))}else if(!(o=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("function"!=typeof r)throw new L("Graph.".concat(t,": updater should be a function."));if("mixed"!==n&&o.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return o.attributes[i]=r(o.attributes[i]),this.emit("edgeAttributesUpdated",{key:o.key,type:"set",attributes:o.attributes,name:i}),this}}},{name:function(e){return"remove".concat(e,"Attribute")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return delete r.attributes[i],this.emit("edgeAttributesUpdated",{key:r.key,type:"remove",attributes:r.attributes,name:i}),this}}},{name:function(e){return"replace".concat(e,"Attributes")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(t,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return r.attributes=i,this.emit("edgeAttributesUpdated",{key:r.key,type:"replace",attributes:r.attributes}),this}}},{name:function(e){return"merge".concat(e,"Attributes")},attacher:function(e,t,n){e.prototype[t]=function(e,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(t,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(t,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+e,a=""+i;if(i=arguments[2],!(r=c(this,o,a,n)))throw new j("Graph.".concat(t,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(r=this._edges.get(e=""+e)))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(t,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(t,': could not find the "').concat(e,'" ').concat(n," edge in the graph."));return u(r.attributes,i),this.emit("edgeAttributesUpdated",{key:r.key,type:"merge",attributes:r.attributes,data:i}),this}}}],q=R,X=function(){var e,t=arguments,n=-1;return new q(function i(){if(!e){if(++n>=t.length)return{done:!0};e=t[n]}var r=e.next();return r.done?(e=null,i()):r})},Y=[{name:"edges",type:"mixed"},{name:"inEdges",type:"directed",direction:"in"},{name:"outEdges",type:"directed",direction:"out"},{name:"inboundEdges",type:"mixed",direction:"in"},{name:"outboundEdges",type:"mixed",direction:"out"},{name:"directedEdges",type:"directed"},{name:"undirectedEdges",type:"undirected"}];function K(e,t){for(var n in t)e.push(t[n].key)}function $(e,t){for(var n in t)t[n].forEach(function(t){return e.push(t.key)})}function Q(e,t,n){for(var i in e)if(i!==n){var r=e[i];t(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey)}}function Z(e,t,n){for(var i in e)i!==n&&e[i].forEach(function(e){return t(e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes,e.undirected,e.generatedKey)})}function J(e,t,n){for(var i in e)if(i!==n){var r=e[i];if(t(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey))return!0}return!1}function ee(e,t,n){var i,r,o,a,s;for(var u in e)if(u!==n)for(i=e[u].values();!0!==(r=i.next()).done;)if(a=(o=r.value).source,t(o.key,o.attributes,a.key,(s=o.target).key,a.attributes,s.attributes,o.undirected,o.generatedKey))return!0;return!1}function te(e,t){var n=Object.keys(e),i=n.length,r=null,o=0;return new R(function a(){var s;if(r){var u=r.next();if(u.done)return r=null,o++,a();s=u.value}else{if(o>=i)return{done:!0};var c=n[o];if(c===t)return o++,a();if((s=e[c])instanceof Set)return r=s.values(),a();o++}return{done:!1,value:[s.key,s.attributes,s.source.key,s.target.key,s.source.attributes,s.target.attributes]}})}function ne(e,t,n){var i=t[n];i&&e.push(i.key)}function ie(e,t,n){var i=t[n];i&&i.forEach(function(t){return e.push(t.key)})}function re(e,t,n){var i=e[t];if(i){var r=i.source,o=i.target;n(i.key,i.attributes,r.key,o.key,r.attributes,o.attributes,i.undirected,i.generatedKey)}}function oe(e,t,n){var i=e[t];i&&i.forEach(function(e){return n(e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes,e.undirected,e.generatedKey)})}function ae(e,t,n){var i=e[t];if(i){var r=i.source,o=i.target;return n(i.key,i.attributes,r.key,o.key,r.attributes,o.attributes,i.undirected,i.generatedKey)}}function se(e,t,n){var i=e[t];if(i){for(var r,o,a=i.values();!0!==(r=a.next()).done;)if(n((o=r.value).key,o.attributes,o.source.key,o.target.key,o.source.attributes,o.target.attributes,o.undirected,o.generatedKey))return!0;return!1}}function ue(e,t){var n=e[t];if(n instanceof Set){var i=n.values();return new R(function(){var e=i.next();if(e.done)return e;var t=e.value;return{done:!1,value:[t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes]}})}return R.of([n.key,n.attributes,n.source.key,n.target.key,n.source.attributes,n.target.attributes])}function ce(e,t){if(0===e.size)return[];if("mixed"===t||t===e.type)return"function"==typeof Array.from?Array.from(e._edges.keys()):D(e._edges.keys(),e._edges.size);for(var n,i,r=new Array("undirected"===t?e.undirectedSize:e.directedSize),o="undirected"===t,a=e._edges.values(),s=0;!0!==(n=a.next()).done;)(i=n.value).undirected===o&&(r[s++]=i.key);return r}function le(e,t,n){if(0!==e.size)for(var i,r,o="mixed"!==t&&t!==e.type,a="undirected"===t,s=e._edges.values();!0!==(i=s.next()).done;)if(r=i.value,!o||r.undirected===a){var u=r.source,c=r.target;n(r.key,r.attributes,u.key,c.key,u.attributes,c.attributes,r.undirected,r.generatedKey)}}function he(e,t,n){if(0!==e.size)for(var i,r,o="mixed"!==t&&t!==e.type,a="undirected"===t,s=e._edges.values();!0!==(i=s.next()).done;)if(r=i.value,!o||r.undirected===a){var u=r.source,c=r.target;if(n(r.key,r.attributes,u.key,c.key,u.attributes,c.attributes,r.undirected,r.generatedKey))break}}function de(e,t){if(0===e.size)return R.empty();var n="mixed"!==t&&t!==e.type,i="undirected"===t,r=e._edges.values();return new R(function(){for(var e,t;;){if((e=r.next()).done)return e;if(t=e.value,!n||t.undirected===i)break}return{value:[t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes],done:!1}})}function fe(e,t,n,i){var r=[],o=e?$:K;return"undirected"!==t&&("out"!==n&&o(r,i.in),"in"!==n&&o(r,i.out),!n&&i.directedSelfLoops>0&&r.splice(r.lastIndexOf(i.key),1)),"directed"!==t&&o(r,i.undirected),r}function pe(e,t,n,i,r){var o=e?Z:Q;"undirected"!==t&&("out"!==n&&o(i.in,r),"in"!==n&&o(i.out,r,n?null:i.key)),"directed"!==t&&o(i.undirected,r)}function ve(e,t,n,i,r){var o=e?ee:J;"undirected"!==t&&("out"!==n&&o(i.in,r)||"in"!==n&&o(i.out,r,n?null:i.key))||"directed"===t||o(i.undirected,r)}function ge(e,t,n){var i=R.empty();return"undirected"!==e&&("out"!==t&&void 0!==n.in&&(i=X(i,te(n.in))),"in"!==t&&void 0!==n.out&&(i=X(i,te(n.out,t?null:n.key)))),"directed"!==e&&void 0!==n.undirected&&(i=X(i,te(n.undirected))),i}function me(e,t,n,i,r){var o=t?ie:ne,a=[];return"undirected"!==e&&(void 0!==i.in&&"out"!==n&&o(a,i.in,r),void 0!==i.out&&"in"!==n&&o(a,i.out,r),!n&&i.directedSelfLoops>0&&a.splice(a.lastIndexOf(i.key),1)),"directed"!==e&&void 0!==i.undirected&&o(a,i.undirected,r),a}function ye(e,t,n,i,r,o){var a=t?oe:re;"undirected"!==e&&(void 0!==i.in&&"out"!==n&&a(i.in,r,o),i.key!==r&&void 0!==i.out&&"in"!==n&&a(i.out,r,o)),"directed"!==e&&void 0!==i.undirected&&a(i.undirected,r,o)}function be(e,t,n,i,r,o){var a=t?se:ae;"undirected"!==e&&(void 0!==i.in&&"out"!==n&&a(i.in,r,o)||i.key!==r&&void 0!==i.out&&"in"!==n&&a(i.out,r,o,n?null:i.key))||"directed"===e||void 0===i.undirected||a(i.undirected,r,o)}function _e(e,t,n,i){var r=R.empty();return"undirected"!==e&&(void 0!==n.in&&"out"!==t&&i in n.in&&(r=X(r,ue(n.in,i))),void 0!==n.out&&"in"!==t&&i in n.out&&(r=X(r,ue(n.out,i)))),"directed"!==e&&void 0!==n.undirected&&i in n.undirected&&(r=X(r,ue(n.undirected,i))),r}var we=[{name:"neighbors",type:"mixed"},{name:"inNeighbors",type:"directed",direction:"in"},{name:"outNeighbors",type:"directed",direction:"out"},{name:"inboundNeighbors",type:"mixed",direction:"in"},{name:"outboundNeighbors",type:"mixed",direction:"out"},{name:"directedNeighbors",type:"directed"},{name:"undirectedNeighbors",type:"undirected"}];function ke(e,t){if(void 0!==t)for(var n in t)e.add(n)}function xe(e,t,n){if("mixed"!==e){if("undirected"===e)return Object.keys(n.undirected);if("string"==typeof t)return Object.keys(n[t])}var i=new Set;return"undirected"!==e&&("out"!==t&&ke(i,n.in),"in"!==t&&ke(i,n.out)),"directed"!==e&&ke(i,n.undirected),D(i.values(),i.size)}function Se(e,t,n){for(var i in t){var r=t[i];r instanceof Set&&(r=r.values().next().value);var o=r.source,a=o===e?r.target:o;n(a.key,a.attributes)}}function Ee(e,t,n,i){for(var r in n){var o=n[r];o instanceof Set&&(o=o.values().next().value);var a=o.source,s=a===t?o.target:a;e.has(s.key)||(e.add(s.key),i(s.key,s.attributes))}}function Ce(e,t,n){for(var i in t){var r=t[i];r instanceof Set&&(r=r.values().next().value);var o=r.source,a=o===e?r.target:o;if(n(a.key,a.attributes))return!0}return!1}function Oe(e,t,n,i){for(var r in n){var o=n[r];o instanceof Set&&(o=o.values().next().value);var a=o.source,s=a===t?o.target:a;if(!e.has(s.key)&&(e.add(s.key),i(s.key,s.attributes)))return!0}return!1}function Te(e,t){var n=Object.keys(t),i=n.length,r=0;return new R(function(){if(r>=i)return{done:!0};var o=t[n[r++]];o instanceof Set&&(o=o.values().next().value);var a=o.source,s=a===e?o.target:a;return{done:!1,value:[s.key,s.attributes]}})}function Ae(e,t,n){var i=Object.keys(n),r=i.length,o=0;return new R(function a(){if(o>=r)return{done:!0};var s=n[i[o++]];s instanceof Set&&(s=s.values().next().value);var u=s.source,c=u===t?s.target:u;return e.has(c.key)?a():(e.add(c.key),{done:!1,value:[c.key,c.attributes]})})}function Pe(e,t,n,i,r){var o=e._nodes.get(i);if("undirected"!==t){if("out"!==n&&void 0!==o.in)for(var a in o.in)if(a===r)return!0;if("in"!==n&&void 0!==o.out)for(var s in o.out)if(s===r)return!0}if("directed"!==t&&void 0!==o.undirected)for(var u in o.undirected)if(u===r)return!0;return!1}function Me(e,t,n){for(var i,r,o,a,s,u,c,l=t._nodes.values(),h=t.type;!0!==(i=l.next()).done;){if(r=i.value,"undirected"!==h)for(o in a=r.out)if(u=(s=a[o]).target,c=n(r.key,u.key,r.attributes,u.attributes,s.key,s.attributes,s.undirected,s.generatedKey),e&&c)return;if("directed"!==h)for(o in a=r.undirected)if((u=(s=a[o]).target).key!==o&&(u=s.source),c=n(r.key,u.key,r.attributes,u.attributes,s.key,s.attributes,s.undirected,s.generatedKey),e&&c)return}}function Ie(e,t,n){for(var i,r,o,a,s,u,c,l,h,d=t._nodes.values(),f=t.type;!0!==(i=d.next()).done;){if(r=i.value,"undirected"!==f)for(o in u=r.out)for(a=u[o].values();!0!==(s=a.next()).done;)if(l=(c=s.value).target,h=n(r.key,l.key,r.attributes,l.attributes,c.key,c.attributes,c.undirected,c.generatedKey),e&&h)return;if("directed"!==f)for(o in u=r.undirected)for(a=u[o].values();!0!==(s=a.next()).done;)if((l=(c=s.value).target).key!==o&&(l=c.source),h=n(r.key,l.key,r.attributes,l.attributes,c.key,c.attributes,c.undirected,c.generatedKey),e&&h)return}}function Re(e,t){var n={key:e};return d(t.attributes)||(n.attributes=u({},t.attributes)),n}function De(e,t){var n={source:t.source.key,target:t.target.key};return t.generatedKey||(n.key=e),d(t.attributes)||(n.attributes=u({},t.attributes)),t.undirected&&(n.undirected=!0),n}function Ne(e){return h(e)?"key"in e?!("attributes"in e)||h(e.attributes)&&null!==e.attributes?null:"invalid-attributes":"no-key":"not-object"}function Le(e){return h(e)?"source"in e?"target"in e?!("attributes"in e)||h(e.attributes)&&null!==e.attributes?"undirected"in e&&"boolean"!=typeof e.undirected?"invalid-undirected":null:"invalid-attributes":"no-target":"no-source":"not-object"}var je=new Set(["directed","undirected","mixed"]),Fe=new Set(["domain","_events","_eventsCount","_maxListeners"]),Be={allowSelfLoops:!0,edgeKeyGenerator:null,multi:!1,type:"mixed"};function Ve(e,t,n){var i=new e.NodeDataClass(t,n);return e._nodes.set(t,i),e.emit("nodeAdded",{key:t,attributes:n}),i}function ze(e,t,n,i,r,o,a,s){if(!i&&"undirected"===e.type)throw new F("Graph.".concat(t,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===e.type)throw new F("Graph.".concat(t,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(s&&!h(s))throw new L("Graph.".concat(t,': invalid attributes. Expecting an object but got "').concat(s,'"'));if(o=""+o,a=""+a,s=s||{},!e.allowSelfLoops&&o===a)throw new F("Graph.".concat(t,': source & target are the same ("').concat(o,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var u=e._nodes.get(o),c=e._nodes.get(a);if(!u)throw new j("Graph.".concat(t,': source node "').concat(o,'" not found.'));if(!c)throw new j("Graph.".concat(t,': target node "').concat(a,'" not found.'));var l={key:null,undirected:i,source:o,target:a,attributes:s};if(n&&(r=e._edgeKeyGenerator(l)),e._edges.has(r=""+r))throw new F("Graph.".concat(t,': the "').concat(r,'" edge already exists in the graph.'));if(!e.multi&&(i?void 0!==u.undirected[a]:void 0!==u.out[a]))throw new F("Graph.".concat(t,': an edge linking "').concat(o,'" to "').concat(a,"\" already exists. If you really want to add multiple edges linking those nodes, you should create a multi graph by using the 'multi' option."));var d=new U(i,r,n,u,c,s);return e._edges.set(r,d),o===a?i?(u.undirectedSelfLoops++,e._undirectedSelfLoopCount++):(u.directedSelfLoops++,e._directedSelfLoopCount++):i?(u.undirectedDegree++,c.undirectedDegree++):(u.outDegree++,c.inDegree++),H(e,i,d,o,a,u,c),i?e._undirectedSize++:e._directedSize++,l.key=r,e.emit("edgeAdded",l),r}function Ue(e,t,n,i,r,o,a,s,c){if(!i&&"undirected"===e.type)throw new F("Graph.".concat(t,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===e.type)throw new F("Graph.".concat(t,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(s)if(c){if("function"!=typeof s)throw new L("Graph.".concat(t,': invalid updater function. Expecting a function but got "').concat(s,'"'))}else if(!h(s))throw new L("Graph.".concat(t,': invalid attributes. Expecting an object but got "').concat(s,'"'));var l;if(o=""+o,a=""+a,c&&(l=s,s=void 0),!e.allowSelfLoops&&o===a)throw new F("Graph.".concat(t,': source & target are the same ("').concat(o,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var d,f,p=e._nodes.get(o),v=e._nodes.get(a);if(!n&&(d=e._edges.get(r))){if(d.source.key!==o||d.target.key!==a||i&&(d.source.key!==a||d.target.key!==o))throw new F("Graph.".concat(t,': inconsistency detected when attempting to merge the "').concat(r,'" edge with "').concat(o,'" source & "').concat(a,'" target vs. ("').concat(d.source.key,'", "').concat(d.target.key,'").'));f=d}if(f||e.multi||!p||(f=i?p.undirected[a]:p.out[a]),f)return(c?l:s)?(c?(f.attributes=l(f.attributes),e.emit("edgeAttributesUpdated",{type:"replace",key:f.key,attributes:f.attributes})):(u(f.attributes,s),e.emit("edgeAttributesUpdated",{type:"merge",key:f.key,attributes:f.attributes,data:s})),f.key):f.key;s=s||{},c&&l&&(s=l(s));var g={key:null,undirected:i,source:o,target:a,attributes:s};if(n&&(r=e._edgeKeyGenerator(g)),e._edges.has(r=""+r))throw new F("Graph.".concat(t,': the "').concat(r,'" edge already exists in the graph.'));return p||(p=Ve(e,o,{}),o===a&&(v=p)),v||(v=Ve(e,a,{})),d=new U(i,r,n,p,v,s),e._edges.set(r,d),o===a?i?(p.undirectedSelfLoops++,e._undirectedSelfLoopCount++):(p.directedSelfLoops++,e._directedSelfLoopCount++):i?(p.undirectedDegree++,v.undirectedDegree++):(p.outDegree++,v.inDegree++),H(e,i,d,o,a,p,v),i?e._undirectedSize++:e._directedSize++,g.key=r,e.emit("edgeAdded",g),r}var He,Ge=function(e){function n(t){var n;if(n=e.call(this)||this,(t=u({},Be,t)).edgeKeyGenerator&&"function"!=typeof t.edgeKeyGenerator)throw new L("Graph.constructor: invalid 'edgeKeyGenerator' option. Expecting a function but got \"".concat(t.edgeKeyGenerator,'".'));if("boolean"!=typeof t.multi)throw new L("Graph.constructor: invalid 'multi' option. Expecting a boolean but got \"".concat(t.multi,'".'));if(!je.has(t.type))throw new L('Graph.constructor: invalid \'type\' option. Should be one of "mixed", "directed" or "undirected" but got "'.concat(t.type,'".'));if("boolean"!=typeof t.allowSelfLoops)throw new L("Graph.constructor: invalid 'allowSelfLoops' option. Expecting a boolean but got \"".concat(t.allowSelfLoops,'".'));var i,r="mixed"===t.type?B:"directed"===t.type?V:z;return f(s(n),"NodeDataClass",r),f(s(n),"_attributes",{}),f(s(n),"_nodes",new Map),f(s(n),"_edges",new Map),f(s(n),"_directedSize",0),f(s(n),"_undirectedSize",0),f(s(n),"_directedSelfLoopCount",0),f(s(n),"_undirectedSelfLoopCount",0),f(s(n),"_edgeKeyGenerator",t.edgeKeyGenerator||(i=0,function(){return i++})),f(s(n),"_options",t),Fe.forEach(function(e){return f(s(n),e,n[e])}),p(s(n),"order",function(){return n._nodes.size}),p(s(n),"size",function(){return n._edges.size}),p(s(n),"directedSize",function(){return n._directedSize}),p(s(n),"undirectedSize",function(){return n._undirectedSize}),p(s(n),"selfLoopCount",function(){return n._directedSelfLoopCount+n._undirectedSelfLoopCount}),p(s(n),"directedSelfLoopCount",function(){return n._directedSelfLoopCount}),p(s(n),"undirectedSelfLoopCount",function(){return n._undirectedSelfLoopCount}),p(s(n),"multi",n._options.multi),p(s(n),"type",n._options.type),p(s(n),"allowSelfLoops",n._options.allowSelfLoops),p(s(n),"implementation",function(){return"graphology"}),n}t(n,e);var i=n.prototype;return i.hasNode=function(e){return this._nodes.has(""+e)},i.hasDirectedEdge=function(e,t){if("undirected"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+e);return!!n&&!n.undirected}if(2===arguments.length){t=""+t;var i=this._nodes.get(e=""+e);if(!i)return!1;var r=i.out[t];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasUndirectedEdge=function(e,t){if("directed"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+e);return!!n&&n.undirected}if(2===arguments.length){t=""+t;var i=this._nodes.get(e=""+e);if(!i)return!1;var r=i.undirected[t];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasEdge=function(e,t){if(1===arguments.length)return this._edges.has(""+e);if(2===arguments.length){t=""+t;var n=this._nodes.get(e=""+e);if(!n)return!1;var i=void 0!==n.out&&n.out[t];return i||(i=void 0!==n.undirected&&n.undirected[t]),!(!i||this.multi&&!i.size)}throw new L("Graph.hasEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.directedEdge=function(e,t){if("undirected"!==this.type){if(e=""+e,t=""+t,this.multi)throw new F("Graph.directedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.directedEdges instead.");var n=this._nodes.get(e);if(!n)throw new j('Graph.directedEdge: could not find the "'.concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j('Graph.directedEdge: could not find the "'.concat(t,'" target node in the graph.'));var i=n.out&&n.out[t]||void 0;return i?i.key:void 0}},i.undirectedEdge=function(e,t){if("directed"!==this.type){if(e=""+e,t=""+t,this.multi)throw new F("Graph.undirectedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.undirectedEdges instead.");var n=this._nodes.get(e);if(!n)throw new j('Graph.undirectedEdge: could not find the "'.concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j('Graph.undirectedEdge: could not find the "'.concat(t,'" target node in the graph.'));var i=n.undirected&&n.undirected[t]||void 0;return i?i.key:void 0}},i.edge=function(e,t){if(this.multi)throw new F("Graph.edge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.edges instead.");t=""+t;var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.edge: could not find the "'.concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j('Graph.edge: could not find the "'.concat(t,'" target node in the graph.'));var i=n.out&&n.out[t]||n.undirected&&n.undirected[t]||void 0;if(i)return i.key},i.inDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.inDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.inDegree: could not find the "'.concat(e,'" node in the graph.'));return"undirected"===this.type?0:n.inDegree+(t?n.directedSelfLoops:0)},i.outDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.outDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.outDegree: could not find the "'.concat(e,'" node in the graph.'));return"undirected"===this.type?0:n.outDegree+(t?n.directedSelfLoops:0)},i.directedDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.directedDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.directedDegree: could not find the "'.concat(e,'" node in the graph.'));if("undirected"===this.type)return 0;var i=t?n.directedSelfLoops:0;return n.inDegree+i+(n.outDegree+i)},i.undirectedDegree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.undirectedDegree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.undirectedDegree: could not find the "'.concat(e,'" node in the graph.'));return"directed"===this.type?0:n.undirectedDegree+2*(t?n.undirectedSelfLoops:0)},i.degree=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof t)throw new L('Graph.degree: Expecting a boolean but got "'.concat(t,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.degree: could not find the "'.concat(e,'" node in the graph.'));var i=0,r=0;return"directed"!==this.type&&(t&&(r=n.undirectedSelfLoops),i+=n.undirectedDegree+2*r),"undirected"!==this.type&&(t&&(r=n.directedSelfLoops),i+=n.inDegree+n.outDegree+2*r),i},i.source=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.source: could not find the "'.concat(e,'" edge in the graph.'));return t.source.key},i.target=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.target: could not find the "'.concat(e,'" edge in the graph.'));return t.target.key},i.extremities=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.extremities: could not find the "'.concat(e,'" edge in the graph.'));return[t.source.key,t.target.key]},i.opposite=function(e,t){e=""+e;var n=this._edges.get(t=""+t);if(!n)throw new j('Graph.opposite: could not find the "'.concat(t,'" edge in the graph.'));var i=n.source.key,r=n.target.key;if(e!==i&&e!==r)throw new j('Graph.opposite: the "'.concat(e,'" node is not attached to the "').concat(t,'" edge (').concat(i,", ").concat(r,")."));return e===i?r:i},i.hasExtremity=function(e,t){t=""+t;var n=this._edges.get(e=""+e);if(!n)throw new j('Graph.hasExtremity: could not find the "'.concat(e,'" edge in the graph.'));return n.source.key===t||n.target.key===t},i.isUndirected=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.isUndirected: could not find the "'.concat(e,'" edge in the graph.'));return t.undirected},i.isDirected=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.isDirected: could not find the "'.concat(e,'" edge in the graph.'));return!t.undirected},i.isSelfLoop=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.isSelfLoop: could not find the "'.concat(e,'" edge in the graph.'));return t.source===t.target},i.hasGeneratedKey=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.hasGeneratedKey: could not find the "'.concat(e,'" edge in the graph.'));return t.generatedKey},i.addNode=function(e,t){return function(e,t,n){if(n&&!h(n))throw new L('Graph.addNode: invalid attributes. Expecting an object but got "'.concat(n,'"'));if(n=n||{},e._nodes.has(t=""+t))throw new F('Graph.addNode: the "'.concat(t,'" node already exist in the graph.'));var i=new e.NodeDataClass(t,n);return e._nodes.set(t,i),e.emit("nodeAdded",{key:t,attributes:n}),i}(this,e,t).key},i.mergeNode=function(e,t){if(t&&!h(t))throw new L('Graph.mergeNode: invalid attributes. Expecting an object but got "'.concat(t,'"'));t=t||{};var n=this._nodes.get(e=""+e);return n?(t&&(u(n.attributes,t),this.emit("nodeAttributesUpdated",{type:"merge",key:e,attributes:n.attributes,data:t})),e):(n=new this.NodeDataClass(e,t),this._nodes.set(e,n),this.emit("nodeAdded",{key:e,attributes:t}),e)},i.updateNode=function(e,t){if(t&&"function"!=typeof t)throw new L('Graph.updateNode: invalid updater function. Expecting a function but got "'.concat(t,'"'));var n=this._nodes.get(e=""+e);if(n)return t&&(n.attributes=t(n.attributes),this.emit("nodeAttributesUpdated",{type:"replace",key:e,attributes:n.attributes})),e;var i=t?t({}):{};return n=new this.NodeDataClass(e,i),this._nodes.set(e,n),this.emit("nodeAdded",{key:e,attributes:i}),e},i.dropNode=function(e){var t=this,n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.dropNode: could not find the "'.concat(e,'" node in the graph.'));this.forEachEdge(e,function(e){t.dropEdge(e)}),this._nodes.delete(e),this.emit("nodeDropped",{key:e,attributes:n.attributes})},i.dropEdge=function(e){var t;if(arguments.length>1){var n=""+arguments[0],i=""+arguments[1];if(!(t=c(this,n,i,this.type)))throw new j('Graph.dropEdge: could not find the "'.concat(n,'" -> "').concat(i,'" edge in the graph.'))}else if(!(t=this._edges.get(e=""+e)))throw new j('Graph.dropEdge: could not find the "'.concat(e,'" edge in the graph.'));this._edges.delete(t.key);var r=t.source,o=t.target,a=t.attributes,s=t.undirected;return r===o?s?(r.undirectedSelfLoops--,this._undirectedSelfLoopCount--):(r.directedSelfLoops--,this._directedSelfLoopCount--):s?(r.undirectedDegree--,o.undirectedDegree--):(r.outDegree--,o.inDegree--),G(this,s,t),s?this._undirectedSize--:this._directedSize--,this.emit("edgeDropped",{key:e,attributes:a,source:r.key,target:o.key,undirected:s}),this},i.clear=function(){this._edges.clear(),this._nodes.clear(),this.emit("cleared")},i.clearEdges=function(){this._edges.clear(),this.clearIndex(),this.emit("edgesCleared")},i.getAttribute=function(e){return this._attributes[e]},i.getAttributes=function(){return this._attributes},i.hasAttribute=function(e){return this._attributes.hasOwnProperty(e)},i.setAttribute=function(e,t){return this._attributes[e]=t,this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:e}),this},i.updateAttribute=function(e,t){if("function"!=typeof t)throw new L("Graph.updateAttribute: updater should be a function.");return this._attributes[e]=t(this._attributes[e]),this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:e}),this},i.removeAttribute=function(e){return delete this._attributes[e],this.emit("attributesUpdated",{type:"remove",attributes:this._attributes,name:e}),this},i.replaceAttributes=function(e){if(!h(e))throw new L("Graph.replaceAttributes: provided attributes are not a plain object.");return this._attributes=e,this.emit("attributesUpdated",{type:"replace",attributes:this._attributes}),this},i.mergeAttributes=function(e){if(!h(e))throw new L("Graph.mergeAttributes: provided attributes are not a plain object.");return u(this._attributes,e),this.emit("attributesUpdated",{type:"merge",attributes:this._attributes,data:e}),this},i.getNodeAttribute=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.getNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));return n.attributes[t]},i.getNodeAttributes=function(e){var t=this._nodes.get(e=""+e);if(!t)throw new j('Graph.getNodeAttributes: could not find the "'.concat(e,'" node in the graph.'));return t.attributes},i.hasNodeAttribute=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));return n.attributes.hasOwnProperty(t)},i.setNodeAttribute=function(e,t,n){var i=this._nodes.get(e=""+e);if(!i)throw new j('Graph.setNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.setNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or value, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");return i.attributes[t]=n,this.emit("nodeAttributesUpdated",{key:e,type:"set",attributes:i.attributes,name:t}),this},i.updateNodeAttribute=function(e,t,n){var i=this._nodes.get(e=""+e);if(!i)throw new j('Graph.updateNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.updateNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or updater, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");if("function"!=typeof n)throw new L("Graph.updateAttribute: updater should be a function.");var r=i.attributes,o=n(r[t]);return r[t]=o,this.emit("nodeAttributesUpdated",{key:e,type:"set",attributes:i.attributes,name:t}),this},i.removeNodeAttribute=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(e,'" node in the graph.'));return delete n.attributes[t],this.emit("nodeAttributesUpdated",{key:e,type:"remove",attributes:n.attributes,name:t}),this},i.replaceNodeAttributes=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.replaceNodeAttributes: could not find the "'.concat(e,'" node in the graph.'));if(!h(t))throw new L("Graph.replaceNodeAttributes: provided attributes are not a plain object.");return n.attributes=t,this.emit("nodeAttributesUpdated",{key:e,type:"replace",attributes:n.attributes}),this},i.mergeNodeAttributes=function(e,t){var n=this._nodes.get(e=""+e);if(!n)throw new j('Graph.mergeNodeAttributes: could not find the "'.concat(e,'" node in the graph.'));if(!h(t))throw new L("Graph.mergeNodeAttributes: provided attributes are not a plain object.");return u(n.attributes,t),this.emit("nodeAttributesUpdated",{key:e,type:"merge",attributes:n.attributes,data:t}),this},i.updateEachNodeAttributes=function(e,t){if("function"!=typeof e)throw new L("Graph.updateEachNodeAttributes: expecting an updater function.");if(t&&!v(t))throw new L("Graph.updateEachNodeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._nodes.values();!0!==(n=r.next()).done;)(i=n.value).attributes=e(i.key,i.attributes);this.emit("eachNodeAttributesUpdated",{hints:t||null})},i.updateEachEdgeAttributes=function(e,t){if("function"!=typeof e)throw new L("Graph.updateEachEdgeAttributes: expecting an updater function.");if(t&&!v(t))throw new L("Graph.updateEachEdgeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._edges.values();!0!==(n=r.next()).done;)(i=n.value).attributes=e(i.key,i.attributes);this.emit("eachEdgeAttributesUpdated",{hints:t||null})},i.forEach=function(e){if("function"!=typeof e)throw new L("Graph.forEach: expecting a callback.");this.multi?Ie(!1,this,e):Me(!1,this,e)},i.forEachUntil=function(e){if("function"!=typeof e)throw new L("Graph.forEach: expecting a callback.");this.multi?Ie(!0,this,e):Me(!0,this,e)},i.adjacency=function(){return this.multi?(f=(u=this)._nodes.values(),p=u.type,v="outer",g=null,new R(function e(){var t;if("outer"===v)return!0===(t=f.next()).done?t:(c=t.value,v="directed",e());if("directed"===v)return"undirected"===p?(v="undirected",e()):(h=c.out,l=Object.keys(c.out),d=0,v="inner-directed",e());if("undirected"===v){if("directed"===p)return v="outer",e();h=c.undirected,l=Object.keys(c.undirected),d=0,v="inner-undirected"}if(!g&&d>=l.length)return v="inner-undirected"===v?"outer":"undirected",e();if(!g){var n=l[d++];return g=h[n].values(),e()}if((t=g.next()).done)return g=null,e();var i=t.value,r=i.target;return"inner-undirected"===v&&r.key===c.key&&(r=i.source),{done:!1,value:[c.key,r.key,c.attributes,r.attributes,i.key,i.attributes]}})):(o=(e=this)._nodes.values(),a=e.type,s="outer",new R(function e(){var u;if("outer"===s)return!0===(u=o.next()).done?u:(t=u.value,s="directed",e());if("directed"===s)return"undirected"===a?(s="undirected",e()):(i=t.out,n=Object.keys(t.out),r=0,s="inner-directed",e());if("undirected"===s){if("directed"===a)return s="outer",e();i=t.undirected,n=Object.keys(t.undirected),r=0,s="inner-undirected"}if(r>=n.length)return s="inner-undirected"===s?"outer":"undirected",e();var c=n[r++],l=i[c],h=l.target;return"inner-undirected"===s&&h.key===t.key&&(h=l.source),{done:!1,value:[t.key,h.key,t.attributes,h.attributes,l.key,l.attributes]}}));var e,t,n,i,r,o,a,s,u,c,l,h,d,f,p,v,g},i.nodes=function(){return"function"==typeof Array.from?Array.from(this._nodes.keys()):D(this._nodes.keys(),this._nodes.size)},i.forEachNode=function(e){if("function"!=typeof e)throw new L("Graph.forEachNode: expecting a callback.");this._nodes.forEach(function(t,n){e(n,t.attributes)})},i.forEachNodeUntil=function(e){if("function"!=typeof e)throw new L("Graph.forEachNode: expecting a callback.");for(var t,n,i=this._nodes.values();!0!==(t=i.next())&&!e((n=t.value).key,n.attributes););},i.nodeEntries=function(){var e=this._nodes.values();return new R(function(){var t=e.next();if(t.done)return t;var n=t.value;return{value:[n.key,n.attributes],done:!1}})},i.exportNode=function(e){var t=this._nodes.get(e=""+e);if(!t)throw new j('Graph.exportNode: could not find the "'.concat(e,'" node in the graph.'));return Re(e,t)},i.exportEdge=function(e){var t=this._edges.get(e=""+e);if(!t)throw new j('Graph.exportEdge: could not find the "'.concat(e,'" edge in the graph.'));return De(e,t)},i.export=function(){var e=new Array(this._nodes.size),t=0;this._nodes.forEach(function(n,i){e[t++]=Re(i,n)});var n=new Array(this._edges.size);return t=0,this._edges.forEach(function(e,i){n[t++]=De(i,e)}),{attributes:this.getAttributes(),nodes:e,edges:n,options:{type:this.type,multi:this.multi,allowSelfLoops:this.allowSelfLoops}}},i.importNode=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Ne(e);if(n){if("not-object"===n)throw new L('Graph.importNode: invalid serialized node. A serialized node should be a plain object with at least a "key" property.');if("no-key"===n)throw new L("Graph.importNode: no key provided.");if("invalid-attributes"===n)throw new L("Graph.importNode: invalid attributes. Attributes should be a plain object, null or omitted.")}var i=e.key,r=e.attributes,o=void 0===r?{}:r;return t?this.mergeNode(i,o):this.addNode(i,o),this},i.importEdge=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Le(e);if(n){if("not-object"===n)throw new L('Graph.importEdge: invalid serialized edge. A serialized edge should be a plain object with at least a "source" & "target" property.');if("no-source"===n)throw new L("Graph.importEdge: missing souce.");if("no-target"===n)throw new L("Graph.importEdge: missing target.");if("invalid-attributes"===n)throw new L("Graph.importEdge: invalid attributes. Attributes should be a plain object, null or omitted.");if("invalid-undirected"===n)throw new L("Graph.importEdge: invalid undirected. Undirected should be boolean or omitted.")}var i=e.source,r=e.target,o=e.attributes,a=void 0===o?{}:o,s=e.undirected,u=void 0!==s&&s;return"key"in e?(t?u?this.mergeUndirectedEdgeWithKey:this.mergeDirectedEdgeWithKey:u?this.addUndirectedEdgeWithKey:this.addDirectedEdgeWithKey).call(this,e.key,i,r,a):(t?u?this.mergeUndirectedEdge:this.mergeDirectedEdge:u?this.addUndirectedEdge:this.addDirectedEdge).call(this,i,r,a),this},i.import=function(e){var t,n,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(l(e))return this.import(e.export(),r),this;if(!h(e))throw new L("Graph.import: invalid argument. Expecting a serialized graph or, alternatively, a Graph instance.");if(e.attributes){if(!h(e.attributes))throw new L("Graph.import: invalid attributes. Expecting a plain object.");r?this.mergeAttributes(e.attributes):this.replaceAttributes(e.attributes)}if(e.nodes){if(i=e.nodes,!Array.isArray(i))throw new L("Graph.import: invalid nodes. Expecting an array.");for(t=0,n=i.length;tn)){var a=new Set;a.add(t.undirected[o]),t.undirected[o]=a,e._nodes.get(o).undirected[n]=a}})),this;var e},i.clearIndex=function(){return this._nodes.forEach(function(e){void 0!==e.in&&(e.in={},e.out={}),void 0!==e.undirected&&(e.undirected={})}),this},i.toJSON=function(){return this.export()},i.toString=function(){return"[object Graph]"},i.inspect=function(){var e=this,t={};this._nodes.forEach(function(e,n){t[n]=e.attributes});var n={},i={};this._edges.forEach(function(t,r){var o=t.undirected?"--":"->",a="",s="(".concat(t.source.key,")").concat(o,"(").concat(t.target.key,")");t.generatedKey?e.multi&&(void 0===i[s]?i[s]=0:i[s]++,a+="".concat(i[s],". ")):a+="[".concat(r,"]: "),n[a+=s]=t.attributes});var r={};for(var o in this)this.hasOwnProperty(o)&&!Fe.has(o)&&"function"!=typeof this[o]&&(r[o]=this[o]);return r.attributes=this._attributes,r.nodes=t,r.edges=n,f(r,"constructor",this.constructor),r},n}(m.exports.EventEmitter);"undefined"!=typeof Symbol&&(Ge.prototype[Symbol.for("nodejs.util.inspect.custom")]=Ge.prototype.inspect),[{name:function(e){return"".concat(e,"Edge")},generateKey:!0},{name:function(e){return"".concat(e,"DirectedEdge")},generateKey:!0,type:"directed"},{name:function(e){return"".concat(e,"UndirectedEdge")},generateKey:!0,type:"undirected"},{name:function(e){return"".concat(e,"EdgeWithKey")}},{name:function(e){return"".concat(e,"DirectedEdgeWithKey")},type:"directed"},{name:function(e){return"".concat(e,"UndirectedEdgeWithKey")},type:"undirected"}].forEach(function(e){["add","merge","update"].forEach(function(t){var n=e.name(t),i="add"===t?ze:Ue;Ge.prototype[n]=e.generateKey?function(r,o,a){return i(this,n,!0,"undirected"===(e.type||this.type),null,r,o,a,"update"===t)}:function(r,o,a,s){return i(this,n,!1,"undirected"===(e.type||this.type),r,o,a,s,"update"===t)}})}),"undefined"!=typeof Symbol&&(Ge.prototype[Symbol.iterator]=Ge.prototype.adjacency),He=Ge,W.forEach(function(e){var t=e.name,n=e.attacher;n(He,t("Edge"),"mixed"),n(He,t("DirectedEdge"),"directed"),n(He,t("UndirectedEdge"),"undirected")}),function(e){Y.forEach(function(t){var n,i,r,o;r=(n=t).type,o=n.direction,e.prototype[i=n.name]=function(e,t){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(!arguments.length)return ce(this,r);if(1===arguments.length){var n=this._nodes.get(e=""+e);if(void 0===n)throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));return fe(this.multi,"mixed"===r?this.type:r,o,n)}if(2===arguments.length){t=""+t;var a=this._nodes.get(e=""+e);if(!a)throw new j("Graph.".concat(i,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(i,': could not find the "').concat(t,'" target node in the graph.'));return me(r,this.multi,o,a,t)}throw new L("Graph.".concat(i,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))},function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1);e.prototype[o]=function(e,t,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return le(this,i,n=e);if(2===arguments.length){n=t;var a=this._nodes.get(e=""+e);if(void 0===a)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));return pe(this.multi,"mixed"===i?this.type:i,r,a,n)}if(3===arguments.length){t=""+t;var s=this._nodes.get(e=""+e);if(!s)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(o,': could not find the "').concat(t,'" target node in the graph.'));return ye(i,this.multi,r,s,t,n)}throw new L("Graph.".concat(o,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(e,t),function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";e.prototype[o]=function(e,t,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return he(this,i,n=e);if(2===arguments.length){n=t;var a=this._nodes.get(e=""+e);if(void 0===a)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));return ve(this.multi,"mixed"===i?this.type:i,r,a,n)}if(3===arguments.length){t=""+t;var s=this._nodes.get(e=""+e);if(!s)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(o,': could not find the "').concat(t,'" target node in the graph.'));return be(i,this.multi,r,s,t,n)}throw new L("Graph.".concat(o,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(e,t),function(e,t){var n=t.type,i=t.direction,r=t.name.slice(0,-1)+"Entries";e.prototype[r]=function(e,t){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return R.empty();if(!arguments.length)return de(this,n);if(1===arguments.length){var o=this._nodes.get(e=""+e);if(!o)throw new j("Graph.".concat(r,': could not find the "').concat(e,'" node in the graph.'));return ge(n,i,o)}if(2===arguments.length){t=""+t;var a=this._nodes.get(e=""+e);if(!a)throw new j("Graph.".concat(r,': could not find the "').concat(e,'" source node in the graph.'));if(!this._nodes.has(t))throw new j("Graph.".concat(r,': could not find the "').concat(t,'" target node in the graph.'));return _e(n,i,a,t)}throw new L("Graph.".concat(r,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))}}(e,t)})}(Ge),function(e){we.forEach(function(t){var n,i,r,o;r=(n=t).type,o=n.direction,e.prototype[i=n.name]=function(e){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(2===arguments.length){var t=""+arguments[0],n=""+arguments[1];if(!this._nodes.has(t))throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));if(!this._nodes.has(n))throw new j("Graph.".concat(i,': could not find the "').concat(n,'" node in the graph.'));return Pe(this,r,o,t,n)}if(1===arguments.length){var a=this._nodes.get(e=""+e);if(void 0===a)throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));return xe("mixed"===r?this.type:r,o,a)}throw new L("Graph.".concat(i,": invalid number of arguments (expecting 1 or 2 and got ").concat(arguments.length,")."))},function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1);e.prototype[o]=function(e,t){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(e=""+e);if(void 0===n)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));!function(e,t,n,i){if("mixed"!==e){if("undirected"===e)return Se(n,n.undirected,i);if("string"==typeof t)return Se(n,n[t],i)}var r=new Set;"undirected"!==e&&("out"!==t&&Ee(r,n,n.in,i),"in"!==t&&Ee(r,n,n.out,i)),"directed"!==e&&Ee(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,t)}}}(e,t),function(e,t){var n=t.name,i=t.type,r=t.direction,o="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";e.prototype[o]=function(e,t){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(e=""+e);if(void 0===n)throw new j("Graph.".concat(o,': could not find the "').concat(e,'" node in the graph.'));!function(e,t,n,i){if("mixed"!==e){if("undirected"===e)return Ce(n,n.undirected,i);if("string"==typeof t)return Ce(n,n[t],i)}var r=new Set;"undirected"!==e&&("out"!==t&&Oe(r,n,n.in,i)||"in"!==t&&Oe(r,n,n.out,i))||"directed"===e||Oe(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,t)}}}(e,t),function(e,t){var n=t.type,i=t.direction,r=t.name.slice(0,-1)+"Entries";e.prototype[r]=function(e){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return R.empty();var t=this._nodes.get(e=""+e);if(void 0===t)throw new j("Graph.".concat(r,': could not find the "').concat(e,'" node in the graph.'));return function(e,t,n){if("mixed"!==e){if("undirected"===e)return Te(n,n.undirected);if("string"==typeof t)return Te(n,n[t])}var i=R.empty(),r=new Set;return"undirected"!==e&&("out"!==t&&(i=X(i,Ae(r,n,n.in))),"in"!==t&&(i=X(i,Ae(r,n,n.out)))),"directed"!==e&&(i=X(i,Ae(r,n,n.undirected))),i}("mixed"===n?this.type:n,i,t)}}(e,t)})}(Ge);var We=function(e){function n(t){var n=u({type:"directed"},t);if("multi"in n&&!1!==n.multi)throw new L("DirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("directed"!==n.type)throw new L('DirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge),qe=function(e){function n(t){var n=u({type:"undirected"},t);if("multi"in n&&!1!==n.multi)throw new L("UndirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("undirected"!==n.type)throw new L('UndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge),Xe=function(e){function n(t){var n=u({multi:!0},t);if("multi"in n&&!0!==n.multi)throw new L("MultiGraph.from: inconsistent indication that the graph should be simple in given options!");return e.call(this,n)||this}return t(n,e),n}(Ge),Ye=function(e){function n(t){var n=u({type:"directed",multi:!0},t);if("multi"in n&&!0!==n.multi)throw new L("MultiDirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("directed"!==n.type)throw new L('MultiDirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge),Ke=function(e){function n(t){var n=u({type:"undirected",multi:!0},t);if("multi"in n&&!0!==n.multi)throw new L("MultiUndirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("undirected"!==n.type)throw new L('MultiUndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return e.call(this,n)||this}return t(n,e),n}(Ge);function $e(e){e.from=function(t,n){var i=u({},t.options,n),r=new e(i);return r.import(t),r}}return $e(Ge),$e(We),$e(qe),$e(Xe),$e(Ye),$e(Ke),Ge.Graph=Ge,Ge.DirectedGraph=We,Ge.UndirectedGraph=qe,Ge.MultiGraph=Xe,Ge.MultiDirectedGraph=Ye,Ge.MultiUndirectedGraph=Ke,Ge.InvalidArgumentsGraphError=L,Ge.NotFoundGraphError=j,Ge.UsageGraphError=F,Ge}()},11524:function(e,t,n){var i;!function(r,o,a,s){"use strict";var u,c=["","webkit","Moz","MS","ms","o"],l=o.createElement("div"),h=Math.round,d=Math.abs,f=Date.now;function p(e,t,n){return setTimeout(w(e,n),t)}function v(e,t,n){return!!Array.isArray(e)&&(g(e,n[t],n),!0)}function g(e,t,n){var i;if(e)if(e.forEach)e.forEach(t,n);else if(e.length!==s)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",o=r.console&&(r.console.warn||r.console.log);return o&&o.call(r.console,i,n),e.apply(this,arguments)}}u="function"!=typeof Object.assign?function(e){if(e===s||null===e)throw new TypeError("Cannot convert undefined or null to object");for(var t=Object(e),n=1;n-1}function T(e){return e.trim().split(/\s+/g)}function A(e,t,n){if(e.indexOf&&!n)return e.indexOf(t);for(var i=0;in[t]}):i.sort()),i}function I(e,t){for(var n,i,r=t[0].toUpperCase()+t.slice(1),o=0;o1&&!n.firstMultiple?n.firstMultiple=G(t):1===r&&(n.firstMultiple=!1);var o=n.firstInput,a=n.firstMultiple,u=a?a.center:o.center,c=t.center=W(i);t.timeStamp=f(),t.deltaTime=t.timeStamp-o.timeStamp,t.angle=K(u,c),t.distance=Y(u,c),function(e,t){var n=t.center,i=e.offsetDelta||{},r=e.prevDelta||{},o=e.prevInput||{};(1===t.eventType||4===o.eventType)&&(r=e.prevDelta={x:o.deltaX||0,y:o.deltaY||0},i=e.offsetDelta={x:n.x,y:n.y}),t.deltaX=r.x+(n.x-i.x),t.deltaY=r.y+(n.y-i.y)}(n,t),t.offsetDirection=X(t.deltaX,t.deltaY);var l=q(t.deltaTime,t.deltaX,t.deltaY);t.overallVelocityX=l.x,t.overallVelocityY=l.y,t.overallVelocity=d(l.x)>d(l.y)?l.x:l.y,t.scale=a?function(e,t){return Y(t[0],t[1],z)/Y(e[0],e[1],z)}(a.pointers,i):1,t.rotation=a?function(e,t){return K(t[1],t[0],z)+K(e[1],e[0],z)}(a.pointers,i):0,t.maxPointers=n.prevInput?t.pointers.length>n.prevInput.maxPointers?t.pointers.length:n.prevInput.maxPointers:t.pointers.length,function(e,t){var n,i,r,o,a=e.lastInterval||t,u=t.timeStamp-a.timeStamp;if(8!=t.eventType&&(u>25||a.velocity===s)){var c=t.deltaX-a.deltaX,l=t.deltaY-a.deltaY,h=q(u,c,l);i=h.x,r=h.y,n=d(h.x)>d(h.y)?h.x:h.y,o=X(c,l),e.lastInterval=t}else n=a.velocity,i=a.velocityX,r=a.velocityY,o=a.direction;t.velocity=n,t.velocityX=i,t.velocityY=r,t.direction=o}(n,t);var h=e.element;C(t.srcEvent.target,h)&&(h=t.srcEvent.target),t.target=h}(e,n),e.emit("hammer.input",n),e.recognize(n),e.session.prevInput=n}function G(e){for(var t=[],n=0;n=d(t)?e<0?2:4:t<0?8:16}function Y(e,t,n){n||(n=V);var i=t[n[0]]-e[n[0]],r=t[n[1]]-e[n[1]];return Math.sqrt(i*i+r*r)}function K(e,t,n){return n||(n=V),180*Math.atan2(t[n[1]]-e[n[1]],t[n[0]]-e[n[0]])/Math.PI}U.prototype={handler:function(){},init:function(){this.evEl&&S(this.element,this.evEl,this.domHandler),this.evTarget&&S(this.target,this.evTarget,this.domHandler),this.evWin&&S(D(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(D(this.element),this.evWin,this.domHandler)}};var $={mousedown:1,mousemove:2,mouseup:4},Q="mousedown",Z="mousemove mouseup";function J(){this.evEl=Q,this.evWin=Z,this.pressed=!1,U.apply(this,arguments)}_(J,U,{handler:function(e){var t=$[e.type];1&t&&0===e.button&&(this.pressed=!0),2&t&&1!==e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:B,srcEvent:e}))}});var ee={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},te={2:F,3:"pen",4:B,5:"kinect"},ne="pointerdown",ie="pointermove pointerup pointercancel";function re(){this.evEl=ne,this.evWin=ie,U.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(ne="MSPointerDown",ie="MSPointerMove MSPointerUp MSPointerCancel"),_(re,U,{handler:function(e){var t=this.store,n=!1,i=e.type.toLowerCase().replace("ms",""),r=ee[i],o=te[e.pointerType]||e.pointerType,a=o==F,s=A(t,e.pointerId,"pointerId");1&r&&(0===e.button||a)?s<0&&(t.push(e),s=t.length-1):12&r&&(n=!0),!(s<0)&&(t[s]=e,this.callback(this.manager,r,{pointers:t,changedPointers:[e],pointerType:o,srcEvent:e}),n&&t.splice(s,1))}});var oe={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ae="touchstart",se="touchstart touchmove touchend touchcancel";function ue(){this.evTarget=ae,this.evWin=se,this.started=!1,U.apply(this,arguments)}function ce(e,t){var n=P(e.touches),i=P(e.changedTouches);return 12&t&&(n=M(n.concat(i),"identifier",!0)),[n,i]}_(ue,U,{handler:function(e){var t=oe[e.type];if(1===t&&(this.started=!0),this.started){var n=ce.call(this,e,t);12&t&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,t,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:e})}}});var le={touchstart:1,touchmove:2,touchend:4,touchcancel:8},he="touchstart touchmove touchend touchcancel";function de(){this.evTarget=he,this.targetIds={},U.apply(this,arguments)}function fe(e,t){var n=P(e.touches),i=this.targetIds;if(3&t&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,o,a=P(e.changedTouches),s=[],u=this.target;if(o=n.filter(function(e){return C(e.target,u)}),1===t)for(r=0;r-1&&i.splice(e,1)},2500)}}function me(e){for(var t=e.srcEvent.clientX,n=e.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(t,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(e){return!!this.simultaneous[e.id]},emit:function(e){var t=this,n=this.state;function i(n){t.manager.emit(n,e)}n<8&&i(t.options.event+Te(n)),i(t.options.event),e.additionalEvent&&i(e.additionalEvent),n>=8&&i(t.options.event+Te(n))},tryEmit:function(e){if(this.canEmit())return this.emit(e);this.state=32},canEmit:function(){for(var e=0;et.threshold&&r&t.direction},attrTest:function(e){return Me.prototype.attrTest.call(this,e)&&(2&this.state||!(2&this.state)&&this.directionTest(e))},emit:function(e){this.pX=e.deltaX,this.pY=e.deltaY;var t=Ae(e.direction);t&&(e.additionalEvent=this.options.event+t),this._super.emit.call(this,e)}}),_(Re,Me,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ke]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.scale-1)>this.options.threshold||2&this.state)},emit:function(e){1!==e.scale&&(e.additionalEvent=this.options.event+(e.scale<1?"in":"out")),this._super.emit.call(this,e)}}),_(De,Oe,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distancet.time;if(this._input=e,!i||!n||12&e.eventType&&!r)this.reset();else if(1&e.eventType)this.reset(),this._timer=p(function(){this.state=8,this.tryEmit()},t.time,this);else if(4&e.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(e){8===this.state&&(e&&4&e.eventType?this.manager.emit(this.options.event+"up",e):(this._input.timeStamp=f(),this.manager.emit(this.options.event,this._input)))}}),_(Ne,Me,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ke]},attrTest:function(e){return this._super.attrTest.call(this,e)&&(Math.abs(e.rotation)>this.options.threshold||2&this.state)}}),_(Le,Me,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return Ie.prototype.getTouchAction.call(this)},attrTest:function(e){var t,n=this.options.direction;return 30&n?t=e.overallVelocity:6&n?t=e.overallVelocityX:24&n&&(t=e.overallVelocityY),this._super.attrTest.call(this,e)&&n&e.offsetDirection&&e.distance>this.options.threshold&&e.maxPointers==this.options.pointers&&d(t)>this.options.velocity&&4&e.eventType},emit:function(e){var t=Ae(e.offsetDirection);t&&this.manager.emit(this.options.event+t,e),this.manager.emit(this.options.event,e)}}),_(je,Oe,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[we]},process:function(e){var t=this.options,n=e.pointers.length===t.pointers,i=e.distance"']/g,q=RegExp(G.source),X=RegExp(W.source),Y=/<%-([\s\S]+?)%>/g,K=/<%([\s\S]+?)%>/g,$=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,J=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,te=RegExp(ee.source),ne=/^\s+/,ie=/\s/,re=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,oe=/\{\n\/\* \[wrapped with (.+)\] \*/,ae=/,? & /,se=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ue=/[()=,{}\[\]\/\s]/,ce=/\\(\\)?/g,le=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,he=/\w*$/,de=/^[-+]0x[0-9a-f]+$/i,fe=/^0b[01]+$/i,pe=/^\[object .+?Constructor\]$/,ve=/^0o[0-7]+$/i,ge=/^(?:0|[1-9]\d*)$/,me=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ye=/($^)/,be=/['\n\r\u2028\u2029\\]/g,_e="\\ud800-\\udfff",we="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ke="\\u2700-\\u27bf",xe="a-z\\xdf-\\xf6\\xf8-\\xff",Se="A-Z\\xc0-\\xd6\\xd8-\\xde",Ee="\\ufe0e\\ufe0f",Ce="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Oe="["+_e+"]",Te="["+Ce+"]",Ae="["+we+"]",Pe="\\d+",Me="["+ke+"]",Ie="["+xe+"]",Re="[^"+_e+Ce+Pe+ke+xe+Se+"]",De="\\ud83c[\\udffb-\\udfff]",Ne="[^"+_e+"]",Le="(?:\\ud83c[\\udde6-\\uddff]){2}",je="[\\ud800-\\udbff][\\udc00-\\udfff]",Fe="["+Se+"]",Be="(?:"+Ie+"|"+Re+")",Ve="(?:"+Fe+"|"+Re+")",ze="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ue="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",He="(?:"+Ae+"|"+De+")?",Ge="["+Ee+"]?",We=Ge+He+"(?:\\u200d(?:"+[Ne,Le,je].join("|")+")"+Ge+He+")*",qe="(?:"+[Me,Le,je].join("|")+")"+We,Xe="(?:"+[Ne+Ae+"?",Ae,Le,je,Oe].join("|")+")",Ye=RegExp("['\u2019]","g"),Ke=RegExp(Ae,"g"),$e=RegExp(De+"(?="+De+")|"+Xe+We,"g"),Qe=RegExp([Fe+"?"+Ie+"+"+ze+"(?="+[Te,Fe,"$"].join("|")+")",Ve+"+"+Ue+"(?="+[Te,Fe+Be,"$"].join("|")+")",Fe+"?"+Be+"+"+ze,Fe+"+"+Ue,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pe,qe].join("|"),"g"),Ze=RegExp("[\\u200d"+_e+we+Ee+"]"),Je=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,et=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],tt=-1,nt={};nt[I]=nt[R]=nt[D]=nt[N]=nt[L]=nt[j]=nt[F]=nt[B]=nt[V]=!0,nt[p]=nt[v]=nt[P]=nt[g]=nt[M]=nt[m]=nt[y]=nt[b]=nt[w]=nt[k]=nt[x]=nt[E]=nt[C]=nt[O]=nt[A]=!1;var it={};it[p]=it[v]=it[P]=it[M]=it[g]=it[m]=it[I]=it[R]=it[D]=it[N]=it[L]=it[w]=it[k]=it[x]=it[E]=it[C]=it[O]=it[T]=it[j]=it[F]=it[B]=it[V]=!0,it[y]=it[b]=it[A]=!1;var rt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ot=parseFloat,at=parseInt,st="object"==typeof global&&global&&global.Object===Object&&global,ut="object"==typeof self&&self&&self.Object===Object&&self,ct=st||ut||Function("return this")(),lt=t&&!t.nodeType&&t,ht=lt&&e&&!e.nodeType&&e,dt=ht&&ht.exports===lt,ft=dt&&st.process,pt=function(){try{return ht&&ht.require&&ht.require("util").types||ft&&ft.binding&&ft.binding("util")}catch(e){}}(),vt=pt&&pt.isArrayBuffer,gt=pt&&pt.isDate,mt=pt&&pt.isMap,yt=pt&&pt.isRegExp,bt=pt&&pt.isSet,_t=pt&&pt.isTypedArray;function wt(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function kt(e,t,n,i){for(var r=-1,o=null==e?0:e.length;++r-1}function Tt(e,t,n){for(var i=-1,r=null==e?0:e.length;++i-1;);return n}function Qt(e,t){for(var n=e.length;n--&&jt(t,e[n],0)>-1;);return n}function Zt(e,t){for(var n=e.length,i=0;n--;)e[n]===t&&++i;return i}var Jt=Ut({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),en=Ut({"&":"&","<":"<",">":">",'"':""","'":"'"});function tn(e){return"\\"+rt[e]}function nn(e){return Ze.test(e)}function rn(e){var t=-1,n=Array(e.size);return e.forEach(function(e,i){n[++t]=[i,e]}),n}function on(e,t){return function(n){return e(t(n))}}function an(e,t){for(var n=-1,i=e.length,r=0,o=[];++n",""":'"',"'":"'"}),dn=function e(t){var n,i=(t=null==t?ct:dn.defaults(ct.Object(),t,dn.pick(ct,et))).Array,ie=t.Date,_e=t.Error,we=t.Function,ke=t.Math,xe=t.Object,Se=t.RegExp,Ee=t.String,Ce=t.TypeError,Oe=i.prototype,Te=xe.prototype,Ae=t["__core-js_shared__"],Pe=we.prototype.toString,Me=Te.hasOwnProperty,Ie=0,Re=(n=/[^.]+$/.exec(Ae&&Ae.keys&&Ae.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",De=Te.toString,Ne=Pe.call(xe),Le=ct._,je=Se("^"+Pe.call(Me).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Fe=dt?t.Buffer:r,Be=t.Symbol,Ve=t.Uint8Array,ze=Fe?Fe.allocUnsafe:r,Ue=on(xe.getPrototypeOf,xe),He=xe.create,Ge=Te.propertyIsEnumerable,We=Oe.splice,qe=Be?Be.isConcatSpreadable:r,Xe=Be?Be.iterator:r,$e=Be?Be.toStringTag:r,Ze=function(){try{var e=ao(xe,"defineProperty");return e({},"",{}),e}catch(Io){}}(),rt=t.clearTimeout!==ct.clearTimeout&&t.clearTimeout,st=ie&&ie.now!==ct.Date.now&&ie.now,ut=t.setTimeout!==ct.setTimeout&&t.setTimeout,lt=ke.ceil,ht=ke.floor,ft=xe.getOwnPropertySymbols,pt=Fe?Fe.isBuffer:r,Dt=t.isFinite,Ut=Oe.join,fn=on(xe.keys,xe),pn=ke.max,vn=ke.min,gn=ie.now,mn=t.parseInt,yn=ke.random,bn=Oe.reverse,_n=ao(t,"DataView"),wn=ao(t,"Map"),kn=ao(t,"Promise"),xn=ao(t,"Set"),Sn=ao(t,"WeakMap"),En=ao(xe,"create"),Cn=Sn&&new Sn,On={},Tn=Lo(_n),An=Lo(wn),Pn=Lo(kn),Mn=Lo(xn),In=Lo(Sn),Rn=Be?Be.prototype:r,Dn=Rn?Rn.valueOf:r,Nn=Rn?Rn.toString:r;function Ln(e){if(Ja(e)&&!Ua(e)&&!(e instanceof Vn)){if(e instanceof Bn)return e;if(Me.call(e,"__wrapped__"))return jo(e)}return new Bn(e)}var jn=function(){function e(){}return function(t){if(!Za(t))return{};if(He)return He(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function Fn(){}function Bn(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Vn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function zn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t=t?e:t)),e}function ri(e,t,n,i,o,a){var s,u=1&t,c=2&t,l=4&t;if(n&&(s=o?n(e,i,o,a):n(e)),s!==r)return s;if(!Za(e))return e;var h=Ua(e);if(h){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&Me.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!u)return Sr(e,s)}else{var d=co(e),f=d==b||d==_;if(qa(e))return yr(e,u);if(d==x||d==p||f&&!o){if(s=c||f?{}:ho(e),!u)return c?function(e,t){return Er(e,uo(e),t)}(e,function(e,t){return e&&Er(t,Ps(t),e)}(s,e)):function(e,t){return Er(e,so(e),t)}(e,ei(s,e))}else{if(!it[d])return o?e:{};s=function(e,t,n){var i=e.constructor;switch(t){case P:return br(e);case g:case m:return new i(+e);case M:return function(e,t){var n=t?br(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case I:case R:case D:case N:case L:case j:case F:case B:case V:return _r(e,n);case w:return new i;case k:case O:return new i(e);case E:return function(e){var t=new e.constructor(e.source,he.exec(e));return t.lastIndex=e.lastIndex,t}(e);case C:return new i;case T:return function(e){return Dn?xe(Dn.call(e)):{}}(e)}}(e,d,u)}}a||(a=new Wn);var v=a.get(e);if(v)return v;a.set(e,s),rs(e)?e.forEach(function(i){s.add(ri(i,t,n,i,e,a))}):es(e)&&e.forEach(function(i,r){s.set(r,ri(i,t,n,r,e,a))});var y=h?r:(l?c?Jr:Zr:c?Ps:As)(e);return xt(y||e,function(i,r){y&&(i=e[r=i]),Qn(s,r,ri(i,t,n,r,e,a))}),s}function oi(e,t,n){var i=n.length;if(null==e)return!i;for(e=xe(e);i--;){var o=n[i],a=e[o];if(a===r&&!(o in e)||!(0,t[o])(a))return!1}return!0}function ai(e,t,n){if("function"!=typeof e)throw new Ce(o);return Oo(function(){e.apply(r,n)},t)}function si(e,t,n,i){var r=-1,o=Ot,a=!0,s=e.length,u=[],c=t.length;if(!s)return u;n&&(t=At(t,Xt(n))),i?(o=Tt,a=!1):t.length>=200&&(o=Kt,a=!1,t=new Gn(t));e:for(;++r-1},Un.prototype.set=function(e,t){var n=this.__data__,i=Zn(n,e);return i<0?(++this.size,n.push([e,t])):n[i][1]=t,this},Hn.prototype.clear=function(){this.size=0,this.__data__={hash:new zn,map:new(wn||Un),string:new zn}},Hn.prototype.delete=function(e){var t=ro(this,e).delete(e);return this.size-=t?1:0,t},Hn.prototype.get=function(e){return ro(this,e).get(e)},Hn.prototype.has=function(e){return ro(this,e).has(e)},Hn.prototype.set=function(e,t){var n=ro(this,e),i=n.size;return n.set(e,t),this.size+=n.size==i?0:1,this},Gn.prototype.add=Gn.prototype.push=function(e){return this.__data__.set(e,a),this},Gn.prototype.has=function(e){return this.__data__.has(e)},Wn.prototype.clear=function(){this.__data__=new Un,this.size=0},Wn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Wn.prototype.get=function(e){return this.__data__.get(e)},Wn.prototype.has=function(e){return this.__data__.has(e)},Wn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Un){var i=n.__data__;if(!wn||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new Hn(i)}return n.set(e,t),this.size=n.size,this};var ui=Tr(gi),ci=Tr(mi,!0);function li(e,t){var n=!0;return ui(e,function(e,i,r){return n=!!t(e,i,r)}),n}function hi(e,t,n){for(var i=-1,o=e.length;++i0&&n(s)?t>1?fi(s,t-1,n,i,r):Pt(r,s):i||(r[r.length]=s)}return r}var pi=Ar(),vi=Ar(!0);function gi(e,t){return e&&pi(e,t,As)}function mi(e,t){return e&&vi(e,t,As)}function yi(e,t){return Ct(t,function(t){return Ka(e[t])})}function bi(e,t){for(var n=0,i=(t=pr(t,e)).length;null!=e&&nt}function xi(e,t){return null!=e&&Me.call(e,t)}function Si(e,t){return null!=e&&t in xe(e)}function Ei(e,t,n){for(var o=n?Tt:Ot,a=e[0].length,s=e.length,u=s,c=i(s),l=1/0,h=[];u--;){var d=e[u];u&&t&&(d=At(d,Xt(t))),l=vn(d.length,l),c[u]=!n&&(t||a>=120&&d.length>=120)?new Gn(u&&d):r}d=e[0];var f=-1,p=c[0];e:for(;++f=s?u:u*("desc"==n[i]?-1:1)}return e.index-t.index}(e,t,n)});i--;)e[i]=e[i].value;return e}(Di(e,function(e,n,r){return{criteria:At(t,function(t){return t(e)}),index:++i,value:e}}))}function Vi(e,t,n){for(var i=-1,r=t.length,o={};++i-1;)s!==e&&We.call(s,u,1),We.call(e,u,1);return e}function Ui(e,t){for(var n=e?t.length:0,i=n-1;n--;){var r=t[n];if(n==i||r!==o){var o=r;po(r)?We.call(e,r,1):ar(e,r)}}return e}function Hi(e,t){return e+ht(yn()*(t-e+1))}function Gi(e,t){var n="";if(!e||t<1||t>h)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Wi(e,t){return To(ko(e,t,tu),e+"")}function qi(e){return Xn(Fs(e))}function Xi(e,t){var n=Fs(e);return Mo(n,ii(t,0,n.length))}function Yi(e,t,n,i){if(!Za(e))return e;for(var o=-1,a=(t=pr(t,e)).length,s=a-1,u=e;null!=u&&++oo?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=i(o);++r>>1,a=e[o];null!==a&&!as(a)&&(n?a<=t:a=200){var c=t?null:Gr(e);if(c)return sn(c);a=!1,r=Kt,u=new Gn}else u=t?[]:s;e:for(;++i=i?e:Zi(e,t,n)}var mr=rt||function(e){return ct.clearTimeout(e)};function yr(e,t){if(t)return e.slice();var n=e.length,i=ze?ze(n):new e.constructor(n);return e.copy(i),i}function br(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function _r(e,t){var n=t?br(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function wr(e,t){if(e!==t){var n=e!==r,i=null===e,o=e==e,a=as(e),s=t!==r,u=null===t,c=t==t,l=as(t);if(!u&&!l&&!a&&e>t||a&&s&&c&&!u&&!l||i&&s&&c||!n&&c||!o)return 1;if(!i&&!a&&!l&&e1?n[o-1]:r,s=o>2?n[2]:r;for(a=e.length>3&&"function"==typeof a?(o--,a):r,s&&vo(n[0],n[1],s)&&(a=o<3?r:a,o=1),t=xe(t);++i-1?o[a?t[s]:s]:r}}function Dr(e){return Qr(function(t){var n=t.length,i=n,a=Bn.prototype.thru;for(e&&t.reverse();i--;){var s=t[i];if("function"!=typeof s)throw new Ce(o);if(a&&!u&&"wrapper"==to(s))var u=new Bn([],!0)}for(i=u?i:n;++i1&&b.reverse(),f&&hu))return!1;var l=a.get(e),h=a.get(t);if(l&&h)return l==t&&h==e;var d=-1,f=!0,p=2&n?new Gn:r;for(a.set(e,t),a.set(t,e);++d-1&&e%1==0&&e1?"& ":"")+t[i],t=t.join(n>2?", ":" "),e.replace(re,"{\n/* [wrapped with "+t+"] */\n")}(i,function(e,t){return xt(f,function(n){var i="_."+n[0];t&n[1]&&!Ot(e,i)&&e.push(i)}),e.sort()}(function(e){var t=e.match(oe);return t?t[1].split(ae):[]}(i),n)))}function Po(e){var t=0,n=0;return function(){var i=gn(),o=16-(i-n);if(n=i,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function Mo(e,t){var n=-1,i=e.length,o=i-1;for(t=t===r?i:t;++n1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,ia(e,n)});function la(e){var t=Ln(e);return t.__chain__=!0,t}function ha(e,t){return t(e)}var da=Qr(function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,o=function(t){return ni(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Vn&&po(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:ha,args:[o],thisArg:r}),new Bn(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(r),e})):this.thru(o)}),fa=Cr(function(e,t,n){Me.call(e,n)?++e[n]:ti(e,n,1)}),pa=Rr(zo),va=Rr(Uo);function ga(e,t){return(Ua(e)?xt:ui)(e,io(t,3))}function ma(e,t){return(Ua(e)?St:ci)(e,io(t,3))}var ya=Cr(function(e,t,n){Me.call(e,n)?e[n].push(t):ti(e,n,[t])}),ba=Wi(function(e,t,n){var r=-1,o="function"==typeof t,a=Ga(e)?i(e.length):[];return ui(e,function(e){a[++r]=o?wt(t,e,n):Ci(e,t,n)}),a}),_a=Cr(function(e,t,n){ti(e,n,t)});function wa(e,t){return(Ua(e)?At:Di)(e,io(t,3))}var ka=Cr(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),xa=Wi(function(e,t){if(null==e)return[];var n=t.length;return n>1&&vo(e,t[0],t[1])?t=[]:n>2&&vo(t[0],t[1],t[2])&&(t=[t[0]]),Bi(e,fi(t,1),[])}),Sa=st||function(){return ct.Date.now()};function Ea(e,t,n){return t=n?r:t,qr(e,c,r,r,r,r,t=e&&null==t?e.length:t)}function Ca(e,t){var n;if("function"!=typeof t)throw new Ce(o);return e=ds(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var Oa=Wi(function(e,t,n){var i=1;if(n.length){var r=an(n,no(Oa));i|=u}return qr(e,i,t,n,r)}),Ta=Wi(function(e,t,n){var i=3;if(n.length){var r=an(n,no(Ta));i|=u}return qr(t,i,e,n,r)});function Aa(e,t,n){var i,a,s,u,c,l,h=0,d=!1,f=!1,p=!0;if("function"!=typeof e)throw new Ce(o);function v(t){var n=i,o=a;return i=a=r,h=t,u=e.apply(o,n)}function g(e){return h=e,c=Oo(y,t),d?v(e):u}function m(e){var n=e-l;return l===r||n>=t||n<0||f&&e-h>=s}function y(){var e=Sa();if(m(e))return b(e);c=Oo(y,function(e){var n=t-(e-l);return f?vn(n,s-(e-h)):n}(e))}function b(e){return c=r,p&&i?v(e):(i=a=r,u)}function _(){var e=Sa(),n=m(e);if(i=arguments,a=this,l=e,n){if(c===r)return g(l);if(f)return mr(c),c=Oo(y,t),v(l)}return c===r&&(c=Oo(y,t)),u}return t=ps(t)||0,Za(n)&&(d=!!n.leading,s=(f="maxWait"in n)?pn(ps(n.maxWait)||0,t):s,p="trailing"in n?!!n.trailing:p),_.cancel=function(){c!==r&&mr(c),h=0,i=l=a=c=r},_.flush=function(){return c===r?u:b(Sa())},_}var Pa=Wi(function(e,t){return ai(e,1,t)}),Ma=Wi(function(e,t,n){return ai(e,ps(t)||0,n)});function Ia(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ce(o);var n=function n(){var i=arguments,r=t?t.apply(this,i):i[0],o=n.cache;if(o.has(r))return o.get(r);var a=e.apply(this,i);return n.cache=o.set(r,a)||o,a};return n.cache=new(Ia.Cache||Hn),n}function Ra(e){if("function"!=typeof e)throw new Ce(o);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Ia.Cache=Hn;var Da=vr(function(e,t){var n=(t=1==t.length&&Ua(t[0])?At(t[0],Xt(io())):At(fi(t,1),Xt(io()))).length;return Wi(function(i){for(var r=-1,o=vn(i.length,n);++r=t}),za=Oi(function(){return arguments}())?Oi:function(e){return Ja(e)&&Me.call(e,"callee")&&!Ge.call(e,"callee")},Ua=i.isArray,Ha=vt?Xt(vt):function(e){return Ja(e)&&wi(e)==P};function Ga(e){return null!=e&&Qa(e.length)&&!Ka(e)}function Wa(e){return Ja(e)&&Ga(e)}var qa=pt||pu,Xa=gt?Xt(gt):function(e){return Ja(e)&&wi(e)==m};function Ya(e){if(!Ja(e))return!1;var t=wi(e);return t==y||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!ns(e)}function Ka(e){if(!Za(e))return!1;var t=wi(e);return t==b||t==_||"[object AsyncFunction]"==t||"[object Proxy]"==t}function $a(e){return"number"==typeof e&&e==ds(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=h}function Za(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Ja(e){return null!=e&&"object"==typeof e}var es=mt?Xt(mt):function(e){return Ja(e)&&co(e)==w};function ts(e){return"number"==typeof e||Ja(e)&&wi(e)==k}function ns(e){if(!Ja(e)||wi(e)!=x)return!1;var t=Ue(e);if(null===t)return!0;var n=Me.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Pe.call(n)==Ne}var is=yt?Xt(yt):function(e){return Ja(e)&&wi(e)==E},rs=bt?Xt(bt):function(e){return Ja(e)&&co(e)==C};function os(e){return"string"==typeof e||!Ua(e)&&Ja(e)&&wi(e)==O}function as(e){return"symbol"==typeof e||Ja(e)&&wi(e)==T}var ss=_t?Xt(_t):function(e){return Ja(e)&&Qa(e.length)&&!!nt[wi(e)]},us=zr(Ri),cs=zr(function(e,t){return e<=t});function ls(e){if(!e)return[];if(Ga(e))return os(e)?cn(e):Sr(e);if(Xe&&e[Xe])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Xe]());var t=co(e);return(t==w?rn:t==C?sn:Fs)(e)}function hs(e){return e?(e=ps(e))===l||e===-l?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ds(e){var t=hs(e),n=t%1;return t==t?n?t-n:t:0}function fs(e){return e?ii(ds(e),0,d):0}function ps(e){if("number"==typeof e)return e;if(as(e))return NaN;if(Za(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Za(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=qt(e);var n=fe.test(e);return n||ve.test(e)?at(e.slice(2),n?2:8):de.test(e)?NaN:+e}function vs(e){return Er(e,Ps(e))}function gs(e){return null==e?"":rr(e)}var ms=Or(function(e,t){if(bo(t)||Ga(t))Er(t,As(t),e);else for(var n in t)Me.call(t,n)&&Qn(e,n,t[n])}),ys=Or(function(e,t){Er(t,Ps(t),e)}),bs=Or(function(e,t,n,i){Er(t,Ps(t),e,i)}),_s=Or(function(e,t,n,i){Er(t,As(t),e,i)}),ws=Qr(ni),ks=Wi(function(e,t){e=xe(e);var n=-1,i=t.length,o=i>2?t[2]:r;for(o&&vo(t[0],t[1],o)&&(i=1);++n1),t}),Er(e,Jr(e),n),i&&(n=ri(n,7,Kr));for(var r=t.length;r--;)ar(n,t[r]);return n}),Ds=Qr(function(e,t){return null==e?{}:function(e,t){return Vi(e,t,function(t,n){return Es(e,n)})}(e,t)});function Ns(e,t){if(null==e)return{};var n=At(Jr(e),function(e){return[e]});return t=io(t),Vi(e,n,function(e,n){return t(e,n[0])})}var Ls=Wr(As),js=Wr(Ps);function Fs(e){return null==e?[]:Yt(e,As(e))}var Bs=Mr(function(e,t,n){return t=t.toLowerCase(),e+(n?Vs(t):t)});function Vs(e){return Ys(gs(e).toLowerCase())}function zs(e){return(e=gs(e))&&e.replace(me,Jt).replace(Ke,"")}var Us=Mr(function(e,t,n){return e+(n?"-":"")+t.toLowerCase()}),Hs=Mr(function(e,t,n){return e+(n?" ":"")+t.toLowerCase()}),Gs=Pr("toLowerCase"),Ws=Mr(function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}),qs=Mr(function(e,t,n){return e+(n?" ":"")+Ys(t)}),Xs=Mr(function(e,t,n){return e+(n?" ":"")+t.toUpperCase()}),Ys=Pr("toUpperCase");function Ks(e,t,n){return e=gs(e),(t=n?r:t)===r?function(e){return Je.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(se)||[]}(e):e.match(t)||[]}var $s=Wi(function(e,t){try{return wt(e,r,t)}catch(Ro){return Ya(Ro)?Ro:new _e(Ro)}}),Qs=Qr(function(e,t){return xt(t,function(t){t=No(t),ti(e,t,Oa(e[t],e))}),e});function Zs(e){return function(){return e}}var Js=Dr(),eu=Dr(!0);function tu(e){return e}function nu(e){return Mi("function"==typeof e?e:ri(e,1))}var iu=Wi(function(e,t){return function(n){return Ci(n,e,t)}}),ru=Wi(function(e,t){return function(n){return Ci(e,n,t)}});function ou(e,t,n){var i=As(t),r=yi(t,i);null==n&&(!Za(t)||!r.length&&i.length)&&(n=t,t=e,e=this,r=yi(t,As(t)));var o=!(Za(n)&&"chain"in n&&!n.chain),a=Ka(e);return xt(r,function(n){var i=t[n];e[n]=i,a&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__),r=n.__actions__=Sr(this.__actions__);return r.push({func:i,args:arguments,thisArg:e}),n.__chain__=t,n}return i.apply(e,Pt([this.value()],arguments))})}),e}function au(){}var su=Fr(At),uu=Fr(Et),cu=Fr(Rt);function lu(e){return go(e)?zt(No(e)):function(e){return function(t){return bi(t,e)}}(e)}var hu=Vr(),du=Vr(!0);function fu(){return[]}function pu(){return!1}var vu=jr(function(e,t){return e+t},0),gu=Hr("ceil"),mu=jr(function(e,t){return e/t},1),yu=Hr("floor"),bu=jr(function(e,t){return e*t},1),_u=Hr("round"),wu=jr(function(e,t){return e-t},0);return Ln.after=function(e,t){if("function"!=typeof t)throw new Ce(o);return e=ds(e),function(){if(--e<1)return t.apply(this,arguments)}},Ln.ary=Ea,Ln.assign=ms,Ln.assignIn=ys,Ln.assignInWith=bs,Ln.assignWith=_s,Ln.at=ws,Ln.before=Ca,Ln.bind=Oa,Ln.bindAll=Qs,Ln.bindKey=Ta,Ln.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ua(e)?e:[e]},Ln.chain=la,Ln.chunk=function(e,t,n){t=(n?vo(e,t,n):t===r)?1:pn(ds(t),0);var o=null==e?0:e.length;if(!o||t<1)return[];for(var a=0,s=0,u=i(lt(o/t));ao?0:o+n),(i=i===r||i>o?o:ds(i))<0&&(i+=o),i=n>i?0:fs(i);n>>0)?(e=gs(e))&&("string"==typeof t||null!=t&&!is(t))&&!(t=rr(t))&&nn(e)?gr(cn(e),0,n):e.split(t,n):[]},Ln.spread=function(e,t){if("function"!=typeof e)throw new Ce(o);return t=null==t?0:pn(ds(t),0),Wi(function(n){var i=n[t],r=gr(n,0,t);return i&&Pt(r,i),wt(e,this,r)})},Ln.tail=function(e){var t=null==e?0:e.length;return t?Zi(e,1,t):[]},Ln.take=function(e,t,n){return e&&e.length?Zi(e,0,(t=n||t===r?1:ds(t))<0?0:t):[]},Ln.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?Zi(e,(t=i-(t=n||t===r?1:ds(t)))<0?0:t,i):[]},Ln.takeRightWhile=function(e,t){return e&&e.length?ur(e,io(t,3),!1,!0):[]},Ln.takeWhile=function(e,t){return e&&e.length?ur(e,io(t,3)):[]},Ln.tap=function(e,t){return t(e),e},Ln.throttle=function(e,t,n){var i=!0,r=!0;if("function"!=typeof e)throw new Ce(o);return Za(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Aa(e,t,{leading:i,maxWait:t,trailing:r})},Ln.thru=ha,Ln.toArray=ls,Ln.toPairs=Ls,Ln.toPairsIn=js,Ln.toPath=function(e){return Ua(e)?At(e,No):as(e)?[e]:Sr(Do(gs(e)))},Ln.toPlainObject=vs,Ln.transform=function(e,t,n){var i=Ua(e),r=i||qa(e)||ss(e);if(t=io(t,4),null==n){var o=e&&e.constructor;n=r?i?new o:[]:Za(e)&&Ka(o)?jn(Ue(e)):{}}return(r?xt:gi)(e,function(e,i,r){return t(n,e,i,r)}),n},Ln.unary=function(e){return Ea(e,1)},Ln.union=Jo,Ln.unionBy=ea,Ln.unionWith=ta,Ln.uniq=function(e){return e&&e.length?or(e):[]},Ln.uniqBy=function(e,t){return e&&e.length?or(e,io(t,2)):[]},Ln.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?or(e,r,t):[]},Ln.unset=function(e,t){return null==e||ar(e,t)},Ln.unzip=na,Ln.unzipWith=ia,Ln.update=function(e,t,n){return null==e?e:sr(e,t,fr(n))},Ln.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:sr(e,t,fr(n),i)},Ln.values=Fs,Ln.valuesIn=function(e){return null==e?[]:Yt(e,Ps(e))},Ln.without=ra,Ln.words=Ks,Ln.wrap=function(e,t){return Na(fr(t),e)},Ln.xor=oa,Ln.xorBy=aa,Ln.xorWith=sa,Ln.zip=ua,Ln.zipObject=function(e,t){return hr(e||[],t||[],Qn)},Ln.zipObjectDeep=function(e,t){return hr(e||[],t||[],Yi)},Ln.zipWith=ca,Ln.entries=Ls,Ln.entriesIn=js,Ln.extend=ys,Ln.extendWith=bs,ou(Ln,Ln),Ln.add=vu,Ln.attempt=$s,Ln.camelCase=Bs,Ln.capitalize=Vs,Ln.ceil=gu,Ln.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=ps(n))==n?n:0),t!==r&&(t=(t=ps(t))==t?t:0),ii(ps(e),t,n)},Ln.clone=function(e){return ri(e,4)},Ln.cloneDeep=function(e){return ri(e,5)},Ln.cloneDeepWith=function(e,t){return ri(e,5,t="function"==typeof t?t:r)},Ln.cloneWith=function(e,t){return ri(e,4,t="function"==typeof t?t:r)},Ln.conformsTo=function(e,t){return null==t||oi(e,t,As(t))},Ln.deburr=zs,Ln.defaultTo=function(e,t){return null==e||e!=e?t:e},Ln.divide=mu,Ln.endsWith=function(e,t,n){e=gs(e),t=rr(t);var i=e.length,o=n=n===r?i:ii(ds(n),0,i);return(n-=t.length)>=0&&e.slice(n,o)==t},Ln.eq=Fa,Ln.escape=function(e){return(e=gs(e))&&X.test(e)?e.replace(W,en):e},Ln.escapeRegExp=function(e){return(e=gs(e))&&te.test(e)?e.replace(ee,"\\$&"):e},Ln.every=function(e,t,n){var i=Ua(e)?Et:li;return n&&vo(e,t,n)&&(t=r),i(e,io(t,3))},Ln.find=pa,Ln.findIndex=zo,Ln.findKey=function(e,t){return Nt(e,io(t,3),gi)},Ln.findLast=va,Ln.findLastIndex=Uo,Ln.findLastKey=function(e,t){return Nt(e,io(t,3),mi)},Ln.floor=yu,Ln.forEach=ga,Ln.forEachRight=ma,Ln.forIn=function(e,t){return null==e?e:pi(e,io(t,3),Ps)},Ln.forInRight=function(e,t){return null==e?e:vi(e,io(t,3),Ps)},Ln.forOwn=function(e,t){return e&&gi(e,io(t,3))},Ln.forOwnRight=function(e,t){return e&&mi(e,io(t,3))},Ln.get=Ss,Ln.gt=Ba,Ln.gte=Va,Ln.has=function(e,t){return null!=e&&lo(e,t,xi)},Ln.hasIn=Es,Ln.head=Go,Ln.identity=tu,Ln.includes=function(e,t,n,i){e=Ga(e)?e:Fs(e),n=n&&!i?ds(n):0;var r=e.length;return n<0&&(n=pn(r+n,0)),os(e)?n<=r&&e.indexOf(t,n)>-1:!!r&&jt(e,t,n)>-1},Ln.indexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var r=null==n?0:ds(n);return r<0&&(r=pn(i+r,0)),jt(e,t,r)},Ln.inRange=function(e,t,n){return t=hs(t),n===r?(n=t,t=0):n=hs(n),function(e,t,n){return e>=vn(t,n)&&e=-h&&e<=h},Ln.isSet=rs,Ln.isString=os,Ln.isSymbol=as,Ln.isTypedArray=ss,Ln.isUndefined=function(e){return e===r},Ln.isWeakMap=function(e){return Ja(e)&&co(e)==A},Ln.isWeakSet=function(e){return Ja(e)&&"[object WeakSet]"==wi(e)},Ln.join=function(e,t){return null==e?"":Ut.call(e,t)},Ln.kebabCase=Us,Ln.last=Yo,Ln.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var o=i;return n!==r&&(o=(o=ds(n))<0?pn(i+o,0):vn(o,i-1)),t==t?function(e,t,n){for(var i=n+1;i--;)if(e[i]===t)return i;return i}(e,t,o):Lt(e,Bt,o,!0)},Ln.lowerCase=Hs,Ln.lowerFirst=Gs,Ln.lt=us,Ln.lte=cs,Ln.max=function(e){return e&&e.length?hi(e,tu,ki):r},Ln.maxBy=function(e,t){return e&&e.length?hi(e,io(t,2),ki):r},Ln.mean=function(e){return Vt(e,tu)},Ln.meanBy=function(e,t){return Vt(e,io(t,2))},Ln.min=function(e){return e&&e.length?hi(e,tu,Ri):r},Ln.minBy=function(e,t){return e&&e.length?hi(e,io(t,2),Ri):r},Ln.stubArray=fu,Ln.stubFalse=pu,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=bu,Ln.nth=function(e,t){return e&&e.length?Fi(e,ds(t)):r},Ln.noConflict=function(){return ct._===this&&(ct._=Le),this},Ln.noop=au,Ln.now=Sa,Ln.pad=function(e,t,n){e=gs(e);var i=(t=ds(t))?un(e):0;if(!t||i>=t)return e;var r=(t-i)/2;return Br(ht(r),n)+e+Br(lt(r),n)},Ln.padEnd=function(e,t,n){e=gs(e);var i=(t=ds(t))?un(e):0;return t&&it){var i=e;e=t,t=i}if(n||e%1||t%1){var o=yn();return vn(e+o*(t-e+ot("1e-"+((o+"").length-1))),t)}return Hi(e,t)},Ln.reduce=function(e,t,n){var i=Ua(e)?Mt:Ht,r=arguments.length<3;return i(e,io(t,4),n,r,ui)},Ln.reduceRight=function(e,t,n){var i=Ua(e)?It:Ht,r=arguments.length<3;return i(e,io(t,4),n,r,ci)},Ln.repeat=function(e,t,n){return t=(n?vo(e,t,n):t===r)?1:ds(t),Gi(gs(e),t)},Ln.replace=function(){var e=arguments,t=gs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Ln.result=function(e,t,n){var i=-1,o=(t=pr(t,e)).length;for(o||(o=1,e=r);++ih)return[];var n=d,i=vn(e,d);t=io(t),e-=d;for(var r=Wt(i,t);++n=a)return e;var u=n-un(i);if(u<1)return i;var c=s?gr(s,0,u).join(""):e.slice(0,u);if(o===r)return c+i;if(s&&(u+=c.length-u),is(o)){if(e.slice(u).search(o)){var l,h=c;for(o.global||(o=Se(o.source,gs(he.exec(o))+"g")),o.lastIndex=0;l=o.exec(h);)var d=l.index;c=c.slice(0,d===r?u:d)}}else if(e.indexOf(rr(o),u)!=u){var f=c.lastIndexOf(o);f>-1&&(c=c.slice(0,f))}return c+i},Ln.unescape=function(e){return(e=gs(e))&&q.test(e)?e.replace(G,hn):e},Ln.uniqueId=function(e){var t=++Ie;return gs(e)+t},Ln.upperCase=Xs,Ln.upperFirst=Ys,Ln.each=ga,Ln.eachRight=ma,Ln.first=Go,ou(Ln,function(){var e={};return gi(Ln,function(t,n){Me.call(Ln.prototype,n)||(e[n]=t)}),e}(),{chain:!1}),Ln.VERSION="4.17.21",xt(["bind","bindKey","curry","curryRight","partial","partialRight"],function(e){Ln[e].placeholder=Ln}),xt(["drop","take"],function(e,t){Vn.prototype[e]=function(n){n=n===r?1:pn(ds(n),0);var i=this.__filtered__&&!t?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=vn(n,i.__takeCount__):i.__views__.push({size:vn(n,d),type:e+(i.__dir__<0?"Right":"")}),i},Vn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),xt(["filter","map","takeWhile"],function(e,t){var n=t+1,i=1==n||3==n;Vn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:io(e,3),type:n}),t.__filtered__=t.__filtered__||i,t}}),xt(["head","last"],function(e,t){var n="take"+(t?"Right":"");Vn.prototype[e]=function(){return this[n](1).value()[0]}}),xt(["initial","tail"],function(e,t){var n="drop"+(t?"":"Right");Vn.prototype[e]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(tu)},Vn.prototype.find=function(e){return this.filter(e).head()},Vn.prototype.findLast=function(e){return this.reverse().find(e)},Vn.prototype.invokeMap=Wi(function(e,t){return"function"==typeof e?new Vn(this):this.map(function(n){return Ci(n,e,t)})}),Vn.prototype.reject=function(e){return this.filter(Ra(io(e)))},Vn.prototype.slice=function(e,t){e=ds(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Vn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=ds(t))<0?n.dropRight(-t):n.take(t-e)),n)},Vn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vn.prototype.toArray=function(){return this.take(d)},gi(Vn.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),o=Ln[i?"take"+("last"==t?"Right":""):t],a=i||/^find/.test(t);!o||(Ln.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,u=t instanceof Vn,c=s[0],l=u||Ua(t),h=function(e){var t=o.apply(Ln,Pt([e],s));return i&&d?t[0]:t};l&&n&&"function"==typeof c&&1!=c.length&&(u=l=!1);var d=this.__chain__,f=!!this.__actions__.length,p=a&&!d,v=u&&!f;if(!a&&l){t=v?t:new Vn(this);var g=e.apply(t,s);return g.__actions__.push({func:ha,args:[h],thisArg:r}),new Bn(g,d)}return p&&v?e.apply(this,s):(g=this.thru(h),p?i?g.value()[0]:g.value():g)})}),xt(["pop","push","shift","sort","splice","unshift"],function(e){var t=Oe[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",i=/^(?:pop|shift)$/.test(e);Ln.prototype[e]=function(){var e=arguments;if(i&&!this.__chain__){var r=this.value();return t.apply(Ua(r)?r:[],e)}return this[n](function(n){return t.apply(Ua(n)?n:[],e)})}}),gi(Vn.prototype,function(e,t){var n=Ln[t];if(n){var i=n.name+"";Me.call(On,i)||(On[i]=[]),On[i].push({name:t,func:n})}}),On[Nr(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var e=new Vn(this.__wrapped__);return e.__actions__=Sr(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Sr(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Sr(this.__views__),e},Vn.prototype.reverse=function(){if(this.__filtered__){var e=new Vn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ua(e),i=t<0,r=n?e.length:0,o=function(e,t,n){for(var i=-1,r=n.length;++i=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},Ln.prototype.plant=function(e){for(var t,n=this;n instanceof Fn;){var i=jo(n);i.__index__=0,i.__values__=r,t?o.__wrapped__=i:t=i;var o=i;n=n.__wrapped__}return o.__wrapped__=e,t},Ln.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vn){var t=e;return this.__actions__.length&&(t=new Vn(this)),(t=t.reverse()).__actions__.push({func:ha,args:[Zo],thisArg:r}),new Bn(t,this.__chain__)}return this.thru(Zo)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return cr(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,Xe&&(Ln.prototype[Xe]=function(){return this}),Ln}();ct._=dn,(i=(function(){return dn}).call(t,n,t,e))!==r&&(e.exports=i)}).call(this)},5478:function(e){e.exports=function(){"use strict";function e(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,i=new Array(t);n=e.length?{done:!0}:{done:!1,value:e[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i={exports:{}};i.exports={defaults:{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:function(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}},changeDefaults:function(e){i.exports.defaults=e}};var r=/[&<>"']/,o=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,s=/[<>"']|&(?!#?\w+;)/g,u={"&":"&","<":"<",">":">",'"':""","'":"'"},c=function(e){return u[e]},l=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function h(e){return e.replace(l,function(e,t){return"colon"===(t=t.toLowerCase())?":":"#"===t.charAt(0)?"x"===t.charAt(1)?String.fromCharCode(parseInt(t.substring(2),16)):String.fromCharCode(+t.substring(1)):""})}var d=/(^|[^\[])\^/g,f=/[^\w:]/g,p=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i,v={},g=/^[^:]+:\/*[^/]*$/,m=/^([^:]+:)[\s\S]*$/,y=/^([^:]+:\/*[^/]*)[\s\S]*$/;function b(e,t,n){var i=e.length;if(0===i)return"";for(var r=0;r=0&&"\\"===n[r];)i=!i;return i?"|":" |"}).split(/ \|/),i=0;if(n.length>t)n.splice(t);else for(;n.length1?{type:"space",raw:t[0]}:{raw:"\n"}},t.code=function(e){var t=this.rules.block.code.exec(e);if(t){var n=t[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?n:S(n,"\n")}}},t.fences=function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],i=function(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var i=n[1];return t.split("\n").map(function(e){var t=e.match(/^\s+/);return null===t?e:t[0].length>=i.length?e.slice(i.length):e}).join("\n")}(n,t[3]||"");return{type:"code",raw:n,lang:t[2]?t[2].trim():t[2],text:i}}},t.heading=function(e){var t=this.rules.block.heading.exec(e);if(t){var n=t[2].trim();if(/#$/.test(n)){var i=S(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:n}}},t.nptable=function(e){var t=this.rules.block.nptable.exec(e);if(t){var n={type:"table",header:E(t[1].replace(/^ *| *\| *$/g,"")),align:t[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:t[3]?t[3].replace(/\n$/,"").split("\n"):[],raw:t[0]};if(n.header.length===n.align.length){var i,r=n.align.length;for(i=0;i ?/gm,"");return{type:"blockquote",raw:t[0],text:n}}},t.list=function(e){var t=this.rules.block.list.exec(e);if(t){var n,i,r,o,a,s,u,c,l,h=t[0],d=t[2],f=d.length>1,p={type:"list",raw:h,ordered:f,start:f?+d.slice(0,-1):"",loose:!1,items:[]},v=t[0].match(this.rules.block.item),g=!1,m=v.length;r=this.rules.block.listItemStart.exec(v[0]);for(var y=0;yr[1].length:o[1].length>=r[0].length||o[1].length>3){v.splice(y,2,v[y]+(!this.options.pedantic&&o[1].length/i.test(i[0])&&(t=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:i[0],inLink:t,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):C(i[0]):i[0]}},t.link=function(e){var t=this.rules.inline.link.exec(e);if(t){var n=t[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;var i=S(n.slice(0,-1),"\\");if((n.length-i.length)%2==0)return}else{var r=function(e,t){if(-1===e.indexOf(t[1]))return-1;for(var n=e.length,i=0,r=0;r-1){var o=(0===t[0].indexOf("!")?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,o).trim(),t[3]=""}}var a=t[2],s="";if(this.options.pedantic){var u=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(a);u&&(a=u[1],s=u[3])}else s=t[3]?t[3].slice(1,-1):"";return a=a.trim(),/^$/.test(n)?a.slice(1):a.slice(1,-1)),O(t,{href:a&&a.replace(this.rules.inline._escapes,"$1"),title:s&&s.replace(this.rules.inline._escapes,"$1")},t[0])}},t.reflink=function(e,t){var n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){var i=(n[2]||n[1]).replace(/\s+/g," ");if(!(i=t[i.toLowerCase()])||!i.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return O(n,i,n[0])}},t.emStrong=function(e,t,n){void 0===n&&(n="");var i=this.rules.inline.emStrong.lDelim.exec(e);if(i&&(!i[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var r=i[1]||i[2]||"";if(!r||r&&(""===n||this.rules.inline.punctuation.exec(n))){var o,a,s=i[0].length-1,u=s,c=0,l="*"===i[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(l.lastIndex=0,t=t.slice(-1*e.length+s);null!=(i=l.exec(t));)if(o=i[1]||i[2]||i[3]||i[4]||i[5]||i[6]){if(a=o.length,i[3]||i[4]){u+=a;continue}if((i[5]||i[6])&&s%3&&!((s+a)%3)){c+=a;continue}if(!((u-=a)>0))return a=Math.min(a,a+u+c),Math.min(s,a)%2?{type:"em",raw:e.slice(0,s+i.index+a+1),text:e.slice(1,s+i.index+a)}:{type:"strong",raw:e.slice(0,s+i.index+a+1),text:e.slice(2,s+i.index+a-1)}}}}},t.codespan=function(e){var t=this.rules.inline.code.exec(e);if(t){var n=t[2].replace(/\n/g," "),i=/[^ ]/.test(n),r=/^ /.test(n)&&/ $/.test(n);return i&&r&&(n=n.substring(1,n.length-1)),n=C(n,!0),{type:"codespan",raw:t[0],text:n}}},t.br=function(e){var t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}},t.del=function(e){var t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2]}},t.autolink=function(e,t){var n,i,r=this.rules.inline.autolink.exec(e);if(r)return i="@"===r[2]?"mailto:"+(n=C(this.options.mangle?t(r[1]):r[1])):n=C(r[1]),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}},t.url=function(e,t){var n;if(n=this.rules.inline.url.exec(e)){var i,r;if("@"===n[2])r="mailto:"+(i=C(this.options.mangle?t(n[0]):n[0]));else{var o;do{o=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(o!==n[0]);i=C(n[0]),r="www."===n[1]?"http://"+i:i}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}},t.inlineText=function(e,t,n){var i,r=this.rules.inline.text.exec(e);if(r)return i=t?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):C(r[0]):r[0]:C(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:i}},e}(),A={exec:function(){}},P=function(e,t){e=e.source||e,t=t||"";var n={replace:function(t,i){return i=(i=i.source||i).replace(d,"$1"),e=e.replace(t,i),n},getRegex:function(){return new RegExp(e,t)}};return n},M=k,I={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:A,table:A,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};I.def=P(I.def).replace("label",I._label).replace("title",I._title).getRegex(),I.bullet=/(?:[*+-]|\d{1,9}[.)])/,I.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,I.item=P(I.item,"gm").replace(/bull/g,I.bullet).getRegex(),I.listItemStart=P(/^( *)(bull) */).replace("bull",I.bullet).getRegex(),I.list=P(I.list).replace(/bull/g,I.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+I.def.source+")").getRegex(),I._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",I._comment=/|$)/,I.html=P(I.html,"i").replace("comment",I._comment).replace("tag",I._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),I.paragraph=P(I._paragraph).replace("hr",I.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",I._tag).getRegex(),I.blockquote=P(I.blockquote).replace("paragraph",I.paragraph).getRegex(),I.normal=M({},I),I.gfm=M({},I.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),I.gfm.nptable=P(I.gfm.nptable).replace("hr",I.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",I._tag).getRegex(),I.gfm.table=P(I.gfm.table).replace("hr",I.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",I._tag).getRegex(),I.pedantic=M({},I.normal,{html:P("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",I._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:A,paragraph:P(I.normal._paragraph).replace("hr",I.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",I.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var R={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:A,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:A,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"};R.punctuation=P(R.punctuation).replace(/punctuation/g,R._punctuation).getRegex(),R.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,R.escapedEmSt=/\\\*|\\_/g,R._comment=P(I._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),R.emStrong.lDelim=P(R.emStrong.lDelim).replace(/punct/g,R._punctuation).getRegex(),R.emStrong.rDelimAst=P(R.emStrong.rDelimAst,"g").replace(/punct/g,R._punctuation).getRegex(),R.emStrong.rDelimUnd=P(R.emStrong.rDelimUnd,"g").replace(/punct/g,R._punctuation).getRegex(),R._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,R._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,R._email=/[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])?)+(?![-_])/,R.autolink=P(R.autolink).replace("scheme",R._scheme).replace("email",R._email).getRegex(),R._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,R.tag=P(R.tag).replace("comment",R._comment).replace("attribute",R._attribute).getRegex(),R._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,R._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,R._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,R.link=P(R.link).replace("label",R._label).replace("href",R._href).replace("title",R._title).getRegex(),R.reflink=P(R.reflink).replace("label",R._label).getRegex(),R.reflinkSearch=P(R.reflinkSearch,"g").replace("reflink",R.reflink).replace("nolink",R.nolink).getRegex(),R.normal=M({},R),R.pedantic=M({},R.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:P(/^!?\[(label)\]\((.*?)\)/).replace("label",R._label).getRegex(),reflink:P(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",R._label).getRegex()}),R.gfm=M({},R.normal,{escape:P(R.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\1;)1&t&&(n+=e),t>>=1,e+=e;return n+e};function V(e){return e.replace(/---/g,"\u2014").replace(/--/g,"\u2013").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1\u2018").replace(/'/g,"\u2019").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1\u201c").replace(/"/g,"\u201d").replace(/\.{3}/g,"\u2026")}function z(e){var t,n,i="",r=e.length;for(t=0;t.5&&(n="x"+n.toString(16)),i+="&#"+n+";";return i}var U=function(){function t(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||L,this.options.tokenizer=this.options.tokenizer||new N,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var t={block:j.normal,inline:F.normal};this.options.pedantic?(t.block=j.pedantic,t.inline=F.pedantic):this.options.gfm&&(t.block=j.gfm,t.inline=this.options.breaks?F.breaks:F.gfm),this.tokenizer.rules=t}t.lex=function(e,n){return new t(n).lex(e)},t.lexInline=function(e,n){return new t(n).inlineTokens(e)};var n=t.prototype;return n.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(e,this.tokens,!0),this.inline(this.tokens),this.tokens},n.blockTokens=function(e,t,n){var i,r,o,a,s,u,c=this;for(void 0===t&&(t=[]),void 0===n&&(n=!0),this.options.pedantic&&(e=e.replace(/^ +$/gm,""));e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(n){return!!(i=n.call(c,e,t))&&(e=e.substring(i.raw.length),t.push(i),!0)}))){if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length),i.type&&t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length),(a=t[t.length-1])&&"paragraph"===a.type?(a.raw+="\n"+i.raw,a.text+="\n"+i.text):t.push(i);continue}if(i=this.tokenizer.fences(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.heading(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.nptable(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.hr(e)){e=e.substring(i.raw.length),t.push(i);continue}if(i=this.tokenizer.blockquote(e)){e=e.substring(i.raw.length),i.tokens=this.blockTokens(i.text,[],n),t.push(i);continue}if(i=this.tokenizer.list(e)){for(e=e.substring(i.raw.length),o=i.items.length,r=0;r=0&&(t=Math.min(t,i))}),t<1/0&&t>=0&&(s=e.substring(0,t+1))}(),n&&(i=this.tokenizer.paragraph(s))){a=t[t.length-1],u&&"paragraph"===a.type?(a.raw+="\n"+i.raw,a.text+="\n"+i.text):t.push(i),u=s.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length),(a=t[t.length-1])&&"text"===a.type?(a.raw+="\n"+i.raw,a.text+="\n"+i.text):t.push(i);continue}if(e){var l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}throw new Error(l)}}return t},n.inline=function(e){var t,n,i,r,o,a,s=e.length;for(t=0;t0)for(;null!=(u=this.tokenizer.rules.inline.reflinkSearch.exec(h));)d.includes(u[0].slice(u[0].lastIndexOf("[")+1,-1))&&(h=h.slice(0,u.index)+"["+B("a",u[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(u=this.tokenizer.rules.inline.blockSkip.exec(h));)h=h.slice(0,u.index)+"["+B("a",u[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(u=this.tokenizer.rules.inline.escapedEmSt.exec(h));)h=h.slice(0,u.index)+"++"+h.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;e;)if(c||(l=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(n){return!!(o=n.call(r,e,t))&&(e=e.substring(o.raw.length),t.push(o),!0)}))){if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e,n,i)){e=e.substring(o.raw.length),n=o.inLink,i=o.inRawBlock,(a=t[t.length-1])&&"text"===o.type&&"text"===a.type?(a.raw+=o.raw,a.text+=o.text):t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),"link"===o.type&&(o.tokens=this.inlineTokens(o.text,[],!0,i)),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length),a=t[t.length-1],"link"===o.type?(o.tokens=this.inlineTokens(o.text,[],!0,i),t.push(o)):a&&"text"===o.type&&"text"===a.type?(a.raw+=o.raw,a.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,h,l)){e=e.substring(o.raw.length),o.tokens=this.inlineTokens(o.text,[],n,i),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e)){e=e.substring(o.raw.length),o.tokens=this.inlineTokens(o.text,[],n,i),t.push(o);continue}if(o=this.tokenizer.autolink(e,z)){e=e.substring(o.raw.length),t.push(o);continue}if(!n&&(o=this.tokenizer.url(e,z))){e=e.substring(o.raw.length),t.push(o);continue}if(s=e,this.options.extensions&&this.options.extensions.startInline&&function(){var t=1/0,n=e.slice(1),i=void 0;r.options.extensions.startInline.forEach(function(e){"number"==typeof(i=e.call(this,n))&&i>=0&&(t=Math.min(t,i))}),t<1/0&&t>=0&&(s=e.substring(0,t+1))}(),o=this.tokenizer.inlineText(s,i,V)){e=e.substring(o.raw.length),"_"!==o.raw.slice(-1)&&(l=o.raw.slice(-1)),c=!0,(a=t[t.length-1])&&"text"===a.type?(a.raw+=o.raw,a.text+=o.text):t.push(o);continue}if(e){var f="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(f);break}throw new Error(f)}}return t},function(t,n,i){i&&e(t,i)}(t,0,[{key:"rules",get:function(){return{block:j,inline:F}}}]),t}(),H=i.exports.defaults,G=function(e,t,n){if(e){var i;try{i=decodeURIComponent(h(n)).replace(f,"").toLowerCase()}catch(r){return null}if(0===i.indexOf("javascript:")||0===i.indexOf("vbscript:")||0===i.indexOf("data:"))return null}t&&!p.test(n)&&(n=function(e,t){v[" "+e]||(v[" "+e]=g.test(e)?e+"/":b(e,"/",!0));var n=-1===(e=v[" "+e]).indexOf(":");return"//"===t.substring(0,2)?n?t:e.replace(m,"$1")+t:"/"===t.charAt(0)?n?t:e.replace(y,"$1")+t:e+t}(t,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch(r){return null}return n},W=_,q=function(){function e(e){this.options=e||H}var t=e.prototype;return t.code=function(e,t,n){var i=(t||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(e,i);null!=r&&r!==e&&(n=!0,e=r)}return e=e.replace(/\n$/,"")+"\n",i?'
    '+(n?e:W(e,!0))+"
    \n":"
    "+(n?e:W(e,!0))+"
    \n"},t.blockquote=function(e){return"
    \n"+e+"
    \n"},t.html=function(e){return e},t.heading=function(e,t,n,i){return this.options.headerIds?"'+e+"\n":""+e+"\n"},t.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},t.list=function(e,t,n){var i=t?"ol":"ul";return"<"+i+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"\n"},t.listitem=function(e){return"
  • "+e+"
  • \n"},t.checkbox=function(e){return" "},t.paragraph=function(e){return"

    "+e+"

    \n"},t.table=function(e,t){return t&&(t=""+t+""),"\n\n"+e+"\n"+t+"
    \n"},t.tablerow=function(e){return"\n"+e+"\n"},t.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"\n"},t.strong=function(e){return""+e+""},t.em=function(e){return""+e+""},t.codespan=function(e){return""+e+""},t.br=function(){return this.options.xhtml?"
    ":"
    "},t.del=function(e){return""+e+""},t.link=function(e,t,n){if(null===(e=G(this.options.sanitize,this.options.baseUrl,e)))return n;var i='"+n+""},t.image=function(e,t,n){if(null===(e=G(this.options.sanitize,this.options.baseUrl,e)))return n;var i=''+n+'":">")},t.text=function(e){return e},e}(),X=function(){function e(){}var t=e.prototype;return t.strong=function(e){return e},t.em=function(e){return e},t.codespan=function(e){return e},t.del=function(e){return e},t.html=function(e){return e},t.text=function(e){return e},t.link=function(e,t,n){return""+n},t.image=function(e,t,n){return""+n},t.br=function(){return""},e}(),Y=function(){function e(){this.seen={}}var t=e.prototype;return t.serialize=function(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},t.getNextSafeSlug=function(e,t){var n=e,i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[e];do{n=e+"-"+ ++i}while(this.seen.hasOwnProperty(n))}return t||(this.seen[e]=i,this.seen[n]=0),n},t.slug=function(e,t){void 0===t&&(t={});var n=this.serialize(e);return this.getNextSafeSlug(n,t.dryrun)},e}(),K=q,$=X,Q=Y,Z=i.exports.defaults,J=w,ee=U,te=function(){function e(e){this.options=e||Z,this.options.renderer=this.options.renderer||new K,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new $,this.slugger=new Q}e.parse=function(t,n){return new e(n).parse(t)},e.parseInline=function(t,n){return new e(n).parseInline(t)};var t=e.prototype;return t.parse=function(e,t){void 0===t&&(t=!0);var n,i,r,o,a,s,u,c,l,h,d,f,p,v,g,m,y,b,_,w="",k=e.length;for(n=0;n0&&"text"===g.tokens[0].type?(g.tokens[0].text=b+" "+g.tokens[0].text,g.tokens[0].tokens&&g.tokens[0].tokens.length>0&&"text"===g.tokens[0].tokens[0].type&&(g.tokens[0].tokens[0].text=b+" "+g.tokens[0].tokens[0].text)):g.tokens.unshift({type:"text",text:b}):v+=b),v+=this.parse(g.tokens,p),l+=this.renderer.listitem(v,y,m);w+=this.renderer.list(l,d,f);continue;case"html":w+=this.renderer.html(h.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(h.tokens));continue;case"text":for(l=h.tokens?this.parseInline(h.tokens):h.text;n+1An error occurred:

    "+ue(u.message+"",!0)+"
    ";throw u}}return de.options=de.setOptions=function(e){return ae(de.defaults,e),le(de.defaults),de},de.getDefaults=ce,de.defaults=he,de.use=function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;iAn error occurred:

    "+ue(i.message+"",!0)+"
    ";throw i}},de.Parser=te,de.parser=te.parse,de.Renderer=ie,de.TextRenderer=re,de.Lexer=ee,de.lexer=ee.lex,de.Tokenizer=ne,de.Slugger=oe,de.parse=de,de}()},29369:function(e,t,n){var i=n(56284),r=n(67830);function o(){this.clear()}o.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},o.prototype.enqueue=function(e){return this.items.push(e),++this.size},o.prototype.dequeue=function(){if(this.size){var e=this.items[this.offset];return 2*++this.offset>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,e}},o.prototype.peek=function(){if(this.size)return this.items[this.offset]},o.prototype.forEach=function(e,t){t=arguments.length>1?t:this;for(var n=this.offset,i=0,r=this.items.length;n=e.length)return{done:!0};var n=e[t];return t++,{value:n,done:!1}})},o.prototype.entries=function(){var e=this.items,t=this.offset,n=0;return new i(function(){if(t>=e.length)return{done:!0};var i=e[t];return t++,{value:[n++,i],done:!1}})},"undefined"!=typeof Symbol&&(o.prototype[Symbol.iterator]=o.prototype.values),o.prototype.toString=function(){return this.toArray().join(",")},o.prototype.toJSON=function(){return this.toArray()},o.prototype.inspect=function(){var e=this.toArray();return Object.defineProperty(e,"constructor",{value:o,enumerable:!1}),e},"undefined"!=typeof Symbol&&(o.prototype[Symbol.for("nodejs.util.inspect.custom")]=o.prototype.inspect),o.from=function(e){var t=new o;return r(e,function(e){t.enqueue(e)}),t},o.of=function(){return o.from(arguments)},e.exports=o},65593:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(72293),a=function(e){function t(){e.apply(this,arguments),this.value=null,this.hasNext=!1,this.hasCompleted=!1}return i(t,e),t.prototype._subscribe=function(t){return this.hasError?(t.error(this.thrownError),o.Subscription.EMPTY):this.hasCompleted&&this.hasNext?(t.next(this.value),t.complete(),o.Subscription.EMPTY):e.prototype._subscribe.call(this,t)},t.prototype.next=function(e){this.hasCompleted||(this.value=e,this.hasNext=!0)},t.prototype.error=function(t){this.hasCompleted||e.prototype.error.call(this,t)},t.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&e.prototype.next.call(this,this.value),e.prototype.complete.call(this)},t}(r.Subject);t.AsyncSubject=a},73907:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(6594),a=function(e){function t(t){e.call(this),this._value=t}return i(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),t.prototype._subscribe=function(t){var n=e.prototype._subscribe.call(this,t);return n&&!n.closed&&t.next(this._value),n},t.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new o.ObjectUnsubscribedError;return this._value},t.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},t}(r.Subject);t.BehaviorSubject=a},36888:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n,i){e.call(this),this.parent=t,this.outerValue=n,this.outerIndex=i,this.index=0}return i(t,e),t.prototype._next=function(e){this.parent.notifyNext(this.outerValue,e,this.outerIndex,this.index++,this)},t.prototype._error=function(e){this.parent.notifyError(e,this),this.unsubscribe()},t.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},t}(n(42109).Subscriber);t.InnerSubscriber=r},94429:function(e,t,n){"use strict";var i=n(18705),r=function(){function e(e,t,n){this.kind=e,this.value=t,this.error=n,this.hasValue="N"===e}return e.prototype.observe=function(e){switch(this.kind){case"N":return e.next&&e.next(this.value);case"E":return e.error&&e.error(this.error);case"C":return e.complete&&e.complete()}},e.prototype.do=function(e,t,n){switch(this.kind){case"N":return e&&e(this.value);case"E":return t&&t(this.error);case"C":return n&&n()}},e.prototype.accept=function(e,t,n){return e&&"function"==typeof e.next?this.observe(e):this.do(e,t,n)},e.prototype.toObservable=function(){switch(this.kind){case"N":return i.Observable.of(this.value);case"E":return i.Observable.throw(this.error);case"C":return i.Observable.empty()}throw new Error("unexpected notification kind value")},e.createNext=function(t){return void 0!==t?new e("N",t):e.undefinedValueNotification},e.createError=function(t){return new e("E",void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e("C"),e.undefinedValueNotification=new e("N",void 0),e}();t.Notification=r},18705:function(e,t,n){"use strict";var i=n(80019),r=n(18154),o=n(45783),a=n(10142),s=function(){function e(e){this._isScalar=!1,e&&(this._subscribe=e)}return e.prototype.lift=function(t){var n=new e;return n.source=this,n.operator=t,n},e.prototype.subscribe=function(e,t,n){var i=this.operator,o=r.toSubscriber(e,t,n);if(i?i.call(o,this.source):o.add(this.source||!o.syncErrorThrowable?this._subscribe(o):this._trySubscribe(o)),o.syncErrorThrowable&&(o.syncErrorThrowable=!1,o.syncErrorThrown))throw o.syncErrorValue;return o},e.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.syncErrorThrown=!0,e.syncErrorValue=t,e.error(t)}},e.prototype.forEach=function(e,t){var n=this;if(t||(i.root.Rx&&i.root.Rx.config&&i.root.Rx.config.Promise?t=i.root.Rx.config.Promise:i.root.Promise&&(t=i.root.Promise)),!t)throw new Error("no Promise impl found");return new t(function(t,i){var r;r=n.subscribe(function(t){if(r)try{e(t)}catch(n){i(n),r.unsubscribe()}else e(t)},i,t)})},e.prototype._subscribe=function(e){return this.source.subscribe(e)},e.prototype[o.observable]=function(){return this},e.prototype.pipe=function(){for(var e=[],t=0;tt&&(o=Math.max(o,r-t)),o>0&&i.splice(0,o),i},t}(r.Subject);t.ReplaySubject=l;var h=function(e,t){this.time=e,this.value=t}},25430:function(e,t,n){"use strict";var i=n(2369);t.xQ=i.Subject,n(18705),n(24769),n(95914),n(88007),n(3194),n(61898),n(16301),n(23276),n(66593),n(13745),n(57362),n(24518),n(68789),n(30520),n(67370),n(86866),n(11505),n(5031),n(36780),n(17038),n(15718),n(27915),n(90763),n(6846),n(65662),n(6799),n(81854),n(612),n(10838),n(6725),n(8827),n(43511),n(38922),n(25178),n(56937),n(22947),n(82894),n(11206),n(94183),n(16653),n(17930),n(81118),n(50317),n(90674),n(66460),n(79232),n(3945),n(44674),n(73505),n(38749),n(16479),n(22744),n(44475),n(97384),n(8237),n(24937),n(99013),n(84042),n(44436),n(7099),n(6217),n(57476),n(72646),n(91573),n(27387),n(27366),n(88859),n(65425),n(16733),n(23381),n(80404),n(63770),n(53626),n(98851),n(84878),n(26544),n(53582),n(61749),n(34838),n(49681),n(46227),n(56455),n(40881),n(94315),n(92910),n(52442),n(84664),n(61250),n(28310),n(43027),n(18252),n(49571),n(31782),n(9800),n(41854),n(74839),n(1305),n(99144),n(89952),n(85863),n(2865),n(92667),n(22185),n(72919),n(88630),n(75458),n(40780),n(35099),n(57502),n(81676),n(20579),n(71323),n(84950),n(57113),n(95073),n(75654),n(59889),n(96611),n(81845),n(7828),n(4881),n(74568),n(32352),n(50169),n(93543),n(61690),n(15914),n(68583),n(44808),n(49088),n(72293),n(42109),n(65593),n(81959),n(73907),n(51493),n(94429),n(44640),n(11758),n(6594),n(13815),n(84536),n(73390),n(62688),n(24482),n(18353),n(55298),n(10142),n(85522),n(90680),n(97088),n(12948),n(28592),n(72121),n(45783),n(39053)},11965:function(e,t){"use strict";var n=function(){function e(t,n){void 0===n&&(n=e.now),this.SchedulerAction=t,this.now=n}return e.prototype.schedule=function(e,t,n){return void 0===t&&(t=0),new this.SchedulerAction(this,e).schedule(n,t)},e.now=Date.now?Date.now:function(){return+new Date},e}();t.Scheduler=n},2369:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(42109),a=n(72293),s=n(6594),u=n(9060),c=n(28592),l=function(e){function t(t){e.call(this,t),this.destination=t}return i(t,e),t}(o.Subscriber);t.SubjectSubscriber=l;var h=function(e){function t(){e.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return i(t,e),t.prototype[c.rxSubscriber]=function(){return new l(this)},t.prototype.lift=function(e){var t=new d(this,this);return t.operator=e,t},t.prototype.next=function(e){if(this.closed)throw new s.ObjectUnsubscribedError;if(!this.isStopped)for(var t=this.observers,n=t.length,i=t.slice(),r=0;r=e.length)return void i.complete();i.next(t[n]),e.index=n+1,this.schedule(e)}},t.prototype._subscribe=function(e){var n=this.arrayLike,i=this.scheduler,r=n.length;if(i)return i.schedule(t.dispatch,0,{arrayLike:n,index:0,length:r,subscriber:e});for(var o=0;o1?new t(e,i):1===r?new o.ScalarObservable(e[0],i):new a.EmptyObservable(i)},t.dispatch=function(e){var t=e.array,n=e.index,i=e.subscriber;n>=e.count?i.complete():(i.next(t[n]),!i.closed&&(e.index=n+1,this.schedule(e)))},t.prototype._subscribe=function(e){var n=this.array,i=n.length,r=this.scheduler;if(r)return r.schedule(t.dispatch,0,{array:n,index:0,count:i,subscriber:e});for(var o=0;o1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}(a.Subscriber)},34078:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(93658),a=n(84308),s=function(e){function t(t){e.call(this),this.observableFactory=t}return i(t,e),t.create=function(e){return new t(e)},t.prototype._subscribe=function(e){return new u(e,this.observableFactory)},t}(r.Observable);t.DeferObservable=s;var u=function(e){function t(t,n){e.call(this,t),this.factory=n,this.tryDefer()}return i(t,e),t.prototype.tryDefer=function(){try{this._callFactory()}catch(e){this._error(e)}},t.prototype._callFactory=function(){var e=this.factory();e&&this.add(o.subscribeToResult(this,e))},t}(a.OuterSubscriber)},70481:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t){e.call(this),this.scheduler=t}return i(t,e),t.create=function(e){return new t(e)},t.dispatch=function(e){e.subscriber.complete()},t.prototype._subscribe=function(e){var n=this.scheduler;if(n)return n.schedule(t.dispatch,0,{subscriber:e});e.complete()},t}(n(18705).Observable);t.EmptyObservable=r},72210:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n){e.call(this),this.error=t,this.scheduler=n}return i(t,e),t.create=function(e,n){return new t(e,n)},t.dispatch=function(e){e.subscriber.error(e.error)},t.prototype._subscribe=function(e){var n=this.error,i=this.scheduler;if(e.syncErrorThrowable=!0,i)return i.schedule(t.dispatch,0,{error:n,subscriber:e});e.error(n)},t}(n(18705).Observable);t.ErrorObservable=r},56064:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(70481),a=n(48242),s=n(93658),u=n(84308),c=function(e){function t(t,n){e.call(this),this.sources=t,this.resultSelector=n}return i(t,e),t.create=function(){for(var e=[],n=0;nl?l:t:t}(e)),this.arr=e,this.idx=t,this.len=n}return e.prototype[a.iterator]=function(){return this},e.prototype.next=function(){return this.idx=e.count?i.complete():(i.next(t),!i.closed&&(e.index=n+1,e.start=t+1,this.schedule(e)))},t.prototype._subscribe=function(e){var n=0,i=this.start,r=this._count,o=this.scheduler;if(o)return o.schedule(t.dispatch,0,{index:n,count:r,start:i,subscriber:e});for(;;){if(n++>=r){e.complete();break}if(e.next(i++),e.closed)break}},t}(n(18705).Observable);t.RangeObservable=r},80478:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n){e.call(this),this.value=t,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return i(t,e),t.create=function(e,n){return new t(e,n)},t.dispatch=function(e){var t=e.value,n=e.subscriber;e.done?n.complete():(n.next(t),!n.closed&&(e.done=!0,this.schedule(e)))},t.prototype._subscribe=function(e){var n=this.value,i=this.scheduler;if(i)return i.schedule(t.dispatch,0,{done:!1,value:n,subscriber:e});e.next(n),e.closed||e.complete()},t}(n(18705).Observable);t.ScalarObservable=r},82966:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(85522),a=n(39479),s=function(e){function t(t,n,i){void 0===n&&(n=0),void 0===i&&(i=o.asap),e.call(this),this.source=t,this.delayTime=n,this.scheduler=i,(!a.isNumeric(n)||n<0)&&(this.delayTime=0),(!i||"function"!=typeof i.schedule)&&(this.scheduler=o.asap)}return i(t,e),t.create=function(e,n,i){return void 0===n&&(n=0),void 0===i&&(i=o.asap),new t(e,n,i)},t.dispatch=function(e){return this.add(e.source.subscribe(e.subscriber))},t.prototype._subscribe=function(e){return this.scheduler.schedule(t.dispatch,this.delayTime,{source:this.source,subscriber:e})},t}(r.Observable);t.SubscribeOnObservable=s},92870:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(39479),o=n(18705),a=n(90680),s=n(41503),u=n(783),c=function(e){function t(t,n,i){void 0===t&&(t=0),e.call(this),this.period=-1,this.dueTime=0,r.isNumeric(n)?this.period=Number(n)<1?1:Number(n):s.isScheduler(n)&&(i=n),s.isScheduler(i)||(i=a.async),this.scheduler=i,this.dueTime=u.isDate(t)?+t-this.scheduler.now():t}return i(t,e),t.create=function(e,n,i){return void 0===e&&(e=0),new t(e,n,i)},t.dispatch=function(e){var t=e.index,n=e.period,i=e.subscriber;if(i.next(t),!i.closed){if(-1===n)return i.complete();e.index=t+1,this.schedule(e,n)}},t.prototype._subscribe=function(e){var n=this;return n.scheduler.schedule(t.dispatch,n.dueTime,{index:0,period:n.period,subscriber:e})},t}(o.Observable);t.TimerObservable=c},16196:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(18705),o=n(93658),a=n(84308),s=function(e){function t(t,n){e.call(this),this.resourceFactory=t,this.observableFactory=n}return i(t,e),t.create=function(e,n){return new t(e,n)},t.prototype._subscribe=function(e){var t,n=this.resourceFactory,i=this.observableFactory;try{return t=n(),new u(e,t,i)}catch(r){e.error(r)}},t}(r.Observable);t.UsingObservable=s;var u=function(e){function t(t,n,i){e.call(this,t),this.resource=n,this.observableFactory=i,t.add(n),this.tryUse()}return i(t,e),t.prototype.tryUse=function(){try{var e=this.observableFactory.call(this,this.resource);e&&this.add(o.subscribeToResult(this,e))}catch(t){this._error(t)}},t}(a.OuterSubscriber)},59246:function(e,t,n){"use strict";var i=n(19183);t.bindCallback=i.BoundCallbackObservable.create},65571:function(e,t,n){"use strict";var i=n(78655);t.bindNodeCallback=i.BoundNodeCallbackObservable.create},24669:function(e,t,n){"use strict";var i=n(41503),r=n(48242),o=n(96177),a=n(49134);t.combineLatest=function(){for(var e=[],t=0;t1&&"number"==typeof e[e.length-1]&&(n=e.pop())):"number"==typeof u&&(n=e.pop()),null===s&&1===e.length&&e[0]instanceof i.Observable?e[0]:a.mergeAll(n)(new r.ArrayObservable(e,s))}},94503:function(e,t,n){"use strict";var i=n(20143);t.never=i.NeverObservable.create},69657:function(e,t,n){"use strict";var i=n(96177);t.of=i.ArrayObservable.of},61395:function(e,t,n){"use strict";var i=n(46243);t.onErrorResumeNext=i.onErrorResumeNextStatic},95425:function(e,t,n){"use strict";var i=n(19770);t.pairs=i.PairsObservable.create},24330:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(48242),o=n(96177),a=n(84308),s=n(93658);t.race=function(){for(var e=[],t=0;t=2&&(a=arguments[1]);var s=Number.POSITIVE_INFINITY;return t>=3&&(s=arguments[2]),o.bufferTime(e,a,s,n)(this)}},92523:function(e,t,n){"use strict";var i=n(15440);t.bufferToggle=function(e,t){return i.bufferToggle(e,t)(this)}},49436:function(e,t,n){"use strict";var i=n(51786);t.bufferWhen=function(e){return i.bufferWhen(e)(this)}},64731:function(e,t,n){"use strict";var i=n(93017);t._catch=function(e){return i.catchError(e)(this)}},92273:function(e,t,n){"use strict";var i=n(17054);t.combineAll=function(e){return i.combineAll(e)(this)}},8709:function(e,t,n){"use strict";var i=n(49134);t.combineLatest=function(){for(var e=[],t=0;t=2?i.reduce(e,t)(this):i.reduce(e)(this)}},12931:function(e,t,n){"use strict";var i=n(15329);t.repeat=function(e){return void 0===e&&(e=-1),i.repeat(e)(this)}},68816:function(e,t,n){"use strict";var i=n(63964);t.repeatWhen=function(e){return i.repeatWhen(e)(this)}},17144:function(e,t,n){"use strict";var i=n(40241);t.retry=function(e){return void 0===e&&(e=-1),i.retry(e)(this)}},82766:function(e,t,n){"use strict";var i=n(23896);t.retryWhen=function(e){return i.retryWhen(e)(this)}},62068:function(e,t,n){"use strict";var i=n(92043);t.sample=function(e){return i.sample(e)(this)}},97013:function(e,t,n){"use strict";var i=n(90680),r=n(71239);t.sampleTime=function(e,t){return void 0===t&&(t=i.async),r.sampleTime(e,t)(this)}},98996:function(e,t,n){"use strict";var i=n(64949);t.scan=function(e,t){return arguments.length>=2?i.scan(e,t)(this):i.scan(e)(this)}},77033:function(e,t,n){"use strict";var i=n(88948);t.sequenceEqual=function(e,t){return i.sequenceEqual(e,t)(this)}},10377:function(e,t,n){"use strict";var i=n(35473);t.share=function(){return i.share()(this)}},71623:function(e,t,n){"use strict";var i=n(62704);t.shareReplay=function(e,t,n){return i.shareReplay(e,t,n)(this)}},91956:function(e,t,n){"use strict";var i=n(92223);t.single=function(e){return i.single(e)(this)}},72355:function(e,t,n){"use strict";var i=n(11189);t.skip=function(e){return i.skip(e)(this)}},69329:function(e,t,n){"use strict";var i=n(73346);t.skipLast=function(e){return i.skipLast(e)(this)}},68481:function(e,t,n){"use strict";var i=n(12928);t.skipUntil=function(e){return i.skipUntil(e)(this)}},587:function(e,t,n){"use strict";var i=n(69415);t.skipWhile=function(e){return i.skipWhile(e)(this)}},49292:function(e,t,n){"use strict";var i=n(30673);t.startWith=function(){for(var e=[],t=0;t0&&this.destination.next(t),e.prototype._complete.call(this)},t}(r.Subscriber),s=function(e){function t(t,n,i){e.call(this,t),this.bufferSize=n,this.startBufferEvery=i,this.buffers=[],this.count=0}return i(t,e),t.prototype._next=function(e){var t=this,n=t.bufferSize,i=t.startBufferEvery,r=t.buffers,o=t.count;this.count++,o%i==0&&r.push([]);for(var a=r.length;a--;){var s=r[a];s.push(e),s.length===n&&(r.splice(a,1),this.destination.next(s))}},t.prototype._complete=function(){for(var t=this.buffers,n=this.destination;t.length>0;){var i=t.shift();i.length>0&&n.next(i)}e.prototype._complete.call(this)},t}(r.Subscriber)},6489:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(90680),o=n(42109),a=n(41503);t.bufferTime=function(e){var t=arguments.length,n=r.async;a.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],t--);var i=null;t>=2&&(i=arguments[1]);var o=Number.POSITIVE_INFINITY;return t>=3&&(o=arguments[2]),function(t){return t.lift(new s(e,i,o,n))}};var s=function(){function e(e,t,n,i){this.bufferTimeSpan=e,this.bufferCreationInterval=t,this.maxBufferSize=n,this.scheduler=i}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},e}(),u=function(){this.buffer=[]},c=function(e){function t(t,n,i,r,o){e.call(this,t),this.bufferTimeSpan=n,this.bufferCreationInterval=i,this.maxBufferSize=r,this.scheduler=o,this.contexts=[];var a=this.openContext();if(this.timespanOnly=null==i||i<0,this.timespanOnly)this.add(a.closeAction=o.schedule(l,n,{subscriber:this,context:a,bufferTimeSpan:n}));else{var s={bufferTimeSpan:n,bufferCreationInterval:i,subscriber:this,scheduler:o};this.add(a.closeAction=o.schedule(d,n,{subscriber:this,context:a})),this.add(o.schedule(h,i,s))}}return i(t,e),t.prototype._next=function(e){for(var t,n=this.contexts,i=n.length,r=0;r0;){var i=t.shift();n.next(i.buffer)}e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.contexts=null},t.prototype.onBufferFull=function(e){this.closeContext(e);var t=e.closeAction;if(t.unsubscribe(),this.remove(t),!this.closed&&this.timespanOnly){e=this.openContext();var n=this.bufferTimeSpan;this.add(e.closeAction=this.scheduler.schedule(l,n,{subscriber:this,context:e,bufferTimeSpan:n}))}},t.prototype.openContext=function(){var e=new u;return this.contexts.push(e),e},t.prototype.closeContext=function(e){this.destination.next(e.buffer);var t=this.contexts;(t?t.indexOf(e):-1)>=0&&t.splice(t.indexOf(e),1)},t}(o.Subscriber);function l(e){var t=e.subscriber,n=e.context;n&&t.closeContext(n),t.closed||(e.context=t.openContext(),e.context.closeAction=this.schedule(e,e.bufferTimeSpan))}function h(e){var t=e.bufferCreationInterval,n=e.bufferTimeSpan,i=e.subscriber,r=e.scheduler,o=i.openContext();i.closed||(i.add(o.closeAction=r.schedule(d,n,{subscriber:i,context:o})),this.schedule(e,t))}function d(e){e.subscriber.closeContext(e.context)}},15440:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(72293),o=n(93658),a=n(84308);t.bufferToggle=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.openings=e,this.closingSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.openings,this.closingSelector))},e}(),u=function(e){function t(t,n,i){e.call(this,t),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(o.subscribeToResult(this,n))}return i(t,e),t.prototype._next=function(e){for(var t=this.contexts,n=t.length,i=0;i0;){var i=n.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,e.prototype._error.call(this,t)},t.prototype._complete=function(){for(var t=this.contexts;t.length>0;){var n=t.shift();this.destination.next(n.buffer),n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,e.prototype._complete.call(this)},t.prototype.notifyNext=function(e,t,n,i,r){e?this.closeBuffer(e):this.openBuffer(t)},t.prototype.notifyComplete=function(e){this.closeBuffer(e.context)},t.prototype.openBuffer=function(e){try{var t=this.closingSelector.call(this,e);t&&this.trySubscribe(t)}catch(n){this._error(n)}},t.prototype.closeBuffer=function(e){var t=this.contexts;if(t&&e){var n=e.subscription;this.destination.next(e.buffer),t.splice(t.indexOf(e),1),this.remove(n),n.unsubscribe()}},t.prototype.trySubscribe=function(e){var t=this.contexts,n=new r.Subscription,i={buffer:[],subscription:n};t.push(i);var a=o.subscribeToResult(this,e,i);!a||a.closed?this.closeBuffer(i):(a.context=i,this.add(a),n.add(a))},t}(a.OuterSubscriber)},51786:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(72293),o=n(33463),a=n(85814),s=n(84308),u=n(93658);t.bufferWhen=function(e){return function(t){return t.lift(new c(e))}};var c=function(){function e(e){this.closingSelector=e}return e.prototype.call=function(e,t){return t.subscribe(new l(e,this.closingSelector))},e}(),l=function(e){function t(t,n){e.call(this,t),this.closingSelector=n,this.subscribing=!1,this.openBuffer()}return i(t,e),t.prototype._next=function(e){this.buffer.push(e)},t.prototype._complete=function(){var t=this.buffer;t&&this.destination.next(t),e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.buffer=null,this.subscribing=!1},t.prototype.notifyNext=function(e,t,n,i,r){this.openBuffer()},t.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},t.prototype.openBuffer=function(){var e=this.closingSubscription;e&&(this.remove(e),e.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];var t=o.tryCatch(this.closingSelector)();t===a.errorObject?this.error(a.errorObject.e):(e=new r.Subscription,this.closingSubscription=e,this.add(e),this.subscribing=!0,e.add(u.subscribeToResult(this,t)),this.subscribing=!1)},t}(s.OuterSubscriber)},93017:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.catchError=function(e){return function(t){var n=new a(e),i=t.lift(n);return n.caught=i}};var a=function(){function e(e){this.selector=e}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.selector,this.caught))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.selector=n,this.caught=i}return i(t,e),t.prototype.error=function(t){if(!this.isStopped){var n=void 0;try{n=this.selector(t,this.caught)}catch(i){return void e.prototype.error.call(this,i)}this._unsubscribeAndRecycle(),this.add(o.subscribeToResult(this,n))}},t}(r.OuterSubscriber)},17054:function(e,t,n){"use strict";var i=n(49134);t.combineAll=function(e){return function(t){return t.lift(new i.CombineLatestOperator(e))}}},49134:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(96177),o=n(48242),a=n(84308),s=n(93658),u={};t.combineLatest=function(){for(var e=[],t=0;t0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var o=Math.max(0,n[0].time-i.now());this.schedule(e,o)}else this.unsubscribe(),t.active=!1},t.prototype._schedule=function(e){this.active=!0,this.add(e.schedule(t.dispatch,this.delay,{source:this,destination:this.destination,scheduler:e}))},t.prototype.scheduleNotification=function(e){if(!0!==this.errored){var t=this.scheduler,n=new l(t.now()+this.delay,e);this.queue.push(n),!1===this.active&&this._schedule(t)}},t.prototype._next=function(e){this.scheduleNotification(s.Notification.createNext(e))},t.prototype._error=function(e){this.errored=!0,this.queue=[],this.destination.error(e)},t.prototype._complete=function(){this.scheduleNotification(s.Notification.createComplete())},t}(a.Subscriber),l=function(e,t){this.time=e,this.notification=t}},22944:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(18705),a=n(84308),s=n(93658);t.delayWhen=function(e,t){return t?function(n){return new l(n,t).lift(new u(e))}:function(t){return t.lift(new u(e))}};var u=function(){function e(e){this.delayDurationSelector=e}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.delayDurationSelector))},e}(),c=function(e){function t(t,n){e.call(this,t),this.delayDurationSelector=n,this.completed=!1,this.delayNotifierSubscriptions=[],this.values=[]}return i(t,e),t.prototype.notifyNext=function(e,t,n,i,r){this.destination.next(e),this.removeSubscription(r),this.tryComplete()},t.prototype.notifyError=function(e,t){this._error(e)},t.prototype.notifyComplete=function(e){var t=this.removeSubscription(e);t&&this.destination.next(t),this.tryComplete()},t.prototype._next=function(e){try{var t=this.delayDurationSelector(e);t&&this.tryDelay(t,e)}catch(n){this.destination.error(n)}},t.prototype._complete=function(){this.completed=!0,this.tryComplete()},t.prototype.removeSubscription=function(e){e.unsubscribe();var t=this.delayNotifierSubscriptions.indexOf(e),n=null;return-1!==t&&(n=this.values[t],this.delayNotifierSubscriptions.splice(t,1),this.values.splice(t,1)),n},t.prototype.tryDelay=function(e,t){var n=s.subscribeToResult(this,e,t);n&&!n.closed&&(this.add(n),this.delayNotifierSubscriptions.push(n)),this.values.push(t)},t.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},t}(a.OuterSubscriber),l=function(e){function t(t,n){e.call(this),this.source=t,this.subscriptionDelay=n}return i(t,e),t.prototype._subscribe=function(e){this.subscriptionDelay.subscribe(new h(e,this.source))},t}(o.Observable),h=function(e){function t(t,n){e.call(this),this.parent=t,this.source=n,this.sourceSubscribed=!1}return i(t,e),t.prototype._next=function(e){this.subscribeToSource()},t.prototype._error=function(e){this.unsubscribe(),this.parent.error(e)},t.prototype._complete=function(){this.subscribeToSource()},t.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},t}(r.Subscriber)},95591:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.dematerialize=function(){return function(e){return e.lift(new o)}};var o=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new a(e))},e}(),a=function(e){function t(t){e.call(this,t)}return i(t,e),t.prototype._next=function(e){e.observe(this.destination)},t}(r.Subscriber)},25753:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658),a=n(40317);t.distinct=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.keySelector=e,this.flushes=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.keySelector,this.flushes))},e}(),u=function(e){function t(t,n,i){e.call(this,t),this.keySelector=n,this.values=new a.Set,i&&this.add(o.subscribeToResult(this,i))}return i(t,e),t.prototype.notifyNext=function(e,t,n,i,r){this.values.clear()},t.prototype.notifyError=function(e,t){this._error(e)},t.prototype._next=function(e){this.keySelector?this._useKeySelector(e):this._finalizeNext(e,e)},t.prototype._useKeySelector=function(e){var t,n=this.destination;try{t=this.keySelector(e)}catch(i){return void n.error(i)}this._finalizeNext(t,e)},t.prototype._finalizeNext=function(e,t){var n=this.values;n.has(e)||(n.add(e),this.destination.next(t))},t}(r.OuterSubscriber);t.DistinctSubscriber=u},65608:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(33463),a=n(85814);t.distinctUntilChanged=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.compare=e,this.keySelector=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.compare,this.keySelector))},e}(),u=function(e){function t(t,n,i){e.call(this,t),this.keySelector=i,this.hasKey=!1,"function"==typeof n&&(this.compare=n)}return i(t,e),t.prototype.compare=function(e,t){return e===t},t.prototype._next=function(e){var t=e;if(this.keySelector&&(t=o.tryCatch(this.keySelector)(e))===a.errorObject)return this.destination.error(a.errorObject.e);var n=!1;if(this.hasKey){if((n=o.tryCatch(this.compare)(this.key,t))===a.errorObject)return this.destination.error(a.errorObject.e)}else this.hasKey=!0;!1===Boolean(n)&&(this.key=t,this.destination.next(e))},t}(r.Subscriber)},8330:function(e,t,n){"use strict";var i=n(65608);t.distinctUntilKeyChanged=function(e,t){return i.distinctUntilChanged(function(n,i){return t?t(n[e],i[e]):n[e]===i[e]})}},29264:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758);t.elementAt=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){if(this.index=e,this.defaultValue=t,e<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.index,this.defaultValue))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.index=n,this.defaultValue=i}return i(t,e),t.prototype._next=function(e){0==this.index--&&(this.destination.next(e),this.destination.complete())},t.prototype._complete=function(){var e=this.destination;this.index>=0&&(void 0!==this.defaultValue?e.next(this.defaultValue):e.error(new o.ArgumentOutOfRangeError)),e.complete()},t}(r.Subscriber)},26285:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.every=function(e,t){return function(n){return n.lift(new o(e,t,n))}};var o=function(){function e(e,t,n){this.predicate=e,this.thisArg=t,this.source=n}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.predicate,this.thisArg,this.source))},e}(),a=function(e){function t(t,n,i,r){e.call(this,t),this.predicate=n,this.thisArg=i,this.source=r,this.index=0,this.thisArg=i||this}return i(t,e),t.prototype.notifyComplete=function(e){this.destination.next(e),this.destination.complete()},t.prototype._next=function(e){var t=!1;try{t=this.predicate.call(this.thisArg,e,this.index++,this.source)}catch(n){return void this.destination.error(n)}t||this.notifyComplete(!1)},t.prototype._complete=function(){this.notifyComplete(!0)},t}(r.Subscriber)},93229:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.exhaust=function(){return function(e){return e.lift(new a)}};var a=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new s(e))},e}(),s=function(e){function t(t){e.call(this,t),this.hasCompleted=!1,this.hasSubscription=!1}return i(t,e),t.prototype._next=function(e){this.hasSubscription||(this.hasSubscription=!0,this.add(o.subscribeToResult(this,e)))},t.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},t.prototype.notifyComplete=function(e){this.remove(e),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},t}(r.OuterSubscriber)},15758:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.exhaustMap=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.project=e,this.resultSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.project,this.resultSelector))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.project=n,this.resultSelector=i,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}return i(t,e),t.prototype._next=function(e){this.hasSubscription||this.tryNext(e)},t.prototype.tryNext=function(e){var t=this.index++,n=this.destination;try{var i=this.project(e,t);this.hasSubscription=!0,this.add(o.subscribeToResult(this,i,e,t))}catch(r){n.error(r)}},t.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},t.prototype.notifyNext=function(e,t,n,i,r){var o=this.destination;this.resultSelector?this.trySelectResult(e,t,n,i):o.next(t)},t.prototype.trySelectResult=function(e,t,n,i){var r=this.resultSelector,o=this.destination;try{var a=r(e,t,n,i);o.next(a)}catch(s){o.error(s)}},t.prototype.notifyError=function(e){this.destination.error(e)},t.prototype.notifyComplete=function(e){this.remove(e),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},t}(r.OuterSubscriber)},55364:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(33463),o=n(85814),a=n(84308),s=n(93658);t.expand=function(e,t,n){return void 0===t&&(t=Number.POSITIVE_INFINITY),void 0===n&&(n=void 0),t=(t||0)<1?Number.POSITIVE_INFINITY:t,function(i){return i.lift(new u(e,t,n))}};var u=function(){function e(e,t,n){this.project=e,this.concurrent=t,this.scheduler=n}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.project,this.concurrent,this.scheduler))},e}();t.ExpandOperator=u;var c=function(e){function t(t,n,i,r){e.call(this,t),this.project=n,this.concurrent=i,this.scheduler=r,this.index=0,this.active=0,this.hasCompleted=!1,i0&&this._next(t.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},t}(a.OuterSubscriber);t.ExpandSubscriber=c},27015:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.filter=function(e,t){return function(n){return n.lift(new o(e,t))}};var o=function(){function e(e,t){this.predicate=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.predicate,this.thisArg))},e}(),a=function(e){function t(t,n,i){e.call(this,t),this.predicate=n,this.thisArg=i,this.count=0}return i(t,e),t.prototype._next=function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)},t}(r.Subscriber)},94367:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(72293);t.finalize=function(e){return function(t){return t.lift(new a(e))}};var a=function(){function e(e){this.callback=e}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.callback))},e}(),s=function(e){function t(t,n){e.call(this,t),this.add(new o.Subscription(n))}return i(t,e),t}(r.Subscriber)},16700:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.find=function(e,t){if("function"!=typeof e)throw new TypeError("predicate is not a function");return function(n){return n.lift(new o(e,n,!1,t))}};var o=function(){function e(e,t,n,i){this.predicate=e,this.source=t,this.yieldIndex=n,this.thisArg=i}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.predicate,this.source,this.yieldIndex,this.thisArg))},e}();t.FindValueOperator=o;var a=function(e){function t(t,n,i,r,o){e.call(this,t),this.predicate=n,this.source=i,this.yieldIndex=r,this.thisArg=o,this.index=0}return i(t,e),t.prototype.notifyComplete=function(e){var t=this.destination;t.next(e),t.complete()},t.prototype._next=function(e){var t=this.predicate,n=this.thisArg,i=this.index++;try{t.call(n||this,e,i,this.source)&&this.notifyComplete(this.yieldIndex?i:e)}catch(r){this.destination.error(r)}},t.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},t}(r.Subscriber);t.FindValueSubscriber=a},86452:function(e,t,n){"use strict";var i=n(16700);t.findIndex=function(e,t){return function(n){return n.lift(new i.FindValueOperator(e,n,!0,t))}}},12309:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(44640);t.first=function(e,t,n){return function(i){return i.lift(new a(e,t,n,i))}};var a=function(){function e(e,t,n,i){this.predicate=e,this.resultSelector=t,this.defaultValue=n,this.source=i}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.predicate,this.resultSelector,this.defaultValue,this.source))},e}(),s=function(e){function t(t,n,i,r,o){e.call(this,t),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=o,this.index=0,this.hasCompleted=!1,this._emitted=!1}return i(t,e),t.prototype._next=function(e){var t=this.index++;this.predicate?this._tryPredicate(e,t):this._emit(e,t)},t.prototype._tryPredicate=function(e,t){var n;try{n=this.predicate(e,t,this.source)}catch(i){return void this.destination.error(i)}n&&this._emit(e,t)},t.prototype._emit=function(e,t){this.resultSelector?this._tryResultSelector(e,t):this._emitFinal(e)},t.prototype._tryResultSelector=function(e,t){var n;try{n=this.resultSelector(e,t)}catch(i){return void this.destination.error(i)}this._emitFinal(n)},t.prototype._emitFinal=function(e){var t=this.destination;this._emitted||(this._emitted=!0,t.next(e),t.complete(),this.hasCompleted=!0)},t.prototype._complete=function(){var e=this.destination;this.hasCompleted||void 0===this.defaultValue?this.hasCompleted||e.error(new o.EmptyError):(e.next(this.defaultValue),e.complete())},t}(r.Subscriber)},92577:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(72293),a=n(18705),s=n(2369),u=n(49754),c=n(30764);t.groupBy=function(e,t,n,i){return function(r){return r.lift(new l(e,t,n,i))}};var l=function(){function e(e,t,n,i){this.keySelector=e,this.elementSelector=t,this.durationSelector=n,this.subjectSelector=i}return e.prototype.call=function(e,t){return t.subscribe(new h(e,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},e}(),h=function(e){function t(t,n,i,r,o){e.call(this,t),this.keySelector=n,this.elementSelector=i,this.durationSelector=r,this.subjectSelector=o,this.groups=null,this.attemptedToUnsubscribe=!1,this.count=0}return i(t,e),t.prototype._next=function(e){var t;try{t=this.keySelector(e)}catch(n){return void this.error(n)}this._group(e,t)},t.prototype._group=function(e,t){var n=this.groups;n||(n=this.groups="string"==typeof t?new c.FastMap:new u.Map);var i,r=n.get(t);if(this.elementSelector)try{i=this.elementSelector(e)}catch(l){this.error(l)}else i=e;if(!r){r=this.subjectSelector?this.subjectSelector():new s.Subject,n.set(t,r);var o=new f(t,r,this);if(this.destination.next(o),this.durationSelector){var a=void 0;try{a=this.durationSelector(new f(t,r))}catch(l){return void this.error(l)}this.add(a.subscribe(new d(t,r,this)))}}r.closed||r.next(i)},t.prototype._error=function(e){var t=this.groups;t&&(t.forEach(function(t,n){t.error(e)}),t.clear()),this.destination.error(e)},t.prototype._complete=function(){var e=this.groups;e&&(e.forEach(function(e,t){e.complete()}),e.clear()),this.destination.complete()},t.prototype.removeGroup=function(e){this.groups.delete(e)},t.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&e.prototype.unsubscribe.call(this))},t}(r.Subscriber),d=function(e){function t(t,n,i){e.call(this,n),this.key=t,this.group=n,this.parent=i}return i(t,e),t.prototype._next=function(e){this.complete()},t.prototype._unsubscribe=function(){var e=this.parent,t=this.key;this.key=this.parent=null,e&&e.removeGroup(t)},t}(r.Subscriber),f=function(e){function t(t,n,i){e.call(this),this.key=t,this.groupSubject=n,this.refCountSubscription=i}return i(t,e),t.prototype._subscribe=function(e){var t=new o.Subscription,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&t.add(new p(n)),t.add(i.subscribe(e)),t},t}(a.Observable);t.GroupedObservable=f;var p=function(e){function t(t){e.call(this),this.parent=t,t.count++}return i(t,e),t.prototype.unsubscribe=function(){var t=this.parent;!t.closed&&!this.closed&&(e.prototype.unsubscribe.call(this),t.count-=1,0===t.count&&t.attemptedToUnsubscribe&&t.unsubscribe())},t}(o.Subscription)},86898:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(68668);t.ignoreElements=function(){return function(e){return e.lift(new a)}};var a=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new s(e))},e}(),s=function(e){function t(){e.apply(this,arguments)}return i(t,e),t.prototype._next=function(e){o.noop()},t}(r.Subscriber)},89121:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.isEmpty=function(){return function(e){return e.lift(new o)}};var o=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new a(e))},e}(),a=function(e){function t(t){e.call(this,t)}return i(t,e),t.prototype.notifyComplete=function(e){var t=this.destination;t.next(e),t.complete()},t.prototype._next=function(e){this.notifyComplete(!1)},t.prototype._complete=function(){this.notifyComplete(!0)},t}(r.Subscriber)},4636:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(44640);t.last=function(e,t,n){return function(i){return i.lift(new a(e,t,n,i))}};var a=function(){function e(e,t,n,i){this.predicate=e,this.resultSelector=t,this.defaultValue=n,this.source=i}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.predicate,this.resultSelector,this.defaultValue,this.source))},e}(),s=function(e){function t(t,n,i,r,o){e.call(this,t),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=o,this.hasValue=!1,this.index=0,void 0!==r&&(this.lastValue=r,this.hasValue=!0)}return i(t,e),t.prototype._next=function(e){var t=this.index++;if(this.predicate)this._tryPredicate(e,t);else{if(this.resultSelector)return void this._tryResultSelector(e,t);this.lastValue=e,this.hasValue=!0}},t.prototype._tryPredicate=function(e,t){var n;try{n=this.predicate(e,t,this.source)}catch(i){return void this.destination.error(i)}if(n){if(this.resultSelector)return void this._tryResultSelector(e,t);this.lastValue=e,this.hasValue=!0}},t.prototype._tryResultSelector=function(e,t){var n;try{n=this.resultSelector(e,t)}catch(i){return void this.destination.error(i)}this.lastValue=n,this.hasValue=!0},t.prototype._complete=function(){var e=this.destination;this.hasValue?(e.next(this.lastValue),e.complete()):e.error(new o.EmptyError)},t}(r.Subscriber)},40119:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.map=function(e,t){return function(n){if("function"!=typeof e)throw new TypeError("argument is not a function. Are you looking for `mapTo()`?");return n.lift(new o(e,t))}};var o=function(){function e(e,t){this.project=e,this.thisArg=t}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.project,this.thisArg))},e}();t.MapOperator=o;var a=function(e){function t(t,n,i){e.call(this,t),this.project=n,this.count=0,this.thisArg=i||this}return i(t,e),t.prototype._next=function(e){var t;try{t=this.project.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(r.Subscriber)},23491:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.mapTo=function(e){return function(t){return t.lift(new o(e))}};var o=function(){function e(e){this.value=e}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.value))},e}(),a=function(e){function t(t,n){e.call(this,t),this.value=n}return i(t,e),t.prototype._next=function(e){this.destination.next(this.value)},t}(r.Subscriber)},71177:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(94429);t.materialize=function(){return function(e){return e.lift(new a)}};var a=function(){function e(){}return e.prototype.call=function(e,t){return t.subscribe(new s(e))},e}(),s=function(e){function t(t){e.call(this,t)}return i(t,e),t.prototype._next=function(e){this.destination.next(o.Notification.createNext(e))},t.prototype._error=function(e){var t=this.destination;t.next(o.Notification.createError(e)),t.complete()},t.prototype._complete=function(){var e=this.destination;e.next(o.Notification.createComplete()),e.complete()},t}(r.Subscriber)},33499:function(e,t,n){"use strict";var i=n(97369);t.max=function(e){return i.reduce("function"==typeof e?function(t,n){return e(t,n)>0?t:n}:function(e,t){return e>t?e:t})}},56098:function(e,t,n){"use strict";var i=n(38781),r=n(38781);t.mergeStatic=r.merge,t.merge=function(){for(var e=[],t=0;t0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(o.OuterSubscriber);t.MergeMapSubscriber=s},6693:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.mergeMapTo=function(e,t,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"number"==typeof t&&(n=t,t=null),function(i){return i.lift(new a(e,t,n))}};var a=function(){function e(e,t,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.ish=e,this.resultSelector=t,this.concurrent=n}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.ish,this.resultSelector,this.concurrent))},e}();t.MergeMapToOperator=a;var s=function(e){function t(t,n,i,r){void 0===r&&(r=Number.POSITIVE_INFINITY),e.call(this,t),this.ish=n,this.resultSelector=i,this.concurrent=r,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(t,e),t.prototype._next=function(e){if(this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},t}(r.OuterSubscriber);t.MergeMapToSubscriber=s},7550:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(33463),o=n(85814),a=n(93658),s=n(84308);t.mergeScan=function(e,t,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(i){return i.lift(new u(e,t,n))}};var u=function(){function e(e,t,n){this.accumulator=e,this.seed=t,this.concurrent=n}return e.prototype.call=function(e,t){return t.subscribe(new c(e,this.accumulator,this.seed,this.concurrent))},e}();t.MergeScanOperator=u;var c=function(e){function t(t,n,i,r){e.call(this,t),this.accumulator=n,this.acc=i,this.concurrent=r,this.hasValue=!1,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(t,e),t.prototype._next=function(e){if(this.active0?this._next(t.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},t}(s.OuterSubscriber);t.MergeScanSubscriber=c},51213:function(e,t,n){"use strict";var i=n(97369);t.min=function(e){return i.reduce("function"==typeof e?function(t,n){return e(t,n)<0?t:n}:function(e,t){return e=2?function(n){return a.pipe(i.scan(e,t),r.takeLast(1),o.defaultIfEmpty(t))(n)}:function(t){return a.pipe(i.scan(function(t,n,i){return e(t,n,i+1)}),r.takeLast(1))(t)}}},1694:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.refCount=function(){return function(e){return e.lift(new o(e))}};var o=function(){function e(e){this.connectable=e}return e.prototype.call=function(e,t){var n=this.connectable;n._refCount++;var i=new a(e,n),r=t.subscribe(i);return i.closed||(i.connection=n.connect()),r},e}(),a=function(e){function t(t,n){e.call(this,t),this.connectable=n}return i(t,e),t.prototype._unsubscribe=function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null},t}(r.Subscriber)},15329:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(70481);t.repeat=function(e){return void 0===e&&(e=-1),function(t){return 0===e?new o.EmptyObservable:t.lift(new a(e<0?-1:e-1,t))}};var a=function(){function e(e,t){this.count=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.count,this.source))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.count=n,this.source=i}return i(t,e),t.prototype.complete=function(){if(!this.isStopped){var t=this.source,n=this.count;if(0===n)return e.prototype.complete.call(this);n>-1&&(this.count=n-1),t.subscribe(this._unsubscribeAndRecycle())}},t}(r.Subscriber)},63964:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(33463),a=n(85814),s=n(84308),u=n(93658);t.repeatWhen=function(e){return function(t){return t.lift(new c(e))}};var c=function(){function e(e){this.notifier=e}return e.prototype.call=function(e,t){return t.subscribe(new l(e,this.notifier,t))},e}(),l=function(e){function t(t,n,i){e.call(this,t),this.notifier=n,this.source=i,this.sourceIsBeingSubscribedTo=!0}return i(t,e),t.prototype.notifyNext=function(e,t,n,i,r){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},t.prototype.notifyComplete=function(t){if(!1===this.sourceIsBeingSubscribedTo)return e.prototype.complete.call(this)},t.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return e.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next()}},t.prototype._unsubscribe=function(){var e=this.notifications,t=this.retriesSubscription;e&&(e.unsubscribe(),this.notifications=null),t&&(t.unsubscribe(),this.retriesSubscription=null),this.retries=null},t.prototype._unsubscribeAndRecycle=function(){var t=this,n=t.notifications,i=t.retries,r=t.retriesSubscription;return this.notifications=null,this.retries=null,this.retriesSubscription=null,e.prototype._unsubscribeAndRecycle.call(this),this.notifications=n,this.retries=i,this.retriesSubscription=r,this},t.prototype.subscribeToRetries=function(){this.notifications=new r.Subject;var t=o.tryCatch(this.notifier)(this.notifications);if(t===a.errorObject)return e.prototype.complete.call(this);this.retries=t,this.retriesSubscription=u.subscribeToResult(this,t)},t}(s.OuterSubscriber)},40241:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.retry=function(e){return void 0===e&&(e=-1),function(t){return t.lift(new o(e,t))}};var o=function(){function e(e,t){this.count=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.count,this.source))},e}(),a=function(e){function t(t,n,i){e.call(this,t),this.count=n,this.source=i}return i(t,e),t.prototype.error=function(t){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return e.prototype.error.call(this,t);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},t}(r.Subscriber)},23896:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(33463),a=n(85814),s=n(84308),u=n(93658);t.retryWhen=function(e){return function(t){return t.lift(new c(e,t))}};var c=function(){function e(e,t){this.notifier=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new l(e,this.notifier,this.source))},e}(),l=function(e){function t(t,n,i){e.call(this,t),this.notifier=n,this.source=i}return i(t,e),t.prototype.error=function(t){if(!this.isStopped){var n=this.errors,i=this.retries,s=this.retriesSubscription;if(i)this.errors=null,this.retriesSubscription=null;else{if(n=new r.Subject,(i=o.tryCatch(this.notifier)(n))===a.errorObject)return e.prototype.error.call(this,a.errorObject.e);s=u.subscribeToResult(this,i)}this._unsubscribeAndRecycle(),this.errors=n,this.retries=i,this.retriesSubscription=s,n.next(t)}},t.prototype._unsubscribe=function(){var e=this.errors,t=this.retriesSubscription;e&&(e.unsubscribe(),this.errors=null),t&&(t.unsubscribe(),this.retriesSubscription=null),this.retries=null},t.prototype.notifyNext=function(e,t,n,i,r){var o=this,a=o.errors,s=o.retries,u=o.retriesSubscription;this.errors=null,this.retries=null,this.retriesSubscription=null,this._unsubscribeAndRecycle(),this.errors=a,this.retries=s,this.retriesSubscription=u,this.source.subscribe(this)},t}(s.OuterSubscriber)},92043:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.sample=function(e){return function(t){return t.lift(new a(e))}};var a=function(){function e(e){this.notifier=e}return e.prototype.call=function(e,t){var n=new s(e),i=t.subscribe(n);return i.add(o.subscribeToResult(n,this.notifier)),i},e}(),s=function(e){function t(){e.apply(this,arguments),this.hasValue=!1}return i(t,e),t.prototype._next=function(e){this.value=e,this.hasValue=!0},t.prototype.notifyNext=function(e,t,n,i,r){this.emitValue()},t.prototype.notifyComplete=function(){this.emitValue()},t.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},t}(r.OuterSubscriber)},71239:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(90680);t.sampleTime=function(e,t){return void 0===t&&(t=o.async),function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.period=e,this.scheduler=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.period,this.scheduler))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.period=n,this.scheduler=i,this.hasValue=!1,this.add(i.schedule(u,n,{subscriber:this,period:n}))}return i(t,e),t.prototype._next=function(e){this.lastValue=e,this.hasValue=!0},t.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},t}(r.Subscriber);function u(e){var t=e.period;e.subscriber.notifyNext(),this.schedule(e,t)}},64949:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.scan=function(e,t){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new o(e,t,n))}};var o=function(){function e(e,t,n){void 0===n&&(n=!1),this.accumulator=e,this.seed=t,this.hasSeed=n}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.accumulator,this.seed,this.hasSeed))},e}(),a=function(e){function t(t,n,i,r){e.call(this,t),this.accumulator=n,this._seed=i,this.hasSeed=r,this.index=0}return i(t,e),Object.defineProperty(t.prototype,"seed",{get:function(){return this._seed},set:function(e){this.hasSeed=!0,this._seed=e},enumerable:!0,configurable:!0}),t.prototype._next=function(e){if(this.hasSeed)return this._tryNext(e);this.seed=e,this.destination.next(e)},t.prototype._tryNext=function(e){var t,n=this.index++;try{t=this.accumulator(this.seed,e,n)}catch(i){this.destination.error(i)}this.seed=t,this.destination.next(t)},t}(r.Subscriber)},88948:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(33463),a=n(85814);t.sequenceEqual=function(e,t){return function(n){return n.lift(new s(e,t))}};var s=function(){function e(e,t){this.compareTo=e,this.comparor=t}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.compareTo,this.comparor))},e}();t.SequenceEqualOperator=s;var u=function(e){function t(t,n,i){e.call(this,t),this.compareTo=n,this.comparor=i,this._a=[],this._b=[],this._oneComplete=!1,this.add(n.subscribe(new c(t,this)))}return i(t,e),t.prototype._next=function(e){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(e),this.checkValues())},t.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},t.prototype.checkValues=function(){for(var e=this,t=e._a,n=e._b,i=e.comparor;t.length>0&&n.length>0;){var r=t.shift(),s=n.shift(),u=!1;i?(u=o.tryCatch(i)(r,s))===a.errorObject&&this.destination.error(a.errorObject.e):u=r===s,u||this.emit(!1)}},t.prototype.emit=function(e){var t=this.destination;t.next(e),t.complete()},t.prototype.nextB=function(e){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(e),this.checkValues())},t}(r.Subscriber);t.SequenceEqualSubscriber=u;var c=function(e){function t(t,n){e.call(this,t),this.parent=n}return i(t,e),t.prototype._next=function(e){this.parent.nextB(e)},t.prototype._error=function(e){this.parent.error(e)},t.prototype._complete=function(){this.parent._complete()},t}(r.Subscriber)},35473:function(e,t,n){"use strict";var i=n(27372),r=n(1694),o=n(2369);function a(){return new o.Subject}t.share=function(){return function(e){return r.refCount()(i.multicast(a)(e))}}},62704:function(e,t,n){"use strict";var i=n(81959);t.shareReplay=function(e,t,n){return function(r){return r.lift(function(e,t,n){var r,o,a=0,s=!1,u=!1;return function(c){a++,(!r||s)&&(s=!1,r=new i.ReplaySubject(e,t,n),o=c.subscribe({next:function(e){r.next(e)},error:function(e){s=!0,r.error(e)},complete:function(){u=!0,r.complete()}}));var l=r.subscribe(this);return function(){a--,l.unsubscribe(),o&&0===a&&u&&o.unsubscribe()}}}(e,t,n))}}},92223:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(44640);t.single=function(e){return function(t){return t.lift(new a(e,t))}};var a=function(){function e(e,t){this.predicate=e,this.source=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.predicate,this.source))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.predicate=n,this.source=i,this.seenValue=!1,this.index=0}return i(t,e),t.prototype.applySingleValue=function(e){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=e)},t.prototype._next=function(e){var t=this.index++;this.predicate?this.tryNext(e,t):this.applySingleValue(e)},t.prototype.tryNext=function(e,t){try{this.predicate(e,t,this.source)&&this.applySingleValue(e)}catch(n){this.destination.error(n)}},t.prototype._complete=function(){var e=this.destination;this.index>0?(e.next(this.seenValue?this.singleValue:void 0),e.complete()):e.error(new o.EmptyError)},t}(r.Subscriber)},11189:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109);t.skip=function(e){return function(t){return t.lift(new o(e))}};var o=function(){function e(e){this.total=e}return e.prototype.call=function(e,t){return t.subscribe(new a(e,this.total))},e}(),a=function(e){function t(t,n){e.call(this,t),this.total=n,this.count=0}return i(t,e),t.prototype._next=function(e){++this.count>this.total&&this.destination.next(e)},t}(r.Subscriber)},73346:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758);t.skipLast=function(e){return function(t){return t.lift(new a(e))}};var a=function(){function e(e){if(this._skipCount=e,this._skipCount<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(0===this._skipCount?new r.Subscriber(e):new s(e,this._skipCount))},e}(),s=function(e){function t(t,n){e.call(this,t),this._skipCount=n,this._count=0,this._ring=new Array(n)}return i(t,e),t.prototype._next=function(e){var t=this._skipCount,n=this._count++;if(n1?new i.ArrayObservable(e,n):new o.EmptyObservable(n),t)}}},10118:function(e,t,n){"use strict";var i=n(82966);t.subscribeOn=function(e,t){return void 0===t&&(t=0),function(n){return n.lift(new r(e,t))}};var r=function(){function e(e,t){this.scheduler=e,this.delay=t}return e.prototype.call=function(e,t){return new i.SubscribeOnObservable(t,this.delay,this.scheduler).subscribe(e)},e}()},77243:function(e,t,n){"use strict";var i=n(18483),r=n(5027);t.switchAll=function(){return i.switchMap(r.identity)}},18483:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.switchMap=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.project=e,this.resultSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.project,this.resultSelector))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.project=n,this.resultSelector=i,this.index=0}return i(t,e),t.prototype._next=function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(i){return void this.destination.error(i)}this._innerSub(t,e,n)},t.prototype._innerSub=function(e,t,n){var i=this.innerSubscription;i&&i.unsubscribe(),this.add(this.innerSubscription=o.subscribeToResult(this,e,t,n))},t.prototype._complete=function(){var t=this.innerSubscription;(!t||t.closed)&&e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.innerSubscription=null},t.prototype.notifyComplete=function(t){this.remove(t),this.innerSubscription=null,this.isStopped&&e.prototype._complete.call(this)},t.prototype.notifyNext=function(e,t,n,i,r){this.resultSelector?this._tryNotifyNext(e,t,n,i):this.destination.next(t)},t.prototype._tryNotifyNext=function(e,t,n,i){var r;try{r=this.resultSelector(e,t,n,i)}catch(o){return void this.destination.error(o)}this.destination.next(r)},t}(r.OuterSubscriber)},10684:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(84308),o=n(93658);t.switchMapTo=function(e,t){return function(n){return n.lift(new a(e,t))}};var a=function(){function e(e,t){this.observable=e,this.resultSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new s(e,this.observable,this.resultSelector))},e}(),s=function(e){function t(t,n,i){e.call(this,t),this.inner=n,this.resultSelector=i,this.index=0}return i(t,e),t.prototype._next=function(e){var t=this.innerSubscription;t&&t.unsubscribe(),this.add(this.innerSubscription=o.subscribeToResult(this,this.inner,e,this.index++))},t.prototype._complete=function(){var t=this.innerSubscription;(!t||t.closed)&&e.prototype._complete.call(this)},t.prototype._unsubscribe=function(){this.innerSubscription=null},t.prototype.notifyComplete=function(t){this.remove(t),this.innerSubscription=null,this.isStopped&&e.prototype._complete.call(this)},t.prototype.notifyNext=function(e,t,n,i,r){var o=this.destination;this.resultSelector?this.tryResultSelector(e,t,n,i):o.next(t)},t.prototype.tryResultSelector=function(e,t,n,i){var r,o=this.resultSelector,a=this.destination;try{r=o(e,t,n,i)}catch(s){return void a.error(s)}a.next(r)},t}(r.OuterSubscriber)},44396:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758),a=n(70481);t.take=function(e){return function(t){return 0===e?new a.EmptyObservable:t.lift(new s(e))}};var s=function(){function e(e){if(this.total=e,this.total<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.total))},e}(),u=function(e){function t(t,n){e.call(this,t),this.total=n,this.count=0}return i(t,e),t.prototype._next=function(e){var t=this.total,n=++this.count;n<=t&&(this.destination.next(e),n===t&&(this.destination.complete(),this.unsubscribe()))},t}(r.Subscriber)},73935:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(42109),o=n(11758),a=n(70481);t.takeLast=function(e){return function(t){return 0===e?new a.EmptyObservable:t.lift(new s(e))}};var s=function(){function e(e){if(this.total=e,this.total<0)throw new o.ArgumentOutOfRangeError}return e.prototype.call=function(e,t){return t.subscribe(new u(e,this.total))},e}(),u=function(e){function t(t,n){e.call(this,t),this.total=n,this.ring=new Array,this.count=0}return i(t,e),t.prototype._next=function(e){var t=this.ring,n=this.total,i=this.count++;t.length0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,a=r.length,s=0;s=0&&u%t==0&&!this.closed&&r.shift().complete(),++this.count%t==0&&!this.closed){var c=new o.Subject;r.push(c),n.next(c)}},t.prototype._error=function(e){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().error(e);this.destination.error(e)},t.prototype._complete=function(){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().complete();this.destination.complete()},t.prototype._unsubscribe=function(){this.count=0,this.windows=null},t}(r.Subscriber)},42603:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(90680),a=n(42109),s=n(39479),u=n(41503);t.windowTime=function(e){var t=o.async,n=null,i=Number.POSITIVE_INFINITY;return u.isScheduler(arguments[3])&&(t=arguments[3]),u.isScheduler(arguments[2])?t=arguments[2]:s.isNumeric(arguments[2])&&(i=arguments[2]),u.isScheduler(arguments[1])?t=arguments[1]:s.isNumeric(arguments[1])&&(n=arguments[1]),function(r){return r.lift(new c(e,n,i,t))}};var c=function(){function e(e,t,n,i){this.windowTimeSpan=e,this.windowCreationInterval=t,this.maxWindowSize=n,this.scheduler=i}return e.prototype.call=function(e,t){return t.subscribe(new h(e,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},e}(),l=function(e){function t(){e.apply(this,arguments),this._numberOfNextedValues=0}return i(t,e),t.prototype.next=function(t){this._numberOfNextedValues++,e.prototype.next.call(this,t)},Object.defineProperty(t.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),t}(r.Subject),h=function(e){function t(t,n,i,r,o){e.call(this,t),this.destination=t,this.windowTimeSpan=n,this.windowCreationInterval=i,this.maxWindowSize=r,this.scheduler=o,this.windows=[];var a=this.openWindow();if(null!==i&&i>=0){var s={windowTimeSpan:n,windowCreationInterval:i,subscriber:this,scheduler:o};this.add(o.schedule(p,n,{subscriber:this,window:a,context:null})),this.add(o.schedule(f,i,s))}else this.add(o.schedule(d,n,{subscriber:this,window:a,windowTimeSpan:n}))}return i(t,e),t.prototype._next=function(e){for(var t=this.windows,n=t.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}},t.prototype._error=function(e){for(var t=this.windows;t.length>0;)t.shift().error(e);this.destination.error(e)},t.prototype._complete=function(){for(var e=this.windows;e.length>0;){var t=e.shift();t.closed||t.complete()}this.destination.complete()},t.prototype.openWindow=function(){var e=new l;return this.windows.push(e),this.destination.next(e),e},t.prototype.closeWindow=function(e){e.complete();var t=this.windows;t.splice(t.indexOf(e),1)},t}(a.Subscriber);function d(e){var t=e.subscriber,n=e.windowTimeSpan,i=e.window;i&&t.closeWindow(i),e.window=t.openWindow(),this.schedule(e,n)}function f(e){var t=e.windowTimeSpan,n=e.subscriber,i=e.scheduler,r=e.windowCreationInterval,o=n.openWindow(),a=this,s={action:a,subscription:null};s.subscription=i.schedule(p,t,{subscriber:n,window:o,context:s}),a.add(s.subscription),a.schedule(e,r)}function p(e){var t=e.subscriber,n=e.window,i=e.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),t.closeWindow(n)}},59048:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(2369),o=n(72293),a=n(33463),s=n(85814),u=n(84308),c=n(93658);t.windowToggle=function(e,t){return function(n){return n.lift(new l(e,t))}};var l=function(){function e(e,t){this.openings=e,this.closingSelector=t}return e.prototype.call=function(e,t){return t.subscribe(new h(e,this.openings,this.closingSelector))},e}(),h=function(e){function t(t,n,i){e.call(this,t),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(this.openSubscription=c.subscribeToResult(this,n,n))}return i(t,e),t.prototype._next=function(e){var t=this.contexts;if(t)for(var n=t.length,i=0;i0){var a=o.indexOf(n);-1!==a&&o.splice(a,1)}},t.prototype.notifyComplete=function(){},t.prototype._next=function(e){if(0===this.toRespond.length){var t=[e].concat(this.values);this.project?this._tryProject(t):this.destination.next(t)}},t.prototype._tryProject=function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)},t}(r.OuterSubscriber)},9477:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(96177),o=n(48242),a=n(42109),s=n(84308),u=n(93658),c=n(72121);function l(){for(var e=[],t=0;tthis.index},e.prototype.hasCompleted=function(){return this.array.length===this.index},e}(),v=function(e){function t(t,n,i){e.call(this,t),this.parent=n,this.observable=i,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return i(t,e),t.prototype[c.iterator]=function(){return this},t.prototype.next=function(){var e=this.buffer;return 0===e.length&&this.isComplete?{value:null,done:!0}:{value:e.shift(),done:!1}},t.prototype.hasValue=function(){return this.buffer.length>0},t.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},t.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},t.prototype.notifyNext=function(e,t,n,i,r){this.buffer.push(t),this.parent.checkIterators()},t.prototype.subscribe=function(e,t){return u.subscribeToResult(this,this.observable,this,t)},t}(s.OuterSubscriber)},33310:function(e,t,n){"use strict";var i=n(9477);t.zipAll=function(e){return function(t){return t.lift(new i.ZipOperator(e))}}},28101:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(t,n){e.call(this)}return i(t,e),t.prototype.schedule=function(e,t){return void 0===t&&(t=0),this},t}(n(72293).Subscription);t.Action=r},67529:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(12624),o=n(95018),a=function(e){function t(t,n){e.call(this,t,n),this.scheduler=t,this.work=n}return i(t,e),t.prototype.requestAsyncId=function(t,n,i){return void 0===i&&(i=0),null!==i&&i>0?e.prototype.requestAsyncId.call(this,t,n,i):(t.actions.push(this),t.scheduled||(t.scheduled=o.AnimationFrame.requestAnimationFrame(t.flush.bind(t,null))))},t.prototype.recycleAsyncId=function(t,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return e.prototype.recycleAsyncId.call(this,t,n,i);0===t.actions.length&&(o.AnimationFrame.cancelAnimationFrame(n),t.scheduled=void 0)},t}(r.AsyncAction);t.AnimationFrameAction=a},68909:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(){e.apply(this,arguments)}return i(t,e),t.prototype.flush=function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i0?e.prototype.requestAsyncId.call(this,t,n,i):(t.actions.push(this),t.scheduled||(t.scheduled=r.Immediate.setImmediate(t.flush.bind(t,null))))},t.prototype.recycleAsyncId=function(t,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return e.prototype.recycleAsyncId.call(this,t,n,i);0===t.actions.length&&(r.Immediate.clearImmediate(n),t.scheduled=void 0)},t}(n(12624).AsyncAction);t.AsapAction=o},25766:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(){e.apply(this,arguments)}return i(t,e),t.prototype.flush=function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i0?e.prototype.schedule.call(this,t,n):(this.delay=n,this.state=t,this.scheduler.flush(this),this)},t.prototype.execute=function(t,n){return n>0||this.closed?e.prototype.execute.call(this,t,n):this._execute(t,n)},t.prototype.requestAsyncId=function(t,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?e.prototype.requestAsyncId.call(this,t,n,i):t.flush(this)},t}(n(12624).AsyncAction);t.QueueAction=r},77373:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=function(e){function t(){e.apply(this,arguments)}return i(t,e),t}(n(42704).AsyncScheduler);t.QueueScheduler=r},18353:function(e,t,n){"use strict";var i=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},r=n(12624),o=function(e){function t(t,n){var i=this;void 0===t&&(t=a),void 0===n&&(n=Number.POSITIVE_INFINITY),e.call(this,t,function(){return i.frame}),this.maxFrames=n,this.frame=0,this.index=-1}return i(t,e),t.prototype.flush=function(){for(var e,t,n=this.actions,i=this.maxFrames;(t=n.shift())&&(this.frame=t.delay)<=i&&!(e=t.execute(t.state,t.delay)););if(e){for(;t=n.shift();)t.unsubscribe();throw e}},t.frameTimeFactor=10,t}(n(42704).AsyncScheduler);t.VirtualTimeScheduler=o;var a=function(e){function t(t,n,i){void 0===i&&(i=t.index+=1),e.call(this,t,n),this.scheduler=t,this.work=n,this.index=i,this.active=!0,this.index=t.index=i}return i(t,e),t.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return e.prototype.schedule.call(this,n,i);this.active=!1;var r=new t(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},t.prototype.requestAsyncId=function(e,n,i){void 0===i&&(i=0),this.delay=e.frame+i;var r=e.actions;return r.push(this),r.sort(t.sortActions),!0},t.prototype.recycleAsyncId=function(e,t,n){void 0===n&&(n=0)},t.prototype._execute=function(t,n){if(!0===this.active)return e.prototype._execute.call(this,t,n)},t.sortActions=function(e,t){return e.delay===t.delay?e.index===t.index?0:e.index>t.index?1:-1:e.delay>t.delay?1:-1},t}(r.AsyncAction);t.VirtualAction=a},12948:function(e,t,n){"use strict";var i=n(67529),r=n(68909);t.animationFrame=new r.AnimationFrameScheduler(i.AnimationFrameAction)},85522:function(e,t,n){"use strict";var i=n(3496),r=n(25766);t.asap=new r.AsapScheduler(i.AsapAction)},90680:function(e,t,n){"use strict";var i=n(12624),r=n(42704);t.async=new r.AsyncScheduler(i.AsyncAction)},97088:function(e,t,n){"use strict";var i=n(7100),r=n(77373);t.queue=new r.QueueScheduler(i.QueueAction)},72121:function(e,t,n){"use strict";var i=n(80019);function r(e){var t=e.Symbol;if("function"==typeof t)return t.iterator||(t.iterator=t("iterator polyfill")),t.iterator;var n=e.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var i=e.Map;if(i)for(var r=Object.getOwnPropertyNames(i.prototype),o=0;o0;)t.shift().setup();e.prototype.flush.call(this);for(var n=this.flushTests.filter(function(e){return e.ready});n.length>0;){var i=n.shift();this.assertDeepEqual(i.actual,i.expected)}},t.parseMarblesAsSubscriptions=function(e){if("string"!=typeof e)return new u.SubscriptionLog(Number.POSITIVE_INFINITY);for(var t=e.length,n=-1,i=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,o=0;o-1?n:a;break;case"!":if(r!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");r=n>-1?n:a;break;default:throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+s+"'.")}}return r<0?new u.SubscriptionLog(i):new u.SubscriptionLog(i,r)},t.parseMarbles=function(e,t,n,i){if(void 0===i&&(i=!1),-1!==e.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var r=e.length,s=[],u=e.indexOf("^"),c=-1===u?0:u*-this.frameTimeFactor,l="object"!=typeof t?function(e){return e}:function(e){return i&&t[e]instanceof a.ColdObservable?t[e].messages:t[e]},h=-1,d=0;d-1?h:f,notification:p})}return s},t}(c.VirtualTimeScheduler);t.TestScheduler=l},95018:function(e,t,n){"use strict";var i=n(80019),r=function(e){e.requestAnimationFrame?(this.cancelAnimationFrame=e.cancelAnimationFrame.bind(e),this.requestAnimationFrame=e.requestAnimationFrame.bind(e)):e.mozRequestAnimationFrame?(this.cancelAnimationFrame=e.mozCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.mozRequestAnimationFrame.bind(e)):e.webkitRequestAnimationFrame?(this.cancelAnimationFrame=e.webkitCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.webkitRequestAnimationFrame.bind(e)):e.msRequestAnimationFrame?(this.cancelAnimationFrame=e.msCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.msRequestAnimationFrame.bind(e)):e.oRequestAnimationFrame?(this.cancelAnimationFrame=e.oCancelAnimationFrame.bind(e),this.requestAnimationFrame=e.oRequestAnimationFrame.bind(e)):(this.cancelAnimationFrame=e.clearTimeout.bind(e),this.requestAnimationFrame=function(t){return e.setTimeout(t,1e3/60)})};t.RequestAnimationFrameDefinition=r,t.AnimationFrame=new r(i.root)},11758:function(e,t){"use strict";var n=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},i=function(e){function t(){var t=e.call(this,"argument out of range");this.name=t.name="ArgumentOutOfRangeError",this.stack=t.stack,this.message=t.message}return n(t,e),t}(Error);t.ArgumentOutOfRangeError=i},44640:function(e,t){"use strict";var n=this&&this.__extends||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);function i(){this.constructor=e}e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)},i=function(e){function t(){var t=e.call(this,"no elements in sequence");this.name=t.name="EmptyError",this.stack=t.stack,this.message=t.message}return n(t,e),t}(Error);t.EmptyError=i},30764:function(e,t){"use strict";var n=function(){function e(){this.values={}}return e.prototype.delete=function(e){return this.values[e]=null,!0},e.prototype.set=function(e,t){return this.values[e]=t,this},e.prototype.get=function(e){return this.values[e]},e.prototype.forEach=function(e,t){var n=this.values;for(var i in n)n.hasOwnProperty(i)&&null!==n[i]&&e.call(t,n[i],i)},e.prototype.clear=function(){this.values={}},e}();t.FastMap=n},42982:function(e,t,n){"use strict";var i=n(80019),r=function(){function e(e){if(this.root=e,e.setImmediate&&"function"==typeof e.setImmediate)this.setImmediate=e.setImmediate.bind(e),this.clearImmediate=e.clearImmediate.bind(e);else{this.nextHandle=1,this.tasksByHandle={},this.currentlyRunningATask=!1,this.setImmediate=this.canUseProcessNextTick()?this.createProcessNextTickSetImmediate():this.canUsePostMessage()?this.createPostMessageSetImmediate():this.canUseMessageChannel()?this.createMessageChannelSetImmediate():this.canUseReadyStateChange()?this.createReadyStateChangeSetImmediate():this.createSetTimeoutSetImmediate();var t=function e(t){delete e.instance.tasksByHandle[t]};t.instance=this,this.clearImmediate=t}}return e.prototype.identify=function(e){return this.root.Object.prototype.toString.call(e)},e.prototype.canUseProcessNextTick=function(){return"[object process]"===this.identify(this.root.process)},e.prototype.canUseMessageChannel=function(){return Boolean(this.root.MessageChannel)},e.prototype.canUseReadyStateChange=function(){var e=this.root.document;return Boolean(e&&"onreadystatechange"in e.createElement("script"))},e.prototype.canUsePostMessage=function(){var e=this.root;if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}return!1},e.prototype.partiallyApplied=function(e){for(var t=[],n=1;n=0}},1856:function(e,t){"use strict";t.isObject=function(e){return null!=e&&"object"==typeof e}},35130:function(e,t){"use strict";t.isPromise=function(e){return e&&"function"!=typeof e.subscribe&&"function"==typeof e.then}},41503:function(e,t){"use strict";t.isScheduler=function(e){return e&&"function"==typeof e.schedule}},68668:function(e,t){"use strict";t.noop=function(){}},67239:function(e,t){"use strict";t.not=function(e,t){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=e,n.thisArg=t,n}},10142:function(e,t,n){"use strict";var i=n(68668);function r(e){return e?1===e.length?e[0]:function(t){return e.reduce(function(e,t){return t(e)},t)}:i.noop}t.pipe=function(){for(var e=[],t=0;t=n?{done:!0}:{done:!1,value:e[i++]}})},t.empty=function(){var e=new t(null);return e.done=!0,e},t.is=function(e){return e instanceof t||"object"==typeof e&&null!==e&&"function"==typeof e.next},e.exports=t},97310:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.isMobile=function(){return void 0!==r.window.orientation},t.default=function(e){if(!e&&!(0,o.default)())return"Node";if((0,a.default)(e))return"Electron";var t="undefined"!=typeof navigator?navigator:{},n=e||t.userAgent||"";if(n.indexOf("Edge")>-1)return"Edge";var i=-1!==n.indexOf("MSIE "),s=-1!==n.indexOf("Trident/");return i||s?"IE":r.window.chrome?"Chrome":r.window.safari?"Safari":r.window.mozInnerScreenX?"Firefox":"Unknown"};var r=n(41151),o=i(n(61602)),a=i(n(22344))},41151:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.console=t.process=t.document=t.global=t.window=t.self=void 0;var r=i(n(34321)),o={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&process};t.self=o.self||o.window||o.global,t.window=o.window||o.self||o.global,t.global=o.global||o.self||o.window,t.document=o.document||{},t.process=o.process||{};var a=console;t.console=a},84761:function(e,t,n){"use strict";var i=n(61948),r=n(34321);Object.defineProperty(t,"CO",{enumerable:!0,get:function(){return o.global}}),Object.defineProperty(t,"jU",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(t,"qs",{enumerable:!0,get:function(){return s.default}});var o=n(41151),a=c(n(61602)),s=c(n(97310));function u(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(u=function(e){return e?n:t})(e)}function c(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!==r(e)&&"function"!=typeof e)return{default:e};var n=u(t);if(n&&n.has(e))return n.get(e);var i={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var a in e)if("default"!==a&&Object.prototype.hasOwnProperty.call(e,a)){var s=o?Object.getOwnPropertyDescriptor(e,a):null;s&&(s.get||s.set)?Object.defineProperty(i,a,s):i[a]=e[a]}return i.default=e,n&&n.set(e,i),i}i(n(22344))},61602:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.default=a,t.isBrowserMainThread=function(){return a()&&"undefined"!=typeof document};var r=i(n(34321)),o=i(n(22344));function a(){return!("object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&"[object process]"===String(process)&&!process.browser)||(0,o.default)()}},22344:function(e,t,n){"use strict";var i=n(61948);Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){if("undefined"!=typeof window&&"object"===(0,r.default)(window.process)&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"===(0,r.default)(process.versions)&&Boolean(process.versions.electron))return!0;var t="object"===("undefined"==typeof navigator?"undefined":(0,r.default)(navigator))&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=e||t;return!!(n&&n.indexOf("Electron")>=0)};var r=i(n(34321))},86991:function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(14180),t),r(n(75103),t),r(n(48965),t),r(n(32595),t),r(n(82417),t),r(n(92451),t),r(n(17735),t)},14180:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BlankNode=void 0,t.BlankNode=function(){function e(t){m(this,e),this.termType="BlankNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"BlankNode"===e.termType&&e.value===this.value}}]),e}()},75103:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DataFactory=void 0;var i=n(14180),r=n(48965),o=n(32595),a=n(82417),s=n(92451),u=n(17735),c=0;t.DataFactory=function(){function e(t){m(this,e),this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||"df_".concat(c++,"_")}return b(e,[{key:"namedNode",value:function(e){return new a.NamedNode(e)}},{key:"blankNode",value:function(e){return new i.BlankNode(e||"".concat(this.blankNodePrefix).concat(this.blankNodeCounter++))}},{key:"literal",value:function(e,t){return new o.Literal(e,t)}},{key:"variable",value:function(e){return new u.Variable(e)}},{key:"defaultGraph",value:function(){return r.DefaultGraph.INSTANCE}},{key:"quad",value:function(e,t,n,i){return new s.Quad(e,t,n,i||this.defaultGraph())}},{key:"fromTerm",value:function(e){switch(e.termType){case"NamedNode":return this.namedNode(e.value);case"BlankNode":return this.blankNode(e.value);case"Literal":return e.language?this.literal(e.value,e.language):e.datatype.equals(o.Literal.XSD_STRING)?this.literal(e.value):this.literal(e.value,this.fromTerm(e.datatype));case"Variable":return this.variable(e.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(e.subject),this.fromTerm(e.predicate),this.fromTerm(e.object),this.fromTerm(e.graph))}}},{key:"fromQuad",value:function(e){return this.fromTerm(e)}},{key:"resetBlankNodeCounter",value:function(){this.blankNodeCounter=0}}]),e}()},48965:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DefaultGraph=void 0;var n=function(){function e(){m(this,e),this.termType="DefaultGraph",this.value=""}return b(e,[{key:"equals",value:function(e){return!!e&&"DefaultGraph"===e.termType}}]),e}();t.DefaultGraph=n,n.INSTANCE=new n},32595:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Literal=void 0;var i=n(82417),r=function(){function e(t,n){m(this,e),this.termType="Literal",this.value=t,"string"==typeof n?(this.language=n,this.datatype=e.RDF_LANGUAGE_STRING):n?(this.language="",this.datatype=n):(this.language="",this.datatype=e.XSD_STRING)}return b(e,[{key:"equals",value:function(e){return!!e&&"Literal"===e.termType&&e.value===this.value&&e.language===this.language&&e.datatype.equals(this.datatype)}}]),e}();t.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},82417:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NamedNode=void 0,t.NamedNode=function(){function e(t){m(this,e),this.termType="NamedNode",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"NamedNode"===e.termType&&e.value===this.value}}]),e}()},92451:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Quad=void 0,t.Quad=function(){function e(t,n,i,r){m(this,e),this.termType="Quad",this.value="",this.subject=t,this.predicate=n,this.object=i,this.graph=r}return b(e,[{key:"equals",value:function(e){return!!e&&("Quad"===e.termType||!e.termType)&&this.subject.equals(e.subject)&&this.predicate.equals(e.predicate)&&this.object.equals(e.object)&&this.graph.equals(e.graph)}}]),e}()},17735:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Variable=void 0,t.Variable=function(){function e(t){m(this,e),this.termType="Variable",this.value=t}return b(e,[{key:"equals",value:function(e){return!!e&&"Variable"===e.termType&&e.value===this.value}}]),e}()},31609:function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.getSupportedJavaScriptPrimitives=t.getSupportedRdfDatatypes=t.getTermRaw=t.toRdf=t.fromRdf=void 0;var o=n(86991),a=n(9938),s=n(66060);r(n(9938),t),r(n(88871),t),r(n(66060),t);var u=new o.DataFactory,c=new s.Translator;function l(e,t){return c.fromRdf(e,t)}c.registerHandler(new a.TypeHandlerString,a.TypeHandlerString.TYPES.map(function(e){return u.namedNode(e)}),["string"]),c.registerHandler(new a.TypeHandlerBoolean,[a.TypeHandlerBoolean.TYPE].map(function(e){return u.namedNode(e)}),["boolean"]),c.registerHandler(new a.TypeHandlerNumberDouble,a.TypeHandlerNumberDouble.TYPES.map(function(e){return u.namedNode(e)}),["number"]),c.registerHandler(new a.TypeHandlerNumberInteger,a.TypeHandlerNumberInteger.TYPES.map(function(e){return u.namedNode(e)}),["number"]),c.registerHandler(new a.TypeHandlerDate,a.TypeHandlerDate.TYPES.map(function(e){return u.namedNode(e)}),["object"]),t.fromRdf=l,t.toRdf=function(e,t){return t&&"namedNode"in t&&(t={dataFactory:t}),(t=t||{})&&!t.dataFactory&&(t.dataFactory=u),c.toRdf(e,t)},t.getTermRaw=function(e,t){return"Literal"===e.termType?l(e,t):e.value},t.getSupportedRdfDatatypes=function(){return c.getSupportedRdfDatatypes()},t.getSupportedJavaScriptPrimitives=function(){return c.getSupportedJavaScriptPrimitives()}},88871:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0})},66060:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Translator=void 0,t.Translator=function(){function e(){m(this,e),this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}return b(e,[{key:"registerHandler",value:function(e,t,n){var i,r=_(t);try{for(r.s();!(i=r.n()).done;){var o=i.value;this.supportedRdfDatatypes.push(o),this.fromRdfHandlers[o.value]=e}}catch(l){r.e(l)}finally{r.f()}var a,s=_(n);try{for(s.s();!(a=s.n()).done;){var u=a.value,c=this.toRdfHandlers[u];c||(this.toRdfHandlers[u]=c=[]),c.push(e)}}catch(l){s.e(l)}finally{s.f()}}},{key:"fromRdf",value:function(e,t){var n=this.fromRdfHandlers[e.datatype.value];return n?n.fromRdf(e,t):e.value}},{key:"toRdf",value:function(e,t){var n=this.toRdfHandlers[typeof e];if(n){var i,r=_(n);try{for(r.s();!(i=r.n()).done;){var o=i.value.toRdf(e,t);if(o)return o}}catch(a){r.e(a)}finally{r.f()}}throw new Error("Invalid JavaScript value: '".concat(e,"'"))}},{key:"getSupportedRdfDatatypes",value:function(){return this.supportedRdfDatatypes}},{key:"getSupportedJavaScriptPrimitives",value:function(){return Object.keys(this.toRdfHandlers)}}],[{key:"incorrectRdfDataType",value:function(e){throw new Error("Invalid RDF ".concat(e.datatype.value," value: '").concat(e.value,"'"))}}]),e}()},80727:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerBoolean=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e,t){switch(e.value){case"true":return!0;case"false":return!1;case"1":return!0;case"0":return!1}return t&&i.Translator.incorrectRdfDataType(e),!1}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;return r.literal(t?"true":"false",i||r.namedNode(e.TYPE))}}]),e}();t.TypeHandlerBoolean=r,r.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},52525:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerDate=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(t,n){switch(n&&!t.value.match(e.VALIDATORS[t.datatype.value.substr(33,t.datatype.value.length)])&&i.Translator.incorrectRdfDataType(t),t.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(t.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":var r=t.value.split("-");return new Date(0,parseInt(r[0],10)-1,parseInt(r[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(t.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(t.value+"-01");default:return new Date(t.value)}}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;if(i=i||r.namedNode(e.TYPES[0]),!(t instanceof Date))return null;var o,a=t;switch(i.value){case"http://www.w3.org/2001/XMLSchema#gDay":o=String(a.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":o=a.getUTCMonth()+1+"-"+a.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":o=String(a.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":o=a.getUTCFullYear()+"-"+(a.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":o=a.toISOString().replace(/T.*$/,"");break;default:o=a.toISOString()}return r.literal(o,i)}}]),e}();t.TypeHandlerDate=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],r.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},38554:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberDouble=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e,t){var n=parseFloat(e.value);return t&&isNaN(n)&&i.Translator.incorrectRdfDataType(e),n}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;return i=i||r.namedNode(e.TYPES[0]),isNaN(t)?r.literal("NaN",i):isFinite(t)?t%1==0?null:r.literal(t.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),i):r.literal(t>0?"INF":"-INF",i)}}]),e}();t.TypeHandlerNumberDouble=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},37750:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerNumberInteger=void 0;var i=n(66060),r=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e,t){var n=parseInt(e.value,10);return t&&(isNaN(n)||e.value.indexOf(".")>=0)&&i.Translator.incorrectRdfDataType(e),n}},{key:"toRdf",value:function(t,n){var i=n.datatype,r=n.dataFactory;return r.literal(String(t),i||r.namedNode(t<=e.MAX_INT&&t>=e.MIN_INT?e.TYPES[0]:e.TYPES[1]))}}]),e}();t.TypeHandlerNumberInteger=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],r.MAX_INT=2147483647,r.MIN_INT=-2147483648},14608:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.TypeHandlerString=void 0;var n=function(){function e(){m(this,e)}return b(e,[{key:"fromRdf",value:function(e){return e.value}},{key:"toRdf",value:function(e,t){var n=t.datatype;return t.dataFactory.literal(e,n)}}]),e}();t.TypeHandlerString=n,n.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},9938:function(e,t,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(e,t,n,i){void 0===i&&(i=n),Object.defineProperty(e,i,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,i){void 0===i&&(i=n),e[i]=t[n]}),r=this&&this.__exportStar||function(e,t){for(var n in e)"default"!==n&&!Object.prototype.hasOwnProperty.call(t,n)&&i(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),r(n(80727),t),r(n(52525),t),r(n(38554),t),r(n(37750),t),r(n(14608),t)},93640:function(n,i,r){"use strict";var d,f,g,y,w,k,x,S,E,C,O=regeneratorRuntime.mark(uL),T={};r.r(T),r.d(T,{decode:function(){return tL},encode:function(){return iL}});var P={};r.r(P),r.d(P,{decode:function(){return cL},encode:function(){return hL}});var R={};r.r(R),r.d(R,{decode:function(){return dL},encode:function(){return pL}});var D={};function N(e){return"function"==typeof e}r.r(D),r.d(D,{decode:function(){return gL},encode:function(){return yL}});var L=!1,j={Promise:void 0,set useDeprecatedSynchronousErrorHandling(e){if(e){var t=new Error;console.warn("DEPRECATED! RxJS was set to use deprecated synchronous error handling behavior by code at: \n"+t.stack)}else L&&console.log("RxJS: Back to a better error behavior. Thank you. <3");L=e},get useDeprecatedSynchronousErrorHandling(){return L}};function F(e){setTimeout(function(){throw e},0)}var B={closed:!0,next:function(e){},error:function(e){if(j.useDeprecatedSynchronousErrorHandling)throw e;F(e)},complete:function(){}},V=Array.isArray||function(e){return e&&"number"==typeof e.length};function z(e){return null!==e&&"object"==typeof e}var U,H=function(){function e(e){return Error.call(this),this.message=e?"".concat(e.length," errors occurred during unsubscription:\n").concat(e.map(function(e,t){return"".concat(t+1,") ").concat(e.toString())}).join("\n ")):"",this.name="UnsubscriptionError",this.errors=e,this}return e.prototype=Object.create(Error.prototype),e}(),G=function(){function e(t){m(this,e),this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}return b(e,[{key:"unsubscribe",value:function(){var t;if(!this.closed){var n=this._parentOrParents,i=this._ctorUnsubscribe,r=this._unsubscribe,o=this._subscriptions;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,n instanceof e)n.remove(this);else if(null!==n)for(var a=0;a2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return"function"==typeof t?function(i){return i.pipe(_e(function(n,i){return ge(e(n,i)).pipe(se(function(e,r){return t(n,e,i,r)}))},n))}:("number"==typeof t&&(n=t),function(t){return t.lift(new we(e,n))})}var we=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY;m(this,e),this.project=t,this.concurrent=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new ke(e,this.project,this.concurrent))}}]),e}(),ke=function(e){a(n,e);var t=s(n);function n(e,i){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.POSITIVE_INFINITY;return m(this,n),(r=t.call(this,e)).project=i,r.concurrent=o,r.hasCompleted=!1,r.buffer=[],r.active=0,r.index=0,r}return b(n,[{key:"_next",value:function(e){this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}]),n}(ye);function xe(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;return _e($,e)}function Se(e,t){return t?ve(e,t):new J(le(e))}function Ee(){for(var e=arguments.length,t=new Array(e),n=0;n1&&"number"==typeof t[t.length-1]&&(i=t.pop())):"number"==typeof o&&(i=t.pop()),null===r&&1===t.length&&t[0]instanceof J?t[0]:xe(i)(Se(t,r))}function Ce(){return function(e){return e.lift(new Oe(e))}}var Oe=function(){function e(t){m(this,e),this.connectable=t}return b(e,[{key:"call",value:function(e,t){var n=this.connectable;n._refCount++;var i=new Te(e,n),r=t.subscribe(i);return i.closed||(i.connection=n.connect()),r}}]),e}(),Te=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).connectable=i,r}return b(n,[{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._refCount;if(t<=0)this.connection=null;else if(e._refCount=t-1,t>1)this.connection=null;else{var n=this.connection,i=e._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}]),n}(X),Ae=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).source=e,r.subjectFactory=i,r._refCount=0,r._isComplete=!1,r}return b(n,[{key:"_subscribe",value:function(e){return this.getSubject().subscribe(e)}},{key:"getSubject",value:function(){var e=this._subject;return(!e||e.isStopped)&&(this._subject=this.subjectFactory()),this._subject}},{key:"connect",value:function(){var e=this._connection;return e||(this._isComplete=!1,(e=this._connection=new G).add(this.source.subscribe(new Me(this.getSubject(),this))),e.closed&&(this._connection=null,e=G.EMPTY)),e}},{key:"refCount",value:function(){return Ce()(this)}}]),n}(J),Pe=function(){var e=Ae.prototype;return{operator:{value:null},_refCount:{value:0,writable:!0},_subject:{value:null,writable:!0},_connection:{value:null,writable:!0},_subscribe:{value:e._subscribe},_isComplete:{value:e._isComplete,writable:!0},getSubject:{value:e.getSubject},connect:{value:e.connect},refCount:{value:e.refCount}}}(),Me=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this,e)).connectable=t,r}return b(i,[{key:"_error",value:function(t){this._unsubscribe(),e(p(i.prototype),"_error",this).call(this,t)}},{key:"_complete",value:function(){this.connectable._isComplete=!0,this._unsubscribe(),e(p(i.prototype),"_complete",this).call(this)}},{key:"_unsubscribe",value:function(){var e=this.connectable;if(e){this.connectable=null;var t=e._connection;e._refCount=0,e._subject=null,e._connection=null,t&&t.unsubscribe()}}}]),i}(ie);function Ie(e,t){return function(n){var i;if(i="function"==typeof e?e:function(){return e},"function"==typeof t)return n.lift(new Re(i,t));var r=Object.create(n,Pe);return r.source=n,r.subjectFactory=i,r}}var Re=function(){function e(t,n){m(this,e),this.subjectFactory=t,this.selector=n}return b(e,[{key:"call",value:function(e,t){var n=this.selector,i=this.subjectFactory(),r=n(i).subscribe(e);return r.add(t.subscribe(i)),r}}]),e}();function De(){return new re}function Ne(){return function(e){return Ce()(Ie(De)(e))}}function Le(e){for(var t in e)if(e[t]===Le)return t;throw Error("Could not find renamed property on target object.")}function je(e,t){for(var n in t)t.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function Fe(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(Fe).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return"".concat(e.overriddenName);if(e.name)return"".concat(e.name);var t=e.toString();if(null==t)return""+t;var n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function Be(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}var Ve=Le({__forward_ref__:Le});function ze(e){return e.__forward_ref__=ze,e.toString=function(){return Fe(this())},e}function Ue(e){return He(e)?e():e}function He(e){return"function"==typeof e&&e.hasOwnProperty(Ve)&&e.__forward_ref__===ze}var Ge=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,function(e,t){return"".concat(e?"NG0".concat(e,": "):"").concat(t)}(e,i))).code=e,r}return n}(l(Error));function We(e){return"string"==typeof e?e:null==e?"":String(e)}function qe(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():We(e)}function Xe(e,t){var n=t?" in ".concat(t):"";throw new Ge("201","No provider for ".concat(qe(e)," found").concat(n))}function Ye(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function Ke(e){return{providers:e.providers||[],imports:e.imports||[]}}function $e(e){return Qe(e,et)||Qe(e,nt)}function Qe(e,t){return e.hasOwnProperty(t)?e[t]:null}function Ze(e){return e&&(e.hasOwnProperty(tt)||e.hasOwnProperty(it))?e[tt]:null}var Je,et=Le({"\u0275prov":Le}),tt=Le({"\u0275inj":Le}),nt=Le({ngInjectableDef:Le}),it=Le({ngInjectorDef:Le}),rt=((rt=rt||{})[rt.Default=0]="Default",rt[rt.Host=1]="Host",rt[rt.Self=2]="Self",rt[rt.SkipSelf=4]="SkipSelf",rt[rt.Optional=8]="Optional",rt);function ot(e){var t=Je;return Je=e,t}function at(e,t,n){var i=$e(e);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&rt.Optional?null:void 0!==t?t:void Xe(Fe(e),"Injector")}function st(e){return{toString:e}.toString()}var ut=((ut=ut||{})[ut.OnPush=0]="OnPush",ut[ut.Default=1]="Default",ut),ct=((ct=ct||{})[ct.Emulated=0]="Emulated",ct[ct.None=2]="None",ct[ct.ShadowDom=3]="ShadowDom",ct),lt="undefined"!=typeof globalThis&&globalThis,ht="undefined"!=typeof window&&window,dt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,ft="undefined"!=typeof global&&global,pt=lt||ft||ht||dt,vt={},gt=[],mt=Le({"\u0275cmp":Le}),yt=Le({"\u0275dir":Le}),bt=Le({"\u0275pipe":Le}),_t=Le({"\u0275mod":Le}),wt=Le({"\u0275loc":Le}),kt=Le({"\u0275fac":Le}),xt=Le({__NG_ELEMENT_ID__:Le}),St=0;function Et(e){return st(function(){var t={},n={type:e.type,providersResolver:null,decls:e.decls,vars:e.vars,factory:null,template:e.template||null,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputs:null,outputs:null,exportAs:e.exportAs||null,onPush:e.changeDetection===ut.OnPush,directiveDefs:null,pipeDefs:null,selectors:e.selectors||gt,viewQuery:e.viewQuery||null,features:e.features||null,data:e.data||{},encapsulation:e.encapsulation||ct.Emulated,id:"c",styles:e.styles||gt,_:null,setInput:null,schemas:e.schemas||null,tView:null},i=e.directives,r=e.features,o=e.pipes;return n.id+=St++,n.inputs=Pt(e.inputs,t),n.outputs=Pt(e.outputs),r&&r.forEach(function(e){return e(n)}),n.directiveDefs=i?function(){return("function"==typeof i?i():i).map(Ct)}:null,n.pipeDefs=o?function(){return("function"==typeof o?o():o).map(Ot)}:null,n})}function Ct(e){return It(e)||function(e){return e[yt]||null}(e)}function Ot(e){return function(e){return e[bt]||null}(e)}var Tt={};function At(e){return st(function(){var t={type:e.type,bootstrap:e.bootstrap||gt,declarations:e.declarations||gt,imports:e.imports||gt,exports:e.exports||gt,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null};return null!=e.id&&(Tt[e.id]=e.type),t})}function Pt(e,t){if(null==e)return vt;var n={};for(var i in e)if(e.hasOwnProperty(i)){var r=e[i],o=r;Array.isArray(r)&&(o=r[1],r=r[0]),n[r]=i,t&&(t[r]=o)}return n}var Mt=Et;function It(e){return e[mt]||null}function Rt(e,t){var n=e[_t]||null;if(!n&&!0===t)throw new Error("Type ".concat(Fe(e)," does not have '\u0275mod' property."));return n}function Dt(e){return Array.isArray(e)&&"object"==typeof e[1]}function Nt(e){return Array.isArray(e)&&!0===e[1]}function Lt(e){return 0!=(8&e.flags)}function jt(e){return 2==(2&e.flags)}function Ft(e){return 1==(1&e.flags)}function Bt(e){return null!==e.template}function Vt(e){return 0!=(512&e[2])}function zt(e,t){return e.hasOwnProperty(kt)?e[kt]:null}var Ut=function(){function e(t,n,i){m(this,e),this.previousValue=t,this.currentValue=n,this.firstChange=i}return b(e,[{key:"isFirstChange",value:function(){return this.firstChange}}]),e}();function Ht(){return Gt}function Gt(e){return e.type.prototype.ngOnChanges&&(e.setInput=qt),Wt}function Wt(){var e=Yt(this),t=null==e?void 0:e.current;if(t){var n=e.previous;if(n===vt)e.previous=t;else for(var i in t)n[i]=t[i];e.current=null,this.ngOnChanges(t)}}function qt(e,t,n,i){var r=Yt(e)||function(e,t){return e[Xt]=t}(e,{previous:vt,current:null}),o=r.current||(r.current={}),a=r.previous,s=this.declaredInputs[n],u=a[s];o[s]=new Ut(u&&u.currentValue,t,a===vt),e[i]=t}Ht.ngInherit=!0;var Xt="__ngSimpleChanges__";function Yt(e){return e[Xt]||null}var Kt,$t="http://www.w3.org/2000/svg";function Qt(){return void 0!==Kt?Kt:"undefined"!=typeof document?document:void 0}function Zt(e){return!!e.listen}var Jt={createRenderer:function(e,t){return Qt()}};function en(e){for(;Array.isArray(e);)e=e[0];return e}function tn(e,t){return en(t[e])}function nn(e,t){return en(t[e.index])}function rn(e,t){return e.data[t]}function on(e,t){return e[t]}function an(e,t){var n=t[e];return Dt(n)?n:n[0]}function sn(e){return 4==(4&e[2])}function un(e){return 128==(128&e[2])}function cn(e,t){return null==t?null:e[t]}function ln(e){e[18]=0}function hn(e,t){e[5]+=t;for(var n=e,i=e[3];null!==i&&(1===t&&1===n[5]||-1===t&&0===n[5]);)i[5]+=t,n=i,i=i[3]}var dn={lFrame:jn(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function fn(){return dn.bindingsEnabled}function pn(){return dn.lFrame.lView}function vn(){return dn.lFrame.tView}function gn(e){return dn.lFrame.contextLView=e,e[8]}function mn(){for(var e=yn();null!==e&&64===e.type;)e=e.parent;return e}function yn(){return dn.lFrame.currentTNode}function bn(e,t){var n=dn.lFrame;n.currentTNode=e,n.isParent=t}function _n(){return dn.lFrame.isParent}function wn(){dn.lFrame.isParent=!1}function kn(){return dn.isInCheckNoChangesMode}function xn(e){dn.isInCheckNoChangesMode=e}function Sn(){var e=dn.lFrame,t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function En(){return dn.lFrame.bindingIndex}function Cn(){return dn.lFrame.bindingIndex++}function On(e){var t=dn.lFrame,n=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,n}function Tn(e,t){var n=dn.lFrame;n.bindingIndex=n.bindingRootIndex=e,An(t)}function An(e){dn.lFrame.currentDirectiveIndex=e}function Pn(e){var t=dn.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}function Mn(){return dn.lFrame.currentQueryIndex}function In(e){dn.lFrame.currentQueryIndex=e}function Rn(e){var t=e[1];return 2===t.type?t.declTNode:1===t.type?e[6]:null}function Dn(e,t,n){if(n&rt.SkipSelf){for(var i=t,r=e;!(null!==(i=i.parent)||n&rt.Host||(i=Rn(r),null===i||(r=r[15],10&i.type))););if(null===i)return!1;t=i,e=r}var o=dn.lFrame=Ln();return o.currentTNode=t,o.lView=e,!0}function Nn(e){var t=Ln(),n=e[1];dn.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function Ln(){var e=dn.lFrame,t=null===e?null:e.child;return null===t?jn(e):t}function jn(e){var t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return null!==e&&(e.child=t),t}function Fn(){var e=dn.lFrame;return dn.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}var Bn=Fn;function Vn(){var e=Fn();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function zn(){return dn.lFrame.selectedIndex}function Un(e){dn.lFrame.selectedIndex=e}function Hn(){var e=dn.lFrame;return rn(e.tView,e.selectedIndex)}function Gn(){dn.lFrame.currentNamespace=$t}function Wn(e,t){for(var n=t.directiveStart,i=t.directiveEnd;n=i)break}else t[s]<0&&(e[18]+=65536),(a>11>16&&(3&e[2])===t){e[2]+=2048;try{o.call(a)}finally{}}}else try{o.call(a)}finally{}}var Qn=function e(t,n,i){m(this,e),this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=i};function Zn(e,t,n){for(var i=Zt(e),r=0;rt){a=o-1;break}}}for(;o>16}(e),i=t;n>0;)i=i[15],n--;return i}var ai=!0;function si(e){var t=ai;return ai=e,t}var ui=0;function ci(e,t){var n=hi(e,t);if(-1!==n)return n;var i=t[1];i.firstCreatePass&&(e.injectorIndex=t.length,li(i.data,e),li(t,null),li(i.blueprint,null));var r=di(e,t),o=e.injectorIndex;if(ii(r))for(var a=ri(r),s=oi(r,t),u=s[1].data,c=0;c<8;c++)t[o+c]=s[a+c]|u[a+c];return t[o+8]=r,o}function li(e,t){e.push(0,0,0,0,0,0,0,0,t)}function hi(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function di(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;for(var n=0,i=null,r=t;null!==r;){var o=r[1],a=o.type;if(null===(i=2===a?o.declTNode:1===a?r[6]:null))return-1;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return-1}function fi(e,t,n){!function(e,t,n){var i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(xt)&&(i=n[xt]),null==i&&(i=n[xt]=ui++);var r=255&i;t.data[e+(r>>5)]|=1<3&&void 0!==arguments[3]?arguments[3]:rt.Default,r=arguments.length>4?arguments[4]:void 0;if(null!==e){var o=function(e){if("string"==typeof e)return e.charCodeAt(0)||0;var t=e.hasOwnProperty(xt)?e[xt]:void 0;return"number"==typeof t?t>=0?255&t:yi:t}(n);if("function"==typeof o){if(!Dn(t,e,i))return i&rt.Host?pi(r,n,i):vi(t,n,i,r);try{var a=o(i);if(null!=a||i&rt.Optional)return a;Xe(n)}finally{Bn()}}else if("number"==typeof o){var s=null,u=hi(e,t),c=-1,l=i&rt.Host?t[16][6]:null;for((-1===u||i&rt.SkipSelf)&&(-1!==(c=-1===u?di(e,t):t[u+8])&&xi(i,!1)?(s=t[1],u=ri(c),t=oi(c,t)):u=-1);-1!==u;){var h=t[1];if(ki(o,u,h.data)){var d=bi(u,t,n,s,i,l);if(d!==mi)return d}-1!==(c=t[u+8])&&xi(i,t[1].data[u+8]===l)&&ki(o,u,t)?(s=h,u=ri(c),t=oi(c,t)):u=-1}}}return vi(t,n,i,r)}var mi={};function yi(){return new Si(mn(),pn())}function bi(e,t,n,i,r,o){var a=t[1],s=a.data[e+8],u=_i(s,a,n,null==i?jt(s)&&ai:i!=a&&0!=(3&s.type),r&rt.Host&&o===s);return null!==u?wi(t,a,u,s):mi}function _i(e,t,n,i,r){for(var o=e.providerIndexes,a=t.data,s=1048575&o,u=e.directiveStart,c=o>>20,l=r?s+c:e.directiveEnd,h=i?s:s+c;h=u&&d.type===n)return h}if(r){var f=a[u];if(f&&Bt(f)&&f.type===n)return u}return null}function wi(e,t,n,i){var r=e[n],o=t.data;if(function(e){return e instanceof Qn}(r)){var a=r;a.resolving&&function(e,t){throw new Ge("200","Circular dependency in DI detected for ".concat(e))}(qe(o[n]));var s=si(a.canSeeViewProviders);a.resolving=!0;var u=a.injectImpl?ot(a.injectImpl):null;Dn(e,i,rt.Default);try{r=e[n]=a.factory(void 0,o,e,i),t.firstCreatePass&&n>=i.directiveStart&&function(e,t,n){var i=t.type.prototype,r=i.ngOnChanges,o=i.ngOnInit,a=i.ngDoCheck;if(r){var s=Gt(t);(n.preOrderHooks||(n.preOrderHooks=[])).push(e,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,s)}o&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-e,o),a&&((n.preOrderHooks||(n.preOrderHooks=[])).push(e,a),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(e,a))}(n,o[n],t)}finally{null!==u&&ot(u),si(s),a.resolving=!1,Bn()}}return r}function ki(e,t,n){return!!(n[t+(e>>5)]&1<=e.length?e.push(n):e.splice(t,0,n)}function Ni(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function Li(e,t){for(var n=[],i=0;i=0?e[1|i]=n:function(e,t,n,i){var r=e.length;if(r==t)e.push(n,i);else if(1===r)e.push(i,e[0]),e[0]=n;else{for(r--,e.push(e[r-1],e[r]);r>t;)e[r]=e[r-2],r--;e[t]=n,e[t+1]=i}}(e,i=~i,t,n),i}function Fi(e,t){var n=Bi(e,t);if(n>=0)return e[1|n]}function Bi(e,t){return function(e,t,n){for(var i=0,r=e.length>>1;r!==i;){var o=i+(r-i>>1),a=e[o<<1];if(t===a)return o<<1;a>t?r=o:i=o+1}return~(r<<1)}(e,t)}var Vi,zi={},Ui="__NG_DI_FLAG__",Hi="ngTempTokenPath",Gi=/\n/gm,Wi="__source",qi=Le({provide:String,useValue:Le});function Xi(e){var t=Vi;return Vi=e,t}function Yi(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:rt.Default;if(void 0===Vi)throw new Error("inject() must be called from an injection context");return null===Vi?at(e,void 0,t):Vi.get(e,t&rt.Optional?null:void 0,t)}function Ki(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:rt.Default;return(Je||Yi)(Ue(e),t)}var $i=Ki;function Qi(e){for(var t=[],n=0;n3&&void 0!==arguments[3]?arguments[3]:null;e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.substr(2):e;var r=Fe(t);if(Array.isArray(t))r=t.map(Fe).join(" -> ");else if("object"==typeof t){var o=[];for(var a in t)if(t.hasOwnProperty(a)){var s=t[a];o.push(a+":"+("string"==typeof s?JSON.stringify(s):Fe(s)))}r="{".concat(o.join(", "),"}")}return"".concat(n).concat(i?"("+i+")":"","[").concat(r,"]: ").concat(e.replace(Gi,"\n "))}("\n"+e.message,r,n,i),e.ngTokenPath=r,e[Hi]=null,e}var tr,nr,ir=Zi(Ai("Inject",function(e){return{token:e}}),-1),rr=Zi(Ai("Optional"),8),or=Zi(Ai("SkipSelf"),4);function ar(e){var t;return(null===(t=function(){if(void 0===tr&&(tr=null,pt.trustedTypes))try{tr=pt.trustedTypes.createPolicy("angular",{createHTML:function(e){return e},createScript:function(e){return e},createScriptURL:function(e){return e}})}catch(e){}return tr}())||void 0===t?void 0:t.createHTML(e))||e}function sr(){if(void 0===nr&&(nr=null,pt.trustedTypes))try{nr=pt.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:function(e){return e},createScript:function(e){return e},createScriptURL:function(e){return e}})}catch(U){}return nr}function ur(e){var t;return(null===(t=sr())||void 0===t?void 0:t.createHTML(e))||e}function cr(e){var t;return(null===(t=sr())||void 0===t?void 0:t.createScriptURL(e))||e}var lr=function(){function e(t){m(this,e),this.changingThisBreaksApplicationSecurity=t}return b(e,[{key:"toString",value:function(){return"SafeValue must use [property]=binding: ".concat(this.changingThisBreaksApplicationSecurity," (see https://g.co/ng/security#xss)")}}]),e}(),hr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"HTML"}}]),n}(lr),dr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"Style"}}]),n}(lr),fr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"Script"}}]),n}(lr),pr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"URL"}}]),n}(lr),vr=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"getTypeName",value:function(){return"ResourceURL"}}]),n}(lr);function gr(e){return e instanceof lr?e.changingThisBreaksApplicationSecurity:e}function mr(e,t){var n=yr(e);if(null!=n&&n!==t){if("ResourceURL"===n&&"URL"===t)return!0;throw new Error("Required a safe ".concat(t,", got a ").concat(n," (see https://g.co/ng/security#xss)"))}return n===t}function yr(e){return e instanceof lr&&e.getTypeName()||null}var br=function(){function e(t){m(this,e),this.inertDocumentHelper=t}return b(e,[{key:"getInertBodyElement",value:function(e){e=""+e;try{var t=(new window.DOMParser).parseFromString(ar(e),"text/html").body;return null===t?this.inertDocumentHelper.getInertBodyElement(e):(t.removeChild(t.firstChild),t)}catch(t){return null}}}]),e}(),_r=function(){function e(t){if(m(this,e),this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert"),null==this.inertDocument.body){var n=this.inertDocument.createElement("html");this.inertDocument.appendChild(n);var i=this.inertDocument.createElement("body");n.appendChild(i)}}return b(e,[{key:"getInertBodyElement",value:function(e){var t=this.inertDocument.createElement("template");if("content"in t)return t.innerHTML=ar(e),t;var n=this.inertDocument.createElement("body");return n.innerHTML=ar(e),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}},{key:"stripCustomNsAttrs",value:function(e){for(var t=e.attributes,n=t.length-1;0"),!0}},{key:"endElement",value:function(e){var t=e.nodeName.toLowerCase();Mr.hasOwnProperty(t)&&!Tr.hasOwnProperty(t)&&(this.buf.push(""))}},{key:"chars",value:function(e){this.buf.push(Br(e))}},{key:"checkClobberedElement",value:function(e,t){if(t&&(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)===Node.DOCUMENT_POSITION_CONTAINED_BY)throw new Error("Failed to sanitize html because the element is clobbered: ".concat(e.outerHTML));return t}}]),e}(),jr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Fr=/([^\#-~ |!])/g;function Br(e){return e.replace(/&/g,"&").replace(jr,function(e){return"&#"+(1024*(e.charCodeAt(0)-55296)+(e.charCodeAt(1)-56320)+65536)+";"}).replace(Fr,function(e){return"&#"+e.charCodeAt(0)+";"}).replace(//g,">")}function Vr(e,t){var n=null;try{Or=Or||function(e){var t=new _r(e);return function(){try{return!!(new window.DOMParser).parseFromString(ar(""),"text/html")}catch(e){return!1}}()?new br(t):t}(e);var i=t?String(t):"";n=Or.getInertBodyElement(i);var r=5,o=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=o,o=n.innerHTML,n=Or.getInertBodyElement(i)}while(i!==o);return ar((new Lr).sanitizeChildren(zr(n)||n))}finally{if(n)for(var a=zr(n)||n;a.firstChild;)a.removeChild(a.firstChild)}}function zr(e){return"content"in e&&function(e){return e.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===e.nodeName}(e)?e.content:null}var Ur=((Ur=Ur||{})[Ur.NONE=0]="NONE",Ur[Ur.HTML=1]="HTML",Ur[Ur.STYLE=2]="STYLE",Ur[Ur.SCRIPT=3]="SCRIPT",Ur[Ur.URL=4]="URL",Ur[Ur.RESOURCE_URL=5]="RESOURCE_URL",Ur);function Hr(e){var t=qr();return t?ur(t.sanitize(Ur.HTML,e)||""):mr(e,"HTML")?ur(gr(e)):Vr(Qt(),We(e))}function Gr(e){var t=qr();return t?t.sanitize(Ur.URL,e)||"":mr(e,"URL")?gr(e):xr(We(e))}function Wr(e){var t=qr();if(t)return cr(t.sanitize(Ur.RESOURCE_URL,e)||"");if(mr(e,"ResourceURL"))return cr(gr(e));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function qr(){var e=pn();return e&&e[12]}var Xr="__ngContext__";function Yr(e,t){e[Xr]=t}function Kr(e){var t=function(e){return e[Xr]||null}(e);return t?Array.isArray(t)?t:t.lView:null}function $r(e){return e.ngOriginalError}function Qr(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i0&&(e[n-1][4]=i[4]);var o=Ni(e,10+t);!function(e,t){To(e,t,t[11],2,null,null),t[0]=null,t[6]=null}(i[1],i);var a=o[19];null!==a&&a.detachView(o[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}}function po(e,t){if(!(256&t[2])){var n=t[11];Zt(n)&&n.destroyNode&&To(e,t,n,3,null,null),function(e){var t=e[13];if(!t)return vo(e[1],e);for(;t;){var n=null;if(Dt(t))n=t[13];else{var i=t[10];i&&(n=i)}if(!n){for(;t&&!t[4]&&t!==e;)Dt(t)&&vo(t[1],t),t=t[3];null===t&&(t=e),Dt(t)&&vo(t[1],t),n=t&&t[4]}t=n}}(t)}}function vo(e,t){if(!(256&t[2])){t[2]&=-129,t[2]|=256,function(e,t){var n;if(null!=e&&null!=(n=e.destroyHooks))for(var i=0;i=0?i[r=c]():i[r=-c].unsubscribe(),o+=2}else{var l=i[r=n[o+1]];n[o].call(l)}if(null!==i){for(var h=r+1;ho?"":r[l+1].toLowerCase();var d=8&i?h:null;if(d&&-1!==Io(d,c,0)||2&i&&c!==h){if(Fo(i))return!1;a=!0}}}}else{if(!a&&!Fo(i)&&!Fo(u))return!1;if(a&&Fo(u))continue;a=!1,i=u|1&i}}return Fo(i)||a}function Fo(e){return 0==(1&e)}function Bo(e,t,n,i){if(null===t)return-1;var r=0;if(i||!n){for(var o=!1;r-1)for(n++;n2&&void 0!==arguments[2]&&arguments[2],i=0;i0?'="'+s+'"':"")+"]"}else 8&i?r+="."+a:4&i&&(r+=" "+a);else""!==r&&!Fo(a)&&(t+=Uo(o,r),r=""),i=a,o=o||!Fo(i);n++}return""!==r&&(t+=Uo(o,r)),t}var Go={};function Wo(e){qo(vn(),pn(),zn()+e,kn())}function qo(e,t,n,i){if(!i)if(3==(3&t[2])){var r=e.preOrderCheckHooks;null!==r&&qn(t,r,n)}else{var o=e.preOrderHooks;null!==o&&Xn(t,o,0,n)}Un(n)}function Xo(e,t){return e<<17|t<<2}function Yo(e){return e>>17&32767}function Ko(e){return 2|e}function $o(e){return(131068&e)>>2}function Qo(e,t){return-131069&e|t<<2}function Zo(e){return 1|e}function Jo(e,t){var n=e.contentQueries;if(null!==n)for(var i=0;i20&&qo(e,t,20,kn()),n(i,r)}finally{Un(o)}}function sa(e,t,n){if(Lt(t))for(var i=t.directiveEnd,r=t.directiveStart;r2&&void 0!==arguments[2]?arguments[2]:nn,i=t.localNames;if(null!==i)for(var r=t.index+1,o=0;o0;){var n=e[--t];if("number"==typeof n&&n<0)return n}return 0})(s)!=u&&s.push(u),s.push(i,r,a)}}function ma(e,t){null!==e.hostBindings&&e.hostBindings(1,t)}function ya(e,t){t.flags|=2,(e.components||(e.components=[])).push(t.index)}function ba(e,t,n){if(n){if(t.exportAs)for(var i=0;i0&&Ta(n)}}function Ta(e){for(var t=ao(e);null!==t;t=so(t))for(var n=10;n0&&Ta(i)}var o=e[1].components;if(null!==o)for(var a=0;a0&&Ta(s)}}function Aa(e,t){var n=an(t,e),i=n[1];(function(e,t){for(var n=t.length;n1&&void 0!==arguments[1]?arguments[1]:zi;if(t===zi){var n=new Error("NullInjectorError: No provider for ".concat(Fe(e),"!"));throw n.name="NullInjectorError",n}return t}}]),e}(),qa=new Pi("Set Injector scope."),Xa={},Ya={};function Ka(){return void 0===Ha&&(Ha=new Wa),Ha}function $a(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=arguments.length>3?arguments[3]:void 0;return new Qa(e,n,t||Ka(),i)}var Qa=function(){function e(t,n,i){var r=this,o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;m(this,e),this.parent=i,this.records=new Map,this.injectorDefTypes=new Set,this.onDestroy=new Set,this._destroyed=!1;var a=[];n&&Ri(n,function(e){return r.processProvider(e,t,n)}),Ri([t],function(e){return r.processInjectorType(e,[],a)}),this.records.set(Ga,es(void 0,this));var s=this.records.get(qa);this.scope=null!=s?s.value:null,this.source=o||("object"==typeof t?null:Fe(t))}return b(e,[{key:"destroyed",get:function(){return this._destroyed}},{key:"destroy",value:function(){this.assertNotDestroyed(),this._destroyed=!0;try{this.onDestroy.forEach(function(e){return e.ngOnDestroy()})}finally{this.records.clear(),this.onDestroy.clear(),this.injectorDefTypes.clear()}}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:zi,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rt.Default;this.assertNotDestroyed();var i=Xi(this),r=ot(void 0);try{if(!(n&rt.SkipSelf)){var o=this.records.get(e);if(void 0===o){var a=function(e){return"function"==typeof e||"object"==typeof e&&e instanceof Pi}(e)&&$e(e);o=a&&this.injectableDefInScope(a)?es(Za(e),Xa):null,this.records.set(e,o)}if(null!=o)return this.hydrate(e,o)}return(n&rt.Self?Ka():this.parent).get(e,t=n&rt.Optional&&t===zi?null:t)}catch(s){if("NullInjectorError"===s.name){if((s[Hi]=s[Hi]||[]).unshift(Fe(e)),i)throw s;return er(s,e,"R3InjectorError",this.source)}throw s}finally{ot(r),Xi(i)}}},{key:"_resolveInjectorDefTypes",value:function(){var e=this;this.injectorDefTypes.forEach(function(t){return e.get(t)})}},{key:"toString",value:function(){var e=[];return this.records.forEach(function(t,n){return e.push(Fe(n))}),"R3Injector[".concat(e.join(", "),"]")}},{key:"assertNotDestroyed",value:function(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}},{key:"processInjectorType",value:function(e,t,n){var i=this;if(!(e=Ue(e)))return!1;var r=Ze(e),o=null==r&&e.ngModule||void 0,a=void 0===o?e:o,s=-1!==n.indexOf(a);if(void 0!==o&&(r=Ze(o)),null==r)return!1;if(null!=r.imports&&!s){var u;n.push(a);try{Ri(r.imports,function(e){i.processInjectorType(e,t,n)&&(void 0===u&&(u=[]),u.push(e))})}finally{}if(void 0!==u)for(var c=function(e){var t=u[e],n=t.ngModule,r=t.providers;Ri(r,function(e){return i.processProvider(e,n,r||gt)})},l=0;l0){var n=Li(t,"?");throw new Error("Can't resolve all parameters for ".concat(Fe(e),": (").concat(n.join(", "),")."))}var i=function(e){var t=e&&(e[et]||e[nt]);if(t){var n=function(e){if(e.hasOwnProperty("name"))return e.name;var t=(""+e).match(/^function\s*([^\s(]+)/);return null===t?"":t[1]}(e);return console.warn('DEPRECATED: DI is instantiating a token "'.concat(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 "').concat(n,'" class.')),t}return null}(e);return null!==i?function(){return i.factory(e)}:function(){return new e}}(e);throw new Error("unreachable")}function Ja(e,t,n){var i;if(ns(e)){var r=Ue(e);return zt(r)||Za(r)}if(ts(e))i=function(){return Ue(e.useValue)};else if(function(e){return!(!e||!e.useFactory)}(e))i=function(){return e.useFactory.apply(e,v(Qi(e.deps||[])))};else if(function(e){return!(!e||!e.useExisting)}(e))i=function(){return Ki(Ue(e.useExisting))};else{var o=Ue(e&&(e.useClass||e.provide));if(!function(e){return!!e.deps}(e))return zt(o)||Za(o);i=function(){return h(o,v(Qi(e.deps)))}}return i}function es(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return{factory:e,value:t,multi:n?[]:void 0}}function ts(e){return null!==e&&"object"==typeof e&&qi in e}function ns(e){return"function"==typeof e}var is=function(e,t,n){return function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=arguments.length>3?arguments[3]:void 0,r=$a(e,t,n,i);return r._resolveInjectorDefTypes(),r}({name:n},t,e,n)},rs=function(){function e(){m(this,e)}return b(e,null,[{key:"create",value:function(e,t){return Array.isArray(e)?is(e,t,""):is(e.providers,e.parent,e.name||"")}}]),e}();function os(e,t){Wn(Kr(e)[1],mn())}function as(e){for(var t=function(e){return Object.getPrototypeOf(e.prototype).constructor}(e.type),n=!0,i=[e];t;){var r=void 0;if(Bt(e))r=t.\u0275cmp||t.\u0275dir;else{if(t.\u0275cmp)throw new Error("Directives cannot inherit Components");r=t.\u0275dir}if(r){if(n){i.push(r);var o=e;o.inputs=ss(e.inputs),o.declaredInputs=ss(e.declaredInputs),o.outputs=ss(e.outputs);var a=r.hostBindings;a&&ls(e,a);var s=r.viewQuery,u=r.contentQueries;if(s&&us(e,s),u&&cs(e,u),je(e.inputs,r.inputs),je(e.declaredInputs,r.declaredInputs),je(e.outputs,r.outputs),Bt(r)&&r.data.animation){var c=e.data;c.animation=(c.animation||[]).concat(r.data.animation)}}var l=r.features;if(l)for(var h=0;h=0;i--){var r=e[i];r.hostVars=t+=r.hostVars,r.hostAttrs=ti(r.hostAttrs,n=ti(n,r.hostAttrs))}}(i)}function ss(e){return e===vt?{}:e===gt?[]:e}function us(e,t){var n=e.viewQuery;e.viewQuery=n?function(e,i){t(e,i),n(e,i)}:t}function cs(e,t){var n=e.contentQueries;e.contentQueries=n?function(e,i,r){t(e,i,r),n(e,i,r)}:t}function ls(e,t){var n=e.hostBindings;e.hostBindings=n?function(e,i){t(e,i),n(e,i)}:t}rs.THROW_IF_NOT_FOUND=zi,rs.NULL=new Wa,rs.\u0275prov=Ye({token:rs,providedIn:"any",factory:function(){return Ki(Ga)}}),rs.__NG_ELEMENT_ID__=-1;var hs=null;function ds(){if(!hs){var e=pt.Symbol;if(e&&e.iterator)hs=e.iterator;else for(var t=Object.getOwnPropertyNames(Map.prototype),n=0;n1&&void 0!==arguments[1]?arguments[1]:rt.Default,n=pn();return null===n?Ki(e,t):gi(mn(),n,Ue(e),t)}function Es(e,t,n){var i=pn();return ms(i,Cn(),t)&&pa(vn(),Hn(),i,e,t,i[11],n,!1),Es}function Cs(e,t,n,i,r){var o=r?"class":"style";Va(e,n,t.inputs[o],o,i)}function Os(e,t,n,i){var r=pn(),o=vn(),a=20+e,s=r[11],u=r[a]=lo(s,t,dn.lFrame.currentNamespace),c=o.firstCreatePass?function(e,t,n,i,r,o,a){var s=t.consts,u=ta(t,e,2,r,cn(s,o));return va(t,n,u,cn(s,a)),null!==u.attrs&&Ua(u,u.attrs,!1),null!==u.mergedAttrs&&Ua(u,u.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,u),u}(a,o,r,0,t,n,i):o.data[a];bn(c,!0);var l=c.mergedAttrs;null!==l&&Zn(s,u,l);var h=c.classes;null!==h&&Mo(s,u,h);var d=c.styles;null!==d&&Po(s,u,d),64!=(64&c.flags)&&xo(o,r,u,c),0===dn.lFrame.elementDepthCount&&Yr(u,r),dn.lFrame.elementDepthCount++,Ft(c)&&(ua(o,r,c),sa(o,c,r)),null!==i&&ca(r,c)}function Ts(){var e=mn();_n()?wn():bn(e=e.parent,!1);var t=e;dn.lFrame.elementDepthCount--;var n=vn();n.firstCreatePass&&(Wn(n,e),Lt(e)&&n.queries.elementEnd(e)),null!=t.classesWithoutHost&&function(e){return 0!=(16&e.flags)}(t)&&Cs(n,t,pn(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function(e){return 0!=(32&e.flags)}(t)&&Cs(n,t,pn(),t.stylesWithoutHost,!1)}function As(e,t,n,i){Os(e,t,n,i),Ts()}function Ps(e,t,n){var i=pn(),r=vn(),o=e+20,a=r.firstCreatePass?function(e,t,n,i,r){var o=t.consts,a=cn(o,i),s=ta(t,e,8,"ng-container",a);return null!==a&&Ua(s,a,!0),va(t,n,s,cn(o,r)),null!==t.queries&&t.queries.elementStart(t,s),s}(o,r,i,t,n):r.data[o];bn(a,!0);var s=i[o]=i[11].createComment("");xo(r,i,s,a),Yr(s,i),Ft(a)&&(ua(r,i,a),sa(r,a,i)),null!=n&&ca(i,a)}function Ms(){var e=mn(),t=vn();_n()?wn():bn(e=e.parent,!1),t.firstCreatePass&&(Wn(t,e),Lt(e)&&t.queries.elementEnd(e))}function Is(e,t,n){Ps(e,t,n),Ms()}function Rs(){return pn()}function Ds(e){return!!e&&"function"==typeof e.then}function Ns(e){return!!e&&"function"==typeof e.subscribe}var Ls=Ns;function js(e,t,n,i){var r=pn(),o=vn(),a=mn();return Bs(o,r,r[11],a,e,t,!!n,i),js}function Fs(e,t){var n=mn(),i=pn(),r=vn();return Bs(r,i,Fa(Pn(r.data),n,i),n,e,t,!1),Fs}function Bs(e,t,n,i,r,o,a,s){var u=Ft(i),c=e.firstCreatePass&&ja(e),l=t[8],h=La(t),d=!0;if(3&i.type||s){var f=nn(i,t),p=s?s(f):f,v=h.length,g=s?function(e){return s(en(e[i.index]))}:i.index;if(Zt(n)){var m=null;if(!s&&u&&(m=function(e,t,n,i){var r=e.cleanup;if(null!=r)for(var o=0;ou?s[u]:null}"string"==typeof a&&(o+=2)}return null}(e,t,r,i.index)),null!==m)(m.__ngLastListenerFn__||m).__ngNextListenerFn__=o,m.__ngLastListenerFn__=o,d=!1;else{o=zs(i,t,l,o,!1);var y=n.listen(p,r,o);h.push(o,y),c&&c.push(r,g,v,v+1)}}else o=zs(i,t,l,o,!0),p.addEventListener(r,o,a),h.push(o),c&&c.push(r,g,v,a)}else o=zs(i,t,l,o,!1);var b,_=i.outputs;if(d&&null!==_&&(b=_[r])){var w=b.length;if(w)for(var k=0;k0&&void 0!==arguments[0]?arguments[0]:1;return function(e){return(dn.lFrame.contextLView=function(e,t){for(;e>0;)t=t[15],e--;return t}(e,dn.lFrame.contextLView))[8]}(e)}function Hs(e,t){for(var n=null,i=function(e){var t=e.attrs;if(null!=t){var n=t.indexOf(5);if(0==(1&n))return t[n+1]}return null}(e),r=0;r1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0,i=pn(),r=vn(),o=ta(r,20+e,16,null,n||null);null===o.projection&&(o.projection=t),wn(),64!=(64&o.flags)&&function(e,t,n){Ao(t[11],0,t,n,go(e,n,t),wo(n.parent||t[6],n,t))}(r,i,o)}function qs(e,t,n){return Xs(e,"",t,"",n),qs}function Xs(e,t,n,i,r){var o=pn(),a=_s(o,t,n,i);return a!==Go&&pa(vn(),Hn(),o,e,a,o[11],r,!1),Xs}function Ys(e,t,n,i,r){for(var o=e[n+1],a=null===t,s=i?Yo(o):$o(o),u=!1;0!==s&&(!1===u||a);){var c=e[s+1];Ks(e[s],t)&&(u=!0,e[s+1]=i?Zo(c):Ko(c)),s=i?Yo(c):$o(c)}u&&(e[n+1]=i?Ko(o):Zo(o))}function Ks(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&Bi(e,t)>=0}var $s={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Qs(e){return e.substring($s.key,$s.keyEnd)}function Zs(e){return e.substring($s.value,$s.valueEnd)}function Js(e,t){var n=$s.textEnd;return n===t?-1:(t=$s.keyEnd=function(e,t,n){for(;t32;)t++;return t}(e,$s.key=t,n),nu(e,t,n))}function eu(e,t){var n=$s.textEnd,i=$s.key=nu(e,t,n);return n===i?-1:(i=$s.keyEnd=function(e,t,n){for(var i;t=65&&(-33&i)<=90||i>=48&&i<=57);)t++;return t}(e,i,n),i=iu(e,i,n),i=$s.value=nu(e,i,n),i=$s.valueEnd=function(e,t,n){for(var i=-1,r=-1,o=-1,a=t,s=a;a32&&(s=a),o=r,r=i,i=-33&u}return s}(e,i,n),iu(e,i,n))}function tu(e){$s.key=0,$s.keyEnd=0,$s.value=0,$s.valueEnd=0,$s.textEnd=e.length}function nu(e,t,n){for(;t=0;n=eu(t,n))gu(e,Qs(t),Zs(t))}function uu(e){hu(ji,cu,e,!0)}function cu(e,t){for(var n=function(e){return tu(e),Js(e,nu(e,0,$s.textEnd))}(t);n>=0;n=Js(t,n))ji(e,Qs(t),!0)}function lu(e,t,n,i){var r=pn(),o=vn(),a=On(2);o.firstUpdatePass&&fu(o,e,a,i),t!==Go&&ms(r,a,t)&&mu(o,o.data[zn()],r,r[11],e,r[a+1]=function(e,t){return null==e||("string"==typeof t?e+=t:"object"==typeof e&&(e=Fe(gr(e)))),e}(t,n),i,a)}function hu(e,t,n,i){var r=vn(),o=On(2);r.firstUpdatePass&&fu(r,null,o,i);var a=pn();if(n!==Go&&ms(a,o,n)){var s=r.data[zn()];if(_u(s,i)&&!du(r,o)){var u=i?s.classesWithoutHost:s.stylesWithoutHost;null!==u&&(n=Be(u,n||"")),Cs(r,s,a,n,i)}else!function(e,t,n,i,r,o,a,s){r===Go&&(r=gt);for(var u=0,c=0,l=0=e.expandoStartIndex}function fu(e,t,n,i){var r=e.data;if(null===r[n+1]){var o=r[zn()],a=du(e,n);_u(o,i)&&null===t&&!a&&(t=!1),t=function(e,t,n,i){var r=Pn(e),o=i?t.residualClasses:t.residualStyles;if(null===r)0===(i?t.classBindings:t.styleBindings)&&(n=vu(n=pu(null,e,t,n,i),t.attrs,i),o=null);else{var a=t.directiveStylingLast;if(-1===a||e[a]!==r)if(n=pu(r,e,t,n,i),null===o){var s=function(e,t,n){var i=n?t.classBindings:t.styleBindings;if(0!==$o(i))return e[Yo(i)]}(e,t,i);void 0!==s&&Array.isArray(s)&&function(e,t,n,i){e[Yo(n?t.classBindings:t.styleBindings)]=i}(e,t,i,s=vu(s=pu(null,e,t,s[1],i),t.attrs,i))}else o=function(e,t,n){for(var i,r=t.directiveEnd,o=1+t.directiveStylingLast;o0)&&(l=!0)}else c=n;if(r)if(0!==u){var d=Yo(e[s+1]);e[i+1]=Xo(d,s),0!==d&&(e[d+1]=Qo(e[d+1],i)),e[s+1]=function(e,t){return 131071&e|t<<17}(e[s+1],i)}else e[i+1]=Xo(s,0),0!==s&&(e[s+1]=Qo(e[s+1],i)),s=i;else e[i+1]=Xo(u,0),0===s?s=i:e[u+1]=Qo(e[u+1],i),u=i;l&&(e[i+1]=Ko(e[i+1])),Ys(e,c,i,!0),Ys(e,c,i,!1),function(e,t,n,i,r){var o=r?e.residualClasses:e.residualStyles;null!=o&&"string"==typeof t&&Bi(o,t)>=0&&(n[i+1]=Zo(n[i+1]))}(t,c,e,i,o),a=Xo(s,u),o?t.classBindings=a:t.styleBindings=a}(r,o,t,n,a,i)}}function pu(e,t,n,i,r){var o=null,a=n.directiveEnd,s=n.directiveStylingLast;for(-1===s?s=n.directiveStart:s++;s0;){var u=e[r],c=Array.isArray(u),l=c?u[1]:u,h=null===l,d=n[r+1];d===Go&&(d=h?gt:void 0);var f=h?Fi(d,i):l===i?d:void 0;if(c&&!bu(f)&&(f=Fi(u,i)),bu(f)&&(a=f,s))return a;var p=e[r+1];r=s?Yo(p):$o(p)}if(null!==t){var v=o?t.residualClasses:t.residualStyles;null!=v&&(a=Fi(v,i))}return a}function bu(e){return void 0!==e}function _u(e,t){return 0!=(e.flags&(t?16:32))}function wu(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=pn(),i=vn(),r=e+20,o=i.firstCreatePass?ta(i,r,1,t,null):i.data[r],a=n[r]=function(e,t){return Zt(e)?e.createText(t):e.createTextNode(t)}(n[11],t);xo(i,n,a,o),bn(o,!1)}function ku(e){return xu("",e,""),ku}function xu(e,t,n){var i=pn(),r=_s(i,e,t,n);return r!==Go&&za(i,zn(),r),xu}function Su(e,t,n,i,r){var o=pn(),a=function(e,t,n,i,r,o){var a=ys(e,En(),n,r);return On(2),a?t+We(n)+i+We(r)+o:Go}(o,e,t,n,i,r);return a!==Go&&za(o,zn(),a),Su}function Eu(e,t,n){hu(ji,cu,_s(pn(),e,t,n),!0)}function Cu(e,t,n){var i=pn();return ms(i,Cn(),t)&&pa(vn(),Hn(),i,e,t,i[11],n,!0),Cu}function Ou(e,t,n){var i=pn();if(ms(i,Cn(),t)){var r=vn(),o=Hn();pa(r,o,i,e,t,Fa(Pn(r.data),o,i),n,!0)}return Ou}var Tu=void 0,Au=["en",[["a","p"],["AM","PM"],Tu],[["AM","PM"],Tu,Tu],[["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"]],Tu,[["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"]],Tu,[["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}",Tu,"{1} 'at' {0}",Tu],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(e){var t=Math.floor(Math.abs(e)),n=e.toString().replace(/^[^.]*\.?/,"").length;return 1===t&&0===n?1:5}],Pu={};function Mu(e){return e in Pu||(Pu[e]=pt.ng&&pt.ng.common&&pt.ng.common.locales&&pt.ng.common.locales[e]),Pu[e]}var Iu=((Iu=Iu||{})[Iu.LocaleId=0]="LocaleId",Iu[Iu.DayPeriodsFormat=1]="DayPeriodsFormat",Iu[Iu.DayPeriodsStandalone=2]="DayPeriodsStandalone",Iu[Iu.DaysFormat=3]="DaysFormat",Iu[Iu.DaysStandalone=4]="DaysStandalone",Iu[Iu.MonthsFormat=5]="MonthsFormat",Iu[Iu.MonthsStandalone=6]="MonthsStandalone",Iu[Iu.Eras=7]="Eras",Iu[Iu.FirstDayOfWeek=8]="FirstDayOfWeek",Iu[Iu.WeekendRange=9]="WeekendRange",Iu[Iu.DateFormat=10]="DateFormat",Iu[Iu.TimeFormat=11]="TimeFormat",Iu[Iu.DateTimeFormat=12]="DateTimeFormat",Iu[Iu.NumberSymbols=13]="NumberSymbols",Iu[Iu.NumberFormats=14]="NumberFormats",Iu[Iu.CurrencyCode=15]="CurrencyCode",Iu[Iu.CurrencySymbol=16]="CurrencySymbol",Iu[Iu.CurrencyName=17]="CurrencyName",Iu[Iu.Currencies=18]="Currencies",Iu[Iu.Directionality=19]="Directionality",Iu[Iu.PluralCase=20]="PluralCase",Iu[Iu.ExtraData=21]="ExtraData",Iu),Ru="en-US";function Du(e){(function(e,t){null==e&&function(e,t,n,i){throw new Error("ASSERTION ERROR: ".concat(e)+" [Expected=> ".concat(null," ").concat("!="," ").concat(t," <=Actual]"))}(t,e)})(e,"Expected localeId to be defined"),"string"==typeof e&&e.toLowerCase().replace(/_/g,"-")}function Nu(e,t,n,i,r){if(e=Ue(e),Array.isArray(e))for(var o=0;o>20;if(ns(e)||!e.multi){var p=new Qn(c,r,Ss),v=Fu(u,t,r?h:h+f,d);-1===v?(fi(ci(l,s),a,u),Lu(a,e,t.length),t.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=1048576),n.push(p),s.push(p)):(n[v]=p,s[v]=p)}else{var g=Fu(u,t,h+f,d),m=Fu(u,t,h,h+f),y=g>=0&&n[g],b=m>=0&&n[m];if(r&&!b||!r&&!y){fi(ci(l,s),a,u);var _=function(e,t,n,i,r){var o=new Qn(e,n,Ss);return o.multi=[],o.index=t,o.componentProviders=0,ju(o,r,i&&!n),o}(r?Vu:Bu,n.length,r,i,c);!r&&b&&(n[m].providerFactory=_),Lu(a,e,t.length,0),t.push(u),l.directiveStart++,l.directiveEnd++,r&&(l.providerIndexes+=1048576),n.push(_),s.push(_)}else Lu(a,e,g>-1?g:m,ju(n[r?m:g],c,!r&&i));!r&&i&&b&&n[m].componentProviders++}}}function Lu(e,t,n,i){var r=ns(t);if(r||function(e){return!!e.useClass}(t)){var o=(t.useClass||t).prototype.ngOnDestroy;if(o){var a=e.destroyHooks||(e.destroyHooks=[]);if(!r&&t.multi){var s=a.indexOf(n);-1===s?a.push(n,[i,o]):a[s+1].push(i,o)}else a.push(n,o)}}}function ju(e,t,n){return n&&e.componentProviders++,e.multi.push(t)-1}function Fu(e,t,n,i){for(var r=n;r1&&void 0!==arguments[1]?arguments[1]:[];return function(n){n.providersResolver=function(n,i){return function(e,t,n){var i=vn();if(i.firstCreatePass){var r=Bt(e);Nu(n,i.data,i.blueprint,r,!0),Nu(t,i.data,i.blueprint,r,!1)}}(n,i?i(e):e,t)}}}var Hu=function e(){m(this,e)},Gu=function e(){m(this,e)};function Wu(){}function qu(e,t){return new Yu(nn(e,t))}Gu.NULL=new(function(){function e(){m(this,e)}return b(e,[{key:"resolveComponentFactory",value:function(e){throw function(e){var t=Error("No component factory found for ".concat(Fe(e),". Did you add it to @NgModule.entryComponents?"));return t.ngComponent=e,t}(e)}}]),e}());var Xu=function(){return qu(mn(),pn())},Yu=function(){var e=function e(t){m(this,e),this.nativeElement=t};return e.__NG_ELEMENT_ID__=Xu,e}();function Ku(e){return e instanceof Yu?e.nativeElement:e}var $u=function e(){m(this,e)},Qu=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=function(){return Zu()},e}(),Zu=function(){var e=pn(),t=an(mn().index,e);return function(e){return e[11]}(Dt(t)?t:e)},Ju=function(){var e=function e(){m(this,e)};return e.\u0275prov=Ye({token:e,providedIn:"root",factory:function(){return null}}),e}(),ec=function e(t){m(this,e),this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")},tc=new ec("12.2.5"),nc=function(){function e(){m(this,e)}return b(e,[{key:"supports",value:function(e){return ps(e)}},{key:"create",value:function(e){return new rc(e)}}]),e}(),ic=function(e,t){return t},rc=function(){function e(t){m(this,e),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||ic}return b(e,[{key:"forEachItem",value:function(e){var t;for(t=this._itHead;null!==t;t=t._next)e(t)}},{key:"forEachOperation",value:function(e){for(var t=this._itHead,n=this._removalsHead,i=0,r=null;t||n;){var o=!n||t&&t.currentIndex4&&void 0!==arguments[4]&&arguments[4];null!==n;){var o=t[n.index];if(null!==o&&i.push(en(o)),Nt(o))for(var a=10;a-1&&(fo(e,n),Ni(t,n))}this._attachedToViewContainer=!1}po(this._lView[1],this._lView)}},{key:"onDestroy",value:function(e){da(this._lView[1],this._lView,null,e)}},{key:"markForCheck",value:function(){Ma(this._cdRefInjectingView||this._lView)}},{key:"detach",value:function(){this._lView[2]&=-129}},{key:"reattach",value:function(){this._lView[2]|=128}},{key:"detectChanges",value:function(){Ia(this._lView[1],this._lView,this.context)}},{key:"checkNoChanges",value:function(){!function(e,t,n){xn(!0);try{Ia(e,t,n)}finally{xn(!1)}}(this._lView[1],this._lView,this.context)}},{key:"attachToViewContainerRef",value:function(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}},{key:"detachFromAppRef",value:function(){this._appRef=null,function(e,t){To(e,t,t[11],2,null,null)}(this._lView[1],this._lView)}},{key:"attachToAppRef",value:function(e){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=e}}]),e}(),yc=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,e))._view=e,i}return b(n,[{key:"detectChanges",value:function(){Ra(this._view)}},{key:"checkNoChanges",value:function(){!function(e){xn(!0);try{Ra(e)}finally{xn(!1)}}(this._view)}},{key:"context",get:function(){return null}}]),n}(mc),bc=function(e){return function(e,t,n){if(jt(e)&&!n){var i=an(e.index,t);return new mc(i,i)}return 47&e.type?new mc(t[16],t):null}(mn(),pn(),16==(16&e))},_c=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=bc,e}(),wc=[new cc],kc=new fc([new nc]),xc=new vc(wc),Sc=function(){return Oc(mn(),pn())},Ec=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=Sc,e}(),Cc=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this))._declarationLView=e,o._declarationTContainer=i,o.elementRef=r,o}return b(n,[{key:"createEmbeddedView",value:function(e){var t=this._declarationTContainer.tViews,n=ea(this._declarationLView,t,e,16,null,t.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];var i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(t)),ia(t,n,e),new mc(n)}}]),n}(Ec);function Oc(e,t){return 4&e.type?new Cc(t,e,qu(e,t)):null}var Tc=function e(){m(this,e)},Ac=function(){return Dc(mn(),pn())},Pc=function(){var e=function e(){m(this,e)};return e.__NG_ELEMENT_ID__=Ac,e}(),Mc=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this))._lContainer=e,o._hostTNode=i,o._hostLView=r,o}return b(n,[{key:"element",get:function(){return qu(this._hostTNode,this._hostLView)}},{key:"injector",get:function(){return new Si(this._hostTNode,this._hostLView)}},{key:"parentInjector",get:function(){var e=di(this._hostTNode,this._hostLView);if(ii(e)){var t=oi(e,this._hostLView),n=ri(e);return new Si(t[1].data[n+8],t)}return new Si(null,this._hostLView)}},{key:"clear",value:function(){for(;this.length>0;)this.remove(this.length-1)}},{key:"get",value:function(e){var t=Ic(this._lContainer);return null!==t&&t[e]||null}},{key:"length",get:function(){return this._lContainer.length-10}},{key:"createEmbeddedView",value:function(e,t,n){var i=e.createEmbeddedView(t||{});return this.insert(i,n),i}},{key:"createComponent",value:function(e,t,n,i,r){var o=n||this.parentInjector;if(!r&&null==e.ngModule&&o){var a=o.get(Tc,null);a&&(r=a)}var s=e.create(o,i,void 0,r);return this.insert(s.hostView,t),s}},{key:"insert",value:function(e,t){var i=e._lView,r=i[1];if(function(e){return Nt(e[3])}(i)){var o=this.indexOf(e);if(-1!==o)this.detach(o);else{var a=i[3],s=new n(a,a[6],a[3]);s.detach(s.indexOf(e))}}var u=this._adjustIndex(t),c=this._lContainer;!function(e,t,n,i){var r=10+i,o=n.length;i>0&&(n[r-1][4]=t),i1&&void 0!==arguments[1]?arguments[1]:0;return null==e?this.length+t:e}}]),n}(Pc);function Ic(e){return e[8]}function Rc(e){return e[8]||(e[8]=[])}function Dc(e,t){var n,i=t[e.index];if(Nt(i))n=i;else{var r;if(8&e.type)r=en(i);else{var o=t[11];r=o.createComment("");var a=nn(e,t);mo(o,_o(o,a),r,function(e,t){return Zt(e)?e.nextSibling(t):t.nextSibling}(o,a),!1)}t[e.index]=n=Ca(i,t,r,e),Pa(t,n)}return new Mc(n,e,t)}var Nc={},Lc=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).ngModule=e,i}return b(n,[{key:"resolveComponentFactory",value:function(e){var t=It(e);return new Bc(t,this.ngModule)}}]),n}(Gu);function jc(e){var t=[];for(var n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}var Fc=new Pi("SCHEDULER_TOKEN",{providedIn:"root",factory:function(){return Jr}}),Bc=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).componentDef=e,r.ngModule=i,r.componentType=e.type,r.selector=function(e){return e.map(Ho).join(",")}(e.selectors),r.ngContentSelectors=e.ngContentSelectors?e.ngContentSelectors:[],r.isBoundToModule=!!i,r}return b(n,[{key:"inputs",get:function(){return jc(this.componentDef.inputs)}},{key:"outputs",get:function(){return jc(this.componentDef.outputs)}},{key:"create",value:function(e,t,n,i){var r,o,a=(i=i||this.ngModule)?function(e,t){return{get:function(n,i,r){var o=e.get(n,Nc,r);return o!==Nc||i===Nc?o:t.get(n,i,r)}}}(e,i.injector):e,s=a.get($u,Jt),u=a.get(Ju,null),c=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",h=n?function(e,t,n){if(Zt(e))return e.selectRootElement(t,n===ct.ShadowDom);var i="string"==typeof t?e.querySelector(t):t;return i.textContent="",i}(c,n,this.componentDef.encapsulation):lo(s.createRenderer(null,this.componentDef),l,function(e){var t=e.toLowerCase();return"svg"===t?$t:"math"===t?"http://www.w3.org/1998/MathML/":null}(l)),d=this.componentDef.onPush?576:528,f={components:[],scheduler:Jr,clean:Na,playerHandler:null,flags:0},p=ha(0,null,null,1,0,null,null,null,null,null),v=ea(null,p,f,d,null,null,s,c,u,a);Nn(v);try{var g=function(e,t,n,i,r,o){var a=n[1];n[20]=e;var s=ta(a,20,2,"#host",null),u=s.mergedAttrs=t.hostAttrs;null!==u&&(Ua(s,u,!0),null!==e&&(Zn(r,e,u),null!==s.classes&&Mo(r,e,s.classes),null!==s.styles&&Po(r,e,s.styles)));var c=i.createRenderer(e,t),l=ea(n,la(t),null,t.onPush?64:16,n[20],s,i,c,null,null);return a.firstCreatePass&&(fi(ci(s,n),a,t.type),ya(a,s),_a(s,n.length,1)),Pa(n,l),n[20]=l}(h,this.componentDef,v,s,c);if(h)if(n)Zn(c,h,["ng-version",tc.full]);else{var m=function(e){for(var t=[],n=[],i=1,r=2;i0&&Mo(c,h,b.join(" "))}if(o=rn(p,20),void 0!==t)for(var _=o.projection=[],w=0;w1&&void 0!==arguments[1]?arguments[1]:rs.THROW_IF_NOT_FOUND,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:rt.Default;return e===rs||e===Tc||e===Ga?this:this._r3Injector.get(e,t,n)}},{key:"destroy",value:function(){var e=this._r3Injector;!e.destroyed&&e.destroy(),this.destroyCbs.forEach(function(e){return e()}),this.destroyCbs=null}},{key:"onDestroy",value:function(e){this.destroyCbs.push(e)}}]),n}(Tc),Hc=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).moduleType=e,null!==Rt(e)&&function(e){var t=new Set;!function e(n){var i=Rt(n,!0),r=i.id;null!==r&&(function(e,t,n){if(t&&t!==n)throw new Error("Duplicate module registered for ".concat(e," - ").concat(Fe(t)," vs ").concat(Fe(t.name)))}(r,zc.get(r),n),zc.set(r,n));var o,a=_(no(i.imports));try{for(a.s();!(o=a.n()).done;){var s=o.value;t.has(s)||(t.add(s),e(s))}}catch(u){a.e(u)}finally{a.f()}}(e)}(e),i}return b(n,[{key:"create",value:function(e){return new Uc(this.moduleType,e)}}]),n}(function(){return function e(){m(this,e)}}());function Gc(e,t,n){var i=Sn()+e,r=pn();return r[i]===Go?gs(r,i,n?t.call(n):t()):function(e,t){return e[t]}(r,i)}function Wc(e,t,n,i){return Xc(pn(),Sn(),e,t,n,i)}function qc(e,t){var n=e[t];return n===Go?void 0:n}function Xc(e,t,n,i,r,o){var a=t+n;return ms(e,a,r)?gs(e,a+1,o?i.call(o,r):i(r)):qc(e,a+1)}function Yc(e,t){var n,i=vn(),r=e+20;i.firstCreatePass?(n=function(e,t){if(t)for(var n=t.length-1;n>=0;n--){var i=t[n];if(e===i.name)return i}throw new Ge("302","The pipe '".concat(e,"' could not be found!"))}(t,i.pipeRegistry),i.data[r]=n,n.onDestroy&&(i.destroyHooks||(i.destroyHooks=[])).push(r,n.onDestroy)):n=i.data[r];var o=n.factory||(n.factory=zt(n.type)),a=ot(Ss);try{var s=si(!1),u=o();return si(s),function(e,t,n,i){n>=e.data.length&&(e.data[n]=null,e.blueprint[n]=null),t[n]=i}(i,pn(),r,u),u}finally{ot(a)}}function Kc(e,t,n){var i=e+20,r=pn(),o=on(r,i);return function(e,t){return fs.isWrapped(t)&&(t=fs.unwrap(t),e[En()]=Go),t}(r,function(e,t){return e[1].data[t].pure}(r,i)?Xc(r,Sn(),t,o.transform,n,o):o.transform(n))}function $c(e){return function(t){setTimeout(e,void 0,t)}}var Qc=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return m(this,i),(e=n.call(this)).__isAsync=t,e}return b(i,[{key:"emit",value:function(t){e(p(i.prototype),"next",this).call(this,t)}},{key:"subscribe",value:function(t,n,r){var o,a,s,u=t,c=n||function(){return null},l=r;if(t&&"object"==typeof t){var h=t;u=null===(o=h.next)||void 0===o?void 0:o.bind(h),c=null===(a=h.error)||void 0===a?void 0:a.bind(h),l=null===(s=h.complete)||void 0===s?void 0:s.bind(h)}this.__isAsync&&(c=$c(c),u&&(u=$c(u)),l&&(l=$c(l)));var d=e(p(i.prototype),"subscribe",this).call(this,{next:u,error:c,complete:l});return t instanceof G&&t.add(d),d}}]),i}(re);function Zc(){return this._results[ds()]()}var Jc=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];m(this,e),this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;var n=ds(),i=e.prototype;i[n]||(i[n]=Zc)}return b(e,[{key:"changes",get:function(){return this._changes||(this._changes=new Qc)}},{key:"get",value:function(e){return this._results[e]}},{key:"map",value:function(e){return this._results.map(e)}},{key:"filter",value:function(e){return this._results.filter(e)}},{key:"find",value:function(e){return this._results.find(e)}},{key:"reduce",value:function(e,t){return this._results.reduce(e,t)}},{key:"forEach",value:function(e){this._results.forEach(e)}},{key:"some",value:function(e){return this._results.some(e)}},{key:"toArray",value:function(){return this._results.slice()}},{key:"toString",value:function(){return this._results.toString()}},{key:"reset",value:function(e,t){var n=this;n.dirty=!1;var i=Ii(e);(this._changesDetected=!function(e,t,n){if(e.length!==t.length)return!1;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:[];m(this,e),this.queries=t}return b(e,[{key:"createEmbeddedView",value:function(t){var n=t.queries;if(null!==n){for(var i=null!==t.contentQueries?t.contentQueries[0]:n.length,r=[],o=0;o2&&void 0!==arguments[2]?arguments[2]:null;m(this,e),this.predicate=t,this.flags=n,this.read=i},il=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];m(this,e),this.queries=t}return b(e,[{key:"elementStart",value:function(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:-1;m(this,e),this.metadata=t,this.matches=null,this.indexInDeclarationView=-1,this.crossesNgTemplate=!1,this._appliesToNextNode=!0,this._declarationNodeIndex=n}return b(e,[{key:"elementStart",value:function(e,t){this.isApplyingToNode(t)&&this.matchTNode(e,t)}},{key:"elementEnd",value:function(e){this._declarationNodeIndex===e.index&&(this._appliesToNextNode=!1)}},{key:"template",value:function(e,t){this.elementStart(e,t)}},{key:"embeddedTView",value:function(t,n){return this.isApplyingToNode(t)?(this.crossesNgTemplate=!0,this.addMatch(-t.index,n),new e(this.metadata)):null}},{key:"isApplyingToNode",value:function(e){if(this._appliesToNextNode&&1!=(1&this.metadata.flags)){for(var t=this._declarationNodeIndex,n=e.parent;null!==n&&8&n.type&&n.index!==t;)n=n.parent;return t===(null!==n?n.index:-1)}return this._appliesToNextNode}},{key:"matchTNode",value:function(e,t){var n=this.metadata.predicate;if(Array.isArray(n))for(var i=0;i0)i.push(a[s/2]);else{for(var c=o[s+1],l=t[-u],h=10;h0&&(r=setTimeout(function(){i._callbacks=i._callbacks.filter(function(e){return e.timeoutId!==r}),e(i._didWork,i.getPendingTasks())},t)),this._callbacks.push({doneCb:e,timeoutId:r,updateCb:n})}},{key:"whenStable",value:function(e,t,n){if(n&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(e,t,n),this._runCallbacksIfReady()}},{key:"getPendingRequestCount",value:function(){return this._pendingCount}},{key:"findProviders",value:function(e,t,n){return[]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Yl=function(){var e=function(){function e(){m(this,e),this._applications=new Map,Kl.addToWindow(this)}return b(e,[{key:"registerApplication",value:function(e,t){this._applications.set(e,t)}},{key:"unregisterApplication",value:function(e){this._applications.delete(e)}},{key:"unregisterAllApplications",value:function(){this._applications.clear()}},{key:"getTestability",value:function(e){return this._applications.get(e)||null}},{key:"getAllTestabilities",value:function(){return Array.from(this._applications.values())}},{key:"getAllRootElements",value:function(){return Array.from(this._applications.keys())}},{key:"findTestabilityInTree",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return Kl.findTestabilityInTree(this,e,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Kl=new(function(){function e(){m(this,e)}return b(e,[{key:"addToWindow",value:function(e){}},{key:"findTestabilityInTree",value:function(e,t,n){return null}}]),e}()),$l=!0,Ql=!1;function Zl(){return Ql=!0,$l}var Jl=new Pi("AllowMultipleToken");function eh(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],i="Platform: ".concat(t),r=new Pi(i);return function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],o=th();if(!o||o.injector.get(Jl,!1))if(e)e(n.concat(t).concat({provide:r,useValue:!0}));else{var a=n.concat(t).concat({provide:r,useValue:!0},{provide:qa,useValue:"platform"});!function(e){if(Wl&&!Wl.destroyed&&!Wl.injector.get(Jl,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Wl=e.get(nh);var t=e.get(kl,null);t&&t.forEach(function(e){return e()})}(rs.create({providers:a,name:i}))}return function(e){var t=th();if(!t)throw new Error("No platform exists!");if(!t.injector.get(e,null))throw new Error("A platform with a different configuration has been created. Please destroy it first.");return t}(r)}}function th(){return Wl&&!Wl.destroyed?Wl:null}var nh=function(){var e=function(){function e(t){m(this,e),this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}return b(e,[{key:"bootstrapModuleFactory",value:function(e,t){var n=this,i=function(e,t){return"noop"===e?new ql:("zone.js"===e?void 0:e)||new Bl({enableLongStackTrace:Zl(),shouldCoalesceEventChangeDetection:!!(null==t?void 0:t.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==t?void 0:t.ngZoneRunCoalescing)})}(t?t.ngZone:void 0,{ngZoneEventCoalescing:t&&t.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:t&&t.ngZoneRunCoalescing||!1}),r=[{provide:Bl,useValue:i}];return i.run(function(){var o=rs.create({providers:r,parent:n.injector,name:e.moduleType.name}),a=e.create(o),s=a.injector.get(Zr,null);if(!s)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return i.runOutsideAngular(function(){var e=i.onError.subscribe({next:function(e){s.handleError(e)}});a.onDestroy(function(){oh(n._modules,a),e.unsubscribe()})}),function(e,i,r){try{var o=((s=a.injector.get(yl)).runInitializers(),s.donePromise.then(function(){return Du(a.injector.get(Cl,Ru)||Ru),n._moduleDoBootstrap(a),a}));return Ds(o)?o.catch(function(t){throw i.runOutsideAngular(function(){return e.handleError(t)}),t}):o}catch(t){throw i.runOutsideAngular(function(){return e.handleError(t)}),t}var s}(s,i)})}},{key:"bootstrapModule",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=ih({},n);return function(e,t,n){var i=new Hc(n);return Promise.resolve(i)}(0,0,e).then(function(e){return t.bootstrapModuleFactory(e,i)})}},{key:"_moduleDoBootstrap",value:function(e){var t=e.injector.get(rh);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(function(e){return t.bootstrap(e)});else{if(!e.instance.ngDoBootstrap)throw new Error("The module ".concat(Fe(e.instance.constructor),' was bootstrapped, but it does not declare "@NgModule.bootstrap" components nor a "ngDoBootstrap" method. Please define one of these.'));e.instance.ngDoBootstrap(t)}this._modules.push(e)}},{key:"onDestroy",value:function(e){this._destroyListeners.push(e)}},{key:"injector",get:function(){return this._injector}},{key:"destroy",value:function(){if(this._destroyed)throw new Error("The platform has already been destroyed!");this._modules.slice().forEach(function(e){return e.destroy()}),this._destroyListeners.forEach(function(e){return e()}),this._destroyed=!0}},{key:"destroyed",get:function(){return this._destroyed}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function ih(e,t){return Array.isArray(t)?t.reduce(ih,e):Object.assign(Object.assign({},e),t)}var rh=function(){var e=function(){function e(t,n,i,r,o){var a=this;m(this,e),this._zone=t,this._injector=n,this._exceptionHandler=i,this._componentFactoryResolver=r,this._initStatus=o,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:function(){a._zone.run(function(){a.tick()})}});var s=new J(function(e){a._stable=a._zone.isStable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks,a._zone.runOutsideAngular(function(){e.next(a._stable),e.complete()})}),u=new J(function(e){var t;a._zone.runOutsideAngular(function(){t=a._zone.onStable.subscribe(function(){Bl.assertNotInAngularZone(),Fl(function(){!a._stable&&!a._zone.hasPendingMacrotasks&&!a._zone.hasPendingMicrotasks&&(a._stable=!0,e.next(!0))})})});var n=a._zone.onUnstable.subscribe(function(){Bl.assertInAngularZone(),a._stable&&(a._stable=!1,a._zone.runOutsideAngular(function(){e.next(!1)}))});return function(){t.unsubscribe(),n.unsubscribe()}});this.isStable=Ee(s,u.pipe(Ne()))}return b(e,[{key:"bootstrap",value:function(e,t){var n,i=this;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.");n=e instanceof Hu?e:this._componentFactoryResolver.resolveComponentFactory(e),this.componentTypes.push(n.componentType);var r=function(e){return e.isBoundToModule}(n)?void 0:this._injector.get(Tc),o=n.create(rs.NULL,[],t||n.selector,r),a=o.location.nativeElement,s=o.injector.get(Xl,null),u=s&&o.injector.get(Yl);return s&&u&&u.registerApplication(a,s),o.onDestroy(function(){i.detachView(o.hostView),oh(i.components,o),u&&u.unregisterApplication(a)}),this._loadComponent(o),o}},{key:"tick",value:function(){var e=this;if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;var t,n=_(this._views);try{for(n.s();!(t=n.n()).done;){var i;t.value.detectChanges()}}catch(r){n.e(r)}finally{n.f()}}catch(i){this._zone.runOutsideAngular(function(){return e._exceptionHandler.handleError(i)})}finally{this._runningTick=!1}}},{key:"attachView",value:function(e){var t=e;this._views.push(t),t.attachToAppRef(this)}},{key:"detachView",value:function(e){var t=e;oh(this._views,t),t.detachFromAppRef()}},{key:"_loadComponent",value:function(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Sl,[]).concat(this._bootstrapListeners).forEach(function(t){return t(e)})}},{key:"ngOnDestroy",value:function(){this._views.slice().forEach(function(e){return e.destroy()}),this._onMicrotaskEmptySubscription.unsubscribe()}},{key:"viewCount",get:function(){return this._views.length}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(rs),Ki(Zr),Ki(Gu),Ki(yl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function oh(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var ah=eh(null,"core",[{provide:xl,useValue:"unknown"},{provide:nh,deps:[rs]},{provide:Yl,deps:[]},{provide:El,deps:[]}]),sh=[{provide:rh,useClass:rh,deps:[Bl,rs,Zr,Gu,yl]},{provide:Fc,deps:[Bl],useFactory:function(e){var t=[];return e.onStable.subscribe(function(){for(;t.length;)t.pop()()}),function(e){t.push(e)}}},{provide:yl,useClass:yl,deps:[[new rr,ml]]},{provide:Nl,useClass:Nl,deps:[]},_l,{provide:fc,useFactory:function(){return kc},deps:[]},{provide:vc,useFactory:function(){return xc},deps:[]},{provide:Cl,useFactory:function(e){return Du(e=e||"undefined"!=typeof $localize&&$localize.locale||Ru),e},deps:[[new ir(Cl),new rr,new or]]},{provide:Ol,useValue:"USD"}],uh=function(){var e=function e(t){m(this,e)};return e.\u0275fac=function(t){return new(t||e)(Ki(rh))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:sh}),e}(),ch=null;function lh(){return ch}var hh=new Pi("DocumentToken"),dh=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"historyGo",value:function(e){throw new Error("Not implemented")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:fh,token:e,providedIn:"platform"}),e}();function fh(){return Ki(ph)}var ph=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this))._doc=e,i._init(),i}return b(n,[{key:"_init",value:function(){this.location=window.location,this._history=window.history}},{key:"getBaseHrefFromDOM",value:function(){return lh().getBaseHref(this._doc)}},{key:"onPopState",value:function(e){var t=lh().getGlobalEventTarget(this._doc,"window");return t.addEventListener("popstate",e,!1),function(){return t.removeEventListener("popstate",e)}}},{key:"onHashChange",value:function(e){var t=lh().getGlobalEventTarget(this._doc,"window");return t.addEventListener("hashchange",e,!1),function(){return t.removeEventListener("hashchange",e)}}},{key:"href",get:function(){return this.location.href}},{key:"protocol",get:function(){return this.location.protocol}},{key:"hostname",get:function(){return this.location.hostname}},{key:"port",get:function(){return this.location.port}},{key:"pathname",get:function(){return this.location.pathname},set:function(e){this.location.pathname=e}},{key:"search",get:function(){return this.location.search}},{key:"hash",get:function(){return this.location.hash}},{key:"pushState",value:function(e,t,n){vh()?this._history.pushState(e,t,n):this.location.hash=n}},{key:"replaceState",value:function(e,t,n){vh()?this._history.replaceState(e,t,n):this.location.hash=n}},{key:"forward",value:function(){this._history.forward()}},{key:"back",value:function(){this._history.back()}},{key:"historyGo",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this._history.go(e)}},{key:"getState",value:function(){return this._history.state}}]),n}(dh);return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({factory:gh,token:e,providedIn:"platform"}),e}();function vh(){return!!window.history.pushState}function gh(){return new ph(Ki(hh))}function mh(e,t){if(0==e.length)return t;if(0==t.length)return e;var n=0;return e.endsWith("/")&&n++,t.startsWith("/")&&n++,2==n?e+t.substring(1):1==n?e+t:e+"/"+t}function yh(e){var t=e.match(/#|\?|$/),n=t&&t.index||e.length;return e.slice(0,n-("/"===e[n-1]?1:0))+e.slice(n)}function bh(e){return e&&"?"!==e[0]?"?"+e:e}var _h=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"historyGo",value:function(e){throw new Error("Not implemented")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:wh,token:e,providedIn:"root"}),e}();function wh(e){var t=Ki(hh).location;return new xh(Ki(dh),t&&t.origin||"")}var kh=new Pi("appBaseHref"),xh=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;if(m(this,n),(r=t.call(this))._platformLocation=e,r._removeListenerFns=[],null==i&&(i=r._platformLocation.getBaseHrefFromDOM()),null==i)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");return r._baseHref=i,u(r)}return b(n,[{key:"ngOnDestroy",value:function(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}},{key:"onPopState",value:function(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}},{key:"getBaseHref",value:function(){return this._baseHref}},{key:"prepareExternalUrl",value:function(e){return mh(this._baseHref,e)}},{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this._platformLocation.pathname+bh(this._platformLocation.search),n=this._platformLocation.hash;return n&&e?"".concat(t).concat(n):t}},{key:"pushState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+bh(i));this._platformLocation.pushState(e,t,r)}},{key:"replaceState",value:function(e,t,n,i){var r=this.prepareExternalUrl(n+bh(i));this._platformLocation.replaceState(e,t,r)}},{key:"forward",value:function(){this._platformLocation.forward()}},{key:"back",value:function(){this._platformLocation.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformLocation).historyGo)||void 0===t||t.call(e,n)}}]),n}(_h);return e.\u0275fac=function(t){return new(t||e)(Ki(dh),Ki(kh,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Sh=function(){var e=function(){function e(t,n){var i=this;m(this,e),this._subject=new Qc,this._urlChangeListeners=[],this._platformStrategy=t;var r=this._platformStrategy.getBaseHref();this._platformLocation=n,this._baseHref=yh(Ch(r)),this._platformStrategy.onPopState(function(e){i._subject.emit({url:i.path(!0),pop:!0,state:e.state,type:e.type})})}return b(e,[{key:"path",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.normalize(this._platformStrategy.path(e))}},{key:"getState",value:function(){return this._platformLocation.getState()}},{key:"isCurrentPathEqualTo",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this.path()==this.normalize(e+bh(t))}},{key:"normalize",value:function(t){return e.stripTrailingSlash(function(e,t){return e&&t.startsWith(e)?t.substring(e.length):t}(this._baseHref,Ch(t)))}},{key:"prepareExternalUrl",value:function(e){return e&&"/"!==e[0]&&(e="/"+e),this._platformStrategy.prepareExternalUrl(e)}},{key:"go",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.pushState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+bh(t)),n)}},{key:"replaceState",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;this._platformStrategy.replaceState(n,"",e,t),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+bh(t)),n)}},{key:"forward",value:function(){this._platformStrategy.forward()}},{key:"back",value:function(){this._platformStrategy.back()}},{key:"historyGo",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;null===(t=(e=this._platformStrategy).historyGo)||void 0===t||t.call(e,n)}},{key:"onUrlChange",value:function(e){var t=this;this._urlChangeListeners.push(e),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(function(e){t._notifyUrlChangeListeners(e.url,e.state)}))}},{key:"_notifyUrlChangeListeners",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;this._urlChangeListeners.forEach(function(n){return n(e,t)})}},{key:"subscribe",value:function(e,t,n){return this._subject.subscribe({next:e,error:t,complete:n})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(_h),Ki(dh))},e.normalizeQueryParams=bh,e.joinWithSlash=mh,e.stripTrailingSlash=yh,e.\u0275prov=Ye({factory:Eh,token:e,providedIn:"root"}),e}();function Eh(){return new Sh(Ki(_h),Ki(dh))}function Ch(e){return e.replace(/\/index.html$/,"")}var Oh=((Oh=Oh||{})[Oh.Zero=0]="Zero",Oh[Oh.One=1]="One",Oh[Oh.Two=2]="Two",Oh[Oh.Few=3]="Few",Oh[Oh.Many=4]="Many",Oh[Oh.Other=5]="Other",Oh),Th=function e(){m(this,e)},Ah=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).locale=e,i}return b(n,[{key:"getPluralCategory",value:function(e,t){switch(function(e){return function(e){var t=function(e){return e.toLowerCase().replace(/_/g,"-")}(e),n=Mu(t);if(n)return n;var i=t.split("-")[0];if(n=Mu(i))return n;if("en"===i)return Au;throw new Error('Missing locale data for the locale "'.concat(e,'".'))}(e)[Iu.PluralCase]}(t||this.locale)(e)){case Oh.Zero:return"zero";case Oh.One:return"one";case Oh.Two:return"two";case Oh.Few:return"few";case Oh.Many:return"many";default:return"other"}}}]),n}(Th);return e.\u0275fac=function(t){return new(t||e)(Ki(Cl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function Ph(e,n){n=encodeURIComponent(n);var i,r=_(e.split(";"));try{for(r.s();!(i=r.n()).done;){var o=i.value,a=o.indexOf("="),s=t(-1==a?[o,""]:[o.slice(0,a),o.slice(a+1)],2),u=s[0],c=s[1];if(u.trim()===n)return decodeURIComponent(c)}}catch(l){r.e(l)}finally{r.f()}return null}var Mh=function(){var e=function(){function e(t,n,i,r){m(this,e),this._iterableDiffers=t,this._keyValueDiffers=n,this._ngEl=i,this._renderer=r,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}return b(e,[{key:"klass",set:function(e){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof e?e.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}},{key:"ngClass",set:function(e){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof e?e.split(/\s+/):e,this._rawClass&&(ps(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}},{key:"ngDoCheck",value:function(){if(this._iterableDiffer){var e=this._iterableDiffer.diff(this._rawClass);e&&this._applyIterableChanges(e)}else if(this._keyValueDiffer){var t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}},{key:"_applyKeyValueChanges",value:function(e){var t=this;e.forEachAddedItem(function(e){return t._toggleClass(e.key,e.currentValue)}),e.forEachChangedItem(function(e){return t._toggleClass(e.key,e.currentValue)}),e.forEachRemovedItem(function(e){e.previousValue&&t._toggleClass(e.key,!1)})}},{key:"_applyIterableChanges",value:function(e){var t=this;e.forEachAddedItem(function(e){if("string"!=typeof e.item)throw new Error("NgClass can only toggle CSS classes expressed as strings, got ".concat(Fe(e.item)));t._toggleClass(e.item,!0)}),e.forEachRemovedItem(function(e){return t._toggleClass(e.item,!1)})}},{key:"_applyClasses",value:function(e){var t=this;e&&(Array.isArray(e)||e instanceof Set?e.forEach(function(e){return t._toggleClass(e,!0)}):Object.keys(e).forEach(function(n){return t._toggleClass(n,!!e[n])}))}},{key:"_removeClasses",value:function(e){var t=this;e&&(Array.isArray(e)||e instanceof Set?e.forEach(function(e){return t._toggleClass(e,!1)}):Object.keys(e).forEach(function(e){return t._toggleClass(e,!1)}))}},{key:"_toggleClass",value:function(e,t){var n=this;(e=e.trim())&&e.split(/\s+/g).forEach(function(e){t?n._renderer.addClass(n._ngEl.nativeElement,e):n._renderer.removeClass(n._ngEl.nativeElement,e)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(fc),Ss(vc),Ss(Yu),Ss(Qu))},e.\u0275dir=Mt({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),e}(),Ih=function(){function e(t,n,i,r){m(this,e),this.$implicit=t,this.ngForOf=n,this.index=i,this.count=r}return b(e,[{key:"first",get:function(){return 0===this.index}},{key:"last",get:function(){return this.index===this.count-1}},{key:"even",get:function(){return this.index%2==0}},{key:"odd",get:function(){return!this.even}}]),e}(),Rh=function(){var e=function(){function e(t,n,i){m(this,e),this._viewContainer=t,this._template=n,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}return b(e,[{key:"ngForOf",set:function(e){this._ngForOf=e,this._ngForOfDirty=!0}},{key:"ngForTrackBy",get:function(){return this._trackByFn},set:function(e){this._trackByFn=e}},{key:"ngForTemplate",set:function(e){e&&(this._template=e)}},{key:"ngDoCheck",value:function(){if(this._ngForOfDirty){this._ngForOfDirty=!1;var e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(n){throw new Error("Cannot find a differ supporting object '".concat(e,"' of type '").concat(function(e){return e.name||typeof e}(e),"'. NgFor only supports binding to Iterables such as Arrays."))}}if(this._differ){var t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}},{key:"_applyChanges",value:function(e){var t=this,n=[];e.forEachOperation(function(e,i,r){if(null==e.previousIndex){var o=t._viewContainer.createEmbeddedView(t._template,new Ih(null,t._ngForOf,-1,-1),null===r?void 0:r),a=new Dh(e,o);n.push(a)}else if(null==r)t._viewContainer.remove(null===i?void 0:i);else if(null!==i){var s=t._viewContainer.get(i);t._viewContainer.move(s,r);var u=new Dh(e,s);n.push(u)}});for(var i=0;i1&&void 0!==arguments[1])||arguments[1],i=e.findTestabilityInTree(t,n);if(null==i)throw new Error("Could not find testability for element.");return i},pt.getAllAngularTestabilities=function(){return e.getAllTestabilities()},pt.getAllAngularRootElements=function(){return e.getAllRootElements()},pt.frameworkStabilizers||(pt.frameworkStabilizers=[]),pt.frameworkStabilizers.push(function(e){var t=pt.getAllAngularTestabilities(),n=t.length,i=!1,r=function(t){i=i||t,0==--n&&e(i)};t.forEach(function(e){e.whenStable(r)})})}},{key:"findTestabilityInTree",value:function(e,t,n){if(null==t)return null;var i=e.getTestability(t);return null!=i?i:n?lh().isShadowRoot(t)?this.findTestabilityInTree(e,t.host,!0):this.findTestabilityInTree(e,t.parentElement,!0):null}}],[{key:"init",value:function(){!function(e){Kl=e}(new e)}}]),e}(),rd=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"build",value:function(){return new XMLHttpRequest}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),od=new Pi("EventManagerPlugins"),ad=function(){var e=function(){function e(t,n){var i=this;m(this,e),this._zone=n,this._eventNameToPlugin=new Map,t.forEach(function(e){return e.manager=i}),this._plugins=t.slice().reverse()}return b(e,[{key:"addEventListener",value:function(e,t,n){return this._findPluginFor(t).addEventListener(e,t,n)}},{key:"addGlobalEventListener",value:function(e,t,n){return this._findPluginFor(t).addGlobalEventListener(e,t,n)}},{key:"getZone",value:function(){return this._zone}},{key:"_findPluginFor",value:function(e){var t=this._eventNameToPlugin.get(e);if(t)return t;for(var n=this._plugins,i=0;i-1&&(t.splice(n,1),o+=e+".")}),o+=r,0!=t.length||0===r.length)return null;var a={};return a.domEventName=i,a.fullKey=o,a}},{key:"getEventFullKey",value:function(e){var t="",n=function(e){var t=e.key;if(null==t){if(null==(t=e.keyIdentifier))return"Unidentified";t.startsWith("U+")&&(t=String.fromCharCode(parseInt(t.substring(2),16)),3===e.location&&kd.hasOwnProperty(t)&&(t=kd[t]))}return wd[t]||t}(e);return" "===(n=n.toLowerCase())?n="space":"."===n&&(n="dot"),_d.forEach(function(i){i!=n&&xd[i](e)&&(t+=i+".")}),t+=n}},{key:"eventCallback",value:function(e,t,i){return function(r){n.getEventFullKey(r)===e&&i.runGuarded(function(){return t(r)})}}},{key:"_normalizeKey",value:function(e){switch(e){case"esc":return"escape";default:return e}}}]),n}(sd);return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Ed=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:function(){return Ki(Cd)},token:e,providedIn:"root"}),e}(),Cd=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this))._doc=e,i}return b(n,[{key:"sanitize",value:function(e,t){if(null==t)return null;switch(e){case Ur.NONE:return t;case Ur.HTML:return mr(t,"HTML")?gr(t):Vr(this._doc,String(t)).toString();case Ur.STYLE:return mr(t,"Style")?gr(t):t;case Ur.SCRIPT:if(mr(t,"Script"))return gr(t);throw new Error("unsafe value used in a script context");case Ur.URL:return yr(t),mr(t,"URL")?gr(t):xr(String(t));case Ur.RESOURCE_URL:if(mr(t,"ResourceURL"))return gr(t);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error("Unexpected SecurityContext ".concat(e," (see https://g.co/ng/security#xss)"))}}},{key:"bypassSecurityTrustHtml",value:function(e){return function(e){return new hr(e)}(e)}},{key:"bypassSecurityTrustStyle",value:function(e){return function(e){return new dr(e)}(e)}},{key:"bypassSecurityTrustScript",value:function(e){return function(e){return new fr(e)}(e)}},{key:"bypassSecurityTrustUrl",value:function(e){return function(e){return new pr(e)}(e)}},{key:"bypassSecurityTrustResourceUrl",value:function(e){return function(e){return new vr(e)}(e)}}]),n}(Ed);return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({factory:function(){return function(e){return new Cd(e.get(hh))}(Ki(Ga))},token:e,providedIn:"root"}),e}(),Od=eh(ah,"browser",[{provide:xl,useValue:Kh},{provide:kl,useValue:function(){Jh.makeCurrent(),id.init()},multi:!0},{provide:hh,useFactory:function(){return function(e){Kt=e}(document),document},deps:[]}]),Td=[[],{provide:qa,useValue:"root"},{provide:Zr,useFactory:function(){return new Zr},deps:[]},{provide:od,useClass:bd,multi:!0,deps:[hh,Bl,xl]},{provide:od,useClass:Sd,multi:!0,deps:[hh]},[],{provide:vd,useClass:vd,deps:[ad,cd,bl]},{provide:$u,useExisting:vd},{provide:ud,useExisting:cd},{provide:cd,useClass:cd,deps:[hh]},{provide:Xl,useClass:Xl,deps:[Bl]},{provide:ad,useClass:ad,deps:[od,Bl]},{provide:Zh,useClass:rd,deps:[]},[]],Ad=function(){var e=function(){function e(t){if(m(this,e),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.")}return b(e,null,[{key:"withServerTransition",value:function(t){return{ngModule:e,providers:[{provide:bl,useValue:t.appId},{provide:td,useExisting:bl},nd]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(e,12))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:Td,imports:[Yh,uh]}),e}();function Pd(e){return null!=e&&"false"!="".concat(e)}function Md(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return function(e){return!isNaN(parseFloat(e))&&!isNaN(Number(e))}(e)?Number(e):t}function Id(e){return Array.isArray(e)?e:[e]}function Rd(e){return null==e?"":"string"==typeof e?e:"".concat(e,"px")}function Dd(e){return e instanceof Yu?e.nativeElement:e}function Nd(){for(var e=arguments.length,t=new Array(e),n=0;n1?Array.prototype.slice.call(arguments):e)},i,n)})}function jd(e,t,n,i,r){var o;if(function(e){return e&&"function"==typeof e.addEventListener&&"function"==typeof e.removeEventListener}(e)){var a=e;e.addEventListener(t,n,r),o=function(){return a.removeEventListener(t,n,r)}}else if(function(e){return e&&"function"==typeof e.on&&"function"==typeof e.off}(e)){var s=e;e.on(t,n),o=function(){return s.off(t,n)}}else if(function(e){return e&&"function"==typeof e.addListener&&"function"==typeof e.removeListener}(e)){var u=e;e.addListener(t,n),o=function(){return u.removeListener(t,n)}}else{if(!e||!e.length)throw new TypeError("Invalid event target");for(var c=0,l=e.length;c1&&void 0!==arguments[1]?arguments[1]:0;if(this.closed)return this;this.state=e;var n=this.id,i=this.scheduler;return null!=n&&(this.id=this.recycleAsyncId(i,n,t)),this.pending=!0,this.delay=t,this.id=this.id||this.requestAsyncId(i,this.id,t),this}},{key:"requestAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return setInterval(e.flush.bind(e,this),n)}},{key:"recycleAsyncId",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==n&&this.delay===n&&!1===this.pending)return t;clearInterval(t)}},{key:"execute",value:function(e,t){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var n=this._execute(e,t);if(n)return n;!1===this.pending&&null!=this.id&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}},{key:"_execute",value:function(e,t){var n,i=!1;try{this.work(e)}catch(r){i=!0,n=!!r&&r||new Error(r)}if(i)return this.unsubscribe(),n}},{key:"_unsubscribe",value:function(){var e=this.id,t=this.scheduler,n=t.actions,i=n.indexOf(this);this.work=null,this.state=null,this.pending=!1,this.scheduler=null,-1!==i&&n.splice(i,1),null!=e&&(this.id=this.recycleAsyncId(t,e,null)),this.delay=null}}]),n}(function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this)}return b(n,[{key:"schedule",value:function(e){return this}}]),n}(G)),Bd=function(){var e=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e.now;m(this,e),this.SchedulerAction=t,this.now=n}return b(e,[{key:"schedule",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return new this.SchedulerAction(this,e).schedule(n,t)}}]),e}();return e.now=function(){return Date.now()},e}(),Vd=function(t){a(i,t);var n=s(i);function i(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Bd.now;return m(this,i),(t=n.call(this,e,function(){return i.delegate&&i.delegate!==c(t)?i.delegate.now():r()})).actions=[],t.active=!1,t.scheduled=void 0,t}return b(i,[{key:"schedule",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2?arguments[2]:void 0;return i.delegate&&i.delegate!==this?i.delegate.schedule(t,n,r):e(p(i.prototype),"schedule",this).call(this,t,n,r)}},{key:"flush",value:function(e){var t=this.actions;if(this.active)t.push(e);else{var n;this.active=!0;do{if(n=e.execute(e.state,e.delay))break}while(e=t.shift());if(this.active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}}}}]),i}(Bd);new(function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"flush",value:function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0?e(p(i.prototype),"requestAsyncId",this).call(this,t,n,r):(t.actions.push(this),t.scheduled||(t.scheduled=requestAnimationFrame(function(){return t.flush(null)})))}},{key:"recycleAsyncId",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==r&&r>0||null===r&&this.delay>0)return e(p(i.prototype),"recycleAsyncId",this).call(this,t,n,r);0===t.actions.length&&(cancelAnimationFrame(n),t.scheduled=void 0)}}]),i}(Fd));var zd=1,Ud=Promise.resolve(),Hd={};function Gd(e){return e in Hd&&(delete Hd[e],!0)}var Wd=function(e){var t=zd++;return Hd[t]=!0,Ud.then(function(){return Gd(t)&&e()}),t},qd=function(e){Gd(e)};function Xd(e){return!!e&&(e instanceof J||"function"==typeof e.lift&&"function"==typeof e.subscribe)}function Yd(e,t){return function(n){return n.lift(new Kd(e,t))}}new(function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"flush",value:function(e){this.active=!0,this.scheduled=void 0;var t,n=this.actions,i=-1,r=n.length;e=e||n.shift();do{if(t=e.execute(e.state,e.delay))break}while(++i2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0?e(p(i.prototype),"requestAsyncId",this).call(this,t,n,r):(t.actions.push(this),t.scheduled||(t.scheduled=Wd(t.flush.bind(t,null))))}},{key:"recycleAsyncId",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(null!==r&&r>0||null===r&&this.delay>0)return e(p(i.prototype),"recycleAsyncId",this).call(this,t,n,r);0===t.actions.length&&(qd(n),t.scheduled=void 0)}}]),i}(Fd));var Kd=function(){function e(t,n){m(this,e),this.compare=t,this.keySelector=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new $d(e,this.compare,this.keySelector))}}]),e}(),$d=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).keySelector=r,o.hasKey=!1,"function"==typeof i&&(o.compare=i),o}return b(n,[{key:"compare",value:function(e,t){return e===t}},{key:"_next",value:function(e){var t;try{var n=this.keySelector;t=n?n(e):e}catch(n){return this.destination.error(n)}var i=!1;if(this.hasKey)try{i=(0,this.compare)(this.key,t)}catch(n){return this.destination.error(n)}else this.hasKey=!0;i||(this.key=t,this.destination.next(e))}}]),n}(X),Qd=new Vd(Fd),Zd=function(){function e(t){m(this,e),this.durationSelector=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new Jd(e,this.durationSelector))}}]),e}(),Jd=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).durationSelector=i,r.hasValue=!1,r}return b(n,[{key:"_next",value:function(e){if(this.value=e,this.hasValue=!0,!this.throttled){var t;try{var n;t=(0,this.durationSelector)(e)}catch(n){return this.destination.error(n)}var i=be(t,new me(this));!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}},{key:"clearThrottle",value:function(){var e=this.value,t=this.hasValue,n=this.throttled;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),t&&(this.value=void 0,this.hasValue=!1,this.destination.next(e))}},{key:"notifyNext",value:function(){this.clearThrottle()}},{key:"notifyComplete",value:function(){this.clearThrottle()}}]),n}(ye);function ef(e){return!V(e)&&e-parseFloat(e)+1>=0}function tf(e){var t=e.index,n=e.period,i=e.subscriber;if(i.next(t),!i.closed){if(-1===n)return i.complete();e.index=t+1,this.schedule(e,n)}}function nf(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Qd;return function(e){return function(t){return t.lift(new Zd(e))}}(function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,i=-1;return ef(t)?i=Number(t)<1?1:Number(t):ae(t)&&(n=t),ae(n)||(n=Qd),new J(function(t){var r=ef(e)?e:+e-n.now();return n.schedule(tf,r,{index:0,period:i,subscriber:t})})}(e,t)})}function rf(e,t){return function(n){return n.lift(new of(e,t))}}var of=function(){function e(t,n){m(this,e),this.predicate=t,this.thisArg=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new af(e,this.predicate,this.thisArg))}}]),e}(),af=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).predicate=i,o.thisArg=r,o.count=0,o}return b(n,[{key:"_next",value:function(e){var t;try{t=this.predicate.call(this.thisArg,e,this.count++)}catch(n){return void this.destination.error(n)}t&&this.destination.next(e)}}]),n}(X);function sf(e){return function(t){return t.lift(new uf(e))}}var uf=function(){function e(t){m(this,e),this.notifier=t}return b(e,[{key:"call",value:function(e,t){var n=new cf(e),i=be(this.notifier,new me(n));return i&&!n.seenValue?(n.add(i),t.subscribe(n)):n}}]),e}(),cf=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,e)).seenValue=!1,i}return b(n,[{key:"notifyNext",value:function(){this.seenValue=!0,this.complete()}},{key:"notifyComplete",value:function(){}}]),n}(ye);function lf(){return xe(1)(Nd.apply(void 0,arguments))}function hf(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:0;return n>0?e(p(i.prototype),"schedule",this).call(this,t,n):(this.delay=n,this.state=t,this.scheduler.flush(this),this)}},{key:"execute",value:function(t,n){return n>0||this.closed?e(p(i.prototype),"execute",this).call(this,t,n):this._execute(t,n)}},{key:"requestAsyncId",value:function(t,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return null!==r&&r>0||null===r&&this.delay>0?e(p(i.prototype),"requestAsyncId",this).call(this,t,n,r):t.flush(this)}}]),i}(Fd)),gf=new J(function(e){return e.complete()});function mf(e){return e?function(e){return new J(function(t){return e.schedule(function(){return t.complete()})})}(e):gf}function yf(e,t){return new J(t?function(n){return t.schedule(bf,0,{error:e,subscriber:n})}:function(t){return t.error(e)})}function bf(e){var t=e.error;e.subscriber.error(t)}var _f=function(){function e(t,n,i){m(this,e),this.kind=t,this.value=n,this.error=i,this.hasValue="N"===t}return b(e,[{key:"observe",value:function(e){switch(this.kind){case"N":return e.next&&e.next(this.value);case"E":return e.error&&e.error(this.error);case"C":return e.complete&&e.complete()}}},{key:"do",value:function(e,t,n){switch(this.kind){case"N":return e&&e(this.value);case"E":return t&&t(this.error);case"C":return n&&n()}}},{key:"accept",value:function(e,t,n){return e&&"function"==typeof e.next?this.observe(e):this.do(e,t,n)}},{key:"toObservable",value:function(){switch(this.kind){case"N":return Nd(this.value);case"E":return yf(this.error);case"C":return mf()}throw new Error("unexpected notification kind value")}}],[{key:"createNext",value:function(t){return void 0!==t?new e("N",t):e.undefinedValueNotification}},{key:"createError",value:function(t){return new e("E",void 0,t)}},{key:"createComplete",value:function(){return e.completeNotification}}]),e}();_f.completeNotification=new _f("C"),_f.undefinedValueNotification=new _f("N",void 0);var wf,kf=function(e){a(n,e);var t=s(n);function n(e,i){var r,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return m(this,n),(r=t.call(this,e)).scheduler=i,r.delay=o,r}return b(n,[{key:"scheduleMessage",value:function(e){this.destination.add(this.scheduler.schedule(n.dispatch,this.delay,new xf(e,this.destination)))}},{key:"_next",value:function(e){this.scheduleMessage(_f.createNext(e))}},{key:"_error",value:function(e){this.scheduleMessage(_f.createError(e)),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleMessage(_f.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){var t=e.notification,n=e.destination;t.observe(n),this.unsubscribe()}}]),n}(X),xf=function e(t,n){m(this,e),this.notification=t,this.destination=n},Sf=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.POSITIVE_INFINITY,o=arguments.length>2?arguments[2]:void 0;return m(this,i),(e=n.call(this)).scheduler=o,e._events=[],e._infiniteTimeWindow=!1,e._bufferSize=t<1?1:t,e._windowTime=r<1?1:r,r===Number.POSITIVE_INFINITY?(e._infiniteTimeWindow=!0,e.next=e.nextInfiniteTimeWindow):e.next=e.nextTimeWindow,e}return b(i,[{key:"nextInfiniteTimeWindow",value:function(t){if(!this.isStopped){var n=this._events;n.push(t),n.length>this._bufferSize&&n.shift()}e(p(i.prototype),"next",this).call(this,t)}},{key:"nextTimeWindow",value:function(t){this.isStopped||(this._events.push(new Ef(this._getNow(),t)),this._trimBufferThenGetEvents()),e(p(i.prototype),"next",this).call(this,t)}},{key:"_subscribe",value:function(e){var t,n=this._infiniteTimeWindow,i=n?this._events:this._trimBufferThenGetEvents(),r=this.scheduler,o=i.length;if(this.closed)throw new te;if(this.isStopped||this.hasError?t=G.EMPTY:(this.observers.push(e),t=new ne(this,e)),r&&e.add(e=new kf(e,r)),n)for(var a=0;at&&(o=Math.max(o,r-t)),o>0&&i.splice(0,o),i}}]),i}(re),Ef=function e(t,n){m(this,e),this.time=t,this.value=n};function Cf(e,t,n){var i;return i=e&&"object"==typeof e?e:{bufferSize:e,windowTime:t,refCount:!1,scheduler:n},function(e){return e.lift(function(e){var t,n,i=e.bufferSize,r=void 0===i?Number.POSITIVE_INFINITY:i,o=e.windowTime,a=void 0===o?Number.POSITIVE_INFINITY:o,s=e.refCount,u=e.scheduler,c=0,l=!1,h=!1;return function(e){var i;c++,!t||l?(l=!1,t=new Sf(r,a,u),i=t.subscribe(this),n=e.subscribe({next:function(e){t.next(e)},error:function(e){l=!0,t.error(e)},complete:function(){h=!0,n=void 0,t.complete()}}),h&&(n=void 0)):i=t.subscribe(this),this.add(function(){c--,i.unsubscribe(),i=void 0,n&&!h&&s&&0===c&&(n.unsubscribe(),n=void 0,t=void 0)})}}(i))}}try{wf="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(U){wf=!1}var Of,Tf,Af,Pf,Mf=function(){var e=function e(t){m(this,e),this._platformId=t,this.isBrowser=this._platformId?$h(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&&!wf)&&"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 e.\u0275fac=function(t){return new(t||e)(Ki(xl))},e.\u0275prov=Ye({factory:function(){return new e(Ki(xl))},token:e,providedIn:"root"}),e}(),If=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),Rf=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function Df(){if(Of)return Of;if("object"!=typeof document||!document)return Of=new Set(Rf);var e=document.createElement("input");return Of=new Set(Rf.filter(function(t){return e.setAttribute("type",t),e.type===t}))}function Nf(e){return function(){if(null==Tf&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:function(){return Tf=!0}}))}finally{Tf=Tf||!1}return Tf}()?e:!!e.capture}function Lf(e){if(function(){if(null==Pf){var e="undefined"!=typeof document?document.head:null;Pf=!(!e||!e.createShadowRoot&&!e.attachShadow)}return Pf}()){var t=e.getRootNode?e.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&t instanceof ShadowRoot)return t}return null}function jf(){for(var e="undefined"!=typeof document&&document?document.activeElement:null;e&&e.shadowRoot;){var t=e.shadowRoot.activeElement;if(t===e)break;e=t}return e}function Ff(e){return e.composedPath?e.composedPath()[0]:e.target}var Bf=new Pi("cdk-dir-doc",{providedIn:"root",factory:function(){return $i(hh)}}),Vf=function(){var e=function(){function e(t){if(m(this,e),this.value="ltr",this.change=new Qc,t){var n=t.documentElement?t.documentElement.dir:null,i=(t.body?t.body.dir:null)||n;this.value="ltr"===i||"rtl"===i?i:"ltr"}}return b(e,[{key:"ngOnDestroy",value:function(){this.change.complete()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bf,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Bf,8))},token:e,providedIn:"root"}),e}(),zf=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),Uf=function(){function e(){var t=this,n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1?arguments[1]:void 0,r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];m(this,e),this._multiple=n,this._emitChanges=r,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new re,i&&i.length&&(n?i.forEach(function(e){return t._markSelected(e)}):this._markSelected(i[0]),this._selectedToEmit.length=0)}return b(e,[{key:"selected",get:function(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}},{key:"select",value:function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;i0&&void 0!==arguments[0]?arguments[0]:20;return this._platform.isBrowser?new J(function(n){e._globalSubscription||e._addGlobalListener();var i=t>0?e._scrolled.pipe(nf(t)).subscribe(n):e._scrolled.subscribe(n);return e._scrolledCount++,function(){i.unsubscribe(),e._scrolledCount--,e._scrolledCount||e._removeGlobalListener()}}):Nd()}},{key:"ngOnDestroy",value:function(){var e=this;this._removeGlobalListener(),this.scrollContainers.forEach(function(t,n){return e.deregister(n)}),this._scrolled.complete()}},{key:"ancestorScrolled",value:function(e,t){var n=this.getAncestorScrollContainers(e);return this.scrolled(t).pipe(rf(function(e){return!e||n.indexOf(e)>-1}))}},{key:"getAncestorScrollContainers",value:function(e){var t=this,n=[];return this.scrollContainers.forEach(function(i,r){t._scrollableContainsElement(r,e)&&n.push(r)}),n}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_scrollableContainsElement",value:function(e,t){var n=Dd(t),i=e.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}},{key:"_addGlobalListener",value:function(){var e=this;this._globalSubscription=this._ngZone.runOutsideAngular(function(){return Ld(e._getWindow().document,"scroll").subscribe(function(){return e._scrolled.next()})})}},{key:"_removeGlobalListener",value:function(){this._globalSubscription&&(this._globalSubscription.unsubscribe(),this._globalSubscription=null)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(Mf),Ki(hh,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Bl),Ki(Mf),Ki(hh,8))},token:e,providedIn:"root"}),e}(),Wf=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this._platform=t,this._change=new re,this._changeListener=function(e){r._change.next(e)},this._document=i,n.runOutsideAngular(function(){if(t.isBrowser){var e=r._getWindow();e.addEventListener("resize",r._changeListener),e.addEventListener("orientationchange",r._changeListener)}r.change().subscribe(function(){return r._viewportSize=null})})}return b(e,[{key:"ngOnDestroy",value:function(){if(this._platform.isBrowser){var e=this._getWindow();e.removeEventListener("resize",this._changeListener),e.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}},{key:"getViewportSize",value:function(){this._viewportSize||this._updateViewportSize();var e={width:this._viewportSize.width,height:this._viewportSize.height};return this._platform.isBrowser||(this._viewportSize=null),e}},{key:"getViewportRect",value:function(){var e=this.getViewportScrollPosition(),t=this.getViewportSize(),n=t.width,i=t.height;return{top:e.top,left:e.left,bottom:e.top+i,right:e.left+n,height:i,width:n}}},{key:"getViewportScrollPosition",value:function(){if(!this._platform.isBrowser)return{top:0,left:0};var e=this._document,t=this._getWindow(),n=e.documentElement,i=n.getBoundingClientRect();return{top:-i.top||e.body.scrollTop||t.scrollY||n.scrollTop||0,left:-i.left||e.body.scrollLeft||t.scrollX||n.scrollLeft||0}}},{key:"change",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:20;return e>0?this._change.pipe(nf(e)):this._change}},{key:"_getWindow",value:function(){return this._document.defaultView||window}},{key:"_updateViewportSize",value:function(){var e=this._getWindow();this._viewportSize=this._platform.isBrowser?{width:e.innerWidth,height:e.innerHeight}:{width:0,height:0}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(Bl),Ki(hh,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(Bl),Ki(hh,8))},token:e,providedIn:"root"}),e}(),qf=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),Xf=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[zf,If,qf],zf,qf]}),e}(),Yf=function(){function e(){m(this,e)}return b(e,[{key:"attach",value:function(e){return this._attachedHost=e,e.attach(this)}},{key:"detach",value:function(){var e=this._attachedHost;null!=e&&(this._attachedHost=null,e.detach())}},{key:"isAttached",get:function(){return null!=this._attachedHost}},{key:"setAttachedHost",value:function(e){this._attachedHost=e}}]),e}(),Kf=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this)).component=e,a.viewContainerRef=i,a.injector=r,a.componentFactoryResolver=o,a}return n}(Yf),$f=function(t){a(i,t);var n=s(i);function i(e,t,r){var o;return m(this,i),(o=n.call(this)).templateRef=e,o.viewContainerRef=t,o.context=r,o}return b(i,[{key:"origin",get:function(){return this.templateRef.elementRef}},{key:"attach",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.context;return this.context=n,e(p(i.prototype),"attach",this).call(this,t)}},{key:"detach",value:function(){return this.context=void 0,e(p(i.prototype),"detach",this).call(this)}}]),i}(Yf),Qf=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).element=e instanceof Yu?e.nativeElement:e,i}return n}(Yf),Zf=function(){function e(){m(this,e),this._isDisposed=!1,this.attachDomPortal=null}return b(e,[{key:"hasAttached",value:function(){return!!this._attachedPortal}},{key:"attach",value:function(e){return e instanceof Kf?(this._attachedPortal=e,this.attachComponentPortal(e)):e instanceof $f?(this._attachedPortal=e,this.attachTemplatePortal(e)):this.attachDomPortal&&e instanceof Qf?(this._attachedPortal=e,this.attachDomPortal(e)):void 0}},{key:"detach",value:function(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}},{key:"dispose",value:function(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}},{key:"setDisposeFn",value:function(e){this._disposeFn=e}},{key:"_invokeDisposeFn",value:function(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}]),e}(),Jf=function(t){a(i,t);var n=s(i);function i(t,r,o,a,s){var u,l;return m(this,i),(l=n.call(this)).outletElement=t,l._componentFactoryResolver=r,l._appRef=o,l._defaultInjector=a,l.attachDomPortal=function(t){var n=t.element,r=l._document.createComment("dom-portal");n.parentNode.insertBefore(r,n),l.outletElement.appendChild(n),l._attachedPortal=t,e((u=c(l),p(i.prototype)),"setDisposeFn",u).call(u,function(){r.parentNode&&r.parentNode.replaceChild(n,r)})},l._document=s,l}return b(i,[{key:"attachComponentPortal",value:function(e){var t,n=this,i=(e.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(e.component);return e.viewContainerRef?(t=e.viewContainerRef.createComponent(i,e.viewContainerRef.length,e.injector||e.viewContainerRef.injector),this.setDisposeFn(function(){return t.destroy()})):(t=i.create(e.injector||this._defaultInjector),this._appRef.attachView(t.hostView),this.setDisposeFn(function(){n._appRef.detachView(t.hostView),t.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(t)),this._attachedPortal=e,t}},{key:"attachTemplatePortal",value:function(e){var t=this,n=e.viewContainerRef,i=n.createEmbeddedView(e.templateRef,e.context);return i.rootNodes.forEach(function(e){return t.outletElement.appendChild(e)}),i.detectChanges(),this.setDisposeFn(function(){var e=n.indexOf(i);-1!==e&&n.remove(e)}),this._attachedPortal=e,i}},{key:"dispose",value:function(){e(p(i.prototype),"dispose",this).call(this),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}},{key:"_getComponentRootNode",value:function(e){return e.hostView.rootNodes[0]}}]),i}(Zf),ep=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,e,i)}return n}($f);return e.\u0275fac=function(t){return new(t||e)(Ss(Ec),Ss(Pc))},e.\u0275dir=Mt({type:e,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[as]}),e}(),tp=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(ep);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[Uu([{provide:ep,useExisting:t}]),as]}),t}(),np=function(){var t=function(t){a(i,t);var n=s(i);function i(t,r,o){var a,s;return m(this,i),(s=n.call(this))._componentFactoryResolver=t,s._viewContainerRef=r,s._isInitialized=!1,s.attached=new Qc,s.attachDomPortal=function(t){var n=t.element,r=s._document.createComment("dom-portal");t.setAttachedHost(c(s)),n.parentNode.insertBefore(r,n),s._getRootNode().appendChild(n),s._attachedPortal=t,e((a=c(s),p(i.prototype)),"setDisposeFn",a).call(a,function(){r.parentNode&&r.parentNode.replaceChild(n,r)})},s._document=o,s}return b(i,[{key:"portal",get:function(){return this._attachedPortal},set:function(t){this.hasAttached()&&!t&&!this._isInitialized||(this.hasAttached()&&e(p(i.prototype),"detach",this).call(this),t&&e(p(i.prototype),"attach",this).call(this,t),this._attachedPortal=t)}},{key:"attachedRef",get:function(){return this._attachedRef}},{key:"ngOnInit",value:function(){this._isInitialized=!0}},{key:"ngOnDestroy",value:function(){e(p(i.prototype),"dispose",this).call(this),this._attachedPortal=null,this._attachedRef=null}},{key:"attachComponentPortal",value:function(t){t.setAttachedHost(this);var n=null!=t.viewContainerRef?t.viewContainerRef:this._viewContainerRef,r=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component),o=n.createComponent(r,n.length,t.injector||n.injector);return n!==this._viewContainerRef&&this._getRootNode().appendChild(o.hostView.rootNodes[0]),e(p(i.prototype),"setDisposeFn",this).call(this,function(){return o.destroy()}),this._attachedPortal=t,this._attachedRef=o,this.attached.emit(o),o}},{key:"attachTemplatePortal",value:function(t){var n=this;t.setAttachedHost(this);var r=this._viewContainerRef.createEmbeddedView(t.templateRef,t.context);return e(p(i.prototype),"setDisposeFn",this).call(this,function(){return n._viewContainerRef.clear()}),this._attachedPortal=t,this._attachedRef=r,this.attached.emit(r),r}},{key:"_getRootNode",value:function(){var e=this._viewContainerRef.element.nativeElement;return e.nodeType===e.ELEMENT_NODE?e:e.parentNode}}]),i}(Zf);return t.\u0275fac=function(e){return new(e||t)(Ss(Gu),Ss(Pc),Ss(hh))},t.\u0275dir=Mt({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[as]}),t}(),ip=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),rp=function(){function e(){return Error.call(this),this.message="argument out of range",this.name="ArgumentOutOfRangeError",this}return e.prototype=Object.create(Error.prototype),e}();function op(e){return function(t){return 0===e?mf():t.lift(new ap(e))}}var ap=function(){function e(t){if(m(this,e),this.total=t,this.total<0)throw new rp}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new sp(e,this.total))}}]),e}(),sp=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).total=i,r.count=0,r}return b(n,[{key:"_next",value:function(e){var t=this.total,n=++this.count;n<=t&&(this.destination.next(e),n===t&&(this.destination.complete(),this.unsubscribe()))}}]),n}(X);function up(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return function(n){return n.lift(new cp(e,t))}}var cp=function(){function e(t,n){m(this,e),this.predicate=t,this.inclusive=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new lp(e,this.predicate,this.inclusive))}}]),e}(),lp=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).predicate=i,o.inclusive=r,o.index=0,o}return b(n,[{key:"_next",value:function(e){var t,n=this.destination;try{t=this.predicate(e,this.index++)}catch(i){return void n.error(i)}this.nextOrComplete(e,t)}},{key:"nextOrComplete",value:function(e,t){var n=this.destination;Boolean(t)?n.next(e):(this.inclusive&&n.next(e),n.complete())}}]),n}(X);function hp(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;it.height||e.scrollWidth>t.width}}]),e}(),pp=function(){function e(t,n,i,r){var o=this;m(this,e),this._scrollDispatcher=t,this._ngZone=n,this._viewportRuler=i,this._config=r,this._scrollSubscription=null,this._detach=function(){o.disable(),o._overlayRef.hasAttached()&&o._ngZone.run(function(){return o._overlayRef.detach()})}}return b(e,[{key:"attach",value:function(e){this._overlayRef=e}},{key:"enable",value:function(){var e=this;if(!this._scrollSubscription){var t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(function(){var t=e._viewportRuler.getViewportScrollPosition().top;Math.abs(t-e._initialScrollPosition)>e._config.threshold?e._detach():e._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),e}(),vp=function(){function e(){m(this,e)}return b(e,[{key:"enable",value:function(){}},{key:"disable",value:function(){}},{key:"attach",value:function(){}}]),e}();function gp(e,t){return t.some(function(t){return e.bottomt.bottom||e.rightt.right})}function mp(e,t){return t.some(function(t){return e.topt.bottom||e.leftt.right})}var yp=function(){function e(t,n,i,r){m(this,e),this._scrollDispatcher=t,this._viewportRuler=n,this._ngZone=i,this._config=r,this._scrollSubscription=null}return b(e,[{key:"attach",value:function(e){this._overlayRef=e}},{key:"enable",value:function(){var e=this;this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(function(){if(e._overlayRef.updatePosition(),e._config&&e._config.autoClose){var t=e._overlayRef.overlayElement.getBoundingClientRect(),n=e._viewportRuler.getViewportSize(),i=n.width,r=n.height;gp(t,[{width:i,height:r,bottom:r,right:i,top:0,left:0}])&&(e.disable(),e._ngZone.run(function(){return e._overlayRef.detach()}))}}))}},{key:"disable",value:function(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}},{key:"detach",value:function(){this.disable(),this._overlayRef=null}}]),e}(),bp=function(){var e=function e(t,n,i,r){var o=this;m(this,e),this._scrollDispatcher=t,this._viewportRuler=n,this._ngZone=i,this.noop=function(){return new vp},this.close=function(e){return new pp(o._scrollDispatcher,o._ngZone,o._viewportRuler,e)},this.block=function(){return new fp(o._viewportRuler,o._document)},this.reposition=function(e){return new yp(o._scrollDispatcher,o._viewportRuler,o._ngZone,e)},this._document=r};return e.\u0275fac=function(t){return new(t||e)(Ki(Gf),Ki(Wf),Ki(Bl),Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Gf),Ki(Wf),Ki(Bl),Ki(hh))},token:e,providedIn:"root"}),e}(),_p=function e(t){if(m(this,e),this.scrollStrategy=new vp,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t)for(var n=0,i=Object.keys(t);n-1&&this._attachedOverlays.splice(t,1),0===this._attachedOverlays.length&&this.detach()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(hh))},token:e,providedIn:"root"}),e}(),Sp=function(){var t=function(t){a(i,t);var n=s(i);function i(e){var t;return m(this,i),(t=n.call(this,e))._keydownListener=function(e){for(var n=t._attachedOverlays,i=n.length-1;i>-1;i--)if(n[i]._keydownEvents.observers.length>0){n[i]._keydownEvents.next(e);break}},t}return b(i,[{key:"add",value:function(t){e(p(i.prototype),"add",this).call(this,t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}},{key:"detach",value:function(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}]),i}(xp);return t.\u0275fac=function(e){return new(e||t)(Ki(hh))},t.\u0275prov=Ye({factory:function(){return new t(Ki(hh))},token:t,providedIn:"root"}),t}(),Ep=function(){var t=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this,e))._platform=t,r._cursorStyleIsSet=!1,r._clickListener=function(e){for(var t=Ff(e),n=r._attachedOverlays.slice(),i=n.length-1;i>-1;i--){var o=n[i];if(!(o._outsidePointerEvents.observers.length<1)&&o.hasAttached()){if(o.overlayElement.contains(t))break;o._outsidePointerEvents.next(e)}}},r}return b(i,[{key:"add",value:function(t){if(e(p(i.prototype),"add",this).call(this,t),!this._isAttached){var n=this._document.body;n.addEventListener("click",this._clickListener,!0),n.addEventListener("auxclick",this._clickListener,!0),n.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=n.style.cursor,n.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}},{key:"detach",value:function(){if(this._isAttached){var e=this._document.body;e.removeEventListener("click",this._clickListener,!0),e.removeEventListener("auxclick",this._clickListener,!0),e.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(e.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}]),i}(xp);return t.\u0275fac=function(e){return new(e||t)(Ki(hh),Ki(Mf))},t.\u0275prov=Ye({factory:function(){return new t(Ki(hh),Ki(Mf))},token:t,providedIn:"root"}),t}(),Cp="undefined"!=typeof window?window:{},Op=void 0!==Cp.__karma__&&!!Cp.__karma__||void 0!==Cp.jasmine&&!!Cp.jasmine||void 0!==Cp.jest&&!!Cp.jest||void 0!==Cp.Mocha&&!!Cp.Mocha,Tp=function(){var e=function(){function e(t,n){m(this,e),this._platform=n,this._document=t}return b(e,[{key:"ngOnDestroy",value:function(){var e=this._containerElement;e&&e.parentNode&&e.parentNode.removeChild(e)}},{key:"getContainerElement",value:function(){return this._containerElement||this._createContainer(),this._containerElement}},{key:"_createContainer",value:function(){var e="cdk-overlay-container";if(this._platform.isBrowser||Op)for(var t=this._document.querySelectorAll(".".concat(e,'[platform="server"], .').concat(e,'[platform="test"]')),n=0;nf&&(f=g,d=v)}}catch(m){p.e(m)}finally{p.f()}return this._isPushed=!1,void this._applyPosition(d.position,d.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(e.position,e.originPoint);this._applyPosition(e.position,e.originPoint)}}},{key:"detach",value:function(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}},{key:"dispose",value:function(){this._isDisposed||(this._boundingBox&&Rp(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(Pp),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}},{key:"reapplyLastPosition",value:function(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();var e=this._lastPosition||this._preferredPositions[0],t=this._getOriginPoint(this._originRect,e);this._applyPosition(e,t)}}},{key:"withScrollableContainers",value:function(e){return this._scrollables=e,this}},{key:"withPositions",value:function(e){return this._preferredPositions=e,-1===e.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}},{key:"withViewportMargin",value:function(e){return this._viewportMargin=e,this}},{key:"withFlexibleDimensions",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._hasFlexibleDimensions=e,this}},{key:"withGrowAfterOpen",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._growAfterOpen=e,this}},{key:"withPush",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._canPush=e,this}},{key:"withLockedPosition",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._positionLocked=e,this}},{key:"setOrigin",value:function(e){return this._origin=e,this}},{key:"withDefaultOffsetX",value:function(e){return this._offsetX=e,this}},{key:"withDefaultOffsetY",value:function(e){return this._offsetY=e,this}},{key:"withTransformOriginOn",value:function(e){return this._transformOriginSelector=e,this}},{key:"_getOriginPoint",value:function(e,t){var n;if("center"==t.originX)n=e.left+e.width/2;else{var i=this._isRtl()?e.right:e.left,r=this._isRtl()?e.left:e.right;n="start"==t.originX?i:r}return{x:n,y:"center"==t.originY?e.top+e.height/2:"top"==t.originY?e.top:e.bottom}}},{key:"_getOverlayPoint",value:function(e,t,n){var i,r;return i="center"==n.overlayX?-t.width/2:"start"===n.overlayX?this._isRtl()?-t.width:0:this._isRtl()?0:-t.width,r="center"==n.overlayY?-t.height/2:"top"==n.overlayY?0:-t.height,{x:e.x+i,y:e.y+r}}},{key:"_getOverlayFit",value:function(e,t,n,i){var r=Np(t),o=e.x,a=e.y,s=this._getOffset(i,"x"),u=this._getOffset(i,"y");s&&(o+=s),u&&(a+=u);var c=0-a,l=a+r.height-n.height,h=this._subtractOverflows(r.width,0-o,o+r.width-n.width),d=this._subtractOverflows(r.height,c,l),f=h*d;return{visibleArea:f,isCompletelyWithinViewport:r.width*r.height===f,fitsInViewportVertically:d===r.height,fitsInViewportHorizontally:h==r.width}}},{key:"_canFitWithFlexibleDimensions",value:function(e,t,n){if(this._hasFlexibleDimensions){var i=n.bottom-t.y,r=n.right-t.x,o=Dp(this._overlayRef.getConfig().minHeight),a=Dp(this._overlayRef.getConfig().minWidth),s=e.fitsInViewportHorizontally||null!=a&&a<=r;return(e.fitsInViewportVertically||null!=o&&o<=i)&&s}return!1}},{key:"_pushOverlayOnScreen",value:function(e,t,n){if(this._previousPushAmount&&this._positionLocked)return{x:e.x+this._previousPushAmount.x,y:e.y+this._previousPushAmount.y};var i,r,o=Np(t),a=this._viewportRect,s=Math.max(e.x+o.width-a.width,0),u=Math.max(e.y+o.height-a.height,0),c=Math.max(a.top-n.top-e.y,0),l=Math.max(a.left-n.left-e.x,0);return i=o.width<=a.width?l||-s:e.xh&&!this._isInitialRender&&!this._growAfterOpen&&(i=e.y-h/2)}if("end"===t.overlayX&&!c||"start"===t.overlayX&&c)s=u.width-e.x+this._viewportMargin,o=e.x-this._viewportMargin;else if("start"===t.overlayX&&!c||"end"===t.overlayX&&c)a=e.x,o=u.right-e.x;else{var d=Math.min(u.right-e.x+u.left,e.x),f=this._lastBoundingBoxSize.width;o=2*d,a=e.x-d,o>f&&!this._isInitialRender&&!this._growAfterOpen&&(a=e.x-f/2)}return{top:i,left:a,bottom:r,right:s,width:o,height:n}}},{key:"_setBoundingBoxStyles",value:function(e,t){var n=this._calculateBoundingBoxRect(e,t);!this._isInitialRender&&!this._growAfterOpen&&(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));var i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{var r=this._overlayRef.getConfig().maxHeight,o=this._overlayRef.getConfig().maxWidth;i.height=Rd(n.height),i.top=Rd(n.top),i.bottom=Rd(n.bottom),i.width=Rd(n.width),i.left=Rd(n.left),i.right=Rd(n.right),i.alignItems="center"===t.overlayX?"center":"end"===t.overlayX?"flex-end":"flex-start",i.justifyContent="center"===t.overlayY?"center":"bottom"===t.overlayY?"flex-end":"flex-start",r&&(i.maxHeight=Rd(r)),o&&(i.maxWidth=Rd(o))}this._lastBoundingBoxSize=n,Rp(this._boundingBox.style,i)}},{key:"_resetBoundingBoxStyles",value:function(){Rp(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}},{key:"_resetOverlayElementStyles",value:function(){Rp(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}},{key:"_setOverlayElementStyles",value:function(e,t){var n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,o=this._overlayRef.getConfig();if(i){var a=this._viewportRuler.getViewportScrollPosition();Rp(n,this._getExactOverlayY(t,e,a)),Rp(n,this._getExactOverlayX(t,e,a))}else n.position="static";var s="",u=this._getOffset(t,"x"),c=this._getOffset(t,"y");u&&(s+="translateX(".concat(u,"px) ")),c&&(s+="translateY(".concat(c,"px)")),n.transform=s.trim(),o.maxHeight&&(i?n.maxHeight=Rd(o.maxHeight):r&&(n.maxHeight="")),o.maxWidth&&(i?n.maxWidth=Rd(o.maxWidth):r&&(n.maxWidth="")),Rp(this._pane.style,n)}},{key:"_getExactOverlayY",value:function(e,t,n){var i={top:"",bottom:""},r=this._getOverlayPoint(t,this._overlayRect,e);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));var o=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=o,"bottom"===e.overlayY?i.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":i.top=Rd(r.y),i}},{key:"_getExactOverlayX",value:function(e,t,n){var i={left:"",right:""},r=this._getOverlayPoint(t,this._overlayRect,e);return this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n)),"right"===(this._isRtl()?"end"===e.overlayX?"left":"right":"end"===e.overlayX?"right":"left")?i.right=this._document.documentElement.clientWidth-(r.x+this._overlayRect.width)+"px":i.left=Rd(r.x),i}},{key:"_getScrollVisibility",value:function(){var e=this._getOriginRect(),t=this._pane.getBoundingClientRect(),n=this._scrollables.map(function(e){return e.getElementRef().nativeElement.getBoundingClientRect()});return{isOriginClipped:mp(e,n),isOriginOutsideView:gp(e,n),isOverlayClipped:mp(t,n),isOverlayOutsideView:gp(t,n)}}},{key:"_subtractOverflows",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i0&&void 0!==arguments[0]?arguments[0]:"";return this._bottomOffset="",this._topOffset=e,this._alignItems="flex-start",this}},{key:"left",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._rightOffset="",this._leftOffset=e,this._justifyContent="flex-start",this}},{key:"bottom",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._topOffset="",this._bottomOffset=e,this._alignItems="flex-end",this}},{key:"right",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._leftOffset="",this._rightOffset=e,this._justifyContent="flex-end",this}},{key:"width",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({width:e}):this._width=e,this}},{key:"height",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this._overlayRef?this._overlayRef.updateSize({height:e}):this._height=e,this}},{key:"centerHorizontally",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.left(e),this._justifyContent="center",this}},{key:"centerVertically",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return this.top(e),this._alignItems="center",this}},{key:"apply",value:function(){if(this._overlayRef&&this._overlayRef.hasAttached()){var e=this._overlayRef.overlayElement.style,t=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),i=n.width,r=n.height,o=n.maxWidth,a=n.maxHeight,s=!("100%"!==i&&"100vw"!==i||o&&"100%"!==o&&"100vw"!==o),u=!("100%"!==r&&"100vh"!==r||a&&"100%"!==a&&"100vh"!==a);e.position=this._cssPosition,e.marginLeft=s?"0":this._leftOffset,e.marginTop=u?"0":this._topOffset,e.marginBottom=this._bottomOffset,e.marginRight=this._rightOffset,s?t.justifyContent="flex-start":"center"===this._justifyContent?t.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?t.justifyContent="flex-end":"flex-end"===this._justifyContent&&(t.justifyContent="flex-start"):t.justifyContent=this._justifyContent,t.alignItems=u?"flex-start":this._alignItems}}},{key:"dispose",value:function(){if(!this._isDisposed&&this._overlayRef){var e=this._overlayRef.overlayElement.style,t=this._overlayRef.hostElement,n=t.style;t.classList.remove(Fp),n.justifyContent=n.alignItems=e.marginTop=e.marginBottom=e.marginLeft=e.marginRight=e.position="",this._overlayRef=null,this._isDisposed=!0}}}]),e}(),Vp=function(){var e=function(){function e(t,n,i,r){m(this,e),this._viewportRuler=t,this._document=n,this._platform=i,this._overlayContainer=r}return b(e,[{key:"global",value:function(){return new Bp}},{key:"connectedTo",value:function(e,t,n){return new jp(t,n,e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}},{key:"flexibleConnectedTo",value:function(e){return new Ip(e,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Wf),Ki(hh),Ki(Mf),Ki(Tp))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Wf),Ki(hh),Ki(Mf),Ki(Tp))},token:e,providedIn:"root"}),e}(),zp=0,Up=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c,l,h){m(this,e),this.scrollStrategies=t,this._overlayContainer=n,this._componentFactoryResolver=i,this._positionBuilder=r,this._keyboardDispatcher=o,this._injector=a,this._ngZone=s,this._document=u,this._directionality=c,this._location=l,this._outsideClickDispatcher=h}return b(e,[{key:"create",value:function(e){var t=this._createHostElement(),n=this._createPaneElement(t),i=this._createPortalOutlet(n),r=new _p(e);return r.direction=r.direction||this._directionality.value,new Ap(i,t,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}},{key:"position",value:function(){return this._positionBuilder}},{key:"_createPaneElement",value:function(e){var t=this._document.createElement("div");return t.id="cdk-overlay-"+zp++,t.classList.add("cdk-overlay-pane"),e.appendChild(t),t}},{key:"_createHostElement",value:function(){var e=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(e),e}},{key:"_createPortalOutlet",value:function(e){return this._appRef||(this._appRef=this._injector.get(rh)),new Jf(e,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(bp),Ki(Tp),Ki(Gu),Ki(Vp),Ki(Sp),Ki(rs),Ki(Bl),Ki(hh),Ki(Vf),Ki(Sh),Ki(Ep))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Hp=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Gp=new Pi("cdk-connected-overlay-scroll-strategy"),Wp=function(){var e=function e(t){m(this,e),this.elementRef=t};return e.\u0275fac=function(t){return new(t||e)(Ss(Yu))},e.\u0275dir=Mt({type:e,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),e}(),qp=function(){var e=function(){function e(t,n,i,r,o){m(this,e),this._overlay=t,this._dir=o,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=G.EMPTY,this._attachSubscription=G.EMPTY,this._detachSubscription=G.EMPTY,this._positionSubscription=G.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Qc,this.positionChange=new Qc,this.attach=new Qc,this.detach=new Qc,this.overlayKeydown=new Qc,this.overlayOutsideClick=new Qc,this._templatePortal=new $f(n,i),this._scrollStrategyFactory=r,this.scrollStrategy=this._scrollStrategyFactory()}return b(e,[{key:"offsetX",get:function(){return this._offsetX},set:function(e){this._offsetX=e,this._position&&this._updatePositionStrategy(this._position)}},{key:"offsetY",get:function(){return this._offsetY},set:function(e){this._offsetY=e,this._position&&this._updatePositionStrategy(this._position)}},{key:"hasBackdrop",get:function(){return this._hasBackdrop},set:function(e){this._hasBackdrop=Pd(e)}},{key:"lockPosition",get:function(){return this._lockPosition},set:function(e){this._lockPosition=Pd(e)}},{key:"flexibleDimensions",get:function(){return this._flexibleDimensions},set:function(e){this._flexibleDimensions=Pd(e)}},{key:"growAfterOpen",get:function(){return this._growAfterOpen},set:function(e){this._growAfterOpen=Pd(e)}},{key:"push",get:function(){return this._push},set:function(e){this._push=Pd(e)}},{key:"overlayRef",get:function(){return this._overlayRef}},{key:"dir",get:function(){return this._dir?this._dir.value:"ltr"}},{key:"ngOnDestroy",value:function(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}},{key:"ngOnChanges",value:function(e){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),e.origin&&this.open&&this._position.apply()),e.open&&(this.open?this._attachOverlay():this._detachOverlay())}},{key:"_createOverlay",value:function(){var e=this;(!this.positions||!this.positions.length)&&(this.positions=Hp);var t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(function(){return e.attach.emit()}),this._detachSubscription=t.detachments().subscribe(function(){return e.detach.emit()}),t.keydownEvents().subscribe(function(t){e.overlayKeydown.next(t),27===t.keyCode&&!e.disableClose&&!hp(t)&&(t.preventDefault(),e._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(function(t){e.overlayOutsideClick.next(t)})}},{key:"_buildConfig",value:function(){var e=this._position=this.positionStrategy||this._createPositionStrategy(),t=new _p({direction:this._dir,positionStrategy:e,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(t.width=this.width),(this.height||0===this.height)&&(t.height=this.height),(this.minWidth||0===this.minWidth)&&(t.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(t.minHeight=this.minHeight),this.backdropClass&&(t.backdropClass=this.backdropClass),this.panelClass&&(t.panelClass=this.panelClass),t}},{key:"_updatePositionStrategy",value:function(e){var t=this,n=this.positions.map(function(e){return{originX:e.originX,originY:e.originY,overlayX:e.overlayX,overlayY:e.overlayY,offsetX:e.offsetX||t.offsetX,offsetY:e.offsetY||t.offsetY,panelClass:e.panelClass||void 0}});return e.setOrigin(this.origin.elementRef).withPositions(n).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}},{key:"_createPositionStrategy",value:function(){var e=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(e),e}},{key:"_attachOverlay",value:function(){var e=this;this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(function(t){e.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(up(function(){return e.positionChange.observers.length>0})).subscribe(function(t){e.positionChange.emit(t),0===e.positionChange.observers.length&&e._positionSubscription.unsubscribe()}))}},{key:"_detachOverlay",value:function(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Ec),Ss(Pc),Ss(Gp),Ss(Vf,8))},e.\u0275dir=Mt({type:e,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[Ht]}),e}(),Xp={provide:Gp,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},Yp=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[Up,Xp],imports:[[zf,ip,Xf],Xf]}),e}(),Kp=function(){var t,n=function(t){a(i,t);var n=s(i);function i(){var e;return m(this,i),(e=n.apply(this,arguments)).attached=!1,e}return b(i,[{key:"setRootElement",value:function(e){this.attached&&(this.rootElement.nativeElement.removeChild(this._containerElement),this.attached=!1),this.rootElement=e,this.rootElement.nativeElement.style.display="block",this.rootElement.nativeElement.style.position="contents",this.rootElement.nativeElement.style.height="100%",this.appendToRoot()}},{key:"_createContainer",value:function(){e(p(i.prototype),"_createContainer",this).call(this),this.appendToRoot()}},{key:"appendToRoot",value:function(){!this._containerElement||!this.rootElement||(this.rootElement.nativeElement.appendChild(this._containerElement),this.attached=!0)}}]),i}(Tp);return n.\u0275fac=function(e){return(t||(t=Ei(n)))(e||n)},n.\u0275prov=Ye({token:n,factory:n.\u0275fac,providedIn:"root"}),n}(),$p={schedule:function(e,t){var n=setTimeout(e,t);return function(){return clearTimeout(n)}},scheduleBeforeRender:function(e){if("undefined"==typeof window)return $p.schedule(e,0);if(void 0===window.requestAnimationFrame)return $p.schedule(e,16);var t=window.requestAnimationFrame(e);return function(){return window.cancelAnimationFrame(t)}}};function Qp(e,t,n){var i=n;return function(e){return!!e&&e.nodeType===Node.ELEMENT_NODE}(e)&&t.some(function(t,n){return!("*"===t||!function(e,t){if(!Lp){var n=Element.prototype;Lp=n.matches||n.matchesSelector||n.mozMatchesSelector||n.msMatchesSelector||n.oMatchesSelector||n.webkitMatchesSelector}return e.nodeType===Node.ELEMENT_NODE&&Lp.call(e,t)}(e,t)||(i=n,0))}),i}var Zp=function(){function e(t,n){m(this,e),this.componentFactory=n.get(Gu).resolveComponentFactory(t)}return b(e,[{key:"create",value:function(e){return new Jp(this.componentFactory,e)}}]),e}(),Jp=function(){function e(t,n){m(this,e),this.componentFactory=t,this.injector=n,this.eventEmitters=new Sf(1),this.events=this.eventEmitters.pipe(df(function(e){return Ee.apply(void 0,v(e))})),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(function(e){return e.propName})),this.ngZone=this.injector.get(Bl),this.elementZone="undefined"==typeof Zone?null:this.ngZone.run(function(){return Zone.current})}return b(e,[{key:"connect",value:function(e){var t=this;this.runInZone(function(){if(null!==t.scheduledDestroyFn)return t.scheduledDestroyFn(),void(t.scheduledDestroyFn=null);null===t.componentRef&&t.initializeComponent(e)})}},{key:"disconnect",value:function(){var e=this;this.runInZone(function(){null===e.componentRef||null!==e.scheduledDestroyFn||(e.scheduledDestroyFn=$p.schedule(function(){null!==e.componentRef&&(e.componentRef.destroy(),e.componentRef=null,e.viewChangeDetectorRef=null)},10))})}},{key:"getInputValue",value:function(e){var t=this;return this.runInZone(function(){return null===t.componentRef?t.initialInputValues.get(e):t.componentRef.instance[e]})}},{key:"setInputValue",value:function(e,t){var n=this;this.runInZone(function(){null!==n.componentRef?function(e,t){return e===t||e!=e&&t!=t}(t,n.getInputValue(e))&&(void 0!==t||!n.unchangedInputs.has(e))||(n.recordInputChange(e,t),n.unchangedInputs.delete(e),n.hasInputChanges=!0,n.componentRef.instance[e]=t,n.scheduleDetectChanges()):n.initialInputValues.set(e,t)})}},{key:"initializeComponent",value:function(e){var t=rs.create({providers:[],parent:this.injector}),n=function(e,t){var n=e.childNodes,i=t.map(function(){return[]}),r=-1;t.some(function(e,t){return"*"===e&&(r=t,!0)});for(var o=0,a=n.length;o1&&void 0!==arguments[1]?arguments[1]:Qd;return function(n){return n.lift(new sv(e,t))}}var sv=function(){function e(t,n){m(this,e),this.dueTime=t,this.scheduler=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new uv(e,this.dueTime,this.scheduler))}}]),e}(),uv=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).dueTime=i,o.scheduler=r,o.debouncedSubscription=null,o.lastValue=null,o.hasValue=!1,o}return b(n,[{key:"_next",value:function(e){this.clearDebounce(),this.lastValue=e,this.hasValue=!0,this.add(this.debouncedSubscription=this.scheduler.schedule(cv,this.dueTime,this))}},{key:"_complete",value:function(){this.debouncedNext(),this.destination.complete()}},{key:"debouncedNext",value:function(){if(this.clearDebounce(),this.hasValue){var e=this.lastValue;this.lastValue=null,this.hasValue=!1,this.destination.next(e)}}},{key:"clearDebounce",value:function(){var e=this.debouncedSubscription;null!==e&&(this.remove(e),e.unsubscribe(),this.debouncedSubscription=null)}}]),n}(X);function cv(e){e.debouncedNext()}function lv(e){return function(t){return t.lift(new hv(e))}}var hv=function(){function e(t){m(this,e),this.total=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new dv(e,this.total))}}]),e}(),dv=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).total=i,r.count=0,r}return b(n,[{key:"_next",value:function(e){++this.count>this.total&&this.destination.next(e)}}]),n}(X),fv=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"create",value:function(e){return"undefined"==typeof MutationObserver?null:new MutationObserver(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({factory:function(){return new e},token:e,providedIn:"root"}),e}(),pv=function(){var e=function(){function e(t){m(this,e),this._mutationObserverFactory=t,this._observedElements=new Map}return b(e,[{key:"ngOnDestroy",value:function(){var e=this;this._observedElements.forEach(function(t,n){return e._cleanupObserver(n)})}},{key:"observe",value:function(e){var t=this,n=Dd(e);return new J(function(e){var i=t._observeElement(n).subscribe(e);return function(){i.unsubscribe(),t._unobserveElement(n)}})}},{key:"_observeElement",value:function(e){if(this._observedElements.has(e))this._observedElements.get(e).count++;else{var t=new re,n=this._mutationObserverFactory.create(function(e){return t.next(e)});n&&n.observe(e,{characterData:!0,childList:!0,subtree:!0}),this._observedElements.set(e,{observer:n,stream:t,count:1})}return this._observedElements.get(e).stream}},{key:"_unobserveElement",value:function(e){this._observedElements.has(e)&&(this._observedElements.get(e).count--,this._observedElements.get(e).count||this._cleanupObserver(e))}},{key:"_cleanupObserver",value:function(e){if(this._observedElements.has(e)){var t=this._observedElements.get(e),n=t.observer,i=t.stream;n&&n.disconnect(),i.complete(),this._observedElements.delete(e)}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(fv))},e.\u0275prov=Ye({factory:function(){return new e(Ki(fv))},token:e,providedIn:"root"}),e}(),vv=function(){var e=function(){function e(t,n,i){m(this,e),this._contentObserver=t,this._elementRef=n,this._ngZone=i,this.event=new Qc,this._disabled=!1,this._currentSubscription=null}return b(e,[{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=Pd(e),this._disabled?this._unsubscribe():this._subscribe()}},{key:"debounce",get:function(){return this._debounce},set:function(e){this._debounce=Md(e),this._subscribe()}},{key:"ngAfterContentInit",value:function(){!this._currentSubscription&&!this.disabled&&this._subscribe()}},{key:"ngOnDestroy",value:function(){this._unsubscribe()}},{key:"_subscribe",value:function(){var e=this;this._unsubscribe();var t=this._contentObserver.observe(this._elementRef);this._ngZone.runOutsideAngular(function(){e._currentSubscription=(e.debounce?t.pipe(av(e.debounce)):t).subscribe(e.event)})}},{key:"_unsubscribe",value:function(){var e;null===(e=this._currentSubscription)||void 0===e||e.unsubscribe()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(pv),Ss(Yu),Ss(Bl))},e.\u0275dir=Mt({type:e,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),e}(),gv=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[fv]}),e}();function mv(e,t){return(e.getAttribute(t)||"").match(/\S+/g)||[]}var yv="cdk-describedby-message-container",bv="cdk-describedby-message",_v="cdk-describedby-host",wv=0,kv=new Map,xv=null,Sv=function(){var e=function(){function e(t){m(this,e),this._document=t}return b(e,[{key:"describe",value:function(e,t,n){if(this._canBeDescribed(e,t)){var i=Ev(t,n);"string"!=typeof t?(Cv(t),kv.set(i,{messageElement:t,referenceCount:0})):kv.has(i)||this._createMessageElement(t,n),this._isElementDescribedByMessage(e,i)||this._addMessageReference(e,i)}}},{key:"removeDescription",value:function(e,t,n){if(t&&this._isElementNode(e)){var i=Ev(t,n);if(this._isElementDescribedByMessage(e,i)&&this._removeMessageReference(e,i),"string"==typeof t){var r=kv.get(i);r&&0===r.referenceCount&&this._deleteMessageElement(i)}xv&&0===xv.childNodes.length&&this._deleteMessagesContainer()}}},{key:"ngOnDestroy",value:function(){for(var e=this._document.querySelectorAll("[".concat(_v,"]")),t=0;t-1&&t!==n._activeItemIndex&&(n._activeItemIndex=t)}})}return b(e,[{key:"skipPredicate",value:function(e){return this._skipPredicateFn=e,this}},{key:"withWrap",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._wrap=e,this}},{key:"withVerticalOrientation",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._vertical=e,this}},{key:"withHorizontalOrientation",value:function(e){return this._horizontal=e,this}},{key:"withAllowedModifierKeys",value:function(e){return this._allowedModifierKeys=e,this}},{key:"withTypeAhead",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:200;return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe(iv(function(t){return e._pressedLetters.push(t)}),av(t),rf(function(){return e._pressedLetters.length>0}),se(function(){return e._pressedLetters.join("")})).subscribe(function(t){for(var n=e._getItemsArray(),i=1;i0&&void 0!==arguments[0])||arguments[0];return this._homeAndEnd=e,this}},{key:"setActiveItem",value:function(e){var t=this._activeItem;this.updateActiveItem(e),this._activeItem!==t&&this.change.next(this._activeItemIndex)}},{key:"onKeydown",value:function(e){var t=this,n=e.keyCode,i=["altKey","ctrlKey","metaKey","shiftKey"].every(function(n){return!e[n]||t._allowedModifierKeys.indexOf(n)>-1});switch(n){case 9:return void this.tabOut.next();case 40:if(this._vertical&&i){this.setNextItemActive();break}return;case 38:if(this._vertical&&i){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&i){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&i){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&i){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&i){this.setLastItemActive();break}return;default:return void((i||hp(e,"shiftKey"))&&(e.key&&1===e.key.length?this._letterKeyStream.next(e.key.toLocaleUpperCase()):(n>=65&&n<=90||n>=48&&n<=57)&&this._letterKeyStream.next(String.fromCharCode(n))))}this._pressedLetters=[],e.preventDefault()}},{key:"activeItemIndex",get:function(){return this._activeItemIndex}},{key:"activeItem",get:function(){return this._activeItem}},{key:"isTyping",value:function(){return this._pressedLetters.length>0}},{key:"setFirstItemActive",value:function(){this._setActiveItemByIndex(0,1)}},{key:"setLastItemActive",value:function(){this._setActiveItemByIndex(this._items.length-1,-1)}},{key:"setNextItemActive",value:function(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}},{key:"setPreviousItemActive",value:function(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}},{key:"updateActiveItem",value:function(e){var t=this._getItemsArray(),n="number"==typeof e?e:t.indexOf(e),i=t[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}},{key:"_setActiveItemByDelta",value:function(e){this._wrap?this._setActiveInWrapMode(e):this._setActiveInDefaultMode(e)}},{key:"_setActiveInWrapMode",value:function(e){for(var t=this._getItemsArray(),n=1;n<=t.length;n++){var i=(this._activeItemIndex+e*n+t.length)%t.length;if(!this._skipPredicateFn(t[i]))return void this.setActiveItem(i)}}},{key:"_setActiveInDefaultMode",value:function(e){this._setActiveItemByIndex(this._activeItemIndex+e,e)}},{key:"_setActiveItemByIndex",value:function(e,t){var n=this._getItemsArray();if(n[e]){for(;this._skipPredicateFn(n[e]);)if(!n[e+=t])return;this.setActiveItem(e)}}},{key:"_getItemsArray",value:function(){return this._items instanceof Jc?this._items.toArray():this._items}}]),e}()),Tv=function(){var e=function(){function e(t){m(this,e),this._platform=t}return b(e,[{key:"isDisabled",value:function(e){return e.hasAttribute("disabled")}},{key:"isVisible",value:function(e){return function(e){return!!(e.offsetWidth||e.offsetHeight||"function"==typeof e.getClientRects&&e.getClientRects().length)}(e)&&"visible"===getComputedStyle(e).visibility}},{key:"isTabbable",value:function(e){if(!this._platform.isBrowser)return!1;var t=function(e){try{return e.frameElement}catch(t){return null}}(function(e){return e.ownerDocument&&e.ownerDocument.defaultView||window}(e));if(t&&(-1===Pv(t)||!this.isVisible(t)))return!1;var n=e.nodeName.toLowerCase(),i=Pv(e);return e.hasAttribute("contenteditable")?-1!==i:!("iframe"===n||"object"===n||this._platform.WEBKIT&&this._platform.IOS&&!function(e){var t=e.nodeName.toLowerCase(),n="input"===t&&e.type;return"text"===n||"password"===n||"select"===t||"textarea"===t}(e))&&("audio"===n?!!e.hasAttribute("controls")&&-1!==i:"video"===n?-1!==i&&(null!==i||this._platform.FIREFOX||e.hasAttribute("controls")):e.tabIndex>=0)}},{key:"isFocusable",value:function(e,t){return function(e){return!function(e){return function(e){return"input"==e.nodeName.toLowerCase()}(e)&&"hidden"==e.type}(e)&&(function(e){var t=e.nodeName.toLowerCase();return"input"===t||"select"===t||"button"===t||"textarea"===t}(e)||function(e){return function(e){return"a"==e.nodeName.toLowerCase()}(e)&&e.hasAttribute("href")}(e)||e.hasAttribute("contenteditable")||Av(e))}(e)&&!this.isDisabled(e)&&((null==t?void 0:t.ignoreVisibility)||this.isVisible(e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf))},token:e,providedIn:"root"}),e}();function Av(e){if(!e.hasAttribute("tabindex")||void 0===e.tabIndex)return!1;var t=e.getAttribute("tabindex");return"-32768"!=t&&!(!t||isNaN(parseInt(t,10)))}function Pv(e){if(!Av(e))return null;var t=parseInt(e.getAttribute("tabindex")||"",10);return isNaN(t)?-1:t}var Mv=function(){function e(t,n,i,r){var o=this,a=arguments.length>4&&void 0!==arguments[4]&&arguments[4];m(this,e),this._element=t,this._checker=n,this._ngZone=i,this._document=r,this._hasAttached=!1,this.startAnchorListener=function(){return o.focusLastTabbableElement()},this.endAnchorListener=function(){return o.focusFirstTabbableElement()},this._enabled=!0,a||this.attachAnchors()}return b(e,[{key:"enabled",get:function(){return this._enabled},set:function(e){this._enabled=e,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}},{key:"destroy",value:function(){var e=this._startAnchor,t=this._endAnchor;e&&(e.removeEventListener("focus",this.startAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),t&&(t.removeEventListener("focus",this.endAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}},{key:"attachAnchors",value:function(){var e=this;return!!this._hasAttached||(this._ngZone.runOutsideAngular(function(){e._startAnchor||(e._startAnchor=e._createAnchor(),e._startAnchor.addEventListener("focus",e.startAnchorListener)),e._endAnchor||(e._endAnchor=e._createAnchor(),e._endAnchor.addEventListener("focus",e.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}},{key:"focusInitialElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusInitialElement(e))})})}},{key:"focusFirstTabbableElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusFirstTabbableElement(e))})})}},{key:"focusLastTabbableElementWhenReady",value:function(e){var t=this;return new Promise(function(n){t._executeOnStable(function(){return n(t.focusLastTabbableElement(e))})})}},{key:"_getRegionBoundary",value:function(e){for(var t=this._element.querySelectorAll("[cdk-focus-region-".concat(e,"], [cdkFocusRegion").concat(e,"], [cdk-focus-").concat(e,"]")),n=0;n=0;n--){var i=t[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(t[n]):null;if(i)return i}return null}},{key:"_createAnchor",value:function(){var e=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,e),e.classList.add("cdk-visually-hidden"),e.classList.add("cdk-focus-trap-anchor"),e.setAttribute("aria-hidden","true"),e}},{key:"_toggleAnchorTabIndex",value:function(e,t){e?t.setAttribute("tabindex","0"):t.removeAttribute("tabindex")}},{key:"toggleAnchors",value:function(e){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(e,this._startAnchor),this._toggleAnchorTabIndex(e,this._endAnchor))}},{key:"_executeOnStable",value:function(e){this._ngZone.isStable?e():this._ngZone.onStable.pipe(op(1)).subscribe(e)}}]),e}(),Iv=function(){var e=function(){function e(t,n,i){m(this,e),this._checker=t,this._ngZone=n,this._document=i}return b(e,[{key:"create",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Mv(e,this._checker,this._ngZone,this._document,t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Tv),Ki(Bl),Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Tv),Ki(Bl),Ki(hh))},token:e,providedIn:"root"}),e}();function Rv(e){return 0===e.offsetX&&0===e.offsetY}function Dv(e){var t=e.touches&&e.touches[0]||e.changedTouches&&e.changedTouches[0];return!(!t||-1!==t.identifier||null!=t.radiusX&&1!==t.radiusX||null!=t.radiusY&&1!==t.radiusY)}"undefined"!=typeof Element&∈var Nv=new Pi("cdk-input-modality-detector-options"),Lv={ignoreKeys:[18,17,224,91,16]},jv=Nf({passive:!0,capture:!0}),Fv=function(){var e=function(){function e(t,n,i,r){var o=this;m(this,e),this._platform=t,this._mostRecentTarget=null,this._modality=new tv(null),this._lastTouchMs=0,this._onKeydown=function(e){var t,n;(null===(n=null===(t=o._options)||void 0===t?void 0:t.ignoreKeys)||void 0===n?void 0:n.some(function(t){return t===e.keyCode}))||(o._modality.next("keyboard"),o._mostRecentTarget=Ff(e))},this._onMousedown=function(e){Date.now()-o._lastTouchMs<650||(o._modality.next(Rv(e)?"keyboard":"mouse"),o._mostRecentTarget=Ff(e))},this._onTouchstart=function(e){Dv(e)?o._modality.next("keyboard"):(o._lastTouchMs=Date.now(),o._modality.next("touch"),o._mostRecentTarget=Ff(e))},this._options=Object.assign(Object.assign({},Lv),r),this.modalityDetected=this._modality.pipe(lv(1)),this.modalityChanged=this.modalityDetected.pipe(Yd()),t.isBrowser&&n.runOutsideAngular(function(){i.addEventListener("keydown",o._onKeydown,jv),i.addEventListener("mousedown",o._onMousedown,jv),i.addEventListener("touchstart",o._onTouchstart,jv)})}return b(e,[{key:"mostRecentModality",get:function(){return this._modality.value}},{key:"ngOnDestroy",value:function(){!this._platform.isBrowser||(document.removeEventListener("keydown",this._onKeydown,jv),document.removeEventListener("mousedown",this._onMousedown,jv),document.removeEventListener("touchstart",this._onTouchstart,jv))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(Bl),Ki(hh),Ki(Nv,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(Bl),Ki(hh),Ki(Nv,8))},token:e,providedIn:"root"}),e}(),Bv=new Pi("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),Vv=new Pi("LIVE_ANNOUNCER_DEFAULT_OPTIONS"),zv=function(){var e=function(){function e(t,n,i,r){m(this,e),this._ngZone=n,this._defaultOptions=r,this._document=i,this._liveElement=t||this._createLiveElement()}return b(e,[{key:"announce",value:function(e){for(var n,i,r,o=this,a=this._defaultOptions,s=arguments.length,u=new Array(s>1?s-1:0),c=1;c1&&void 0!==arguments[1]&&arguments[1],n=Dd(e);if(!this._platform.isBrowser||1!==n.nodeType)return Nd(null);var i=Lf(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return t&&(r.checkChildren=!0),r.subject;var o={checkChildren:t,subject:new re,rootNode:i};return this._elementInfo.set(n,o),this._registerGlobalListeners(o),o.subject}},{key:"stopMonitoring",value:function(e){var t=Dd(e),n=this._elementInfo.get(t);n&&(n.subject.complete(),this._setClasses(t),this._elementInfo.delete(t),this._removeGlobalListeners(n))}},{key:"focusVia",value:function(e,n,i){var r=this,o=Dd(e);o===this._getDocument().activeElement?this._getClosestElementsInfo(o).forEach(function(e){var i=t(e,2),o=i[0],a=i[1];return r._originChanged(o,n,a)}):(this._setOrigin(n),"function"==typeof o.focus&&o.focus(i))}},{key:"ngOnDestroy",value:function(){var e=this;this._elementInfo.forEach(function(t,n){return e.stopMonitoring(n)})}},{key:"_getDocument",value:function(){return this._document||document}},{key:"_getWindow",value:function(){return this._getDocument().defaultView||window}},{key:"_toggleClass",value:function(e,t,n){n?e.classList.add(t):e.classList.remove(t)}},{key:"_getFocusOrigin",value:function(e){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(e)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}},{key:"_shouldBeAttributedToTouch",value:function(e){return 1===this._detectionMode||!!(null==e?void 0:e.contains(this._inputModalityDetector._mostRecentTarget))}},{key:"_setClasses",value:function(e,t){this._toggleClass(e,"cdk-focused",!!t),this._toggleClass(e,"cdk-touch-focused","touch"===t),this._toggleClass(e,"cdk-keyboard-focused","keyboard"===t),this._toggleClass(e,"cdk-mouse-focused","mouse"===t),this._toggleClass(e,"cdk-program-focused","program"===t)}},{key:"_setOrigin",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._ngZone.runOutsideAngular(function(){t._origin=e,t._originFromTouchInteraction="touch"===e&&n,0===t._detectionMode&&(clearTimeout(t._originTimeoutId),t._originTimeoutId=setTimeout(function(){return t._origin=null},t._originFromTouchInteraction?650:1))})}},{key:"_onFocus",value:function(e,t){var n=this._elementInfo.get(t),i=Ff(e);!n||!n.checkChildren&&t!==i||this._originChanged(t,this._getFocusOrigin(i),n)}},{key:"_onBlur",value:function(e,t){var n=this._elementInfo.get(t);!n||n.checkChildren&&e.relatedTarget instanceof Node&&t.contains(e.relatedTarget)||(this._setClasses(t),this._emitOrigin(n.subject,null))}},{key:"_emitOrigin",value:function(e,t){this._ngZone.run(function(){return e.next(t)})}},{key:"_registerGlobalListeners",value:function(e){var t=this;if(this._platform.isBrowser){var n=e.rootNode,i=this._rootNodeFocusListenerCount.get(n)||0;i||this._ngZone.runOutsideAngular(function(){n.addEventListener("focus",t._rootNodeFocusAndBlurListener,Hv),n.addEventListener("blur",t._rootNodeFocusAndBlurListener,Hv)}),this._rootNodeFocusListenerCount.set(n,i+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(function(){t._getWindow().addEventListener("focus",t._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(sf(this._stopInputModalityDetector)).subscribe(function(e){t._setOrigin(e,!0)}))}}},{key:"_removeGlobalListeners",value:function(e){var t=e.rootNode;if(this._rootNodeFocusListenerCount.has(t)){var n=this._rootNodeFocusListenerCount.get(t);n>1?this._rootNodeFocusListenerCount.set(t,n-1):(t.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Hv),t.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Hv),this._rootNodeFocusListenerCount.delete(t))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}},{key:"_originChanged",value:function(e,t,n){this._setClasses(e,t),this._emitOrigin(n.subject,t),this._lastFocusOrigin=t}},{key:"_getClosestElementsInfo",value:function(e){var t=[];return this._elementInfo.forEach(function(n,i){(i===e||n.checkChildren&&i.contains(e))&&t.push([i,n])}),t}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(Mf),Ki(Fv),Ki(hh,8),Ki(Uv,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Bl),Ki(Mf),Ki(Fv),Ki(hh,8),Ki(Uv,8))},token:e,providedIn:"root"}),e}(),Wv="cdk-high-contrast-black-on-white",qv="cdk-high-contrast-white-on-black",Xv="cdk-high-contrast-active",Yv=function(){var e=function(){function e(t,n){m(this,e),this._platform=t,this._document=n}return b(e,[{key:"getHighContrastMode",value:function(){if(!this._platform.isBrowser)return 0;var e=this._document.createElement("div");e.style.backgroundColor="rgb(1,2,3)",e.style.position="absolute",this._document.body.appendChild(e);var t=this._document.defaultView||window,n=t&&t.getComputedStyle?t.getComputedStyle(e):null,i=(n&&n.backgroundColor||"").replace(/ /g,"");switch(this._document.body.removeChild(e),i){case"rgb(0,0,0)":return 2;case"rgb(255,255,255)":return 1}return 0}},{key:"_applyBodyHighContrastModeCssClasses",value:function(){if(!this._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){var e=this._document.body.classList;e.remove(Xv),e.remove(Wv),e.remove(qv),this._hasCheckedHighContrastMode=!0;var t=this.getHighContrastMode();1===t?(e.add(Xv),e.add(Wv)):2===t&&(e.add(Xv),e.add(qv))}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(hh))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(hh))},token:e,providedIn:"root"}),e}(),Kv=function(){var e=function e(t){m(this,e),t._applyBodyHighContrastModeCssClasses()};return e.\u0275fac=function(t){return new(t||e)(Ki(Yv))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[If,gv]]}),e}(),$v=new ec("12.2.5"),Qv=function e(){m(this,e)},Zv="*";function Jv(e,t){return{type:7,name:e,definitions:t,options:{}}}function eg(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:4,styles:t,timings:e}}function tg(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return{type:2,steps:e,options:t}}function ng(e){return{type:6,styles:e,offset:null}}function ig(e,t,n){return{type:0,name:e,styles:t,options:n}}function rg(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:1,expr:e,animation:t,options:n}}function og(e){Promise.resolve(null).then(e)}var ag=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;m(this,e),this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,this.parentPlayer=null,this.totalTime=t+n}return b(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"hasStarted",value:function(){return this._started}},{key:"init",value:function(){}},{key:"play",value:function(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}},{key:"triggerMicrotask",value:function(){var e=this;og(function(){return e._onFinish()})}},{key:"_onStart",value:function(){this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[]}},{key:"pause",value:function(){}},{key:"restart",value:function(){}},{key:"finish",value:function(){this._onFinish()}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this._started=!1}},{key:"setPosition",value:function(e){this._position=this.totalTime?e*this.totalTime:1}},{key:"getPosition",value:function(){return this.totalTime?this._position/this.totalTime:1}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),sg=function(){function e(t){var n=this;m(this,e),this._onDoneFns=[],this._onStartFns=[],this._finished=!1,this._started=!1,this._destroyed=!1,this._onDestroyFns=[],this.parentPlayer=null,this.totalTime=0,this.players=t;var i=0,r=0,o=0,a=this.players.length;0==a?og(function(){return n._onFinish()}):this.players.forEach(function(e){e.onDone(function(){++i==a&&n._onFinish()}),e.onDestroy(function(){++r==a&&n._onDestroy()}),e.onStart(function(){++o==a&&n._onStart()})}),this.totalTime=this.players.reduce(function(e,t){return Math.max(e,t.totalTime)},0)}return b(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"init",value:function(){this.players.forEach(function(e){return e.init()})}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"_onStart",value:function(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[])}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"hasStarted",value:function(){return this._started}},{key:"play",value:function(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(function(e){return e.play()})}},{key:"pause",value:function(){this.players.forEach(function(e){return e.pause()})}},{key:"restart",value:function(){this.players.forEach(function(e){return e.restart()})}},{key:"finish",value:function(){this._onFinish(),this.players.forEach(function(e){return e.finish()})}},{key:"destroy",value:function(){this._onDestroy()}},{key:"_onDestroy",value:function(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(function(e){return e.destroy()}),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"reset",value:function(){this.players.forEach(function(e){return e.reset()}),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"setPosition",value:function(e){var t=e*this.totalTime;this.players.forEach(function(e){var n=e.totalTime?Math.min(1,t/e.totalTime):1;e.setPosition(n)})}},{key:"getPosition",value:function(){var e=this.players.reduce(function(e,t){return null===e||t.totalTime>e.totalTime?t:e},null);return null!=e?e.getPosition():0}},{key:"beforeDestroy",value:function(){this.players.forEach(function(e){e.beforeDestroy&&e.beforeDestroy()})}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}();function ug(){return"undefined"!=typeof window&&void 0!==window.document}function cg(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function lg(e){switch(e.length){case 0:return new ag;case 1:return e[0];default:return new sg(e)}}function hg(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=[],s=[],u=-1,c=null;if(i.forEach(function(e){var n=e.offset,i=n==u,l=i&&c||{};Object.keys(e).forEach(function(n){var i=n,s=e[n];if("offset"!==n)switch(i=t.normalizePropertyName(i,a),s){case"!":s=r[n];break;case Zv:s=o[n];break;default:s=t.normalizeStyleValue(n,i,s,a)}l[i]=s}),i||s.push(l),c=l,u=n}),a.length){var l="\n - ";throw new Error("Unable to animate due to the following errors:".concat(l).concat(a.join(l)))}return s}function dg(e,t,n,i){switch(t){case"start":e.onStart(function(){return i(n&&fg(n,"start",e))});break;case"done":e.onDone(function(){return i(n&&fg(n,"done",e))});break;case"destroy":e.onDestroy(function(){return i(n&&fg(n,"destroy",e))})}}function fg(e,t,n){var i=n.totalTime,r=pg(e.element,e.triggerName,e.fromState,e.toState,t||e.phaseName,null==i?e.totalTime:i,!!n.disabled),o=e._data;return null!=o&&(r._data=o),r}function pg(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,a=arguments.length>6?arguments[6]:void 0;return{element:e,triggerName:t,fromState:n,toState:i,phaseName:r,totalTime:o,disabled:!!a}}function vg(e,t,n){var i;return e instanceof Map?(i=e.get(t))||e.set(t,i=n):(i=e[t])||(i=e[t]=n),i}function gg(e){var t=e.indexOf(":");return[e.substring(1,t),e.substr(t+1)]}var mg=function(e,t){return!1},yg=function(e,t){return!1},bg=function(e,t,n){return[]},_g=cg();(_g||"undefined"!=typeof Element)&&(mg=ug()?function(e,t){for(;t&&t!==document.documentElement;){if(t===e)return!0;t=t.parentNode||t.host}return!1}:function(e,t){return e.contains(t)},yg=function(){if(_g||Element.prototype.matches)return function(e,t){return e.matches(t)};var e=Element.prototype,t=e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector;return t?function(e,n){return t.apply(e,[n])}:yg}(),bg=function(e,t,n){var i=[];if(n)for(var r=e.querySelectorAll(t),o=0;o1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).forEach(function(n){t[n]=e[n]}),t}function Vg(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(t)for(var i in e)n[i]=e[i];else Bg(e,n);return n}function zg(e,t,n){return n?t+":"+n+";":""}function Ug(e){for(var t="",n=0;n *";case":leave":return"* => void";case":increment":return function(e,t){return parseFloat(t)>parseFloat(e)};case":decrement":return function(e,t){return parseFloat(t) *"}}(e,n);if("function"==typeof i)return void t.push(i);e=i}var r=e.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(null==r||r.length<4)return n.push('The provided transition expression "'.concat(e,'" is not supported')),t;var o=r[1],a=r[2],s=r[3];t.push(am(o,s)),"<"==a[0]&&("*"!=o||"*"!=s)&&t.push(am(s,o))}(e,n,t)}):n.push(e),n}var rm=new Set(["true","1"]),om=new Set(["false","0"]);function am(e,t){var n=rm.has(e)||om.has(e),i=rm.has(t)||om.has(t);return function(r,o){var a="*"==e||e==r,s="*"==t||t==o;return!a&&n&&"boolean"==typeof r&&(a=r?rm.has(e):om.has(e)),!s&&i&&"boolean"==typeof o&&(s=o?rm.has(t):om.has(t)),a&&s}}var sm=new RegExp("s*:selfs*,?","g");function um(e,t,n){return new cm(e).build(t,n)}var cm=function(){function e(t){m(this,e),this._driver=t}return b(e,[{key:"build",value:function(e,t){var n=new lm(t);return this._resetContextStyleTimingState(n),tm(this,Wg(e),n)}},{key:"_resetContextStyleTimingState",value:function(e){e.currentQuerySelector="",e.collectedStyles={},e.collectedStyles[""]={},e.currentTime=0}},{key:"visitTrigger",value:function(e,t){var n=this,i=t.queryCount=0,r=t.depCount=0,o=[],a=[];return"@"==e.name.charAt(0)&&t.errors.push("animation triggers cannot be prefixed with an `@` sign (e.g. trigger('@foo', [...]))"),e.definitions.forEach(function(e){if(n._resetContextStyleTimingState(t),0==e.type){var s=e,u=s.name;u.toString().split(/\s*,\s*/).forEach(function(e){s.name=e,o.push(n.visitState(s,t))}),s.name=u}else if(1==e.type){var c=n.visitTransition(e,t);i+=c.queryCount,r+=c.depCount,a.push(c)}else t.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:e.name,states:o,transitions:a,queryCount:i,depCount:r,options:null}}},{key:"visitState",value:function(e,t){var n=this.visitStyle(e.styles,t),i=e.options&&e.options.params||null;if(n.containsDynamicStyles){var r=new Set,o=i||{};if(n.styles.forEach(function(e){if(hm(e)){var t=e;Object.keys(t).forEach(function(e){Xg(t[e]).forEach(function(e){o.hasOwnProperty(e)||r.add(e)})})}}),r.size){var a=Kg(r.values());t.errors.push('state("'.concat(e.name,'", ...) must define default values for all the following style substitutions: ').concat(a.join(", ")))}}return{type:0,name:e.name,style:n,options:i?{params:i}:null}}},{key:"visitTransition",value:function(e,t){t.queryCount=0,t.depCount=0;var n=tm(this,Wg(e.animation),t);return{type:1,matchers:im(e.expr,t.errors),animation:n,queryCount:t.queryCount,depCount:t.depCount,options:dm(e.options)}}},{key:"visitSequence",value:function(e,t){var n=this;return{type:2,steps:e.steps.map(function(e){return tm(n,e,t)}),options:dm(e.options)}}},{key:"visitGroup",value:function(e,t){var n=this,i=t.currentTime,r=0,o=e.steps.map(function(e){t.currentTime=i;var o=tm(n,e,t);return r=Math.max(r,t.currentTime),o});return t.currentTime=r,{type:3,steps:o,options:dm(e.options)}}},{key:"visitAnimate",value:function(e,t){var n=function(e,t){var n=null;if(e.hasOwnProperty("duration"))n=e;else if("number"==typeof e)return fm(Fg(e,t).duration,0,"");var i=e;if(i.split(/\s+/).some(function(e){return"{"==e.charAt(0)&&"{"==e.charAt(1)})){var r=fm(0,0,"");return r.dynamic=!0,r.strValue=i,r}return fm((n=n||Fg(i,t)).duration,n.delay,n.easing)}(e.timings,t.errors);t.currentAnimateTimings=n;var i,r=e.styles?e.styles:ng({});if(5==r.type)i=this.visitKeyframes(r,t);else{var o=e.styles,a=!1;if(!o){a=!0;var s={};n.easing&&(s.easing=n.easing),o=ng(s)}t.currentTime+=n.duration+n.delay;var u=this.visitStyle(o,t);u.isEmptyStep=a,i=u}return t.currentAnimateTimings=null,{type:4,timings:n,style:i,options:null}}},{key:"visitStyle",value:function(e,t){var n=this._makeStyleAst(e,t);return this._validateStyleAst(n,t),n}},{key:"_makeStyleAst",value:function(e,t){var n=[];Array.isArray(e.styles)?e.styles.forEach(function(e){"string"==typeof e?e==Zv?n.push(e):t.errors.push("The provided style string value ".concat(e," is not allowed.")):n.push(e)}):n.push(e.styles);var i=!1,r=null;return n.forEach(function(e){if(hm(e)){var t=e,n=t.easing;if(n&&(r=n,delete t.easing),!i)for(var o in t)if(t[o].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:e.offset,containsDynamicStyles:i,options:null}}},{key:"_validateStyleAst",value:function(e,t){var n=this,i=t.currentAnimateTimings,r=t.currentTime,o=t.currentTime;i&&o>0&&(o-=i.duration+i.delay),e.styles.forEach(function(e){"string"!=typeof e&&Object.keys(e).forEach(function(i){if(n._driver.validateStyleProperty(i)){var a=t.collectedStyles[t.currentQuerySelector],s=a[i],u=!0;s&&(o!=r&&o>=s.startTime&&r<=s.endTime&&(t.errors.push('The CSS property "'.concat(i,'" that exists between the times of "').concat(s.startTime,'ms" and "').concat(s.endTime,'ms" is also being animated in a parallel animation between the times of "').concat(o,'ms" and "').concat(r,'ms"')),u=!1),o=s.startTime),u&&(a[i]={startTime:o,endTime:r}),t.options&&function(e,t,n){var i=t.params||{},r=Xg(e);r.length&&r.forEach(function(e){i.hasOwnProperty(e)||n.push("Unable to resolve the local animation param ".concat(e," in the given list of values"))})}(e[i],t.options,t.errors)}else t.errors.push('The provided animation property "'.concat(i,'" is not a supported CSS property for animations'))})})}},{key:"visitKeyframes",value:function(e,t){var n=this,i={type:5,styles:[],options:null};if(!t.currentAnimateTimings)return t.errors.push("keyframes() must be placed inside of a call to animate()"),i;var r=0,o=[],a=!1,s=!1,u=0,c=e.steps.map(function(e){var i=n._makeStyleAst(e,t),c=null!=i.offset?i.offset:function(e){if("string"==typeof e)return null;var t=null;if(Array.isArray(e))e.forEach(function(e){if(hm(e)&&e.hasOwnProperty("offset")){var n=e;t=parseFloat(n.offset),delete n.offset}});else if(hm(e)&&e.hasOwnProperty("offset")){var n=e;t=parseFloat(n.offset),delete n.offset}return t}(i.styles),l=0;return null!=c&&(r++,l=i.offset=c),s=s||l<0||l>1,a=a||l0&&r0?r==d?1:h*r:o[r],s=a*v;t.currentTime=f+p.delay+s,p.duration=s,n._validateStyleAst(e,t),e.offset=a,i.styles.push(e)}),i}},{key:"visitReference",value:function(e,t){return{type:8,animation:tm(this,Wg(e.animation),t),options:dm(e.options)}}},{key:"visitAnimateChild",value:function(e,t){return t.depCount++,{type:9,options:dm(e.options)}}},{key:"visitAnimateRef",value:function(e,t){return{type:10,animation:this.visitReference(e.animation,t),options:dm(e.options)}}},{key:"visitQuery",value:function(e,n){var i=n.currentQuerySelector,r=e.options||{};n.queryCount++,n.currentQuery=e;var o=t(function(e){var t=!!e.split(/\s*,\s*/).find(function(e){return":self"==e});return t&&(e=e.replace(sm,"")),[e=e.replace(/@\*/g,Rg).replace(/@\w+/g,function(e){return Rg+"-"+e.substr(1)}).replace(/:animating/g,Ng),t]}(e.selector),2),a=o[0],s=o[1];n.currentQuerySelector=i.length?i+" "+a:a,vg(n.collectedStyles,n.currentQuerySelector,{});var u=tm(this,Wg(e.animation),n);return n.currentQuery=null,n.currentQuerySelector=i,{type:11,selector:a,limit:r.limit||0,optional:!!r.optional,includeSelf:s,animation:u,originalSelector:e.selector,options:dm(e.options)}}},{key:"visitStagger",value:function(e,t){t.currentQuery||t.errors.push("stagger() can only be used inside of query()");var n="full"===e.timings?{duration:0,delay:0,easing:"full"}:Fg(e.timings,t.errors,!0);return{type:12,animation:tm(this,Wg(e.animation),t),timings:n,options:null}}}]),e}(),lm=function e(t){m(this,e),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 hm(e){return!Array.isArray(e)&&"object"==typeof e}function dm(e){return e?(e=Bg(e)).params&&(e.params=function(e){return e?Bg(e):null}(e.params)):e={},e}function fm(e,t,n){return{duration:e,delay:t,easing:n}}function pm(e,t,n,i,r,o){var a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,s=arguments.length>7&&void 0!==arguments[7]&&arguments[7];return{type:1,element:e,keyframes:t,preStyleProps:n,postStyleProps:i,duration:r,delay:o,totalTime:r+o,easing:a,subTimeline:s}}var vm=function(){function e(){m(this,e),this._map=new Map}return b(e,[{key:"consume",value:function(e){var t=this._map.get(e);return t?this._map.delete(e):t=[],t}},{key:"append",value:function(e,t){var n,i=this._map.get(e);i||this._map.set(e,i=[]),(n=i).push.apply(n,v(t))}},{key:"has",value:function(e){return this._map.has(e)}},{key:"clear",value:function(){this._map.clear()}}]),e}(),gm=new RegExp(":enter","g"),mm=new RegExp(":leave","g");function ym(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:{},s=arguments.length>7?arguments[7]:void 0,u=arguments.length>8?arguments[8]:void 0,c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];return(new bm).buildKeyframes(e,t,n,i,r,o,a,s,u,c)}var bm=function(){function e(){m(this,e)}return b(e,[{key:"buildKeyframes",value:function(e,t,n,i,r,o,a,s,u){var c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:[];u=u||new vm;var l=new wm(e,t,u,i,r,c,[]);l.options=s,l.currentTimeline.setStyles([o],null,l.errors,s),tm(this,n,l);var h=l.timelines.filter(function(e){return e.containsAnimation()});if(h.length&&Object.keys(a).length){var d=h[h.length-1];d.allowOnlyTimelineStyles()||d.setStyles([a],null,l.errors,s)}return h.length?h.map(function(e){return e.buildKeyframes()}):[pm(t,[],[],[],0,0,"",!1)]}},{key:"visitTrigger",value:function(e,t){}},{key:"visitState",value:function(e,t){}},{key:"visitTransition",value:function(e,t){}},{key:"visitAnimateChild",value:function(e,t){var n=t.subInstructions.consume(t.element);if(n){var i=t.createSubContext(e.options),r=t.currentTimeline.currentTime,o=this._visitSubInstructions(n,i,i.options);r!=o&&t.transformIntoNewTimeline(o)}t.previousNode=e}},{key:"visitAnimateRef",value:function(e,t){var n=t.createSubContext(e.options);n.transformIntoNewTimeline(),this.visitReference(e.animation,n),t.transformIntoNewTimeline(n.currentTimeline.currentTime),t.previousNode=e}},{key:"_visitSubInstructions",value:function(e,t,n){var i=t.currentTimeline.currentTime,r=null!=n.duration?Lg(n.duration):null,o=null!=n.delay?Lg(n.delay):null;return 0!==r&&e.forEach(function(e){var n=t.appendInstructionToTimeline(e,r,o);i=Math.max(i,n.duration+n.delay)}),i}},{key:"visitReference",value:function(e,t){t.updateOptions(e.options,!0),tm(this,e.animation,t),t.previousNode=e}},{key:"visitSequence",value:function(e,t){var n=this,i=t.subContextCount,r=t,o=e.options;if(o&&(o.params||o.delay)&&((r=t.createSubContext(o)).transformIntoNewTimeline(),null!=o.delay)){6==r.previousNode.type&&(r.currentTimeline.snapshotCurrentStyles(),r.previousNode=_m);var a=Lg(o.delay);r.delayNextStep(a)}e.steps.length&&(e.steps.forEach(function(e){return tm(n,e,r)}),r.currentTimeline.applyStylesToKeyframe(),r.subContextCount>i&&r.transformIntoNewTimeline()),t.previousNode=e}},{key:"visitGroup",value:function(e,t){var n=this,i=[],r=t.currentTimeline.currentTime,o=e.options&&e.options.delay?Lg(e.options.delay):0;e.steps.forEach(function(a){var s=t.createSubContext(e.options);o&&s.delayNextStep(o),tm(n,a,s),r=Math.max(r,s.currentTimeline.currentTime),i.push(s.currentTimeline)}),i.forEach(function(e){return t.currentTimeline.mergeTimelineCollectedStyles(e)}),t.transformIntoNewTimeline(r),t.previousNode=e}},{key:"_visitTiming",value:function(e,t){if(e.dynamic){var n=e.strValue;return Fg(t.params?Yg(n,t.params,t.errors):n,t.errors)}return{duration:e.duration,delay:e.delay,easing:e.easing}}},{key:"visitAnimate",value:function(e,t){var n=t.currentAnimateTimings=this._visitTiming(e.timings,t),i=t.currentTimeline;n.delay&&(t.incrementTime(n.delay),i.snapshotCurrentStyles());var r=e.style;5==r.type?this.visitKeyframes(r,t):(t.incrementTime(n.duration),this.visitStyle(r,t),i.applyStylesToKeyframe()),t.currentAnimateTimings=null,t.previousNode=e}},{key:"visitStyle",value:function(e,t){var n=t.currentTimeline,i=t.currentAnimateTimings;!i&&n.getCurrentStyleProperties().length&&n.forwardFrame();var r=i&&i.easing||e.easing;e.isEmptyStep?n.applyEmptyStep(r):n.setStyles(e.styles,r,t.errors,t.options),t.previousNode=e}},{key:"visitKeyframes",value:function(e,t){var n=t.currentAnimateTimings,i=t.currentTimeline.duration,r=n.duration,o=t.createSubContext().currentTimeline;o.easing=n.easing,e.styles.forEach(function(e){o.forwardTime((e.offset||0)*r),o.setStyles(e.styles,e.easing,t.errors,t.options),o.applyStylesToKeyframe()}),t.currentTimeline.mergeTimelineCollectedStyles(o),t.transformIntoNewTimeline(i+r),t.previousNode=e}},{key:"visitQuery",value:function(e,t){var n=this,i=t.currentTimeline.currentTime,r=e.options||{},o=r.delay?Lg(r.delay):0;o&&(6===t.previousNode.type||0==i&&t.currentTimeline.getCurrentStyleProperties().length)&&(t.currentTimeline.snapshotCurrentStyles(),t.previousNode=_m);var a=i,s=t.invokeQuery(e.selector,e.originalSelector,e.limit,e.includeSelf,!!r.optional,t.errors);t.currentQueryTotal=s.length;var u=null;s.forEach(function(i,r){t.currentQueryIndex=r;var s=t.createSubContext(e.options,i);o&&s.delayNextStep(o),i===t.element&&(u=s.currentTimeline),tm(n,e.animation,s),s.currentTimeline.applyStylesToKeyframe(),a=Math.max(a,s.currentTimeline.currentTime)}),t.currentQueryIndex=0,t.currentQueryTotal=0,t.transformIntoNewTimeline(a),u&&(t.currentTimeline.mergeTimelineCollectedStyles(u),t.currentTimeline.snapshotCurrentStyles()),t.previousNode=e}},{key:"visitStagger",value:function(e,t){var n=t.parentContext,i=t.currentTimeline,r=e.timings,o=Math.abs(r.duration),a=o*(t.currentQueryTotal-1),s=o*t.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":s=a-s;break;case"full":s=n.currentStaggerTime}var u=t.currentTimeline;s&&u.delayNextStep(s);var c=u.currentTime;tm(this,e.animation,t),t.previousNode=e,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}]),e}(),_m={},wm=function(){function e(t,n,i,r,o,a,s,u){m(this,e),this._driver=t,this.element=n,this.subInstructions=i,this._enterClassName=r,this._leaveClassName=o,this.errors=a,this.timelines=s,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=_m,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=u||new km(this._driver,n,0),s.push(this.currentTimeline)}return b(e,[{key:"params",get:function(){return this.options.params}},{key:"updateOptions",value:function(e,t){var n=this;if(e){var i=e,r=this.options;null!=i.duration&&(r.duration=Lg(i.duration)),null!=i.delay&&(r.delay=Lg(i.delay));var o=i.params;if(o){var a=r.params;a||(a=this.options.params={}),Object.keys(o).forEach(function(e){(!t||!a.hasOwnProperty(e))&&(a[e]=Yg(o[e],a,n.errors))})}}}},{key:"_copyOptions",value:function(){var e={};if(this.options){var t=this.options.params;if(t){var n=e.params={};Object.keys(t).forEach(function(e){n[e]=t[e]})}}return e}},{key:"createSubContext",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0,r=n||this.element,o=new e(this._driver,r,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(r,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(t),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}},{key:"transformIntoNewTimeline",value:function(e){return this.previousNode=_m,this.currentTimeline=this.currentTimeline.fork(this.element,e),this.timelines.push(this.currentTimeline),this.currentTimeline}},{key:"appendInstructionToTimeline",value:function(e,t,n){var i={duration:null!=t?t:e.duration,delay:this.currentTimeline.currentTime+(null!=n?n:0)+e.delay,easing:""},r=new xm(this._driver,e.element,e.keyframes,e.preStyleProps,e.postStyleProps,i,e.stretchStartingKeyframe);return this.timelines.push(r),i}},{key:"incrementTime",value:function(e){this.currentTimeline.forwardTime(this.currentTimeline.duration+e)}},{key:"delayNextStep",value:function(e){e>0&&this.currentTimeline.delayNextStep(e)}},{key:"invokeQuery",value:function(e,t,n,i,r,o){var a=[];if(i&&a.push(this.element),e.length>0){e=(e=e.replace(gm,"."+this._enterClassName)).replace(mm,"."+this._leaveClassName);var s=this._driver.query(this.element,e,1!=n);0!==n&&(s=n<0?s.slice(s.length+n,s.length):s.slice(0,n)),a.push.apply(a,v(s))}return!r&&0==a.length&&o.push('`query("'.concat(t,'")` returned zero elements. (Use `query("').concat(t,'", { optional: true })` if you wish to allow this.)')),a}}]),e}(),km=function(){function e(t,n,i,r){m(this,e),this._driver=t,this.element=n,this.startTime=i,this._elementTimelineStylesLookup=r,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(n),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(n,this._localTimelineStyles)),this._loadKeyframe()}return b(e,[{key:"containsAnimation",value:function(){switch(this._keyframes.size){case 0:return!1;case 1:return this.getCurrentStyleProperties().length>0;default:return!0}}},{key:"getCurrentStyleProperties",value:function(){return Object.keys(this._currentKeyframe)}},{key:"currentTime",get:function(){return this.startTime+this.duration}},{key:"delayNextStep",value:function(e){var t=1==this._keyframes.size&&Object.keys(this._pendingStyles).length;this.duration||t?(this.forwardTime(this.currentTime+e),t&&this.snapshotCurrentStyles()):this.startTime+=e}},{key:"fork",value:function(t,n){return this.applyStylesToKeyframe(),new e(this._driver,t,n||this.currentTime,this._elementTimelineStylesLookup)}},{key:"_loadKeyframe",value:function(){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))}},{key:"forwardFrame",value:function(){this.duration+=1,this._loadKeyframe()}},{key:"forwardTime",value:function(e){this.applyStylesToKeyframe(),this.duration=e,this._loadKeyframe()}},{key:"_updateStyle",value:function(e,t){this._localTimelineStyles[e]=t,this._globalTimelineStyles[e]=t,this._styleSummary[e]={time:this.currentTime,value:t}}},{key:"allowOnlyTimelineStyles",value:function(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}},{key:"applyEmptyStep",value:function(e){var t=this;e&&(this._previousKeyframe.easing=e),Object.keys(this._globalTimelineStyles).forEach(function(e){t._backFill[e]=t._globalTimelineStyles[e]||Zv,t._currentKeyframe[e]=Zv}),this._currentEmptyStepKeyframe=this._currentKeyframe}},{key:"setStyles",value:function(e,t,n,i){var r=this;t&&(this._previousKeyframe.easing=t);var o=i&&i.params||{},a=function(e,t){var n,i={};return e.forEach(function(e){"*"===e?(n=n||Object.keys(t)).forEach(function(e){i[e]=Zv}):Vg(e,!1,i)}),i}(e,this._globalTimelineStyles);Object.keys(a).forEach(function(e){var t=Yg(a[e],o,n);r._pendingStyles[e]=t,r._localTimelineStyles.hasOwnProperty(e)||(r._backFill[e]=r._globalTimelineStyles.hasOwnProperty(e)?r._globalTimelineStyles[e]:Zv),r._updateStyle(e,t)})}},{key:"applyStylesToKeyframe",value:function(){var e=this,t=this._pendingStyles,n=Object.keys(t);0!=n.length&&(this._pendingStyles={},n.forEach(function(n){e._currentKeyframe[n]=t[n]}),Object.keys(this._localTimelineStyles).forEach(function(t){e._currentKeyframe.hasOwnProperty(t)||(e._currentKeyframe[t]=e._localTimelineStyles[t])}))}},{key:"snapshotCurrentStyles",value:function(){var e=this;Object.keys(this._localTimelineStyles).forEach(function(t){var n=e._localTimelineStyles[t];e._pendingStyles[t]=n,e._updateStyle(t,n)})}},{key:"getFinalKeyframe",value:function(){return this._keyframes.get(this.duration)}},{key:"properties",get:function(){var e=[];for(var t in this._currentKeyframe)e.push(t);return e}},{key:"mergeTimelineCollectedStyles",value:function(e){var t=this;Object.keys(e._styleSummary).forEach(function(n){var i=t._styleSummary[n],r=e._styleSummary[n];(!i||r.time>i.time)&&t._updateStyle(n,r.value)})}},{key:"buildKeyframes",value:function(){var e=this;this.applyStylesToKeyframe();var t=new Set,n=new Set,i=1===this._keyframes.size&&0===this.duration,r=[];this._keyframes.forEach(function(o,a){var s=Vg(o,!0);Object.keys(s).forEach(function(e){var i=s[e];"!"==i?t.add(e):i==Zv&&n.add(e)}),i||(s.offset=a/e.duration),r.push(s)});var o=t.size?Kg(t.values()):[],a=n.size?Kg(n.values()):[];if(i){var s=r[0],u=Bg(s);s.offset=0,u.offset=1,r=[s,u]}return pm(this.element,r,o,a,this.duration,this.startTime,this.easing,!1)}}]),e}(),xm=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s){var u,c=arguments.length>6&&void 0!==arguments[6]&&arguments[6];return m(this,n),(u=t.call(this,e,i,s.delay)).keyframes=r,u.preStyleProps=o,u.postStyleProps=a,u._stretchStartingKeyframe=c,u.timings={duration:s.duration,delay:s.delay,easing:s.easing},u}return b(n,[{key:"containsAnimation",value:function(){return this.keyframes.length>1}},{key:"buildKeyframes",value:function(){var e=this.keyframes,t=this.timings,n=t.delay,i=t.duration,r=t.easing;if(this._stretchStartingKeyframe&&n){var o=[],a=i+n,s=n/a,u=Vg(e[0],!1);u.offset=0,o.push(u);var c=Vg(e[0],!1);c.offset=Sm(s),o.push(c);for(var l=e.length-1,h=1;h<=l;h++){var d=Vg(e[h],!1);d.offset=Sm((n+d.offset*i)/a),o.push(d)}i=a,n=0,r="",e=o}return pm(this.element,e,this.preStyleProps,this.postStyleProps,i,n,r,!0)}}]),n}(km);function Sm(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3,n=Math.pow(10,t-1);return Math.round(e*n)/n}var Em=function e(){m(this,e)},Cm=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"normalizePropertyName",value:function(e,t){return Qg(e)}},{key:"normalizeStyleValue",value:function(e,t,n,i){var r="",o=n.toString().trim();if(Om[t]&&0!==n&&"0"!==n)if("number"==typeof n)r="px";else{var a=n.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&0==a[1].length&&i.push("Please provide a CSS unit value for ".concat(e,":").concat(n))}return o+r}}]),n}(Em),Om=function(e){var t={};return e.forEach(function(e){return t[e]=!0}),t}("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 Tm(e,t,n,i,r,o,a,s,u,c,l,h,d){return{type:0,element:e,triggerName:t,isRemovalTransition:r,fromState:n,fromStyles:o,toState:i,toStyles:a,timelines:s,queriedElements:u,preStyleProps:c,postStyleProps:l,totalTime:h,errors:d}}var Am={},Pm=function(){function e(t,n,i){m(this,e),this._triggerName=t,this.ast=n,this._stateStyles=i}return b(e,[{key:"match",value:function(e,t,n,i){return function(e,t,n,i,r){return e.some(function(e){return e(t,n,i,r)})}(this.ast.matchers,e,t,n,i)}},{key:"buildStyles",value:function(e,t,n){var i=this._stateStyles["*"],r=this._stateStyles[e],o=i?i.buildStyles(t,n):{};return r?r.buildStyles(t,n):o}},{key:"build",value:function(e,t,n,i,r,o,a,s,u,c){var l=[],h=this.ast.options&&this.ast.options.params||Am,d=this.buildStyles(n,a&&a.params||Am,l),f=s&&s.params||Am,p=this.buildStyles(i,f,l),v=new Set,g=new Map,m=new Map,y="void"===i,b={params:Object.assign(Object.assign({},h),f)},_=c?[]:ym(e,t,this.ast.animation,r,o,d,p,b,u,l),w=0;if(_.forEach(function(e){w=Math.max(e.duration+e.delay,w)}),l.length)return Tm(t,this._triggerName,n,i,y,d,p,[],[],g,m,w,l);_.forEach(function(e){var n=e.element,i=vg(g,n,{});e.preStyleProps.forEach(function(e){return i[e]=!0});var r=vg(m,n,{});e.postStyleProps.forEach(function(e){return r[e]=!0}),n!==t&&v.add(n)});var k=Kg(v.values());return Tm(t,this._triggerName,n,i,y,d,p,_,k,g,m,w)}}]),e}(),Mm=function(){function e(t,n,i){m(this,e),this.styles=t,this.defaultParams=n,this.normalizer=i}return b(e,[{key:"buildStyles",value:function(e,t){var n=this,i={},r=Bg(this.defaultParams);return Object.keys(e).forEach(function(t){var n=e[t];null!=n&&(r[t]=n)}),this.styles.styles.forEach(function(e){if("string"!=typeof e){var o=e;Object.keys(o).forEach(function(e){var a=o[e];a.length>1&&(a=Yg(a,r,t));var s=n.normalizer.normalizePropertyName(e,t);a=n.normalizer.normalizeStyleValue(e,s,a,t),i[s]=a})}}),i}}]),e}(),Im=function(){function e(t,n,i){var r=this;m(this,e),this.name=t,this.ast=n,this._normalizer=i,this.transitionFactories=[],this.states={},n.states.forEach(function(e){r.states[e.name]=new Mm(e.style,e.options&&e.options.params||{},i)}),Rm(this.states,"true","1"),Rm(this.states,"false","0"),n.transitions.forEach(function(e){r.transitionFactories.push(new Pm(t,e,r.states))}),this.fallbackTransition=function(e,t,n){return new Pm(e,{type:1,animation:{type:2,steps:[],options:null},matchers:[function(e,t){return!0}],options:null,queryCount:0,depCount:0},t)}(t,this.states)}return b(e,[{key:"containsQueries",get:function(){return this.ast.queryCount>0}},{key:"matchTransition",value:function(e,t,n,i){return this.transitionFactories.find(function(r){return r.match(e,t,n,i)})||null}},{key:"matchStyles",value:function(e,t,n){return this.fallbackTransition.buildStyles(e,t,n)}}]),e}();function Rm(e,t,n){e.hasOwnProperty(t)?e.hasOwnProperty(n)||(e[n]=e[t]):e.hasOwnProperty(n)&&(e[t]=e[n])}var Dm=new vm,Nm=function(){function e(t,n,i){m(this,e),this.bodyNode=t,this._driver=n,this._normalizer=i,this._animations={},this._playersById={},this.players=[]}return b(e,[{key:"register",value:function(e,t){var n=[],i=um(this._driver,t,n);if(n.length)throw new Error("Unable to build the animation due to the following errors: ".concat(n.join("\n")));this._animations[e]=i}},{key:"_buildPlayer",value:function(e,t,n){var i=e.element,r=hg(0,this._normalizer,0,e.keyframes,t,n);return this._driver.animate(i,r,e.duration,e.delay,e.easing,[],!0)}},{key:"create",value:function(e,t){var n,i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=[],a=this._animations[e],s=new Map;if(a?(n=ym(this._driver,t,a,Pg,Mg,{},{},r,Dm,o)).forEach(function(e){var t=vg(s,e.element,{});e.postStyleProps.forEach(function(e){return t[e]=null})}):(o.push("The requested animation doesn't exist or has already been destroyed"),n=[]),o.length)throw new Error("Unable to create the animation due to the following errors: ".concat(o.join("\n")));s.forEach(function(e,t){Object.keys(e).forEach(function(n){e[n]=i._driver.computeStyle(t,n,Zv)})});var u=lg(n.map(function(e){var t=s.get(e.element);return i._buildPlayer(e,{},t)}));return this._playersById[e]=u,u.onDestroy(function(){return i.destroy(e)}),this.players.push(u),u}},{key:"destroy",value:function(e){var t=this._getPlayer(e);t.destroy(),delete this._playersById[e];var n=this.players.indexOf(t);n>=0&&this.players.splice(n,1)}},{key:"_getPlayer",value:function(e){var t=this._playersById[e];if(!t)throw new Error("Unable to find the timeline player referenced by ".concat(e));return t}},{key:"listen",value:function(e,t,n,i){var r=pg(t,"","","");return dg(this._getPlayer(e),n,r,i),function(){}}},{key:"command",value:function(e,t,n,i){if("register"!=n)if("create"!=n){var r=this._getPlayer(e);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(e)}}else this.create(e,t,i[0]||{});else this.register(e,i[0])}}]),e}(),Lm="ng-animate-queued",jm="ng-animate-disabled",Fm=".ng-animate-disabled",Bm=[],Vm={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},zm={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Um="__ng_removed",Hm=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";m(this,e),this.namespaceId=n;var i=t&&t.hasOwnProperty("value");if(this.value=function(e){return null!=e?e:null}(i?t.value:t),i){var r=Bg(t);delete r.value,this.options=r}else this.options={};this.options.params||(this.options.params={})}return b(e,[{key:"params",get:function(){return this.options.params}},{key:"absorbOptions",value:function(e){var t=e.params;if(t){var n=this.options.params;Object.keys(t).forEach(function(e){null==n[e]&&(n[e]=t[e])})}}}]),e}(),Gm="void",Wm=new Hm(Gm),qm=function(){function e(t,n,i){m(this,e),this.id=t,this.hostElement=n,this._engine=i,this.players=[],this._triggers={},this._queue=[],this._elementListeners=new Map,this._hostClassName="ng-tns-"+t,ey(n,this._hostClassName)}return b(e,[{key:"listen",value:function(e,t,n,i){var r=this;if(!this._triggers.hasOwnProperty(t))throw new Error('Unable to listen on the animation trigger event "'.concat(n,'" because the animation trigger "').concat(t,"\" doesn't exist!"));if(null==n||0==n.length)throw new Error('Unable to listen on the animation trigger "'.concat(t,'" because the provided event is undefined!'));if(!function(e){return"start"==e||"done"==e}(n))throw new Error('The provided animation trigger event "'.concat(n,'" for the animation trigger "').concat(t,'" is not supported!'));var o=vg(this._elementListeners,e,[]),a={name:t,phase:n,callback:i};o.push(a);var s=vg(this._engine.statesByElement,e,{});return s.hasOwnProperty(t)||(ey(e,Ig),ey(e,Ig+"-"+t),s[t]=Wm),function(){r._engine.afterFlush(function(){var e=o.indexOf(a);e>=0&&o.splice(e,1),r._triggers[t]||delete s[t]})}}},{key:"register",value:function(e,t){return!this._triggers[e]&&(this._triggers[e]=t,!0)}},{key:"_getTrigger",value:function(e){var t=this._triggers[e];if(!t)throw new Error('The provided animation trigger "'.concat(e,'" has not been registered!'));return t}},{key:"trigger",value:function(e,t,n){var i=this,r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=this._getTrigger(t),a=new Ym(this.id,t,e),s=this._engine.statesByElement.get(e);s||(ey(e,Ig),ey(e,Ig+"-"+t),this._engine.statesByElement.set(e,s={}));var u=s[t],c=new Hm(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&u&&c.absorbOptions(u.options),s[t]=c,u||(u=Wm),c.value===Gm||u.value!==c.value){var l=vg(this._engine.playersByElement,e,[]);l.forEach(function(e){e.namespaceId==i.id&&e.triggerName==t&&e.queued&&e.destroy()});var h=o.matchTransition(u.value,c.value,e,c.params),d=!1;if(!h){if(!r)return;h=o.fallbackTransition,d=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:e,triggerName:t,transition:h,fromState:u,toState:c,player:a,isFallbackTransition:d}),d||(ey(e,Lm),a.onStart(function(){ty(e,Lm)})),a.onDone(function(){var t=i.players.indexOf(a);t>=0&&i.players.splice(t,1);var n=i._engine.playersByElement.get(e);if(n){var r=n.indexOf(a);r>=0&&n.splice(r,1)}}),this.players.push(a),l.push(a),a}if(!function(e,t){var n=Object.keys(e),i=Object.keys(t);if(n.length!=i.length)return!1;for(var r=0;r=0){for(var i=!1,r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,t)){this._namespaceList.splice(r+1,0,e),i=!0;break}i||this._namespaceList.splice(0,0,e)}else this._namespaceList.push(e);return this.namespacesByHostElement.set(t,e),e}},{key:"register",value:function(e,t){var n=this._namespaceLookup[e];return n||(n=this.createNamespace(e,t)),n}},{key:"registerTrigger",value:function(e,t,n){var i=this._namespaceLookup[e];i&&i.register(t,n)&&this.totalAnimations++}},{key:"destroy",value:function(e,t){var n=this;if(e){var i=this._fetchNamespace(e);this.afterFlush(function(){n.namespacesByHostElement.delete(i.hostElement),delete n._namespaceLookup[e];var t=n._namespaceList.indexOf(i);t>=0&&n._namespaceList.splice(t,1)}),this.afterFlushAnimationsDone(function(){return i.destroy(t)})}}},{key:"_fetchNamespace",value:function(e){return this._namespaceLookup[e]}},{key:"fetchNamespacesByElement",value:function(e){var t=new Set,n=this.statesByElement.get(e);if(n)for(var i=Object.keys(n),r=0;r=0&&this.collectedLeaveElements.splice(o,1)}if(e){var a=this._fetchNamespace(e);a&&a.insertNode(t,n)}i&&this.collectEnterElement(t)}}},{key:"collectEnterElement",value:function(e){this.collectedEnterElements.push(e)}},{key:"markElementAsDisabled",value:function(e,t){t?this.disabledNodes.has(e)||(this.disabledNodes.add(e),ey(e,jm)):this.disabledNodes.has(e)&&(this.disabledNodes.delete(e),ty(e,jm))}},{key:"removeNode",value:function(e,t,n,i){if(Km(t)){var r=e?this._fetchNamespace(e):null;if(r?r.removeNode(t,i):this.markElementAsRemoved(e,t,!1,i),n){var o=this.namespacesByHostElement.get(t);o&&o.id!==e&&o.removeNode(t,i)}}else this._onRemovalComplete(t,i)}},{key:"markElementAsRemoved",value:function(e,t,n,i){this.collectedLeaveElements.push(t),t[Um]={namespaceId:e,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}},{key:"listen",value:function(e,t,n,i,r){return Km(t)?this._fetchNamespace(e).listen(t,n,i,r):function(){}}},{key:"_buildInstruction",value:function(e,t,n,i,r){return e.transition.build(this.driver,e.element,e.fromState.value,e.toState.value,n,i,e.fromState.options,e.toState.options,t,r)}},{key:"destroyInnerAnimations",value:function(e){var t=this,n=this.driver.query(e,Rg,!0);n.forEach(function(e){return t.destroyActiveAnimationsForElement(e)}),0!=this.playersByQueriedElement.size&&(n=this.driver.query(e,Ng,!0)).forEach(function(e){return t.finishActiveQueriedAnimationOnElement(e)})}},{key:"destroyActiveAnimationsForElement",value:function(e){var t=this.playersByElement.get(e);t&&t.forEach(function(e){e.queued?e.markedForDestroy=!0:e.destroy()})}},{key:"finishActiveQueriedAnimationOnElement",value:function(e){var t=this.playersByQueriedElement.get(e);t&&t.forEach(function(e){return e.finish()})}},{key:"whenRenderingDone",value:function(){var e=this;return new Promise(function(t){if(e.players.length)return lg(e.players).onDone(function(){return t()});t()})}},{key:"processLeaveNode",value:function(e){var t=this,n=e[Um];if(n&&n.setForRemoval){if(e[Um]=Vm,n.namespaceId){this.destroyInnerAnimations(e);var i=this._fetchNamespace(n.namespaceId);i&&i.clearElementCache(e)}this._onRemovalComplete(e,n.setForRemoval)}this.driver.matchesElement(e,Fm)&&this.markElementAsDisabled(e,!1),this.driver.query(e,Fm,!0).forEach(function(e){t.markElementAsDisabled(e,!1)})}},{key:"flush",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:-1,n=[];if(this.newHostElements.size&&(this.newHostElements.forEach(function(t,n){return e._balanceNamespaceList(t,n)}),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(var i=0;i=0;O--)this._namespaceList[O].drainQueuedTransitions(t).forEach(function(e){var t=e.player,o=e.element;if(E.push(t),n.collectedEnterElements.length){var l=o[Um];if(l&&l.setForMove)return void t.destroy()}var d=!h||!n.driver.containsElement(h,o),f=x.get(o),v=p.get(o),g=n._buildInstruction(e,i,v,f,d);if(g.errors&&g.errors.length)C.push(g);else{if(d)return t.onStart(function(){return Gg(o,g.fromStyles)}),t.onDestroy(function(){return Hg(o,g.toStyles)}),void r.push(t);if(e.isFallbackTransition)return t.onStart(function(){return Gg(o,g.fromStyles)}),t.onDestroy(function(){return Hg(o,g.toStyles)}),void r.push(t);g.timelines.forEach(function(e){return e.stretchStartingKeyframe=!0}),i.append(o,g.timelines),a.push({instruction:g,player:t,element:o}),g.queriedElements.forEach(function(e){return vg(s,e,[]).push(t)}),g.preStyleProps.forEach(function(e,t){var n=Object.keys(e);if(n.length){var i=u.get(t);i||u.set(t,i=new Set),n.forEach(function(e){return i.add(e)})}}),g.postStyleProps.forEach(function(e,t){var n=Object.keys(e),i=c.get(t);i||c.set(t,i=new Set),n.forEach(function(e){return i.add(e)})})}});if(C.length){var T=[];C.forEach(function(e){T.push("@".concat(e.triggerName," has failed due to:\n")),e.errors.forEach(function(e){return T.push("- ".concat(e,"\n"))})}),E.forEach(function(e){return e.destroy()}),this.reportError(T)}var A=new Map,P=new Map;a.forEach(function(e){var t=e.element;i.has(t)&&(P.set(t,t),n._beforeAnimationBuild(e.player.namespaceId,e.instruction,A))}),r.forEach(function(e){var t=e.element;n._getPreviousPlayers(t,!1,e.namespaceId,e.triggerName,null).forEach(function(e){vg(A,t,[]).push(e),e.destroy()})});var M=m.filter(function(e){return ry(e,u,c)}),I=new Map;Qm(I,this.driver,b,c,Zv).forEach(function(e){ry(e,u,c)&&M.push(e)});var R=new Map;f.forEach(function(e,t){Qm(R,n.driver,new Set(e),u,"!")}),M.forEach(function(e){var t=I.get(e),n=R.get(e);I.set(e,Object.assign(Object.assign({},t),n))});var D=[],N=[],L={};a.forEach(function(e){var t=e.element,a=e.player,s=e.instruction;if(i.has(t)){if(l.has(t))return a.onDestroy(function(){return Hg(t,s.toStyles)}),a.disabled=!0,a.overrideTotalTime(s.totalTime),void r.push(a);var u=L;if(P.size>1){for(var c=t,h=[];c=c.parentNode;){var d=P.get(c);if(d){u=d;break}h.push(c)}h.forEach(function(e){return P.set(e,u)})}var f=n._buildAnimation(a.namespaceId,s,A,o,R,I);if(a.setRealPlayer(f),u===L)D.push(a);else{var p=n.playersByElement.get(u);p&&p.length&&(a.parentPlayer=lg(p)),r.push(a)}}else Gg(t,s.fromStyles),a.onDestroy(function(){return Hg(t,s.toStyles)}),N.push(a),l.has(t)&&r.push(a)}),N.forEach(function(e){var t=o.get(e.element);if(t&&t.length){var n=lg(t);e.setRealPlayer(n)}}),r.forEach(function(e){e.parentPlayer?e.syncPlayerEvents(e.parentPlayer):e.destroy()});for(var j=0;j0?this.driver.animate(e.element,t,e.duration,e.delay,e.easing,n):new ag(e.duration,e.delay)}}]),e}(),Ym=function(){function e(t,n,i){m(this,e),this.namespaceId=t,this.triggerName=n,this.element=i,this._player=new ag,this._containsRealPlayer=!1,this._queuedCallbacks={},this.destroyed=!1,this.markedForDestroy=!1,this.disabled=!1,this.queued=!0,this.totalTime=0}return b(e,[{key:"setRealPlayer",value:function(e){var t=this;this._containsRealPlayer||(this._player=e,Object.keys(this._queuedCallbacks).forEach(function(n){t._queuedCallbacks[n].forEach(function(t){return dg(e,n,void 0,t)})}),this._queuedCallbacks={},this._containsRealPlayer=!0,this.overrideTotalTime(e.totalTime),this.queued=!1)}},{key:"getRealPlayer",value:function(){return this._player}},{key:"overrideTotalTime",value:function(e){this.totalTime=e}},{key:"syncPlayerEvents",value:function(e){var t=this,n=this._player;n.triggerCallback&&e.onStart(function(){return n.triggerCallback("start")}),e.onDone(function(){return t.finish()}),e.onDestroy(function(){return t.destroy()})}},{key:"_queueEvent",value:function(e,t){vg(this._queuedCallbacks,e,[]).push(t)}},{key:"onDone",value:function(e){this.queued&&this._queueEvent("done",e),this._player.onDone(e)}},{key:"onStart",value:function(e){this.queued&&this._queueEvent("start",e),this._player.onStart(e)}},{key:"onDestroy",value:function(e){this.queued&&this._queueEvent("destroy",e),this._player.onDestroy(e)}},{key:"init",value:function(){this._player.init()}},{key:"hasStarted",value:function(){return!this.queued&&this._player.hasStarted()}},{key:"play",value:function(){!this.queued&&this._player.play()}},{key:"pause",value:function(){!this.queued&&this._player.pause()}},{key:"restart",value:function(){!this.queued&&this._player.restart()}},{key:"finish",value:function(){this._player.finish()}},{key:"destroy",value:function(){this.destroyed=!0,this._player.destroy()}},{key:"reset",value:function(){!this.queued&&this._player.reset()}},{key:"setPosition",value:function(e){this.queued||this._player.setPosition(e)}},{key:"getPosition",value:function(){return this.queued?0:this._player.getPosition()}},{key:"triggerCallback",value:function(e){var t=this._player;t.triggerCallback&&t.triggerCallback(e)}}]),e}();function Km(e){return e&&1===e.nodeType}function $m(e,t){var n=e.style.display;return e.style.display=null!=t?t:"none",n}function Qm(e,t,n,i,r){var o=[];n.forEach(function(e){return o.push($m(e))});var a=[];i.forEach(function(n,i){var o={};n.forEach(function(e){var n=o[e]=t.computeStyle(i,e,r);(!n||0==n.length)&&(i[Um]=zm,a.push(i))}),e.set(i,o)});var s=0;return n.forEach(function(e){return $m(e,o[s++])}),a}function Zm(e,t){var n=new Map;if(e.forEach(function(e){return n.set(e,[])}),0==t.length)return n;var i=new Set(t),r=new Map;function o(e){if(!e)return 1;var t=r.get(e);if(t)return t;var a=e.parentNode;return t=n.has(a)?a:i.has(a)?1:o(a),r.set(e,t),t}return t.forEach(function(e){var t=o(e);1!==t&&n.get(t).push(e)}),n}var Jm="$$classes";function ey(e,t){if(e.classList)e.classList.add(t);else{var n=e[Jm];n||(n=e[Jm]={}),n[t]=!0}}function ty(e,t){if(e.classList)e.classList.remove(t);else{var n=e[Jm];n&&delete n[t]}}function ny(e,t,n){lg(n).onDone(function(){return e.processLeaveNode(t)})}function iy(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:-1;this._transitionEngine.flush(e)}},{key:"players",get:function(){return this._transitionEngine.players.concat(this._timelineEngine.players)}},{key:"whenRenderingDone",value:function(){return this._transitionEngine.whenRenderingDone()}}]),e}();function ay(e,t){var n=null,i=null;return Array.isArray(t)&&t.length?(n=uy(t[0]),t.length>1&&(i=uy(t[t.length-1]))):t&&(n=uy(t)),n||i?new sy(e,n,i):null}var sy=function(){function e(t,n,i){m(this,e),this._element=t,this._startStyles=n,this._endStyles=i,this._state=0;var r=e.initialStylesByElement.get(t);r||e.initialStylesByElement.set(t,r={}),this._initialStyles=r}return b(e,[{key:"start",value:function(){this._state<1&&(this._startStyles&&Hg(this._element,this._startStyles,this._initialStyles),this._state=1)}},{key:"finish",value:function(){this.start(),this._state<2&&(Hg(this._element,this._initialStyles),this._endStyles&&(Hg(this._element,this._endStyles),this._endStyles=null),this._state=1)}},{key:"destroy",value:function(){this.finish(),this._state<3&&(e.initialStylesByElement.delete(this._element),this._startStyles&&(Gg(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Gg(this._element,this._endStyles),this._endStyles=null),Hg(this._element,this._initialStyles),this._state=3)}}]),e}();function uy(e){for(var t=null,n=Object.keys(e),i=0;i=this._delay&&n>=this._duration&&this.finish()}},{key:"finish",value:function(){this._finished||(this._finished=!0,this._onDoneFn(),gy(this._element,this._eventFn,!0))}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this.finish(),function(e,t){var n=yy(e,"").split(","),i=vy(n,t);i>=0&&(n.splice(i,1),my(e,"",n.join(",")))}(this._element,this._name))}}]),e}();function fy(e,t,n){my(e,"PlayState",n,py(e,t))}function py(e,t){var n=yy(e,"");return n.indexOf(",")>0?vy(n.split(","),t):vy([n],t)}function vy(e,t){for(var n=0;n=0)return n;return-1}function gy(e,t,n){n?e.removeEventListener(hy,t):e.addEventListener(hy,t)}function my(e,t,n,i){var r=ly+t;if(null!=i){var o=e.style[r];if(o.length){var a=o.split(",");a[i]=n,n=a.join(",")}}e.style[r]=n}function yy(e,t){return e.style[ly+t]||""}var by=function(){function e(t,n,i,r,o,a,s,u){m(this,e),this.element=t,this.keyframes=n,this.animationName=i,this._duration=r,this._delay=o,this._finalStyles=s,this._specialStyles=u,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=a||"linear",this.totalTime=r+o,this._buildStyler()}return b(e,[{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"destroy",value:function(){this.init(),!(this._state>=4)&&(this._state=4,this._styler.destroy(),this._flushStartFns(),this._flushDoneFns(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"_flushDoneFns",value:function(){this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[]}},{key:"_flushStartFns",value:function(){this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[]}},{key:"finish",value:function(){this.init(),!(this._state>=3)&&(this._state=3,this._styler.finish(),this._flushStartFns(),this._specialStyles&&this._specialStyles.finish(),this._flushDoneFns())}},{key:"setPosition",value:function(e){this._styler.setPosition(e)}},{key:"getPosition",value:function(){return this._styler.getPosition()}},{key:"hasStarted",value:function(){return this._state>=2}},{key:"init",value:function(){this._state>=1||(this._state=1,this._styler.apply(),this._delay&&this._styler.pause())}},{key:"play",value:function(){this.init(),this.hasStarted()||(this._flushStartFns(),this._state=2,this._specialStyles&&this._specialStyles.start()),this._styler.resume()}},{key:"pause",value:function(){this.init(),this._styler.pause()}},{key:"restart",value:function(){this.reset(),this.play()}},{key:"reset",value:function(){this._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}},{key:"_buildStyler",value:function(){var e=this;this._styler=new dy(this.element,this.animationName,this._duration,this._delay,this.easing,"forwards",function(){return e.finish()})}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}},{key:"beforeDestroy",value:function(){var e=this;this.init();var t={};if(this.hasStarted()){var n=this._state>=3;Object.keys(this._finalStyles).forEach(function(i){"offset"!=i&&(t[i]=n?e._finalStyles[i]:nm(e.element,i))})}this.currentSnapshot=t}}]),e}(),_y=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this)).element=e,r._startingStyles={},r.__initialized=!1,r._styles=Og(t),r}return b(i,[{key:"init",value:function(){var t=this;this.__initialized||!this._startingStyles||(this.__initialized=!0,Object.keys(this._styles).forEach(function(e){t._startingStyles[e]=t.element.style[e]}),e(p(i.prototype),"init",this).call(this))}},{key:"play",value:function(){var t=this;!this._startingStyles||(this.init(),Object.keys(this._styles).forEach(function(e){return t.element.style.setProperty(e,t._styles[e])}),e(p(i.prototype),"play",this).call(this))}},{key:"destroy",value:function(){var t=this;!this._startingStyles||(Object.keys(this._startingStyles).forEach(function(e){var n=t._startingStyles[e];n?t.element.style.setProperty(e,n):t.element.style.removeProperty(e)}),this._startingStyles=null,e(p(i.prototype),"destroy",this).call(this))}}]),i}(ag),wy=function(){function e(){m(this,e),this._count=0}return b(e,[{key:"validateStyleProperty",value:function(e){return xg(e)}},{key:"matchesElement",value:function(e,t){return Sg(e,t)}},{key:"containsElement",value:function(e,t){return Eg(e,t)}},{key:"query",value:function(e,t,n){return Cg(e,t,n)}},{key:"computeStyle",value:function(e,t,n){return window.getComputedStyle(e)[t]}},{key:"buildKeyframeElement",value:function(e,t,n){n=n.map(function(e){return Og(e)});var i="@keyframes ".concat(t," {\n"),r="";n.forEach(function(e){r=" ";var t=parseFloat(e.offset);i+="".concat(r).concat(100*t,"% {\n"),r+=" ",Object.keys(e).forEach(function(t){var n=e[t];switch(t){case"offset":return;case"easing":return void(n&&(i+="".concat(r,"animation-timing-function: ").concat(n,";\n")));default:return void(i+="".concat(r).concat(t,": ").concat(n,";\n"))}}),i+="".concat(r,"}\n")}),i+="}\n";var o=document.createElement("style");return o.textContent=i,o}},{key:"animate",value:function(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=o.filter(function(e){return e instanceof by}),s={};Jg(n,i)&&a.forEach(function(e){var t=e.currentSnapshot;Object.keys(t).forEach(function(e){return s[e]=t[e]})});var u=function(e){var t={};return e&&(Array.isArray(e)?e:[e]).forEach(function(e){Object.keys(e).forEach(function(n){"offset"==n||"easing"==n||(t[n]=e[n])})}),t}(t=em(e,t,s));if(0==n)return new _y(e,u);var c="gen_css_kf_"+this._count++,l=this.buildKeyframeElement(e,c,t);(function(e){var t,n=null===(t=e.getRootNode)||void 0===t?void 0:t.call(e);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head})(e).appendChild(l);var h=ay(e,t),d=new by(e,t,c,n,i,r,u,h);return d.onDestroy(function(){return function(e){e.parentNode.removeChild(e)}(l)}),d}}]),e}(),ky=function(){function e(t,n,i,r){m(this,e),this.element=t,this.keyframes=n,this.options=i,this._specialStyles=r,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=i.duration,this._delay=i.delay||0,this.time=this._duration+this._delay}return b(e,[{key:"_onFinish",value:function(){this._finished||(this._finished=!0,this._onDoneFns.forEach(function(e){return e()}),this._onDoneFns=[])}},{key:"init",value:function(){this._buildPlayer(),this._preparePlayerBeforeStart()}},{key:"_buildPlayer",value:function(){var e=this;if(!this._initialized){this._initialized=!0;var t=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,t,this.options),this._finalKeyframe=t.length?t[t.length-1]:{},this.domPlayer.addEventListener("finish",function(){return e._onFinish()})}}},{key:"_preparePlayerBeforeStart",value:function(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}},{key:"_triggerWebAnimation",value:function(e,t,n){return e.animate(t,n)}},{key:"onStart",value:function(e){this._onStartFns.push(e)}},{key:"onDone",value:function(e){this._onDoneFns.push(e)}},{key:"onDestroy",value:function(e){this._onDestroyFns.push(e)}},{key:"play",value:function(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(function(e){return e()}),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}},{key:"pause",value:function(){this.init(),this.domPlayer.pause()}},{key:"finish",value:function(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}},{key:"reset",value:function(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1}},{key:"_resetDomPlayerState",value:function(){this.domPlayer&&this.domPlayer.cancel()}},{key:"restart",value:function(){this.reset(),this.play()}},{key:"hasStarted",value:function(){return this._started}},{key:"destroy",value:function(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(function(e){return e()}),this._onDestroyFns=[])}},{key:"setPosition",value:function(e){void 0===this.domPlayer&&this.init(),this.domPlayer.currentTime=e*this.time}},{key:"getPosition",value:function(){return this.domPlayer.currentTime/this.time}},{key:"totalTime",get:function(){return this._delay+this._duration}},{key:"beforeDestroy",value:function(){var e=this,t={};this.hasStarted()&&Object.keys(this._finalKeyframe).forEach(function(n){"offset"!=n&&(t[n]=e._finished?e._finalKeyframe[n]:nm(e.element,n))}),this.currentSnapshot=t}},{key:"triggerCallback",value:function(e){var t="start"==e?this._onStartFns:this._onDoneFns;t.forEach(function(e){return e()}),t.length=0}}]),e}(),xy=function(){function e(){m(this,e),this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(Sy().toString()),this._cssKeyframesDriver=new wy}return b(e,[{key:"validateStyleProperty",value:function(e){return xg(e)}},{key:"matchesElement",value:function(e,t){return Sg(e,t)}},{key:"containsElement",value:function(e,t){return Eg(e,t)}},{key:"query",value:function(e,t,n){return Cg(e,t,n)}},{key:"computeStyle",value:function(e,t,n){return window.getComputedStyle(e)[t]}},{key:"overrideWebAnimationsSupport",value:function(e){this._isNativeImpl=e}},{key:"animate",value:function(e,t,n,i,r){var o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=arguments.length>6?arguments[6]:void 0;if(!a&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(e,t,n,i,r,o);var s={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(s.easing=r);var u={},c=o.filter(function(e){return e instanceof ky});Jg(n,i)&&c.forEach(function(e){var t=e.currentSnapshot;Object.keys(t).forEach(function(e){return u[e]=t[e]})});var l=ay(e,t=em(e,t=t.map(function(e){return Vg(e,!1)}),u));return new ky(e,t,s,l)}}]),e}();function Sy(){return ug()&&Element.prototype.animate||{}}var Ey=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this))._nextAnimationId=0,r._renderer=e.createRenderer(i.body,{id:"0",encapsulation:ct.None,styles:[],data:{animation:[]}}),r}return b(n,[{key:"build",value:function(e){var t=this._nextAnimationId.toString();this._nextAnimationId++;var n=Array.isArray(e)?tg(e):e;return Ty(this._renderer,null,t,"register",[n]),new Cy(t,this._renderer)}}]),n}(Qv);return e.\u0275fac=function(t){return new(t||e)(Ki($u),Ki(hh))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Cy=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this))._id=e,r._renderer=i,r}return b(n,[{key:"create",value:function(e,t){return new Oy(this._id,e,t||{},this._renderer)}}]),n}(function(){return function e(){m(this,e)}}()),Oy=function(){function e(t,n,i,r){m(this,e),this.id=t,this.element=n,this._renderer=r,this.parentPlayer=null,this._started=!1,this.totalTime=0,this._command("create",i)}return b(e,[{key:"_listen",value:function(e,t){return this._renderer.listen(this.element,"@@".concat(this.id,":").concat(e),t)}},{key:"_command",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i=0&&e3&&void 0!==arguments[3])||arguments[3];this.delegate.insertBefore(e,t,n),this.engine.onInsert(this.namespaceId,t,e,i)}},{key:"removeChild",value:function(e,t,n){this.engine.onRemove(this.namespaceId,t,this.delegate,n)}},{key:"selectRootElement",value:function(e,t){return this.delegate.selectRootElement(e,t)}},{key:"parentNode",value:function(e){return this.delegate.parentNode(e)}},{key:"nextSibling",value:function(e){return this.delegate.nextSibling(e)}},{key:"setAttribute",value:function(e,t,n,i){this.delegate.setAttribute(e,t,n,i)}},{key:"removeAttribute",value:function(e,t,n){this.delegate.removeAttribute(e,t,n)}},{key:"addClass",value:function(e,t){this.delegate.addClass(e,t)}},{key:"removeClass",value:function(e,t){this.delegate.removeClass(e,t)}},{key:"setStyle",value:function(e,t,n,i){this.delegate.setStyle(e,t,n,i)}},{key:"removeStyle",value:function(e,t,n){this.delegate.removeStyle(e,t,n)}},{key:"setProperty",value:function(e,t,n){"@"==t.charAt(0)&&t==Ay?this.disableAnimations(e,!!n):this.delegate.setProperty(e,t,n)}},{key:"setValue",value:function(e,t){this.delegate.setValue(e,t)}},{key:"listen",value:function(e,t,n){return this.delegate.listen(e,t,n)}},{key:"disableAnimations",value:function(e,t){this.engine.disableAnimations(e,t)}}]),e}(),Iy=function(e){a(i,e);var n=s(i);function i(e,t,r,o){var a;return m(this,i),(a=n.call(this,t,r,o)).factory=e,a.namespaceId=t,a}return b(i,[{key:"setProperty",value:function(e,t,n){"@"==t.charAt(0)?"."==t.charAt(1)&&t==Ay?this.disableAnimations(e,n=void 0===n||!!n):this.engine.process(this.namespaceId,e,t.substr(1),n):this.delegate.setProperty(e,t,n)}},{key:"listen",value:function(e,n,i){var r=this;if("@"==n.charAt(0)){var o,a=function(e){switch(e){case"body":return document.body;case"document":return document;case"window":return window;default:return e}}(e),s=n.substr(1),u="";return"@"!=s.charAt(0)&&(s=(o=t(function(e){var t=e.indexOf(".");return[e.substring(0,t),e.substr(t+1)]}(s),2))[0],u=o[1]),this.engine.listen(this.namespaceId,a,s,u,function(e){r.factory.scheduleListenerCallback(e._data||-1,i,e)})}return this.delegate.listen(e,n,i)}}]),i}(My),Ry=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){return m(this,n),t.call(this,e.body,i,r)}return b(n,[{key:"ngOnDestroy",value:function(){this.flush()}}]),n}(oy);return e.\u0275fac=function(t){return new(t||e)(Ki(hh),Ki(Ag),Ki(Em))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Dy=new Pi("AnimationModuleType"),Ny=[{provide:Qv,useClass:Ey},{provide:Em,useFactory:function(){return new Cm}},{provide:oy,useClass:Ry},{provide:$u,useFactory:function(e,t,n){return new Py(e,t,n)},deps:[vd,oy,Bl]}],Ly=[{provide:Ag,useFactory:function(){return"function"==typeof Sy()?new xy:new wy}},{provide:Dy,useValue:"BrowserAnimations"}].concat(Ny),jy=[{provide:Ag,useClass:Tg},{provide:Dy,useValue:"NoopAnimations"}].concat(Ny),Fy=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"withConfig",value:function(t){return{ngModule:e,providers:t.disableAnimations?jy:Ly}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:Ly,imports:[Ad]}),e}();function By(e,t){if(1&e&&As(0,"mat-pseudo-checkbox",4),2&e){var n=Us();Es("state",n.selected?"checked":"unchecked")("disabled",n.disabled)}}function Vy(e,t){if(1&e&&(Os(0,"span",5),wu(1),Ts()),2&e){var n=Us();Wo(1),xu("(",n.group.label,")")}}var zy=["*"],Uy=new ec("12.2.5"),Hy=new Pi("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}}),Gy=function(){var e=function(){function e(t,n,i){m(this,e),this._hasDoneGlobalChecks=!1,this._document=i,t._applyBodyHighContrastModeCssClasses(),this._sanityChecks=n,this._hasDoneGlobalChecks||(this._checkDoctypeIsDefined(),this._checkThemeIsPresent(),this._checkCdkVersionMatch(),this._hasDoneGlobalChecks=!0)}return b(e,[{key:"_getWindow",value:function(){var e=this._document.defaultView||window;return"object"==typeof e&&e?e:null}},{key:"_checkIsEnabled",value:function(e){return!(!Zl()||this._isTestEnv())&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[e])}},{key:"_isTestEnv",value:function(){var e=this._getWindow();return e&&(e.__karma__||e.jasmine)}},{key:"_checkDoctypeIsDefined",value:function(){this._checkIsEnabled("doctype")&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}},{key:"_checkThemeIsPresent",value:function(){if(this._checkIsEnabled("theme")&&this._document.body&&"function"==typeof getComputedStyle){var e=this._document.createElement("div");e.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(e);var t=getComputedStyle(e);t&&"none"!==t.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"),this._document.body.removeChild(e)}}},{key:"_checkCdkVersionMatch",value:function(){this._checkIsEnabled("version")&&Uy.full!==$v.full&&console.warn("The Angular Material version ("+Uy.full+") does not match the Angular CDK version ("+$v.full+").\nPlease ensure the versions of these two packages exactly match.")}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Yv),Ki(Hy,8),Ki(hh))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[zf],zf]}),e}();function Wy(e){return function(e){a(n,e);var t=s(n);function n(){var e;m(this,n);for(var i=arguments.length,r=new Array(i),o=0;o1&&void 0!==arguments[1]?arguments[1]:0;return function(e){a(i,e);var n=s(i);function i(){var e;m(this,i);for(var r=arguments.length,o=new Array(r),a=0;a2&&void 0!==arguments[2]?arguments[2]:{},r=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),o=Object.assign(Object.assign({},Zy),i.animation);i.centered&&(e=r.left+r.width/2,t=r.top+r.height/2);var a=i.radius||function(e,t,n){var i=Math.max(Math.abs(e-n.left),Math.abs(e-n.right)),r=Math.max(Math.abs(t-n.top),Math.abs(t-n.bottom));return Math.sqrt(i*i+r*r)}(e,t,r),s=e-r.left,u=t-r.top,c=o.enterDuration,l=document.createElement("div");l.classList.add("mat-ripple-element"),l.style.left=s-a+"px",l.style.top=u-a+"px",l.style.height=2*a+"px",l.style.width=2*a+"px",null!=i.color&&(l.style.backgroundColor=i.color),l.style.transitionDuration="".concat(c,"ms"),this._containerElement.appendChild(l),function(e){window.getComputedStyle(e).getPropertyValue("opacity")}(l),l.style.transform="scale(1)";var h=new Qy(this,l,i);return h.state=0,this._activeRipples.add(h),i.persistent||(this._mostRecentTransientRipple=h),this._runTimeoutOutsideZone(function(){var e=h===n._mostRecentTransientRipple;h.state=1,!i.persistent&&(!e||!n._isPointerDown)&&h.fadeOut()},c),h}},{key:"fadeOutRipple",value:function(e){var t=this._activeRipples.delete(e);if(e===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),t){var n=e.element,i=Object.assign(Object.assign({},Zy),e.config.animation);n.style.transitionDuration="".concat(i.exitDuration,"ms"),n.style.opacity="0",e.state=2,this._runTimeoutOutsideZone(function(){e.state=3,n.parentNode.removeChild(n)},i.exitDuration)}}},{key:"fadeOutAll",value:function(){this._activeRipples.forEach(function(e){return e.fadeOut()})}},{key:"fadeOutAllNonPersistent",value:function(){this._activeRipples.forEach(function(e){e.config.persistent||e.fadeOut()})}},{key:"setupTriggerEvents",value:function(e){var t=Dd(e);!t||t===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=t,this._registerEvents(eb))}},{key:"handleEvent",value:function(e){"mousedown"===e.type?this._onMousedown(e):"touchstart"===e.type?this._onTouchStart(e):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(tb),this._pointerUpEventsRegistered=!0)}},{key:"_onMousedown",value:function(e){var t=Rv(e),n=this._lastTouchStartEvent&&Date.now()1&&void 0!==arguments[1]?arguments[1]:0;this._ngZone.runOutsideAngular(function(){return setTimeout(e,t)})}},{key:"_registerEvents",value:function(e){var t=this;this._ngZone.runOutsideAngular(function(){e.forEach(function(e){t._triggerElement.addEventListener(e,t,Jy)})})}},{key:"_removeTriggerEvents",value:function(){var e=this;this._triggerElement&&(eb.forEach(function(t){e._triggerElement.removeEventListener(t,e,Jy)}),this._pointerUpEventsRegistered&&tb.forEach(function(t){e._triggerElement.removeEventListener(t,e,Jy)}))}}]),e}(),ib=new Pi("mat-ripple-global-options"),rb=function(){var e=function(){function e(t,n,i,r,o){m(this,e),this._elementRef=t,this._animationMode=o,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=r||{},this._rippleRenderer=new nb(this,n,t,i)}return b(e,[{key:"disabled",get:function(){return this._disabled},set:function(e){e&&this.fadeOutAllNonPersistent(),this._disabled=e,this._setupTriggerEventsIfEnabled()}},{key:"trigger",get:function(){return this._trigger||this._elementRef.nativeElement},set:function(e){this._trigger=e,this._setupTriggerEventsIfEnabled()}},{key:"ngOnInit",value:function(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}},{key:"ngOnDestroy",value:function(){this._rippleRenderer._removeTriggerEvents()}},{key:"fadeOutAll",value:function(){this._rippleRenderer.fadeOutAll()}},{key:"fadeOutAllNonPersistent",value:function(){this._rippleRenderer.fadeOutAllNonPersistent()}},{key:"rippleConfig",get:function(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}},{key:"rippleDisabled",get:function(){return this.disabled||!!this._globalOptions.disabled}},{key:"_setupTriggerEventsIfEnabled",value:function(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}},{key:"launch",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0;return"number"==typeof e?this._rippleRenderer.fadeInRipple(e,t,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Bl),Ss(Mf),Ss(ib,8),Ss(Dy,8))},e.\u0275dir=Mt({type:e,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(e,t){2&e&&au("mat-ripple-unbounded",t.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),e}(),ob=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy,If],Gy]}),e}(),ab=function(){var e=function e(t){m(this,e),this._animationMode=t,this.state="unchecked",this.disabled=!1};return e.\u0275fac=function(t){return new(t||e)(Ss(Dy,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(e,t){2&e&&au("mat-pseudo-checkbox-indeterminate","indeterminate"===t.state)("mat-pseudo-checkbox-checked","checked"===t.state)("mat-pseudo-checkbox-disabled",t.disabled)("_mat-animation-noopable","NoopAnimations"===t._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(e,t){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),e}(),sb=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy]]}),e}(),ub=new Pi("MAT_OPTION_PARENT_COMPONENT"),cb=Wy(function(){return function e(){m(this,e)}}()),lb=0,hb=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i,r;return m(this,n),(i=t.call(this))._labelId="mat-optgroup-label-"+lb++,i._inert=null!==(r=null==e?void 0:e.inertGroups)&&void 0!==r&&r,i}return n}(cb);return e.\u0275fac=function(t){return new(t||e)(Ss(ub,8))},e.\u0275dir=Mt({type:e,inputs:{label:"label"},features:[as]}),e}(),db=new Pi("MatOptgroup"),fb=0,pb=function e(t){var n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];m(this,e),this.source=t,this.isUserInput=n},vb=function(){var e=function(){function e(t,n,i,r){m(this,e),this._element=t,this._changeDetectorRef=n,this._parent=i,this.group=r,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+fb++,this.onSelectionChange=new Qc,this._stateChanges=new re}return b(e,[{key:"multiple",get:function(){return this._parent&&this._parent.multiple}},{key:"selected",get:function(){return this._selected}},{key:"disabled",get:function(){return this.group&&this.group.disabled||this._disabled},set:function(e){this._disabled=Pd(e)}},{key:"disableRipple",get:function(){return this._parent&&this._parent.disableRipple}},{key:"active",get:function(){return this._active}},{key:"viewValue",get:function(){return(this._getHostElement().textContent||"").trim()}},{key:"select",value:function(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"deselect",value:function(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}},{key:"focus",value:function(e,t){var n=this._getHostElement();"function"==typeof n.focus&&n.focus(t)}},{key:"setActiveStyles",value:function(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}},{key:"setInactiveStyles",value:function(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}},{key:"getLabel",value:function(){return this.viewValue}},{key:"_handleKeydown",value:function(e){(13===e.keyCode||32===e.keyCode)&&!hp(e)&&(this._selectViaInteraction(),e.preventDefault())}},{key:"_selectViaInteraction",value:function(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}},{key:"_getAriaSelected",value:function(){return this.selected||!this.multiple&&null}},{key:"_getTabIndex",value:function(){return this.disabled?"-1":"0"}},{key:"_getHostElement",value:function(){return this._element.nativeElement}},{key:"ngAfterViewChecked",value:function(){if(this._selected){var e=this.viewValue;e!==this._mostRecentViewValue&&(this._mostRecentViewValue=e,this._stateChanges.next())}}},{key:"ngOnDestroy",value:function(){this._stateChanges.complete()}},{key:"_emitSelectionChangeEvent",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.onSelectionChange.emit(new pb(this,e))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(_c),Ss(void 0),Ss(hb))},e.\u0275dir=Mt({type:e,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),e}(),gb=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o){return m(this,n),t.call(this,e,i,r,o)}return n}(vb);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(_c),Ss(ub,8),Ss(db,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(e,t){1&e&&js("click",function(){return t._selectViaInteraction()})("keydown",function(e){return t._handleKeydown(e)}),2&e&&(Cu("id",t.id),bs("tabindex",t._getTabIndex())("aria-selected",t._getAriaSelected())("aria-disabled",t.disabled.toString()),au("mat-selected",t.selected)("mat-option-multiple",t.multiple)("mat-active",t.active)("mat-option-disabled",t.disabled))},exportAs:["matOption"],features:[as],ngContentSelectors:zy,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(e,t){1&e&&(Gs(),ks(0,By,1,2,"mat-pseudo-checkbox",0),Os(1,"span",1),Ws(2),Ts(),ks(3,Vy,2,1,"span",2),As(4,"div",3)),2&e&&(Es("ngIf",t.multiple),Wo(3),Es("ngIf",t.group&&t.group._inert),Wo(1),Es("matRippleTrigger",t._getHostElement())("matRippleDisabled",t.disabled||t.disableRipple))},directives:[Nh,rb,ab],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),e}();function mb(e,t,n){if(n.length){for(var i=t.toArray(),r=n.toArray(),o=0,a=0;an+i?Math.max(0,e-i+t):n}var bb=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[ob,Yh,Gy,sb]]}),e}();function _b(){for(var e=arguments.length,t=new Array(e),n=0;n0){var i=e.slice(0,t),r=i.toLowerCase(),o=e.slice(t+1).trim();n.maybeSetNormalizedName(i,r),n.headers.has(r)?n.headers.get(r).push(o):n.headers.set(r,[o])}})}:function(){n.headers=new Map,Object.keys(t).forEach(function(e){var i=t[e],r=e.toLowerCase();"string"==typeof i&&(i=[i]),i.length>0&&(n.headers.set(r,i),n.maybeSetNormalizedName(e,r))})}:this.headers=new Map}return b(e,[{key:"has",value:function(e){return this.init(),this.headers.has(e.toLowerCase())}},{key:"get",value:function(e){this.init();var t=this.headers.get(e.toLowerCase());return t&&t.length>0?t[0]:null}},{key:"keys",value:function(){return this.init(),Array.from(this.normalizedNames.values())}},{key:"getAll",value:function(e){return this.init(),this.headers.get(e.toLowerCase())||null}},{key:"append",value:function(e,t){return this.clone({name:e,value:t,op:"a"})}},{key:"set",value:function(e,t){return this.clone({name:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({name:e,value:t,op:"d"})}},{key:"maybeSetNormalizedName",value:function(e,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,e)}},{key:"init",value:function(){var t=this;this.lazyInit&&(this.lazyInit instanceof e?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(function(e){return t.applyUpdate(e)}),this.lazyUpdate=null))}},{key:"copyFrom",value:function(e){var t=this;e.init(),Array.from(e.headers.keys()).forEach(function(n){t.headers.set(n,e.headers.get(n)),t.normalizedNames.set(n,e.normalizedNames.get(n))})}},{key:"clone",value:function(t){var n=new e;return n.lazyInit=this.lazyInit&&this.lazyInit instanceof e?this.lazyInit:this,n.lazyUpdate=(this.lazyUpdate||[]).concat([t]),n}},{key:"applyUpdate",value:function(e){var t=e.name.toLowerCase();switch(e.op){case"a":case"s":var n=e.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(e.name,t);var i=("a"===e.op?this.headers.get(t):void 0)||[];i.push.apply(i,v(n)),this.headers.set(t,i);break;case"d":var r=e.value;if(r){var o=this.headers.get(t);if(!o)return;0===(o=o.filter(function(e){return-1===r.indexOf(e)})).length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,o)}else this.headers.delete(t),this.normalizedNames.delete(t)}}},{key:"forEach",value:function(e){var t=this;this.init(),Array.from(this.normalizedNames.keys()).forEach(function(n){return e(t.normalizedNames.get(n),t.headers.get(n))})}}]),e}(),Mb=function(){function e(){m(this,e)}return b(e,[{key:"encodeKey",value:function(e){return Db(e)}},{key:"encodeValue",value:function(e){return Db(e)}},{key:"decodeKey",value:function(e){return decodeURIComponent(e)}},{key:"decodeValue",value:function(e){return decodeURIComponent(e)}}]),e}(),Ib=/%(\d[a-f0-9])/gi,Rb={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function Db(e){return encodeURIComponent(e).replace(Ib,function(e,t){var n;return null!==(n=Rb[t])&&void 0!==n?n:e})}function Nb(e){return"".concat(e)}var Lb=function(){function e(){var n=this,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(m(this,e),this.updates=null,this.cloneFrom=null,this.encoder=i.encoder||new Mb,i.fromString){if(i.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function(e,n){var i=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(function(e){var r=e.indexOf("="),o=t(-1==r?[n.decodeKey(e),""]:[n.decodeKey(e.slice(0,r)),n.decodeValue(e.slice(r+1))],2),a=o[0],s=o[1],u=i.get(a)||[];u.push(s),i.set(a,u)}),i}(i.fromString,this.encoder)}else i.fromObject?(this.map=new Map,Object.keys(i.fromObject).forEach(function(e){var t=i.fromObject[e];n.map.set(e,Array.isArray(t)?t:[t])})):this.map=null}return b(e,[{key:"has",value:function(e){return this.init(),this.map.has(e)}},{key:"get",value:function(e){this.init();var t=this.map.get(e);return t?t[0]:null}},{key:"getAll",value:function(e){return this.init(),this.map.get(e)||null}},{key:"keys",value:function(){return this.init(),Array.from(this.map.keys())}},{key:"append",value:function(e,t){return this.clone({param:e,value:t,op:"a"})}},{key:"appendAll",value:function(e){var t=[];return Object.keys(e).forEach(function(n){var i=e[n];Array.isArray(i)?i.forEach(function(e){t.push({param:n,value:e,op:"a"})}):t.push({param:n,value:i,op:"a"})}),this.clone(t)}},{key:"set",value:function(e,t){return this.clone({param:e,value:t,op:"s"})}},{key:"delete",value:function(e,t){return this.clone({param:e,value:t,op:"d"})}},{key:"toString",value:function(){var e=this;return this.init(),this.keys().map(function(t){var n=e.encoder.encodeKey(t);return e.map.get(t).map(function(t){return n+"="+e.encoder.encodeValue(t)}).join("&")}).filter(function(e){return""!==e}).join("&")}},{key:"clone",value:function(t){var n=new e({encoder:this.encoder});return n.cloneFrom=this.cloneFrom||this,n.updates=(this.updates||[]).concat(t),n}},{key:"init",value:function(){var e=this;null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(function(t){return e.map.set(t,e.cloneFrom.map.get(t))}),this.updates.forEach(function(t){switch(t.op){case"a":case"s":var n=("a"===t.op?e.map.get(t.param):void 0)||[];n.push(Nb(t.value)),e.map.set(t.param,n);break;case"d":if(void 0===t.value){e.map.delete(t.param);break}var i=e.map.get(t.param)||[],r=i.indexOf(Nb(t.value));-1!==r&&i.splice(r,1),i.length>0?e.map.set(t.param,i):e.map.delete(t.param)}}),this.cloneFrom=this.updates=null)}}]),e}(),jb=function(){function e(){m(this,e),this.map=new Map}return b(e,[{key:"set",value:function(e,t){return this.map.set(e,t),this}},{key:"get",value:function(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}},{key:"delete",value:function(e){return this.map.delete(e),this}},{key:"keys",value:function(){return this.map.keys()}}]),e}();function Fb(e){return"undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer}function Bb(e){return"undefined"!=typeof Blob&&e instanceof Blob}function Vb(e){return"undefined"!=typeof FormData&&e instanceof FormData}var zb=function(){function e(t,n,i,r){var o;if(m(this,e),this.url=n,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||r?(this.body=void 0!==i?i:null,o=r):o=i,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params)),this.headers||(this.headers=new Pb),this.context||(this.context=new jb),this.params){var a=this.params.toString();if(0===a.length)this.urlWithParams=n;else{var s=n.indexOf("?");this.urlWithParams=n+(-1===s?"?":s0&&void 0!==arguments[0]?arguments[0]:{},i=n.method||this.method,r=n.url||this.url,o=n.responseType||this.responseType,a=void 0!==n.body?n.body:this.body,s=void 0!==n.withCredentials?n.withCredentials:this.withCredentials,u=void 0!==n.reportProgress?n.reportProgress:this.reportProgress,c=n.headers||this.headers,l=n.params||this.params,h=null!==(t=n.context)&&void 0!==t?t:this.context;return void 0!==n.setHeaders&&(c=Object.keys(n.setHeaders).reduce(function(e,t){return e.set(t,n.setHeaders[t])},c)),n.setParams&&(l=Object.keys(n.setParams).reduce(function(e,t){return e.set(t,n.setParams[t])},l)),new e(i,r,a,{params:l,headers:c,context:h,reportProgress:u,responseType:o,withCredentials:s})}}]),e}(),Ub=((Ub=Ub||{})[Ub.Sent=0]="Sent",Ub[Ub.UploadProgress=1]="UploadProgress",Ub[Ub.ResponseHeader=2]="ResponseHeader",Ub[Ub.DownloadProgress=3]="DownloadProgress",Ub[Ub.Response=4]="Response",Ub[Ub.User=5]="User",Ub),Hb=function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:200,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"OK";m(this,e),this.headers=t.headers||new Pb,this.status=void 0!==t.status?t.status:n,this.statusText=t.statusText||i,this.url=t.url||null,this.ok=this.status>=200&&this.status<300},Gb=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m(this,n),(e=t.call(this,i)).type=Ub.ResponseHeader,e}return b(n,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new n({headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),n}(Hb),Wb=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m(this,n),(e=t.call(this,i)).type=Ub.Response,e.body=void 0!==i.body?i.body:null,e}return b(n,[{key:"clone",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new n({body:void 0!==e.body?e.body:this.body,headers:e.headers||this.headers,status:void 0!==e.status?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}}]),n}(Hb),qb=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,e,0,"Unknown Error")).name="HttpErrorResponse",i.ok=!1,i.message=i.status>=200&&i.status<300?"Http failure during parsing for ".concat(e.url||"(unknown url)"):"Http failure response for ".concat(e.url||"(unknown url)",": ").concat(e.status," ").concat(e.statusText),i.error=e.error||null,i}return n}(Hb);function Xb(e,t){return{body:t,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}var Yb=function(){var e=function(){function e(t){m(this,e),this.handler=t}return b(e,[{key:"request",value:function(e,t){var n,i,r,o=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};e instanceof zb?n=e:(i=a.headers instanceof Pb?a.headers:new Pb(a.headers),a.params&&(r=a.params instanceof Lb?a.params:new Lb({fromObject:a.params})),n=new zb(e,t,void 0!==a.body?a.body:null,{headers:i,context:a.context,params:r,reportProgress:a.reportProgress,responseType:a.responseType||"json",withCredentials:a.withCredentials}));var s=Nd(n).pipe(_e(function(e){return o.handler.handle(e)},void 0,1));if(e instanceof zb||"events"===a.observe)return s;var u=s.pipe(rf(function(e){return e instanceof Wb}));switch(a.observe||"body"){case"body":switch(n.responseType){case"arraybuffer":return u.pipe(se(function(e){if(null!==e.body&&!(e.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return e.body}));case"blob":return u.pipe(se(function(e){if(null!==e.body&&!(e.body instanceof Blob))throw new Error("Response is not a Blob.");return e.body}));case"text":return u.pipe(se(function(e){if(null!==e.body&&"string"!=typeof e.body)throw new Error("Response is not a string.");return e.body}));case"json":default:return u.pipe(se(function(e){return e.body}))}case"response":return u;default:throw new Error("Unreachable: unhandled observe type ".concat(a.observe,"}"))}}},{key:"delete",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("DELETE",e,t)}},{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("GET",e,t)}},{key:"head",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("HEAD",e,t)}},{key:"jsonp",value:function(e,t){return this.request("JSONP",e,{params:(new Lb).append(t,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}},{key:"options",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.request("OPTIONS",e,t)}},{key:"patch",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PATCH",e,Xb(n,t))}},{key:"post",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("POST",e,Xb(n,t))}},{key:"put",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.request("PUT",e,Xb(n,t))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Tb))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Kb=function(){function e(t,n){m(this,e),this.next=t,this.interceptor=n}return b(e,[{key:"handle",value:function(e){return this.interceptor.intercept(e,this.next)}}]),e}(),$b=new Pi("HTTP_INTERCEPTORS"),Qb=function(){var e=function(){function e(){m(this,e)}return b(e,[{key:"intercept",value:function(e,t){return t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),Zb=/^\)\]\}',?\n/,Jb=function(){var e=function(){function e(t){m(this,e),this.xhrFactory=t}return b(e,[{key:"handle",value:function(e){var t=this;if("JSONP"===e.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new J(function(n){var i=t.xhrFactory.build();if(i.open(e.method,e.urlWithParams),e.withCredentials&&(i.withCredentials=!0),e.headers.forEach(function(e,t){return i.setRequestHeader(e,t.join(","))}),e.headers.has("Accept")||i.setRequestHeader("Accept","application/json, text/plain, */*"),!e.headers.has("Content-Type")){var r=e.detectContentTypeHeader();null!==r&&i.setRequestHeader("Content-Type",r)}if(e.responseType){var o=e.responseType.toLowerCase();i.responseType="json"!==o?o:"text"}var a=e.serializeBody(),s=null,u=function(){if(null!==s)return s;var t=1223===i.status?204:i.status,n=i.statusText||"OK",r=new Pb(i.getAllResponseHeaders()),o=function(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(i)||e.url;return s=new Gb({headers:r,status:t,statusText:n,url:o})},c=function(){var t=u(),r=t.headers,o=t.status,a=t.statusText,s=t.url,c=null;204!==o&&(c=void 0===i.response?i.responseText:i.response),0===o&&(o=c?200:0);var l=o>=200&&o<300;if("json"===e.responseType&&"string"==typeof c){var h=c;c=c.replace(Zb,"");try{c=""!==c?JSON.parse(c):null}catch(d){c=h,l&&(l=!1,c={error:d,text:c})}}l?(n.next(new Wb({body:c,headers:r,status:o,statusText:a,url:s||void 0})),n.complete()):n.error(new qb({error:c,headers:r,status:o,statusText:a,url:s||void 0}))},l=function(e){var t=u().url,r=new qb({error:e,status:i.status||0,statusText:i.statusText||"Unknown Error",url:t||void 0});n.error(r)},h=!1,d=function(t){h||(n.next(u()),h=!0);var r={type:Ub.DownloadProgress,loaded:t.loaded};t.lengthComputable&&(r.total=t.total),"text"===e.responseType&&!!i.responseText&&(r.partialText=i.responseText),n.next(r)},f=function(e){var t={type:Ub.UploadProgress,loaded:e.loaded};e.lengthComputable&&(t.total=e.total),n.next(t)};return i.addEventListener("load",c),i.addEventListener("error",l),i.addEventListener("timeout",l),i.addEventListener("abort",l),e.reportProgress&&(i.addEventListener("progress",d),null!==a&&i.upload&&i.upload.addEventListener("progress",f)),i.send(a),n.next({type:Ub.Sent}),function(){i.removeEventListener("error",l),i.removeEventListener("abort",l),i.removeEventListener("load",c),i.removeEventListener("timeout",l),e.reportProgress&&(i.removeEventListener("progress",d),null!==a&&i.upload&&i.upload.removeEventListener("progress",f)),i.readyState!==i.DONE&&i.abort()}})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Zh))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),e_=new Pi("XSRF_COOKIE_NAME"),t_=new Pi("XSRF_HEADER_NAME"),n_=function e(){m(this,e)},i_=function(){var e=function(){function e(t,n,i){m(this,e),this.doc=t,this.platform=n,this.cookieName=i,this.lastCookieString="",this.lastToken=null,this.parseCount=0}return b(e,[{key:"getToken",value:function(){if("server"===this.platform)return null;var e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Ph(e,this.cookieName),this.lastCookieString=e),this.lastToken}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(hh),Ki(xl),Ki(e_))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),r_=function(){var e=function(){function e(t,n){m(this,e),this.tokenService=t,this.headerName=n}return b(e,[{key:"intercept",value:function(e,t){var n=e.url.toLowerCase();if("GET"===e.method||"HEAD"===e.method||n.startsWith("http://")||n.startsWith("https://"))return t.handle(e);var i=this.tokenService.getToken();return null!==i&&!e.headers.has(this.headerName)&&(e=e.clone({headers:e.headers.set(this.headerName,i)})),t.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(n_),Ki(t_))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),o_=function(){var e=function(){function e(t,n){m(this,e),this.backend=t,this.injector=n,this.chain=null}return b(e,[{key:"handle",value:function(e){if(null===this.chain){var t=this.injector.get($b,[]);this.chain=t.reduceRight(function(e,t){return new Kb(e,t)},this.backend)}return this.chain.handle(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Ab),Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),a_=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"disable",value:function(){return{ngModule:e,providers:[{provide:r_,useClass:Qb}]}}},{key:"withOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ngModule:e,providers:[t.cookieName?{provide:e_,useValue:t.cookieName}:[],t.headerName?{provide:t_,useValue:t.headerName}:[]]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[r_,{provide:$b,useExisting:r_,multi:!0},{provide:n_,useClass:i_},{provide:e_,useValue:"XSRF-TOKEN"},{provide:t_,useValue:"X-XSRF-TOKEN"}]}),e}(),s_=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[Yb,{provide:Tb,useClass:o_},Jb,{provide:Ab,useExisting:Jb}],imports:[[a_.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),e}(),u_=["*"];function c_(e){return Error('Unable to find icon with the name "'.concat(e,'"'))}function l_(e){return Error("The URL provided to MatIconRegistry was not trusted as a resource URL via Angular's DomSanitizer. Attempted URL was \"".concat(e,'".'))}function h_(e){return Error("The literal provided to MatIconRegistry was not trusted as safe HTML by Angular's DomSanitizer. Attempted literal was \"".concat(e,'".'))}var d_=function e(t,n,i){m(this,e),this.url=t,this.svgText=n,this.options=i},f_=function(){var e=function(){function e(t,n,i,r){m(this,e),this._httpClient=t,this._sanitizer=n,this._errorHandler=r,this._svgIconConfigs=new Map,this._iconSetConfigs=new Map,this._cachedIconsByUrl=new Map,this._inProgressUrlFetches=new Map,this._fontCssClassesByAlias=new Map,this._resolvers=[],this._defaultFontSetClass="material-icons",this._document=i}return b(e,[{key:"addSvgIcon",value:function(e,t,n){return this.addSvgIconInNamespace("",e,t,n)}},{key:"addSvgIconLiteral",value:function(e,t,n){return this.addSvgIconLiteralInNamespace("",e,t,n)}},{key:"addSvgIconInNamespace",value:function(e,t,n,i){return this._addSvgIconConfig(e,t,new d_(n,null,i))}},{key:"addSvgIconResolver",value:function(e){return this._resolvers.push(e),this}},{key:"addSvgIconLiteralInNamespace",value:function(e,t,n,i){var r=this._sanitizer.sanitize(Ur.HTML,n);if(!r)throw h_(n);return this._addSvgIconConfig(e,t,new d_("",r,i))}},{key:"addSvgIconSet",value:function(e,t){return this.addSvgIconSetInNamespace("",e,t)}},{key:"addSvgIconSetLiteral",value:function(e,t){return this.addSvgIconSetLiteralInNamespace("",e,t)}},{key:"addSvgIconSetInNamespace",value:function(e,t,n){return this._addSvgIconSetConfig(e,new d_(t,null,n))}},{key:"addSvgIconSetLiteralInNamespace",value:function(e,t,n){var i=this._sanitizer.sanitize(Ur.HTML,t);if(!i)throw h_(t);return this._addSvgIconSetConfig(e,new d_("",i,n))}},{key:"registerFontClassAlias",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this._fontCssClassesByAlias.set(e,t),this}},{key:"classNameForFontAlias",value:function(e){return this._fontCssClassesByAlias.get(e)||e}},{key:"setDefaultFontSetClass",value:function(e){return this._defaultFontSetClass=e,this}},{key:"getDefaultFontSetClass",value:function(){return this._defaultFontSetClass}},{key:"getSvgIconFromUrl",value:function(e){var t=this,n=this._sanitizer.sanitize(Ur.RESOURCE_URL,e);if(!n)throw l_(e);var i=this._cachedIconsByUrl.get(n);return i?Nd(p_(i)):this._loadSvgIconFromConfig(new d_(e,null)).pipe(iv(function(e){return t._cachedIconsByUrl.set(n,e)}),se(function(e){return p_(e)}))}},{key:"getNamedSvgIcon",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=v_(t,e),i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(t,e))return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);var r=this._iconSetConfigs.get(t);return r?this._getSvgFromIconSetConfigs(e,r):yf(c_(n))}},{key:"ngOnDestroy",value:function(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}},{key:"_getSvgFromConfig",value:function(e){return e.svgText?Nd(p_(this._svgElementFromConfig(e))):this._loadSvgIconFromConfig(e).pipe(se(function(e){return p_(e)}))}},{key:"_getSvgFromIconSetConfigs",value:function(e,t){var n=this,i=this._extractIconWithNameFromAnySet(e,t);return i?Nd(i):_b(t.filter(function(e){return!e.svgText}).map(function(e){return n._loadSvgIconSetFromConfig(e).pipe(kb(function(t){var i="Loading icon set URL: ".concat(n._sanitizer.sanitize(Ur.RESOURCE_URL,e.url)," failed: ").concat(t.message);return n._errorHandler.handleError(new Error(i)),Nd(null)}))})).pipe(se(function(){var i=n._extractIconWithNameFromAnySet(e,t);if(!i)throw c_(e);return i}))}},{key:"_extractIconWithNameFromAnySet",value:function(e,t){for(var n=t.length-1;n>=0;n--){var i=t[n];if(i.svgText&&i.svgText.indexOf(e)>-1){var r=this._svgElementFromConfig(i),o=this._extractSvgIconFromSet(r,e,i.options);if(o)return o}}return null}},{key:"_loadSvgIconFromConfig",value:function(e){var t=this;return this._fetchIcon(e).pipe(iv(function(t){return e.svgText=t}),se(function(){return t._svgElementFromConfig(e)}))}},{key:"_loadSvgIconSetFromConfig",value:function(e){return e.svgText?Nd(null):this._fetchIcon(e).pipe(iv(function(t){return e.svgText=t}))}},{key:"_extractSvgIconFromSet",value:function(e,t,n){var i=e.querySelector('[id="'.concat(t,'"]'));if(!i)return null;var r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);var o=this._svgElementFromString("");return o.appendChild(r),this._setSvgAttributes(o,n)}},{key:"_svgElementFromString",value:function(e){var t=this._document.createElement("DIV");t.innerHTML=e;var n=t.querySelector("svg");if(!n)throw Error(" tag not found");return n}},{key:"_toSvgElement",value:function(e){for(var t=this._svgElementFromString(""),n=e.attributes,i=0;i*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",O_=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],T_=qy(Wy(Xy(function(){return function e(t){m(this,e),this._elementRef=t}}()))),A_=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;m(this,n),(o=t.call(this,e))._focusMonitor=i,o._animationMode=r,o.isRoundButton=o._hasHostAttributes("mat-fab","mat-mini-fab"),o.isIconButton=o._hasHostAttributes("mat-icon-button");var a,s=_(O_);try{for(s.s();!(a=s.n()).done;){var u=a.value;o._hasHostAttributes(u)&&o._getHostElement().classList.add(u)}}catch(c){s.e(c)}finally{s.f()}return e.nativeElement.classList.add("mat-button-base"),o.isRoundButton&&(o.color="accent"),o}return b(n,[{key:"ngAfterViewInit",value:function(){this._focusMonitor.monitor(this._elementRef,!0)}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._getHostElement(),e,t):this._getHostElement().focus(t)}},{key:"_getHostElement",value:function(){return this._elementRef.nativeElement}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_hasHostAttributes",value:function(){for(var e=this,t=arguments.length,n=new Array(t),i=0;i4&&void 0!==arguments[4]?arguments[4]:new R_(e,n,i);if(!r.closed)return t instanceof J?t.subscribe(r):pe(t)(r)}var N_={};function L_(){for(var e=arguments.length,t=new Array(e),n=0;n visible",eg("150ms cubic-bezier(0, 0, 0.2, 1)")),rg("* => void, * => hidden",eg("75ms cubic-bezier(0.4, 0.0, 1, 1)",ng({opacity:0})))])},J_=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a){var s;return m(this,n),(s=t.call(this))._ngZone=e,s._elementRef=i,s._changeDetectorRef=r,s._platform=o,s.snackBarConfig=a,s._announceDelay=150,s._destroyed=!1,s._onAnnounce=new re,s._onExit=new re,s._onEnter=new re,s._animationState="void",s.attachDomPortal=function(e){return s._assertNotAttached(),s._applySnackBarClasses(),s._portalOutlet.attachDomPortal(e)},s._live="assertive"!==a.politeness||a.announcementMessage?"off"===a.politeness?"off":"polite":"assertive",s._platform.FIREFOX&&("polite"===s._live&&(s._role="status"),"assertive"===s._live&&(s._role="alert")),s}return b(n,[{key:"attachComponentPortal",value:function(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(e)}},{key:"attachTemplatePortal",value:function(e){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(e)}},{key:"onAnimationEnd",value:function(e){var t=e.fromState,n=e.toState;if(("void"===n&&"void"!==t||"hidden"===n)&&this._completeExit(),"visible"===n){var i=this._onEnter;this._ngZone.run(function(){i.next(),i.complete()})}}},{key:"enter",value:function(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}},{key:"exit",value:function(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}},{key:"ngOnDestroy",value:function(){this._destroyed=!0,this._completeExit()}},{key:"_completeExit",value:function(){var e=this;this._ngZone.onMicrotaskEmpty.pipe(op(1)).subscribe(function(){e._onExit.next(),e._onExit.complete()})}},{key:"_applySnackBarClasses",value:function(){var e=this._elementRef.nativeElement,t=this.snackBarConfig.panelClass;t&&(Array.isArray(t)?t.forEach(function(t){return e.classList.add(t)}):e.classList.add(t)),"center"===this.snackBarConfig.horizontalPosition&&e.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&e.classList.add("mat-snack-bar-top")}},{key:"_assertNotAttached",value:function(){this._portalOutlet.hasAttached()}},{key:"_screenReaderAnnounce",value:function(){var e=this;this._announceTimeoutId||this._ngZone.runOutsideAngular(function(){e._announceTimeoutId=setTimeout(function(){var t=e._elementRef.nativeElement.querySelector("[aria-hidden]"),n=e._elementRef.nativeElement.querySelector("[aria-live]");if(t&&n){var i=null;e._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(i=document.activeElement),t.removeAttribute("aria-hidden"),n.appendChild(t),null==i||i.focus(),e._onAnnounce.next(),e._onAnnounce.complete()}},e._announceDelay)})}}]),n}(Zf);return e.\u0275fac=function(t){return new(t||e)(Ss(Bl),Ss(Yu),Ss(_c),Ss(Mf),Ss(Y_))},e.\u0275cmp=Et({type:e,selectors:[["snack-bar-container"]],viewQuery:function(e,t){var n;(1&e&&ll(np,7),2&e)&&(cl(n=dl())&&(t._portalOutlet=n.first))},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(e,t){1&e&&Fs("@state.done",function(e){return t.onAnimationEnd(e)}),2&e&&Ou("@state",t._animationState)},features:[as],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(e,t){1&e&&(Os(0,"div",0),ks(1,q_,0,0,"ng-template",1),Ts(),As(2,"div")),2&e&&(Wo(2),bs("aria-live",t._live)("role",t._role))},directives:[np],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[Z_.snackBarState]}}),e}(),ew=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yp,ip,Yh,M_,Gy],Gy]}),e}(),tw=new Pi("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new Y_}}),nw=function(){var e=function(){function e(t,n,i,r,o,a){m(this,e),this._overlay=t,this._live=n,this._injector=i,this._breakpointObserver=r,this._parentSnackBar=o,this._defaultConfig=a,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=Q_,this.snackBarContainerComponent=J_,this.handsetCssClass="mat-snack-bar-handset"}return b(e,[{key:"_openedSnackBarRef",get:function(){var e=this._parentSnackBar;return e?e._openedSnackBarRef:this._snackBarRefAtThisLevel},set:function(e){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=e:this._snackBarRefAtThisLevel=e}},{key:"openFromComponent",value:function(e,t){return this._attach(e,t)}},{key:"openFromTemplate",value:function(e,t){return this._attach(e,t)}},{key:"open",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0,i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:e,action:t},i.announcementMessage===e&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}},{key:"dismiss",value:function(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}},{key:"ngOnDestroy",value:function(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}},{key:"_attachSnackBarContainer",value:function(e,t){var n=rs.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:Y_,useValue:t}]}),i=new Kf(this.snackBarContainerComponent,t.viewContainerRef,n),r=e.attach(i);return r.instance.snackBarConfig=t,r.instance}},{key:"_attach",value:function(e,t){var n=this,i=Object.assign(Object.assign(Object.assign({},new Y_),this._defaultConfig),t),r=this._createOverlay(i),o=this._attachSnackBarContainer(r,i),a=new $_(o,r);if(e instanceof Ec){var s=new $f(e,null,{$implicit:i.data,snackBarRef:a});a.instance=o.attachTemplatePortal(s)}else{var u=this._createInjector(i,a),c=new Kf(e,void 0,u),l=o.attachComponentPortal(c);a.instance=l.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(sf(r.detachments())).subscribe(function(e){var t=r.overlayElement.classList;e.matches?t.add(n.handsetCssClass):t.remove(n.handsetCssClass)}),i.announcementMessage&&o._onAnnounce.subscribe(function(){n._live.announce(i.announcementMessage,i.politeness)}),this._animateSnackBar(a,i),this._openedSnackBarRef=a,this._openedSnackBarRef}},{key:"_animateSnackBar",value:function(e,t){var n=this;e.afterDismissed().subscribe(function(){n._openedSnackBarRef==e&&(n._openedSnackBarRef=null),t.announcementMessage&&n._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(function(){e.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):e.containerInstance.enter(),t.duration&&t.duration>0&&e.afterOpened().subscribe(function(){return e._dismissAfter(t.duration)})}},{key:"_createOverlay",value:function(e){var t=new _p;t.direction=e.direction;var n=this._overlay.position().global(),i="rtl"===e.direction,r="left"===e.horizontalPosition||"start"===e.horizontalPosition&&!i||"end"===e.horizontalPosition&&i,o=!r&&"center"!==e.horizontalPosition;return r?n.left("0"):o?n.right("0"):n.centerHorizontally(),"top"===e.verticalPosition?n.top("0"):n.bottom("0"),t.positionStrategy=n,this._overlay.create(t)}},{key:"_createInjector",value:function(e,t){return rs.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:$_,useValue:t},{provide:X_,useValue:e.data}]})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Up),Ki(zv),Ki(rs),Ki(H_),Ki(e,12),Ki(tw))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Up),Ki(zv),Ki(Ga),Ki(H_),Ki(e,12),Ki(tw))},token:e,providedIn:ew}),e}(),iw={tooltipState:Jv("state",[ig("initial, void, hidden",ng({opacity:0,transform:"scale(0)"})),ig("visible",ng({transform:"scale(1)"})),rg("* => visible",eg("200ms cubic-bezier(0, 0, 0.2, 1)",function(e){return{type:5,steps:e}}([ng({opacity:0,transform:"scale(0)",offset:0}),ng({opacity:.5,transform:"scale(0.99)",offset:.5}),ng({opacity:1,transform:"scale(1)",offset:1})]))),rg("* => hidden",eg("100ms cubic-bezier(0, 0, 0.2, 1)",ng({opacity:0})))])},rw="tooltip-panel",ow=Nf({passive:!0}),aw=new Pi("mat-tooltip-scroll-strategy"),sw={provide:aw,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition({scrollThrottle:20})}}},uw=new Pi("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}}),cw=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c,l,h,d){var f=this;m(this,e),this._overlay=t,this._elementRef=n,this._scrollDispatcher=i,this._viewContainerRef=r,this._ngZone=o,this._platform=a,this._ariaDescriber=s,this._focusMonitor=u,this._dir=l,this._defaultOptions=h,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new re,this._handleKeydown=function(e){f._isTooltipVisible()&&27===e.keyCode&&!hp(e)&&(e.preventDefault(),e.stopPropagation(),f._ngZone.run(function(){return f.hide(0)}))},this._scrollStrategy=c,this._document=d,h&&(h.position&&(this.position=h.position),h.touchGestures&&(this.touchGestures=h.touchGestures)),l.change.pipe(sf(this._destroyed)).subscribe(function(){f._overlayRef&&f._updatePosition(f._overlayRef)}),o.runOutsideAngular(function(){n.nativeElement.addEventListener("keydown",f._handleKeydown)})}return b(e,[{key:"position",get:function(){return this._position},set:function(e){var t;e!==this._position&&(this._position=e,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(t=this._tooltipInstance)||void 0===t||t.show(0),this._overlayRef.updatePosition()))}},{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=Pd(e),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}},{key:"message",get:function(){return this._message},set:function(e){var t=this;this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=e?String(e).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(function(){Promise.resolve().then(function(){t._ariaDescriber.describe(t._elementRef.nativeElement,t.message,"tooltip")})}))}},{key:"tooltipClass",get:function(){return this._tooltipClass},set:function(e){this._tooltipClass=e,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}},{key:"ngAfterViewInit",value:function(){var e=this;this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(sf(this._destroyed)).subscribe(function(t){t?"keyboard"===t&&e._ngZone.run(function(){return e.show()}):e._ngZone.run(function(){return e.hide(0)})})}},{key:"ngOnDestroy",value:function(){var e=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),e.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(function(n){var i=t(n,2),r=i[0],o=i[1];e.removeEventListener(r,o,ow)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(e,this.message,"tooltip"),this._focusMonitor.stopMonitoring(e)}},{key:"show",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.showDelay;if(!this.disabled&&this.message&&(!this._isTooltipVisible()||this._tooltipInstance._showTimeoutId||this._tooltipInstance._hideTimeoutId)){var n=this._createOverlay();this._detach(),this._portal=this._portal||new Kf(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=n.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe(sf(this._destroyed)).subscribe(function(){return e._detach()}),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}}},{key:"hide",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.hideDelay;this._tooltipInstance&&this._tooltipInstance.hide(e)}},{key:"toggle",value:function(){this._isTooltipVisible()?this.hide():this.show()}},{key:"_isTooltipVisible",value:function(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}},{key:"_createOverlay",value:function(){var e=this;if(this._overlayRef)return this._overlayRef;var t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),n=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(".".concat(this._cssClassPrefix,"-tooltip")).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return n.positionChanges.pipe(sf(this._destroyed)).subscribe(function(t){e._updateCurrentPositionClass(t.connectionPair),e._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&e._tooltipInstance.isVisible()&&e._ngZone.run(function(){return e.hide(0)})}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:n,panelClass:"".concat(this._cssClassPrefix,"-").concat(rw),scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(sf(this._destroyed)).subscribe(function(){return e._detach()}),this._overlayRef.outsidePointerEvents().pipe(sf(this._destroyed)).subscribe(function(){var t;return null===(t=e._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}},{key:"_detach",value:function(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}},{key:"_updatePosition",value:function(e){var t=e.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();t.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}},{key:"_addOffset",value:function(e){return e}},{key:"_getOrigin",value:function(){var e,t=!this._dir||"ltr"==this._dir.value,n=this.position;"above"==n||"below"==n?e={originX:"center",originY:"above"==n?"top":"bottom"}:"before"==n||"left"==n&&t||"right"==n&&!t?e={originX:"start",originY:"center"}:("after"==n||"right"==n&&t||"left"==n&&!t)&&(e={originX:"end",originY:"center"});var i=this._invertPosition(e.originX,e.originY);return{main:e,fallback:{originX:i.x,originY:i.y}}}},{key:"_getOverlayPosition",value:function(){var e,t=!this._dir||"ltr"==this._dir.value,n=this.position;"above"==n?e={overlayX:"center",overlayY:"bottom"}:"below"==n?e={overlayX:"center",overlayY:"top"}:"before"==n||"left"==n&&t||"right"==n&&!t?e={overlayX:"end",overlayY:"center"}:("after"==n||"right"==n&&t||"left"==n&&!t)&&(e={overlayX:"start",overlayY:"center"});var i=this._invertPosition(e.overlayX,e.overlayY);return{main:e,fallback:{overlayX:i.x,overlayY:i.y}}}},{key:"_updateTooltipMessage",value:function(){var e=this;this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(op(1),sf(this._destroyed)).subscribe(function(){e._tooltipInstance&&e._overlayRef.updatePosition()}))}},{key:"_setTooltipClass",value:function(e){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=e,this._tooltipInstance._markForCheck())}},{key:"_invertPosition",value:function(e,t){return"above"===this.position||"below"===this.position?"top"===t?t="bottom":"bottom"===t&&(t="top"):"end"===e?e="start":"start"===e&&(e="end"),{x:e,y:t}}},{key:"_updateCurrentPositionClass",value:function(e){var t,n=e.overlayY,i=e.originX,r=e.originY;if((t="center"===n?this._dir&&"rtl"===this._dir.value?"end"===i?"left":"right":"start"===i?"left":"right":"bottom"===n&&"top"===r?"above":"below")!==this._currentPosition){var o=this._overlayRef;if(o){var a="".concat(this._cssClassPrefix,"-").concat(rw,"-");o.removePanelClass(a+this._currentPosition),o.addPanelClass(a+t)}this._currentPosition=t}}},{key:"_setupPointerEnterEventsIfNeeded",value:function(){var e=this;this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",function(){e._setupPointerExitEventsIfNeeded(),e.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",function(){e._setupPointerExitEventsIfNeeded(),clearTimeout(e._touchstartTimeout),e._touchstartTimeout=setTimeout(function(){return e.show()},500)}])),this._addListeners(this._passiveListeners))}},{key:"_setupPointerExitEventsIfNeeded",value:function(){var e,t=this;if(!this._pointerExitEventsInitialized){this._pointerExitEventsInitialized=!0;var n=[];if(this._platformSupportsMouseEvents())n.push(["mouseleave",function(){return t.hide()}],["wheel",function(e){return t._wheelListener(e)}]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();var i=function(){clearTimeout(t._touchstartTimeout),t.hide(t._defaultOptions.touchendHideDelay)};n.push(["touchend",i],["touchcancel",i])}this._addListeners(n),(e=this._passiveListeners).push.apply(e,n)}}},{key:"_addListeners",value:function(e){var n=this;e.forEach(function(e){var i=t(e,2),r=i[0],o=i[1];n._elementRef.nativeElement.addEventListener(r,o,ow)})}},{key:"_platformSupportsMouseEvents",value:function(){return!this._platform.IOS&&!this._platform.ANDROID}},{key:"_wheelListener",value:function(e){if(this._isTooltipVisible()){var t=this._document.elementFromPoint(e.clientX,e.clientY),n=this._elementRef.nativeElement;t!==n&&!n.contains(t)&&this.hide()}}},{key:"_disableNativeGesturesIfNecessary",value:function(){var e=this.touchGestures;if("off"!==e){var t=this._elementRef.nativeElement,n=t.style;("on"===e||"INPUT"!==t.nodeName&&"TEXTAREA"!==t.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),("on"===e||!t.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Yu),Ss(Gf),Ss(Pc),Ss(Bl),Ss(Mf),Ss(Sv),Ss(Gv),Ss(void 0),Ss(Vf),Ss(void 0),Ss(hh))},e.\u0275dir=Mt({type:e,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),e}(),lw=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,c,l,h,d,f){var p;return m(this,n),(p=t.call(this,e,i,r,o,a,s,u,c,l,h,d,f))._tooltipComponent=dw,p}return n}(cw);return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Yu),Ss(Gf),Ss(Pc),Ss(Bl),Ss(Mf),Ss(Sv),Ss(Gv),Ss(aw),Ss(Vf,8),Ss(uw,8),Ss(hh))},e.\u0275dir=Mt({type:e,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[as]}),e}(),hw=function(){var e=function(){function e(t){m(this,e),this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new re}return b(e,[{key:"show",value:function(e){var t=this;clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(function(){t._visibility="visible",t._showTimeoutId=void 0,t._onShow(),t._markForCheck()},e)}},{key:"hide",value:function(e){var t=this;clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(function(){t._visibility="hidden",t._hideTimeoutId=void 0,t._markForCheck()},e)}},{key:"afterHidden",value:function(){return this._onHide}},{key:"isVisible",value:function(){return"visible"===this._visibility}},{key:"ngOnDestroy",value:function(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}},{key:"_animationStart",value:function(){this._closeOnInteraction=!1}},{key:"_animationDone",value:function(e){var t=e.toState;"hidden"===t&&!this.isVisible()&&this._onHide.next(),("visible"===t||"hidden"===t)&&(this._closeOnInteraction=!0)}},{key:"_handleBodyInteraction",value:function(){this._closeOnInteraction&&this.hide(0)}},{key:"_markForCheck",value:function(){this._changeDetectorRef.markForCheck()}},{key:"_onShow",value:function(){}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(_c))},e.\u0275dir=Mt({type:e}),e}(),dw=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e))._breakpointObserver=i,r._isHandset=r._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)"),r}return n}(hw);return e.\u0275fac=function(t){return new(t||e)(Ss(_c),Ss(H_))},e.\u0275cmp=Et({type:e,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(e,t){2&e&&ou("zoom","visible"===t._visibility?1:null)},features:[as],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(e,t){var n;(1&e&&(Os(0,"div",0),js("@state.start",function(){return t._animationStart()})("@state.done",function(e){return t._animationDone(e)}),Yc(1,"async"),wu(2),Ts()),2&e)&&(au("mat-tooltip-handset",null==(n=Kc(1,5,t._isHandset))?null:n.matches),Es("ngClass",t.tooltipClass)("@state",t._visibility),Wo(2),ku(t.message))},directives:[Mh],pipes:[Xh],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[iw.tooltipState]},changeDetection:0}),e}(),fw=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[sw],imports:[[Kv,Yh,Yp,Gy],Gy,qf]}),e}();function pw(e,t,n,i){var r,o=arguments.length,a=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,i);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,n,a):r(t,n))||a);return o>3&&a&&Object.defineProperty(t,n,a),a}function vw(e,t){return function(n,i){t(n,i,e)}}function gw(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function mw(e,t,n,i){return new(n||(n=Promise))(function(r,o){function a(e){try{u(i.next(e))}catch(t){o(t)}}function s(e){try{u(i.throw(e))}catch(t){o(t)}}function u(e){e.done?r(e.value):function(e){return e instanceof n?e:new n(function(t){t(e)})}(e.value).then(a,s)}u((i=i.apply(e,t||[])).next())})}function yw(e){if("undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"==typeof process.versions&&Boolean(process.versions.electron))return!0;var t="object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=e||t;return!!(n&&n.indexOf("Electron")>=0)}function bw(){return!("object"==typeof process&&"[object process]"===String(process)&&!process.browser)||yw()}var _w="undefined"!=typeof __VERSION__?__VERSION__:"untranspiled source",ww=bw(),kw=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"sessionStorage";m(this,e),this.storage=function(e){try{var n=window[e],i="__storage_test__";return n.setItem(i,i),n.removeItem(i),n}catch(t){return null}}(i),this.id=t,this.config={},Object.assign(this.config,n),this._loadConfiguration()}return b(e,[{key:"getConfiguration",value:function(){return this.config}},{key:"setConfiguration",value:function(e){return this.config={},this.updateConfiguration(e)}},{key:"updateConfiguration",value:function(e){if(Object.assign(this.config,e),this.storage){var t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}return this}},{key:"_loadConfiguration",value:function(){var e={};if(this.storage){var t=this.storage.getItem(this.id);e=t?JSON.parse(t):{}}return Object.assign(this.config,e),this}}]),e}();function xw(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:600,r=e.src.replace(/\(/g,"%28").replace(/\)/g,"%29");e.width>i&&(n=Math.min(n,i/e.width));var o=e.width*n,a=e.height*n,s=["font-size:1px;","padding:".concat(Math.floor(a/2),"px ").concat(Math.floor(o/2),"px;"),"line-height:".concat(a,"px;"),"background:url(".concat(r,");"),"background-size:".concat(o,"px ").concat(a,"px;"),"color:transparent;"].join("");return["".concat(t," %c+"),s]}var Sw={BLACK:30,RED:31,GREEN:32,YELLOW:33,BLUE:34,MAGENTA:35,CYAN:36,WHITE:37,BRIGHT_BLACK:90,BRIGHT_RED:91,BRIGHT_GREEN:92,BRIGHT_YELLOW:93,BRIGHT_BLUE:94,BRIGHT_MAGENTA:95,BRIGHT_CYAN:96,BRIGHT_WHITE:97};function Ew(e){return"string"==typeof e?Sw[e.toUpperCase()]||Sw.WHITE:e}function Cw(e,t){if(!e)throw new Error(t||"Assertion failed")}var Ow={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"==typeof process&&process},Tw=Ow.window||Ow.self||Ow.global,Aw=Ow.process||{};function Pw(){var e;if(ww&&Tw.performance)e=Tw.performance.now();else if(Aw.hrtime){var t=Aw.hrtime();e=1e3*t[0]+t[1]/1e6}else e=Date.now();return e}console;var Mw={debug:ww&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Iw={enabled:!0,level:0};function Rw(){}var Dw={},Nw={once:!0};function Lw(e){for(var t in e)for(var n in e[t])return n||"untitled";return"empty"}var jw=function(){var e=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{id:""},n=t.id;m(this,e),this.id=n,this.VERSION=_w,this._startTs=Pw(),this._deltaTs=Pw(),this.LOG_THROTTLE_TIMEOUT=0,this._storage=new kw("__probe-".concat(this.id,"__"),Iw),this.userData={},this.timeStamp("".concat(this.id," started")),function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["constructor"],i=Object.getPrototypeOf(e),r=Object.getOwnPropertyNames(i),o=_(r);try{var a=function(){var i=t.value;"function"==typeof e[i]&&(n.find(function(e){return i===e})||(e[i]=e[i].bind(e)))};for(o.s();!(t=o.n()).done;)a()}catch(s){o.e(s)}finally{o.f()}}(this),Object.seal(this)}return b(e,[{key:"level",get:function(){return this.getLevel()},set:function(e){this.setLevel(e)}},{key:"isEnabled",value:function(){return this._storage.config.enabled}},{key:"getLevel",value:function(){return this._storage.config.level}},{key:"getTotal",value:function(){return Number((Pw()-this._startTs).toPrecision(10))}},{key:"getDelta",value:function(){return Number((Pw()-this._deltaTs).toPrecision(10))}},{key:"priority",get:function(){return this.level},set:function(e){this.level=e}},{key:"getPriority",value:function(){return this.level}},{key:"enable",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this._storage.updateConfiguration({enabled:e}),this}},{key:"setLevel",value:function(e){return this._storage.updateConfiguration({level:e}),this}},{key:"assert",value:function(e,t){Cw(e,t)}},{key:"warn",value:function(e){return this._getLogFunction(0,e,Mw.warn,arguments,Nw)}},{key:"error",value:function(e){return this._getLogFunction(0,e,Mw.error,arguments)}},{key:"deprecated",value:function(e,t){return this.warn("`".concat(e,"` is deprecated and will be removed in a later version. Use `").concat(t,"` instead"))}},{key:"removed",value:function(e,t){return this.error("`".concat(e,"` has been removed. Use `").concat(t,"` instead"))}},{key:"probe",value:function(e,t){return this._getLogFunction(e,t,Mw.log,arguments,{time:!0,once:!0})}},{key:"log",value:function(e,t){return this._getLogFunction(e,t,Mw.debug,arguments)}},{key:"info",value:function(e,t){return this._getLogFunction(e,t,console.info,arguments)}},{key:"once",value:function(e,t){return this._getLogFunction(e,t,Mw.debug||Mw.info,arguments,Nw)}},{key:"table",value:function(e,t,n){return t?this._getLogFunction(e,t,console.table||Rw,n&&[n],{tag:Lw(t)}):Rw}},{key:"image",value:function(e){var t=e.logLevel,n=e.priority,i=e.image,o=e.message,a=void 0===o?"":o,s=e.scale,u=void 0===s?1:s;return this._shouldLog(t||n)?ww?function(e){var t,n=e.image,i=e.message,r=void 0===i?"":i,o=e.scale,a=void 0===o?1:o;if("string"==typeof n){var s=new Image;return s.onload=function(){var e,t=xw(s,r,a);(e=console).log.apply(e,v(t))},s.src=n,Rw}var u=n.nodeName||"";if("img"===u.toLowerCase())return(t=console).log.apply(t,v(xw(n,r,a))),Rw;if("canvas"===u.toLowerCase()){var c=new Image;return c.onload=function(){var e;return(e=console).log.apply(e,v(xw(c,r,a)))},c.src=n.toDataURL(),Rw}return Rw}({image:i,message:a,scale:u}):function(e){var t=e.image,n=e.scale,o=void 0===n?1:n,a=null;try{a=r(75307)}catch(i){}return a?function(){return a(t,{fit:"box",width:"".concat(Math.round(80*o),"%")}).then(function(e){return console.log(e)})}:Rw}({image:i,message:a,scale:u}):Rw}},{key:"settings",value:function(){console.table?console.table(this._storage.config):console.log(this._storage.config)}},{key:"get",value:function(e){return this._storage.config[e]}},{key:"set",value:function(e,t){this._storage.updateConfiguration(o({},e,t))}},{key:"time",value:function(e,t){return this._getLogFunction(e,t,console.time?console.time:console.info)}},{key:"timeEnd",value:function(e,t){return this._getLogFunction(e,t,console.timeEnd?console.timeEnd:console.info)}},{key:"timeStamp",value:function(e,t){return this._getLogFunction(e,t,console.timeStamp||Rw)}},{key:"group",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{collapsed:!1},i=n=Bw({logLevel:e,message:t,opts:n}),r=i.collapsed;return n.method=(r?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}},{key:"groupCollapsed",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return this.group(e,t,Object.assign({},n,{collapsed:!0}))}},{key:"groupEnd",value:function(e){return this._getLogFunction(e,"",console.groupEnd||Rw)}},{key:"withGroup",value:function(e,t,n){this.group(e,t)();try{n()}finally{this.groupEnd(e)()}}},{key:"trace",value:function(){console.trace&&console.trace()}},{key:"_shouldLog",value:function(e){return this.isEnabled()&&this.getLevel()>=Fw(e)}},{key:"_getLogFunction",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],r=arguments.length>4?arguments[4]:void 0;if(this._shouldLog(e)){var o;r=Bw({logLevel:e,message:t,args:i,opts:r}),Cw(n=n||r.method),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=Pw();var a=r.tag||r.message;if(r.once){if(Dw[a])return Rw;Dw[a]=Pw()}return t=function(e,t,n){if("string"==typeof t){var i=n.time?function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:8,n=Math.max(t-e.length,0);return"".concat(" ".repeat(n)).concat(e)}(function(e){return e<10?"".concat(e.toFixed(2),"ms"):e<100?"".concat(e.toFixed(1),"ms"):e<1e3?"".concat(e.toFixed(0),"ms"):"".concat((e/1e3).toFixed(2),"s")}(n.total)):"";t=function(e,t,n){return!ww&&"string"==typeof e&&(t&&(t=Ew(t),e="\x1b[".concat(t,"m").concat(e,"\x1b[39m")),n&&(t=Ew(n),e="\x1b[".concat(n+10,"m").concat(e,"\x1b[49m"))),e}(t=n.time?"".concat(e,": ").concat(i," ").concat(t):"".concat(e,": ").concat(t),n.color,n.background)}return t}(this.id,r.message,r),(o=n).bind.apply(o,[console,t].concat(v(r.args)))}return Rw}}]),e}();return e.VERSION=_w,e}();function Fw(e){if(!e)return 0;var t;switch(typeof e){case"number":t=e;break;case"object":t=e.logLevel||e.priority||0;break;default:return 0}return Cw(Number.isFinite(t)&&t>=0),t}function Bw(e){var t=e.logLevel,n=e.message;e.logLevel=Fw(t);for(var i=e.args?Array.from(e.args):[];i.length&&i.shift()!==n;);switch(e.args=i,typeof t){case"string":case"function":void 0!==n&&i.unshift(n),e.message=t;break;case"object":Object.assign(e,t)}"function"==typeof e.message&&(e.message=e.message());var r=typeof e.message;return Cw("string"===r||"object"===r),Object.assign(e,e.opts)}var Vw=new jw({id:"deck"}),zw={DEFAULT:-1,LNGLAT:1,METER_OFFSETS:2,LNGLAT_OFFSETS:3,CARTESIAN:0};Object.defineProperty(zw,"IDENTITY",{get:function(){return Vw.deprecated("COORDINATE_SYSTEM.IDENTITY","COORDINATE_SYSTEM.CARTESIAN")()||0}});var Uw={WEB_MERCATOR:1,GLOBE:2,WEB_MERCATOR_AUTO_OFFSET:4,IDENTITY:0},Hw={click:{handler:"onClick"},panstart:{handler:"onDragStart"},panmove:{handler:"onDrag"},panend:{handler:"onDragEnd"}},Gw=new jw({id:"luma.gl"});function Ww(e,t){if(!e)throw new Error(t||"luma.gl: assertion failed.")}function qw(e){return"undefined"!=typeof WebGLRenderingContext&&e instanceof WebGLRenderingContext||"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||Boolean(e&&Number.isFinite(e._version))}function Xw(e){return"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||Boolean(e&&2===e._version)}function Yw(e){return Ww(qw(e),"Invalid WebGLRenderingContext"),e}function Kw(e){return Ww(Xw(e),"Requires WebGL2"),e}var $w=r(84761),Qw={},Zw=function e(t){var n=t.gl;this.ext=t,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(t.maxVertexAttribs);for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:{},i=n.copyState,r=void 0!==i&&i,o=n.log,a=void 0===o?function(){}:o;m(this,e),this.gl=t,this.program=null,this.stateStack=[],this.enable=!0,this.cache=r?function(e,t){if("number"==typeof(t=t||uk)){var n=t,i=yk[n];return i?i(e,n):e.getParameter(n)}var r,o={},a=_(Array.isArray(t)?t:Object.keys(t));try{for(a.s();!(r=a.n()).done;){var s=r.value,u=yk[s];o[s]=u?u(e,Number(s)):e.getParameter(Number(s))}}catch(c){a.e(c)}finally{a.f()}return o}(t):Object.assign({},uk),this.log=a,this._updateCache=this._updateCache.bind(this),Object.seal(this)}return b(e,[{key:"push",value:function(){this.stateStack.push({})}},{key:"pop",value:function(){Ww(this.stateStack.length>0),Ck(this.gl,this.stateStack[this.stateStack.length-1]),this.stateStack.pop()}},{key:"_updateCache",value:function(e){var t,n=!1,i=this.stateStack.length>0&&this.stateStack[this.stateStack.length-1];for(var r in e){Ww(void 0!==r);var o=e[r],a=this.cache[r];_k(o,a)||(n=!0,t=a,i&&!(r in i)&&(i[r]=a),this.cache[r]=o)}return{valueChanged:n,oldValue:t}}}]),e}();function Sk(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.enable,i=void 0===n||n,r=t.copyState;if(Ww(void 0!==r),!e.state){var o="undefined"!=typeof global?global:window,a=o.polyfillContext;for(var s in a&&a(e),e.state=new xk(e,{copyState:r}),function(e){var t=e.useProgram.bind(e);e.useProgram=function(n){e.state.program!==n&&(t(n),e.state.program=n)}}(e),gk)kk(e,s,gk[s]);wk(e,"getParameter"),wk(e,"isEnabled")}return e.state.enable=i,e}function Ek(e){Ww(e.state),e.state.pop()}function Ck(e,t){if(Ww(qw(e),"setParameters requires a WebGL context"),!bk(t)){var n={};for(var i in t){var r=Number(i),o=fk[i];o&&("string"==typeof o?n[o]=!0:o(e,t[i],r))}var a=e.state&&e.state.cache;if(a)for(var s in n)vk[s](e,t,a)}}function Ok(e,t,n){if(bk(t))return n(e);var i,r=t.nocatch,o=void 0===r||r;if(function(e){e.state||Sk(e,{copyState:!1}),e.state.push()}(e),Ck(e,t),o)i=n(e),Ek(e);else try{i=n(e)}finally{Ek(e)}return i}function Tk(e){var t=e.luma;if(e.canvas&&t){var n=t.canvasSizeInfo.clientWidth;return n?e.drawingBufferWidth/n:1}return 1}function Ak(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return function(e,t,n,i,r){var o,a=Pk(e[0],t,n),s=Mk(e[1],t,i,r),u=Pk(e[0]+1,t,n),c=u===n-1?u:u-1;return u=Mk(e[1]+1,t,i,r),r?(o=s,s=u=0===u?u:u+1):o=u===i-1?u:u-1,{x:a,y:s,width:Math.max(c-a+1,1),height:Math.max(o-s+1,1)}}(t,Tk(e),e.drawingBufferWidth,e.drawingBufferHeight,n)}function Pk(e,t,n){return Math.min(Math.round(e*t),n-1)}function Mk(e,t,n,i){return i?Math.max(0,n-1-Math.round(e*t)):Math.min(Math.round(e*t),n-1)}var Ik=(0,$w.jU)(),Rk=Ik&&"undefined"!=typeof document,Dk={webgl2:!0,webgl1:!0,throwOnError:!0,manageState:!0,canvas:null,debug:!1,width:800,height:600};function Nk(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Ww(Ik,"createGLContext only available in the browser.\nCreate your own headless context or use 'createHeadlessContext' from @luma.gl/test-utils");var t,n=e=Object.assign({},Dk,e),i=n.width,r=n.height;function o(t){if(e.throwOnError)throw new Error(t);return console.error(t),null}e.onError=o;var a=e,s=a.canvas,u=function(e){var t,n=e.canvas,i=e.width,r=void 0===i?800:i,o=e.height,a=void 0===o?600:o,s=e.onError;return"string"==typeof n?(Rk&&"complete"===document.readyState||s("createGLContext called on canvas '".concat(n,"' before page was loaded")),t=document.getElementById(n)):n?t=n:((t=document.createElement("canvas")).id="lumagl-canvas",t.style.width=Number.isFinite(r)?"".concat(r,"px"):"100%",t.style.height=Number.isFinite(a)?"".concat(a,"px"):"100%",document.body.insertBefore(t,document.body.firstChild)),t}({canvas:s,width:i,height:r,onError:o});return(t=function(e,t){var n=t.onError,i=null,r=function(e){return i=e.statusMessage||i};e.addEventListener("webglcontextcreationerror",r,!1);var o=t.webgl1,a=void 0===o||o,s=t.webgl2,u=void 0===s||s,c=null;return u&&(c=(c=c||e.getContext("webgl2",t))||e.getContext("experimental-webgl2",t)),a&&(c=(c=c||e.getContext("webgl",t))||e.getContext("experimental-webgl",t)),e.removeEventListener("webglcontextcreationerror",r,!1),c?(t.onContextLost&&e.addEventListener("webglcontextlost",t.onContextLost,!1),t.onContextRestored&&e.addEventListener("webglcontextrestored",t.onContextRestored,!1),c):n("Failed to create ".concat(u&&!a?"WebGL2":"WebGL"," context: ").concat(i||"Unknown error"))}(u,e))?(function(e){var t=Xw(e)?"WebGL2":"WebGL1",n=function(e){var t=e.getParameter(7936),n=e.getParameter(7937),i=e.getExtension("WEBGL_debug_renderer_info");return{vendor:i&&e.getParameter(i.UNMASKED_VENDOR_WEBGL||7936)||t,renderer:i&&e.getParameter(i.UNMASKED_RENDERER_WEBGL||7937)||n,vendorMasked:t,rendererMasked:n,version:e.getParameter(7938),shadingLanguageVersion:e.getParameter(35724)}}(e);Gw.info(1,"".concat(t).concat(e.debug?" debug":""," context ").concat(n?"(".concat(n.vendor,",").concat(n.renderer,")"):""))()}(t=Lk(t,e)),t):null}function Lk(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e||e._instrumented)return e;e._version=e._version||function(e){return"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext?2:1}(e),e.luma=e.luma||{},e.luma.canvasSizeInfo=e.luma.canvasSizeInfo||{};var n=t=Object.assign({},Dk,t),i=n.manageState,r=n.debug;return i&&Sk(e,{copyState:!1,log:function(){for(var e=arguments.length,t=new Array(e),n=0;n0?this.lastSampleCount/this.sampleSize:0}},{key:"getSampleAverageTime",value:function(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}},{key:"getSampleHz",value:function(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}},{key:"getAverageCount",value:function(){return this.samples>0?this.count/this.samples:0}},{key:"getAverageTime",value:function(){return this.samples>0?this.time/this.samples:0}},{key:"getHz",value:function(){return this.time>0?this.samples/(this.time/1e3):0}},{key:"reset",value:function(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}},{key:"_checkSampling",value:function(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}}]),e}(),Bk=function(){function e(t){var n=t.id,i=t.stats;m(this,e),this.id=n,this.stats={},this._initializeStats(i),Object.seal(this)}return b(e,[{key:"get",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"count";return this._getOrCreate({name:e,type:t})}},{key:"size",get:function(){return Object.keys(this.stats).length}},{key:"reset",value:function(){for(var e in this.stats)this.stats[e].reset();return this}},{key:"forEach",value:function(e){for(var t in this.stats)e(this.stats[t])}},{key:"getTable",value:function(){var e={};return this.forEach(function(t){e[t.name]={time:t.time||0,count:t.count||0,average:t.getAverageTime()||0,hz:t.getHz()||0}}),e}},{key:"_initializeStats",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];t.forEach(function(t){return e._getOrCreate(t)})}},{key:"_getOrCreate",value:function(e){if(!e||!e.name)return null;var t=e.name,n=e.type;return this.stats[t]||(this.stats[t]=e instanceof Fk?e:new Fk(t,n)),this.stats[t]}}]),e}(),Vk="8.5.7",zk=new(function(){function e(){m(this,e),this.stats=new Map}return b(e,[{key:"get",value:function(e){return this.stats.has(e)||this.stats.set(e,new Bk({id:e})),this.stats.get(e)}}]),e}());if($w.CO.luma&&$w.CO.luma.VERSION!==Vk)throw new Error("luma.gl - multiple VERSIONs detected: ".concat($w.CO.luma.VERSION," vs 8.5.7"));function Uk(e,t){if(!e)throw new Error(t||"luma.gl: assertion failed.")}function Hk(e,t){if("string"!=typeof t)return t;var n=Number(t);if(!isNaN(n))return n;var i=e[t=t.replace(/^.*\./,"")];return Uk(void 0!==i,"Accessing undefined constant GL.".concat(t)),i}function Gk(e,t){for(var n in t=Number(t),e)if(e[n]===t)return"GL.".concat(n);return String(t)}$w.CO.luma||((0,$w.jU)()&&Gw.log(1,"luma.gl 8.5.7 - set luma.log.level=1 (or higher) to trace rendering")(),$w.CO.luma=$w.CO.luma||{VERSION:Vk,version:Vk,log:Gw,stats:zk,globals:{modules:{},nodeIO:{}}});var Wk={};function qk(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"id";return Wk[e]=Wk[e]||1,"".concat(e,"-").concat(Wk[e]++)}function Xk(e){return Uk("number"==typeof e,"Input must be a number"),e&&0==(e&e-1)}function Yk(e){var t=!0;for(var n in e){t=!1;break}return t}function Kk(e,t,n,i){var r="See luma.gl ".concat(n," Upgrade Guide at https://luma.gl/docs/upgrade-guide"),o=Object.getPrototypeOf(e);i.forEach(function(e){o.methodName||(o[e]=function(){throw Gw.removed("Calling removed method ".concat(t,".").concat(e,": "),r)(),new Error(e)})})}var $k="Resource subclass must define virtual methods",Qk=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),Yw(t);var i=n.id,r=n.userData,o=void 0===r?{}:r;this.gl=t,this.gl2=t,this.id=i||qk(this.constructor.name),this.userData=o,this._bound=!1,this._handle=n.handle,void 0===this._handle&&(this._handle=this._createHandle()),this.byteLength=0,this._addStats()}return b(e,[{key:"toString",value:function(){return"".concat(this.constructor.name,"(").concat(this.id,")")}},{key:"handle",get:function(){return this._handle}},{key:"delete",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.deleteChildren,n=void 0!==t&&t,i=this._handle&&this._deleteHandle(this._handle);return this._handle&&this._removeStats(),this._handle=null,i&&n&&i.filter(Boolean).forEach(function(e){return e.delete()}),this}},{key:"bind",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.handle;return"function"!=typeof t?(this._bindHandle(t),this):(this._bound?e=t():(this._bindHandle(this.handle),this._bound=!0,e=t(),this._bound=!1,this._bindHandle(null)),e)}},{key:"unbind",value:function(){this.bind(null)}},{key:"getParameter",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Uk(e=Hk(this.gl,e));var n=(this.constructor.PARAMETERS||{})[e];if(n){var i=Xw(this.gl);if("webgl2"in n&&!i||"extension"in n&&!this.gl.getExtension(n.extension)){var r=n.webgl1,o="webgl2"in n?n.webgl2:n.webgl1;return i?o:r}}return this._getParameter(e,t)}},{key:"getParameters",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.parameters,i=t.keys,r=this.constructor.PARAMETERS||{},o=Xw(this.gl),a={},s=n||Object.keys(r),u=_(s);try{for(u.s();!(e=u.n()).done;){var c=e.value,l=r[c];if(l&&(!("webgl2"in l)||o)&&(!("extension"in l)||this.gl.getExtension(l.extension))){var h=i?Gk(this.gl,c):c;a[h]=this.getParameter(c,t),i&&"GLenum"===l.type&&(a[h]=Gk(this.gl,a[h]))}}}catch(d){u.e(d)}finally{u.f()}return a}},{key:"setParameter",value:function(e,t){Uk(e=Hk(this.gl,e));var n=(this.constructor.PARAMETERS||{})[e];if(n){var i=Xw(this.gl);if("webgl2"in n&&!i||"extension"in n&&!this.gl.getExtension(n.extension))throw new Error("Parameter not available on this platform");"GLenum"===n.type&&(t=Hk(t))}return this._setParameter(e,t),this}},{key:"setParameters",value:function(e){for(var t in e)this.setParameter(t,e[t]);return this}},{key:"stubRemovedMethods",value:function(e,t,n){return Kk(this,e,t,n)}},{key:"initialize",value:function(e){}},{key:"_createHandle",value:function(){throw new Error($k)}},{key:"_deleteHandle",value:function(){throw new Error($k)}},{key:"_bindHandle",value:function(e){throw new Error($k)}},{key:"_getOptsFromHandle",value:function(){throw new Error($k)}},{key:"_getParameter",value:function(e,t){throw new Error($k)}},{key:"_setParameter",value:function(e,t){throw new Error($k)}},{key:"_context",value:function(){return this.gl.luma=this.gl.luma||{},this.gl.luma}},{key:"_addStats",value:function(){var e=this.constructor.name,t=zk.get("Resource Counts");t.get("Resources Created").incrementCount(),t.get("".concat(e,"s Created")).incrementCount(),t.get("".concat(e,"s Active")).incrementCount()}},{key:"_removeStats",value:function(){var e=this.constructor.name;zk.get("Resource Counts").get("".concat(e,"s Active")).decrementCount()}},{key:"_trackAllocatedMemory",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.constructor.name,n=zk.get("Memory Usage");n.get("GPU Memory").addCount(e),n.get("".concat(t," Memory")).addCount(e),this.byteLength=e}},{key:"_trackDeallocatedMemory",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.constructor.name,t=zk.get("Memory Usage");t.get("GPU Memory").subtractCount(this.byteLength),t.get("".concat(e," Memory")).subtractCount(this.byteLength),this.byteLength=0}}]),e}();function Zk(e){switch(ArrayBuffer.isView(e)?e.constructor:e){case Float32Array:return 5126;case Uint16Array:return 5123;case Uint32Array:return 5125;case Uint8Array:case Uint8ClampedArray:return 5121;case Int8Array:return 5120;case Int16Array:return 5122;case Int32Array:return 5124;default:throw new Error("Failed to deduce GL constant from typed array")}}function Jk(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.clamped,i=void 0===n||n;switch(e){case 5126:return Float32Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return i?Uint8ClampedArray:Uint8Array;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}function ex(e){for(var t=e.data,n=e.width,i=e.height,r=Math.round(n/2),o=Math.round(i/2),a=new Uint8Array(r*o*4),s=0;s0&&void 0!==arguments[0]?arguments[0]:{};return void 0!==(e=tx("Accessor",e,ix)).type&&(this.type=e.type,(5124===e.type||5125===e.type)&&(this.integer=!0)),void 0!==e.size&&(this.size=e.size),void 0!==e.offset&&(this.offset=e.offset),void 0!==e.stride&&(this.stride=e.stride),void 0!==e.normalized&&(this.normalized=e.normalized),void 0!==e.integer&&(this.integer=e.integer),void 0!==e.divisor&&(this.divisor=e.divisor),void 0!==e.buffer&&(this.buffer=e.buffer),void 0!==e.index&&(this.index="boolean"==typeof e.index?e.index?1:0:e.index),void 0!==e.instanced&&(this.divisor=e.instanced?1:0),void 0!==e.isInstanced&&(this.divisor=e.isInstanced?1:0),this}}],[{key:"getBytesPerElement",value:function(e){return Jk(e.type||5126).BYTES_PER_ELEMENT}},{key:"getBytesPerVertex",value:function(e){return Uk(e.size),Jk(e.type||5126).BYTES_PER_ELEMENT*e.size}},{key:"resolve",value:function(){for(var t=arguments.length,n=new Array(t),i=0;i1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),(i=t.call(this,e,r)).stubRemovedMethods("Buffer","v6.0",["layout","setLayout","getIndexedParameter"]),i.target=r.target||(i.gl.webgl2?36662:34962),i.initialize(r),Object.seal(c(i)),i}return b(n,[{key:"getElementCount",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.accessor;return Math.round(this.byteLength/rx.getBytesPerElement(e))}},{key:"getVertexCount",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.accessor;return Math.round(this.byteLength/rx.getBytesPerVertex(e))}},{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return ArrayBuffer.isView(e)&&(e={data:e}),Number.isFinite(e)&&(e={byteLength:e}),e=tx("Buffer",e,ax),this.usage=e.usage||35044,this.debugData=null,this.setAccessor(Object.assign({},e,e.accessor)),e.data?this._setData(e.data,e.offset,e.byteLength):this._setByteLength(e.byteLength||0),this}},{key:"setProps",value:function(e){return"accessor"in(e=tx("Buffer",e,sx))&&this.setAccessor(e.accessor),this}},{key:"setAccessor",value:function(e){return delete(e=Object.assign({},e)).buffer,this.accessor=new rx(e),this}},{key:"reallocate",value:function(e){return e>this.byteLength?(this._setByteLength(e),!0):(this.bytesUsed=e,!1)}},{key:"setData",value:function(e){return this.initialize(e)}},{key:"subData",value:function(e){ArrayBuffer.isView(e)&&(e={data:e});var t=e,n=t.data,i=t.offset,r=void 0===i?0:i,o=t.srcOffset,a=void 0===o?0:o,s=e.byteLength||e.length;Uk(n);var u=this.gl.webgl2?36663:this.target;return this.gl.bindBuffer(u,this.handle),0!==a||void 0!==s?(Kw(this.gl),this.gl.bufferSubData(this.target,r,n,a,s)):this.gl.bufferSubData(u,r,n),this.gl.bindBuffer(u,null),this.debugData=null,this._inferType(n),this}},{key:"copyData",value:function(e){var t=e.sourceBuffer,n=e.readOffset,i=void 0===n?0:n,r=e.writeOffset,o=void 0===r?0:r,a=e.size,s=this.gl;return Kw(s),s.bindBuffer(36662,t.handle),s.bindBuffer(36663,this.handle),s.copyBufferSubData(36662,36663,i,o,a),s.bindBuffer(36662,null),s.bindBuffer(36663,null),this.debugData=null,this}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.dstData,n=void 0===t?null:t,i=e.srcByteOffset,r=void 0===i?0:i,o=e.dstOffset,a=void 0===o?0:o,s=e.length,u=void 0===s?0:s;Kw(this.gl);var c,l,h=Jk(this.accessor.type||5126,{clamped:!1}),d=this._getAvailableElementCount(r),f=a;n?c=(l=n.length)-f:l=f+(c=Math.min(d,u||d));var p=Math.min(d,c);return Uk((u=u||p)<=p),n=n||new h(l),this.gl.bindBuffer(36662,this.handle),this.gl.getBufferSubData(36662,r,n,a,u),this.gl.bindBuffer(36662,null),n}},{key:"bind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?this.target:t,i=e.index,r=void 0===i?this.accessor&&this.accessor.index:i,o=e.offset,a=void 0===o?0:o,s=e.size;return 35345===n||35982===n?void 0!==s?this.gl.bindBufferRange(n,r,this.handle,a,s):(Uk(0===a),this.gl.bindBufferBase(n,r,this.handle)):this.gl.bindBuffer(n,this.handle),this}},{key:"unbind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?this.target:t,i=e.index,r=void 0===i?this.accessor&&this.accessor.index:i;return 35345===n||35982===n?this.gl.bindBufferBase(n,r,null):this.gl.bindBuffer(n,null),this}},{key:"getDebugData",value:function(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(10,this.byteLength)}),{data:this.debugData,changed:!0})}},{key:"invalidateDebugData",value:function(){this.debugData=null}},{key:"_setData",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.byteLength+t;Uk(ArrayBuffer.isView(e)),this._trackDeallocatedMemory();var i=this._getTarget();this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,this.usage),this.gl.bufferSubData(i,t,e),this.gl.bindBuffer(i,null),this.debugData=e.slice(0,10),this.bytesUsed=n,this._trackAllocatedMemory(n);var r=Zk(e);return Uk(r),this.setAccessor(new rx(this.accessor,{type:r})),this}},{key:"_setByteLength",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.usage;Uk(e>=0),this._trackDeallocatedMemory();var n=e;0===e&&(n=new Float32Array(0));var i=this._getTarget();return this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,t),this.gl.bindBuffer(i,null),this.usage=t,this.debugData=null,this.bytesUsed=e,this._trackAllocatedMemory(e),this}},{key:"_getTarget",value:function(){return this.gl.webgl2?36663:this.target}},{key:"_getAvailableElementCount",value:function(e){var t=e/Jk(this.accessor.type||5126,{clamped:!1}).BYTES_PER_ELEMENT;return this.getElementCount()-t}},{key:"_inferType",value:function(e){this.accessor.type||this.setAccessor(new rx(this.accessor,{type:Zk(e)}))}},{key:"_createHandle",value:function(){return this.gl.createBuffer()}},{key:"_deleteHandle",value:function(){this.gl.deleteBuffer(this.handle),this._trackDeallocatedMemory()}},{key:"_getParameter",value:function(e){this.gl.bindBuffer(this.target,this.handle);var t=this.gl.getBufferParameter(this.target,e);return this.gl.bindBuffer(this.target,null),t}},{key:"type",get:function(){return Gw.deprecated("Buffer.type","Buffer.accessor.type")(),this.accessor.type}},{key:"bytes",get:function(){return Gw.deprecated("Buffer.bytes","Buffer.byteLength")(),this.byteLength}},{key:"setByteLength",value:function(e){return Gw.deprecated("setByteLength","reallocate")(),this.reallocate(e)}},{key:"updateAccessor",value:function(e){return Gw.deprecated("updateAccessor(...)","setAccessor(new Accessor(buffer.accessor, ...)")(),this.accessor=new rx(this.accessor,e),this}}]),n}(Qk),cx={6407:{dataFormat:6407,types:[5121,33635]},6408:{dataFormat:6408,types:[5121,32819,32820]},6406:{dataFormat:6406,types:[5121]},6409:{dataFormat:6409,types:[5121]},6410:{dataFormat:6410,types:[5121]},33326:{dataFormat:6403,types:[5126],gl2:!0},33328:{dataFormat:33319,types:[5126],gl2:!0},34837:{dataFormat:6407,types:[5126],gl2:!0},34836:{dataFormat:6408,types:[5126],gl2:!0}},lx={6403:1,36244:1,33319:2,33320:2,6407:3,36248:3,6408:4,36249:4,6402:1,34041:1,6406:1,6409:1,6410:2},hx={5126:4,5125:4,5124:4,5123:2,5122:2,5131:2,5120:1,5121:1},dx=[9729,9728],fx=$w.CO.WebGLBuffer||function(){},px=function(e){a(i,e);var n=s(i);function i(e,t){var r;m(this,i);var o=t.id,a=void 0===o?qk("texture"):o,s=t.handle,u=t.target;return(r=n.call(this,e,{id:a,handle:s})).target=u,r.textureUnit=void 0,r.loaded=!1,r.width=void 0,r.height=void 0,r.depth=void 0,r.format=void 0,r.type=void 0,r.dataFormat=void 0,r.border=void 0,r.textureUnit=void 0,r.mipmaps=void 0,r}return b(i,[{key:"toString",value:function(){return"Texture(".concat(this.id,",").concat(this.width,"x").concat(this.height,")")}},{key:"initialize",value:function(){var e,t=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.data;if(i instanceof Promise)return i.then(function(e){return t.initialize(Object.assign({},n,{pixels:e,data:e}))}),this;var r="undefined"!=typeof HTMLVideoElement&&i instanceof HTMLVideoElement;if(r&&i.readyState=HTMLVideoElement.HAVE_CURRENT_DATA?i.currentTime:-1}),this}},{key:"update",value:function(){if(this._video){var e=this._video,t=e.video,n=e.parameters;if(e.lastTime===t.currentTime||t.readyState0&&void 0!==arguments[0]?arguments[0]:{};return this._isNPOT()?(Gw.warn("texture: ".concat(this," is Non-Power-Of-Two, disabling mipmaping"))(),this):(this.mipmaps=!0,this.gl.bindTexture(this.target,this.handle),Ok(this.gl,t,function(){e.gl.generateMipmap(e.target)}),this.gl.bindTexture(this.target,null),this)}},{key:"setImageData",value:function(e){var n,i;this._trackDeallocatedMemory("Texture");var r=e.target,o=void 0===r?this.target:r,a=e.pixels,s=void 0===a?null:a,u=e.level,c=void 0===u?0:u,l=e.format,h=void 0===l?this.format:l,d=e.border,f=void 0===d?this.border:d,p=e.offset,v=void 0===p?0:p,g=e.parameters,m=void 0===g?{}:g,y=e.data,b=void 0===y?null:y,w=e.type,k=void 0===w?this.type:w,x=e.width,S=void 0===x?this.width:x,E=e.height,C=void 0===E?this.height:E,O=e.dataFormat,T=void 0===O?this.dataFormat:O,A=e.compressed,P=void 0!==A&&A;b||(b=s),n=this._deduceParameters({format:h,type:k,dataFormat:T,compressed:P,data:b,width:S,height:C}),k=n.type,T=n.dataFormat,P=n.compressed,S=n.width,C=n.height;var M=this.gl;M.bindTexture(this.target,this.handle);var I,R;return i=this._getDataType({data:b,compressed:P}),b=i.data,R=i.dataType,Ok(this.gl,m,function(){switch(R){case"null":M.texImage2D(o,c,h,S,C,f,T,k,b);break;case"typed-array":M.texImage2D(o,c,h,S,C,f,T,k,b,v);break;case"buffer":(I=Kw(M)).bindBuffer(35052,b.handle||b),I.texImage2D(o,c,h,S,C,f,T,k,v),I.bindBuffer(35052,null);break;case"browser-object":Xw(M)?M.texImage2D(o,c,h,S,C,f,T,k,b):M.texImage2D(o,c,h,T,k,b);break;case"compressed":var e,n=_(b.entries());try{for(n.s();!(e=n.n()).done;){var i=t(e.value,2),r=i[0],a=i[1];M.compressedTexImage2D(o,r,a.format,a.width,a.height,f,a.data)}}catch(s){n.e(s)}finally{n.f()}break;default:Uk(!1,"Unknown image data type")}}),this._trackAllocatedMemory(b&&b.byteLength?b.byteLength:this.width*this.height*(lx[this.dataFormat]||4)*(hx[this.type]||1),"Texture"),this.loaded=!0,this}},{key:"setSubImageData",value:function(e){var t,n=this,i=e.target,r=void 0===i?this.target:i,o=e.pixels,a=void 0===o?null:o,s=e.data,u=void 0===s?null:s,c=e.x,l=void 0===c?0:c,h=e.y,d=void 0===h?0:h,f=e.width,p=void 0===f?this.width:f,v=e.height,g=void 0===v?this.height:v,m=e.level,y=void 0===m?0:m,b=e.format,_=void 0===b?this.format:b,w=e.type,k=void 0===w?this.type:w,x=e.dataFormat,S=void 0===x?this.dataFormat:x,E=e.compressed,C=void 0!==E&&E,O=e.offset,T=void 0===O?0:O,A=e.border,P=(void 0===A&&this.border,e.parameters),M=void 0===P?{}:P;if(t=this._deduceParameters({format:_,type:k,dataFormat:S,compressed:C,data:u,width:p,height:g}),k=t.type,S=t.dataFormat,C=t.compressed,p=t.width,g=t.height,Uk(0===this.depth,"texSubImage not supported for 3D textures"),u||(u=a),u&&u.data){var I=u;u=I.data,p=I.shape[0],g=I.shape[1]}u instanceof ux&&(u=u.handle),this.gl.bindTexture(this.target,this.handle),Ok(this.gl,M,function(){if(C)n.gl.compressedTexSubImage2D(r,y,l,d,p,g,_,u);else if(null===u)n.gl.texSubImage2D(r,y,l,d,p,g,S,k,null);else if(ArrayBuffer.isView(u))n.gl.texSubImage2D(r,y,l,d,p,g,S,k,u,T);else if(u instanceof fx){var e=Kw(n.gl);e.bindBuffer(35052,u),e.texSubImage2D(r,y,l,d,p,g,S,k,T),e.bindBuffer(35052,null)}else Xw(n.gl)?Kw(n.gl).texSubImage2D(r,y,l,d,p,g,S,k,u):n.gl.texSubImage2D(r,y,l,d,S,k,u)}),this.gl.bindTexture(this.target,null)}},{key:"copyFramebuffer",value:function(){return Gw.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}},{key:"getActiveUnit",value:function(){return this.gl.getParameter(34016)-33984}},{key:"bind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.textureUnit,t=this.gl;return void 0!==e&&(this.textureUnit=e,t.activeTexture(33984+e)),t.bindTexture(this.target,this.handle),e}},{key:"unbind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.textureUnit,t=this.gl;return void 0!==e&&(this.textureUnit=e,t.activeTexture(33984+e)),t.bindTexture(this.target,null),e}},{key:"_getDataType",value:function(e){var t=e.data,n=e.compressed;return void 0!==n&&n?{data:t,dataType:"compressed"}:null===t?{data:t,dataType:"null"}:ArrayBuffer.isView(t)?{data:t,dataType:"typed-array"}:t instanceof ux?{data:t.handle,dataType:"buffer"}:t instanceof fx?{data:t,dataType:"buffer"}:{data:t,dataType:"browser-object"}}},{key:"_deduceParameters",value:function(e){var t,n=e.format,i=e.data,r=e.width,o=e.height,a=e.dataFormat,s=e.type,u=e.compressed,c=cx[n];return{dataFormat:a=a||c&&c.dataFormat,type:s=s||c&&c.types[0],compressed:u=u||c&&c.compressed,width:r=(t=this._deduceImageSize(i,r,o)).width,height:o=t.height,format:n,data:i}}},{key:"_deduceImageSize",value:function(e,t,n){var i;return Uk(i="undefined"!=typeof ImageData&&e instanceof ImageData?{width:e.width,height:e.height}:"undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement?{width:e.naturalWidth,height:e.naturalHeight}:"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap?{width:e.width,height:e.height}:"undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement?{width:e.videoWidth,height:e.videoHeight}:e?{width:t,height:n}:{width:t>=0?t:1,height:n>=0?n:1},"Could not deduced texture size"),Uk(void 0===t||i.width===t,"Deduced texture width does not match supplied width"),Uk(void 0===n||i.height===n,"Deduced texture height does not match supplied height"),i}},{key:"_createHandle",value:function(){return this.gl.createTexture()}},{key:"_deleteHandle",value:function(){this.gl.deleteTexture(this.handle),this._trackDeallocatedMemory("Texture")}},{key:"_getParameter",value:function(e){switch(e){case 4096:return this.width;case 4097:return this.height;default:this.gl.bindTexture(this.target,this.handle);var t=this.gl.getTexParameter(this.target,e);return this.gl.bindTexture(this.target,null),t}}},{key:"_setParameter",value:function(e,t){switch(this.gl.bindTexture(this.target,this.handle),t=this._getNPOTParam(e,t),e){case 33082:case 33083:this.gl.texParameterf(this.handle,e,t);break;case 4096:case 4097:Uk(!1);break;default:this.gl.texParameteri(this.target,e,t)}return this.gl.bindTexture(this.target,null),this}},{key:"_isNPOT",value:function(){return!(Xw(this.gl)||!this.width||!this.height||Xk(this.width)&&Xk(this.height))}},{key:"_updateForNPOT",value:function(e){void 0===e[this.gl.TEXTURE_MIN_FILTER]&&(e[this.gl.TEXTURE_MIN_FILTER]=this.gl.LINEAR),void 0===e[this.gl.TEXTURE_WRAP_S]&&(e[this.gl.TEXTURE_WRAP_S]=this.gl.CLAMP_TO_EDGE),void 0===e[this.gl.TEXTURE_WRAP_T]&&(e[this.gl.TEXTURE_WRAP_T]=this.gl.CLAMP_TO_EDGE)}},{key:"_getNPOTParam",value:function(e,t){if(this._isNPOT())switch(e){case 10241:-1===dx.indexOf(t)&&(t=9729);break;case 10242:case 10243:33071!==t&&(t=33071)}return t}}],[{key:"isSupported",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.format,i=t.linearFiltering,r=!0;return n&&(r=(r=r&&function(e,t){var n=cx[t];if(!n)return!1;if(void 0===n.gl1&&void 0===n.gl2)return!0;var i=Xw(e)&&n.gl2||n.gl1;return"string"==typeof i?e.getExtension(i):i}(e,n))&&(!i||function(e,t){var n=cx[t];switch(n&&n.types[0]){case 5126:return e.getExtension("OES_texture_float_linear");case 5131:return e.getExtension("OES_texture_half_float_linear");default:return!0}}(e,n))),r}}]),i}(Qk);function vx(e,t){return Uk("string"==typeof e),e=""+e,new Promise(function(n,i){try{var r=new Image;r.onload=function(){return n(r)},r.onerror=function(){return i(new Error("Could not load image ".concat(e,".")))},r.crossOrigin=t&&t.crossOrigin||"anonymous",r.src=e}catch(r){i(r)}})}var gx=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Yw(e),(r instanceof Promise||"string"==typeof r)&&(r={data:r}),"string"==typeof r.data&&(r=Object.assign({},r,{data:vx(r.data)})),(i=t.call(this,e,Object.assign({},r,{target:3553}))).initialize(r),Object.seal(c(i)),i}return b(n,null,[{key:"isSupported",value:function(e,t){return px.isSupported(e,t)}}]),n}(px),mx="EXT_color_buffer_float",yx={33189:{bpp:2},33190:{gl2:!0,bpp:3},36012:{gl2:!0,bpp:4},36168:{bpp:1},34041:{bpp:4},35056:{gl2:!0,bpp:4},36013:{gl2:!0,bpp:5},32854:{bpp:2},36194:{bpp:2},32855:{bpp:2},33321:{gl2:!0,bpp:1},33330:{gl2:!0,bpp:1},33329:{gl2:!0,bpp:1},33332:{gl2:!0,bpp:2},33331:{gl2:!0,bpp:2},33334:{gl2:!0,bpp:4},33333:{gl2:!0,bpp:4},33323:{gl2:!0,bpp:2},33336:{gl2:!0,bpp:2},33335:{gl2:!0,bpp:2},33338:{gl2:!0,bpp:4},33337:{gl2:!0,bpp:4},33340:{gl2:!0,bpp:8},33339:{gl2:!0,bpp:8},32849:{gl2:!0,bpp:3},32856:{gl2:!0,bpp:4},32857:{gl2:!0,bpp:4},36220:{gl2:!0,bpp:4},36238:{gl2:!0,bpp:4},36975:{gl2:!0,bpp:4},36214:{gl2:!0,bpp:8},36232:{gl2:!0,bpp:8},36226:{gl2:!0,bpp:16},36208:{gl2:!0,bpp:16},33325:{gl2:mx,bpp:2},33327:{gl2:mx,bpp:4},34842:{gl2:mx,bpp:8},33326:{gl2:mx,bpp:4},33328:{gl2:mx,bpp:8},34836:{gl2:mx,bpp:16},35898:{gl2:mx,bpp:4}},bx=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),(i=t.call(this,e,r)).initialize(r),Object.seal(c(i)),i}return b(n,[{key:"initialize",value:function(e){var t=e.format,n=e.width,i=void 0===n?1:n,r=e.height,o=void 0===r?1:r,a=e.samples,s=void 0===a?0:a;return Uk(t,"Needs format"),this._trackDeallocatedMemory(),this.gl.bindRenderbuffer(36161,this.handle),0!==s&&Xw(this.gl)?this.gl.renderbufferStorageMultisample(36161,s,t,i,o):this.gl.renderbufferStorage(36161,t,i,o),this.format=t,this.width=i,this.height=o,this.samples=s,this._trackAllocatedMemory(this.width*this.height*(this.samples||1)*yx[this.format].bpp),this}},{key:"resize",value:function(e){var t=e.width,n=e.height;return t!==this.width||n!==this.height?this.initialize({width:t,height:n,format:this.format,samples:this.samples}):this}},{key:"_createHandle",value:function(){return this.gl.createRenderbuffer()}},{key:"_deleteHandle",value:function(){this.gl.deleteRenderbuffer(this.handle),this._trackDeallocatedMemory()}},{key:"_bindHandle",value:function(e){this.gl.bindRenderbuffer(36161,e)}},{key:"_syncHandle",value:function(e){this.format=this.getParameter(36164),this.width=this.getParameter(36162),this.height=this.getParameter(36163),this.samples=this.getParameter(36011)}},{key:"_getParameter",value:function(e){return this.gl.bindRenderbuffer(36161,this.handle),this.gl.getRenderbufferParameter(36161,e)}}],[{key:"isSupported",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{format:null},n=t.format;return!n||function(e,t,n){var i=n[t];if(!i)return!1;var r=Xw(e)&&i.gl2||i.gl1;return"string"==typeof r?e.getExtension(r):r}(e,n,yx)}},{key:"getSamplesForFormat",value:function(e,t){var n=t.format;return e.getInternalformatParameter(36161,n,32937)}}]),n}(Qk),_x="clear: bad arguments";function wx(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.framebuffer,i=void 0===n?null:n,r=t.color,o=void 0===r?null:r,a=t.depth,s=void 0===a?null:a,u=t.stencil,c=void 0===u?null:u,l={};i&&(l.framebuffer=i);var h=0;o&&(h|=16384,!0!==o&&(l.clearColor=o)),s&&(h|=256,!0!==s&&(l.clearDepth=s)),c&&(h|=1024,!0!==s&&(l.clearStencil=s)),Uk(0!==h,_x),Ok(e,l,function(){e.clear(h)})}function kx(e,t,n,i,r,o,a){try{var s=e[o](a),u=s.value}catch(c){return void n(c)}s.done?t(u):Promise.resolve(u).then(i,r)}function xx(e){return function(){var t=this,n=arguments;return new Promise(function(i,r){var o=e.apply(t,n);function a(e){kx(o,i,r,a,s,"next",e)}function s(e){kx(o,i,r,a,s,"throw",e)}a(void 0)})}}var Sx=[34069,34070,34071,34072,34073,34074],Ex=function(){var e=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Yw(e),(i=t.call(this,e,Object.assign({},r,{target:34067}))).initialize(r),Object.seal(c(i)),i}return b(n,[{key:"initialize",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.mipmaps,i=void 0===n||n,r=t.parameters,o=void 0===r?{}:r;return this.opts=t,this.setCubeMapImageData(t).then(function(){e.loaded=!0,i&&e.generateMipmap(t),e.setParameters(o)}),this}},{key:"subImage",value:function(e){var t=e.face,n=e.data,i=e.x,r=void 0===i?0:i,o=e.y,a=void 0===o?0:o,s=e.mipmapLevel,u=void 0===s?0:s;return this._subImage({target:t,data:n,x:r,y:a,mipmapLevel:u})}},{key:"setCubeMapImageData",value:function(e){var t=e.width,n=e.height,i=e.pixels,r=e.data,o=e.border,a=void 0===o?0:o,s=e.format,u=void 0===s?6408:s,c=e.type,l=void 0===c?5121:c,h=this;return xx(regeneratorRuntime.mark(function e(){var o,s,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o=h.gl,s=i||r,e.next=4,Promise.all(Sx.map(function(e){var t=s[e];return Promise.all(Array.isArray(t)?t:[t])}));case 4:c=e.sent,h.bind(),Sx.forEach(function(e,i){c[i].length>1&&!1!==h.opts.mipmaps&&Gw.warn("".concat(h.id," has mipmap and multiple LODs."))(),c[i].forEach(function(i,r){t&&n?o.texImage2D(e,r,u,t,n,a,u,l,i):o.texImage2D(e,r,u,u,l,i)})}),h.unbind();case 6:case"end":return e.stop()}},e)}))()}},{key:"setImageDataForFace",value:function(e){var t=this,n=e.face,i=e.width,r=e.height,o=e.pixels,a=e.data,s=e.border,u=void 0===s?0:s,c=e.format,l=void 0===c?6408:c,h=e.type,d=void 0===h?5121:h,f=this.gl,p=o||a;return this.bind(),p instanceof Promise?p.then(function(i){return t.setImageDataForFace(Object.assign({},e,{face:n,data:i,pixels:i}))}):this.width||this.height?f.texImage2D(n,0,l,i,r,u,l,d,p):f.texImage2D(n,0,l,l,d,p),this}}]),n}(px);return e.FACES=Sx,e}(),Cx=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Kw(e),(i=t.call(this,e,r=Object.assign({depth:1},r,{target:32879,unpackFlipY:!1}))).initialize(r),Object.seal(c(i)),i}return b(n,[{key:"setImageData",value:function(e){var t=this,n=e.level,i=void 0===n?0:n,r=e.dataFormat,o=void 0===r?6408:r,a=e.width,s=e.height,u=e.depth,c=void 0===u?1:u,l=e.border,h=void 0===l?0:l,d=e.format,f=e.type,p=void 0===f?5121:f,v=e.offset,g=void 0===v?0:v,m=e.data,y=e.parameters,b=void 0===y?{}:y;return this._trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle),Ok(this.gl,b,function(){ArrayBuffer.isView(m)&&t.gl.texImage3D(t.target,i,o,a,s,c,h,d,p,m),m instanceof ux&&(t.gl.bindBuffer(35052,m.handle),t.gl.texImage3D(t.target,i,o,a,s,c,h,d,p,g))}),this._trackAllocatedMemory(m&&m.byteLength?m.byteLength:this.width*this.height*this.depth*(lx[this.dataFormat]||4)*(hx[this.type]||1),"Texture"),this.loaded=!0,this}}],[{key:"isSupported",value:function(e){return Xw(e)}}]),n}(px);function Ox(e,t){var n=e.gl,i=e.width,r=e.height,o=e.id;return new Mx(n,Object.assign({},t,{id:"framebuffer-for-".concat(o),width:i,height:r,attachments:{36064:e}}))}function Tx(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.sourceX,i=void 0===n?0:n,r=t.sourceY,o=void 0===r?0:r,a=t.sourceFormat,s=void 0===a?6408:a,u=t.sourceAttachment,c=void 0===u?36064:u,l=t.target,h=void 0===l?null:l,d=t.sourceWidth,f=t.sourceHeight,p=t.sourceType,v=function(e){return e instanceof Mx?{framebuffer:e,deleteFramebuffer:!1}:{framebuffer:Ox(e),deleteFramebuffer:!0}}(e),g=v.framebuffer,m=v.deleteFramebuffer;Uk(g);var y=g.gl,b=g.handle,_=g.attachments;d=d||g.width,f=f||g.height,36064===c&&null===b&&(c=1028),Uk(_[c]),h=function(e,t,n,i,r){return e||new(Jk(t=t||5121,{clamped:!1}))(i*r*function(e){switch(e){case 6406:case 33326:case 6403:return 1;case 33328:case 33319:return 2;case 6407:case 34837:return 3;case 6408:case 34836:return 4;default:return Uk(!1),0}}(n))}(h,p=p||_[c].type,s,d,f),p=p||Zk(h);var w=y.bindFramebuffer(36160,b);return y.readPixels(i,o,d,f,s,p,h),y.bindFramebuffer(36160,w||null),m&&g.delete(),h}function Ax(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.sourceAttachment,i=void 0===n?36064:n,r=t.targetMaxHeight,o=void 0===r?Number.MAX_SAFE_INTEGER:r,a=Tx(e,{sourceAttachment:i}),s=e.width,u=e.height;u>o;){var c=ex({data:a,width:s,height:u});a=c.data,s=c.width,u=c.height}!function(e){var t=e.data,n=e.height,i=e.bytesPerPixel,r=e.temp,o=e.width*(void 0===i?4:i);r=r||new Uint8Array(o);for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:{};return m(this,r),(t=i.call(this,e,n)).width=null,t.height=null,t.attachments={},t.readBuffer=36064,t.drawBuffers=[36064],t.ownResources=[],t.initialize(n),Object.seal(c(t)),t}return b(r,[{key:"MAX_COLOR_ATTACHMENTS",get:function(){var e=Kw(this.gl);return e.getParameter(e.MAX_COLOR_ATTACHMENTS)}},{key:"MAX_DRAW_BUFFERS",get:function(){var e=Kw(this.gl);return e.getParameter(e.MAX_DRAW_BUFFERS)}},{key:"color",get:function(){return this.attachments[36064]||null}},{key:"texture",get:function(){return this.attachments[36064]||null}},{key:"depth",get:function(){return this.attachments[36096]||this.attachments[33306]||null}},{key:"stencil",get:function(){return this.attachments[36128]||this.attachments[33306]||null}},{key:"initialize",value:function(e){var t=e.width,n=void 0===t?1:t,i=e.height,r=void 0===i?1:i,o=e.attachments,a=void 0===o?null:o,s=e.color,u=void 0===s||s,c=e.depth,l=void 0===c||c,h=e.stencil,d=void 0!==h&&h,f=e.check,p=void 0===f||f,v=e.readBuffer,g=e.drawBuffers;if(Uk(n>=0&&r>=0,"Width and height need to be integers"),this.width=n,this.height=r,a)for(var m in a){var y=a[m];(Array.isArray(y)?y[0]:y).resize({width:n,height:r})}else a=this._createDefaultAttachments(u,l,d,n,r);this.update({clearAttachments:!0,attachments:a,readBuffer:v,drawBuffers:g}),a&&p&&this.checkStatus()}},{key:"delete",value:function(){var t,n=_(this.ownResources);try{for(n.s();!(t=n.n()).done;){t.value.delete()}}catch(i){n.e(i)}finally{n.f()}return e(p(r.prototype),"delete",this).call(this),this}},{key:"update",value:function(e){var t=e.attachments,n=void 0===t?{}:t,i=e.readBuffer,r=e.drawBuffers,o=e.clearAttachments,a=void 0!==o&&o,s=e.resizeAttachments,u=void 0===s||s;this.attach(n,{clearAttachments:a,resizeAttachments:u});var c=this.gl,l=c.bindFramebuffer(36160,this.handle);return i&&this._setReadBuffer(i),r&&this._setDrawBuffers(r),c.bindFramebuffer(36160,l||null),this}},{key:"resize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.width,n=e.height;if(null===this.handle)return Uk(void 0===t&&void 0===n),this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;for(var i in void 0===t&&(t=this.gl.drawingBufferWidth),void 0===n&&(n=this.gl.drawingBufferHeight),t!==this.width&&n!==this.height&&Gw.log(2,"Resizing framebuffer ".concat(this.id," to ").concat(t,"x").concat(n))(),this.attachments)this.attachments[i].resize({width:t,height:n});return this.width=t,this.height=n,this}},{key:"attach",value:function(e){var n=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=i.clearAttachments,o=void 0!==r&&r,a=i.resizeAttachments,s=void 0===a||a,u={};o&&Object.keys(this.attachments).forEach(function(e){u[e]=null}),Object.assign(u,e);var c=this.gl.bindFramebuffer(36160,this.handle);for(var l in u){Uk(void 0!==l,"Misspelled framebuffer binding point?");var h=Number(l),d=u[h],f=d;if(f)if(f instanceof bx)this._attachRenderbuffer({attachment:h,renderbuffer:f});else if(Array.isArray(d)){var p=t(d,3),v=p[0],g=p[1],m=void 0===g?0:g,y=p[2],b=void 0===y?0:y;f=v,this._attachTexture({attachment:h,texture:v,layer:m,level:b})}else this._attachTexture({attachment:h,texture:f,layer:0,level:0});else this._unattach(h);s&&f&&f.resize({width:this.width,height:this.height})}this.gl.bindFramebuffer(36160,c||null),Object.assign(this.attachments,e),Object.keys(this.attachments).filter(function(e){return!n.attachments[e]}).forEach(function(e){delete n.attachments[e]})}},{key:"checkStatus",value:function(){var e=this.getStatus();if(36053!==e)throw new Error(function(e){return(r.STATUS||{})[e]||"Framebuffer error ".concat(e)}(e));return this}},{key:"getStatus",value:function(){var e=this.gl,t=e.bindFramebuffer(36160,this.handle),n=e.checkFramebufferStatus(36160);return e.bindFramebuffer(36160,t||null),n}},{key:"clear",value:function(){var e=this,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=n.color,r=n.depth,o=n.stencil,a=n.drawBuffers,s=void 0===a?[]:a,u=this.gl.bindFramebuffer(36160,this.handle);return(i||r||o)&&wx(this.gl,{color:i,depth:r,stencil:o}),s.forEach(function(n,i){!function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.framebuffer,r=void 0===i?null:i,o=n.buffer,a=void 0===o?6144:o,s=n.drawBuffer,u=void 0===s?0:s,c=n.value,l=void 0===c?[0,0,0,0]:c;Kw(e),Ok(e,{framebuffer:r},function(){switch(a){case 6144:switch(l.constructor){case Int32Array:e.clearBufferiv(a,u,l);break;case Uint32Array:e.clearBufferuiv(a,u,l);break;case Float32Array:default:e.clearBufferfv(a,u,l)}break;case 6145:e.clearBufferfv(6145,0,[l]);break;case 6146:e.clearBufferiv(6146,0,[l]);break;case 34041:var n=t(l,2),i=n[0],r=n[1];e.clearBufferfi(34041,0,i,r);break;default:Uk(!1,_x)}})}(e.gl,{drawBuffer:i,value:n})}),this.gl.bindFramebuffer(36160,u||null),this}},{key:"readPixels",value:function(){return Gw.error("Framebuffer.readPixels() is no logner supported, use readPixelsToArray(framebuffer)")(),null}},{key:"readPixelsToBuffer",value:function(){return Gw.error("Framebuffer.readPixelsToBuffer()is no logner supported, use readPixelsToBuffer(framebuffer)")(),null}},{key:"copyToDataUrl",value:function(){return Gw.error("Framebuffer.copyToDataUrl() is no logner supported, use copyToDataUrl(framebuffer)")(),null}},{key:"copyToImage",value:function(){return Gw.error("Framebuffer.copyToImage() is no logner supported, use copyToImage(framebuffer)")(),null}},{key:"copyToTexture",value:function(){return Gw.error("Framebuffer.copyToTexture({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}},{key:"blit",value:function(){return Gw.error("Framebuffer.blit({...}) is no logner supported, use blit(source, target, opts)")(),null}},{key:"invalidate",value:function(e){var t=e.attachments,n=void 0===t?[]:t,i=e.x,r=void 0===i?0:i,o=e.y,a=void 0===o?0:o,s=e.width,u=e.height,c=Kw(this.gl),l=c.bindFramebuffer(36008,this.handle);return 0===r&&0===a&&void 0===s&&void 0===u?c.invalidateFramebuffer(36008,n):c.invalidateFramebuffer(36008,n,r,a,s,u),c.bindFramebuffer(36008,l),this}},{key:"getAttachmentParameter",value:function(e,t,n){var i=this._getAttachmentParameterFallback(t);return null===i&&(this.gl.bindFramebuffer(36160,this.handle),i=this.gl.getFramebufferAttachmentParameter(36160,e,t),this.gl.bindFramebuffer(36160,null)),n&&i>1e3&&(i=Gk(this.gl,i)),i}},{key:"getAttachmentParameters",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:36064,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.constructor.ATTACHMENT_PARAMETERS||[],r={},o=_(i);try{for(o.s();!(e=o.n()).done;){var a=e.value;r[n?Gk(this.gl,a):a]=this.getAttachmentParameter(t,a,n)}}catch(s){o.e(s)}finally{o.f()}return r}},{key:"getParameters",value:function(){for(var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t=Object.keys(this.attachments),n={},i=0,r=t;i0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(e>Gw.level||"undefined"==typeof window)return this;t=t||"Framebuffer ".concat(this.id);var n=Ax(this,{targetMaxHeight:100});return Gw.image({logLevel:e,message:t,image:n},t)(),this}},{key:"bind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?36160:t;return this.gl.bindFramebuffer(n,this.handle),this}},{key:"unbind",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.target,n=void 0===t?36160:t;return this.gl.bindFramebuffer(n,null),this}},{key:"_createDefaultAttachments",value:function(e,t,n,i,r){var o=null;return e&&((o=o||{})[36064]=new gx(this.gl,{id:"".concat(this.id,"-color0"),pixels:null,format:6408,type:5121,width:i,height:r,mipmaps:!1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.ownResources.push(o[36064])),t&&n?((o=o||{})[33306]=new bx(this.gl,{id:"".concat(this.id,"-depth-stencil"),format:35056,width:i,height:111}),this.ownResources.push(o[33306])):t?((o=o||{})[36096]=new bx(this.gl,{id:"".concat(this.id,"-depth"),format:33189,width:i,height:r}),this.ownResources.push(o[36096])):n&&Uk(!1),o}},{key:"_unattach",value:function(e){var t=this.attachments[e];!t||(t instanceof bx?this.gl.framebufferRenderbuffer(36160,e,36161,null):this.gl.framebufferTexture2D(36160,e,3553,null,0),delete this.attachments[e])}},{key:"_attachRenderbuffer",value:function(e){var t=e.attachment,n=void 0===t?36064:t,i=e.renderbuffer;this.gl.framebufferRenderbuffer(36160,n,36161,i.handle),this.attachments[n]=i}},{key:"_attachTexture",value:function(e){var t=e.attachment,n=void 0===t?36064:t,i=e.texture,r=e.layer,o=e.level,a=this.gl;switch(a.bindTexture(i.target,i.handle),i.target){case 35866:case 32879:Kw(a).framebufferTextureLayer(36160,n,i.target,o,r);break;case 34067:var s=function(e){return e<34069?e+34069:e}(r);a.framebufferTexture2D(36160,n,s,i.handle,o);break;case 3553:a.framebufferTexture2D(36160,n,3553,i.handle,o);break;default:Uk(!1,"Illegal texture type")}a.bindTexture(i.target,null),this.attachments[n]=i}},{key:"_setReadBuffer",value:function(e){var t=function(e){return Xw(e)?e:null}(this.gl);t?t.readBuffer(e):Uk(36064===e||1029===e,Px),this.readBuffer=e}},{key:"_setDrawBuffers",value:function(e){var t=this.gl,n=Kw(t);if(n)n.drawBuffers(e);else{var i=t.getExtension("WEBGL_draw_buffers");i?i.drawBuffersWEBGL(e):Uk(1===e.length&&(36064===e[0]||1029===e[0]),Px)}this.drawBuffers=e}},{key:"_getAttachmentParameterFallback",value:function(e){var t=function(e){for(var t in e.luma=e.luma||{},e.luma.caps=e.luma.caps||{},Ix)void 0===e.luma.caps[t]&&(e.luma.caps[t]=Nx(e,t));return e.luma.caps}(this.gl);switch(e){case 36052:return t.WEBGL2?null:0;case 33298:case 33299:case 33300:case 33301:case 33302:case 33303:return t.WEBGL2?null:8;case 33297:return t.WEBGL2?null:5125;case 33296:return t.WEBGL2||t.EXT_sRGB?null:9729;default:return null}}},{key:"_createHandle",value:function(){return this.gl.createFramebuffer()}},{key:"_deleteHandle",value:function(){this.gl.deleteFramebuffer(this.handle)}},{key:"_bindHandle",value:function(e){return this.gl.bindFramebuffer(36160,e)}}],[{key:"isSupported",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.colorBufferFloat,i=t.colorBufferHalfFloat,r=!0;return n&&(r=Boolean(e.getExtension("EXT_color_buffer_float")||e.getExtension("WEBGL_color_buffer_float")||e.getExtension("OES_texture_float"))),i&&(r=r&&Boolean(e.getExtension("EXT_color_buffer_float")||e.getExtension("EXT_color_buffer_half_float"))),r}},{key:"getDefaultFramebuffer",value:function(e){return e.luma=e.luma||{},e.luma.defaultFramebuffer=e.luma.defaultFramebuffer||new r(e,{id:"default-framebuffer",handle:null,attachments:{}}),e.luma.defaultFramebuffer}}]),r}(Qk);Mx.ATTACHMENT_PARAMETERS=[36049,36048,33296,33298,33299,33300,33301,33302,33303];var Ix={WEBGL2:[!1,!0],VERTEX_ARRAY_OBJECT:["OES_vertex_array_object",!0],TIMER_QUERY:["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],INSTANCED_RENDERING:["ANGLE_instanced_arrays",!0],MULTIPLE_RENDER_TARGETS:["WEBGL_draw_buffers",!0],ELEMENT_INDEX_UINT32:["OES_element_index_uint",!0],BLEND_EQUATION_MINMAX:["EXT_blend_minmax",!0],FLOAT_BLEND:["EXT_float_blend"],COLOR_ENCODING_SRGB:["EXT_sRGB",!0],TEXTURE_DEPTH:["WEBGL_depth_texture",!0],TEXTURE_FLOAT:["OES_texture_float",!0],TEXTURE_HALF_FLOAT:["OES_texture_half_float",!0],TEXTURE_FILTER_LINEAR_FLOAT:["OES_texture_float_linear"],TEXTURE_FILTER_LINEAR_HALF_FLOAT:["OES_texture_half_float_linear"],TEXTURE_FILTER_ANISOTROPIC:["EXT_texture_filter_anisotropic"],COLOR_ATTACHMENT_RGBA32F:[function(e){var t=new gx(e,{format:6408,type:5126,dataFormat:6408}),n=new Mx(e,{id:"test-framebuffer",check:!1,attachments:{36064:t}}),i=n.getStatus();return t.delete(),n.delete(),36053===i},"EXT_color_buffer_float"],COLOR_ATTACHMENT_FLOAT:[!1,"EXT_color_buffer_float"],COLOR_ATTACHMENT_HALF_FLOAT:["EXT_color_buffer_half_float"],GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]};function Rx(e,t){return Dx(e,t)}function Dx(e,t){return(t=Array.isArray(t)?t:[t]).every(function(t){return Nx(e,t)})}function Nx(e,t){return e.luma=e.luma||{},e.luma.caps=e.luma.caps||{},void 0===e.luma.caps[t]&&(e.luma.caps[t]=function(e,t){var n,i=Ix[t];Uk(i,t);var r=Xw(e)&&i[1]||i[0];if("function"==typeof r)n=r(e);else if(Array.isArray(r)){n=!0;var o,a=_(r);try{for(a.s();!(o=a.n()).done;){var s=o.value;n=n&&Boolean(e.getExtension(s))}}catch(u){a.e(u)}finally{a.f()}}else"string"==typeof r?n=Boolean(e.getExtension(r)):"boolean"==typeof r?n=r:Uk(!1);return n}(e,t)),e.luma.caps[t]||Gw.log(2,"Feature: ".concat(t," not supported"))(),e.luma.caps[t]}var Lx=function(){function e(t,n){m(this,e),this.opts=n,this.source=t}return b(e,[{key:"value",get:function(){return this.source.value}},{key:"getValue",value:function(){var e=this.source.getBuffer(),t=this.getAccessor();if(e)return[e,t];var n=this.source.value,i=t.size,r=n;if(n&&n.length!==i){r=new Float32Array(i);for(var o=t.elementOffset||0,a=0;ai&&(r=i);var o=this._pool,a=e.BYTES_PER_ELEMENT*r,s=o.findIndex(function(e){return e.byteLength>=a});if(s>=0){var u=new e(o.splice(s,1)[0],0,r);return n&&u.fill(0),u}return new e(r)}},{key:"_release",value:function(e){if(ArrayBuffer.isView(e)){var t=this._pool,n=e.buffer,i=n.byteLength,r=t.findIndex(function(e){return e.byteLength>=i});r<0?t.push(n):(r>0||t.lengththis.props.poolSize&&t.shift()}}}]),e}());Math;var Fx=1/180*Math.PI,Bx={};function Vx(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.precision,i=void 0===n?Bx.precision||4:n;return e=function(e){return Math.round(e/Bx.EPSILON)*Bx.EPSILON}(e),"".concat(parseFloat(e.toPrecision(i)))}function zx(e){return Array.isArray(e)||ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Ux(e,t,n){if(zx(e)){n=n||function(e){return e.clone?e.clone():new Array(e.length)}(e);for(var i=0;i1&&void 0!==arguments[1]?arguments[1]:0,n=0;n0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=0;n0?", ":"")+Vx(this[n],e);return"".concat(e.printTypes?this.constructor.name:"","[").concat(t,"]")}},{key:"equals",value:function(e){if(!e||this.length!==e.length)return!1;for(var t=0;t2&&void 0!==arguments[2]?arguments[2]:"";if(Bx.debug&&!function(e,t){if(e.length!==t)return!1;for(var n=0;n=0&&e=0&&e0&&void 0!==arguments[0]?arguments[0]:0,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return m(this,n),e=t.call(this,-0,-0,-0),1===arguments.length&&zx(i)?e.copy(i):(Bx.debug&&(Kx(i),Kx(r),Kx(o)),e[0]=i,e[1]=r,e[2]=o),e}return b(n,[{key:"set",value:function(e,t,n){return this[0]=e,this[1]=t,this[2]=n,this.check()}},{key:"copy",value:function(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this.check()}},{key:"fromObject",value:function(e){return Bx.debug&&(Kx(e.x),Kx(e.y),Kx(e.z)),this[0]=e.x,this[1]=e.y,this[2]=e.z,this.check()}},{key:"toObject",value:function(e){return e.x=this[0],e.y=this[1],e.z=this[2],e}},{key:"ELEMENTS",get:function(){return 3}},{key:"z",get:function(){return this[2]},set:function(e){this[2]=Kx(e)}},{key:"angle",value:function(e){return function(e,t){var n=e[0],i=e[1],r=e[2],o=t[0],a=t[1],s=t[2],u=Math.sqrt(n*n+i*i+r*r)*Math.sqrt(o*o+a*a+s*s),c=u&&rS(e,t)/u;return Math.acos(Math.min(Math.max(c,-1),1))}(this,e)}},{key:"cross",value:function(e){return oS(this,this,e),this.check()}},{key:"rotateX",value:function(e){var t=e.radians,n=e.origin;return function(e,t,n,i){var r=[],o=[];r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2],o[0]=r[0],o[1]=r[1]*Math.cos(i)-r[2]*Math.sin(i),o[2]=r[1]*Math.sin(i)+r[2]*Math.cos(i),e[0]=o[0]+n[0],e[1]=o[1]+n[1],e[2]=o[2]+n[2]}(this,this,void 0===n?cS:n,t),this.check()}},{key:"rotateY",value:function(e){var t=e.radians,n=e.origin;return function(e,t,n,i){var r=[],o=[];r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2],o[0]=r[2]*Math.sin(i)+r[0]*Math.cos(i),o[1]=r[1],o[2]=r[2]*Math.cos(i)-r[0]*Math.sin(i),e[0]=o[0]+n[0],e[1]=o[1]+n[1],e[2]=o[2]+n[2]}(this,this,void 0===n?cS:n,t),this.check()}},{key:"rotateZ",value:function(e){var t=e.radians,n=e.origin;return function(e,t,n,i){var r=[],o=[];r[0]=t[0]-n[0],r[1]=t[1]-n[1],r[2]=t[2]-n[2],o[0]=r[0]*Math.cos(i)-r[1]*Math.sin(i),o[1]=r[0]*Math.sin(i)+r[1]*Math.cos(i),o[2]=r[2],e[0]=o[0]+n[0],e[1]=o[1]+n[1],e[2]=o[2]+n[2]}(this,this,void 0===n?cS:n,t),this.check()}},{key:"transform",value:function(e){return this.transformAsPoint(e)}},{key:"transformAsPoint",value:function(e){return aS(this,this,e),this.check()}},{key:"transformAsVector",value:function(e){return sS(this,this,e),this.check()}},{key:"transformByMatrix3",value:function(e){return function(e,t,n){var i=t[0],r=t[1],o=t[2];e[0]=i*n[0]+r*n[3]+o*n[6],e[1]=i*n[1]+r*n[4]+o*n[7],e[2]=i*n[2]+r*n[5]+o*n[8]}(this,this,e),this.check()}},{key:"transformByMatrix2",value:function(e){return function(e,t,n){var i=t[0],r=t[1];e[0]=n[0]*i+n[2]*r,e[1]=n[1]*i+n[3]*r,e[2]=t[2]}(this,this,e),this.check()}},{key:"transformByQuaternion",value:function(e){return function(e,t,n){var i=n[0],r=n[1],o=n[2],a=t[0],s=t[1],u=t[2],c=r*u-o*s,l=o*a-i*u,h=i*s-r*a,d=r*h-o*l,f=o*c-i*h,p=i*l-r*c,v=2*n[3];l*=v,h*=v,f*=2,p*=2,e[0]=a+(c*=v)+(d*=2),e[1]=s+l+f,e[2]=u+h+p}(this,this,e),this.check()}}],[{key:"ZERO",get:function(){return lS.ZERO=lS.ZERO||Object.freeze(new n(0,0,0,0))}}]),n}(Jx),dS=new hS;function fS(e,t,n,i){dS.set(e,t,n);var r=dS.len();return{distance:i/r,normal:new hS(-e/r,-t/r,-n/r)}}function pS(e){return e-Math.fround(e)}function vS(e,t){var n=t.size,i=void 0===n?1:n,r=t.startIndex,o=void 0===r?0:r,a=t.endIndex;Number.isFinite(a)||(a=e.length);var s=(a-o)/i;uS=jx.allocate(uS,s,{type:Float32Array,size:2*i});for(var u=o,c=0;u1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1/0,i=bS,r={index:-1,data:e,target:[]};return e?"function"==typeof e[Symbol.iterator]?i=e:e.length>0&&(_S.length=e.length,i=_S):i=bS,(t>0||Number.isFinite(n))&&(i=(Array.isArray(i)?i:Array.from(i)).slice(t,n),r.index=t-1),{iterable:i,objectInfo:r}}function kS(e){return e&&e[Symbol.asyncIterator]}function xS(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(){return!0};return Array.isArray(e)?SS(e,t,[]):t(e)?[e]:[]}function SS(e,t,n){for(var i=-1;++ic)n.set(t.subarray(0,c),r);else if(n.set(t,r),s)for(var l=u;l=f)){var v=p?i.value:i.getBuffer().getData({srcByteOffset:l});if(i.settings.normalized&&!p){var g=s;s=function(e,t){return i._normalizeConstant(g(e,t))}}var m=p?function(e,t){return s(v,t)}:function(e,t){return s(v.subarray(e,e+c),t)},y=t.getData({length:r}),b=new Float32Array(f);(function(e){var t=e.source,n=e.target,i=e.size,r=e.getData,o=e.sourceStartIndices,a=e.targetStartIndices;if(!Array.isArray(a))return TS({source:t,target:n,size:i,getData:r}),n;for(var s=0,u=0,c=r&&function(e,t){return r(e+u,t)},l=Math.min(o.length,a.length),h=1;h1&&void 0!==arguments[1]?arguments[1]:{};m(this,r),t=i.call(this,e,n);var o=n.transition,a=void 0!==o&&o,s=n.noAlloc,u=void 0!==s&&s,c=n.update,l=void 0===c?null:c,h=n.accessor,d=void 0===h?null:h,f=n.transform,p=void 0===f?null:f,v=n.startIndices,g=void 0===v?null:v;return Object.assign(t.settings,{transition:a,noAlloc:u,update:l||d&&t._autoUpdater,accessor:d,transform:p}),Object.assign(t.state,{lastExternalBuffer:null,binaryValue:null,binaryAccessor:null,needsUpdate:!0,needsRedraw:!1,updateRanges:OS,startIndices:g}),Object.seal(t.settings),Object.seal(t.state),t._validateAttributeUpdaters(),t}return b(r,[{key:"startIndices",get:function(){return this.state.startIndices},set:function(e){this.state.startIndices=e}},{key:"needsUpdate",value:function(){return this.state.needsUpdate}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.clearChangedFlags,n=void 0!==t&&t,i=this.state.needsRedraw;return this.state.needsRedraw=i&&!n,i}},{key:"getUpdateTriggers",value:function(){var e=this.settings.accessor;return[this.id].concat("function"!=typeof e&&e||[])}},{key:"supportsTransition",value:function(){return Boolean(this.settings.transition)}},{key:"getTransitionSetting",value:function(e){if(!e||!this.supportsTransition())return null;var t=this.settings.accessor,n=this.settings.transition;return PS(Array.isArray(t)?e[t.find(function(t){return e[t]})]:e[t],n)}},{key:"setNeedsUpdate",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.id,t=arguments.length>1?arguments[1]:void 0;if(this.state.needsUpdate=this.state.needsUpdate||e,this.setNeedsRedraw(e),t){var n=t.startRow,i=void 0===n?0:n,r=t.endRow,o=void 0===r?1/0:r;this.state.updateRanges=function(e,t){if(e===OS||(t[0]<0&&(t[0]=0),t[0]>=t[1]))return e;for(var n=[],i=e.length,r=0,o=0;ot[1]?n.push(a):t=[Math.min(a[0],t[0]),Math.max(a[1],t[1])]}return n.splice(r,0,t),n}(this.state.updateRanges,[i,o])}else this.state.updateRanges=OS}},{key:"clearNeedsUpdate",value:function(){this.state.needsUpdate=!1,this.state.updateRanges=CS}},{key:"setNeedsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.id;this.state.needsRedraw=this.state.needsRedraw||e}},{key:"update",value:function(e){this.setData(e)}},{key:"allocate",value:function(t){var n=this.state,i=this.settings;return!i.noAlloc&&!!i.update&&(e(p(r.prototype),"allocate",this).call(this,{numInstances:t,copy:n.updateRanges!==OS}),!0)}},{key:"updateBuffer",value:function(n){var i=n.numInstances,o=n.data,a=n.props,s=n.context;if(!this.needsUpdate())return!1;var u=this.state.updateRanges,c=this.settings,l=c.update,h=c.noAlloc,d=!0;if(l){var f,v=_(u);try{for(v.s();!(f=v.n()).done;){var g=t(f.value,2),m=g[0],y=g[1];l.call(s,this,{data:o,startRow:m,endRow:y,props:a,numInstances:i})}}catch(O){v.e(O)}finally{v.f()}if(this.value)if(this.constant||this.buffer.byteLength1&&void 0!==arguments[1]?arguments[1]:null,n=this.state,i=this.settings;return e?!(i.noAlloc||(n.binaryValue===e?(this.clearNeedsUpdate(),0):(n.binaryValue=e,this.setNeedsRedraw(),ArrayBuffer.isView(e)&&(e={value:e}),i.transform||t!==this.startIndices?(yS(ArrayBuffer.isView(e.value),"invalid ".concat(i.accessor)),n.binaryAccessor=function(e,t){var n=t.size,i=t.stride,r=t.offset,o=t.startIndices,a=t.nested,s=e.BYTES_PER_ELEMENT,u=i?i/s:n,c=r?r/s:0,l=Math.floor((e.length-c)/u);return function(t,i){var r=i.index,s=i.target;if(!o){for(var h=r*u+c,d=0;dl?c.set(x,g):(e._normalizeValue(x,b.target,0),ES({target:c,source:b.target,start:g,count:S}));g+=S*l}else e._normalizeValue(x,c,g),g+=l}}catch(A){w.e(A)}finally{w.f()}}}},{key:"_validateAttributeUpdaters",value:function(){var e=this.settings;if(!e.noAlloc&&"function"!=typeof e.update)throw new Error("Attribute ".concat(this.id," missing update or accessor"))}},{key:"_checkAttributeArray",value:function(){var e=this.value,t=Math.min(4,this.size);if(e&&e.length>=t){var n=!0;switch(t){case 4:n=n&&Number.isFinite(e[3]);case 3:n=n&&Number.isFinite(e[2]);case 2:n=n&&Number.isFinite(e[1]);case 1:n=n&&Number.isFinite(e[0]);break;default:n=!1}if(!n)throw new Error("Illegal attribute generated for ".concat(this.id))}}}]),r}(function(){function e(t,n){m(this,e),this.gl=t,this.id=n.id,this.size=n.size;var i=n.logicalType||n.type,r=5130===i,o=n.defaultValue;o=Number.isFinite(o)?[o]:o||new Array(this.size).fill(0),n.defaultValue=o;var a=i;r?a=5126:!a&&n.isIndexed?a=t&&Rx(t,"ELEMENT_INDEX_UINT32")?5125:5123:a||(a=5126),n.logicalType=i,n.type=a;var s=function(e){switch(e){case 5126:return Float32Array;case 5130:return Float64Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return Uint8ClampedArray;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Unknown GL type")}}(i||a||5126);this.shaderAttributes={},this.doublePrecision=r,r&&!1===n.fp64&&(s=Float32Array),n.bytesPerElement=s.BYTES_PER_ELEMENT,this.defaultType=s,this.value=null,this.settings=n,this.state={externalBuffer:null,bufferAccessor:n,allocatedValue:null,constant:!1},this._buffer=null,this.setData(n)}return b(e,[{key:"buffer",get:function(){if(!this._buffer){var e=this.settings,t=e.isIndexed,n=e.type;this._buffer=new ux(this.gl,{id:this.id,target:t?34963:34962,accessor:{type:n}})}return this._buffer}},{key:"byteOffset",get:function(){var e=this.getAccessor();return e.vertexOffset?e.vertexOffset*gS(e):0}},{key:"delete",value:function(){this._buffer&&(this._buffer.delete(),this._buffer=null),jx.release(this.state.allocatedValue)}},{key:"getShaderAttributes",value:function(e,t){if(this.doublePrecision){var n={},i=this.value instanceof Float64Array,r=function(e,t){var n=mS(e,t);return{high:n,low:I(M({},n),{offset:n.offset+4*e.size})}}(this.getAccessor(),t||{});return n[e]=new Lx(this,r.high),n["".concat(e,"64Low")]=i?new Lx(this,r.low):new Float32Array(this.size),n}if(t){var a=mS(this.getAccessor(),t);return o({},e,new Lx(this,a))}return o({},e,this)}},{key:"getBuffer",value:function(){return this.state.constant?null:this.state.externalBuffer||this._buffer}},{key:"getValue",value:function(){return this.state.constant?this.value:[this.getBuffer(),this.getAccessor()]}},{key:"getAccessor",value:function(){return this.state.bufferAccessor}},{key:"setData",value:function(e){var t=this.state;ArrayBuffer.isView(e)?e={value:e}:e instanceof ux&&(e={buffer:e});var n=M(M({},this.settings),e);if(t.bufferAccessor=n,e.constant){var i=e.value;if(i=this._normalizeValue(i,[],0),this.settings.normalized&&(i=this._normalizeConstant(i)),t.constant&&this._areValuesEqual(i,this.value))return!1;t.externalBuffer=null,t.constant=!0,this.value=i}else if(e.buffer){var r=e.buffer;t.externalBuffer=r,t.constant=!1,this.value=e.value;var o=e.value instanceof Float64Array;n.type=e.type||r.accessor.type,n.bytesPerElement=r.accessor.BYTES_PER_ELEMENT*(o?2:1),n.stride=gS(n)}else if(e.value){this._checkExternalBuffer(e);var a=e.value;t.externalBuffer=null,t.constant=!1,this.value=a,n.bytesPerElement=a.BYTES_PER_ELEMENT,n.stride=gS(n);var s=this.buffer,u=this.byteOffset;this.doublePrecision&&a instanceof Float64Array&&(a=vS(a,n));var c=a.byteLength+u+2*n.stride;s.byteLength0&&void 0!==arguments[0]?arguments[0]:{},t=this.value,n=e.startOffset,i=void 0===n?0:n,r=e.endOffset;this.buffer.subData({data:this.doublePrecision&&t instanceof Float64Array?vS(t,{size:this.size,startIndex:i,endIndex:r}):t.subarray(i,r),offset:i*t.BYTES_PER_ELEMENT+this.byteOffset})}},{key:"allocate",value:function(e){var t=e.numInstances,n=e.copy,i=void 0!==n&&n,r=this.state,o=r.allocatedValue,a=jx.allocate(o,t+1,{size:this.size,type:this.defaultType,copy:i});this.value=a;var s=this.buffer,u=this.byteOffset;return s.byteLength=0;)t[n+a]=Number.isFinite(e[a])?e[a]:r[a]}return t}},{key:"_areValuesEqual",value:function(e,t){if(!e||!t)return!1;for(var n=this.size,i=0;i0&&jS[e]&&(t=jS[e]).call.apply(t,arguments)}function BS(e,t){if(!e)throw new Error(t||"shadertools: assertion failed.")}var VS="out vec4 transform_output;\nvoid main() {\n transform_output = vec4(0);\n}",zS="#version 300 es\n".concat(VS);function US(e,n){n=Array.isArray(n)?n:[n];var i=t(e.replace(/^\s+/,"").split(/\s+/),3),r=i[0],o=i[1],a=i[2];return n.includes(r)&&o&&a?{qualifier:r,type:o,name:a.split(";")[0]}:null}function HS(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.version,n=void 0===t?100:t,i=e.input,r=e.inputType,o=e.output;if(!i)return 300===n?zS:n>300?"#version ".concat(n,"\n").concat(VS):"void main() {gl_FragColor = vec4(0);}";var a=function(e,t){switch(t){case"float":return"vec4(".concat(e,", 0.0, 0.0, 1.0)");case"vec2":return"vec4(".concat(e,", 0.0, 1.0)");case"vec3":return"vec4(".concat(e,", 1.0)");case"vec4":return e;default:return BS(!1),null}}(i,r);return n>=300?"#version ".concat(n," ").concat(300===n?"es":"","\nin ").concat(r," ").concat(i,";\nout vec4 ").concat(o,";\nvoid main() {\n ").concat(o," = ").concat(a,";\n}"):"varying ".concat(r," ").concat(i,";\nvoid main() {\n gl_FragColor = ").concat(a,";\n}")}var GS=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),Kw(e),(i=t.call(this,e,r)).initialize(r),i.stubRemovedMethods("TransformFeedback","v6.0",["pause","resume"]),Object.seal(c(i)),i}return b(n,[{key:"initialize",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.buffers={},this.unused={},this.configuration=null,this.bindOnUse=!0,Yk(this.buffers)||this.bind(function(){return e._unbindBuffers()}),this.setProps(t),this}},{key:"setProps",value:function(e){"program"in e&&(this.configuration=e.program&&e.program.configuration),"configuration"in e&&(this.configuration=e.configuration),"bindOnUse"in e&&(e=e.bindOnUse),"buffers"in e&&this.setBuffers(e.buffers)}},{key:"setBuffers",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.bind(function(){for(var n in t)e.setBuffer(n,t[n])}),this}},{key:"setBuffer",value:function(e,t){var n=this,i=this._getVaryingIndex(e),r=this._getBufferParams(t),o=r.buffer,a=r.byteSize,s=r.byteOffset;return i<0?(this.unused[e]=o,Gw.warn(function(){return"".concat(n.id," unused varying buffer ").concat(e)})(),this):(this.buffers[i]=t,this.bindOnUse||this._bindBuffer(i,o,s,a),this)}},{key:"begin",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.gl.bindTransformFeedback(36386,this.handle),this._bindBuffers(),this.gl.beginTransformFeedback(e),this}},{key:"end",value:function(){return this.gl.endTransformFeedback(),this._unbindBuffers(),this.gl.bindTransformFeedback(36386,null),this}},{key:"_getBufferParams",value:function(e){var t,n,i;return e instanceof ux?i=e:(i=e.buffer,n=e.byteSize,t=e.byteOffset),(void 0!==t||void 0!==n)&&(t=t||0,n=n||i.byteLength-t),{buffer:i,byteOffset:t,byteSize:n}}},{key:"_getVaryingInfo",value:function(e){return this.configuration&&this.configuration.getVaryingInfo(e)}},{key:"_getVaryingIndex",value:function(e){if(this.configuration)return this.configuration.getVaryingInfo(e).location;var t=Number(e);return Number.isFinite(t)?t:-1}},{key:"_bindBuffers",value:function(){if(this.bindOnUse)for(var e in this.buffers){var t=this._getBufferParams(this.buffers[e]),n=t.buffer,i=t.byteSize,r=t.byteOffset;this._bindBuffer(e,n,r,i)}}},{key:"_unbindBuffers",value:function(){if(this.bindOnUse)for(var e in this.buffers)this._bindBuffer(e,null)}},{key:"_bindBuffer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=arguments.length>3?arguments[3]:void 0,r=t&&t.handle;return r&&void 0!==i?this.gl.bindBufferRange(35982,e,r,n,i):this.gl.bindBufferBase(35982,e,r),this}},{key:"_createHandle",value:function(){return this.gl.createTransformFeedback()}},{key:"_deleteHandle",value:function(){this.gl.deleteTransformFeedback(this.handle)}},{key:"_bindHandle",value:function(e){this.gl.bindTransformFeedback(36386,this.handle)}}],[{key:"isSupported",value:function(e){return Xw(e)}}]),n}(Qk),WS=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.currentIndex=0,this.feedbackMap={},this.varyings=null,this.bindings=[],this.resources={},this._initialize(n),Object.seal(this)}return b(e,[{key:"setupResources",value:function(e){var t,n=_(this.bindings);try{for(n.s();!(t=n.n()).done;){var i=t.value;this._setupTransformFeedback(i,e)}}catch(r){n.e(r)}finally{n.f()}}},{key:"updateModelProps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.varyings;return t.length>0&&(e=Object.assign({},e,{varyings:t})),e}},{key:"getDrawOptions",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.bindings[this.currentIndex],n=t.sourceBuffers,i=t.transformFeedback;return{attributes:Object.assign({},n,e.attributes),transformFeedback:i}}},{key:"swap",value:function(){return!!this.feedbackMap&&(this.currentIndex=this._getNextIndex(),!0)}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setupBuffers(e)}},{key:"getBuffer",value:function(e){var t=this.bindings[this.currentIndex].feedbackBuffers,n=e?t[e]:null;return n?n instanceof ux?n:n.buffer:null}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.varyingName,n=this.getBuffer(t);return n?n.getData():null}},{key:"delete",value:function(){for(var e in this.resources)this.resources[e].delete()}},{key:"_initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setupBuffers(e),this.varyings=e.varyings||Object.keys(this.bindings[this.currentIndex].feedbackBuffers),this.varyings.length>0&&Uk(Xw(this.gl))}},{key:"_getFeedbackBuffers",value:function(e){var t=e.sourceBuffers,n=void 0===t?{}:t,i={};if(this.bindings[this.currentIndex]&&Object.assign(i,this.bindings[this.currentIndex].feedbackBuffers),this.feedbackMap)for(var r in this.feedbackMap){var o=this.feedbackMap[r];r in n&&(i[o]=r)}for(var a in Object.assign(i,e.feedbackBuffers),i){var s=i[a];if("string"==typeof s){var u=n[s],c=u.byteLength,l=u.usage,h=u.accessor;i[a]=this._createNewBuffer(a,{byteLength:c,usage:l,accessor:h})}}return i}},{key:"_setupBuffers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.sourceBuffers,n=void 0===t?null:t;Object.assign(this.feedbackMap,e.feedbackMap);var i=this._getFeedbackBuffers(e);this._updateBindings({sourceBuffers:n,feedbackBuffers:i})}},{key:"_setupTransformFeedback",value:function(e,t){var n=t.model.program;e.transformFeedback=new GS(this.gl,{program:n,buffers:e.feedbackBuffers})}},{key:"_updateBindings",value:function(e){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],e),this.feedbackMap){var t=this._swapBuffers(this.bindings[this.currentIndex]),n=t.sourceBuffers,i=t.feedbackBuffers,r=this._getNextIndex();this.bindings[r]=this._updateBinding(this.bindings[r],{sourceBuffers:n,feedbackBuffers:i})}}},{key:"_updateBinding",value:function(e,t){return e?(Object.assign(e.sourceBuffers,t.sourceBuffers),Object.assign(e.feedbackBuffers,t.feedbackBuffers),e.transformFeedback&&e.transformFeedback.setBuffers(e.feedbackBuffers),e):{sourceBuffers:Object.assign({},t.sourceBuffers),feedbackBuffers:Object.assign({},t.feedbackBuffers)}}},{key:"_swapBuffers",value:function(e){if(!this.feedbackMap)return null;var t=Object.assign({},e.sourceBuffers),n=Object.assign({},e.feedbackBuffers);for(var i in this.feedbackMap){var r=this.feedbackMap[i];t[i]=e.feedbackBuffers[r],n[r]=e.sourceBuffers[i],Uk(n[r]instanceof ux)}return{sourceBuffers:t,feedbackBuffers:n}}},{key:"_createNewBuffer",value:function(e,t){var n=new ux(this.gl,t);return this.resources[e]&&this.resources[e].delete(),this.resources[e]=n,n}},{key:"_getNextIndex",value:function(){return(this.currentIndex+1)%2}}]),e}();function qS(e){var t=100,n=e.match(/[^\s]+/g);if(n.length>=2&&"#version"===n[0]){var i=parseInt(n[1],10);Number.isFinite(i)&&(t=i)}return t}var XS="vs",YS=(o(f={},XS,"#ifdef MODULE_LOGDEPTH\n logdepth_adjustPosition(gl_Position);\n#endif\n"),o(f,"fs","#ifdef MODULE_MATERIAL\n gl_FragColor = material_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LIGHTING\n gl_FragColor = lighting_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_FOG\n gl_FragColor = fog_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_PICKING\n gl_FragColor = picking_filterHighlightColor(gl_FragColor);\n gl_FragColor = picking_filterPickingColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LOGDEPTH\n logdepth_setFragDepth();\n#endif\n"),f),KS="__LUMA_INJECT_DECLARATIONS__",$S=/void\s+main\s*\([^)]*\)\s*\{\n?/,QS=/}\n?[^{}]*$/,ZS=[];function JS(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],r=t===XS,o=function(t){var i=n[t];i.sort(function(e,t){return e.order-t.order}),ZS.length=i.length;for(var o=0,a=i.length;o1),e.forEach(function(e){for(var n in e)t[n]=t[n]?"".concat(t[n],"\n").concat(e[n]):e[n]}),t}var tE={name:"transform",vs:"attribute float transform_elementID;\nvec2 transform_getPixelSizeHalf(vec2 size) {\n return vec2(1.) / (2. * size);\n}\n\nvec2 transform_getPixelIndices(vec2 texSize, vec2 pixelSizeHalf) {\n float yIndex = floor((transform_elementID / texSize[0]) + pixelSizeHalf[1]);\n float xIndex = transform_elementID - (yIndex * texSize[0]);\n return vec2(xIndex, yIndex);\n}\nvec2 transform_getTexCoord(vec2 size) {\n vec2 pixelSizeHalf = transform_getPixelSizeHalf(size);\n vec2 indices = transform_getPixelIndices(size, pixelSizeHalf);\n vec2 coord = indices / size + pixelSizeHalf;\n return coord;\n}\nvec2 transform_getPos(vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec2 pos = (texCoord * (2.0, 2.0)) - (1., 1.);\n return pos;\n}\nvec4 transform_getInput(sampler2D texSampler, vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec4 textureColor = texture2D(texSampler, texCoord);\n return textureColor;\n}\n",fs:null},nE="transform_uSize_",iE="transform_position",rE={10241:9728,10240:9728,10242:33071,10243:33071},oE=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.id=this.currentIndex=0,this._swapTexture=null,this.targetTextureVarying=null,this.targetTextureType=null,this.samplerTextureMap=null,this.bindings=[],this.resources={},this._initialize(n),Object.seal(this)}return b(e,[{key:"updateModelProps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._processVertexShader(e);return Object.assign({},e,t)}},{key:"getDrawOptions",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.bindings[this.currentIndex],n=t.sourceBuffers,i=t.sourceTextures,r=t.framebuffer,o=t.targetTexture,a=Object.assign({},n,e.attributes),s=Object.assign({},e.uniforms),u=Object.assign({},e.parameters),c=e.discard;if(this.hasSourceTextures||this.hasTargetTexture){for(var l in a.transform_elementID=this.elementIDBuffer,this.samplerTextureMap)s[l]=i[this.samplerTextureMap[l]];this._setSourceTextureParameters();var h=function(e){var t,n,i,r=e.sourceTextureMap,o=e.targetTextureVarying,a=e.targetTexture,s={};for(var u in o&&(n=(t=a).width,i=t.height,s["".concat(nE).concat(o)]=[n,i]),r){var c;n=(c=r[u]).width,i=c.height,s["".concat(nE).concat(u)]=[n,i]}return s}({sourceTextureMap:i,targetTextureVarying:this.targetTextureVarying,targetTexture:o});Object.assign(s,h)}return this.hasTargetTexture&&(c=!1,u.viewport=[0,0,r.width,r.height]),{attributes:a,framebuffer:r,uniforms:s,discard:c,parameters:u}}},{key:"swap",value:function(){return!!this._swapTexture&&(this.currentIndex=this._getNextIndex(),!0)}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setupTextures(e)}},{key:"getTargetTexture",value:function(){return this.bindings[this.currentIndex].targetTexture}},{key:"getData",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.packed,n=void 0!==t&&t,i=this.bindings[this.currentIndex].framebuffer,r=Tx(i);if(!n)return r;for(var o=r.constructor,a=function(e){switch(e){case"float":return 1;case"vec2":return 2;case"vec3":return 3;case"vec4":return 4;default:return BS(!1),null}}(this.targetTextureType),s=new o(r.length*a/4),u=0,c=0;c0&&void 0!==arguments[0]?arguments[0]:{},t=e._targetTextureVarying,n=e._swapTexture;this._swapTexture=n,this.targetTextureVarying=t,this.hasTargetTexture=t,this._setupTextures(e)}},{key:"_createTargetTexture",value:function(e){var t=e.sourceTextures,n=e.textureOrReference;if(n instanceof gx)return n;var i=t[n];return i?(this._targetRefTexName=n,this._createNewTexture(i)):null}},{key:"_setupTextures",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.sourceBuffers,n=e._sourceTextures,i=void 0===n?{}:n,r=e._targetTexture,o=this._createTargetTexture({sourceTextures:i,textureOrReference:r});this.hasSourceTextures=this.hasSourceTextures||i&&Object.keys(i).length>0,this._updateBindings({sourceBuffers:t,sourceTextures:i,targetTexture:o}),"elementCount"in e&&this._updateElementIDBuffer(e.elementCount)}},{key:"_updateElementIDBuffer",value:function(e){if(!("number"!=typeof e||this.elementCount>=e)){var t=new Float32Array(e);t.forEach(function(e,t,n){n[t]=t}),this.elementIDBuffer?this.elementIDBuffer.setData({data:t}):this.elementIDBuffer=new ux(this.gl,{data:t,accessor:{size:1}}),this.elementCount=e}}},{key:"_updateBindings",value:function(e){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],e),this._swapTexture){var t=this._swapTextures(this.bindings[this.currentIndex]),n=t.sourceTextures,i=t.targetTexture,r=this._getNextIndex();this.bindings[r]=this._updateBinding(this.bindings[r],{sourceTextures:n,targetTexture:i})}}},{key:"_updateBinding",value:function(e,t){var n=t.sourceBuffers,i=t.sourceTextures,r=t.targetTexture;if(e||(e={sourceBuffers:{},sourceTextures:{},targetTexture:null}),Object.assign(e.sourceTextures,i),Object.assign(e.sourceBuffers,n),r){e.targetTexture=r;var o=r.width,a=r.height,s=e.framebuffer;s?(s.update({attachments:{36064:r},resizeAttachments:!1}),s.resize({width:o,height:a})):e.framebuffer=new Mx(this.gl,{id:"transform-framebuffer",width:o,height:a,attachments:{36064:r}})}return e}},{key:"_setSourceTextureParameters",value:function(){var e=this.currentIndex,t=this.bindings[e].sourceTextures;for(var n in t)t[n].setParameters(rE)}},{key:"_swapTextures",value:function(e){if(!this._swapTexture)return null;var t=Object.assign({},e.sourceTextures);return t[this._swapTexture]=e.targetTexture,{sourceTextures:t,targetTexture:e.sourceTextures[this._swapTexture]}}},{key:"_createNewTexture",value:function(e){var t=function(e,t){Uk(e instanceof gx||e instanceof Ex||e instanceof Cx);var n=e.constructor,i=e.gl,r=e.width,o=e.height,a=e.format,s=e.type,u=e.dataFormat,c=e.border,l=e.mipmaps;return new n(i,Object.assign({width:r,height:o,format:a,type:s,dataFormat:u,border:c,mipmaps:l},{parameters:{10241:9728,10240:9728,10242:33071,10243:33071},pixelStore:{37440:!1}}))}(e);return this.ownTexture&&this.ownTexture.delete(),this.ownTexture=t,t}},{key:"_getNextIndex",value:function(){return(this.currentIndex+1)%2}},{key:"_processVertexShader",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.bindings[this.currentIndex],n=t.sourceTextures,i=t.targetTexture,r=function(e){var t=e.vs,n=e.sourceTextureMap,i=e.targetTextureVarying,r=e.targetTexture,o=Object.keys(n).length,a=null,s={},u=t,c={};if(o>0||i){var l=u.split("\n"),h=l.slice();if(l.forEach(function(e,t,r){if(o>0){var u=function(e,t){var n={},i=function(e){return US(e,["attribute","in"])}(e);if(!i)return null;var r=i.type,o=i.name;if(o&&t[o]){var a="// ".concat(e," => Replaced by Transform with a sampler"),s=function(e){var t="transform_uSampler_".concat(e),n="".concat(nE).concat(e);return{samplerName:t,sizeName:n,uniformDeclerations:" uniform sampler2D ".concat(t,";\n uniform vec2 ").concat(n,";")}}(o),u=s.samplerName,c=s.sizeName,l=s.uniformDeclerations,h=" ".concat(r," ").concat(o," = transform_getInput(").concat(u,", ").concat(c,").").concat(function(e){switch(e){case"float":return"x";case"vec2":return"xy";case"vec3":return"xyz";case"vec4":return"xyzw";default:return BS(!1),null}}(r),";\n");return n[u]=o,{updatedLine:a,inject:{"vs:#decl":l,"vs:#main-start":h},samplerTextureMap:n}}return null}(e,n);if(u){var l=u.updatedLine,d=u.inject;h[t]=l,c=eE([c,d]),Object.assign(s,u.samplerTextureMap),o--}}i&&!a&&(a=function(e,t){var n=US(e,["varying","out"]);return n&&n.name===t?n.type:null}(e,i))}),i){Uk(r);var d="".concat(nE).concat(i);c=eE([c,{"vs:#decl":"uniform vec2 ".concat(d,";\n"),"vs:#main-start":" vec2 ".concat(iE," = transform_getPos(").concat(d,");\n gl_Position = vec4(").concat(iE,", 0, 1.);\n")}])}u=h.join("\n")}return{vs:u,targetTextureType:a,inject:c,samplerTextureMap:s}}({vs:e.vs,sourceTextureMap:n,targetTextureVarying:this.targetTextureVarying,targetTexture:i}),o=r.vs,a=r.uniforms,s=r.targetTextureType,u=r.inject,c=r.samplerTextureMap,l=eE([e.inject||{},u]);return this.targetTextureType=s,this.samplerTextureMap=c,{vs:o,fs:e._fs||HS({version:qS(o),input:this.targetTextureVarying,inputType:s,output:"transform_output"}),modules:this.hasSourceTextures||this.targetTextureVarying?[tE].concat(e.modules||[]):e.modules,uniforms:a,inject:l}}}]),e}(),aE={number:{validate:function(e,t){return Number.isFinite(e)&&(!("max"in t)||e<=t.max)&&(!("min"in t)||e>=t.min)}},array:{validate:function(e,t){return Array.isArray(e)||ArrayBuffer.isView(e)}}};function sE(e){var t=uE(e);return"object"===t?e?"type"in e?Object.assign({},e,aE[e.type]):"value"in e?(t=uE(e.value),Object.assign({type:t},e,aE[t])):{type:"object",value:e}:{type:"object",value:null}:Object.assign({type:t,value:e},aE[t])}function uE(e){return Array.isArray(e)||ArrayBuffer.isView(e)?"array":typeof e}var cE=function(){function e(t){var n=t.name,i=t.vs,r=t.fs,o=t.dependencies,a=void 0===o?[]:o,s=t.uniforms,u=t.getUniforms,c=t.deprecations,l=void 0===c?[]:c,h=t.defines,d=void 0===h?{}:h,f=t.inject,p=void 0===f?{}:f,v=t.vertexShader,g=t.fragmentShader;m(this,e),BS("string"==typeof n),this.name=n,this.vs=i||v,this.fs=r||g,this.getModuleUniforms=u,this.dependencies=a,this.deprecations=this._parseDeprecationDefinitions(l),this.defines=d,this.injections=function(e){var t={vs:{},fs:{}};for(var n in e){var i=e[n];"string"==typeof i&&(i={order:0,injection:i}),t[n.slice(0,2)][n]=i}return t}(p),s&&(this.uniforms=function(e){var t={};for(var n in e){var i=sE(e[n]);t[n]=i}return t}(s))}return b(e,[{key:"getModuleSource",value:function(e){var t;switch(e){case"vs":t=this.vs||"";break;case"fs":t=this.fs||"";break;default:BS(!1)}return"#define MODULE_".concat(this.name.toUpperCase().replace(/[^0-9a-z]/gi,"_"),"\n").concat(t,"// END MODULE_").concat(this.name,"\n\n")}},{key:"getUniforms",value:function(e,t){return this.getModuleUniforms?this.getModuleUniforms(e,t):this.uniforms?this._defaultGetUniforms(e):{}}},{key:"getDefines",value:function(){return this.defines}},{key:"checkDeprecations",value:function(e,t){this.deprecations.forEach(function(n){n.regex.test(e)&&(n.deprecated?t.deprecated(n.old,n.new)():t.removed(n.old,n.new)())})}},{key:"_parseDeprecationDefinitions",value:function(e){return e.forEach(function(e){switch(e.type){case"function":e.regex=new RegExp("\\b".concat(e.old,"\\("));break;default:e.regex=new RegExp("".concat(e.type," ").concat(e.old,";"))}}),e}},{key:"_defaultGetUniforms",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={},n=this.uniforms;for(var i in n){var r=n[i];i in e&&!r.private?(r.validate&&BS(r.validate(e[i],r),"".concat(this.name,": invalid ").concat(i)),t[i]=e[i]):t[i]=r.value}return t}}]),e}();function lE(e){return function(e){var t={},n={};return hE({modules:e,level:0,moduleMap:t,moduleDepth:n}),Object.keys(n).sort(function(e,t){return n[t]-n[e]}).map(function(e){return t[e]})}(dE(e))}function hE(e){var t=e.modules,n=e.level,i=e.moduleMap,r=e.moduleDepth;if(n>=5)throw new Error("Possible loop in shader dependency graph");var o,a=_(t);try{for(a.s();!(o=a.n()).done;){var s=o.value;i[s.name]=s,(void 0===r[s.name]||r[s.name]2&&void 0!==arguments[2]?arguments[2]:{},i=fE[t];if(BS(i,t),!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="undefined"!=typeof window&&window.navigator||{},n=e.userAgent||t.userAgent||"",i=-1!==n.indexOf("MSIE "),r=-1!==n.indexOf("Trident/");return i||r}(n))return!0;if(t in gE)return gE[t];var r="#extension GL_".concat(i[0]," : ").concat(n.behavior||"enable","\nvoid main(void) {}"),o=e.createShader(35633);e.shaderSource(o,r),e.compileShader(o);var a=e.getShaderParameter(o,35713);return e.deleteShader(o),gE[t]=a,a}function yE(e,t){return(t=Array.isArray(t)?t:[t]).every(function(t){return function(e,t){var n=fE[t];BS(n,t);var i=function(e){return"undefined"!=typeof WebGL2RenderingContext&&e instanceof WebGL2RenderingContext||Boolean(e&&2===e._version)}(e)&&n[1]||n[0],r="string"==typeof i?Boolean(e.getExtension(i)):i;return BS(!1===r||!0===r),r}(e,t)})}function bE(e){return new RegExp("\\b".concat(e,"[ \\t]+(\\w+[ \\t]+\\w+(\\[\\w+\\])?;)"),"g")}var _E=[[/^(#version[ \t]+(100|300[ \t]+es))?[ \t]*\n/,"#version 300 es\n"],[/\btexture(2D|2DProj|Cube)Lod(EXT)?\(/g,"textureLod("],[/\btexture(2D|2DProj|Cube)(EXT)?\(/g,"texture("]],wE=[].concat(_E,[[bE("attribute"),"in $1"],[bE("varying"),"out $1"]]),kE=[].concat(_E,[[bE("varying"),"in $1"]]),xE=[[/^#version[ \t]+300[ \t]+es/,"#version 100"],[/\btexture(2D|2DProj|Cube)Lod\(/g,"texture$1LodEXT("],[/\btexture\(/g,"texture2D("],[/\btextureLod\(/g,"texture2DLodEXT("]],SE=[].concat(xE,[[bE("in"),"attribute $1"],[bE("out"),"varying $1"]]),EE=[].concat(xE,[[bE("in"),"varying $1"]]),CE="gl_FragColor",OE=/\bout[ \t]+vec4[ \t]+(\w+)[ \t]*;\n?/,TE=/void\s+main\s*\([^)]*\)\s*\{\n?/;function AE(e,n){var i,r=_(n);try{for(r.s();!(i=r.n()).done;){var o=t(i.value,2),a=o[0],s=o[1];e=e.replace(a,s)}}catch(u){r.e(u)}finally{r.f()}return e}var PE="\n\n".concat(KS,"\n\n"),ME=(o(g={},XS,"vertex"),o(g,"fs","fragment"),g);function IE(e,n){var i=n.id,r=n.source,o=n.type,a=n.modules,s=n.defines,u=void 0===s?{}:s,c=n.hookFunctions,l=void 0===c?[]:c,h=n.inject,d=void 0===h?{}:h,f=n.transpileToGLSL100,p=void 0!==f&&f,v=n.prologue,g=void 0===v||v,m=n.log;BS("string"==typeof r,"shader source must be a string");var y=o===XS,b=r.split("\n"),w=100,k="",x=r;0===b[0].indexOf("#version ")?(w=300,k=b[0],x=b.slice(1).join("\n")):k="#version ".concat(w);var S={};a.forEach(function(e){Object.assign(S,e.getDefines())}),Object.assign(S,u);var E,C=g?"".concat(k,"\n").concat(function(e){var t=e.id,n=e.type;return t&&"string"==typeof t&&-1===e.source.indexOf("SHADER_NAME")?"\n#define SHADER_NAME ".concat(t,"_").concat(ME[n],"\n\n"):""}({id:i,source:r,type:o}),"\n").concat((E={type:o},"\n#define SHADER_TYPE_".concat(ME[E.type].toUpperCase(),"\n")),"\n").concat(function(e){switch(function(e){var t=e.getExtension("WEBGL_debug_renderer_info"),n=e.getParameter(t&&t.UNMASKED_VENDOR_WEBGL||7936),i=e.getParameter(t&&t.UNMASKED_RENDERER_WEBGL||7937);return{gpuVendor:vE(n,i),vendor:n,renderer:i,version:e.getParameter(7938),shadingLanguageVersion:e.getParameter(35724)}}(e).gpuVendor.toLowerCase()){case"nvidia":return"#define NVIDIA_GPU\n// Nvidia optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n";case"intel":return"#define INTEL_GPU\n// Intel optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n// Intel's built-in 'tan' function doesn't have acceptable precision\n#define LUMA_FP32_TAN_PRECISION_WORKAROUND 1\n// Intel GPU doesn't have full 32 bits precision in same cases, causes overflow\n#define LUMA_FP64_HIGH_BITS_OVERFLOW_WORKAROUND 1\n";case"amd":return"#define AMD_GPU\n";default:return"#define DEFAULT_GPU\n// Prevent driver from optimizing away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n"}}(e),"\n").concat(function(e,t,n){var i="#if (__VERSION__ > 120)\n\n# define FEATURE_GLSL_DERIVATIVES\n# define FEATURE_GLSL_DRAW_BUFFERS\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FEATURE_GLSL_TEXTURE_LOD\n\n// DEPRECATED FLAGS, remove in v9\n# define FRAG_DEPTH\n# define DERIVATIVES\n# define DRAW_BUFFERS\n# define TEXTURE_LOD\n\n#endif // __VERSION\n";return yE(e,pE.GLSL_FRAG_DEPTH)&&(i+="\n// FRAG_DEPTH => gl_FragDepth is available\n#ifdef GL_EXT_frag_depth\n#extension GL_EXT_frag_depth : enable\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FRAG_DEPTH\n# define gl_FragDepth gl_FragDepthEXT\n#endif\n"),yE(e,pE.GLSL_DERIVATIVES)&&mE(e,pE.GLSL_DERIVATIVES)&&(i+="\n// DERIVATIVES => dxdF, dxdY and fwidth are available\n#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n# define FEATURE_GLSL_DERIVATIVES\n# define DERIVATIVES\n#endif\n"),yE(e,pE.GLSL_FRAG_DATA)&&mE(e,pE.GLSL_FRAG_DATA,{behavior:"require"})&&(i+="\n// DRAW_BUFFERS => gl_FragData[] is available\n#ifdef GL_EXT_draw_buffers\n#extension GL_EXT_draw_buffers : require\n#define FEATURE_GLSL_DRAW_BUFFERS\n#define DRAW_BUFFERS\n#endif\n"),yE(e,pE.GLSL_TEXTURE_LOD)&&(i+="// TEXTURE_LOD => texture2DLod etc are available\n#ifdef GL_EXT_shader_texture_lod\n#extension GL_EXT_shader_texture_lod : enable\n\n# define FEATURE_GLSL_TEXTURE_LOD\n# define TEXTURE_LOD\n\n#endif\n"),i}(e),"\n").concat(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=0,n="";for(var i in e){0===t&&(n+="\n// APPLICATION DEFINES\n"),t++;var r=e[i];(r||Number.isFinite(r))&&(n+="#define ".concat(i.toUpperCase()," ").concat(e[i],"\n"))}return 0===t&&(n+="\n"),n}(S),"\n").concat(y?"":"precision highp float;\n\n","\n"):"".concat(k,"\n"),O=function(e){var n={vs:{},fs:{}};return e.forEach(function(e){var i;"string"!=typeof e?e=(i=e).hook:i={};var r=t((e=e.trim()).split(":"),2),o=r[0],a=r[1],s=e.replace(/\(.+/,"");n[o][s]=Object.assign(i,{signature:a})}),n}(l),T={},A={},P={};for(var M in d){var I="string"==typeof d[M]?{injection:d[M],order:0}:d[M],R=M.match(/^(v|f)s:(#)?([\w-]+)$/);if(R){var D=R[3];R[2]?"decl"===D?A[M]=[I]:P[M]=[I]:T[M]=[I]}else P[M]=[I]}var N,L=_(a);try{for(L.s();!(N=L.n()).done;){var j=N.value;m&&j.checkDeprecations(x,m),C+=j.getModuleSource(o,w);var F=j.injections[o];for(var B in F){var V=B.match(/^(v|f)s:#([\w-]+)$/);if(V){var z="decl"===V[2]?A:P;z[B]=z[B]||[],z[B].push(F[B])}else T[B]=T[B]||[],T[B].push(F[B])}}}catch(U){L.e(U)}finally{L.f()}return C=JS(C+=PE,o,A),C+=function(e,t){var n="";for(var i in e){var r=e[i];if(n+="void ".concat(r.signature," {\n"),r.header&&(n+=" ".concat(r.header)),t[i]){var o=t[i];o.sort(function(e,t){return e.order-t.order});var a,s=_(o);try{for(s.s();!(a=s.n()).done;){var u=a.value;n+=" ".concat(u.injection,"\n")}}catch(U){s.e(U)}finally{s.f()}}r.footer&&(n+=" ".concat(r.footer)),n+="}\n"}return n}(O[o],T),C=function(e,t,n){switch(t){case 300:return n?AE(e,wE):function(e){var t=(e=AE(e,kE)).match(OE);if(t){var n=t[1];e=e.replace(new RegExp("\\b".concat(CE,"\\b"),"g"),n)}else{var i="fragmentColor";e=e.replace(TE,function(e){return"out vec4 ".concat(i,";\n").concat(e)}).replace(new RegExp("\\b".concat(CE,"\\b"),"g"),i)}return e}(e);case 100:return n?AE(e,SE):function(e){var t=(e=AE(e,EE)).match(OE);if(t){var n=t[1];e=e.replace(OE,"").replace(new RegExp("\\b".concat(n,"\\b"),"g"),CE)}return e}(e);default:throw new Error("unknown GLSL version ".concat(t))}}(C=JS(C+=x,o,P),p?100:w,y)}function RE(e){return function(t){var n,i={},r=_(e);try{for(r.s();!(n=r.n()).done;){var o=n.value.getUniforms(t,i);Object.assign(i,o)}}catch(a){r.e(a)}finally{r.f()}return i}}var DE=(o(y={5126:YE.bind(null,"uniform1fv",VE,1,KE),35664:YE.bind(null,"uniform2fv",VE,2,KE),35665:YE.bind(null,"uniform3fv",VE,3,KE),35666:YE.bind(null,"uniform4fv",VE,4,KE),5124:YE.bind(null,"uniform1iv",zE,1,KE),35667:YE.bind(null,"uniform2iv",zE,2,KE),35668:YE.bind(null,"uniform3iv",zE,3,KE),35669:YE.bind(null,"uniform4iv",zE,4,KE),35670:YE.bind(null,"uniform1iv",zE,1,KE),35671:YE.bind(null,"uniform2iv",zE,2,KE),35672:YE.bind(null,"uniform3iv",zE,3,KE),35673:YE.bind(null,"uniform4iv",zE,4,KE),35674:YE.bind(null,"uniformMatrix2fv",VE,4,$E),35675:YE.bind(null,"uniformMatrix3fv",VE,9,$E),35676:YE.bind(null,"uniformMatrix4fv",VE,16,$E),35678:XE,35680:XE,5125:YE.bind(null,"uniform1uiv",UE,1,KE),36294:YE.bind(null,"uniform2uiv",UE,2,KE),36295:YE.bind(null,"uniform3uiv",UE,3,KE),36296:YE.bind(null,"uniform4uiv",UE,4,KE),35685:YE.bind(null,"uniformMatrix2x3fv",VE,6,$E),35686:YE.bind(null,"uniformMatrix2x4fv",VE,8,$E),35687:YE.bind(null,"uniformMatrix3x2fv",VE,6,$E),35688:YE.bind(null,"uniformMatrix3x4fv",VE,12,$E),35689:YE.bind(null,"uniformMatrix4x2fv",VE,8,$E),35690:YE.bind(null,"uniformMatrix4x3fv",VE,12,$E)},"35678",XE),o(y,"35680",XE),o(y,35679,XE),o(y,35682,XE),o(y,36289,XE),o(y,36292,XE),o(y,36293,XE),o(y,36298,XE),o(y,36299,XE),o(y,36300,XE),o(y,36303,XE),o(y,36306,XE),o(y,36307,XE),o(y,36308,XE),o(y,36311,XE),y),NE={},LE={},jE={},FE=[0];function BE(e,t,n,i){1===t&&"boolean"==typeof e&&(e=e?1:0),Number.isFinite(e)&&(FE[0]=e,e=FE);var r=e.length;if(r%t&&Gw.warn("Uniform size should be multiples of ".concat(t),e)(),e instanceof n)return e;var o=i[r];o||(o=new n(r),i[r]=o);for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:"unnamed",n=e.match(/#define[\s*]SHADER_NAME[\s*]([A-Za-z0-9_-]+)[\s*]/);return n?n[1]:t}function ZE(e,t){for(var n="",i=0;i0&&void 0!==arguments[0]?arguments[0]:this.source;if(e.startsWith("#version ")||(e="#version 100\n".concat(e)),this.source=e,this.gl.shaderSource(this.handle,this.source),this.gl.compileShader(this.handle),!this.getParameter(35713)){var t=this.gl.getShaderInfoLog(this.handle),n=function(e,t,n,i){for(var r=e.split(/\r?\n/),o={},a={},s=i||QE(t)||"(unnamed)",u="".concat(function(e){switch(e){case 35632:return"fragment";case 35633:return"vertex";default:return"unknown type"}}(n)," shader ").concat(s),c=0;c1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:": ",i=e.split(/\r?\n/),r=String(i.length+t-1).length;return i.map(function(e,i){var o=String(i+t);return JE(o,r-o.length)+n+e})}(t);return{shaderName:u,errors:ZE(o,p),warnings:ZE(a,p)}}(t,this.source,this.shaderType,this.id),i=n.shaderName,r=n.errors,o=n.warnings;throw Gw.error("GLSL compilation errors in ".concat(i,"\n").concat(r))(),Gw.warn("GLSL compilation warnings in ".concat(i,"\n").concat(o))(),new Error("GLSL compilation errors in ".concat(i))}}},{key:"_deleteHandle",value:function(){this.gl.deleteShader(this.handle)}},{key:"_getOptsFromHandle",value:function(){return{type:this.getParameter(35663),source:this.getSource()}}}],[{key:"getTypeName",value:function(e){switch(e){case 35633:return"vertex-shader";case 35632:return"fragment-shader";default:return Uk(!1),"unknown"}}}]),n}(Qk),tC=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),"string"==typeof i&&(i={source:i}),t.call(this,e,Object.assign({},i,{shaderType:35633}))}return b(n,[{key:"_createHandle",value:function(){return this.gl.createShader(35633)}}]),n}(eC),nC=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),"string"==typeof i&&(i={source:i}),t.call(this,e,Object.assign({},i,{shaderType:35632}))}return b(n,[{key:"_createHandle",value:function(){return this.gl.createShader(35632)}}]),n}(eC),iC=5126,rC=5124,oC=5125,aC=(o(w={},iC,[iC,1,"float"]),o(w,35664,[iC,2,"vec2"]),o(w,35665,[iC,3,"vec3"]),o(w,35666,[iC,4,"vec4"]),o(w,rC,[rC,1,"int"]),o(w,35667,[rC,2,"ivec2"]),o(w,35668,[rC,3,"ivec3"]),o(w,35669,[rC,4,"ivec4"]),o(w,oC,[oC,1,"uint"]),o(w,36294,[oC,2,"uvec2"]),o(w,36295,[oC,3,"uvec3"]),o(w,36296,[oC,4,"uvec4"]),o(w,35670,[iC,1,"bool"]),o(w,35671,[iC,2,"bvec2"]),o(w,35672,[iC,3,"bvec3"]),o(w,35673,[iC,4,"bvec4"]),o(w,35674,[iC,8,"mat2"]),o(w,35685,[iC,8,"mat2x3"]),o(w,35686,[iC,8,"mat2x4"]),o(w,35675,[iC,12,"mat3"]),o(w,35687,[iC,12,"mat3x2"]),o(w,35688,[iC,12,"mat3x4"]),o(w,35676,[iC,16,"mat4"]),o(w,35689,[iC,16,"mat4x2"]),o(w,35690,[iC,16,"mat4x3"]),w);function sC(e){var n=aC[e];if(!n)return null;var i=t(n,2);return{type:i[0],components:i[1]}}function uC(e,n){switch(e){case 5120:case 5121:case 5122:case 5123:e=iC}for(var i in aC){var r=t(aC[i],3),o=r[0],a=r[1],s=r[2];if(o===e&&a===n)return{glType:i,name:s}}return null}var cC=function(){function e(t){m(this,e),this.id=t.id,this.attributeInfos=[],this.attributeInfosByName={},this.attributeInfosByLocation=[],this.varyingInfos=[],this.varyingInfosByName={},Object.seal(this),this._readAttributesFromProgram(t),this._readVaryingsFromProgram(t)}return b(e,[{key:"getAttributeInfo",value:function(e){var t=Number(e);return Number.isFinite(t)?this.attributeInfosByLocation[t]:this.attributeInfosByName[e]||null}},{key:"getAttributeLocation",value:function(e){var t=this.getAttributeInfo(e);return t?t.location:-1}},{key:"getAttributeAccessor",value:function(e){var t=this.getAttributeInfo(e);return t?t.accessor:null}},{key:"getVaryingInfo",value:function(e){var t=Number(e);return Number.isFinite(t)?this.varyingInfos[t]:this.varyingInfosByName[e]||null}},{key:"getVaryingIndex",value:function(e){var t=this.getVaryingInfo();return t?t.location:-1}},{key:"getVaryingAccessor",value:function(e){var t=this.getVaryingInfo();return t?t.accessor:null}},{key:"_readAttributesFromProgram",value:function(e){for(var t=e.gl,n=t.getProgramParameter(e.handle,35721),i=0;i=0&&this._addAttribute(u,o,a,s)}this.attributeInfos.sort(function(e,t){return e.location-t.location})}},{key:"_readVaryingsFromProgram",value:function(e){var t=e.gl;if(Xw(t)){for(var n=t.getProgramParameter(e.handle,35971),i=0;i1&&void 0!==arguments[1]?arguments[1]:{};return m(this,i),(t=n.call(this,e,r)).stubRemovedMethods("Program","v6.0",lC),t._isCached=!1,t.initialize(r),Object.seal(c(t)),t._setId(r.id),t}return b(i,[{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.hash,n=e.vs,i=e.fs,r=e.varyings,o=e.bufferMode,a=void 0===o?35981:o;return this.hash=t||"",this.vs="string"==typeof n?new tC(this.gl,{id:"".concat(e.id,"-vs"),source:n}):n,this.fs="string"==typeof i?new nC(this.gl,{id:"".concat(e.id,"-fs"),source:i}):i,Uk(this.vs instanceof tC),Uk(this.fs instanceof nC),this.uniforms={},this._textureUniforms={},r&&r.length>0&&(Kw(this.gl),this.varyings=r,this.gl2.transformFeedbackVaryings(this.handle,r,a)),this._compileAndLink(),this._readUniformLocationsFromLinkedProgram(),this.configuration=new cC(this),this.setProps(e)}},{key:"delete",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this._isCached?this:e(p(i.prototype),"delete",this).call(this,t)}},{key:"setProps",value:function(e){return"uniforms"in e&&this.setUniforms(e.uniforms),this}},{key:"draw",value:function(e){var t=this,n=e.logPriority,i=e.drawMode,r=void 0===i?4:i,o=e.vertexCount,a=e.offset,s=void 0===a?0:a,u=e.start,c=e.end,l=e.isIndexed,h=void 0!==l&&l,d=e.indexType,f=void 0===d?5123:d,p=e.instanceCount,v=void 0===p?0:p,g=e.isInstanced,m=void 0===g?v>0:g,y=e.vertexArray,b=void 0===y?null:y,_=e.transformFeedback,w=e.framebuffer,k=e.parameters,x=void 0===k?{}:k,S=e.uniforms,E=e.samplers;if((S||E)&&(Gw.deprecated("Program.draw({uniforms})","Program.setUniforms(uniforms)")(),this.setUniforms(S||{})),Gw.priority>=n){var C=w?w.id:"default",O="mode=".concat(Gk(this.gl,r)," verts=").concat(o," instances=").concat(v," indexType=").concat(Gk(this.gl,f)," isInstanced=").concat(m," isIndexed=").concat(h," Framebuffer=").concat(C);Gw.log(n,O)()}return Uk(b),this.gl.useProgram(this.handle),!(!this._areTexturesRenderable()||0===o||m&&0===v||(b.bindForDraw(o,v,function(){if(void 0!==w&&(x=Object.assign({},x,{framebuffer:w})),_){var e=function(e){switch(e){case 0:return 0;case 1:case 3:case 2:return 1;case 4:case 5:case 6:return 4;default:return Uk(!1),0}}(r);_.begin(e)}t._bindTextures(),Ok(t.gl,x,function(){h&&m?t.gl2.drawElementsInstanced(r,o,f,s,v):h&&Xw(t.gl)&&!isNaN(u)&&!isNaN(c)?t.gl2.drawRangeElements(r,u,c,o,f,s):h?t.gl.drawElements(r,o,f,s):m?t.gl2.drawArraysInstanced(r,s,o,v):t.gl.drawArrays(r,s,o)}),_&&_.end()}),0))}},{key:"setUniforms",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};for(var t in Gw.priority>=2&&function(e,t,n){for(var i in e){var r=e[i];if((!n||Boolean(n[i]))&&!WE(r))throw t=t?"".concat(t," "):"",console.error("".concat(t," Bad uniform ").concat(i),r),new Error("".concat(t," Bad uniform ").concat(i))}}(e,this.id,this._uniformSetters),this.gl.useProgram(this.handle),e){var n=e[t],i=this._uniformSetters[t];if(i){var r=n,o=!1;if(r instanceof Mx&&(r=r.texture),r instanceof px)if(o=this.uniforms[t]!==n){void 0===i.textureIndex&&(i.textureIndex=this._textureIndexCounter++);var a=r,s=i.textureIndex;a.bind(s),r=s,this._textureUniforms[t]=a}else r=i.textureIndex;else this._textureUniforms[t]&&delete this._textureUniforms[t];(i(r)||o)&&qE(this.uniforms,t,n)}}return this}},{key:"_areTexturesRenderable",value:function(){var e=!0;for(var t in this._textureUniforms){var n=this._textureUniforms[t];n.update(),e=e&&n.loaded}return e}},{key:"_bindTextures",value:function(){for(var e in this._textureUniforms)this._textureUniforms[e].bind(this._uniformSetters[e].textureIndex)}},{key:"_createHandle",value:function(){return this.gl.createProgram()}},{key:"_deleteHandle",value:function(){this.gl.deleteProgram(this.handle)}},{key:"_getOptionsFromHandle",value:function(e){var t,n={},i=_(this.gl.getAttachedShaders(e));try{for(i.s();!(t=i.n()).done;){var r=t.value;switch(this.gl.getShaderParameter(this.handle,35663)){case 35633:n.vs=new tC({handle:r});break;case 35632:n.fs=new nC({handle:r})}}}catch(o){i.e(o)}finally{i.f()}return n}},{key:"_getParameter",value:function(e){return this.gl.getProgramParameter(this.handle,e)}},{key:"_setId",value:function(e){if(!e){var t=this._getName();this.id=qk(t)}}},{key:"_getName",value:function(){var e=this.vs.getName()||this.fs.getName();return e=(e=e.replace(/shader/i,""))?"".concat(e,"-program"):"program"}},{key:"_compileAndLink",value:function(){var e=this.gl;if(e.attachShader(this.handle,this.vs.handle),e.attachShader(this.handle,this.fs.handle),Gw.time(4,"linkProgram for ".concat(this._getName()))(),e.linkProgram(this.handle),Gw.timeEnd(4,"linkProgram for ".concat(this._getName()))(),e.debug||Gw.level>0){if(!e.getProgramParameter(this.handle,35714))throw new Error("Error linking: ".concat(e.getProgramInfoLog(this.handle)));if(e.validateProgram(this.handle),!e.getProgramParameter(this.handle,35715))throw new Error("Error validating: ".concat(e.getProgramInfoLog(this.handle)))}}},{key:"_readUniformLocationsFromLinkedProgram",value:function(){var e=this.gl;this._uniformSetters={},this._uniformCount=this._getParameter(35718);for(var t=0;t1)for(var o=0;o0&&void 0!==arguments[0]?arguments[0]:{},i=n.vs,r=void 0===i?"":i,o=n.fs,a=void 0===o?"":o,s=n.defines,u=void 0===s?{}:s,c=n.inject,l=void 0===c?{}:c,h=n.varyings,d=void 0===h?[]:h,f=n.bufferMode,p=void 0===f?35981:f,v=n.transpileToGLSL100,g=void 0!==v&&v,m=this._getModuleList(n.modules),y=this._getHash(r),b=this._getHash(a),w=m.map(function(e){return t._getHash(e.name)}).sort(),k=d.map(function(e){return t._getHash(e)}),x=Object.keys(u).sort(),S=Object.keys(l).sort(),E=[],C=[],O=_(x);try{for(O.s();!(e=O.n()).done;){var T=e.value;E.push(this._getHash(T)),E.push(this._getHash(u[T]))}}catch(D){O.e(D)}finally{O.f()}var A,P=_(S);try{for(P.s();!(A=P.n()).done;){var M=A.value;C.push(this._getHash(M)),C.push(this._getHash(l[M]))}}catch(D){P.e(D)}finally{P.f()}var I="".concat(y,"/").concat(b,"D").concat(E.join("/"),"M").concat(w.join("/"),"I").concat(C.join("/"),"V").concat(k.join("/"),"H").concat(this.stateHash,"B").concat(p).concat(g?"T":"");if(!this._programCache[I]){var R=function(e,t){var n=t.vs,i=t.fs,r=lE(t.modules||[]);return{gl:e,vs:IE(e,Object.assign({},t,{source:n,type:XS,modules:r})),fs:IE(e,Object.assign({},t,{source:i,type:"fs",modules:r})),getUniforms:RE(r)}}(this.gl,{vs:r,fs:a,modules:m,inject:l,defines:u,hookFunctions:this._hookFunctions,transpileToGLSL100:g});this._programCache[I]=new hC(this.gl,{hash:I,vs:R.vs,fs:R.fs,varyings:d,bufferMode:p}),this._getUniforms[I]=R.getUniforms||function(e){},this._useCounts[I]=0}return this._useCounts[I]++,this._programCache[I]}},{key:"getUniforms",value:function(e){return this._getUniforms[e.hash]||null}},{key:"release",value:function(e){var t=e.hash;this._useCounts[t]--,0===this._useCounts[t]&&(this._programCache[t].delete(),delete this._programCache[t],delete this._getUniforms[t],delete this._useCounts[t])}},{key:"_getHash",value:function(e){return void 0===this._hashes[e]&&(this._hashes[e]=this._hashCounter++),this._hashes[e]}},{key:"_getModuleList",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=new Array(this._defaultModules.length+e.length),n={},i=0,r=0,o=this._defaultModules.length;r1&&void 0!==arguments[1]?arguments[1]:{};return m(this,i),(t=n.call(this,e,Object.assign({},r,{id:r.id||r.program&&r.program.id}))).buffer=null,t.bufferValue=null,t.isDefaultArray=r.isDefaultArray||!1,t.gl2=e,t.initialize(r),Object.seal(c(t)),t}return b(i,[{key:"delete",value:function(){return e(p(i.prototype),"delete",this).call(this),this.buffer&&this.buffer.delete(),this}},{key:"MAX_ATTRIBUTES",get:function(){return i.getMaxAttributes(this.gl)}},{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.setProps(e)}},{key:"setProps",value:function(e){return this}},{key:"setElementBuffer",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return Uk(!t||34963===t.target,"elements must be GL.ELEMENT_ARRAY_BUFFER"),this.bind(function(){e.gl.bindBuffer(34963,t?t.handle:null)}),this}},{key:"setBuffer",value:function(e,t,n){if(34963===t.target)return this.setElementBuffer(t,n);var i=n.size,r=n.type,o=n.stride,a=n.offset,s=n.normalized,u=n.integer,c=n.divisor,l=this.gl,h=this.gl2;return e=Number(e),this.bind(function(){l.bindBuffer(34962,t.handle),u?(Uk(Xw(l)),h.vertexAttribIPointer(e,i,r,o,a)):l.vertexAttribPointer(e,i,r,s,o,a),l.enableVertexAttribArray(e),h.vertexAttribDivisor(e,c||0)}),this}},{key:"enable",value:function(e){var t=this,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return!n&&0===e&&!i.isSupported(this.gl,{constantAttributeZero:!0})||(e=Number(e),this.bind(function(){return n?t.gl.enableVertexAttribArray(e):t.gl.disableVertexAttribArray(e)})),this}},{key:"getConstantBuffer",value:function(e,t){var n=this._normalizeConstantArrayValue(t),i=n.byteLength*e,r=n.length*e,o=!this.buffer;if(this.buffer=this.buffer||new ux(this.gl,i),o=(o=o||this.buffer.reallocate(i))||!this._compareConstantArrayValues(n,this.bufferValue)){var a=function(e,t){return new e(function(e){return(!fC||fC.byteLength1&&void 0!==arguments[1]?arguments[1]:{};return!t.constantAttributeZero||Xw(e)||"Chrome"===function(e){if(!bw())return"Node";if(yw(void 0))return"Electron";var t=("undefined"!=typeof navigator?navigator:{}).userAgent||"";if(t.indexOf("Edge")>-1)return"Edge";var n=-1!==t.indexOf("MSIE "),i=-1!==t.indexOf("Trident/");return n||i?"IE":Tw.chrome?"Chrome":Tw.safari?"Safari":Tw.mozInnerScreenX?"Firefox":"Unknown"}()}},{key:"getDefaultArray",value:function(e){return e.luma=e.luma||{},e.luma.defaultVertexArray||(e.luma.defaultVertexArray=new i(e,{handle:null,isDefaultArray:!0})),e.luma.defaultVertexArray}},{key:"getMaxAttributes",value:function(e){return i.MAX_ATTRIBUTES=i.MAX_ATTRIBUTES||e.getParameter(34921),i.MAX_ATTRIBUTES}},{key:"setConstant",value:function(e,t,n){switch(n.constructor){case Float32Array:i._setConstantFloatArray(e,t,n);break;case Int32Array:i._setConstantIntArray(e,t,n);break;case Uint32Array:i._setConstantUintArray(e,t,n);break;default:Uk(!1)}}},{key:"_setConstantFloatArray",value:function(e,t,n){switch(n.length){case 1:e.vertexAttrib1fv(t,n);break;case 2:e.vertexAttrib2fv(t,n);break;case 3:e.vertexAttrib3fv(t,n);break;case 4:e.vertexAttrib4fv(t,n);break;default:Uk(!1)}}},{key:"_setConstantIntArray",value:function(e,t,n){switch(Uk(Xw(e)),n.length){case 1:e.vertexAttribI1iv(t,n);break;case 2:e.vertexAttribI2iv(t,n);break;case 3:e.vertexAttribI3iv(t,n);break;case 4:e.vertexAttribI4iv(t,n);break;default:Uk(!1)}}},{key:"_setConstantUintArray",value:function(e,t,n){switch(Uk(Xw(e)),n.length){case 1:e.vertexAttribI1uiv(t,n);break;case 2:e.vertexAttribI2uiv(t,n);break;case 3:e.vertexAttribI3uiv(t,n);break;case 4:e.vertexAttribI4uiv(t,n);break;default:Uk(!1)}}}]),i}(Qk),vC=/^(.+)__LOCATION_([0-9]+)$/,gC=["setBuffers","setGeneric","clearBindings","setLocations","setGenericValues","setDivisor","enable","disable"],mC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.id=n.id||n.program&&n.program.id,this.gl=t,this.configuration=null,this.elements=null,this.elementsAccessor=null,this.values=null,this.accessors=null,this.unused=null,this.drawParams=null,this.buffer=null,this.attributes={},this.vertexArrayObject=new pC(t),Kk(this,"VertexArray","v6.0",gC),this.initialize(n),Object.seal(this)}return b(e,[{key:"delete",value:function(){this.buffer&&this.buffer.delete(),this.vertexArrayObject.delete()}},{key:"initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.reset(),this.configuration=null,this.bindOnUse=!1,this.setProps(e)}},{key:"reset",value:function(){this.elements=null,this.elementsAccessor=null;var e=this.vertexArrayObject.MAX_ATTRIBUTES;return this.values=new Array(e).fill(null),this.accessors=new Array(e).fill(null),this.unused={},this.drawParams=null,this}},{key:"setProps",value:function(e){return"program"in e&&(this.configuration=e.program&&e.program.configuration),"configuration"in e&&(this.configuration=e.configuration),"attributes"in e&&this.setAttributes(e.attributes),"elements"in e&&this.setElementBuffer(e.elements),"bindOnUse"in e&&(e=e.bindOnUse),this}},{key:"clearDrawParams",value:function(){this.drawParams=null}},{key:"getDrawParams",value:function(){return this.drawParams=this.drawParams||this._updateDrawParams(),this.drawParams}},{key:"setAttributes",value:function(e){var t=this;return Object.assign(this.attributes,e),this.vertexArrayObject.bind(function(){for(var n in e)t._setAttribute(n,e[n]);t.gl.bindBuffer(34962,null)}),this}},{key:"setElementBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.elements=e,this.elementsAccessor=t,this.clearDrawParams(),this.vertexArrayObject.setElementBuffer(e,t),this}},{key:"setBuffer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(34963===t.target)return this.setElementBuffer(t,n);var i=this._resolveLocationAndAccessor(e,t,t.accessor,n),r=i.location,o=i.accessor;return r>=0&&(this.values[r]=t,this.accessors[r]=o,this.clearDrawParams(),this.vertexArrayObject.setBuffer(r,t,o)),this}},{key:"setConstant",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=this._resolveLocationAndAccessor(e,t,Object.assign({size:t.length},n)),r=i.location,o=i.accessor;return r>=0&&(t=this.vertexArrayObject._normalizeConstantArrayValue(t),this.values[r]=t,this.accessors[r]=o,this.clearDrawParams(),this.vertexArrayObject.enable(r,!1)),this}},{key:"unbindBuffers",value:function(){var e=this;return this.vertexArrayObject.bind(function(){e.elements&&e.vertexArrayObject.setElementBuffer(null),e.buffer=e.buffer||new ux(e.gl,{accessor:{size:4}});for(var t=0;t0;if(e.isInstanced=e.isInstanced||r,n instanceof ux){var o=n;if(r){var a=o.getVertexCount(i);e.instanceCount=Math.min(e.instanceCount,a)}else{var s=o.getVertexCount(i);e.vertexCount=Math.min(e.vertexCount,s)}}}}},{key:"setElements",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Gw.deprecated("setElements","setElementBuffer")(),this.setElementBuffer(e,t)}}]),e}();function yC(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.isInteger,i=void 0!==n&&n;if(Array.isArray(e)||ArrayBuffer.isView(e))return function(e,t){for(var n=t.maxElts,i=void 0===n?16:n,r=t.size,o=void 0===r?1:r,a="[",s=0;s0&&(a+=","+(s%o==0?" ":"")),a+=yC(e[s],t);return"".concat(a).concat(e.length>i?"...":"]")}(e,t);if(!Number.isFinite(e))return String(e);if(Math.abs(e)<1e-16)return i?"0":"0.";if(i||Math.abs(e)>100&&Math.abs(e)<1e4)return e.toFixed(0);var r=e.toPrecision(2);return r.indexOf(".0")===r.length-2?r.slice(0,-1):r}function bC(e,t,n,i){var r,a,s=e.gl;if(!t)return o(r={},i,"null"),o(r,"Format ","N/A"),r;var u,c,l,h="NOT PROVIDED",d=1,f=0,p=0;if(n&&(h=n.type,d=n.size,u=-1!==(h=String(h).replace("Array","")).indexOf("nt")),t instanceof ux){var v,g,m=t,y=m.getDebugData(),b=y.data;return c=y.changed?"*":"",l=b,f=(p=m.byteLength)/b.BYTES_PER_ELEMENT/d,n?g="".concat(n.divisor>0?"I ":"P "," ").concat(f," (x").concat(d,"=").concat(p," bytes ").concat(Gk(s,h),")"):(u=!0,g="".concat(p," bytes")),o(v={},i,"".concat(c).concat(yC(l,{size:d,isInteger:u}))),o(v,"Format ",g),v}return l=t,d=t.length,u=-1!==(h=String(t.constructor.name).replace("Array","")).indexOf("nt"),o(a={},i,"".concat(yC(l,{size:d,isInteger:u})," (constant)")),o(a,"Format ","".concat(d,"x").concat(h," (constant)")),a}function _C(e,t){var n=uC(t.type,t.size);return n?"".concat(e," (").concat(n.name,")"):e}function wC(e){var t=e.header,n=void 0===t?"Uniforms":t,i=e.program,r=e.uniforms,a=e.undefinedOnly,s=void 0!==a&&a;Uk(i);var u,c=".*Matrix",l={},h=Object.keys(i._uniformSetters).sort(),d=0,f=_(h);try{for(f.s();!(u=f.n()).done;){var p=u.value;!p.match(".*_.*")&&!p.match(c)&&kC({table:l,header:n,uniforms:r,uniformName:p,undefinedOnly:s})&&d++}}catch(C){f.e(C)}finally{f.f()}var v,g=_(h);try{for(g.s();!(v=g.n()).done;){var m=v.value;m.match(c)&&kC({table:l,header:n,uniforms:r,uniformName:m,undefinedOnly:s})&&d++}}catch(C){g.e(C)}finally{g.f()}var y,b=_(h);try{for(b.s();!(y=b.n()).done;){var w=y.value;l[w]||kC({table:l,header:n,uniforms:r,uniformName:w,undefinedOnly:s})&&d++}}catch(C){b.e(C)}finally{b.f()}var k=0,x={};if(!s)for(var S in r){var E=r[S];l[S]||(k++,x[S]=o({Type:"NOT USED: ".concat(E)},n,yC(E)))}return{table:l,count:d,unusedTable:x,unusedCount:k}}function kC(e){var t,n=e.table,i=e.header,r=e.uniforms,a=e.uniformName,s=e.undefinedOnly,u=r[a],c=function(e){return null!=e}(u);return!(s&&c||(n[a]=(t={},o(t,i,c?yC(u):"N/A"),o(t,"Uniform Type",c?u:"NOT PROVIDED"),t),0))}function xC(e){var t=e.accessor,n=uC(t.type,t.size);return n?"".concat(n.name," ").concat(e.name):e.name}var SC={POSITION:"positions",NORMAL:"normals",COLOR_0:"colors",TEXCOORD_0:"texCoords",TEXCOORD_1:"texCoords1",TEXCOORD_2:"texCoords2"};function EC(e,t){var n=(t||{}).attributeMap,i=void 0===n?SC:n;return i&&i[e]||e}function CC(e,t){var n;switch(e){case"texCoords":case"texCoord1":case"texCoord2":case"texCoord3":n="uvs";break;case"vertices":case"positions":case"normals":case"pickingColors":n="vectors"}switch(n){case"vectors":t.size=t.size||3;break;case"uvs":t.size=t.size||2}Uk(Number.isFinite(t.size),"attribute ".concat(e," needs size"))}var OC=function(){},TC={},AC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e);var i=n.id,r=void 0===i?qk("model"):i;Uk(qw(t)),this.id=r,this.gl=t,this.id=n.id||qk("Model"),this.lastLogTime=0,this.animated=!1,this.initialize(n)}return b(e,[{key:"initialize",value:function(e){this.props={},this.programManager=e.programManager||dC.getDefaultProgramManager(this.gl),this._programManagerState=-1,this._managedProgram=!1;var t=e.program,n=void 0===t?null:t,i=e.vs,r=e.fs,o=e.modules,a=e.defines,s=e.inject,u=e.varyings,c=e.bufferMode,l=e.transpileToGLSL100;this.programProps={program:n,vs:i,fs:r,modules:o,defines:a,inject:s,varyings:u,bufferMode:c,transpileToGLSL100:l},this.program=null,this.vertexArray=null,this._programDirty=!0,this.userData={},this.needsRedraw=!0,this._attributes={},this.attributes={},this.uniforms={},this.pickable=!0,this._checkProgram(),this.setUniforms(Object.assign({},this.getModuleUniforms(e.moduleSettings))),this.drawMode=void 0!==e.drawMode?e.drawMode:4,this.vertexCount=e.vertexCount||0,this.geometryBuffers={},this.isInstanced=e.isInstanced||e.instanced||e.instanceCount>0,this._setModelProps(e),this.geometry={},Uk(void 0!==this.drawMode&&Number.isFinite(this.vertexCount),"Model needs drawMode and vertexCount")}},{key:"setProps",value:function(e){this._setModelProps(e)}},{key:"delete",value:function(){for(var e in this._attributes)this._attributes[e]!==this.attributes[e]&&this._attributes[e].delete();this._managedProgram&&(this.programManager.release(this.program),this._managedProgram=!1),this.vertexArray.delete(),this._deleteGeometryBuffers()}},{key:"getDrawMode",value:function(){return this.drawMode}},{key:"getVertexCount",value:function(){return this.vertexCount}},{key:"getInstanceCount",value:function(){return this.instanceCount}},{key:"getAttributes",value:function(){return this.attributes}},{key:"getProgram",value:function(){return this.program}},{key:"setProgram",value:function(e){var t=e.program,n=e.vs,i=e.fs,r=e.modules,o=e.defines,a=e.inject,s=e.varyings,u=e.bufferMode,c=e.transpileToGLSL100;this.programProps={program:t,vs:n,fs:i,modules:r,defines:o,inject:a,varyings:s,bufferMode:u,transpileToGLSL100:c},this._programDirty=!0}},{key:"getUniforms",value:function(){return this.uniforms}},{key:"setDrawMode",value:function(e){return this.drawMode=e,this}},{key:"setVertexCount",value:function(e){return Uk(Number.isFinite(e)),this.vertexCount=e,this}},{key:"setInstanceCount",value:function(e){return Uk(Number.isFinite(e)),this.instanceCount=e,this}},{key:"setGeometry",value:function(e){return this.drawMode=e.drawMode,this.vertexCount=e.getVertexCount(),this._deleteGeometryBuffers(),this.geometryBuffers=function(e,t,n){var i={},r=t.indices;for(var o in t.attributes){var a=t.attributes[o],s=EC(o,void 0);if("indices"===o)r=a;else if(a.constant)i[s]=a.value;else{var u=a.value,c=M({},a);delete c.value,i[s]=[new ux(e,u),c],CC(o,c)}}if(r){var l=r.value||r;Uk(l instanceof Uint16Array||l instanceof Uint32Array,'attribute array for "indices" must be of integer type');var h={size:1,isIndexed:void 0===r.isIndexed||r.isIndexed};i.indices=[new ux(e,{data:l,target:34963}),h]}return i}(this.gl,e),this.vertexArray.setAttributes(this.geometryBuffers),this}},{key:"setAttributes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Yk(e))return this;var t={};for(var n in e){var i=e[n];t[n]=i.getValue?i.getValue():i}return this.vertexArray.setAttributes(t),this}},{key:"setUniforms",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object.assign(this.uniforms,e),this}},{key:"getModuleUniforms",value:function(e){this._checkProgram();var t=this.programManager.getUniforms(this.program);return t?t(e):{}}},{key:"updateModuleSettings",value:function(e){var t=this.getModuleUniforms(e||{});return this.setUniforms(t)}},{key:"clear",value:function(e){return wx(this.program.gl,e),this}},{key:"draw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._checkProgram();var t,n=e.moduleSettings,i=void 0===n?null:n,r=e.framebuffer,o=e.uniforms,a=void 0===o?{}:o,s=e.attributes,u=void 0===s?{}:s,c=e.transformFeedback,l=void 0===c?this.transformFeedback:c,h=e.parameters,d=void 0===h?{}:h,f=e.vertexArray,p=void 0===f?this.vertexArray:f;this.setAttributes(u),this.updateModuleSettings(i),this.setUniforms(a),Gw.priority>=2&&(t=this._logDrawCallStart(2));var v=this.vertexArray.getDrawParams(),g=this.props,m=g.isIndexed,y=void 0===m?v.isIndexed:m,b=g.indexType,_=void 0===b?v.indexType:b,w=g.indexOffset,k=void 0===w?v.indexOffset:w,x=g.vertexArrayInstanced,S=void 0===x?v.isInstanced:x;S&&!this.isInstanced&&Gw.warn("Found instanced attributes on non-instanced model",this.id)();var E=this.isInstanced,C=this.instanceCount,O=this.props,T=O.onBeforeRender,A=void 0===T?OC:T,P=O.onAfterRender,M=void 0===P?OC:P;A(),this.program.setUniforms(this.uniforms);var I=this.program.draw(Object.assign(TC,e,{logPriority:t,uniforms:null,framebuffer:r,parameters:d,drawMode:this.getDrawMode(),vertexCount:this.getVertexCount(),vertexArray:p,transformFeedback:l,isIndexed:y,indexType:_,isInstanced:E,instanceCount:C,offset:y?k:0}));return M(),Gw.priority>=2&&this._logDrawCallEnd(t,p,r),I}},{key:"transform",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.discard,n=void 0===t||t,i=e.feedbackBuffers,r=e.unbindModels,o=void 0===r?[]:r,a=e.parameters;i&&this._setFeedbackBuffers(i),n&&(a=Object.assign({},a,{35977:n})),o.forEach(function(e){return e.vertexArray.unbindBuffers()});try{this.draw(Object.assign({},e,{parameters:a}))}finally{o.forEach(function(e){return e.vertexArray.bindBuffers()})}return this}},{key:"render",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Gw.warn("Model.render() is deprecated. Use Model.setUniforms() and Model.draw()")(),this.setUniforms(e).draw()}},{key:"_setModelProps",value:function(e){Object.assign(this.props,e),"uniforms"in e&&this.setUniforms(e.uniforms),"pickable"in e&&(this.pickable=e.pickable),"instanceCount"in e&&(this.instanceCount=e.instanceCount),"geometry"in e&&this.setGeometry(e.geometry),"attributes"in e&&this.setAttributes(e.attributes),"_feedbackBuffers"in e&&this._setFeedbackBuffers(e._feedbackBuffers)}},{key:"_checkProgram",value:function(){if(this._programDirty||this.programManager.stateHash!==this._programManagerState){var e=this.programProps.program;if(e)this._managedProgram=!1;else{var t=this.programProps,n=t.vs,i=t.fs,r=t.modules,o=t.inject,a=t.defines,s=t.varyings,u=t.bufferMode,c=t.transpileToGLSL100;e=this.programManager.get({vs:n,fs:i,modules:r,inject:o,defines:a,varyings:s,bufferMode:u,transpileToGLSL100:c}),this.program&&this._managedProgram&&this.programManager.release(this.program),this._programManagerState=this.programManager.stateHash,this._managedProgram=!0}Uk(e instanceof hC,"Model needs a program"),this._programDirty=!1,e!==this.program&&(this.program=e,this.vertexArray?this.vertexArray.setProps({program:this.program,attributes:this.vertexArray.attributes}):this.vertexArray=new mC(this.gl,{program:this.program}),this.setUniforms(Object.assign({},this.getModuleUniforms())))}}},{key:"_deleteGeometryBuffers",value:function(){for(var e in this.geometryBuffers){var t=this.geometryBuffers[e][0]||this.geometryBuffers[e];t instanceof ux&&t.delete()}}},{key:"_setAnimationProps",value:function(e){this.animated&&Uk(e,"Model.draw(): animated uniforms but no animationProps")}},{key:"_setFeedbackBuffers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(Yk(e))return this;var t=this.program.gl;return this.transformFeedback=this.transformFeedback||new GS(t,{program:this.program}),this.transformFeedback.setBuffers(e),this}},{key:"_logDrawCallStart",value:function(e){var t=e>3?0:1e4;if(!(Date.now()-this.lastLogTime>> DRAWING MODEL ".concat(this.id),{collapsed:Gw.level<=2})(),e}},{key:"_logDrawCallEnd",value:function(e,t,n,i){if(void 0!==e){var r=function(e){var t=e.vertexArray,n=e.header,i=void 0===n?"Attributes":n;if(!t.configuration)return{};var r={};t.elements&&(r.ELEMENT_ARRAY_BUFFER=bC(t,t.elements,null,i));var o=t.values;for(var a in o){var s=t._getAttributeInfo(a);if(s){var u="".concat(a,": ").concat(s.name),c=t.accessors[s.location];c&&(u="".concat(a,": ").concat(_C(s.name,c))),r[u]=bC(t,o[a],c,i)}}return r}({vertexArray:t,header:"".concat(this.id," attributes"),attributes:this._attributes}),a=wC({header:"".concat(this.id," uniforms"),program:this.program,uniforms:Object.assign({},this.program.uniforms,n)}),s=a.table,u=a.unusedTable,c=a.unusedCount,l=wC({header:"".concat(this.id," uniforms"),program:this.program,uniforms:Object.assign({},this.program.uniforms,n),undefinedOnly:!0}),h=l.table;l.count>0&&Gw.log("MISSING UNIFORMS",Object.keys(h))(),c>0&&Gw.log("UNUSED UNIFORMS",Object.keys(u))();var d=function(e){var t,n={},i="Accessors for ".concat(e.id),r=_(e.attributeInfos);try{for(r.s();!(t=r.n()).done;){var a=t.value;a&&(n["in ".concat(xC(a))]=o({},i,JSON.stringify(a.accessor)))}}catch(l){r.e(l)}finally{r.f()}var s,u=_(e.varyingInfos);try{for(u.s();!(s=u.n()).done;){var c=s.value;c&&(n["out ".concat(xC(c))]=o({},i,JSON.stringify(c.accessor)))}}catch(l){u.e(l)}finally{u.f()}return n}(this.vertexArray.configuration);Gw.table(e,r)(),Gw.table(e,s)(),Gw.table(e+1,d)(),i&&i.log({logLevel:2,message:"Rendered to ".concat(i.id)}),Gw.groupEnd(2,">>> DRAWING MODEL ".concat(this.id))()}}}]),e}(),PC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.model=null,this.elementCount=0,this.bufferTransform=null,this.textureTransform=null,this.elementIDBuffer=null,this._initialize(n),Object.seal(this)}return b(e,[{key:"delete",value:function(){var e=this.model,t=this.bufferTransform,n=this.textureTransform;e&&e.delete(),t&&t.delete(),n&&n.delete()}},{key:"run",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.clearRenderTarget,n=void 0===t||t,i=this._updateDrawOptions(e);n&&i.framebuffer&&i.framebuffer.clear({color:!0}),this.model.transform(i)}},{key:"swap",value:function(){var e,t=!1,n=_([this.bufferTransform,this.textureTransform].filter(Boolean));try{for(n.s();!(e=n.n()).done;){var i=e.value;t=t||i.swap()}}catch(r){n.e(r)}finally{n.f()}Uk(t,"Nothing to swap")}},{key:"getBuffer",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return this.bufferTransform&&this.bufferTransform.getBuffer(e)}},{key:"getData",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=[this.bufferTransform,this.textureTransform].filter(Boolean),i=_(n);try{for(i.s();!(e=i.n()).done;){var r=e.value,o=r.getData(t);if(o)return o}}catch(a){i.e(a)}finally{i.f()}return null}},{key:"getFramebuffer",value:function(){return this.textureTransform&&this.textureTransform.getFramebuffer()}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};"elementCount"in e&&this.model.setVertexCount(e.elementCount);var t,n=[this.bufferTransform,this.textureTransform].filter(Boolean),i=_(n);try{for(i.s();!(t=i.n()).done;){var r=t.value;r.update(e)}}catch(o){i.e(o)}finally{i.f()}}},{key:"_initialize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.gl;this._buildResourceTransforms(t,e),e=this._updateModelProps(e),this.model=new AC(t,Object.assign({},e,{fs:e.fs||HS({version:qS(e.vs)}),id:e.id||"transform-model",drawMode:e.drawMode||0,vertexCount:e.elementCount})),this.bufferTransform&&this.bufferTransform.setupResources({model:this.model})}},{key:"_updateModelProps",value:function(e){var t,n=Object.assign({},e),i=_([this.bufferTransform,this.textureTransform].filter(Boolean));try{for(i.s();!(t=i.n()).done;){n=t.value.updateModelProps(n)}}catch(r){i.e(r)}finally{i.f()}return n}},{key:"_buildResourceTransforms",value:function(e,t){(function(e){return!(Yk(e.feedbackBuffers)&&Yk(e.feedbackMap)&&!(e.varyings&&e.varyings.length>0))})(t)&&(this.bufferTransform=new WS(e,t)),function(e){return!(Yk(e._sourceTextures)&&!e._targetTexture&&!e._targetTextureVarying)}(t)&&(this.textureTransform=new oE(e,t)),Uk(this.bufferTransform||this.textureTransform,"must provide source/feedback buffers or source/target textures")}},{key:"_updateDrawOptions",value:function(e){var t,n=Object.assign({},e),i=_([this.bufferTransform,this.textureTransform].filter(Boolean));try{for(i.s();!(t=i.n()).done;){var r=t.value;n=Object.assign(n,r.getDrawOptions(n))}}catch(o){i.e(o)}finally{i.f()}return n}}],[{key:"isSupported",value:function(e){return Xw(e)}}]),e}();function MC(){}var IC={onStart:MC,onUpdate:MC,onInterrupt:MC,onEnd:MC},RC=function(){function e(t){m(this,e),this._inProgress=!1,this._handle=null,this.timeline=t,this.settings={}}return b(e,[{key:"inProgress",get:function(){return this._inProgress}},{key:"start",value:function(e){this.cancel(),this.settings=M(M({},IC),e),this._inProgress=!0,this.settings.onStart(this)}},{key:"end",value:function(){this._inProgress&&(this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1,this.settings.onEnd(this))}},{key:"cancel",value:function(){this._inProgress&&(this.settings.onInterrupt(this),this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1)}},{key:"update",value:function(){if(!this._inProgress)return!1;if(null===this._handle){var e=this.timeline,t=this.settings;this._handle=e.addChannel({delay:e.getTime(),duration:t.duration})}return this.time=this.timeline.getTime(this._handle),this._onUpdate(),this.settings.onUpdate(this),this.timeline.isFinished(this._handle)&&this.end(),!0}},{key:"_onUpdate",value:function(){}}]),e}(),DC={interpolation:function(){function e(t){var n=t.gl,i=t.attribute,r=t.timeline;m(this,e),this.gl=n,this.type="interpolation",this.transition=new RC(r),this.attribute=i,this.attributeInTransition=new LS(n,i.settings),this.currentStartIndices=i.startIndices,this.currentLength=0,this.transform=function(e,t){var n=IS(t.size);return new PC(e,{vs:"\n#define SHADER_NAME interpolation-transition-vertex-shader\n\nuniform float time;\nattribute ATTRIBUTE_TYPE aFrom;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vCurrent;\n\nvoid main(void) {\n vCurrent = mix(aFrom, aTo, time);\n gl_Position = vec4(0.0);\n}\n",defines:{ATTRIBUTE_TYPE:n},varyings:["vCurrent"]})}(n,i);var o={byteLength:0,usage:35050};this.buffers=[new ux(n,o),new ux(n,o)]}return b(e,[{key:"inProgress",get:function(){return this.transition.inProgress}},{key:"start",value:function(e,t){if(e.duration<=0)this.transition.cancel();else{var n=this.buffers,i=this.attribute;RS(n);var r,o={numInstances:t,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:e.enter},a=_(n);try{for(a.s();!(r=a.n()).done;){var s=r.value;NS(M({buffer:s},o))}}catch(u){a.e(u)}finally{a.f()}this.currentStartIndices=i.startIndices,this.currentLength=DS(i,t),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(e),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aFrom:n[0],aTo:MS(0,i)},feedbackBuffers:{vCurrent:n[1]}})}}},{key:"update",value:function(){var e=this.transition.update();if(e){var t=this.transition,n=t.time,i=t.settings,r=i.duration,o=(0,i.easing)(n/r);this.transform.run({uniforms:{time:o}})}return e}},{key:"cancel",value:function(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete()}}]),e}(),spring:function(){function e(t){var n=t.gl,i=t.attribute,r=t.timeline;m(this,e),this.gl=n,this.type="spring",this.transition=new RC(r),this.attribute=i,this.attributeInTransition=new LS(n,I(M({},i.settings),{normalized:!1})),this.currentStartIndices=i.startIndices,this.currentLength=0,this.texture=function(e){return new gx(e,{data:new Uint8Array(4),format:6408,type:5121,border:0,mipmaps:!1,dataFormat:6408,width:1,height:1})}(n),this.framebuffer=function(e,t){return new Mx(e,{id:"spring-transition-is-transitioning-framebuffer",width:1,height:1,attachments:{36064:t}})}(n,this.texture),this.transform=function(e,t,n){var i=IS(t.size);return new PC(e,{framebuffer:n,vs:"\n#define SHADER_NAME spring-transition-vertex-shader\n\n#define EPSILON 0.00001\n\nuniform float stiffness;\nuniform float damping;\nattribute ATTRIBUTE_TYPE aPrev;\nattribute ATTRIBUTE_TYPE aCur;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vNext;\nvarying float vIsTransitioningFlag;\n\nATTRIBUTE_TYPE getNextValue(ATTRIBUTE_TYPE cur, ATTRIBUTE_TYPE prev, ATTRIBUTE_TYPE dest) {\n ATTRIBUTE_TYPE velocity = cur - prev;\n ATTRIBUTE_TYPE delta = dest - cur;\n ATTRIBUTE_TYPE spring = delta * stiffness;\n ATTRIBUTE_TYPE damper = velocity * -1.0 * damping;\n return spring + damper + velocity + cur;\n}\n\nvoid main(void) {\n bool isTransitioning = length(aCur - aPrev) > EPSILON || length(aTo - aCur) > EPSILON;\n vIsTransitioningFlag = isTransitioning ? 1.0 : 0.0;\n\n vNext = getNextValue(aCur, aPrev, aTo);\n gl_Position = vec4(0, 0, 0, 1);\n gl_PointSize = 100.0;\n}\n",fs:"\n#define SHADER_NAME spring-transition-is-transitioning-fragment-shader\n\nvarying float vIsTransitioningFlag;\n\nvoid main(void) {\n if (vIsTransitioningFlag == 0.0) {\n discard;\n }\n gl_FragColor = vec4(1.0);\n}",defines:{ATTRIBUTE_TYPE:i},varyings:["vNext"]})}(n,i,this.framebuffer);var o={byteLength:0,usage:35050};this.buffers=[new ux(n,o),new ux(n,o),new ux(n,o)]}return b(e,[{key:"inProgress",get:function(){return this.transition.inProgress}},{key:"start",value:function(e,t){var n,i=this.buffers,r=this.attribute,o={numInstances:t,attribute:r,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:e.enter},a=_(i);try{for(a.s();!(n=a.n()).done;){var s=n.value;NS(M({buffer:s},o))}}catch(u){a.e(u)}finally{a.f()}this.currentStartIndices=r.startIndices,this.currentLength=DS(r,t),this.attributeInTransition.update({buffer:i[1],value:r.value}),this.transition.start(e),this.transform.update({elementCount:Math.floor(this.currentLength/r.size),sourceBuffers:{aTo:MS(0,r)}})}},{key:"update",value:function(){var e=this.buffers,t=this.transform,n=this.framebuffer,i=this.transition;return!!i.update()&&(t.update({sourceBuffers:{aPrev:e[0],aCur:e[1]},feedbackBuffers:{vNext:e[2]}}),t.run({framebuffer:n,discard:!1,clearRenderTarget:!0,uniforms:{stiffness:i.settings.stiffness,damping:i.settings.damping},parameters:{depthTest:!1,blend:!0,viewport:[0,0,1,1],blendFunc:[1,1],blendEquation:[32776,32776]}}),RS(e),this.attributeInTransition.update({buffer:e[1],value:this.attribute.value}),Tx(n)[0]>0||i.end(),!0)}},{key:"cancel",value:function(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete();this.texture.delete(),this.texture=null,this.framebuffer.delete(),this.framebuffer=null}}]),e}()},NC=function(){function e(t,n){var i=n.id,r=n.timeline;m(this,e),this.id=i,this.gl=t,this.timeline=r,this.transitions={},this.needsRedraw=!1,this.numInstances=1,this.isSupported=PC.isSupported(t)}return b(e,[{key:"finalize",value:function(){for(var e in this.transitions)this._removeTransition(e)}},{key:"update",value:function(e){var t=e.attributes,n=e.transitions,i=e.numInstances;for(var r in this.numInstances=i||1,t){var o=t[r],a=o.getTransitionSetting(n);!a||this._updateAttribute(r,o,a)}for(var s in this.transitions){var u=t[s];(!u||!u.getTransitionSetting(n))&&this._removeTransition(s)}}},{key:"hasAttribute",value:function(e){var t=this.transitions[e];return t&&t.inProgress}},{key:"getAttributes",value:function(){var e={};for(var t in this.transitions){var n=this.transitions[t];n.inProgress&&(e[t]=n.attributeInTransition)}return e}},{key:"run",value:function(){if(!this.isSupported||0===this.numInstances)return!1;for(var e in this.transitions)this.transitions[e].update()&&(this.needsRedraw=!0);var t=this.needsRedraw;return this.needsRedraw=!1,t}},{key:"_removeTransition",value:function(e){this.transitions[e].cancel(),delete this.transitions[e]}},{key:"_updateAttribute",value:function(e,t,n){var i=this.transitions[e],r=!i||i.type!==n.type;if(r){if(!this.isSupported)return void Vw.warn("WebGL2 not supported by this browser. Transition for ".concat(e," is disabled."))();i&&this._removeTransition(e);var o=DC[n.type];o?this.transitions[e]=new o({attribute:t,timeline:this.timeline,gl:this.gl}):(Vw.error("unsupported transition type '".concat(n.type,"'"))(),r=!1)}(r||t.needsRedraw())&&(this.needsRedraw=!0,this.transitions[e].start(n,this.numInstances))}}]),e}(),LC="attributeManager.invalidate",jC=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.id,r=void 0===i?"attribute-manager":i,o=n.stats,a=n.timeline;m(this,e),this.id=r,this.gl=t,this.attributes={},this.updateTriggers={},this.accessors={},this.needsRedraw=!0,this.userData={},this.stats=o,this.attributeTransitionManager=new NC(t,{id:"".concat(r,"-transitions"),timeline:a}),Object.seal(this)}return b(e,[{key:"finalize",value:function(){for(var e in this.attributes)this.attributes[e].delete();this.attributeTransitionManager.finalize()}},{key:"getNeedsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this.needsRedraw;return this.needsRedraw=this.needsRedraw&&!e.clearRedrawFlags,t&&this.id}},{key:"setNeedsRedraw",value:function(){return this.needsRedraw=!0,this}},{key:"add",value:function(e,t){this._add(e,t)}},{key:"addInstanced",value:function(e,t){this._add(e,t,{instanced:1})}},{key:"remove",value:function(e){for(var t=0;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.data,n=e.numInstances,i=e.startIndices,r=void 0===i?null:i,o=e.transitions,a=e.props,s=void 0===a?{}:a,u=e.buffers,c=void 0===u?{}:u,l=e.context,h=void 0===l?{}:l,d=!1;for(var f in FS("attributeManager.updateStart",this),this.stats&&this.stats.get("Update Attributes").timeStart(),this.attributes){var p=this.attributes[f],v=p.settings.accessor;p.startIndices=r,s[f]&&Vw.removed("props.".concat(f),"data.attributes.".concat(f))(),p.setExternalBuffer(c[f])||p.setBinaryValue(c[v],t.startIndices)||!c[v]&&p.setConstantValue(s[v])||p.needsUpdate()&&(d=!0,this._updateAttribute({attribute:p,numInstances:n,data:t,props:s,context:h})),this.needsRedraw|=p.needsRedraw()}d&&FS("attributeManager.updateEnd",this,n),this.stats&&this.stats.get("Update Attributes").timeEnd(),this.attributeTransitionManager.update({attributes:this.attributes,numInstances:n,transitions:o})}},{key:"updateTransition",value:function(){var e=this.attributeTransitionManager.run();return this.needsRedraw=this.needsRedraw||e,e}},{key:"getAttributes",value:function(){return this.attributes}},{key:"getChangedAttributes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearChangedFlags:!1},t=this.attributes,n=this.attributeTransitionManager,i=M({},n.getAttributes());for(var r in t){var o=t[r];o.needsRedraw(e)&&!n.hasAttribute(r)&&(i[r]=o)}return i}},{key:"getShaderAttributes",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e||(e=this.getAttributes());var n={};for(var i in e)t[i]||Object.assign(n,e[i].getShaderAttributes());return n}},{key:"getAccessors",value:function(){return this.updateTriggers}},{key:"_add",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};for(var i in t&&Vw.warn("AttributeManager.add({updaters}) - updater map no longer supported")(),e)this.attributes[i]=this._createAttribute(i,e[i],n);this._mapUpdateTriggersToAttributes()}},{key:"_createAttribute",value:function(e,t,n){var i=I(M({},t),{id:e,isIndexed:t.isIndexed||t.elements||!1,constant:t.constant||!1,size:(t.elements?1:t.size)||1,value:t.value||null,divisor:t.instanced||n.instanced?1:t.divisor||0});return new LS(this.gl,i)}},{key:"_mapUpdateTriggersToAttributes",value:function(){var e=this,t={},n=function(n){e.attributes[n].getUpdateTriggers().forEach(function(e){t[e]||(t[e]=[]),t[e].push(n)})};for(var i in this.attributes)n(i);this.updateTriggers=t}},{key:"_invalidateTrigger",value:function(e,t){var n=this.attributes,i=this.updateTriggers[e];return i&&i.forEach(function(e){var i=n[e];i&&i.setNeedsUpdate(i.id,t)}),i}},{key:"_updateAttribute",value:function(e){var t=e.attribute,n=e.numInstances;FS("attribute.updateStart",t),t.allocate(n)&&FS("attribute.allocate",t,n),t.updateBuffer(e)&&(this.needsRedraw=!0,FS("attribute.updateEnd",t,n))}}]),e}();function FC(e,t,n,i,r){var o=t-e;return(n-t)*r+-o*i+o+t}function BC(e,t){if(Array.isArray(e)){for(var n=0,i=0;i0}},{key:"add",value:function(e,t,n,i){var r=this.transitions;if(r.has(e)){var o=r.get(e),a=o.value;t=void 0===a?o.settings.fromValue:a,this.remove(e)}if(i=PS(i)){var s=VC[i.type];if(s){var u=new s(this.timeline);u.start(I(M({},i),{fromValue:t,toValue:n})),r.set(e,u)}else Vw.error("unsupported transition type '".concat(i.type,"'"))()}}},{key:"remove",value:function(e){var t=this.transitions;t.has(e)&&(t.get(e).cancel(),t.delete(e))}},{key:"update",value:function(){var e,n={},i=_(this.transitions);try{for(i.s();!(e=i.n()).done;){var r=t(e.value,2),o=r[0],a=r[1];a.update(),n[o]=a.value,a.inProgress||this.remove(o)}}catch(s){i.e(s)}finally{i.f()}return n}},{key:"clear",value:function(){var e,t=_(this.transitions.keys());try{for(t.s();!(e=t.n()).done;){var n=e.value;this.remove(n)}}catch(i){t.e(i)}finally{t.f()}}}]),e}(),UC={COMPONENT:Symbol.for("component"),ASYNC_DEFAULTS:Symbol.for("asyncPropDefaults"),ASYNC_ORIGINAL:Symbol.for("asyncPropOriginal"),ASYNC_RESOLVED:Symbol.for("asyncPropResolved")},HC=UC.COMPONENT;function GC(e,t){if(!e.transitions)return null;var n={},i=KC(e);for(var r in e.transitions){var o=i[r],a=o&&o.type;("number"===a||"color"===a||"array"===a)&&qC(e[r],t[r],o)&&(n[r]=!0)}return n}function WC(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.newProps,n=e.oldProps,i=e.ignoreProps,r=void 0===i?{}:i,o=e.propTypes,a=void 0===o?{}:o,s=e.triggerName,u=void 0===s?"props":s;if(n===t)return null;if("object"!=typeof t||null===t||"object"!=typeof n||null===n)return"".concat(u," changed shallowly");for(var c=0,l=Object.keys(t);c=0&&n.modules.splice(i,1)}if("inject"in t)if(e.inject){var r=M({},e.inject);for(var o in t.inject)r[o]=(r[o]||"")+t.inject[o];n.inject=r}else n.inject=t.inject;return n}function JC(e,t){var n=t[0],i=t[1],r=t[2],o=t[3],a=t[4],s=t[5],u=t[6],c=t[7],l=t[8],h=t[9],d=t[10],f=t[11],p=t[12],v=t[13],g=t[14],m=t[15],y=n*s-i*a,b=n*u-r*a,_=n*c-o*a,w=i*u-r*s,k=i*c-o*s,x=r*c-o*u,S=l*v-h*p,E=l*g-d*p,C=l*m-f*p,O=h*g-d*v,T=h*m-f*v,A=d*m-f*g,P=y*A-b*T+_*O+w*C-k*E+x*S;return P?(e[0]=(s*A-u*T+c*O)*(P=1/P),e[1]=(r*T-i*A-o*O)*P,e[2]=(v*x-g*k+m*w)*P,e[3]=(d*k-h*x-f*w)*P,e[4]=(u*C-a*A-c*E)*P,e[5]=(n*A-r*C+o*E)*P,e[6]=(g*_-p*x-m*b)*P,e[7]=(l*x-d*_+f*b)*P,e[8]=(a*T-s*C+c*S)*P,e[9]=(i*C-n*T-o*S)*P,e[10]=(p*k-v*_+m*y)*P,e[11]=(h*_-l*k-f*y)*P,e[12]=(s*E-a*O-u*S)*P,e[13]=(n*O-i*E+r*S)*P,e[14]=(v*b-p*w-g*y)*P,e[15]=(l*w-h*b+d*y)*P,e):null}function eO(e,t,n){var i=t[0],r=t[1],o=t[2],a=t[3],s=t[4],u=t[5],c=t[6],l=t[7],h=t[8],d=t[9],f=t[10],p=t[11],v=t[12],g=t[13],m=t[14],y=t[15],b=n[0],_=n[1],w=n[2],k=n[3];return e[0]=b*i+_*s+w*h+k*v,e[1]=b*r+_*u+w*d+k*g,e[2]=b*o+_*c+w*f+k*m,e[3]=b*a+_*l+w*p+k*y,e[4]=(b=n[4])*i+(_=n[5])*s+(w=n[6])*h+(k=n[7])*v,e[5]=b*r+_*u+w*d+k*g,e[6]=b*o+_*c+w*f+k*m,e[7]=b*a+_*l+w*p+k*y,e[8]=(b=n[8])*i+(_=n[9])*s+(w=n[10])*h+(k=n[11])*v,e[9]=b*r+_*u+w*d+k*g,e[10]=b*o+_*c+w*f+k*m,e[11]=b*a+_*l+w*p+k*y,e[12]=(b=n[12])*i+(_=n[13])*s+(w=n[14])*h+(k=n[15])*v,e[13]=b*r+_*u+w*d+k*g,e[14]=b*o+_*c+w*f+k*m,e[15]=b*a+_*l+w*p+k*y,e}function tO(e,t,n){var i,r,o,a,s,u,c,l,h,d,f,p,v=n[0],g=n[1],m=n[2];return t===e?(e[12]=t[0]*v+t[4]*g+t[8]*m+t[12],e[13]=t[1]*v+t[5]*g+t[9]*m+t[13],e[14]=t[2]*v+t[6]*g+t[10]*m+t[14],e[15]=t[3]*v+t[7]*g+t[11]*m+t[15]):(r=t[1],o=t[2],a=t[3],s=t[4],u=t[5],c=t[6],l=t[7],h=t[8],d=t[9],f=t[10],p=t[11],e[0]=i=t[0],e[1]=r,e[2]=o,e[3]=a,e[4]=s,e[5]=u,e[6]=c,e[7]=l,e[8]=h,e[9]=d,e[10]=f,e[11]=p,e[12]=i*v+s*g+h*m+t[12],e[13]=r*v+u*g+d*m+t[13],e[14]=o*v+c*g+f*m+t[14],e[15]=a*v+l*g+p*m+t[15]),e}function nO(e,t,n){var i=n[0],r=n[1],o=n[2];return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e[4]=t[4]*r,e[5]=t[5]*r,e[6]=t[6]*r,e[7]=t[7]*r,e[8]=t[8]*o,e[9]=t[9]*o,e[10]=t[10]*o,e[11]=t[11]*o,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function iO(e,t,n){var i=Math.sin(n),r=Math.cos(n),o=t[4],a=t[5],s=t[6],u=t[7],c=t[8],l=t[9],h=t[10],d=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=o*r+c*i,e[5]=a*r+l*i,e[6]=s*r+h*i,e[7]=u*r+d*i,e[8]=c*r-o*i,e[9]=l*r-a*i,e[10]=h*r-s*i,e[11]=d*r-u*i,e}function rO(e,t,n){var i=Math.sin(n),r=Math.cos(n),o=t[0],a=t[1],s=t[2],u=t[3],c=t[4],l=t[5],h=t[6],d=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*r+c*i,e[1]=a*r+l*i,e[2]=s*r+h*i,e[3]=u*r+d*i,e[4]=c*r-o*i,e[5]=l*r-a*i,e[6]=h*r-s*i,e[7]=d*r-u*i,e}function oO(e,t,n,i,r){var o,a=1/Math.tan(t/2);return e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=r&&r!==1/0?(e[10]=(r+i)*(o=1/(i-r)),e[14]=2*r*i*o):(e[10]=-1,e[14]=-2*i),e}function aO(e,t){var n=e[0],i=e[1],r=e[2],o=e[3],a=e[4],s=e[5],u=e[6],c=e[7],l=e[8],h=e[9],d=e[10],f=e[11],p=e[12],v=e[13],g=e[14],m=e[15],y=t[0],b=t[1],_=t[2],w=t[3],k=t[4],x=t[5],S=t[6],E=t[7],C=t[8],O=t[9],T=t[10],A=t[11],P=t[12],M=t[13],I=t[14],R=t[15];return Math.abs(n-y)<=eS*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-b)<=eS*Math.max(1,Math.abs(i),Math.abs(b))&&Math.abs(r-_)<=eS*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(o-w)<=eS*Math.max(1,Math.abs(o),Math.abs(w))&&Math.abs(a-k)<=eS*Math.max(1,Math.abs(a),Math.abs(k))&&Math.abs(s-x)<=eS*Math.max(1,Math.abs(s),Math.abs(x))&&Math.abs(u-S)<=eS*Math.max(1,Math.abs(u),Math.abs(S))&&Math.abs(c-E)<=eS*Math.max(1,Math.abs(c),Math.abs(E))&&Math.abs(l-C)<=eS*Math.max(1,Math.abs(l),Math.abs(C))&&Math.abs(h-O)<=eS*Math.max(1,Math.abs(h),Math.abs(O))&&Math.abs(d-T)<=eS*Math.max(1,Math.abs(d),Math.abs(T))&&Math.abs(f-A)<=eS*Math.max(1,Math.abs(f),Math.abs(A))&&Math.abs(p-P)<=eS*Math.max(1,Math.abs(p),Math.abs(P))&&Math.abs(v-M)<=eS*Math.max(1,Math.abs(v),Math.abs(M))&&Math.abs(g-I)<=eS*Math.max(1,Math.abs(g),Math.abs(I))&&Math.abs(m-R)<=eS*Math.max(1,Math.abs(m),Math.abs(R))}function sO(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function uO(e,t,n){var i=t[0],r=t[1],o=t[2],a=t[3];return e[0]=n[0]*i+n[4]*r+n[8]*o+n[12]*a,e[1]=n[1]*i+n[5]*r+n[9]*o+n[13]*a,e[2]=n[2]*i+n[6]*r+n[10]*o+n[14]*a,e[3]=n[3]*i+n[7]*r+n[11]*o+n[15]*a,e}!function(){var e=new tS(4);tS!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0)}();var cO=[0,0,0,0],lO=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],hO=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],dO=[0,0,0],fO=[0,0,0],pO=QC(function(e){var t=e.viewport,n=e.devicePixelRatio,i=e.coordinateSystem,r=function(e,t,n){var i=e.viewMatrixUncentered,r=e.projectionMatrix,o=e.viewMatrix,a=e.viewProjectionMatrix,s=cO,u=cO,c=e.cameraPosition,l=vO(e,t,n),h=l.geospatialOrigin,d=l.shaderCoordinateOrigin;return l.offsetMode&&(u=e.projectPosition(h||d),c=[c[0]-u[0],c[1]-u[1],c[2]-u[2]],u[3]=1,s=uO([],u,a),a=eO([],r,o=i||o),a=eO([],a,lO)),{viewMatrix:o,viewProjectionMatrix:a,projectionCenter:s,originCommon:u,cameraPosCommon:c,shaderCoordinateOrigin:d,geospatialOrigin:h}}(t,i,e.coordinateOrigin),o=r.projectionCenter,a=r.viewProjectionMatrix,s=r.originCommon,u=r.cameraPosCommon,c=r.shaderCoordinateOrigin,l=r.geospatialOrigin,h=t.getDistanceScales(),d=[t.width*n,t.height*n],f=t.projectionMatrix.transform([0,0,-t.focalDistance,1])[3]||1,p={project_uCoordinateSystem:i,project_uProjectionMode:t.projectionMode,project_uCoordinateOrigin:c,project_uCommonOrigin:s.slice(0,3),project_uCenter:o,project_uViewportSize:d,project_uDevicePixelRatio:n,project_uFocalDistance:f,project_uCommonUnitsPerMeter:h.unitsPerMeter,project_uCommonUnitsPerWorldUnit:h.unitsPerMeter,project_uCommonUnitsPerWorldUnit2:dO,project_uScale:t.scale,project_uViewProjectionMatrix:a,project_uCameraPosition:u};if(l){var v=t.getDistanceScales(l);switch(i){case zw.METER_OFFSETS:p.project_uCommonUnitsPerWorldUnit=v.unitsPerMeter,p.project_uCommonUnitsPerWorldUnit2=v.unitsPerMeter2;break;case zw.LNGLAT:case zw.LNGLAT_OFFSETS:p.project_uCommonUnitsPerWorldUnit=v.unitsPerDegree,p.project_uCommonUnitsPerWorldUnit2=v.unitsPerDegree2;break;case zw.CARTESIAN:p.project_uCommonUnitsPerWorldUnit=[1,1,v.unitsPerMeter[2]],p.project_uCommonUnitsPerWorldUnit2=[0,0,v.unitsPerMeter2[2]]}}return p});function vO(e,t){var n,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:fO,r=i,o=!0;switch(n=t===zw.LNGLAT_OFFSETS||t===zw.METER_OFFSETS?i:e.isGeospatial?[Math.fround(e.longitude),Math.fround(e.latitude),0]:null,e.projectionMode){case Uw.WEB_MERCATOR:(t===zw.LNGLAT||t===zw.CARTESIAN)&&(o=!1);break;case Uw.WEB_MERCATOR_AUTO_OFFSET:t===zw.LNGLAT?r=n:t===zw.CARTESIAN&&(r=[Math.fround(e.center[0]),Math.fround(e.center[1]),0],n=e.unprojectPosition(r),r[0]-=i[0],r[1]-=i[1],r[2]-=i[2]);break;case Uw.IDENTITY:r=e.position.map(Math.fround);break;case Uw.GLOBE:o=!1,n=null;break;default:o=!1}return r[2]=r[2]||0,{geospatialOrigin:n,shaderCoordinateOrigin:r,offsetMode:o}}var gO=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"ELEMENTS",get:function(){return Xx(!1),0}},{key:"RANK",get:function(){return Xx(!1),0}},{key:"toString",value:function(){var e="[";if(Bx.printRowMajor){e+="row-major:";for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:new Array(this.RANK).fill(-0),n=e*this.RANK,i=0;i2*Math.PI)throw Error("radians");var d=s*Math.tan(n/2),f=d*o;return(new i).ortho({left:-f,right:f,bottom:-d,top:d,near:c,far:h})}},{key:"perspective",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.fovy,n=e.fov,i=void 0===n?45*Math.PI/180:n,r=e.aspect,o=void 0===r?1:r,a=e.near,s=void 0===a?.1:a,u=e.far,c=void 0===u?500:u;if((t=t||i)>2*Math.PI)throw Error("radians");return oO(this,t,o,s,c),this.check()}},{key:"determinant",value:function(){return function(e){var t=e[0],n=e[1],i=e[2],r=e[3],o=e[4],a=e[5],s=e[6],u=e[7],c=e[8],l=e[9],h=e[10],d=e[11],f=e[12],p=e[13],v=e[14],g=e[15];return(t*a-n*o)*(h*g-d*v)-(t*s-i*o)*(l*g-d*p)+(t*u-r*o)*(l*v-h*p)+(n*s-i*a)*(c*g-d*f)-(n*u-r*a)*(c*v-h*f)+(i*u-r*s)*(c*p-l*f)}(this)}},{key:"getScale",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0];return e[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),e[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),e[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),e}},{key:"getTranslation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0];return e[0]=this[12],e[1]=this[13],e[2]=this[14],e}},{key:"getRotation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=this.getScale(t||[-0,-0,-0]),i=1/n[0],r=1/n[1],o=1/n[2];return e[0]=this[0]*i,e[1]=this[1]*r,e[2]=this[2]*o,e[3]=0,e[4]=this[4]*i,e[5]=this[5]*r,e[6]=this[6]*o,e[7]=0,e[8]=this[8]*i,e[9]=this[9]*r,e[10]=this[10]*o,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}},{key:"getRotationMatrix3",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[-0,-0,-0,-0,-0,-0,-0,-0,-0],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=this.getScale(t||[-0,-0,-0]),i=1/n[0],r=1/n[1],o=1/n[2];return e[0]=this[0]*i,e[1]=this[1]*r,e[2]=this[2]*o,e[3]=this[4]*i,e[4]=this[5]*r,e[5]=this[6]*o,e[6]=this[8]*i,e[7]=this[9]*r,e[8]=this[10]*o,e}},{key:"transpose",value:function(){return function(e,t){if(e===t){var n=t[1],i=t[2],r=t[3],o=t[6],a=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=i,e[9]=o,e[11]=t[14],e[12]=r,e[13]=a,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15]}(this,this),this.check()}},{key:"invert",value:function(){return JC(this,this),this.check()}},{key:"multiplyLeft",value:function(e){return eO(this,e,this),this.check()}},{key:"multiplyRight",value:function(e){return eO(this,this,e),this.check()}},{key:"rotateX",value:function(e){return iO(this,this,e),this.check()}},{key:"rotateY",value:function(e){return function(e,t,n){var i=Math.sin(n),r=Math.cos(n),o=t[0],a=t[1],s=t[2],u=t[3],c=t[8],l=t[9],h=t[10],d=t[11];t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=o*r-c*i,e[1]=a*r-l*i,e[2]=s*r-h*i,e[3]=u*r-d*i,e[8]=o*i+c*r,e[9]=a*i+l*r,e[10]=s*i+h*r,e[11]=u*i+d*r}(this,this,e),this.check()}},{key:"rotateZ",value:function(e){return rO(this,this,e),this.check()}},{key:"rotateXYZ",value:function(e){var n=t(e,3),i=n[0],r=n[1],o=n[2];return this.rotateX(i).rotateY(r).rotateZ(o)}},{key:"rotateAxis",value:function(e,t){return function(e,t,n,i){var r,o,a,s,u,c,l,h,d,f,p,v,g,m,y,b,_,w,k,x,S,E,C,O,T=i[0],A=i[1],P=i[2],M=Math.hypot(T,A,P);M=-90&&r<=90,"invalid latitude"),[512*(i*MO+AO)/(2*AO),512*(AO+Math.log(Math.tan(PO+r*MO*.5)))/(2*AO)]}function NO(e){var n=t(e,2),i=n[0],r=n[1],o=i/512*(2*AO)-AO,a=2*(Math.atan(Math.exp(r/512*(2*AO)-AO))-PO);return[o*IO,a*IO]}function LO(e){var t=e.latitude,n=e.longitude,i=e.highPrecision,r=void 0!==i&&i;TO(Number.isFinite(t)&&Number.isFinite(n));var o={},a=Math.cos(t*MO),s=512/360,u=s/a,c=512/RO/a;if(o.unitsPerMeter=[c,c,c],o.metersPerUnit=[1/c,1/c,1/c],o.unitsPerDegree=[s,u,c],o.degreesPerUnit=[1/s,1/u,1/c],r){var l=MO*Math.tan(t*MO)/a,h=512/RO*l,d=h/u*c;o.unitsPerDegree2=[0,s*l/2,h],o.unitsPerMeter2=[d,0,d]}return o}function jO(e,n){var i=t(e,3),r=i[0],o=i[1],a=i[2],s=t(n,3),u=s[0],c=s[1],l=s[2],h=LO({longitude:r,latitude:o,highPrecision:!0}),d=h.unitsPerMeter,f=h.unitsPerMeter2,p=DO(e);p[0]+=u*(d[0]+f[0]*c),p[1]+=c*(d[1]+f[1]*c);var v=NO(p),g=(a||0)+(l||0);return Number.isFinite(a)||Number.isFinite(l)?[v[0],v[1],g]:v}function FO(e){var t=e.height,n=e.pitch,i=e.bearing,r=e.altitude,o=e.scale,a=e.center,s=void 0===a?null:a,u=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return tO(u,u,[0,0,-r]),iO(u,u,-n*MO),rO(u,u,i*MO),nO(u,u,[o/=t,o,o]),s&&tO(u,u,function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}([],s)),u}function BO(e){var t=e.width,n=e.height,i=e.fovy,r=void 0===i?VO(1.5):i,o=e.altitude,a=e.pitch,s=void 0===a?0:a,u=e.nearZMultiplier,c=void 0===u?1:u,l=e.farZMultiplier,h=void 0===l?1:l;void 0!==o&&(r=VO(o));var d=.5*r*MO,f=zO(r),p=s*MO,v=Math.sin(d)*f/Math.sin(Math.min(Math.max(Math.PI/2-p-d,.01),Math.PI-.01));return{fov:2*d,aspect:t/n,focalDistance:f,near:c,far:(Math.sin(p)*v+f)*h}}function VO(e){return 2*Math.atan(.5/e)*IO}function zO(e){return.5/Math.tan(.5*e*MO)}function UO(e,n){var i=t(e,3),r=i[0],o=i[1],a=i[2],s=void 0===a?0:a;return TO(Number.isFinite(r)&&Number.isFinite(o)&&Number.isFinite(s)),EO(n,[r,o,s,1])}function HO(e,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=t(e,3),o=r[0],a=r[1],s=r[2];if(TO(Number.isFinite(o)&&Number.isFinite(a),"invalid pixel coordinate"),Number.isFinite(s))return EO(n,[o,a,s,1]);var u=EO(n,[o,a,0,1]),c=EO(n,[o,a,1,1]),l=u[2],h=c[2];return bO([],u,c,l===h?0:((i||0)-l)/(h-l))}function GO(e){var n=e.width,i=e.height,r=e.bounds,o=e.minExtent,a=void 0===o?0:o,s=e.maxZoom,u=void 0===s?24:s,c=e.padding,l=void 0===c?0:c,h=e.offset,d=void 0===h?[0,0]:h,f=t(r,2),p=t(f[0],2),v=p[0],g=p[1],m=t(f[1],2),y=m[0],b=m[1];Number.isFinite(l)?l={top:l,bottom:l,left:l,right:l}:TO(Number.isFinite(l.top)&&Number.isFinite(l.bottom)&&Number.isFinite(l.left)&&Number.isFinite(l.right));var _=new YO({width:n,height:i,longitude:0,latitude:0,zoom:0}),w=_.project([v,b]),k=_.project([y,g]),x=[Math.max(Math.abs(k[0]-w[0]),a),Math.max(Math.abs(k[1]-w[1]),a)],S=[n-l.left-l.right-2*Math.abs(d[0]),i-l.top-l.bottom-2*Math.abs(d[1])];TO(S[0]>0&&S[1]>0);var E=S[0]/x[0],C=S[1]/x[1],O=_.unproject([(k[0]+w[0])/2+(l.right-l.left)/2/E,(k[1]+w[1])/2+(l.bottom-l.top)/2/C]),T=Math.min(u,_.zoom+OO(Math.abs(Math.min(E,C))));return TO(Number.isFinite(T)),{longitude:O[0],latitude:O[1],zoom:T}}var WO=Math.PI/180;function qO(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=e.width,o=e.height,a=e.unproject,s={targetZ:i},u=a([0,o],s),c=a([r,o],s);return(e.fovy?.5*e.fovy*WO:Math.atan(.5/e.altitude))>(90-e.pitch)*WO-.01?(t=XO(e,0,i),n=XO(e,r,i)):(t=a([0,0],s),n=a([r,0],s)),[u,c,n,t]}function XO(e,t,n){var i=e.pixelUnprojectionMatrix,r=EO(i,[t,0,1,1]),o=EO(i,[t,e.height,1,1]),a=NO(bO([],r,o,(n*e.distanceScales.unitsPerMeter[2]-r[2])/(o[2]-r[2])));return a[2]=n,a}var YO=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{width:1,height:1},n=t.width,i=t.height,r=t.latitude,o=void 0===r?0:r,a=t.longitude,s=void 0===a?0:a,u=t.zoom,c=void 0===u?0:u,l=t.pitch,h=void 0===l?0:l,d=t.bearing,f=void 0===d?0:d,p=t.altitude,v=void 0===p?null:p,g=t.fovy,y=void 0===g?null:g,b=t.position,_=void 0===b?null:b,w=t.nearZMultiplier,k=void 0===w?.02:w,x=t.farZMultiplier,S=void 0===x?1.01:x;m(this,e),n=n||1,i=i||1,null===y&&null===v?y=VO(v=1.5):null===y?y=VO(v):null===v&&(v=zO(y));var E=function(e){return Math.pow(2,e)}(c);v=Math.max(.75,v);var C,O,T=LO({longitude:s,latitude:o}),A=DO([s,o]);A[2]=0,_&&function(e,t,n){e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2]}(A,A,function(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}([],_,T.unitsPerMeter)),this.projectionMatrix=oO([],(O=BO({width:(C={width:n,height:i,pitch:h,fovy:y,nearZMultiplier:k,farZMultiplier:S}).width,height:C.height,altitude:C.altitude,fovy:C.fovy,pitch:C.pitch,nearZMultiplier:C.nearZMultiplier,farZMultiplier:C.farZMultiplier})).fov,O.aspect,O.near,O.far),this.viewMatrix=FO({height:i,scale:E,center:A,pitch:h,bearing:f,altitude:v}),this.width=n,this.height=i,this.scale=E,this.latitude=o,this.longitude=s,this.zoom=c,this.pitch=h,this.bearing=f,this.altitude=v,this.fovy=y,this.center=A,this.meterOffset=_||[0,0,0],this.distanceScales=T,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}return b(e,[{key:"_initMatrices",value:function(){var e=this.width,t=this.height,n=this.projectionMatrix,i=this.viewMatrix,r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];eO(r,r,n),eO(r,r,i),this.viewProjectionMatrix=r;var o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];nO(o,o,[e/2,-t/2,1]),tO(o,o,[1,-1,0]),eO(o,o,r);var a=JC([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],o);if(!a)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=o,this.pixelUnprojectionMatrix=a}},{key:"equals",value:function(t){return t instanceof e&&t.width===this.width&&t.height===this.height&&aO(t.projectionMatrix,this.projectionMatrix)&&aO(t.viewMatrix,this.viewMatrix)}},{key:"project",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=UO(this.projectPosition(e),this.pixelProjectionMatrix),a=t(o,2),s=a[0],u=a[1],c=r?u:this.height-u;return 2===e.length?[s,c]:[s,c,o[2]]}},{key:"unproject",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=n.targetZ,a=t(e,3),s=a[0],u=a[1],c=a[2],l=HO([s,r?u:this.height-u,c],this.pixelUnprojectionMatrix,o&&o*this.distanceScales.unitsPerMeter[2]),h=this.unprojectPosition(l),d=t(h,3),f=d[0],p=d[1],v=d[2];return Number.isFinite(c)?[f,p,v]:Number.isFinite(o)?[f,p,o]:[f,p]}},{key:"projectPosition",value:function(e){var n=t(DO(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.unitsPerMeter[2]]}},{key:"unprojectPosition",value:function(e){var n=t(NO(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.metersPerUnit[2]]}},{key:"projectFlat",value:function(e){return DO(e)}},{key:"unprojectFlat",value:function(e){return NO(e)}},{key:"getMapCenterByLngLatPosition",value:function(e){var t=e.lngLat,n=HO(e.pos,this.pixelUnprojectionMatrix),i=mO([],DO(t),yO([],n));return NO(mO([],this.center,i))}},{key:"getLocationAtPoint",value:function(e){var t=e.lngLat,n=e.pos;return this.getMapCenterByLngLatPosition({lngLat:t,pos:n})}},{key:"fitBounds",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=this.width,r=this.height,o=GO(Object.assign({width:i,height:r,bounds:t},n)),a=o.longitude,s=o.latitude,u=o.zoom;return new e({width:i,height:r,longitude:a,latitude:s,zoom:u})}},{key:"getBounds",value:function(e){var t=this.getBoundingRegion(e),n=Math.min.apply(Math,v(t.map(function(e){return e[0]}))),i=Math.max.apply(Math,v(t.map(function(e){return e[0]})));return[[n,Math.min.apply(Math,v(t.map(function(e){return e[1]})))],[i,Math.max.apply(Math,v(t.map(function(e){return e[1]})))]]}},{key:"getBoundingRegion",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return qO(this,e.z||0)}}]),e}(),KO=Math.PI/180,$O=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],QO=[0,0,0],ZO={unitsPerMeter:[1,1,1],metersPerUnit:[1,1,1]},JO=function(){var e=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?null:n,r=t.x,o=void 0===r?0:r,a=t.y,s=void 0===a?0:a,u=t.width,c=void 0===u?1:u,l=t.height,h=void 0===l?1:l;this.id=i||this.constructor.displayName||"viewport",this.x=o,this.y=s,this.width=c||1,this.height=h||1,this._frustumPlanes={},this._initViewMatrix(t),this._initProjectionMatrix(t),this._initPixelMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),this.projectFlat=this.projectFlat.bind(this),this.unprojectFlat=this.unprojectFlat.bind(this)}return b(e,[{key:"metersPerPixel",get:function(){return this.distanceScales.metersPerUnit[2]/this.scale}},{key:"projectionMode",get:function(){return this.isGeospatial?this.zoom<12?Uw.WEB_MERCATOR:Uw.WEB_MERCATOR_AUTO_OFFSET:Uw.IDENTITY}},{key:"equals",value:function(t){return t instanceof e&&(this===t||t.width===this.width&&t.height===this.height&&t.scale===this.scale&&qx(t.projectionMatrix,this.projectionMatrix)&&qx(t.viewMatrix,this.viewMatrix))}},{key:"project",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=UO(this.projectPosition(e),this.pixelProjectionMatrix),a=t(o,2),s=a[0],u=a[1],c=r?u:this.height-u;return 2===e.length?[s,c]:[s,c,o[2]]}},{key:"unproject",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=n.targetZ,a=t(e,3),s=a[0],u=a[1],c=a[2],l=HO([s,r?u:this.height-u,c],this.pixelUnprojectionMatrix,o&&o*this.distanceScales.unitsPerMeter[2]),h=this.unprojectPosition(l),d=t(h,3),f=d[0],p=d[1],v=d[2];return Number.isFinite(c)?[f,p,v]:Number.isFinite(o)?[f,p,o]:[f,p]}},{key:"projectPosition",value:function(e){var n=t(this.projectFlat(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.unitsPerMeter[2]]}},{key:"unprojectPosition",value:function(e){var n=t(this.unprojectFlat(e),2);return[n[0],n[1],(e[2]||0)*this.distanceScales.metersPerUnit[2]]}},{key:"projectFlat",value:function(e){return this.isGeospatial?DO(e):e}},{key:"unprojectFlat",value:function(e){return this.isGeospatial?NO(e):e}},{key:"getBounds",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={targetZ:e.z||0},n=this.unproject([0,0],t),i=this.unproject([this.width,0],t),r=this.unproject([0,this.height],t),o=this.unproject([this.width,this.height],t);return[Math.min(n[0],i[0],r[0],o[0]),Math.min(n[1],i[1],r[1],o[1]),Math.max(n[0],i[0],r[0],o[0]),Math.max(n[1],i[1],r[1],o[1])]}},{key:"getDistanceScales",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return e?LO({longitude:e[0],latitude:e[1],highPrecision:!0}):this.distanceScales}},{key:"containsPixel",value:function(e){var t=e.x,n=e.y,i=e.width,r=void 0===i?1:i,o=e.height,a=void 0===o?1:o;return t0&&void 0!==arguments[0]?arguments[0]:{};m(this,i);var r=t.latitude,o=void 0===r?0:r,a=t.longitude,s=void 0===a?0:a,u=t.zoom,l=void 0===u?11:u,h=t.pitch,d=void 0===h?0:h,f=t.bearing,p=void 0===f?0:f,v=t.nearZMultiplier,g=void 0===v?.1:v,y=t.farZMultiplier,b=void 0===y?1.01:y,_=t.orthographic,w=void 0!==_&&_,k=t.repeat,x=void 0!==k&&k,S=t.worldOffset,E=void 0===S?0:S,C=t.width,O=t.height,T=t.altitude,A=void 0===T?1.5:T,P=Math.pow(2,l),R=BO({width:C=C||1,height:O=O||1,pitch:d,altitude:A=Math.max(.75,A),nearZMultiplier:g,farZMultiplier:b}),D=R.fov,N=R.aspect,L=R.focalDistance,j=R.near,F=R.far,B=FO({height:O,pitch:d,bearing:p,scale:P,altitude:A});return E&&(B=(new SO).translate([512*E,0,0]).multiplyLeft(B)),(e=n.call(this,I(M({},t),{width:C,height:O,viewMatrix:B,longitude:s,latitude:o,zoom:l,orthographic:w,fovyRadians:D,aspect:N,focalDistance:L,near:j,far:F}))).latitude=o,e.longitude=s,e.zoom=l,e.pitch=d,e.bearing=p,e.altitude=A,e.orthographic=w,e._subViewports=x?[]:null,Object.freeze(c(e)),e}return b(i,[{key:"subViewports",get:function(){if(this._subViewports&&!this._subViewports.length)for(var e=this.getBounds(),t=Math.floor((e[0]+180)/360),n=Math.ceil((e[2]-180)/360),r=t;r<=n;r++){var o=r?new i(I(M({},this),{worldOffset:r})):this;this._subViewports.push(o)}return this._subViewports}},{key:"addMetersToLngLat",value:function(e,t){return jO(e,t)}},{key:"panByPosition",value:function(e,n){var i=HO(n,this.pixelUnprojectionMatrix),r=mO([],this.projectFlat(e),yO([],i)),o=mO([],this.center,r),a=t(this.unprojectFlat(o),2);return{longitude:a[0],latitude:a[1]}}},{key:"getBounds",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=qO(this,e.z||0);return[Math.min(t[0][0],t[1][0],t[2][0],t[3][0]),Math.min(t[0][1],t[1][1],t[2][1],t[3][1]),Math.max(t[0][0],t[1][0],t[2][0],t[3][0]),Math.max(t[0][1],t[1][1],t[2][1],t[3][1])]}},{key:"fitBounds",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=this.width,r=this.height,o=GO(M({width:n,height:r,bounds:e},t)),a=o.longitude,s=o.latitude,u=o.zoom;return new i({width:n,height:r,longitude:a,latitude:s,zoom:u})}}]),i}(JO);return e.displayName="WebMercatorViewport",e}();function tT(e,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=n.projectPosition(e);if(i&&n instanceof eT){var o=t(e,3),a=o[0],s=o[1],u=o[2],c=void 0===u?0:u,l=n.getDistanceScales([a,s]);r[2]=c*l.unitsPerMeter[2]}return r}function nT(e,n){var i,r=n.viewport,o=n.modelMatrix,a=n.coordinateSystem,s=n.coordinateOrigin,u=n.offsetMode,c=t(e,3),l=c[0],h=c[1],d=c[2],f=void 0===d?0:d;switch(o&&(l=(i=t(uO([],[l,h,f,1],o),3))[0],h=i[1],f=i[2]),a){case zw.LNGLAT:return tT([l,h,f],r,u);case zw.LNGLAT_OFFSETS:return tT([l+s[0],h+s[1],f+(s[2]||0)],r,u);case zw.METER_OFFSETS:return tT(jO(s,[l,h,f]),r,u);case zw.CARTESIAN:default:return r.isGeospatial?[l+s[0],h+s[1],f+s[2]]:r.projectPosition([l,h,f])}}var iT={10241:9987,10240:9729,10242:33071,10243:33071},rT={},oT={boolean:{validate:function(e,t){return!0},equal:function(e,t,n){return Boolean(e)===Boolean(t)}},number:{validate:function(e,t){return Number.isFinite(e)&&(!("max"in t)||e<=t.max)&&(!("min"in t)||e>=t.min)}},color:{validate:function(e,t){return t.optional&&!e||cT(e)&&(3===e.length||4===e.length)},equal:function(e,t,n){return aT(e,t)}},accessor:{validate:function(e,t){var n=lT(e);return"function"===n||n===lT(t.value)},equal:function(e,t,n){return"function"==typeof t||aT(e,t)}},array:{validate:function(e,t){return t.optional&&!e||cT(e)},equal:function(e,t,n){return n.compare?aT(e,t):e===t}},function:{validate:function(e,t){return t.optional&&!e||"function"==typeof e},equal:function(e,t,n){return!n.compare||e===t}},data:{transform:function(e,t,n){var i=(n?n.props:{}).dataTransform;return i&&e?i(e):e}},image:{transform:function(e,t,n){return function(e,t){var n=e.context&&e.context.gl;if(!n||!t)return null;if(t instanceof gx)return t;t.constructor&&"Object"!==t.constructor.name&&(t={data:t});var i=null;t.compressed&&(i={10241:t.data.length>1?9985:9729});var r=new gx(n,I(M({},t),{parameters:M(M(M({},iT),i),e.props.textureParameters)}));return rT[r.id]=!0,r}(n,e)},release:function(e){!function(e){!e||!(e instanceof gx)||rT[e.id]&&(e.delete(),delete rT[e.id])}(e)}}};function aT(e,t){if(e===t)return!0;if(!cT(e)||!cT(t))return!1;var n=e.length;if(n!==t.length)return!1;for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:null;m(this,e),this.component=t,this.asyncProps={},this.onAsyncPropUpdated=function(){},this.oldProps=ST,this.oldAsyncProps=null}return b(e,[{key:"finalize",value:function(){for(var e in this.asyncProps){var t=this.asyncProps[e];t.type&&t.type.release&&t.type.release(t.resolvedValue,t.type,this.component)}}},{key:"getOldProps",value:function(){return this.oldAsyncProps||this.oldProps}},{key:"resetOldProps",value:function(){this.oldAsyncProps=null,this.oldProps=this.component.props}},{key:"freezeAsyncOldProps",value:function(){if(!this.oldAsyncProps)for(var e in this.oldProps=this.oldProps||this.component.props,this.oldAsyncProps=Object.create(this.oldProps),this.asyncProps)Object.defineProperty(this.oldAsyncProps,e,{enumerable:!0,value:this.oldProps[e]})}},{key:"hasAsyncProp",value:function(e){return e in this.asyncProps}},{key:"getAsyncProp",value:function(e){var t=this.asyncProps[e];return t&&t.resolvedValue}},{key:"isAsyncPropLoading",value:function(e){if(e){var t=this.asyncProps[e];return Boolean(t&&t.pendingLoadCount>0&&t.pendingLoadCount!==t.resolvedLoadCount)}for(var n in this.asyncProps)if(this.isAsyncPropLoading(n))return!0;return!1}},{key:"reloadAsyncProp",value:function(e,t){this._watchPromise(e,Promise.resolve(t))}},{key:"setAsyncProps",value:function(e){var t=e[kT]||{},n=e[wT]||e,i=e[xT]||{};for(var r in t){var o=t[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,o),t[r]=this.getAsyncProp(r)}for(var a in n){var s=n[a];this._createAsyncPropData(a,i[a]),this._updateAsyncProp(a,s)}}},{key:"_updateAsyncProp",value:function(e,t){if(this._didAsyncInputValueChange(e,t)){if("string"==typeof t){var n,i=null===(n=this.layer)||void 0===n?void 0:n.props.fetch;i&&(t=i(t,{propName:e,layer:this.layer}))}if(t instanceof Promise)return void this._watchPromise(e,t);if(kS(t))return void this._resolveAsyncIterable(e,t);this._setPropValue(e,t)}}},{key:"_didAsyncInputValueChange",value:function(e,t){var n=this.asyncProps[e];return t!==n.resolvedValue&&t!==n.lastValue&&(n.lastValue=t,!0)}},{key:"_setPropValue",value:function(e,t){var n=this.asyncProps[e];t=this._postProcessValue(n,t),n.resolvedValue=t,n.pendingLoadCount++,n.resolvedLoadCount=n.pendingLoadCount}},{key:"_setAsyncPropValue",value:function(e,t,n){var i=this.asyncProps[e];i&&n>=i.resolvedLoadCount&&void 0!==t&&(this.freezeAsyncOldProps(),i.resolvedValue=t,i.resolvedLoadCount=n,this.onAsyncPropUpdated(e,t))}},{key:"_watchPromise",value:function(e,t){var n=this,i=this.asyncProps[e];i.pendingLoadCount++;var r=i.pendingLoadCount;t.then(function(t){var o;t=n._postProcessValue(i,t),n._setAsyncPropValue(e,t,r);var a=null===(o=n.layer)||void 0===o?void 0:o.props.onDataLoad;"data"===e&&a&&a(t,{propName:e,layer:n.layer})}).catch(function(t){var i;null===(i=n.layer)||void 0===i||i.raiseError(t,"loading ".concat(e," of ").concat(n.layer))})}},{key:"_resolveAsyncIterable",value:function(e,t){var n=this;return xx(regeneratorRuntime.mark(function i(){var r,o,a,s,u,c,l,h,d,f,p,v,g,m,y;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:"data"!==e&&n._setPropValue(e,t),(o=n.asyncProps[e]).pendingLoadCount++,a=o.pendingLoadCount,s=[],u=0,l=!0,h=!1,i.prev=6,p=_T(t);case 8:return i.next=10,p.next();case 10:return l=(d=i.sent).done,i.next=13,d.value;case 13:if(f=i.sent,l){i.next=20;break}v=f,g=n.component?n.component.props:{},m=g.dataTransform,s=m?m(v,s):s.concat(v),Object.defineProperty(s,"__diff",{enumerable:!1,value:[{startRow:u,endRow:s.length}]}),u=s.length,n._setAsyncPropValue(e,s,a);case 17:l=!0,i.next=8;break;case 20:i.next=25;break;case 22:i.prev=22,i.t0=i.catch(6),h=!0,c=i.t0;case 25:if(i.prev=25,i.prev=26,i.t1=!l&&null!=p.return,!i.t1){i.next=31;break}return i.next=31,p.return();case 31:if(i.prev=31,!h){i.next=34;break}throw c;case 34:return i.finish(31);case 35:return i.finish(25);case 36:(y=null===(r=n.layer)||void 0===r?void 0:r.props.onDataLoad)&&y(s,{propName:e,layer:n.layer});case 38:case"end":return i.stop()}},i,null,[[6,22,25,36],[26,,31,35]])}))()}},{key:"_postProcessValue",value:function(e,t){var n=e.type;return n&&(n.release&&n.release(e.resolvedValue,n,this.component),n.transform)?n.transform(t,n,this.component):t}},{key:"_createAsyncPropData",value:function(e,t){if(!this.asyncProps[e]){var n=this.component&&this.component.constructor._propTypes;this.asyncProps[e]={type:n&&n[e],lastValue:null,resolvedValue:t,pendingLoadCount:0,resolvedLoadCount:0}}}}]),e}(),CT=UC.ASYNC_ORIGINAL,OT=UC.ASYNC_RESOLVED,TT=UC.ASYNC_DEFAULTS,AT={},PT=0,MT=function(){var e=function(){function e(){m(this,e),this.props=vT.apply(this,arguments),this.id=this.props.id,this.count=PT++,this.lifecycle="Awaiting state",this.parent=null,this.context=null,this.state=null,this.internalState=null,Object.seal(this)}return b(e,[{key:"clone",value:function(e){var t=this.props,n={};for(var i in t[TT])i in t[OT]?n[i]=t[OT][i]:i in t[CT]&&(n[i]=t[CT][i]);return new this.constructor(M(M(M({},t),n),e))}},{key:"stats",get:function(){return this.internalState.stats}},{key:"_initState",value:function(){this.internalState=new ET({})}}]),e}();return e.componentName="Component",e.defaultProps=AT,e}(),IT=function(e){a(n,e);var t=s(n);function n(e){var i,r=e.attributeManager,o=e.layer;return m(this,n),(i=t.call(this,o)).attributeManager=r,i.model=null,i.needsRedraw=!0,i.subLayers=null,i.usesPickingColorCache=!1,i}return b(n,[{key:"layer",get:function(){return this.component},set:function(e){this.component=e}}]),n}(ET),RT=function(e){return"function"==typeof e},DT=function(e){return null!==e&&"object"==typeof e},NT=function(e){return DT(e)&&e.constructor==={}.constructor},LT=function(e){return e&&"function"==typeof e[Symbol.iterator]},jT=function(e){return e&&"function"==typeof e[Symbol.asyncIterator]},FT=function(e){return"undefined"!=typeof Response&&e instanceof Response||e&&e.arrayBuffer&&e.text&&e.json},BT=function(e){return"undefined"!=typeof Blob&&e instanceof Blob},VT=function(e){return function(e){return"undefined"!=typeof ReadableStream&&e instanceof ReadableStream||DT(e)&&RT(e.tee)&&RT(e.cancel)&&RT(e.getReader)}(e)||function(e){return DT(e)&&RT(e.read)&&RT(e.pipe)&&function(e){return"boolean"==typeof e}(e.readable)}(e)};function zT(e,t){if(!e)throw new Error(t||"loader assertion failed.")}function UT(e){var t;return!!e&&(Array.isArray(e)&&(e=e[0]),Array.isArray(null===(t=e)||void 0===t?void 0:t.extensions))}function HT(e){var t,n,i;return zT(e,"null loader"),zT(UT(e),"invalid loader"),Array.isArray(e)&&(i=e[1],e=I(M({},e=e[0]),{options:M(M({},e.options),i)})),(null!==(t=e)&&void 0!==t&&t.parseTextSync||null!==(n=e)&&void 0!==n&&n.parseText)&&(e.text=!0),e.text||(e.binary=!0),e}var GT={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},WT=GT.global||GT.self||GT.window||{},qT="object"!=typeof process||"[object process]"!==String(process)||process.browser,XT="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version);XT&&parseFloat(XT[1]);var KT={};function $T(e){for(var t in KT)e.startsWith(t)&&(e=e.replace(t,KT[t]));return!e.startsWith("http://")&&!e.startsWith("https://")&&(e="".concat(e)),e}var QT=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,ZT=/^([-\w.]+\/[-\w.+]+)/;function JT(e){var t=ZT.exec(e);return t?t[1]:e}function eA(e){var t=QT.exec(e);return t?t[1]:""}var tA=/\?.*/;function nA(e){if(FT(e)){var t=rA(e.url||"");return{url:t,type:JT(e.headers.get("content-type")||"")||eA(t)}}return BT(e)?{url:rA(e.name||""),type:e.type||""}:"string"==typeof e?{url:rA(e),type:eA(e)}:{url:"",type:""}}function iA(e){return FT(e)?e.headers["content-length"]||-1:BT(e)?e.size:"string"==typeof e?e.length:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?e.byteLength:-1}function rA(e){return e.replace(tA,"")}function oA(e){return aA.apply(this,arguments)}function aA(){return(aA=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!FT(t)){e.next=2;break}return e.abrupt("return",t);case 2:return n={},(i=iA(t))>=0&&(n["content-length"]=String(i)),r=nA(t),o=r.url,(a=r.type)&&(n["content-type"]=a),e.next=8,hA(t);case 8:return(s=e.sent)&&(n["x-first-bytes"]=s),"string"==typeof t&&(t=(new TextEncoder).encode(t)),u=new Response(t,{headers:n}),e.abrupt("return",(Object.defineProperty(u,"url",{value:o}),u));case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}function sA(e){return uA.apply(this,arguments)}function uA(){return(uA=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t.ok){e.next=5;break}return e.next=3,cA(t);case 3:throw n=e.sent,new Error(n);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function cA(e){return lA.apply(this,arguments)}function lA(){return(lA=xx(regeneratorRuntime.mark(function e(t){var n,i,r;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n="Failed to fetch resource ".concat(t.url," (").concat(t.status,"): "),e.prev=1,i=t.headers.get("Content-Type"),r=t.statusText,e.t0=i.includes("application/json"),!e.t0){e.next=12;break}return e.t1=r,e.t2=" ",e.next=10,t.text();case 10:e.t3=e.sent,r=e.t1+=e.t2.concat.call(e.t2,e.t3);case 12:n=(n+=r).length>60?"".concat(n.slice(60),"..."):n,e.next=18;break;case 16:e.prev=16,e.t4=e.catch(1);case 18:return e.abrupt("return",n);case 19:case"end":return e.stop()}},e,null,[[1,16]])}))).apply(this,arguments)}function hA(e){return dA.apply(this,arguments)}function dA(){return(dA=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if("string"!=typeof t){e.next=2;break}return e.abrupt("return","data:,".concat(t.slice(0,5)));case 2:if(!(t instanceof Blob)){e.next=7;break}return n=t.slice(0,5),e.next=6,new Promise(function(e){var t=new FileReader;t.onload=function(t){var n;return e(null==t||null===(n=t.target)||void 0===n?void 0:n.result)},t.readAsDataURL(n)});case 6:return e.abrupt("return",e.sent);case 7:return e.abrupt("return",t instanceof ArrayBuffer?"data:base64,".concat(fA(t.slice(0,5))):null);case 8:case"end":return e.stop()}},e)}))).apply(this,arguments)}function fA(e){for(var t="",n=new Uint8Array(e),i=0;i1&&void 0!==arguments[1]?arguments[1]:"3.0.12";return TA(e,"no worker provided"),!(!t||!e.version)}var PA={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},MA=PA.global||PA.self||PA.window||{},IA="object"!=typeof process||"[object process]"!==String(process)||process.browser,RA="function"==typeof importScripts,DA="undefined"!=typeof window&&void 0!==window.orientation,NA="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),LA=(NA&&parseFloat(NA[1]),new Map);function jA(e){var t=new Blob([e],{type:"application/javascript"});return URL.createObjectURL(t)}function FA(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n=arguments.length>2?arguments[2]:void 0,i=n||new Set;if(e)if(BA(e))i.add(e);else if(BA(e.buffer))i.add(e.buffer);else if(!ArrayBuffer.isView(e)&&t&&"object"==typeof e)for(var r in e)FA(e[r],t,i);return void 0===n?Array.from(i):[]}function BA(e){return!!e&&(e instanceof ArrayBuffer||"undefined"!=typeof MessagePort&&e instanceof MessagePort||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas)}var VA=function(){},zA=function(){function e(t){m(this,e),gA(this,"name",void 0),gA(this,"source",void 0),gA(this,"url",void 0),gA(this,"terminated",!1),gA(this,"worker",void 0),gA(this,"onMessage",void 0),gA(this,"onError",void 0),gA(this,"_loadableURL","");var n=t.name,i=t.source,r=t.url;TA(i||r),this.name=n,this.source=i,this.url=r,this.onMessage=VA,this.onError=function(e){return console.log(e)},this.worker=this._createBrowserWorker()}return b(e,[{key:"destroy",value:function(){this.onMessage=VA,this.onError=VA,this.worker.terminate(),this.terminated=!0}},{key:"isRunning",get:function(){return Boolean(this.onMessage)}},{key:"postMessage",value:function(e,t){t=t||FA(e),this.worker.postMessage(e,t)}},{key:"_getErrorFromErrorEvent",value:function(e){var t="Failed to load ";return t+="worker ".concat(this.name,". "),e.message&&(t+="".concat(e.message," in ")),e.lineno&&(t+=":".concat(e.lineno,":").concat(e.colno)),new Error(t)}},{key:"_createBrowserWorker",value:function(){var e=this;this._loadableURL=function(e){TA(e.source&&!e.url||!e.source&&e.url);var t=LA.get(e.source||e.url);return t||(e.url&&(t=function(e){return e.startsWith("http")?jA(function(e){return"try {\n importScripts('".concat(e,"');\n} catch (error) {\n console.error(error);\n throw error;\n}")}(e)):e}(e.url),LA.set(e.url,t)),e.source&&(t=jA(e.source),LA.set(e.source,t))),TA(t),t}({source:this.source,url:this.url});var t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=function(t){t.data?e.onMessage(t.data):e.onError(new Error("No data received"))},t.onerror=function(t){e.onError(e._getErrorFromErrorEvent(t)),e.terminated=!0},t.onmessageerror=function(e){return console.error(e)},t}}],[{key:"isSupported",value:function(){return"undefined"!=typeof Worker}}]),e}(),UA=function(){function e(t,n){var i=this;m(this,e),gA(this,"name",void 0),gA(this,"workerThread",void 0),gA(this,"isRunning",void 0),gA(this,"result",void 0),gA(this,"_resolve",void 0),gA(this,"_reject",void 0),this.name=t,this.workerThread=n,this.isRunning=!0,this._resolve=function(){},this._reject=function(){},this.result=new Promise(function(e,t){i._resolve=e,i._reject=t})}return b(e,[{key:"postMessage",value:function(e,t){this.workerThread.postMessage({source:"loaders.gl",type:e,payload:t})}},{key:"done",value:function(e){TA(this.isRunning),this.isRunning=!1,this._resolve(e)}},{key:"error",value:function(e){TA(this.isRunning),this.isRunning=!1,this._reject(e)}}]),e}(),HA=function(){function e(t){m(this,e),gA(this,"name","unnamed"),gA(this,"source",void 0),gA(this,"url",void 0),gA(this,"maxConcurrency",1),gA(this,"maxMobileConcurrency",1),gA(this,"onDebug",function(){}),gA(this,"reuseWorkers",!0),gA(this,"props",{}),gA(this,"jobQueue",[]),gA(this,"idleQueue",[]),gA(this,"count",0),gA(this,"isDestroyed",!1),this.source=t.source,this.url=t.url,this.setProps(t)}return b(e,[{key:"destroy",value:function(){this.idleQueue.forEach(function(e){return e.destroy()}),this.isDestroyed=!0}},{key:"setProps",value:function(e){this.props=M(M({},this.props),e),void 0!==e.name&&(this.name=e.name),void 0!==e.maxConcurrency&&(this.maxConcurrency=e.maxConcurrency),void 0!==e.maxMobileConcurrency&&(this.maxMobileConcurrency=e.maxMobileConcurrency),void 0!==e.reuseWorkers&&(this.reuseWorkers=e.reuseWorkers),void 0!==e.onDebug&&(this.onDebug=e.onDebug)}},{key:"startJob",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:function(e,t,n){return e.done(n)},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(e,t){return e.error(t)},i=this;return xx(regeneratorRuntime.mark(function r(){var o;return regeneratorRuntime.wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return o=new Promise(function(r){return i.jobQueue.push({name:e,onMessage:t,onError:n,onStart:r}),i}),i._startQueuedJob(),r.next=4,o;case 4:return r.abrupt("return",r.sent);case 5:case"end":return r.stop()}},r)}))()}},{key:"_startQueuedJob",value:function(){var e=this;return xx(regeneratorRuntime.mark(function t(){var n,i,r;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e.jobQueue.length){t.next=2;break}return t.abrupt("return");case 2:if(n=e._getAvailableWorker()){t.next=5;break}return t.abrupt("return");case 5:if(!(i=e.jobQueue.shift())){t.next=16;break}return e.onDebug({message:"Starting job",name:i.name,workerThread:n,backlog:e.jobQueue.length}),r=new UA(i.name,n),n.onMessage=function(e){return i.onMessage(r,e.type,e.payload)},n.onError=function(e){return i.onError(r,e)},i.onStart(r),t.prev=10,t.next=13,r.result;case 13:return t.prev=13,e.returnWorkerToQueue(n),t.finish(13);case 16:case"end":return t.stop()}},t,null,[[10,,13,16]])}))()}},{key:"returnWorkerToQueue",value:function(e){this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(e.destroy(),this.count--):this.idleQueue.push(e),this.isDestroyed||this._startQueuedJob()}},{key:"_getAvailableWorker",value:function(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count0&&void 0!==arguments[0]?arguments[0]:{};return e._workerFarm=e._workerFarm||new e({}),e._workerFarm.setProps(t),e._workerFarm}}]),e}();function qA(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="".concat(e.id,"-worker.js"),i=(t[e.id]||{}).workerUrl;if("test"===t._workerType&&(i="modules/".concat(e.module,"/dist/").concat(n)),!i){var r=e.version;"latest"===r&&(r="latest"),i="https://unpkg.com/@loaders.gl/".concat(e.module).concat(r?"@".concat(r):"","/dist/").concat(n)}return TA(i),i}function XA(e,t){return!!WA.isSupported()&&e.worker&&(null==t?void 0:t.worker)}function YA(e,t,n,i,r){return KA.apply(this,arguments)}function KA(){return(KA=xx(regeneratorRuntime.mark(function e(t,n,i,r,o){var a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return a=t.id,s=qA(t,i),u=WA.getWorkerFarm(i).getWorkerPool({name:a,url:s}),i=JSON.parse(JSON.stringify(i)),e.next=4,u.startJob("process-on-worker",$A.bind(null,o));case 4:return(c=e.sent).postMessage("process",{input:n,options:i}),e.next=8,c.result;case 8:return e.next=10,e.sent.result;case 10:return e.abrupt("return",e.sent);case 11:case"end":return e.stop()}},e)}))).apply(this,arguments)}function $A(e,t,n,i){return QA.apply(this,arguments)}function QA(){return(QA=xx(regeneratorRuntime.mark(function e(t,n,i,r){var o,a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=i,e.next="done"===e.t0?3:"error"===e.t0?5:"process"===e.t0?7:20;break;case 3:return n.done(r),e.abrupt("break",21);case 5:return n.error(r.error),e.abrupt("break",21);case 7:return o=r.id,a=r.input,s=r.options,e.prev=8,e.next=11,t(a,s);case 11:u=e.sent,n.postMessage("done",{id:o,result:u}),e.next=19;break;case 15:e.prev=15,e.t1=e.catch(8),c=e.t1 instanceof Error?e.t1.message:"unknown error",n.postMessage("error",{id:o,error:c});case 19:return e.abrupt("break",21);case 20:console.warn("parse-with-worker unknown message ".concat(i));case 21:case"end":return e.stop()}},e,null,[[8,15]])}))).apply(this,arguments)}gA(WA,"_workerFarm",void 0);var ZA=r(9521);function JA(e){if(function(e){return e&&"object"==typeof e&&e.isBuffer}(e)&&(e=function(e){return ZA.toArrayBuffer?ZA.toArrayBuffer(e):e}(e)),e instanceof ArrayBuffer)return e;if(ArrayBuffer.isView(e))return 0===e.byteOffset&&e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);if("string"==typeof e){var t=e;return(new TextEncoder).encode(t).buffer}if(e&&"object"==typeof e&&e._toArrayBuffer)return e._toArrayBuffer();throw new Error("toArrayBuffer")}function eP(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==c[1]?c[1]:{},i=n.chunkSize,r=void 0===i?rP:i,o=0;case 3:if(!(o2&&void 0!==arguments[2]?arguments[2]:null;if(n)return n;var i=M({fetch:SA(t,e)},e);return Array.isArray(i.loaders)||(i.loaders=null),i}function bP(e,t){if(!t&&e&&!Array.isArray(e))return e;var n;if(e&&(n=Array.isArray(e)?e:[e]),t&&t.loaders){var i=Array.isArray(t.loaders)?t.loaders:[t.loaders];n=n?[].concat(v(n),v(i)):i}return n&&n.length?n:null}var _P=function(){var e=wA();return e.loaderRegistry=e.loaderRegistry||[],e.loaderRegistry};function wP(e){var t,n=_P(),i=_(e=Array.isArray(e)?e:[e]);try{var r=function(){var e=HT(t.value);n.find(function(t){return e===t})||n.unshift(e)};for(i.s();!(t=i.n()).done;)r()}catch(o){i.e(o)}finally{i.f()}}var kP=/\.([^.]+)$/;function xP(e){return SP.apply(this,arguments)}function SP(){return(SP=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=a.length>1&&void 0!==a[1]?a[1]:[],i=a.length>2?a[2]:void 0,r=a.length>3?a[3]:void 0,CP(t)){e.next=5;break}return e.abrupt("return",null);case 5:if(!(o=EP(t,n,I(M({},i),{nothrow:!0}),r))){e.next=8;break}return e.abrupt("return",o);case 8:if(e.t0=BT(t),!e.t0){e.next=18;break}return e.t1=EP,e.next=13,t.slice(0,10).arrayBuffer();case 13:e.t2=t=e.sent,e.t3=n,e.t4=i,e.t5=r,o=(0,e.t1)(e.t2,e.t3,e.t4,e.t5);case 18:if(o||null!=i&&i.nothrow){e.next=20;break}throw new Error(OP(t));case 20:return e.abrupt("return",o);case 21:case"end":return e.stop()}},e)}))).apply(this,arguments)}function EP(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0;if(!CP(e))return null;if(n&&!Array.isArray(n))return HT(n);var o=[];n&&(o=o.concat(n)),null!=i&&i.ignoreRegisteredLoaders||(t=o).push.apply(t,v(_P())),function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){HT(t.value)}}catch(i){n.e(i)}finally{n.f()}}(o);var a=function(e,t,n,i){var r=nA(e),o=r.url,a=r.type,s=o||(null==i?void 0:i.url),u=null;return null!=n&&n.mimeType&&(u=TP(t,null==n?void 0:n.mimeType)),u=(u=(u=(u=u||function(e,t){var n=t&&kP.exec(t),i=n&&n[1];return i?function(e,t){t=t.toLowerCase();var n,i=_(e);try{for(i.s();!(n=i.n()).done;){var r,o=n.value,a=_(o.extensions);try{for(a.s();!(r=a.n()).done;){if(r.value.toLowerCase()===t)return o}}catch(s){a.e(s)}finally{a.f()}}}catch(s){i.e(s)}finally{i.f()}return null}(e,i):null}(t,s))||TP(t,a))||function(e,t){if(!t)return null;var n,i=_(e);try{for(i.s();!(n=i.n()).done;){var r=n.value;if("string"==typeof t){if(AP(t,r))return r}else if(ArrayBuffer.isView(t)){if(PP(t.buffer,t.byteOffset,r))return r}else if(t instanceof ArrayBuffer&&PP(t,0,r))return r}}catch(o){i.e(o)}finally{i.f()}return null}(t,e))||TP(t,null==n?void 0:n.fallbackMimeType)}(e,o,i,r);if(!(a||null!=i&&i.nothrow))throw new Error(OP(e));return a}function CP(e){return!(e instanceof Response&&204===e.status)}function OP(e){var t=nA(e),n=t.url,i=t.type,r="No valid loader found";return e&&(r+=' data: "'.concat(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5;return"string"==typeof e?e.slice(0,t):ArrayBuffer.isView(e)?MP(e.buffer,e.byteOffset,t):e instanceof ArrayBuffer?MP(e,0,t):""}(e),'", contentType: "').concat(i,'"')),n&&(r+=" url: ".concat(n)),r}function TP(e,t){var n,i=_(e);try{for(i.s();!(n=i.n()).done;){var r=n.value;if(r.mimeTypes&&r.mimeTypes.includes(t)||t==="application/x.".concat(r.id))return r}}catch(o){i.e(o)}finally{i.f()}return null}function AP(e,t){return t.testText?t.testText(e):(Array.isArray(t.tests)?t.tests:[t.tests]).some(function(t){return e.startsWith(t)})}function PP(e,t,n){return(Array.isArray(n.tests)?n.tests:[n.tests]).some(function(i){return function(e,t,n,i){if(i instanceof ArrayBuffer)return function(e,t,n){if(e.byteLength<(n=n||e.byteLength)||t.byteLength0&&void 0!==arguments[0])||arguments[0];this.internalState&&(this.internalState.needsRedraw=e)}},{key:"setNeedsUpdate",value:function(){this.context.layerManager.setNeedsUpdate(String(this)),this.internalState.needsUpdate=!0}},{key:"getNeedsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1};return this._getNeedsRedraw(e)}},{key:"needsUpdate",value:function(){return this.internalState.needsUpdate||this.hasUniformTransition()||this.shouldUpdateState(this._getUpdateParams())}},{key:"hasUniformTransition",value:function(){return this.internalState.uniformTransitions.active}},{key:"isLoaded",get:function(){return this.internalState&&!this.internalState.isAsyncPropLoading()}},{key:"wrapLongitude",get:function(){return this.props.wrapLongitude}},{key:"isPickable",value:function(){return this.props.pickable&&this.props.visible}},{key:"getModels",value:function(){return this.state&&(this.state.models||(this.state.model?[this.state.model]:[]))}},{key:"getAttributeManager",value:function(){return this.internalState&&this.internalState.attributeManager}},{key:"getCurrentLayer",value:function(){return this.internalState&&this.internalState.layer}},{key:"getLoadOptions",value:function(){return this.props.loadOptions}},{key:"project",value:function(e){var n=this.context.viewport,i=t(UO(nT(e,{viewport:n,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem}),n.pixelProjectionMatrix),3),r=i[0],o=i[1],a=i[2];return 2===e.length?[r,o]:[r,o,a]}},{key:"unproject",value:function(e){return this.context.viewport.unproject(e)}},{key:"projectPosition",value:function(e){return function(e,t){var n=function(e){var t=M({},e),n=e.coordinateSystem,i=e.coordinateOrigin,r=e.fromCoordinateSystem,o=e.fromCoordinateOrigin;return n===zw.DEFAULT&&(n=e.viewport.isGeospatial?zw.LNGLAT:zw.CARTESIAN),void 0===r&&(t.fromCoordinateSystem=n),void 0===o&&(t.fromCoordinateOrigin=i),t.coordinateSystem=n,t}(t),i=n.viewport,r=n.coordinateSystem,o=n.coordinateOrigin,a=n.modelMatrix,s=n.fromCoordinateSystem,u=n.fromCoordinateOrigin,c=vO(i,r,o),l=c.geospatialOrigin,h=c.shaderCoordinateOrigin,d=c.offsetMode,f=nT(e,{viewport:i,modelMatrix:a,coordinateSystem:s,coordinateOrigin:u,offsetMode:d});return d&&function(e,t,n){e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2]}(f,f,i.projectPosition(l||h)),f}(e,{viewport:this.context.viewport,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem})}},{key:"use64bitPositions",value:function(){var e=this.props.coordinateSystem;return e===zw.DEFAULT||e===zw.LNGLAT||e===zw.CARTESIAN}},{key:"onHover",value:function(e,t){return!!this.props.onHover&&this.props.onHover(e,t)}},{key:"onClick",value:function(e,t){return!!this.props.onClick&&this.props.onClick(e,t)}},{key:"nullPickingColor",value:function(){return[0,0,0]}},{key:"encodePickingColor",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return t[0]=e+1&255,t[1]=e+1>>8&255,t[2]=e+1>>8>>8&255,t}},{key:"decodePickingColor",value:function(e){yS(e instanceof Uint8Array);var n=t(e,3);return n[0]+256*n[1]+65536*n[2]-1}},{key:"initializeState",value:function(){throw new Error("Layer ".concat(this," has not defined initializeState"))}},{key:"getShaders",value:function(e){var t,n=_(this.props.extensions);try{for(n.s();!(t=n.n()).done;){var i=t.value;e=ZC(e,i.getShaders.call(this,i))}}catch(r){n.e(r)}finally{n.f()}return e}},{key:"shouldUpdateState",value:function(e){return e.changeFlags.propsOrDataChanged}},{key:"updateState",value:function(e){var t=e.oldProps,n=e.props,i=e.changeFlags,r=this.getAttributeManager();if(i.dataChanged&&r){var o=i.dataChanged;if(Array.isArray(o)){var a,s=_(o);try{for(s.s();!(a=s.n()).done;){var u=a.value;r.invalidateAll(u)}}catch(p){s.e(p)}finally{s.f()}}else r.invalidateAll()}var c=n.highlightedObjectIndex>=0||n.pickable;if((t.highlightedObjectIndex>=0||t.pickable)!==c&&r){var l=r.attributes,h=l.pickingColors,d=l.instancePickingColors,f=h||d;f&&(c&&f.constant&&(f.constant=!1,r.invalidate(f.id)),!f.value&&!c&&(f.constant=!0,f.value=[0,0,0]))}}},{key:"finalizeState",value:function(){var e,t=_(this.getModels());try{for(t.s();!(e=t.n()).done;){e.value.delete()}}catch(i){t.e(i)}finally{t.f()}var n=this.getAttributeManager();n&&n.finalize(),this.context.resourceManager.unsubscribe({consumerId:this.id}),this.internalState.uniformTransitions.clear(),this.internalState.finalize()}},{key:"draw",value:function(e){var t,n=_(this.getModels());try{for(n.s();!(t=n.n()).done;){t.value.draw(e)}}catch(i){n.e(i)}finally{n.f()}}},{key:"getPickingInfo",value:function(e){var t=e.info,n=t.index;return n>=0&&Array.isArray(this.props.data)&&(t.object=this.props.data[n]),t}},{key:"activateViewport",value:function(e){var t=this.internalState.viewport;this.internalState.viewport=e,(!t||!VP({oldViewport:t,viewport:e}))&&(this.setChangeFlags({viewportChanged:!0}),this.isComposite?this.needsUpdate()&&this.setNeedsUpdate():this._update())}},{key:"invalidateAttribute",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"all",t=this.getAttributeManager();!t||("all"===e?t.invalidateAll():t.invalidate(e))}},{key:"updateAttributes",value:function(e){var t,n=_(this.getModels());try{for(n.s();!(t=n.n()).done;){var i=t.value;this._setModelAttributes(i,e)}}catch(r){n.e(r)}finally{n.f()}}},{key:"_updateAttributes",value:function(e){var t=this.getAttributeManager();if(t){var n=this.getNumInstances(e),i=this.getStartIndices(e);t.update({data:e.data,numInstances:n,startIndices:i,props:e,transitions:e.transitions,buffers:e.data.attributes,context:this,ignoreUnknownAttributes:!0});var r=t.getChangedAttributes({clearChangedFlags:!0});this.updateAttributes(r)}}},{key:"_updateAttributeTransition",value:function(){var e=this.getAttributeManager();e&&e.updateTransition()}},{key:"_updateUniformTransition",value:function(){var e=this.internalState.uniformTransitions;if(e.active){var t=e.update(),n=Object.create(this.props);for(var i in t)Object.defineProperty(n,i,{value:t[i]});return n}return this.props}},{key:"calculateInstancePickingColors",value:function(e,t){var n=t.numInstances;if(!e.constant){var i=Math.floor(zP.length/3);if(this.internalState.usesPickingColorCache=!0,iFP&&Vw.warn("Layer has too many data objects. Picking might not be able to distinguish all objects.")(),zP=jx.allocate(zP,n,{size:3,copy:!0,maxCount:Math.max(n,FP)});for(var r=Math.floor(zP.length/3),o=[],a=i;a=0?this.encodePickingColor(o):null),this.setModuleParameters(s)}}},{key:"_getUpdateParams",value:function(){return{props:this.props,oldProps:this.internalState.getOldProps(),context:this.context,changeFlags:this.internalState.changeFlags}}},{key:"_getNeedsRedraw",value:function(e){if(!this.internalState)return!1;var t=!1;t=t||this.internalState.needsRedraw&&this.id,this.internalState.needsRedraw=this.internalState.needsRedraw&&!e.clearRedrawFlags;var n=this.getAttributeManager(),i=n&&n.getNeedsRedraw(e);return t=t||i}},{key:"_getAttributeManager",value:function(){return new jC(this.context.gl,{id:this.props.id,stats:this.context.stats,timeline:this.context.timeline})}},{key:"_initState",value:function(){yS(!this.internalState&&!this.state),yS(isFinite(this.props.coordinateSystem));var e=this._getAttributeManager();e&&e.addInstanced({instancePickingColors:{type:5121,size:3,noAlloc:!0,update:this.calculateInstancePickingColors}}),this.internalState=new IT({attributeManager:e,layer:this}),this.clearChangeFlags(),this.state={},Object.defineProperty(this.state,"attributeManager",{get:function(){return Vw.deprecated("layer.state.attributeManager","layer.getAttributeManager()"),e}}),this.internalState.layer=this,this.internalState.uniformTransitions=new zC(this.context.timeline),this.internalState.onAsyncPropUpdated=this._onAsyncPropUpdated.bind(this),this.internalState.setAsyncProps(this.props)}},{key:"_transferState",value:function(e){FS("layer.matched",this,this===e);var t=e.state,n=e.internalState;this!==e&&(this.internalState=n,this.internalState.layer=this,this.state=t,this.internalState.setAsyncProps(this.props),this.diffProps(this.props,this.internalState.getOldProps()))}},{key:"_onAsyncPropUpdated",value:function(){this.diffProps(this.props,this.internalState.getOldProps()),this.setNeedsUpdate()}}]),i}(MT);return e.layerName="Layer",e.defaultProps=UP,e}(),GP=function(){var t=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"isComposite",get:function(){return!0}},{key:"isLoaded",get:function(){return e(p(i.prototype),"isLoaded",this)&&this.getSubLayers().every(function(e){return e.isLoaded})}},{key:"getSubLayers",value:function(){return this.internalState&&this.internalState.subLayers||[]}},{key:"initializeState",value:function(){}},{key:"setState",value:function(t){e(p(i.prototype),"setState",this).call(this,t),this.setNeedsUpdate()}},{key:"getPickingInfo",value:function(e){var t=e.info,n=t.object;return n&&n.__source&&n.__source.parent&&n.__source.parent.id===this.id&&(t.object=n.__source.object,t.index=n.__source.index),t}},{key:"renderLayers",value:function(){return null}},{key:"filterSubLayer",value:function(e){return!0}},{key:"shouldRenderSubLayer",value:function(e,t){return t&&t.length}},{key:"getSubLayerClass",value:function(e,t){var n=this.props._subLayerProps;return n&&n[e]&&n[e].type||t}},{key:"getSubLayerRow",value:function(e,t,n){return e.__source={parent:this,object:t,index:n},e}},{key:"getSubLayerAccessor",value:function(e){if("function"==typeof e){var t={data:this.props.data,target:[]};return function(n,i){return n&&n.__source?(t.index=n.__source.index,e(n.__source.object,t)):e(n,i)}}return e}},{key:"getSubLayerProps",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.props,n=t.opacity,i=t.pickable,r=t.visible,o=t.parameters,a=t.getPolygonOffset,s=t.highlightedObjectIndex,u=t.autoHighlight,c=t.highlightColor,l=t.coordinateSystem,h=t.coordinateOrigin,d=t.wrapLongitude,f=t.positionFormat,p=t.modelMatrix,v=t.extensions,g=t.fetch,m=t._subLayerProps,y={opacity:n,pickable:i,visible:r,parameters:o,getPolygonOffset:a,highlightedObjectIndex:s,autoHighlight:u,highlightColor:c,coordinateSystem:l,coordinateOrigin:h,wrapLongitude:d,positionFormat:f,modelMatrix:p,extensions:v,fetch:g},b=m&&m[e.id],w=b&&b.updateTriggers,k=e.id||"sublayer";if(b){var x=this.constructor._propTypes,S=e.type?e.type._propTypes:{};for(var E in b){var C=S[E]||x[E];C&&"accessor"===C.type&&(b[E]=this.getSubLayerAccessor(b[E]))}}Object.assign(y,e,b),y.id="".concat(this.props.id,"-").concat(k),y.updateTriggers=M(M({all:this.props.updateTriggers.all},e.updateTriggers),w);var O,T=_(v);try{for(T.s();!(O=T.n()).done;){var A=O.value,P=A.getSubLayerProps.call(this,A);P&&Object.assign(y,P,{updateTriggers:Object.assign(y.updateTriggers,P.updateTriggers)})}}catch(I){T.e(I)}finally{T.f()}return y}},{key:"_updateAutoHighlight",value:function(e){var t,n=_(this.getSubLayers());try{for(n.s();!(t=n.n()).done;){t.value.updateAutoHighlight(e)}}catch(i){n.e(i)}finally{n.f()}}},{key:"_getAttributeManager",value:function(){return null}},{key:"_renderLayers",value:function(){var e=this.internalState.subLayers,t=!e||this.needsUpdate();t&&(e=xS(e=this.renderLayers(),Boolean),this.internalState.subLayers=e),FS("compositeLayer.renderLayers",this,t,e);var n,i=_(e);try{for(i.s();!(n=i.n()).done;){n.value.parent=this}}catch(r){i.e(r)}finally{i.f()}}}]),i}(HP);return t.layerName="CompositeLayer",t}(),WP=/([0-9]+\.?[0-9]*)(%|px)/;function qP(e){switch(typeof e){case"number":return{position:e,relative:!1};case"string":var t=e.match(WP);if(t&&t.length>=3){var n="%"===t[2],i=parseFloat(t[1]);return{position:n?i/100:i,relative:n}}default:throw new Error("Could not parse position string ".concat(e))}}function XP(e,t){return e.relative?Math.round(e.position*t):e.position}function YP(e,t){if(e===t)return!0;if(!e||!t)return!1;for(var n in e){var i=e[n],r=t[n];if(!(i===r||Array.isArray(i)&&Array.isArray(r)&&YP(i,r)))return!1}return!0}var KP=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?null:n,r=t.x,o=void 0===r?0:r,a=t.y,s=void 0===a?0:a,u=t.width,c=void 0===u?"100%":u,l=t.height,h=void 0===l?"100%":l,d=t.projectionMatrix,f=void 0===d?null:d,p=t.fovy,v=void 0===p?50:p,g=t.near,y=void 0===g?.1:g,b=t.far,_=void 0===b?1e3:b,w=t.modelMatrix,k=void 0===w?null:w,x=t.viewportInstance,S=void 0===x?null:x,E=t.type,C=void 0===E?JO:E;yS(!S||S instanceof JO),this.viewportInstance=S,this.id=i||this.constructor.displayName||"view",this.type=C,this.props=I(M({},t),{id:this.id,projectionMatrix:f,fovy:v,near:y,far:_,modelMatrix:k}),this._parseDimensions({x:o,y:s,width:c,height:h}),this.equals=this.equals.bind(this),Object.seal(this)}return b(e,[{key:"equals",value:function(e){return this===e||(this.viewportInstance?e.viewportInstance&&this.viewportInstance.equals(e.viewportInstance):YP(this.props,e.props))}},{key:"makeViewport",value:function(e){var t=e.width,n=e.height,i=e.viewState;if(this.viewportInstance)return this.viewportInstance;i=this.filterViewState(i);var r=this.getDimensions({width:t,height:n});return this._getViewport(i,r)}},{key:"getViewStateId",value:function(){switch(typeof this.props.viewState){case"string":return this.props.viewState;case"object":return this.props.viewState&&this.props.viewState.id;default:return this.id}}},{key:"filterViewState",value:function(e){if(this.props.viewState&&"object"==typeof this.props.viewState){if(!this.props.viewState.id)return this.props.viewState;var t=M({},e);for(var n in this.props.viewState)"id"!==n&&(t[n]=this.props.viewState[n]);return t}return e}},{key:"getDimensions",value:function(e){var t=e.width,n=e.height;return{x:XP(this._x,t),y:XP(this._y,n),width:XP(this._width,t),height:XP(this._height,n)}}},{key:"_getControllerProps",value:function(e){var t=this.props.controller;return t?!0===t?e:("function"==typeof t&&(t={type:t}),M(M({},e),t)):null}},{key:"_getViewport",value:function(e,t){return new(0,this.type)(M(M(M({},e),this.props),t))}},{key:"_parseDimensions",value:function(e){var t=e.x,n=e.y,i=e.width,r=e.height;this._x=qP(t),this._y=qP(n),this._width=qP(i),this._height=qP(r)}}]),e}(),$P=function(){},QP={transitionEasing:function(e){return e},transitionInterruption:1,onTransitionStart:$P,onTransitionInterrupt:$P,onTransitionEnd:$P},ZP=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.ControllerState=t,this.props=M(M({},QP),n),this.propsInTransition=null,this.transition=new RC(n.timeline),this.onViewStateChange=n.onViewStateChange||$P,this.onStateChange=n.onStateChange||$P,this._onTransitionUpdate=this._onTransitionUpdate.bind(this)}return b(e,[{key:"finalize",value:function(){this.transition.cancel()}},{key:"getViewportInTransition",value:function(){return this.propsInTransition}},{key:"processViewStateChange",value:function(e){var t=!1,n=this.props;if(e=M(M({},QP),e),this.props=e,this._shouldIgnoreViewportChange(n,e))return t;if(this._isTransitionEnabled(e)){var i=this.transition.settings,r=i.interruption,o=i.endProps,a=M(M({},n),2===r?o:this.propsInTransition||n);this._triggerTransition(a,e),t=!0}else this.transition.cancel();return t}},{key:"updateTransition",value:function(){this.transition.update()}},{key:"_isTransitionEnabled",value:function(e){var t=e.transitionDuration,n=e.transitionInterpolator;return(t>0||"auto"===t)&&Boolean(n)}},{key:"_isUpdateDueToCurrentTransition",value:function(e){return!!this.transition.inProgress&&this.transition.settings.interpolator.arePropsEqual(e,this.propsInTransition)}},{key:"_shouldIgnoreViewportChange",value:function(e,t){return this.transition.inProgress?3===this.transition.settings.interruption||this._isUpdateDueToCurrentTransition(t):!this._isTransitionEnabled(t)||t.transitionInterpolator.arePropsEqual(e,t)}},{key:"_triggerTransition",value:function(e,t){var n=new this.ControllerState(e),i=new this.ControllerState(t).shortestPathFrom(n),r=t.transitionInterpolator,o=r.getDuration?r.getDuration(e,t):t.transitionDuration;if(0!==o){var a=t.transitionInterpolator.initializeProps(e,i);this.propsInTransition={},this.duration=o,this.transition.start({duration:o,easing:t.transitionEasing,interpolator:t.transitionInterpolator,interruption:t.transitionInterruption,startProps:a.start,endProps:a.end,onStart:t.onTransitionStart,onUpdate:this._onTransitionUpdate,onInterrupt:this._onTransitionEnd(t.onTransitionInterrupt),onEnd:this._onTransitionEnd(t.onTransitionEnd)}),this.onStateChange({inTransition:!0}),this.updateTransition()}}},{key:"_onTransitionEnd",value:function(e){var t=this;return function(n){t.propsInTransition=null,t.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1}),e(n)}}},{key:"_onTransitionUpdate",value:function(e){var t=e.time,n=e.settings,i=n.interpolator,r=n.startProps,o=n.endProps,a=n.duration,s=(0,n.easing)(t/a),u=i.interpolateProps(r,o,s);this.propsInTransition=new this.ControllerState(M(M({},this.props),u)).getViewportProps(),this.onViewStateChange({viewState:this.propsInTransition,oldViewState:this.props})}}]),e}(),JP=["longitude","latitude","zoom","bearing","pitch"],eM=["longitude","latitude","zoom"],tM=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return m(this,i),(e=n.call(this,(Array.isArray(t)?t:t.transitionProps)||{compare:JP,extract:JP,required:eM})).opts=t,e}return b(i,[{key:"initializeProps",value:function(t,n){var r=e(p(i.prototype),"initializeProps",this).call(this,t,n),o=this.opts,a=o.makeViewport,s=o.around;if(a&&s){var u=a(t),c=a(n),l=u.unproject(s);r.start.around=s,Object.assign(r.end,{around:c.project(l),aroundPosition:l,width:n.width,height:n.height})}return r}},{key:"interpolateProps",value:function(e,t,n){var i,r={},o=_(this._propsToExtract);try{for(o.s();!(i=o.n()).done;){var a=i.value;r[a]=Wx(e[a]||0,t[a]||0,n)}}catch(u){o.e(u)}finally{o.f()}if(t.aroundPosition){var s=this.opts.makeViewport(M(M({},t),r));Object.assign(r,s.panByPosition(t.aroundPosition,Wx(e.around,t.around,n)))}return r}}]),i}(function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),Array.isArray(t)&&(t={compare:t,extract:t,required:t});var n=t,i=n.compare,r=n.extract,o=n.required;this._propsToCompare=i,this._propsToExtract=r,this._requiredProps=o}return b(e,[{key:"arePropsEqual",value:function(e,t){var n,i=_(this._propsToCompare||Object.keys(t));try{for(i.s();!(n=i.n()).done;){var r=n.value;if(!(r in e)||!(r in t)||!qx(e[r],t[r]))return!1}}catch(o){i.e(o)}finally{i.f()}return!0}},{key:"initializeProps",value:function(e,t){var n;if(this._propsToExtract){var i,r={},o={},a=_(this._propsToExtract);try{for(a.s();!(i=a.n()).done;){var s=i.value;r[s]=e[s],o[s]=t[s]}}catch(u){a.e(u)}finally{a.f()}n={start:r,end:o}}else n={start:e,end:t};return this._checkRequiredProps(n.start),this._checkRequiredProps(n.end),n}},{key:"interpolateProps",value:function(e,t,n){return t}},{key:"getDuration",value:function(e,t){return t.transitionDuration}},{key:"_checkRequiredProps",value:function(e){!this._requiredProps||this._requiredProps.forEach(function(t){var n=e[t];yS(Number.isFinite(n)||Array.isArray(n),"".concat(t," is required for transition"))})}}]),e}()),nM={transitionDuration:0},iM={transitionDuration:300,transitionEasing:function(e){return e},transitionInterruption:1},rM=function(e){return 1-(1-e)*(1-e)},oM=["wheel"],aM=["panstart","panmove","panend"],sM=["pinchstart","pinchmove","pinchend"],uM=["tripanstart","tripanmove","tripanend"],cM=["doubletap"],lM=["keydown"],hM=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.ControllerState=t,this.controllerState=null,this.controllerStateProps=null,this.eventManager=null,this.transitionManager=new ZP(t,I(M({},n),{onViewStateChange:this._onTransition.bind(this),onStateChange:this._setInteractionState.bind(this)}));var i=this.linearTransitionProps;this._transition=i&&I(M({},iM),{transitionInterpolator:new tM({transitionProps:i})}),this._events=null,this._interactionState={isDragging:!1},this._customEvents=[],this.onViewStateChange=null,this.onStateChange=null,this.handleEvent=this.handleEvent.bind(this),this.setProps(n)}return b(e,[{key:"linearTransitionProps",get:function(){return null}},{key:"events",set:function(e){this.toggleEvents(this._customEvents,!1),this.toggleEvents(e,!0),this._customEvents=e,this.setProps(this.controllerStateProps)}},{key:"finalize",value:function(){for(var e in this._events)this._events[e]&&this.eventManager.off(e,this.handleEvent);this.transitionManager.finalize()}},{key:"handleEvent",value:function(e){var t=this.ControllerState;this.controllerState=new t(M(M({makeViewport:this.makeViewport},this.controllerStateProps),this._state));var n=this._eventStartBlocked;switch(e.type){case"panstart":return!n&&this._onPanStart(e);case"panmove":return this._onPan(e);case"panend":return this._onPanEnd(e);case"pinchstart":return!n&&this._onPinchStart(e);case"pinchmove":return this._onPinch(e);case"pinchend":return this._onPinchEnd(e);case"tripanstart":return!n&&this._onTriplePanStart(e);case"tripanmove":return this._onTriplePan(e);case"tripanend":return this._onTriplePanEnd(e);case"doubletap":return this._onDoubleTap(e);case"wheel":return this._onWheel(e);case"keydown":return this._onKeyDown(e);default:return!1}}},{key:"getCenter",value:function(e){var t=this.controllerStateProps,n=t.x,i=t.y,r=e.offsetCenter;return[r.x-n,r.y-i]}},{key:"isPointInBounds",value:function(e,t){var n=this.controllerStateProps,i=n.width,r=n.height;if(t&&t.handled)return!1;var o=e[0]>=0&&e[0]<=i&&e[1]>=0&&e[1]<=r;return o&&t&&t.stopPropagation(),o}},{key:"isFunctionKeyPressed",value:function(e){var t=e.srcEvent;return Boolean(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}},{key:"isDragging",value:function(){return this._interactionState.isDragging}},{key:"blockEvents",value:function(e){var t=this,n=setTimeout(function(){t._eventStartBlocked===n&&(t._eventStartBlocked=null)},e);this._eventStartBlocked=n}},{key:"setProps",value:function(e){"onViewStateChange"in e&&(this.onViewStateChange=e.onViewStateChange),"onStateChange"in e&&(this.onStateChange=e.onStateChange),"makeViewport"in e&&(this.makeViewport=e.makeViewport),"dragMode"in e&&(this.dragMode=e.dragMode),this.controllerStateProps=e,"eventManager"in e&&this.eventManager!==e.eventManager&&(this.eventManager=e.eventManager,this._events={},this.toggleEvents(this._customEvents,!0)),"transitionInterpolator"in e||(e.transitionInterpolator=this._getTransitionProps().transitionInterpolator),this.transitionManager.processViewStateChange(e);var t=e.inertia;!0===t&&(t=300),this.inertia=t;var n=e.scrollZoom,i=void 0===n||n,r=e.dragPan,o=void 0===r||r,a=e.dragRotate,s=void 0===a||a,u=e.doubleClickZoom,c=void 0===u||u,l=e.touchZoom,h=void 0===l||l,d=e.touchRotate,f=void 0!==d&&d,p=e.keyboard,v=void 0===p||p,g=Boolean(this.onViewStateChange);this.toggleEvents(oM,g&&i),this.toggleEvents(aM,g&&(o||s)),this.toggleEvents(sM,g&&(h||f)),this.toggleEvents(uM,g&&f),this.toggleEvents(cM,g&&c),this.toggleEvents(lM,g&&v),this.scrollZoom=i,this.dragPan=o,this.dragRotate=s,this.doubleClickZoom=c,this.touchZoom=h,this.touchRotate=f,this.keyboard=v}},{key:"updateTransition",value:function(){this.transitionManager.updateTransition()}},{key:"toggleEvents",value:function(e,t){var n=this;this.eventManager&&e.forEach(function(e){n._events[e]!==t&&(n._events[e]=t,t?n.eventManager.on(e,n.handleEvent):n.eventManager.off(e,n.handleEvent))})}},{key:"updateViewport",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=M(M({},e.getViewportProps()),t),r=this.controllerState!==e;if(this._state=e.getState(),this._setInteractionState(n),r){var o=this.controllerState?this.controllerState.getViewportProps():null;this.onViewStateChange&&this.onViewStateChange({viewState:i,interactionState:this._interactionState,oldViewState:o})}}},{key:"_onTransition",value:function(e){this.onViewStateChange&&(e.interactionState=this._interactionState,this.onViewStateChange(e))}},{key:"_setInteractionState",value:function(e){Object.assign(this._interactionState,e),this.onStateChange&&this.onStateChange(this._interactionState)}},{key:"_onPanStart",value:function(e){var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.isFunctionKeyPressed(e)||e.rightButton;(this.invertPan||"pan"===this.dragMode)&&(n=!n);var i=this.controllerState[n?"panStart":"rotateStart"]({pos:t});return this._panMove=n,this.updateViewport(i,nM,{isDragging:!0}),!0}},{key:"_onPan",value:function(e){return!!this.isDragging()&&(this._panMove?this._onPanMove(e):this._onPanRotate(e))}},{key:"_onPanEnd",value:function(e){return!!this.isDragging()&&(this._panMove?this._onPanMoveEnd(e):this._onPanRotateEnd(e))}},{key:"_onPanMove",value:function(e){if(!this.dragPan)return!1;var t=this.getCenter(e),n=this.controllerState.pan({pos:t});return this.updateViewport(n,nM,{isDragging:!0,isPanning:!0}),!0}},{key:"_onPanMoveEnd",value:function(e){var t=this.inertia;if(this.dragPan&&t&&e.velocity){var n=this.getCenter(e),i=this.controllerState.pan({pos:[n[0]+e.velocityX*t/2,n[1]+e.velocityY*t/2]}).panEnd();this.updateViewport(i,I(M({},this._getTransitionProps()),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isPanning:!0})}else{var r=this.controllerState.panEnd();this.updateViewport(r,null,{isDragging:!1,isPanning:!1})}return!0}},{key:"_onPanRotate",value:function(e){if(!this.dragRotate)return!1;var t=this.getCenter(e),n=this.controllerState.rotate({pos:t});return this.updateViewport(n,nM,{isDragging:!0,isRotating:!0}),!0}},{key:"_onPanRotateEnd",value:function(e){var t=this.inertia;if(this.dragRotate&&t&&e.velocity){var n=this.getCenter(e),i=this.controllerState.rotate({pos:[n[0]+e.velocityX*t/2,n[1]+e.velocityY*t/2]}).rotateEnd();this.updateViewport(i,I(M({},this._getTransitionProps()),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isRotating:!0})}else{var r=this.controllerState.rotateEnd();this.updateViewport(r,null,{isDragging:!1,isRotating:!1})}return!0}},{key:"_onWheel",value:function(e){if(!this.scrollZoom)return!1;e.preventDefault();var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.scrollZoom,i=n.speed,r=void 0===i?.01:i,o=n.smooth,a=void 0!==o&&o,s=e.delta,u=2/(1+Math.exp(-Math.abs(s*r)));s<0&&0!==u&&(u=1/u);var c=this.controllerState.zoom({pos:t,scale:u});return this.updateViewport(c,I(M({},this._getTransitionProps({around:t})),{transitionDuration:a?250:1}),{isZooming:!0,isPanning:!0}),!0}},{key:"_onTriplePanStart",value:function(e){var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.controllerState.rotateStart({pos:t});return this.updateViewport(n,nM,{isDragging:!0}),!0}},{key:"_onTriplePan",value:function(e){if(!this.touchRotate||!this.isDragging())return!1;var t=this.getCenter(e);t[0]-=e.deltaX;var n=this.controllerState.rotate({pos:t});return this.updateViewport(n,nM,{isDragging:!0,isRotating:!0}),!0}},{key:"_onTriplePanEnd",value:function(e){if(!this.isDragging())return!1;var t=this.inertia;if(this.touchRotate&&t&&e.velocityY){var n=this.getCenter(e),i=[n[0],n[1]+=e.velocityY*t/2],r=this.controllerState.rotate({pos:i});this.updateViewport(r,I(M({},this._getTransitionProps()),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isRotating:!0}),this.blockEvents(t)}else{var o=this.controllerState.rotateEnd();this.updateViewport(o,null,{isDragging:!1,isRotating:!1})}return!0}},{key:"_onPinchStart",value:function(e){var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.controllerState.zoomStart({pos:t}).rotateStart({pos:t});return this._startPinchRotation=e.rotation,this._lastPinchEvent=e,this.updateViewport(n,nM,{isDragging:!0}),!0}},{key:"_onPinch",value:function(e){if(!this.touchZoom&&!this.touchRotate||!this.isDragging())return!1;var t=this.controllerState;if(this.touchZoom){var n=e.scale,i=this.getCenter(e);t=t.zoom({pos:i,scale:n})}if(this.touchRotate){var r=e.rotation;t=t.rotate({deltaAngleX:this._startPinchRotation-r})}return this.updateViewport(t,nM,{isDragging:!0,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:this.touchRotate}),this._lastPinchEvent=e,!0}},{key:"_onPinchEnd",value:function(e){if(!this.isDragging())return!1;var t=this.inertia,n=this._lastPinchEvent;if(this.touchZoom&&t&&n&&e.scale!==n.scale){var i=this.getCenter(e),r=this.controllerState.rotateEnd(),o=Math.log2(e.scale),a=(o-Math.log2(n.scale))/(e.deltaTime-n.deltaTime),s=Math.pow(2,o+a*t/2);r=r.zoom({pos:i,scale:s}).zoomEnd(),this.updateViewport(r,I(M({},this._getTransitionProps({around:i})),{transitionDuration:t,transitionEasing:rM}),{isDragging:!1,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:!1}),this.blockEvents(t)}else{var u=this.controllerState.zoomEnd().rotateEnd();this.updateViewport(u,null,{isDragging:!1,isPanning:!1,isZooming:!1,isRotating:!1})}return this._startPinchRotation=null,this._lastPinchEvent=null,!0}},{key:"_onDoubleTap",value:function(e){if(!this.doubleClickZoom)return!1;var t=this.getCenter(e);if(!this.isPointInBounds(t,e))return!1;var n=this.isFunctionKeyPressed(e),i=this.controllerState.zoom({pos:t,scale:n?.5:2});return this.updateViewport(i,this._getTransitionProps({around:t}),{isZooming:!0,isPanning:!0}),this.blockEvents(100),!0}},{key:"_onKeyDown",value:function(e){if(!this.keyboard)return!1;var t,n=this.isFunctionKeyPressed(e),i=this.keyboard,r=i.zoomSpeed,o=i.moveSpeed,a=i.rotateSpeedX,s=i.rotateSpeedY,u=this.controllerState,c={};switch(e.srcEvent.code){case"Minus":t=n?u.zoomOut(r).zoomOut(r):u.zoomOut(r),c.isZooming=!0;break;case"Equal":t=n?u.zoomIn(r).zoomIn(r):u.zoomIn(r),c.isZooming=!0;break;case"ArrowLeft":n?(t=u.rotateLeft(a),c.isRotating=!0):(t=u.moveLeft(o),c.isPanning=!0);break;case"ArrowRight":n?(t=u.rotateRight(a),c.isRotating=!0):(t=u.moveRight(o),c.isPanning=!0);break;case"ArrowUp":n?(t=u.rotateUp(s),c.isRotating=!0):(t=u.moveUp(o),c.isPanning=!0);break;case"ArrowDown":n?(t=u.rotateDown(s),c.isRotating=!0):(t=u.moveDown(o),c.isPanning=!0);break;default:return!1}return this.updateViewport(t,this._getTransitionProps(),c),!0}},{key:"_getTransitionProps",value:function(e){var t=this._transition;return t?e?I(M({},t),{transitionInterpolator:new tM(I(M({},e),{transitionProps:this.linearTransitionProps,makeViewport:this.controllerState.makeViewport}))}):t:nM}}]),e}(),dM=function(){function e(t){m(this,e),this._viewportProps=this._applyConstraints(t)}return b(e,[{key:"getViewportProps",value:function(){return this._viewportProps}},{key:"getState",value:function(){return this._state}},{key:"shortestPathFrom",value:function(e){return this._viewportProps}},{key:"_applyConstraints",value:function(e){return e}}]),e}(),fM=[0,0,0],pM=function(e){a(n,e);var t=s(n);function n(e){var i,r=e.makeViewport,o=e.width,a=e.height,s=e.rotationX,u=void 0===s?0:s,c=e.rotationOrbit,l=void 0===c?0:c,h=e.target,d=void 0===h?fM:h,f=e.zoom,p=void 0===f?0:f,v=e.minRotationX,g=void 0===v?-90:v,y=e.maxRotationX,b=void 0===y?90:y,_=e.minZoom,w=void 0===_?-1/0:_,k=e.maxZoom,x=void 0===k?1/0:k,S=e.startPanPosition,E=e.startRotatePos,C=e.startRotationX,O=e.startRotationOrbit,T=e.startZoomPosition,A=e.startZoom;return m(this,n),(i=t.call(this,{width:o,height:a,rotationX:u,rotationOrbit:l,target:d,zoom:p,minRotationX:g,maxRotationX:b,minZoom:w,maxZoom:x}))._state={startPanPosition:S,startRotatePos:E,startRotationX:C,startRotationOrbit:O,startZoomPosition:T,startZoom:A},i.makeViewport=r,i}return b(n,[{key:"panStart",value:function(e){var t=e.pos;return this._getUpdatedState({startPanPosition:this._unproject(t)})}},{key:"pan",value:function(e){var t=e.pos,n=e.startPosition,i=this._state.startPanPosition||n;if(!i)return this;var r=this.makeViewport(this._viewportProps).panByPosition(i,t);return this._getUpdatedState(r)}},{key:"panEnd",value:function(){return this._getUpdatedState({startPanPosition:null})}},{key:"rotateStart",value:function(e){var t=e.pos;return this._getUpdatedState({startRotatePos:t,startRotationX:this._viewportProps.rotationX,startRotationOrbit:this._viewportProps.rotationOrbit})}},{key:"rotate",value:function(e){var t,n=e.pos,i=e.deltaAngleX,r=void 0===i?0:i,o=e.deltaAngleY,a=void 0===o?0:o,s=this._state,u=s.startRotatePos,c=s.startRotationX,l=s.startRotationOrbit,h=this._viewportProps,d=h.width,f=h.height;if(!u||!Number.isFinite(c)||!Number.isFinite(l))return this;if(n){var p=(n[0]-u[0])/d;(c<-90||c>90)&&(p*=-1),t={rotationX:c+(n[1]-u[1])/f*180,rotationOrbit:l+180*p}}else t={rotationX:c+a,rotationOrbit:l+r};return this._getUpdatedState(t)}},{key:"rotateEnd",value:function(){return this._getUpdatedState({startRotationX:null,startRotationOrbit:null})}},{key:"shortestPathFrom",value:function(e){var t=e.getViewportProps(),n=M({},this._viewportProps),i=n.rotationOrbit;return Math.abs(i-t.rotationOrbit)>180&&(n.rotationOrbit=i<0?i+360:i-360),n}},{key:"zoomStart",value:function(e){var t=e.pos;return this._getUpdatedState({startZoomPosition:this._unproject(t),startZoom:this._viewportProps.zoom})}},{key:"zoom",value:function(e){var t=e.pos,n=e.startPos,i=e.scale,r=this._viewportProps.zoom,o=this._state,a=o.startZoom,s=o.startZoomPosition;Number.isFinite(a)||(a=r,s=this._unproject(n)||this._unproject(t));var u=this._calculateNewZoom({scale:i,startZoom:a}),c=this.makeViewport(I(M({},this._viewportProps),{zoom:u}));return this._getUpdatedState(M({zoom:u},c.panByPosition(s,t)))}},{key:"zoomEnd",value:function(){return this._getUpdatedState({startZoomPosition:null,startZoom:null})}},{key:"zoomIn",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._getUpdatedState({zoom:this._calculateNewZoom({scale:e})})}},{key:"zoomOut",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._getUpdatedState({zoom:this._calculateNewZoom({scale:1/e})})}},{key:"moveLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([-e,0])}},{key:"moveRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([e,0])}},{key:"moveUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([0,-e])}},{key:"moveDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:50;return this._panFromCenter([0,e])}},{key:"rotateLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit-e})}},{key:"rotateRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit+e})}},{key:"rotateUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({rotationX:this._viewportProps.rotationX-e})}},{key:"rotateDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({rotationX:this._viewportProps.rotationX+e})}},{key:"_unproject",value:function(e){var t=this.makeViewport(this._viewportProps);return e&&t.unproject(e)}},{key:"_calculateNewZoom",value:function(e){var t=e.scale,n=e.startZoom,i=this._viewportProps,r=i.maxZoom,o=i.minZoom;return Number.isFinite(n)||(n=this._viewportProps.zoom),Gx(n+Math.log2(t),o,r)}},{key:"_panFromCenter",value:function(e){var t=this._viewportProps,n=t.width,i=t.height,r=t.target;return this.pan({startPosition:r,pos:[n/2+e[0],i/2+e[1]]})}},{key:"_getUpdatedState",value:function(e){return new n(M(M(M({},this._viewportProps),this._state),e))}},{key:"_applyConstraints",value:function(e){var t=e.maxZoom,n=e.minZoom,i=e.zoom,r=e.maxRotationX,o=e.minRotationX,a=e.rotationOrbit;return e.zoom=Gx(i,n,t),e.rotationX=Gx(e.rotationX,o,r),(a<-180||a>180)&&(e.rotationOrbit=function(e,t){var n=e%360;return n<0?360+n:n}(a+180)-180),e}}]),n}(dM),vM=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,pM,e)}return b(n,[{key:"linearTransitionProps",get:function(){return["target","zoom","rotationX","rotationOrbit"]}}]),n}(hM),gM=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),e.dragMode=e.dragMode||"pan",t.call(this,pM,e)}return b(n,[{key:"_onPanRotate",value:function(e){return!1}},{key:"linearTransitionProps",get:function(){return["target","zoom"]}}]),n}(hM),mM=(new SO).lookAt({eye:[0,0,1]});function yM(e){var t=e.width,n=e.height,i=e.near,r=e.far;return t=t||1,n=n||1,(new SO).ortho({left:-t/2,right:t/2,bottom:-n/2,top:n/2,near:i,far:r})}var bM=function(e){a(n,e);var t=s(n);function n(e){m(this,n);var i=e.width,r=e.height,o=e.near,a=void 0===o?.1:o,s=e.far,u=void 0===s?1e3:s,c=e.zoom,l=void 0===c?0:c,h=e.target,d=void 0===h?[0,0,0]:h,f=e.flipY,p=void 0===f||f,v=Math.pow(2,l);return t.call(this,I(M({},e),{longitude:null,position:d,viewMatrix:mM.clone().scale([v,v*(p?-1:1),v]),projectionMatrix:yM({width:i,height:r,near:a,far:u}),zoom:l}))}return b(n,[{key:"panByPosition",value:function(e,t){var n=mO([],e,yO([],HO(t,this.pixelUnprojectionMatrix)));return{target:mO([],this.center,n)}}}]),n}(JO),_M=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,I(M({},e),{type:bM}))}return b(n,[{key:"controller",get:function(){return this._getControllerProps({type:gM})}}]),n}(KP);return e.displayName="OrthographicView",e}(),wM=Math.PI/180;function kM(e){var t=e.height,n=e.fovy,i=e.orbitAxis,r=e.rotationX,o=e.rotationOrbit,a=e.zoom,s=.5/Math.tan(n*wM/2),u="Z"===i?[0,0,1]:[0,1,0],c="Z"===i?[0,-s,0]:[0,0,s],l=(new SO).lookAt({eye:c,up:u});l.rotateX(r*wM),"Z"===i?l.rotateZ(o*wM):l.rotateY(o*wM);var h=Math.pow(2,a)/(t||1);return l.scale(h),l}var xM=function(e){a(i,e);var n=s(i);function i(e){var t;m(this,i);var r=e.height,o=e.fovy,a=e.orbitAxis,s=e.target,u=void 0===s?[0,0,0]:s,c=e.rotationX,l=void 0===c?0:c,h=e.rotationOrbit,d=void 0===h?0:h,f=e.zoom,p=void 0===f?0:f;return(t=n.call(this,I(M({},e),{longitude:null,viewMatrix:kM({height:r,fovy:o,orbitAxis:a,rotationX:l,rotationOrbit:d,zoom:p}),fovy:o,position:u,zoom:p}))).projectedCenter=t.project(t.center),t}return b(i,[{key:"unproject",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.topLeft,r=void 0===i||i,o=t(e,3),a=o[0],s=o[1],u=o[2],c=void 0===u?this.projectedCenter[2]:u,l=r?s:this.height-s,h=HO([a,l,c],this.pixelUnprojectionMatrix),d=t(h,3),f=d[0],p=d[1],v=d[2];return[f,p,v]}},{key:"panByPosition",value:function(e,t){var n=this.project(e);return{target:this.unproject([this.width/2+n[0]-t[0],this.height/2+n[1]-t[1],this.projectedCenter[2]])}}}]),i}(JO),SM=function(){var e=function(e){a(n,e);var t=s(n);function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,n);var i=e.orbitAxis,r=void 0===i?"Z":i;return t.call(this,I(M({},e),{orbitAxis:r,type:xM}))}return b(n,[{key:"controller",get:function(){return this._getControllerProps({type:vM})}}]),n}(KP);return e.displayName="OrbitView",e}(),EM=[255,255,255],CM=0,OM=function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.color,i=void 0===n?EM:n,r=t.intensity,o=void 0===r?1:r;this.id=t.id||"ambient-".concat(CM++),this.color=i,this.intensity=o,this.type="ambient"},TM=[255,255,255],AM=[0,0,-1],PM=0,MM=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.color,i=void 0===n?TM:n,r=t.intensity,o=void 0===r?1:r,a=t.direction,s=void 0===a?AM:a,u=t._shadow,c=void 0!==u&&u;this.id=t.id||"directional-".concat(PM++),this.color=i,this.intensity=o,this.type="directional",this.direction=new hS(s).normalize().toArray(),this.shadow=c}return b(e,[{key:"getProjectedLight",value:function(){return this}}]),e}(),IM=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?"effect":n;this.id=i,this.props=M({},t)}return b(e,[{key:"preRender",value:function(){}},{key:"getModuleParameters",value:function(){}},{key:"cleanup",value:function(){}}]),e}(),RM=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"render",value:function(e){return Ck(this.gl,{framebuffer:e.target}),this._drawLayers(e)}},{key:"_drawLayers",value:function(e){var t=e.viewports,n=e.views,i=e.onViewportActive,r=e.clearCanvas,o=void 0===r||r;e.pass=e.pass||"unknown";var a=this.gl;o&&function(e){Ck(e,{viewport:[0,0,e.drawingBufferWidth,e.drawingBufferHeight]}),e.clear(16640)}(a);var s,u=[],c=_(t);try{for(c.s();!(s=c.n()).done;){var l=s.value,h=l.viewport||l,d=n&&n[h.id];i(h);var f=this._getDrawLayerParams(h,e);e.view=d;var p,v=_(h.subViewports||[h]);try{for(v.s();!(p=v.n()).done;){var g=p.value;e.viewport=g;var m=this._drawLayersInViewport(a,e,f);u.push(m)}}catch(y){v.e(y)}finally{v.f()}}}catch(y){c.e(y)}finally{c.f()}return u}},{key:"_getDrawLayerParams",value:function(e,t){for(var n=t.layers,i=t.pass,r=t.layerFilter,o=t.effects,a=t.moduleParameters,s=[],u=DM(),c={viewport:e,isPicking:i.startsWith("picking"),renderPass:i},l=0;l1&&void 0!==arguments[1]?arguments[1]:{};m(this,e);var i=n.id,r=void 0===i?"pass":i;this.id=r,this.gl=t,this.props=M({},n)}return b(e,[{key:"setProps",value:function(e){Object.assign(this.props,e)}},{key:"render",value:function(){}},{key:"cleanup",value:function(){}}]),e}());function DM(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={},i=function i(r,o){var a,s=r.props._offset,u=r.id,c=r.parent&&r.parent.id;if(c&&!(c in t)&&i(r.parent,!1),c in n){var l=n[c]=n[c]||DM(t[c],t);a=l(r,o),n[u]=l}else Number.isFinite(s)?(a=s+(t[c]||0),n[u]=null):a=e;return o&&a>=e&&(e=a+1),t[u]=a,a};return i}var NM=function(t){a(i,t);var n=s(i);function i(e,t){var r;return m(this,i),(r=n.call(this,e,t)).shadowMap=new gx(e,{width:1,height:1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),r.depthBuffer=new bx(e,{format:33189,width:1,height:1}),r.fbo=new Mx(e,{id:"shadowmap",width:1,height:1,attachments:{36064:r.shadowMap,36096:r.depthBuffer}}),r}return b(i,[{key:"render",value:function(t){var n=this,r=this.fbo;Ok(this.gl,{depthRange:[0,1],depthTest:!0,blend:!1,clearColor:[1,1,1,1]},function(){var o=t.viewports[0],a=Tk(n.gl),s=o.width*a,u=o.height*a;(s!==r.width||u!==r.height)&&r.resize({width:s,height:u}),e(p(i.prototype),"render",n).call(n,I(M({},t),{target:r,pass:"shadow"}))})}},{key:"shouldDrawLayer",value:function(e){return!1!==e.props.shadowEnabled}},{key:"getModuleParameters",value:function(){return{drawToShadowMap:!0}}},{key:"delete",value:function(){this.fbo&&(this.fbo.delete(),this.fbo=null),this.shadowMap&&(this.shadowMap.delete(),this.shadowMap=null),this.depthBuffer&&(this.depthBuffer.delete(),this.depthBuffer=null)}}]),i}(RM),LM=Object.keys(zw).map(function(e){return"const int COORDINATE_SYSTEM_".concat(e," = ").concat(zw[e],";")}).join(""),jM=Object.keys(Uw).map(function(e){return"const int PROJECTION_MODE_".concat(e," = ").concat(Uw[e],";")}).join(""),FM="".concat(LM,"\n").concat(jM,"\n\nuniform int project_uCoordinateSystem;\nuniform int project_uProjectionMode;\nuniform float project_uScale;\nuniform bool project_uWrapLongitude;\nuniform vec3 project_uCommonUnitsPerMeter;\nuniform vec3 project_uCommonUnitsPerWorldUnit;\nuniform vec3 project_uCommonUnitsPerWorldUnit2;\nuniform vec4 project_uCenter;\nuniform mat4 project_uModelMatrix;\nuniform mat4 project_uViewProjectionMatrix;\nuniform vec2 project_uViewportSize;\nuniform float project_uDevicePixelRatio;\nuniform float project_uFocalDistance;\nuniform vec3 project_uCameraPosition;\nuniform vec3 project_uCoordinateOrigin;\nuniform vec3 project_uCommonOrigin;\n\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / (PI * 2.0);\nconst vec3 ZERO_64_LOW = vec3(0.0);\nconst float EARTH_RADIUS = 6370972.0;\nconst float GLOBE_RADIUS = 256.0;\nfloat project_size(float meters) {\n return meters * project_uCommonUnitsPerMeter.z;\n}\n\nvec2 project_size(vec2 meters) {\n return meters * project_uCommonUnitsPerMeter.xy;\n}\n\nvec3 project_size(vec3 meters) {\n return meters * project_uCommonUnitsPerMeter;\n}\n\nvec4 project_size(vec4 meters) {\n return vec4(meters.xyz * project_uCommonUnitsPerMeter, meters.w);\n}\nvec3 project_normal(vec3 vector) {\n vec4 normal_modelspace = project_uModelMatrix * vec4(vector, 0.0);\n return normalize(normal_modelspace.xyz * project_uCommonUnitsPerMeter);\n}\n\nvec4 project_offset_(vec4 offset) {\n float dy = offset.y;\n vec3 commonUnitsPerWorldUnit = project_uCommonUnitsPerWorldUnit + project_uCommonUnitsPerWorldUnit2 * dy;\n return vec4(offset.xyz * commonUnitsPerWorldUnit, offset.w);\n}\nvec2 project_mercator_(vec2 lnglat) {\n float x = lnglat.x;\n if (project_uWrapLongitude) {\n x = mod(x + 180., 360.0) - 180.;\n }\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan_fp32(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\nvec3 project_globe_(vec3 lnglatz) {\n float lambda = radians(lnglatz.x);\n float phi = radians(lnglatz.y);\n float cosPhi = cos(phi);\n float D = (lnglatz.z / EARTH_RADIUS + 1.0) * GLOBE_RADIUS;\n\n return vec3(\n sin(lambda) * cosPhi,\n -cos(lambda) * cosPhi,\n sin(phi)\n ) * D;\n}\nvec4 project_position(vec4 position, vec3 position64Low) {\n vec4 position_world = project_uModelMatrix * position;\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_mercator_(position_world.xy),\n project_size(position_world.z),\n position_world.w\n );\n }\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN) {\n position_world.xyz += project_uCoordinateOrigin;\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_globe_(position_world.xyz),\n position_world.w\n );\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n if (abs(position_world.y - project_uCoordinateOrigin.y) > 0.25) {\n return vec4(\n project_mercator_(position_world.xy) - project_uCommonOrigin.xy,\n project_size(position_world.z),\n position_world.w\n );\n }\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_IDENTITY ||\n (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET &&\n (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT ||\n project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN))) {\n position_world.xyz -= project_uCoordinateOrigin;\n }\n return project_offset_(position_world + project_uModelMatrix * vec4(position64Low, 0.0));\n}\n\nvec4 project_position(vec4 position) {\n return project_position(position, ZERO_64_LOW);\n}\n\nvec3 project_position(vec3 position, vec3 position64Low) {\n vec4 projected_position = project_position(vec4(position, 1.0), position64Low);\n return projected_position.xyz;\n}\n\nvec3 project_position(vec3 position) {\n vec4 projected_position = project_position(vec4(position, 1.0), ZERO_64_LOW);\n return projected_position.xyz;\n}\n\nvec2 project_position(vec2 position) {\n vec4 projected_position = project_position(vec4(position, 0.0, 1.0), ZERO_64_LOW);\n return projected_position.xy;\n}\n\nvec4 project_common_position_to_clipspace(vec4 position, mat4 viewProjectionMatrix, vec4 center) {\n return viewProjectionMatrix * position + center;\n}\nvec4 project_common_position_to_clipspace(vec4 position) {\n return project_common_position_to_clipspace(position, project_uViewProjectionMatrix, project_uCenter);\n}\nvec2 project_pixel_size_to_clipspace(vec2 pixels) {\n vec2 offset = pixels / project_uViewportSize * project_uDevicePixelRatio * 2.0;\n return offset * project_uFocalDistance;\n}\n\nfloat project_size_to_pixel(float meters) {\n return project_size(meters) * project_uScale;\n}\nfloat project_pixel_size(float pixels) {\n return pixels / project_uScale;\n}\nvec2 project_pixel_size(vec2 pixels) {\n return pixels / project_uScale;\n}\nmat3 project_get_orientation_matrix(vec3 up) {\n vec3 uz = normalize(up);\n vec3 ux = abs(uz.z) == 1.0 ? vec3(1.0, 0.0, 0.0) : normalize(vec3(uz.y, -uz.x, 0));\n vec3 uy = cross(uz, ux);\n return mat3(ux, uy, uz);\n}\n\nbool project_needs_rotation(vec3 commonPosition, out mat3 transform) {\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n transform = project_get_orientation_matrix(commonPosition);\n return true;\n }\n return false;\n}\n"),BM={},VM={name:"project",dependencies:[{name:"fp32",vs:"#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\nconst float TWO_PI = 6.2831854820251465;\nconst float PI_2 = 1.5707963705062866;\nconst float PI_16 = 0.1963495463132858;\n\nconst float SIN_TABLE_0 = 0.19509032368659973;\nconst float SIN_TABLE_1 = 0.3826834261417389;\nconst float SIN_TABLE_2 = 0.5555702447891235;\nconst float SIN_TABLE_3 = 0.7071067690849304;\n\nconst float COS_TABLE_0 = 0.9807852506637573;\nconst float COS_TABLE_1 = 0.9238795042037964;\nconst float COS_TABLE_2 = 0.8314695954322815;\nconst float COS_TABLE_3 = 0.7071067690849304;\n\nconst float INVERSE_FACTORIAL_3 = 1.666666716337204e-01;\nconst float INVERSE_FACTORIAL_5 = 8.333333767950535e-03;\nconst float INVERSE_FACTORIAL_7 = 1.9841270113829523e-04;\nconst float INVERSE_FACTORIAL_9 = 2.75573188446287533e-06;\n\nfloat sin_taylor_fp32(float a) {\n float r, s, t, x;\n\n if (a == 0.0) {\n return 0.0;\n }\n\n x = -a * a;\n s = a;\n r = a;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_3;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_5;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_7;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_9;\n s = s + t;\n\n return s;\n}\n\nvoid sincos_taylor_fp32(float a, out float sin_t, out float cos_t) {\n if (a == 0.0) {\n sin_t = 0.0;\n cos_t = 1.0;\n }\n sin_t = sin_taylor_fp32(a);\n cos_t = sqrt(1.0 - sin_t * sin_t);\n}\n\nfloat tan_taylor_fp32(float a) {\n float sin_a;\n float cos_a;\n\n if (a == 0.0) {\n return 0.0;\n }\n float z = floor(a / TWO_PI);\n float r = a - TWO_PI * z;\n\n float t;\n float q = floor(r / PI_2 + 0.5);\n int j = int(q);\n\n if (j < -2 || j > 2) {\n return 1.0 / 0.0;\n }\n\n t = r - PI_2 * q;\n\n q = floor(t / PI_16 + 0.5);\n int k = int(q);\n int abs_k = int(abs(float(k)));\n\n if (abs_k > 4) {\n return 1.0 / 0.0;\n } else {\n t = t - PI_16 * q;\n }\n\n float u = 0.0;\n float v = 0.0;\n\n float sin_t, cos_t;\n float s, c;\n sincos_taylor_fp32(t, sin_t, cos_t);\n\n if (k == 0) {\n s = sin_t;\n c = cos_t;\n } else {\n if (abs(float(abs_k) - 1.0) < 0.5) {\n u = COS_TABLE_0;\n v = SIN_TABLE_0;\n } else if (abs(float(abs_k) - 2.0) < 0.5) {\n u = COS_TABLE_1;\n v = SIN_TABLE_1;\n } else if (abs(float(abs_k) - 3.0) < 0.5) {\n u = COS_TABLE_2;\n v = SIN_TABLE_2;\n } else if (abs(float(abs_k) - 4.0) < 0.5) {\n u = COS_TABLE_3;\n v = SIN_TABLE_3;\n }\n if (k > 0) {\n s = u * sin_t + v * cos_t;\n c = u * cos_t - v * sin_t;\n } else {\n s = u * sin_t - v * cos_t;\n c = u * cos_t + v * sin_t;\n }\n }\n\n if (j == 0) {\n sin_a = s;\n cos_a = c;\n } else if (j == 1) {\n sin_a = c;\n cos_a = -s;\n } else if (j == -1) {\n sin_a = -c;\n cos_a = s;\n } else {\n sin_a = -s;\n cos_a = -c;\n }\n return sin_a / cos_a;\n}\n#endif\n\nfloat tan_fp32(float a) {\n#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\n return tan_taylor_fp32(a);\n#else\n return tan(a);\n#endif\n}\n",fs:null}],vs:FM,getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:BM;return e.viewport?function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.viewport,n=e.devicePixelRatio,i=void 0===n?1:n,r=e.modelMatrix,o=void 0===r?null:r,a=e.coordinateSystem,s=void 0===a?zw.DEFAULT:a,u=e.coordinateOrigin,c=e.autoWrapLongitude,l=void 0!==c&&c;s===zw.DEFAULT&&(s=t.isGeospatial?zw.LNGLAT:zw.CARTESIAN);var h=pO({viewport:t,devicePixelRatio:i,coordinateSystem:s,coordinateOrigin:u});return h.project_uWrapLongitude=l,h.project_uModelMatrix=o||hO,h}(e):{}}},zM=QC(function(e){var t=e.viewport,n=e.center;return new SO(t.viewProjectionMatrix).invert().transform(n)}),UM=QC(function(e){var n,i=e.viewport,r=e.shadowMatrices,o=[],a=i.pixelUnprojectionMatrix,s=i.isGeospatial?void 0:1,u=[[0,0,s],[i.width,0,s],[0,i.height,s],[i.width,i.height,s],[0,0,-1],[i.width,0,-1],[0,i.height,-1],[i.width,i.height,-1]].map(function(e){return function(e,n){var i=t(e,3),r=i[0],o=i[1],a=i[2],s=HO([r,o,a],n);return Number.isFinite(a)?s:[s[0],s[1],0]}(e,a)}),c=_(r);try{var l=function(){var e=n.value,t=e.clone().translate(new hS(i.center).negate()),r=u.map(function(e){return t.transform(e)}),a=(new SO).ortho({left:Math.min.apply(Math,v(r.map(function(e){return e[0]}))),right:Math.max.apply(Math,v(r.map(function(e){return e[0]}))),bottom:Math.min.apply(Math,v(r.map(function(e){return e[1]}))),top:Math.max.apply(Math,v(r.map(function(e){return e[1]}))),near:Math.min.apply(Math,v(r.map(function(e){return-e[2]}))),far:Math.max.apply(Math,v(r.map(function(e){return-e[2]})))});o.push(a.multiplyRight(e))};for(c.s();!(n=c.n()).done;)l()}catch(h){c.e(h)}finally{c.f()}return o}),HM=[0,0,0,1],GM=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],WM={name:"shadow",dependencies:[VM],vs:"\nconst int max_lights = 2;\nuniform mat4 shadow_uViewProjectionMatrices[max_lights];\nuniform vec4 shadow_uProjectCenters[max_lights];\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform int shadow_uLightId;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nvec4 shadow_setVertexPosition(vec4 position_commonspace) {\n if (shadow_uDrawShadowMap) {\n return project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[shadow_uLightId], shadow_uProjectCenters[shadow_uLightId]);\n }\n if (shadow_uUseShadowMap) {\n for (int i = 0; i < max_lights; i++) {\n if(i < int(shadow_uLightCount)) {\n vec4 shadowMap_position = project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[i], shadow_uProjectCenters[i]);\n shadow_vPosition[i] = (shadowMap_position.xyz / shadowMap_position.w + 1.0) / 2.0;\n }\n }\n }\n return gl_Position;\n}\n",fs:"\nconst int max_lights = 2;\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform sampler2D shadow_uShadowMap0;\nuniform sampler2D shadow_uShadowMap1;\nuniform vec4 shadow_uColor;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nconst vec4 bitPackShift = vec4(1.0, 255.0, 65025.0, 16581375.0);\nconst vec4 bitUnpackShift = 1.0 / bitPackShift;\nconst vec4 bitMask = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n\nfloat shadow_getShadowWeight(vec3 position, sampler2D shadowMap) {\n vec4 rgbaDepth = texture2D(shadowMap, position.xy);\n\n float z = dot(rgbaDepth, bitUnpackShift);\n return smoothstep(0.001, 0.01, position.z - z);\n}\n\nvec4 shadow_filterShadowColor(vec4 color) {\n if (shadow_uDrawShadowMap) {\n vec4 rgbaDepth = fract(gl_FragCoord.z * bitPackShift);\n rgbaDepth -= rgbaDepth.gbaa * bitMask;\n return rgbaDepth;\n }\n if (shadow_uUseShadowMap) {\n float shadowAlpha = 0.0;\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[0], shadow_uShadowMap0);\n if(shadow_uLightCount > 1.0) {\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[1], shadow_uShadowMap1);\n }\n shadowAlpha *= shadow_uColor.a / shadow_uLightCount;\n float blendedAlpha = shadowAlpha + color.a * (1.0 - shadowAlpha);\n\n return vec4(\n mix(color.rgb, shadow_uColor.rgb, shadowAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n return color;\n}\n",inject:{"vs:DECKGL_FILTER_GL_POSITION":"\n position = shadow_setVertexPosition(geometry.position);\n ","fs:DECKGL_FILTER_COLOR":"\n color = shadow_filterShadowColor(color);\n "},getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e.drawToShadowMap||e.shadowMaps&&e.shadowMaps.length>0){var n=e.shadowEnabled,i=void 0===n||n;return i&&e.shadowMatrices&&e.shadowMatrices.length>0?function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={shadow_uDrawShadowMap:Boolean(e.drawToShadowMap),shadow_uUseShadowMap:!!e.shadowMaps&&e.shadowMaps.length>0,shadow_uColor:e.shadowColor||HM,shadow_uLightId:e.shadowLightId||0,shadow_uLightCount:e.shadowMatrices.length},i=zM({viewport:e.viewport,center:t.project_uCenter}),r=[],o=UM({shadowMatrices:e.shadowMatrices,viewport:e.viewport}).slice(),a=0;a0?e.shadowMaps[c]:e.dummyShadowMap;return n}(e,t):{shadow_uDrawShadowMap:!1,shadow_uUseShadowMap:!1}}return{}}},qM={color:[255,255,255],intensity:1},XM=[{color:[255,255,255],intensity:1,direction:[-1,3,-1]},{color:[255,255,255],intensity:.9,direction:[1,-8,-2.5]}],YM=[0,0,0,200/255],KM=function(e){a(n,e);var t=s(n);function n(e){var i;for(var r in m(this,n),(i=t.call(this,e)).ambientLight=null,i.directionalLights=[],i.pointLights=[],i.shadowColor=YM,i.shadowPasses=[],i.shadowMaps=[],i.dummyShadowMap=null,i.shadow=!1,i.programManager=null,e){var o=e[r];switch(o.type){case"ambient":i.ambientLight=o;break;case"directional":i.directionalLights.push(o);break;case"point":i.pointLights.push(o)}}return i._applyDefaultLights(),i.shadow=i.directionalLights.some(function(e){return e.shadow}),i}return b(n,[{key:"preRender",value:function(e,t){var n=t.layers,i=t.layerFilter,r=t.viewports,o=t.onViewportActive,a=t.views;if(this.shadow){this.shadowMatrices=this._createLightMatrix(),0===this.shadowPasses.length&&this._createShadowPasses(e),this.programManager||(this.programManager=dC.getDefaultProgramManager(e),WM&&this.programManager.addDefaultModule(WM)),this.dummyShadowMap||(this.dummyShadowMap=new gx(e,{width:1,height:1}));for(var s=0;s=t.delay+t.duration*t.repeat}},{key:"getTime",value:function(e){if(void 0===e)return this.time;var t=this.channels.get(e);return void 0===t?-1:t.time}},{key:"setTime",value:function(e){this.time=Math.max(0,e);var t,n=_(this.channels.values());try{for(n.s();!(t=n.n()).done;){var i=t.value;this._setChannelTime(i,this.time)}}catch(c){n.e(c)}finally{n.f()}var r,o=_(this.animations.values());try{for(o.s();!(r=o.n()).done;){var a=r.value,s=a.animation,u=a.channel;s.setTime(this.getTime(u))}}catch(c){o.e(c)}finally{o.f()}}},{key:"play",value:function(){this.playing=!0}},{key:"pause",value:function(){this.playing=!1,this.lastEngineTime=-1}},{key:"reset",value:function(){this.setTime(0)}},{key:"attachAnimation",value:function(e,t){var n=QM++;return this.animations.set(n,{animation:e,channel:t}),e.setTime(this.getTime(t)),n}},{key:"detachAnimation",value:function(e){this.animations.delete(e)}},{key:"update",value:function(e){this.playing&&(-1===this.lastEngineTime&&(this.lastEngineTime=e),this.setTime(this.time+(e-this.lastEngineTime)),this.lastEngineTime=e)}},{key:"_setChannelTime",value:function(e,t){var n=t-e.delay;n>=e.duration*e.repeat?e.time=e.duration*e.rate:(e.time=Math.max(0,n)%e.duration,e.time*=e.rate)}}]),e}(),JM=function(){function e(t,n,i){m(this,e),this.id=t,this.context=i,this._loadCount=0,this._subscribers=new Set,this.setData(n)}return b(e,[{key:"subscribe",value:function(e){this._subscribers.add(e)}},{key:"unsubscribe",value:function(e){this._subscribers.delete(e)}},{key:"inUse",value:function(){return this._subscribers.size>0}},{key:"delete",value:function(){}},{key:"getData",value:function(){var e=this;return this.isLoaded?this._error?Promise.reject(this._error):this._content:this._loader.then(function(){return e.getData()})}},{key:"setData",value:function(e,t){var n=this;if(e!==this._data||t){this._data=e;var i=++this._loadCount,r=e;"string"==typeof e&&(r=LP(e)),r instanceof Promise?(this.isLoaded=!1,this._loader=r.then(function(e){n._loadCount===i&&(n.isLoaded=!0,n._error=null,n._content=e)}).catch(function(e){n._loadCount===i&&(n.isLoaded=!0,n._error=e||!0)})):(this.isLoaded=!0,this._error=null,this._content=e);var o,a=_(this._subscribers);try{for(a.s();!(o=a.n()).done;){o.value.onChange(this.getData())}}catch(s){a.e(s)}finally{a.f()}}}}]),e}(),eI=function(){function e(t){var n=t.gl,i=t.protocol;m(this,e),this.protocol=i||"resource://",this._context={gl:n,resourceManager:this},this._resources={},this._consumers={},this._pruneRequest=null}return b(e,[{key:"contains",value:function(e){return!!e.startsWith(this.protocol)||e in this._resources}},{key:"add",value:function(e){var t=e.resourceId,n=e.data,i=e.forceUpdate,r=void 0!==i&&i,o=e.persistent,a=void 0===o||o,s=this._resources[t];s?s.setData(n,r):(s=new JM(t,n,this._context),this._resources[t]=s),s.persistent=a}},{key:"remove",value:function(e){var t=this._resources[e];t&&(t.delete(),delete this._resources[e])}},{key:"unsubscribe",value:function(e){var t=e.consumerId,n=this._consumers[t];if(n){for(var i in n){var r=n[i];r.resource&&r.resource.unsubscribe(r)}delete this._consumers[t],this.prune()}}},{key:"subscribe",value:function(e){var t=e.resourceId,n=e.onChange,i=e.consumerId,r=e.requestId,o=void 0===r?"default":r,a=this._resources,s=this.protocol;t.startsWith(s)&&(a[t=t.replace(s,"")]||this.add({resourceId:t,data:null,persistent:!1}));var u=a[t];if(this._track(i,o,u,n),u)return u.getData()}},{key:"prune",value:function(){var e=this;this._pruneRequest||(this._pruneRequest=setTimeout(function(){return e._prune()},0))}},{key:"finalize",value:function(){for(var e in this._resources)this._resources[e].delete()}},{key:"_track",value:function(e,t,n,i){var r=this._consumers,o=r[e]=r[e]||{},a=o[t]||{};a.resource&&(a.resource.unsubscribe(a),a.resource=null,this.prune()),n&&(o[t]=a,a.onChange=i,a.resource=n,n.subscribe(a))}},{key:"_prune",value:function(){this._pruneRequest=null;for(var e=0,t=Object.keys(this._resources);e1&&void 0!==arguments[1]?arguments[1]:{},i=n.deck,r=n.stats,o=n.viewport,a=n.timeline;m(this,e),this.lastRenderedLayers=[],this.layers=[],this.resourceManager=new eI({gl:t,protocol:"deck://"}),this.context=I(M({},rI),{layerManager:this,gl:t,deck:i,programManager:t&&iI(t),stats:r||new Bk({id:"deck.gl"}),viewport:o||new JO({id:"DEFAULT-INITIAL-VIEWPORT"}),timeline:a||new ZM,resourceManager:this.resourceManager}),this._nextLayers=null,this._needsRedraw="Initial render",this._needsUpdate=!1,this._debug=!1,this.activateViewport=this.activateViewport.bind(this),Object.seal(this)}return b(e,[{key:"finalize",value:function(){this.resourceManager.finalize();var e,t=_(this.layers);try{for(t.s();!(e=t.n()).done;){var n=e.value;this._finalizeLayer(n)}}catch(i){t.e(i)}finally{t.f()}}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;e.clearRedrawFlags&&(this._needsRedraw=!1);var n,i=_(this.layers);try{for(i.s();!(n=i.n()).done;){var r=n.value,o=r.getNeedsRedraw(e);t=t||o}}catch(a){i.e(a)}finally{i.f()}return t}},{key:"needsUpdate",value:function(){return this._nextLayers&&this._nextLayers!==this.lastRenderedLayers?"layers changed":this._needsUpdate}},{key:"setNeedsRedraw",value:function(e){this._needsRedraw=this._needsRedraw||e}},{key:"setNeedsUpdate",value:function(e){this._needsUpdate=this._needsUpdate||e}},{key:"getLayers",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.layerIds,n=void 0===t?null:t;return n?this.layers.filter(function(e){return n.find(function(t){return 0===e.id.indexOf(t)})}):this.layers}},{key:"setProps",value:function(e){"debug"in e&&(this._debug=e.debug),"userData"in e&&(this.context.userData=e.userData),"layers"in e&&(this._nextLayers=e.layers),"onError"in e&&(this.context.onError=e.onError)}},{key:"setLayers",value:function(e,t){FS("layerManager.setLayers",this,t,e),this.lastRenderedLayers=e;var n,i=_(e=xS(e,Boolean));try{for(i.s();!(n=i.n()).done;){n.value.context=this.context}}catch(r){i.e(r)}finally{i.f()}return this._updateLayers(this.layers,e),this}},{key:"updateLayers",value:function(){var e=this.needsUpdate();e&&(this.setNeedsRedraw("updating layers: ".concat(e)),this.setLayers(this._nextLayers||this.lastRenderedLayers,e)),this._nextLayers=null}},{key:"activateViewport",value:function(e){return FS("layerManager.activateViewport",this,e),e&&(this.context.viewport=e),this}},{key:"_handleError",value:function(e,t,n){n.raiseError(t,"".concat(e," of ").concat(n))}},{key:"_updateLayers",value:function(e,t){var n,i={},r=_(e);try{for(r.s();!(n=r.n()).done;){var o=n.value;i[o.id]?Vw.warn("Multiple old layers with same id ".concat(o.id))():i[o.id]=o}}catch(l){r.e(l)}finally{r.f()}var a=[];this._updateSublayersRecursively(t,i,a),this._finalizeOldLayers(i);for(var s=!1,u=0,c=a;u0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.views=[],this.width=100,this.height=100,this.viewState={},this.controllers={},this.timeline=t.timeline,this._viewports=[],this._viewportMap={},this._isUpdating=!1,this._needsRedraw="Initial render",this._needsUpdate=!0,this._eventManager=t.eventManager,this._eventCallbacks={onViewStateChange:t.onViewStateChange,onInteractionStateChange:t.onInteractionStateChange},Object.seal(this),this.setProps(t)}return b(e,[{key:"finalize",value:function(){for(var e in this.controllers)this.controllers[e]&&this.controllers[e].finalize();this.controllers={}}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;return e.clearRedrawFlags&&(this._needsRedraw=!1),t}},{key:"setNeedsUpdate",value:function(e){this._needsUpdate=this._needsUpdate||e,this._needsRedraw=this._needsRedraw||e}},{key:"updateViewStates",value:function(){for(var e in this.controllers){var t=this.controllers[e];t&&t.updateTransition()}}},{key:"getViewports",value:function(e){return e?this._viewports.filter(function(t){return t.containsPixel(e)}):this._viewports}},{key:"getViews",value:function(){var e={};return this.views.forEach(function(t){e[t.id]=t}),e}},{key:"getView",value:function(e){return"string"==typeof e?this.views.find(function(t){return t.id===e}):e}},{key:"getViewState",value:function(e){var t=this.getView(e),n=t&&this.viewState[t.getViewStateId()]||this.viewState;return t?t.filterViewState(n):n}},{key:"getViewport",value:function(e){return this._viewportMap[e]}},{key:"unproject",value:function(e,t){for(var n=this.getViewports(),i={x:e[0],y:e[1]},r=n.length-1;r>=0;--r){var o=n[r];if(o.containsPixel(i)){var a=e.slice();return a[0]-=o.x,a[1]-=o.y,o.unproject(a,t)}}return null}},{key:"setProps",value:function(e){"views"in e&&this._setViews(e.views),"viewState"in e&&this._setViewState(e.viewState),("width"in e||"height"in e)&&this._setSize(e.width,e.height),this._isUpdating||this._update()}},{key:"_update",value:function(){this._isUpdating=!0,this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._isUpdating=!1}},{key:"_setSize",value:function(e,t){(e!==this.width||t!==this.height)&&(this.width=e,this.height=t,this.setNeedsUpdate("Size changed"))}},{key:"_setViews",value:function(e){e=xS(e,Boolean),this._diffViews(e,this.views)&&this.setNeedsUpdate("views changed"),this.views=e}},{key:"_setViewState",value:function(e){e?(!YP(e,this.viewState)&&this.setNeedsUpdate("viewState changed"),this.viewState=e):Vw.warn("missing `viewState` or `initialViewState`")()}},{key:"_onViewStateChange",value:function(e,t){t.viewId=e,this._eventCallbacks.onViewStateChange&&this._eventCallbacks.onViewStateChange(t)}},{key:"_createController",value:function(e,t){return new(0,t.type)(M({timeline:this.timeline,eventManager:this._eventManager,onViewStateChange:this._onViewStateChange.bind(this,t.id),onStateChange:this._eventCallbacks.onInteractionStateChange,makeViewport:function(t){return e._getViewport(t,{width:t.width,height:t.height})}},t))}},{key:"_updateController",value:function(e,t,n,i){var r=e.controller;return r?(r=I(M(M(M({},t),e.props),r),{id:e.id,x:n.x,y:n.y,width:n.width,height:n.height}),i?i.setProps(r):i=this._createController(e,r),i):null}},{key:"_rebuildViewports",value:function(){var e=this.width,t=this.height,n=this.views,i=this.controllers;this._viewports=[],this.controllers={};for(var r=!1,o=n.length;o--;){var a=n[o],s=this.getViewState(a),u=a.makeViewport({width:e,height:t,viewState:s}),c=i[a.id];a.controller&&!c&&(r=!0),(r||!a.controller)&&c&&(c.finalize(),c=null),this.controllers[a.id]=this._updateController(a,s,u,c),this._viewports.unshift(u)}for(var l in i)i[l]&&!this.controllers[l]&&i[l].finalize();this._buildViewportMap()}},{key:"_buildViewportMap",value:function(){var e=this;this._viewportMap={},this._viewports.forEach(function(t){t.id&&(e._viewportMap[t.id]=e._viewportMap[t.id]||t)})}},{key:"_diffViews",value:function(e,t){return e.length!==t.length||e.some(function(n,i){return!e[i].equals(t[i])})}}]),e}(),sI=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=i.makeViewport,o=i.width,a=i.height,s=i.latitude,u=i.longitude,c=i.zoom,l=i.bearing,h=void 0===l?0:l,d=i.pitch,f=void 0===d?0:d,p=i.altitude,v=void 0===p?1.5:p,g=i.maxZoom,y=void 0===g?20:g,b=i.minZoom,_=void 0===b?0:b,w=i.maxPitch,k=void 0===w?60:w,x=i.minPitch,S=void 0===x?0:x,E=i.startPanLngLat,C=i.startZoomLngLat,O=i.startRotatePos,T=i.startBearing,A=i.startPitch,P=i.startZoom,M=i.normalize;return m(this,n),yS(Number.isFinite(u)),yS(Number.isFinite(s)),yS(Number.isFinite(c)),(e=t.call(this,{width:o,height:a,latitude:s,longitude:u,zoom:c,bearing:h,pitch:f,altitude:v,maxZoom:y,minZoom:_,maxPitch:k,minPitch:S,normalize:M}))._state={startPanLngLat:E,startZoomLngLat:C,startRotatePos:O,startBearing:T,startPitch:A,startZoom:P},e.makeViewport=r,e}return b(n,[{key:"panStart",value:function(e){var t=e.pos;return this._getUpdatedState({startPanLngLat:this._unproject(t)})}},{key:"pan",value:function(e){var t=e.pos,n=e.startPos,i=this._state.startPanLngLat||this._unproject(n);if(!i)return this;var r=this.makeViewport(this._viewportProps).panByPosition(i,t);return this._getUpdatedState(r)}},{key:"panEnd",value:function(){return this._getUpdatedState({startPanLngLat:null})}},{key:"rotateStart",value:function(e){var t=e.pos;return this._getUpdatedState({startRotatePos:t,startBearing:this._viewportProps.bearing,startPitch:this._viewportProps.pitch})}},{key:"rotate",value:function(e){var t,n=e.pos,i=e.deltaAngleX,r=void 0===i?0:i,o=e.deltaAngleY,a=void 0===o?0:o,s=this._state,u=s.startRotatePos,c=s.startBearing,l=s.startPitch;return u&&Number.isFinite(c)&&Number.isFinite(l)?(t=n?this._calculateNewPitchAndBearing(I(M({},this._getRotationParams(n,u)),{startBearing:c,startPitch:l})):{bearing:c+r,pitch:l+a},this._getUpdatedState(t)):this}},{key:"rotateEnd",value:function(){return this._getUpdatedState({startBearing:null,startPitch:null})}},{key:"zoomStart",value:function(e){var t=e.pos;return this._getUpdatedState({startZoomLngLat:this._unproject(t),startZoom:this._viewportProps.zoom})}},{key:"zoom",value:function(e){var t=e.pos,n=e.startPos,i=e.scale,r=this._state,o=r.startZoom,a=r.startZoomLngLat;Number.isFinite(o)||(o=this._viewportProps.zoom,a=this._unproject(n)||this._unproject(t));var s=this._calculateNewZoom({scale:i,startZoom:o}),u=this.makeViewport(I(M({},this._viewportProps),{zoom:s}));return this._getUpdatedState(M({zoom:s},u.panByPosition(a,t)))}},{key:"zoomEnd",value:function(){return this._getUpdatedState({startZoomLngLat:null,startZoom:null})}},{key:"zoomIn",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._zoomFromCenter(e)}},{key:"zoomOut",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:2;return this._zoomFromCenter(1/e)}},{key:"moveLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([e,0])}},{key:"moveRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([-e,0])}},{key:"moveUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([0,e])}},{key:"moveDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;return this._panFromCenter([0,-e])}},{key:"rotateLeft",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({bearing:this._viewportProps.bearing-e})}},{key:"rotateRight",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:15;return this._getUpdatedState({bearing:this._viewportProps.bearing+e})}},{key:"rotateUp",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({pitch:this._viewportProps.pitch+e})}},{key:"rotateDown",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:10;return this._getUpdatedState({pitch:this._viewportProps.pitch-e})}},{key:"shortestPathFrom",value:function(e){var t=e.getViewportProps(),n=M({},this._viewportProps),i=n.bearing,r=n.longitude;return Math.abs(i-t.bearing)>180&&(n.bearing=i<0?i+360:i-360),Math.abs(r-t.longitude)>180&&(n.longitude=r<0?r+360:r-360),n}},{key:"_zoomFromCenter",value:function(e){var t=this._viewportProps,n=t.width,i=t.height;return this.zoom({pos:[n/2,i/2],scale:e})}},{key:"_panFromCenter",value:function(e){var t=this._viewportProps,n=t.width,i=t.height;return this.pan({startPos:[n/2,i/2],pos:[n/2+e[0],i/2+e[1]]})}},{key:"_getUpdatedState",value:function(e){return new this.constructor(M(M(M({makeViewport:this.makeViewport},this._viewportProps),this._state),e))}},{key:"_applyConstraints",value:function(e){var t=e.maxZoom,n=e.minZoom,i=e.zoom;e.zoom=Gx(i,n,t);var r=e.maxPitch,o=e.minPitch,a=e.pitch;e.pitch=Gx(a,o,r);var s=e.normalize;return(void 0===s||s)&&Object.assign(e,function(e){var t=e.width,n=e.height,i=e.longitude,r=e.latitude,o=e.zoom,a=e.pitch,s=void 0===a?0:a,u=e.bearing,c=void 0===u?0:u;(i<-180||i>180)&&(i=CO(i+180,360)-180),(c<-180||c>180)&&(c=CO(c+180,360)-180);var l=OO(n/512);if(o<=l)o=l,r=0;else{var h=n/2/Math.pow(2,o),d=NO([0,h])[1];if(rf&&(r=f)}}return{width:t,height:n,longitude:i,latitude:r,zoom:o,pitch:s,bearing:c}}(e)),e}},{key:"_unproject",value:function(e){var t=this.makeViewport(this._viewportProps);return e&&t.unproject(e)}},{key:"_calculateNewZoom",value:function(e){var t=e.scale,n=e.startZoom,i=this._viewportProps,r=i.maxZoom,o=i.minZoom;return Gx(n+Math.log2(t),o,r)}},{key:"_calculateNewPitchAndBearing",value:function(e){var t=e.deltaScaleX,n=e.deltaScaleY,i=e.startBearing,r=e.startPitch;n=Gx(n,-1,1);var o=this._viewportProps,a=o.minPitch,s=o.maxPitch,u=r;return n>0?u=r+n*(s-r):n<0&&(u=r-n*(a-r)),{pitch:u,bearing:i+180*t}}},{key:"_getRotationParams",value:function(e,t){var n=e[0]-t[0],i=e[1]-t[1],r=e[1],o=t[1],a=this._viewportProps,s=a.width,u=a.height,c=n/s,l=0;return i>0?Math.abs(u-o)>5&&(l=i/(o-u)*1.2):i<0&&o>5&&(l=1-r/o),{deltaScaleX:c,deltaScaleY:l=Math.min(1,Math.max(-1,l))}}}]),n}(dM),uI=function(t){a(i,t);var n=s(i);function i(e){return m(this,i),e.dragMode=e.dragMode||"pan",n.call(this,sI,e)}return b(i,[{key:"setProps",value:function(t){var n=this.controllerStateProps;e(p(i.prototype),"setProps",this).call(this,t),(!n||n.height!==t.height)&&this.updateViewport(new this.ControllerState(M(M({makeViewport:this.makeViewport},this.controllerStateProps),this._state)))}},{key:"linearTransitionProps",get:function(){return["longitude","latitude","zoom","bearing","pitch"]}}]),i}(hM),cI=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,I(M({},e),{type:eT}))}return b(n,[{key:"controller",get:function(){return this._getControllerProps({type:uI})}}]),n}(KP);return e.displayName="MapView",e}(),lI=new KM,hI=function(){function e(){m(this,e),this.effects=[],this._internalEffects=[],this._needsRedraw="Initial render",this.setEffects()}return b(e,[{key:"setProps",value:function(e){"effects"in e&&(e.effects.length!==this.effects.length||!YP(e.effects,this.effects))&&(this.setEffects(e.effects),this._needsRedraw="effects changed")}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;return e.clearRedrawFlags&&(this._needsRedraw=!1),t}},{key:"getEffects",value:function(){return this._internalEffects}},{key:"finalize",value:function(){this.cleanup()}},{key:"setEffects",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.cleanup(),this.effects=e,this._createInternalEffects()}},{key:"cleanup",value:function(){var e,t=_(this.effects);try{for(t.s();!(e=t.n()).done;){e.value.cleanup()}}catch(r){t.e(r)}finally{t.f()}var n,i=_(this._internalEffects);try{for(i.s();!(n=i.n()).done;){n.value.cleanup()}}catch(r){i.e(r)}finally{i.f()}this.effects.length=0,this._internalEffects.length=0}},{key:"_createInternalEffects",value:function(){this._internalEffects=this.effects.slice(),this.effects.some(function(e){return e instanceof KM})||this._internalEffects.push(lI)}}]),e}(),dI=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(RM),fI={blendFunc:[1,0,32771,0],blendEquation:32774},pI=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"render",value:function(t){t.pickingFBO?(this.useAlpha=!0,this._drawPickingBuffer(t)):(this.useAlpha=!1,e(p(i.prototype),"render",this).call(this,t))}},{key:"_drawPickingBuffer",value:function(t){var n=this,r=t.layers,o=t.layerFilter,a=t.views,s=t.viewports,u=t.onViewportActive,c=t.pickingFBO,l=t.deviceRect,h=l.x,d=l.y,f=l.width,v=l.height,g=t.pass,m=void 0===g?"picking":g,y=t.redrawReason,b=t.pickZ,_=this.gl;return this.pickZ=b,Ok(_,I(M({scissorTest:!0,scissor:[h,d,f,v],clearColor:[0,0,0,0],depthMask:!0,depthTest:!0,depthRange:[0,1],colorMask:[!0,!0,!0,!0]},fI),{blend:!b}),function(){e(p(i.prototype),"render",n).call(n,{target:c,layers:r,layerFilter:o,views:a,viewports:s,onViewportActive:u,pass:m,redrawReason:y})})}},{key:"shouldDrawLayer",value:function(e){return e.props.pickable}},{key:"getModuleParameters",value:function(){return{pickingActive:1,pickingAttribute:this.pickZ,lightSources:{}}}},{key:"getLayerParameters",value:function(e,t){var n=this.pickZ?{blend:!1}:I(M({},fI),{blend:!0,blendColor:[0,0,0,this.useAlpha?(t+1)/255:1]});return M(M({},e.props.parameters),n)}}]),i}(RM),vI=function(){function e(t){m(this,e),this.gl=t,this.layerFilter=null,this.drawPickingColors=!1,this.drawLayersPass=new dI(t),this.pickLayersPass=new pI(t),this.renderCount=0,this._needsRedraw="Initial render",this.renderBuffers=[],this.lastPostProcessEffect=null}return b(e,[{key:"setProps",value:function(e){"layerFilter"in e&&this.layerFilter!==e.layerFilter&&(this.layerFilter=e.layerFilter,this._needsRedraw="layerFilter changed"),"drawPickingColors"in e&&this.drawPickingColors!==e.drawPickingColors&&(this.drawPickingColors=e.drawPickingColors,this._needsRedraw="drawPickingColors changed")}},{key:"renderLayers",value:function(e){var t=this.drawPickingColors?this.pickLayersPass:this.drawLayersPass;e.layerFilter=this.layerFilter,e.effects=e.effects||[],e.target=e.target||Mx.getDefaultFramebuffer(this.gl),this._preRender(e.effects,e);var n=this.lastPostProcessEffect?this.renderBuffers[0]:e.target,i=t.render(I(M({},e),{target:n}));this._postRender(e.effects,e),this.renderCount++,FS("deckRenderer.renderLayers",this,i,e)}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1},t=this._needsRedraw;return e.clearRedrawFlags&&(this._needsRedraw=!1),t}},{key:"finalize",value:function(){var e,t=this.renderBuffers,n=_(t);try{for(n.s();!(e=n.n()).done;){e.value.delete()}}catch(i){n.e(i)}finally{n.f()}t.length=0}},{key:"_preRender",value:function(e,t){var n,i=null,r=_(e);try{for(r.s();!(n=r.n()).done;){var o=n.value;o.preRender(this.gl,t),o.postRender&&(i=o)}}catch(a){r.e(a)}finally{r.f()}i&&this._resizeRenderBuffers(),this.lastPostProcessEffect=i}},{key:"_resizeRenderBuffers",value:function(){var e=this.renderBuffers;0===e.length&&e.push(new Mx(this.gl),new Mx(this.gl));var t,n=_(e);try{for(n.s();!(t=n.n()).done;){t.value.resize()}}catch(i){n.e(i)}finally{n.f()}}},{key:"_postRender",value:function(e,t){var n,i=this.renderBuffers,r={inputBuffer:i[0],swapBuffer:i[1],target:null},o=_(e);try{for(o.s();!(n=o.n()).done;){var a=n.value;if(a.postRender){if(a===this.lastPostProcessEffect){r.target=t.target,a.postRender(this.gl,r);break}var s=a.postRender(this.gl,r);r.inputBuffer=s,r.swapBuffer=s===i[0]?i[1]:i[0]}}}catch(u){o.e(u)}finally{o.f()}}}]),e}(),gI={pickedColor:null,pickedLayer:null,pickedObjectIndex:-1};function mI(e){var t=e.pickedColors,n=e.layers,i=e.deviceX,r=e.deviceY,o=e.deviceRadius,a=e.deviceRect;if(t){for(var s=a.x,u=a.y,c=a.width,l=a.height,h=o*o,d=-1,f=0,p=0;ph)f+=4*c;else for(var m=0;m=0){var y=m+s-i,b=y*y+g;b<=h&&(h=b,d=f)}f+=4}}if(d>=0){var _=t[d+3]-1,w=t.slice(d,d+4),k=n[_];if(k){var x=k.decodePickingColor(w),S=Math.floor(d/4/c);return{pickedColor:w,pickedLayer:k,pickedObjectIndex:x,pickedX:s+(d/4-S*c),pickedY:u+S}}Vw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}return gI}function yI(e){var t=e.pickInfo,n=e.mode,i=e.viewports,r=e.layerFilter,o=e.pixelRatio,a=e.x,s=e.y,u=e.z,c=t&&t.pickedLayer,l=function(e,t,n){for(var i=e.length-1;i>=0;i--){var r=e[i];if(r.containsPixel(t)&&(!n||n(r)))return r}return e[0]}(i,{x:a,y:s},r&&c&&function(e){return r({layer:c,viewport:e,isPicking:!0,renderPass:"picking:".concat(n)})}),h=l&&l.unproject([a-l.x,s-l.y],{targetZ:u});return{color:null,layer:null,viewport:l,index:-1,picked:!1,x:a,y:s,pixel:[a,s],coordinate:h,devicePixel:t&&[t.pickedX,t.pickedY],pixelRatio:o}}function bI(e){var t=e.pickInfo,n=e.lastPickedInfo,i=e.mode,r=e.layers,o=t.pickedColor,a=t.pickedLayer,s=t.pickedObjectIndex,u=a?[a]:[];if("hover"===i){var c=n.index,l=n.layerId,h=a&&a.props.id;if(h!==l||s!==c){if(h!==l){var d=r.find(function(e){return e.props.id===l});d&&u.unshift(d)}n.layerId=h,n.index=s,n.info=null}}var f=yI(e),p=new Map;return p.set(null,f),u.forEach(function(e){var t=M({},f);e===a&&(t.color=o,t.index=s,t.picked=!0),t=_I({layer:e,info:t,mode:i}),e===a&&"hover"===i&&(n.info=t),p.set(t.layer.id,t),"hover"===i&&t.layer.updateAutoHighlight(t)}),p}function _I(e){for(var t=e.layer,n=e.info,i=e.mode;t&&n;){var r=n.layer||null;n.sourceLayer=r,n.layer=t,n=t.getPickingInfo({info:n,mode:i,sourceLayer:r}),t=t.parent}return n}var wI=function(){function e(t){m(this,e),this.gl=t,this.pickingFBO=null,this.pickLayersPass=new pI(t),this.layerFilter=null,this.lastPickedInfo={index:-1,layerId:null,info:null}}return b(e,[{key:"setProps",value:function(e){"layerFilter"in e&&(this.layerFilter=e.layerFilter),"_pickable"in e&&(this._pickable=e._pickable)}},{key:"finalize",value:function(){this.pickingFBO&&this.pickingFBO.delete(),this.depthFBO&&(this.depthFBO.color.delete(),this.depthFBO.delete())}},{key:"pickObject",value:function(e){return this._pickClosestObject(e)}},{key:"pickObjects",value:function(e){return this._pickVisibleObjects(e)}},{key:"getLastPickedObject",value:function(e){var t=e.x,n=e.y,i=e.layers,r=e.viewports,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.lastPickedInfo.info,a=o&&o.layer&&o.layer.id,s=o&&o.viewport&&o.viewport.id,u=a?i.find(function(e){return e.id===a}):null,c=s&&r.find(function(e){return e.id===s})||r[0],l=c&&c.unproject([t-c.x,n-c.y]),h={x:t,y:n,viewport:c,coordinate:l,layer:u};return u?M(M({},o),h):Object.assign(h,{color:null,object:null,index:-1})}},{key:"_resizeBuffer",value:function(){var e=this.gl;return this.pickingFBO||(this.pickingFBO=new Mx(e),Mx.isSupported(e,{colorBufferFloat:!0})&&(this.depthFBO=new Mx(e),this.depthFBO.attach({36064:new gx(e,{format:Xw(e)?34836:6408,type:5126})}))),this.pickingFBO.resize({width:e.canvas.width,height:e.canvas.height}),this.depthFBO&&this.depthFBO.resize({width:e.canvas.width,height:e.canvas.height}),this.pickingFBO}},{key:"_getPickable",value:function(e){if(!1===this._pickable)return null;var t=e.filter(function(e){return e.isPickable()&&!e.isComposite});return t.length>255?(Vw.warn("Too many pickable layers, only picking the first 255")(),t.slice(0,255)):t.length?t:null}},{key:"_pickClosestObject",value:function(e){var t=e.layers,n=e.views,i=e.viewports,r=e.x,o=e.y,a=e.radius,s=void 0===a?0:a,u=e.depth,c=void 0===u?1:u,l=e.mode,h=void 0===l?"query":l,d=e.unproject3D,f=e.onViewportActive;if(!(t=this._getPickable(t)))return{result:[],emptyInfo:yI({viewports:i,x:r,y:o})};this._resizeBuffer();for(var p,v=Tk(this.gl),g=Ak(this.gl,[r,o],!0),m=[g.x+Math.floor(g.width/2),g.y+Math.floor(g.height/2)],y=Math.round(s*v),b=this.pickingFBO,w=b.width,k=b.height,x=this._getPickingRect({deviceX:m[0],deviceY:m[1],deviceRadius:y,deviceWidth:w,deviceHeight:k}),S=[],E={},C=0;C=0){var a=t.slice(r,r+4),s=a.join(",");if(!i.has(s)){var u=n[o];u?i.set(s,{pickedColor:a,pickedLayer:u,pickedObjectIndex:u.decodePickingColor(a)}):Vw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}}return Array.from(i.values())}({pickedColors:this._drawAndSample({layers:t,views:n,viewports:i,onViewportActive:p,deviceRect:{x:m,y:_,width:b.x+b.width-m,height:y-_},pass:"picking:".concat(h),redrawReason:h}),layers:t}),k=new Map,x=Number.isFinite(f),S=0;S=f);S++){var E=w[S],C={color:E.pickedColor,layer:null,index:E.pickedObjectIndex,picked:!0,x:r,y:o,width:s,height:c,pixelRatio:v};C=_I({layer:E.pickedLayer,info:C,mode:h}),k.has(C.object)||k.set(C.object,C)}return Array.from(k.values())}},{key:"_drawAndSample",value:function(e){var t=e.layers,n=e.views,i=e.viewports,r=e.onViewportActive,o=e.deviceRect,a=e.pass,s=e.redrawReason,u=e.pickZ;if(t.length<1)return null;var c=u?this.depthFBO:this.pickingFBO;this.pickLayersPass.render({layers:t,layerFilter:this.layerFilter,views:n,viewports:i,onViewportActive:r,pickingFBO:c,deviceRect:o,pass:a,redrawReason:s,pickZ:u});var l=o.x,h=o.y,d=o.width,f=o.height,p=new(u?Float32Array:Uint8Array)(d*f*4);return Tx(c,{sourceX:l,sourceY:h,sourceWidth:d,sourceHeight:f,target:p}),p}},{key:"_getPickingRect",value:function(e){var t=e.deviceX,n=e.deviceY,i=e.deviceRadius,r=e.deviceWidth,o=e.deviceHeight,a=Math.max(0,t-i),s=Math.max(0,n-i),u=Math.min(r,t+i+1)-a,c=Math.min(o,n+i+1)-s;return u<=0||c<=0?null:{x:a,y:s,width:u,height:c}}}]),e}(),kI={zIndex:1,position:"absolute",pointerEvents:"none",color:"#a0a7b4",backgroundColor:"#29323c",padding:"10px",top:0,left:0,display:"none"},xI=function(){function e(t){m(this,e);var n=t.parentElement;n&&(this.el=document.createElement("div"),this.el.className="deck-tooltip",Object.assign(this.el.style,kI),n.appendChild(this.el)),this.isVisible=!1}return b(e,[{key:"setTooltip",value:function(e,t,n){var i=this.el;if("string"==typeof e)i.innerText=e;else{if(!e)return this.isVisible=!1,void(i.style.display="none");"text"in e&&(i.innerText=e.text),"html"in e&&(i.innerHTML=e.html),"className"in e&&(i.className=e.className),Object.assign(i.style,e.style)}this.isVisible=!0,i.style.display="block",i.style.transform="translate(".concat(t,"px, ").concat(n,"px)")}},{key:"remove",value:function(){this.el&&this.el.remove()}}]),e}();function SI(e,t){if(!e)throw new Error(t)}var EI={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},CI=EI.global||EI.self||EI.window,OI="object"!=typeof process||"[object process]"!==String(process)||process.browser,TI="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),AI=(TI&&parseFloat(TI[1]),CI)._parseImageNode,PI="undefined"!=typeof Image,MI="undefined"!=typeof ImageBitmap,II=Boolean(AI),RI=!!OI||II;function DI(e){switch(function(e){var t=function(e){return"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap?"imagebitmap":"undefined"!=typeof Image&&e instanceof Image?"image":e&&"object"==typeof e&&e.data&&e.width&&e.height?"data":null}(e);if(!t)throw new Error("Not an image");return t}(e)){case"data":return e;case"image":case"imagebitmap":var t=document.createElement("canvas"),n=t.getContext("2d");if(!n)throw new Error("getImageData");return t.width=e.width,t.height=e.height,n.drawImage(e,0,0),n.getImageData(0,0,e.width,e.height);default:throw new Error("getImageData")}}var NI=/^data:image\/svg\+xml/,LI=/\.svg((\?|#).*)?$/;function jI(e){return e&&(NI.test(e)||LI.test(e))}function FI(e,t){if(jI(t)){var n=(new TextDecoder).decode(e);try{"function"==typeof unescape&&"function"==typeof encodeURIComponent&&(n=unescape(encodeURIComponent(n)))}catch(i){throw new Error(i.message)}return"data:image/svg+xml;base64,".concat(btoa(n))}return BI(e,t)}function BI(e,t){if(jI(t))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(e)])}function VI(e,t,n){return zI.apply(this,arguments)}function zI(){return(zI=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=FI(t,i),o=self.URL||self.webkitURL,a="string"!=typeof r&&o.createObjectURL(r),e.prev=1,e.next=4,UI(a||r,n);case 4:return e.abrupt("return",e.sent);case 5:return e.prev=5,a&&o.revokeObjectURL(a),e.finish(5);case 8:case"end":return e.stop()}},e,null,[[1,,5,8]])}))).apply(this,arguments)}function UI(e,t){return HI.apply(this,arguments)}function HI(){return(HI=xx(regeneratorRuntime.mark(function e(t,n){var i;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if((i=new Image).src=t,!(n.image&&n.image.decode&&i.decode)){e.next=8;break}return e.next=5,i.decode();case 5:e.t0=i,e.next=11;break;case 8:return e.next=10,new Promise(function(e,n){try{i.onload=function(){return e(i)},i.onerror=function(e){return n(new Error("Could not load image ".concat(t,": ").concat(e)))}}catch(r){n(r)}});case 10:e.t0=e.sent;case 11:return e.abrupt("return",e.t0);case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}var GI={},WI=!0;function qI(e,t,n){return XI.apply(this,arguments)}function XI(){return(XI=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!jI(i)){e.next=6;break}return e.next=3,VI(t,n,i);case 3:e.t0=e.sent,e.next=7;break;case 6:e.t0=BI(t,i);case 7:return r=e.t0,o=n&&n.imagebitmap,e.next=11,YI(r,o);case 11:return e.abrupt("return",e.sent);case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}function YI(e){return KI.apply(this,arguments)}function KI(){return(KI=xx(regeneratorRuntime.mark(function e(t){var n,i=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(($I(n=i.length>1&&void 0!==i[1]?i[1]:null)||!WI)&&(n=null),!n){e.next=11;break}return e.prev=2,e.next=5,createImageBitmap(t,n);case 5:return e.abrupt("return",e.sent);case 8:e.prev=8,e.t0=e.catch(2),console.warn(e.t0),WI=!1;case 11:return e.next=13,createImageBitmap(t);case 13:return e.abrupt("return",e.sent);case 14:case"end":return e.stop()}},e,null,[[2,8]])}))).apply(this,arguments)}function $I(e){for(var t in e||GI)return!1;return!0}var QI=!1,ZI=!0;function JI(e){var t=eR(e);return function(e){var t=eR(e);return t.byteLength>=24&&2303741511===t.getUint32(0,QI)?{mimeType:"image/png",width:t.getUint32(16,QI),height:t.getUint32(20,QI)}:null}(t)||function(e){var t=eR(e);if(!(t.byteLength>=3&&65496===t.getUint16(0,QI)&&255===t.getUint8(2)))return null;for(var n=function(){for(var e=new Set([65499,65476,65484,65501,65534]),t=65504;t<65520;++t)e.add(t);return{tableMarkers:e,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}(),i=n.tableMarkers,r=n.sofMarkers,o=2;o+9=10&&1195984440===t.getUint32(0,QI)?{mimeType:"image/gif",width:t.getUint16(6,ZI),height:t.getUint16(8,ZI)}:null}(t)||function(e){var t=eR(e);return t.byteLength>=14&&16973===t.getUint16(0,QI)&&t.getUint32(2,ZI)===t.byteLength?{mimeType:"image/bmp",width:t.getUint32(18,ZI),height:t.getUint32(22,ZI)}:null}(t)}function eR(e){if(e instanceof DataView)return e;if(ArrayBuffer.isView(e))return new DataView(e.buffer);if(e instanceof ArrayBuffer)return new DataView(e);throw new Error("toDataView")}function tR(e,t){var n=(JI(e)||{}).mimeType,i=CI._parseImageNode;return SI(i),i(e,n,t)}function nR(){return(nR=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:r=((n=n||{}).image||{}).type||"auto",o=(i||{}).url,e.t0=iR(r),e.next="imagebitmap"===e.t0?4:"image"===e.t0?8:"data"===e.t0?12:16;break;case 4:return e.next=6,qI(t,n,o);case 6:return a=e.sent,e.abrupt("break",17);case 8:return e.next=10,VI(t,n,o);case 10:return a=e.sent,e.abrupt("break",17);case 12:return e.next=14,tR(t,n);case 14:return a=e.sent,e.abrupt("break",17);case 16:SI(!1);case 17:return e.abrupt("return",("data"===r&&(a=DI(a)),a));case 18:case"end":return e.stop()}},e)}))).apply(this,arguments)}function iR(e){switch(e){case"auto":case"data":return function(){if(MI)return"imagebitmap";if(PI)return"image";if(RI)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}();default:return function(e){switch(e){case"auto":return MI||PI||RI;case"imagebitmap":return MI;case"image":return PI;case"data":return RI;default:throw new Error("@loaders.gl/images: image ".concat(e," not supported in this environment"))}}(e),e}}var rR={id:"image",module:"images",name:"Images",version:"3.0.12",mimeTypes:["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],extensions:["png","jpg","jpeg","gif","webp","bmp","ico","svg"],parse:function(e,t,n){return nR.apply(this,arguments)},tests:[function(e){return Boolean(JI(new DataView(e)))}],options:{image:{type:"auto",decode:!0}}},oR={name:"JSON",extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:function(e){var t=e[0],n=e[e.length-1];return"{"===t&&"}"===n||"["===t&&"]"===n},parseTextSync:JSON.parse},aR="8.5.8",sR=$w.CO.deck&&$w.CO.deck.VERSION;if(sR&&sR!==aR)throw new Error("deck.gl - multiple versions detected: ".concat(sR," vs ").concat(aR));sR||(Vw.log(1,"deck.gl ".concat(aR))(),$w.CO.deck=Object.assign($w.CO.deck||{},{VERSION:aR,version:aR,log:Vw,_registerLoggers:function(e){jS=e}}),wP([oR,[rR,{imagebitmap:{premultiplyAlpha:"none"}}]]));var uR=$w.CO.deck,cR=function(e){a(n,e);var t=s(n);function n(e){var i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return m(this,n),(i=t.call(this,e,r)).target=null,i._queryPending=!1,i._pollingPromise=null,Object.seal(c(i)),i}return b(n,[{key:"beginTimeElapsedQuery",value:function(){return this.begin(35007)}},{key:"beginOcclusionQuery",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.conservative,n=void 0!==t&&t;return this.begin(n?36202:35887)}},{key:"beginTransformFeedbackQuery",value:function(){return this.begin(35976)}},{key:"begin",value:function(e){return this._queryPending||(this.target=e,this.gl2.beginQuery(this.target,this.handle)),this}},{key:"end",value:function(){return this._queryPending||this.target&&(this.gl2.endQuery(this.target),this.target=null,this._queryPending=!0),this}},{key:"isResultAvailable",value:function(){if(!this._queryPending)return!1;var e=this.gl2.getQueryParameter(this.handle,34919);return e&&(this._queryPending=!1),e}},{key:"isTimerDisjoint",value:function(){return this.gl2.getParameter(36795)}},{key:"getResult",value:function(){return this.gl2.getQueryParameter(this.handle,34918)}},{key:"getTimerMilliseconds",value:function(){return this.getResult()/1e6}},{key:"createPoll",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.POSITIVE_INFINITY;if(this._pollingPromise)return this._pollingPromise;var n=0;return this._pollingPromise=new Promise(function(i,r){requestAnimationFrame(function o(){e.isResultAvailable()?(i(e.getResult()),e._pollingPromise=null):n++>t?(r("Timed out"),e._pollingPromise=null):requestAnimationFrame(o)})}),this._pollingPromise}},{key:"_createHandle",value:function(){return n.isSupported(this.gl)?this.gl2.createQuery():null}},{key:"_deleteHandle",value:function(){this.gl2.deleteQuery(this.handle)}}],[{key:"isSupported",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=Xw(e),r=Dx(e,"TIMER_QUERY"),o=i||r,a=_(n);try{for(a.s();!(t=a.n()).done;){var s=t.value;switch(s){case"queries":o=o&&i;break;case"timers":o=o&&r;break;default:Uk(!1)}}}catch(u){a.e(u)}finally{a.f()}return o}}]),n}(Qk),lR=(0,$w.jU)()&&"undefined"!=typeof document,hR=0,dR=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.onCreateContext,i=void 0===n?function(e){return Nk(e)}:n,r=t.onAddHTML,o=void 0===r?null:r,a=t.onInitialize,s=void 0===a?function(){}:a,u=t.onRender,c=void 0===u?function(){}:u,l=t.onFinalize,h=void 0===l?function(){}:l,d=t.onError,f=t.gl,p=void 0===f?null:f,v=t.glOptions,g=void 0===v?{}:v,y=t.debug,b=void 0!==y&&y,_=t.createFramebuffer,w=void 0!==_&&_,k=t.autoResizeViewport,x=void 0===k||k,S=t.autoResizeDrawingBuffer,E=void 0===S||S,C=t.stats,O=void 0===C?zk.get("animation-loop-"+hR++):C,T=t.useDevicePixels,A=void 0===T||T;"useDevicePixelRatio"in t&&(Gw.deprecated("useDevicePixelRatio","useDevicePixels")(),A=t.useDevicePixelRatio),this.props={onCreateContext:i,onAddHTML:o,onInitialize:s,onRender:c,onFinalize:h,onError:d,gl:p,glOptions:g,debug:b,createFramebuffer:w},this.gl=p,this.needsRedraw=null,this.timeline=null,this.stats=O,this.cpuTime=this.stats.get("CPU Time"),this.gpuTime=this.stats.get("GPU Time"),this.frameRate=this.stats.get("Frame Rate"),this._initialized=!1,this._running=!1,this._animationFrameId=null,this._nextFramePromise=null,this._resolveNextFrame=null,this._cpuStartTime=0,this.setProps({autoResizeViewport:x,autoResizeDrawingBuffer:E,useDevicePixels:A}),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this._pageLoadPromise=null,this._onMousemove=this._onMousemove.bind(this),this._onMouseleave=this._onMouseleave.bind(this)}return b(e,[{key:"delete",value:function(){this.stop(),this._setDisplay(null)}},{key:"setNeedsRedraw",value:function(e){return Uk("string"==typeof e),this.needsRedraw=this.needsRedraw||e,this}},{key:"setProps",value:function(e){return"autoResizeViewport"in e&&(this.autoResizeViewport=e.autoResizeViewport),"autoResizeDrawingBuffer"in e&&(this.autoResizeDrawingBuffer=e.autoResizeDrawingBuffer),"useDevicePixels"in e&&(this.useDevicePixels=e.useDevicePixels),this}},{key:"start",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(this._running)return this;this._running=!0;var n=this._getPageLoadPromise().then(function(){return!e._running||e._initialized?null:(e._createWebGLContext(t),e._createFramebuffer(),e._startEventHandling(),e._initializeCallbackData(),e._updateCallbackData(),e._resizeCanvasDrawingBuffer(),e._resizeViewport(),e._gpuTimeQuery=cR.isSupported(e.gl,["timers"])?new cR(e.gl):null,e._initialized=!0,e.onInitialize(e.animationProps))}).then(function(t){e._running&&(e._addCallbackData(t||{}),!1!==t&&e._startLoop())});return this.props.onError&&n.catch(this.props.onError),this}},{key:"redraw",value:function(){return this.isContextLost()||(this._beginTimers(),this._setupFrame(),this._updateCallbackData(),this._renderFrame(this.animationProps),this._clearNeedsRedraw(),this.offScreen&&this.gl.commit&&this.gl.commit(),this._resolveNextFrame&&(this._resolveNextFrame(this),this._nextFramePromise=null,this._resolveNextFrame=null),this._endTimers()),this}},{key:"stop",value:function(){return this._running&&(this._finalizeCallbackData(),this._cancelAnimationFrame(this._animationFrameId),this._nextFramePromise=null,this._resolveNextFrame=null,this._animationFrameId=null,this._running=!1),this}},{key:"attachTimeline",value:function(e){return this.timeline=e,this.timeline}},{key:"detachTimeline",value:function(){this.timeline=null}},{key:"waitForRender",value:function(){var e=this;return this.setNeedsRedraw("waitForRender"),this._nextFramePromise||(this._nextFramePromise=new Promise(function(t){e._resolveNextFrame=t})),this._nextFramePromise}},{key:"toDataURL",value:function(){var e=this;return xx(regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.setNeedsRedraw("toDataURL"),t.next=3,e.waitForRender();case 3:return t.abrupt("return",e.gl.canvas.toDataURL());case 4:case"end":return t.stop()}},t)}))()}},{key:"isContextLost",value:function(){return this.gl.isContextLost()}},{key:"onCreateContext",value:function(){var e;return(e=this.props).onCreateContext.apply(e,arguments)}},{key:"onInitialize",value:function(){var e;return(e=this.props).onInitialize.apply(e,arguments)}},{key:"onRender",value:function(){var e;return(e=this.props).onRender.apply(e,arguments)}},{key:"onFinalize",value:function(){var e;return(e=this.props).onFinalize.apply(e,arguments)}},{key:"getHTMLControlValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=document.getElementById(e);return n?Number(n.value):t}},{key:"setViewParameters",value:function(){return Gw.removed("AnimationLoop.setViewParameters","AnimationLoop.setProps")(),this}},{key:"_startLoop",value:function(){var e=this;this._cancelAnimationFrame(this._animationFrameId),this._animationFrameId=this._requestAnimationFrame(function t(){!e._running||(e.redraw(),e._animationFrameId=e._requestAnimationFrame(t))})}},{key:"_getPageLoadPromise",value:function(){return this._pageLoadPromise||(this._pageLoadPromise=lR?new Promise(function(e,t){lR&&"complete"===document.readyState?e(document):window.addEventListener("load",function(){e(document)})}):Promise.resolve({})),this._pageLoadPromise}},{key:"_setDisplay",value:function(e){this.display&&(this.display.delete(),this.display.animationLoop=null),e&&(e.animationLoop=this),this.display=e}},{key:"_cancelAnimationFrame",value:function(e){return this.display&&this.display.cancelAnimationFrame?this.display.cancelAnimationFrame(e):function(e){return"undefined"!=typeof window&&window.cancelAnimationFrame?window.cancelAnimationFrame(e):clearTimeout(e)}(e)}},{key:"_requestAnimationFrame",value:function(e){if(this._running)return this.display&&this.display.requestAnimationFrame?this.display.requestAnimationFrame(e):function(e){return"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame(e):setTimeout(e,1e3/60)}(e)}},{key:"_renderFrame",value:function(){var e;this.display?(e=this.display)._renderFrame.apply(e,arguments):this.onRender.apply(this,arguments)}},{key:"_clearNeedsRedraw",value:function(){this.needsRedraw=null}},{key:"_setupFrame",value:function(){this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._resizeFramebuffer()}},{key:"_initializeCallbackData",value:function(){this.animationProps={gl:this.gl,stop:this.stop,canvas:this.gl.canvas,framebuffer:this.framebuffer,useDevicePixels:this.useDevicePixels,needsRedraw:null,startTime:Date.now(),engineTime:0,tick:0,tock:0,time:0,_timeline:this.timeline,_loop:this,_animationLoop:this,_mousePosition:null}}},{key:"_updateCallbackData",value:function(){var e=this._getSizeAndAspect(),t=e.width,n=e.height,i=e.aspect;(t!==this.animationProps.width||n!==this.animationProps.height)&&this.setNeedsRedraw("drawing buffer resized"),i!==this.animationProps.aspect&&this.setNeedsRedraw("drawing buffer aspect changed"),this.animationProps.width=t,this.animationProps.height=n,this.animationProps.aspect=i,this.animationProps.needsRedraw=this.needsRedraw,this.animationProps.engineTime=Date.now()-this.animationProps.startTime,this.timeline&&this.timeline.update(this.animationProps.engineTime),this.animationProps.tick=Math.floor(this.animationProps.time/1e3*60),this.animationProps.tock++,this.animationProps.time=this.timeline?this.timeline.getTime():this.animationProps.engineTime,this.animationProps._offScreen=this.offScreen}},{key:"_finalizeCallbackData",value:function(){this.onFinalize(this.animationProps)}},{key:"_addCallbackData",value:function(e){"object"==typeof e&&null!==e&&(this.animationProps=Object.assign({},this.animationProps,e))}},{key:"_createWebGLContext",value:function(e){if(this.offScreen=e.canvas&&"undefined"!=typeof OffscreenCanvas&&e.canvas instanceof OffscreenCanvas,e=Object.assign({},e,this.props.glOptions),this.gl=this.props.gl?Lk(this.props.gl,e):this.onCreateContext(e),!qw(this.gl))throw new Error("AnimationLoop.onCreateContext - illegal context returned");(function(e){Ck(e,uk)})(this.gl),this._createInfoDiv()}},{key:"_createInfoDiv",value:function(){if(this.gl.canvas&&this.props.onAddHTML){var e=document.createElement("div");document.body.appendChild(e),e.style.position="relative";var t=document.createElement("div");t.style.position="absolute",t.style.left="10px",t.style.bottom="10px",t.style.width="300px",t.style.background="white",e.appendChild(this.gl.canvas),e.appendChild(t);var n=this.props.onAddHTML(t);n&&(t.innerHTML=n)}}},{key:"_getSizeAndAspect",value:function(){var e=this.gl.drawingBufferWidth,t=this.gl.drawingBufferHeight,n=1,i=this.gl.canvas;return i&&i.clientHeight?n=i.clientWidth/i.clientHeight:e>0&&t>0&&(n=e/t),{width:e,height:t,aspect:n}}},{key:"_resizeViewport",value:function(){this.autoResizeViewport&&this.gl.viewport(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight)}},{key:"_resizeCanvasDrawingBuffer",value:function(){this.autoResizeDrawingBuffer&&function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e.canvas)!function(e,t,n){var i="width"in n?n.width:e.canvas.clientWidth,r="height"in n?n.height:e.canvas.clientHeight;(!i||!r)&&(Gw.log(1,"Canvas clientWidth/clientHeight is 0")(),t=1,i=e.canvas.width||1,r=e.canvas.height||1),e.luma=e.luma||{},e.luma.canvasSizeInfo=e.luma.canvasSizeInfo||{};var o=e.luma.canvasSizeInfo;if(o.clientWidth!==i||o.clientHeight!==r||o.devicePixelRatio!==t){var a=t,s=Math.floor(i*a),u=Math.floor(r*a);e.canvas.width=s,e.canvas.height=u,(e.drawingBufferWidth!==s||e.drawingBufferHeight!==u)&&(Gw.warn("Device pixel ratio clamped")(),a=Math.min(e.drawingBufferWidth/i,e.drawingBufferHeight/r),e.canvas.width=Math.floor(i*a),e.canvas.height=Math.floor(r*a)),Object.assign(e.luma.canvasSizeInfo,{clientWidth:i,clientHeight:r,devicePixelRatio:t})}}(e,function(e){var t="undefined"==typeof window?1:window.devicePixelRatio||1;return Number.isFinite(e)?e<=0?1:e:e?t:1}(t.useDevicePixels),t);else{var n=e.getExtension("STACKGL_resize_drawingbuffer");n&&"width"in t&&"height"in t&&n.resize(t.width,t.height)}}(this.gl,{useDevicePixels:this.useDevicePixels})}},{key:"_createFramebuffer",value:function(){this.props.createFramebuffer&&(this.framebuffer=new Mx(this.gl))}},{key:"_resizeFramebuffer",value:function(){this.framebuffer&&this.framebuffer.resize({width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight})}},{key:"_beginTimers",value:function(){this.frameRate.timeEnd(),this.frameRate.timeStart(),this._gpuTimeQuery&&this._gpuTimeQuery.isResultAvailable()&&!this._gpuTimeQuery.isTimerDisjoint()&&this.stats.get("GPU Time").addTime(this._gpuTimeQuery.getTimerMilliseconds()),this._gpuTimeQuery&&this._gpuTimeQuery.beginTimeElapsedQuery(),this.cpuTime.timeStart()}},{key:"_endTimers",value:function(){this.cpuTime.timeEnd(),this._gpuTimeQuery&&this._gpuTimeQuery.end()}},{key:"_startEventHandling",value:function(){var e=this.gl.canvas;e&&(e.addEventListener("mousemove",this._onMousemove),e.addEventListener("mouseleave",this._onMouseleave))}},{key:"_onMousemove",value:function(e){this.animationProps._mousePosition=[e.offsetX,e.offsetY]}},{key:"_onMouseleave",value:function(e){this.animationProps._mousePosition=null}}]),e}(),fR=r(11524),pR=r.n(fR),vR={mousedown:1,mousemove:2,mouseup:4};(function(e){var t=e.prototype.handler;e.prototype.handler=function(e){var n=this.store;e.button>0&&"pointerdown"===e.type&&(function(t,n){for(var i=0;i=0&&(this.pressed=!0),2&t&&0===e.which&&(t=4),this.pressed&&(4&t&&(this.pressed=!1),this.callback(this.manager,t,{pointers:[e],changedPointers:[e],pointerType:"mouse",srcEvent:e}))}}(pR().MouseInput);var gR=pR().Manager,mR=pR(),yR=mR?[[mR.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[mR.Rotate,{enable:!1}],[mR.Pinch,{enable:!1}],[mR.Swipe,{enable:!1}],[mR.Pan,{threshold:0,enable:!1}],[mR.Press,{enable:!1}],[mR.Tap,{event:"doubletap",taps:2,enable:!1}],[mR.Tap,{event:"anytap",enable:!1}],[mR.Tap,{enable:!1}]]:null,bR={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},_R={doubletap:["tap"]},wR={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},kR=["keydown","keyup"],xR=["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],SR=["wheel","mousewheel"],ER={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},CR={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},OR="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",TR="undefined"!=typeof window?window:global;"undefined"!=typeof global?global:window,"undefined"!=typeof document&&document;var AR=!1;try{var PR={get passive(){return AR=!0,!0}};TR.addEventListener("test",PR,PR),TR.removeEventListener("test",PR,PR)}catch(U){}var MR=-1!==OR.indexOf("firefox"),IR=SR,RR=4.000244140625,DR=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.options=Object.assign({enable:!0},r),this.events=IR.concat(r.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(function(e){return t.addEventListener(e,i.handleEvent,!!AR&&{passive:!1})})}return b(e,[{key:"destroy",value:function(){var e=this;this.events.forEach(function(t){return e.element.removeEventListener(t,e.handleEvent)})}},{key:"enableEventType",value:function(e,t){"wheel"===e&&(this.options.enable=t)}},{key:"handleEvent",value:function(e){if(this.options.enable){var t=e.deltaY;TR.WheelEvent&&(MR&&e.deltaMode===TR.WheelEvent.DOM_DELTA_PIXEL&&(t/=TR.devicePixelRatio),e.deltaMode===TR.WheelEvent.DOM_DELTA_LINE&&(t*=40));var n={x:e.clientX,y:e.clientY};0!==t&&t%RR==0&&(t=Math.floor(t/RR)),e.shiftKey&&t&&(t*=.25),this._onWheel(e,-t,n)}}},{key:"_onWheel",value:function(e,t,n){this.callback({type:"wheel",center:n,delta:t,srcEvent:e,pointerType:"mouse",target:e.target})}}]),e}(),NR=xR,LR="pointermove",jR="pointerover",FR="pointerout",BR="pointerleave",VR=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.pressed=!1,this.options=Object.assign({enable:!0},r),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=NR.concat(r.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(function(e){return t.addEventListener(e,i.handleEvent)})}return b(e,[{key:"destroy",value:function(){var e=this;this.events.forEach(function(t){return e.element.removeEventListener(t,e.handleEvent)})}},{key:"enableEventType",value:function(e,t){e===LR&&(this.enableMoveEvent=t),e===jR&&(this.enableOverEvent=t),e===FR&&(this.enableOutEvent=t),e===BR&&(this.enableLeaveEvent=t)}},{key:"handleEvent",value:function(e){this.handleOverEvent(e),this.handleOutEvent(e),this.handleLeaveEvent(e),this.handleMoveEvent(e)}},{key:"handleOverEvent",value:function(e){this.enableOverEvent&&"mouseover"===e.type&&this.callback({type:jR,srcEvent:e,pointerType:"mouse",target:e.target})}},{key:"handleOutEvent",value:function(e){this.enableOutEvent&&"mouseout"===e.type&&this.callback({type:FR,srcEvent:e,pointerType:"mouse",target:e.target})}},{key:"handleLeaveEvent",value:function(e){this.enableLeaveEvent&&"mouseleave"===e.type&&this.callback({type:BR,srcEvent:e,pointerType:"mouse",target:e.target})}},{key:"handleMoveEvent",value:function(e){if(this.enableMoveEvent)switch(e.type){case"mousedown":e.button>=0&&(this.pressed=!0);break;case"mousemove":0===e.which&&(this.pressed=!1),this.pressed||this.callback({type:LR,srcEvent:e,pointerType:"mouse",target:e.target});break;case"mouseup":this.pressed=!1}}}]),e}(),zR=kR,UR="keydown",HR=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.options=Object.assign({enable:!0},r),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=zR.concat(r.events||[]),this.handleEvent=this.handleEvent.bind(this),t.tabIndex=r.tabIndex||0,t.style.outline="none",this.events.forEach(function(e){return t.addEventListener(e,i.handleEvent)})}return b(e,[{key:"destroy",value:function(){var e=this;this.events.forEach(function(t){return e.element.removeEventListener(t,e.handleEvent)})}},{key:"enableEventType",value:function(e,t){e===UR&&(this.enableDownEvent=t),"keyup"===e&&(this.enableUpEvent=t)}},{key:"handleEvent",value:function(e){var t=e.target||e.srcElement;"INPUT"===t.tagName&&"text"===t.type||"TEXTAREA"===t.tagName||(this.enableDownEvent&&"keydown"===e.type&&this.callback({type:UR,srcEvent:e,key:e.key,target:e.target}),this.enableUpEvent&&"keyup"===e.type&&this.callback({type:"keyup",srcEvent:e,key:e.key,target:e.target}))}}]),e}(),GR="contextmenu",WR=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m(this,e),this.element=t,this.callback=n,this.options=Object.assign({enable:!0},i),this.handleEvent=this.handleEvent.bind(this),t.addEventListener("contextmenu",this.handleEvent)}return b(e,[{key:"destroy",value:function(){this.element.removeEventListener("contextmenu",this.handleEvent)}},{key:"enableEventType",value:function(e,t){e===GR&&(this.options.enable=t)}},{key:"handleEvent",value:function(e){!this.options.enable||this.callback({type:GR,center:{x:e.clientX,y:e.clientY},srcEvent:e,pointerType:"mouse",target:e.target})}}]),e}(),qR={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4},XR={srcElement:"root",priority:0},YR=function(){function e(t){m(this,e),this.eventManager=t,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}return b(e,[{key:"isEmpty",value:function(){return!this._active}},{key:"add",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]&&arguments[3],r=arguments.length>4&&void 0!==arguments[4]&&arguments[4],o=this.handlers,a=this.handlersByElement;n&&("object"!=typeof n||n.addEventListener)&&(n={srcElement:n}),n=n?Object.assign({},XR,n):XR;var s=a.get(n.srcElement);s||(s=[],a.set(n.srcElement,s));var u={type:e,handler:t,srcElement:n.srcElement,priority:n.priority};i&&(u.once=!0),r&&(u.passive=!0),o.push(u),this._active=this._active||!u.passive;for(var c=s.length-1;c>=0&&!(s[c].priority>=u.priority);)c--;s.splice(c+1,0,u)}},{key:"remove",value:function(e,t){for(var n=this.handlers,i=this.handlersByElement,r=n.length-1;r>=0;r--){var o=n[r];if(o.type===e&&o.handler===t){n.splice(r,1);var a=i.get(o.srcElement);a.splice(a.indexOf(o),1),0===a.length&&i.delete(o.srcElement)}}this._active=n.some(function(e){return!e.passive})}},{key:"handleEvent",value:function(e){if(!this.isEmpty()){for(var t=this._normalizeEvent(e),n=e.srcEvent.target;n&&n!==t.rootElement;){if(this._emit(t,n),t.handled)return;n=n.parentNode}this._emit(t,"root")}}},{key:"_emit",value:function(e,t){var n=this.handlersByElement.get(t);if(n){for(var i=!1,r=function(){e.handled=!0},o=function(){e.handled=!0,i=!0},a=[],s=0;s0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.options=Object.assign({},KR,n),this.events=new Map,this._onBasicInput=this._onBasicInput.bind(this),this._onOtherEvent=this._onOtherEvent.bind(this),this.setElement(t);var i=n.events;i&&this.on(i)}return b(e,[{key:"setElement",value:function(e){var n=this;if(this.element&&this.destroy(),this.element=e,e){var i=this.options;for(var r in this.manager=new(0,i.Manager)(e,{touchAction:i.touchAction,recognizers:i.recognizers||yR}).on("hammer.input",this._onBasicInput),i.recognizers||Object.keys(bR).forEach(function(e){var t=n.manager.get(e);t&&bR[e].forEach(function(e){t.recognizeWith(e)})}),i.recognizerOptions){var o=this.manager.get(r);if(o){var a=i.recognizerOptions[r];delete a.enable,o.set(a)}}this.wheelInput=new DR(e,this._onOtherEvent,{enable:!1}),this.moveInput=new VR(e,this._onOtherEvent,{enable:!1}),this.keyInput=new HR(e,this._onOtherEvent,{enable:!1,tabIndex:i.tabIndex}),this.contextmenuInput=new WR(e,this._onOtherEvent,{enable:!1});var s,u=_(this.events);try{for(u.s();!(s=u.n()).done;){var c=t(s.value,2),l=c[0],h=c[1];h.isEmpty()||(this._toggleRecognizer(h.recognizerName,!0),this.manager.on(l,h.handleEvent))}}catch(d){u.e(d)}finally{u.f()}}}},{key:"destroy",value:function(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}},{key:"on",value:function(e,t,n){this._addEventHandler(e,t,n,!1)}},{key:"once",value:function(e,t,n){this._addEventHandler(e,t,n,!0)}},{key:"watch",value:function(e,t,n){this._addEventHandler(e,t,n,!1,!0)}},{key:"off",value:function(e,t){this._removeEventHandler(e,t)}},{key:"_toggleRecognizer",value:function(e,t){var n=this.manager;if(n){var i=n.get(e);if(i&&i.options.enable!==t){i.set({enable:t});var r=_R[e];r&&!this.options.recognizers&&r.forEach(function(r){var o=n.get(r);t?(o.requireFailure(e),i.dropRequireFailure(r)):o.dropRequireFailure(e)})}this.wheelInput.enableEventType(e,t),this.moveInput.enableEventType(e,t),this.keyInput.enableEventType(e,t),this.contextmenuInput.enableEventType(e,t)}}},{key:"_addEventHandler",value:function(e,t,n,i,r){if("string"==typeof e){var o=this.manager,a=this.events,s=CR[e]||e,u=a.get(s);u||(u=new YR(this),a.set(s,u),u.recognizerName=ER[s]||s,o&&o.on(s,u.handleEvent)),u.add(e,t,n,i,r),u.isEmpty()||this._toggleRecognizer(u.recognizerName,!0)}else for(var c in n=t,e)this._addEventHandler(c,e[c],n,i,r)}},{key:"_removeEventHandler",value:function(e,t){if("string"==typeof e){var n=this.events,i=n.get(CR[e]||e);if(i&&(i.remove(e,t),i.isEmpty())){var r,o=i.recognizerName,a=!1,s=_(n.values());try{for(s.s();!(r=s.n()).done;){var u=r.value;if(u.recognizerName===o&&!u.isEmpty()){a=!0;break}}}catch(l){s.e(l)}finally{s.f()}a||this._toggleRecognizer(o,!1)}}else for(var c in e)this._removeEventHandler(c,e[c])}},{key:"_onBasicInput",value:function(e){var t=e.srcEvent,n=wR[t.type];n&&this.manager.emit(n,e)}},{key:"_onOtherEvent",value:function(e){this.manager.emit(e.type,e)}}]),e}();function QR(){}var ZR={id:"",width:"100%",height:"100%",pickingRadius:0,layerFilter:null,glOptions:{},gl:null,layers:[],effects:[],views:null,controller:null,useDevicePixels:!0,touchAction:"none",eventRecognizerOptions:{},_framebuffer:null,_animate:!1,_pickable:!0,_typedArrayManagerProps:{},onWebGLInitialized:QR,onResize:QR,onViewStateChange:QR,onInteractionStateChange:QR,onBeforeRender:QR,onAfterRender:QR,onLoad:QR,onError:function(e,t){return Vw.error(e)()},_onMetrics:null,getCursor:function(e){return e.isDragging?"grabbing":"grab"},debug:!1,drawPickingColors:!1},JR=function(){function e(t){m(this,e),t=M(M({},ZR),t),this.props={},this.width=0,this.height=0,this.viewManager=null,this.layerManager=null,this.effectManager=null,this.deckRenderer=null,this.deckPicker=null,this._needsRedraw=!0,this._pickRequest={},this._lastPointerDownInfo=null,this.viewState=null,this.interactiveState={isHovering:!1,isDragging:!1},this._onEvent=this._onEvent.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),t.viewState&&t.initialViewState&&Vw.warn("View state tracking is disabled. Use either `initialViewState` for auto update or `viewState` for manual update.")(),"IE"===(0,$w.qs)()&&Vw.warn("IE 11 support will be deprecated in v8.0")(),t.gl||"undefined"!=typeof document&&(this.canvas=this._createCanvas(t)),this.animationLoop=this._createAnimationLoop(t),this.stats=new Bk({id:"deck.gl"}),this.metrics={fps:0,setPropsTime:0,updateAttributesTime:0,framesRedrawn:0,pickTime:0,pickCount:0,gpuTime:0,gpuTimePerFrame:0,cpuTime:0,cpuTimePerFrame:0,bufferMemory:0,textureMemory:0,renderbufferMemory:0,gpuMemory:0},this._metricsCounter=0,this.setProps(t),t._typedArrayManagerProps&&jx.setProps(t._typedArrayManagerProps),this.animationLoop.start()}return b(e,[{key:"finalize",value:function(){this.animationLoop.stop(),this.animationLoop=null,this._lastPointerDownInfo=null,this.layerManager&&(this.layerManager.finalize(),this.layerManager=null,this.viewManager.finalize(),this.viewManager=null,this.effectManager.finalize(),this.effectManager=null,this.deckRenderer.finalize(),this.deckRenderer=null,this.deckPicker.finalize(),this.deckPicker=null,this.eventManager.destroy(),this.eventManager=null,this.tooltip.remove(),this.tooltip=null),!this.props.canvas&&!this.props.gl&&this.canvas&&(this.canvas.parentElement.removeChild(this.canvas),this.canvas=null)}},{key:"setProps",value:function(e){this.stats.get("setProps Time").timeStart(),"onLayerHover"in e&&Vw.removed("onLayerHover","onHover")(),"onLayerClick"in e&&Vw.removed("onLayerClick","onClick")(),e.initialViewState&&!YP(this.props.initialViewState,e.initialViewState)&&(this.viewState=e.initialViewState),Object.assign(this.props,e),this._setCanvasSize(this.props);var t=Object.create(this.props);Object.assign(t,{views:this._getViews(),width:this.width,height:this.height,viewState:this._getViewState()}),this.animationLoop.setProps(t),this.layerManager&&(this.viewManager.setProps(t),this.layerManager.activateViewport(this.getViewports()[0]),this.layerManager.setProps(t),this.effectManager.setProps(t),this.deckRenderer.setProps(t),this.deckPicker.setProps(t)),this.stats.get("setProps Time").timeEnd()}},{key:"needsRedraw",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{clearRedrawFlags:!1};if(this.props._animate)return"Deck._animate";var t=this._needsRedraw;e.clearRedrawFlags&&(this._needsRedraw=!1);var n=this.viewManager.needsRedraw(e),i=this.layerManager.needsRedraw(e),r=this.effectManager.needsRedraw(e),o=this.deckRenderer.needsRedraw(e);return t=t||n||i||r||o}},{key:"redraw",value:function(e){if(this.layerManager){var t=e||this.needsRedraw({clearRedrawFlags:!0});!t||(this.stats.get("Redraw Count").incrementCount(),this.props._customRender?this.props._customRender(t):this._drawLayers(t))}}},{key:"getViews",value:function(){return this.viewManager.views}},{key:"getViewports",value:function(e){return this.viewManager.getViewports(e)}},{key:"pickObject",value:function(e){var t=this._pick("pickObject","pickObject Time",e).result;return t.length?t[0]:null}},{key:"pickMultipleObjects",value:function(e){return e.depth=e.depth||10,this._pick("pickObject","pickMultipleObjects Time",e).result}},{key:"pickObjects",value:function(e){return this._pick("pickObjects","pickObjects Time",e)}},{key:"_addResources",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];for(var n in e)this.layerManager.resourceManager.add({resourceId:n,data:e[n],forceUpdate:t})}},{key:"_removeResources",value:function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var i=t.value;this.layerManager.resourceManager.remove(i)}}catch(r){n.e(r)}finally{n.f()}}},{key:"_pick",value:function(e,t,n){var i=this.stats;i.get("Pick Count").incrementCount(),i.get(t).timeStart();var r=this.deckPicker[e](M({layers:this.layerManager.getLayers(n),views:this.viewManager.getViews(),viewports:this.getViewports(n),onViewportActive:this.layerManager.activateViewport},n));return i.get(t).timeEnd(),r}},{key:"_createCanvas",value:function(e){var t=e.canvas;return"string"==typeof t&&yS(t=document.getElementById(t)),t||((t=document.createElement("canvas")).id=e.id||"deckgl-overlay",(e.parent||document.body).appendChild(t)),Object.assign(t.style,e.style),t}},{key:"_setCanvasSize",value:function(e){if(this.canvas){var t=e.width,n=e.height;(t||0===t)&&(t=Number.isFinite(t)?"".concat(t,"px"):t,this.canvas.style.width=t),(n||0===n)&&(n=Number.isFinite(n)?"".concat(n,"px"):n,this.canvas.style.position="absolute",this.canvas.style.height=n)}}},{key:"_updateCanvasSize",value:function(){if(this._checkForCanvasSizeChange()){var e=this.width,t=this.height;this.viewManager.setProps({width:e,height:t}),this.props.onResize({width:this.width,height:this.height})}}},{key:"_checkForCanvasSizeChange",value:function(){var e=this.canvas;if(!e)return!1;var t=e.clientWidth||e.width,n=e.clientHeight||e.height;return(t!==this.width||n!==this.height)&&(this.width=t,this.height=n,!0)}},{key:"_createAnimationLoop",value:function(e){var t=this,n=e.width,i=e.height,r=e.gl,o=e.glOptions,a=e.debug,s=e.onError,u=e.onBeforeRender,c=e.onAfterRender,l=e.useDevicePixels,h=e.autoResizeDrawingBuffer;return new dR({width:n,height:i,useDevicePixels:l,autoResizeDrawingBuffer:h,autoResizeViewport:!1,gl:r,onCreateContext:function(e){return Nk(I(M(M({},o),e),{canvas:t.canvas,debug:a,onContextLost:function(){return t._onContextLost()}}))},onInitialize:function(e){return t._setGLContext(e.gl)},onRender:this._onRenderFrame.bind(this),onBeforeRender:u,onAfterRender:c,onError:s})}},{key:"_getViewState",value:function(){return this.props.viewState||this.viewState}},{key:"_getViews",value:function(){var e=this.props.views||[new cI({id:"default-view"})];return(e=Array.isArray(e)?e:[e]).length&&this.props.controller&&(e[0].props.controller=this.props.controller),e}},{key:"_onContextLost",value:function(){var e=this.props.onError;this.animationLoop&&e&&e(new Error("WebGL context is lost"))}},{key:"_onPointerMove",value:function(e){var t=this._pickRequest;if("pointerleave"===e.type)t.x=-1,t.y=-1,t.radius=0;else{if(e.leftButton||e.rightButton)return;var n=e.offsetCenter;if(!n)return;t.x=n.x,t.y=n.y,t.radius=this.props.pickingRadius}this.layerManager&&(this.layerManager.context.mousePosition={x:t.x,y:t.y}),t.event=e,t.mode="hover"}},{key:"_pickAndCallback",value:function(){var e=this._pickRequest;if(e.event){var t=this._pick("pickObject","pickObject Time",e),n=t.result,i=t.emptyInfo;this.interactiveState.isHovering=n.length>0;var r,o=i,a=!1,s=_(n);try{for(s.s();!(r=s.n()).done;){var u=r.value;o=u,a=u.layer.onHover(u,e.event)}}catch(l){s.e(l)}finally{s.f()}if(!a&&this.props.onHover&&this.props.onHover(o,e.event),this.props.getTooltip){var c=this.props.getTooltip(o);this.tooltip.setTooltip(c,o.x,o.y)}e.event=null}}},{key:"_updateCursor",value:function(){var e=this.props.parent||this.canvas;e&&(e.style.cursor=this.props.getCursor(this.interactiveState))}},{key:"_setGLContext",value:function(e){if(!this.layerManager){this.canvas||(this.canvas=e.canvas,Lk(e,{enable:!0,copyState:!0})),this.tooltip=new xI(this.canvas),Ck(e,{blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthTest:!0,depthFunc:515}),this.props.onWebGLInitialized(e);var t=new ZM;for(var n in t.play(),this.animationLoop.attachTimeline(t),this.eventManager=new $R(this.props.parent||e.canvas,{touchAction:this.props.touchAction,recognizerOptions:this.props.eventRecognizerOptions,events:{pointerdown:this._onPointerDown,pointermove:this._onPointerMove,pointerleave:this._onPointerMove}}),Hw)this.eventManager.on(n,this._onEvent);this.viewManager=new aI({timeline:t,eventManager:this.eventManager,onViewStateChange:this._onViewStateChange.bind(this),onInteractionStateChange:this._onInteractionStateChange.bind(this),views:this._getViews(),viewState:this._getViewState(),width:this.width,height:this.height});var i=this.viewManager.getViewports()[0];this.layerManager=new oI(e,{deck:this,stats:this.stats,viewport:i,timeline:t}),this.effectManager=new hI,this.deckRenderer=new vI(e),this.deckPicker=new wI(e),this.setProps(this.props),this._updateCanvasSize(),this.props.onLoad()}}},{key:"_drawLayers",value:function(e,t){var n=this.layerManager.context.gl;Ck(n,this.props.parameters),this.props.onBeforeRender({gl:n}),this.deckRenderer.renderLayers(M({target:this.props._framebuffer,layers:this.layerManager.getLayers(),viewports:this.viewManager.getViewports(),onViewportActive:this.layerManager.activateViewport,views:this.viewManager.getViews(),pass:"screen",redrawReason:e,effects:this.effectManager.getEffects()},t)),this.props.onAfterRender({gl:n})}},{key:"_onRenderFrame",value:function(e){this._getFrameStats(),this._metricsCounter++%60==0&&(this._getMetrics(),this.stats.reset(),Vw.table(4,this.metrics)(),this.props._onMetrics&&this.props._onMetrics(this.metrics)),this._updateCanvasSize(),this._updateCursor(),this.tooltip.isVisible&&this.viewManager.needsRedraw()&&this.tooltip.setTooltip(null),this.layerManager.updateLayers(),this._pickAndCallback(),this.redraw(!1),this.viewManager&&this.viewManager.updateViewStates()}},{key:"_onViewStateChange",value:function(e){var t=this.props.onViewStateChange(e)||e.viewState;this.viewState&&(this.viewState=I(M({},this.viewState),o({},e.viewId,t)),this.props.viewState||this.viewManager&&this.viewManager.setProps({viewState:this.viewState}))}},{key:"_onInteractionStateChange",value:function(e){this.interactiveState.isDragging=e.isDragging,this.props.onInteractionStateChange(e)}},{key:"_onEvent",value:function(e){var t=Hw[e.type],n=e.offsetCenter;if(t&&n){var i=this.layerManager.getLayers(),r=this.deckPicker.getLastPickedObject({x:n.x,y:n.y,layers:i,viewports:this.getViewports(n)},this._lastPointerDownInfo),o=r.layer,a=o&&(o[t.handler]||o.props[t.handler]),s=this.props[t.handler],u=!1;a&&(u=a.call(o,r,e)),!u&&s&&s(r,e)}}},{key:"_onPointerDown",value:function(e){var t=e.offsetCenter;this._lastPointerDownInfo=this.pickObject({x:t.x,y:t.y,radius:this.props.pickingRadius})}},{key:"_getFrameStats",value:function(){var e=this.stats;e.get("frameRate").timeEnd(),e.get("frameRate").timeStart();var t=this.animationLoop.stats;e.get("GPU Time").addTime(t.get("GPU Time").lastTiming),e.get("CPU Time").addTime(t.get("CPU Time").lastTiming)}},{key:"_getMetrics",value:function(){var e=this.metrics,t=this.stats;e.fps=t.get("frameRate").getHz(),e.setPropsTime=t.get("setProps Time").time,e.updateAttributesTime=t.get("Update Attributes").time,e.framesRedrawn=t.get("Redraw Count").count,e.pickTime=t.get("pickObject Time").time+t.get("pickMultipleObjects Time").time+t.get("pickObjects Time").time,e.pickCount=t.get("Pick Count").count,e.gpuTime=t.get("GPU Time").time,e.cpuTime=t.get("CPU Time").time,e.gpuTimePerFrame=t.get("GPU Time").getAverageTime(),e.cpuTimePerFrame=t.get("CPU Time").getAverageTime();var n=zk.get("Memory Usage");e.bufferMemory=n.get("Buffer Memory").count,e.textureMemory=n.get("Texture Memory").count,e.renderbufferMemory=n.get("Renderbuffer Memory").count,e.gpuMemory=n.get("GPU Memory").count}}]),e}();JR.getPropTypes=function(e){return{id:e.string,width:e.oneOfType([e.number,e.string]),height:e.oneOfType([e.number,e.string]),layers:e.oneOfType([e.object,e.array]),layerFilter:e.func,views:e.oneOfType([e.object,e.array]),viewState:e.object,effects:e.arrayOf(e.instanceOf(IM)),controller:e.oneOfType([e.func,e.bool,e.object]),gl:e.object,glOptions:e.object,parameters:e.object,pickingRadius:e.number,useDevicePixels:e.oneOfType([e.bool,e.number]),touchAction:e.string,eventRecognizerOptions:e.object,onWebGLInitialized:e.func,onResize:e.func,onViewStateChange:e.func,onInteractionStateChange:e.func,onBeforeRender:e.func,onAfterRender:e.func,onLoad:e.func,onError:e.func,debug:e.bool,drawPickingColors:e.bool,_framebuffer:e.object,_animate:e.bool,_pickable:e.bool,_typedArrayManagerProps:e.object}},JR.defaultProps=ZR,JR.VERSION=uR.VERSION;var eD={name:"project32",dependencies:[VM],vs:"\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset, out vec4 commonPosition\n) {\n vec3 projectedPosition = project_position(position, position64Low);\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n // offset is specified as ENU\n // when in globe projection, rotate offset so that the ground alighs with the surface of the globe\n mat3 rotation = project_get_orientation_matrix(projectedPosition);\n offset = rotation * offset;\n }\n commonPosition = vec4(projectedPosition + offset, 1.0);\n return project_common_position_to_clipspace(commonPosition);\n}\n\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset\n) {\n vec4 commonPosition;\n return project_position_to_clipspace(position, position64Low, offset, commonPosition);\n}\n"},tD="#if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\n\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation;\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform AmbientLight lighting_uAmbientLight;\nuniform PointLight lighting_uPointLight[MAX_LIGHTS];\nuniform DirectionalLight lighting_uDirectionalLight[MAX_LIGHTS];\nuniform int lighting_uPointLightCount;\nuniform int lighting_uDirectionalLightCount;\n\nuniform bool lighting_uEnabled;\n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n#endif\n",nD={lightSources:{}};function iD(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.color,n=void 0===t?[0,0,0]:t,i=e.intensity,r=void 0===i?1:i;return n.map(function(e){return e*r/255})}var rD={name:"lights",vs:tD,fs:tD,getUniforms:function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:nD;if("lightSources"in t){var n=t.lightSources||{},i=n.ambientLight,r=n.pointLights,o=n.directionalLights;return i||r&&r.length>0||o&&o.length>0?Object.assign({},function(e){var t=e.ambientLight,n=e.pointLights,i=void 0===n?[]:n,r=e.directionalLights,o=void 0===r?[]:r,a={};return a["lighting_uAmbientLight.color"]=t?iD(t):[0,0,0],i.forEach(function(e,t){a["lighting_uPointLight[".concat(t,"].color")]=iD(e),a["lighting_uPointLight[".concat(t,"].position")]=e.position,a["lighting_uPointLight[".concat(t,"].attenuation")]=e.attenuation||[1,0,0]}),a.lighting_uPointLightCount=i.length,o.forEach(function(e,t){a["lighting_uDirectionalLight[".concat(t,"].color")]=iD(e),a["lighting_uDirectionalLight[".concat(t,"].direction")]=e.direction}),a.lighting_uDirectionalLightCount=o.length,a}({ambientLight:i,pointLights:r,directionalLights:o}),{lighting_uEnabled:!0}):{lighting_uEnabled:!1}}if("lights"in t){var a,s={pointLights:[],directionalLights:[]},u=_(t.lights||[]);try{for(u.s();!(a=u.n()).done;){var c=a.value;switch(c.type){case"ambient":s.ambientLight=c;break;case"directional":s.directionalLights.push(c);break;case"point":s.pointLights.push(c)}}}catch(l){u.e(l)}finally{u.f()}return e({lightSources:s})}return{}},defines:{MAX_LIGHTS:3}},oD={},aD={name:"phong-lighting",dependencies:[rD],fs:"\nuniform float lighting_uAmbient;\nuniform float lighting_uDiffuse;\nuniform float lighting_uShininess;\nuniform vec3 lighting_uSpecularColor;\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 light_direction, vec3 view_direction, vec3 normal_worldspace, vec3 color) {\n vec3 halfway_direction = normalize(light_direction + view_direction);\n float lambertian = dot(light_direction, normal_worldspace);\n float specular = 0.0;\n if (lambertian > 0.0) {\n float specular_angle = max(dot(normal_worldspace, halfway_direction), 0.0);\n specular = pow(specular_angle, lighting_uShininess);\n }\n lambertian = max(lambertian, 0.0);\n return (lambertian * lighting_uDiffuse * surfaceColor + specular * lighting_uSpecularColor) * color;\n}\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = surfaceColor;\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n lightColor = lighting_uAmbient * surfaceColor * lighting_uAmbientLight.color;\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n\nvec3 lighting_getSpecularLightColor(vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = vec3(0, 0, 0);\n vec3 surfaceColor = vec3(0, 0, 0);\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n",defines:{LIGHTING_FRAGMENT:1},getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:oD;if(!("material"in e))return{};var t=e.material;return t?function(e){var t=e.ambient,n=void 0===t?.35:t,i=e.diffuse,r=void 0===i?.6:i,o=e.shininess,a=void 0===o?32:o,s=e.specularColor;return{lighting_uAmbient:n,lighting_uDiffuse:r,lighting_uShininess:a,lighting_uSpecularColor:(void 0===s?[30,30,30]:s).map(function(e){return e/255})}}(t):{lighting_uEnabled:!1}}},sD={pickingSelectedColor:null,pickingHighlightColor:new Uint8Array([0,255,255,255]),pickingActive:!1,pickingAttribute:!1},uD=M({inject:{"vs:DECKGL_FILTER_COLOR":"\n picking_setPickingColor(geometry.pickingColor);\n // for picking depth values\n picking_setPickingAttribute(geometry.position.z);\n ","fs:DECKGL_FILTER_COLOR":{order:99,injection:"\n // use highlight color if this fragment belongs to the selected object.\n color = picking_filterHighlightColor(color);\n\n // use picking color if rendering to picking FBO.\n color = picking_filterPickingColor(color);\n "}}},{name:"picking",vs:"uniform bool picking_uActive;\nuniform bool picking_uAttribute;\nuniform vec3 picking_uSelectedColor;\nuniform bool picking_uSelectedColorValid;\n\nout vec4 picking_vRGBcolor_Avalid;\n\nconst float COLOR_SCALE = 1. / 255.;\n\nbool picking_isColorValid(vec3 color) {\n return dot(color, vec3(1.0)) > 0.001;\n}\n\nbool isVertexPicked(vec3 vertexColor) {\n return\n picking_uSelectedColorValid &&\n !picking_isColorValid(abs(vertexColor - picking_uSelectedColor));\n}\n\nvoid picking_setPickingColor(vec3 pickingColor) {\n if (picking_uActive) {\n picking_vRGBcolor_Avalid.a = float(picking_isColorValid(pickingColor));\n\n if (!picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = pickingColor * COLOR_SCALE;\n }\n } else {\n picking_vRGBcolor_Avalid.a = float(isVertexPicked(pickingColor));\n }\n}\n\nvoid picking_setPickingAttribute(float value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.r = value;\n }\n}\nvoid picking_setPickingAttribute(vec2 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rg = value;\n }\n}\nvoid picking_setPickingAttribute(vec3 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = value;\n }\n}\n",fs:"uniform bool picking_uActive;\nuniform vec3 picking_uSelectedColor;\nuniform vec4 picking_uHighlightColor;\n\nin vec4 picking_vRGBcolor_Avalid;\nvec4 picking_filterHighlightColor(vec4 color) {\n if (picking_uActive) {\n return color;\n }\n bool selected = bool(picking_vRGBcolor_Avalid.a);\n\n if (selected) {\n float highLightAlpha = picking_uHighlightColor.a;\n float blendedAlpha = highLightAlpha + color.a * (1.0 - highLightAlpha);\n float highLightRatio = highLightAlpha / blendedAlpha;\n\n vec3 blendedRGB = mix(color.rgb, picking_uHighlightColor.rgb, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n } else {\n return color;\n }\n}\nvec4 picking_filterPickingColor(vec4 color) {\n if (picking_uActive) {\n if (picking_vRGBcolor_Avalid.a == 0.0) {\n discard;\n }\n return picking_vRGBcolor_Avalid;\n }\n return color;\n}\nvec4 picking_filterColor(vec4 color) {\n vec4 highightColor = picking_filterHighlightColor(color);\n return picking_filterPickingColor(highightColor);\n}\n\n",getUniforms:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:sD,t={};if(void 0!==e.pickingSelectedColor)if(e.pickingSelectedColor){var n=e.pickingSelectedColor.slice(0,3);t.picking_uSelectedColorValid=1,t.picking_uSelectedColor=n}else t.picking_uSelectedColorValid=0;if(e.pickingHighlightColor){var i=Array.from(e.pickingHighlightColor,function(e){return e/255});Number.isFinite(i[3])||(i[3]=1),t.picking_uHighlightColor=i}return void 0!==e.pickingActive&&(t.picking_uActive=Boolean(e.pickingActive),t.picking_uAttribute=Boolean(e.pickingAttribute)),t}}),cD={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6},lD=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id,i=void 0===n?qk("geometry"):n,r=t.drawMode,o=void 0===r?cD.TRIANGLES:r,a=t.attributes,s=void 0===a?{}:a,u=t.indices,c=void 0===u?null:u,l=t.vertexCount,h=void 0===l?null:l;this.id=i,this.drawMode=0|o,this.attributes={},this.userData={},this._setAttributes(s,c),this.vertexCount=h||this._calculateVertexCount(this.attributes,this.indices)}return b(e,[{key:"mode",get:function(){return this.drawMode}},{key:"getVertexCount",value:function(){return this.vertexCount}},{key:"getAttributes",value:function(){return this.indices?M({indices:this.indices},this.attributes):this.attributes}},{key:"_print",value:function(e){return"Geometry ".concat(this.id," attribute ").concat(e)}},{key:"_setAttributes",value:function(e,t){for(var n in t&&(this.indices=ArrayBuffer.isView(t)?{value:t,size:1}:t),e){var i=e[n];i=ArrayBuffer.isView(i)?{value:i}:i,Uk(ArrayBuffer.isView(i.value),"".concat(this._print(n),": must be typed array or object with value as typed array")),("POSITION"===n||"positions"===n)&&!i.size&&(i.size=3),"indices"===n?(Uk(!this.indices),this.indices=i):this.attributes[n]=i}return this.indices&&void 0!==this.indices.isIndexed&&(this.indices=Object.assign({},this.indices),delete this.indices.isIndexed),this}},{key:"_calculateVertexCount",value:function(e,t){if(t)return t.value.length;var n=1/0;for(var i in e){var r=e[i],o=r.value,a=r.size;!r.constant&&o&&a>=1&&(n=Math.min(n,o.length/a))}return Uk(Number.isFinite(n)),n}}],[{key:"DRAW_MODE",get:function(){return cD}}]),e}(),hD=Math.PI/180,dD=new Float32Array(16),fD=new Float32Array(12);function pD(e,t,n){var i=t[0]*hD,r=t[1]*hD,o=t[2]*hD,a=Math.sin(o),s=Math.sin(i),u=Math.sin(r),c=Math.cos(o),l=Math.cos(i),h=Math.cos(r),d=n[0],f=n[1],p=n[2];e[0]=d*h*l,e[1]=d*u*l,e[2]=d*-s,e[3]=f*(-u*c+h*s*a),e[4]=f*(h*c+u*s*a),e[5]=f*l*a,e[6]=p*(u*a+h*s*c),e[7]=p*(-h*a+u*s*c),e[8]=p*l*c}function vD(e){return e[0]=e[0],e[1]=e[1],e[2]=e[2],e[3]=e[4],e[4]=e[5],e[5]=e[6],e[6]=e[8],e[7]=e[9],e[8]=e[10],e[9]=e[12],e[10]=e[13],e[11]=e[14],e.subarray(0,12)}var gD={size:12,accessor:["getOrientation","getScale","getTranslation","getTransformMatrix"],shaderAttributes:{instanceModelMatrix__LOCATION_0:{size:3,elementOffset:0},instanceModelMatrix__LOCATION_1:{size:3,elementOffset:3},instanceModelMatrix__LOCATION_2:{size:3,elementOffset:6},instanceTranslation:{size:3,elementOffset:9}},update:function(e,t){var n=t.startRow,i=t.endRow,r=this.props,o=r.data,a=r.getOrientation,s=r.getScale,u=r.getTranslation,c=r.getTransformMatrix,l=Array.isArray(c),h=l&&16===c.length,d=Array.isArray(s),f=Array.isArray(a),p=Array.isArray(u),v=h||!l&&Boolean(c(o[0]));e.constant=v?h:f&&d&&p;var g=e.value;if(e.constant){var m;v?(dD.set(c),m=vD(dD)):(pD(m=fD,a,s),m.set(u,9)),e.value=new Float32Array(m)}else{var y,b=n*e.size,w=wS(o,n,i),k=w.iterable,x=w.objectInfo,S=_(k);try{for(S.s();!(y=S.n()).done;){var E=y.value,C=void 0;x.index++,v?(dD.set(h?c:c(E,x)),C=vD(dD)):(pD(C=fD,f?a:a(E,x),d?s:s(E,x)),C.set(p?u:u(E,x),9)),g[b++]=C[0],g[b++]=C[1],g[b++]=C[2],g[b++]=C[3],g[b++]=C[4],g[b++]=C[5],g[b++]=C[6],g[b++]=C[7],g[b++]=C[8],g[b++]=C[9],g[b++]=C[10],g[b++]=C[11]}}catch(O){S.e(O)}finally{S.f()}}}};function mD(e,t){return t===zw.CARTESIAN||t===zw.METER_OFFSETS||t===zw.DEFAULT&&!e.isGeospatial}function yD(e,t){(e.COLOR_0||e.colors)&&t||(e.colors={constant:!0,value:new Float32Array([1,1,1])}),Vw.assert(e.positions||e.POSITION,'no "postions" or "POSITION" attribute in mesh')}function bD(e,t){if(e.attributes)return yD(e.attributes,t),e instanceof lD?e:new lD(e);if(e.positions||e.POSITION)return yD(e,t),new lD({attributes:e});throw Error("Invalid mesh")}var _D={mesh:{value:null,type:"object",async:!0},texture:{type:"image",value:null,async:!0},sizeScale:{type:"number",value:1,min:0},_useMeshColors:{type:"boolean",value:!1},_instanced:!0,wireframe:!1,material:!0,getPosition:{type:"accessor",value:function(e){return e.position}},getColor:{type:"accessor",value:[0,0,0,255]},getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]}},wD=function(){var t=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"getShaders",value:function(){var t=!Xw(this.context.gl),n={};return Rx(this.context.gl,"GLSL_DERIVATIVES")&&(n.DERIVATIVES_AVAILABLE=1),e(p(i.prototype),"getShaders",this).call(this,{vs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\nuniform float sizeScale;\nuniform bool composeModelMatrix;\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.uv = texCoords;\n geometry.pickingColor = instancePickingColors;\n\n vTexCoord = texCoords;\n cameraPosition = project_uCameraPosition;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n geometry.normal = normals_commonspace;\n\n vec3 pos = (instanceModelMatrix * positions) * sizeScale + instanceTranslation;\n\n if (composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), position_commonspace);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, position_commonspace);\n }\n\n geometry.position = position_commonspace;\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\nuniform sampler2D sampler;\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal;\n if (flatShading) {\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec4 color = hasTexture ? texture(sampler, vTexCoord) : vColor;\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, color.a * opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n",modules:[eD,aD,uD],transpileToGLSL100:t,defines:n})}},{key:"initializeState",value:function(){this.getAttributeManager().addInstanced({instancePositions:{transition:!0,type:5130,fp64:this.use64bitPositions(),size:3,accessor:"getPosition"},instanceColors:{type:5121,transition:!0,size:this.props.colorFormat.length,normalized:!0,accessor:"getColor",defaultValue:[0,0,0,255]},instanceModelMatrix:gD}),this.setState({emptyTexture:new gx(this.context.gl,{data:new Uint8Array(4),width:1,height:1})})}},{key:"updateState",value:function(t){var n=t.props,r=t.oldProps,o=t.changeFlags;if(e(p(i.prototype),"updateState",this).call(this,{props:n,oldProps:r,changeFlags:o}),n.mesh!==r.mesh||o.extensionsChanged){var a;if(null===(a=this.state.model)||void 0===a||a.delete(),n.mesh){this.state.model=this.getModel(n.mesh);var s=n.mesh.attributes||n.mesh;this.setState({hasNormals:Boolean(s.NORMAL||s.normals)})}this.getAttributeManager().invalidateAll()}n.texture!==r.texture&&this.setTexture(n.texture),this.state.model&&this.state.model.setDrawMode(this.props.wireframe?3:4)}},{key:"finalizeState",value:function(){e(p(i.prototype),"finalizeState",this).call(this),this.state.emptyTexture.delete()}},{key:"draw",value:function(e){var t=e.uniforms;if(this.state.model){var n=this.context.viewport,i=this.props,r=i.sizeScale,o=i.coordinateSystem,a=i._instanced;this.state.model.setUniforms(t).setUniforms({sizeScale:r,composeModelMatrix:!a||mD(n,o),flatShading:!this.state.hasNormals}).draw()}}},{key:"getModel",value:function(e){var t=new AC(this.context.gl,I(M({},this.getShaders()),{id:this.props.id,geometry:bD(e,this.props._useMeshColors),isInstanced:!0})),n=this.props.texture,i=this.state.emptyTexture;return t.setUniforms({sampler:n||i,hasTexture:Boolean(n)}),t}},{key:"setTexture",value:function(e){var t=this.state,n=t.emptyTexture,i=t.model;null==i||i.setUniforms({sampler:e||n,hasTexture:Boolean(e)})}}]),i}(HP);return t.layerName="SimpleMeshLayer",t.defaultProps=_D,t}(),kD={name:"pbr",vs:"uniform mat4 u_MVPMatrix;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_NormalMatrix;\n\nvarying vec3 pbr_vPosition;\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n# else\nvarying vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = u_ModelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(u_NormalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(u_ModelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else\n pbr_vNormal = normalize(vec3(u_ModelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n",fs:"#if defined(USE_TEX_LOD) && !defined(FEATURE_GLSL_TEXTURE_LOD)\n# error PBR fragment shader: Texture LOD is not available\n#endif\n\n#if !defined(HAS_TANGENTS) && !defined(FEATURE_GLSL_DERIVATIVES)\n# error PBR fragment shader: Derivatives are not available\n#endif\n\n\n#if (__VERSION__ < 300)\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL1COND; INCR)\n#else\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL2COND; INCR)\n#endif\n\nprecision highp float;\n\nuniform bool pbr_uUnlit;\n\n#ifdef USE_IBL\nuniform samplerCube u_DiffuseEnvSampler;\nuniform samplerCube u_SpecularEnvSampler;\nuniform sampler2D u_brdfLUT;\nuniform vec2 u_ScaleIBLAmbient;\n#endif\n\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D u_BaseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D u_NormalSampler;\nuniform float u_NormalScale;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D u_EmissiveSampler;\nuniform vec3 u_EmissiveFactor;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D u_MetallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D u_OcclusionSampler;\nuniform float u_OcclusionStrength;\n#endif\n\n#ifdef ALPHA_CUTOFF\nuniform float u_AlphaCutoff;\n#endif\n\nuniform vec2 u_MetallicRoughnessValues;\nuniform vec4 u_BaseColorFactor;\n\nuniform vec3 u_Camera;\n#ifdef PBR_DEBUG\nuniform vec4 u_ScaleDiffBaseMR;\nuniform vec4 u_ScaleFGDSpec;\n#endif\n\nvarying vec3 pbr_vPosition;\n\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n#else\nvarying vec3 pbr_vNormal;\n#endif\n#endif\n\n\nstruct PBRInfo\n{\n float NdotL;\n float NdotV;\n float NdotH;\n float LdotH;\n float VdotH;\n float perceptualRoughness;\n float metalness;\n vec3 reflectance0;\n vec3 reflectance90;\n float alphaRoughness;\n vec3 diffuseColor;\n vec3 specularColor;\n vec3 n;\n vec3 v;\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif\n return vec4(linOut,srgbIn.w);;\n#else\n return srgbIn;\n#endif\n}\n\nvec3 getNormal()\n{\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture2D(u_NormalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(u_NormalScale, u_NormalScale, 1.0)));\n#else\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInputs, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0;\n float lod = (pbrInputs.perceptualRoughness * mipCount);\n vec3 brdf = SRGBtoLINEAR(texture2D(u_brdfLUT,\n vec2(pbrInputs.NdotV, 1.0 - pbrInputs.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(textureCube(u_DiffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(textureCubeLod(u_SpecularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(textureCube(u_SpecularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInputs.diffuseColor;\n vec3 specular = specularLight * (pbrInputs.specularColor * brdf.x + brdf.y);\n diffuse *= u_ScaleIBLAmbient.x;\n specular *= u_ScaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n\nvec3 diffuse(PBRInfo pbrInputs)\n{\n return pbrInputs.diffuseColor / M_PI;\n}\n\nvec3 specularReflection(PBRInfo pbrInputs)\n{\n return pbrInputs.reflectance0 +\n (pbrInputs.reflectance90 - pbrInputs.reflectance0) *\n pow(clamp(1.0 - pbrInputs.VdotH, 0.0, 1.0), 5.0);\n}\n\n\n\nfloat geometricOcclusion(PBRInfo pbrInputs)\n{\n float NdotL = pbrInputs.NdotL;\n float NdotV = pbrInputs.NdotV;\n float r = pbrInputs.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n\n\n\n\nfloat microfacetDistribution(PBRInfo pbrInputs)\n{\n float roughnessSq = pbrInputs.alphaRoughness * pbrInputs.alphaRoughness;\n float f = (pbrInputs.NdotH * roughnessSq - pbrInputs.NdotH) * pbrInputs.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInputs) {\n pbrInputs.NdotL = 1.0;\n pbrInputs.NdotH = 0.0;\n pbrInputs.LdotH = 0.0;\n pbrInputs.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInputs, vec3 lightDirection) {\n vec3 n = pbrInputs.n;\n vec3 v = pbrInputs.v;\n vec3 l = normalize(lightDirection);\n vec3 h = normalize(l+v);\n\n pbrInputs.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInputs.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInputs.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInputs.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInputs, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInputs, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInputs, vec3 lightColor) {\n vec3 F = specularReflection(pbrInputs);\n float G = geometricOcclusion(pbrInputs);\n float D = microfacetDistribution(pbrInputs);\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInputs);\n vec3 specContrib = F * G * D / (4.0 * pbrInputs.NdotL * pbrInputs.NdotV);\n return pbrInputs.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture2D(u_BaseColorSampler, pbr_vUV)) * u_BaseColorFactor;\n#else\n vec4 baseColor = u_BaseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < u_AlphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbr_uUnlit){\n color.rgb = baseColor.rgb;\n }\n else{\n\n\n float perceptualRoughness = u_MetallicRoughnessValues.y;\n float metallic = u_MetallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n\n vec4 mrSample = texture2D(u_MetallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n\n\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal();\n vec3 v = normalize(u_Camera - pbr_vPosition);\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInputs = PBRInfo(\n 0.0,\n NdotV,\n 0.0,\n 0.0,\n 0.0,\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n#ifdef USE_LIGHTS\n PBRInfo_setAmbientLight(pbrInputs);\n color += calculateFinalColor(pbrInputs, lighting_uAmbientLight.color);\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uDirectionalLightCount, i++) {\n if (i < lighting_uDirectionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInputs, lighting_uDirectionalLight[i].direction);\n color += calculateFinalColor(pbrInputs, lighting_uDirectionalLight[i].color);\n }\n }\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uPointLightCount, i++) {\n if (i < lighting_uPointLightCount) {\n PBRInfo_setPointLight(pbrInputs, lighting_uPointLight[i]);\n float attenuation = getPointLightAttenuation(lighting_uPointLight[i], distance(lighting_uPointLight[i].position, pbr_vPosition));\n color += calculateFinalColor(pbrInputs, lighting_uPointLight[i].color / attenuation);\n }\n }\n#endif\n#ifdef USE_IBL\n color += getIBLContribution(pbrInputs, n, reflection);\n#endif\n#ifdef HAS_OCCLUSIONMAP\n float ao = texture2D(u_OcclusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, u_OcclusionStrength);\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n vec3 emissive = SRGBtoLINEAR(texture2D(u_EmissiveSampler, pbr_vUV)).rgb * u_EmissiveFactor;\n color += emissive;\n#endif\n\n#ifdef PBR_DEBUG\n\n\n\n\n\n color = mix(color, baseColor.rgb, u_ScaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), u_ScaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), u_ScaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n",defines:{LIGHTING_FRAGMENT:1},dependencies:[rD]},xD=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e);var n=t.id;this.id=n||qk(this.constructor.name),this.display=!0,this.position=new hS,this.rotation=new hS,this.scale=new hS(1,1,1),this.matrix=new SO,this.userData={},this.props={},this._setScenegraphNodeProps(t)}return b(e,[{key:"delete",value:function(){}},{key:"setProps",value:function(e){return this._setScenegraphNodeProps(e),this}},{key:"toString",value:function(){return"{type: ScenegraphNode, id: ".concat(this.id,")}")}},{key:"setPosition",value:function(e){return Uk(3===e.length,"setPosition requires vector argument"),this.position=e,this}},{key:"setRotation",value:function(e){return Uk(3===e.length,"setRotation requires vector argument"),this.rotation=e,this}},{key:"setScale",value:function(e){return Uk(3===e.length,"setScale requires vector argument"),this.scale=e,this}},{key:"setMatrix",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];t?this.matrix.copy(e):this.matrix=e}},{key:"setMatrixComponents",value:function(e){var t=e.position,n=e.rotation,i=e.scale,r=e.update,o=void 0===r||r;return t&&this.setPosition(t),n&&this.setRotation(n),i&&this.setScale(i),o&&this.updateMatrix(),this}},{key:"updateMatrix",value:function(){var e=this.position,t=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(e),this.matrix.rotateXYZ(t),this.matrix.scale(n),this}},{key:"update",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.position,n=e.rotation,i=e.scale;return t&&this.setPosition(t),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}},{key:"getCoordinateUniforms",value:function(e,t){Uk(e),t=t||this.matrix;var n=new SO(e).multiplyRight(t),i=n.invert(),r=i.transpose();return{viewMatrix:e,modelMatrix:t,objectMatrix:t,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:r}}},{key:"_setScenegraphNodeProps",value:function(e){"display"in e&&(this.display=e.display),"position"in e&&this.setPosition(e.position),"rotation"in e&&this.setRotation(e.rotation),"scale"in e&&this.setScale(e.scale),"matrix"in e&&this.setMatrix(e.matrix),Object.assign(this.props,e)}}]),e}(),SD=function(t){a(i,t);var n=s(i);function i(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,i);var r=t=Array.isArray(t)?{children:t}:t,o=r.children,a=void 0===o?[]:o;return Gw.assert(a.every(function(e){return e instanceof xD}),"every child must an instance of ScenegraphNode"),(e=n.call(this,t)).children=a,e}return b(i,[{key:"add",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n-1&&t.splice(n,1),this}},{key:"removeAll",value:function(){return this.children=[],this}},{key:"delete",value:function(){this.children.forEach(function(e){return e.delete()}),this.removeAll(),e(p(i.prototype),"delete",this).call(this)}},{key:"traverse",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=n.worldMatrix,o=void 0===r?new SO:r,a=new SO(o).multiplyRight(this.matrix),s=_(this.children);try{for(s.s();!(t=s.n()).done;){var u=t.value;u instanceof i?u.traverse(e,{worldMatrix:a}):e(u,{worldMatrix:a})}}catch(c){s.e(c)}finally{s.f()}}}]),i}(xD);function ED(){var e=new tS(4);return tS!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function CD(e,t,n){n*=.5;var i=Math.sin(n);return e[0]=i*t[0],e[1]=i*t[1],e[2]=i*t[2],e[3]=Math.cos(n),e}function OD(e,t,n){var i=t[0],r=t[1],o=t[2],a=t[3],s=n[0],u=n[1],c=n[2],l=n[3];return e[0]=i*l+a*s+r*c-o*u,e[1]=r*l+a*u+o*s-i*c,e[2]=o*l+a*c+i*u-r*s,e[3]=a*l-i*s-r*u-o*c,e}var TD=sO,AD=function(){var e=nS(),t=iS(1,0,0),n=iS(0,1,0);return function(i,r,o){var a=rS(r,o);return a<-.999999?(oS(e,t,r),function(e){return Math.hypot(e[0],e[1],e[2])}(e)<1e-6&&oS(e,n,r),function(e,t){var n=t[0],i=t[1],r=t[2],o=n*n+i*i+r*r;o>0&&(o=1/Math.sqrt(o)),e[0]=t[0]*o,e[1]=t[1]*o,e[2]=t[2]*o}(e,e),CD(i,e,Math.PI),i):a>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(oS(e,r,o),i[0]=e[0],i[1]=e[1],i[2]=e[2],i[3]=1+a,function(e,t){var n=t[0],i=t[1],r=t[2],o=t[3],a=n*n+i*i+r*r+o*o;return a>0&&(a=1/Math.sqrt(a)),e[0]=n*a,e[1]=i*a,e[2]=r*a,e[3]=o*a,e}(i,i))}}();ED(),ED(),function(){var e=new tS(9);tS!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1}();var PD=[0,0,0,1],MD={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},ID={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function RD(e){if(!e._animation){var t=ID[e.componentType],n=MD[e.type],i=n*e.count,r=e.bufferView.data,o=new t(r.buffer,r.byteOffset+(e.byteOffset||0),i);if(1===n)e._animation=Array.from(o);else{for(var a=[],s=0;s0&&void 0!==arguments[0]?arguments[0]:0,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1;return m(this,i),e=n.call(this,-0,-0,-0,-0),Array.isArray(t)&&1===arguments.length?e.copy(t):e.set(t,r,o,a),e}return b(i,[{key:"copy",value:function(e){return this[0]=e[0],this[1]=e[1],this[2]=e[2],this[3]=e[3],this.check()}},{key:"set",value:function(e,t,n,i){return this[0]=e,this[1]=t,this[2]=n,this[3]=i,this.check()}},{key:"fromMatrix3",value:function(e){return function(e,t){var n,i=t[0]+t[4]+t[8];if(i>0)n=Math.sqrt(i+1),e[3]=.5*n,e[0]=(t[5]-t[7])*(n=.5/n),e[1]=(t[6]-t[2])*n,e[2]=(t[1]-t[3])*n;else{var r=0;t[4]>t[0]&&(r=1),t[8]>t[3*r+r]&&(r=2);var o=(r+1)%3,a=(r+2)%3;n=Math.sqrt(t[3*r+r]-t[3*o+o]-t[3*a+a]+1),e[r]=.5*n,e[3]=(t[3*o+a]-t[3*a+o])*(n=.5/n),e[o]=(t[3*o+r]+t[3*r+o])*n,e[a]=(t[3*a+r]+t[3*r+a])*n}}(this,e),this.check()}},{key:"identity",value:function(){return function(e){e[0]=0,e[1]=0,e[2]=0,e[3]=1}(this),this.check()}},{key:"fromAxisRotation",value:function(e,t){return CD(this,e,t),this.check()}},{key:"setAxisAngle",value:function(e,t){return this.fromAxisRotation(e,t)}},{key:"ELEMENTS",get:function(){return 4}},{key:"x",get:function(){return this[0]},set:function(e){this[0]=Kx(e)}},{key:"y",get:function(){return this[1]},set:function(e){this[1]=Kx(e)}},{key:"z",get:function(){return this[2]},set:function(e){this[2]=Kx(e)}},{key:"w",get:function(){return this[3]},set:function(e){this[3]=Kx(e)}},{key:"len",value:function(){return function(e){return Math.hypot(e[0],e[1],e[2],e[3])}(this)}},{key:"lengthSquared",value:function(){return function(e){var t=e[0],n=e[1],i=e[2],r=e[3];return t*t+n*n+i*i+r*r}(this)}},{key:"dot",value:function(e,t){if(void 0!==t)throw new Error("Quaternion.dot only takes one argument");return function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}(this,e)}},{key:"rotationTo",value:function(e,t){return AD(this,e,t),this.check()}},{key:"add",value:function(e,t){if(void 0!==t)throw new Error("Quaternion.add only takes one argument");return function(e,t,n){e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3]}(this,this,e),this.check()}},{key:"calculateW",value:function(){return function(e,t){var n=t[0],i=t[1],r=t[2];e[0]=n,e[1]=i,e[2]=r,e[3]=Math.sqrt(Math.abs(1-n*n-i*i-r*r))}(this,this),this.check()}},{key:"conjugate",value:function(){return function(e,t){e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3]}(this,this),this.check()}},{key:"invert",value:function(){return function(e,t){var n=t[0],i=t[1],r=t[2],o=t[3],a=n*n+i*i+r*r+o*o,s=a?1/a:0;e[0]=-n*s,e[1]=-i*s,e[2]=-r*s,e[3]=o*s}(this,this),this.check()}},{key:"lerp",value:function(e,t,n){return function(e,t,n,i){var r=t[0],o=t[1],a=t[2],s=t[3];e[0]=r+i*(n[0]-r),e[1]=o+i*(n[1]-o),e[2]=a+i*(n[2]-a),e[3]=s+i*(n[3]-s)}(this,e,t,n),this.check()}},{key:"multiplyRight",value:function(e,t){return Xx(!t),OD(this,this,e),this.check()}},{key:"multiplyLeft",value:function(e,t){return Xx(!t),OD(this,e,this),this.check()}},{key:"normalize",value:function(){var e=this.len(),t=e>0?1/e:0;return this[0]=this[0]*t,this[1]=this[1]*t,this[2]=this[2]*t,this[3]=this[3]*t,0===e&&(this[3]=1),this.check()}},{key:"rotateX",value:function(e){return function(e,t,n){n*=.5;var i=t[0],r=t[1],o=t[2],a=t[3],s=Math.sin(n),u=Math.cos(n);e[0]=i*u+a*s,e[1]=r*u+o*s,e[2]=o*u-r*s,e[3]=a*u-i*s}(this,this,e),this.check()}},{key:"rotateY",value:function(e){return function(e,t,n){n*=.5;var i=t[0],r=t[1],o=t[2],a=t[3],s=Math.sin(n),u=Math.cos(n);e[0]=i*u-o*s,e[1]=r*u+a*s,e[2]=o*u+i*s,e[3]=a*u-r*s}(this,this,e),this.check()}},{key:"rotateZ",value:function(e){return function(e,t,n){n*=.5;var i=t[0],r=t[1],o=t[2],a=t[3],s=Math.sin(n),u=Math.cos(n);e[0]=i*u+r*s,e[1]=r*u-i*s,e[2]=o*u+a*s,e[3]=a*u-o*s}(this,this,e),this.check()}},{key:"scale",value:function(e){return TD(this,this,e),this.check()}},{key:"slerp",value:function(e,n,i){var r;switch(arguments.length){case 1:var o=arguments[0],a=o.start;e=void 0===a?PD:a,n=o.target,i=o.ratio;break;case 2:n=(r=t(arguments,2))[0],i=r[1],e=this}return function(e,t,n,i){var r,o,a,s,u,c=t[0],l=t[1],h=t[2],d=t[3],f=n[0],p=n[1],v=n[2],g=n[3];(o=c*f+l*p+h*v+d*g)<0&&(o=-o,f=-f,p=-p,v=-v,g=-g),1-o>eS?(r=Math.acos(o),a=Math.sin(r),s=Math.sin((1-i)*r)/a,u=Math.sin(i*r)/a):(s=1-i,u=i),e[0]=s*c+u*f,e[1]=s*l+u*p,e[2]=s*h+u*v,e[3]=s*d+u*g}(this,e,n,i),this.check()}},{key:"transformVector4",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return function(e,t,n){var i=t[0],r=t[1],o=t[2],a=n[0],s=n[1],u=n[2],c=n[3],l=c*i+s*o-u*r,h=c*r+u*i-a*o,d=c*o+a*r-s*i,f=-a*i-s*r-u*o;e[0]=l*c+f*-a+h*-u-d*-s,e[1]=h*c+f*-s+d*-a-l*-u,e[2]=d*c+f*-u+l*-s-h*-a,e[3]=t[3]}(t,e,this),$x(t,4)}},{key:"lengthSq",value:function(){return this.lengthSquared()}},{key:"setFromAxisAngle",value:function(e,t){return this.setAxisAngle(e,t)}},{key:"premultiply",value:function(e,t){return this.multiplyLeft(e,t)}},{key:"multiply",value:function(e,t){return this.multiplyRight(e,t)}}]),i}(Yx)),LD=function(){function e(t){m(this,e),this.startTime=0,this.playing=!0,this.speed=1,this.channels=[],Object.assign(this,t)}return b(e,[{key:"animate",value:function(e){if(this.playing){var t=(e/1e3-this.startTime)*this.speed;this.channels.forEach(function(e){var n=e.sampler,i=e.target,r=e.path;(function(e,t,n,i){var r=t.input,o=t.interpolation,a=t.output,s=e%r[r.length-1],u=r.findIndex(function(e){return e>=s}),c=Math.max(0,u-1);if(!Array.isArray(n[i]))switch(i){case"translation":n[i]=[0,0,0];break;case"rotation":n[i]=[0,0,0,1];break;case"scale":n[i]=[1,1,1];break;default:Gw.warn("Bad animation path ".concat(i))()}Uk(n[i].length===a[c].length);var l=r[c],h=r[u];switch(o){case"STEP":!function(e,t,n){for(var i=0;il&&function(e,t,n,i,r){if("rotation"===t){ND.slerp({start:n,target:i,ratio:r});for(var o=0;ol&&function(e,t,n){for(var i=n.p0,r=n.outTangent0,o=n.inTangent1,a=n.p1,s=n.tDiff,u=n.ratio,c=0;c1&&void 0!==arguments[1]?arguments[1]:{};return m(this,i),(t=n.call(this,r)).onBeforeRender=null,t.AfterRender=null,e instanceof AC?(t.model=e,t._setModelNodeProps(r)):t.model=new AC(e,r),t.managedResources=r.managedResources||[],t}return b(i,[{key:"setProps",value:function(t){return e(p(i.prototype),"setProps",this).call(this,t),this._setModelNodeProps(t),this}},{key:"delete",value:function(){this.model&&(this.model.delete(),this.model=null),this.managedResources.forEach(function(e){return e.delete()}),this.managedResources=[]}},{key:"draw",value:function(){var e;return(e=this.model).draw.apply(e,arguments)}},{key:"setUniforms",value:function(){var e;return(e=this.model).setUniforms.apply(e,arguments),this}},{key:"setAttributes",value:function(){var e;return(e=this.model).setAttributes.apply(e,arguments),this}},{key:"updateModuleSettings",value:function(){var e;return(e=this.model).updateModuleSettings.apply(e,arguments),this}},{key:"_setModelNodeProps",value:function(e){this.model.setProps(e)}}]),i}(xD),BD=function(){function e(t,n){var i=n.attributes,r=n.material,o=n.pbrDebug,a=n.imageBasedLightingEnvironment,s=n.lights,u=n.useTangents;m(this,e),this.gl=t,this.defines={MANUAL_SRGB:1,SRGB_FAST_APPROXIMATION:1},Rx(t,"GLSL_TEXTURE_LOD")&&(this.defines.USE_TEX_LOD=1),this.uniforms={u_Camera:[0,0,0],u_MetallicRoughnessValues:[1,1]},this.parameters={},this.generatedTextures=[],a&&(this.uniforms.u_DiffuseEnvSampler=a.getDiffuseEnvSampler(),this.uniforms.u_SpecularEnvSampler=a.getSpecularEnvSampler(),this.uniforms.u_brdfLUT=a.getBrdfTexture(),this.uniforms.u_ScaleIBLAmbient=[1,1]),o&&(this.uniforms.u_ScaleDiffBaseMR=[0,0,0,0],this.uniforms.u_ScaleFGDSpec=[0,0,0,0]),this.defineIfPresent(i.NORMAL,"HAS_NORMALS"),this.defineIfPresent(i.TANGENT&&u,"HAS_TANGENTS"),this.defineIfPresent(i.TEXCOORD_0,"HAS_UV"),this.defineIfPresent(a,"USE_IBL"),this.defineIfPresent(s,"USE_LIGHTS"),this.defineIfPresent(o,"PBR_DEBUG"),r&&this.parseMaterial(r)}return b(e,[{key:"defineIfPresent",value:function(e,t){e&&(this.defines[t]=1)}},{key:"parseTexture",value:function(e,t){var n,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=e.texture.source.image,a={};r.compressed?(n=r,a=o({},this.gl.TEXTURE_MIN_FILTER,r.data.length>1?this.gl.LINEAR_MIPMAP_NEAREST:this.gl.LINEAR)):n={data:r};var s=new gx(this.gl,M({id:e.name||e.id,parameters:M(M({},e.texture&&e.texture.sampler&&e.texture.sampler.parameters||{}),a),pixelStore:o({},this.gl.UNPACK_FLIP_Y_WEBGL,!1)},n));this.uniforms[t]=s,this.defineIfPresent(i,i),this.generatedTextures.push(s)}},{key:"parsePbrMetallicRoughness",value:function(e){e.baseColorTexture&&this.parseTexture(e.baseColorTexture,"u_BaseColorSampler","HAS_BASECOLORMAP"),this.uniforms.u_BaseColorFactor=e.baseColorFactor||[1,1,1,1],e.metallicRoughnessTexture&&this.parseTexture(e.metallicRoughnessTexture,"u_MetallicRoughnessSampler","HAS_METALROUGHNESSMAP");var t=e.metallicFactor,n=void 0===t?1:t,i=e.roughnessFactor,r=void 0===i?1:i;this.uniforms.u_MetallicRoughnessValues=[n,r]}},{key:"parseMaterial",value:function(e){if(this.uniforms.pbr_uUnlit=Boolean(e.unlit),e.pbrMetallicRoughness&&this.parsePbrMetallicRoughness(e.pbrMetallicRoughness),e.normalTexture){this.parseTexture(e.normalTexture,"u_NormalSampler","HAS_NORMALMAP");var t=e.normalTexture.scale,n=void 0===t?1:t;this.uniforms.u_NormalScale=n}if(e.occlusionTexture){this.parseTexture(e.occlusionTexture,"u_OcclusionSampler","HAS_OCCLUSIONMAP");var i=e.occlusionTexture.strength,r=void 0===i?1:i;this.uniforms.u_OcclusionStrength=r}if(e.emissiveTexture&&(this.parseTexture(e.emissiveTexture,"u_EmissiveSampler","HAS_EMISSIVEMAP"),this.uniforms.u_EmissiveFactor=e.emissiveFactor||[0,0,0]),"MASK"===e.alphaMode){var o=e.alphaCutoff,a=void 0===o?.5:o;this.defines.ALPHA_CUTOFF=1,this.uniforms.u_AlphaCutoff=a}else"BLEND"===e.alphaMode&&(Gw.warn("BLEND alphaMode might not work well because it requires mesh sorting")(),Object.assign(this.parameters,{blend:!0,blendEquation:this.gl.FUNC_ADD,blendFunc:[this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA]}))}}]),e}();function VD(e,t){return Xw(e)?"#version 300 es\n".concat(t):t}var zD={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},UD={modelOptions:{},pbrDebug:!1,imageBasedLightingEnvironment:null,lights:!0,useTangents:!1},HD=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(this,e),this.gl=t,this.options=Object.assign({},UD,n)}return b(e,[{key:"instantiate",value:function(e){var t=this;return this.gltf=e,(e.scenes||[]).map(function(e){return t.createScene(e)})}},{key:"createAnimator",value:function(){return Array.isArray(this.gltf.animations)?new jD(this.gltf):null}},{key:"createScene",value:function(e){var t=this,n=(e.nodes||[]).map(function(e){return t.createNode(e)});return new SD({id:e.name||e.id,children:n})}},{key:"createNode",value:function(e){var t=this;if(!e._node){var n=(e.children||[]).map(function(e){return t.createNode(e)});e.mesh&&n.push(this.createMesh(e.mesh));var i=new SD({id:e.name||e.id,children:n});if(e.matrix)i.setMatrix(e.matrix);else{if(i.matrix.identity(),e.translation&&i.matrix.translate(e.translation),e.rotation){var r=(new SO).fromQuaternion(e.rotation);i.matrix.multiplyRight(r)}e.scale&&i.matrix.scale(e.scale)}e._node=i}return e._node}},{key:"createMesh",value:function(e){var t=this;if(!e._mesh){var n=(e.primitives||[]).map(function(n,i){return t.createPrimitive(n,i,e)}),i=new SD({id:e.name||e.id,children:n});e._mesh=i}return e._mesh}},{key:"getVertexCount",value:function(e){Gw.warn("getVertexCount() not found")()}},{key:"createPrimitive",value:function(e,t,n){return function(e,t){var n=t.id,i=t.drawMode,r=t.vertexCount,o=t.attributes,a=t.modelOptions,s=new BD(e,t);Gw.info(4,"createGLTFModel defines: ",s.defines)();var u=[];u.push.apply(u,v(s.generatedTextures)),u.push.apply(u,v(Object.values(o).map(function(e){return e.buffer})));var c=new FD(e,Object.assign({id:n,drawMode:i,vertexCount:r,modules:[kD],defines:s.defines,parameters:s.parameters,vs:VD(e,"\n#if (__VERSION__ < 300)\n #define _attr attribute\n#else\n #define _attr in\n#endif\n\n _attr vec4 POSITION;\n\n #ifdef HAS_NORMALS\n _attr vec4 NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _attr vec4 TANGENT;\n #endif\n\n #ifdef HAS_UV\n _attr vec2 TEXCOORD_0;\n #endif\n\n void main(void) {\n vec4 _NORMAL = vec4(0.);\n vec4 _TANGENT = vec4(0.);\n vec2 _TEXCOORD_0 = vec2(0.);\n\n #ifdef HAS_NORMALS\n _NORMAL = NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _TANGENT = TANGENT;\n #endif\n\n #ifdef HAS_UV\n _TEXCOORD_0 = TEXCOORD_0;\n #endif\n\n pbr_setPositionNormalTangentUV(POSITION, _NORMAL, _TANGENT, _TEXCOORD_0);\n gl_Position = u_MVPMatrix * POSITION;\n }\n"),fs:VD(e,"\n#if (__VERSION__ < 300)\n #define fragmentColor gl_FragColor\n#else\n out vec4 fragmentColor;\n#endif\n\n void main(void) {\n fragmentColor = pbr_filterColor(vec4(0));\n }\n"),managedResources:u},a));return c.setProps({attributes:o}),c.setUniforms(s.uniforms),c}(this.gl,Object.assign({id:e.name||"".concat(n.name||n.id,"-primitive-").concat(t),drawMode:e.mode||4,vertexCount:e.indices?e.indices.count:this.getVertexCount(e.attributes),attributes:this.createAttributes(e.attributes,e.indices),material:e.material},this.options))}},{key:"createAttributes",value:function(e,t){var n=this,i={};return Object.keys(e).forEach(function(t){i[t]=n.createAccessor(e[t],n.createBuffer(e[t],n.gl.ARRAY_BUFFER))}),t&&(i.indices=this.createAccessor(t,this.createBuffer(t,this.gl.ELEMENT_ARRAY_BUFFER))),Gw.info(4,"glTF Attributes",{attributes:e,indices:t,generated:i})(),i}},{key:"createBuffer",value:function(e,t){e.bufferView||(e.bufferView={});var n=e.bufferView;return n.lumaBuffers||(n.lumaBuffers={}),n.lumaBuffers[t]||(n.lumaBuffers[t]=new ux(this.gl,{id:"from-".concat(n.id),data:n.data||e.value,target:t})),n.lumaBuffers[t]}},{key:"createAccessor",value:function(e,t){return new rx({buffer:t,offset:e.byteOffset||0,stride:e.bufferView.byteStride||0,type:e.componentType,size:zD[e.type]})}},{key:"createSampler",value:function(e){return e}},{key:"needsPOT",value:function(){return!1}}]),e}();function GD(e,t,n){if(e.byteLength<=t+n)return"";for(var i=new DataView(e),r="",o=0;o")}}]),i}(ZD,Symbol.toStringTag),lN=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new Map;m(this,e),gA(this,"name",void 0),gA(this,"type",void 0),gA(this,"nullable",void 0),gA(this,"metadata",void 0),this.name=t,this.type=n,this.nullable=i,this.metadata=r}return b(e,[{key:"typeId",get:function(){return this.type&&this.type.typeId}},{key:"clone",value:function(){return new e(this.name,this.type,this.nullable,this.metadata)}},{key:"compareTo",value:function(e){return this.name===e.name&&this.type===e.type&&this.nullable===e.nullable&&this.metadata===e.metadata}},{key:"toString",value:function(){return"".concat(this.type).concat(this.nullable?", nullable":"").concat(this.metadata?", metadata: ".concat(this.metadata):"")}}]),e}();function hN(e,t,n){var i=n?dN(n.metadata):void 0,r=function(e){switch(e.constructor){case Int8Array:return new eN;case Uint8Array:return new iN;case Int16Array:return new tN;case Uint16Array:return new rN;case Int32Array:return new nN;case Uint32Array:return new oN;case Float32Array:return new sN;case Float64Array:return new uN;default:throw new Error("array type not supported")}}(t.value);return new lN(e,new cN(t.size,new lN("value",r)),!1,i)}function dN(e){var t=new Map;for(var n in e)t.set("".concat(n,".string"),JSON.stringify(e[n]));return t}var fN={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},pN={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array},vN=function(){function e(t){m(this,e),gA(this,"draco",void 0),gA(this,"decoder",void 0),gA(this,"metadataQuerier",void 0),this.draco=t,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}return b(e,[{key:"destroy",value:function(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}},{key:"parseSync",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=new this.draco.DecoderBuffer;n.Init(new Int8Array(e),e.byteLength),this._disableAttributeTransforms(t);var i=this.decoder.GetEncodedGeometryType(n),r=i===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{var o;switch(i){case this.draco.TRIANGULAR_MESH:o=this.decoder.DecodeBufferToMesh(n,r);break;case this.draco.POINT_CLOUD:o=this.decoder.DecodeBufferToPointCloud(n,r);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!o.ok()||!r.ptr){var a="DRACO decompression failed: ".concat(o.error_msg());throw new Error(a)}var s=this._getDracoLoaderData(r,i,t),u=this._getMeshData(r,s,t),c=function(e){for(var t=1/0,n=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0,s=e.POSITION?e.POSITION.value:[],u=s&&s.length,c=0;cr?l:r,o=h>o?h:o,a=d>a?d:a}return[[t,n,i],[r,o,a]]}(u.attributes),l=function(e,t,n){var i=dN(t.metadata),r=[],o=function(e){var t={};for(var n in e){var i=e[n];t[i.name||"undefined"]=i}return t}(t.attributes);for(var a in e){var s=hN(a,e[a],o[a]);r.push(s)}if(n){var u=hN("indices",n);r.push(u)}return new $D(r,i)}(u.attributes,s,u.indices);return I(M({loader:"draco",loaderData:s,header:{vertexCount:r.num_points(),boundingBox:c}},u),{schema:l})}finally{this.draco.destroy(n),r&&this.draco.destroy(r)}}},{key:"_getDracoLoaderData",value:function(e,t,n){var i=this._getTopLevelMetadata(e),r=this._getDracoAttributes(e,n);return{geometry_type:t,num_attributes:e.num_attributes(),num_points:e.num_points(),num_faces:e instanceof this.draco.Mesh?e.num_faces():0,metadata:i,attributes:r}}},{key:"_getDracoAttributes",value:function(e,t){for(var n={},i=0;i1&&void 0!==r[1]?r[1]:null,i=r.length>2&&void 0!==r[2]?r[2]:{},n&&(t=_N(t,n,i)),mN[t]=mN[t]||wN(t),e.next=6,mN[t];case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _N(e,t,n){if(e.startsWith("http"))return e;var i=n.modules||{};return i[e]?i[e]:IA?n.CDN?(TA(n.CDN.startsWith("http")),"".concat(n.CDN,"/").concat(t,"@3.0.12/dist/libs/").concat(e)):RA?"../src/libs/".concat(e):"modules/".concat(t,"/src/libs/").concat(e):"modules/".concat(t,"/dist/libs/").concat(e)}function wN(e){return kN.apply(this,arguments)}function kN(){return(kN=xx(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t.endsWith("wasm")){e.next=8;break}return e.next=3,fetch(t);case 3:return e.next=5,e.sent.arrayBuffer();case 5:e.t0=e.sent,e.next=31;break;case 8:if(!IA){e.next=24;break}if(!RA){e.next=13;break}e.t2=importScripts(t),e.next=21;break;case 13:return e.t3=xN,e.next=16,fetch(t);case 16:return e.next=18,e.sent.text();case 18:e.t4=e.sent,e.t5=t,e.t2=(0,e.t3)(e.t4,e.t5);case 21:e.t1=e.t2,e.next=30;break;case 24:if(e.t6=gN.requireFromFile,!e.t6){e.next=29;break}return e.next=28,gN.requireFromFile(t);case 28:e.t6=e.sent;case 29:e.t1=e.t6;case 30:e.t0=e.t1;case 31:return e.abrupt("return",e.t0);case 32:case"end":return e.stop()}},e)}))).apply(this,arguments)}function xN(e,t){if(!IA)return gN.requireFromString&&gN.requireFromString(e,t);if(RA)return eval.call(MA,e),null;var n=document.createElement("script");n.id=t;try{n.appendChild(document.createTextNode(e))}catch(i){n.text=e}return document.body.appendChild(n),null}var SN,EN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.js",CN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_wasm_wrapper.js",ON="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.wasm";function TN(e){return AN.apply(this,arguments)}function AN(){return(AN=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.modules||{},SN=n.draco3d?SN||n.draco3d.createDecoderModule({}).then(function(e){return{draco:e}}):SN||PN(t),e.next=4,SN;case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function PN(e){return MN.apply(this,arguments)}function MN(){return(MN=xx(regeneratorRuntime.mark(function e(n){var i,r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:e.t0=n.draco&&n.draco.decoderType,e.next="js"===e.t0?3:(e.t0,7);break;case 3:return e.next=5,yN(EN,"draco",n);case 5:return i=e.sent,e.abrupt("break",21);case 7:return e.t1=Promise,e.next=10,yN(CN,"draco",n);case 10:return e.t2=e.sent,e.next=13,yN(ON,"draco",n);case 13:return e.t3=e.sent,e.t4=[e.t2,e.t3],e.next=17,e.t1.all.call(e.t1,e.t4);case 17:o=e.sent,a=t(o,2),i=a[0],r=a[1];case 21:return i=i||globalThis.DracoDecoderModule,e.next=24,IN(i,r);case 24:return e.abrupt("return",e.sent);case 25:case"end":return e.stop()}},e)}))).apply(this,arguments)}function IN(e,t){var n={};return t&&(n.wasmBinary=t),new Promise(function(t){e(I(M({},n),{onModuleLoaded:function(e){return t({draco:e})}}))})}var RN=I(M({},KD),{parse:function(e,t){return DN.apply(this,arguments)}});function DN(){return(DN=xx(regeneratorRuntime.mark(function e(t,n){var i,r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,TN(n);case 2:return i=e.sent,r=i.draco,o=new vN(r),e.prev=5,e.abrupt("return",o.parseSync(t,null==n?void 0:n.draco));case 7:return e.prev=7,o.destroy(),e.finish(7);case 10:case"end":return e.stop()}},e,null,[[5,,7,10]])}))).apply(this,arguments)}function NN(e,t){return zT(e>=0),zT(t>0),e+(t-1)&~(t-1)}function LN(e,t,n){var i;return i=e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer||e.arrayBuffer,e.byteOffset,e.byteLength),t.set(i,n),n+NN(i.byteLength,4)}var jN=["SCALAR","VEC2","VEC3","VEC4"],FN=[[Int8Array,5120],[Uint8Array,5121],[Int16Array,5122],[Uint16Array,5123],[Uint32Array,5125],[Float32Array,5126],[Float64Array,5130]],BN=new Map(FN),VN={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},zN={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},UN={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function HN(e){return jN[e-1]||jN[0]}function GN(e){var t=BN.get(e.constructor);if(!t)throw new Error("Illegal typed array");return t}function WN(e,t){var n=UN[e.componentType],i=VN[e.type],r=e.count*i,o=e.count*i*zN[e.componentType];return WD(o>=0&&o<=t.byteLength),{ArrayType:n,length:r,byteLength:o}}var qN={asset:{version:"2.0",generator:"loaders.gl"},buffers:[]},XN=function(){function e(t){m(this,e),gA(this,"gltf",void 0),gA(this,"sourceBuffers",void 0),gA(this,"byteLength",void 0),this.gltf=t||{json:M({},qN),buffers:[]},this.sourceBuffers=[],this.byteLength=0,this.gltf.buffers&&this.gltf.buffers[0]&&(this.byteLength=this.gltf.buffers[0].byteLength,this.sourceBuffers=[this.gltf.buffers[0]])}return b(e,[{key:"json",get:function(){return this.gltf.json}},{key:"getApplicationData",value:function(e){return this.json[e]}},{key:"getExtraData",value:function(e){return(this.json.extras||{})[e]}},{key:"getExtension",value:function(e){return this.getUsedExtensions().find(function(t){return t===e})?(this.json.extensions||{})[e]||!0:null}},{key:"getRequiredExtension",value:function(e){return this.getRequiredExtensions().find(function(t){return t===e})?this.getExtension(e):null}},{key:"getRequiredExtensions",value:function(){return this.json.extensionsRequired||[]}},{key:"getUsedExtensions",value:function(){return this.json.extensionsUsed||[]}},{key:"getObjectExtension",value:function(e,t){return(e.extensions||{})[t]}},{key:"getScene",value:function(e){return this.getObject("scenes",e)}},{key:"getNode",value:function(e){return this.getObject("nodes",e)}},{key:"getSkin",value:function(e){return this.getObject("skins",e)}},{key:"getMesh",value:function(e){return this.getObject("meshes",e)}},{key:"getMaterial",value:function(e){return this.getObject("materials",e)}},{key:"getAccessor",value:function(e){return this.getObject("accessors",e)}},{key:"getTexture",value:function(e){return this.getObject("textures",e)}},{key:"getSampler",value:function(e){return this.getObject("samplers",e)}},{key:"getImage",value:function(e){return this.getObject("images",e)}},{key:"getBufferView",value:function(e){return this.getObject("bufferViews",e)}},{key:"getBuffer",value:function(e){return this.getObject("buffers",e)}},{key:"getObject",value:function(e,t){if("object"==typeof t)return t;var n=this.json[e]&&this.json[e][t];if(!n)throw new Error("glTF file error: Could not find ".concat(e,"[").concat(t,"]"));return n}},{key:"getTypedArrayForBufferView",value:function(e){e=this.getBufferView(e);var t=this.gltf.buffers[e.buffer];return WD(t),new Uint8Array(t.arrayBuffer,(e.byteOffset||0)+t.byteOffset,e.byteLength)}},{key:"getTypedArrayForAccessor",value:function(e){e=this.getAccessor(e);var t=this.getBufferView(e.bufferView),n=this.getBuffer(t.buffer).data,i=WN(e,t),r=i.ArrayType,o=i.length;return new r(n,t.byteOffset+e.byteOffset,o)}},{key:"getTypedArrayForImageData",value:function(e){e=this.getAccessor(e);var t=this.getBufferView(e.bufferView),n=this.getBuffer(t.buffer).data;return new Uint8Array(n,t.byteOffset||0,t.byteLength)}},{key:"addApplicationData",value:function(e,t){return this.json[e]=t,this}},{key:"addExtraData",value:function(e,t){return this.json.extras=this.json.extras||{},this.json.extras[e]=t,this}},{key:"addObjectExtension",value:function(e,t,n){return e.extensions=e.extensions||{},e.extensions[t]=n,this.registerUsedExtension(t),this}},{key:"setObjectExtension",value:function(e,t,n){(e.extensions||{})[t]=n}},{key:"removeObjectExtension",value:function(e,t){var n=e.extensions||{},i=n[t];return delete n[t],i}},{key:"addExtension",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return WD(t),this.json.extensions=this.json.extensions||{},this.json.extensions[e]=t,this.registerUsedExtension(e),t}},{key:"addRequiredExtension",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return WD(t),this.addExtension(e,t),this.registerRequiredExtension(e),t}},{key:"registerUsedExtension",value:function(e){this.json.extensionsUsed=this.json.extensionsUsed||[],this.json.extensionsUsed.find(function(t){return t===e})||this.json.extensionsUsed.push(e)}},{key:"registerRequiredExtension",value:function(e){this.registerUsedExtension(e),this.json.extensionsRequired=this.json.extensionsRequired||[],this.json.extensionsRequired.find(function(t){return t===e})||this.json.extensionsRequired.push(e)}},{key:"removeExtension",value:function(e){this.json.extensionsRequired&&this._removeStringFromArray(this.json.extensionsRequired,e),this.json.extensionsUsed&&this._removeStringFromArray(this.json.extensionsUsed,e),this.json.extensions&&delete this.json.extensions[e]}},{key:"setDefaultScene",value:function(e){this.json.scene=e}},{key:"addScene",value:function(e){var t=e.nodeIndices;return this.json.scenes=this.json.scenes||[],this.json.scenes.push({nodes:t}),this.json.scenes.length-1}},{key:"addNode",value:function(e){var t=e.meshIndex,n=e.matrix;this.json.nodes=this.json.nodes||[];var i={mesh:t};return n&&(i.matrix=n),this.json.nodes.push(i),this.json.nodes.length-1}},{key:"addMesh",value:function(e){var t=e.attributes,n=e.indices,i=e.material,r=e.mode,o=void 0===r?4:r,a={primitives:[{attributes:this._addAttributes(t),mode:o}]};if(n){var s=this._addIndices(n);a.primitives[0].indices=s}return Number.isFinite(i)&&(a.primitives[0].material=i),this.json.meshes=this.json.meshes||[],this.json.meshes.push(a),this.json.meshes.length-1}},{key:"addPointCloud",value:function(e){var t={primitives:[{attributes:this._addAttributes(e),mode:0}]};return this.json.meshes=this.json.meshes||[],this.json.meshes.push(t),this.json.meshes.length-1}},{key:"addImage",value:function(e,t){var n=JI(e),i=t||(null==n?void 0:n.mimeType),r={bufferView:this.addBufferView(e),mimeType:i};return this.json.images=this.json.images||[],this.json.images.push(r),this.json.images.length-1}},{key:"addBufferView",value:function(e){var t=e.byteLength;WD(Number.isFinite(t)),this.sourceBuffers=this.sourceBuffers||[],this.sourceBuffers.push(e);var n={buffer:0,byteOffset:this.byteLength,byteLength:t};return this.byteLength+=NN(t,4),this.json.bufferViews=this.json.bufferViews||[],this.json.bufferViews.push(n),this.json.bufferViews.length-1}},{key:"addAccessor",value:function(e,t){var n={bufferView:e,type:HN(t.size),componentType:t.componentType,count:t.count,max:t.max,min:t.min};return this.json.accessors=this.json.accessors||[],this.json.accessors.push(n),this.json.accessors.length-1}},{key:"addBinaryBuffer",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{size:3},n=this.addBufferView(e),i={min:t.min,max:t.max};(!i.min||!i.max)&&(i=this._getAccessorMinMax(e,t.size));var r={size:t.size,componentType:GN(e),count:Math.round(e.length/t.size),min:i.min,max:i.max};return this.addAccessor(n,Object.assign(r,t))}},{key:"addTexture",value:function(e){var t={source:e.imageIndex};return this.json.textures=this.json.textures||[],this.json.textures.push(t),this.json.textures.length-1}},{key:"addMaterial",value:function(e){return this.json.materials=this.json.materials||[],this.json.materials.push(e),this.json.materials.length-1}},{key:"createBinaryChunk",value:function(){var e,t;this.gltf.buffers=[];var n,i=this.byteLength,r=new ArrayBuffer(i),o=new Uint8Array(r),a=0,s=_(this.sourceBuffers||[]);try{for(s.s();!(n=s.n()).done;){a=LN(n.value,o,a)}}catch(u){s.e(u)}finally{s.f()}null!==(e=this.json)&&void 0!==e&&null!==(t=e.buffers)&&void 0!==t&&t[0]?this.json.buffers[0].byteLength=i:this.json.buffers=[{byteLength:i}],this.gltf.binary=r,this.sourceBuffers=[r]}},{key:"_removeStringFromArray",value:function(e,t){for(var n=!0;n;){var i=e.indexOf(t);i>-1?e.splice(i,1):n=!1}}},{key:"_addAttributes",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={};for(var n in e){var i=e[n],r=this._getGltfAttributeName(n),o=this.addBinaryBuffer(i.value,i);t[r]=o}return t}},{key:"_addIndices",value:function(e){return this.addBinaryBuffer(e,{size:1})}},{key:"_getGltfAttributeName",value:function(e){switch(e.toLowerCase()){case"position":case"positions":case"vertices":return"POSITION";case"normal":case"normals":return"NORMAL";case"color":case"colors":return"COLOR_0";case"texcoord":case"texcoords":return"TEXCOORD_0";default:return e}}},{key:"_getAccessorMinMax",value:function(e,t){var n={min:null,max:null};if(e.length2&&void 0!==arguments[2]&&arguments[2];return e?Array.isArray(e)?new t(e):!n||e instanceof t?e:new t(e):null}(t,Float32Array)),i=t.length/n),{buffer:t,size:n,count:i}}(e),n=t.buffer,i=t.size;return{value:n,size:i,byteOffset:0,count:t.count,type:HN(i),componentType:GN(n)}}function tL(e,t,n){return nL.apply(this,arguments)}function nL(){return(nL=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(null!=n&&null!==(r=n.gltf)&&void 0!==r&&r.decompressMeshes){e.next=2;break}return e.abrupt("return");case 2:o=new XN(t),a=[],s=_(uL(o));try{for(s.s();!(u=s.n()).done;)c=u.value,o.getObjectExtension(c,KN)&&a.push(rL(o,c,n,i))}catch(l){s.e(l)}finally{s.f()}return e.next=7,Promise.all(a);case 7:o.removeExtension(KN);case 8:case"end":return e.stop()}},e)}))).apply(this,arguments)}function iL(e){var t,n=new XN(e),i=_(n.json.meshes||[]);try{for(i.s();!(t=i.n()).done;){var r=t.value;aL(r),n.addRequiredExtension(KN)}}catch(o){i.e(o)}finally{i.f()}}function rL(e,t,n,i){return oL.apply(this,arguments)}function oL(){return(oL=xx(regeneratorRuntime.mark(function e(n,i,r,o){var a,s,u,c,l,h,d,f,p,v,g,m,y;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(a=n.getObjectExtension(i,KN)){e.next=3;break}return e.abrupt("return");case 3:return s=n.getTypedArrayForBufferView(a.bufferView),u=tP(s.buffer,s.byteOffset),c=o.parse,delete(l=M({},r))["3d-tiles"],e.next=7,c(u,RN,l,o);case 7:for(h=e.sent,d=JN(h.attributes),f=0,p=Object.entries(d);f2&&void 0!==arguments[2]?arguments[2]:4,r=arguments.length>3?arguments[3]:void 0,a=arguments.length>4?arguments[4]:void 0;if(!r.DracoWriter)throw new Error("options.gltf.DracoWriter not provided");var s=r.DracoWriter.encodeSync({attributes:e}),u=null==a||null===(n=a.parseSync)||void 0===n?void 0:n.call(a,{attributes:e}),c=r._addFauxAttributes(u.attributes),l=r.addBufferView(s);return{primitives:[{attributes:c,mode:i,extensions:o({},KN,{bufferView:l,attributes:c})}]}}function sL(e){if(!e.attributes&&Object.keys(e.attributes).length>0)throw new Error("glTF: Empty primitive detected: Draco decompression failure?")}function uL(e){var t,n,i,r,o,a;return regeneratorRuntime.wrap(function(s){for(;;)switch(s.prev=s.next){case 0:t=_(e.json.meshes||[]),s.prev=1,t.s();case 3:if((n=t.n()).done){s.next=24;break}i=n.value,r=_(i.primitives),s.prev=6,r.s();case 8:if((o=r.n()).done){s.next=14;break}return a=o.value,s.next=12,a;case 12:s.next=8;break;case 14:s.next=19;break;case 16:s.prev=16,s.t0=s.catch(6),r.e(s.t0);case 19:return s.prev=19,r.f(),s.finish(19);case 22:s.next=3;break;case 24:s.next=29;break;case 26:s.prev=26,s.t1=s.catch(1),t.e(s.t1);case 29:return s.prev=29,t.f(),s.finish(29);case 32:case"end":return s.stop()}},O,null,[[1,26,29,32],[6,16,19,22]])}function cL(e){return lL.apply(this,arguments)}function lL(){return(lL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=new XN(t),i=n.json,n.removeExtension(QN),r=_(i.materials||[]);try{for(r.s();!(o=r.n()).done;)(a=o.value).extensions&&a.extensions.KHR_materials_unlit&&(a.unlit=!0),n.removeObjectExtension(a,QN)}catch(s){r.e(s)}finally{r.f()}case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function hL(e){var t=new XN(e),n=t.json;if(t.materials){var i,r=_(n.materials||[]);try{for(r.s();!(i=r.n()).done;){var o=i.value;o.unlit&&(delete o.unlit,t.addObjectExtension(o,QN,{}),t.addExtension(QN))}}catch(a){r.e(a)}finally{r.f()}}}function dL(e){return fL.apply(this,arguments)}function fL(){return(fL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s,u;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=new XN(t),i=n.json,(r=n.getExtension($N))&&(n.json.lights=r.lights,n.removeExtension($N)),o=_(i.nodes||[]);try{for(o.s();!(a=o.n()).done;)s=a.value,(u=n.getObjectExtension(s,$N))&&(s.light=u.light),n.removeObjectExtension(s,$N)}catch(c){o.e(c)}finally{o.f()}case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function pL(e){return vL.apply(this,arguments)}function vL(){return(vL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=new XN(t),(i=n.json).lights&&(WD(!(r=n.addExtension($N)).lights),r.lights=i.lights,delete i.lights),n.json.lights){o=_(n.json.lights);try{for(o.s();!(a=o.n()).done;)s=a.value,n.addObjectExtension(s.node,$N,s)}catch(u){o.e(u)}finally{o.f()}delete n.json.lights}case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}function gL(e){return mL.apply(this,arguments)}function mL(){return(mL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s,u,c;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=new XN(t),i=n.json,r=n.getExtension(ZN)){o=_L(r,n),a=_(i.materials||[]);try{for(a.s();!(s=a.n()).done;)u=s.value,(c=n.getObjectExtension(u,ZN))&&(u.technique=Object.assign({},c,o[c.technique]),u.technique.values=wL(u.technique,n)),n.removeObjectExtension(u,ZN)}catch(l){a.e(l)}finally{a.f()}n.removeExtension(ZN)}case 2:case"end":return e.stop()}},e)}))).apply(this,arguments)}function yL(e,t){return bL.apply(this,arguments)}function bL(){return(bL=xx(regeneratorRuntime.mark(function e(t,n){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},e)}))).apply(this,arguments)}function _L(e,t){var n=e.programs,i=void 0===n?[]:n,r=e.shaders,o=void 0===r?[]:r,a=e.techniques,s=void 0===a?[]:a,u=new TextDecoder;return o.forEach(function(e){if(!Number.isFinite(e.bufferView))throw new Error("KHR_techniques_webgl: no shader code");e.code=u.decode(t.getTypedArrayForBufferView(e.bufferView))}),i.forEach(function(e){e.fragmentShader=o[e.fragmentShader],e.vertexShader=o[e.vertexShader]}),s.forEach(function(e){e.program=i[e.program]}),s}function wL(e,t){var n=Object.assign({},e.values);return Object.keys(e.uniforms||{}).forEach(function(t){e.uniforms[t].value&&!(t in n)&&(n[t]=e.uniforms[t].value)}),Object.keys(n).forEach(function(e){"object"==typeof n[e]&&void 0!==n[e].index&&(n[e].texture=t.getTexture(n[e].index))}),n}var kL={KHR_draco_mesh_compression:T,KHR_materials_unlit:P,KHR_lights_punctual:R,KHR_techniques_webgl:D};function xL(e){return SL.apply(this,arguments)}function SL(){return(SL=xx(regeneratorRuntime.mark(function e(t){var n,i,r,o,a,s=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:n=s.length>1&&void 0!==s[1]?s[1]:{},i=s.length>2?s[2]:void 0,e.t0=regeneratorRuntime.keys(kL);case 3:if((e.t1=e.t0()).done){e.next=12;break}if(r=e.t1.value,a=(null==n||null===(o=n.gltf)||void 0===o?void 0:o.excludeExtensions)||{},e.t2=r in a&&!a[r],e.t2){e.next=10;break}return e.next=10,kL[r].decode(t,n,i);case 10:e.next=3;break;case 12:case"end":return e.stop()}},e)}))).apply(this,arguments)}var EL={accessors:"accessor",animations:"animation",buffers:"buffer",bufferViews:"bufferView",images:"image",materials:"material",meshes:"mesh",nodes:"node",samplers:"sampler",scenes:"scene",skins:"skin",textures:"texture"},CL={accessor:"accessors",animations:"animation",buffer:"buffers",bufferView:"bufferViews",image:"images",material:"materials",mesh:"meshes",node:"nodes",sampler:"samplers",scene:"scenes",skin:"skins",texture:"textures"},OL=function(){function e(t){m(this,e),this.idToIndexMap={animations:{},accessors:{},buffers:{},bufferViews:{},images:{},materials:{},meshes:{},nodes:{},samplers:{},scenes:{},skins:{},textures:{}}}return b(e,[{key:"normalize",value:function(e,t){this.json=e.json;var n=e.json;switch(n.asset&&n.asset.version){case"2.0":return;case void 0:case"1.0":break;default:return void console.warn("glTF: Unknown version ".concat(n.asset.version))}if(!t.normalize)throw new Error("glTF v1 is not supported.");console.warn("Converting glTF v1 to glTF v2 format. This is experimental and may fail."),this._addAsset(n),this._convertTopLevelObjectsToArrays(n),function(e){var t,n=new XN(e),i=n.json,r=_(i.images||[]);try{for(r.s();!(t=r.n()).done;){var o=t.value,a=n.removeObjectExtension(o,YN);a&&Object.assign(o,a)}}catch(s){r.e(s)}finally{r.f()}i.buffers&&i.buffers[0]&&delete i.buffers[0].uri,n.removeExtension(YN)}(e),this._convertObjectIdsToArrayIndices(n),this._updateObjects(n),this._updateMaterial(n)}},{key:"_addAsset",value:function(e){e.asset=e.asset||{},e.asset.version="2.0",e.asset.generator=e.asset.generator||"Normalized to glTF 2.0 by loaders.gl"}},{key:"_convertTopLevelObjectsToArrays",value:function(e){for(var t in EL)this._convertTopLevelObjectToArray(e,t)}},{key:"_convertTopLevelObjectToArray",value:function(e,t){var n=e[t];if(n&&!Array.isArray(n))for(var i in e[t]=[],n){var r=n[i];r.id=r.id||i;var o=e[t].length;e[t].push(r),this.idToIndexMap[t][i]=o}}},{key:"_convertObjectIdsToArrayIndices",value:function(e){for(var t in EL)this._convertIdsToIndices(e,t);"scene"in e&&(e.scene=this._convertIdToIndex(e.scene,"scene"));var n,i=_(e.textures);try{for(i.s();!(n=i.n()).done;){var r=n.value;this._convertTextureIds(r)}}catch(p){i.e(p)}finally{i.f()}var o,a=_(e.meshes);try{for(a.s();!(o=a.n()).done;){var s=o.value;this._convertMeshIds(s)}}catch(p){a.e(p)}finally{a.f()}var u,c=_(e.nodes);try{for(c.s();!(u=c.n()).done;){var l=u.value;this._convertNodeIds(l)}}catch(p){c.e(p)}finally{c.f()}var h,d=_(e.scenes);try{for(d.s();!(h=d.n()).done;){var f=h.value;this._convertSceneIds(f)}}catch(p){d.e(p)}finally{d.f()}}},{key:"_convertTextureIds",value:function(e){e.source&&(e.source=this._convertIdToIndex(e.source,"image"))}},{key:"_convertMeshIds",value:function(e){var t,n=_(e.primitives);try{for(n.s();!(t=n.n()).done;){var i=t.value,r=i.attributes,o=i.indices,a=i.material;for(var s in r)r[s]=this._convertIdToIndex(r[s],"accessor");o&&(i.indices=this._convertIdToIndex(o,"accessor")),a&&(i.material=this._convertIdToIndex(a,"material"))}}catch(u){n.e(u)}finally{n.f()}}},{key:"_convertNodeIds",value:function(e){var t=this;e.children&&(e.children=e.children.map(function(e){return t._convertIdToIndex(e,"node")})),e.meshes&&(e.meshes=e.meshes.map(function(e){return t._convertIdToIndex(e,"mesh")}))}},{key:"_convertSceneIds",value:function(e){var t=this;e.nodes&&(e.nodes=e.nodes.map(function(e){return t._convertIdToIndex(e,"node")}))}},{key:"_convertIdsToIndices",value:function(e,t){e[t]||(console.warn("gltf v1: json doesn't contain attribute ".concat(t)),e[t]=[]);var n,i=_(e[t]);try{for(i.s();!(n=i.n()).done;){var r=n.value;for(var o in r){var a=this._convertIdToIndex(r[o],o);r[o]=a}}}catch(s){i.e(s)}finally{i.f()}}},{key:"_convertIdToIndex",value:function(e,t){var n=CL[t];if(n in this.idToIndexMap){var i=this.idToIndexMap[n][e];if(!Number.isFinite(i))throw new Error("gltf v1: failed to resolve ".concat(t," with id ").concat(e));return i}return e}},{key:"_updateObjects",value:function(e){var t,n=_(this.json.buffers);try{for(n.s();!(t=n.n()).done;){delete t.value.type}}catch(i){n.e(i)}finally{n.f()}}},{key:"_updateMaterial",value:function(e){var t,n=_(e.materials);try{var i=function(){var n=t.value;n.pbrMetallicRoughness={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1};var i=n.values&&n.values.tex,r=e.textures.findIndex(function(e){return e.id===i});-1!==r&&(n.pbrMetallicRoughness.baseColorTexture={index:r})};for(n.s();!(t=n.n()).done;)i()}catch(r){n.e(r)}finally{n.f()}}}]),e}();function TL(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return(new OL).normalize(e,t)}var AL={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},PL={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},ML={TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,REPEAT:10497,LINEAR:9729,NEAREST_MIPMAP_LINEAR:9986},IL={magFilter:ML.TEXTURE_MAG_FILTER,minFilter:ML.TEXTURE_MIN_FILTER,wrapS:ML.TEXTURE_WRAP_S,wrapT:ML.TEXTURE_WRAP_T},RL=(o(k={},ML.TEXTURE_MAG_FILTER,ML.LINEAR),o(k,ML.TEXTURE_MIN_FILTER,ML.NEAREST_MIPMAP_LINEAR),o(k,ML.TEXTURE_WRAP_S,ML.REPEAT),o(k,ML.TEXTURE_WRAP_,ML.REPEAT),k),DL=function(){function e(){m(this,e)}return b(e,[{key:"postProcess",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.json,i=e.buffers,r=void 0===i?[]:i,o=e.images,a=void 0===o?[]:o,s=e.baseUri,u=void 0===s?"":s;return WD(n),this.baseUri=u,this.json=n,this.buffers=r,this.images=a,this._resolveTree(this.json,t),this.json}},{key:"_resolveTree",value:function(e){var t=this;e.bufferViews&&(e.bufferViews=e.bufferViews.map(function(e,n){return t._resolveBufferView(e,n)})),e.images&&(e.images=e.images.map(function(e,n){return t._resolveImage(e,n)})),e.samplers&&(e.samplers=e.samplers.map(function(e,n){return t._resolveSampler(e,n)})),e.textures&&(e.textures=e.textures.map(function(e,n){return t._resolveTexture(e,n)})),e.accessors&&(e.accessors=e.accessors.map(function(e,n){return t._resolveAccessor(e,n)})),e.materials&&(e.materials=e.materials.map(function(e,n){return t._resolveMaterial(e,n)})),e.meshes&&(e.meshes=e.meshes.map(function(e,n){return t._resolveMesh(e,n)})),e.nodes&&(e.nodes=e.nodes.map(function(e,n){return t._resolveNode(e,n)})),e.skins&&(e.skins=e.skins.map(function(e,n){return t._resolveSkin(e,n)})),e.scenes&&(e.scenes=e.scenes.map(function(e,n){return t._resolveScene(e,n)})),void 0!==e.scene&&(e.scene=e.scenes[this.json.scene])}},{key:"getScene",value:function(e){return this._get("scenes",e)}},{key:"getNode",value:function(e){return this._get("nodes",e)}},{key:"getSkin",value:function(e){return this._get("skins",e)}},{key:"getMesh",value:function(e){return this._get("meshes",e)}},{key:"getMaterial",value:function(e){return this._get("materials",e)}},{key:"getAccessor",value:function(e){return this._get("accessors",e)}},{key:"getCamera",value:function(e){return null}},{key:"getTexture",value:function(e){return this._get("textures",e)}},{key:"getSampler",value:function(e){return this._get("samplers",e)}},{key:"getImage",value:function(e){return this._get("images",e)}},{key:"getBufferView",value:function(e){return this._get("bufferViews",e)}},{key:"getBuffer",value:function(e){return this._get("buffers",e)}},{key:"_get",value:function(e,t){if("object"==typeof t)return t;var n=this.json[e]&&this.json[e][t];return n||console.warn("glTF file error: Could not find ".concat(e,"[").concat(t,"]")),n}},{key:"_resolveScene",value:function(e,t){var n=this;return e.id=e.id||"scene-".concat(t),e.nodes=(e.nodes||[]).map(function(e){return n.getNode(e)}),e}},{key:"_resolveNode",value:function(e,t){var n=this;return e.id=e.id||"node-".concat(t),e.children&&(e.children=e.children.map(function(e){return n.getNode(e)})),void 0!==e.mesh?e.mesh=this.getMesh(e.mesh):void 0!==e.meshes&&e.meshes.length&&(e.mesh=e.meshes.reduce(function(e,t){var i=n.getMesh(t);return e.id=i.id,e.primitives=e.primitives.concat(i.primitives),e},{primitives:[]})),void 0!==e.camera&&(e.camera=this.getCamera(e.camera)),void 0!==e.skin&&(e.skin=this.getSkin(e.skin)),e}},{key:"_resolveSkin",value:function(e,t){return e.id=e.id||"skin-".concat(t),e.inverseBindMatrices=this.getAccessor(e.inverseBindMatrices),e}},{key:"_resolveMesh",value:function(e,t){var n=this;return e.id=e.id||"mesh-".concat(t),e.primitives&&(e.primitives=e.primitives.map(function(e){var t=(e=M({},e)).attributes;for(var i in e.attributes={},t)e.attributes[i]=n.getAccessor(t[i]);return void 0!==e.indices&&(e.indices=n.getAccessor(e.indices)),void 0!==e.material&&(e.material=n.getMaterial(e.material)),e})),e}},{key:"_resolveMaterial",value:function(e,t){if(e.id=e.id||"material-".concat(t),e.normalTexture&&(e.normalTexture=M({},e.normalTexture),e.normalTexture.texture=this.getTexture(e.normalTexture.index)),e.occlusionTexture&&(e.occlustionTexture=M({},e.occlustionTexture),e.occlusionTexture.texture=this.getTexture(e.occlusionTexture.index)),e.emissiveTexture&&(e.emmisiveTexture=M({},e.emmisiveTexture),e.emissiveTexture.texture=this.getTexture(e.emissiveTexture.index)),e.emissiveFactor||(e.emissiveFactor=e.emmisiveTexture?[1,1,1]:[0,0,0]),e.pbrMetallicRoughness){e.pbrMetallicRoughness=M({},e.pbrMetallicRoughness);var n=e.pbrMetallicRoughness;n.baseColorTexture&&(n.baseColorTexture=M({},n.baseColorTexture),n.baseColorTexture.texture=this.getTexture(n.baseColorTexture.index)),n.metallicRoughnessTexture&&(n.metallicRoughnessTexture=M({},n.metallicRoughnessTexture),n.metallicRoughnessTexture.texture=this.getTexture(n.metallicRoughnessTexture.index))}return e}},{key:"_resolveAccessor",value:function(e,t){if(e.id=e.id||"accessor-".concat(t),void 0!==e.bufferView&&(e.bufferView=this.getBufferView(e.bufferView)),e.bytesPerComponent=function(e){return PL[e]}(e.componentType),e.components=function(e){return AL[e]}(e.type),e.bytesPerElement=e.bytesPerComponent*e.components,e.bufferView){var n=e.bufferView.buffer,i=WN(e,e.bufferView),r=i.ArrayType,o=i.byteLength,a=(e.bufferView.byteOffset||0)+(e.byteOffset||0)+n.byteOffset,s=n.arrayBuffer.slice(a,a+o);e.value=new r(s)}return e}},{key:"_resolveTexture",value:function(e,t){return e.id=e.id||"texture-".concat(t),e.sampler="sampler"in e?this.getSampler(e.sampler):RL,e.source=this.getImage(e.source),e}},{key:"_resolveSampler",value:function(e,t){for(var n in e.id=e.id||"sampler-".concat(t),e.parameters={},e){var i=this._enumSamplerParameter(n);void 0!==i&&(e.parameters[i]=e[n])}return e}},{key:"_enumSamplerParameter",value:function(e){return IL[e]}},{key:"_resolveImage",value:function(e,t){e.id=e.id||"image-".concat(t),void 0!==e.bufferView&&(e.bufferView=this.getBufferView(e.bufferView));var n=this.images[t];return n&&(e.image=n),e}},{key:"_resolveBufferView",value:function(e,t){e.id=e.id||"bufferView-".concat(t);var n=e.buffer;e.buffer=this.buffers[n];var i=this.buffers[n].byteOffset||0;return"byteOffset"in e&&(i+=e.byteOffset),e.data=new Uint8Array(this.buffers[n].arrayBuffer,i,e.byteLength),e}},{key:"_resolveCamera",value:function(e,t){return e.id=e.id||"camera-".concat(t),e}}]),e}();function NL(e,t){return(new DL).postProcess(e,t)}var LL=1735152710,jL=!0;function FL(e,t,n,i){var r=new Uint8Array(t.buffer,n,i),o=new TextDecoder("utf8").decode(r);return e.json=JSON.parse(o),NN(i,4)}function BL(e,t,n,i){return e.header.hasBinChunk=!0,e.binChunks.push({byteOffset:n,byteLength:i,arrayBuffer:t.buffer}),NN(i,4)}function VL(e,t){return zL.apply(this,arguments)}function zL(){return(zL=xx(regeneratorRuntime.mark(function e(t,n){var i,r,o,a,s,u,c,l,h,d,f=arguments;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(i=f.length>2&&void 0!==f[2]?f[2]:0,r=f.length>3?f[3]:void 0,o=f.length>4?f[4]:void 0,UL(t,n,i,r),TL(t,{normalize:null==r||null===(a=r.gltf)||void 0===a?void 0:a.normalize}),l=[],e.t0=null!=r&&null!==(s=r.gltf)&&void 0!==s&&s.loadBuffers&&t.json.buffers,!e.t0){e.next=9;break}return e.next=9,HL(t,r,o);case 9:if(null==r||null===(u=r.gltf)||void 0===u||!u.loadImages){e.next=12;break}h=WL(t,r,o),l.push(h);case 12:return d=xL(t,r,o),l.push(d),e.next=16,Promise.all(l);case 16:return e.abrupt("return",null!=r&&null!==(c=r.gltf)&&void 0!==c&&c.postProcess?NL(t,r):t);case 17:case"end":return e.stop()}},e)}))).apply(this,arguments)}function UL(e,t,n,i){if(i.uri&&(e.baseUri=i.uri),t instanceof ArrayBuffer&&!function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=new DataView(e),r=n.magic,o=void 0===r?LL:r,a=i.getUint32(t,!1);return a===o||a===LL}(t,n,i)&&(t=(new TextDecoder).decode(t)),"string"==typeof t)e.json=function(e){try{return JSON.parse(e)}catch(t){throw new Error('Failed to parse JSON from data starting with "'.concat(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5;return"string"==typeof e?e.slice(0,t):ArrayBuffer.isView(e)?GD(e.buffer,e.byteOffset,t):e instanceof ArrayBuffer?GD(e,0,t):""}(e),'"'))}}(t);else if(t instanceof ArrayBuffer){var r={};n=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,i=new DataView(t),r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return"".concat(String.fromCharCode(e.getUint8(t+0))).concat(String.fromCharCode(e.getUint8(t+1))).concat(String.fromCharCode(e.getUint8(t+2))).concat(String.fromCharCode(e.getUint8(t+3)))}(i,n+0),o=i.getUint32(n+4,jL),a=i.getUint32(n+8,jL);switch(Object.assign(e,{header:{byteOffset:n,byteLength:a,hasBinChunk:!1},type:r,version:o,json:{},binChunks:[]}),n+=12,e.version){case 1:return function(e,t,n){zT(e.header.byteLength>20);var i=t.getUint32(n+0,jL),r=t.getUint32(n+4,jL);return n+=8,zT(0===r),FL(e,t,n,i),(n+=i)+BL(e,t,n,e.header.byteLength)}(e,i,n);case 2:return function(e,t,n,i){return zT(e.header.byteLength>20),function(e,t,n,i){for(;n+8<=e.header.byteLength;){var r=t.getUint32(n+0,jL),o=t.getUint32(n+4,jL);switch(n+=8,o){case 1313821514:FL(e,t,n,r);break;case 5130562:BL(e,t,n,r);break;case 0:i.strict||FL(e,t,n,r);break;case 1:i.strict||BL(e,t,n,r)}n+=NN(r,4)}}(e,t,n,{}),n+e.header.byteLength}(e,i,n);default:throw new Error("Invalid GLB version ".concat(e.version,". Only supports v1 and v2."))}}(r,t,n,i.glb),WD("glTF"===r.type,"Invalid GLB magic string ".concat(r.type)),e._glb=r,e.json=r.json}else WD(!1,"GLTF: must be ArrayBuffer or string");if(e.buffers=new Array((e.json.buffers||[]).length).fill(null),e._glb&&e._glb.header.hasBinChunk){var o=e._glb.binChunks;e.buffers[0]={arrayBuffer:o[0].arrayBuffer,byteOffset:o[0].byteOffset,byteLength:o[0].byteLength}}e.images=new Array((e.json.images||[]).length).fill({})}function HL(e,t,n){return GL.apply(this,arguments)}function GL(){return(GL=xx(regeneratorRuntime.mark(function e(t,n,i){var r,o,a,s,u,c,l;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:r=0;case 1:if(!(r1&&void 0!==a[1]?a[1]:{},i=a.length>2?a[2]:void 0,(n=M(M({},KL.options),n)).gltf=M(M({},KL.options.gltf),n.gltf),r=n.byteOffset,o=void 0===r?0:r,e.next=6,VL({},t,o,n,i);case 6:return e.abrupt("return",e.sent);case 7:case"end":return e.stop()}},e)}))).apply(this,arguments)}function QL(){return(QL=xx(regeneratorRuntime.mark(function e(t){var n;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=[],t.scenes.forEach(function(e){e.traverse(function(e){Object.values(e.model.getUniforms()).forEach(function(e){!1===e.loaded&&n.push(e)})})}),e.next=4,ZL(function(){return n.some(function(e){return!e.loaded})});case 4:return e.abrupt("return",e.sent);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function ZL(e){return JL.apply(this,arguments)}function JL(){return(JL=xx(regeneratorRuntime.mark(function e(t){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t()){e.next=5;break}return e.next=3,new Promise(function(e){return requestAnimationFrame(e)});case 3:e.next=0;break;case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}var ej=[255,255,255,255],tj={scenegraph:{type:"object",value:null,async:!0},getScene:function(e){return e&&e.scenes?"object"==typeof e.scene?e.scene:e.scenes[e.scene||0]:e},getAnimator:function(e){return e&&e.animator},_animations:null,sizeScale:{type:"number",value:1,min:0},sizeMinPixels:{type:"number",min:0,value:0},sizeMaxPixels:{type:"number",min:0,value:Number.MAX_SAFE_INTEGER},getPosition:{type:"accessor",value:function(e){return e.position}},getColor:{type:"accessor",value:ej},_lighting:"flat",_imageBasedLightingEnvironment:null,getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]},loaders:[KL]},nj=function(){var t=function(t){a(i,t);var n=s(i);function i(){return m(this,i),n.apply(this,arguments)}return b(i,[{key:"getShaders",value:function(){var e=[eD,uD];return"pbr"===this.props._lighting&&e.push(kD),{vs:"#version 300 es\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nuniform float sizeScale;\nuniform float sizeMinPixels;\nuniform float sizeMaxPixels;\nuniform mat4 sceneModelMatrix;\nuniform bool composeModelMatrix;\nin vec4 POSITION;\n\n#ifdef HAS_UV\n in vec2 TEXCOORD_0;\n#endif\n\n#ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n in vec4 NORMAL;\n #endif\n#endif\nout vec4 vColor;\n#ifndef MODULE_PBR\n #ifdef HAS_UV\n out vec2 vTEXCOORD_0;\n #endif\n#endif\nvoid main(void) {\n #if defined(HAS_UV) && !defined(MODULE_PBR)\n vTEXCOORD_0 = TEXCOORD_0;\n geometry.uv = vTEXCOORD_0;\n #endif\n\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n\n #ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n pbr_vNormal = project_normal(instanceModelMatrix * (sceneModelMatrix * vec4(NORMAL.xyz, 0.0)).xyz);\n geometry.normal = pbr_vNormal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV = TEXCOORD_0;\n #else\n pbr_vUV = vec2(0., 0.);\n #endif\n geometry.uv = pbr_vUV;\n #endif\n\n float originalSize = project_size_to_pixel(sizeScale);\n float clampedSize = clamp(originalSize, sizeMinPixels, sizeMaxPixels);\n\n vec3 pos = (instanceModelMatrix * (sceneModelMatrix * POSITION).xyz) * sizeScale * (clampedSize / originalSize) + instanceTranslation;\n if(composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), geometry.position);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, geometry.position);\n }\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBR\n pbr_vPosition = geometry.position.xyz;\n #endif\n\n vColor = instanceColors;\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\nuniform float opacity;\nin vec4 vColor;\n\nout vec4 fragmentColor;\n#ifndef MODULE_PBR\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n in vec2 vTEXCOORD_0;\n uniform sampler2D u_BaseColorSampler;\n #endif\n#endif\n\nvoid main(void) {\n #ifdef MODULE_PBR\n fragmentColor = vColor * pbr_filterColor(vec4(0));\n geometry.uv = pbr_vUV;\n #else\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n fragmentColor = vColor * texture2D(u_BaseColorSampler, vTEXCOORD_0);\n geometry.uv = vTEXCOORD_0;\n #else\n fragmentColor = vColor;\n #endif\n #endif\n\n fragmentColor.a *= opacity;\n DECKGL_FILTER_COLOR(fragmentColor, geometry);\n}\n",modules:e}}},{key:"initializeState",value:function(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:5130,fp64:this.use64bitPositions(),accessor:"getPosition",transition:!0},instanceColors:{type:5121,size:this.props.colorFormat.length,accessor:"getColor",normalized:!0,defaultValue:ej,transition:!0},instanceModelMatrix:gD})}},{key:"updateState",value:function(t){e(p(i.prototype),"updateState",this).call(this,t);var n=t.props,r=t.oldProps;n.scenegraph!==r.scenegraph?this._updateScenegraph(n):n._animations!==r._animations&&this._applyAnimationsProp(this.state.scenegraph,this.state.animator,n._animations)}},{key:"finalizeState",value:function(){e(p(i.prototype),"finalizeState",this).call(this),this._deleteScenegraph()}},{key:"_updateScenegraph",value:function(e){var t=this,n=this.context.gl,i=null;if(e.scenegraph instanceof xD)i={scenes:[e.scenegraph]};else if(e.scenegraph&&!e.scenegraph.gltf){var r=e.scenegraph,o=function(e,t,n){var i=new HD(e,n);return{scenes:i.instantiate(t),animator:i.createAnimator()}}(n,r,this._getModelOptions());i=M({gltf:r},o),function(e){return QL.apply(this,arguments)}(o).then(function(){return t.setNeedsRedraw()})}else e.scenegraph&&(Vw.deprecated("ScenegraphLayer.props.scenegraph","Use GLTFLoader instead of GLTFScenegraphLoader")(),i=e.scenegraph);var a={layer:this,gl:n},s=e.getScene(i,a),u=e.getAnimator(i,a);s instanceof xD?(this._deleteScenegraph(),this._applyAllAttributes(s),this._applyAnimationsProp(s,u,e._animations),this.setState({scenegraph:s,animator:u})):null!==s&&Vw.warn("invalid scenegraph:",s)()}},{key:"_applyAllAttributes",value:function(e){var t=this;if(this.state.attributesAvailable){var n=this.getAttributeManager().getAttributes();e.traverse(function(e){t._setModelAttributes(e.model,n)})}}},{key:"_applyAnimationsProp",value:function(e,t,n){if(e&&t&&n){var i=t.getAnimations();Object.keys(n).sort().forEach(function(e){var t=n[e];if("*"===e)i.forEach(function(e){Object.assign(e,t)});else if(Number.isFinite(Number(e))){var r=Number(e);r>=0&&r0&&void 0!==arguments[0]?arguments[0]:{};m(this,n);var i=e.id,r=void 0===i?qk("cube-geometry"):i;return t.call(this,I(M({},e),{id:r,indices:{size:1,value:new Uint16Array(ij)},attributes:M(M({},sj),e.attributes)}))}return n}(lD),cj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[0,0,0,0,0,0,0,0,0];m(this,e),this.elements=void 0,this.elements=t}return b(e,[{key:"identity",value:function(){var e=this.elements;e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1}},{key:"setZero",value:function(){var e=this.elements;e[0]=0,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e[8]=0}},{key:"setTrace",value:function(e){var t=this.elements;t[0]=e.x,t[4]=e.y,t[8]=e.z}},{key:"getTrace",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new hj,t=this.elements;return e.x=t[0],e.y=t[4],e.z=t[8],e}},{key:"vmult",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj,n=this.elements,i=e.x,r=e.y,o=e.z;return t.x=n[0]*i+n[1]*r+n[2]*o,t.y=n[3]*i+n[4]*r+n[5]*o,t.z=n[6]*i+n[7]*r+n[8]*o,t}},{key:"smult",value:function(e){for(var t=0;t1&&void 0!==arguments[1]?arguments[1]:new e,i=this.elements,r=t.elements,o=n.elements,a=i[0],s=i[1],u=i[2],c=i[3],l=i[4],h=i[5],d=i[6],f=i[7],p=i[8],v=r[0],g=r[1],m=r[2],y=r[3],b=r[4],_=r[5],w=r[6],k=r[7],x=r[8];return o[0]=a*v+s*y+u*w,o[1]=a*g+s*b+u*k,o[2]=a*m+s*_+u*x,o[3]=c*v+l*y+h*w,o[4]=c*g+l*b+h*k,o[5]=c*m+l*_+h*x,o[6]=d*v+f*y+p*w,o[7]=d*g+f*b+p*k,o[8]=d*m+f*_+p*x,n}},{key:"scale",value:function(t){for(var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=this.elements,r=n.elements,o=0;3!==o;o++)r[3*o+0]=t.x*i[3*o+0],r[3*o+1]=t.y*i[3*o+1],r[3*o+2]=t.z*i[3*o+2];return n}},{key:"solve",value:function(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj,r=[];for(t=0;t<12;t++)r.push(0);for(t=0;t<3;t++)for(n=0;n<3;n++)r[t+4*n]=this.elements[t+3*n];r[3]=e.x,r[7]=e.y,r[11]=e.z;var o,a,s=3,u=s;do{if(0===r[(t=u-s)+4*t])for(n=t+1;n0&&void 0!==arguments[0]?arguments[0]:new e,r=lj;for(t=0;t<3;t++)for(n=0;n<3;n++)r[t+6*n]=this.elements[t+3*n];r[3]=1,r[9]=0,r[15]=0,r[4]=0,r[10]=1,r[16]=0,r[5]=0,r[11]=0,r[17]=1;var o,a,s=3,u=s;do{if(0===r[(t=u-s)+6*t])for(n=t+1;n0&&void 0!==arguments[0]?arguments[0]:new e,i=this.elements,r=n.elements;return r[0]=i[0],r[4]=i[4],r[8]=i[8],t=i[1],r[1]=i[3],r[3]=t,t=i[2],r[2]=i[6],r[6]=t,t=i[5],r[5]=i[7],r[7]=t,n}}]),e}(),lj=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],hj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;m(this,e),this.x=void 0,this.y=void 0,this.z=void 0,this.x=t,this.y=n,this.z=i}return b(e,[{key:"cross",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=t.x,r=t.y,o=t.z,a=this.x,s=this.y,u=this.z;return n.x=s*o-u*r,n.y=u*i-a*o,n.z=a*r-s*i,n}},{key:"set",value:function(e,t,n){return this.x=e,this.y=t,this.z=n,this}},{key:"setZero",value:function(){this.x=this.y=this.z=0}},{key:"vadd",value:function(t,n){if(!n)return new e(this.x+t.x,this.y+t.y,this.z+t.z);n.x=t.x+this.x,n.y=t.y+this.y,n.z=t.z+this.z}},{key:"vsub",value:function(t,n){if(!n)return new e(this.x-t.x,this.y-t.y,this.z-t.z);n.x=this.x-t.x,n.y=this.y-t.y,n.z=this.z-t.z}},{key:"crossmat",value:function(){return new cj([0,-this.z,this.y,this.z,0,-this.x,-this.y,this.x,0])}},{key:"normalize",value:function(){var e=this.x,t=this.y,n=this.z,i=Math.sqrt(e*e+t*t+n*n);if(i>0){var r=1/i;this.x*=r,this.y*=r,this.z*=r}else this.x=0,this.y=0,this.z=0;return i}},{key:"unit",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e,n=this.x,i=this.y,r=this.z,o=Math.sqrt(n*n+i*i+r*r);return o>0?(o=1/o,t.x=n*o,t.y=i*o,t.z=r*o):(t.x=1,t.y=0,t.z=0),t}},{key:"length",value:function(){var e=this.x,t=this.y,n=this.z;return Math.sqrt(e*e+t*t+n*n)}},{key:"lengthSquared",value:function(){return this.dot(this)}},{key:"distanceTo",value:function(e){var t=this.x,n=this.y,i=this.z,r=e.x,o=e.y,a=e.z;return Math.sqrt((r-t)*(r-t)+(o-n)*(o-n)+(a-i)*(a-i))}},{key:"distanceSquared",value:function(e){var t=this.x,n=this.y,i=this.z,r=e.x,o=e.y,a=e.z;return(r-t)*(r-t)+(o-n)*(o-n)+(a-i)*(a-i)}},{key:"scale",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=this.y,r=this.z;return n.x=t*this.x,n.y=t*i,n.z=t*r,n}},{key:"vmul",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e;return n.x=t.x*this.x,n.y=t.y*this.y,n.z=t.z*this.z,n}},{key:"addScaledVector",value:function(t,n){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new e;return i.x=this.x+t*n.x,i.y=this.y+t*n.y,i.z=this.z+t*n.z,i}},{key:"dot",value:function(e){return this.x*e.x+this.y*e.y+this.z*e.z}},{key:"isZero",value:function(){return 0===this.x&&0===this.y&&0===this.z}},{key:"negate",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e;return t.x=-this.x,t.y=-this.y,t.z=-this.z,t}},{key:"tangents",value:function(e,t){var n=this.length();if(n>0){var i=dj,r=1/n;i.set(this.x*r,this.y*r,this.z*r);var o=fj;Math.abs(i.x)<.9?(o.set(1,0,0),i.cross(o,e)):(o.set(0,1,0),i.cross(o,e)),i.cross(e,t)}else e.set(1,0,0),t.set(0,1,0)}},{key:"toString",value:function(){return this.x+","+this.y+","+this.z}},{key:"toArray",value:function(){return[this.x,this.y,this.z]}},{key:"copy",value:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}},{key:"lerp",value:function(e,t,n){var i=this.x,r=this.y,o=this.z;n.x=i+(e.x-i)*t,n.y=r+(e.y-r)*t,n.z=o+(e.z-o)*t}},{key:"almostEquals",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e-6;return!(Math.abs(this.x-e.x)>t||Math.abs(this.y-e.y)>t||Math.abs(this.z-e.z)>t)}},{key:"almostZero",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e-6;return!(Math.abs(this.x)>e||Math.abs(this.y)>e||Math.abs(this.z)>e)}},{key:"isAntiparallelTo",value:function(e,t){return this.negate(pj),pj.almostEquals(e,t)}},{key:"clone",value:function(){return new e(this.x,this.y,this.z)}}]),e}();hj.ZERO=void 0,hj.UNIT_X=void 0,hj.UNIT_Y=void 0,hj.UNIT_Z=void 0,hj.ZERO=new hj(0,0,0),hj.UNIT_X=new hj(1,0,0),hj.UNIT_Y=new hj(0,1,0),hj.UNIT_Z=new hj(0,0,1);var dj=new hj,fj=new hj,pj=new hj,vj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.lowerBound=void 0,this.upperBound=void 0,this.lowerBound=new hj,this.upperBound=new hj,t.lowerBound&&this.lowerBound.copy(t.lowerBound),t.upperBound&&this.upperBound.copy(t.upperBound)}return b(e,[{key:"setFromPoints",value:function(e,t,n,i){var r=this.lowerBound,o=this.upperBound,a=n;r.copy(e[0]),a&&a.vmult(r,r),o.copy(r);for(var s=1;so.x&&(o.x=u.x),u.xo.y&&(o.y=u.y),u.yo.z&&(o.z=u.z),u.z=r.x&&t.y<=i.y&&n.y>=r.y&&t.z<=i.z&&n.z>=r.z}},{key:"getCorners",value:function(e,t,n,i,r,o,a,s){var u=this.lowerBound,c=this.upperBound;e.copy(u),t.set(c.x,u.y,u.z),n.set(c.x,c.y,u.z),i.set(u.x,c.y,c.z),r.set(c.x,u.y,c.z),o.set(u.x,c.y,u.z),a.set(u.x,u.y,c.z),s.copy(c)}},{key:"toLocalFrame",value:function(e,t){var n=mj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(var i=0;8!==i;i++){var r=n[i];e.pointToLocal(r,r)}return t.setFromPoints(n)}},{key:"toWorldFrame",value:function(e,t){var n=mj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(var i=0;8!==i;i++){var r=n[i];e.pointToWorld(r,r)}return t.setFromPoints(n)}},{key:"overlapsRay",value:function(e){var t=e.direction,n=e.from,i=1/t.x,r=1/t.y,o=1/t.z,a=(this.lowerBound.x-n.x)*i,s=(this.upperBound.x-n.x)*i,u=(this.lowerBound.y-n.y)*r,c=(this.upperBound.y-n.y)*r,l=(this.lowerBound.z-n.z)*o,h=(this.upperBound.z-n.z)*o,d=Math.max(Math.max(Math.min(a,s),Math.min(u,c)),Math.min(l,h)),f=Math.min(Math.min(Math.max(a,s),Math.max(u,c)),Math.max(l,h));return!(f<0||d>f)}}]),e}(),gj=new hj,mj=[new hj,new hj,new hj,new hj,new hj,new hj,new hj,new hj],yj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1;m(this,e),this.x=void 0,this.y=void 0,this.z=void 0,this.w=void 0,this.x=t,this.y=n,this.z=i,this.w=r}return b(e,[{key:"set",value:function(e,t,n,i){return this.x=e,this.y=t,this.z=n,this.w=i,this}},{key:"toString",value:function(){return this.x+","+this.y+","+this.z+","+this.w}},{key:"toArray",value:function(){return[this.x,this.y,this.z,this.w]}},{key:"setFromAxisAngle",value:function(e,t){var n=Math.sin(.5*t);return this.x=e.x*n,this.y=e.y*n,this.z=e.z*n,this.w=Math.cos(.5*t),this}},{key:"toAxisAngle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new hj;this.normalize();var t=2*Math.acos(this.w),n=Math.sqrt(1-this.w*this.w);return n<.001?(e.x=this.x,e.y=this.y,e.z=this.z):(e.x=this.x/n,e.y=this.y/n,e.z=this.z/n),[e,t]}},{key:"setFromVectors",value:function(e,t){if(e.isAntiparallelTo(t)){var n=bj;e.tangents(n,_j),this.setFromAxisAngle(n,Math.PI)}else{var i=e.cross(t);this.x=i.x,this.y=i.y,this.z=i.z,this.w=Math.sqrt(A(e.length(),2)*A(t.length(),2))+e.dot(t),this.normalize()}return this}},{key:"mult",value:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new e,i=this.x,r=this.y,o=this.z,a=this.w,s=t.x,u=t.y,c=t.z,l=t.w;return n.x=i*l+a*s+r*c-o*u,n.y=r*l+a*u+o*s-i*c,n.z=o*l+a*c+i*u-r*s,n.w=a*l-i*s-r*u-o*c,n}},{key:"inverse",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e,n=this.x,i=this.y,r=this.z,o=this.w;this.conjugate(t);var a=1/(n*n+i*i+r*r+o*o);return t.x*=a,t.y*=a,t.z*=a,t.w*=a,t}},{key:"conjugate",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new e;return t.x=-this.x,t.y=-this.y,t.z=-this.z,t.w=this.w,t}},{key:"normalize",value:function(){var e=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===e?(this.x=0,this.y=0,this.z=0,this.w=0):(e=1/e,this.x*=e,this.y*=e,this.z*=e,this.w*=e),this}},{key:"normalizeFast",value:function(){var e=(3-(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w))/2;return 0===e?(this.x=0,this.y=0,this.z=0,this.w=0):(this.x*=e,this.y*=e,this.z*=e,this.w*=e),this}},{key:"vmult",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj,n=e.x,i=e.y,r=e.z,o=this.x,a=this.y,s=this.z,u=this.w,c=u*n+a*r-s*i,l=u*i+s*n-o*r,h=u*r+o*i-a*n,d=-o*n-a*i-s*r;return t.x=c*u+d*-o+l*-s-h*-a,t.y=l*u+d*-a+h*-o-c*-s,t.z=h*u+d*-s+c*-a-l*-o,t}},{key:"copy",value:function(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w,this}},{key:"toEuler",value:function(e){var t,n,i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"YZX",o=this.x,a=this.y,s=this.z,u=this.w;switch(r){case"YZX":var c=o*a+s*u;if(c>.499&&(t=2*Math.atan2(o,u),n=Math.PI/2,i=0),c<-.499&&(t=-2*Math.atan2(o,u),n=-Math.PI/2,i=0),void 0===t){var l=o*o,h=s*s;t=Math.atan2(2*a*u-2*o*s,1-a*a*2-2*h),n=Math.asin(2*c),i=Math.atan2(2*o*u-2*a*s,1-2*l-2*h)}break;default:throw new Error("Euler order "+r+" not supported yet.")}e.y=t,e.z=n,e.x=i}},{key:"setFromEuler",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"XYZ",r=Math.cos(e/2),o=Math.cos(t/2),a=Math.cos(n/2),s=Math.sin(e/2),u=Math.sin(t/2),c=Math.sin(n/2);return"XYZ"===i?(this.x=s*o*a+r*u*c,this.y=r*u*a-s*o*c,this.z=r*o*c+s*u*a,this.w=r*o*a-s*u*c):"YXZ"===i?(this.x=s*o*a+r*u*c,this.y=r*u*a-s*o*c,this.z=r*o*c-s*u*a,this.w=r*o*a+s*u*c):"ZXY"===i?(this.x=s*o*a-r*u*c,this.y=r*u*a+s*o*c,this.z=r*o*c+s*u*a,this.w=r*o*a-s*u*c):"ZYX"===i?(this.x=s*o*a-r*u*c,this.y=r*u*a+s*o*c,this.z=r*o*c-s*u*a,this.w=r*o*a+s*u*c):"YZX"===i?(this.x=s*o*a+r*u*c,this.y=r*u*a+s*o*c,this.z=r*o*c-s*u*a,this.w=r*o*a-s*u*c):"XZY"===i&&(this.x=s*o*a-r*u*c,this.y=r*u*a-s*o*c,this.z=r*o*c+s*u*a,this.w=r*o*a+s*u*c),this}},{key:"clone",value:function(){return new e(this.x,this.y,this.z,this.w)}},{key:"slerp",value:function(t,n){var i,r,o,a,s,u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new e,c=this.x,l=this.y,h=this.z,d=this.w,f=t.x,p=t.y,v=t.z,g=t.w;return(r=c*f+l*p+h*v+d*g)<0&&(r=-r,f=-f,p=-p,v=-v,g=-g),1-r>1e-6?(i=Math.acos(r),o=Math.sin(i),a=Math.sin((1-n)*i)/o,s=Math.sin(n*i)/o):(a=1-n,s=n),u.x=a*c+s*f,u.y=a*l+s*p,u.z=a*h+s*v,u.w=a*d+s*g,u}},{key:"integrate",value:function(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new e,o=t.x*i.x,a=t.y*i.y,s=t.z*i.z,u=this.x,c=this.y,l=this.z,h=this.w,d=.5*n;return r.x+=d*(o*h+a*l-s*c),r.y+=d*(a*h+s*u-o*l),r.z+=d*(s*h+o*c-a*u),r.w+=d*(-o*u-a*c-s*l),r}}]),e}(),bj=new hj,_j=new hj,wj={SPHERE:1,PLANE:2,BOX:4,COMPOUND:8,CONVEXPOLYHEDRON:16,HEIGHTFIELD:32,PARTICLE:64,CYLINDER:128,TRIMESH:256},kj=function(){var e=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.id=void 0,this.type=void 0,this.boundingSphereRadius=void 0,this.collisionResponse=void 0,this.collisionFilterGroup=void 0,this.collisionFilterMask=void 0,this.material=void 0,this.body=void 0,this.id=e.idCounter++,this.type=t.type||0,this.boundingSphereRadius=0,this.collisionResponse=!t.collisionResponse||t.collisionResponse,this.collisionFilterGroup=void 0!==t.collisionFilterGroup?t.collisionFilterGroup:1,this.collisionFilterMask=void 0!==t.collisionFilterMask?t.collisionFilterMask:-1,this.material=t.material?t.material:null,this.body=null}return b(e,[{key:"updateBoundingSphereRadius",value:function(){throw"computeBoundingSphereRadius() not implemented for shape type "+this.type}},{key:"volume",value:function(){throw"volume() not implemented for shape type "+this.type}},{key:"calculateLocalInertia",value:function(e,t){throw"calculateLocalInertia() not implemented for shape type "+this.type}},{key:"calculateWorldAABB",value:function(e,t,n,i){throw"calculateWorldAABB() not implemented for shape type "+this.type}}]),e}();return e.idCounter=0,e.types=wj,e}(),xj=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.position=void 0,this.quaternion=void 0,this.position=new hj,this.quaternion=new yj,t.position&&this.position.copy(t.position),t.quaternion&&this.quaternion.copy(t.quaternion)}return b(e,[{key:"pointToLocal",value:function(t,n){return e.pointToLocalFrame(this.position,this.quaternion,t,n)}},{key:"pointToWorld",value:function(t,n){return e.pointToWorldFrame(this.position,this.quaternion,t,n)}},{key:"vectorToWorldFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.vmult(e,t),t}}],[{key:"pointToLocalFrame",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new hj;return n.vsub(e,i),t.conjugate(Sj),Sj.vmult(i,i),i}},{key:"pointToWorldFrame",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new hj;return t.vmult(n,i),i.vadd(e,i),i}},{key:"vectorToWorldFrame",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new hj;return e.vmult(t,n),n}},{key:"vectorToLocalFrame",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:new hj;return t.w*=-1,t.vmult(n,i),t.w*=-1,i}}]),e}(),Sj=new yj,Ej=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};m(this,n);var r=i.vertices,o=void 0===r?[]:r,a=i.faces,s=void 0===a?[]:a,u=i.normals,c=void 0===u?[]:u,l=i.axes,h=i.boundingSphereRadius;return(e=t.call(this,{type:kj.types.CONVEXPOLYHEDRON})).vertices=void 0,e.faces=void 0,e.faceNormals=void 0,e.worldVertices=void 0,e.worldVerticesNeedsUpdate=void 0,e.worldFaceNormals=void 0,e.worldFaceNormalsNeedsUpdate=void 0,e.uniqueAxes=void 0,e.uniqueEdges=void 0,e.vertices=o,e.faces=s,e.faceNormals=c,0===e.faceNormals.length&&e.computeNormals(),h?e.boundingSphereRadius=h:e.updateBoundingSphereRadius(),e.worldVertices=[],e.worldVerticesNeedsUpdate=!0,e.worldFaceNormals=[],e.worldFaceNormalsNeedsUpdate=!0,e.uniqueAxes=l?l.slice():null,e.uniqueEdges=[],e.computeEdges(),e}return b(n,[{key:"computeEdges",value:function(){var e=this.faces,t=this.vertices,n=this.uniqueEdges;n.length=0;for(var i=new hj,r=0;r!==e.length;r++)for(var o=e[r],a=o.length,s=0;s!==a;s++){t[o[s]].vsub(t[o[(s+1)%a]],i),i.normalize();for(var u=!1,c=0;c!==n.length;c++)if(n[c].almostEquals(i)||n[c].almostEquals(i)){u=!0;break}u||n.push(i.clone())}}},{key:"computeNormals",value:function(){this.faceNormals.length=this.faces.length;for(var e=0;eh&&(h=f,l=d)}for(var p=[],v=0;v=0&&this.clipFaceAgainstHull(o,e,t,p,a,s,u)}},{key:"findSeparatingAxis",value:function(e,t,n,i,r,o,a,s){var u=new hj,c=new hj,l=new hj,h=new hj,d=new hj,f=new hj,p=Number.MAX_VALUE,v=this;if(v.uniqueAxes)for(var g=0;g!==v.uniqueAxes.length;g++){n.vmult(v.uniqueAxes[g],u);var m=v.testSepAxis(u,e,t,n,i,r);if(!1===m)return!1;m0&&o.negate(o),!0}},{key:"testSepAxis",value:function(e,t,i,r,o,a){n.project(this,e,i,r,Cj),n.project(t,e,o,a,Oj);var s=Cj[0],u=Cj[1],c=Oj[0],l=Oj[1];if(st.x&&(t.x=r.x),r.yt.y&&(t.y=r.y),r.zt.z&&(t.z=r.z)}}},{key:"computeWorldFaceNormals",value:function(e){for(var t=this.faceNormals.length;this.worldFaceNormals.lengthe&&(e=i)}this.boundingSphereRadius=Math.sqrt(e)}},{key:"calculateWorldAABB",value:function(e,t,n,i){for(var r,o,a,s,u,c,l=this.vertices,h=new hj,d=0;ds)&&(s=f.x),(void 0===o||f.yu)&&(u=f.y),(void 0===a||f.zc)&&(c=f.z)}n.set(r,o,a),i.set(s,u,c)}},{key:"volume",value:function(){return 4*Math.PI*this.boundingSphereRadius/3}},{key:"getAveragePointLocal",value:function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new hj,t=this.vertices,n=0;n0||c>0&&h<0)return!1}return-1}}],[{key:"computeNormal",value:function(e,t,n,i){var r=new hj,o=new hj;t.vsub(e,o),n.vsub(t,r),r.cross(o,i),i.isZero()||i.normalize()}},{key:"project",value:function(e,t,n,i,r){var o=e.vertices.length,a=Tj,s=0,u=0,c=Aj,l=e.vertices;c.setZero(),xj.vectorToLocalFrame(n,i,t,a),xj.pointToLocalFrame(n,i,c,c);var h=c.dot(a);u=s=l[0].dot(a);for(var d=1;ds&&(s=f),f(s-=h)){var p=u;u=s,s=p}r[0]=s,r[1]=u}}]),n}(kj),Cj=[],Oj=[],Tj=new hj,Aj=new hj,Pj=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this,{type:kj.types.BOX})).halfExtents=void 0,i.convexPolyhedronRepresentation=void 0,i.halfExtents=e,i.convexPolyhedronRepresentation=null,i.updateConvexPolyhedronRepresentation(),i.updateBoundingSphereRadius(),i}return b(n,[{key:"updateConvexPolyhedronRepresentation",value:function(){var e=this.halfExtents.x,t=this.halfExtents.y,n=this.halfExtents.z,i=hj,r=[new i(-e,-t,-n),new i(e,-t,-n),new i(e,t,-n),new i(-e,t,-n),new i(-e,-t,n),new i(e,-t,n),new i(e,t,n),new i(-e,t,n)],o=[new i(0,0,1),new i(0,1,0),new i(1,0,0)],a=new Ej({vertices:r,faces:[[3,2,1,0],[4,5,6,7],[5,4,0,1],[2,3,7,6],[0,4,7,3],[1,2,6,5]],axes:o});this.convexPolyhedronRepresentation=a,a.material=this.material}},{key:"calculateLocalInertia",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return n.calculateInertia(this.halfExtents,e,t),t}},{key:"getSideNormals",value:function(e,t){var n=e,i=this.halfExtents;if(n[0].set(i.x,0,0),n[1].set(0,i.y,0),n[2].set(0,0,i.z),n[3].set(-i.x,0,0),n[4].set(0,-i.y,0),n[5].set(0,0,-i.z),void 0!==t)for(var r=0;r!==n.length;r++)t.vmult(n[r],n[r]);return n}},{key:"volume",value:function(){return 8*this.halfExtents.x*this.halfExtents.y*this.halfExtents.z}},{key:"updateBoundingSphereRadius",value:function(){this.boundingSphereRadius=this.halfExtents.length()}},{key:"forEachWorldCorner",value:function(e,t,n){for(var i=this.halfExtents,r=[[i.x,i.y,i.z],[-i.x,i.y,i.z],[-i.x,-i.y,i.z],[-i.x,-i.y,-i.z],[i.x,-i.y,-i.z],[i.x,i.y,-i.z],[-i.x,i.y,-i.z],[i.x,-i.y,i.z]],o=0;oi.x&&(i.x=u),c>i.y&&(i.y=c),l>i.z&&(i.z=l),u0&&void 0!==arguments[0]?arguments[0]:{};m(this,n),(e=t.call(this)).id=void 0,e.index=void 0,e.world=void 0,e.preStep=void 0,e.postStep=void 0,e.vlambda=void 0,e.collisionFilterGroup=void 0,e.collisionFilterMask=void 0,e.collisionResponse=void 0,e.position=void 0,e.previousPosition=void 0,e.interpolatedPosition=void 0,e.initPosition=void 0,e.velocity=void 0,e.initVelocity=void 0,e.force=void 0,e.mass=void 0,e.invMass=void 0,e.material=void 0,e.linearDamping=void 0,e.type=void 0,e.allowSleep=void 0,e.sleepState=void 0,e.sleepSpeedLimit=void 0,e.sleepTimeLimit=void 0,e.timeLastSleepy=void 0,e.wakeUpAfterNarrowphase=void 0,e.torque=void 0,e.quaternion=void 0,e.initQuaternion=void 0,e.previousQuaternion=void 0,e.interpolatedQuaternion=void 0,e.angularVelocity=void 0,e.initAngularVelocity=void 0,e.shapes=void 0,e.shapeOffsets=void 0,e.shapeOrientations=void 0,e.inertia=void 0,e.invInertia=void 0,e.invInertiaWorld=void 0,e.invMassSolve=void 0,e.invInertiaSolve=void 0,e.invInertiaWorldSolve=void 0,e.fixedRotation=void 0,e.angularDamping=void 0,e.linearFactor=void 0,e.angularFactor=void 0,e.aabb=void 0,e.aabbNeedsUpdate=void 0,e.boundingRadius=void 0,e.wlambda=void 0,e.isTrigger=void 0,e.id=n.idCounter++,e.index=-1,e.world=null,e.preStep=null,e.postStep=null,e.vlambda=new hj,e.collisionFilterGroup="number"==typeof i.collisionFilterGroup?i.collisionFilterGroup:1,e.collisionFilterMask="number"==typeof i.collisionFilterMask?i.collisionFilterMask:-1,e.collisionResponse="boolean"!=typeof i.collisionResponse||i.collisionResponse,e.position=new hj,e.previousPosition=new hj,e.interpolatedPosition=new hj,e.initPosition=new hj,i.position&&(e.position.copy(i.position),e.previousPosition.copy(i.position),e.interpolatedPosition.copy(i.position),e.initPosition.copy(i.position)),e.velocity=new hj,i.velocity&&e.velocity.copy(i.velocity),e.initVelocity=new hj,e.force=new hj;var r="number"==typeof i.mass?i.mass:0;return e.mass=r,e.invMass=r>0?1/r:0,e.material=i.material||null,e.linearDamping="number"==typeof i.linearDamping?i.linearDamping:.01,e.type=r<=0?n.STATIC:n.DYNAMIC,typeof i.type==typeof n.STATIC&&(e.type=i.type),e.allowSleep=void 0===i.allowSleep||i.allowSleep,e.sleepState=n.AWAKE,e.sleepSpeedLimit=void 0!==i.sleepSpeedLimit?i.sleepSpeedLimit:.1,e.sleepTimeLimit=void 0!==i.sleepTimeLimit?i.sleepTimeLimit:1,e.timeLastSleepy=0,e.wakeUpAfterNarrowphase=!1,e.torque=new hj,e.quaternion=new yj,e.initQuaternion=new yj,e.previousQuaternion=new yj,e.interpolatedQuaternion=new yj,i.quaternion&&(e.quaternion.copy(i.quaternion),e.initQuaternion.copy(i.quaternion),e.previousQuaternion.copy(i.quaternion),e.interpolatedQuaternion.copy(i.quaternion)),e.angularVelocity=new hj,i.angularVelocity&&e.angularVelocity.copy(i.angularVelocity),e.initAngularVelocity=new hj,e.shapes=[],e.shapeOffsets=[],e.shapeOrientations=[],e.inertia=new hj,e.invInertia=new hj,e.invInertiaWorld=new cj,e.invMassSolve=0,e.invInertiaSolve=new hj,e.invInertiaWorldSolve=new cj,e.fixedRotation=void 0!==i.fixedRotation&&i.fixedRotation,e.angularDamping=void 0!==i.angularDamping?i.angularDamping:.01,e.linearFactor=new hj(1,1,1),i.linearFactor&&e.linearFactor.copy(i.linearFactor),e.angularFactor=new hj(1,1,1),i.angularFactor&&e.angularFactor.copy(i.angularFactor),e.aabb=new vj,e.aabbNeedsUpdate=!0,e.boundingRadius=0,e.wlambda=new hj,e.isTrigger=Boolean(i.isTrigger),i.shape&&e.addShape(i.shape),e.updateMassProperties(),e}return b(n,[{key:"wakeUp",value:function(){var e=this.sleepState;this.sleepState=n.AWAKE,this.wakeUpAfterNarrowphase=!1,e===n.SLEEPING&&this.dispatchEvent(n.wakeupEvent)}},{key:"sleep",value:function(){this.sleepState=n.SLEEPING,this.velocity.set(0,0,0),this.angularVelocity.set(0,0,0),this.wakeUpAfterNarrowphase=!1}},{key:"sleepTick",value:function(e){if(this.allowSleep){var t=this.sleepState,i=this.velocity.lengthSquared()+this.angularVelocity.lengthSquared(),r=A(this.sleepSpeedLimit,2);t===n.AWAKE&&ir?this.wakeUp():t===n.SLEEPY&&e-this.timeLastSleepy>this.sleepTimeLimit&&(this.sleep(),this.dispatchEvent(n.sleepEvent))}}},{key:"updateSolveMassProperties",value:function(){this.sleepState===n.SLEEPING||this.type===n.KINEMATIC?(this.invMassSolve=0,this.invInertiaSolve.setZero(),this.invInertiaWorldSolve.setZero()):(this.invMassSolve=this.invMass,this.invInertiaSolve.copy(this.invInertia),this.invInertiaWorldSolve.copy(this.invInertiaWorld))}},{key:"pointToLocalFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return e.vsub(this.position,t),this.quaternion.conjugate().vmult(t,t),t}},{key:"vectorToLocalFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.conjugate().vmult(e,t),t}},{key:"pointToWorldFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.vmult(e,t),t.vadd(this.position,t),t}},{key:"vectorToWorldFrame",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;return this.quaternion.vmult(e,t),t}},{key:"addShape",value:function(e,t,n){var i=new hj,r=new yj;return t&&i.copy(t),n&&r.copy(n),this.shapes.push(e),this.shapeOffsets.push(i),this.shapeOrientations.push(r),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,e.body=this,this}},{key:"removeShape",value:function(e){var t=this.shapes.indexOf(e);return-1===t?(console.warn("Shape does not belong to the body"),this):(this.shapes.splice(t,1),this.shapeOffsets.splice(t,1),this.shapeOrientations.splice(t,1),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,e.body=null,this)}},{key:"updateBoundingRadius",value:function(){for(var e=this.shapes,t=this.shapeOffsets,n=e.length,i=0,r=0;r!==n;r++){var o=e[r];o.updateBoundingSphereRadius();var a=t[r].length(),s=o.boundingSphereRadius;a+s>i&&(i=a+s)}this.boundingRadius=i}},{key:"updateAABB",value:function(){for(var e=this.shapes,t=this.shapeOffsets,n=this.shapeOrientations,i=e.length,r=Dj,o=Nj,a=this.quaternion,s=this.aabb,u=Lj,c=0;c!==i;c++){var l=e[c];a.vmult(t[c],r),r.vadd(this.position,r),a.mult(n[c],o),l.calculateWorldAABB(r,o,u.lowerBound,u.upperBound),0===c?s.copy(u):s.extend(u)}this.aabbNeedsUpdate=!1}},{key:"updateInertiaWorld",value:function(e){var t=this.invInertia;if(t.x!==t.y||t.y!==t.z||e){var n=jj,i=Fj;n.setRotationFromQuaternion(this.quaternion),n.transpose(i),n.scale(t,n),n.mmult(i,this.invInertiaWorld)}}},{key:"applyForce",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){this.sleepState===n.SLEEPING&&this.wakeUp();var i=Bj;t.cross(e,i),this.force.vadd(e,this.force),this.torque.vadd(i,this.torque)}}},{key:"applyLocalForce",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){var i=Vj,r=zj;this.vectorToWorldFrame(e,i),this.vectorToWorldFrame(t,r),this.applyForce(i,r)}}},{key:"applyTorque",value:function(e){this.type===n.DYNAMIC&&(this.sleepState===n.SLEEPING&&this.wakeUp(),this.torque.vadd(e,this.torque))}},{key:"applyImpulse",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){this.sleepState===n.SLEEPING&&this.wakeUp();var i=t,r=Uj;r.copy(e),r.scale(this.invMass,r),this.velocity.vadd(r,this.velocity);var o=Hj;i.cross(e,o),this.invInertiaWorld.vmult(o,o),this.angularVelocity.vadd(o,this.angularVelocity)}}},{key:"applyLocalImpulse",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;if(this.type===n.DYNAMIC){var i=Gj,r=Wj;this.vectorToWorldFrame(e,i),this.vectorToWorldFrame(t,r),this.applyImpulse(i,r)}}},{key:"updateMassProperties",value:function(){var e=qj;this.invMass=this.mass>0?1/this.mass:0;var t=this.inertia,n=this.fixedRotation;this.updateAABB(),e.set((this.aabb.upperBound.x-this.aabb.lowerBound.x)/2,(this.aabb.upperBound.y-this.aabb.lowerBound.y)/2,(this.aabb.upperBound.z-this.aabb.lowerBound.z)/2),Pj.calculateInertia(e,this.mass,t),this.invInertia.set(t.x>0&&!n?1/t.x:0,t.y>0&&!n?1/t.y:0,t.z>0&&!n?1/t.z:0),this.updateInertiaWorld(!0)}},{key:"getVelocityAtWorldPoint",value:function(e,t){var n=new hj;return e.vsub(this.position,n),this.angularVelocity.cross(n,t),this.velocity.vadd(t,t),t}},{key:"integrate",value:function(e,t,i){if(this.previousPosition.copy(this.position),this.previousQuaternion.copy(this.quaternion),(this.type===n.DYNAMIC||this.type===n.KINEMATIC)&&this.sleepState!==n.SLEEPING){var r=this.velocity,o=this.angularVelocity,a=this.position,s=this.force,u=this.torque,c=this.quaternion,l=this.invInertiaWorld,h=this.linearFactor,d=this.invMass*e;r.x+=s.x*d*h.x,r.y+=s.y*d*h.y,r.z+=s.z*d*h.z;var f=l.elements,p=this.angularFactor,v=u.x*p.x,g=u.y*p.y,m=u.z*p.z;o.x+=e*(f[0]*v+f[1]*g+f[2]*m),o.y+=e*(f[3]*v+f[4]*g+f[5]*m),o.z+=e*(f[6]*v+f[7]*g+f[8]*m),a.x+=r.x*e,a.y+=r.y*e,a.z+=r.z*e,c.integrate(this.angularVelocity,e,this.angularFactor,c),t&&(i?c.normalizeFast():c.normalize()),this.aabbNeedsUpdate=!0,this.updateInertiaWorld()}}}]),n}(function(){function e(){m(this,e),this._listeners=void 0}return b(e,[{key:"addEventListener",value:function(e,t){void 0===this._listeners&&(this._listeners={});var n=this._listeners;return void 0===n[e]&&(n[e]=[]),n[e].includes(t)||n[e].push(t),this}},{key:"hasEventListener",value:function(e,t){if(void 0===this._listeners)return!1;var n=this._listeners;return!(void 0===n[e]||!n[e].includes(t))}},{key:"hasAnyEventListener",value:function(e){return void 0!==this._listeners&&void 0!==this._listeners[e]}},{key:"removeEventListener",value:function(e,t){if(void 0===this._listeners)return this;var n=this._listeners;if(void 0===n[e])return this;var i=n[e].indexOf(t);return-1!==i&&n[e].splice(i,1),this}},{key:"dispatchEvent",value:function(e){if(void 0===this._listeners)return this;var t=this._listeners[e.type];if(void 0!==t){e.target=this;for(var n=0,i=t.length;n0&&void 0!==arguments[0]?arguments[0]:new hj,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new hj;m(this,s),this.from=void 0,this.to=void 0,this.direction=void 0,this.precision=void 0,this.checkCollisionResponse=void 0,this.skipBackfaces=void 0,this.collisionFilterMask=void 0,this.collisionFilterGroup=void 0,this.mode=void 0,this.result=void 0,this.hasHit=void 0,this.callback=void 0,this.from=e.clone(),this.to=t.clone(),this.direction=new hj,this.precision=1e-4,this.checkCollisionResponse=!0,this.skipBackfaces=!1,this.collisionFilterMask=-1,this.collisionFilterGroup=-1,this.mode=s.ANY,this.result=new Xj,this.hasHit=!1,this.callback=function(e){}}return b(s,[{key:e,get:function(){return this._intersectSphere}},{key:t,get:function(){return this._intersectPlane}},{key:n,get:function(){return this._intersectBox}},{key:i,get:function(){return this._intersectConvex}},{key:r,get:function(){return this._intersectConvex}},{key:o,get:function(){return this._intersectHeightfield}},{key:a,get:function(){return this._intersectTrimesh}},{key:"intersectWorld",value:function(e,t){return this.mode=t.mode||s.ANY,this.result=t.result||new Xj,this.skipBackfaces=!!t.skipBackfaces,this.collisionFilterMask=void 0!==t.collisionFilterMask?t.collisionFilterMask:-1,this.collisionFilterGroup=void 0!==t.collisionFilterGroup?t.collisionFilterGroup:-1,this.checkCollisionResponse=void 0===t.checkCollisionResponse||t.checkCollisionResponse,t.from&&this.from.copy(t.from),t.to&&this.to.copy(t.to),this.callback=t.callback||function(){},this.hasHit=!1,this.result.reset(),this.updateDirection(),this.getAABB(Kj),$j.length=0,e.broadphase.aabbQuery(e,Kj,$j),this.intersectBodies($j),this.hasHit}},{key:"intersectBody",value:function(e,t){t&&(this.result=t,this.updateDirection());var n=this.checkCollisionResponse;if((!n||e.collisionResponse)&&0!=(this.collisionFilterGroup&e.collisionFilterMask)&&0!=(e.collisionFilterGroup&this.collisionFilterMask))for(var i=Jj,r=eF,o=0,a=e.shapes.length;oe.boundingSphereRadius)){var r=this[e.type];r&&r.call(this,e,t,n,i,e)}}},{key:"_intersectBox",value:function(e,t,n,i,r){return this._intersectConvex(e.convexPolyhedronRepresentation,t,n,i,r)}},{key:"_intersectPlane",value:function(e,t,n,i,r){var o=this.from,a=this.to,s=this.direction,u=new hj(0,0,1);t.vmult(u,u);var c=new hj;o.vsub(n,c);var l=c.dot(u);if(a.vsub(n,c),!(l*c.dot(u)>0||o.distanceTo(a)=0&&p<=1&&(o.lerp(a,p,d),d.vsub(n,f),f.normalize(),this.reportIntersection(f,d,r,i,-1)),this.result.shouldStop)return;v>=0&&v<=1&&(o.lerp(a,v,d),d.vsub(n,f),f.normalize(),this.reportIntersection(f,d,r,i,-1))}}},{key:"_intersectConvex",value:function(e,t,n,i,r,o){for(var a=hF,u=dF,c=o&&o.faceList||null,l=e.faces,h=e.vertices,d=e.faceNormals,f=this.direction,p=this.from,v=p.distanceTo(this.to),g=c?c.length:l.length,m=this.result,y=0;!m.shouldStop&&yv||this.reportIntersection(a,tF,r,i,b)}}}}}},{key:"_intersectTrimesh",value:function(e,t,n,i,r,o){var a=fF,u=bF,c=_F,l=dF,h=pF,d=vF,f=gF,p=yF,v=mF,g=e.indices,m=this.from,y=this.to,b=this.direction;c.position.copy(n),c.quaternion.copy(t),xj.vectorToLocalFrame(n,t,b,h),xj.pointToLocalFrame(n,t,m,d),xj.pointToLocalFrame(n,t,y,f),f.x*=e.scale.x,f.y*=e.scale.y,f.z*=e.scale.z,d.x*=e.scale.x,d.y*=e.scale.y,d.z*=e.scale.z,f.vsub(d,h),h.normalize();var _=d.distanceSquared(f);e.tree.rayQuery(this,c,u);for(var w=0,k=u.length;!this.result.shouldStop&&w!==k;w++){var x=u[w];e.getNormal(x,a),e.getVertex(g[3*x],nF),nF.vsub(d,l);var S=h.dot(a),E=a.dot(l)/S;if(!(E<0)){h.scale(E,tF),tF.vadd(d,tF),e.getVertex(g[3*x+1],iF),e.getVertex(g[3*x+2],rF);var C=tF.distanceSquared(d);!s.pointInTriangle(tF,iF,nF,rF)&&!s.pointInTriangle(tF,nF,iF,rF)||C>_||(xj.vectorToWorldFrame(t,a,v),xj.pointToWorldFrame(n,t,tF,p),this.reportIntersection(v,p,r,i,x))}}u.length=0}},{key:"reportIntersection",value:function(e,t,n,i,r){var o=this.from,a=this.to,u=o.distanceTo(t),c=this.result;if(!(this.skipBackfaces&&e.dot(this.direction)>0))switch(c.hitFaceIndex=void 0!==r?r:-1,this.mode){case s.ALL:this.hasHit=!0,c.set(o,a,e,t,n,i,u),c.hasHit=!0,this.callback(c);break;case s.CLOSEST:(u=0&&(o=a*l-s*u)>=0&&r+o0){var o,a=_(e.mesh.primitives);try{for(a.s();!(o=a.n()).done;){var s=o.value;s.attributes.POSITION&&s.attributes.POSITION.min&&function(){var o=r.transformAsPoint(s.attributes.POSITION.min,[]),a=r.transformAsPoint(s.attributes.POSITION.max,[]);i.push({"@id":t["@id"],name:e.name,entityId:t.entityId,bbox:new vj({lowerBound:h(hj,v(o.map(function(e,t){return Math.min(e,a[t])}))),upperBound:h(hj,v(a.map(function(e,t){return Math.max(e,o[t])})))}),gltf:n})}()}}catch(u){a.e(u)}finally{a.f()}}return!0})}catch(s){r.e(s)}finally{r.f()}case 6:case"end":return e.stop()}},e)}),r.s();case 6:if((o=r.n()).done){t.next=10;break}return t.delegateYield(a(),"t0",8);case 8:t.next=6;break;case 10:t.next=15;break;case 12:t.prev=12,t.t1=t.catch(3),r.e(t.t1);case 15:return t.prev=15,r.f(),t.finish(15);case 18:s=[],u=[],c=_(n);try{for(c.s();!(l=c.n()).done;){d=l.value,f=[],p=_(i);try{for(p.s();!(g=p.n()).done;)m=g.value,d.bbox.overlaps(m.bbox)&&f.push({"@id":m["@id"],name:m.name})}catch(C){p.e(C)}finally{p.f()}f.length>0?s.push({"@id":d.entityId,name:d.name,hits:f}):u.push(d)}}catch(C){c.e(C)}finally{c.f()}for(console.log({sourceBoxes:n,targetBoxes:i,report:s,sad:u,maxHits:Math.max.apply(Math,v(s.map(function(e){return e.hits.length})))}),y=[],b=0,w=s;b1&&void 0!==arguments[1]?arguments[1]:[],i=_(e.nodes||e.children||[]);try{for(i.s();!(t=i.n()).done;){var r=t.value;n.push(r.name),DF(r,n)}}catch(o){i.e(o)}finally{i.f()}return n}var NF=function(){var e=function(){function e(t){var n,i,r,o,a,s=this;m(this,e),this.deckProps=t,this.bodyUILayer=new RF({}),this.nodeClickSubject=new re,this.nodeHoverStartSubject=new re,this.nodeHoverStopSubject=new re,this.sceneRotationSubject=new tv([0,0]),this.nodeDragStartSubject=new re,this.nodeDragSubject=new re,this.nodeDragEndSubject=new re,this.nodeClick$=this.nodeClickSubject.pipe(Ne()),this.nodeHoverStart$=this.nodeHoverStartSubject.pipe(Ne()),this.nodeHoverStop$=this.nodeHoverStopSubject.pipe(Ne()),this.sceneRotation$=this.sceneRotationSubject.pipe(Ne()),this.nodeDragStart$=this.nodeDragStartSubject.pipe(Ne()),this.nodeDrag$=this.nodeDragSubject.pipe(Ne()),this.nodeDragEnd$=this.nodeDragEndSubject.pipe(Ne());var u=Object.assign(Object.assign({},t),{views:["orthographic"===t.camera?new _M({flipY:!1,near:-1e3}):new SM({orbitAxis:"Y"})],controller:void 0===t.interactive||t.interactive,layers:[this.bodyUILayer],onHover:this._onHover,onClick:this._onClick,onViewStateChange:this._onViewStateChange,onDragStart:this._onDragStart,onDrag:this._onDrag,onDragEnd:this._onDragEnd,getCursor:function(e){var t;return null!==(t=s.cursor)&&void 0!==t?t:e.isDragging?"grabbing":"grab"}});t.legacyLighting&&(u.effects=[new KM({ambientLight:new OM({color:[255,255,255],intensity:10})})]),this.deck=new JR(u),this.deck.setProps({viewState:{orbitAxis:"Y",minRotationX:null!==(n=t.minRotationX)&&void 0!==n?n:-15,maxRotationX:null!==(i=t.maxRotationX)&&void 0!==i?i:15,target:null!==(r=t.target)&&void 0!==r?r:[.5,.5,0],rotationX:0,rotationOrbit:null!==(o=t.rotation)&&void 0!==o?o:0,zoom:null!==(a=t.zoom)&&void 0!==a?a:9.5,camera:t.camera}}),t.rotation&&this.sceneRotationSubject.next([t.rotation,0])}return b(e,[{key:"initialize",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(this.bodyUILayer.state){e.next=5;break}return e.next=3,new Promise(function(e){setTimeout(e,200)});case 3:e.next=0;break;case 5:case"end":return e.stop()}},e,this)}))}},{key:"finalize",value:function(){this.deck.finalize()}},{key:"setScene",value:function(e){if((null==e?void 0:e.length)>0){var t,n=this.bodyUILayer.state.zoomOpacity,i=!1,r=_(e);try{for(r.s();!(t=r.n()).done;){var o=t.value;o.zoomToOnLoad&&(this.zoomTo(o),i=!0)}}catch(a){r.e(a)}finally{r.f()}n=i?.05:n,this.deckProps.debugSceneNodeProcessing?this.debugSceneNodeProcessing(e,n):this.bodyUILayer.setState({data:e,zoomOpacity:n})}}},{key:"debugSceneNodeProcessing",value:function(e,t){var n=this,i="https://hubmapconsortium.github.io/ccf-3d-reference-object-library/VH_Female/United/VHF_United_Color.glb",r=new SO([.076,0,0,0,0,.076,16875389974302382e-33,0,0,-16875389974302382e-33,.076,0,.49,.034,.11,1]);(function(e,t,n){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i,r,o,a,s,u,c,l,d,f,p,g,m,y,b,w,k,x,S,E;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return TF(),n.next=3,PF({scenegraph:e,scenegraphNode:"VHF_Kidney_L_Low1"});case 3:i=n.sent,r={},o=[],a=_(i.scenes);try{for(a.s();!(s=a.n()).done;)OF(s.value,t=new SO(t||SO.IDENTITY),function(n,i){var a={"@id":n.name||n.id,"@type":"ProcessedNode",transformMatrix:new SO(i),wireframe:!0,node:n};if(o.push({"@id":"GLTF:".concat(a["@id"]),"@type":"GLTFNode",scenegraph:e,scenegraphNode:a["@id"],transformMatrix:new SO(t||SO.IDENTITY),tooltip:n.name||n.id,color:[255,255,255,255],_lighting:"pbr",zoomBasedOpacity:!0,node:n}),n.mesh&&n.mesh.primitives&&n.mesh.primitives.length>0){var s,u=_(n.mesh.primitives);try{for(u.s();!(s=u.n()).done;){var c=s.value;c.attributes.POSITION&&c.attributes.POSITION.min&&function(){var e=i.transformAsPoint(c.attributes.POSITION.min,[]),t=i.transformAsPoint(c.attributes.POSITION.max,[]);a.bbox=new vj({lowerBound:h(hj,v(e.map(function(e,n){return Math.min(e,t[n])}))),upperBound:h(hj,v(t.map(function(t,n){return Math.max(t,e[n])})))})}()}}catch(l){u.e(l)}finally{u.f()}}return r[a["@id"]]=a,!0})}catch(C){a.e(C)}finally{a.f()}u=_(Object.values(r).filter(function(e){return!e.bbox}));try{for(u.s();!(c=u.n()).done;){l=c.value,d=_(DF(l.node).map(function(e){return r[e]}).filter(function(e){return e.bbox}));try{for(d.s();!(f=d.n()).done;)p=f.value,l.bbox?l.bbox.extend(p.bbox):l.bbox=p.bbox.clone()}catch(C){d.e(C)}finally{d.f()}l.bbox||delete r[l["@id"]]}}catch(C){u.e(C)}finally{u.f()}for(g=0,m=Object.values(r);g1&&void 0!==arguments[1]?arguments[1]:LF,n=null,i=null;function r(){return jF(t,n,arguments)||(i=e.apply(null,arguments)),n=arguments,i}return r.reset=function(){n=null,i=null},r}var BF=FF(function(){var e=th();if(!e)return!1;var t=e.injector.get(Ll,null);return!!t&&t.some(function(e){return(e&&e.providers||[]).some(function(e){return e&&e.provide&&"MockNgModuleResolver"===e.provide.name||!1})})}),VF=function(){var e=function(){function e(){m(this,e),this.bootstrap$=new Sf(1)}return b(e,[{key:"appBootstrapped$",get:function(){return this.bootstrap$.asObservable()}},{key:"bootstrap",value:function(){this.bootstrap$.next(!0),this.bootstrap$.complete()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),zF=new Pi("INITIAL_STATE_TOKEN"),UF=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"set",value:function(e){this.value=e}},{key:"pop",value:function(){var e=this.value;return this.value={},e}}]),e}();return e.value={},e}(),HF=new Pi("Internals.StateContextFactory"),GF=new Pi("Internals.StateFactory");function WF(e,t){return t?function(n){return n.pipe(WF(function(n,i){return ge(e(n,i)).pipe(se(function(e,r){return t(n,e,i,r)}))}))}:function(t){return t.lift(new qF(e))}}var qF=function(){function e(t){m(this,e),this.project=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new XF(e,this.project))}}]),e}(),XF=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).project=i,r.hasSubscription=!1,r.hasCompleted=!1,r.index=0,r}return b(n,[{key:"_next",value:function(e){this.hasSubscription||this.tryNext(e)}},{key:"tryNext",value:function(e){var t,n=this.index++;try{t=this.project(e,n)}catch(i){return void this.destination.error(i)}this.hasSubscription=!0,this._innerSub(t)}},{key:"_innerSub",value:function(e){var t=new me(this),n=this.destination;n.add(t);var i=be(e,t);i!==t&&n.add(i)}},{key:"_complete",value:function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete(),this.unsubscribe()}},{key:"notifyNext",value:function(e){this.destination.next(e)}},{key:"notifyError",value:function(e){this.destination.error(e)}},{key:"notifyComplete",value:function(){this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()}}]),n}(ye);function YF(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return function(t){return t.lift(new KF(e))}}var KF=function(){function e(t){m(this,e),this.defaultValue=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new $F(e,this.defaultValue))}}]),e}(),$F=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).defaultValue=i,r.isEmpty=!0,r}return b(n,[{key:"_next",value:function(e){this.isEmpty=!1,this.destination.next(e)}},{key:"_complete",value:function(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}]),n}(X),QF=function(e){return"".concat(e," is not a valid state name. It needs to be a valid object property name.")},ZF=function(){return"States must register a 'name' property"},JF=function(e,t,n){return"State name '".concat(e,"' from ").concat(t," already exists in ").concat(n)},eB=function(){return"States must be decorated with @State() decorator"},tB=function(){return"Angular is running in production mode but NGXS is still running in the development mode!\nPlease set developmentMode to false on the NgxsModule options when in production mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })"},nB=function(){return"RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })"},iB=function(){return"Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\nPlease set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\nNgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })"},rB=function(){return"Patching arrays is not supported."},oB=function(){return"Patching primitives is not supported."},aB=function(e){return"'".concat(e,"' class should be decorated with @Injectable() right after the @State() decorator")},sB=function(){var e=function(){function e(t,n){m(this,e),this._ngZone=t,this._platformId=n,this.verifyZoneIsNotNooped(this._ngZone)}return b(e,[{key:"enter",value:function(e){return function(e){return"server"===e}(this._platformId)?this.runInsideAngular(e):this.runOutsideAngular(e)}},{key:"leave",value:function(e){return this.runInsideAngular(e)}},{key:"runInsideAngular",value:function(e){return Bl.isInAngularZone()?e():this._ngZone.run(e)}},{key:"runOutsideAngular",value:function(e){return Bl.isInAngularZone()?this._ngZone.runOutsideAngular(e):e()}},{key:"verifyZoneIsNotNooped",value:function(e){e instanceof Bl||console.warn(iB())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Bl),Ki(xl))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),uB=new Pi("ROOT_STATE_TOKEN"),cB=new Pi("FEATURE_STATE_TOKEN"),lB=new Pi("NGXS_PLUGINS"),hB=new Pi("NG_TEST_MODE"),dB=new Pi("NG_DEV_MODE"),fB="NGXS_META",pB="NGXS_OPTIONS_META",vB=function(){var e=function e(){m(this,e),this.defaultsState={},this.selectorOptions={injectContainerState:!0,suppressErrors:!0},this.compatibility={strictContentSecurityPolicy:!1},this.executionStrategy=sB};return e.\u0275prov=Ye({token:e,factory:e.\u0275fac=function(t){return new(t||e)}}),e}(),gB=function e(t,n,i){m(this,e),this.previousValue=t,this.currentValue=n,this.firstChange=i},mB=new Pi("NGXS_EXECUTION_STRATEGY");function yB(e){return e.constructor&&e.constructor.type?e.constructor.type:e.type}var bB=function(e,t,n){e=Object.assign({},e);var i=t.split("."),r=i.length-1;return i.reduce(function(e,t,i){return e[t]=i===r?n:Array.isArray(e[t])?e[t].slice():Object.assign({},e[t]),e&&e[t]},e),e},_B=function(e,t){return t.split(".").reduce(function(e,t){return e&&e[t]},e)},wB=function(e){return e&&"object"==typeof e&&!Array.isArray(e)},kB=function e(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r2&&void 0!==arguments[2]?arguments[2]:CB,i=function(e){return e.reduce(function(e,t){return e[yB(t)]=!0,e},{})}(e),r=t&&function(e){return e.reduce(function(e,t){return e[t]=!0,e},{})}(t);return function(e){return e.pipe(function(e,t){return rf(function(n){var i=yB(n.action);return e[i]&&(!t||t[n.status])})}(i,r),n())}}(t,["DISPATCHED"])}function CB(){return se(function(e){return e.action})}function OB(e){return function(t){return new J(function(n){return t.subscribe({next:function(t){e.leave(function(){return n.next(t)})},error:function(t){e.leave(function(){return n.error(t)})},complete:function(){e.leave(function(){return n.complete()})}})})}}var TB=function(){var e=function(){function e(t){m(this,e),this._executionStrategy=t}return b(e,[{key:"enter",value:function(e){return this._executionStrategy.enter(e)}},{key:"leave",value:function(e){return this._executionStrategy.leave(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(mB))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),AB=function(t){a(i,t);var n=s(i);function i(){var e;return m(this,i),(e=n.apply(this,arguments))._itemQueue=[],e._busyPushingNext=!1,e}return b(i,[{key:"next",value:function(t){if(this._busyPushingNext)this._itemQueue.unshift(t);else{for(this._busyPushingNext=!0,e(p(i.prototype),"next",this).call(this,t);this._itemQueue.length>0;){var n=this._itemQueue.pop();e(p(i.prototype),"next",this).call(this,n)}this._busyPushingNext=!1}}}]),i}(re),PB=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(AB);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac}),t}(),MB=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,function(t){var n=e.pipe(OB(i)).subscribe({next:function(e){return t.next(e)},error:function(e){return t.error(e)},complete:function(){return t.complete()}});t.add(n)})}return n}(J);return e.\u0275fac=function(t){return new(t||e)(Ki(PB),Ki(TB))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),IB=function e(t){return function(){for(var n=arguments.length,i=new Array(n),r=0;r1&&void 0!==arguments[1]?arguments[1]:[];Array.isArray(o)||(o=[]),o.push(r),n[r]=!0,e[r].forEach(function(e){if(o.indexOf(e)>=0)throw new Error("Circular dependency '".concat(e,"' is required by '").concat(r,"': ").concat(o.join(" -> ")));n[e]||i(e,o.slice(0))}),t.indexOf(r)<0&&t.push(r)};return Object.keys(e).forEach(function(e){return i(e)}),t.reverse()}(r),a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=function e(t,n){for(var i in t)if(t.hasOwnProperty(i)&&t[i].indexOf(n)>=0){var r=e(t,i);return null!==r?"".concat(r,".").concat(i):i}return null};for(var i in e)if(e.hasOwnProperty(i)){var r=n(e,i);t[i]=r?"".concat(r,".").concat(i):i}return t}(r),s=function(e){return e.reduce(function(e,t){return e[t[fB].name]=t,e},{})}(n),u=[],c=_(o);try{for(c.s();!(i=c.n()).done;){var l=i.value,h=s[l],d=a[l],f=h[fB];this.addRuntimeInfoToMeta(f,d);var p={name:l,path:d,isInitialised:!1,actions:f.actions,instance:this._injector.get(h),defaults:e.cloneDefaults(f.defaults)};this.hasBeenMountedAndBootstrapped(l,d)||u.push(p),this.states.push(p)}}catch(v){c.e(v)}finally{c.f()}return u}},{key:"addAndReturnDefaults",value:function(e){var t=this.add(e||[]);return{defaults:t.reduce(function(e,t){return bB(e,t.path,t.defaults)},{}),states:t}}},{key:"connectActionHandlers",value:function(){var e=this;null===this._actionsSubscription&&(this._actionsSubscription=this._actions.pipe(rf(function(e){return"DISPATCHED"===e.status}),_e(function(t){var n=t.action;return e.invokeActions(e._actions,n).pipe(se(function(){return{action:n,status:"SUCCESSFUL"}}),YF({action:n,status:"CANCELED"}),kb(function(e){return Nd({action:n,status:"ERRORED",error:e})}))})).subscribe(function(t){return e._actionResults.next(t)}))}},{key:"invokeActions",value:function(e,t){var n,i=yB(t),r=[],o=_(this.states);try{for(o.s();!(n=o.n()).done;){var a=n.value,s=a.actions[i];if(s){var u,c=_(s);try{for(c.s();!(u=c.n()).done;){var l=u.value,h=this._stateContextFactory.createStateContext(a);try{var d=a.instance[l.fn](h,t);d instanceof Promise&&(d=ge(d)),d instanceof J?(d=d.pipe(YF({})),l.options.cancelUncompleted&&(d=d.pipe(sf(e.pipe(EB(t)))))):d=Nd({}).pipe(Cf()),r.push(d)}catch(d){r.push(yf(d))}}}catch(f){c.e(f)}finally{c.f()}}}}catch(f){o.e(f)}finally{o.f()}return r.length||r.push(Nd({})),_b(r)}},{key:"addToStatesMap",value:function(e){var t,n=[],i=this.statesByName,r=_(e);try{for(r.s();!(t=r.n()).done;){var o=t.value,a=UB.checkStateNameIsUnique(o,i);!i[a]&&(n.push(o),i[a]=o)}}catch(s){r.e(s)}finally{r.f()}return{newStates:n}}},{key:"addRuntimeInfoToMeta",value:function(e,t){this.statePaths[e.name]=t,e.path=t}},{key:"hasBeenMountedAndBootstrapped",value:function(e,t){var n=void 0!==_B(this._initialState,t);return this.statesByName[e]&&n}}],[{key:"cloneDefaults",value:function(e){return Array.isArray(e)?e.slice():function(e){return"object"==typeof e&&null!==e||"function"==typeof e}(e)?Object.assign({},e):void 0===e?{}:e}},{key:"checkStatesAreValid",value:function(e){e.forEach(UB.getValidStateMeta)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(rs),Ki(vB),Ki(e,12),Ki(PB),Ki(NB),Ki(zB),Ki(zF,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),GB=function(){var e=function(){function e(t,n,i){m(this,e),this.internalStateOperations=t,this.stateContextFactory=n,this.bootstrapper=i}return b(e,[{key:"ngxsBootstrap",value:function(e,t){var n=this;this.internalStateOperations.getRootStateOperations().dispatch(e).pipe(rf(function(){return!!t}),iv(function(){return n.invokeInit(t.states)}),_e(function(){return n.bootstrapper.appBootstrapped$}),rf(function(e){return!!e})).subscribe(function(){return n.invokeBootstrap(t.states)})}},{key:"invokeInit",value:function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var i=t.value,r=i.instance;if(r.ngxsOnChanges){var o=SB(i,{currentAppState:{},newAppState:this.internalStateOperations.getRootStateOperations().getState()});r.ngxsOnChanges(o)}r.ngxsOnInit&&r.ngxsOnInit(this.getStateContext(i)),i.isInitialised=!0}}catch(a){n.e(a)}finally{n.f()}}},{key:"invokeBootstrap",value:function(e){var t,n=_(e);try{for(n.s();!(t=n.n()).done;){var i=t.value,r=i.instance;r.ngxsAfterBootstrap&&r.ngxsAfterBootstrap(this.getStateContext(i))}}catch(o){n.e(o)}finally{n.f()}}},{key:"getStateContext",value:function(e){return this.stateContextFactory.createStateContext(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(VB),Ki(zB),Ki(VF))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),WB=function(){var e=function(){function e(t,n,i,r,o,a){m(this,e),this._stateStream=t,this._internalStateOperations=n,this._config=i,this._internalExecutionStrategy=r,this._stateFactory=o,this.initStateStream(a)}return b(e,[{key:"dispatch",value:function(e){return this._internalStateOperations.getRootStateOperations().dispatch(e)}},{key:"select",value:function(e){var t=this,n=this.getStoreBoundSelectorFn(e);return this._stateStream.pipe(se(n),kb(function(e){var n=t._config.selectorOptions.suppressErrors;return e instanceof TypeError&&n?Nd(void 0):yf(e)}),Yd(),OB(this._internalExecutionStrategy))}},{key:"selectOnce",value:function(e){return this.select(e).pipe(op(1))}},{key:"selectSnapshot",value:function(e){return this.getStoreBoundSelectorFn(e)(this._stateStream.getValue())}},{key:"subscribe",value:function(e){return this._stateStream.pipe(OB(this._internalExecutionStrategy)).subscribe(e)}},{key:"snapshot",value:function(){return this._internalStateOperations.getRootStateOperations().getState()}},{key:"reset",value:function(e){return this._internalStateOperations.getRootStateOperations().setState(e)}},{key:"getStoreBoundSelectorFn",value:function(e){return function(e){var t=function(e){return e.NGXS_SELECTOR_META}(e)||xB(e);return t&&t.makeRootSelector||function(){return e}}(e)(this._stateFactory.getRuntimeSelectorContext())}},{key:"initStateStream",value:function(e){var t=this._stateStream.value;if(!t||0===Object.keys(t).length){var n=Object.keys(this._config.defaultsState).length>0?Object.assign({},this._config.defaultsState,e):e;this._stateStream.next(n)}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(RB),Ki(VB),Ki(vB),Ki(TB),Ki(HB),Ki(zF,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),qB=function(){var e=function(){function e(t,n){m(this,e),e.store=t,e.config=n}return b(e,[{key:"ngOnDestroy",value:function(){e.store=null,e.config=null}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(WB),Ki(vB))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e.store=null,e.config=null,e}(),XB=function(){function e(){m(this,e)}return b(e,null,[{key:"type",get:function(){return"@@INIT"}}]),e}(),YB=function(){function e(t){m(this,e),this.addedStates=t}return b(e,null,[{key:"type",get:function(){return"@@UPDATE_STATE"}}]),e}(),KB=new Sf(1),$B=function(){var e=function e(t,n,i,r){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],a=arguments.length>5?arguments[5]:void 0;m(this,e),function(){try{var t=window.ng,n=!(t.probe&&t.coreTokens)&&Zl();KB.next(n)}catch(e){KB.next(!1)}finally{KB.complete()}}();var s=t.addAndReturnDefaults(o);n.setStateToTheCurrentWithNew(s),t.connectActionHandlers(),a.ngxsBootstrap(new XB,s)};return e.\u0275fac=function(t){return new(t||e)(Ki(HB),Ki(VB),Ki(WB),Ki(qB),Ki(uB,8),Ki(GB))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),QB=function(){var e=function(){function e(t,n,i){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=arguments.length>4?arguments[4]:void 0;m(this,e);var a=e.flattenStates(r),s=i.addAndReturnDefaults(a);s.states.length&&(n.setStateToTheCurrentWithNew(s),o.ngxsBootstrap(new YB(s.defaults),s))}return b(e,null,[{key:"flattenStates",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.reduce(function(e,t){return e.concat(t)},[])}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(WB),Ki(VB),Ki(HB),Ki(cB,8),Ki(GB))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),ZB=function(){function e(){m(this,e)}return b(e,null,[{key:"forRoot",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return{ngModule:$B,providers:[HB,zB,MB,PB,VF,BB,FB,GB,LB,NB,VB,TB,WB,RB,qB,DB].concat(v(t),v(e.ngxsTokenProviders(t,n)))}}},{key:"forFeature",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{ngModule:QB,providers:[HB,DB].concat(v(e),[{provide:cB,multi:!0,useValue:e}])}}},{key:"ngxsTokenProviders",value:function(t,n){return[{provide:hB,useValue:BF},{provide:dB,useValue:Zl},{provide:mB,useClass:n.executionStrategy||sB},{provide:uB,useValue:t},{provide:e.ROOT_OPTIONS,useValue:n},{provide:vB,useFactory:e.ngxsConfigFactory,deps:[e.ROOT_OPTIONS]},{provide:Sl,useFactory:e.appBootstrapListenerFactory,multi:!0,deps:[VF]},{provide:zF,useFactory:e.getInitialState},{provide:HF,useExisting:zB},{provide:GF,useExisting:HB}]}},{key:"ngxsConfigFactory",value:function(e){return kB(new vB,e)}},{key:"appBootstrapListenerFactory",value:function(e){return function(){return e.bootstrap()}}},{key:"getInitialState",value:function(){return UF.pop()}}]),e}();function JB(e){return function(t){!function(e){KB.subscribe(function(t){t&&(e.\u0275prov||console.warn(aB(e.name)))})}(t);var n=t,i=function(e){if(!e.hasOwnProperty(fB)){var t={name:null,actions:{},defaults:{},path:null,makeRootSelector:function(e){return e.getStateGetter(t.name)},children:[]};Object.defineProperty(e,fB,{value:t})}return xB(e)}(n),r=Object.getPrototypeOf(n),o=function(t){return Object.assign({},t[pB]||{},e)}(r);(function(e){var t=e.meta,n=e.inheritedStateClass,i=e.optionsWithInheritance,r=i.children,o=i.defaults,a=i.name,s="string"==typeof a?a:a&&a.getName()||null;UB.checkCorrectStateName(s),n.hasOwnProperty(fB)&&(t.actions=Object.assign({},t.actions,(n[fB]||{}).actions)),t.children=r,t.defaults=o,t.name=s})({meta:i,inheritedStateClass:r,optionsWithInheritance:o}),n[pB]=o}}ZB.\u0275fac=function(e){return new(e||ZB)},ZB.\u0275mod=At({type:ZB}),ZB.\u0275inj=Ke({}),ZB.ROOT_OPTIONS=new Pi("ROOT_OPTIONS");var eV=function(){var e=function(){function e(t,n){m(this,e),this._renderer=t,this._elementRef=n,this.onChange=function(e){},this.onTouched=function(){}}return b(e,[{key:"setProperty",value:function(e,t){this._renderer.setProperty(this._elementRef.nativeElement,e,t)}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"registerOnChange",value:function(e){this.onChange=e}},{key:"setDisabledState",value:function(e){this.setProperty("disabled",e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Qu),Ss(Yu))},e.\u0275dir=Mt({type:e}),e}(),tV=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(eV);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,features:[as]}),t}(),nV=new Pi("NgValueAccessor"),iV={provide:nV,useExisting:ze(function(){return oV}),multi:!0},rV=new Pi("CompositionEventMode"),oV=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e,i))._compositionMode=r,o._composing=!1,null==o._compositionMode&&(o._compositionMode=!function(){var e=lh()?lh().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}()),o}return b(n,[{key:"writeValue",value:function(e){this.setProperty("value",null==e?"":e)}},{key:"_handleInput",value:function(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}},{key:"_compositionStart",value:function(){this._composing=!0}},{key:"_compositionEnd",value:function(e){this._composing=!1,this._compositionMode&&this.onChange(e)}}]),n}(eV);return e.\u0275fac=function(t){return new(t||e)(Ss(Qu),Ss(Yu),Ss(rV,8))},e.\u0275dir=Mt({type:e,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(e,t){1&e&&js("input",function(e){return t._handleInput(e.target.value)})("blur",function(){return t.onTouched()})("compositionstart",function(){return t._compositionStart()})("compositionend",function(e){return t._compositionEnd(e.target.value)})},features:[Uu([iV]),as]}),e}(),aV=new Pi("NgValidators"),sV=new Pi("NgAsyncValidators");function uV(e){return null!=e}function cV(e){var t=Ds(e)?ge(e):e;return Ls(t),t}function lV(e){var t={};return e.forEach(function(e){t=null!=e?Object.assign(Object.assign({},t),e):t}),0===Object.keys(t).length?null:t}function hV(e,t){return t.map(function(t){return t(e)})}function dV(e){return e.map(function(e){return function(e){return!e.validate}(e)?e:function(t){return e.validate(t)}})}function fV(e){return null!=e?function(e){if(!e)return null;var t=e.filter(uV);return 0==t.length?null:function(e){return lV(hV(e,t))}}(dV(e)):null}function pV(e){return null!=e?function(e){if(!e)return null;var t=e.filter(uV);return 0==t.length?null:function(e){return _b(hV(e,t).map(cV)).pipe(se(lV))}}(dV(e)):null}function vV(e,t){return null===e?[t]:Array.isArray(e)?[].concat(v(e),[t]):[e,t]}function gV(e){return e._rawValidators}function mV(e){return e._rawAsyncValidators}function yV(e){return e?Array.isArray(e)?e:[e]:[]}function bV(e,t){return Array.isArray(e)?e.includes(t):e===t}function _V(e,t){var n=yV(t);return yV(e).forEach(function(e){bV(n,e)||n.push(e)}),n}function wV(e,t){return yV(t).filter(function(t){return!bV(e,t)})}var kV=function(){var e=function(){function e(){m(this,e),this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}return b(e,[{key:"value",get:function(){return this.control?this.control.value:null}},{key:"valid",get:function(){return this.control?this.control.valid:null}},{key:"invalid",get:function(){return this.control?this.control.invalid:null}},{key:"pending",get:function(){return this.control?this.control.pending:null}},{key:"disabled",get:function(){return this.control?this.control.disabled:null}},{key:"enabled",get:function(){return this.control?this.control.enabled:null}},{key:"errors",get:function(){return this.control?this.control.errors:null}},{key:"pristine",get:function(){return this.control?this.control.pristine:null}},{key:"dirty",get:function(){return this.control?this.control.dirty:null}},{key:"touched",get:function(){return this.control?this.control.touched:null}},{key:"status",get:function(){return this.control?this.control.status:null}},{key:"untouched",get:function(){return this.control?this.control.untouched:null}},{key:"statusChanges",get:function(){return this.control?this.control.statusChanges:null}},{key:"valueChanges",get:function(){return this.control?this.control.valueChanges:null}},{key:"path",get:function(){return null}},{key:"_setValidators",value:function(e){this._rawValidators=e||[],this._composedValidatorFn=fV(this._rawValidators)}},{key:"_setAsyncValidators",value:function(e){this._rawAsyncValidators=e||[],this._composedAsyncValidatorFn=pV(this._rawAsyncValidators)}},{key:"validator",get:function(){return this._composedValidatorFn||null}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn||null}},{key:"_registerOnDestroy",value:function(e){this._onDestroyCallbacks.push(e)}},{key:"_invokeOnDestroyCallbacks",value:function(){this._onDestroyCallbacks.forEach(function(e){return e()}),this._onDestroyCallbacks=[]}},{key:"reset",value:function(e){this.control&&this.control.reset(e)}},{key:"hasError",value:function(e,t){return!!this.control&&this.control.hasError(e,t)}},{key:"getError",value:function(e,t){return this.control?this.control.getError(e,t):null}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e}),e}(),xV=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"formDirective",get:function(){return null}},{key:"path",get:function(){return null}}]),n}(kV);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,features:[as]}),t}(),SV=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._parent=null,e.name=null,e.valueAccessor=null,e}return n}(kV),EV=function(){function e(t){m(this,e),this._cd=t}return b(e,[{key:"is",value:function(e){var t,n,i;return"submitted"===e?!!(null===(t=this._cd)||void 0===t?void 0:t.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[e])}}]),e}(),CV=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,e)}return n}(EV);return e.\u0275fac=function(t){return new(t||e)(Ss(SV,2))},e.\u0275dir=Mt({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(e,t){2&e&&au("ng-untouched",t.is("untouched"))("ng-touched",t.is("touched"))("ng-pristine",t.is("pristine"))("ng-dirty",t.is("dirty"))("ng-valid",t.is("valid"))("ng-invalid",t.is("invalid"))("ng-pending",t.is("pending"))},features:[as]}),e}(),OV=function(){var e=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,e)}return n}(EV);return e.\u0275fac=function(t){return new(t||e)(Ss(xV,10))},e.\u0275dir=Mt({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(e,t){2&e&&au("ng-untouched",t.is("untouched"))("ng-touched",t.is("touched"))("ng-pristine",t.is("pristine"))("ng-dirty",t.is("dirty"))("ng-valid",t.is("valid"))("ng-invalid",t.is("invalid"))("ng-pending",t.is("pending"))("ng-submitted",t.is("submitted"))},features:[as]}),e}();function TV(e,t){MV(e,t),t.valueAccessor.writeValue(e.value),function(e,t){t.valueAccessor.registerOnChange(function(n){e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&RV(e,t)})}(e,t),function(e,t){var n=function(e,n){t.valueAccessor.writeValue(e),n&&t.viewToModelUpdate(e)};e.registerOnChange(n),t._registerOnDestroy(function(){e._unregisterOnChange(n)})}(e,t),function(e,t){t.valueAccessor.registerOnTouched(function(){e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&RV(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function(e,t){if(t.valueAccessor.setDisabledState){var n=function(e){t.valueAccessor.setDisabledState(e)};e.registerOnDisabledChange(n),t._registerOnDestroy(function(){e._unregisterOnDisabledChange(n)})}}(e,t)}function AV(e,t){var n=function(){};t.valueAccessor&&(t.valueAccessor.registerOnChange(n),t.valueAccessor.registerOnTouched(n)),IV(e,t),e&&(t._invokeOnDestroyCallbacks(),e._registerOnCollectionChange(function(){}))}function PV(e,t){e.forEach(function(e){e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function MV(e,t){var n=gV(e);null!==t.validator?e.setValidators(vV(n,t.validator)):"function"==typeof n&&e.setValidators([n]);var i=mV(e);null!==t.asyncValidator?e.setAsyncValidators(vV(i,t.asyncValidator)):"function"==typeof i&&e.setAsyncValidators([i]);var r=function(){return e.updateValueAndValidity()};PV(t._rawValidators,r),PV(t._rawAsyncValidators,r)}function IV(e,t){var n=!1;if(null!==e){if(null!==t.validator){var i=gV(e);if(Array.isArray(i)&&i.length>0){var r=i.filter(function(e){return e!==t.validator});r.length!==i.length&&(n=!0,e.setValidators(r))}}if(null!==t.asyncValidator){var o=mV(e);if(Array.isArray(o)&&o.length>0){var a=o.filter(function(e){return e!==t.asyncValidator});a.length!==o.length&&(n=!0,e.setAsyncValidators(a))}}}var s=function(){};return PV(t._rawValidators,s),PV(t._rawAsyncValidators,s),n}function RV(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function DV(e,t){MV(e,t)}function NV(e,t){e._syncPendingControls(),t.forEach(function(e){var t=e.control;"submit"===t.updateOn&&t._pendingChange&&(e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1)})}function LV(e,t){var n=e.indexOf(t);n>-1&&e.splice(n,1)}var jV="VALID",FV="INVALID",BV="PENDING",VV="DISABLED";function zV(e){return(WV(e)?e.validators:e)||null}function UV(e){return Array.isArray(e)?fV(e):e||null}function HV(e,t){return(WV(t)?t.asyncValidators:e)||null}function GV(e){return Array.isArray(e)?pV(e):e||null}function WV(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}var qV=function(){function e(t,n){m(this,e),this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=function(){},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=n,this._composedValidatorFn=UV(this._rawValidators),this._composedAsyncValidatorFn=GV(this._rawAsyncValidators)}return b(e,[{key:"validator",get:function(){return this._composedValidatorFn},set:function(e){this._rawValidators=this._composedValidatorFn=e}},{key:"asyncValidator",get:function(){return this._composedAsyncValidatorFn},set:function(e){this._rawAsyncValidators=this._composedAsyncValidatorFn=e}},{key:"parent",get:function(){return this._parent}},{key:"valid",get:function(){return this.status===jV}},{key:"invalid",get:function(){return this.status===FV}},{key:"pending",get:function(){return this.status==BV}},{key:"disabled",get:function(){return this.status===VV}},{key:"enabled",get:function(){return this.status!==VV}},{key:"dirty",get:function(){return!this.pristine}},{key:"untouched",get:function(){return!this.touched}},{key:"updateOn",get:function(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}},{key:"setValidators",value:function(e){this._rawValidators=e,this._composedValidatorFn=UV(e)}},{key:"setAsyncValidators",value:function(e){this._rawAsyncValidators=e,this._composedAsyncValidatorFn=GV(e)}},{key:"addValidators",value:function(e){this.setValidators(_V(e,this._rawValidators))}},{key:"addAsyncValidators",value:function(e){this.setAsyncValidators(_V(e,this._rawAsyncValidators))}},{key:"removeValidators",value:function(e){this.setValidators(wV(e,this._rawValidators))}},{key:"removeAsyncValidators",value:function(e){this.setAsyncValidators(wV(e,this._rawAsyncValidators))}},{key:"hasValidator",value:function(e){return bV(this._rawValidators,e)}},{key:"hasAsyncValidator",value:function(e){return bV(this._rawAsyncValidators,e)}},{key:"clearValidators",value:function(){this.validator=null}},{key:"clearAsyncValidators",value:function(){this.asyncValidator=null}},{key:"markAsTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!0,this._parent&&!e.onlySelf&&this._parent.markAsTouched(e)}},{key:"markAllAsTouched",value:function(){this.markAsTouched({onlySelf:!0}),this._forEachChild(function(e){return e.markAllAsTouched()})}},{key:"markAsUntouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=!1,this._pendingTouched=!1,this._forEachChild(function(e){e.markAsUntouched({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"markAsDirty",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!1,this._parent&&!e.onlySelf&&this._parent.markAsDirty(e)}},{key:"markAsPristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!0,this._pendingDirty=!1,this._forEachChild(function(e){e.markAsPristine({onlySelf:!0})}),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"markAsPending",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.status=BV,!1!==e.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!e.onlySelf&&this._parent.markAsPending(e)}},{key:"disable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status=VV,this.errors=null,this._forEachChild(function(t){t.disable(Object.assign(Object.assign({},e),{onlySelf:!0}))}),this._updateValue(),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach(function(e){return e(!0)})}},{key:"enable",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this._parentMarkedDirty(e.onlySelf);this.status=jV,this._forEachChild(function(t){t.enable(Object.assign(Object.assign({},e),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent}),this._updateAncestors(Object.assign(Object.assign({},e),{skipPristineCheck:t})),this._onDisabledChange.forEach(function(e){return e(!1)})}},{key:"_updateAncestors",value:function(e){this._parent&&!e.onlySelf&&(this._parent.updateValueAndValidity(e),e.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}},{key:"setParent",value:function(e){this._parent=e}},{key:"updateValueAndValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===jV||this.status===BV)&&this._runAsyncValidator(e.emitEvent)),!1!==e.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!e.onlySelf&&this._parent.updateValueAndValidity(e)}},{key:"_updateTreeValidity",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{emitEvent:!0};this._forEachChild(function(t){return t._updateTreeValidity(e)}),this.updateValueAndValidity({onlySelf:!0,emitEvent:e.emitEvent})}},{key:"_setInitialStatus",value:function(){this.status=this._allControlsDisabled()?VV:jV}},{key:"_runValidator",value:function(){return this.validator?this.validator(this):null}},{key:"_runAsyncValidator",value:function(e){var t=this;if(this.asyncValidator){this.status=BV,this._hasOwnPendingAsyncValidator=!0;var n=cV(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(function(n){t._hasOwnPendingAsyncValidator=!1,t.setErrors(n,{emitEvent:e})})}}},{key:"_cancelExistingSubscription",value:function(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}},{key:"setErrors",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.errors=e,this._updateControlsErrors(!1!==t.emitEvent)}},{key:"get",value:function(e){return function(e,t,n){if(null==t||(Array.isArray(t)||(t=t.split(".")),Array.isArray(t)&&0===t.length))return null;var i=e;return t.forEach(function(e){i=i instanceof YV?i.controls.hasOwnProperty(e)?i.controls[e]:null:i instanceof KV&&i.at(e)||null}),i}(this,e)}},{key:"getError",value:function(e,t){var n=t?this.get(t):this;return n&&n.errors?n.errors[e]:null}},{key:"hasError",value:function(e,t){return!!this.getError(e,t)}},{key:"root",get:function(){for(var e=this;e._parent;)e=e._parent;return e}},{key:"_updateControlsErrors",value:function(e){this.status=this._calculateStatus(),e&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(e)}},{key:"_initObservables",value:function(){this.valueChanges=new Qc,this.statusChanges=new Qc}},{key:"_calculateStatus",value:function(){return this._allControlsDisabled()?VV:this.errors?FV:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(BV)?BV:this._anyControlsHaveStatus(FV)?FV:jV}},{key:"_anyControlsHaveStatus",value:function(e){return this._anyControls(function(t){return t.status===e})}},{key:"_anyControlsDirty",value:function(){return this._anyControls(function(e){return e.dirty})}},{key:"_anyControlsTouched",value:function(){return this._anyControls(function(e){return e.touched})}},{key:"_updatePristine",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.pristine=!this._anyControlsDirty(),this._parent&&!e.onlySelf&&this._parent._updatePristine(e)}},{key:"_updateTouched",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.touched=this._anyControlsTouched(),this._parent&&!e.onlySelf&&this._parent._updateTouched(e)}},{key:"_isBoxedValue",value:function(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}},{key:"_registerOnCollectionChange",value:function(e){this._onCollectionChange=e}},{key:"_setUpdateStrategy",value:function(e){WV(e)&&null!=e.updateOn&&(this._updateOn=e.updateOn)}},{key:"_parentMarkedDirty",value:function(e){return!e&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}]),e}(),XV=function(e){a(n,e);var t=s(n);function n(){var e,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,r=arguments.length>1?arguments[1]:void 0,o=arguments.length>2?arguments[2]:void 0;return m(this,n),(e=t.call(this,zV(r),HV(o,r)))._onChange=[],e._applyFormState(i),e._setUpdateStrategy(r),e._initObservables(),e.updateValueAndValidity({onlySelf:!0,emitEvent:!!e.asyncValidator}),e}return b(n,[{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.value=this._pendingValue=e,this._onChange.length&&!1!==n.emitModelToViewChange&&this._onChange.forEach(function(e){return e(t.value,!1!==n.emitViewToModelChange)}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.setValue(e,t)}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._applyFormState(e),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}},{key:"_updateValue",value:function(){}},{key:"_anyControls",value:function(e){return!1}},{key:"_allControlsDisabled",value:function(){return this.disabled}},{key:"registerOnChange",value:function(e){this._onChange.push(e)}},{key:"_unregisterOnChange",value:function(e){LV(this._onChange,e)}},{key:"registerOnDisabledChange",value:function(e){this._onDisabledChange.push(e)}},{key:"_unregisterOnDisabledChange",value:function(e){LV(this._onDisabledChange,e)}},{key:"_forEachChild",value:function(e){}},{key:"_syncPendingControls",value:function(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}},{key:"_applyFormState",value:function(e){this._isBoxedValue(e)?(this.value=this._pendingValue=e.value,e.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=e}}]),n}(qV),YV=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,zV(i),HV(r,i))).controls=e,o._initObservables(),o._setUpdateStrategy(i),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!!o.asyncValidator}),o}return b(n,[{key:"registerControl",value:function(e,t){return this.controls[e]?this.controls[e]:(this.controls[e]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}},{key:"addControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.registerControl(e,t),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"removeControl",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),delete this.controls[e],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}},{key:"setControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),delete this.controls[e],t&&this.registerControl(e,t),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"contains",value:function(e){return this.controls.hasOwnProperty(e)&&this.controls[e].enabled}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),Object.keys(e).forEach(function(i){t._throwIfControlMissing(i),t.controls[i].setValue(e[i],{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=e&&(Object.keys(e).forEach(function(i){t.controls[i]&&t.controls[i].patchValue(e[i],{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n))}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(n,i){n.reset(e[i],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this._reduceChildren({},function(e,t,n){return e[n]=t instanceof XV?t.value:t.getRawValue(),e})}},{key:"_syncPendingControls",value:function(){var e=this._reduceChildren(!1,function(e,t){return!!t._syncPendingControls()||e});return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){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[e])throw new Error("Cannot find form control with name: ".concat(e,"."))}},{key:"_forEachChild",value:function(e){var t=this;Object.keys(this.controls).forEach(function(n){var i=t.controls[n];i&&e(i,n)})}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild(function(t){t.setParent(e),t._registerOnCollectionChange(e._onCollectionChange)})}},{key:"_updateValue",value:function(){this.value=this._reduceValue()}},{key:"_anyControls",value:function(e){for(var t=0,n=Object.keys(this.controls);t0||this.disabled}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control with name: '".concat(n,"'."))})}}]),n}(qV),KV=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,zV(i),HV(r,i))).controls=e,o._initObservables(),o._setUpdateStrategy(i),o._setUpControls(),o.updateValueAndValidity({onlySelf:!0,emitEvent:!!o.asyncValidator}),o}return b(n,[{key:"at",value:function(e){return this.controls[e]}},{key:"push",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls.push(e),this._registerControl(e),this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}},{key:"insert",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls.splice(e,0,t),this._registerControl(t),this.updateValueAndValidity({emitEvent:n.emitEvent})}},{key:"removeAt",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),this.updateValueAndValidity({emitEvent:t.emitEvent})}},{key:"setControl",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.controls[e]&&this.controls[e]._registerOnCollectionChange(function(){}),this.controls.splice(e,1),t&&(this.controls.splice(e,0,t),this._registerControl(t)),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}},{key:"length",get:function(){return this.controls.length}},{key:"setValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._checkAllValuesPresent(e),e.forEach(function(e,i){t._throwIfControlMissing(i),t.at(i).setValue(e,{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n)}},{key:"patchValue",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};null!=e&&(e.forEach(function(e,i){t.at(i)&&t.at(i).patchValue(e,{onlySelf:!0,emitEvent:n.emitEvent})}),this.updateValueAndValidity(n))}},{key:"reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this._forEachChild(function(n,i){n.reset(e[i],{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}},{key:"getRawValue",value:function(){return this.controls.map(function(e){return e instanceof XV?e.value:e.getRawValue()})}},{key:"clear",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.controls.length<1||(this._forEachChild(function(e){return e._registerOnCollectionChange(function(){})}),this.controls.splice(0),this.updateValueAndValidity({emitEvent:e.emitEvent}))}},{key:"_syncPendingControls",value:function(){var e=this.controls.reduce(function(e,t){return!!t._syncPendingControls()||e},!1);return e&&this.updateValueAndValidity({onlySelf:!0}),e}},{key:"_throwIfControlMissing",value:function(e){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(e))throw new Error("Cannot find form control at index ".concat(e))}},{key:"_forEachChild",value:function(e){this.controls.forEach(function(t,n){e(t,n)})}},{key:"_updateValue",value:function(){var e=this;this.value=this.controls.filter(function(t){return t.enabled||e.disabled}).map(function(e){return e.value})}},{key:"_anyControls",value:function(e){return this.controls.some(function(t){return t.enabled&&e(t)})}},{key:"_setUpControls",value:function(){var e=this;this._forEachChild(function(t){return e._registerControl(t)})}},{key:"_checkAllValuesPresent",value:function(e){this._forEachChild(function(t,n){if(void 0===e[n])throw new Error("Must supply a value for form control at index: ".concat(n,"."))})}},{key:"_allControlsDisabled",value:function(){var e,t=_(this.controls);try{for(t.s();!(e=t.n()).done;){if(e.value.enabled)return!1}}catch(n){t.e(n)}finally{t.f()}return this.controls.length>0||this.disabled}},{key:"_registerControl",value:function(e){e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange)}}]),n}(qV),$V={provide:xV,useExisting:ze(function(){return ZV})},QV=Promise.resolve(null),ZV=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).submitted=!1,r._directives=[],r.ngSubmit=new Qc,r.form=new YV({},fV(e),pV(i)),r}return b(n,[{key:"ngAfterViewInit",value:function(){this._setUpdateStrategy()}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"controls",get:function(){return this.form.controls}},{key:"addControl",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path);e.control=n.registerControl(e.name,e.control),TV(e.control,e),e.control.updateValueAndValidity({emitEvent:!1}),t._directives.push(e)})}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name),LV(t._directives,e)})}},{key:"addFormGroup",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path),i=new YV({});DV(i,e),n.registerControl(e.name,i),i.updateValueAndValidity({emitEvent:!1})})}},{key:"removeFormGroup",value:function(e){var t=this;QV.then(function(){var n=t._findContainer(e.path);n&&n.removeControl(e.name)})}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){var n=this;QV.then(function(){n.form.get(e.path).setValue(t)})}},{key:"setValue",value:function(e){this.control.setValue(e)}},{key:"onSubmit",value:function(e){return this.submitted=!0,NV(this.form,this._directives),this.ngSubmit.emit(e),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(e){this.form.reset(e),this.submitted=!1}},{key:"_setUpdateStrategy",value:function(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}},{key:"_findContainer",value:function(e){return e.pop(),e.length?this.form.get(e):this.form}}]),n}(xV);return e.\u0275fac=function(t){return new(t||e)(Ss(aV,10),Ss(sV,10))},e.\u0275dir=Mt({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(e,t){1&e&&js("submit",function(e){return t.onSubmit(e)})("reset",function(){return t.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Uu([$V]),as]}),e}(),JV=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),e}(),ez=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),tz=new Pi("NgModelWithFormControlWarning"),nz={provide:SV,useExisting:ze(function(){return iz})},iz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this))._ngModelWarningConfig=o,a.update=new Qc,a._ngModelWarningSent=!1,a._setValidators(e),a._setAsyncValidators(i),a.valueAccessor=function(e,t){return t?(Array.isArray(t),t.forEach(function(e){e.constructor===oV?n=e:function(e){return Object.getPrototypeOf(e.constructor)===tV}(e)?i=e:r=e}),r||i||n||null):null;var n,i,r}(0,r),a}return b(n,[{key:"isDisabled",set:function(e){}},{key:"ngOnChanges",value:function(e){if(this._isControlChanged(e)){var t=e.form.previousValue;t&&AV(t,this,!1),TV(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}(function(e,t){if(!e.hasOwnProperty("model"))return!1;var n=e.model;return!!n.isFirstChange()||!Object.is(t,n.currentValue)})(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}},{key:"ngOnDestroy",value:function(){this.form&&AV(this.form,this,!1)}},{key:"path",get:function(){return[]}},{key:"control",get:function(){return this.form}},{key:"viewToModelUpdate",value:function(e){this.viewModel=e,this.update.emit(e)}},{key:"_isControlChanged",value:function(e){return e.hasOwnProperty("form")}}]),n}(SV);return e.\u0275fac=function(t){return new(t||e)(Ss(aV,10),Ss(sV,10),Ss(nV,10),Ss(tz,8))},e.\u0275dir=Mt({type:e,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[Uu([nz]),as,Ht]}),e._ngModelWarningSentOnce=!1,e}(),rz={provide:xV,useExisting:ze(function(){return oz})},oz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).validators=e,r.asyncValidators=i,r.submitted=!1,r._onCollectionChange=function(){return r._updateDomValue()},r.directives=[],r.form=null,r.ngSubmit=new Qc,r._setValidators(e),r._setAsyncValidators(i),r}return b(n,[{key:"ngOnChanges",value:function(e){this._checkFormPresent(),e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}},{key:"ngOnDestroy",value:function(){this.form&&(IV(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(function(){}))}},{key:"formDirective",get:function(){return this}},{key:"control",get:function(){return this.form}},{key:"path",get:function(){return[]}},{key:"addControl",value:function(e){var t=this.form.get(e.path);return TV(t,e),t.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),t}},{key:"getControl",value:function(e){return this.form.get(e.path)}},{key:"removeControl",value:function(e){AV(e.control||null,e,!1),LV(this.directives,e)}},{key:"addFormGroup",value:function(e){this._setUpFormContainer(e)}},{key:"removeFormGroup",value:function(e){this._cleanUpFormContainer(e)}},{key:"getFormGroup",value:function(e){return this.form.get(e.path)}},{key:"addFormArray",value:function(e){this._setUpFormContainer(e)}},{key:"removeFormArray",value:function(e){this._cleanUpFormContainer(e)}},{key:"getFormArray",value:function(e){return this.form.get(e.path)}},{key:"updateModel",value:function(e,t){this.form.get(e.path).setValue(t)}},{key:"onSubmit",value:function(e){return this.submitted=!0,NV(this.form,this.directives),this.ngSubmit.emit(e),!1}},{key:"onReset",value:function(){this.resetForm()}},{key:"resetForm",value:function(e){this.form.reset(e),this.submitted=!1}},{key:"_updateDomValue",value:function(){var e=this;this.directives.forEach(function(t){var n=t.control,i=e.form.get(t.path);n!==i&&(AV(n||null,t),i instanceof XV&&(TV(i,t),t.control=i))}),this.form._updateTreeValidity({emitEvent:!1})}},{key:"_setUpFormContainer",value:function(e){var t=this.form.get(e.path);DV(t,e),t.updateValueAndValidity({emitEvent:!1})}},{key:"_cleanUpFormContainer",value:function(e){if(this.form){var t=this.form.get(e.path);t&&function(e,t){return IV(e,t)}(t,e)&&t.updateValueAndValidity({emitEvent:!1})}}},{key:"_updateRegistrations",value:function(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(function(){})}},{key:"_updateValidators",value:function(){MV(this.form,this),this._oldForm&&IV(this._oldForm,this)}},{key:"_checkFormPresent",value:function(){}}]),n}(xV);return e.\u0275fac=function(t){return new(t||e)(Ss(aV,10),Ss(sV,10))},e.\u0275dir=Mt({type:e,selectors:[["","formGroup",""]],hostBindings:function(e,t){1&e&&js("submit",function(e){return t.onSubmit(e)})("reset",function(){return t.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Uu([rz]),as,Ht]}),e}(),az=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[ez]]}),e}(),sz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[az]}),e}(),uz=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"withConfig",value:function(t){return{ngModule:e,providers:[{provide:tz,useValue:t.warnOnNgModelWithFormControl}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[az]}),e}();function cz(e){return new J(function(t){var n;try{n=e()}catch(i){return void t.error(i)}return(n?ge(n):mf()).subscribe(t)})}var lz=["underline"],hz=["connectionContainer"],dz=["inputContainer"],fz=["label"];function pz(e,t){1&e&&(Ps(0),Os(1,"div",14),As(2,"div",15),As(3,"div",16),As(4,"div",17),Ts(),Os(5,"div",18),As(6,"div",15),As(7,"div",16),As(8,"div",17),Ts(),Ms())}function vz(e,t){1&e&&(Os(0,"div",19),Ws(1,1),Ts())}function gz(e,t){if(1&e&&(Ps(0),Ws(1,2),Os(2,"span"),wu(3),Ts(),Ms()),2&e){var n=Us(2);Wo(3),ku(n._control.placeholder)}}function mz(e,t){1&e&&Ws(0,3,["*ngSwitchCase","true"])}function yz(e,t){1&e&&(Os(0,"span",23),wu(1," *"),Ts())}function bz(e,t){if(1&e){var n=Rs();Os(0,"label",20,21),js("cdkObserveContent",function(){return gn(n),Us().updateOutlineGap()}),ks(2,gz,4,1,"ng-container",12),ks(3,mz,1,0,"ng-content",12),ks(4,yz,2,0,"span",22),Ts()}if(2&e){var i=Us();au("mat-empty",i._control.empty&&!i._shouldAlwaysFloat())("mat-form-field-empty",i._control.empty&&!i._shouldAlwaysFloat())("mat-accent","accent"==i.color)("mat-warn","warn"==i.color),Es("cdkObserveContentDisabled","outline"!=i.appearance)("id",i._labelId)("ngSwitch",i._hasLabel()),bs("for",i._control.id)("aria-owns",i._control.id),Wo(2),Es("ngSwitchCase",!1),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngIf",!i.hideRequiredMarker&&i._control.required&&!i._control.disabled)}}function _z(e,t){1&e&&(Os(0,"div",24),Ws(1,4),Ts())}function wz(e,t){if(1&e&&(Os(0,"div",25,26),As(2,"span",27),Ts()),2&e){var n=Us();Wo(2),au("mat-accent","accent"==n.color)("mat-warn","warn"==n.color)}}function kz(e,t){1&e&&(Os(0,"div"),Ws(1,5),Ts()),2&e&&Es("@transitionMessages",Us()._subscriptAnimationState)}function xz(e,t){if(1&e&&(Os(0,"div",31),wu(1),Ts()),2&e){var n=Us(2);Es("id",n._hintLabelId),Wo(1),ku(n.hintLabel)}}function Sz(e,t){if(1&e&&(Os(0,"div",28),ks(1,xz,2,2,"div",29),Ws(2,6),As(3,"div",30),Ws(4,7),Ts()),2&e){var n=Us();Es("@transitionMessages",n._subscriptAnimationState),Wo(1),Es("ngIf",n.hintLabel)}}var Ez=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Cz=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Oz=new Pi("MatError"),Tz={transitionMessages:Jv("transitionMessages",[ig("enter",ng({opacity:1,transform:"translateY(0%)"})),rg("void => enter",[ng({opacity:0,transform:"translateY(-5px)"}),eg("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])},Az=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e}),e}(),Pz=new Pi("MatHint"),Mz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["mat-label"]]}),e}(),Iz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["mat-placeholder"]]}),e}(),Rz=new Pi("MatPrefix"),Dz=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["","matPrefix",""]],features:[Uu([{provide:Rz,useExisting:e}])]}),e}(),Nz=new Pi("MatSuffix"),Lz=0,jz=qy(function(){return function e(t){m(this,e),this._elementRef=t}}(),"primary"),Fz=new Pi("MAT_FORM_FIELD_DEFAULT_OPTIONS"),Bz=new Pi("MatFormField"),Vz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,c){var l;return m(this,n),(l=t.call(this,e))._changeDetectorRef=i,l._dir=o,l._defaults=a,l._platform=s,l._ngZone=u,l._outlineGapCalculationNeededImmediately=!1,l._outlineGapCalculationNeededOnStable=!1,l._destroyed=new re,l._showAlwaysAnimate=!1,l._subscriptAnimationState="",l._hintLabel="",l._hintLabelId="mat-hint-"+Lz++,l._labelId="mat-form-field-label-"+Lz++,l.floatLabel=l._getDefaultFloatLabelState(),l._animationsEnabled="NoopAnimations"!==c,l.appearance=a&&a.appearance?a.appearance:"legacy",l._hideRequiredMarker=!(!a||null==a.hideRequiredMarker)&&a.hideRequiredMarker,l}return b(n,[{key:"appearance",get:function(){return this._appearance},set:function(e){var t=this._appearance;this._appearance=e||this._defaults&&this._defaults.appearance||"legacy","outline"===this._appearance&&t!==e&&(this._outlineGapCalculationNeededOnStable=!0)}},{key:"hideRequiredMarker",get:function(){return this._hideRequiredMarker},set:function(e){this._hideRequiredMarker=Pd(e)}},{key:"_shouldAlwaysFloat",value:function(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}},{key:"_canLabelFloat",value:function(){return"never"!==this.floatLabel}},{key:"hintLabel",get:function(){return this._hintLabel},set:function(e){this._hintLabel=e,this._processHints()}},{key:"floatLabel",get:function(){return"legacy"!==this.appearance&&"never"===this._floatLabel?"auto":this._floatLabel},set:function(e){e!==this._floatLabel&&(this._floatLabel=e||this._getDefaultFloatLabelState(),this._changeDetectorRef.markForCheck())}},{key:"_control",get:function(){return this._explicitFormFieldControl||this._controlNonStatic||this._controlStatic},set:function(e){this._explicitFormFieldControl=e}},{key:"getLabelId",value:function(){return this._hasFloatingLabel()?this._labelId:null}},{key:"getConnectedOverlayOrigin",value:function(){return this._connectionContainerRef||this._elementRef}},{key:"ngAfterContentInit",value:function(){var e=this;this._validateControlChild();var t=this._control;t.controlType&&this._elementRef.nativeElement.classList.add("mat-form-field-type-".concat(t.controlType)),t.stateChanges.pipe(hf(null)).subscribe(function(){e._validatePlaceholders(),e._syncDescribedByIds(),e._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(sf(this._destroyed)).subscribe(function(){return e._changeDetectorRef.markForCheck()}),this._ngZone.runOutsideAngular(function(){e._ngZone.onStable.pipe(sf(e._destroyed)).subscribe(function(){e._outlineGapCalculationNeededOnStable&&e.updateOutlineGap()})}),Ee(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(function(){e._outlineGapCalculationNeededOnStable=!0,e._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(hf(null)).subscribe(function(){e._processHints(),e._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(hf(null)).subscribe(function(){e._syncDescribedByIds(),e._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(sf(this._destroyed)).subscribe(function(){"function"==typeof requestAnimationFrame?e._ngZone.runOutsideAngular(function(){requestAnimationFrame(function(){return e.updateOutlineGap()})}):e.updateOutlineGap()})}},{key:"ngAfterContentChecked",value:function(){this._validateControlChild(),this._outlineGapCalculationNeededImmediately&&this.updateOutlineGap()}},{key:"ngAfterViewInit",value:function(){this._subscriptAnimationState="enter",this._changeDetectorRef.detectChanges()}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_shouldForward",value:function(e){var t=this._control?this._control.ngControl:null;return t&&t[e]}},{key:"_hasPlaceholder",value:function(){return!!(this._control&&this._control.placeholder||this._placeholderChild)}},{key:"_hasLabel",value:function(){return!(!this._labelChildNonStatic&&!this._labelChildStatic)}},{key:"_shouldLabelFloat",value:function(){return this._canLabelFloat()&&(this._control&&this._control.shouldLabelFloat||this._shouldAlwaysFloat())}},{key:"_hideControlPlaceholder",value:function(){return"legacy"===this.appearance&&!this._hasLabel()||this._hasLabel()&&!this._shouldLabelFloat()}},{key:"_hasFloatingLabel",value:function(){return this._hasLabel()||"legacy"===this.appearance&&this._hasPlaceholder()}},{key:"_getDisplayedMessages",value:function(){return this._errorChildren&&this._errorChildren.length>0&&this._control.errorState?"error":"hint"}},{key:"_animateAndLockLabel",value:function(){var e=this;this._hasFloatingLabel()&&this._canLabelFloat()&&(this._animationsEnabled&&this._label&&(this._showAlwaysAnimate=!0,Ld(this._label.nativeElement,"transitionend").pipe(op(1)).subscribe(function(){e._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}},{key:"_validatePlaceholders",value:function(){}},{key:"_processHints",value:function(){this._validateHints(),this._syncDescribedByIds()}},{key:"_validateHints",value:function(){}},{key:"_getDefaultFloatLabelState",value:function(){return this._defaults&&this._defaults.floatLabel||"auto"}},{key:"_syncDescribedByIds",value:function(){if(this._control){var e=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&e.push.apply(e,v(this._control.userAriaDescribedBy.split(" "))),"hint"===this._getDisplayedMessages()){var t=this._hintChildren?this._hintChildren.find(function(e){return"start"===e.align}):null,n=this._hintChildren?this._hintChildren.find(function(e){return"end"===e.align}):null;t?e.push(t.id):this._hintLabel&&e.push(this._hintLabelId),n&&e.push(n.id)}else this._errorChildren&&e.push.apply(e,v(this._errorChildren.map(function(e){return e.id})));this._control.setDescribedByIds(e)}}},{key:"_validateControlChild",value:function(){}},{key:"updateOutlineGap",value:function(){var e=this._label?this._label.nativeElement:null;if("outline"===this.appearance&&e&&e.children.length&&e.textContent.trim()&&this._platform.isBrowser)if(this._isAttachedToDOM()){var t=0,n=0,i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),o=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){var a=i.getBoundingClientRect();if(0===a.width&&0===a.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);for(var s=this._getStartEnd(a),u=e.children,c=this._getStartEnd(u[0].getBoundingClientRect()),l=0,h=0;h0?.75*l+10:0}for(var d=0;d1&&void 0!==arguments[1]?arguments[1]:Qd,n=function(e){return e instanceof Date&&!isNaN(+e)}(e)?+e-t.now():Math.abs(e);return function(e){return e.lift(new Hz(n,t))}}var Hz=function(){function e(t,n){m(this,e),this.delay=t,this.scheduler=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new Gz(e,this.delay,this.scheduler))}}]),e}(),Gz=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).delay=i,o.scheduler=r,o.queue=[],o.active=!1,o.errored=!1,o}return b(n,[{key:"_schedule",value:function(e){this.active=!0,this.destination.add(e.schedule(n.dispatch,this.delay,{source:this,destination:this.destination,scheduler:e}))}},{key:"scheduleNotification",value:function(e){if(!0!==this.errored){var t=this.scheduler,n=new Wz(t.now()+this.delay,e);this.queue.push(n),!1===this.active&&this._schedule(t)}}},{key:"_next",value:function(e){this.scheduleNotification(_f.createNext(e))}},{key:"_error",value:function(e){this.errored=!0,this.queue=[],this.destination.error(e),this.unsubscribe()}},{key:"_complete",value:function(){this.scheduleNotification(_f.createComplete()),this.unsubscribe()}}],[{key:"dispatch",value:function(e){for(var t=e.source,n=t.queue,i=e.scheduler,r=e.destination;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var o=Math.max(0,n[0].time-i.now());this.schedule(e,o)}else this.unsubscribe(),t.active=!1}}]),n}(X),Wz=function e(t,n){m(this,e),this.time=t,this.notification=n},qz=["panel"];function Xz(e,t){if(1&e&&(Os(0,"div",0,1),Ws(2),Ts()),2&e){var n=t.id,i=Us();Es("id",i.id)("ngClass",i._classList),bs("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby(n))}}var Yz=["*"],Kz=0,$z=function e(t,n){m(this,e),this.source=t,this.option=n},Qz=Xy(function(){return function e(){m(this,e)}}()),Zz=new Pi("mat-autocomplete-default-options",{providedIn:"root",factory:function(){return{autoActiveFirstOption:!1}}}),Jz=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this))._changeDetectorRef=e,a._elementRef=i,a._activeOptionChanges=G.EMPTY,a.showPanel=!1,a._isOpen=!1,a.displayWith=null,a.optionSelected=new Qc,a.opened=new Qc,a.closed=new Qc,a.optionActivated=new Qc,a._classList={},a.id="mat-autocomplete-"+Kz++,a.inertGroups=(null==o?void 0:o.SAFARI)||!1,a._autoActiveFirstOption=!!r.autoActiveFirstOption,a}return b(n,[{key:"isOpen",get:function(){return this._isOpen&&this.showPanel}},{key:"autoActiveFirstOption",get:function(){return this._autoActiveFirstOption},set:function(e){this._autoActiveFirstOption=Pd(e)}},{key:"classList",set:function(e){this._classList=e&&e.length?function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:/\s+/,n=[];if(null!=e){var i,r=Array.isArray(e)?e:"".concat(e).split(t),o=_(r);try{for(o.s();!(i=o.n()).done;){var a=i.value,s="".concat(a).trim();s&&n.push(s)}}catch(u){o.e(u)}finally{o.f()}}return n}(e).reduce(function(e,t){return e[t]=!0,e},{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}},{key:"ngAfterContentInit",value:function(){var e=this;this._keyManager=new Ov(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(function(t){e.isOpen&&e.optionActivated.emit({source:e,option:e.options.toArray()[t]||null})}),this._setVisibility()}},{key:"ngOnDestroy",value:function(){this._activeOptionChanges.unsubscribe()}},{key:"_setScrollTop",value:function(e){this.panel&&(this.panel.nativeElement.scrollTop=e)}},{key:"_getScrollTop",value:function(){return this.panel?this.panel.nativeElement.scrollTop:0}},{key:"_setVisibility",value:function(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}},{key:"_emitSelectEvent",value:function(e){var t=new $z(this,e);this.optionSelected.emit(t)}},{key:"_getPanelAriaLabelledby",value:function(e){return this.ariaLabel?null:this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}},{key:"_setVisibilityClasses",value:function(e){e[this._visibleClass]=this.showPanel,e[this._hiddenClass]=!this.showPanel}}]),n}(Qz);return e.\u0275fac=function(t){return new(t||e)(Ss(_c),Ss(Yu),Ss(Zz),Ss(Mf))},e.\u0275dir=Mt({type:e,viewQuery:function(e,t){var n;(1&e&&(ll(Ec,7),ll(qz,5)),2&e)&&(cl(n=dl())&&(t.template=n.first),cl(n=dl())&&(t.panel=n.first))},inputs:{displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",classList:["class","classList"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],panelWidth:"panelWidth"},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[as]}),e}(),eU=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._visibleClass="mat-autocomplete-visible",e._hiddenClass="mat-autocomplete-hidden",e}return n}(Jz);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275cmp=Et({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(e,t,n){var i;(1&e&&(hl(n,db,5),hl(n,gb,5)),2&e)&&(cl(i=dl())&&(t.optionGroups=i),cl(i=dl())&&(t.options=i))},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[Uu([{provide:ub,useExisting:t}]),as],ngContentSelectors:Yz,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(e,t){1&e&&(Gs(),ks(0,Xz,3,4,"ng-template"))},directives:[Mh],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t}(),tU=new Pi("mat-autocomplete-scroll-strategy"),nU={provide:tU,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},iU={provide:nV,useExisting:ze(function(){return oU}),multi:!0},rU=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c,l,h){var d=this;m(this,e),this._element=t,this._overlay=n,this._viewContainerRef=i,this._zone=r,this._changeDetectorRef=o,this._dir=s,this._formField=u,this._document=c,this._viewportRuler=l,this._defaults=h,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=G.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new re,this._windowBlurHandler=function(){d._canOpenOnNextFocus=d._document.activeElement!==d._element.nativeElement||d.panelOpen},this._onChange=function(){},this._onTouched=function(){},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=cz(function(){return d.autocomplete&&d.autocomplete.options?Ee.apply(void 0,v(d.autocomplete.options.map(function(e){return e.onSelectionChange}))):d._zone.onStable.pipe(op(1),df(function(){return d.optionSelections}))}),this._scrollStrategy=a}return b(e,[{key:"autocompleteDisabled",get:function(){return this._autocompleteDisabled},set:function(e){this._autocompleteDisabled=Pd(e)}},{key:"ngAfterViewInit",value:function(){var e=this,t=this._getWindow();void 0!==t&&this._zone.runOutsideAngular(function(){return t.addEventListener("blur",e._windowBlurHandler)})}},{key:"ngOnChanges",value:function(e){e.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}},{key:"ngOnDestroy",value:function(){var e=this._getWindow();void 0!==e&&e.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}},{key:"panelOpen",get:function(){return this._overlayAttached&&this.autocomplete.showPanel}},{key:"openPanel",value:function(){this._attachOverlay(),this._floatLabel()}},{key:"closePanel",value:function(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}},{key:"updatePosition",value:function(){this._overlayAttached&&this._overlayRef.updatePosition()}},{key:"panelClosingActions",get:function(){var e=this;return Ee(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(rf(function(){return e._overlayAttached})),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(rf(function(){return e._overlayAttached})):Nd()).pipe(se(function(e){return e instanceof pb?e:null}))}},{key:"activeOption",get:function(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}},{key:"_getOutsideClickStream",value:function(){var e=this;return Ee(Ld(this._document,"click"),Ld(this._document,"auxclick"),Ld(this._document,"touchend")).pipe(rf(function(t){var n=Ff(t),i=e._formField?e._formField._elementRef.nativeElement:null,r=e.connectedTo?e.connectedTo.elementRef.nativeElement:null;return e._overlayAttached&&n!==e._element.nativeElement&&(!i||!i.contains(n))&&(!r||!r.contains(n))&&!!e._overlayRef&&!e._overlayRef.overlayElement.contains(n)}))}},{key:"writeValue",value:function(e){var t=this;Promise.resolve(null).then(function(){return t._setTriggerValue(e)})}},{key:"registerOnChange",value:function(e){this._onChange=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this._element.nativeElement.disabled=e}},{key:"_handleKeydown",value:function(e){var t=e.keyCode;if(27===t&&!hp(e)&&e.preventDefault(),this.activeOption&&13===t&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),e.preventDefault();else if(this.autocomplete){var n=this.autocomplete._keyManager.activeItem,i=38===t||40===t;this.panelOpen||9===t?this.autocomplete._keyManager.onKeydown(e):i&&this._canOpen()&&this.openPanel(),(i||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}},{key:"_handleInput",value:function(e){var t=e.target,n=t.value;"number"===t.type&&(n=""==n?null:parseFloat(n)),this._previousValue!==n&&(this._previousValue=n,this._onChange(n),this._canOpen()&&this._document.activeElement===e.target&&this.openPanel())}},{key:"_handleFocus",value:function(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}},{key:"_floatLabel",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this._formField&&"auto"===this._formField.floatLabel&&(e?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}},{key:"_resetLabel",value:function(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}},{key:"_subscribeToClosingActions",value:function(){var e=this;return Ee(this._zone.onStable.pipe(op(1)),this.autocomplete.options.changes.pipe(iv(function(){return e._positionStrategy.reapplyLastPosition()}),Uz(0))).pipe(df(function(){var t=e.panelOpen;return e._resetActiveItem(),e.autocomplete._setVisibility(),e.panelOpen&&(e._overlayRef.updatePosition(),t!==e.panelOpen&&e.autocomplete.opened.emit()),e.panelClosingActions}),op(1)).subscribe(function(t){return e._setValueAndClose(t)})}},{key:"_destroyPanel",value:function(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}},{key:"_setTriggerValue",value:function(e){var t=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(e):e,n=null!=t?t:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n,this._previousValue=n}},{key:"_setValueAndClose",value:function(e){e&&e.source&&(this._clearPreviousSelectedOption(e.source),this._setTriggerValue(e.source.value),this._onChange(e.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(e.source)),this.closePanel()}},{key:"_clearPreviousSelectedOption",value:function(e){this.autocomplete.options.forEach(function(t){t!==e&&t.selected&&t.deselect()})}},{key:"_attachOverlay",value:function(){var e,t=this,n=this._overlayRef;n?(this._positionStrategy.setOrigin(this._getConnectedElement()),n.updateSize({width:this._getPanelWidth()})):(this._portal=new $f(this.autocomplete.template,this._viewContainerRef,{id:null===(e=this._formField)||void 0===e?void 0:e.getLabelId()}),n=this._overlay.create(this._getOverlayConfig()),this._overlayRef=n,n.keydownEvents().subscribe(function(e){(27===e.keyCode&&!hp(e)||38===e.keyCode&&hp(e,"altKey"))&&(t._closeKeyEventStream.next(),t._resetActiveItem(),e.stopPropagation(),e.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(function(){t.panelOpen&&n&&n.updateSize({width:t._getPanelWidth()})})),n&&!n.hasAttached()&&(n.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());var i=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&i!==this.panelOpen&&this.autocomplete.opened.emit()}},{key:"_getOverlayConfig",value:function(){var e;return new _p({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(e=this._defaults)||void 0===e?void 0:e.overlayPanelClass})}},{key:"_getOverlayPosition",value:function(){var e=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(e),this._positionStrategy=e,e}},{key:"_setStrategyPositions",value:function(e){var t,n=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],i=this._aboveClass,r=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:i},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:i}];t="above"===this.position?r:"below"===this.position?n:[].concat(n,r),e.withPositions(t)}},{key:"_getConnectedElement",value:function(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}},{key:"_getPanelWidth",value:function(){return this.autocomplete.panelWidth||this._getHostWidth()}},{key:"_getHostWidth",value:function(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}},{key:"_resetActiveItem",value:function(){var e=this.autocomplete;e.autoActiveFirstOption?e._keyManager.setFirstItemActive():e._keyManager.setActiveItem(-1)}},{key:"_canOpen",value:function(){var e=this._element.nativeElement;return!e.readOnly&&!e.disabled&&!this._autocompleteDisabled}},{key:"_getWindow",value:function(){var e;return(null===(e=this._document)||void 0===e?void 0:e.defaultView)||window}},{key:"_scrollToOption",value:function(e){var t=this.autocomplete,n=mb(e,t.options,t.optionGroups);if(0===e&&1===n)t._setScrollTop(0);else if(t.panel){var i=t.options.toArray()[e];if(i){var r=i._getHostElement(),o=yb(r.offsetTop,r.offsetHeight,t._getScrollTop(),t.panel.nativeElement.offsetHeight);t._setScrollTop(o)}}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Up),Ss(Pc),Ss(Bl),Ss(_c),Ss(tU),Ss(Vf,8),Ss(Bz,9),Ss(hh,8),Ss(Wf),Ss(Zz,8))},e.\u0275dir=Mt({type:e,inputs:{position:["matAutocompletePosition","position"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"],autocomplete:["matAutocomplete","autocomplete"],connectedTo:["matAutocompleteConnectedTo","connectedTo"]},features:[Ht]}),e}(),oU=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._aboveClass="mat-autocomplete-panel-above",e}return n}(rU);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(e,t){1&e&&js("focusin",function(){return t._handleFocus()})("blur",function(){return t._onTouched()})("input",function(e){return t._handleInput(e)})("keydown",function(e){return t._handleKeydown(e)}),2&e&&bs("autocomplete",t.autocompleteAttribute)("role",t.autocompleteDisabled?null:"combobox")("aria-autocomplete",t.autocompleteDisabled?null:"list")("aria-activedescendant",t.panelOpen&&t.activeOption?t.activeOption.id:null)("aria-expanded",t.autocompleteDisabled?null:t.panelOpen.toString())("aria-owns",t.autocompleteDisabled||!t.panelOpen||null==t.autocomplete?null:t.autocomplete.id)("aria-haspopup",!t.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[Uu([iU]),as]}),t}(),aU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[nU],imports:[[Yp,bb,Gy,Yh],qf,bb,Gy]}),e}(),sU=Nf({passive:!0}),uU=function(){var e=function(){function e(t,n){m(this,e),this._platform=t,this._ngZone=n,this._monitoredElements=new Map}return b(e,[{key:"monitor",value:function(e){var t=this;if(!this._platform.isBrowser)return gf;var n=Dd(e),i=this._monitoredElements.get(n);if(i)return i.subject;var r=new re,o="cdk-text-field-autofilled",a=function(e){"cdk-text-field-autofill-start"!==e.animationName||n.classList.contains(o)?"cdk-text-field-autofill-end"===e.animationName&&n.classList.contains(o)&&(n.classList.remove(o),t._ngZone.run(function(){return r.next({target:e.target,isAutofilled:!1})})):(n.classList.add(o),t._ngZone.run(function(){return r.next({target:e.target,isAutofilled:!0})}))};return this._ngZone.runOutsideAngular(function(){n.addEventListener("animationstart",a,sU),n.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(n,{subject:r,unlisten:function(){n.removeEventListener("animationstart",a,sU)}}),r}},{key:"stopMonitoring",value:function(e){var t=Dd(e),n=this._monitoredElements.get(t);n&&(n.unlisten(),n.subject.complete(),t.classList.remove("cdk-text-field-autofill-monitored"),t.classList.remove("cdk-text-field-autofilled"),this._monitoredElements.delete(t))}},{key:"ngOnDestroy",value:function(){var e=this;this._monitoredElements.forEach(function(t,n){return e.stopMonitoring(n)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Mf),Ki(Bl))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Mf),Ki(Bl))},token:e,providedIn:"root"}),e}(),cU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[If]]}),e}(),lU=new Pi("MAT_INPUT_VALUE_ACCESSOR"),hU=["button","checkbox","file","hidden","image","radio","range","reset","submit"],dU=0,fU=Ky(function(){return function e(t,n,i,r){m(this,e),this._defaultErrorStateMatcher=t,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}}()),pU=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,c,l,h){var d;m(this,n),(d=t.call(this,s,o,a,r))._elementRef=e,d._platform=i,d._autofillMonitor=c,d._formField=h,d._uid="mat-input-"+dU++,d.focused=!1,d.stateChanges=new re,d.controlType="mat-input",d.autofilled=!1,d._disabled=!1,d._required=!1,d._type="text",d._readonly=!1,d._neverEmptyInputTypes=["date","datetime","datetime-local","month","time","week"].filter(function(e){return Df().has(e)});var f=d._elementRef.nativeElement,p=f.nodeName.toLowerCase();return d._inputValueAccessor=u||f,d._previousNativeValue=d.value,d.id=d.id,i.IOS&&l.runOutsideAngular(function(){e.nativeElement.addEventListener("keyup",function(e){var t=e.target;!t.value&&0===t.selectionStart&&0===t.selectionEnd&&(t.setSelectionRange(1,1),t.setSelectionRange(0,0))})}),d._isServer=!d._platform.isBrowser,d._isNativeSelect="select"===p,d._isTextarea="textarea"===p,d._isInFormField=!!h,d._isNativeSelect&&(d.controlType=f.multiple?"mat-native-select-multiple":"mat-native-select"),d}return b(n,[{key:"disabled",get:function(){return this.ngControl&&null!==this.ngControl.disabled?this.ngControl.disabled:this._disabled},set:function(e){this._disabled=Pd(e),this.focused&&(this.focused=!1,this.stateChanges.next())}},{key:"id",get:function(){return this._id},set:function(e){this._id=e||this._uid}},{key:"required",get:function(){return this._required},set:function(e){this._required=Pd(e)}},{key:"type",get:function(){return this._type},set:function(e){this._type=e||"text",this._validateType(),!this._isTextarea&&Df().has(this._type)&&(this._elementRef.nativeElement.type=this._type)}},{key:"value",get:function(){return this._inputValueAccessor.value},set:function(e){e!==this.value&&(this._inputValueAccessor.value=e,this.stateChanges.next())}},{key:"readonly",get:function(){return this._readonly},set:function(e){this._readonly=Pd(e)}},{key:"ngAfterViewInit",value:function(){var e=this;this._platform.isBrowser&&this._autofillMonitor.monitor(this._elementRef.nativeElement).subscribe(function(t){e.autofilled=t.isAutofilled,e.stateChanges.next()})}},{key:"ngOnChanges",value:function(){this.stateChanges.next()}},{key:"ngOnDestroy",value:function(){this.stateChanges.complete(),this._platform.isBrowser&&this._autofillMonitor.stopMonitoring(this._elementRef.nativeElement)}},{key:"ngDoCheck",value:function(){this.ngControl&&this.updateErrorState(),this._dirtyCheckNativeValue(),this._dirtyCheckPlaceholder()}},{key:"focus",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_focusChanged",value:function(e){e!==this.focused&&(this.focused=e,this.stateChanges.next())}},{key:"_onInput",value:function(){}},{key:"_dirtyCheckPlaceholder",value:function(){var e,t,n=(null===(t=null===(e=this._formField)||void 0===e?void 0:e._hideControlPlaceholder)||void 0===t?void 0:t.call(e))?null:this.placeholder;if(n!==this._previousPlaceholder){var i=this._elementRef.nativeElement;this._previousPlaceholder=n,n?i.setAttribute("placeholder",n):i.removeAttribute("placeholder")}}},{key:"_dirtyCheckNativeValue",value:function(){var e=this._elementRef.nativeElement.value;this._previousNativeValue!==e&&(this._previousNativeValue=e,this.stateChanges.next())}},{key:"_validateType",value:function(){hU.indexOf(this._type)}},{key:"_isNeverEmpty",value:function(){return this._neverEmptyInputTypes.indexOf(this._type)>-1}},{key:"_isBadInput",value:function(){var e=this._elementRef.nativeElement.validity;return e&&e.badInput}},{key:"empty",get:function(){return!(this._isNeverEmpty()||this._elementRef.nativeElement.value||this._isBadInput()||this.autofilled)}},{key:"shouldLabelFloat",get:function(){if(this._isNativeSelect){var e=this._elementRef.nativeElement,t=e.options[0];return this.focused||e.multiple||!this.empty||!!(e.selectedIndex>-1&&t&&t.label)}return this.focused||!this.empty}},{key:"setDescribedByIds",value:function(e){e.length?this._elementRef.nativeElement.setAttribute("aria-describedby",e.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}},{key:"onContainerClick",value:function(){this.focused||this.focus()}}]),n}(fU);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Mf),Ss(SV,10),Ss(ZV,8),Ss(oz,8),Ss($y),Ss(lU,10),Ss(uU),Ss(Bl),Ss(Bz,8))},e.\u0275dir=Mt({type:e,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(e,t){1&e&&js("focus",function(){return t._focusChanged(!0)})("blur",function(){return t._focusChanged(!1)})("input",function(){return t._onInput()}),2&e&&(Cu("disabled",t.disabled)("required",t.required),bs("id",t.id)("data-placeholder",t.placeholder)("readonly",t.readonly&&!t._isNativeSelect||null)("aria-invalid",t.empty&&t.required?null:t.errorState)("aria-required",t.required),au("mat-input-server",t._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[Uu([{provide:Az,useExisting:e}]),as,Ht]}),e}(),vU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[$y],imports:[[cU,zz,Gy],cU,zz]}),e}();function gU(){for(var e=arguments.length,t=new Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:this.value,t=new EU;return t.source=this,t.value=e,t}},{key:"_calculatePercentage",value:function(e){return((e||0)-this.min)/(this.max-this.min)}},{key:"_calculateValue",value:function(e){return this.min+e*(this.max-this.min)}},{key:"_clamp",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;return Math.max(t,Math.min(e,n))}},{key:"_getSliderDimensions",value:function(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}},{key:"_focusHostElement",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_blurHostElement",value:function(){this._elementRef.nativeElement.blur()}},{key:"writeValue",value:function(e){this.value=e}},{key:"registerOnChange",value:function(e){this._controlValueAccessorChangeFn=e}},{key:"registerOnTouched",value:function(e){this.onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e}}]),n}(CU);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Gv),Ss(_c),Ss(Vf,8),Oi("tabindex"),Ss(Bl),Ss(hh),Ss(Dy,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-slider"]],viewQuery:function(e,t){var n;(1&e&&ll(kU,5),2&e)&&(cl(n=dl())&&(t._sliderWrapper=n.first))},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(e,t){1&e&&js("focus",function(){return t._onFocus()})("blur",function(){return t._onBlur()})("keydown",function(e){return t._onKeydown(e)})("keyup",function(){return t._onKeyup()})("mouseenter",function(){return t._onMouseenter()})("selectstart",function(e){return e.preventDefault()}),2&e&&(Cu("tabIndex",t.tabIndex),bs("aria-disabled",t.disabled)("aria-valuemax",t.max)("aria-valuemin",t.min)("aria-valuenow",t.value)("aria-valuetext",null==t.valueText?t.displayValue:t.valueText)("aria-orientation",t.vertical?"vertical":"horizontal"),au("mat-slider-disabled",t.disabled)("mat-slider-has-ticks",t.tickInterval)("mat-slider-horizontal",!t.vertical)("mat-slider-axis-inverted",t._shouldInvertAxis())("mat-slider-invert-mouse-coords",t._shouldInvertMouseCoords())("mat-slider-sliding",t._isSliding)("mat-slider-thumb-label-showing",t.thumbLabel)("mat-slider-vertical",t.vertical)("mat-slider-min-value",t._isMinValue())("mat-slider-hide-last-tick",t.disabled||t._isMinValue()&&t._getThumbGap()&&t._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",vertical:"vertical",displayWith:"displayWith",valueText:"valueText"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[Uu([SU]),as],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(e,t){1&e&&(Os(0,"div",0,1),Os(2,"div",2),As(3,"div",3),As(4,"div",4),Ts(),Os(5,"div",5),As(6,"div",6),Ts(),Os(7,"div",7),As(8,"div",8),As(9,"div",9),Os(10,"div",10),Os(11,"span",11),wu(12),Ts(),Ts(),Ts(),Ts()),2&e&&(Wo(3),Es("ngStyle",t._getTrackBackgroundStyles()),Wo(1),Es("ngStyle",t._getTrackFillStyles()),Wo(1),Es("ngStyle",t._getTicksContainerStyles()),Wo(1),Es("ngStyle",t._getTicksStyles()),Wo(1),Es("ngStyle",t._getThumbContainerStyles()),Wo(5),ku(t.displayValue))},directives:[Uh],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),e}();function TU(e){return"t"===e.type[0]}function AU(e,t){var n;return(n=TU(e)?"number"==typeof t?PU(e.touches,t)||PU(e.changedTouches,t):e.touches[0]||e.changedTouches[0]:e)?{x:n.clientX,y:n.clientY}:void 0}function PU(e,t){for(var n=0;n enter",eg("150ms cubic-bezier(0, 0, 0.2, 1)",ng({transform:"none",opacity:1}))),rg("* => void, * => exit",eg("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",ng({opacity:0})))])},NU=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s){var u;return m(this,n),(u=t.call(this))._elementRef=e,u._focusTrapFactory=i,u._changeDetectorRef=r,u._config=a,u._focusMonitor=s,u._animationStateChanged=new Qc,u._elementFocusedBeforeDialogWasOpened=null,u._closeInteractionType=null,u.attachDomPortal=function(e){return u._portalOutlet.hasAttached(),u._portalOutlet.attachDomPortal(e)},u._ariaLabelledBy=a.ariaLabelledBy||null,u._document=o,u}return b(n,[{key:"_initializeWithAttachedContent",value:function(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement(),this._focusDialogContainer()}},{key:"attachComponentPortal",value:function(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(e)}},{key:"attachTemplatePortal",value:function(e){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(e)}},{key:"_recaptureFocus",value:function(){this._containsFocus()||(!this._config.autoFocus||!this._focusTrap.focusInitialElement())&&this._elementRef.nativeElement.focus()}},{key:"_trapFocus",value:function(){this._config.autoFocus?this._focusTrap.focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()}},{key:"_restoreFocus",value:function(){var e=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&e&&"function"==typeof e.focus){var t=jf(),n=this._elementRef.nativeElement;(!t||t===this._document.body||t===n||n.contains(t))&&(this._focusMonitor?(this._focusMonitor.focusVia(e,this._closeInteractionType),this._closeInteractionType=null):e.focus())}this._focusTrap&&this._focusTrap.destroy()}},{key:"_setupFocusTrap",value:function(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}},{key:"_capturePreviouslyFocusedElement",value:function(){this._document&&(this._elementFocusedBeforeDialogWasOpened=jf())}},{key:"_focusDialogContainer",value:function(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}},{key:"_containsFocus",value:function(){var e=this._elementRef.nativeElement,t=jf();return e===t||e.contains(t)}}]),n}(Zf);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Iv),Ss(_c),Ss(hh,8),Ss(RU),Ss(Gv))},e.\u0275dir=Mt({type:e,viewQuery:function(e,t){var n;(1&e&&ll(np,7),2&e)&&(cl(n=dl())&&(t._portalOutlet=n.first))},features:[as]}),e}(),LU=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments))._state="enter",e}return b(n,[{key:"_onAnimationDone",value:function(e){var t=e.toState,n=e.totalTime;"enter"===t?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:n})):"exit"===t&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:n}))}},{key:"_onAnimationStart",value:function(e){var t=e.toState,n=e.totalTime;"enter"===t?this._animationStateChanged.next({state:"opening",totalTime:n}):("exit"===t||"void"===t)&&this._animationStateChanged.next({state:"closing",totalTime:n})}},{key:"_startExitAnimation",value:function(){this._state="exit",this._changeDetectorRef.markForCheck()}}]),n}(NU);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275cmp=Et({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(e,t){1&e&&Fs("@dialogContainer.start",function(e){return t._onAnimationStart(e)})("@dialogContainer.done",function(e){return t._onAnimationDone(e)}),2&e&&(Cu("id",t._id),bs("role",t._config.role)("aria-labelledby",t._config.ariaLabel?null:t._ariaLabelledBy)("aria-label",t._config.ariaLabel)("aria-describedby",t._config.ariaDescribedBy||null),Ou("@dialogContainer",t._state))},features:[as],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(e,t){1&e&&ks(0,IU,0,0,"ng-template",0)},directives:[np],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[DU.dialogContainer]}}),t}(),jU=0,FU=function(){function e(t,n){var i=this,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"mat-dialog-"+jU++;m(this,e),this._overlayRef=t,this._containerInstance=n,this.id=r,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new re,this._afterClosed=new re,this._beforeClosed=new re,this._state=0,n._id=r,n._animationStateChanged.pipe(rf(function(e){return"opened"===e.state}),op(1)).subscribe(function(){i._afterOpened.next(),i._afterOpened.complete()}),n._animationStateChanged.pipe(rf(function(e){return"closed"===e.state}),op(1)).subscribe(function(){clearTimeout(i._closeFallbackTimeout),i._finishDialogClose()}),t.detachments().subscribe(function(){i._beforeClosed.next(i._result),i._beforeClosed.complete(),i._afterClosed.next(i._result),i._afterClosed.complete(),i.componentInstance=null,i._overlayRef.dispose()}),t.keydownEvents().pipe(rf(function(e){return 27===e.keyCode&&!i.disableClose&&!hp(e)})).subscribe(function(e){e.preventDefault(),BU(i,"keyboard")}),t.backdropClick().subscribe(function(){i.disableClose?i._containerInstance._recaptureFocus():BU(i,"mouse")})}return b(e,[{key:"close",value:function(e){var t=this;this._result=e,this._containerInstance._animationStateChanged.pipe(rf(function(e){return"closing"===e.state}),op(1)).subscribe(function(n){t._beforeClosed.next(e),t._beforeClosed.complete(),t._overlayRef.detachBackdrop(),t._closeFallbackTimeout=setTimeout(function(){return t._finishDialogClose()},n.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}},{key:"afterOpened",value:function(){return this._afterOpened}},{key:"afterClosed",value:function(){return this._afterClosed}},{key:"beforeClosed",value:function(){return this._beforeClosed}},{key:"backdropClick",value:function(){return this._overlayRef.backdropClick()}},{key:"keydownEvents",value:function(){return this._overlayRef.keydownEvents()}},{key:"updatePosition",value:function(e){var t=this._getPositionStrategy();return e&&(e.left||e.right)?e.left?t.left(e.left):t.right(e.right):t.centerHorizontally(),e&&(e.top||e.bottom)?e.top?t.top(e.top):t.bottom(e.bottom):t.centerVertically(),this._overlayRef.updatePosition(),this}},{key:"updateSize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return this._overlayRef.updateSize({width:e,height:t}),this._overlayRef.updatePosition(),this}},{key:"addPanelClass",value:function(e){return this._overlayRef.addPanelClass(e),this}},{key:"removePanelClass",value:function(e){return this._overlayRef.removePanelClass(e),this}},{key:"getState",value:function(){return this._state}},{key:"_finishDialogClose",value:function(){this._state=2,this._overlayRef.dispose()}},{key:"_getPositionStrategy",value:function(){return this._overlayRef.getConfig().positionStrategy}}]),e}();function BU(e,t,n){return void 0!==e._containerInstance&&(e._containerInstance._closeInteractionType=t),e.close(n)}var VU=new Pi("MatDialogData"),zU=new Pi("mat-dialog-default-options"),UU=new Pi("mat-dialog-scroll-strategy"),HU={provide:UU,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.block()}}},GU=function(){var e=function(){function e(t,n,i,r,o,a,s,u,c){var l=this;m(this,e),this._overlay=t,this._injector=n,this._defaultOptions=i,this._parentDialog=r,this._overlayContainer=o,this._dialogRefConstructor=s,this._dialogContainerType=u,this._dialogDataToken=c,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new re,this._afterOpenedAtThisLevel=new re,this._ariaHiddenElements=new Map,this.afterAllClosed=cz(function(){return l.openDialogs.length?l._getAfterAllClosed():l._getAfterAllClosed().pipe(hf(void 0))}),this._scrollStrategy=a}return b(e,[{key:"openDialogs",get:function(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}},{key:"afterOpened",get:function(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}},{key:"_getAfterAllClosed",value:function(){var e=this._parentDialog;return e?e._getAfterAllClosed():this._afterAllClosedAtThisLevel}},{key:"open",value:function(e,t){var n=this;(t=function(e,t){return Object.assign(Object.assign({},t),e)}(t,this._defaultOptions||new RU)).id&&this.getDialogById(t.id);var i=this._createOverlay(t),r=this._attachDialogContainer(i,t),o=this._attachDialogContent(e,r,i,t);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(o),o.afterClosed().subscribe(function(){return n._removeOpenDialog(o)}),this.afterOpened.next(o),r._initializeWithAttachedContent(),o}},{key:"closeAll",value:function(){this._closeDialogs(this.openDialogs)}},{key:"getDialogById",value:function(e){return this.openDialogs.find(function(t){return t.id===e})}},{key:"ngOnDestroy",value:function(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}},{key:"_createOverlay",value:function(e){var t=this._getOverlayConfig(e);return this._overlay.create(t)}},{key:"_getOverlayConfig",value:function(e){var t=new _p({positionStrategy:this._overlay.position().global(),scrollStrategy:e.scrollStrategy||this._scrollStrategy(),panelClass:e.panelClass,hasBackdrop:e.hasBackdrop,direction:e.direction,minWidth:e.minWidth,minHeight:e.minHeight,maxWidth:e.maxWidth,maxHeight:e.maxHeight,disposeOnNavigation:e.closeOnNavigation});return e.backdropClass&&(t.backdropClass=e.backdropClass),t}},{key:"_attachDialogContainer",value:function(e,t){var n=rs.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:RU,useValue:t}]}),i=new Kf(this._dialogContainerType,t.viewContainerRef,n,t.componentFactoryResolver);return e.attach(i).instance}},{key:"_attachDialogContent",value:function(e,t,n,i){var r=new this._dialogRefConstructor(n,t,i.id);if(e instanceof Ec)t.attachTemplatePortal(new $f(e,null,{$implicit:i.data,dialogRef:r}));else{var o=this._createInjector(i,r,t),a=t.attachComponentPortal(new Kf(e,i.viewContainerRef,o));r.componentInstance=a.instance}return r.updateSize(i.width,i.height).updatePosition(i.position),r}},{key:"_createInjector",value:function(e,t,n){var i=e&&e.viewContainerRef&&e.viewContainerRef.injector,r=[{provide:this._dialogContainerType,useValue:n},{provide:this._dialogDataToken,useValue:e.data},{provide:this._dialogRefConstructor,useValue:t}];return e.direction&&(!i||!i.get(Vf,null,rt.Optional))&&r.push({provide:Vf,useValue:{value:e.direction,change:Nd()}}),rs.create({parent:i||this._injector,providers:r})}},{key:"_removeOpenDialog",value:function(e){var t=this.openDialogs.indexOf(e);t>-1&&(this.openDialogs.splice(t,1),this.openDialogs.length||(this._ariaHiddenElements.forEach(function(e,t){e?t.setAttribute("aria-hidden",e):t.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}},{key:"_hideNonDialogContentFromAssistiveTechnology",value:function(){var e=this._overlayContainer.getContainerElement();if(e.parentElement)for(var t=e.parentElement.children,n=t.length-1;n>-1;n--){var i=t[n];i!==e&&"SCRIPT"!==i.nodeName&&"STYLE"!==i.nodeName&&!i.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}}},{key:"_closeDialogs",value:function(e){for(var t=e.length;t--;)e[t].close()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(rs),Ss(void 0),Ss(void 0),Ss(Tp),Ss(void 0),Ss(Mi),Ss(Mi),Ss(Pi))},e.\u0275dir=Mt({type:e}),e}(),WU=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u){return m(this,n),t.call(this,e,i,o,s,u,a,FU,LU,VU)}return n}(GU);return e.\u0275fac=function(t){return new(t||e)(Ki(Up),Ki(rs),Ki(Sh,8),Ki(zU,8),Ki(UU),Ki(e,12),Ki(Tp))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),qU=0,XU=function(){var e=function(){function e(t,n,i){m(this,e),this._dialogRef=t,this._elementRef=n,this._dialog=i,this.id="mat-dialog-title-"+qU++}return b(e,[{key:"ngOnInit",value:function(){var e=this;this._dialogRef||(this._dialogRef=function(e,t){for(var n=e.nativeElement.parentElement;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?t.find(function(e){return e.id===n.id}):null}(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(function(){var t=e._dialogRef._containerInstance;t&&!t._ariaLabelledBy&&(t._ariaLabelledBy=e.id)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(FU,8),Ss(Yu),Ss(WU))},e.\u0275dir=Mt({type:e,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(e,t){2&e&&Cu("id",t.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),e}(),YU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),e}(),KU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[WU,HU],imports:[[Yp,ip,Gy],Gy]}),e}(),$U=new Pi("CdkAccordion"),QU=0,ZU=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this.accordion=t,this._changeDetectorRef=n,this._expansionDispatcher=i,this._openCloseAllSubscription=G.EMPTY,this.closed=new Qc,this.opened=new Qc,this.destroyed=new Qc,this.expandedChange=new Qc,this.id="cdk-accordion-child-"+QU++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=function(){},this._removeUniqueSelectionListener=i.listen(function(e,t){r.accordion&&!r.accordion.multi&&r.accordion.id===t&&r.id!==e&&(r.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}return b(e,[{key:"expanded",get:function(){return this._expanded},set:function(e){e=Pd(e),this._expanded!==e&&(this._expanded=e,this.expandedChange.emit(e),e?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(e){this._disabled=Pd(e)}},{key:"ngOnDestroy",value:function(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}},{key:"toggle",value:function(){this.disabled||(this.expanded=!this.expanded)}},{key:"close",value:function(){this.disabled||(this.expanded=!1)}},{key:"open",value:function(){this.disabled||(this.expanded=!0)}},{key:"_subscribeToOpenCloseAllActions",value:function(){var e=this;return this.accordion._openCloseAllActions.subscribe(function(t){e.disabled||(e.expanded=t)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss($U,12),Ss(_c),Ss(Hf))},e.\u0275dir=Mt({type:e,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[Uu([{provide:$U,useValue:void 0}])]}),e}(),JU=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),eH=["body"];function tH(e,t){}var nH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],iH=["mat-expansion-panel-header","*","mat-action-row"];function rH(e,t){1&e&&As(0,"span",2),2&e&&Es("@indicatorRotate",Us()._getExpandedState())}var oH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],aH=["mat-panel-title","mat-panel-description","*"],sH=new Pi("MAT_ACCORDION"),uH="225ms cubic-bezier(0.4,0.0,0.2,1)",cH={indicatorRotate:Jv("indicatorRotate",[ig("collapsed, void",ng({transform:"rotate(0deg)"})),ig("expanded",ng({transform:"rotate(180deg)"})),rg("expanded <=> collapsed, void => collapsed",eg(uH))]),bodyExpansion:Jv("bodyExpansion",[ig("collapsed, void",ng({height:"0px",visibility:"hidden"})),ig("expanded",ng({height:"*",visibility:"visible"})),rg("expanded <=> collapsed, void => collapsed",eg(uH))])},lH=function(){var e=function e(t){m(this,e),this._template=t};return e.\u0275fac=function(t){return new(t||e)(Ss(Ec))},e.\u0275dir=Mt({type:e,selectors:[["ng-template","matExpansionPanelContent",""]]}),e}(),hH=0,dH=new Pi("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS"),fH=function(){var t=function(t){a(i,t);var n=s(i);function i(e,t,r,o,a,s,u){var c;return m(this,i),(c=n.call(this,e,t,r))._viewContainerRef=o,c._animationMode=s,c._hideToggle=!1,c.afterExpand=new Qc,c.afterCollapse=new Qc,c._inputChanges=new re,c._headerId="mat-expansion-panel-header-"+hH++,c._bodyAnimationDone=new re,c.accordion=e,c._document=a,c._bodyAnimationDone.pipe(Yd(function(e,t){return e.fromState===t.fromState&&e.toState===t.toState})).subscribe(function(e){"void"!==e.fromState&&("expanded"===e.toState?c.afterExpand.emit():"collapsed"===e.toState&&c.afterCollapse.emit())}),u&&(c.hideToggle=u.hideToggle),c}return b(i,[{key:"hideToggle",get:function(){return this._hideToggle||this.accordion&&this.accordion.hideToggle},set:function(e){this._hideToggle=Pd(e)}},{key:"togglePosition",get:function(){return this._togglePosition||this.accordion&&this.accordion.togglePosition},set:function(e){this._togglePosition=e}},{key:"_hasSpacing",value:function(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}},{key:"_getExpandedState",value:function(){return this.expanded?"expanded":"collapsed"}},{key:"toggle",value:function(){this.expanded=!this.expanded}},{key:"close",value:function(){this.expanded=!1}},{key:"open",value:function(){this.expanded=!0}},{key:"ngAfterContentInit",value:function(){var e=this;this._lazyContent&&this.opened.pipe(hf(null),rf(function(){return e.expanded&&!e._portal}),op(1)).subscribe(function(){e._portal=new $f(e._lazyContent._template,e._viewContainerRef)})}},{key:"ngOnChanges",value:function(e){this._inputChanges.next(e)}},{key:"ngOnDestroy",value:function(){e(p(i.prototype),"ngOnDestroy",this).call(this),this._bodyAnimationDone.complete(),this._inputChanges.complete()}},{key:"_containsFocus",value:function(){if(this._body){var e=this._document.activeElement,t=this._body.nativeElement;return e===t||t.contains(e)}return!1}}]),i}(ZU);return t.\u0275fac=function(e){return new(e||t)(Ss(sH,12),Ss(_c),Ss(Hf),Ss(Pc),Ss(hh),Ss(Dy,8),Ss(dH,8))},t.\u0275cmp=Et({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,lH,5),2&e)&&(cl(i=dl())&&(t._lazyContent=i.first))},viewQuery:function(e,t){var n;(1&e&&ll(eH,5),2&e)&&(cl(n=dl())&&(t._body=n.first))},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(e,t){2&e&&au("mat-expanded",t.expanded)("_mat-animation-noopable","NoopAnimations"===t._animationMode)("mat-expansion-panel-spacing",t._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[Uu([{provide:sH,useValue:void 0}]),as,Ht],ngContentSelectors:iH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(e,t){1&e&&(Gs(nH),Ws(0),Os(1,"div",0,1),js("@bodyExpansion.done",function(e){return t._bodyAnimationDone.next(e)}),Os(3,"div",2),Ws(4,1),ks(5,tH,0,0,"ng-template",3),Ts(),Ws(6,2),Ts()),2&e&&(Wo(1),Es("@bodyExpansion",t._getExpandedState())("id",t.id),bs("aria-labelledby",t._headerId),Wo(4),Es("cdkPortalOutlet",t._portal))},directives:[np],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[cH.bodyExpansion]},changeDetection:0}),t}(),pH=Yy(function e(){m(this,e)}),vH=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u){var c;m(this,n),(c=t.call(this)).panel=e,c._element=i,c._focusMonitor=r,c._changeDetectorRef=o,c._animationMode=s,c._parentChangeSubscription=G.EMPTY;var l=e.accordion?e.accordion._stateChanges.pipe(rf(function(e){return!(!e.hideToggle&&!e.togglePosition)})):gf;return c.tabIndex=parseInt(u||"")||0,c._parentChangeSubscription=Ee(e.opened,e.closed,l,e._inputChanges.pipe(rf(function(e){return!!(e.hideToggle||e.disabled||e.togglePosition)}))).subscribe(function(){return c._changeDetectorRef.markForCheck()}),e.closed.pipe(rf(function(){return e._containsFocus()})).subscribe(function(){return r.focusVia(i,"program")}),a&&(c.expandedHeight=a.expandedHeight,c.collapsedHeight=a.collapsedHeight),c}return b(n,[{key:"disabled",get:function(){return this.panel.disabled}},{key:"_toggle",value:function(){this.disabled||this.panel.toggle()}},{key:"_isExpanded",value:function(){return this.panel.expanded}},{key:"_getExpandedState",value:function(){return this.panel._getExpandedState()}},{key:"_getPanelId",value:function(){return this.panel.id}},{key:"_getTogglePosition",value:function(){return this.panel.togglePosition}},{key:"_showToggle",value:function(){return!this.panel.hideToggle&&!this.panel.disabled}},{key:"_getHeaderHeight",value:function(){var e=this._isExpanded();return e&&this.expandedHeight?this.expandedHeight:!e&&this.collapsedHeight?this.collapsedHeight:null}},{key:"_keydown",value:function(e){switch(e.keyCode){case 32:case 13:hp(e)||(e.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(e))}}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._element,e,t):this._element.nativeElement.focus(t)}},{key:"ngAfterViewInit",value:function(){var e=this;this._focusMonitor.monitor(this._element).subscribe(function(t){t&&e.panel.accordion&&e.panel.accordion._handleHeaderFocus(e)})}},{key:"ngOnDestroy",value:function(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}]),n}(pH);return e.\u0275fac=function(t){return new(t||e)(Ss(fH,1),Ss(Yu),Ss(Gv),Ss(_c),Ss(dH,8),Ss(Dy,8),Oi("tabindex"))},e.\u0275cmp=Et({type:e,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(e,t){1&e&&js("click",function(){return t._toggle()})("keydown",function(e){return t._keydown(e)}),2&e&&(bs("id",t.panel._headerId)("tabindex",t.tabIndex)("aria-controls",t._getPanelId())("aria-expanded",t._isExpanded())("aria-disabled",t.panel.disabled),ou("height",t._getHeaderHeight()),au("mat-expanded",t._isExpanded())("mat-expansion-toggle-indicator-after","after"===t._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===t._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[as],ngContentSelectors:aH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(e,t){1&e&&(Gs(oH),Os(0,"span",0),Ws(1),Ws(2,1),Ws(3,2),Ts(),ks(4,rH,1,1,"span",1)),2&e&&(Wo(4),Es("ngIf",t._showToggle()))},directives:[Nh],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[cH.indicatorRotate]},changeDetection:0}),e}(),gH=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Gy,JU,ip]]}),e}(),mH=r(5478);Object.create(Error.prototype);var yH=["*"],bH=(function(e){e.LineHighlight="line-highlight",e.LineNumbers="line-numbers"}(bH||(bH={})),bH),_H=function e(){m(this,e)},wH=new Pi("SECURITY_CONTEXT"),kH=function(){var e=function(){function e(t,n,i,r,o){m(this,e),this.platform=t,this.securityContext=n,this.http=i,this.sanitizer=o,this.initialMarkedOptions={renderer:new mH.Renderer},this.options=r}return b(e,[{key:"options",get:function(){return this._options},set:function(e){this._options=Object.assign(Object.assign({},this.initialMarkedOptions),e)}},{key:"renderer",get:function(){return this.options.renderer},set:function(e){this.options.renderer=e}},{key:"compile",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:this.options,r=this.trimIndentation(e),o=t?this.decodeHtml(r):r,a=n?this.renderEmoji(o):o,s=mH.parse(a,i);return this.sanitizer.sanitize(this.securityContext,s)||""}},{key:"getSource",value:function(e){var t=this;if(!this.http)throw new Error("[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information");return this.http.get(e,{responseType:"text"}).pipe(se(function(n){return t.handleExtension(e,n)}))}},{key:"highlight",value:function(e){if($h(this.platform)&&"undefined"!=typeof Prism){e||(e=document);var t=e.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(t,function(e){return e.classList.add("language-none")}),Prism.highlightAllUnder(e)}}},{key:"renderKatex",value:function(e,t){if(!$h(this.platform))return e;if("undefined"==typeof katex||void 0===katex.renderToString)throw new Error("[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information");return e.replace(/\$([^\s][^$]*?[^\s])\$/gm,function(e,n){return katex.renderToString(n,t)})}},{key:"decodeHtml",value:function(e){if(!$h(this.platform))return e;var t=document.createElement("textarea");return t.innerHTML=e,t.value}},{key:"handleExtension",value:function(e,t){var n=e?e.split("?")[0].split(".").splice(-1).join():"";return"md"!==n?"```"+n+"\n"+t+"\n```":t}},{key:"renderEmoji",value:function(e){if(!$h(this.platform))return e;if("undefined"==typeof joypixels||void 0===joypixels.shortnameToUnicode)throw new Error("[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information");return joypixels.shortnameToUnicode(e)}},{key:"trimIndentation",value:function(e){return e?e.split("\n").map(function(e){var n=t;return e.length>0&&(n=isNaN(n)?e.search(/\S|$/):Math.min(e.search(/\S|$/),n)),isNaN(t)&&(t=n),n?e.substring(n):e}).join("\n"):"";var t}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(xl),Ki(wH),Ki(Yb,8),Ki(_H,8),Ki(Ed))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),xH=function(){var e=function(){function e(t,n){m(this,e),this.element=t,this.markdownService=n,this.error=new Qc,this.load=new Qc,this.ready=new Qc,this._emoji=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1}return b(e,[{key:"emoji",get:function(){return this._emoji},set:function(e){this._emoji=this.coerceBooleanProperty(e)}},{key:"katex",get:function(){return this._katex},set:function(e){this._katex=this.coerceBooleanProperty(e)}},{key:"lineHighlight",get:function(){return this._lineHighlight},set:function(e){this._lineHighlight=this.coerceBooleanProperty(e)}},{key:"lineNumbers",get:function(){return this._lineNumbers},set:function(e){this._lineNumbers=this.coerceBooleanProperty(e)}},{key:"ngOnChanges",value:function(){null==this.data?null==this.src||this.handleSrc():this.handleData()}},{key:"ngAfterViewInit",value:function(){!this.data&&!this.src&&this.handleTransclusion()}},{key:"render",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.markdownService.compile(e,t,this.emoji);n=this.katex?this.markdownService.renderKatex(n,this.katexOptions):n,this.element.nativeElement.innerHTML=n,this.handlePlugins(),this.markdownService.highlight(this.element.nativeElement),this.ready.emit()}},{key:"coerceBooleanProperty",value:function(e){return null!=e&&"false"!="".concat(String(e))}},{key:"handleData",value:function(){this.render(this.data)}},{key:"handleSrc",value:function(){var e=this;this.markdownService.getSource(this.src).subscribe(function(t){e.render(t),e.load.emit(t)},function(t){return e.error.emit(t)})}},{key:"handleTransclusion",value:function(){this.render(this.element.nativeElement.innerHTML,!0)}},{key:"handlePlugins",value:function(){this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,bH.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}},{key:"setPluginClass",value:function(e,t){for(var n=e.querySelectorAll("pre"),i=0;i0){var r=i.indexOf(n);-1!==r&&i.splice(r,1)}}},{key:"notifyComplete",value:function(){}},{key:"_next",value:function(e){if(0===this.toRespond.length){var t=[e].concat(v(this.values));this.project?this._tryProject(t):this.destination.next(t)}}},{key:"_tryProject",value:function(e){var t;try{t=this.project.apply(this,e)}catch(n){return void this.destination.error(n)}this.destination.next(t)}}]),n}(I_),AH=function(){function e(t,n){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2];m(this,e),this.accumulator=t,this.seed=n,this.hasSeed=i}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new PH(e,this.accumulator,this.seed,this.hasSeed))}}]),e}(),PH=function(e){a(n,e);var t=s(n);function n(e,i,r,o){var a;return m(this,n),(a=t.call(this,e)).accumulator=i,a._seed=r,a.hasSeed=o,a.index=0,a}return b(n,[{key:"seed",get:function(){return this._seed},set:function(e){this.hasSeed=!0,this._seed=e}},{key:"_next",value:function(e){if(this.hasSeed)return this._tryNext(e);this.seed=e,this.destination.next(e)}},{key:"_tryNext",value:function(e){var t,n=this.index++;try{t=this.accumulator(this.seed,e,n)}catch(i){this.destination.error(i)}this.seed=t,this.destination.next(t)}}]),n}(X),MH=function(){function e(t){m(this,e),this.predicate=t}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new IH(e,this.predicate))}}]),e}(),IH=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).predicate=i,r.skipping=!0,r.index=0,r}return b(n,[{key:"_next",value:function(e){var t=this.destination;this.skipping&&this.tryCallPredicate(e),this.skipping||t.next(e)}},{key:"tryCallPredicate",value:function(e){try{var t=this.predicate(e,this.index++);this.skipping=Boolean(t)}catch(t){this.destination.error(t)}}}]),n}(X),RH=["youtubeContainer"],DH=function(){var e=function(){function e(t,n){m(this,e),this._ngZone=t,this._youtubeContainer=new re,this._destroyed=new re,this._playerChanges=new tv(void 0),this._videoId=new tv(void 0),this._height=new tv(390),this._width=new tv(640),this._startSeconds=new tv(void 0),this._endSeconds=new tv(void 0),this._suggestedQuality=new tv(void 0),this._playerVars=new tv(void 0),this.ready=this._getLazyEmitter("onReady"),this.stateChange=this._getLazyEmitter("onStateChange"),this.error=this._getLazyEmitter("onError"),this.apiChange=this._getLazyEmitter("onApiChange"),this.playbackQualityChange=this._getLazyEmitter("onPlaybackQualityChange"),this.playbackRateChange=this._getLazyEmitter("onPlaybackRateChange"),this._isBrowser=$h(n)}return b(e,[{key:"videoId",get:function(){return this._videoId.value},set:function(e){this._videoId.next(e)}},{key:"height",get:function(){return this._height.value},set:function(e){this._height.next(e||390)}},{key:"width",get:function(){return this._width.value},set:function(e){this._width.next(e||640)}},{key:"startSeconds",set:function(e){this._startSeconds.next(e)}},{key:"endSeconds",set:function(e){this._endSeconds.next(e)}},{key:"suggestedQuality",set:function(e){this._suggestedQuality.next(e)}},{key:"playerVars",get:function(){return this._playerVars.value},set:function(e){this._playerVars.next(e)}},{key:"ngOnInit",value:function(){var e=this;if(this._isBrowser){var n=Nd(!0);if(!window.YT||!window.YT.Player){var i=new re;this._existingApiReadyCallback=window.onYouTubeIframeAPIReady,window.onYouTubeIframeAPIReady=function(){e._existingApiReadyCallback&&e._existingApiReadyCallback(),e._ngZone.run(function(){return i.next(!0)})},n=i.pipe(op(1),hf(!1))}var r=function(e,n,i,r,o,a,s){var u=L_([n,a]).pipe(CH(L_([r,o])),se(function(e){var n=t(e,2),i=n[0],r=n[1],o=t(i,2),a=o[0],s=o[1],u=t(r,2),c=u[0],l=u[1];return a?{videoId:a,playerVars:s,width:c,height:l}:void 0}));return L_([e,u,Nd(s)]).pipe(function(e){return Q(function(){for(var e=arguments.length,t=new Array(e),n=0;n=2&&(n=!0),function(i){return i.lift(new AH(e,t,n))}}(NH,void 0),Yd())}(this._youtubeContainer,this._videoId,n,this._width,this._height,this._playerVars,this._ngZone).pipe(iv(function(t){e._playerChanges.next(t)}),_e(function(e){return e?LH(e)?Nd(e):new J(function(t){var n=!1,i=!1;return e.addEventListener("onReady",function e(r){i=!0,n||(r.target.removeEventListener("onReady",e),t.next(r.target))}),function(){n=!0,i||function(e){LH(e)||e.destroy()}(e)}}).pipe(op(1),hf(void 0)):Nd(void 0)}),sf(this._destroyed),Ie(new re));r.subscribe(function(t){e._player=t,t&&e._pendingPlayerState&&e._initializePlayer(t,e._pendingPlayerState),e._pendingPlayerState=void 0}),function(e,n,i){L_([e,n,i]).subscribe(function(e){var n=t(e,3),i=n[0],r=n[1],o=n[2];return i&&i.setSize(r,o)})}(r,this._width,this._height),function(e,n){L_([e,n]).subscribe(function(e){var n=t(e,2),i=n[0],r=n[1];return i&&r&&i.setPlaybackQuality(r)})}(r,this._suggestedQuality),function(e,n,i,r,o,a){var s=L_([i,r]).pipe(se(function(e){var n=t(e,2);return{startSeconds:n[0],endSeconds:n[1]}})),u=s.pipe(jH(e,function(e){return!!e&&!function(e){var t=e.getPlayerState();return t!==YT.PlayerState.UNSTARTED&&t!==YT.PlayerState.CUED}(e)})),c=n.pipe(jH(e,function(e,t){return!!e&&e.videoId!==t}));Ee(e.pipe(jH(L_([n,s]),function(e,n){var i=t(e,2),r=i[0],o=i[1];return!(!n||r==n.videoId&&!o.startSeconds&&!o.endSeconds)})),c,u).pipe(CH(L_([e,n,s,o])),se(function(e){var n=t(e,2);n[0];return n[1]}),sf(a)).subscribe(function(e){var n=t(e,4),i=n[0],r=n[1],o=n[2],a=n[3];!r||!i||(i.videoId=r,i.cueVideoById(Object.assign({videoId:r,suggestedQuality:a},o)))})}(r,this._videoId,this._startSeconds,this._endSeconds,this._suggestedQuality,this._destroyed),r.connect()}}},{key:"createEventsBoundInZone",value:function(){return{}}},{key:"ngAfterViewInit",value:function(){this._youtubeContainer.next(this.youtubeContainer.nativeElement)}},{key:"ngOnDestroy",value:function(){this._player&&(this._player.destroy(),window.onYouTubeIframeAPIReady=this._existingApiReadyCallback),this._playerChanges.complete(),this._videoId.complete(),this._height.complete(),this._width.complete(),this._startSeconds.complete(),this._endSeconds.complete(),this._suggestedQuality.complete(),this._youtubeContainer.complete(),this._playerVars.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"playVideo",value:function(){this._player?this._player.playVideo():this._getPendingState().playbackState=YT.PlayerState.PLAYING}},{key:"pauseVideo",value:function(){this._player?this._player.pauseVideo():this._getPendingState().playbackState=YT.PlayerState.PAUSED}},{key:"stopVideo",value:function(){this._player?this._player.stopVideo():this._getPendingState().playbackState=YT.PlayerState.CUED}},{key:"seekTo",value:function(e,t){this._player?this._player.seekTo(e,t):this._getPendingState().seek={seconds:e,allowSeekAhead:t}}},{key:"mute",value:function(){this._player?this._player.mute():this._getPendingState().muted=!0}},{key:"unMute",value:function(){this._player?this._player.unMute():this._getPendingState().muted=!1}},{key:"isMuted",value:function(){return this._player?this._player.isMuted():!!this._pendingPlayerState&&!!this._pendingPlayerState.muted}},{key:"setVolume",value:function(e){this._player?this._player.setVolume(e):this._getPendingState().volume=e}},{key:"getVolume",value:function(){return this._player?this._player.getVolume():this._pendingPlayerState&&null!=this._pendingPlayerState.volume?this._pendingPlayerState.volume:0}},{key:"setPlaybackRate",value:function(e){if(this._player)return this._player.setPlaybackRate(e);this._getPendingState().playbackRate=e}},{key:"getPlaybackRate",value:function(){return this._player?this._player.getPlaybackRate():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackRate?this._pendingPlayerState.playbackRate:0}},{key:"getAvailablePlaybackRates",value:function(){return this._player?this._player.getAvailablePlaybackRates():[]}},{key:"getVideoLoadedFraction",value:function(){return this._player?this._player.getVideoLoadedFraction():0}},{key:"getPlayerState",value:function(){if(this._isBrowser&&window.YT)return this._player?this._player.getPlayerState():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackState?this._pendingPlayerState.playbackState:YT.PlayerState.UNSTARTED}},{key:"getCurrentTime",value:function(){return this._player?this._player.getCurrentTime():this._pendingPlayerState&&this._pendingPlayerState.seek?this._pendingPlayerState.seek.seconds:0}},{key:"getPlaybackQuality",value:function(){return this._player?this._player.getPlaybackQuality():"default"}},{key:"getAvailableQualityLevels",value:function(){return this._player?this._player.getAvailableQualityLevels():[]}},{key:"getDuration",value:function(){return this._player?this._player.getDuration():0}},{key:"getVideoUrl",value:function(){return this._player?this._player.getVideoUrl():""}},{key:"getVideoEmbedCode",value:function(){return this._player?this._player.getVideoEmbedCode():""}},{key:"_getPendingState",value:function(){return this._pendingPlayerState||(this._pendingPlayerState={}),this._pendingPlayerState}},{key:"_initializePlayer",value:function(e,t){var n=t.playbackState,i=t.playbackRate,r=t.volume,o=t.muted,a=t.seek;switch(n){case YT.PlayerState.PLAYING:e.playVideo();break;case YT.PlayerState.PAUSED:e.pauseVideo();break;case YT.PlayerState.CUED:e.stopVideo()}null!=i&&e.setPlaybackRate(i),null!=r&&e.setVolume(r),null!=o&&(o?e.mute():e.unMute()),null!=a&&e.seekTo(a.seconds,a.allowSeekAhead)}},{key:"_getLazyEmitter",value:function(e){var t=this;return this._playerChanges.pipe(df(function(t){return t?EH(function(n){t.addEventListener(e,n)},function(n){try{t.removeEventListener&&t.removeEventListener(e,n)}catch(i){}}):Nd()}),function(e){return new J(function(n){return e.subscribe({next:function(e){return t._ngZone.run(function(){return n.next(e)})},error:function(e){return n.error(e)},complete:function(){return n.complete()}})})},sf(this._destroyed))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Bl),Ss(xl))},e.\u0275cmp=Et({type:e,selectors:[["youtube-player"]],viewQuery:function(e,t){var n;(1&e&&ll(RH,5),2&e)&&(cl(n=dl())&&(t.youtubeContainer=n.first))},inputs:{videoId:"videoId",height:"height",width:"width",startSeconds:"startSeconds",endSeconds:"endSeconds",suggestedQuality:"suggestedQuality",playerVars:"playerVars",showBeforeIframeApiLoads:"showBeforeIframeApiLoads"},outputs:{ready:"ready",stateChange:"stateChange",error:"error",apiChange:"apiChange",playbackQualityChange:"playbackQualityChange",playbackRateChange:"playbackRateChange"},decls:2,vars:0,consts:[["youtubeContainer",""]],template:function(e,t){1&e&&As(0,"div",null,0)},encapsulation:2,changeDetection:0}),e}();function NH(e,n){var i=t(n,3),r=i[0],o=i[1],a=i[2];if(e&&o&&e.playerVars!==o.playerVars)e.destroy();else{if(!o)return void(e&&e.destroy());if(e)return e}var s=a.runOutsideAngular(function(){return new YT.Player(r,o)});return s.videoId=o.videoId,s.playerVars=o.playerVars,s}function LH(e){return"getPlayerStatus"in e}function jH(e,n){return Q(CH(e),rf(function(e){var i=t(e,2),r=i[0],o=i[1];return n(o,r)}),se(function(e){return t(e,1)[0]}))}var FH=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}();function BH(e){return!0===e}function VH(e){return null==e}function zH(e){return!VH(e)}function UH(e){return Boolean(e)}function HH(e){return VH(e)?e:JSON.parse(JSON.stringify(e))}var GH=function e(t){var n=t instanceof Date;if("object"!=typeof t||null===t||n)return t;Object.freeze(t);var i="function"==typeof t,r=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(function(n){r.call(t,n)&&(!i||"caller"!==n&&"callee"!==n&&"arguments"!==n)&&null!==t[n]&&("object"==typeof t[n]||"function"==typeof t[n])&&!Object.isFrozen(t[n])&&e(t[n])}),t};function WH(e){return zH(e)&&"object"==typeof e&&function(e){return"[object Object]"===Object.prototype.toString.call(e)}(e)}var qH="NGXS_DATA_META",XH="NGXS_META",YH="NGXS_ARGUMENT_REGISTRY_META",KH=function(){var e=function(){function e(t){var n=this;m(this,e),this.sequence$=new tv(0),this.subscription=null,t&&(this.subscription=t.subscribe(function(){return n.updateSequence()}))}return b(e,[{key:"sequenceValue",get:function(){return this.sequence$.getValue()}},{key:"ngOnDestroy",value:function(){var e;this.sequence$.next(0),null===(e=this.subscription)||void 0===e||e.unsubscribe()}},{key:"updateSequence",value:function(){this.sequence$.next(this.sequenceValue+1)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(WB,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}();function $H(e){return e[qH]}var QH=function(){var e=function e(t,n,i){m(this,e),e.store=t.get(WB),e.ngZone=t.get(Bl),e.factory=n,e.context=i,e.computed=t.get(KH)};return e.store=null,e.computed=null,e.context=null,e.factory=null,e.ngZone=null,e.\u0275prov=Ye({token:e,factory:e.\u0275fac=function(t){return new(t||e)(Ki(rs),Ki(GF),Ki(HF))}}),e}(),ZH=function(){function e(){m(this,e),e.statesCachedMeta.clear()}return b(e,null,[{key:"createStateContext",value:function(e){return QH.context.createStateContext(e)}},{key:"ensureMappedState",value:function(t){if(VH(QH.factory)||VH(t))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return(zH(t.name)?e.statesCachedMeta.get(t.name):null)||e.ensureMeta(t)}},{key:"getRepositoryByInstance",value:function(t){var n,i=null!==(n=$H(e.getStateClassByInstance(t)))&&void 0!==n?n:null;if(VH(i))throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return i}},{key:"getStateClassByInstance",value:function(e){return(null!=e?e:{}).constructor}},{key:"clearMetaByInstance",value:function(t){var n=e.getRepositoryByInstance(t);n.stateMeta.actions={},n.operations={}}},{key:"createPayload",value:function(e,t){for(var n={},i=Array.from(e),r=0;r0?n:null}},{key:"createAction",value:function(t,n,i){var r=e.createPayload(n,i);return new(function(e){return function(){function t(e){var n=this;m(this,t),e&&Object.keys(e).forEach(function(t){n[t]=e[t]})}return b(t,null,[{key:"type",get:function(){return e}}]),t}()}(t.type))(r)}},{key:"ensureMeta",value:function(t){var n,i=zH(t.name)?null===(n=QH.factory.states)||void 0===n?void 0:n.find(function(e){return e.name===t.name}):null;return zH(i)&&zH(t.name)&&e.statesCachedMeta.set(t.name,i),i}}]),e}();ZH.statesCachedMeta=new Map,ZH.\u0275fac=function(e){return new(e||ZH)},ZH.\u0275prov=Ye({token:ZH,factory:ZH.\u0275fac}),new Sf(1);var JH=function(e){a(n,e);var t=s(n);function n(e){return m(this,n),t.call(this,"Child states can only be added to an object. Cannot convert ".concat(zH(null==e?void 0:e.constructor)?e.constructor.name:e," to PlainObject"))}return n}(l(Error));function eG(e){var t;return null!==(t=e.NGXS_OPTIONS_META)&&void 0!==t?t:{name:""}}function tG(e){var t,n=eG(e),i=null!==(t=n.children)&&void 0!==t?t:[],r=HH(void 0===n.defaults?{}:n.defaults);if(i.length){if(WH(r))return function(e,t){return t.reduce(function(e,t){var n=eG(t);if(function(e){var t="string"==typeof e?e.trim():e;return[void 0,null,NaN,"",1/0].includes(t)}(n.name))throw new Error("State name not provided in class");return e[n.name.toString()]=tG(t),e},null!=e?e:{})}(r,i);throw new JH(r)}return r}function nG(e){var t;return null!==(t=e.__NGXS_COMPUTED_OPTION__)&&void 0!==t?t:null}function iG(){var e,t;return null!==(t=null===(e=null==QH?void 0:QH.computed)||void 0===e?void 0:e.sequenceValue)&&void 0!==t?t:0}function rG(e){var t=!1;return Xd(e)&&(t=!0),t}function oG(e){return e[YH]}var aG=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,"An argument with the name '".concat(e,"' already exists in the method '").concat(i,"'"))}return n}(l(Error)),sG=function(){function e(){m(this,e),this.payloadMap=new Map,this.argumentMap=new Map}return b(e,[{key:"getPayloadTypeByIndex",value:function(e){var t;return null!==(t=this.payloadMap.get(e))&&void 0!==t?t:null}},{key:"getArgumentNameByIndex",value:function(e){var t;return null!==(t=this.argumentMap.get(e))&&void 0!==t?t:null}},{key:"createPayloadType",value:function(e,t,n){this.checkDuplicateName(e,t),this.payloadMap.set(n,e),this.payloadMap.set(e,e)}},{key:"createArgumentName",value:function(e,t,n){this.checkDuplicateName(e,t),this.argumentMap.set(n,e),this.argumentMap.set(e,e)}},{key:"checkDuplicateName",value:function(e,t){if(UH(this.argumentMap.has(e))||UH(this.payloadMap.has(e)))throw new aG(e,t)}}]),e}();function uG(e){return Zl()?GH(e):e}function cG(e){return{enumerable:!0,configurable:!0,get:function(){var t=$H(e),n=ZH.ensureMappedState(t.stateMeta);return ZH.createStateContext(n)}}}function lG(e){if(!e)throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return Object.assign(Object.assign({},e),{getState:function(){return Zl()?GH(e.getState()):e.getState()},setState:function(t){e.setState(t)},patchState:function(t){e.patchState(t)}})}function hG(){return function(e,t,n){!function(e,t){if(!function(e,t){var n,i=e,r=!1;if(WH(i))for(;null!==i;){if(BH(null==i?void 0:i.hasOwnProperty(t))){r=!!(null===(n=Object.getOwnPropertyDescriptor(i,t))||void 0===n?void 0:n.get);break}i=Object.getPrototypeOf(i)}return r}(e,null==t?void 0:t.toString()))throw new Error("The method must be a getter for the computed decorator to work properly.\nExample: \n@Computed() get ".concat(t.toString(),"() { \n\t .. \n}"))}(e,t);var i=n.get;return n.get=function(){var e=function(e){return VH(nG(e))&&Object.defineProperties(e,{__NGXS_COMPUTED_OPTION__:{enumerable:!0,configurable:!0,value:new WeakMap}}),nG(e)}(this),t=null==e?void 0:e.get(i);if(BH(null==t?void 0:t.isObservable))return null==t?void 0:t.value;if(VH(t)||t.sequenceId!==iG()){e.delete(i);for(var n=arguments.length,r=new Array(n),o=0;o0&&void 0!==arguments[0]?arguments[0]:dG;return function(t,n,i){!function(e,t){if(e.hasOwnProperty("prototype"))throw new Error("Cannot support static methods with @DataAction()");if(void 0===t)throw new Error("@DataAction() can only decorate a method implementation")}(t,i);var r=i.value,o=n.toString();return i.value=function(){for(var t=arguments.length,n=new Array(t),i=0;i0?Array.from(e).reduce(function(e,n){var i=t(n,2),r=i[0],o=i[1];return Object.defineProperty(e,r,{value:o,enumerable:!0})},{}):void 0}},{key:"gtag",value:function(){try{for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0,r=arguments.length>3?arguments[3]:void 0,o=arguments.length>4?arguments[4]:void 0;return{ngModule:e,providers:[{provide:bG,useValue:{trackingCode:t,initCommands:n,uri:i,enableTracing:r,nonce:o}},SG]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[]]}),e}(),CG=function(){var e=function(){function e(){m(this,e),this.consent="not-set",this.consentChange=new Sf(1),this.consentChange.next(this.consent)}return b(e,[{key:"ngOnDestroy",value:function(){this.consentChange.complete()}},{key:"setConsent",value:function(e){this.consent!==e&&(this.consent=e,this.consentChange.next(e))}},{key:"unsetConsent",value:function(){this.setConsent("not-set")}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),OG=function(){var e=function(){function e(t,n,i){var r=this,o=i.trackingCode;m(this,e),this.window=n,this.subscriptions=new G,this.token=o,this.subscriptions.add(t.consentChange.subscribe(function(e){return r.toggleGoogleAnalytics("rescinded"===e)}))}return b(e,[{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"toggleGoogleAnalytics",value:function(e){this.window&&(this.window["ga-disable-".concat(this.token)]=e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(CG),Ki(_G),Ki(bG))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),TG=new Pi("Key under which consent is stored",{providedIn:"root",factory:function(){return"ALLOW_TELEMETRY"}}),AG=[CG,OG,function(){var e=function(){function e(t,n){var i=this;m(this,e),this.key=n,this.subscriptions=new G;try{this.storage=localStorage}catch(r){}t.setConsent(this.loadConsent()),this.subscriptions.add(t.consentChange.subscribe(function(e){return i.saveConsent(e)}))}return b(e,[{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"loadConsent",value:function(){var e,t,n=null===(t=null===(e=this.storage)||void 0===e?void 0:e.getItem)||void 0===t?void 0:t.call(e,this.key);if(null==n)return"not-set";var i=n.trim().toLowerCase();switch(i){case"given":case"rescinded":return i;default:return"not-set"}}},{key:"saveConsent",value:function(e){var t,n;null===(n=null===(t=this.storage)||void 0===t?void 0:t.setItem)||void 0===n||n.call(t,this.key,e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(CG),Ki(TG))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}()];function PG(e){return Object.entries(e).reduce(function(e,n){var i=t(n,2),r=i[0],o=i[1];return null!=o&&(e[r]="".concat(o)),e},{})}var MG=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"forRoot",value:function(t){var n=EG.forRoot(t.gaToken,function(e){return[{command:"set",values:[PG({appName:e.appName,projectName:e.projectName,developmentMode:e.developmentMode})]}]}(t)).providers;return{ngModule:e,providers:void 0===n?[]:n}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[].concat(AG,[{provide:ml,multi:!0,useFactory:function(){return function(){}},deps:AG}]),imports:[[EG]]}),e}();function IG(e,t,n,i){n&&"function"!=typeof n&&(i=n);var r="function"==typeof n?n:void 0,o=new Sf(e,t,i);return function(e){return Ie(function(){return o},r)(e)}}var RG=function(e,t){return JSON.stringify(e)===JSON.stringify(t)},DG=function(e){return e.map(function(e){return void 0!==e?JSON.parse(JSON.stringify(e)):e})},NG={storageStrategy:function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments)).cachePairs=[],e}return b(n,[{key:"add",value:function(e,t,n){this.cachePairs.push(e)}},{key:"addMany",value:function(e){this.cachePairs=e}},{key:"updateAtIndex",value:function(e,t){Object.assign(this.cachePairs[e],t)}},{key:"update",value:function(e,t){Object.assign(this.cachePairs[e],t)}},{key:"getAll",value:function(){return this.cachePairs}},{key:"removeAtIndex",value:function(e){this.cachePairs.splice(e,1)}},{key:"remove",value:function(e){this.cachePairs.splice(e,1)}},{key:"removeAll",value:function(){this.cachePairs.length=0}}]),n}(function(){return function e(){m(this,e)}}()),globalCacheKey:"CACHE_STORAGE",promiseImplementation:Promise},LG=new re;function jG(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(t,n,i){var r=this,o=e.cacheKey||t.constructor.name+"#"+n,a=i.value;if(i&&i.value){var s=e.storageStrategy?new e.storageStrategy:new NG.storageStrategy,u=[];e.cacheModifier&&e.cacheModifier.subscribe(function(e){return s.addMany(e(s.getAll(o,r)),o,r)}),Ee(LG.asObservable(),e.cacheBusterObserver?e.cacheBusterObserver:mf()).subscribe(function(e){s.removeAll(o,r),u.length=0}),e.cacheResolver=e.cacheResolver||NG.cacheResolver||RG,e.cacheHasher=e.cacheHasher||NG.cacheHasher||DG,i.value=function(){for(var t=this,n=s.getAll(o,this),i=arguments.length,r=new Array(i),c=0;c(e.maxAge||NG.maxAge)?(s.remove?s.remove(n.indexOf(h),h,o,this):s.removeAtIndex(n.indexOf(h),o,this),h=null):(e.slidingExpiration||NG.slidingExpiration)&&(h.created=new Date,s.update?s.update(n.indexOf(h),h,o,this):s.updateAtIndex(n.indexOf(h),h,o,this))),h){var f=Nd(h.response);return e.async?f.pipe(Uz(0)):f}if(d)return d.response;var p=a.call.apply(a,[this].concat(r)).pipe(Eb(function(){var t=u.find(function(t){return e.cacheResolver(t.parameters,l)});u.splice(u.indexOf(t),1)}),iv(function(i){(!e.shouldCacheDecider||e.shouldCacheDecider(i))&&((!(e.maxCacheCount||NG.maxCacheCount)||1===(e.maxCacheCount||NG.maxCacheCount)||(e.maxCacheCount||NG.maxCacheCount)&&(e.maxCacheCount||NG.maxCacheCount)0&&void 0!==arguments[0]?arguments[0]:{};m(this,e),this.apiKeys=t.apiKeys,this.username=t.username,this.password=t.password,this.accessToken=t.accessToken,this.basePath=t.basePath,this.withCredentials=t.withCredentials,this.encoder=t.encoder,this.credentials=t.credentials?t.credentials:{}}return b(e,[{key:"selectHeaderContentType",value:function(e){var t=this;if(0!==e.length){var n=e.find(function(e){return t.isJsonMime(e)});return void 0===n?e[0]:n}}},{key:"selectHeaderAccept",value:function(e){var t=this;if(0!==e.length){var n=e.find(function(e){return t.isJsonMime(e)});return void 0===n?e[0]:n}}},{key:"isJsonMime",value:function(e){var t=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==e&&(t.test(e)||"application/json-patch+json"===e.toLowerCase())}},{key:"lookupCredential",value:function(e){var t=this.credentials[e];return"function"==typeof t?t():t}}]),e}(),UG=function(){var e=function(){function e(t,n,i){m(this,e),this.httpClient=t,this.basePath="/v1",this.defaultHeaders=new Pb,this.configuration=new zG,i&&(this.configuration=i),"string"!=typeof this.configuration.basePath&&("string"!=typeof n&&(n=this.basePath),this.configuration.basePath=n),this.encoder=this.configuration.encoder||new BG}return b(e,[{key:"addToHttpParams",value:function(e,t,n){return this.addToHttpParamsRecursive(e,t,n)}},{key:"addToHttpParamsRecursive",value:function(e,t,n){var i=this;if(null==t)return e;if("object"==typeof t)if(Array.isArray(t))t.forEach(function(t){return e=i.addToHttpParamsRecursive(e,t,n)});else if(t instanceof Date){if(null==n)throw Error("key may not be null if value is Date");e=e.append(n,t.toISOString().substr(0,10))}else Object.keys(t).forEach(function(r){return e=i.addToHttpParamsRecursive(e,t[r],null!=n?"".concat(n,".").concat(r):r)});else{if(null==n)throw Error("key may not be null if value is not object or array");e=e.append(n,t)}return e}},{key:"aggregateResults",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/aggregate-results"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"cellTypeTermOccurences",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/cell-type-term-occurences"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"cellTypeTreeModel",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/cell-type-tree-model"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"gtexRuiLocations",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=new Lb({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache"));var a=this.defaultHeaders,s=i&&i.httpHeaderAccept;void 0===s&&(s=this.configuration.selectHeaderAccept(["application/json"])),void 0!==s&&(a=a.set("Accept",s));var u=i&&i.context;void 0===u&&(u=new jb);var c="json";return s&&(c=s.startsWith("text")?"text":this.configuration.isJsonMime(s)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/gtex/rui_locations.jsonld"),{context:u,params:o,responseType:c,withCredentials:this.configuration.withCredentials,headers:a,observe:t,reportProgress:n})}},{key:"hubmapRuiLocations",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/hubmap/rui_locations.jsonld"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"ontologyTermOccurences",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/ontology-term-occurences"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"ontologyTreeModel",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/ontology-tree-model"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"providerNames",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/provider-names"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"referenceOrganScene",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.organIri;if(null==o)throw new Error("Required parameter organIri was null or undefined when calling referenceOrganScene.");var a=e.age,s=e.ageRange,u=e.bmi,c=e.bmiRange,l=e.cache,h=e.ontologyTerms,d=e.cellTypeTerms,f=e.providers,p=e.sex,v=e.technologies,g=e.token,m=new Lb({encoder:this.encoder});null!=a&&(m=this.addToHttpParams(m,a,"age")),null!=s&&(m=this.addToHttpParams(m,s,"age-range")),null!=u&&(m=this.addToHttpParams(m,u,"bmi")),null!=c&&(m=this.addToHttpParams(m,c,"bmi-range")),null!=l&&(m=this.addToHttpParams(m,l,"cache")),h&&h.forEach(function(e){m=t.addToHttpParams(m,e,"ontology-terms")}),d&&d.forEach(function(e){m=t.addToHttpParams(m,e,"cell-type-terms")}),null!=o&&(m=this.addToHttpParams(m,o,"organ-iri")),f&&f.forEach(function(e){m=t.addToHttpParams(m,e,"providers")}),null!=p&&(m=this.addToHttpParams(m,p,"sex")),v&&v.forEach(function(e){m=t.addToHttpParams(m,e,"technologies")}),null!=g&&(m=this.addToHttpParams(m,g,"token"));var y=this.defaultHeaders,b=r&&r.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(y=y.set("Accept",b));var _=r&&r.context;void 0===_&&(_=new jb);var w="json";return b&&(w=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/reference-organ-scene"),{context:_,params:m,responseType:w,withCredentials:this.configuration.withCredentials,headers:y,observe:n,reportProgress:i})}},{key:"referenceOrgans",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/reference-organs"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"scene",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/scene"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}},{key:"technologyNames",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=arguments.length>3?arguments[3]:void 0,r=e.cache,o=e.token,a=new Lb({encoder:this.encoder});null!=r&&(a=this.addToHttpParams(a,r,"cache")),null!=o&&(a=this.addToHttpParams(a,o,"token"));var s=this.defaultHeaders,u=i&&i.httpHeaderAccept;void 0===u&&(u=this.configuration.selectHeaderAccept(["application/json"])),void 0!==u&&(s=s.set("Accept",u));var c=i&&i.context;void 0===c&&(c=new jb);var l="json";return u&&(l=u.startsWith("text")?"text":this.configuration.isJsonMime(u)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/technology-names"),{context:c,params:a,responseType:l,withCredentials:this.configuration.withCredentials,headers:s,observe:t,reportProgress:n})}},{key:"tissueBlocks",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body",i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3?arguments[3]:void 0,o=e.age,a=e.ageRange,s=e.bmi,u=e.bmiRange,c=e.cache,l=e.ontologyTerms,h=e.cellTypeTerms,d=e.providers,f=e.sex,p=e.technologies,v=e.token,g=new Lb({encoder:this.encoder});null!=o&&(g=this.addToHttpParams(g,o,"age")),null!=a&&(g=this.addToHttpParams(g,a,"age-range")),null!=s&&(g=this.addToHttpParams(g,s,"bmi")),null!=u&&(g=this.addToHttpParams(g,u,"bmi-range")),null!=c&&(g=this.addToHttpParams(g,c,"cache")),l&&l.forEach(function(e){g=t.addToHttpParams(g,e,"ontology-terms")}),h&&h.forEach(function(e){g=t.addToHttpParams(g,e,"cell-type-terms")}),d&&d.forEach(function(e){g=t.addToHttpParams(g,e,"providers")}),null!=f&&(g=this.addToHttpParams(g,f,"sex")),p&&p.forEach(function(e){g=t.addToHttpParams(g,e,"technologies")}),null!=v&&(g=this.addToHttpParams(g,v,"token"));var m=this.defaultHeaders,y=r&&r.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(m=m.set("Accept",y));var b=r&&r.context;void 0===b&&(b=new jb);var _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get("".concat(this.configuration.basePath,"/tissue-blocks"),{context:b,params:g,responseType:_,withCredentials:this.configuration.withCredentials,headers:m,observe:n,reportProgress:i})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Yb),Ki(VG,8),Ki(zG,8))},e.\u0275prov=Ye({factory:function(){return new e(Ki(Yb),Ki(VG,8),Ki(zG,8))},token:e,providedIn:"root"}),e}(),HG=function(){var e=function(){function e(t,n){if(m(this,e),t)throw new Error("CcfApiModule is already loaded. Import in your base AppModule only.");if(!n)throw new Error("You need to import the HttpClientModule in your AppModule! \nSee also https://github.com/angular/angular/issues/20575")}return b(e,null,[{key:"forRoot",value:function(t){return{ngModule:e,providers:[{provide:zG,useFactory:t}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(e,12),Ki(Yb,8))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[],imports:[[]]}),e}();function GG(e){return new Promise(function(t,n){e.oncomplete=e.onsuccess=function(){return t(e.result)},e.onabort=e.onerror=function(){return n(e.error)}})}function WG(){return FG||(e="keyval",t=function(){return navigator.userAgentData||!/Safari\//.test(navigator.userAgent)||/Chrom(e|ium)\//.test(navigator.userAgent)||!indexedDB.databases?Promise.resolve():new Promise(function(t){var n=function(){return indexedDB.databases().finally(t)};e=setInterval(n,100),n()}).finally(function(){return clearInterval(e)});var e}().then(function(){var t=indexedDB.open("keyval-store");return t.onupgradeneeded=function(){return t.result.createObjectStore(e)},GG(t)}),FG=function(n,i){return t.then(function(t){return i(t.transaction(e,n).objectStore(e))})}),FG;var e,t}function qG(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:WG();return t("readonly",function(t){return GG(t.get(e))})}var XG=r(71440),YG=r(70698),KG=r(7445),$G=r.n(KG),QG=r(23815),ZG=r(31609),JG=XG.Util.prefixes({ccf:"http://purl.org/ccf/latest/ccf.owl#",entity:"http://purl.org/ccf/latest/ccf-entity.owl#",fma:"http://purl.obolibrary.org/obo/FMA_",obo:"http://purl.obolibrary.org/obo/",uberon:"http://purl.obolibrary.org/obo/UBERON_",cl:"http://purl.obolibrary.org/obo/CL_",lmha:"http://purl.obolibrary.org/obo/LMHA_",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",dc:"http://purl.org/dc/elements/1.1/"},XG.DataFactory),eW={x:JG("rdf"),type:JG("rdf")("type")},tW={x:JG("rdfs"),label:JG("rdfs")("label"),comment:JG("rdfs")("comment"),isDefinedBy:JG("rdfs")("isDefinedBy"),seeAlso:JG("rdfs")("seeAlso")},nW={x:JG("entity"),id:JG("entity")("id"),label:tW.label,description:tW.comment,link:tW.seeAlso,sex:JG("entity")("sex"),age:JG("entity")("age"),bmi:JG("entity")("bmi"),Male:XG.DataFactory.literal("Male"),Female:XG.DataFactory.literal("Female"),consortiumName:JG("entity")("consortium_name"),providerName:JG("entity")("provider_name"),providerUUID:JG("entity")("provider_uuid"),donor:JG("entity")("has_donor"),sections:JG("entity")("has_tissue_section"),datasets:JG("entity")("has_dataset"),sampleType:JG("entity")("sample_type"),TissueBlock:XG.DataFactory.literal("Tissue Block"),TissueSection:XG.DataFactory.literal("Tissue Section"),NonStandard:XG.DataFactory.literal("Non-standard"),sectionCount:JG("entity")("section_count"),sectionSize:JG("entity")("section_size"),sectionUnits:JG("entity")("section_units"),sectionNumber:JG("entity")("section_number"),spatialEntity:JG("entity")("has_spatial_entity"),ontologyTerms:JG("entity")("has_ontology_term"),cellTypeTerms:JG("entity")("has_cell_type_term"),technology:JG("entity")("technology"),thumbnail:JG("entity")("has_thumbnail")},iW=JG("ccf"),rW={x:iW,ontologyNode:{label:iW("ccf_preferred_label"),parent:iW("ccf_part_of"),children:iW("ccf_part_of"),rui_rank:iW("ccf_rui_rank"),synonymLabels:XG.DataFactory.namedNode("http://www.geneontology.org/formats/oboInOwl#hasExactSynonym")},asctb:{part_of:iW("ccf_part_of"),ct_is_a:iW("ct_is_a"),located_in:iW("located_in"),characterizes:iW("characterizes")},spatial:{Female:iW("VHFemale"),Male:iW("VHMale"),BothSexes:iW("VHBothSexes"),FemaleOrgans:iW("VHFemaleOrgans"),MaleOrgans:iW("VHMaleOrgans")},SpatialObjectReference:iW("SpatialObjectReference"),SpatialEntity:iW("SpatialEntity"),SpatialPlacement:iW("SpatialPlacement"),spatialObjectReference:{file:iW("has_object_file"),file_format:iW("has_object_file_format"),file_subpath:iW("has_object_file_subpath")},extractionSet:{label:tW.label,rui_rank:iW("ccf_rui_rank")},spatialEntity:{label:tW.label,comment:tW.comment,creator:JG("dc")("creator"),creator_first_name:iW("creator_first_name"),creator_last_name:iW("creator_last_name"),creator_orcid:iW("creator_orcid"),creation_date:iW("creation_date"),updated_date:iW("updated_date"),ccf_annotations:iW("ccf_annotation"),representation_of:iW("ccf_representation_of"),reference_organ:iW("anatomical_structure_of"),extraction_set_for:iW("extraction_set_for"),extraction_set:iW("extraction_site_for"),sex:iW("has_sex"),side:iW("has_side"),rui_rank:iW("ccf_rui_rank"),slice_thickness:iW("ccf_slice_thickness"),slice_count:iW("ccf_slice_count"),x_dimension:iW("has_x_dimension"),y_dimension:iW("has_y_dimension"),z_dimension:iW("has_z_dimension"),dimension_units:iW("has_dimension_units"),object:iW("has_object_reference")},spatialPlacement:{source:iW("has_placement_source"),target:iW("has_placement_target"),placement_date:iW("has_placement_date"),x_scaling:iW("has_x_scaling"),y_scaling:iW("has_y_scaling"),z_scaling:iW("has_z_scaling"),scaling_units:iW("has_scaling_units"),x_rotation:iW("has_x_rotation"),y_rotation:iW("has_y_rotation"),z_rotation:iW("has_z_rotation"),w_rotation:iW("has_theta_rotation"),rotation_order:iW("has_rotation_order"),rotation_units:iW("has_rotation_units"),x_translation:iW("has_x_translation"),y_translation:iW("has_y_translation"),z_translation:iW("has_z_translation"),translation_units:iW("has_translation_units")}},oW={x:JG("uberon"),body:JG("uberon")("0013702")},aW={x:JG("cl"),cell:JG("cl")("0000000")},sW={x:JG("fma")},uW=(JG("lmha"),{body:oW.body,cell:aW.cell,respiratory_system:oW.x("0001004"),colon:oW.x("0001155"),left_lung:oW.x("0002168"),right_lung:oW.x("0002167"),left_bronchus:oW.x("0002178"),right_bronchus:oW.x("0002177"),kidney:oW.x("0002113"),ureter:oW.x("0000056"),eye:oW.x("0000970"),fallopian_tube:oW.x("0003889"),knee:oW.x("0001465"),ovary:oW.x("0000992"),trachea:oW.x("0003126"),aorta:oW.x("0000947"),blood:oW.x("0000178"),bone_marrow:oW.x("0002371"),male_reproductive_system:oW.x("0000079"),lymph_node:oW.x("0000029"),blood_vasculature:oW.x("0004537"),brain:oW.x("0000955"),eye_left:oW.x("0004548"),eye_right:sW.x("54449"),fallopian_tube_left:oW.x("0001303"),fallopian_tube_right:oW.x("0001302"),heart:oW.x("0000948"),kidney_left:oW.x("0004538"),kidney_right:oW.x("0004539"),knee_left:sW.x("24978"),knee_right:sW.x("24977"),large_intestine:oW.x("0000059"),liver:oW.x("0002107"),lungs:oW.x("0002048"),mesenteric_lymph_node:oW.x("0002509"),ovary_left:sW.x("7214"),ovary_right:sW.x("7213"),pancreas:oW.x("0001264"),pelvis:oW.x("0001270"),prostate_gland:oW.x("0002367"),skin:oW.x("0002097"),small_intestine:oW.x("0002108"),spleen:oW.x("0002106"),thymus:oW.x("0002370"),ureter_left:oW.x("0001223"),ureter_right:oW.x("0001222"),urinary_bladder:oW.x("0001255"),uterus:oW.x("0000995")});function cW(e){var n={};return Object.entries(e).forEach(function(e){var i=t(e,2),r=i[0],o=i[1];n[o.id]=r}),n}var lW={spatialObjectReference:cW(rW.spatialObjectReference),spatialEntity:cW(rW.spatialEntity),spatialPlacement:cW(rW.spatialPlacement)};function hW(e,t,n,i){var r={"@id":t,"@type":n};return e.some(function(e){var t=i[e.predicate.id];if(t){var n="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;(0,QG.set)(r,t,n)}return!1},XG.DataFactory.namedNode(t),null,null,null),r}var dW=(0,QG.memoize)(function(e,t){return hW(e,t,"SpatialObjectReference",lW.spatialObjectReference)},function(e,t){return t}),fW=(0,QG.memoize)(function(e,t){var n=hW(e,t,"ExtractionSet",lW.spatialEntity);return n.extractionSites=(0,QG.sortBy)(e.getSubjects(rW.spatialEntity.extraction_set,t,null).map(function(t){return mW(e,t.id)}),["rui_rank"]),n},function(e,t){return t}),pW=(0,QG.memoize)(function(e,t){return(0,QG.sortBy)(e.getSubjects(rW.spatialEntity.extraction_set_for,t,null).map(function(t){return fW(e,t.id)}),["rui_rank"])},function(e,t){return t}),vW=(0,QG.memoize)(function(e,t){return(0,QG.sortBy)(e.getSubjects(rW.spatialEntity.reference_organ,t,null).map(function(t){return mW(e,t.id)}).filter(function(e){return e["@id"]!==t}),["rui_rank"])},function(e,t){return t}),gW=(0,QG.memoize)(function(e){var t=[];return e.forEach(function(n){n.subject.id===n.object.id&&t.push(mW(e,n.subject.id))},null,rW.spatialEntity.reference_organ,null,null),(0,QG.sortBy)(t,["rui_rank"])}),mW=(0,QG.memoize)(function(e,t){var n=hW(e,t,"SpatialEntity",lW.spatialEntity);return n.object&&(n.object=dW(e,n.object)),n.ccf_annotations&&(n.ccf_annotations=e.getObjects(t,rW.spatialEntity.ccf_annotations,null).map(function(e){return e.id})),e.forSubjects(function(e){return n.entityId=e.id},nW.spatialEntity,t,null),n},function(e,t){return t}),yW=(0,QG.memoize)(function(e,t){var n=hW(e,t,"SpatialPlacement",lW.spatialPlacement);return n.source&&(n.source=mW(e,n.source)),n.target&&(n.target=mW(e,n.target)),n},function(e,t){return t}),bW=(0,QG.memoize)(function(e,t){var n=e.getObjects(XG.DataFactory.namedNode(t),nW.spatialEntity,null);if(n.length>0)return mW(e,n[0].id)},function(e,t){return t});function _W(e,t){var n,i=t;switch(i.translation_units){case"centimeter":n=.01;break;case"millimeter":n=.001;break;case"meter":default:n=1}var r=[i.x_translation,i.y_translation,i.z_translation].map(function(e){return e*n}),o=[i.x_rotation,i.y_rotation,i.z_rotation].map(Hx),a=[i.x_scaling,i.y_scaling,i.z_scaling];return e.translate(r).rotateXYZ(o).scale(a)}var wW=function(){function e(t){m(this,e),this.db=t,this.createGraph()}return b(e,[{key:"createGraph",value:function(){var e=this;this.graph=new YG.DirectedGraph;var t=this.db.store;t.forSubjects(function(t){e.addNode(t.id,"SpatialObjectReference")},eW.type,rW.SpatialObjectReference,null),t.forSubjects(function(t){e.addNode(t.id,"SpatialEntity")},eW.type,rW.SpatialEntity,null);var n={};t.some(function(e){return n[e.subject.id]=e.object.id,!1},null,rW.spatialPlacement.source,null,null),t.some(function(t){var i=n[t.subject.id];return i&&e.addEdge(t.subject.id,i,t.object.id,"SpatialPlacement"),!1},null,rW.spatialPlacement.target,null,null)}},{key:"addNode",value:function(e,t){this.graph.mergeNode(e,{type:t})}},{key:"addEdge",value:function(e,t,n,i){this.graph.mergeDirectedEdge(t,n,{type:i,id:e})}},{key:"getTransformationMatrix",value:function(e,t){if(e===t)return new SO(SO.IDENTITY);if(this.graph.hasNode(e)&&this.graph.hasNode(t)){var n=this.db.store,i=new SO(SO.IDENTITY),r=$G()(this.graph,e,t);if(r&&r.length>0){r.reverse();var o,a="",s=_(r);try{for(s.s();!(o=s.n()).done;){var u=o.value;if(a){var c=this.graph.getEdgeAttribute(u,a,"id");_W(i,yW(n,c))}a=u}}catch(l){s.e(l)}finally{s.f()}return i}}}}]),e}(),kW=function(){function e(t){m(this,e),this.db=t}return b(e,[{key:"getSpatialEntity",value:function(e){return mW(this.db.store,e)}},{key:"getExtractionSets",value:function(e){return pW(this.db.store,e)}},{key:"getExtractionSet",value:function(e){return fW(this.db.store,e)}},{key:"getAnatomicalStructures",value:function(e){return vW(this.db.store,e)}},{key:"getReferenceOrgans",value:function(){return gW(this.db.store)}},{key:"getReferenceBody",value:function(e){var t;switch(null==e?void 0:e.sex){case"Male":t=rW.spatial.Male.id;break;case"Female":t=rW.spatial.Female.id;break;case"Both":default:t=rW.spatial.BothSexes.id}return this.getSpatialEntity(t)}},{key:"getReferenceOrganSets",value:function(e){var n=this,i=this.getReferenceOrgans();switch(null==e?void 0:e.sex){case"Male":i=i.filter(function(e){return"Male"===e.sex});break;case"Female":i=i.filter(function(e){return"Female"===e.sex})}return(null==e?void 0:e.debug)&&(i=i.map(function(e){return[[e],n.getAnatomicalStructures(e["@id"])]}).reduce(function(e,n){var i=t(n,2),r=i[0],o=i[1];return e.concat(o.length>0?o:r)},[])),i}},{key:"getReferenceSceneNodes",value:function(e){var t=this,n=this.getReferenceBody(e),i=[],r=v(this.getReferenceOrganSets(e).map(function(e){var r="http://purl.obolibrary.org/obo/UBERON_0002097"===e.representation_of,o=t.getSceneNode(e,n,{color:[255,255,255,255],opacity:r?.5:.2,unpickable:!0,_lighting:"pbr",zoomBasedOpacity:!r});return r&&o?void i.push(o):o}));return i.length>0&&(r=[].concat(i,v(r))),(null==e?void 0:e.debug)&&(r=r.concat([this.getSceneNode(this.getSpatialEntity(rW.x("VHRightKidney").id),n,{color:[0,0,255,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHLeftKidney").id),n,{color:[255,0,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHSpleenCC1").id),n,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHSpleenCC2").id),n,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(rW.x("VHSpleenCC3").id),n,{color:[0,255,0,127.5],wireframe:!0})])),r.filter(function(e){return void 0!==e})}},{key:"getReferenceOrganScene",value:function(e,t){var n,i,r=this,o=null!==(n=void 0!==(null==t?void 0:t.sex))&&void 0!==n&&n,a=this.getReferenceOrgans().filter(function(n){return n.representation_of===e&&(!o||n.sex===(null==t?void 0:t.sex))});if(a.length>0){var s=a[0],u=this.getSceneNode(s,s,{color:[255,255,255,255],opacity:"http://purl.obolibrary.org/obo/UBERON_0002097"===s.representation_of?.5:.2,unpickable:!0,_lighting:"pbr"}),c=(null!==(i=this.db.getSpatialEntities(t))&&void 0!==i?i:[]).map(function(e){return r.getSceneNode(e,s,{color:[255,255,255,229.5]})});return[u].concat(c).filter(function(e){return void 0!==e})}return[]}},{key:"getEntitySceneNodes",value:function(e){var t=this,n=this.getReferenceBody(e);return this.db.getSpatialEntities(e).map(function(e){return t.getSceneNode(e,n,{color:[255,255,255,229.5]})}).filter(function(e){return void 0!==e})}},{key:"getSceneNode",value:function(e,t){var n,i,r,o,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=null===(i=null===(n=null==e?void 0:e.object)||void 0===n?void 0:n.file_format)||void 0===i?void 0:i.startsWith("model/gltf"),u=this.db.graph.getTransformationMatrix(s&&e.object?e.object["@id"]:e["@id"],t["@id"]);if(u){if(s)u=new SO(SO.IDENTITY).rotateX(Hx(90)).multiplyLeft(u);else{var c;switch(e.dimension_units){case"centimeter":c=.01;break;case"millimeter":c=.001;break;case"meter":default:c=1}var l=[e.x_dimension,e.y_dimension,e.z_dimension].map(function(e){return e*c/2});u.scale(l)}return Object.assign({"@id":e["@id"],"@type":"SpatialSceneNode",entityId:e.entityId,ccf_annotations:e.ccf_annotations,representation_of:e.representation_of,reference_organ:e.reference_organ,scenegraph:s?null===(r=e.object)||void 0===r?void 0:r.file:void 0,scenegraphNode:s?null===(o=e.object)||void 0===o?void 0:o.file_subpath:void 0,transformMatrix:u,tooltip:e.label},a)}}},{key:"getScene",value:function(e){return[].concat(v(this.getReferenceSceneNodes(e)),v(this.getEntitySceneNodes(e)))}}]),e}(),xW="https://entity.api.hubmapconsortium.org/entities/",SW=new Set(["VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0009-LK-102-7-AF_preIMS_registered_thumbnail.jpg","VAN0009-LK-102-7-IMS_NegMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-IMS_PosMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-PAS_registered_thumbnail.jpg","VAN0010-LK-155-40-AF_preIMS_registered_thumbnail.jpg","VAN0010-LK-155-40-IMS_NegMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-IMS_PosMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-PAS_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg","VAN0013-LK-202-96-AF_preIMS_registered_thumbnail.jpg","VAN0013-LK-202-96-IMS_NegMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-IMS_PosMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-PAS_registered_thumbnail.jpg","VAN0013-LK-202-97-AF_preMxIF_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc1_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc2_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc3_registered_thumbnail.jpg","VAN0014-LK-203-108-AF_preIMS_registered_thumbnail.jpg","VAN0014-LK-203-108-IMS_NegMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-IMS_PosMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-PAS_registered_thumbnail.jpg","VAN0016-LK-202-89-AF_preIMS_registered_thumbnail.jpg","VAN0016-LK-202-89-IMS_NegMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-IMS_PosMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-PAS_registered_thumbnail.jpg","VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg"]),EW={"HBM558.SRZG.629":"HBM558.SRZG.629_UFL0002-SP-3-4-1.jpg","HBM562.NTMH.548":"HBM562.NTMH.548_UFL0006-SP-1-2-1.jpg","HBM685.KHRQ.684":"HBM685.KHRQ.684_UFL0008-LY07-1-1.jpg","HBM278.SFQW.627":"HBM278.SFQW.627_UFL0008-LY09-1-1.jpg","HBM427.SMGB.866":"HBM427.SMGB.866_UFL0004-SP-1-4-1.jpg","HBM432.LLCF.677":"HBM432.LLCF.677_UFL0001-SP-2-5-1.jpg","HBM586.ZSVS.996":"HBM586.ZSVS.996_UFL0008-SP-1-1-1.jpg","HBM285.XMBT.542":"HBM285.XMBT.542_UFL0006-TH-1-3-1.jpg","HBM289.BWJW.663":"HBM289.BWJW.663_UFL0006-TH-1-2-1.jpg","HBM255.SRPR.985":"HBM255.SRPR.985_UFL0005-TH-2-2-1.jpg","HBM799.WXHD.535":"HBM799.WXHD.535_UFL0009-LY02-1-1.jpg","HBM294.RZFN.624":"HBM294.RZFN.624_UFL0005-TH-1-1-1.jpg","HBM383.TRQG.424":"HBM383.TRQG.424_UFL0006-SP-1-3-1.jpg","HBM647.MFQB.496":"HBM647.MFQB.496_UFL0001-SP-1-2-1.jpg","HBM237.GGPR.739":"HBM237.GGPR.739_UFL0006-LY01-1-1.jpg","HBM288.TPBD.654":"HBM288.TPBD.654_UFL0003-SP-2-2-1.jpg","HBM974.NDXT.675":"HBM974.NDXT.675_UFL0008-TH-2-2-1.jpg","HBM589.SLVV.423":"HBM589.SLVV.423_UFL0008-LY10-1-1.jpg","HBM794.RLFN.358":"HBM794.RLFN.358_UFL0006-LY03-1-1.jpg","HBM372.BQSR.778":"HBM372.BQSR.778_UFL0007-SP-1-1-1.jpg","HBM499.TKDW.458":"HBM499.TKDW.458_UFL0009-LY03-1-1.jpg","HBM342.PRQB.739":"HBM342.PRQB.739_UFL0003-LY06-1-1.jpg","HBM633.CLVN.674":"HBM633.CLVN.674_UFL0003-SP-3-6-1.jpg","HBM343.JQKM.578":"HBM343.JQKM.578_UFL0009-LY01-1-1.jpg","HBM987.XGTH.368":"HBM987.XGTH.368_UFL0002-SP-2-4-1.jpg","HBM964.CWCP.788":"HBM964.CWCP.788_UFL0006-LY02-2-1.jpg","HBM244.TJLK.223":"HBM244.TJLK.223_UFL0003-SP-1-4-1.jpg","HBM646.FSBQ.966":"HBM646.FSBQ.966_UFL0007-SP-2-2-1.jpg","HBM572.GXSB.234":"HBM572.GXSB.234_UFL0003-SP-3-2-1.jpg","HBM772.TKGJ.794":"HBM772.TKGJ.794_UFL0008-SP-2-1-1.jpg","HBM239.CBWR.263":"HBM239.CBWR.263_UFL0008-SP-1-2-1.jpg","HBM992.NRTT.383":"HBM992.NRTT.383_UFL0006-SP-1-1-1.jpg","HBM283.DQXD.546":"HBM283.DQXD.546_UFL0003-SP-1-2-1.jpg","HBM795.JHND.856":"HBM795.JHND.856_UFL0007-SP-1-2-1.jpg","HBM267.BZKT.867":"HBM267.BZKT.867_UFL0003-SP-2-6-1.jpg","HBM838.DLMJ.782":"HBM838.DLMJ.782_UFL0008-TH-1-1-1.jpg","HBM337.FSXL.564":"HBM337.FSXL.564_UFL0001-SP-3-8-2.jpg","HBM355.JDLK.244":"HBM355.JDLK.244_UFL0004-SP-2-4-1.jpg","HBM599.PSZG.737":"HBM599.PSZG.737_UFL0006-LY02-1-1.jpg"},CW={"03b3d854-ed44-11e8-8bce-0e368f3075e8":"TMC-UCSD","07a29e4c-ed43-11e8-b56a-0e8017bdda58":"TMC-Florida","308f5ffc-ed43-11e8-b56a-0e8017bdda58":"TMC-CalTech","5bd084c8-edc2-11e8-802f-0e368f3075e8":"HBM-TestingGroup","73bb26e4-ed43-11e8-8f19-0a7c1eab007a":"TMC-Vanderbilt","def5fd76-ed43-11e8-b56a-0e8017bdda58":"TMC-Stanford","5c106f29-ea2d-11e9-85e8-0efb3ba9a670":"RTI-General Electric"},OW=function(){var e={};return Object.entries(uW).forEach(function(n){var i=t(n,2),r=i[0],o=i[1];return e[r]=o.id}),e}(),TW={AO:[OW.body,OW.heart,OW.aorta],BL:[OW.body,OW.urinary_bladder],BD:[OW.body,OW.pelvis,OW.blood],BM:[OW.body,OW.pelvis,OW.bone_marrow],BR:[OW.body,OW.brain],LB:[OW.body,OW.respiratory_system,OW.lungs,OW.left_bronchus],RB:[OW.body,OW.respiratory_system,OW.lungs,OW.right_bronchus],LE:[OW.body,OW.eye,OW.eye_left],RE:[OW.body,OW.eye,OW.eye_right],LF:[OW.body,OW.fallopian_tube,OW.fallopian_tube_left],RF:[OW.body,OW.fallopian_tube,OW.fallopian_tube_right],HT:[OW.body,OW.heart],LK:[OW.body,OW.kidney,OW.kidney_left],RK:[OW.body,OW.kidney,OW.kidney_right],LI:[OW.body,OW.large_intestine,OW.colon],LV:[OW.body,OW.liver],LL:[OW.body,OW.respiratory_system,OW.lungs,OW.left_lung],LN:[OW.body,OW.knee,OW.knee_left],RL:[OW.body,OW.respiratory_system,OW.lungs,OW.right_lung],RN:[OW.body,OW.knee,OW.knee_right],LY:[OW.body,OW.lymph_node,OW.mesenteric_lymph_node],LO:[OW.body,OW.ovary,OW.ovary_left],RO:[OW.body,OW.ovary,OW.ovary_right],PA:[OW.body,OW.pancreas],PL:[OW.body],SI:[OW.body,OW.small_intestine],SK:[OW.body,OW.skin],SP:[OW.body,OW.spleen],ST:[OW.body],TH:[OW.body,OW.thymus],TR:[OW.body,OW.respiratory_system,OW.lungs,OW.trachea],UR:[OW.body,OW.ureter],UT:[OW.body,OW.uterus],OT:[OW.body]},AW={"@base":"http://purl.org/ccf/latest/ccf-entity.owl#","@vocab":"http://purl.org/ccf/latest/ccf-entity.owl#",ccf:"http://purl.org/ccf/latest/ccf.owl#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",label:"rdfs:label",description:"rdfs:comment",link:{"@id":"rdfs:seeAlso","@type":"@id"},samples:{"@reverse":"has_donor"},sections:{"@id":"has_tissue_section","@type":"@id"},datasets:{"@id":"has_dataset","@type":"@id"},rui_location:{"@id":"has_spatial_entity","@type":"@id"},ontologyTerms:{"@id":"has_ontology_term","@type":"@id"},cellTypeTerms:{"@id":"has_cell_type_term","@type":"@id"},thumbnail:{"@id":"has_thumbnail"}},PW=function(){function e(t){var n,i,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",a=arguments.length>3?arguments[3]:void 0;if(m(this,e),this.data=t,this.bad=!1,this["@type"]="Sample",this.sample_type="Tissue Block","Sample"===this.data.entity_type){var s=this.data.descendants||[],u=(this.data.ancestors||[]).find(function(e){return"Donor"===e.entity_type});this.donor=this.getDonor(u,o);var c=this.getRuiLocation(t,this.donor);c?this.rui_location=c:this.bad=!0,CW[t.group_uuid]||(CW[t.group_uuid]=t.group_name);var l=new Date(t.last_modified_timestamp).toLocaleDateString(),h=CW[t.group_uuid]||t.group_name,d=t.created_by_user_displayname;this["@id"]=xW+t.uuid,this.label="Registered ".concat(l,", ").concat(d,", ").concat(h),this.link="".concat(o,"browse/sample/").concat(t.uuid);var f={},p=[];this.sections=p;var v=[];this.datasets=v;var g,y=_(s.filter(function(e){return"Sample"===e.entity_type}));try{for(y.s();!(g=y.n()).done;){var b=g.value,w=this.getSection(b,t,o);f[b.submission_id]=w,p.push(w),w.section_number=null!==(n=w.section_number)&&void 0!==n?n:p.length}}catch(M){y.e(M)}finally{y.f()}var k,x=_(s);try{for(x.s();!(k=x.n()).done;){var S=k.value;if("Dataset"===S.entity_type){var E=this.getDataset(S,r,o,a),C=(0,QG.get)(S,["ingest_metadata","metadata","tissue_id"]);f[C]?null===(i=f[C].datasets)||void 0===i||i.push(E):v.push(E)}}}catch(M){x.e(M)}finally{x.f()}var O=null!=c?c:{},T="".concat(O.x_dimension," x ").concat(O.y_dimension," x ").concat(O.z_dimension," ").concat(O.dimension_units);this.section_count=O.slice_count||p.length;var A=parseFloat((O.slice_thickness||(O.z_dimension||0)/Math.max(this.section_count,1)).toFixed(1));this.section_size=A;var P=O.dimension_units||"millimeter";this.section_units=P,this.description="".concat(T,", ").concat(A," ").concat(P,", ").concat(t.specimen_type,", ").concat(this.section_count," Sections"),p.forEach(function(e,t){e.description="".concat(O.x_dimension," x ").concat(O.y_dimension," x ").concat(A," ").concat(P,", ").concat(A," ").concat(P,", ").concat(e.description),e.section_number=t+1})}else this.bad=!0}return b(e,[{key:"getSection",value:function(e,t,n){var i=new Date(e.last_modified_timestamp).toLocaleDateString();return{"@id":xW+e.uuid,"@type":"Sample",label:"Registered ".concat(i,", ").concat(e.created_by_user_displayname,", ").concat(CW[e.group_uuid]||e.group_name),description:"".concat(t.specimen_type),link:"".concat(n,"browse/sample/").concat(e.uuid),sample_type:"Tissue Section",section_number:1,samples:[],datasets:[]}}},{key:"getDataset",value:function(e){var t,n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",o=arguments.length>3?arguments[3]:void 0,a=new Date(e.last_modified_timestamp).toLocaleDateString(),s=CW[e.group_uuid]||e.group_name,u=e.created_by_user_displayname,c=[].concat(v(e.data_types),[(0,QG.get)(e,["ingest_metadata","metadata","assay_type"],"")]),l=c.join("|").toLowerCase(),h="assets/icons/ico-unknown.svg";return-1!==l.indexOf("10x")?(n="10x",h="assets/icons/ico-bulk-10x.svg"):-1!==l.indexOf("af")?(n="AF",h="assets/icons/ico-spatial-af.svg"):-1!==l.indexOf("codex")?(n="CODEX",h="assets/icons/ico-spatial-codex.svg"):-1!==l.indexOf("imc")?(n="IMC",h="assets/icons/ico-spatial-imc.svg"):-1!==l.indexOf("lc")&&-1===l.indexOf("af")?(n="LC",h="assets/icons/ico-bulk-lc.svg"):n=-1!==l.indexOf("maldi")?"MALDI":-1!==l.indexOf("pas")?"PAS":"OTHER",h=null!==(t=this.getDatasetThumbnail(e,i,o))&&void 0!==t?t:h,{"@id":xW+e.uuid,"@type":"Dataset",label:"Registered ".concat(a,", ").concat(u,", ").concat(s),description:"Data/Assay Types: ".concat(c.join(", ")),link:"".concat(r,"browse/dataset/").concat(e.uuid),technology:n,thumbnail:h}}},{key:"getDatasetThumbnail",value:function(e,t,n){if(e.thumbnail_file){var i=e.thumbnail_file;return"".concat(t,"/").concat(i.file_uuid,"/").concat(i.filename)+(n?"?token=".concat(n):"")}if("73bb26e4-ed43-11e8-8f19-0a7c1eab007a"===e.group_uuid){var r=(0,QG.get)(e,"metadata.files",[]).filter(function(e){return/\.(ome\.tif|ome\.tiff)$/.test(e.rel_path)}).filter(function(e){return!/(multilayer\.ome\.tif|_ac\.ome\.tif)/.test(e.rel_path)}).filter(function(e){return SW.has(e.rel_path.split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg"))}).map(function(i){return"".concat(t,"/").concat(e.uuid,"/").concat(i.rel_path)+(n?"?token=".concat(n):"")});if(r.length>0){var o=r[0].split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg");if(SW.has(o))return"assets/thumbnails/TMC-Vanderbilt/DR1/".concat(o)}}else if("07a29e4c-ed43-11e8-b56a-0e8017bdda58"===e.group_uuid){var a=EW[e.hubmap_id];if(a)return"assets/thumbnails/TMC-Florida/".concat(a)}}},{key:"getDonor",value:function(e,t){var n,i=(e.description||"").toLowerCase();i.includes("female")?n="Female":i.includes("male")&&(n="Male");var r,o,a=i.match(/age ([0-9]+)/);a&&(r=(0,QG.toNumber)(a[1]));var s,u=_((0,QG.get)(e,"metadata.organ_donor_data",[]));try{for(u.s();!(s=u.n()).done;){var c=s.value;"Feminine gender"===c.preferred_term||"Female"===c.preferred_term?n="Female":"Masculine gender"===c.preferred_term||"Male"===c.preferred_term?n="Male":"Current chronological age"===c.preferred_term||"Age"===c.preferred_term?r=(0,QG.toNumber)(c.data_value):"Body mass index"===c.preferred_term&&(o=(0,QG.toNumber)(c.data_value))}}catch(f){u.e(f)}finally{u.f()}var l="";n&&r&&(l+="".concat(n,", Age ").concat(r),o&&(l+=", BMI ".concat(o.toFixed(1))));var h=new Date(e.last_modified_timestamp).toLocaleDateString(),d=CW[e.group_uuid]||e.group_name;return{"@id":xW+e.uuid,"@type":"Donor",label:l,description:"Entered ".concat(h,", ").concat(e.created_by_user_displayname,", ").concat(d),link:"".concat(t,"browse/donor/").concat(e.uuid),age:r,sex:n,bmi:o,consortium_name:"HuBMAP",provider_name:d,provider_uuid:e.group_uuid,samples:[]}}},{key:"getRuiLocation",value:function(e,t){var n,i,r=(e.ancestors||[]).find(function(e){return"Sample"===e.entity_type&&"organ"===e.specimen_type}),o=TW[null==r?void 0:r.organ]||[OW.body],a=e.rui_location;if(a&&("string"==typeof a&&(a=JSON.parse(a)),a.alignment_id?console.log("Detected a deprecated rui_location",e.uuid):a["@id"]&&(i=a)),i){i.ccf_annotations=o.concat(i.ccf_annotations||[]);var s=null!==(n=(0,QG.get)(i,["placement","target"]))&&void 0!==n?n:"";s.startsWith("http://purl.org/ccf/latest/ccf.owl#VHSpleenCC")&&(0,QG.set)(i,["placement","target"],s.replace("#VHSpleenCC","Male"===t.sex?"#VHMSpleenCC":"#VHFSpleenCC")),("http://purl.org/ccf/latest/ccf.owl#VHLeftKidney"===s||"http://purl.org/ccf/latest/ccf.owl#VHRightKidney"===s)&&(0,QG.set)(i,["placement","target"],"Male"===t.sex?s.replace("#VH","#VHM")+"_Patch":s.replace("#VH","#VHF")+"_Patch")}return i}},{key:"getTissueBlock",value:function(){return(0,QG.omit)(Object.assign({},this),["data","bad","donor"])}},{key:"toJsonLd",value:function(){return Object.assign(Object.assign({},this.donor),{samples:[this.getTissueBlock()]})}}]),e}(),MW=["uuid","entity_type","group_uuid","group_name","last_modified_timestamp","created_by_user_displayname","ancestors","descendants","rui_location","specimen_type"],IW={exists:{field:"rui_location"}};function RW(e,t,n){return JSON.stringify({version:!0,from:e,size:t,stored_fields:["*"],script_fields:{},docvalue_fields:[],query:null!=n?n:IW,_source:{includes:MW}})}function DW(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,fetch(e,t);case 3:if(!(i=n.sent).ok){n.next=10;break}return n.next=7,i.json();case 7:n.t0=n.sent,n.next=11;break;case 10:n.t0=void 0;case 11:return n.abrupt("return",n.t0);case 14:return n.prev=14,n.t1=n.catch(0),n.abrupt("return");case 17:case"end":return n.stop()}},n,null,[[0,14]])}))}function NW(e,t,n,i){var r=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"";return mw(this,void 0,void 0,regeneratorRuntime.mark(function a(){var s;return regeneratorRuntime.wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if("static"!==t){a.next=6;break}return a.next=3,DW(e);case 3:s=a.sent,a.next=11;break;case 6:if(a.t0="search-api"===t,!a.t0){a.next=11;break}return a.next=10,function(e,t,n){return mw(this,void 0,void 0,regeneratorRuntime.mark(function i(){var r,o,a,s,u,c,l,h,d;return regeneratorRuntime.wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return o=function(e){var t=new Headers;return t.append("Content-type","application/json"),e&&t.append("Authorization","Bearer ".concat(e)),t}(t),a=RW(0,50,n),i.next=4,DW(e,{method:"POST",headers:o,body:a});case 4:if(s=i.sent){i.next=7;break}return i.abrupt("return");case 7:if(!((u=s.hits.total.value)<=50)){i.next=10;break}return i.abrupt("return",s);case 10:for(c=[],l=50;l1&&void 0!==arguments[1]?arguments[1]:"",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",r=arguments.length>3?arguments[3]:void 0,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],a={},s=(0,QG.get)(e,"hits.hits",[]).map(function(e){return(0,QG.get)(e,"_source",{})}).map(function(e){return new PW(e,n,i,r).toJsonLd()}),u=_(s);try{for(u.s();!(t=u.n()).done;){var c=t.value,l=c["@id"];a[l]?a[l].samples.push(c.samples[0]):a[l]=c}}catch(d){u.e(d)}finally{u.f()}var h=Object.values(a);return o&&(function(e){var t,n=[],i=0,r=_(e.filter(function(e){return e.samples.length>1}));try{for(r.s();!(t=r.n()).done;){for(var o=t.value,a=o.samples,s=function(e){var t=a[e]["@id"];n=n.concat(a[e].datasets);var r,o=_(a[e].sections);try{for(o.s();!(r=o.n()).done;){var s=r.value;n=n.concat(s.datasets)}}catch(d){o.e(d)}finally{o.f()}for(var u=e+1;u0&&console.log("\u26a0 ".concat(i," sections identified as blocks"))}(h),console.log(h.map(function(e){return Object.assign({"@context":AW},e)}))),{"@context":AW,"@graph":h}}(s,r,o,i));case 13:console.warn("Unable to load ".concat(e," as HuBMAP Data"));case 14:case"end":return a.stop()}},a)}))}function LW(e,t,n){var i,r=new Map,o=new Set;e.some(function(e){var n;return t.has(e.subject.id)&&(o.add(e.object.id),r.has(e.object.id)?null===(n=r.get(e.object.id))||void 0===n||n.push(e.subject.id):r.set(e.object.id,[e.subject.id])),!1},null,nW.donor,null,null);var a,s=n(o),u=new Set,c=_(s);try{for(c.s();!(a=c.n()).done;){var l,h=a.value,d=_(null!==(i=r.get(h))&&void 0!==i?i:[]);try{for(d.s();!(l=d.n()).done;){var f=l.value;u.add(f)}}catch(p){d.e(p)}finally{d.f()}}}catch(p){c.e(p)}finally{c.f()}return u}function jW(e,t,n){var i,r=new Map,o=new Set;e.some(function(e){var n;return t.has(e.subject.id)&&(o.add(e.object.id),r.has(e.object.id)?null===(n=r.get(e.object.id))||void 0===n||n.push(e.subject.id):r.set(e.object.id,[e.subject.id])),!1},null,nW.spatialEntity,null,null);var a,s=n(o),u=new Set,c=_(s);try{for(c.s();!(a=c.n()).done;){var l,h=a.value,d=_(null!==(i=r.get(h))&&void 0!==i?i:[]);try{for(d.s();!(l=d.n()).done;){var f=l.value;u.add(f)}}catch(p){d.e(p)}finally{d.f()}}}catch(p){c.e(p)}finally{c.f()}return u}function FW(e,t){return function(n){return e.has(n.id)?t.add(n.id):void 0}}function BW(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value,s=XG.DataFactory.namedNode(a);e.forSubjects(FW(t,r),rW.spatialEntity.ccf_annotations,s,null)}}catch(u){o.e(u)}finally{o.f()}return r}function VW(e,t){var n=function(e,t){var n=new Map;return t.some(function(t){return e.has(t.subject.id)&&(n.has(t.object.id)?n.get(t.object.id).add(t.subject.id):n.set(t.object.id,new Set([t.subject.id]))),!1},null,nW.spatialEntity,null,null),n}(e,t),i=new Map;return t.some(function(e){if(n.has(e.subject.id)){var t=n.get(e.subject.id);if(i.has(e.object.id)){var r=i.get(e.object.id);t.forEach(function(e){return r.add(e)})}else i.set(e.object.id,new Set(t))}return!1},null,rW.spatialEntity.ccf_annotations,null,null),i}function zW(e,t,n){var i,r=XG.DataFactory.namedNode(t),a={"@id":t,"@type":"OntologyTreeNode",id:t,parent:"",children:[],synonymLabels:[],label:""},s=(o(i={},rW.ontologyNode.label.id,"label"),o(i,n,"parent"),o(i,rW.ontologyNode.synonymLabels.id,"synonymLabels"),i);return e.some(function(e){var t=s[e.predicate.id];if(t){var n="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;"synonymLabels"===t?a.synonymLabels.push(n):(0,QG.set)(a,t,n)}return!1},r,null,null,null),a.children=e.getSubjects(n,r,null).map(function(e){return e.id}),a}var UW=(0,QG.memoize)(function(e,t,n,i){var r={root:t,nodes:{}},o=new Set;e.some(function(e){return o.add(e.subject.id),o.add(e.predicate.id),!1},null,i,null,null);var a,s=_(o);try{for(s.s();!(a=s.n()).done;){var u=a.value;r.nodes[u]=zW(e,u,i)}}catch(l){s.e(l)}finally{s.f()}if(!r.nodes[t]){var c=e.getSubjects(i,t,null).map(function(e){return e.id}).sort(function(e,t){return r.nodes[e].label.localeCompare(r.nodes[t].label)});r.nodes[t]={"@id":t,"@type":"OntologyTreeNode",id:t,label:n,children:c,synonymLabels:[]}}return r},function(e,t,n){return t+n}),HW=(o(x={},nW.label.id,"label"),o(x,nW.description.id,"description"),o(x,nW.link.id,"link"),x),GW=Object.assign(Object.assign({},HW),o({},nW.providerName.id,"providerName")),WW=Object.assign(Object.assign({},HW),(o(S={},nW.technology.id,"technology"),o(S,nW.thumbnail.id,"thumbnail"),S)),qW=Object.assign(Object.assign({},HW),(o(E={},nW.sampleType.id,"sampleType"),o(E,nW.sectionNumber.id,"sectionNumber"),o(E,nW.datasets.id,"datasets"),E)),XW=Object.assign(Object.assign({},HW),(o(C={},nW.sampleType.id,"sampleType"),o(C,nW.sectionCount.id,"sectionCount"),o(C,nW.sectionSize.id,"sectionSize"),o(C,nW.sectionUnits.id,"sectionUnits"),o(C,nW.donor.id,"donor"),o(C,nW.spatialEntity.id,"spatialEntityId"),o(C,nW.sections.id,"sections"),o(C,nW.datasets.id,"datasets"),C)),YW=(0,QG.memoize)(function(e,t){var n={"@id":t,"@type":"Donor"};return e.some(function(e){var t=GW[e.predicate.id];if(t){var i="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;(0,QG.set)(n,t,i)}return!1},XG.DataFactory.namedNode(t),null,null,null),n},function(e,t){return t});function KW(e,t){var n={"@id":t,"@type":"Dataset"};return e.some(function(e){var t=WW[e.predicate.id];if(t){var i="Literal"===e.object.termType?(0,ZG.fromRdf)(e.object):e.object.id;(0,QG.set)(n,t,i)}return!1},XG.DataFactory.namedNode(t),null,null,null),n}var $W=(0,QG.memoize)(function(e,t){var n={"@id":t,"@type":"Sample",sections:[],datasets:[]};return e.some(function(t){var i=XW[t.predicate.id];if(i){var r="Literal"===t.object.termType?(0,ZG.fromRdf)(t.object):t.object.id;if("sections"===i){var o=function(e,t){var n={"@id":t,"@type":"Sample",datasets:[]};return e.some(function(t){var i=qW[t.predicate.id];if(i){var r="Literal"===t.object.termType?(0,ZG.fromRdf)(t.object):t.object.id;if("datasets"===i){var o=KW(e,r);n[i].push(o)}else(0,QG.set)(n,i,r)}return!1},XG.DataFactory.namedNode(t),null,null,null),n}(e,r);n[i].push(o)}else if("datasets"===i){var a=KW(e,r);n[i].push(a)}else"donor"===i?n[i]=YW(e,r):(0,QG.set)(n,i,r)}return!1},XG.DataFactory.namedNode(t),null,null,null),n},function(e,t){return t}),QW={ccfOwlUrl:"https://purl.org/ccf/latest/ccf.owl",ccfContextUrl:"https://purl.org/ccf/latest/ccf-context.jsonld",dataSources:[],hubmapDataService:"static",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"",hubmapAssetsUrl:"https://assets.hubmapconsortium.org"},ZW=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:QW;m(this,e),this.options=t,this.store=new XG.Store(void 0,{factory:XG.DataFactory}),this.graph=new wW(this),this.scene=new kW(this)}return b(e,[{key:"connect",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e&&(this.options=e),this.initializing||(this.initializing=t?this.cachedConnect():this.doConnect()),n.next=4,this.initializing;case 4:return n.abrupt("return",this.store.size>0);case 5:case"end":return n.stop()}},n,this)}))}},{key:"cachedConnect",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){var t,n,i,r,o;return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=(new Date).getTime(),n="ccf-database.last_modified",i="ccf-database",e.next=5,qG(n).catch(function(){});case 5:if(!((r=e.sent)&&t-new Date(+r).getTime()>36e5)){e.next=11;break}return e.next=9,function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:WG();return t("readwrite",function(t){return e.forEach(function(e){return t.delete(e)}),GG(t.transaction)})}([i,n]).catch(function(){});case 9:e.next=14;break;case 11:return e.next=13,qG(i).catch(function(){});case 13:o=e.sent;case 14:if(!o){e.next=19;break}return e.next=17,this.deserialize(o);case 17:e.next=22;break;case 19:return e.next=21,this.doConnect();case 21:(function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:WG();return t("readwrite",function(t){return e.forEach(function(e){return t.put(e[1],e[0])}),GG(t.transaction)})})([[i,this.serialize()],[n,""+t]]).catch(function(){});case 22:case"end":return e.stop()}},e,this)}))}},{key:"doConnect",value:function(){var e,t;return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i,r,o,a,s=this;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(i=[],r=null!==(t=null===(e=this.options.dataSources)||void 0===e?void 0:e.concat())&&void 0!==t?t:[],!(o=this.options.ccfOwlUrl).startsWith("{")){n.next=5;break}this.store=(0,XG.deserializeN3Store)(o,XG.DataFactory),n.next=13;break;case 5:if(!o.endsWith(".n3store.json")){n.next=12;break}return n.next=8,fetch(o).then(function(e){return e.text()}).catch(function(){return console.log("Couldn't locate serialized store.")});case 8:(a=n.sent)&&(this.store=(0,XG.deserializeN3Store)(a,XG.DataFactory)),n.next=13;break;case 12:(null==o?void 0:o.length)>0&&r.push(o);case 13:return this.options.hubmapDataUrl&&(this.options.hubmapDataUrl.endsWith("jsonld")?r.push(this.options.hubmapDataUrl):i.push(NW(this.options.hubmapDataUrl,this.options.hubmapDataService,this.options.hubmapQuery,this.options.hubmapToken,this.options.hubmapAssetsUrl,this.options.hubmapPortalUrl).then(function(e){if(e)return s.addDataSources([e])}))),i.push(this.addDataSources(r)),n.next=17,Promise.all(i);case 17:return n.next=19,this.synchronize();case 19:case"end":return n.stop()}},n,this)}))}},{key:"addDataSources",value:function(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i,r=this;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return i=null!=t?t:this.store,n.next=3,Promise.all(e.map(function(e){return mw(r,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if("string"!=typeof e){t.next=20;break}if(!e.endsWith("jsonld")){t.next=6;break}return t.next=4,(0,XG.addJsonLdToStore)(e,i);case 4:t.next=18;break;case 6:if(!e.endsWith("n3")){t.next=11;break}return t.next=9,(0,XG.addN3ToStore)(e,i);case 9:t.next=18;break;case 11:if(!(e.endsWith("rdf")||e.endsWith("owl")||e.endsWith("xml"))){t.next=16;break}return t.next=14,(0,XG.addRdfXmlToStore)(e,i);case 14:t.next=18;break;case 16:return t.next=18,(0,XG.addJsonLdToStore)(e,i);case 18:t.next=22;break;case 20:return t.next=22,(0,XG.addJsonLdToStore)(e,i);case 22:case"end":return t.stop()}},t)}))}));case 3:return n.abrupt("return",this);case 4:case"end":return n.stop()}},n,this)}))}},{key:"synchronize",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,new Promise(function(e){setTimeout(e,500)});case 2:return this.graph.createGraph(),e.abrupt("return",this);case 4:case"end":return e.stop()}},e,this)}))}},{key:"serialize",value:function(){return(0,XG.serializeN3Store)(this.store)}},{key:"deserialize",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return this.store=(0,XG.deserializeN3Store)(e,XG.DataFactory),this.graph=new wW(this),this.scene=new kW(this),t.next=5,new Promise(function(e){setTimeout(e,10)});case 5:case"end":return t.stop()}},t,this)}))}},{key:"getIds",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return function(e,t){var n,i,r,o,a,s,u=function(e){var t=new Set;return e.forSubjects(function(e){return t.add(e.id)},nW.spatialEntity,null,null),t}(e);if(u.size>0&&(u=function(e,t){var n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],i=new Set;if(e.forSubjects(FW(t,i),nW.spatialEntity,null,null),!n){var r=new Set;return t.forEach(function(e){return i.has(e)?void 0:r.add(e)}),r}return i}(e,u)),u.size>0&&("Male"===t.sex||"Female"===t.sex)){var c=t.sex;u=LW(e,u,function(t){return function(e,t,n){var i=new Set;return e.forSubjects(FW(t,i),nW.sex,nW[n],null),i}(e,t,c)})}if(u.size>0&&(null===(n=t.tmc)||void 0===n?void 0:n.length)>0&&(u=LW(e,u,function(n){return function(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value,s=XG.DataFactory.literal(a);e.forSubjects(FW(t,r),nW.providerName,s,null)}}catch(u){o.e(u)}finally{o.f()}return r}(e,n,t.tmc)})),u.size>0&&(null===(i=t.technologies)||void 0===i?void 0:i.length)>0&&(u=function(e,t,n){var i,r=new Map,o=new Set,a=new Set;e.some(function(e){return t.has(e.subject.id)&&a.add(e.object.id),!1},null,nW.sections,null,null),e.some(function(e){var n;return(t.has(e.subject.id)||a.has(e.subject.id))&&(o.add(e.object.id),r.has(e.object.id)?null===(n=r.get(e.object.id))||void 0===n||n.push(e.subject.id):r.set(e.object.id,[e.subject.id])),!1},null,nW.datasets,null,null);var s,u=n(o),c=new Set,l=_(u);try{for(l.s();!(s=l.n()).done;){var h,d=s.value,f=_(null!==(i=r.get(d))&&void 0!==i?i:[]);try{for(f.s();!(h=f.n()).done;){var p=h.value;c.add(p)}}catch(v){f.e(v)}finally{f.f()}}}catch(v){l.e(v)}finally{l.f()}return c}(e,u,function(n){return function(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value,s=XG.DataFactory.literal(a);e.forSubjects(FW(t,r),nW.technology,s,null)}}catch(u){o.e(u)}finally{o.f()}return r}(e,n,t.technologies)})),u.size>0&&(null===(r=t.ontologyTerms)||void 0===r?void 0:r.length)>0&&(u=jW(e,u,function(n){return BW(e,n,t.ontologyTerms)})),u.size>0&&(null===(o=t.cellTypeTerms)||void 0===o?void 0:o.length)>0&&(u=jW(e,u,function(n){return function(e,t,n){var i,r=new Set,o=_(n);try{for(o.s();!(i=o.n()).done;){var a=i.value;e.forObjects(function(e){r.add(e.id)},a,rW.asctb.located_in,null),a===uW.cell.id&&r.add(uW.body.id)}}catch(s){o.e(s)}finally{o.f()}return BW(e,t,v(r))}(e,n,t.cellTypeTerms)})),u.size>0&&2===(null===(a=t.ageRange)||void 0===a?void 0:a.length)&&(0,QG.isFinite)(t.ageRange[0])&&(0,QG.isFinite)(t.ageRange[1])){var l=Math.max.apply(Math,v(t.ageRange)),h=Math.min.apply(Math,v(t.ageRange));1===h&&110===l||(u=LW(e,u,function(t){return function(e,t,n,i){var r=new Set;return e.some(function(e){if(t.has(e.subject.id)){var o=(0,ZG.fromRdf)(e.object);o>=n&&o<=i&&r.add(e.subject.id)}return!1},null,nW.age,null,null),r}(e,t,h,l)}))}if(u.size>0&&2===(null===(s=t.bmiRange)||void 0===s?void 0:s.length)&&(0,QG.isFinite)(t.bmiRange[0])&&(0,QG.isFinite)(t.bmiRange[1])){var d=Math.max.apply(Math,v(t.bmiRange)),f=Math.min.apply(Math,v(t.bmiRange));13===f&&83===d||(u=LW(e,u,function(t){return function(e,t,n,i){var r=new Set;return e.some(function(e){if(t.has(e.subject.id)){var o=(0,ZG.fromRdf)(e.object);o>=n&&o<=i&&r.add(e.subject.id)}return!1},null,nW.bmi,null,null),r}(e,t,f,d)}))}return u}(this.store,e)}},{key:"get",value:function(e){return this.store.getQuads(XG.DataFactory.namedNode(e),null,null,null)}},{key:"search",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return v(this.getIds(t)).map(function(t){return e.get(t)})}},{key:"getSpatialEntities",value:function(e){var t=this;return e=Object.assign(Object.assign({},e),{hasSpatialEntity:!0}),v(this.getIds(e)).map(function(e){return bW(t.store,e)})}},{key:"getDatasetTechnologyNames",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){var t=new Set;return e.some(function(e){return t.add(e.object.value),!1},null,nW.technology,null,null),Array.from(t).sort()}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getProviderNames",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){var t=new Set;return e.some(function(e){return t.add(e.object.value),!1},null,nW.providerName,null,null),Array.from(t).sort()}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getTissueBlockResults",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){var n=this;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",(e=Object.assign(Object.assign({},e),{hasSpatialEntity:!0}),v(this.getIds(e)).map(function(e){return $W(n.store,e)})));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getAggregateResults",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",function(e,n){var i=new Set;n.some(function(t){return e.has(t.subject.id)&&i.add(t.object.id),!1},null,nW.donor,null,null);var r=new Set;n.some(function(e){return i.has(e.subject.id)&&r.add(e.object.id),!1},null,nW.providerUUID,null,null);var o=new Set;n.forSubjects(function(t){e.has(t.id)&&o.add(t.id)},nW.spatialEntity,null,null);var a=new Set;n.some(function(e){return o.has(e.subject.id)&&a.add(e.object.id),!1},null,nW.sections,null,null);var s=new Set;return n.some(function(e){var t=e.subject;return(o.has(t.id)||a.has(t.id))&&s.add(e.object.id),!1},null,nW.datasets,null,null),Object.entries({"Tissue Data Providers":r.size,Donors:i.size,"Tissue Blocks":o.size,"Tissue Sections":a.size,"Tissue Datasets":s.size}).map(function(e){var n=t(e,2);return{label:n[0],count:n[1]}})}(this.getIds(e),this.store));case 1:case"end":return n.stop()}},n,this)}))}},{key:"getOntologyTermOccurences",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",function(e,t){var n={};return VW(e,t).forEach(function(e,t){n[t]=e.size}),n}(this.getIds(e),this.store));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getCellTypeTermOccurences",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",function(e,t){var n,i,r=VW(e,t),o=new Map;t.some(function(e){var t=e.object.id;if(r.has(t)){var n=e.subject.id,i=r.get(t);if(o.has(n)){var a=o.get(n);i.forEach(function(e){return a.add(e)})}else o.set(n,new Set(i))}return!1},null,rW.asctb.located_in,null,null);var a={};return o.forEach(function(e,t){a[t]=e.size}),a[uW.cell.id]=null!==(i=null===(n=r.get(uW.body.id))||void 0===n?void 0:n.size)&&void 0!==i?i:0,a}(this.getIds(e),this.store));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getOntologyTreeModel",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){var t=UW(e,uW.body.id,"body",rW.asctb.part_of.id);return t.nodes[uW.body.id].children=["http://purl.obolibrary.org/obo/UBERON_0000955","http://purl.obolibrary.org/obo/UBERON_0000029","http://purl.obolibrary.org/obo/UBERON_0000970","http://purl.obolibrary.org/obo/UBERON_0003889","http://purl.obolibrary.org/obo/UBERON_0000948","http://purl.obolibrary.org/obo/UBERON_0002113","http://purl.obolibrary.org/obo/UBERON_0001465","http://purl.obolibrary.org/obo/UBERON_0002107","http://purl.obolibrary.org/obo/UBERON_0002048","http://purl.obolibrary.org/obo/UBERON_0000992","http://purl.obolibrary.org/obo/UBERON_0001264","http://purl.obolibrary.org/obo/UBERON_0001270","http://purl.obolibrary.org/obo/UBERON_0002367","http://purl.obolibrary.org/obo/UBERON_0002097","http://purl.obolibrary.org/obo/UBERON_0002108","http://purl.obolibrary.org/obo/UBERON_0000059","http://purl.obolibrary.org/obo/UBERON_0002106","http://purl.obolibrary.org/obo/UBERON_0002370","http://purl.obolibrary.org/obo/UBERON_0000056","http://purl.obolibrary.org/obo/UBERON_0001255","http://purl.obolibrary.org/obo/UBERON_0000995","http://purl.obolibrary.org/obo/UBERON_0004537"].filter(function(e){return e in t.nodes}),t}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getCellTypeTreeModel",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",function(e){return UW(e,uW.cell.id,"cell",rW.asctb.ct_is_a.id)}(this.store));case 1:case"end":return e.stop()}},e,this)}))}},{key:"getReferenceOrgans",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.scene.getReferenceOrgans());case 1:case"end":return e.stop()}},e,this)}))}},{key:"getScene",value:function(e){return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",(this.graph.createGraph(),this.scene.getScene(e)));case 1:case"end":return t.stop()}},t,this)}))}},{key:"getReferenceOrganScene",value:function(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.abrupt("return",(this.graph.createGraph(),this.scene.getReferenceOrganScene(e,t)));case 1:case"end":return n.stop()}},n,this)}))}}]),e}(),JW=Symbol("Comlink.proxy"),eq=Symbol("Comlink.endpoint"),tq=Symbol("Comlink.releaseProxy"),nq=Symbol("Comlink.thrown"),iq=function(e){return"object"==typeof e&&null!==e||"function"==typeof e},rq=new Map([["proxy",{canHandle:function(e){return iq(e)&&e[JW]},serialize:function(e){var t=new MessageChannel,n=t.port1,i=t.port2;return oq(e,n),[i,[i]]},deserialize:function(e){return e.start(),sq(e)}}],["throw",{canHandle:function(e){return iq(e)&&nq in e},serialize:function(e){var t=e.value;return[t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[]]},deserialize:function(e){throw e.isError?Object.assign(new Error(e.value.message),e.value):e.value}}]]);function oq(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:self;n.addEventListener("message",function i(r){if(r&&r.data){var a,s=Object.assign({path:[]},r.data),u=s.id,c=s.type,l=s.path,d=(r.data.argumentList||[]).map(pq);try{var f=l.slice(0,-1).reduce(function(e,t){return e[t]},e),p=l.reduce(function(e,t){return e[t]},e);switch(c){case"GET":a=p;break;case"SET":f[l.slice(-1)[0]]=pq(r.data.value),a=!0;break;case"APPLY":a=p.apply(f,d);break;case"CONSTRUCT":a=function(e){return Object.assign(e,o({},JW,!0))}(h(p,v(d)));break;case"ENDPOINT":var g=new MessageChannel,m=g.port1,y=g.port2;oq(e,y),a=function(e,t){return dq.set(e,t),e}(m,[m]);break;case"RELEASE":a=void 0;break;default:return}}catch(f){a=o({value:f},nq,0)}Promise.resolve(a).catch(function(e){return o({value:e},nq,0)}).then(function(e){var r=t(fq(e),2),o=r[0],a=r[1];n.postMessage(Object.assign(Object.assign({},o),{id:u}),a),"RELEASE"===c&&(n.removeEventListener("message",i),aq(n))})}}),n.start&&n.start()}function aq(e){(function(e){return"MessagePort"===e.constructor.name})(e)&&e.close()}function sq(e,t){return cq(e,[],t)}function uq(e){if(e)throw new Error("Proxy has been released and is not useable")}function cq(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:function(){},r=!1,o=new Proxy(i,{get:function(t,i){if(uq(r),i===tq)return function(){return vq(e,{type:"RELEASE",path:n.map(function(e){return e.toString()})}).then(function(){aq(e),r=!0})};if("then"===i){if(0===n.length)return{then:function(){return o}};var a=vq(e,{type:"GET",path:n.map(function(e){return e.toString()})}).then(pq);return a.then.bind(a)}return cq(e,[].concat(v(n),[i]))},set:function(i,o,a){uq(r);var s=t(fq(a),2),u=s[0],c=s[1];return vq(e,{type:"SET",path:[].concat(v(n),[o]).map(function(e){return e.toString()}),value:u},c).then(pq)},apply:function(i,o,a){uq(r);var s=n[n.length-1];if(s===eq)return vq(e,{type:"ENDPOINT"}).then(pq);if("bind"===s)return cq(e,n.slice(0,-1));var u=t(hq(a),2),c=u[0],l=u[1];return vq(e,{type:"APPLY",path:n.map(function(e){return e.toString()}),argumentList:c},l).then(pq)},construct:function(i,o){uq(r);var a=t(hq(o),2),s=a[0],u=a[1];return vq(e,{type:"CONSTRUCT",path:n.map(function(e){return e.toString()}),argumentList:s},u).then(pq)}});return o}function lq(e){return Array.prototype.concat.apply([],e)}function hq(e){var t=e.map(fq);return[t.map(function(e){return e[0]}),lq(t.map(function(e){return e[1]}))]}var dq=new WeakMap;function fq(e){var n,i=_(rq);try{for(i.s();!(n=i.n()).done;){var r=t(n.value,2),o=r[0],a=r[1];if(a.canHandle(e)){var s=t(a.serialize(e),2);return[{type:"HANDLER",name:o,value:s[0]},s[1]]}}}catch(u){i.e(u)}finally{i.f()}return[{type:"RAW",value:e},dq.get(e)||[]]}function pq(e){switch(e.type){case"HANDLER":return rq.get(e.name).deserialize(e.value);case"RAW":return e.value}}function vq(e,t,n){return new Promise(function(i){var r=new Array(4).fill(0).map(function(){return Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)}).join("-");e.addEventListener("message",function t(n){!n.data||!n.data.id||n.data.id!==r||(e.removeEventListener("message",t),i(n.data))}),e.start&&e.start(),e.postMessage(Object.assign({id:r},t),n)})}var gq=["bodyCanvas"],mq=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-body-ui",this.rotationChange=new Qc,this.nodeDrag=new Qc,this.nodeClick=new Qc,this.nodeHoverStart=new Qc,this.nodeHoverStop=new Qc,this.initialized=new Qc,this._interactive=!0,this._rotation=0,this._rotationX=0,this._zoom=9.5,this._target=[0,0,0],this._scene=[],this.subscriptions=[]}return b(e,[{key:"scene",get:function(){return this._scene},set:function(e){var t;this._scene=e,null===(t=this.bodyUI)||void 0===t||t.setScene(e)}},{key:"rotation",get:function(){return this._rotation},set:function(e){var t;this._rotation=e,null===(t=this.bodyUI)||void 0===t||t.setRotation(e)}},{key:"rotationX",get:function(){return this._rotationX},set:function(e){var t;this._rotationX=e,null===(t=this.bodyUI)||void 0===t||t.setRotationX(e)}},{key:"zoom",get:function(){return this._zoom},set:function(e){var t;this._zoom=e,null===(t=this.bodyUI)||void 0===t||t.setZoom(e)}},{key:"target",get:function(){return this._target},set:function(e){var t;this._target=e,null===(t=this.bodyUI)||void 0===t||t.setTarget(e)}},{key:"bounds",get:function(){return this._bounds},set:function(e){this._bounds=e,this.zoomToBounds(e)}},{key:"camera",get:function(){return this._camera},set:function(e){this._camera=e}},{key:"interactive",get:function(){return this._interactive},set:function(e){this._interactive=e,this.bodyUI&&this.recreateBodyUI()}},{key:"ngAfterViewInit",value:function(){this.setupBodyUI()}},{key:"zoomToBounds",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{x:48,y:48};if(this.bodyCanvas){var n=this.bodyCanvas.nativeElement,i=n.width,r=n.height,o=window.devicePixelRatio,a=Math.min(Math.log2((i-t.x)/o/e.x),Math.log2((r-t.y)/o/e.y));this.zoom=a}}},{key:"setupBodyUI",value:function(){var e;return mw(this,void 0,void 0,regeneratorRuntime.mark(function t(){var n,i,r=this;return regeneratorRuntime.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=this.bodyCanvas.nativeElement,i=new NF({id:"body-ui",canvas:n,zoom:this.zoom,target:[0,0,0],rotation:0,minRotationX:-75,maxRotationX:75,interactive:this.interactive,camera:this.camera}),n.addEventListener("contextmenu",function(e){return e.preventDefault()}),t.next=4,i.initialize();case 4:this.bodyUI=i,window.bodyUI=i,(null===(e=this.scene)||void 0===e?void 0:e.length)>0&&this.bodyUI.setScene(this.scene),this.bounds&&this.zoomToBounds(this.bounds),this.subscriptions=[this.bodyUI.sceneRotation$.subscribe(function(e){return r.rotationChange.next(e)}),this.bodyUI.nodeDrag$.subscribe(function(e){return r.nodeDrag.emit(e)}),this.bodyUI.nodeClick$.subscribe(function(e){return r.nodeClick.emit(e)}),this.bodyUI.nodeHoverStart$.subscribe(function(e){return r.nodeHoverStart.emit(e)}),this.bodyUI.nodeHoverStop$.subscribe(function(e){return r.nodeHoverStop.emit(e)})],this.initialized.emit();case 10:case"end":return t.stop()}},t,this)}))}},{key:"recreateBodyUI",value:function(){this.clearSubscriptions(),this.bodyUI.finalize(),this.setupBodyUI()}},{key:"clearSubscriptions",value:function(){this.subscriptions.forEach(function(e){return e.unsubscribe()}),this.subscriptions=[]}},{key:"ngOnDestroy",value:function(){this.clearSubscriptions()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-body-ui"]],viewQuery:function(e,t){var n;(1&e&&ll(gq,5,Yu),2&e)&&(cl(n=dl())&&(t.bodyCanvas=n.first))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{scene:"scene",rotation:"rotation",rotationX:"rotationX",zoom:"zoom",target:"target",bounds:"bounds",camera:"camera",interactive:"interactive"},outputs:{rotationChange:"rotationChange",nodeDrag:"nodeDrag",nodeClick:"nodeClick",nodeHoverStart:"nodeHoverStart",nodeHoverStop:"nodeHoverStop",initialized:"initialized"},decls:2,vars:0,consts:[[1,"body-ui"],["bodyCanvas",""]],template:function(e,t){1&e&&As(0,"canvas",0,1)},styles:["[_nghost-%COMP%]{height:100%;display:block}[_nghost-%COMP%] .body-ui[_ngcontent-%COMP%]{position:relative!important;background-color:#000;border-radius:.5rem}"]}),e}(),yq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}();new Pi("Maximum number of autocomplete options displayed",{providedIn:"root",factory:function(){return 10}});var bq=["carouselContainer"],_q=["itemlist"],wq=["itemcontainer"];function kq(e,t){if(1&e){var n=Rs();Os(0,"mat-icon",9),js("touchstart",function(){return gn(n),Us().scroll("left")})("touchend",function(){return gn(n),Us().stopScroll()})("click",function(){return gn(n),Us().shift("left")})("mousedown",function(){return gn(n),Us().scroll("left")})("mouseup",function(){return gn(n),Us().stopScroll()}),wu(1,"chevron_left"),Ts()}2&e&&au("disabled",Us().onLeft)}function xq(e,t){if(1&e&&(Os(0,"div",15),wu(1),Ts()),2&e){var n=Us().$implicit,i=Us();Wo(1),ku(i.occurenceData[n.id]||0)}}function Sq(e,t){if(1&e){var n=Rs();Os(0,"div",10),js("click",function(){var e=gn(n).$implicit;return Us().selectOrgan(e)}),As(1,"mat-icon",11),Os(2,"div",12),Os(3,"div",13),wu(4),Ts(),ks(5,xq,2,1,"div",14),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us();au("disabled",i.disabled)("selected",r.isSelected(i)),Wo(1),qs("svgIcon",i.src),Wo(3),ku(i.name),Wo(1),Es("ngIf",void 0!==i.numResults)}}function Eq(e,t){if(1&e){var n=Rs();Os(0,"mat-icon",16),js("touchstart",function(){return gn(n),Us().scroll("right")})("touchend",function(){return gn(n),Us().stopScroll()})("click",function(){return gn(n),Us().shift("right")})("mousedown",function(){return gn(n),Us().scroll("right")})("mouseup",function(){return gn(n),Us().stopScroll()}),wu(1,"chevron_right"),Ts()}2&e&&au("disabled",Us().onRight)}var Cq=[{src:"app:skin",organ:"Skin",name:"Skin",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002097"},{src:"app:brain",organ:"Brain",name:"Brain",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000955"},{disabled:!0,src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000029"},{src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002509"},{disabled:!0,src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000970"},{src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004548"},{src:"app:eye",organ:"Eye",name:"Eye, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_54449"},{disabled:!0,src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0003889"},{src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001303"},{src:"app:fallopian-tube-right",organ:"Fallopian Tube",name:"Fallopian Tube, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001302"},{src:"app:heart",organ:"Heart",name:"Heart",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000948"},{disabled:!0,src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002113"},{src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004538"},{src:"app:kidney-right",organ:"Kidney",name:"Kidney, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004539"},{disabled:!0,src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001465"},{src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24978"},{src:"app:knee",organ:"Knee",name:"Knee, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24977"},{src:"app:liver",organ:"Liver",name:"Liver",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002107"},{disabled:!0,src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002048"},{src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001004"},{disabled:!0,src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000992"},{src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7214"},{src:"app:ovary-right",organ:"Ovary",name:"Ovary, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7213"},{src:"app:pancreas",organ:"Pancreas",name:"Pancreas",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001264"},{src:"app:pelvis-f",organ:"Pelvis",name:"Pelvis",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001270"},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0002367",disabled:!0},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0000079"},{src:"app:small-intestine",organ:"Small Intestine",name:"Small Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002108"},{src:"app:large-intestine",organ:"Large Intestine",name:"Large Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000059"},{src:"app:spleen",organ:"Spleen",name:"Spleen",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002106"},{src:"app:thymus",organ:"Thymus",name:"Thymus",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002370"},{disabled:!0,src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000056"},{src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001223"},{src:"app:ureter-right",organ:"Ureter",name:"Ureter, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001222"},{src:"app:bladder",organ:"Urinary Bladder",name:"Urinary Bladder",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001255"},{src:"app:uterus",organ:"Uterus",name:"Uterus",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000995"},{src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004537"},{disabled:!0,src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002049"}].sort(function(e,t){return e.name.localeCompare(t.name)}),Oq=Cq.filter(function(e){return!0!==e.disabled}),Tq=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-organ-selector",this.multiselect=!1,this.displayErrors=!1,this.organList=Oq,this.selectedOrgans=[],this.expanded=!1,this.organsChanged=new Qc,this.onLeft=!0,this.onRight=!1,this.step=72}return b(e,[{key:"occurenceData",get:function(){return this._occurenceData},set:function(e){this._occurenceData=e}},{key:"ngAfterViewInit",value:function(){var e=this,t=this.carouselContainer;this.sensor=new wU.ResizeSensor(t.nativeElement,function(){e.set()})}},{key:"ngOnChanges",value:function(e){"organList"in e&&this.set()}},{key:"ngOnDestroy",value:function(){this.sensor.detach()}},{key:"error",get:function(){return!(!this.displayErrors||0===this.selectedOrgans.length)}},{key:"shift",value:function(e){var t=this.itemList,n=parseInt(t.nativeElement.style.left,10)||0;this.onLeft&&"left"===e||this.onRight&&"right"===e||(n="right"===e?n-this.step:n+this.step,t.nativeElement.style.left=n+"px",this.setLeftRight(n))}},{key:"scroll",value:function(e){var t=this;this.timeoutHandler=setInterval(function(){t.shift(e)},200)}},{key:"stopScroll",value:function(){this.timeoutHandler&&(clearInterval(this.timeoutHandler),this.timeoutHandler=void 0)}},{key:"selectOrgan",value:function(e){this.selectedOrgans=this.multiselect?this.selectedOrgans.includes(e)?this.selectedOrgans.filter(function(t){return e!==t}):this.selectedOrgans.concat([e]):[e],this.organsChanged.emit(this.selectedOrgans)}},{key:"isSelected",value:function(e){return!!this.selectedOrgans.includes(e)}},{key:"set",value:function(){var e=this.itemList,t=this.itemContainer,n=this.carouselContainer,i=parseInt(e.nativeElement.style.left,10)||0;if(e.nativeElement.offsetWidth>=this.organList.length*this.step)e.nativeElement.style.left="0px",this.onLeft=!0,this.onRight=!0;else{this.setLeftRight(i);var r=this.step*Math.floor(n.nativeElement.offsetWidth/this.step)-64;t.nativeElement.style.width="".concat(r,"px")}}},{key:"setWidth",value:function(){var e=this.itemContainer,t=this.carouselContainer,n=this.step*Math.floor(t.nativeElement.offsetWidth/this.step)-64;e.nativeElement.style.width="".concat(n,"px")}},{key:"setLeftRight",value:function(e){var t=this.itemContainer;this.onLeft=0===e,this.onRight=e<=t.nativeElement.offsetWidth-this.organList.length*this.step}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-organ-selector"]],viewQuery:function(e,t){var n;(1&e&&(ll(bq,7),ll(_q,7),ll(wq,7)),2&e)&&(cl(n=dl())&&(t.carouselContainer=n.first),cl(n=dl())&&(t.itemList=n.first),cl(n=dl())&&(t.itemContainer=n.first))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{multiselect:"multiselect",displayErrors:"displayErrors",organList:"organList",selectedOrgans:"selectedOrgans",expanded:"expanded",occurenceData:"occurenceData"},outputs:{organsChanged:"organsChanged"},features:[Ht],decls:9,vars:8,consts:[["matTooltip","Select the organ your tissue block is from.",1,"container",3,"matTooltipDisabled"],["carouselContainer",""],["class","carousel-left-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-item-container"],["itemcontainer",""],[1,"carousel-item-list"],["itemlist",""],["class","carousel-item",3,"disabled","selected","click",4,"ngFor","ngForOf"],["class","carousel-right-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-left-icon",3,"touchstart","touchend","click","mousedown","mouseup"],[1,"carousel-item",3,"click"],[1,"carousel-icon",3,"svgIcon"],[1,"carousel-text-container"],[1,"carousel-text"],["class","num-results",4,"ngIf"],[1,"num-results"],[1,"carousel-right-icon",3,"touchstart","touchend","click","mousedown","mouseup"]],template:function(e,t){1&e&&(Os(0,"div",0,1),ks(2,kq,2,2,"mat-icon",2),Os(3,"div",3,4),Os(5,"div",5,6),ks(7,Sq,6,7,"div",7),Ts(),Ts(),ks(8,Eq,2,2,"mat-icon",8),Ts()),2&e&&(au("expanded",t.expanded)("error",t.error),Es("matTooltipDisabled",t.multiselect),Wo(2),Es("ngIf",!t.expanded),Wo(5),Es("ngForOf",t.organList),Wo(1),Es("ngIf",!t.expanded))},directives:[lw,Nh,Rh,k_],styles:["[_nghost-%COMP%] .container[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;justify-content:space-between}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{font-size:2rem;transform:scaleY(1.2);height:2rem;width:2rem;cursor:pointer}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon.disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon.disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%]{text-align:right}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{text-align:left}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{overflow:hidden;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{position:relative;left:0rem;display:flex;transition:all .2s linear;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer;padding:.25rem .5rem;height:5rem;transition:.6s}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-icon[_ngcontent-%COMP%]{text-align:center;width:3.5rem;height:2rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:4rem;justify-content:center;text-align:center}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .carousel-text[_ngcontent-%COMP%]{display:flex;justify-content:center;font-size:.625rem;max-width:3.5rem;line-height:.8rem;min-height:1.6rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{font-size:.6875rem;line-height:1.5}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item.disabled[_ngcontent-%COMP%]{pointer-events:none}[_nghost-%COMP%] .error-message[_ngcontent-%COMP%]{color:red;height:1rem}[_nghost-%COMP%] .error-message.hidden[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{width:100%!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{flex-wrap:wrap;overflow:auto;left:0rem!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{height:5rem}"]}),e}(),Aq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,x_,fw]]}),e}(),Pq=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-opacity-slider",this.opacity=20,this.visible=!0,this.opacityChange=new Qc,this.visibilityToggle=new Qc,this.opacityReset=new Qc}return b(e,[{key:"ngOnInit",value:function(){this.prevOpacity=this.visible?0:20}},{key:"reset",value:function(){this.prevOpacity=20}},{key:"changeOpacity",value:function(e){this.opacity=parseInt(e,10),this.opacityChange.emit(this.opacity)}},{key:"toggleVisibility",value:function(){var e=this.opacity;this.opacity=this.prevOpacity,this.prevOpacity=e,this.visibilityToggle.emit(),this.opacityChange.emit(this.opacity)}},{key:"resetOpacity",value:function(){this.prevOpacity=0,this.opacityReset.emit()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-opacity-slider"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{opacity:"opacity",visible:"visible"},outputs:{opacityChange:"opacityChange",visibilityToggle:"visibilityToggle",opacityReset:"opacityReset"},decls:10,vars:17,consts:[[1,"slider-box"],[1,"slider-and-label"],[1,"slider",3,"step","min","max","value","input"],[1,"opacity-value"],[1,"icons"],["matRipple","","svgIcon","app:visibility_off",1,"visibility","icon","invisible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","","svgIcon","app:visibility_on",1,"visibility","icon","visible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","",1,"icon","reset",3,"matRippleCentered","matRippleUnbounded","click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"mat-slider",2),js("input",function(e){return t.changeOpacity(e.value)}),Ts(),Os(3,"span",3),wu(4),Ts(),Ts(),Os(5,"div",4),Os(6,"mat-icon",5),js("click",function(){return t.toggleVisibility()}),Ts(),Os(7,"mat-icon",6),js("click",function(){return t.toggleVisibility()}),Ts(),Os(8,"mat-icon",7),js("click",function(){return t.resetOpacity()}),wu(9,"refresh"),Ts(),Ts(),Ts()),2&e&&(Wo(2),au("disabled",!t.visible),Es("step",1)("min",0)("max",100)("value",t.opacity),Wo(2),xu("",t.opacity,"%"),Wo(2),au("hidden",t.visible),Es("matRippleCentered",!0)("matRippleUnbounded",!0),Wo(1),au("hidden",!t.visible),Es("matRippleCentered",!0)("matRippleUnbounded",!0),Wo(1),Es("matRippleCentered",!0)("matRippleUnbounded",!0))},directives:[OU,k_,rb],styles:["[_nghost-%COMP%]{height:2.25rem;display:flex;align-items:center;justify-content:space-between;border-radius:.1875rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%]{width:60%;display:flex;align-items:center;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .mat-slider-wrapper{top:1.125rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:not-allowed}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .opacity-value[_ngcontent-%COMP%]{width:1.5rem;margin-left:.5rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%]{display:flex;cursor:pointer!important}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .reset[_ngcontent-%COMP%]{margin-right:1rem;padding:.25rem;cursor:pointer;transition:.6s;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility[_ngcontent-%COMP%]{transition:.6s;cursor:pointer;padding:.25rem;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}(),Mq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,x_,MU,ob]]}),e}();function Iq(e,t){if(1&e&&(Os(0,"div",15),As(1,"youtube-player",16),Ts()),2&e){var n=Us(3);Wo(1),qs("videoId",n.videoID)}}function Rq(e,t){if(1&e&&(Os(0,"mat-expansion-panel",10),Os(1,"mat-expansion-panel-header"),Os(2,"h2",11),wu(3),Ts(),Ts(),Os(4,"div",12),As(5,"markdown",13),ks(6,Iq,2,1,"div",14),Ts(),Ts()),2&e){var n=Us(),i=n.index,r=n.$implicit;Es("expanded",0===i),Wo(3),ku(r.title),Wo(2),au("first",0===i),Es("data",r.content),Wo(1),Es("ngIf",0===i)}}function Dq(e,t){if(1&e&&(Os(0,"div",8),ks(1,Rq,7,6,"mat-expansion-panel",9),Ts()),2&e){var n=t.$implicit;Wo(1),Es("ngIf",n)}}var Nq=function(){var e=function(){function e(t,n){m(this,e),this.dialogRef=t,this.data=n,this.documentationContents=n.content||[],this.infoTitle=n.title||"",this.videoID=n.videoID}return b(e,[{key:"ngOnInit",value:function(){var e=document.createElement("script");e.src="https://www.youtube.com/iframe_api",document.body.appendChild(e)}},{key:"close",value:function(){var e,t=this;null===(e=document.getElementsByClassName("modal-animated")[0])||void 0===e||e.classList.add("modal-animate-fade-out"),setTimeout(function(){t.dialogRef.close()},250)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(FU),Ss(VU))},e.\u0275cmp=Et({type:e,selectors:[["ccf-info-dialog"]],decls:10,vars:2,consts:[[1,"rui-about","wrapper"],[1,"container"],[1,"close"],[1,"material-icons","close-icon",3,"click"],[1,"content"],["mat-dialog-title","",1,"title"],[1,"mat-typography","dialog-content"],["class","panel",4,"ngFor","ngForOf"],[1,"panel"],[3,"expanded",4,"ngIf"],[3,"expanded"],[1,"no-header-margin"],[1,"top-padding"],[1,"variable-binding",3,"data"],["class","video-player",4,"ngIf"],[1,"video-player"],[3,"videoId"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"div",2),Os(3,"mat-icon",3),js("click",function(){return t.close()}),wu(4,"clear"),Ts(),Ts(),Os(5,"div",4),Os(6,"h2",5),wu(7),Ts(),Os(8,"mat-dialog-content",6),ks(9,Dq,2,1,"div",7),Ts(),Ts(),Ts(),Ts()),2&e&&(Wo(7),ku(t.infoTitle),Wo(2),Es("ngForOf",t.documentationContents))},directives:[k_,XU,YU,Rh,Nh,fH,vH,xH,DH],styles:[".mat-dialog-container{padding:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:3rem;text-align:left}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:.875rem;line-height:1.5rem;margin-bottom:1rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .close[_ngcontent-%COMP%] .close-icon[_ngcontent-%COMP%]{float:right;cursor:pointer}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:1.5rem;margin-bottom:2.25rem;text-align:center}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:1rem;margin-top:0;margin-bottom:.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%]{margin-bottom:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .no-header-margin[_ngcontent-%COMP%]{font-weight:300;margin-bottom:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%]{display:flex}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] ul{margin-top:0;padding-left:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%]{height:50rem;min-height:10rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding[_ngcontent-%COMP%]{font-weight:300}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding.first[_ngcontent-%COMP%]{padding-right:3rem;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%]{position:relative;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%] iframe{width:100%;height:100%;max-height:17.5rem}"]}),e}(),Lq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,KU,x_,gH,FH,SH.forRoot({})]]}),e}(),jq=function(){var e=function(){function e(t){m(this,e),this.http=t,this.markdownContent=new tv([])}return b(e,[{key:"readMarkdown",value:function(){var e=this;this.http.get("assets/docs/README.md",{responseType:"text"}).subscribe(function(t){var n=e.parseMarkdown(t);e.markdownContent.next(n)})}},{key:"parseMarkdown",value:function(e){var t,n=[],i=_(e.split("# "));try{for(i.s();!(t=i.n()).done;){var r=t.value;if(r.length){var o=r.split("\n\n");n.push({title:o[0],content:o.splice(1).join("\n\n")})}}}catch(a){i.e(a)}finally{i.f()}return n}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(Yb))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac,providedIn:"root"}),e}(),Fq=function(){var e=function(){function e(t,n){var i=this;m(this,e),this.dialog=t,this.infoButtonService=n,this.infoTitle="",this.subscriptions=new G,this.subscriptions.add(n.markdownContent.subscribe(function(e){e.length&&i.launchInfoDialog(e)}))}return b(e,[{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"launchInfoDialog",value:function(e){this.dialog.open(Nq,{autoFocus:!1,panelClass:"modal-animated",width:"60rem",data:{title:this.infoTitle,content:e,videoID:this.videoID}})}},{key:"onDialogButtonClick",value:function(){this.infoButtonService.readMarkdown()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(WU),Ss(jq))},e.\u0275cmp=Et({type:e,selectors:[["ccf-info-button"]],inputs:{infoTitle:"infoTitle",videoID:"videoID"},decls:3,vars:0,consts:[[1,"info-button-wrapper"],["aria-hidden","false","aria-label","Page information",1,"ccf-info-button",3,"click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"mat-icon",1),js("click",function(){return t.onDialogButtonClick()}),wu(2," info "),Ts(),Ts())},directives:[k_],styles:[".info-button-wrapper[_ngcontent-%COMP%]{border-radius:.25rem;padding:.65rem;transition:.6s}.info-button-wrapper[_ngcontent-%COMP%] .ccf-info-button[_ngcontent-%COMP%]{cursor:pointer;transition:color .6s;font-size:1.5rem;vertical-align:sub}"]}),e}(),Bq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Lq,x_,s_]]}),e}(),Vq=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments)).optionCache=new Map,e}return b(n,[{key:"config$",get:function(){return this.state$.pipe(rf(function(e){return null!=e}),Cf(1))}},{key:"setConfig",value:function(e){this.setState(e)}},{key:"patchConfig",value:function(e){this.patchState(e)}},{key:"getProperty",value:function(e){return this.config$.pipe(gU.apply(void 0,v(e)),Yd(),Cf(1))}},{key:"getOption",value:function(){for(var e=arguments.length,t=new Array(e),n=0;n1&&void 0!==arguments[1]?arguments[1]:Qd,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:mU;return function(i){return i.lift(new yU(e,t,n.leading,n.trailing))}}(1e3),se(function(t){var n=e.clientWidth,i=e.clientHeight;return[t.clientX,t.clientY,n,i].join("_")})).subscribe(function(e){return t.event("webpage","mousemove",e)})}(t.body,n)};return e.\u0275fac=function(t){return new(t||e)(Ki(hh),Ki(xG))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}();function Uq(e,t){if(1&e){var n=Rs();Os(0,"button",1),js("click",function(){return gn(n),Us().submit(!0)}),wu(1),Ts()}if(2&e){var i=Us();Wo(1),xu(" ","not-set"===i.allowTelemetry?"I understand":"Opt in","\n")}}function Hq(e,t){if(1&e){var n=Rs();Os(0,"button",1),js("click",function(){return gn(n),Us().submit(!1)}),wu(1,"Opt out"),Ts()}}var Gq=function(){var e=function(){function e(t,n,i){m(this,e),this.consentService=n,this.data=i,this.clsName="ccf-tracking-popup",this.container=t.nativeElement}return b(e,[{key:"allowTelemetry",get:function(){return this.consentService.consent}},{key:"dismiss",value:function(){this.data.preClose()}},{key:"submit",value:function(e){this.consentService.setConsent(e?"given":"rescinded"),this.dismiss()}},{key:"showButton",value:function(e){var t=this.allowTelemetry;return"not-set"===t||("opt-in"===e?"rescinded"===t:"given"===t)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(CG),Ss(X_))},e.\u0275cmp=Et({type:e,selectors:[["ccf-tracking-popup"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},decls:4,vars:2,consts:[["mat-button","","color","basic",3,"click",4,"ngIf"],["mat-button","","color","basic",3,"click"]],template:function(e,t){1&e&&(Os(0,"p"),wu(1,"We log usage to improve this service."),Ts(),ks(2,Uq,2,1,"button",0),ks(3,Hq,2,0,"button",0)),2&e&&(Wo(2),Es("ngIf",t.showButton("opt-in")),Wo(1),Es("ngIf",t.showButton("opt-out")))},directives:[Nh,A_],styles:["[_nghost-%COMP%]{display:flex;align-items:center;min-width:400px;color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:9999}[_nghost-%COMP%] p[_ngcontent-%COMP%]{margin:24px}[_nghost-%COMP%] button[_ngcontent-%COMP%]{margin:1rem;min-width:6rem;background-color:#007cbe;display:flex;justify-content:center}"],changeDetection:0}),e}(),Wq=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_]]}),e}(),qq=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"forwardCall",value:function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;it?e[0]:void 0,max:e[1]0}),df(function(e){return function(e,t){return new J(function(n){var i,r;try{i=e()}catch(a){return void n.error(a)}try{r=t(i)}catch(a){return void n.error(a)}var o=(r?ge(r):gf).subscribe(n);return function(){o.unsubscribe(),i&&i.unsubscribe()}})}(function(){return i.createDatabase(e)},function(t){return i.connectDatabase(t,e)})}),se(function(e){return e.database}),Cf(1)),i}return b(n,[{key:"connectDatabase",value:function(e,t){return mw(this,void 0,void 0,regeneratorRuntime.mark(function n(){var i;return regeneratorRuntime.wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return i=!Zl(),n.next=3,e.database.connect(t,i);case 3:return n.abrupt("return",e);case 4:case"end":return n.stop()}},n)}))}}]),n}(qq);return e.\u0275fac=function(t){return new(t||e)(Ki(Vq))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),nX=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"createDatabase",value:function(e){return{database:new ZW(e),unsubscribe:function(){}}}}]),n}(tX);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac,providedIn:"root"}),t}(),iX=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"createDatabase",value:function(e){var t=this.createWorker(e),n=sq(t);return{database:n,unsubscribe:function(){n[tq](),t.terminate()}}}}]),n}(tX);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac}),t}(),rX=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this)).impl$=e.config$.pipe(function(e){return e},se(function(e){return r.selectToken(e)}),Yd(),se(function(e){return i.get(e)}),Cf(1)),r}return n}(qq);return e.\u0275fac=function(t){return new(t||e)(Ki(Vq),Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),oX=new Pi("Default theme class"),aX=function(){var e=function(){function e(t){m(this,e),this.defaultTheme=this.theme=null!=t?t:""}return b(e,[{key:"getTheme",value:function(){return this.theme}},{key:"setTheme",value:function(e){e!==this.theme&&(this.applyThemeClass(this.theme,"remove"),this.applyThemeClass(e),this.theme=e)}},{key:"resetTheme",value:function(){this.setTheme(this.defaultTheme)}},{key:"initialize",value:function(e,t){this.element=e,this.injector=t,this.applyThemeClass(this.getTheme())}},{key:"applyThemeClass",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"add",i=this.element,r=this.injector;if(e&&i&&r){var o=r.get(Qu,null);if(o){var a=i.nativeElement,s=null===(t=r.get(Tp,null))||void 0===t?void 0:t.getContainerElement(),u="add"===n?"addClass":"removeClass";o[u](a,e),s&&o[u](s,e)}}}}],[{key:"initialize",value:function(t){var n=t.injector,i=t.location;n.get(e).initialize(i,n)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(oX,8))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),sX={production:!0,disableDbWorker:!0,acceptableViewerDomains:["https://portal.hubmapconsortium.org","https://portal.test.hubmapconsortium.org"],dbOptions:{ccfOwlUrl:"assets/ccf.owl.n3store.json",ccfContextUrl:"https://hubmapconsortium.github.io/hubmap-ontology/ccf-context.jsonld",dataSources:["assets/kpmp/data/rui_locations.jsonld","assets/sparc/data/rui_locations.jsonld","assets/gtex/data/rui_locations.jsonld"],hubmapDataService:"search-api",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"https://search.api.hubmapconsortium.org/entities/search",hubmapAssetsUrl:"https://assets.hubmapconsortium.org",hubmapToken:null!==(Jq=localStorage.getItem("HUBMAP_TOKEN"))&&void 0!==Jq?Jq:"",useRemoteApi:!1,remoteApiEndpoint:"https://ccf-api--staging.herokuapp.com/v1"},customization:{theme:"hubmap",header:!0,homeUrl:"https://portal.hubmapconsortium.org/",logoTooltip:"Human BioMolecular Atlas Project"},googleAnalyticsToken:"portal.hubmapconsortium.org"===window.location.hostname?"G-1WRJHN9FM6":"G-J9HWV9QPJ4"},uX=["*",[["mat-toolbar-row"]]],cX=["*","mat-toolbar-row"],lX=qy(function(){return function e(t){m(this,e),this._elementRef=t}}()),hX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275dir=Mt({type:e,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),e}(),dX=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e))._platform=i,o._document=r,o}return b(n,[{key:"ngAfterViewInit",value:function(){var e=this;this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(function(){return e._checkToolbarMixedModes()}))}},{key:"_checkToolbarMixedModes",value:function(){}}]),n}(lX);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Mf),Ss(hh))},e.\u0275cmp=Et({type:e,selectors:[["mat-toolbar"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,hX,5),2&e)&&(cl(i=dl())&&(t._toolbarRows=i))},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(e,t){2&e&&au("mat-toolbar-multiple-rows",t._toolbarRows.length>0)("mat-toolbar-single-row",0===t._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[as],ngContentSelectors:cX,decls:2,vars:0,template:function(e,t){1&e&&(Gs(uX),Ws(0),Ws(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),e}(),fX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy],Gy]}),e}(),pX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,fX,fw]]}),e}(),vX=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){var r;return m(this,n),(r=t.call(this,e)).locator=i,r}return b(n,[{key:"createWorker",value:function(e){var t=this.getWorkerUrl(!0);return new Worker(t,{type:"module"})}},{key:"getWorkerUrl",value:function(e){if(e)return new URL(r(88509),r.b);var t=this.locator.prepareExternalUrl("0-es2015.worker.js"),n=new Blob(["importScripts('".concat(t,"')")],{type:"application/javascript"});return URL.createObjectURL(n)}}]),n}(iX);return e.\u0275fac=function(t){return new(t||e)(Ki(Vq),Ki(_h))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac,providedIn:"root"}),e}(),gX=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"selectToken",value:function(e){var t=e.useRemoteApi,n=e.remoteApiEndpoint;return t&&n?eX:"undefined"==typeof Worker||sX.disableDbWorker?nX:vX}}]),n}(rX);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275prov=Ye({token:t,factory:t.\u0275fac,providedIn:"root"}),t}(),mX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:Sl,useValue:aX.initialize,multi:!0},aX]}),e}(),yX=function(){var e=function(){function e(t,n){m(this,e),this.accessor=t,this.injector=n}return b(e,null,[{key:"forRoot",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return{ngModule:e,providers:[ZH,QH,KH].concat(v(t))}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(ZH,2),Ki(QH,2))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),bX=function(e,t){return function(e,t){return new Array(t+1).join("0")}(0,t-e.toString().length)+e},_X=function(){function e(t,n,i){m(this,e),this.action=t,this.store=n,this.logWriter=i}return b(e,[{key:"dispatched",value:function(e){var t=yB(this.action),n=function(e){return bX(e.getHours(),2)+":"+bX(e.getMinutes(),2)+":"+bX(e.getSeconds(),2)+"."+bX(e.getMilliseconds(),3)}(new Date);this.logWriter.startGroup("action ".concat(t," @ ").concat(n)),this._hasPayload(this.action)&&this.logWriter.logGrey("payload",Object.assign({},this.action)),this.logWriter.logGrey("prev state",e)}},{key:"completed",value:function(e){this.logWriter.logGreen("next state",e),this.logWriter.endGroup()}},{key:"errored",value:function(e){this.logWriter.logRedish("next state after error",this.store.snapshot()),this.logWriter.logRedish("error",e),this.logWriter.endGroup()}},{key:"_hasPayload",value:function(e){return this._getNonEmptyProperties(e).length>0}},{key:"_getNonEmptyProperties",value:function(e){return Object.keys(e).map(function(t){return e[t]}).filter(function(e){return void 0!==e})}}]),e}(),wX=function(){function e(t){m(this,e),this.options=t,this.options=this.options||{},this.logger=t.logger||console}return b(e,[{key:"startGroup",value:function(e){var t=this.options.collapsed?this.logger.groupCollapsed:this.logger.group;try{t.call(this.logger,e)}catch(n){console.log(e)}}},{key:"endGroup",value:function(){try{this.logger.groupEnd()}catch(e){this.logger.log("\u2014\u2014 log end \u2014\u2014")}}},{key:"logGrey",value:function(e,t){this.log(e,"color: #9E9E9E; font-weight: bold",t)}},{key:"logGreen",value:function(e,t){this.log(e,"color: #4CAF50; font-weight: bold",t)}},{key:"logRedish",value:function(e,t){this.log(e,"color: #FD8182; font-weight: bold",t)}},{key:"log",value:function(e,t,n){this.isIE()?this.logger.log(e,n):this.logger.log("%c "+e,t,n)}},{key:"isIE",value:function(){var e="undefined"!=typeof window&&window.navigator.userAgent?window.navigator.userAgent:"",t=!1,n=e.indexOf("MSIE "),i=e.indexOf("Trident/");return(n>-1||i>-1)&&(t=!0),t}}]),e}(),kX=new Pi("NGXS_LOGGER_PLUGIN_OPTIONS"),xX=function(){var e=function(){function e(t,n){m(this,e),this._options=t,this._injector=n}return b(e,[{key:"handle",value:function(e,t,n){if(this._options.disabled||!this._options.filter(t,e))return n(e,t);this._logWriter=this._logWriter||new wX(this._options),this._store=this._store||this._injector.get(WB);var i=new _X(t,this._store,this._logWriter);return i.dispatched(e),n(e,t).pipe(iv(function(e){i.completed(e)}),kb(function(e){throw i.errored(e),e}))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(kX),Ki(rs))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac}),e}(),SX=new Pi("LOGGER_USER_OPTIONS");function EX(e){return Object.assign({},{logger:console,collapsed:!1,disabled:!1,filter:function(){return!0}},e)}var CX=function(){var e=function(){function e(){m(this,e)}return b(e,null,[{key:"forRoot",value:function(t){return{ngModule:e,providers:[{provide:lB,useClass:xX,multi:!0},{provide:SX,useValue:t},{provide:kX,useFactory:EX,deps:[SX]}]}}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),OX=new RegExp("[^#a-f\\d]","gi"),TX=new RegExp("^#?[a-f\\d]{3}[a-f\\d]?$|^#?[a-f\\d]{6}([a-f\\d]{2})?$","i"),AX=["#FF8800","#2979ff","#ffd740","#b92dff","#da326f","#7323e2","#acf32b","#82B1FF","#E040FB","#00E5FF"].map(function(e,t){var n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("string"!=typeof e||OX.test(e)||!TX.test(e))throw new TypeError("Expected a valid hex string");var n=1;8===(e=e.replace(/^#/,"")).length&&(n=Number.parseInt(e.slice(6,8),16)/255,e=e.slice(0,6)),4===e.length&&(n=Number.parseInt(e.slice(3,4).repeat(2),16)/255,e=e.slice(0,3)),3===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);var i=Number.parseInt(e,16),r=i>>16,o=i>>8&255,a=255&i,s="number"==typeof t.alpha?t.alpha:n;return"array"===t.format?[r,o,a,s]:"css"===t.format?"rgb(".concat(r," ").concat(o," ").concat(a).concat(1===s?"":" / ".concat(Number((100*s).toFixed(2)),"%"),")"):{red:r,green:o,blue:a,alpha:s}}(e,{format:"array"});return n[3]=255,{color:e,rgba:n,rank:t}}),PX=function(e){a(n,e);var t=s(n);function n(){var e;return m(this,n),(e=t.apply(this,arguments)).forcedUnassignment=new re,e.forcedUnassignment$=e.forcedUnassignment.asObservable(),e.colorAssignments$=e.state$.pipe(gU("colorAssignments"),Yd()),e.colorAssignmentsList$=e.state$.pipe(gU("colorAssignmentsList"),Yd()),e}return b(n,[{key:"getColor",value:function(e){return this.snapshot.colorAssignments[e]}},{key:"assignColor",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=this.snapshot,i=n.colorAssignments,r=n.colorAssignmentsList,o=n.colorsAvailable;t&&(o=this.snapshot.colorPalette.concat(),r=[],i={});var a=i[e];return a||(o.length>0?a=o[0]:(a=r[r.length-1].color,r=r.slice(0,-1),this.forcedUnassignment.next()),o=o.filter(function(e){return e.color!==a.color}),i=(r=[{color:a,key:e}].concat(r)).reduce(function(e,t,n){return e[t.key]=Object.assign(Object.assign({},t.color),{rank:n}),e},{}),this.ctx.patchState({colorsAvailable:o,colorAssignments:i,colorAssignmentsList:r})),a}},{key:"unassignColor",value:function(e){var t=this.snapshot,n=t.colorAssignments,i=t.colorAssignmentsList,r=t.colorsAvailable,o=n[e];o&&(r=[o].concat(r),n=(i=i.filter(function(e){return e.color.color!==o.color})).reduce(function(e,t,n){return e[t.key]=Object.assign(Object.assign({},t.color),{rank:n}),e},{}),this.ctx.patchState({colorsAvailable:r,colorAssignments:n,colorAssignmentsList:i}))}}]),n}(yG);function MX(e,t){return function(n){return n.lift(new IX(e,t))}}PX.\u0275fac=function(){var e;return function(t){return(e||(e=Ei(PX)))(t||PX)}}(),PX.\u0275prov=Ye({token:PX,factory:PX.\u0275fac}),pw([fG(),vw(0,pG("key")),vw(1,pG("doReset"))],PX.prototype,"assignColor",null),pw([fG(),vw(0,pG("key"))],PX.prototype,"unassignColor",null),PX=pw([vG(),JB({name:"colors",defaults:{colorPalette:AX.concat(),colorsAvailable:AX.concat(),colorAssignments:{},colorAssignmentsList:[]}})],PX);var IX=function(){function e(t,n){m(this,e),this.keySelector=t,this.flushes=n}return b(e,[{key:"call",value:function(e,t){return t.subscribe(new RX(e,this.keySelector,this.flushes))}}]),e}(),RX=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this,e)).keySelector=i,o.values=new Set,r&&o.add(be(r,new me(c(o)))),o}return b(n,[{key:"notifyNext",value:function(){this.values.clear()}},{key:"notifyError",value:function(e){this._error(e)}},{key:"_next",value:function(e){this.keySelector?this._useKeySelector(e):this._finalizeNext(e,e)}},{key:"_useKeySelector",value:function(e){var t,n=this.destination;try{t=this.keySelector(e)}catch(i){return void n.error(i)}this._finalizeNext(t,e)}},{key:"_finalizeNext",value:function(e,t){var n=this.values;n.has(e)||(n.add(e),this.destination.next(t))}}]),n}(ye),DX={sex:"Both",ageRange:[1,110],bmiRange:[13,83],tmc:[],technologies:[],ontologyTerms:["http://purl.obolibrary.org/obo/UBERON_0013702"],cellTypeTerms:["http://purl.obolibrary.org/obo/CL_0000000"]},NX=(function(e){e.Running="running",e.Completed="completed"}(NX||(NX={})),NX);function LX(e){return function(){return e.next(NX.Completed)}}function jX(e,t){return function(n){return n.pipe(df(e),iv(t),IG(1),Ce())}}var FX=function(e){a(n,e);var t=s(n);function n(e){var i;return m(this,n),(i=t.call(this)).source=e,i._tissueBlockDataQueryStatus$=new Sf(1),i._aggregateDataQueryStatus$=new Sf(1),i._ontologyTermOccurencesDataQueryStatus$=new Sf(1),i._cellTypeTermOccurencesDataQueryStatus$=new Sf(1),i._sceneDataQueryStatus$=new Sf(1),i._technologyFilterQueryStatus$=new Sf(1),i._providerFilterQueryStatus$=new Sf(1),i.ontologyTermsFullData$=new Sf(1),i.cellTypeTermsFullData$=new Sf(1),i.filter$=i.state$.pipe(gU("filter")),i.tissueBlockData$=i.filter$.pipe(jX(i.tissueBlockData,LX(i._tissueBlockDataQueryStatus$))),i.aggregateData$=i.filter$.pipe(jX(i.aggregateData,LX(i._aggregateDataQueryStatus$))),i.ontologyTermOccurencesData$=i.filter$.pipe(jX(i.ontologyTermOccurencesData,LX(i._ontologyTermOccurencesDataQueryStatus$))),i.cellTypeTermOccurencesData$=i.filter$.pipe(jX(i.cellTypeTermOccurencesData,LX(i._cellTypeTermOccurencesDataQueryStatus$))),i.sceneData$=i.filter$.pipe(jX(i.sceneData,LX(i._sceneDataQueryStatus$))),i.technologyFilterData$=i.filter$.pipe(jX(i.technologyFilterData,LX(i._technologyFilterQueryStatus$))),i.providerFilterData$=i.filter$.pipe(jX(i.providerFilterData,LX(i._providerFilterQueryStatus$))),i.tissueBlockDataQueryStatus$=i._tissueBlockDataQueryStatus$.pipe(MX()),i.aggregateDataQueryStatus$=i._aggregateDataQueryStatus$.pipe(MX()),i.ontologyTermOccurencesDataQueryStatus$=i._ontologyTermOccurencesDataQueryStatus$.pipe(MX()),i.cellTypeTermOccurencesDataQueryStatus$=i._cellTypeTermOccurencesDataQueryStatus$.pipe(MX()),i.sceneDataQueryStatus$=i._sceneDataQueryStatus$.pipe(MX()),i.technologyFilterQueryStatus$=i._technologyFilterQueryStatus$.pipe(MX()),i.providerFilterQueryStatus$=i._providerFilterQueryStatus$.pipe(MX()),i.queryStatus$=L_([i.tissueBlockDataQueryStatus$,i.aggregateDataQueryStatus$,i.ontologyTermOccurencesDataQueryStatus$,i.cellTypeTermOccurencesDataQueryStatus$,i.sceneDataQueryStatus$,i.technologyFilterQueryStatus$,i.providerFilterQueryStatus$]).pipe(se(function(e){return function(e){return e.every(function(e){return e===NX.Completed})}(e)?NX.Completed:NX.Running}),MX()),i._tissueBlockDataQueryStatus$.next(NX.Completed),i._aggregateDataQueryStatus$.next(NX.Completed),i._ontologyTermOccurencesDataQueryStatus$.next(NX.Completed),i._cellTypeTermOccurencesDataQueryStatus$.next(NX.Completed),i._sceneDataQueryStatus$.next(NX.Completed),i._technologyFilterQueryStatus$.next(NX.Completed),i._providerFilterQueryStatus$.next(NX.Completed),i}return b(n,[{key:"ngxsOnInit",value:function(){var e=this.ontologyTermsFullData$,t=this.ontologyTermOccurencesData$,n=this.cellTypeTermsFullData$,i=this.cellTypeTermOccurencesData$,r=this.source;this.snapshot.filter===DX?(t.pipe(op(1)).subscribe(e),i.pipe(op(1)).subscribe(n)):(r.getOntologyTermOccurences().pipe(op(1)).subscribe(e),r.getCellTypeTermOccurences().pipe(op(1)).subscribe(n))}},{key:"updateFilter",value:function(e){this.patchState({filter:Object.assign(Object.assign({},this.getState().filter),e)})}},{key:"tissueBlockData",value:function(e){return this._tissueBlockDataQueryStatus$.next(NX.Running),this.source.getTissueBlockResults(e)}},{key:"aggregateData",value:function(e){return this._aggregateDataQueryStatus$.next(NX.Running),this.source.getAggregateResults(e)}},{key:"ontologyTermOccurencesData",value:function(e){return this._ontologyTermOccurencesDataQueryStatus$.next(NX.Running),this.source.getOntologyTermOccurences(e)}},{key:"cellTypeTermOccurencesData",value:function(e){return this._cellTypeTermOccurencesDataQueryStatus$.next(NX.Running),this.source.getCellTypeTermOccurences(e)}},{key:"sceneData",value:function(e){return this._sceneDataQueryStatus$.next(NX.Running),this.source.getScene(e)}},{key:"technologyFilterData",value:function(){return this._technologyFilterQueryStatus$.next(NX.Running),this.source.getDatasetTechnologyNames()}},{key:"providerFilterData",value:function(){return this._providerFilterQueryStatus$.next(NX.Running),this.source.getProviderNames()}}]),n}(mG);FX.\u0275fac=function(e){return new(e||FX)(Ki(Xq))},FX.\u0275prov=Ye({token:FX,factory:FX.\u0275fac}),pw([fG(),vw(0,pG("filter"))],FX.prototype,"updateFilter",null),pw([CF.ak],FX.prototype,"tissueBlockData",null),pw([CF.ak],FX.prototype,"aggregateData",null),pw([CF.ak],FX.prototype,"ontologyTermOccurencesData",null),pw([CF.ak],FX.prototype,"cellTypeTermOccurencesData",null),pw([CF.ak],FX.prototype,"sceneData",null),pw([CF.ak],FX.prototype,"technologyFilterData",null),pw([CF.ak],FX.prototype,"providerFilterData",null),FX=pw([vG(),JB({name:"data",defaults:{filter:DX}})],FX);var BX=[{name:"bladder",namespace:"app",url:"assets/icons/organs/ico-organs-bladder.svg"},{name:"blood",namespace:"app",url:"assets/icons/organs/ico-organs-blood.svg"},{name:"bone-marrow",namespace:"app",url:"assets/icons/organs/ico-organs-bone-marrow.svg"},{name:"brain",namespace:"app",url:"assets/icons/organs/ico-organs-brain.svg"},{name:"eye",namespace:"app",url:"assets/icons/organs/ico-organs-eye.svg"},{name:"fallopian-tube-left",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-left.svg"},{name:"fallopian-tube-right",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-right.svg"},{name:"heart",namespace:"app",url:"assets/icons/organs/ico-organs-heart.svg"},{name:"kidney-left",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-left.svg"},{name:"kidney-right",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-right.svg"},{name:"kidney",namespace:"app",url:"assets/icons/organs/ico-organs-kidney.svg"},{name:"knee",namespace:"app",url:"assets/icons/organs/ico-organs-knee.svg"},{name:"large-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-large-intestine.svg"},{name:"liver",namespace:"app",url:"assets/icons/organs/ico-organs-liver.svg"},{name:"lung-left",namespace:"app",url:"assets/icons/organs/ico-organs-lung-left.svg"},{name:"lung-right",namespace:"app",url:"assets/icons/organs/ico-organs-lung-right.svg"},{name:"lung",namespace:"app",url:"assets/icons/organs/ico-organs-lung.svg"},{name:"lymph-nodes",namespace:"app",url:"assets/icons/organs/ico-organs-lymph-nodes.svg"},{name:"neuron",namespace:"app",url:"assets/icons/organs/ico-organs-neuron.svg"},{name:"ovaries",namespace:"app",url:"assets/icons/organs/ico-organs-ovaries.svg"},{name:"ovary-left",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-left.svg"},{name:"ovary-right",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-right.svg"},{name:"pancreas",namespace:"app",url:"assets/icons/organs/ico-organs-pancreas.svg"},{name:"pelvis-f",namespace:"app",url:"assets/icons/organs/ico-organs-pelvis-f.svg"},{name:"prostate",namespace:"app",url:"assets/icons/organs/ico-organs-prostate.svg"},{name:"skin",namespace:"app",url:"assets/icons/organs/ico-organs-skin.svg"},{name:"small-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-small intestine.svg"},{name:"spleen",namespace:"app",url:"assets/icons/organs/ico-organs-spleen.svg"},{name:"stomach",namespace:"app",url:"assets/icons/organs/ico-organs-stomach.svg"},{name:"thymus",namespace:"app",url:"assets/icons/organs/ico-organs-thymus.svg"},{name:"ureter-left",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-left.svg"},{name:"ureter-right",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-right.svg"},{name:"uterus",namespace:"app",url:"assets/icons/organs/ico-organs-uterus.svg"},{name:"vasculature-thick",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thick.svg"},{name:"vasculature-thin",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thin.svg"},{name:"opacity",namespace:"app",url:"assets/icons/opacity-24px.svg"},{name:"visibility_on",namespace:"app",url:"assets/icons/visibility-on-24px.svg"},{name:"visibility_off",namespace:"app",url:"assets/icons/visibility-off-24px.svg"},{name:"expand_more",namespace:"app",url:"assets/icons/expand_more-24px.svg"},{name:"expand_less",namespace:"app",url:"assets/icons/expand_less-24px.svg"},{name:"filter",url:"assets/icons/filter.svg"}],VX=function(e){a(n,e);var t=s(n);function n(e,i){var r;m(this,n),(r=t.call(this)).registry=e;var o,a=_(BX);try{for(a.s();!(o=a.n()).done;){var s=o.value,u=s.name,c=s.namespace,l=s.url,h=s.html,d={name:u,namespace:c,url:l&&i.bypassSecurityTrustResourceUrl(l),html:h&&i.bypassSecurityTrustHtml(h)};r.registerIconImpl(d)}}catch(f){a.e(f)}finally{a.f()}return r}return b(n,[{key:"registerIcon",value:function(e){return this.registerIconImpl(e)}},{key:"registerIconImpl",value:function(e){if(!this.registry||!e.url&&!e.html)return!1;var t=this.registry,n=t[this.getMethodName(e)],i=this.getArguments(e);if(!n)return!1;try{return n.apply(t,i),!0}catch(r){return!1}}},{key:"getMethodName",value:function(e){var t=e.name,n=e.namespace,i=e.url,r=["addSvgIcon"];return t||r.push("Set"),i||r.push("Literal"),n&&r.push("InNamespace"),r.join("")}},{key:"getArguments",value:function(e){var t=e.name,n=e.namespace,i=e.url,r=e.html;return[n,t,null!=i?i:r].filter(function(e){return!!e})}}]),n}(mG);VX.\u0275fac=function(e){return new(e||VX)(Ki(f_,8),Ki(Ed))},VX.\u0275prov=Ye({token:VX,factory:VX.\u0275fac}),pw([fG()],VX.prototype,"registerIcon",null),VX=pw([vG(),JB({name:"iconRegistry"})],VX);var zX=function(n){a(r,n);var i=s(r);function r(e,t){var n;return m(this,r),(n=i.call(this)).dataService=e,n.injector=t,n.listResults$=n.state$.pipe(gU("listResults"),Yd()),n.highlightedNodeId$=n.state$.pipe(gU("highlightedNodeId"),Yd()),n}return b(r,[{key:"setListResults",value:function(e){this.ctx.patchState({listResults:e})}},{key:"selectListResult",value:function(e){this.colorAssignments.assignColor(e.tissueBlock.spatialEntityId)}},{key:"deselectListResult",value:function(e){this.colorAssignments.unassignColor(e.tissueBlock.spatialEntityId)}},{key:"highlightNode",value:function(e){this.ctx.patchState({highlightedNodeId:e})}},{key:"unHighlightNode",value:function(){this.ctx.patchState({highlightedNodeId:void 0})}},{key:"ngxsOnInit",value:function(){var n=this;e(p(r.prototype),"ngxsOnInit",this).call(this),this.dataState=this.injector.get(FX),this.colorAssignments=this.injector.get(PX),L_([this.dataState.tissueBlockData$,this.colorAssignments.colorAssignments$]).pipe(se(function(e){var n,i=t(e,2),r=i[0],o=i[1],a=[],s=[],u=_(r);try{for(u.s();!(n=u.n()).done;){var c=n.value,l=o[c.spatialEntityId];l?a.push({selected:!0,color:l.color,tissueBlock:c,rank:l.rank}):s.push({selected:!1,tissueBlock:c})}}catch(h){u.e(h)}finally{u.f()}return(0,QG.sortBy)(a,["rank"]).concat(s)}),iv(function(e){return n.setListResults(e)})).subscribe()}}]),r}(yG);zX.\u0275fac=function(e){return new(e||zX)(Ki(Xq),Ki(rs))},zX.\u0275prov=Ye({token:zX,factory:zX.\u0275fac}),pw([fG(),vw(0,pG("listResults"))],zX.prototype,"setListResults",null),zX=pw([vG(),JB({name:"listResults",defaults:{listResults:[]}})],zX);var UX=new Set(["Skin","Heart","Kidney","Spleen"]),HX=function(n){a(r,n);var i=s(r);function r(e,t){var n;return m(this,r),(n=i.call(this)).dataService=e,n.injector=t,n.referenceOrgans$=n.state$.pipe(gU("referenceOrgans"),Yd()),n.selectedReferenceOrgans$=n.state$.pipe(gU("selectedReferenceOrgans"),Yd()),n.scene$=n.state$.pipe(gU("scene"),Yd()),n.highlightedId$=n.state$.pipe(gU("highlightedId"),Yd()),n}return b(r,[{key:"setSelectedReferenceOrgans",value:function(e){this.ctx.patchState({selectedReferenceOrgans:e})}},{key:"setReferenceOrgans",value:function(e){this.ctx.patchState({referenceOrgans:e})}},{key:"setScene",value:function(e){this.ctx.patchState({scene:e})}},{key:"sceneNodeClicked",value:function(e){var t=e.node,n=e.ctrlClick;t.representation_of&&"http://purl.org/ccf/latest/ccf.owl#VHFSkin"!==t["@id"]&&t.entityId?this.dataState.updateFilter({ontologyTerms:[t.representation_of]}):t.entityId&&this.colorAssignments.assignColor(t["@id"],!n)}},{key:"sceneNodeHovered",value:function(e){this.listResults.highlightNode(e["@id"])}},{key:"sceneNodeUnhover",value:function(){this.listResults.unHighlightNode()}},{key:"ngxsOnInit",value:function(){var n=this;e(p(r.prototype),"ngxsOnInit",this).call(this),this.dataState=this.injector.get(FX),this.colorAssignments=this.injector.get(PX),this.listResults=this.injector.get(zX),this.dataService.getReferenceOrgans().pipe(se(function(e){var t=new Set(e.map(function(e){return e.representation_of}));return Cq.filter(function(e){return t.has(e.id)}).map(function(e){return Object.assign(Object.assign({},e),{disabled:!1,numResults:0})})}),op(1),iv(function(e){n.setReferenceOrgans(e),n.setSelectedReferenceOrgans(e.filter(function(e){return UX.has(e.organ)}))})).subscribe(),L_([this.dataState.sceneData$,this.selectedReferenceOrgans$,this.colorAssignments.colorAssignments$,this.dataService.getReferenceOrgans(),this.listResults.highlightedNodeId$]).pipe(se(function(e){var n=t(e,5),i=n[0],r=n[1],o=n[2],a=n[3],s=n[4],u=new Set(r.map(function(e){return e.id})),c=new Set(a.filter(function(e){return u.has(e.representation_of)}).map(function(e){return e["@id"]}));return i.filter(function(e){var t,n;return(null===(n=null===(t=e.ccf_annotations)||void 0===t?void 0:t.some)||void 0===n?void 0:n.call(t,function(e){return u.has(e)}))||e.reference_organ&&c.has(e.reference_organ)}).map(function(e){return e.entityId&&(Object.prototype.hasOwnProperty.call(o,e["@id"])||s===e["@id"])?Object.assign(Object.assign({},e),{color:s===e["@id"]?[30,136,229,255]:o[e["@id"]].rgba}):e})}),iv(function(e){return n.setScene(e)})).subscribe()}}]),r}(yG);HX.\u0275fac=function(e){return new(e||HX)(Ki(Xq),Ki(rs))},HX.\u0275prov=Ye({token:HX,factory:HX.\u0275fac}),pw([fG(),vw(0,pG("selectedReferenceOrgans"))],HX.prototype,"setSelectedReferenceOrgans",null),pw([fG(),vw(0,pG("referenceOrgans"))],HX.prototype,"setReferenceOrgans",null),pw([fG(),vw(0,pG("scene"))],HX.prototype,"setScene",null),HX=pw([vG(),JB({name:"scene",defaults:{scene:[],referenceOrgans:[],selectedReferenceOrgans:[],selectedAnatomicalStructures:[],anatomicalStructureSettings:{}}})],HX);var GX=[Vq,PX,VX,zX,FX,HX],WX=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[yX.forRoot(),ZB.forRoot(GX,{developmentMode:!sX.production}),CX.forRoot({disabled:sX.production})]]}),e}(),qX=function(){var e=function e(t){if(m(this,e),t)throw new Error("The core module should only be imported once in the root module")};return e.\u0275fac=function(t){return new(t||e)(Ki(e,12))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:Xq,useExisting:gX}],imports:[[s_,MG.forRoot({gaToken:sX.googleAnalyticsToken,appName:"eui"}),zq,HG.forRoot(function(){return new zG({basePath:sX.dbOptions.remoteApiEndpoint})}),pX,WX,mX],pX]}),e}(),XX=["input"],YX=function(e){return{enterDuration:e}},KX=["*"],$X=new Pi("mat-checkbox-default-options",{providedIn:"root",factory:QX});function QX(){return{color:"accent",clickAction:"check-indeterminate"}}var ZX=0,JX={color:"accent",clickAction:"check-indeterminate"},eY={provide:nV,useExisting:ze(function(){return iY}),multi:!0},tY=function e(){m(this,e)},nY=Yy(qy(Xy(Wy(function(){return function e(t){m(this,e),this._elementRef=t}}())))),iY=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u){var c;return m(this,n),(c=t.call(this,e))._changeDetectorRef=i,c._focusMonitor=r,c._ngZone=o,c._animationMode=s,c._options=u,c.ariaLabel="",c.ariaLabelledby=null,c._uniqueId="mat-checkbox-"+ ++ZX,c.id=c._uniqueId,c.labelPosition="after",c.name=null,c.change=new Qc,c.indeterminateChange=new Qc,c._onTouched=function(){},c._currentAnimationClass="",c._currentCheckState=0,c._controlValueAccessorChangeFn=function(){},c._checked=!1,c._disabled=!1,c._indeterminate=!1,c._options=c._options||JX,c.color=c.defaultColor=c._options.color||JX.color,c.tabIndex=parseInt(a)||0,c}return b(n,[{key:"inputId",get:function(){return"".concat(this.id||this._uniqueId,"-input")}},{key:"required",get:function(){return this._required},set:function(e){this._required=Pd(e)}},{key:"ngAfterViewInit",value:function(){var e=this;this._focusMonitor.monitor(this._elementRef,!0).subscribe(function(t){t||Promise.resolve().then(function(){e._onTouched(),e._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}},{key:"ngAfterViewChecked",value:function(){}},{key:"ngOnDestroy",value:function(){this._focusMonitor.stopMonitoring(this._elementRef)}},{key:"checked",get:function(){return this._checked},set:function(e){e!=this.checked&&(this._checked=e,this._changeDetectorRef.markForCheck())}},{key:"disabled",get:function(){return this._disabled},set:function(e){var t=Pd(e);t!==this.disabled&&(this._disabled=t,this._changeDetectorRef.markForCheck())}},{key:"indeterminate",get:function(){return this._indeterminate},set:function(e){var t=e!=this._indeterminate;this._indeterminate=Pd(e),t&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}},{key:"_isRippleDisabled",value:function(){return this.disableRipple||this.disabled}},{key:"_onLabelTextChange",value:function(){this._changeDetectorRef.detectChanges()}},{key:"writeValue",value:function(e){this.checked=!!e}},{key:"registerOnChange",value:function(e){this._controlValueAccessorChangeFn=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e}},{key:"_getAriaChecked",value:function(){return this.checked?"true":this.indeterminate?"mixed":"false"}},{key:"_transitionCheckState",value:function(e){var t=this._currentCheckState,n=this._elementRef.nativeElement;if(t!==e&&(this._currentAnimationClass.length>0&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(t,e),this._currentCheckState=e,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);var i=this._currentAnimationClass;this._ngZone.runOutsideAngular(function(){setTimeout(function(){n.classList.remove(i)},1e3)})}}},{key:"_emitChangeEvent",value:function(){var e=new tY;e.source=this,e.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(e),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}},{key:"toggle",value:function(){this.checked=!this.checked}},{key:"_onInputClick",value:function(e){var t,n=this,i=null===(t=this._options)||void 0===t?void 0:t.clickAction;e.stopPropagation(),this.disabled||"noop"===i?!this.disabled&&"noop"===i&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==i&&Promise.resolve().then(function(){n._indeterminate=!1,n.indeterminateChange.emit(n._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}},{key:"focus",value:function(e,t){e?this._focusMonitor.focusVia(this._inputElement,e,t):this._inputElement.nativeElement.focus(t)}},{key:"_onInteractionEvent",value:function(e){e.stopPropagation()}},{key:"_getAnimationClassForCheckStateTransition",value:function(e,t){if("NoopAnimations"===this._animationMode)return"";var n="";switch(e){case 0:if(1===t)n="unchecked-checked";else{if(3!=t)return"";n="unchecked-indeterminate"}break;case 2:n=1===t?"unchecked-checked":"unchecked-indeterminate";break;case 1:n=2===t?"checked-unchecked":"checked-indeterminate";break;case 3:n=1===t?"indeterminate-checked":"indeterminate-unchecked"}return"mat-checkbox-anim-".concat(n)}},{key:"_syncIndeterminate",value:function(e){var t=this._inputElement;t&&(t.nativeElement.indeterminate=e)}}]),n}(nY);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(_c),Ss(Gv),Ss(Bl),Oi("tabindex"),Ss(Dy,8),Ss($X,8))},e.\u0275cmp=Et({type:e,selectors:[["mat-checkbox"]],viewQuery:function(e,t){var n;(1&e&&(ll(XX,5),ll(rb,5)),2&e)&&(cl(n=dl())&&(t._inputElement=n.first),cl(n=dl())&&(t.ripple=n.first))},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(e,t){2&e&&(Cu("id",t.id),bs("tabindex",null),au("mat-checkbox-indeterminate",t.indeterminate)("mat-checkbox-checked",t.checked)("mat-checkbox-disabled",t.disabled)("mat-checkbox-label-before","before"==t.labelPosition)("_mat-animation-noopable","NoopAnimations"===t._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",labelPosition:"labelPosition",name:"name",required:"required",checked:"checked",disabled:"disabled",indeterminate:"indeterminate",ariaDescribedby:["aria-describedby","ariaDescribedby"],value:"value"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[Uu([eY]),as],ngContentSelectors:KX,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(e,t){if(1&e&&(Gs(),Os(0,"label",0,1),Os(2,"span",2),Os(3,"input",3,4),js("change",function(e){return t._onInteractionEvent(e)})("click",function(e){return t._onInputClick(e)}),Ts(),Os(5,"span",5),As(6,"span",6),Ts(),As(7,"span",7),Os(8,"span",8),Gn(),Os(9,"svg",9),As(10,"path",10),Ts(),dn.lFrame.currentNamespace=null,As(11,"span",11),Ts(),Ts(),Os(12,"span",12,13),js("cdkObserveContent",function(){return t._onLabelTextChange()}),Os(14,"span",14),wu(15,"\xa0"),Ts(),Ws(16),Ts(),Ts()),2&e){var n=xs(1),i=xs(13);bs("for",t.inputId),Wo(2),au("mat-checkbox-inner-container-no-side-margin",!i.textContent||!i.textContent.trim()),Wo(1),Es("id",t.inputId)("required",t.required)("checked",t.checked)("disabled",t.disabled)("tabIndex",t.tabIndex),bs("value",t.value)("name",t.name)("aria-label",t.ariaLabel||null)("aria-labelledby",t.ariaLabelledby)("aria-checked",t._getAriaChecked())("aria-describedby",t.ariaDescribedby),Wo(2),Es("matRippleTrigger",n)("matRippleDisabled",t._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Wc(19,YX,"NoopAnimations"===t._animationMode?0:150))}},directives:[rb,vv],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),e}(),rY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),oY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[ob,Gy,gv,rY],Gy,rY]}),e}(),aY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,oY]]}),e}(),sY=["trigger"],uY=["panel"];function cY(e,t){if(1&e&&(Os(0,"span",8),wu(1),Ts()),2&e){var n=Us();Wo(1),ku(n.placeholder)}}function lY(e,t){if(1&e&&(Os(0,"span",12),wu(1),Ts()),2&e){var n=Us(2);Wo(1),ku(n.triggerValue)}}function hY(e,t){1&e&&Ws(0,0,["*ngSwitchCase","true"])}function dY(e,t){1&e&&(Os(0,"span",9),ks(1,lY,2,1,"span",10),ks(2,hY,1,0,"ng-content",11),Ts()),2&e&&(Es("ngSwitch",!!Us().customTrigger),Wo(2),Es("ngSwitchCase",!0))}function fY(e,t){if(1&e){var n=Rs();Os(0,"div",13),Os(1,"div",14,15),js("@transformPanel.done",function(e){return gn(n),Us()._panelDoneAnimatingStream.next(e.toState)})("keydown",function(e){return gn(n),Us()._handleKeydown(e)}),Ws(3,1),Ts(),Ts()}if(2&e){var i=Us();Es("@transformPanelWrap",void 0),Wo(1),Eu("mat-select-panel ",i._getPanelTheme(),""),ou("transform-origin",i._transformOrigin)("font-size",i._triggerFontSize,"px"),Es("ngClass",i.panelClass)("@transformPanel",i.multiple?"showing-multiple":"showing"),bs("id",i.id+"-panel")("aria-multiselectable",i.multiple)("aria-label",i.ariaLabel||null)("aria-labelledby",i._getPanelAriaLabelledby())}}var pY=[[["mat-select-trigger"]],"*"],vY=["mat-select-trigger","*"],gY={transformPanelWrap:Jv("transformPanelWrap",[rg("* => void",function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return{type:11,selector:e,animation:t,options:n}}("@transformPanel",[function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return{type:9,options:e}}()],{optional:!0}))]),transformPanel:Jv("transformPanel",[ig("void",ng({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),ig("showing",ng({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),ig("showing-multiple",ng({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),rg("void => *",eg("120ms cubic-bezier(0, 0, 0.2, 1)")),rg("* => void",eg("100ms 25ms linear",ng({opacity:0})))])},mY=0,yY=new Pi("mat-select-scroll-strategy"),bY=new Pi("MAT_SELECT_CONFIG"),_Y={provide:yY,deps:[Up],useFactory:function(e){return function(){return e.scrollStrategies.reposition()}}},wY=function e(t,n){m(this,e),this.source=t,this.value=n},kY=Xy(Yy(Wy(Ky(function(){return function e(t,n,i,r,o){m(this,e),this._elementRef=t,this._defaultErrorStateMatcher=n,this._parentForm=i,this._parentFormGroup=r,this.ngControl=o}}())))),xY=new Pi("MatSelectTrigger"),SY=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a,s,u,l,h,d,f,p,g,y){var b,_,w,k;return m(this,n),(b=t.call(this,a,o,u,l,d))._viewportRuler=e,b._changeDetectorRef=i,b._ngZone=r,b._dir=s,b._parentFormField=h,b._liveAnnouncer=g,b._defaultOptions=y,b._panelOpen=!1,b._compareWith=function(e,t){return e===t},b._uid="mat-select-"+mY++,b._triggerAriaLabelledBy=null,b._destroy=new re,b._onChange=function(){},b._onTouched=function(){},b._valueId="mat-select-value-"+mY++,b._panelDoneAnimatingStream=new re,b._overlayPanelClass=(null===(_=b._defaultOptions)||void 0===_?void 0:_.overlayPanelClass)||"",b._focused=!1,b.controlType="mat-select",b._required=!1,b._multiple=!1,b._disableOptionCentering=null!==(k=null===(w=b._defaultOptions)||void 0===w?void 0:w.disableOptionCentering)&&void 0!==k&&k,b.ariaLabel="",b.optionSelectionChanges=cz(function(){var e=b.options;return e?e.changes.pipe(hf(e),df(function(){return Ee.apply(void 0,v(e.map(function(e){return e.onSelectionChange})))})):b._ngZone.onStable.pipe(op(1),df(function(){return b.optionSelectionChanges}))}),b.openedChange=new Qc,b._openedStream=b.openedChange.pipe(rf(function(e){return e}),se(function(){})),b._closedStream=b.openedChange.pipe(rf(function(e){return!e}),se(function(){})),b.selectionChange=new Qc,b.valueChange=new Qc,b.ngControl&&(b.ngControl.valueAccessor=c(b)),null!=(null==y?void 0:y.typeaheadDebounceInterval)&&(b._typeaheadDebounceInterval=y.typeaheadDebounceInterval),b._scrollStrategyFactory=p,b._scrollStrategy=b._scrollStrategyFactory(),b.tabIndex=parseInt(f)||0,b.id=b.id,b}return b(n,[{key:"focused",get:function(){return this._focused||this._panelOpen}},{key:"placeholder",get:function(){return this._placeholder},set:function(e){this._placeholder=e,this.stateChanges.next()}},{key:"required",get:function(){return this._required},set:function(e){this._required=Pd(e),this.stateChanges.next()}},{key:"multiple",get:function(){return this._multiple},set:function(e){this._multiple=Pd(e)}},{key:"disableOptionCentering",get:function(){return this._disableOptionCentering},set:function(e){this._disableOptionCentering=Pd(e)}},{key:"compareWith",get:function(){return this._compareWith},set:function(e){this._compareWith=e,this._selectionModel&&this._initializeSelection()}},{key:"value",get:function(){return this._value},set:function(e){(e!==this._value||this._multiple&&Array.isArray(e))&&(this.options&&this._setSelectionByValue(e),this._value=e)}},{key:"typeaheadDebounceInterval",get:function(){return this._typeaheadDebounceInterval},set:function(e){this._typeaheadDebounceInterval=Md(e)}},{key:"id",get:function(){return this._id},set:function(e){this._id=e||this._uid,this.stateChanges.next()}},{key:"ngOnInit",value:function(){var e=this;this._selectionModel=new Uf(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(Yd(),sf(this._destroy)).subscribe(function(){return e._panelDoneAnimating(e.panelOpen)})}},{key:"ngAfterContentInit",value:function(){var e=this;this._initKeyManager(),this._selectionModel.changed.pipe(sf(this._destroy)).subscribe(function(e){e.added.forEach(function(e){return e.select()}),e.removed.forEach(function(e){return e.deselect()})}),this.options.changes.pipe(hf(null),sf(this._destroy)).subscribe(function(){e._resetOptions(),e._initializeSelection()})}},{key:"ngDoCheck",value:function(){var e=this._getTriggerAriaLabelledby();if(e!==this._triggerAriaLabelledBy){var t=this._elementRef.nativeElement;this._triggerAriaLabelledBy=e,e?t.setAttribute("aria-labelledby",e):t.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}},{key:"ngOnChanges",value:function(e){e.disabled&&this.stateChanges.next(),e.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}},{key:"ngOnDestroy",value:function(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}},{key:"toggle",value:function(){this.panelOpen?this.close():this.open()}},{key:"open",value:function(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}},{key:"close",value:function(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}},{key:"writeValue",value:function(e){this.value=e}},{key:"registerOnChange",value:function(e){this._onChange=e}},{key:"registerOnTouched",value:function(e){this._onTouched=e}},{key:"setDisabledState",value:function(e){this.disabled=e,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}},{key:"panelOpen",get:function(){return this._panelOpen}},{key:"selected",get:function(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}},{key:"triggerValue",get:function(){if(this.empty)return"";if(this._multiple){var e=this._selectionModel.selected.map(function(e){return e.viewValue});return this._isRtl()&&e.reverse(),e.join(", ")}return this._selectionModel.selected[0].viewValue}},{key:"_isRtl",value:function(){return!!this._dir&&"rtl"===this._dir.value}},{key:"_handleKeydown",value:function(e){this.disabled||(this.panelOpen?this._handleOpenKeydown(e):this._handleClosedKeydown(e))}},{key:"_handleClosedKeydown",value:function(e){var t=e.keyCode,n=40===t||38===t||37===t||39===t,i=13===t||32===t,r=this._keyManager;if(!r.isTyping()&&i&&!hp(e)||(this.multiple||e.altKey)&&n)e.preventDefault(),this.open();else if(!this.multiple){var o=this.selected;r.onKeydown(e);var a=this.selected;a&&o!==a&&this._liveAnnouncer.announce(a.viewValue,1e4)}}},{key:"_handleOpenKeydown",value:function(e){var t=this._keyManager,n=e.keyCode,i=40===n||38===n,r=t.isTyping();if(i&&e.altKey)e.preventDefault(),this.close();else if(r||13!==n&&32!==n||!t.activeItem||hp(e))if(!r&&this._multiple&&65===n&&e.ctrlKey){e.preventDefault();var o=this.options.some(function(e){return!e.disabled&&!e.selected});this.options.forEach(function(e){e.disabled||(o?e.select():e.deselect())})}else{var a=t.activeItemIndex;t.onKeydown(e),this._multiple&&i&&e.shiftKey&&t.activeItem&&t.activeItemIndex!==a&&t.activeItem._selectViaInteraction()}else e.preventDefault(),t.activeItem._selectViaInteraction()}},{key:"_onFocus",value:function(){this.disabled||(this._focused=!0,this.stateChanges.next())}},{key:"_onBlur",value:function(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}},{key:"_onAttached",value:function(){var e=this;this._overlayDir.positionChange.pipe(op(1)).subscribe(function(){e._changeDetectorRef.detectChanges(),e._positioningSettled()})}},{key:"_getPanelTheme",value:function(){return this._parentFormField?"mat-".concat(this._parentFormField.color):""}},{key:"empty",get:function(){return!this._selectionModel||this._selectionModel.isEmpty()}},{key:"_initializeSelection",value:function(){var e=this;Promise.resolve().then(function(){e._setSelectionByValue(e.ngControl?e.ngControl.value:e._value),e.stateChanges.next()})}},{key:"_setSelectionByValue",value:function(e){var t=this;if(this._selectionModel.selected.forEach(function(e){return e.setInactiveStyles()}),this._selectionModel.clear(),this.multiple&&e)Array.isArray(e),e.forEach(function(e){return t._selectValue(e)}),this._sortValues();else{var n=this._selectValue(e);n?this._keyManager.updateActiveItem(n):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}},{key:"_selectValue",value:function(e){var t=this,n=this.options.find(function(n){if(t._selectionModel.isSelected(n))return!1;try{return null!=n.value&&t._compareWith(n.value,e)}catch(i){return!1}});return n&&this._selectionModel.select(n),n}},{key:"_initKeyManager",value:function(){var e=this;this._keyManager=new Ov(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(sf(this._destroy)).subscribe(function(){e.panelOpen&&(!e.multiple&&e._keyManager.activeItem&&e._keyManager.activeItem._selectViaInteraction(),e.focus(),e.close())}),this._keyManager.change.pipe(sf(this._destroy)).subscribe(function(){e._panelOpen&&e.panel?e._scrollOptionIntoView(e._keyManager.activeItemIndex||0):!e._panelOpen&&!e.multiple&&e._keyManager.activeItem&&e._keyManager.activeItem._selectViaInteraction()})}},{key:"_resetOptions",value:function(){var e=this,t=Ee(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(sf(t)).subscribe(function(t){e._onSelect(t.source,t.isUserInput),t.isUserInput&&!e.multiple&&e._panelOpen&&(e.close(),e.focus())}),Ee.apply(void 0,v(this.options.map(function(e){return e._stateChanges}))).pipe(sf(t)).subscribe(function(){e._changeDetectorRef.markForCheck(),e.stateChanges.next()})}},{key:"_onSelect",value:function(e,t){var n=this._selectionModel.isSelected(e);null!=e.value||this._multiple?(n!==e.selected&&(e.selected?this._selectionModel.select(e):this._selectionModel.deselect(e)),t&&this._keyManager.setActiveItem(e),this.multiple&&(this._sortValues(),t&&this.focus())):(e.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(e.value)),n!==this._selectionModel.isSelected(e)&&this._propagateChanges(),this.stateChanges.next()}},{key:"_sortValues",value:function(){var e=this;if(this.multiple){var t=this.options.toArray();this._selectionModel.sort(function(n,i){return e.sortComparator?e.sortComparator(n,i,t):t.indexOf(n)-t.indexOf(i)}),this.stateChanges.next()}}},{key:"_propagateChanges",value:function(e){var t;t=this.multiple?this.selected.map(function(e){return e.value}):this.selected?this.selected.value:e,this._value=t,this.valueChange.emit(t),this._onChange(t),this.selectionChange.emit(this._getChangeEvent(t)),this._changeDetectorRef.markForCheck()}},{key:"_highlightCorrectOption",value:function(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}},{key:"_canOpen",value:function(){var e;return!this._panelOpen&&!this.disabled&&(null===(e=this.options)||void 0===e?void 0:e.length)>0}},{key:"focus",value:function(e){this._elementRef.nativeElement.focus(e)}},{key:"_getPanelAriaLabelledby",value:function(){var e;if(this.ariaLabel)return null;var t=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId();return this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}},{key:"_getAriaActiveDescendant",value:function(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}},{key:"_getTriggerAriaLabelledby",value:function(){var e;if(this.ariaLabel)return null;var t=null===(e=this._parentFormField)||void 0===e?void 0:e.getLabelId(),n=(t?t+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}},{key:"_panelDoneAnimating",value:function(e){this.openedChange.emit(e)}},{key:"setDescribedByIds",value:function(e){this._ariaDescribedby=e.join(" ")}},{key:"onContainerClick",value:function(){this.focus(),this.open()}},{key:"shouldLabelFloat",get:function(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}]),n}(kY);return e.\u0275fac=function(t){return new(t||e)(Ss(Wf),Ss(_c),Ss(Bl),Ss($y),Ss(Yu),Ss(Vf,8),Ss(ZV,8),Ss(oz,8),Ss(Bz,8),Ss(SV,10),Oi("tabindex"),Ss(yY),Ss(zv),Ss(bY,8))},e.\u0275dir=Mt({type:e,viewQuery:function(e,t){var n;(1&e&&(ll(sY,5),ll(uY,5),ll(qp,5)),2&e)&&(cl(n=dl())&&(t.trigger=n.first),cl(n=dl())&&(t.panel=n.first),cl(n=dl())&&(t._overlayDir=n.first))},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[as,Ht]}),e}(),EY=function(){var t,n=function(t){a(i,t);var n=s(i);function i(){var e;return m(this,i),(e=n.apply(this,arguments))._scrollTop=0,e._triggerFontSize=0,e._transformOrigin="top",e._offsetY=0,e._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}],e}return b(i,[{key:"_calculateOverlayScroll",value:function(e,t,n){var i=this._getItemHeight();return Math.min(Math.max(0,i*e-t+i/2),n)}},{key:"ngOnInit",value:function(){var t=this;e(p(i.prototype),"ngOnInit",this).call(this),this._viewportRuler.change().pipe(sf(this._destroy)).subscribe(function(){t.panelOpen&&(t._triggerRect=t.trigger.nativeElement.getBoundingClientRect(),t._changeDetectorRef.markForCheck())})}},{key:"open",value:function(){var t=this;e(p(i.prototype),"_canOpen",this).call(this)&&(e(p(i.prototype),"open",this).call(this),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(op(1)).subscribe(function(){t._triggerFontSize&&t._overlayDir.overlayRef&&t._overlayDir.overlayRef.overlayElement&&(t._overlayDir.overlayRef.overlayElement.style.fontSize="".concat(t._triggerFontSize,"px"))}))}},{key:"_scrollOptionIntoView",value:function(e){var t=mb(e,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===e&&1===t?0:yb((e+t)*n,n,this.panel.nativeElement.scrollTop,256)}},{key:"_positioningSettled",value:function(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}},{key:"_panelDoneAnimating",value:function(t){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),e(p(i.prototype),"_panelDoneAnimating",this).call(this,t)}},{key:"_getChangeEvent",value:function(e){return new wY(this,e)}},{key:"_calculateOverlayOffsetX",value:function(){var e,t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),n=this._viewportRuler.getViewportSize(),i=this._isRtl(),r=this.multiple?56:32;if(this.multiple)e=40;else if(this.disableOptionCentering)e=16;else{var o=this._selectionModel.selected[0]||this.options.first;e=o&&o.group?32:16}i||(e*=-1);var a=0-(t.left+e-(i?r:0)),s=t.right+e-n.width+(i?0:r);a>0?e+=a+8:s>0&&(e-=s+8),this._overlayDir.offsetX=Math.round(e),this._overlayDir.overlayRef.updatePosition()}},{key:"_calculateOverlayOffsetY",value:function(e,t,n){var i,r=this._getItemHeight(),o=(r-this._triggerRect.height)/2,a=Math.floor(256/r);return this.disableOptionCentering?0:(i=0===this._scrollTop?e*r:this._scrollTop===n?(e-(this._getItemCount()-a))*r+(r-(this._getItemCount()*r-256)%r):t-r/2,Math.round(-1*i-o))}},{key:"_checkOverlayWithinViewport",value:function(e){var t=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,o=Math.abs(this._offsetY),a=Math.min(this._getItemCount()*t,256)-o-this._triggerRect.height;a>r?this._adjustPanelUp(a,r):o>i?this._adjustPanelDown(o,i,e):this._transformOrigin=this._getOriginBasedOnOption()}},{key:"_adjustPanelUp",value:function(e,t){var n=Math.round(e-t);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}},{key:"_adjustPanelDown",value:function(e,t,n){var i=Math.round(e-t);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}},{key:"_calculateOverlayPosition",value:function(){var e,t=this._getItemHeight(),n=this._getItemCount(),i=Math.min(n*t,256),r=n*t-i;e=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),e+=mb(e,this.options,this.optionGroups);var o=i/2;this._scrollTop=this._calculateOverlayScroll(e,o,r),this._offsetY=this._calculateOverlayOffsetY(e,o,r),this._checkOverlayWithinViewport(r)}},{key:"_getOriginBasedOnOption",value:function(){var e=this._getItemHeight(),t=(e-this._triggerRect.height)/2;return"50% ".concat(Math.abs(this._offsetY)-t+e/2,"px 0px")}},{key:"_getItemHeight",value:function(){return 3*this._triggerFontSize}},{key:"_getItemCount",value:function(){return this.options.length+this.optionGroups.length}}]),i}(SY);return n.\u0275fac=function(e){return(t||(t=Ei(n)))(e||n)},n.\u0275cmp=Et({type:n,selectors:[["mat-select"]],contentQueries:function(e,t,n){var i;(1&e&&(hl(n,xY,5),hl(n,gb,5),hl(n,db,5)),2&e)&&(cl(i=dl())&&(t.customTrigger=i.first),cl(i=dl())&&(t.options=i),cl(i=dl())&&(t.optionGroups=i))},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(e,t){1&e&&js("keydown",function(e){return t._handleKeydown(e)})("focus",function(){return t._onFocus()})("blur",function(){return t._onBlur()}),2&e&&(bs("id",t.id)("tabindex",t.tabIndex)("aria-controls",t.panelOpen?t.id+"-panel":null)("aria-expanded",t.panelOpen)("aria-label",t.ariaLabel||null)("aria-required",t.required.toString())("aria-disabled",t.disabled.toString())("aria-invalid",t.errorState)("aria-describedby",t._ariaDescribedby||null)("aria-activedescendant",t._getAriaActiveDescendant()),au("mat-select-disabled",t.disabled)("mat-select-invalid",t.errorState)("mat-select-required",t.required)("mat-select-empty",t.empty)("mat-select-multiple",t.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[Uu([{provide:Az,useExisting:n},{provide:ub,useExisting:n}]),as],ngContentSelectors:vY,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(e,t){if(1&e&&(Gs(pY),Os(0,"div",0,1),js("click",function(){return t.toggle()}),Os(3,"div",2),ks(4,cY,2,1,"span",3),ks(5,dY,3,2,"span",4),Ts(),Os(6,"div",5),As(7,"div",6),Ts(),Ts(),ks(8,fY,4,14,"ng-template",7),js("backdropClick",function(){return t.close()})("attach",function(){return t._onAttached()})("detach",function(){return t.close()})),2&e){var n=xs(1);bs("aria-owns",t.panelOpen?t.id+"-panel":null),Wo(3),Es("ngSwitch",t.empty),bs("id",t._valueId),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngSwitchCase",!1),Wo(3),Es("cdkConnectedOverlayPanelClass",t._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",t._scrollStrategy)("cdkConnectedOverlayOrigin",n)("cdkConnectedOverlayOpen",t.panelOpen)("cdkConnectedOverlayPositions",t._positions)("cdkConnectedOverlayMinWidth",null==t._triggerRect?null:t._triggerRect.width)("cdkConnectedOverlayOffsetY",t._offsetY)}},directives:[Wp,Bh,Vh,qp,zh,Mh],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[gY.transformPanelWrap,gY.transformPanel]},changeDetection:0}),n}(),CY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[_Y],imports:[[Yh,Yp,bb,Gy],qf,zz,bb,Gy]}),e}(),OY=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,zz,CY]]}),e}(),TY=r(25430),AY=r(39053),PY=r(26202),MY=["tooltipTemplate"],IY=["leftOuterSelectionBar"],RY=["rightOuterSelectionBar"],DY=["fullBar"],NY=["selectionBar"],LY=["minHandle"],jY=["maxHandle"],FY=["floorLabel"],BY=["ceilLabel"],VY=["minHandleLabel"],zY=["maxHandleLabel"],UY=["combinedLabel"],HY=["ticksElement"];function GY(e,t){if(1&e&&As(0,"ng5-slider-tooltip-wrapper",31),2&e){var n=Us().$implicit;Es("template",Us().tooltipTemplate)("tooltip",n.valueTooltip)("placement",n.valueTooltipPlacement)("content",n.value)}}function WY(e,t){1&e&&As(0,"span",32),2&e&&Es("innerHTML",Us().$implicit.legend,Hr)}var qY=function(e){return{"ng5-slider-selected":e}};function XY(e,t){if(1&e&&(Os(0,"span",27),As(1,"ng5-slider-tooltip-wrapper",28),ks(2,GY,1,4,"ng5-slider-tooltip-wrapper",29),ks(3,WY,1,1,"span",30),Ts()),2&e){var n=t.$implicit,i=Us();Es("ngClass",Wc(7,qY,n.selected))("ngStyle",n.style),Wo(1),Es("template",i.tooltipTemplate)("tooltip",n.tooltip)("placement",n.tooltipPlacement),Wo(1),Es("ngIf",null!=n.value),Wo(1),Es("ngIf",null!=n.legend)}}function YY(e,t){}function KY(e,t){1&e&&ks(0,YY,0,0,"ng-template")}var $Y=function(e,t,n){return{tooltip:e,placement:t,content:n}};function QY(e,t){if(1&e&&(Ps(0),ks(1,KY,1,0,void 0,1),Ms()),2&e){var n=Us();Wo(1),Es("ngTemplateOutlet",n.template)("ngTemplateOutletContext",function(e,t,n,i,r,o){return function(e,t,n,i,r,o,a,s){var u=t+n;return function(e,t,n,i,r){var o=ys(e,t,n,i);return ms(e,t+2,r)||o}(e,u,r,o,a)?gs(e,u+3,s?i.call(s,r,o,a):i(r,o,a)):qc(e,u+3)}(pn(),Sn(),e,t,n,i,r,o)}(2,$Y,n.tooltip,n.placement,n.content))}}function ZY(e,t){if(1&e&&(Ps(0),Os(1,"div",2),wu(2),Ts(),Ms()),2&e){var n=Us();Wo(1),bs("title",n.tooltip)("data-tooltip-placement",n.placement),Wo(1),xu(" ",n.content," ")}}var JY={Min:0,Max:1};JY[JY.Min]="Min",JY[JY.Max]="Max";var eK={Low:0,High:1,Floor:2,Ceil:3,TickValue:4};eK[eK.Low]="Low",eK[eK.High]="High",eK[eK.Floor]="Floor",eK[eK.Ceil]="Ceil",eK[eK.TickValue]="TickValue";var tK=function e(){m(this,e),this.floor=0,this.ceil=null,this.step=1,this.minRange=null,this.maxRange=null,this.pushRange=!1,this.minLimit=null,this.maxLimit=null,this.translate=null,this.combineLabels=null,this.getLegend=null,this.stepsArray=null,this.bindIndexForStepsArray=!1,this.draggableRange=!1,this.draggableRangeOnly=!1,this.showSelectionBar=!1,this.showSelectionBarEnd=!1,this.showSelectionBarFromValue=null,this.showOuterSelectionBars=!1,this.hidePointerLabels=!1,this.hideLimitLabels=!1,this.autoHideLimitLabels=!0,this.readOnly=!1,this.disabled=!1,this.mouseEventsInterval=50,this.touchEventsInterval=50,this.inputEventsInterval=100,this.outputEventsInterval=100,this.showTicks=!1,this.showTicksValues=!1,this.tickStep=null,this.tickValueStep=1,this.ticksArray=null,this.ticksTooltip=null,this.ticksValuesTooltip=null,this.vertical=!1,this.getSelectionBarColor=null,this.getTickColor=null,this.getPointerColor=null,this.keyboardSupport=!0,this.scale=1,this.enforceStep=!0,this.enforceRange=!0,this.noSwitching=!1,this.onlyBindHandles=!1,this.rightToLeft=!1,this.reversedControls=!1,this.boundPointerLabels=!0,this.logScale=!1,this.customValueToPosition=null,this.customPositionToValue=null,this.precisionLimit=12,this.selectionBarGradient=null,this.ariaLabel=null,this.ariaLabelledBy=null,this.ariaLabelHigh=null,this.ariaLabelledByHigh=null,this.handleDimension=null,this.barDimension=null,this.animate=!0},nK=function e(){m(this,e)},iK=function(){function e(){m(this,e)}return b(e,null,[{key:"isNullOrUndefined",value:function(e){return null==e}},{key:"linearValueToPosition",value:function(e,t,n){return(e-t)/(n-t)}},{key:"logValueToPosition",value:function(e,t,n){return((e=Math.log(e))-(t=Math.log(t)))/((n=Math.log(n))-t)}},{key:"linearPositionToValue",value:function(e,t,n){return e*(n-t)+t}},{key:"logPositionToValue",value:function(e,t,n){return t=Math.log(t),n=Math.log(n),Math.exp(e*(n-t)+t)}},{key:"findStepIndex",value:function(e,t){for(var n=t.map(function(t){return Math.abs(e-t.value)}),i=0,r=0;r0&&0===this.dimension)&&(t=!0),this._value=e,this.elemRef.nativeElement.innerHTML=e,t&&this.calculateDimension()}}]),n}(uK);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Qu),Ss(_c))},e.\u0275dir=Mt({type:e,selectors:[["","ng5SliderLabel",""]],features:[as]}),e}(),hK=function e(){m(this,e),this.selected=!1,this.style={},this.tooltip=null,this.tooltipPlacement=null,this.value=null,this.valueTooltip=null,this.valueTooltipPlacement=null,this.legend=null},dK=function e(){m(this,e),this.active=!1,this.value=0,this.difference=0,this.position=0,this.lowLimit=0,this.highLimit=0},fK=function(){function e(){m(this,e)}return b(e,null,[{key:"compare",value:function(e,t){return!(iK.isNullOrUndefined(e)&&iK.isNullOrUndefined(t)||iK.isNullOrUndefined(e)!==iK.isNullOrUndefined(t))&&e.value===t.value&&e.highValue===t.highValue}}]),e}(),pK=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,null,[{key:"compare",value:function(e,t){return!(iK.isNullOrUndefined(e)&&iK.isNullOrUndefined(t)||iK.isNullOrUndefined(e)!==iK.isNullOrUndefined(t))&&e.value===t.value&&e.highValue===t.highValue&&e.forceChange===t.forceChange}}]),n}(fK),vK={provide:nV,useExisting:ze(function(){return gK}),multi:!0},gK=function(){var e=function(){function e(t,n,i,r){m(this,e),this.renderer=t,this.elementRef=n,this.changeDetectionRef=i,this.zone=r,this.value=null,this.valueChange=new Qc,this.highValue=null,this.highValueChange=new Qc,this.options=new tK,this.userChangeStart=new Qc,this.userChange=new Qc,this.userChangeEnd=new Qc,this.initHasRun=!1,this.inputModelChangeSubject=new TY.xQ,this.inputModelChangeSubscription=null,this.outputModelChangeSubject=new TY.xQ,this.outputModelChangeSubscription=null,this.viewLowValue=null,this.viewHighValue=null,this.viewOptions=new tK,this.handleHalfDimension=0,this.maxHandlePosition=0,this.currentTrackingPointer=null,this.currentFocusPointer=null,this.firstKeyDown=!1,this.touchId=null,this.dragging=new dK,this.sliderElementVerticalClass=!1,this.sliderElementAnimateClass=!1,this.sliderElementDisabledAttr=null,this.barStyle={},this.minPointerStyle={},this.maxPointerStyle={},this.fullBarTransparentClass=!1,this.selectionBarDraggableClass=!1,this.ticksUnderValuesClass=!1,this.intermediateTicks=!1,this.ticks=[],this.eventListenerHelper=null,this.onMoveEventListener=null,this.onEndEventListener=null,this.resizeObserver=null,this.onTouchedCallback=null,this.onChangeCallback=null,this.eventListenerHelper=new sK(this.renderer)}return b(e,[{key:"manualRefresh",set:function(e){var t=this;this.unsubscribeManualRefresh(),this.manualRefreshSubscription=e.subscribe(function(){setTimeout(function(){return t.calculateViewDimensionsAndDetectChanges()})})}},{key:"triggerFocus",set:function(e){var t=this;this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=e.subscribe(function(e){t.focusPointer(e)})}},{key:"range",get:function(){return!iK.isNullOrUndefined(this.value)&&!iK.isNullOrUndefined(this.highValue)}},{key:"showTicks",get:function(){return this.viewOptions.showTicks}},{key:"ngOnInit",value:function(){this.viewOptions=new tK,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState()}},{key:"ngAfterViewInit",value:function(){this.applyOptions(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval),this.subscribeOutputModelChangeSubject(this.viewOptions.outputEventsInterval),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}},{key:"ngOnChanges",value:function(e){iK.isNullOrUndefined(e.options)||this.onChangeOptions(),(!iK.isNullOrUndefined(e.value)||!iK.isNullOrUndefined(e.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}},{key:"ngOnDestroy",value:function(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}},{key:"writeValue",value:function(e){e instanceof Array?(this.value=e[0],this.highValue=e[1]):this.value=e,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}},{key:"registerOnChange",value:function(e){this.onChangeCallback=e}},{key:"registerOnTouched",value:function(e){this.onTouchedCallback=e}},{key:"setDisabledState",value:function(e){this.viewOptions.disabled=e,this.updateDisabledState()}},{key:"onResize",value:function(e){this.calculateViewDimensionsAndDetectChanges()}},{key:"subscribeInputModelChangeSubject",value:function(e){var t=this;this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe((0,AY.distinctUntilChanged)(pK.compare),(0,AY.filter)(function(e){return!e.forceChange&&!e.internalChange}),iK.isNullOrUndefined(e)?(0,AY.tap)(function(){}):(0,AY.throttleTime)(e,void 0,{leading:!0,trailing:!0})).subscribe(function(e){return t.applyInputModelChange(e)})}},{key:"subscribeOutputModelChangeSubject",value:function(e){var t=this;this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe((0,AY.distinctUntilChanged)(pK.compare),iK.isNullOrUndefined(e)?(0,AY.tap)(function(){}):(0,AY.throttleTime)(e,void 0,{leading:!0,trailing:!0})).subscribe(function(e){return t.publishOutputModelChange(e)})}},{key:"subscribeResizeObserver",value:function(){var e=this;rK.isResizeObserverAvailable()&&(this.resizeObserver=new ResizeObserver(function(){return e.calculateViewDimensionsAndDetectChanges()}),this.resizeObserver.observe(this.elementRef.nativeElement))}},{key:"unsubscribeResizeObserver",value:function(){rK.isResizeObserverAvailable()&&null!==this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}},{key:"unsubscribeOnMove",value:function(){iK.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}},{key:"unsubscribeOnEnd",value:function(){iK.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null)}},{key:"unsubscribeInputModelChangeSubject",value:function(){iK.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}},{key:"unsubscribeOutputModelChangeSubject",value:function(){iK.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}},{key:"unsubscribeManualRefresh",value:function(){iK.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}},{key:"unsubscribeTriggerFocus",value:function(){iK.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}},{key:"getPointerElement",value:function(e){return e===JY.Min?this.minHandleElement:e===JY.Max?this.maxHandleElement:null}},{key:"getCurrentTrackingValue",value:function(){return this.currentTrackingPointer===JY.Min?this.viewLowValue:this.currentTrackingPointer===JY.Max?this.viewHighValue:null}},{key:"modelValueToViewValue",value:function(e){return iK.isNullOrUndefined(e)?NaN:iK.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+e:iK.findStepIndex(+e,this.viewOptions.stepsArray)}},{key:"viewValueToModelValue",value:function(e){return iK.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?e:this.getStepValue(e)}},{key:"getStepValue",value:function(e){var t=this.viewOptions.stepsArray[e];return iK.isNullOrUndefined(t)?NaN:t.value}},{key:"applyViewChange",value:function(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!0})}},{key:"applyInputModelChange",value:function(e){var t=this.normaliseModelValues(e),n=!fK.compare(e,t);n&&(this.value=t.value,this.highValue=t.highValue),this.viewLowValue=this.modelValueToViewValue(t.value),this.viewHighValue=this.range?this.modelValueToViewValue(t.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:t.value,highValue:t.highValue,forceChange:n,userEventInitiated:!1})}},{key:"publishOutputModelChange",value:function(e){var t=this,n=function(){t.valueChange.emit(e.value),t.range&&t.highValueChange.emit(e.highValue),iK.isNullOrUndefined(t.onChangeCallback)||t.onChangeCallback(t.range?[e.value,e.highValue]:e.value),iK.isNullOrUndefined(t.onTouchedCallback)||t.onTouchedCallback(t.range?[e.value,e.highValue]:e.value)};e.userEventInitiated?(n(),this.userChange.emit(this.getChangeContext())):setTimeout(function(){n()})}},{key:"normaliseModelValues",value:function(e){var t=new fK;if(t.value=e.value,t.highValue=e.highValue,this.viewOptions.enforceStep&&(t.value=this.roundStep(t.value),this.range&&(t.highValue=this.roundStep(t.highValue))),!iK.isNullOrUndefined(this.viewOptions.stepsArray)||!this.viewOptions.enforceRange)return t;if(t.value=oK.clampToRange(t.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(t.highValue=oK.clampToRange(t.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&e.value>e.highValue)if(this.viewOptions.noSwitching)t.value=t.highValue;else{var n=e.value;t.value=e.highValue,t.highValue=n}return t}},{key:"renormaliseModelValues",value:function(){var e={value:this.value,highValue:this.highValue},t=this.normaliseModelValues(e);fK.compare(t,e)||(this.value=t.value,this.highValue=t.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!0,userEventInitiated:!1}))}},{key:"onChangeOptions",value:function(){if(this.initHasRun){var e=this.viewOptions.inputEventsInterval,t=this.viewOptions.outputEventsInterval;this.applyOptions(),e!==this.viewOptions.inputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval)),t!==this.viewOptions.outputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.outputEventsInterval)),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider()}}},{key:"applyOptions",value:function(){if(this.viewOptions=new tK,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!iK.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!iK.isNullOrUndefined(this.viewOptions.tickStep)||!iK.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!iK.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),iK.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),iK.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=function(e,t){return e+" - "+t}),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}},{key:"applyStepsArrayOptions",value:function(){var e=this;this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,iK.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=function(t){return String(e.viewOptions.bindIndexForStepsArray?e.getStepValue(t):t)}),this.viewOptions.getLegend=function(t){return e.viewOptions.stepsArray[t].legend}}},{key:"applyFloorCeilOptions",value:function(){if(iK.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),iK.isNullOrUndefined(this.viewOptions.ceil)||iK.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,iK.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=function(e){return String(e)})}},{key:"resetSlider",value:function(){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.unbindEvents(),this.manageEventsBindings(),this.updateDisabledState(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}},{key:"focusPointer",value:function(e){e!==JY.Min&&e!==JY.Max&&(e=JY.Min),e===JY.Min?this.minHandleElement.focus():this.range&&e===JY.Max&&this.maxHandleElement.focus()}},{key:"refocusPointerIfNeeded",value:function(){iK.isNullOrUndefined(this.currentFocusPointer)||(this.onPointerFocus(this.currentFocusPointer),this.getPointerElement(this.currentFocusPointer).focus())}},{key:"manageElementsStyle",value:function(){var e=this;this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);var t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(function(){e.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(function(){e.sliderElementAnimateClass=e.viewOptions.animate})}},{key:"manageEventsBindings",value:function(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}},{key:"updateDisabledState",value:function(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}},{key:"updateVerticalState",value:function(){this.sliderElementVerticalClass=this.viewOptions.vertical;var e,t=_(this.getAllSliderElements());try{for(t.s();!(e=t.n()).done;){var n=e.value;iK.isNullOrUndefined(n)||n.setVertical(this.viewOptions.vertical)}}catch(i){t.e(i)}finally{t.f()}}},{key:"updateScale",value:function(){var e,t=_(this.getAllSliderElements());try{for(t.s();!(e=t.n()).done;){e.value.setScale(this.viewOptions.scale)}}catch(n){t.e(n)}finally{t.f()}}},{key:"getAllSliderElements",value:function(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}},{key:"initHandles",value:function(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}},{key:"addAccessibility",value:function(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.viewOptions.vertical&&(this.minHandleElement.ariaOrientation="vertical"),iK.isNullOrUndefined(this.viewOptions.ariaLabel)?iK.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical?"vertical":"horizontal",iK.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?iK.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}},{key:"updateAriaAttributes",value:function(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,eK.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,eK.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}},{key:"calculateViewDimensions",value:function(){iK.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);var e=this.minHandleElement.dimension;this.handleHalfDimension=e/2,iK.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-e,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}},{key:"calculateViewDimensionsAndDetectChanges",value:function(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}},{key:"isRefDestroyed",value:function(){return this.changeDetectionRef.destroyed}},{key:"updateTicksScale",value:function(){var e=this;if(this.viewOptions.showTicks){var t=iK.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,n=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();var i=t.map(function(t){var i=e.valueToPosition(t);e.viewOptions.vertical&&(i=e.maxHandlePosition-i);var r=n+"("+Math.round(i)+"px)",o=new hK;if(o.selected=e.isTickSelected(t),o.style={"-webkit-transform":r,"-moz-transform":r,"-o-transform":r,"-ms-transform":r,transform:r},o.selected&&!iK.isNullOrUndefined(e.viewOptions.getSelectionBarColor)&&(o.style["background-color"]=e.getSelectionBarColor()),!o.selected&&!iK.isNullOrUndefined(e.viewOptions.getTickColor)&&(o.style["background-color"]=e.getTickColor(t)),iK.isNullOrUndefined(e.viewOptions.ticksTooltip)||(o.tooltip=e.viewOptions.ticksTooltip(t),o.tooltipPlacement=e.viewOptions.vertical?"right":"top"),e.viewOptions.showTicksValues&&t%e.viewOptions.tickValueStep==0&&(o.value=e.getDisplayValue(t,eK.TickValue),iK.isNullOrUndefined(e.viewOptions.ticksValuesTooltip)||(o.valueTooltip=e.viewOptions.ticksValuesTooltip(t),o.valueTooltipPlacement=e.viewOptions.vertical?"right":"top")),!iK.isNullOrUndefined(e.viewOptions.getLegend)){var a=e.viewOptions.getLegend(t);iK.isNullOrUndefined(a)||(o.legend=a)}return o});if(iK.isNullOrUndefined(this.ticks)||this.ticks.length!==i.length)this.ticks=i;else for(var r=0;r=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&e<=this.viewLowValue)return!0}else{var t=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>t&&e>=t&&e<=this.viewLowValue)return!0;if(this.viewLowValue=this.viewLowValue)return!0}return!!(this.range&&e>=this.viewLowValue&&e<=this.viewHighValue)}},{key:"updateFloorLabel",value:function(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,eK.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}},{key:"updateCeilLabel",value:function(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,eK.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}},{key:"updateHandles",value:function(e,t){e===JY.Min?this.updateLowHandle(t):e===JY.Max&&this.updateHighHandle(t),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}},{key:"getHandleLabelPos",value:function(e,t){var n=e===JY.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,i=t-n/2+this.handleHalfDimension,r=this.fullBarElement.dimension-n;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&e===JY.Min||!this.viewOptions.rightToLeft&&e===JY.Max?Math.min(i,r):Math.min(Math.max(i,0),r):i}},{key:"updateLowHandle",value:function(e){this.minHandleElement.setPosition(e),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,eK.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(JY.Min,e)),iK.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(JY.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}},{key:"updateHighHandle",value:function(e){this.maxHandleElement.setPosition(e),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,eK.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(JY.Max,e)),iK.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(JY.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}},{key:"updateFloorAndCeilLabelsVisibility",value:function(){if(!this.viewOptions.hidePointerLabels){var e=!1,t=!1,n=this.isLabelBelowFloorLabel(this.minHandleLabelElement),i=this.isLabelAboveCeilLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),o=this.isLabelBelowFloorLabel(this.combinedLabelElement),a=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(n?(e=!0,this.floorLabelElement.hide()):(e=!1,this.floorLabelElement.show()),i?(t=!0,this.ceilLabelElement.hide()):(t=!1,this.ceilLabelElement.show()),this.range){var s=this.combinedLabelElement.isVisible()?a:r,u=this.combinedLabelElement.isVisible()?o:n;s?this.ceilLabelElement.hide():t||this.ceilLabelElement.show(),u?this.floorLabelElement.hide():e||this.floorLabelElement.show()}}}},{key:"isLabelBelowFloorLabel",value:function(e){var t=e.position,n=this.floorLabelElement.position;return this.viewOptions.rightToLeft?t+e.dimension>=n-2:t<=n+this.floorLabelElement.dimension+2}},{key:"isLabelAboveCeilLabel",value:function(e){var t=e.position,n=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?t<=n+this.ceilLabelElement.dimension+2:t+e.dimension>=n-2}},{key:"updateSelectionBar",value:function(){var e=0,t=0,n=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,i=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)t=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),e=i;else if(iK.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))n?(t=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),e=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(t=this.minHandleElement.position+this.handleHalfDimension,e=0);else{var r=this.viewOptions.showSelectionBarFromValue,o=this.valueToPosition(r);(this.viewOptions.rightToLeft?this.viewLowValue<=r:this.viewLowValue>r)?(t=this.minHandleElement.position-o,e=o+this.handleHalfDimension):(t=o-this.minHandleElement.position,e=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(t),this.selectionBarElement.setPosition(e),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(e),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(e+t)),this.leftOuterSelectionBarElement.setPosition(e+t)):(this.leftOuterSelectionBarElement.setDimension(e),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(e+t)),this.rightOuterSelectionBarElement.setPosition(e+t))),iK.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!iK.isNullOrUndefined(this.viewOptions.selectionBarGradient)){var a=iK.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),s=a-e>0&&!n||a-e<=0&&n;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?s?"bottom":"top":s?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(a+t+e+(s?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=a-e+(s?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{var u=this.getSelectionBarColor();this.barStyle={backgroundColor:u}}}},{key:"getSelectionBarColor",value:function(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}},{key:"getPointerColor",value:function(e){return this.viewOptions.getPointerColor(e===JY.Max?this.highValue:this.value,e)}},{key:"getTickColor",value:function(e){return this.viewOptions.getTickColor(e)}},{key:"updateCombinedLabel",value:function(){if(this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position){var e=this.getDisplayValue(this.viewLowValue,eK.Low),t=this.getDisplayValue(this.viewHighValue,eK.High),n=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(t,e):this.viewOptions.combineLabels(e,t);this.combinedLabelElement.setValue(n);var i=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(i),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}},{key:"getDisplayValue",value:function(e,t){return!iK.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(e=this.getStepValue(e)),this.viewOptions.translate(e,t)}},{key:"roundStep",value:function(e,t){var n=iK.isNullOrUndefined(t)?this.viewOptions.step:t,i=oK.roundToPrecisionLimit((e-this.viewOptions.floor)/n,this.viewOptions.precisionLimit);return i=Math.round(i)*n,oK.roundToPrecisionLimit(this.viewOptions.floor+i,this.viewOptions.precisionLimit)}},{key:"valueToPosition",value:function(e){var t=iK.linearValueToPosition;iK.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(t=iK.logValueToPosition):t=this.viewOptions.customValueToPosition;var n=t(e=oK.clampToRange(e,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return iK.isNullOrUndefined(n)&&(n=0),this.viewOptions.rightToLeft&&(n=1-n),n*this.maxHandlePosition}},{key:"positionToValue",value:function(e){var t=e/this.maxHandlePosition;this.viewOptions.rightToLeft&&(t=1-t);var n=iK.linearPositionToValue;iK.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(n=iK.logPositionToValue):n=this.viewOptions.customPositionToValue;var i=n(t,this.viewOptions.floor,this.viewOptions.ceil);return iK.isNullOrUndefined(i)?0:i}},{key:"getEventXY",value:function(e,t){if(e instanceof MouseEvent)return this.viewOptions.vertical?e.clientY:e.clientX;var n=0,i=e.touches;if(!iK.isNullOrUndefined(t))for(var r=0;ri?JY.Max:this.viewOptions.rightToLeft?t>this.minHandleElement.position?JY.Min:JY.Max:t=this.maxHandlePosition?o=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(o=this.positionToValue(a),o=t&&!iK.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(o,this.viewOptions.tickStep):this.roundStep(o)),this.positionTrackingHandle(o)}},{key:"onEnd",value:function(e){rK.isTouchEvent(e)&&e.changedTouches[0].identifier!==this.touchId||(this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext()))}},{key:"onPointerFocus",value:function(e){var t=this,n=this.getPointerElement(e);n.on("blur",function(){return t.onPointerBlur(n)}),n.on("keydown",function(e){return t.onKeyboardEvent(e)}),n.on("keyup",function(){return t.onKeyUp()}),n.active=!0,this.currentTrackingPointer=e,this.currentFocusPointer=e,this.firstKeyDown=!0}},{key:"onKeyUp",value:function(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}},{key:"onPointerBlur",value:function(e){e.off("blur"),e.off("keydown"),e.off("keyup"),e.active=!1,iK.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}},{key:"getKeyActions",value:function(e){var t=this.viewOptions.ceil-this.viewOptions.floor,n=e+this.viewOptions.step,i=e-this.viewOptions.step,r=e+t/10,o=e-t/10;this.viewOptions.reversedControls&&(n=e-this.viewOptions.step,i=e+this.viewOptions.step,r=e-t/10,o=e+t/10);var a={UP:n,DOWN:i,LEFT:i,RIGHT:n,PAGEUP:r,PAGEDOWN:o,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(a.LEFT=n,a.RIGHT=i,this.viewOptions.vertical&&(a.UP=i,a.DOWN=n)),a}},{key:"onKeyboardEvent",value:function(e){var t=this.getCurrentTrackingValue(),n=iK.isNullOrUndefined(e.keyCode)?e.which:e.keyCode,i=this.getKeyActions(t)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[n]];if(!iK.isNullOrUndefined(i)&&!iK.isNullOrUndefined(this.currentTrackingPointer)){e.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));var r=oK.clampToRange(i,this.viewOptions.floor,this.viewOptions.ceil),o=this.roundStep(r);if(this.viewOptions.draggableRangeOnly){var a,s,u=this.viewHighValue-this.viewLowValue;this.currentTrackingPointer===JY.Min?(a=o,(s=o+u)>this.viewOptions.ceil&&(a=(s=this.viewOptions.ceil)-u)):this.currentTrackingPointer===JY.Max&&(s=o,(a=o-u)=this.maxHandlePosition-t;if(o<=n){if(0===i.position)return;a=this.getMinValue(o,!0,!1),s=this.getMaxValue(o,!0,!1)}else if(u){if(r.position===this.maxHandlePosition)return;s=this.getMaxValue(o,!0,!0),a=this.getMinValue(o,!0,!0)}else a=this.getMinValue(o,!1,!1),s=this.getMaxValue(o,!1,!1);this.positionTrackingBar(a,s)}},{key:"positionTrackingBar",value:function(e,t){!iK.isNullOrUndefined(this.viewOptions.minLimit)&&ethis.viewOptions.maxLimit&&(e=oK.roundToPrecisionLimit((t=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=e,this.viewHighValue=t,this.applyViewChange(),this.updateHandles(JY.Min,this.valueToPosition(e)),this.updateHandles(JY.Max,this.valueToPosition(t))}},{key:"positionTrackingHandle",value:function(e){e=this.applyMinMaxLimit(e),this.range&&(this.viewOptions.pushRange?e=this.applyPushRange(e):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===JY.Min&&e>this.viewHighValue?e=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===JY.Max&&ethis.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(JY.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=JY.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===JY.Max&&ethis.viewOptions.maxLimit?this.viewOptions.maxLimit:e}},{key:"applyMinMaxRange",value:function(e){var t=Math.abs(e-(this.currentTrackingPointer===JY.Min?this.viewHighValue:this.viewLowValue));if(!iK.isNullOrUndefined(this.viewOptions.minRange)&&tthis.viewOptions.maxRange){if(this.currentTrackingPointer===JY.Min)return oK.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===JY.Max)return oK.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return e}},{key:"applyPushRange",value:function(e){var t=this.currentTrackingPointer===JY.Min?this.viewHighValue-e:e-this.viewLowValue,n=iK.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,i=this.viewOptions.maxRange;return ti&&(this.currentTrackingPointer===JY.Min?(this.viewHighValue=oK.roundToPrecisionLimit(e+i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(JY.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===JY.Max&&(this.viewLowValue=oK.roundToPrecisionLimit(e-i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(JY.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),e}},{key:"getChangeContext",value:function(){var e=new nK;return e.pointerType=this.currentTrackingPointer,e.value=+this.value,this.range&&(e.highValue=+this.highValue),e}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Qu),Ss(Yu),Ss(_c),Ss(Bl))},e.\u0275cmp=Et({type:e,selectors:[["ng5-slider"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,MY,5),2&e)&&(cl(i=dl())&&(t.tooltipTemplate=i.first))},viewQuery:function(e,t){var n;(1&e&&(ll(IY,5,uK),ll(RY,5,uK),ll(DY,5,uK),ll(NY,5,uK),ll(LY,5,cK),ll(jY,5,cK),ll(FY,5,lK),ll(BY,5,lK),ll(VY,5,lK),ll(zY,5,lK),ll(UY,5,lK),ll(HY,5,uK)),2&e)&&(cl(n=dl())&&(t.leftOuterSelectionBarElement=n.first),cl(n=dl())&&(t.rightOuterSelectionBarElement=n.first),cl(n=dl())&&(t.fullBarElement=n.first),cl(n=dl())&&(t.selectionBarElement=n.first),cl(n=dl())&&(t.minHandleElement=n.first),cl(n=dl())&&(t.maxHandleElement=n.first),cl(n=dl())&&(t.floorLabelElement=n.first),cl(n=dl())&&(t.ceilLabelElement=n.first),cl(n=dl())&&(t.minHandleLabelElement=n.first),cl(n=dl())&&(t.maxHandleLabelElement=n.first),cl(n=dl())&&(t.combinedLabelElement=n.first),cl(n=dl())&&(t.ticksElement=n.first))},hostAttrs:[1,"ng5-slider"],hostVars:5,hostBindings:function(e,t){1&e&&js("resize",function(e){return t.onResize(e)},!1,eo),2&e&&(bs("disabled",t.sliderElementDisabledAttr),au("vertical",t.sliderElementVerticalClass)("animate",t.sliderElementAnimateClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},features:[Uu([vK]),Ht],decls:29,vars:13,consts:[["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-left-out-selection"],["leftOuterSelectionBar",""],[1,"ng5-slider-span","ng5-slider-bar"],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-right-out-selection"],["rightOuterSelectionBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-full-bar"],["fullBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-selection-bar"],["selectionBar",""],[1,"ng5-slider-span","ng5-slider-bar","ng5-slider-selection",3,"ngStyle"],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-min",3,"ngStyle"],["minHandle",""],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-max",3,"ngStyle"],["maxHandle",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-floor"],["floorLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-ceil"],["ceilLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-value"],["minHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-high"],["maxHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-combined"],["combinedLabel",""],["ng5SliderElement","",1,"ng5-slider-ticks",3,"hidden"],["ticksElement",""],["class","ng5-slider-tick",3,"ngClass","ngStyle",4,"ngFor","ngForOf"],[1,"ng5-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],["class","ng5-slider-span ng5-slider-tick-value",3,"template","tooltip","placement","content",4,"ngIf"],["class","ng5-slider-span ng5-slider-tick-legend",3,"innerHTML",4,"ngIf"],[1,"ng5-slider-span","ng5-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ng5-slider-span","ng5-slider-tick-legend",3,"innerHTML"]],template:function(e,t){1&e&&(Os(0,"span",0,1),As(2,"span",2),Ts(),Os(3,"span",3,4),As(5,"span",2),Ts(),Os(6,"span",5,6),As(8,"span",2),Ts(),Os(9,"span",7,8),As(11,"span",9),Ts(),As(12,"span",10,11),As(14,"span",12,13),As(16,"span",14,15),As(18,"span",16,17),As(20,"span",18,19),As(22,"span",20,21),As(24,"span",22,23),Os(26,"span",24,25),ks(28,XY,4,9,"span",26),Ts()),2&e&&(Wo(6),au("ng5-slider-transparent",t.fullBarTransparentClass),Wo(3),au("ng5-slider-draggable",t.selectionBarDraggableClass),Wo(2),Es("ngStyle",t.barStyle),Wo(1),Es("ngStyle",t.minPointerStyle),Wo(2),ou("display",t.range?"inherit":"none"),Es("ngStyle",t.maxPointerStyle),Wo(12),au("ng5-slider-ticks-values-under",t.ticksUnderValuesClass),Es("hidden",!t.showTicks),Wo(2),Es("ngForOf",t.ticks))},directives:function(){return[uK,Uh,cK,lK,Rh,Mh,mK,Nh]},styles:[".ng5-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y} .ng5-slider.with-legend{margin-bottom:40px} .ng5-slider[disabled]{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ng5-slider[disabled] .ng5-slider-draggable{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-selection{background:#8b91a2} .ng5-slider[disabled] .ng5-slider-tick{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-tick.ng5-slider-selected{background:#8b91a2} .ng5-slider .ng5-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ng5-slider .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider .ng5-slider-bar-wrapper{left:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ng5-slider .ng5-slider-draggable{cursor:move} .ng5-slider .ng5-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;border-radius:2px} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-transparent .ng5-slider-bar{background:0 0} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar{background:#df002d} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar{background:#03a688} .ng5-slider .ng5-slider-selection{z-index:2;background:#0db9f0;border-radius:2px} .ng5-slider .ng5-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;border-radius:16px} .ng5-slider .ng5-slider-pointer:after{content:'';width:8px;height:8px;position:absolute;top:12px;left:12px;border-radius:4px;background:#fff} .ng5-slider .ng5-slider-pointer:hover:after{background-color:#fff} .ng5-slider .ng5-slider-pointer.ng5-slider-active{z-index:4} .ng5-slider .ng5-slider-pointer.ng5-slider-active:after{background-color:#451aff} .ng5-slider .ng5-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ng5-slider .ng5-slider-bubble.ng5-slider-limit{color:#55637d} .ng5-slider .ng5-slider-ticks{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ng5-slider .ng5-slider-ticks-values-under .ng5-slider-tick-value{top:auto;bottom:-36px} .ng5-slider .ng5-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ng5-slider .ng5-slider-tick.ng5-slider-selected{background:#0db9f0} .ng5-slider .ng5-slider-tick-value{position:absolute;top:-34px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)} .ng5-slider .ng5-slider-tick-legend{position:absolute;top:24px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);max-width:50px;white-space:normal} .ng5-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;-ms-touch-action:pan-x;touch-action:pan-x} .ng5-slider.vertical .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider.vertical .ng5-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ng5-slider.vertical .ng5-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ng5-slider.vertical .ng5-slider-pointer{left:-14px!important;top:auto;bottom:0} .ng5-slider.vertical .ng5-slider-bubble{left:16px!important;bottom:0} .ng5-slider.vertical .ng5-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ng5-slider.vertical .ng5-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ng5-slider.vertical .ng5-slider-tick-value{left:24px;top:auto;-webkit-transform:translate(0,-28%);transform:translate(0,-28%)} .ng5-slider.vertical .ng5-slider-tick-legend{top:auto;right:24px;-webkit-transform:translate(0,-28%);transform:translate(0,-28%);max-width:none;white-space:nowrap} .ng5-slider.vertical .ng5-slider-ticks-values-under .ng5-slider-tick-value{bottom:auto;left:auto;right:24px} .ng5-slider *{-webkit-transition:none;transition:none} .ng5-slider.animate .ng5-slider-bar-wrapper{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-selection{-webkit-transition:background-color linear .3s;transition:background-color linear .3s} .ng5-slider.animate .ng5-slider-pointer{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-limit{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-combined{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-tick{-webkit-transition:background-color linear .3s;transition:background-color linear .3s}"]}),e}(),mK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ng5-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},decls:2,vars:2,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ng5-slider-inner-tooltip"]],template:function(e,t){1&e&&(ks(0,QY,2,6,"ng-container",0),ks(1,ZY,3,3,"ng-container",0)),2&e&&(Es("ngIf",t.template),Wo(1),Es("ngIf",!t.template))},directives:[Nh,Hh],styles:[".ng5-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]}),e}(),yK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}(),bK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Yp,ip,zz,CY,yK]]}),e}(),_K=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,aY,OY,bK,M_,x_]]}),e}(),wK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,x_,_K]]}),e}(),kK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,sz,uz,aU,zz,vU,x_]]}),e}(),xK=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this)).getLevel=e,o.isExpandable=i,o.options=r,o.options&&(o.trackBy=o.options.trackBy),o}return b(n,[{key:"getDescendants",value:function(e){for(var t=[],n=this.dataNodes.indexOf(e)+1;n1&&void 0!==arguments[1]?arguments[1]:this._dataDiffer,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this._nodeOutlet.viewContainer,r=arguments.length>3?arguments[3]:void 0,o=n.diff(e);!o||(o.forEachOperation(function(n,o,a){if(null==n.previousIndex)t.insertNode(e[a],a,i,r);else if(null==a)i.remove(o),t._levels.delete(n.item);else{var s=i.get(o);i.move(s,a)}}),this._changeDetectorRef.detectChanges())}},{key:"_getNodeDef",value:function(e,t){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(function(n){return n.when&&n.when(t,e)})||this._defaultNodeDef}},{key:"insertNode",value:function(e,t,n,i){var r=this._getNodeDef(e,t),o=new CK(e);o.level=this.treeControl.getLevel?this.treeControl.getLevel(e):void 0!==i&&this._levels.has(i)?this._levels.get(i)+1:0,this._levels.set(e,o.level),(n||this._nodeOutlet.viewContainer).createEmbeddedView(r.template,o,t),AK.mostRecentTreeNode&&(AK.mostRecentTreeNode.data=e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(fc),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["cdk-tree"]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,OK,5),2&e)&&(cl(i=dl())&&(t._nodeDefs=i))},viewQuery:function(e,t){var n;(1&e&&ll(EK,7),2&e)&&(cl(n=dl())&&(t._nodeOutlet=n.first))},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(e,t){1&e&&Is(0,0)},directives:[EK],encapsulation:2}),e}(),AK=function(){var e=function(){function e(t,n){m(this,e),this._elementRef=t,this._tree=n,this._destroyed=new re,this._dataChanges=new re,e.mostRecentTreeNode=this,this._elementRef.nativeElement.classList.add("cdk-tree-node"),this.role="treeitem"}return b(e,[{key:"role",get:function(){return"treeitem"},set:function(e){this._elementRef.nativeElement.setAttribute("role",e)}},{key:"data",get:function(){return this._data},set:function(e){e!==this._data&&(this._data=e,this._setRoleFromData(),this._dataChanges.next())}},{key:"isExpanded",get:function(){return this._tree.treeControl.isExpanded(this._data)}},{key:"_setExpanded",value:function(e){this._isAriaExpanded=e,this._elementRef.nativeElement.setAttribute("aria-expanded","".concat(e))}},{key:"level",get:function(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}},{key:"ngOnInit",value:function(){this._parentNodeAriaLevel=function(e){for(var t=e.parentElement;t&&!PK(t);)t=t.parentElement;return t?t.classList.contains("cdk-nested-tree-node")?Md(t.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level","".concat(this.level+1))}},{key:"ngDoCheck",value:function(){this.isExpanded!=this._isAriaExpanded&&this._setExpanded(this.isExpanded)}},{key:"ngOnDestroy",value:function(){e.mostRecentTreeNode===this&&(e.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}},{key:"focus",value:function(){this._elementRef.nativeElement.focus()}},{key:"_setRoleFromData",value:function(){this.role="treeitem"}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(TK))},e.\u0275dir=Mt({type:e,selectors:[["cdk-tree-node"]],inputs:{role:"role"},exportAs:["cdkTreeNode"]}),e.mostRecentTreeNode=null,e}();function PK(e){var t=e.classList;return!(!(null==t?void 0:t.contains("cdk-nested-tree-node"))&&!(null==t?void 0:t.contains("cdk-tree")))}var MK=/([A-Za-z%]+)$/,IK=function(){var e=function(){function e(t,n,i,r){var o=this;m(this,e),this._treeNode=t,this._tree=n,this._element=i,this._dir=r,this._destroyed=new re,this.indentUnits="px",this._indent=40,this._setPadding(),r&&r.change.pipe(sf(this._destroyed)).subscribe(function(){return o._setPadding(!0)}),t._dataChanges.subscribe(function(){return o._setPadding()})}return b(e,[{key:"level",get:function(){return this._level},set:function(e){this._setLevelInput(e)}},{key:"indent",get:function(){return this._indent},set:function(e){this._setIndentInput(e)}},{key:"ngOnDestroy",value:function(){this._destroyed.next(),this._destroyed.complete()}},{key:"_paddingIndent",value:function(){var e=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,t=null==this._level?e:this._level;return"number"==typeof t?"".concat(t*this._indent).concat(this.indentUnits):null}},{key:"_setPadding",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this._paddingIndent();if(t!==this._currentPadding||e){var n=this._element.nativeElement,i=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",r="paddingLeft"===i?"paddingRight":"paddingLeft";n.style[i]=t||"",n.style[r]="",this._currentPadding=t}}},{key:"_setLevelInput",value:function(e){this._level=Md(e,null),this._setPadding()}},{key:"_setIndentInput",value:function(e){var t=e,n="px";if("string"==typeof e){var i=e.split(MK);t=i[0],n=i[1]||n}this.indentUnits=n,this._indent=Md(t),this._setPadding()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(AK),Ss(TK),Ss(Yu),Ss(Vf,8))},e.\u0275dir=Mt({type:e,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),e}(),RK=function(){var e=function(){function e(t,n){m(this,e),this._tree=t,this._treeNode=n,this._recursive=!1}return b(e,[{key:"recursive",get:function(){return this._recursive},set:function(e){this._recursive=Pd(e)}},{key:"_toggle",value:function(e){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),e.stopPropagation()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(TK),Ss(AK))},e.\u0275dir=Mt({type:e,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(e,t){1&e&&js("click",function(e){return t._toggle(e)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),e}(),DK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({}),e}(),NK=Yy(Wy(AK)),LK=function(){var t=function(t){a(i,t);var n=s(i);function i(e,t,r){var o;return m(this,i),(o=n.call(this,e,t)).tabIndex=Number(r)||0,e.nativeElement.classList.add("mat-tree-node"),o}return b(i,[{key:"ngOnInit",value:function(){e(p(i.prototype),"ngOnInit",this).call(this)}},{key:"ngDoCheck",value:function(){e(p(i.prototype),"ngDoCheck",this).call(this)}},{key:"ngOnDestroy",value:function(){e(p(i.prototype),"ngOnDestroy",this).call(this)}}]),i}(NK);return t.\u0275fac=function(e){return new(e||t)(Ss(Yu),Ss(TK),Oi("tabindex"))},t.\u0275dir=Mt({type:t,selectors:[["mat-tree-node"]],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[Uu([{provide:AK,useExisting:t}]),as]}),t}(),jK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(OK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[Uu([{provide:OK,useExisting:t}]),as]}),t}(),FK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"level",get:function(){return this._level},set:function(e){this._setLevelInput(e)}},{key:"indent",get:function(){return this._indent},set:function(e){this._setIndentInput(e)}}]),n}(IK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[Uu([{provide:IK,useExisting:t}]),as]}),t}(),BK=function(){var e=function e(t,n){m(this,e),this.viewContainer=t,this._node=n};return e.\u0275fac=function(t){return new(t||e)(Ss(Pc),Ss(SK,8))},e.\u0275dir=Mt({type:e,selectors:[["","matTreeNodeOutlet",""]],features:[Uu([{provide:EK,useExisting:e}])]}),e}(),VK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return n}(TK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275cmp=Et({type:t,selectors:[["mat-tree"]],viewQuery:function(e,t){var n;(1&e&&ll(BK,7),2&e)&&(cl(n=dl())&&(t._nodeOutlet=n.first))},hostAttrs:["role","tree",1,"mat-tree","cdk-tree"],exportAs:["matTree"],features:[Uu([{provide:TK,useExisting:t}]),as],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(e,t){1&e&&Is(0,0)},directives:[BK],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),t}(),zK=function(){var e,t=function(e){a(n,e);var t=s(n);function n(){return m(this,n),t.apply(this,arguments)}return b(n,[{key:"recursive",get:function(){return this._recursive},set:function(e){this._recursive=Pd(e)}}]),n}(RK);return t.\u0275fac=function(n){return(e||(e=Ei(t)))(n||t)},t.\u0275dir=Mt({type:t,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[Uu([{provide:RK,useExisting:t}]),as]}),t}(),UK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[DK,Gy],Gy]}),e}(),HK=function(){function e(t,n,i,r){m(this,e),this.transformFunction=t,this.getLevel=n,this.isExpandable=i,this.getChildren=r}return b(e,[{key:"_flattenNode",value:function(e,t,n,i){var r=this,o=this.transformFunction(e,t);if(n.push(o),this.isExpandable(o)){var a=this.getChildren(e);a&&(Array.isArray(a)?this._flattenChildren(a,t,n,i):a.pipe(op(1)).subscribe(function(e){r._flattenChildren(e,t,n,i)}))}return n}},{key:"_flattenChildren",value:function(e,t,n,i){var r=this;e.forEach(function(o,a){var s=i.slice();s.push(a!=e.length-1),r._flattenNode(o,t+1,n,s)})}},{key:"flattenNodes",value:function(e){var t=this,n=[];return e.forEach(function(e){return t._flattenNode(e,0,n,[])}),n}},{key:"expandFlattenedNodes",value:function(e,t){var n=this,i=[],r=[];return r[0]=!0,e.forEach(function(e){for(var o=!0,a=0;a<=n.getLevel(e);a++)o=o&&r[a];o&&i.push(e),n.isExpandable(e)&&(r[n.getLevel(e)+1]=t.isExpanded(e))}),i}}]),e}(),GK=function(e){a(n,e);var t=s(n);function n(e,i,r){var o;return m(this,n),(o=t.call(this))._treeControl=e,o._treeFlattener=i,o._flattenedData=new tv([]),o._expandedData=new tv([]),o._data=new tv([]),r&&(o.data=r),o}return b(n,[{key:"data",get:function(){return this._data.value},set:function(e){this._data.next(e),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}},{key:"connect",value:function(e){var t=this;return Ee(e.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(se(function(){return t._expandedData.next(t._treeFlattener.expandFlattenedNodes(t._flattenedData.value,t._treeControl)),t._expandedData.value}))}},{key:"disconnect",value:function(){}}]),n}(function(){return function e(){m(this,e)}}()),WK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,fw,UK,Mq]]}),e}(),qK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,kK,WK]]}),e}(),XK=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,kK,WK,qK],kK,WK,qK]}),e}();function YK(e){return null!==e&&"object"==typeof e&&"constructor"in e&&e.constructor===Object}function KK(e,t){void 0===e&&(e={}),void 0===t&&(t={}),Object.keys(t).forEach(function(n){void 0===e[n]?e[n]=t[n]:YK(t[n])&&YK(e[n])&&Object.keys(t[n]).length>0&&KK(e[n],t[n])})}var $K={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function QK(){var e="undefined"!=typeof document?document:{};return KK(e,$K),e}var ZK={document:$K,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(e){return"undefined"==typeof setTimeout?(e(),null):setTimeout(e,0)},cancelAnimationFrame:function(e){"undefined"!=typeof setTimeout&&clearTimeout(e)}};function JK(){var e="undefined"!=typeof window?window:{};return KK(e,ZK),e}function e$(e){return(e$=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function t$(e,t){return(t$=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function n$(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(U){return!1}}function i$(e,t,n){return(i$=n$()?Reflect.construct:function(e,t,n){var i=[null];i.push.apply(i,t);var r=new(Function.bind.apply(e,i));return n&&t$(r,n.prototype),r}).apply(null,arguments)}function r$(e){var t="function"==typeof Map?new Map:void 0;return(r$=function(e){if(null===e||!function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return i$(e,arguments,e$(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),t$(n,e)})(e)}var o$=function(e){function t(t){var n;return function(e){var t=e.__proto__;Object.defineProperty(e,"__proto__",{get:function(){return t},set:function(e){t.__proto__=e}})}(function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(n=e.call.apply(e,[this].concat(t))||this)),n}return function(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}(t,e),t}(r$(Array));function a$(e){void 0===e&&(e=[]);var t=[];return e.forEach(function(e){Array.isArray(e)?t.push.apply(t,a$(e)):t.push(e)}),t}function s$(e,t){return Array.prototype.filter.call(e,t)}function u$(e,t){var n=JK(),i=QK(),r=[];if(!t&&e instanceof o$)return e;if(!e)return new o$(r);if("string"==typeof e){var o=e.trim();if(o.indexOf("<")>=0&&o.indexOf(">")>=0){var a="div";0===o.indexOf("0}).length>0},toggleClass:function(){for(var e=arguments.length,t=new Array(e),n=0;n=0;f-=1){var p=d[f];o&&p.listener===o||o&&p.listener&&p.listener.dom7proxy&&p.listener.dom7proxy===o?(h.removeEventListener(c,p.proxyListener,a),d.splice(f,1)):o||(h.removeEventListener(c,p.proxyListener,a),d.splice(f,1))}}return this},trigger:function(){for(var e=JK(),t=arguments.length,n=new Array(t),i=0;i0}),c.dispatchEvent(l),c.dom7EventData=[],delete c.dom7EventData}}return this},transitionEnd:function(e){var t=this;return e&&t.on("transitionend",function n(i){i.target===this&&(e.call(this,i),t.off("transitionend",n))}),this},outerWidth:function(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(e){if(this.length>0){if(e){var t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){var e=JK();return this[0]?e.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var e=JK(),t=QK(),n=this[0],i=n.getBoundingClientRect(),r=t.body;return{top:i.top+(n===e?e.scrollY:n.scrollTop)-(n.clientTop||r.clientTop||0),left:i.left+(n===e?e.scrollX:n.scrollLeft)-(n.clientLeft||r.clientLeft||0)}}return null},css:function(e,t){var n,i=JK();if(1===arguments.length){if("string"!=typeof e){for(n=0;nt-1)return u$([]);if(e<0){var n=t+e;return u$(n<0?[]:[this[n]])}return u$([this[e]])},append:function(){for(var e,t=QK(),n=0;n=0;n-=1)this[t].insertBefore(r.childNodes[n],this[t].childNodes[0])}else if(e instanceof o$)for(n=0;n0?e?this[0].nextElementSibling&&u$(this[0].nextElementSibling).is(e)?u$([this[0].nextElementSibling]):u$([]):u$(this[0].nextElementSibling?[this[0].nextElementSibling]:[]):u$([])},nextAll:function(e){var t=[],n=this[0];if(!n)return u$([]);for(;n.nextElementSibling;){var i=n.nextElementSibling;e?u$(i).is(e)&&t.push(i):t.push(i),n=i}return u$(t)},prev:function(e){if(this.length>0){var t=this[0];return e?t.previousElementSibling&&u$(t.previousElementSibling).is(e)?u$([t.previousElementSibling]):u$([]):u$(t.previousElementSibling?[t.previousElementSibling]:[])}return u$([])},prevAll:function(e){var t=[],n=this[0];if(!n)return u$([]);for(;n.previousElementSibling;){var i=n.previousElementSibling;e?u$(i).is(e)&&t.push(i):t.push(i),n=i}return u$(t)},parent:function(e){for(var t=[],n=0;n=0,observer:"MutationObserver"in e||"WebkitMutationObserver"in e,passiveListener:function(){var t=!1;try{var n=Object.defineProperty({},"passive",{get:function(){t=!0}});e.addEventListener("testPassiveListener",null,n)}catch(i){}return t}(),gestures:"ongesturestart"in e}}()),d$}function x$(e){return void 0===e&&(e={}),f$||(f$=function(e){var t=(void 0===e?{}:e).userAgent,n=k$(),i=JK(),r=i.navigator.platform,o=t||i.navigator.userAgent,a={ios:!1,android:!1},s=i.screen.width,u=i.screen.height,c=o.match(/(Android);?[\s\/]+([\d.]+)?/),l=o.match(/(iPad).*OS\s([\d_]+)/),h=o.match(/(iPod)(.*OS\s([\d_]+))?/),d=!l&&o.match(/(iPhone\sOS|iOS)\s([\d_]+)/),f="Win32"===r,p="MacIntel"===r;return!l&&p&&n.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(s+"x"+u)>=0&&((l=o.match(/(Version)\/([\d.]+)/))||(l=[0,1,"13_0_0"]),p=!1),c&&!f&&(a.os="android",a.android=!0),(l||d||h)&&(a.os="ios",a.ios=!0),a}(e)),f$}function S$(){return p$||(p$=function(){var e,t=JK();return{isEdge:!!t.navigator.userAgent.match(/Edge/g),isSafari:(e=t.navigator.userAgent.toLowerCase(),e.indexOf("safari")>=0&&e.indexOf("chrome")<0&&e.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(t.navigator.userAgent)}}()),p$}var E$={name:"resize",create:function(){var e=this;_$(e,{resize:{observer:null,createObserver:function(){!e||e.destroyed||!e.initialized||(e.resize.observer=new ResizeObserver(function(t){var n=e.width,i=e.height,r=n,o=i;t.forEach(function(t){var n=t.contentBoxSize,i=t.contentRect,a=t.target;a&&a!==e.el||(r=i?i.width:(n[0]||n).inlineSize,o=i?i.height:(n[0]||n).blockSize)}),(r!==n||o!==i)&&e.resize.resizeHandler()}),e.resize.observer.observe(e.el))},removeObserver:function(){e.resize.observer&&e.resize.observer.unobserve&&e.el&&(e.resize.observer.unobserve(e.el),e.resize.observer=null)},resizeHandler:function(){!e||e.destroyed||!e.initialized||(e.emit("beforeResize"),e.emit("resize"))},orientationChangeHandler:function(){!e||e.destroyed||!e.initialized||e.emit("orientationchange")}}})},on:{init:function(e){var t=JK();e.params.resizeObserver&&void 0!==JK().ResizeObserver?e.resize.createObserver():(t.addEventListener("resize",e.resize.resizeHandler),t.addEventListener("orientationchange",e.resize.orientationChangeHandler))},destroy:function(e){var t=JK();e.resize.removeObserver(),t.removeEventListener("resize",e.resize.resizeHandler),t.removeEventListener("orientationchange",e.resize.orientationChangeHandler)}}};function C$(){return(C$=Object.assign||function(e){for(var t=1;t0)&&(!r.isTouched||!r.isMoved))){o.noSwipingClass&&""!==o.noSwipingClass&&s.target&&s.target.shadowRoot&&e.path&&e.path[0]&&(u=v$(e.path[0]));var c=o.noSwipingSelector?o.noSwipingSelector:"."+o.noSwipingClass;if(o.noSwiping&&(s.target&&s.target.shadowRoot?function(e,t){return void 0===t&&(t=this),function t(n){return n&&n!==QK()&&n!==JK()?(n.assignedSlot&&(n=n.assignedSlot),n.closest(e)||t(n.getRootNode().host)):null}(t)}(c,s.target):u.closest(c)[0]))return void(t.allowClick=!0);if(!o.swipeHandler||u.closest(o.swipeHandler)[0]){a.currentX="touchstart"===s.type?s.targetTouches[0].pageX:s.pageX,a.currentY="touchstart"===s.type?s.targetTouches[0].pageY:s.pageY;var l=a.currentX,h=a.currentY,d=o.edgeSwipeDetection||o.iOSEdgeSwipeDetection,f=o.edgeSwipeThreshold||o.iOSEdgeSwipeThreshold;if(d&&(l<=f||l>=i.innerWidth-f)){if("prevent"!==d)return;e.preventDefault()}if(_$(r,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),a.startX=l,a.startY=h,r.touchStartTime=m$(),t.allowClick=!0,t.updateSize(),t.swipeDirection=void 0,o.threshold>0&&(r.allowThresholdMove=!1),"touchstart"!==s.type){var p=!0;u.is(r.focusableElements)&&(p=!1),n.activeElement&&v$(n.activeElement).is(r.focusableElements)&&n.activeElement!==u[0]&&n.activeElement.blur(),(o.touchStartForcePreventDefault||p&&t.allowTouchMove&&o.touchStartPreventDefault)&&!u[0].isContentEditable&&s.preventDefault()}t.emit("touchStart",s)}}}}function P$(e){var t=QK(),n=this,i=n.touchEventsData,r=n.params,o=n.touches,a=n.rtlTranslate;if(n.enabled){var s=e;if(s.originalEvent&&(s=s.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&n.emit("touchMoveOpposite",s));if(!i.isTouchEvent||"touchmove"===s.type){var u="touchmove"===s.type&&s.targetTouches&&(s.targetTouches[0]||s.changedTouches[0]),c="touchmove"===s.type?u.pageX:s.pageX,l="touchmove"===s.type?u.pageY:s.pageY;if(s.preventedByNestedSwiper)return o.startX=c,void(o.startY=l);if(!n.allowTouchMove)return n.allowClick=!1,void(i.isTouched&&(_$(o,{startX:c,startY:l,currentX:c,currentY:l}),i.touchStartTime=m$()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(n.isVertical()){if(lo.startY&&n.translate>=n.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(co.startX&&n.translate>=n.minTranslate())return;if(i.isTouchEvent&&t.activeElement&&s.target===t.activeElement&&v$(s.target).is(i.focusableElements))return i.isMoved=!0,void(n.allowClick=!1);if(i.allowTouchCallbacks&&n.emit("touchMove",s),!(s.targetTouches&&s.targetTouches.length>1)){o.currentX=c,o.currentY=l;var h=o.currentX-o.startX,d=o.currentY-o.startY;if(!(n.params.threshold&&Math.sqrt(Math.pow(h,2)+Math.pow(d,2))=25&&(f=180*Math.atan2(Math.abs(d),Math.abs(h))/Math.PI,i.isScrolling=n.isHorizontal()?f>r.touchAngle:90-f>r.touchAngle)),i.isScrolling&&n.emit("touchMoveOpposite",s),void 0===i.startMoving&&(o.currentX!==o.startX||o.currentY!==o.startY)&&(i.startMoving=!0),i.isScrolling)return void(i.isTouched=!1);if(i.startMoving){n.allowClick=!1,!r.cssMode&&s.cancelable&&s.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&s.stopPropagation(),i.isMoved||(r.loop&&n.loopFix(),i.startTranslate=n.getTranslate(),n.setTransition(0),n.animating&&n.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,r.grabCursor&&(!0===n.allowSlideNext||!0===n.allowSlidePrev)&&n.setGrabCursor(!0),n.emit("sliderFirstMove",s)),n.emit("sliderMove",s),i.isMoved=!0;var p=n.isHorizontal()?h:d;o.diff=p,p*=r.touchRatio,a&&(p=-p),n.swipeDirection=p>0?"prev":"next",i.currentTranslate=p+i.startTranslate;var v=!0,g=r.resistanceRatio;if(r.touchReleaseOnEdges&&(g=0),p>0&&i.currentTranslate>n.minTranslate()?(v=!1,r.resistance&&(i.currentTranslate=n.minTranslate()-1+Math.pow(-n.minTranslate()+i.startTranslate+p,g))):p<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),!n.allowSlidePrev&&!n.allowSlideNext&&(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(p)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,o.startX=o.currentX,o.startY=o.currentY,i.currentTranslate=i.startTranslate,void(o.diff=n.isHorizontal()?o.currentX-o.startX:o.currentY-o.startY)}!r.followFinger||r.cssMode||((r.freeMode||r.watchSlidesProgress||r.watchSlidesVisibility)&&(n.updateActiveIndex(),n.updateSlidesClasses()),r.freeMode&&(0===i.velocities.length&&i.velocities.push({position:o[n.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:o[n.isHorizontal()?"currentX":"currentY"],time:m$()})),n.updateProgress(i.currentTranslate),n.setTranslate(i.currentTranslate))}}}}}}function M$(e){var t=this,n=t.touchEventsData,i=t.params,r=t.touches,o=t.rtlTranslate,a=t.$wrapperEl,s=t.slidesGrid,u=t.snapGrid;if(t.enabled){var c=e;if(c.originalEvent&&(c=c.originalEvent),n.allowTouchCallbacks&&t.emit("touchEnd",c),n.allowTouchCallbacks=!1,!n.isTouched)return n.isMoved&&i.grabCursor&&t.setGrabCursor(!1),n.isMoved=!1,void(n.startMoving=!1);i.grabCursor&&n.isMoved&&n.isTouched&&(!0===t.allowSlideNext||!0===t.allowSlidePrev)&&t.setGrabCursor(!1);var l,h=m$(),d=h-n.touchStartTime;if(t.allowClick&&(t.updateClickedSlide(c),t.emit("tap click",c),d<300&&h-n.lastClickTime<300&&t.emit("doubleTap doubleClick",c)),n.lastClickTime=m$(),g$(function(){t.destroyed||(t.allowClick=!0)}),!n.isTouched||!n.isMoved||!t.swipeDirection||0===r.diff||n.currentTranslate===n.startTranslate)return n.isTouched=!1,n.isMoved=!1,void(n.startMoving=!1);if(n.isTouched=!1,n.isMoved=!1,n.startMoving=!1,l=i.followFinger?o?t.translate:-t.translate:-n.currentTranslate,!i.cssMode){if(i.freeMode){if(l<-t.minTranslate())return void t.slideTo(t.activeIndex);if(l>-t.maxTranslate())return void t.slideTo(t.slides.length1){var f=n.velocities.pop(),p=n.velocities.pop(),v=f.time-p.time;t.velocity=(f.position-p.position)/v,t.velocity/=2,Math.abs(t.velocity)150||m$()-f.time>300)&&(t.velocity=0)}else t.velocity=0;t.velocity*=i.freeModeMomentumVelocityRatio,n.velocities.length=0;var g=1e3*i.freeModeMomentumRatio,m=t.translate+t.velocity*g;o&&(m=-m);var y,b,_=!1,w=20*Math.abs(t.velocity)*i.freeModeMomentumBounceRatio;if(mt.minTranslate())i.freeModeMomentumBounce?(m-t.minTranslate()>w&&(m=t.minTranslate()+w),y=t.minTranslate(),_=!0,n.allowMomentumBounce=!0):m=t.minTranslate(),i.loop&&i.centeredSlides&&(b=!0);else if(i.freeModeSticky){for(var k,x=0;x-m){k=x;break}m=-(m=Math.abs(u[k]-m)=i.longSwipesMs)&&(t.updateProgress(),t.updateActiveIndex(),t.updateSlidesClasses()))}for(var C=0,O=t.slidesSizesGrid[0],T=0;T=s[T]&&l=s[T]&&(C=T,O=s[s.length-1]-s[s.length-2])}var P=(l-s[C])/O,M=Ci.longSwipesMs){if(!i.longSwipes)return void t.slideTo(t.activeIndex);"next"===t.swipeDirection&&t.slideTo(P>=i.longSwipesRatio?C+M:C),"prev"===t.swipeDirection&&t.slideTo(P>1-i.longSwipesRatio?C+M:C)}else{if(!i.shortSwipes)return void t.slideTo(t.activeIndex);!t.navigation||c.target!==t.navigation.nextEl&&c.target!==t.navigation.prevEl?("next"===t.swipeDirection&&t.slideTo(C+M),"prev"===t.swipeDirection&&t.slideTo(C)):t.slideTo(c.target===t.navigation.nextEl?C+M:C)}}}}function I$(){var e=this,t=e.params,n=e.el;if(!n||0!==n.offsetWidth){t.breakpoints&&e.setBreakpoint();var i=e.allowSlideNext,r=e.allowSlidePrev,o=e.snapGrid;e.allowSlideNext=!0,e.allowSlidePrev=!0,e.updateSize(),e.updateSlides(),e.updateSlidesClasses(),e.slideTo(("auto"===t.slidesPerView||t.slidesPerView>1)&&e.isEnd&&!e.isBeginning&&!e.params.centeredSlides?e.slides.length-1:e.activeIndex,0,!1,!0),e.autoplay&&e.autoplay.running&&e.autoplay.paused&&e.autoplay.run(),e.allowSlidePrev=r,e.allowSlideNext=i,e.params.watchOverflow&&o!==e.snapGrid&&e.checkOverflow()}}function R$(e){var t=this;!t.enabled||t.allowClick||(t.params.preventClicks&&e.preventDefault(),t.params.preventClicksPropagation&&t.animating&&(e.stopPropagation(),e.stopImmediatePropagation()))}function D$(){var e=this,t=e.wrapperEl,n=e.rtlTranslate;if(e.enabled){e.previousTranslate=e.translate,e.translate=e.isHorizontal()?n?t.scrollWidth-t.offsetWidth-t.scrollLeft:-t.scrollLeft:-t.scrollTop,-0===e.translate&&(e.translate=0),e.updateActiveIndex(),e.updateSlidesClasses();var i=e.maxTranslate()-e.minTranslate();(0===i?0:(e.translate-e.minTranslate())/i)!==e.progress&&e.updateProgress(n?-e.translate:e.translate),e.emit("setTranslate",e.translate,!1)}}var N$=!1;function L$(){}var j$={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!1,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};var F$={modular:{useParams:function(e){var t=this;!t.modules||Object.keys(t.modules).forEach(function(n){var i=t.modules[n];i.params&&_$(e,i.params)})},useModules:function(e){void 0===e&&(e={});var t=this;!t.modules||Object.keys(t.modules).forEach(function(n){var i=t.modules[n],r=e[n]||{};i.on&&t.on&&Object.keys(i.on).forEach(function(e){t.on(e,i.on[e])}),i.create&&i.create.bind(t)(r)})}},eventsEmitter:{on:function(e,t,n){var i=this;if("function"!=typeof t)return i;var r=n?"unshift":"push";return e.split(" ").forEach(function(e){i.eventsListeners[e]||(i.eventsListeners[e]=[]),i.eventsListeners[e][r](t)}),i},once:function(e,t,n){var i=this;if("function"!=typeof t)return i;function r(){i.off(e,r),r.__emitterProxy&&delete r.__emitterProxy;for(var n=arguments.length,o=new Array(n),a=0;a=0&&t.eventsAnyListeners.splice(n,1),t},off:function(e,t){var n=this;return n.eventsListeners&&e.split(" ").forEach(function(e){void 0===t?n.eventsListeners[e]=[]:n.eventsListeners[e]&&n.eventsListeners[e].forEach(function(i,r){(i===t||i.__emitterProxy&&i.__emitterProxy===t)&&n.eventsListeners[e].splice(r,1)})}),n},emit:function(){var e=this;if(!e.eventsListeners)return e;for(var t,n,i,r=arguments.length,o=new Array(r),a=0;a=0&&(b=parseFloat(b.replace("%",""))/100*o),e.virtualSize=-b,l.css(a?{marginLeft:"",marginBottom:"",marginTop:""}:{marginRight:"",marginBottom:"",marginTop:""}),i.slidesPerColumn>1&&(x=Math.floor(h/i.slidesPerColumn)===h/e.params.slidesPerColumn?h:Math.ceil(h/i.slidesPerColumn)*i.slidesPerColumn,"auto"!==i.slidesPerView&&"row"===i.slidesPerColumnFill&&(x=Math.max(x,i.slidesPerView*i.slidesPerColumn)));for(var O,T=i.slidesPerColumn,A=x/T,P=Math.floor(h/i.slidesPerColumn),M=0;M1){var R=void 0,D=void 0,N=void 0;if("row"===i.slidesPerColumnFill&&i.slidesPerGroup>1){var L=Math.floor(M/(i.slidesPerGroup*i.slidesPerColumn)),j=M-i.slidesPerColumn*i.slidesPerGroup*L,F=0===L?i.slidesPerGroup:Math.min(Math.ceil((h-L*T*i.slidesPerGroup)/T),i.slidesPerGroup);N=Math.floor(j/F),I.css({"-webkit-box-ordinal-group":R=(D=j-N*F+L*i.slidesPerGroup)+N*x/T,"-moz-box-ordinal-group":R,"-ms-flex-order":R,"-webkit-order":R,order:R})}else"column"===i.slidesPerColumnFill?(N=M-(D=Math.floor(M/T))*T,(D>P||D===P&&N===T-1)&&(N+=1)>=T&&(N=0,D+=1)):D=M-(N=Math.floor(M/A))*A;I.css(t("margin-top"),0!==N?i.spaceBetween&&i.spaceBetween+"px":"")}if("none"!==I.css("display")){if("auto"===i.slidesPerView){var B=getComputedStyle(I[0]),V=I[0].style.transform,z=I[0].style.webkitTransform;if(V&&(I[0].style.transform="none"),z&&(I[0].style.webkitTransform="none"),i.roundLengths)O=e.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else{var U=n(B,"width"),H=n(B,"padding-left"),G=n(B,"padding-right"),W=n(B,"margin-left"),q=n(B,"margin-right"),X=B.getPropertyValue("box-sizing");if(X&&"border-box"===X)O=U+W+q;else{var Y=I[0];O=U+H+G+W+q+(Y.offsetWidth-Y.clientWidth)}}V&&(I[0].style.transform=V),z&&(I[0].style.webkitTransform=z),i.roundLengths&&(O=Math.floor(O))}else O=(o-(i.slidesPerView-1)*b)/i.slidesPerView,i.roundLengths&&(O=Math.floor(O)),l[M]&&(l[M].style[t("width")]=O+"px");l[M]&&(l[M].swiperSlideSize=O),p.push(O),i.centeredSlides?(_=_+O/2+w/2+b,0===w&&0!==M&&(_=_-o/2-b),0===M&&(_=_-o/2-b),Math.abs(_)<.001&&(_=0),i.roundLengths&&(_=Math.floor(_)),k%i.slidesPerGroup==0&&d.push(_),f.push(_)):(i.roundLengths&&(_=Math.floor(_)),(k-Math.min(e.params.slidesPerGroupSkip,k))%e.params.slidesPerGroup==0&&d.push(_),f.push(_),_=_+O+b),e.virtualSize+=O+b,w=O,k+=1}}if(e.virtualSize=Math.max(e.virtualSize,o)+g,a&&s&&("slide"===i.effect||"coverflow"===i.effect)&&r.css({width:e.virtualSize+i.spaceBetween+"px"}),i.setWrapperSize&&r.css(((E={})[t("width")]=e.virtualSize+i.spaceBetween+"px",E)),i.slidesPerColumn>1&&(e.virtualSize=(O+i.spaceBetween)*x,e.virtualSize=Math.ceil(e.virtualSize/i.slidesPerColumn)-i.spaceBetween,r.css(((C={})[t("width")]=e.virtualSize+i.spaceBetween+"px",C)),i.centeredSlides)){S=[];for(var K=0;K1&&d.push(e.virtualSize-o)}if(0===d.length&&(d=[0]),0!==i.spaceBetween){var J,ee=e.isHorizontal()&&a?"marginLeft":t("marginRight");l.filter(function(e,t){return!i.cssMode||t!==l.length-1}).css(((J={})[ee]=b+"px",J))}if(i.centeredSlides&&i.centeredSlidesBounds){var te=0;p.forEach(function(e){te+=e+(i.spaceBetween?i.spaceBetween:0)});var ne=(te-=i.spaceBetween)-o;d=d.map(function(e){return e<0?-v:e>ne?ne+g:e})}if(i.centerInsufficientSlides){var ie=0;if(p.forEach(function(e){ie+=e+(i.spaceBetween?i.spaceBetween:0)}),(ie-=i.spaceBetween)1)if(n.params.centeredSlides)n.visibleSlides.each(function(e){i.push(e)});else for(t=0;tn.slides.length&&!r)break;i.push(a(s))}else i.push(a(n.activeIndex));for(t=0;to?u:o}o&&n.$wrapperEl.css("height",o+"px")},updateSlidesOffset:function(){for(var e=this.slides,t=0;t=0&&c1&&l<=t.size||c<=0&&l>=t.size)&&(t.visibleSlides.push(s),t.visibleSlidesIndexes.push(a),i.eq(a).addClass(n.slideVisibleClass))}s.progress=r?-u:u}t.visibleSlides=v$(t.visibleSlides)}},updateProgress:function(e){var t=this;void 0===e&&(e=t&&t.translate&&t.translate*(t.rtlTranslate?-1:1)||0);var n=t.params,i=t.maxTranslate()-t.minTranslate(),r=t.progress,o=t.isBeginning,a=t.isEnd,s=o,u=a;0===i?(r=0,o=!0,a=!0):(o=(r=(e-t.minTranslate())/i)<=0,a=r>=1),_$(t,{progress:r,isBeginning:o,isEnd:a}),(n.watchSlidesProgress||n.watchSlidesVisibility||n.centeredSlides&&n.autoHeight)&&t.updateSlidesProgress(e),o&&!s&&t.emit("reachBeginning toEdge"),a&&!u&&t.emit("reachEnd toEdge"),(s&&!o||u&&!a)&&t.emit("fromEdge"),t.emit("progress",r)},updateSlidesClasses:function(){var e,t=this,n=t.slides,i=t.params,r=t.$wrapperEl,o=t.activeIndex,a=t.realIndex,s=t.virtual&&i.virtual.enabled;n.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(e=s?t.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+o+'"]'):n.eq(o)).addClass(i.slideActiveClass),i.loop&&(e.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+a+'"]').addClass(i.slideDuplicateActiveClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+a+'"]').addClass(i.slideDuplicateActiveClass));var u=e.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===u.length&&(u=n.eq(0)).addClass(i.slideNextClass);var c=e.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=n.eq(-1)).addClass(i.slidePrevClass),i.loop&&(u.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+u.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+u.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),t.emitSlidesClasses()},updateActiveIndex:function(e){var t,n=this,i=n.rtlTranslate?n.translate:-n.translate,r=n.slidesGrid,o=n.snapGrid,a=n.params,s=n.activeIndex,u=n.realIndex,c=n.snapIndex,l=e;if(void 0===l){for(var h=0;h=r[h]&&i=r[h]&&i=r[h]&&(l=h);a.normalizeSlideIndex&&(l<0||void 0===l)&&(l=0)}if(o.indexOf(i)>=0)t=o.indexOf(i);else{var d=Math.min(a.slidesPerGroupSkip,l);t=d+Math.floor((l-d)/a.slidesPerGroup)}if(t>=o.length&&(t=o.length-1),l!==s){var f=parseInt(n.slides.eq(l).attr("data-swiper-slide-index")||l,10);_$(n,{snapIndex:t,realIndex:f,previousIndex:s,activeIndex:l}),n.emit("activeIndexChange"),n.emit("snapIndexChange"),u!==f&&n.emit("realIndexChange"),(n.initialized||n.params.runCallbacksOnInit)&&n.emit("slideChange")}else t!==c&&(n.snapIndex=t,n.emit("snapIndexChange"))},updateClickedSlide:function(e){var t,n=this,i=n.params,r=v$(e.target).closest("."+i.slideClass)[0],o=!1;if(r)for(var a=0;a6&&(i=i.split(", ").map(function(e){return e.replace(",",".")}).join(", ")),r=new o.WebKitCSSMatrix("none"===i?"":i)):n=(r=a.MozTransform||a.OTransform||a.MsTransform||a.msTransform||a.transform||a.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===t&&(i=o.WebKitCSSMatrix?r.m41:16===n.length?parseFloat(n[12]):parseFloat(n[4])),"y"===t&&(i=o.WebKitCSSMatrix?r.m42:16===n.length?parseFloat(n[13]):parseFloat(n[5])),i||0}(t.$wrapperEl[0],e);return i&&(o=-o),o||0},setTranslate:function(e,t){var n=this,i=n.rtlTranslate,r=n.params,o=n.$wrapperEl,a=n.wrapperEl,s=n.progress,u=0,c=0;n.isHorizontal()?u=i?-e:e:c=e,r.roundLengths&&(u=Math.floor(u),c=Math.floor(c)),r.cssMode?a[n.isHorizontal()?"scrollLeft":"scrollTop"]=n.isHorizontal()?-u:-c:r.virtualTranslate||o.transform("translate3d("+u+"px, "+c+"px, 0px)"),n.previousTranslate=n.translate,n.translate=n.isHorizontal()?u:c;var l=n.maxTranslate()-n.minTranslate();(0===l?0:(e-n.minTranslate())/l)!==s&&n.updateProgress(e),n.emit("setTranslate",n.translate,t)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(e,t,n,i,r){void 0===e&&(e=0),void 0===t&&(t=this.params.speed),void 0===n&&(n=!0),void 0===i&&(i=!0);var o=this,a=o.params,s=o.wrapperEl;if(o.animating&&a.preventInteractionOnTransition)return!1;var u,c=o.minTranslate(),l=o.maxTranslate();if(o.updateProgress(u=i&&e>c?c:i&&eo?"next":ir?"next":i=c.length&&(g=c.length-1),(d||u.initialSlide||0)===(h||0)&&n&&a.emit("beforeSlideChangeStart");var m,y=-c[g];if(a.updateProgress(y),u.normalizeSlideIndex)for(var b=0;b=w&&_=w&&_=w&&(s=b)}if(a.initialized&&s!==d&&(!a.allowSlideNext&&ya.translate&&y>a.maxTranslate()&&(d||0)!==s))return!1;if(m=s>d?"next":s=e&&(d=e)}),void 0!==d&&(c=a.indexOf(d))<0&&(c=i.activeIndex-1),i.slideTo(c,e,t,n)},slideReset:function(e,t,n){return void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),this.slideTo(this.activeIndex,e,t,n)},slideToClosest:function(e,t,n,i){void 0===e&&(e=this.params.speed),void 0===t&&(t=!0),void 0===i&&(i=.5);var r=this,o=r.activeIndex,a=Math.min(r.params.slidesPerGroupSkip,o),s=a+Math.floor((o-a)/r.params.slidesPerGroup),u=r.rtlTranslate?r.translate:-r.translate;if(u>=r.snapGrid[s]){var c=r.snapGrid[s];u-c>(r.snapGrid[s+1]-c)*i&&(o+=r.params.slidesPerGroup)}else{var l=r.snapGrid[s-1];u-l<=(r.snapGrid[s]-l)*i&&(o-=r.params.slidesPerGroup)}return o=Math.max(o,0),o=Math.min(o,r.slidesGrid.length-1),r.slideTo(o,e,t,n)},slideToClickedSlide:function(){var e,t=this,n=t.params,i=t.$wrapperEl,r="auto"===n.slidesPerView?t.slidesPerViewDynamic():n.slidesPerView,o=t.clickedIndex;if(n.loop){if(t.animating)return;e=parseInt(v$(t.clickedSlide).attr("data-swiper-slide-index"),10),n.centeredSlides?ot.slides.length-t.loopedSlides+r/2?(t.loopFix(),o=i.children("."+n.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),g$(function(){t.slideTo(o)})):t.slideTo(o):o>t.slides.length-r?(t.loopFix(),o=i.children("."+n.slideClass+'[data-swiper-slide-index="'+e+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),g$(function(){t.slideTo(o)})):t.slideTo(o)}else t.slideTo(o)}},loop:{loopCreate:function(){var e=this,t=QK(),n=e.params,i=e.$wrapperEl;i.children("."+n.slideClass+"."+n.slideDuplicateClass).remove();var r=i.children("."+n.slideClass);if(n.loopFillGroupWithBlank){var o=n.slidesPerGroup-r.length%n.slidesPerGroup;if(o!==n.slidesPerGroup){for(var a=0;ar.length&&(e.loopedSlides=r.length);var u=[],c=[];r.each(function(t,n){var i=v$(t);n=r.length-e.loopedSlides&&u.push(t),i.attr("data-swiper-slide-index",n)});for(var l=0;l=0;h-=1)i.prepend(v$(u[h].cloneNode(!0)).addClass(n.slideDuplicateClass))},loopFix:function(){var e=this;e.emit("beforeLoopFix");var t,n=e.activeIndex,i=e.slides,r=e.loopedSlides,o=e.allowSlidePrev,a=e.allowSlideNext,s=e.snapGrid,u=e.rtlTranslate;e.allowSlidePrev=!0,e.allowSlideNext=!0;var c=-s[n]-e.getTranslate();n=i.length-r&&(t=-i.length+n+r,e.slideTo(t+=r,0,!1,!0)&&0!==c&&e.setTranslate((u?-e.translate:e.translate)-c)),e.allowSlidePrev=o,e.allowSlideNext=a,e.emit("loopFix")},loopDestroy:function(){var e=this,t=e.params,n=e.slides;e.$wrapperEl.children("."+t.slideClass+"."+t.slideDuplicateClass+",."+t.slideClass+"."+t.slideBlankClass).remove(),n.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(e){var t=this;if(!(t.support.touch||!t.params.simulateTouch||t.params.watchOverflow&&t.isLocked||t.params.cssMode)){var n=t.el;n.style.cursor="move",n.style.cursor=e?"-webkit-grabbing":"-webkit-grab",n.style.cursor=e?"-moz-grabbin":"-moz-grab",n.style.cursor=e?"grabbing":"grab"}},unsetGrabCursor:function(){var e=this;e.support.touch||e.params.watchOverflow&&e.isLocked||e.params.cssMode||(e.el.style.cursor="")}},manipulation:{appendSlide:function(e){var t=this,n=t.$wrapperEl,i=t.params;if(i.loop&&t.loopDestroy(),"object"==typeof e&&"length"in e)for(var r=0;r=a)n.appendSlide(t);else{for(var s=o>e?o+1:o,u=[],c=a-1;c>=e;c-=1){var l=n.slides.eq(c);l.remove(),u.unshift(l)}if("object"==typeof t&&"length"in t){for(var h=0;he?o+t.length:o}else i.append(t);for(var d=0;d1,d=l.slidesPerColumn>1,f=o.enabled;h&&!d?(a.removeClass(o.containerModifierClass+"multirow "+o.containerModifierClass+"multirow-column"),e.emitContainerClasses()):!h&&d&&(a.addClass(o.containerModifierClass+"multirow"),(l.slidesPerColumnFill&&"column"===l.slidesPerColumnFill||!l.slidesPerColumnFill&&"column"===o.slidesPerColumnFill)&&a.addClass(o.containerModifierClass+"multirow-column"),e.emitContainerClasses());var p=l.direction&&l.direction!==o.direction,v=o.loop&&(l.slidesPerView!==o.slidesPerView||p);p&&n&&e.changeDirection(),_$(e.params,l);var g=e.params.enabled;_$(e,{allowTouchMove:e.params.allowTouchMove,allowSlideNext:e.params.allowSlideNext,allowSlidePrev:e.params.allowSlidePrev}),f&&!g?e.disable():!f&&g&&e.enable(),e.currentBreakpoint=u,e.emit("_beforeBreakpoint",l),v&&n&&(e.loopDestroy(),e.loopCreate(),e.updateSlides(),e.slideTo(t-r+e.loopedSlides,0,!1)),e.emit("breakpoint",l)}}},getBreakpoint:function(e,t,n){if(void 0===t&&(t="window"),e&&("container"!==t||n)){var i=!1,r=JK(),o="window"===t?r.innerHeight:n.clientHeight,a=Object.keys(e).map(function(e){if("string"==typeof e&&0===e.indexOf("@")){var t=parseFloat(e.substr(1));return{value:o*t,point:e}}return{value:e,point:e}});a.sort(function(e,t){return parseInt(e.value,10)-parseInt(t.value,10)});for(var s=0;s0&&t.slidesOffsetBefore+t.spaceBetween*(e.slides.length-1)+e.slides[0].offsetWidth*e.slides.length;e.isLocked=t.slidesOffsetBefore&&t.slidesOffsetAfter&&i?i<=e.size:1===e.snapGrid.length,e.allowSlideNext=!e.isLocked,e.allowSlidePrev=!e.isLocked,n!==e.isLocked&&e.emit(e.isLocked?"lock":"unlock"),n&&n!==e.isLocked&&(e.isEnd=!1,e.navigation&&e.navigation.update())}},classes:{addClasses:function(){var e=this,t=e.classNames,n=e.params,i=e.$el,r=e.device,o=e.support,a=function(e,t){var n=[];return e.forEach(function(e){"object"==typeof e?Object.keys(e).forEach(function(i){e[i]&&n.push(t+i)}):"string"==typeof e&&n.push(t+e)}),n}(["initialized",n.direction,{"pointer-events":o.pointerEvents&&!o.touch},{"free-mode":n.freeMode},{autoheight:n.autoHeight},{rtl:e.rtl},{multirow:n.slidesPerColumn>1},{"multirow-column":n.slidesPerColumn>1&&"column"===n.slidesPerColumnFill},{android:r.android},{ios:r.ios},{"css-mode":n.cssMode}],n.containerModifierClass);t.push.apply(t,a),i.addClass([].concat(t).join(" ")),e.emitContainerClasses()},removeClasses:function(){var e=this;e.$el.removeClass(e.classNames.join(" ")),e.emitContainerClasses()}},images:{loadImage:function(e,t,n,i,r,o){var a,s=JK();function u(){o&&o()}v$(e).parent("picture")[0]||e.complete&&r||!t?u():((a=new s.Image).onload=u,a.onerror=u,i&&(a.sizes=i),n&&(a.srcset=n),t&&(a.src=t))},preloadImages:function(){var e=this;function t(){null==e||!e||e.destroyed||(void 0!==e.imagesLoaded&&(e.imagesLoaded+=1),e.imagesLoaded===e.imagesToLoad.length&&(e.params.updateOnImagesReady&&e.update(),e.emit("imagesReady")))}e.imagesToLoad=e.$el.find("img");for(var n=0;n1){var a=[];return v$(n.el).each(function(t){var i=_$({},n,{el:t});a.push(new e(i))}),a}var s=this;s.__swiper__=!0,s.support=k$(),s.device=x$({userAgent:n.userAgent}),s.browser=S$(),s.eventsListeners={},s.eventsAnyListeners=[],void 0===s.modules&&(s.modules={}),Object.keys(s.modules).forEach(function(e){var t=s.modules[e];if(t.params){var i=Object.keys(t.params)[0],r=t.params[i];if("object"!=typeof r||null===r||(["navigation","pagination","scrollbar"].indexOf(i)>=0&&!0===n[i]&&(n[i]={auto:!0}),!(i in n)||!("enabled"in r)))return;!0===n[i]&&(n[i]={enabled:!0}),"object"==typeof n[i]&&!("enabled"in n[i])&&(n[i].enabled=!0),n[i]||(n[i]={enabled:!1})}});var u,c,l=_$({},j$);return s.useParams(l),s.params=_$({},l,B$,n),s.originalParams=_$({},s.params),s.passedParams=_$({},n),s.params&&s.params.on&&Object.keys(s.params.on).forEach(function(e){s.on(e,s.params.on[e])}),s.params&&s.params.onAny&&s.onAny(s.params.onAny),s.$=v$,_$(s,{enabled:s.params.enabled,el:t,classNames:[],slides:v$(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===s.params.direction},isVertical:function(){return"vertical"===s.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:s.params.allowSlideNext,allowSlidePrev:s.params.allowSlidePrev,touchEvents:(u=["touchstart","touchmove","touchend","touchcancel"],c=["mousedown","mousemove","mouseup"],s.support.pointerEvents&&(c=["pointerdown","pointermove","pointerup"]),s.touchEventsTouch={start:u[0],move:u[1],end:u[2],cancel:u[3]},s.touchEventsDesktop={start:c[0],move:c[1],end:c[2]},s.support.touch||!s.params.simulateTouch?s.touchEventsTouch:s.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:s.params.focusableElements,lastClickTime:m$(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:s.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),s.useModules(),s.emit("_swiper"),s.params.init&&s.init(),s}var t=e.prototype;return t.enable=function(){var e=this;e.enabled||(e.enabled=!0,e.params.grabCursor&&e.setGrabCursor(),e.emit("enable"))},t.disable=function(){var e=this;!e.enabled||(e.enabled=!1,e.params.grabCursor&&e.unsetGrabCursor(),e.emit("disable"))},t.setProgress=function(e,t){var n=this;e=Math.min(Math.max(e,0),1);var i=n.minTranslate(),r=n.maxTranslate();n.translateTo((r-i)*e+i,void 0===t?0:t),n.updateActiveIndex(),n.updateSlidesClasses()},t.emitContainerClasses=function(){var e=this;if(e.params._emitClasses&&e.el){var t=e.el.className.split(" ").filter(function(t){return 0===t.indexOf("swiper-container")||0===t.indexOf(e.params.containerModifierClass)});e.emit("_containerClasses",t.join(" "))}},t.getSlideClasses=function(e){var t=this;return e.className.split(" ").filter(function(e){return 0===e.indexOf("swiper-slide")||0===e.indexOf(t.params.slideClass)}).join(" ")},t.emitSlidesClasses=function(){var e=this;if(e.params._emitClasses&&e.el){var t=[];e.slides.each(function(n){var i=e.getSlideClasses(n);t.push({slideEl:n,classNames:i}),e.emit("_slideClass",n,i)}),e.emit("_slideClasses",t)}},t.slidesPerViewDynamic=function(){var e=this,t=e.slides,n=e.slidesGrid,i=e.size,r=e.activeIndex,o=1;if(e.params.centeredSlides){for(var a,s=t[r].swiperSlideSize,u=r+1;ui&&(a=!0));for(var c=r-1;c>=0;c-=1)t[c]&&!a&&(o+=1,(s+=t[c].swiperSlideSize)>i&&(a=!0))}else for(var l=r+1;l1)&&e.isEnd&&!e.params.centeredSlides?e.slides.length-1:e.activeIndex,0,!1,!0)||i(),n.watchOverflow&&t!==e.snapGrid&&e.checkOverflow(),e.emit("update")}function i(){var t=Math.min(Math.max(e.rtlTranslate?-1*e.translate:e.translate,e.maxTranslate()),e.minTranslate());e.setTranslate(t),e.updateActiveIndex(),e.updateSlidesClasses()}},t.changeDirection=function(e,t){void 0===t&&(t=!0);var n=this,i=n.params.direction;return e||(e="horizontal"===i?"vertical":"horizontal"),e===i||"horizontal"!==e&&"vertical"!==e||(n.$el.removeClass(""+n.params.containerModifierClass+i).addClass(""+n.params.containerModifierClass+e),n.emitContainerClasses(),n.params.direction=e,n.slides.each(function(t){"vertical"===e?t.style.width="":t.style.height=""}),n.emit("changeDirection"),t&&n.update()),n},t.mount=function(e){var t=this;if(t.mounted)return!0;var n=v$(e||t.params.el);if(!(e=n[0]))return!1;e.swiper=t;var i=function(){return"."+(t.params.wrapperClass||"").trim().split(" ").join(".")},r=function(){if(e&&e.shadowRoot&&e.shadowRoot.querySelector){var t=v$(e.shadowRoot.querySelector(i()));return t.children=function(e){return n.children(e)},t}return n.children(i())}();if(0===r.length&&t.params.createElements){var o=QK().createElement("div");r=v$(o),o.className=t.params.wrapperClass,n.append(o),n.children("."+t.params.slideClass).each(function(e){r.append(e)})}return _$(t,{$el:n,el:e,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===e.dir.toLowerCase()||"rtl"===n.css("direction"),rtlTranslate:"horizontal"===t.params.direction&&("rtl"===e.dir.toLowerCase()||"rtl"===n.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0},t.init=function(e){var t=this;return t.initialized||!1===t.mount(e)||(t.emit("beforeInit"),t.params.breakpoints&&t.setBreakpoint(),t.addClasses(),t.params.loop&&t.loopCreate(),t.updateSize(),t.updateSlides(),t.params.watchOverflow&&t.checkOverflow(),t.params.grabCursor&&t.enabled&&t.setGrabCursor(),t.params.preloadImages&&t.preloadImages(),t.slideTo(t.params.loop?t.params.initialSlide+t.loopedSlides:t.params.initialSlide,0,t.params.runCallbacksOnInit,!1,!0),t.attachEvents(),t.initialized=!0,t.emit("init"),t.emit("afterInit")),t},t.destroy=function(e,t){void 0===e&&(e=!0),void 0===t&&(t=!0);var n=this,i=n.params,r=n.$el,o=n.$wrapperEl,a=n.slides;return void 0===n.params||n.destroyed||(n.emit("beforeDestroy"),n.initialized=!1,n.detachEvents(),i.loop&&n.loopDestroy(),t&&(n.removeClasses(),r.removeAttr("style"),o.removeAttr("style"),a&&a.length&&a.removeClass([i.slideVisibleClass,i.slideActiveClass,i.slideNextClass,i.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),n.emit("destroy"),Object.keys(n.eventsListeners).forEach(function(e){n.off(e)}),!1!==e&&(n.$el[0].swiper=null,function(t){var n=t;Object.keys(n).forEach(function(t){try{n[t]=null}catch(e){}try{delete n[t]}catch(e){}})}(n)),n.destroyed=!0),null},e.extendDefaults=function(e){_$(B$,e)},e.installModule=function(t){e.prototype.modules||(e.prototype.modules={});var n=t.name||Object.keys(e.prototype.modules).length+"_"+m$();e.prototype.modules[n]=t},e.use=function(t){return Array.isArray(t)?(t.forEach(function(t){return e.installModule(t)}),e):(e.installModule(t),e)},function(e,t,n){n&&function(e,t){for(var n=0;n0?t[n].__swiper__?e[n]=t[n]:vQ(e[n],t[n]):e[n]=t[n]):e[n]=t[n]})}function gQ(e){return null!=e&&"false"!="".concat(e)}var mQ=["pagination","navigation","scrollbar","virtual"];function yQ(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return fQ(e)?e:!0===gQ(e)&&t}var bQ=["init","_direction","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_freeModeMomentum","_freeModeMomentumRatio","_freeModeMomentumBounce","_freeModeMomentumBounceRatio","_freeModeMomentumVelocityRatio","_freeModeSticky","_freeModeMinimumVelocity","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","_spaceBetween","_slidesPerView","_slidesPerColumn","_slidesPerColumnFill","_slidesPerGroup","_slidesPerGroupSkip","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_watchSlidesVisibility","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_preloadImages","updateOnImagesReady","_loop","_loopAdditionalSlides","_loopedSlides","_loopFillGroupWithBlank","loopPreventsSlide","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","hashNavigation","history","keyboard","lazy","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom"].map(function(e){return e.replace(/_/,"")});function _Q(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={on:{}},n={};vQ(t,z$.defaults),vQ(t,z$.extendedDefaults),t._emitClasses=!0;var i={};return Object.keys(e).forEach(function(r){var o=r.replace(/^_/,"");void 0!==e[o]&&(bQ.indexOf(o)>=0?fQ(e[o])?(t[o]={},n[o]={},vQ(t[o],e[o]),vQ(n[o],e[o])):(t[o]=e[o],n[o]=e[o]):i[o]=e[o])}),{params:t,passedParams:n,rest:i}}var wQ=function(){var e=function(){function e(t){m(this,e),this.template=t,this.class="",this.slideData={isActive:!1,isPrev:!1,isNext:!1,isVisible:!1,isDuplicate:!1}}return b(e,[{key:"zoom",get:function(){return this._zoom},set:function(e){this._zoom=gQ(e)}},{key:"classNames",get:function(){return this._classNames},set:function(e){this._classNames!==e&&(this._classNames=e,this.slideData={isActive:this._hasClass(["swiper-slide-active","swiper-slide-duplicate-active"]),isVisible:this._hasClass(["swiper-slide-visible"]),isDuplicate:this._hasClass(["swiper-slide-duplicate"]),isPrev:this._hasClass(["swiper-slide-prev","swiper-slide-duplicate-prev"]),isNext:this._hasClass(["swiper-slide-next","swiper-slide-duplicate-next"])})}},{key:"_hasClass",value:function(e){var t=this;return e.some(function(e){return t._classNames.indexOf(e)>=0})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Ec))},e.\u0275dir=Mt({type:e,selectors:[["ng-template","swiperSlide",""]],inputs:{class:"class",zoom:"zoom",virtualIndex:"virtualIndex"}}),e}(),kQ=function(){var e=function(){function e(t,n,i,r){var a=this;m(this,e),this._ngZone=t,this.elementRef=n,this._changeDetectorRef=i,this._platformId=r,this.slideClass="swiper-slide",this.wrapperClass="swiper-wrapper",this.showNavigation=!0,this.showPagination=!0,this.showScrollbar=!0,this.s__beforeBreakpoint=new Qc,this.s__containerClasses=new Qc,this.s__slideClass=new Qc,this.s__swiper=new Qc,this.s_activeIndexChange=new Qc,this.s_afterInit=new Qc,this.s_autoplay=new Qc,this.s_autoplayStart=new Qc,this.s_autoplayStop=new Qc,this.s_beforeDestroy=new Qc,this.s_beforeInit=new Qc,this.s_beforeLoopFix=new Qc,this.s_beforeResize=new Qc,this.s_beforeSlideChangeStart=new Qc,this.s_beforeTransitionStart=new Qc,this.s_breakpoint=new Qc,this.s_changeDirection=new Qc,this.s_click=new Qc,this.s_doubleTap=new Qc,this.s_doubleClick=new Qc,this.s_destroy=new Qc,this.s_fromEdge=new Qc,this.s_hashChange=new Qc,this.s_hashSet=new Qc,this.s_imagesReady=new Qc,this.s_init=new Qc,this.s_keyPress=new Qc,this.s_lazyImageLoad=new Qc,this.s_lazyImageReady=new Qc,this.s_loopFix=new Qc,this.s_momentumBounce=new Qc,this.s_navigationHide=new Qc,this.s_navigationShow=new Qc,this.s_observerUpdate=new Qc,this.s_orientationchange=new Qc,this.s_paginationHide=new Qc,this.s_paginationRender=new Qc,this.s_paginationShow=new Qc,this.s_paginationUpdate=new Qc,this.s_progress=new Qc,this.s_reachBeginning=new Qc,this.s_reachEnd=new Qc,this.s_realIndexChange=new Qc,this.s_resize=new Qc,this.s_scroll=new Qc,this.s_scrollbarDragEnd=new Qc,this.s_scrollbarDragMove=new Qc,this.s_scrollbarDragStart=new Qc,this.s_setTransition=new Qc,this.s_setTranslate=new Qc,this.s_slideChange=new Qc,this.s_slideChangeTransitionEnd=new Qc,this.s_slideChangeTransitionStart=new Qc,this.s_slideNextTransitionEnd=new Qc,this.s_slideNextTransitionStart=new Qc,this.s_slidePrevTransitionEnd=new Qc,this.s_slidePrevTransitionStart=new Qc,this.s_slideResetTransitionStart=new Qc,this.s_slideResetTransitionEnd=new Qc,this.s_sliderMove=new Qc,this.s_sliderFirstMove=new Qc,this.s_slidesLengthChange=new Qc,this.s_slidesGridLengthChange=new Qc,this.s_snapGridLengthChange=new Qc,this.s_snapIndexChange=new Qc,this.s_tap=new Qc,this.s_toEdge=new Qc,this.s_touchEnd=new Qc,this.s_touchMove=new Qc,this.s_touchMoveOpposite=new Qc,this.s_touchStart=new Qc,this.s_transitionEnd=new Qc,this.s_transitionStart=new Qc,this.s_update=new Qc,this.s_zoomChange=new Qc,this.s_swiper=new Qc,this.indexChange=new Qc,this._activeSlides=new re,this.containerClasses="swiper-container",this.slidesChanges=function(e){a.slides=e.map(function(e,t){return e.slideIndex=t,e.classNames=a.slideClass,e}),a.loop&&!a.loopedSlides&&a.calcLoopedSlides(),a.virtual?a.swiperRef&&a.swiperRef.virtual&&a._ngZone.runOutsideAngular(function(){a.swiperRef.virtual.slides=a.slides,a.swiperRef.virtual.update(!0)}):(a.prependSlides=Nd(a.slides.slice(a.slides.length-a.loopedSlides)),a.appendSlides=Nd(a.slides.slice(0,a.loopedSlides))),a._changeDetectorRef.detectChanges()},this.style=null,this.updateVirtualSlides=function(e){!a.swiperRef||a.currentVirtualData&&a.currentVirtualData.from===e.from&&a.currentVirtualData.to===e.to&&a.currentVirtualData.offset===e.offset||(a.style=a.swiperRef.isHorizontal()?o({},a.swiperRef.rtlTranslate?"right":"left","".concat(e.offset,"px")):{top:"".concat(e.offset,"px")},a.currentVirtualData=e,a._activeSlides.next(e.slides),a._ngZone.run(function(){a._changeDetectorRef.detectChanges()}),a._ngZone.runOutsideAngular(function(){a.swiperRef.updateSlides(),a.swiperRef.updateProgress(),a.swiperRef.updateSlidesClasses(),a.swiperRef.lazy&&a.swiperRef.params.lazy.enabled&&a.swiperRef.lazy.load(),a.swiperRef.virtual.update(!0)}))}}return b(e,[{key:"navigation",get:function(){return this._navigation},set:function(e){var t,n,i,r="boolean"!=typeof this._navigation?null===(t=this._navigation)||void 0===t?void 0:t.nextEl:null,o="boolean"!=typeof this._navigation?null===(n=this._navigation)||void 0===n?void 0:n.prevEl:null;this._navigation=yQ(e,{nextEl:r||null,prevEl:o||null}),this.showNavigation=!(!0!==gQ(e)||this._navigation&&"boolean"!=typeof this._navigation&&this._navigation.prevEl!==(null===(i=this._prevElRef)||void 0===i?void 0:i.nativeElement)&&(null!==this._navigation.prevEl||null!==this._navigation.nextEl)&&("string"==typeof this._navigation.nextEl||"string"==typeof this._navigation.prevEl||"object"==typeof this._navigation.nextEl||"object"==typeof this._navigation.prevEl))}},{key:"pagination",get:function(){return this._pagination},set:function(e){var t,n="boolean"!=typeof this._pagination?null===(t=this._pagination)||void 0===t?void 0:t.el:null;this._pagination=yQ(e,{el:n||null}),this.showPagination=pQ(e,this._pagination,this._paginationElRef)}},{key:"scrollbar",get:function(){return this._scrollbar},set:function(e){var t,n="boolean"!=typeof this._scrollbar?null===(t=this._scrollbar)||void 0===t?void 0:t.el:null;this._scrollbar=yQ(e,{el:n||null}),this.showScrollbar=pQ(e,this._scrollbar,this._scrollbarElRef)}},{key:"virtual",get:function(){return this._virtual},set:function(e){this._virtual=yQ(e)}},{key:"index",set:function(e){this.setIndex(e)}},{key:"config",set:function(e){this.updateSwiper(e);var t=_Q(e).params;Object.assign(this,t)}},{key:"prevElRef",set:function(e){this._prevElRef=e,this._setElement(e,this.navigation,"navigation","prevEl")}},{key:"nextElRef",set:function(e){this._nextElRef=e,this._setElement(e,this.navigation,"navigation","nextEl")}},{key:"scrollbarElRef",set:function(e){this._scrollbarElRef=e,this._setElement(e,this.scrollbar,"scrollbar")}},{key:"paginationElRef",set:function(e){this._paginationElRef=e,this._setElement(e,this.pagination,"pagination")}},{key:"activeSlides",get:function(){return this.virtual?this._activeSlides:Nd(this.slides)}},{key:"zoomContainerClass",get:function(){return"boolean"!=typeof this.zoom?this.zoom.containerClass:"swiper-zoom-container"}},{key:"_setElement",value:function(e,t,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"el";if(e&&t){if(t&&e.nativeElement){if(t[i]===e.nativeElement)return;t[i]=e.nativeElement}var r={};r[n]=!0,this.updateInitSwiper(r)}}},{key:"ngOnInit",value:function(){var e=_Q(this).params;Object.assign(this,e)}},{key:"ngAfterViewInit",value:function(){var e=this;this.childrenSlidesInit(),this.initSwiper(),this._changeDetectorRef.detectChanges(),setTimeout(function(){e.s_swiper.emit(e.swiperRef)})}},{key:"childrenSlidesInit",value:function(){this.slidesChanges(this.slidesEl),this.slidesEl.changes.subscribe(this.slidesChanges)}},{key:"isSwiperActive",get:function(){return this.swiperRef&&!this.swiperRef.destroyed}},{key:"initSwiper",value:function(){var e=this,t=_Q(this).params;Object.assign(this,t),this._ngZone.runOutsideAngular(function(){t.init=!1,t.virtual||(t.observer=!0),t.onAny=function(t){for(var n=e["s_".concat(t)],i=arguments.length,r=new Array(i>1?i-1:0),o=1;o=0)){var o=null!==(i=null===(n=e[r])||void 0===n?void 0:n.currentValue)&&void 0!==i?i:e[r];t.updateParameter(r,o)}e.allowSlideNext&&(t.swiperRef.allowSlideNext=t.allowSlideNext),e.allowSlidePrev&&(t.swiperRef.allowSlidePrev=t.allowSlidePrev),e.direction&&t.swiperRef.changeDirection(t.direction,!1),e.breakpoints&&(t.loop&&!t.loopedSlides&&t.calcLoopedSlides(),t.swiperRef.currentBreakpoint=null,t.swiperRef.setBreakpoint()),(e.thumbs||e.controller)&&t.updateInitSwiper(e),t.swiperRef.update()}})}},{key:"calcLoopedSlides",value:function(){if(this.loop){var e=this.slidesPerView;if(this.breakpoints){var t=z$.prototype.getBreakpoint(this.breakpoints),n=t in this.breakpoints?this.breakpoints[t]:void 0;n&&n.slidesPerView&&(e=n.slidesPerView)}if("auto"===e)return this.loopedSlides=this.slides.length,this.slides.length;var i=this.loopedSlides||e;return(i+=this.loopAdditionalSlides)>this.slides.length&&(i=this.slides.length),this.loopedSlides=i,i}}},{key:"updateParameter",value:function(e,t){if(this.swiperRef&&!this.swiperRef.destroyed){var n=e.replace(/^_/,""),i=fQ(this.swiperRef.params[n]);if(Object.keys(this.swiperRef.modules).indexOf(n)>=0){var r=this.swiperRef.modules[n].params[n];i?vQ(this.swiperRef.params[n],r):this.swiperRef.params[n]=r}i&&fQ(t)?vQ(this.swiperRef.params[n],t):this.swiperRef.params[n]=t}}},{key:"setIndex",value:function(e,t,n){var i=this;this.isSwiperActive?e!==this.swiperRef.activeIndex&&this._ngZone.runOutsideAngular(function(){i.loop?i.swiperRef.slideToLoop(e,t,!n):i.swiperRef.slideTo(e,t,!n)}):this.initialSlide=e}},{key:"ngOnDestroy",value:function(){var e=this;this._ngZone.runOutsideAngular(function(){var t;null===(t=e.swiperRef)||void 0===t||t.destroy(!0,!1)})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Bl),Ss(Yu),Ss(_c),Ss(xl))},e.\u0275cmp=Et({type:e,selectors:[["swiper"],["","swiper",""]],contentQueries:function(e,t,n){var i;(1&e&&hl(n,wQ,4),2&e)&&(cl(i=dl())&&(t.slidesEl=i))},viewQuery:function(e,t){var n;(1&e&&(ll(U$,5),ll(H$,5),ll(G$,5),ll(W$,5)),2&e)&&(cl(n=dl())&&(t.prevElRef=n.first),cl(n=dl())&&(t.nextElRef=n.first),cl(n=dl())&&(t.scrollbarElRef=n.first),cl(n=dl())&&(t.paginationElRef=n.first))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.containerClasses)},inputs:{slideClass:"slideClass",wrapperClass:"wrapperClass",navigation:"navigation",pagination:"pagination",scrollbar:"scrollbar",virtual:"virtual",index:"index",config:"config",loopedSlides:"loopedSlides",initialSlide:"initialSlide",direction:"direction",touchEventsTarget:"touchEventsTarget",speed:"speed",cssMode:"cssMode",updateOnWindowResize:"updateOnWindowResize",resizeObserver:"resizeObserver",nested:"nested",focusableElements:"focusableElements",width:"width",height:"height",preventInteractionOnTransition:"preventInteractionOnTransition",userAgent:"userAgent",url:"url",edgeSwipeDetection:"edgeSwipeDetection",edgeSwipeThreshold:"edgeSwipeThreshold",freeMode:"freeMode",freeModeMomentum:"freeModeMomentum",freeModeMomentumRatio:"freeModeMomentumRatio",freeModeMomentumBounce:"freeModeMomentumBounce",freeModeMomentumBounceRatio:"freeModeMomentumBounceRatio",freeModeMomentumVelocityRatio:"freeModeMomentumVelocityRatio",freeModeSticky:"freeModeSticky",freeModeMinimumVelocity:"freeModeMinimumVelocity",autoHeight:"autoHeight",setWrapperSize:"setWrapperSize",virtualTranslate:"virtualTranslate",effect:"effect",breakpoints:"breakpoints",spaceBetween:"spaceBetween",slidesPerView:"slidesPerView",slidesPerColumn:"slidesPerColumn",slidesPerColumnFill:"slidesPerColumnFill",slidesPerGroup:"slidesPerGroup",slidesPerGroupSkip:"slidesPerGroupSkip",centeredSlides:"centeredSlides",centeredSlidesBounds:"centeredSlidesBounds",slidesOffsetBefore:"slidesOffsetBefore",slidesOffsetAfter:"slidesOffsetAfter",normalizeSlideIndex:"normalizeSlideIndex",centerInsufficientSlides:"centerInsufficientSlides",watchOverflow:"watchOverflow",roundLengths:"roundLengths",touchRatio:"touchRatio",touchAngle:"touchAngle",simulateTouch:"simulateTouch",shortSwipes:"shortSwipes",longSwipes:"longSwipes",longSwipesRatio:"longSwipesRatio",longSwipesMs:"longSwipesMs",followFinger:"followFinger",allowTouchMove:"allowTouchMove",threshold:"threshold",touchMoveStopPropagation:"touchMoveStopPropagation",touchStartPreventDefault:"touchStartPreventDefault",touchStartForcePreventDefault:"touchStartForcePreventDefault",touchReleaseOnEdges:"touchReleaseOnEdges",uniqueNavElements:"uniqueNavElements",resistance:"resistance",resistanceRatio:"resistanceRatio",watchSlidesProgress:"watchSlidesProgress",watchSlidesVisibility:"watchSlidesVisibility",grabCursor:"grabCursor",preventClicks:"preventClicks",preventClicksPropagation:"preventClicksPropagation",slideToClickedSlide:"slideToClickedSlide",preloadImages:"preloadImages",updateOnImagesReady:"updateOnImagesReady",loop:"loop",loopAdditionalSlides:"loopAdditionalSlides",loopFillGroupWithBlank:"loopFillGroupWithBlank",loopPreventsSlide:"loopPreventsSlide",allowSlidePrev:"allowSlidePrev",allowSlideNext:"allowSlideNext",swipeHandler:"swipeHandler",noSwiping:"noSwiping",noSwipingClass:"noSwipingClass",noSwipingSelector:"noSwipingSelector",passiveListeners:"passiveListeners",containerModifierClass:"containerModifierClass",slideBlankClass:"slideBlankClass",slideActiveClass:"slideActiveClass",slideDuplicateActiveClass:"slideDuplicateActiveClass",slideVisibleClass:"slideVisibleClass",slideDuplicateClass:"slideDuplicateClass",slideNextClass:"slideNextClass",slideDuplicateNextClass:"slideDuplicateNextClass",slidePrevClass:"slidePrevClass",slideDuplicatePrevClass:"slideDuplicatePrevClass",runCallbacksOnInit:"runCallbacksOnInit",observeParents:"observeParents",observeSlideChildren:"observeSlideChildren",a11y:"a11y",autoplay:"autoplay",controller:"controller",coverflowEffect:"coverflowEffect",cubeEffect:"cubeEffect",fadeEffect:"fadeEffect",flipEffect:"flipEffect",hashNavigation:"hashNavigation",history:"history",keyboard:"keyboard",lazy:"lazy",mousewheel:"mousewheel",parallax:"parallax",thumbs:"thumbs",zoom:"zoom",class:"class",id:"id"},outputs:{s__beforeBreakpoint:"_beforeBreakpoint",s__containerClasses:"_containerClasses",s__slideClass:"_slideClass",s__swiper:"_swiper",s_activeIndexChange:"activeIndexChange",s_afterInit:"afterInit",s_autoplay:"autoplay",s_autoplayStart:"autoplayStart",s_autoplayStop:"autoplayStop",s_beforeDestroy:"beforeDestroy",s_beforeInit:"beforeInit",s_beforeLoopFix:"beforeLoopFix",s_beforeResize:"beforeResize",s_beforeSlideChangeStart:"beforeSlideChangeStart",s_beforeTransitionStart:"beforeTransitionStart",s_breakpoint:"breakpoint",s_changeDirection:"changeDirection",s_click:"click",s_doubleTap:"doubleTap",s_doubleClick:"doubleClick",s_destroy:"destroy",s_fromEdge:"fromEdge",s_hashChange:"hashChange",s_hashSet:"hashSet",s_imagesReady:"imagesReady",s_init:"init",s_keyPress:"keyPress",s_lazyImageLoad:"lazyImageLoad",s_lazyImageReady:"lazyImageReady",s_loopFix:"loopFix",s_momentumBounce:"momentumBounce",s_navigationHide:"navigationHide",s_navigationShow:"navigationShow",s_observerUpdate:"observerUpdate",s_orientationchange:"orientationchange",s_paginationHide:"paginationHide",s_paginationRender:"paginationRender",s_paginationShow:"paginationShow",s_paginationUpdate:"paginationUpdate",s_progress:"progress",s_reachBeginning:"reachBeginning",s_reachEnd:"reachEnd",s_realIndexChange:"realIndexChange",s_resize:"resize",s_scroll:"scroll",s_scrollbarDragEnd:"scrollbarDragEnd",s_scrollbarDragMove:"scrollbarDragMove",s_scrollbarDragStart:"scrollbarDragStart",s_setTransition:"setTransition",s_setTranslate:"setTranslate",s_slideChange:"slideChange",s_slideChangeTransitionEnd:"slideChangeTransitionEnd",s_slideChangeTransitionStart:"slideChangeTransitionStart",s_slideNextTransitionEnd:"slideNextTransitionEnd",s_slideNextTransitionStart:"slideNextTransitionStart",s_slidePrevTransitionEnd:"slidePrevTransitionEnd",s_slidePrevTransitionStart:"slidePrevTransitionStart",s_slideResetTransitionStart:"slideResetTransitionStart",s_slideResetTransitionEnd:"slideResetTransitionEnd",s_sliderMove:"sliderMove",s_sliderFirstMove:"sliderFirstMove",s_slidesLengthChange:"slidesLengthChange",s_slidesGridLengthChange:"slidesGridLengthChange",s_snapGridLengthChange:"snapGridLengthChange",s_snapIndexChange:"snapIndexChange",s_tap:"tap",s_toEdge:"toEdge",s_touchEnd:"touchEnd",s_touchMove:"touchMove",s_touchMoveOpposite:"touchMoveOpposite",s_touchStart:"touchStart",s_transitionEnd:"transitionEnd",s_transitionStart:"transitionStart",s_update:"update",s_zoomChange:"zoomChange",s_swiper:"swiper",indexChange:"indexChange"},features:[Ht],ngContentSelectors:dQ,decls:13,vars:17,consts:[[4,"ngIf"],["class","swiper-scrollbar",4,"ngIf"],["class","swiper-pagination",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["slidesTemplate",""],[1,"swiper-button-prev"],["prevElRef",""],[1,"swiper-button-next"],["nextElRef",""],[1,"swiper-scrollbar"],["scrollbarElRef",""],[1,"swiper-pagination"],["paginationElRef",""],[3,"ngClass","style","ngSwitch",4,"ngFor","ngForOf"],[3,"ngClass","ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(e,t){if(1&e&&(Gs(uQ),Ws(0),ks(1,q$,5,0,"ng-container",0),ks(2,X$,2,0,"div",1),ks(3,Y$,2,0,"div",2),Os(4,"div",3),Ws(5,1),ks(6,$$,1,0,void 0,4),ks(7,Z$,1,0,void 0,4),ks(8,eQ,1,0,void 0,4),Ws(9,2),Ts(),Ws(10,3),ks(11,sQ,2,3,"ng-template",null,5,gl)),2&e){var n=xs(12);Wo(1),Es("ngIf",t.navigation&&t.showNavigation),Wo(1),Es("ngIf",t.scrollbar&&t.showScrollbar),Wo(1),Es("ngIf",t.pagination&&t.showPagination),Wo(1),Es("ngClass",t.wrapperClass),bs("id",t.id),Wo(2),Es("ngTemplateOutlet",n)("ngTemplateOutletContext",Wc(11,cQ,t.prependSlides)),Wo(1),Es("ngTemplateOutlet",n)("ngTemplateOutletContext",Wc(13,lQ,t.activeSlides)),Wo(1),Es("ngTemplateOutlet",n)("ngTemplateOutletContext",Wc(15,hQ,t.appendSlides))}},directives:[Nh,Mh,Hh,Rh,Bh,Vh,zh],pipes:[Xh],styles:["\n swiper {\n display: block;\n }\n "],encapsulation:2,changeDetection:0}),e}(),xQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}();function SQ(){return(SQ=Object.assign||function(e){for(var t=1;t0&&(n(o,!!e.isBeginning),e.params.watchOverflow&&e.enabled&&o[e.isLocked?"addClass":"removeClass"](t.lockClass)),r&&r.length>0&&(n(r,!!e.isEnd),e.params.watchOverflow&&e.enabled&&r[e.isLocked?"addClass":"removeClass"](t.lockClass))}},onPrevClick:function(e){var t=this;e.preventDefault(),(!t.isBeginning||t.params.loop)&&t.slidePrev()},onNextClick:function(e){var t=this;e.preventDefault(),(!t.isEnd||t.params.loop)&&t.slideNext()},init:function(){var e,t,n=this,i=n.params.navigation;n.params.navigation=function(e,t,n,i){var r=QK();return n&&Object.keys(i).forEach(function(n){if(!t[n]&&!0===t.auto){var o=r.createElement("div");o.className=i[n],e.append(o),t[n]=o}}),t}(n.$el,n.params.navigation,n.params.createElements,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),(i.nextEl||i.prevEl)&&(i.nextEl&&(e=v$(i.nextEl),n.params.uniqueNavElements&&"string"==typeof i.nextEl&&e.length>1&&1===n.$el.find(i.nextEl).length&&(e=n.$el.find(i.nextEl))),i.prevEl&&(t=v$(i.prevEl),n.params.uniqueNavElements&&"string"==typeof i.prevEl&&t.length>1&&1===n.$el.find(i.prevEl).length&&(t=n.$el.find(i.prevEl))),e&&e.length>0&&e.on("click",n.navigation.onNextClick),t&&t.length>0&&t.on("click",n.navigation.onPrevClick),_$(n.navigation,{$nextEl:e,nextEl:e&&e[0],$prevEl:t,prevEl:t&&t[0]}),n.enabled||(e&&e.addClass(i.lockClass),t&&t.addClass(i.lockClass)))},destroy:function(){var e=this,t=e.navigation,n=t.$nextEl,i=t.$prevEl;n&&n.length&&(n.off("click",e.navigation.onNextClick),n.removeClass(e.params.navigation.disabledClass)),i&&i.length&&(i.off("click",e.navigation.onPrevClick),i.removeClass(e.params.navigation.disabledClass))}},CQ={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){w$(this,{navigation:SQ({},EQ)})},on:{init:function(e){e.navigation.init(),e.navigation.update()},toEdge:function(e){e.navigation.update()},fromEdge:function(e){e.navigation.update()},destroy:function(e){e.navigation.destroy()},"enable disable":function(e){var t=e.navigation,n=t.$nextEl,i=t.$prevEl;n&&n[e.enabled?"removeClass":"addClass"](e.params.navigation.lockClass),i&&i[e.enabled?"removeClass":"addClass"](e.params.navigation.lockClass)},click:function(e,t){var n=e.navigation,i=n.$nextEl,r=n.$prevEl,o=t.target;if(e.params.navigation.hideOnClick&&!v$(o).is(r)&&!v$(o).is(i)){if(e.pagination&&e.params.pagination&&e.params.pagination.clickable&&(e.pagination.el===o||e.pagination.el.contains(o)))return;var a;i?a=i.hasClass(e.params.navigation.hiddenClass):r&&(a=r.hasClass(e.params.navigation.hiddenClass)),e.emit(!0===a?"navigationShow":"navigationHide"),i&&i.toggleClass(e.params.navigation.hiddenClass),r&&r.toggleClass(e.params.navigation.hiddenClass)}}}},OQ=function(){var e=function e(){m(this,e),z$.use([CQ])};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,xQ]]}),e}(),TQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh]]}),e}(),AQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,oY,x_,OQ,TQ]]}),e}(),PQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,Xf,AQ]]}),e}(),MQ={isolated:!0},IQ=new Pi("Message service configuration",{providedIn:"root",factory:function(){return MQ}}),RQ=function(){var e=function(){function e(t,n,i){m(this,e),this.source=t,this.channel=n,this.messages=i}return b(e,[{key:"sendMessage",value:function(e){this.channel.next({id:this.nextMessageId(),source:this.source,payload:e})}},{key:"getMessages",value:function(){var e=this;return this.messages.pipe(rf(function(t){return t.source!==e.source}))}},{key:"getMessagesFromSource",value:function(e){return this.getMessages().pipe(rf(function(t){return t.source===e}))}},{key:"getMessagesFromSources",value:function(e){return this.getMessages().pipe(rf(function(t){return e.includes(t.source)}))}},{key:"nextMessageId",value:function(){return e.counter++}}]),e}();return e.counter=0,e}(),DQ=function(){var e=function(){function e(t,n){var i=this;m(this,e),this.config=t,this.parent=n,this.channel=new re,this.messages=t.isolated||!n?this.channel.asObservable():ge([this.channel,n.messages.pipe(up(function(){return!i.channel.closed}))]).pipe(xe())}return b(e,[{key:"ngOnDestroy",value:function(){this.channel.complete()}},{key:"connect",value:function(e){return new RQ(e,this.channel,this.messages)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(IQ),Ki(e,12))},e.\u0275prov=Ye({token:e,factory:e.\u0275fac,providedIn:"root"}),e}(),NQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:IQ,useValue:MQ}],imports:[[Ad,Fy,x_]]}),e}();function LQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("animation-name","mat-progress-spinner-stroke-rotate-"+n._spinnerAnimationLabel)("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}function jQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}function FQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("animation-name","mat-progress-spinner-stroke-rotate-"+n._spinnerAnimationLabel)("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}function BQ(e,t){if(1&e&&(Gn(),As(0,"circle",3)),2&e){var n=Us();ou("stroke-dashoffset",n._getStrokeDashOffset(),"px")("stroke-dasharray",n._getStrokeCircumference(),"px")("stroke-width",n._getCircleStrokeWidth(),"%"),bs("r",n._getCircleRadius())}}var VQ=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",zQ=qy(function(){return function e(t){m(this,e),this._elementRef=t}}(),"primary"),UQ=new Pi("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}}),HQ=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a){var s;m(this,n),(s=t.call(this,e))._document=r,s._diameter=100,s._value=0,s._fallbackAnimation=!1,s.mode="determinate";var u=n._diameters;return s._spinnerAnimationLabel=s._getSpinnerAnimationLabel(),u.has(r.head)||u.set(r.head,new Set([100])),s._fallbackAnimation=i.EDGE||i.TRIDENT,s._noopAnimations="NoopAnimations"===o&&!!a&&!a._forceAnimations,a&&(a.diameter&&(s.diameter=a.diameter),a.strokeWidth&&(s.strokeWidth=a.strokeWidth)),s}return b(n,[{key:"diameter",get:function(){return this._diameter},set:function(e){this._diameter=Md(e),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}},{key:"strokeWidth",get:function(){return this._strokeWidth||this.diameter/10},set:function(e){this._strokeWidth=Md(e)}},{key:"value",get:function(){return"determinate"===this.mode?this._value:0},set:function(e){this._value=Math.max(0,Math.min(100,Md(e)))}},{key:"ngOnInit",value:function(){var e=this._elementRef.nativeElement;this._styleRoot=Lf(e)||this._document.head,this._attachStyleNode(),e.classList.add("mat-progress-spinner-indeterminate".concat(this._fallbackAnimation?"-fallback":"","-animation"))}},{key:"_getCircleRadius",value:function(){return(this.diameter-10)/2}},{key:"_getViewBox",value:function(){var e=2*this._getCircleRadius()+this.strokeWidth;return"0 0 ".concat(e," ").concat(e)}},{key:"_getStrokeCircumference",value:function(){return 2*Math.PI*this._getCircleRadius()}},{key:"_getStrokeDashOffset",value:function(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}},{key:"_getCircleStrokeWidth",value:function(){return this.strokeWidth/this.diameter*100}},{key:"_attachStyleNode",value:function(){var e=this._styleRoot,t=this._diameter,i=n._diameters,r=i.get(e);if(!r||!r.has(t)){var o=this._document.createElement("style");o.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),o.textContent=this._getAnimationText(),e.appendChild(o),r||(r=new Set,i.set(e,r)),r.add(t)}}},{key:"_getAnimationText",value:function(){var e=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*e).replace(/END_VALUE/g,""+.2*e).replace(/DIAMETER/g,"".concat(this._spinnerAnimationLabel))}},{key:"_getSpinnerAnimationLabel",value:function(){return this.diameter.toString().replace(".","_")}}]),n}(zQ);HQ.\u0275fac=function(e){return new(e||HQ)(Ss(Yu),Ss(Mf),Ss(hh,8),Ss(Dy,8),Ss(UQ))},HQ.\u0275cmp=Et({type:HQ,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(e,t){2&e&&(bs("aria-valuemin","determinate"===t.mode?0:null)("aria-valuemax","determinate"===t.mode?100:null)("aria-valuenow","determinate"===t.mode?t.value:null)("mode",t.mode),ou("width",t.diameter,"px")("height",t.diameter,"px"),au("_mat-animation-noopable",t._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[as],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(e,t){1&e&&(Gn(),Os(0,"svg",0),ks(1,LQ,1,9,"circle",1),ks(2,jQ,1,7,"circle",2),Ts()),2&e&&(ou("width",t.diameter,"px")("height",t.diameter,"px"),Es("ngSwitch","indeterminate"===t.mode),bs("viewBox",t._getViewBox()),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngSwitchCase",!1))},directives:[Bh,Vh],styles:[VQ],encapsulation:2,changeDetection:0}),HQ._diameters=new WeakMap;var GQ=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i,r,o,a){var s;return m(this,n),(s=t.call(this,e,i,r,o,a)).mode="indeterminate",s}return n}(HQ);return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(Mf),Ss(hh,8),Ss(Dy,8),Ss(UQ))},e.\u0275cmp=Et({type:e,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(e,t){2&e&&(ou("width",t.diameter,"px")("height",t.diameter,"px"),au("_mat-animation-noopable",t._noopAnimations))},inputs:{color:"color"},features:[as],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(e,t){1&e&&(Gn(),Os(0,"svg",0),ks(1,FQ,1,9,"circle",1),ks(2,BQ,1,7,"circle",2),Ts()),2&e&&(ou("width",t.diameter,"px")("height",t.diameter,"px"),Es("ngSwitch","indeterminate"===t.mode),bs("viewBox",t._getViewBox()),Wo(1),Es("ngSwitchCase",!0),Wo(1),Es("ngSwitchCase",!1))},directives:[Bh,Vh],styles:[VQ],encapsulation:2,changeDetection:0}),e}(),WQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Gy,Yh],Gy]}),e}(),qQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,WQ]]}),e}(),XQ=function(){var e=function e(){m(this,e)};return e.\u0275fac=function(t){return new(t||e)},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({imports:[[Yh,M_,x_,WQ]]}),e}(),YQ={initialConfig:{},parse:{},rename:{}},KQ=function(){function e(t,n){m(this,e),this.configState=t,this.storedChanges={},this.options=Object.assign(Object.assign({},YQ),n)}return b(e,[{key:"addChanges",value:function(e){this.storedChanges=Object.assign(Object.assign({},this.storedChanges),e)}},{key:"applyChanges",value:function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};void 0===e&&(e=this.storedChanges,this.storedChanges={});for(var i=this.configState,r=this.options.initialConfig,o=i.snapshot,a=Object.assign(Object.assign(Object.assign({},r),o),n),s=0,u=Object.entries(e);s true",eg("1s"))])]},changeDetection:0}),e}(),nZ=["*"],iZ={params:{width:0,margin:0,margin2:0}},rZ=function(){function e(){var t=this;m(this,e),this.initialized=!1,this.deferred=new Promise(function(e){t.resolve=e})}return b(e,[{key:"set",value:function(){this.initialized=!0,this.resolve()}},{key:"wait",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.deferred);case 1:case"end":return e.stop()}},e,this)}))}},{key:"valueOf",value:function(){return this.initialized}}]),e}(),oZ=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this.element=i,this.className="ccf-drawer",this._position="start",this._opened=!1,this._expanded=!1,this.openedChange=new Qc(!0),this.expandedChange=new Qc(!0),this.stateChange=new Qc(!0),this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._measuredWidth=0,this.width=0,this._measuredMargin=0,this.margin2=0,this.initialized=new rZ,this.subscriptions=new G,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(function(e){r.handleMessage(e)&&n.markForCheck()}))}return b(e,[{key:"classEnd",get:function(){return"end"===this.position}},{key:"position",get:function(){return this._position},set:function(e){this._position=e||"start"}},{key:"opened",get:function(){return this._opened},set:function(e){this.toggle(Pd(e))}},{key:"expanded",get:function(){return this._expanded},set:function(e){this.toggleExpanded(Pd(e))}},{key:"expandedStateObj",get:function(){return{value:this.expandedState2,params:{width:this.width,margin:this.measuredMargin,margin2:this.margin2}}}},{key:"measuredWidth",get:function(){if(this._measuredWidth>0)return this._measuredWidth;var e=this.element.nativeElement;if(!e)return 0;var t=e.getBoundingClientRect(),n=t.right-t.left;return 0===n?0:(this._measuredWidth=n,n)}},{key:"measuredMargin",get:function(){if(this._measuredMargin>0)return this._measuredMargin;var e=this.element.nativeElement;if(!e)return 0;var t=globalThis.getComputedStyle(e).getPropertyValue("start"===this.position?"margin-right":"margin-left"),n=Number(t.slice(0,-2));return this._measuredMargin=n,n}},{key:"ngAfterViewInit",value:function(){var e=this;this.initialized.set(),setTimeout(function(){return e.channel.sendMessage({type:"drawer-initialized"})})}},{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"open",value:function(){this.toggle(!0)}},{key:"close",value:function(){this.toggle(!1)}},{key:"toggle",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.opened;this.opened!==e&&(e?this.openedState=this.initialized.valueOf()?"open":"open-instant":(this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._expanded=!1),this._opened=e,this.sendToggle())}},{key:"openExpanded",value:function(){this.toggleExpanded(!0)}},{key:"closeExpanded",value:function(){this.toggleExpanded(!1)}},{key:"toggleExpanded",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!this.expanded;this.expanded!==e&&(e?this.expandedState=this.initialized.valueOf()?"open":"open-instant":(this.expandedState="closed",this.expandedState2="collapsed"),this._expanded=e,this.sendToggle())}},{key:"closeOpenDone",value:function(){this.openedChange.emit(this.opened)}},{key:"expandCollapseDone",value:function(){this.expandedChange.emit(this.expanded)}},{key:"sendToggle",value:function(){return mw(this,void 0,void 0,regeneratorRuntime.mark(function e(){return regeneratorRuntime.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.initialized.wait();case 2:this.channel.sendMessage({type:"drawer-toggled",opened:this.opened,expanded:this.expanded,width:this.measuredWidth,margin:this.measuredMargin}),this.stateChange.emit();case 4:case"end":return e.stop()}},e,this)}))}},{key:"handleMessage",value:function(e){switch(e.payload.type){case"drawer-toggled":return this.syncExpanded(e.source),!0;default:return!1}}},{key:"syncExpanded",value:function(e){(this.expanded||e.expanded)&&(this.expanded&&e.expanded?this.expandedState2=e.expandedState2="half":this.expanded?e.opened?(this.expandedState2="extended",this.width=e.measuredWidth+e.measuredMargin):(this.expandedState2="full",this.margin2=e.measuredMargin):this.opened?(e.expandedState2="extended",e.width=this.measuredWidth+this.measuredMargin):(e.expandedState2="full",e.margin2=this.measuredMargin))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(JQ),Ss(_c),Ss(Yu))},e.\u0275cmp=Et({type:e,selectors:[["ccf-drawer"]],hostVars:10,hostBindings:function(e,t){1&e&&Fs("@openClose.done",function(){return t.closeOpenDone()})("@expandCollapse.done",function(){return t.expandCollapseDone()}),2&e&&(Ou("@openClose",t.openedState)("@expandCollapse",t.expandedStateObj),uu(t.className),au("ccf-drawer-end",t.classEnd)("ccf-drawer-opened",t.opened)("ccf-drawer-expanded",t.expanded))},inputs:{position:"position",opened:"opened",expanded:"expanded"},outputs:{openedChange:"openedChange",expandedChange:"expandedChange",stateChange:"stateChange"},exportAs:["ccfDrawer"],ngContentSelectors:nZ,decls:2,vars:0,consts:[[1,"cff-drawer-inner-container"]],template:function(e,t){1&e&&(Gs(),Os(0,"div",0),Ws(1),Ts())},styles:["[_nghost-%COMP%]{display:block;position:absolute;top:0;bottom:0;z-index:2;outline:0;transform:translate(-100%);background-color:#fff}.ccf-drawer-end[_nghost-%COMP%]{right:0;transform:translate(100%)}[_nghost-%COMP%] .cff-drawer-inner-container[_ngcontent-%COMP%]{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}"],data:{animation:[Jv("openClose",[ig("open, open-instant",ng({transform:"none"})),ig("closed",ng({})),rg("closed => open-instant",eg(0)),rg("closed <=> open, open-instant => closed",eg(".5s ease-in-out"))]),Jv("expandCollapse",[ig("collapsed",ng({})),ig("half",ng({width:"calc(50% - {{ margin }}px)"}),iZ),ig("extended",ng({width:"calc(100% - {{ width }}px - {{ margin }}px)"}),iZ),ig("full",ng({width:"calc(100% - {{ margin }}px - {{ margin2 }}px)"}),iZ),rg("* <=> *",eg(".5s ease-in-out"))])]},changeDetection:0}),e}();function aZ(e,t){1&e&&(Os(0,"ccf-drawer-content"),Ws(1,2),Ts())}var sZ=[[["ccf-drawer"]],[["ccf-drawer-content"]],"*"],uZ=["ccf-drawer","ccf-drawer-content","*"];function cZ(e){throw new Error("Multiple drawers in position ".concat(e))}var lZ=function(){var e=function(){function e(t,n){var i=this;m(this,e),this.cdr=n,this.className="ccf-drawer-container",this.subscriptions=new G,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(function(e){i.handleMessage(e)&&n.markForCheck()}))}return b(e,[{key:"content",get:function(){var e;return null!==(e=this.content1.first)&&void 0!==e?e:this.content2.first}},{key:"hasWrappedContent",get:function(){return 0!==this.content1.length}},{key:"ngAfterViewInit",value:function(){var e=this;this.drawers.changes.pipe(hf(null)).subscribe(function(){var t=e.validateDrawers();e.channel.sendMessage({type:"drawer-containers-changed",drawers:t}),e.cdr.markForCheck()}),this.content1.changes.pipe(hf(null)).subscribe(function(){e.channel.sendMessage({type:"content-container-changed",content:e.content}),e.cdr.markForCheck()})}},{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"handleMessage",value:function(e){return!0}},{key:"validateDrawers",value:function(){var e=this.drawers.toArray(),t=e.filter(function(e){return"start"===e.position}),n=e.filter(function(e){return"end"===e.position});return t.length>1&&cZ("start"),n.length>1&&cZ("end"),[t[0],n[0]]}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(JQ),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-drawer-container"]],contentQueries:function(e,t,n){var i;(1&e&&(hl(n,oZ,5),hl(n,tZ,5)),2&e)&&(cl(i=dl())&&(t.drawers=i),cl(i=dl())&&(t.content1=i))},viewQuery:function(e,t){var n;(1&e&&ll(tZ,5),2&e)&&(cl(n=dl())&&(t.content2=n))},hostVars:2,hostBindings:function(e,t){2&e&&uu(t.className)},exportAs:["ccfDrawerContainer"],features:[Uu([JQ])],ngContentSelectors:uZ,decls:3,vars:1,consts:[[4,"ngIf"]],template:function(e,t){1&e&&(Gs(sZ),Ws(0),Ws(1,1),ks(2,aZ,2,0,"ccf-drawer-content",0)),2&e&&(Wo(2),Es("ngIf",!t.hasWrappedContent))},directives:[Nh,tZ],styles:["[_nghost-%COMP%]{display:block;position:relative;z-index:1;overflow:hidden;-webkit-overflow-scrolling:touch}"],changeDetection:0}),e}();function hZ(e,t){if(1&e&&(Os(0,"mat-option",6),Os(1,"div"),wu(2),Ts(),Ts()),2&e){var n=t.$implicit,i=Us();Es("value",n),Wo(1),uu(i.optionsVisible),Wo(1),xu(" ",n," ")}}var dZ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.selectionChange=new Qc,this.optionsVisible="invisible"}return b(e,[{key:"toggleOptions",value:function(){this.optionsVisible="visible"===this.optionsVisible?"invisible":"visible"}},{key:"selectionChanged",value:function(e){this.selection=e,this.ga.event("selection_change","dropdown","".concat(this.label,":").concat(e)),this.selectionChange.emit(e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-dropdown"]],inputs:{label:"label",options:"options",selection:"selection"},outputs:{selectionChange:"selectionChange"},decls:7,vars:3,consts:[[1,"ccf-dropdown","wrapper"],[1,"container"],[1,"dropdown-form-field"],[1,"label"],["disableOptionCentering","true","panelClass","option-panel","disableRipple","true",1,"selected-value",3,"value","selectionChange","openedChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"mat-form-field",2),Os(3,"div",3),wu(4),Ts(),Os(5,"mat-select",4),js("selectionChange",function(e){return t.selectionChanged(e.value)})("openedChange",function(){return t.toggleOptions()}),ks(6,hZ,3,5,"mat-option",5),Ts(),Ts(),Ts(),Ts()),2&e&&(Wo(4),xu(" ",t.label," "),Wo(1),Es("value",t.selection),Wo(1),Es("ngForOf",t.options))},directives:[Vz,EY,Rh,gb],styles:["@-webkit-keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dropdown-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:1em;padding-right:1em;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{font-size:.875rem;border:none}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix mat-select{font-size:1rem;font-weight:bold}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .option-panel{-webkit-animation:slideInHorizontalDropdown .3s;animation:slideInHorizontalDropdown .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;position:absolute!important;top:1.55rem;max-width:9.5rem} .option-panel .mat-option{border-bottom-width:1px;border-bottom-style:solid;padding-left:1em} .option-panel :last-child{border-bottom:none} .cdk-overlay-pane{min-width:0rem!important}.dropdown-form-field[_ngcontent-%COMP%]{height:3rem;width:100%}.dropdown-form-field[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{padding-bottom:.063rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem} .ccf-dropdown .mat-select-arrow-wrapper{transform:translatey(-.5em)}"],changeDetection:0}),e}(),fZ=["popover"];function pZ(e,t){if(1&e){var n=Rs();Os(0,"div",7,8),Os(2,"div"),Os(3,"div",9),wu(4),Ts(),Os(5,"input",10),js("keyup",function(e){return gn(n),Us().onKeyLow(e)}),Ts(),Ts(),Os(6,"ng5-slider",11),js("valueChange",function(e){return gn(n),Us().lowValue=e})("highValueChange",function(e){return gn(n),Us().highValue=e})("userChangeEnd",function(){return gn(n),Us().sliderValueChanged()}),Ts(),Os(7,"div"),Os(8,"div",12),wu(9),Ts(),Os(10,"input",13),js("keyup",function(e){return gn(n),Us().onKeyHigh(e)}),Ts(),Ts(),Ts()}if(2&e){var i=Us();Wo(2),Eu("label min fade-in ",i.contentsVisible,""),Wo(2),xu(" ",i.options.floor,"> "),Wo(1),qs("value",i.lowValue),Wo(1),Eu("slider fade-in ",i.contentsVisible,""),Es("options",i.options)("value",i.lowValue)("highValue",i.highValue),Wo(1),Eu("label max fade-in ",i.contentsVisible,""),Wo(2),xu(" ",i.options.ceil," "),Wo(1),qs("value",i.highValue)}}var vZ=function(){var e=function(){function e(t,n,i){m(this,e),this.element=n,this.ga=i,this.selectionChange=new Qc,this.isSliderOpen=!1,this.contentsVisible="invisible",this.isSliderInitialized=!1;var r=t.position().flexibleConnectedTo(n).withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayRef=t.create({panelClass:"slider-pane",positionStrategy:r})}return b(e,[{key:"rangeLabel",get:function(){var e=this.lowValue,t=this.highValue;return e===t?"".concat(e):"".concat(e,"-").concat(t)}},{key:"ngOnChanges",value:function(e){e.valueRange&&this.optionsChanged(),e.selection&&(this.lowValue=Math.min.apply(Math,v(this.selection)),this.highValue=Math.max.apply(Math,v(this.selection)))}},{key:"optionsChanged",value:function(){var e,t;this.options={floor:this.valueRange?this.valueRange[0]:0,ceil:this.valueRange?this.valueRange[1]:0,step:1,hideLimitLabels:!0,hidePointerLabels:!0},this.lowValue=null!==(e=this.options.floor)&&void 0!==e?e:0,this.highValue=null!==(t=this.options.ceil)&&void 0!==t?t:0}},{key:"ngOnDestroy",value:function(){this.overlayRef.dispose()}},{key:"closeSliderPopover",value:function(e){var t,n,i=this.element,r=this.isSliderOpen,o=this.popoverElement;r&&(i.nativeElement.contains(e)||(null===(n=null===(t=null==o?void 0:o.nativeElement)||void 0===t?void 0:t.contains)||void 0===n?void 0:n.call(t,e))||(this.overlayRef.detach(),this.isSliderInitialized=!1,this.isSliderOpen=!1,this.contentsVisible="invisible"))}},{key:"toggleSliderPopover",value:function(){var e=this.isSliderOpen,t=this.isSliderInitialized;t?(this.overlayRef.detach(),this.isSliderInitialized=!1):!t&&!e&&this.initializeSliderPopover(),this.contentsVisible="visible"===this.contentsVisible?"invisible":"visible",this.isSliderOpen=!e}},{key:"sliderValueChanged",value:function(){var e=this.lowValue,t=this.highValue;this.selection=[e,t],this.ga.event("slider_range_change","dual_slider","".concat(this.label,":").concat(e,":").concat(t)),this.selectionChange.emit(this.selection)}},{key:"initializeSliderPopover",value:function(){var e=this.overlayRef,t=this.popoverPortal;e.attach(t),e.updatePosition(),this.isSliderInitialized=!0}},{key:"onKeyLow",value:function(e){var t=Number(e.target.value);"Enter"===e.key&&(t>=Number(this.options.floor)&&t<=Number(this.options.ceil)&&(this.lowValue=t),e.target.value=String(this.lowValue),e.target.blur(),this.sliderValueChanged())}},{key:"onKeyHigh",value:function(e){var t=Number(e.target.value);"Enter"===e.key&&(t>=Number(this.options.floor)&&t<=Number(this.options.ceil)&&(this.highValue=t),e.target.value=String(this.highValue),e.target.blur(),this.sliderValueChanged())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Up),Ss(Yu),Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-dual-slider"]],viewQuery:function(e,t){var n;(1&e&&(ll(ep,7),ll(fZ,5,Yu)),2&e)&&(cl(n=dl())&&(t.popoverPortal=n.first),cl(n=dl())&&(t.popoverElement=n.first))},hostBindings:function(e,t){1&e&&js("click",function(e){return t.closeSliderPopover(e.target)},!1,to)("touchstart",function(e){return t.closeSliderPopover(e.target)},!1,to)},inputs:{label:"label",valueRange:"valueRange",selection:"selection"},outputs:{selectionChange:"selectionChange"},features:[Ht],decls:10,vars:4,consts:[[1,"ccf-slider","wrapper"],[1,"container"],["class","ccf-slider detached",4,"cdk-portal"],[1,"slider-form-field",3,"click"],[1,"slider-labels"],[1,"name-label"],[1,"range-label"],[1,"ccf-slider","detached"],["popover",""],[1,"label","floor"],["type","text",1,"input-low",3,"value","keyup"],[3,"options","value","highValue","valueChange","highValueChange","userChangeEnd"],[1,"label","ceil"],["type","text",1,"input-high",3,"value","keyup"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),ks(2,pZ,11,16,"div",2),Os(3,"mat-form-field",3),js("click",function(){return t.toggleSliderPopover()}),Os(4,"div",4),Os(5,"span",5),wu(6),Ts(),Os(7,"span",6),wu(8),Ts(),Ts(),As(9,"mat-select"),Ts(),Ts(),Ts()),2&e&&(Wo(3),au("highlight",t.isSliderOpen),Wo(3),ku(t.label),Wo(2),ku(t.rangeLabel))},directives:[tp,Vz,EY,gK],styles:[".slider-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;font-size:.875rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.slider-labels[_ngcontent-%COMP%]{display:flex;flex-direction:column}.slider-labels[_ngcontent-%COMP%] .name-label[_ngcontent-%COMP%]{padding-bottom:.25rem}.slider-labels[_ngcontent-%COMP%] .range-label[_ngcontent-%COMP%]{font-weight:bold} .ccf-slider.wrapper .mat-select-arrow-wrapper{transform:translatey(-1.5em)}@-webkit-keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .slider-pane{position:absolute!important;top:-1px}.ccf-slider.detached[_ngcontent-%COMP%]{-webkit-animation:slideInHorizontalSlider .3s;animation:slideInHorizontalSlider .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;display:flex;justify-content:center;align-items:center;width:0rem;height:4.375rem;padding:.75rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] {visibility:hidden;margin-top:.9375rem;margin-bottom:.9375rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-bar{opacity:.2;height:.15rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-selection{opacity:1}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer{width:1rem;height:1rem;top:-.405rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer:after{display:none}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:2rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.min[_ngcontent-%COMP%]{margin-right:1rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%]{margin-left:1rem;align-items:flex-end}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{text-align:right}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .floor[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%]{font-size:.875rem}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:none;width:1.75rem;font-size:1rem;font-weight:bold;padding:0}"]}),e}();function gZ(e,t){if(1&e){var n=Rs();Os(0,"div",4),Os(1,"mat-checkbox",5),js("change",function(e){var t=gn(n).$implicit;return Us().filterOnChange(e,t)}),wu(2),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us();Wo(1),Es("checked",null==r.selection?null:r.selection.includes(i)),Wo(1),xu(" ",i," ")}}var mZ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.selection=[],this.columns=3,this.selectionChange=new Qc}return b(e,[{key:"filterOnChange",value:function(e,t){e.checked?(this.selection=[].concat(v(this.selection),[t]),this.ga.event("filter_added","filter_checkbox",t)):(this.selection=this.selection.filter(function(e){return e!==t}),this.ga.event("filter_removed","filter_checkbox",t)),this.selectionChange.emit(this.selection)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-checkbox"]],inputs:{label:"label",options:"options",selection:"selection",columns:"columns"},outputs:{selectionChange:"selectionChange"},decls:5,vars:6,consts:[[1,"filter-container"],[1,"filter-label"],[1,"options-container"],["class","option",4,"ngFor","ngForOf"],[1,"option"],[3,"checked","change"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),wu(2),Ts(),Os(3,"div",2),ks(4,gZ,3,2,"div",3),Ts(),Ts()),2&e&&(Wo(2),ku(t.label),Wo(1),au("three",3===t.columns)("four",4===t.columns),Wo(1),Es("ngForOf",t.options))},directives:[Rh,iY],styles:[".mat-checkbox.mat-accent .mat-checkbox-checkmark-path{stroke:#fff!important} .mat-checkbox.mat-accent .mat-checkbox-inner-container{margin-right:1rem}.filter-label[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:bold}.options-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap}.options-container.three[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:33%}.options-container.four[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:25%}.option[_ngcontent-%COMP%]{color:#fafafa}"],changeDetection:0}),e}(),yZ=function(){return["Both","Male","Female"]},bZ=function(){return[1,110]},_Z=function(){return[13,83]},wZ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.filtersChange=new Qc,this.applyFilters=new Qc}return b(e,[{key:"updateFilter",value:function(e,t){this.filters=Object.assign(Object.assign({},this.filters),o({},t,e)),this.ga.event("filter_update","filter_content","".concat(t,":").concat(e)),this.filtersChange.emit(this.filters)}},{key:"applyButtonClick",value:function(){this.ga.event("filters_applied","filter_content"),this.applyFilters.emit(this.filters)}},{key:"refreshFilters",value:function(){this.filters=JSON.parse(JSON.stringify(DX)),this.ga.event("filters_reset","filter_content"),this.filtersChange.emit(this.filters)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-filters-content"]],inputs:{hidden:"hidden",filters:"filters",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange",applyFilters:"applyFilters"},decls:14,vars:23,consts:[[1,"patient-filters"],["label","Sex",3,"options","selection","selectionChange"],["label","Age",3,"valueRange","selection","selectionChange"],["label","BMI",3,"valueRange","selection","selectionChange"],[1,"filter","assays"],["label","Assay Types",3,"columns","options","selection","selectionChange"],[1,"filter","providers"],["label","Tissue Providers",3,"columns","options","selection","selectionChange"],[1,"button-container"],["mat-button","",1,"outline-button",3,"click"],[1,"refresh-icon"],[1,"icon","refresh",3,"click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"ccf-dropdown",1),js("selectionChange",function(e){return t.updateFilter(e,"sex")}),Ts(),Os(2,"ccf-dual-slider",2),js("selectionChange",function(e){return t.updateFilter(e,"ageRange")}),Ts(),Os(3,"ccf-dual-slider",3),js("selectionChange",function(e){return t.updateFilter(e,"bmiRange")}),Ts(),Ts(),Os(4,"div",4),Os(5,"ccf-checkbox",5),js("selectionChange",function(e){return t.updateFilter(e,"technologies")}),Ts(),Ts(),Os(6,"div",6),Os(7,"ccf-checkbox",7),js("selectionChange",function(e){return t.updateFilter(e,"tmc")}),Ts(),Ts(),Os(8,"div",8),Os(9,"button",9),js("click",function(){return t.applyButtonClick()}),wu(10,"APPLY FILTERS"),Ts(),Os(11,"div",10),Os(12,"mat-icon",11),js("click",function(){return t.refreshFilters()}),wu(13,"refresh"),Ts(),Ts(),Ts()),2&e&&(au("hidden",t.hidden),Wo(1),Es("options",Gc(20,yZ))("selection",null==t.filters?null:t.filters.sex),Wo(1),Es("valueRange",Gc(21,bZ))("selection",null==t.filters?null:t.filters.ageRange),Wo(1),Es("valueRange",Gc(22,_Z))("selection",null==t.filters?null:t.filters.bmiRange),Wo(1),au("hidden",t.hidden),Wo(1),Es("columns",4)("options",t.technologyFilters)("selection",null==t.filters?null:t.filters.technologies),Wo(1),au("hidden",t.hidden),Wo(1),Es("columns",3)("options",t.providerFilters)("selection",null==t.filters?null:t.filters.tmc),Wo(1),au("hidden",t.hidden))},directives:[dZ,vZ,mZ,A_,k_],styles:[".filter[_ngcontent-%COMP%]{margin-top:2rem}.filter.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.filter.assays[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{margin-right:0 rem;width:25%}.button-container[_ngcontent-%COMP%]{margin-top:2rem;display:flex;flex-direction:row-reverse;align-items:center}.button-container.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.outline-button[_ngcontent-%COMP%]{box-shadow:.1rem .1rem .2rem #0000001d}.refresh-icon[_ngcontent-%COMP%]{padding:.25rem;border-radius:.25rem;margin-right:1rem;display:flex;justify-content:center;align-items:center;transition:.6s}.refresh-icon[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{cursor:pointer;transition:.6s;transition-property:background}.patient-filters[_ngcontent-%COMP%]{display:flex;width:90%;padding-top:1rem}.patient-filters.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.patient-filters[_ngcontent-%COMP%] ccf-dual-slider[_ngcontent-%COMP%]{margin-left:.5rem;width:33%}.patient-filters[_ngcontent-%COMP%] ccf-dropdown[_ngcontent-%COMP%]{width:33%}"],changeDetection:0}),e}();function kZ(e,t){1&e&&(Os(0,"div"),Os(1,"mat-icon",7),wu(2,"close"),Ts(),Ts())}function xZ(e,t){1&e&&As(0,"mat-icon",8)}var SZ=function(){var e=function(){function e(){m(this,e),this.filtersChange=new Qc,this.filtersVisible=!1}return b(e,[{key:"toggleFilterVisible",value:function(){this.filtersVisible=!this.filtersVisible}},{key:"removeBox",value:function(){this.filtersVisible=!1}},{key:"applyFilters",value:function(e){this.filters=e,this.filtersChange.emit(e),this.removeBox()}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-filters-popover"]],inputs:{filters:"filters",drawerExpanded:"drawerExpanded",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange"},decls:8,vars:12,consts:[[1,"filters-popover"],[1,"show-hide",3,"click"],[4,"ngIf","ngIfElse"],["notShow",""],[1,"popup-container"],[1,"popup-body"],[3,"technologyFilters","providerFilters","hidden","filters","applyFilters"],[1,"icon"],["svgIcon","filter",1,"icon","funnel"]],template:function(e,t){if(1&e&&(Os(0,"div",0),Os(1,"button",1),js("click",function(){return t.toggleFilterVisible()}),ks(2,kZ,3,0,"div",2),ks(3,xZ,1,0,"ng-template",null,3,gl),Ts(),Os(5,"div",4),Os(6,"div",5),Os(7,"ccf-filters-content",6),js("applyFilters",function(e){return t.applyFilters(e)}),Ts(),Ts(),Ts(),Ts()),2&e){var n=xs(4);au("expanded",t.drawerExpanded),Wo(2),Es("ngIf",t.filtersVisible)("ngIfElse",n),Wo(3),au("visible",t.filtersVisible)("hidden",!t.filtersVisible),Wo(2),Es("technologyFilters",t.technologyFilters)("providerFilters",t.providerFilters)("hidden",!t.filtersVisible)("filters",t.filters)}},directives:[Nh,wZ,k_],styles:[".filters-popover[_ngcontent-%COMP%]{position:inherit}.filters-popover.expanded[_ngcontent-%COMP%]{position:relative}.filters-popover.expanded[_ngcontent-%COMP%] .popup-container[_ngcontent-%COMP%]{right:inherit}.filters-popover.expanded[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding-left:4em!important}.popup-container[_ngcontent-%COMP%]{position:absolute;z-index:5;top:1.2rem;left:1.48rem;box-shadow:.2rem .2rem 1rem #00000058}.popup-container[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding:1.5rem;position:relative;height:26.5rem}.popup-container.visible[_ngcontent-%COMP%]{width:35rem;height:26.5rem;transition:width .2s ease-in-out;border-width:1px}.popup-container.visible[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:1;transition-delay:.3s;transition-duration:.2s}.popup-container.hidden[_ngcontent-%COMP%]{width:0;height:0;transition:all .2s ease-out;transition-delay:.3s;pointer-events:none}.popup-container.hidden[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.show-hide[_ngcontent-%COMP%]{background:none;border:none;z-index:10;position:relative;cursor:pointer;outline:none;padding:.5rem;border-radius:.25rem;transition:.6s}"],changeDetection:0}),e}(),EZ=function(){function e(){m(this,e),this.treeModel$=new Sf(1),this.nodes$=this.treeModel$.pipe(se(function(e){return Object.values(e.nodes)})),this.rootNode$=this.treeModel$.pipe(se(function(e){return e.nodes[e.root]}))}return b(e,[{key:"setTreeModel",value:function(e){this.treeModel$.next(e),this.treeModel=e}},{key:"filter",value:function(e){var t=this;return this.nodes$.pipe(se(function(n){return t.lookup(n,e.toLowerCase())}))}},{key:"lookup",value:function(e,t){var n=this,i=new Map;return e&&e.forEach(function(e){if(e.label.toLowerCase().includes(t)&&!i.get(e.id))i.set(e.id,{index:n.getIndexOfMatch(e.label,t),displayLabel:n.formatLabel(e.label,t),node:e});else{var r=e.synonymLabels.find(function(e){return e.toLowerCase().includes(t)});r&&!i.get(e.id)&&i.set(e.id,{index:n.getIndexOfMatch(e.label+" ("+r+")",t),displayLabel:n.formatLabel(e.label+" ("+r+")",t),node:e})}}),Array.from(i.values())}},{key:"getIndexOfMatch",value:function(e,t){return e.toLowerCase().indexOf(t)}},{key:"formatLabel",value:function(e,t){var n=this.getIndexOfMatch(e,t);return[e.slice(0,n),e.slice(n,n+t.length),e.slice(n+t.length)]}},{key:"getChildren",value:function(e){var t,n,i=null!==(n=null===(t=this.treeModel)||void 0===t?void 0:t.nodes)&&void 0!==n?n:{};return(0,QG.at)(i,e.children)}}]),e}();EZ.\u0275fac=function(e){return new(e||EZ)},EZ.\u0275prov=Ye({token:EZ,factory:EZ.\u0275fac}),pw([CF.ak],EZ.prototype,"getChildren",null);var CZ=function(){function e(t,n){m(this,e),this.original=t,this.level=n,this.visible=!0,this.opacity=20}return b(e,[{key:"label",get:function(){return this.original.label}},{key:"expandable",get:function(){return this.original.children.length>0}}],[{key:"create",value:function(t,n){return new e(t,n)}}]),e}();function OZ(e,t){if(1&e){var n=Rs();Os(0,"div",4),js("click",function(e){var t=gn(n).node,i=Us();return i.select(e.ctrlKey,t,!0,!i.isSelected(t))}),wu(1),Ts()}if(2&e){var i=t.node,r=Us();au("hidden",i.label===(null==r.highlightedNode?null:r.highlightedNode.label))("filtered-out",!r.occurenceData[i.original.id]&&!!r.termData[i.original.id])("unavailable",!r.termData[i.original.id])("selected",r.isSelected(i)),Wo(1),ku("colon"===i.label?"large intestine":i.label)}}function TZ(e,t){1&e&&Is(0)}var AZ=function(e){return{node:e}};function PZ(e,t){if(1&e){var n=Rs();Os(0,"mat-tree-node",5),js("mouseleave",function(){gn(n);var e=xs(5);return Us().mouseOut(),e.reset()}),Os(1,"div"),Os(2,"mat-icon",6),js("mouseenter",function(){var e=gn(n).$implicit;return Us().mouseOver(e)}),Ts(),Os(3,"div",7),Os(4,"ccf-opacity-slider",8,9),js("opacityChange",function(e){var t=gn(n).$implicit;return Us().updateOpacity(t,e)})("opacityReset",function(){var e=gn(n).$implicit;return Us().resetNode(e)})("visibilityToggle",function(){var e=gn(n).$implicit;return Us().toggleVisibility(e)}),Ts(),Ts(),Ts(),As(6,"div",10),ks(7,TZ,1,0,"ng-container",11),Os(8,"div",12),wu(9),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us(),o=xs(2);Es("matTreeNodePaddingIndent",r.indent),Wo(1),ou("display",-1!==i.opacity?"none":"block"),Wo(1),ou("left",r.getLeftIndent(i.level)),au("fade",!0!==i.visible),Wo(1),ou("left",r.getLeftIndent(i.level)),au("hidden",i.label!==(null==r.highlightedNode?null:r.highlightedNode.label)),Wo(1),Es("visible",i.visible)("opacity",i.opacity),Wo(3),Es("ngTemplateOutlet",o)("ngTemplateOutletContext",Wc(18,AZ,i)),Wo(1),au("suborgan",i.level>1),Wo(1),ku(r.occurenceData[i.original.id]||0)}}function MZ(e,t){1&e&&Is(0)}function IZ(e,t){if(1&e){var n=Rs();Os(0,"mat-tree-node",13),js("mouseleave",function(){gn(n);var e=xs(5);return Us().mouseOut(),e.reset()}),Os(1,"div"),Os(2,"mat-icon",6),js("mouseenter",function(){var e=gn(n).$implicit;return Us().mouseOver(e)}),Ts(),Os(3,"div",7),Os(4,"ccf-opacity-slider",8,14),js("opacityChange",function(e){var t=gn(n).$implicit;return Us().updateOpacity(t,e)})("opacityReset",function(){var e=gn(n).$implicit;return Us().resetNode(e)})("visibilityToggle",function(){var e=gn(n).$implicit;return Us().toggleVisibility(e)}),Ts(),Ts(),Ts(),Os(6,"button",15),Os(7,"mat-icon",16),wu(8),Ts(),Ts(),ks(9,MZ,1,0,"ng-container",11),Os(10,"div",12),wu(11),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us(),o=xs(2);Es("matTreeNodePaddingIndent",r.indent),Wo(1),ou("display",-1!==i.opacity?"none":"block"),Wo(1),ou("left",r.getLeftIndent(i.level)),au("fade",!0!==i.visible),Wo(1),ou("left",r.getLeftIndent(i.level)),au("hidden",i.label!==(null==r.highlightedNode?null:r.highlightedNode.label)),Wo(1),Es("visible",i.visible)("opacity",i.opacity),Wo(2),au("hidden",i.label===(null==r.highlightedNode?null:r.highlightedNode.label)),ws("aria-label","Toggle ",i.label,""),Wo(2),xu(" ",r.control.isExpanded(i)?"expand_less":"expand_more"," "),Wo(1),Es("ngTemplateOutlet",o)("ngTemplateOutletContext",Wc(22,AZ,i)),Wo(1),au("suborgan",i.level>1),Wo(1),ku(r.occurenceData[i.original.id]||0)}}var RZ=(0,QG.property)("level"),DZ=(0,QG.property)("expandable"),NZ=function(){var e=function(){function e(t,n){m(this,e),this.cdr=t,this.ga=n,this.atScrollBottom=!1,this.nodeSelected=new Qc,this.nodeChanged=new Qc,this.indent="1.5rem",this.control=new xK(RZ,DZ),this.flattener=new HK(CZ.create,RZ,DZ,QG.invoke.bind(void 0,this,"getChildren")),this.dataSource=new GK(this.control,this.flattener),this._nodes=void 0,this.anySelectionsMade=!1,this.selectedNodes=[]}return b(e,[{key:"nodes",get:function(){return this._nodes},set:function(e){var t;this._nodes=e,this.control&&(this.dataSource.data=null!==(t=this._nodes)&&void 0!==t?t:[])}},{key:"getChildren",get:function(){return this._getChildren},set:function(e){var t;this._getChildren=e,this.dataSource.data=null!==(t=this.nodes)&&void 0!==t?t:[]}},{key:"occurenceData",get:function(){return this._occurenceData},set:function(e){this._occurenceData=e||{}}},{key:"termData",get:function(){return this._termData},set:function(e){this._termData=e||{}}},{key:"ngOnInit",value:function(){this.control.dataNodes&&this.control.expand(this.control.dataNodes[0])}},{key:"ngOnChanges",value:function(e){if(e.ontologyFilter){var t=e.ontologyFilter.currentValue;(null==t?void 0:t.length)>=0&&this.selectByIDs(t)}e.rootNode&&this.selectByIDs([e.rootNode.currentValue])}},{key:"selectByIDs",value:function(e){var t=this,n=this.control.dataNodes,i=n.filter(function(t){return e.indexOf(t.original.id)>-1});(null==i?void 0:i.length)>0&&(this.selectedNodes=i,this.ga.event("nodes_selected_by_ids","ontology_tree",i.map(function(e){return e.label}).join(",")),this.control.collapseAll(),this.selectedNodes.forEach(function(e){t.expandAndSelect(e.original,function(e){var t;return null===(t=n.find(function(t){return t.original.id===e.parent}))||void 0===t?void 0:t.original},!0)}))}},{key:"expandAndSelect",value:function(e,t){for(var n,i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=this.cdr,o=this.control,a=new Set,s=t(e);s;)a.add(s),s=t(s);var u=(0,QG.filter)(o.dataNodes,function(e){return a.has(e.original)}),c=o.dataNodes.find(function(t){return t.original===e});i||(this.selectedNodes=[],o.collapseAll());var l,h=_(u);try{for(h.s();!(l=h.n()).done;){var d=l.value;o.expand(d)}}catch(f){h.e(f)}finally{h.f()}"body"===e.label&&(null===(n=o.dataNodes)||void 0===n?void 0:n.length)>0&&o.expand(o.dataNodes[0]),this.select(i,c,!1,!0),r.detectChanges()}},{key:"isInnerNode",value:function(e,t){return t.expandable}},{key:"isSelected",value:function(e){return(null==e?void 0:e.original.id)===this.rootNode||this.selectedNodes.filter(function(t){return(null==e?void 0:e.original.label)===(null==t?void 0:t.original.label)}).length>0}},{key:"select",value:function(e,t,n,i){if(this.anySelectionsMade||(this.selectedNodes=[],this.anySelectionsMade=!0),void 0===t)return this.selectedNodes=[],void this.ga.event("nodes_unselected","ontology_tree");e?i?this.selectedNodes.indexOf(t)<0&&this.selectedNodes.push(t):this.selectedNodes.splice(this.selectedNodes.indexOf(t),1):(this.selectedNodes=[],i&&this.selectedNodes.push(t)),this.ga.event("nodes_selected","ontology_tree",this.selectedNodes.map(function(e){return e.label}).join(",")),n&&this.nodeSelected.emit(this.selectedNodes.map(function(e){return null==e?void 0:e.original}))}},{key:"mouseOver",value:function(e){this.highlightedNode=e}},{key:"mouseOut",value:function(){this.highlightedNode=void 0}},{key:"updateOpacity",value:function(e,t){e.opacity=t,this.ga.event("opacity_update","ontology_tree",e.label,t),this.nodeChanged.emit(e)}},{key:"resetNode",value:function(e){e.opacity=20,e.visible=!0,this.ga.event("node_reset","ontology_tree",e.label),this.nodeChanged.emit(e)}},{key:"toggleVisibility",value:function(e){e.visible=!0!==e.visible,this.ga.event("visibility_update","ontology_tree",e.label,+e.visible),this.nodeChanged.emit(e)}},{key:"getLeftIndent",value:function(e){return-1.5*e+"rem"}},{key:"onScroll",value:function(e){if(e.target){var t=e.target,n=t.clientHeight,i=t.scrollHeight,r=t.scrollTop;this.atScrollBottom=i-r-n<20}}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(_c),Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-ontology-tree"]],inputs:{ontologyFilter:"ontologyFilter",rootNode:"rootNode",nodes:"nodes",getChildren:"getChildren",occurenceData:"occurenceData",termData:"termData",header:"header"},outputs:{nodeSelected:"nodeSelected",nodeChanged:"nodeChanged"},features:[Ht],decls:5,vars:5,consts:[[1,"ccf-ontology-tree",3,"dataSource","treeControl","scroll"],["selectableRegion",""],["class","node leaf-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef"],["class","node inner-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef","matTreeNodeDefWhen"],[1,"text",3,"click"],["matTreeNodePadding","",1,"node","leaf-node",3,"matTreeNodePaddingIndent","mouseleave"],["svgIcon","app:opacity",1,"icon","opacity",3,"mouseenter"],[1,"slider"],[3,"visible","opacity","opacityChange","opacityReset","visibilityToggle"],["slider1",""],[1,"non-expandable"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"num-results"],["matTreeNodePadding","",1,"node","inner-node",3,"matTreeNodePaddingIndent","mouseleave"],["slider2",""],["mat-icon-button","","matTreeNodeToggle","",1,"toggle"],[1,"icon","font-icon"]],template:function(e,t){1&e&&(Os(0,"mat-tree",0),js("scroll",function(e){return t.onScroll(e)}),ks(1,OZ,2,9,"ng-template",null,1,gl),ks(3,PZ,10,20,"mat-tree-node",2),ks(4,IZ,12,24,"mat-tree-node",3),Ts()),2&e&&(au("header-hidden",!t.header),Es("dataSource",t.dataSource)("treeControl",t.control),Wo(4),Es("matTreeNodeDefWhen",t.isInnerNode))},directives:[VK,jK,LK,FK,k_,Pq,Hh,A_,zK],styles:[".ccf-ontology-tree[_ngcontent-%COMP%]{background:none;scrollbar-width:thin;max-height:calc(50vh - 10rem);overflow:auto;overflow-x:hidden}.ccf-ontology-tree.header-hidden[_ngcontent-%COMP%]{max-height:40vh}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .toggle[_ngcontent-%COMP%]{z-index:-1;opacity:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .text[_ngcontent-%COMP%]{margin-left:.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]{min-height:0;font-size:1rem;margin-bottom:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:width;position:relative;z-index:1}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%]{width:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%] ccf-opacity-slider[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider{height:1.5rem;margin-left:1rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box .slider-and-label{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider{height:1.5rem;width:15rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider .mat-slider-wrapper{top:12px}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .opacity-value{width:3rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-right:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node.inner-node[_ngcontent-%COMP%] button.hidden[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .opacity[_ngcontent-%COMP%]{position:relative;min-width:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:normal}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .autocomplete-open[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{border-bottom:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .non-expandable[_ngcontent-%COMP%]{margin-left:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:nowrap;cursor:pointer;margin-left:1rem;opacity:1;width:50%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:opacity,width}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.hidden[_ngcontent-%COMP%]{opacity:0;width:0%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.unavailable[_ngcontent-%COMP%]{pointer-events:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-left:auto}.scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:90%;bottom:0;pointer-events:none}.scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}();function LZ(e,t){if(1&e&&(Os(0,"mat-option",8),Os(1,"span",9),wu(2),Ts(),Os(3,"span",10),wu(4),Ts(),Os(5,"span",11),wu(6),Ts(),Ts()),2&e){var n=t.$implicit;Es("value",n),Wo(2),ku(n.displayLabel[0]),Wo(2),ku(n.displayLabel[1]),Wo(2),ku(n.displayLabel[2])}}var jZ=function(){var e=function(){function e(t,n){m(this,e),this.ontologyService=t,this.ga=n,this.selected=new Qc,this.formControl=new XV(""),this.autoCompleteOpen=!1}return b(e,[{key:"ngOnInit",value:function(){var e=this;this.filteredResults$=this.formControl.valueChanges.pipe(rf(function(e){return"string"==typeof e}),hf(""),df(function(t){return e.ontologyService.filter(t)}),se(function(t){return(0,QG.sortBy)(t,[e.sortBySynonymResult,"index",e.sortLexically])}))}},{key:"displayFormatter",value:function(e){var t;return(null!==(t=null==e?void 0:e.displayLabel)&&void 0!==t?t:[]).join("")}},{key:"sortBySynonymResult",value:function(e){return e.displayLabel.join().includes("(")?1:-1}},{key:"sortLexically",value:function(e){return e.node.label.toLowerCase()}},{key:"onSelect",value:function(e){var t=(0,QG.get)(e,["option","value","node"]);t&&(this.ga.event("search","ontology_search",t.id),this.selected.emit(t),this.formControl.reset())}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(EZ),Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-ontology-search"]],inputs:{placeholderText:"placeholderText"},outputs:{selected:"selected"},decls:10,vars:9,consts:[[1,"ccf-ontology-search"],["appearance","outline",1,"field"],["matPrefix","","color","primary",1,"search"],["type","text","matInput","",1,"input",3,"placeholder","formControl","matAutocomplete"],[1,"ccf-ontology-search","detached","autocomplete",3,"displayWith","optionSelected","opened","closed"],["autocomplete",""],[1,"results-container"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"prefix"],[1,"search-term"],[1,"suffix"]],template:function(e,t){if(1&e&&(Os(0,"form",0),Os(1,"mat-form-field",1),Os(2,"mat-icon",2),wu(3,"search"),Ts(),As(4,"input",3),Os(5,"mat-autocomplete",4,5),js("optionSelected",function(e){return t.onSelect(e)})("opened",function(){return t.autoCompleteOpen=!0})("closed",function(){return t.autoCompleteOpen=!1}),Os(7,"div",6),ks(8,LZ,7,4,"mat-option",7),Yc(9,"async"),Ts(),Ts(),Ts(),Ts()),2&e){var n=xs(6);au("autocomplete-open",t.autoCompleteOpen),Wo(4),Es("placeholder",t.placeholderText)("formControl",t.formControl)("matAutocomplete",n),Wo(1),Es("displayWith",t.displayFormatter),Wo(3),Es("ngForOf",Kc(9,7,t.filteredResults$))}},directives:[JV,OV,ZV,Vz,k_,Dz,pU,oV,oU,CV,iz,eU,Rh,gb],pipes:[Xh],styles:[".ccf-ontology-search[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem .25rem 0;margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;height:3rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix input{margin-left:.4rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-prefix{top:.5rem;border:none}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0 .25rem;min-width:2.5rem} .ccf-ontology-search.detached{border:.125rem solid;border-top:none;border-radius:0 0 .25rem .25rem;max-height:18rem} .ccf-ontology-search.detached .results-container{width:23.75rem;margin-bottom:1rem;overflow:auto;max-height:15rem;scrollbar-width:thin} .ccf-ontology-search.detached .results-container mat-option{height:1.5rem;width:23.75rem} .ccf-ontology-search.detached .results-container mat-option .search-term{text-decoration:underline}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0;border-bottom:none}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem 0 0;border-bottom:none}"],changeDetection:0}),e}(),FZ=function(e){return[e]};function BZ(e,t){if(1&e){var n=Rs();Os(0,"ccf-ontology-tree",2),js("nodeSelected",function(e){return gn(n),Us().ontologySelection.emit(e)}),Ts()}if(2&e){var i=t.ngIf,r=Us();Es("nodes",Wc(7,FZ,i))("rootNode",i.id)("getChildren",r.ontologySearchService.getChildren)("occurenceData",r.occurenceData)("termData",r.termData)("ontologyFilter",r.ontologyFilter)("header",r.header)}}var VZ=function(){var e=function(){function e(t){m(this,e),this.ontologySearchService=t,this.ontologySelection=new Qc}return b(e,[{key:"ngOnChanges",value:function(e){"treeModel"in e&&this.treeModel&&this.ontologySearchService.setTreeModel(this.treeModel)}},{key:"selected",value:function(e){var t,n,i=null!==(n=null===(t=this.treeModel)||void 0===t?void 0:t.nodes)&&void 0!==n?n:{};this.tree.expandAndSelect(e,function(e){return i[e.parent]})}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(EZ))},e.\u0275cmp=Et({type:e,selectors:[["ccf-ontology-selection"]],viewQuery:function(e,t){var n;(1&e&&ll(NZ,5),2&e)&&(cl(n=dl())&&(t.tree=n.first))},inputs:{occurenceData:"occurenceData",termData:"termData",treeModel:"treeModel",ontologyFilter:"ontologyFilter",header:"header",placeholderText:"placeholderText"},outputs:{ontologySelection:"ontologySelection"},features:[Uu([EZ]),Ht],decls:3,vars:4,consts:[[3,"placeholderText","selected"],["class","tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected",4,"ngIf"],[1,"tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected"]],template:function(e,t){1&e&&(Os(0,"ccf-ontology-search",0),js("selected",function(e){return t.selected(e)}),Ts(),ks(1,BZ,1,9,"ccf-ontology-tree",1),Yc(2,"async")),2&e&&(Es("placeholderText",t.placeholderText),Wo(1),Es("ngIf",Kc(2,2,t.ontologySearchService.rootNode$)))},directives:[jZ,Nh,NZ],pipes:[Xh],styles:[""],changeDetection:0}),e}(),zZ=function(){var e=function(){function e(t,n,i){var r=this;m(this,e),this.drawer=t,this.cdr=i,this.className="ccf-drawer-toggle-button",this.position="start",this.opened=!1,this.subscriptions=new G;var o=n.connect(this);this.subscriptions.add(o.getMessagesFromSource(t).subscribe(function(e){r.handleMessage(e)&&i.markForCheck()}))}return b(e,[{key:"classEnd",get:function(){return"end"===this.position}},{key:"icon",get:function(){var e,t="arrow_right",n="arrow_left";return"end"===this.position&&(t=(e=[n,t])[0],n=e[1]),this.opened?n:t}},{key:"ngAfterViewInit",value:function(){var e=this;setTimeout(function(){e.position=e.drawer.position,e.cdr.markForCheck()})}},{key:"ngOnDestroy",value:function(){this.subscriptions.unsubscribe()}},{key:"handleMessage",value:function(e){return"drawer-toggled"===e.payload.type&&(this.opened=e.payload.opened,!0)}},{key:"toggle",value:function(){var e=this.drawer,t=e.opened,n=e.expanded;t?n?e.closeExpanded():e.close():e.open()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(oZ),Ss(JQ),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-drawer-toggle-button"]],hostVars:4,hostBindings:function(e,t){2&e&&(uu(t.className),au("ccf-drawer-toggle-button-end",t.classEnd))},decls:2,vars:1,consts:[["aria-hidden","false","aria-label","Close side drawer",1,"expand-collapse-icon",3,"click"]],template:function(e,t){1&e&&(Os(0,"mat-icon",0),js("click",function(){return t.toggle()}),wu(1),Ts()),2&e&&(Wo(1),xu(" ",t.icon,"\n"))},directives:[k_],styles:["[_nghost-%COMP%]{position:absolute;top:calc(50% - 2.0625rem);right:-1.0625rem;width:1.0625rem;height:3rem;border-radius:0 .25rem .25rem 0;cursor:pointer;display:flex;align-items:center;transition:.6s}.ccf-drawer-toggle-button-end[_nghost-%COMP%]{right:unset;left:calc(-1rem - 1px);border-radius:.25rem 0 0 .25rem}[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{position:relative;right:.25rem;transition:all .5s}.ccf-drawer-toggle-button-end[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{right:unset;left:-.25rem}"],changeDetection:0}),e}();function UZ(e,t){1&e&&(Os(0,"div",7),As(1,"mat-spinner",8),Os(2,"span",3),wu(3,"Loading External Site"),Ts(),Ts())}function HZ(e,t){if(1&e){var n=Rs();Os(0,"iframe",9),js("load",function(){return gn(n),Us().loading=!1}),Ts()}2&e&&bs("src",Us().safeUrl,Wr)}var GZ=function(){var e=function(){function e(t){m(this,e),this.sanitizer=t,this.className="ccf-viewer",this.url="",this.closed=new Qc,this.loading=!0,this.safeUrl=null}return b(e,[{key:"ngOnChanges",value:function(e){"url"in e&&this.updateUrl()}},{key:"updateUrl",value:function(){var e=this.sanitizer,t=this.url;this.safeUrl=null,t&&(this.safeUrl=e.bypassSecurityTrustResourceUrl(t),this.loading=!0)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Ed))},e.\u0275cmp=Et({type:e,selectors:[["ccf-viewer"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.className)},inputs:{url:"url"},outputs:{closed:"closed"},features:[Ht],decls:11,vars:4,consts:[[1,"toolbar"],["mat-flat-button","","target","_blank","rel","noopener noreferrer",1,"launch",3,"href","disabled"],[1,"icon"],[1,"text"],["mat-flat-button","",1,"close",3,"click"],["class","overlay",4,"ngIf"],["class","frame","title","Portal Data Viewer","referrerpolicy","no-referrer",3,"load",4,"ngIf"],[1,"overlay"],[1,"spinner"],["title","Portal Data Viewer","referrerpolicy","no-referrer",1,"frame",3,"load"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"a",1),Os(2,"mat-icon",2),wu(3,"launch"),Ts(),Os(4,"span",3),wu(5,"Open in Portal"),Ts(),Ts(),Os(6,"button",4),js("click",function(){return t.closed.emit()}),Os(7,"mat-icon",2),wu(8,"clear"),Ts(),Ts(),Ts(),ks(9,UZ,4,0,"div",5),ks(10,HZ,1,1,"iframe",6)),2&e&&(Wo(1),Es("href",t.safeUrl,Gr)("disabled",!t.safeUrl),Wo(8),Es("ngIf",t.loading),Wo(1),Es("ngIf",t.safeUrl))},directives:[P_,k_,A_,Nh,GQ],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;width:100%;height:1.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%]{margin-right:3.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch.mat-button-disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:.25rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .close[_ngcontent-%COMP%]{min-width:0;padding:0;line-height:1.5rem;border-radius:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:1.5rem;bottom:0;left:0;right:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{margin-bottom:.5rem}[_nghost-%COMP%] .frame[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0}),e}();function WZ(e,t){if(1&e&&As(0,"div",3),2&e){var n=t.index;au("line-tick-visible",Us().tissueSectionExists(n+1))}}var qZ=function(){return[]},XZ=function(){var e=function(){function e(){m(this,e),this.clsName="ccf-tissue-section-vis"}return b(e,[{key:"tissueSectionExists",value:function(e){return this.tissueSections.filter(function(t){return t.sectionNumber===e}).length>0}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-tissue-section-vis"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{totalTissueSections:"totalTissueSections",tissueSections:"tissueSections"},decls:7,vars:3,consts:[[1,"container"],["class","line-tick",3,"line-tick-visible",4,"ngFor","ngForOf"],[1,"x-axis"],[1,"line-tick"]],template:function(e,t){1&e&&(Os(0,"div"),wu(1,"0"),Ts(),Os(2,"div",0),ks(3,WZ,1,2,"div",1),As(4,"div",2),Ts(),Os(5,"div"),wu(6),Ts()),2&e&&(Wo(3),Es("ngForOf",Gc(2,qZ).constructor(t.totalTissueSections)),Wo(3),ku(t.totalTissueSections))},directives:[Rh],styles:["[_nghost-%COMP%]{width:100%;height:2.5rem;padding:.5rem 1rem;display:flex}[_nghost-%COMP%] .container[_ngcontent-%COMP%]{margin-right:.5rem;margin-left:.5rem;flex-grow:1;display:flex;position:relative;justify-content:space-evenly}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .line-tick[_ngcontent-%COMP%]{height:100%;width:1px;z-index:2}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .x-axis[_ngcontent-%COMP%]{width:100%;height:2px;position:absolute;top:calc(50% - 1px);right:0;z-index:1}"],changeDetection:0}),e}();function YZ(e,t){if(1&e){var n=Rs();Os(0,"div",7),Os(1,"div",8),wu(2),Ts(),Os(3,"a",9),js("click",function(){gn(n);var e=Us().$implicit;return Us().linkClicked.emit(e)}),wu(4," DATA "),Os(5,"mat-icon"),wu(6,"open_in_new"),Ts(),Ts(),Ts()}if(2&e){var i=Us().$implicit;Wo(1),ou("background-image","url("+i.thumbnail+")"),Wo(1),xu(" ",i.technology," ")}}function KZ(e,t){1&e&&(Ps(0),ks(1,YZ,7,3,"ng-template",6),Ms())}var $Z=function(){var e=-1;return function(){return e+=1}}(),QZ=function(){var e=function(){function e(){m(this,e),this.className="ccf-thumbnail-carousel",this.linkClicked=new Qc,this.uid=$Z(),this.config={allowTouchMove:!1,slidesOffsetBefore:4,slidesOffsetAfter:4,slidesPerView:"auto",spaceBetween:4,watchOverflow:!0},this.navigation={prevEl:"#"+this.prevButtonId,nextEl:"#"+this.nextButtonId}}return b(e,[{key:"prevButtonId",get:function(){return"ccf-thumbnail-carousel-prev-button-".concat(this.uid)}},{key:"nextButtonId",get:function(){return"ccf-thumbnail-carousel-next-button-".concat(this.uid)}},{key:"itemId",value:function(e,t){return t.thumbnail}}]),e}();return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-thumbnail-carousel"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.className)},inputs:{data:"data"},outputs:{linkClicked:"linkClicked"},decls:11,vars:6,consts:[[1,"prev"],["mat-icon-button","","disableRipple",""],[1,"swiper",3,"config","navigation"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"next"],[1,"fade"],["swiperSlide",""],[1,"slide"],[1,"thumbnail"],[1,"link",3,"click"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"button",1),Os(2,"mat-icon"),wu(3,"navigate_before"),Ts(),Ts(),Ts(),Os(4,"swiper",2),ks(5,KZ,2,0,"ng-container",3),Ts(),Os(6,"div",4),Os(7,"button",1),As(8,"div",5),Os(9,"mat-icon"),wu(10,"navigate_next"),Ts(),Ts(),Ts()),2&e&&(Wo(1),bs("id",t.prevButtonId),Wo(3),Es("config",t.config)("navigation",t.navigation),Wo(1),Es("ngForOf",t.data)("ngForTrackBy",t.itemId),Wo(2),bs("id",t.nextButtonId))},directives:[A_,k_,kQ,Rh,wQ],styles:['[_nghost-%COMP%]{display:flex}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%]{flex-grow:1;padding-bottom:.3125rem}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%] .swiper-slide{width:3.75rem;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%]{display:flex;align-items:center;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] button[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:1.5rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{position:absolute;top:-.625rem;left:-2rem;z-index:10;width:2rem;height:3.125rem;opacity:1;transition:opacity ease-in-out .3s;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%]{cursor:default;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]{position:relative;width:100%;height:100%}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background-size:cover;position:relative;width:calc(100% - 2 * .125rem);height:calc(100% - 2 * .125rem);border-style:solid;border-width:.125rem;border-radius:.25rem;background-origin:padding-box;background-clip:padding-box;font-size:.875rem;font-weight:bold}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]:after{content:"";position:absolute;bottom:-.125rem;left:-.125rem;width:.125rem;height:.125rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;right:0;left:0;opacity:0;transition:opacity ease-in-out .3s;box-shadow:0 2px 4px #0009;font-size:.75rem;line-height:.75rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%], [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:focus, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:active{cursor:pointer;text-decoration:none}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]:hover .link[_ngcontent-%COMP%]{opacity:1}'],changeDetection:0}),e}();function ZZ(e,t){if(1&e){var n=Rs();Os(0,"mat-icon",14),js("click",function(){return gn(n),Us().toggleExpansion()}),wu(1),Ts()}if(2&e){var i=Us();Wo(1),ku(i.expanded?"expand_less":"expand_more")}}function JZ(e,t){if(1&e&&As(0,"ccf-tissue-section-vis",20),2&e){var n=Us(2);Es("totalTissueSections",n.tissueBlock.sectionCount)("tissueSections",n.tissueBlock.sections)}}function eJ(e,t){if(1&e){var n=Rs();Ps(0),Os(1,"ccf-thumbnail-carousel",21),js("linkClicked",function(e){return gn(n),Us(2).linkHandler(e.link)}),Ts(),Ms()}if(2&e){var i=Us(2);Wo(1),Es("data",i.tissueBlock.datasets)}}function tJ(e,t){if(1&e){var n=Rs();Ps(0),Os(1,"ccf-thumbnail-carousel",21),js("linkClicked",function(e){return gn(n),Us(3).linkHandler(e.link)}),Ts(),Ms()}if(2&e){var i=Us().$implicit;Wo(1),Es("data",i.datasets)}}function nJ(e,t){if(1&e){var n=Rs();Os(0,"div",22),Os(1,"div",23),Os(2,"mat-icon",24),wu(3,"bubble_chart"),Ts(),Os(4,"div",17),Os(5,"div",8),wu(6),Ts(),Os(7,"div",8),wu(8),Ts(),Ts(),Os(9,"div",9),js("click",function(){var e=gn(n).$implicit;return Us(2).linkHandler(e.link)}),Os(10,"div",10),wu(11,"TISSUE SECTION"),Ts(),Os(12,"mat-icon",11),wu(13,"open_in_new"),Ts(),Ts(),Ts(),ks(14,tJ,2,1,"ng-container",13),Ts()}if(2&e){var i=t.$implicit;Wo(6),ku(i.label),Wo(2),ku(i.description),Wo(6),Es("ngIf",i.datasets.length>0)}}function iJ(e,t){if(1&e){var n=Rs();Ps(0),Os(1,"div",15),Os(2,"div",16),Os(3,"mat-icon",5),wu(4,"bubble_chart"),Ts(),Os(5,"div",17),Os(6,"div",8),wu(7),Ts(),Os(8,"div",8),wu(9),Ts(),Ts(),Os(10,"div",9),js("click",function(){gn(n);var e=Us();return e.linkHandler(e.tissueBlock.link)}),Os(11,"div",10),wu(12,"TISSUE BLOCK"),Ts(),Os(13,"mat-icon",11),wu(14,"open_in_new"),Ts(),Ts(),Ts(),ks(15,JZ,1,2,"ccf-tissue-section-vis",18),ks(16,eJ,2,1,"ng-container",13),Ts(),ks(17,nJ,15,3,"div",19),Ms()}if(2&e){var i=Us();Wo(7),ku(i.tissueBlock.label),Wo(2),ku(i.tissueBlock.description),Wo(6),Es("ngIf",i.tissueBlock.sections.length>1),Wo(1),Es("ngIf",i.tissueBlock.datasets.length>0),Wo(1),Es("ngForOf",i.tissueBlock.sections)}}var rJ=function(e){return{"background-color":e}},oJ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.clsName="ccf-donor-card",this.selected=!1,this.expanded=!1,this.highlighted=!1,this.checked=new Qc,this.linkClick=new Qc,this.hoverState=""}return b(e,[{key:"handleCheckbox",value:function(){this.selected=!this.selected,this.ga.event("selected_toggled","donor_card",this.tissueBlock.label,+this.selected),this.checked.emit(this.selected),this.expanded=!1}},{key:"toggleExpansion",value:function(){this.selected&&(this.expanded=!this.expanded,this.ga.event("expanded_toggled","donor_card",this.tissueBlock.label,+this.expanded))}},{key:"linkHandler",value:function(e){this.ga.event("link_clicked","donor_card",this.tissueBlock.label),this.selected?this.linkClick.emit(e):(this.selected=!0,this.checked.emit(this.selected))}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-donor-card"]],hostVars:2,hostBindings:function(e,t){2&e&&uu(t.clsName)},inputs:{tissueBlock:"tissueBlock",selected:"selected",color:"color",expanded:"expanded",highlighted:"highlighted"},outputs:{checked:"checked",linkClick:"linkClick"},decls:19,vars:20,consts:[[1,"main-container"],[1,"checkbox-background",3,"ngStyle","click"],[1,"checkbox",3,"checked"],[1,"hoverable","default-padding","donor","mat-elevation-z2"],[1,"d-flex"],[1,"icon-size","icon-dark","mr-5"],[1,"donor-info"],[1,"title","description"],[1,"description"],[1,"hover-state","mat-elevation-z4",3,"click"],[1,"hover-title"],[1,"icon-size","hover-icon"],["class","icon-size ml-5 selectable",3,"click",4,"ngIf"],[4,"ngIf"],[1,"icon-size","ml-5","selectable",3,"click"],[1,"expanded-view","mat-elevation-z2","align-end"],[1,"info-block","hover-enabled","default-padding"],[1,"text-content"],[3,"totalTissueSections","tissueSections",4,"ngIf"],["class","expanded-view w-80 mat-elevation-z2 align-end",4,"ngFor","ngForOf"],[3,"totalTissueSections","tissueSections"],[1,"mt-05",3,"data","linkClicked"],[1,"expanded-view","w-80","mat-elevation-z2","align-end"],[1,"default-padding","info-block","hover-enabled"],[1,"icon-size","mr-5","icon-light"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),js("click",function(){return t.handleCheckbox()}),As(2,"mat-checkbox",2),Ts(),Os(3,"div",3),Os(4,"div",4),Os(5,"mat-icon",5),wu(6,"person"),Ts(),Os(7,"div",6),Os(8,"div",7),wu(9),Ts(),Os(10,"div",8),wu(11),Ts(),Ts(),Ts(),Os(12,"div",9),js("click",function(){return t.linkHandler(t.tissueBlock.donor.link)}),Os(13,"div",10),wu(14,"DONOR"),Ts(),Os(15,"mat-icon",11),wu(16,"open_in_new"),Ts(),Ts(),ks(17,ZZ,2,1,"mat-icon",12),Ts(),Ts(),ks(18,iJ,18,5,"ng-container",13)),2&e&&(Wo(1),au("selected",t.selected)("highlighted",t.highlighted),Es("ngStyle",Wc(18,rJ,t.selected?t.color:"transparent")),Wo(1),au("checkselected",t.selected),Es("checked",t.selected),Wo(1),au("hover-enabled",t.selected)("expanded",t.expanded)("highlighted",t.highlighted),Wo(6),ku(t.tissueBlock.donor.label),Wo(2),ku(t.tissueBlock.donor.description),Wo(6),Es("ngIf",t.selected),Wo(1),Es("ngIf",t.expanded))},directives:[Uh,iY,k_,Nh,Rh,XZ,QZ],styles:["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] .main-container[_ngcontent-%COMP%]{display:flex;min-height:3rem;width:100%;align-items:center;padding-left:.5rem}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%]{height:2rem;width:2rem;border-radius:50%;margin-right:.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-checked.mat-accent .mat-checkbox-background, [_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-indeterminate.mat-accent[_ngcontent-%COMP%] .mat-checkbox-background[_ngcontent-%COMP%]{background-color:transparent}[_nghost-%COMP%] .checkbox-background.highlighted[_ngcontent-%COMP%] .mat-ripple-element{opacity:.04}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkselected[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#fff!important}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:1.12rem;margin-bottom:.12rem}[_nghost-%COMP%] .align-end[_ngcontent-%COMP%]{margin-left:auto}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;width:100%;align-items:center}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]:not(:first-child){margin-top:.5rem}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;align-items:center;flex-grow:1;height:2.5rem}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .donor.highlighted[_ngcontent-%COMP%]{box-shadow:0 6px 2px -2px #0003,0 4px 4px #00000024,0 2px 10px #0000001f}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .hover-state[_ngcontent-%COMP%]{width:19.5rem!important}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .donor-info[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .hoverable[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]:hover .hover-state[_ngcontent-%COMP%]{opacity:1}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%]{transition:opacity .15s ease-in-out;opacity:0;cursor:pointer;position:absolute;height:100%;width:100%;top:0;margin-left:-.5rem;align-items:center;display:flex;justify-content:flex-end;padding-right:1rem;font-size:.75rem}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-title[_ngcontent-%COMP%]{font-weight:lighter}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-icon[_ngcontent-%COMP%]{margin-left:1rem}[_nghost-%COMP%] .default-padding[_ngcontent-%COMP%]{padding:.25rem .5rem}[_nghost-%COMP%] .expanded-view[_ngcontent-%COMP%]{margin-top:.25rem;width:85%;margin-bottom:.25rem}[_nghost-%COMP%] .d-flex[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] .icon-size[_ngcontent-%COMP%]{height:1.5rem;width:1.5rem;font-size:1.5rem}[_nghost-%COMP%] .selectable[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%]{width:80%!important}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{width:16rem!important}[_nghost-%COMP%] .ml-5[_ngcontent-%COMP%]{margin-left:.5rem}[_nghost-%COMP%] .mr-5[_ngcontent-%COMP%]{margin-right:.5rem}[_nghost-%COMP%] .mt-05[_ngcontent-%COMP%]{margin-top:.5rem}[_nghost-%COMP%] .description[_ngcontent-%COMP%]{width:17rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"],changeDetection:0}),e}();function aJ(e,t){if(1&e&&(Os(0,"div",7),Os(1,"div",8),wu(2),Ts(),Os(3,"div",9),wu(4),Ts(),Ts()),2&e){var n=t.$implicit;Wo(2),ku(n.count),Wo(2),ku(n.label)}}function sJ(e,t){if(1&e){var n=Rs();Os(0,"div",10),js("mouseenter",function(){var e=gn(n).$implicit;return Us().handleHover(e.tissueBlock.spatialEntityId)})("mouseleave",function(){return gn(n),Us().handleUnhover()}),Os(1,"ccf-donor-card",11),js("checked",function(e){var t=gn(n).$implicit;return Us().handleSelection(t,e)})("linkClick",function(e){return gn(n),Us().handleLinkClick(e)}),Ts(),Ts()}if(2&e){var i=t.$implicit,r=Us();Wo(1),Es("tissueBlock",i.tissueBlock)("selected",i.selected)("color",i.color)("highlighted",i.tissueBlock.spatialEntityId===r.highlighted)}}var uJ=function(){var e=function(){function e(t){m(this,e),this.ga=t,this.linkClicked=new Qc,this.listResultSelected=new Qc,this.listResultDeselected=new Qc,this.itemHovered=new Qc,this.itemUnhovered=new Qc,this.atScrollBottom=!1}return b(e,[{key:"handleSelection",value:function(e,t){this.ga.event("list_result_selected","results_browser",this.resultLabel,+t),t?this.listResultSelected.next(e):this.listResultDeselected.next(e)}},{key:"handleLinkClick",value:function(e){this.linkClicked.emit(e)}},{key:"onScroll",value:function(e){if(e.target){var t=e.target,n=t.clientHeight,i=t.scrollHeight,r=t.scrollTop;this.atScrollBottom=i-r-n<64}}},{key:"handleHover",value:function(e){this.itemHovered.emit(e)}},{key:"handleUnhover",value:function(){this.itemUnhovered.emit()}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(xG))},e.\u0275cmp=Et({type:e,selectors:[["ccf-results-browser"]],inputs:{listResults:"listResults",aggregateData:"aggregateData",resultLabel:"resultLabel",highlighted:"highlighted",header:"header"},outputs:{linkClicked:"linkClicked",listResultSelected:"listResultSelected",listResultDeselected:"listResultDeselected",itemHovered:"itemHovered",itemUnhovered:"itemUnhovered"},decls:8,vars:7,consts:[[1,"results-browser-container"],[1,"stat-box"],["id","title"],["class","stat-row",4,"ngFor","ngForOf"],[1,"results-browser-list",3,"scroll"],["class","browser-item-container",3,"mouseenter","mouseleave",4,"ngFor","ngForOf"],[1,"scroll-gradient"],[1,"stat-row"],[1,"stat-value"],[1,"stat-label"],[1,"browser-item-container",3,"mouseenter","mouseleave"],[3,"tissueBlock","selected","color","highlighted","checked","linkClick"]],template:function(e,t){1&e&&(Os(0,"div",0),Os(1,"div",1),Os(2,"div",2),wu(3),Ts(),ks(4,aJ,5,2,"div",3),Ts(),Os(5,"div",4),js("scroll",function(e){return t.onScroll(e)}),ks(6,sJ,2,4,"div",5),Ts(),As(7,"div",6),Ts()),2&e&&(Wo(3),ku(t.resultLabel),Wo(1),Es("ngForOf",t.aggregateData),Wo(1),au("header-hidden",!t.header),Wo(1),Es("ngForOf",t.listResults),Wo(1),au("hidden",!!t.atScrollBottom))},directives:[Rh,oJ],styles:[".results-browser-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:calc(100% - 3rem);padding:0 1.5rem 1.5rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%]{margin-bottom:1.5rem;line-height:1.25;min-height:7.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] #title[_ngcontent-%COMP%]{font-size:1.25rem;margin-bottom:.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%]{display:flex;flex-direction:row}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin-right:1rem;width:5.5rem;text-align:right;font-weight:600}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-weight:300}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;padding-right:.5rem;height:calc(100vh - 20rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 16rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%] .browser-item-container[_ngcontent-%COMP%]{width:100%}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:95%;bottom:0;pointer-events:none}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}();function cJ(e,t){if(1&e&&(Os(0,"a",5),wu(1,"LOGIN"),Ts()),2&e){var n=Us();au("disabled",n.loginDisabled||!n.homeUrl),Es("href",n.homeUrl+"login",Gr)}}function lJ(e,t){if(1&e&&(Os(0,"a",5),wu(1,"LOGOUT"),Ts()),2&e){var n=Us();au("disabled",n.loginDisabled||!n.homeUrl),Es("href",n.homeUrl+"logout",Gr)}}var hJ=function(){var e=function e(){m(this,e),this.refreshClicked=new Qc,this.downloadClicked=new Qc};return e.\u0275fac=function(t){return new(t||e)},e.\u0275cmp=Et({type:e,selectors:[["ccf-header"]],inputs:{homeUrl:"homeUrl",loginDisabled:"loginDisabled",logoTooltip:"logoTooltip",loggedIn:"loggedIn",filters:"filters"},outputs:{refreshClicked:"refreshClicked",downloadClicked:"downloadClicked"},decls:6,vars:4,consts:[[1,"ccf-header"],[1,"home",3,"href"],["aria-hidden","false","aria-label","Reset tool","matTooltipPosition","right",1,"logo",3,"matTooltip"],[1,"filler"],["mat-button","","class","authentication","rel","noreferrer noopener","target","_blank",3,"disabled","href",4,"ngIf"],["mat-button","","rel","noreferrer noopener","target","_blank",1,"authentication",3,"href"]],template:function(e,t){1&e&&(Os(0,"mat-toolbar",0),Os(1,"a",1),As(2,"div",2),Ts(),As(3,"div",3),ks(4,cJ,2,3,"a",4),ks(5,lJ,2,3,"a",4),Ts()),2&e&&(Wo(1),Es("href",t.homeUrl,Gr),Wo(1),Es("matTooltip",t.logoTooltip),Wo(2),Es("ngIf",!t.loggedIn),Wo(1),Es("ngIf",t.loggedIn))},directives:[dX,lw,Nh,P_],styles:[".ccf-header[_ngcontent-%COMP%]{height:4rem;padding:0 1.5rem;border-bottom-width:1px;border-bottom-style:solid;display:flex}.ccf-header[_ngcontent-%COMP%] .home[_ngcontent-%COMP%]{height:100%;width:25rem;align-items:center;display:flex}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{width:100%;height:50%;background-repeat:no-repeat;background-size:contain}.ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%]{height:1.5rem}.ccf-header[_ngcontent-%COMP%] .authentication[_ngcontent-%COMP%]{width:8.25rem;border-radius:.125rem;font-weight:500}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{display:flex;align-items:center;transition:color 1s;cursor:pointer;text-decoration:none}.ccf-header[_ngcontent-%COMP%] [_ngcontent-%COMP%]:not(:last-child){margin-right:1.5rem}.ccf-header[_ngcontent-%COMP%] .filler[_ngcontent-%COMP%]{flex-grow:1;margin:0}.ccf-header[_ngcontent-%COMP%] .filter-labels[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;font:400 1rem/1.25rem Inter,sans-serif}.ccf-header[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),e}(),dJ=["bodyUI"];function fJ(e,t){if(1&e&&(As(0,"ccf-header",34),Yc(1,"async"),Yc(2,"async"),Yc(3,"async"),Yc(4,"async")),2&e){var n=Us();au("hide",!1===Kc(1,6,n.header$)),Es("logoTooltip",Kc(2,8,n.logoTooltip$))("homeUrl",Kc(3,10,n.homeUrl$))("loggedIn",n.loggedIn)("loginDisabled",Kc(4,12,n.loginDisabled$))}}function pJ(e,t){if(1&e){var n=Rs();Os(0,"div",35),js("click",function(){gn(n),Us();var e=xs(70);return e.expanded=!e.expanded}),Os(1,"mat-icon",36),wu(2),Ts(),Ts()}if(2&e){Us();var i=xs(70);Wo(2),xu(" ",i.expanded?"arrow_drop_up":"arrow_drop_down"," ")}}function vJ(e,t){if(1&e){var n=Rs();Os(0,"div",35),js("click",function(){gn(n);var e=Us();return e.organListVisible=!e.organListVisible}),Os(1,"mat-icon",37),wu(2),Ts(),Ts()}if(2&e){var i=Us();Wo(2),xu(" ",i.organListVisible?"arrow_drop_up":"arrow_drop_down"," ")}}var gJ=function(){return{}},mJ=function(){return{x:2.2,y:2,z:.4}},yJ=function(){var e=function(){function e(n,i,r,o,a,s,u,c,l,h,d,f){var p=this;m(this,e),this.data=r,this.theming=o,this.scene=a,this.listResultsState=s,this.consentService=u,this.snackbar=c,this.dataSource=h,this.globalConfig=d,this.ontologySelectionLabel="body",this.cellTypeSelectionLabel="cell",this.selectionLabel="body | cell",this.organListVisible=!0,this.url="",this.acceptableViewerDomains=sX.acceptableViewerDomains||[],this.viewerOpen=!1,this.spinnerActive$=this.data.queryStatus$.pipe(se(function(e){return e===NX.Running})),this.theme$=this.globalConfig.getOption("theme"),this.themeMode$=new Sf(1),this.header$=this.globalConfig.getOption("header"),this.homeUrl$=this.globalConfig.getOption("homeUrl"),this.logoTooltip$=this.globalConfig.getOption("logoTooltip"),this.loginDisabled$=this.globalConfig.getOption("loginDisabled"),o.initialize(n,i),l.setRootElement(n),r.tissueBlockData$.subscribe(),r.aggregateData$.subscribe(),r.ontologyTermOccurencesData$.subscribe(),r.cellTypeTermOccurencesData$.subscribe(),r.sceneData$.subscribe(),r.filter$.subscribe(),r.technologyFilterData$.subscribe(),r.providerFilterData$.subscribe(),this.ontologyTerms$=r.filter$.pipe(gU("ontologyTerms")),L_([this.theme$,this.themeMode$]).subscribe(function(e){var n=t(e,2),i=n[0],r=n[1];p.theming.setTheme("".concat(i,"-theme-").concat(r)),f.markForCheck()}),this.ontologyTreeModel$=this.dataSource.getOntologyTreeModel().pipe(Cf(1)),this.cellTypeTerms$=r.filter$.pipe(gU("cellTypeTerms")),this.cellTypeTreeModel$=this.dataSource.getCellTypeTreeModel().pipe(Cf(1))}return b(e,[{key:"isLightTheme",get:function(){return this.theming.getTheme().endsWith("light")}},{key:"ngOnInit",value:function(){var e=this,t=this.snackbar.openFromComponent(Gq,{data:{preClose:function(){t.dismiss()}},duration:"not-set"===this.consentService.consent?1/0:3e3});window.matchMedia?(window.matchMedia("(prefers-color-scheme: dark)").matches?this.themeMode$.next("dark"):this.themeMode$.next("light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",function(t){e.themeMode$.next(t.matches?"dark":"light")})):this.themeMode$.next("light")}},{key:"reset",value:function(e,t,n){e.open(),e.closeExpanded(),t.open(),t.closeExpanded(),n.removeBox(),this.resetView()}},{key:"resetView",value:function(){this.bodyUI.target=[0,0,0],this.bodyUI.rotation=0,this.bodyUI.rotationX=0,this.bodyUI.bounds={x:2.2,y:2,z:.4}}},{key:"toggleScheme",value:function(){this.themeMode$.next(this.isLightTheme?"dark":"light")}},{key:"ontologySelected",value:function(e,t){if(e)return"anatomical-structures"===t?(this.data.updateFilter({ontologyTerms:e.map(function(e){return e.id})}),this.ontologySelectionLabel=this.createSelectionLabel(e)):(this.data.updateFilter({cellTypeTerms:e.map(function(e){return e.id})}),this.cellTypeSelectionLabel=this.createSelectionLabel(e)),this.selectionLabel=this.ontologySelectionLabel&&this.cellTypeSelectionLabel?"".concat(this.ontologySelectionLabel," | ").concat(this.cellTypeSelectionLabel):this.ontologySelectionLabel?"".concat(this.ontologySelectionLabel):this.cellTypeSelectionLabel?"".concat(this.cellTypeSelectionLabel):"",void(e[0]&&"body"===e[0].label&&this.resetView());this.data.updateFilter({ontologyTerms:[],cellTypeTerms:[]}),this.ontologySelectionLabel="",this.cellTypeSelectionLabel=""}},{key:"createSelectionLabel",value:function(e){if(0===e.length)return"";if(1===e.length)return e[0].label;var t="";return e.forEach(function(n,i){t+=n.label,i0}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ss(Yu),Ss(rs),Ss(FX),Ss(aX),Ss(HX),Ss(zX),Ss(CG),Ss(nw),Ss(Kp),Ss(Xq),Ss(Vq),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-root"]],viewQuery:function(e,t){var n;(1&e&&ll(dJ,5),2&e)&&(cl(n=dl())&&(t.bodyUI=n.first))},decls:80,vars:111,consts:[[1,"ccf-app","mat-app-background"],["text","Loading CCF Exploration User Interface (EUI)",3,"active"],[3,"hide","logoTooltip","homeUrl","loggedIn","loginDisabled",4,"ngIf"],[1,"main-drawers"],["opened","",1,"left-drawer",3,"stateChange"],["left",""],[1,"filter-data"],[3,"filters","drawerExpanded","technologyFilters","providerFilters","filtersChange"],["filterbox",""],[1,"filter-text"],[1,"sex","filter-tag"],[1,"age","filter-tag"],[1,"bmi","filter-tag"],["placeholderText","Search anatomical structures...",1,"ontology-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["placeholderText","Search cell types...",1,"cell-type-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["position","end","opened","",1,"right-drawer",3,"stateChange"],["right",""],[1,"portal-view",3,"url","closed"],[1,"drawer-icons"],[1,"drawer-icons-left"],[1,"button",3,"matTooltip","click"],[1,"icon"],[1,"scheme-toggle","button",3,"matTooltip","click"],[1,"button"],["matTooltip","Reset View",1,"refresh","icon",3,"click"],["videoID","YAHJqvD3Q_8","infoTitle","CCF Exploration User Interface","matTooltip","Open Info"],[3,"listResults","aggregateData","resultLabel","highlighted","header","listResultSelected","listResultDeselected","linkClicked","itemHovered","itemUnhovered"],[1,"selector-drawer"],[1,"organ-selector",3,"multiselect","occurenceData","organList","selectedOrgans","organsChanged"],["selector",""],[1,"close-button-wrapper"],["class","close-button",3,"click",4,"ngIf"],[1,"stage-content",3,"scene","bounds","nodeClick","nodeHoverStart","nodeHoverStop"],["bodyUI",""],[3,"logoTooltip","homeUrl","loggedIn","loginDisabled"],[1,"close-button",3,"click"],["aria-hidden","false","aria-label","Expand carousel drawer",1,"expand-collapse-icon"],["aria-hidden","false","aria-label","Close carousel drawer",1,"expand-collapse-icon"]],template:function(e,t){if(1&e){var n=Rs();Os(0,"div",0),As(1,"ccf-spinner-overlay",1),Yc(2,"async"),ks(3,fJ,5,14,"ccf-header",2),Yc(4,"async"),Os(5,"ccf-drawer-container",3),Yc(6,"async"),Os(7,"ccf-drawer",4,5),js("stateChange",function(){return gn(n),xs(12).removeBox()}),Os(9,"div"),Os(10,"div",6),Os(11,"ccf-filters-popover",7,8),js("filtersChange",function(e){return t.data.updateFilter(e)}),Yc(13,"async"),Yc(14,"async"),Yc(15,"async"),Ts(),Os(16,"div",9),Os(17,"div",10),wu(18,"Sex: "),Os(19,"strong"),wu(20),Yc(21,"async"),Ts(),Ts(),Os(22,"div",11),wu(23,"Age: "),Os(24,"strong"),wu(25),Yc(26,"async"),Yc(27,"async"),Ts(),Ts(),Os(28,"div",12),wu(29,"BMI: "),Os(30,"strong"),wu(31),Yc(32,"async"),Yc(33,"async"),Ts(),Ts(),Ts(),Ts(),Os(34,"ccf-ontology-selection",13),js("ontologySelection",function(e){return t.ontologySelected(e,"anatomical-structures")}),Yc(35,"async"),Yc(36,"async"),Yc(37,"async"),Yc(38,"async"),Ts(),Os(39,"ccf-ontology-selection",14),js("ontologySelection",function(e){return t.ontologySelected(e,"cell-type")}),Yc(40,"async"),Yc(41,"async"),Yc(42,"async"),Yc(43,"async"),Ts(),As(44,"ccf-drawer-toggle-button"),Ts(),Ts(),Os(45,"ccf-drawer",15,16),js("stateChange",function(){return gn(n),xs(12).removeBox()}),Os(47,"ccf-viewer",17),js("closed",function(){return t.viewerOpen=!1}),Ts(),Os(48,"div",18),Os(49,"div",19),Os(50,"button",20),js("click",function(){gn(n);var e=xs(12),t=xs(46);return e.removeBox(),t.toggleExpanded()}),Os(51,"mat-icon",21),wu(52),Ts(),Ts(),Os(53,"button",22),js("click",function(){return t.toggleScheme()}),Os(54,"mat-icon",21),wu(55),Ts(),Ts(),Os(56,"button",23),Os(57,"mat-icon",24),js("click",function(){gn(n);var e=xs(8),i=xs(46),r=xs(12);return t.reset(e,i,r)}),wu(58,"refresh "),Ts(),Ts(),Ts(),As(59,"ccf-info-button",25),Ts(),Os(60,"ccf-results-browser",26),js("listResultSelected",function(e){return t.listResultsState.selectListResult(e)})("listResultDeselected",function(e){return t.listResultsState.deselectListResult(e)})("linkClicked",function(e){return t.openiFrameViewer(e)})("itemHovered",function(e){return t.listResultsState.highlightNode(e)})("itemUnhovered",function(){return t.listResultsState.unHighlightNode()}),Yc(61,"async"),Yc(62,"async"),Yc(63,"async"),Yc(64,"async"),Ts(),As(65,"ccf-drawer-toggle-button"),Ts(),Os(66,"ccf-drawer-content"),Yc(67,"async"),Os(68,"div",27),Os(69,"ccf-organ-selector",28,29),js("organsChanged",function(e){return t.scene.setSelectedReferenceOrgans(e)}),Yc(71,"async"),Yc(72,"async"),Yc(73,"async"),Ts(),Ts(),Os(74,"div",30),ks(75,pJ,3,1,"div",31),ks(76,vJ,3,1,"div",31),Ts(),Os(77,"ccf-body-ui",32,33),js("nodeClick",function(e){return t.scene.sceneNodeClicked(e)})("nodeHoverStart",function(e){return t.scene.sceneNodeHovered(e)})("nodeHoverStop",function(){return t.scene.sceneNodeUnhover()}),Yc(79,"async"),Ts(),Ts(),Ts(),Ts()}if(2&e){var i,r,o,a,s=xs(46),u=xs(70);Wo(1),Es("active",Kc(2,53,t.spinnerActive$)),Wo(2),Es("ngIf",!1===Kc(4,55,t.spinnerActive$)),Wo(2),au("header-hidden",!1===Kc(6,57,t.header$)),Wo(6),Es("filters",Kc(13,59,t.data.filter$))("drawerExpanded",s.expanded)("technologyFilters",Kc(14,61,t.data.technologyFilterData$))("providerFilters",Kc(15,63,t.data.providerFilterData$)),Wo(9),ku(null==(i=Kc(21,65,t.data.filter$))?null:i.sex),Wo(5),Su("",null==(r=Kc(26,67,t.data.filter$))?null:r.ageRange[0],"-",null==(r=Kc(27,69,t.data.filter$))?null:r.ageRange[1],""),Wo(6),Su("",null==(o=Kc(32,71,t.data.filter$))?null:o.bmiRange[0],"-",null==(o=Kc(33,73,t.data.filter$))?null:o.bmiRange[1],""),Wo(3),Es("treeModel",Kc(35,75,t.ontologyTreeModel$))("termData",Kc(36,77,t.data.ontologyTermsFullData$))("occurenceData",Kc(37,79,t.data.ontologyTermOccurencesData$))("header",Kc(38,81,t.header$)),Wo(5),Es("treeModel",Kc(40,83,t.cellTypeTreeModel$))("termData",Kc(41,85,t.data.cellTypeTermsFullData$))("occurenceData",Kc(42,87,t.data.cellTypeTermOccurencesData$))("header",Kc(43,89,t.header$)),Wo(8),au("opened",t.viewerOpen),Es("url",t.url),Wo(3),Es("matTooltip",s.expanded?"Exit Fullscreen":"Enter Fullscreen"),Wo(2),ku(s.expanded?"fullscreen_exit":"fullscreen"),Wo(1),Es("matTooltip",t.isLightTheme?"Enter Dark Mode":"Enter Light Mode"),Wo(2),xu("",t.isLightTheme?"brightness_2":"brightness_5"," "),Wo(5),Es("listResults",Kc(61,91,t.listResultsState.listResults$))("aggregateData",Kc(62,93,t.data.aggregateData$))("resultLabel",t.selectionLabel)("highlighted",Kc(63,95,t.listResultsState.highlightedNodeId$))("header",Kc(64,97,t.header$)),Wo(6),au("header-hidden",!1===Kc(67,99,t.header$)),Wo(2),au("closed",!t.organListVisible)("expanded",u.expanded),Wo(1),Es("multiselect",!0)("occurenceData",null!==(a=Kc(71,101,t.data.ontologyTermOccurencesData$))&&void 0!==a?a:Gc(109,gJ))("organList",Kc(72,103,t.scene.referenceOrgans$))("selectedOrgans",Kc(73,105,t.scene.selectedReferenceOrgans$)),Wo(5),au("closed",!t.organListVisible),Wo(1),Es("ngIf",t.organListVisible),Wo(1),Es("ngIf",!u.expanded),Wo(1),au("expanded-stage",!t.organListVisible)("selector-expanded",u.expanded),Es("scene",Kc(79,107,t.scene.scene$))("bounds",Gc(110,mJ))}},directives:[ZQ,Nh,lZ,oZ,SZ,VZ,zZ,GZ,lw,k_,Fq,uJ,tZ,Tq,mq,hJ],pipes:[Xh],styles:[".cdk-overlay-container{position:absolute;font-size:1.2rem}[_nghost-%COMP%]{display:block;position:relative}.ccf-app[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:1rem;position:relative;text-align:left}.ccf-app[_ngcontent-%COMP%] ccf-header[_ngcontent-%COMP%]{z-index:99}.ccf-app[_ngcontent-%COMP%] ccf-header.hide[_ngcontent-%COMP%]{display:none}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%]{height:calc(100% - 5rem);width:100%;opacity:1;overflow:hidden;transform:scale(1)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container.header-hidden[_ngcontent-%COMP%]{height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%]{width:28.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%]{display:flex;padding-left:1.5rem;height:5rem;padding-right:1.5rem;align-items:center;justify-content:space-between}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%] .button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;outline:none;border-radius:.25rem;padding:.65rem;transition:.6s}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%]{overflow:hidden;border-radius:.5rem;height:calc(100vh - 4rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer[_ngcontent-%COMP%]{top:0rem;display:flex;flex-direction:column;position:relative;transition:all .5s ease-in-out;height:5rem;justify-content:start}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.expanded[_ngcontent-%COMP%]{height:15rem;overflow-y:auto}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.closed[_ngcontent-%COMP%]{height:1.5rem;top:-5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .stage-content[_ngcontent-%COMP%]{transition:all .5s ease-in-out;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .expanded-stage[_ngcontent-%COMP%]{height:calc(100% - 3rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-expanded[_ngcontent-%COMP%]{height:calc(100% - 16.5rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 1rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:center;border-top-right-radius:.5rem;border-top-left-radius:.5rem;height:0}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:flex;justify-content:center;height:1.0625rem;width:3rem;align-self:center;border-radius:0 0 .25rem .25rem;cursor:pointer;transition:.6s;position:relative;top:.5rem;z-index:1}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{position:relative;bottom:.2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem;height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cell-type-selection[_ngcontent-%COMP%] .ccf-ontology-search{margin-top:2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%]{height:5rem;display:flex;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:75%;margin-left:1.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%]{font-weight:300}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600!important}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view[_ngcontent-%COMP%]{position:fixed;left:0;top:0;bottom:0;right:425%;height:100%;transform:translate(-425%);width:calc(100% - 28.5rem);transition:transform .5s cubic-bezier(.82,.085,.395,.895)}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view.opened[_ngcontent-%COMP%]{transform:translate(0);transition:width 0s .5s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view[_ngcontent-%COMP%]{width:100vw}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view.opened[_ngcontent-%COMP%]{transition:width 0s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .shaded-toggle[_ngcontent-%COMP%]{box-shadow:-1px 0 4px #212121}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5rem}"],changeDetection:0}),e}();function bJ(e,t){1&e&&As(0,"ccf-root")}function _J(e){var t=function(e){return"string"==typeof e},n=function(e){return Array.isArray(e)&&e.every(t)};if("string"==typeof e){var i=QQ.json(e);if(n(i))return i}else if(n(e))return e;throw new Error("Invalid data sources")}var wJ=function(){var e=function(e){a(n,e);var t=s(n);function n(e,i){return m(this,n),t.call(this,e,i,{initialDelay:10,initialConfig:Object.assign(Object.assign(Object.assign({},sX.dbOptions),globalThis.dbOptions),sX.customization),parse:{dataSources:_J,useRemoteApi:QQ.boolean,header:QQ.boolean,loginDisabled:QQ.boolean}})}return n}($Q);return e.\u0275fac=function(t){return new(t||e)(Ss(Vq),Ss(_c))},e.\u0275cmp=Et({type:e,selectors:[["ccf-root-wc"]],inputs:{dataSources:"dataSources",hubmapDataService:"hubmapDataService",hubmapDataUrl:"hubmapDataUrl",hubmapAssetUrl:"hubmapAssetUrl",hubmapToken:"hubmapToken",hubmapPortalUrl:"hubmapPortalUrl",useRemoteApi:"useRemoteApi",remoteApiEndpoint:"remoteApiEndpoint",theme:"theme",header:"header",homeUrl:"homeUrl",logoTooltip:"logoTooltip",loginDisabled:"loginDisabled"},features:[as],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(e,t){1&e&&ks(0,bJ,1,0,"ccf-root",0),2&e&&Es("ngIf",t.initialized)},directives:[Nh,yJ],encapsulation:2,changeDetection:0}),e}(),kJ=function(){var e=function(){function e(t){m(this,e),this.injector=t}return b(e,[{key:"ngDoBootstrap",value:function(){var e=function(e,t){var n=function(e,t){return t.get(Gu).resolveComponentFactory(e).inputs}(e,t.injector),i=t.strategyFactory||new Zp(e,t.injector),r=function(e){var t={};return e.forEach(function(e){var n=e.propName,i=e.templateName;t[function(e){return e.replace(/[A-Z]/g,function(e){return"-".concat(e.toLowerCase())})}(i)]=n}),t}(n),o=function(e){a(u,e);var o=s(u);function u(e){var t;return m(this,u),(t=o.call(this)).injector=e,t}return b(u,[{key:"ngElementStrategy",get:function(){var e=this;if(!this._ngElementStrategy){var r=this._ngElementStrategy=i.create(this.injector||t.injector);n.forEach(function(t){var n=t.propName;if(e.hasOwnProperty(n)){var i=e[n];delete e[n],r.setInputValue(n,i)}})}return this._ngElementStrategy}},{key:"attributeChangedCallback",value:function(e,t,n,i){this.ngElementStrategy.setInputValue(r[e],n)}},{key:"connectedCallback",value:function(){var e=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),e=!0),this.ngElementStrategy.connect(this),e||this.subscribeToEvents()}},{key:"disconnectedCallback",value:function(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}},{key:"subscribeToEvents",value:function(){var e=this;this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(function(t){var n=function(e,t,n){if("function"!=typeof CustomEvent){var i=e.createEvent("CustomEvent");return i.initCustomEvent(t,!1,!1,n),i}return new CustomEvent(t,{bubbles:!1,cancelable:!1,detail:n})}(e.ownerDocument,t.name,t.value);e.dispatchEvent(n)})}}]),u}(ev);return o.observedAttributes=Object.keys(r),n.forEach(function(e){var t=e.propName;Object.defineProperty(o.prototype,t,{get:function(){return this.ngElementStrategy.getInputValue(t)},set:function(e){this.ngElementStrategy.setInputValue(t,e)},configurable:!0,enumerable:!0})}),o}(wJ,{injector:this.injector});customElements.define("ccf-eui",e)}}]),e}();return e.\u0275fac=function(t){return new(t||e)(Ki(rs))},e.\u0275mod=At({type:e}),e.\u0275inj=Ke({providers:[{provide:oX,useValue:"hubmap-theme-light"},{provide:Tp,useExisting:Kp}],imports:[[Fy,Ad,qX,NQ,wK,XK,x_,bK,PQ,qQ,yq,Aq,Bq,fw,XQ,Wq,ew]]}),e}();sX.production&&function(){if(Ql)throw new Error("Cannot enable prod mode after platform setup.");$l=!1}(),Od().bootstrapModule(kJ).catch(function(e){return console.error(e)})},91052:function(e){function t(e,t,n,i,r,o,a){try{var s=e[o](a),u=s.value}catch(c){return void n(c)}s.done?t(u):Promise.resolve(u).then(i,r)}e.exports=function(e){return function(){var n=this,i=arguments;return new Promise(function(r,o){var a=e.apply(n,i);function s(e){t(a,r,o,s,u,"next",e)}function u(e){t(a,r,o,s,u,"throw",e)}s(void 0)})}},e.exports.default=e.exports,e.exports.__esModule=!0},61948:function(e){e.exports=function(e){return e&&e.__esModule?e:{default:e}},e.exports.default=e.exports,e.exports.__esModule=!0},34321:function(e){function t(n){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(e.exports=t=function(e){return typeof e},e.exports.default=e.exports,e.exports.__esModule=!0):(e.exports=t=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.default=e.exports,e.exports.__esModule=!0),t(n)}e.exports=t,e.exports.default=e.exports,e.exports.__esModule=!0},91741:function(e){function t(e){return Promise.resolve().then(function(){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t})}t.keys=function(){return[]},t.resolve=t,t.id=91741,e.exports=t},88509:function(e,t,n){"use strict";e.exports=n.p+"7693192ac33f7744a3ca.ts"},9521:function(){},49125:function(){},75307:function(){}},function(e){e(e.s=93640)}])}(); \ No newline at end of file diff --git a/wc.js b/wc.js index e28008a8d..321ef156d 100644 --- a/wc.js +++ b/wc.js @@ -2,4 +2,4 @@ (self.webpackChunkccf_ui=self.webpackChunkccf_ui||[]).push([[429],{24138:function(){!function(){"use strict";!function(){if(void 0===window.Reflect||void 0===window.customElements||window.customElements.polyfillWrapFlushCallback)return;const e=HTMLElement;window.HTMLElement=function(){return Reflect.construct(e,[],this.constructor)},HTMLElement.prototype=e.prototype,HTMLElement.prototype.constructor=HTMLElement,Object.setPrototypeOf(HTMLElement,e)}()}()},24192:function(){!function(e,t){"use strict";function n(){var e=M.splice(0,M.length);for(nt=0;e.length;)e.shift().call(null,e.shift())}function o(e,t){for(var n=0,o=e.length;n1)&&_(this)}}}),Fe(a,W,{value:function(e){-1>0,x="__"+R+F,V="addEventListener",U="attached",q="Callback",B="detached",G="extends",W="attributeChanged"+q,$=U+q,X="connected"+q,Y="disconnected"+q,K="created"+q,J=B+q,Q="ADDITION",ee="REMOVAL",te="DOMAttrModified",ne="DOMContentLoaded",oe="DOMSubtreeModified",re="<",ae="=",ie=/^[A-Z][._A-Z0-9]*-[-._A-Z0-9]*$/,se=["ANNOTATION-XML","COLOR-PROFILE","FONT-FACE","FONT-FACE-SRC","FONT-FACE-URI","FONT-FACE-FORMAT","FONT-FACE-NAME","MISSING-GLYPH"],ce=[],le=[],ue="",he=E.documentElement,pe=ce.indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},fe=b.prototype,de=fe.hasOwnProperty,me=fe.isPrototypeOf,ge=b.defineProperty,Te=[],ye=b.getOwnPropertyDescriptor,_e=b.getOwnPropertyNames,ke=b.getPrototypeOf,ve=b.setPrototypeOf,Ee=!!b.__proto__,be="__dreCEv1",we=e.customElements,Me=!/^force/.test(t.type)&&!!(we&&we.define&&we.get&&we.whenDefined),Le=b.create||b,Ce=e.Map||function(){var e,t=[],n=[];return{get:function(e){return n[pe.call(t,e)]},set:function(o,r){(e=pe.call(t,o))<0?n[t.push(o)-1]=r:n[e]=r}}},He=e.Promise||function(e){function t(e){for(o=!0;n.length;)n.shift()(e)}var n=[],o=!1,r={catch:function(){return r},then:function(e){return n.push(e),o&&setTimeout(t,1),r}};return e(t),r},Oe=!1,Se=Le(null),De=Le(null),Ze=new Ce,Pe=function(e){return e.toLowerCase()},Ne=b.create||function e(t){return t?(e.prototype=t,new e):this},ze=ve||(Ee?function(e,t){return e.__proto__=t,e}:_e&&ye?function(){function e(e,t){for(var n,o=_e(t),r=0,a=o.length;r
    ",new Ie(function(e,t){if(e[0]&&"childList"==e[0].type&&!e[0].removedNodes[0].childNodes.length){var n=(P=ye(je,"innerHTML"))&&P.set;n&&ge(je,"innerHTML",{set:function(e){for(;this.lastChild;)this.removeChild(this.lastChild);n.call(this,e)}})}t.disconnect(),P=null}).observe(P,{childList:!0,subtree:!0}),P.innerHTML=""),ot||(ve||Ee?(D=function(e,t){me.call(t,e)||p(e,t)},Z=p):Z=D=function(e,t){e[x]||(e[x]=b(!0),p(e,t))},Re?(it=!1,N=ye(je,V),z=N.value,I=function(e){var t=new CustomEvent(te,{bubbles:!0});t.attrName=e,t.prevValue=We.call(this,e),t.newValue=null,t[ee]=t.attrChange=2,Xe.call(this,e),Ge.call(this,t)},A=function(e,t){var n=$e.call(this,e),o=n&&We.call(this,e),r=new CustomEvent(te,{bubbles:!0});Ye.call(this,e,t),r.attrName=e,r.prevValue=n?o:null,r.newValue=t,n?r.MODIFICATION=r.attrChange=1:r[Q]=r.attrChange=0,Ge.call(this,r)},j=function(e){var t,n=e.currentTarget,o=n[x],r=e.propertyName;o.hasOwnProperty(r)&&(o=o[r],(t=new CustomEvent(te,{bubbles:!0})).attrName=o.name,t.prevValue=o.value||null,t.newValue=o.value=n[r]||null,null==t.prevValue?t[Q]=t.attrChange=0:t.MODIFICATION=t.attrChange=1,Ge.call(n,t))},N.value=function(e,t,n){e===te&&this[W]&&this.setAttribute!==A&&(this[x]={className:{name:"class",value:this.className}},this.setAttribute=A,this.removeAttribute=I,z.call(this,"propertychange",j)),z.call(this,e,t,n)},ge(je,V,N)):Ie||(he[V](te,tt),he.setAttribute(x,1),he.removeAttribute(x),it&&(L=function(e){var t,n,o,r=this;if(r===e.target){for(o in t=r[x],r[x]=n=H(r),n){if(!(o in t))return C(0,r,o,t[o],n[o],Q);if(n[o]!==t[o])return C(1,r,o,t[o],n[o],"MODIFICATION")}for(o in t)if(!(o in n))return C(2,r,o,t[o],n[o],ee)}},C=function(e,t,n,o,r,a){var i={attrChange:e,currentTarget:t,attrName:n,prevValue:o,newValue:r};i[a]=e,s(i)},H=function(e){for(var t,n,o={},r=e.attributes,a=0,i=r.length;a$");if(n[G]="a",(t.prototype=Ne(Ae.prototype)).constructor=t,e.customElements.define(o,t,n),!r.test(E.createElement("a",{is:o}).outerHTML)||!r.test((new t).outerHTML))throw n}(function e(){return Reflect.construct(Ae,[],e)},{},"document-register-element-a"+F)}catch(N){v()}if(!t.noBuiltIn)try{if(Ke.call(E,"a","a").outerHTML.indexOf("is")<0)throw{}}catch(N){Pe=function(e){return{is:e.toLowerCase()}}}}(window)},7277: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 a(e){return r+e}const i=!0===e[a("forceDuplicateZoneCheck")];if(e.Zone){if(i||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}let s=(()=>{class t{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!==O.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=t.current;for(;e.parent;)e=e.parent;return e}static get current(){return D.zone}static get currentTask(){return Z}static __load_patch(r,a,s=!1){if(O.hasOwnProperty(r)){if(!s&&i)throw Error("Already loaded patch: "+r)}else if(!e["__Zone_disable_"+r]){const i="Zone:"+r;n(i),O[r]=a(e,t,S),o(i,i)}}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){D={parent:D,zone:this};try{return this._zoneDelegate.invoke(this,e,t,n,o)}finally{D=D.parent}}runGuarded(e,t=null,n,o){D={parent:D,zone:this};try{try{return this._zoneDelegate.invoke(this,e,t,n,o)}catch(r){if(this._zoneDelegate.handleError(this,r))throw r}}finally{D=D.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||_).name+"; Execution: "+this.name+")");if(e.state===k&&(e.type===H||e.type===C))return;const o=e.state!=b;o&&e._transitionTo(b,E),e.runCount++;const r=Z;Z=e,D={parent:D,zone:this};try{e.type==C&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,t,n)}catch(a){if(this._zoneDelegate.handleError(this,a))throw a}}finally{e.state!==k&&e.state!==M&&(e.type==H||e.data&&e.data.isPeriodic?o&&e._transitionTo(E,b):(e.runCount=0,this._updateTaskCount(e,-1),o&&e._transitionTo(k,b,k))),D=D.parent,Z=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(v,k);const t=[];e._zoneDelegates=t,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(n){throw e._transitionTo(M,v,k),this._zoneDelegate.handleError(this,n),n}return e._zoneDelegates===t&&this._updateTaskCount(e,1),e.state==v&&e._transitionTo(E,v),e}scheduleMicroTask(e,t,n,o){return this.scheduleTask(new u(L,e,t,n,o,void 0))}scheduleMacroTask(e,t,n,o,r){return this.scheduleTask(new u(C,e,t,n,o,r))}scheduleEventTask(e,t,n,o,r){return this.scheduleTask(new u(H,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||_).name+"; Execution: "+this.name+")");e._transitionTo(w,E,b);try{this._zoneDelegate.cancelTask(this,e)}catch(t){throw e._transitionTo(M,w),this._zoneDelegate.handleError(this,t),t}return this._updateTaskCount(e,-1),e._transitionTo(k,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,a)=>e.invokeTask(n,o,r,a),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 s(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!=L)throw new Error("Task is missing scheduleFn.");T(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,a,i){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=t,this.source=n,this.data=r,this.scheduleFn=a,this.cancelFn=i,!o)throw new Error("callback is not defined");this.callback=o;const s=this;this.invoke=t===H&&r&&r.useG?u.invokeTask:function(){return u.invokeTask.call(e,s,this,arguments)}}static invokeTask(e,t,n){e||(e=this),P++;try{return e.runCount++,e.zone.runTask(e,t,n)}finally{1==P&&y(),P--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(k,v)}_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==k&&(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=a("setTimeout"),p=a("Promise"),f=a("then");let d,m=[],g=!1;function T(t){if(0===P&&0===m.length)if(d||e[p]&&(d=e[p].resolve(0)),d){let e=d[f];e||(e=d.then),e.call(d,y)}else e[h](y,0);t&&m.push(t)}function y(){if(!g){for(g=!0;m.length;){const t=m;m=[];for(let n=0;nD,onUnhandledError:N,microtaskDrainDone:N,scheduleMicroTask:T,showUncaughtError:()=>!s[a("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:N,patchMethod:()=>N,bindArguments:()=>[],patchThen:()=>N,patchMacroTask:()=>N,patchEventPrototype:()=>N,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>N,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>N,wrapWithCurrentZone:()=>N,filterProperties:()=>[],attachOriginToPatched:()=>N,_redefineProperty:()=>N,patchCallbacks:()=>N};let D={parent:null,zone:new s(null,null)},Z=null,P=0;function N(){}o("Zone","Zone"),e.Zone=s}("undefined"!=typeof window&&window||"undefined"!=typeof self&&self||global);const e=Object.getOwnPropertyDescriptor,t=Object.defineProperty,n=Object.getPrototypeOf,o=Object.create,r=Array.prototype.slice,a="addEventListener",i="removeEventListener",s=Zone.__symbol__(a),c=Zone.__symbol__(i),l="true",u="false",h=Zone.__symbol__("");function p(e,t){return Zone.current.wrap(e,t)}function f(e,t,n,o,r){return Zone.current.scheduleMacroTask(e,t,n,o,r)}const d=Zone.__symbol__,m="undefined"!=typeof window,g=m?window:void 0,T=m&&g||"object"==typeof self&&self||global,y=[null];function _(e,t){for(let n=e.length-1;n>=0;n--)"function"==typeof e[n]&&(e[n]=p(e[n],t+"_"+n));return e}function k(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&void 0===e.set)}const v="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,E=!("nw"in T)&&void 0!==T.process&&"[object process]"==={}.toString.call(T.process),b=!E&&!v&&!(!m||!g.HTMLElement),w=void 0!==T.process&&"[object process]"==={}.toString.call(T.process)&&!v&&!(!m||!g.HTMLElement),M={},L=function(e){if(!(e=e||T.event))return;let t=M[e.type];t||(t=M[e.type]=d("ON_PROPERTY"+e.type));const n=this||e.target||T,o=n[t];let r;if(b&&n===g&&"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 C(n,o,r){let a=e(n,o);if(!a&&r&&e(r,o)&&(a={enumerable:!0,configurable:!0}),!a||!a.configurable)return;const i=d("on"+o+"patched");if(n.hasOwnProperty(i)&&n[i])return;delete a.writable,delete a.value;const s=a.get,c=a.set,l=o.substr(2);let u=M[l];u||(u=M[l]=d("ON_PROPERTY"+l)),a.set=function(e){let t=this;!t&&n===T&&(t=T),t&&(t[u]&&t.removeEventListener(l,L),c&&c.apply(t,y),"function"==typeof e?(t[u]=e,t.addEventListener(l,L,!1)):t[u]=null)},a.get=function(){let e=this;if(!e&&n===T&&(e=T),!e)return null;const t=e[u];if(t)return t;if(s){let t=s&&s.call(this);if(t)return a.set.call(this,t),"function"==typeof e.removeAttribute&&e.removeAttribute(o),t}return null},t(n,o,a),n[i]=!0}function H(e,t,n){if(t)for(let o=0;ofunction(t,o){const a=n(t,o);return a.cbIdx>=0&&"function"==typeof o[a.cbIdx]?f(a.name,o[a.cbIdx],a,r):e.apply(t,o)})}function P(e,t){e[d("OriginalDelegate")]=t}let N=!1,z=!1;function I(){if(N)return z;N=!0;try{const e=g.navigator.userAgent;(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/")||-1!==e.indexOf("Edge/"))&&(z=!0)}catch(e){}return z}Zone.__load_patch("ZoneAwarePromise",(e,t,n)=>{const o=Object.getOwnPropertyDescriptor,r=Object.defineProperty,a=n.symbol,i=[],s=!0===e[a("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],c=a("Promise"),l=a("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(;i.length;){const t=i.shift();try{t.zone.runGuarded(()=>{throw t.throwOriginal?t.rejection:t})}catch(e){h(e)}}};const u=a("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 S.reject(e)}const m=a("state"),g=a("value"),T=a("finally"),y=a("parentPromiseValue"),_=a("parentPromiseState"),k=null,v=!0,E=!1;function b(e,t){return n=>{try{M(e,t,n)}catch(o){M(e,!1,o)}}}const w=a("currentTaskTrace");function M(e,o,a){const c=function(){let e=!1;return function(t){return function(){e||(e=!0,t.apply(null,arguments))}}}();if(e===a)throw new TypeError("Promise resolved with itself");if(e[m]===k){let h=null;try{("object"==typeof a||"function"==typeof a)&&(h=a&&a.then)}catch(l){return c(()=>{M(e,!1,l)})(),e}if(o!==E&&a instanceof S&&a.hasOwnProperty(m)&&a.hasOwnProperty(g)&&a[m]!==k)C(a),M(e,a[m],a[g]);else if(o!==E&&"function"==typeof h)try{h.call(a,c(b(e,o)),c(b(e,!1)))}catch(l){c(()=>{M(e,!1,l)})()}else{e[m]=o;const c=e[g];if(e[g]=a,e[T]===T&&o===v&&(e[m]=e[_],e[g]=e[y]),o===E&&a instanceof Error){const e=t.currentTask&&t.currentTask.data&&t.currentTask.data.__creationTrace__;e&&r(a,w,{configurable:!0,enumerable:!1,writable:!0,value:e})}for(let t=0;t{try{const o=e[g],r=!!n&&T===n[T];r&&(n[y]=o,n[_]=a);const s=t.run(i,void 0,r&&i!==d&&i!==f?[]:[o]);M(n,!0,s)}catch(o){M(n,!1,o)}},n)}const O=function(){};class S{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(e){return M(new this(null),v,e)}static reject(e){return M(new this(null),E,e)}static race(e){let t,n,o=new this((e,o)=>{t=e,n=o});function r(e){t(e)}function a(e){n(e)}for(let i of e)p(i)||(i=this.resolve(i)),i.then(r,a);return o}static all(e){return S.allWithCallback(e)}static allSettled(e){return(this&&this.prototype instanceof S?this:S).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}),a=2,i=0;const s=[];for(let l of e){p(l)||(l=this.resolve(l));const e=i;try{l.then(o=>{s[e]=t?t.thenCallback(o):o,a--,0===a&&n(s)},r=>{t?(s[e]=t.errorCallback(r),a--,0===a&&n(s)):o(r)})}catch(c){o(c)}a++,i++}return a-=2,0===a&&n(s),r}constructor(e){const t=this;if(!(t instanceof S))throw new Error("Must be an instanceof Promise.");t[m]=k,t[g]=[];try{e&&e(b(t,v),b(t,E))}catch(n){M(t,!1,n)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return S}then(e,n){let o=this.constructor[Symbol.species];(!o||"function"!=typeof o)&&(o=this.constructor||S);const r=new o(O),a=t.current;return this[m]==k?this[g].push(a,r,e,n):H(this,a,r,e,n),r}catch(e){return this.then(null,e)}finally(e){let n=this.constructor[Symbol.species];(!n||"function"!=typeof n)&&(n=S);const o=new n(O);o[T]=T;const r=t.current;return this[m]==k?this[g].push(r,o,e,e):H(this,r,o,e,e),o}}S.resolve=S.resolve,S.reject=S.reject,S.race=S.race,S.all=S.all;const Z=e[c]=e.Promise;e.Promise=S;const P=a("thenPatched");function N(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 S((e,t)=>{r.call(this,e,t)}).then(e,t)},e[P]=!0}return n.patchThen=N,Z&&(N(Z),D(e,"fetch",e=>function(e){return function(t,n){let o=e.apply(t,n);if(o instanceof S)return o;let r=o.constructor;return r[P]||N(r),o}}(e))),Promise[t.__symbol__("uncaughtPromiseErrors")]=i,S}),Zone.__load_patch("toString",e=>{const t=Function.prototype.toString,n=d("OriginalDelegate"),o=d("Promise"),r=d("Error"),a=function(){if("function"==typeof this){const a=this[n];if(a)return"function"==typeof a?t.call(a):Object.prototype.toString.call(a);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)};a[n]=t,Function.prototype.toString=a;const i=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":i.call(this)}});let A=!1;if("undefined"!=typeof window)try{const e=Object.defineProperty({},"passive",{get:function(){A=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch(ce){A=!1}const j={useG:!0},R={},F={},x=new RegExp("^"+h+"(\\w+)(true|false)$"),V=d("propagationStopped");function U(e,t){const n=(t?t(e):e)+u,o=(t?t(e):e)+l,r=h+n,a=h+o;R[e]={},R[e][u]=r,R[e][l]=a}function q(e,t,o){const r=o&&o.add||a,s=o&&o.rm||i,c=o&&o.listeners||"eventListeners",p=o&&o.rmAll||"removeAllListeners",f=d(r),m="."+r+":",g=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)},T=function(t){if(!(t=t||e.event))return;const n=this||t.target||e,o=n[R[t.type][u]];if(o)if(1===o.length)g(o[0],n,t);else{const e=o.slice();for(let o=0;ofunction(t,n){t[V]=!0,e&&e.apply(t,n)})}function W(e,t,n,o,r){const a=Zone.__symbol__(o);if(t[a])return;const i=t[a]=t[o];t[o]=function(a,s,c){return s&&s.prototype&&r.forEach(function(t){const r=`${n}.${o}::`+t,a=s.prototype;if(a.hasOwnProperty(t)){const n=e.ObjectGetOwnPropertyDescriptor(a,t);n&&n.value?(n.value=e.wrapWithCurrentZone(n.value,r),e._redefineProperty(s.prototype,t,n)):a[t]&&(a[t]=e.wrapWithCurrentZone(a[t],r))}else a[t]&&(a[t]=e.wrapWithCurrentZone(a[t],r))}),i.call(t,a,s,c)},e.attachOriginToPatched(t[o],i)}const $=["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"],X=["encrypted","waitingforkey","msneedkey","mozinterruptbegin","mozinterruptend"],Y=["load"],K=["blur","error","focus","load","resize","scroll","messageerror"],J=["bounce","finish","start"],Q=["loadstart","progress","abort","error","load","progress","timeout","loadend","readystatechange"],ee=["upgradeneeded","complete","abort","success","error","blocked","versionchange","close"],te=["close","error","open","message"],ne=["error","message"],oe=["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"],$,["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 re(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 ae(e,t,n,o){e&&H(e,re(e,t,n),o)}Zone.__load_patch("util",(n,s,c)=>{c.patchOnProperties=H,c.patchMethod=D,c.bindArguments=_,c.patchMacroTask=Z;const f=s.__symbol__("BLACK_LISTED_EVENTS"),d=s.__symbol__("UNPATCHED_EVENTS");n[d]&&(n[f]=n[d]),n[f]&&(s[f]=s[d]=n[f]),c.patchEventPrototype=G,c.patchEventTarget=q,c.isIEOrEdge=I,c.ObjectDefineProperty=t,c.ObjectGetOwnPropertyDescriptor=e,c.ObjectCreate=o,c.ArraySlice=r,c.patchClass=S,c.wrapWithCurrentZone=p,c.filterProperties=re,c.attachOriginToPatched=P,c._redefineProperty=Object.defineProperty,c.patchCallbacks=W,c.getGlobalObjects=()=>({globalSources:F,zoneSymbolEventNames:R,eventNames:oe,isBrowser:b,isMix:w,isNode:E,TRUE_STR:l,FALSE_STR:u,ZONE_SYMBOL_PREFIX:h,ADD_EVENT_LISTENER_STR:a,REMOVE_EVENT_LISTENER_STR:i})});const ie=d("zoneTask");function se(e,t,n,o){let r=null,a=null;n+=o;const i={};function s(t){const n=t.data;return n.args[0]=function(){return t.invoke.apply(this,arguments)},n.handleId=r.apply(e,n.args),t}function c(t){return a.call(e,t.data.handleId)}r=D(e,t+=o,n=>function(r,a){if("function"==typeof a[0]){const e={isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?a[1]||0:void 0,args:a},n=a[0];a[0]=function(){try{return n.apply(this,arguments)}finally{e.isPeriodic||("number"==typeof e.handleId?delete i[e.handleId]:e.handleId&&(e.handleId[ie]=null))}};const r=f(t,a[0],e,s,c);if(!r)return r;const l=r.data.handleId;return"number"==typeof l?i[l]=r:l&&(l[ie]=r),l&&l.ref&&l.unref&&"function"==typeof l.ref&&"function"==typeof l.unref&&(r.ref=l.ref.bind(l),r.unref=l.unref.bind(l)),"number"==typeof l||l?l:r}return n.apply(e,a)}),a=D(e,n,t=>function(n,o){const r=o[0];let a;"number"==typeof r?a=i[r]:(a=r&&r[ie],a||(a=r)),a&&"string"==typeof a.type?"notScheduled"!==a.state&&(a.cancelFn&&a.data.isPeriodic||0===a.runCount)&&("number"==typeof r?delete i[r]:r&&(r[ie]=null),a.zone.cancelTask(a)):t.apply(e,o)})}Zone.__load_patch("legacy",e=>{const t=e[Zone.__symbol__("legacyPatch")];t&&t()}),Zone.__load_patch("queueMicrotask",(e,t,n)=>{n.patchMethod(e,"queueMicrotask",e=>function(e,n){t.current.scheduleMicroTask("queueMicrotask",n[0])})}),Zone.__load_patch("timers",e=>{const t="set",n="clear";se(e,t,n,"Timeout"),se(e,t,n,"Interval"),se(e,t,n,"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,a){return t.current.run(n,e,a,r)})}),Zone.__load_patch("EventTarget",(e,t,n)=>{(function(e,t){t.patchEventPrototype(e,t)})(e,n),function(e,t){if(Zone[t.symbol("patchEventTarget")])return;const{eventNames:n,zoneSymbolEventNames:o,TRUE_STR:r,FALSE_STR:a,ZONE_SYMBOL_PREFIX:i}=t.getGlobalObjects();for(let c=0;c{S("MutationObserver"),S("WebKitMutationObserver")}),Zone.__load_patch("IntersectionObserver",(e,t,n)=>{S("IntersectionObserver")}),Zone.__load_patch("FileReader",(e,t,n)=>{S("FileReader")}),Zone.__load_patch("on_property",(e,t,o)=>{!function(e,t){if(E&&!w||Zone[e.symbol("patchEvents")])return;const o="undefined"!=typeof WebSocket,r=t.__Zone_ignore_on_properties;if(b){const t=window,o=function(){try{const e=g.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch(e){}return!1}()?[{target:t,ignoreProperties:["error"]}]:[];ae(t,oe.concat(["messageerror"]),r&&r.concat(o),n(t)),ae(Document.prototype,oe,r),void 0!==t.SVGElement&&ae(t.SVGElement.prototype,oe,r),ae(Element.prototype,oe,r),ae(HTMLElement.prototype,oe,r),ae(HTMLMediaElement.prototype,X,r),ae(HTMLFrameSetElement.prototype,$.concat(K),r),ae(HTMLBodyElement.prototype,$.concat(K),r),ae(HTMLFrameElement.prototype,Y,r),ae(HTMLIFrameElement.prototype,Y,r);const a=t.HTMLMarqueeElement;a&&ae(a.prototype,J,r);const i=t.Worker;i&&ae(i.prototype,ne,r)}const a=t.XMLHttpRequest;a&&ae(a.prototype,Q,r);const i=t.XMLHttpRequestEventTarget;i&&ae(i&&i.prototype,Q,r),"undefined"!=typeof IDBIndex&&(ae(IDBIndex.prototype,ee,r),ae(IDBRequest.prototype,ee,r),ae(IDBOpenDBRequest.prototype,ee,r),ae(IDBDatabase.prototype,ee,r),ae(IDBTransaction.prototype,ee,r),ae(IDBCursor.prototype,ee,r)),o&&ae(WebSocket.prototype,te,r)}(o,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 u=e.XMLHttpRequest;if(!u)return;const h=u.prototype;let p=h[s],m=h[c];if(!p){const t=e.XMLHttpRequestEventTarget;if(t){const e=t.prototype;p=e[s],m=e[c]}}const g="readystatechange",T="scheduled";function y(e){const o=e.data,i=o.target;i[a]=!1,i[l]=!1;const u=i[r];p||(p=i[s],m=i[c]),u&&m.call(i,g,u);const h=i[r]=()=>{if(i.readyState===i.DONE)if(!o.aborted&&i[a]&&e.state===T){const n=i[t.__symbol__("loadfalse")];if(0!==i.status&&n&&n.length>0){const r=e.invoke;e.invoke=function(){const n=i[t.__symbol__("loadfalse")];for(let t=0;tfunction(e,t){return e[o]=0==t[2],e[i]=t[1],v.apply(e,t)}),E=d("fetchTaskAborting"),b=d("fetchTaskScheduling"),w=D(h,"send",()=>function(e,n){if(!0===t.current[b]||e[o])return w.apply(e,n);{const t={target:e,url:e[i],isPeriodic:!1,args:n,aborted:!1},o=f("XMLHttpRequest.send",_,t,y,k);e&&!0===e[l]&&!t.aborted&&o.state===T&&o.invoke()}}),M=D(h,"abort",()=>function(e,o){const r=function(e){return e[n]}(e);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[E])return M.apply(e,o)})}(e);const n=d("xhrTask"),o=d("xhrSync"),r=d("xhrListener"),a=d("xhrScheduled"),i=d("xhrURL"),l=d("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,_(arguments,o+"."+a))};return P(t,e),t})(i)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,t)=>{function n(t){return function(n){B(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[d("unhandledPromiseRejectionHandler")]=n("unhandledrejection"),t[d("rejectionHandledHandler")]=n("rejectionhandled"))})},91817:function(e,t,n){"use strict";n(7277),n(24192),n(24138)}},function(e){e(e.s=91817)}]); /*! (C) Andrea Giammarchi - @WebReflection - ISC Style License */ !function(e,t){"use strict";function n(){var e=C.splice(0,C.length);for(We=0;e.length;)e.shift().call(null,e.shift())}function r(e,t){for(var n=0,r=e.length;n1)&&E(this)}}}),Pe(l,B,{value:function(e){-1>0,R="__"+V+P,U="addEventListener",_="attached",k="Callback",x="detached",q="extends",B="attributeChanged"+k,Z=_+k,j="connected"+k,G="disconnected"+k,z="created"+k,K=x+k,X="ADDITION",$="REMOVAL",Q="DOMAttrModified",W="DOMContentLoaded",Y="DOMSubtreeModified",J="<",ee="=",te=/^[A-Z][._A-Z0-9]*-[-._A-Z0-9]*$/,ne=["ANNOTATION-XML","COLOR-PROFILE","FONT-FACE","FONT-FACE-SRC","FONT-FACE-URI","FONT-FACE-FORMAT","FONT-FACE-NAME","MISSING-GLYPH"],re=[],oe=[],le="",ae=g.documentElement,ie=re.indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},ue=b.prototype,ce=ue.hasOwnProperty,se=ue.isPrototypeOf,me=b.defineProperty,fe=[],de=b.getOwnPropertyDescriptor,pe=b.getOwnPropertyNames,he=b.getPrototypeOf,Te=b.setPrototypeOf,Le=!!b.__proto__,Me="__dreCEv1",Ee=e.customElements,ve=!/^force/.test(t.type)&&!!(Ee&&Ee.define&&Ee.get&&Ee.whenDefined),He=b.create||b,ge=e.Map||function(){var e,t=[],n=[];return{get:function(e){return n[ie.call(t,e)]},set:function(r,o){(e=ie.call(t,r))<0?n[t.push(r)-1]=o:n[e]=o}}},be=e.Promise||function(e){function t(e){for(r=!0;n.length;)n.shift()(e)}var n=[],r=!1,o={catch:function(){return o},then:function(e){return n.push(e),r&&setTimeout(t,1),o}};return e(t),o},ye=!1,Ce=He(null),we=He(null),Ae=new ge,Oe=function(e){return e.toLowerCase()},Ne=b.create||function e(t){return t?(e.prototype=t,new e):this},De=Te||(Le?function(e,t){return e.__proto__=t,e}:pe&&de?function(){function e(e,t){for(var n,r=pe(t),o=0,l=r.length;o
    ",new Ie(function(e,t){if(e[0]&&"childList"==e[0].type&&!e[0].removedNodes[0].childNodes.length){var n=(S=de(Se,"innerHTML"))&&S.set;n&&me(Se,"innerHTML",{set:function(e){for(;this.lastChild;)this.removeChild(this.lastChild);n.call(this,e)}})}t.disconnect(),S=null}).observe(S,{childList:!0,subtree:!0}),S.innerHTML=""),Ye||(Te||Le?(I=function(e,t){se.call(t,e)||f(e,t)},F=f):F=I=function(e,t){e[R]||(e[R]=b(!0),f(e,t))},Ve?(tt=!1,function(){var e=de(Se,U),t=e.value,n=function(e){var t=new CustomEvent(Q,{bubbles:!0});t.attrName=e,t.prevValue=Be.call(this,e),t.newValue=null,t[$]=t.attrChange=2,je.call(this,e),qe.call(this,t)},r=function(e,t){var n=Ze.call(this,e),r=n&&Be.call(this,e),o=new CustomEvent(Q,{bubbles:!0});Ge.call(this,e,t),o.attrName=e,o.prevValue=n?r:null,o.newValue=t,n?o.MODIFICATION=o.attrChange=1:o[X]=o.attrChange=0,qe.call(this,o)},o=function(e){var t,n=e.currentTarget,r=n[R],o=e.propertyName;r.hasOwnProperty(o)&&(r=r[o],(t=new CustomEvent(Q,{bubbles:!0})).attrName=r.name,t.prevValue=r.value||null,t.newValue=r.value=n[o]||null,null==t.prevValue?t[X]=t.attrChange=0:t.MODIFICATION=t.attrChange=1,qe.call(n,t))};e.value=function(e,l,a){e===Q&&this[B]&&this.setAttribute!==r&&(this[R]={className:{name:"class",value:this.className}},this.setAttribute=r,this.removeAttribute=n,t.call(this,"propertychange",o)),t.call(this,e,l,a)},me(Se,U,e)}()):Ie||(ae[U](Q,Qe),ae.setAttribute(R,1),ae.removeAttribute(R),tt&&(w=function(e){var t,n,r,o=this;if(o===e.target){for(r in t=o[R],o[R]=n=O(o),n){if(!(r in t))return A(0,o,r,t[r],n[r],X);if(n[r]!==t[r])return A(1,o,r,t[r],n[r],"MODIFICATION")}for(r in t)if(!(r in n))return A(2,o,r,t[r],n[r],$)}},A=function(e,t,n,r,o,l){var a={attrChange:e,currentTarget:t,attrName:n,prevValue:r,newValue:o};a[l]=e,i(a)},O=function(e){for(var t,n,r={},o=e.attributes,l=0,a=o.length;l$");if(n[q]="a",(t.prototype=Ne(Fe.prototype)).constructor=t,e.customElements.define(r,t,n),!o.test(g.createElement("a",{is:r}).outerHTML)||!o.test((new t).outerHTML))throw n}(function e(){return Reflect.construct(Fe,[],e)},{},"document-register-element-a"+P)}catch(e){H()}if(!t.noBuiltIn)try{if(ze.call(g,"a","a").outerHTML.indexOf("is")<0)throw{}}catch(e){Oe=function(e){return{is:e.toLowerCase()}}}}(window); -var LBe=Object.defineProperty,BBe=Object.defineProperties,VBe=Object.getOwnPropertyDescriptors,gT=Object.getOwnPropertySymbols,pX=Object.prototype.hasOwnProperty,gX=Object.prototype.propertyIsEnumerable,kr=Math.pow,mX=(t,e,n)=>e in t?LBe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,wt=(t,e)=>{for(var n in e||(e={}))pX.call(e,n)&&mX(t,n,e[n]);if(gT)for(var n of gT(e))gX.call(e,n)&&mX(t,n,e[n]);return t},ii=(t,e)=>BBe(t,VBe(e)),_X=(t,e)=>{var n={};for(var i in t)pX.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&gT)for(var i of gT(t))e.indexOf(i)<0&&gX.call(t,i)&&(n[i]=t[i]);return n};(self.webpackChunkccf_ui=self.webpackChunkccf_ui||[]).push([[179],{71440:function(t,e,n){var i=n(91052).default;t.exports=function t(e,n,i){function r(o,a){if(!n[o]){if(!e[o]){if(s)return s(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[o]={exports:{}};e[o][0].call(c.exports,function(t){return r(e[o][1][t]||t)},c,c.exports,t,e,n,i)}return n[o].exports}for(var s=void 0,o=0;o0&&r[r.length-1])&&(6===s[0]||2===s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]0?o-4:o;for(n=0;n>16&255,l[u++]=e>>8&255,l[u++]=255&e;return 2===a&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,l[u++]=255&e),1===a&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e),l},n.fromByteArray=function(t){for(var e,n=t.length,r=n%3,s=[],o=16383,a=0,l=n-r;al?l:a+o));return 1===r?s.push(i[(e=t[n-1])>>2]+i[e<<4&63]+"=="):2===r&&s.push(i[(e=(t[n-2]<<8)+t[n-1])>>10]+i[e>>4&63]+i[e<<2&63]+"="),s.join("")};for(var i=[],r=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,l=o.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t){return i[t>>18&63]+i[t>>12&63]+i[t>>6&63]+i[63&t]}function h(t,e,n){for(var i=[],r=e;r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!=(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var n=t.toString("utf16le",e);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):e}function u(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function h(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function d(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}n.StringDecoder=s,s.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(r>0&&(t.lastNeed=r-1),r):--i=0?(r>0&&(t.lastNeed=r-2),r):--i=0?(r>0&&(2===r?r=0:t.lastNeed=r-3),r):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var i=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)},s.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},{"safe-buffer":4}],6:[function(t,e,n){(function(e){(function(){"use strict";var e=t("base64-js"),i=t("ieee754");n.Buffer=o,n.SlowBuffer=function(t){return+t!=t&&(t=0),o.alloc(+t)},n.INSPECT_MAX_BYTES=50;var r=2147483647;function s(t){if(t>r)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return e.__proto__=o.prototype,e}function o(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return c(t)}return a(t,e,n)}function a(t,e,n){if("string"==typeof t)return function(t,e){if(("string"!=typeof e||""===e)&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|d(t,e),i=s(n),r=i.write(t,e);return r!==n&&(i=i.slice(0,r)),i}(t,e);if(ArrayBuffer.isView(t))return u(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,e,n){if(e<0||t.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|t}function d(t,e){if(o.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var n=t.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(t).length;default:if(r)return i?-1:L(t).length;e=(""+e).toLowerCase(),r=!0}}function p(t,e,n){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length||((void 0===n||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,n);case"utf8":case"utf-8":return E(this,e,n);case"ascii":return C(this,e,n);case"latin1":case"binary":return O(this,e,n);case"base64":return S(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,n);default:if(i)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),i=!0}}function f(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function g(t,e,n,i,r){if(0===t.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),V(n=+n)&&(n=r?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(r)return-1;n=t.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof e&&(e=o.from(e,i)),o.isBuffer(e))return 0===e.length?-1:m(t,e,n,i,r);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):m(t,[e],n,i,r);throw new TypeError("val must be string, number or Buffer")}function m(t,e,n,i,r){var s,o=1,a=t.length,l=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(t.length<2||e.length<2)return-1;o=2,a/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(r){var u=-1;for(s=n;sa&&(n=a-l),s=n;s>=0;s--){for(var h=!0,d=0;dr&&(i=r):i=r;var s=e.length;i>s/2&&(i=s/2);for(var o=0;o>8,r.push(n%256),r.push(i);return r}(e,t.length-n),t,n,i)}function S(t,n,i){return e.fromByteArray(0===n&&i===t.length?t:t.slice(n,i))}function E(t,e,n){n=Math.min(t.length,n);for(var i=[],r=e;r239?4:c>223?3:c>191?2:1;if(r+h<=n)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(s=t[r+1]))&&(l=(31&c)<<6|63&s)>127&&(u=l);break;case 3:o=t[r+2],128==(192&(s=t[r+1]))&&128==(192&o)&&(l=(15&c)<<12|(63&s)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:o=t[r+2],a=t[r+3],128==(192&(s=t[r+1]))&&128==(192&o)&&128==(192&a)&&(l=(15&c)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(i.push((u-=65536)>>>10&1023|55296),u=56320|1023&u),i.push(u),r+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);for(var n="",i=0;ie&&(t+=" ... "),""},o.prototype.compare=function(t,e,n,i,r){if(B(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||n>t.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=n)return 0;if(i>=r)return-1;if(e>=n)return 1;if(this===t)return 0;for(var s=(r>>>=0)-(i>>>=0),a=(n>>>=0)-(e>>>=0),l=Math.min(s,a),c=this.slice(i,r),u=t.slice(e,n),h=0;h>>=0,isFinite(n)?(n>>>=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-e;if((void 0===n||n>r)&&(n=r),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return b(this,t,e,n);case"utf8":case"utf-8":return y(this,t,e,n);case"ascii":return v(this,t,e,n);case"latin1":case"binary":return _(this,t,e,n);case"base64":return w(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,e,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function C(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;ri)&&(n=i);for(var r="",s=e;sn)throw new RangeError("Trying to access beyond buffer length")}function P(t,e,n,i,r,s){if(!o.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||et.length)throw new RangeError("Index out of range")}function M(t,e,n,i,r,s){if(n+i>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function D(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,8),i.write(t,e,n,r,52,8),n+8}o.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t+--e],r=1;e>0&&(r*=256);)i+=this[t+--e]*r;return i},o.prototype.readUInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),this[t]},o.prototype.readUInt16LE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]|this[t+1]<<8},o.prototype.readUInt16BE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]<<8|this[t+1]},o.prototype.readUInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},o.prototype.readUInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},o.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s=(r*=128)&&(i-=Math.pow(2,8*e)),i},o.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=e,r=1,s=this[t+--i];i>0&&(r*=256);)s+=this[t+--i]*r;return s>=(r*=128)&&(s-=Math.pow(2,8*e)),s},o.prototype.readInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},o.prototype.readInt16LE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt16BE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},o.prototype.readInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},o.prototype.readFloatLE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!0,23,4)},o.prototype.readFloatBE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!1,23,4)},o.prototype.readDoubleLE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!0,52,8)},o.prototype.readDoubleBE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!1,52,8)},o.prototype.writeUIntLE=function(t,e,n,i){t=+t,e>>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=1,s=0;for(this[e]=255&t;++s>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=n-1,s=1;for(this[e+r]=255&t;--r>=0&&(s*=256);)this[e+r]=t/s&255;return e+n},o.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,255,0),this[e]=255&t,e+1},o.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},o.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=0,o=1,a=0;for(this[e]=255&t;++s>0)-a&255;return e+n},o.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=n-1,o=1,a=0;for(this[e+s]=255&t;--s>=0&&(o*=256);)t<0&&0===a&&0!==this[e+s+1]&&(a=1),this[e+s]=(t/o>>0)-a&255;return e+n},o.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},o.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},o.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeFloatLE=function(t,e,n){return I(this,t,e,!0,n)},o.prototype.writeFloatBE=function(t,e,n){return I(this,t,e,!1,n)},o.prototype.writeDoubleLE=function(t,e,n){return D(this,t,e,!0,n)},o.prototype.writeDoubleBE=function(t,e,n){return D(this,t,e,!1,n)},o.prototype.copy=function(t,e,n,i){if(!o.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&0!==i&&(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e=0;--s)t[s+e]=this[s+n];else Uint8Array.prototype.set.call(t,this.subarray(n,i),e);return r},o.prototype.fill=function(t,e,n,i){if("string"==typeof t){if("string"==typeof e?(i=e,e=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!o.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===t.length){var r=t.charCodeAt(0);("utf8"===i&&r<128||"latin1"===i)&&(t=r)}}else"number"==typeof t&&(t&=255);if(e<0||this.length>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(s=e;s55295&&n<57344){if(!r){if(n>56319){(e-=3)>-1&&s.push(239,191,189);continue}if(o+1===i){(e-=3)>-1&&s.push(239,191,189);continue}r=n;continue}if(n<56320){(e-=3)>-1&&s.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(e-=3)>-1&&s.push(239,191,189);if(r=null,n<128){if((e-=1)<0)break;s.push(n)}else if(n<2048){if((e-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function j(t){return e.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(R,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function F(t,e,n,i){for(var r=0;r=e.length||r>=t.length);++r)e[r+n]=t[r];return r}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function V(t){return t!=t}}).call(this)}).call(this,t("buffer").Buffer)},{"base64-js":2,buffer:6,ieee754:9}],7:[function(t,e,n){"use strict";e.exports=function t(e){return null===e||"object"!=typeof e||null!=e.toJSON?JSON.stringify(e):Array.isArray(e)?"["+e.reduce((e,n,i)=>e+(0===i?"":",")+t(void 0===n||"symbol"==typeof n?null:n),"")+"]":"{"+Object.keys(e).sort().reduce((n,i,r)=>void 0===e[i]||"symbol"==typeof e[i]?n:n+(0===n.length?"":",")+t(i)+":"+t(e[i]),"")+"}"}},{}],8:[function(t,e,n){"use strict";var i,r="object"==typeof Reflect?Reflect:null,s=r&&"function"==typeof r.apply?r.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};i=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var o=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(t,e){return new Promise(function(n,i){function r(n){t.removeListener(e,s),i(n)}function s(){"function"==typeof t.removeListener&&t.removeListener("error",r),n([].slice.call(arguments))}b(t,e,s,{once:!0}),"error"!==e&&function(t,e,n){"function"==typeof t.on&&b(t,"error",e,n)}(t,r,{once:!0})})},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var l=10;function c(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function u(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function h(t,e,n,i){var r,s,o;if(c(n),void 0===(s=t._events)?(s=t._events=Object.create(null),t._eventsCount=0):(void 0!==s.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),o=s[e]),void 0===o)o=s[e]=n,++t._eventsCount;else if("function"==typeof o?o=s[e]=i?[n,o]:[o,n]:i?o.unshift(n):o.push(n),(r=u(t))>0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,function(t){console&&console.warn&&console.warn(t)}(a)}return t}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=d.bind(i);return r.listener=n,i.wrapFn=r,r}function f(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(o=e[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var l=r[t];if(void 0===l)return!1;if("function"==typeof l)s(l,this,e);else{var c=l.length,u=m(l,c);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},a.prototype.listeners=function(t){return f(this,t,!0)},a.prototype.rawListeners=function(t){return f(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):g.call(t,e)},a.prototype.listenerCount=g,a.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},{}],9:[function(t,e,n){n.read=function(t,e,n,i,r){var s,o,a=8*r-i-1,l=(1<>1,u=-7,h=n?r-1:0,d=n?-1:1,p=t[e+h];for(h+=d,s=p&(1<<-u)-1,p>>=-u,u+=a;u>0;s=256*s+t[e+h],h+=d,u-=8);for(o=s&(1<<-u)-1,s>>=-u,u+=i;u>0;o=256*o+t[e+h],h+=d,u-=8);if(0===s)s=1-c;else{if(s===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,i),s-=c}return(p?-1:1)*o*Math.pow(2,s-i)},n.write=function(t,e,n,i,r,s){var o,a,l,c=8*s-r-1,u=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,p=i?0:s-1,f=i?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?d/l:d*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(a=0,o=u):o+h>=1?(a=(e*l-1)*Math.pow(2,r),o+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,r),o=0));r>=8;t[n+p]=255&a,p+=f,a/=256,r-=8);for(o=o<0;t[n+p]=255&o,p+=f,o/=256,c-=8);t[n+p-f]|=128*g}},{}],10:[function(t,e,n){e.exports="function"==typeof Object.create?function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},{}],11:[function(t,e,n){"use strict";const{isArray:r,isObject:s,isString:o}=t("./types"),{asArray:a}=t("./util"),{prependBase:l}=t("./url"),c=t("./JsonLdError"),u=t("./ResolvedContext");function h(t){throw new c("Invalid JSON-LD syntax; @context must be an object.","jsonld.SyntaxError",{code:"invalid local context",context:t})}function d({context:t,base:e}){if(!t)return;const n=t["@context"];if(o(n))t["@context"]=l(e,n);else if(r(n))for(let i=0;i10)throw new c("Maximum number of @context URLs exceeded.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"loading remote context failed":"context overflow",max:10});if(a.has(e))throw new c("Cyclical @context URLs detected.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"recursive context inclusion":"context overflow",url:e});let i,l;a.add(e);try{l=yield n(e),i=l.document||null,o(i)&&(i=JSON.parse(i))}catch(u){throw new c("Dereferencing a URL did not result in a valid JSON-LD object. Possible causes are an inaccessible URL perhaps due to a same-origin policy (ensure the server uses CORS if you are using client-side JavaScript), too many redirects, a non-JSON response, or more than one HTTP Link Header was provided for a remote context.","jsonld.InvalidUrl",{code:"loading remote context failed",url:e,cause:u})}if(!s(i))throw new c("Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object.","jsonld.InvalidUrl",{code:"invalid remote context",url:e});return i="@context"in i?{"@context":i["@context"]}:{"@context":{}},l.contextUrl&&(r(i["@context"])||(i["@context"]=[i["@context"]]),i["@context"].push(l.contextUrl)),{context:i,remoteDoc:l}})()}}},{"./JsonLdError":12,"./ResolvedContext":16,"./types":30,"./url":31,"./util":32}],12:[function(t,e,n){"use strict";e.exports=class extends Error{constructor(t="An unspecified JSON-LD error occurred.",e="jsonld.Error",n={}){super(t),this.name=e,this.message=t,this.details=n}}},{}],13:[function(t,e,n){"use strict";e.exports=t=>{class e{toString(){return"[object JsonLdProcessor]"}}return Object.defineProperty(e,"prototype",{writable:!1,enumerable:!1}),Object.defineProperty(e.prototype,"constructor",{writable:!0,enumerable:!1,configurable:!0,value:e}),e.compact=function(e,n){return arguments.length<2?Promise.reject(new TypeError("Could not compact, too few arguments.")):t.compact(e,n)},e.expand=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not expand, too few arguments.")):t.expand(e)},e.flatten=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not flatten, too few arguments.")):t.flatten(e)},e}},{}],14:[function(t,e,n){"use strict";e.exports=t("rdf-canonize").NQuads},{"rdf-canonize":46}],15:[function(t,e,n){"use strict";e.exports=class{constructor(){this._requests={}}wrapLoader(t){const e=this;return e._loader=t,function(){return e.add.apply(e,arguments)}}add(t){var e=this;return i(function*(){let n=e._requests[t];if(n)return Promise.resolve(n);n=e._requests[t]=e._loader(t);try{return yield n}finally{delete e._requests[t]}})()}}},{}],16:[function(t,e,n){"use strict";const i=t("lru-cache");e.exports=class{constructor({document:t}){this.document=t,this.cache=new i({max:10})}getProcessed(t){return this.cache.get(t)}setProcessed(t,e){this.cache.set(t,e)}}},{"lru-cache":33}],17:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isString:a,isUndefined:l}=t("./types"),{isList:c,isValue:u,isGraph:h,isSimpleGraph:d,isSubjectReference:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{removeBase:v,prependBase:_}=t("./url"),{addValue:w,asArray:x,compareShortestLeast:S}=t("./util"),E={};function C(t,e,n){if("@nest"!==f(t,e,{vocab:!0},n))throw new r("JSON-LD compact error; nested property must have an @nest value resolving to @nest.","jsonld.SyntaxError",{code:"invalid @nest value"})}e.exports=E,E.compact=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},compactionMap:f=(()=>{})}){if(s(n)){let r=[];for(let s=0;s1&&(T=Array.from(T).sort());const k=t;for(const e of T){const n=E.compactIri({activeCtx:k,iri:e,relativeTo:{vocab:!0}}),r=g(S,n,"@context");l(r)||(t=yield b({activeCtx:t,localCtx:r,options:i,propagate:!1}))}const A=Object.keys(n).sort();for(const l of A){const p=n[l];if("@id"!==l)if("@type"!==l)if("@reverse"!==l)if("@preserve"!==l)if("@index"!==l)if("@graph"!==l&&"@list"!==l&&"@included"!==l&&m(l)){const e=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,e,p)}else{if(!s(p))throw new r("JSON-LD expansion error; expanded value must be an array.","jsonld.SyntaxError");if(0===p.length){const e=E.compactIri({activeCtx:t,iri:l,value:p,relativeTo:{vocab:!0},reverse:v}),n=t.mappings.has(e)?t.mappings.get(e)["@nest"]:null;let r=_;n&&(C(t,n,i),o(_[n])||(_[n]={}),r=_[n]),w(r,e,p,{propertyIsArray:!0})}for(const e of p){const n=E.compactIri({activeCtx:t,iri:l,value:e,relativeTo:{vocab:!0},reverse:v}),r=t.mappings.has(n)?t.mappings.get(n)["@nest"]:null;let p=_;r&&(C(t,r,i),o(_[r])||(_[r]={}),p=_[r]);const m=g(t,n,"@container")||[],b=h(e),y=c(e);let S;y?S=e["@list"]:b&&(S=e["@graph"]);let O=yield E.compact({activeCtx:t,activeProperty:n,element:y||b?S:e,options:i,compactionMap:f});if(y){if(s(O)||(O=[O]),m.includes("@list")){w(p,n,O,{valueIsArray:!0,allowDuplicate:!0});continue}O={[E.compactIri({activeCtx:t,iri:"@list",relativeTo:{vocab:!0}})]:O},"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"])}if(b)if(m.includes("@graph")&&(m.includes("@id")||m.includes("@index")&&d(e))){let r;p.hasOwnProperty(n)?r=p[n]:p[n]=r={};const s=(m.includes("@id")?e["@id"]:e["@index"])||E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}});w(r,s,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})}else m.includes("@graph")&&d(e)?(s(O)&&O.length>1&&(O={"@included":O}),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})):(s(O)&&1===O.length&&i.compactArrays&&(O=O[0]),O={[E.compactIri({activeCtx:t,iri:"@graph",relativeTo:{vocab:!0}})]:O},"@id"in e&&(O[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e["@id"]),"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"]),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")}));else if(m.includes("@language")||m.includes("@index")||m.includes("@id")||m.includes("@type")){let r,s;if(p.hasOwnProperty(n)?r=p[n]:p[n]=r={},m.includes("@language"))u(O)&&(O=O["@value"]),s=e["@language"];else if(m.includes("@index")){const i=g(t,n,"@index")||"@index",r=E.compactIri({activeCtx:t,iri:i,relativeTo:{vocab:!0}});if("@index"===i)s=e["@index"],delete O[r];else{let t;if([s,...t]=x(O[i]||[]),a(s))switch(t.length){case 0:delete O[i];break;case 1:O[i]=t[0];break;default:O[i]=t}else s=null}}else if(m.includes("@id")){const e=E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}});s=O[e],delete O[e]}else if(m.includes("@type")){const r=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}});let o;switch([s,...o]=x(O[r]||[]),o.length){case 0:delete O[r];break;case 1:O[r]=o[0];break;default:O[r]=o}1===Object.keys(O).length&&"@id"in e&&(O=yield E.compact({activeCtx:t,activeProperty:n,element:{"@id":e["@id"]},options:i,compactionMap:f}))}s||(s=E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}})),w(r,s,O,{propertyIsArray:m.includes("@set")})}else{const t=!i.compactArrays||m.includes("@set")||m.includes("@list")||s(O)&&0===O.length||"@list"===l||"@graph"===l;w(p,n,O,{propertyIsArray:t})}}}else{if((g(t,e,"@container")||[]).includes("@index"))continue;const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,p)}else{const n=yield E.compact({activeCtx:t,activeProperty:e,element:p,options:i,compactionMap:f});s(n)&&0===n.length||w(_,l,n)}else{const e=yield E.compact({activeCtx:t,activeProperty:"@reverse",element:p,options:i,compactionMap:f});for(const n in e)if(t.mappings.has(n)&&t.mappings.get(n).reverse){const r=e[n],s=(g(t,n,"@container")||[]).includes("@set")||!i.compactArrays;w(_,n,r,{propertyIsArray:s}),delete e[n]}if(Object.keys(e).length>0){const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,e)}}else{let e=x(p).map(t=>E.compactIri({activeCtx:S,iri:t,relativeTo:{vocab:!0}}));1===e.length&&(e=e[0]);const n=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}}),i=(g(t,n,"@container")||[]).includes("@set")&&y(t,1.1)||s(e)&&0===p.length;w(_,n,e,{propertyIsArray:i})}else{let e=x(p).map(e=>E.compactIri({activeCtx:t,iri:e,relativeTo:{vocab:!1},base:i.base}));1===e.length&&(e=e[0]),_[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e}}return _}return n});return function(e){return t.apply(this,arguments)}}(),E.compactIri=({activeCtx:t,iri:e,value:n=null,relativeTo:i={vocab:!1},reverse:s=!1,base:a=null})=>{if(null===e)return e;t.isPropertyTermScoped&&t.previousContext&&(t=t.previousContext);const l=t.getInverse();if(m(e)&&e in l&&"@none"in l[e]&&"@type"in l[e]["@none"]&&"@none"in l[e]["@none"]["@type"])return l[e]["@none"]["@type"]["@none"];if(i.vocab&&e in l){const i=t["@language"]||"@none",r=[];o(n)&&"@index"in n&&!("@graph"in n)&&r.push("@index","@index@set"),o(n)&&"@preserve"in n&&(n=n["@preserve"][0]),h(n)?("@index"in n&&r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n&&r.push("@graph@id","@graph@id@set"),r.push("@graph","@graph@set","@set"),"@index"in n||r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n||r.push("@graph@id","@graph@id@set")):o(n)&&!u(n)&&r.push("@id","@id@set","@type","@set@type");let a="@language",l="@null";if(s)a="@type",l="@reverse",r.push("@set");else if(c(n)){"@index"in n||r.push("@list");const t=n["@list"];if(0===t.length)a="@any",l="@none";else{let e=0===t.length?i:null,n=null;for(let i=0;it.includes("_"));t&&a.push(t.replace(/^[^_]+_/,"_"))}a.push("@none");const l=t.inverse[e];for(const o of i){if(!(o in l))continue;const t=l[o][r];for(const e of a)if(e in t)return t[e]}return null}(t,e,n,r,a,l);if(null!==d)return d}if(i.vocab&&"@vocab"in t){const n=t["@vocab"];if(0===e.indexOf(n)&&e!==n){const i=e.substr(n.length);if(!t.mappings.has(i))return i}}let d=null;const p=[];let f=t.fastCurieMap;const g=e.length-1;for(let r=0;r=0;--r){const i=p[r],s=i.terms;for(const r of s){const s=r+":"+e.substr(i.iri.length);t.mappings.get(r)._prefix&&(!t.mappings.has(s)||null===n&&t.mappings.get(s)["@id"]===e)&&(null===d||S(s,d)<0)&&(d=s)}}if(null!==d)return d;for(const[o,c]of t.mappings)if(c&&c._prefix&&e.startsWith(o+":"))throw new r(`Absolute IRI "${e}" confused with prefix "${o}".`,"jsonld.SyntaxError",{code:"IRI confused with prefix",context:t});return i.vocab?e:"@base"in t?t["@base"]?v(_(a,t["@base"]),e):e:v(a,e)},E.compactValue=({activeCtx:t,activeProperty:e,value:n,options:i})=>{if(u(n)){const i=g(t,e,"@type"),r=g(t,e,"@language"),s=g(t,e,"@direction"),o=g(t,e,"@container")||[],l="@index"in n&&!o.includes("@index");if(!l&&"@none"!==i&&(n["@type"]===i||"@language"in n&&n["@language"]===r&&"@direction"in n&&n["@direction"]===s||"@language"in n&&n["@language"]===r||"@direction"in n&&n["@direction"]===s))return n["@value"];const c=Object.keys(n).length,u=1===c||2===c&&"@index"in n&&!l,h="@language"in t,d=a(n["@value"]),p=t.mappings.has(e)&&null===t.mappings.get(e)["@language"];if(u&&"@none"!==i&&(!h||!d||p))return n["@value"];const f={};return l&&(f[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=n["@index"]),"@type"in n?f[E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}})]=E.compactIri({activeCtx:t,iri:n["@type"],relativeTo:{vocab:!0}}):"@language"in n&&(f[E.compactIri({activeCtx:t,iri:"@language",relativeTo:{vocab:!0}})]=n["@language"]),"@direction"in n&&(f[E.compactIri({activeCtx:t,iri:"@direction",relativeTo:{vocab:!0}})]=n["@direction"]),f[E.compactIri({activeCtx:t,iri:"@value",relativeTo:{vocab:!0}})]=n["@value"],f}const r=f(t,e,{vocab:!0},i),s=g(t,e,"@type"),o=E.compactIri({activeCtx:t,iri:n["@id"],relativeTo:{vocab:"@vocab"===s},base:i.base});return"@id"===s||"@vocab"===s||"@graph"===r?o:{[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]:o}}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],18:[function(t,e,n){"use strict";const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#";e.exports={LINK_HEADER_REL:"http://www.w3.org/ns/json-ld#context",LINK_HEADER_CONTEXT:"http://www.w3.org/ns/json-ld#context",RDF:i,RDF_LIST:i+"List",RDF_FIRST:i+"first",RDF_REST:i+"rest",RDF_NIL:i+"nil",RDF_TYPE:i+"type",RDF_PLAIN_LITERAL:i+"PlainLiteral",RDF_XML_LITERAL:i+"XMLLiteral",RDF_JSON_LITERAL:i+"JSON",RDF_OBJECT:i+"object",RDF_LANGSTRING:i+"langString",XSD:r,XSD_BOOLEAN:r+"boolean",XSD_DOUBLE:r+"double",XSD_INTEGER:r+"integer",XSD_STRING:r+"string"}},{}],19:[function(t,e,n){"use strict";const r=t("./util"),s=t("./JsonLdError"),{isArray:o,isObject:a,isString:l,isUndefined:c}=t("./types"),{isAbsolute:u,isRelative:h,prependBase:d}=t("./url"),{asArray:p,compareShortestLeast:f}=t("./util"),g=new Map,m=/^@[a-zA-Z]+$/,b={};function y(t,e,n,i,r,s){if(null===e||!l(e)||b.isKeyword(e))return e;if(e.match(m))return null;if(i&&i.hasOwnProperty(e)&&!0!==r.get(e)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:e,defined:r,options:s}),(n=n||{}).vocab){const n=t.mappings.get(e);if(null===n)return null;if(a(n)&&"@id"in n)return n["@id"]}const o=e.indexOf(":");if(o>0){const n=e.substr(0,o),a=e.substr(o+1);if("_"===n||0===a.indexOf("//"))return e;i&&i.hasOwnProperty(n)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:n,defined:r,options:s});const l=t.mappings.get(n);if(l&&l._prefix)return l["@id"]+a;if(u(e))return e}if(n.vocab&&"@vocab"in t)return t["@vocab"]+e;if(n.base&&"@base"in t){if(t["@base"])return d(d(s.base,t["@base"]),e)}else if(n.base)return d(s.base,e);return e}function v(t,e){if(!t||"object"!=typeof t||!e||"object"!=typeof e)return t===e;const n=Array.isArray(t);if(n!==Array.isArray(e))return!1;if(n){if(t.length!==e.length)return!1;for(let n=0;n{if(i.has(n)){if(i.get(n))return;throw new s("Cyclical context definition detected.","jsonld.CyclicalContext",{code:"cyclic IRI mapping",context:e,term:n})}let h;if(i.set(n,!1),e.hasOwnProperty(n)&&(h=e[n]),"@type"===n&&a(h)&&"@set"===(h["@container"]||"@set")&&b.processingMode(t,1.1)){const t=["@container","@id","@protected"],i=Object.keys(h);if(0===i.length||i.some(e=>!t.includes(e)))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n})}else{if(b.isKeyword(n))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n});if(n.match(m))return void console.warn('WARNING: terms beginning with "@" are reserved for future use and ignored',{term:n});if(""===n)throw new s("Invalid JSON-LD syntax; a term cannot be an empty string.","jsonld.SyntaxError",{code:"invalid term definition",context:e})}const d=t.mappings.get(n);t.mappings.has(n)&&t.mappings.delete(n);let p=!1;if((l(h)||null===h)&&(p=!0,h={"@id":h}),!a(h))throw new s("Invalid JSON-LD syntax; @context term values must be strings or objects.","jsonld.SyntaxError",{code:"invalid term definition",context:e});const f={};t.mappings.set(n,f),f.reverse=!1;const g=["@container","@id","@language","@reverse","@type"];b.processingMode(t,1.1)&&g.push("@context","@direction","@index","@nest","@prefix","@protected");for(const o in h)if(!g.includes(o))throw new s("Invalid JSON-LD syntax; a term definition must not contain "+o,"jsonld.SyntaxError",{code:"invalid term definition",context:e});const _=n.indexOf(":");if(f._termHasColon=_>0,"@reverse"in h){if("@id"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @id.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});if("@nest"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @nest.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});const o=h["@reverse"];if(!l(o))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{reverse:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));const a=y(t,o,{vocab:!0,base:!1},e,i,r);if(!u(a))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be an absolute IRI or a blank node identifier.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=a,f.reverse=!0}else if("@id"in h){let o=h["@id"];if(o&&!l(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an array of strings or a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(null===o)f["@id"]=null;else{if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{id:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));if(o!==n){if(o=y(t,o,{vocab:!0,base:!1},e,i,r),!u(o)&&!b.isKeyword(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an absolute IRI, a blank node identifier, or a keyword.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(n.match(/(?::[^:])|\//)&&y(t,n,{vocab:!0,base:!1},e,new Map(i).set(n,!0),r)!==o)throw new s("Invalid JSON-LD syntax; term in form of IRI must expand to definition.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=o,f._prefix=p&&!f._termHasColon&&o.match(/[:\/\?#\[\]@]$/)}}}if(!("@id"in f))if(f._termHasColon){const s=n.substr(0,_);if(e.hasOwnProperty(s)&&b.createTermDefinition({activeCtx:t,localCtx:e,term:s,defined:i,options:r}),t.mappings.has(s)){const e=n.substr(_+1);f["@id"]=t.mappings.get(s)["@id"]+e}else f["@id"]=n}else if("@type"===n)f["@id"]=n;else{if(!("@vocab"in t))throw new s("Invalid JSON-LD syntax; @context terms must define an @id.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e,term:n});f["@id"]=t["@vocab"]+n}if((!0===h["@protected"]||!0===i.get("@protected")&&!1!==h["@protected"])&&(t.protected[n]=!0,f.protected=!0),i.set(n,!0),"@type"in h){let n=h["@type"];if(!l(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be a string.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if("@json"===n||"@none"===n){if(b.processingMode(t,1))throw new s(`Invalid JSON-LD syntax; an @context @type value must not be "${n}" in JSON-LD 1.0 mode.`,"jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else if("@id"!==n&&"@vocab"!==n){if(n=y(t,n,{vocab:!0,base:!1},e,i,r),!u(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be an absolute IRI.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if(0===n.indexOf("_:"))throw new s("Invalid JSON-LD syntax; an @context @type value must be an IRI, not a blank node identifier.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}f["@type"]=n}if("@container"in h){const n=l(h["@container"])?[h["@container"]]:h["@container"]||[],i=["@list","@set","@index","@language"];let r=!0;const a=n.includes("@set");if(b.processingMode(t,1.1)){if(i.push("@graph","@id","@type"),n.includes("@list")){if(1!==n.length)throw new s("Invalid JSON-LD syntax; @context @container with @list must have no other values","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else if(n.includes("@graph")){if(n.some(t=>"@graph"!==t&&"@id"!==t&&"@index"!==t&&"@set"!==t))throw new s("Invalid JSON-LD syntax; @context @container with @graph must have no other values other than @id, @index, and @set","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else r&=n.length<=(a?2:1);if(n.includes("@type")&&(f["@type"]=f["@type"]||"@id",!["@id","@vocab"].includes(f["@type"])))throw new s("Invalid JSON-LD syntax; container: @type requires @type to be @id or @vocab.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else r&=!o(h["@container"]),r&=n.length<=1;if(r&=n.every(t=>i.includes(t)),r&=!(a&&n.includes("@list")),!r)throw new s("Invalid JSON-LD syntax; @context @container value must be one of the following: "+i.join(", "),"jsonld.SyntaxError",{code:"invalid container mapping",context:e});if(f.reverse&&!n.every(t=>["@index","@set"].includes(t)))throw new s("Invalid JSON-LD syntax; @context @container value for a @reverse type definition must be @index or @set.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});f["@container"]=n}if("@index"in h){if(!("@container"in h)||!f["@container"].includes("@index"))throw new s(`Invalid JSON-LD syntax; @index without @index in @container: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});if(!l(h["@index"])||0===h["@index"].indexOf("@"))throw new s(`Invalid JSON-LD syntax; @index must expand to an IRI: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});f["@index"]=h["@index"]}if("@context"in h&&(f["@context"]=h["@context"]),"@language"in h&&!("@type"in h)){let t=h["@language"];if(null!==t&&!l(t))throw new s("Invalid JSON-LD syntax; @context @language value must be a string or null.","jsonld.SyntaxError",{code:"invalid language mapping",context:e});null!==t&&(t=t.toLowerCase()),f["@language"]=t}if("@prefix"in h){if(n.match(/:|\//))throw new s("Invalid JSON-LD syntax; @context @prefix used on a compact IRI term","jsonld.SyntaxError",{code:"invalid term definition",context:e});if(b.isKeyword(f["@id"]))throw new s("Invalid JSON-LD syntax; keywords may not be used as prefixes","jsonld.SyntaxError",{code:"invalid term definition",context:e});if("boolean"!=typeof h["@prefix"])throw new s("Invalid JSON-LD syntax; @context value for @prefix must be boolean","jsonld.SyntaxError",{code:"invalid @prefix value",context:e});f._prefix=!0===h["@prefix"]}if("@direction"in h){const t=h["@direction"];if(null!==t&&"ltr"!==t&&"rtl"!==t)throw new s('Invalid JSON-LD syntax; @direction value must be null, "ltr", or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",context:e});f["@direction"]=t}if("@nest"in h){const t=h["@nest"];if(!l(t)||"@nest"!==t&&0===t.indexOf("@"))throw new s("Invalid JSON-LD syntax; @context @nest value must be a string which is not a keyword other than @nest.","jsonld.SyntaxError",{code:"invalid @nest value",context:e});f["@nest"]=t}const w=f["@id"];if("@context"===w||"@preserve"===w)throw new s("Invalid JSON-LD syntax; @context and @preserve cannot be aliased.","jsonld.SyntaxError",{code:"invalid keyword alias",context:e});if(d&&d.protected&&!c&&(t.protected[n]=!0,f.protected=!0,!v(d,f))){const t=r&&r.protectedMode||"error";if("error"===t)throw new s(`Invalid JSON-LD syntax; tried to redefine "${n}" which is a protected term.`,"jsonld.SyntaxError",{code:"protected term redefinition",context:e,term:n});if("warn"===t)return void console.warn("WARNING: protected term redefinition",{term:n});throw new s("Invalid protectedMode.","jsonld.SyntaxError",{code:"invalid protected mode",context:e,term:n,protectedMode:t})}},b.expandIri=(t,e,n,i)=>y(t,e,n,void 0,void 0,i),b.getInitialContext=t=>{const e=JSON.stringify({processingMode:t.processingMode}),n=g.get(e);if(n)return n;const i={processingMode:t.processingMode,mappings:new Map,inverse:null,getInverse:function(){const t=this;if(t.inverse)return t.inverse;const e=t.inverse={},n=t.fastCurieMap={},i={},r=(t["@language"]||"@none").toLowerCase(),a=t["@direction"],l=t.mappings,c=[...l.keys()].sort(f);for(const s of c){const t=l.get(s);if(null===t)continue;let c=t["@container"]||"@none";if(c=[].concat(c).sort().join(""),null===t["@id"])continue;const u=p(t["@id"]);for(const l of u){let u=e[l];const h=b.isKeyword(l);if(u)!h&&!t._termHasColon&&i[l].push(s);else if(e[l]=u={},!h&&!t._termHasColon){i[l]=[s];const t={iri:l,terms:i[l]};l[0]in n?n[l[0]].push(t):n[l[0]]=[t]}if(u[c]||(u[c]={"@language":{},"@type":{},"@any":{}}),u=u[c],o(s,u["@any"],"@none"),t.reverse)o(s,u["@type"],"@reverse");else if("@none"===t["@type"])o(s,u["@any"],"@none"),o(s,u["@language"],"@none"),o(s,u["@type"],"@none");else if("@type"in t)o(s,u["@type"],t["@type"]);else if("@language"in t&&"@direction"in t){const e=t["@language"],n=t["@direction"];o(s,u["@language"],e&&n?`${e}_${n}`.toLowerCase():e?e.toLowerCase():n?`_${n}`:"@null")}else"@language"in t?o(s,u["@language"],(t["@language"]||"@null").toLowerCase()):"@direction"in t?o(s,u["@language"],t["@direction"]?`_${t["@direction"]}`:"@none"):a?(o(s,u["@language"],`_${a}`),o(s,u["@language"],"@none"),o(s,u["@type"],"@none")):(o(s,u["@language"],r),o(s,u["@language"],"@none"),o(s,u["@type"],"@none"))}}for(const o in n)s(n,o,1);return e},clone:function(){const t={};return t.mappings=r.clone(this.mappings),t.clone=this.clone,t.inverse=null,t.getInverse=this.getInverse,t.protected=r.clone(this.protected),this.previousContext&&(t.previousContext=this.previousContext.clone()),t.revertToPreviousContext=this.revertToPreviousContext,"@base"in this&&(t["@base"]=this["@base"]),"@language"in this&&(t["@language"]=this["@language"]),"@vocab"in this&&(t["@vocab"]=this["@vocab"]),t},revertToPreviousContext:function(){return this.previousContext?this.previousContext.clone():this},protected:{}};return 1e4===g.size&&g.clear(),g.set(e,i),i;function s(t,e,n){const i=t[e],r=t[e]={};let o,a;for(const s of i)o=s.iri,a=n>=o.length?"":o[n],a in r?r[a].push(s):r[a]=[s];for(const l in r)""!==l&&s(r,l,n+1)}function o(t,e,n){e.hasOwnProperty(n)||(e[n]=t)}},b.getContextValue=(t,e,n)=>{if(null===e)return"@context"===n?void 0:null;if(t.mappings.has(e)){const i=t.mappings.get(e);if(c(n))return i;if(i.hasOwnProperty(n))return i[n]}return"@language"===n&&n in t||"@direction"===n&&n in t?t[n]:"@context"!==n?null:void 0},b.processingMode=(t,e)=>e.toString()>="1.1"?!t.processingMode||t.processingMode>="json-ld-"+e.toString():"json-ld-1.0"===t.processingMode,b.isKeyword=t=>{if(!l(t)||"@"!==t[0])return!1;switch(t){case"@base":case"@container":case"@context":case"@default":case"@direction":case"@embed":case"@explicit":case"@graph":case"@id":case"@included":case"@index":case"@json":case"@language":case"@list":case"@nest":case"@none":case"@omitDefault":case"@prefix":case"@preserve":case"@protected":case"@requireAll":case"@reverse":case"@set":case"@type":case"@value":case"@version":case"@vocab":return!0}return!1}},{"./JsonLdError":12,"./types":30,"./url":31,"./util":32}],20:[function(t,e,n){"use strict";const{parseLinkHeader:r,buildHeaders:s}=t("../util"),{LINK_HEADER_CONTEXT:o}=t("../constants"),a=t("../JsonLdError"),l=t("../RequestQueue"),{prependBase:c}=t("../url"),u=/(^|(\r\n))link:/i;function h(t,e,n){const i=new(t=t||XMLHttpRequest);return new Promise((t,r)=>{i.onload=()=>t(i),i.onerror=t=>r(t),i.open("GET",e,!0);for(const e in n)i.setRequestHeader(e,n[e]);i.send()})}e.exports=({secure:t,headers:e={},xhr:n}={headers:{}})=>{return e=s(e),(new l).wrapLoader(d);function d(t){return p.apply(this,arguments)}function p(){return(p=i(function*(i){if(0!==i.indexOf("http:")&&0!==i.indexOf("https:"))throw new a('URL could not be dereferenced; only "http" and "https" URLs are supported.',"jsonld.InvalidUrl",{code:"loading document failed",url:i});if(t&&0!==i.indexOf("https"))throw new a('URL could not be dereferenced; secure mode is enabled and the URL\'s scheme is not "https".',"jsonld.InvalidUrl",{code:"loading document failed",url:i});let s;try{s=yield h(n,i,e)}catch(m){throw new a("URL could not be dereferenced, an error occurred.","jsonld.LoadDocumentError",{code:"loading document failed",url:i,cause:m})}if(s.status>=400)throw new a("URL could not be dereferenced: "+s.statusText,"jsonld.LoadDocumentError",{code:"loading document failed",url:i,httpStatusCode:s.status});let l={contextUrl:null,documentUrl:i,document:s.response},p=null;const f=s.getResponseHeader("Content-Type");let g;if(u.test(s.getAllResponseHeaders())&&(g=s.getResponseHeader("Link")),g&&"application/ld+json"!==f){const t=r(g),e=t[o];if(Array.isArray(e))throw new a("URL could not be dereferenced, it has more than one associated HTTP Link Header.","jsonld.InvalidUrl",{code:"multiple context link headers",url:i});e&&(l.contextUrl=e.target),p=t.alternate,p&&"application/ld+json"==p.type&&!(f||"").match(/^application\/(\w*\+)?json$/)&&(l=yield d(c(i,p.target)))}return l})).apply(this,arguments)}}},{"../JsonLdError":12,"../RequestQueue":15,"../constants":18,"../url":31,"../util":32}],21:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isEmptyObject:a,isString:l,isUndefined:c}=t("./types"),{isList:u,isValue:h,isGraph:d,isSubject:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{isAbsolute:v}=t("./url"),{addValue:_,asArray:w,getValues:x,validateTypeValue:S}=t("./util"),E={};e.exports=E;const C=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/;function O(t){return T.apply(this,arguments)}function T(){return(T=i(function*({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x={},insideList:T,typeKey:k,typeScopedContext:M,expansionMap:I}){const D=Object.keys(i).sort(),R=[];let N;const L=i[k]&&"@json"===f(t,s(i[k])?i[k][0]:i[k],{vocab:!0},x);for(const O of D){let k,D=i[O];if("@context"===O)continue;let j=f(t,O,{vocab:!0},x);if((null===j||!v(j)&&!m(j))&&(j=I({unmappedProperty:O,activeCtx:t,activeProperty:e,parent:i,options:x,insideList:T,value:D,expandedParent:d}),void 0===j))continue;if(m(j)){if("@reverse"===n)throw new r("Invalid JSON-LD syntax; a keyword cannot be used as a @reverse property.","jsonld.SyntaxError",{code:"invalid reverse property map",value:D});if(j in d&&"@included"!==j&&"@type"!==j)throw new r("Invalid JSON-LD syntax; colliding keywords detected.","jsonld.SyntaxError",{code:"colliding keywords",keyword:j})}if("@id"===j){if(!l(D)){if(!x.isFrame)throw new r('Invalid JSON-LD syntax; "@id" value must a string.',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(o(D)){if(!a(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}else{if(!s(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(!D.every(t=>l(t)))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}}_(d,"@id",w(D).map(e=>l(e)?f(t,e,{base:!0},x):e),{propertyIsArray:x.isFrame});continue}if("@type"===j){o(D)&&(D=Object.fromEntries(Object.entries(D).map(([t,e])=>[f(M,t,{vocab:!0}),w(e).map(t=>f(M,t,{base:!0,vocab:!0}))]))),S(D,x.isFrame),_(d,"@type",w(D).map(t=>l(t)?f(M,t,{base:!0,vocab:!0},x):t),{propertyIsArray:x.isFrame});continue}if("@included"===j&&y(t,1.1)){const n=w(yield E.expand({activeCtx:t,activeProperty:e,element:D,options:x,expansionMap:I}));if(!n.every(t=>p(t)))throw new r("Invalid JSON-LD syntax; values of @included must expand to node objects.","jsonld.SyntaxError",{code:"invalid @included value",value:D});_(d,"@included",n,{propertyIsArray:!0});continue}if("@graph"===j&&!o(D)&&!s(D))throw new r('Invalid JSON-LD syntax; "@graph" value must not be an object or an array.',"jsonld.SyntaxError",{code:"invalid @graph value",value:D});if("@value"===j){N=D,L&&y(t,1.1)?d["@value"]=D:_(d,"@value",D,{propertyIsArray:x.isFrame});continue}if("@language"===j){if(null===D)continue;if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@language" value must be a string.',"jsonld.SyntaxError",{code:"invalid language-tagged string",value:D});D=w(D).map(t=>l(t)?t.toLowerCase():t);for(const t of D)l(t)&&!t.match(C)&&console.warn(`@language must be valid BCP47: ${t}`);_(d,"@language",D,{propertyIsArray:x.isFrame});continue}if("@direction"===j){if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@direction" value must be a string.',"jsonld.SyntaxError",{code:"invalid base direction",value:D});D=w(D);for(const t of D)if(l(t)&&"ltr"!==t&&"rtl"!==t)throw new r('Invalid JSON-LD syntax; "@direction" must be "ltr" or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",value:D});_(d,"@direction",D,{propertyIsArray:x.isFrame});continue}if("@index"===j){if(!l(D))throw new r('Invalid JSON-LD syntax; "@index" value must be a string.',"jsonld.SyntaxError",{code:"invalid @index value",value:D});_(d,"@index",D);continue}if("@reverse"===j){if(!o(D))throw new r('Invalid JSON-LD syntax; "@reverse" value must be an object.',"jsonld.SyntaxError",{code:"invalid @reverse value",value:D});if(k=yield E.expand({activeCtx:t,activeProperty:"@reverse",element:D,options:x,expansionMap:I}),"@reverse"in k)for(const t in k["@reverse"])_(d,t,k["@reverse"][t],{propertyIsArray:!0});let e=d["@reverse"]||null;for(const t in k){if("@reverse"===t)continue;null===e&&(e=d["@reverse"]={}),_(e,t,[],{propertyIsArray:!0});const n=k[t];for(let i=0;i"@id"===t||"@index"===t)&&(k=w(k).map(t=>({"@graph":w(t)}))),F.mappings.has(O)&&F.mappings.get(O).reverse){const t=d["@reverse"]=d["@reverse"]||{};k=w(k);for(let e=0;e"@value"===f(t,e,{vocab:!0},x)))throw new r("Invalid JSON-LD syntax; nested value must be a node object.","jsonld.SyntaxError",{code:"invalid @nest value",value:i});yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x,insideList:T,typeScopedContext:M,typeKey:k,expansionMap:I})}}})).apply(this,arguments)}function k({activeCtx:t,activeProperty:e,value:n,options:i}){if(null==n)return null;const r=f(t,e,{vocab:!0},i);if("@id"===r)return f(t,n,{base:!0},i);if("@type"===r)return f(t,n,{vocab:!0,base:!0},i);const s=g(t,e,"@type");if(("@id"===s||"@graph"===r)&&l(n))return{"@id":f(t,n,{base:!0},i)};if("@vocab"===s&&l(n))return{"@id":f(t,n,{vocab:!0,base:!0},i)};if(m(r))return n;const o={};if(s&&!["@id","@vocab","@none"].includes(s))o["@type"]=s;else if(l(n)){const n=g(t,e,"@language");null!==n&&(o["@language"]=n);const i=g(t,e,"@direction");null!==i&&(o["@direction"]=i)}return["boolean","number","string"].includes(typeof n)||(n=n.toString()),o["@value"]=n,o}function A(t,e,n,i){const o=[],a=Object.keys(e).sort();for(const c of a){const a=f(t,c,{vocab:!0},i);let u=e[c];s(u)||(u=[u]);for(const t of u){if(null===t)continue;if(!l(t))throw new r("Invalid JSON-LD syntax; language map values must be strings.","jsonld.SyntaxError",{code:"invalid language map value",languageMap:e});const i={"@value":t};"@none"!==a&&(i["@language"]=c.toLowerCase()),n&&(i["@direction"]=n),o.push(i)}}return o}function P(t){return M.apply(this,arguments)}function M(){return(M=i(function*({activeCtx:t,options:e,activeProperty:n,value:i,expansionMap:o,asGraph:a,indexKey:l,propertyIndex:u}){const p=[],m=Object.keys(i).sort(),y="@type"===l;for(let v of m){if(y){const n=g(t,v,"@context");c(n)||(t=yield b({activeCtx:t,localCtx:n,propagate:!1,options:e}))}let m,w=i[v];s(w)||(w=[w]),w=yield E.expand({activeCtx:t,activeProperty:n,element:w,options:e,insideList:!1,insideIndex:!0,expansionMap:o}),m=u?"@none"===v?"@none":k({activeCtx:t,activeProperty:l,value:v,options:e}):f(t,v,{vocab:!0},e),"@id"===l?v=f(t,v,{base:!0},e):y&&(v=m);for(let t of w){if(a&&!d(t)&&(t={"@graph":[t]}),"@type"===l)"@none"===m||(t["@type"]=t["@type"]?[v].concat(t["@type"]):[v]);else{if(h(t)&&!["@language","@type","@index"].includes(l))throw new r(`Invalid JSON-LD syntax; Attempt to add illegal key to value object: "${l}".`,"jsonld.SyntaxError",{code:"invalid value object",value:t});u?"@none"!==m&&_(t,u,m,{propertyIsArray:!0,prependValue:!0}):"@none"!==m&&!(l in t)&&(t[l]=v)}p.push(t)}}return p})).apply(this,arguments)}E.expand=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},insideList:u=!1,insideIndex:h=!1,typeScopedContext:d=null,expansionMap:p=(()=>{})}){if(null==n)return null;if("@default"===e&&(i=Object.assign({},i,{isFrame:!1})),!s(n)&&!o(n)){if(!u&&(null===e||"@graph"===f(t,e,{vocab:!0},i))){const r=yield p({unmappedValue:n,activeCtx:t,activeProperty:e,options:i,insideList:u});return void 0===r?null:r}return k({activeCtx:t,activeProperty:e,value:n,options:i})}if(s(n)){let r=[];const o=g(t,e,"@container")||[];u=u||o.includes("@list");for(let a=0;a1?e.slice().sort():e:[e];for(const n of s){const e=g(d,n,"@context");c(e)||(t=yield b({activeCtx:t,localCtx:e,options:i,propagate:!1}))}}let A={};yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:m,element:n,expandedParent:A,options:i,insideList:u,typeKey:T,typeScopedContext:d,expansionMap:p}),S=Object.keys(A);let P=S.length;if("@value"in A){if("@type"in A&&("@language"in A||"@direction"in A))throw new r('Invalid JSON-LD syntax; an element containing "@value" may not contain both "@type" and either "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});let s=P-1;if("@type"in A&&(s-=1),"@index"in A&&(s-=1),"@language"in A&&(s-=1),"@direction"in A&&(s-=1),0!==s)throw new r('Invalid JSON-LD syntax; an element containing "@value" may only have an "@index" property and either "@type" or either or both "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});const o=null===A["@value"]?[]:w(A["@value"]),c=x(A,"@type");if(!y(t,1.1)||!c.includes("@json")||1!==c.length)if(0===o.length){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}else{if(!o.every(t=>l(t)||a(t))&&"@language"in A)throw new r("Invalid JSON-LD syntax; only strings may be language-tagged.","jsonld.SyntaxError",{code:"invalid language-tagged value",element:A});if(!c.every(t=>v(t)&&!(l(t)&&0===t.indexOf("_:"))||a(t)))throw new r('Invalid JSON-LD syntax; an element containing "@value" and "@type" must have an absolute IRI for the value of "@type".',"jsonld.SyntaxError",{code:"invalid typed value",element:A})}}else if("@type"in A&&!s(A["@type"]))A["@type"]=[A["@type"]];else if("@set"in A||"@list"in A){if(P>1&&(2!==P||!("@index"in A)))throw new r('Invalid JSON-LD syntax; if an element has the property "@set" or "@list", then it can have at most one other property that is "@index".',"jsonld.SyntaxError",{code:"invalid set or list object",element:A});"@set"in A&&(A=A["@set"],S=Object.keys(A),P=S.length)}else if(1===P&&"@language"in A){const r=yield p(A,{unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}if(o(A)&&!i.keepFreeFloatingNodes&&!u&&(null===e||"@graph"===m)&&(0===P||"@value"in A||"@list"in A||1===P&&"@id"in A)){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}return A});return function(e){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],22:[function(t,e,n){"use strict";const{isSubjectReference:i}=t("./graphTypes"),{createMergedNodeMap:r}=t("./nodeMap"),s={};e.exports=s,s.flatten=t=>{const e=r(t),n=[],s=Object.keys(e).sort();for(let r=0;r=0;--i){const r=n[i];if(r.graph===e&&r.subject["@id"]===t["@id"])return!0}return!1}function f(t,e,n){const i="@"+n;let r=i in t?t[i][0]:e[n];if("embed"===n)if(!0===r)r="@once";else if(!1===r)r="@never";else if("@always"!==r&&"@never"!==r&&"@link"!==r&&"@first"!==r&&"@last"!==r&&"@once"!==r)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:t});return r}function g(t){if(!s.isArray(t)||1!==t.length||!s.isObject(t[0]))throw new l("Invalid JSON-LD syntax; a JSON-LD frame must be a single object.","jsonld.SyntaxError",{frame:t});if("@id"in t[0])for(const e of o.asArray(t[0]["@id"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @id in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t});if("@type"in t[0])for(const e of o.asArray(t[0]["@type"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @type in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t})}function m(t,e,n,a){let l=!0,c=!1;for(const u in n){let h=!1;const d=o.getValues(e,u),p=0===o.getValues(n,u).length;if("@id"===u){if(s.isEmptyObject(n["@id"][0]||{})?h=!0:n["@id"].length>=0&&(h=n["@id"].includes(d[0])),!a.requireAll)return h}else if("@type"===u){if(l=!1,p){if(d.length>0)return!1;h=!0}else if(1===n["@type"].length&&s.isEmptyObject(n["@type"][0]))h=d.length>0;else for(const t of n["@type"])h=!(!s.isObject(t)||!("@default"in t))||h||d.some(e=>e===t);if(!a.requireAll)return h}else{if(i(u))continue;{const e=o.getValues(n,u)[0];let i=!1;if(e&&(g([e]),i="@default"in e),l=!1,0===d.length&&i)continue;if(d.length>0&&p)return!1;if(void 0===e){if(d.length>0)return!1;h=!0}else if(r.isList(e)){const n=e["@list"][0];if(r.isList(d[0])){const e=d[0]["@list"];r.isValue(n)?h=e.some(t=>w(n,t)):(r.isSubject(n)||r.isSubjectReference(n))&&(h=e.some(e=>_(t,n,e,a)))}}else h=r.isValue(e)?d.some(t=>w(e,t)):r.isSubjectReference(e)?d.some(n=>_(t,e,n,a)):!!s.isObject(e)&&d.length>0}}if(!h&&a.requireAll)return!1;c=c||h}return l||c}function b(t,e){const n=t.uniqueEmbeds[t.graph],i=n[e],r=i.parent,a=i.property,l={"@id":e};if(s.isArray(r)){for(let t=0;t{const e=Object.keys(n);for(const i of e)i in n&&s.isObject(n[i].parent)&&n[i].parent["@id"]===t&&(delete n[i],c(i))};c(e)}function y(t,e){if(s.isArray(t))return t.map(t=>y(t,e));if(s.isObject(t)){if("@preserve"in t)return t["@preserve"][0];if(r.isValue(t))return t;if(r.isList(t))return t["@list"]=y(t["@list"],e),t;if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)"@id"===n&&e.bnodesToClear.includes(t[n])?delete t["@id"]:t[n]=y(t[n],e)}return t}function v(t,e,n){s.isObject(t)?o.addValue(t,e,n,{propertyIsArray:!0}):t.push(n)}function _(t,e,n,i){if(!("@id"in n))return!1;const r=t.subjects[n["@id"]];return r&&m(t,r,e,i)}function w(t,e){const n=e["@value"],i=e["@type"],r=e["@language"],o=t["@value"]?s.isArray(t["@value"])?t["@value"]:[t["@value"]]:[],a=t["@type"]?s.isArray(t["@type"])?t["@type"]:[t["@type"]]:[],l=t["@language"]?s.isArray(t["@language"])?t["@language"]:[t["@language"]]:[];return 0===o.length&&0===a.length&&0===l.length||!(!o.includes(n)&&!s.isEmptyObject(o[0])||!(!i&&0===a.length||a.includes(i)||i&&s.isEmptyObject(a[0]))||!(!r&&0===l.length||l.includes(r)||r&&s.isEmptyObject(l[0])))}e.exports=h,h.frameMergedOrDefault=(t,e,n)=>{const i={options:n,embedded:!1,graph:"@default",graphMap:{"@default":{}},subjectStack:[],link:{},bnodeMap:{}},r=new o.IdentifierIssuer("_:b");c(t,i.graphMap,"@default",r),n.merged&&(i.graphMap["@merged"]=u(i.graphMap),i.graph="@merged"),i.subjects=i.graphMap[i.graph];const s=[];return h.frame(i,Object.keys(i.subjects).sort(),e,s),n.pruneBlankNodeIdentifiers&&(n.bnodesToClear=Object.keys(i.bnodeMap).filter(t=>1===i.bnodeMap[t].length)),n.link={},y(s,n)},h.frame=(t,e,n,a,c=null)=>{g(n);const u=t.options,y={embed:f(n=n[0],u,"embed"),explicit:f(n,u,"explicit"),requireAll:f(n,u,"requireAll")};t.link.hasOwnProperty(t.graph)||(t.link[t.graph]={});const _=t.link[t.graph],x=function(t,e,n,i){const r={};for(const s of e){const e=t.graphMap[t.graph][s];m(t,e,n,i)&&(r[s]=e)}return r}(t,e,n,y),S=Object.keys(x).sort();for(const g of S){const m=x[g];if(null===c?t.uniqueEmbeds={[t.graph]:{}}:t.uniqueEmbeds[t.graph]=t.uniqueEmbeds[t.graph]||{},"@link"===y.embed&&g in _){v(a,c,_[g]);continue}const S={"@id":g};if(0===g.indexOf("_:")&&o.addValue(t.bnodeMap,g,S,{propertyIsArray:!0}),_[g]=S,("@first"===y.embed||"@last"===y.embed)&&t.is11)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:n});if(t.embedded||!t.uniqueEmbeds[t.graph].hasOwnProperty(g)){if(t.embedded&&("@never"===y.embed||p(m,t.graph,t.subjectStack))){v(a,c,S);continue}if(t.embedded&&("@first"==y.embed||"@once"==y.embed)&&t.uniqueEmbeds[t.graph].hasOwnProperty(g)){v(a,c,S);continue}if("@last"===y.embed&&g in t.uniqueEmbeds[t.graph]&&b(t,g),t.uniqueEmbeds[t.graph][g]={parent:a,property:c},t.subjectStack.push({subject:m,graph:t.graph}),g in t.graphMap){let e=!1,i=null;"@graph"in n?(i=n["@graph"][0],e=!("@merged"===g||"@default"===g),s.isObject(i)||(i={})):(e="@merged"!==t.graph,i={}),e&&h.frame(ii(wt({},t),{graph:g,embedded:!1}),Object.keys(t.graphMap[g]).sort(),[i],S,"@graph")}"@included"in n&&h.frame(ii(wt({},t),{embedded:!1}),e,n["@included"],S,"@included");for(const e of Object.keys(m).sort())if(i(e)){if(S[e]=o.clone(m[e]),"@type"===e)for(const e of m["@type"])0===e.indexOf("_:")&&o.addValue(t.bnodeMap,e,S,{propertyIsArray:!0})}else if(!y.explicit||e in n)for(const i of m[e]){const s=e in n?n[e]:d(y);if(r.isList(i)){const s=n[e]&&n[e][0]&&n[e][0]["@list"]?n[e][0]["@list"]:d(y),a={"@list":[]};v(S,e,a);const l=i["@list"];for(const e of l)r.isSubjectReference(e)?h.frame(ii(wt({},t),{embedded:!0}),[e["@id"]],s,a,"@list"):v(a,"@list",o.clone(e))}else r.isSubjectReference(i)?h.frame(ii(wt({},t),{embedded:!0}),[i["@id"]],s,S,e):w(s[0],i)&&v(S,e,o.clone(i))}for(const t of Object.keys(n).sort()){if("@type"===t){if(!s.isObject(n[t][0])||!("@default"in n[t][0]))continue}else if(i(t))continue;const e=n[t][0]||{};if(!f(e,u,"omitDefault")&&!(t in S)){let n="@null";"@default"in e&&(n=o.clone(e["@default"])),s.isArray(n)||(n=[n]),S[t]=[{"@preserve":n}]}}for(const e of Object.keys(n["@reverse"]||{}).sort()){const i=n["@reverse"][e];for(const n of Object.keys(t.subjects))o.getValues(t.subjects[n],e).some(t=>t["@id"]===g)&&(S["@reverse"]=S["@reverse"]||{},o.addValue(S["@reverse"],e,[],{propertyIsArray:!0}),h.frame(ii(wt({},t),{embedded:!0}),[n],i,S["@reverse"][e],c))}v(a,c,S),t.subjectStack.pop()}}},h.cleanupNull=(t,e)=>{if(s.isArray(t))return t.map(t=>h.cleanupNull(t,e)).filter(t=>t);if("@null"===t)return null;if(s.isObject(t)){if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)t[n]=h.cleanupNull(t[n],e)}return t}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32}],24:[function(t,e,n){"use strict";const r=t("./JsonLdError"),s=t("./graphTypes"),o=t("./types"),a=t("./util"),{RDF_LIST:l,RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,XSD_BOOLEAN:f,XSD_DOUBLE:g,XSD_INTEGER:m,XSD_STRING:b}=t("./constants"),y=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/,v={};function _(t,e,n){if(t.termType.endsWith("Node"))return{"@id":t.value};const i={"@value":t.value};if(t.language)i["@language"]=t.language;else{let a=t.datatype.value;if(a||(a=b),a===p){a="@json";try{i["@value"]=JSON.parse(i["@value"])}catch(s){throw new r("JSON literal could not be parsed.","jsonld.InvalidJsonLiteral",{code:"invalid JSON literal",value:i["@value"],cause:s})}}if(e){if(a===f)"true"===i["@value"]?i["@value"]=!0:"false"===i["@value"]&&(i["@value"]=!1);else if(o.isNumeric(i["@value"]))if(a===m){const t=parseInt(i["@value"],10);t.toFixed(0)===i["@value"]&&(i["@value"]=t)}else a===g&&(i["@value"]=parseFloat(i["@value"]));[f,m,g,b].includes(a)||(i["@type"]=a)}else if("i18n-datatype"===n&&a.startsWith("https://www.w3.org/ns/i18n#")){const[,t,e]=a.split(/[#_]/);t.length>0&&(i["@language"]=t,t.match(y)||console.warn(`@language must be valid BCP47: ${t}`)),i["@direction"]=e}else a!==b&&(i["@type"]=a)}return i}e.exports=v,v.fromRDF=function(){var t=i(function*(t,{useRdfType:e=!1,useNativeTypes:n=!1,rdfDirection:i=null}){const r={},p={"@default":r},f={};for(const s of t){const t="DefaultGraph"===s.graph.termType?"@default":s.graph.value;t in p||(p[t]={}),"@default"!==t&&!(t in r)&&(r[t]={"@id":t});const o=p[t],l=s.subject.value,c=s.predicate.value,u=s.object;l in o||(o[l]={"@id":l});const g=o[l],m=u.termType.endsWith("Node");if(m&&!(u.value in o)&&(o[u.value]={"@id":u.value}),c===d&&!e&&m){a.addValue(g,"@type",u.value,{propertyIsArray:!0});continue}const b=_(u,n,i);if(a.addValue(g,c,b,{propertyIsArray:!0}),m)if(u.value===h){const t=o[u.value];"usages"in t||(t.usages=[]),t.usages.push({node:g,property:c,value:b})}else f[u.value]=!(u.value in f)&&{node:g,property:c,value:b}}for(const a in p){const t=p[a];if(!(h in t))continue;const e=t[h];if(e.usages){for(let n of e.usages){let e=n.node,i=n.property,r=n.value;const a=[],h=[];let d=Object.keys(e).length;for(;i===u&&o.isObject(f[e["@id"]])&&o.isArray(e[c])&&1===e[c].length&&o.isArray(e[u])&&1===e[u].length&&(3===d||4===d&&o.isArray(e["@type"])&&1===e["@type"].length&&e["@type"][0]===l)&&(a.push(e[c][0]),h.push(e["@id"]),n=f[e["@id"]],e=n.node,i=n.property,r=n.value,d=Object.keys(e).length,s.isBlankNode(e)););delete r["@id"],r["@list"]=a.reverse();for(const n of h)delete t[n]}delete e.usages}}const g=[],m=Object.keys(r).sort();for(const o of m){const t=r[o];if(o in p){const e=t["@graph"]=[],n=p[o],i=Object.keys(n).sort();for(const t of i){const i=n[t];s.isSubjectReference(i)||e.push(i)}}s.isSubjectReference(t)||g.push(t)}return g});return function(e,n){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./constants":18,"./graphTypes":25,"./types":30,"./util":32}],25:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.isSubject=t=>!(!i.isObject(t)||"@value"in t||"@set"in t||"@list"in t)&&(Object.keys(t).length>1||!("@id"in t)),r.isSubjectReference=t=>i.isObject(t)&&1===Object.keys(t).length&&"@id"in t,r.isValue=t=>i.isObject(t)&&"@value"in t,r.isList=t=>i.isObject(t)&&"@list"in t,r.isGraph=t=>i.isObject(t)&&"@graph"in t&&1===Object.keys(t).filter(t=>"@id"!==t&&"@index"!==t).length,r.isSimpleGraph=t=>r.isGraph(t)&&!("@id"in t),r.isBlankNode=t=>!!i.isObject(t)&&("@id"in t?0===t["@id"].indexOf("_:"):0===Object.keys(t).length||!("@value"in t||"@set"in t||"@list"in t))},{"./types":30}],26:[function(t,e,n){const r=t("rdf-canonize"),s=t("./platform"),o=t("./util"),a=t("./ContextResolver"),l=o.IdentifierIssuer,c=t("./JsonLdError"),u=t("lru-cache"),h=t("./NQuads"),{expand:d}=t("./expand"),{flatten:p}=t("./flatten"),{fromRDF:f}=t("./fromRdf"),{toRDF:g}=t("./toRdf"),{frameMergedOrDefault:m,cleanupNull:b}=t("./frame"),{isArray:y,isObject:v,isString:_}=t("./types"),{isSubjectReference:w}=t("./graphTypes"),{expandIri:x,getInitialContext:S,process:E,processingMode:C}=t("./context"),{compact:O,compactIri:T}=t("./compact"),{createNodeMap:k,createMergedNodeMap:A,mergeNodeMaps:P}=t("./nodeMap"),M=function(e){const n={},M=new u({max:100});function I(t,n){var i=n,{documentLoader:r=e.documentLoader}=i,s=_X(i,["documentLoader"]);return Object.assign({},{documentLoader:r},s,t)}return e.compact=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not compact, too few arguments.");if(null===n)throw new c("The compaction context must not be null.","jsonld.CompactError",{code:"invalid local context"});if(null===t)return null;let r;(i=I(i,{base:_(t)?t:"",compactArrays:!0,compactToRelative:!0,graph:!1,skipExpansion:!1,link:!1,issuer:new l("_:b"),contextResolver:new a({sharedCache:M})})).link&&(i.skipExpansion=!0),i.compactToRelative||delete i.base,r=i.skipExpansion?t:yield e.expand(t,i);const s=yield e.processContext(S(i),n,i);let u=yield O({activeCtx:s,element:r,options:i,compactionMap:i.compactionMap});i.compactArrays&&!i.graph&&y(u)?1===u.length?u=u[0]:0===u.length&&(u={}):i.graph&&v(u)&&(u=[u]),v(n)&&"@context"in n&&(n=n["@context"]),n=o.clone(n),y(n)||(n=[n]);const h=n;n=[];for(let e=0;e0)&&n.push(h[e]);const d=n.length>0;if(1===n.length&&(n=n[0]),y(u)){const t=T({activeCtx:s,iri:"@graph",relativeTo:{vocab:!0}}),e=u;u={},d&&(u["@context"]=n),u[t]=e}else if(v(u)&&d){const t=u;u={"@context":n};for(const e in t)u[e]=t[e]}return u});return function(e,n,i){return t.apply(this,arguments)}}(),e.expand=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not expand, too few arguments.");!1===(n=I(n,{keepFreeFloatingNodes:!1,contextResolver:new a({sharedCache:M})})).expansionMap&&(n.expansionMap=void 0);const i={},r=[];if("expandContext"in n){const t=o.clone(n.expandContext);i.expandContext=v(t)&&"@context"in t?t:{"@context":t},r.push(i.expandContext)}let s;if(_(t)){const o=yield e.get(t,n);s=o.documentUrl,i.input=o.document,o.contextUrl&&(i.remoteContext={"@context":o.contextUrl},r.push(i.remoteContext))}else i.input=o.clone(t);"base"in n||(n.base=s||"");let l=S(n);for(const e of r)l=yield E({activeCtx:l,localCtx:e,options:n});let c=yield d({activeCtx:l,element:i.input,options:n,expansionMap:n.expansionMap});return v(c)&&"@graph"in c&&1===Object.keys(c).length?c=c["@graph"]:null===c&&(c=[]),y(c)||(c=[c]),c});return function(e,n){return t.apply(this,arguments)}}(),e.flatten=function(){var t=i(function*(t,n,i){if(arguments.length<1)return new TypeError("Could not flatten, too few arguments.");n="function"==typeof n?null:n||null,i=I(i,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const r=yield e.expand(t,i),s=p(r);return null===n?s:(i.graph=!0,i.skipExpansion=!0,yield e.compact(s,n,i))});return function(e,n,i){return t.apply(this,arguments)}}(),e.frame=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not frame, too few arguments.");if(i=I(i,{base:_(t)?t:"",embed:"@once",explicit:!1,requireAll:!1,omitDefault:!1,bnodesToClear:[],contextResolver:new a({sharedCache:M})}),_(n)){const t=yield e.get(n,i);if(n=t.document,t.contextUrl){let e=n["@context"];e?y(e)?e.push(t.contextUrl):e=[e,t.contextUrl]:e=t.contextUrl,n["@context"]=e}}const r=n&&n["@context"]||{},s=yield e.processContext(S(i),r,i);i.hasOwnProperty("omitGraph")||(i.omitGraph=C(s,1.1)),i.hasOwnProperty("pruneBlankNodeIdentifiers")||(i.pruneBlankNodeIdentifiers=C(s,1.1));const o=yield e.expand(t,i),l=wt({},i);l.isFrame=!0,l.keepFreeFloatingNodes=!0;const c=yield e.expand(n,l),u=Object.keys(n).map(t=>x(s,t,{vocab:!0}));l.merged=!u.includes("@graph"),l.is11=C(s,1.1);const h=m(o,c,l);l.graph=!i.omitGraph,l.skipExpansion=!0,l.link={},l.framing=!0;let d=yield e.compact(h,r,l);return l.link={},d=b(d,l),d});return function(e,n,i){return t.apply(this,arguments)}}(),e.link=function(){var t=i(function*(t,n,i){const r={};return n&&(r["@context"]=n),r["@embed"]="@link",e.frame(t,r,i)});return function(e,n,i){return t.apply(this,arguments)}}(),e.normalize=e.canonize=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not canonize, too few arguments.");if("inputFormat"in(n=I(n,{base:_(t)?t:"",algorithm:"URDNA2015",skipExpansion:!1,contextResolver:new a({sharedCache:M})}))){if("application/n-quads"!==n.inputFormat&&"application/nquads"!==n.inputFormat)throw new c("Unknown canonicalization input format.","jsonld.CanonizeError");const e=h.parse(t);return r.canonize(e,n)}const i=wt({},n);delete i.format,i.produceGeneralizedRdf=!1;const s=yield e.toRDF(t,i);return r.canonize(s,n)});return function(e,n){return t.apply(this,arguments)}}(),e.fromRDF=function(){var t=i(function*(t,e){if(arguments.length<1)throw new TypeError("Could not convert from RDF, too few arguments.");e=I(e,{format:_(t)?"application/n-quads":void 0});const{format:i}=e;let{rdfParser:r}=e;if(i){if(r=r||n[i],!r)throw new c("Unknown input format.","jsonld.UnknownFormat",{format:i})}else r=()=>t;const s=yield r(t);return f(s,e)});return function(e,n){return t.apply(this,arguments)}}(),e.toRDF=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not convert to RDF, too few arguments.");let i;i=(n=I(n,{base:_(t)?t:"",skipExpansion:!1,contextResolver:new a({sharedCache:M})})).skipExpansion?t:yield e.expand(t,n);const r=g(i,n);if(n.format){if("application/n-quads"===n.format||"application/nquads"===n.format)return h.serialize(r);throw new c("Unknown output format.","jsonld.UnknownFormat",{format:n.format})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.createNodeMap=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not create node map, too few arguments.");n=I(n,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const i=yield e.expand(t,n);return A(i,n)});return function(e,n){return t.apply(this,arguments)}}(),e.merge=function(){var t=i(function*(t,n,i){if(arguments.length<1)throw new TypeError("Could not merge, too few arguments.");if(!y(t))throw new TypeError('Could not merge, "docs" must be an array.');n="function"==typeof n?null:n||null,i=I(i,{contextResolver:new a({sharedCache:M})});const r=yield Promise.all(t.map(t=>{const n=wt({},i);return e.expand(t,n)}));let s=!0;"mergeNodes"in i&&(s=i.mergeNodes);const c=i.issuer||new l("_:b"),u={"@default":{}};for(let e=0;ee._documentLoader,set:t=>e._documentLoader=t}),e.documentLoader=function(){var t=i(function*(t){throw new c("Could not retrieve a JSON-LD document from the URL. URL dereferencing not implemented.","jsonld.LoadDocumentError",{code:"loading document failed",url:t})});return function(e){return t.apply(this,arguments)}}(),e.get=function(){var t=i(function*(t,n){let i;i="function"==typeof n.documentLoader?n.documentLoader:e.documentLoader;const r=yield i(t);try{if(!r.document)throw new c("No remote document found at the given URL.","jsonld.NullRemoteDocument");_(r.document)&&(r.document=JSON.parse(r.document))}catch(s){throw new c("Could not retrieve a JSON-LD document from the URL.","jsonld.LoadDocumentError",{code:"loading document failed",cause:s,remoteDoc:r})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.processContext=function(){var t=i(function*(t,e,n){return n=I(n,{base:"",contextResolver:new a({sharedCache:M})}),null===e?S(n):(e=o.clone(e),v(e)&&"@context"in e||(e={"@context":e}),E({activeCtx:t,localCtx:e,options:n}))});return function(e,n,i){return t.apply(this,arguments)}}(),e.getContextValue=t("./context").getContextValue,e.documentLoaders={},e.useDocumentLoader=function(t){if(!(t in e.documentLoaders))throw new c('Unknown document loader type: "'+t+'"',"jsonld.UnknownDocumentLoader",{type:t});e.documentLoader=e.documentLoaders[t].apply(e,Array.prototype.slice.call(arguments,1))},e.registerRDFParser=function(t,e){n[t]=e},e.unregisterRDFParser=function(t){delete n[t]},e.registerRDFParser("application/n-quads",h.parse),e.registerRDFParser("application/nquads",h.parse),e.url=t("./url"),e.util=o,Object.assign(e,o),e.promises=e,e.RequestQueue=t("./RequestQueue"),e.JsonLdProcessor=t("./JsonLdProcessor")(e),s.setupGlobals(e),s.setupDocumentLoaders(e),e},I=function(){return M(function(){return I()})};M(I),e.exports=I},{"./ContextResolver":11,"./JsonLdError":12,"./JsonLdProcessor":13,"./NQuads":14,"./RequestQueue":15,"./compact":17,"./context":19,"./expand":21,"./flatten":22,"./frame":23,"./fromRdf":24,"./graphTypes":25,"./nodeMap":27,"./platform":28,"./toRdf":29,"./types":30,"./url":31,"./util":32,"lru-cache":33,"rdf-canonize":46}],27:[function(t,e,n){"use strict";const{isKeyword:i}=t("./context"),r=t("./graphTypes"),s=t("./types"),o=t("./util"),a=t("./JsonLdError"),l={};e.exports=l,l.createMergedNodeMap=(t,e)=>{const n=(e=e||{}).issuer||new o.IdentifierIssuer("_:b"),i={"@default":{}};return l.createNodeMap(t,i,"@default",n),l.mergeNodeMaps(i)},l.createNodeMap=(t,e,n,c,u,h)=>{if(s.isArray(t)){for(const i of t)l.createNodeMap(i,e,n,c,void 0,h);return}if(!s.isObject(t))return void(h&&h.push(t));if(r.isValue(t)){if("@type"in t){let e=t["@type"];0===e.indexOf("_:")&&(t["@type"]=e=c.getId(e))}return void(h&&h.push(t))}if(h&&r.isList(t)){const i=[];return l.createNodeMap(t["@list"],e,n,c,u,i),void h.push({"@list":i})}if("@type"in t){const e=t["@type"];for(const t of e)0===t.indexOf("_:")&&c.getId(t)}s.isUndefined(u)&&(u=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"]),h&&h.push({"@id":u});const d=e[n],p=d[u]=d[u]||{};p["@id"]=u;const f=Object.keys(t).sort();for(let s of f){if("@id"===s)continue;if("@reverse"===s){const i={"@id":u},s=t["@reverse"];for(const t in s){const a=s[t];for(const s of a){let a=s["@id"];r.isBlankNode(s)&&(a=c.getId(a)),l.createNodeMap(s,e,n,c,a),o.addValue(d[a],t,i,{propertyIsArray:!0,allowDuplicate:!1})}}continue}if("@graph"===s){u in e||(e[u]={}),l.createNodeMap(t[s],e,u,c);continue}if("@included"===s){l.createNodeMap(t[s],e,n,c);continue}if("@type"!==s&&i(s)){if("@index"===s&&s in p&&(t[s]!==p[s]||t[s]["@id"]!==p[s]["@id"]))throw new a("Invalid JSON-LD syntax; conflicting @index property detected.","jsonld.SyntaxError",{code:"conflicting indexes",subject:p});p[s]=t[s];continue}const h=t[s];if(0===s.indexOf("_:")&&(s=c.getId(s)),0!==h.length)for(let t of h)if("@type"===s&&(t=0===t.indexOf("_:")?c.getId(t):t),r.isSubject(t)||r.isSubjectReference(t)){if("@id"in t&&!t["@id"])continue;const i=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"];o.addValue(p,s,{"@id":i},{propertyIsArray:!0,allowDuplicate:!1}),l.createNodeMap(t,e,n,c,i)}else if(r.isValue(t))o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else if(r.isList(t)){const i=[];l.createNodeMap(t["@list"],e,n,c,u,i),t={"@list":i},o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1})}else l.createNodeMap(t,e,n,c,u),o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else o.addValue(p,s,[],{propertyIsArray:!0})}},l.mergeNodeMapGraphs=t=>{const e={};for(const n of Object.keys(t).sort())for(const r of Object.keys(t[n]).sort()){const s=t[n][r];r in e||(e[r]={"@id":r});const a=e[r];for(const t of Object.keys(s).sort())if(i(t)&&"@type"!==t)a[t]=o.clone(s[t]);else for(const e of s[t])o.addValue(a,t,o.clone(e),{propertyIsArray:!0,allowDuplicate:!1})}return e},l.mergeNodeMaps=t=>{const e=t["@default"],n=Object.keys(t).sort();for(const i of n){if("@default"===i)continue;const n=t[i];let s=e[i];s?"@graph"in s||(s["@graph"]=[]):e[i]=s={"@id":i,"@graph":[]};const o=s["@graph"];for(const t of Object.keys(n).sort()){const e=n[t];r.isSubjectReference(e)||o.push(e)}}return e}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./util":32}],28:[function(t,e,n){"use strict";const i=t("./documentLoaders/xhr"),r={};e.exports=r,r.setupDocumentLoaders=function(t){"undefined"!=typeof XMLHttpRequest&&(t.documentLoaders.xhr=i,t.useDocumentLoader("xhr"))},r.setupGlobals=function(t){void 0===globalThis.JsonLdProcessor&&Object.defineProperty(globalThis,"JsonLdProcessor",{writable:!0,enumerable:!1,configurable:!0,value:t.JsonLdProcessor})}},{"./documentLoaders/xhr":20}],29:[function(t,e,n){"use strict";const{createNodeMap:i}=t("./nodeMap"),{isKeyword:r}=t("./context"),s=t("./graphTypes"),o=t("canonicalize"),a=t("./types"),l=t("./util"),{RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,RDF_LANGSTRING:f,XSD_BOOLEAN:g,XSD_DOUBLE:m,XSD_INTEGER:b,XSD_STRING:y}=t("./constants"),{isAbsolute:v}=t("./url"),_={};function w(t,e,n,i,s){const o=Object.keys(e).sort();for(const a of o){const o=e[a],l=Object.keys(o).sort();for(let e of l){const l=o[e];if("@type"===e)e=d;else if(r(e))continue;for(const r of l){const o={termType:a.startsWith("_:")?"BlankNode":"NamedNode",value:a};if(!v(a))continue;const l={termType:e.startsWith("_:")?"BlankNode":"NamedNode",value:e};if(!v(e)||"BlankNode"===l.termType&&!s.produceGeneralizedRdf)continue;const c=x(r,i,t,n,s.rdfDirection);c&&t.push({subject:o,predicate:l,object:c,graph:n})}}}}function x(t,e,n,i,r){const l={};if(s.isValue(t)){l.termType="Literal",l.value=void 0,l.datatype={termType:"NamedNode"};let e=t["@value"];const n=t["@type"]||null;"@json"===n?(l.value=o(e),l.datatype.value=p):a.isBoolean(e)?(l.value=e.toString(),l.datatype.value=n||g):a.isDouble(e)||n===m?(a.isDouble(e)||(e=parseFloat(e)),l.value=e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),l.datatype.value=n||m):a.isNumber(e)?(l.value=e.toFixed(0),l.datatype.value=n||b):"i18n-datatype"===r&&"@direction"in t?(l.datatype.value="https://www.w3.org/ns/i18n#"+(t["@language"]||"")+`_${t["@direction"]}`,l.value=e):"@language"in t?(l.value=e,l.datatype.value=n||f,l.language=t["@language"]):(l.value=e,l.datatype.value=n||y)}else if(s.isList(t)){const s=function(t,e,n,i,r){const s={termType:"NamedNode",value:c},o={termType:"NamedNode",value:u},a={termType:"NamedNode",value:h},l=t.pop(),d=l?{termType:"BlankNode",value:e.getId()}:a;let p=d;for(const c of t){const t=x(c,e,n,i,r),a={termType:"BlankNode",value:e.getId()};n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i}),p=a}if(l){const t=x(l,e,n,i,r);n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i})}return d}(t["@list"],e,n,i,r);l.termType=s.termType,l.value=s.value}else{const e=a.isObject(t)?t["@id"]:t;l.termType=e.startsWith("_:")?"BlankNode":"NamedNode",l.value=e}return"NamedNode"!==l.termType||v(l.value)?l:null}e.exports=_,_.toRDF=(t,e)=>{const n=new l.IdentifierIssuer("_:b"),r={"@default":{}};i(t,r,"@default",n);const s=[],o=Object.keys(r).sort();for(const i of o){let t;if("@default"===i)t={termType:"DefaultGraph",value:""};else{if(!v(i))continue;t=i.startsWith("_:")?{termType:"BlankNode"}:{termType:"NamedNode"},t.value=i}w(s,r[i],t,n,e)}return s}},{"./constants":18,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32,canonicalize:7}],30:[function(t,e,n){"use strict";const i={};e.exports=i,i.isArray=Array.isArray,i.isBoolean=t=>"boolean"==typeof t||"[object Boolean]"===Object.prototype.toString.call(t),i.isDouble=t=>i.isNumber(t)&&(-1!==String(t).indexOf(".")||Math.abs(t)>=1e21),i.isEmptyObject=t=>i.isObject(t)&&0===Object.keys(t).length,i.isNumber=t=>"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t),i.isNumeric=t=>!isNaN(parseFloat(t))&&isFinite(t),i.isObject=t=>"[object Object]"===Object.prototype.toString.call(t),i.isString=t=>"string"==typeof t||"[object String]"===Object.prototype.toString.call(t),i.isUndefined=t=>void 0===t},{}],31:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.parsers={simple:{keys:["href","scheme","authority","path","query","fragment"],regex:/^(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/},full:{keys:["href","protocol","scheme","authority","auth","user","password","hostname","port","path","directory","file","query","fragment"],regex:/^(([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?(?:(((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/}},r.parse=(t,e)=>{const n={},i=r.parsers[e||"full"],s=i.regex.exec(t);let o=i.keys.length;for(;o--;)n[i.keys[o]]=void 0===s[o]?null:s[o];return("https"===n.scheme&&"443"===n.port||"http"===n.scheme&&"80"===n.port)&&(n.href=n.href.replace(":"+n.port,""),n.authority=n.authority.replace(":"+n.port,""),n.port=null),n.normalizedPath=r.removeDotSegments(n.path),n},r.prependBase=(t,e)=>{if(null===t||r.isAbsolute(e))return e;(!t||i.isString(t))&&(t=r.parse(t||""));const n=r.parse(e),s={protocol:t.protocol||""};if(null!==n.authority)s.authority=n.authority,s.path=n.path,s.query=n.query;else if(s.authority=t.authority,""===n.path)s.path=t.path,s.query=null!==n.query?n.query:t.query;else{if(0===n.path.indexOf("/"))s.path=n.path;else{let e=t.path;e=e.substr(0,e.lastIndexOf("/")+1),(e.length>0||t.authority)&&"/"!==e.substr(-1)&&(e+="/"),e+=n.path,s.path=e}s.query=n.query}""!==n.path&&(s.path=r.removeDotSegments(s.path));let o=s.protocol;return null!==s.authority&&(o+="//"+s.authority),o+=s.path,null!==s.query&&(o+="?"+s.query),null!==n.fragment&&(o+="#"+n.fragment),""===o&&(o="./"),o},r.removeBase=(t,e)=>{if(null===t)return e;(!t||i.isString(t))&&(t=r.parse(t||""));let n="";if(""!==t.href?n+=(t.protocol||"")+"//"+(t.authority||""):e.indexOf("//")&&(n+="//"),0!==e.indexOf(n))return e;const s=r.parse(e.substr(n.length)),o=t.normalizedPath.split("/"),a=s.normalizedPath.split("/"),l=s.fragment||s.query?0:1;for(;o.length>0&&a.length>l&&o[0]===a[0];)o.shift(),a.shift();let c="";if(o.length>0){o.pop();for(let t=0;t{if(0===t.length)return"";const e=t.split("/"),n=[];for(;e.length>0;){const t=e.shift(),i=0===e.length;"."!==t?".."!==t?n.push(t):(n.pop(),i&&n.push("")):i&&n.push("")}return"/"===t[0]&&n.length>0&&""!==n[0]&&n.unshift(""),1===n.length&&""===n[0]?"/":n.join("/")};const s=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^\s]*$/;r.isAbsolute=t=>i.isString(t)&&s.test(t),r.isRelative=t=>i.isString(t)},{"./types":30}],32:[function(t,e,n){"use strict";const i=t("./graphTypes"),r=t("./types"),s=t("rdf-canonize").IdentifierIssuer,o=t("./JsonLdError"),a=/(?:<[^>]*?>|"[^"]*?"|[^,])+/g,l=/\s*<([^>]*?)>\s*(?:;\s*(.*))?/,c=/(.*?)=(?:(?:"([^"]*?)")|([^"]*?))\s*(?:(?:;\s*)|$)/g,u={accept:"application/ld+json, application/json"},h={};function d(t,e){if(r.isArray(e))for(let n=0;n{if(Object.keys(t).some(t=>"accept"===t.toLowerCase()))throw new RangeError('Accept header may not be specified; only "'+u.accept+'" is supported.');return Object.assign({Accept:u.accept},t)},h.parseLinkHeader=t=>{const e={},n=t.match(a);for(let i=0;i{if(!(r.isString(t)||r.isArray(t)&&t.every(t=>r.isString(t)))){if(e&&r.isObject(t))switch(Object.keys(t).length){case 0:return;case 1:if("@default"in t&&h.asArray(t["@default"]).every(t=>r.isString(t)))return}throw new o('Invalid JSON-LD syntax; "@type" value must a string, an array of strings, an empty object, or a default object.',"jsonld.SyntaxError",{code:"invalid type value",value:t})}},h.hasProperty=(t,e)=>{if(t.hasOwnProperty(e)){const n=t[e];return!r.isArray(n)||n.length>0}return!1},h.hasValue=(t,e,n)=>{if(h.hasProperty(t,e)){let s=t[e];const o=i.isList(s);if(r.isArray(s)||o){o&&(s=s["@list"]);for(let t=0;t{if("propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1),"valueIsArray"in i||(i.valueIsArray=!1),"allowDuplicate"in i||(i.allowDuplicate=!0),"prependValue"in i||(i.prependValue=!1),i.valueIsArray)t[e]=n;else if(r.isArray(n)){0===n.length&&i.propertyIsArray&&!t.hasOwnProperty(e)&&(t[e]=[]),i.prependValue&&(n=n.concat(t[e]),t[e]=[]);for(let r=0;r[].concat(t[e]||[]),h.removeProperty=(t,e)=>{delete t[e]},h.removeValue=(t,e,n,i)=>{"propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1);const r=h.getValues(t,e).filter(t=>!h.compareValues(t,n));0===r.length?h.removeProperty(t,e):t[e]=1!==r.length||i.propertyIsArray?r:r[0]},h.relabelBlankNodes=(t,e)=>d((e=e||{}).issuer||new s("_:b"),t),h.compareValues=(t,e)=>!!(t===e||i.isValue(t)&&i.isValue(e)&&t["@value"]===e["@value"]&&t["@type"]===e["@type"]&&t["@language"]===e["@language"]&&t["@index"]===e["@index"])||!!(r.isObject(t)&&"@id"in t&&r.isObject(e)&&"@id"in e)&&t["@id"]===e["@id"],h.compareShortestLeast=(t,e)=>t.length1;const g=(t,e,n)=>{const i=t[d].get(e);if(i){const e=i.value;if(m(t,e)){if(y(t,i),!t[a])return}else n&&(t[p]&&(i.value.now=Date.now()),t[h].unshiftNode(i));return e.value}},m=(t,e)=>{if(!e||!e.maxAge&&!t[l])return!1;const n=Date.now()-e.now;return e.maxAge?n>e.maxAge:t[l]&&n>t[l]},b=t=>{if(t[s]>t[r])for(let e=t[h].tail;t[s]>t[r]&&null!==e;){const n=e.prev;y(t,e),e=n}},y=(t,e)=>{if(e){const n=e.value;t[c]&&t[c](n.key,n.value),t[s]-=n.length,t[d].delete(n.key),t[h].removeNode(e)}};class v{constructor(t,e,n,i,r){this.key=t,this.value=e,this.length=n,this.now=i,this.maxAge=r||0}}const _=(t,e,n,i)=>{let r=n.value;m(t,r)&&(y(t,n),t[a]||(r=void 0)),r&&e.call(i,r.value,r.key,t)};e.exports=class{constructor(t){if("number"==typeof t&&(t={max:t}),t||(t={}),t.max&&("number"!=typeof t.max||t.max<0))throw new TypeError("max must be a non-negative number");this[r]=t.max||1/0;const e=t.length||f;if(this[o]="function"!=typeof e?f:e,this[a]=t.stale||!1,t.maxAge&&"number"!=typeof t.maxAge)throw new TypeError("maxAge must be a number");this[l]=t.maxAge||0,this[c]=t.dispose,this[u]=t.noDisposeOnSet||!1,this[p]=t.updateAgeOnGet||!1,this.reset()}set max(t){if("number"!=typeof t||t<0)throw new TypeError("max must be a non-negative number");this[r]=t||1/0,b(this)}get max(){return this[r]}set allowStale(t){this[a]=!!t}get allowStale(){return this[a]}set maxAge(t){if("number"!=typeof t)throw new TypeError("maxAge must be a non-negative number");this[l]=t,b(this)}get maxAge(){return this[l]}set lengthCalculator(t){"function"!=typeof t&&(t=f),t!==this[o]&&(this[o]=t,this[s]=0,this[h].forEach(t=>{t.length=this[o](t.value,t.key),this[s]+=t.length})),b(this)}get lengthCalculator(){return this[o]}get length(){return this[s]}get itemCount(){return this[h].length}rforEach(t,e){e=e||this;for(let n=this[h].tail;null!==n;){const i=n.prev;_(this,t,n,e),n=i}}forEach(t,e){e=e||this;for(let n=this[h].head;null!==n;){const i=n.next;_(this,t,n,e),n=i}}keys(){return this[h].toArray().map(t=>t.key)}values(){return this[h].toArray().map(t=>t.value)}reset(){this[c]&&this[h]&&this[h].length&&this[h].forEach(t=>this[c](t.key,t.value)),this[d]=new Map,this[h]=new i,this[s]=0}dump(){return this[h].map(t=>!m(this,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}).toArray().filter(t=>t)}dumpLru(){return this[h]}set(t,e,n){if((n=n||this[l])&&"number"!=typeof n)throw new TypeError("maxAge must be a number");const i=n?Date.now():0,a=this[o](e,t);if(this[d].has(t)){if(a>this[r])return y(this,this[d].get(t)),!1;const o=this[d].get(t).value;return this[c]&&(this[u]||this[c](t,o.value)),o.now=i,o.maxAge=n,o.value=e,this[s]+=a-o.length,o.length=a,this.get(t),b(this),!0}const p=new v(t,e,a,i,n);return p.length>this[r]?(this[c]&&this[c](t,e),!1):(this[s]+=p.length,this[h].unshift(p),this[d].set(t,this[h].head),b(this),!0)}has(t){if(!this[d].has(t))return!1;const e=this[d].get(t).value;return!m(this,e)}get(t){return g(this,t,!0)}peek(t){return g(this,t,!1)}pop(){const t=this[h].tail;return t?(y(this,t),t.value):null}del(t){y(this,this[d].get(t))}load(t){this.reset();const e=Date.now();for(let n=t.length-1;n>=0;n--){const i=t[n],r=i.e||0;if(0===r)this.set(i.k,i.v);else{const t=r-e;t>0&&this.set(i.k,i.v,t)}}}prune(){this[d].forEach((t,e)=>g(this,e,!1))}}},{yallist:92}],34:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#",s="http://www.w3.org/2000/10/swap/";n.default={xsd:{decimal:`${r}decimal`,boolean:`${r}boolean`,double:`${r}double`,integer:`${r}integer`,string:`${r}string`},rdf:{type:`${i}type`,nil:`${i}nil`,first:`${i}first`,rest:`${i}rest`,langString:`${i}langString`},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:`${s}reify#forSome`,forAll:`${s}reify#forAll`},log:{implies:`${s}log#implies`}}},{}],35:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.termFromId=function t(e,n){if(n=n||d,!e)return n.defaultGraph();switch(e[0]){case"?":return n.variable(e.substr(1));case"_":return n.blankNode(e.substr(2));case'"':if(n===d)return new g(e);if('"'===e[e.length-1])return n.literal(e.substr(1,e.length-2));const i=e.lastIndexOf('"',e.length-1);return n.literal(e.substr(1,i-1),"@"===e[i+1]?e.substr(i+2):n.namedNode(e.substr(i+3)));case"<":const r=h.exec(e);return n.quad(t(w(r[1]),n),t(w(r[2]),n),t(w(r[3]),n),r[4]&&t(w(r[4]),n));default:return n.namedNode(e)}},n.termToId=function t(e){if("string"==typeof e)return e;if(e instanceof p&&"Quad"!==e.termType)return e.id;if(!e)return l.id;switch(e.termType){case"NamedNode":return e.value;case"BlankNode":return`_:${e.value}`;case"Variable":return`?${e.value}`;case"DefaultGraph":return"";case"Literal":return`"${e.value}"${e.language?`@${e.language}`:e.datatype&&e.datatype.value!==a.string?`^^${e.datatype.value}`:""}`;case"Quad":return`<<${_(t(e.subject))} ${_(t(e.predicate))} ${_(t(e.object))}${(0,s.isDefaultGraph)(e.graph)?"":` ${t(e.graph)}`}>>`;default:throw new Error(`Unexpected termType: ${e.termType}`)}},n.escapeQuotes=_,n.unescapeQuotes=w,n.Triple=n.Quad=n.DefaultGraph=n.Variable=n.BlankNode=n.Literal=n.NamedNode=n.Term=n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=t("./N3Util");const{rdf:o,xsd:a}=r.default;let l,c=0;const u=/^"(.*".*)(?="[^"]*$)/,h=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,d={namedNode:function(t){return new f(t)},blankNode:function(t){return new m(t||"n3-"+c++)},variable:function(t){return new b(t)},literal:function(t,e){if("string"==typeof e)return new g(`"${t}"@${e.toLowerCase()}`);let n=e?e.value:"";return""===n&&("boolean"==typeof t?n=a.boolean:"number"==typeof t&&(Number.isFinite(t)?n=Number.isInteger(t)?a.integer:a.double:(n=a.double,Number.isNaN(t)||(t=t>0?"INF":"-INF")))),new g(""===n||n===a.string?`"${t}"`:`"${t}"^^${n}`)},defaultGraph:function(){return l},quad:x,triple:x};n.default=d;class p{constructor(t){this.id=t}get value(){return this.id}equals(t){return t instanceof p?this.id===t.id:!!t&&this.termType===t.termType&&this.value===t.value}toJSON(){return{termType:this.termType,value:this.value}}}n.Term=p;class f extends p{get termType(){return"NamedNode"}}n.NamedNode=f;class g extends p{get termType(){return"Literal"}get value(){return this.id.substring(1,this.id.lastIndexOf('"'))}get language(){const t=this.id;let e=t.lastIndexOf('"')+1;return e`"${e.replace(/"/g,'""')}`)}function w(t){return t.replace(u,(t,e)=>`"${e.replace(/""/g,'"')}`)}function x(t,e,n,i){return new v(t,e,n,i)}n.Triple=n.Quad=v},{"./IRIs":34,"./N3Util":41}],36:[function(t,e,n){(function(e){(function(){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=s(t("./IRIs")),r=s(t("queue-microtask"));function s(t){return t&&t.__esModule?t:{default:t}}const{xsd:o}=i.default,a=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\([^])/g,l={"\\":"\\","'":"'",'"':'"',n:"\n",r:"\r",t:"\t",f:"\f",b:"\b",_:"_","~":"~",".":".","-":"-","!":"!",$:"$","&":"&","(":"(",")":")","*":"*","+":"+",",":",",";":";","=":"=","/":"/","?":"?","#":"#","@":"@","%":"%"},c=/[\x00-\x20<>\\"\{\}\|\^\`]/,u={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},h=/$0^/;n.default=class{constructor(t){if(this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,this._lineMode=!!(t=t||{}).lineMode){this._n3Mode=!1;for(const t in this)!(t in u)&&this[t]instanceof RegExp&&(this[t]=h)}else this._n3Mode=!1!==t.n3;this._comments=!!t.comments,this._literalClosingPos=0}_tokenizeToEnd(t,e){let n=this._input;const i=this._comments;for(;;){let s,a;for(;s=this._newline.exec(n);)i&&(a=this._comment.exec(s[0]))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),n=n.substr(s[0].length,n.length),this._line++;if(!s&&(s=this._whitespace.exec(n))&&(n=n.substr(s[0].length,n.length)),this._endOfFile.test(n))return e&&(i&&(a=this._comment.exec(n))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),t(n=null,{line:this._line,type:"eof",value:"",prefix:""})),this._input=n;const l=this._line,u=n[0];let h="",d="",p="",f=null,g=0,m=!1;switch(u){case"^":if(n.length<3)break;if("^"!==n[1]){this._n3Mode&&(g=1,h="^");break}if(this._previousMarker="^^",n=n.substr(2),"<"!==n[0]){m=!0;break}case"<":if(f=this._unescapedIri.exec(n))h="IRI",d=f[1];else if(f=this._iri.exec(n)){if(d=this._unescape(f[1]),null===d||c.test(d))return r(this);h="IRI"}else n.length>1&&"<"===n[1]?(h="<<",g=2):this._n3Mode&&n.length>1&&"="===n[1]&&(h="inverse",g=2,d=">");break;case">":n.length>1&&">"===n[1]&&(h=">>",g=2);break;case"_":((f=this._blank.exec(n))||e&&(f=this._blank.exec(`${n} `)))&&(h="blank",p="_",d=f[1]);break;case'"':if(f=this._simpleQuotedString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){if(f=this._simpleApostropheString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(f=this._variable.exec(n))&&(h="var",d=f[0]);break;case"@":"literal"===this._previousMarker&&(f=this._langcode.exec(n))?(h="langcode",d=f[1]):(f=this._keyword.exec(n))&&(h=f[0]);break;case".":if(1===n.length?e:n[1]<"0"||n[1]>"9"){h=".",g=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(f=this._number.exec(n)||e&&(f=this._number.exec(`${n} `)))&&(h="literal",d=f[0],p="string"==typeof f[1]?o.double:"string"==typeof f[2]?o.decimal:o.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(f=this._sparqlKeyword.exec(n))?h=f[0].toUpperCase():m=!0;break;case"f":case"t":(f=this._boolean.exec(n))?(h="literal",d=f[0],p=o.boolean):m=!0;break;case"a":(f=this._shortPredicates.exec(n))?(h="abbreviation",d="a"):m=!0;break;case"=":this._n3Mode&&n.length>1&&(h="abbreviation",">"!==n[1]?(g=1,d="="):(g=2,d=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"{":case"}":this._lineMode||(g=1,h=u);break;default:m=!0}if(m&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(f=this._prefix.exec(n))?((f=this._prefixed.exec(n))||e&&(f=this._prefixed.exec(`${n} `)))&&(h="prefixed",p=f[1]||"",d=this._unescape(f[2])):(h="prefix",d=f[1]||"")),"^^"===this._previousMarker)switch(h){case"prefixed":h="type";break;case"IRI":h="typeIRI";break;default:h=""}if(!h)return e||!/^'''|^"""/.test(n)&&/\n|\r/.test(n)?r(this):this._input=n;const b={line:l,type:h,value:d,prefix:p};t(null,b),this.previousToken=b,this._previousMarker=h,n=n.substr(g||f[0].length,n.length)}function r(e){t(e._syntaxError(/^\S*/.exec(n)[0]))}}_unescape(t){let e=!1;const n=t.replace(a,(t,n,i,r)=>{if("string"==typeof n)return String.fromCharCode(Number.parseInt(n,16));if("string"==typeof i){let t=Number.parseInt(i,16);return t<=65535?String.fromCharCode(Number.parseInt(i,16)):String.fromCharCode(55296+((t-=65536)>>10),56320+(1023&t))}return r in l?l[r]:(e=!0,"")});return e?null:n}_parseLiteral(t){if(t.length>=3){const e=t.match(/^(?:"""|"|'''|'|)/)[0],n=e.length;let i=Math.max(this._literalClosingPos,n);for(;(i=t.indexOf(e,i))>0;){let e=0;for(;"\\"===t[i-e-1];)e++;if(e%2==0){const e=t.substring(n,i),r=e.split(/\r\n|\r|\n/).length-1,s=i+n;if(1===n&&0!==r||3===n&&this._lineMode)break;return this._line+=r,{value:this._unescape(e),matchLength:s}}i++}this._literalClosingPos=t.length-n+1}return{value:"",matchLength:0}}_syntaxError(t){this._input=null;const e=new Error(`Unexpected "${t}" on line ${this._line}.`);return e.context={token:void 0,line:this._line,previousToken:this.previousToken},e}_readStartingBom(t){return t.startsWith("\ufeff")?t.substr(1):t}tokenize(t,n){if(this._line=1,"string"==typeof t){if(this._input=this._readStartingBom(t),"function"!=typeof n){const t=[];let e;if(this._tokenizeToEnd((n,i)=>n?e=n:t.push(i),!0),e)throw e;return t}(0,r.default)(()=>this._tokenizeToEnd(n,!0))}else this._pendingBuffer=null,"function"==typeof t.setEncoding&&t.setEncoding("utf8"),t.on("data",t=>{null!==this._input&&0!==t.length&&(this._pendingBuffer&&(t=e.concat([this._pendingBuffer,t]),this._pendingBuffer=null),128&t[t.length-1]?this._pendingBuffer=t:(void 0===this._input?this._input=this._readStartingBom("string"==typeof t?t:t.toString()):this._input+=t,this._tokenizeToEnd(n,!1)))}),t.on("end",()=>{"string"==typeof this._input&&this._tokenizeToEnd(n,!0)}),t.on("error",n)}}}).call(this)}).call(this,t("buffer").Buffer)},{"./IRIs":34,buffer:6,"queue-microtask":45}],37:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=o(t("./N3Lexer")),r=o(t("./N3DataFactory")),s=o(t("./IRIs"));function o(t){return t&&t.__esModule?t:{default:t}}let a=0;class l{constructor(t){this._contextStack=[],this._graph=null,this._setBase((t=t||{}).baseIRI),t.factory&&u(this,t.factory);const e="string"==typeof t.format?t.format.match(/\w*$/)[0].toLowerCase():"",n=/turtle/.test(e),r=/trig/.test(e),s=/triple/.test(e),o=/quad/.test(e),a=this._n3Mode=/n3/.test(e),l=s||o;(this._supportsNamedGraphs=!(n||a))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(n||r||s||a),this._supportsRDFStar=""===e||/star|\*$/.test(e),l&&(this._resolveRelativeIRI=t=>null),this._blankNodePrefix="string"!=typeof t.blankNodePrefix?"":t.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=t.lexer||new i.default({lineMode:l,n3:a}),this._explicitQuantifiers=!!t.explicitQuantifiers}static _resetBlankNodePrefix(){a=0}_setBase(t){if(t){const e=t.indexOf("#");e>=0&&(t=t.substr(0,e)),this._base=t,this._basePath=t.indexOf("/")<0?t:t.replace(/[^\/?]*(?:\?.*)?$/,""),t=t.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=t[0],this._baseScheme=t[1]}else this._base="",this._basePath=""}_saveContext(t,e,n,i,r){const s=this._n3Mode;this._contextStack.push({subject:n,predicate:i,object:r,graph:e,type:t,inverse:!!s&&this._inversePredicate,blankPrefix:s?this._prefixes._:"",quantified:s?this._quantified:null}),s&&(this._inversePredicate=!1,this._prefixes._=this._graph?`${this._graph.id.substr(2)}.`:".",this._quantified=Object.create(this._quantified))}_restoreContext(){const t=this._contextStack.pop(),e=this._n3Mode;this._subject=t.subject,this._predicate=t.predicate,this._object=t.object,this._graph=t.graph,e&&(this._inversePredicate=t.inverse,this._prefixes._=t.blankPrefix,this._quantified=t.quantified)}_readInTopContext(t){switch(t.type){case"eof":return null!==this._graph?this._error("Unclosed graph",t):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(t)}}_readEntity(t,e){let n;switch(t.type){case"IRI":case"typeIRI":const e=this._resolveIRI(t.value);if(null===e)return this._error("Invalid IRI",t);n=this._namedNode(e);break;case"type":case"prefixed":const i=this._prefixes[t.prefix];if(void 0===i)return this._error(`Undefined prefix "${t.prefix}:"`,t);n=this._namedNode(i+t.value);break;case"blank":n=this._blankNode(this._prefixes[t.prefix]+t.value);break;case"var":n=this._variable(t.value.substr(1));break;default:return this._error(`Expected entity but got ${t.type}`,t)}return!e&&this._n3Mode&&n.id in this._quantified&&(n=this._quantified[n.id]),n}_readSubject(t){switch(this._predicate=null,t.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",t);case"}":return this._readPunctuation(t);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',t);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',t);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",t);if(0===t.prefix.length)return this._literalValue=t.value,this._completeSubjectLiteral;this._subject=this._literal(t.value,this._namedNode(t.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._subject=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}_readPredicate(t){const e=t.type;switch(e){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[t.value];break;case".":case"]":case"}":return null===this._predicate?this._error(`Unexpected ${e}`,t):(this._subject=null,"]"===e?this._readBlankNodeTail(t):this._readPunctuation(t));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",t);case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",t);default:if(void 0===(this._predicate=this._readEntity(t)))return}return this._readObject}_readObject(t){switch(t.type){case"literal":if(0===t.prefix.length)return this._literalValue=t.value,this._readDataTypeOrLang;this._object=this._literal(t.value,this._namedNode(t.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._object=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}_readPredicateOrNamedGraph(t){return"{"===t.type?this._readGraph(t):this._readPredicate(t)}_readGraph(t){return"{"!==t.type?this._error(`Expected graph but got ${t.type}`,t):(this._graph=this._subject,this._subject=null,this._readSubject)}_readBlankNodeHead(t){return"]"===t.type?(this._subject=null,this._readBlankNodeTail(t)):(this._predicate=null,this._readPredicate(t))}_readBlankNodeTail(t){if("]"!==t.type)return this._readBlankNodePunctuation(t);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);const e=null===this._predicate;return this._restoreContext(),null===this._object?e?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank:this._getContextEndReader()}_readPredicateAfterBlank(t){switch(t.type){case".":case"}":return this._subject=null,this._readPunctuation(t);default:return this._readPredicate(t)}}_readListItem(t){let e=null,n=null,i=this._readListItem;const r=this._subject,s=this._contextStack,o=s[s.length-1];switch(t.type){case"[":this._saveContext("blank",this._graph,n=this._blankNode(),this.RDF_FIRST,this._subject=e=this._blankNode()),i=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,n=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext(),0!==s.length&&"list"===s[s.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(i=this._readPredicate,this._subject===this.RDF_NIL)return i}else if(i=this._getContextEndReader(),this._object===this.RDF_NIL)return i;n=this.RDF_NIL;break;case"literal":0===t.prefix.length?(this._literalValue=t.value,i=this._readListItemDataTypeOrLang):(e=this._literal(t.value,this._namedNode(t.prefix)),i=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);default:if(void 0===(e=this._readEntity(t)))return}if(null===n&&(this._subject=n=this._blankNode()),null===r?null===o.predicate?o.subject=n:o.object=n:this._emit(r,this.RDF_REST,n,this._graph),null!==e){if(this._n3Mode&&("IRI"===t.type||"prefixed"===t.type))return this._saveContext("item",this._graph,n,this.RDF_FIRST,e),this._subject=e,this._predicate=null,this._getPathReader(this._readListItem);this._emit(n,this.RDF_FIRST,e,this._graph)}return i}_readDataTypeOrLang(t){return this._completeObjectLiteral(t,!1)}_readListItemDataTypeOrLang(t){return this._completeObjectLiteral(t,!0)}_completeLiteral(t){let e=this._literal(this._literalValue);switch(t.type){case"type":case"typeIRI":const n=this._readEntity(t);if(void 0===n)return;e=this._literal(this._literalValue,n),t=null;break;case"langcode":e=this._literal(this._literalValue,t.value),t=null}return{token:t,literal:e}}_completeSubjectLiteral(t){return this._subject=this._completeLiteral(t).literal,this._readPredicateOrNamedGraph}_completeObjectLiteral(t,e){const n=this._completeLiteral(t);if(n)return this._object=n.literal,e&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===n.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(n.token))}_readFormulaTail(t){return"}"!==t.type?this._readPunctuation(t):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext(),null===this._object?this._readPredicate:this._getContextEndReader())}_readPunctuation(t){let e,n=this._graph;const i=this._subject,r=this._inversePredicate;switch(t.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",t);if(this._n3Mode)return this._readFormulaTail(t);this._graph=null;case".":this._subject=null,e=this._contextStack.length?this._readSubject:this._readInTopContext,r&&(this._inversePredicate=!1);break;case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(n=this._readEntity(t))){e=this._readQuadPunctuation;break}return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}if(null!==i){const t=this._predicate,e=this._object;r?this._emit(e,t,i,n):this._emit(i,t,e,n)}return e}_readBlankNodePunctuation(t){let e;switch(t.type){case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}return this._emit(this._subject,this._predicate,this._object,this._graph),e}_readQuadPunctuation(t){return"."!==t.type?this._error("Expected dot to follow quad",t):this._readInTopContext}_readPrefix(t){return"prefix"!==t.type?this._error("Expected prefix to follow @prefix",t):(this._prefix=t.value,this._readPrefixIRI)}_readPrefixIRI(t){if("IRI"!==t.type)return this._error(`Expected IRI to follow prefix "${this._prefix}:"`,t);const e=this._readEntity(t);return this._prefixes[this._prefix]=e.value,this._prefixCallback(this._prefix,e),this._readDeclarationPunctuation}_readBaseIRI(t){const e="IRI"===t.type&&this._resolveIRI(t.value);return e?(this._setBase(e),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",t)}_readNamedGraphLabel(t){switch(t.type){case"IRI":case"blank":case"prefixed":return this._readSubject(t),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",t)}}_readNamedGraphBlankLabel(t){return"]"!==t.type?this._error("Invalid graph label",t):(this._subject=this._blankNode(),this._readGraph)}_readDeclarationPunctuation(t){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(t)):"."!==t.type?this._error("Expected declaration to end with a dot",t):this._readInTopContext}_readQuantifierList(t){let e;switch(t.type){case"IRI":case"prefixed":if(void 0!==(e=this._readEntity(t,!0)))break;default:return this._error(`Unexpected ${t.type}`,t)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,e,this.QUANTIFIERS_GRAPH)):this._quantified[e.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}_readQuantifierPunctuation(t){return","===t.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(t))}_getPathReader(t){return this._afterPath=t,this._readPath}_readPath(t){switch(t.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:const e=this._contextStack,n=e.length&&e[e.length-1];if(n&&"item"===n.type){const t=this._subject;this._restoreContext(),this._emit(this._subject,this.RDF_FIRST,t,this._graph)}return this._afterPath(t)}}_readForwardPath(t){let e,n;const i=this._blankNode();if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(e=this._subject,this._subject=i):(e=this._object,this._object=i),this._emit(e,n,i,this._graph),this._readPath}_readBackwardPath(t){const e=this._blankNode();let n,i;if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(i=this._subject,this._subject=e):(i=this._object,this._object=e),this._emit(e,n,i,this._graph),this._readPath}_readRDFStarTailOrGraph(t){return">>"!==t.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(t))?this._readRDFStarTail:this._error(`Expected >> to follow "${this._object.id}"`,t):this._readRDFStarTail(t)}_readRDFStarTail(t){if(">>"!==t.type)return this._error(`Expected >> but got ${t.type}`,t);const e=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext(),null===this._subject?(this._subject=e,this._readPredicate):(this._object=e,this._getContextEndReader())}_getContextEndReader(){const t=this._contextStack;if(!t.length)return this._readPunctuation;switch(t[t.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}_emit(t,e,n,i){this._callback(null,this._quad(t,e,n,i||this.DEFAULTGRAPH))}_error(t,e){const n=new Error(`${t} on line ${e.line}.`);n.context={token:e,line:e.line,previousToken:this._lexer.previousToken},this._callback(n),this._callback=c}_resolveIRI(t){return/^[a-z][a-z0-9+.-]*:/i.test(t)?t:this._resolveRelativeIRI(t)}_resolveRelativeIRI(t){if(!t.length)return this._base;switch(t[0]){case"#":return this._base+t;case"?":return this._base.replace(/(?:\?.*)?$/,t);case"/":return("/"===t[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(t);default:return/^[^/:]*:/.test(t)?null:this._removeDotSegments(this._basePath+t)}}_removeDotSegments(t){if(!/(^|\/)\.\.?($|[/#?])/.test(t))return t;const e=t.length;let n="",i=-1,r=-1,s=0,o="/";for(;i=r&&(n=n.substr(0,s)),"/"!==o)return`${n}/${t.substr(i+1)}`;s=i+1}}}o=t[++i]}return n+t.substring(s)}parse(t,e,n){if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):`b${a++}_`,this._prefixCallback=n||c,this._inversePredicate=!1,this._quantified=Object.create(null),!e){const e=[];let n;if(this._callback=(t,i)=>{t?n=t:i&&e.push(i)},this._lexer.tokenize(t).every(t=>this._readCallback=this._readCallback(t)),n)throw n;return e}this._callback=e,this._lexer.tokenize(t,(t,e)=>{null!==t?(this._callback(t),this._callback=c):this._readCallback&&(this._readCallback=this._readCallback(e))})}}function c(){}function u(t,e){const n=e.namedNode;t._namedNode=n,t._blankNode=e.blankNode,t._literal=e.literal,t._variable=e.variable,t._quad=e.quad,t.DEFAULTGRAPH=e.defaultGraph(),t.RDF_FIRST=n(s.default.rdf.first),t.RDF_REST=n(s.default.rdf.rest),t.RDF_NIL=n(s.default.rdf.nil),t.N3_FORALL=n(s.default.r.forAll),t.N3_FORSOME=n(s.default.r.forSome),t.ABBREVIATIONS={a:n(s.default.rdf.type),"=":n(s.default.owl.sameAs),">":n(s.default.log.implies)},t.QUANTIFIERS_GRAPH=n("urn:n3:quantifiers")}n.default=l,u(l.prototype,r.default)},{"./IRIs":34,"./N3DataFactory":35,"./N3Lexer":36}],38:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),s=t("readable-stream"),o=(i=t("./IRIs"))&&i.__esModule?i:{default:i};function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}class l{constructor(t,e){this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,!e&&t&&!t[0]&&(e=t,t=null),this._factory=(e=e||{}).factory||r.default,t&&this.addQuads(t)}get size(){let t=this._size;if(null!==t)return t;t=0;const e=this._graphs;let n,i;for(const r in e)for(const s in n=e[r].subjects)for(const e in i=n[s])t+=Object.keys(i[e]).length;return this._size=t}_addToIndex(t,e,n,i){const r=t[e]||(t[e]={}),s=r[n]||(r[n]={}),o=i in s;return o||(s[i]=null),!o}_removeFromIndex(t,e,n,i){const r=t[e],s=r[n];delete s[i];for(const o in s)return;delete r[n];for(const o in r)return;delete t[e]}_findInIndex(t,e,n,i,s,o,a,l,c,u){let h,d,p;const f=!e+!n+!i>1?Object.keys(this._ids):this._entities;e&&((h=t,t={})[e]=h[e]);for(const g in t){const e=f[g];if(d=t[g]){n&&((h=d,d={})[n]=h[n]);for(const t in d){const n=f[t];if(p=d[t]){const t=i?i in p?[i]:[]:Object.keys(p);for(let i=0;i{n in e||(e[n]=!0,t((0,r.termFromId)(this._entities[n],this._factory)))}}add(t){return this.addQuad(t),this}addQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);let s=this._graphs[i];s||(s=this._graphs[i]={subjects:{},predicates:{},objects:{}},Object.freeze(s));const o=this._ids,a=this._entities;t=o[t]||(o[a[++this._id]=t]=this._id),e=o[e]||(o[a[++this._id]=e]=this._id),n=o[n]||(o[a[++this._id]=n]=this._id);const l=this._addToIndex(s.subjects,t,e,n);return this._addToIndex(s.predicates,e,n,t),this._addToIndex(s.objects,n,t,e),this._size=null,l}addQuads(t){for(let e=0;e{this.addQuad(t)}),t}removeQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);const s=this._ids,o=this._graphs;let a,l,c;if(!((t=s[t])&&(e=s[e])&&(n=s[n])&&(a=o[i])&&(l=a.subjects[t])&&(c=l[e])&&n in c))return!1;for(t in this._removeFromIndex(a.subjects,t,e,n),this._removeFromIndex(a.predicates,e,n,t),this._removeFromIndex(a.objects,n,t,e),null!==this._size&&this._size--,a.subjects)return!0;return delete o[i],!0}removeQuads(t){for(let e=0;e{this.removeQuad(t)}),t}removeMatches(t,e,n,i){const r=new s.Readable({objectMode:!0});return r._read=()=>{for(const s of this.getQuads(t,e,n,i))r.push(s);r.push(null)},this.remove(r)}deleteGraph(t){return this.removeMatches(null,null,null,t)}getQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=[],o=this._getGraphs(i),a=this._ids;let l,u,h,d;if(c(t)&&!(u=a[t])||c(e)&&!(h=a[e])||c(n)&&!(d=a[n]))return s;for(const r in o)(l=o[r])&&(u?d?this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,null,s):h?this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,null,s):d?this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,null,s));return s}match(t,e,n,i){return new u(this,t,e,n,i)}countQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._getGraphs(i),o=this._ids;let a,l,u,h,d=0;if(c(t)&&!(l=o[t])||c(e)&&!(u=o[e])||c(n)&&!(h=o[n]))return 0;for(const r in s)(a=s[r])&&(d+=t?n?this._countInIndex(a.objects,h,l,u):this._countInIndex(a.subjects,l,u,h):e?this._countInIndex(a.predicates,u,h,l):this._countInIndex(a.objects,h,l,u));return d}forEach(t,e,n,i,r){this.some(e=>(t(e),!1),e,n,i,r)}every(t,e,n,i,r){let s=!1;const o=!this.some(e=>(s=!0,!t(e)),e,n,i,r);return s&&o}some(t,e,n,i,s){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i),s=s&&(0,r.termToId)(s);const o=this._getGraphs(s),a=this._ids;let l,u,h,d;if(c(e)&&!(u=a[e])||c(n)&&!(h=a[n])||c(i)&&!(d=a[i]))return!1;for(const r in o)if(l=o[r])if(u){if(d){if(this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,t,null))return!0}else if(h){if(this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,t,null))return!0}else if(d){if(this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,t,null))return!0;return!1}getSubjects(t,e,n){const i=[];return this.forSubjects(t=>{i.push(t)},t,e,n),i}forSubjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.predicates,l,u,t):this._loopByKey1(a.subjects,l,t):u?this._loopByKey0(a.objects,u,t):this._loop(a.subjects,t))}getPredicates(t,e,n){const i=[];return this.forPredicates(t=>{i.push(t)},t,e,n),i}forPredicates(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.objects,u,l,t):this._loopByKey0(a.subjects,l,t):u?this._loopByKey1(a.predicates,u,t):this._loop(a.predicates,t))}getObjects(t,e,n){const i=[];return this.forObjects(t=>{i.push(t)},t,e,n),i}forObjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.subjects,l,u,t):this._loopByKey1(a.objects,l,t):u?this._loopByKey0(a.predicates,u,t):this._loop(a.objects,t))}getGraphs(t,e,n){const i=[];return this.forGraphs(t=>{i.push(t)},t,e,n),i}forGraphs(t,e,n,i){for(const r in this._graphs)this.some(e=>(t(e.graph),!0),e,n,i,r)}createBlankNode(t){let e,n;if(t)for(e=t=`_:${t}`,n=1;this._ids[e];)e=t+n++;else do{e="_:b"+this._blankNodeIndex++}while(this._ids[e]);return this._ids[e]=++this._id,this._entities[this._id]=e,this._factory.blankNode(e.substr(2))}extractLists({remove:t=!1,ignoreErrors:e=!1}={}){const n={},i=e?()=>!0:(t,e)=>{throw new Error(`${t.value} ${e}`)},r=this.getQuads(null,o.default.rdf.rest,o.default.rdf.nil,null),s=t?[...r]:[];return r.forEach(e=>{const r=[];let a,l,c=!1;const u=e.graph;let h=e.subject;for(;h&&!c;){const t=this.getQuads(null,null,h,null),e=this.getQuads(h,null,null,null);let n,d=null,p=null,f=null;for(let r=0;r{switch(t){case"data":e=i;break;case"end":n=i}}},(t,e)=>{t&&this.emit("error",t)||e&&this.push(e)},(t,e)=>{this.emit("prefix",t,e)}),this._transform=(t,n,i)=>{e(t),i()},this._flush=t=>{n(),t()}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),this}}},{"./N3Parser":37,"readable-stream":81}],40:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=t("readable-stream"),s=(i=t("./N3Writer"))&&i.__esModule?i:{default:i};n.default=class extends r.Transform{constructor(t){super({encoding:"utf8",writableObjectMode:!0});const e=this._writer=new s.default({write:(t,e,n)=>{this.push(t),n&&n()},end:t=>{this.push(null),t&&t()}},t);this._transform=(t,n,i)=>{e.addQuad(t,i)},this._flush=t=>{e.end(t)}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),t.on("prefix",(t,e)=>{this._writer.addPrefix(t,e)}),this}}},{"./N3Writer":42,"readable-stream":81}],41:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.isNamedNode=function(t){return!!t&&"NamedNode"===t.termType},n.isBlankNode=function(t){return!!t&&"BlankNode"===t.termType},n.isLiteral=function(t){return!!t&&"Literal"===t.termType},n.isVariable=function(t){return!!t&&"Variable"===t.termType},n.isDefaultGraph=s,n.inDefaultGraph=function(t){return s(t.graph)},n.prefix=function(t,e){return o({"":t},e)("")},n.prefixes=o;var i,r=(i=t("./N3DataFactory"))&&i.__esModule?i:{default:i};function s(t){return!!t&&"DefaultGraph"===t.termType}function o(t,e){const n=Object.create(null);for(const r in t)i(r,t[r]);function i(t,i){if("string"==typeof i){const r=Object.create(null);n[t]=t=>r[t]||(r[t]=e.namedNode(i+t))}else if(!(t in n))throw new Error(`Unknown prefix: ${t}`);return n[t]}return e=e||r.default,i}},{"./N3DataFactory":35}],42:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),o=t("./N3Util");function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}const l=s.default.defaultGraph(),{rdf:c,xsd:u}=r.default,h=/["\\\t\n\r\b\f\u0000-\u0019\ud800-\udbff]/,d=/["\\\t\n\r\b\f\u0000-\u0019]|[\ud800-\udbff][\udc00-\udfff]/g,p={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};class f extends s.Term{equals(){return!1}}function g(t){let e=p[t];return void 0===e&&(1===t.length?(e=t.charCodeAt(0).toString(16),e="\\u0000".substr(0,6-e.length)+e):(e=(1024*(t.charCodeAt(0)-55296)+t.charCodeAt(1)+9216).toString(16),e="\\U00000000".substr(0,10-e.length)+e)),e}n.default=class{constructor(t,e){if(this._prefixRegex=/$0^/,t&&"function"!=typeof t.write&&(e=t,t=null),this._lists=(e=e||{}).lists,t)this._outputStream=t,this._endStream=void 0===e.end||!!e.end;else{let t="";this._outputStream={write(e,n,i){t+=e,i&&i()},end:e=>{e&&e(null,t)}},this._endStream=!0}this._subject=null,/triple|quad/i.test(e.format)?(this._lineMode=!0,this._writeQuad=this._writeQuadLine):(this._lineMode=!1,this._graph=l,this._baseIRI=e.baseIRI,this._prefixIRIs=Object.create(null),e.prefixes&&this.addPrefixes(e.prefixes))}get _inDefaultGraph(){return l.equals(this._graph)}_write(t,e){this._outputStream.write(t,"utf8",e)}_writeQuad(t,e,n,i,r){try{i.equals(this._graph)||(this._write((null===this._subject?"":this._inDefaultGraph?".\n":"\n}\n")+(l.equals(i)?"":`${this._encodeIriOrBlank(i)} {\n`)),this._graph=i,this._subject=null),t.equals(this._subject)?e.equals(this._predicate)?this._write(`, ${this._encodeObject(n)}`,r):this._write(`;\n ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r):this._write(`${(null===this._subject?"":".\n")+this._encodeSubject(this._subject=t)} ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r)}catch(s){r&&r(s)}}_writeQuadLine(t,e,n,i,r){delete this._prefixMatch,this._write(this.quadToString(t,e,n,i),r)}quadToString(t,e,n,i){return`${this._encodeSubject(t)} ${this._encodeIriOrBlank(e)} ${this._encodeObject(n)}${i&&i.value?` ${this._encodeIriOrBlank(i)} .\n`:" .\n"}`}quadsToString(t){return t.map(t=>this.quadToString(t.subject,t.predicate,t.object,t.graph)).join("")}_encodeSubject(t){return"Quad"===t.termType?this._encodeQuad(t):this._encodeIriOrBlank(t)}_encodeIriOrBlank(t){if("NamedNode"!==t.termType)return this._lists&&t.value in this._lists&&(t=this.list(this._lists[t.value])),"id"in t?t.id:`_:${t.value}`;let e=t.value;this._baseIRI&&e.startsWith(this._baseIRI)&&(e=e.substr(this._baseIRI.length)),h.test(e)&&(e=e.replace(d,g));const n=this._prefixRegex.exec(e);return n?n[1]?this._prefixIRIs[n[1]]+n[2]:e:`<${e}>`}_encodeLiteral(t){let e=t.value;if(h.test(e)&&(e=e.replace(d,g)),t.language)return`"${e}"@${t.language}`;if(this._lineMode){if(t.datatype.value===u.string)return`"${e}"`}else switch(t.datatype.value){case u.string:return`"${e}"`;case u.boolean:if("true"===e||"false"===e)return e;break;case u.integer:if(/^[+-]?\d+$/.test(e))return e;break;case u.decimal:if(/^[+-]?\d*\.\d+$/.test(e))return e;break;case u.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(e))return e}return`"${e}"^^${this._encodeIriOrBlank(t.datatype)}`}_encodePredicate(t){return t.value===c.type?"a":this._encodeIriOrBlank(t)}_encodeObject(t){switch(t.termType){case"Quad":return this._encodeQuad(t);case"Literal":return this._encodeLiteral(t);default:return this._encodeIriOrBlank(t)}}_encodeQuad({subject:t,predicate:e,object:n,graph:i}){return`<<${this._encodeSubject(t)} ${this._encodePredicate(e)} ${this._encodeObject(n)}${(0,o.isDefaultGraph)(i)?"":` ${this._encodeIriOrBlank(i)}`}>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(t,e,n,i,r){void 0===n?this._writeQuad(t.subject,t.predicate,t.object,t.graph,e):"function"==typeof i?this._writeQuad(t,e,n,l,i):this._writeQuad(t,e,n,i||l,r)}addQuads(t){for(let e=0;e.\n`)}if(n){let t="",e="";for(const n in this._prefixIRIs)t+=t?`|${n}`:n,e+=(e?"|":"")+this._prefixIRIs[n];t=t.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(?:${e})[^/]*$|^(${t})([a-zA-Z][\\-_a-zA-Z0-9]*)$`)}this._write(n?"\n":"",e)}blank(t,e){let n,i,r=t;switch(void 0===t?r=[]:t.termType?r=[{predicate:t,object:e}]:"length"in t||(r=[t]),i=r.length){case 0:return new f("[]");case 1:if(n=r[0],!(n.object instanceof f))return new f(`[ ${this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)} ]`);default:let e="[";for(let s=0;s{e=null,t(n,i)});if(this._endStream)try{return this._outputStream.end(e)}catch(n){}e&&e()}}},{"./IRIs":34,"./N3DataFactory":35,"./N3Util":41}],43:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"Lexer",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(n,"Parser",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(n,"Writer",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(n,"Store",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(n,"StreamParser",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(n,"StreamWriter",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(n,"DataFactory",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(n,"Term",{enumerable:!0,get:function(){return u.Term}}),Object.defineProperty(n,"NamedNode",{enumerable:!0,get:function(){return u.NamedNode}}),Object.defineProperty(n,"Literal",{enumerable:!0,get:function(){return u.Literal}}),Object.defineProperty(n,"BlankNode",{enumerable:!0,get:function(){return u.BlankNode}}),Object.defineProperty(n,"Variable",{enumerable:!0,get:function(){return u.Variable}}),Object.defineProperty(n,"DefaultGraph",{enumerable:!0,get:function(){return u.DefaultGraph}}),Object.defineProperty(n,"Quad",{enumerable:!0,get:function(){return u.Quad}}),Object.defineProperty(n,"Triple",{enumerable:!0,get:function(){return u.Triple}}),Object.defineProperty(n,"termFromId",{enumerable:!0,get:function(){return u.termFromId}}),Object.defineProperty(n,"termToId",{enumerable:!0,get:function(){return u.termToId}}),n.Util=void 0;var i=p(t("./N3Lexer")),r=p(t("./N3Parser")),s=p(t("./N3Writer")),o=p(t("./N3Store")),a=p(t("./N3StreamParser")),l=p(t("./N3StreamWriter")),c=d(t("./N3Util"));n.Util=c;var u=d(t("./N3DataFactory"));function h(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(h=function(t){return t?n:e})(t)}function d(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=h(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}function p(t){return t&&t.__esModule?t:{default:t}}},{"./N3DataFactory":35,"./N3Lexer":36,"./N3Parser":37,"./N3Store":38,"./N3StreamParser":39,"./N3StreamWriter":40,"./N3Util":41,"./N3Writer":42}],44:[function(t,e,n){var i,r,s=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function l(t){if(i===setTimeout)return setTimeout(t,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(t,0);try{return i(t,0)}catch(e){try{return i.call(null,t,0)}catch(n){return i.call(this,t,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(t){i=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var c,u=[],h=!1,d=-1;function p(){!h||!c||(h=!1,c.length?u=c.concat(u):d=-1,u.length&&f())}function f(){if(!h){var t=l(p);h=!0;for(var e=u.length;e;){for(c=u,u=[];++d1)for(var n=1;n(n||(n=Promise.resolve())).then(t).catch(t=>setTimeout(()=>{throw t},0))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],46:[function(t,e,n){e.exports=t("./lib")},{"./lib":55}],47:[function(t,e,n){"use strict";e.exports=class t{constructor(t,e=new Map,n=0){this.prefix=t,this._existing=e,this.counter=n}clone(){const{prefix:e,_existing:n,counter:i}=this;return new t(e,new Map(n),i)}getId(t){const e=t&&this._existing.get(t);if(e)return e;const n=this.prefix+this.counter;return this.counter++,t&&this._existing.set(t,n),n}hasId(t){return this._existing.has(t)}getOldIds(){return[...this._existing.keys()]}}},{}],48:[function(t,e,n){"use strict";t("setimmediate");const r=self.crypto||self.msCrypto;e.exports=class{constructor(t){if(!r||!r.subtle)throw new Error("crypto.subtle not found.");if("sha256"===t)this.algorithm={name:"SHA-256"};else{if("sha1"!==t)throw new Error(`Unsupport algorithm "${t}".`);this.algorithm={name:"SHA-1"}}this._content=""}update(t){this._content+=t}digest(){var t=this;return i(function*(){const e=(new TextEncoder).encode(t._content),n=new Uint8Array(yield r.subtle.digest(t.algorithm,e));let i="";for(let t=0;t]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]+(?:<([^:]+:[^>]*)>)[ \\t]+(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?)|(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"(?:(?:\\^\\^(?:<([^:]+:[^>]*)>))|(?:@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)))?))[ \\t]*(?:\\.|(?:(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]*\\.))[ \\t]*$'),e.exports=class t{static parse(t){const e=[],n={},h=t.split(c.eoln);let p=0;for(const f of h){if(p++,c.empty.test(f))continue;const t=f.match(c.quad);if(null===t)throw new Error("N-Quads parse error on line "+p+".");const h={subject:null,predicate:null,object:null,graph:null};if(h.subject=void 0!==t[1]?{termType:s,value:t[1]}:{termType:o,value:t[2]},h.predicate={termType:s,value:t[3]},void 0!==t[4]?h.object={termType:s,value:t[4]}:void 0!==t[5]?h.object={termType:o,value:t[5]}:(h.object={termType:a,value:void 0,datatype:{termType:s}},void 0!==t[7]?h.object.datatype.value=t[7]:void 0!==t[8]?(h.object.datatype.value=i,h.object.language=t[8]):h.object.datatype.value=r,h.object.value=t[6].replace(d,function(t,e,n,i){if(e)switch(e){case"t":return"\t";case"b":return"\b";case"n":return"\n";case"r":return"\r";case"f":return"\f";case'"':return'"';case"'":return"'";case"\\":return"\\"}if(n)return String.fromCharCode(parseInt(n,16));if(i)throw new Error("Unsupported U escape")})),h.graph=void 0!==t[9]?{termType:s,value:t[9]}:void 0!==t[10]?{termType:o,value:t[10]}:{termType:l,value:""},h.graph.value in n){let t=!0;const i=n[h.graph.value];for(const e of i)if(u(e,h)){t=!1;break}t&&(i.push(h),e.push(h))}else n[h.graph.value]=[h],e.push(h)}return e}static serialize(e){Array.isArray(e)||(e=t.legacyDatasetToQuads(e));const n=[];for(const i of e)n.push(t.serializeQuad(i));return n.sort().join("")}static serializeQuad(t){const e=t.subject,n=t.object,a=t.graph;let l="";return l+=e.termType===s?`<${e.value}>`:`${e.value}`,l+=` <${t.predicate.value}> `,n.termType===s?l+=`<${n.value}>`:n.termType===o?l+=n.value:(l+=`"${c=n.value,c.replace(h,function(t){switch(t){case'"':return'\\"';case"\\":return"\\\\";case"\n":return"\\n";case"\r":return"\\r"}})}"`,n.datatype.value===i?n.language&&(l+=`@${n.language}`):n.datatype.value!==r&&(l+=`^^<${n.datatype.value}>`)),a.termType===s?l+=` <${a.value}>`:a.termType===o&&(l+=` ${a.value}`),l+=" .\n",l;var c}static legacyDatasetToQuads(t){const e=[],n={"blank node":o,IRI:s,literal:a};for(const c in t)t[c].forEach(t=>{const u={};for(const e in t){const o=t[e],l={termType:n[o.type],value:o.value};l.termType===a&&(l.datatype={termType:s},"datatype"in o&&(l.datatype.value=o.datatype),"language"in o?("datatype"in o||(l.datatype.value=i),l.language=o.language):"datatype"in o||(l.datatype.value=r)),u[e]=l}u.graph="@default"===c?{termType:l,value:""}:{termType:c.startsWith("_:")?o:s,value:c},e.push(u)});return e}};const h=/["\\\n\r]/g;const d=/(?:\\([tbnrf"'\\]))|(?:\\u([0-9A-Fa-f]{4}))|(?:\\U([0-9A-Fa-f]{8}))/g},{}],50:[function(t,e,n){"use strict";e.exports=class{constructor(t){this.current=t.sort(),this.done=!1,this.dir=new Map;for(let e=0;ei)&&(a&&o>0&&n>t[o-1]||!a&&ot[o+1])&&(i=n,r=o)}if(null===i)this.done=!0;else{const n=e.get(i)?r-1:r+1;t[r]=t[n],t[n]=i;for(const r of t)r>i&&e.set(r,!e.get(r))}return n}}},{}],51:[function(t,e,n){(function(n){(function(){"use strict";const r=t("./IdentifierIssuer"),s=t("./MessageDigest"),o=t("./Permuter"),a=t("./NQuads");function l(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new r("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){var e=this;return i(function*(){e.quads=t;for(const r of t)e._addBlankNodeQuadInfo({quad:r,component:r.subject}),e._addBlankNodeQuadInfo({quad:r,component:r.object}),e._addBlankNodeQuadInfo({quad:r,component:r.graph});const n=new Map,i=[...e.blankNodeInfo.keys()];let s=0;for(const t of i)++s%100==0&&(yield e._yield()),yield e._hashAndTrackBlankNode({id:t,hashToBlankNodes:n});const o=[...n.keys()].sort(),c=[];for(const t of o){const i=n.get(t);i.length>1?c.push(i):e.canonicalIssuer.getId(i[0])}for(const t of c){const n=[];for(const i of t){if(e.canonicalIssuer.hasId(i))continue;const t=new r("_:b");t.getId(i);const s=yield e.hashNDegreeQuads(i,t);n.push(s)}n.sort(l);for(const t of n){const n=t.issuer.getOldIds();for(const t of n)e.canonicalIssuer.getId(t)}}const u=[];for(const t of e.quads){const n=wt({},t);n.subject=e._useCanonicalId({component:n.subject}),n.object=e._useCanonicalId({component:n.object}),n.graph=e._useCanonicalId({component:n.graph}),u.push(a.serializeQuad(n))}return u.sort(),u.join("")})()}hashFirstDegreeQuads(t){var e=this;return i(function*(){const n=[],i=e.blankNodeInfo.get(t),r=i.quads;for(const s of r){const i={subject:null,predicate:s.predicate,object:null,graph:null};i.subject=e.modifyFirstDegreeComponent(t,s.subject,"subject"),i.object=e.modifyFirstDegreeComponent(t,s.object,"object"),i.graph=e.modifyFirstDegreeComponent(t,s.graph,"graph"),n.push(a.serializeQuad(i))}n.sort();const o=new s(e.hashAlgorithm);for(const t of n)o.update(t);return i.hash=yield o.digest(),i.hash})()}hashRelatedBlankNode(t,e,n,r){var o=this;return i(function*(){let i;i=o.canonicalIssuer.hasId(t)?o.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):o.blankNodeInfo.get(t).hash;const a=new s(o.hashAlgorithm);return a.update(r),"g"!==r&&a.update(o.getRelatedPredicate(e)),a.update(i),a.digest()})()}hashNDegreeQuads(t,e){var n=this;return i(function*(){const i=new s(n.hashAlgorithm),r=yield n.createHashToRelated(t,e),a=[...r.keys()].sort();for(const t of a){i.update(t);let s,a="";const l=new o(r.get(t));let c=0;for(;l.hasNext();){const t=l.next();++c%3==0&&(yield n._yield());let i=e.clone(),r="";const o=[];let u=!1;for(const e of t)if(n.canonicalIssuer.hasId(e)?r+=n.canonicalIssuer.getId(e):(i.hasId(e)||o.push(e),r+=i.getId(e)),0!==a.length&&r>a){u=!0;break}if(!u){for(const t of o){const e=yield n.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==a.length&&r>a){u=!0;break}}u||(0===a.length||r`}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r)++s%100==0&&(yield n._yield()),yield Promise.all([n._addRelatedBlankNodeHash({quad:o,component:o.subject,position:"s",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.object,position:"o",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.graph,position:"g",id:t,issuer:e,hashToRelated:i})]);return i})()}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){var n=this;return i(function*(){const i=yield n.hashFirstDegreeQuads(t),r=e.get(i);r?r.push(t):e.set(i,[t])})()}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:r,issuer:s,hashToRelated:o}){var a=this;return i(function*(){if("BlankNode"!==e.termType||e.value===r)return;const i=e.value,l=yield a.hashRelatedBlankNode(i,t,s,n),c=o.get(l);c?c.push(i):o.set(l,[i])})()}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}_yield(){return i(function*(){return new Promise(t=>n(t))})()}}}).call(this)}).call(this,t("timers").setImmediate)},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50,timers:89}],52:[function(t,e,n){"use strict";const i=t("./IdentifierIssuer"),r=t("./MessageDigest"),s=t("./Permuter"),o=t("./NQuads");function a(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){this.quads=t;for(const i of t)this._addBlankNodeQuadInfo({quad:i,component:i.subject}),this._addBlankNodeQuadInfo({quad:i,component:i.object}),this._addBlankNodeQuadInfo({quad:i,component:i.graph});const e=new Map,n=[...this.blankNodeInfo.keys()];for(const i of n)this._hashAndTrackBlankNode({id:i,hashToBlankNodes:e});const r=[...e.keys()].sort(),s=[];for(const i of r){const t=e.get(i);t.length>1?s.push(t):this.canonicalIssuer.getId(t[0])}for(const o of s){const t=[];for(const e of o){if(this.canonicalIssuer.hasId(e))continue;const n=new i("_:b");n.getId(e);const r=this.hashNDegreeQuads(e,n);t.push(r)}t.sort(a);for(const e of t){const t=e.issuer.getOldIds();for(const e of t)this.canonicalIssuer.getId(e)}}const l=[];for(const i of this.quads){const t=wt({},i);t.subject=this._useCanonicalId({component:t.subject}),t.object=this._useCanonicalId({component:t.object}),t.graph=this._useCanonicalId({component:t.graph}),l.push(o.serializeQuad(t))}return l.sort(),l.join("")}hashFirstDegreeQuads(t){const e=[],n=this.blankNodeInfo.get(t),i=n.quads;for(const r of i){const n={subject:null,predicate:r.predicate,object:null,graph:null};n.subject=this.modifyFirstDegreeComponent(t,r.subject,"subject"),n.object=this.modifyFirstDegreeComponent(t,r.object,"object"),n.graph=this.modifyFirstDegreeComponent(t,r.graph,"graph"),e.push(o.serializeQuad(n))}e.sort();const s=new r(this.hashAlgorithm);for(const r of e)s.update(r);return n.hash=s.digest(),n.hash}hashRelatedBlankNode(t,e,n,i){let s;s=this.canonicalIssuer.hasId(t)?this.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):this.blankNodeInfo.get(t).hash;const o=new r(this.hashAlgorithm);return o.update(i),"g"!==i&&o.update(this.getRelatedPredicate(e)),o.update(s),o.digest()}hashNDegreeQuads(t,e){const n=new r(this.hashAlgorithm),i=this.createHashToRelated(t,e),o=[...i.keys()].sort();for(const r of o){n.update(r);let t,o="";const a=new s(i.get(r));for(;a.hasNext();){const n=a.next();let i=e.clone(),r="";const s=[];let l=!1;for(const t of n)if(this.canonicalIssuer.hasId(t)?r+=this.canonicalIssuer.getId(t):(i.hasId(t)||s.push(t),r+=i.getId(t)),0!==o.length&&r>o){l=!0;break}if(!l){for(const t of s){const e=this.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==o.length&&r>o){l=!0;break}}l||(0===o.length||r`}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i)this._addRelatedBlankNodeHash({quad:r,component:r.subject,position:"s",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.object,position:"o",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.graph,position:"g",id:t,issuer:e,hashToRelated:n});return n}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){const n=this.hashFirstDegreeQuads(t),i=e.get(n);i?i.push(t):e.set(n,[t])}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:i,issuer:r,hashToRelated:s}){if("BlankNode"!==e.termType||e.value===i)return;const o=e.value,a=this.hashRelatedBlankNode(o,t,r,n),l=s.get(a);l?l.push(o):s.set(a,[o])}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}}},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50}],53:[function(t,e,n){"use strict";const r=t("./URDNA2015");e.exports=class extends r{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r){let r,a;if("BlankNode"===o.subject.termType&&o.subject.value!==t)a=o.subject.value,r="p";else{if("BlankNode"!==o.object.termType||o.object.value===t)continue;a=o.object.value,r="r"}++s%100==0&&(yield n._yield());const l=yield n.hashRelatedBlankNode(a,o,e,r),c=i.get(l);c?c.push(a):i.set(l,[a])}return i})()}}},{"./URDNA2015":51}],54:[function(t,e,n){"use strict";const i=t("./URDNA2015Sync");e.exports=class extends i{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i){let i,s;if("BlankNode"===r.subject.termType&&r.subject.value!==t)s=r.subject.value,i="p";else{if("BlankNode"!==r.object.termType||r.object.value===t)continue;s=r.object.value,i="r"}const o=this.hashRelatedBlankNode(s,r,e,i),a=n.get(o);a?a.push(s):n.set(o,[s])}return n}}},{"./URDNA2015Sync":52}],55:[function(t,e,n){"use strict";const r=t("./URDNA2015"),s=t("./URGNA2012"),o=t("./URDNA2015Sync"),a=t("./URGNA2012Sync");let l;try{l=t("rdf-canonize-native")}catch(u){}const c={};e.exports=c,c.NQuads=t("./NQuads"),c.IdentifierIssuer=t("./IdentifierIssuer"),c._rdfCanonizeNative=function(t){return t&&(l=t),l},c.canonize=function(){var t=i(function*(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(!l)throw new Error("rdf-canonize-native not available");return new Promise((n,i)=>l.canonize(t,e,(t,e)=>t?i(t):n(e)))}if("URDNA2015"===e.algorithm)return new r(e).main(t);if("URGNA2012"===e.algorithm)return new s(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")});return function(e,n){return t.apply(this,arguments)}}(),c._canonizeSync=function(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(l)return l.canonizeSync(t,e);throw new Error("rdf-canonize-native not available")}if("URDNA2015"===e.algorithm)return new o(e).main(t);if("URGNA2012"===e.algorithm)return new a(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")}},{"./IdentifierIssuer":47,"./NQuads":49,"./URDNA2015":51,"./URDNA2015Sync":52,"./URGNA2012":53,"./URGNA2012Sync":54,"rdf-canonize-native":3}],56:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/BlankNode"),n),r(t("./lib/DataFactory"),n),r(t("./lib/DefaultGraph"),n),r(t("./lib/Literal"),n),r(t("./lib/NamedNode"),n),r(t("./lib/Quad"),n),r(t("./lib/Variable"),n)},{"./lib/BlankNode":57,"./lib/DataFactory":58,"./lib/DefaultGraph":59,"./lib/Literal":60,"./lib/NamedNode":61,"./lib/Quad":62,"./lib/Variable":63}],57:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.BlankNode=void 0;n.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},{}],58:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DataFactory=void 0;const i=t("./BlankNode"),r=t("./DefaultGraph"),s=t("./Literal"),o=t("./NamedNode"),a=t("./Quad"),l=t("./Variable");let c=0;n.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},{"./BlankNode":57,"./DefaultGraph":59,"./Literal":60,"./NamedNode":61,"./Quad":62,"./Variable":63}],59:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DefaultGraph=void 0;class i{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}n.DefaultGraph=i,i.INSTANCE=new i},{}],60:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Literal=void 0;const i=t("./NamedNode");class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}n.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},{"./NamedNode":61}],61:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NamedNode=void 0;n.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},{}],62:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Quad=void 0;n.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},{}],63:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Variable=void 0;n.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},{}],64:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/RdfXmlParser"),n)},{"./lib/RdfXmlParser":66}],65:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseError=void 0;class i extends Error{constructor(t,e){const n=t.saxStream._parser;super(t.trackPosition?`Line ${n.line+1} column ${n.column+1}: ${e}`:e)}}n.ParseError=i},{}],66:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseType=n.RdfXmlParser=void 0;const i=t("relative-to-absolute-iri"),r=t("sax"),s=t("stream"),o=t("./ParseError"),a=t("rdf-data-factory");class l extends s.Transform{constructor(t){super({readableObjectMode:!0}),this.activeTagStack=[],this.nodeIds={},t&&(Object.assign(this,t),this.options=t),this.dataFactory||(this.dataFactory=new a.DataFactory),this.baseIRI||(this.baseIRI=""),this.defaultGraph||(this.defaultGraph=this.dataFactory.defaultGraph()),this.saxStream=r.createStream(this.strict,{xmlns:!1,position:this.trackPosition}),this.strict||(this.saxStream._parser.looseCase="toString"),this.attachSaxListeners()}static parseNamespace(t,e){const n={};let i=!1;for(const s in t.attributes)s.startsWith("xmlns")&&(5===s.length?(i=!0,n[""]=t.attributes[s]):":"===s.charAt(5)&&(i=!0,n[s.substr(6)]=t.attributes[s]));const r=e&&e.ns?e.ns:[l.DEFAULT_NS];return i?r.concat([n]):r}static expandPrefixedTerm(t,e,n){const i=t.indexOf(":");let r,s;i>=0?(r=t.substr(0,i),s=t.substr(i+1)):(r="",s=t);let a=null,l=null;for(let o=e.length-1;o>=0;o--){const t=e[o][r];if(t){a=t;break}l||(l=e[o][""])}if(!a){if(r&&"xmlns"!==r)throw new o.ParseError(n,`The prefix '${r}' in term '${t}' was not bound.`);a=l||""}return{prefix:r,local:s,uri:a}}static isValidIri(t){return l.IRI_REGEX.test(t)}import(t){const e=new s.PassThrough({readableObjectMode:!0});t.on("error",t=>n.emit("error",t)),t.on("data",t=>e.push(t)),t.on("end",()=>e.push(null));const n=e.pipe(new l(this.options));return n}_transform(t,e,n){try{this.saxStream.write(t,e)}catch(i){return n(i)}n()}newParseError(t){return new o.ParseError(this,t)}valueToUri(t,e){return this.uriToNamedNode(i.resolve(t,e.baseIRI))}uriToNamedNode(t){if(!l.isValidIri(t))throw this.newParseError(`Invalid URI: ${t}`);return this.dataFactory.namedNode(t)}validateNcname(t){if(!l.NCNAME_MATCHER.test(t))throw this.newParseError(`Not a valid NCName: ${t}`)}attachSaxListeners(){this.saxStream.on("error",t=>this.emit("error",t)),this.saxStream.on("opentag",this.onTag.bind(this)),this.saxStream.on("text",this.onText.bind(this)),this.saxStream.on("closetag",this.onCloseTag.bind(this)),this.saxStream.on("doctype",this.onDoctype.bind(this))}onTag(t){const e=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null;let n=c.RESOURCE;if(e&&(e.hadChildren=!0,n=e.childrenParseType),e&&e.childrenStringTags){const n=t.name;let i="";for(const e in t.attributes)i+=` ${e}="${t.attributes[e]}"`;e.childrenStringTags.push(`<${n}${i}>`);const r={childrenStringTags:e.childrenStringTags};return r.childrenStringEmitClosingTag=``,void this.activeTagStack.push(r)}const i={};e?(i.language=e.language,i.baseIRI=e.baseIRI):i.baseIRI=this.baseIRI,this.activeTagStack.push(i),i.ns=l.parseNamespace(t,e),n===c.RESOURCE?this.onTagResource(t,i,e,!e):this.onTagProperty(t,i,e)}onTagResource(t,e,n,r){const s=l.expandPrefixedTerm(t.name,e.ns,this);e.childrenParseType=c.PROPERTY;let o=!0;if(s.uri===l.RDF){if(!r&&l.FORBIDDEN_NODE_ELEMENTS.indexOf(s.local)>=0)throw this.newParseError(`Illegal node element name: ${s.local}`);switch(s.local){case"RDF":e.childrenParseType=c.RESOURCE;case"Description":o=!1}}const a=[],u=[];let h=null,d=!1,p=!1,f=null;for(const c in t.attributes){const r=t.attributes[c],s=l.expandPrefixedTerm(c,e.ns,this);if(n&&s.uri===l.RDF)switch(s.local){case"about":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);h=r;continue;case"ID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h="#"+r,d=!0;continue;case"nodeID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h=r,p=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":f=r;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(s.uri===l.XML){if("lang"===s.local){e.language=""===r?null:r.toLowerCase();continue}if("base"===s.local){e.baseIRI=i.resolve(r,e.baseIRI);continue}}"xml"!==s.prefix&&s.uri&&(a.push(this.uriToNamedNode(s.uri+s.local)),u.push(r))}if(null!==h&&(e.subject=p?this.dataFactory.blankNode(h):this.valueToUri(h,e),d&&this.claimNodeId(e.subject)),e.subject||(e.subject=this.dataFactory.blankNode()),o){const t=this.uriToNamedNode(s.uri+s.local);this.emitTriple(e.subject,this.dataFactory.namedNode(l.RDF+"type"),t,n?n.reifiedStatementId:null)}if(n){if(n.predicate)if(n.childrenCollectionSubject){const t=this.dataFactory.blankNode();this.emitTriple(n.childrenCollectionSubject,n.childrenCollectionPredicate,t,n.reifiedStatementId),this.emitTriple(t,this.dataFactory.namedNode(l.RDF+"first"),e.subject,e.reifiedStatementId),n.childrenCollectionSubject=t,n.childrenCollectionPredicate=this.dataFactory.namedNode(l.RDF+"rest")}else{this.emitTriple(n.subject,n.predicate,e.subject,n.reifiedStatementId);for(let t=0;t=0)throw this.newParseError(`Illegal property element name: ${i.local}`);e.predicateSubPredicates=[],e.predicateSubObjects=[];let r=!1,s=!1,o=null,a=!0;const u=[],h=[];for(const d in t.attributes){const n=t.attributes[d],i=l.expandPrefixedTerm(d,e.ns,this);if(i.uri===l.RDF)switch(i.local){case"resource":if(o)throw this.newParseError(`Found both rdf:resource (${n}) and rdf:nodeID (${o}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${n})`);e.hadChildren=!0,o=n,a=!1;continue;case"datatype":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:datatype (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${n})`);e.datatype=this.valueToUri(n,e);continue;case"nodeID":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:nodeID (${n}).`);if(e.hadChildren)throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${n})`);this.validateNcname(n),e.hadChildren=!0,o=n,a=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(s)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(e.datatype)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${e.datatype.value})`);if(o)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${o})`);if("Resource"===n){r=!0,e.childrenParseType=c.PROPERTY;const t=this.dataFactory.blankNode();this.emitTriple(e.subject,e.predicate,t,e.reifiedStatementId),e.subject=t,e.predicate=null}else"Collection"===n?(r=!0,e.hadChildren=!0,e.childrenCollectionSubject=e.subject,e.childrenCollectionPredicate=e.predicate,a=!1):"Literal"===n&&(r=!0,e.childrenTagsToString=!0,e.childrenStringTags=[]);continue;case"ID":this.validateNcname(n),e.reifiedStatementId=this.valueToUri("#"+n,e),this.claimNodeId(e.reifiedStatementId);continue}else if(i.uri===l.XML&&"lang"===i.local){e.language=""===n?null:n.toLowerCase();continue}if("xml"!==i.prefix&&"xmlns"!==i.prefix&&i.uri){if(r||e.datatype)throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${n}`);e.hadChildren=!0,s=!0,u.push(this.uriToNamedNode(i.uri+i.local)),h.push(this.dataFactory.literal(n,e.datatype||e.language))}}if(null!==o){const t=e.subject;e.subject=a?this.dataFactory.blankNode(o):this.valueToUri(o,e),this.emitTriple(t,e.predicate,e.subject,e.reifiedStatementId);for(let n=0;n/g,(t,e,n)=>(this.saxStream._parser.ENTITIES[e]=n,""))}}var c,u;n.RdfXmlParser=l,l.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*):[^ "<>{}|\\\[\]`]*$/,l.MIME_TYPE="application/rdf+xml",l.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",l.XML="http://www.w3.org/XML/1998/namespace",l.XMLNS="http://www.w3.org/2000/xmlns/",l.DEFAULT_NS={xml:l.XML},l.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],l.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],l.NCNAME_MATCHER=/^([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_])([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_\-.0-9#xB7\u{0300}-\u{036F}\u{203F}-\u{2040}])*$/u,(u=c=n.ParseType||(n.ParseType={}))[u.RESOURCE=0]="RESOURCE",u[u.PROPERTY=1]="PROPERTY"},{"./ParseError":65,"rdf-data-factory":56,"relative-to-absolute-iri":82,sax:85,stream:87}],67:[function(t,e,n){"use strict";var i={};function r(t,e,n){n||(n=Error);var r=function(t){function n(n,i,r){return t.call(this,function(t,n,i){return"string"==typeof e?e:e(t,n,i)}(n,i,r))||this}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(n,t),n}(n);r.prototype.name=n.name,r.prototype.code=t,i[t]=r}function s(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(t){return String(t)}),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}r("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(t,e,n){var i,r;if("string"==typeof e&&function(t,e,n){return t.substr(!n||n<0?0:+n,e.length)===e}(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))r="The ".concat(t," ").concat(i," ").concat(s(e,"type"));else{var o=function(t,e,n){return"number"!=typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";r='The "'.concat(t,'" ').concat(o," ").concat(i," ").concat(s(e,"type"))}return r+". Received type ".concat(typeof n)},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=i},{}],68:[function(t,e,n){(function(n){(function(){"use strict";var i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};e.exports=c;var r=t("./_stream_readable"),s=t("./_stream_writable");t("inherits")(c,r);for(var o=i(s.prototype),a=0;a0)if("string"!=typeof e&&!o.objectMode&&Object.getPrototypeOf(e)!==a.prototype&&(e=function(t){return a.from(t)}(e)),i)o.endEmitted?x(t,new w):T(t,o,e,!0);else if(o.ended)x(t,new v);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!n?(e=o.decoder.write(e),o.objectMode||0!==e.length?T(t,o,e,!1):I(t,o)):T(t,o,e,!1)}else i||(o.reading=!1,I(t,o));return!o.ended&&(o.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=k?t=k:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;c("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(c("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(M,t))}function M(t){var e=t._readableState;c("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,j(t)}function I(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(D,t,e))}function D(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function N(t){c("readable nexttick read 0"),t.read(0)}function L(t,e){c("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),j(t),e.flowing&&!e.reading&&t.read(0)}function j(t){var e=t._readableState;for(c("flow",e.flowing);e.flowing&&null!==t.read(););}function F(t,e){return 0===e.length?null:(e.objectMode?n=e.buffer.shift():!t||t>=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n);var n}function B(t){var e=t._readableState;c("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(V,e,t))}function V(t,e){if(c("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}function z(t,e){for(var n=0,i=t.length;n=e.highWaterMark:e.length>0)||e.ended))return c("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?B(this):P(this),null;if(0===(t=A(t,e))&&e.ended)return 0===e.length&&B(this),null;var i,r=e.needReadable;return c("need readable",r),(0===e.length||e.length-t0?F(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&B(this)),null!==i&&this.emit("data",i),i},C.prototype._read=function(t){x(this,new _("_read()"))},C.prototype.pipe=function(t,e){var i=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t)}r.pipesCount+=1,c("pipe count=%d opts=%j",r.pipesCount,e);var o=e&&!1===e.end||t===n.stdout||t===n.stderr?m:l;function a(e,n){c("onunpipe"),e===i&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,c("cleanup"),t.removeListener("close",f),t.removeListener("finish",g),t.removeListener("drain",u),t.removeListener("error",p),t.removeListener("unpipe",a),i.removeListener("end",l),i.removeListener("end",m),i.removeListener("data",d),h=!0,r.awaitDrain&&(!t._writableState||t._writableState.needDrain)&&u())}function l(){c("onend"),t.end()}r.endEmitted?n.nextTick(o):i.once("end",o),t.on("unpipe",a);var u=function(t){return function(){var e=t._readableState;c("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,j(t))}}(i);t.on("drain",u);var h=!1;function d(e){c("ondata");var n=t.write(e);c("dest.write",n),!1===n&&((1===r.pipesCount&&r.pipes===t||r.pipesCount>1&&-1!==z(r.pipes,t))&&!h&&(c("false write response, pause",r.awaitDrain),r.awaitDrain++),i.pause())}function p(e){c("onerror",e),m(),t.removeListener("error",p),0===s(t,"error")&&x(t,e)}function f(){t.removeListener("finish",g),m()}function g(){c("onfinish"),t.removeListener("close",f),m()}function m(){c("unpipe"),i.unpipe(t)}return i.on("data",d),function(t,e,n){if("function"==typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",p),t.once("close",f),t.once("finish",g),t.emit("pipe",i),r.flowing||(c("pipe resume"),i.resume()),t},C.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n)),this;if(!t){var i=e.pipes,r=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,!1!==r.flowing&&this.resume()):"readable"===t&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,c("on readable",r.length,r.reading),r.length?P(this):r.reading||n.nextTick(N,this)),i},C.prototype.removeListener=function(t,e){var i=o.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(R,this),i},C.prototype.removeAllListeners=function(t){var e=o.prototype.removeAllListeners.apply(this,arguments);return("readable"===t||void 0===t)&&n.nextTick(R,this),e},C.prototype.resume=function(){var t=this._readableState;return t.flowing||(c("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(L,t,e))}(this,t)),t.paused=!1,this},C.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},C.prototype.wrap=function(t){var e=this,n=this._readableState,i=!1;for(var r in t.on("end",function(){if(c("wrapped end"),n.decoder&&!n.ended){var t=n.decoder.end();t&&t.length&&e.push(t)}e.push(null)}),t.on("data",function(r){c("wrapped data"),n.decoder&&(r=n.decoder.write(r)),n.objectMode&&null==r||!(n.objectMode||r&&r.length)||e.push(r)||(i=!0,t.pause())}),t)void 0===this[r]&&"function"==typeof t[r]&&(this[r]=function(e){return function(){return t[e].apply(t,arguments)}}(r));for(var s=0;s-1))throw new w(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(C.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(C.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),C.prototype._write=function(t,e,n){n(new g("_write()"))},C.prototype._writev=null,C.prototype.end=function(t,e,i){var r=this._writableState;return"function"==typeof t?(i=t,t=null,e=null):"function"==typeof e&&(i=e,e=null),null!=t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||function(t,e,i){e.ending=!0,I(t,e),i&&(e.finished?n.nextTick(i):t.once("finish",i)),e.ended=!0,t.writable=!1}(this,r,i),this},Object.defineProperty(C.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(C.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){!this._writableState||(this._writableState.destroyed=t)}}),C.prototype.destroy=h.destroy,C.prototype._undestroy=h.undestroy,C.prototype._destroy=function(t,e){e(t)}}).call(this)}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../errors":67,"./_stream_duplex":68,"./internal/streams/destroy":75,"./internal/streams/state":79,"./internal/streams/stream":80,_process:44,buffer:6,inherits:10,"util-deprecate":90}],73:[function(t,e,n){(function(n){(function(){"use strict";var i;function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var s=t("./end-of-stream"),o=Symbol("lastResolve"),a=Symbol("lastReject"),l=Symbol("error"),c=Symbol("ended"),u=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function p(t,e){return{value:t,done:e}}function f(t){var e=t[o];if(null!==e){var n=t[d].read();null!==n&&(t[u]=null,t[o]=null,t[a]=null,e(p(n,!1)))}}function g(t){n.nextTick(f,t)}var m=Object.getPrototypeOf(function(){}),b=Object.setPrototypeOf((r(i={get stream(){return this[d]},next:function(){var t=this,e=this[l];if(null!==e)return Promise.reject(e);if(this[c])return Promise.resolve(p(void 0,!0));if(this[d].destroyed)return new Promise(function(e,i){n.nextTick(function(){t[l]?i(t[l]):e(p(void 0,!0))})});var i,r=this[u];if(r)i=new Promise(function(t,e){return function(n,i){t.then(function(){e[c]?n(p(void 0,!0)):e[h](n,i)},i)}}(r,this));else{var s=this[d].read();if(null!==s)return Promise.resolve(p(s,!1));i=new Promise(this[h])}return this[u]=i,i}},Symbol.asyncIterator,function(){return this}),r(i,"return",function(){var t=this;return new Promise(function(e,n){t[d].destroy(null,function(t){t?n(t):e(p(void 0,!0))})})}),i),m);e.exports=function(t){var e,n=Object.create(b,(r(e={},d,{value:t,writable:!0}),r(e,o,{value:null,writable:!0}),r(e,a,{value:null,writable:!0}),r(e,l,{value:null,writable:!0}),r(e,c,{value:t._readableState.endEmitted,writable:!0}),r(e,h,{value:function(t,e){var i=n[d].read();i?(n[u]=null,n[o]=null,n[a]=null,t(p(i,!1))):(n[o]=t,n[a]=e)},writable:!0}),e));return n[u]=null,s(t,function(t){if(t&&"ERR_STREAM_PREMATURE_CLOSE"!==t.code){var e=n[a];return null!==e&&(n[u]=null,n[o]=null,n[a]=null,e(t)),void(n[l]=t)}var i=n[o];null!==i&&(n[u]=null,n[o]=null,n[a]=null,i(p(void 0,!0))),n[c]=!0}),t.on("readable",g.bind(null,n)),n}}).call(this)}).call(this,t("_process"))},{"./end-of-stream":76,_process:44}],74:[function(t,e,n){"use strict";function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,i)}return n}function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function s(t,e){for(var n=0;n0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n}},{key:"concat",value:function(t){if(0===this.length)return o.alloc(0);for(var e=o.allocUnsafe(t>>>0),n=this.head,i=0;n;)c(n.data,e,i),i+=n.data.length,n=n.next;return e}},{key:"consume",value:function(t,e){var n;return tr.length?r.length:t;if(i+=s===r.length?r:r.slice(0,t),0==(t-=s)){s===r.length?(++n,this.head=e.next?e.next:this.tail=null):(this.head=e,e.data=r.slice(s));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(t){var e=o.allocUnsafe(t),n=this.head,i=1;for(n.data.copy(e),t-=n.data.length;n=n.next;){var r=n.data,s=t>r.length?r.length:t;if(r.copy(e,e.length-t,0,s),0==(t-=s)){s===r.length?(++i,this.head=n.next?n.next:this.tail=null):(this.head=n,n.data=r.slice(s));break}++i}return this.length-=i,e}},{key:l,value:function(t,e){return a(this,function(t){for(var e=1;e0,function(t){r||(r=t),t&&o.forEach(c),!s&&(o.forEach(c),i(r))})});return e.reduce(u)}},{"../../../errors":67,"./end-of-stream":76}],79:[function(t,e,n){"use strict";var i=t("../../../errors").codes.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(t,e,n,r){var s=function(t,e,n){return null!=t.highWaterMark?t.highWaterMark:e?t[n]:null}(e,r,n);if(null!=s){if(!isFinite(s)||Math.floor(s)!==s||s<0)throw new i(r?n:"highWaterMark",s);return Math.floor(s)}return t.objectMode?16:16384}}},{"../../../errors":67}],80:[function(t,e,n){e.exports=t("events").EventEmitter},{events:8}],81:[function(t,e,n){(n=e.exports=t("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=t("./lib/_stream_writable.js"),n.Duplex=t("./lib/_stream_duplex.js"),n.Transform=t("./lib/_stream_transform.js"),n.PassThrough=t("./lib/_stream_passthrough.js"),n.finished=t("./lib/internal/streams/end-of-stream.js"),n.pipeline=t("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":68,"./lib/_stream_passthrough.js":69,"./lib/_stream_readable.js":70,"./lib/_stream_transform.js":71,"./lib/_stream_writable.js":72,"./lib/internal/streams/end-of-stream.js":76,"./lib/internal/streams/pipeline.js":78}],82:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(t){for(var e in t)n.hasOwnProperty(e)||(n[e]=t[e])}(t("./lib/Resolve"))},{"./lib/Resolve":83}],83:[function(t,e,n){"use strict";function i(t){const e=[];let n=0;for(;nt.join("")).join("/")}function r(t,e){let n=e+1;e>=0?"/"===t[e+1]&&"/"===t[e+2]&&(n=e+3):"/"===t[0]&&"/"===t[1]&&(n=2);const r=t.indexOf("/",n);return r<0?t:t.substr(0,r)+i(t.substr(r))}function s(t){return!t||"#"===t||"?"===t||"/"===t}Object.defineProperty(n,"__esModule",{value:!0}),n.resolve=function(t,e){const n=(e=e||"").indexOf("#");if(n>0&&(e=e.substr(0,n)),!t.length){if(e.indexOf(":")<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);return e}if(t.startsWith("?")){const n=e.indexOf("?");return n>0&&(e=e.substr(0,n)),e+t}if(t.startsWith("#"))return e+t;if(!e.length){const e=t.indexOf(":");if(e<0)throw new Error(`Found invalid relative IRI '${t}' for a missing baseIRI`);return r(t,e)}const s=t.indexOf(":");if(s>=0)return r(t,s);const o=e.indexOf(":");if(o<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);const a=e.substr(0,o+1);if(0===t.indexOf("//"))return a+r(t,s);let l;if(e.indexOf("//",o)===o+1){if(l=e.indexOf("/",o+3),l<0)return e.length>o+3?e+"/"+r(t,s):a+r(t,s)}else if(l=e.indexOf("/",o+1),l<0)return a+r(t,s);if(0===t.indexOf("/"))return e.substr(0,l)+i(t);let c=e.substr(l);const u=c.lastIndexOf("/");return u>=0&&u"===s?(O(e,"onsgmldeclaration",e.sgmlDecl),e.sgmlDecl="",e.state=S.TEXT):(m(s)&&(e.state=S.SGML_DECL_QUOTED),e.sgmlDecl+=s);continue;case S.SGML_DECL_QUOTED:s===e.q&&(e.state=S.SGML_DECL,e.q=""),e.sgmlDecl+=s;continue;case S.DOCTYPE:">"===s?(e.state=S.TEXT,O(e,"ondoctype",e.doctype),e.doctype=!0):(e.doctype+=s,"["===s?e.state=S.DOCTYPE_DTD:m(s)&&(e.state=S.DOCTYPE_QUOTED,e.q=s));continue;case S.DOCTYPE_QUOTED:e.doctype+=s,s===e.q&&(e.q="",e.state=S.DOCTYPE);continue;case S.DOCTYPE_DTD:e.doctype+=s,"]"===s?e.state=S.DOCTYPE:m(s)&&(e.state=S.DOCTYPE_DTD_QUOTED,e.q=s);continue;case S.DOCTYPE_DTD_QUOTED:e.doctype+=s,s===e.q&&(e.state=S.DOCTYPE_DTD,e.q="");continue;case S.COMMENT:"-"===s?e.state=S.COMMENT_ENDING:e.comment+=s;continue;case S.COMMENT_ENDING:"-"===s?(e.state=S.COMMENT_ENDED,e.comment=k(e.opt,e.comment),e.comment&&O(e,"oncomment",e.comment),e.comment=""):(e.comment+="-"+s,e.state=S.COMMENT);continue;case S.COMMENT_ENDED:">"!==s?(M(e,"Malformed comment"),e.comment+="--"+s,e.state=S.COMMENT):e.state=S.TEXT;continue;case S.CDATA:"]"===s?e.state=S.CDATA_ENDING:e.cdata+=s;continue;case S.CDATA_ENDING:"]"===s?e.state=S.CDATA_ENDING_2:(e.cdata+="]"+s,e.state=S.CDATA);continue;case S.CDATA_ENDING_2:">"===s?(e.cdata&&O(e,"oncdata",e.cdata),O(e,"onclosecdata"),e.cdata="",e.state=S.TEXT):"]"===s?e.cdata+="]":(e.cdata+="]]"+s,e.state=S.CDATA);continue;case S.PROC_INST:"?"===s?e.state=S.PROC_INST_ENDING:g(s)?e.state=S.PROC_INST_BODY:e.procInstName+=s;continue;case S.PROC_INST_BODY:if(!e.procInstBody&&g(s))continue;"?"===s?e.state=S.PROC_INST_ENDING:e.procInstBody+=s;continue;case S.PROC_INST_ENDING:">"===s?(O(e,"onprocessinginstruction",{name:e.procInstName,body:e.procInstBody}),e.procInstName=e.procInstBody="",e.state=S.TEXT):(e.procInstBody+="?"+s,e.state=S.PROC_INST_BODY);continue;case S.OPEN_TAG:y(d,s)?e.tagName+=s:(I(e),">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:(g(s)||M(e,"Invalid character in tag name"),e.state=S.ATTRIB));continue;case S.OPEN_TAG_SLASH:">"===s?(N(e,!0),L(e)):(M(e,"Forward-slash in opening tag not followed by >"),e.state=S.ATTRIB);continue;case S.ATTRIB:if(g(s))continue;">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME:"="===s?e.state=S.ATTRIB_VALUE:">"===s?(M(e,"Attribute without value"),e.attribValue=e.attribName,R(e),N(e)):g(s)?e.state=S.ATTRIB_NAME_SAW_WHITE:y(d,s)?e.attribName+=s:M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME_SAW_WHITE:if("="===s)e.state=S.ATTRIB_VALUE;else{if(g(s))continue;M(e,"Attribute without value"),e.tag.attributes[e.attribName]="",e.attribValue="",O(e,"onattribute",{name:e.attribName,value:""}),e.attribName="",">"===s?N(e):y(h,s)?(e.attribName=s,e.state=S.ATTRIB_NAME):(M(e,"Invalid attribute name"),e.state=S.ATTRIB)}continue;case S.ATTRIB_VALUE:if(g(s))continue;m(s)?(e.q=s,e.state=S.ATTRIB_VALUE_QUOTED):(M(e,"Unquoted attribute value"),e.state=S.ATTRIB_VALUE_UNQUOTED,e.attribValue=s);continue;case S.ATTRIB_VALUE_QUOTED:if(s!==e.q){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_Q:e.attribValue+=s;continue}R(e),e.q="",e.state=S.ATTRIB_VALUE_CLOSED;continue;case S.ATTRIB_VALUE_CLOSED:g(s)?e.state=S.ATTRIB:">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(M(e,"No whitespace between attributes"),e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_VALUE_UNQUOTED:if(!b(s)){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_U:e.attribValue+=s;continue}R(e),">"===s?N(e):e.state=S.ATTRIB;continue;case S.CLOSE_TAG:if(e.tagName)">"===s?L(e):y(d,s)?e.tagName+=s:e.script?(e.script+=""===s?L(e):M(e,"Invalid characters in closing tag");continue;case S.TEXT_ENTITY:case S.ATTRIB_VALUE_ENTITY_Q:case S.ATTRIB_VALUE_ENTITY_U:var a,l;switch(e.state){case S.TEXT_ENTITY:a=S.TEXT,l="textNode";break;case S.ATTRIB_VALUE_ENTITY_Q:a=S.ATTRIB_VALUE_QUOTED,l="attribValue";break;case S.ATTRIB_VALUE_ENTITY_U:a=S.ATTRIB_VALUE_UNQUOTED,l="attribValue"}";"===s?(e[l]+=j(e),e.entity="",e.state=a):y(e.entity.length?f:p,s)?e.entity+=s:(M(e,"Invalid character in entity name"),e[l]+="&"+e.entity+s,e.entity="",e.state=a);continue;default:throw new Error(e,"Unknown state: "+e.state)}return e.position>=e.bufferCheckPosition&&function(t){for(var e=Math.max(n.MAX_BUFFER_LENGTH,10),i=0,s=0,o=r.length;se)switch(r[s]){case"textNode":T(t);break;case"cdata":O(t,"oncdata",t.cdata),t.cdata="";break;case"script":O(t,"onscript",t.script),t.script="";break;default:A(t,"Max buffer length exceeded: "+r[s])}i=Math.max(i,a)}t.bufferCheckPosition=n.MAX_BUFFER_LENGTH-i+t.position}(e),e},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){!function(t){T(t),""!==t.cdata&&(O(t,"oncdata",t.cdata),t.cdata=""),""!==t.script&&(O(t,"onscript",t.script),t.script="")}(this)}};try{i=t("stream").Stream}catch(_){i=function(){}}var o=n.EVENTS.filter(function(t){return"error"!==t&&"end"!==t});function a(t,e){if(!(this instanceof a))return new a(t,e);i.apply(this),this._parser=new s(t,e),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(t){n.emit("error",t),n._parser.error=null},this._decoder=null,o.forEach(function(t){Object.defineProperty(n,"on"+t,{get:function(){return n._parser["on"+t]},set:function(e){if(!e)return n.removeAllListeners(t),n._parser["on"+t]=e,e;n.on(t,e)},enumerable:!0,configurable:!1})})}(a.prototype=Object.create(i.prototype,{constructor:{value:a}})).write=function(n){if("function"==typeof e&&"function"==typeof e.isBuffer&&e.isBuffer(n)){if(!this._decoder){var i=t("string_decoder").StringDecoder;this._decoder=new i("utf8")}n=this._decoder.write(n)}return this._parser.write(n.toString()),this.emit("data",n),!0},a.prototype.end=function(t){return t&&t.length&&this.write(t),this._parser.end(),!0},a.prototype.on=function(t,e){var n=this;return!n._parser["on"+t]&&-1!==o.indexOf(t)&&(n._parser["on"+t]=function(){var e=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);e.splice(0,0,t),n.emit.apply(n,e)}),i.prototype.on.call(n,t,e)};var l="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",u={xml:l,xmlns:c},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,d=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,p=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function g(t){return" "===t||"\n"===t||"\r"===t||"\t"===t}function m(t){return'"'===t||"'"===t}function b(t){return">"===t||g(t)}function y(t,e){return t.test(e)}function v(t,e){return!y(t,e)}var _,w,x,S=0;for(var E in n.STATE={BEGIN:S++,BEGIN_WHITESPACE:S++,TEXT:S++,TEXT_ENTITY:S++,OPEN_WAKA:S++,SGML_DECL:S++,SGML_DECL_QUOTED:S++,DOCTYPE:S++,DOCTYPE_QUOTED:S++,DOCTYPE_DTD:S++,DOCTYPE_DTD_QUOTED:S++,COMMENT_STARTING:S++,COMMENT:S++,COMMENT_ENDING:S++,COMMENT_ENDED:S++,CDATA:S++,CDATA_ENDING:S++,CDATA_ENDING_2:S++,PROC_INST:S++,PROC_INST_BODY:S++,PROC_INST_ENDING:S++,OPEN_TAG:S++,OPEN_TAG_SLASH:S++,ATTRIB:S++,ATTRIB_NAME:S++,ATTRIB_NAME_SAW_WHITE:S++,ATTRIB_VALUE:S++,ATTRIB_VALUE_QUOTED:S++,ATTRIB_VALUE_CLOSED:S++,ATTRIB_VALUE_UNQUOTED:S++,ATTRIB_VALUE_ENTITY_Q:S++,ATTRIB_VALUE_ENTITY_U:S++,CLOSE_TAG:S++,CLOSE_TAG_SAW_WHITE:S++,SCRIPT:S++,SCRIPT_ENDING:S++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(t){var e=n.ENTITIES[t],i="number"==typeof e?String.fromCharCode(e):e;n.ENTITIES[t]=i}),n.STATE)n.STATE[n.STATE[E]]=E;function C(t,e,n){t[e]&&t[e](n)}function O(t,e,n){t.textNode&&T(t),C(t,e,n)}function T(t){t.textNode=k(t.opt,t.textNode),t.textNode&&C(t,"ontext",t.textNode),t.textNode=""}function k(t,e){return t.trim&&(e=e.trim()),t.normalize&&(e=e.replace(/\s+/g," ")),e}function A(t,e){return T(t),t.trackPosition&&(e+="\nLine: "+t.line+"\nColumn: "+t.column+"\nChar: "+t.c),e=new Error(e),t.error=e,C(t,"onerror",e),t}function P(t){return t.sawRoot&&!t.closedRoot&&M(t,"Unclosed root tag"),t.state!==S.BEGIN&&t.state!==S.BEGIN_WHITESPACE&&t.state!==S.TEXT&&A(t,"Unexpected end"),T(t),t.c="",t.closed=!0,C(t,"onend"),s.call(t,t.strict,t.opt),t}function M(t,e){if("object"!=typeof t||!(t instanceof s))throw new Error("bad call to strictFail");t.strict&&A(t,e)}function I(t){t.strict||(t.tagName=t.tagName[t.looseCase]());var e=t.tags[t.tags.length-1]||t,n=t.tag={name:t.tagName,attributes:{}};t.opt.xmlns&&(n.ns=e.ns),t.attribList.length=0,O(t,"onopentagstart",n)}function D(t,e){var n=t.indexOf(":")<0?["",t]:t.split(":"),i=n[0],r=n[1];return e&&"xmlns"===t&&(i="xmlns",r=""),{prefix:i,local:r}}function R(t){if(t.strict||(t.attribName=t.attribName[t.looseCase]()),-1!==t.attribList.indexOf(t.attribName)||t.tag.attributes.hasOwnProperty(t.attribName))t.attribName=t.attribValue="";else{if(t.opt.xmlns){var e=D(t.attribName,!0),n=e.local;if("xmlns"===e.prefix)if("xml"===n&&t.attribValue!==l)M(t,"xml: prefix must be bound to "+l+"\nActual: "+t.attribValue);else if("xmlns"===n&&t.attribValue!==c)M(t,"xmlns: prefix must be bound to "+c+"\nActual: "+t.attribValue);else{var i=t.tag,r=t.tags[t.tags.length-1]||t;i.ns===r.ns&&(i.ns=Object.create(r.ns)),i.ns[n]=t.attribValue}t.attribList.push([t.attribName,t.attribValue])}else t.tag.attributes[t.attribName]=t.attribValue,O(t,"onattribute",{name:t.attribName,value:t.attribValue});t.attribName=t.attribValue=""}}function N(t,e){if(t.opt.xmlns){var n=t.tag,i=D(t.tagName);n.prefix=i.prefix,n.local=i.local,n.uri=n.ns[i.prefix]||"",n.prefix&&!n.uri&&(M(t,"Unbound namespace prefix: "+JSON.stringify(t.tagName)),n.uri=i.prefix),n.ns&&(t.tags[t.tags.length-1]||t).ns!==n.ns&&Object.keys(n.ns).forEach(function(e){O(t,"onopennamespace",{prefix:e,uri:n.ns[e]})});for(var r=0,s=t.attribList.length;r",t.tagName="",void(t.state=S.SCRIPT);O(t,"onscript",t.script),t.script=""}var e=t.tags.length,n=t.tagName;t.strict||(n=n[t.looseCase]());for(var i=n;e--&&t.tags[e].name!==i;)M(t,"Unexpected close tag");if(e<0)return M(t,"Unmatched closing tag: "+t.tagName),t.textNode+="",void(t.state=S.TEXT);t.tagName=n;for(var r=t.tags.length;r-- >e;){var s=t.tag=t.tags.pop();t.tagName=t.tag.name,O(t,"onclosetag",t.tagName);var o={};for(var a in s.ns)o[a]=s.ns[a];t.opt.xmlns&&s.ns!==(t.tags[t.tags.length-1]||t).ns&&Object.keys(s.ns).forEach(function(e){O(t,"onclosenamespace",{prefix:e,uri:s.ns[e]})})}0===e&&(t.closedRoot=!0),t.tagName=t.attribValue=t.attribName="",t.attribList.length=0,t.state=S.TEXT}function j(t){var e,n=t.entity,i=n.toLowerCase(),r="";return t.ENTITIES[n]?t.ENTITIES[n]:t.ENTITIES[i]?t.ENTITIES[i]:("#"===(n=i).charAt(0)&&("x"===n.charAt(1)?(n=n.slice(2),r=(e=parseInt(n,16)).toString(16)):(n=n.slice(1),r=(e=parseInt(n,10)).toString(10))),n=n.replace(/^0+/,""),isNaN(e)||r.toLowerCase()!==n?(M(t,"Invalid character entity"),"&"+t.entity+";"):String.fromCodePoint(e))}function F(t,e){"<"===e?(t.state=S.OPEN_WAKA,t.startTagPosition=t.position):g(e)||(M(t,"Non-whitespace before first tag."),t.textNode=e,t.state=S.TEXT)}function B(t,e){var n="";return e1114111||w(s)!==s)throw RangeError("Invalid code point: "+s);s<=65535?e.push(s):e.push(55296+((s-=65536)>>10),s%1024+56320),(n+1===i||e.length>t)&&(r+=_.apply(null,e),e.length=0)}return r},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:x,configurable:!0,writable:!0}):String.fromCodePoint=x)}(void 0===n?this.sax={}:n)}).call(this)}).call(this,t("buffer").Buffer)},{buffer:6,stream:87,string_decoder:5}],86:[function(t,e,n){(function(t,e){(function(){!function(e,n){"use strict";if(!e.setImmediate){var i,r=1,s={},o=!1,a=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,"[object process]"==={}.toString.call(e.process)?i=function(e){t.nextTick(function(){d(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(c="setImmediate$"+Math.random()+"$",u=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(c)&&d(+t.data.slice(c.length))},e.addEventListener?e.addEventListener("message",u,!1):e.attachEvent("onmessage",u),i=function(t){e.postMessage(c+t,"*")}):e.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){d(t.data)},i=function(e){t.port2.postMessage(e)}}():a&&"onreadystatechange"in a.createElement("script")?function(){var t=a.documentElement;i=function(e){var n=a.createElement("script");n.onreadystatechange=function(){d(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():i=function(t){setTimeout(d,0,t)},l.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n.setImmediate="function"==typeof e?e:function(t){var e=l++,i=!(arguments.length<2)&&o.call(arguments,1);return a[e]=!0,r(function(){a[e]&&(i?t.apply(null,i):t.call(null),n.clearImmediate(e))}),e},n.clearImmediate="function"==typeof i?i:function(t){delete a[t]}}).call(this)}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":44,timers:89}],90:[function(t,e,n){(function(t){(function(){function n(e){try{if(!t.localStorage)return!1}catch(i){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(t,e){if(n("noDeprecation"))return t;var i=!1;return function(){if(!i){if(n("throwDeprecation"))throw new Error(e);n("traceDeprecation")?console.trace(e):console.warn(e),i=!0}return t.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],91:[function(t,e,n){"use strict";e.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}},{}],92:[function(t,e,n){"use strict";function i(t){var e=this;if(e instanceof i||(e=new i),e.tail=null,e.head=null,e.length=0,t&&"function"==typeof t.forEach)t.forEach(function(t){e.push(t)});else if(arguments.length>0)for(var n=0,r=arguments.length;n1)n=e;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,n=this.head.value}for(var r=0;null!==i;r++)n=t(n,i.value,r),i=i.next;return n},i.prototype.reduceReverse=function(t,e){var n,i=this.tail;if(arguments.length>1)n=e;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,n=this.tail.value}for(var r=this.length-1;null!==i;r--)n=t(n,i.value,r),i=i.prev;return n},i.prototype.toArray=function(){for(var t=new Array(this.length),e=0,n=this.head;null!==n;e++)t[e]=n.value,n=n.next;return t},i.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,n=this.tail;null!==n;e++)t[e]=n.value,n=n.prev;return t},i.prototype.slice=function(t,e){(e=e||this.length)<0&&(e+=this.length),(t=t||0)<0&&(t+=this.length);var n=new i;if(ethis.length&&(e=this.length);for(var r=0,s=this.head;null!==s&&rthis.length&&(e=this.length);for(var r=this.length,s=this.tail;null!==s&&r>e;r--)s=s.prev;for(;null!==s&&r>t;r--,s=s.prev)n.push(s.value);return n},i.prototype.splice=function(t,e,...n){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,s=this.head;null!==s&&i{return(t=n||(n={})).typeOfFunction="function",t.boolTrue=!0,n;var t})();function i(t,e,i){if(!i||typeof i.value!==n.typeOfFunction)throw new TypeError("Only methods can be decorated with @bind. <"+e+"> is not a method!");return{configurable:n.boolTrue,get:function(){var t=i.value.bind(this);return Object.defineProperty(this,e,{value:t,configurable:n.boolTrue,writable:n.boolTrue}),t}}}e.ak=i,e.ZP=i},97266:function(t,e,n){t.exports={ResizeSensor:n(69835),ElementQueries:n(54845)}},54845:function(t,e,n){"use strict";var i,r,s;"undefined"!=typeof window&&window,r=[n(69835)],void 0!==(s="function"==typeof(i=function(t){var e=function(){var e,n={},i=[];function r(t){t||(t=document.documentElement);var e=window.getComputedStyle(t,null).fontSize;return parseFloat(e)||16}function s(t,e){var n=e.split(/\d/),i=n[n.length-1];switch(e=parseFloat(e),i){case"px":return e;case"em":return e*r(t);case"rem":return e*r();case"vw":return e*document.documentElement.clientWidth/100;case"vh":return e*document.documentElement.clientHeight/100;case"vmin":case"vmax":var s=document.documentElement.clientWidth/100,o=document.documentElement.clientHeight/100;return e*(0,Math["vmin"===i?"min":"max"])(s,o);default:return e}}function o(t,e){this.element=t;var i,r,o,a,l,c,u,h,d=["min-width","min-height","max-width","max-height"];this.call=function(){for(i in o=function(t){if(!t.getBoundingClientRect)return{width:t.offsetWidth,height:t.offsetHeight};var e=t.getBoundingClientRect();return{width:Math.round(e.width),height:Math.round(e.height)}}(this.element),c={},n[e])!n[e].hasOwnProperty(i)||(a=s(this.element,(r=n[e][i]).value),l="width"===r.property?o.width:o.height,u="","min"===r.mode&&l>=a&&(u+=r.value),"max"===r.mode&&l<=a&&(u+=r.value),c[h=r.mode+"-"+r.property]||(c[h]=""),u&&-1===(" "+c[h]+" ").indexOf(" "+u+" ")&&(c[h]+=" "+u));for(var t in d)!d.hasOwnProperty(t)||(c[d[t]]?this.element.setAttribute(d[t],c[d[t]].substr(1)):this.element.removeAttribute(d[t]))}}function a(e,n){e.elementQueriesSetupInformation||(e.elementQueriesSetupInformation=new o(e,n)),e.elementQueriesSensor||(e.elementQueriesSensor=new t(e,function(){e.elementQueriesSetupInformation.call()}))}function l(t,r,s,o){if(void 0===n[t]){n[t]=[];var a=i.length;e.innerHTML+="\n"+t+" {animation: 0.1s element-queries;}",e.innerHTML+="\n"+t+" > .resize-sensor {min-width: "+a+"px;}",i.push(t)}n[t].push({mode:r,property:s,value:o})}function c(t){var e;if(document.querySelectorAll&&(e=t?t.querySelectorAll.bind(t):document.querySelectorAll.bind(document)),!e&&"undefined"!=typeof $$&&(e=$$),!e&&"undefined"!=typeof jQuery&&(e=jQuery),!e)throw"No document.querySelectorAll, jQuery or Mootools's $$ found.";return e}function u(e){var n=[],i=[],r=[],s=0,o=-1,a=[];for(var l in e.children)if(e.children.hasOwnProperty(l)&&e.children[l].tagName&&"img"===e.children[l].tagName.toLowerCase()){n.push(e.children[l]);var c=e.children[l].getAttribute("min-width")||e.children[l].getAttribute("data-min-width"),u=e.children[l].getAttribute("data-src")||e.children[l].getAttribute("url");r.push(u),i.push({minWidth:c}),c?e.children[l].style.display="none":(s=n.length-1,e.children[l].style.display="block")}function h(){var t,l=!1;for(t in n)!n.hasOwnProperty(t)||i[t].minWidth&&e.offsetWidth>i[t].minWidth&&(l=t);if(l||(l=s),o!==l)if(a[l])n[o].style.display="none",n[l].style.display="block",o=l;else{var c=new Image;c.onload=function(){n[l].src=r[l],n[o].style.display="none",n[l].style.display="block",a[l]=!0,o=l},c.src=r[l]}else n[l].src=r[l]}o=s,e.resizeSensorInstance=new t(e,h),h()}var h=/,?[\s\t]*([^,\n]*?)((?:\[[\s\t]*?(?:min|max)-(?:width|height)[\s\t]*?[~$\^]?=[\s\t]*?"[^"]*?"[\s\t]*?])+)([^,\n\s\{]*)/gim,d=/\[[\s\t]*?(min|max)-(width|height)[\s\t]*?[~$\^]?=[\s\t]*?"([^"]*?)"[\s\t]*?]/gim;function p(t){var e,n,i,r;for(t=t.replace(/'/g,'"');null!==(e=h.exec(t));)for(n=e[1]+e[3],i=e[2];null!==(r=d.exec(i));)l(n,r[1],r[2],r[3])}function f(t){var e="";if(t)if("string"==typeof t)(-1!==(t=t.toLowerCase()).indexOf("min-width")||-1!==t.indexOf("max-width"))&&p(t);else for(var n=0,i=t.length;n img, [data-responsive-image] {overflow: hidden; padding: 0; } [responsive-image] > img, [data-responsive-image] > img {width: 100%;}",e.innerHTML+="\n@keyframes element-queries { 0% { visibility: inherit; } }",document.getElementsByTagName("head")[0].appendChild(e),g=!0);for(var r=0,s=document.styleSheets.length;r0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,console&&console.warn&&console.warn(a)}return t}function O(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function T(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=O.bind(i);return r.listener=n,i.wrapFn=r,r}function k(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(s=e[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var a=r[t];if(void 0===a)return!1;if("function"==typeof a)v(a,this,e);else{var l=a.length,c=P(a,l);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},w.prototype.listeners=function(t){return k(this,t,!0)},w.prototype.rawListeners=function(t){return k(this,t,!1)},w.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):A.call(t,e)},w.prototype.listenerCount=A,w.prototype.eventNames=function(){return this._eventsCount>0?m(this._events):[]},I.prototype.next=function(){if(this.done)return{done:!0};var t=this._next();return t.done&&(this.done=!0),t},"undefined"!=typeof Symbol&&(I.prototype[Symbol.iterator]=function(){return this}),I.of=function(){var t=arguments,e=t.length,n=0;return new I(function(){return n>=e?{done:!0}:{done:!1,value:t[n++]}})},I.empty=function(){var t=new I(null);return t.done=!0,t},I.is=function(t){return t instanceof I||"object"==typeof t&&null!==t&&"function"==typeof t.next};var D=I,R=function(t,e){for(var n,i=arguments.length>1?e:1/0,r=i!==1/0?new Array(i):[],s=0;;){if(s===i)return r;if((n=t.next()).done)return s!==e?r.slice(0,s):r;r[s++]=n.value}},N=function(t){function n(e,n){var i;return(i=t.call(this)||this).name="GraphError",i.message=e||"",i.data=n||{},i}return e(n,t),n}(o(Error)),L=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="InvalidArgumentsGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),j=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="NotFoundGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),F=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="UsageGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N);function B(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.undirectedDegree=0,this.directedSelfLoops=0,this.undirectedSelfLoops=0,this.in={},this.out={},this.undirected={}}function V(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}}function z(t,e){this.key=t,this.attributes=e,this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}}function U(t,e,n,i,r,s){this.key=e,this.attributes=s,this.undirected=t,this.source=i,this.target=r,this.generatedKey=n}function H(t,e,n,i,r,s,o){var a,l,c="out",u="in";if(e&&(c=u="undirected"),t.multi){if(void 0===(l=(a=s[c])[r])&&(l=new Set,a[r]=l),l.add(n),i===r&&e)return;void 0===(a=o[u])[i]&&(a[i]=l)}else{if(s[c][r]=n,i===r&&e)return;o[u][i]=n}}function $(t,e,n){var i=t.multi,r=n.source,s=n.target,o=r.key,a=s.key,l=r[e?"undirected":"out"],c=e?"undirected":"in";if(a in l)if(i){var u=l[a];1===u.size?(delete l[a],delete s[c][o]):u.delete(n)}else delete l[a];i||delete s[c][o]}V.prototype.upgradeToMixed=function(){this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}},z.prototype.upgradeToMixed=function(){this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}};var G=[{name:function(t){return"get".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes[i]}}},{name:function(t){return"get".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t){var i;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>1){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var r=""+t,s=""+arguments[1];if(!(i=c(this,r,s,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(r,'" - "').concat(s,'").'))}else if(!(i=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&i.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return i.attributes}}},{name:function(t){return"has".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes.hasOwnProperty(i)}}},{name:function(t){return"set".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r,this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"update".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("function"!=typeof r)throw new L("Graph.".concat(e,": updater should be a function."));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r(s.attributes[i]),this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"remove".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return delete r.attributes[i],this.emit("edgeAttributesUpdated",{key:r.key,type:"remove",attributes:r.attributes,name:i}),this}}},{name:function(t){return"replace".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes=i,this.emit("edgeAttributesUpdated",{key:r.key,type:"replace",attributes:r.attributes}),this}}},{name:function(t){return"merge".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return l(r.attributes,i),this.emit("edgeAttributesUpdated",{key:r.key,type:"merge",attributes:r.attributes,data:i}),this}}}],W=D,q=function(){var t,e=arguments,n=-1;return new W(function i(){if(!t){if(++n>=e.length)return{done:!0};t=e[n]}var r=t.next();return r.done?(t=null,i()):r})},X=[{name:"edges",type:"mixed"},{name:"inEdges",type:"directed",direction:"in"},{name:"outEdges",type:"directed",direction:"out"},{name:"inboundEdges",type:"mixed",direction:"in"},{name:"outboundEdges",type:"mixed",direction:"out"},{name:"directedEdges",type:"directed"},{name:"undirectedEdges",type:"undirected"}];function Y(t,e){for(var n in e)t.push(e[n].key)}function K(t,e){for(var n in e)e[n].forEach(function(e){return t.push(e.key)})}function Q(t,e,n){for(var i in t)if(i!==n){var r=t[i];e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey)}}function Z(t,e,n){for(var i in t)i!==n&&t[i].forEach(function(t){return e(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function J(t,e,n){for(var i in t)if(i!==n){var r=t[i];if(e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey))return!0}return!1}function tt(t,e,n){var i,r,s,o,a;for(var l in t)if(l!==n)for(i=t[l].values();!0!==(r=i.next()).done;)if(o=(s=r.value).source,e(s.key,s.attributes,o.key,(a=s.target).key,o.attributes,a.attributes,s.undirected,s.generatedKey))return!0;return!1}function et(t,e){var n=Object.keys(t),i=n.length,r=null,s=0;return new D(function o(){var a;if(r){var l=r.next();if(l.done)return r=null,s++,o();a=l.value}else{if(s>=i)return{done:!0};var c=n[s];if(c===e)return s++,o();if((a=t[c])instanceof Set)return r=a.values(),o();s++}return{done:!1,value:[a.key,a.attributes,a.source.key,a.target.key,a.source.attributes,a.target.attributes]}})}function nt(t,e,n){var i=e[n];i&&t.push(i.key)}function it(t,e,n){var i=e[n];i&&i.forEach(function(e){return t.push(e.key)})}function rt(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function st(t,e,n){var i=t[e];i&&i.forEach(function(t){return n(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function ot(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;return n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function at(t,e,n){var i=t[e];if(i){for(var r,s,o=i.values();!0!==(r=o.next()).done;)if(n((s=r.value).key,s.attributes,s.source.key,s.target.key,s.source.attributes,s.target.attributes,s.undirected,s.generatedKey))return!0;return!1}}function lt(t,e){var n=t[e];if(n instanceof Set){var i=n.values();return new D(function(){var t=i.next();if(t.done)return t;var e=t.value;return{done:!1,value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes]}})}return D.of([n.key,n.attributes,n.source.key,n.target.key,n.source.attributes,n.target.attributes])}function ct(t,e){if(0===t.size)return[];if("mixed"===e||e===t.type)return"function"==typeof Array.from?Array.from(t._edges.keys()):R(t._edges.keys(),t._edges.size);for(var n,i,r=new Array("undirected"===e?t.undirectedSize:t.directedSize),s="undirected"===e,o=t._edges.values(),a=0;!0!==(n=o.next()).done;)(i=n.value).undirected===s&&(r[a++]=i.key);return r}function ut(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey)}}function ht(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;if(n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey))break}}function dt(t,e){if(0===t.size)return D.empty();var n="mixed"!==e&&e!==t.type,i="undirected"===e,r=t._edges.values();return new D(function(){for(var t,e;;){if((t=r.next()).done)return t;if(e=t.value,!n||e.undirected===i)break}return{value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes],done:!1}})}function pt(t,e,n,i){var r=[],s=t?K:Y;return"undirected"!==e&&("out"!==n&&s(r,i.in),"in"!==n&&s(r,i.out),!n&&i.directedSelfLoops>0&&r.splice(r.lastIndexOf(i.key),1)),"directed"!==e&&s(r,i.undirected),r}function ft(t,e,n,i,r){var s=t?Z:Q;"undirected"!==e&&("out"!==n&&s(i.in,r),"in"!==n&&s(i.out,r,n?null:i.key)),"directed"!==e&&s(i.undirected,r)}function gt(t,e,n,i,r){var s=t?tt:J;"undirected"!==e&&("out"!==n&&s(i.in,r)||"in"!==n&&s(i.out,r,n?null:i.key))||"directed"===e||s(i.undirected,r)}function mt(t,e,n){var i=D.empty();return"undirected"!==t&&("out"!==e&&void 0!==n.in&&(i=q(i,et(n.in))),"in"!==e&&void 0!==n.out&&(i=q(i,et(n.out,e?null:n.key)))),"directed"!==t&&void 0!==n.undirected&&(i=q(i,et(n.undirected))),i}function bt(t,e,n,i,r){var s=e?it:nt,o=[];return"undirected"!==t&&(void 0!==i.in&&"out"!==n&&s(o,i.in,r),void 0!==i.out&&"in"!==n&&s(o,i.out,r),!n&&i.directedSelfLoops>0&&o.splice(o.lastIndexOf(i.key),1)),"directed"!==t&&void 0!==i.undirected&&s(o,i.undirected,r),o}function yt(t,e,n,i,r,s){var o=e?st:rt;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s),i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s)),"directed"!==t&&void 0!==i.undirected&&o(i.undirected,r,s)}function vt(t,e,n,i,r,s){var o=e?at:ot;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s)||i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s,n?null:i.key))||"directed"===t||void 0===i.undirected||o(i.undirected,r,s)}function _t(t,e,n,i){var r=D.empty();return"undirected"!==t&&(void 0!==n.in&&"out"!==e&&i in n.in&&(r=q(r,lt(n.in,i))),void 0!==n.out&&"in"!==e&&i in n.out&&(r=q(r,lt(n.out,i)))),"directed"!==t&&void 0!==n.undirected&&i in n.undirected&&(r=q(r,lt(n.undirected,i))),r}var wt=[{name:"neighbors",type:"mixed"},{name:"inNeighbors",type:"directed",direction:"in"},{name:"outNeighbors",type:"directed",direction:"out"},{name:"inboundNeighbors",type:"mixed",direction:"in"},{name:"outboundNeighbors",type:"mixed",direction:"out"},{name:"directedNeighbors",type:"directed"},{name:"undirectedNeighbors",type:"undirected"}];function xt(t,e){if(void 0!==e)for(var n in e)t.add(n)}function St(t,e,n){if("mixed"!==t){if("undirected"===t)return Object.keys(n.undirected);if("string"==typeof e)return Object.keys(n[e])}var i=new Set;return"undirected"!==t&&("out"!==e&&xt(i,n.in),"in"!==e&&xt(i,n.out)),"directed"!==t&&xt(i,n.undirected),R(i.values(),i.size)}function Et(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;n(o.key,o.attributes)}}function Ct(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;t.has(a.key)||(t.add(a.key),i(a.key,a.attributes))}}function Ot(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;if(n(o.key,o.attributes))return!0}return!1}function Tt(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;if(!t.has(a.key)&&(t.add(a.key),i(a.key,a.attributes)))return!0}return!1}function kt(t,e){var n=Object.keys(e),i=n.length,r=0;return new D(function(){if(r>=i)return{done:!0};var s=e[n[r++]];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===t?s.target:o;return{done:!1,value:[a.key,a.attributes]}})}function At(t,e,n){var i=Object.keys(n),r=i.length,s=0;return new D(function o(){if(s>=r)return{done:!0};var a=n[i[s++]];a instanceof Set&&(a=a.values().next().value);var l=a.source,c=l===e?a.target:l;return t.has(c.key)?o():(t.add(c.key),{done:!1,value:[c.key,c.attributes]})})}function Pt(t,e,n,i,r){var s=t._nodes.get(i);if("undirected"!==e){if("out"!==n&&void 0!==s.in)for(var o in s.in)if(o===r)return!0;if("in"!==n&&void 0!==s.out)for(var a in s.out)if(a===r)return!0}if("directed"!==e&&void 0!==s.undirected)for(var l in s.undirected)if(l===r)return!0;return!1}function Mt(t,e,n){for(var i,r,s,o,a,l,c,u=e._nodes.values(),h=e.type;!0!==(i=u.next()).done;){if(r=i.value,"undirected"!==h)for(s in o=r.out)if(l=(a=o[s]).target,c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return;if("directed"!==h)for(s in o=r.undirected)if((l=(a=o[s]).target).key!==s&&(l=a.source),c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return}}function It(t,e,n){for(var i,r,s,o,a,l,c,u,h,d=e._nodes.values(),p=e.type;!0!==(i=d.next()).done;){if(r=i.value,"undirected"!==p)for(s in l=r.out)for(o=l[s].values();!0!==(a=o.next()).done;)if(u=(c=a.value).target,h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return;if("directed"!==p)for(s in l=r.undirected)for(o=l[s].values();!0!==(a=o.next()).done;)if((u=(c=a.value).target).key!==s&&(u=c.source),h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return}}function Dt(t,e){var n={key:t};return d(e.attributes)||(n.attributes=l({},e.attributes)),n}function Rt(t,e){var n={source:e.source.key,target:e.target.key};return e.generatedKey||(n.key=t),d(e.attributes)||(n.attributes=l({},e.attributes)),e.undirected&&(n.undirected=!0),n}function Nt(t){return h(t)?"key"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?null:"invalid-attributes":"no-key":"not-object"}function Lt(t){return h(t)?"source"in t?"target"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?"undirected"in t&&"boolean"!=typeof t.undirected?"invalid-undirected":null:"invalid-attributes":"no-target":"no-source":"not-object"}var jt=new Set(["directed","undirected","mixed"]),Ft=new Set(["domain","_events","_eventsCount","_maxListeners"]),Bt={allowSelfLoops:!0,edgeKeyGenerator:null,multi:!1,type:"mixed"};function Vt(t,e,n){var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}function zt(t,e,n,i,r,s,o,a){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a&&!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));if(s=""+s,o=""+o,a=a||{},!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var l=t._nodes.get(s),c=t._nodes.get(o);if(!l)throw new j("Graph.".concat(e,': source node "').concat(s,'" not found.'));if(!c)throw new j("Graph.".concat(e,': target node "').concat(o,'" not found.'));var u={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(u)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));if(!t.multi&&(i?void 0!==l.undirected[o]:void 0!==l.out[o]))throw new F("Graph.".concat(e,': an edge linking "').concat(s,'" to "').concat(o,"\" already exists. If you really want to add multiple edges linking those nodes, you should create a multi graph by using the 'multi' option."));var d=new U(i,r,n,l,c,a);return t._edges.set(r,d),s===o?i?(l.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(l.directedSelfLoops++,t._directedSelfLoopCount++):i?(l.undirectedDegree++,c.undirectedDegree++):(l.outDegree++,c.inDegree++),H(t,i,d,s,o,l,c),i?t._undirectedSize++:t._directedSize++,u.key=r,t.emit("edgeAdded",u),r}function Ut(t,e,n,i,r,s,o,a,c){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a)if(c){if("function"!=typeof a)throw new L("Graph.".concat(e,': invalid updater function. Expecting a function but got "').concat(a,'"'))}else if(!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));var u;if(s=""+s,o=""+o,c&&(u=a,a=void 0),!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var d,p,f=t._nodes.get(s),g=t._nodes.get(o);if(!n&&(d=t._edges.get(r))){if(d.source.key!==s||d.target.key!==o||i&&(d.source.key!==o||d.target.key!==s))throw new F("Graph.".concat(e,': inconsistency detected when attempting to merge the "').concat(r,'" edge with "').concat(s,'" source & "').concat(o,'" target vs. ("').concat(d.source.key,'", "').concat(d.target.key,'").'));p=d}if(p||t.multi||!f||(p=i?f.undirected[o]:f.out[o]),p)return(c?u:a)?(c?(p.attributes=u(p.attributes),t.emit("edgeAttributesUpdated",{type:"replace",key:p.key,attributes:p.attributes})):(l(p.attributes,a),t.emit("edgeAttributesUpdated",{type:"merge",key:p.key,attributes:p.attributes,data:a})),p.key):p.key;a=a||{},c&&u&&(a=u(a));var m={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(m)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));return f||(f=Vt(t,s,{}),s===o&&(g=f)),g||(g=Vt(t,o,{})),d=new U(i,r,n,f,g,a),t._edges.set(r,d),s===o?i?(f.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(f.directedSelfLoops++,t._directedSelfLoopCount++):i?(f.undirectedDegree++,g.undirectedDegree++):(f.outDegree++,g.inDegree++),H(t,i,d,s,o,f,g),i?t._undirectedSize++:t._directedSize++,m.key=r,t.emit("edgeAdded",m),r}var Ht,$t=function(t){function n(e){var n;if(n=t.call(this)||this,(e=l({},Bt,e)).edgeKeyGenerator&&"function"!=typeof e.edgeKeyGenerator)throw new L("Graph.constructor: invalid 'edgeKeyGenerator' option. Expecting a function but got \"".concat(e.edgeKeyGenerator,'".'));if("boolean"!=typeof e.multi)throw new L("Graph.constructor: invalid 'multi' option. Expecting a boolean but got \"".concat(e.multi,'".'));if(!jt.has(e.type))throw new L('Graph.constructor: invalid \'type\' option. Should be one of "mixed", "directed" or "undirected" but got "'.concat(e.type,'".'));if("boolean"!=typeof e.allowSelfLoops)throw new L("Graph.constructor: invalid 'allowSelfLoops' option. Expecting a boolean but got \"".concat(e.allowSelfLoops,'".'));var i,r="mixed"===e.type?B:"directed"===e.type?V:z;return p(a(n),"NodeDataClass",r),p(a(n),"_attributes",{}),p(a(n),"_nodes",new Map),p(a(n),"_edges",new Map),p(a(n),"_directedSize",0),p(a(n),"_undirectedSize",0),p(a(n),"_directedSelfLoopCount",0),p(a(n),"_undirectedSelfLoopCount",0),p(a(n),"_edgeKeyGenerator",e.edgeKeyGenerator||(i=0,function(){return i++})),p(a(n),"_options",e),Ft.forEach(function(t){return p(a(n),t,n[t])}),f(a(n),"order",function(){return n._nodes.size}),f(a(n),"size",function(){return n._edges.size}),f(a(n),"directedSize",function(){return n._directedSize}),f(a(n),"undirectedSize",function(){return n._undirectedSize}),f(a(n),"selfLoopCount",function(){return n._directedSelfLoopCount+n._undirectedSelfLoopCount}),f(a(n),"directedSelfLoopCount",function(){return n._directedSelfLoopCount}),f(a(n),"undirectedSelfLoopCount",function(){return n._undirectedSelfLoopCount}),f(a(n),"multi",n._options.multi),f(a(n),"type",n._options.type),f(a(n),"allowSelfLoops",n._options.allowSelfLoops),f(a(n),"implementation",function(){return"graphology"}),n}e(n,t);var i=n.prototype;return i.hasNode=function(t){return this._nodes.has(""+t)},i.hasDirectedEdge=function(t,e){if("undirected"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&!n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.out[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasUndirectedEdge=function(t,e){if("directed"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.undirected[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasEdge=function(t,e){if(1===arguments.length)return this._edges.has(""+t);if(2===arguments.length){e=""+e;var n=this._nodes.get(t=""+t);if(!n)return!1;var i=void 0!==n.out&&n.out[e];return i||(i=void 0!==n.undirected&&n.undirected[e]),!(!i||this.multi&&!i.size)}throw new L("Graph.hasEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.directedEdge=function(t,e){if("undirected"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.directedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.directedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.directedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.directedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||void 0;return i?i.key:void 0}},i.undirectedEdge=function(t,e){if("directed"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.undirectedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.undirectedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.undirectedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.undirectedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.undirected&&n.undirected[e]||void 0;return i?i.key:void 0}},i.edge=function(t,e){if(this.multi)throw new F("Graph.edge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.edges instead.");e=""+e;var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.edge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.edge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||n.undirected&&n.undirected[e]||void 0;if(i)return i.key},i.inDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.inDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.inDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.inDegree+(e?n.directedSelfLoops:0)},i.outDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.outDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.outDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.outDegree+(e?n.directedSelfLoops:0)},i.directedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.directedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.directedDegree: could not find the "'.concat(t,'" node in the graph.'));if("undirected"===this.type)return 0;var i=e?n.directedSelfLoops:0;return n.inDegree+i+(n.outDegree+i)},i.undirectedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.undirectedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.undirectedDegree: could not find the "'.concat(t,'" node in the graph.'));return"directed"===this.type?0:n.undirectedDegree+2*(e?n.undirectedSelfLoops:0)},i.degree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.degree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.degree: could not find the "'.concat(t,'" node in the graph.'));var i=0,r=0;return"directed"!==this.type&&(e&&(r=n.undirectedSelfLoops),i+=n.undirectedDegree+2*r),"undirected"!==this.type&&(e&&(r=n.directedSelfLoops),i+=n.inDegree+n.outDegree+2*r),i},i.source=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.source: could not find the "'.concat(t,'" edge in the graph.'));return e.source.key},i.target=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.target: could not find the "'.concat(t,'" edge in the graph.'));return e.target.key},i.extremities=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.extremities: could not find the "'.concat(t,'" edge in the graph.'));return[e.source.key,e.target.key]},i.opposite=function(t,e){t=""+t;var n=this._edges.get(e=""+e);if(!n)throw new j('Graph.opposite: could not find the "'.concat(e,'" edge in the graph.'));var i=n.source.key,r=n.target.key;if(t!==i&&t!==r)throw new j('Graph.opposite: the "'.concat(t,'" node is not attached to the "').concat(e,'" edge (').concat(i,", ").concat(r,")."));return t===i?r:i},i.hasExtremity=function(t,e){e=""+e;var n=this._edges.get(t=""+t);if(!n)throw new j('Graph.hasExtremity: could not find the "'.concat(t,'" edge in the graph.'));return n.source.key===e||n.target.key===e},i.isUndirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isUndirected: could not find the "'.concat(t,'" edge in the graph.'));return e.undirected},i.isDirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isDirected: could not find the "'.concat(t,'" edge in the graph.'));return!e.undirected},i.isSelfLoop=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isSelfLoop: could not find the "'.concat(t,'" edge in the graph.'));return e.source===e.target},i.hasGeneratedKey=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.hasGeneratedKey: could not find the "'.concat(t,'" edge in the graph.'));return e.generatedKey},i.addNode=function(t,e){return function(t,e,n){if(n&&!h(n))throw new L('Graph.addNode: invalid attributes. Expecting an object but got "'.concat(n,'"'));if(n=n||{},t._nodes.has(e=""+e))throw new F('Graph.addNode: the "'.concat(e,'" node already exist in the graph.'));var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}(this,t,e).key},i.mergeNode=function(t,e){if(e&&!h(e))throw new L('Graph.mergeNode: invalid attributes. Expecting an object but got "'.concat(e,'"'));e=e||{};var n=this._nodes.get(t=""+t);return n?(e&&(l(n.attributes,e),this.emit("nodeAttributesUpdated",{type:"merge",key:t,attributes:n.attributes,data:e})),t):(n=new this.NodeDataClass(t,e),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:e}),t)},i.updateNode=function(t,e){if(e&&"function"!=typeof e)throw new L('Graph.updateNode: invalid updater function. Expecting a function but got "'.concat(e,'"'));var n=this._nodes.get(t=""+t);if(n)return e&&(n.attributes=e(n.attributes),this.emit("nodeAttributesUpdated",{type:"replace",key:t,attributes:n.attributes})),t;var i=e?e({}):{};return n=new this.NodeDataClass(t,i),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:i}),t},i.dropNode=function(t){var e=this,n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.dropNode: could not find the "'.concat(t,'" node in the graph.'));this.forEachEdge(t,function(t){e.dropEdge(t)}),this._nodes.delete(t),this.emit("nodeDropped",{key:t,attributes:n.attributes})},i.dropEdge=function(t){var e;if(arguments.length>1){var n=""+arguments[0],i=""+arguments[1];if(!(e=c(this,n,i,this.type)))throw new j('Graph.dropEdge: could not find the "'.concat(n,'" -> "').concat(i,'" edge in the graph.'))}else if(!(e=this._edges.get(t=""+t)))throw new j('Graph.dropEdge: could not find the "'.concat(t,'" edge in the graph.'));this._edges.delete(e.key);var r=e.source,s=e.target,o=e.attributes,a=e.undirected;return r===s?a?(r.undirectedSelfLoops--,this._undirectedSelfLoopCount--):(r.directedSelfLoops--,this._directedSelfLoopCount--):a?(r.undirectedDegree--,s.undirectedDegree--):(r.outDegree--,s.inDegree--),$(this,a,e),a?this._undirectedSize--:this._directedSize--,this.emit("edgeDropped",{key:t,attributes:o,source:r.key,target:s.key,undirected:a}),this},i.clear=function(){this._edges.clear(),this._nodes.clear(),this.emit("cleared")},i.clearEdges=function(){this._edges.clear(),this.clearIndex(),this.emit("edgesCleared")},i.getAttribute=function(t){return this._attributes[t]},i.getAttributes=function(){return this._attributes},i.hasAttribute=function(t){return this._attributes.hasOwnProperty(t)},i.setAttribute=function(t,e){return this._attributes[t]=e,this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.updateAttribute=function(t,e){if("function"!=typeof e)throw new L("Graph.updateAttribute: updater should be a function.");return this._attributes[t]=e(this._attributes[t]),this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.removeAttribute=function(t){return delete this._attributes[t],this.emit("attributesUpdated",{type:"remove",attributes:this._attributes,name:t}),this},i.replaceAttributes=function(t){if(!h(t))throw new L("Graph.replaceAttributes: provided attributes are not a plain object.");return this._attributes=t,this.emit("attributesUpdated",{type:"replace",attributes:this._attributes}),this},i.mergeAttributes=function(t){if(!h(t))throw new L("Graph.mergeAttributes: provided attributes are not a plain object.");return l(this._attributes,t),this.emit("attributesUpdated",{type:"merge",attributes:this._attributes,data:t}),this},i.getNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.getNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes[e]},i.getNodeAttributes=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.getNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));return e.attributes},i.hasNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes.hasOwnProperty(e)},i.setNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.setNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.setNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or value, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");return i.attributes[e]=n,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.updateNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.updateNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.updateNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or updater, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");if("function"!=typeof n)throw new L("Graph.updateAttribute: updater should be a function.");var r=i.attributes,s=n(r[e]);return r[e]=s,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.removeNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return delete n.attributes[e],this.emit("nodeAttributesUpdated",{key:t,type:"remove",attributes:n.attributes,name:e}),this},i.replaceNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.replaceNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.replaceNodeAttributes: provided attributes are not a plain object.");return n.attributes=e,this.emit("nodeAttributesUpdated",{key:t,type:"replace",attributes:n.attributes}),this},i.mergeNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.mergeNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.mergeNodeAttributes: provided attributes are not a plain object.");return l(n.attributes,e),this.emit("nodeAttributesUpdated",{key:t,type:"merge",attributes:n.attributes,data:e}),this},i.updateEachNodeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachNodeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachNodeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._nodes.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachNodeAttributesUpdated",{hints:e||null})},i.updateEachEdgeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachEdgeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachEdgeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._edges.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachEdgeAttributesUpdated",{hints:e||null})},i.forEach=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!1,this,t):Mt(!1,this,t)},i.forEachUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!0,this,t):Mt(!0,this,t)},i.adjacency=function(){return this.multi?(p=(l=this)._nodes.values(),f=l.type,g="outer",m=null,new D(function t(){var e;if("outer"===g)return!0===(e=p.next()).done?e:(c=e.value,g="directed",t());if("directed"===g)return"undirected"===f?(g="undirected",t()):(h=c.out,u=Object.keys(c.out),d=0,g="inner-directed",t());if("undirected"===g){if("directed"===f)return g="outer",t();h=c.undirected,u=Object.keys(c.undirected),d=0,g="inner-undirected"}if(!m&&d>=u.length)return g="inner-undirected"===g?"outer":"undirected",t();if(!m){var n=u[d++];return m=h[n].values(),t()}if((e=m.next()).done)return m=null,t();var i=e.value,r=i.target;return"inner-undirected"===g&&r.key===c.key&&(r=i.source),{done:!1,value:[c.key,r.key,c.attributes,r.attributes,i.key,i.attributes]}})):(s=(t=this)._nodes.values(),o=t.type,a="outer",new D(function t(){var l;if("outer"===a)return!0===(l=s.next()).done?l:(e=l.value,a="directed",t());if("directed"===a)return"undirected"===o?(a="undirected",t()):(i=e.out,n=Object.keys(e.out),r=0,a="inner-directed",t());if("undirected"===a){if("directed"===o)return a="outer",t();i=e.undirected,n=Object.keys(e.undirected),r=0,a="inner-undirected"}if(r>=n.length)return a="inner-undirected"===a?"outer":"undirected",t();var c=n[r++],u=i[c],h=u.target;return"inner-undirected"===a&&h.key===e.key&&(h=u.source),{done:!1,value:[e.key,h.key,e.attributes,h.attributes,u.key,u.attributes]}}));var t,e,n,i,r,s,o,a,l,c,u,h,d,p,f,g,m},i.nodes=function(){return"function"==typeof Array.from?Array.from(this._nodes.keys()):R(this._nodes.keys(),this._nodes.size)},i.forEachNode=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");this._nodes.forEach(function(e,n){t(n,e.attributes)})},i.forEachNodeUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");for(var e,n,i=this._nodes.values();!0!==(e=i.next())&&!t((n=e.value).key,n.attributes););},i.nodeEntries=function(){var t=this._nodes.values();return new D(function(){var e=t.next();if(e.done)return e;var n=e.value;return{value:[n.key,n.attributes],done:!1}})},i.exportNode=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.exportNode: could not find the "'.concat(t,'" node in the graph.'));return Dt(t,e)},i.exportEdge=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.exportEdge: could not find the "'.concat(t,'" edge in the graph.'));return Rt(t,e)},i.export=function(){var t=new Array(this._nodes.size),e=0;this._nodes.forEach(function(n,i){t[e++]=Dt(i,n)});var n=new Array(this._edges.size);return e=0,this._edges.forEach(function(t,i){n[e++]=Rt(i,t)}),{attributes:this.getAttributes(),nodes:t,edges:n,options:{type:this.type,multi:this.multi,allowSelfLoops:this.allowSelfLoops}}},i.importNode=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Nt(t);if(n){if("not-object"===n)throw new L('Graph.importNode: invalid serialized node. A serialized node should be a plain object with at least a "key" property.');if("no-key"===n)throw new L("Graph.importNode: no key provided.");if("invalid-attributes"===n)throw new L("Graph.importNode: invalid attributes. Attributes should be a plain object, null or omitted.")}var i=t.key,r=t.attributes,s=void 0===r?{}:r;return e?this.mergeNode(i,s):this.addNode(i,s),this},i.importEdge=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Lt(t);if(n){if("not-object"===n)throw new L('Graph.importEdge: invalid serialized edge. A serialized edge should be a plain object with at least a "source" & "target" property.');if("no-source"===n)throw new L("Graph.importEdge: missing souce.");if("no-target"===n)throw new L("Graph.importEdge: missing target.");if("invalid-attributes"===n)throw new L("Graph.importEdge: invalid attributes. Attributes should be a plain object, null or omitted.");if("invalid-undirected"===n)throw new L("Graph.importEdge: invalid undirected. Undirected should be boolean or omitted.")}var i=t.source,r=t.target,s=t.attributes,o=void 0===s?{}:s,a=t.undirected,l=void 0!==a&&a;return"key"in t?(e?l?this.mergeUndirectedEdgeWithKey:this.mergeDirectedEdgeWithKey:l?this.addUndirectedEdgeWithKey:this.addDirectedEdgeWithKey).call(this,t.key,i,r,o):(e?l?this.mergeUndirectedEdge:this.mergeDirectedEdge:l?this.addUndirectedEdge:this.addDirectedEdge).call(this,i,r,o),this},i.import=function(t){var e,n,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(u(t))return this.import(t.export(),r),this;if(!h(t))throw new L("Graph.import: invalid argument. Expecting a serialized graph or, alternatively, a Graph instance.");if(t.attributes){if(!h(t.attributes))throw new L("Graph.import: invalid attributes. Expecting a plain object.");r?this.mergeAttributes(t.attributes):this.replaceAttributes(t.attributes)}if(t.nodes){if(i=t.nodes,!Array.isArray(i))throw new L("Graph.import: invalid nodes. Expecting an array.");for(e=0,n=i.length;en)){var o=new Set;o.add(e.undirected[s]),e.undirected[s]=o,t._nodes.get(s).undirected[n]=o}})),this;var t},i.clearIndex=function(){return this._nodes.forEach(function(t){void 0!==t.in&&(t.in={},t.out={}),void 0!==t.undirected&&(t.undirected={})}),this},i.toJSON=function(){return this.export()},i.toString=function(){return"[object Graph]"},i.inspect=function(){var t=this,e={};this._nodes.forEach(function(t,n){e[n]=t.attributes});var n={},i={};this._edges.forEach(function(e,r){var s=e.undirected?"--":"->",o="",a="(".concat(e.source.key,")").concat(s,"(").concat(e.target.key,")");e.generatedKey?t.multi&&(void 0===i[a]?i[a]=0:i[a]++,o+="".concat(i[a],". ")):o+="[".concat(r,"]: "),n[o+=a]=e.attributes});var r={};for(var s in this)this.hasOwnProperty(s)&&!Ft.has(s)&&"function"!=typeof this[s]&&(r[s]=this[s]);return r.attributes=this._attributes,r.nodes=e,r.edges=n,p(r,"constructor",this.constructor),r},n}(b.exports.EventEmitter);"undefined"!=typeof Symbol&&($t.prototype[Symbol.for("nodejs.util.inspect.custom")]=$t.prototype.inspect),[{name:function(t){return"".concat(t,"Edge")},generateKey:!0},{name:function(t){return"".concat(t,"DirectedEdge")},generateKey:!0,type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdge")},generateKey:!0,type:"undirected"},{name:function(t){return"".concat(t,"EdgeWithKey")}},{name:function(t){return"".concat(t,"DirectedEdgeWithKey")},type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdgeWithKey")},type:"undirected"}].forEach(function(t){["add","merge","update"].forEach(function(e){var n=t.name(e),i="add"===e?zt:Ut;$t.prototype[n]=t.generateKey?function(r,s,o){return i(this,n,!0,"undirected"===(t.type||this.type),null,r,s,o,"update"===e)}:function(r,s,o,a){return i(this,n,!1,"undirected"===(t.type||this.type),r,s,o,a,"update"===e)}})}),"undefined"!=typeof Symbol&&($t.prototype[Symbol.iterator]=$t.prototype.adjacency),Ht=$t,G.forEach(function(t){var e=t.name,n=t.attacher;n(Ht,e("Edge"),"mixed"),n(Ht,e("DirectedEdge"),"directed"),n(Ht,e("UndirectedEdge"),"undirected")}),function(t){X.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t,e){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(!arguments.length)return ct(this,r);if(1===arguments.length){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return pt(this.multi,"mixed"===r?this.type:r,s,n)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" target node in the graph.'));return bt(r,this.multi,s,o,e)}throw new L("Graph.".concat(i,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ut(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return ft(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return yt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ht(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return gt(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return vt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t,e){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();if(!arguments.length)return dt(this,n);if(1===arguments.length){var s=this._nodes.get(t=""+t);if(!s)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return mt(n,i,s)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(r,': could not find the "').concat(e,'" target node in the graph.'));return _t(n,i,o,e)}throw new L("Graph.".concat(r,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))}}(t,e)})}($t),function(t){wt.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(2===arguments.length){var e=""+arguments[0],n=""+arguments[1];if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));if(!this._nodes.has(n))throw new j("Graph.".concat(i,': could not find the "').concat(n,'" node in the graph.'));return Pt(this,r,s,e,n)}if(1===arguments.length){var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return St("mixed"===r?this.type:r,s,o)}throw new L("Graph.".concat(i,": invalid number of arguments (expecting 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Et(n,n.undirected,i);if("string"==typeof e)return Et(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Ct(r,n,n.in,i),"in"!==e&&Ct(r,n,n.out,i)),"directed"!==t&&Ct(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Ot(n,n.undirected,i);if("string"==typeof e)return Ot(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Tt(r,n,n.in,i)||"in"!==e&&Tt(r,n,n.out,i))||"directed"===t||Tt(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();var e=this._nodes.get(t=""+t);if(void 0===e)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return function(t,e,n){if("mixed"!==t){if("undirected"===t)return kt(n,n.undirected);if("string"==typeof e)return kt(n,n[e])}var i=D.empty(),r=new Set;return"undirected"!==t&&("out"!==e&&(i=q(i,At(r,n,n.in))),"in"!==e&&(i=q(i,At(r,n,n.out)))),"directed"!==t&&(i=q(i,At(r,n,n.undirected))),i}("mixed"===n?this.type:n,i,e)}}(t,e)})}($t);var Gt=function(t){function n(e){var n=l({type:"directed"},e);if("multi"in n&&!1!==n.multi)throw new L("DirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("directed"!==n.type)throw new L('DirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Wt=function(t){function n(e){var n=l({type:"undirected"},e);if("multi"in n&&!1!==n.multi)throw new L("UndirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("undirected"!==n.type)throw new L('UndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),qt=function(t){function n(e){var n=l({multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiGraph.from: inconsistent indication that the graph should be simple in given options!");return t.call(this,n)||this}return e(n,t),n}($t),Xt=function(t){function n(e){var n=l({type:"directed",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiDirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("directed"!==n.type)throw new L('MultiDirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Yt=function(t){function n(e){var n=l({type:"undirected",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiUndirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("undirected"!==n.type)throw new L('MultiUndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t);function Kt(t){t.from=function(e,n){var i=l({},e.options,n),r=new t(i);return r.import(e),r}}return Kt($t),Kt(Gt),Kt(Wt),Kt(qt),Kt(Xt),Kt(Yt),$t.Graph=$t,$t.DirectedGraph=Gt,$t.UndirectedGraph=Wt,$t.MultiGraph=qt,$t.MultiDirectedGraph=Xt,$t.MultiUndirectedGraph=Yt,$t.InvalidArgumentsGraphError=L,$t.NotFoundGraphError=j,$t.UsageGraphError=F,$t}()},11524:function(t,e,n){var i;!function(r,s,o,a){"use strict";var l,c=["","webkit","Moz","MS","ms","o"],u=s.createElement("div"),h=Math.round,d=Math.abs,p=Date.now;function f(t,e,n){return setTimeout(w(t,n),e)}function g(t,e,n){return!!Array.isArray(t)&&(m(t,n[e],n),!0)}function m(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==a)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=r.console&&(r.console.warn||r.console.log);return s&&s.call(r.console,i,n),t.apply(this,arguments)}}l="function"!=typeof Object.assign?function(t){if(t===a||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n-1}function k(t){return t.trim().split(/\s+/g)}function A(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;in[e]}):i.sort()),i}function I(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s1&&!n.firstMultiple?n.firstMultiple=$(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,l=o?o.center:s.center,c=e.center=G(i);e.timeStamp=p(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=Y(l,c),e.distance=X(l,c),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};(1===e.eventType||4===s.eventType)&&(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=q(e.deltaX,e.deltaY);var u=W(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=u.x,e.overallVelocityY=u.y,e.overallVelocity=d(u.x)>d(u.y)?u.x:u.y,e.scale=o?function(t,e){return X(e[0],e[1],z)/X(t[0],t[1],z)}(o.pointers,i):1,e.rotation=o?function(t,e){return Y(e[1],e[0],z)+Y(t[1],t[0],z)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,l=e.timeStamp-o.timeStamp;if(8!=e.eventType&&(l>25||o.velocity===a)){var c=e.deltaX-o.deltaX,u=e.deltaY-o.deltaY,h=W(l,c,u);i=h.x,r=h.y,n=d(h.x)>d(h.y)?h.x:h.y,s=q(c,u),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var h=t.element;O(e.srcEvent.target,h)&&(h=e.srcEvent.target),e.target=h}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function $(t){for(var e=[],n=0;n=d(e)?t<0?2:4:e<0?8:16}function X(t,e,n){n||(n=V);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function Y(t,e,n){return n||(n=V),180*Math.atan2(e[n[1]]-t[n[1]],e[n[0]]-t[n[0]])/Math.PI}U.prototype={handler:function(){},init:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(R(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&C(this.element,this.evEl,this.domHandler),this.evTarget&&C(this.target,this.evTarget,this.domHandler),this.evWin&&C(R(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Q="mousedown",Z="mousemove mouseup";function J(){this.evEl=Q,this.evWin=Z,this.pressed=!1,U.apply(this,arguments)}_(J,U,{handler:function(t){var e=K[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:B,srcEvent:t}))}});var tt={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},et={2:F,3:"pen",4:B,5:"kinect"},nt="pointerdown",it="pointermove pointerup pointercancel";function rt(){this.evEl=nt,this.evWin=it,U.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(nt="MSPointerDown",it="MSPointerMove MSPointerUp MSPointerCancel"),_(rt,U,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace("ms",""),r=tt[i],s=et[t.pointerType]||t.pointerType,o=s==F,a=A(e,t.pointerId,"pointerId");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(n=!0),!(a<0)&&(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var st={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ot="touchstart",at="touchstart touchmove touchend touchcancel";function lt(){this.evTarget=ot,this.evWin=at,this.started=!1,U.apply(this,arguments)}function ct(t,e){var n=P(t.touches),i=P(t.changedTouches);return 12&e&&(n=M(n.concat(i),"identifier",!0)),[n,i]}_(lt,U,{handler:function(t){var e=st[t.type];if(1===e&&(this.started=!0),this.started){var n=ct.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:t})}}});var ut={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ht="touchstart touchmove touchend touchcancel";function dt(){this.evTarget=ht,this.targetIds={},U.apply(this,arguments)}function pt(t,e){var n=P(t.touches),i=this.targetIds;if(3&e&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=P(t.changedTouches),a=[],l=this.target;if(s=n.filter(function(t){return O(t.target,l)}),1===e)for(r=0;r-1&&i.splice(t,1)},2500)}}function bt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+kt(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+kt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&r&e.direction},attrTest:function(t){return Mt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=At(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),_(Dt,Mt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){1!==t.scale&&(t.additionalEvent=this.options.event+(t.scale<1?"in":"out")),this._super.emit.call(this,t)}}),_(Rt,Tt,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distancee.time;if(this._input=t,!i||!n||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=f(function(){this.state=8,this.tryEmit()},e.time,this);else if(4&t.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=p(),this.manager.emit(this.options.event,this._input)))}}),_(Nt,Mt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),_(Lt,Mt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return It.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:24&n&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&d(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=At(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),_(jt,Tt,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[wt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance"']/g,W=RegExp($.source),q=RegExp(G.source),X=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,J=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tt=/[\\^$.*+?()[\]{}|]/g,et=RegExp(tt.source),nt=/^\s+/,it=/\s/,rt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,st=/\{\n\/\* \[wrapped with (.+)\] \*/,ot=/,? & /,at=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lt=/[()=,{}\[\]\/\s]/,ct=/\\(\\)?/g,ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,dt=/^[-+]0x[0-9a-f]+$/i,pt=/^0b[01]+$/i,ft=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,mt=/^(?:0|[1-9]\d*)$/,bt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,yt=/($^)/,vt=/['\n\r\u2028\u2029\\]/g,_t="\\ud800-\\udfff",wt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xt="\\u2700-\\u27bf",St="a-z\\xdf-\\xf6\\xf8-\\xff",Et="A-Z\\xc0-\\xd6\\xd8-\\xde",Ct="\\ufe0e\\ufe0f",Ot="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Tt="["+_t+"]",kt="["+Ot+"]",At="["+wt+"]",Pt="\\d+",Mt="["+xt+"]",It="["+St+"]",Dt="[^"+_t+Ot+Pt+xt+St+Et+"]",Rt="\\ud83c[\\udffb-\\udfff]",Nt="[^"+_t+"]",Lt="(?:\\ud83c[\\udde6-\\uddff]){2}",jt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ft="["+Et+"]",Bt="(?:"+It+"|"+Dt+")",Vt="(?:"+Ft+"|"+Dt+")",zt="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ut="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ht="(?:"+At+"|"+Rt+")?",$t="["+Ct+"]?",Gt=$t+Ht+"(?:\\u200d(?:"+[Nt,Lt,jt].join("|")+")"+$t+Ht+")*",Wt="(?:"+[Mt,Lt,jt].join("|")+")"+Gt,qt="(?:"+[Nt+At+"?",At,Lt,jt,Tt].join("|")+")",Xt=RegExp("['\u2019]","g"),Yt=RegExp(At,"g"),Kt=RegExp(Rt+"(?="+Rt+")|"+qt+Gt,"g"),Qt=RegExp([Ft+"?"+It+"+"+zt+"(?="+[kt,Ft,"$"].join("|")+")",Vt+"+"+Ut+"(?="+[kt,Ft+Bt,"$"].join("|")+")",Ft+"?"+Bt+"+"+zt,Ft+"+"+Ut,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pt,Wt].join("|"),"g"),Zt=RegExp("[\\u200d"+_t+wt+Ct+"]"),Jt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,te=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ee=-1,ne={};ne[I]=ne[D]=ne[R]=ne[N]=ne[L]=ne[j]=ne[F]=ne[B]=ne[V]=!0,ne[f]=ne[g]=ne[P]=ne[m]=ne[M]=ne[b]=ne[y]=ne[v]=ne[w]=ne[x]=ne[S]=ne[C]=ne[O]=ne[T]=ne[A]=!1;var ie={};ie[f]=ie[g]=ie[P]=ie[M]=ie[m]=ie[b]=ie[I]=ie[D]=ie[R]=ie[N]=ie[L]=ie[w]=ie[x]=ie[S]=ie[C]=ie[O]=ie[T]=ie[k]=ie[j]=ie[F]=ie[B]=ie[V]=!0,ie[y]=ie[v]=ie[A]=!1;var re={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},se=parseFloat,oe=parseInt,ae="object"==typeof global&&global&&global.Object===Object&&global,le="object"==typeof self&&self&&self.Object===Object&&self,ce=ae||le||Function("return this")(),ue=e&&!e.nodeType&&e,he=ue&&t&&!t.nodeType&&t,de=he&&he.exports===ue,pe=de&&ae.process,fe=function(){try{return he&&he.require&&he.require("util").types||pe&&pe.binding&&pe.binding("util")}catch(t){}}(),ge=fe&&fe.isArrayBuffer,me=fe&&fe.isDate,be=fe&&fe.isMap,ye=fe&&fe.isRegExp,ve=fe&&fe.isSet,_e=fe&&fe.isTypedArray;function we(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function xe(t,e,n,i){for(var r=-1,s=null==t?0:t.length;++r-1}function ke(t,e,n){for(var i=-1,r=null==t?0:t.length;++i-1;);return n}function Qe(t,e){for(var n=t.length;n--&&je(e,t[n],0)>-1;);return n}function Ze(t,e){for(var n=t.length,i=0;n--;)t[n]===e&&++i;return i}var Je=Ue({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),tn=Ue({"&":"&","<":"<",">":">",'"':""","'":"'"});function en(t){return"\\"+re[t]}function nn(t){return Zt.test(t)}function rn(t){var e=-1,n=Array(t.size);return t.forEach(function(t,i){n[++e]=[i,t]}),n}function sn(t,e){return function(n){return t(e(n))}}function on(t,e){for(var n=-1,i=t.length,r=0,s=[];++n",""":'"',"'":"'"}),dn=function t(e){var n,i=(e=null==e?ce:dn.defaults(ce.Object(),e,dn.pick(ce,te))).Array,it=e.Date,_t=e.Error,wt=e.Function,xt=e.Math,St=e.Object,Et=e.RegExp,Ct=e.String,Ot=e.TypeError,Tt=i.prototype,kt=St.prototype,At=e["__core-js_shared__"],Pt=wt.prototype.toString,Mt=kt.hasOwnProperty,It=0,Dt=(n=/[^.]+$/.exec(At&&At.keys&&At.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Rt=kt.toString,Nt=Pt.call(St),Lt=ce._,jt=Et("^"+Pt.call(Mt).replace(tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ft=de?e.Buffer:r,Bt=e.Symbol,Vt=e.Uint8Array,zt=Ft?Ft.allocUnsafe:r,Ut=sn(St.getPrototypeOf,St),Ht=St.create,$t=kt.propertyIsEnumerable,Gt=Tt.splice,Wt=Bt?Bt.isConcatSpreadable:r,qt=Bt?Bt.iterator:r,Kt=Bt?Bt.toStringTag:r,Zt=function(){try{var t=os(St,"defineProperty");return t({},"",{}),t}catch(Ms){}}(),re=e.clearTimeout!==ce.clearTimeout&&e.clearTimeout,ae=it&&it.now!==ce.Date.now&&it.now,le=e.setTimeout!==ce.setTimeout&&e.setTimeout,ue=xt.ceil,he=xt.floor,pe=St.getOwnPropertySymbols,fe=Ft?Ft.isBuffer:r,Re=e.isFinite,Ue=Tt.join,pn=sn(St.keys,St),fn=xt.max,gn=xt.min,mn=it.now,bn=e.parseInt,yn=xt.random,vn=Tt.reverse,_n=os(e,"DataView"),wn=os(e,"Map"),xn=os(e,"Promise"),Sn=os(e,"Set"),En=os(e,"WeakMap"),Cn=os(St,"create"),On=En&&new En,Tn={},kn=Ns(_n),An=Ns(wn),Pn=Ns(xn),Mn=Ns(Sn),In=Ns(En),Dn=Bt?Bt.prototype:r,Rn=Dn?Dn.valueOf:r,Nn=Dn?Dn.toString:r;function Ln(t){if(Jo(t)&&!Uo(t)&&!(t instanceof Vn)){if(t instanceof Bn)return t;if(Mt.call(t,"__wrapped__"))return Ls(t)}return new Bn(t)}var jn=function(){function t(){}return function(e){if(!Zo(e))return{};if(Ht)return Ht(e);t.prototype=e;var n=new t;return t.prototype=r,n}}();function Fn(){}function Bn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=r}function Vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function zn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function ri(t,e,n,i,s,o){var a,l=1&e,c=2&e,u=4&e;if(n&&(a=s?n(t,i,s,o):n(t)),a!==r)return a;if(!Zo(t))return t;var h=Uo(t);if(h){if(a=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Mt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!l)return Er(t,a)}else{var d=cs(t),p=d==v||d==_;if(Wo(t))return yr(t,l);if(d==S||d==f||p&&!s){if(a=c||p?{}:hs(t),!l)return c?function(t,e){return Cr(t,ls(t),e)}(t,function(t,e){return t&&Cr(e,Pa(e),t)}(a,t)):function(t,e){return Cr(t,as(t),e)}(t,ti(a,t))}else{if(!ie[d])return s?t:{};a=function(t,e,n){var i=t.constructor;switch(e){case P:return vr(t);case m:case b:return new i(+t);case M:return function(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case I:case D:case R:case N:case L:case j:case F:case B:case V:return _r(t,n);case w:return new i;case x:case T:return new i(t);case C:return function(t){var e=new t.constructor(t.source,ht.exec(t));return e.lastIndex=t.lastIndex,e}(t);case O:return new i;case k:return function(t){return Rn?St(Rn.call(t)):{}}(t)}}(t,d,l)}}o||(o=new Gn);var g=o.get(t);if(g)return g;o.set(t,a),ra(t)?t.forEach(function(i){a.add(ri(i,e,n,i,t,o))}):ta(t)&&t.forEach(function(i,r){a.set(r,ri(i,e,n,r,t,o))});var y=h?r:(u?c?Jr:Zr:c?Pa:Aa)(t);return Se(y||t,function(i,r){y&&(i=t[r=i]),Qn(a,r,ri(i,e,n,r,t,o))}),a}function si(t,e,n){var i=n.length;if(null==t)return!i;for(t=St(t);i--;){var s=n[i],o=t[s];if(o===r&&!(s in t)||!(0,e[s])(o))return!1}return!0}function oi(t,e,n){if("function"!=typeof t)throw new Ot(s);return Os(function(){t.apply(r,n)},e)}function ai(t,e,n,i){var r=-1,s=Te,o=!0,a=t.length,l=[],c=e.length;if(!a)return l;n&&(e=Ae(e,qe(n))),i?(s=ke,o=!1):e.length>=200&&(s=Ye,o=!1,e=new $n(e));t:for(;++r-1},Un.prototype.set=function(t,e){var n=this.__data__,i=Zn(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this},Hn.prototype.clear=function(){this.size=0,this.__data__={hash:new zn,map:new(wn||Un),string:new zn}},Hn.prototype.delete=function(t){var e=rs(this,t).delete(t);return this.size-=e?1:0,e},Hn.prototype.get=function(t){return rs(this,t).get(t)},Hn.prototype.has=function(t){return rs(this,t).has(t)},Hn.prototype.set=function(t,e){var n=rs(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this},$n.prototype.add=$n.prototype.push=function(t){return this.__data__.set(t,o),this},$n.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.clear=function(){this.__data__=new Un,this.size=0},Gn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Gn.prototype.get=function(t){return this.__data__.get(t)},Gn.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Un){var i=n.__data__;if(!wn||i.length<199)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new Hn(i)}return n.set(t,e),this.size=n.size,this};var li=kr(mi),ci=kr(bi,!0);function ui(t,e){var n=!0;return li(t,function(t,i,r){return n=!!e(t,i,r)}),n}function hi(t,e,n){for(var i=-1,s=t.length;++i0&&n(a)?e>1?pi(a,e-1,n,i,r):Pe(r,a):i||(r[r.length]=a)}return r}var fi=Ar(),gi=Ar(!0);function mi(t,e){return t&&fi(t,e,Aa)}function bi(t,e){return t&&gi(t,e,Aa)}function yi(t,e){return Oe(e,function(e){return Yo(t[e])})}function vi(t,e){for(var n=0,i=(e=fr(e,t)).length;null!=t&&ne}function Si(t,e){return null!=t&&Mt.call(t,e)}function Ei(t,e){return null!=t&&e in St(t)}function Ci(t,e,n){for(var s=n?ke:Te,o=t[0].length,a=t.length,l=a,c=i(a),u=1/0,h=[];l--;){var d=t[l];l&&e&&(d=Ae(d,qe(e))),u=gn(d.length,u),c[l]=!n&&(e||o>=120&&d.length>=120)?new $n(l&&d):r}d=t[0];var p=-1,f=c[0];t:for(;++p=a?l:l*("desc"==n[i]?-1:1)}return t.index-e.index}(t,e,n)});i--;)t[i]=t[i].value;return t}(Ri(t,function(t,n,r){return{criteria:Ae(e,function(e){return e(t)}),index:++i,value:t}}))}function Vi(t,e,n){for(var i=-1,r=e.length,s={};++i-1;)a!==t&&Gt.call(a,l,1),Gt.call(t,l,1);return t}function Ui(t,e){for(var n=t?e.length:0,i=n-1;n--;){var r=e[n];if(n==i||r!==s){var s=r;ps(r)?Gt.call(t,r,1):or(t,r)}}return t}function Hi(t,e){return t+he(yn()*(e-t+1))}function $i(t,e){var n="";if(!t||e<1||e>h)return n;do{e%2&&(n+=t),(e=he(e/2))&&(t+=t)}while(e);return n}function Gi(t,e){return Ts(ws(t,e,el),t+"")}function Wi(t){return qn(Fa(t))}function qi(t,e){var n=Fa(t);return Ps(n,ii(e,0,n.length))}function Xi(t,e,n,i){if(!Zo(t))return t;for(var s=-1,o=(e=fr(e,t)).length,a=o-1,l=t;null!=l&&++ss?0:s+e),(n=n>s?s:n)<0&&(n+=s),s=e>n?0:n-e>>>0,e>>>=0;for(var o=i(s);++r>>1,o=t[s];null!==o&&!oa(o)&&(n?o<=e:o=200){var c=e?null:$r(t);if(c)return an(c);o=!1,r=Ye,l=new $n}else l=e?[]:a;t:for(;++i=i?t:Zi(t,e,n)}var br=re||function(t){return ce.clearTimeout(t)};function yr(t,e){if(e)return t.slice();var n=t.length,i=zt?zt(n):new t.constructor(n);return t.copy(i),i}function vr(t){var e=new t.constructor(t.byteLength);return new Vt(e).set(new Vt(t)),e}function _r(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function wr(t,e){if(t!==e){var n=t!==r,i=null===t,s=t==t,o=oa(t),a=e!==r,l=null===e,c=e==e,u=oa(e);if(!l&&!u&&!o&&t>e||o&&a&&c&&!l&&!u||i&&a&&c||!n&&c||!s)return 1;if(!i&&!o&&!u&&t1?n[s-1]:r,a=s>2?n[2]:r;for(o=t.length>3&&"function"==typeof o?(s--,o):r,a&&fs(n[0],n[1],a)&&(o=s<3?r:o,s=1),e=St(e);++i-1?s[o?e[a]:a]:r}}function Rr(t){return Qr(function(e){var n=e.length,i=n,o=Bn.prototype.thru;for(t&&e.reverse();i--;){var a=e[i];if("function"!=typeof a)throw new Ot(s);if(o&&!l&&"wrapper"==es(a))var l=new Bn([],!0)}for(i=l?i:n;++i1&&v.reverse(),p&&hl))return!1;var u=o.get(t),h=o.get(e);if(u&&h)return u==e&&h==t;var d=-1,p=!0,f=2&n?new $n:r;for(o.set(t,e),o.set(e,t);++d-1&&t%1==0&&t1?"& ":"")+e[i],e=e.join(n>2?", ":" "),t.replace(rt,"{\n/* [wrapped with "+e+"] */\n")}(i,function(t,e){return Se(p,function(n){var i="_."+n[0];e&n[1]&&!Te(t,i)&&t.push(i)}),t.sort()}(function(t){var e=t.match(st);return e?e[1].split(ot):[]}(i),n)))}function As(t){var e=0,n=0;return function(){var i=mn(),s=16-(i-n);if(n=i,s>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(r,arguments)}}function Ps(t,e){var n=-1,i=t.length,s=i-1;for(e=e===r?i:e;++n1?t[e-1]:r;return n="function"==typeof n?(t.pop(),n):r,no(t,n)});function co(t){var e=Ln(t);return e.__chain__=!0,e}function uo(t,e){return e(t)}var ho=Qr(function(t){var e=t.length,n=e?t[0]:0,i=this.__wrapped__,s=function(e){return ni(e,t)};return!(e>1||this.__actions__.length)&&i instanceof Vn&&ps(n)?((i=i.slice(n,+n+(e?1:0))).__actions__.push({func:uo,args:[s],thisArg:r}),new Bn(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(r),t})):this.thru(s)}),po=Or(function(t,e,n){Mt.call(t,n)?++t[n]:ei(t,n,1)}),fo=Dr(Vs),go=Dr(zs);function mo(t,e){return(Uo(t)?Se:li)(t,is(e,3))}function bo(t,e){return(Uo(t)?Ee:ci)(t,is(e,3))}var yo=Or(function(t,e,n){Mt.call(t,n)?t[n].push(e):ei(t,n,[e])}),vo=Gi(function(t,e,n){var r=-1,s="function"==typeof e,o=$o(t)?i(t.length):[];return li(t,function(t){o[++r]=s?we(e,t,n):Oi(t,e,n)}),o}),_o=Or(function(t,e,n){ei(t,n,e)});function wo(t,e){return(Uo(t)?Ae:Ri)(t,is(e,3))}var xo=Or(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),So=Gi(function(t,e){if(null==t)return[];var n=e.length;return n>1&&fs(t,e[0],e[1])?e=[]:n>2&&fs(e[0],e[1],e[2])&&(e=[e[0]]),Bi(t,pi(e,1),[])}),Eo=ae||function(){return ce.Date.now()};function Co(t,e,n){return e=n?r:e,Wr(t,c,r,r,r,r,e=t&&null==e?t.length:e)}function Oo(t,e){var n;if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=r),n}}var To=Gi(function(t,e,n){var i=1;if(n.length){var r=on(n,ns(To));i|=l}return Wr(t,i,e,n,r)}),ko=Gi(function(t,e,n){var i=3;if(n.length){var r=on(n,ns(ko));i|=l}return Wr(e,i,t,n,r)});function Ao(t,e,n){var i,o,a,l,c,u,h=0,d=!1,p=!1,f=!0;if("function"!=typeof t)throw new Ot(s);function g(e){var n=i,s=o;return i=o=r,h=e,l=t.apply(s,n)}function m(t){return h=t,c=Os(y,e),d?g(t):l}function b(t){var n=t-u;return u===r||n>=e||n<0||p&&t-h>=a}function y(){var t=Eo();if(b(t))return v(t);c=Os(y,function(t){var n=e-(t-u);return p?gn(n,a-(t-h)):n}(t))}function v(t){return c=r,f&&i?g(t):(i=o=r,l)}function _(){var t=Eo(),n=b(t);if(i=arguments,o=this,u=t,n){if(c===r)return m(u);if(p)return br(c),c=Os(y,e),g(u)}return c===r&&(c=Os(y,e)),l}return e=fa(e)||0,Zo(n)&&(d=!!n.leading,a=(p="maxWait"in n)?fn(fa(n.maxWait)||0,e):a,f="trailing"in n?!!n.trailing:f),_.cancel=function(){c!==r&&br(c),h=0,i=u=o=c=r},_.flush=function(){return c===r?l:v(Eo())},_}var Po=Gi(function(t,e){return oi(t,1,e)}),Mo=Gi(function(t,e,n){return oi(t,fa(e)||0,n)});function Io(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new Ot(s);var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],s=n.cache;if(s.has(r))return s.get(r);var o=t.apply(this,i);return n.cache=s.set(r,o)||s,o};return n.cache=new(Io.Cache||Hn),n}function Do(t){if("function"!=typeof t)throw new Ot(s);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Io.Cache=Hn;var Ro=gr(function(t,e){var n=(e=1==e.length&&Uo(e[0])?Ae(e[0],qe(is())):Ae(pi(e,1),qe(is()))).length;return Gi(function(i){for(var r=-1,s=gn(i.length,n);++r=e}),zo=Ti(function(){return arguments}())?Ti:function(t){return Jo(t)&&Mt.call(t,"callee")&&!$t.call(t,"callee")},Uo=i.isArray,Ho=ge?qe(ge):function(t){return Jo(t)&&wi(t)==P};function $o(t){return null!=t&&Qo(t.length)&&!Yo(t)}function Go(t){return Jo(t)&&$o(t)}var Wo=fe||fl,qo=me?qe(me):function(t){return Jo(t)&&wi(t)==b};function Xo(t){if(!Jo(t))return!1;var e=wi(t);return e==y||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!na(t)}function Yo(t){if(!Zo(t))return!1;var e=wi(t);return e==v||e==_||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Ko(t){return"number"==typeof t&&t==da(t)}function Qo(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=h}function Zo(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Jo(t){return null!=t&&"object"==typeof t}var ta=be?qe(be):function(t){return Jo(t)&&cs(t)==w};function ea(t){return"number"==typeof t||Jo(t)&&wi(t)==x}function na(t){if(!Jo(t)||wi(t)!=S)return!1;var e=Ut(t);if(null===e)return!0;var n=Mt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Pt.call(n)==Nt}var ia=ye?qe(ye):function(t){return Jo(t)&&wi(t)==C},ra=ve?qe(ve):function(t){return Jo(t)&&cs(t)==O};function sa(t){return"string"==typeof t||!Uo(t)&&Jo(t)&&wi(t)==T}function oa(t){return"symbol"==typeof t||Jo(t)&&wi(t)==k}var aa=_e?qe(_e):function(t){return Jo(t)&&Qo(t.length)&&!!ne[wi(t)]},la=zr(Di),ca=zr(function(t,e){return t<=e});function ua(t){if(!t)return[];if($o(t))return sa(t)?cn(t):Er(t);if(qt&&t[qt])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[qt]());var e=cs(t);return(e==w?rn:e==O?an:Fa)(t)}function ha(t){return t?(t=fa(t))===u||t===-u?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function da(t){var e=ha(t),n=e%1;return e==e?n?e-n:e:0}function pa(t){return t?ii(da(t),0,d):0}function fa(t){if("number"==typeof t)return t;if(oa(t))return NaN;if(Zo(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Zo(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=We(t);var n=pt.test(t);return n||gt.test(t)?oe(t.slice(2),n?2:8):dt.test(t)?NaN:+t}function ga(t){return Cr(t,Pa(t))}function ma(t){return null==t?"":rr(t)}var ba=Tr(function(t,e){if(ys(e)||$o(e))Cr(e,Aa(e),t);else for(var n in e)Mt.call(e,n)&&Qn(t,n,e[n])}),ya=Tr(function(t,e){Cr(e,Pa(e),t)}),va=Tr(function(t,e,n,i){Cr(e,Pa(e),t,i)}),_a=Tr(function(t,e,n,i){Cr(e,Aa(e),t,i)}),wa=Qr(ni),xa=Gi(function(t,e){t=St(t);var n=-1,i=e.length,s=i>2?e[2]:r;for(s&&fs(e[0],e[1],s)&&(i=1);++n1),e}),Cr(t,Jr(t),n),i&&(n=ri(n,7,Yr));for(var r=e.length;r--;)or(n,e[r]);return n}),Ra=Qr(function(t,e){return null==t?{}:function(t,e){return Vi(t,e,function(e,n){return Ca(t,n)})}(t,e)});function Na(t,e){if(null==t)return{};var n=Ae(Jr(t),function(t){return[t]});return e=is(e),Vi(t,n,function(t,n){return e(t,n[0])})}var La=Gr(Aa),ja=Gr(Pa);function Fa(t){return null==t?[]:Xe(t,Aa(t))}var Ba=Mr(function(t,e,n){return e=e.toLowerCase(),t+(n?Va(e):e)});function Va(t){return Xa(ma(t).toLowerCase())}function za(t){return(t=ma(t))&&t.replace(bt,Je).replace(Yt,"")}var Ua=Mr(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Ha=Mr(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),$a=Pr("toLowerCase"),Ga=Mr(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Wa=Mr(function(t,e,n){return t+(n?" ":"")+Xa(e)}),qa=Mr(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Xa=Pr("toUpperCase");function Ya(t,e,n){return t=ma(t),(e=n?r:e)===r?function(t){return Jt.test(t)}(t)?function(t){return t.match(Qt)||[]}(t):function(t){return t.match(at)||[]}(t):t.match(e)||[]}var Ka=Gi(function(t,e){try{return we(t,r,e)}catch(Is){return Xo(Is)?Is:new _t(Is)}}),Qa=Qr(function(t,e){return Se(e,function(e){e=Rs(e),ei(t,e,To(t[e],t))}),t});function Za(t){return function(){return t}}var Ja=Rr(),tl=Rr(!0);function el(t){return t}function nl(t){return Mi("function"==typeof t?t:ri(t,1))}var il=Gi(function(t,e){return function(n){return Oi(n,t,e)}}),rl=Gi(function(t,e){return function(n){return Oi(t,n,e)}});function sl(t,e,n){var i=Aa(e),r=yi(e,i);null==n&&(!Zo(e)||!r.length&&i.length)&&(n=e,e=t,t=this,r=yi(e,Aa(e)));var s=!(Zo(n)&&"chain"in n&&!n.chain),o=Yo(t);return Se(r,function(n){var i=e[n];t[n]=i,o&&(t.prototype[n]=function(){var e=this.__chain__;if(s||e){var n=t(this.__wrapped__),r=n.__actions__=Er(this.__actions__);return r.push({func:i,args:arguments,thisArg:t}),n.__chain__=e,n}return i.apply(t,Pe([this.value()],arguments))})}),t}function ol(){}var al=Fr(Ae),ll=Fr(Ce),cl=Fr(De);function ul(t){return gs(t)?ze(Rs(t)):function(t){return function(e){return vi(e,t)}}(t)}var hl=Vr(),dl=Vr(!0);function pl(){return[]}function fl(){return!1}var gl=jr(function(t,e){return t+e},0),ml=Hr("ceil"),bl=jr(function(t,e){return t/e},1),yl=Hr("floor"),vl=jr(function(t,e){return t*e},1),_l=Hr("round"),wl=jr(function(t,e){return t-e},0);return Ln.after=function(t,e){if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){if(--t<1)return e.apply(this,arguments)}},Ln.ary=Co,Ln.assign=ba,Ln.assignIn=ya,Ln.assignInWith=va,Ln.assignWith=_a,Ln.at=wa,Ln.before=Oo,Ln.bind=To,Ln.bindAll=Qa,Ln.bindKey=ko,Ln.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Uo(t)?t:[t]},Ln.chain=co,Ln.chunk=function(t,e,n){e=(n?fs(t,e,n):e===r)?1:fn(da(e),0);var s=null==t?0:t.length;if(!s||e<1)return[];for(var o=0,a=0,l=i(ue(s/e));os?0:s+n),(i=i===r||i>s?s:da(i))<0&&(i+=s),i=n>i?0:pa(i);n>>0)?(t=ma(t))&&("string"==typeof e||null!=e&&!ia(e))&&!(e=rr(e))&&nn(t)?mr(cn(t),0,n):t.split(e,n):[]},Ln.spread=function(t,e){if("function"!=typeof t)throw new Ot(s);return e=null==e?0:fn(da(e),0),Gi(function(n){var i=n[e],r=mr(n,0,e);return i&&Pe(r,i),we(t,this,r)})},Ln.tail=function(t){var e=null==t?0:t.length;return e?Zi(t,1,e):[]},Ln.take=function(t,e,n){return t&&t.length?Zi(t,0,(e=n||e===r?1:da(e))<0?0:e):[]},Ln.takeRight=function(t,e,n){var i=null==t?0:t.length;return i?Zi(t,(e=i-(e=n||e===r?1:da(e)))<0?0:e,i):[]},Ln.takeRightWhile=function(t,e){return t&&t.length?lr(t,is(e,3),!1,!0):[]},Ln.takeWhile=function(t,e){return t&&t.length?lr(t,is(e,3)):[]},Ln.tap=function(t,e){return e(t),t},Ln.throttle=function(t,e,n){var i=!0,r=!0;if("function"!=typeof t)throw new Ot(s);return Zo(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Ao(t,e,{leading:i,maxWait:e,trailing:r})},Ln.thru=uo,Ln.toArray=ua,Ln.toPairs=La,Ln.toPairsIn=ja,Ln.toPath=function(t){return Uo(t)?Ae(t,Rs):oa(t)?[t]:Er(Ds(ma(t)))},Ln.toPlainObject=ga,Ln.transform=function(t,e,n){var i=Uo(t),r=i||Wo(t)||aa(t);if(e=is(e,4),null==n){var s=t&&t.constructor;n=r?i?new s:[]:Zo(t)&&Yo(s)?jn(Ut(t)):{}}return(r?Se:mi)(t,function(t,i,r){return e(n,t,i,r)}),n},Ln.unary=function(t){return Co(t,1)},Ln.union=Zs,Ln.unionBy=Js,Ln.unionWith=to,Ln.uniq=function(t){return t&&t.length?sr(t):[]},Ln.uniqBy=function(t,e){return t&&t.length?sr(t,is(e,2)):[]},Ln.uniqWith=function(t,e){return e="function"==typeof e?e:r,t&&t.length?sr(t,r,e):[]},Ln.unset=function(t,e){return null==t||or(t,e)},Ln.unzip=eo,Ln.unzipWith=no,Ln.update=function(t,e,n){return null==t?t:ar(t,e,pr(n))},Ln.updateWith=function(t,e,n,i){return i="function"==typeof i?i:r,null==t?t:ar(t,e,pr(n),i)},Ln.values=Fa,Ln.valuesIn=function(t){return null==t?[]:Xe(t,Pa(t))},Ln.without=io,Ln.words=Ya,Ln.wrap=function(t,e){return No(pr(e),t)},Ln.xor=ro,Ln.xorBy=so,Ln.xorWith=oo,Ln.zip=ao,Ln.zipObject=function(t,e){return hr(t||[],e||[],Qn)},Ln.zipObjectDeep=function(t,e){return hr(t||[],e||[],Xi)},Ln.zipWith=lo,Ln.entries=La,Ln.entriesIn=ja,Ln.extend=ya,Ln.extendWith=va,sl(Ln,Ln),Ln.add=gl,Ln.attempt=Ka,Ln.camelCase=Ba,Ln.capitalize=Va,Ln.ceil=ml,Ln.clamp=function(t,e,n){return n===r&&(n=e,e=r),n!==r&&(n=(n=fa(n))==n?n:0),e!==r&&(e=(e=fa(e))==e?e:0),ii(fa(t),e,n)},Ln.clone=function(t){return ri(t,4)},Ln.cloneDeep=function(t){return ri(t,5)},Ln.cloneDeepWith=function(t,e){return ri(t,5,e="function"==typeof e?e:r)},Ln.cloneWith=function(t,e){return ri(t,4,e="function"==typeof e?e:r)},Ln.conformsTo=function(t,e){return null==e||si(t,e,Aa(e))},Ln.deburr=za,Ln.defaultTo=function(t,e){return null==t||t!=t?e:t},Ln.divide=bl,Ln.endsWith=function(t,e,n){t=ma(t),e=rr(e);var i=t.length,s=n=n===r?i:ii(da(n),0,i);return(n-=e.length)>=0&&t.slice(n,s)==e},Ln.eq=Fo,Ln.escape=function(t){return(t=ma(t))&&q.test(t)?t.replace(G,tn):t},Ln.escapeRegExp=function(t){return(t=ma(t))&&et.test(t)?t.replace(tt,"\\$&"):t},Ln.every=function(t,e,n){var i=Uo(t)?Ce:ui;return n&&fs(t,e,n)&&(e=r),i(t,is(e,3))},Ln.find=fo,Ln.findIndex=Vs,Ln.findKey=function(t,e){return Ne(t,is(e,3),mi)},Ln.findLast=go,Ln.findLastIndex=zs,Ln.findLastKey=function(t,e){return Ne(t,is(e,3),bi)},Ln.floor=yl,Ln.forEach=mo,Ln.forEachRight=bo,Ln.forIn=function(t,e){return null==t?t:fi(t,is(e,3),Pa)},Ln.forInRight=function(t,e){return null==t?t:gi(t,is(e,3),Pa)},Ln.forOwn=function(t,e){return t&&mi(t,is(e,3))},Ln.forOwnRight=function(t,e){return t&&bi(t,is(e,3))},Ln.get=Ea,Ln.gt=Bo,Ln.gte=Vo,Ln.has=function(t,e){return null!=t&&us(t,e,Si)},Ln.hasIn=Ca,Ln.head=Hs,Ln.identity=el,Ln.includes=function(t,e,n,i){t=$o(t)?t:Fa(t),n=n&&!i?da(n):0;var r=t.length;return n<0&&(n=fn(r+n,0)),sa(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&je(t,e,n)>-1},Ln.indexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=null==n?0:da(n);return r<0&&(r=fn(i+r,0)),je(t,e,r)},Ln.inRange=function(t,e,n){return e=ha(e),n===r?(n=e,e=0):n=ha(n),function(t,e,n){return t>=gn(e,n)&&t=-h&&t<=h},Ln.isSet=ra,Ln.isString=sa,Ln.isSymbol=oa,Ln.isTypedArray=aa,Ln.isUndefined=function(t){return t===r},Ln.isWeakMap=function(t){return Jo(t)&&cs(t)==A},Ln.isWeakSet=function(t){return Jo(t)&&"[object WeakSet]"==wi(t)},Ln.join=function(t,e){return null==t?"":Ue.call(t,e)},Ln.kebabCase=Ua,Ln.last=qs,Ln.lastIndexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var s=i;return n!==r&&(s=(s=da(n))<0?fn(i+s,0):gn(s,i-1)),e==e?function(t,e,n){for(var i=n+1;i--;)if(t[i]===e)return i;return i}(t,e,s):Le(t,Be,s,!0)},Ln.lowerCase=Ha,Ln.lowerFirst=$a,Ln.lt=la,Ln.lte=ca,Ln.max=function(t){return t&&t.length?hi(t,el,xi):r},Ln.maxBy=function(t,e){return t&&t.length?hi(t,is(e,2),xi):r},Ln.mean=function(t){return Ve(t,el)},Ln.meanBy=function(t,e){return Ve(t,is(e,2))},Ln.min=function(t){return t&&t.length?hi(t,el,Di):r},Ln.minBy=function(t,e){return t&&t.length?hi(t,is(e,2),Di):r},Ln.stubArray=pl,Ln.stubFalse=fl,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=vl,Ln.nth=function(t,e){return t&&t.length?Fi(t,da(e)):r},Ln.noConflict=function(){return ce._===this&&(ce._=Lt),this},Ln.noop=ol,Ln.now=Eo,Ln.pad=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;if(!e||i>=e)return t;var r=(e-i)/2;return Br(he(r),n)+t+Br(ue(r),n)},Ln.padEnd=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;return e&&ie){var i=t;t=e,e=i}if(n||t%1||e%1){var s=yn();return gn(t+s*(e-t+se("1e-"+((s+"").length-1))),e)}return Hi(t,e)},Ln.reduce=function(t,e,n){var i=Uo(t)?Me:He,r=arguments.length<3;return i(t,is(e,4),n,r,li)},Ln.reduceRight=function(t,e,n){var i=Uo(t)?Ie:He,r=arguments.length<3;return i(t,is(e,4),n,r,ci)},Ln.repeat=function(t,e,n){return e=(n?fs(t,e,n):e===r)?1:da(e),$i(ma(t),e)},Ln.replace=function(){var t=arguments,e=ma(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Ln.result=function(t,e,n){var i=-1,s=(e=fr(e,t)).length;for(s||(s=1,t=r);++ih)return[];var n=d,i=gn(t,d);e=is(e),t-=d;for(var r=Ge(i,e);++n=o)return t;var l=n-ln(i);if(l<1)return i;var c=a?mr(a,0,l).join(""):t.slice(0,l);if(s===r)return c+i;if(a&&(l+=c.length-l),ia(s)){if(t.slice(l).search(s)){var u,h=c;for(s.global||(s=Et(s.source,ma(ht.exec(s))+"g")),s.lastIndex=0;u=s.exec(h);)var d=u.index;c=c.slice(0,d===r?l:d)}}else if(t.indexOf(rr(s),l)!=l){var p=c.lastIndexOf(s);p>-1&&(c=c.slice(0,p))}return c+i},Ln.unescape=function(t){return(t=ma(t))&&W.test(t)?t.replace($,hn):t},Ln.uniqueId=function(t){var e=++It;return ma(t)+e},Ln.upperCase=qa,Ln.upperFirst=Xa,Ln.each=mo,Ln.eachRight=bo,Ln.first=Hs,sl(Ln,function(){var t={};return mi(Ln,function(e,n){Mt.call(Ln.prototype,n)||(t[n]=e)}),t}(),{chain:!1}),Ln.VERSION="4.17.21",Se(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){Ln[t].placeholder=Ln}),Se(["drop","take"],function(t,e){Vn.prototype[t]=function(n){n=n===r?1:fn(da(n),0);var i=this.__filtered__&&!e?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=gn(n,i.__takeCount__):i.__views__.push({size:gn(n,d),type:t+(i.__dir__<0?"Right":"")}),i},Vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Se(["filter","map","takeWhile"],function(t,e){var n=e+1,i=1==n||3==n;Vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:is(t,3),type:n}),e.__filtered__=e.__filtered__||i,e}}),Se(["head","last"],function(t,e){var n="take"+(e?"Right":"");Vn.prototype[t]=function(){return this[n](1).value()[0]}}),Se(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");Vn.prototype[t]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(el)},Vn.prototype.find=function(t){return this.filter(t).head()},Vn.prototype.findLast=function(t){return this.reverse().find(t)},Vn.prototype.invokeMap=Gi(function(t,e){return"function"==typeof t?new Vn(this):this.map(function(n){return Oi(n,t,e)})}),Vn.prototype.reject=function(t){return this.filter(Do(is(t)))},Vn.prototype.slice=function(t,e){t=da(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Vn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==r&&(n=(e=da(e))<0?n.dropRight(-e):n.take(e-t)),n)},Vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Vn.prototype.toArray=function(){return this.take(d)},mi(Vn.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),s=Ln[i?"take"+("last"==e?"Right":""):e],o=i||/^find/.test(e);!s||(Ln.prototype[e]=function(){var e=this.__wrapped__,a=i?[1]:arguments,l=e instanceof Vn,c=a[0],u=l||Uo(e),h=function(t){var e=s.apply(Ln,Pe([t],a));return i&&d?e[0]:e};u&&n&&"function"==typeof c&&1!=c.length&&(l=u=!1);var d=this.__chain__,p=!!this.__actions__.length,f=o&&!d,g=l&&!p;if(!o&&u){e=g?e:new Vn(this);var m=t.apply(e,a);return m.__actions__.push({func:uo,args:[h],thisArg:r}),new Bn(m,d)}return f&&g?t.apply(this,a):(m=this.thru(h),f?i?m.value()[0]:m.value():m)})}),Se(["pop","push","shift","sort","splice","unshift"],function(t){var e=Tt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);Ln.prototype[t]=function(){var t=arguments;if(i&&!this.__chain__){var r=this.value();return e.apply(Uo(r)?r:[],t)}return this[n](function(n){return e.apply(Uo(n)?n:[],t)})}}),mi(Vn.prototype,function(t,e){var n=Ln[e];if(n){var i=n.name+"";Mt.call(Tn,i)||(Tn[i]=[]),Tn[i].push({name:e,func:n})}}),Tn[Nr(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var t=new Vn(this.__wrapped__);return t.__actions__=Er(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Er(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Er(this.__views__),t},Vn.prototype.reverse=function(){if(this.__filtered__){var t=new Vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Uo(t),i=e<0,r=n?t.length:0,s=function(t,e,n){for(var i=-1,r=n.length;++i=this.__values__.length;return{done:t,value:t?r:this.__values__[this.__index__++]}},Ln.prototype.plant=function(t){for(var e,n=this;n instanceof Fn;){var i=Ls(n);i.__index__=0,i.__values__=r,e?s.__wrapped__=i:e=i;var s=i;n=n.__wrapped__}return s.__wrapped__=t,e},Ln.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Vn){var e=t;return this.__actions__.length&&(e=new Vn(this)),(e=e.reverse()).__actions__.push({func:uo,args:[Qs],thisArg:r}),new Bn(e,this.__chain__)}return this.thru(Qs)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return cr(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,qt&&(Ln.prototype[qt]=function(){return this}),Ln}();ce._=dn,(i=(function(){return dn}).call(e,n,e,t))!==r&&(t.exports=i)}).call(this)},5478:function(t){t.exports=function(){"use strict";function t(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,i=new Array(e);n=t.length?{done:!0}:{done:!1,value:t[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i={exports:{}};function r(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}i.exports={defaults:{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:r,changeDefaults:function(t){i.exports.defaults=t}};var s=/[&<>"']/,o=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,l=/[<>"']|&(?!#?\w+;)/g,c={"&":"&","<":"<",">":">",'"':""","'":"'"},u=function(t){return c[t]};var h=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function d(t){return t.replace(h,function(t,e){return"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""})}var p=/(^|[^\[])\^/g;var f=/[^\w:]/g,g=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var m={},b=/^[^:]+:\/*[^/]*$/,y=/^([^:]+:)[\s\S]*$/,v=/^([^:]+:\/*[^/]*)[\s\S]*$/;function _(t,e){m[" "+t]||(m[" "+t]=b.test(t)?t+"/":w(t,"/",!0));var n=-1===(t=m[" "+t]).indexOf(":");return"//"===e.substring(0,2)?n?e:t.replace(y,"$1")+e:"/"===e.charAt(0)?n?e:t.replace(v,"$1")+e:t+e}function w(t,e,n){var i=t.length;if(0===i)return"";for(var r=0;r1;)1&e&&(n+=t),e>>=1,t+=t;return n+t},P=i.exports.defaults,M=w,I=function(t,e){var n=t.replace(/\|/g,function(t,e,n){for(var i=!1,r=e;--r>=0&&"\\"===n[r];)i=!i;return i?"|":" |"}).split(/ \|/),i=0;if(n.length>e)n.splice(e);else for(;n.length1?{type:"space",raw:e[0]}:{raw:"\n"}},e.code=function(t){var e=this.rules.block.code.exec(t);if(e){var n=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:M(n,"\n")}}},e.fences=function(t){var e=this.rules.block.fences.exec(t);if(e){var n=e[0],i=function(t,e){var n=t.match(/^(\s+)(?:```)/);if(null===n)return e;var i=n[1];return e.split("\n").map(function(t){var e=t.match(/^\s+/);return null===e?t:e[0].length>=i.length?t.slice(i.length):t}).join("\n")}(n,e[3]||"");return{type:"code",raw:n,lang:e[2]?e[2].trim():e[2],text:i}}},e.heading=function(t){var e=this.rules.block.heading.exec(t);if(e){var n=e[2].trim();if(/#$/.test(n)){var i=M(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n}}},e.nptable=function(t){var e=this.rules.block.nptable.exec(t);if(e){var n={type:"table",header:I(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[],raw:e[0]};if(n.header.length===n.align.length){var i,r=n.align.length;for(i=0;i ?/gm,"");return{type:"blockquote",raw:e[0],text:n}}},e.list=function(t){var e=this.rules.block.list.exec(t);if(e){var n,i,r,s,o,a,l,c,u,h=e[0],d=e[2],p=d.length>1,f={type:"list",raw:h,ordered:p,start:p?+d.slice(0,-1):"",loose:!1,items:[]},g=e[0].match(this.rules.block.item),m=!1,b=g.length;r=this.rules.block.listItemStart.exec(g[0]);for(var y=0;yr[1].length:s[1].length>=r[0].length||s[1].length>3){g.splice(y,2,g[y]+(!this.options.pedantic&&s[1].length/i.test(i[0])&&(e=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:i[0],inLink:e,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):D(i[0]):i[0]}},e.link=function(t){var e=this.rules.inline.link.exec(t);if(e){var n=e[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;var i=M(n.slice(0,-1),"\\");if((n.length-i.length)%2==0)return}else{var r=R(e[2],"()");if(r>-1){var s=(0===e[0].indexOf("!")?5:4)+e[1].length+r;e[2]=e[2].substring(0,r),e[0]=e[0].substring(0,s).trim(),e[3]=""}}var o=e[2],a="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);l&&(o=l[1],a=l[3])}else a=e[3]?e[3].slice(1,-1):"";return o=o.trim(),/^$/.test(n)?o.slice(1):o.slice(1,-1)),N(e,{href:o&&o.replace(this.rules.inline._escapes,"$1"),title:a&&a.replace(this.rules.inline._escapes,"$1")},e[0])}},e.reflink=function(t,e){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var i=(n[2]||n[1]).replace(/\s+/g," ");if(!(i=e[i.toLowerCase()])||!i.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return N(n,i,n[0])}},e.emStrong=function(t,e,n){void 0===n&&(n="");var i=this.rules.inline.emStrong.lDelim.exec(t);if(i&&(!i[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var r=i[1]||i[2]||"";if(!r||r&&(""===n||this.rules.inline.punctuation.exec(n))){var s,o,a=i[0].length-1,l=a,c=0,u="*"===i[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(u.lastIndex=0,e=e.slice(-1*t.length+a);null!=(i=u.exec(e));)if(s=i[1]||i[2]||i[3]||i[4]||i[5]||i[6]){if(o=s.length,i[3]||i[4]){l+=o;continue}if((i[5]||i[6])&&a%3&&!((a+o)%3)){c+=o;continue}if(!((l-=o)>0))return o=Math.min(o,o+l+c),Math.min(a,o)%2?{type:"em",raw:t.slice(0,a+i.index+o+1),text:t.slice(1,a+i.index+o)}:{type:"strong",raw:t.slice(0,a+i.index+o+1),text:t.slice(2,a+i.index+o-1)}}}}},e.codespan=function(t){var e=this.rules.inline.code.exec(t);if(e){var n=e[2].replace(/\n/g," "),i=/[^ ]/.test(n),r=/^ /.test(n)&&/ $/.test(n);return i&&r&&(n=n.substring(1,n.length-1)),n=D(n,!0),{type:"codespan",raw:e[0],text:n}}},e.br=function(t){var e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}},e.del=function(t){var e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2]}},e.autolink=function(t,e){var n,i,r=this.rules.inline.autolink.exec(t);if(r)return i="@"===r[2]?"mailto:"+(n=D(this.options.mangle?e(r[1]):r[1])):n=D(r[1]),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}},e.url=function(t,e){var n;if(n=this.rules.inline.url.exec(t)){var i,r;if("@"===n[2])r="mailto:"+(i=D(this.options.mangle?e(n[0]):n[0]));else{var s;do{s=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(s!==n[0]);i=D(n[0]),r="www."===n[1]?"http://"+i:i}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}},e.inlineText=function(t,e,n){var i,r=this.rules.inline.text.exec(t);if(r)return i=e?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):D(r[0]):r[0]:D(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:i}},t}(),j=O,F=E,B=T,V={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:j,table:j,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};V.def=F(V.def).replace("label",V._label).replace("title",V._title).getRegex(),V.bullet=/(?:[*+-]|\d{1,9}[.)])/,V.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,V.item=F(V.item,"gm").replace(/bull/g,V.bullet).getRegex(),V.listItemStart=F(/^( *)(bull) */).replace("bull",V.bullet).getRegex(),V.list=F(V.list).replace(/bull/g,V.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+V.def.source+")").getRegex(),V._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",V._comment=/|$)/,V.html=F(V.html,"i").replace("comment",V._comment).replace("tag",V._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),V.paragraph=F(V._paragraph).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.blockquote=F(V.blockquote).replace("paragraph",V.paragraph).getRegex(),V.normal=B({},V),V.gfm=B({},V.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),V.gfm.nptable=F(V.gfm.nptable).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.gfm.table=F(V.gfm.table).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.pedantic=B({},V.normal,{html:F("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",V._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:j,paragraph:F(V.normal._paragraph).replace("hr",V.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",V.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var z={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:j,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:j,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"};z.punctuation=F(z.punctuation).replace(/punctuation/g,z._punctuation).getRegex(),z.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,z.escapedEmSt=/\\\*|\\_/g,z._comment=F(V._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),z.emStrong.lDelim=F(z.emStrong.lDelim).replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimAst=F(z.emStrong.rDelimAst,"g").replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimUnd=F(z.emStrong.rDelimUnd,"g").replace(/punct/g,z._punctuation).getRegex(),z._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,z._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,z._email=/[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])?)+(?![-_])/,z.autolink=F(z.autolink).replace("scheme",z._scheme).replace("email",z._email).getRegex(),z._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,z.tag=F(z.tag).replace("comment",z._comment).replace("attribute",z._attribute).getRegex(),z._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,z._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,z._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,z.link=F(z.link).replace("label",z._label).replace("href",z._href).replace("title",z._title).getRegex(),z.reflink=F(z.reflink).replace("label",z._label).getRegex(),z.reflinkSearch=F(z.reflinkSearch,"g").replace("reflink",z.reflink).replace("nolink",z.nolink).getRegex(),z.normal=B({},z),z.pedantic=B({},z.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:F(/^!?\[(label)\]\((.*?)\)/).replace("label",z._label).getRegex(),reflink:F(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",z._label).getRegex()}),z.gfm=B({},z.normal,{escape:F(z.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(n="x"+n.toString(16)),i+="&#"+n+";";return i}var K=function(){function e(t){this.tokens=[],this.tokens.links=Object.create(null),this.options=t||$,this.options.tokenizer=this.options.tokenizer||new H,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var e={block:G.normal,inline:W.normal};this.options.pedantic?(e.block=G.pedantic,e.inline=W.pedantic):this.options.gfm&&(e.block=G.gfm,e.inline=this.options.breaks?W.breaks:W.gfm),this.tokenizer.rules=e}e.lex=function(t,n){return new e(n).lex(t)},e.lexInline=function(t,n){return new e(n).inlineTokens(t)};var n=e.prototype;return n.lex=function(t){return t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(t,this.tokens,!0),this.inline(this.tokens),this.tokens},n.blockTokens=function(t,e,n){var i,r,s,o,a,l,c=this;for(void 0===e&&(e=[]),void 0===n&&(n=!0),this.options.pedantic&&(t=t.replace(/^ +$/gm,""));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(n){return!!(i=n.call(c,t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)}))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),i.type&&e.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.nptable(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),i.tokens=this.blockTokens(i.text,[],n),e.push(i);continue}if(i=this.tokenizer.list(t)){for(t=t.substring(i.raw.length),s=i.items.length,r=0;r=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),n&&(i=this.tokenizer.paragraph(a))){o=e[e.length-1],l&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i),l=a.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"text"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(t){var u="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(u);break}throw new Error(u)}}return e},n.inline=function(t){var e,n,i,r,s,o,a=t.length;for(e=0;e0)for(;null!=(l=this.tokenizer.rules.inline.reflinkSearch.exec(h));)d.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(l=this.tokenizer.rules.inline.blockSkip.exec(h));)h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(l=this.tokenizer.rules.inline.escapedEmSt.exec(h));)h=h.slice(0,l.index)+"++"+h.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;t;)if(c||(u=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(n){return!!(s=n.call(r,t,e))&&(t=t.substring(s.raw.length),e.push(s),!0)}))){if(s=this.tokenizer.escape(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.tag(t,n,i)){t=t.substring(s.raw.length),n=s.inLink,i=s.inRawBlock,(o=e[e.length-1])&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.link(t)){t=t.substring(s.raw.length),"link"===s.type&&(s.tokens=this.inlineTokens(s.text,[],!0,i)),e.push(s);continue}if(s=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(s.raw.length),o=e[e.length-1],"link"===s.type?(s.tokens=this.inlineTokens(s.text,[],!0,i),e.push(s)):o&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.emStrong(t,h,u)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.codespan(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.br(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.del(t)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.autolink(t,Y)){t=t.substring(s.raw.length),e.push(s);continue}if(!n&&(s=this.tokenizer.url(t,Y))){t=t.substring(s.raw.length),e.push(s);continue}if(a=t,this.options.extensions&&this.options.extensions.startInline&&function(){var e=1/0,n=t.slice(1),i=void 0;r.options.extensions.startInline.forEach(function(t){"number"==typeof(i=t.call(this,n))&&i>=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),s=this.tokenizer.inlineText(a,i,X)){t=t.substring(s.raw.length),"_"!==s.raw.slice(-1)&&(u=s.raw.slice(-1)),c=!0,(o=e[e.length-1])&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(t){var p="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(p);break}throw new Error(p)}}return e},function(e,n,i){n&&t(e.prototype,n),i&&t(e,i)}(e,null,[{key:"rules",get:function(){return{block:G,inline:W}}}]),e}(),Q=i.exports.defaults,Z=C,J=x,tt=function(){function t(t){this.options=t||Q}var e=t.prototype;return e.code=function(t,e,n){var i=(e||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(t,i);null!=r&&r!==t&&(n=!0,t=r)}return t=t.replace(/\n$/,"")+"\n",i?'
    '+(n?t:J(t,!0))+"
    \n":"
    "+(n?t:J(t,!0))+"
    \n"},e.blockquote=function(t){return"
    \n"+t+"
    \n"},e.html=function(t){return t},e.heading=function(t,e,n,i){return this.options.headerIds?"'+t+"\n":""+t+"\n"},e.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},e.list=function(t,e,n){var i=e?"ol":"ul";return"<"+i+(e&&1!==n?' start="'+n+'"':"")+">\n"+t+"\n"},e.listitem=function(t){return"
  • "+t+"
  • \n"},e.checkbox=function(t){return" "},e.paragraph=function(t){return"

    "+t+"

    \n"},e.table=function(t,e){return e&&(e=""+e+""),"\n\n"+t+"\n"+e+"
    \n"},e.tablerow=function(t){return"\n"+t+"\n"},e.tablecell=function(t,e){var n=e.header?"th":"td";return(e.align?"<"+n+' align="'+e.align+'">':"<"+n+">")+t+"\n"},e.strong=function(t){return""+t+""},e.em=function(t){return""+t+""},e.codespan=function(t){return""+t+""},e.br=function(){return this.options.xhtml?"
    ":"
    "},e.del=function(t){return""+t+""},e.link=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i='"+n+""},e.image=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i=''+n+'":">")},e.text=function(t){return t},t}(),et=function(){function t(){}var e=t.prototype;return e.strong=function(t){return t},e.em=function(t){return t},e.codespan=function(t){return t},e.del=function(t){return t},e.html=function(t){return t},e.text=function(t){return t},e.link=function(t,e,n){return""+n},e.image=function(t,e,n){return""+n},e.br=function(){return""},t}(),nt=function(){function t(){this.seen={}}var e=t.prototype;return e.serialize=function(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},e.getNextSafeSlug=function(t,e){var n=t,i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[t];do{n=t+"-"+ ++i}while(this.seen.hasOwnProperty(n))}return e||(this.seen[t]=i,this.seen[n]=0),n},e.slug=function(t,e){void 0===e&&(e={});var n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)},t}(),it=tt,rt=et,st=nt,ot=i.exports.defaults,at=S,lt=K,ct=function(){function t(t){this.options=t||ot,this.options.renderer=this.options.renderer||new it,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new rt,this.slugger=new st}t.parse=function(e,n){return new t(n).parse(e)},t.parseInline=function(e,n){return new t(n).parseInline(e)};var e=t.prototype;return e.parse=function(t,e){void 0===e&&(e=!0);var n,i,r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w="",x=t.length;for(n=0;n0&&"text"===m.tokens[0].type?(m.tokens[0].text=v+" "+m.tokens[0].text,m.tokens[0].tokens&&m.tokens[0].tokens.length>0&&"text"===m.tokens[0].tokens[0].type&&(m.tokens[0].tokens[0].text=v+" "+m.tokens[0].tokens[0].text)):m.tokens.unshift({type:"text",text:v}):g+=v),g+=this.parse(m.tokens,f),u+=this.renderer.listitem(g,y,b);w+=this.renderer.list(u,d,p);continue;case"html":w+=this.renderer.html(h.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(h.tokens));continue;case"text":for(u=h.tokens?this.parseInline(h.tokens):h.text;n+1An error occurred:

    "+mt(l.message+"",!0)+"
    ";throw l}}return _t.options=_t.setOptions=function(t){return ft(_t.defaults,t),yt(_t.defaults),_t},_t.getDefaults=bt,_t.defaults=vt,_t.use=function(){for(var t=this,e=arguments.length,n=new Array(e),i=0;iAn error occurred:

    "+mt(i.message+"",!0)+"
    ";throw i}},_t.Parser=ct,_t.parser=ct.parse,_t.Renderer=ht,_t.TextRenderer=dt,_t.Lexer=lt,_t.lexer=lt.lex,_t.Tokenizer=ut,_t.Slugger=pt,_t.parse=_t,_t}()},29369:function(t,e,n){var i=n(56284),r=n(67830);function s(){this.clear()}s.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},s.prototype.enqueue=function(t){return this.items.push(t),++this.size},s.prototype.dequeue=function(){if(this.size){var t=this.items[this.offset];return 2*++this.offset>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,t}},s.prototype.peek=function(){if(this.size)return this.items[this.offset]},s.prototype.forEach=function(t,e){e=arguments.length>1?e:this;for(var n=this.offset,i=0,r=this.items.length;n=t.length)return{done:!0};var n=t[e];return e++,{value:n,done:!1}})},s.prototype.entries=function(){var t=this.items,e=this.offset,n=0;return new i(function(){if(e>=t.length)return{done:!0};var i=t[e];return e++,{value:[n++,i],done:!1}})},"undefined"!=typeof Symbol&&(s.prototype[Symbol.iterator]=s.prototype.values),s.prototype.toString=function(){return this.toArray().join(",")},s.prototype.toJSON=function(){return this.toArray()},s.prototype.inspect=function(){var t=this.toArray();return Object.defineProperty(t,"constructor",{value:s,enumerable:!1}),t},"undefined"!=typeof Symbol&&(s.prototype[Symbol.for("nodejs.util.inspect.custom")]=s.prototype.inspect),s.from=function(t){var e=new s;return r(t,function(t){e.enqueue(t)}),e},s.of=function(){return s.from(arguments)},t.exports=s},65593:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=function(t){function e(){t.apply(this,arguments),this.value=null,this.hasNext=!1,this.hasCompleted=!1}return i(e,t),e.prototype._subscribe=function(e){return this.hasError?(e.error(this.thrownError),s.Subscription.EMPTY):this.hasCompleted&&this.hasNext?(e.next(this.value),e.complete(),s.Subscription.EMPTY):t.prototype._subscribe.call(this,e)},e.prototype.next=function(t){this.hasCompleted||(this.value=t,this.hasNext=!0)},e.prototype.error=function(e){this.hasCompleted||t.prototype.error.call(this,e)},e.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&t.prototype.next.call(this,this.value),t.prototype.complete.call(this)},e}(r.Subject);e.AsyncSubject=o},73907:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(6594),o=function(t){function e(e){t.call(this),this._value=e}return i(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var n=t.prototype._subscribe.call(this,e);return n&&!n.closed&&e.next(this._value),n},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new s.ObjectUnsubscribedError;return this._value},e.prototype.next=function(e){t.prototype.next.call(this,this._value=e)},e}(r.Subject);e.BehaviorSubject=o},36888:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n,i){t.call(this),this.parent=e,this.outerValue=n,this.outerIndex=i,this.index=0}return i(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(n(42109).Subscriber);e.InnerSubscriber=r},94429:function(t,e,n){"use strict";var i=n(18705),r=function(){function t(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}},t.prototype.accept=function(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)},t.prototype.toObservable=function(){switch(this.kind){case"N":return i.Observable.of(this.value);case"E":return i.Observable.throw(this.error);case"C":return i.Observable.empty()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}();e.Notification=r},18705:function(t,e,n){"use strict";var i=n(80019),r=n(18154),s=n(45783),o=n(10142),a=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var i=this.operator,s=r.toSubscriber(t,e,n);if(i?i.call(s,this.source):s.add(this.source||!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){t.syncErrorThrown=!0,t.syncErrorValue=e,t.error(e)}},t.prototype.forEach=function(t,e){var n=this;if(e||(i.root.Rx&&i.root.Rx.config&&i.root.Rx.config.Promise?e=i.root.Rx.config.Promise:i.root.Promise&&(e=i.root.Promise)),!e)throw new Error("no Promise impl found");return new e(function(e,i){var r;r=n.subscribe(function(e){if(r)try{t(e)}catch(n){i(n),r.unsubscribe()}else t(e)},i,e)})},t.prototype._subscribe=function(t){return this.source.subscribe(t)},t.prototype[s.observable]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;ee&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i},e}(r.Subject);e.ReplaySubject=u;var h=function(t,e){this.time=t,this.value=e}},25430:function(t,e,n){"use strict";var i=n(2369);e.xQ=i.Subject,n(18705),n(24769),n(95914),n(88007),n(3194),n(61898),n(16301),n(23276),n(66593),n(13745),n(57362),n(24518),n(68789),n(30520),n(67370),n(86866),n(11505),n(5031),n(36780),n(17038),n(15718),n(27915),n(90763),n(6846),n(65662),n(6799),n(81854),n(612),n(10838),n(6725),n(8827),n(43511),n(38922),n(25178),n(56937),n(22947),n(82894),n(11206),n(94183),n(16653),n(17930),n(81118),n(50317),n(90674),n(66460),n(79232),n(3945),n(44674),n(73505),n(38749),n(16479),n(22744),n(44475),n(97384),n(8237),n(24937),n(99013),n(84042),n(44436),n(7099),n(6217),n(57476),n(72646),n(91573),n(27387),n(27366),n(88859),n(65425),n(16733),n(23381),n(80404),n(63770),n(53626),n(98851),n(84878),n(26544),n(53582),n(61749),n(34838),n(49681),n(46227),n(56455),n(40881),n(94315),n(92910),n(52442),n(84664),n(61250),n(28310),n(43027),n(18252),n(49571),n(31782),n(9800),n(41854),n(74839),n(1305),n(99144),n(89952),n(85863),n(2865),n(92667),n(22185),n(72919),n(88630),n(75458),n(40780),n(35099),n(57502),n(81676),n(20579),n(71323),n(84950),n(57113),n(95073),n(75654),n(59889),n(96611),n(81845),n(7828),n(4881),n(74568),n(32352),n(50169),n(93543),n(61690),n(15914),n(68583),n(44808),n(49088),n(72293),n(42109),n(65593),n(81959),n(73907),n(51493),n(94429),n(44640),n(11758),n(6594),n(13815),n(84536),n(73390),n(62688),n(24482),n(18353);n(55298);n(10142);n(85522),n(90680),n(97088),n(12948),n(28592),n(72121),n(45783);n(39053)},11965:function(t,e){"use strict";var n=function(){function t(e,n){void 0===n&&(n=t.now),this.SchedulerAction=e,this.now=n}return t.prototype.schedule=function(t,e,n){return void 0===e&&(e=0),new this.SchedulerAction(this,t).schedule(n,e)},t.now=Date.now?Date.now:function(){return+new Date},t}();e.Scheduler=n},2369:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(42109),o=n(72293),a=n(6594),l=n(9060),c=n(28592),u=function(t){function e(e){t.call(this,e),this.destination=e}return i(e,t),e}(s.Subscriber);e.SubjectSubscriber=u;var h=function(t){function e(){t.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return i(e,t),e.prototype[c.rxSubscriber]=function(){return new u(this)},e.prototype.lift=function(t){var e=new d(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;if(!this.isStopped)for(var e=this.observers,n=e.length,i=e.slice(),r=0;r=t.length)return void i.complete();i.next(e[n]),t.index=n+1,this.schedule(t)}},e.prototype._subscribe=function(t){var n=this.arrayLike,i=this.scheduler,r=n.length;if(i)return i.schedule(e.dispatch,0,{arrayLike:n,index:0,length:r,subscriber:t});for(var s=0;s1?new e(t,i):1===r?new s.ScalarObservable(t[0],i):new o.EmptyObservable(i)},e.dispatch=function(t){var e=t.array,n=t.index,i=t.subscriber;n>=t.count?i.complete():(i.next(e[n]),!i.closed&&(t.index=n+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.array,i=n.length,r=this.scheduler;if(r)return r.schedule(e.dispatch,0,{array:n,index:0,count:i,subscriber:t});for(var s=0;s1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}(o.Subscriber)},34078:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e){t.call(this),this.observableFactory=e}return i(e,t),e.create=function(t){return new e(t)},e.prototype._subscribe=function(t){return new l(t,this.observableFactory)},e}(r.Observable);e.DeferObservable=a;var l=function(t){function e(e,n){t.call(this,e),this.factory=n,this.tryDefer()}return i(e,t),e.prototype.tryDefer=function(){try{this._callFactory()}catch(t){this._error(t)}},e.prototype._callFactory=function(){var t=this.factory();t&&this.add(s.subscribeToResult(this,t))},e}(o.OuterSubscriber)},70481:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e){t.call(this),this.scheduler=e}return i(e,t),e.create=function(t){return new e(t)},e.dispatch=function(t){t.subscriber.complete()},e.prototype._subscribe=function(t){var n=this.scheduler;if(n)return n.schedule(e.dispatch,0,{subscriber:t});t.complete()},e}(n(18705).Observable);e.EmptyObservable=r},72210:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.error=e,this.scheduler=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){t.subscriber.error(t.error)},e.prototype._subscribe=function(t){var n=this.error,i=this.scheduler;if(t.syncErrorThrowable=!0,i)return i.schedule(e.dispatch,0,{error:n,subscriber:t});t.error(n)},e}(n(18705).Observable);e.ErrorObservable=r},56064:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(70481),o=n(48242),a=n(93658),l=n(84308),c=function(t){function e(e,n){t.call(this),this.sources=e,this.resultSelector=n}return i(e,t),e.create=function(){for(var t=[],n=0;nu?u:e:e}(t)),this.arr=t,this.idx=e,this.len=n}return t.prototype[o.iterator]=function(){return this},t.prototype.next=function(){return this.idx=t.count?i.complete():(i.next(e),!i.closed&&(t.index=n+1,t.start=e+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=0,i=this.start,r=this._count,s=this.scheduler;if(s)return s.schedule(e.dispatch,0,{index:n,count:r,start:i,subscriber:t});for(;;){if(n++>=r){t.complete();break}if(t.next(i++),t.closed)break}},e}(n(18705).Observable);e.RangeObservable=r},80478:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.value=e,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){var e=t.value,n=t.subscriber;t.done?n.complete():(n.next(e),!n.closed&&(t.done=!0,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.value,i=this.scheduler;if(i)return i.schedule(e.dispatch,0,{done:!1,value:n,subscriber:t});t.next(n),t.closed||t.complete()},e}(n(18705).Observable);e.ScalarObservable=r},82966:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(85522),o=n(39479),a=function(t){function e(e,n,i){void 0===n&&(n=0),void 0===i&&(i=s.asap),t.call(this),this.source=e,this.delayTime=n,this.scheduler=i,(!o.isNumeric(n)||n<0)&&(this.delayTime=0),(!i||"function"!=typeof i.schedule)&&(this.scheduler=s.asap)}return i(e,t),e.create=function(t,n,i){return void 0===n&&(n=0),void 0===i&&(i=s.asap),new e(t,n,i)},e.dispatch=function(t){return this.add(t.source.subscribe(t.subscriber))},e.prototype._subscribe=function(t){return this.scheduler.schedule(e.dispatch,this.delayTime,{source:this.source,subscriber:t})},e}(r.Observable);e.SubscribeOnObservable=a},92870:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(39479),s=n(18705),o=n(90680),a=n(41503),l=n(783),c=function(t){function e(e,n,i){void 0===e&&(e=0),t.call(this),this.period=-1,this.dueTime=0,r.isNumeric(n)?this.period=Number(n)<1?1:Number(n):a.isScheduler(n)&&(i=n),a.isScheduler(i)||(i=o.async),this.scheduler=i,this.dueTime=l.isDate(e)?+e-this.scheduler.now():e}return i(e,t),e.create=function(t,n,i){return void 0===t&&(t=0),new e(t,n,i)},e.dispatch=function(t){var e=t.index,n=t.period,i=t.subscriber;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}},e.prototype._subscribe=function(t){var n=this;return n.scheduler.schedule(e.dispatch,n.dueTime,{index:0,period:n.period,subscriber:t})},e}(s.Observable);e.TimerObservable=c},16196:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e,n){t.call(this),this.resourceFactory=e,this.observableFactory=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.prototype._subscribe=function(t){var e,n=this.resourceFactory,i=this.observableFactory;try{return e=n(),new l(t,e,i)}catch(r){t.error(r)}},e}(r.Observable);e.UsingObservable=a;var l=function(t){function e(e,n,i){t.call(this,e),this.resource=n,this.observableFactory=i,e.add(n),this.tryUse()}return i(e,t),e.prototype.tryUse=function(){try{var t=this.observableFactory.call(this,this.resource);t&&this.add(s.subscribeToResult(this,t))}catch(e){this._error(e)}},e}(o.OuterSubscriber)},59246:function(t,e,n){"use strict";var i=n(19183);e.bindCallback=i.BoundCallbackObservable.create},65571:function(t,e,n){"use strict";var i=n(78655);e.bindNodeCallback=i.BoundNodeCallbackObservable.create},24669:function(t,e,n){"use strict";var i=n(41503),r=n(48242),s=n(96177),o=n(49134);e.combineLatest=function(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof l&&(n=t.pop()),null===a&&1===t.length&&t[0]instanceof i.Observable?t[0]:o.mergeAll(n)(new r.ArrayObservable(t,a))}},94503:function(t,e,n){"use strict";var i=n(20143);e.never=i.NeverObservable.create},69657:function(t,e,n){"use strict";var i=n(96177);e.of=i.ArrayObservable.of},61395:function(t,e,n){"use strict";var i=n(46243);e.onErrorResumeNext=i.onErrorResumeNextStatic},95425:function(t,e,n){"use strict";var i=n(19770);e.pairs=i.PairsObservable.create},24330:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(48242),s=n(96177),o=n(84308),a=n(93658);e.race=function(){for(var t=[],e=0;e=2&&(o=arguments[1]);var a=Number.POSITIVE_INFINITY;return e>=3&&(a=arguments[2]),s.bufferTime(t,o,a,n)(this)}},92523:function(t,e,n){"use strict";var i=n(15440);e.bufferToggle=function(t,e){return i.bufferToggle(t,e)(this)}},49436:function(t,e,n){"use strict";var i=n(51786);e.bufferWhen=function(t){return i.bufferWhen(t)(this)}},64731:function(t,e,n){"use strict";var i=n(93017);e._catch=function(t){return i.catchError(t)(this)}},92273:function(t,e,n){"use strict";var i=n(17054);e.combineAll=function(t){return i.combineAll(t)(this)}},8709:function(t,e,n){"use strict";var i=n(49134);e.combineLatest=function(){for(var t=[],e=0;e=2?i.reduce(t,e)(this):i.reduce(t)(this)}},12931:function(t,e,n){"use strict";var i=n(15329);e.repeat=function(t){return void 0===t&&(t=-1),i.repeat(t)(this)}},68816:function(t,e,n){"use strict";var i=n(63964);e.repeatWhen=function(t){return i.repeatWhen(t)(this)}},17144:function(t,e,n){"use strict";var i=n(40241);e.retry=function(t){return void 0===t&&(t=-1),i.retry(t)(this)}},82766:function(t,e,n){"use strict";var i=n(23896);e.retryWhen=function(t){return i.retryWhen(t)(this)}},62068:function(t,e,n){"use strict";var i=n(92043);e.sample=function(t){return i.sample(t)(this)}},97013:function(t,e,n){"use strict";var i=n(90680),r=n(71239);e.sampleTime=function(t,e){return void 0===e&&(e=i.async),r.sampleTime(t,e)(this)}},98996:function(t,e,n){"use strict";var i=n(64949);e.scan=function(t,e){return arguments.length>=2?i.scan(t,e)(this):i.scan(t)(this)}},77033:function(t,e,n){"use strict";var i=n(88948);e.sequenceEqual=function(t,e){return i.sequenceEqual(t,e)(this)}},10377:function(t,e,n){"use strict";var i=n(35473);e.share=function(){return i.share()(this)}},71623:function(t,e,n){"use strict";var i=n(62704);e.shareReplay=function(t,e,n){return i.shareReplay(t,e,n)(this)}},91956:function(t,e,n){"use strict";var i=n(92223);e.single=function(t){return i.single(t)(this)}},72355:function(t,e,n){"use strict";var i=n(11189);e.skip=function(t){return i.skip(t)(this)}},69329:function(t,e,n){"use strict";var i=n(73346);e.skipLast=function(t){return i.skipLast(t)(this)}},68481:function(t,e,n){"use strict";var i=n(12928);e.skipUntil=function(t){return i.skipUntil(t)(this)}},587:function(t,e,n){"use strict";var i=n(69415);e.skipWhile=function(t){return i.skipWhile(t)(this)}},49292:function(t,e,n){"use strict";var i=n(30673);e.startWith=function(){for(var t=[],e=0;e0&&this.destination.next(e),t.prototype._complete.call(this)},e}(r.Subscriber),a=function(t){function e(e,n,i){t.call(this,e),this.bufferSize=n,this.startBufferEvery=i,this.buffers=[],this.count=0}return i(e,t),e.prototype._next=function(t){var e=this,n=e.bufferSize,i=e.startBufferEvery,r=e.buffers,s=e.count;this.count++,s%i==0&&r.push([]);for(var o=r.length;o--;){var a=r[o];a.push(t),a.length===n&&(r.splice(o,1),this.destination.next(a))}},e.prototype._complete=function(){for(var e=this.buffers,n=this.destination;e.length>0;){var i=e.shift();i.length>0&&n.next(i)}t.prototype._complete.call(this)},e}(r.Subscriber)},6489:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(90680),s=n(42109),o=n(41503);e.bufferTime=function(t){var e=arguments.length,n=r.async;o.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],e--);var i=null;e>=2&&(i=arguments[1]);var s=Number.POSITIVE_INFINITY;return e>=3&&(s=arguments[2]),function(e){return e.lift(new a(t,i,s,n))}};var a=function(){function t(t,e,n,i){this.bufferTimeSpan=t,this.bufferCreationInterval=e,this.maxBufferSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},t}(),l=function(){this.buffer=[]},c=function(t){function e(e,n,i,r,s){t.call(this,e),this.bufferTimeSpan=n,this.bufferCreationInterval=i,this.maxBufferSize=r,this.scheduler=s,this.contexts=[];var o=this.openContext();if(this.timespanOnly=null==i||i<0,this.timespanOnly)this.add(o.closeAction=s.schedule(u,n,{subscriber:this,context:o,bufferTimeSpan:n}));else{var a={bufferTimeSpan:n,bufferCreationInterval:i,subscriber:this,scheduler:s};this.add(o.closeAction=s.schedule(d,n,{subscriber:this,context:o})),this.add(s.schedule(h,i,a))}}return i(e,t),e.prototype._next=function(t){for(var e,n=this.contexts,i=n.length,r=0;r0;){var i=e.shift();n.next(i.buffer)}t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.contexts=null},e.prototype.onBufferFull=function(t){this.closeContext(t);var e=t.closeAction;if(e.unsubscribe(),this.remove(e),!this.closed&&this.timespanOnly){t=this.openContext();var n=this.bufferTimeSpan;this.add(t.closeAction=this.scheduler.schedule(u,n,{subscriber:this,context:t,bufferTimeSpan:n}))}},e.prototype.openContext=function(){var t=new l;return this.contexts.push(t),t},e.prototype.closeContext=function(t){this.destination.next(t.buffer);var e=this.contexts;(e?e.indexOf(t):-1)>=0&&e.splice(e.indexOf(t),1)},e}(s.Subscriber);function u(t){var e=t.subscriber,n=t.context;n&&e.closeContext(n),e.closed||(t.context=e.openContext(),t.context.closeAction=this.schedule(t,t.bufferTimeSpan))}function h(t){var e=t.bufferCreationInterval,n=t.bufferTimeSpan,i=t.subscriber,r=t.scheduler,s=i.openContext();i.closed||(i.add(s.closeAction=r.schedule(d,n,{subscriber:i,context:s})),this.schedule(t,e))}function d(t){t.subscriber.closeContext(t.context)}},15440:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(93658),o=n(84308);e.bufferToggle=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.openings,this.closingSelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(s.subscribeToResult(this,n))}return i(e,t),e.prototype._next=function(t){for(var e=this.contexts,n=e.length,i=0;i0;){var i=n.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,t.prototype._error.call(this,e)},e.prototype._complete=function(){for(var e=this.contexts;e.length>0;){var n=e.shift();this.destination.next(n.buffer),n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){t?this.closeBuffer(t):this.openBuffer(e)},e.prototype.notifyComplete=function(t){this.closeBuffer(t.context)},e.prototype.openBuffer=function(t){try{var e=this.closingSelector.call(this,t);e&&this.trySubscribe(e)}catch(n){this._error(n)}},e.prototype.closeBuffer=function(t){var e=this.contexts;if(e&&t){var n=t.subscription;this.destination.next(t.buffer),e.splice(e.indexOf(t),1),this.remove(n),n.unsubscribe()}},e.prototype.trySubscribe=function(t){var e=this.contexts,n=new r.Subscription,i={buffer:[],subscription:n};e.push(i);var o=s.subscribeToResult(this,t,i);!o||o.closed?this.closeBuffer(i):(o.context=i,this.add(o),n.add(o))},e}(o.OuterSubscriber)},51786:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.bufferWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.closingSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.closingSelector))},t}(),u=function(t){function e(e,n){t.call(this,e),this.closingSelector=n,this.subscribing=!1,this.openBuffer()}return i(e,t),e.prototype._next=function(t){this.buffer.push(t)},e.prototype._complete=function(){var e=this.buffer;e&&this.destination.next(e),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.buffer=null,this.subscribing=!1},e.prototype.notifyNext=function(t,e,n,i,r){this.openBuffer()},e.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},e.prototype.openBuffer=function(){var t=this.closingSubscription;t&&(this.remove(t),t.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];var e=s.tryCatch(this.closingSelector)();e===o.errorObject?this.error(o.errorObject.e):(t=new r.Subscription,this.closingSubscription=t,this.add(t),this.subscribing=!0,t.add(l.subscribeToResult(this,e)),this.subscribing=!1)},e}(a.OuterSubscriber)},93017:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.catchError=function(t){return function(e){var n=new o(t),i=e.lift(n);return n.caught=i}};var o=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.selector,this.caught))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.selector=n,this.caught=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(i){return void t.prototype.error.call(this,i)}this._unsubscribeAndRecycle(),this.add(s.subscribeToResult(this,n))}},e}(r.OuterSubscriber)},17054:function(t,e,n){"use strict";var i=n(49134);e.combineAll=function(t){return function(e){return e.lift(new i.CombineLatestOperator(t))}}},49134:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(84308),a=n(93658),l={};e.combineLatest=function(){for(var t=[],e=0;e0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var s=Math.max(0,n[0].time-i.now());this.schedule(t,s)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new u(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(a.Notification.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t)},e.prototype._complete=function(){this.scheduleNotification(a.Notification.createComplete())},e}(o.Subscriber),u=function(t,e){this.time=t,this.notification=e}},22944:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(18705),o=n(84308),a=n(93658);e.delayWhen=function(t,e){return e?function(n){return new u(n,e).lift(new l(t))}:function(e){return e.lift(new l(t))}};var l=function(){function t(t){this.delayDurationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.delayDurationSelector))},t}(),c=function(t){function e(e,n){t.call(this,e),this.delayDurationSelector=n,this.completed=!1,this.delayNotifierSubscriptions=[],this.values=[]}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(t),this.removeSubscription(r),this.tryComplete()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype.notifyComplete=function(t){var e=this.removeSubscription(t);e&&this.destination.next(e),this.tryComplete()},e.prototype._next=function(t){try{var e=this.delayDurationSelector(t);e&&this.tryDelay(e,t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){this.completed=!0,this.tryComplete()},e.prototype.removeSubscription=function(t){t.unsubscribe();var e=this.delayNotifierSubscriptions.indexOf(t),n=null;return-1!==e&&(n=this.values[e],this.delayNotifierSubscriptions.splice(e,1),this.values.splice(e,1)),n},e.prototype.tryDelay=function(t,e){var n=a.subscribeToResult(this,t,e);n&&!n.closed&&(this.add(n),this.delayNotifierSubscriptions.push(n)),this.values.push(e)},e.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},e}(o.OuterSubscriber),u=function(t){function e(e,n){t.call(this),this.source=e,this.subscriptionDelay=n}return i(e,t),e.prototype._subscribe=function(t){this.subscriptionDelay.subscribe(new h(t,this.source))},e}(s.Observable),h=function(t){function e(e,n){t.call(this),this.parent=e,this.source=n,this.sourceSubscribed=!1}return i(e,t),e.prototype._next=function(t){this.subscribeToSource()},e.prototype._error=function(t){this.unsubscribe(),this.parent.error(t)},e.prototype._complete=function(){this.subscribeToSource()},e.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},e}(r.Subscriber)},95591:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.dematerialize=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){t.observe(this.destination)},e}(r.Subscriber)},25753:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658),o=n(40317);e.distinct=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.keySelector=t,this.flushes=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.keySelector,this.flushes))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=n,this.values=new o.Set,i&&this.add(s.subscribeToResult(this,i))}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.values.clear()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype._next=function(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)},e.prototype._useKeySelector=function(t){var e,n=this.destination;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)},e.prototype._finalizeNext=function(t,e){var n=this.values;n.has(t)||(n.add(t),this.destination.next(e))},e}(r.OuterSubscriber);e.DistinctSubscriber=l},65608:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.distinctUntilChanged=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compare=t,this.keySelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compare,this.keySelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=i,this.hasKey=!1,"function"==typeof n&&(this.compare=n)}return i(e,t),e.prototype.compare=function(t,e){return t===e},e.prototype._next=function(t){var e=t;if(this.keySelector&&(e=s.tryCatch(this.keySelector)(t))===o.errorObject)return this.destination.error(o.errorObject.e);var n=!1;if(this.hasKey){if((n=s.tryCatch(this.compare)(this.key,e))===o.errorObject)return this.destination.error(o.errorObject.e)}else this.hasKey=!0;!1===Boolean(n)&&(this.key=e,this.destination.next(t))},e}(r.Subscriber)},8330:function(t,e,n){"use strict";var i=n(65608);e.distinctUntilKeyChanged=function(t,e){return i.distinctUntilChanged(function(n,i){return e?e(n[t],i[t]):n[t]===i[t]})}},29264:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.elementAt=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){if(this.index=t,this.defaultValue=e,t<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.index,this.defaultValue))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.index=n,this.defaultValue=i}return i(e,t),e.prototype._next=function(t){0==this.index--&&(this.destination.next(t),this.destination.complete())},e.prototype._complete=function(){var t=this.destination;this.index>=0&&(void 0!==this.defaultValue?t.next(this.defaultValue):t.error(new s.ArgumentOutOfRangeError)),t.complete()},e}(r.Subscriber)},26285:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.every=function(t,e){return function(n){return n.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg,this.source))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.predicate=n,this.thisArg=i,this.source=r,this.index=0,this.thisArg=i||this}return i(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},93229:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaust=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e),this.hasCompleted=!1,this.hasSubscription=!1}return i(e,t),e.prototype._next=function(t){this.hasSubscription||(this.hasSubscription=!0,this.add(s.subscribeToResult(this,t)))},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},15758:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaustMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}return i(e,t),e.prototype._next=function(t){this.hasSubscription||this.tryNext(t)},e.prototype.tryNext=function(t){var e=this.index++,n=this.destination;try{var i=this.project(t,e);this.hasSubscription=!0,this.add(s.subscribeToResult(this,i,t,e))}catch(r){n.error(r)}},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.trySelectResult(t,e,n,i):s.next(e)},e.prototype.trySelectResult=function(t,e,n,i){var r=this.resultSelector,s=this.destination;try{var o=r(t,e,n,i);s.next(o)}catch(a){s.error(a)}},e.prototype.notifyError=function(t){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},55364:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(84308),a=n(93658);e.expand=function(t,e,n){return void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=void 0),e=(e||0)<1?Number.POSITIVE_INFINITY:e,function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.project=t,this.concurrent=e,this.scheduler=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.project,this.concurrent,this.scheduler))},t}();e.ExpandOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.project=n,this.concurrent=i,this.scheduler=r,this.index=0,this.active=0,this.hasCompleted=!1,i0&&this._next(e.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},e}(o.OuterSubscriber);e.ExpandSubscriber=c},27015:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.filter=function(t,e){return function(n){return n.lift(new s(t,e))}};var s=function(){function t(t,e){this.predicate=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.thisArg=i,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)},e}(r.Subscriber)},94367:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293);e.finalize=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.callback))},t}(),a=function(t){function e(e,n){t.call(this,e),this.add(new s.Subscription(n))}return i(e,t),e}(r.Subscriber)},16700:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.find=function(t,e){if("function"!=typeof t)throw new TypeError("predicate is not a function");return function(n){return n.lift(new s(t,n,!1,e))}};var s=function(){function t(t,e,n,i){this.predicate=t,this.source=e,this.yieldIndex=n,this.thisArg=i}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.source,this.yieldIndex,this.thisArg))},t}();e.FindValueOperator=s;var o=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.source=i,this.yieldIndex=r,this.thisArg=s,this.index=0}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){var e=this.predicate,n=this.thisArg,i=this.index++;try{e.call(n||this,t,i,this.source)&&this.notifyComplete(this.yieldIndex?i:t)}catch(r){this.destination.error(r)}},e.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},e}(r.Subscriber);e.FindValueSubscriber=o},86452:function(t,e,n){"use strict";var i=n(16700);e.findIndex=function(t,e){return function(n){return n.lift(new i.FindValueOperator(t,n,!0,e))}}},12309:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.first=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.index=0,this.hasCompleted=!1,this._emitted=!1}return i(e,t),e.prototype._next=function(t){var e=this.index++;this.predicate?this._tryPredicate(t,e):this._emit(t,e)},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}n&&this._emit(t,e)},e.prototype._emit=function(t,e){this.resultSelector?this._tryResultSelector(t,e):this._emitFinal(t)},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this._emitFinal(n)},e.prototype._emitFinal=function(t){var e=this.destination;this._emitted||(this._emitted=!0,e.next(t),e.complete(),this.hasCompleted=!0)},e.prototype._complete=function(){var t=this.destination;this.hasCompleted||void 0===this.defaultValue?this.hasCompleted||t.error(new s.EmptyError):(t.next(this.defaultValue),t.complete())},e}(r.Subscriber)},92577:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293),o=n(18705),a=n(2369),l=n(49754),c=n(30764);e.groupBy=function(t,e,n,i){return function(r){return r.lift(new u(t,e,n,i))}};var u=function(){function t(t,e,n,i){this.keySelector=t,this.elementSelector=e,this.durationSelector=n,this.subjectSelector=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},t}(),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.keySelector=n,this.elementSelector=i,this.durationSelector=r,this.subjectSelector=s,this.groups=null,this.attemptedToUnsubscribe=!1,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.keySelector(t)}catch(n){return void this.error(n)}this._group(t,e)},e.prototype._group=function(t,e){var n=this.groups;n||(n=this.groups="string"==typeof e?new c.FastMap:new l.Map);var i,r=n.get(e);if(this.elementSelector)try{i=this.elementSelector(t)}catch(u){this.error(u)}else i=t;if(!r){r=this.subjectSelector?this.subjectSelector():new a.Subject,n.set(e,r);var s=new p(e,r,this);if(this.destination.next(s),this.durationSelector){var o=void 0;try{o=this.durationSelector(new p(e,r))}catch(u){return void this.error(u)}this.add(o.subscribe(new d(e,r,this)))}}r.closed||r.next(i)},e.prototype._error=function(t){var e=this.groups;e&&(e.forEach(function(e,n){e.error(t)}),e.clear()),this.destination.error(t)},e.prototype._complete=function(){var t=this.groups;t&&(t.forEach(function(t,e){t.complete()}),t.clear()),this.destination.complete()},e.prototype.removeGroup=function(t){this.groups.delete(t)},e.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&t.prototype.unsubscribe.call(this))},e}(r.Subscriber),d=function(t){function e(e,n,i){t.call(this,n),this.key=e,this.group=n,this.parent=i}return i(e,t),e.prototype._next=function(t){this.complete()},e.prototype._unsubscribe=function(){var t=this.parent,e=this.key;this.key=this.parent=null,t&&t.removeGroup(e)},e}(r.Subscriber),p=function(t){function e(e,n,i){t.call(this),this.key=e,this.groupSubject=n,this.refCountSubscription=i}return i(e,t),e.prototype._subscribe=function(t){var e=new s.Subscription,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&e.add(new f(n)),e.add(i.subscribe(t)),e},e}(o.Observable);e.GroupedObservable=p;var f=function(t){function e(e){t.call(this),this.parent=e,e.count++}return i(e,t),e.prototype.unsubscribe=function(){var e=this.parent;!e.closed&&!this.closed&&(t.prototype.unsubscribe.call(this),e.count-=1,0===e.count&&e.attemptedToUnsubscribe&&e.unsubscribe())},e}(s.Subscription)},86898:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(68668);e.ignoreElements=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype._next=function(t){s.noop()},e}(r.Subscriber)},89121:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.isEmpty=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},4636:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.last=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.hasValue=!1,this.index=0,void 0!==r&&(this.lastValue=r,this.hasValue=!0)}return i(e,t),e.prototype._next=function(t){var e=this.index++;if(this.predicate)this._tryPredicate(t,e);else{if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}if(n){if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this.lastValue=n,this.hasValue=!0},e.prototype._complete=function(){var t=this.destination;this.hasValue?(t.next(this.lastValue),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},40119:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.map=function(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 s(t,e))}};var s=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.project,this.thisArg))},t}();e.MapOperator=s;var o=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.count=0,this.thisArg=i||this}return i(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.Subscriber)},23491:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.mapTo=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.value=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.value))},t}(),o=function(t){function e(e,n){t.call(this,e),this.value=n}return i(e,t),e.prototype._next=function(t){this.destination.next(this.value)},e}(r.Subscriber)},71177:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(94429);e.materialize=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){this.destination.next(s.Notification.createNext(t))},e.prototype._error=function(t){var e=this.destination;e.next(s.Notification.createError(t)),e.complete()},e.prototype._complete=function(){var t=this.destination;t.next(s.Notification.createComplete()),t.complete()},e}(r.Subscriber)},33499:function(t,e,n){"use strict";var i=n(97369);e.max=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)>0?e:n}:function(t,e){return t>e?t:e})}},56098:function(t,e,n){"use strict";var i=n(38781),r=n(38781);e.mergeStatic=r.merge,e.merge=function(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(s.OuterSubscriber);e.MergeMapSubscriber=a},6693:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.mergeMapTo=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"number"==typeof e&&(n=e,e=null),function(i){return i.lift(new o(t,e,n))}};var o=function(){function t(t,e,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.ish=t,this.resultSelector=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.ish,this.resultSelector,this.concurrent))},t}();e.MergeMapToOperator=o;var a=function(t){function e(e,n,i,r){void 0===r&&(r=Number.POSITIVE_INFINITY),t.call(this,e),this.ish=n,this.resultSelector=i,this.concurrent=r,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber);e.MergeMapToSubscriber=a},7550:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(93658),a=n(84308);e.mergeScan=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.accumulator=t,this.seed=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.accumulator,this.seed,this.concurrent))},t}();e.MergeScanOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this.acc=i,this.concurrent=r,this.hasValue=!1,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},e}(a.OuterSubscriber);e.MergeScanSubscriber=c},51213:function(t,e,n){"use strict";var i=n(97369);e.min=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)<0?e:n}:function(t,e){return t=2?function(n){return o.pipe(i.scan(t,e),r.takeLast(1),s.defaultIfEmpty(e))(n)}:function(e){return o.pipe(i.scan(function(e,n,i){return t(e,n,i+1)}),r.takeLast(1))(e)}}},1694:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.refCount=function(){return function(t){return t.lift(new s(t))}};var s=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var i=new o(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r},t}(),o=function(t){function e(e,n){t.call(this,e),this.connectable=n}return i(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._refCount;if(e<=0)this.connection=null;else if(t._refCount=e-1,e>1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null},e}(r.Subscriber)},15329:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(70481);e.repeat=function(t){return void 0===t&&(t=-1),function(e){return 0===t?new s.EmptyObservable:e.lift(new o(t<0?-1:t-1,e))}};var o=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.count,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.complete=function(){if(!this.isStopped){var e=this.source,n=this.count;if(0===n)return t.prototype.complete.call(this);n>-1&&(this.count=n-1),e.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},63964:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.repeatWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,e))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i,this.sourceIsBeingSubscribedTo=!0}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},e.prototype.notifyComplete=function(e){if(!1===this.sourceIsBeingSubscribedTo)return t.prototype.complete.call(this)},e.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return t.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next()}},e.prototype._unsubscribe=function(){var t=this.notifications,e=this.retriesSubscription;t&&(t.unsubscribe(),this.notifications=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype._unsubscribeAndRecycle=function(){var e=this,n=e.notifications,i=e.retries,r=e.retriesSubscription;return this.notifications=null,this.retries=null,this.retriesSubscription=null,t.prototype._unsubscribeAndRecycle.call(this),this.notifications=n,this.retries=i,this.retriesSubscription=r,this},e.prototype.subscribeToRetries=function(){this.notifications=new r.Subject;var e=s.tryCatch(this.notifier)(this.notifications);if(e===o.errorObject)return t.prototype.complete.call(this);this.retries=e,this.retriesSubscription=l.subscribeToResult(this,e)},e}(a.OuterSubscriber)},40241:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.retry=function(t){return void 0===t&&(t=-1),function(e){return e.lift(new s(t,e))}};var s=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.count,this.source))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return t.prototype.error.call(this,e);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},23896:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.retryWhen=function(t){return function(e){return e.lift(new c(t,e))}};var c=function(){function t(t,e){this.notifier=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,this.source))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.errors,i=this.retries,a=this.retriesSubscription;if(i)this.errors=null,this.retriesSubscription=null;else{if(n=new r.Subject,(i=s.tryCatch(this.notifier)(n))===o.errorObject)return t.prototype.error.call(this,o.errorObject.e);a=l.subscribeToResult(this,i)}this._unsubscribeAndRecycle(),this.errors=n,this.retries=i,this.retriesSubscription=a,n.next(e)}},e.prototype._unsubscribe=function(){var t=this.errors,e=this.retriesSubscription;t&&(t.unsubscribe(),this.errors=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype.notifyNext=function(t,e,n,i,r){var s=this,o=s.errors,a=s.retries,l=s.retriesSubscription;this.errors=null,this.retries=null,this.retriesSubscription=null,this._unsubscribeAndRecycle(),this.errors=o,this.retries=a,this.retriesSubscription=l,this.source.subscribe(this)},e}(a.OuterSubscriber)},92043:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.sample=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new a(t),i=e.subscribe(n);return i.add(s.subscribeToResult(n,this.notifier)),i},t}(),a=function(t){function e(){t.apply(this,arguments),this.hasValue=!1}return i(e,t),e.prototype._next=function(t){this.value=t,this.hasValue=!0},e.prototype.notifyNext=function(t,e,n,i,r){this.emitValue()},e.prototype.notifyComplete=function(){this.emitValue()},e.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},e}(r.OuterSubscriber)},71239:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(90680);e.sampleTime=function(t,e){return void 0===e&&(e=s.async),function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.period=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.period,this.scheduler))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.period=n,this.scheduler=i,this.hasValue=!1,this.add(i.schedule(l,n,{subscriber:this,period:n}))}return i(e,t),e.prototype._next=function(t){this.lastValue=t,this.hasValue=!0},e.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},e}(r.Subscriber);function l(t){var e=t.period;t.subscriber.notifyNext(),this.schedule(t,e)}},64949:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.scan=function(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.accumulator,this.seed,this.hasSeed))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this._seed=i,this.hasSeed=r,this.index=0}return i(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(i){this.destination.error(i)}this.seed=e,this.destination.next(e)},e}(r.Subscriber)},88948:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.sequenceEqual=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compareTo=t,this.comparor=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compareTo,this.comparor))},t}();e.SequenceEqualOperator=a;var l=function(t){function e(e,n,i){t.call(this,e),this.compareTo=n,this.comparor=i,this._a=[],this._b=[],this._oneComplete=!1,this.add(n.subscribe(new c(e,this)))}return i(e,t),e.prototype._next=function(t){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(t),this.checkValues())},e.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},e.prototype.checkValues=function(){for(var t=this,e=t._a,n=t._b,i=t.comparor;e.length>0&&n.length>0;){var r=e.shift(),a=n.shift(),l=!1;i?(l=s.tryCatch(i)(r,a))===o.errorObject&&this.destination.error(o.errorObject.e):l=r===a,l||this.emit(!1)}},e.prototype.emit=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype.nextB=function(t){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(t),this.checkValues())},e}(r.Subscriber);e.SequenceEqualSubscriber=l;var c=function(t){function e(e,n){t.call(this,e),this.parent=n}return i(e,t),e.prototype._next=function(t){this.parent.nextB(t)},e.prototype._error=function(t){this.parent.error(t)},e.prototype._complete=function(){this.parent._complete()},e}(r.Subscriber)},35473:function(t,e,n){"use strict";var i=n(27372),r=n(1694),s=n(2369);function o(){return new s.Subject}e.share=function(){return function(t){return r.refCount()(i.multicast(o)(t))}}},62704:function(t,e,n){"use strict";var i=n(81959);e.shareReplay=function(t,e,n){return function(r){return r.lift(function(t,e,n){var r,s,o=0,a=!1,l=!1;return function(c){o++,(!r||a)&&(a=!1,r=new i.ReplaySubject(t,e,n),s=c.subscribe({next:function(t){r.next(t)},error:function(t){a=!0,r.error(t)},complete:function(){l=!0,r.complete()}}));var u=r.subscribe(this);return function(){o--,u.unsubscribe(),s&&0===o&&l&&s.unsubscribe()}}}(t,e,n))}}},92223:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.single=function(t){return function(e){return e.lift(new o(t,e))}};var o=function(){function t(t,e){this.predicate=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.source=i,this.seenValue=!1,this.index=0}return i(e,t),e.prototype.applySingleValue=function(t){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=t)},e.prototype._next=function(t){var e=this.index++;this.predicate?this.tryNext(t,e):this.applySingleValue(t)},e.prototype.tryNext=function(t,e){try{this.predicate(t,e,this.source)&&this.applySingleValue(t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){var t=this.destination;this.index>0?(t.next(this.seenValue?this.singleValue:void 0),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},11189:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.skip=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.total=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.total))},t}(),o=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){++this.count>this.total&&this.destination.next(t)},e}(r.Subscriber)},73346:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.skipLast=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){if(this._skipCount=t,this._skipCount<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(0===this._skipCount?new r.Subscriber(t):new a(t,this._skipCount))},t}(),a=function(t){function e(e,n){t.call(this,e),this._skipCount=n,this._count=0,this._ring=new Array(n)}return i(e,t),e.prototype._next=function(t){var e=this._skipCount,n=this._count++;if(n1?new i.ArrayObservable(t,n):new s.EmptyObservable(n),e)}}},10118:function(t,e,n){"use strict";var i=n(82966);e.subscribeOn=function(t,e){return void 0===e&&(e=0),function(n){return n.lift(new r(t,e))}};var r=function(){function t(t,e){this.scheduler=t,this.delay=e}return t.prototype.call=function(t,e){return new i.SubscribeOnObservable(e,this.delay,this.scheduler).subscribe(t)},t}()},77243:function(t,e,n){"use strict";var i=n(18483),r=n(5027);e.switchAll=function(){return i.switchMap(r.identity)}},18483:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var i=this.innerSubscription;i&&i.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,t,e,n))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){this.resultSelector?this._tryNotifyNext(t,e,n,i):this.destination.next(e)},e.prototype._tryNotifyNext=function(t,e,n,i){var r;try{r=this.resultSelector(t,e,n,i)}catch(s){return void this.destination.error(s)}this.destination.next(r)},e}(r.OuterSubscriber)},10684:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMapTo=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.observable=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.observable,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.inner=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e=this.innerSubscription;e&&e.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,this.inner,t,this.index++))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.tryResultSelector(t,e,n,i):s.next(e)},e.prototype.tryResultSelector=function(t,e,n,i){var r,s=this.resultSelector,o=this.destination;try{r=s(t,e,n,i)}catch(a){return void o.error(a)}o.next(r)},e}(r.OuterSubscriber)},44396:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.take=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))},e}(r.Subscriber)},73935:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.takeLast=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.ring=new Array,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.ring,n=this.total,i=this.count++;e.length0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,o=r.length,a=0;a=0&&l%e==0&&!this.closed&&r.shift().complete(),++this.count%e==0&&!this.closed){var c=new s.Subject;r.push(c),n.next(c)}},e.prototype._error=function(t){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().complete();this.destination.complete()},e.prototype._unsubscribe=function(){this.count=0,this.windows=null},e}(r.Subscriber)},42603:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(90680),o=n(42109),a=n(39479),l=n(41503);e.windowTime=function(t){var e=s.async,n=null,i=Number.POSITIVE_INFINITY;return l.isScheduler(arguments[3])&&(e=arguments[3]),l.isScheduler(arguments[2])?e=arguments[2]:a.isNumeric(arguments[2])&&(i=arguments[2]),l.isScheduler(arguments[1])?e=arguments[1]:a.isNumeric(arguments[1])&&(n=arguments[1]),function(r){return r.lift(new c(t,n,i,e))}};var c=function(){function t(t,e,n,i){this.windowTimeSpan=t,this.windowCreationInterval=e,this.maxWindowSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},t}(),u=function(t){function e(){t.apply(this,arguments),this._numberOfNextedValues=0}return i(e,t),e.prototype.next=function(e){this._numberOfNextedValues++,t.prototype.next.call(this,e)},Object.defineProperty(e.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),e}(r.Subject),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.destination=e,this.windowTimeSpan=n,this.windowCreationInterval=i,this.maxWindowSize=r,this.scheduler=s,this.windows=[];var o=this.openWindow();if(null!==i&&i>=0){var a={windowTimeSpan:n,windowCreationInterval:i,subscriber:this,scheduler:s};this.add(s.schedule(f,n,{subscriber:this,window:o,context:null})),this.add(s.schedule(p,i,a))}else this.add(s.schedule(d,n,{subscriber:this,window:o,windowTimeSpan:n}))}return i(e,t),e.prototype._next=function(t){for(var e=this.windows,n=e.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}},e.prototype._error=function(t){for(var e=this.windows;e.length>0;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){for(var t=this.windows;t.length>0;){var e=t.shift();e.closed||e.complete()}this.destination.complete()},e.prototype.openWindow=function(){var t=new u;return this.windows.push(t),this.destination.next(t),t},e.prototype.closeWindow=function(t){t.complete();var e=this.windows;e.splice(e.indexOf(t),1)},e}(o.Subscriber);function d(t){var e=t.subscriber,n=t.windowTimeSpan,i=t.window;i&&e.closeWindow(i),t.window=e.openWindow(),this.schedule(t,n)}function p(t){var e=t.windowTimeSpan,n=t.subscriber,i=t.scheduler,r=t.windowCreationInterval,s=n.openWindow(),o=this,a={action:o,subscription:null};a.subscription=i.schedule(f,e,{subscriber:n,window:s,context:a}),o.add(a.subscription),o.schedule(t,r)}function f(t){var e=t.subscriber,n=t.window,i=t.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),e.closeWindow(n)}},59048:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=n(33463),a=n(85814),l=n(84308),c=n(93658);e.windowToggle=function(t,e){return function(n){return n.lift(new u(t,e))}};var u=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.openings,this.closingSelector))},t}(),h=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(this.openSubscription=c.subscribeToResult(this,n,n))}return i(e,t),e.prototype._next=function(t){var e=this.contexts;if(e)for(var n=e.length,i=0;i0){var o=s.indexOf(n);-1!==o&&s.splice(o,1)}},e.prototype.notifyComplete=function(){},e.prototype._next=function(t){if(0===this.toRespond.length){var e=[t].concat(this.values);this.project?this._tryProject(e):this.destination.next(e)}},e.prototype._tryProject=function(t){var e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.OuterSubscriber)},9477:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(42109),a=n(84308),l=n(93658),c=n(72121);function u(){for(var t=[],e=0;ethis.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),g=function(t){function e(e,n,i){t.call(this,e),this.parent=n,this.observable=i,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return i(e,t),e.prototype[c.iterator]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){this.buffer.push(e),this.parent.checkIterators()},e.prototype.subscribe=function(t,e){return l.subscribeToResult(this,this.observable,this,e)},e}(a.OuterSubscriber)},33310:function(t,e,n){"use strict";var i=n(9477);e.zipAll=function(t){return function(e){return e.lift(new i.ZipOperator(t))}}},28101:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this)}return i(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(n(72293).Subscription);e.Action=r},67529:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=n(95018),o=function(t){function e(e,n){t.call(this,e,n),this.scheduler=e,this.work=n}return i(e,t),e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=s.AnimationFrame.requestAnimationFrame(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(s.AnimationFrame.cancelAnimationFrame(n),e.scheduled=void 0)},e}(r.AsyncAction);e.AnimationFrameAction=o},68909:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=r.Immediate.setImmediate(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(r.Immediate.clearImmediate(n),e.scheduled=void 0)},e}(n(12624).AsyncAction);e.AsapAction=s},25766:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.schedule.call(this,e,n):(this.delay=n,this.state=e,this.scheduler.flush(this),this)},e.prototype.execute=function(e,n){return n>0||this.closed?t.prototype.execute.call(this,e,n):this._execute(e,n)},e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,i):e.flush(this)},e}(n(12624).AsyncAction);e.QueueAction=r},77373:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e}(n(42704).AsyncScheduler);e.QueueScheduler=r},18353:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=function(t){function e(e,n){var i=this;void 0===e&&(e=o),void 0===n&&(n=Number.POSITIVE_INFINITY),t.call(this,e,function(){return i.frame}),this.maxFrames=n,this.frame=0,this.index=-1}return i(e,t),e.prototype.flush=function(){for(var t,e,n=this.actions,i=this.maxFrames;(e=n.shift())&&(this.frame=e.delay)<=i&&!(t=e.execute(e.state,e.delay)););if(t){for(;e=n.shift();)e.unsubscribe();throw t}},e.frameTimeFactor=10,e}(n(42704).AsyncScheduler);e.VirtualTimeScheduler=s;var o=function(t){function e(e,n,i){void 0===i&&(i=e.index+=1),t.call(this,e,n),this.scheduler=e,this.work=n,this.index=i,this.active=!0,this.index=e.index=i}return i(e,t),e.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return t.prototype.schedule.call(this,n,i);this.active=!1;var r=new e(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},e.prototype.requestAsyncId=function(t,n,i){void 0===i&&(i=0),this.delay=t.frame+i;var r=t.actions;return r.push(this),r.sort(e.sortActions),!0},e.prototype.recycleAsyncId=function(t,e,n){void 0===n&&(n=0)},e.prototype._execute=function(e,n){if(!0===this.active)return t.prototype._execute.call(this,e,n)},e.sortActions=function(t,e){return t.delay===e.delay?t.index===e.index?0:t.index>e.index?1:-1:t.delay>e.delay?1:-1},e}(r.AsyncAction);e.VirtualAction=o},12948:function(t,e,n){"use strict";var i=n(67529),r=n(68909);e.animationFrame=new r.AnimationFrameScheduler(i.AnimationFrameAction)},85522:function(t,e,n){"use strict";var i=n(3496),r=n(25766);e.asap=new r.AsapScheduler(i.AsapAction)},90680:function(t,e,n){"use strict";var i=n(12624),r=n(42704);e.async=new r.AsyncScheduler(i.AsyncAction)},97088:function(t,e,n){"use strict";var i=n(7100),r=n(77373);e.queue=new r.QueueScheduler(i.QueueAction)},72121:function(t,e,n){"use strict";var i=n(80019);function r(t){var e=t.Symbol;if("function"==typeof e)return e.iterator||(e.iterator=e("iterator polyfill")),e.iterator;var n=t.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var i=t.Map;if(i)for(var r=Object.getOwnPropertyNames(i.prototype),s=0;s0;)e.shift().setup();t.prototype.flush.call(this);for(var n=this.flushTests.filter(function(t){return t.ready});n.length>0;){var i=n.shift();this.assertDeepEqual(i.actual,i.expected)}},e.parseMarblesAsSubscriptions=function(t){if("string"!=typeof t)return new l.SubscriptionLog(Number.POSITIVE_INFINITY);for(var e=t.length,n=-1,i=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,s=0;s-1?n:o;break;case"!":if(r!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");r=n>-1?n:o;break;default:throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+a+"'.")}}return r<0?new l.SubscriptionLog(i):new l.SubscriptionLog(i,r)},e.parseMarbles=function(t,e,n,i){if(void 0===i&&(i=!1),-1!==t.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var r=t.length,a=[],l=t.indexOf("^"),c=-1===l?0:l*-this.frameTimeFactor,u="object"!=typeof e?function(t){return t}:function(t){return i&&e[t]instanceof o.ColdObservable?e[t].messages:e[t]},h=-1,d=0;d-1?h:p,notification:f})}return a},e}(c.VirtualTimeScheduler);e.TestScheduler=u},95018:function(t,e,n){"use strict";var i=n(80019),r=function(t){t.requestAnimationFrame?(this.cancelAnimationFrame=t.cancelAnimationFrame.bind(t),this.requestAnimationFrame=t.requestAnimationFrame.bind(t)):t.mozRequestAnimationFrame?(this.cancelAnimationFrame=t.mozCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.mozRequestAnimationFrame.bind(t)):t.webkitRequestAnimationFrame?(this.cancelAnimationFrame=t.webkitCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.webkitRequestAnimationFrame.bind(t)):t.msRequestAnimationFrame?(this.cancelAnimationFrame=t.msCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.msRequestAnimationFrame.bind(t)):t.oRequestAnimationFrame?(this.cancelAnimationFrame=t.oCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.oRequestAnimationFrame.bind(t)):(this.cancelAnimationFrame=t.clearTimeout.bind(t),this.requestAnimationFrame=function(e){return t.setTimeout(e,1e3/60)})};e.RequestAnimationFrameDefinition=r,e.AnimationFrame=new r(i.root)},11758:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"argument out of range");this.name=e.name="ArgumentOutOfRangeError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.ArgumentOutOfRangeError=i},44640:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"no elements in sequence");this.name=e.name="EmptyError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.EmptyError=i},30764:function(t,e){"use strict";var n=function(){function t(){this.values={}}return t.prototype.delete=function(t){return this.values[t]=null,!0},t.prototype.set=function(t,e){return this.values[t]=e,this},t.prototype.get=function(t){return this.values[t]},t.prototype.forEach=function(t,e){var n=this.values;for(var i in n)n.hasOwnProperty(i)&&null!==n[i]&&t.call(e,n[i],i)},t.prototype.clear=function(){this.values={}},t}();e.FastMap=n},42982:function(t,e,n){"use strict";var i=n(80019),r=function(){function t(t){if(this.root=t,t.setImmediate&&"function"==typeof t.setImmediate)this.setImmediate=t.setImmediate.bind(t),this.clearImmediate=t.clearImmediate.bind(t);else{this.nextHandle=1,this.tasksByHandle={},this.currentlyRunningATask=!1,this.setImmediate=this.canUseProcessNextTick()?this.createProcessNextTickSetImmediate():this.canUsePostMessage()?this.createPostMessageSetImmediate():this.canUseMessageChannel()?this.createMessageChannelSetImmediate():this.canUseReadyStateChange()?this.createReadyStateChangeSetImmediate():this.createSetTimeoutSetImmediate();var e=function t(e){delete t.instance.tasksByHandle[e]};e.instance=this,this.clearImmediate=e}}return t.prototype.identify=function(t){return this.root.Object.prototype.toString.call(t)},t.prototype.canUseProcessNextTick=function(){return"[object process]"===this.identify(this.root.process)},t.prototype.canUseMessageChannel=function(){return Boolean(this.root.MessageChannel)},t.prototype.canUseReadyStateChange=function(){var t=this.root.document;return Boolean(t&&"onreadystatechange"in t.createElement("script"))},t.prototype.canUsePostMessage=function(){var t=this.root;if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}return!1},t.prototype.partiallyApplied=function(t){for(var e=[],n=1;n=0}},1856:function(t,e){"use strict";e.isObject=function(t){return null!=t&&"object"==typeof t}},35130:function(t,e){"use strict";e.isPromise=function(t){return t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}},41503:function(t,e){"use strict";e.isScheduler=function(t){return t&&"function"==typeof t.schedule}},68668:function(t,e){"use strict";e.noop=function(){}},67239:function(t,e){"use strict";e.not=function(t,e){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=t,n.thisArg=e,n}},10142:function(t,e,n){"use strict";var i=n(68668);function r(t){return t?1===t.length?t[0]:function(e){return t.reduce(function(t,e){return e(t)},e)}:i.noop}e.pipe=function(){for(var t=[],e=0;e=n?{done:!0}:{done:!1,value:t[i++]}})},e.empty=function(){var t=new e(null);return t.done=!0,t},e.is=function(t){return t instanceof e||"object"==typeof t&&null!==t&&"function"==typeof t.next},t.exports=e},97310:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.isMobile=function(){return void 0!==r.window.orientation},e.default=function(t){if(!t&&!(0,s.default)())return"Node";if((0,o.default)(t))return"Electron";var e="undefined"!=typeof navigator?navigator:{},n=t||e.userAgent||"";if(n.indexOf("Edge")>-1)return"Edge";var i=-1!==n.indexOf("MSIE "),a=-1!==n.indexOf("Trident/");return i||a?"IE":r.window.chrome?"Chrome":r.window.safari?"Safari":r.window.mozInnerScreenX?"Firefox":"Unknown"};var r=n(41151),s=i(n(61602)),o=i(n(22344))},41151:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.console=e.process=e.document=e.global=e.window=e.self=void 0;var r=i(n(34321)),s={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&process};e.self=s.self||s.window||s.global,e.window=s.window||s.self||s.global,e.global=s.global||s.self||s.window,e.document=s.document||{},e.process=s.process||{};var o=console;e.console=o},84761:function(t,e,n){"use strict";var i=n(61948),r=n(34321);Object.defineProperty(e,"CO",{enumerable:!0,get:function(){return s.global}}),Object.defineProperty(e,"jU",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"qs",{enumerable:!0,get:function(){return a.default}});var s=n(41151),o=c(n(61602)),a=c(n(97310));i(n(22344));function l(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(l=function(t){return t?n:e})(t)}function c(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var n=l(e);if(n&&n.has(t))return n.get(t);var i={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in t)if("default"!==o&&Object.prototype.hasOwnProperty.call(t,o)){var a=s?Object.getOwnPropertyDescriptor(t,o):null;a&&(a.get||a.set)?Object.defineProperty(i,o,a):i[o]=t[o]}return i.default=t,n&&n.set(t,i),i}},61602:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=o,e.isBrowserMainThread=function(){return o()&&"undefined"!=typeof document};var r=i(n(34321)),s=i(n(22344));function o(){return!("object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&"[object process]"===String(process)&&!process.browser)||(0,s.default)()}},22344:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){if("undefined"!=typeof window&&"object"===(0,r.default)(window.process)&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"===(0,r.default)(process.versions)&&Boolean(process.versions.electron))return!0;var e="object"===("undefined"==typeof navigator?"undefined":(0,r.default)(navigator))&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)};var r=i(n(34321))},86991:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(14180),e),r(n(75103),e),r(n(48965),e),r(n(32595),e),r(n(82417),e),r(n(92451),e),r(n(17735),e)},14180:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BlankNode=void 0,e.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},75103:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DataFactory=void 0;const i=n(14180),r=n(48965),s=n(32595),o=n(82417),a=n(92451),l=n(17735);let c=0;e.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},48965:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DefaultGraph=void 0;class n{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}e.DefaultGraph=n,n.INSTANCE=new n},32595:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Literal=void 0;const i=n(82417);class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}e.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},82417:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NamedNode=void 0,e.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},92451:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Quad=void 0,e.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},17735:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Variable=void 0,e.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},31609:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.getSupportedJavaScriptPrimitives=e.getSupportedRdfDatatypes=e.getTermRaw=e.toRdf=e.fromRdf=void 0;const s=n(86991),o=n(9938),a=n(66060);r(n(9938),e),r(n(88871),e),r(n(66060),e);const l=new s.DataFactory,c=new a.Translator;function u(t,e){return c.fromRdf(t,e)}c.registerHandler(new o.TypeHandlerString,o.TypeHandlerString.TYPES.map(t=>l.namedNode(t)),["string"]),c.registerHandler(new o.TypeHandlerBoolean,[o.TypeHandlerBoolean.TYPE].map(t=>l.namedNode(t)),["boolean"]),c.registerHandler(new o.TypeHandlerNumberDouble,o.TypeHandlerNumberDouble.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerNumberInteger,o.TypeHandlerNumberInteger.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerDate,o.TypeHandlerDate.TYPES.map(t=>l.namedNode(t)),["object"]),e.fromRdf=u,e.toRdf=function(t,e){return e&&"namedNode"in e&&(e={dataFactory:e}),(e=e||{})&&!e.dataFactory&&(e.dataFactory=l),c.toRdf(t,e)},e.getTermRaw=function(t,e){return"Literal"===t.termType?u(t,e):t.value},e.getSupportedRdfDatatypes=function(){return c.getSupportedRdfDatatypes()},e.getSupportedJavaScriptPrimitives=function(){return c.getSupportedJavaScriptPrimitives()}},88871:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0})},66060:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Translator=void 0,e.Translator=class{constructor(){this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}static incorrectRdfDataType(t){throw new Error(`Invalid RDF ${t.datatype.value} value: '${t.value}'`)}registerHandler(t,e,n){for(const i of e)this.supportedRdfDatatypes.push(i),this.fromRdfHandlers[i.value]=t;for(const i of n){let e=this.toRdfHandlers[i];e||(this.toRdfHandlers[i]=e=[]),e.push(t)}}fromRdf(t,e){const n=this.fromRdfHandlers[t.datatype.value];return n?n.fromRdf(t,e):t.value}toRdf(t,e){const n=this.toRdfHandlers[typeof t];if(n)for(const i of n){const n=i.toRdf(t,e);if(n)return n}throw new Error(`Invalid JavaScript value: '${t}'`)}getSupportedRdfDatatypes(){return this.supportedRdfDatatypes}getSupportedJavaScriptPrimitives(){return Object.keys(this.toRdfHandlers)}}},80727:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerBoolean=void 0;const i=n(66060);class r{fromRdf(t,e){switch(t.value){case"true":return!0;case"false":return!1;case"1":return!0;case"0":return!1}return e&&i.Translator.incorrectRdfDataType(t),!1}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t?"true":"false",e||n.namedNode(r.TYPE))}}e.TypeHandlerBoolean=r,r.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},52525:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerDate=void 0;const i=n(66060);class r{fromRdf(t,e){switch(e&&!t.value.match(r.VALIDATORS[t.datatype.value.substr(33,t.datatype.value.length)])&&i.Translator.incorrectRdfDataType(t),t.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(t.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":const e=t.value.split("-");return new Date(0,parseInt(e[0],10)-1,parseInt(e[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(t.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(t.value+"-01");default:return new Date(t.value)}}toRdf(t,{datatype:e,dataFactory:n}){if(e=e||n.namedNode(r.TYPES[0]),!(t instanceof Date))return null;const i=t;let s;switch(e.value){case"http://www.w3.org/2001/XMLSchema#gDay":s=String(i.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":s=i.getUTCMonth()+1+"-"+i.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":s=String(i.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":s=i.getUTCFullYear()+"-"+(i.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":s=i.toISOString().replace(/T.*$/,"");break;default:s=i.toISOString()}return n.literal(s,e)}}e.TypeHandlerDate=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],r.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},38554:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberDouble=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseFloat(t.value);return e&&isNaN(n)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return e=e||n.namedNode(r.TYPES[0]),isNaN(t)?n.literal("NaN",e):isFinite(t)?t%1==0?null:n.literal(t.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),e):n.literal(t>0?"INF":"-INF",e)}}e.TypeHandlerNumberDouble=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},37750:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberInteger=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseInt(t.value,10);return e&&(isNaN(n)||t.value.indexOf(".")>=0)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(String(t),e||n.namedNode(t<=r.MAX_INT&&t>=r.MIN_INT?r.TYPES[0]:r.TYPES[1]))}}e.TypeHandlerNumberInteger=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],r.MAX_INT=2147483647,r.MIN_INT=-2147483648},14608:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerString=void 0;class n{fromRdf(t){return t.value}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t,e)}}e.TypeHandlerString=n,n.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},9938:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(80727),e),r(n(52525),e),r(n(38554),e),r(n(37750),e),r(n(14608),e)},93640:function(t,e,n){"use strict";var i={};n.r(i),n.d(i,{decode:function(){return eL},encode:function(){return iL}});var r={};n.r(r),n.d(r,{decode:function(){return cL},encode:function(){return hL}});var s={};n.r(s),n.d(s,{decode:function(){return dL},encode:function(){return fL}});var o={};function a(t){return"function"==typeof t}n.r(o),n.d(o,{decode:function(){return mL},encode:function(){return yL}});let l=!1;const c={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 l&&console.log("RxJS: Back to a better error behavior. Thank you. <3");l=t},get useDeprecatedSynchronousErrorHandling(){return l}};function u(t){setTimeout(()=>{throw t},0)}const h={closed:!0,next(t){},error(t){if(c.useDeprecatedSynchronousErrorHandling)throw t;u(t)},complete(){}},d=Array.isArray||(t=>t&&"number"==typeof t.length);function p(t){return null!==t&&"object"==typeof t}const f=(()=>{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})();class g{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:e,_ctorUnsubscribe:n,_unsubscribe:i,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,e instanceof g)e.remove(this);else if(null!==e)for(let a=0;at.concat(e instanceof f?e.errors:e),[])}g.EMPTY=((m=new g).closed=!0,m);const y="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class v extends g{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=h;break;case 1:if(!t){this.destination=h;break}if("object"==typeof t){t instanceof v?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[y](){return this}static create(t,e,n){const i=new v(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 _ extends v{constructor(t,e,n,i){super(),this._parentSubscriber=t;let r,s=this;a(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==h&&(s=Object.create(e),a(s.unsubscribe)&&this.add(s.unsubscribe.bind(s)),s.unsubscribe=this.unsubscribe.bind(this))),this._context=s,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;c.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}=c;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):u(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;u(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);c.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(),c.useDeprecatedSynchronousErrorHandling)throw n;u(n)}}__tryOrSetError(t,e,n){if(!c.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return c.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(u(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const w="function"==typeof Symbol&&Symbol.observable||"@@observable";function x(t){return t}function S(...t){return E(t)}function E(t){return 0===t.length?x:1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}}let C=(()=>{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,r=function(t,e,n){if(t){if(t instanceof v)return t;if(t[y])return t[y]()}return t||e||n?new v(t,e,n):new v(h)}(t,e,n);if(r.add(i?i.call(r,this.source):this.source||c.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),c.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){c.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 v?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=O(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(r){n(r),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[w](){return this}pipe(...t){return 0===t.length?this:E(t)(this)}toPromise(t){return new(t=O(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function O(t){if(t||(t=c.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const T=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class k extends g{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 A extends v{constructor(t){super(t),this.destination=t}}let P=(()=>{class t extends C{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[y](){return new A(this)}lift(t){const e=new M(this,this);return e.operator=t,e}next(t){if(this.closed)throw new T;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let r=0;rnew M(t,e),t})();class M extends P{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):g.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}function D(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 R(t,e))}}class R{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new N(t,this.project,this.thisArg))}}class N extends v{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)}}const L=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function B(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const V=t=>{if(t&&"function"==typeof t[w])return(t=>e=>{const n=t[w]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)})(t);if(F(t))return L(t);if(B(t))return(t=>e=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,u),e))(t);if(t&&"function"==typeof t[j])return(t=>e=>{const n=t[j]();for(;;){let t;try{t=n.next()}catch(i){return e.error(i),e}if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e})(t);{const e=`You provided ${p(t)?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`;throw new TypeError(e)}};function z(t,e){return new C(n=>{const i=new g;let r=0;return i.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||i.add(this.schedule())):n.complete()})),i})}function U(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[w]}(t))return function(t,e){return new C(n=>{const i=new g;return i.add(e.schedule(()=>{const r=t[w]();i.add(r.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(B(t))return function(t,e){return new C(n=>{const i=new g;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(F(t))return z(t,e);if(function(t){return t&&"function"==typeof t[j]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new C(n=>{const i=new g;let r;return i.add(()=>{r&&"function"==typeof r.return&&r.return()}),i.add(e.schedule(()=>{r=t[j](),i.add(e.schedule(function(){if(n.closed)return;let t,e;try{const n=r.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 C?t:new C(V(t))}class H extends v{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class $ extends v{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function G(t,e){if(e.closed)return;if(t instanceof C)return t.subscribe(e);let n;try{n=V(t)(e)}catch(i){e.error(i)}return n}function W(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(W((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new X(t,this.project,this.concurrent))}}class X extends ${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(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Y(t=Number.POSITIVE_INFINITY){return W(x,t)}function K(t,e){return e?z(t,e):new C(L(t))}function Q(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return I(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 C?t[0]:Y(e)(K(t,n))}function Z(){return function(t){return t.lift(new J(t))}}class J{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new tt(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r}}class tt extends v{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 et extends C{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 g,t.add(this.source.subscribe(new it(this.getSubject(),this))),t.closed&&(this._connection=null,t=g.EMPTY)),t}refCount(){return Z()(this)}}const nt=(()=>{const t=et.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 it extends A{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 rt(t,e){return function(n){let i;if(i="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new st(i,e));const r=Object.create(n,nt);return r.source=n,r.subjectFactory=i,r}}class st{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,i=this.subjectFactory(),r=n(i).subscribe(t);return r.add(e.subscribe(i)),r}}function ot(){return new P}function at(){return t=>Z()(rt(ot)(t))}function lt(t){for(let e in t)if(t[e]===lt)return e;throw Error("Could not find renamed property on target object.")}function ct(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ut(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(ut).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 ht(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const dt=lt({__forward_ref__:lt});function pt(t){return t.__forward_ref__=pt,t.toString=function(){return ut(this())},t}function ft(t){return gt(t)?t():t}function gt(t){return"function"==typeof t&&t.hasOwnProperty(dt)&&t.__forward_ref__===pt}class mt extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function bt(t){return"string"==typeof t?t:null==t?"":String(t)}function yt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():bt(t)}function vt(t,e){const n=e?` in ${e}`:"";throw new mt("201",`No provider for ${yt(t)} found${n}`)}function _t(t,e){null==t&&function(t,e,n,i){throw new Error(`ASSERTION ERROR: ${t}`+(null==i?"":` [Expected=> ${n} ${i} ${e} <=Actual]`))}(e,t,null,"!=")}function xt(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function St(t){return{providers:t.providers||[],imports:t.imports||[]}}function Et(t){return Ct(t,Tt)||Ct(t,At)}function Ct(t,e){return t.hasOwnProperty(e)?t[e]:null}function Ot(t){return t&&(t.hasOwnProperty(kt)||t.hasOwnProperty(Pt))?t[kt]:null}const Tt=lt({"\u0275prov":lt}),kt=lt({"\u0275inj":lt}),At=lt({ngInjectableDef:lt}),Pt=lt({ngInjectorDef:lt});var Mt=(()=>((Mt=Mt||{})[Mt.Default=0]="Default",Mt[Mt.Host=1]="Host",Mt[Mt.Self=2]="Self",Mt[Mt.SkipSelf=4]="SkipSelf",Mt[Mt.Optional=8]="Optional",Mt))();let It;function Dt(t){const e=It;return It=t,e}function Rt(t,e,n){const i=Et(t);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&Mt.Optional?null:void 0!==e?e:void vt(ut(t),"Injector")}function Nt(t){return{toString:t}.toString()}var Lt=(()=>((Lt=Lt||{})[Lt.OnPush=0]="OnPush",Lt[Lt.Default=1]="Default",Lt))(),jt=(()=>((jt=jt||{})[jt.Emulated=0]="Emulated",jt[jt.None=2]="None",jt[jt.ShadowDom=3]="ShadowDom",jt))();const Ft="undefined"!=typeof globalThis&&globalThis,Bt="undefined"!=typeof window&&window,Vt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,zt="undefined"!=typeof global&&global,Ut=Ft||zt||Bt||Vt,Ht={},$t=[],Gt=lt({"\u0275cmp":lt}),Wt=lt({"\u0275dir":lt}),qt=lt({"\u0275pipe":lt}),Xt=lt({"\u0275mod":lt}),Yt=lt({"\u0275loc":lt}),Kt=lt({"\u0275fac":lt}),Qt=lt({__NG_ELEMENT_ID__:lt});let Zt=0;function Jt(t){return Nt(()=>{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===Lt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||$t,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||jt.Emulated,id:"c",styles:t.styles||$t,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,r=t.features,s=t.pipes;return n.id+=Zt++,n.inputs=re(t.inputs,e),n.outputs=re(t.outputs),r&&r.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(te):null,n.pipeDefs=s?()=>("function"==typeof s?s():s).map(ee):null,n})}function te(t){return ae(t)||function(t){return t[Wt]||null}(t)}function ee(t){return function(t){return t[qt]||null}(t)}const ne={};function ie(t){return Nt(()=>{const e={type:t.type,bootstrap:t.bootstrap||$t,declarations:t.declarations||$t,imports:t.imports||$t,exports:t.exports||$t,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&(ne[t.id]=t.type),e})}function re(t,e){if(null==t)return Ht;const n={};for(const i in t)if(t.hasOwnProperty(i)){let r=t[i],s=r;Array.isArray(r)&&(s=r[1],r=r[0]),n[r]=i,e&&(e[r]=s)}return n}const se=Jt;function oe(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function ae(t){return t[Gt]||null}function le(t,e){const n=t[Xt]||null;if(!n&&!0===e)throw new Error(`Type ${ut(t)} does not have '\u0275mod' property.`);return n}function ce(t){return Array.isArray(t)&&"object"==typeof t[1]}function ue(t){return Array.isArray(t)&&!0===t[1]}function he(t){return 0!=(8&t.flags)}function de(t){return 2==(2&t.flags)}function pe(t){return 1==(1&t.flags)}function fe(t){return null!==t.template}function ge(t){return 0!=(512&t[2])}function me(t,e){return t.hasOwnProperty(Kt)?t[Kt]:null}class be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function ye(){return ve}function ve(t){return t.type.prototype.ngOnChanges&&(t.setInput=we),_e}function _e(){const t=Se(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===Ht)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function we(t,e,n,i){const r=Se(t)||function(t,e){return t[xe]=e}(t,{previous:Ht,current:null}),s=r.current||(r.current={}),o=r.previous,a=this.declaredInputs[n],l=o[a];s[a]=new be(l&&l.currentValue,e,o===Ht),t[i]=e}ye.ngInherit=!0;const xe="__ngSimpleChanges__";function Se(t){return t[xe]||null}const Ee="http://www.w3.org/2000/svg";let Ce;function Oe(){return void 0!==Ce?Ce:"undefined"!=typeof document?document:void 0}function Te(t){return!!t.listen}const ke={createRenderer:(t,e)=>Oe()};function Ae(t){for(;Array.isArray(t);)t=t[0];return t}function Pe(t,e){return Ae(e[t])}function Me(t,e){return Ae(e[t.index])}function Ie(t,e){return t.data[e]}function De(t,e){return t[e]}function Re(t,e){const n=e[t];return ce(n)?n:n[0]}function Ne(t){return 4==(4&t[2])}function Le(t){return 128==(128&t[2])}function je(t,e){return null==e?null:t[e]}function Fe(t){t[18]=0}function Be(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 Ve={lFrame:dn(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function ze(){return Ve.bindingsEnabled}function Ue(){return Ve.lFrame.lView}function He(){return Ve.lFrame.tView}function $e(t){return Ve.lFrame.contextLView=t,t[8]}function Ge(){let t=We();for(;null!==t&&64===t.type;)t=t.parent;return t}function We(){return Ve.lFrame.currentTNode}function qe(t,e){const n=Ve.lFrame;n.currentTNode=t,n.isParent=e}function Xe(){return Ve.lFrame.isParent}function Ye(){Ve.lFrame.isParent=!1}function Ke(){return Ve.isInCheckNoChangesMode}function Qe(t){Ve.isInCheckNoChangesMode=t}function Ze(){const t=Ve.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function Je(){return Ve.lFrame.bindingIndex}function tn(){return Ve.lFrame.bindingIndex++}function en(t){const e=Ve.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function nn(t,e){const n=Ve.lFrame;n.bindingIndex=n.bindingRootIndex=t,rn(e)}function rn(t){Ve.lFrame.currentDirectiveIndex=t}function sn(t){const e=Ve.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}function on(){return Ve.lFrame.currentQueryIndex}function an(t){Ve.lFrame.currentQueryIndex=t}function ln(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function cn(t,e,n){if(n&Mt.SkipSelf){let i=e,r=t;for(;!(i=i.parent,null!==i||n&Mt.Host||(i=ln(r),null===i||(r=r[15],10&i.type))););if(null===i)return!1;e=i,t=r}const i=Ve.lFrame=hn();return i.currentTNode=e,i.lView=t,!0}function un(t){const e=hn(),n=t[1];Ve.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function hn(){const t=Ve.lFrame,e=null===t?null:t.child;return null===e?dn(t):e}function dn(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function pn(){const t=Ve.lFrame;return Ve.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const fn=pn;function gn(){const t=pn();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function mn(){return Ve.lFrame.selectedIndex}function bn(t){Ve.lFrame.selectedIndex=t}function yn(){const t=Ve.lFrame;return Ie(t.tView,t.selectedIndex)}function vn(){Ve.lFrame.currentNamespace=Ee}function _n(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[a]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e){t[2]+=2048;try{s.call(o)}finally{}}}else try{s.call(o)}finally{}}class On{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Tn(t,e,n){const i=Te(t);let r=0;for(;re){o=s-1;break}}}for(;s>16}(t),i=e;for(;n>0;)i=i[15],n--;return i}let Nn=!0;function Ln(t){const e=Nn;return Nn=t,e}let jn=0;function Fn(t,e){const n=Vn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Bn(i.data,t),Bn(e,null),Bn(i.blueprint,null));const r=zn(t,e),s=t.injectorIndex;if(In(r)){const t=Dn(r),n=Rn(r,e),i=n[1].data;for(let r=0;r<8;r++)e[s+r]=n[t+r]|i[t+r]}return e[s+8]=r,s}function Bn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Vn(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=0,i=null,r=e;for(;null!==r;){const t=r[1],e=t.type;if(i=2===e?t.declTNode:1===e?r[6]:null,null===i)return-1;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return-1}function Un(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Qt)&&(i=n[Qt]),null==i&&(i=n[Qt]=jn++);const r=255&i;e.data[t+(r>>5)]|=1<=0?255&e:qn:e}(n);if("function"==typeof s){if(!cn(e,t,i))return i&Mt.Host?Hn(r,n,i):$n(e,n,i,r);try{const t=s(i);if(null!=t||i&Mt.Optional)return t;vt(n)}finally{fn()}}else if("number"==typeof s){let r=null,o=Vn(t,e),a=-1,l=i&Mt.Host?e[16][6]:null;for((-1===o||i&Mt.SkipSelf)&&(a=-1===o?zn(t,e):e[o+8],-1!==a&&Zn(i,!1)?(r=e[1],o=Dn(a),e=Rn(a,e)):o=-1);-1!==o;){const t=e[1];if(Qn(s,o,t.data)){const t=Xn(o,e,n,r,i,l);if(t!==Wn)return t}a=e[o+8],-1!==a&&Zn(i,e[1].data[o+8]===l)&&Qn(s,o,e)?(r=t,o=Dn(a),e=Rn(a,e)):o=-1}}}return $n(e,n,i,r)}const Wn={};function qn(){return new Jn(Ge(),Ue())}function Xn(t,e,n,i,r,s){const o=e[1],a=o.data[t+8],l=Yn(a,o,n,null==i?de(a)&&Nn:i!=o&&0!=(3&a.type),r&Mt.Host&&s===a);return null!==l?Kn(e,o,l,a):Wn}function Yn(t,e,n,i,r){const s=t.providerIndexes,o=e.data,a=1048575&s,l=t.directiveStart,c=s>>20,u=r?a+c:t.directiveEnd;for(let h=i?a:a+c;h=l&&t.type===n)return h}if(r){const t=o[l];if(t&&fe(t)&&t.type===n)return l}return null}function Kn(t,e,n,i){let r=t[n];const s=e.data;if(function(t){return t instanceof On}(r)){const o=r;o.resolving&&function(t,e){throw new mt("200",`Circular dependency in DI detected for ${t}`)}(yt(s[n]));const a=Ln(o.canSeeViewProviders);o.resolving=!0;const l=o.injectImpl?Dt(o.injectImpl):null;cn(t,i,Mt.Default);try{r=t[n]=o.factory(void 0,s,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:r,ngDoCheck:s}=e.type.prototype;if(i){const i=ve(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,r),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s))}(n,s[n],e)}finally{null!==l&&Dt(l),Ln(a),o.resolving=!1,fn()}}return r}function Qn(t,e,n){return!!(n[e+(t>>5)]&1<{const e=t.prototype.constructor,n=e[Kt]||ei(e),i=Object.prototype;let r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){const t=r[Kt]||ei(r);if(t&&t!==n)return t;r=Object.getPrototypeOf(r)}return t=>new t})}function ei(t){return gt(t)?()=>{const e=ei(ft(t));return e&&e()}:me(t)}function ni(t){return function(t,e){if("class"===e)return t.classes;if("style"===e)return t.styles;const n=t.attrs;if(n){const t=n.length;let i=0;for(;i{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return i.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,i){const r=t.hasOwnProperty(ri)?t[ri]:Object.defineProperty(t,ri,{value:[]})[ri];for(;r.length<=i;)r.push(null);return(r[i]=r[i]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r})}class oi{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=xt({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const ai=Function;function li(t,e){void 0===e&&(e=t);for(let n=0;nArray.isArray(t)?ci(t,e):e(t))}function ui(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function hi(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function di(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let r=t.length;if(r==e)t.push(n,i);else if(1===r)t.push(i,t[0]),t[0]=n;else{for(r--,t.push(t[r-1],t[r]);r>e;)t[r]=t[r-2],r--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function fi(t,e){const n=gi(t,e);if(n>=0)return t[1|n]}function gi(t,e){return function(t,e,n){let i=0,r=t.length>>n;for(;r!==i;){const s=i+(r-i>>1),o=t[s<e?r=s:i=s+1}return~(r< ");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):ut(i)))}r=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${r}]: ${t.replace(vi,"\n ")}`}("\n"+t.message,r,n,i),t.ngTokenPath=r,t[yi]=null,t}const Mi=ki(si("Inject",t=>({token:t})),-1),Ii=ki(si("Optional"),8),Di=ki(si("SkipSelf"),4);let Ri,Ni;function Li(t){var e;return(null===(e=function(){if(void 0===Ri&&(Ri=null,Ut.trustedTypes))try{Ri=Ut.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return Ri}())||void 0===e?void 0:e.createHTML(t))||t}function ji(){if(void 0===Ni&&(Ni=null,Ut.trustedTypes))try{Ni=Ut.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(m){}return Ni}function Fi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createHTML(t))||t}function Bi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createScriptURL(t))||t}class Vi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class zi extends Vi{getTypeName(){return"HTML"}}class Ui extends Vi{getTypeName(){return"Style"}}class Hi extends Vi{getTypeName(){return"Script"}}class $i extends Vi{getTypeName(){return"URL"}}class Gi extends Vi{getTypeName(){return"ResourceURL"}}function Wi(t){return t instanceof Vi?t.changingThisBreaksApplicationSecurity:t}function qi(t,e){const n=Xi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see https://g.co/ng/security#xss)`)}return n===e}function Xi(t){return t instanceof Vi&&t.getTypeName()||null}class Yi{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{const e=(new window.DOMParser).parseFromString(Li(t),"text/html").body;return null===e?this.inertDocumentHelper.getInertBodyElement(t):(e.removeChild(e.firstChild),e)}catch(e){return null}}}class Ki{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=Li(t),e;const n=this.inertDocument.createElement("body");return n.innerHTML=Li(t),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0Ji(t.trim())).join(", ")}function er(t){const e={};for(const n of t.split(","))e[n]=!0;return e}function nr(...t){const e={};for(const n of t)for(const t in n)n.hasOwnProperty(t)&&(e[t]=!0);return e}const ir=er("area,br,col,hr,img,wbr"),rr=er("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),sr=er("rp,rt"),or=nr(ir,nr(rr,er("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),nr(sr,er("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),nr(sr,rr)),ar=er("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),lr=er("srcset"),cr=nr(ar,lr,er("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),er("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),ur=er("script,style,template");class hr{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let e=t.firstChild,n=!0;for(;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let t=this.checkClobberedElement(e,e.nextSibling);if(t){e=t;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")}startElement(t){const e=t.nodeName.toLowerCase();if(!or.hasOwnProperty(e))return this.sanitizedSomething=!0,!ur.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);const n=t.attributes;for(let i=0;i"),!0}endElement(t){const e=t.nodeName.toLowerCase();or.hasOwnProperty(e)&&!ir.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(fr(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 dr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,pr=/([^\#-~ |!])/g;function fr(t){return t.replace(/&/g,"&").replace(dr,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(pr,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let gr;function mr(t,e){let n=null;try{gr=gr||function(t){const e=new Ki(t);return function(){try{return!!(new window.DOMParser).parseFromString(Li(""),"text/html")}catch(t){return!1}}()?new Yi(e):e}(t);let i=e?String(e):"";n=gr.getInertBodyElement(i);let r=5,s=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=s,s=n.innerHTML,n=gr.getInertBodyElement(i)}while(i!==s);return Li((new hr).sanitizeChildren(br(n)||n))}finally{if(n){const t=br(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function br(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var yr=(()=>((yr=yr||{})[yr.NONE=0]="NONE",yr[yr.HTML=1]="HTML",yr[yr.STYLE=2]="STYLE",yr[yr.SCRIPT=3]="SCRIPT",yr[yr.URL=4]="URL",yr[yr.RESOURCE_URL=5]="RESOURCE_URL",yr))();function vr(t){const e=xr();return e?Fi(e.sanitize(yr.HTML,t)||""):qi(t,"HTML")?Fi(Wi(t)):mr(Oe(),bt(t))}function _r(t){const e=xr();return e?e.sanitize(yr.URL,t)||"":qi(t,"URL")?Wi(t):Ji(bt(t))}function wr(t){const e=xr();if(e)return Bi(e.sanitize(yr.RESOURCE_URL,t)||"");if(qi(t,"ResourceURL"))return Bi(Wi(t));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function xr(){const t=Ue();return t&&t[12]}const Sr="__ngContext__";function Er(t,e){t[Sr]=e}function Cr(t){const e=function(t){return t[Sr]||null}(t);return e?Array.isArray(e)?e:e.lView:null}function Or(t){return t.ngOriginalError}function Tr(t,...e){t.error(...e)}class Ar{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t&&t.ngErrorLogger||Tr}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?function(t){return t.ngDebugContext}(t)||this._findContext(Or(t)):null}_findOriginalError(t){let e=t&&Or(t);for(;e&&Or(e);)e=Or(e);return e||null}}const Pr=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Ut))();function Mr(t){return t.ownerDocument.defaultView}function Ir(t){return t.ownerDocument}function Dr(t){return t instanceof Function?t():t}var Rr=(()=>((Rr=Rr||{})[Rr.Important=1]="Important",Rr[Rr.DashCase=2]="DashCase",Rr))();function Nr(t,e){return undefined(t,e)}function Lr(t){const e=t[3];return ue(e)?e[3]:e}function jr(t){return Br(t[13])}function Fr(t){return Br(t[4])}function Br(t){for(;null!==t&&!ue(t);)t=t[4];return t}function Vr(t,e,n,i,r){if(null!=i){let s,o=!1;ue(i)?s=i:ce(i)&&(o=!0,i=i[0]);const a=Ae(i);0===t&&null!==n?null==r?Xr(e,n,a):qr(e,n,a,r||null,!0):1===t&&null!==n?qr(e,n,a,r||null,!0):2===t?function(t,e,n){const i=Kr(t,e);i&&function(t,e,n,i){Te(t)?t.removeChild(e,n,i):e.removeChild(n)}(t,i,e,n)}(e,a,o):3===t&&e.destroyNode(a),null!=s&&function(t,e,n,i,r){const s=n[7];s!==Ae(n)&&Vr(e,t,i,s,r);for(let o=10;o0&&(t[n-1][4]=i[4]);const s=hi(t,10+e);!function(t,e){rs(t,e,e[11],2,null,null),e[0]=null,e[6]=null}(i[1],i);const o=s[19];null!==o&&o.detachView(s[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function $r(t,e){if(!(256&e[2])){const n=e[11];Te(n)&&n.destroyNode&&rs(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Gr(t[1],t);for(;e;){let n=null;if(ce(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)ce(e)&&Gr(e[1],e),e=e[3];null===e&&(e=t),ce(e)&&Gr(e[1],e),n=e&&e[4]}e=n}}(e)}}function Gr(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?i[r=l]():i[r=-l].unsubscribe(),s+=2}else{const t=i[r=n[s+1]];n[s].call(t)}if(null!==i){for(let t=r+1;ts?"":r[u+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==ls(e,c,0)||2&i&&c!==t){if(fs(i))return!1;o=!0}}}}else{if(!o&&!fs(i)&&!fs(l))return!1;if(o&&fs(l))continue;o=!1,i=l|1&i}}return fs(i)||o}function fs(t){return 0==(1&t)}function gs(t,e,n,i){if(null===e)return-1;let r=0;if(i||!n){let n=!1;for(;r-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?r+="."+o:4&i&&(r+=" "+o);else""!==r&&!fs(o)&&(e+=ys(s,r),r=""),i=o,s=s||!fs(i);n++}return""!==r&&(e+=ys(s,r)),e}const _s={};function ws(t){xs(He(),Ue(),mn()+t,Ke())}function xs(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&wn(e,i,n)}else{const i=t.preOrderHooks;null!==i&&xn(e,i,0,n)}bn(n)}function Ss(t,e){return t<<17|e<<2}function Es(t){return t>>17&32767}function Cs(t){return 2|t}function Os(t){return(131068&t)>>2}function Ts(t,e){return-131069&t|e<<2}function ks(t){return 1|t}function As(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&xs(t,e,20,Ke()),n(i,r)}finally{bn(s)}}function js(t,e,n){if(he(e)){const i=e.directiveEnd;for(let r=e.directiveStart;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=s&&n.push(s),n.push(i,r,o)}}function qs(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function Xs(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function Ys(t,e,n){if(n){if(e.exportAs)for(let i=0;i0&&ro(n)}}function ro(t){for(let n=jr(t);null!==n;n=Fr(n))for(let t=10;t0&&ro(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&ro(i)}}function so(t,e){const n=Re(e,t),i=n[1];(function(t,e){for(let n=e.length;nPromise.resolve(null))();function po(t){return t[7]||(t[7]=[])}function fo(t){return t.cleanup||(t.cleanup=[])}function go(t,e,n){return(null===t||fe(t))&&(n=function(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(n[e.index])),n[11]}function mo(t,e){const n=t[9],i=n?n.get(Ar,null):null;i&&i.handleError(e)}function bo(t,e,n,i,r){for(let s=0;sthis.processProvider(n,t,e)),ci([t],t=>this.processInjectorType(t,[],r)),this.records.set(_o,Mo(void 0,this));const s=this.records.get(xo);this.scope=null!=s?s.value:null,this.source=i||("object"==typeof t?null:ut(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=mi,n=Mt.Default){this.assertNotDestroyed();const i=Si(this),r=Dt(void 0);try{if(!(n&Mt.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=function(t){return"function"==typeof t||"object"==typeof t&&t instanceof oi}(t)&&Et(t);e=n&&this.injectableDefInScope(n)?Mo(Ao(t),So):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Mt.Self?Oo():this.parent).get(t,e=n&Mt.Optional&&e===mi?null:e)}catch(s){if("NullInjectorError"===s.name){if((s[yi]=s[yi]||[]).unshift(ut(t)),i)throw s;return Pi(s,t,"R3InjectorError",this.source)}throw s}finally{Dt(r),Si(i)}}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(ut(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=ft(t)))return!1;let i=Ot(t);const r=null==i&&t.ngModule||void 0,s=void 0===r?t:r,o=-1!==n.indexOf(s);if(void 0!==r&&(i=Ot(r)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(s);try{ci(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||$t))}}this.injectorDefTypes.add(s);const a=me(s)||(()=>new s);this.records.set(s,Mo(a,So));const l=i.providers;if(null!=l&&!o){const e=t;ci(l,t=>this.processProvider(t,e,l))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let i=Do(t=ft(t))?t:ft(t&&t.provide);const r=function(t,e,n){return Io(t)?Mo(void 0,t.useValue):Mo(Po(t),So)}(t);if(Do(t)||!0!==t.multi)this.records.get(i);else{let e=this.records.get(i);e||(e=Mo(void 0,So,!0),e.factory=()=>Ti(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,r)}hydrate(t,e){return e.value===So&&(e.value=Eo,e.value=e.factory()),"object"==typeof e.value&&e.value&&function(t){return null!==t&&"object"==typeof t&&"function"==typeof t.ngOnDestroy}(e.value)&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){if(!t.providedIn)return!1;const e=ft(t.providedIn);return"string"==typeof e?"any"===e||e===this.scope:this.injectorDefTypes.has(e)}}function Ao(t){const e=Et(t),n=null!==e?e.factory:me(t);if(null!==n)return n;if(t instanceof oi)throw new Error(`Token ${ut(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=di(e,"?");throw new Error(`Can't resolve all parameters for ${ut(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[Tt]||t[At]);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 Po(t,e,n){let i;if(Do(t)){const e=ft(t);return me(e)||Ao(e)}if(Io(t))i=()=>ft(t.useValue);else if(function(t){return!(!t||!t.useFactory)}(t))i=()=>t.useFactory(...Ti(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Ci(ft(t.useExisting));else{const e=ft(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return me(e)||Ao(e);i=()=>new e(...Ti(t.deps))}return i}function Mo(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Io(t){return null!==t&&"object"==typeof t&&wi in t}function Do(t){return"function"==typeof t}const Ro=function(t,e,n){return function(t,e=null,n=null,i){const r=To(t,e,n,i);return r._resolveInjectorDefTypes(),r}({name:n},e,t,n)};class No{static create(t,e){return Array.isArray(t)?Ro(t,e,""):Ro(t.providers,t.parent,t.name||"")}}function Lo(t,e){_n(Cr(t)[1],Ge())}function jo(t){let e=function(t){return Object.getPrototypeOf(t.prototype).constructor}(t.type),n=!0;const i=[t];for(;e;){let r;if(fe(t))r=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");r=e.\u0275dir}if(r){if(n){i.push(r);const e=t;e.inputs=Fo(t.inputs),e.declaredInputs=Fo(t.declaredInputs),e.outputs=Fo(t.outputs);const n=r.hostBindings;n&&zo(t,n);const s=r.viewQuery,o=r.contentQueries;if(s&&Bo(t,s),o&&Vo(t,o),ct(t.inputs,r.inputs),ct(t.declaredInputs,r.declaredInputs),ct(t.outputs,r.outputs),fe(r)&&r.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(r.data.animation)}}const e=r.features;if(e)for(let i=0;i=0;i--){const r=t[i];r.hostVars=e+=r.hostVars,r.hostAttrs=Pn(r.hostAttrs,n=Pn(n,r.hostAttrs))}}(i)}function Fo(t){return t===Ht?{}:t===$t?[]:t}function Bo(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Vo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,r)=>{e(t,i,r),n(t,i,r)}:e}function zo(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}No.THROW_IF_NOT_FOUND=mi,No.NULL=new wo,No.\u0275prov=xt({token:No,providedIn:"any",factory:()=>Ci(_o)}),No.__NG_ELEMENT_ID__=-1;let Uo=null;function Ho(){if(!Uo){const t=Ut.Symbol;if(t&&t.iterator)Uo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Ae(t[i.index])):i.index;if(Te(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const r=t.cleanup;if(null!=r)for(let s=0;sn?t[n]:null}"string"==typeof t&&(s+=2)}return null}(t,e,r,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=s,o.__ngLastListenerFn__=s,d=!1;else{s=ya(i,e,u,s,!1);const t=n.listen(f,r,s);h.push(s,t),c&&c.push(r,m,g,g+1)}}else s=ya(i,e,u,s,!0),f.addEventListener(r,s,o),h.push(s),c&&c.push(r,m,g,o)}else s=ya(i,e,u,s,!1);const p=i.outputs;let f;if(d&&null!==p&&(f=p[r])){const t=f.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ve.lFrame.contextLView))[8]}(t)}function _a(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 r=0;r=0}const Ta={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function ka(t){return t.substring(Ta.key,Ta.keyEnd)}function Aa(t){return t.substring(Ta.value,Ta.valueEnd)}function Pa(t,e){const n=Ta.textEnd;return n===e?-1:(e=Ta.keyEnd=function(t,e,n){for(;e32;)e++;return e}(t,Ta.key=e,n),Da(t,e,n))}function Ma(t,e){const n=Ta.textEnd;let i=Ta.key=Da(t,e,n);return n===i?-1:(i=Ta.keyEnd=function(t,e,n){let i;for(;e=65&&(-33&i)<=90||i>=48&&i<=57);)e++;return e}(t,i,n),i=Ra(t,i,n),i=Ta.value=Da(t,i,n),i=Ta.valueEnd=function(t,e,n){let i=-1,r=-1,s=-1,o=e,a=o;for(;o32&&(a=o),s=r,r=i,i=-33&l}return a}(t,i,n),Ra(t,i,n))}function Ia(t){Ta.key=0,Ta.keyEnd=0,Ta.value=0,Ta.valueEnd=0,Ta.textEnd=t.length}function Da(t,e,n){for(;e=0;n=Ma(e,n))qa(t,ka(e),Aa(e))}function Ba(t){Ua(pi,Va,t,!0)}function Va(t,e){for(let n=function(t){return Ia(t),Pa(t,Da(t,0,Ta.textEnd))}(e);n>=0;n=Pa(e,n))pi(t,ka(e),!0)}function za(t,e,n,i){const r=Ue(),s=He(),o=en(2);s.firstUpdatePass&&$a(s,t,o,i),e!==_s&&Xo(r,o,e)&&Xa(s,s.data[mn()],r,r[11],t,r[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=ut(Wi(t)))),t}(e,n),i,o)}function Ua(t,e,n,i){const r=He(),s=en(2);r.firstUpdatePass&&$a(r,null,s,i);const o=Ue();if(n!==_s&&Xo(o,s,n)){const a=r.data[mn()];if(Qa(a,i)&&!Ha(r,s)){let t=i?a.classesWithoutHost:a.stylesWithoutHost;null!==t&&(n=ht(t,n||"")),ia(r,a,o,n,i)}else!function(t,e,n,i,r,s,o,a){r===_s&&(r=$t);let l=0,c=0,u=0=t.expandoStartIndex}function $a(t,e,n,i){const r=t.data;if(null===r[n+1]){const s=r[mn()],o=Ha(t,n);Qa(s,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const r=sn(t);let s=i?e.residualClasses:e.residualStyles;if(null===r)0===(i?e.classBindings:e.styleBindings)&&(n=Wa(n=Ga(null,t,e,n,i),e.attrs,i),s=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==r)if(n=Ga(r,t,e,n,i),null===s){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==Os(i))return t[Es(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Ga(null,t,e,n[1],i),n=Wa(n,e.attrs,i),function(t,e,n,i){t[Es(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else s=function(t,e,n){let i;const r=e.directiveEnd;for(let s=1+e.directiveStylingLast;s0)&&(u=!0)}else c=n;if(r)if(0!==l){const e=Es(t[a+1]);t[i+1]=Ss(e,a),0!==e&&(t[e+1]=Ts(t[e+1],i)),t[a+1]=function(t,e){return 131071&t|e<<17}(t[a+1],i)}else t[i+1]=Ss(a,0),0!==a&&(t[a+1]=Ts(t[a+1],i)),a=i;else t[i+1]=Ss(l,0),0===a?a=i:t[l+1]=Ts(t[l+1],i),l=i;u&&(t[i+1]=Cs(t[i+1])),Ca(t,c,i,!0),Ca(t,c,i,!1),function(t,e,n,i,r){const s=r?t.residualClasses:t.residualStyles;null!=s&&"string"==typeof e&&gi(s,e)>=0&&(n[i+1]=ks(n[i+1]))}(e,c,t,i,s),o=Ss(a,l),s?e.classBindings=o:e.styleBindings=o}(r,s,e,n,o,i)}}function Ga(t,e,n,i,r){let s=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[r],s=Array.isArray(e),l=s?e[1]:e,c=null===l;let u=n[r+1];u===_s&&(u=c?$t:void 0);let h=c?fi(u,i):l===i?u:void 0;if(s&&!Ka(h)&&(h=fi(e,i)),Ka(h)&&(a=h,o))return a;const d=t[r+1];r=o?Es(d):Os(d)}if(null!==e){let t=s?e.residualClasses:e.residualStyles;null!=t&&(a=fi(t,i))}return a}function Ka(t){return void 0!==t}function Qa(t,e){return 0!=(t.flags&(e?16:32))}function Za(t,e=""){const n=Ue(),i=He(),r=t+20,s=i.firstCreatePass?Ms(i,r,1,e,null):i.data[r],o=n[r]=function(t,e){return Te(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Jr(i,n,o,s),qe(s,!1)}function Ja(t){return tl("",t,""),Ja}function tl(t,e,n){const i=Ue(),r=Qo(i,t,e,n);return r!==_s&&yo(i,mn(),r),tl}function el(t,e,n,i,r){const s=Ue(),o=function(t,e,n,i,r,s){const o=Yo(t,Je(),n,r);return en(2),o?e+bt(n)+i+bt(r)+s:_s}(s,t,e,n,i,r);return o!==_s&&yo(s,mn(),o),el}function nl(t,e,n){Ua(pi,Va,Qo(Ue(),t,e,n),!0)}function il(t,e,n){const i=Ue();return Xo(i,tn(),e)&&$s(He(),yn(),i,t,e,i[11],n,!0),il}function rl(t,e,n){const i=Ue();if(Xo(i,tn(),e)){const r=He(),s=yn();$s(r,s,i,t,e,go(sn(r.data),s,i),n,!0)}return rl}const sl=void 0;var ol=["en",[["a","p"],["AM","PM"],sl],[["AM","PM"],sl,sl],[["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"]],sl,[["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"]],sl,[["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}",sl,"{1} 'at' {0}",sl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){const e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let al={};function ll(t){return t in al||(al[t]=Ut.ng&&Ut.ng.common&&Ut.ng.common.locales&&Ut.ng.common.locales[t]),al[t]}var cl=(()=>((cl=cl||{})[cl.LocaleId=0]="LocaleId",cl[cl.DayPeriodsFormat=1]="DayPeriodsFormat",cl[cl.DayPeriodsStandalone=2]="DayPeriodsStandalone",cl[cl.DaysFormat=3]="DaysFormat",cl[cl.DaysStandalone=4]="DaysStandalone",cl[cl.MonthsFormat=5]="MonthsFormat",cl[cl.MonthsStandalone=6]="MonthsStandalone",cl[cl.Eras=7]="Eras",cl[cl.FirstDayOfWeek=8]="FirstDayOfWeek",cl[cl.WeekendRange=9]="WeekendRange",cl[cl.DateFormat=10]="DateFormat",cl[cl.TimeFormat=11]="TimeFormat",cl[cl.DateTimeFormat=12]="DateTimeFormat",cl[cl.NumberSymbols=13]="NumberSymbols",cl[cl.NumberFormats=14]="NumberFormats",cl[cl.CurrencyCode=15]="CurrencyCode",cl[cl.CurrencySymbol=16]="CurrencySymbol",cl[cl.CurrencyName=17]="CurrencyName",cl[cl.Currencies=18]="Currencies",cl[cl.Directionality=19]="Directionality",cl[cl.PluralCase=20]="PluralCase",cl[cl.ExtraData=21]="ExtraData",cl))();const ul="en-US";let hl=ul;function dl(t){_t(t,"Expected localeId to be defined"),"string"==typeof t&&(hl=t.toLowerCase().replace(/_/g,"-"))}function pl(t,e,n,i,r){if(t=ft(t),Array.isArray(t))for(let s=0;s>20;if(Do(t)||!t.multi){const i=new On(l,r,ea),p=ml(a,e,r?u:u+d,h);-1===p?(Un(Fn(c,o),s,a),fl(s,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=ml(a,e,u+d,h),f=ml(a,e,u,u+d),g=p>=0&&n[p],m=f>=0&&n[f];if(r&&!m||!r&&!g){Un(Fn(c,o),s,a);const u=function(t,e,n,i,r){const s=new On(t,n,ea);return s.multi=[],s.index=e,s.componentProviders=0,gl(s,r,i&&!n),s}(r?yl:bl,n.length,r,i,l);!r&&m&&(n[f].providerFactory=u),fl(s,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(u),o.push(u)}else fl(s,t,p>-1?p:f,gl(n[r?f:p],l,!r&&i));!r&&i&&m&&n[f].componentProviders++}}}function fl(t,e,n,i){const r=Do(e);if(r||function(t){return!!t.useClass}(e)){const s=(e.useClass||e).prototype.ngOnDestroy;if(s){const o=t.destroyHooks||(t.destroyHooks=[]);if(!r&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,s]):o[t+1].push(i,s)}else o.push(n,s)}}}function gl(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function ml(t,e,n,i){for(let r=n;r{n.providersResolver=(n,i)=>function(t,e,n){const i=He();if(i.firstCreatePass){const r=fe(t);pl(n,i.data,i.blueprint,r,!0),pl(e,i.data,i.blueprint,r,!1)}}(n,i?i(t):t,e)}}class wl{}const xl="ngComponent";class Sl{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${ut(t)}. Did you add it to @NgModule.entryComponents?`);return e[xl]=t,e}(t)}}class El{}function Cl(...t){}function Ol(t,e){return new kl(Me(t,e))}El.NULL=new Sl;const Tl=function(){return Ol(Ge(),Ue())};let kl=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=Tl,t})();function Al(t){return t instanceof kl?t.nativeElement:t}class Pl{}let Ml=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Il(),t})();const Il=function(){const t=Ue(),e=Re(Ge().index,t);return function(t){return t[11]}(ce(e)?e:t)};let Dl=(()=>{class t{}return t.\u0275prov=xt({token:t,providedIn:"root",factory:()=>null}),t})();class Rl{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Nl=new Rl("12.2.5");class Ll{constructor(){}supports(t){return Go(t)}create(t){return new Fl(t)}}const jl=(t,e)=>e;class Fl{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||jl}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,r=null;for(;e||n;){const s=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==r&&Object.is(r.trackById,i)?(s&&(r=this._verifyReinsertion(r,t,i,e)),Object.is(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,i,e),s=!0),r=r._next,e++}),this.length=e;return this._truncate(r),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;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=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,i)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,i)):t=this._addAfter(new Bl(e,n),r,i),t}_verifyReinsertion(t,e,n,i){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,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,r=t._nextRemoved;return null===i?this._removalsHead=r:i._nextRemoved=r,null===r?this._removalsTail=i:r._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 zl),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 zl),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 Bl{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 Vl{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 zl{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Vl,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 Ul(t,e,n){const i=t.previousIndex;if(null===i)return i;let r=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,r=n._next;return i&&(i._next=r),r&&(r._prev=i),n._next=null,n._prev=null,n}const n=new Gl(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 Gl{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}}function Wl(){return new ql([new Ll])}let ql=(()=>{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=>t.create(e,n||Wl()),deps:[[t,new Di,new Ii]]}}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 '${function(t){return t.name||typeof t}(t)}'`)}}return t.\u0275prov=xt({token:t,providedIn:"root",factory:Wl}),t})();function Xl(){return new Yl([new Hl])}let Yl=(()=>{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=>t.create(e,n||Xl()),deps:[[t,new Di,new Ii]]}}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=xt({token:t,providedIn:"root",factory:Xl}),t})();function Kl(t,e,n,i,r=!1){for(;null!==n;){const s=e[n.index];if(null!==s&&i.push(Ae(s)),ue(s))for(let t=10;t-1&&(Hr(t,n),hi(e,n))}this._attachedToViewContainer=!1}$r(this._lView[1],this._lView)}onDestroy(t){Us(this._lView[1],this._lView,null,t)}markForCheck(){ao(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){lo(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Qe(!0);try{lo(t,e,n)}finally{Qe(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function(t,e){rs(t,e,e[11],2,null,null)}(this._lView[1],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Zl extends Ql{constructor(t){super(t),this._view=t}detectChanges(){co(this._view)}checkNoChanges(){!function(t){Qe(!0);try{co(t)}finally{Qe(!1)}}(this._view)}get context(){return null}}const Jl=function(t){return function(t,e,n){if(de(t)&&!n){const n=Re(t.index,e);return new Ql(n,n)}return 47&t.type?new Ql(e[16],e):null}(Ge(),Ue(),16==(16&t))};let tc=(()=>{class t{}return t.__NG_ELEMENT_ID__=Jl,t})();const ec=[new Hl],nc=new ql([new Ll]),ic=new Yl(ec),rc=function(){return lc(Ge(),Ue())};let sc=(()=>{class t{}return t.__NG_ELEMENT_ID__=rc,t})();const oc=sc,ac=class extends oc{constructor(t,e,n){super(),this._declarationLView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=Ps(this._declarationLView,e,t,16,null,e.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];const i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Ds(e,n,t),new Ql(n)}};function lc(t,e){return 4&t.type?new ac(e,t,Ol(t,e)):null}class cc{}const uc=function(){return mc(Ge(),Ue())};let hc=(()=>{class t{}return t.__NG_ELEMENT_ID__=uc,t})();const dc=hc,pc=class extends dc{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=n}get element(){return Ol(this._hostTNode,this._hostLView)}get injector(){return new Jn(this._hostTNode,this._hostLView)}get parentInjector(){const t=zn(this._hostTNode,this._hostLView);if(In(t)){const e=Rn(t,this._hostLView),n=Dn(t);return new Jn(e[1].data[n+8],e)}return new Jn(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const e=fc(this._lContainer);return null!==e&&e[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,r){const s=n||this.parentInjector;if(!r&&null==t.ngModule&&s){const t=s.get(cc,null);t&&(r=t)}const o=t.create(s,i,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(function(t){return ue(t[3])}(n)){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new pc(e,e[6],e[3]);i.detach(i.indexOf(t))}}const r=this._adjustIndex(e),s=this._lContainer;!function(t,e,n,i){const r=10+i,s=n.length;i>0&&(n[r-1][4]=e),iPr});class wc extends wl{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=function(t){return t.map(vs).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return vc(this.componentDef.inputs)}get outputs(){return vc(this.componentDef.outputs)}create(t,e,n,i){const r=(i=i||this.ngModule)?function(t,e){return{get:(n,i,r)=>{const s=t.get(n,bc,r);return s!==bc||i===bc?s:e.get(n,i,r)}}}(t,i.injector):t,s=r.get(Pl,ke),o=r.get(Dl,null),a=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Te(t))return t.selectRootElement(e,n===jt.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):zr(s.createRenderer(null,this.componentDef),l,function(t){const e=t.toLowerCase();return"svg"===e?Ee:"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),u=this.componentDef.onPush?576:528,h=function(t,e){return{components:[],scheduler:t||Pr,clean:ho,playerHandler:e||null,flags:0}}(),d=zs(0,null,null,1,0,null,null,null,null,null),p=Ps(null,d,h,u,null,null,s,a,o,r);let f,g;un(p);try{const t=function(t,e,n,i,r,s){const o=n[1];n[20]=t;const a=Ms(o,20,2,"#host",null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(vo(a,l,!0),null!==t&&(Tn(r,t,l),null!==a.classes&&as(r,t,a.classes),null!==a.styles&&os(r,t,a.styles)));const c=i.createRenderer(t,e),u=Ps(n,Vs(e),null,e.onPush?64:16,n[20],a,i,c,s||null,null);return o.firstCreatePass&&(Un(Fn(a,n),o,e.type),Xs(o,a),Ks(a,n.length,1)),oo(n,u),n[20]=u}(c,this.componentDef,p,s,a);if(c)if(n)Tn(a,c,["ng-version",Nl.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,r=2;for(;i0&&as(a,c,e.join(" "))}if(g=Ie(d,20),void 0!==e){const t=g.projection=[];for(let n=0;nt(o,e)),e.contentQueries){const t=Ge();e.contentQueries(1,o,t.directiveStart)}const a=Ge();return!s.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(bn(a.index),Ws(n[1],a,0,a.directiveStart,a.directiveEnd,e),qs(e,o)),o}(t,this.componentDef,p,h,[Lo]),Ds(d,p,null)}finally{gn()}return new xc(this.componentType,f,Ol(g,p),p,g)}}class xc extends class{}{constructor(t,e,n,i,r){super(),this.location=n,this._rootLView=i,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new Zl(i),this.componentType=t}get injector(){return new Jn(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(t){this.hostView.onDestroy(t)}}const Sc=new Map;class Ec extends cc{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new yc(this);const n=le(t),i=function(t){return t[Yt]||null}(t);i&&dl(i),this._bootstrapComponents=Dr(n.bootstrap),this._r3Injector=To(t,e,[{provide:cc,useValue:this},{provide:El,useValue:this.componentFactoryResolver}],ut(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=No.THROW_IF_NOT_FOUND,n=Mt.Default){return t===No||t===cc||t===_o?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 Cc extends class{}{constructor(t){super(),this.moduleType=t,null!==le(t)&&function(t){const e=new Set;!function t(n){const i=le(n,!0),r=i.id;null!==r&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${ut(e)} vs ${ut(e.name)}`)}(r,Sc.get(r),n),Sc.set(r,n));const s=Dr(i.imports);for(const o of s)e.has(o)||(e.add(o),t(o))}(t)}(t)}create(t){return new Ec(this.moduleType,t)}}function Oc(t,e,n){const i=Ze()+t,r=Ue();return r[i]===_s?qo(r,i,n?e.call(n):e()):function(t,e){return t[e]}(r,i)}function Tc(t,e,n,i){return Pc(Ue(),Ze(),t,e,n,i)}function kc(t,e,n,i,r,s){return function(t,e,n,i,r,s,o,a){const l=e+n;return function(t,e,n,i,r){const s=Yo(t,e,n,i);return Xo(t,e+2,r)||s}(t,l,r,s,o)?qo(t,l+3,a?i.call(a,r,s,o):i(r,s,o)):Ac(t,l+3)}(Ue(),Ze(),t,e,n,i,r,s)}function Ac(t,e){const n=t[e];return n===_s?void 0:n}function Pc(t,e,n,i,r,s){const o=e+n;return Xo(t,o,r)?qo(t,o+1,s?i.call(s,r):i(r)):Ac(t,o+1)}function Mc(t,e){const n=He();let i;const r=t+20;n.firstCreatePass?(i=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const i=e[n];if(t===i.name)return i}throw new mt("302",`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[r]=i,i.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(r,i.onDestroy)):i=n.data[r];const s=i.factory||(i.factory=me(i.type)),o=Dt(ea);try{const t=Ln(!1),e=s();return Ln(t),function(t,e,n,i){n>=t.data.length&&(t.data[n]=null,t.blueprint[n]=null),e[n]=i}(n,Ue(),r,e),e}finally{Dt(o)}}function Ic(t,e,n){const i=t+20,r=Ue(),s=De(r,i);return function(t,e){$o.isWrapped(e)&&(e=$o.unwrap(e),t[Je()]=_s);return e}(r,function(t,e){return t[1].data[e].pure}(r,i)?Pc(r,Ze(),e,s.transform,n,s):s.transform(n))}function Dc(t){return e=>{setTimeout(t,void 0,e)}}const Rc=class extends P{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){var i,r,s;let o=t,a=e||(()=>null),l=n;if(t&&"object"==typeof t){const e=t;o=null===(i=e.next)||void 0===i?void 0:i.bind(e),a=null===(r=e.error)||void 0===r?void 0:r.bind(e),l=null===(s=e.complete)||void 0===s?void 0:s.bind(e)}this.__isAsync&&(a=Dc(a),o&&(o=Dc(o)),l&&(l=Dc(l)));const c=super.subscribe({next:o,error:a,complete:l});return t instanceof g&&t.add(c),c}};function Nc(){return this._results[Ho()]()}class Lc{constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const e=Ho(),n=Lc.prototype;n[e]||(n[e]=Nc)}get changes(){return this._changes||(this._changes=new Rc)}get(t){return this._results[t]}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,e){const n=this;n.dirty=!1;const i=li(t);(this._changesDetected=!function(t,e,n){if(t.length!==e.length)return!1;for(let i=0;i0)i.push(o[t/2]);else{const r=s[t+1],o=e[-n];for(let t=10;t{class t{constructor(t){this.appInits=t,this.resolve=Cl,this.reject=Cl,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.subscribe({complete:t,error:n})});t.push(n)}}Promise.all(t).then(()=>{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Ci(tu,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const nu=new oi("AppId"),iu={provide:nu,useFactory:function(){return`${ru()}${ru()}${ru()}`},deps:[]};function ru(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const su=new oi("Platform Initializer"),ou=new oi("Platform ID"),au=new oi("appBootstrapListener");let lu=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const cu=new oi("LocaleId"),uu=new oi("DefaultCurrencyCode");class hu{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const du=function(t){return new Cc(t)},pu=du,fu=function(t){return Promise.resolve(du(t))},gu=function(t){const e=du(t),n=Dr(le(t).declarations).reduce((t,e)=>{const n=ae(e);return n&&t.push(new wc(n)),t},[]);return new hu(e,n)},mu=gu,bu=function(t){return Promise.resolve(gu(t))};let yu=(()=>{class t{constructor(){this.compileModuleSync=pu,this.compileModuleAsync=fu,this.compileModuleAndAllComponentsSync=mu,this.compileModuleAndAllComponentsAsync=bu}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const vu=new oi("compilerOptions"),_u=(()=>Promise.resolve(0))();function wu(t){"undefined"==typeof Zone?_u.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class xu{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Rc(!1),this.onMicrotaskEmpty=new Rc(!1),this.onStable=new Rc(!1),this.onError=new Rc(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const i=this;i._nesting=0,i._outer=i._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(i._inner=i._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(i._inner=i._inner.fork(Zone.longStackTraceZoneSpec)),i.shouldCoalesceEventChangeDetection=!n&&e,i.shouldCoalesceRunChangeDetection=n,i.lastRequestAnimationFrameId=-1,i.nativeRequestAnimationFrame=function(){let t=Ut.requestAnimationFrame,e=Ut.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=()=>{!function(t){t.isCheckStableRunning||-1!==t.lastRequestAnimationFrameId||(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Ut,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Cu(t),t.isCheckStableRunning=!0,Eu(t),t.isCheckStableRunning=!1},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Cu(t))}(t)};t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(n,i,r,s,o,a)=>{try{return Ou(t),n.invokeTask(r,s,o,a)}finally{(t.shouldCoalesceEventChangeDetection&&"eventTask"===s.type||t.shouldCoalesceRunChangeDetection)&&e(),Tu(t)}},onInvoke:(n,i,r,s,o,a,l)=>{try{return Ou(t),n.invoke(r,s,o,a,l)}finally{t.shouldCoalesceRunChangeDetection&&e(),Tu(t)}},onHasTask:(e,n,i,r)=>{e.hasTask(i,r),n===i&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,Cu(t),Eu(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,n,i,r)=>(e.handleError(i,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(i)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!xu.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(xu.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 r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+i,t,Su,Cl,Cl);try{return r.runTask(s,e,n)}finally{r.cancelTask(s)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}const Su={};function Eu(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 Cu(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&-1!==t.lastRequestAnimationFrameId)}function Ou(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function Tu(t){t._nesting--,Eu(t)}class ku{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Rc,this.onMicrotaskEmpty=new Rc,this.onStable=new Rc,this.onError=new Rc}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 Au=(()=>{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:()=>{xu.assertNotInAngularZone(),wu(()=>{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())wu(()=>{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/plugins/task-tracking" 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)(Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Pu=(()=>{class t{constructor(){this._applications=new Map,Iu.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 Iu.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Mu{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Iu=new Mu,Du=!0,Ru=!1;function Nu(){return Ru=!0,Du}let Lu;const ju=new oi("AllowMultipleToken");function Fu(t,e,n=[]){const i=`Platform: ${e}`,r=new oi(i);return(e=[])=>{let s=Bu();if(!s||s.injector.get(ju,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0},{provide:xo,useValue:"platform"});!function(t){if(Lu&&!Lu.destroyed&&!Lu.injector.get(ju,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Lu=t.get(Vu);const e=t.get(su,null);e&&e.forEach(t=>t())}(No.create({providers:t,name:i}))}return function(t){const e=Bu();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}(r)}}function Bu(){return Lu&&!Lu.destroyed?Lu:null}let Vu=(()=>{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 ku:("zone.js"===t?void 0:t)||new xu({enableLongStackTrace:Nu(),shouldCoalesceEventChangeDetection:!!(null==e?void 0:e.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==e?void 0:e.ngZoneRunCoalescing)}),n}(e?e.ngZone:void 0,{ngZoneEventCoalescing:e&&e.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:e&&e.ngZoneRunCoalescing||!1}),i=[{provide:xu,useValue:n}];return n.run(()=>{const r=No.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(r),o=s.injector.get(Ar,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.runOutsideAngular(()=>{const t=n.onError.subscribe({next:t=>{o.handleError(t)}});s.onDestroy(()=>{Hu(this._modules,s),t.unsubscribe()})}),function(t,n,i){try{const e=i();return ha(e)?e.catch(e=>{throw n.runOutsideAngular(()=>t.handleError(e)),e}):e}catch(e){throw n.runOutsideAngular(()=>t.handleError(e)),e}}(o,n,()=>{const t=s.injector.get(eu);return t.runInitializers(),t.donePromise.then(()=>(dl(s.injector.get(cu,ul)||ul),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=zu({},e);return function(t,e,n){const i=new Cc(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Uu);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${ut(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)(Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function zu(t,e){return Array.isArray(e)?e.reduce(zu,t):Object.assign(Object.assign({},t),e)}let Uu=(()=>{class t{constructor(t,e,n,i,r){this._zone=t,this._injector=e,this._exceptionHandler=n,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const s=new C(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),o=new C(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{xu.assertNotInAngularZone(),wu(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{xu.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Q(s,o.pipe(at()))}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 wl?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=function(t){return t.isBoundToModule}(n)?void 0:this._injector.get(cc),r=n.create(No.NULL,[],e||n.selector,i),s=r.location.nativeElement,o=r.injector.get(Au,null),a=o&&r.injector.get(Pu);return o&&a&&a.registerApplication(s,o),r.onDestroy(()=>{this.detachView(r.hostView),Hu(this.components,r),a&&a.unregisterApplication(s)}),this._loadComponent(r),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}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;Hu(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(au,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(No),Ci(Ar),Ci(El),Ci(eu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Hu(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const $u=Fu(null,"core",[{provide:ou,useValue:"unknown"},{provide:Vu,deps:[No]},{provide:Pu,deps:[]},{provide:lu,deps:[]}]),Gu=[{provide:Uu,useClass:Uu,deps:[xu,No,Ar,El,eu]},{provide:_c,deps:[xu],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:eu,useClass:eu,deps:[[new Ii,tu]]},{provide:yu,useClass:yu,deps:[]},iu,{provide:ql,useFactory:function(){return nc},deps:[]},{provide:Yl,useFactory:function(){return ic},deps:[]},{provide:cu,useFactory:function(t){return dl(t=t||"undefined"!=typeof $localize&&$localize.locale||ul),t},deps:[[new Mi(cu),new Ii,new Di]]},{provide:uu,useValue:"USD"}];let Wu=(()=>{class t{constructor(t){}}return t.\u0275fac=function(e){return new(e||t)(Ci(Uu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Gu}),t})(),qu=null;function Xu(){return qu}const Yu=new oi("DocumentToken");let Ku=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:Qu,token:t,providedIn:"platform"}),t})();function Qu(){return Ci(Zu)}let Zu=(()=>{class t extends Ku{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xu().getBaseHref(this._doc)}onPopState(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("popstate",t,!1),()=>e.removeEventListener("popstate",t)}onHashChange(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("hashchange",t,!1),()=>e.removeEventListener("hashchange",t)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ju()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ju()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:th,token:t,providedIn:"platform"}),t})();function Ju(){return!!window.history.pushState}function th(){return new Zu(Ci(Yu))}function eh(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function nh(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function ih(t){return t&&"?"!==t[0]?"?"+t:t}let rh=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:sh,token:t,providedIn:"root"}),t})();function sh(t){const e=Ci(Yu).location;return new ah(Ci(Ku),e&&e.origin||"")}const oh=new oi("appBaseHref");let ah=(()=>{class t extends rh{constructor(t,e){if(super(),this._platformLocation=t,this._removeListenerFns=[],null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return eh(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ih(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformLocation).historyGo)||void 0===n||n.call(e,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ku),Ci(oh,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lh=(()=>{class t{constructor(t,e){this._subject=new Rc,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=nh(uh(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+ih(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,uh(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformStrategy).historyGo)||void 0===n||n.call(e,t)}onUrlChange(t){this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}))}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(rh),Ci(Ku))},t.normalizeQueryParams=ih,t.joinWithSlash=eh,t.stripTrailingSlash=nh,t.\u0275prov=xt({factory:ch,token:t,providedIn:"root"}),t})();function ch(){return new lh(Ci(rh),Ci(Ku))}function uh(t){return t.replace(/\/index.html$/,"")}var hh=(()=>((hh=hh||{})[hh.Zero=0]="Zero",hh[hh.One=1]="One",hh[hh.Two=2]="Two",hh[hh.Few=3]="Few",hh[hh.Many=4]="Many",hh[hh.Other=5]="Other",hh))();const dh=function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ll(e);if(n)return n;const i=e.split("-")[0];if(n=ll(i),n)return n;if("en"===i)return ol;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[cl.PluralCase]};class ph{}let fh=(()=>{class t extends ph{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(dh(e||this.locale)(t)){case hh.Zero:return"zero";case hh.One:return"one";case hh.Two:return"two";case hh.Few:return"few";case hh.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Ci(cu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function gh(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(r)}return null}let mh=(()=>{class t{constructor(t,e,n,i){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=i,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Go(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${ut(t.item)}`);this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(Yl),ea(kl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class bh{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 yh=(()=>{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){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${e}' of type '${function(t){return t.name||typeof t}(e)}'. NgFor only supports binding to Iterables such as Arrays.`)}}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 bh(null,this._ngForOf,-1,-1),null===i?void 0:i),r=new vh(t,n);e.push(r)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,i);const s=new vh(t,r);e.push(s)}});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)(ea(hc),ea(sc),ea(ql))},t.\u0275dir=se({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class vh{constructor(t,e){this.record=t,this.view=e}}let _h=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new wh,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){xh("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){xh("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)(ea(hc),ea(sc))},t.\u0275dir=se({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class wh{constructor(){this.$implicit=null,this.ngIf=null}}function xh(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${ut(e)}'.`)}class Sh{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 Eh=(()=>{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 Sh(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),Oh=(()=>{class t{constructor(t,e,n){n._addDefault(new Sh(t,e))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchDefault",""]]}),t})(),Th=(()=>{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)(ea(kl),ea(Yl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),kh=(()=>{class t{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){if(t.ngTemplateOutlet){const t=this._viewContainerRef;this._viewRef&&t.remove(t.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?t.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else this._viewRef&&t.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return t.\u0275fac=function(e){return new(e||t)(ea(hc))},t.\u0275dir=se({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[ye]}),t})();class Ah{createSubscription(t,e){return t.subscribe({next:e,error:t=>{throw t}})}dispose(t){t.unsubscribe()}onDestroy(t){t.unsubscribe()}}class Ph{createSubscription(t,e){return t.then(e,t=>{throw t})}dispose(t){}onDestroy(t){}}const Mh=new Ph,Ih=new Ah;let Dh=(()=>{class t{constructor(t){this._ref=t,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):this._latestValue:(t&&this._subscribe(t),this._latestValue)}_subscribe(t){this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,e=>this._updateLatestValue(t,e))}_selectStrategy(e){if(ha(e))return Mh;if(da(e))return Ih;throw function(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${ut(t)}'`)}(t,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())}}return t.\u0275fac=function(e){return new(e||t)(ea(tc,16))},t.\u0275pipe=oe({name:"async",type:t,pure:!1}),t})(),Rh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:ph,useClass:fh}]}),t})();const Nh="browser";function Lh(t){return t===Nh}class jh{}class Fh extends class extends class{}{constructor(){super(...arguments),this.supportsDOMEvents=!0}}{static makeCurrent(){!function(t){qu||(qu=t)}(new Fh)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}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}getBaseHref(t){const e=(Vh=Vh||document.querySelector("base"),Vh?Vh.getAttribute("href"):null);return null==e?null:function(t){Bh=Bh||document.createElement("a"),Bh.setAttribute("href",t);const e=Bh.pathname;return"/"===e.charAt(0)?e:`/${e}`}(e)}resetBaseElement(){Vh=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return gh(document.cookie,t)}}let Bh,Vh=null;const zh=new oi("TRANSITION_ID"),Uh=[{provide:tu,useFactory:function(t,e,n){return()=>{n.get(eu).donePromise.then(()=>{const n=Xu(),i=e.querySelectorAll(`style[ng-transition="${t}"]`);for(let t=0;t{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Ut.getAllAngularTestabilities=()=>t.getAllTestabilities(),Ut.getAllAngularRootElements=()=>t.getAllRootElements(),Ut.frameworkStabilizers||(Ut.frameworkStabilizers=[]),Ut.frameworkStabilizers.push(t=>{const e=Ut.getAllAngularTestabilities();let n=e.length,i=!1;const r=function(e){i=i||e,n--,0==n&&t(i)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?Xu().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}let $h=(()=>{class t{build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gh=new oi("EventManagerPlugins");let Wh=(()=>{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=xt({token:t,factory:t.\u0275fac}),t})(),Yh=(()=>{class t extends Xh{constructor(t){super(),this._doc=t,this._hostNodes=new Map,this._hostNodes.set(t.head,[])}_addStylesToHost(t,e,n){t.forEach(t=>{const i=this._doc.createElement("style");i.textContent=t,n.push(e.appendChild(i))})}addHost(t){const e=[];this._addStylesToHost(this._stylesSet,t,e),this._hostNodes.set(t,e)}removeHost(t){const e=this._hostNodes.get(t);e&&e.forEach(Kh),this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach((e,n)=>{this._addStylesToHost(t,n,e)})}ngOnDestroy(){this._hostNodes.forEach(t=>t.forEach(Kh))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Kh(t){Xu().remove(t)}const Qh={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/"},Zh=/%COMP%/g;function Jh(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ed=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new nd(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new id(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case jt.ShadowDom:return new rd(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Jh(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)(Ci(Wh),Ci(Yh),Ci(nu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class nd{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Qh[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 r=Qh[i];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Qh[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&(Rr.DashCase|Rr.Important)?t.style.setProperty(e,n,i&Rr.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&Rr.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,td(n)):this.eventManager.addEventListener(t,e,td(n))}}class id extends nd{constructor(t,e,n,i){super(t),this.component=n;const r=Jh(i+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=function(t){return"_ngcontent-%COMP%".replace(Zh,t)}(i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Zh,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 rd extends nd{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=Jh(i.id,i.styles,[]);for(let s=0;s{class t extends qh{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)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const od=["alt","control","meta","shift"],ad={"\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"},ld={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"},cd={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let ud=(()=>{class t extends qh{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const r=t.parseEventName(n),s=t.eventCallback(r.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xu().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const r=t._normalizeKey(n.pop());let s="";if(od.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),s+=t+".")}),s+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=i,o.fullKey=s,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&&ld.hasOwnProperty(e)&&(e=ld[e]))}return ad[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),od.forEach(i=>{i!=n&&cd[i](t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return r=>{t.getEventFullKey(r)===e&&i.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),hd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return Ci(dd)},token:t,providedIn:"root"}),t})(),dd=(()=>{class t extends hd{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case yr.NONE:return e;case yr.HTML:return qi(e,"HTML")?Wi(e):mr(this._doc,String(e)).toString();case yr.STYLE:return qi(e,"Style")?Wi(e):e;case yr.SCRIPT:if(qi(e,"Script"))return Wi(e);throw new Error("unsafe value used in a script context");case yr.URL:return Xi(e),qi(e,"URL")?Wi(e):Ji(String(e));case yr.RESOURCE_URL:if(qi(e,"ResourceURL"))return Wi(e);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return function(t){return new zi(t)}(t)}bypassSecurityTrustStyle(t){return function(t){return new Ui(t)}(t)}bypassSecurityTrustScript(t){return function(t){return new Hi(t)}(t)}bypassSecurityTrustUrl(t){return function(t){return new $i(t)}(t)}bypassSecurityTrustResourceUrl(t){return function(t){return new Gi(t)}(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return function(t){return new dd(t.get(Yu))}(Ci(_o))},token:t,providedIn:"root"}),t})();const pd=Fu($u,"browser",[{provide:ou,useValue:Nh},{provide:su,useValue:function(){Fh.makeCurrent(),Hh.init()},multi:!0},{provide:Yu,useFactory:function(){return function(t){Ce=t}(document),document},deps:[]}]),fd=[[],{provide:xo,useValue:"root"},{provide:Ar,useFactory:function(){return new Ar},deps:[]},{provide:Gh,useClass:sd,multi:!0,deps:[Yu,xu,ou]},{provide:Gh,useClass:ud,multi:!0,deps:[Yu]},[],{provide:ed,useClass:ed,deps:[Wh,Yh,nu]},{provide:Pl,useExisting:ed},{provide:Xh,useExisting:Yh},{provide:Yh,useClass:Yh,deps:[Yu]},{provide:Au,useClass:Au,deps:[xu]},{provide:Wh,useClass:Wh,deps:[Gh,xu]},{provide:jh,useClass:$h,deps:[]},[]];let gd=(()=>{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:nu,useValue:e.appId},{provide:zh,useExisting:nu},Uh]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:fd,imports:[Rh,Wu]}),t})();function md(t){return null!=t&&"false"!=`${t}`}function bd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function yd(t){return Array.isArray(t)?t:[t]}function vd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function _d(t){return t instanceof kl?t.nativeElement:t}function wd(...t){let e=t[t.length-1];return I(e)?(t.pop(),z(t,e)):K(t)}function xd(t,e,n,i){return a(n)&&(i=n,n=void 0),i?xd(t,e,n).pipe(D(t=>d(t)?i(...t):i(t))):new C(i=>{Sd(t,e,function(t){i.next(arguments.length>1?Array.prototype.slice.call(arguments):t)},i,n)})}function Sd(t,e,n,i,r){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){const i=t;t.addEventListener(e,n,r),s=()=>i.removeEventListener(e,n,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){const i=t;t.on(e,n),s=()=>i.off(e,n)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){const i=t;t.addListener(e,n),s=()=>i.removeListener(e,n)}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(let s=0,o=t.length;s{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 Td extends Od{constructor(t,e=Od.now){super(t,()=>Td.delegate&&Td.delegate!==this?Td.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return Td.delegate&&Td.delegate!==this?Td.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}}}new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?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 kd=1;const Ad=Promise.resolve(),Pd={};function Md(t){return t in Pd&&(delete Pd[t],!0)}const Id={setImmediate(t){const e=kd++;return Pd[e]=!0,Ad.then(()=>Md(e)&&t()),e},clearImmediate(t){Md(t)}};new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=Id.setImmediate(t.flush.bind(t,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&&(Id.clearImmediate(e),t.scheduled=void 0)}});function Dd(t){return!!t&&(t instanceof C||"function"==typeof t.lift&&"function"==typeof t.subscribe)}function Rd(t,e){return n=>n.lift(new Nd(t,e))}class Nd{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new Ld(t,this.compare,this.keySelector))}}class Ld extends v{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(i){return this.destination.error(i)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(i){return this.destination.error(i)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}const jd=new Td(Cd);class Fd{constructor(t){this.durationSelector=t}call(t,e){return e.subscribe(new Bd(t,this.durationSelector))}}class Bd extends ${constructor(t,e){super(t),this.durationSelector=e,this.hasValue=!1}_next(t){if(this.value=t,this.hasValue=!0,!this.throttled){let n;try{const{durationSelector:e}=this;n=e(t)}catch(e){return this.destination.error(e)}const i=G(n,new H(this));!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}clearThrottle(){const{value:t,hasValue:e,throttled:n}=this;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),e&&(this.value=void 0,this.hasValue=!1,this.destination.next(t))}notifyNext(){this.clearThrottle()}notifyComplete(){this.clearThrottle()}}function Vd(t){return!d(t)&&t-parseFloat(t)+1>=0}function zd(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 Ud(t,e=jd){return function(t){return function(e){return e.lift(new Fd(t))}}(()=>function(t=0,e,n){let i=-1;return Vd(e)?i=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=jd),new C(e=>{const r=Vd(t)?t:+t-n.now();return n.schedule(zd,r,{index:0,period:i,subscriber:e})})}(t,e))}function Hd(t,e){return function(n){return n.lift(new $d(t,e))}}class $d{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new Gd(t,this.predicate,this.thisArg))}}class Gd extends v{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 Wd(t){return e=>e.lift(new qd(t))}class qd{constructor(t){this.notifier=t}call(t,e){const n=new Xd(t),i=G(this.notifier,new H(n));return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class Xd extends ${constructor(t){super(t),this.seenValue=!1}notifyNext(){this.seenValue=!0,this.complete()}notifyComplete(){}}function Yd(...t){return Y(1)(wd(...t))}function Kd(...t){const e=t[t.length-1];return I(e)?(t.pop(),n=>Yd(t,n,e)):e=>Yd(t,e)}function Qd(t,e){return"function"==typeof e?n=>n.pipe(Qd((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new Zd(t))}class Zd{constructor(t){this.project=t}call(t,e){return e.subscribe(new Jd(t,this.project))}}class Jd extends ${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)}_innerSub(t){const e=this.innerSubscription;e&&e.unsubscribe();const n=new H(this),i=this.destination;i.add(n),this.innerSubscription=G(t,n),this.innerSubscription!==n&&i.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;(!t||t.closed)&&super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=void 0}notifyComplete(){this.innerSubscription=void 0,this.isStopped&&super._complete()}notifyNext(t){this.destination.next(t)}}const tp=new class extends Td{}(class extends Cd{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}),ep=new C(t=>t.complete());function np(t){return t?function(t){return new C(e=>t.schedule(()=>e.complete()))}(t):ep}function ip(t,e){return new C(e?n=>e.schedule(rp,0,{error:t,subscriber:n}):e=>e.error(t))}function rp({error:t,subscriber:e}){e.error(t)}class sp{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return wd(this.value);case"E":return ip(this.error);case"C":return np()}throw new Error("unexpected notification kind value")}static createNext(t){return void 0!==t?new sp("N",t):sp.undefinedValueNotification}static createError(t){return new sp("E",void 0,t)}static createComplete(){return sp.completeNotification}}sp.completeNotification=new sp("C"),sp.undefinedValueNotification=new sp("N",void 0);class op extends v{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(op.dispatch,this.delay,new ap(t,this.destination)))}_next(t){this.scheduleMessage(sp.createNext(t))}_error(t){this.scheduleMessage(sp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(sp.createComplete()),this.unsubscribe()}}class ap{constructor(t,e){this.notification=t,this.destination=e}}class lp extends P{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){if(!this.isStopped){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift()}super.next(t)}nextTimeWindow(t){this.isStopped||(this._events.push(new cp(this._getNow(),t)),this._trimBufferThenGetEvents()),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),i=this.scheduler,r=n.length;let s;if(this.closed)throw new T;if(this.isStopped||this.hasError?s=g.EMPTY:(this.observers.push(t),s=new k(this,t)),i&&t.add(t=new op(t,i)),e)for(let o=0;oe&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i}}class cp{constructor(t,e){this.time=t,this.value=e}}function up(t,e,n){let i;return i=t&&"object"==typeof t?t:{bufferSize:t,windowTime:e,refCount:!1,scheduler:n},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:i}){let r,s,o=0,a=!1,l=!1;return function(c){let u;o++,!r||a?(a=!1,r=new lp(t,e,i),u=r.subscribe(this),s=c.subscribe({next(t){r.next(t)},error(t){a=!0,r.error(t)},complete(){l=!0,s=void 0,r.complete()}}),l&&(s=void 0)):u=r.subscribe(this),this.add(()=>{o--,u.unsubscribe(),u=void 0,s&&!l&&n&&0===o&&(s.unsubscribe(),s=void 0,r=void 0)})}}(i))}let hp;try{hp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(m){hp=!1}let dp,pp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Lh(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&&!hp)&&"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)(Ci(ou))},t.\u0275prov=xt({factory:function(){return new t(Ci(ou))},token:t,providedIn:"root"}),t})(),fp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const gp=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function mp(){if(dp)return dp;if("object"!=typeof document||!document)return dp=new Set(gp),dp;let t=document.createElement("input");return dp=new Set(gp.filter(e=>(t.setAttribute("type",e),t.type===e))),dp}let bp,yp,vp;function _p(t){return function(){if(null==bp&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>bp=!0}))}finally{bp=bp||!1}return bp}()?t:!!t.capture}function wp(){if(null==yp){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return yp=!1,yp;if("scrollBehavior"in document.documentElement.style)yp=!0;else{const t=Element.prototype.scrollTo;yp=!!t&&!/\{\s*\[native code\]\s*\}/.test(t.toString())}}return yp}function xp(t){if(function(){if(null==vp){const t="undefined"!=typeof document?document.head:null;vp=!(!t||!t.createShadowRoot&&!t.attachShadow)}return vp}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}function Sp(){let t="undefined"!=typeof document&&document?document.activeElement:null;for(;t&&t.shadowRoot;){const e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}function Ep(t){return t.composedPath?t.composedPath()[0]:t.target}const Cp=new oi("cdk-dir-doc",{providedIn:"root",factory:function(){return Oi(Yu)}});let Op=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Rc,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)(Ci(Cp,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Cp,8))},token:t,providedIn:"root"}),t})(),Tp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class kp{constructor(t=!1,e,n=!0){this._multiple=t,this._emitChanges=n,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new P,e&&e.length&&(t?e.forEach(t=>this._markSelected(t)):this._markSelected(e[0]),this._selectedToEmit.length=0)}get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}select(...t){this._verifyValueAssignment(t),t.forEach(t=>this._markSelected(t)),this._emitChangeEvent()}deselect(...t){this._verifyValueAssignment(t),t.forEach(t=>this._unmarkSelected(t)),this._emitChangeEvent()}toggle(t){this.isSelected(t)?this.deselect(t):this.select(t)}clear(){this._unmarkAll(),this._emitChangeEvent()}isSelected(t){return this._selection.has(t)}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(t){this._multiple&&this.selected&&this._selected.sort(t)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(t){this.isSelected(t)||(this._multiple||this._unmarkAll(),this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))}_unmarkSelected(t){this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))}_unmarkAll(){this.isEmpty()||this._selection.forEach(t=>this._unmarkSelected(t))}_verifyValueAssignment(t){}}let Ap=(()=>{class t{constructor(){this._listeners=[]}notify(t,e){for(let n of this._listeners)n(t,e)}listen(t){return this._listeners.push(t),()=>{this._listeners=this._listeners.filter(e=>t!==e)}}ngOnDestroy(){this._listeners=[]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Pp=(()=>{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new P,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 C(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(Ud(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):wd()}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(Hd(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(t,e){let n=_d(e),i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>xd(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)(Ci(xu),Ci(pp),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Mp=(()=>{class t{constructor(t,e,n){this._platform=t,this._change=new P,this._changeListener=t=>{this._change.next(t)},this._document=n,e.runOutsideAngular(()=>{if(t.isBrowser){const t=this._getWindow();t.addEventListener("resize",this._changeListener),t.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const t=this._getWindow();t.removeEventListener("resize",this._changeListener),t.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}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._document,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(Ud(t)):this._change}_getWindow(){return this._document.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)(Ci(pp),Ci(xu),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Ip=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),Dp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp,fp,Ip],Tp,Ip]}),t})();class Rp{attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;null!=t&&(this._attachedHost=null,t.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class Np extends Rp{constructor(t,e,n,i){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=i}}class Lp extends Rp{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class jp extends Rp{constructor(t){super(),this.element=t instanceof kl?t.nativeElement:t}}class Fp{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(t){return t instanceof Np?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof Lp?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof jp?(this._attachedPortal=t,this.attachDomPortal(t)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class Bp extends Fp{constructor(t,e,n,i,r){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=i,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");e.parentNode.insertBefore(n,e),this.outletElement.appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=r}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),this._attachedPortal=t,n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),n.detectChanges(),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),this._attachedPortal=t,n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let Vp=(()=>{class t extends Lp{constructor(t,e){super(t,e)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc),ea(hc))},t.\u0275dir=se({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[jo]}),t})(),zp=(()=>{class t extends Vp{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[_l([{provide:Vp,useExisting:t}]),jo]}),t})(),Up=(()=>{class t extends Fp{constructor(t,e,n){super(),this._componentFactoryResolver=t,this._viewContainerRef=e,this._isInitialized=!1,this.attached=new Rc,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");t.setAttachedHost(this),e.parentNode.insertBefore(n,e),this._getRootNode().appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=n}get portal(){return this._attachedPortal}set portal(t){this.hasAttached()&&!t&&!this._isInitialized||(this.hasAttached()&&super.detach(),t&&super.attach(t),this._attachedPortal=t)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedPortal=null,this._attachedRef=null}attachComponentPortal(t){t.setAttachedHost(this);const e=null!=t.viewContainerRef?t.viewContainerRef:this._viewContainerRef,n=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component),i=e.createComponent(n,e.length,t.injector||e.injector);return e!==this._viewContainerRef&&this._getRootNode().appendChild(i.hostView.rootNodes[0]),super.setDisposeFn(()=>i.destroy()),this._attachedPortal=t,this._attachedRef=i,this.attached.emit(i),i}attachTemplatePortal(t){t.setAttachedHost(this);const e=this._viewContainerRef.createEmbeddedView(t.templateRef,t.context);return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=t,this._attachedRef=e,this.attached.emit(e),e}_getRootNode(){const t=this._viewContainerRef.element.nativeElement;return t.nodeType===t.ELEMENT_NODE?t:t.parentNode}}return t.\u0275fac=function(e){return new(e||t)(ea(El),ea(hc),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[jo]}),t})(),Hp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const $p=(()=>{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 Gp(t){return e=>0===t?np():e.lift(new Wp(t))}class Wp{constructor(t){if(this.total=t,this.total<0)throw new $p}call(t,e){return e.subscribe(new qp(t,this.total))}}class qp extends v{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 Xp(t,e=!1){return n=>n.lift(new Yp(t,e))}class Yp{constructor(t,e){this.predicate=t,this.inclusive=e}call(t,e){return e.subscribe(new Kp(t,this.predicate,this.inclusive))}}class Kp extends v{constructor(t,e,n){super(t),this.predicate=e,this.inclusive=n,this.index=0}_next(t){const e=this.destination;let n;try{n=this.predicate(t,this.index++)}catch(i){return void e.error(i)}this.nextOrComplete(t,n)}nextOrComplete(t,e){const n=this.destination;Boolean(e)?n.next(t):(this.inclusive&&n.next(t),n.complete())}}function Qp(t,...e){return e.length?e.some(e=>t[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}const Zp=wp();class Jp{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=vd(-this._previousScrollPosition.left),t.style.top=vd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,i=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),Zp&&(e.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),Zp&&(e.scrollBehavior=i,n.scrollBehavior=r)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}class tf{constructor(t,e,n,i){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=i,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(t){this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class ef{enable(){}disable(){}attach(){}}function nf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function rf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class sf{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=i,this._scrollSubscription=null}attach(t){this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();nf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let of=(()=>{class t{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=()=>new ef,this.close=t=>new tf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t),this.block=()=>new Jp(this._viewportRuler,this._document),this.reposition=t=>new sf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t),this._document=i}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();class af{constructor(t){if(this.scrollStrategy=new ef,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){const e=Object.keys(t);for(const n of e)void 0!==t[n]&&(this[n]=t[n])}}}class lf{constructor(t,e,n,i,r){this.offsetX=n,this.offsetY=i,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}class cf{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}let uf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._document=t}ngOnDestroy(){this.detach()}add(t){this.remove(t),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this.detach()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),hf=(()=>{class t extends uf{constructor(t){super(t),this._keydownListener=t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEvents.observers.length>0){e[n]._keydownEvents.next(t);break}}}add(t){super.add(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),df=(()=>{class t extends uf{constructor(t,e){super(t),this._platform=e,this._cursorStyleIsSet=!1,this._clickListener=t=>{const e=Ep(t),n=this._attachedOverlays.slice();for(let i=n.length-1;i>-1;i--){const r=n[i];if(!(r._outsidePointerEvents.observers.length<1)&&r.hasAttached()){if(r.overlayElement.contains(e))break;r._outsidePointerEvents.next(t)}}}}add(t){if(super.add(t),!this._isAttached){const t=this._document.body;t.addEventListener("click",this._clickListener,!0),t.addEventListener("auxclick",this._clickListener,!0),t.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const t=this._document.body;t.removeEventListener("click",this._clickListener,!0),t.removeEventListener("auxclick",this._clickListener,!0),t.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(t.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu),Ci(pp))},token:t,providedIn:"root"}),t})();const pf="undefined"!=typeof window?window:{},ff=void 0!==pf.__karma__&&!!pf.__karma__||void 0!==pf.jasmine&&!!pf.jasmine||void 0!==pf.jest&&!!pf.jest||void 0!==pf.Mocha&&!!pf.Mocha;let gf=(()=>{class t{constructor(t,e){this._platform=e,this._document=t}ngOnDestroy(){const t=this._containerElement;t&&t.parentNode&&t.parentNode.removeChild(t)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t="cdk-overlay-container";if(this._platform.isBrowser||ff){const e=this._document.querySelectorAll(`.${t}[platform="server"], .${t}[platform="test"]`);for(let t=0;tthis._backdropClick.next(t),this._keydownEvents=new P,this._outsidePointerEvents=new P,i.scrollStrategy&&(this._scrollStrategy=i.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=i.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){const t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this.detachBackdrop(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host&&this._host.parentNode&&(this._host.parentNode.removeChild(this._host),this._host=null),this._previousHostParent=this._pane=null,t&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign(Object.assign({},this._config),t),this._updateElementSize()}setDirection(t){this._config=Object.assign(Object.assign({},this._config),{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const t=this._pane.style;t.width=vd(this._config.width),t.height=vd(this._config.height),t.minWidth=vd(this._config.minWidth),t.minHeight=vd(this._config.minHeight),t.maxWidth=vd(this._config.maxWidth),t.maxHeight=vd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachBackdrop(){const t="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(t)})}):this._backdropElement.classList.add(t)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t=this._backdropElement;if(!t)return;let e,n=()=>{t&&(t.removeEventListener("click",this._backdropClickHandler),t.removeEventListener("transitionend",n),t.parentNode&&t.parentNode.removeChild(t)),this._backdropElement==t&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(t,this._config.backdropClass,!1),clearTimeout(e)};t.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{t.addEventListener("transitionend",n)}),t.style.pointerEvents="none",e=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const i=t.classList;yd(e).forEach(t=>{t&&(n?i.add(t):i.remove(t))})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.pipe(Wd(Q(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const bf="cdk-overlay-connected-position-bounding-box",yf=/([A-Za-z%]+)$/;class vf{constructor(t,e,n,i,r){this._viewportRuler=e,this._document=n,this._platform=i,this._overlayContainer=r,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new P,this._resizeSubscription=g.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){this._validatePositions(),t.hostElement.classList.add(bf),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,i=[];let r;for(let s of this._preferredPositions){let o=this._getOriginPoint(t,s),a=this._getOverlayPoint(o,e,s),l=this._getOverlayFit(a,e,n,s);if(l.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(s,o);this._canFitWithFlexibleDimensions(l,a,n)?i.push({position:s,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,s)}):(!r||r.overlayFit.visibleAreae&&(e=i,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&_f(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(bf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,i;if("center"==e.originX)n=t.left+t.width/2;else{const i=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?i:r}return i="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom,{x:n,y:i}}_getOverlayPoint(t,e,n){let i,r;return i="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height,{x:t.x+i,y:t.y+r}}_getOverlayFit(t,e,n,i){const r=xf(e);let{x:s,y:o}=t,a=this._getOffset(i,"x"),l=this._getOffset(i,"y");a&&(s+=a),l&&(o+=l);let c=0-o,u=o+r.height-n.height,h=this._subtractOverflows(r.width,0-s,s+r.width-n.width),d=this._subtractOverflows(r.height,c,u),p=h*d;return{visibleArea:p,isCompletelyWithinViewport:r.width*r.height===p,fitsInViewportVertically:d===r.height,fitsInViewportHorizontally:h==r.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const i=n.bottom-e.y,r=n.right-e.x,s=wf(this._overlayRef.getConfig().minHeight),o=wf(this._overlayRef.getConfig().minWidth),a=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=s&&s<=i)&&a}return!1}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const i=xf(e),r=this._viewportRect,s=Math.max(t.x+i.width-r.width,0),o=Math.max(t.y+i.height-r.height,0),a=Math.max(r.top-n.top-t.y,0),l=Math.max(r.left-n.left-t.x,0);let c=0,u=0;return c=i.width<=r.width?l||-s:t.xi&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.y-i/2)}if("end"===e.overlayX&&!i||"start"===e.overlayX&&i)c=n.width-t.x+this._viewportMargin,a=t.x-this._viewportMargin;else if("start"===e.overlayX&&!i||"end"===e.overlayX&&i)l=t.x,a=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),i=this._lastBoundingBoxSize.width;a=2*e,l=t.x-e,a>i&&!this._isInitialRender&&!this._growAfterOpen&&(l=t.x-i/2)}return{top:s,left:l,bottom:o,right:c,width:a,height:r}}_setBoundingBoxStyles(t,e){const n=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));const i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;i.height=vd(n.height),i.top=vd(n.top),i.bottom=vd(n.bottom),i.width=vd(n.width),i.left=vd(n.left),i.right=vd(n.right),i.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",i.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(i.maxHeight=vd(t)),r&&(i.maxWidth=vd(r))}this._lastBoundingBoxSize=n,_f(this._boundingBox.style,i)}_resetBoundingBoxStyles(){_f(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){_f(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,s=this._overlayRef.getConfig();if(i){const i=this._viewportRuler.getViewportScrollPosition();_f(n,this._getExactOverlayY(e,t,i)),_f(n,this._getExactOverlayX(e,t,i))}else n.position="static";let o="",a=this._getOffset(e,"x"),l=this._getOffset(e,"y");a&&(o+=`translateX(${a}px) `),l&&(o+=`translateY(${l}px)`),n.transform=o.trim(),s.maxHeight&&(i?n.maxHeight=vd(s.maxHeight):r&&(n.maxHeight="")),s.maxWidth&&(i?n.maxWidth=vd(s.maxWidth):r&&(n.maxWidth="")),_f(this._pane.style,n)}_getExactOverlayY(t,e,n){let i={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let s=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=s,"bottom"===t.overlayY?i.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":i.top=vd(r.y),i}_getExactOverlayX(t,e,n){let i,r={left:"",right:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,n)),i=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left","right"===i?r.right=this._document.documentElement.clientWidth-(s.x+this._overlayRect.width)+"px":r.left=vd(s.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:rf(t,n),isOriginOutsideView:nf(t,n),isOverlayClipped:rf(e,n),isOverlayOutsideView:nf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,n=this._viewportRuler.getViewportScrollPosition();return{top:n.top+this._viewportMargin,left:n.left+this._viewportMargin,right:n.left+t-this._viewportMargin,bottom:n.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&yd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;if(t instanceof kl)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();const e=t.width||0,n=t.height||0;return{top:t.y,bottom:t.y+n,left:t.x,right:t.x+e,height:n,width:e}}}function _f(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function wf(t){if("number"!=typeof t&&null!=t){const[e,n]=t.split(yf);return n&&"px"!==n?null:parseFloat(e)}return t||null}function xf(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}class Sf{constructor(t,e,n,i,r,s,o){this._preferredPositions=[],this._positionStrategy=new vf(n,i,r,s,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e),this.onPositionChange=this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,i){const r=new lf(t,e,n,i);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Ef="cdk-global-overlay-wrapper";class Cf{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(Ef),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),{width:i,height:r,maxWidth:s,maxHeight:o}=n,a=!("100%"!==i&&"100vw"!==i||s&&"100%"!==s&&"100vw"!==s),l=!("100%"!==r&&"100vh"!==r||o&&"100%"!==o&&"100vh"!==o);t.position=this._cssPosition,t.marginLeft=a?"0":this._leftOffset,t.marginTop=l?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,a?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=l?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Ef),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}let Of=(()=>{class t{constructor(t,e,n,i){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=i}global(){return new Cf}connectedTo(t,e,n){return new Sf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new vf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},t.\u0275prov=xt({factory:function(){return new t(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},token:t,providedIn:"root"}),t})(),Tf=0,kf=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=i,this._keyboardDispatcher=r,this._injector=s,this._ngZone=o,this._document=a,this._directionality=l,this._location=c,this._outsideClickDispatcher=u}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),i=this._createPortalOutlet(n),r=new af(t);return r.direction=r.direction||this._directionality.value,new mf(i,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id="cdk-overlay-"+Tf++,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(Uu)),new Bp(t,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Ci(of),Ci(gf),Ci(El),Ci(Of),Ci(hf),Ci(No),Ci(xu),Ci(Yu),Ci(Op),Ci(lh),Ci(df))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Af=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Pf=new oi("cdk-connected-overlay-scroll-strategy");let Mf=(()=>{class t{constructor(t){this.elementRef=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl))},t.\u0275dir=se({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t})(),If=(()=>{class t{constructor(t,e,n,i,r){this._overlay=t,this._dir=r,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=g.EMPTY,this._attachSubscription=g.EMPTY,this._detachSubscription=g.EMPTY,this._positionSubscription=g.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Rc,this.positionChange=new Rc,this.attach=new Rc,this.detach=new Rc,this.overlayKeydown=new Rc,this.overlayOutsideClick=new Rc,this._templatePortal=new Lp(e,n),this._scrollStrategyFactory=i,this.scrollStrategy=this._scrollStrategyFactory()}get offsetX(){return this._offsetX}set offsetX(t){this._offsetX=t,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(t){this._offsetY=t,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(t){this._hasBackdrop=md(t)}get lockPosition(){return this._lockPosition}set lockPosition(t){this._lockPosition=md(t)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(t){this._flexibleDimensions=md(t)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(t){this._growAfterOpen=md(t)}get push(){return this._push}set push(t){this._push=md(t)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(t){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),t.origin&&this.open&&this._position.apply()),t.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Af);const t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=t.detachments().subscribe(()=>this.detach.emit()),t.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),27===t.keyCode&&!this.disableClose&&!Qp(t)&&(t.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{this.overlayOutsideClick.next(t)})}_buildConfig(){const t=this._position=this.positionStrategy||this._createPositionStrategy(),e=new af({direction:this._dir,positionStrategy:t,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(e.width=this.width),(this.height||0===this.height)&&(e.height=this.height),(this.minWidth||0===this.minWidth)&&(e.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(e.minHeight=this.minHeight),this.backdropClass&&(e.backdropClass=this.backdropClass),this.panelClass&&(e.panelClass=this.panelClass),e}_updatePositionStrategy(t){const e=this.positions.map(t=>({originX:t.originX,originY:t.originY,overlayX:t.overlayX,overlayY:t.overlayY,offsetX:t.offsetX||this.offsetX,offsetY:t.offsetY||this.offsetY,panelClass:t.panelClass||void 0}));return t.setOrigin(this.origin.elementRef).withPositions(e).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const t=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(t),t}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(t=>{this.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(Xp(()=>this.positionChange.observers.length>0)).subscribe(t=>{this.positionChange.emit(t),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(sc),ea(hc),ea(Pf),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ye]}),t})();const Df={provide:Pf,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};let Rf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[kf,Df],imports:[[Tp,Hp,Dp],Dp]}),t})(),Nf=(()=>{class t extends gf{constructor(){super(...arguments),this.attached=!1}setRootElement(t){this.attached&&(this.rootElement.nativeElement.removeChild(this._containerElement),this.attached=!1),this.rootElement=t,this.rootElement.nativeElement.style.display="block",this.rootElement.nativeElement.style.position="contents",this.rootElement.nativeElement.style.height="100%",this.appendToRoot()}_createContainer(){super._createContainer(),this.appendToRoot()}appendToRoot(){!this._containerElement||!this.rootElement||(this.rootElement.nativeElement.appendChild(this._containerElement),this.attached=!0)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const Lf={schedule(t,e){const n=setTimeout(t,e);return()=>clearTimeout(n)},scheduleBeforeRender(t){if("undefined"==typeof window)return Lf.schedule(t,0);if(void 0===window.requestAnimationFrame)return Lf.schedule(t,16);const e=window.requestAnimationFrame(t);return()=>window.cancelAnimationFrame(e)}};let jf;function Ff(t,e,n){let i=n;return function(t){return!!t&&t.nodeType===Node.ELEMENT_NODE}(t)&&e.some((e,n)=>!("*"===e||!function(t,e){if(!jf){const t=Element.prototype;jf=t.matches||t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector}return t.nodeType===Node.ELEMENT_NODE&&jf.call(t,e)}(t,e)||(i=n,0))),i}class Bf{constructor(t,e){this.componentFactory=e.get(El).resolveComponentFactory(t)}create(t){return new Vf(this.componentFactory,t)}}class Vf{constructor(t,e){this.componentFactory=t,this.injector=e,this.eventEmitters=new lp(1),this.events=this.eventEmitters.pipe(Qd(t=>Q(...t))),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(({propName:t})=>t)),this.ngZone=this.injector.get(xu),this.elementZone="undefined"==typeof Zone?null:this.ngZone.run(()=>Zone.current)}connect(t){this.runInZone(()=>{if(null!==this.scheduledDestroyFn)return this.scheduledDestroyFn(),void(this.scheduledDestroyFn=null);null===this.componentRef&&this.initializeComponent(t)})}disconnect(){this.runInZone(()=>{null===this.componentRef||null!==this.scheduledDestroyFn||(this.scheduledDestroyFn=Lf.schedule(()=>{null!==this.componentRef&&(this.componentRef.destroy(),this.componentRef=null,this.viewChangeDetectorRef=null)},10))})}getInputValue(t){return this.runInZone(()=>null===this.componentRef?this.initialInputValues.get(t):this.componentRef.instance[t])}setInputValue(t,e){this.runInZone(()=>{null!==this.componentRef?function(t,e){return t===e||t!=t&&e!=e}(e,this.getInputValue(t))&&(void 0!==e||!this.unchangedInputs.has(t))||(this.recordInputChange(t,e),this.unchangedInputs.delete(t),this.hasInputChanges=!0,this.componentRef.instance[t]=e,this.scheduleDetectChanges()):this.initialInputValues.set(t,e)})}initializeComponent(t){const e=No.create({providers:[],parent:this.injector}),n=function(t,e){const n=t.childNodes,i=e.map(()=>[]);let r=-1;e.some((t,e)=>"*"===t&&(r=e,!0));for(let s=0,o=n.length;s{this.initialInputValues.has(t)&&this.setInputValue(t,this.initialInputValues.get(t))}),this.initialInputValues.clear()}initializeOutputs(t){const e=this.componentFactory.outputs.map(({propName:e,templateName:n})=>t.instance[e].pipe(D(t=>({name:n,value:t}))));this.eventEmitters.next(e)}callNgOnChanges(t){if(!this.implementsOnChanges||null===this.inputChanges)return;const e=this.inputChanges;this.inputChanges=null,t.instance.ngOnChanges(e)}markViewForCheck(t){this.hasInputChanges&&(this.hasInputChanges=!1,t.markForCheck())}scheduleDetectChanges(){this.scheduledChangeDetectionFn||(this.scheduledChangeDetectionFn=Lf.scheduleBeforeRender(()=>{this.scheduledChangeDetectionFn=null,this.detectChanges()}))}recordInputChange(t,e){if(!this.implementsOnChanges)return;null===this.inputChanges&&(this.inputChanges={});const n=this.inputChanges[t];if(n)return void(n.currentValue=e);const i=this.unchangedInputs.has(t),r=i?void 0:this.getInputValue(t);this.inputChanges[t]=new be(r,e,i)}detectChanges(){null!==this.componentRef&&(this.callNgOnChanges(this.componentRef),this.markViewForCheck(this.viewChangeDetectorRef),this.componentRef.changeDetectorRef.detectChanges())}runInZone(t){return this.elementZone&&Zone.current!==this.elementZone?this.ngZone.run(t):t()}}class zf extends HTMLElement{constructor(){super(...arguments),this.ngElementEventsSubscription=null}}class Uf extends P{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new T;return this._value}next(t){super.next(this._value=t)}}function Hf(){}function $f(t,e,n){return function(i){return i.lift(new Gf(t,e,n))}}class Gf{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Wf(t,this.nextOrObserver,this.error,this.complete))}}class Wf extends v{constructor(t,e,n,i){super(t),this._tapNext=Hf,this._tapError=Hf,this._tapComplete=Hf,this._tapError=n||Hf,this._tapComplete=i||Hf,a(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Hf,this._tapError=e.error||Hf,this._tapComplete=e.complete||Hf)}_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(e){return void this.destination.error(e)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}function qf(t,e=jd){return n=>n.lift(new Xf(t,e))}class Xf{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Yf(t,this.dueTime,this.scheduler))}}class Yf extends v{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(Kf,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 Kf(t){t.debouncedNext()}function Qf(t){return e=>e.lift(new Zf(t))}class Zf{constructor(t){this.total=t}call(t,e){return e.subscribe(new Jf(t,this.total))}}class Jf extends v{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){++this.count>this.total&&this.destination.next(t)}}let tg=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),eg=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=_d(t);return new C(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 P,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)(Ci(tg))},t.\u0275prov=xt({factory:function(){return new t(Ci(tg))},token:t,providedIn:"root"}),t})(),ng=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Rc,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=bd(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(qf(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){var t;null===(t=this._currentSubscription)||void 0===t||t.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(eg),ea(kl),ea(xu))},t.\u0275dir=se({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),ig=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[tg]}),t})();function rg(t,e){return(t.getAttribute(e)||"").match(/\S+/g)||[]}const sg="cdk-describedby-message-container",og="cdk-describedby-message",ag="cdk-describedby-host";let lg=0;const cg=new Map;let ug=null,hg=(()=>{class t{constructor(t){this._document=t}describe(t,e,n){if(!this._canBeDescribed(t,e))return;const i=dg(e,n);"string"!=typeof e?(pg(e),cg.set(i,{messageElement:e,referenceCount:0})):cg.has(i)||this._createMessageElement(e,n),this._isElementDescribedByMessage(t,i)||this._addMessageReference(t,i)}removeDescription(t,e,n){if(!e||!this._isElementNode(t))return;const i=dg(e,n);if(this._isElementDescribedByMessage(t,i)&&this._removeMessageReference(t,i),"string"==typeof e){const t=cg.get(i);t&&0===t.referenceCount&&this._deleteMessageElement(i)}ug&&0===ug.childNodes.length&&this._deleteMessagesContainer()}ngOnDestroy(){const t=this._document.querySelectorAll(`[${ag}]`);for(let e=0;e0!=t.indexOf(og));t.setAttribute("aria-describedby",e.join(" "))}_addMessageReference(t,e){const n=cg.get(e);(function(t,e,n){const i=rg(t,e);i.some(t=>t.trim()==n.trim())||(i.push(n.trim()),t.setAttribute(e,i.join(" ")))})(t,"aria-describedby",n.messageElement.id),t.setAttribute(ag,""),n.referenceCount++}_removeMessageReference(t,e){const n=cg.get(e);n.referenceCount--,function(t,e,n){const i=rg(t,e).filter(t=>t!=n.trim());i.length?t.setAttribute(e,i.join(" ")):t.removeAttribute(e)}(t,"aria-describedby",n.messageElement.id),t.removeAttribute(ag)}_isElementDescribedByMessage(t,e){const n=rg(t,"aria-describedby"),i=cg.get(e),r=i&&i.messageElement.id;return!!r&&-1!=n.indexOf(r)}_canBeDescribed(t,e){if(!this._isElementNode(t))return!1;if(e&&"object"==typeof e)return!0;const n=null==e?"":`${e}`.trim(),i=t.getAttribute("aria-label");return!(!n||i&&i.trim()===n)}_isElementNode(t){return t.nodeType===this._document.ELEMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})();function dg(t,e){return"string"==typeof t?`${e||""}/${t}`:t}function pg(t){t.id||(t.id=`${og}-${lg++}`)}class fg extends class{constructor(t){this._items=t,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new P,this._typeaheadSubscription=g.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._skipPredicateFn=t=>t.disabled,this._pressedLetters=[],this.tabOut=new P,this.change=new P,t instanceof Lc&&t.changes.subscribe(t=>{if(this._activeItem){const e=t.toArray().indexOf(this._activeItem);e>-1&&e!==this._activeItemIndex&&(this._activeItemIndex=e)}})}skipPredicate(t){return this._skipPredicateFn=t,this}withWrap(t=!0){return this._wrap=t,this}withVerticalOrientation(t=!0){return this._vertical=t,this}withHorizontalOrientation(t){return this._horizontal=t,this}withAllowedModifierKeys(t){return this._allowedModifierKeys=t,this}withTypeAhead(t=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe($f(t=>this._pressedLetters.push(t)),qf(t),Hd(()=>this._pressedLetters.length>0),D(()=>this._pressedLetters.join(""))).subscribe(t=>{const e=this._getItemsArray();for(let n=1;n!t[e]||this._allowedModifierKeys.indexOf(e)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&n){this.setNextItemActive();break}return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&n){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&n){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}return;default:return void((n||Qp(t,"shiftKey"))&&(t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))))}this._pressedLetters=[],t.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(t){const e=this._getItemsArray(),n="number"==typeof t?t:e.indexOf(t),i=e[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}_setActiveItemByDelta(t){this._wrap?this._setActiveInWrapMode(t):this._setActiveInDefaultMode(t)}_setActiveInWrapMode(t){const e=this._getItemsArray();for(let n=1;n<=e.length;n++){const i=(this._activeItemIndex+t*n+e.length)%e.length;if(!this._skipPredicateFn(e[i]))return void this.setActiveItem(i)}}_setActiveInDefaultMode(t){this._setActiveItemByIndex(this._activeItemIndex+t,t)}_setActiveItemByIndex(t,e){const n=this._getItemsArray();if(n[t]){for(;this._skipPredicateFn(n[t]);)if(!n[t+=e])return;this.setActiveItem(t)}}_getItemsArray(){return this._items instanceof Lc?this._items.toArray():this._items}}{setActiveItem(t){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(t),this.activeItem&&this.activeItem.setActiveStyles()}}let gg=(()=>{class t{constructor(t){this._platform=t}isDisabled(t){return t.hasAttribute("disabled")}isVisible(t){return function(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(t)&&"visible"===getComputedStyle(t).visibility}isTabbable(t){if(!this._platform.isBrowser)return!1;const e=function(t){try{return t.frameElement}catch(e){return null}}(function(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}(t));if(e&&(-1===bg(e)||!this.isVisible(e)))return!1;let n=t.nodeName.toLowerCase(),i=bg(t);return t.hasAttribute("contenteditable")?-1!==i:!("iframe"===n||"object"===n||this._platform.WEBKIT&&this._platform.IOS&&!function(t){let e=t.nodeName.toLowerCase(),n="input"===e&&t.type;return"text"===n||"password"===n||"select"===e||"textarea"===e}(t))&&("audio"===n?!!t.hasAttribute("controls")&&-1!==i:"video"===n?-1!==i&&(null!==i||this._platform.FIREFOX||t.hasAttribute("controls")):t.tabIndex>=0)}isFocusable(t,e){return function(t){return!function(t){return function(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function(t){let e=t.nodeName.toLowerCase();return"input"===e||"select"===e||"button"===e||"textarea"===e}(t)||function(t){return function(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||mg(t))}(t)&&!this.isDisabled(t)&&((null==e?void 0:e.ignoreVisibility)||this.isVisible(t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function mg(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;let e=t.getAttribute("tabindex");return"-32768"!=e&&!(!e||isNaN(parseInt(e,10)))}function bg(t){if(!mg(t))return null;const e=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(e)?-1:e}class yg{constructor(t,e,n,i,r=!1){this._element=t,this._checker=e,this._ngZone=n,this._document=i,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,r||this.attachAnchors()}get enabled(){return this._enabled}set enabled(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}destroy(){const t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(t)))})}focusFirstTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(t)))})}focusLastTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(t)))})}_getRegionBoundary(t){let e=this._element.querySelectorAll(`[cdk-focus-region-${t}], [cdkFocusRegion${t}], [cdk-focus-${t}]`);for(let n=0;n=0;n--){let t=e[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[n]):null;if(t)return t}return null}_createAnchor(){const t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t}_toggleAnchorTabIndex(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}_executeOnStable(t){this._ngZone.isStable?t():this._ngZone.onStable.pipe(Gp(1)).subscribe(t)}}let vg=(()=>{class t{constructor(t,e,n){this._checker=t,this._ngZone=e,this._document=n}create(t,e=!1){return new yg(t,this._checker,this._ngZone,this._document,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(gg),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(gg),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();function _g(t){return 0===t.offsetX&&0===t.offsetY}function wg(t){const e=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!(!e||-1!==e.identifier||null!=e.radiusX&&1!==e.radiusX||null!=e.radiusY&&1!==e.radiusY)}"undefined"!=typeof Element&∈const xg=new oi("cdk-input-modality-detector-options"),Sg={ignoreKeys:[18,17,224,91,16]},Eg=_p({passive:!0,capture:!0});let Cg=(()=>{class t{constructor(t,e,n,i){this._platform=t,this._mostRecentTarget=null,this._modality=new Uf(null),this._lastTouchMs=0,this._onKeydown=t=>{var e,n;(null===(n=null===(e=this._options)||void 0===e?void 0:e.ignoreKeys)||void 0===n?void 0:n.some(e=>e===t.keyCode))||(this._modality.next("keyboard"),this._mostRecentTarget=Ep(t))},this._onMousedown=t=>{Date.now()-this._lastTouchMs<650||(this._modality.next(_g(t)?"keyboard":"mouse"),this._mostRecentTarget=Ep(t))},this._onTouchstart=t=>{wg(t)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Ep(t))},this._options=Object.assign(Object.assign({},Sg),i),this.modalityDetected=this._modality.pipe(Qf(1)),this.modalityChanged=this.modalityDetected.pipe(Rd()),t.isBrowser&&e.runOutsideAngular(()=>{n.addEventListener("keydown",this._onKeydown,Eg),n.addEventListener("mousedown",this._onMousedown,Eg),n.addEventListener("touchstart",this._onTouchstart,Eg)})}get mostRecentModality(){return this._modality.value}ngOnDestroy(){!this._platform.isBrowser||(document.removeEventListener("keydown",this._onKeydown,Eg),document.removeEventListener("mousedown",this._onMousedown,Eg),document.removeEventListener("touchstart",this._onTouchstart,Eg))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},token:t,providedIn:"root"}),t})();const Og=new oi("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),Tg=new oi("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let kg=(()=>{class t{constructor(t,e,n,i){this._ngZone=e,this._defaultOptions=i,this._document=n,this._liveElement=t||this._createLiveElement()}announce(t,...e){const n=this._defaultOptions;let i,r;return 1===e.length&&"number"==typeof e[0]?r=e[0]:[i,r]=e,this.clear(),clearTimeout(this._previousTimeout),i||(i=n&&n.politeness?n.politeness:"polite"),null==r&&n&&(r=n.duration),this._liveElement.setAttribute("aria-live",i),this._ngZone.runOutsideAngular(()=>new Promise(e=>{clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=t,e(),"number"==typeof r&&(this._previousTimeout=setTimeout(()=>this.clear(),r))},100)}))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement&&this._liveElement.parentNode&&(this._liveElement.parentNode.removeChild(this._liveElement),this._liveElement=null)}_createLiveElement(){const t="cdk-live-announcer-element",e=this._document.getElementsByClassName(t),n=this._document.createElement("div");for(let i=0;i{class t{constructor(t,e,n,i,r){this._ngZone=t,this._platform=e,this._inputModalityDetector=n,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new P,this._rootNodeFocusAndBlurListener=t=>{const e=Ep(t),n="focus"===t.type?this._onFocus:this._onBlur;for(let i=e;i;i=i.parentElement)n.call(this,t,i)},this._document=i,this._detectionMode=(null==r?void 0:r.detectionMode)||0}monitor(t,e=!1){const n=_d(t);if(!this._platform.isBrowser||1!==n.nodeType)return wd(null);const i=xp(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return e&&(r.checkChildren=!0),r.subject;const s={checkChildren:e,subject:new P,rootNode:i};return this._elementInfo.set(n,s),this._registerGlobalListeners(s),s.subject}stopMonitoring(t){const e=_d(t),n=this._elementInfo.get(e);n&&(n.subject.complete(),this._setClasses(e),this._elementInfo.delete(e),this._removeGlobalListeners(n))}focusVia(t,e,n){const i=_d(t);i===this._getDocument().activeElement?this._getClosestElementsInfo(i).forEach(([t,n])=>this._originChanged(t,e,n)):(this._setOrigin(e),"function"==typeof i.focus&&i.focus(n))}ngOnDestroy(){this._elementInfo.forEach((t,e)=>this.stopMonitoring(e))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_toggleClass(t,e,n){n?t.classList.add(e):t.classList.remove(e)}_getFocusOrigin(t){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(t)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}_shouldBeAttributedToTouch(t){return 1===this._detectionMode||!!(null==t?void 0:t.contains(this._inputModalityDetector._mostRecentTarget))}_setClasses(t,e){this._toggleClass(t,"cdk-focused",!!e),this._toggleClass(t,"cdk-touch-focused","touch"===e),this._toggleClass(t,"cdk-keyboard-focused","keyboard"===e),this._toggleClass(t,"cdk-mouse-focused","mouse"===e),this._toggleClass(t,"cdk-program-focused","program"===e)}_setOrigin(t,e=!1){this._ngZone.runOutsideAngular(()=>{this._origin=t,this._originFromTouchInteraction="touch"===t&&e,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(t,e){const n=this._elementInfo.get(e),i=Ep(t);!n||!n.checkChildren&&e!==i||this._originChanged(e,this._getFocusOrigin(i),n)}_onBlur(t,e){const n=this._elementInfo.get(e);!n||n.checkChildren&&t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||(this._setClasses(e),this._emitOrigin(n.subject,null))}_emitOrigin(t,e){this._ngZone.run(()=>t.next(e))}_registerGlobalListeners(t){if(!this._platform.isBrowser)return;const e=t.rootNode,n=this._rootNodeFocusListenerCount.get(e)||0;n||this._ngZone.runOutsideAngular(()=>{e.addEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.addEventListener("blur",this._rootNodeFocusAndBlurListener,Pg)}),this._rootNodeFocusListenerCount.set(e,n+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(Wd(this._stopInputModalityDetector)).subscribe(t=>{this._setOrigin(t,!0)}))}_removeGlobalListeners(t){const e=t.rootNode;if(this._rootNodeFocusListenerCount.has(e)){const t=this._rootNodeFocusListenerCount.get(e);t>1?this._rootNodeFocusListenerCount.set(e,t-1):(e.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Pg),this._rootNodeFocusListenerCount.delete(e))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(t,e,n){this._setClasses(t,e),this._emitOrigin(n.subject,e),this._lastFocusOrigin=e}_getClosestElementsInfo(t){const e=[];return this._elementInfo.forEach((n,i)=>{(i===t||n.checkChildren&&i.contains(t))&&e.push([i,n])}),e}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},token:t,providedIn:"root"}),t})();const Ig="cdk-high-contrast-black-on-white",Dg="cdk-high-contrast-white-on-black",Rg="cdk-high-contrast-active";let Ng=(()=>{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._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove(Rg),t.remove(Ig),t.remove(Dg),this._hasCheckedHighContrastMode=!0;const e=this.getHighContrastMode();1===e?(t.add(Rg),t.add(Ig)):2===e&&(t.add(Rg),t.add(Dg))}}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(Yu))},token:t,providedIn:"root"}),t})(),Lg=(()=>{class t{constructor(t){t._applyBodyHighContrastModeCssClasses()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp,ig]]}),t})();const jg=new Rl("12.2.5");class Fg{}const Bg="*";function Vg(t,e){return{type:7,name:t,definitions:e,options:{}}}function zg(t,e=null){return{type:4,styles:e,timings:t}}function Ug(t,e=null){return{type:2,steps:t,options:e}}function Hg(t){return{type:6,styles:t,offset:null}}function $g(t,e,n){return{type:0,name:t,styles:e,options:n}}function Gg(t){return{type:5,steps:t}}function Wg(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function qg(t=null){return{type:9,options:t}}function Xg(t,e,n=null){return{type:11,selector:t,animation:e,options:n}}function Yg(t){Promise.resolve(null).then(t)}class Kg{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,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(){Yg(()=>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(){this._started=!1}setPosition(t){this._position=this.totalTime?t*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class Qg{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 r=this.players.length;0==r?Yg(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++i==r&&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(){const t=this.players.reduce((t,e)=>null===t||e.totalTime>t.totalTime?e:t,null);return null!=t?t.getPosition():0}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 Zg(){return"undefined"!=typeof window&&void 0!==window.document}function Jg(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function tm(t){switch(t.length){case 0:return new Kg;case 1:return t[0];default:return new Qg(t)}}function em(t,e,n,i,r={},s={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,u=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=r[n];break;case Bg:a=s[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}u[i]=a}),i||a.push(u),c=u,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 nm(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&im(n,"start",t)));break;case"done":t.onDone(()=>i(n&&im(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&im(n,"destroy",t)))}}function im(t,e,n){const i=n.totalTime,r=rm(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),s=t._data;return null!=s&&(r._data=s),r}function rm(t,e,n,i,r="",s=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:r,totalTime:s,disabled:!!o}}function sm(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 om(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let am=(t,e)=>!1,lm=(t,e)=>!1,cm=(t,e,n)=>[];const um=Jg();(um||"undefined"!=typeof Element)&&(am=Zg()?(t,e)=>{for(;e&&e!==document.documentElement;){if(e===t)return!0;e=e.parentNode||e.host}return!1}:(t,e)=>t.contains(e),lm=(()=>{if(um||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]):lm}})(),cm=(t,e,n)=>{let i=[];if(n){const n=t.querySelectorAll(e);for(let t=0;t{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let ym=(()=>{class t{validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,r,s=[],o){return new Kg(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class vm{}vm.NOOP=new ym;const _m="ng-enter",wm="ng-leave",xm="ng-trigger",Sm=".ng-trigger",Em="ng-animating",Cm=".ng-animating";function Om(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Tm(parseFloat(e[1]),e[2])}function Tm(t,e){switch(e){case"s":return 1e3*t;default:return t}}function km(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,r=0,s="";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=Tm(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(r=Tm(parseFloat(o),n[4]));const a=n[5];a&&(s=a)}else i=t;if(!n){let n=!1,s=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(s,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:r,easing:s}}(t,e,n)}function Am(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Pm(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Am(t,n);return n}function Mm(t,e,n){return n?e+":"+n+";":""}function Im(t){let e="";for(let n=0;n{const r=zm(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[r]),t.style[r]=e[i]}),Jg()&&Im(t))}function Rm(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=zm(e);t.style[n]=""}),Jg()&&Im(t))}function Nm(t){return Array.isArray(t)?1==t.length?t[0]:Ug(t):t}const Lm=new RegExp("{{\\s*(.+?)\\s*}}","g");function jm(t){let e=[];if("string"==typeof t){let n;for(;n=Lm.exec(t);)e.push(n[1]);Lm.lastIndex=0}return e}function Fm(t,e,n){const i=t.toString(),r=i.replace(Lm,(t,i)=>{let r=e[i];return e.hasOwnProperty(i)||(n.push(`Please provide a value for the animation param ${i}`),r=""),r.toString()});return r==i?t:r}function Bm(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Vm=/-+([a-z0-9])/g;function zm(t){return t.replace(Vm,(...t)=>t[1].toUpperCase())}function Um(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function Hm(t,e){return 0===t||0===e}function $m(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let s=e[0],o=[];if(i.forEach(t=>{s.hasOwnProperty(t)||o.push(t),s[t]=n[t]}),o.length)for(var r=1;rfunction(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 r=i[1],s=i[2],o=i[3];e.push(Km(r,o));"<"==s[0]&&!("*"==r&&"*"==o)&&e.push(Km(o,r))}(t,n,e)):n.push(t),n}const Xm=new Set(["true","1"]),Ym=new Set(["false","0"]);function Km(t,e){const n=Xm.has(t)||Ym.has(t),i=Xm.has(e)||Ym.has(e);return(r,s)=>{let o="*"==t||t==r,a="*"==e||e==s;return!o&&n&&"boolean"==typeof r&&(o=r?Xm.has(t):Ym.has(t)),!a&&i&&"boolean"==typeof s&&(a=s?Xm.has(e):Ym.has(e)),o&&a}}const Qm=new RegExp("s*:selfs*,?","g");function Zm(t,e,n){return new Jm(t).build(e,n)}class Jm{constructor(t){this._driver=t}build(t,e){const n=new tb(e);return this._resetContextStyleTimingState(n),Gm(this,Nm(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 r=[],s=[];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,r.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,i+=r.depCount,s.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:s,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 r=new Set,s=i||{};if(n.styles.forEach(t=>{if(eb(t)){const e=t;Object.keys(e).forEach(t=>{jm(e[t]).forEach(t=>{s.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=Bm(r.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=Gm(this,Nm(t.animation),e);return{type:1,matchers:qm(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:nb(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Gm(this,t,e)),options:nb(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const r=t.steps.map(t=>{e.currentTime=n;const r=Gm(this,t,e);return i=Math.max(i,e.currentTime),r});return e.currentTime=i,{type:3,steps:r,options:nb(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 ib(km(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=ib(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||km(i,e),ib(n.duration,n.delay,n.easing)}(t.timings,e.errors);e.currentAnimateTimings=n;let i,r=t.styles?t.styles:Hg({});if(5==r.type)i=this.visitKeyframes(r,e);else{let r=t.styles,s=!1;if(!r){s=!0;const t={};n.easing&&(t.easing=n.easing),r=Hg(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(r,e);o.isEmptyStep=s,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==Bg?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,r=null;return n.forEach(t=>{if(eb(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,r=e.currentTime;n&&r>0&&(r-=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 s=e.collectedStyles[e.currentQuerySelector],o=s[n];let a=!0;o&&(r!=i&&r>=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 "${r}ms" and "${i}ms"`),a=!1),r=o.startTime),a&&(s[n]={startTime:r,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},r=jm(t);r.length&&r.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 r=[];let s=!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(eb(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(eb(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,s=s||c0&&i{const s=u>0?i==h?1:u*i:r[i],o=s*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=s,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Gm(this,Nm(t.animation),e),options:nb(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:nb(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:nb(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[r,s]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(Qm,"")),[t=t.replace(/@\*/g,Sm).replace(/@\w+/g,t=>Sm+"-"+t.substr(1)).replace(/:animating/g,Cm),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,sm(e.collectedStyles,e.currentQuerySelector,{});const o=Gm(this,Nm(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:i.limit||0,optional:!!i.optional,includeSelf:s,animation:o,originalSelector:t.selector,options:nb(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"}:km(t.timings,e.errors,!0);return{type:12,animation:Gm(this,Nm(t.animation),e),timings:n,options:null}}}class tb{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 eb(t){return!Array.isArray(t)&&"object"==typeof t}function nb(t){return t?(t=Am(t)).params&&(t.params=function(t){return t?Am(t):null}(t.params)):t={},t}function ib(t,e,n){return{duration:t,delay:e,easing:n}}function rb(t,e,n,i,r,s,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:r,delay:s,totalTime:r+s,easing:o,subTimeline:a}}class sb{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 ob=new RegExp(":enter","g"),ab=new RegExp(":leave","g");function lb(t,e,n,i,r,s={},o={},a,l,c=[]){return(new cb).buildKeyframes(t,e,n,i,r,s,o,a,l,c)}class cb{buildKeyframes(t,e,n,i,r,s,o,a,l,c=[]){l=l||new sb;const u=new hb(t,e,l,i,r,c,[]);u.options=a,u.currentTimeline.setStyles([s],null,u.errors,a),Gm(this,n,u);const h=u.timelines.filter(t=>t.containsAnimation());if(h.length&&Object.keys(o).length){const t=h[h.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,u.errors,a)}return h.length?h.map(t=>t.buildKeyframes()):[rb(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),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(n,i,i.options);r!=s&&e.transformIntoNewTimeline(s)}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 r=null!=n.duration?Om(n.duration):null,s=null!=n.delay?Om(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,s);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Gm(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const r=t.options;if(r&&(r.params||r.delay)&&(i=e.createSubContext(r),i.transformIntoNewTimeline(),null!=r.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=ub);const t=Om(r.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Gm(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 r=t.options&&t.options.delay?Om(t.options.delay):0;t.steps.forEach(s=>{const o=e.createSubContext(t.options);r&&o.delayNextStep(r),Gm(this,s,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 km(e.params?Fm(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 r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,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 r=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,r=n.duration,s=e.createSubContext().currentTimeline;s.easing=n.easing,t.styles.forEach(t=>{s.forwardTime((t.offset||0)*r),s.setStyles(t.styles,t.easing,e.errors,e.options),s.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(s),e.transformIntoNewTimeline(i+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},r=i.delay?Om(i.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=ub);let s=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);r&&o.delayNextStep(r),n===e.element&&(a=o.currentTimeline),Gm(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,r=t.timings,s=Math.abs(r.duration),o=s*(e.currentQueryTotal-1);let a=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Gm(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const ub={};class hb{constructor(t,e,n,i,r,s,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=r,this.errors=s,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=ub,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new db(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=Om(n.duration)),null!=n.delay&&(i.delay=Om(n.delay));const r=n.params;if(r){let t=i.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{(!e||!t.hasOwnProperty(n))&&(t[n]=Fm(r[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,r=new hb(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=ub,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:""},r=new pb(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(r),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,r,s){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(ob,"."+this._enterClassName)).replace(ab,"."+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!r&&0==o.length&&s.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class db{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 db(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]||Bg,this._currentKeyframe[t]=Bg}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const r=i&&i.params||{},s=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]=Bg})):Pm(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(s).forEach(t=>{const e=Fm(s[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:Bg),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((r,s)=>{const o=Pm(r,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):i==Bg&&e.add(n)}),n||(o.offset=s/this.duration),i.push(o)});const r=t.size?Bm(t.values()):[],s=e.size?Bm(e.values()):[];if(n){const t=i[0],e=Am(t);t.offset=0,e.offset=1,i=[t,e]}return rb(this.element,i,r,s,this.duration,this.startTime,this.easing,!1)}}class pb extends db{constructor(t,e,n,i,r,s,o=!1){super(t,e,s.delay),this.keyframes=n,this.preStyleProps=i,this.postStyleProps=r,this._stretchStartingKeyframe=o,this.timings={duration:s.duration,delay:s.delay,easing:s.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 r=[],s=n+e,o=e/s,a=Pm(t[0],!1);a.offset=0,r.push(a);const l=Pm(t[0],!1);l.offset=fb(o),r.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Pm(t[i],!1);o.offset=fb((e+o.offset*n)/s),r.push(o)}n=s,e=0,i="",t=r}return rb(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function fb(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class gb{}class mb extends gb{normalizePropertyName(t,e){return zm(t)}normalizeStyleValue(t,e,n,i){let r="";const s=n.toString().trim();if(bb[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="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 s+r}}const bb=(()=>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 yb(t,e,n,i,r,s,o,a,l,c,u,h,d){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:s,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:h,errors:d}}const vb={};class _b{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,r){return t.some(t=>t(e,n,i,r))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],r=this._stateStyles[t],s=i?i.buildStyles(e,n):{};return r?r.buildStyles(e,n):s}build(t,e,n,i,r,s,o,a,l,c){const u=[],h=this.ast.options&&this.ast.options.params||vb,d=this.buildStyles(n,o&&o.params||vb,u),p=a&&a.params||vb,f=this.buildStyles(i,p,u),g=new Set,m=new Map,b=new Map,y="void"===i,v={params:Object.assign(Object.assign({},h),p)},_=c?[]:lb(t,e,this.ast.animation,r,s,d,f,v,l,u);let w=0;if(_.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),u.length)return yb(e,this._triggerName,n,i,y,d,f,[],[],m,b,w,u);_.forEach(t=>{const n=t.element,i=sm(m,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const r=sm(b,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&g.add(n)});const x=Bm(g.values());return yb(e,this._triggerName,n,i,y,d,f,_,x,m,b,w)}}class wb{constructor(t,e,n){this.styles=t,this.defaultParams=e,this.normalizer=n}buildStyles(t,e){const n={},i=Am(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 r=t;Object.keys(r).forEach(t=>{let s=r[t];s.length>1&&(s=Fm(s,i,e));const o=this.normalizer.normalizePropertyName(t,e);s=this.normalizer.normalizeStyleValue(t,o,s,e),n[o]=s})}}),n}}class xb{constructor(t,e,n){this.name=t,this.ast=e,this._normalizer=n,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new wb(t.style,t.options&&t.options.params||{},n)}),Sb(this.states,"true","1"),Sb(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new _b(t,e,this.states))}),this.fallbackTransition=function(t,e,n){return new _b(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},e)}(t,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(r=>r.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function Sb(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Eb=new sb;class Cb{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=Zm(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,r=em(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],r=this._animations[t];let s;const o=new Map;if(r?(s=lb(this._driver,e,r,_m,wm,{},{},n,Eb,i),s.forEach(t=>{const e=sm(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),s=[]),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,Bg)})});const a=tm(s.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 r=rm(e,"","","");return nm(this._getPlayer(t),n,r,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 r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Ob="ng-animate-queued",Tb="ng-animate-disabled",kb=".ng-animate-disabled",Ab=[],Pb={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Mb={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Ib="__ng_removed";class Db{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=function(t){return null!=t?t:null}(n?t.value:t),n){const e=Am(t);delete e.value,this.options=e}else this.options={};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 Rb="void",Nb=new Db(Rb);class Lb{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,$b(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(!function(t){return"start"==t||"done"==t}(n))throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);const r=sm(this._elementListeners,t,[]),s={name:e,phase:n,callback:i};r.push(s);const o=sm(this._engine.statesByElement,t,{});return o.hasOwnProperty(e)||($b(t,xm),$b(t,xm+"-"+e),o[e]=Nb),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(s);t>=0&&r.splice(t,1),this._triggers[e]||delete o[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 r=this._getTrigger(e),s=new Fb(this.id,e,t);let o=this._engine.statesByElement.get(t);o||($b(t,xm),$b(t,xm+"-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Db(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Nb),l.value!==Rb&&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 r=0;r{Rm(t,n),Dm(t,i)})}return}const c=sm(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let u=r.matchTransition(a.value,l.value,t,l.params),h=!1;if(!u){if(!i)return;u=r.fallbackTransition,h=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:u,fromState:a,toState:l,player:s,isFallbackTransition:h}),h||($b(t,Ob),s.onStart(()=>{Gb(t,Ob)})),s.onDone(()=>{let e=this.players.indexOf(s);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(s);t>=0&&n.splice(t,1)}}),this.players.push(s),c.push(s),s}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,Sm,!0);n.forEach(t=>{if(t[Ib])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 r=this._engine.statesByElement.get(t);if(r){const s=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,Rb,i);n&&s.push(n)}}),s.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&tm(s).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t),n=this._engine.statesByElement.get(t);if(e&&n){const i=new Set;e.forEach(e=>{const r=e.name;if(i.has(r))return;i.add(r);const s=this._triggers[r].fallbackTransition,o=n[r]||Nb,a=new Db(Rb),l=new Fb(this.id,r,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:r,transition:s,fromState:o,toState:a,player:l,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[Ib];(!i||i===Pb)&&(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){$b(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const r=n.element,s=this._elementListeners.get(r);s&&s.forEach(e=>{if(e.name==n.triggerName){const i=rm(r,n.triggerName,n.fromState.value,n.toState.value);i._data=t,nm(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 jb{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 Lb(t,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?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 r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+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),$b(t,Tb)):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),Gb(t,Tb))}removeNode(t,e,n,i){if(Bb(e)){const r=t?this._fetchNamespace(t):null;if(r?r.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[Ib]={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,r){return Bb(e)?this._fetchNamespace(t).listen(e,n,i,r):()=>{}}_buildInstruction(t,e,n,i,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,Sm,!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,Cm,!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 tm(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t[Ib];if(e&&e.setForRemoval){if(t[Ib]=Pb,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,kb)&&this.markElementAsDisabled(t,!1),this.driver.query(t,kb,!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?tm(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 sb,i=[],r=new Map,s=[],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=_m+f++;p.set(e,n),t.forEach(t=>$b(t,n))});const g=[],m=new Set,b=new Set;for(let P=0;Pm.add(t)):b.add(t))}const y=new Map,v=Ub(h,Array.from(m));v.forEach((t,e)=>{const n=wm+f++;y.set(e,n),t.forEach(t=>$b(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>Gb(t,n))}),v.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>Gb(t,n))}),g.forEach(t=>{this.processLeaveNode(t)})});const _=[],w=[];for(let P=this._namespaceList.length-1;P>=0;P--)this._namespaceList[P].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(_.push(e),this.collectedEnterElements.length){const t=r[Ib];if(t&&t.setForMove)return void e.destroy()}const c=!u||!this.driver.containsElement(u,r),h=y.get(r),d=p.get(r),f=this._buildInstruction(t,n,d,h,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,f.timelines),s.push({instruction:f,player:e,element:r}),f.queriedElements.forEach(t=>sm(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`))}),_.forEach(t=>t.destroy()),this.reportError(t)}const x=new Map,S=new Map;s.forEach(t=>{const e=t.element;n.has(e)&&(S.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,x))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{sm(x,e,[]).push(t),t.destroy()})});const E=g.filter(t=>Xb(t,a,l)),C=new Map;zb(C,this.driver,b,l,Bg).forEach(t=>{Xb(t,a,l)&&E.push(t)});const O=new Map;d.forEach((t,e)=>{zb(O,this.driver,new Set(t),a,"!")}),E.forEach(t=>{const e=C.get(t),n=O.get(t);C.set(t,Object.assign(Object.assign({},e),n))});const T=[],k=[],A={};s.forEach(t=>{const{element:e,player:s,instruction:o}=t;if(n.has(e)){if(c.has(e))return s.onDestroy(()=>Dm(e,o.toStyles)),s.disabled=!0,s.overrideTotalTime(o.totalTime),void i.push(s);let t=A;if(S.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=S.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>S.set(e,t))}const n=this._buildAnimation(s.namespaceId,o,x,r,O,C);if(s.setRealPlayer(n),t===A)T.push(s);else{const e=this.playersByElement.get(t);e&&e.length&&(s.parentPlayer=tm(e)),i.push(s)}}else Rm(e,o.fromStyles),s.onDestroy(()=>Dm(e,o.toStyles)),k.push(s),c.has(e)&&i.push(s)}),k.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=tm(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let P=0;P!t.destroyed);i.length?Wb(this,t,i):this.processLeaveNode(t)}return g.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[Ib];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,r){let s=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(s=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||r==Rb;e.forEach(e=>{e.queued||!t&&e.triggerName!=i||s.push(e)})}}return(n||i)&&(s=s.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),s}_beforeAnimationBuild(t,e,n){const i=e.element,r=e.isRemovalTransition?void 0:t,s=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=sm(n,t,[]);this._getPreviousPlayers(t,a,r,s,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}Rm(i,e.fromStyles)}_buildAnimation(t,e,n,i,r,s){const o=e.triggerName,a=e.element,l=[],c=new Set,u=new Set,h=e.timelines.map(e=>{const h=e.element;c.add(h);const d=h[Ib];if(d&&d.removedBeforeQueried)return new Kg(e.duration,e.delay);const p=h!==a,f=function(t){const e=[];return qb(t,e),e}((n.get(h)||Ab).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===h),g=r.get(h),m=s.get(h),b=em(0,this._normalizer,0,e.keyframes,g,m),y=this._buildPlayer(e,b,f);if(e.subTimeline&&i&&u.add(h),p){const e=new Fb(t,o,h);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{sm(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=>$b(t,Em));const d=tm(h);return d.onDestroy(()=>{c.forEach(t=>Gb(t,Em)),Dm(a,e.toStyles)}),u.forEach(t=>{sm(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 Kg(t.duration,t.delay)}}class Fb{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new Kg,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=>nm(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){sm(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 Bb(t){return t&&1===t.nodeType}function Vb(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function zb(t,e,n,i,r){const s=[];n.forEach(t=>s.push(Vb(t)));const o=[];i.forEach((n,i)=>{const s={};n.forEach(t=>{const n=s[t]=e.computeStyle(i,t,r);(!n||0==n.length)&&(i[Ib]=Mb,o.push(i))}),t.set(i,s)});let a=0;return n.forEach(t=>Vb(t,s[a++])),o}function Ub(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),r=new Map;function s(t){if(!t)return 1;let e=r.get(t);if(e)return e;const o=t.parentNode;return e=n.has(o)?o:i.has(o)?1:s(o),r.set(t,e),e}return e.forEach(t=>{const e=s(t);1!==e&&n.get(e).push(t)}),n}const Hb="$$classes";function $b(t,e){if(t.classList)t.classList.add(e);else{let n=t[Hb];n||(n=t[Hb]={}),n[e]=!0}}function Gb(t,e){if(t.classList)t.classList.remove(e);else{let n=t[Hb];n&&delete n[e]}}function Wb(t,e,n){tm(n).onDone(()=>t.processLeaveNode(e))}function qb(t,e){for(let n=0;nr.add(t)):e.set(t,i),n.delete(t),!0}class Yb{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new jb(t,e,n),this._timelineEngine=new Cb(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,r){const s=t+"-"+i;let o=this._triggerCache[s];if(!o){const t=[],e=Zm(this._driver,r,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,n){return new xb(t,e,n)}(i,e,this._normalizer),this._triggerCache[s]=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,r]=om(n);this._timelineEngine.command(t,e,r,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,r){if("@"==n.charAt(0)){const[t,i]=om(n);return this._timelineEngine.listen(t,e,i,r)}return this._transitionEngine.listen(t,e,n,i,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Kb(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Zb(e[0]),e.length>1&&(i=Zb(e[e.length-1]))):e&&(n=Zb(e)),n||i?new Qb(t,n,i):null}class Qb{constructor(t,e,n){this._element=t,this._startStyles=e,this._endStyles=n,this._state=0;let i=Qb.initialStylesByElement.get(t);i||Qb.initialStylesByElement.set(t,i={}),this._initialStyles=i}start(){this._state<1&&(this._startStyles&&Dm(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Dm(this._element,this._initialStyles),this._endStyles&&(Dm(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(Qb.initialStylesByElement.delete(this._element),this._startStyles&&(Rm(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Rm(this._element,this._endStyles),this._endStyles=null),Dm(this._element,this._initialStyles),this._state=3)}}function Zb(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){(function(t,e){const n=ly(t,"").trim();let i=0;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(),oy(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=ly(t,"").split(","),i=sy(n,e);i>=0&&(n.splice(i,1),ay(t,"",n.join(",")))}(this._element,this._name))}}function iy(t,e,n){ay(t,"PlayState",n,ry(t,e))}function ry(t,e){const n=ly(t,"");return n.indexOf(",")>0?sy(n.split(","),e):sy([n],e)}function sy(t,e){for(let n=0;n=0)return n;return-1}function oy(t,e,n){n?t.removeEventListener(ey,e):t.addEventListener(ey,e)}function ay(t,e,n,i){const r=ty+e;if(null!=i){const e=t.style[r];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[r]=n}function ly(t,e){return t.style[ty+e]||""}class cy{constructor(t,e,n,i,r,s,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=r,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=s||"linear",this.totalTime=i+r,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._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new ny(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]:Wm(this.element,n))})}this.currentSnapshot=t}}class uy extends Kg{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=bm(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 hy{constructor(){this._count=0}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>bm(t));let i=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);i+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${r}animation-timing-function: ${n};\n`));default:return void(i+=`${r}${e}: ${n};\n`)}}),i+=`${r}}\n`}),i+="}\n";const s=document.createElement("style");return s.textContent=i,s}animate(t,e,n,i,r,s=[],o){const a=s.filter(t=>t instanceof cy),l={};Hm(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=$m(t,e,l));if(0==n)return new uy(t,c);const u="gen_css_kf_"+this._count++,h=this.buildKeyframeElement(t,u,e);(function(t){var e;const n=null===(e=t.getRootNode)||void 0===e?void 0:e.call(t);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head})(t).appendChild(h);const d=Kb(t,e),p=new cy(t,e,u,n,i,r,c,d);return p.onDestroy(()=>function(t){t.parentNode.removeChild(t)}(h)),p}}class dy{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){void 0===this.domPlayer&&this.init(),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]:Wm(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class py{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(fy().toString()),this._cssKeyframesDriver=new hy}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,r,s=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,r,s);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(a.easing=r);const l={},c=s.filter(t=>t instanceof dy);Hm(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const u=Kb(t,e=$m(t,e=e.map(t=>Pm(t,!1)),l));return new dy(t,e,a,u)}}function fy(){return Zg()&&Element.prototype.animate||{}}let gy=(()=>{class t extends Fg{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:jt.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?Ug(t):t;return yy(this._renderer,null,e,"register",[n]),new my(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pl),Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class my extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new by(this._id,t,e||{},this._renderer)}}class by{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 yy(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"),this._started=!1}setPosition(t){this._command("setPosition",t)}getPosition(){var t,e;return null!==(e=null===(t=this._renderer.engine.players[+this.id])||void 0===t?void 0:t.getPosition())&&void 0!==e?e:0}}function yy(t,e,n,i,r){return t.setProperty(e,`@@${n}:${i}`,r)}const vy="@.disabled";let _y=(()=>{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 wy("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,r=e.id+"-"+this._currentId;this._currentId++,this.engine.register(r,t);const s=e=>{Array.isArray(e)?e.forEach(s):this.engine.registerTrigger(i,r,t,e.name,e)};return e.data.animation.forEach(s),new xy(this,r,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)(Ci(Pl),Ci(Yb),Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class wy{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,i=!0){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,i)}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)&&e==vy?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 xy extends wy{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)&&e==vy?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 r=e.substr(1),s="";return"@"!=r.charAt(0)&&([r,s]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,i,r,s,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let Sy=(()=>{class t extends Yb{constructor(t,e,n){super(t.body,e,n)}ngOnDestroy(){this.flush()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(vm),Ci(gb))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Ey=new oi("AnimationModuleType"),Cy=[{provide:Fg,useClass:gy},{provide:gb,useFactory:function(){return new mb}},{provide:Yb,useClass:Sy},{provide:Pl,useFactory:function(t,e,n){return new _y(t,e,n)},deps:[ed,Yb,xu]}],Oy=[{provide:vm,useFactory:function(){return"function"==typeof fy()?new py:new hy}},{provide:Ey,useValue:"BrowserAnimations"},...Cy],Ty=[{provide:vm,useClass:ym},{provide:Ey,useValue:"NoopAnimations"},...Cy];let ky=(()=>{class t{static withConfig(e){return{ngModule:t,providers:e.disableAnimations?Ty:Oy}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Oy,imports:[gd]}),t})();function Ay(t,e){if(1&t&&oa(0,"mat-pseudo-checkbox",4),2&t){const t=va();na("state",t.selected?"checked":"unchecked")("disabled",t.disabled)}}function Py(t,e){if(1&t&&(ra(0,"span",5),Za(1),sa()),2&t){const t=va();ws(1),tl("(",t.group.label,")")}}const My=["*"],Iy=new Rl("12.2.5"),Dy=new oi("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ry,Ny=(()=>{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)}_getWindow(){const t=this._document.defaultView||window;return"object"==typeof t&&t?t:null}_checkIsEnabled(t){return!(!Nu()||this._isTestEnv())&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[t])}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){this._checkIsEnabled("doctype")&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){if(!this._checkIsEnabled("theme")||!this._document.body||"function"!=typeof getComputedStyle)return;const t=this._document.createElement("div");t.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(t);const e=getComputedStyle(t);e&&"none"!==e.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"),this._document.body.removeChild(t)}_checkCdkVersionMatch(){this._checkIsEnabled("version")&&Iy.full!==jg.full&&console.warn("The Angular Material version ("+Iy.full+") does not match the Angular CDK version ("+jg.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng),Ci(Dy,8),Ci(Yu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp],Tp]}),t})();function Ly(t){return class extends t{constructor(...t){super(...t),this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}}}function jy(t,e){return class extends t{constructor(...t){super(...t),this.defaultColor=e,this.color=e}get color(){return this._color}set color(t){const e=t||this.defaultColor;e!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),e&&this._elementRef.nativeElement.classList.add(`mat-${e}`),this._color=e)}}}function Fy(t){return class extends t{constructor(...t){super(...t),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(t){this._disableRipple=md(t)}}}function By(t,e=0){return class extends t{constructor(...t){super(...t),this._tabIndex=e,this.defaultTabIndex=e}get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(t){this._tabIndex=null!=t?bd(t):this.defaultTabIndex}}}function Vy(t){return class extends t{constructor(...t){super(...t),this.stateChanges=new P,this.errorState=!1}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{Ry="undefined"!=typeof Intl}catch(m){Ry=!1}let zy=(()=>{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=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})();class Uy{constructor(t,e,n){this._renderer=t,this.element=e,this.config=n,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const Hy={enterDuration:225,exitDuration:150},$y=_p({passive:!0}),Gy=["mousedown","touchstart"],Wy=["mouseup","mouseleave","touchend","touchcancel"];class qy{constructor(t,e,n,i){this._target=t,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,i.isBrowser&&(this._containerElement=_d(n))}fadeInRipple(t,e,n={}){const i=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),r=Object.assign(Object.assign({},Hy),n.animation);n.centered&&(t=i.left+i.width/2,e=i.top+i.height/2);const s=n.radius||function(t,e,n){const i=Math.max(Math.abs(t-n.left),Math.abs(t-n.right)),r=Math.max(Math.abs(e-n.top),Math.abs(e-n.bottom));return Math.sqrt(i*i+r*r)}(t,e,i),o=t-i.left,a=e-i.top,l=r.enterDuration,c=document.createElement("div");c.classList.add("mat-ripple-element"),c.style.left=o-s+"px",c.style.top=a-s+"px",c.style.height=2*s+"px",c.style.width=2*s+"px",null!=n.color&&(c.style.backgroundColor=n.color),c.style.transitionDuration=`${l}ms`,this._containerElement.appendChild(c),function(t){window.getComputedStyle(t).getPropertyValue("opacity")}(c),c.style.transform="scale(1)";const u=new Uy(this,c,n);return u.state=0,this._activeRipples.add(u),n.persistent||(this._mostRecentTransientRipple=u),this._runTimeoutOutsideZone(()=>{const t=u===this._mostRecentTransientRipple;u.state=1,!n.persistent&&(!t||!this._isPointerDown)&&u.fadeOut()},l),u}fadeOutRipple(t){const e=this._activeRipples.delete(t);if(t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),!e)return;const n=t.element,i=Object.assign(Object.assign({},Hy),t.config.animation);n.style.transitionDuration=`${i.exitDuration}ms`,n.style.opacity="0",t.state=2,this._runTimeoutOutsideZone(()=>{t.state=3,n.parentNode.removeChild(n)},i.exitDuration)}fadeOutAll(){this._activeRipples.forEach(t=>t.fadeOut())}fadeOutAllNonPersistent(){this._activeRipples.forEach(t=>{t.config.persistent||t.fadeOut()})}setupTriggerEvents(t){const e=_d(t);!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(Gy))}handleEvent(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(Wy),this._pointerUpEventsRegistered=!0)}_onMousedown(t){const e=_g(t),n=this._lastTouchStartEvent&&Date.now(){!t.config.persistent&&(1===t.state||t.config.terminateOnPointerUp&&0===t.state)&&t.fadeOut()}))}_runTimeoutOutsideZone(t,e=0){this._ngZone.runOutsideAngular(()=>setTimeout(t,e))}_registerEvents(t){this._ngZone.runOutsideAngular(()=>{t.forEach(t=>{this._triggerElement.addEventListener(t,this,$y)})})}_removeTriggerEvents(){this._triggerElement&&(Gy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}),this._pointerUpEventsRegistered&&Wy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}))}}const Xy=new oi("mat-ripple-global-options");let Yy=(()=>{class t{constructor(t,e,n,i,r){this._elementRef=t,this._animationMode=r,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=i||{},this._rippleRenderer=new qy(this,e,t,n)}get disabled(){return this._disabled}set disabled(t){t&&this.fadeOutAllNonPersistent(),this._disabled=t,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(t){this._trigger=t,this._setupTriggerEventsIfEnabled()}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(t,e=0,n){return"number"==typeof t?this._rippleRenderer.fadeInRipple(t,e,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(xu),ea(pp),ea(Xy,8),ea(Ey,8))},t.\u0275dir=se({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,e){2&t&&ja("mat-ripple-unbounded",e.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),t})(),Ky=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,fp],Ny]}),t})(),Qy=(()=>{class t{constructor(t){this._animationMode=t,this.state="unchecked",this.disabled=!1}}return t.\u0275fac=function(e){return new(e||t)(ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(t,e){2&t&&ja("mat-pseudo-checkbox-indeterminate","indeterminate"===e.state)("mat-pseudo-checkbox-checked","checked"===e.state)("mat-pseudo-checkbox-disabled",e.disabled)("_mat-animation-noopable","NoopAnimations"===e._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(t,e){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t})(),Zy=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny]]}),t})();const Jy=new oi("MAT_OPTION_PARENT_COMPONENT"),tv=Ly(class{});let ev=0,nv=(()=>{class t extends tv{constructor(t){var e;super(),this._labelId="mat-optgroup-label-"+ev++,this._inert=null!==(e=null==t?void 0:t.inertGroups)&&void 0!==e&&e}}return t.\u0275fac=function(e){return new(e||t)(ea(Jy,8))},t.\u0275dir=se({type:t,inputs:{label:"label"},features:[jo]}),t})();const iv=new oi("MatOptgroup");let rv=0;class sv{constructor(t,e=!1){this.source=t,this.isUserInput=e}}let ov=(()=>{class t{constructor(t,e,n,i){this._element=t,this._changeDetectorRef=e,this._parent=n,this.group=i,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+rv++,this.onSelectionChange=new Rc,this._stateChanges=new P}get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(t){this._disabled=md(t)}get disableRipple(){return this._parent&&this._parent.disableRipple}get active(){return this._active}get viewValue(){return(this._getHostElement().textContent||"").trim()}select(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}deselect(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}focus(t,e){const n=this._getHostElement();"function"==typeof n.focus&&n.focus(e)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(t){(13===t.keyCode||32===t.keyCode)&&!Qp(t)&&(this._selectViaInteraction(),t.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getAriaSelected(){return this.selected||!this.multiple&&null}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const t=this.viewValue;t!==this._mostRecentViewValue&&(this._mostRecentViewValue=t,this._stateChanges.next())}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(t=!1){this.onSelectionChange.emit(new sv(this,t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(void 0),ea(nv))},t.\u0275dir=se({type:t,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),t})(),av=(()=>{class t extends ov{constructor(t,e,n,i){super(t,e,n,i)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Jy,8),ea(iv,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(t,e){1&t&&fa("click",function(){return e._selectViaInteraction()})("keydown",function(t){return e._handleKeydown(t)}),2&t&&(il("id",e.id),Ko("tabindex",e._getTabIndex())("aria-selected",e._getAriaSelected())("aria-disabled",e.disabled.toString()),ja("mat-selected",e.selected)("mat-option-multiple",e.multiple)("mat-active",e.active)("mat-option-disabled",e.disabled))},exportAs:["matOption"],features:[jo],ngContentSelectors:My,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(t,e){1&t&&(wa(),Jo(0,Ay,1,2,"mat-pseudo-checkbox",0),ra(1,"span",1),xa(2),sa(),Jo(3,Py,2,1,"span",2),oa(4,"div",3)),2&t&&(na("ngIf",e.multiple),ws(3),na("ngIf",e.group&&e.group._inert),ws(1),na("matRippleTrigger",e._getHostElement())("matRippleDisabled",e.disabled||e.disableRipple))},directives:[_h,Yy,Qy],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t})();function lv(t,e,n){if(n.length){let i=e.toArray(),r=n.toArray(),s=0;for(let e=0;en+i?Math.max(0,t-i+e):n}let uv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Rh,Ny,Zy]]}),t})();function hv(...t){if(1===t.length){const e=t[0];if(d(e))return dv(e,null);if(p(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return dv(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return dv(t=1===t.length&&d(t[0])?t[0]:t,null).pipe(D(t=>e(...t)))}return dv(t,null)}function dv(t,e){return new C(n=>{const i=t.length;if(0===i)return void n.complete();const r=new Array(i);let s=0,o=0;for(let a=0;a{c||(c=!0,o++),r[a]=t},error:t=>n.error(t),complete:()=>{s++,(s===i||!c)&&(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}function pv(t){return function(e){const n=new fv(t),i=e.lift(n);return n.caught=i}}class fv{constructor(t){this.selector=t}call(t,e){return e.subscribe(new gv(t,this.selector,this.caught))}}class gv extends ${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 H(this);this.add(i);const r=G(n,i);r!==i&&this.add(r)}}}function mv(t){return e=>e.lift(new bv(t))}class bv{constructor(t){this.callback=t}call(t,e){return e.subscribe(new yv(t,this.callback))}}class yv extends v{constructor(t,e){super(t),this.add(new g(e))}}class vv{}class _v{}class wv{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(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(r):this.headers.set(i,[r])}})}:()=>{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 wv?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 wv;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof wv?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 r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.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 xv{encodeKey(t){return Cv(t)}encodeValue(t){return Cv(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const Sv=/%(\d[a-f0-9])/gi,Ev={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function Cv(t){return encodeURIComponent(t).replace(Sv,(t,e)=>{var n;return null!==(n=Ev[e])&&void 0!==n?n:t})}function Ov(t){return`${t}`}class Tv{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new xv,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.replace(/^\?/,"").split("&").forEach(t=>{const i=t.indexOf("="),[r,s]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(r)||[];o.push(s),n.set(r,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"})}appendAll(t){const e=[];return Object.keys(t).forEach(n=>{const i=t[n];Array.isArray(i)?i.forEach(t=>{e.push({param:n,value:t,op:"a"})}):e.push({param:n,value:i,op:"a"})}),this.clone(e)}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 Tv({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(Ov(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(Ov(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)}}class kv{constructor(){this.map=new Map}set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}keys(){return this.map.keys()}}function Av(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Pv(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Mv(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Iv{constructor(t,e,n,i){let r;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,r=i):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params)),this.headers||(this.headers=new wv),this.context||(this.context=new kv),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]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),c)),new Iv(n,i,s,{params:c,headers:l,context:u,reportProgress:a,responseType:r,withCredentials:o})}}var Dv=(()=>((Dv=Dv||{})[Dv.Sent=0]="Sent",Dv[Dv.UploadProgress=1]="UploadProgress",Dv[Dv.ResponseHeader=2]="ResponseHeader",Dv[Dv.DownloadProgress=3]="DownloadProgress",Dv[Dv.Response=4]="Response",Dv[Dv.User=5]="User",Dv))();class Rv{constructor(t,e=200,n="OK"){this.headers=t.headers||new wv,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}}class Nv extends Rv{constructor(t={}){super(t),this.type=Dv.ResponseHeader}clone(t={}){return new Nv({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})}}class Lv extends Rv{constructor(t={}){super(t),this.type=Dv.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Lv({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})}}class jv extends Rv{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Fv(t,e){return{body:e,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Bv=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Iv)i=t;else{let r,s;r=n.headers instanceof wv?n.headers:new wv(n.headers),n.params&&(s=n.params instanceof Tv?n.params:new Tv({fromObject:n.params})),i=new Iv(t,e,void 0!==n.body?n.body:null,{headers:r,context:n.context,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=wd(i).pipe(function(t,e){return W(t,e,1)}(t=>this.handler.handle(t)));if(t instanceof Iv||"events"===n.observe)return r;const s=r.pipe(Hd(t=>t instanceof Lv));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return s.pipe(D(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return s.pipe(D(t=>t.body))}case"response":return s;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 Tv).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,Fv(n,e))}post(t,e,n={}){return this.request("POST",t,Fv(n,e))}put(t,e,n={}){return this.request("PUT",t,Fv(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Ci(vv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Vv{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const zv=new oi("HTTP_INTERCEPTORS");let Uv=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Hv=/^\)\]\}',?\n/;let $v=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new C(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const i=t.serializeBody();let r=null;const s=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,i=n.statusText||"OK",s=new wv(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new Nv({headers:s,status:e,statusText:i,url:o}),r},o=()=>{let{headers:i,status:r,statusText:o,url:a}=s(),l=null;204!==r&&(l=void 0===n.response?n.responseText:n.response),0===r&&(r=l?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof l){const t=l;l=l.replace(Hv,"");try{l=""!==l?JSON.parse(l):null}catch(u){l=t,c&&(c=!1,l={error:u,text:l})}}c?(e.next(new Lv({body:l,headers:i,status:r,statusText:o,url:a||void 0})),e.complete()):e.error(new jv({error:l,headers:i,status:r,statusText:o,url:a||void 0}))},a=t=>{const{url:i}=s(),r=new jv({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:i||void 0});e.error(r)};let l=!1;const c=i=>{l||(e.next(s()),l=!0);let r={type:Dv.DownloadProgress,loaded:i.loaded};i.lengthComputable&&(r.total=i.total),"text"===t.responseType&&!!n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:Dv.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),n.addEventListener("timeout",a),n.addEventListener("abort",a),t.reportProgress&&(n.addEventListener("progress",c),null!==i&&n.upload&&n.upload.addEventListener("progress",u)),n.send(i),e.next({type:Dv.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("abort",a),n.removeEventListener("load",o),n.removeEventListener("timeout",a),t.reportProgress&&(n.removeEventListener("progress",c),null!==i&&n.upload&&n.upload.removeEventListener("progress",u)),n.readyState!==n.DONE&&n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(Ci(jh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gv=new oi("XSRF_COOKIE_NAME"),Wv=new oi("XSRF_HEADER_NAME");class qv{}let Xv=(()=>{class t{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=gh(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(ou),Ci(Gv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Yv=(()=>{class t{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const i=this.tokenService.getToken();return null!==i&&!t.headers.has(this.headerName)&&(t=t.clone({headers:t.headers.set(this.headerName,i)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(qv),Ci(Wv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Kv=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(zv,[]);this.chain=t.reduceRight((t,e)=>new Vv(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(_v),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Qv=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:Yv,useClass:Uv}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:Gv,useValue:e.cookieName}:[],e.headerName?{provide:Wv,useValue:e.headerName}:[]]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Yv,{provide:zv,useExisting:Yv,multi:!0},{provide:qv,useClass:Xv},{provide:Gv,useValue:"XSRF-TOKEN"},{provide:Wv,useValue:"X-XSRF-TOKEN"}]}),t})(),Zv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Bv,{provide:vv,useClass:Kv},$v,{provide:_v,useExisting:$v}],imports:[[Qv.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();const Jv=["*"];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,n){this.url=t,this.svgText=e,this.options=n}}let r_=(()=>{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._resolvers=[],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,null,i))}addSvgIconResolver(t){return this._resolvers.push(t),this}addSvgIconLiteralInNamespace(t,e,n,i){const r=this._sanitizer.sanitize(yr.HTML,n);if(!r)throw n_(n);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,null,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize(yr.HTML,e);if(!i)throw n_(e);return this._addSvgIconSetConfig(t,new i_("",i,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(yr.RESOURCE_URL,t);if(!e)throw e_(t);const n=this._cachedIconsByUrl.get(e);return n?wd(s_(n)):this._loadSvgIconFromConfig(new i_(t,null)).pipe($f(t=>this._cachedIconsByUrl.set(e,t)),D(t=>s_(t)))}getNamedSvgIcon(t,e=""){const n=o_(e,t);let i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(e,t),i)return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);const r=this._iconSetConfigs.get(e);return r?this._getSvgFromIconSetConfigs(t,r):ip(t_(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgText?wd(s_(this._svgElementFromConfig(t))):this._loadSvgIconFromConfig(t).pipe(D(t=>s_(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?wd(n):hv(e.filter(t=>!t.svgText).map(t=>this._loadSvgIconSetFromConfig(t).pipe(pv(e=>{const n=`Loading icon set URL: ${this._sanitizer.sanitize(yr.RESOURCE_URL,t.url)} failed: ${e.message}`;return this._errorHandler.handleError(new Error(n)),wd(null)})))).pipe(D(()=>{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.svgText&&i.svgText.indexOf(t)>-1){const e=this._svgElementFromConfig(i),n=this._extractSvgIconFromSet(e,t,i.options);if(n)return n}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe($f(e=>t.svgText=e),D(()=>this._svgElementFromConfig(t)))}_loadSvgIconSetFromConfig(t){return t.svgText?wd(null):this._fetchIcon(t).pipe($f(e=>t.svgText=e))}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);const s=this._svgElementFromString("");return s.appendChild(r),this._setSvgAttributes(s,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(s)),at());return this._inProgressUrlFetches.set(s,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}_svgElementFromConfig(t){if(!t.svgElement){const e=this._svgElementFromString(t.svgText);this._setSvgAttributes(e,t.options),t.svgElement=e}return t.svgElement}_getIconConfigFromResolvers(t,e){for(let n=0;ne?e.pathname+e.search:""}}}),u_=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],h_=u_.map(t=>`[${t}]`).join(", "),d_=/^url\(['"]?#(.*?)['"]?\)$/;let p_=(()=>{class t extends l_{constructor(t,e,n,i,r){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=r,this._inline=!1,this._currentIconFetch=g.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=md(t)}get svgIcon(){return this._svgIcon}set svgIcon(t){t!==this._svgIcon&&(t?this._updateSvgIcon(t):this._svgIcon&&this._clearSvgElement(),this._svgIcon=t)}get fontSet(){return this._fontSet}set fontSet(t){const e=this._cleanupFontValue(t);e!==this._fontSet&&(this._fontSet=e,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(t){const e=this._cleanupFontValue(t);e!==this._fontIcon&&(this._fontIcon=e,this._updateFontIconClasses())}_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}"`)}}ngOnInit(){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(h_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const r=e[i],s=r.getAttribute(t),o=s?s.match(d_):null;if(o){let e=n.get(r);e||(e=[],n.set(r,e)),e.push({name:t,value:o[1]})}})}_updateSvgIcon(t){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),t){const[e,n]=this._splitIconName(t);e&&(this._svgNamespace=e),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,e).pipe(Gp(1)).subscribe(t=>this._setSvgElement(t),t=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${e}:${n}! ${t.message}`))})}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(r_),ni("aria-hidden"),ea(c_),ea(Ar))},t.\u0275cmp=Jt({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:7,hostBindings:function(t,e){2&t&&(Ko("data-mat-icon-type",e._usingFontIcon()?"font":"svg")("data-mat-icon-name",e._svgName||e.fontIcon)("data-mat-icon-namespace",e._svgNamespace||e.fontSet),ja("mat-icon-inline",e.inline)("mat-icon-no-color","primary"!==e.color&&"accent"!==e.color&&"warn"!==e.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[jo],ngContentSelectors:Jv,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:[".mat-icon{background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}\n"],encapsulation:2,changeDetection:0}),t})(),f_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})();const g_=["mat-button",""],m_=["*"],b_=".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",y_=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],v_=jy(Ly(Fy(class{constructor(t){this._elementRef=t}})));let __=(()=>{class t extends v_{constructor(t,e,n){super(t),this._focusMonitor=e,this._animationMode=n,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const i of y_)this._hasHostAttributes(i)&&this._getHostElement().classList.add(i);t.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(t,e){t?this._focusMonitor.focusVia(this._getHostElement(),t,e):this._getHostElement().focus(e)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...t){return t.some(t=>this._getHostElement().hasAttribute(t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(t,e){if(1&t&&qc(Yy,5),2&t){let t;Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(t,e){2&t&&(Ko("disabled",e.disabled||null),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),w_=(()=>{class t extends __{constructor(t,e,n){super(e,t,n)}_haltDisabledEvents(t){this.disabled&&(t.preventDefault(),t.stopImmediatePropagation())}}return t.\u0275fac=function(e){return new(e||t)(ea(Mg),ea(kl),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(t,e){1&t&&fa("click",function(t){return e._haltDisabledEvents(t)}),2&t&&(Ko("tabindex",e.disabled?-1:e.tabIndex||0)("disabled",e.disabled||null)("aria-disabled",e.disabled.toString()),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),x_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny],Ny]}),t})();class S_ extends v{notifyNext(t,e,n,i,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}class E_ extends v{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()}}function C_(t,e,n,i,r=new E_(t,n,i)){if(!r.closed)return e instanceof C?e.subscribe(r):V(e)(r)}const O_={};function T_(...t){let e,n;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0]),K(t,n).lift(new k_(e))}class k_{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new A_(t,this.resultSelector))}}class A_ extends S_{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(O_),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{class t{constructor(t){this._platform=t,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):D_}matchMedia(t){return this._platform.WEBKIT&&function(t){if(!P_.has(t))try{M_||(M_=document.createElement("style"),M_.setAttribute("type","text/css"),document.head.appendChild(M_)),M_.sheet&&(M_.sheet.insertRule(`@media ${t} {.fx-query-test{ }}`,0),P_.add(t))}catch(e){console.error(e)}}(t),this._matchMedia(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function D_(t){return{matches:"all"===t||""===t,media:t,addListener:()=>{},removeListener:()=>{}}}let R_=(()=>{class t{constructor(t,e){this._mediaMatcher=t,this._zone=e,this._queries=new Map,this._destroySubject=new P}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(t){return N_(yd(t)).some(t=>this._registerQuery(t).mql.matches)}observe(t){let e=T_(N_(yd(t)).map(t=>this._registerQuery(t).observable));return e=Yd(e.pipe(Gp(1)),e.pipe(Qf(1),qf(0))),e.pipe(D(t=>{const e={matches:!1,breakpoints:{}};return t.forEach(({matches:t,query:n})=>{e.matches=e.matches||t,e.breakpoints[n]=t}),e}))}_registerQuery(t){if(this._queries.has(t))return this._queries.get(t);const e=this._mediaMatcher.matchMedia(t),n={observable:new C(t=>{const n=e=>this._zone.run(()=>t.next(e));return e.addListener(n),()=>{e.removeListener(n)}}).pipe(Kd(e),D(({matches:e})=>({query:t,matches:e})),Wd(this._destroySubject)),mql:e};return this._queries.set(t,n),n}}return t.\u0275fac=function(e){return new(e||t)(Ci(I_),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(I_),Ci(xu))},token:t,providedIn:"root"}),t})();function N_(t){return t.map(t=>t.split(",")).reduce((t,e)=>t.concat(e)).map(t=>t.trim())}function L_(t,e){if(1&t){const t=ua();ra(0,"div",1),ra(1,"button",2),fa("click",function(){return $e(t),va().action()}),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),Ja(t.data.action)}}function j_(t,e){}const F_=new oi("MatSnackBarData");class B_{constructor(){this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"}}const V_=Math.pow(2,31)-1;class z_{constructor(t,e){this._overlayRef=e,this._afterDismissed=new P,this._afterOpened=new P,this._onAction=new P,this._dismissedByAction=!1,this.containerInstance=t,this.onAction().subscribe(()=>this.dismiss()),t._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(t){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(t,V_))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}}let U_=(()=>{class t{constructor(t,e){this.snackBarRef=t,this.data=e}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}}return t.\u0275fac=function(e){return new(e||t)(ea(z_),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(t,e){1&t&&(ra(0,"span"),Za(1),sa(),Jo(2,L_,3,1,"div",0)),2&t&&(ws(1),Ja(e.data.message),ws(1),na("ngIf",e.hasAction))},directives:[_h,__],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}\n"],encapsulation:2,changeDetection:0}),t})();const H_={snackBarState:Vg("state",[$g("void, hidden",Hg({transform:"scale(0.8)",opacity:0})),$g("visible",Hg({transform:"scale(1)",opacity:1})),Wg("* => visible",zg("150ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void, * => hidden",zg("75ms cubic-bezier(0.4, 0.0, 1, 1)",Hg({opacity:0})))])};let $_=(()=>{class t extends Fp{constructor(t,e,n,i,r){super(),this._ngZone=t,this._elementRef=e,this._changeDetectorRef=n,this._platform=i,this.snackBarConfig=r,this._announceDelay=150,this._destroyed=!1,this._onAnnounce=new P,this._onExit=new P,this._onEnter=new P,this._animationState="void",this.attachDomPortal=t=>(this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachDomPortal(t)),this._live="assertive"!==r.politeness||r.announcementMessage?"off"===r.politeness?"off":"polite":"assertive",this._platform.FIREFOX&&("polite"===this._live&&(this._role="status"),"assertive"===this._live&&(this._role="alert"))}attachComponentPortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(t)}onAnimationEnd(t){const{fromState:e,toState:n}=t;if(("void"===n&&"void"!==e||"hidden"===n)&&this._completeExit(),"visible"===n){const t=this._onEnter;this._ngZone.run(()=>{t.next(),t.complete()})}}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}exit(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}ngOnDestroy(){this._destroyed=!0,this._completeExit()}_completeExit(){this._ngZone.onMicrotaskEmpty.pipe(Gp(1)).subscribe(()=>{this._onExit.next(),this._onExit.complete()})}_applySnackBarClasses(){const t=this._elementRef.nativeElement,e=this.snackBarConfig.panelClass;e&&(Array.isArray(e)?e.forEach(e=>t.classList.add(e)):t.classList.add(e)),"center"===this.snackBarConfig.horizontalPosition&&t.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&t.classList.add("mat-snack-bar-top")}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{const t=this._elementRef.nativeElement.querySelector("[aria-hidden]"),e=this._elementRef.nativeElement.querySelector("[aria-live]");if(t&&e){let n=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(n=document.activeElement),t.removeAttribute("aria-hidden"),e.appendChild(t),null==n||n.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(pp),ea(B_))},t.\u0275cmp=Jt({type:t,selectors:[["snack-bar-container"]],viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(t,e){1&t&&ga("@state.done",function(t){return e.onAnimationEnd(t)}),2&t&&rl("@state",e._animationState)},features:[jo],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(t,e){1&t&&(ra(0,"div",0),Jo(1,j_,0,0,"ng-template",1),sa(),oa(2,"div")),2&t&&(ws(2),Ko("aria-live",e._live)("role",e._role))},directives:[Up],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[H_.snackBarState]}}),t})(),G_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rf,Hp,Rh,x_,Ny],Ny]}),t})();const W_=new oi("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new B_}});let q_=(()=>{class t{constructor(t,e,n,i,r,s){this._overlay=t,this._live=e,this._injector=n,this._breakpointObserver=i,this._parentSnackBar=r,this._defaultConfig=s,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=U_,this.snackBarContainerComponent=$_,this.handsetCssClass="mat-snack-bar-handset"}get _openedSnackBarRef(){const t=this._parentSnackBar;return t?t._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(t){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=t:this._snackBarRefAtThisLevel=t}openFromComponent(t,e){return this._attach(t,e)}openFromTemplate(t,e){return this._attach(t,e)}open(t,e="",n){const i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:t,action:e},i.announcementMessage===t&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:B_,useValue:e}]}),i=new Np(this.snackBarContainerComponent,e.viewContainerRef,n),r=t.attach(i);return r.instance.snackBarConfig=e,r.instance}_attach(t,e){const n=Object.assign(Object.assign(Object.assign({},new B_),this._defaultConfig),e),i=this._createOverlay(n),r=this._attachSnackBarContainer(i,n),s=new z_(r,i);if(t instanceof sc){const e=new Lp(t,null,{$implicit:n.data,snackBarRef:s});s.instance=r.attachTemplatePortal(e)}else{const e=this._createInjector(n,s),i=new Np(t,void 0,e),o=r.attachComponentPortal(i);s.instance=o.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(Wd(i.detachments())).subscribe(t=>{const e=i.overlayElement.classList;t.matches?e.add(this.handsetCssClass):e.remove(this.handsetCssClass)}),n.announcementMessage&&r._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(s,n),this._openedSnackBarRef=s,this._openedSnackBarRef}_animateSnackBar(t,e){t.afterDismissed().subscribe(()=>{this._openedSnackBarRef==t&&(this._openedSnackBarRef=null),e.announcementMessage&&this._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{t.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):t.containerInstance.enter(),e.duration&&e.duration>0&&t.afterOpened().subscribe(()=>t._dismissAfter(e.duration))}_createOverlay(t){const e=new af;e.direction=t.direction;let n=this._overlay.position().global();const i="rtl"===t.direction,r="left"===t.horizontalPosition||"start"===t.horizontalPosition&&!i||"end"===t.horizontalPosition&&i,s=!r&&"center"!==t.horizontalPosition;return r?n.left("0"):s?n.right("0"):n.centerHorizontally(),"top"===t.verticalPosition?n.top("0"):n.bottom("0"),e.positionStrategy=n,this._overlay.create(e)}_createInjector(t,e){return No.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:z_,useValue:e},{provide:F_,useValue:t.data}]})}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(kg),Ci(No),Ci(R_),Ci(t,12),Ci(W_))},t.\u0275prov=xt({factory:function(){return new t(Ci(kf),Ci(kg),Ci(_o),Ci(R_),Ci(t,12),Ci(W_))},token:t,providedIn:G_}),t})();const X_={tooltipState:Vg("state",[$g("initial, void, hidden",Hg({opacity:0,transform:"scale(0)"})),$g("visible",Hg({transform:"scale(1)"})),Wg("* => visible",zg("200ms cubic-bezier(0, 0, 0.2, 1)",Gg([Hg({opacity:0,transform:"scale(0)",offset:0}),Hg({opacity:.5,transform:"scale(0.99)",offset:.5}),Hg({opacity:1,transform:"scale(1)",offset:1})]))),Wg("* => hidden",zg("100ms cubic-bezier(0, 0, 0.2, 1)",Hg({opacity:0})))])},Y_="tooltip-panel",K_=_p({passive:!0}),Q_=new oi("mat-tooltip-scroll-strategy"),Z_={provide:Q_,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition({scrollThrottle:20})}},J_=new oi("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}});let tw=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this._overlay=t,this._elementRef=e,this._scrollDispatcher=n,this._viewContainerRef=i,this._ngZone=r,this._platform=s,this._ariaDescriber=o,this._focusMonitor=a,this._dir=c,this._defaultOptions=u,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new P,this._handleKeydown=t=>{this._isTooltipVisible()&&27===t.keyCode&&!Qp(t)&&(t.preventDefault(),t.stopPropagation(),this._ngZone.run(()=>this.hide(0)))},this._scrollStrategy=l,this._document=h,u&&(u.position&&(this.position=u.position),u.touchGestures&&(this.touchGestures=u.touchGestures)),c.change.pipe(Wd(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)}),r.runOutsideAngular(()=>{e.nativeElement.addEventListener("keydown",this._handleKeydown)})}get position(){return this._position}set position(t){var e;t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(e=this._tooltipInstance)||void 0===e||e.show(0),this._overlayRef.updatePosition()))}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get message(){return this._message}set message(t){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=t?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(Wd(this._destroyed)).subscribe(t=>{t?"keyboard"===t&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const t=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),t.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(([e,n])=>{t.removeEventListener(e,n,K_)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay){if(this.disabled||!this.message||this._isTooltipVisible()&&!this._tooltipInstance._showTimeoutId&&!this._tooltipInstance._hideTimeoutId)return;const e=this._createOverlay();this._detach(),this._portal=this._portal||new Np(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=e.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}hide(t=this.hideDelay){this._tooltipInstance&&this._tooltipInstance.hide(t)}toggle(){this._isTooltipVisible()?this.hide():this.show()}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(){if(this._overlayRef)return this._overlayRef;const t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),e=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return e.positionChanges.pipe(Wd(this._destroyed)).subscribe(t=>{this._updateCurrentPositionClass(t.connectionPair),this._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:e,panelClass:`${this._cssClassPrefix}-${Y_}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(Wd(this._destroyed)).subscribe(()=>{var t;return null===(t=this._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){const e=t.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();e.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}_addOffset(t){return t}_getOrigin(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e||"below"==e?n={originX:"center",originY:"above"==e?"top":"bottom"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={originX:"start",originY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={originX:"end",originY:"center"});const{x:i,y:r}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:i,originY:r}}}_getOverlayPosition(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e?n={overlayX:"center",overlayY:"bottom"}:"below"==e?n={overlayX:"center",overlayY:"top"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={overlayX:"end",overlayY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={overlayX:"start",overlayY:"center"});const{x:i,y:r}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:i,overlayY:r}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(Gp(1),Wd(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return"above"===this.position||"below"===this.position?"top"===e?e="bottom":"bottom"===e&&(e="top"):"end"===t?t="start":"start"===t&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){const{overlayY:e,originX:n,originY:i}=t;let r;if(r="center"===e?this._dir&&"rtl"===this._dir.value?"end"===n?"left":"right":"start"===n?"left":"right":"bottom"===e&&"top"===i?"above":"below",r!==this._currentPosition){const t=this._overlayRef;if(t){const e=`${this._cssClassPrefix}-${Y_}-`;t.removePanelClass(e+this._currentPosition),t.addPanelClass(e+r)}this._currentPosition=r}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",()=>{this._setupPointerExitEventsIfNeeded(),this.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",()=>{this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const t=[];if(this._platformSupportsMouseEvents())t.push(["mouseleave",()=>this.hide()],["wheel",t=>this._wheelListener(t)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const e=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};t.push(["touchend",e],["touchcancel",e])}this._addListeners(t),this._passiveListeners.push(...t)}_addListeners(t){t.forEach(([t,e])=>{this._elementRef.nativeElement.addEventListener(t,e,K_)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(t){if(this._isTooltipVisible()){const e=this._document.elementFromPoint(t.clientX,t.clientY),n=this._elementRef.nativeElement;e!==n&&!n.contains(e)&&this.hide()}}_disableNativeGesturesIfNecessary(){const t=this.touchGestures;if("off"!==t){const e=this._elementRef.nativeElement,n=e.style;("on"===t||"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),("on"===t||!e.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(void 0),ea(Op),ea(void 0),ea(Yu))},t.\u0275dir=se({type:t,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),t})(),ew=(()=>{class t extends tw{constructor(t,e,n,i,r,s,o,a,l,c,u,h){super(t,e,n,i,r,s,o,a,l,c,u,h),this._tooltipComponent=iw}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(Q_),ea(Op,8),ea(J_,8),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[jo]}),t})(),nw=(()=>{class t{constructor(t){this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new P}show(t){clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(()=>{this._visibility="visible",this._showTimeoutId=void 0,this._onShow(),this._markForCheck()},t)}hide(t){clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._visibility="hidden",this._hideTimeoutId=void 0,this._markForCheck()},t)}afterHidden(){return this._onHide}isVisible(){return"visible"===this._visibility}ngOnDestroy(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}_animationStart(){this._closeOnInteraction=!1}_animationDone(t){const e=t.toState;"hidden"===e&&!this.isVisible()&&this._onHide.next(),("visible"===e||"hidden"===e)&&(this._closeOnInteraction=!0)}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_onShow(){}}return t.\u0275fac=function(e){return new(e||t)(ea(tc))},t.\u0275dir=se({type:t}),t})(),iw=(()=>{class t extends nw{constructor(t,e){super(t),this._breakpointObserver=e,this._isHandset=this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)")}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(R_))},t.\u0275cmp=Jt({type:t,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(t,e){2&t&&La("zoom","visible"===e._visibility?1:null)},features:[jo],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(t,e){if(1&t&&(ra(0,"div",0),fa("@state.start",function(){return e._animationStart()})("@state.done",function(t){return e._animationDone(t)}),Mc(1,"async"),Za(2),sa()),2&t){let t;ja("mat-tooltip-handset",null==(t=Ic(1,5,e._isHandset))?null:t.matches),na("ngClass",e.tooltipClass)("@state",e._visibility),ws(2),Ja(e.message)}},directives:[mh],pipes:[Dh],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[X_.tooltipState]},changeDetection:0}),t})(),rw=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Z_],imports:[[Lg,Rh,Rf,Ny],Ny,Ip]}),t})();function sw(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(o=(s<3?r(o):s>3?r(e,n,o):r(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o}function ow(t,e){return function(n,i){e(n,i,t)}}function aw(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function lw(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{l(i.next(t))}catch(e){s(e)}}function a(t){try{l(i.throw(t))}catch(e){s(e)}}function l(t){t.done?r(t.value):function(t){return t instanceof n?t:new n(function(e){e(t)})}(t.value).then(o,a)}l((i=i.apply(t,e||[])).next())})}function cw(t){if("undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"==typeof process.versions&&Boolean(process.versions.electron))return!0;const e="object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)}function uw(){return!("object"==typeof process&&"[object process]"===String(process)&&!process.browser)||cw()}const hw="undefined"!=typeof __VERSION__?__VERSION__:"untranspiled source",dw=uw();class pw{constructor(t,e,n="sessionStorage"){this.storage=function(e){try{const t=window[e],n="__storage_test__";return t.setItem(n,n),t.removeItem(n),t}catch(t){return null}}(n),this.id=t,this.config={},Object.assign(this.config,e),this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){return this.config={},this.updateConfiguration(t)}updateConfiguration(t){if(Object.assign(this.config,t),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}return this}_loadConfiguration(){let t={};if(this.storage){const e=this.storage.getItem(this.id);t=e?JSON.parse(e):{}}return Object.assign(this.config,t),this}}function fw(t,e,n,i=600){const r=t.src.replace(/\(/g,"%28").replace(/\)/g,"%29");t.width>i&&(n=Math.min(n,i/t.width));const s=t.width*n,o=t.height*n,a=["font-size:1px;","padding:".concat(Math.floor(o/2),"px ").concat(Math.floor(s/2),"px;"),"line-height:".concat(o,"px;"),"background:url(".concat(r,");"),"background-size:".concat(s,"px ").concat(o,"px;"),"color:transparent;"].join("");return["".concat(e," %c+"),a]}const gw={BLACK:30,RED:31,GREEN:32,YELLOW:33,BLUE:34,MAGENTA:35,CYAN:36,WHITE:37,BRIGHT_BLACK:90,BRIGHT_RED:91,BRIGHT_GREEN:92,BRIGHT_YELLOW:93,BRIGHT_BLUE:94,BRIGHT_MAGENTA:95,BRIGHT_CYAN:96,BRIGHT_WHITE:97};function mw(t){return"string"==typeof t?gw[t.toUpperCase()]||gw.WHITE:t}function bw(t,e){if(!t)throw new Error(e||"Assertion failed")}const yw={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"==typeof process&&process},vw=yw.window||yw.self||yw.global,_w=yw.process||{};function ww(){let t;if(dw&&vw.performance)t=vw.performance.now();else if(_w.hrtime){const e=_w.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}console;const xw={debug:dw&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Sw={enabled:!0,level:0};function Ew(){}const Cw={},Ow={once:!0};function Tw(t){for(const e in t)for(const n in t[e])return n||"untitled";return"empty"}let kw=(()=>{class t{constructor({id:t}={id:""}){this.id=t,this.VERSION=hw,this._startTs=ww(),this._deltaTs=ww(),this.LOG_THROTTLE_TIMEOUT=0,this._storage=new pw("__probe-".concat(this.id,"__"),Sw),this.userData={},this.timeStamp("".concat(this.id," started")),function(t,e=["constructor"]){const n=Object.getPrototypeOf(t),i=Object.getOwnPropertyNames(n);for(const r of i)"function"==typeof t[r]&&(e.find(t=>r===t)||(t[r]=t[r].bind(t)))}(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((ww()-this._startTs).toPrecision(10))}getDelta(){return Number((ww()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(t=!0){return this._storage.updateConfiguration({enabled:t}),this}setLevel(t){return this._storage.updateConfiguration({level:t}),this}assert(t,e){bw(t,e)}warn(t){return this._getLogFunction(0,t,xw.warn,arguments,Ow)}error(t){return this._getLogFunction(0,t,xw.error,arguments)}deprecated(t,e){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(e,"` instead"))}removed(t,e){return this.error("`".concat(t,"` has been removed. Use `").concat(e,"` instead"))}probe(t,e){return this._getLogFunction(t,e,xw.log,arguments,{time:!0,once:!0})}log(t,e){return this._getLogFunction(t,e,xw.debug,arguments)}info(t,e){return this._getLogFunction(t,e,console.info,arguments)}once(t,e){return this._getLogFunction(t,e,xw.debug||xw.info,arguments,Ow)}table(t,e,n){return e?this._getLogFunction(t,e,console.table||Ew,n&&[n],{tag:Tw(e)}):Ew}image({logLevel:t,priority:e,image:i,message:r="",scale:s=1}){return this._shouldLog(t||e)?dw?function({image:t,message:e="",scale:n=1}){if("string"==typeof t){const i=new Image;return i.onload=()=>{const t=fw(i,e,n);console.log(...t)},i.src=t,Ew}const i=t.nodeName||"";if("img"===i.toLowerCase())return console.log(...fw(t,e,n)),Ew;if("canvas"===i.toLowerCase()){const i=new Image;return i.onload=()=>console.log(...fw(i,e,n)),i.src=t.toDataURL(),Ew}return Ew}({image:i,message:r,scale:s}):function({image:t,message:e="",scale:r=1}){let s=null;try{s=n(75307)}catch(i){}return s?()=>s(t,{fit:"box",width:"".concat(Math.round(80*r),"%")}).then(t=>console.log(t)):Ew}({image:i,message:r,scale:s}):Ew}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}get(t){return this._storage.config[t]}set(t,e){this._storage.updateConfiguration({[t]:e})}time(t,e){return this._getLogFunction(t,e,console.time?console.time:console.info)}timeEnd(t,e){return this._getLogFunction(t,e,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,e){return this._getLogFunction(t,e,console.timeStamp||Ew)}group(t,e,n={collapsed:!1}){n=Pw({logLevel:t,message:e,opts:n});const{collapsed:i}=n;return n.method=(i?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}groupCollapsed(t,e,n={}){return this.group(t,e,Object.assign({},n,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",console.groupEnd||Ew)}withGroup(t,e,n){this.group(t,e)();try{n()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&this.getLevel()>=Aw(t)}_getLogFunction(t,e,n,i=[],r){if(this._shouldLog(t)){r=Pw({logLevel:t,message:e,args:i,opts:r}),bw(n=n||r.method),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=ww();const s=r.tag||r.message;if(r.once){if(Cw[s])return Ew;Cw[s]=ww()}return e=function(t,e,n){if("string"==typeof e){const i=n.time?function(t,e=8){const n=Math.max(e-t.length,0);return"".concat(" ".repeat(n)).concat(t)}(function(t){let e;return e=t<10?"".concat(t.toFixed(2),"ms"):t<100?"".concat(t.toFixed(1),"ms"):t<1e3?"".concat(t.toFixed(0),"ms"):"".concat((t/1e3).toFixed(2),"s"),e}(n.total)):"";e=function(t,e,n){return!dw&&"string"==typeof t&&(e&&(e=mw(e),t="\x1b[".concat(e,"m").concat(t,"\x1b[39m")),n&&(e=mw(n),t="\x1b[".concat(n+10,"m").concat(t,"\x1b[49m"))),t}(e=n.time?"".concat(t,": ").concat(i," ").concat(e):"".concat(t,": ").concat(e),n.color,n.background)}return e}(this.id,r.message,r),n.bind(console,e,...r.args)}return Ew}}return t.VERSION=hw,t})();function Aw(t){if(!t)return 0;let e;switch(typeof t){case"number":e=t;break;case"object":e=t.logLevel||t.priority||0;break;default:return 0}return bw(Number.isFinite(e)&&e>=0),e}function Pw(t){const{logLevel:e,message:n}=t;t.logLevel=Aw(e);const i=t.args?Array.from(t.args):[];for(;i.length&&i.shift()!==n;);switch(t.args=i,typeof e){case"string":case"function":void 0!==n&&i.unshift(n),t.message=e;break;case"object":Object.assign(t,e)}"function"==typeof t.message&&(t.message=t.message());const r=typeof t.message;return bw("string"===r||"object"===r),Object.assign(t,t.opts)}var Mw=new kw({id:"deck"});const Iw={DEFAULT:-1,LNGLAT:1,METER_OFFSETS:2,LNGLAT_OFFSETS:3,CARTESIAN:0};Object.defineProperty(Iw,"IDENTITY",{get:()=>Mw.deprecated("COORDINATE_SYSTEM.IDENTITY","COORDINATE_SYSTEM.CARTESIAN")()||0});const Dw={WEB_MERCATOR:1,GLOBE:2,WEB_MERCATOR_AUTO_OFFSET:4,IDENTITY:0},Rw={click:{handler:"onClick"},panstart:{handler:"onDragStart"},panmove:{handler:"onDrag"},panend:{handler:"onDragEnd"}},Nw=new kw({id:"luma.gl"});function Lw(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function jw(t){return"undefined"!=typeof WebGLRenderingContext&&t instanceof WebGLRenderingContext||"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&Number.isFinite(t._version))}function Fw(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}function Bw(t){return Lw(jw(t),"Invalid WebGLRenderingContext"),t}function Vw(t){return Lw(Fw(t),"Requires WebGL2"),t}var zw=n(84761);const Uw={};const Hw=function t(e){const n=e.gl;this.ext=e,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(e.maxVertexAttribs);for(let i=0;i{zw.CO.console&&zw.CO.console.log&&zw.CO.console.log("OESVertexArrayObject emulation library context restored"),e.reset_()},!0),this.reset_()};$w.prototype.VERTEX_ARRAY_BINDING_OES=34229,$w.prototype.reset_=function(){if(void 0!==this.vertexArrayObjects)for(let t=0;tFw(t)?void 0:0,Yw={3074:t=>Fw(t)?void 0:36064,35723:t=>Fw(t)?void 0:4352,35977:Xw,32937:Xw,36795:(t,e)=>{const n=Fw(t)?t.getExtension("EXT_disjoint_timer_query_webgl2"):t.getExtension("EXT_disjoint_timer_query");return n&&n.GPU_DISJOINT_EXT?e(n.GPU_DISJOINT_EXT):0},37445:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_VENDOR_WEBGL||7936)},37446:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_RENDERER_WEBGL||7937)},34047:(t,e)=>{const n=t.luma.extensions.EXT_texture_filter_anisotropic;return n?e(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):1},32883:Xw,35071:Xw,37447:Xw,36063:(t,e)=>{if(!Fw(t)){const n=t.getExtension(Ww);return n?e(n.MAX_COLOR_ATTACHMENTS_WEBGL):0}},35379:Xw,35374:Xw,35377:Xw,34852:t=>{if(!Fw(t)){const e=t.getExtension(Ww);return e?e.MAX_DRAW_BUFFERS_WEBGL:0}},36203:t=>t.getExtension(Gw)?2147483647:65535,33001:t=>t.getExtension(Gw)?16777216:65535,33e3:t=>16777216,37157:Xw,35373:Xw,35657:Xw,36183:Xw,37137:Xw,34045:Xw,35978:Xw,35979:Xw,35968:Xw,35376:Xw,35375:Xw,35659:Xw,37154:Xw,35371:Xw,35658:Xw,35076:Xw,35077:Xw,35380:Xw},Kw="ANGLE_instanced_arrays",Qw={OES_vertex_array_object:{meta:{suffix:"OES"},createVertexArray:()=>{Lw(!1,"VertexArray requires WebGL2 or OES_vertex_array_object extension")},deleteVertexArray:()=>{},bindVertexArray:()=>{},isVertexArray:()=>!1},[Kw]:{meta:{suffix:"ANGLE"},vertexAttribDivisor(t,e){Lw(0===e,"WebGL instanced rendering not supported")},drawElementsInstanced:()=>{},drawArraysInstanced:()=>{}},WEBGL_draw_buffers:{meta:{suffix:"WEBGL"},drawBuffers:()=>{Lw(!1)}},EXT_disjoint_timer_query:{meta:{suffix:"EXT"},createQuery:()=>{Lw(!1)},deleteQuery:()=>{Lw(!1)},beginQuery:()=>{Lw(!1)},endQuery:()=>{},getQuery(t,e){return this.getQueryObject(t,e)},getQueryParameter(t,e){return this.getQueryObject(t,e)},getQueryObject:()=>{}}},Zw={readBuffer:(t,e,n)=>{Fw(t)&&e(n)},getVertexAttrib:(t,e,n,i)=>{const{webgl2:r,ext:s}=function(t,e){return{webgl2:Fw(t),ext:t.getExtension("ANGLE_instanced_arrays")}}(t);let o;switch(i){case 35069:o=!!r&&void 0;break;case 35070:o=r||s?void 0:0}return void 0!==o?o:e(n,i)},getProgramParameter:(t,e,n,i)=>{if(!Fw(t))switch(i){case 35967:return 35981;case 35971:case 35382:return 0}return e(n,i)},getInternalformatParameter:(t,e,n,i,r)=>{if(!Fw(t))switch(r){case 32937:return new Int32Array([0])}return t.getInternalformatParameter(n,i,r)},getTexParameter(t,e,n,i){switch(i){case 34046:const{extensions:e}=t.luma,n=e.EXT_texture_filter_anisotropic;i=n&&n.TEXTURE_MAX_ANISOTROPY_EXT||34046}return e(n,i)},getParameter:function(t,e,n){const i=Yw[n],r="function"==typeof i?i(t,e,n):i;return void 0!==r?r:e(n)},hint:(t,e,n,i)=>e(n,i)};function Jw(t,{extension:e,target:n,target2:i}){const r=Qw[e];Lw(r);const{meta:s={}}=r,{suffix:o=""}=s,a=t.getExtension(e);for(const l of Object.keys(r)){const e=`${l}${o}`;let s=null;"meta"===l||"function"==typeof t[l]||(a&&"function"==typeof a[e]?s=(...t)=>a[e](...t):"function"==typeof r[l]&&(s=r[l].bind(n))),s&&(n[l]=s,i[l]=s)}}("undefined"!=typeof global?global:window).polyfillContext=function(t){t.luma=t.luma||{};const{luma:e}=t;return e.polyfilled||(function(t){if("function"==typeof t.createVertexArray)return;const e=t.getSupportedExtensions;t.getSupportedExtensions=function(){const t=e.call(this)||[];return t.indexOf("OES_vertex_array_object")<0&&t.push("OES_vertex_array_object"),t};const n=t.getExtension;t.getExtension=function(e){return n.call(this,e)||("OES_vertex_array_object"!==e?null:(t.__OESVertexArrayObject||(this.__OESVertexArrayObject=new $w(this)),this.__OESVertexArrayObject))}}(t),function(t){t.luma.extensions={};const e=t.getSupportedExtensions()||[];for(const n of e)t.luma[n]=t.getExtension(n)}(t),function(t,e){for(const n of Object.getOwnPropertyNames(e))"overrides"!==n&&Jw(t,{extension:n,target:t.luma,target2:t})}(t,Qw),function(t,{target:e,target2:n}){Object.keys(Zw).forEach(i=>{if("function"==typeof Zw[i]){const r=t[i]?t[i].bind(t):()=>{},s=Zw[i].bind(null,t,r);e[i]=s,n[i]=s}})}(t,{target:e,target2:t}),e.polyfilled=!0),t};const tx={3042:!1,32773:new Float32Array([0,0,0,0]),32777:32774,34877:32774,32969:1,32968:0,32971:1,32970:0,3106:new Float32Array([0,0,0,0]),3107:[!0,!0,!0,!0],2884:!1,2885:1029,2929:!1,2931:1,2932:513,2928:new Float32Array([0,1]),2930:!0,3024:!0,36006:null,2886:2305,33170:4352,2849:1,32823:!1,32824:0,10752:0,32938:1,32939:!1,3089:!1,3088:new Int32Array([0,0,1024,1024]),2960:!1,2961:0,2968:4294967295,36005:4294967295,2962:519,2967:0,2963:4294967295,34816:519,36003:0,36004:4294967295,2964:7680,2965:7680,2966:7680,34817:7680,34818:7680,34819:7680,2978:[0,0,1024,1024],3333:4,3317:4,37440:!1,37441:!1,37443:37444,35723:4352,36010:null,35977:!1,3330:0,3332:0,3331:0,3314:0,32878:0,3316:0,3315:0,32877:0},ex=(t,e,n)=>e?t.enable(n):t.disable(n),nx=(t,e,n)=>t.hint(n,e),ix=(t,e,n)=>t.pixelStorei(n,e);function rx(t){return Array.isArray(t)||ArrayBuffer.isView(t)}const sx={3042:ex,32773:(t,e)=>t.blendColor(...e),32777:"blendEquation",34877:"blendEquation",32969:"blendFunc",32968:"blendFunc",32971:"blendFunc",32970:"blendFunc",3106:(t,e)=>t.clearColor(...e),3107:(t,e)=>t.colorMask(...e),2884:ex,2885:(t,e)=>t.cullFace(e),2929:ex,2931:(t,e)=>t.clearDepth(e),2932:(t,e)=>t.depthFunc(e),2928:(t,e)=>t.depthRange(...e),2930:(t,e)=>t.depthMask(e),3024:ex,35723:nx,36006:(t,e)=>{const n=Fw(t)?36009:36160;return t.bindFramebuffer(n,e)},2886:(t,e)=>t.frontFace(e),33170:nx,2849:(t,e)=>t.lineWidth(e),32823:ex,32824:"polygonOffset",10752:"polygonOffset",35977:ex,32938:"sampleCoverage",32939:"sampleCoverage",3089:ex,3088:(t,e)=>t.scissor(...e),2960:ex,2961:(t,e)=>t.clearStencil(e),2968:(t,e)=>t.stencilMaskSeparate(1028,e),36005:(t,e)=>t.stencilMaskSeparate(1029,e),2962:"stencilFuncFront",2967:"stencilFuncFront",2963:"stencilFuncFront",34816:"stencilFuncBack",36003:"stencilFuncBack",36004:"stencilFuncBack",2964:"stencilOpFront",2965:"stencilOpFront",2966:"stencilOpFront",34817:"stencilOpBack",34818:"stencilOpBack",34819:"stencilOpBack",2978:(t,e)=>t.viewport(...e),3333:ix,3317:ix,37440:ix,37441:ix,37443:ix,3330:ix,3332:ix,3331:ix,36010:(t,e)=>t.bindFramebuffer(36008,e),3314:ix,32878:ix,3316:ix,3315:ix,32877:ix,framebuffer:(t,e)=>t.bindFramebuffer(36160,e&&"handle"in e?e.handle:e),blend:(t,e)=>e?t.enable(3042):t.disable(3042),blendColor:(t,e)=>t.blendColor(...e),blendEquation:(t,e)=>{e=rx(e)?e:[e,e],t.blendEquationSeparate(...e)},blendFunc:(t,e)=>{e=rx(e)&&2===e.length?[...e,...e]:e,t.blendFuncSeparate(...e)},clearColor:(t,e)=>t.clearColor(...e),clearDepth:(t,e)=>t.clearDepth(e),clearStencil:(t,e)=>t.clearStencil(e),colorMask:(t,e)=>t.colorMask(...e),cull:(t,e)=>e?t.enable(2884):t.disable(2884),cullFace:(t,e)=>t.cullFace(e),depthTest:(t,e)=>e?t.enable(2929):t.disable(2929),depthFunc:(t,e)=>t.depthFunc(e),depthMask:(t,e)=>t.depthMask(e),depthRange:(t,e)=>t.depthRange(...e),dither:(t,e)=>e?t.enable(3024):t.disable(3024),derivativeHint:(t,e)=>{t.hint(35723,e)},frontFace:(t,e)=>t.frontFace(e),mipmapHint:(t,e)=>t.hint(33170,e),lineWidth:(t,e)=>t.lineWidth(e),polygonOffsetFill:(t,e)=>e?t.enable(32823):t.disable(32823),polygonOffset:(t,e)=>t.polygonOffset(...e),sampleCoverage:(t,e)=>t.sampleCoverage(...e),scissorTest:(t,e)=>e?t.enable(3089):t.disable(3089),scissor:(t,e)=>t.scissor(...e),stencilTest:(t,e)=>e?t.enable(2960):t.disable(2960),stencilMask:(t,e)=>{e=rx(e)?e:[e,e];const[n,i]=e;t.stencilMaskSeparate(1028,n),t.stencilMaskSeparate(1029,i)},stencilFunc:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilFuncSeparate(1028,n,i,r),t.stencilFuncSeparate(1029,s,o,a)},stencilOp:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilOpSeparate(1028,n,i,r),t.stencilOpSeparate(1029,s,o,a)},viewport:(t,e)=>t.viewport(...e)};function ox(t,e,n){return void 0!==e[t]?e[t]:n[t]}const ax={blendEquation:(t,e,n)=>t.blendEquationSeparate(ox(32777,e,n),ox(34877,e,n)),blendFunc:(t,e,n)=>t.blendFuncSeparate(ox(32969,e,n),ox(32968,e,n),ox(32971,e,n),ox(32970,e,n)),polygonOffset:(t,e,n)=>t.polygonOffset(ox(32824,e,n),ox(10752,e,n)),sampleCoverage:(t,e,n)=>t.sampleCoverage(ox(32938,e,n),ox(32939,e,n)),stencilFuncFront:(t,e,n)=>t.stencilFuncSeparate(1028,ox(2962,e,n),ox(2967,e,n),ox(2963,e,n)),stencilFuncBack:(t,e,n)=>t.stencilFuncSeparate(1029,ox(34816,e,n),ox(36003,e,n),ox(36004,e,n)),stencilOpFront:(t,e,n)=>t.stencilOpSeparate(1028,ox(2964,e,n),ox(2965,e,n),ox(2966,e,n)),stencilOpBack:(t,e,n)=>t.stencilOpSeparate(1029,ox(34817,e,n),ox(34818,e,n),ox(34819,e,n))},lx={enable:(t,e)=>t({[e]:!0}),disable:(t,e)=>t({[e]:!1}),pixelStorei:(t,e,n)=>t({[e]:n}),hint:(t,e,n)=>t({[e]:n}),bindFramebuffer:(t,e,n)=>{switch(e){case 36160:return t({36006:n,36010:n});case 36009:return t({36006:n});case 36008:return t({36010:n});default:return null}},blendColor:(t,e,n,i,r)=>t({32773:new Float32Array([e,n,i,r])}),blendEquation:(t,e)=>t({32777:e,34877:e}),blendEquationSeparate:(t,e,n)=>t({32777:e,34877:n}),blendFunc:(t,e,n)=>t({32969:e,32968:n,32971:e,32970:n}),blendFuncSeparate:(t,e,n,i,r)=>t({32969:e,32968:n,32971:i,32970:r}),clearColor:(t,e,n,i,r)=>t({3106:new Float32Array([e,n,i,r])}),clearDepth:(t,e)=>t({2931:e}),clearStencil:(t,e)=>t({2961:e}),colorMask:(t,e,n,i,r)=>t({3107:[e,n,i,r]}),cullFace:(t,e)=>t({2885:e}),depthFunc:(t,e)=>t({2932:e}),depthRange:(t,e,n)=>t({2928:new Float32Array([e,n])}),depthMask:(t,e)=>t({2930:e}),frontFace:(t,e)=>t({2886:e}),lineWidth:(t,e)=>t({2849:e}),polygonOffset:(t,e,n)=>t({32824:e,10752:n}),sampleCoverage:(t,e,n)=>t({32938:e,32939:n}),scissor:(t,e,n,i,r)=>t({3088:new Int32Array([e,n,i,r])}),stencilMask:(t,e)=>t({2968:e,36005:e}),stencilMaskSeparate:(t,e,n)=>t({[1028===e?2968:36005]:n}),stencilFunc:(t,e,n,i)=>t({2962:e,2967:n,2963:i,34816:e,36003:n,36004:i}),stencilFuncSeparate:(t,e,n,i,r)=>t({[1028===e?2962:34816]:n,[1028===e?2967:36003]:i,[1028===e?2963:36004]:r}),stencilOp:(t,e,n,i)=>t({2964:e,2965:n,2966:i,34817:e,34818:n,34819:i}),stencilOpSeparate:(t,e,n,i,r)=>t({[1028===e?2964:34817]:n,[1028===e?2965:34818]:i,[1028===e?2966:34819]:r}),viewport:(t,e,n,i,r)=>t({2978:[e,n,i,r]})},cx=(t,e)=>t.isEnabled(e),ux={3042:cx,2884:cx,2929:cx,3024:cx,32823:cx,32926:cx,32928:cx,3089:cx,2960:cx,35977:cx};function hx(t){for(const e in t)return!1;return!0}function dx(t,e){if(t===e)return!0;const n=Array.isArray(t)||ArrayBuffer.isView(t),i=Array.isArray(e)||ArrayBuffer.isView(e);if(n&&i&&t.length===e.length){for(let n=0;n{})}={}){this.gl=t,this.program=null,this.stateStack=[],this.enable=!0,this.cache=e?function(t,e){if("number"==typeof(e=e||tx)){const n=e,i=ux[n];return i?i(t,n):t.getParameter(n)}const n=Array.isArray(e)?e:Object.keys(e),i={};for(const r of n){const e=ux[r];i[r]=e?e(t,Number(r)):t.getParameter(Number(r))}return i}(t):Object.assign({},tx),this.log=n,this._updateCache=this._updateCache.bind(this),Object.seal(this)}push(t={}){this.stateStack.push({})}pop(){Lw(this.stateStack.length>0),yx(this.gl,this.stateStack[this.stateStack.length-1]),this.stateStack.pop()}_updateCache(t){let e,n=!1;const i=this.stateStack.length>0&&this.stateStack[this.stateStack.length-1];for(const r in t){Lw(void 0!==r);const s=t[r],o=this.cache[r];dx(s,o)||(n=!0,e=o,i&&!(r in i)&&(i[r]=o),this.cache[r]=s)}return{valueChanged:n,oldValue:e}}}function mx(t,e={}){const{enable:n=!0,copyState:i}=e;if(Lw(void 0!==i),!t.state){const e="undefined"!=typeof global?global:window,{polyfillContext:n}=e;n&&n(t),t.state=new gx(t,{copyState:i}),function(t){const e=t.useProgram.bind(t);t.useProgram=function(n){t.state.program!==n&&(e(n),t.state.program=n)}}(t);for(const i in lx)fx(t,i,lx[i]);px(t,"getParameter"),px(t,"isEnabled")}return t.state.enable=n,t}function bx(t){Lw(t.state),t.state.pop()}function yx(t,e){if(Lw(jw(t),"setParameters requires a WebGL context"),hx(e))return;const n={};for(const r in e){const i=Number(r),s=sx[r];s&&("string"==typeof s?n[s]=!0:s(t,e[r],i))}const i=t.state&&t.state.cache;if(i)for(const r in n)ax[r](t,e,i)}function vx(t,e,n){if(hx(e))return n(t);const{nocatch:i=!0}=e;let r;if(function(t){t.state||mx(t,{copyState:!1}),t.state.push()}(t),yx(t,e),i)r=n(t),bx(t);else try{r=n(t)}finally{bx(t)}return r}function _x(t){const{luma:e}=t;if(t.canvas&&e){const{clientWidth:n}=e.canvasSizeInfo;return n?t.drawingBufferWidth/n:1}return 1}function wx(t,e,n=!0){return function(t,e,n,i,r){const s=xx(t[0],e,n);let o=Sx(t[1],e,i,r),a=xx(t[0]+1,e,n);const l=a===n-1?a:a-1;let c;return a=Sx(t[1]+1,e,i,r),r?(a=0===a?a:a+1,c=o,o=a):c=a===i-1?a:a-1,{x:s,y:o,width:Math.max(l-s+1,1),height:Math.max(c-o+1,1)}}(e,_x(t),t.drawingBufferWidth,t.drawingBufferHeight,n)}function xx(t,e,n){return Math.min(Math.round(t*e),n-1)}function Sx(t,e,n,i){return i?Math.max(0,n-1-Math.round(t*e)):Math.min(Math.round(t*e),n-1)}const Ex=(0,zw.jU)(),Cx=Ex&&"undefined"!=typeof document,Ox={webgl2:!0,webgl1:!0,throwOnError:!0,manageState:!0,canvas:null,debug:!1,width:800,height:600};function Tx(t={}){Lw(Ex,"createGLContext only available in the browser.\nCreate your own headless context or use 'createHeadlessContext' from @luma.gl/test-utils"),t=Object.assign({},Ox,t);const{width:e,height:n}=t;function i(e){if(t.throwOnError)throw new Error(e);return console.error(e),null}let r;t.onError=i;const{canvas:s}=t,o=function({canvas:t,width:e=800,height:n=600,onError:i}){let r;return"string"==typeof t?(Cx&&"complete"===document.readyState||i(`createGLContext called on canvas '${t}' before page was loaded`),r=document.getElementById(t)):t?r=t:(r=document.createElement("canvas"),r.id="lumagl-canvas",r.style.width=Number.isFinite(e)?`${e}px`:"100%",r.style.height=Number.isFinite(n)?`${n}px`:"100%",document.body.insertBefore(r,document.body.firstChild)),r}({canvas:s,width:e,height:n,onError:i});return r=function(t,e){const{onError:n}=e;let i=null;const r=t=>i=t.statusMessage||i;t.addEventListener("webglcontextcreationerror",r,!1);const{webgl1:s=!0,webgl2:o=!0}=e;let a=null;return o&&(a=a||t.getContext("webgl2",e),a=a||t.getContext("experimental-webgl2",e)),s&&(a=a||t.getContext("webgl",e),a=a||t.getContext("experimental-webgl",e)),t.removeEventListener("webglcontextcreationerror",r,!1),a?(e.onContextLost&&t.addEventListener("webglcontextlost",e.onContextLost,!1),e.onContextRestored&&t.addEventListener("webglcontextrestored",e.onContextRestored,!1),a):n(`Failed to create ${o&&!s?"WebGL2":"WebGL"} context: ${i||"Unknown error"}`)}(o,t),r?(r=kx(r,t),function(t){const e=Fw(t)?"WebGL2":"WebGL1",n=function(t){const e=t.getParameter(7936),n=t.getParameter(7937),i=t.getExtension("WEBGL_debug_renderer_info");return{vendor:i&&t.getParameter(i.UNMASKED_VENDOR_WEBGL||7936)||e,renderer:i&&t.getParameter(i.UNMASKED_RENDERER_WEBGL||7937)||n,vendorMasked:e,rendererMasked:n,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t);Nw.info(1,`${e}${t.debug?" debug":""} context ${n?`(${n.vendor},${n.renderer})`:""}`)()}(r),r):null}function kx(t,e={}){if(!t||t._instrumented)return t;t._version=t._version||function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext?2:1}(t),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{},e=Object.assign({},Ox,e);const{manageState:n,debug:i}=e;return n&&mx(t,{copyState:!1,log:(...t)=>Nw.log(1,...t)()}),Ex&&i&&(zw.CO.makeDebugContext?(t=zw.CO.makeDebugContext(t,e),Nw.level=Math.max(Nw.level,1)):Nw.warn('WebGL debug mode not activated. import "@luma.gl/debug" to enable.')()),t._instrumented=!0,t}function Ax(){let t;if("undefined"!=typeof window&&window.performance)t=window.performance.now();else if("undefined"!=typeof process&&process.hrtime){const e=process.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}class Px{constructor(t,e){this.name=t,this.type=e,this.sampleSize=1,this.reset()}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=Ax(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(Ax()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}}class Mx{constructor({id:t,stats:e}){this.id=t,this.stats={},this._initializeStats(e),Object.seal(this)}get(t,e="count"){return this._getOrCreate({name:t,type:e})}get size(){return Object.keys(this.stats).length}reset(){for(const t in this.stats)this.stats[t].reset();return this}forEach(t){for(const e in this.stats)t(this.stats[e])}getTable(){const t={};return this.forEach(e=>{t[e.name]={time:e.time||0,count:e.count||0,average:e.getAverageTime()||0,hz:e.getHz()||0}}),t}_initializeStats(t=[]){t.forEach(t=>this._getOrCreate(t))}_getOrCreate(t){if(!t||!t.name)return null;const{name:e,type:n}=t;return this.stats[e]||(this.stats[e]=t instanceof Px?t:new Px(e,n)),this.stats[e]}}const Ix="8.5.7",Dx=new class{constructor(){this.stats=new Map}get(t){return this.stats.has(t)||this.stats.set(t,new Mx({id:t})),this.stats.get(t)}};if(zw.CO.luma&&zw.CO.luma.VERSION!==Ix)throw new Error(`luma.gl - multiple VERSIONs detected: ${zw.CO.luma.VERSION} vs 8.5.7`);function Rx(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function Nx(t,e){if("string"!=typeof e)return e;const n=Number(e);if(!isNaN(n))return n;const i=t[e=e.replace(/^.*\./,"")];return Rx(void 0!==i,`Accessing undefined constant GL.${e}`),i}function Lx(t,e){e=Number(e);for(const n in t)if(t[n]===e)return`GL.${n}`;return String(e)}zw.CO.luma||((0,zw.jU)()&&Nw.log(1,"luma.gl 8.5.7 - set luma.log.level=1 (or higher) to trace rendering")(),zw.CO.luma=zw.CO.luma||{VERSION:Ix,version:Ix,log:Nw,stats:Dx,globals:{modules:{},nodeIO:{}}});const jx={};function Fx(t="id"){return jx[t]=jx[t]||1,`${t}-${jx[t]++}`}function Bx(t){return Rx("number"==typeof t,"Input must be a number"),t&&0==(t&t-1)}function Vx(t){let e=!0;for(const n in t){e=!1;break}return e}function zx(t,e,n,i){const r=`See luma.gl ${n} Upgrade Guide at https://luma.gl/docs/upgrade-guide`,s=Object.getPrototypeOf(t);i.forEach(t=>{s.methodName||(s[t]=()=>{throw Nw.removed(`Calling removed method ${e}.${t}: `,r)(),new Error(t)})})}const Ux="Resource subclass must define virtual methods";class Hx{constructor(t,e={}){Bw(t);const{id:n,userData:i={}}=e;this.gl=t,this.gl2=t,this.id=n||Fx(this.constructor.name),this.userData=i,this._bound=!1,this._handle=e.handle,void 0===this._handle&&(this._handle=this._createHandle()),this.byteLength=0,this._addStats()}toString(){return`${this.constructor.name}(${this.id})`}get handle(){return this._handle}delete({deleteChildren:t=!1}={}){const e=this._handle&&this._deleteHandle(this._handle);return this._handle&&this._removeStats(),this._handle=null,e&&t&&e.filter(Boolean).forEach(t=>t.delete()),this}bind(t=this.handle){if("function"!=typeof t)return this._bindHandle(t),this;let e;return this._bound?e=t():(this._bindHandle(this.handle),this._bound=!0,e=t(),this._bound=!1,this._bindHandle(null)),e}unbind(){this.bind(null)}getParameter(t,e={}){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension)){const e=n.webgl1,i="webgl2"in n?n.webgl2:n.webgl1;return t?i:e}}return this._getParameter(t,e)}getParameters(t={}){const{parameters:e,keys:n}=t,i=this.constructor.PARAMETERS||{},r=Fw(this.gl),s={},o=e||Object.keys(i);for(const a of o){const e=i[a];if(e&&(!("webgl2"in e)||r)&&(!("extension"in e)||this.gl.getExtension(e.extension))){const i=n?Lx(this.gl,a):a;s[i]=this.getParameter(a,t),n&&"GLenum"===e.type&&(s[i]=Lx(this.gl,s[i]))}}return s}setParameter(t,e){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension))throw new Error("Parameter not available on this platform");"GLenum"===n.type&&(e=Nx(e))}return this._setParameter(t,e),this}setParameters(t){for(const e in t)this.setParameter(e,t[e]);return this}stubRemovedMethods(t,e,n){return zx(this,t,e,n)}initialize(t){}_createHandle(){throw new Error(Ux)}_deleteHandle(){throw new Error(Ux)}_bindHandle(t){throw new Error(Ux)}_getOptsFromHandle(){throw new Error(Ux)}_getParameter(t,e){throw new Error(Ux)}_setParameter(t,e){throw new Error(Ux)}_context(){return this.gl.luma=this.gl.luma||{},this.gl.luma}_addStats(){const t=this.constructor.name,e=Dx.get("Resource Counts");e.get("Resources Created").incrementCount(),e.get(`${t}s Created`).incrementCount(),e.get(`${t}s Active`).incrementCount()}_removeStats(){const t=this.constructor.name;Dx.get("Resource Counts").get(`${t}s Active`).decrementCount()}_trackAllocatedMemory(t,e=this.constructor.name){const n=Dx.get("Memory Usage");n.get("GPU Memory").addCount(t),n.get(`${e} Memory`).addCount(t),this.byteLength=t}_trackDeallocatedMemory(t=this.constructor.name){const e=Dx.get("Memory Usage");e.get("GPU Memory").subtractCount(this.byteLength),e.get(`${t} Memory`).subtractCount(this.byteLength),this.byteLength=0}}function $x(t){switch(ArrayBuffer.isView(t)?t.constructor:t){case Float32Array:return 5126;case Uint16Array:return 5123;case Uint32Array:return 5125;case Uint8Array:case Uint8ClampedArray:return 5121;case Int8Array:return 5120;case Int16Array:return 5122;case Int32Array:return 5124;default:throw new Error("Failed to deduce GL constant from typed array")}}function Gx(t,{clamped:e=!0}={}){switch(t){case 5126:return Float32Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return e?Uint8ClampedArray:Uint8Array;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}function Wx({data:t,width:e,height:n}){const i=Math.round(e/2),r=Math.round(n/2),s=new Uint8Array(i*r*4);for(let o=0;othis._assign(t)),Object.freeze(this)}toString(){return JSON.stringify(this)}get BYTES_PER_ELEMENT(){return Kx.getBytesPerElement(this)}get BYTES_PER_VERTEX(){return Kx.getBytesPerVertex(this)}_assign(t={}){return void 0!==(t=qx("Accessor",t,Yx)).type&&(this.type=t.type,(5124===t.type||5125===t.type)&&(this.integer=!0)),void 0!==t.size&&(this.size=t.size),void 0!==t.offset&&(this.offset=t.offset),void 0!==t.stride&&(this.stride=t.stride),void 0!==t.normalized&&(this.normalized=t.normalized),void 0!==t.integer&&(this.integer=t.integer),void 0!==t.divisor&&(this.divisor=t.divisor),void 0!==t.buffer&&(this.buffer=t.buffer),void 0!==t.index&&(this.index="boolean"==typeof t.index?t.index?1:0:t.index),void 0!==t.instanced&&(this.divisor=t.instanced?1:0),void 0!==t.isInstanced&&(this.divisor=t.isInstanced?1:0),this}}const Qx={offset:"accessor.offset",stride:"accessor.stride",type:"accessor.type",size:"accessor.size",divisor:"accessor.divisor",normalized:"accessor.normalized",integer:"accessor.integer",instanced:"accessor.divisor",isInstanced:"accessor.divisor"},Zx={removedProps:{},replacedProps:{bytes:"byteLength"},deprecatedProps:Qx},Jx={removedProps:Qx};class tS extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Buffer","v6.0",["layout","setLayout","getIndexedParameter"]),this.target=e.target||(this.gl.webgl2?36662:34962),this.initialize(e),Object.seal(this)}getElementCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerElement(t))}getVertexCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerVertex(t))}initialize(t={}){return ArrayBuffer.isView(t)&&(t={data:t}),Number.isFinite(t)&&(t={byteLength:t}),t=qx("Buffer",t,Zx),this.usage=t.usage||35044,this.debugData=null,this.setAccessor(Object.assign({},t,t.accessor)),t.data?this._setData(t.data,t.offset,t.byteLength):this._setByteLength(t.byteLength||0),this}setProps(t){return"accessor"in(t=qx("Buffer",t,Jx))&&this.setAccessor(t.accessor),this}setAccessor(t){return delete(t=Object.assign({},t)).buffer,this.accessor=new Kx(t),this}reallocate(t){return t>this.byteLength?(this._setByteLength(t),!0):(this.bytesUsed=t,!1)}setData(t){return this.initialize(t)}subData(t){ArrayBuffer.isView(t)&&(t={data:t});const{data:e,offset:n=0,srcOffset:i=0}=t,r=t.byteLength||t.length;Rx(e);const s=this.gl.webgl2?36663:this.target;return this.gl.bindBuffer(s,this.handle),0!==i||void 0!==r?(Vw(this.gl),this.gl.bufferSubData(this.target,n,e,i,r)):this.gl.bufferSubData(s,n,e),this.gl.bindBuffer(s,null),this.debugData=null,this._inferType(e),this}copyData({sourceBuffer:t,readOffset:e=0,writeOffset:n=0,size:i}){const{gl:r}=this;return Vw(r),r.bindBuffer(36662,t.handle),r.bindBuffer(36663,this.handle),r.copyBufferSubData(36662,36663,e,n,i),r.bindBuffer(36662,null),r.bindBuffer(36663,null),this.debugData=null,this}getData({dstData:t=null,srcByteOffset:e=0,dstOffset:n=0,length:i=0}={}){Vw(this.gl);const r=Gx(this.accessor.type||5126,{clamped:!1}),s=this._getAvailableElementCount(e),o=n;let a,l;t?(l=t.length,a=l-o):(a=Math.min(s,i||s),l=o+a);const c=Math.min(s,a);return Rx((i=i||c)<=c),t=t||new r(l),this.gl.bindBuffer(36662,this.handle),this.gl.getBufferSubData(36662,e,t,n,i),this.gl.bindBuffer(36662,null),t}bind({target:t=this.target,index:e=this.accessor&&this.accessor.index,offset:n=0,size:i}={}){return 35345===t||35982===t?void 0!==i?this.gl.bindBufferRange(t,e,this.handle,n,i):(Rx(0===n),this.gl.bindBufferBase(t,e,this.handle)):this.gl.bindBuffer(t,this.handle),this}unbind({target:t=this.target,index:e=this.accessor&&this.accessor.index}={}){return 35345===t||35982===t?this.gl.bindBufferBase(t,e,null):this.gl.bindBuffer(t,null),this}getDebugData(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(10,this.byteLength)}),{data:this.debugData,changed:!0})}invalidateDebugData(){this.debugData=null}_setData(t,e=0,n=t.byteLength+e){Rx(ArrayBuffer.isView(t)),this._trackDeallocatedMemory();const i=this._getTarget();this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,this.usage),this.gl.bufferSubData(i,e,t),this.gl.bindBuffer(i,null),this.debugData=t.slice(0,10),this.bytesUsed=n,this._trackAllocatedMemory(n);const r=$x(t);return Rx(r),this.setAccessor(new Kx(this.accessor,{type:r})),this}_setByteLength(t,e=this.usage){Rx(t>=0),this._trackDeallocatedMemory();let n=t;0===t&&(n=new Float32Array(0));const i=this._getTarget();return this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,e),this.gl.bindBuffer(i,null),this.usage=e,this.debugData=null,this.bytesUsed=t,this._trackAllocatedMemory(t),this}_getTarget(){return this.gl.webgl2?36663:this.target}_getAvailableElementCount(t){const e=t/Gx(this.accessor.type||5126,{clamped:!1}).BYTES_PER_ELEMENT;return this.getElementCount()-e}_inferType(t){this.accessor.type||this.setAccessor(new Kx(this.accessor,{type:$x(t)}))}_createHandle(){return this.gl.createBuffer()}_deleteHandle(){this.gl.deleteBuffer(this.handle),this._trackDeallocatedMemory()}_getParameter(t){this.gl.bindBuffer(this.target,this.handle);const e=this.gl.getBufferParameter(this.target,t);return this.gl.bindBuffer(this.target,null),e}get type(){return Nw.deprecated("Buffer.type","Buffer.accessor.type")(),this.accessor.type}get bytes(){return Nw.deprecated("Buffer.bytes","Buffer.byteLength")(),this.byteLength}setByteLength(t){return Nw.deprecated("setByteLength","reallocate")(),this.reallocate(t)}updateAccessor(t){return Nw.deprecated("updateAccessor(...)","setAccessor(new Accessor(buffer.accessor, ...)")(),this.accessor=new Kx(this.accessor,t),this}}const eS={6407:{dataFormat:6407,types:[5121,33635]},6408:{dataFormat:6408,types:[5121,32819,32820]},6406:{dataFormat:6406,types:[5121]},6409:{dataFormat:6409,types:[5121]},6410:{dataFormat:6410,types:[5121]},33326:{dataFormat:6403,types:[5126],gl2:!0},33328:{dataFormat:33319,types:[5126],gl2:!0},34837:{dataFormat:6407,types:[5126],gl2:!0},34836:{dataFormat:6408,types:[5126],gl2:!0}},nS={6403:1,36244:1,33319:2,33320:2,6407:3,36248:3,6408:4,36249:4,6402:1,34041:1,6406:1,6409:1,6410:2},iS={5126:4,5125:4,5124:4,5123:2,5122:2,5131:2,5120:1,5121:1},rS=[9729,9728],sS=zw.CO.WebGLBuffer||function(){};class oS extends Hx{static isSupported(t,e={}){const{format:n,linearFiltering:i}=e;let r=!0;return n&&(r=r&&function(t,e){const n=eS[e];if(!n)return!1;if(void 0===n.gl1&&void 0===n.gl2)return!0;const i=Fw(t)&&n.gl2||n.gl1;return"string"==typeof i?t.getExtension(i):i}(t,n),r=r&&(!i||function(t,e){const n=eS[e];switch(n&&n.types[0]){case 5126:return t.getExtension("OES_texture_float_linear");case 5131:return t.getExtension("OES_texture_half_float_linear");default:return!0}}(t,n))),r}constructor(t,e){const{id:n=Fx("texture"),handle:i,target:r}=e;super(t,{id:n,handle:i}),this.target=r,this.textureUnit=void 0,this.loaded=!1,this.width=void 0,this.height=void 0,this.depth=void 0,this.format=void 0,this.type=void 0,this.dataFormat=void 0,this.border=void 0,this.textureUnit=void 0,this.mipmaps=void 0}toString(){return`Texture(${this.id},${this.width}x${this.height})`}initialize(t={}){let e=t.data;if(e instanceof Promise)return e.then(e=>this.initialize(Object.assign({},t,{pixels:e,data:e}))),this;const n="undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement;if(n&&e.readyStatethis.initialize(t)),this;const{pixels:i=null,format:r=6408,border:s=0,recreate:o=!1,parameters:a={},pixelStore:l={},textureUnit:c}=t;e||(e=i);let{width:u,height:h,dataFormat:d,type:p,compressed:f=!1,mipmaps:g=!0}=t;const{depth:m=0}=t;return({width:u,height:h,compressed:f,dataFormat:d,type:p}=this._deduceParameters({format:r,type:p,dataFormat:d,compressed:f,data:e,width:u,height:h})),this.width=u,this.height=h,this.depth=m,this.format=r,this.type=p,this.dataFormat=d,this.border=s,this.textureUnit=c,Number.isFinite(this.textureUnit)&&(this.gl.activeTexture(33984+this.textureUnit),this.gl.bindTexture(this.target,this.handle)),g&&this._isNPOT()&&(Nw.warn(`texture: ${this} is Non-Power-Of-Two, disabling mipmaping`)(),g=!1,this._updateForNPOT(a)),this.mipmaps=g,this.setImageData({data:e,width:u,height:h,depth:m,format:r,type:p,dataFormat:d,border:s,mipmaps:g,parameters:l,compressed:f}),g&&this.generateMipmap(),this.setParameters(a),o&&(this.data=e),n&&(this._video={video:e,parameters:a,lastTime:e.readyState>=HTMLVideoElement.HAVE_CURRENT_DATA?e.currentTime:-1}),this}update(){if(this._video){const{video:t,parameters:e,lastTime:n}=this._video;if(n===t.currentTime||t.readyState{this.gl.generateMipmap(this.target)}),this.gl.bindTexture(this.target,null),this)}setImageData(t){this._trackDeallocatedMemory("Texture");const{target:e=this.target,pixels:n=null,level:i=0,format:r=this.format,border:s=this.border,offset:o=0,parameters:a={}}=t;let{data:l=null,type:c=this.type,width:u=this.width,height:h=this.height,dataFormat:d=this.dataFormat,compressed:p=!1}=t;l||(l=n),({type:c,dataFormat:d,compressed:p,width:u,height:h}=this._deduceParameters({format:r,type:c,dataFormat:d,compressed:p,data:l,width:u,height:h}));const{gl:f}=this;f.bindTexture(this.target,this.handle);let g,m=null;return({data:l,dataType:m}=this._getDataType({data:l,compressed:p})),vx(this.gl,a,()=>{switch(m){case"null":f.texImage2D(e,i,r,u,h,s,d,c,l);break;case"typed-array":f.texImage2D(e,i,r,u,h,s,d,c,l,o);break;case"buffer":g=Vw(f),g.bindBuffer(35052,l.handle||l),g.texImage2D(e,i,r,u,h,s,d,c,o),g.bindBuffer(35052,null);break;case"browser-object":Fw(f)?f.texImage2D(e,i,r,u,h,s,d,c,l):f.texImage2D(e,i,r,d,c,l);break;case"compressed":for(const[t,n]of l.entries())f.compressedTexImage2D(e,t,n.format,n.width,n.height,s,n.data);break;default:Rx(!1,"Unknown image data type")}}),this._trackAllocatedMemory(l&&l.byteLength?l.byteLength:this.width*this.height*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}setSubImageData({target:t=this.target,pixels:e=null,data:n=null,x:i=0,y:r=0,width:s=this.width,height:o=this.height,level:a=0,format:l=this.format,type:c=this.type,dataFormat:u=this.dataFormat,compressed:h=!1,offset:d=0,border:p=this.border,parameters:f={}}){if(({type:c,dataFormat:u,compressed:h,width:s,height:o}=this._deduceParameters({format:l,type:c,dataFormat:u,compressed:h,data:n,width:s,height:o})),Rx(0===this.depth,"texSubImage not supported for 3D textures"),n||(n=e),n&&n.data){const t=n;n=t.data,s=t.shape[0],o=t.shape[1]}n instanceof tS&&(n=n.handle),this.gl.bindTexture(this.target,this.handle),vx(this.gl,f,()=>{if(h)this.gl.compressedTexSubImage2D(t,a,i,r,s,o,l,n);else if(null===n)this.gl.texSubImage2D(t,a,i,r,s,o,u,c,null);else if(ArrayBuffer.isView(n))this.gl.texSubImage2D(t,a,i,r,s,o,u,c,n,d);else if(n instanceof sS){const e=Vw(this.gl);e.bindBuffer(35052,n),e.texSubImage2D(t,a,i,r,s,o,u,c,d),e.bindBuffer(35052,null)}else Fw(this.gl)?Vw(this.gl).texSubImage2D(t,a,i,r,s,o,u,c,n):this.gl.texSubImage2D(t,a,i,r,u,c,n)}),this.gl.bindTexture(this.target,null)}copyFramebuffer(t={}){return Nw.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}getActiveUnit(){return this.gl.getParameter(34016)-33984}bind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,this.handle),t}unbind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,null),t}_getDataType({data:t,compressed:e=!1}){return e?{data:t,dataType:"compressed"}:null===t?{data:t,dataType:"null"}:ArrayBuffer.isView(t)?{data:t,dataType:"typed-array"}:t instanceof tS?{data:t.handle,dataType:"buffer"}:t instanceof sS?{data:t,dataType:"buffer"}:{data:t,dataType:"browser-object"}}_deduceParameters(t){const{format:e,data:n}=t;let{width:i,height:r,dataFormat:s,type:o,compressed:a}=t;const l=eS[e];return s=s||l&&l.dataFormat,o=o||l&&l.types[0],a=a||l&&l.compressed,({width:i,height:r}=this._deduceImageSize(n,i,r)),{dataFormat:s,type:o,compressed:a,width:i,height:r,format:e,data:n}}_deduceImageSize(t,e,n){let i;return i="undefined"!=typeof ImageData&&t instanceof ImageData?{width:t.width,height:t.height}:"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement?{width:t.naturalWidth,height:t.naturalHeight}:"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?{width:t.width,height:t.height}:"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement?{width:t.videoWidth,height:t.videoHeight}:t?{width:e,height:n}:{width:e>=0?e:1,height:n>=0?n:1},Rx(i,"Could not deduced texture size"),Rx(void 0===e||i.width===e,"Deduced texture width does not match supplied width"),Rx(void 0===n||i.height===n,"Deduced texture height does not match supplied height"),i}_createHandle(){return this.gl.createTexture()}_deleteHandle(){this.gl.deleteTexture(this.handle),this._trackDeallocatedMemory("Texture")}_getParameter(t){switch(t){case 4096:return this.width;case 4097:return this.height;default:this.gl.bindTexture(this.target,this.handle);const e=this.gl.getTexParameter(this.target,t);return this.gl.bindTexture(this.target,null),e}}_setParameter(t,e){switch(this.gl.bindTexture(this.target,this.handle),e=this._getNPOTParam(t,e),t){case 33082:case 33083:this.gl.texParameterf(this.handle,t,e);break;case 4096:case 4097:Rx(!1);break;default:this.gl.texParameteri(this.target,t,e)}return this.gl.bindTexture(this.target,null),this}_isNPOT(){return!(Fw(this.gl)||!this.width||!this.height||Bx(this.width)&&Bx(this.height))}_updateForNPOT(t){void 0===t[this.gl.TEXTURE_MIN_FILTER]&&(t[this.gl.TEXTURE_MIN_FILTER]=this.gl.LINEAR),void 0===t[this.gl.TEXTURE_WRAP_S]&&(t[this.gl.TEXTURE_WRAP_S]=this.gl.CLAMP_TO_EDGE),void 0===t[this.gl.TEXTURE_WRAP_T]&&(t[this.gl.TEXTURE_WRAP_T]=this.gl.CLAMP_TO_EDGE)}_getNPOTParam(t,e){if(this._isNPOT())switch(t){case 10241:-1===rS.indexOf(e)&&(e=9729);break;case 10242:case 10243:33071!==e&&(e=33071)}return e}}function aS(t,e){return Rx("string"==typeof t),t=""+t,new Promise((n,i)=>{try{const r=new Image;r.onload=()=>n(r),r.onerror=()=>i(new Error(`Could not load image ${t}.`)),r.crossOrigin=e&&e.crossOrigin||"anonymous",r.src=t}catch(r){i(r)}})}class lS extends oS{static isSupported(t,e){return oS.isSupported(t,e)}constructor(t,e={}){Bw(t),(e instanceof Promise||"string"==typeof e)&&(e={data:e}),"string"==typeof e.data&&(e=Object.assign({},e,{data:aS(e.data)})),super(t,Object.assign({},e,{target:3553})),this.initialize(e),Object.seal(this)}}const cS="EXT_color_buffer_float";var uS={33189:{bpp:2},33190:{gl2:!0,bpp:3},36012:{gl2:!0,bpp:4},36168:{bpp:1},34041:{bpp:4},35056:{gl2:!0,bpp:4},36013:{gl2:!0,bpp:5},32854:{bpp:2},36194:{bpp:2},32855:{bpp:2},33321:{gl2:!0,bpp:1},33330:{gl2:!0,bpp:1},33329:{gl2:!0,bpp:1},33332:{gl2:!0,bpp:2},33331:{gl2:!0,bpp:2},33334:{gl2:!0,bpp:4},33333:{gl2:!0,bpp:4},33323:{gl2:!0,bpp:2},33336:{gl2:!0,bpp:2},33335:{gl2:!0,bpp:2},33338:{gl2:!0,bpp:4},33337:{gl2:!0,bpp:4},33340:{gl2:!0,bpp:8},33339:{gl2:!0,bpp:8},32849:{gl2:!0,bpp:3},32856:{gl2:!0,bpp:4},32857:{gl2:!0,bpp:4},36220:{gl2:!0,bpp:4},36238:{gl2:!0,bpp:4},36975:{gl2:!0,bpp:4},36214:{gl2:!0,bpp:8},36232:{gl2:!0,bpp:8},36226:{gl2:!0,bpp:16},36208:{gl2:!0,bpp:16},33325:{gl2:cS,bpp:2},33327:{gl2:cS,bpp:4},34842:{gl2:cS,bpp:8},33326:{gl2:cS,bpp:4},33328:{gl2:cS,bpp:8},34836:{gl2:cS,bpp:16},35898:{gl2:cS,bpp:4}};class hS extends Hx{static isSupported(t,{format:e}={format:null}){return!e||function(t,e,n){const i=n[e];if(!i)return!1;const r=Fw(t)&&i.gl2||i.gl1;return"string"==typeof r?t.getExtension(r):r}(t,e,uS)}static getSamplesForFormat(t,{format:e}){return t.getInternalformatParameter(36161,e,32937)}constructor(t,e={}){super(t,e),this.initialize(e),Object.seal(this)}initialize({format:t,width:e=1,height:n=1,samples:i=0}){return Rx(t,"Needs format"),this._trackDeallocatedMemory(),this.gl.bindRenderbuffer(36161,this.handle),0!==i&&Fw(this.gl)?this.gl.renderbufferStorageMultisample(36161,i,t,e,n):this.gl.renderbufferStorage(36161,t,e,n),this.format=t,this.width=e,this.height=n,this.samples=i,this._trackAllocatedMemory(this.width*this.height*(this.samples||1)*uS[this.format].bpp),this}resize({width:t,height:e}){return t!==this.width||e!==this.height?this.initialize({width:t,height:e,format:this.format,samples:this.samples}):this}_createHandle(){return this.gl.createRenderbuffer()}_deleteHandle(){this.gl.deleteRenderbuffer(this.handle),this._trackDeallocatedMemory()}_bindHandle(t){this.gl.bindRenderbuffer(36161,t)}_syncHandle(t){this.format=this.getParameter(36164),this.width=this.getParameter(36162),this.height=this.getParameter(36163),this.samples=this.getParameter(36011)}_getParameter(t){return this.gl.bindRenderbuffer(36161,this.handle),this.gl.getRenderbufferParameter(36161,t)}}const dS="clear: bad arguments";function pS(t,{framebuffer:e=null,color:n=null,depth:i=null,stencil:r=null}={}){const s={};e&&(s.framebuffer=e);let o=0;n&&(o|=16384,!0!==n&&(s.clearColor=n)),i&&(o|=256,!0!==i&&(s.clearDepth=i)),r&&(o|=1024,!0!==i&&(s.clearStencil=i)),Rx(0!==o,dS),vx(t,s,()=>{t.clear(o)})}function fS(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}function gS(t){return function(){var e=this,n=arguments;return new Promise(function(i,r){var s=t.apply(e,n);function o(t){fS(s,i,r,o,a,"next",t)}function a(t){fS(s,i,r,o,a,"throw",t)}o(void 0)})}}const mS=[34069,34070,34071,34072,34073,34074];let bS=(()=>{class t extends oS{constructor(t,e={}){Bw(t),super(t,Object.assign({},e,{target:34067})),this.initialize(e),Object.seal(this)}initialize(t={}){const{mipmaps:e=!0,parameters:n={}}=t;return this.opts=t,this.setCubeMapImageData(t).then(()=>{this.loaded=!0,e&&this.generateMipmap(t),this.setParameters(n)}),this}subImage({face:t,data:e,x:n=0,y:i=0,mipmapLevel:r=0}){return this._subImage({target:t,data:e,x:n,y:i,mipmapLevel:r})}setCubeMapImageData({width:t,height:e,pixels:n,data:i,border:r=0,format:s=6408,type:o=5121}){var a=this;return gS(function*(){const{gl:l}=a,c=n||i,u=yield Promise.all(mS.map(t=>{const e=c[t];return Promise.all(Array.isArray(e)?e:[e])}));a.bind(),mS.forEach((n,i)=>{u[i].length>1&&!1!==a.opts.mipmaps&&Nw.warn(`${a.id} has mipmap and multiple LODs.`)(),u[i].forEach((i,a)=>{t&&e?l.texImage2D(n,a,s,t,e,r,s,o,i):l.texImage2D(n,a,s,s,o,i)})}),a.unbind()})()}setImageDataForFace(t){const{face:e,width:n,height:i,pixels:r,data:s,border:o=0,format:a=6408,type:l=5121}=t,{gl:c}=this,u=r||s;return this.bind(),u instanceof Promise?u.then(n=>this.setImageDataForFace(Object.assign({},t,{face:e,data:n,pixels:n}))):this.width||this.height?c.texImage2D(e,0,a,n,i,o,a,l,u):c.texImage2D(e,0,a,a,l,u),this}}return t.FACES=mS,t})();class yS extends oS{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e=Object.assign({depth:1},e,{target:32879,unpackFlipY:!1})),this.initialize(e),Object.seal(this)}setImageData({level:t=0,dataFormat:e=6408,width:n,height:i,depth:r=1,border:s=0,format:o,type:a=5121,offset:l=0,data:c,parameters:u={}}){return this._trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle),vx(this.gl,u,()=>{ArrayBuffer.isView(c)&&this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,c),c instanceof tS&&(this.gl.bindBuffer(35052,c.handle),this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,l))}),this._trackAllocatedMemory(c&&c.byteLength?c.byteLength:this.width*this.height*this.depth*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}}function vS(t,e){const{gl:n,width:i,height:r,id:s}=t;return new SS(n,Object.assign({},e,{id:`framebuffer-for-${s}`,width:i,height:r,attachments:{36064:t}}))}function _S(t,e={}){const{sourceX:n=0,sourceY:i=0,sourceFormat:r=6408}=e;let{sourceAttachment:s=36064,target:o=null,sourceWidth:a,sourceHeight:l,sourceType:c}=e;const{framebuffer:u,deleteFramebuffer:h}=function(t){return t instanceof SS?{framebuffer:t,deleteFramebuffer:!1}:{framebuffer:vS(t),deleteFramebuffer:!0}}(t);Rx(u);const{gl:d,handle:p,attachments:f}=u;a=a||u.width,l=l||u.height,36064===s&&null===p&&(s=1028),Rx(f[s]),c=c||f[s].type,o=function(t,e,n,i,r){if(t)return t;return new(Gx(e=e||5121,{clamped:!1}))(i*r*function(t){switch(t){case 6406:case 33326:case 6403:return 1;case 33328:case 33319:return 2;case 6407:case 34837:return 3;case 6408:case 34836:return 4;default:return Rx(!1),0}}(n))}(o,c,r,a,l),c=c||$x(o);const g=d.bindFramebuffer(36160,p);return d.readPixels(n,i,a,l,r,c,o),d.bindFramebuffer(36160,g||null),h&&u.delete(),o}function wS(t,{sourceAttachment:e=36064,targetMaxHeight:n=Number.MAX_SAFE_INTEGER}={}){let i=_S(t,{sourceAttachment:e}),{width:r,height:s}=t;for(;s>n;)({data:i,width:r,height:s}=Wx({data:i,width:r,height:s}));!function({data:t,width:e,height:n,bytesPerPixel:i=4,temp:r}){const s=e*i;r=r||new Uint8Array(s);for(let o=0;o=0&&e>=0,"Width and height need to be integers"),this.width=t,this.height=e,n)for(const c in n){const i=n[c];(Array.isArray(i)?i[0]:i).resize({width:t,height:e})}else n=this._createDefaultAttachments(i,r,s,t,e);this.update({clearAttachments:!0,attachments:n,readBuffer:a,drawBuffers:l}),n&&o&&this.checkStatus()}delete(){for(const t of this.ownResources)t.delete();return super.delete(),this}update({attachments:t={},readBuffer:e,drawBuffers:n,clearAttachments:i=!1,resizeAttachments:r=!0}){this.attach(t,{clearAttachments:i,resizeAttachments:r});const{gl:s}=this,o=s.bindFramebuffer(36160,this.handle);return e&&this._setReadBuffer(e),n&&this._setDrawBuffers(n),s.bindFramebuffer(36160,o||null),this}resize(t={}){let{width:e,height:n}=t;if(null===this.handle)return Rx(void 0===e&&void 0===n),this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;void 0===e&&(e=this.gl.drawingBufferWidth),void 0===n&&(n=this.gl.drawingBufferHeight),e!==this.width&&n!==this.height&&Nw.log(2,`Resizing framebuffer ${this.id} to ${e}x${n}`)();for(const i in this.attachments)this.attachments[i].resize({width:e,height:n});return this.width=e,this.height=n,this}attach(t,{clearAttachments:e=!1,resizeAttachments:n=!0}={}){const i={};e&&Object.keys(this.attachments).forEach(t=>{i[t]=null}),Object.assign(i,t);const r=this.gl.bindFramebuffer(36160,this.handle);for(const s in i){Rx(void 0!==s,"Misspelled framebuffer binding point?");const t=Number(s),e=i[t];let r=e;if(r)if(r instanceof hS)this._attachRenderbuffer({attachment:t,renderbuffer:r});else if(Array.isArray(e)){const[n,i=0,s=0]=e;r=n,this._attachTexture({attachment:t,texture:n,layer:i,level:s})}else this._attachTexture({attachment:t,texture:r,layer:0,level:0});else this._unattach(t);n&&r&&r.resize({width:this.width,height:this.height})}this.gl.bindFramebuffer(36160,r||null),Object.assign(this.attachments,t),Object.keys(this.attachments).filter(t=>!this.attachments[t]).forEach(t=>{delete this.attachments[t]})}checkStatus(){const t=this.getStatus();if(36053!==t)throw new Error(function(t){return(SS.STATUS||{})[t]||`Framebuffer error ${t}`}(t));return this}getStatus(){const{gl:t}=this,e=t.bindFramebuffer(36160,this.handle),n=t.checkFramebufferStatus(36160);return t.bindFramebuffer(36160,e||null),n}clear(t={}){const{color:e,depth:n,stencil:i,drawBuffers:r=[]}=t,s=this.gl.bindFramebuffer(36160,this.handle);return(e||n||i)&&pS(this.gl,{color:e,depth:n,stencil:i}),r.forEach((t,e)=>{!function(t,{framebuffer:e=null,buffer:n=6144,drawBuffer:i=0,value:r=[0,0,0,0]}={}){Vw(t),vx(t,{framebuffer:e},()=>{switch(n){case 6144:switch(r.constructor){case Int32Array:t.clearBufferiv(n,i,r);break;case Uint32Array:t.clearBufferuiv(n,i,r);break;case Float32Array:default:t.clearBufferfv(n,i,r)}break;case 6145:t.clearBufferfv(6145,0,[r]);break;case 6146:t.clearBufferiv(6146,0,[r]);break;case 34041:const[e,s]=r;t.clearBufferfi(34041,0,e,s);break;default:Rx(!1,dS)}})}(this.gl,{drawBuffer:e,value:t})}),this.gl.bindFramebuffer(36160,s||null),this}readPixels(t={}){return Nw.error("Framebuffer.readPixels() is no logner supported, use readPixelsToArray(framebuffer)")(),null}readPixelsToBuffer(t={}){return Nw.error("Framebuffer.readPixelsToBuffer()is no logner supported, use readPixelsToBuffer(framebuffer)")(),null}copyToDataUrl(t={}){return Nw.error("Framebuffer.copyToDataUrl() is no logner supported, use copyToDataUrl(framebuffer)")(),null}copyToImage(t={}){return Nw.error("Framebuffer.copyToImage() is no logner supported, use copyToImage(framebuffer)")(),null}copyToTexture(t={}){return Nw.error("Framebuffer.copyToTexture({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}blit(t={}){return Nw.error("Framebuffer.blit({...}) is no logner supported, use blit(source, target, opts)")(),null}invalidate({attachments:t=[],x:e=0,y:n=0,width:i,height:r}){const s=Vw(this.gl),o=s.bindFramebuffer(36008,this.handle);return 0===e&&0===n&&void 0===i&&void 0===r?s.invalidateFramebuffer(36008,t):s.invalidateFramebuffer(36008,t,e,n,i,r),s.bindFramebuffer(36008,o),this}getAttachmentParameter(t,e,n){let i=this._getAttachmentParameterFallback(e);return null===i&&(this.gl.bindFramebuffer(36160,this.handle),i=this.gl.getFramebufferAttachmentParameter(36160,t,e),this.gl.bindFramebuffer(36160,null)),n&&i>1e3&&(i=Lx(this.gl,i)),i}getAttachmentParameters(t=36064,e,n=this.constructor.ATTACHMENT_PARAMETERS||[]){const i={};for(const r of n)i[e?Lx(this.gl,r):r]=this.getAttachmentParameter(t,r,e);return i}getParameters(t=!0){const e=Object.keys(this.attachments),n={};for(const i of e){const e=Number(i);n[t?Lx(this.gl,e):e]=this.getAttachmentParameters(e,t)}return n}show(){return"undefined"!=typeof window&&window.open(wS(this),"luma-debug-texture"),this}log(t=0,e=""){if(t>Nw.level||"undefined"==typeof window)return this;e=e||`Framebuffer ${this.id}`;const n=wS(this,{targetMaxHeight:100});return Nw.image({logLevel:t,message:e,image:n},e)(),this}bind({target:t=36160}={}){return this.gl.bindFramebuffer(t,this.handle),this}unbind({target:t=36160}={}){return this.gl.bindFramebuffer(t,null),this}_createDefaultAttachments(t,e,n,i,r){let s=null;return t&&(s=s||{},s[36064]=new lS(this.gl,{id:`${this.id}-color0`,pixels:null,format:6408,type:5121,width:i,height:r,mipmaps:!1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.ownResources.push(s[36064])),e&&n?(s=s||{},s[33306]=new hS(this.gl,{id:`${this.id}-depth-stencil`,format:35056,width:i,height:111}),this.ownResources.push(s[33306])):e?(s=s||{},s[36096]=new hS(this.gl,{id:`${this.id}-depth`,format:33189,width:i,height:r}),this.ownResources.push(s[36096])):n&&Rx(!1),s}_unattach(t){const e=this.attachments[t];!e||(e instanceof hS?this.gl.framebufferRenderbuffer(36160,t,36161,null):this.gl.framebufferTexture2D(36160,t,3553,null,0),delete this.attachments[t])}_attachRenderbuffer({attachment:t=36064,renderbuffer:e}){const{gl:n}=this;n.framebufferRenderbuffer(36160,t,36161,e.handle),this.attachments[t]=e}_attachTexture({attachment:t=36064,texture:e,layer:n,level:i}){const{gl:r}=this;switch(r.bindTexture(e.target,e.handle),e.target){case 35866:case 32879:Vw(r).framebufferTextureLayer(36160,t,e.target,i,n);break;case 34067:const s=function(t){return t<34069?t+34069:t}(n);r.framebufferTexture2D(36160,t,s,e.handle,i);break;case 3553:r.framebufferTexture2D(36160,t,3553,e.handle,i);break;default:Rx(!1,"Illegal texture type")}r.bindTexture(e.target,null),this.attachments[t]=e}_setReadBuffer(t){const e=function(t){return Fw(t)?t:null}(this.gl);e?e.readBuffer(t):Rx(36064===t||1029===t,xS),this.readBuffer=t}_setDrawBuffers(t){const{gl:e}=this,n=Vw(e);if(n)n.drawBuffers(t);else{const n=e.getExtension("WEBGL_draw_buffers");n?n.drawBuffersWEBGL(t):Rx(1===t.length&&(36064===t[0]||1029===t[0]),xS)}this.drawBuffers=t}_getAttachmentParameterFallback(t){const e=function(t){t.luma=t.luma||{},t.luma.caps=t.luma.caps||{};for(const e in ES)void 0===t.luma.caps[e]&&(t.luma.caps[e]=TS(t,e));return t.luma.caps}(this.gl);switch(t){case 36052:return e.WEBGL2?null:0;case 33298:case 33299:case 33300:case 33301:case 33302:case 33303:return e.WEBGL2?null:8;case 33297:return e.WEBGL2?null:5125;case 33296:return e.WEBGL2||e.EXT_sRGB?null:9729;default:return null}}_createHandle(){return this.gl.createFramebuffer()}_deleteHandle(){this.gl.deleteFramebuffer(this.handle)}_bindHandle(t){return this.gl.bindFramebuffer(36160,t)}}SS.ATTACHMENT_PARAMETERS=[36049,36048,33296,33298,33299,33300,33301,33302,33303];var ES={WEBGL2:[!1,!0],VERTEX_ARRAY_OBJECT:["OES_vertex_array_object",!0],TIMER_QUERY:["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],INSTANCED_RENDERING:["ANGLE_instanced_arrays",!0],MULTIPLE_RENDER_TARGETS:["WEBGL_draw_buffers",!0],ELEMENT_INDEX_UINT32:["OES_element_index_uint",!0],BLEND_EQUATION_MINMAX:["EXT_blend_minmax",!0],FLOAT_BLEND:["EXT_float_blend"],COLOR_ENCODING_SRGB:["EXT_sRGB",!0],TEXTURE_DEPTH:["WEBGL_depth_texture",!0],TEXTURE_FLOAT:["OES_texture_float",!0],TEXTURE_HALF_FLOAT:["OES_texture_half_float",!0],TEXTURE_FILTER_LINEAR_FLOAT:["OES_texture_float_linear"],TEXTURE_FILTER_LINEAR_HALF_FLOAT:["OES_texture_half_float_linear"],TEXTURE_FILTER_ANISOTROPIC:["EXT_texture_filter_anisotropic"],COLOR_ATTACHMENT_RGBA32F:[function(t){const e=new lS(t,{format:6408,type:5126,dataFormat:6408}),n=new SS(t,{id:"test-framebuffer",check:!1,attachments:{36064:e}}),i=n.getStatus();return e.delete(),n.delete(),36053===i},"EXT_color_buffer_float"],COLOR_ATTACHMENT_FLOAT:[!1,"EXT_color_buffer_float"],COLOR_ATTACHMENT_HALF_FLOAT:["EXT_color_buffer_half_float"],GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]};function CS(t,e){return OS(t,e)}function OS(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>TS(t,e))}function TS(t,e){return t.luma=t.luma||{},t.luma.caps=t.luma.caps||{},void 0===t.luma.caps[e]&&(t.luma.caps[e]=function(t,e){const n=ES[e];let i;Rx(n,e);const r=Fw(t)&&n[1]||n[0];if("function"==typeof r)i=r(t);else if(Array.isArray(r)){i=!0;for(const e of r)i=i&&Boolean(t.getExtension(e))}else"string"==typeof r?i=Boolean(t.getExtension(r)):"boolean"==typeof r?i=r:Rx(!1);return i}(t,e)),t.luma.caps[e]||Nw.log(2,`Feature: ${e} not supported`)(),t.luma.caps[e]}class kS{constructor(t,e){this.opts=e,this.source=t}get value(){return this.source.value}getValue(){const t=this.source.getBuffer(),e=this.getAccessor();if(t)return[t,e];const{value:n}=this.source,{size:i}=e;let r=n;if(n&&n.length!==i){r=new Float32Array(i);const t=e.elementOffset||0;for(let e=0;ei&&(r=i);const s=this._pool,o=t.BYTES_PER_ELEMENT*r,a=s.findIndex(t=>t.byteLength>=o);if(a>=0){const e=new t(s.splice(a,1)[0],0,r);return n&&e.fill(0),e}return new t(r)}_release(t){if(!ArrayBuffer.isView(t))return;const e=this._pool,{buffer:n}=t,{byteLength:i}=n,r=e.findIndex(t=>t.byteLength>=i);r<0?e.push(n):(r>0||e.lengththis.props.poolSize&&e.shift()}};Math;const PS=1/180*Math.PI,MS={};function IS(t,{precision:e=MS.precision||4}={}){return t=function(t){return Math.round(t/MS.EPSILON)*MS.EPSILON}(t),`${parseFloat(t.toPrecision(e))}`}function DS(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function RS(t,e,n){if(DS(t)){n=n||function(t){return t.clone?t.clone():new Array(t.length)}(t);for(let i=0;it*PS,void 0)}(t)}function LS(t,e,n){return RS(t,t=>Math.max(e,Math.min(n,t)))}function jS(t,e,n){return DS(t)?t.map((t,i)=>jS(t,e[i],n)):n*e+(1-n)*t}function FS(t,e,n){const i=MS.EPSILON;n&&(MS.EPSILON=n);try{if(t===e)return!0;if(DS(t)&&DS(e)){if(t.length!==e.length)return!1;for(let n=0;n0?", ":"")+IS(this[n],t);return`${t.printTypes?this.constructor.name:""}[${e}]`}equals(t){if(!t||this.length!==t.length)return!1;for(let e=0;e=0&&t=0&&t0&&(dE.length=t.length,i=dE):i=hE,(e>0||Number.isFinite(n))&&(i=(Array.isArray(i)?i:Array.from(i)).slice(e,n),r.index=e-1),{iterable:i,objectInfo:r}}function fE(t){return t&&t[Symbol.asyncIterator]}function gE(t,e=(()=>!0)){return Array.isArray(t)?mE(t,e,[]):e(t)?[t]:[]}function mE(t,e,n){let i=-1;for(;++ia)return void e.set(t.subarray(0,a),n);if(e.set(t,n),!s)return;let l=o;for(;lt},spring:{stiffness:.05,damping:.5}};function xE(t,e){return t?(Number.isFinite(t)&&(t={duration:t}),t.type=t.type||"interpolation",wt(wt(wt({},wE[t.type]),e),t)):null}function SE(t,e){return e.getBuffer()?[e.getBuffer(),{divisor:0,size:e.size,normalized:e.settings.normalized}]:e.value}function EE(t){switch(t){case 1:return"float";case 2:return"vec2";case 3:return"vec3";case 4:return"vec4";default:throw new Error('No defined attribute type for size "'.concat(t,'"'))}}function CE(t){t.push(t.shift())}function OE(t,e){const{doublePrecision:n,settings:i,value:r,size:s}=t,o=n&&r instanceof Float64Array?2:1;return(i.noAlloc?r.length:e*s)*o}function TE({buffer:t,numInstances:e,attribute:n,fromLength:i,fromStartIndices:r,getData:s=(t=>t)}){const o=n.doublePrecision&&n.value instanceof Float64Array?2:1,a=n.size*o,l=n.byteOffset,c=n.startIndices,u=r&&c,h=OE(n,e),d=n.state.constant;if(!u&&i>=h)return;const p=d?n.value:n.getBuffer().getData({srcByteOffset:l});if(n.settings.normalized&&!d){const t=s;s=(e,i)=>n._normalizeConstant(t(e,i))}const f=d?(t,e)=>s(p,e):(t,e)=>s(p.subarray(t,t+a),e),g=t.getData({length:i}),m=new Float32Array(h);(function({source:t,target:e,size:n,getData:i,sourceStartIndices:r,targetStartIndices:s}){if(!Array.isArray(s))return _E({source:t,target:e,size:n,getData:i}),e;let o=0,a=0;const l=i&&((t,e)=>i(t+a,e)),c=Math.min(r.length,s.length);for(let u=1;u(t+128)/255*2-1);case 5122:return new Float32Array(t).map(t=>(t+32768)/65535*2-1);case 5121:return new Float32Array(t).map(t=>t/255);case 5123:return new Float32Array(t).map(t=>t/65535);default:return t}}_normalizeValue(t,e,n){const{defaultValue:i,size:r}=this.settings;if(Number.isFinite(t))return e[n]=t,e;if(!t)return e[n]=i[0],e;switch(r){case 4:e[n+3]=Number.isFinite(t[3])?t[3]:i[3];case 3:e[n+2]=Number.isFinite(t[2])?t[2]:i[2];case 2:e[n+1]=Number.isFinite(t[1])?t[1]:i[1];case 1:e[n+0]=Number.isFinite(t[0])?t[0]:i[0];break;default:let s=r;for(;--s>=0;)e[n+s]=Number.isFinite(t[s])?t[s]:i[s]}return e}_areValuesEqual(t,e){if(!t||!e)return!1;const{size:n}=this;for(let i=0;it[e])]:t[e],n)}setNeedsUpdate(t=this.id,e){if(this.state.needsUpdate=this.state.needsUpdate||t,this.setNeedsRedraw(t),e){const{startRow:t=0,endRow:n=1/0}=e;this.state.updateRanges=function(t,e){if(t===vE||(e[0]<0&&(e[0]=0),e[0]>=e[1]))return t;const n=[],i=t.length;let r=0;for(let s=0;se[1]?n.push(i):e=[Math.min(i[0],e[0]),Math.max(i[1],e[1])]}return n.splice(r,0,e),n}(this.state.updateRanges,[t,n])}else this.state.updateRanges=vE}clearNeedsUpdate(){this.state.needsUpdate=!1,this.state.updateRanges=yE}setNeedsRedraw(t=this.id){this.state.needsRedraw=this.state.needsRedraw||t}update(t){this.setData(t)}allocate(t){const{state:e,settings:n}=this;return!n.noAlloc&&!!n.update&&(super.allocate({numInstances:t,copy:e.updateRanges!==vE}),!0)}updateBuffer({numInstances:t,data:e,props:n,context:i}){if(!this.needsUpdate())return!1;const{state:{updateRanges:r},settings:{update:s,noAlloc:o}}=this;let a=!0;if(s){for(const[o,a]of r)s.call(i,this,{data:e,startRow:o,endRow:a,props:n,numInstances:t});if(this.value)if(this.constant||this.buffer.byteLength{if(!r){const n=i*a+l;for(let i=0;ic?l.set(e,f):(t._normalizeValue(e,m.target,0),bE({target:l,source:m.target,start:f,count:n}));f+=n*c}else t._normalizeValue(e,l,f),f+=c}}_validateAttributeUpdaters(){const{settings:t}=this;if(!t.noAlloc&&"function"!=typeof t.update)throw new Error("Attribute ".concat(this.id," missing update or accessor"))}_checkAttributeArray(){const{value:t}=this,e=Math.min(4,this.size);if(t&&t.length>=e){let n=!0;switch(e){case 4:n=n&&Number.isFinite(t[3]);case 3:n=n&&Number.isFinite(t[2]);case 2:n=n&&Number.isFinite(t[1]);case 1:n=n&&Number.isFinite(t[0]);break;default:n=!1}if(!n)throw new Error("Illegal attribute generated for ".concat(this.id))}}}let AE={};function PE(t){Mw.level>0&&AE[t]&&AE[t].call(...arguments)}function ME(t,e){if(!t)throw new Error(e||"shadertools: assertion failed.")}const IE="out vec4 transform_output;\nvoid main() {\n transform_output = vec4(0);\n}",DE=`#version 300 es\n${IE}`;function RE(t,e){e=Array.isArray(e)?e:[e];const n=t.replace(/^\s+/,"").split(/\s+/),[i,r,s]=n;return e.includes(i)&&r&&s?{qualifier:i,type:r,name:s.split(";")[0]}:null}function NE(t={}){const{version:e=100,input:n,inputType:i,output:r}=t;if(!n)return 300===e?DE:e>300?`#version ${e}\n${IE}`:"void main() {gl_FragColor = vec4(0);}";const s=function(t,e){switch(e){case"float":return`vec4(${t}, 0.0, 0.0, 1.0)`;case"vec2":return`vec4(${t}, 0.0, 1.0)`;case"vec3":return`vec4(${t}, 1.0)`;case"vec4":return t;default:return ME(!1),null}}(n,i);return e>=300?`#version ${e} ${300===e?"es":""}\nin ${i} ${n};\nout vec4 ${r};\nvoid main() {\n ${r} = ${s};\n}`:`varying ${i} ${n};\nvoid main() {\n gl_FragColor = ${s};\n}`}class LE extends Hx{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e),this.initialize(e),this.stubRemovedMethods("TransformFeedback","v6.0",["pause","resume"]),Object.seal(this)}initialize(t={}){return this.buffers={},this.unused={},this.configuration=null,this.bindOnUse=!0,Vx(this.buffers)||this.bind(()=>this._unbindBuffers()),this.setProps(t),this}setProps(t){"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"bindOnUse"in t&&(t=t.bindOnUse),"buffers"in t&&this.setBuffers(t.buffers)}setBuffers(t={}){return this.bind(()=>{for(const e in t)this.setBuffer(e,t[e])}),this}setBuffer(t,e){const n=this._getVaryingIndex(t),{buffer:i,byteSize:r,byteOffset:s}=this._getBufferParams(e);return n<0?(this.unused[t]=i,Nw.warn(()=>`${this.id} unused varying buffer ${t}`)(),this):(this.buffers[n]=e,this.bindOnUse||this._bindBuffer(n,i,s,r),this)}begin(t=0){return this.gl.bindTransformFeedback(36386,this.handle),this._bindBuffers(),this.gl.beginTransformFeedback(t),this}end(){return this.gl.endTransformFeedback(),this._unbindBuffers(),this.gl.bindTransformFeedback(36386,null),this}_getBufferParams(t){let e,n,i;return t instanceof tS?i=t:(i=t.buffer,n=t.byteSize,e=t.byteOffset),(void 0!==e||void 0!==n)&&(e=e||0,n=n||i.byteLength-e),{buffer:i,byteOffset:e,byteSize:n}}_getVaryingInfo(t){return this.configuration&&this.configuration.getVaryingInfo(t)}_getVaryingIndex(t){if(this.configuration)return this.configuration.getVaryingInfo(t).location;const e=Number(t);return Number.isFinite(e)?e:-1}_bindBuffers(){if(this.bindOnUse)for(const t in this.buffers){const{buffer:e,byteSize:n,byteOffset:i}=this._getBufferParams(this.buffers[t]);this._bindBuffer(t,e,i,n)}}_unbindBuffers(){if(this.bindOnUse)for(const t in this.buffers)this._bindBuffer(t,null)}_bindBuffer(t,e,n=0,i){const r=e&&e.handle;return r&&void 0!==i?this.gl.bindBufferRange(35982,t,r,n,i):this.gl.bindBufferBase(35982,t,r),this}_createHandle(){return this.gl.createTransformFeedback()}_deleteHandle(){this.gl.deleteTransformFeedback(this.handle)}_bindHandle(t){this.gl.bindTransformFeedback(36386,this.handle)}}class jE{constructor(t,e={}){this.gl=t,this.currentIndex=0,this.feedbackMap={},this.varyings=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}setupResources(t){for(const e of this.bindings)this._setupTransformFeedback(e,t)}updateModelProps(t={}){const{varyings:e}=this;return e.length>0&&(t=Object.assign({},t,{varyings:e})),t}getDrawOptions(t={}){const e=this.bindings[this.currentIndex],{sourceBuffers:n,transformFeedback:i}=e;return{attributes:Object.assign({},n,t.attributes),transformFeedback:i}}swap(){return!!this.feedbackMap&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupBuffers(t)}getBuffer(t){const{feedbackBuffers:e}=this.bindings[this.currentIndex],n=t?e[t]:null;return n?n instanceof tS?n:n.buffer:null}getData(t={}){const{varyingName:e}=t,n=this.getBuffer(e);return n?n.getData():null}delete(){for(const t in this.resources)this.resources[t].delete()}_initialize(t={}){this._setupBuffers(t),this.varyings=t.varyings||Object.keys(this.bindings[this.currentIndex].feedbackBuffers),this.varyings.length>0&&Rx(Fw(this.gl))}_getFeedbackBuffers(t){const{sourceBuffers:e={}}=t,n={};if(this.bindings[this.currentIndex]&&Object.assign(n,this.bindings[this.currentIndex].feedbackBuffers),this.feedbackMap)for(const i in this.feedbackMap){const t=this.feedbackMap[i];i in e&&(n[t]=i)}Object.assign(n,t.feedbackBuffers);for(const i in n){const t=n[i];if("string"==typeof t){const r=e[t],{byteLength:s,usage:o,accessor:a}=r;n[i]=this._createNewBuffer(i,{byteLength:s,usage:o,accessor:a})}}return n}_setupBuffers(t={}){const{sourceBuffers:e=null}=t;Object.assign(this.feedbackMap,t.feedbackMap);const n=this._getFeedbackBuffers(t);this._updateBindings({sourceBuffers:e,feedbackBuffers:n})}_setupTransformFeedback(t,{model:e}){const{program:n}=e;t.transformFeedback=new LE(this.gl,{program:n,buffers:t.feedbackBuffers})}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this.feedbackMap){const{sourceBuffers:t,feedbackBuffers:e}=this._swapBuffers(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceBuffers:t,feedbackBuffers:e})}}_updateBinding(t,e){return t?(Object.assign(t.sourceBuffers,e.sourceBuffers),Object.assign(t.feedbackBuffers,e.feedbackBuffers),t.transformFeedback&&t.transformFeedback.setBuffers(t.feedbackBuffers),t):{sourceBuffers:Object.assign({},e.sourceBuffers),feedbackBuffers:Object.assign({},e.feedbackBuffers)}}_swapBuffers(t){if(!this.feedbackMap)return null;const e=Object.assign({},t.sourceBuffers),n=Object.assign({},t.feedbackBuffers);for(const i in this.feedbackMap){const r=this.feedbackMap[i];e[i]=t.feedbackBuffers[r],n[r]=t.sourceBuffers[i],Rx(n[r]instanceof tS)}return{sourceBuffers:e,feedbackBuffers:n}}_createNewBuffer(t,e){const n=new tS(this.gl,e);return this.resources[t]&&this.resources[t].delete(),this.resources[t]=n,n}_getNextIndex(){return(this.currentIndex+1)%2}}function FE(t){let e=100;const n=t.match(/[^\s]+/g);if(n.length>=2&&"#version"===n[0]){const t=parseInt(n[1],10);Number.isFinite(t)&&(e=t)}return e}const BE="vs",VE={[BE]:"#ifdef MODULE_LOGDEPTH\n logdepth_adjustPosition(gl_Position);\n#endif\n",fs:"#ifdef MODULE_MATERIAL\n gl_FragColor = material_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LIGHTING\n gl_FragColor = lighting_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_FOG\n gl_FragColor = fog_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_PICKING\n gl_FragColor = picking_filterHighlightColor(gl_FragColor);\n gl_FragColor = picking_filterPickingColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LOGDEPTH\n logdepth_setFragDepth();\n#endif\n"},zE="__LUMA_INJECT_DECLARATIONS__",UE=/void\s+main\s*\([^)]*\)\s*\{\n?/,HE=/}\n?[^{}]*$/,$E=[];function GE(t,e,n,i=!1){const r=e===BE;for(const s in n){const e=n[s];e.sort((t,e)=>t.order-e.order),$E.length=e.length;for(let t=0,n=e.length;tt+i));break;case"vs:#main-end":r&&(t=t.replace(HE,t=>i+t));break;case"fs:#decl":r||(t=t.replace(zE,i));break;case"fs:#main-start":r||(t=t.replace(UE,t=>t+i));break;case"fs:#main-end":r||(t=t.replace(HE,t=>i+t));break;default:t=t.replace(s,t=>t+i)}}return t=t.replace(zE,""),i&&(t=t.replace(/\}\s*$/,t=>t+VE[e])),t}function WE(t){const e={};return ME(Array.isArray(t)&&t.length>1),t.forEach(t=>{for(const n in t)e[n]=e[n]?`${e[n]}\n${t[n]}`:t[n]}),e}const qE={name:"transform",vs:"attribute float transform_elementID;\nvec2 transform_getPixelSizeHalf(vec2 size) {\n return vec2(1.) / (2. * size);\n}\n\nvec2 transform_getPixelIndices(vec2 texSize, vec2 pixelSizeHalf) {\n float yIndex = floor((transform_elementID / texSize[0]) + pixelSizeHalf[1]);\n float xIndex = transform_elementID - (yIndex * texSize[0]);\n return vec2(xIndex, yIndex);\n}\nvec2 transform_getTexCoord(vec2 size) {\n vec2 pixelSizeHalf = transform_getPixelSizeHalf(size);\n vec2 indices = transform_getPixelIndices(size, pixelSizeHalf);\n vec2 coord = indices / size + pixelSizeHalf;\n return coord;\n}\nvec2 transform_getPos(vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec2 pos = (texCoord * (2.0, 2.0)) - (1., 1.);\n return pos;\n}\nvec4 transform_getInput(sampler2D texSampler, vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec4 textureColor = texture2D(texSampler, texCoord);\n return textureColor;\n}\n",fs:null},XE="transform_uSize_",YE="transform_position";const KE={10241:9728,10240:9728,10242:33071,10243:33071};class QE{constructor(t,e={}){this.gl=t,this.id=this.currentIndex=0,this._swapTexture=null,this.targetTextureVarying=null,this.targetTextureType=null,this.samplerTextureMap=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}updateModelProps(t={}){const e=this._processVertexShader(t);return Object.assign({},t,e)}getDrawOptions(t={}){const{sourceBuffers:e,sourceTextures:n,framebuffer:i,targetTexture:r}=this.bindings[this.currentIndex],s=Object.assign({},e,t.attributes),o=Object.assign({},t.uniforms),a=Object.assign({},t.parameters);let l=t.discard;if(this.hasSourceTextures||this.hasTargetTexture){s.transform_elementID=this.elementIDBuffer;for(const e in this.samplerTextureMap)o[e]=n[this.samplerTextureMap[e]];this._setSourceTextureParameters();const t=function({sourceTextureMap:t,targetTextureVarying:e,targetTexture:n}){const i={};let r,s;e&&(({width:r,height:s}=n),i[`${XE}${e}`]=[r,s]);for(const o in t)({width:r,height:s}=t[o]),i[`${XE}${o}`]=[r,s];return i}({sourceTextureMap:n,targetTextureVarying:this.targetTextureVarying,targetTexture:r});Object.assign(o,t)}return this.hasTargetTexture&&(l=!1,a.viewport=[0,0,i.width,i.height]),{attributes:s,framebuffer:i,uniforms:o,discard:l,parameters:a}}swap(){return!!this._swapTexture&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupTextures(t)}getTargetTexture(){const{targetTexture:t}=this.bindings[this.currentIndex];return t}getData({packed:t=!1}={}){const{framebuffer:e}=this.bindings[this.currentIndex],n=_S(e);if(!t)return n;const i=n.constructor,r=function(t){switch(t){case"float":return 1;case"vec2":return 2;case"vec3":return 3;case"vec4":return 4;default:return ME(!1),null}}(this.targetTextureType),s=new i(n.length*r/4);let o=0;for(let a=0;a0,this._updateBindings({sourceBuffers:e,sourceTextures:n,targetTexture:r}),"elementCount"in t&&this._updateElementIDBuffer(t.elementCount)}_updateElementIDBuffer(t){if("number"!=typeof t||this.elementCount>=t)return;const e=new Float32Array(t);e.forEach((t,e,n)=>{n[e]=e}),this.elementIDBuffer?this.elementIDBuffer.setData({data:e}):this.elementIDBuffer=new tS(this.gl,{data:e,accessor:{size:1}}),this.elementCount=t}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this._swapTexture){const{sourceTextures:t,targetTexture:e}=this._swapTextures(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceTextures:t,targetTexture:e})}}_updateBinding(t,e){const{sourceBuffers:n,sourceTextures:i,targetTexture:r}=e;if(t||(t={sourceBuffers:{},sourceTextures:{},targetTexture:null}),Object.assign(t.sourceTextures,i),Object.assign(t.sourceBuffers,n),r){t.targetTexture=r;const{width:e,height:n}=r,{framebuffer:i}=t;i?(i.update({attachments:{36064:r},resizeAttachments:!1}),i.resize({width:e,height:n})):t.framebuffer=new SS(this.gl,{id:"transform-framebuffer",width:e,height:n,attachments:{36064:r}})}return t}_setSourceTextureParameters(){const t=this.currentIndex,{sourceTextures:e}=this.bindings[t];for(const n in e)e[n].setParameters(KE)}_swapTextures(t){if(!this._swapTexture)return null;const e=Object.assign({},t.sourceTextures);return e[this._swapTexture]=t.targetTexture,{sourceTextures:e,targetTexture:t.sourceTextures[this._swapTexture]}}_createNewTexture(t){const e=function(t,e){Rx(t instanceof lS||t instanceof bS||t instanceof yS);const n=t.constructor,{gl:i,width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u}=t;return new n(i,Object.assign({width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u},{parameters:{10241:9728,10240:9728,10242:33071,10243:33071},pixelStore:{37440:!1}}))}(t);return this.ownTexture&&this.ownTexture.delete(),this.ownTexture=e,e}_getNextIndex(){return(this.currentIndex+1)%2}_processVertexShader(t={}){const{sourceTextures:e,targetTexture:n}=this.bindings[this.currentIndex],{vs:i,uniforms:r,targetTextureType:s,inject:o,samplerTextureMap:a}=function({vs:t,sourceTextureMap:e,targetTextureVarying:n,targetTexture:i}){let r=Object.keys(e).length,s=null;const o={};let a=t,l={};if(r>0||n){const t=a.split("\n"),c=t.slice();if(t.forEach((t,i,a)=>{if(r>0){const n=function(t,e){const n={},i=function(t){return RE(t,["attribute","in"])}(t);if(!i)return null;const{type:r,name:s}=i;if(s&&e[s]){const e=`// ${t} => Replaced by Transform with a sampler`,{samplerName:i,sizeName:o,uniformDeclerations:a}=function(t){const e=`transform_uSampler_${t}`,n=`${XE}${t}`;return{samplerName:e,sizeName:n,uniformDeclerations:` uniform sampler2D ${e};\n uniform vec2 ${n};`}}(s),l=` ${r} ${s} = transform_getInput(${i}, ${o}).${function(t){switch(t){case"float":return"x";case"vec2":return"xy";case"vec3":return"xyz";case"vec4":return"xyzw";default:return ME(!1),null}}(r)};\n`;return n[i]=s,{updatedLine:e,inject:{"vs:#decl":a,"vs:#main-start":l},samplerTextureMap:n}}return null}(t,e);if(n){const{updatedLine:t,inject:e}=n;c[i]=t,l=WE([l,e]),Object.assign(o,n.samplerTextureMap),r--}}n&&!s&&(s=function(t,e){const n=RE(t,["varying","out"]);return n&&n.name===e?n.type:null}(t,n))}),n){Rx(i);const t=`${XE}${n}`;l=WE([l,{"vs:#decl":`uniform vec2 ${t};\n`,"vs:#main-start":` vec2 ${YE} = transform_getPos(${t});\n gl_Position = vec4(${YE}, 0, 1.);\n`}])}a=c.join("\n")}return{vs:a,targetTextureType:s,inject:l,samplerTextureMap:o}}({vs:t.vs,sourceTextureMap:e,targetTextureVarying:this.targetTextureVarying,targetTexture:n}),l=WE([t.inject||{},o]);return this.targetTextureType=s,this.samplerTextureMap=a,{vs:i,fs:t._fs||NE({version:FE(i),input:this.targetTextureVarying,inputType:s,output:"transform_output"}),modules:this.hasSourceTextures||this.targetTextureVarying?[qE].concat(t.modules||[]):t.modules,uniforms:r,inject:l}}}const ZE={number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},array:{validate:(t,e)=>Array.isArray(t)||ArrayBuffer.isView(t)}};function JE(t){let e=tC(t);return"object"===e?t?"type"in t?Object.assign({},t,ZE[t.type]):"value"in t?(e=tC(t.value),Object.assign({type:e},t,ZE[e])):{type:"object",value:t}:{type:"object",value:null}:Object.assign({type:e,value:t},ZE[e])}function tC(t){return Array.isArray(t)||ArrayBuffer.isView(t)?"array":typeof t}class eC{constructor({name:t,vs:e,fs:n,dependencies:i=[],uniforms:r,getUniforms:s,deprecations:o=[],defines:a={},inject:l={},vertexShader:c,fragmentShader:u}){ME("string"==typeof t),this.name=t,this.vs=e||c,this.fs=n||u,this.getModuleUniforms=s,this.dependencies=i,this.deprecations=this._parseDeprecationDefinitions(o),this.defines=a,this.injections=function(t){const e={vs:{},fs:{}};for(const n in t){let i=t[n];const r=n.slice(0,2);"string"==typeof i&&(i={order:0,injection:i}),e[r][n]=i}return e}(l),r&&(this.uniforms=function(t){const e={};for(const n in t){const i=JE(t[n]);e[n]=i}return e}(r))}getModuleSource(t){let e;switch(t){case"vs":e=this.vs||"";break;case"fs":e=this.fs||"";break;default:ME(!1)}return`#define MODULE_${this.name.toUpperCase().replace(/[^0-9a-z]/gi,"_")}\n${e}// END MODULE_${this.name}\n\n`}getUniforms(t,e){return this.getModuleUniforms?this.getModuleUniforms(t,e):this.uniforms?this._defaultGetUniforms(t):{}}getDefines(){return this.defines}checkDeprecations(t,e){this.deprecations.forEach(n=>{n.regex.test(t)&&(n.deprecated?e.deprecated(n.old,n.new)():e.removed(n.old,n.new)())})}_parseDeprecationDefinitions(t){return t.forEach(t=>{switch(t.type){case"function":t.regex=new RegExp(`\\b${t.old}\\(`);break;default:t.regex=new RegExp(`${t.type} ${t.old};`)}}),t}_defaultGetUniforms(t={}){const e={},n=this.uniforms;for(const i in n){const r=n[i];i in t&&!r.private?(r.validate&&ME(r.validate(t[i],r),`${this.name}: invalid ${i}`),e[i]=t[i]):e[i]=r.value}return e}}function nC(t){return function(t){const e={},n={};return iC({modules:t,level:0,moduleMap:e,moduleDepth:n}),Object.keys(n).sort((t,e)=>n[e]-n[t]).map(t=>e[t])}(rC(t))}function iC({modules:t,level:e,moduleMap:n,moduleDepth:i}){if(e>=5)throw new Error("Possible loop in shader dependency graph");for(const r of t)n[r.name]=r,(void 0===i[r.name]||i[r.name](t instanceof eC||(ME("string"!=typeof t,`Shader module use by name is deprecated. Import shader module '${t}' and use it directly.`),ME(t.name,"shader module has no name"),(t=new eC(t)).dependencies=rC(t.dependencies)),t))}const sC={GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]},oC={};function aC(t,e){return t.match(/NVIDIA/i)||e.match(/NVIDIA/i)?"NVIDIA":t.match(/INTEL/i)||e.match(/INTEL/i)?"INTEL":t.match(/Apple/i)||e.match(/Apple/i)?"APPLE":t.match(/AMD/i)||e.match(/AMD/i)||t.match(/ATI/i)||e.match(/ATI/i)?"AMD":"UNKNOWN"}Object.keys(sC).forEach(t=>{oC[t]=t});const lC={};function cC(t,e,n={}){const i=sC[e];if(ME(i,e),!function(t={}){const e="undefined"!=typeof window&&window.navigator||{},n=t.userAgent||e.userAgent||"",i=-1!==n.indexOf("MSIE "),r=-1!==n.indexOf("Trident/");return i||r}(n))return!0;if(e in lC)return lC[e];const r=`#extension GL_${i[0]} : ${n.behavior||"enable"}\nvoid main(void) {}`,s=t.createShader(35633);t.shaderSource(s,r),t.compileShader(s);const o=t.getShaderParameter(s,35713);return t.deleteShader(s),lC[e]=o,o}function uC(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>function(t,e){const n=sC[e];ME(n,e);const i=function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}(t)&&n[1]||n[0],r="string"==typeof i?Boolean(t.getExtension(i)):i;return ME(!1===r||!0===r),r}(t,e))}function hC(t){return new RegExp(`\\b${t}[ \\t]+(\\w+[ \\t]+\\w+(\\[\\w+\\])?;)`,"g")}const dC=[[/^(#version[ \t]+(100|300[ \t]+es))?[ \t]*\n/,"#version 300 es\n"],[/\btexture(2D|2DProj|Cube)Lod(EXT)?\(/g,"textureLod("],[/\btexture(2D|2DProj|Cube)(EXT)?\(/g,"texture("]],pC=[...dC,[hC("attribute"),"in $1"],[hC("varying"),"out $1"]],fC=[...dC,[hC("varying"),"in $1"]],gC=[[/^#version[ \t]+300[ \t]+es/,"#version 100"],[/\btexture(2D|2DProj|Cube)Lod\(/g,"texture$1LodEXT("],[/\btexture\(/g,"texture2D("],[/\btextureLod\(/g,"texture2DLodEXT("]],mC=[...gC,[hC("in"),"attribute $1"],[hC("out"),"varying $1"]],bC=[...gC,[hC("in"),"varying $1"]],yC="gl_FragColor",vC=/\bout[ \t]+vec4[ \t]+(\w+)[ \t]*;\n?/,_C=/void\s+main\s*\([^)]*\)\s*\{\n?/;function wC(t,e){for(const[n,i]of e)t=t.replace(n,i);return t}const xC=`\n\n${zE}\n\n`,SC={[BE]:"vertex",fs:"fragment"};function EC(t,{id:e,source:n,type:i,modules:r,defines:s={},hookFunctions:o=[],inject:a={},transpileToGLSL100:l=!1,prologue:c=!0,log:u}){ME("string"==typeof n,"shader source must be a string");const h=i===BE,d=n.split("\n");let p=100,f="",g=n;0===d[0].indexOf("#version ")?(p=300,f=d[0],g=d.slice(1).join("\n")):f=`#version ${p}`;const m={};r.forEach(t=>{Object.assign(m,t.getDefines())}),Object.assign(m,s);let b=c?`${f}\n${function({id:t,source:e,type:n}){return t&&"string"==typeof t&&-1===e.indexOf("SHADER_NAME")?`\n#define SHADER_NAME ${t}_${SC[n]}\n\n`:""}({id:e,source:n,type:i})}\n${function({type:t}){return`\n#define SHADER_TYPE_${SC[t].toUpperCase()}\n`}({type:i})}\n${function(t){switch(function(t){const e=t.getExtension("WEBGL_debug_renderer_info"),n=t.getParameter(e&&e.UNMASKED_VENDOR_WEBGL||7936),i=t.getParameter(e&&e.UNMASKED_RENDERER_WEBGL||7937);return{gpuVendor:aC(n,i),vendor:n,renderer:i,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t).gpuVendor.toLowerCase()){case"nvidia":return"#define NVIDIA_GPU\n// Nvidia optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n";case"intel":return"#define INTEL_GPU\n// Intel optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n// Intel's built-in 'tan' function doesn't have acceptable precision\n#define LUMA_FP32_TAN_PRECISION_WORKAROUND 1\n// Intel GPU doesn't have full 32 bits precision in same cases, causes overflow\n#define LUMA_FP64_HIGH_BITS_OVERFLOW_WORKAROUND 1\n";case"amd":return"#define AMD_GPU\n";default:return"#define DEFAULT_GPU\n// Prevent driver from optimizing away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n"}}(t)}\n${function(t,e,n){let i="#if (__VERSION__ > 120)\n\n# define FEATURE_GLSL_DERIVATIVES\n# define FEATURE_GLSL_DRAW_BUFFERS\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FEATURE_GLSL_TEXTURE_LOD\n\n// DEPRECATED FLAGS, remove in v9\n# define FRAG_DEPTH\n# define DERIVATIVES\n# define DRAW_BUFFERS\n# define TEXTURE_LOD\n\n#endif // __VERSION\n";return uC(t,oC.GLSL_FRAG_DEPTH)&&(i+="\n// FRAG_DEPTH => gl_FragDepth is available\n#ifdef GL_EXT_frag_depth\n#extension GL_EXT_frag_depth : enable\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FRAG_DEPTH\n# define gl_FragDepth gl_FragDepthEXT\n#endif\n"),uC(t,oC.GLSL_DERIVATIVES)&&cC(t,oC.GLSL_DERIVATIVES)&&(i+="\n// DERIVATIVES => dxdF, dxdY and fwidth are available\n#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n# define FEATURE_GLSL_DERIVATIVES\n# define DERIVATIVES\n#endif\n"),uC(t,oC.GLSL_FRAG_DATA)&&cC(t,oC.GLSL_FRAG_DATA,{behavior:"require"})&&(i+="\n// DRAW_BUFFERS => gl_FragData[] is available\n#ifdef GL_EXT_draw_buffers\n#extension GL_EXT_draw_buffers : require\n#define FEATURE_GLSL_DRAW_BUFFERS\n#define DRAW_BUFFERS\n#endif\n"),uC(t,oC.GLSL_TEXTURE_LOD)&&(i+="// TEXTURE_LOD => texture2DLod etc are available\n#ifdef GL_EXT_shader_texture_lod\n#extension GL_EXT_shader_texture_lod : enable\n\n# define FEATURE_GLSL_TEXTURE_LOD\n# define TEXTURE_LOD\n\n#endif\n"),i}(t)}\n${function(t={}){let e=0,n="";for(const i in t){0===e&&(n+="\n// APPLICATION DEFINES\n"),e++;const r=t[i];(r||Number.isFinite(r))&&(n+=`#define ${i.toUpperCase()} ${t[i]}\n`)}return 0===e&&(n+="\n"),n}(m)}\n${h?"":"precision highp float;\n\n"}\n`:`${f}\n`;const y=function(t){const e={vs:{},fs:{}};return t.forEach(t=>{let n;"string"!=typeof t?(n=t,t=n.hook):n={},t=t.trim();const[i,r]=t.split(":"),s=t.replace(/\(.+/,"");e[i][s]=Object.assign(n,{signature:r})}),e}(o),v={},_={},w={};for(const x in a){const t="string"==typeof a[x]?{injection:a[x],order:0}:a[x],e=x.match(/^(v|f)s:(#)?([\w-]+)$/);if(e){const n=e[3];e[2]?"decl"===n?_[x]=[t]:w[x]=[t]:v[x]=[t]}else w[x]=[t]}for(const x of r){u&&x.checkDeprecations(g,u),b+=x.getModuleSource(i,p);const t=x.injections[i];for(const e in t){const n=e.match(/^(v|f)s:#([\w-]+)$/);if(n){const i="decl"===n[2]?_:w;i[e]=i[e]||[],i[e].push(t[e])}else v[e]=v[e]||[],v[e].push(t[e])}}return b+=xC,b=GE(b,i,_),b+=function(t,e){let n="";for(const i in t){const r=t[i];if(n+=`void ${r.signature} {\n`,r.header&&(n+=` ${r.header}`),e[i]){const t=e[i];t.sort((t,e)=>t.order-e.order);for(const e of t)n+=` ${e.injection}\n`}r.footer&&(n+=` ${r.footer}`),n+="}\n"}return n}(y[i],v),b+=g,b=GE(b,i,w),b=function(t,e,n){switch(e){case 300:return n?wC(t,pC):function(t){const e=(t=wC(t,fC)).match(vC);if(e){const n=e[1];t=t.replace(new RegExp(`\\b${yC}\\b`,"g"),n)}else{const e="fragmentColor";t=t.replace(_C,t=>`out vec4 ${e};\n${t}`).replace(new RegExp(`\\b${yC}\\b`,"g"),e)}return t}(t);case 100:return n?wC(t,mC):function(t){const e=(t=wC(t,bC)).match(vC);if(e){const n=e[1];t=t.replace(vC,"").replace(new RegExp(`\\b${n}\\b`,"g"),yC)}return t}(t);default:throw new Error(`unknown GLSL version ${e}`)}}(b,l?100:p,h),b}function CC(t){return function(e){const n={};for(const i of t){const t=i.getUniforms(e,n);Object.assign(n,t)}return n}}const OC={5126:VC.bind(null,"uniform1fv",IC,1,zC),35664:VC.bind(null,"uniform2fv",IC,2,zC),35665:VC.bind(null,"uniform3fv",IC,3,zC),35666:VC.bind(null,"uniform4fv",IC,4,zC),5124:VC.bind(null,"uniform1iv",DC,1,zC),35667:VC.bind(null,"uniform2iv",DC,2,zC),35668:VC.bind(null,"uniform3iv",DC,3,zC),35669:VC.bind(null,"uniform4iv",DC,4,zC),35670:VC.bind(null,"uniform1iv",DC,1,zC),35671:VC.bind(null,"uniform2iv",DC,2,zC),35672:VC.bind(null,"uniform3iv",DC,3,zC),35673:VC.bind(null,"uniform4iv",DC,4,zC),35674:VC.bind(null,"uniformMatrix2fv",IC,4,UC),35675:VC.bind(null,"uniformMatrix3fv",IC,9,UC),35676:VC.bind(null,"uniformMatrix4fv",IC,16,UC),35678:BC,35680:BC,5125:VC.bind(null,"uniform1uiv",RC,1,zC),36294:VC.bind(null,"uniform2uiv",RC,2,zC),36295:VC.bind(null,"uniform3uiv",RC,3,zC),36296:VC.bind(null,"uniform4uiv",RC,4,zC),35685:VC.bind(null,"uniformMatrix2x3fv",IC,6,UC),35686:VC.bind(null,"uniformMatrix2x4fv",IC,8,UC),35687:VC.bind(null,"uniformMatrix3x2fv",IC,6,UC),35688:VC.bind(null,"uniformMatrix3x4fv",IC,12,UC),35689:VC.bind(null,"uniformMatrix4x2fv",IC,8,UC),35690:VC.bind(null,"uniformMatrix4x3fv",IC,12,UC),35678:BC,35680:BC,35679:BC,35682:BC,36289:BC,36292:BC,36293:BC,36298:BC,36299:BC,36300:BC,36303:BC,36306:BC,36307:BC,36308:BC,36311:BC},TC={},kC={},AC={},PC=[0];function MC(t,e,n,i){1===e&&"boolean"==typeof t&&(t=t?1:0),Number.isFinite(t)&&(PC[0]=t,t=PC);const r=t.length;if(r%e&&Nw.warn(`Uniform size should be multiples of ${e}`,t)(),t instanceof n)return t;let s=i[r];s||(s=new n(r),i[r]=s);for(let o=0;o{const r=t!==i;return r&&(e.uniform1i(n,i),t=i),r}}function VC(t,e,n,i){let r=null,s=null;return(o,a,l)=>{const c=e(l,n),u=c.length;let h=!1;if(null===r)r=new Float32Array(u),s=u,h=!0;else{Rx(s===u,"Uniform length cannot change.");for(let t=0;t{const s=String(i+e);return GC(s,r-s.length)+n+t})}(e);return{shaderName:l,errors:$C(s,c),warnings:$C(o,c)}}(t,this.source,this.shaderType,this.id);throw Nw.error(`GLSL compilation errors in ${e}\n${n}`)(),Nw.warn(`GLSL compilation warnings in ${e}\n${i}`)(),new Error(`GLSL compilation errors in ${e}`)}}_deleteHandle(){this.gl.deleteShader(this.handle)}_getOptsFromHandle(){return{type:this.getParameter(35663),source:this.getSource()}}}class qC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35633}))}_createHandle(){return this.gl.createShader(35633)}}class XC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35632}))}_createHandle(){return this.gl.createShader(35632)}}const YC=5126,KC=5124,QC=5125,ZC={[YC]:[YC,1,"float"],35664:[YC,2,"vec2"],35665:[YC,3,"vec3"],35666:[YC,4,"vec4"],[KC]:[KC,1,"int"],35667:[KC,2,"ivec2"],35668:[KC,3,"ivec3"],35669:[KC,4,"ivec4"],[QC]:[QC,1,"uint"],36294:[QC,2,"uvec2"],36295:[QC,3,"uvec3"],36296:[QC,4,"uvec4"],35670:[YC,1,"bool"],35671:[YC,2,"bvec2"],35672:[YC,3,"bvec3"],35673:[YC,4,"bvec4"],35674:[YC,8,"mat2"],35685:[YC,8,"mat2x3"],35686:[YC,8,"mat2x4"],35675:[YC,12,"mat3"],35687:[YC,12,"mat3x2"],35688:[YC,12,"mat3x4"],35676:[YC,16,"mat4"],35689:[YC,16,"mat4x2"],35690:[YC,16,"mat4x3"]};function JC(t){const e=ZC[t];if(!e)return null;const[n,i]=e;return{type:n,components:i}}function tO(t,e){switch(t){case 5120:case 5121:case 5122:case 5123:t=YC}for(const n in ZC){const[i,r,s]=ZC[n];if(i===t&&r===e)return{glType:n,name:s}}return null}class eO{constructor(t){this.id=t.id,this.attributeInfos=[],this.attributeInfosByName={},this.attributeInfosByLocation=[],this.varyingInfos=[],this.varyingInfosByName={},Object.seal(this),this._readAttributesFromProgram(t),this._readVaryingsFromProgram(t)}getAttributeInfo(t){const e=Number(t);return Number.isFinite(e)?this.attributeInfosByLocation[e]:this.attributeInfosByName[t]||null}getAttributeLocation(t){const e=this.getAttributeInfo(t);return e?e.location:-1}getAttributeAccessor(t){const e=this.getAttributeInfo(t);return e?e.accessor:null}getVaryingInfo(t){const e=Number(t);return Number.isFinite(e)?this.varyingInfos[e]:this.varyingInfosByName[t]||null}getVaryingIndex(t){const e=this.getVaryingInfo();return e?e.location:-1}getVaryingAccessor(t){const e=this.getVaryingInfo();return e?e.accessor:null}_readAttributesFromProgram(t){const{gl:e}=t,n=e.getProgramParameter(t.handle,35721);for(let i=0;i=0&&this._addAttribute(o,n,r,s)}this.attributeInfos.sort((t,e)=>t.location-e.location)}_readVaryingsFromProgram(t){const{gl:e}=t;if(!Fw(e))return;const n=e.getProgramParameter(t.handle,35971);for(let i=0;it.location-e.location)}_addAttribute(t,e,n,i){const{type:r,components:s}=JC(n),o={type:r,size:i*s};this._inferProperties(t,e,o);const a={location:t,name:e,accessor:new Kx(o)};this.attributeInfos.push(a),this.attributeInfosByLocation[t]=a,this.attributeInfosByName[a.name]=a}_inferProperties(t,e,n){/instance/i.test(e)&&(n.divisor=1)}_addVarying(t,e,n,i){const{type:r,components:s}=JC(n),o={location:t,name:e,accessor:new Kx({type:r,size:i*s})};this.varyingInfos.push(o),this.varyingInfosByName[o.name]=o}}const nO=35981,iO=["setVertexArray","setAttributes","setBuffers","unsetBuffers","use","getUniformCount","getUniformInfo","getUniformLocation","getUniformValue","getVarying","getFragDataLocation","getAttachedShaders","getAttributeCount","getAttributeLocation","getAttributeInfo"];class rO extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Program","v6.0",iO),this._isCached=!1,this.initialize(e),Object.seal(this),this._setId(e.id)}initialize(t={}){const{hash:e,vs:n,fs:i,varyings:r,bufferMode:s=nO}=t;return this.hash=e||"",this.vs="string"==typeof n?new qC(this.gl,{id:`${t.id}-vs`,source:n}):n,this.fs="string"==typeof i?new XC(this.gl,{id:`${t.id}-fs`,source:i}):i,Rx(this.vs instanceof qC),Rx(this.fs instanceof XC),this.uniforms={},this._textureUniforms={},r&&r.length>0&&(Vw(this.gl),this.varyings=r,this.gl2.transformFeedbackVaryings(this.handle,r,s)),this._compileAndLink(),this._readUniformLocationsFromLinkedProgram(),this.configuration=new eO(this),this.setProps(t)}delete(t={}){return this._isCached?this:super.delete(t)}setProps(t){return"uniforms"in t&&this.setUniforms(t.uniforms),this}draw({logPriority:t,drawMode:e=4,vertexCount:n,offset:i=0,start:r,end:s,isIndexed:o=!1,indexType:a=5123,instanceCount:l=0,isInstanced:c=l>0,vertexArray:u=null,transformFeedback:h,framebuffer:d,parameters:p={},uniforms:f,samplers:g}){if((f||g)&&(Nw.deprecated("Program.draw({uniforms})","Program.setUniforms(uniforms)")(),this.setUniforms(f||{})),Nw.priority>=t){const i=d?d.id:"default",r=`mode=${Lx(this.gl,e)} verts=${n} instances=${l} indexType=${Lx(this.gl,a)} isInstanced=${c} isIndexed=${o} Framebuffer=${i}`;Nw.log(t,r)()}return Rx(u),this.gl.useProgram(this.handle),!(!this._areTexturesRenderable()||0===n||c&&0===l||(u.bindForDraw(n,l,()=>{if(void 0!==d&&(p=Object.assign({},p,{framebuffer:d})),h){const t=function(t){switch(t){case 0:return 0;case 1:case 3:case 2:return 1;case 4:case 5:case 6:return 4;default:return Rx(!1),0}}(e);h.begin(t)}this._bindTextures(),vx(this.gl,p,()=>{o&&c?this.gl2.drawElementsInstanced(e,n,a,i,l):o&&Fw(this.gl)&&!isNaN(r)&&!isNaN(s)?this.gl2.drawRangeElements(e,r,s,n,a,i):o?this.gl.drawElements(e,n,a,i):c?this.gl2.drawArraysInstanced(e,i,n,l):this.gl.drawArrays(e,i,n)}),h&&h.end()}),0))}setUniforms(t={}){Nw.priority>=2&&function(t,e,n){for(const i in t){const r=t[i];if((!n||Boolean(n[i]))&&!jC(r))throw e=e?`${e} `:"",console.error(`${e} Bad uniform ${i}`,r),new Error(`${e} Bad uniform ${i}`)}}(t,this.id,this._uniformSetters),this.gl.useProgram(this.handle);for(const e in t){const n=t[e],i=this._uniformSetters[e];if(i){let t=n,r=!1;if(t instanceof SS&&(t=t.texture),t instanceof oS)if(r=this.uniforms[e]!==n,r){void 0===i.textureIndex&&(i.textureIndex=this._textureIndexCounter++);const n=t,{textureIndex:r}=i;n.bind(r),t=r,this._textureUniforms[e]=n}else t=i.textureIndex;else this._textureUniforms[e]&&delete this._textureUniforms[e];(i(t)||r)&&FC(this.uniforms,e,n)}}return this}_areTexturesRenderable(){let t=!0;for(const e in this._textureUniforms){const n=this._textureUniforms[e];n.update(),t=t&&n.loaded}return t}_bindTextures(){for(const t in this._textureUniforms)this._textureUniforms[t].bind(this._uniformSetters[t].textureIndex)}_createHandle(){return this.gl.createProgram()}_deleteHandle(){this.gl.deleteProgram(this.handle)}_getOptionsFromHandle(t){const e=this.gl.getAttachedShaders(t),n={};for(const i of e)switch(this.gl.getShaderParameter(this.handle,35663)){case 35633:n.vs=new qC({handle:i});break;case 35632:n.fs=new XC({handle:i})}return n}_getParameter(t){return this.gl.getProgramParameter(this.handle,t)}_setId(t){if(!t){const t=this._getName();this.id=Fx(t)}}_getName(){let t=this.vs.getName()||this.fs.getName();return t=t.replace(/shader/i,""),t=t?`${t}-program`:"program",t}_compileAndLink(){const{gl:t}=this;if(t.attachShader(this.handle,this.vs.handle),t.attachShader(this.handle,this.fs.handle),Nw.time(4,`linkProgram for ${this._getName()}`)(),t.linkProgram(this.handle),Nw.timeEnd(4,`linkProgram for ${this._getName()}`)(),t.debug||Nw.level>0){if(!t.getProgramParameter(this.handle,35714))throw new Error(`Error linking: ${t.getProgramInfoLog(this.handle)}`);if(t.validateProgram(this.handle),!t.getProgramParameter(this.handle,35715))throw new Error(`Error validating: ${t.getProgramInfoLog(this.handle)}`)}}_readUniformLocationsFromLinkedProgram(){const{gl:t}=this;this._uniformSetters={},this._uniformCount=this._getParameter(35718);for(let e=0;e1)for(let e=0;ee.name===t.name)||this._defaultModules.push(t),this.stateHash++}removeDefaultModule(t){const e="string"==typeof t?t:t.name;this._defaultModules=this._defaultModules.filter(t=>t.name!==e),this.stateHash++}addShaderHook(t,e){e&&(t=Object.assign(e,{hook:t})),this._hookFunctions.push(t),this.stateHash++}get(t={}){const{vs:e="",fs:n="",defines:i={},inject:r={},varyings:s=[],bufferMode:o=35981,transpileToGLSL100:a=!1}=t,l=this._getModuleList(t.modules),c=this._getHash(e),u=this._getHash(n),h=l.map(t=>this._getHash(t.name)).sort(),d=s.map(t=>this._getHash(t)),p=Object.keys(i).sort(),f=Object.keys(r).sort(),g=[],m=[];for(const y of p)g.push(this._getHash(y)),g.push(this._getHash(i[y]));for(const y of f)m.push(this._getHash(y)),m.push(this._getHash(r[y]));const b=`${c}/${u}D${g.join("/")}M${h.join("/")}I${m.join("/")}V${d.join("/")}H${this.stateHash}B${o}${a?"T":""}`;if(!this._programCache[b]){const t=function(t,e){const{vs:n,fs:i}=e,r=nC(e.modules||[]);return{gl:t,vs:EC(t,Object.assign({},e,{source:n,type:BE,modules:r})),fs:EC(t,Object.assign({},e,{source:i,type:"fs",modules:r})),getUniforms:CC(r)}}(this.gl,{vs:e,fs:n,modules:l,inject:r,defines:i,hookFunctions:this._hookFunctions,transpileToGLSL100:a});this._programCache[b]=new rO(this.gl,{hash:b,vs:t.vs,fs:t.fs,varyings:s,bufferMode:o}),this._getUniforms[b]=t.getUniforms||(t=>{}),this._useCounts[b]=0}return this._useCounts[b]++,this._programCache[b]}getUniforms(t){return this._getUniforms[t.hash]||null}release(t){const e=t.hash;this._useCounts[e]--,0===this._useCounts[e]&&(this._programCache[e].delete(),delete this._programCache[e],delete this._getUniforms[e],delete this._useCounts[e])}_getHash(t){return void 0===this._hashes[t]&&(this._hashes[t]=this._hashCounter++),this._hashes[t]}_getModuleList(t=[]){const e=new Array(this._defaultModules.length+t.length),n={};let i=0;for(let r=0,s=this._defaultModules.length;r-1)return"Edge";const n=-1!==e.indexOf("MSIE "),i=-1!==e.indexOf("Trident/");return n||i?"IE":vw.chrome?"Chrome":vw.safari?"Safari":vw.mozInnerScreenX?"Firefox":"Unknown"}()}static getDefaultArray(t){return t.luma=t.luma||{},t.luma.defaultVertexArray||(t.luma.defaultVertexArray=new aO(t,{handle:null,isDefaultArray:!0})),t.luma.defaultVertexArray}static getMaxAttributes(t){return aO.MAX_ATTRIBUTES=aO.MAX_ATTRIBUTES||t.getParameter(34921),aO.MAX_ATTRIBUTES}static setConstant(t,e,n){switch(n.constructor){case Float32Array:aO._setConstantFloatArray(t,e,n);break;case Int32Array:aO._setConstantIntArray(t,e,n);break;case Uint32Array:aO._setConstantUintArray(t,e,n);break;default:Rx(!1)}}constructor(t,e={}){super(t,Object.assign({},e,{id:e.id||e.program&&e.program.id})),this.buffer=null,this.bufferValue=null,this.isDefaultArray=e.isDefaultArray||!1,this.gl2=t,this.initialize(e),Object.seal(this)}delete(){return super.delete(),this.buffer&&this.buffer.delete(),this}get MAX_ATTRIBUTES(){return aO.getMaxAttributes(this.gl)}initialize(t={}){return this.setProps(t)}setProps(t){return this}setElementBuffer(t=null,e={}){return Rx(!t||34963===t.target,"elements must be GL.ELEMENT_ARRAY_BUFFER"),this.bind(()=>{this.gl.bindBuffer(34963,t?t.handle:null)}),this}setBuffer(t,e,n){if(34963===e.target)return this.setElementBuffer(e,n);const{size:i,type:r,stride:s,offset:o,normalized:a,integer:l,divisor:c}=n,{gl:u,gl2:h}=this;return t=Number(t),this.bind(()=>{u.bindBuffer(34962,e.handle),l?(Rx(Fw(u)),h.vertexAttribIPointer(t,i,r,s,o)):u.vertexAttribPointer(t,i,r,a,s,o),u.enableVertexAttribArray(t),h.vertexAttribDivisor(t,c||0)}),this}enable(t,e=!0){return!e&&0===t&&!aO.isSupported(this.gl,{constantAttributeZero:!0})||(t=Number(t),this.bind(()=>e?this.gl.enableVertexAttribArray(t):this.gl.disableVertexAttribArray(t))),this}getConstantBuffer(t,e){const n=this._normalizeConstantArrayValue(e),i=n.byteLength*t,r=n.length*t;let s=!this.buffer;if(this.buffer=this.buffer||new tS(this.gl,i),s=s||this.buffer.reallocate(i),s=s||!this._compareConstantArrayValues(n,this.bufferValue),s){const t=function(t,e){return new t(function(t){return(!oO||oO.byteLength{switch(t){case 34373:return this.gl.getVertexAttribOffset(e,t);default:return this.gl.getVertexAttrib(e,t)}})}}const lO=/^(.+)__LOCATION_([0-9]+)$/,cO=["setBuffers","setGeneric","clearBindings","setLocations","setGenericValues","setDivisor","enable","disable"];class uO{constructor(t,e={}){this.id=e.id||e.program&&e.program.id,this.gl=t,this.configuration=null,this.elements=null,this.elementsAccessor=null,this.values=null,this.accessors=null,this.unused=null,this.drawParams=null,this.buffer=null,this.attributes={},this.vertexArrayObject=new aO(t),zx(this,"VertexArray","v6.0",cO),this.initialize(e),Object.seal(this)}delete(){this.buffer&&this.buffer.delete(),this.vertexArrayObject.delete()}initialize(t={}){return this.reset(),this.configuration=null,this.bindOnUse=!1,this.setProps(t)}reset(){this.elements=null,this.elementsAccessor=null;const{MAX_ATTRIBUTES:t}=this.vertexArrayObject;return this.values=new Array(t).fill(null),this.accessors=new Array(t).fill(null),this.unused={},this.drawParams=null,this}setProps(t){return"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"attributes"in t&&this.setAttributes(t.attributes),"elements"in t&&this.setElementBuffer(t.elements),"bindOnUse"in t&&(t=t.bindOnUse),this}clearDrawParams(){this.drawParams=null}getDrawParams(){return this.drawParams=this.drawParams||this._updateDrawParams(),this.drawParams}setAttributes(t){return Object.assign(this.attributes,t),this.vertexArrayObject.bind(()=>{for(const e in t)this._setAttribute(e,t[e]);this.gl.bindBuffer(34962,null)}),this}setElementBuffer(t=null,e={}){return this.elements=t,this.elementsAccessor=e,this.clearDrawParams(),this.vertexArrayObject.setElementBuffer(t,e),this}setBuffer(t,e,n={}){if(34963===e.target)return this.setElementBuffer(e,n);const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,e.accessor,n);return i>=0&&(this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.setBuffer(i,e,r)),this}setConstant(t,e,n={}){const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,Object.assign({size:e.length},n));return i>=0&&(e=this.vertexArrayObject._normalizeConstantArrayValue(e),this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.enable(i,!1)),this}unbindBuffers(){return this.vertexArrayObject.bind(()=>{this.elements&&this.vertexArrayObject.setElementBuffer(null),this.buffer=this.buffer||new tS(this.gl,{accessor:{size:4}});for(let t=0;t{this.elements&&this.setElementBuffer(this.elements);for(let t=0;t{this._setConstantAttributes(t,e),i=n()}),i}_resolveLocationAndAccessor(t,e,n,i){const r={location:-1,accessor:null},{location:s,name:o}=this._getAttributeIndex(t);if(!Number.isFinite(s)||s<0)return this.unused[t]=e,Nw.once(3,()=>`unused value ${t} in ${this.id}`)(),r;const a=this._getAttributeInfo(o||s);if(!a)return r;const l=Kx.resolve(a.accessor,this.accessors[s]||{},n,i),{size:c,type:u}=l;return Rx(Number.isFinite(c)&&Number.isFinite(u)),{location:s,accessor:l}}_getAttributeInfo(t){return this.configuration&&this.configuration.getAttributeInfo(t)}_getAttributeIndex(t){const e=Number(t);if(Number.isFinite(e))return{location:e};const n=lO.exec(t),i=n?n[1]:t,r=n?Number(n[2]):0;return this.configuration?{location:this.configuration.getAttributeLocation(i)+r,name:i}:{location:-1}}_setAttribute(t,e){if(e instanceof tS)this.setBuffer(t,e);else if(Array.isArray(e)&&e.length&&e[0]instanceof tS)this.setBuffer(t,e[0],e[1]);else if(ArrayBuffer.isView(e)||Array.isArray(e))this.setConstant(t,e);else{if(!(e.buffer instanceof tS))throw new Error("VertexArray: attributes must be Buffers or constants (i.e. typed array)");this.setBuffer(t,e.buffer,e)}}_setConstantAttributes(t,e){const n=Math.max(0|t,0|e);let i=this.values[0];ArrayBuffer.isView(i)&&this._setConstantAttributeZero(i,n);for(let r=1;r0;if(t.isInstanced=t.isInstanced||s,n instanceof tS){const e=n;if(s){const n=e.getVertexCount(i);t.instanceCount=Math.min(t.instanceCount,n)}else{const n=e.getVertexCount(i);t.vertexCount=Math.min(t.vertexCount,n)}}}setElements(t=null,e={}){return Nw.deprecated("setElements","setElementBuffer")(),this.setElementBuffer(t,e)}}function hO(t,e={}){const{isInteger:n=!1}=e;if(Array.isArray(t)||ArrayBuffer.isView(t))return function(t,e){const{maxElts:n=16,size:i=1}=e;let r="[";for(let s=0;s0&&(r+=","+(s%i==0?" ":"")),r+=hO(t[s],e);return`${r}${t.length>n?"...":"]"}`}(t,e);if(!Number.isFinite(t))return String(t);if(Math.abs(t)<1e-16)return n?"0":"0.";if(n||Math.abs(t)>100&&Math.abs(t)<1e4)return t.toFixed(0);const i=t.toPrecision(2);return i.indexOf(".0")===i.length-2?i.slice(0,-1):i}function dO(t,e,n,i){const{gl:r}=t;if(!e)return{[i]:"null","Format ":"N/A"};let s,o,a,l="NOT PROVIDED",c=1,u=0,h=0;if(n&&(l=n.type,c=n.size,l=String(l).replace("Array",""),s=-1!==l.indexOf("nt")),e instanceof tS){const t=e,{data:d,changed:p}=t.getDebugData();let f;return o=p?"*":"",a=d,h=t.byteLength,u=h/d.BYTES_PER_ELEMENT/c,n?f=`${n.divisor>0?"I ":"P "} ${u} (x${c}=${h} bytes ${Lx(r,l)})`:(s=!0,f=`${h} bytes`),{[i]:`${o}${hO(a,{size:c,isInteger:s})}`,"Format ":f}}return a=e,c=e.length,l=String(e.constructor.name).replace("Array",""),s=-1!==l.indexOf("nt"),{[i]:`${hO(a,{size:c,isInteger:s})} (constant)`,"Format ":`${c}x${l} (constant)`}}function pO(t,e){const{type:n,size:i}=e,r=tO(n,i);return r?`${t} (${r.name})`:t}function fO({header:t="Uniforms",program:e,uniforms:n,undefinedOnly:i=!1}){Rx(e);const r=".*Matrix",s={},o=Object.keys(e._uniformSetters).sort();let a=0;for(const u of o)!u.match(".*_.*")&&!u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)s[u]||gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;let l=0;const c={};if(!i)for(const u in n){const e=n[u];s[u]||(l++,c[u]={Type:`NOT USED: ${e}`,[t]:hO(e)})}return{table:s,count:a,unusedTable:c,unusedCount:l}}function gO({table:t,header:e,uniforms:n,uniformName:i,undefinedOnly:r}){const s=n[i],o=function(t){return null!=t}(s);return!(r&&o||(t[i]={[e]:o?hO(s):"N/A","Uniform Type":o?s:"NOT PROVIDED"},0))}function mO(t){const{type:e,size:n}=t.accessor,i=tO(e,n);return i?`${i.name} ${t.name}`:t.name}const bO={POSITION:"positions",NORMAL:"normals",COLOR_0:"colors",TEXCOORD_0:"texCoords",TEXCOORD_1:"texCoords1",TEXCOORD_2:"texCoords2"};function yO(t,e){const{attributeMap:n=bO}=e||{};return n&&n[t]||t}function vO(t,e){let n;switch(t){case"texCoords":case"texCoord1":case"texCoord2":case"texCoord3":n="uvs";break;case"vertices":case"positions":case"normals":case"pickingColors":n="vectors"}switch(n){case"vectors":e.size=e.size||3;break;case"uvs":e.size=e.size||2}Rx(Number.isFinite(e.size),`attribute ${t} needs size`)}const _O=()=>{},wO={};class xO{constructor(t,e={}){const{id:n=Fx("model")}=e;Rx(jw(t)),this.id=n,this.gl=t,this.id=e.id||Fx("Model"),this.lastLogTime=0,this.animated=!1,this.initialize(e)}initialize(t){this.props={},this.programManager=t.programManager||sO.getDefaultProgramManager(this.gl),this._programManagerState=-1,this._managedProgram=!1;const{program:e=null,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this.program=null,this.vertexArray=null,this._programDirty=!0,this.userData={},this.needsRedraw=!0,this._attributes={},this.attributes={},this.uniforms={},this.pickable=!0,this._checkProgram(),this.setUniforms(Object.assign({},this.getModuleUniforms(t.moduleSettings))),this.drawMode=void 0!==t.drawMode?t.drawMode:4,this.vertexCount=t.vertexCount||0,this.geometryBuffers={},this.isInstanced=t.isInstanced||t.instanced||t.instanceCount>0,this._setModelProps(t),this.geometry={},Rx(void 0!==this.drawMode&&Number.isFinite(this.vertexCount),"Model needs drawMode and vertexCount")}setProps(t){this._setModelProps(t)}delete(){for(const t in this._attributes)this._attributes[t]!==this.attributes[t]&&this._attributes[t].delete();this._managedProgram&&(this.programManager.release(this.program),this._managedProgram=!1),this.vertexArray.delete(),this._deleteGeometryBuffers()}getDrawMode(){return this.drawMode}getVertexCount(){return this.vertexCount}getInstanceCount(){return this.instanceCount}getAttributes(){return this.attributes}getProgram(){return this.program}setProgram(t){const{program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this._programDirty=!0}getUniforms(){return this.uniforms}setDrawMode(t){return this.drawMode=t,this}setVertexCount(t){return Rx(Number.isFinite(t)),this.vertexCount=t,this}setInstanceCount(t){return Rx(Number.isFinite(t)),this.instanceCount=t,this}setGeometry(t){return this.drawMode=t.drawMode,this.vertexCount=t.getVertexCount(),this._deleteGeometryBuffers(),this.geometryBuffers=function(t,e,n){const i={};let r=e.indices;for(const s in e.attributes){const n=e.attributes[s],o=yO(s,undefined);if("indices"===s)r=n;else if(n.constant)i[o]=n.value;else{const e=n.value,r=wt({},n);delete r.value,i[o]=[new tS(t,e),r],vO(s,r)}}if(r){const e=r.value||r;Rx(e instanceof Uint16Array||e instanceof Uint32Array,'attribute array for "indices" must be of integer type');const n={size:1,isIndexed:void 0===r.isIndexed||r.isIndexed};i.indices=[new tS(t,{data:e,target:34963}),n]}return i}(this.gl,t),this.vertexArray.setAttributes(this.geometryBuffers),this}setAttributes(t={}){if(Vx(t))return this;const e={};for(const n in t){const i=t[n];e[n]=i.getValue?i.getValue():i}return this.vertexArray.setAttributes(e),this}setUniforms(t={}){return Object.assign(this.uniforms,t),this}getModuleUniforms(t){this._checkProgram();const e=this.programManager.getUniforms(this.program);return e?e(t):{}}updateModuleSettings(t){const e=this.getModuleUniforms(t||{});return this.setUniforms(e)}clear(t){return pS(this.program.gl,t),this}draw(t={}){this._checkProgram();const{moduleSettings:e=null,framebuffer:n,uniforms:i={},attributes:r={},transformFeedback:s=this.transformFeedback,parameters:o={},vertexArray:a=this.vertexArray}=t;let l;this.setAttributes(r),this.updateModuleSettings(e),this.setUniforms(i),Nw.priority>=2&&(l=this._logDrawCallStart(2));const c=this.vertexArray.getDrawParams(),{isIndexed:u=c.isIndexed,indexType:h=c.indexType,indexOffset:d=c.indexOffset,vertexArrayInstanced:p=c.isInstanced}=this.props;p&&!this.isInstanced&&Nw.warn("Found instanced attributes on non-instanced model",this.id)();const{isInstanced:f,instanceCount:g}=this,{onBeforeRender:m=_O,onAfterRender:b=_O}=this.props;m(),this.program.setUniforms(this.uniforms);const y=this.program.draw(Object.assign(wO,t,{logPriority:l,uniforms:null,framebuffer:n,parameters:o,drawMode:this.getDrawMode(),vertexCount:this.getVertexCount(),vertexArray:a,transformFeedback:s,isIndexed:u,indexType:h,isInstanced:f,instanceCount:g,offset:u?d:0}));return b(),Nw.priority>=2&&this._logDrawCallEnd(l,a,n),y}transform(t={}){const{discard:e=!0,feedbackBuffers:n,unbindModels:i=[]}=t;let{parameters:r}=t;n&&this._setFeedbackBuffers(n),e&&(r=Object.assign({},r,{35977:e})),i.forEach(t=>t.vertexArray.unbindBuffers());try{this.draw(Object.assign({},t,{parameters:r}))}finally{i.forEach(t=>t.vertexArray.bindBuffers())}return this}render(t={}){return Nw.warn("Model.render() is deprecated. Use Model.setUniforms() and Model.draw()")(),this.setUniforms(t).draw()}_setModelProps(t){Object.assign(this.props,t),"uniforms"in t&&this.setUniforms(t.uniforms),"pickable"in t&&(this.pickable=t.pickable),"instanceCount"in t&&(this.instanceCount=t.instanceCount),"geometry"in t&&this.setGeometry(t.geometry),"attributes"in t&&this.setAttributes(t.attributes),"_feedbackBuffers"in t&&this._setFeedbackBuffers(t._feedbackBuffers)}_checkProgram(){if(!this._programDirty&&this.programManager.stateHash===this._programManagerState)return;let{program:t}=this.programProps;if(t)this._managedProgram=!1;else{const{vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}=this.programProps;t=this.programManager.get({vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}),this.program&&this._managedProgram&&this.programManager.release(this.program),this._programManagerState=this.programManager.stateHash,this._managedProgram=!0}Rx(t instanceof rO,"Model needs a program"),this._programDirty=!1,t!==this.program&&(this.program=t,this.vertexArray?this.vertexArray.setProps({program:this.program,attributes:this.vertexArray.attributes}):this.vertexArray=new uO(this.gl,{program:this.program}),this.setUniforms(Object.assign({},this.getModuleUniforms())))}_deleteGeometryBuffers(){for(const t in this.geometryBuffers){const e=this.geometryBuffers[t][0]||this.geometryBuffers[t];e instanceof tS&&e.delete()}}_setAnimationProps(t){this.animated&&Rx(t,"Model.draw(): animated uniforms but no animationProps")}_setFeedbackBuffers(t={}){if(Vx(t))return this;const{gl:e}=this.program;return this.transformFeedback=this.transformFeedback||new LE(e,{program:this.program}),this.transformFeedback.setBuffers(t),this}_logDrawCallStart(t){const e=t>3?0:1e4;if(!(Date.now()-this.lastLogTime>> DRAWING MODEL ${this.id}`,{collapsed:Nw.level<=2})(),t}_logDrawCallEnd(t,e,n,i){if(void 0===t)return;const r=function({vertexArray:t,header:e="Attributes"}){if(!t.configuration)return{};const n={};t.elements&&(n.ELEMENT_ARRAY_BUFFER=dO(t,t.elements,null,e));const i=t.values;for(const r in i){const s=t._getAttributeInfo(r);if(s){let o=`${r}: ${s.name}`;const a=t.accessors[s.location];a&&(o=`${r}: ${pO(s.name,a)}`),n[o]=dO(t,i[r],a,e)}}return n}({vertexArray:e,header:`${this.id} attributes`,attributes:this._attributes}),{table:s,unusedTable:o,unusedCount:a}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n)}),{table:l,count:c}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n),undefinedOnly:!0});c>0&&Nw.log("MISSING UNIFORMS",Object.keys(l))(),a>0&&Nw.log("UNUSED UNIFORMS",Object.keys(o))();const u=function(t){const e={},n=`Accessors for ${t.id}`;for(const i of t.attributeInfos)i&&(e[`in ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});for(const i of t.varyingInfos)i&&(e[`out ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});return e}(this.vertexArray.configuration);Nw.table(t,r)(),Nw.table(t,s)(),Nw.table(t+1,u)(),i&&i.log({logLevel:2,message:`Rendered to ${i.id}`}),Nw.groupEnd(2,`>>> DRAWING MODEL ${this.id}`)()}}class SO{static isSupported(t){return Fw(t)}constructor(t,e={}){this.gl=t,this.model=null,this.elementCount=0,this.bufferTransform=null,this.textureTransform=null,this.elementIDBuffer=null,this._initialize(e),Object.seal(this)}delete(){const{model:t,bufferTransform:e,textureTransform:n}=this;t&&t.delete(),e&&e.delete(),n&&n.delete()}run(t={}){const{clearRenderTarget:e=!0}=t,n=this._updateDrawOptions(t);e&&n.framebuffer&&n.framebuffer.clear({color:!0}),this.model.transform(n)}swap(){let t=!1;const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)t=t||n.swap();Rx(t,"Nothing to swap")}getBuffer(t=null){return this.bufferTransform&&this.bufferTransform.getBuffer(t)}getData(t={}){const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e){const e=n.getData(t);if(e)return e}return null}getFramebuffer(){return this.textureTransform&&this.textureTransform.getFramebuffer()}update(t={}){"elementCount"in t&&this.model.setVertexCount(t.elementCount);const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)n.update(t)}_initialize(t={}){const{gl:e}=this;this._buildResourceTransforms(e,t),t=this._updateModelProps(t),this.model=new xO(e,Object.assign({},t,{fs:t.fs||NE({version:FE(t.vs)}),id:t.id||"transform-model",drawMode:t.drawMode||0,vertexCount:t.elementCount})),this.bufferTransform&&this.bufferTransform.setupResources({model:this.model})}_updateModelProps(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=i.updateModelProps(e);return e}_buildResourceTransforms(t,e){(function(t){return!(Vx(t.feedbackBuffers)&&Vx(t.feedbackMap)&&!(t.varyings&&t.varyings.length>0))})(e)&&(this.bufferTransform=new jE(t,e)),function(t){return!(Vx(t._sourceTextures)&&!t._targetTexture&&!t._targetTextureVarying)}(e)&&(this.textureTransform=new QE(t,e)),Rx(this.bufferTransform||this.textureTransform,"must provide source/feedback buffers or source/target textures")}_updateDrawOptions(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=Object.assign(e,i.getDrawOptions(e));return e}}function EO(){}const CO={onStart:EO,onUpdate:EO,onInterrupt:EO,onEnd:EO};class OO{constructor(t){this._inProgress=!1,this._handle=null,this.timeline=t,this.settings={}}get inProgress(){return this._inProgress}start(t){this.cancel(),this.settings=wt(wt({},CO),t),this._inProgress=!0,this.settings.onStart(this)}end(){this._inProgress&&(this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1,this.settings.onEnd(this))}cancel(){this._inProgress&&(this.settings.onInterrupt(this),this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1)}update(){if(!this._inProgress)return!1;if(null===this._handle){const{timeline:t,settings:e}=this;this._handle=t.addChannel({delay:t.getTime(),duration:e.duration})}return this.time=this.timeline.getTime(this._handle),this._onUpdate(),this.settings.onUpdate(this),this.timeline.isFinished(this._handle)&&this.end(),!0}_onUpdate(){}}const TO={interpolation:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="interpolation",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,e.settings),this.currentStartIndices=e.startIndices,this.currentLength=0,this.transform=function(t,e){const n=EE(e.size);return new SO(t,{vs:"\n#define SHADER_NAME interpolation-transition-vertex-shader\n\nuniform float time;\nattribute ATTRIBUTE_TYPE aFrom;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vCurrent;\n\nvoid main(void) {\n vCurrent = mix(aFrom, aTo, time);\n gl_Position = vec4(0.0);\n}\n",defines:{ATTRIBUTE_TYPE:n},varyings:["vCurrent"]})}(t,e);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){if(t.duration<=0)return void this.transition.cancel();const{buffers:n,attribute:i}=this;CE(n);const r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aFrom:n[0],aTo:SE(0,i)},feedbackBuffers:{vCurrent:n[1]}})}update(){const t=this.transition.update();if(t){const{time:t,settings:{duration:e,easing:n}}=this.transition,i=n(t/e);this.transform.run({uniforms:{time:i}})}return t}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete()}},spring:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="spring",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,ii(wt({},e.settings),{normalized:!1})),this.currentStartIndices=e.startIndices,this.currentLength=0,this.texture=function(t){return new lS(t,{data:new Uint8Array(4),format:6408,type:5121,border:0,mipmaps:!1,dataFormat:6408,width:1,height:1})}(t),this.framebuffer=function(t,e){return new SS(t,{id:"spring-transition-is-transitioning-framebuffer",width:1,height:1,attachments:{36064:e}})}(t,this.texture),this.transform=function(t,e,n){const i=EE(e.size);return new SO(t,{framebuffer:n,vs:"\n#define SHADER_NAME spring-transition-vertex-shader\n\n#define EPSILON 0.00001\n\nuniform float stiffness;\nuniform float damping;\nattribute ATTRIBUTE_TYPE aPrev;\nattribute ATTRIBUTE_TYPE aCur;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vNext;\nvarying float vIsTransitioningFlag;\n\nATTRIBUTE_TYPE getNextValue(ATTRIBUTE_TYPE cur, ATTRIBUTE_TYPE prev, ATTRIBUTE_TYPE dest) {\n ATTRIBUTE_TYPE velocity = cur - prev;\n ATTRIBUTE_TYPE delta = dest - cur;\n ATTRIBUTE_TYPE spring = delta * stiffness;\n ATTRIBUTE_TYPE damper = velocity * -1.0 * damping;\n return spring + damper + velocity + cur;\n}\n\nvoid main(void) {\n bool isTransitioning = length(aCur - aPrev) > EPSILON || length(aTo - aCur) > EPSILON;\n vIsTransitioningFlag = isTransitioning ? 1.0 : 0.0;\n\n vNext = getNextValue(aCur, aPrev, aTo);\n gl_Position = vec4(0, 0, 0, 1);\n gl_PointSize = 100.0;\n}\n",fs:"\n#define SHADER_NAME spring-transition-is-transitioning-fragment-shader\n\nvarying float vIsTransitioningFlag;\n\nvoid main(void) {\n if (vIsTransitioningFlag == 0.0) {\n discard;\n }\n gl_FragColor = vec4(1.0);\n}",defines:{ATTRIBUTE_TYPE:i},varyings:["vNext"]})}(t,e,this.framebuffer);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){const{buffers:n,attribute:i}=this,r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aTo:SE(0,i)}})}update(){const{buffers:t,transform:e,framebuffer:n,transition:i}=this;return!!i.update()&&(e.update({sourceBuffers:{aPrev:t[0],aCur:t[1]},feedbackBuffers:{vNext:t[2]}}),e.run({framebuffer:n,discard:!1,clearRenderTarget:!0,uniforms:{stiffness:i.settings.stiffness,damping:i.settings.damping},parameters:{depthTest:!1,blend:!0,viewport:[0,0,1,1],blendFunc:[1,1],blendEquation:[32776,32776]}}),CE(t),this.attributeInTransition.update({buffer:t[1],value:this.attribute.value}),_S(n)[0]>0||i.end(),!0)}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete();this.texture.delete(),this.texture=null,this.framebuffer.delete(),this.framebuffer=null}}};class kO{constructor(t,{id:e,timeline:n}){this.id=e,this.gl=t,this.timeline=n,this.transitions={},this.needsRedraw=!1,this.numInstances=1,this.isSupported=SO.isSupported(t)}finalize(){for(const t in this.transitions)this._removeTransition(t)}update({attributes:t,transitions:e,numInstances:n}){this.numInstances=n||1;for(const i in t){const n=t[i],r=n.getTransitionSetting(e);!r||this._updateAttribute(i,n,r)}for(const i in this.transitions){const n=t[i];(!n||!n.getTransitionSetting(e))&&this._removeTransition(i)}}hasAttribute(t){const e=this.transitions[t];return e&&e.inProgress}getAttributes(){const t={};for(const e in this.transitions){const n=this.transitions[e];n.inProgress&&(t[e]=n.attributeInTransition)}return t}run(){if(!this.isSupported||0===this.numInstances)return!1;for(const e in this.transitions)this.transitions[e].update()&&(this.needsRedraw=!0);const t=this.needsRedraw;return this.needsRedraw=!1,t}_removeTransition(t){this.transitions[t].cancel(),delete this.transitions[t]}_updateAttribute(t,e,n){const i=this.transitions[t];let r=!i||i.type!==n.type;if(r){if(!this.isSupported)return void Mw.warn("WebGL2 not supported by this browser. Transition for ".concat(t," is disabled."))();i&&this._removeTransition(t);const s=TO[n.type];s?this.transitions[t]=new s({attribute:e,timeline:this.timeline,gl:this.gl}):(Mw.error("unsupported transition type '".concat(n.type,"'"))(),r=!1)}(r||e.needsRedraw())&&(this.needsRedraw=!0,this.transitions[t].start(n,this.numInstances))}}const AO="attributeManager.invalidate";class PO{constructor(t,{id:e="attribute-manager",stats:n,timeline:i}={}){this.id=e,this.gl=t,this.attributes={},this.updateTriggers={},this.accessors={},this.needsRedraw=!0,this.userData={},this.stats=n,this.attributeTransitionManager=new kO(t,{id:"".concat(e,"-transitions"),timeline:i}),Object.seal(this)}finalize(){for(const t in this.attributes)this.attributes[t].delete();this.attributeTransitionManager.finalize()}getNeedsRedraw(t={clearRedrawFlags:!1}){const e=this.needsRedraw;return this.needsRedraw=this.needsRedraw&&!t.clearRedrawFlags,e&&this.id}setNeedsRedraw(t=!0){return this.needsRedraw=!0,this}add(t,e){this._add(t,e)}addInstanced(t,e){this._add(t,e,{instanced:1})}remove(t){for(let e=0;e{t[n]||(t[n]=[]),t[n].push(e)});this.updateTriggers=t}_invalidateTrigger(t,e){const{attributes:n,updateTriggers:i}=this,r=i[t];return r&&r.forEach(t=>{const i=n[t];i&&i.setNeedsUpdate(i.id,e)}),r}_updateAttribute(t){const{attribute:e,numInstances:n}=t;PE("attribute.updateStart",e),e.allocate(n)&&PE("attribute.allocate",e,n),e.updateBuffer(t)&&(this.needsRedraw=!0,PE("attribute.updateEnd",e,n))}}function MO(t,e,n,i,r){const s=e-t;return(n-e)*r+-s*i+s+e}function IO(t,e){if(Array.isArray(t)){let n=0;for(let i=0;i0}add(t,e,n,i){const{transitions:r}=this;if(r.has(t)){const n=r.get(t),{value:i=n.settings.fromValue}=n;e=i,this.remove(t)}if(!(i=xE(i)))return;const s=DO[i.type];if(!s)return void Mw.error("unsupported transition type '".concat(i.type,"'"))();const o=new s(this.timeline);o.start(ii(wt({},i),{fromValue:e,toValue:n})),r.set(t,o)}remove(t){const{transitions:e}=this;e.has(t)&&(e.get(t).cancel(),e.delete(t))}update(){const t={};for(const[e,n]of this.transitions)n.update(),t[e]=n.value,n.inProgress||this.remove(e);return t}clear(){for(const t of this.transitions.keys())this.remove(t)}}const NO={COMPONENT:Symbol.for("component"),ASYNC_DEFAULTS:Symbol.for("asyncPropDefaults"),ASYNC_ORIGINAL:Symbol.for("asyncPropOriginal"),ASYNC_RESOLVED:Symbol.for("asyncPropResolved")},{COMPONENT:LO}=NO;function jO(t,e){if(!t.transitions)return null;const n={},i=UO(t);for(const r in t.transitions){const s=i[r],o=s&&s.type;("number"===o||"color"===o||"array"===o)&&BO(t[r],e[r],s)&&(n[r]=!0)}return n}function FO({newProps:t,oldProps:e,ignoreProps:n={},propTypes:i={},triggerName:r="props"}={}){if(e===t)return null;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return"".concat(r," changed shallowly");for(const s of Object.keys(t))if(!(s in n)){if(!(s in e))return"".concat(r,".").concat(s," added");const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}for(const s of Object.keys(e))if(!(s in n)){if(!(s in t))return"".concat(r,".").concat(s," dropped");if(!Object.hasOwnProperty.call(t,s)){const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}}return null}function BO(t,e,n){let i=n&&n.equal;return i&&!i(t,e,n)||!i&&(i=t&&e&&t.equals,i&&!i.call(t,e))?"changed deeply":i||e===t?null:"changed shallowly"}function VO(t,e){if(null===e)return"oldProps is null, initial diff";const n=e.extensions,{extensions:i}=t;if(i===n)return!1;if(i.length!==n.length)return!0;for(let r=0;r{for(const r in i)if(!HO(i[r],n[r])){e=t(i),n=i;break}return e}}function GO(t,e){if(!e)return t;const n=wt(wt({},t),e);if("defines"in e&&(n.defines=wt(wt({},t.defines),e.defines)),"modules"in e&&(n.modules=(t.modules||[]).concat(e.modules),e.modules.some(t=>"project64"===t.name))){const t=n.modules.findIndex(t=>"project32"===t.name);t>=0&&n.modules.splice(t,1)}if("inject"in e)if(t.inject){const i=wt({},t.inject);for(const t in e.inject)i[t]=(i[t]||"")+e.inject[t];n.inject=i}else n.inject=e.inject;return n}function WO(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8],h=e[9],d=e[10],p=e[11],f=e[12],g=e[13],m=e[14],b=e[15],y=n*a-i*o,v=n*l-r*o,_=n*c-s*o,w=i*l-r*a,x=i*c-s*a,S=r*c-s*l,E=u*g-h*f,C=u*m-d*f,O=u*b-p*f,T=h*m-d*g,k=h*b-p*g,A=d*b-p*m,P=y*A-v*k+_*T+w*O-x*C+S*E;return P?(t[0]=(a*A-l*k+c*T)*(P=1/P),t[1]=(r*k-i*A-s*T)*P,t[2]=(g*S-m*x+b*w)*P,t[3]=(d*x-h*S-p*w)*P,t[4]=(l*O-o*A-c*C)*P,t[5]=(n*A-r*O+s*C)*P,t[6]=(m*_-f*S-b*v)*P,t[7]=(u*S-d*_+p*v)*P,t[8]=(o*k-a*O+c*E)*P,t[9]=(i*O-n*k-s*E)*P,t[10]=(f*x-g*_+b*y)*P,t[11]=(h*_-u*x-p*y)*P,t[12]=(a*C-o*T-l*E)*P,t[13]=(n*T-i*C+r*E)*P,t[14]=(g*v-f*w-m*y)*P,t[15]=(u*w-h*v+d*y)*P,t):null}function qO(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],g=e[12],m=e[13],b=e[14],y=e[15],v=n[0],_=n[1],w=n[2],x=n[3];return t[0]=v*i+_*a+w*h+x*g,t[1]=v*r+_*l+w*d+x*m,t[2]=v*s+_*c+w*p+x*b,t[3]=v*o+_*u+w*f+x*y,t[4]=(v=n[4])*i+(_=n[5])*a+(w=n[6])*h+(x=n[7])*g,t[5]=v*r+_*l+w*d+x*m,t[6]=v*s+_*c+w*p+x*b,t[7]=v*o+_*u+w*f+x*y,t[8]=(v=n[8])*i+(_=n[9])*a+(w=n[10])*h+(x=n[11])*g,t[9]=v*r+_*l+w*d+x*m,t[10]=v*s+_*c+w*p+x*b,t[11]=v*o+_*u+w*f+x*y,t[12]=(v=n[12])*i+(_=n[13])*a+(w=n[14])*h+(x=n[15])*g,t[13]=v*r+_*l+w*d+x*m,t[14]=v*s+_*c+w*p+x*b,t[15]=v*o+_*u+w*f+x*y,t}function XO(t,e,n){var i,r,s,o,a,l,c,u,h,d,p,f,g=n[0],m=n[1],b=n[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*b+e[12],t[13]=e[1]*g+e[5]*m+e[9]*b+e[13],t[14]=e[2]*g+e[6]*m+e[10]*b+e[14],t[15]=e[3]*g+e[7]*m+e[11]*b+e[15]):(r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],t[0]=i=e[0],t[1]=r,t[2]=s,t[3]=o,t[4]=a,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=d,t[10]=p,t[11]=f,t[12]=i*g+a*m+h*b+e[12],t[13]=r*g+l*m+d*b+e[13],t[14]=s*g+c*m+p*b+e[14],t[15]=o*g+u*m+f*b+e[15]),t}function YO(t,e,n){var i=n[0],r=n[1],s=n[2];return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t[3]=e[3]*i,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function KO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[4],o=e[5],a=e[6],l=e[7],c=e[8],u=e[9],h=e[10],d=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=s*r+c*i,t[5]=o*r+u*i,t[6]=a*r+h*i,t[7]=l*r+d*i,t[8]=c*r-s*i,t[9]=u*r-o*i,t[10]=h*r-a*i,t[11]=d*r-l*i,t}function QO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[4],u=e[5],h=e[6],d=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r+c*i,t[1]=o*r+u*i,t[2]=a*r+h*i,t[3]=l*r+d*i,t[4]=c*r-s*i,t[5]=u*r-o*i,t[6]=h*r-a*i,t[7]=d*r-l*i,t}function ZO(t,e,n,i,r){var s,o=1/Math.tan(e/2);return t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=r&&r!==1/0?(t[10]=(r+i)*(s=1/(i-r)),t[14]=2*r*i*s):(t[10]=-1,t[14]=-2*i),t}function JO(t,e){var n=t[0],i=t[1],r=t[2],s=t[3],o=t[4],a=t[5],l=t[6],c=t[7],u=t[8],h=t[9],d=t[10],p=t[11],f=t[12],g=t[13],m=t[14],b=t[15],y=e[0],v=e[1],_=e[2],w=e[3],x=e[4],S=e[5],E=e[6],C=e[7],O=e[8],T=e[9],k=e[10],A=e[11],P=e[12],M=e[13],I=e[14],D=e[15];return Math.abs(n-y)<=WS*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-v)<=WS*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(r-_)<=WS*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(s-w)<=WS*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(o-x)<=WS*Math.max(1,Math.abs(o),Math.abs(x))&&Math.abs(a-S)<=WS*Math.max(1,Math.abs(a),Math.abs(S))&&Math.abs(l-E)<=WS*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-C)<=WS*Math.max(1,Math.abs(c),Math.abs(C))&&Math.abs(u-O)<=WS*Math.max(1,Math.abs(u),Math.abs(O))&&Math.abs(h-T)<=WS*Math.max(1,Math.abs(h),Math.abs(T))&&Math.abs(d-k)<=WS*Math.max(1,Math.abs(d),Math.abs(k))&&Math.abs(p-A)<=WS*Math.max(1,Math.abs(p),Math.abs(A))&&Math.abs(f-P)<=WS*Math.max(1,Math.abs(f),Math.abs(P))&&Math.abs(g-M)<=WS*Math.max(1,Math.abs(g),Math.abs(M))&&Math.abs(m-I)<=WS*Math.max(1,Math.abs(m),Math.abs(I))&&Math.abs(b-D)<=WS*Math.max(1,Math.abs(b),Math.abs(D))}function tT(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function eT(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3];return t[0]=n[0]*i+n[4]*r+n[8]*s+n[12]*o,t[1]=n[1]*i+n[5]*r+n[9]*s+n[13]*o,t[2]=n[2]*i+n[6]*r+n[10]*s+n[14]*o,t[3]=n[3]*i+n[7]*r+n[11]*s+n[15]*o,t}!function(){var t=new qS(4);qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();const nT=[0,0,0,0],iT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],rT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],sT=[0,0,0],oT=[0,0,0],aT=$O(function({viewport:t,devicePixelRatio:e,coordinateSystem:n,coordinateOrigin:i}){const{projectionCenter:r,viewProjectionMatrix:s,originCommon:o,cameraPosCommon:a,shaderCoordinateOrigin:l,geospatialOrigin:c}=function(t,e,n){const{viewMatrixUncentered:i,projectionMatrix:r}=t;let{viewMatrix:s,viewProjectionMatrix:o}=t,a=nT,l=nT,c=t.cameraPosition;const{geospatialOrigin:u,shaderCoordinateOrigin:h,offsetMode:d}=lT(t,e,n);return d&&(l=t.projectPosition(u||h),c=[c[0]-l[0],c[1]-l[1],c[2]-l[2]],l[3]=1,a=eT([],l,o),s=i||s,o=qO([],r,s),o=qO([],o,iT)),{viewMatrix:s,viewProjectionMatrix:o,projectionCenter:a,originCommon:l,cameraPosCommon:c,shaderCoordinateOrigin:h,geospatialOrigin:u}}(t,n,i),u=t.getDistanceScales(),h=[t.width*e,t.height*e],d=t.projectionMatrix.transform([0,0,-t.focalDistance,1])[3]||1,p={project_uCoordinateSystem:n,project_uProjectionMode:t.projectionMode,project_uCoordinateOrigin:l,project_uCommonOrigin:o.slice(0,3),project_uCenter:r,project_uViewportSize:h,project_uDevicePixelRatio:e,project_uFocalDistance:d,project_uCommonUnitsPerMeter:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit2:sT,project_uScale:t.scale,project_uViewProjectionMatrix:s,project_uCameraPosition:a};if(c){const e=t.getDistanceScales(c);switch(n){case Iw.METER_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerMeter,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerMeter2;break;case Iw.LNGLAT:case Iw.LNGLAT_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerDegree,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerDegree2;break;case Iw.CARTESIAN:p.project_uCommonUnitsPerWorldUnit=[1,1,e.unitsPerMeter[2]],p.project_uCommonUnitsPerWorldUnit2=[0,0,e.unitsPerMeter2[2]]}}return p});function lT(t,e,n=oT){let i,r=n,s=!0;switch(i=e===Iw.LNGLAT_OFFSETS||e===Iw.METER_OFFSETS?n:t.isGeospatial?[Math.fround(t.longitude),Math.fround(t.latitude),0]:null,t.projectionMode){case Dw.WEB_MERCATOR:(e===Iw.LNGLAT||e===Iw.CARTESIAN)&&(s=!1);break;case Dw.WEB_MERCATOR_AUTO_OFFSET:e===Iw.LNGLAT?r=i:e===Iw.CARTESIAN&&(r=[Math.fround(t.center[0]),Math.fround(t.center[1]),0],i=t.unprojectPosition(r),r[0]-=n[0],r[1]-=n[1],r[2]-=n[2]);break;case Dw.IDENTITY:r=t.position.map(Math.fround);break;case Dw.GLOBE:s=!1,i=null;break;default:s=!1}return r[2]=r[2]||0,{geospatialOrigin:i,shaderCoordinateOrigin:r,offsetMode:s}}class cT extends VS{get ELEMENTS(){return BS(!1),0}get RANK(){return BS(!1),0}toString(){let t="[";if(MS.printRowMajor){t+="row-major:";for(let e=0;e2*Math.PI)throw Error("radians");const s=n*Math.tan(t/2),o=s*e;return(new bT).ortho({left:-o,right:o,bottom:-s,top:s,near:i,far:r})}perspective({fovy:t,fov:e=45*Math.PI/180,aspect:n=1,near:i=.1,far:r=500}={}){if((t=t||e)>2*Math.PI)throw Error("radians");return ZO(this,t,n,i,r),this.check()}determinant(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],o=t[5],a=t[6],l=t[7],c=t[8],u=t[9],h=t[10],d=t[11],p=t[12],f=t[13],g=t[14],m=t[15];return(e*o-n*s)*(h*m-d*g)-(e*a-i*s)*(u*m-d*f)+(e*l-r*s)*(u*g-h*f)+(n*a-i*o)*(c*m-d*p)-(n*l-r*o)*(c*g-h*p)+(i*l-r*a)*(c*f-u*p)}(this)}getScale(t=[-0,-0,-0]){return t[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),t[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),t[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),t}getTranslation(t=[-0,-0,-0]){return t[0]=this[12],t[1]=this[13],t[2]=this[14],t}getRotation(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=0,t[4]=this[4]*i,t[5]=this[5]*r,t[6]=this[6]*s,t[7]=0,t[8]=this[8]*i,t[9]=this[9]*r,t[10]=this[10]*s,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}getRotationMatrix3(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=this[4]*i,t[4]=this[5]*r,t[5]=this[6]*s,t[6]=this[8]*i,t[7]=this[9]*r,t[8]=this[10]*s,t}transpose(){return function(t,e){if(t===e){var n=e[1],i=e[2],r=e[3],s=e[6],o=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=i,t[9]=s,t[11]=e[14],t[12]=r,t[13]=o,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15]}(this,this),this.check()}invert(){return WO(this,this),this.check()}multiplyLeft(t){return qO(this,t,this),this.check()}multiplyRight(t){return qO(this,this,t),this.check()}rotateX(t){return KO(this,this,t),this.check()}rotateY(t){return function(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[8],u=e[9],h=e[10],d=e[11];e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r-c*i,t[1]=o*r-u*i,t[2]=a*r-h*i,t[3]=l*r-d*i,t[8]=s*i+c*r,t[9]=o*i+u*r,t[10]=a*i+h*r,t[11]=l*i+d*r}(this,this,t),this.check()}rotateZ(t){return QO(this,this,t),this.check()}rotateXYZ([t,e,n]){return this.rotateX(t).rotateY(e).rotateZ(n)}rotateAxis(t,e){return function(t,e,n,i){var r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w,x,S,E,C,O,T,k=i[0],A=i[1],P=i[2],M=Math.hypot(k,A,P);M=-90&&e<=90,"invalid latitude"),[512*(t*ET+xT)/(2*xT),512*(xT+Math.log(Math.tan(ST+e*ET*.5)))/(2*xT)]}function kT([t,e]){const n=t/512*(2*xT)-xT,i=2*(Math.atan(Math.exp(e/512*(2*xT)-xT))-ST);return[n*CT,i*CT]}function AT({latitude:t,longitude:e,highPrecision:n=!1}){wT(Number.isFinite(t)&&Number.isFinite(e));const i={},r=Math.cos(t*ET),s=512/360,o=s/r,a=512/OT/r;if(i.unitsPerMeter=[a,a,a],i.metersPerUnit=[1/a,1/a,1/a],i.unitsPerDegree=[s,o,a],i.degreesPerUnit=[1/s,1/o,1/a],n){const e=ET*Math.tan(t*ET)/r,n=512/OT*e,l=n/o*a;i.unitsPerDegree2=[0,s*e/2,n],i.unitsPerMeter2=[l,0,l]}return i}function PT(t,e){const[n,i,r]=t,[s,o,a]=e,{unitsPerMeter:l,unitsPerMeter2:c}=AT({longitude:n,latitude:i,highPrecision:!0}),u=TT(t);u[0]+=s*(l[0]+c[0]*o),u[1]+=o*(l[1]+c[1]*o);const h=kT(u),d=(r||0)+(a||0);return Number.isFinite(r)||Number.isFinite(a)?[h[0],h[1],d]:h}function MT({height:t,pitch:e,bearing:n,altitude:i,scale:r,center:s=null}){const o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return XO(o,o,[0,0,-i]),KO(o,o,-e*ET),QO(o,o,n*ET),YO(o,o,[r/=t,r,r]),s&&XO(o,o,function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}([],s)),o}function IT({width:t,height:e,fovy:n=DT(1.5),altitude:i,pitch:r=0,nearZMultiplier:s=1,farZMultiplier:o=1}){void 0!==i&&(n=DT(i));const a=.5*n*ET,l=RT(n),c=r*ET,u=Math.sin(a)*l/Math.sin(Math.min(Math.max(Math.PI/2-c-a,.01),Math.PI-.01));return{fov:2*a,aspect:t/e,focalDistance:l,near:s,far:(Math.sin(c)*u+l)*o}}function DT(t){return 2*Math.atan(.5/t)*CT}function RT(t){return.5/Math.tan(.5*t*ET)}function NT(t,e){const[n,i,r=0]=t;return wT(Number.isFinite(n)&&Number.isFinite(i)&&Number.isFinite(r)),yT(e,[n,i,r,1])}function LT(t,e,n=0){const[i,r,s]=t;if(wT(Number.isFinite(i)&&Number.isFinite(r),"invalid pixel coordinate"),Number.isFinite(s))return yT(e,[i,r,s,1]);const o=yT(e,[i,r,0,1]),a=yT(e,[i,r,1,1]),l=o[2],c=a[2];return dT([],o,a,l===c?0:((n||0)-l)/(c-l))}function jT({width:t,height:e,bounds:n,minExtent:i=0,maxZoom:r=24,padding:s=0,offset:o=[0,0]}){const[[a,l],[c,u]]=n;Number.isFinite(s)?s={top:s,bottom:s,left:s,right:s}:wT(Number.isFinite(s.top)&&Number.isFinite(s.bottom)&&Number.isFinite(s.left)&&Number.isFinite(s.right));const h=new zT({width:t,height:e,longitude:0,latitude:0,zoom:0}),d=h.project([a,u]),p=h.project([c,l]),f=[Math.max(Math.abs(p[0]-d[0]),i),Math.max(Math.abs(p[1]-d[1]),i)],g=[t-s.left-s.right-2*Math.abs(o[0]),e-s.top-s.bottom-2*Math.abs(o[1])];wT(g[0]>0&&g[1]>0);const m=g[0]/f[0],b=g[1]/f[1],y=h.unproject([(p[0]+d[0])/2+(s.right-s.left)/2/m,(p[1]+d[1])/2+(s.bottom-s.top)/2/b]),v=Math.min(r,h.zoom+_T(Math.abs(Math.min(m,b))));return wT(Number.isFinite(v)),{longitude:y[0],latitude:y[1],zoom:v}}const FT=Math.PI/180;function BT(t,e=0){const{width:n,height:i,unproject:r}=t,s={targetZ:e},o=r([0,i],s),a=r([n,i],s);let l,c;return(t.fovy?.5*t.fovy*FT:Math.atan(.5/t.altitude))>(90-t.pitch)*FT-.01?(l=VT(t,0,e),c=VT(t,n,e)):(l=r([0,0],s),c=r([n,0],s)),[o,a,c,l]}function VT(t,e,n){const{pixelUnprojectionMatrix:i}=t,r=yT(i,[e,0,1,1]),s=yT(i,[e,t.height,1,1]),o=kT(dT([],r,s,(n*t.distanceScales.unitsPerMeter[2]-r[2])/(s[2]-r[2])));return o[2]=n,o}class zT{constructor({width:t,height:e,latitude:n=0,longitude:i=0,zoom:r=0,pitch:s=0,bearing:o=0,altitude:a=null,fovy:l=null,position:c=null,nearZMultiplier:u=.02,farZMultiplier:h=1.01}={width:1,height:1}){t=t||1,e=e||1,null===l&&null===a?l=DT(a=1.5):null===l?l=DT(a):null===a&&(a=RT(l));const d=function(t){return Math.pow(2,t)}(r);a=Math.max(.75,a);const p=AT({longitude:i,latitude:n}),f=TT([i,n]);f[2]=0,c&&function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2]}(f,f,function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t}([],c,p.unitsPerMeter)),this.projectionMatrix=function({width:t,height:e,pitch:n,altitude:i,fovy:r,nearZMultiplier:s,farZMultiplier:o}){const{fov:a,aspect:l,near:c,far:u}=IT({width:t,height:e,altitude:i,fovy:r,pitch:n,nearZMultiplier:s,farZMultiplier:o});return ZO([],a,l,c,u)}({width:t,height:e,pitch:s,fovy:l,nearZMultiplier:u,farZMultiplier:h}),this.viewMatrix=MT({height:e,scale:d,center:f,pitch:s,bearing:o,altitude:a}),this.width=t,this.height=e,this.scale=d,this.latitude=n,this.longitude=i,this.zoom=r,this.pitch=s,this.bearing=o,this.altitude=a,this.fovy=l,this.center=f,this.meterOffset=c||[0,0,0],this.distanceScales=p,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}_initMatrices(){const{width:t,height:e,projectionMatrix:n,viewMatrix:i}=this,r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];qO(r,r,n),qO(r,r,i),this.viewProjectionMatrix=r;const s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];YO(s,s,[t/2,-e/2,1]),XO(s,s,[1,-1,0]),qO(s,s,r);const o=WO([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],s);if(!o)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=s,this.pixelUnprojectionMatrix=o}equals(t){return t instanceof zT&&t.width===this.width&&t.height===this.height&&JO(t.projectionMatrix,this.projectionMatrix)&&JO(t.viewMatrix,this.viewMatrix)}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=TT(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=kT(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return TT(t)}unprojectFlat(t){return kT(t)}getMapCenterByLngLatPosition({lngLat:t,pos:e}){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],TT(t),hT([],n));return kT(uT([],this.center,i))}getLocationAtPoint({lngLat:t,pos:e}){return this.getMapCenterByLngLatPosition({lngLat:t,pos:e})}fitBounds(t,e={}){const{width:n,height:i}=this,{longitude:r,latitude:s,zoom:o}=jT(Object.assign({width:n,height:i,bounds:t},e));return new zT({width:n,height:i,longitude:r,latitude:s,zoom:o})}getBounds(t){const e=this.getBoundingRegion(t),n=Math.min(...e.map(t=>t[0])),i=Math.max(...e.map(t=>t[0]));return[[n,Math.min(...e.map(t=>t[1]))],[i,Math.max(...e.map(t=>t[1]))]]}getBoundingRegion(t={}){return BT(this,t.z||0)}}const UT=Math.PI/180,HT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],$T=[0,0,0],GT={unitsPerMeter:[1,1,1],metersPerUnit:[1,1,1]};let WT=(()=>{class t{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r=1,height:s=1}=t;this.id=e||this.constructor.displayName||"viewport",this.x=n,this.y=i,this.width=r||1,this.height=s||1,this._frustumPlanes={},this._initViewMatrix(t),this._initProjectionMatrix(t),this._initPixelMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),this.projectFlat=this.projectFlat.bind(this),this.unprojectFlat=this.unprojectFlat.bind(this)}get metersPerPixel(){return this.distanceScales.metersPerUnit[2]/this.scale}get projectionMode(){return this.isGeospatial?this.zoom<12?Dw.WEB_MERCATOR:Dw.WEB_MERCATOR_AUTO_OFFSET:Dw.IDENTITY}equals(e){return e instanceof t&&(this===e||e.width===this.width&&e.height===this.height&&e.scale===this.scale&&FS(e.projectionMatrix,this.projectionMatrix)&&FS(e.viewMatrix,this.viewMatrix))}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=this.projectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=this.unprojectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return this.isGeospatial?TT(t):t}unprojectFlat(t){return this.isGeospatial?kT(t):t}getBounds(t={}){const e={targetZ:t.z||0},n=this.unproject([0,0],e),i=this.unproject([this.width,0],e),r=this.unproject([0,this.height],e),s=this.unproject([this.width,this.height],e);return[Math.min(n[0],i[0],r[0],s[0]),Math.min(n[1],i[1],r[1],s[1]),Math.max(n[0],i[0],r[0],s[0]),Math.max(n[1],i[1],r[1],s[1])]}getDistanceScales(t=null){return t?AT({longitude:t[0],latitude:t[1],highPrecision:!0}):this.distanceScales}containsPixel({x:t,y:e,width:n=1,height:i=1}){return t{class t extends WT{constructor(t={}){const{latitude:e=0,longitude:n=0,zoom:i=11,pitch:r=0,bearing:s=0,nearZMultiplier:o=.1,farZMultiplier:a=1.01,orthographic:l=!1,repeat:c=!1,worldOffset:u=0}=t;let{width:h,height:d,altitude:p=1.5}=t;const f=Math.pow(2,i);h=h||1,d=d||1,p=Math.max(.75,p);const{fov:g,aspect:m,focalDistance:b,near:y,far:v}=IT({width:h,height:d,pitch:r,altitude:p,nearZMultiplier:o,farZMultiplier:a});let _=MT({height:d,pitch:r,bearing:s,scale:f,altitude:p});u&&(_=(new bT).translate([512*u,0,0]).multiplyLeft(_)),super(ii(wt({},t),{width:h,height:d,viewMatrix:_,longitude:n,latitude:e,zoom:i,orthographic:l,fovyRadians:g,aspect:m,focalDistance:b,near:y,far:v})),this.latitude=e,this.longitude=n,this.zoom=i,this.pitch=r,this.bearing=s,this.altitude=p,this.orthographic=l,this._subViewports=c?[]:null,Object.freeze(this)}get subViewports(){if(this._subViewports&&!this._subViewports.length){const e=this.getBounds(),n=Math.floor((e[0]+180)/360),i=Math.ceil((e[2]-180)/360);for(let r=n;r<=i;r++){const e=r?new t(ii(wt({},this),{worldOffset:r})):this;this._subViewports.push(e)}}return this._subViewports}addMetersToLngLat(t,e){return PT(t,e)}panByPosition(t,e){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],this.projectFlat(t),hT([],n)),r=uT([],this.center,i),[s,o]=this.unprojectFlat(r);return{longitude:s,latitude:o}}getBounds(t={}){const e=BT(this,t.z||0);return[Math.min(e[0][0],e[1][0],e[2][0],e[3][0]),Math.min(e[0][1],e[1][1],e[2][1],e[3][1]),Math.max(e[0][0],e[1][0],e[2][0],e[3][0]),Math.max(e[0][1],e[1][1],e[2][1],e[3][1])]}fitBounds(e,n={}){const{width:i,height:r}=this,{longitude:s,latitude:o,zoom:a}=jT(wt({width:i,height:r,bounds:e},n));return new t({width:i,height:r,longitude:s,latitude:o,zoom:a})}}return t.displayName="WebMercatorViewport",t})();function XT(t,e,n=!1){const i=e.projectPosition(t);if(n&&e instanceof qT){const[n,r,s=0]=t,o=e.getDistanceScales([n,r]);i[2]=s*o.unitsPerMeter[2]}return i}function KT(t,{viewport:e,modelMatrix:n,coordinateSystem:i,coordinateOrigin:r,offsetMode:s}){let[o,a,l=0]=t;switch(n&&([o,a,l]=eT([],[o,a,l,1],n)),i){case Iw.LNGLAT:return XT([o,a,l],e,s);case Iw.LNGLAT_OFFSETS:return XT([o+r[0],a+r[1],l+(r[2]||0)],e,s);case Iw.METER_OFFSETS:return XT(PT(r,[o,a,l]),e,s);case Iw.CARTESIAN:default:return e.isGeospatial?[o+r[0],a+r[1],l+r[2]]:e.projectPosition([o,a,l])}}const QT={10241:9987,10240:9729,10242:33071,10243:33071},ZT={},JT={boolean:{validate:(t,e)=>!0,equal:(t,e,n)=>Boolean(t)===Boolean(e)},number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},color:{validate:(t,e)=>e.optional&&!t||ik(t)&&(3===t.length||4===t.length),equal:(t,e,n)=>tk(t,e)},accessor:{validate(t,e){const n=rk(t);return"function"===n||n===rk(e.value)},equal:(t,e,n)=>"function"==typeof e||tk(t,e)},array:{validate:(t,e)=>e.optional&&!t||ik(t),equal:(t,e,n)=>n.compare?tk(t,e):t===e},function:{validate:(t,e)=>e.optional&&!t||"function"==typeof t,equal:(t,e,n)=>!n.compare||t===e},data:{transform:(t,e,n)=>{const{dataTransform:i}=n?n.props:{};return i&&t?i(t):t}},image:{transform:(t,e,n)=>function(t,e){const n=t.context&&t.context.gl;if(!n||!e)return null;if(e instanceof lS)return e;e.constructor&&"Object"!==e.constructor.name&&(e={data:e});let i=null;e.compressed&&(i={10241:e.data.length>1?9985:9729});const r=new lS(n,ii(wt({},e),{parameters:wt(wt(wt({},QT),i),t.props.textureParameters)}));return ZT[r.id]=!0,r}(n,t),release:t=>{!function(t){!t||!(t instanceof lS)||ZT[t.id]&&(t.delete(),delete ZT[t.id])}(t)}}};function tk(t,e){if(t===e)return!0;if(!ik(t)||!ik(e))return!1;const n=t.length;if(n!==e.length)return!1;for(let i=0;i{},this.oldProps=yk,this.oldAsyncProps=null}finalize(){for(const t in this.asyncProps){const e=this.asyncProps[t];e.type&&e.type.release&&e.type.release(e.resolvedValue,e.type,this.component)}}getOldProps(){return this.oldAsyncProps||this.oldProps}resetOldProps(){this.oldAsyncProps=null,this.oldProps=this.component.props}freezeAsyncOldProps(){if(!this.oldAsyncProps){this.oldProps=this.oldProps||this.component.props,this.oldAsyncProps=Object.create(this.oldProps);for(const t in this.asyncProps)Object.defineProperty(this.oldAsyncProps,t,{enumerable:!0,value:this.oldProps[t]})}}hasAsyncProp(t){return t in this.asyncProps}getAsyncProp(t){const e=this.asyncProps[t];return e&&e.resolvedValue}isAsyncPropLoading(t){if(t){const e=this.asyncProps[t];return Boolean(e&&e.pendingLoadCount>0&&e.pendingLoadCount!==e.resolvedLoadCount)}for(const e in this.asyncProps)if(this.isAsyncPropLoading(e))return!0;return!1}reloadAsyncProp(t,e){this._watchPromise(t,Promise.resolve(e))}setAsyncProps(t){const e=t[mk]||{},n=t[gk]||t,i=t[bk]||{};for(const r in e){const t=e[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t),e[r]=this.getAsyncProp(r)}for(const r in n){const t=n[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t)}}_updateAsyncProp(t,e){if(this._didAsyncInputValueChange(t,e)){if("string"==typeof e){var n;const i=null===(n=this.layer)||void 0===n?void 0:n.props.fetch;i&&(e=i(e,{propName:t,layer:this.layer}))}if(e instanceof Promise)return void this._watchPromise(t,e);if(fE(e))return void this._resolveAsyncIterable(t,e);this._setPropValue(t,e)}}_didAsyncInputValueChange(t,e){const n=this.asyncProps[t];return e!==n.resolvedValue&&e!==n.lastValue&&(n.lastValue=e,!0)}_setPropValue(t,e){const n=this.asyncProps[t];e=this._postProcessValue(n,e),n.resolvedValue=e,n.pendingLoadCount++,n.resolvedLoadCount=n.pendingLoadCount}_setAsyncPropValue(t,e,n){const i=this.asyncProps[t];i&&n>=i.resolvedLoadCount&&void 0!==e&&(this.freezeAsyncOldProps(),i.resolvedValue=e,i.resolvedLoadCount=n,this.onAsyncPropUpdated(t,e))}_watchPromise(t,e){const n=this.asyncProps[t];n.pendingLoadCount++;const i=n.pendingLoadCount;e.then(e=>{var r;e=this._postProcessValue(n,e),this._setAsyncPropValue(t,e,i);const s=null===(r=this.layer)||void 0===r?void 0:r.props.onDataLoad;"data"===t&&s&&s(e,{propName:t,layer:this.layer})}).catch(e=>{var n;null===(n=this.layer)||void 0===n||n.raiseError(e,"loading ".concat(t," of ").concat(this.layer))})}_resolveAsyncIterable(t,e){var n=this;return gS(function*(){var i;"data"!==t&&n._setPropValue(t,e);const r=n.asyncProps[t];r.pendingLoadCount++;const s=r.pendingLoadCount;let o=[],a=0;var l,c=!0,u=!1;try{for(var h,d,p=fk(e);c=(h=yield p.next()).done,d=yield h.value,!c;c=!0){const e=d,{dataTransform:i}=n.component?n.component.props:{};o=i?i(e,o):o.concat(e),Object.defineProperty(o,"__diff",{enumerable:!1,value:[{startRow:a,endRow:o.length}]}),a=o.length,n._setAsyncPropValue(t,o,s)}}catch(g){u=!0,l=g}finally{try{!c&&null!=p.return&&(yield p.return())}finally{if(u)throw l}}const f=null===(i=n.layer)||void 0===i?void 0:i.props.onDataLoad;f&&f(o,{propName:t,layer:n.layer})})()}_postProcessValue(t,e){const n=t.type;return n&&(n.release&&n.release(t.resolvedValue,n,this.component),n.transform)?n.transform(e,n,this.component):e}_createAsyncPropData(t,e){if(!this.asyncProps[t]){const n=this.component&&this.component.constructor._propTypes;this.asyncProps[t]={type:n&&n[t],lastValue:null,resolvedValue:e,pendingLoadCount:0,resolvedLoadCount:0}}}}const{ASYNC_ORIGINAL:_k,ASYNC_RESOLVED:wk,ASYNC_DEFAULTS:xk}=NO,Sk={};let Ek=0,Ck=(()=>{class t{constructor(){this.props=ck.apply(this,arguments),this.id=this.props.id,this.count=Ek++,this.lifecycle="Awaiting state",this.parent=null,this.context=null,this.state=null,this.internalState=null,Object.seal(this)}clone(t){const{props:e}=this,n={};for(const i in e[xk])i in e[wk]?n[i]=e[wk][i]:i in e[_k]&&(n[i]=e[_k][i]);return new this.constructor(wt(wt(wt({},e),n),t))}get stats(){return this.internalState.stats}_initState(){this.internalState=new vk({})}}return t.componentName="Component",t.defaultProps=Sk,t})();class Ok extends vk{constructor({attributeManager:t,layer:e}){super(e),this.attributeManager=t,this.model=null,this.needsRedraw=!0,this.subLayers=null,this.usesPickingColorCache=!1}get layer(){return this.component}set layer(t){this.component=t}}const Tk=t=>"function"==typeof t,kk=t=>null!==t&&"object"==typeof t,Ak=t=>kk(t)&&t.constructor==={}.constructor,Pk=t=>t&&"function"==typeof t[Symbol.iterator],Mk=t=>t&&"function"==typeof t[Symbol.asyncIterator],Ik=t=>"undefined"!=typeof Response&&t instanceof Response||t&&t.arrayBuffer&&t.text&&t.json,Dk=t=>"undefined"!=typeof Blob&&t instanceof Blob,Rk=t=>(t=>"undefined"!=typeof ReadableStream&&t instanceof ReadableStream||kk(t)&&Tk(t.tee)&&Tk(t.cancel)&&Tk(t.getReader))(t)||(t=>kk(t)&&Tk(t.read)&&Tk(t.pipe)&&(t=>"boolean"==typeof t)(t.readable))(t);function Nk(t,e){if(!t)throw new Error(e||"loader assertion failed.")}function Lk(t){var e;return!!t&&(Array.isArray(t)&&(t=t[0]),Array.isArray(null===(e=t)||void 0===e?void 0:e.extensions))}function jk(t){var e,n;let i;return Nk(t,"null loader"),Nk(Lk(t),"invalid loader"),Array.isArray(t)&&(i=t[1],t=ii(wt({},t=t[0]),{options:wt(wt({},t.options),i)})),(null!==(e=t)&&void 0!==e&&e.parseTextSync||null!==(n=t)&&void 0!==n&&n.parseText)&&(t.text=!0),t.text||(t.binary=!0),t}const Fk={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},Bk=Fk.global||Fk.self||Fk.window||{},Vk="object"!=typeof process||"[object process]"!==String(process)||process.browser,zk="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version);zk&&parseFloat(zk[1]);const Uk={};function Hk(t){for(const e in Uk)t.startsWith(e)&&(t=t.replace(e,Uk[e]));return!t.startsWith("http://")&&!t.startsWith("https://")&&(t=`${t}`),t}const $k=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,Gk=/^([-\w.]+\/[-\w.+]+)/;function Wk(t){const e=Gk.exec(t);return e?e[1]:t}function qk(t){const e=$k.exec(t);return e?e[1]:""}const Xk=/\?.*/;function Yk(t){if(Ik(t)){const e=Qk(t.url||"");return{url:e,type:Wk(t.headers.get("content-type")||"")||qk(e)}}return Dk(t)?{url:Qk(t.name||""),type:t.type||""}:"string"==typeof t?{url:Qk(t),type:qk(t)}:{url:"",type:""}}function Kk(t){return Ik(t)?t.headers["content-length"]||-1:Dk(t)?t.size:"string"==typeof t?t.length:t instanceof ArrayBuffer||ArrayBuffer.isView(t)?t.byteLength:-1}function Qk(t){return t.replace(Xk,"")}function Zk(t){return Jk.apply(this,arguments)}function Jk(){return(Jk=gS(function*(t){if(Ik(t))return t;const e={},n=Kk(t);n>=0&&(e["content-length"]=String(n));const{url:i,type:r}=Yk(t);r&&(e["content-type"]=r);const s=yield rA(t);s&&(e["x-first-bytes"]=s),"string"==typeof t&&(t=(new TextEncoder).encode(t));const o=new Response(t,{headers:e});return Object.defineProperty(o,"url",{value:i}),o})).apply(this,arguments)}function tA(t){return eA.apply(this,arguments)}function eA(){return(eA=gS(function*(t){if(!t.ok){const e=yield nA(t);throw new Error(e)}})).apply(this,arguments)}function nA(t){return iA.apply(this,arguments)}function iA(){return(iA=gS(function*(t){let e=`Failed to fetch resource ${t.url} (${t.status}): `;try{const n=t.headers.get("Content-Type");let i=t.statusText;n.includes("application/json")&&(i+=` ${yield t.text()}`),e+=i,e=e.length>60?`${e.slice(60)}...`:e}catch(n){}return e})).apply(this,arguments)}function rA(t){return sA.apply(this,arguments)}function sA(){return(sA=gS(function*(t){if("string"==typeof t)return`data:,${t.slice(0,5)}`;if(t instanceof Blob){const e=t.slice(0,5);return yield new Promise(t=>{const n=new FileReader;n.onload=e=>{var n;return t(null==e||null===(n=e.target)||void 0===n?void 0:n.result)},n.readAsDataURL(e)})}return t instanceof ArrayBuffer?`data:base64,${oA(t.slice(0,5))}`:null})).apply(this,arguments)}function oA(t){let e="";const n=new Uint8Array(t);for(let i=0;i{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}}const dA={fetch:null,mimeType:void 0,nothrow:!1,log:new class{constructor(){cA(this,"console",void 0),this.console=console}log(...t){return this.console.log.bind(this.console,...t)}info(...t){return this.console.info.bind(this.console,...t)}warn(...t){return this.console.warn.bind(this.console,...t)}error(...t){return this.console.error.bind(this.console,...t)}},CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},pA={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function fA(){Bk.loaders=Bk.loaders||{};const{loaders:t}=Bk;return t._state=t._state||{},t._state}const gA=()=>{const t=fA();return t.globalOptions=t.globalOptions||wt({},dA),t.globalOptions};function mA(t,e,n,i){return n=n||[],function(t,e){yA(t,null,dA,pA,e);for(const n of e)yA(t&&t[n.id]||{},n.id,n.options&&n.options[n.id]||{},n.deprecatedOptions&&n.deprecatedOptions[n.id]||{},e)}(t,n=Array.isArray(n)?n:[n]),function(t,e,n){const i=wt({},t.options||{});return function(t,e){e&&!("baseUri"in t)&&(t.baseUri=e)}(i,n),null===i.log&&(i.log=new hA),_A(i,gA()),_A(i,e),i}(e,t,i)}function bA(t,e){const n=gA(),i=t||n;return"function"==typeof i.fetch?i.fetch:kk(i.fetch)?t=>aA(t,i):null!=e&&e.fetch?null==e?void 0:e.fetch:aA}function yA(t,e,n,i,r){const s=e||"Top level",o=e?`${e}.`:"";for(const a in t){const l=!e&&kk(t[a]),c="baseUri"===a&&!e,u="workerUrl"===a&&e;if(!(a in n)&&!c&&!u)if(a in i)uA.warn(`${s} loader option '${o}${a}' no longer supported, use '${i[a]}'`)();else if(!l){const t=vA(a,r);uA.warn(`${s} loader option '${o}${a}' not recognized. ${t}`)()}}}function vA(t,e){const n=t.toLowerCase();let i="";for(const r of e)for(const e in r.options){if(t===e)return`Did you mean '${r.id}.${e}'?`;const s=e.toLowerCase();(n.startsWith(s)||s.startsWith(n))&&(i=i||`Did you mean '${r.id}.${e}'?`)}return i}function _A(t,e){for(const n in e)n in e&&(t[n]=Ak(e[n])&&Ak(t[n])?wt(wt({},t[n]),e[n]):e[n])}function wA(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}function xA(t,e="3.0.12"){return wA(t,"no worker provided"),!(!e||!t.version)}const SA={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},EA=SA.global||SA.self||SA.window||{},CA="object"!=typeof process||"[object process]"!==String(process)||process.browser,OA="function"==typeof importScripts,TA="undefined"!=typeof window&&void 0!==window.orientation,kA="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),AA=(kA&&parseFloat(kA[1]),new Map);function PA(t){const e=new Blob([t],{type:"application/javascript"});return URL.createObjectURL(e)}function MA(t,e=!0,n){const i=n||new Set;if(t)if(IA(t))i.add(t);else if(IA(t.buffer))i.add(t.buffer);else if(!ArrayBuffer.isView(t)&&e&&"object"==typeof t)for(const r in t)MA(t[r],e,i);return void 0===n?Array.from(i):[]}function IA(t){return!!t&&(t instanceof ArrayBuffer||"undefined"!=typeof MessagePort&&t instanceof MessagePort||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas)}const DA=()=>{};class RA{static isSupported(){return"undefined"!=typeof Worker}constructor(t){cA(this,"name",void 0),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"terminated",!1),cA(this,"worker",void 0),cA(this,"onMessage",void 0),cA(this,"onError",void 0),cA(this,"_loadableURL","");const{name:e,source:n,url:i}=t;wA(n||i),this.name=e,this.source=n,this.url=i,this.onMessage=DA,this.onError=t=>console.log(t),this.worker=this._createBrowserWorker()}destroy(){this.onMessage=DA,this.onError=DA,this.worker.terminate(),this.terminated=!0}get isRunning(){return Boolean(this.onMessage)}postMessage(t,e){e=e||MA(t),this.worker.postMessage(t,e)}_getErrorFromErrorEvent(t){let e="Failed to load ";return e+=`worker ${this.name}. `,t.message&&(e+=`${t.message} in `),t.lineno&&(e+=`:${t.lineno}:${t.colno}`),new Error(e)}_createBrowserWorker(){this._loadableURL=function(t){wA(t.source&&!t.url||!t.source&&t.url);let e=AA.get(t.source||t.url);return e||(t.url&&(e=function(t){return t.startsWith("http")?PA(function(t){return`try {\n importScripts('${t}');\n} catch (error) {\n console.error(error);\n throw error;\n}`}(t)):t}(t.url),AA.set(t.url,e)),t.source&&(e=PA(t.source),AA.set(t.source,e))),wA(e),e}({source:this.source,url:this.url});const t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=t=>{t.data?this.onMessage(t.data):this.onError(new Error("No data received"))},t.onerror=t=>{this.onError(this._getErrorFromErrorEvent(t)),this.terminated=!0},t.onmessageerror=t=>console.error(t),t}}class NA{constructor(t,e){cA(this,"name",void 0),cA(this,"workerThread",void 0),cA(this,"isRunning",void 0),cA(this,"result",void 0),cA(this,"_resolve",void 0),cA(this,"_reject",void 0),this.name=t,this.workerThread=e,this.isRunning=!0,this._resolve=()=>{},this._reject=()=>{},this.result=new Promise((t,e)=>{this._resolve=t,this._reject=e})}postMessage(t,e){this.workerThread.postMessage({source:"loaders.gl",type:t,payload:e})}done(t){wA(this.isRunning),this.isRunning=!1,this._resolve(t)}error(t){wA(this.isRunning),this.isRunning=!1,this._reject(t)}}class LA{constructor(t){cA(this,"name","unnamed"),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"maxConcurrency",1),cA(this,"maxMobileConcurrency",1),cA(this,"onDebug",()=>{}),cA(this,"reuseWorkers",!0),cA(this,"props",{}),cA(this,"jobQueue",[]),cA(this,"idleQueue",[]),cA(this,"count",0),cA(this,"isDestroyed",!1),this.source=t.source,this.url=t.url,this.setProps(t)}destroy(){this.idleQueue.forEach(t=>t.destroy()),this.isDestroyed=!0}setProps(t){this.props=wt(wt({},this.props),t),void 0!==t.name&&(this.name=t.name),void 0!==t.maxConcurrency&&(this.maxConcurrency=t.maxConcurrency),void 0!==t.maxMobileConcurrency&&(this.maxMobileConcurrency=t.maxMobileConcurrency),void 0!==t.reuseWorkers&&(this.reuseWorkers=t.reuseWorkers),void 0!==t.onDebug&&(this.onDebug=t.onDebug)}startJob(t,e=((t,e,n)=>t.done(n)),n=((t,e)=>t.error(e))){var i=this;return gS(function*(){const r=new Promise(r=>(i.jobQueue.push({name:t,onMessage:e,onError:n,onStart:r}),i));return i._startQueuedJob(),yield r})()}_startQueuedJob(){var t=this;return gS(function*(){if(!t.jobQueue.length)return;const e=t._getAvailableWorker();if(!e)return;const n=t.jobQueue.shift();if(n){t.onDebug({message:"Starting job",name:n.name,workerThread:e,backlog:t.jobQueue.length});const i=new NA(n.name,e);e.onMessage=t=>n.onMessage(i,t.type,t.payload),e.onError=t=>n.onError(i,t),n.onStart(i);try{yield i.result}finally{t.returnWorkerToQueue(e)}}})()}returnWorkerToQueue(t){this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(t.destroy(),this.count--):this.idleQueue.push(t),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count{},reuseWorkers:!0};class FA{static isSupported(){return RA.isSupported()}static getWorkerFarm(t={}){return FA._workerFarm=FA._workerFarm||new FA({}),FA._workerFarm.setProps(t),FA._workerFarm}constructor(t){cA(this,"props",void 0),cA(this,"workerPools",new Map),this.props=wt({},jA),this.setProps(t),this.workerPools=new Map}destroy(){for(const t of this.workerPools.values())t.destroy()}setProps(t){this.props=wt(wt({},this.props),t);for(const e of this.workerPools.values())e.setProps(this._getWorkerPoolProps())}getWorkerPool(t){const{name:e,source:n,url:i}=t;let r=this.workerPools.get(e);return r||(r=new LA({name:e,source:n,url:i}),r.setProps(this._getWorkerPoolProps()),this.workerPools.set(e,r)),r}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}}function BA(t,e={}){const n=`${t.id}-worker.js`;let i=(e[t.id]||{}).workerUrl;if("test"===e._workerType&&(i=`modules/${t.module}/dist/${n}`),!i){let e=t.version;"latest"===e&&(e="latest"),i=`https://unpkg.com/@loaders.gl/${t.module}${e?`@${e}`:""}/dist/${n}`}return wA(i),i}function VA(t,e){return!!FA.isSupported()&&t.worker&&(null==e?void 0:e.worker)}function zA(t,e,n,i,r){return UA.apply(this,arguments)}function UA(){return(UA=gS(function*(t,e,n,i,r){const s=t.id,o=BA(t,n),a=FA.getWorkerFarm(n).getWorkerPool({name:s,url:o});n=JSON.parse(JSON.stringify(n));const l=yield a.startJob("process-on-worker",HA.bind(null,r));return l.postMessage("process",{input:e,options:n}),yield(yield l.result).result})).apply(this,arguments)}function HA(t,e,n,i){return $A.apply(this,arguments)}function $A(){return($A=gS(function*(t,e,n,i){switch(n){case"done":e.done(i);break;case"error":e.error(i.error);break;case"process":const{id:s,input:o,options:a}=i;try{const n=yield t(o,a);e.postMessage("done",{id:s,result:n})}catch(r){const t=r instanceof Error?r.message:"unknown error";e.postMessage("error",{id:s,error:t})}break;default:console.warn(`parse-with-worker unknown message ${n}`)}})).apply(this,arguments)}cA(FA,"_workerFarm",void 0);var GA=n(9521);function WA(t){if(function(t){return t&&"object"==typeof t&&t.isBuffer}(t)&&(t=function(t){return GA.toArrayBuffer?GA.toArrayBuffer(t):t}(t)),t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t))return 0===t.byteOffset&&t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);if("string"==typeof t){const e=t;return(new TextEncoder).encode(e).buffer}if(t&&"object"==typeof t&&t._toArrayBuffer)return t._toArrayBuffer();throw new Error("toArrayBuffer")}function qA(...t){const e=t.map(t=>t instanceof ArrayBuffer?new Uint8Array(t):t),n=e.reduce((t,e)=>t+e.byteLength,0),i=new Uint8Array(n);let r=0;for(const s of e)i.set(s,r),r+=s.byteLength;return i.buffer}function XA(t,e,n){const i=void 0!==n?new Uint8Array(t).subarray(e,e+n):new Uint8Array(t).subarray(e);return new Uint8Array(i).buffer}function YA(t){return KA.apply(this,arguments)}function KA(){return(KA=gS(function*(t){const e=[];var n,i=!0,r=!1;try{for(var s,o,a=fk(t);i=(s=yield a.next()).done,o=yield s.value,!i;i=!0)e.push(o)}catch(l){r=!0,n=l}finally{try{!i&&null!=a.return&&(yield a.return())}finally{if(r)throw n}}return qA(...e)})).apply(this,arguments)}const QA=262144;function ZA(t){this.wrapped=t}function JA(t){return new ZA(t)}function tP(t){var e,n;function i(e,n){try{var s=t[e](n),o=s.value,a=o instanceof ZA;Promise.resolve(a?o.wrapped:o).then(function(t){a?i("return"===e?"return":"next",t):r(s.done?"return":"normal",t)},function(t){i("throw",t)})}catch(l){r("throw",l)}}function r(t,r){switch(t){case"return":e.resolve({value:r,done:!0});break;case"throw":e.reject(r);break;default:e.resolve({value:r,done:!1})}(e=e.next)?i(e.key,e.arg):n=null}this._invoke=function(t,r){return new Promise(function(s,o){var a={key:t,arg:r,resolve:s,reject:o,next:null};n?n=n.next=a:(e=n=a,i(t,r))})},"function"!=typeof t.return&&(this.return=void 0)}function eP(t){return function(){return new tP(t.apply(this,arguments))}}function nP(){return(nP=eP(function*(t,e){const n=(null==e?void 0:e.chunkSize)||1048576;let i=0;for(;it&&"object"==typeof t&&t.isBuffer)(t)&&(t=t.buffer),t instanceof ArrayBuffer){const n=t;return e.text&&!e.binary?new TextDecoder("utf8").decode(n):n}if(ArrayBuffer.isView(t)){if(e.text&&!e.binary)return new TextDecoder("utf8").decode(t);let n=t.buffer;const i=t.byteLength||t.length;return(0!==t.byteOffset||i!==n.byteLength)&&(n=n.slice(t.byteOffset,t.byteOffset+i)),n}throw new Error(aP)}function cP(t,e,n){return uP.apply(this,arguments)}function uP(){return(uP=gS(function*(t,e,n){const i=t instanceof ArrayBuffer||ArrayBuffer.isView(t);if("string"==typeof t||i)return lP(t,e);if(Dk(t)&&(t=yield Zk(t)),Ik(t)){const n=t;return yield tA(n),e.binary?yield n.arrayBuffer():yield n.text()}if(Rk(t)&&(t=oP(t,n)),Pk(t)||Mk(t))return YA(t);throw new Error(aP)})).apply(this,arguments)}function hP(t,e,n=null){if(n)return n;const i=wt({fetch:bA(e,t)},t);return Array.isArray(i.loaders)||(i.loaders=null),i}function dP(t,e){if(!e&&t&&!Array.isArray(t))return t;let n;if(t&&(n=Array.isArray(t)?t:[t]),e&&e.loaders){const t=Array.isArray(e.loaders)?e.loaders:[e.loaders];n=n?[...n,...t]:t}return n&&n.length?n:null}const pP=()=>{const t=fA();return t.loaderRegistry=t.loaderRegistry||[],t.loaderRegistry};function fP(t){const e=pP();t=Array.isArray(t)?t:[t];for(const n of t){const t=jk(n);e.find(e=>t===e)||e.unshift(t)}}const gP=/\.([^.]+)$/;function mP(t){return bP.apply(this,arguments)}function bP(){return(bP=gS(function*(t,e=[],n,i){if(!vP(t))return null;let r=yP(t,e,ii(wt({},n),{nothrow:!0}),i);if(r)return r;if(Dk(t)&&(r=yP(t=yield t.slice(0,10).arrayBuffer(),e,n,i)),!(r||null!=n&&n.nothrow))throw new Error(_P(t));return r})).apply(this,arguments)}function yP(t,e=[],n,i){if(!vP(t))return null;if(e&&!Array.isArray(e))return jk(e);let r=[];e&&(r=r.concat(e)),null!=n&&n.ignoreRegisteredLoaders||r.push(...pP()),function(t){for(const e of t)jk(e)}(r);const s=function(t,e,n,i){const{url:r,type:s}=Yk(t),o=r||(null==i?void 0:i.url);let a=null;return null!=n&&n.mimeType&&(a=wP(e,null==n?void 0:n.mimeType)),a=a||function(t,e){const n=e&&gP.exec(e),i=n&&n[1];return i?function(t,e){e=e.toLowerCase();for(const n of t)for(const t of n.extensions)if(t.toLowerCase()===e)return n;return null}(t,i):null}(e,o),a=a||wP(e,s),a=a||function(t,e){if(!e)return null;for(const n of t)if("string"==typeof e){if(xP(e,n))return n}else if(ArrayBuffer.isView(e)){if(SP(e.buffer,e.byteOffset,n))return n}else if(e instanceof ArrayBuffer&&SP(e,0,n))return n;return null}(e,t),a=a||wP(e,null==n?void 0:n.fallbackMimeType),a}(t,r,n,i);if(!(s||null!=n&&n.nothrow))throw new Error(_P(t));return s}function vP(t){return!(t instanceof Response&&204===t.status)}function _P(t){const{url:e,type:n}=Yk(t);let i="No valid loader found";return t&&(i+=` data: "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?EP(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?EP(t,0,e):""}(t)}", contentType: "${n}"`),e&&(i+=` url: ${e}`),i}function wP(t,e){for(const n of t)if(n.mimeTypes&&n.mimeTypes.includes(e)||e===`application/x.${n.id}`)return n;return null}function xP(t,e){return e.testText?e.testText(t):(Array.isArray(e.tests)?e.tests:[e.tests]).some(e=>t.startsWith(e))}function SP(t,e,n){return(Array.isArray(n.tests)?n.tests:[n.tests]).some(i=>function(t,e,n,i){if(i instanceof ArrayBuffer)return function(t,e,n){if(t.byteLength<(n=n||t.byteLength)||e.byteLengtht.equals(e));let RP=new Uint8ClampedArray(0);const NP={data:{type:"data",value:IP,async:!0},dataComparator:null,_dataDiff:{type:"function",value:t=>t&&t.__diff,compare:!1,optional:!0},dataTransform:{type:"function",value:null,compare:!1,optional:!0},onDataLoad:{type:"function",value:null,compare:!1,optional:!0},onError:{type:"function",value:null,compare:!1,optional:!0},fetch:{type:"function",value:(t,{propName:e,layer:n,loaders:i,loadOptions:r,signal:s})=>{const{resourceManager:o}=n.context;var a;r=r||n.getLoadOptions(),i=i||n.props.loaders,s&&(r=ii(wt({},r),{fetch:ii(wt({},null===(a=r)||void 0===a?void 0:a.fetch),{signal:s})}));let l=o.contains(t);return!l&&!r&&(o.add({resourceId:t,data:AP(t,i),persistent:!1}),l=!0),l?o.subscribe({resourceId:t,onChange:t=>n.internalState.reloadAsyncProp(e,t),consumerId:n.id,requestId:e}):AP(t,i,r)},compare:!1},updateTriggers:{},visible:!0,pickable:!1,opacity:{type:"number",min:0,max:1,value:1},onHover:{type:"function",value:null,compare:!1,optional:!0},onClick:{type:"function",value:null,compare:!1,optional:!0},onDragStart:{type:"function",value:null,compare:!1,optional:!0},onDrag:{type:"function",value:null,compare:!1,optional:!0},onDragEnd:{type:"function",value:null,compare:!1,optional:!0},coordinateSystem:Iw.DEFAULT,coordinateOrigin:{type:"array",value:[0,0,0],compare:!0},modelMatrix:{type:"array",value:null,compare:!0,optional:!0},wrapLongitude:!1,positionFormat:"XYZ",colorFormat:"RGBA",parameters:{},transitions:null,extensions:[],loaders:{type:"array",value:[],optional:!0,compare:!0},getPolygonOffset:{type:"function",value:({layerIndex:t})=>[0,100*-t],compare:!1},highlightedObjectIndex:-1,autoHighlight:!1,highlightColor:{type:"accessor",value:[0,0,128,128]}};let LP=(()=>{class t extends Ck{toString(){return"".concat(this.constructor.layerName||this.constructor.name,"({id: '").concat(this.props.id,"'})")}raiseError(t,e){var n,i,r,s;e&&(t.message="".concat(e,": ").concat(t.message)),(null===(n=(i=this.props).onError)||void 0===n?void 0:n.call(i,t))||null===(r=this.context)||void 0===r||null===(s=r.onError)||void 0===s||s.call(r,t,this)}setState(t){this.setChangeFlags({stateChanged:!0}),Object.assign(this.state,t),this.setNeedsRedraw()}setNeedsRedraw(t=!0){this.internalState&&(this.internalState.needsRedraw=t)}setNeedsUpdate(){this.context.layerManager.setNeedsUpdate(String(this)),this.internalState.needsUpdate=!0}getNeedsRedraw(t={clearRedrawFlags:!1}){return this._getNeedsRedraw(t)}needsUpdate(){return this.internalState.needsUpdate||this.hasUniformTransition()||this.shouldUpdateState(this._getUpdateParams())}hasUniformTransition(){return this.internalState.uniformTransitions.active}get isLoaded(){return this.internalState&&!this.internalState.isAsyncPropLoading()}get wrapLongitude(){return this.props.wrapLongitude}isPickable(){return this.props.pickable&&this.props.visible}getModels(){return this.state&&(this.state.models||(this.state.model?[this.state.model]:[]))}getAttributeManager(){return this.internalState&&this.internalState.attributeManager}getCurrentLayer(){return this.internalState&&this.internalState.layer}getLoadOptions(){return this.props.loadOptions}project(t){const{viewport:e}=this.context,n=KT(t,{viewport:e,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem}),[i,r,s]=NT(n,e.pixelProjectionMatrix);return 2===t.length?[i,r]:[i,r,s]}unproject(t){const{viewport:e}=this.context;return e.unproject(t)}projectPosition(t){return function(t,e){const{viewport:n,coordinateSystem:i,coordinateOrigin:r,modelMatrix:s,fromCoordinateSystem:o,fromCoordinateOrigin:a}=function(t){const e=wt({},t);let{coordinateSystem:n}=t;const{viewport:i,coordinateOrigin:r,fromCoordinateSystem:s,fromCoordinateOrigin:o}=t;return n===Iw.DEFAULT&&(n=i.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN),void 0===s&&(e.fromCoordinateSystem=n),void 0===o&&(e.fromCoordinateOrigin=r),e.coordinateSystem=n,e}(e),{geospatialOrigin:l,shaderCoordinateOrigin:c,offsetMode:u}=lT(n,i,r),h=KT(t,{viewport:n,modelMatrix:s,coordinateSystem:o,coordinateOrigin:a,offsetMode:u});u&&function(t,e,n){t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2]}(h,h,n.projectPosition(l||c));return h}(t,{viewport:this.context.viewport,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem})}use64bitPositions(){const{coordinateSystem:t}=this.props;return t===Iw.DEFAULT||t===Iw.LNGLAT||t===Iw.CARTESIAN}onHover(t,e){return!!this.props.onHover&&this.props.onHover(t,e)}onClick(t,e){return!!this.props.onClick&&this.props.onClick(t,e)}nullPickingColor(){return[0,0,0]}encodePickingColor(t,e=[]){return e[0]=t+1&255,e[1]=t+1>>8&255,e[2]=t+1>>8>>8&255,e}decodePickingColor(t){uE(t instanceof Uint8Array);const[e,n,i]=t;return e+256*n+65536*i-1}initializeState(){throw new Error("Layer ".concat(this," has not defined initializeState"))}getShaders(t){for(const e of this.props.extensions)t=GO(t,e.getShaders.call(this,e));return t}shouldUpdateState({changeFlags:t}){return t.propsOrDataChanged}updateState({oldProps:t,props:e,changeFlags:n}){const i=this.getAttributeManager();if(n.dataChanged&&i){const{dataChanged:t}=n;if(Array.isArray(t))for(const e of t)i.invalidateAll(e);else i.invalidateAll()}const r=e.highlightedObjectIndex>=0||e.pickable;if((t.highlightedObjectIndex>=0||t.pickable)!==r&&i){const{pickingColors:t,instancePickingColors:e}=i.attributes,n=t||e;n&&(r&&n.constant&&(n.constant=!1,i.invalidate(n.id)),!n.value&&!r&&(n.constant=!0,n.value=[0,0,0]))}}finalizeState(){for(const e of this.getModels())e.delete();const t=this.getAttributeManager();t&&t.finalize(),this.context.resourceManager.unsubscribe({consumerId:this.id}),this.internalState.uniformTransitions.clear(),this.internalState.finalize()}draw(t){for(const e of this.getModels())e.draw(t)}getPickingInfo({info:t}){const{index:e}=t;return e>=0&&Array.isArray(this.props.data)&&(t.object=this.props.data[e]),t}activateViewport(t){const e=this.internalState.viewport;this.internalState.viewport=t,(!e||!DP({oldViewport:e,viewport:t}))&&(this.setChangeFlags({viewportChanged:!0}),this.isComposite?this.needsUpdate()&&this.setNeedsUpdate():this._update())}invalidateAttribute(t="all",e=""){const n=this.getAttributeManager();!n||("all"===t?n.invalidateAll():n.invalidate(t))}updateAttributes(t){for(const e of this.getModels())this._setModelAttributes(e,t)}_updateAttributes(t){const e=this.getAttributeManager();if(!e)return;const n=this.getNumInstances(t),i=this.getStartIndices(t);e.update({data:t.data,numInstances:n,startIndices:i,props:t,transitions:t.transitions,buffers:t.data.attributes,context:this,ignoreUnknownAttributes:!0});const r=e.getChangedAttributes({clearChangedFlags:!0});this.updateAttributes(r)}_updateAttributeTransition(){const t=this.getAttributeManager();t&&t.updateTransition()}_updateUniformTransition(){const{uniformTransitions:t}=this.internalState;if(t.active){const e=t.update(),n=Object.create(this.props);for(const t in e)Object.defineProperty(n,t,{value:e[t]});return n}return this.props}calculateInstancePickingColors(t,{numInstances:e}){if(t.constant)return;const n=Math.floor(RP.length/3);if(this.internalState.usesPickingColorCache=!0,nMP&&Mw.warn("Layer has too many data objects. Picking might not be able to distinguish all objects.")(),RP=AS.allocate(RP,e,{size:3,copy:!0,maxCount:Math.max(e,MP)});const t=Math.floor(RP.length/3),i=[];for(let e=n;e{const i={moduleParameters:t,uniforms:e,parameters:n,context:this.context};for(const t of this.props.extensions)t.draw.call(this,i,t);this.draw(i)})}finally{this.props=i}}getChangeFlags(){return this.internalState.changeFlags}setChangeFlags(t){const{changeFlags:e}=this.internalState;for(const i in t)if(t[i]){let n=!1;switch(i){case"dataChanged":Array.isArray(e[i])&&(e[i]=Array.isArray(t[i])?e[i].concat(t[i]):t[i],n=!0);default:e[i]||(e[i]=t[i],n=!0)}n&&PE("layer.changeFlag",this,i,t)}const n=e.dataChanged||e.updateTriggersChanged||e.propsChanged||e.extensionsChanged;e.propsOrDataChanged=n,e.somethingChanged=n||t.viewportChanged||t.stateChanged}clearChangeFlags(){this.internalState.changeFlags={dataChanged:!1,propsChanged:!1,updateTriggersChanged:!1,viewportChanged:!1,stateChanged:!1,extensionsChanged:!1,propsOrDataChanged:!1,somethingChanged:!1}}diffProps(t,e){const n=function(t,e){const n=FO({newProps:t,oldProps:e,propTypes:UO(t),ignoreProps:{data:null,updateTriggers:null,extensions:null,transitions:null}}),i=function(t,e){if(null===e)return"oldProps is null, initial diff";let n=null;const{dataComparator:i,_dataDiff:r}=t;return i?i(t.data,e.data)||(n="Data comparator detected a change"):t.data!==e.data&&(n="A new data container was supplied"),n&&r&&(n=r(t.data,e.data)||n),n}(t,e);let r=!1;return i||(r=function(t,e){if(null===e)return"oldProps is null, initial diff";if("all"in t.updateTriggers&&zO(t,e,"all"))return{all:!0};const n={};let i=!1;for(const r in t.updateTriggers)"all"!==r&&zO(t,e,r)&&(n[r]=!0,i=n);return i}(t,e)),{dataChanged:i,propsChanged:n,updateTriggersChanged:r,extensionsChanged:VO(t,e),transitionsChanged:jO(t,e)}}(t,e);if(n.updateTriggersChanged)for(const i in n.updateTriggersChanged)n.updateTriggersChanged[i]&&this.invalidateAttribute(i);if(n.transitionsChanged)for(const i in n.transitionsChanged)this.internalState.uniformTransitions.add(i,e[i],t[i],t.transitions[i]);return this.setChangeFlags(n)}validateProps(){!function(t){const e=UO(t);for(const n in e){const i=e[n],{validate:r}=i;if(r&&!r(t[n],i))throw new Error("Invalid prop ".concat(n,": ").concat(t[n]))}}(this.props)}setModuleParameters(t){for(const e of this.getModels())e.updateModuleSettings(t)}updateAutoHighlight(t){this.props.autoHighlight&&this._updateAutoHighlight(t)}_updateAutoHighlight(t){const e={pickingSelectedColor:t.picked?t.color:null},{highlightColor:n}=this.props;t.picked&&"function"==typeof n&&(e.pickingHighlightColor=n(t)),this.setModuleParameters(e),this.setNeedsRedraw()}_updateModules({props:t,oldProps:e},n){const{autoHighlight:i,highlightedObjectIndex:r,highlightColor:s}=t;if(n||e.autoHighlight!==i||e.highlightedObjectIndex!==r||e.highlightColor!==s){const t={};i||(t.pickingSelectedColor=null),Array.isArray(s)&&(t.pickingHighlightColor=s),Number.isInteger(r)&&(t.pickingSelectedColor=r>=0?this.encodePickingColor(r):null),this.setModuleParameters(t)}}_getUpdateParams(){return{props:this.props,oldProps:this.internalState.getOldProps(),context:this.context,changeFlags:this.internalState.changeFlags}}_getNeedsRedraw(t){if(!this.internalState)return!1;let e=!1;e=e||this.internalState.needsRedraw&&this.id,this.internalState.needsRedraw=this.internalState.needsRedraw&&!t.clearRedrawFlags;const n=this.getAttributeManager(),i=n&&n.getNeedsRedraw(t);return e=e||i,e}_getAttributeManager(){return new PO(this.context.gl,{id:this.props.id,stats:this.context.stats,timeline:this.context.timeline})}_initState(){uE(!this.internalState&&!this.state),uE(isFinite(this.props.coordinateSystem));const t=this._getAttributeManager();t&&t.addInstanced({instancePickingColors:{type:5121,size:3,noAlloc:!0,update:this.calculateInstancePickingColors}}),this.internalState=new Ok({attributeManager:t,layer:this}),this.clearChangeFlags(),this.state={},Object.defineProperty(this.state,"attributeManager",{get:()=>(Mw.deprecated("layer.state.attributeManager","layer.getAttributeManager()"),t)}),this.internalState.layer=this,this.internalState.uniformTransitions=new RO(this.context.timeline),this.internalState.onAsyncPropUpdated=this._onAsyncPropUpdated.bind(this),this.internalState.setAsyncProps(this.props)}_transferState(t){PE("layer.matched",this,this===t);const{state:e,internalState:n}=t;this!==t&&(this.internalState=n,this.internalState.layer=this,this.state=e,this.internalState.setAsyncProps(this.props),this.diffProps(this.props,this.internalState.getOldProps()))}_onAsyncPropUpdated(){this.diffProps(this.props,this.internalState.getOldProps()),this.setNeedsUpdate()}}return t.layerName="Layer",t.defaultProps=NP,t})(),jP=(()=>{class t extends LP{get isComposite(){return!0}get isLoaded(){return super.isLoaded&&this.getSubLayers().every(t=>t.isLoaded)}getSubLayers(){return this.internalState&&this.internalState.subLayers||[]}initializeState(){}setState(t){super.setState(t),this.setNeedsUpdate()}getPickingInfo({info:t}){const{object:e}=t;return e&&e.__source&&e.__source.parent&&e.__source.parent.id===this.id&&(t.object=e.__source.object,t.index=e.__source.index),t}renderLayers(){return null}filterSubLayer(t){return!0}shouldRenderSubLayer(t,e){return e&&e.length}getSubLayerClass(t,e){const{_subLayerProps:n}=this.props;return n&&n[t]&&n[t].type||e}getSubLayerRow(t,e,n){return t.__source={parent:this,object:e,index:n},t}getSubLayerAccessor(t){if("function"==typeof t){const e={data:this.props.data,target:[]};return(n,i)=>n&&n.__source?(e.index=n.__source.index,t(n.__source.object,e)):t(n,i)}return t}getSubLayerProps(t={}){const{opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g,_subLayerProps:m}=this.props,b={opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g},y=m&&m[t.id],v=y&&y.updateTriggers,_=t.id||"sublayer";if(y){const e=this.constructor._propTypes,n=t.type?t.type._propTypes:{};for(const t in y){const i=n[t]||e[t];i&&"accessor"===i.type&&(y[t]=this.getSubLayerAccessor(y[t]))}}Object.assign(b,t,y),b.id="".concat(this.props.id,"-").concat(_),b.updateTriggers=wt(wt({all:this.props.updateTriggers.all},t.updateTriggers),v);for(const w of f){const t=w.getSubLayerProps.call(this,w);t&&Object.assign(b,t,{updateTriggers:Object.assign(b.updateTriggers,t.updateTriggers)})}return b}_updateAutoHighlight(t){for(const e of this.getSubLayers())e.updateAutoHighlight(t)}_getAttributeManager(){return null}_renderLayers(){let{subLayers:t}=this.internalState;const e=!t||this.needsUpdate();e&&(t=this.renderLayers(),t=gE(t,Boolean),this.internalState.subLayers=t),PE("compositeLayer.renderLayers",this,e,t);for(const n of t)n.parent=this}}return t.layerName="CompositeLayer",t})();const FP=/([0-9]+\.?[0-9]*)(%|px)/;function BP(t){switch(typeof t){case"number":return{position:t,relative:!1};case"string":const e=t.match(FP);if(e&&e.length>=3){const t="%"===e[2],n=parseFloat(e[1]);return{position:t?n/100:n,relative:t}}default:throw new Error("Could not parse position string ".concat(t))}}function VP(t,e){return t.relative?Math.round(t.position*e):t.position}function zP(t,e){if(t===e)return!0;if(!t||!e)return!1;for(const n in t){const i=t[n],r=e[n];if(!(i===r||Array.isArray(i)&&Array.isArray(r)&&zP(i,r)))return!1}return!0}class UP{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r="100%",height:s="100%",projectionMatrix:o=null,fovy:a=50,near:l=.1,far:c=1e3,modelMatrix:u=null,viewportInstance:h=null,type:d=WT}=t;uE(!h||h instanceof WT),this.viewportInstance=h,this.id=e||this.constructor.displayName||"view",this.type=d,this.props=ii(wt({},t),{id:this.id,projectionMatrix:o,fovy:a,near:l,far:c,modelMatrix:u}),this._parseDimensions({x:n,y:i,width:r,height:s}),this.equals=this.equals.bind(this),Object.seal(this)}equals(t){return this===t||(this.viewportInstance?t.viewportInstance&&this.viewportInstance.equals(t.viewportInstance):zP(this.props,t.props))}makeViewport({width:t,height:e,viewState:n}){if(this.viewportInstance)return this.viewportInstance;n=this.filterViewState(n);const i=this.getDimensions({width:t,height:e});return this._getViewport(n,i)}getViewStateId(){switch(typeof this.props.viewState){case"string":return this.props.viewState;case"object":return this.props.viewState&&this.props.viewState.id;default:return this.id}}filterViewState(t){if(this.props.viewState&&"object"==typeof this.props.viewState){if(!this.props.viewState.id)return this.props.viewState;const e=wt({},t);for(const t in this.props.viewState)"id"!==t&&(e[t]=this.props.viewState[t]);return e}return t}getDimensions({width:t,height:e}){return{x:VP(this._x,t),y:VP(this._y,e),width:VP(this._width,t),height:VP(this._height,e)}}_getControllerProps(t){let e=this.props.controller;return e?!0===e?t:("function"==typeof e&&(e={type:e}),wt(wt({},t),e)):null}_getViewport(t,e){const{type:n}=this;return new n(wt(wt(wt({},t),this.props),e))}_parseDimensions({x:t,y:e,width:n,height:i}){this._x=BP(t),this._y=BP(e),this._width=BP(n),this._height=BP(i)}}const HP=()=>{},$P={transitionEasing:t=>t,transitionInterruption:1,onTransitionStart:HP,onTransitionInterrupt:HP,onTransitionEnd:HP};class GP{constructor(t,e={}){this.ControllerState=t,this.props=wt(wt({},$P),e),this.propsInTransition=null,this.transition=new OO(e.timeline),this.onViewStateChange=e.onViewStateChange||HP,this.onStateChange=e.onStateChange||HP,this._onTransitionUpdate=this._onTransitionUpdate.bind(this)}finalize(){this.transition.cancel()}getViewportInTransition(){return this.propsInTransition}processViewStateChange(t){let e=!1;const n=this.props;if(t=wt(wt({},$P),t),this.props=t,this._shouldIgnoreViewportChange(n,t))return e;if(this._isTransitionEnabled(t)){const{interruption:i,endProps:r}=this.transition.settings,s=wt(wt({},n),2===i?r:this.propsInTransition||n);this._triggerTransition(s,t),e=!0}else this.transition.cancel();return e}updateTransition(){this.transition.update()}_isTransitionEnabled(t){const{transitionDuration:e,transitionInterpolator:n}=t;return(e>0||"auto"===e)&&Boolean(n)}_isUpdateDueToCurrentTransition(t){return!!this.transition.inProgress&&this.transition.settings.interpolator.arePropsEqual(t,this.propsInTransition)}_shouldIgnoreViewportChange(t,e){return this.transition.inProgress?3===this.transition.settings.interruption||this._isUpdateDueToCurrentTransition(e):!this._isTransitionEnabled(e)||e.transitionInterpolator.arePropsEqual(t,e)}_triggerTransition(t,e){const n=new this.ControllerState(t),i=new this.ControllerState(e).shortestPathFrom(n),{transitionInterpolator:r}=e,s=r.getDuration?r.getDuration(t,e):e.transitionDuration;if(0===s)return;const o=e.transitionInterpolator.initializeProps(t,i);this.propsInTransition={},this.duration=s,this.transition.start({duration:s,easing:e.transitionEasing,interpolator:e.transitionInterpolator,interruption:e.transitionInterruption,startProps:o.start,endProps:o.end,onStart:e.onTransitionStart,onUpdate:this._onTransitionUpdate,onInterrupt:this._onTransitionEnd(e.onTransitionInterrupt),onEnd:this._onTransitionEnd(e.onTransitionEnd)}),this.onStateChange({inTransition:!0}),this.updateTransition()}_onTransitionEnd(t){return e=>{this.propsInTransition=null,this.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1}),t(e)}}_onTransitionUpdate(t){const{time:e,settings:{interpolator:n,startProps:i,endProps:r,duration:s,easing:o}}=t,a=o(e/s),l=n.interpolateProps(i,r,a);this.propsInTransition=new this.ControllerState(wt(wt({},this.props),l)).getViewportProps(),this.onViewStateChange({viewState:this.propsInTransition,oldViewState:this.props})}}const WP=["longitude","latitude","zoom","bearing","pitch"],qP=["longitude","latitude","zoom"];class XP extends class{constructor(t={}){Array.isArray(t)&&(t={compare:t,extract:t,required:t});const{compare:e,extract:n,required:i}=t;this._propsToCompare=e,this._propsToExtract=n,this._requiredProps=i}arePropsEqual(t,e){for(const n of this._propsToCompare||Object.keys(e))if(!(n in t)||!(n in e)||!FS(t[n],e[n]))return!1;return!0}initializeProps(t,e){let n;if(this._propsToExtract){const i={},r={};for(const n of this._propsToExtract)i[n]=t[n],r[n]=e[n];n={start:i,end:r}}else n={start:t,end:e};return this._checkRequiredProps(n.start),this._checkRequiredProps(n.end),n}interpolateProps(t,e,n){return e}getDuration(t,e){return e.transitionDuration}_checkRequiredProps(t){!this._requiredProps||this._requiredProps.forEach(e=>{const n=t[e];uE(Number.isFinite(n)||Array.isArray(n),"".concat(e," is required for transition"))})}}{constructor(t={}){super((Array.isArray(t)?t:t.transitionProps)||{compare:WP,extract:WP,required:qP}),this.opts=t}initializeProps(t,e){const n=super.initializeProps(t,e),{makeViewport:i,around:r}=this.opts;if(i&&r){const s=i(t),o=i(e),a=s.unproject(r);n.start.around=r,Object.assign(n.end,{around:o.project(a),aroundPosition:a,width:e.width,height:e.height})}return n}interpolateProps(t,e,n){const i={};for(const r of this._propsToExtract)i[r]=jS(t[r]||0,e[r]||0,n);if(e.aroundPosition){const r=this.opts.makeViewport(wt(wt({},e),i));Object.assign(i,r.panByPosition(e.aroundPosition,jS(t.around,e.around,n)))}return i}}const YP={transitionDuration:0},KP={transitionDuration:300,transitionEasing:t=>t,transitionInterruption:1},QP=t=>1-(1-t)*(1-t),ZP=["wheel"],JP=["panstart","panmove","panend"],tM=["pinchstart","pinchmove","pinchend"],eM=["tripanstart","tripanmove","tripanend"],nM=["doubletap"],iM=["keydown"];class rM{constructor(t,e={}){this.ControllerState=t,this.controllerState=null,this.controllerStateProps=null,this.eventManager=null,this.transitionManager=new GP(t,ii(wt({},e),{onViewStateChange:this._onTransition.bind(this),onStateChange:this._setInteractionState.bind(this)}));const n=this.linearTransitionProps;this._transition=n&&ii(wt({},KP),{transitionInterpolator:new XP({transitionProps:n})}),this._events=null,this._interactionState={isDragging:!1},this._customEvents=[],this.onViewStateChange=null,this.onStateChange=null,this.handleEvent=this.handleEvent.bind(this),this.setProps(e)}get linearTransitionProps(){return null}set events(t){this.toggleEvents(this._customEvents,!1),this.toggleEvents(t,!0),this._customEvents=t,this.setProps(this.controllerStateProps)}finalize(){for(const t in this._events)this._events[t]&&this.eventManager.off(t,this.handleEvent);this.transitionManager.finalize()}handleEvent(t){const{ControllerState:e}=this;this.controllerState=new e(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state));const n=this._eventStartBlocked;switch(t.type){case"panstart":return!n&&this._onPanStart(t);case"panmove":return this._onPan(t);case"panend":return this._onPanEnd(t);case"pinchstart":return!n&&this._onPinchStart(t);case"pinchmove":return this._onPinch(t);case"pinchend":return this._onPinchEnd(t);case"tripanstart":return!n&&this._onTriplePanStart(t);case"tripanmove":return this._onTriplePan(t);case"tripanend":return this._onTriplePanEnd(t);case"doubletap":return this._onDoubleTap(t);case"wheel":return this._onWheel(t);case"keydown":return this._onKeyDown(t);default:return!1}}getCenter(t){const{x:e,y:n}=this.controllerStateProps,{offsetCenter:i}=t;return[i.x-e,i.y-n]}isPointInBounds(t,e){const{width:n,height:i}=this.controllerStateProps;if(e&&e.handled)return!1;const r=t[0]>=0&&t[0]<=n&&t[1]>=0&&t[1]<=i;return r&&e&&e.stopPropagation(),r}isFunctionKeyPressed(t){const{srcEvent:e}=t;return Boolean(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}isDragging(){return this._interactionState.isDragging}blockEvents(t){const e=setTimeout(()=>{this._eventStartBlocked===e&&(this._eventStartBlocked=null)},t);this._eventStartBlocked=e}setProps(t){"onViewStateChange"in t&&(this.onViewStateChange=t.onViewStateChange),"onStateChange"in t&&(this.onStateChange=t.onStateChange),"makeViewport"in t&&(this.makeViewport=t.makeViewport),"dragMode"in t&&(this.dragMode=t.dragMode),this.controllerStateProps=t,"eventManager"in t&&this.eventManager!==t.eventManager&&(this.eventManager=t.eventManager,this._events={},this.toggleEvents(this._customEvents,!0)),"transitionInterpolator"in t||(t.transitionInterpolator=this._getTransitionProps().transitionInterpolator),this.transitionManager.processViewStateChange(t);let{inertia:e}=t;!0===e&&(e=300),this.inertia=e;const{scrollZoom:n=!0,dragPan:i=!0,dragRotate:r=!0,doubleClickZoom:s=!0,touchZoom:o=!0,touchRotate:a=!1,keyboard:l=!0}=t,c=Boolean(this.onViewStateChange);this.toggleEvents(ZP,c&&n),this.toggleEvents(JP,c&&(i||r)),this.toggleEvents(tM,c&&(o||a)),this.toggleEvents(eM,c&&a),this.toggleEvents(nM,c&&s),this.toggleEvents(iM,c&&l),this.scrollZoom=n,this.dragPan=i,this.dragRotate=r,this.doubleClickZoom=s,this.touchZoom=o,this.touchRotate=a,this.keyboard=l}updateTransition(){this.transitionManager.updateTransition()}toggleEvents(t,e){this.eventManager&&t.forEach(t=>{this._events[t]!==e&&(this._events[t]=e,e?this.eventManager.on(t,this.handleEvent):this.eventManager.off(t,this.handleEvent))})}updateViewport(t,e={},n={}){const i=wt(wt({},t.getViewportProps()),e),r=this.controllerState!==t;if(this._state=t.getState(),this._setInteractionState(n),r){const t=this.controllerState?this.controllerState.getViewportProps():null;this.onViewStateChange&&this.onViewStateChange({viewState:i,interactionState:this._interactionState,oldViewState:t})}}_onTransition(t){this.onViewStateChange&&(t.interactionState=this._interactionState,this.onViewStateChange(t))}_setInteractionState(t){Object.assign(this._interactionState,t),this.onStateChange&&this.onStateChange(this._interactionState)}_onPanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;let n=this.isFunctionKeyPressed(t)||t.rightButton;(this.invertPan||"pan"===this.dragMode)&&(n=!n);const i=this.controllerState[n?"panStart":"rotateStart"]({pos:e});return this._panMove=n,this.updateViewport(i,YP,{isDragging:!0}),!0}_onPan(t){return!!this.isDragging()&&(this._panMove?this._onPanMove(t):this._onPanRotate(t))}_onPanEnd(t){return!!this.isDragging()&&(this._panMove?this._onPanMoveEnd(t):this._onPanRotateEnd(t))}_onPanMove(t){if(!this.dragPan)return!1;const e=this.getCenter(t),n=this.controllerState.pan({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isPanning:!0}),!0}_onPanMoveEnd(t){const{inertia:e}=this;if(this.dragPan&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.pan({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).panEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:!0})}else{const t=this.controllerState.panEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1})}return!0}_onPanRotate(t){if(!this.dragRotate)return!1;const e=this.getCenter(t),n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onPanRotateEnd(t){const{inertia:e}=this;if(this.dragRotate&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.rotate({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).rotateEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0})}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onWheel(t){if(!this.scrollZoom)return!1;t.preventDefault();const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const{speed:n=.01,smooth:i=!1}=this.scrollZoom,{delta:r}=t;let s=2/(1+Math.exp(-Math.abs(r*n)));r<0&&0!==s&&(s=1/s);const o=this.controllerState.zoom({pos:e,scale:s});return this.updateViewport(o,ii(wt({},this._getTransitionProps({around:e})),{transitionDuration:i?250:1}),{isZooming:!0,isPanning:!0}),!0}_onTriplePanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.rotateStart({pos:e});return this.updateViewport(n,YP,{isDragging:!0}),!0}_onTriplePan(t){if(!this.touchRotate||!this.isDragging())return!1;const e=this.getCenter(t);e[0]-=t.deltaX;const n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onTriplePanEnd(t){if(!this.isDragging())return!1;const{inertia:e}=this;if(this.touchRotate&&e&&t.velocityY){const n=this.getCenter(t),i=[n[0],n[1]+=t.velocityY*e/2],r=this.controllerState.rotate({pos:i});this.updateViewport(r,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0}),this.blockEvents(e)}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onPinchStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.zoomStart({pos:e}).rotateStart({pos:e});return this._startPinchRotation=t.rotation,this._lastPinchEvent=t,this.updateViewport(n,YP,{isDragging:!0}),!0}_onPinch(t){if(!this.touchZoom&&!this.touchRotate||!this.isDragging())return!1;let e=this.controllerState;if(this.touchZoom){const{scale:n}=t,i=this.getCenter(t);e=e.zoom({pos:i,scale:n})}if(this.touchRotate){const{rotation:n}=t;e=e.rotate({deltaAngleX:this._startPinchRotation-n})}return this.updateViewport(e,YP,{isDragging:!0,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:this.touchRotate}),this._lastPinchEvent=t,!0}_onPinchEnd(t){if(!this.isDragging())return!1;const{inertia:e,_lastPinchEvent:n}=this;if(this.touchZoom&&e&&n&&t.scale!==n.scale){const i=this.getCenter(t);let r=this.controllerState.rotateEnd();const s=Math.log2(t.scale),o=(s-Math.log2(n.scale))/(t.deltaTime-n.deltaTime),a=Math.pow(2,s+o*e/2);r=r.zoom({pos:i,scale:a}).zoomEnd(),this.updateViewport(r,ii(wt({},this._getTransitionProps({around:i})),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:!1}),this.blockEvents(e)}else{const t=this.controllerState.zoomEnd().rotateEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1,isZooming:!1,isRotating:!1})}return this._startPinchRotation=null,this._lastPinchEvent=null,!0}_onDoubleTap(t){if(!this.doubleClickZoom)return!1;const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.isFunctionKeyPressed(t),i=this.controllerState.zoom({pos:e,scale:n?.5:2});return this.updateViewport(i,this._getTransitionProps({around:e}),{isZooming:!0,isPanning:!0}),this.blockEvents(100),!0}_onKeyDown(t){if(!this.keyboard)return!1;const e=this.isFunctionKeyPressed(t),{zoomSpeed:n,moveSpeed:i,rotateSpeedX:r,rotateSpeedY:s}=this.keyboard,{controllerState:o}=this;let a;const l={};switch(t.srcEvent.code){case"Minus":a=e?o.zoomOut(n).zoomOut(n):o.zoomOut(n),l.isZooming=!0;break;case"Equal":a=e?o.zoomIn(n).zoomIn(n):o.zoomIn(n),l.isZooming=!0;break;case"ArrowLeft":e?(a=o.rotateLeft(r),l.isRotating=!0):(a=o.moveLeft(i),l.isPanning=!0);break;case"ArrowRight":e?(a=o.rotateRight(r),l.isRotating=!0):(a=o.moveRight(i),l.isPanning=!0);break;case"ArrowUp":e?(a=o.rotateUp(s),l.isRotating=!0):(a=o.moveUp(i),l.isPanning=!0);break;case"ArrowDown":e?(a=o.rotateDown(s),l.isRotating=!0):(a=o.moveDown(i),l.isPanning=!0);break;default:return!1}return this.updateViewport(a,this._getTransitionProps(),l),!0}_getTransitionProps(t){const{_transition:e}=this;return e?t?ii(wt({},e),{transitionInterpolator:new XP(ii(wt({},t),{transitionProps:this.linearTransitionProps,makeViewport:this.controllerState.makeViewport}))}):e:YP}}class sM{constructor(t){this._viewportProps=this._applyConstraints(t)}getViewportProps(){return this._viewportProps}getState(){return this._state}shortestPathFrom(t){return this._viewportProps}_applyConstraints(t){return t}}const oM=[0,0,0];class aM extends sM{constructor({makeViewport:t,width:e,height:n,rotationX:i=0,rotationOrbit:r=0,target:s=oM,zoom:o=0,minRotationX:a=-90,maxRotationX:l=90,minZoom:c=-(1/0),maxZoom:u=Infinity,startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m}){super({width:e,height:n,rotationX:i,rotationOrbit:r,target:s,zoom:o,minRotationX:a,maxRotationX:l,minZoom:c,maxZoom:u}),this._state={startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanPosition:this._unproject(t)})}pan({pos:t,startPosition:e}){const n=this._state.startPanPosition||e;if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanPosition:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startRotationX:this._viewportProps.rotationX,startRotationOrbit:this._viewportProps.rotationOrbit})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startRotationX:r,startRotationOrbit:s}=this._state,{width:o,height:a}=this._viewportProps;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let l;if(t){let e=(t[0]-i[0])/o;(r<-90||r>90)&&(e*=-1),l={rotationX:r+(t[1]-i[1])/a*180,rotationOrbit:s+180*e}}else l={rotationX:r+n,rotationOrbit:s+e};return this._getUpdatedState(l)}rotateEnd(){return this._getUpdatedState({startRotationX:null,startRotationOrbit:null})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{rotationOrbit:i}=n;return Math.abs(i-e.rotationOrbit)>180&&(n.rotationOrbit=i<0?i+360:i-360),n}zoomStart({pos:t}){return this._getUpdatedState({startZoomPosition:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){const{zoom:i}=this._viewportProps;let{startZoom:r,startZoomPosition:s}=this._state;Number.isFinite(r)||(r=i,s=this._unproject(e)||this._unproject(t));const o=this._calculateNewZoom({scale:n,startZoom:r}),a=this.makeViewport(ii(wt({},this._viewportProps),{zoom:o}));return this._getUpdatedState(wt({zoom:o},a.panByPosition(s,t)))}zoomEnd(){return this._getUpdatedState({startZoomPosition:null,startZoom:null})}zoomIn(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:t})})}zoomOut(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:1/t})})}moveLeft(t=50){return this._panFromCenter([-t,0])}moveRight(t=50){return this._panFromCenter([t,0])}moveUp(t=50){return this._panFromCenter([0,-t])}moveDown(t=50){return this._panFromCenter([0,t])}rotateLeft(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit-t})}rotateRight(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit+t})}rotateUp(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX-t})}rotateDown(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX+t})}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return Number.isFinite(e)||(e=this._viewportProps.zoom),LS(e+Math.log2(t),i,n)}_panFromCenter(t){const{width:e,height:n,target:i}=this._viewportProps;return this.pan({startPosition:i,pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new aM(wt(wt(wt({},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i,maxRotationX:r,minRotationX:s,rotationOrbit:o}=t;return t.zoom=LS(i,n,e),t.rotationX=LS(t.rotationX,s,r),(o<-180||o>180)&&(t.rotationOrbit=function(t,e){const n=t%360;return n<0?360+n:n}(o+180)-180),t}}class lM extends rM{constructor(t){super(aM,t)}get linearTransitionProps(){return["target","zoom","rotationX","rotationOrbit"]}}class cM extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(aM,t)}_onPanRotate(t){return!1}get linearTransitionProps(){return["target","zoom"]}}const uM=(new bT).lookAt({eye:[0,0,1]});function hM({width:t,height:e,near:n,far:i}){return t=t||1,e=e||1,(new bT).ortho({left:-t/2,right:t/2,bottom:-e/2,top:e/2,near:n,far:i})}class dM extends WT{constructor(t){const{width:e,height:n,near:i=.1,far:r=1e3,zoom:s=0,target:o=[0,0,0],flipY:a=!0}=t,l=Math.pow(2,s);super(ii(wt({},t),{longitude:null,position:o,viewMatrix:uM.clone().scale([l,l*(a?-1:1),l]),projectionMatrix:hM({width:e,height:n,near:i,far:r}),zoom:s}))}panByPosition(t,e){const n=uT([],t,hT([],LT(e,this.pixelUnprojectionMatrix)));return{target:uT([],this.center,n)}}}let pM=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:dM}))}get controller(){return this._getControllerProps({type:cM})}}return t.displayName="OrthographicView",t})();const fM=Math.PI/180;function gM({height:t,fovy:e,orbitAxis:n,rotationX:i,rotationOrbit:r,zoom:s}){const o=.5/Math.tan(e*fM/2),a="Z"===n?[0,0,1]:[0,1,0],l="Z"===n?[0,-o,0]:[0,0,o],c=(new bT).lookAt({eye:l,up:a});c.rotateX(i*fM),"Z"===n?c.rotateZ(r*fM):c.rotateY(r*fM);const u=Math.pow(2,s)/(t||1);return c.scale(u),c}class mM extends WT{constructor(t){const{height:e,fovy:n,orbitAxis:i,target:r=[0,0,0],rotationX:s=0,rotationOrbit:o=0,zoom:a=0}=t;super(ii(wt({},t),{longitude:null,viewMatrix:gM({height:e,fovy:n,orbitAxis:i,rotationX:s,rotationOrbit:o,zoom:a}),fovy:n,position:r,zoom:a})),this.projectedCenter=this.project(this.center)}unproject(t,{topLeft:e=!0}={}){const[n,i,r=this.projectedCenter[2]]=t,s=e?i:this.height-i,[o,a,l]=LT([n,s,r],this.pixelUnprojectionMatrix);return[o,a,l]}panByPosition(t,e){const n=this.project(t);return{target:this.unproject([this.width/2+n[0]-e[0],this.height/2+n[1]-e[1],this.projectedCenter[2]])}}}let bM=(()=>{class t extends UP{constructor(t={}){const{orbitAxis:e="Z"}=t;super(ii(wt({},t),{orbitAxis:e,type:mM}))}get controller(){return this._getControllerProps({type:lM})}}return t.displayName="OrbitView",t})();const yM=[255,255,255],vM=1;let _M=0;class wM{constructor(t={}){const{color:e=yM}=t,{intensity:n=vM}=t;this.id=t.id||"ambient-".concat(_M++),this.color=e,this.intensity=n,this.type="ambient"}}const xM=[255,255,255],SM=1,EM=[0,0,-1];let CM=0;class OM{constructor(t={}){const{color:e=xM}=t,{intensity:n=SM}=t,{direction:i=EM}=t,{_shadow:r=!1}=t;this.id=t.id||"directional-".concat(CM++),this.color=e,this.intensity=n,this.type="directional",this.direction=new nE(i).normalize().toArray(),this.shadow=r}getProjectedLight(){return this}}class TM{constructor(t={}){const{id:e="effect"}=t;this.id=e,this.props=wt({},t)}preRender(){}getModuleParameters(){}cleanup(){}}class kM extends class{constructor(t,e={}){const{id:n="pass"}=e;this.id=n,this.gl=t,this.props=wt({},e)}setProps(t){Object.assign(this.props,t)}render(){}cleanup(){}}{render(t){return yx(this.gl,{framebuffer:t.target}),this._drawLayers(t)}_drawLayers(t){const{viewports:e,views:n,onViewportActive:i,clearCanvas:r=!0}=t;t.pass=t.pass||"unknown";const s=this.gl;r&&function(t){yx(t,{viewport:[0,0,t.drawingBufferWidth,t.drawingBufferHeight]}),t.clear(16640)}(s);const o=[];for(const a of e){const e=a.viewport||a,r=n&&n[e.id];i(e);const l=this._getDrawLayerParams(e,t);t.view=r;const c=e.subViewports||[e];for(const n of c){t.viewport=n;const e=this._drawLayersInViewport(s,t,l);o.push(e)}}return o}_getDrawLayerParams(t,{layers:e,pass:n,layerFilter:i,effects:r,moduleParameters:s}){const o=[],a=AM(),l={viewport:t,isPicking:n.startsWith("picking"),renderPass:n};for(let c=0;cpS(t,e))}const a={totalCount:e.length,visibleCount:0,compositeCount:0,pickableCount:0};yx(t,{viewport:o});for(let c=0;c{const o=r.props._offset,a=r.id,l=r.parent&&r.parent.id;let c;if(l&&!(l in e)&&i(r.parent,!1),l in n){const t=n[l]=n[l]||AM(e[l],e);c=t(r,s),n[a]=t}else Number.isFinite(o)?(c=o+(e[l]||0),n[a]=null):c=t;return s&&c>=t&&(t=c+1),e[a]=c,c};return i}class PM extends kM{constructor(t,e){super(t,e),this.shadowMap=new lS(t,{width:1,height:1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.depthBuffer=new hS(t,{format:33189,width:1,height:1}),this.fbo=new SS(t,{id:"shadowmap",width:1,height:1,attachments:{36064:this.shadowMap,36096:this.depthBuffer}})}render(t){const e=this.fbo;vx(this.gl,{depthRange:[0,1],depthTest:!0,blend:!1,clearColor:[1,1,1,1]},()=>{const n=t.viewports[0],i=_x(this.gl),r=n.width*i,s=n.height*i;(r!==e.width||s!==e.height)&&e.resize({width:r,height:s}),super.render(ii(wt({},t),{target:e,pass:"shadow"}))})}shouldDrawLayer(t){return!1!==t.props.shadowEnabled}getModuleParameters(){return{drawToShadowMap:!0}}delete(){this.fbo&&(this.fbo.delete(),this.fbo=null),this.shadowMap&&(this.shadowMap.delete(),this.shadowMap=null),this.depthBuffer&&(this.depthBuffer.delete(),this.depthBuffer=null)}}const MM=Object.keys(Iw).map(t=>"const int COORDINATE_SYSTEM_".concat(t," = ").concat(Iw[t],";")).join(""),IM=Object.keys(Dw).map(t=>"const int PROJECTION_MODE_".concat(t," = ").concat(Dw[t],";")).join("");var DM="".concat(MM,"\n").concat(IM,"\n\nuniform int project_uCoordinateSystem;\nuniform int project_uProjectionMode;\nuniform float project_uScale;\nuniform bool project_uWrapLongitude;\nuniform vec3 project_uCommonUnitsPerMeter;\nuniform vec3 project_uCommonUnitsPerWorldUnit;\nuniform vec3 project_uCommonUnitsPerWorldUnit2;\nuniform vec4 project_uCenter;\nuniform mat4 project_uModelMatrix;\nuniform mat4 project_uViewProjectionMatrix;\nuniform vec2 project_uViewportSize;\nuniform float project_uDevicePixelRatio;\nuniform float project_uFocalDistance;\nuniform vec3 project_uCameraPosition;\nuniform vec3 project_uCoordinateOrigin;\nuniform vec3 project_uCommonOrigin;\n\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / (PI * 2.0);\nconst vec3 ZERO_64_LOW = vec3(0.0);\nconst float EARTH_RADIUS = 6370972.0;\nconst float GLOBE_RADIUS = 256.0;\nfloat project_size(float meters) {\n return meters * project_uCommonUnitsPerMeter.z;\n}\n\nvec2 project_size(vec2 meters) {\n return meters * project_uCommonUnitsPerMeter.xy;\n}\n\nvec3 project_size(vec3 meters) {\n return meters * project_uCommonUnitsPerMeter;\n}\n\nvec4 project_size(vec4 meters) {\n return vec4(meters.xyz * project_uCommonUnitsPerMeter, meters.w);\n}\nvec3 project_normal(vec3 vector) {\n vec4 normal_modelspace = project_uModelMatrix * vec4(vector, 0.0);\n return normalize(normal_modelspace.xyz * project_uCommonUnitsPerMeter);\n}\n\nvec4 project_offset_(vec4 offset) {\n float dy = offset.y;\n vec3 commonUnitsPerWorldUnit = project_uCommonUnitsPerWorldUnit + project_uCommonUnitsPerWorldUnit2 * dy;\n return vec4(offset.xyz * commonUnitsPerWorldUnit, offset.w);\n}\nvec2 project_mercator_(vec2 lnglat) {\n float x = lnglat.x;\n if (project_uWrapLongitude) {\n x = mod(x + 180., 360.0) - 180.;\n }\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan_fp32(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\nvec3 project_globe_(vec3 lnglatz) {\n float lambda = radians(lnglatz.x);\n float phi = radians(lnglatz.y);\n float cosPhi = cos(phi);\n float D = (lnglatz.z / EARTH_RADIUS + 1.0) * GLOBE_RADIUS;\n\n return vec3(\n sin(lambda) * cosPhi,\n -cos(lambda) * cosPhi,\n sin(phi)\n ) * D;\n}\nvec4 project_position(vec4 position, vec3 position64Low) {\n vec4 position_world = project_uModelMatrix * position;\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_mercator_(position_world.xy),\n project_size(position_world.z),\n position_world.w\n );\n }\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN) {\n position_world.xyz += project_uCoordinateOrigin;\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_globe_(position_world.xyz),\n position_world.w\n );\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n if (abs(position_world.y - project_uCoordinateOrigin.y) > 0.25) {\n return vec4(\n project_mercator_(position_world.xy) - project_uCommonOrigin.xy,\n project_size(position_world.z),\n position_world.w\n );\n }\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_IDENTITY ||\n (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET &&\n (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT ||\n project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN))) {\n position_world.xyz -= project_uCoordinateOrigin;\n }\n return project_offset_(position_world + project_uModelMatrix * vec4(position64Low, 0.0));\n}\n\nvec4 project_position(vec4 position) {\n return project_position(position, ZERO_64_LOW);\n}\n\nvec3 project_position(vec3 position, vec3 position64Low) {\n vec4 projected_position = project_position(vec4(position, 1.0), position64Low);\n return projected_position.xyz;\n}\n\nvec3 project_position(vec3 position) {\n vec4 projected_position = project_position(vec4(position, 1.0), ZERO_64_LOW);\n return projected_position.xyz;\n}\n\nvec2 project_position(vec2 position) {\n vec4 projected_position = project_position(vec4(position, 0.0, 1.0), ZERO_64_LOW);\n return projected_position.xy;\n}\n\nvec4 project_common_position_to_clipspace(vec4 position, mat4 viewProjectionMatrix, vec4 center) {\n return viewProjectionMatrix * position + center;\n}\nvec4 project_common_position_to_clipspace(vec4 position) {\n return project_common_position_to_clipspace(position, project_uViewProjectionMatrix, project_uCenter);\n}\nvec2 project_pixel_size_to_clipspace(vec2 pixels) {\n vec2 offset = pixels / project_uViewportSize * project_uDevicePixelRatio * 2.0;\n return offset * project_uFocalDistance;\n}\n\nfloat project_size_to_pixel(float meters) {\n return project_size(meters) * project_uScale;\n}\nfloat project_pixel_size(float pixels) {\n return pixels / project_uScale;\n}\nvec2 project_pixel_size(vec2 pixels) {\n return pixels / project_uScale;\n}\nmat3 project_get_orientation_matrix(vec3 up) {\n vec3 uz = normalize(up);\n vec3 ux = abs(uz.z) == 1.0 ? vec3(1.0, 0.0, 0.0) : normalize(vec3(uz.y, -uz.x, 0));\n vec3 uy = cross(uz, ux);\n return mat3(ux, uy, uz);\n}\n\nbool project_needs_rotation(vec3 commonPosition, out mat3 transform) {\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n transform = project_get_orientation_matrix(commonPosition);\n return true;\n }\n return false;\n}\n");const RM={};var NM={name:"project",dependencies:[{name:"fp32",vs:"#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\nconst float TWO_PI = 6.2831854820251465;\nconst float PI_2 = 1.5707963705062866;\nconst float PI_16 = 0.1963495463132858;\n\nconst float SIN_TABLE_0 = 0.19509032368659973;\nconst float SIN_TABLE_1 = 0.3826834261417389;\nconst float SIN_TABLE_2 = 0.5555702447891235;\nconst float SIN_TABLE_3 = 0.7071067690849304;\n\nconst float COS_TABLE_0 = 0.9807852506637573;\nconst float COS_TABLE_1 = 0.9238795042037964;\nconst float COS_TABLE_2 = 0.8314695954322815;\nconst float COS_TABLE_3 = 0.7071067690849304;\n\nconst float INVERSE_FACTORIAL_3 = 1.666666716337204e-01;\nconst float INVERSE_FACTORIAL_5 = 8.333333767950535e-03;\nconst float INVERSE_FACTORIAL_7 = 1.9841270113829523e-04;\nconst float INVERSE_FACTORIAL_9 = 2.75573188446287533e-06;\n\nfloat sin_taylor_fp32(float a) {\n float r, s, t, x;\n\n if (a == 0.0) {\n return 0.0;\n }\n\n x = -a * a;\n s = a;\n r = a;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_3;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_5;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_7;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_9;\n s = s + t;\n\n return s;\n}\n\nvoid sincos_taylor_fp32(float a, out float sin_t, out float cos_t) {\n if (a == 0.0) {\n sin_t = 0.0;\n cos_t = 1.0;\n }\n sin_t = sin_taylor_fp32(a);\n cos_t = sqrt(1.0 - sin_t * sin_t);\n}\n\nfloat tan_taylor_fp32(float a) {\n float sin_a;\n float cos_a;\n\n if (a == 0.0) {\n return 0.0;\n }\n float z = floor(a / TWO_PI);\n float r = a - TWO_PI * z;\n\n float t;\n float q = floor(r / PI_2 + 0.5);\n int j = int(q);\n\n if (j < -2 || j > 2) {\n return 1.0 / 0.0;\n }\n\n t = r - PI_2 * q;\n\n q = floor(t / PI_16 + 0.5);\n int k = int(q);\n int abs_k = int(abs(float(k)));\n\n if (abs_k > 4) {\n return 1.0 / 0.0;\n } else {\n t = t - PI_16 * q;\n }\n\n float u = 0.0;\n float v = 0.0;\n\n float sin_t, cos_t;\n float s, c;\n sincos_taylor_fp32(t, sin_t, cos_t);\n\n if (k == 0) {\n s = sin_t;\n c = cos_t;\n } else {\n if (abs(float(abs_k) - 1.0) < 0.5) {\n u = COS_TABLE_0;\n v = SIN_TABLE_0;\n } else if (abs(float(abs_k) - 2.0) < 0.5) {\n u = COS_TABLE_1;\n v = SIN_TABLE_1;\n } else if (abs(float(abs_k) - 3.0) < 0.5) {\n u = COS_TABLE_2;\n v = SIN_TABLE_2;\n } else if (abs(float(abs_k) - 4.0) < 0.5) {\n u = COS_TABLE_3;\n v = SIN_TABLE_3;\n }\n if (k > 0) {\n s = u * sin_t + v * cos_t;\n c = u * cos_t - v * sin_t;\n } else {\n s = u * sin_t - v * cos_t;\n c = u * cos_t + v * sin_t;\n }\n }\n\n if (j == 0) {\n sin_a = s;\n cos_a = c;\n } else if (j == 1) {\n sin_a = c;\n cos_a = -s;\n } else if (j == -1) {\n sin_a = -c;\n cos_a = s;\n } else {\n sin_a = -s;\n cos_a = -c;\n }\n return sin_a / cos_a;\n}\n#endif\n\nfloat tan_fp32(float a) {\n#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\n return tan_taylor_fp32(a);\n#else\n return tan(a);\n#endif\n}\n",fs:null}],vs:DM,getUniforms:function(t=RM){return t.viewport?function({viewport:t,devicePixelRatio:e=1,modelMatrix:n=null,coordinateSystem:i=Iw.DEFAULT,coordinateOrigin:r,autoWrapLongitude:s=!1}={}){i===Iw.DEFAULT&&(i=t.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN);const o=aT({viewport:t,devicePixelRatio:e,coordinateSystem:i,coordinateOrigin:r});return o.project_uWrapLongitude=s,o.project_uModelMatrix=n||rT,o}(t):{}}};const LM=$O(function({viewport:t,center:e}){return new bT(t.viewProjectionMatrix).invert().transform(e)}),jM=$O(function({viewport:t,shadowMatrices:e}){const n=[],i=t.pixelUnprojectionMatrix,r=t.isGeospatial?void 0:1,s=[[0,0,r],[t.width,0,r],[0,t.height,r],[t.width,t.height,r],[0,0,-1],[t.width,0,-1],[0,t.height,-1],[t.width,t.height,-1]].map(t=>function(t,e){const[n,i,r]=t,s=LT([n,i,r],e);return Number.isFinite(r)?s:[s[0],s[1],0]}(t,i));for(const o of e){const e=o.clone().translate(new nE(t.center).negate()),i=s.map(t=>e.transform(t)),r=(new bT).ortho({left:Math.min(...i.map(t=>t[0])),right:Math.max(...i.map(t=>t[0])),bottom:Math.min(...i.map(t=>t[1])),top:Math.max(...i.map(t=>t[1])),near:Math.min(...i.map(t=>-t[2])),far:Math.max(...i.map(t=>-t[2]))});n.push(r.multiplyRight(o))}return n}),FM=[0,0,0,1],BM=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0];var VM={name:"shadow",dependencies:[NM],vs:"\nconst int max_lights = 2;\nuniform mat4 shadow_uViewProjectionMatrices[max_lights];\nuniform vec4 shadow_uProjectCenters[max_lights];\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform int shadow_uLightId;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nvec4 shadow_setVertexPosition(vec4 position_commonspace) {\n if (shadow_uDrawShadowMap) {\n return project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[shadow_uLightId], shadow_uProjectCenters[shadow_uLightId]);\n }\n if (shadow_uUseShadowMap) {\n for (int i = 0; i < max_lights; i++) {\n if(i < int(shadow_uLightCount)) {\n vec4 shadowMap_position = project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[i], shadow_uProjectCenters[i]);\n shadow_vPosition[i] = (shadowMap_position.xyz / shadowMap_position.w + 1.0) / 2.0;\n }\n }\n }\n return gl_Position;\n}\n",fs:"\nconst int max_lights = 2;\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform sampler2D shadow_uShadowMap0;\nuniform sampler2D shadow_uShadowMap1;\nuniform vec4 shadow_uColor;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nconst vec4 bitPackShift = vec4(1.0, 255.0, 65025.0, 16581375.0);\nconst vec4 bitUnpackShift = 1.0 / bitPackShift;\nconst vec4 bitMask = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n\nfloat shadow_getShadowWeight(vec3 position, sampler2D shadowMap) {\n vec4 rgbaDepth = texture2D(shadowMap, position.xy);\n\n float z = dot(rgbaDepth, bitUnpackShift);\n return smoothstep(0.001, 0.01, position.z - z);\n}\n\nvec4 shadow_filterShadowColor(vec4 color) {\n if (shadow_uDrawShadowMap) {\n vec4 rgbaDepth = fract(gl_FragCoord.z * bitPackShift);\n rgbaDepth -= rgbaDepth.gbaa * bitMask;\n return rgbaDepth;\n }\n if (shadow_uUseShadowMap) {\n float shadowAlpha = 0.0;\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[0], shadow_uShadowMap0);\n if(shadow_uLightCount > 1.0) {\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[1], shadow_uShadowMap1);\n }\n shadowAlpha *= shadow_uColor.a / shadow_uLightCount;\n float blendedAlpha = shadowAlpha + color.a * (1.0 - shadowAlpha);\n\n return vec4(\n mix(color.rgb, shadow_uColor.rgb, shadowAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n return color;\n}\n",inject:{"vs:DECKGL_FILTER_GL_POSITION":"\n position = shadow_setVertexPosition(geometry.position);\n ","fs:DECKGL_FILTER_COLOR":"\n color = shadow_filterShadowColor(color);\n "},getUniforms:(t={},e={})=>{if(t.drawToShadowMap||t.shadowMaps&&t.shadowMaps.length>0){const{shadowEnabled:n=!0}=t;return n&&t.shadowMatrices&&t.shadowMatrices.length>0?function(t={},e={}){const n={shadow_uDrawShadowMap:Boolean(t.drawToShadowMap),shadow_uUseShadowMap:!!t.shadowMaps&&t.shadowMaps.length>0,shadow_uColor:t.shadowColor||FM,shadow_uLightId:t.shadowLightId||0,shadow_uLightCount:t.shadowMatrices.length},i=LM({viewport:t.viewport,center:e.project_uCenter}),r=[],s=jM({shadowMatrices:t.shadowMatrices,viewport:t.viewport}).slice();for(let o=0;o0?t.shadowMaps[o]:t.dummyShadowMap;return n}(t,e):{shadow_uDrawShadowMap:!1,shadow_uUseShadowMap:!1}}return{}}};const zM={color:[255,255,255],intensity:1},UM=[{color:[255,255,255],intensity:1,direction:[-1,3,-1]},{color:[255,255,255],intensity:.9,direction:[1,-8,-2.5]}],HM=[0,0,0,200/255];class $M extends TM{constructor(t){super(t),this.ambientLight=null,this.directionalLights=[],this.pointLights=[],this.shadowColor=HM,this.shadowPasses=[],this.shadowMaps=[],this.dummyShadowMap=null,this.shadow=!1,this.programManager=null;for(const e in t){const n=t[e];switch(n.type){case"ambient":this.ambientLight=n;break;case"directional":this.directionalLights.push(n);break;case"point":this.pointLights.push(n)}}this._applyDefaultLights(),this.shadow=this.directionalLights.some(t=>t.shadow)}preRender(t,{layers:e,layerFilter:n,viewports:i,onViewportActive:r,views:s}){if(this.shadow){this.shadowMatrices=this._createLightMatrix(),0===this.shadowPasses.length&&this._createShadowPasses(t),this.programManager||(this.programManager=sO.getDefaultProgramManager(t),VM&&this.programManager.addDefaultModule(VM)),this.dummyShadowMap||(this.dummyShadowMap=new lS(t,{width:1,height:1}));for(let t=0;te.getProjectedLight({layer:t})),pointLights:this.pointLights.map(e=>e.getProjectedLight({layer:t}))},e}cleanup(){for(const t of this.shadowPasses)t.delete();this.shadowPasses.length=0,this.shadowMaps.length=0,this.dummyShadowMap&&(this.dummyShadowMap.delete(),this.dummyShadowMap=null),this.shadow&&this.programManager&&(this.programManager.removeDefaultModule(VM),this.programManager=null)}_createLightMatrix(){const t=[];for(const e of this.directionalLights){const n=(new bT).lookAt({eye:new nE(e.direction).negate()});t.push(n)}return t}_createShadowPasses(t){for(let e=0;e=e.delay+e.duration*e.repeat}getTime(t){if(void 0===t)return this.time;const e=this.channels.get(t);return void 0===e?-1:e.time}setTime(t){this.time=Math.max(0,t);const e=this.channels.values();for(const i of e)this._setChannelTime(i,this.time);const n=this.animations.values();for(const i of n){const{animation:t,channel:e}=i;t.setTime(this.getTime(e))}}play(){this.playing=!0}pause(){this.playing=!1,this.lastEngineTime=-1}reset(){this.setTime(0)}attachAnimation(t,e){const n=WM++;return this.animations.set(n,{animation:t,channel:e}),t.setTime(this.getTime(e)),n}detachAnimation(t){this.animations.delete(t)}update(t){this.playing&&(-1===this.lastEngineTime&&(this.lastEngineTime=t),this.setTime(this.time+(t-this.lastEngineTime)),this.lastEngineTime=t)}_setChannelTime(t,e){const n=e-t.delay;n>=t.duration*t.repeat?t.time=t.duration*t.rate:(t.time=Math.max(0,n)%t.duration,t.time*=t.rate)}}class XM{constructor(t,e,n){this.id=t,this.context=n,this._loadCount=0,this._subscribers=new Set,this.setData(e)}subscribe(t){this._subscribers.add(t)}unsubscribe(t){this._subscribers.delete(t)}inUse(){return this._subscribers.size>0}delete(){}getData(){return this.isLoaded?this._error?Promise.reject(this._error):this._content:this._loader.then(()=>this.getData())}setData(t,e){if(t===this._data&&!e)return;this._data=t;const n=++this._loadCount;let i=t;"string"==typeof t&&(i=AP(t)),i instanceof Promise?(this.isLoaded=!1,this._loader=i.then(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=null,this._content=t)}).catch(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=t||!0)})):(this.isLoaded=!0,this._error=null,this._content=t);for(const r of this._subscribers)r.onChange(this.getData())}}class YM{constructor({gl:t,protocol:e}){this.protocol=e||"resource://",this._context={gl:t,resourceManager:this},this._resources={},this._consumers={},this._pruneRequest=null}contains(t){return!!t.startsWith(this.protocol)||t in this._resources}add({resourceId:t,data:e,forceUpdate:n=!1,persistent:i=!0}){let r=this._resources[t];r?r.setData(e,n):(r=new XM(t,e,this._context),this._resources[t]=r),r.persistent=i}remove(t){const e=this._resources[t];e&&(e.delete(),delete this._resources[t])}unsubscribe({consumerId:t}){const e=this._consumers[t];if(e){for(const t in e){const n=e[t];n.resource&&n.resource.unsubscribe(n)}delete this._consumers[t],this.prune()}}subscribe({resourceId:t,onChange:e,consumerId:n,requestId:i="default"}){const{_resources:r,protocol:s}=this;t.startsWith(s)&&(r[t=t.replace(s,"")]||this.add({resourceId:t,data:null,persistent:!1}));const o=r[t];if(this._track(n,i,o,e),o)return o.getData()}prune(){this._pruneRequest||(this._pruneRequest=setTimeout(()=>this._prune(),0))}finalize(){for(const t in this._resources)this._resources[t].delete()}_track(t,e,n,i){const r=this._consumers,s=r[t]=r[t]||{},o=s[e]||{};o.resource&&(o.resource.unsubscribe(o),o.resource=null,this.prune()),n&&(s[e]=o,o.onChange=i,o.resource=n,n.subscribe(o))}_prune(){this._pruneRequest=null;for(const t of Object.keys(this._resources)){const e=this._resources[t];!e.persistent&&!e.inUse()&&(e.delete(),delete this._resources[t])}}}const KM=[{name:"geometry",vs:"\nstruct VertexGeometry {\n vec4 position;\n vec3 worldPosition;\n vec3 worldPositionAlt;\n vec3 normal;\n vec2 uv;\n vec3 pickingColor;\n} geometry;\n",fs:"\n#define SMOOTH_EDGE_RADIUS 0.5\n\nstruct FragmentGeometry {\n vec2 uv;\n} geometry;\n\nfloat smoothedge(float edge, float x) {\n return smoothstep(edge - SMOOTH_EDGE_RADIUS, edge + SMOOTH_EDGE_RADIUS, x);\n}\n"},NM],QM=["vs:DECKGL_FILTER_SIZE(inout vec3 size, VertexGeometry geometry)","vs:DECKGL_FILTER_GL_POSITION(inout vec4 position, VertexGeometry geometry)","vs:DECKGL_FILTER_COLOR(inout vec4 color, VertexGeometry geometry)","fs:DECKGL_FILTER_COLOR(inout vec4 color, FragmentGeometry geometry)"];function ZM(t){const e=sO.getDefaultProgramManager(t);for(const n of KM)e.addDefaultModule(n);for(const n of QM)e.addShaderHook(n);return e}const JM=Object.seal({layerManager:null,resourceManager:null,deck:null,gl:null,stats:null,shaderCache:null,pickingFBO:null,mousePosition:null,userData:{}});class tI{constructor(t,{deck:e,stats:n,viewport:i,timeline:r}={}){this.lastRenderedLayers=[],this.layers=[],this.resourceManager=new YM({gl:t,protocol:"deck://"}),this.context=ii(wt({},JM),{layerManager:this,gl:t,deck:e,programManager:t&&ZM(t),stats:n||new Mx({id:"deck.gl"}),viewport:i||new WT({id:"DEFAULT-INITIAL-VIEWPORT"}),timeline:r||new qM,resourceManager:this.resourceManager}),this._nextLayers=null,this._needsRedraw="Initial render",this._needsUpdate=!1,this._debug=!1,this.activateViewport=this.activateViewport.bind(this),Object.seal(this)}finalize(){this.resourceManager.finalize();for(const t of this.layers)this._finalizeLayer(t)}needsRedraw(t={clearRedrawFlags:!1}){let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);for(const n of this.layers){const i=n.getNeedsRedraw(t);e=e||i}return e}needsUpdate(){return this._nextLayers&&this._nextLayers!==this.lastRenderedLayers?"layers changed":this._needsUpdate}setNeedsRedraw(t){this._needsRedraw=this._needsRedraw||t}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t}getLayers({layerIds:t=null}={}){return t?this.layers.filter(e=>t.find(t=>0===e.id.indexOf(t))):this.layers}setProps(t){"debug"in t&&(this._debug=t.debug),"userData"in t&&(this.context.userData=t.userData),"layers"in t&&(this._nextLayers=t.layers),"onError"in t&&(this.context.onError=t.onError)}setLayers(t,e){PE("layerManager.setLayers",this,e,t),this.lastRenderedLayers=t,t=gE(t,Boolean);for(const n of t)n.context=this.context;return this._updateLayers(this.layers,t),this}updateLayers(){const t=this.needsUpdate();t&&(this.setNeedsRedraw("updating layers: ".concat(t)),this.setLayers(this._nextLayers||this.lastRenderedLayers,t)),this._nextLayers=null}activateViewport(t){return PE("layerManager.activateViewport",this,t),t&&(this.context.viewport=t),this}_handleError(t,e,n){n.raiseError(e,"".concat(t," of ").concat(n))}_updateLayers(t,e){const n={};for(const s of t)n[s.id]?Mw.warn("Multiple old layers with same id ".concat(s.id))():n[s.id]=s;const i=[];this._updateSublayersRecursively(e,n,i),this._finalizeOldLayers(n);let r=!1;for(const s of i)if(s.hasUniformTransition()){r=!0;break}this._needsUpdate=r,this.layers=i}_updateSublayersRecursively(t,e,n){for(const r of t){r.context=this.context;const t=e[r.id];null===t&&Mw.warn("Multiple new layers with same id ".concat(r.id))(),e[r.id]=null;let s=null;try{this._debug&&t!==r&&r.validateProps(),t?(this._transferLayerState(t,r),this._updateLayer(r)):this._initializeLayer(r),n.push(r),s=r.isComposite&&r.getSubLayers()}catch(i){this._handleError("matching",i,r)}s&&this._updateSublayersRecursively(s,e,n)}}_finalizeOldLayers(t){for(const e in t){const n=t[e];n&&this._finalizeLayer(n)}}_initializeLayer(t){try{t._initialize(),t.lifecycle="Initialized"}catch(e){this._handleError("initialization",e,t)}}_transferLayerState(t,e){e._transferState(t),e.lifecycle="Matched. State transferred from previous layer",e!==t&&(t.lifecycle="Discarded. Awaiting garbage collection")}_updateLayer(t){try{t._update()}catch(e){this._handleError("update",e,t)}}_finalizeLayer(t){this._needsRedraw=this._needsRedraw||"finalized ".concat(t),t.lifecycle="No longer matched. Awaiting garbage collection";try{t._finalize(),t.lifecycle="Finalized! Awaiting garbage collection"}catch(e){this._handleError("finalization",e,t)}}}class eI{constructor(t={}){this.views=[],this.width=100,this.height=100,this.viewState={},this.controllers={},this.timeline=t.timeline,this._viewports=[],this._viewportMap={},this._isUpdating=!1,this._needsRedraw="Initial render",this._needsUpdate=!0,this._eventManager=t.eventManager,this._eventCallbacks={onViewStateChange:t.onViewStateChange,onInteractionStateChange:t.onInteractionStateChange},Object.seal(this),this.setProps(t)}finalize(){for(const t in this.controllers)this.controllers[t]&&this.controllers[t].finalize();this.controllers={}}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t,this._needsRedraw=this._needsRedraw||t}updateViewStates(){for(const t in this.controllers){const e=this.controllers[t];e&&e.updateTransition()}}getViewports(t){return t?this._viewports.filter(e=>e.containsPixel(t)):this._viewports}getViews(){const t={};return this.views.forEach(e=>{t[e.id]=e}),t}getView(t){return"string"==typeof t?this.views.find(e=>e.id===t):t}getViewState(t){const e=this.getView(t),n=e&&this.viewState[e.getViewStateId()]||this.viewState;return e?e.filterViewState(n):n}getViewport(t){return this._viewportMap[t]}unproject(t,e){const n=this.getViewports(),i={x:t[0],y:t[1]};for(let r=n.length-1;r>=0;--r){const s=n[r];if(s.containsPixel(i)){const n=t.slice();return n[0]-=s.x,n[1]-=s.y,s.unproject(n,e)}}return null}setProps(t){"views"in t&&this._setViews(t.views),"viewState"in t&&this._setViewState(t.viewState),("width"in t||"height"in t)&&this._setSize(t.width,t.height),this._isUpdating||this._update()}_update(){this._isUpdating=!0,this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._isUpdating=!1}_setSize(t,e){(t!==this.width||e!==this.height)&&(this.width=t,this.height=e,this.setNeedsUpdate("Size changed"))}_setViews(t){t=gE(t,Boolean),this._diffViews(t,this.views)&&this.setNeedsUpdate("views changed"),this.views=t}_setViewState(t){t?(!zP(t,this.viewState)&&this.setNeedsUpdate("viewState changed"),this.viewState=t):Mw.warn("missing `viewState` or `initialViewState`")()}_onViewStateChange(t,e){e.viewId=t,this._eventCallbacks.onViewStateChange&&this._eventCallbacks.onViewStateChange(e)}_createController(t,e){return new(0,e.type)(wt({timeline:this.timeline,eventManager:this._eventManager,onViewStateChange:this._onViewStateChange.bind(this,e.id),onStateChange:this._eventCallbacks.onInteractionStateChange,makeViewport:e=>t._getViewport(e,{width:e.width,height:e.height})},e))}_updateController(t,e,n,i){let r=t.controller;return r?(r=ii(wt(wt(wt({},e),t.props),r),{id:t.id,x:n.x,y:n.y,width:n.width,height:n.height}),i?i.setProps(r):i=this._createController(t,r),i):null}_rebuildViewports(){const{width:t,height:e,views:n}=this,i=this.controllers;this._viewports=[],this.controllers={};let r=!1;for(let s=n.length;s--;){const o=n[s],a=this.getViewState(o),l=o.makeViewport({width:t,height:e,viewState:a});let c=i[o.id];o.controller&&!c&&(r=!0),(r||!o.controller)&&c&&(c.finalize(),c=null),this.controllers[o.id]=this._updateController(o,a,l,c),this._viewports.unshift(l)}for(const s in i)i[s]&&!this.controllers[s]&&i[s].finalize();this._buildViewportMap()}_buildViewportMap(){this._viewportMap={},this._viewports.forEach(t=>{t.id&&(this._viewportMap[t.id]=this._viewportMap[t.id]||t)})}_diffViews(t,e){return t.length!==e.length||t.some((n,i)=>!t[i].equals(e[i]))}}class nI extends sM{constructor({makeViewport:t,width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o=0,pitch:a=0,altitude:l=1.5,maxZoom:c=20,minZoom:u=0,maxPitch:h=60,minPitch:d=0,startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y,normalize:v}={}){uE(Number.isFinite(r)),uE(Number.isFinite(i)),uE(Number.isFinite(s)),super({width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o,pitch:a,altitude:l,maxZoom:c,minZoom:u,maxPitch:h,minPitch:d,normalize:v}),this._state={startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanLngLat:this._unproject(t)})}pan({pos:t,startPos:e}){const n=this._state.startPanLngLat||this._unproject(e);if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanLngLat:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startBearing:this._viewportProps.bearing,startPitch:this._viewportProps.pitch})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startBearing:r,startPitch:s}=this._state;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let o;return o=t?this._calculateNewPitchAndBearing(ii(wt({},this._getRotationParams(t,i)),{startBearing:r,startPitch:s})):{bearing:r+e,pitch:s+n},this._getUpdatedState(o)}rotateEnd(){return this._getUpdatedState({startBearing:null,startPitch:null})}zoomStart({pos:t}){return this._getUpdatedState({startZoomLngLat:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){let{startZoom:i,startZoomLngLat:r}=this._state;Number.isFinite(i)||(i=this._viewportProps.zoom,r=this._unproject(e)||this._unproject(t));const s=this._calculateNewZoom({scale:n,startZoom:i}),o=this.makeViewport(ii(wt({},this._viewportProps),{zoom:s}));return this._getUpdatedState(wt({zoom:s},o.panByPosition(r,t)))}zoomEnd(){return this._getUpdatedState({startZoomLngLat:null,startZoom:null})}zoomIn(t=2){return this._zoomFromCenter(t)}zoomOut(t=2){return this._zoomFromCenter(1/t)}moveLeft(t=100){return this._panFromCenter([t,0])}moveRight(t=100){return this._panFromCenter([-t,0])}moveUp(t=100){return this._panFromCenter([0,t])}moveDown(t=100){return this._panFromCenter([0,-t])}rotateLeft(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing-t})}rotateRight(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing+t})}rotateUp(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch+t})}rotateDown(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch-t})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{bearing:i,longitude:r}=n;return Math.abs(i-e.bearing)>180&&(n.bearing=i<0?i+360:i-360),Math.abs(r-e.longitude)>180&&(n.longitude=r<0?r+360:r-360),n}_zoomFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.zoom({pos:[e/2,n/2],scale:t})}_panFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.pan({startPos:[e/2,n/2],pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new this.constructor(wt(wt(wt({makeViewport:this.makeViewport},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i}=t;t.zoom=LS(i,n,e);const{maxPitch:r,minPitch:s,pitch:o}=t;t.pitch=LS(o,s,r);const{normalize:a=!0}=t;return a&&Object.assign(t,function({width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s=0,bearing:o=0}){(n<-180||n>180)&&(n=vT(n+180,360)-180),(o<-180||o>180)&&(o=vT(o+180,360)-180);const a=_T(e/512);if(r<=a)r=a,i=0;else{const t=e/2/Math.pow(2,r),n=kT([0,t])[1];if(ie&&(i=e)}}return{width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s,bearing:o}}(t)),t}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return LS(e+Math.log2(t),i,n)}_calculateNewPitchAndBearing({deltaScaleX:t,deltaScaleY:e,startBearing:n,startPitch:i}){e=LS(e,-1,1);const{minPitch:r,maxPitch:s}=this._viewportProps;let o=i;return e>0?o=i+e*(s-i):e<0&&(o=i-e*(r-i)),{pitch:o,bearing:n+180*t}}_getRotationParams(t,e){const n=t[0]-e[0],i=t[1]-e[1],r=t[1],s=e[1],{width:o,height:a}=this._viewportProps,l=n/o;let c=0;return i>0?Math.abs(a-s)>5&&(c=i/(s-a)*1.2):i<0&&s>5&&(c=1-r/s),c=Math.min(1,Math.max(-1,c)),{deltaScaleX:l,deltaScaleY:c}}}class iI extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(nI,t)}setProps(t){const e=this.controllerStateProps;super.setProps(t),(!e||e.height!==t.height)&&this.updateViewport(new this.ControllerState(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state)))}get linearTransitionProps(){return["longitude","latitude","zoom","bearing","pitch"]}}let rI=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:qT}))}get controller(){return this._getControllerProps({type:iI})}}return t.displayName="MapView",t})();const sI=new $M;class oI{constructor(){this.effects=[],this._internalEffects=[],this._needsRedraw="Initial render",this.setEffects()}setProps(t){"effects"in t&&(t.effects.length!==this.effects.length||!zP(t.effects,this.effects))&&(this.setEffects(t.effects),this._needsRedraw="effects changed")}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}getEffects(){return this._internalEffects}finalize(){this.cleanup()}setEffects(t=[]){this.cleanup(),this.effects=t,this._createInternalEffects()}cleanup(){for(const t of this.effects)t.cleanup();for(const t of this._internalEffects)t.cleanup();this.effects.length=0,this._internalEffects.length=0}_createInternalEffects(){this._internalEffects=this.effects.slice(),this.effects.some(t=>t instanceof $M)||this._internalEffects.push(sI)}}class aI extends kM{}const lI={blendFunc:[1,0,32771,0],blendEquation:32774};class cI extends kM{render(t){t.pickingFBO?(this.useAlpha=!0,this._drawPickingBuffer(t)):(this.useAlpha=!1,super.render(t))}_drawPickingBuffer({layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pickingFBO:s,deviceRect:{x:o,y:a,width:l,height:c},pass:u="picking",redrawReason:h,pickZ:d}){const p=this.gl;return this.pickZ=d,vx(p,ii(wt({scissorTest:!0,scissor:[o,a,l,c],clearColor:[0,0,0,0],depthMask:!0,depthTest:!0,depthRange:[0,1],colorMask:[!0,!0,!0,!0]},lI),{blend:!d}),()=>{super.render({target:s,layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pass:u,redrawReason:h})})}shouldDrawLayer(t){return t.props.pickable}getModuleParameters(){return{pickingActive:1,pickingAttribute:this.pickZ,lightSources:{}}}getLayerParameters(t,e){const n=this.pickZ?{blend:!1}:ii(wt({},lI),{blend:!0,blendColor:[0,0,0,this.useAlpha?(e+1)/255:1]});return wt(wt({},t.props.parameters),n)}}class uI{constructor(t){this.gl=t,this.layerFilter=null,this.drawPickingColors=!1,this.drawLayersPass=new aI(t),this.pickLayersPass=new cI(t),this.renderCount=0,this._needsRedraw="Initial render",this.renderBuffers=[],this.lastPostProcessEffect=null}setProps(t){"layerFilter"in t&&this.layerFilter!==t.layerFilter&&(this.layerFilter=t.layerFilter,this._needsRedraw="layerFilter changed"),"drawPickingColors"in t&&this.drawPickingColors!==t.drawPickingColors&&(this.drawPickingColors=t.drawPickingColors,this._needsRedraw="drawPickingColors changed")}renderLayers(t){const e=this.drawPickingColors?this.pickLayersPass:this.drawLayersPass;t.layerFilter=this.layerFilter,t.effects=t.effects||[],t.target=t.target||SS.getDefaultFramebuffer(this.gl),this._preRender(t.effects,t);const n=this.lastPostProcessEffect?this.renderBuffers[0]:t.target,i=e.render(ii(wt({},t),{target:n}));this._postRender(t.effects,t),this.renderCount++,PE("deckRenderer.renderLayers",this,i,t)}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}finalize(){const{renderBuffers:t}=this;for(const e of t)e.delete();t.length=0}_preRender(t,e){let n=null;for(const i of t)i.preRender(this.gl,e),i.postRender&&(n=i);n&&this._resizeRenderBuffers(),this.lastPostProcessEffect=n}_resizeRenderBuffers(){const{renderBuffers:t}=this;0===t.length&&t.push(new SS(this.gl),new SS(this.gl));for(const e of t)e.resize()}_postRender(t,e){const{renderBuffers:n}=this,i={inputBuffer:n[0],swapBuffer:n[1],target:null};for(const r of t)if(r.postRender){if(r===this.lastPostProcessEffect){i.target=e.target,r.postRender(this.gl,i);break}const t=r.postRender(this.gl,i);i.inputBuffer=t,i.swapBuffer=t===n[0]?n[1]:n[0]}}}const hI={pickedColor:null,pickedLayer:null,pickedObjectIndex:-1};function dI({pickedColors:t,layers:e,deviceX:n,deviceY:i,deviceRadius:r,deviceRect:s}){if(t){const{x:o,y:a,width:l,height:c}=s;let u=r*r,h=-1,d=0;for(let e=0;eu)d+=4*l;else for(let e=0;e=0){const t=e+o-n,i=t*t+s;i<=u&&(u=i,h=d)}d+=4}}if(h>=0){const n=t[h+3]-1,i=t.slice(h,h+4),r=e[n];if(r){const t=r.decodePickingColor(i),e=Math.floor(h/4/l);return{pickedColor:i,pickedLayer:r,pickedObjectIndex:t,pickedX:o+(h/4-e*l),pickedY:a+e}}Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}return hI}function pI({pickInfo:t,mode:e,viewports:n,layerFilter:i,pixelRatio:r,x:s,y:o,z:a}){const l=t&&t.pickedLayer,c=function(t,e,n){for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.containsPixel(e)&&(!n||n(r)))return r}return t[0]}(n,{x:s,y:o},i&&l&&(t=>i({layer:l,viewport:t,isPicking:!0,renderPass:"picking:".concat(e)}))),u=c&&c.unproject([s-c.x,o-c.y],{targetZ:a});return{color:null,layer:null,viewport:c,index:-1,picked:!1,x:s,y:o,pixel:[s,o],coordinate:u,devicePixel:t&&[t.pickedX,t.pickedY],pixelRatio:r}}function fI(t){const{pickInfo:e,lastPickedInfo:n,mode:i,layers:r}=t,{pickedColor:s,pickedLayer:o,pickedObjectIndex:a}=e,l=o?[o]:[];if("hover"===i){const t=n.index,e=n.layerId,i=o&&o.props.id;if(i!==e||a!==t){if(i!==e){const t=r.find(t=>t.props.id===e);t&&l.unshift(t)}n.layerId=i,n.index=a,n.info=null}}const c=pI(t),u=new Map;return u.set(null,c),l.forEach(t=>{let e=wt({},c);t===o&&(e.color=s,e.index=a,e.picked=!0),e=gI({layer:t,info:e,mode:i}),t===o&&"hover"===i&&(n.info=e),u.set(e.layer.id,e),"hover"===i&&e.layer.updateAutoHighlight(e)}),u}function gI({layer:t,info:e,mode:n}){for(;t&&e;){const i=e.layer||null;e.sourceLayer=i,e.layer=t,e=t.getPickingInfo({info:e,mode:n,sourceLayer:i}),t=t.parent}return e}class mI{constructor(t){this.gl=t,this.pickingFBO=null,this.pickLayersPass=new cI(t),this.layerFilter=null,this.lastPickedInfo={index:-1,layerId:null,info:null}}setProps(t){"layerFilter"in t&&(this.layerFilter=t.layerFilter),"_pickable"in t&&(this._pickable=t._pickable)}finalize(){this.pickingFBO&&this.pickingFBO.delete(),this.depthFBO&&(this.depthFBO.color.delete(),this.depthFBO.delete())}pickObject(t){return this._pickClosestObject(t)}pickObjects(t){return this._pickVisibleObjects(t)}getLastPickedObject({x:t,y:e,layers:n,viewports:i},r=this.lastPickedInfo.info){const s=r&&r.layer&&r.layer.id,o=r&&r.viewport&&r.viewport.id,a=s?n.find(t=>t.id===s):null,l=o&&i.find(t=>t.id===o)||i[0],c=l&&l.unproject([t-l.x,e-l.y]),u={x:t,y:e,viewport:l,coordinate:c,layer:a};return a?wt(wt({},r),u):Object.assign(u,{color:null,object:null,index:-1})}_resizeBuffer(){const{gl:t}=this;return this.pickingFBO||(this.pickingFBO=new SS(t),SS.isSupported(t,{colorBufferFloat:!0})&&(this.depthFBO=new SS(t),this.depthFBO.attach({36064:new lS(t,{format:Fw(t)?34836:6408,type:5126})}))),this.pickingFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.depthFBO&&this.depthFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.pickingFBO}_getPickable(t){if(!1===this._pickable)return null;const e=t.filter(t=>t.isPickable()&&!t.isComposite);return e.length>255?(Mw.warn("Too many pickable layers, only picking the first 255")(),e.slice(0,255)):e.length?e:null}_pickClosestObject({layers:t,views:e,viewports:n,x:i,y:r,radius:s=0,depth:o=1,mode:a="query",unproject3D:l,onViewportActive:c}){if(!(t=this._getPickable(t)))return{result:[],emptyInfo:pI({viewports:n,x:i,y:r})};this._resizeBuffer();const u=_x(this.gl),h=wx(this.gl,[i,r],!0),d=[h.x+Math.floor(h.width/2),h.y+Math.floor(h.height/2)],p=Math.round(s*u),{width:f,height:g}=this.pickingFBO,m=this._getPickingRect({deviceX:d[0],deviceY:d[1],deviceRadius:p,deviceWidth:f,deviceHeight:g});let b;const y=[],v={};for(let _=0;_=0){const s=t.slice(i,i+4),o=s.join(",");if(!n.has(o)){const t=e[r];t?n.set(o,{pickedColor:s,pickedLayer:t,pickedObjectIndex:t.decodePickingColor(s)}):Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}}return Array.from(n.values())}({pickedColors:this._drawAndSample({layers:t,views:e,viewports:n,onViewportActive:c,deviceRect:{x:d,y:g,width:f.x+f.width-d,height:p-g},pass:"picking:".concat(a),redrawReason:a}),layers:t}),b=new Map,y=Number.isFinite(l);for(let v=0;v=l);v++){const t=m[v];let e={color:t.pickedColor,layer:null,index:t.pickedObjectIndex,picked:!0,x:i,y:r,width:s,height:o,pixelRatio:u};e=gI({layer:t.pickedLayer,info:e,mode:a}),b.has(e.object)||b.set(e.object,e)}return Array.from(b.values())}_drawAndSample({layers:t,views:e,viewports:n,onViewportActive:i,deviceRect:r,pass:s,redrawReason:o,pickZ:a}){if(t.length<1)return null;const l=a?this.depthFBO:this.pickingFBO;this.pickLayersPass.render({layers:t,layerFilter:this.layerFilter,views:e,viewports:n,onViewportActive:i,pickingFBO:l,deviceRect:r,pass:s,redrawReason:o,pickZ:a});const{x:c,y:u,width:h,height:d}=r,p=new(a?Float32Array:Uint8Array)(h*d*4);return _S(l,{sourceX:c,sourceY:u,sourceWidth:h,sourceHeight:d,target:p}),p}_getPickingRect({deviceX:t,deviceY:e,deviceRadius:n,deviceWidth:i,deviceHeight:r}){const s=Math.max(0,t-n),o=Math.max(0,e-n),a=Math.min(i,t+n+1)-s,l=Math.min(r,e+n+1)-o;return a<=0||l<=0?null:{x:s,y:o,width:a,height:l}}}const bI={zIndex:1,position:"absolute",pointerEvents:"none",color:"#a0a7b4",backgroundColor:"#29323c",padding:"10px",top:0,left:0,display:"none"};class yI{constructor(t){const e=t.parentElement;e&&(this.el=document.createElement("div"),this.el.className="deck-tooltip",Object.assign(this.el.style,bI),e.appendChild(this.el)),this.isVisible=!1}setTooltip(t,e,n){const i=this.el;if("string"==typeof t)i.innerText=t;else{if(!t)return this.isVisible=!1,void(i.style.display="none");"text"in t&&(i.innerText=t.text),"html"in t&&(i.innerHTML=t.html),"className"in t&&(i.className=t.className),Object.assign(i.style,t.style)}this.isVisible=!0,i.style.display="block",i.style.transform="translate(".concat(e,"px, ").concat(n,"px)")}remove(){this.el&&this.el.remove()}}function vI(t,e){if(!t)throw new Error(e)}const _I={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},wI=_I.global||_I.self||_I.window,xI="object"!=typeof process||"[object process]"!==String(process)||process.browser,SI="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),{_parseImageNode:EI}=(SI&&parseFloat(SI[1]),wI),CI="undefined"!=typeof Image,OI="undefined"!=typeof ImageBitmap,TI=Boolean(EI),kI=!!xI||TI;function AI(t){const e=function(t){return"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?"imagebitmap":"undefined"!=typeof Image&&t instanceof Image?"image":t&&"object"==typeof t&&t.data&&t.width&&t.height?"data":null}(t);if(!e)throw new Error("Not an image");return e}function PI(t){switch(AI(t)){case"data":return t;case"image":case"imagebitmap":const e=document.createElement("canvas"),n=e.getContext("2d");if(!n)throw new Error("getImageData");return e.width=t.width,e.height=t.height,n.drawImage(t,0,0),n.getImageData(0,0,t.width,t.height);default:throw new Error("getImageData")}}const MI=/^data:image\/svg\+xml/,II=/\.svg((\?|#).*)?$/;function DI(t){return t&&(MI.test(t)||II.test(t))}function RI(t,e){if(DI(e)){let e=(new TextDecoder).decode(t);try{"function"==typeof unescape&&"function"==typeof encodeURIComponent&&(e=unescape(encodeURIComponent(e)))}catch(n){throw new Error(n.message)}return`data:image/svg+xml;base64,${btoa(e)}`}return NI(t,e)}function NI(t,e){if(DI(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}function LI(t,e,n){return jI.apply(this,arguments)}function jI(){return(jI=gS(function*(t,e,n){const i=RI(t,n),r=self.URL||self.webkitURL,s="string"!=typeof i&&r.createObjectURL(i);try{return yield FI(s||i,e)}finally{s&&r.revokeObjectURL(s)}})).apply(this,arguments)}function FI(t,e){return BI.apply(this,arguments)}function BI(){return(BI=gS(function*(t,e){const n=new Image;return n.src=t,e.image&&e.image.decode&&n.decode?(yield n.decode(),n):yield new Promise((e,i)=>{try{n.onload=()=>e(n),n.onerror=e=>i(new Error(`Could not load image ${t}: ${e}`))}catch(r){i(r)}})})).apply(this,arguments)}const VI={};let zI=!0;function UI(t,e,n){return HI.apply(this,arguments)}function HI(){return(HI=gS(function*(t,e,n){let i;i=DI(n)?yield LI(t,e,n):NI(t,n);const r=e&&e.imagebitmap;return yield $I(i,r)})).apply(this,arguments)}function $I(t){return GI.apply(this,arguments)}function GI(){return(GI=gS(function*(t,e=null){if((WI(e)||!zI)&&(e=null),e)try{return yield createImageBitmap(t,e)}catch(n){console.warn(n),zI=!1}return yield createImageBitmap(t)})).apply(this,arguments)}function WI(t){for(const e in t||VI)return!1;return!0}const qI=!1,XI=!0;function YI(t){const e=KI(t);return function(t){const e=KI(t);return e.byteLength>=24&&2303741511===e.getUint32(0,qI)?{mimeType:"image/png",width:e.getUint32(16,qI),height:e.getUint32(20,qI)}:null}(e)||function(t){const e=KI(t);if(!(e.byteLength>=3&&65496===e.getUint16(0,qI)&&255===e.getUint8(2)))return null;const{tableMarkers:n,sofMarkers:i}=function(){const t=new Set([65499,65476,65484,65501,65534]);for(let e=65504;e<65520;++e)t.add(e);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}();let r=2;for(;r+9=10&&1195984440===e.getUint32(0,qI)?{mimeType:"image/gif",width:e.getUint16(6,XI),height:e.getUint16(8,XI)}:null}(e)||function(t){const e=KI(t);return e.byteLength>=14&&16973===e.getUint16(0,qI)&&e.getUint32(2,XI)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,XI),height:e.getUint32(22,XI)}:null}(e)}function KI(t){if(t instanceof DataView)return t;if(ArrayBuffer.isView(t))return new DataView(t.buffer);if(t instanceof ArrayBuffer)return new DataView(t);throw new Error("toDataView")}function QI(t,e){const{mimeType:n}=YI(t)||{},{_parseImageNode:i}=wI;return vI(i),i(t,n,e)}function ZI(){return(ZI=gS(function*(t,e,n){const i=((e=e||{}).image||{}).type||"auto",{url:r}=n||{};let s;switch(JI(i)){case"imagebitmap":s=yield UI(t,e,r);break;case"image":s=yield LI(t,e,r);break;case"data":s=yield QI(t,e);break;default:vI(!1)}return"data"===i&&(s=PI(s)),s})).apply(this,arguments)}function JI(t){switch(t){case"auto":case"data":return function(){if(OI)return"imagebitmap";if(CI)return"image";if(kI)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}();default:return function(t){switch(t){case"auto":return OI||CI||kI;case"imagebitmap":return OI;case"image":return CI;case"data":return kI;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}(t),t}}const tD={id:"image",module:"images",name:"Images",version:"3.0.12",mimeTypes:["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],extensions:["png","jpg","jpeg","gif","webp","bmp","ico","svg"],parse:function(t,e,n){return ZI.apply(this,arguments)},tests:[t=>Boolean(YI(new DataView(t)))],options:{image:{type:"auto",decode:!0}}};var eD={name:"JSON",extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:function(t){const e=t[0],n=t[t.length-1];return"{"===e&&"}"===n||"["===e&&"]"===n},parseTextSync:JSON.parse};const nD="8.5.8",iD=zw.CO.deck&&zw.CO.deck.VERSION;if(iD&&iD!==nD)throw new Error("deck.gl - multiple versions detected: ".concat(iD," vs ").concat(nD));iD||(Mw.log(1,"deck.gl ".concat(nD))(),zw.CO.deck=Object.assign(zw.CO.deck||{},{VERSION:nD,version:nD,log:Mw,_registerLoggers:function(t){AE=t}}),fP([eD,[tD,{imagebitmap:{premultiplyAlpha:"none"}}]]));var rD=zw.CO.deck;class sD extends Hx{static isSupported(t,e=[]){const n=Fw(t),i=OS(t,"TIMER_QUERY");let r=n||i;for(const s of e)switch(s){case"queries":r=r&&n;break;case"timers":r=r&&i;break;default:Rx(!1)}return r}constructor(t,e={}){super(t,e),this.target=null,this._queryPending=!1,this._pollingPromise=null,Object.seal(this)}beginTimeElapsedQuery(){return this.begin(35007)}beginOcclusionQuery({conservative:t=!1}={}){return this.begin(t?36202:35887)}beginTransformFeedbackQuery(){return this.begin(35976)}begin(t){return this._queryPending||(this.target=t,this.gl2.beginQuery(this.target,this.handle)),this}end(){return this._queryPending||this.target&&(this.gl2.endQuery(this.target),this.target=null,this._queryPending=!0),this}isResultAvailable(){if(!this._queryPending)return!1;const t=this.gl2.getQueryParameter(this.handle,34919);return t&&(this._queryPending=!1),t}isTimerDisjoint(){return this.gl2.getParameter(36795)}getResult(){return this.gl2.getQueryParameter(this.handle,34918)}getTimerMilliseconds(){return this.getResult()/1e6}createPoll(t=Number.POSITIVE_INFINITY){if(this._pollingPromise)return this._pollingPromise;let e=0;return this._pollingPromise=new Promise((n,i)=>{const r=()=>{this.isResultAvailable()?(n(this.getResult()),this._pollingPromise=null):e++>t?(i("Timed out"),this._pollingPromise=null):requestAnimationFrame(r)};requestAnimationFrame(r)}),this._pollingPromise}_createHandle(){return sD.isSupported(this.gl)?this.gl2.createQuery():null}_deleteHandle(){this.gl2.deleteQuery(this.handle)}}const oD=(0,zw.jU)()&&"undefined"!=typeof document;let aD=0;class lD{constructor(t={}){const{onCreateContext:e=(t=>Tx(t)),onAddHTML:n=null,onInitialize:i=(()=>{}),onRender:r=(()=>{}),onFinalize:s=(()=>{}),onError:o,gl:a=null,glOptions:l={},debug:c=!1,createFramebuffer:u=!1,autoResizeViewport:h=!0,autoResizeDrawingBuffer:d=!0,stats:p=Dx.get("animation-loop-"+aD++)}=t;let{useDevicePixels:f=!0}=t;"useDevicePixelRatio"in t&&(Nw.deprecated("useDevicePixelRatio","useDevicePixels")(),f=t.useDevicePixelRatio),this.props={onCreateContext:e,onAddHTML:n,onInitialize:i,onRender:r,onFinalize:s,onError:o,gl:a,glOptions:l,debug:c,createFramebuffer:u},this.gl=a,this.needsRedraw=null,this.timeline=null,this.stats=p,this.cpuTime=this.stats.get("CPU Time"),this.gpuTime=this.stats.get("GPU Time"),this.frameRate=this.stats.get("Frame Rate"),this._initialized=!1,this._running=!1,this._animationFrameId=null,this._nextFramePromise=null,this._resolveNextFrame=null,this._cpuStartTime=0,this.setProps({autoResizeViewport:h,autoResizeDrawingBuffer:d,useDevicePixels:f}),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this._pageLoadPromise=null,this._onMousemove=this._onMousemove.bind(this),this._onMouseleave=this._onMouseleave.bind(this)}delete(){this.stop(),this._setDisplay(null)}setNeedsRedraw(t){return Rx("string"==typeof t),this.needsRedraw=this.needsRedraw||t,this}setProps(t){return"autoResizeViewport"in t&&(this.autoResizeViewport=t.autoResizeViewport),"autoResizeDrawingBuffer"in t&&(this.autoResizeDrawingBuffer=t.autoResizeDrawingBuffer),"useDevicePixels"in t&&(this.useDevicePixels=t.useDevicePixels),this}start(t={}){if(this._running)return this;this._running=!0;const e=this._getPageLoadPromise().then(()=>!this._running||this._initialized?null:(this._createWebGLContext(t),this._createFramebuffer(),this._startEventHandling(),this._initializeCallbackData(),this._updateCallbackData(),this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._gpuTimeQuery=sD.isSupported(this.gl,["timers"])?new sD(this.gl):null,this._initialized=!0,this.onInitialize(this.animationProps))).then(t=>{this._running&&(this._addCallbackData(t||{}),!1!==t&&this._startLoop())});return this.props.onError&&e.catch(this.props.onError),this}redraw(){return this.isContextLost()||(this._beginTimers(),this._setupFrame(),this._updateCallbackData(),this._renderFrame(this.animationProps),this._clearNeedsRedraw(),this.offScreen&&this.gl.commit&&this.gl.commit(),this._resolveNextFrame&&(this._resolveNextFrame(this),this._nextFramePromise=null,this._resolveNextFrame=null),this._endTimers()),this}stop(){return this._running&&(this._finalizeCallbackData(),this._cancelAnimationFrame(this._animationFrameId),this._nextFramePromise=null,this._resolveNextFrame=null,this._animationFrameId=null,this._running=!1),this}attachTimeline(t){return this.timeline=t,this.timeline}detachTimeline(){this.timeline=null}waitForRender(){return this.setNeedsRedraw("waitForRender"),this._nextFramePromise||(this._nextFramePromise=new Promise(t=>{this._resolveNextFrame=t})),this._nextFramePromise}toDataURL(){var t=this;return gS(function*(){return t.setNeedsRedraw("toDataURL"),yield t.waitForRender(),t.gl.canvas.toDataURL()})()}isContextLost(){return this.gl.isContextLost()}onCreateContext(...t){return this.props.onCreateContext(...t)}onInitialize(...t){return this.props.onInitialize(...t)}onRender(...t){return this.props.onRender(...t)}onFinalize(...t){return this.props.onFinalize(...t)}getHTMLControlValue(t,e=1){const n=document.getElementById(t);return n?Number(n.value):e}setViewParameters(){return Nw.removed("AnimationLoop.setViewParameters","AnimationLoop.setProps")(),this}_startLoop(){const t=()=>{!this._running||(this.redraw(),this._animationFrameId=this._requestAnimationFrame(t))};this._cancelAnimationFrame(this._animationFrameId),this._animationFrameId=this._requestAnimationFrame(t)}_getPageLoadPromise(){return this._pageLoadPromise||(this._pageLoadPromise=oD?new Promise((t,e)=>{oD&&"complete"===document.readyState?t(document):window.addEventListener("load",()=>{t(document)})}):Promise.resolve({})),this._pageLoadPromise}_setDisplay(t){this.display&&(this.display.delete(),this.display.animationLoop=null),t&&(t.animationLoop=this),this.display=t}_cancelAnimationFrame(t){return this.display&&this.display.cancelAnimationFrame?this.display.cancelAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.cancelAnimationFrame?window.cancelAnimationFrame(t):clearTimeout(t)}(t)}_requestAnimationFrame(t){if(this._running)return this.display&&this.display.requestAnimationFrame?this.display.requestAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame(t):setTimeout(t,1e3/60)}(t)}_renderFrame(...t){this.display?this.display._renderFrame(...t):this.onRender(...t)}_clearNeedsRedraw(){this.needsRedraw=null}_setupFrame(){this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._resizeFramebuffer()}_initializeCallbackData(){this.animationProps={gl:this.gl,stop:this.stop,canvas:this.gl.canvas,framebuffer:this.framebuffer,useDevicePixels:this.useDevicePixels,needsRedraw:null,startTime:Date.now(),engineTime:0,tick:0,tock:0,time:0,_timeline:this.timeline,_loop:this,_animationLoop:this,_mousePosition:null}}_updateCallbackData(){const{width:t,height:e,aspect:n}=this._getSizeAndAspect();(t!==this.animationProps.width||e!==this.animationProps.height)&&this.setNeedsRedraw("drawing buffer resized"),n!==this.animationProps.aspect&&this.setNeedsRedraw("drawing buffer aspect changed"),this.animationProps.width=t,this.animationProps.height=e,this.animationProps.aspect=n,this.animationProps.needsRedraw=this.needsRedraw,this.animationProps.engineTime=Date.now()-this.animationProps.startTime,this.timeline&&this.timeline.update(this.animationProps.engineTime),this.animationProps.tick=Math.floor(this.animationProps.time/1e3*60),this.animationProps.tock++,this.animationProps.time=this.timeline?this.timeline.getTime():this.animationProps.engineTime,this.animationProps._offScreen=this.offScreen}_finalizeCallbackData(){this.onFinalize(this.animationProps)}_addCallbackData(t){"object"==typeof t&&null!==t&&(this.animationProps=Object.assign({},this.animationProps,t))}_createWebGLContext(t){if(this.offScreen=t.canvas&&"undefined"!=typeof OffscreenCanvas&&t.canvas instanceof OffscreenCanvas,t=Object.assign({},t,this.props.glOptions),this.gl=this.props.gl?kx(this.props.gl,t):this.onCreateContext(t),!jw(this.gl))throw new Error("AnimationLoop.onCreateContext - illegal context returned");(function(t){yx(t,tx)})(this.gl),this._createInfoDiv()}_createInfoDiv(){if(this.gl.canvas&&this.props.onAddHTML){const t=document.createElement("div");document.body.appendChild(t),t.style.position="relative";const e=document.createElement("div");e.style.position="absolute",e.style.left="10px",e.style.bottom="10px",e.style.width="300px",e.style.background="white",t.appendChild(this.gl.canvas),t.appendChild(e);const n=this.props.onAddHTML(e);n&&(e.innerHTML=n)}}_getSizeAndAspect(){const t=this.gl.drawingBufferWidth,e=this.gl.drawingBufferHeight;let n=1;const{canvas:i}=this.gl;return i&&i.clientHeight?n=i.clientWidth/i.clientHeight:t>0&&e>0&&(n=t/e),{width:t,height:e,aspect:n}}_resizeViewport(){this.autoResizeViewport&&this.gl.viewport(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight)}_resizeCanvasDrawingBuffer(){this.autoResizeDrawingBuffer&&function(t,e={}){if(t.canvas)return void function(t,e,n){let i="width"in n?n.width:t.canvas.clientWidth,r="height"in n?n.height:t.canvas.clientHeight;(!i||!r)&&(Nw.log(1,"Canvas clientWidth/clientHeight is 0")(),e=1,i=t.canvas.width||1,r=t.canvas.height||1),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{};const s=t.luma.canvasSizeInfo;if(s.clientWidth!==i||s.clientHeight!==r||s.devicePixelRatio!==e){let n=e;const s=Math.floor(i*n),o=Math.floor(r*n);t.canvas.width=s,t.canvas.height=o,(t.drawingBufferWidth!==s||t.drawingBufferHeight!==o)&&(Nw.warn("Device pixel ratio clamped")(),n=Math.min(t.drawingBufferWidth/i,t.drawingBufferHeight/r),t.canvas.width=Math.floor(i*n),t.canvas.height=Math.floor(r*n)),Object.assign(t.luma.canvasSizeInfo,{clientWidth:i,clientHeight:r,devicePixelRatio:e})}}(t,function(t){const e="undefined"==typeof window?1:window.devicePixelRatio||1;return Number.isFinite(t)?t<=0?1:t:t?e:1}(e.useDevicePixels),e);const n=t.getExtension("STACKGL_resize_drawingbuffer");n&&"width"in e&&"height"in e&&n.resize(e.width,e.height)}(this.gl,{useDevicePixels:this.useDevicePixels})}_createFramebuffer(){this.props.createFramebuffer&&(this.framebuffer=new SS(this.gl))}_resizeFramebuffer(){this.framebuffer&&this.framebuffer.resize({width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight})}_beginTimers(){this.frameRate.timeEnd(),this.frameRate.timeStart(),this._gpuTimeQuery&&this._gpuTimeQuery.isResultAvailable()&&!this._gpuTimeQuery.isTimerDisjoint()&&this.stats.get("GPU Time").addTime(this._gpuTimeQuery.getTimerMilliseconds()),this._gpuTimeQuery&&this._gpuTimeQuery.beginTimeElapsedQuery(),this.cpuTime.timeStart()}_endTimers(){this.cpuTime.timeEnd(),this._gpuTimeQuery&&this._gpuTimeQuery.end()}_startEventHandling(){const{canvas:t}=this.gl;t&&(t.addEventListener("mousemove",this._onMousemove),t.addEventListener("mouseleave",this._onMouseleave))}_onMousemove(t){this.animationProps._mousePosition=[t.offsetX,t.offsetY]}_onMouseleave(t){this.animationProps._mousePosition=null}}var cD=n(11524),uD=n.n(cD);const hD={mousedown:1,mousemove:2,mouseup:4};(function(t){const e=t.prototype.handler;t.prototype.handler=function(t){const n=this.store;t.button>0&&"pointerdown"===t.type&&(function(e,n){for(let i=0;i=0&&(this.pressed=!0),2&e&&0===t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:"mouse",srcEvent:t}))}}(uD().MouseInput);const dD=uD().Manager;var pD=uD();const fD=pD?[[pD.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[pD.Rotate,{enable:!1}],[pD.Pinch,{enable:!1}],[pD.Swipe,{enable:!1}],[pD.Pan,{threshold:0,enable:!1}],[pD.Press,{enable:!1}],[pD.Tap,{event:"doubletap",taps:2,enable:!1}],[pD.Tap,{event:"anytap",enable:!1}],[pD.Tap,{enable:!1}]]:null,gD={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},mD={doubletap:["tap"]},bD={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},yD={KEY_EVENTS:["keydown","keyup"],MOUSE_EVENTS:["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],WHEEL_EVENTS:["wheel","mousewheel"]},vD={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},_D={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},wD="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",xD="undefined"!=typeof window?window:global;"undefined"!=typeof global?global:window,"undefined"!=typeof document&&document;let SD=!1;try{const t={get passive(){return SD=!0,!0}};xD.addEventListener("test",t,t),xD.removeEventListener("test",t,t)}catch(m){}const ED=-1!==wD.indexOf("firefox"),{WHEEL_EVENTS:CD}=yD,OD=4.000244140625;class TD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.events=CD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent,!!SD&&{passive:!1}))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){"wheel"===t&&(this.options.enable=e)}handleEvent(t){if(!this.options.enable)return;let e=t.deltaY;xD.WheelEvent&&(ED&&t.deltaMode===xD.WheelEvent.DOM_DELTA_PIXEL&&(e/=xD.devicePixelRatio),t.deltaMode===xD.WheelEvent.DOM_DELTA_LINE&&(e*=40));const n={x:t.clientX,y:t.clientY};0!==e&&e%OD==0&&(e=Math.floor(e/OD)),t.shiftKey&&e&&(e*=.25),this._onWheel(t,-e,n)}_onWheel(t,e,n){this.callback({type:"wheel",center:n,delta:e,srcEvent:t,pointerType:"mouse",target:t.target})}}const{MOUSE_EVENTS:kD}=yD,AD="pointermove",PD="pointerover",MD="pointerout",ID="pointerleave";class DD{constructor(t,e,n={}){this.element=t,this.callback=e,this.pressed=!1,this.options=Object.assign({enable:!0},n),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=kD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===AD&&(this.enableMoveEvent=e),t===PD&&(this.enableOverEvent=e),t===MD&&(this.enableOutEvent=e),t===ID&&(this.enableLeaveEvent=e)}handleEvent(t){this.handleOverEvent(t),this.handleOutEvent(t),this.handleLeaveEvent(t),this.handleMoveEvent(t)}handleOverEvent(t){this.enableOverEvent&&"mouseover"===t.type&&this.callback({type:PD,srcEvent:t,pointerType:"mouse",target:t.target})}handleOutEvent(t){this.enableOutEvent&&"mouseout"===t.type&&this.callback({type:MD,srcEvent:t,pointerType:"mouse",target:t.target})}handleLeaveEvent(t){this.enableLeaveEvent&&"mouseleave"===t.type&&this.callback({type:ID,srcEvent:t,pointerType:"mouse",target:t.target})}handleMoveEvent(t){if(this.enableMoveEvent)switch(t.type){case"mousedown":t.button>=0&&(this.pressed=!0);break;case"mousemove":0===t.which&&(this.pressed=!1),this.pressed||this.callback({type:AD,srcEvent:t,pointerType:"mouse",target:t.target});break;case"mouseup":this.pressed=!1}}}const{KEY_EVENTS:RD}=yD,ND="keydown";class LD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=RD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),t.tabIndex=n.tabIndex||0,t.style.outline="none",this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===ND&&(this.enableDownEvent=e),"keyup"===t&&(this.enableUpEvent=e)}handleEvent(t){const e=t.target||t.srcElement;"INPUT"===e.tagName&&"text"===e.type||"TEXTAREA"===e.tagName||(this.enableDownEvent&&"keydown"===t.type&&this.callback({type:ND,srcEvent:t,key:t.key,target:t.target}),this.enableUpEvent&&"keyup"===t.type&&this.callback({type:"keyup",srcEvent:t,key:t.key,target:t.target}))}}const jD="contextmenu";class FD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.handleEvent=this.handleEvent.bind(this),t.addEventListener("contextmenu",this.handleEvent)}destroy(){this.element.removeEventListener("contextmenu",this.handleEvent)}enableEventType(t,e){t===jD&&(this.options.enable=e)}handleEvent(t){!this.options.enable||this.callback({type:jD,center:{x:t.clientX,y:t.clientY},srcEvent:t,pointerType:"mouse",target:t.target})}}const BD={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4},VD={srcElement:"root",priority:0};class zD{constructor(t){this.eventManager=t,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}isEmpty(){return!this._active}add(t,e,n,i=!1,r=!1){const{handlers:s,handlersByElement:o}=this;n&&("object"!=typeof n||n.addEventListener)&&(n={srcElement:n}),n=n?Object.assign({},VD,n):VD;let a=o.get(n.srcElement);a||(a=[],o.set(n.srcElement,a));const l={type:t,handler:e,srcElement:n.srcElement,priority:n.priority};i&&(l.once=!0),r&&(l.passive=!0),s.push(l),this._active=this._active||!l.passive;let c=a.length-1;for(;c>=0&&!(a[c].priority>=l.priority);)c--;a.splice(c+1,0,l)}remove(t,e){const{handlers:n,handlersByElement:i}=this;for(let r=n.length-1;r>=0;r--){const s=n[r];if(s.type===t&&s.handler===e){n.splice(r,1);const t=i.get(s.srcElement);t.splice(t.indexOf(s),1),0===t.length&&i.delete(s.srcElement)}}this._active=n.some(t=>!t.passive)}handleEvent(t){if(this.isEmpty())return;const e=this._normalizeEvent(t);let n=t.srcEvent.target;for(;n&&n!==e.rootElement;){if(this._emit(e,n),e.handled)return;n=n.parentNode}this._emit(e,"root")}_emit(t,e){const n=this.handlersByElement.get(e);if(n){let e=!1;const i=()=>{t.handled=!0},r=()=>{t.handled=!0,e=!0},s=[];for(let o=0;o{const e=this.manager.get(t);e&&gD[t].forEach(t=>{e.recognizeWith(t)})});for(const n in e.recognizerOptions){const t=this.manager.get(n);if(t){const i=e.recognizerOptions[n];delete i.enable,t.set(i)}}this.wheelInput=new TD(t,this._onOtherEvent,{enable:!1}),this.moveInput=new DD(t,this._onOtherEvent,{enable:!1}),this.keyInput=new LD(t,this._onOtherEvent,{enable:!1,tabIndex:e.tabIndex}),this.contextmenuInput=new FD(t,this._onOtherEvent,{enable:!1});for(const[n,i]of this.events)i.isEmpty()||(this._toggleRecognizer(i.recognizerName,!0),this.manager.on(n,i.handleEvent))}destroy(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}on(t,e,n){this._addEventHandler(t,e,n,!1)}once(t,e,n){this._addEventHandler(t,e,n,!0)}watch(t,e,n){this._addEventHandler(t,e,n,!1,!0)}off(t,e){this._removeEventHandler(t,e)}_toggleRecognizer(t,e){const{manager:n}=this;if(!n)return;const i=n.get(t);if(i&&i.options.enable!==e){i.set({enable:e});const r=mD[t];r&&!this.options.recognizers&&r.forEach(r=>{const s=n.get(r);e?(s.requireFailure(t),i.dropRequireFailure(r)):s.dropRequireFailure(t)})}this.wheelInput.enableEventType(t,e),this.moveInput.enableEventType(t,e),this.keyInput.enableEventType(t,e),this.contextmenuInput.enableEventType(t,e)}_addEventHandler(t,e,n,i,r){if("string"!=typeof t){n=e;for(const e in t)this._addEventHandler(e,t[e],n,i,r);return}const{manager:s,events:o}=this,a=_D[t]||t;let l=o.get(a);l||(l=new zD(this),o.set(a,l),l.recognizerName=vD[a]||a,s&&s.on(a,l.handleEvent)),l.add(t,e,n,i,r),l.isEmpty()||this._toggleRecognizer(l.recognizerName,!0)}_removeEventHandler(t,e){if("string"!=typeof t){for(const e in t)this._removeEventHandler(e,t[e]);return}const{events:n}=this,i=n.get(_D[t]||t);if(i&&(i.remove(t,e),i.isEmpty())){const{recognizerName:t}=i;let e=!1;for(const i of n.values())if(i.recognizerName===t&&!i.isEmpty()){e=!0;break}e||this._toggleRecognizer(t,!1)}}_onBasicInput(t){const{srcEvent:e}=t,n=bD[e.type];n&&this.manager.emit(n,t)}_onOtherEvent(t){this.manager.emit(t.type,t)}}function $D(){}const GD={id:"",width:"100%",height:"100%",pickingRadius:0,layerFilter:null,glOptions:{},gl:null,layers:[],effects:[],views:null,controller:null,useDevicePixels:!0,touchAction:"none",eventRecognizerOptions:{},_framebuffer:null,_animate:!1,_pickable:!0,_typedArrayManagerProps:{},onWebGLInitialized:$D,onResize:$D,onViewStateChange:$D,onInteractionStateChange:$D,onBeforeRender:$D,onAfterRender:$D,onLoad:$D,onError:(t,e)=>Mw.error(t)(),_onMetrics:null,getCursor:({isDragging:t})=>t?"grabbing":"grab",debug:!1,drawPickingColors:!1};class WD{constructor(t){t=wt(wt({},GD),t),this.props={},this.width=0,this.height=0,this.viewManager=null,this.layerManager=null,this.effectManager=null,this.deckRenderer=null,this.deckPicker=null,this._needsRedraw=!0,this._pickRequest={},this._lastPointerDownInfo=null,this.viewState=null,this.interactiveState={isHovering:!1,isDragging:!1},this._onEvent=this._onEvent.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),t.viewState&&t.initialViewState&&Mw.warn("View state tracking is disabled. Use either `initialViewState` for auto update or `viewState` for manual update.")(),"IE"===(0,zw.qs)()&&Mw.warn("IE 11 support will be deprecated in v8.0")(),t.gl||"undefined"!=typeof document&&(this.canvas=this._createCanvas(t)),this.animationLoop=this._createAnimationLoop(t),this.stats=new Mx({id:"deck.gl"}),this.metrics={fps:0,setPropsTime:0,updateAttributesTime:0,framesRedrawn:0,pickTime:0,pickCount:0,gpuTime:0,gpuTimePerFrame:0,cpuTime:0,cpuTimePerFrame:0,bufferMemory:0,textureMemory:0,renderbufferMemory:0,gpuMemory:0},this._metricsCounter=0,this.setProps(t),t._typedArrayManagerProps&&AS.setProps(t._typedArrayManagerProps),this.animationLoop.start()}finalize(){this.animationLoop.stop(),this.animationLoop=null,this._lastPointerDownInfo=null,this.layerManager&&(this.layerManager.finalize(),this.layerManager=null,this.viewManager.finalize(),this.viewManager=null,this.effectManager.finalize(),this.effectManager=null,this.deckRenderer.finalize(),this.deckRenderer=null,this.deckPicker.finalize(),this.deckPicker=null,this.eventManager.destroy(),this.eventManager=null,this.tooltip.remove(),this.tooltip=null),!this.props.canvas&&!this.props.gl&&this.canvas&&(this.canvas.parentElement.removeChild(this.canvas),this.canvas=null)}setProps(t){this.stats.get("setProps Time").timeStart(),"onLayerHover"in t&&Mw.removed("onLayerHover","onHover")(),"onLayerClick"in t&&Mw.removed("onLayerClick","onClick")(),t.initialViewState&&!zP(this.props.initialViewState,t.initialViewState)&&(this.viewState=t.initialViewState),Object.assign(this.props,t),this._setCanvasSize(this.props);const e=Object.create(this.props);Object.assign(e,{views:this._getViews(),width:this.width,height:this.height,viewState:this._getViewState()}),this.animationLoop.setProps(e),this.layerManager&&(this.viewManager.setProps(e),this.layerManager.activateViewport(this.getViewports()[0]),this.layerManager.setProps(e),this.effectManager.setProps(e),this.deckRenderer.setProps(e),this.deckPicker.setProps(e)),this.stats.get("setProps Time").timeEnd()}needsRedraw(t={clearRedrawFlags:!1}){if(this.props._animate)return"Deck._animate";let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);const n=this.viewManager.needsRedraw(t),i=this.layerManager.needsRedraw(t),r=this.effectManager.needsRedraw(t),s=this.deckRenderer.needsRedraw(t);return e=e||n||i||r||s,e}redraw(t){if(!this.layerManager)return;const e=t||this.needsRedraw({clearRedrawFlags:!0});!e||(this.stats.get("Redraw Count").incrementCount(),this.props._customRender?this.props._customRender(e):this._drawLayers(e))}getViews(){return this.viewManager.views}getViewports(t){return this.viewManager.getViewports(t)}pickObject(t){const e=this._pick("pickObject","pickObject Time",t).result;return e.length?e[0]:null}pickMultipleObjects(t){return t.depth=t.depth||10,this._pick("pickObject","pickMultipleObjects Time",t).result}pickObjects(t){return this._pick("pickObjects","pickObjects Time",t)}_addResources(t,e=!1){for(const n in t)this.layerManager.resourceManager.add({resourceId:n,data:t[n],forceUpdate:e})}_removeResources(t){for(const e of t)this.layerManager.resourceManager.remove(e)}_pick(t,e,n){const{stats:i}=this;i.get("Pick Count").incrementCount(),i.get(e).timeStart();const r=this.deckPicker[t](wt({layers:this.layerManager.getLayers(n),views:this.viewManager.getViews(),viewports:this.getViewports(n),onViewportActive:this.layerManager.activateViewport},n));return i.get(e).timeEnd(),r}_createCanvas(t){let e=t.canvas;return"string"==typeof e&&(e=document.getElementById(e),uE(e)),e||(e=document.createElement("canvas"),e.id=t.id||"deckgl-overlay",(t.parent||document.body).appendChild(e)),Object.assign(e.style,t.style),e}_setCanvasSize(t){if(!this.canvas)return;let{width:e,height:n}=t;(e||0===e)&&(e=Number.isFinite(e)?"".concat(e,"px"):e,this.canvas.style.width=e),(n||0===n)&&(n=Number.isFinite(n)?"".concat(n,"px"):n,this.canvas.style.position="absolute",this.canvas.style.height=n)}_updateCanvasSize(){if(this._checkForCanvasSizeChange()){const{width:t,height:e}=this;this.viewManager.setProps({width:t,height:e}),this.props.onResize({width:this.width,height:this.height})}}_checkForCanvasSizeChange(){const{canvas:t}=this;if(!t)return!1;const e=t.clientWidth||t.width,n=t.clientHeight||t.height;return(e!==this.width||n!==this.height)&&(this.width=e,this.height=n,!0)}_createAnimationLoop(t){const{width:e,height:n,gl:i,glOptions:r,debug:s,onError:o,onBeforeRender:a,onAfterRender:l,useDevicePixels:c,autoResizeDrawingBuffer:u}=t;return new lD({width:e,height:n,useDevicePixels:c,autoResizeDrawingBuffer:u,autoResizeViewport:!1,gl:i,onCreateContext:t=>Tx(ii(wt(wt({},r),t),{canvas:this.canvas,debug:s,onContextLost:()=>this._onContextLost()})),onInitialize:t=>this._setGLContext(t.gl),onRender:this._onRenderFrame.bind(this),onBeforeRender:a,onAfterRender:l,onError:o})}_getViewState(){return this.props.viewState||this.viewState}_getViews(){let t=this.props.views||[new rI({id:"default-view"})];return t=Array.isArray(t)?t:[t],t.length&&this.props.controller&&(t[0].props.controller=this.props.controller),t}_onContextLost(){const{onError:t}=this.props;this.animationLoop&&t&&t(new Error("WebGL context is lost"))}_onPointerMove(t){const{_pickRequest:e}=this;if("pointerleave"===t.type)e.x=-1,e.y=-1,e.radius=0;else{if(t.leftButton||t.rightButton)return;{const n=t.offsetCenter;if(!n)return;e.x=n.x,e.y=n.y,e.radius=this.props.pickingRadius}}this.layerManager&&(this.layerManager.context.mousePosition={x:e.x,y:e.y}),e.event=t,e.mode="hover"}_pickAndCallback(){const{_pickRequest:t}=this;if(t.event){const{result:e,emptyInfo:n}=this._pick("pickObject","pickObject Time",t);this.interactiveState.isHovering=e.length>0;let i=n,r=!1;for(const s of e)i=s,r=s.layer.onHover(s,t.event);if(!r&&this.props.onHover&&this.props.onHover(i,t.event),this.props.getTooltip){const t=this.props.getTooltip(i);this.tooltip.setTooltip(t,i.x,i.y)}t.event=null}}_updateCursor(){const t=this.props.parent||this.canvas;t&&(t.style.cursor=this.props.getCursor(this.interactiveState))}_setGLContext(t){if(this.layerManager)return;this.canvas||(this.canvas=t.canvas,kx(t,{enable:!0,copyState:!0})),this.tooltip=new yI(this.canvas),yx(t,{blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthTest:!0,depthFunc:515}),this.props.onWebGLInitialized(t);const e=new qM;e.play(),this.animationLoop.attachTimeline(e),this.eventManager=new HD(this.props.parent||t.canvas,{touchAction:this.props.touchAction,recognizerOptions:this.props.eventRecognizerOptions,events:{pointerdown:this._onPointerDown,pointermove:this._onPointerMove,pointerleave:this._onPointerMove}});for(const i in Rw)this.eventManager.on(i,this._onEvent);this.viewManager=new eI({timeline:e,eventManager:this.eventManager,onViewStateChange:this._onViewStateChange.bind(this),onInteractionStateChange:this._onInteractionStateChange.bind(this),views:this._getViews(),viewState:this._getViewState(),width:this.width,height:this.height});const n=this.viewManager.getViewports()[0];this.layerManager=new tI(t,{deck:this,stats:this.stats,viewport:n,timeline:e}),this.effectManager=new oI,this.deckRenderer=new uI(t),this.deckPicker=new mI(t),this.setProps(this.props),this._updateCanvasSize(),this.props.onLoad()}_drawLayers(t,e){const{gl:n}=this.layerManager.context;yx(n,this.props.parameters),this.props.onBeforeRender({gl:n}),this.deckRenderer.renderLayers(wt({target:this.props._framebuffer,layers:this.layerManager.getLayers(),viewports:this.viewManager.getViewports(),onViewportActive:this.layerManager.activateViewport,views:this.viewManager.getViews(),pass:"screen",redrawReason:t,effects:this.effectManager.getEffects()},e)),this.props.onAfterRender({gl:n})}_onRenderFrame(t){this._getFrameStats(),this._metricsCounter++%60==0&&(this._getMetrics(),this.stats.reset(),Mw.table(4,this.metrics)(),this.props._onMetrics&&this.props._onMetrics(this.metrics)),this._updateCanvasSize(),this._updateCursor(),this.tooltip.isVisible&&this.viewManager.needsRedraw()&&this.tooltip.setTooltip(null),this.layerManager.updateLayers(),this._pickAndCallback(),this.redraw(!1),this.viewManager&&this.viewManager.updateViewStates()}_onViewStateChange(t){const e=this.props.onViewStateChange(t)||t.viewState;this.viewState&&(this.viewState=ii(wt({},this.viewState),{[t.viewId]:e}),this.props.viewState||this.viewManager&&this.viewManager.setProps({viewState:this.viewState}))}_onInteractionStateChange(t){this.interactiveState.isDragging=t.isDragging,this.props.onInteractionStateChange(t)}_onEvent(t){const e=Rw[t.type],n=t.offsetCenter;if(!e||!n)return;const i=this.layerManager.getLayers(),r=this.deckPicker.getLastPickedObject({x:n.x,y:n.y,layers:i,viewports:this.getViewports(n)},this._lastPointerDownInfo),{layer:s}=r,o=s&&(s[e.handler]||s.props[e.handler]),a=this.props[e.handler];let l=!1;o&&(l=o.call(s,r,t)),!l&&a&&a(r,t)}_onPointerDown(t){const e=t.offsetCenter;this._lastPointerDownInfo=this.pickObject({x:e.x,y:e.y,radius:this.props.pickingRadius})}_getFrameStats(){const{stats:t}=this;t.get("frameRate").timeEnd(),t.get("frameRate").timeStart();const e=this.animationLoop.stats;t.get("GPU Time").addTime(e.get("GPU Time").lastTiming),t.get("CPU Time").addTime(e.get("CPU Time").lastTiming)}_getMetrics(){const{metrics:t,stats:e}=this;t.fps=e.get("frameRate").getHz(),t.setPropsTime=e.get("setProps Time").time,t.updateAttributesTime=e.get("Update Attributes").time,t.framesRedrawn=e.get("Redraw Count").count,t.pickTime=e.get("pickObject Time").time+e.get("pickMultipleObjects Time").time+e.get("pickObjects Time").time,t.pickCount=e.get("Pick Count").count,t.gpuTime=e.get("GPU Time").time,t.cpuTime=e.get("CPU Time").time,t.gpuTimePerFrame=e.get("GPU Time").getAverageTime(),t.cpuTimePerFrame=e.get("CPU Time").getAverageTime();const n=Dx.get("Memory Usage");t.bufferMemory=n.get("Buffer Memory").count,t.textureMemory=n.get("Texture Memory").count,t.renderbufferMemory=n.get("Renderbuffer Memory").count,t.gpuMemory=n.get("GPU Memory").count}}WD.getPropTypes=function(t){return{id:t.string,width:t.oneOfType([t.number,t.string]),height:t.oneOfType([t.number,t.string]),layers:t.oneOfType([t.object,t.array]),layerFilter:t.func,views:t.oneOfType([t.object,t.array]),viewState:t.object,effects:t.arrayOf(t.instanceOf(TM)),controller:t.oneOfType([t.func,t.bool,t.object]),gl:t.object,glOptions:t.object,parameters:t.object,pickingRadius:t.number,useDevicePixels:t.oneOfType([t.bool,t.number]),touchAction:t.string,eventRecognizerOptions:t.object,onWebGLInitialized:t.func,onResize:t.func,onViewStateChange:t.func,onInteractionStateChange:t.func,onBeforeRender:t.func,onAfterRender:t.func,onLoad:t.func,onError:t.func,debug:t.bool,drawPickingColors:t.bool,_framebuffer:t.object,_animate:t.bool,_pickable:t.bool,_typedArrayManagerProps:t.object}},WD.defaultProps=GD,WD.VERSION=rD.VERSION;var qD={name:"project32",dependencies:[NM],vs:"\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset, out vec4 commonPosition\n) {\n vec3 projectedPosition = project_position(position, position64Low);\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n // offset is specified as ENU\n // when in globe projection, rotate offset so that the ground alighs with the surface of the globe\n mat3 rotation = project_get_orientation_matrix(projectedPosition);\n offset = rotation * offset;\n }\n commonPosition = vec4(projectedPosition + offset, 1.0);\n return project_common_position_to_clipspace(commonPosition);\n}\n\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset\n) {\n vec4 commonPosition;\n return project_position_to_clipspace(position, position64Low, offset, commonPosition);\n}\n"},XD="#if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\n\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation;\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform AmbientLight lighting_uAmbientLight;\nuniform PointLight lighting_uPointLight[MAX_LIGHTS];\nuniform DirectionalLight lighting_uDirectionalLight[MAX_LIGHTS];\nuniform int lighting_uPointLightCount;\nuniform int lighting_uDirectionalLightCount;\n\nuniform bool lighting_uEnabled;\n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n#endif\n";const YD={lightSources:{}};function KD({color:t=[0,0,0],intensity:e=1}={}){return t.map(t=>t*e/255)}const QD={name:"lights",vs:XD,fs:XD,getUniforms:function t(e=YD){if("lightSources"in e){const{ambientLight:t,pointLights:n,directionalLights:i}=e.lightSources||{};return t||n&&n.length>0||i&&i.length>0?Object.assign({},function({ambientLight:t,pointLights:e=[],directionalLights:n=[]}){const i={};return i["lighting_uAmbientLight.color"]=t?KD(t):[0,0,0],e.forEach((t,e)=>{i[`lighting_uPointLight[${e}].color`]=KD(t),i[`lighting_uPointLight[${e}].position`]=t.position,i[`lighting_uPointLight[${e}].attenuation`]=t.attenuation||[1,0,0]}),i.lighting_uPointLightCount=e.length,n.forEach((t,e)=>{i[`lighting_uDirectionalLight[${e}].color`]=KD(t),i[`lighting_uDirectionalLight[${e}].direction`]=t.direction}),i.lighting_uDirectionalLightCount=n.length,i}({ambientLight:t,pointLights:n,directionalLights:i}),{lighting_uEnabled:!0}):{lighting_uEnabled:!1}}if("lights"in e){const n={pointLights:[],directionalLights:[]};for(const t of e.lights||[])switch(t.type){case"ambient":n.ambientLight=t;break;case"directional":n.directionalLights.push(t);break;case"point":n.pointLights.push(t)}return t({lightSources:n})}return{}},defines:{MAX_LIGHTS:3}};const ZD={};const JD={name:"phong-lighting",dependencies:[QD],fs:"\nuniform float lighting_uAmbient;\nuniform float lighting_uDiffuse;\nuniform float lighting_uShininess;\nuniform vec3 lighting_uSpecularColor;\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 light_direction, vec3 view_direction, vec3 normal_worldspace, vec3 color) {\n vec3 halfway_direction = normalize(light_direction + view_direction);\n float lambertian = dot(light_direction, normal_worldspace);\n float specular = 0.0;\n if (lambertian > 0.0) {\n float specular_angle = max(dot(normal_worldspace, halfway_direction), 0.0);\n specular = pow(specular_angle, lighting_uShininess);\n }\n lambertian = max(lambertian, 0.0);\n return (lambertian * lighting_uDiffuse * surfaceColor + specular * lighting_uSpecularColor) * color;\n}\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = surfaceColor;\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n lightColor = lighting_uAmbient * surfaceColor * lighting_uAmbientLight.color;\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n\nvec3 lighting_getSpecularLightColor(vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = vec3(0, 0, 0);\n vec3 surfaceColor = vec3(0, 0, 0);\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n",defines:{LIGHTING_FRAGMENT:1},getUniforms:function(t=ZD){if(!("material"in t))return{};const{material:e}=t;return e?function(t){const{ambient:e=.35,diffuse:n=.6,shininess:i=32,specularColor:r=[30,30,30]}=t;return{lighting_uAmbient:e,lighting_uDiffuse:n,lighting_uShininess:i,lighting_uSpecularColor:r.map(t=>t/255)}}(e):{lighting_uEnabled:!1}}},tR={pickingSelectedColor:null,pickingHighlightColor:new Uint8Array([0,255,255,255]),pickingActive:!1,pickingAttribute:!1};var eR=wt({inject:{"vs:DECKGL_FILTER_COLOR":"\n picking_setPickingColor(geometry.pickingColor);\n // for picking depth values\n picking_setPickingAttribute(geometry.position.z);\n ","fs:DECKGL_FILTER_COLOR":{order:99,injection:"\n // use highlight color if this fragment belongs to the selected object.\n color = picking_filterHighlightColor(color);\n\n // use picking color if rendering to picking FBO.\n color = picking_filterPickingColor(color);\n "}}},{name:"picking",vs:"uniform bool picking_uActive;\nuniform bool picking_uAttribute;\nuniform vec3 picking_uSelectedColor;\nuniform bool picking_uSelectedColorValid;\n\nout vec4 picking_vRGBcolor_Avalid;\n\nconst float COLOR_SCALE = 1. / 255.;\n\nbool picking_isColorValid(vec3 color) {\n return dot(color, vec3(1.0)) > 0.001;\n}\n\nbool isVertexPicked(vec3 vertexColor) {\n return\n picking_uSelectedColorValid &&\n !picking_isColorValid(abs(vertexColor - picking_uSelectedColor));\n}\n\nvoid picking_setPickingColor(vec3 pickingColor) {\n if (picking_uActive) {\n picking_vRGBcolor_Avalid.a = float(picking_isColorValid(pickingColor));\n\n if (!picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = pickingColor * COLOR_SCALE;\n }\n } else {\n picking_vRGBcolor_Avalid.a = float(isVertexPicked(pickingColor));\n }\n}\n\nvoid picking_setPickingAttribute(float value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.r = value;\n }\n}\nvoid picking_setPickingAttribute(vec2 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rg = value;\n }\n}\nvoid picking_setPickingAttribute(vec3 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = value;\n }\n}\n",fs:"uniform bool picking_uActive;\nuniform vec3 picking_uSelectedColor;\nuniform vec4 picking_uHighlightColor;\n\nin vec4 picking_vRGBcolor_Avalid;\nvec4 picking_filterHighlightColor(vec4 color) {\n if (picking_uActive) {\n return color;\n }\n bool selected = bool(picking_vRGBcolor_Avalid.a);\n\n if (selected) {\n float highLightAlpha = picking_uHighlightColor.a;\n float blendedAlpha = highLightAlpha + color.a * (1.0 - highLightAlpha);\n float highLightRatio = highLightAlpha / blendedAlpha;\n\n vec3 blendedRGB = mix(color.rgb, picking_uHighlightColor.rgb, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n } else {\n return color;\n }\n}\nvec4 picking_filterPickingColor(vec4 color) {\n if (picking_uActive) {\n if (picking_vRGBcolor_Avalid.a == 0.0) {\n discard;\n }\n return picking_vRGBcolor_Avalid;\n }\n return color;\n}\nvec4 picking_filterColor(vec4 color) {\n vec4 highightColor = picking_filterHighlightColor(color);\n return picking_filterPickingColor(highightColor);\n}\n\n",getUniforms:function(t=tR){const e={};if(void 0!==t.pickingSelectedColor)if(t.pickingSelectedColor){const n=t.pickingSelectedColor.slice(0,3);e.picking_uSelectedColorValid=1,e.picking_uSelectedColor=n}else e.picking_uSelectedColorValid=0;if(t.pickingHighlightColor){const n=Array.from(t.pickingHighlightColor,t=>t/255);Number.isFinite(n[3])||(n[3]=1),e.picking_uHighlightColor=n}return void 0!==t.pickingActive&&(e.picking_uActive=Boolean(t.pickingActive),e.picking_uAttribute=Boolean(t.pickingAttribute)),e}});const nR={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6};class iR{static get DRAW_MODE(){return nR}constructor(t={}){const{id:e=Fx("geometry"),drawMode:n=nR.TRIANGLES,attributes:i={},indices:r=null,vertexCount:s=null}=t;this.id=e,this.drawMode=0|n,this.attributes={},this.userData={},this._setAttributes(i,r),this.vertexCount=s||this._calculateVertexCount(this.attributes,this.indices)}get mode(){return this.drawMode}getVertexCount(){return this.vertexCount}getAttributes(){return this.indices?wt({indices:this.indices},this.attributes):this.attributes}_print(t){return`Geometry ${this.id} attribute ${t}`}_setAttributes(t,e){e&&(this.indices=ArrayBuffer.isView(e)?{value:e,size:1}:e);for(const n in t){let e=t[n];e=ArrayBuffer.isView(e)?{value:e}:e,Rx(ArrayBuffer.isView(e.value),`${this._print(n)}: must be typed array or object with value as typed array`),("POSITION"===n||"positions"===n)&&!e.size&&(e.size=3),"indices"===n?(Rx(!this.indices),this.indices=e):this.attributes[n]=e}return this.indices&&void 0!==this.indices.isIndexed&&(this.indices=Object.assign({},this.indices),delete this.indices.isIndexed),this}_calculateVertexCount(t,e){if(e)return e.value.length;let n=1/0;for(const i in t){const e=t[i],{value:r,size:s,constant:o}=e;!o&&r&&s>=1&&(n=Math.min(n,r.length/s))}return Rx(Number.isFinite(n)),n}}const rR=Math.PI/180,sR=new Float32Array(16),oR=new Float32Array(12);function aR(t,e,n){const i=e[0]*rR,r=e[1]*rR,s=e[2]*rR,o=Math.sin(s),a=Math.sin(i),l=Math.sin(r),c=Math.cos(s),u=Math.cos(i),h=Math.cos(r),d=n[0],p=n[1],f=n[2];t[0]=d*h*u,t[1]=d*l*u,t[2]=d*-a,t[3]=p*(-l*c+h*a*o),t[4]=p*(h*c+l*a*o),t[5]=p*u*o,t[6]=f*(l*o+h*a*c),t[7]=f*(-h*o+l*a*c),t[8]=f*u*c}function lR(t){return t[0]=t[0],t[1]=t[1],t[2]=t[2],t[3]=t[4],t[4]=t[5],t[5]=t[6],t[6]=t[8],t[7]=t[9],t[8]=t[10],t[9]=t[12],t[10]=t[13],t[11]=t[14],t.subarray(0,12)}const cR={size:12,accessor:["getOrientation","getScale","getTranslation","getTransformMatrix"],shaderAttributes:{instanceModelMatrix__LOCATION_0:{size:3,elementOffset:0},instanceModelMatrix__LOCATION_1:{size:3,elementOffset:3},instanceModelMatrix__LOCATION_2:{size:3,elementOffset:6},instanceTranslation:{size:3,elementOffset:9}},update(t,{startRow:e,endRow:n}){const{data:i,getOrientation:r,getScale:s,getTranslation:o,getTransformMatrix:a}=this.props,l=Array.isArray(a),c=l&&16===a.length,u=Array.isArray(s),h=Array.isArray(r),d=Array.isArray(o),p=c||!l&&Boolean(a(i[0]));t.constant=p?c:h&&u&&d;const f=t.value;if(t.constant){let e;p?(sR.set(a),e=lR(sR)):(e=oR,aR(e,r,s),e.set(o,9)),t.value=new Float32Array(e)}else{let l=e*t.size;const{iterable:g,objectInfo:m}=pE(i,e,n);for(const t of g){let e;m.index++,p?(sR.set(c?a:a(t,m)),e=lR(sR)):(e=oR,aR(e,h?r:r(t,m),u?s:s(t,m)),e.set(d?o:o(t,m),9)),f[l++]=e[0],f[l++]=e[1],f[l++]=e[2],f[l++]=e[3],f[l++]=e[4],f[l++]=e[5],f[l++]=e[6],f[l++]=e[7],f[l++]=e[8],f[l++]=e[9],f[l++]=e[10],f[l++]=e[11]}}}};function uR(t,e){return e===Iw.CARTESIAN||e===Iw.METER_OFFSETS||e===Iw.DEFAULT&&!t.isGeospatial}function hR(t,e){(t.COLOR_0||t.colors)&&e||(t.colors={constant:!0,value:new Float32Array([1,1,1])}),Mw.assert(t.positions||t.POSITION,'no "postions" or "POSITION" attribute in mesh')}function dR(t,e){if(t.attributes)return hR(t.attributes,e),t instanceof iR?t:new iR(t);if(t.positions||t.POSITION)return hR(t,e),new iR({attributes:t});throw Error("Invalid mesh")}const pR={mesh:{value:null,type:"object",async:!0},texture:{type:"image",value:null,async:!0},sizeScale:{type:"number",value:1,min:0},_useMeshColors:{type:"boolean",value:!1},_instanced:!0,wireframe:!1,material:!0,getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:[0,0,0,255]},getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]}};let fR=(()=>{class t extends LP{getShaders(){const t=!Fw(this.context.gl),e={};return CS(this.context.gl,"GLSL_DERIVATIVES")&&(e.DERIVATIVES_AVAILABLE=1),super.getShaders({vs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\nuniform float sizeScale;\nuniform bool composeModelMatrix;\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.uv = texCoords;\n geometry.pickingColor = instancePickingColors;\n\n vTexCoord = texCoords;\n cameraPosition = project_uCameraPosition;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n geometry.normal = normals_commonspace;\n\n vec3 pos = (instanceModelMatrix * positions) * sizeScale + instanceTranslation;\n\n if (composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), position_commonspace);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, position_commonspace);\n }\n\n geometry.position = position_commonspace;\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\nuniform sampler2D sampler;\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal;\n if (flatShading) {\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec4 color = hasTexture ? texture(sampler, vTexCoord) : vColor;\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, color.a * opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n",modules:[qD,JD,eR],transpileToGLSL100:t,defines:e})}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{transition:!0,type:5130,fp64:this.use64bitPositions(),size:3,accessor:"getPosition"},instanceColors:{type:5121,transition:!0,size:this.props.colorFormat.length,normalized:!0,accessor:"getColor",defaultValue:[0,0,0,255]},instanceModelMatrix:cR}),this.setState({emptyTexture:new lS(this.context.gl,{data:new Uint8Array(4),width:1,height:1})})}updateState({props:t,oldProps:e,changeFlags:n}){if(super.updateState({props:t,oldProps:e,changeFlags:n}),t.mesh!==e.mesh||n.extensionsChanged){var i;if(null===(i=this.state.model)||void 0===i||i.delete(),t.mesh){this.state.model=this.getModel(t.mesh);const e=t.mesh.attributes||t.mesh;this.setState({hasNormals:Boolean(e.NORMAL||e.normals)})}this.getAttributeManager().invalidateAll()}t.texture!==e.texture&&this.setTexture(t.texture),this.state.model&&this.state.model.setDrawMode(this.props.wireframe?3:4)}finalizeState(){super.finalizeState(),this.state.emptyTexture.delete()}draw({uniforms:t}){if(!this.state.model)return;const{viewport:e}=this.context,{sizeScale:n,coordinateSystem:i,_instanced:r}=this.props;this.state.model.setUniforms(t).setUniforms({sizeScale:n,composeModelMatrix:!r||uR(e,i),flatShading:!this.state.hasNormals}).draw()}getModel(t){const e=new xO(this.context.gl,ii(wt({},this.getShaders()),{id:this.props.id,geometry:dR(t,this.props._useMeshColors),isInstanced:!0})),{texture:n}=this.props,{emptyTexture:i}=this.state;return e.setUniforms({sampler:n||i,hasTexture:Boolean(n)}),e}setTexture(t){const{emptyTexture:e,model:n}=this.state;null==n||n.setUniforms({sampler:t||e,hasTexture:Boolean(t)})}}return t.layerName="SimpleMeshLayer",t.defaultProps=pR,t})();const gR={name:"pbr",vs:"uniform mat4 u_MVPMatrix;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_NormalMatrix;\n\nvarying vec3 pbr_vPosition;\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n# else\nvarying vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = u_ModelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(u_NormalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(u_ModelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else\n pbr_vNormal = normalize(vec3(u_ModelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n",fs:"#if defined(USE_TEX_LOD) && !defined(FEATURE_GLSL_TEXTURE_LOD)\n# error PBR fragment shader: Texture LOD is not available\n#endif\n\n#if !defined(HAS_TANGENTS) && !defined(FEATURE_GLSL_DERIVATIVES)\n# error PBR fragment shader: Derivatives are not available\n#endif\n\n\n#if (__VERSION__ < 300)\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL1COND; INCR)\n#else\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL2COND; INCR)\n#endif\n\nprecision highp float;\n\nuniform bool pbr_uUnlit;\n\n#ifdef USE_IBL\nuniform samplerCube u_DiffuseEnvSampler;\nuniform samplerCube u_SpecularEnvSampler;\nuniform sampler2D u_brdfLUT;\nuniform vec2 u_ScaleIBLAmbient;\n#endif\n\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D u_BaseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D u_NormalSampler;\nuniform float u_NormalScale;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D u_EmissiveSampler;\nuniform vec3 u_EmissiveFactor;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D u_MetallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D u_OcclusionSampler;\nuniform float u_OcclusionStrength;\n#endif\n\n#ifdef ALPHA_CUTOFF\nuniform float u_AlphaCutoff;\n#endif\n\nuniform vec2 u_MetallicRoughnessValues;\nuniform vec4 u_BaseColorFactor;\n\nuniform vec3 u_Camera;\n#ifdef PBR_DEBUG\nuniform vec4 u_ScaleDiffBaseMR;\nuniform vec4 u_ScaleFGDSpec;\n#endif\n\nvarying vec3 pbr_vPosition;\n\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n#else\nvarying vec3 pbr_vNormal;\n#endif\n#endif\n\n\nstruct PBRInfo\n{\n float NdotL;\n float NdotV;\n float NdotH;\n float LdotH;\n float VdotH;\n float perceptualRoughness;\n float metalness;\n vec3 reflectance0;\n vec3 reflectance90;\n float alphaRoughness;\n vec3 diffuseColor;\n vec3 specularColor;\n vec3 n;\n vec3 v;\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif\n return vec4(linOut,srgbIn.w);;\n#else\n return srgbIn;\n#endif\n}\n\nvec3 getNormal()\n{\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture2D(u_NormalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(u_NormalScale, u_NormalScale, 1.0)));\n#else\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInputs, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0;\n float lod = (pbrInputs.perceptualRoughness * mipCount);\n vec3 brdf = SRGBtoLINEAR(texture2D(u_brdfLUT,\n vec2(pbrInputs.NdotV, 1.0 - pbrInputs.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(textureCube(u_DiffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(textureCubeLod(u_SpecularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(textureCube(u_SpecularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInputs.diffuseColor;\n vec3 specular = specularLight * (pbrInputs.specularColor * brdf.x + brdf.y);\n diffuse *= u_ScaleIBLAmbient.x;\n specular *= u_ScaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n\nvec3 diffuse(PBRInfo pbrInputs)\n{\n return pbrInputs.diffuseColor / M_PI;\n}\n\nvec3 specularReflection(PBRInfo pbrInputs)\n{\n return pbrInputs.reflectance0 +\n (pbrInputs.reflectance90 - pbrInputs.reflectance0) *\n pow(clamp(1.0 - pbrInputs.VdotH, 0.0, 1.0), 5.0);\n}\n\n\n\nfloat geometricOcclusion(PBRInfo pbrInputs)\n{\n float NdotL = pbrInputs.NdotL;\n float NdotV = pbrInputs.NdotV;\n float r = pbrInputs.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n\n\n\n\nfloat microfacetDistribution(PBRInfo pbrInputs)\n{\n float roughnessSq = pbrInputs.alphaRoughness * pbrInputs.alphaRoughness;\n float f = (pbrInputs.NdotH * roughnessSq - pbrInputs.NdotH) * pbrInputs.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInputs) {\n pbrInputs.NdotL = 1.0;\n pbrInputs.NdotH = 0.0;\n pbrInputs.LdotH = 0.0;\n pbrInputs.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInputs, vec3 lightDirection) {\n vec3 n = pbrInputs.n;\n vec3 v = pbrInputs.v;\n vec3 l = normalize(lightDirection);\n vec3 h = normalize(l+v);\n\n pbrInputs.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInputs.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInputs.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInputs.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInputs, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInputs, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInputs, vec3 lightColor) {\n vec3 F = specularReflection(pbrInputs);\n float G = geometricOcclusion(pbrInputs);\n float D = microfacetDistribution(pbrInputs);\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInputs);\n vec3 specContrib = F * G * D / (4.0 * pbrInputs.NdotL * pbrInputs.NdotV);\n return pbrInputs.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture2D(u_BaseColorSampler, pbr_vUV)) * u_BaseColorFactor;\n#else\n vec4 baseColor = u_BaseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < u_AlphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbr_uUnlit){\n color.rgb = baseColor.rgb;\n }\n else{\n\n\n float perceptualRoughness = u_MetallicRoughnessValues.y;\n float metallic = u_MetallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n\n vec4 mrSample = texture2D(u_MetallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n\n\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal();\n vec3 v = normalize(u_Camera - pbr_vPosition);\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInputs = PBRInfo(\n 0.0,\n NdotV,\n 0.0,\n 0.0,\n 0.0,\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n#ifdef USE_LIGHTS\n PBRInfo_setAmbientLight(pbrInputs);\n color += calculateFinalColor(pbrInputs, lighting_uAmbientLight.color);\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uDirectionalLightCount, i++) {\n if (i < lighting_uDirectionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInputs, lighting_uDirectionalLight[i].direction);\n color += calculateFinalColor(pbrInputs, lighting_uDirectionalLight[i].color);\n }\n }\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uPointLightCount, i++) {\n if (i < lighting_uPointLightCount) {\n PBRInfo_setPointLight(pbrInputs, lighting_uPointLight[i]);\n float attenuation = getPointLightAttenuation(lighting_uPointLight[i], distance(lighting_uPointLight[i].position, pbr_vPosition));\n color += calculateFinalColor(pbrInputs, lighting_uPointLight[i].color / attenuation);\n }\n }\n#endif\n#ifdef USE_IBL\n color += getIBLContribution(pbrInputs, n, reflection);\n#endif\n#ifdef HAS_OCCLUSIONMAP\n float ao = texture2D(u_OcclusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, u_OcclusionStrength);\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n vec3 emissive = SRGBtoLINEAR(texture2D(u_EmissiveSampler, pbr_vUV)).rgb * u_EmissiveFactor;\n color += emissive;\n#endif\n\n#ifdef PBR_DEBUG\n\n\n\n\n\n color = mix(color, baseColor.rgb, u_ScaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), u_ScaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), u_ScaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n",defines:{LIGHTING_FRAGMENT:1},dependencies:[QD]};class mR{constructor(t={}){const{id:e}=t;this.id=e||Fx(this.constructor.name),this.display=!0,this.position=new nE,this.rotation=new nE,this.scale=new nE(1,1,1),this.matrix=new bT,this.userData={},this.props={},this._setScenegraphNodeProps(t)}delete(){}setProps(t){return this._setScenegraphNodeProps(t),this}toString(){return`{type: ScenegraphNode, id: ${this.id})}`}setPosition(t){return Rx(3===t.length,"setPosition requires vector argument"),this.position=t,this}setRotation(t){return Rx(3===t.length,"setRotation requires vector argument"),this.rotation=t,this}setScale(t){return Rx(3===t.length,"setScale requires vector argument"),this.scale=t,this}setMatrix(t,e=!0){e?this.matrix.copy(t):this.matrix=t}setMatrixComponents({position:t,rotation:e,scale:n,update:i=!0}){return t&&this.setPosition(t),e&&this.setRotation(e),n&&this.setScale(n),i&&this.updateMatrix(),this}updateMatrix(){const t=this.position,e=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(t),this.matrix.rotateXYZ(e),this.matrix.scale(n),this}update(t={}){const{position:e,rotation:n,scale:i}=t;return e&&this.setPosition(e),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}getCoordinateUniforms(t,e){Rx(t),e=e||this.matrix;const n=new bT(t).multiplyRight(e),i=n.invert(),r=i.transpose();return{viewMatrix:t,modelMatrix:e,objectMatrix:e,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:r}}_setScenegraphNodeProps(t){"display"in t&&(this.display=t.display),"position"in t&&this.setPosition(t.position),"rotation"in t&&this.setRotation(t.rotation),"scale"in t&&this.setScale(t.scale),"matrix"in t&&this.setMatrix(t.matrix),Object.assign(this.props,t)}}class bR extends mR{constructor(t={}){t=Array.isArray(t)?{children:t}:t;const{children:e=[]}=t;Nw.assert(e.every(t=>t instanceof mR),"every child must an instance of ScenegraphNode"),super(t),this.children=e}add(...t){for(const e of t)Array.isArray(e)?this.add(...e):this.children.push(e);return this}remove(t){const e=this.children,n=e.indexOf(t);return n>-1&&e.splice(n,1),this}removeAll(){return this.children=[],this}delete(){this.children.forEach(t=>t.delete()),this.removeAll(),super.delete()}traverse(t,{worldMatrix:e=new bT}={}){const n=new bT(e).multiplyRight(this.matrix);for(const i of this.children)i instanceof bR?i.traverse(t,{worldMatrix:n}):t(i,{worldMatrix:n})}}function yR(){var t=new qS(4);return qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function vR(t,e,n){n*=.5;var i=Math.sin(n);return t[0]=i*e[0],t[1]=i*e[1],t[2]=i*e[2],t[3]=Math.cos(n),t}function _R(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=n[0],l=n[1],c=n[2],u=n[3];return t[0]=i*u+o*a+r*c-s*l,t[1]=r*u+o*l+s*a-i*c,t[2]=s*u+o*c+i*l-r*a,t[3]=o*u-i*a-r*l-s*c,t}var wR=tT,xR=function(){var t=XS(),e=YS(1,0,0),n=YS(0,1,0);return function(i,r,s){var o=KS(r,s);return o<-.999999?(QS(t,e,r),function(t){return Math.hypot(t[0],t[1],t[2])}(t)<1e-6&&QS(t,n,r),function(t,e){var n=e[0],i=e[1],r=e[2],s=n*n+i*i+r*r;s>0&&(s=1/Math.sqrt(s)),t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s}(t,t),vR(i,t,Math.PI),i):o>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(QS(t,r,s),i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=1+o,function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=n*o,t[1]=i*o,t[2]=r*o,t[3]=s*o,t}(i,i))}}();yR(),yR(),function(){var t=new qS(9);qS!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1}();const SR=[0,0,0,1],ER={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},CR={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function OR(t){if(!t._animation){const e=CR[t.componentType],n=ER[t.type],i=n*t.count,{buffer:r,byteOffset:s}=t.bufferView.data,o=new e(r,s+(t.byteOffset||0),i);if(1===n)t._animation=Array.from(o);else{const e=[];for(let t=0;t0)n=Math.sqrt(i+1),t[3]=.5*n,t[0]=(e[5]-e[7])*(n=.5/n),t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{var r=0;e[4]>e[0]&&(r=1),e[8]>e[3*r+r]&&(r=2);var s=(r+1)%3,o=(r+2)%3;n=Math.sqrt(e[3*r+r]-e[3*s+s]-e[3*o+o]+1),t[r]=.5*n,t[3]=(e[3*s+o]-e[3*o+s])*(n=.5/n),t[s]=(e[3*s+r]+e[3*r+s])*n,t[o]=(e[3*o+r]+e[3*r+o])*n}}(this,t),this.check()}identity(){return function(t){t[0]=0,t[1]=0,t[2]=0,t[3]=1}(this),this.check()}fromAxisRotation(t,e){return vR(this,t,e),this.check()}setAxisAngle(t,e){return this.fromAxisRotation(t,e)}get ELEMENTS(){return 4}get x(){return this[0]}set x(t){this[0]=zS(t)}get y(){return this[1]}set y(t){this[1]=zS(t)}get z(){return this[2]}set z(t){this[2]=zS(t)}get w(){return this[3]}set w(t){this[3]=zS(t)}len(){return function(t){return Math.hypot(t[0],t[1],t[2],t[3])}(this)}lengthSquared(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3];return e*e+n*n+i*i+r*r}(this)}dot(t,e){if(void 0!==e)throw new Error("Quaternion.dot only takes one argument");return function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}(this,t)}rotationTo(t,e){return xR(this,t,e),this.check()}add(t,e){if(void 0!==e)throw new Error("Quaternion.add only takes one argument");return function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3]}(this,this,t),this.check()}calculateW(){return function(t,e){var n=e[0],i=e[1],r=e[2];t[0]=n,t[1]=i,t[2]=r,t[3]=Math.sqrt(Math.abs(1-n*n-i*i-r*r))}(this,this),this.check()}conjugate(){return function(t,e){t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3]}(this,this),this.check()}invert(){return function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s,a=o?1/o:0;t[0]=-n*a,t[1]=-i*a,t[2]=-r*a,t[3]=s*a}(this,this),this.check()}lerp(t,e,n){return function(t,e,n,i){var r=e[0],s=e[1],o=e[2],a=e[3];t[0]=r+i*(n[0]-r),t[1]=s+i*(n[1]-s),t[2]=o+i*(n[2]-o),t[3]=a+i*(n[3]-a)}(this,t,e,n),this.check()}multiplyRight(t,e){return BS(!e),_R(this,this,t),this.check()}multiplyLeft(t,e){return BS(!e),_R(this,t,this),this.check()}normalize(){const t=this.len(),e=t>0?1/t:0;return this[0]=this[0]*e,this[1]=this[1]*e,this[2]=this[2]*e,this[3]=this[3]*e,0===t&&(this[3]=1),this.check()}rotateX(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+o*a,t[1]=r*l+s*a,t[2]=s*l-r*a,t[3]=o*l-i*a}(this,this,t),this.check()}rotateY(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l-s*a,t[1]=r*l+o*a,t[2]=s*l+i*a,t[3]=o*l-r*a}(this,this,t),this.check()}rotateZ(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+r*a,t[1]=r*l-i*a,t[2]=s*l+o*a,t[3]=o*l-s*a}(this,this,t),this.check()}scale(t){return wR(this,this,t),this.check()}slerp(t,e,n){switch(arguments.length){case 1:({start:t=SR,target:e,ratio:n}=arguments[0]);break;case 2:[e,n]=arguments,t=this}return function(t,e,n,i){var r,s,o,a,l,c=e[0],u=e[1],h=e[2],d=e[3],p=n[0],f=n[1],g=n[2],m=n[3];(s=c*p+u*f+h*g+d*m)<0&&(s=-s,p=-p,f=-f,g=-g,m=-m),1-s>WS?(r=Math.acos(s),o=Math.sin(r),a=Math.sin((1-i)*r)/o,l=Math.sin(i*r)/o):(a=1-i,l=i),t[0]=a*c+l*p,t[1]=a*u+l*f,t[2]=a*h+l*g,t[3]=a*d+l*m}(this,t,e,n),this.check()}transformVector4(t,e=t){return function(t,e,n){var i=e[0],r=e[1],s=e[2],o=n[0],a=n[1],l=n[2],c=n[3],u=c*i+a*s-l*r,h=c*r+l*i-o*s,d=c*s+o*r-a*i,p=-o*i-a*r-l*s;t[0]=u*c+p*-o+h*-l-d*-a,t[1]=h*c+p*-a+d*-o-u*-l,t[2]=d*c+p*-l+u*-a-h*-o,t[3]=e[3]}(e,t,this),US(e,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(t,e){return this.setAxisAngle(t,e)}premultiply(t,e){return this.multiplyLeft(t,e)}multiply(t,e){return this.multiplyRight(t,e)}};class AR{constructor(t){this.startTime=0,this.playing=!0,this.speed=1,this.channels=[],Object.assign(this,t)}animate(t){if(!this.playing)return;const e=(t/1e3-this.startTime)*this.speed;this.channels.forEach(({sampler:t,target:n,path:i})=>{(function(t,{input:e,interpolation:n,output:i},r,s){const o=t%e[e.length-1],a=e.findIndex(t=>t>=o),l=Math.max(0,a-1);if(!Array.isArray(r[s]))switch(s){case"translation":r[s]=[0,0,0];break;case"rotation":r[s]=[0,0,0,1];break;case"scale":r[s]=[1,1,1];break;default:Nw.warn(`Bad animation path ${s}`)()}Rx(r[s].length===i[l].length);const c=e[l],u=e[a];switch(n){case"STEP":!function(t,e,n){for(let i=0;ic&&function(t,e,n,i,r){if("rotation"===e){kR.slerp({start:n,target:i,ratio:r});for(let n=0;nc&&function(t,e,{p0:n,outTangent0:i,inTangent1:r,p1:s,tDiff:o,ratio:a}){for(let l=0;l{const i=e.name||`Animation-${n}`,r=e.samplers.map(({input:e,interpolation:n="LINEAR",output:i})=>({input:OR(t.accessors[e]),interpolation:n,output:OR(t.accessors[i])})),s=e.channels.map(({sampler:e,target:n})=>({sampler:r[e],target:t.nodes[n.node],path:n.path}));return new AR({name:i,channels:s})})}animate(t){this.setTime(t)}setTime(t){this.animations.forEach(e=>e.animate(t))}getAnimations(){return this.animations}}class MR extends mR{constructor(t,e={}){super(e),this.onBeforeRender=null,this.AfterRender=null,t instanceof xO?(this.model=t,this._setModelNodeProps(e)):this.model=new xO(t,e),this.managedResources=e.managedResources||[]}setProps(t){return super.setProps(t),this._setModelNodeProps(t),this}delete(){this.model&&(this.model.delete(),this.model=null),this.managedResources.forEach(t=>t.delete()),this.managedResources=[]}draw(...t){return this.model.draw(...t)}setUniforms(...t){return this.model.setUniforms(...t),this}setAttributes(...t){return this.model.setAttributes(...t),this}updateModuleSettings(...t){return this.model.updateModuleSettings(...t),this}_setModelNodeProps(t){this.model.setProps(t)}}class IR{constructor(t,{attributes:e,material:n,pbrDebug:i,imageBasedLightingEnvironment:r,lights:s,useTangents:o}){this.gl=t,this.defines={MANUAL_SRGB:1,SRGB_FAST_APPROXIMATION:1},CS(t,"GLSL_TEXTURE_LOD")&&(this.defines.USE_TEX_LOD=1),this.uniforms={u_Camera:[0,0,0],u_MetallicRoughnessValues:[1,1]},this.parameters={},this.generatedTextures=[],r&&(this.uniforms.u_DiffuseEnvSampler=r.getDiffuseEnvSampler(),this.uniforms.u_SpecularEnvSampler=r.getSpecularEnvSampler(),this.uniforms.u_brdfLUT=r.getBrdfTexture(),this.uniforms.u_ScaleIBLAmbient=[1,1]),i&&(this.uniforms.u_ScaleDiffBaseMR=[0,0,0,0],this.uniforms.u_ScaleFGDSpec=[0,0,0,0]),this.defineIfPresent(e.NORMAL,"HAS_NORMALS"),this.defineIfPresent(e.TANGENT&&o,"HAS_TANGENTS"),this.defineIfPresent(e.TEXCOORD_0,"HAS_UV"),this.defineIfPresent(r,"USE_IBL"),this.defineIfPresent(s,"USE_LIGHTS"),this.defineIfPresent(i,"PBR_DEBUG"),n&&this.parseMaterial(n)}defineIfPresent(t,e){t&&(this.defines[e]=1)}parseTexture(t,e,n=null){const i=t.texture.source.image;let r,s={};i.compressed?(r=i,s={[this.gl.TEXTURE_MIN_FILTER]:i.data.length>1?this.gl.LINEAR_MIPMAP_NEAREST:this.gl.LINEAR}):r={data:i};const o=new lS(this.gl,wt({id:t.name||t.id,parameters:wt(wt({},t.texture&&t.texture.sampler&&t.texture.sampler.parameters||{}),s),pixelStore:{[this.gl.UNPACK_FLIP_Y_WEBGL]:!1}},r));this.uniforms[e]=o,this.defineIfPresent(n,n),this.generatedTextures.push(o)}parsePbrMetallicRoughness(t){t.baseColorTexture&&this.parseTexture(t.baseColorTexture,"u_BaseColorSampler","HAS_BASECOLORMAP"),this.uniforms.u_BaseColorFactor=t.baseColorFactor||[1,1,1,1],t.metallicRoughnessTexture&&this.parseTexture(t.metallicRoughnessTexture,"u_MetallicRoughnessSampler","HAS_METALROUGHNESSMAP");const{metallicFactor:e=1,roughnessFactor:n=1}=t;this.uniforms.u_MetallicRoughnessValues=[e,n]}parseMaterial(t){if(this.uniforms.pbr_uUnlit=Boolean(t.unlit),t.pbrMetallicRoughness&&this.parsePbrMetallicRoughness(t.pbrMetallicRoughness),t.normalTexture){this.parseTexture(t.normalTexture,"u_NormalSampler","HAS_NORMALMAP");const{scale:e=1}=t.normalTexture;this.uniforms.u_NormalScale=e}if(t.occlusionTexture){this.parseTexture(t.occlusionTexture,"u_OcclusionSampler","HAS_OCCLUSIONMAP");const{strength:e=1}=t.occlusionTexture;this.uniforms.u_OcclusionStrength=e}if(t.emissiveTexture&&(this.parseTexture(t.emissiveTexture,"u_EmissiveSampler","HAS_EMISSIVEMAP"),this.uniforms.u_EmissiveFactor=t.emissiveFactor||[0,0,0]),"MASK"===t.alphaMode){const{alphaCutoff:e=.5}=t;this.defines.ALPHA_CUTOFF=1,this.uniforms.u_AlphaCutoff=e}else"BLEND"===t.alphaMode&&(Nw.warn("BLEND alphaMode might not work well because it requires mesh sorting")(),Object.assign(this.parameters,{blend:!0,blendEquation:this.gl.FUNC_ADD,blendFunc:[this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA]}))}}function DR(t,e){return Fw(t)?`#version 300 es\n${e}`:e}const RR={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},NR={modelOptions:{},pbrDebug:!1,imageBasedLightingEnvironment:null,lights:!0,useTangents:!1};class LR{constructor(t,e={}){this.gl=t,this.options=Object.assign({},NR,e)}instantiate(t){return this.gltf=t,(t.scenes||[]).map(t=>this.createScene(t))}createAnimator(){return Array.isArray(this.gltf.animations)?new PR(this.gltf):null}createScene(t){const e=(t.nodes||[]).map(t=>this.createNode(t));return new bR({id:t.name||t.id,children:e})}createNode(t){if(!t._node){const e=(t.children||[]).map(t=>this.createNode(t));t.mesh&&e.push(this.createMesh(t.mesh));const n=new bR({id:t.name||t.id,children:e});if(t.matrix)n.setMatrix(t.matrix);else{if(n.matrix.identity(),t.translation&&n.matrix.translate(t.translation),t.rotation){const e=(new bT).fromQuaternion(t.rotation);n.matrix.multiplyRight(e)}t.scale&&n.matrix.scale(t.scale)}t._node=n}return t._node}createMesh(t){if(!t._mesh){const e=(t.primitives||[]).map((e,n)=>this.createPrimitive(e,n,t)),n=new bR({id:t.name||t.id,children:e});t._mesh=n}return t._mesh}getVertexCount(t){Nw.warn("getVertexCount() not found")()}createPrimitive(t,e,n){return function(t,e){const{id:n,drawMode:i,vertexCount:r,attributes:s,modelOptions:o}=e,a=new IR(t,e);Nw.info(4,"createGLTFModel defines: ",a.defines)();const l=[];l.push(...a.generatedTextures),l.push(...Object.values(s).map(t=>t.buffer));const c=new MR(t,Object.assign({id:n,drawMode:i,vertexCount:r,modules:[gR],defines:a.defines,parameters:a.parameters,vs:DR(t,"\n#if (__VERSION__ < 300)\n #define _attr attribute\n#else\n #define _attr in\n#endif\n\n _attr vec4 POSITION;\n\n #ifdef HAS_NORMALS\n _attr vec4 NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _attr vec4 TANGENT;\n #endif\n\n #ifdef HAS_UV\n _attr vec2 TEXCOORD_0;\n #endif\n\n void main(void) {\n vec4 _NORMAL = vec4(0.);\n vec4 _TANGENT = vec4(0.);\n vec2 _TEXCOORD_0 = vec2(0.);\n\n #ifdef HAS_NORMALS\n _NORMAL = NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _TANGENT = TANGENT;\n #endif\n\n #ifdef HAS_UV\n _TEXCOORD_0 = TEXCOORD_0;\n #endif\n\n pbr_setPositionNormalTangentUV(POSITION, _NORMAL, _TANGENT, _TEXCOORD_0);\n gl_Position = u_MVPMatrix * POSITION;\n }\n"),fs:DR(t,"\n#if (__VERSION__ < 300)\n #define fragmentColor gl_FragColor\n#else\n out vec4 fragmentColor;\n#endif\n\n void main(void) {\n fragmentColor = pbr_filterColor(vec4(0));\n }\n"),managedResources:l},o));return c.setProps({attributes:s}),c.setUniforms(a.uniforms),c}(this.gl,Object.assign({id:t.name||`${n.name||n.id}-primitive-${e}`,drawMode:t.mode||4,vertexCount:t.indices?t.indices.count:this.getVertexCount(t.attributes),attributes:this.createAttributes(t.attributes,t.indices),material:t.material},this.options))}createAttributes(t,e){const n={};return Object.keys(t).forEach(e=>{n[e]=this.createAccessor(t[e],this.createBuffer(t[e],this.gl.ARRAY_BUFFER))}),e&&(n.indices=this.createAccessor(e,this.createBuffer(e,this.gl.ELEMENT_ARRAY_BUFFER))),Nw.info(4,"glTF Attributes",{attributes:t,indices:e,generated:n})(),n}createBuffer(t,e){t.bufferView||(t.bufferView={});const{bufferView:n}=t;return n.lumaBuffers||(n.lumaBuffers={}),n.lumaBuffers[e]||(n.lumaBuffers[e]=new tS(this.gl,{id:`from-${n.id}`,data:n.data||t.value,target:e})),n.lumaBuffers[e]}createAccessor(t,e){return new Kx({buffer:e,offset:t.byteOffset||0,stride:t.bufferView.byteStride||0,type:t.componentType,size:RR[t.type]})}createSampler(t){return t}needsPOT(){return!1}}function jR(t,e,n){if(t.byteLength<=e+n)return"";const i=new DataView(t);let r="";for(let s=0;se[t.name]);return new UR(n,this.metadata)}selectAt(...t){const e=t.map(t=>this.fields[t]).filter(Boolean);return new UR(e,this.metadata)}assign(t){let e,n=this.metadata;if(t instanceof UR){const i=t;e=i.fields,n=HR(HR(new Map,this.metadata),i.metadata)}else e=t;const i=Object.create(null);for(const s of this.fields)i[s.name]=s;for(const s of e)i[s.name]=s;const r=Object.values(i);return new UR(r,n)}}function HR(t,e){return new Map([...t||new Map,...e||new Map])}let $R,GR,WR,qR,XR,YR,KR,QR;!function(t){t[t.NONE=0]="NONE",t[t.Null=1]="Null",t[t.Int=2]="Int",t[t.Float=3]="Float",t[t.Binary=4]="Binary",t[t.Utf8=5]="Utf8",t[t.Bool=6]="Bool",t[t.Decimal=7]="Decimal",t[t.Date=8]="Date",t[t.Time=9]="Time",t[t.Timestamp=10]="Timestamp",t[t.Interval=11]="Interval",t[t.List=12]="List",t[t.Struct=13]="Struct",t[t.Union=14]="Union",t[t.FixedSizeBinary=15]="FixedSizeBinary",t[t.FixedSizeList=16]="FixedSizeList",t[t.Map=17]="Map",t[t.Dictionary=-1]="Dictionary",t[t.Int8=-2]="Int8",t[t.Int16=-3]="Int16",t[t.Int32=-4]="Int32",t[t.Int64=-5]="Int64",t[t.Uint8=-6]="Uint8",t[t.Uint16=-7]="Uint16",t[t.Uint32=-8]="Uint32",t[t.Uint64=-9]="Uint64",t[t.Float16=-10]="Float16",t[t.Float32=-11]="Float32",t[t.Float64=-12]="Float64",t[t.DateDay=-13]="DateDay",t[t.DateMillisecond=-14]="DateMillisecond",t[t.TimestampSecond=-15]="TimestampSecond",t[t.TimestampMillisecond=-16]="TimestampMillisecond",t[t.TimestampMicrosecond=-17]="TimestampMicrosecond",t[t.TimestampNanosecond=-18]="TimestampNanosecond",t[t.TimeSecond=-19]="TimeSecond",t[t.TimeMillisecond=-20]="TimeMillisecond",t[t.TimeMicrosecond=-21]="TimeMicrosecond",t[t.TimeNanosecond=-22]="TimeNanosecond",t[t.DenseUnion=-23]="DenseUnion",t[t.SparseUnion=-24]="SparseUnion",t[t.IntervalDayTime=-25]="IntervalDayTime",t[t.IntervalYearMonth=-26]="IntervalYearMonth"}($R||($R={}));class ZR{static isNull(t){return t&&t.typeId===$R.Null}static isInt(t){return t&&t.typeId===$R.Int}static isFloat(t){return t&&t.typeId===$R.Float}static isBinary(t){return t&&t.typeId===$R.Binary}static isUtf8(t){return t&&t.typeId===$R.Utf8}static isBool(t){return t&&t.typeId===$R.Bool}static isDecimal(t){return t&&t.typeId===$R.Decimal}static isDate(t){return t&&t.typeId===$R.Date}static isTime(t){return t&&t.typeId===$R.Time}static isTimestamp(t){return t&&t.typeId===$R.Timestamp}static isInterval(t){return t&&t.typeId===$R.Interval}static isList(t){return t&&t.typeId===$R.List}static isStruct(t){return t&&t.typeId===$R.Struct}static isUnion(t){return t&&t.typeId===$R.Union}static isFixedSizeBinary(t){return t&&t.typeId===$R.FixedSizeBinary}static isFixedSizeList(t){return t&&t.typeId===$R.FixedSizeList}static isMap(t){return t&&t.typeId===$R.Map}static isDictionary(t){return t&&t.typeId===$R.Dictionary}get typeId(){return $R.NONE}compareTo(t){return this===t}}Symbol,Symbol,GR=Symbol.toStringTag;class JR extends ZR{constructor(t,e){super(),cA(this,"isSigned",void 0),cA(this,"bitWidth",void 0),this.isSigned=t,this.bitWidth=e}get typeId(){return $R.Int}get[GR](){return"Int"}toString(){return`${this.isSigned?"I":"Ui"}nt${this.bitWidth}`}}class tN extends JR{constructor(){super(!0,8)}}class eN extends JR{constructor(){super(!0,16)}}class nN extends JR{constructor(){super(!0,32)}}class iN extends JR{constructor(){super(!1,8)}}class rN extends JR{constructor(){super(!1,16)}}class sN extends JR{constructor(){super(!1,32)}}WR=Symbol.toStringTag;class oN extends ZR{constructor(t){super(),cA(this,"precision",void 0),this.precision=t}get typeId(){return $R.Float}get[WR](){return"Float"}toString(){return`Float${this.precision}`}}class aN extends oN{constructor(){super(32)}}class lN extends oN{constructor(){super(64)}}Symbol,Symbol,qR=Symbol.toStringTag,XR=Symbol.toStringTag,YR=Symbol.toStringTag,KR=Symbol.toStringTag,QR=Symbol.toStringTag;class cN extends ZR{constructor(t,e){super(),cA(this,"listSize",void 0),cA(this,"children",void 0),this.listSize=t,this.children=[e]}get typeId(){return $R.FixedSizeList}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get[QR](){return"FixedSizeList"}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}}class uN{constructor(t,e,n=!1,i=new Map){cA(this,"name",void 0),cA(this,"type",void 0),cA(this,"nullable",void 0),cA(this,"metadata",void 0),this.name=t,this.type=e,this.nullable=n,this.metadata=i}get typeId(){return this.type&&this.type.typeId}clone(){return new uN(this.name,this.type,this.nullable,this.metadata)}compareTo(t){return this.name===t.name&&this.type===t.type&&this.nullable===t.nullable&&this.metadata===t.metadata}toString(){return`${this.type}${this.nullable?", nullable":""}${this.metadata?`, metadata: ${this.metadata}`:""}`}}function hN(t,e,n){const i=n?dN(n.metadata):void 0,r=function(t){switch(t.constructor){case Int8Array:return new tN;case Uint8Array:return new iN;case Int16Array:return new eN;case Uint16Array:return new rN;case Int32Array:return new nN;case Uint32Array:return new sN;case Float32Array:return new aN;case Float64Array:return new lN;default:throw new Error("array type not supported")}}(e.value);return new uN(t,new cN(e.size,new uN("value",r)),!1,i)}function dN(t){const e=new Map;for(const n in t)e.set(`${n}.string`,JSON.stringify(t[n]));return e}const pN={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},fN={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array};class gN{constructor(t){cA(this,"draco",void 0),cA(this,"decoder",void 0),cA(this,"metadataQuerier",void 0),this.draco=t,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}destroy(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}parseSync(t,e={}){const n=new this.draco.DecoderBuffer;n.Init(new Int8Array(t),t.byteLength),this._disableAttributeTransforms(e);const i=this.decoder.GetEncodedGeometryType(n),r=i===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let t;switch(i){case this.draco.TRIANGULAR_MESH:t=this.decoder.DecodeBufferToMesh(n,r);break;case this.draco.POINT_CLOUD:t=this.decoder.DecodeBufferToPointCloud(n,r);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!t.ok()||!r.ptr){const e=`DRACO decompression failed: ${t.error_msg()}`;throw new Error(e)}const s=this._getDracoLoaderData(r,i,e),o=this._getMeshData(r,s,e),a=function(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,o=-1/0;const a=t.POSITION?t.POSITION.value:[],l=a&&a.length;for(let c=0;cr?t:r,s=l>s?l:s,o=u>o?u:o}return[[e,n,i],[r,s,o]]}(o.attributes),l=function(t,e,n){const i=dN(e.metadata),r=[],s=function(t){const e={};for(const n in t){const i=t[n];e[i.name||"undefined"]=i}return e}(e.attributes);for(const o in t){const e=hN(o,t[o],s[o]);r.push(e)}if(n){const t=hN("indices",n);r.push(t)}return new UR(r,i)}(o.attributes,s,o.indices);return ii(wt({loader:"draco",loaderData:s,header:{vertexCount:r.num_points(),boundingBox:a}},o),{schema:l})}finally{this.draco.destroy(n),r&&this.draco.destroy(r)}}_getDracoLoaderData(t,e,n){const i=this._getTopLevelMetadata(t),r=this._getDracoAttributes(t,n);return{geometry_type:e,num_attributes:t.num_attributes(),num_points:t.num_points(),num_faces:t instanceof this.draco.Mesh?t.num_faces():0,metadata:i,attributes:r}}_getDracoAttributes(t,e){const n={};for(let i=0;ithis.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits(),range:e.range(),min_values:new Float32Array([1,2,3]).map(t=>e.min_value(t))}}finally{this.draco.destroy(e)}}return null}_getOctahedronTransform(t,e){const{octahedronAttributes:n=[]}=e,i=t.attribute_type();if(n.map(t=>this.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits()}}finally{this.draco.destroy(e)}}return null}}var mN=n(49125);const bN={};function yN(t){return vN.apply(this,arguments)}function vN(){return(vN=gS(function*(t,e=null,n={}){return e&&(t=_N(t,e,n)),bN[t]=bN[t]||wN(t),yield bN[t]})).apply(this,arguments)}function _N(t,e,n){if(t.startsWith("http"))return t;const i=n.modules||{};return i[t]?i[t]:CA?n.CDN?(wA(n.CDN.startsWith("http")),`${n.CDN}/${e}@3.0.12/dist/libs/${t}`):OA?`../src/libs/${t}`:`modules/${e}/src/libs/${t}`:`modules/${e}/dist/libs/${t}`}function wN(t){return xN.apply(this,arguments)}function xN(){return(xN=gS(function*(t){return t.endsWith("wasm")?yield(yield fetch(t)).arrayBuffer():CA?OA?importScripts(t):SN(yield(yield fetch(t)).text(),t):mN.requireFromFile&&(yield mN.requireFromFile(t))})).apply(this,arguments)}function SN(t,e){if(!CA)return mN.requireFromString&&mN.requireFromString(t,e);if(OA)return eval.call(EA,t),null;const n=document.createElement("script");n.id=e;try{n.appendChild(document.createTextNode(t))}catch(i){n.text=t}return document.body.appendChild(n),null}const EN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.js",CN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_wasm_wrapper.js",ON="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.wasm";let TN;function kN(t){return AN.apply(this,arguments)}function AN(){return(AN=gS(function*(t){const e=t.modules||{};return TN=e.draco3d?TN||e.draco3d.createDecoderModule({}).then(t=>({draco:t})):TN||PN(t),yield TN})).apply(this,arguments)}function PN(t){return MN.apply(this,arguments)}function MN(){return(MN=gS(function*(t){let e,n;switch(t.draco&&t.draco.decoderType){case"js":e=yield yN(EN,"draco",t);break;case"wasm":default:[e,n]=yield Promise.all([yield yN(CN,"draco",t),yield yN(ON,"draco",t)])}return e=e||globalThis.DracoDecoderModule,yield IN(e,n)})).apply(this,arguments)}function IN(t,e){const n={};return e&&(n.wasmBinary=e),new Promise(e=>{t(ii(wt({},n),{onModuleLoaded:t=>e({draco:t})}))})}const DN=ii(wt({},zR),{parse:function(t,e){return RN.apply(this,arguments)}});function RN(){return(RN=gS(function*(t,e){const{draco:n}=yield kN(e),i=new gN(n);try{return i.parseSync(t,null==e?void 0:e.draco)}finally{i.destroy()}})).apply(this,arguments)}function NN(t,e){return Nk(t>=0),Nk(e>0),t+(e-1)&~(e-1)}function LN(t,e,n){let i;return i=t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer||t.arrayBuffer,t.byteOffset,t.byteLength),e.set(i,n),n+NN(i.byteLength,4)}const jN=["SCALAR","VEC2","VEC3","VEC4"],FN=[[Int8Array,5120],[Uint8Array,5121],[Int16Array,5122],[Uint16Array,5123],[Uint32Array,5125],[Float32Array,5126],[Float64Array,5130]],BN=new Map(FN),VN={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},zN={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},UN={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function HN(t){return jN[t-1]||jN[0]}function $N(t){const e=BN.get(t.constructor);if(!e)throw new Error("Illegal typed array");return e}function GN(t,e){const n=UN[t.componentType],i=VN[t.type],r=t.count*i,s=t.count*i*zN[t.componentType];return FR(s>=0&&s<=e.byteLength),{ArrayType:n,length:r,byteLength:s}}const WN={asset:{version:"2.0",generator:"loaders.gl"},buffers:[]};class qN{constructor(t){cA(this,"gltf",void 0),cA(this,"sourceBuffers",void 0),cA(this,"byteLength",void 0),this.gltf=t||{json:wt({},WN),buffers:[]},this.sourceBuffers=[],this.byteLength=0,this.gltf.buffers&&this.gltf.buffers[0]&&(this.byteLength=this.gltf.buffers[0].byteLength,this.sourceBuffers=[this.gltf.buffers[0]])}get json(){return this.gltf.json}getApplicationData(t){return this.json[t]}getExtraData(t){return(this.json.extras||{})[t]}getExtension(t){return this.getUsedExtensions().find(e=>e===t)?(this.json.extensions||{})[t]||!0:null}getRequiredExtension(t){return this.getRequiredExtensions().find(e=>e===t)?this.getExtension(t):null}getRequiredExtensions(){return this.json.extensionsRequired||[]}getUsedExtensions(){return this.json.extensionsUsed||[]}getObjectExtension(t,e){return(t.extensions||{})[e]}getScene(t){return this.getObject("scenes",t)}getNode(t){return this.getObject("nodes",t)}getSkin(t){return this.getObject("skins",t)}getMesh(t){return this.getObject("meshes",t)}getMaterial(t){return this.getObject("materials",t)}getAccessor(t){return this.getObject("accessors",t)}getTexture(t){return this.getObject("textures",t)}getSampler(t){return this.getObject("samplers",t)}getImage(t){return this.getObject("images",t)}getBufferView(t){return this.getObject("bufferViews",t)}getBuffer(t){return this.getObject("buffers",t)}getObject(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];if(!n)throw new Error(`glTF file error: Could not find ${t}[${e}]`);return n}getTypedArrayForBufferView(t){t=this.getBufferView(t);const e=this.gltf.buffers[t.buffer];return FR(e),new Uint8Array(e.arrayBuffer,(t.byteOffset||0)+e.byteOffset,t.byteLength)}getTypedArrayForAccessor(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data,{ArrayType:i,length:r}=GN(t,e);return new i(n,e.byteOffset+t.byteOffset,r)}getTypedArrayForImageData(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data;return new Uint8Array(n,e.byteOffset||0,e.byteLength)}addApplicationData(t,e){return this.json[t]=e,this}addExtraData(t,e){return this.json.extras=this.json.extras||{},this.json.extras[t]=e,this}addObjectExtension(t,e,n){return t.extensions=t.extensions||{},t.extensions[e]=n,this.registerUsedExtension(e),this}setObjectExtension(t,e,n){(t.extensions||{})[e]=n}removeObjectExtension(t,e){const n=t.extensions||{},i=n[e];return delete n[e],i}addExtension(t,e={}){return FR(e),this.json.extensions=this.json.extensions||{},this.json.extensions[t]=e,this.registerUsedExtension(t),e}addRequiredExtension(t,e={}){return FR(e),this.addExtension(t,e),this.registerRequiredExtension(t),e}registerUsedExtension(t){this.json.extensionsUsed=this.json.extensionsUsed||[],this.json.extensionsUsed.find(e=>e===t)||this.json.extensionsUsed.push(t)}registerRequiredExtension(t){this.registerUsedExtension(t),this.json.extensionsRequired=this.json.extensionsRequired||[],this.json.extensionsRequired.find(e=>e===t)||this.json.extensionsRequired.push(t)}removeExtension(t){this.json.extensionsRequired&&this._removeStringFromArray(this.json.extensionsRequired,t),this.json.extensionsUsed&&this._removeStringFromArray(this.json.extensionsUsed,t),this.json.extensions&&delete this.json.extensions[t]}setDefaultScene(t){this.json.scene=t}addScene(t){const{nodeIndices:e}=t;return this.json.scenes=this.json.scenes||[],this.json.scenes.push({nodes:e}),this.json.scenes.length-1}addNode(t){const{meshIndex:e,matrix:n}=t;this.json.nodes=this.json.nodes||[];const i={mesh:e};return n&&(i.matrix=n),this.json.nodes.push(i),this.json.nodes.length-1}addMesh(t){const{attributes:e,indices:n,material:i,mode:r=4}=t,s={primitives:[{attributes:this._addAttributes(e),mode:r}]};if(n){const t=this._addIndices(n);s.primitives[0].indices=t}return Number.isFinite(i)&&(s.primitives[0].material=i),this.json.meshes=this.json.meshes||[],this.json.meshes.push(s),this.json.meshes.length-1}addPointCloud(t){const e={primitives:[{attributes:this._addAttributes(t),mode:0}]};return this.json.meshes=this.json.meshes||[],this.json.meshes.push(e),this.json.meshes.length-1}addImage(t,e){const n=YI(t),i=e||(null==n?void 0:n.mimeType),r={bufferView:this.addBufferView(t),mimeType:i};return this.json.images=this.json.images||[],this.json.images.push(r),this.json.images.length-1}addBufferView(t){const e=t.byteLength;FR(Number.isFinite(e)),this.sourceBuffers=this.sourceBuffers||[],this.sourceBuffers.push(t);const n={buffer:0,byteOffset:this.byteLength,byteLength:e};return this.byteLength+=NN(e,4),this.json.bufferViews=this.json.bufferViews||[],this.json.bufferViews.push(n),this.json.bufferViews.length-1}addAccessor(t,e){const n={bufferView:t,type:HN(e.size),componentType:e.componentType,count:e.count,max:e.max,min:e.min};return this.json.accessors=this.json.accessors||[],this.json.accessors.push(n),this.json.accessors.length-1}addBinaryBuffer(t,e={size:3}){const n=this.addBufferView(t);let i={min:e.min,max:e.max};(!i.min||!i.max)&&(i=this._getAccessorMinMax(t,e.size));const r={size:e.size,componentType:$N(t),count:Math.round(t.length/e.size),min:i.min,max:i.max};return this.addAccessor(n,Object.assign(r,e))}addTexture(t){const{imageIndex:e}=t,n={source:e};return this.json.textures=this.json.textures||[],this.json.textures.push(n),this.json.textures.length-1}addMaterial(t){return this.json.materials=this.json.materials||[],this.json.materials.push(t),this.json.materials.length-1}createBinaryChunk(){var t,e;this.gltf.buffers=[];const n=this.byteLength,i=new ArrayBuffer(n),r=new Uint8Array(i);let s=0;for(const o of this.sourceBuffers||[])s=LN(o,r,s);null!==(t=this.json)&&void 0!==t&&null!==(e=t.buffers)&&void 0!==e&&e[0]?this.json.buffers[0].byteLength=n:this.json.buffers=[{byteLength:n}],this.gltf.binary=i,this.sourceBuffers=[i]}_removeStringFromArray(t,e){let n=!0;for(;n;){const i=t.indexOf(e);i>-1?t.splice(i,1):n=!1}}_addAttributes(t={}){const e={};for(const n in t){const i=t[n],r=this._getGltfAttributeName(n),s=this.addBinaryBuffer(i.value,i);e[r]=s}return e}_addIndices(t){return this.addBinaryBuffer(t,{size:1})}_getGltfAttributeName(t){switch(t.toLowerCase()){case"position":case"positions":case"vertices":return"POSITION";case"normal":case"normals":return"NORMAL";case"color":case"colors":return"COLOR_0";case"texcoord":case"texcoords":return"TEXCOORD_0";default:return t}}_getAccessorMinMax(t,e){const n={min:null,max:null};if(t.length0)throw new Error("glTF: Empty primitive detected: Draco decompression failure?")}function*lL(t){for(const e of t.json.meshes||[])for(const t of e.primitives)yield t}function cL(t){return uL.apply(this,arguments)}function uL(){return(uL=gS(function*(t){const e=new qN(t),{json:n}=e;e.removeExtension(QN);for(const i of n.materials||[])i.extensions&&i.extensions.KHR_materials_unlit&&(i.unlit=!0),e.removeObjectExtension(i,QN)})).apply(this,arguments)}function hL(t){const e=new qN(t),{json:n}=e;if(e.materials)for(const i of n.materials||[])i.unlit&&(delete i.unlit,e.addObjectExtension(i,QN,{}),e.addExtension(QN))}function dL(t){return pL.apply(this,arguments)}function pL(){return(pL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(KN);i&&(e.json.lights=i.lights,e.removeExtension(KN));for(const r of n.nodes||[]){const t=e.getObjectExtension(r,KN);t&&(r.light=t.light),e.removeObjectExtension(r,KN)}})).apply(this,arguments)}function fL(t){return gL.apply(this,arguments)}function gL(){return(gL=gS(function*(t){const e=new qN(t),{json:n}=e;if(n.lights){const t=e.addExtension(KN);FR(!t.lights),t.lights=n.lights,delete n.lights}if(e.json.lights){for(const t of e.json.lights)e.addObjectExtension(t.node,KN,t);delete e.json.lights}})).apply(this,arguments)}function mL(t){return bL.apply(this,arguments)}function bL(){return(bL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(ZN);if(i){const t=_L(i,e);for(const i of n.materials||[]){const n=e.getObjectExtension(i,ZN);n&&(i.technique=Object.assign({},n,t[n.technique]),i.technique.values=wL(i.technique,e)),e.removeObjectExtension(i,ZN)}e.removeExtension(ZN)}})).apply(this,arguments)}function yL(t,e){return vL.apply(this,arguments)}function vL(){return(vL=gS(function*(t,e){})).apply(this,arguments)}function _L(t,e){const{programs:n=[],shaders:i=[],techniques:r=[]}=t,s=new TextDecoder;return i.forEach(t=>{if(!Number.isFinite(t.bufferView))throw new Error("KHR_techniques_webgl: no shader code");t.code=s.decode(e.getTypedArrayForBufferView(t.bufferView))}),n.forEach(t=>{t.fragmentShader=i[t.fragmentShader],t.vertexShader=i[t.vertexShader]}),r.forEach(t=>{t.program=n[t.program]}),r}function wL(t,e){const n=Object.assign({},t.values);return Object.keys(t.uniforms||{}).forEach(e=>{t.uniforms[e].value&&!(e in n)&&(n[e]=t.uniforms[e].value)}),Object.keys(n).forEach(t=>{"object"==typeof n[t]&&void 0!==n[t].index&&(n[t].texture=e.getTexture(n[t].index))}),n}const xL={KHR_draco_mesh_compression:i,KHR_materials_unlit:r,KHR_lights_punctual:s,KHR_techniques_webgl:o};function SL(t){return EL.apply(this,arguments)}function EL(){return(EL=gS(function*(t,e={},n){for(const r in xL){var i;const s=(null==e||null===(i=e.gltf)||void 0===i?void 0:i.excludeExtensions)||{};r in s&&!s[r]||(yield xL[r].decode(t,e,n))}})).apply(this,arguments)}const CL={accessors:"accessor",animations:"animation",buffers:"buffer",bufferViews:"bufferView",images:"image",materials:"material",meshes:"mesh",nodes:"node",samplers:"sampler",scenes:"scene",skins:"skin",textures:"texture"},OL={accessor:"accessors",animations:"animation",buffer:"buffers",bufferView:"bufferViews",image:"images",material:"materials",mesh:"meshes",node:"nodes",sampler:"samplers",scene:"scenes",skin:"skins",texture:"textures"};class TL{constructor(t){this.idToIndexMap={animations:{},accessors:{},buffers:{},bufferViews:{},images:{},materials:{},meshes:{},nodes:{},samplers:{},scenes:{},skins:{},textures:{}}}normalize(t,e){this.json=t.json;const n=t.json;switch(n.asset&&n.asset.version){case"2.0":return;case void 0:case"1.0":break;default:return void console.warn(`glTF: Unknown version ${n.asset.version}`)}if(!e.normalize)throw new Error("glTF v1 is not supported.");console.warn("Converting glTF v1 to glTF v2 format. This is experimental and may fail."),this._addAsset(n),this._convertTopLevelObjectsToArrays(n),function(t){const e=new qN(t),{json:n}=e;for(const i of n.images||[]){const t=e.removeObjectExtension(i,XN);t&&Object.assign(i,t)}n.buffers&&n.buffers[0]&&delete n.buffers[0].uri,e.removeExtension(XN)}(t),this._convertObjectIdsToArrayIndices(n),this._updateObjects(n),this._updateMaterial(n)}_addAsset(t){t.asset=t.asset||{},t.asset.version="2.0",t.asset.generator=t.asset.generator||"Normalized to glTF 2.0 by loaders.gl"}_convertTopLevelObjectsToArrays(t){for(const e in CL)this._convertTopLevelObjectToArray(t,e)}_convertTopLevelObjectToArray(t,e){const n=t[e];if(n&&!Array.isArray(n)){t[e]=[];for(const i in n){const r=n[i];r.id=r.id||i;const s=t[e].length;t[e].push(r),this.idToIndexMap[e][i]=s}}}_convertObjectIdsToArrayIndices(t){for(const e in CL)this._convertIdsToIndices(t,e);"scene"in t&&(t.scene=this._convertIdToIndex(t.scene,"scene"));for(const e of t.textures)this._convertTextureIds(e);for(const e of t.meshes)this._convertMeshIds(e);for(const e of t.nodes)this._convertNodeIds(e);for(const e of t.scenes)this._convertSceneIds(e)}_convertTextureIds(t){t.source&&(t.source=this._convertIdToIndex(t.source,"image"))}_convertMeshIds(t){for(const e of t.primitives){const{attributes:t,indices:n,material:i}=e;for(const e in t)t[e]=this._convertIdToIndex(t[e],"accessor");n&&(e.indices=this._convertIdToIndex(n,"accessor")),i&&(e.material=this._convertIdToIndex(i,"material"))}}_convertNodeIds(t){t.children&&(t.children=t.children.map(t=>this._convertIdToIndex(t,"node"))),t.meshes&&(t.meshes=t.meshes.map(t=>this._convertIdToIndex(t,"mesh")))}_convertSceneIds(t){t.nodes&&(t.nodes=t.nodes.map(t=>this._convertIdToIndex(t,"node")))}_convertIdsToIndices(t,e){t[e]||(console.warn(`gltf v1: json doesn't contain attribute ${e}`),t[e]=[]);for(const n of t[e])for(const t in n){const e=this._convertIdToIndex(n[t],t);n[t]=e}}_convertIdToIndex(t,e){const n=OL[e];if(n in this.idToIndexMap){const i=this.idToIndexMap[n][t];if(!Number.isFinite(i))throw new Error(`gltf v1: failed to resolve ${e} with id ${t}`);return i}return t}_updateObjects(t){for(const e of this.json.buffers)delete e.type}_updateMaterial(t){for(const e of t.materials){e.pbrMetallicRoughness={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1};const n=e.values&&e.values.tex,i=t.textures.findIndex(t=>t.id===n);-1!==i&&(e.pbrMetallicRoughness.baseColorTexture={index:i})}}}function kL(t,e={}){return(new TL).normalize(t,e)}const AL={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},PL={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},ML={TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,REPEAT:10497,LINEAR:9729,NEAREST_MIPMAP_LINEAR:9986},IL={magFilter:ML.TEXTURE_MAG_FILTER,minFilter:ML.TEXTURE_MIN_FILTER,wrapS:ML.TEXTURE_WRAP_S,wrapT:ML.TEXTURE_WRAP_T},DL={[ML.TEXTURE_MAG_FILTER]:ML.LINEAR,[ML.TEXTURE_MIN_FILTER]:ML.NEAREST_MIPMAP_LINEAR,[ML.TEXTURE_WRAP_S]:ML.REPEAT,[ML.TEXTURE_WRAP_]:ML.REPEAT};class RL{postProcess(t,e={}){const{json:n,buffers:i=[],images:r=[],baseUri:s=""}=t;return FR(n),this.baseUri=s,this.json=n,this.buffers=i,this.images=r,this._resolveTree(this.json,e),this.json}_resolveTree(t,e={}){t.bufferViews&&(t.bufferViews=t.bufferViews.map((t,e)=>this._resolveBufferView(t,e))),t.images&&(t.images=t.images.map((t,e)=>this._resolveImage(t,e))),t.samplers&&(t.samplers=t.samplers.map((t,e)=>this._resolveSampler(t,e))),t.textures&&(t.textures=t.textures.map((t,e)=>this._resolveTexture(t,e))),t.accessors&&(t.accessors=t.accessors.map((t,e)=>this._resolveAccessor(t,e))),t.materials&&(t.materials=t.materials.map((t,e)=>this._resolveMaterial(t,e))),t.meshes&&(t.meshes=t.meshes.map((t,e)=>this._resolveMesh(t,e))),t.nodes&&(t.nodes=t.nodes.map((t,e)=>this._resolveNode(t,e))),t.skins&&(t.skins=t.skins.map((t,e)=>this._resolveSkin(t,e))),t.scenes&&(t.scenes=t.scenes.map((t,e)=>this._resolveScene(t,e))),void 0!==t.scene&&(t.scene=t.scenes[this.json.scene])}getScene(t){return this._get("scenes",t)}getNode(t){return this._get("nodes",t)}getSkin(t){return this._get("skins",t)}getMesh(t){return this._get("meshes",t)}getMaterial(t){return this._get("materials",t)}getAccessor(t){return this._get("accessors",t)}getCamera(t){return null}getTexture(t){return this._get("textures",t)}getSampler(t){return this._get("samplers",t)}getImage(t){return this._get("images",t)}getBufferView(t){return this._get("bufferViews",t)}getBuffer(t){return this._get("buffers",t)}_get(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];return n||console.warn(`glTF file error: Could not find ${t}[${e}]`),n}_resolveScene(t,e){return t.id=t.id||`scene-${e}`,t.nodes=(t.nodes||[]).map(t=>this.getNode(t)),t}_resolveNode(t,e){return t.id=t.id||`node-${e}`,t.children&&(t.children=t.children.map(t=>this.getNode(t))),void 0!==t.mesh?t.mesh=this.getMesh(t.mesh):void 0!==t.meshes&&t.meshes.length&&(t.mesh=t.meshes.reduce((t,e)=>{const n=this.getMesh(e);return t.id=n.id,t.primitives=t.primitives.concat(n.primitives),t},{primitives:[]})),void 0!==t.camera&&(t.camera=this.getCamera(t.camera)),void 0!==t.skin&&(t.skin=this.getSkin(t.skin)),t}_resolveSkin(t,e){return t.id=t.id||`skin-${e}`,t.inverseBindMatrices=this.getAccessor(t.inverseBindMatrices),t}_resolveMesh(t,e){return t.id=t.id||`mesh-${e}`,t.primitives&&(t.primitives=t.primitives.map(t=>{const e=(t=wt({},t)).attributes;t.attributes={};for(const n in e)t.attributes[n]=this.getAccessor(e[n]);return void 0!==t.indices&&(t.indices=this.getAccessor(t.indices)),void 0!==t.material&&(t.material=this.getMaterial(t.material)),t})),t}_resolveMaterial(t,e){if(t.id=t.id||`material-${e}`,t.normalTexture&&(t.normalTexture=wt({},t.normalTexture),t.normalTexture.texture=this.getTexture(t.normalTexture.index)),t.occlusionTexture&&(t.occlustionTexture=wt({},t.occlustionTexture),t.occlusionTexture.texture=this.getTexture(t.occlusionTexture.index)),t.emissiveTexture&&(t.emmisiveTexture=wt({},t.emmisiveTexture),t.emissiveTexture.texture=this.getTexture(t.emissiveTexture.index)),t.emissiveFactor||(t.emissiveFactor=t.emmisiveTexture?[1,1,1]:[0,0,0]),t.pbrMetallicRoughness){t.pbrMetallicRoughness=wt({},t.pbrMetallicRoughness);const e=t.pbrMetallicRoughness;e.baseColorTexture&&(e.baseColorTexture=wt({},e.baseColorTexture),e.baseColorTexture.texture=this.getTexture(e.baseColorTexture.index)),e.metallicRoughnessTexture&&(e.metallicRoughnessTexture=wt({},e.metallicRoughnessTexture),e.metallicRoughnessTexture.texture=this.getTexture(e.metallicRoughnessTexture.index))}return t}_resolveAccessor(t,e){if(t.id=t.id||`accessor-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView)),t.bytesPerComponent=function(t){return PL[t]}(t.componentType),t.components=function(t){return AL[t]}(t.type),t.bytesPerElement=t.bytesPerComponent*t.components,t.bufferView){const e=t.bufferView.buffer,{ArrayType:n,byteLength:i}=GN(t,t.bufferView),r=(t.bufferView.byteOffset||0)+(t.byteOffset||0)+e.byteOffset,s=e.arrayBuffer.slice(r,r+i);t.value=new n(s)}return t}_resolveTexture(t,e){return t.id=t.id||`texture-${e}`,t.sampler="sampler"in t?this.getSampler(t.sampler):DL,t.source=this.getImage(t.source),t}_resolveSampler(t,e){t.id=t.id||`sampler-${e}`,t.parameters={};for(const n in t){const e=this._enumSamplerParameter(n);void 0!==e&&(t.parameters[e]=t[n])}return t}_enumSamplerParameter(t){return IL[t]}_resolveImage(t,e){t.id=t.id||`image-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView));const n=this.images[e];return n&&(t.image=n),t}_resolveBufferView(t,e){t.id=t.id||`bufferView-${e}`;const n=t.buffer;t.buffer=this.buffers[n];let i=this.buffers[n].byteOffset||0;return"byteOffset"in t&&(i+=t.byteOffset),t.data=new Uint8Array(this.buffers[n].arrayBuffer,i,t.byteLength),t}_resolveCamera(t,e){return t.id=t.id||`camera-${e}`,t}}function NL(t,e){return(new RL).postProcess(t,e)}const LL=1735152710,jL=!0;function FL(t,e,n,i){const r=new Uint8Array(e.buffer,n,i),s=new TextDecoder("utf8").decode(r);return t.json=JSON.parse(s),NN(i,4)}function BL(t,e,n,i){return t.header.hasBinChunk=!0,t.binChunks.push({byteOffset:n,byteLength:i,arrayBuffer:e.buffer}),NN(i,4)}function VL(t,e){return zL.apply(this,arguments)}function zL(){return(zL=gS(function*(t,e,n=0,i,r){var s,o,a,l;UL(t,e,n,i),kL(t,{normalize:null==i||null===(s=i.gltf)||void 0===s?void 0:s.normalize});const c=[];if(null!=i&&null!==(o=i.gltf)&&void 0!==o&&o.loadBuffers&&t.json.buffers&&(yield HL(t,i,r)),null!=i&&null!==(a=i.gltf)&&void 0!==a&&a.loadImages){const e=GL(t,i,r);c.push(e)}const u=SL(t,i,r);return c.push(u),yield Promise.all(c),null!=i&&null!==(l=i.gltf)&&void 0!==l&&l.postProcess?NL(t,i):t})).apply(this,arguments)}function UL(t,e,n,i){if(i.uri&&(t.baseUri=i.uri),e instanceof ArrayBuffer&&!function(t,e=0,n={}){const i=new DataView(t),{magic:r=LL}=n,s=i.getUint32(e,!1);return s===r||s===LL}(e,n,i)&&(e=(new TextDecoder).decode(e)),"string"==typeof e)t.json=function(t){try{return JSON.parse(t)}catch(e){throw new Error(`Failed to parse JSON from data starting with "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?jR(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?jR(t,0,e):""}(t)}"`)}}(e);else if(e instanceof ArrayBuffer){const r={};n=function(t,e,n=0,i={}){const r=new DataView(e),s=function(t,e=0){return`${String.fromCharCode(t.getUint8(e+0))}${String.fromCharCode(t.getUint8(e+1))}${String.fromCharCode(t.getUint8(e+2))}${String.fromCharCode(t.getUint8(e+3))}`}(r,n+0),o=r.getUint32(n+4,jL),a=r.getUint32(n+8,jL);switch(Object.assign(t,{header:{byteOffset:n,byteLength:a,hasBinChunk:!1},type:s,version:o,json:{},binChunks:[]}),n+=12,t.version){case 1:return function(t,e,n){Nk(t.header.byteLength>20);const i=e.getUint32(n+0,jL),r=e.getUint32(n+4,jL);return n+=8,Nk(0===r),FL(t,e,n,i),(n+=i)+BL(t,e,n,t.header.byteLength)}(t,r,n);case 2:return function(t,e,n,i){return Nk(t.header.byteLength>20),function(t,e,n,i){for(;n+8<=t.header.byteLength;){const r=e.getUint32(n+0,jL),s=e.getUint32(n+4,jL);switch(n+=8,s){case 1313821514:FL(t,e,n,r);break;case 5130562:BL(t,e,n,r);break;case 0:i.strict||FL(t,e,n,r);break;case 1:i.strict||BL(t,e,n,r)}n+=NN(r,4)}}(t,e,n,{}),n+t.header.byteLength}(t,r,n);default:throw new Error(`Invalid GLB version ${t.version}. Only supports v1 and v2.`)}}(r,e,n,i.glb),FR("glTF"===r.type,`Invalid GLB magic string ${r.type}`),t._glb=r,t.json=r.json}else FR(!1,"GLTF: must be ArrayBuffer or string");if(t.buffers=new Array((t.json.buffers||[]).length).fill(null),t._glb&&t._glb.header.hasBinChunk){const{binChunks:e}=t._glb;t.buffers[0]={arrayBuffer:e[0].arrayBuffer,byteOffset:e[0].byteOffset,byteLength:e[0].byteLength}}t.images=new Array((t.json.images||[]).length).fill({})}function HL(t,e,n){return $L.apply(this,arguments)}function $L(){return($L=gS(function*(t,e,n){for(let s=0;s{t.traverse(t=>{Object.values(t.model.getUniforms()).forEach(t=>{!1===t.loaded&&e.push(t)})})}),yield ZL(()=>e.some(t=>!t.loaded))})).apply(this,arguments)}function ZL(t){return JL.apply(this,arguments)}function JL(){return(JL=gS(function*(t){for(;t();)yield new Promise(t=>requestAnimationFrame(t))})).apply(this,arguments)}const tj=[255,255,255,255],ej={scenegraph:{type:"object",value:null,async:!0},getScene:t=>t&&t.scenes?"object"==typeof t.scene?t.scene:t.scenes[t.scene||0]:t,getAnimator:t=>t&&t.animator,_animations:null,sizeScale:{type:"number",value:1,min:0},sizeMinPixels:{type:"number",min:0,value:0},sizeMaxPixels:{type:"number",min:0,value:Number.MAX_SAFE_INTEGER},getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:tj},_lighting:"flat",_imageBasedLightingEnvironment:null,getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]},loaders:[YL]};let nj=(()=>{class t extends LP{getShaders(){const t=[qD,eR];return"pbr"===this.props._lighting&&t.push(gR),{vs:"#version 300 es\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nuniform float sizeScale;\nuniform float sizeMinPixels;\nuniform float sizeMaxPixels;\nuniform mat4 sceneModelMatrix;\nuniform bool composeModelMatrix;\nin vec4 POSITION;\n\n#ifdef HAS_UV\n in vec2 TEXCOORD_0;\n#endif\n\n#ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n in vec4 NORMAL;\n #endif\n#endif\nout vec4 vColor;\n#ifndef MODULE_PBR\n #ifdef HAS_UV\n out vec2 vTEXCOORD_0;\n #endif\n#endif\nvoid main(void) {\n #if defined(HAS_UV) && !defined(MODULE_PBR)\n vTEXCOORD_0 = TEXCOORD_0;\n geometry.uv = vTEXCOORD_0;\n #endif\n\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n\n #ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n pbr_vNormal = project_normal(instanceModelMatrix * (sceneModelMatrix * vec4(NORMAL.xyz, 0.0)).xyz);\n geometry.normal = pbr_vNormal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV = TEXCOORD_0;\n #else\n pbr_vUV = vec2(0., 0.);\n #endif\n geometry.uv = pbr_vUV;\n #endif\n\n float originalSize = project_size_to_pixel(sizeScale);\n float clampedSize = clamp(originalSize, sizeMinPixels, sizeMaxPixels);\n\n vec3 pos = (instanceModelMatrix * (sceneModelMatrix * POSITION).xyz) * sizeScale * (clampedSize / originalSize) + instanceTranslation;\n if(composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), geometry.position);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, geometry.position);\n }\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBR\n pbr_vPosition = geometry.position.xyz;\n #endif\n\n vColor = instanceColors;\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\nuniform float opacity;\nin vec4 vColor;\n\nout vec4 fragmentColor;\n#ifndef MODULE_PBR\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n in vec2 vTEXCOORD_0;\n uniform sampler2D u_BaseColorSampler;\n #endif\n#endif\n\nvoid main(void) {\n #ifdef MODULE_PBR\n fragmentColor = vColor * pbr_filterColor(vec4(0));\n geometry.uv = pbr_vUV;\n #else\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n fragmentColor = vColor * texture2D(u_BaseColorSampler, vTEXCOORD_0);\n geometry.uv = vTEXCOORD_0;\n #else\n fragmentColor = vColor;\n #endif\n #endif\n\n fragmentColor.a *= opacity;\n DECKGL_FILTER_COLOR(fragmentColor, geometry);\n}\n",modules:t}}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:5130,fp64:this.use64bitPositions(),accessor:"getPosition",transition:!0},instanceColors:{type:5121,size:this.props.colorFormat.length,accessor:"getColor",normalized:!0,defaultValue:tj,transition:!0},instanceModelMatrix:cR})}updateState(t){super.updateState(t);const{props:e,oldProps:n}=t;e.scenegraph!==n.scenegraph?this._updateScenegraph(e):e._animations!==n._animations&&this._applyAnimationsProp(this.state.scenegraph,this.state.animator,e._animations)}finalizeState(){super.finalizeState(),this._deleteScenegraph()}_updateScenegraph(t){const{gl:e}=this.context;let n=null;if(t.scenegraph instanceof mR)n={scenes:[t.scenegraph]};else if(t.scenegraph&&!t.scenegraph.gltf){const i=t.scenegraph,r=function(t,e,n){const i=new LR(t,n);return{scenes:i.instantiate(e),animator:i.createAnimator()}}(e,i,this._getModelOptions());n=wt({gltf:i},r),function(t){return QL.apply(this,arguments)}(r).then(()=>this.setNeedsRedraw())}else t.scenegraph&&(Mw.deprecated("ScenegraphLayer.props.scenegraph","Use GLTFLoader instead of GLTFScenegraphLoader")(),n=t.scenegraph);const i={layer:this,gl:e},r=t.getScene(n,i),s=t.getAnimator(n,i);r instanceof mR?(this._deleteScenegraph(),this._applyAllAttributes(r),this._applyAnimationsProp(r,s,t._animations),this.setState({scenegraph:r,animator:s})):null!==r&&Mw.warn("invalid scenegraph:",r)()}_applyAllAttributes(t){if(this.state.attributesAvailable){const e=this.getAttributeManager().getAttributes();t.traverse(t=>{this._setModelAttributes(t.model,e)})}}_applyAnimationsProp(t,e,n){if(!t||!e||!n)return;const i=e.getAnimations();Object.keys(n).sort().forEach(t=>{const e=n[t];if("*"===t)i.forEach(t=>{Object.assign(t,e)});else if(Number.isFinite(Number(t))){const n=Number(t);n>=0&&ne===t);n?Object.assign(n,e):Mw.warn("animation ".concat(t," not found"))()}})}_deleteScenegraph(){const{scenegraph:t}=this.state;t instanceof mR&&t.delete()}_getModelOptions(){const{_imageBasedLightingEnvironment:t}=this.props;let e=null;return t&&(e="function"==typeof t?t({gl:this.context.gl,layer:this}):t),{gl:this.context.gl,waitForFullLoad:!0,imageBasedLightingEnvironment:e,modelOptions:wt({isInstanced:!0,transpileToGLSL100:!Fw(this.context.gl)},this.getShaders()),useTangents:!1}}updateAttributes(t){this.setState({attributesAvailable:!0}),this.state.scenegraph&&this.state.scenegraph.traverse(e=>{this._setModelAttributes(e.model,t)})}draw({moduleParameters:t=null,parameters:e={},context:n}){if(!this.state.scenegraph)return;this.props._animations&&this.state.animator&&(this.state.animator.animate(n.timeline.getTime()),this.setNeedsRedraw());const{viewport:i}=this.context,{sizeScale:r,sizeMinPixels:s,sizeMaxPixels:o,opacity:a,coordinateSystem:l}=this.props,c=this.getNumInstances();this.state.scenegraph.traverse((n,{worldMatrix:u})=>{n.model.setInstanceCount(c),n.updateModuleSettings(t),n.draw({parameters:e,uniforms:{sizeScale:r,opacity:a,sizeMinPixels:s,sizeMaxPixels:o,composeModelMatrix:uR(i,l),sceneModelMatrix:u,u_Camera:n.model.getUniforms().project_uCameraPosition}})})}}return t.layerName="ScenegraphLayer",t.defaultProps=ej,t})();const ij=new Uint16Array([0,1,2,0,2,3,4,5,6,4,6,7,8,9,10,8,10,11,12,13,14,12,14,15,16,17,18,16,18,19,20,21,22,20,22,23]),rj=new Float32Array([-1,-1,1,1,-1,1,1,1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1]),sj=new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,0]),oj=new Float32Array([0,0,1,0,1,1,0,1,1,0,1,1,0,1,0,0,0,1,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,0,1]),aj={POSITION:{size:3,value:new Float32Array(rj)},NORMAL:{size:3,value:new Float32Array(sj)},TEXCOORD_0:{size:2,value:new Float32Array(oj)}};class lj extends iR{constructor(t={}){const{id:e=Fx("cube-geometry")}=t;super(ii(wt({},t),{id:e,indices:{size:1,value:new Uint16Array(ij)},attributes:wt(wt({},aj),t.attributes)}))}}class cj{constructor(t=[0,0,0,0,0,0,0,0,0]){this.elements=void 0,this.elements=t}identity(){const t=this.elements;t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1}setZero(){const t=this.elements;t[0]=0,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t[8]=0}setTrace(t){const e=this.elements;e[0]=t.x,e[4]=t.y,e[8]=t.z}getTrace(t=new hj){const e=this.elements;return t.x=e[0],t.y=e[4],t.z=e[8],t}vmult(t,e=new hj){const n=this.elements,i=t.x,r=t.y,s=t.z;return e.x=n[0]*i+n[1]*r+n[2]*s,e.y=n[3]*i+n[4]*r+n[5]*s,e.z=n[6]*i+n[7]*r+n[8]*s,e}smult(t){for(let e=0;e0){const t=1/i;this.x*=t,this.y*=t,this.z*=t}else this.x=0,this.y=0,this.z=0;return i}unit(t=new hj){const e=this.x,n=this.y,i=this.z;let r=Math.sqrt(e*e+n*n+i*i);return r>0?(r=1/r,t.x=e*r,t.y=n*r,t.z=i*r):(t.x=1,t.y=0,t.z=0),t}length(){const t=this.x,e=this.y,n=this.z;return Math.sqrt(t*t+e*e+n*n)}lengthSquared(){return this.dot(this)}distanceTo(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return Math.sqrt((r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i))}distanceSquared(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return(r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i)}scale(t,e=new hj){const n=this.y,i=this.z;return e.x=t*this.x,e.y=t*n,e.z=t*i,e}vmul(t,e=new hj){return e.x=t.x*this.x,e.y=t.y*this.y,e.z=t.z*this.z,e}addScaledVector(t,e,n=new hj){return n.x=this.x+t*e.x,n.y=this.y+t*e.y,n.z=this.z+t*e.z,n}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}isZero(){return 0===this.x&&0===this.y&&0===this.z}negate(t=new hj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t}tangents(t,e){const n=this.length();if(n>0){const i=dj,r=1/n;i.set(this.x*r,this.y*r,this.z*r);const s=pj;Math.abs(i.x)<.9?(s.set(1,0,0),i.cross(s,t)):(s.set(0,1,0),i.cross(s,t)),i.cross(t,e)}else t.set(1,0,0),e.set(0,1,0)}toString(){return this.x+","+this.y+","+this.z}toArray(){return[this.x,this.y,this.z]}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}lerp(t,e,n){const i=this.x,r=this.y,s=this.z;n.x=i+(t.x-i)*e,n.y=r+(t.y-r)*e,n.z=s+(t.z-s)*e}almostEquals(t,e=1e-6){return!(Math.abs(this.x-t.x)>e||Math.abs(this.y-t.y)>e||Math.abs(this.z-t.z)>e)}almostZero(t=1e-6){return!(Math.abs(this.x)>t||Math.abs(this.y)>t||Math.abs(this.z)>t)}isAntiparallelTo(t,e){return this.negate(fj),fj.almostEquals(t,e)}clone(){return new hj(this.x,this.y,this.z)}}hj.ZERO=void 0,hj.UNIT_X=void 0,hj.UNIT_Y=void 0,hj.UNIT_Z=void 0,hj.ZERO=new hj(0,0,0),hj.UNIT_X=new hj(1,0,0),hj.UNIT_Y=new hj(0,1,0),hj.UNIT_Z=new hj(0,0,1);const dj=new hj,pj=new hj,fj=new hj;class gj{constructor(t={}){this.lowerBound=void 0,this.upperBound=void 0,this.lowerBound=new hj,this.upperBound=new hj,t.lowerBound&&this.lowerBound.copy(t.lowerBound),t.upperBound&&this.upperBound.copy(t.upperBound)}setFromPoints(t,e,n,i){const r=this.lowerBound,s=this.upperBound,o=n;r.copy(t[0]),o&&o.vmult(r,r),s.copy(r);for(let a=1;as.x&&(s.x=e.x),e.xs.y&&(s.y=e.y),e.ys.z&&(s.z=e.z),e.z=r.x&&e.y<=i.y&&n.y>=r.y&&e.z<=i.z&&n.z>=r.z}getCorners(t,e,n,i,r,s,o,a){const l=this.lowerBound,c=this.upperBound;t.copy(l),e.set(c.x,l.y,l.z),n.set(c.x,c.y,l.z),i.set(l.x,c.y,c.z),r.set(c.x,l.y,c.z),s.set(l.x,c.y,l.z),o.set(l.x,l.y,c.z),a.copy(c)}toLocalFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToLocal(e,e)}return e.setFromPoints(n)}toWorldFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToWorld(e,e)}return e.setFromPoints(n)}overlapsRay(t){const{direction:e,from:n}=t,i=1/e.x,r=1/e.y,s=1/e.z,o=(this.lowerBound.x-n.x)*i,a=(this.upperBound.x-n.x)*i,l=(this.lowerBound.y-n.y)*r,c=(this.upperBound.y-n.y)*r,u=(this.lowerBound.z-n.z)*s,h=(this.upperBound.z-n.z)*s,d=Math.max(Math.max(Math.min(o,a),Math.min(l,c)),Math.min(u,h)),p=Math.min(Math.min(Math.max(o,a),Math.max(l,c)),Math.max(u,h));return!(p<0||d>p)}}const mj=new hj,bj=[new hj,new hj,new hj,new hj,new hj,new hj,new hj,new hj];class yj{constructor(t=0,e=0,n=0,i=1){this.x=void 0,this.y=void 0,this.z=void 0,this.w=void 0,this.x=t,this.y=e,this.z=n,this.w=i}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}toString(){return this.x+","+this.y+","+this.z+","+this.w}toArray(){return[this.x,this.y,this.z,this.w]}setFromAxisAngle(t,e){const n=Math.sin(.5*e);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(.5*e),this}toAxisAngle(t=new hj){this.normalize();const e=2*Math.acos(this.w),n=Math.sqrt(1-this.w*this.w);return n<.001?(t.x=this.x,t.y=this.y,t.z=this.z):(t.x=this.x/n,t.y=this.y/n,t.z=this.z/n),[t,e]}setFromVectors(t,e){if(t.isAntiparallelTo(e)){const e=vj;t.tangents(e,_j),this.setFromAxisAngle(e,Math.PI)}else{const n=t.cross(e);this.x=n.x,this.y=n.y,this.z=n.z,this.w=Math.sqrt(kr(t.length(),2)*kr(e.length(),2))+t.dot(e),this.normalize()}return this}mult(t,e=new yj){const n=this.x,i=this.y,r=this.z,s=this.w,o=t.x,a=t.y,l=t.z,c=t.w;return e.x=n*c+s*o+i*l-r*a,e.y=i*c+s*a+r*o-n*l,e.z=r*c+s*l+n*a-i*o,e.w=s*c-n*o-i*a-r*l,e}inverse(t=new yj){const e=this.x,n=this.y,i=this.z,r=this.w;this.conjugate(t);const s=1/(e*e+n*n+i*i+r*r);return t.x*=s,t.y*=s,t.z*=s,t.w*=s,t}conjugate(t=new yj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t.w=this.w,t}normalize(){let t=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(t=1/t,this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}normalizeFast(){const t=(3-(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w))/2;return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}vmult(t,e=new hj){const n=t.x,i=t.y,r=t.z,s=this.x,o=this.y,a=this.z,l=this.w,c=l*n+o*r-a*i,u=l*i+a*n-s*r,h=l*r+s*i-o*n,d=-s*n-o*i-a*r;return e.x=c*l+d*-s+u*-a-h*-o,e.y=u*l+d*-o+h*-s-c*-a,e.z=h*l+d*-a+c*-o-u*-s,e}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}toEuler(t,e="YZX"){let n,i,r;const s=this.x,o=this.y,a=this.z,l=this.w;switch(e){case"YZX":const t=s*o+a*l;if(t>.499&&(n=2*Math.atan2(s,l),i=Math.PI/2,r=0),t<-.499&&(n=-2*Math.atan2(s,l),i=-Math.PI/2,r=0),void 0===n){const e=s*s,c=a*a;n=Math.atan2(2*o*l-2*s*a,1-o*o*2-2*c),i=Math.asin(2*t),r=Math.atan2(2*s*l-2*o*a,1-2*e-2*c)}break;default:throw new Error("Euler order "+e+" not supported yet.")}t.y=n,t.z=i,t.x=r}setFromEuler(t,e,n,i="XYZ"){const r=Math.cos(t/2),s=Math.cos(e/2),o=Math.cos(n/2),a=Math.sin(t/2),l=Math.sin(e/2),c=Math.sin(n/2);return"XYZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"YXZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"ZXY"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"ZYX"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"YZX"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o-a*l*c):"XZY"===i&&(this.x=a*s*o-r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o+a*l*c),this}clone(){return new yj(this.x,this.y,this.z,this.w)}slerp(t,e,n=new yj){const i=this.x,r=this.y,s=this.z,o=this.w;let a,l,c,u,h,d=t.x,p=t.y,f=t.z,g=t.w;return l=i*d+r*p+s*f+o*g,l<0&&(l=-l,d=-d,p=-p,f=-f,g=-g),1-l>1e-6?(a=Math.acos(l),c=Math.sin(a),u=Math.sin((1-e)*a)/c,h=Math.sin(e*a)/c):(u=1-e,h=e),n.x=u*i+h*d,n.y=u*r+h*p,n.z=u*s+h*f,n.w=u*o+h*g,n}integrate(t,e,n,i=new yj){const r=t.x*n.x,s=t.y*n.y,o=t.z*n.z,a=this.x,l=this.y,c=this.z,u=this.w,h=.5*e;return i.x+=h*(r*u+s*c-o*l),i.y+=h*(s*u+o*a-r*c),i.z+=h*(o*u+r*l-s*a),i.w+=h*(-r*a-s*l-o*c),i}}const vj=new hj,_j=new hj,wj={SPHERE:1,PLANE:2,BOX:4,COMPOUND:8,CONVEXPOLYHEDRON:16,HEIGHTFIELD:32,PARTICLE:64,CYLINDER:128,TRIMESH:256};let xj=(()=>{class t{constructor(e={}){this.id=void 0,this.type=void 0,this.boundingSphereRadius=void 0,this.collisionResponse=void 0,this.collisionFilterGroup=void 0,this.collisionFilterMask=void 0,this.material=void 0,this.body=void 0,this.id=t.idCounter++,this.type=e.type||0,this.boundingSphereRadius=0,this.collisionResponse=!e.collisionResponse||e.collisionResponse,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:1,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.material=e.material?e.material:null,this.body=null}updateBoundingSphereRadius(){throw"computeBoundingSphereRadius() not implemented for shape type "+this.type}volume(){throw"volume() not implemented for shape type "+this.type}calculateLocalInertia(t,e){throw"calculateLocalInertia() not implemented for shape type "+this.type}calculateWorldAABB(t,e,n,i){throw"calculateWorldAABB() not implemented for shape type "+this.type}}return t.idCounter=0,t.types=wj,t})();class Sj{constructor(t={}){this.position=void 0,this.quaternion=void 0,this.position=new hj,this.quaternion=new yj,t.position&&this.position.copy(t.position),t.quaternion&&this.quaternion.copy(t.quaternion)}pointToLocal(t,e){return Sj.pointToLocalFrame(this.position,this.quaternion,t,e)}pointToWorld(t,e){return Sj.pointToWorldFrame(this.position,this.quaternion,t,e)}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}static pointToLocalFrame(t,e,n,i=new hj){return n.vsub(t,i),e.conjugate(Ej),Ej.vmult(i,i),i}static pointToWorldFrame(t,e,n,i=new hj){return e.vmult(n,i),i.vadd(t,i),i}static vectorToWorldFrame(t,e,n=new hj){return t.vmult(e,n),n}static vectorToLocalFrame(t,e,n,i=new hj){return e.w*=-1,e.vmult(n,i),e.w*=-1,i}}const Ej=new yj;class Cj extends xj{constructor(t={}){const{vertices:e=[],faces:n=[],normals:i=[],axes:r,boundingSphereRadius:s}=t;super({type:xj.types.CONVEXPOLYHEDRON}),this.vertices=void 0,this.faces=void 0,this.faceNormals=void 0,this.worldVertices=void 0,this.worldVerticesNeedsUpdate=void 0,this.worldFaceNormals=void 0,this.worldFaceNormalsNeedsUpdate=void 0,this.uniqueAxes=void 0,this.uniqueEdges=void 0,this.vertices=e,this.faces=n,this.faceNormals=i,0===this.faceNormals.length&&this.computeNormals(),s?this.boundingSphereRadius=s:this.updateBoundingSphereRadius(),this.worldVertices=[],this.worldVerticesNeedsUpdate=!0,this.worldFaceNormals=[],this.worldFaceNormalsNeedsUpdate=!0,this.uniqueAxes=r?r.slice():null,this.uniqueEdges=[],this.computeEdges()}computeEdges(){const t=this.faces,e=this.vertices,n=this.uniqueEdges;n.length=0;const i=new hj;for(let r=0;r!==t.length;r++){const s=t[r],o=s.length;for(let t=0;t!==o;t++){e[s[t]].vsub(e[s[(t+1)%o]],i),i.normalize();let r=!1;for(let t=0;t!==n.length;t++)if(n[t].almostEquals(i)||n[t].almostEquals(i)){r=!0;break}r||n.push(i.clone())}}}computeNormals(){this.faceNormals.length=this.faces.length;for(let t=0;th&&(h=t,u=p)}const d=[];for(let p=0;p=0&&this.clipFaceAgainstHull(s,t,e,d,o,a,l)}findSeparatingAxis(t,e,n,i,r,s,o,a){const l=new hj,c=new hj,u=new hj,h=new hj,d=new hj,p=new hj;let f=Number.MAX_VALUE;const g=this;if(g.uniqueAxes)for(let m=0;m!==g.uniqueAxes.length;m++){n.vmult(g.uniqueAxes[m],l);const o=g.testSepAxis(l,t,e,n,i,r);if(!1===o)return!1;o0&&s.negate(s),!0}testSepAxis(t,e,n,i,r,s){Cj.project(this,t,n,i,Oj),Cj.project(e,t,r,s,Tj);const o=Oj[0],a=Oj[1],l=Tj[0],c=Tj[1];if(o0?1/e:0,this.material=t.material||null,this.linearDamping="number"==typeof t.linearDamping?t.linearDamping:.01,this.type=e<=0?Dj.STATIC:Dj.DYNAMIC,typeof t.type==typeof Dj.STATIC&&(this.type=t.type),this.allowSleep=void 0===t.allowSleep||t.allowSleep,this.sleepState=Dj.AWAKE,this.sleepSpeedLimit=void 0!==t.sleepSpeedLimit?t.sleepSpeedLimit:.1,this.sleepTimeLimit=void 0!==t.sleepTimeLimit?t.sleepTimeLimit:1,this.timeLastSleepy=0,this.wakeUpAfterNarrowphase=!1,this.torque=new hj,this.quaternion=new yj,this.initQuaternion=new yj,this.previousQuaternion=new yj,this.interpolatedQuaternion=new yj,t.quaternion&&(this.quaternion.copy(t.quaternion),this.initQuaternion.copy(t.quaternion),this.previousQuaternion.copy(t.quaternion),this.interpolatedQuaternion.copy(t.quaternion)),this.angularVelocity=new hj,t.angularVelocity&&this.angularVelocity.copy(t.angularVelocity),this.initAngularVelocity=new hj,this.shapes=[],this.shapeOffsets=[],this.shapeOrientations=[],this.inertia=new hj,this.invInertia=new hj,this.invInertiaWorld=new cj,this.invMassSolve=0,this.invInertiaSolve=new hj,this.invInertiaWorldSolve=new cj,this.fixedRotation=void 0!==t.fixedRotation&&t.fixedRotation,this.angularDamping=void 0!==t.angularDamping?t.angularDamping:.01,this.linearFactor=new hj(1,1,1),t.linearFactor&&this.linearFactor.copy(t.linearFactor),this.angularFactor=new hj(1,1,1),t.angularFactor&&this.angularFactor.copy(t.angularFactor),this.aabb=new gj,this.aabbNeedsUpdate=!0,this.boundingRadius=0,this.wlambda=new hj,this.isTrigger=Boolean(t.isTrigger),t.shape&&this.addShape(t.shape),this.updateMassProperties()}wakeUp(){const t=this.sleepState;this.sleepState=Dj.AWAKE,this.wakeUpAfterNarrowphase=!1,t===Dj.SLEEPING&&this.dispatchEvent(Dj.wakeupEvent)}sleep(){this.sleepState=Dj.SLEEPING,this.velocity.set(0,0,0),this.angularVelocity.set(0,0,0),this.wakeUpAfterNarrowphase=!1}sleepTick(t){if(this.allowSleep){const e=this.sleepState,n=this.velocity.lengthSquared()+this.angularVelocity.lengthSquared(),i=kr(this.sleepSpeedLimit,2);e===Dj.AWAKE&&ni?this.wakeUp():e===Dj.SLEEPY&&t-this.timeLastSleepy>this.sleepTimeLimit&&(this.sleep(),this.dispatchEvent(Dj.sleepEvent))}}updateSolveMassProperties(){this.sleepState===Dj.SLEEPING||this.type===Dj.KINEMATIC?(this.invMassSolve=0,this.invInertiaSolve.setZero(),this.invInertiaWorldSolve.setZero()):(this.invMassSolve=this.invMass,this.invInertiaSolve.copy(this.invInertia),this.invInertiaWorldSolve.copy(this.invInertiaWorld))}pointToLocalFrame(t,e=new hj){return t.vsub(this.position,e),this.quaternion.conjugate().vmult(e,e),e}vectorToLocalFrame(t,e=new hj){return this.quaternion.conjugate().vmult(t,e),e}pointToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e.vadd(this.position,e),e}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}addShape(t,e,n){const i=new hj,r=new yj;return e&&i.copy(e),n&&r.copy(n),this.shapes.push(t),this.shapeOffsets.push(i),this.shapeOrientations.push(r),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=this,this}removeShape(t){const e=this.shapes.indexOf(t);return-1===e?(console.warn("Shape does not belong to the body"),this):(this.shapes.splice(e,1),this.shapeOffsets.splice(e,1),this.shapeOrientations.splice(e,1),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=null,this)}updateBoundingRadius(){const t=this.shapes,e=this.shapeOffsets,n=t.length;let i=0;for(let r=0;r!==n;r++){const n=t[r];n.updateBoundingSphereRadius();const s=e[r].length(),o=n.boundingSphereRadius;s+o>i&&(i=s+o)}this.boundingRadius=i}updateAABB(){const t=this.shapes,e=this.shapeOffsets,n=this.shapeOrientations,i=t.length,r=Rj,s=Nj,o=this.quaternion,a=this.aabb,l=Lj;for(let c=0;c!==i;c++){const i=t[c];o.vmult(e[c],r),r.vadd(this.position,r),o.mult(n[c],s),i.calculateWorldAABB(r,s,l.lowerBound,l.upperBound),0===c?a.copy(l):a.extend(l)}this.aabbNeedsUpdate=!1}updateInertiaWorld(t){const e=this.invInertia;if(e.x!==e.y||e.y!==e.z||t){const t=jj,n=Fj;t.setRotationFromQuaternion(this.quaternion),t.transpose(n),t.scale(e,t),t.mmult(n,this.invInertiaWorld)}}applyForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=Bj;e.cross(t,n),this.force.vadd(t,this.force),this.torque.vadd(n,this.torque)}applyLocalForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=Vj,i=zj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyForce(n,i)}applyTorque(t){this.type===Dj.DYNAMIC&&(this.sleepState===Dj.SLEEPING&&this.wakeUp(),this.torque.vadd(t,this.torque))}applyImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=e,i=Uj;i.copy(t),i.scale(this.invMass,i),this.velocity.vadd(i,this.velocity);const r=Hj;n.cross(t,r),this.invInertiaWorld.vmult(r,r),this.angularVelocity.vadd(r,this.angularVelocity)}applyLocalImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=$j,i=Gj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyImpulse(n,i)}updateMassProperties(){const t=Wj;this.invMass=this.mass>0?1/this.mass:0;const e=this.inertia,n=this.fixedRotation;this.updateAABB(),t.set((this.aabb.upperBound.x-this.aabb.lowerBound.x)/2,(this.aabb.upperBound.y-this.aabb.lowerBound.y)/2,(this.aabb.upperBound.z-this.aabb.lowerBound.z)/2),Pj.calculateInertia(t,this.mass,e),this.invInertia.set(e.x>0&&!n?1/e.x:0,e.y>0&&!n?1/e.y:0,e.z>0&&!n?1/e.z:0),this.updateInertiaWorld(!0)}getVelocityAtWorldPoint(t,e){const n=new hj;return t.vsub(this.position,n),this.angularVelocity.cross(n,e),this.velocity.vadd(e,e),e}integrate(t,e,n){if(this.previousPosition.copy(this.position),this.previousQuaternion.copy(this.quaternion),this.type!==Dj.DYNAMIC&&this.type!==Dj.KINEMATIC||this.sleepState===Dj.SLEEPING)return;const i=this.velocity,r=this.angularVelocity,s=this.position,o=this.force,a=this.torque,l=this.quaternion,c=this.invInertiaWorld,u=this.linearFactor,h=this.invMass*t;i.x+=o.x*h*u.x,i.y+=o.y*h*u.y,i.z+=o.z*h*u.z;const d=c.elements,p=this.angularFactor,f=a.x*p.x,g=a.y*p.y,m=a.z*p.z;r.x+=t*(d[0]*f+d[1]*g+d[2]*m),r.y+=t*(d[3]*f+d[4]*g+d[5]*m),r.z+=t*(d[6]*f+d[7]*g+d[8]*m),s.x+=i.x*t,s.y+=i.y*t,s.z+=i.z*t,l.integrate(this.angularVelocity,t,this.angularFactor,l),e&&(n?l.normalizeFast():l.normalize()),this.aabbNeedsUpdate=!0,this.updateInertiaWorld()}}Dj.idCounter=0,Dj.COLLIDE_EVENT_NAME="collide",Dj.DYNAMIC=1,Dj.STATIC=2,Dj.KINEMATIC=4,Dj.AWAKE=0,Dj.SLEEPY=1,Dj.SLEEPING=2,Dj.wakeupEvent={type:"wakeup"},Dj.sleepyEvent={type:"sleepy"},Dj.sleepEvent={type:"sleep"};const Rj=new hj,Nj=new yj,Lj=new gj,jj=new cj,Fj=new cj,Bj=new hj,Vj=new hj,zj=new hj,Uj=new hj,Hj=new hj,$j=new hj,Gj=new hj,Wj=new hj;new hj,new hj;class qj{constructor(){this.rayFromWorld=void 0,this.rayToWorld=void 0,this.hitNormalWorld=void 0,this.hitPointWorld=void 0,this.hasHit=void 0,this.shape=void 0,this.body=void 0,this.hitFaceIndex=void 0,this.distance=void 0,this.shouldStop=void 0,this.rayFromWorld=new hj,this.rayToWorld=new hj,this.hitNormalWorld=new hj,this.hitPointWorld=new hj,this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}reset(){this.rayFromWorld.setZero(),this.rayToWorld.setZero(),this.hitNormalWorld.setZero(),this.hitPointWorld.setZero(),this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}abort(){this.shouldStop=!0}set(t,e,n,i,r,s,o){this.rayFromWorld.copy(t),this.rayToWorld.copy(e),this.hitNormalWorld.copy(n),this.hitPointWorld.copy(i),this.shape=r,this.body=s,this.distance=o}}let Xj,Yj,Kj,Qj,Zj,Jj,tF;Xj=xj.types.SPHERE,Yj=xj.types.PLANE,Kj=xj.types.BOX,Qj=xj.types.CYLINDER,Zj=xj.types.CONVEXPOLYHEDRON,Jj=xj.types.HEIGHTFIELD,tF=xj.types.TRIMESH;class eF{get[Xj](){return this._intersectSphere}get[Yj](){return this._intersectPlane}get[Kj](){return this._intersectBox}get[Qj](){return this._intersectConvex}get[Zj](){return this._intersectConvex}get[Jj](){return this._intersectHeightfield}get[tF](){return this._intersectTrimesh}constructor(t=new hj,e=new hj){this.from=void 0,this.to=void 0,this.direction=void 0,this.precision=void 0,this.checkCollisionResponse=void 0,this.skipBackfaces=void 0,this.collisionFilterMask=void 0,this.collisionFilterGroup=void 0,this.mode=void 0,this.result=void 0,this.hasHit=void 0,this.callback=void 0,this.from=t.clone(),this.to=e.clone(),this.direction=new hj,this.precision=1e-4,this.checkCollisionResponse=!0,this.skipBackfaces=!1,this.collisionFilterMask=-1,this.collisionFilterGroup=-1,this.mode=eF.ANY,this.result=new qj,this.hasHit=!1,this.callback=t=>{}}intersectWorld(t,e){return this.mode=e.mode||eF.ANY,this.result=e.result||new qj,this.skipBackfaces=!!e.skipBackfaces,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:-1,this.checkCollisionResponse=void 0===e.checkCollisionResponse||e.checkCollisionResponse,e.from&&this.from.copy(e.from),e.to&&this.to.copy(e.to),this.callback=e.callback||(()=>{}),this.hasHit=!1,this.result.reset(),this.updateDirection(),this.getAABB(nF),iF.length=0,t.broadphase.aabbQuery(t,nF,iF),this.intersectBodies(iF),this.hasHit}intersectBody(t,e){e&&(this.result=e,this.updateDirection());const n=this.checkCollisionResponse;if(n&&!t.collisionResponse||0==(this.collisionFilterGroup&t.collisionFilterMask)||0==(t.collisionFilterGroup&this.collisionFilterMask))return;const i=oF,r=aF;for(let s=0,o=t.shapes.length;st.boundingSphereRadius)return;const r=this[t.type];r&&r.call(this,t,e,n,i,t)}_intersectBox(t,e,n,i,r){return this._intersectConvex(t.convexPolyhedronRepresentation,e,n,i,r)}_intersectPlane(t,e,n,i,r){const s=this.from,o=this.to,a=this.direction,l=new hj(0,0,1);e.vmult(l,l);const c=new hj;s.vsub(n,c);const u=c.dot(l);if(o.vsub(n,c),u*c.dot(l)>0||s.distanceTo(o)=0&&t<=1&&(s.lerp(o,t,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1)),this.result.shouldStop)return;e>=0&&e<=1&&(s.lerp(o,e,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1))}}_intersectConvex(t,e,n,i,r,s){const o=yF,a=vF,l=s&&s.faceList||null,c=t.faces,u=t.vertices,h=t.faceNormals,d=this.direction,p=this.from,f=p.distanceTo(this.to),g=l?l.length:c.length,m=this.result;for(let b=0;!m.shouldStop&&bf||this.reportIntersection(o,lF,r,i,t)}}}}_intersectTrimesh(t,e,n,i,r,s){const o=_F,a=OF,l=TF,c=vF,u=wF,h=xF,d=SF,p=CF,f=EF,g=t.indices,m=this.from,b=this.to,y=this.direction;l.position.copy(n),l.quaternion.copy(e),Sj.vectorToLocalFrame(n,e,y,u),Sj.pointToLocalFrame(n,e,m,h),Sj.pointToLocalFrame(n,e,b,d),d.x*=t.scale.x,d.y*=t.scale.y,d.z*=t.scale.z,h.x*=t.scale.x,h.y*=t.scale.y,h.z*=t.scale.z,d.vsub(h,u),u.normalize();const v=h.distanceSquared(d);t.tree.rayQuery(this,l,a);for(let _=0,w=a.length;!this.result.shouldStop&&_!==w;_++){const s=a[_];t.getNormal(s,o),t.getVertex(g[3*s],cF),cF.vsub(h,c);const l=u.dot(o),d=o.dot(c)/l;if(d<0)continue;u.scale(d,lF),lF.vadd(h,lF),t.getVertex(g[3*s+1],uF),t.getVertex(g[3*s+2],hF);const m=lF.distanceSquared(h);!eF.pointInTriangle(lF,uF,cF,hF)&&!eF.pointInTriangle(lF,cF,uF,hF)||m>v||(Sj.vectorToWorldFrame(e,o,f),Sj.pointToWorldFrame(n,e,lF,p),this.reportIntersection(f,p,r,i,s))}a.length=0}reportIntersection(t,e,n,i,r){const s=this.from,o=this.to,a=s.distanceTo(e),l=this.result;if(!(this.skipBackfaces&&t.dot(this.direction)>0))switch(l.hitFaceIndex=void 0!==r?r:-1,this.mode){case eF.ALL:this.hasHit=!0,l.set(s,o,t,e,n,i,a),l.hasHit=!0,this.callback(l);break;case eF.CLOSEST:(a=0&&(u=r*l-s*o)>=0&&c+uDate.now()-t}var iB=n(24517);function rB(t,e,n){e||(e=new bT(bT.IDENTITY));const i=new bT(bT.IDENTITY);if(!t)return!0;if(t.matrix)i.copy(t.matrix);else{if(i.identity(),t.translation&&i.translate(t.translation),t.rotation){const e=new bT(bT.IDENTITY).fromQuaternion(t.rotation);i.multiplyRight(e)}t.scale&&i.scale(t.scale)}const r=new bT(e).multiplyRight(i);if(!1===n(t,r,e))return!1;for(const s of t.nodes||t.children||[])if(!1===rB(s,r,n))return!1;return!0}function sB(){fP([zR,YL])}function oB(t,e){const n=e.nodes.find(e=>e.name===t);if(n){let i=!1;for(const t of e.scenes)i||rB(t,new bT(bT.IDENTITY),(t,e)=>t!==n||(t.matrix=e,t.translation=void 0,t.rotation=void 0,t.scale=void 0,i=!0,!1));return e.scene={id:t,name:t,nodes:[n]},e.scenes=[e.scene],{scene:e.scene,scenes:e.scenes}}return e}function aB(t,e){return lw(this,void 0,void 0,function*(){const n=t.scenegraph;let i;i=e?e[n]||(e[n]=fetch(n).then(t=>t.blob())):fetch(n);const r=yield CP(i,YL,{DracoLoader:DN,gltf:{decompressMeshes:!0,postProcess:!0}});return oB(t.scenegraphNode,r)})}function lB(t,e){return lw(this,void 0,void 0,function*(){return oB(t,yield e)})}function cB(t,e,n){if(e&&0!==e.length)return new fR(Object.assign({id:t,pickable:!0,autoHighlight:!1,highlightColor:[30,136,229,255],coordinateSystem:Iw.CARTESIAN,data:e,mesh:new lj,wireframe:!1,getTransformMatrix:t=>t.transformMatrix,getColor:t=>t.color||[255,255,255,229.5]},n))}let uB=(()=>{class t extends jP{initializeState(){const{data:t}=this.props;this.setState({data:null!=t?t:[],zoomOpacity:.8,doCollisions:!1}),sB()}renderLayers(){const e=this.state,n=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&t.unpickable),i=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&!t.unpickable),r=e.data.filter(t=>!t.scenegraph&&t.wireframe),s=e.data.filter(t=>!!t.scenegraph);e.doCollisions&&function(t){lw(this,void 0,void 0,function*(){console.log("Starting Collisioning");const e=t.filter(t=>!t.scenegraph&&!t.wireframe).map(t=>{const e=new bT(t.transformMatrix),n=e.transformAsPoint([-1,-1,-1],[]),i=e.transformAsPoint([1,1,1],[]);return{"@id":t["@id"],name:t.tooltip,entityId:t.entityId,bbox:new gj({lowerBound:new hj(...n.map((t,e)=>Math.min(t,i[e]))),upperBound:new hj(...i.map((t,e)=>Math.max(t,n[e])))})}}),n=[];for(const o of t.filter(t=>!!t.scenegraph)){const t=yield AP(o.scenegraph,YL,{DracoLoader:DN,decompress:!0,postProcess:!0});for(const e of t.scenes)rB(e,new bT(o.transformMatrix),(e,i)=>{if(e.mesh&&e.mesh.primitives&&e.mesh.primitives.length>0)for(const r of e.mesh.primitives)if(r.attributes.POSITION&&r.attributes.POSITION.min){const s=i.transformAsPoint(r.attributes.POSITION.min,[]),a=i.transformAsPoint(r.attributes.POSITION.max,[]);n.push({"@id":o["@id"],name:e.name,entityId:o.entityId,bbox:new gj({lowerBound:new hj(...s.map((t,e)=>Math.min(t,a[e]))),upperBound:new hj(...a.map((t,e)=>Math.max(t,s[e])))}),gltf:t})}return!0})}const i=[],r=[];for(const t of e){const e=[];for(const i of n)t.bbox.overlaps(i.bbox)&&e.push({"@id":i["@id"],name:i.name});e.length>0?i.push({"@id":t.entityId,name:t.name,hits:e}):r.push(t)}console.log({sourceBoxes:e,targetBoxes:n,report:i,sad:r,maxHits:Math.max(...i.map(t=>t.hits.length))});const s=[];for(const t of i){s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":"","Hit Name":""});for(const e of t.hits)s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":e["@id"],"Hit Name":e.name})}return console.log(s),i})}(e.data);const o={};for(const a of s)a.scenegraph&&a.scenegraphNode&&!Object.prototype.hasOwnProperty.call(o,a.scenegraph)&&(o[a.scenegraph]=aB({scenegraph:a.scenegraph},t.gltfCache));return[cB("cubes",n,{wireframe:!1,pickable:!1}),cB("pickableCubes",i,{wireframe:!1,pickable:!0}),cB("wireframes",r,{wireframe:!0,pickable:!1}),...s.map(t=>{var n;return new nj({id:"models-"+t["@id"],opacity:t.zoomBasedOpacity?e.zoomOpacity:void 0!==t.opacity?t.opacity:1,pickable:!t.unpickable,coordinateSystem:Iw.CARTESIAN,data:[t],scenegraph:t.scenegraphNode?lB(t.scenegraphNode,o[t.scenegraph]):t.scenegraph,_lighting:t._lighting,getTransformMatrix:t.transformMatrix,getColor:null!==(n=t.color)&&void 0!==n?n:[0,255,0,127.5],parameters:{depthMask:!t.zoomBasedOpacity&&(void 0===t.opacity||1===t.opacity)}})})].filter(t=>!!t)}getPickingInfo(t){return t.info}}return t.layerName="BodyUILayer",t.gltfCache={},t})();function hB(t,e=[]){for(const n of t.nodes||t.children||[])e.push(n.name),hB(n,e);return e}let dB=(()=>{class t{constructor(t){var e,n,i,r,s;this.deckProps=t,this.bodyUILayer=new uB({}),this.nodeClickSubject=new P,this.nodeHoverStartSubject=new P,this.nodeHoverStopSubject=new P,this.sceneRotationSubject=new Uf([0,0]),this.nodeDragStartSubject=new P,this.nodeDragSubject=new P,this.nodeDragEndSubject=new P,this.nodeClick$=this.nodeClickSubject.pipe(at()),this.nodeHoverStart$=this.nodeHoverStartSubject.pipe(at()),this.nodeHoverStop$=this.nodeHoverStopSubject.pipe(at()),this.sceneRotation$=this.sceneRotationSubject.pipe(at()),this.nodeDragStart$=this.nodeDragStartSubject.pipe(at()),this.nodeDrag$=this.nodeDragSubject.pipe(at()),this.nodeDragEnd$=this.nodeDragEndSubject.pipe(at());const o=Object.assign(Object.assign({},t),{views:["orthographic"===t.camera?new pM({flipY:!1,near:-1e3}):new bM({orbitAxis:"Y"})],controller:void 0===t.interactive||t.interactive,layers:[this.bodyUILayer],onHover:this._onHover,onClick:this._onClick,onViewStateChange:this._onViewStateChange,onDragStart:this._onDragStart,onDrag:this._onDrag,onDragEnd:this._onDragEnd,getCursor:t=>{var e;return null!==(e=this.cursor)&&void 0!==e?e:t.isDragging?"grabbing":"grab"}});t.legacyLighting&&(o.effects=[new $M({ambientLight:new wM({color:[255,255,255],intensity:10})})]),this.deck=new WD(o),this.deck.setProps({viewState:{orbitAxis:"Y",minRotationX:null!==(e=t.minRotationX)&&void 0!==e?e:-15,maxRotationX:null!==(n=t.maxRotationX)&&void 0!==n?n:15,target:null!==(i=t.target)&&void 0!==i?i:[.5,.5,0],rotationX:0,rotationOrbit:null!==(r=t.rotation)&&void 0!==r?r:0,zoom:null!==(s=t.zoom)&&void 0!==s?s:9.5,camera:t.camera}}),t.rotation&&this.sceneRotationSubject.next([t.rotation,0])}initialize(){return lw(this,void 0,void 0,function*(){for(;!this.bodyUILayer.state;)yield new Promise(t=>{setTimeout(t,200)})})}finalize(){this.deck.finalize()}setScene(t){if((null==t?void 0:t.length)>0){let e=this.bodyUILayer.state.zoomOpacity,n=!1;for(const i of t)i.zoomToOnLoad&&(this.zoomTo(i),n=!0);e=n?.05:e,this.deckProps.debugSceneNodeProcessing?this.debugSceneNodeProcessing(t,e):this.bodyUILayer.setState({data:t,zoomOpacity:e})}}debugSceneNodeProcessing(t,e){const n="https://hubmapconsortium.github.io/ccf-3d-reference-object-library/VH_Female/United/VHF_United_Color.glb",i=new bT([.076,0,0,0,0,.076,16875389974302382e-33,0,0,-16875389974302382e-33,.076,0,.49,.034,.11,1]);(function(t,e,n){return lw(this,void 0,void 0,function*(){sB();const n=yield aB({scenegraph:t,scenegraphNode:"VHF_Kidney_L_Low1"}),i={},r=[];for(const s of n.scenes)rB(s,e=new bT(e||bT.IDENTITY),(n,s)=>{const o={"@id":n.name||n.id,"@type":"ProcessedNode",transformMatrix:new bT(s),wireframe:!0,node:n};if(r.push({"@id":`GLTF:${o["@id"]}`,"@type":"GLTFNode",scenegraph:t,scenegraphNode:o["@id"],transformMatrix:new bT(e||bT.IDENTITY),tooltip:n.name||n.id,color:[255,255,255,255],_lighting:"pbr",zoomBasedOpacity:!0,node:n}),n.mesh&&n.mesh.primitives&&n.mesh.primitives.length>0)for(const t of n.mesh.primitives)if(t.attributes.POSITION&&t.attributes.POSITION.min){const e=s.transformAsPoint(t.attributes.POSITION.min,[]),n=s.transformAsPoint(t.attributes.POSITION.max,[]);o.bbox=new gj({lowerBound:new hj(...e.map((t,e)=>Math.min(t,n[e]))),upperBound:new hj(...n.map((t,n)=>Math.max(t,e[n])))})}return i[o["@id"]]=o,!0});for(const t of Object.values(i).filter(t=>!t.bbox)){for(const e of hB(t.node).map(t=>i[t]).filter(t=>t.bbox))t.bbox?t.bbox.extend(e.bbox):t.bbox=e.bbox.clone();t.bbox||delete i[t["@id"]]}for(const t of Object.values(i)){const e=t.bbox.lowerBound,n=(t.size=t.bbox.upperBound.clone().vsub(e)).clone().vmul(new hj(.5,.5,.5)),i=t.center=e.clone().vadd(n);t.transformMatrix=new bT(bT.IDENTITY).translate(i.toArray()).scale(n.toArray())}for(const t of r)i[t["@id"]]=t;return i})})(n,i).then(r=>{console.log("results",r),console.log("data",t),(t=t.concat(Object.values(r))).push({"@id":"TEST","@type":"TEST",scenegraph:n,scenegraphNode:"VHF_Kidney_R_Low",transformMatrix:i,color:[255,255,255,200],_lighting:"pbr",zoomBasedOpacity:!1}),this.bodyUILayer.setState({data:t,zoomOpacity:e})})}zoomTo(t){const e=new bT(t.transformMatrix);this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:e.getTranslation(),rotationX:0,rotationOrbit:0,zoom:11.5})})}setRotation(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationOrbit:t})})}setRotationX(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationX:t})})}setZoom(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{zoom:t})})}setTarget(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:t})})}setInteractive(t){this.deck.setProps({controller:t})}_onHover(t){const{lastHovered:e}=this;this.cursor=t.picked?"pointer":void 0,t.picked&&t.object&&t.object["@id"]?e!==t.object&&(e&&this.nodeHoverStopSubject.next(e),this.lastHovered=t.object,this.nodeHoverStartSubject.next(t.object)):e&&(this.nodeHoverStopSubject.next(e),this.lastHovered=void 0)}_onClick(t,e){var n,i;t.picked&&t.object&&t.object["@id"]&&this.nodeClickSubject.next({node:t.object,ctrlClick:null!==(i=null===(n=null==e?void 0:e.srcEvent)||void 0===n?void 0:n.ctrlKey)&&void 0!==i?i:void 0})}_onViewStateChange(t){var e;if(null===(e=t.interactionState)||void 0===e?void 0:e.isZooming){const e=this.bodyUILayer.state,n=Math.min(Math.max(1-(t.viewState.zoom-8.9)/2,.05),1);e.zoomOpacity!==n&&this.bodyUILayer.setState({data:e.data,zoomOpacity:n})}this.deck.setProps({viewState:Object.assign({},t.viewState)}),this.sceneRotationSubject.next([t.viewState.rotationOrbit,t.viewState.rotationX])}_onDragStart(t,e){this._dragEvent(t,e,this.nodeDragStartSubject)}_onDrag(t,e){this._dragEvent(t,e,this.nodeDragSubject)}_onDragEnd(t,e){this._dragEvent(t,e,this.nodeDragEndSubject)}_dragEvent(t,e,n){var i;(null===(i=null==t?void 0:t.object)||void 0===i?void 0:i["@id"])&&n.next({node:t.object,info:t,e})}}return sw([iB.ZP],t.prototype,"_onHover",null),sw([iB.ZP],t.prototype,"_onClick",null),sw([iB.ZP],t.prototype,"_onViewStateChange",null),sw([iB.ZP],t.prototype,"_onDragStart",null),sw([iB.ZP],t.prototype,"_onDrag",null),sw([iB.ZP],t.prototype,"_onDragEnd",null),t})();function pB(t,e){return t===e}function fB(t,e,n){if(null===e||null===n||e.length!==n.length)return!1;const i=e.length;for(let r=0;r(t&&t.providers||[]).some(t=>t&&t.provide&&"MockNgModuleResolver"===t.provide.name||!1))});let bB=(()=>{class t{constructor(){this.bootstrap$=new lp(1)}get appBootstrapped$(){return this.bootstrap$.asObservable()}bootstrap(){this.bootstrap$.next(!0),this.bootstrap$.complete()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const yB=new oi("INITIAL_STATE_TOKEN");let vB=(()=>{class t{static set(t){this.value=t}static pop(){const t=this.value;return this.value={},t}}return t.value={},t})();const _B=new oi("Internals.StateContextFactory"),wB=new oi("Internals.StateFactory");function xB(t,e){return e?n=>n.pipe(xB((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new SB(t))}class SB{constructor(t){this.project=t}call(t,e){return e.subscribe(new EB(t,this.project))}}class EB extends ${constructor(t,e){super(t),this.project=e,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}_next(t){this.hasSubscription||this.tryNext(t)}tryNext(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this.hasSubscription=!0,this._innerSub(e)}_innerSub(t){const e=new H(this),n=this.destination;n.add(e);const i=G(t,e);i!==e&&n.add(i)}_complete(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete(),this.unsubscribe()}notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()}}function CB(t=null){return e=>e.lift(new OB(t))}class OB{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new TB(t,this.defaultValue))}}class TB extends v{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}const kB={STATE_NAME:t=>`${t} is not a valid state name. It needs to be a valid object property name.`,STATE_NAME_PROPERTY:()=>"States must register a 'name' property",STATE_UNIQUE:(t,e,n)=>`State name '${t}' from ${e} already exists in ${n}`,STATE_DECORATOR:()=>"States must be decorated with @State() decorator",INCORRECT_PRODUCTION:()=>"Angular is running in production mode but NGXS is still running in the development mode!\nPlease set developmentMode to false on the NgxsModule options when in production mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",INCORRECT_DEVELOPMENT:()=>"RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",SELECT_FACTORY_NOT_CONNECTED:()=>"You have forgotten to import the NGXS module!",ACTION_DECORATOR:()=>"@Action() decorator cannot be used with static methods",SELECTOR_DECORATOR:()=>"Selectors only work on methods",ZONE_WARNING:()=>"Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\nPlease set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\nNgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })",PATCHING_ARRAY:()=>"Patching arrays is not supported.",PATCHING_PRIMITIVE:()=>"Patching primitives is not supported.",UNDECORATED_STATE_IN_IVY:t=>`'${t}' class should be decorated with @Injectable() right after the @State() decorator`};let AB=(()=>{class t{constructor(t,e){this._ngZone=t,this._platformId=e,this.verifyZoneIsNotNooped(this._ngZone)}enter(t){return function(t){return"server"===t}(this._platformId)?this.runInsideAngular(t):this.runOutsideAngular(t)}leave(t){return this.runInsideAngular(t)}runInsideAngular(t){return xu.isInAngularZone()?t():this._ngZone.run(t)}runOutsideAngular(t){return xu.isInAngularZone()?this._ngZone.runOutsideAngular(t):t()}verifyZoneIsNotNooped(t){t instanceof xu||console.warn(kB.ZONE_WARNING())}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(ou))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const PB=new oi("ROOT_STATE_TOKEN"),MB=new oi("FEATURE_STATE_TOKEN"),IB=new oi("NGXS_PLUGINS"),DB=new oi("NG_TEST_MODE"),RB=new oi("NG_DEV_MODE"),NB="NGXS_META",LB="NGXS_OPTIONS_META";let jB=(()=>{class t{constructor(){this.defaultsState={},this.selectorOptions={injectContainerState:!0,suppressErrors:!0},this.compatibility={strictContentSecurityPolicy:!1},this.executionStrategy=AB}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class FB{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}}const BB=new oi("NGXS_EXECUTION_STRATEGY");function VB(t){return t.constructor&&t.constructor.type?t.constructor.type:t.type}const zB=(t,e,n)=>{t=Object.assign({},t);const i=e.split("."),r=i.length-1;return i.reduce((t,e,i)=>(t[e]=i===r?n:Array.isArray(t[e])?t[e].slice():Object.assign({},t[e]),t&&t[e]),t),t},UB=(t,e)=>e.split(".").reduce((t,e)=>t&&t[e],t),HB=t=>t&&"object"==typeof t&&!Array.isArray(t),$B=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(HB(t)&&HB(n))for(const i in n)HB(n[i])?(t[i]||Object.assign(t,{[i]:{}}),$B(t[i],n[i])):Object.assign(t,{[i]:n[i]});return $B(t,...e)};function GB(t){return t[NB]}function WB(t,e){const n=UB(e.currentAppState,t.path),i=UB(e.newAppState,t.path);return new FB(n,i,!t.isInitialised)}function qB(...t){return function(t,e,n=XB){const i=function(t){return t.reduce((t,e)=>(t[VB(e)]=!0,t),{})}(t),r=e&&function(t){return t.reduce((t,e)=>(t[e]=!0,t),{})}(e);return function(t){return t.pipe(function(t,e){return Hd(n=>{const i=VB(n.action);return t[i]&&(!e||e[n.status])})}(i,r),n())}}(t,["DISPATCHED"])}function XB(){return D(t=>t.action)}function YB(t){return e=>new C(n=>e.subscribe({next(e){t.leave(()=>n.next(e))},error(e){t.leave(()=>n.error(e))},complete(){t.leave(()=>n.complete())}}))}let KB=(()=>{class t{constructor(t){this._executionStrategy=t}enter(t){return this._executionStrategy.enter(t)}leave(t){return this._executionStrategy.leave(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(BB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class QB extends P{constructor(){super(...arguments),this._itemQueue=[],this._busyPushingNext=!1}next(t){if(this._busyPushingNext)this._itemQueue.unshift(t);else{for(this._busyPushingNext=!0,super.next(t);this._itemQueue.length>0;){const t=this._itemQueue.pop();super.next(t)}this._busyPushingNext=!1}}}let ZB=(()=>{class t extends QB{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),JB=(()=>{class t extends C{constructor(t,e){super(n=>{const i=t.pipe(YB(e)).subscribe({next:t=>n.next(t),error:t=>n.error(t),complete:()=>n.complete()});n.add(i)})}}return t.\u0275fac=function(e){return new(e||t)(Ci(ZB),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const tV=t=>(...e)=>t.shift()(...e,(...e)=>tV(t)(...e));let eV=(()=>{class t extends Uf{constructor(){super({})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),nV=(()=>{class t{constructor(t,e){this._parentManager=t,this._pluginHandlers=e,this.plugins=[],this.registerHandlers()}get rootPlugins(){return this._parentManager&&this._parentManager.plugins||this.plugins}registerHandlers(){const t=this.getPluginHandlers();this.rootPlugins.push(...t)}getPluginHandlers(){return(this._pluginHandlers||[]).map(t=>t.handle?t.handle.bind(t):t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(IB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),iV=(()=>{class t extends P{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),rV=(()=>{class t{constructor(t,e,n,i,r,s){this._injector=t,this._actions=e,this._actionResults=n,this._pluginManager=i,this._stateStream=r,this._ngxsExecutionStrategy=s}dispatch(t){const e=this._ngxsExecutionStrategy.enter(()=>this.dispatchByEvents(t));return e.subscribe({error:t=>this._ngxsExecutionStrategy.leave(()=>{try{this._errorHandler=this._errorHandler||this._injector.get(Ar),this._errorHandler.handleError(t)}catch(e){}})}),e.pipe(YB(this._ngxsExecutionStrategy))}dispatchByEvents(t){return Array.isArray(t)?0===t.length?wd(this._stateStream.getValue()):hv(t.map(t=>this.dispatchSingle(t))):this.dispatchSingle(t)}dispatchSingle(t){if(!VB(t))return ip(new Error(`This action doesn't have a type property: ${t.constructor.name}`));const e=this._stateStream.getValue();return tV([...this._pluginManager.plugins,(t,n)=>{t!==e&&this._stateStream.next(t);const i=this.getActionResultStream(n);return i.subscribe(t=>this._actions.next(t)),this._actions.next({action:n,status:"DISPATCHED"}),this.createDispatchObservable(i)}])(e,t).pipe(up())}getActionResultStream(t){return this._actionResults.pipe(Hd(e=>e.action===t&&"DISPATCHED"!==e.status),Gp(1),up())}createDispatchObservable(t){return t.pipe(xB(t=>{switch(t.status){case"SUCCESSFUL":return wd(this._stateStream.getValue());case"ERRORED":return ip(t.error);default:return ep}})).pipe(up())}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(ZB),Ci(iV),Ci(nV),Ci(eV),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const sV=t=>{Object.freeze(t);const e="function"==typeof t,n=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(function(i){n.call(t,i)&&(!e||"caller"!==i&&"callee"!==i&&"arguments"!==i)&&null!==t[i]&&("object"==typeof t[i]||"function"==typeof t[i])&&!Object.isFrozen(t[i])&&sV(t[i])}),t};let oV=(()=>{class t{constructor(t,e){this.isDevMode=t,this.isTestMode=e}}return t.\u0275fac=function(e){return new(e||t)(Ci(RB),Ci(DB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),aV=(()=>{class t{constructor(t,e){this._host=t,this._config=e}get isIncorrectProduction(){return!this._host.isDevMode()&&this._config.developmentMode}get isIncorrectDevelopment(){return this._host.isDevMode()&&!this._config.developmentMode}verifyDevMode(){this._host.isTestMode()||(this.isIncorrectProduction?console.warn(kB.INCORRECT_PRODUCTION()):this.isIncorrectDevelopment&&console.warn(kB.INCORRECT_DEVELOPMENT()))}}return t.\u0275fac=function(e){return new(e||t)(Ci(oV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lV=(()=>{class t{constructor(t,e,n,i){this._stateStream=t,this._dispatcher=e,this._config=n,i.verifyDevMode()}getRootStateOperations(){const t={getState:()=>this._stateStream.getValue(),setState:t=>this._stateStream.next(t),dispatch:t=>this._dispatcher.dispatch(t)};return this._config.developmentMode?this.ensureStateAndActionsAreImmutable(t):t}ensureStateAndActionsAreImmutable(t){return{getState:()=>t.getState(),setState:e=>{const n=sV(e);return t.setState(n)},dispatch:e=>t.dispatch(e)}}setStateToTheCurrentWithNew(t){const e=this.getRootStateOperations(),n=e.getState();e.setState(Object.assign({},n,t.defaults))}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(rV),Ci(jB),Ci(aV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),cV=(()=>{class t{constructor(t){this._internalStateOperations=t}createStateContext(t){const e=this._internalStateOperations.getRootStateOperations();function n(e){return UB(e,t.path)}function i(n,i){const r=zB(n,t.path,i),s=t.instance;if(s.ngxsOnChanges){const e=WB(t,{currentAppState:n,newAppState:r});s.ngxsOnChanges(e)}return e.setState(r),r}function r(t,e){return i(t,e(n(t)))}return{getState:()=>n(e.getState()),patchState:t=>r(e.getState(),function(t){return e=>{if(Array.isArray(t))throw new Error(kB.PATCHING_ARRAY());if("object"!=typeof t)throw new Error(kB.PATCHING_PRIMITIVE());const n=Object.assign({},e);for(const i in t)n[i]=t[i];return n}}(t)),setState(t){const n=e.getState();return function(t){return"function"==typeof t}(t)?r(n,t):i(n,t)},dispatch:t=>e.dispatch(t)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class uV{static stateNameErrorMessage(t){return kB.STATE_NAME(t)}static checkCorrectStateName(t){if(!t)throw new Error(kB.STATE_NAME_PROPERTY());if(!this.stateNameRegex.test(t))throw new Error(this.stateNameErrorMessage(t))}static checkStateNameIsUnique(t,e){const n=this.getValidStateMeta(t).name,i=e[n];if(i&&i!==t)throw new Error(kB.STATE_UNIQUE(n,t.name,i.name));return n}static getValidStateMeta(t){const e=GB(t);if(!e)throw new Error(kB.STATE_DECORATOR());return e}}uV.stateNameRegex=new RegExp("^[a-zA-Z0-9_]+$");let hV=(()=>{class t{constructor(t,e,n,i,r,s,o){this._injector=t,this._config=e,this._parentFactory=n,this._actions=i,this._actionResults=r,this._stateContextFactory=s,this._initialState=o,this._actionsSubscription=null,this._states=[],this._statesByName={},this._statePaths={},this.getRuntimeSelectorContext=gB(()=>{const t=this;function e(e){const n=t.statePaths[e];return n?function(t,e){return e&&e.compatibility&&e.compatibility.strictContentSecurityPolicy?function(t){const e=t.slice();return t=>e.reduce((t,e)=>t&&t[e],t)}(t):function(t){const e=t;let n="store."+e[0],i=0;const r=e.length;let s=n;for(;++i(n||(n=e(t)),n?n(...i):void 0))},getSelectorOptions:e=>Object.assign({},t._config.selectorOptions,e||{})}})}get states(){return this._parentFactory?this._parentFactory.states:this._states}get statesByName(){return this._parentFactory?this._parentFactory.statesByName:this._statesByName}get statePaths(){return this._parentFactory?this._parentFactory.statePaths:this._statePaths}static cloneDefaults(t){let e={};return e=Array.isArray(t)?t.slice():function(t){return"object"==typeof t&&null!==t||"function"==typeof t}(t)?Object.assign({},t):void 0===t?{}:t,e}static checkStatesAreValid(t){t.forEach(uV.getValidStateMeta)}ngOnDestroy(){this._actionsSubscription.unsubscribe()}add(e){t.checkStatesAreValid(e);const{newStates:n}=this.addToStatesMap(e);if(!n.length)return[];const i=function(t){const e=e=>{const n=t.find(t=>t===e);if(!n)throw new Error(`Child state not found: ${e}. \r\nYou may have forgotten to add states to module`);return n[NB].name};return t.reduce((t,n)=>{const{name:i,children:r}=n[NB];return t[i]=(r||[]).map(e),t},{})}(n),r=function(t){const e=[],n={},i=(r,s=[])=>{Array.isArray(s)||(s=[]),s.push(r),n[r]=!0,t[r].forEach(t=>{if(s.indexOf(t)>=0)throw new Error(`Circular dependency '${t}' is required by '${r}': ${s.join(" -> ")}`);n[t]||i(t,s.slice(0))}),e.indexOf(r)<0&&e.push(r)};return Object.keys(t).forEach(t=>i(t)),e.reverse()}(i),s=function(t,e={}){const n=(t,e)=>{for(const i in t)if(t.hasOwnProperty(i)&&t[i].indexOf(e)>=0){const e=n(t,i);return null!==e?`${e}.${i}`:i}return null};for(const i in t)if(t.hasOwnProperty(i)){const r=n(t,i);e[i]=r?`${r}.${i}`:i}return e}(i),o=function(t){return t.reduce((t,e)=>(t[e[NB].name]=e,t),{})}(n),a=[];for(const l of r){const e=o[l],n=s[l],i=e[NB];this.addRuntimeInfoToMeta(i,n);const r={name:l,path:n,isInitialised:!1,actions:i.actions,instance:this._injector.get(e),defaults:t.cloneDefaults(i.defaults)};this.hasBeenMountedAndBootstrapped(l,n)||a.push(r),this.states.push(r)}return a}addAndReturnDefaults(t){const e=this.add(t||[]);return{defaults:e.reduce((t,e)=>zB(t,e.path,e.defaults),{}),states:e}}connectActionHandlers(){null===this._actionsSubscription&&(this._actionsSubscription=this._actions.pipe(Hd(t=>"DISPATCHED"===t.status),W(({action:t})=>this.invokeActions(this._actions,t).pipe(D(()=>({action:t,status:"SUCCESSFUL"})),CB({action:t,status:"CANCELED"}),pv(e=>wd({action:t,status:"ERRORED",error:e}))))).subscribe(t=>this._actionResults.next(t)))}invokeActions(t,e){const n=VB(e),i=[];for(const s of this.states){const o=s.actions[n];if(o)for(const n of o){const o=this._stateContextFactory.createStateContext(s);try{let r=s.instance[n.fn](o,e);r instanceof Promise&&(r=U(r)),r instanceof C?(r=r.pipe(CB({})),n.options.cancelUncompleted&&(r=r.pipe(Wd(t.pipe(qB(e)))))):r=wd({}).pipe(up()),i.push(r)}catch(r){i.push(ip(r))}}}return i.length||i.push(wd({})),hv(i)}addToStatesMap(t){const e=[],n=this.statesByName;for(const i of t){const t=uV.checkStateNameIsUnique(i,n);!n[t]&&(e.push(i),n[t]=i)}return{newStates:e}}addRuntimeInfoToMeta(t,e){this.statePaths[t.name]=e,t.path=e}hasBeenMountedAndBootstrapped(t,e){const n=void 0!==UB(this._initialState,e);return this.statesByName[t]&&n}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(jB),Ci(t,12),Ci(ZB),Ci(iV),Ci(cV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),dV=(()=>{class t{constructor(t,e,n){this.internalStateOperations=t,this.stateContextFactory=e,this.bootstrapper=n}ngxsBootstrap(t,e){this.internalStateOperations.getRootStateOperations().dispatch(t).pipe(Hd(()=>!!e),$f(()=>this.invokeInit(e.states)),W(()=>this.bootstrapper.appBootstrapped$),Hd(t=>!!t)).subscribe(()=>this.invokeBootstrap(e.states))}invokeInit(t){for(const e of t){const t=e.instance;if(t.ngxsOnChanges){const n=WB(e,{currentAppState:{},newAppState:this.internalStateOperations.getRootStateOperations().getState()});t.ngxsOnChanges(n)}t.ngxsOnInit&&t.ngxsOnInit(this.getStateContext(e)),e.isInitialised=!0}}invokeBootstrap(t){for(const e of t){const t=e.instance;t.ngxsAfterBootstrap&&t.ngxsAfterBootstrap(this.getStateContext(e))}}getStateContext(t){return this.stateContextFactory.createStateContext(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV),Ci(cV),Ci(bB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();let pV=(()=>{class t{constructor(t,e,n,i,r,s){this._stateStream=t,this._internalStateOperations=e,this._config=n,this._internalExecutionStrategy=i,this._stateFactory=r,this.initStateStream(s)}dispatch(t){return this._internalStateOperations.getRootStateOperations().dispatch(t)}select(t){const e=this.getStoreBoundSelectorFn(t);return this._stateStream.pipe(D(e),pv(t=>{const{suppressErrors:e}=this._config.selectorOptions;return t instanceof TypeError&&e?wd(void 0):ip(t)}),Rd(),YB(this._internalExecutionStrategy))}selectOnce(t){return this.select(t).pipe(Gp(1))}selectSnapshot(t){return this.getStoreBoundSelectorFn(t)(this._stateStream.getValue())}subscribe(t){return this._stateStream.pipe(YB(this._internalExecutionStrategy)).subscribe(t)}snapshot(){return this._internalStateOperations.getRootStateOperations().getState()}reset(t){return this._internalStateOperations.getRootStateOperations().setState(t)}getStoreBoundSelectorFn(t){return function(t){const e=function(t){return t.NGXS_SELECTOR_META}(t)||GB(t);return e&&e.makeRootSelector||(()=>t)}(t)(this._stateFactory.getRuntimeSelectorContext())}initStateStream(t){const e=this._stateStream.value;if(!e||0===Object.keys(e).length){const e=Object.keys(this._config.defaultsState).length>0?Object.assign({},this._config.defaultsState,t):t;this._stateStream.next(e)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(lV),Ci(jB),Ci(KB),Ci(hV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fV=(()=>{class t{constructor(e,n){t.store=e,t.config=n}ngOnDestroy(){t.store=null,t.config=null}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t.store=null,t.config=null,t})();class gV{static get type(){return"@@INIT"}}class mV{constructor(t){this.addedStates=t}static get type(){return"@@UPDATE_STATE"}}const bV=new lp(1);let yV=(()=>{class t{constructor(e,n,i,r,s=[],o){!function(){try{const t=window.ng,e=!(t.probe&&t.coreTokens)&&Nu();bV.next(e)}catch(t){bV.next(!1)}finally{bV.complete()}}();const a=e.addAndReturnDefaults(s);n.setStateToTheCurrentWithNew(a),e.connectActionHandlers(),o.ngxsBootstrap(new gV,a)}}return t.\u0275fac=function(e){return new(e||t)(Ci(hV),Ci(lV),Ci(pV),Ci(fV),Ci(PB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),vV=(()=>{class t{constructor(e,n,i,r=[],s){const o=t.flattenStates(r),a=i.addAndReturnDefaults(o);a.states.length&&(n.setStateToTheCurrentWithNew(a),s.ngxsBootstrap(new mV(a.defaults),a))}static flattenStates(t=[]){return t.reduce((t,e)=>t.concat(e),[])}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(lV),Ci(hV),Ci(MB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class _V{static forRoot(t=[],e={}){return{ngModule:yV,providers:[hV,cV,JB,ZB,bB,aV,oV,dV,rV,iV,lV,KB,pV,eV,fV,nV,...t,..._V.ngxsTokenProviders(t,e)]}}static forFeature(t=[]){return{ngModule:vV,providers:[hV,nV,...t,{provide:MB,multi:!0,useValue:t}]}}static ngxsTokenProviders(t,e){return[{provide:DB,useValue:mB},{provide:RB,useValue:Nu},{provide:BB,useClass:e.executionStrategy||AB},{provide:PB,useValue:t},{provide:_V.ROOT_OPTIONS,useValue:e},{provide:jB,useFactory:_V.ngxsConfigFactory,deps:[_V.ROOT_OPTIONS]},{provide:au,useFactory:_V.appBootstrapListenerFactory,multi:!0,deps:[bB]},{provide:yB,useFactory:_V.getInitialState},{provide:_B,useExisting:cV},{provide:wB,useExisting:hV}]}static ngxsConfigFactory(t){return $B(new jB,t)}static appBootstrapListenerFactory(t){return()=>t.bootstrap()}static getInitialState(){return vB.pop()}}function wV(t){return e=>{!function(t){bV.subscribe(e=>{e&&(t.\u0275prov||console.warn(kB.UNDECORATED_STATE_IN_IVY(t.name)))})}(e);const n=e,i=function(t){if(!t.hasOwnProperty(NB)){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,NB,{value:e})}return GB(t)}(n),r=Object.getPrototypeOf(n),s=function(e){return Object.assign({},e[LB]||{},t)}(r);(function(t){const{meta:e,inheritedStateClass:n,optionsWithInheritance:i}=t,{children:r,defaults:s,name:o}=i,a="string"==typeof o?o:o&&o.getName()||null;uV.checkCorrectStateName(a),n.hasOwnProperty(NB)&&(e.actions=Object.assign({},e.actions,(n[NB]||{}).actions)),e.children=r,e.defaults=s,e.name=a})({meta:i,inheritedStateClass:r,optionsWithInheritance:s}),n[LB]=s}}_V.\u0275fac=function(t){return new(t||_V)},_V.\u0275mod=ie({type:_V}),_V.\u0275inj=St({}),_V.ROOT_OPTIONS=new oi("ROOT_OPTIONS");let xV=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}setProperty(t,e){this._renderer.setProperty(this._elementRef.nativeElement,t,e)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl))},t.\u0275dir=se({type:t}),t})(),SV=(()=>{class t extends xV{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();const EV=new oi("NgValueAccessor"),CV={provide:EV,useExisting:pt(()=>TV),multi:!0},OV=new oi("CompositionEventMode");let TV=(()=>{class t extends xV{constructor(t,e,n){super(t,e),this._compositionMode=n,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Xu()?Xu().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this.setProperty("value",null==t?"":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)(ea(Ml),ea(kl),ea(OV,8))},t.\u0275dir=se({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&&fa("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:[_l([CV]),jo]}),t})();const kV=new oi("NgValidators"),AV=new oi("NgAsyncValidators");function PV(t){return null!=t}function MV(t){const e=ha(t)?U(t):t;return pa(e),e}function IV(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 DV(t,e){return e.map(e=>e(t))}function RV(t){return t.map(t=>function(t){return!t.validate}(t)?t:e=>t.validate(e))}function NV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return IV(DV(t,e))}}(RV(t)):null}function LV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return hv(DV(t,e).map(MV)).pipe(D(IV))}}(RV(t)):null}function jV(t,e){return null===t?[e]:Array.isArray(t)?[...t,e]:[t,e]}function FV(t){return t._rawValidators}function BV(t){return t._rawAsyncValidators}function VV(t){return t?Array.isArray(t)?t:[t]:[]}function zV(t,e){return Array.isArray(t)?t.includes(e):t===e}function UV(t,e){const n=VV(e);return VV(t).forEach(t=>{zV(n,t)||n.push(t)}),n}function HV(t,e){return VV(e).filter(e=>!zV(t,e))}let $V=(()=>{class t{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=NV(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=LV(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}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=se({type:t}),t})(),GV=(()=>{class t extends $V{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();class WV extends $V{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class qV{constructor(t){this._cd=t}is(t){var e,n,i;return"submitted"===t?!!(null===(e=this._cd)||void 0===e?void 0:e.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[t])}}let XV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(WV,2))},t.\u0275dir=se({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))},features:[jo]}),t})(),YV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(GV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))("ng-submitted",e.is("submitted"))},features:[jo]}),t})();function KV(t,e){JV(t,e),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&ez(t,e)})}(t,e),function(t,e){const n=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};t.registerOnChange(n),e._registerOnDestroy(()=>{t._unregisterOnChange(n)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&ez(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),function(t,e){if(e.valueAccessor.setDisabledState){const n=t=>{e.valueAccessor.setDisabledState(t)};t.registerOnDisabledChange(n),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(n)})}}(t,e)}function QV(t,e,n=!0){const i=()=>{};e.valueAccessor&&(e.valueAccessor.registerOnChange(i),e.valueAccessor.registerOnTouched(i)),tz(t,e),t&&(e._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function ZV(t,e){t.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(e)})}function JV(t,e){const n=FV(t);null!==e.validator?t.setValidators(jV(n,e.validator)):"function"==typeof n&&t.setValidators([n]);const i=BV(t);null!==e.asyncValidator?t.setAsyncValidators(jV(i,e.asyncValidator)):"function"==typeof i&&t.setAsyncValidators([i]);const r=()=>t.updateValueAndValidity();ZV(e._rawValidators,r),ZV(e._rawAsyncValidators,r)}function tz(t,e){let n=!1;if(null!==t){if(null!==e.validator){const i=FV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.validator);r.length!==i.length&&(n=!0,t.setValidators(r))}}if(null!==e.asyncValidator){const i=BV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.asyncValidator);r.length!==i.length&&(n=!0,t.setAsyncValidators(r))}}}const i=()=>{};return ZV(e._rawValidators,i),ZV(e._rawAsyncValidators,i),n}function ez(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function nz(t,e){JV(t,e)}function iz(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function rz(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const sz="VALID",oz="INVALID",az="PENDING",lz="DISABLED";function cz(t){return(pz(t)?t.validators:t)||null}function uz(t){return Array.isArray(t)?NV(t):t||null}function hz(t,e){return(pz(e)?e.asyncValidators:t)||null}function dz(t){return Array.isArray(t)?LV(t):t||null}function pz(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class fz{constructor(t,e){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=e,this._composedValidatorFn=uz(this._rawValidators),this._composedAsyncValidatorFn=dz(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===sz}get invalid(){return this.status===oz}get pending(){return this.status==az}get disabled(){return this.status===lz}get enabled(){return this.status!==lz}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._rawValidators=t,this._composedValidatorFn=uz(t)}setAsyncValidators(t){this._rawAsyncValidators=t,this._composedAsyncValidatorFn=dz(t)}addValidators(t){this.setValidators(UV(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(UV(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(HV(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(HV(t,this._rawAsyncValidators))}hasValidator(t){return zV(this._rawValidators,t)}hasAsyncValidator(t){return zV(this._rawAsyncValidators,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=az,!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=lz,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=sz,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(),(this.status===sz||this.status===az)&&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()?lz:sz}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=az,this._hasOwnPendingAsyncValidator=!0;const e=MV(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(e,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e||(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length))return null;let i=t;return e.forEach(t=>{i=i instanceof mz?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof bz&&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 Rc,this.statusChanges=new Rc}_calculateStatus(){return this._allControlsDisabled()?lz:this.errors?oz:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(az)?az:this._anyControlsHaveStatus(oz)?oz:sz}_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){pz(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class gz extends fz{constructor(t=null,e,n){super(cz(e),hz(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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)}_unregisterOnChange(t){rz(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){rz(this._onDisabledChange,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 mz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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,n={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?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=>{const n=this.controls[e];n&&t(n,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 bz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(t){return this.controls[t]}push(t,e={}){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(t,e,n={}){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:n.emitEvent})}removeAt(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?t.value:t.getRawValue())}clear(t={}){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:t.emitEvent}))}_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 yz={provide:GV,useExisting:pt(()=>_z)},vz=(()=>Promise.resolve(null))();let _z=(()=>{class t extends GV{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Rc,this.form=new mz({},NV(t),LV(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){vz.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),KV(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),rz(this._directives,t)})}addFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path),n=new mz({});nz(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){vz.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,iz(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)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([yz]),jo]}),t})(),wz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})(),xz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Sz=new oi("NgModelWithFormControlWarning"),Ez={provide:WV,useExisting:pt(()=>Cz)};let Cz=(()=>{class t extends WV{constructor(t,e,n,i){super(),this._ngModelWarningConfig=i,this.update=new Rc,this._ngModelWarningSent=!1,this._setValidators(t),this._setAsyncValidators(e),this.valueAccessor=function(t,e){if(!e)return null;let n,i,r;return Array.isArray(e),e.forEach(t=>{t.constructor===TV?n=t:function(t){return Object.getPrototypeOf(t.constructor)===SV}(t)?i=t:r=t}),r||i||n||null}(0,n)}set isDisabled(t){}ngOnChanges(t){if(this._isControlChanged(t)){const e=t.form.previousValue;e&&QV(e,this,!1),KV(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}(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.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&QV(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_isControlChanged(t){return t.hasOwnProperty("form")}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10),ea(EV,10),ea(Sz,8))},t.\u0275dir=se({type:t,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[_l([Ez]),jo,ye]}),t._ngModelWarningSentOnce=!1,t})();const Oz={provide:GV,useExisting:pt(()=>Tz)};let Tz=(()=>{class t extends GV{constructor(t,e){super(),this.validators=t,this.asyncValidators=e,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new Rc,this._setValidators(t),this._setAsyncValidators(e)}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(tz(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return KV(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){QV(t.control||null,t,!1),rz(this.directives,t)}addFormGroup(t){this._setUpFormContainer(t)}removeFormGroup(t){this._cleanUpFormContainer(t)}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){this._setUpFormContainer(t)}removeFormArray(t){this._cleanUpFormContainer(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,iz(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=t.control,n=this.form.get(t.path);e!==n&&(QV(e||null,t),n instanceof gz&&(KV(n,t),t.control=n))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(t){const e=this.form.get(t.path);nz(e,t),e.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(t){if(this.form){const e=this.form.get(t.path);e&&function(t,e){return tz(t,e)}(e,t)&&e.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){JV(this.form,this),this._oldForm&&tz(this._oldForm,this)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([Oz]),jo,ye]}),t})(),kz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[xz]]}),t})(),Az=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})(),Pz=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sz,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})();function Mz(t){return new C(e=>{let n;try{n=t()}catch(i){return void e.error(i)}return(n?U(n):np()).subscribe(e)})}const Iz=["underline"],Dz=["connectionContainer"],Rz=["inputContainer"],Nz=["label"];function Lz(t,e){1&t&&(aa(0),ra(1,"div",14),oa(2,"div",15),oa(3,"div",16),oa(4,"div",17),sa(),ra(5,"div",18),oa(6,"div",15),oa(7,"div",16),oa(8,"div",17),sa(),la())}function jz(t,e){1&t&&(ra(0,"div",19),xa(1,1),sa())}function Fz(t,e){if(1&t&&(aa(0),xa(1,2),ra(2,"span"),Za(3),sa(),la()),2&t){const t=va(2);ws(3),Ja(t._control.placeholder)}}function Bz(t,e){1&t&&xa(0,3,["*ngSwitchCase","true"])}function Vz(t,e){1&t&&(ra(0,"span",23),Za(1," *"),sa())}function zz(t,e){if(1&t){const t=ua();ra(0,"label",20,21),fa("cdkObserveContent",function(){return $e(t),va().updateOutlineGap()}),Jo(2,Fz,4,1,"ng-container",12),Jo(3,Bz,1,0,"ng-content",12),Jo(4,Vz,2,0,"span",22),sa()}if(2&t){const t=va();ja("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),na("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),Ko("for",t._control.id)("aria-owns",t._control.id),ws(2),na("ngSwitchCase",!1),ws(1),na("ngSwitchCase",!0),ws(1),na("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function Uz(t,e){1&t&&(ra(0,"div",24),xa(1,4),sa())}function Hz(t,e){if(1&t&&(ra(0,"div",25,26),oa(2,"span",27),sa()),2&t){const t=va();ws(2),ja("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $z(t,e){1&t&&(ra(0,"div"),xa(1,5),sa()),2&t&&na("@transitionMessages",va()._subscriptAnimationState)}function Gz(t,e){if(1&t&&(ra(0,"div",31),Za(1),sa()),2&t){const t=va(2);na("id",t._hintLabelId),ws(1),Ja(t.hintLabel)}}function Wz(t,e){if(1&t&&(ra(0,"div",28),Jo(1,Gz,2,2,"div",29),xa(2,6),oa(3,"div",30),xa(4,7),sa()),2&t){const t=va();na("@transitionMessages",t._subscriptAnimationState),ws(1),na("ngIf",t.hintLabel)}}const qz=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Xz=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Yz=new oi("MatError"),Kz={transitionMessages:Vg("transitionMessages",[$g("enter",Hg({opacity:1,transform:"translateY(0%)"})),Wg("void => enter",[Hg({opacity:0,transform:"translateY(-5px)"}),zg("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Qz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t}),t})();const Zz=new oi("MatHint");let Jz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-label"]]}),t})(),tU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-placeholder"]]}),t})();const eU=new oi("MatPrefix");let nU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","matPrefix",""]],features:[_l([{provide:eU,useExisting:t}])]}),t})();const iU=new oi("MatSuffix");let rU=0;const sU=jy(class{constructor(t){this._elementRef=t}},"primary"),oU=new oi("MAT_FORM_FIELD_DEFAULT_OPTIONS"),aU=new oi("MatFormField");let lU=(()=>{class t extends sU{constructor(t,e,n,i,r,s,o,a){super(t),this._changeDetectorRef=e,this._dir=i,this._defaults=r,this._platform=s,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new P,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+rU++,this._labelId="mat-form-field-label-"+rU++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=r&&r.appearance?r.appearance:"legacy",this._hideRequiredMarker=!(!r||null==r.hideRequiredMarker)&&r.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=md(t)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_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}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}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(Kd(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(Wd(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe(Wd(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),Q(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Kd(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Kd(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(Wd(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._labelChildNonStatic&&!this._labelChildStatic)}_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,xd(this._label.nativeElement,"transitionend").pipe(Gp(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&t.push(...this._control.userAriaDescribedBy.split(" ")),"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.push(...this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if(!("outline"===this.appearance&&t&&t.children.length&&t.textContent.trim()&&this._platform.isBrowser))return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),s=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const r=i.getBoundingClientRect();if(0===r.width&&0===r.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const s=this._getStartEnd(r),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.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,ig],Ny]}),t})();function uU(t,e=jd){const n=function(t){return t instanceof Date&&!isNaN(+t)}(t)?+t-e.now():Math.abs(t);return t=>t.lift(new hU(n,e))}class hU{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new dU(t,this.delay,this.scheduler))}}class dU extends v{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,i=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-i.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(dU.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new pU(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(sp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(sp.createComplete()),this.unsubscribe()}}class pU{constructor(t,e){this.time=t,this.notification=e}}const fU=["panel"];function gU(t,e){if(1&t&&(ra(0,"div",0,1),xa(2),sa()),2&t){const t=e.id,n=va();na("id",n.id)("ngClass",n._classList),Ko("aria-label",n.ariaLabel||null)("aria-labelledby",n._getPanelAriaLabelledby(t))}}const mU=["*"];let bU=0;class yU{constructor(t,e){this.source=t,this.option=e}}const vU=Fy(class{}),_U=new oi("mat-autocomplete-default-options",{providedIn:"root",factory:function(){return{autoActiveFirstOption:!1}}});let wU=(()=>{class t extends vU{constructor(t,e,n,i){super(),this._changeDetectorRef=t,this._elementRef=e,this._activeOptionChanges=g.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new Rc,this.opened=new Rc,this.closed=new Rc,this.optionActivated=new Rc,this._classList={},this.id="mat-autocomplete-"+bU++,this.inertGroups=(null==i?void 0:i.SAFARI)||!1,this._autoActiveFirstOption=!!n.autoActiveFirstOption}get isOpen(){return this._isOpen&&this.showPanel}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(t){this._autoActiveFirstOption=md(t)}set classList(t){this._classList=t&&t.length?function(t,e=/\s+/){const n=[];if(null!=t){const i=Array.isArray(t)?t:`${t}`.split(e);for(const t of i){const e=`${t}`.trim();e&&n.push(e)}}return n}(t).reduce((t,e)=>(t[e]=!0,t),{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}ngAfterContentInit(){this._keyManager=new fg(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(t=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[t]||null})}),this._setVisibility()}ngOnDestroy(){this._activeOptionChanges.unsubscribe()}_setScrollTop(t){this.panel&&(this.panel.nativeElement.scrollTop=t)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(t){const e=new yU(this,t);this.optionSelected.emit(e)}_getPanelAriaLabelledby(t){return this.ariaLabel?null:this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}_setVisibilityClasses(t){t[this._visibleClass]=this.showPanel,t[this._hiddenClass]=!this.showPanel}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(kl),ea(_U),ea(pp))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(sc,7),qc(fU,5)),2&t){let t;Wc(t=Yc())&&(e.template=t.first),Wc(t=Yc())&&(e.panel=t.first)}},inputs:{displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",classList:["class","classList"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],panelWidth:"panelWidth"},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[jo]}),t})(),xU=(()=>{class t extends wU{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,iv,5),Xc(n,av,5)),2&t){let t;Wc(t=Yc())&&(e.optionGroups=t),Wc(t=Yc())&&(e.options=t)}},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[_l([{provide:Jy,useExisting:t}]),jo],ngContentSelectors:mU,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(t,e){1&t&&(wa(),Jo(0,gU,3,4,"ng-template"))},directives:[mh],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t})();const SU=new oi("mat-autocomplete-scroll-strategy"),EU={provide:SU,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}},CU={provide:EV,useExisting:pt(()=>TU),multi:!0};let OU=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this._element=t,this._overlay=e,this._viewContainerRef=n,this._zone=i,this._changeDetectorRef=r,this._dir=o,this._formField=a,this._document=l,this._viewportRuler=c,this._defaults=u,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=g.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new P,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=Mz(()=>this.autocomplete&&this.autocomplete.options?Q(...this.autocomplete.options.map(t=>t.onSelectionChange)):this._zone.onStable.pipe(Gp(1),Qd(()=>this.optionSelections))),this._scrollStrategy=s}get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(t){this._autocompleteDisabled=md(t)}ngAfterViewInit(){const t=this._getWindow();void 0!==t&&this._zone.runOutsideAngular(()=>t.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(t){t.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const t=this._getWindow();void 0!==t&&t.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return Q(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(Hd(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(Hd(()=>this._overlayAttached)):wd()).pipe(D(t=>t instanceof sv?t:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return Q(xd(this._document,"click"),xd(this._document,"auxclick"),xd(this._document,"touchend")).pipe(Hd(t=>{const e=Ep(t),n=this._formField?this._formField._elementRef.nativeElement:null,i=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&e!==this._element.nativeElement&&(!n||!n.contains(e))&&(!i||!i.contains(e))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(e)}))}writeValue(t){Promise.resolve(null).then(()=>this._setTriggerValue(t))}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this._element.nativeElement.disabled=t}_handleKeydown(t){const e=t.keyCode;if(27===e&&!Qp(t)&&t.preventDefault(),this.activeOption&&13===e&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else if(this.autocomplete){const n=this.autocomplete._keyManager.activeItem,i=38===e||40===e;this.panelOpen||9===e?this.autocomplete._keyManager.onKeydown(t):i&&this._canOpen()&&this.openPanel(),(i||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}_handleInput(t){let e=t.target,n=e.value;"number"===e.type&&(n=""==n?null:parseFloat(n)),this._previousValue!==n&&(this._previousValue=n,this._onChange(n),this._canOpen()&&this._document.activeElement===t.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_floatLabel(t=!1){this._formField&&"auto"===this._formField.floatLabel&&(t?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){return Q(this._zone.onStable.pipe(Gp(1)),this.autocomplete.options.changes.pipe($f(()=>this._positionStrategy.reapplyLastPosition()),uU(0))).pipe(Qd(()=>{const t=this.panelOpen;return this._resetActiveItem(),this.autocomplete._setVisibility(),this.panelOpen&&(this._overlayRef.updatePosition(),t!==this.panelOpen&&this.autocomplete.opened.emit()),this.panelClosingActions}),Gp(1)).subscribe(t=>this._setValueAndClose(t))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_setTriggerValue(t){const e=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(t):t,n=null!=e?e:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n,this._previousValue=n}_setValueAndClose(t){t&&t.source&&(this._clearPreviousSelectedOption(t.source),this._setTriggerValue(t.source.value),this._onChange(t.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(t.source)),this.closePanel()}_clearPreviousSelectedOption(t){this.autocomplete.options.forEach(e=>{e!==t&&e.selected&&e.deselect()})}_attachOverlay(){var t;let e=this._overlayRef;e?(this._positionStrategy.setOrigin(this._getConnectedElement()),e.updateSize({width:this._getPanelWidth()})):(this._portal=new Lp(this.autocomplete.template,this._viewContainerRef,{id:null===(t=this._formField)||void 0===t?void 0:t.getLabelId()}),e=this._overlay.create(this._getOverlayConfig()),this._overlayRef=e,e.keydownEvents().subscribe(t=>{(27===t.keyCode&&!Qp(t)||38===t.keyCode&&Qp(t,"altKey"))&&(this._closeKeyEventStream.next(),this._resetActiveItem(),t.stopPropagation(),t.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&e&&e.updateSize({width:this._getPanelWidth()})})),e&&!e.hasAttached()&&(e.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const n=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&n!==this.panelOpen&&this.autocomplete.opened.emit()}_getOverlayConfig(){var t;return new af({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(t=this._defaults)||void 0===t?void 0:t.overlayPanelClass})}_getOverlayPosition(){const t=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(t),this._positionStrategy=t,t}_setStrategyPositions(t){const e=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],n=this._aboveClass,i=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:n},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:n}];let r;r="above"===this.position?i:"below"===this.position?e:[...e,...i],t.withPositions(r)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const t=this.autocomplete;t.autoActiveFirstOption?t._keyManager.setFirstItemActive():t._keyManager.setActiveItem(-1)}_canOpen(){const t=this._element.nativeElement;return!t.readOnly&&!t.disabled&&!this._autocompleteDisabled}_getWindow(){var t;return(null===(t=this._document)||void 0===t?void 0:t.defaultView)||window}_scrollToOption(t){const e=this.autocomplete,n=lv(t,e.options,e.optionGroups);if(0===t&&1===n)e._setScrollTop(0);else if(e.panel){const n=e.options.toArray()[t];if(n){const t=n._getHostElement(),i=cv(t.offsetTop,t.offsetHeight,e._getScrollTop(),e.panel.nativeElement.offsetHeight);e._setScrollTop(i)}}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(kf),ea(hc),ea(xu),ea(tc),ea(SU),ea(Op,8),ea(aU,9),ea(Yu,8),ea(Mp),ea(_U,8))},t.\u0275dir=se({type:t,inputs:{position:["matAutocompletePosition","position"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"],autocomplete:["matAutocomplete","autocomplete"],connectedTo:["matAutocompleteConnectedTo","connectedTo"]},features:[ye]}),t})(),TU=(()=>{class t extends OU{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(t,e){1&t&&fa("focusin",function(){return e._handleFocus()})("blur",function(){return e._onTouched()})("input",function(t){return e._handleInput(t)})("keydown",function(t){return e._handleKeydown(t)}),2&t&&Ko("autocomplete",e.autocompleteAttribute)("role",e.autocompleteDisabled?null:"combobox")("aria-autocomplete",e.autocompleteDisabled?null:"list")("aria-activedescendant",e.panelOpen&&e.activeOption?e.activeOption.id:null)("aria-expanded",e.autocompleteDisabled?null:e.panelOpen.toString())("aria-owns",e.autocompleteDisabled||!e.panelOpen||null==e.autocomplete?null:e.autocomplete.id)("aria-haspopup",!e.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[_l([CU]),jo]}),t})(),kU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[EU],imports:[[Rf,uv,Ny,Rh],Ip,uv,Ny]}),t})();const AU=_p({passive:!0});let PU=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return ep;const e=_d(t),n=this._monitoredElements.get(e);if(n)return n.subject;const i=new P,r="cdk-text-field-autofilled",s=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(r)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(r)&&(e.classList.remove(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",s,AU),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",s,AU)}}),i}stopMonitoring(t){const e=_d(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)(Ci(pp),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu))},token:t,providedIn:"root"}),t})(),MU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp]]}),t})();const IU=new oi("MAT_INPUT_VALUE_ACCESSOR"),DU=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let RU=0;const NU=Vy(class{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}});let LU=(()=>{class t extends NU{constructor(t,e,n,i,r,s,o,a,l,c){super(s,i,r,n),this._elementRef=t,this._platform=e,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+RU++,this.focused=!1,this.stateChanges=new P,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=>mp().has(t));const u=this._elementRef.nativeElement,h=u.nodeName.toLowerCase();this._inputValueAccessor=o||u,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{const e=t.target;!e.value&&0===e.selectionStart&&0===e.selectionEnd&&(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===h,this._isTextarea="textarea"===h,this._isInFormField=!!c,this._isNativeSelect&&(this.controlType=u.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=md(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=md(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&mp().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=md(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.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){var t,e;const n=(null===(e=null===(t=this._formField)||void 0===t?void 0:t._hideControlPlaceholder)||void 0===e?void 0:e.call(t))?null:this.placeholder;if(n!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=n,n?t.setAttribute("placeholder",n):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){DU.indexOf(this._type)}_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){t.length?this._elementRef.nativeElement.setAttribute("aria-describedby",t.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(WV,10),ea(_z,8),ea(Tz,8),ea(zy),ea(IU,10),ea(PU),ea(xu),ea(aU,8))},t.\u0275dir=se({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._focusChanged(!0)})("blur",function(){return e._focusChanged(!1)})("input",function(){return e._onInput()}),2&t&&(il("disabled",e.disabled)("required",e.required),Ko("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-invalid",e.empty&&e.required?null:e.errorState)("aria-required",e.required),ja("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[_l([{provide:Qz,useExisting:t}]),jo,ye]}),t})(),jU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[zy],imports:[[MU,cU,Ny],MU,cU]}),t})();function FU(...t){const e=t.length;if(0===e)throw new Error("list of properties cannot be empty.");return n=>D(function(t,e){return n=>{let i=n;for(let r=0;rYU),multi:!0};class qU{}const XU=By(jy(Ly(class{constructor(t){this._elementRef=t}}),"accent"));let YU=(()=>{class t extends XU{constructor(t,e,n,i,r,s,o,a){super(t),this._focusMonitor=e,this._changeDetectorRef=n,this._dir=i,this._ngZone=s,this._animationMode=a,this._invert=!1,this._max=100,this._min=0,this._step=1,this._thumbLabel=!1,this._tickInterval=0,this._value=null,this._vertical=!1,this.change=new Rc,this.input=new Rc,this.valueChange=new Rc,this.onTouched=()=>{},this._percent=0,this._isSliding=null,this._isActive=!1,this._tickIntervalPercent=0,this._sliderDimensions=null,this._controlValueAccessorChangeFn=()=>{},this._dirChangeSubscription=g.EMPTY,this._pointerDown=t=>{this.disabled||this._isSliding||!KU(t)&&0!==t.button||this._ngZone.run(()=>{this._touchId=KU(t)?function(t,e){for(let n=0;n{if("pointer"===this._isSliding){const e=QU(t,this._touchId);if(e){t.preventDefault();const n=this.value;this._lastPointerEvent=t,this._updateValueFromPosition(e),n!=this.value&&this._emitInputEvent()}}},this._pointerUp=t=>{"pointer"===this._isSliding&&(!KU(t)||"number"!=typeof this._touchId||ZU(t.changedTouches,this._touchId))&&(t.preventDefault(),this._removeGlobalEvents(),this._isSliding=null,this._touchId=void 0,this._valueOnSlideStart!=this.value&&!this.disabled&&this._emitChangeEvent(),this._valueOnSlideStart=this._lastPointerEvent=null)},this._windowBlur=()=>{this._lastPointerEvent&&this._pointerUp(this._lastPointerEvent)},this._document=o,this.tabIndex=parseInt(r)||0,s.runOutsideAngular(()=>{const e=t.nativeElement;e.addEventListener("mousedown",this._pointerDown,GU),e.addEventListener("touchstart",this._pointerDown,GU)})}get invert(){return this._invert}set invert(t){this._invert=md(t)}get max(){return this._max}set max(t){this._max=bd(t,this._max),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get min(){return this._min}set min(t){this._min=bd(t,this._min),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get step(){return this._step}set step(t){this._step=bd(t,this._step),this._step%1!=0&&(this._roundToDecimal=this._step.toString().split(".").pop().length),this._changeDetectorRef.markForCheck()}get thumbLabel(){return this._thumbLabel}set thumbLabel(t){this._thumbLabel=md(t)}get tickInterval(){return this._tickInterval}set tickInterval(t){this._tickInterval="auto"===t?"auto":"number"==typeof t||"string"==typeof t?bd(t,this._tickInterval):0}get value(){return null===this._value&&(this.value=this._min),this._value}set value(t){if(t!==this._value){let e=bd(t,0);this._roundToDecimal&&e!==this.min&&e!==this.max&&(e=parseFloat(e.toFixed(this._roundToDecimal))),this._value=e,this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}}get vertical(){return this._vertical}set vertical(t){this._vertical=md(t)}get displayValue(){return this.displayWith?this.displayWith(this.value):this._roundToDecimal&&this.value&&this.value%1!=0?this.value.toFixed(this._roundToDecimal):this.value||0}focus(t){this._focusHostElement(t)}blur(){this._blurHostElement()}get percent(){return this._clamp(this._percent)}_shouldInvertAxis(){return this.vertical?!this.invert:this.invert}_isMinValue(){return 0===this.percent}_getThumbGap(){return this.disabled?7:this._isMinValue()&&!this.thumbLabel?this._isActive?10:7:0}_getTrackBackgroundStyles(){const t=this.vertical?`1, ${1-this.percent}, 1`:1-this.percent+", 1, 1";return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"-":""}${this._getThumbGap()}px) scale3d(${t})`}}_getTrackFillStyles(){const t=this.percent,e=this.vertical?`1, ${t}, 1`:`${t}, 1, 1`;return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"":"-"}${this._getThumbGap()}px) scale3d(${e})`,display:0===t?"none":""}}_getTicksContainerStyles(){return{transform:`translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"-":""}${this._tickIntervalPercent/2*100}%)`}}_getTicksStyles(){let t=100*this._tickIntervalPercent,e={backgroundSize:this.vertical?`2px ${t}%`:`${t}% 2px`,transform:`translateZ(0) translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"":"-"}${t/2}%)${this.vertical||"rtl"!=this._getDirection()?"":" rotate(180deg)"}`};if(this._isMinValue()&&this._getThumbGap()){const t=this._shouldInvertAxis();let n;n=this.vertical?t?"Bottom":"Top":t?"Right":"Left",e[`padding${n}`]=`${this._getThumbGap()}px`}return e}_getThumbContainerStyles(){const t=this._shouldInvertAxis();return{transform:`translate${this.vertical?"Y":"X"}(-${100*(("rtl"!=this._getDirection()||this.vertical?t:!t)?this.percent:1-this.percent)}%)`}}_shouldInvertMouseCoords(){const t=this._shouldInvertAxis();return"rtl"!=this._getDirection()||this.vertical?t:!t}_getDirection(){return this._dir&&"rtl"==this._dir.value?"rtl":"ltr"}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{this._isActive=!!t&&"keyboard"!==t,this._changeDetectorRef.detectChanges()}),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>{this._changeDetectorRef.markForCheck()}))}ngOnDestroy(){const t=this._elementRef.nativeElement;t.removeEventListener("mousedown",this._pointerDown,GU),t.removeEventListener("touchstart",this._pointerDown,GU),this._lastPointerEvent=null,this._removeGlobalEvents(),this._focusMonitor.stopMonitoring(this._elementRef),this._dirChangeSubscription.unsubscribe()}_onMouseenter(){this.disabled||(this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent())}_onFocus(){this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent()}_onBlur(){this.onTouched()}_onKeydown(t){if(this.disabled||Qp(t)||this._isSliding&&"keyboard"!==this._isSliding)return;const e=this.value;switch(t.keyCode){case 33:this._increment(10);break;case 34:this._increment(-10);break;case 35:this.value=this.max;break;case 36:this.value=this.min;break;case 37:this._increment("rtl"==this._getDirection()?1:-1);break;case 38:this._increment(1);break;case 39:this._increment("rtl"==this._getDirection()?-1:1);break;case 40:this._increment(-1);break;default:return}e!=this.value&&(this._emitInputEvent(),this._emitChangeEvent()),this._isSliding="keyboard",t.preventDefault()}_onKeyup(){"keyboard"===this._isSliding&&(this._isSliding=null)}_getWindow(){return this._document.defaultView||window}_bindGlobalEvents(t){const e=this._document,n=KU(t),i=n?"touchend":"mouseup";e.addEventListener(n?"touchmove":"mousemove",this._pointerMove,GU),e.addEventListener(i,this._pointerUp,GU),n&&e.addEventListener("touchcancel",this._pointerUp,GU);const r=this._getWindow();void 0!==r&&r&&r.addEventListener("blur",this._windowBlur)}_removeGlobalEvents(){const t=this._document;t.removeEventListener("mousemove",this._pointerMove,GU),t.removeEventListener("mouseup",this._pointerUp,GU),t.removeEventListener("touchmove",this._pointerMove,GU),t.removeEventListener("touchend",this._pointerUp,GU),t.removeEventListener("touchcancel",this._pointerUp,GU);const e=this._getWindow();void 0!==e&&e&&e.removeEventListener("blur",this._windowBlur)}_increment(t){this.value=this._clamp((this.value||0)+this.step*t,this.min,this.max)}_updateValueFromPosition(t){if(!this._sliderDimensions)return;let e=this._clamp(((this.vertical?t.y:t.x)-(this.vertical?this._sliderDimensions.top:this._sliderDimensions.left))/(this.vertical?this._sliderDimensions.height:this._sliderDimensions.width));if(this._shouldInvertMouseCoords()&&(e=1-e),0===e)this.value=this.min;else if(1===e)this.value=this.max;else{const t=this._calculateValue(e),n=Math.round((t-this.min)/this.step)*this.step+this.min;this.value=this._clamp(n,this.min,this.max)}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.value),this.valueChange.emit(this.value),this.change.emit(this._createChangeEvent())}_emitInputEvent(){this.input.emit(this._createChangeEvent())}_updateTickIntervalPercent(){if(this.tickInterval&&this._sliderDimensions)if("auto"==this.tickInterval){let t=this.vertical?this._sliderDimensions.height:this._sliderDimensions.width,e=Math.ceil(30/(t*this.step/(this.max-this.min)))*this.step;this._tickIntervalPercent=e/t}else this._tickIntervalPercent=this.tickInterval*this.step/(this.max-this.min)}_createChangeEvent(t=this.value){let e=new qU;return e.source=this,e.value=t,e}_calculatePercentage(t){return((t||0)-this.min)/(this.max-this.min)}_calculateValue(t){return this.min+t*(this.max-this.min)}_clamp(t,e=0,n=1){return Math.max(e,Math.min(t,n))}_getSliderDimensions(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}_focusHostElement(t){this._elementRef.nativeElement.focus(t)}_blurHostElement(){this._elementRef.nativeElement.blur()}writeValue(t){this.value=t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.disabled=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(tc),ea(Op,8),ni("tabindex"),ea(xu),ea(Yu),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-slider"]],viewQuery:function(t,e){if(1&t&&qc($U,5),2&t){let t;Wc(t=Yc())&&(e._sliderWrapper=t.first)}},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()})("keydown",function(t){return e._onKeydown(t)})("keyup",function(){return e._onKeyup()})("mouseenter",function(){return e._onMouseenter()})("selectstart",function(t){return t.preventDefault()}),2&t&&(il("tabIndex",e.tabIndex),Ko("aria-disabled",e.disabled)("aria-valuemax",e.max)("aria-valuemin",e.min)("aria-valuenow",e.value)("aria-valuetext",null==e.valueText?e.displayValue:e.valueText)("aria-orientation",e.vertical?"vertical":"horizontal"),ja("mat-slider-disabled",e.disabled)("mat-slider-has-ticks",e.tickInterval)("mat-slider-horizontal",!e.vertical)("mat-slider-axis-inverted",e._shouldInvertAxis())("mat-slider-invert-mouse-coords",e._shouldInvertMouseCoords())("mat-slider-sliding",e._isSliding)("mat-slider-thumb-label-showing",e.thumbLabel)("mat-slider-vertical",e.vertical)("mat-slider-min-value",e._isMinValue())("mat-slider-hide-last-tick",e.disabled||e._isMinValue()&&e._getThumbGap()&&e._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",vertical:"vertical",displayWith:"displayWith",valueText:"valueText"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[_l([WU]),jo],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(t,e){1&t&&(ra(0,"div",0,1),ra(2,"div",2),oa(3,"div",3),oa(4,"div",4),sa(),ra(5,"div",5),oa(6,"div",6),sa(),ra(7,"div",7),oa(8,"div",8),oa(9,"div",9),ra(10,"div",10),ra(11,"span",11),Za(12),sa(),sa(),sa(),sa()),2&t&&(ws(3),na("ngStyle",e._getTrackBackgroundStyles()),ws(1),na("ngStyle",e._getTrackFillStyles()),ws(1),na("ngStyle",e._getTicksContainerStyles()),ws(1),na("ngStyle",e._getTicksStyles()),ws(1),na("ngStyle",e._getThumbContainerStyles()),ws(5),Ja(e.displayValue))},directives:[Th],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),t})();function KU(t){return"t"===t.type[0]}function QU(t,e){let n;return n=KU(t)?"number"==typeof e?ZU(t.touches,e)||ZU(t.changedTouches,e):t.touches[0]||t.changedTouches[0]:t,n?{x:n.clientX,y:n.clientY}:void 0}function ZU(t,e){for(let n=0;n{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny],Ny]}),t})();function tH(t,e){}class eH{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus=!0,this.restoreFocus=!0,this.closeOnNavigation=!0}}const nH={dialogContainer:Vg("dialogContainer",[$g("void, exit",Hg({opacity:0,transform:"scale(0.7)"})),$g("enter",Hg({transform:"none"})),Wg("* => enter",zg("150ms cubic-bezier(0, 0, 0.2, 1)",Hg({transform:"none",opacity:1}))),Wg("* => void, * => exit",zg("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Hg({opacity:0})))])};let iH=(()=>{class t extends Fp{constructor(t,e,n,i,r,s){super(),this._elementRef=t,this._focusTrapFactory=e,this._changeDetectorRef=n,this._config=r,this._focusMonitor=s,this._animationStateChanged=new Rc,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=t=>(this._portalOutlet.hasAttached(),this._portalOutlet.attachDomPortal(t)),this._ariaLabelledBy=r.ariaLabelledBy||null,this._document=i}_initializeWithAttachedContent(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement(),this._focusDialogContainer()}attachComponentPortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(t)}_recaptureFocus(){this._containsFocus()||(!this._config.autoFocus||!this._focusTrap.focusInitialElement())&&this._elementRef.nativeElement.focus()}_trapFocus(){this._config.autoFocus?this._focusTrap.focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()}_restoreFocus(){const t=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&t&&"function"==typeof t.focus){const e=Sp(),n=this._elementRef.nativeElement;(!e||e===this._document.body||e===n||n.contains(e))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_setupFocusTrap(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}_capturePreviouslyFocusedElement(){this._document&&(this._elementFocusedBeforeDialogWasOpened=Sp())}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const t=this._elementRef.nativeElement,e=Sp();return t===e||t.contains(e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(vg),ea(tc),ea(Yu,8),ea(eH),ea(Mg))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},features:[jo]}),t})(),rH=(()=>{class t extends iH{constructor(){super(...arguments),this._state="enter"}_onAnimationDone({toState:t,totalTime:e}){"enter"===t?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})):"exit"===t&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:e}))}_onAnimationStart({toState:t,totalTime:e}){"enter"===t?this._animationStateChanged.next({state:"opening",totalTime:e}):("exit"===t||"void"===t)&&this._animationStateChanged.next({state:"closing",totalTime:e})}_startExitAnimation(){this._state="exit",this._changeDetectorRef.markForCheck()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(t,e){1&t&&ga("@dialogContainer.start",function(t){return e._onAnimationStart(t)})("@dialogContainer.done",function(t){return e._onAnimationDone(t)}),2&t&&(il("id",e._id),Ko("role",e._config.role)("aria-labelledby",e._config.ariaLabel?null:e._ariaLabelledBy)("aria-label",e._config.ariaLabel)("aria-describedby",e._config.ariaDescribedBy||null),rl("@dialogContainer",e._state))},features:[jo],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,e){1&t&&Jo(0,tH,0,0,"ng-template",0)},directives:[Up],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[nH.dialogContainer]}}),t})(),sH=0;class oH{constructor(t,e,n="mat-dialog-"+sH++){this._overlayRef=t,this._containerInstance=e,this.id=n,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new P,this._afterClosed=new P,this._beforeClosed=new P,this._state=0,e._id=n,e._animationStateChanged.pipe(Hd(t=>"opened"===t.state),Gp(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe(Hd(t=>"closed"===t.state),Gp(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),t.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._afterClosed.next(this._result),this._afterClosed.complete(),this.componentInstance=null,this._overlayRef.dispose()}),t.keydownEvents().pipe(Hd(t=>27===t.keyCode&&!this.disableClose&&!Qp(t))).subscribe(t=>{t.preventDefault(),aH(this,"keyboard")}),t.backdropClick().subscribe(()=>{this.disableClose?this._containerInstance._recaptureFocus():aH(this,"mouse")})}close(t){this._result=t,this._containerInstance._animationStateChanged.pipe(Hd(t=>"closing"===t.state),Gp(1)).subscribe(e=>{this._beforeClosed.next(t),this._beforeClosed.complete(),this._overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._afterClosed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._overlayRef.backdropClick()}keydownEvents(){return this._overlayRef.keydownEvents()}updatePosition(t){let e=this._getPositionStrategy();return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this}updateSize(t="",e=""){return this._overlayRef.updateSize({width:t,height:e}),this._overlayRef.updatePosition(),this}addPanelClass(t){return this._overlayRef.addPanelClass(t),this}removePanelClass(t){return this._overlayRef.removePanelClass(t),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._overlayRef.dispose()}_getPositionStrategy(){return this._overlayRef.getConfig().positionStrategy}}function aH(t,e,n){return void 0!==t._containerInstance&&(t._containerInstance._closeInteractionType=e),t.close(n)}const lH=new oi("MatDialogData"),cH=new oi("mat-dialog-default-options"),uH=new oi("mat-dialog-scroll-strategy"),hH={provide:uH,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.block()}};let dH=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l){this._overlay=t,this._injector=e,this._defaultOptions=n,this._parentDialog=i,this._overlayContainer=r,this._dialogRefConstructor=o,this._dialogContainerType=a,this._dialogDataToken=l,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new P,this._afterOpenedAtThisLevel=new P,this._ariaHiddenElements=new Map,this.afterAllClosed=Mz(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Kd(void 0))),this._scrollStrategy=s}get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const t=this._parentDialog;return t?t._getAfterAllClosed():this._afterAllClosedAtThisLevel}open(t,e){(e=function(t,e){return Object.assign(Object.assign({},e),t)}(e,this._defaultOptions||new eH)).id&&this.getDialogById(e.id);const n=this._createOverlay(e),i=this._attachDialogContainer(n,e),r=this._attachDialogContent(t,i,n,e);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(r),r.afterClosed().subscribe(()=>this._removeOpenDialog(r)),this.afterOpened.next(r),i._initializeWithAttachedContent(),r}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(t){return this.openDialogs.find(e=>e.id===t)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_createOverlay(t){const e=this._getOverlayConfig(t);return this._overlay.create(e)}_getOverlayConfig(t){const e=new af({positionStrategy:this._overlay.position().global(),scrollStrategy:t.scrollStrategy||this._scrollStrategy(),panelClass:t.panelClass,hasBackdrop:t.hasBackdrop,direction:t.direction,minWidth:t.minWidth,minHeight:t.minHeight,maxWidth:t.maxWidth,maxHeight:t.maxHeight,disposeOnNavigation:t.closeOnNavigation});return t.backdropClass&&(e.backdropClass=t.backdropClass),e}_attachDialogContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:eH,useValue:e}]}),i=new Np(this._dialogContainerType,e.viewContainerRef,n,e.componentFactoryResolver);return t.attach(i).instance}_attachDialogContent(t,e,n,i){const r=new this._dialogRefConstructor(n,e,i.id);if(t instanceof sc)e.attachTemplatePortal(new Lp(t,null,{$implicit:i.data,dialogRef:r}));else{const n=this._createInjector(i,r,e),s=e.attachComponentPortal(new Np(t,i.viewContainerRef,n));r.componentInstance=s.instance}return r.updateSize(i.width,i.height).updatePosition(i.position),r}_createInjector(t,e,n){const i=t&&t.viewContainerRef&&t.viewContainerRef.injector,r=[{provide:this._dialogContainerType,useValue:n},{provide:this._dialogDataToken,useValue:t.data},{provide:this._dialogRefConstructor,useValue:e}];return t.direction&&(!i||!i.get(Op,null,Mt.Optional))&&r.push({provide:Op,useValue:{value:t.direction,change:wd()}}),No.create({parent:i||this._injector,providers:r})}_removeOpenDialog(t){const e=this.openDialogs.indexOf(t);e>-1&&(this.openDialogs.splice(e,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((t,e)=>{t?e.setAttribute("aria-hidden",t):e.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const t=this._overlayContainer.getContainerElement();if(t.parentElement){const e=t.parentElement.children;for(let n=e.length-1;n>-1;n--){let i=e[n];i!==t&&"SCRIPT"!==i.nodeName&&"STYLE"!==i.nodeName&&!i.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}}}_closeDialogs(t){let e=t.length;for(;e--;)t[e].close()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(No),ea(void 0),ea(void 0),ea(gf),ea(void 0),ea(ai),ea(ai),ea(oi))},t.\u0275dir=se({type:t}),t})(),pH=(()=>{class t extends dH{constructor(t,e,n,i,r,s,o){super(t,e,i,s,o,r,oH,rH,lH)}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(No),Ci(lh,8),Ci(cH,8),Ci(uH),Ci(t,12),Ci(gf))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fH=0,gH=(()=>{class t{constructor(t,e,n){this._dialogRef=t,this._elementRef=e,this._dialog=n,this.id="mat-dialog-title-"+fH++}ngOnInit(){this._dialogRef||(this._dialogRef=function(t,e){let n=t.nativeElement.parentElement;for(;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?e.find(t=>t.id===n.id):null}(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{const t=this._dialogRef._containerInstance;t&&!t._ariaLabelledBy&&(t._ariaLabelledBy=this.id)})}}return t.\u0275fac=function(e){return new(e||t)(ea(oH,8),ea(kl),ea(pH))},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(t,e){2&t&&il("id",e.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t})(),mH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t})();let bH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[pH,hH],imports:[[Rf,Hp,Ny],Ny]}),t})();const yH=new oi("CdkAccordion");let vH=0,_H=(()=>{class t{constructor(t,e,n){this.accordion=t,this._changeDetectorRef=e,this._expansionDispatcher=n,this._openCloseAllSubscription=g.EMPTY,this.closed=new Rc,this.opened=new Rc,this.destroyed=new Rc,this.expandedChange=new Rc,this.id="cdk-accordion-child-"+vH++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=n.listen((t,e)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===e&&this.id!==t&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}get expanded(){return this._expanded}set expanded(t){t=md(t),this._expanded!==t&&(this._expanded=t,this.expandedChange.emit(t),t?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(t=>{this.disabled||(this.expanded=t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(yH,12),ea(tc),ea(Ap))},t.\u0275dir=se({type:t,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[_l([{provide:yH,useValue:void 0}])]}),t})(),wH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const xH=["body"];function SH(t,e){}const EH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],CH=["mat-expansion-panel-header","*","mat-action-row"];function OH(t,e){1&t&&oa(0,"span",2),2&t&&na("@indicatorRotate",va()._getExpandedState())}const TH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],kH=["mat-panel-title","mat-panel-description","*"],AH=new oi("MAT_ACCORDION"),PH="225ms cubic-bezier(0.4,0.0,0.2,1)",MH={indicatorRotate:Vg("indicatorRotate",[$g("collapsed, void",Hg({transform:"rotate(0deg)"})),$g("expanded",Hg({transform:"rotate(180deg)"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))]),bodyExpansion:Vg("bodyExpansion",[$g("collapsed, void",Hg({height:"0px",visibility:"hidden"})),$g("expanded",Hg({height:"*",visibility:"visible"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))])};let IH=(()=>{class t{constructor(t){this._template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","matExpansionPanelContent",""]]}),t})(),DH=0;const RH=new oi("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let NH=(()=>{class t extends _H{constructor(t,e,n,i,r,s,o){super(t,e,n),this._viewContainerRef=i,this._animationMode=s,this._hideToggle=!1,this.afterExpand=new Rc,this.afterCollapse=new Rc,this._inputChanges=new P,this._headerId="mat-expansion-panel-header-"+DH++,this._bodyAnimationDone=new P,this.accordion=t,this._document=r,this._bodyAnimationDone.pipe(Rd((t,e)=>t.fromState===e.fromState&&t.toState===e.toState)).subscribe(t=>{"void"!==t.fromState&&("expanded"===t.toState?this.afterExpand.emit():"collapsed"===t.toState&&this.afterCollapse.emit())}),o&&(this.hideToggle=o.hideToggle)}get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(t){this._hideToggle=md(t)}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(t){this._togglePosition=t}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this.opened.pipe(Kd(null),Hd(()=>this.expanded&&!this._portal),Gp(1)).subscribe(()=>{this._portal=new Lp(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(t){this._inputChanges.next(t)}ngOnDestroy(){super.ngOnDestroy(),this._bodyAnimationDone.complete(),this._inputChanges.complete()}_containsFocus(){if(this._body){const t=this._document.activeElement,e=this._body.nativeElement;return t===e||e.contains(t)}return!1}}return t.\u0275fac=function(e){return new(e||t)(ea(AH,12),ea(tc),ea(Ap),ea(hc),ea(Yu),ea(Ey,8),ea(RH,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,IH,5),2&t){let t;Wc(t=Yc())&&(e._lazyContent=t.first)}},viewQuery:function(t,e){if(1&t&&qc(xH,5),2&t){let t;Wc(t=Yc())&&(e._body=t.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(t,e){2&t&&ja("mat-expanded",e.expanded)("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-expansion-panel-spacing",e._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[_l([{provide:AH,useValue:void 0}]),jo,ye],ngContentSelectors:CH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,e){1&t&&(wa(EH),xa(0),ra(1,"div",0,1),fa("@bodyExpansion.done",function(t){return e._bodyAnimationDone.next(t)}),ra(3,"div",2),xa(4,1),Jo(5,SH,0,0,"ng-template",3),sa(),xa(6,2),sa()),2&t&&(ws(1),na("@bodyExpansion",e._getExpandedState())("id",e.id),Ko("aria-labelledby",e._headerId),ws(4),na("cdkPortalOutlet",e._portal))},directives:[Up],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[MH.bodyExpansion]},changeDetection:0}),t})();class LH{}const jH=By(LH);let FH=(()=>{class t extends jH{constructor(t,e,n,i,r,s,o){super(),this.panel=t,this._element=e,this._focusMonitor=n,this._changeDetectorRef=i,this._animationMode=s,this._parentChangeSubscription=g.EMPTY;const a=t.accordion?t.accordion._stateChanges.pipe(Hd(t=>!(!t.hideToggle&&!t.togglePosition))):ep;this.tabIndex=parseInt(o||"")||0,this._parentChangeSubscription=Q(t.opened,t.closed,a,t._inputChanges.pipe(Hd(t=>!!(t.hideToggle||t.disabled||t.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),t.closed.pipe(Hd(()=>t._containsFocus())).subscribe(()=>n.focusVia(e,"program")),r&&(this.expandedHeight=r.expandedHeight,this.collapsedHeight=r.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const t=this._isExpanded();return t&&this.expandedHeight?this.expandedHeight:!t&&this.collapsedHeight?this.collapsedHeight:null}_keydown(t){switch(t.keyCode){case 32:case 13:Qp(t)||(t.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(t))}}focus(t,e){t?this._focusMonitor.focusVia(this._element,t,e):this._element.nativeElement.focus(e)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(t=>{t&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}return t.\u0275fac=function(e){return new(e||t)(ea(NH,1),ea(kl),ea(Mg),ea(tc),ea(RH,8),ea(Ey,8),ni("tabindex"))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(t,e){1&t&&fa("click",function(){return e._toggle()})("keydown",function(t){return e._keydown(t)}),2&t&&(Ko("id",e.panel._headerId)("tabindex",e.tabIndex)("aria-controls",e._getPanelId())("aria-expanded",e._isExpanded())("aria-disabled",e.panel.disabled),La("height",e._getHeaderHeight()),ja("mat-expanded",e._isExpanded())("mat-expansion-toggle-indicator-after","after"===e._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===e._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[jo],ngContentSelectors:kH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(t,e){1&t&&(wa(TH),ra(0,"span",0),xa(1),xa(2,1),xa(3,2),sa(),Jo(4,OH,1,1,"span",1)),2&t&&(ws(4),na("ngIf",e._showToggle()))},directives:[_h],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[MH.indicatorRotate]},changeDetection:0}),t})(),BH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,wH,Hp]]}),t})();var VH=n(5478);Object.create(Error.prototype);const zH=["*"];var UH=(()=>(function(t){t.LineHighlight="line-highlight",t.LineNumbers="line-numbers"}(UH||(UH={})),UH))();class HH{}const $H=new oi("SECURITY_CONTEXT");let GH=(()=>{class t{constructor(t,e,n,i,r){this.platform=t,this.securityContext=e,this.http=n,this.sanitizer=r,this.initialMarkedOptions={renderer:new VH.Renderer},this.options=i}get options(){return this._options}set options(t){this._options=Object.assign(Object.assign({},this.initialMarkedOptions),t)}get renderer(){return this.options.renderer}set renderer(t){this.options.renderer=t}compile(t,e=!1,n=!1,i=this.options){const r=this.trimIndentation(t),s=e?this.decodeHtml(r):r,o=n?this.renderEmoji(s):s,a=VH.parse(o,i);return this.sanitizer.sanitize(this.securityContext,a)||""}getSource(t){if(!this.http)throw new Error("[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information");return this.http.get(t,{responseType:"text"}).pipe(D(e=>this.handleExtension(t,e)))}highlight(t){if(Lh(this.platform)&&"undefined"!=typeof Prism){t||(t=document);const e=t.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(e,t=>t.classList.add("language-none")),Prism.highlightAllUnder(t)}}renderKatex(t,e){if(!Lh(this.platform))return t;if("undefined"==typeof katex||void 0===katex.renderToString)throw new Error("[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information");return t.replace(/\$([^\s][^$]*?[^\s])\$/gm,(t,n)=>katex.renderToString(n,e))}decodeHtml(t){if(!Lh(this.platform))return t;const e=document.createElement("textarea");return e.innerHTML=t,e.value}handleExtension(t,e){const n=t?t.split("?")[0].split(".").splice(-1).join():"";return"md"!==n?"```"+n+"\n"+e+"\n```":e}renderEmoji(t){if(!Lh(this.platform))return t;if("undefined"==typeof joypixels||void 0===joypixels.shortnameToUnicode)throw new Error("[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information");return joypixels.shortnameToUnicode(t)}trimIndentation(t){if(!t)return"";let e;return t.split("\n").map(t=>{let n=e;return t.length>0&&(n=isNaN(n)?t.search(/\S|$/):Math.min(t.search(/\S|$/),n)),isNaN(e)&&(e=n),n?t.substring(n):t}).join("\n")}}return t.\u0275fac=function(e){return new(e||t)(Ci(ou),Ci($H),Ci(Bv,8),Ci(HH,8),Ci(hd))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),WH=(()=>{class t{constructor(t,e){this.element=t,this.markdownService=e,this.error=new Rc,this.load=new Rc,this.ready=new Rc,this._emoji=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1}get emoji(){return this._emoji}set emoji(t){this._emoji=this.coerceBooleanProperty(t)}get katex(){return this._katex}set katex(t){this._katex=this.coerceBooleanProperty(t)}get lineHighlight(){return this._lineHighlight}set lineHighlight(t){this._lineHighlight=this.coerceBooleanProperty(t)}get lineNumbers(){return this._lineNumbers}set lineNumbers(t){this._lineNumbers=this.coerceBooleanProperty(t)}ngOnChanges(){null==this.data?null==this.src||this.handleSrc():this.handleData()}ngAfterViewInit(){!this.data&&!this.src&&this.handleTransclusion()}render(t,e=!1){let n=this.markdownService.compile(t,e,this.emoji);n=this.katex?this.markdownService.renderKatex(n,this.katexOptions):n,this.element.nativeElement.innerHTML=n,this.handlePlugins(),this.markdownService.highlight(this.element.nativeElement),this.ready.emit()}coerceBooleanProperty(t){return null!=t&&"false"!=`${String(t)}`}handleData(){this.render(this.data)}handleSrc(){this.markdownService.getSource(this.src).subscribe(t=>{this.render(t),this.load.emit(t)},t=>this.error.emit(t))}handleTransclusion(){this.render(this.element.nativeElement.innerHTML,!0)}handlePlugins(){this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,UH.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}setPluginClass(t,e){const n=t.querySelectorAll("pre");for(let i=0;i{const r=e[t];if(r){const e=this.toLispCase(t);n.item(i).setAttribute(e,r.toString())}})}toLispCase(t){const e=t.match(/([A-Z])/g);if(!e)return t;let n=t.toString();for(let i=0,r=e.length;i{class t{static forRoot(e){return{ngModule:t,providers:[GH,e&&e.loader||[],e&&e.markedOptions||[],{provide:$H,useValue:e&&null!=e.sanitize?e.sanitize:yr.HTML}]}}static forChild(){return{ngModule:t}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function XH(t,e,n){return n?XH(t,e).pipe(D(t=>d(t)?n(...t):n(t))):new C(n=>{const i=(...t)=>n.next(1===t.length?t[0]:t);let r;try{r=t(i)}catch(s){return void n.error(s)}if(a(e))return()=>e(i,r)})}function YH(...t){return e=>{let n;return"function"==typeof t[t.length-1]&&(n=t.pop()),e.lift(new KH(t,n))}}class KH{constructor(t,e){this.observables=t,this.project=e}call(t,e){return e.subscribe(new QH(t,this.observables,this.project))}}class QH extends S_{constructor(t,e,n){super(t),this.observables=e,this.project=n,this.toRespond=[];const i=e.length;this.values=new Array(i);for(let r=0;r0){const t=i.indexOf(n);-1!==t&&i.splice(t,1)}}notifyComplete(){}_next(t){if(0===this.toRespond.length){const e=[t,...this.values];this.project?this._tryProject(e):this.destination.next(e)}}_tryProject(t){let e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}class ZH{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new JH(t,this.accumulator,this.seed,this.hasSeed))}}class JH extends v{constructor(t,e,n,i){super(t),this.accumulator=e,this._seed=n,this.hasSeed=i,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(i){this.destination.error(i)}this.seed=n,this.destination.next(n)}}class t${constructor(t){this.predicate=t}call(t,e){return e.subscribe(new e$(t,this.predicate))}}class e$ extends v{constructor(t,e){super(t),this.predicate=e,this.skipping=!0,this.index=0}_next(t){const e=this.destination;this.skipping&&this.tryCallPredicate(t),this.skipping||e.next(t)}tryCallPredicate(t){try{const e=this.predicate(t,this.index++);this.skipping=Boolean(e)}catch(e){this.destination.error(e)}}}const n$=["youtubeContainer"];let i$=(()=>{class t{constructor(t,e){this._ngZone=t,this._youtubeContainer=new P,this._destroyed=new P,this._playerChanges=new Uf(void 0),this._videoId=new Uf(void 0),this._height=new Uf(390),this._width=new Uf(640),this._startSeconds=new Uf(void 0),this._endSeconds=new Uf(void 0),this._suggestedQuality=new Uf(void 0),this._playerVars=new Uf(void 0),this.ready=this._getLazyEmitter("onReady"),this.stateChange=this._getLazyEmitter("onStateChange"),this.error=this._getLazyEmitter("onError"),this.apiChange=this._getLazyEmitter("onApiChange"),this.playbackQualityChange=this._getLazyEmitter("onPlaybackQualityChange"),this.playbackRateChange=this._getLazyEmitter("onPlaybackRateChange"),this._isBrowser=Lh(e)}get videoId(){return this._videoId.value}set videoId(t){this._videoId.next(t)}get height(){return this._height.value}set height(t){this._height.next(t||390)}get width(){return this._width.value}set width(t){this._width.next(t||640)}set startSeconds(t){this._startSeconds.next(t)}set endSeconds(t){this._endSeconds.next(t)}set suggestedQuality(t){this._suggestedQuality.next(t)}get playerVars(){return this._playerVars.value}set playerVars(t){this._playerVars.next(t)}ngOnInit(){if(!this._isBrowser)return;let t=wd(!0);if(!window.YT||!window.YT.Player){const e=new P;this._existingApiReadyCallback=window.onYouTubeIframeAPIReady,window.onYouTubeIframeAPIReady=()=>{this._existingApiReadyCallback&&this._existingApiReadyCallback(),this._ngZone.run(()=>e.next(!0))},t=e.pipe(Gp(1),Kd(!1))}const e=function(t,e,n,i,r,s,o){const a=T_([e,s]).pipe(YH(T_([i,r])),D(([t,e])=>{const[n,i]=t,[r,s]=e;return n?{videoId:n,playerVars:i,width:r,height:s}:void 0}));return T_([t,a,wd(o)]).pipe(function(t){return S(function(...t){let e=null;return"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0].slice()),n=>n.lift.call(U([n,...t]),new k_(e))}(t),function(t){return e=>e.lift(new t$(t))}(([t,e])=>!e),D(([t])=>t))}(n),function(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new ZH(t,e,n))}}(r$,void 0),Rd())}(this._youtubeContainer,this._videoId,t,this._width,this._height,this._playerVars,this._ngZone).pipe($f(t=>{this._playerChanges.next(t)}),W(t=>t?s$(t)?wd(t):new C(e=>{let n=!1,i=!1;const r=t=>{i=!0,n||(t.target.removeEventListener("onReady",r),e.next(t.target))};return t.addEventListener("onReady",r),()=>{n=!0,i||(t=>{s$(t)||t.destroy()})(t)}}).pipe(Gp(1),Kd(void 0)):wd(void 0)),Wd(this._destroyed),rt(new P));e.subscribe(t=>{this._player=t,t&&this._pendingPlayerState&&this._initializePlayer(t,this._pendingPlayerState),this._pendingPlayerState=void 0}),function(t,e,n){T_([t,e,n]).subscribe(([t,e,n])=>t&&t.setSize(e,n))}(e,this._width,this._height),function(t,e){T_([t,e]).subscribe(([t,e])=>t&&e&&t.setPlaybackQuality(e))}(e,this._suggestedQuality),function(t,e,n,i,r,s){const o=T_([n,i]).pipe(D(([t,e])=>({startSeconds:t,endSeconds:e}))),a=o.pipe(o$(t,t=>!!t&&!function(t){const e=t.getPlayerState();return e!==YT.PlayerState.UNSTARTED&&e!==YT.PlayerState.CUED}(t))),l=e.pipe(o$(t,(t,e)=>!!t&&t.videoId!==e));Q(t.pipe(o$(T_([e,o]),([t,e],n)=>!(!n||t==n.videoId&&!e.startSeconds&&!e.endSeconds))),l,a).pipe(YH(T_([t,e,o,r])),D(([t,e])=>e),Wd(s)).subscribe(([t,e,n,i])=>{!e||!t||(t.videoId=e,t.cueVideoById(Object.assign({videoId:e,suggestedQuality:i},n)))})}(e,this._videoId,this._startSeconds,this._endSeconds,this._suggestedQuality,this._destroyed),e.connect()}createEventsBoundInZone(){return{}}ngAfterViewInit(){this._youtubeContainer.next(this.youtubeContainer.nativeElement)}ngOnDestroy(){this._player&&(this._player.destroy(),window.onYouTubeIframeAPIReady=this._existingApiReadyCallback),this._playerChanges.complete(),this._videoId.complete(),this._height.complete(),this._width.complete(),this._startSeconds.complete(),this._endSeconds.complete(),this._suggestedQuality.complete(),this._youtubeContainer.complete(),this._playerVars.complete(),this._destroyed.next(),this._destroyed.complete()}playVideo(){this._player?this._player.playVideo():this._getPendingState().playbackState=YT.PlayerState.PLAYING}pauseVideo(){this._player?this._player.pauseVideo():this._getPendingState().playbackState=YT.PlayerState.PAUSED}stopVideo(){this._player?this._player.stopVideo():this._getPendingState().playbackState=YT.PlayerState.CUED}seekTo(t,e){this._player?this._player.seekTo(t,e):this._getPendingState().seek={seconds:t,allowSeekAhead:e}}mute(){this._player?this._player.mute():this._getPendingState().muted=!0}unMute(){this._player?this._player.unMute():this._getPendingState().muted=!1}isMuted(){return this._player?this._player.isMuted():!!this._pendingPlayerState&&!!this._pendingPlayerState.muted}setVolume(t){this._player?this._player.setVolume(t):this._getPendingState().volume=t}getVolume(){return this._player?this._player.getVolume():this._pendingPlayerState&&null!=this._pendingPlayerState.volume?this._pendingPlayerState.volume:0}setPlaybackRate(t){if(this._player)return this._player.setPlaybackRate(t);this._getPendingState().playbackRate=t}getPlaybackRate(){return this._player?this._player.getPlaybackRate():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackRate?this._pendingPlayerState.playbackRate:0}getAvailablePlaybackRates(){return this._player?this._player.getAvailablePlaybackRates():[]}getVideoLoadedFraction(){return this._player?this._player.getVideoLoadedFraction():0}getPlayerState(){if(this._isBrowser&&window.YT)return this._player?this._player.getPlayerState():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackState?this._pendingPlayerState.playbackState:YT.PlayerState.UNSTARTED}getCurrentTime(){return this._player?this._player.getCurrentTime():this._pendingPlayerState&&this._pendingPlayerState.seek?this._pendingPlayerState.seek.seconds:0}getPlaybackQuality(){return this._player?this._player.getPlaybackQuality():"default"}getAvailableQualityLevels(){return this._player?this._player.getAvailableQualityLevels():[]}getDuration(){return this._player?this._player.getDuration():0}getVideoUrl(){return this._player?this._player.getVideoUrl():""}getVideoEmbedCode(){return this._player?this._player.getVideoEmbedCode():""}_getPendingState(){return this._pendingPlayerState||(this._pendingPlayerState={}),this._pendingPlayerState}_initializePlayer(t,e){const{playbackState:n,playbackRate:i,volume:r,muted:s,seek:o}=e;switch(n){case YT.PlayerState.PLAYING:t.playVideo();break;case YT.PlayerState.PAUSED:t.pauseVideo();break;case YT.PlayerState.CUED:t.stopVideo()}null!=i&&t.setPlaybackRate(i),null!=r&&t.setVolume(r),null!=s&&(s?t.mute():t.unMute()),null!=o&&t.seekTo(o.seconds,o.allowSeekAhead)}_getLazyEmitter(t){return this._playerChanges.pipe(Qd(e=>e?XH(n=>{e.addEventListener(t,n)},n=>{try{e.removeEventListener&&e.removeEventListener(t,n)}catch(i){}}):wd()),t=>new C(e=>t.subscribe({next:t=>this._ngZone.run(()=>e.next(t)),error:t=>e.error(t),complete:()=>e.complete()})),Wd(this._destroyed))}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["youtube-player"]],viewQuery:function(t,e){if(1&t&&qc(n$,5),2&t){let t;Wc(t=Yc())&&(e.youtubeContainer=t.first)}},inputs:{videoId:"videoId",height:"height",width:"width",startSeconds:"startSeconds",endSeconds:"endSeconds",suggestedQuality:"suggestedQuality",playerVars:"playerVars",showBeforeIframeApiLoads:"showBeforeIframeApiLoads"},outputs:{ready:"ready",stateChange:"stateChange",error:"error",apiChange:"apiChange",playbackQualityChange:"playbackQualityChange",playbackRateChange:"playbackRateChange"},decls:2,vars:0,consts:[["youtubeContainer",""]],template:function(t,e){1&t&&oa(0,"div",null,0)},encapsulation:2,changeDetection:0}),t})();function r$(t,[e,n,i]){if(t&&n&&t.playerVars!==n.playerVars)t.destroy();else{if(!n)return void(t&&t.destroy());if(t)return t}const r=i.runOutsideAngular(()=>new YT.Player(e,n));return r.videoId=n.videoId,r.playerVars=n.playerVars,r}function s$(t){return"getPlayerStatus"in t}function o$(t,e){return S(YH(t),Hd(([t,n])=>e(n,t)),D(([t])=>t))}let a$=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function l$(t){return!0===t}function c$(t){return null==t}function u$(t){return!c$(t)}function h$(t){return Boolean(t)}function d$(t){return c$(t)?t:JSON.parse(JSON.stringify(t))}const p$=t=>{const e=t instanceof Date;if("object"!=typeof t||null===t||e)return t;Object.freeze(t);const n="function"==typeof t,i=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(e=>{i.call(t,e)&&(!n||"caller"!==e&&"callee"!==e&&"arguments"!==e)&&null!==t[e]&&("object"==typeof t[e]||"function"==typeof t[e])&&!Object.isFrozen(t[e])&&p$(t[e])}),t};function f$(t){return u$(t)&&"object"==typeof t&&function(t){return"[object Object]"===Object.prototype.toString.call(t)}(t)}const g$="NGXS_DATA_META",m$="NGXS_META",b$="NGXS_ARGUMENT_REGISTRY_META";let y$=(()=>{class t{constructor(t){this.sequence$=new Uf(0),this.subscription=null,t&&(this.subscription=t.subscribe(()=>this.updateSequence()))}get sequenceValue(){return this.sequence$.getValue()}ngOnDestroy(){var t;this.sequence$.next(0),null===(t=this.subscription)||void 0===t||t.unsubscribe()}updateSequence(){this.sequence$.next(this.sequenceValue+1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function v$(t){return t[g$]}let _$=(()=>{class t{constructor(e,n,i){t.store=e.get(pV),t.ngZone=e.get(xu),t.factory=n,t.context=i,t.computed=e.get(y$)}}return t.store=null,t.computed=null,t.context=null,t.factory=null,t.ngZone=null,t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(wB),Ci(_B))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class w${constructor(){w$.statesCachedMeta.clear()}static createStateContext(t){return _$.context.createStateContext(t)}static ensureMappedState(t){if(c$(_$.factory)||c$(t))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return(u$(t.name)?w$.statesCachedMeta.get(t.name):null)||w$.ensureMeta(t)}static getRepositoryByInstance(t){var e;const n=null!==(e=v$(w$.getStateClassByInstance(t)))&&void 0!==e?e:null;if(c$(n))throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return n}static getStateClassByInstance(t){return(null!=t?t:{}).constructor}static clearMetaByInstance(t){const e=w$.getRepositoryByInstance(t);e.stateMeta.actions={},e.operations={}}static createPayload(t,e){const n={},i=Array.from(t);for(let r=0;r0?n:null}static createAction(t,e,n){const i=w$.createPayload(e,n);return new(function(t){return class{constructor(t){t&&Object.keys(t).forEach(e=>{this[e]=t[e]})}static get type(){return t}}}(t.type))(i)}static ensureMeta(t){var e;const n=u$(t.name)?null===(e=_$.factory.states)||void 0===e?void 0:e.find(e=>e.name===t.name):null;return u$(n)&&u$(t.name)&&w$.statesCachedMeta.set(t.name,n),n}}w$.statesCachedMeta=new Map,w$.\u0275fac=function(t){return new(t||w$)},w$.\u0275prov=xt({token:w$,factory:w$.\u0275fac}),new lp(1);class x$ extends Error{constructor(t){super(`Child states can only be added to an object. Cannot convert ${u$(null==t?void 0:t.constructor)?t.constructor.name:t} to PlainObject`)}}function S$(t){var e;return null!==(e=t.NGXS_OPTIONS_META)&&void 0!==e?e:{name:""}}function E$(t){var e;const n=S$(t),i=null!==(e=n.children)&&void 0!==e?e:[],r=d$(void 0===n.defaults?{}:n.defaults);if(i.length){if(f$(r))return function(t,e){return e.reduce((t,e)=>{const n=S$(e);if(function(t){const e="string"==typeof t?t.trim():t;return[void 0,null,NaN,"",1/0].includes(e)}(n.name))throw new Error("State name not provided in class");return t[n.name.toString()]=E$(e),t},null!=t?t:{})}(r,i);throw new x$(r)}return r}function C$(t){var e;return null!==(e=t.__NGXS_COMPUTED_OPTION__)&&void 0!==e?e:null}function O$(){var t,e;return null!==(e=null===(t=null==_$?void 0:_$.computed)||void 0===t?void 0:t.sequenceValue)&&void 0!==e?e:0}function T$(t){let e=!1;return Dd(t)&&(e=!0),e}function k$(t){return t[b$]}class A$ extends Error{constructor(t,e){super(`An argument with the name '${t}' already exists in the method '${e}'`)}}class P${constructor(){this.payloadMap=new Map,this.argumentMap=new Map}getPayloadTypeByIndex(t){var e;return null!==(e=this.payloadMap.get(t))&&void 0!==e?e:null}getArgumentNameByIndex(t){var e;return null!==(e=this.argumentMap.get(t))&&void 0!==e?e:null}createPayloadType(t,e,n){this.checkDuplicateName(t,e),this.payloadMap.set(n,t),this.payloadMap.set(t,t)}createArgumentName(t,e,n){this.checkDuplicateName(t,e),this.argumentMap.set(n,t),this.argumentMap.set(t,t)}checkDuplicateName(t,e){if(h$(this.argumentMap.has(t))||h$(this.payloadMap.has(t)))throw new A$(t,e)}}function M$(t){return Nu()?p$(t):t}function I$(t){return{enumerable:!0,configurable:!0,get(){const e=v$(t),n=w$.ensureMappedState(e.stateMeta);return w$.createStateContext(n)}}}function D$(t){if(!t)throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return Object.assign(Object.assign({},t),{getState:()=>Nu()?p$(t.getState()):t.getState(),setState(e){t.setState(e)},patchState(e){t.patchState(e)}})}function R$(){return(t,e,n)=>{!function(t,e){if(!function(t,e){var n;let i=t,r=!1;if(f$(i))for(;null!==i;){if(l$(null==i?void 0:i.hasOwnProperty(e))){r=!!(null===(n=Object.getOwnPropertyDescriptor(i,e))||void 0===n?void 0:n.get);break}i=Object.getPrototypeOf(i)}return r}(t,null==e?void 0:e.toString()))throw new Error(`The method must be a getter for the computed decorator to work properly.\nExample: \n@Computed() get ${e.toString()}() { \n\t .. \n}`)}(t,e);const i=n.get;return n.get=function(...t){const e=function(t){return c$(C$(t))&&Object.defineProperties(t,{__NGXS_COMPUTED_OPTION__:{enumerable:!0,configurable:!0,value:new WeakMap}}),C$(t)}(this),n=null==e?void 0:e.get(i);if(l$(null==n?void 0:n.isObservable))return null==n?void 0:n.value;if(c$(n)||n.sequenceId!==O$()){e.delete(i);const n=i.apply(this,t);return e.set(i,{value:n,sequenceId:O$(),isObservable:T$(n)}),n}return n.value},n}}const N$={cancelUncompleted:!0,insideZone:!1};function L$(t=N$){return(e,n,i)=>{!function(t,e){if(t.hasOwnProperty("prototype"))throw new Error("Cannot support static methods with @DataAction()");if(void 0===e)throw new Error("@DataAction() can only decorate a method implementation")}(e,i);const r=i.value,s=n.toString();return i.value=function(...e){const n=this;let i=null;const o=w$.getRepositoryByInstance(n),a=o.operations;let l=a[s];const c=o.stateMeta,u=k$(r);if(c$(l)){const e=function(t){var e,n,i;return null!==(i=null===(n=null===(e=(t+"").replace(/[/][/].*$/gm,"").replace(/\s+/g,"").replace(/[/][*][^/*]*[*][/]/g,"").split("){",1))||void 0===e?void 0:e[0])||void 0===n?void 0:n.replace(/^[^(]*[(]/,"").replace(/=[^,]+/g,"").split(",").filter(Boolean))&&void 0!==i?i:[]}(r),n=function(t){const{statePath:e,argumentsNames:n,methodName:i,argumentRegistry:r}=t;let s="";for(let o=0;o{var s;return l$(t.insideZone)?null===(s=_$.ngZone)||void 0===s||s.run(()=>{i=r.apply(n,e)}):i=r.apply(n,e),Dd(i)?wd(null).pipe(D(()=>i)):i};const h=w$.createAction(l,e,u),d=_$.store.dispatch(h);return Dd(i)?function(t,e){return hv([t,e]).pipe(D(t=>t.pop()))}(d,i):i},i}}function j$(t){return(e,n,i)=>{const r=t.trim();if(!r)throw new Error("Payload name should be initialized");(function(t,e){const n=t[e];return c$(k$(n))&&Object.defineProperties(n,{[b$]:{enumerable:!0,configurable:!0,value:new P$}}),k$(n)})(e,n).createPayloadType(r,n,i)}}function F$(){return t=>{const e=function(t){if(function(t){return!h$(t)}(t.hasOwnProperty(m$))){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,m$,{value:e})}return function(t){var e;return null===(e=t)||void 0===e?void 0:e[m$]}(t)}(t);if(c$(e.name))throw new Error("@StateRepository should be add before decorator @State");!function(t,e){(function(t){var e;const n=null!==(e=v$(t))&&void 0!==e?e:null;return(c$(n)||(null==n?void 0:n.stateClass)!==t)&&function(t){Object.defineProperty(t,g$,{writable:!0,configurable:!0,enumerable:!0,value:{stateMeta:null,operations:{},stateClass:t}})}(t),v$(t)}(t)).stateMeta=e}(t,e),function(t,e,n){Object.defineProperties(t.prototype,{name:{enumerable:!0,configurable:!0,value:e.name},initialState:{enumerable:!0,configurable:!0,get:()=>d$(n)},context:I$(t)})}(t,e,E$(t)),function(t){var e,n;const i=v$(t),r=null!==(n=null===(e=null==i?void 0:i.stateMeta)||void 0===e?void 0:e.name)&&void 0!==n?n:null;if(u$(r)){const e=`__${r}__selector`;Object.defineProperties(t.prototype,{[e]:{writable:!0,enumerable:!1,configurable:!0},state$:{enumerable:!0,configurable:!0,get(){if(u$(this[e]))return this[e];if(c$(_$.store))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return this[e]=_$.store.select(t).pipe(D(t=>Nu()?p$(t):t),up({refCount:!0,bufferSize:1})),this[e]}}})}}(t)}}let B$=(()=>{class t{constructor(){this.browserStorageEvents$=new P,this.isInitialised=!1,this.isBootstrapped=!1,this._dirty=!0}get dirty(){return this._dirty}set dirty(t){this._dirty=t}ngxsOnChanges(t){var e;this.dirty&&this.isBootstrapped&&(this.dirty=!1,null===(e=this.ngxsDataDoCheck)||void 0===e||e.call(this))}ngxsOnInit(){this.isInitialised=!0}ngxsAfterBootstrap(){var t;this.isBootstrapped=!0,this.dirty&&(this.dirty=!1,null===(t=this.ngxsDataDoCheck)||void 0===t||t.call(this))}markAsDirtyAfterReset(){var t;this.dirty=!0,null===(t=this.ngxsDataAfterReset)||void 0===t||t.call(this)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),V$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})(),z$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})();const U$=new oi("ngx-google-analytics-settings",{factory:()=>({trackingCode:"",enableTracing:!1})}),H$=new oi("ngx-window",{providedIn:"root",factory:()=>function(t){return Lh(t)?window:null}(Oi(ou))}),$$=new oi("ngx-data-layer",{providedIn:"root",factory:()=>function(t){return t?t.dataLayer=t.dataLayer||[]:null}(Oi(H$))}),G$=new oi("ngx-gtag-fn",{providedIn:"root",factory:()=>function(t,e){return t?t.gtag=t.gtag||function(){e.push(arguments)}:null}(Oi(H$),Oi($$))});let W$=(()=>{class t{constructor(t,e,n){this.settings=t,this._document=e,this._gtag=n}get document(){return this._document}throw(t){(this.settings.enableTracing||Nu())&&console&&console.error&&console.error(t)}toKeyValue(t){return t.size>0?Array.from(t).reduce((t,[e,n])=>Object.defineProperty(t,e,{value:n,enumerable:!0}),{}):void 0}gtag(...t){try{this._gtag(...t.filter(t=>void 0!==t))}catch(e){this.throw(e)}}event(t,e,n,i,r){try{const s=new Map;e&&s.set("event_category",e),n&&s.set("event_label",n),i&&s.set("value",i),void 0!==r&&s.set("interaction",r);const o=this.toKeyValue(s);o?this.gtag("event",t,o):this.gtag("event",t)}catch(s){this.throw(s)}}pageView(t,e,n,i){try{const r=new Map([["page_path",t]]);e&&r.set("page_title",e),(n||this.document)&&r.set("page_location",n||this.document.location.href),i&&Object.entries(i).map(([t,e])=>r.set(t,e)),this.gtag("config",this.settings.trackingCode,this.toKeyValue(r))}catch(r){this.throw(r)}}appView(t,e,n,i,r){try{const s=new Map([["screen_name",t],["app_name",e]]);n&&s.set("app_id",n),i&&s.set("app_version",i),r&&s.set("app_installer_id",r),this.gtag("event","screen_view",this.toKeyValue(s))}catch(s){this.throw(s)}}set(...t){try{this._gtag("set",...t)}catch(e){this.throw(e)}}exception(t,e){try{const n=new Map;t&&n.set("description",t),e&&n.set("fatal",e),this.toKeyValue(n)?this.gtag("event","exception",this.toKeyValue(n)):this.gtag("event","exception")}catch(n){this.throw(n)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(U$),Ci(Yu),Ci(G$))},t.\u0275prov=xt({factory:function(){return new t(Ci(U$),Ci(Yu),Ci(G$))},token:t,providedIn:"root"}),t})();const q$={provide:tu,multi:!0,useFactory:function(t,e,n){return()=>lw(this,void 0,void 0,function*(){var i;if(!t.trackingCode)return void(Nu()||console.error("Empty tracking code for Google Analytics. Make sure to provide one when initializing NgxGoogleAnalyticsModule."));if(!e)return void(Nu()||console.error("Was not possible create or read gtag() fn. Make sure this module is running on a Browser w/ access to Window interface."));n||Nu()||console.error("Was not possible to access Document interface. Make sure this module is running on a Browser w/ access do Document interface."),t.uri=t.uri||`https://www.googletagmanager.com/gtag/js?id=${t.trackingCode}`,t.initCommands=null!==(i=null==t?void 0:t.initCommands)&&void 0!==i?i:[],t.initCommands.find(t=>"config"===t.command)||t.initCommands.unshift({command:"config",values:[t.trackingCode]}),t.initCommands.find(t=>"js"===t.command)||t.initCommands.unshift({command:"js",values:[new Date]});for(const n of t.initCommands)e(n.command,...n.values);const r=n.createElement("script");r.async=!0,r.src=t.uri,t.nonce&&r.setAttribute("nonce",t.nonce),n.getElementsByTagName("head")[0].appendChild(r)})},deps:[U$,G$,Yu]};new oi("ngx-google-analytics-routing-settings",{factory:()=>({})});let X$=(()=>{class t{static forRoot(e,n=[],i,r,s){return{ngModule:t,providers:[{provide:U$,useValue:{trackingCode:e,initCommands:n,uri:i,enableTracing:r,nonce:s}},q$]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[]]}),t})(),Y$=(()=>{class t{constructor(){this.consent="not-set",this.consentChange=new lp(1),this.consentChange.next(this.consent)}ngOnDestroy(){this.consentChange.complete()}setConsent(t){this.consent!==t&&(this.consent=t,this.consentChange.next(t))}unsetConsent(){this.setConsent("not-set")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),K$=(()=>{class t{constructor(t,e,{trackingCode:n}){this.window=e,this.subscriptions=new g,this.token=n,this.subscriptions.add(t.consentChange.subscribe(t=>this.toggleGoogleAnalytics("rescinded"===t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}toggleGoogleAnalytics(t){this.window&&(this.window[`ga-disable-${this.token}`]=t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(H$),Ci(U$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Q$=new oi("Key under which consent is stored",{providedIn:"root",factory:()=>"ALLOW_TELEMETRY"}),Z$=[Y$,K$,(()=>{class t{constructor(t,e){this.key=e,this.subscriptions=new g;try{this.storage=localStorage}catch(n){}t.setConsent(this.loadConsent()),this.subscriptions.add(t.consentChange.subscribe(t=>this.saveConsent(t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}loadConsent(){var t,e;const n=null===(e=null===(t=this.storage)||void 0===t?void 0:t.getItem)||void 0===e?void 0:e.call(t,this.key);if(null==n)return"not-set";const i=n.trim().toLowerCase();switch(i){case"given":case"rescinded":return i;default:return"not-set"}}saveConsent(t){var e,n;null===(n=null===(e=this.storage)||void 0===e?void 0:e.setItem)||void 0===n||n.call(e,this.key,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(Q$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})()];function J$(t){return Object.entries(t).reduce((t,[e,n])=>(null!=n&&(t[e]=`${n}`),t),{})}let tG=(()=>{class t{static forRoot(e){const{providers:n=[]}=X$.forRoot(e.gaToken,function(t){const{appName:e,projectName:n,developmentMode:i}=t;return[{command:"set",values:[J$({appName:e,projectName:n,developmentMode:i})]}]}(e));return{ngModule:t,providers:n}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[...Z$,{provide:tu,multi:!0,useFactory:()=>()=>{},deps:Z$}],imports:[[X$]]}),t})();function eG(t,e,n,i){n&&"function"!=typeof n&&(i=n);const r="function"==typeof n?n:void 0,s=new lp(t,e,i);return t=>rt(()=>s,r)(t)}const nG=(t,e)=>JSON.stringify(t)===JSON.stringify(e),iG=t=>t.map(t=>void 0!==t?JSON.parse(JSON.stringify(t)):t),rG={storageStrategy:class extends class{}{constructor(){super(...arguments),this.cachePairs=[]}add(t,e,n){this.cachePairs.push(t)}addMany(t){this.cachePairs=t}updateAtIndex(t,e){Object.assign(this.cachePairs[t],e)}update(t,e){Object.assign(this.cachePairs[t],e)}getAll(){return this.cachePairs}removeAtIndex(t){this.cachePairs.splice(t,1)}remove(t){this.cachePairs.splice(t,1)}removeAll(){this.cachePairs.length=0}},globalCacheKey:"CACHE_STORAGE",promiseImplementation:Promise},sG=new P;function oG(t={}){return function(e,n,i){const r=t.cacheKey||e.constructor.name+"#"+n,s=i.value;if(i&&i.value){let e=t.storageStrategy?new t.storageStrategy:new rG.storageStrategy;const n=[];t.cacheModifier&&t.cacheModifier.subscribe(t=>e.addMany(t(e.getAll(r,this)),r,this)),Q(sG.asObservable(),t.cacheBusterObserver?t.cacheBusterObserver:np()).subscribe(t=>{e.removeAll(r,this),n.length=0}),t.cacheResolver=t.cacheResolver||rG.cacheResolver||nG,t.cacheHasher=t.cacheHasher||rG.cacheHasher||iG,i.value=function(...i){const o=e.getAll(r,this);let a=t.cacheHasher(i),l=o.find(e=>t.cacheResolver(e.parameters,a));const c=n.find(e=>t.cacheResolver(e.parameters,a));if((t.maxAge||rG.maxAge)&&l&&l.created&&((new Date).getTime()-new Date(l.created).getTime()>(t.maxAge||rG.maxAge)?(e.remove?e.remove(o.indexOf(l),l,r,this):e.removeAtIndex(o.indexOf(l),r,this),l=null):(t.slidingExpiration||rG.slidingExpiration)&&(l.created=new Date,e.update?e.update(o.indexOf(l),l,r,this):e.updateAtIndex(o.indexOf(l),l,r,this))),l){const e=wd(l.response);return t.async?e.pipe(uU(0)):e}if(c)return c.response;{const l=s.call(this,...i).pipe(mv(()=>{const e=n.find(e=>t.cacheResolver(e.parameters,a));n.splice(n.indexOf(e),1)}),$f(n=>{(!t.shouldCacheDecider||t.shouldCacheDecider(n))&&((!(t.maxCacheCount||rG.maxCacheCount)||1===(t.maxCacheCount||rG.maxCacheCount)||(t.maxCacheCount||rG.maxCacheCount)&&(t.maxCacheCount||rG.maxCacheCount)this.isJsonMime(t));return void 0===e?t[0]:e}selectHeaderAccept(t){if(0===t.length)return;const e=t.find(t=>this.isJsonMime(t));return void 0===e?t[0]:e}isJsonMime(t){const e=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==t&&(e.test(t)||"application/json-patch+json"===t.toLowerCase())}lookupCredential(t){const e=this.credentials[t];return"function"==typeof e?e():e}}let uG=(()=>{class t{constructor(t,e,n){this.httpClient=t,this.basePath="/v1",this.defaultHeaders=new wv,this.configuration=new cG,n&&(this.configuration=n),"string"!=typeof this.configuration.basePath&&("string"!=typeof e&&(e=this.basePath),this.configuration.basePath=e),this.encoder=this.configuration.encoder||new aG}addToHttpParams(t,e,n){return this.addToHttpParamsRecursive(t,e,n)}addToHttpParamsRecursive(t,e,n){if(null==e)return t;if("object"==typeof e)if(Array.isArray(e))e.forEach(e=>t=this.addToHttpParamsRecursive(t,e,n));else if(e instanceof Date){if(null==n)throw Error("key may not be null if value is Date");t=t.append(n,e.toISOString().substr(0,10))}else Object.keys(e).forEach(i=>t=this.addToHttpParamsRecursive(t,e[i],null!=n?`${n}.${i}`:i));else{if(null==n)throw Error("key may not be null if value is not object or array");t=t.append(n,e)}return t}aggregateResults(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/aggregate-results`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}gtexRuiLocations(t,e="body",n=!1,i){const r=t.cache;let s=new Tv({encoder:this.encoder});null!=r&&(s=this.addToHttpParams(s,r,"cache"));let o=this.defaultHeaders,a=i&&i.httpHeaderAccept;void 0===a&&(a=this.configuration.selectHeaderAccept(["application/json"])),void 0!==a&&(o=o.set("Accept",a));let l=i&&i.context;void 0===l&&(l=new kv);let c="json";return a&&(c=a.startsWith("text")?"text":this.configuration.isJsonMime(a)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/gtex/rui_locations.jsonld`,{context:l,params:s,responseType:c,withCredentials:this.configuration.withCredentials,headers:o,observe:e,reportProgress:n})}hubmapRuiLocations(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/hubmap/rui_locations.jsonld`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}ontologyTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}ontologyTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}providerNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/provider-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}referenceOrganScene(t,e="body",n=!1,i){const r=t.organIri;if(null==r)throw new Error("Required parameter organIri was null or undefined when calling referenceOrganScene.");const s=t.age,o=t.ageRange,a=t.bmi,l=t.bmiRange,c=t.cache,u=t.ontologyTerms,h=t.cellTypeTerms,d=t.providers,p=t.sex,f=t.technologies,g=t.token;let m=new Tv({encoder:this.encoder});null!=s&&(m=this.addToHttpParams(m,s,"age")),null!=o&&(m=this.addToHttpParams(m,o,"age-range")),null!=a&&(m=this.addToHttpParams(m,a,"bmi")),null!=l&&(m=this.addToHttpParams(m,l,"bmi-range")),null!=c&&(m=this.addToHttpParams(m,c,"cache")),u&&u.forEach(t=>{m=this.addToHttpParams(m,t,"ontology-terms")}),h&&h.forEach(t=>{m=this.addToHttpParams(m,t,"cell-type-terms")}),null!=r&&(m=this.addToHttpParams(m,r,"organ-iri")),d&&d.forEach(t=>{m=this.addToHttpParams(m,t,"providers")}),null!=p&&(m=this.addToHttpParams(m,p,"sex")),f&&f.forEach(t=>{m=this.addToHttpParams(m,t,"technologies")}),null!=g&&(m=this.addToHttpParams(m,g,"token"));let b=this.defaultHeaders,y=i&&i.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(b=b.set("Accept",y));let v=i&&i.context;void 0===v&&(v=new kv);let _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organ-scene`,{context:v,params:m,responseType:_,withCredentials:this.configuration.withCredentials,headers:b,observe:e,reportProgress:n})}referenceOrgans(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organs`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}scene(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/scene`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}technologyNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/technology-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}tissueBlocks(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/tissue-blocks`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv),Ci(lG,8),Ci(cG,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Bv),Ci(lG,8),Ci(cG,8))},token:t,providedIn:"root"}),t})(),hG=(()=>{class t{constructor(t,e){if(t)throw new Error("CcfApiModule is already loaded. Import in your base AppModule only.");if(!e)throw new Error("You need to import the HttpClientModule in your AppModule! \nSee also https://github.com/angular/angular/issues/20575")}static forRoot(e){return{ngModule:t,providers:[{provide:cG,useFactory:e}]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(Bv,8))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[],imports:[[]]}),t})();function dG(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}let pG;function fG(){return pG||(pG=function(t,e){const n=function(){if(navigator.userAgentData||!/Safari\//.test(navigator.userAgent)||/Chrom(e|ium)\//.test(navigator.userAgent)||!indexedDB.databases)return Promise.resolve();let t;return new Promise(e=>{const n=()=>indexedDB.databases().finally(e);t=setInterval(n,100),n()}).finally(()=>clearInterval(t))}().then(()=>{const t=indexedDB.open("keyval-store");return t.onupgradeneeded=()=>t.result.createObjectStore(e),dG(t)});return(t,i)=>n.then(n=>i(n.transaction(e,t).objectStore(e)))}(0,"keyval")),pG}function gG(t,e=fG()){return e("readonly",e=>dG(e.get(t)))}var mG=n(71440),bG=n(70698),yG=n(7445),vG=n.n(yG),_G=n(23815),wG=n(31609);const xG=mG.Util.prefixes({ccf:"http://purl.org/ccf/latest/ccf.owl#",entity:"http://purl.org/ccf/latest/ccf-entity.owl#",fma:"http://purl.obolibrary.org/obo/FMA_",obo:"http://purl.obolibrary.org/obo/",uberon:"http://purl.obolibrary.org/obo/UBERON_",cl:"http://purl.obolibrary.org/obo/CL_",lmha:"http://purl.obolibrary.org/obo/LMHA_",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",dc:"http://purl.org/dc/elements/1.1/"},mG.DataFactory),SG={x:xG("rdf"),type:xG("rdf")("type")},EG={x:xG("rdfs"),label:xG("rdfs")("label"),comment:xG("rdfs")("comment"),isDefinedBy:xG("rdfs")("isDefinedBy"),seeAlso:xG("rdfs")("seeAlso")},CG={x:xG("entity"),id:xG("entity")("id"),label:EG.label,description:EG.comment,link:EG.seeAlso,sex:xG("entity")("sex"),age:xG("entity")("age"),bmi:xG("entity")("bmi"),Male:mG.DataFactory.literal("Male"),Female:mG.DataFactory.literal("Female"),consortiumName:xG("entity")("consortium_name"),providerName:xG("entity")("provider_name"),providerUUID:xG("entity")("provider_uuid"),donor:xG("entity")("has_donor"),sections:xG("entity")("has_tissue_section"),datasets:xG("entity")("has_dataset"),sampleType:xG("entity")("sample_type"),TissueBlock:mG.DataFactory.literal("Tissue Block"),TissueSection:mG.DataFactory.literal("Tissue Section"),NonStandard:mG.DataFactory.literal("Non-standard"),sectionCount:xG("entity")("section_count"),sectionSize:xG("entity")("section_size"),sectionUnits:xG("entity")("section_units"),sectionNumber:xG("entity")("section_number"),spatialEntity:xG("entity")("has_spatial_entity"),ontologyTerms:xG("entity")("has_ontology_term"),cellTypeTerms:xG("entity")("has_cell_type_term"),technology:xG("entity")("technology"),thumbnail:xG("entity")("has_thumbnail")},OG=xG("ccf"),TG={x:OG,ontologyNode:{label:OG("ccf_preferred_label"),parent:OG("ccf_part_of"),children:OG("ccf_part_of"),rui_rank:OG("ccf_rui_rank"),synonymLabels:mG.DataFactory.namedNode("http://www.geneontology.org/formats/oboInOwl#hasExactSynonym")},asctb:{part_of:OG("ccf_part_of"),ct_is_a:OG("ct_is_a"),located_in:OG("located_in"),characterizes:OG("characterizes")},spatial:{Female:OG("VHFemale"),Male:OG("VHMale"),BothSexes:OG("VHBothSexes"),FemaleOrgans:OG("VHFemaleOrgans"),MaleOrgans:OG("VHMaleOrgans")},SpatialObjectReference:OG("SpatialObjectReference"),SpatialEntity:OG("SpatialEntity"),SpatialPlacement:OG("SpatialPlacement"),spatialObjectReference:{file:OG("has_object_file"),file_format:OG("has_object_file_format"),file_subpath:OG("has_object_file_subpath")},extractionSet:{label:EG.label,rui_rank:OG("ccf_rui_rank")},spatialEntity:{label:EG.label,comment:EG.comment,creator:xG("dc")("creator"),creator_first_name:OG("creator_first_name"),creator_last_name:OG("creator_last_name"),creator_orcid:OG("creator_orcid"),creation_date:OG("creation_date"),updated_date:OG("updated_date"),ccf_annotations:OG("ccf_annotation"),representation_of:OG("ccf_representation_of"),reference_organ:OG("anatomical_structure_of"),extraction_set_for:OG("extraction_set_for"),extraction_set:OG("extraction_site_for"),sex:OG("has_sex"),side:OG("has_side"),rui_rank:OG("ccf_rui_rank"),slice_thickness:OG("ccf_slice_thickness"),slice_count:OG("ccf_slice_count"),x_dimension:OG("has_x_dimension"),y_dimension:OG("has_y_dimension"),z_dimension:OG("has_z_dimension"),dimension_units:OG("has_dimension_units"),object:OG("has_object_reference")},spatialPlacement:{source:OG("has_placement_source"),target:OG("has_placement_target"),placement_date:OG("has_placement_date"),x_scaling:OG("has_x_scaling"),y_scaling:OG("has_y_scaling"),z_scaling:OG("has_z_scaling"),scaling_units:OG("has_scaling_units"),x_rotation:OG("has_x_rotation"),y_rotation:OG("has_y_rotation"),z_rotation:OG("has_z_rotation"),w_rotation:OG("has_theta_rotation"),rotation_order:OG("has_rotation_order"),rotation_units:OG("has_rotation_units"),x_translation:OG("has_x_translation"),y_translation:OG("has_y_translation"),z_translation:OG("has_z_translation"),translation_units:OG("has_translation_units")}},kG={x:xG("uberon"),body:xG("uberon")("0013702")},AG={x:xG("cl"),cell:xG("cl")("0000000")},PG={x:xG("fma")},MG=(xG("lmha"),{body:kG.body,cell:AG.cell,respiratory_system:kG.x("0001004"),colon:kG.x("0001155"),left_lung:kG.x("0002168"),right_lung:kG.x("0002167"),left_bronchus:kG.x("0002178"),right_bronchus:kG.x("0002177"),kidney:kG.x("0002113"),ureter:kG.x("0000056"),eye:kG.x("0000970"),fallopian_tube:kG.x("0003889"),knee:kG.x("0001465"),ovary:kG.x("0000992"),trachea:kG.x("0003126"),aorta:kG.x("0000947"),blood:kG.x("0000178"),bone_marrow:kG.x("0002371"),male_reproductive_system:kG.x("0000079"),lymph_node:kG.x("0000029"),blood_vasculature:kG.x("0004537"),brain:kG.x("0000955"),eye_left:kG.x("0004548"),eye_right:PG.x("54449"),fallopian_tube_left:kG.x("0001303"),fallopian_tube_right:kG.x("0001302"),heart:kG.x("0000948"),kidney_left:kG.x("0004538"),kidney_right:kG.x("0004539"),knee_left:PG.x("24978"),knee_right:PG.x("24977"),large_intestine:kG.x("0000059"),liver:kG.x("0002107"),lungs:kG.x("0002048"),mesenteric_lymph_node:kG.x("0002509"),ovary_left:PG.x("7214"),ovary_right:PG.x("7213"),pancreas:kG.x("0001264"),pelvis:kG.x("0001270"),prostate_gland:kG.x("0002367"),skin:kG.x("0002097"),small_intestine:kG.x("0002108"),spleen:kG.x("0002106"),thymus:kG.x("0002370"),ureter_left:kG.x("0001223"),ureter_right:kG.x("0001222"),urinary_bladder:kG.x("0001255"),uterus:kG.x("0000995")});function IG(t){const e={};return Object.entries(t).forEach(([t,n])=>{e[n.id]=t}),e}const DG={spatialObjectReference:IG(TG.spatialObjectReference),spatialEntity:IG(TG.spatialEntity),spatialPlacement:IG(TG.spatialPlacement)};function RG(t,e,n,i){const r={"@id":e,"@type":n};return t.some(t=>{const e=i[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(r,e,n)}return!1},mG.DataFactory.namedNode(e),null,null,null),r}const NG=(0,_G.memoize)(function(t,e){return RG(t,e,"SpatialObjectReference",DG.spatialObjectReference)},(t,e)=>e),LG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"ExtractionSet",DG.spatialEntity);return n.extractionSites=(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set,e,null).map(e=>VG(t,e.id)),["rui_rank"]),n},(t,e)=>e),jG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set_for,e,null).map(e=>LG(t,e.id)),["rui_rank"])},(t,e)=>e),FG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.reference_organ,e,null).map(e=>VG(t,e.id)).filter(t=>t["@id"]!==e),["rui_rank"])},(t,e)=>e),BG=(0,_G.memoize)(function(t){const e=[];return t.forEach(n=>{n.subject.id===n.object.id&&e.push(VG(t,n.subject.id))},null,TG.spatialEntity.reference_organ,null,null),(0,_G.sortBy)(e,["rui_rank"])}),VG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialEntity",DG.spatialEntity);return n.object&&(n.object=NG(t,n.object)),n.ccf_annotations&&(n.ccf_annotations=t.getObjects(e,TG.spatialEntity.ccf_annotations,null).map(t=>t.id)),t.forSubjects(t=>n.entityId=t.id,CG.spatialEntity,e,null),n},(t,e)=>e),zG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialPlacement",DG.spatialPlacement);return n.source&&(n.source=VG(t,n.source)),n.target&&(n.target=VG(t,n.target)),n},(t,e)=>e),UG=(0,_G.memoize)(function(t,e){const n=t.getObjects(mG.DataFactory.namedNode(e),CG.spatialEntity,null);if(n.length>0)return VG(t,n[0].id)},(t,e)=>e);function HG(t,e){const n=e;let i;switch(n.translation_units){case"centimeter":i=.01;break;case"millimeter":i=.001;break;case"meter":default:i=1}const r=[n.x_translation,n.y_translation,n.z_translation].map(t=>t*i),s=[n.x_rotation,n.y_rotation,n.z_rotation].map(NS),o=[n.x_scaling,n.y_scaling,n.z_scaling];return t.translate(r).rotateXYZ(s).scale(o)}class $G{constructor(t){this.db=t,this.createGraph()}createGraph(){this.graph=new bG.DirectedGraph;const t=this.db.store;t.forSubjects(t=>{this.addNode(t.id,"SpatialObjectReference")},SG.type,TG.SpatialObjectReference,null),t.forSubjects(t=>{this.addNode(t.id,"SpatialEntity")},SG.type,TG.SpatialEntity,null);const e={};t.some(t=>(e[t.subject.id]=t.object.id,!1),null,TG.spatialPlacement.source,null,null),t.some(t=>{const n=e[t.subject.id];return n&&this.addEdge(t.subject.id,n,t.object.id,"SpatialPlacement"),!1},null,TG.spatialPlacement.target,null,null)}addNode(t,e){this.graph.mergeNode(t,{type:e})}addEdge(t,e,n,i){this.graph.mergeDirectedEdge(e,n,{type:i,id:t})}getTransformationMatrix(t,e){if(t===e)return new bT(bT.IDENTITY);if(!this.graph.hasNode(t)||!this.graph.hasNode(e))return;const n=this.db.store,i=new bT(bT.IDENTITY),r=vG()(this.graph,t,e);if(r&&r.length>0){r.reverse();let t="";for(const e of r){if(t){const r=this.graph.getEdgeAttribute(e,t,"id");HG(i,zG(n,r))}t=e}return i}}}class GG{constructor(t){this.db=t}getSpatialEntity(t){return VG(this.db.store,t)}getExtractionSets(t){return jG(this.db.store,t)}getExtractionSet(t){return LG(this.db.store,t)}getAnatomicalStructures(t){return FG(this.db.store,t)}getReferenceOrgans(){return BG(this.db.store)}getReferenceBody(t){let e;switch(null==t?void 0:t.sex){case"Male":e=TG.spatial.Male.id;break;case"Female":e=TG.spatial.Female.id;break;case"Both":default:e=TG.spatial.BothSexes.id}return this.getSpatialEntity(e)}getReferenceOrganSets(t){let e=this.getReferenceOrgans();switch(null==t?void 0:t.sex){case"Male":e=e.filter(t=>"Male"===t.sex);break;case"Female":e=e.filter(t=>"Female"===t.sex)}return(null==t?void 0:t.debug)&&(e=e.map(t=>[[t],this.getAnatomicalStructures(t["@id"])]).reduce((t,[e,n])=>t.concat(n.length>0?n:e),[])),e}getReferenceSceneNodes(t){const e=this.getReferenceBody(t),n=[];let i=[...this.getReferenceOrganSets(t).map(t=>{const i="http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of,r=this.getSceneNode(t,e,{color:[255,255,255,255],opacity:i?.5:.2,unpickable:!0,_lighting:"pbr",zoomBasedOpacity:!i});return i&&r?void n.push(r):r})];return n.length>0&&(i=[...n,...i]),(null==t?void 0:t.debug)&&(i=i.concat([this.getSceneNode(this.getSpatialEntity(TG.x("VHRightKidney").id),e,{color:[0,0,255,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHLeftKidney").id),e,{color:[255,0,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC1").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC2").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC3").id),e,{color:[0,255,0,127.5],wireframe:!0})])),i.filter(t=>void 0!==t)}getReferenceOrganScene(t,e){var n,i;const r=null!==(n=void 0!==(null==e?void 0:e.sex))&&void 0!==n&&n,s=this.getReferenceOrgans().filter(n=>n.representation_of===t&&(!r||n.sex===(null==e?void 0:e.sex)));if(s.length>0){const t=s[0],n=this.getSceneNode(t,t,{color:[255,255,255,255],opacity:"http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of?.5:.2,unpickable:!0,_lighting:"pbr"}),r=(null!==(i=this.db.getSpatialEntities(e))&&void 0!==i?i:[]).map(e=>this.getSceneNode(e,t,{color:[255,255,255,229.5]}));return[n].concat(r).filter(t=>void 0!==t)}return[]}getEntitySceneNodes(t){const e=this.getReferenceBody(t);return this.db.getSpatialEntities(t).map(t=>this.getSceneNode(t,e,{color:[255,255,255,229.5]})).filter(t=>void 0!==t)}getSceneNode(t,e,n={}){var i,r,s,o;const a=null===(r=null===(i=null==t?void 0:t.object)||void 0===i?void 0:i.file_format)||void 0===r?void 0:r.startsWith("model/gltf");let l=this.db.graph.getTransformationMatrix(a&&t.object?t.object["@id"]:t["@id"],e["@id"]);if(l){if(a)l=new bT(bT.IDENTITY).rotateX(NS(90)).multiplyLeft(l);else{let e;switch(t.dimension_units){case"centimeter":e=.01;break;case"millimeter":e=.001;break;case"meter":default:e=1}const n=[t.x_dimension,t.y_dimension,t.z_dimension].map(t=>t*e/2);l.scale(n)}return Object.assign({"@id":t["@id"],"@type":"SpatialSceneNode",entityId:t.entityId,ccf_annotations:t.ccf_annotations,representation_of:t.representation_of,reference_organ:t.reference_organ,scenegraph:a?null===(s=t.object)||void 0===s?void 0:s.file:void 0,scenegraphNode:a?null===(o=t.object)||void 0===o?void 0:o.file_subpath:void 0,transformMatrix:l,tooltip:t.label},n)}}getScene(t){return[...this.getReferenceSceneNodes(t),...this.getEntitySceneNodes(t)]}}const WG="https://entity.api.hubmapconsortium.org/entities/",qG=new Set(["VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0009-LK-102-7-AF_preIMS_registered_thumbnail.jpg","VAN0009-LK-102-7-IMS_NegMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-IMS_PosMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-PAS_registered_thumbnail.jpg","VAN0010-LK-155-40-AF_preIMS_registered_thumbnail.jpg","VAN0010-LK-155-40-IMS_NegMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-IMS_PosMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-PAS_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg","VAN0013-LK-202-96-AF_preIMS_registered_thumbnail.jpg","VAN0013-LK-202-96-IMS_NegMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-IMS_PosMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-PAS_registered_thumbnail.jpg","VAN0013-LK-202-97-AF_preMxIF_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc1_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc2_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc3_registered_thumbnail.jpg","VAN0014-LK-203-108-AF_preIMS_registered_thumbnail.jpg","VAN0014-LK-203-108-IMS_NegMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-IMS_PosMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-PAS_registered_thumbnail.jpg","VAN0016-LK-202-89-AF_preIMS_registered_thumbnail.jpg","VAN0016-LK-202-89-IMS_NegMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-IMS_PosMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-PAS_registered_thumbnail.jpg","VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg"]),XG={"HBM558.SRZG.629":"HBM558.SRZG.629_UFL0002-SP-3-4-1.jpg","HBM562.NTMH.548":"HBM562.NTMH.548_UFL0006-SP-1-2-1.jpg","HBM685.KHRQ.684":"HBM685.KHRQ.684_UFL0008-LY07-1-1.jpg","HBM278.SFQW.627":"HBM278.SFQW.627_UFL0008-LY09-1-1.jpg","HBM427.SMGB.866":"HBM427.SMGB.866_UFL0004-SP-1-4-1.jpg","HBM432.LLCF.677":"HBM432.LLCF.677_UFL0001-SP-2-5-1.jpg","HBM586.ZSVS.996":"HBM586.ZSVS.996_UFL0008-SP-1-1-1.jpg","HBM285.XMBT.542":"HBM285.XMBT.542_UFL0006-TH-1-3-1.jpg","HBM289.BWJW.663":"HBM289.BWJW.663_UFL0006-TH-1-2-1.jpg","HBM255.SRPR.985":"HBM255.SRPR.985_UFL0005-TH-2-2-1.jpg","HBM799.WXHD.535":"HBM799.WXHD.535_UFL0009-LY02-1-1.jpg","HBM294.RZFN.624":"HBM294.RZFN.624_UFL0005-TH-1-1-1.jpg","HBM383.TRQG.424":"HBM383.TRQG.424_UFL0006-SP-1-3-1.jpg","HBM647.MFQB.496":"HBM647.MFQB.496_UFL0001-SP-1-2-1.jpg","HBM237.GGPR.739":"HBM237.GGPR.739_UFL0006-LY01-1-1.jpg","HBM288.TPBD.654":"HBM288.TPBD.654_UFL0003-SP-2-2-1.jpg","HBM974.NDXT.675":"HBM974.NDXT.675_UFL0008-TH-2-2-1.jpg","HBM589.SLVV.423":"HBM589.SLVV.423_UFL0008-LY10-1-1.jpg","HBM794.RLFN.358":"HBM794.RLFN.358_UFL0006-LY03-1-1.jpg","HBM372.BQSR.778":"HBM372.BQSR.778_UFL0007-SP-1-1-1.jpg","HBM499.TKDW.458":"HBM499.TKDW.458_UFL0009-LY03-1-1.jpg","HBM342.PRQB.739":"HBM342.PRQB.739_UFL0003-LY06-1-1.jpg","HBM633.CLVN.674":"HBM633.CLVN.674_UFL0003-SP-3-6-1.jpg","HBM343.JQKM.578":"HBM343.JQKM.578_UFL0009-LY01-1-1.jpg","HBM987.XGTH.368":"HBM987.XGTH.368_UFL0002-SP-2-4-1.jpg","HBM964.CWCP.788":"HBM964.CWCP.788_UFL0006-LY02-2-1.jpg","HBM244.TJLK.223":"HBM244.TJLK.223_UFL0003-SP-1-4-1.jpg","HBM646.FSBQ.966":"HBM646.FSBQ.966_UFL0007-SP-2-2-1.jpg","HBM572.GXSB.234":"HBM572.GXSB.234_UFL0003-SP-3-2-1.jpg","HBM772.TKGJ.794":"HBM772.TKGJ.794_UFL0008-SP-2-1-1.jpg","HBM239.CBWR.263":"HBM239.CBWR.263_UFL0008-SP-1-2-1.jpg","HBM992.NRTT.383":"HBM992.NRTT.383_UFL0006-SP-1-1-1.jpg","HBM283.DQXD.546":"HBM283.DQXD.546_UFL0003-SP-1-2-1.jpg","HBM795.JHND.856":"HBM795.JHND.856_UFL0007-SP-1-2-1.jpg","HBM267.BZKT.867":"HBM267.BZKT.867_UFL0003-SP-2-6-1.jpg","HBM838.DLMJ.782":"HBM838.DLMJ.782_UFL0008-TH-1-1-1.jpg","HBM337.FSXL.564":"HBM337.FSXL.564_UFL0001-SP-3-8-2.jpg","HBM355.JDLK.244":"HBM355.JDLK.244_UFL0004-SP-2-4-1.jpg","HBM599.PSZG.737":"HBM599.PSZG.737_UFL0006-LY02-1-1.jpg"},YG={"03b3d854-ed44-11e8-8bce-0e368f3075e8":"TMC-UCSD","07a29e4c-ed43-11e8-b56a-0e8017bdda58":"TMC-Florida","308f5ffc-ed43-11e8-b56a-0e8017bdda58":"TMC-CalTech","5bd084c8-edc2-11e8-802f-0e368f3075e8":"HBM-TestingGroup","73bb26e4-ed43-11e8-8f19-0a7c1eab007a":"TMC-Vanderbilt","def5fd76-ed43-11e8-b56a-0e8017bdda58":"TMC-Stanford","5c106f29-ea2d-11e9-85e8-0efb3ba9a670":"RTI-General Electric"},KG=function(){const t={};return Object.entries(MG).forEach(([e,n])=>t[e]=n.id),t}(),QG={AO:[KG.body,KG.heart,KG.aorta],BL:[KG.body,KG.urinary_bladder],BD:[KG.body,KG.pelvis,KG.blood],BM:[KG.body,KG.pelvis,KG.bone_marrow],BR:[KG.body,KG.brain],LB:[KG.body,KG.respiratory_system,KG.lungs,KG.left_bronchus],RB:[KG.body,KG.respiratory_system,KG.lungs,KG.right_bronchus],LE:[KG.body,KG.eye,KG.eye_left],RE:[KG.body,KG.eye,KG.eye_right],LF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_left],RF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_right],HT:[KG.body,KG.heart],LK:[KG.body,KG.kidney,KG.kidney_left],RK:[KG.body,KG.kidney,KG.kidney_right],LI:[KG.body,KG.large_intestine,KG.colon],LV:[KG.body,KG.liver],LL:[KG.body,KG.respiratory_system,KG.lungs,KG.left_lung],LN:[KG.body,KG.knee,KG.knee_left],RL:[KG.body,KG.respiratory_system,KG.lungs,KG.right_lung],RN:[KG.body,KG.knee,KG.knee_right],LY:[KG.body,KG.lymph_node,KG.mesenteric_lymph_node],LO:[KG.body,KG.ovary,KG.ovary_left],RO:[KG.body,KG.ovary,KG.ovary_right],PA:[KG.body,KG.pancreas],PL:[KG.body],SI:[KG.body,KG.small_intestine],SK:[KG.body,KG.skin],SP:[KG.body,KG.spleen],ST:[KG.body],TH:[KG.body,KG.thymus],TR:[KG.body,KG.respiratory_system,KG.lungs,KG.trachea],UR:[KG.body,KG.ureter],UT:[KG.body,KG.uterus],OT:[KG.body]},ZG={"@base":"http://purl.org/ccf/latest/ccf-entity.owl#","@vocab":"http://purl.org/ccf/latest/ccf-entity.owl#",ccf:"http://purl.org/ccf/latest/ccf.owl#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",label:"rdfs:label",description:"rdfs:comment",link:{"@id":"rdfs:seeAlso","@type":"@id"},samples:{"@reverse":"has_donor"},sections:{"@id":"has_tissue_section","@type":"@id"},datasets:{"@id":"has_dataset","@type":"@id"},rui_location:{"@id":"has_spatial_entity","@type":"@id"},ontologyTerms:{"@id":"has_ontology_term","@type":"@id"},cellTypeTerms:{"@id":"has_cell_type_term","@type":"@id"},thumbnail:{"@id":"has_thumbnail"}};class JG{constructor(t,e="",n="",i){var r,s;if(this.data=t,this.bad=!1,this["@type"]="Sample",this.sample_type="Tissue Block","Sample"!==this.data.entity_type)return void(this.bad=!0);const o=this.data.descendants||[],a=(this.data.ancestors||[]).find(t=>"Donor"===t.entity_type);this.donor=this.getDonor(a,n);const l=this.getRuiLocation(t,this.donor);l?this.rui_location=l:this.bad=!0,YG[t.group_uuid]||(YG[t.group_uuid]=t.group_name);const c=new Date(t.last_modified_timestamp).toLocaleDateString(),u=YG[t.group_uuid]||t.group_name,h=t.created_by_user_displayname;this["@id"]=WG+t.uuid,this.label=`Registered ${c}, ${h}, ${u}`,this.link=`${n}browse/sample/${t.uuid}`;const d={},p=[];this.sections=p;const f=[];this.datasets=f;for(const v of o.filter(t=>"Sample"===t.entity_type)){const e=this.getSection(v,t,n);d[v.submission_id]=e,p.push(e),e.section_number=null!==(r=e.section_number)&&void 0!==r?r:p.length}for(const v of o)if("Dataset"===v.entity_type){const t=this.getDataset(v,e,n,i),r=(0,_G.get)(v,["ingest_metadata","metadata","tissue_id"]);d[r]?null===(s=d[r].datasets)||void 0===s||s.push(t):f.push(t)}const g=null!=l?l:{},m=`${g.x_dimension} x ${g.y_dimension} x ${g.z_dimension} ${g.dimension_units}`;this.section_count=g.slice_count||p.length;const b=parseFloat((g.slice_thickness||(g.z_dimension||0)/Math.max(this.section_count,1)).toFixed(1));this.section_size=b;const y=g.dimension_units||"millimeter";this.section_units=y,this.description=`${m}, ${b} ${y}, ${t.specimen_type}, ${this.section_count} Sections`,p.forEach((t,e)=>{t.description=`${g.x_dimension} x ${g.y_dimension} x ${b} ${y}, ${b} ${y}, ${t.description}`,t.section_number=e+1})}getSection(t,e,n){const i=new Date(t.last_modified_timestamp).toLocaleDateString();return{"@id":WG+t.uuid,"@type":"Sample",label:`Registered ${i}, ${t.created_by_user_displayname}, ${YG[t.group_uuid]||t.group_name}`,description:`${e.specimen_type}`,link:`${n}browse/sample/${t.uuid}`,sample_type:"Tissue Section",section_number:1,samples:[],datasets:[]}}getDataset(t,e="",n="",i){var r;const s=new Date(t.last_modified_timestamp).toLocaleDateString(),o=YG[t.group_uuid]||t.group_name,a=t.created_by_user_displayname,l=[...t.data_types,(0,_G.get)(t,["ingest_metadata","metadata","assay_type"],"")],c=l.join("|").toLowerCase();let u,h="assets/icons/ico-unknown.svg";return-1!==c.indexOf("10x")?(u="10x",h="assets/icons/ico-bulk-10x.svg"):-1!==c.indexOf("af")?(u="AF",h="assets/icons/ico-spatial-af.svg"):-1!==c.indexOf("codex")?(u="CODEX",h="assets/icons/ico-spatial-codex.svg"):-1!==c.indexOf("imc")?(u="IMC",h="assets/icons/ico-spatial-imc.svg"):-1!==c.indexOf("lc")&&-1===c.indexOf("af")?(u="LC",h="assets/icons/ico-bulk-lc.svg"):u=-1!==c.indexOf("maldi")?"MALDI":-1!==c.indexOf("pas")?"PAS":"OTHER",h=null!==(r=this.getDatasetThumbnail(t,e,i))&&void 0!==r?r:h,{"@id":WG+t.uuid,"@type":"Dataset",label:`Registered ${s}, ${a}, ${o}`,description:`Data/Assay Types: ${l.join(", ")}`,link:`${n}browse/dataset/${t.uuid}`,technology:u,thumbnail:h}}getDatasetThumbnail(t,e,n){if(t.thumbnail_file){const i=t.thumbnail_file;return`${e}/${i.file_uuid}/${i.filename}`+(n?`?token=${n}`:"")}if("73bb26e4-ed43-11e8-8f19-0a7c1eab007a"===t.group_uuid){const i=(0,_G.get)(t,"metadata.files",[]).filter(t=>/\.(ome\.tif|ome\.tiff)$/.test(t.rel_path)).filter(t=>!/(multilayer\.ome\.tif|_ac\.ome\.tif)/.test(t.rel_path)).filter(t=>qG.has(t.rel_path.split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg"))).map(i=>`${e}/${t.uuid}/${i.rel_path}`+(n?`?token=${n}`:""));if(i.length>0){const t=i[0].split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg");if(qG.has(t))return`assets/thumbnails/TMC-Vanderbilt/DR1/${t}`}}else if("07a29e4c-ed43-11e8-b56a-0e8017bdda58"===t.group_uuid){const e=XG[t.hubmap_id];if(e)return`assets/thumbnails/TMC-Florida/${e}`}}getDonor(t,e){const n=(t.description||"").toLowerCase();let i;n.includes("female")?i="Female":n.includes("male")&&(i="Male");const r=n.match(/age ([0-9]+)/);let s,o;r&&(s=(0,_G.toNumber)(r[1]));for(const u of(0,_G.get)(t,"metadata.organ_donor_data",[]))"Feminine gender"===u.preferred_term||"Female"===u.preferred_term?i="Female":"Masculine gender"===u.preferred_term||"Male"===u.preferred_term?i="Male":"Current chronological age"===u.preferred_term||"Age"===u.preferred_term?s=(0,_G.toNumber)(u.data_value):"Body mass index"===u.preferred_term&&(o=(0,_G.toNumber)(u.data_value));let a="";i&&s&&(a+=`${i}, Age ${s}`,o&&(a+=`, BMI ${o.toFixed(1)}`));const l=new Date(t.last_modified_timestamp).toLocaleDateString(),c=YG[t.group_uuid]||t.group_name;return{"@id":WG+t.uuid,"@type":"Donor",label:a,description:`Entered ${l}, ${t.created_by_user_displayname}, ${c}`,link:`${e}browse/donor/${t.uuid}`,age:s,sex:i,bmi:o,consortium_name:"HuBMAP",provider_name:c,provider_uuid:t.group_uuid,samples:[]}}getRuiLocation(t,e){var n;const i=(t.ancestors||[]).find(t=>"Sample"===t.entity_type&&"organ"===t.specimen_type),r=QG[null==i?void 0:i.organ]||[KG.body];let s,o=t.rui_location;if(o&&("string"==typeof o&&(o=JSON.parse(o)),o.alignment_id?console.log("Detected a deprecated rui_location",t.uuid):o["@id"]&&(s=o)),s){s.ccf_annotations=r.concat(s.ccf_annotations||[]);const t=null!==(n=(0,_G.get)(s,["placement","target"]))&&void 0!==n?n:"";t.startsWith("http://purl.org/ccf/latest/ccf.owl#VHSpleenCC")&&(0,_G.set)(s,["placement","target"],t.replace("#VHSpleenCC","Male"===e.sex?"#VHMSpleenCC":"#VHFSpleenCC")),("http://purl.org/ccf/latest/ccf.owl#VHLeftKidney"===t||"http://purl.org/ccf/latest/ccf.owl#VHRightKidney"===t)&&(0,_G.set)(s,["placement","target"],"Male"===e.sex?t.replace("#VH","#VHM")+"_Patch":t.replace("#VH","#VHF")+"_Patch")}return s}getTissueBlock(){return(0,_G.omit)(Object.assign({},this),["data","bad","donor"])}toJsonLd(){return Object.assign(Object.assign({},this.donor),{samples:[this.getTissueBlock()]})}}const tW=["uuid","entity_type","group_uuid","group_name","last_modified_timestamp","created_by_user_displayname","ancestors","descendants","rui_location","specimen_type"],eW={exists:{field:"rui_location"}};function nW(t,e,n){return JSON.stringify({version:!0,from:t,size:e,stored_fields:["*"],script_fields:{},docvalue_fields:[],query:null!=n?n:eW,_source:{includes:tW}})}function iW(t,e){return lw(this,void 0,void 0,function*(){try{const n=yield fetch(t,e);return n.ok?yield n.json():void 0}catch(n){return}})}function rW(t,e,n,i,r="",s=""){return lw(this,void 0,void 0,function*(){let o;if("static"===e?o=yield iW(t):"search-api"===e&&(o=yield function(t,e,n){return lw(this,void 0,void 0,function*(){const i=function(t){const e=new Headers;return e.append("Content-type","application/json"),t&&e.append("Authorization",`Bearer ${t}`),e}(e),r=nW(0,50,n),s=yield iW(t,{method:"POST",headers:i,body:r});if(!s)return;const o=s.hits.total.value;if(o<=50)return s;const a=[];for(let e=50;e!t))return;const c=l.map(t=>t.hits.hits);return Object.assign(Object.assign({},s),{hits:Object.assign(Object.assign({},s.hits),{hits:s.hits.hits.concat(...c)})})})}(t,i,n)),o)return function(t,e="",n="",i,r=!1){const s={},o=(0,_G.get)(t,"hits.hits",[]).map(t=>(0,_G.get)(t,"_source",{})).map(t=>new JG(t,e,n,i).toJsonLd());for(const l of o){const t=l["@id"];s[t]?s[t].samples.push(l.samples[0]):s[t]=l}const a=Object.values(s);return r&&(function(t){let e=[],n=0;for(const i of t.filter(t=>t.samples.length>1)){const t=i.samples;for(let i=0;it["@id"]===r)&&(t[i].deleteMe=!0,n++)}i.samples=t.filter(t=>!0!==t.deleteMe)}n>0&&console.log(`\u26a0 ${n} sections identified as blocks`)}(a),console.log(a.map(t=>Object.assign({"@context":ZG},t)))),{"@context":ZG,"@graph":a}}(o,r,s,i);console.warn(`Unable to load ${t} as HuBMAP Data`)})}function sW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.donor,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function oW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.spatialEntity,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function aW(t,e){return n=>t.has(n.id)?e.add(n.id):void 0}function lW(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.namedNode(r);t.forSubjects(aW(e,i),TG.spatialEntity.ccf_annotations,n,null)}return i}function cW(t,e){const n=function(t,e){const n=new Map;return e.some(e=>(t.has(e.subject.id)&&(n.has(e.object.id)?n.get(e.object.id).add(e.subject.id):n.set(e.object.id,new Set([e.subject.id]))),!1),null,CG.spatialEntity,null,null),n}(t,e),i=new Map;return e.some(t=>{if(n.has(t.subject.id)){const e=n.get(t.subject.id);if(i.has(t.object.id)){const n=i.get(t.object.id);e.forEach(t=>n.add(t))}else i.set(t.object.id,new Set(e))}return!1},null,TG.spatialEntity.ccf_annotations,null,null),i}function uW(t,e,n){const i=mG.DataFactory.namedNode(e),r={"@id":e,"@type":"OntologyTreeNode",id:e,parent:"",children:[],synonymLabels:[],label:""},s={[TG.ontologyNode.label.id]:"label",[n]:"parent",[TG.ontologyNode.synonymLabels.id]:"synonymLabels"};return t.some(t=>{const e=s[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;"synonymLabels"===e?r.synonymLabels.push(n):(0,_G.set)(r,e,n)}return!1},i,null,null,null),r.children=t.getSubjects(n,i,null).map(t=>t.id),r}const hW=(0,_G.memoize)(function(t,e,n,i){const r={root:e,nodes:{}},s=new Set;t.some(t=>(s.add(t.subject.id),s.add(t.predicate.id),!1),null,i,null,null);for(const o of s)r.nodes[o]=uW(t,o,i);if(!r.nodes[e]){const s=t.getSubjects(i,e,null).map(t=>t.id).sort((t,e)=>r.nodes[t].label.localeCompare(r.nodes[e].label));r.nodes[e]={"@id":e,"@type":"OntologyTreeNode",id:e,label:n,children:s,synonymLabels:[]}}return r},(t,e,n)=>e+n),dW={[CG.label.id]:"label",[CG.description.id]:"description",[CG.link.id]:"link"},pW=Object.assign(Object.assign({},dW),{[CG.providerName.id]:"providerName"}),fW=Object.assign(Object.assign({},dW),{[CG.technology.id]:"technology",[CG.thumbnail.id]:"thumbnail"}),gW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionNumber.id]:"sectionNumber",[CG.datasets.id]:"datasets"}),mW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionCount.id]:"sectionCount",[CG.sectionSize.id]:"sectionSize",[CG.sectionUnits.id]:"sectionUnits",[CG.donor.id]:"donor",[CG.spatialEntity.id]:"spatialEntityId",[CG.sections.id]:"sections",[CG.datasets.id]:"datasets"}),bW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Donor"};return t.some(t=>{const e=pW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e);function yW(t,e){const n={"@id":e,"@type":"Dataset"};return t.some(t=>{const e=fW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}const vW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Sample",sections:[],datasets:[]};return t.some(e=>{const i=mW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("sections"===i){const e=function(t,e){const n={"@id":e,"@type":"Sample",datasets:[]};return t.some(e=>{const i=gW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("datasets"===i){const e=yW(t,r);n[i].push(e)}else(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}(t,r);n[i].push(e)}else if("datasets"===i){const e=yW(t,r);n[i].push(e)}else"donor"===i?n[i]=bW(t,r):(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e),_W={ccfOwlUrl:"https://purl.org/ccf/latest/ccf.owl",ccfContextUrl:"https://purl.org/ccf/latest/ccf-context.jsonld",dataSources:[],hubmapDataService:"static",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"",hubmapAssetsUrl:"https://assets.hubmapconsortium.org"};class wW{constructor(t=_W){this.options=t,this.store=new mG.Store(void 0,{factory:mG.DataFactory}),this.graph=new $G(this),this.scene=new GG(this)}connect(t,e=!1){return lw(this,void 0,void 0,function*(){return t&&(this.options=t),this.initializing||(this.initializing=e?this.cachedConnect():this.doConnect()),yield this.initializing,this.store.size>0})}cachedConnect(){return lw(this,void 0,void 0,function*(){const t=(new Date).getTime(),e="ccf-database.last_modified",n="ccf-database",i=yield gG(e).catch(()=>{});let r;i&&t-new Date(+i).getTime()>36e5?yield function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.delete(t)),dG(e.transaction)))}([n,e]).catch(()=>{}):r=yield gG(n).catch(()=>{}),r?yield this.deserialize(r):(yield this.doConnect(),function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.put(t[1],t[0])),dG(e.transaction)))}([[n,this.serialize()],[e,""+t]]).catch(()=>{}))})}doConnect(){var t,e;return lw(this,void 0,void 0,function*(){const n=[],i=null!==(e=null===(t=this.options.dataSources)||void 0===t?void 0:t.concat())&&void 0!==e?e:[],r=this.options.ccfOwlUrl;if(r.startsWith("{"))this.store=(0,mG.deserializeN3Store)(r,mG.DataFactory);else if(r.endsWith(".n3store.json")){const t=yield fetch(r).then(t=>t.text()).catch(()=>console.log("Couldn't locate serialized store."));t&&(this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory))}else(null==r?void 0:r.length)>0&&i.push(r);this.options.hubmapDataUrl&&(this.options.hubmapDataUrl.endsWith("jsonld")?i.push(this.options.hubmapDataUrl):n.push(rW(this.options.hubmapDataUrl,this.options.hubmapDataService,this.options.hubmapQuery,this.options.hubmapToken,this.options.hubmapAssetsUrl,this.options.hubmapPortalUrl).then(t=>{if(t)return this.addDataSources([t])}))),n.push(this.addDataSources(i)),yield Promise.all(n),yield this.synchronize()})}addDataSources(t,e){return lw(this,void 0,void 0,function*(){const n=null!=e?e:this.store;return yield Promise.all(t.map(t=>lw(this,void 0,void 0,function*(){"string"==typeof t?t.endsWith("jsonld")?yield(0,mG.addJsonLdToStore)(t,n):t.endsWith("n3")?yield(0,mG.addN3ToStore)(t,n):t.endsWith("rdf")||t.endsWith("owl")||t.endsWith("xml")?yield(0,mG.addRdfXmlToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n)}))),this})}synchronize(){return lw(this,void 0,void 0,function*(){return yield new Promise(t=>{setTimeout(t,500)}),this.graph.createGraph(),this})}serialize(){return(0,mG.serializeN3Store)(this.store)}deserialize(t){return lw(this,void 0,void 0,function*(){this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory),this.graph=new $G(this),this.scene=new GG(this),yield new Promise(t=>{setTimeout(t,10)})})}getIds(t={}){return function(t,e){var n,i,r,s,o,a;let l=function(t){const e=new Set;return t.forSubjects(t=>e.add(t.id),CG.spatialEntity,null,null),e}(t);if(l.size>0&&(l=function(t,e,n=!0){const i=new Set;if(t.forSubjects(aW(e,i),CG.spatialEntity,null,null),!n){const t=new Set;return e.forEach(e=>i.has(e)?void 0:t.add(e)),t}return i}(t,l)),l.size>0&&("Male"===e.sex||"Female"===e.sex)){const n=e.sex;l=sW(t,l,e=>function(t,e,n){const i=new Set;return t.forSubjects(aW(e,i),CG.sex,CG[n],null),i}(t,e,n))}if(l.size>0&&(null===(n=e.tmc)||void 0===n?void 0:n.length)>0&&(l=sW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.providerName,n,null)}return i}(t,n,e.tmc))),l.size>0&&(null===(i=e.technologies)||void 0===i?void 0:i.length)>0&&(l=function(t,e,n){var i;const r=new Map,s=new Set,o=new Set;t.some(t=>(e.has(t.subject.id)&&o.add(t.object.id),!1),null,CG.sections,null,null),t.some(t=>{var n;return(e.has(t.subject.id)||o.has(t.subject.id))&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.datasets,null,null);const a=n(s),l=new Set;for(const c of a)for(const t of null!==(i=r.get(c))&&void 0!==i?i:[])l.add(t);return l}(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.technology,n,null)}return i}(t,n,e.technologies))),l.size>0&&(null===(r=e.ontologyTerms)||void 0===r?void 0:r.length)>0&&(l=oW(t,l,n=>lW(t,n,e.ontologyTerms))),l.size>0&&(null===(s=e.cellTypeTerms)||void 0===s?void 0:s.length)>0&&(l=oW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n)t.forObjects(t=>{i.add(t.id)},r,TG.asctb.located_in,null),r===MG.cell.id&&i.add(MG.body.id);return lW(t,e,[...i])}(t,n,e.cellTypeTerms))),l.size>0&&2===(null===(o=e.ageRange)||void 0===o?void 0:o.length)&&(0,_G.isFinite)(e.ageRange[0])&&(0,_G.isFinite)(e.ageRange[1])){const n=Math.max(...e.ageRange),i=Math.min(...e.ageRange);1===i&&110===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.age,null,null),r}(t,e,i,n)))}if(l.size>0&&2===(null===(a=e.bmiRange)||void 0===a?void 0:a.length)&&(0,_G.isFinite)(e.bmiRange[0])&&(0,_G.isFinite)(e.bmiRange[1])){const n=Math.max(...e.bmiRange),i=Math.min(...e.bmiRange);13===i&&83===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.bmi,null,null),r}(t,e,i,n)))}return l}(this.store,t)}get(t){return this.store.getQuads(mG.DataFactory.namedNode(t),null,null,null)}search(t={}){return[...this.getIds(t)].map(t=>this.get(t))}getSpatialEntities(t){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>UG(this.store,t))}getDatasetTechnologyNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.technology,null,null),Array.from(e).sort()}(this.store)})}getProviderNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.providerName,null,null),Array.from(e).sort()}(this.store)})}getTissueBlockResults(t){return lw(this,void 0,void 0,function*(){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>vW(this.store,t))})}getAggregateResults(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n=new Set;e.some(e=>(t.has(e.subject.id)&&n.add(e.object.id),!1),null,CG.donor,null,null);const i=new Set;e.some(t=>(n.has(t.subject.id)&&i.add(t.object.id),!1),null,CG.providerUUID,null,null);const r=new Set;e.forSubjects(e=>{t.has(e.id)&&r.add(e.id)},CG.spatialEntity,null,null);const s=new Set;e.some(t=>(r.has(t.subject.id)&&s.add(t.object.id),!1),null,CG.sections,null,null);const o=new Set;return e.some(t=>{const e=t.subject;return(r.has(e.id)||s.has(e.id))&&o.add(t.object.id),!1},null,CG.datasets,null,null),Object.entries({"Tissue Data Providers":i.size,Donors:n.size,"Tissue Blocks":r.size,"Tissue Sections":s.size,"Tissue Datasets":o.size}).map(([t,e])=>({label:t,count:e}))}(this.getIds(t),this.store)})}getOntologyTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n={};return cW(t,e).forEach((t,e)=>{n[e]=t.size}),n}(this.getIds(t),this.store)})}getCellTypeTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){var n,i;const r=cW(t,e),s=new Map;e.some(t=>{const e=t.object.id;if(r.has(e)){const n=t.subject.id,i=r.get(e);if(s.has(n)){const t=s.get(n);i.forEach(e=>t.add(e))}else s.set(n,new Set(i))}return!1},null,TG.asctb.located_in,null,null);const o={};return s.forEach((t,e)=>{o[e]=t.size}),o[MG.cell.id]=null!==(i=null===(n=r.get(MG.body.id))||void 0===n?void 0:n.size)&&void 0!==i?i:0,o}(this.getIds(t),this.store)})}getOntologyTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){const e=hW(t,MG.body.id,"body",TG.asctb.part_of.id);return e.nodes[MG.body.id].children=["http://purl.obolibrary.org/obo/UBERON_0000955","http://purl.obolibrary.org/obo/UBERON_0000029","http://purl.obolibrary.org/obo/UBERON_0000970","http://purl.obolibrary.org/obo/UBERON_0003889","http://purl.obolibrary.org/obo/UBERON_0000948","http://purl.obolibrary.org/obo/UBERON_0002113","http://purl.obolibrary.org/obo/UBERON_0001465","http://purl.obolibrary.org/obo/UBERON_0002107","http://purl.obolibrary.org/obo/UBERON_0002048","http://purl.obolibrary.org/obo/UBERON_0000992","http://purl.obolibrary.org/obo/UBERON_0001264","http://purl.obolibrary.org/obo/UBERON_0001270","http://purl.obolibrary.org/obo/UBERON_0002367","http://purl.obolibrary.org/obo/UBERON_0002097","http://purl.obolibrary.org/obo/UBERON_0002108","http://purl.obolibrary.org/obo/UBERON_0000059","http://purl.obolibrary.org/obo/UBERON_0002106","http://purl.obolibrary.org/obo/UBERON_0002370","http://purl.obolibrary.org/obo/UBERON_0000056","http://purl.obolibrary.org/obo/UBERON_0001255","http://purl.obolibrary.org/obo/UBERON_0000995","http://purl.obolibrary.org/obo/UBERON_0004537"].filter(t=>t in e.nodes),e}(this.store)})}getCellTypeTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){return hW(t,MG.cell.id,"cell",TG.asctb.ct_is_a.id)}(this.store)})}getReferenceOrgans(){return lw(this,void 0,void 0,function*(){return this.scene.getReferenceOrgans()})}getScene(t){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getScene(t)})}getReferenceOrganScene(t,e){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getReferenceOrganScene(t,e)})}}const xW=Symbol("Comlink.proxy"),SW=Symbol("Comlink.endpoint"),EW=Symbol("Comlink.releaseProxy"),CW=Symbol("Comlink.thrown"),OW=t=>"object"==typeof t&&null!==t||"function"==typeof t,TW=new Map([["proxy",{canHandle:t=>OW(t)&&t[xW],serialize(t){const{port1:e,port2:n}=new MessageChannel;return kW(t,e),[n,[n]]},deserialize:t=>(t.start(),PW(t))}],["throw",{canHandle:t=>OW(t)&&CW in t,serialize({value:t}){let e;return e=t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}}]]);function kW(t,e=self){e.addEventListener("message",function n(i){if(!i||!i.data)return;const{id:r,type:s,path:o}=Object.assign({path:[]},i.data),a=(i.data.argumentList||[]).map(jW);let l;try{const e=o.slice(0,-1).reduce((t,e)=>t[e],t),n=o.reduce((t,e)=>t[e],t);switch(s){case"GET":l=n;break;case"SET":e[o.slice(-1)[0]]=jW(i.data.value),l=!0;break;case"APPLY":l=n.apply(e,a);break;case"CONSTRUCT":l=function(t){return Object.assign(t,{[xW]:!0})}(new n(...a));break;case"ENDPOINT":{const{port1:e,port2:n}=new MessageChannel;kW(t,n),l=function(t,e){return NW.set(t,e),t}(e,[e])}break;case"RELEASE":l=void 0;break;default:return}}catch(c){l={value:c,[CW]:0}}Promise.resolve(l).catch(t=>({value:t,[CW]:0})).then(t=>{const[i,o]=LW(t);e.postMessage(Object.assign(Object.assign({},i),{id:r}),o),"RELEASE"===s&&(e.removeEventListener("message",n),AW(e))})}),e.start&&e.start()}function AW(t){(function(t){return"MessagePort"===t.constructor.name})(t)&&t.close()}function PW(t,e){return IW(t,[],e)}function MW(t){if(t)throw new Error("Proxy has been released and is not useable")}function IW(t,e=[],n=function(){}){let i=!1;const r=new Proxy(n,{get(n,s){if(MW(i),s===EW)return()=>FW(t,{type:"RELEASE",path:e.map(t=>t.toString())}).then(()=>{AW(t),i=!0});if("then"===s){if(0===e.length)return{then:()=>r};const n=FW(t,{type:"GET",path:e.map(t=>t.toString())}).then(jW);return n.then.bind(n)}return IW(t,[...e,s])},set(n,r,s){MW(i);const[o,a]=LW(s);return FW(t,{type:"SET",path:[...e,r].map(t=>t.toString()),value:o},a).then(jW)},apply(n,r,s){MW(i);const o=e[e.length-1];if(o===SW)return FW(t,{type:"ENDPOINT"}).then(jW);if("bind"===o)return IW(t,e.slice(0,-1));const[a,l]=RW(s);return FW(t,{type:"APPLY",path:e.map(t=>t.toString()),argumentList:a},l).then(jW)},construct(n,r){MW(i);const[s,o]=RW(r);return FW(t,{type:"CONSTRUCT",path:e.map(t=>t.toString()),argumentList:s},o).then(jW)}});return r}function DW(t){return Array.prototype.concat.apply([],t)}function RW(t){const e=t.map(LW);return[e.map(t=>t[0]),DW(e.map(t=>t[1]))]}const NW=new WeakMap;function LW(t){for(const[e,n]of TW)if(n.canHandle(t)){const[i,r]=n.serialize(t);return[{type:"HANDLER",name:e,value:i},r]}return[{type:"RAW",value:t},NW.get(t)||[]]}function jW(t){switch(t.type){case"HANDLER":return TW.get(t.name).deserialize(t.value);case"RAW":return t.value}}function FW(t,e,n){return new Promise(i=>{const r=new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-");t.addEventListener("message",function e(n){!n.data||!n.data.id||n.data.id!==r||(t.removeEventListener("message",e),i(n.data))}),t.start&&t.start(),t.postMessage(Object.assign({id:r},e),n)})}const BW=["bodyCanvas"];let VW=(()=>{class t{constructor(){this.clsName="ccf-body-ui",this.rotationChange=new Rc,this.nodeDrag=new Rc,this.nodeClick=new Rc,this.nodeHoverStart=new Rc,this.nodeHoverStop=new Rc,this.initialized=new Rc,this._interactive=!0,this._rotation=0,this._rotationX=0,this._zoom=9.5,this._target=[0,0,0],this._scene=[],this.subscriptions=[]}get scene(){return this._scene}set scene(t){var e;this._scene=t,null===(e=this.bodyUI)||void 0===e||e.setScene(t)}get rotation(){return this._rotation}set rotation(t){var e;this._rotation=t,null===(e=this.bodyUI)||void 0===e||e.setRotation(t)}get rotationX(){return this._rotationX}set rotationX(t){var e;this._rotationX=t,null===(e=this.bodyUI)||void 0===e||e.setRotationX(t)}get zoom(){return this._zoom}set zoom(t){var e;this._zoom=t,null===(e=this.bodyUI)||void 0===e||e.setZoom(t)}get target(){return this._target}set target(t){var e;this._target=t,null===(e=this.bodyUI)||void 0===e||e.setTarget(t)}get bounds(){return this._bounds}set bounds(t){this._bounds=t,this.zoomToBounds(t)}get camera(){return this._camera}set camera(t){this._camera=t}get interactive(){return this._interactive}set interactive(t){this._interactive=t,this.bodyUI&&this.recreateBodyUI()}ngAfterViewInit(){this.setupBodyUI()}zoomToBounds(t,e={x:48,y:48}){if(this.bodyCanvas){const{width:n,height:i}=this.bodyCanvas.nativeElement,r=window.devicePixelRatio,s=Math.min(Math.log2((n-e.x)/r/t.x),Math.log2((i-e.y)/r/t.y));this.zoom=s}}setupBodyUI(){var t;return lw(this,void 0,void 0,function*(){const e=this.bodyCanvas.nativeElement,n=new dB({id:"body-ui",canvas:e,zoom:this.zoom,target:[0,0,0],rotation:0,minRotationX:-75,maxRotationX:75,interactive:this.interactive,camera:this.camera});e.addEventListener("contextmenu",t=>t.preventDefault()),yield n.initialize(),this.bodyUI=n,window.bodyUI=n,(null===(t=this.scene)||void 0===t?void 0:t.length)>0&&this.bodyUI.setScene(this.scene),this.bounds&&this.zoomToBounds(this.bounds),this.subscriptions=[this.bodyUI.sceneRotation$.subscribe(t=>this.rotationChange.next(t)),this.bodyUI.nodeDrag$.subscribe(t=>this.nodeDrag.emit(t)),this.bodyUI.nodeClick$.subscribe(t=>this.nodeClick.emit(t)),this.bodyUI.nodeHoverStart$.subscribe(t=>this.nodeHoverStart.emit(t)),this.bodyUI.nodeHoverStop$.subscribe(t=>this.nodeHoverStop.emit(t))],this.initialized.emit()})}recreateBodyUI(){this.clearSubscriptions(),this.bodyUI.finalize(),this.setupBodyUI()}clearSubscriptions(){this.subscriptions.forEach(t=>t.unsubscribe()),this.subscriptions=[]}ngOnDestroy(){this.clearSubscriptions()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-body-ui"]],viewQuery:function(t,e){if(1&t&&qc(BW,5,kl),2&t){let t;Wc(t=Yc())&&(e.bodyCanvas=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{scene:"scene",rotation:"rotation",rotationX:"rotationX",zoom:"zoom",target:"target",bounds:"bounds",camera:"camera",interactive:"interactive"},outputs:{rotationChange:"rotationChange",nodeDrag:"nodeDrag",nodeClick:"nodeClick",nodeHoverStart:"nodeHoverStart",nodeHoverStop:"nodeHoverStop",initialized:"initialized"},decls:2,vars:0,consts:[[1,"body-ui"],["bodyCanvas",""]],template:function(t,e){1&t&&oa(0,"canvas",0,1)},styles:["[_nghost-%COMP%]{height:100%;display:block}[_nghost-%COMP%] .body-ui[_ngcontent-%COMP%]{position:relative!important;background-color:#000;border-radius:.5rem}"]}),t})(),zW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();new oi("Maximum number of autocomplete options displayed",{providedIn:"root",factory:()=>10});const UW=["carouselContainer"],HW=["itemlist"],$W=["itemcontainer"];function GW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",9),fa("touchstart",function(){return $e(t),va().scroll("left")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("left")})("mousedown",function(){return $e(t),va().scroll("left")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_left"),sa()}2&t&&ja("disabled",va().onLeft)}function WW(t,e){if(1&t&&(ra(0,"div",15),Za(1),sa()),2&t){const t=va().$implicit,e=va();ws(1),Ja(e.occurenceData[t.id]||0)}}function qW(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("click",function(){const e=$e(t).$implicit;return va().selectOrgan(e)}),oa(1,"mat-icon",11),ra(2,"div",12),ra(3,"div",13),Za(4),sa(),Jo(5,WW,2,1,"div",14),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ja("disabled",t.disabled)("selected",n.isSelected(t)),ws(1),Sa("svgIcon",t.src),ws(3),Ja(t.name),ws(1),na("ngIf",void 0!==t.numResults)}}function XW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",16),fa("touchstart",function(){return $e(t),va().scroll("right")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("right")})("mousedown",function(){return $e(t),va().scroll("right")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_right"),sa()}2&t&&ja("disabled",va().onRight)}const YW=[{src:"app:skin",organ:"Skin",name:"Skin",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002097"},{src:"app:brain",organ:"Brain",name:"Brain",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000955"},{disabled:!0,src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000029"},{src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002509"},{disabled:!0,src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000970"},{src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004548"},{src:"app:eye",organ:"Eye",name:"Eye, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_54449"},{disabled:!0,src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0003889"},{src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001303"},{src:"app:fallopian-tube-right",organ:"Fallopian Tube",name:"Fallopian Tube, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001302"},{src:"app:heart",organ:"Heart",name:"Heart",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000948"},{disabled:!0,src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002113"},{src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004538"},{src:"app:kidney-right",organ:"Kidney",name:"Kidney, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004539"},{disabled:!0,src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001465"},{src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24978"},{src:"app:knee",organ:"Knee",name:"Knee, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24977"},{src:"app:liver",organ:"Liver",name:"Liver",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002107"},{disabled:!0,src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002048"},{src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001004"},{disabled:!0,src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000992"},{src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7214"},{src:"app:ovary-right",organ:"Ovary",name:"Ovary, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7213"},{src:"app:pancreas",organ:"Pancreas",name:"Pancreas",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001264"},{src:"app:pelvis-f",organ:"Pelvis",name:"Pelvis",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001270"},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0002367",disabled:!0},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0000079"},{src:"app:small-intestine",organ:"Small Intestine",name:"Small Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002108"},{src:"app:large-intestine",organ:"Large Intestine",name:"Large Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000059"},{src:"app:spleen",organ:"Spleen",name:"Spleen",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002106"},{src:"app:thymus",organ:"Thymus",name:"Thymus",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002370"},{disabled:!0,src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000056"},{src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001223"},{src:"app:ureter-right",organ:"Ureter",name:"Ureter, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001222"},{src:"app:bladder",organ:"Urinary Bladder",name:"Urinary Bladder",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001255"},{src:"app:uterus",organ:"Uterus",name:"Uterus",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000995"},{src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004537"},{disabled:!0,src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002049"}].sort((t,e)=>t.name.localeCompare(e.name)),KW=YW.filter(t=>!0!==t.disabled);let QW=(()=>{class t{constructor(){this.clsName="ccf-organ-selector",this.multiselect=!1,this.displayErrors=!1,this.organList=KW,this.selectedOrgans=[],this.expanded=!1,this.organsChanged=new Rc,this.onLeft=!0,this.onRight=!1,this.step=72}set occurenceData(t){this._occurenceData=t}get occurenceData(){return this._occurenceData}ngAfterViewInit(){const{carouselContainer:t}=this;this.sensor=new HU.ResizeSensor(t.nativeElement,()=>{this.set()})}ngOnChanges(t){"organList"in t&&this.set()}ngOnDestroy(){this.sensor.detach()}get error(){return!(!this.displayErrors||0===this.selectedOrgans.length)}shift(t){const{itemList:e}=this;let n=parseInt(e.nativeElement.style.left,10)||0;this.onLeft&&"left"===t||this.onRight&&"right"===t||(n="right"===t?n-this.step:n+this.step,e.nativeElement.style.left=n+"px",this.setLeftRight(n))}scroll(t){this.timeoutHandler=setInterval(()=>{this.shift(t)},200)}stopScroll(){this.timeoutHandler&&(clearInterval(this.timeoutHandler),this.timeoutHandler=void 0)}selectOrgan(t){this.selectedOrgans=this.multiselect?this.selectedOrgans.includes(t)?this.selectedOrgans.filter(e=>t!==e):this.selectedOrgans.concat([t]):[t],this.organsChanged.emit(this.selectedOrgans)}isSelected(t){return!!this.selectedOrgans.includes(t)}set(){const{itemList:t,itemContainer:e,carouselContainer:n}=this,i=parseInt(t.nativeElement.style.left,10)||0;if(t.nativeElement.offsetWidth>=this.organList.length*this.step)t.nativeElement.style.left="0px",this.onLeft=!0,this.onRight=!0;else{this.setLeftRight(i);const t=this.step*Math.floor(n.nativeElement.offsetWidth/this.step)-64;e.nativeElement.style.width=`${t}px`}}setWidth(){const{itemContainer:t,carouselContainer:e}=this,n=this.step*Math.floor(e.nativeElement.offsetWidth/this.step)-64;t.nativeElement.style.width=`${n}px`}setLeftRight(t){const{itemContainer:e}=this;this.onLeft=0===t,this.onRight=t<=e.nativeElement.offsetWidth-this.organList.length*this.step}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-organ-selector"]],viewQuery:function(t,e){if(1&t&&(qc(UW,7),qc(HW,7),qc($W,7)),2&t){let t;Wc(t=Yc())&&(e.carouselContainer=t.first),Wc(t=Yc())&&(e.itemList=t.first),Wc(t=Yc())&&(e.itemContainer=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{multiselect:"multiselect",displayErrors:"displayErrors",organList:"organList",selectedOrgans:"selectedOrgans",expanded:"expanded",occurenceData:"occurenceData"},outputs:{organsChanged:"organsChanged"},features:[ye],decls:9,vars:8,consts:[["matTooltip","Select the organ your tissue block is from.",1,"container",3,"matTooltipDisabled"],["carouselContainer",""],["class","carousel-left-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-item-container"],["itemcontainer",""],[1,"carousel-item-list"],["itemlist",""],["class","carousel-item",3,"disabled","selected","click",4,"ngFor","ngForOf"],["class","carousel-right-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-left-icon",3,"touchstart","touchend","click","mousedown","mouseup"],[1,"carousel-item",3,"click"],[1,"carousel-icon",3,"svgIcon"],[1,"carousel-text-container"],[1,"carousel-text"],["class","num-results",4,"ngIf"],[1,"num-results"],[1,"carousel-right-icon",3,"touchstart","touchend","click","mousedown","mouseup"]],template:function(t,e){1&t&&(ra(0,"div",0,1),Jo(2,GW,2,2,"mat-icon",2),ra(3,"div",3,4),ra(5,"div",5,6),Jo(7,qW,6,7,"div",7),sa(),sa(),Jo(8,XW,2,2,"mat-icon",8),sa()),2&t&&(ja("expanded",e.expanded)("error",e.error),na("matTooltipDisabled",e.multiselect),ws(2),na("ngIf",!e.expanded),ws(5),na("ngForOf",e.organList),ws(1),na("ngIf",!e.expanded))},directives:[ew,_h,yh,p_],styles:["[_nghost-%COMP%] .container[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;justify-content:space-between}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{font-size:2rem;transform:scaleY(1.2);height:2rem;width:2rem;cursor:pointer}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon.disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon.disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%]{text-align:right}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{text-align:left}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{overflow:hidden;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{position:relative;left:0rem;display:flex;transition:all .2s linear;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer;padding:.25rem .5rem;height:5rem;transition:.6s}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-icon[_ngcontent-%COMP%]{text-align:center;width:3.5rem;height:2rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:4rem;justify-content:center;text-align:center}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .carousel-text[_ngcontent-%COMP%]{display:flex;justify-content:center;font-size:.625rem;max-width:3.5rem;line-height:.8rem;min-height:1.6rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{font-size:.6875rem;line-height:1.5}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item.disabled[_ngcontent-%COMP%]{pointer-events:none}[_nghost-%COMP%] .error-message[_ngcontent-%COMP%]{color:red;height:1rem}[_nghost-%COMP%] .error-message.hidden[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{width:100%!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{flex-wrap:wrap;overflow:auto;left:0rem!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{height:5rem}"]}),t})(),ZW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,rw]]}),t})(),JW=(()=>{class t{constructor(){this.clsName="ccf-opacity-slider",this.opacity=20,this.visible=!0,this.opacityChange=new Rc,this.visibilityToggle=new Rc,this.opacityReset=new Rc}ngOnInit(){this.prevOpacity=this.visible?0:20}reset(){this.prevOpacity=20}changeOpacity(t){this.opacity=parseInt(t,10),this.opacityChange.emit(this.opacity)}toggleVisibility(){const t=this.opacity;this.opacity=this.prevOpacity,this.prevOpacity=t,this.visibilityToggle.emit(),this.opacityChange.emit(this.opacity)}resetOpacity(){this.prevOpacity=0,this.opacityReset.emit()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-opacity-slider"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{opacity:"opacity",visible:"visible"},outputs:{opacityChange:"opacityChange",visibilityToggle:"visibilityToggle",opacityReset:"opacityReset"},decls:10,vars:17,consts:[[1,"slider-box"],[1,"slider-and-label"],[1,"slider",3,"step","min","max","value","input"],[1,"opacity-value"],[1,"icons"],["matRipple","","svgIcon","app:visibility_off",1,"visibility","icon","invisible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","","svgIcon","app:visibility_on",1,"visibility","icon","visible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","",1,"icon","reset",3,"matRippleCentered","matRippleUnbounded","click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-slider",2),fa("input",function(t){return e.changeOpacity(t.value)}),sa(),ra(3,"span",3),Za(4),sa(),sa(),ra(5,"div",4),ra(6,"mat-icon",5),fa("click",function(){return e.toggleVisibility()}),sa(),ra(7,"mat-icon",6),fa("click",function(){return e.toggleVisibility()}),sa(),ra(8,"mat-icon",7),fa("click",function(){return e.resetOpacity()}),Za(9,"refresh"),sa(),sa(),sa()),2&t&&(ws(2),ja("disabled",!e.visible),na("step",1)("min",0)("max",100)("value",e.opacity),ws(2),tl("",e.opacity,"%"),ws(2),ja("hidden",e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),ja("hidden",!e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),na("matRippleCentered",!0)("matRippleUnbounded",!0))},directives:[YU,p_,Yy],styles:["[_nghost-%COMP%]{height:2.25rem;display:flex;align-items:center;justify-content:space-between;border-radius:.1875rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%]{width:60%;display:flex;align-items:center;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .mat-slider-wrapper{top:1.125rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:not-allowed}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .opacity-value[_ngcontent-%COMP%]{width:1.5rem;margin-left:.5rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%]{display:flex;cursor:pointer!important}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .reset[_ngcontent-%COMP%]{margin-right:1rem;padding:.25rem;cursor:pointer;transition:.6s;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility[_ngcontent-%COMP%]{transition:.6s;cursor:pointer;padding:.25rem;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})(),tq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,JU,Ky]]}),t})();function eq(t,e){if(1&t&&(ra(0,"div",15),oa(1,"youtube-player",16),sa()),2&t){const t=va(3);ws(1),Sa("videoId",t.videoID)}}function nq(t,e){if(1&t&&(ra(0,"mat-expansion-panel",10),ra(1,"mat-expansion-panel-header"),ra(2,"h2",11),Za(3),sa(),sa(),ra(4,"div",12),oa(5,"markdown",13),Jo(6,eq,2,1,"div",14),sa(),sa()),2&t){const t=va(),e=t.index,n=t.$implicit;na("expanded",0===e),ws(3),Ja(n.title),ws(2),ja("first",0===e),na("data",n.content),ws(1),na("ngIf",0===e)}}function iq(t,e){if(1&t&&(ra(0,"div",8),Jo(1,nq,7,6,"mat-expansion-panel",9),sa()),2&t){const t=e.$implicit;ws(1),na("ngIf",t)}}let rq=(()=>{class t{constructor(t,e){this.dialogRef=t,this.data=e,this.documentationContents=e.content||[],this.infoTitle=e.title||"",this.videoID=e.videoID}ngOnInit(){const t=document.createElement("script");t.src="https://www.youtube.com/iframe_api",document.body.appendChild(t)}close(){var t;null===(t=document.getElementsByClassName("modal-animated")[0])||void 0===t||t.classList.add("modal-animate-fade-out"),setTimeout(()=>{this.dialogRef.close()},250)}}return t.\u0275fac=function(e){return new(e||t)(ea(oH),ea(lH))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-dialog"]],decls:10,vars:2,consts:[[1,"rui-about","wrapper"],[1,"container"],[1,"close"],[1,"material-icons","close-icon",3,"click"],[1,"content"],["mat-dialog-title","",1,"title"],[1,"mat-typography","dialog-content"],["class","panel",4,"ngFor","ngForOf"],[1,"panel"],[3,"expanded",4,"ngIf"],[3,"expanded"],[1,"no-header-margin"],[1,"top-padding"],[1,"variable-binding",3,"data"],["class","video-player",4,"ngIf"],[1,"video-player"],[3,"videoId"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),ra(3,"mat-icon",3),fa("click",function(){return e.close()}),Za(4,"clear"),sa(),sa(),ra(5,"div",4),ra(6,"h2",5),Za(7),sa(),ra(8,"mat-dialog-content",6),Jo(9,iq,2,1,"div",7),sa(),sa(),sa(),sa()),2&t&&(ws(7),Ja(e.infoTitle),ws(2),na("ngForOf",e.documentationContents))},directives:[p_,gH,mH,yh,_h,NH,FH,WH,i$],styles:[".mat-dialog-container{padding:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:3rem;text-align:left}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:.875rem;line-height:1.5rem;margin-bottom:1rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .close[_ngcontent-%COMP%] .close-icon[_ngcontent-%COMP%]{float:right;cursor:pointer}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:1.5rem;margin-bottom:2.25rem;text-align:center}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:1rem;margin-top:0;margin-bottom:.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%]{margin-bottom:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .no-header-margin[_ngcontent-%COMP%]{font-weight:300;margin-bottom:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%]{display:flex}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] ul{margin-top:0;padding-left:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%]{height:50rem;min-height:10rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding[_ngcontent-%COMP%]{font-weight:300}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding.first[_ngcontent-%COMP%]{padding-right:3rem;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%]{position:relative;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%] iframe{width:100%;height:100%;max-height:17.5rem}"]}),t})(),sq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,bH,f_,BH,a$,qH.forRoot({})]]}),t})(),oq=(()=>{class t{constructor(t){this.http=t,this.markdownContent=new Uf([])}readMarkdown(){this.http.get("assets/docs/README.md",{responseType:"text"}).subscribe(t=>{const e=this.parseMarkdown(t);this.markdownContent.next(e)})}parseMarkdown(t){const e=[],n=t.split("# ");for(const i of n)if(i.length){const t=i.split("\n\n");e.push({title:t[0],content:t.splice(1).join("\n\n")})}return e}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),aq=(()=>{class t{constructor(t,e){this.dialog=t,this.infoButtonService=e,this.infoTitle="",this.subscriptions=new g,this.subscriptions.add(e.markdownContent.subscribe(t=>{t.length&&this.launchInfoDialog(t)}))}ngOnDestroy(){this.subscriptions.unsubscribe()}launchInfoDialog(t){this.dialog.open(rq,{autoFocus:!1,panelClass:"modal-animated",width:"60rem",data:{title:this.infoTitle,content:t,videoID:this.videoID}})}onDialogButtonClick(){this.infoButtonService.readMarkdown()}}return t.\u0275fac=function(e){return new(e||t)(ea(pH),ea(oq))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-button"]],inputs:{infoTitle:"infoTitle",videoID:"videoID"},decls:3,vars:0,consts:[[1,"info-button-wrapper"],["aria-hidden","false","aria-label","Page information",1,"ccf-info-button",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"mat-icon",1),fa("click",function(){return e.onDialogButtonClick()}),Za(2," info "),sa(),sa())},directives:[p_],styles:[".info-button-wrapper[_ngcontent-%COMP%]{border-radius:.25rem;padding:.65rem;transition:.6s}.info-button-wrapper[_ngcontent-%COMP%] .ccf-info-button[_ngcontent-%COMP%]{cursor:pointer;transition:color .6s;font-size:1.5rem;vertical-align:sub}"]}),t})(),lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,sq,f_,Zv]]}),t})(),cq=(()=>{let t=class extends z${constructor(){super(...arguments),this.optionCache=new Map}get config$(){return this.state$.pipe(Hd(t=>null!=t),up(1))}setConfig(t){this.setState(t)}patchConfig(t){this.patchState(t)}getProperty(t){return this.config$.pipe(FU(...t),Rd(),up(1))}getOption(...t){const e=this.getPathKey(t);if(this.optionCache.has(e))return this.optionCache.get(e);const n=this.config$.pipe(FU(...t),Rd(),up(1));return this.optionCache.set(e,n),n}getPathKey(t){return`${t.length}:${t.join(".")}`}};return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$()],t.prototype,"config$",null),t=sw([F$(),wV({name:"globalConfig",defaults:null})],t),t})();!function(){const t=localStorage.getItem("ALLOW_TELEMETRY");null===t||t.toLowerCase()}();let uq=(()=>{class t{constructor(t,e){t&&function(t,e){xd(t,"mousemove").pipe(function(t,e=jd,n=BU){return i=>i.lift(new VU(t,e,n.leading,n.trailing))}(1e3),D(e=>{const{clientWidth:n,clientHeight:i}=t,{clientX:r,clientY:s}=e;return[r,s,n,i].join("_")})).subscribe(t=>e.event("webpage","mousemove",t))}(t.body,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(W$))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function hq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!0)}),Za(1),sa()}if(2&t){const t=va();ws(1),tl(" ","not-set"===t.allowTelemetry?"I understand":"Opt in","\n")}}function dq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!1)}),Za(1,"Opt out"),sa()}}let pq=(()=>{class t{constructor(t,e,n){this.consentService=e,this.data=n,this.clsName="ccf-tracking-popup",this.container=t.nativeElement}get allowTelemetry(){return this.consentService.consent}dismiss(){this.data.preClose()}submit(t){this.consentService.setConsent(t?"given":"rescinded"),this.dismiss()}showButton(t){const{allowTelemetry:e}=this;return"not-set"===e||("opt-in"===t?"rescinded"===e:"given"===e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Y$),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tracking-popup"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},decls:4,vars:2,consts:[["mat-button","","color","basic",3,"click",4,"ngIf"],["mat-button","","color","basic",3,"click"]],template:function(t,e){1&t&&(ra(0,"p"),Za(1,"We log usage to improve this service."),sa(),Jo(2,hq,2,1,"button",0),Jo(3,dq,2,0,"button",0)),2&t&&(ws(2),na("ngIf",e.showButton("opt-in")),ws(1),na("ngIf",e.showButton("opt-out")))},directives:[_h,__],styles:["[_nghost-%COMP%]{display:flex;align-items:center;min-width:400px;color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:9999}[_nghost-%COMP%] p[_ngcontent-%COMP%]{margin:24px}[_nghost-%COMP%] button[_ngcontent-%COMP%]{margin:1rem;min-width:6rem;background-color:#007cbe;display:flex;justify-content:center}"],changeDetection:0}),t})(),fq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_]]}),t})();class gq extends class{getProviderNames(){return this.forwardCall("getProviderNames")}getDatasetTechnologyNames(){return this.forwardCall("getDatasetTechnologyNames")}getOntologyTreeModel(){return this.forwardCall("getOntologyTreeModel")}getCellTypeTreeModel(){return this.forwardCall("getCellTypeTreeModel")}getReferenceOrgans(){return this.forwardCall("getReferenceOrgans")}getTissueBlockResults(t){return this.forwardCall("getTissueBlockResults",t)}getAggregateResults(t){return this.forwardCall("getAggregateResults",t)}getOntologyTermOccurences(t){return this.forwardCall("getOntologyTermOccurences",t)}getCellTypeTermOccurences(t){return this.forwardCall("getCellTypeTermOccurences",t)}getScene(t){return this.forwardCall("getScene",t)}getReferenceOrganScene(t,e){return this.forwardCall("getReferenceOrganScene",t,e)}}{forwardCall(t,...e){return this.impl$.pipe(Qd(n=>n[t](...e)))}}let mq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const bq=new P,yq={cacheBusterObserver:bq},vq={cacheBusterObserver:bq,maxCacheCount:4};function _q(t,e,n){return t?{min:t[0]>e?t[0]:void 0,max:t[1]{var e;return Object.assign(Object.assign({},t),{transformMatrix:new bT(null!==(e=t.transformMatrix)&&void 0!==e?e:[])})})}let xq=(()=>{class t{constructor(t,e){this.api=t,this.globalConfig=e,e.getOption("hubmapToken").subscribe(bq)}getProviderNames(){return this.doRequest(t=>this.api.providerNames(t))}getDatasetTechnologyNames(){return this.doRequest(t=>this.api.technologyNames(t))}getOntologyTreeModel(){return this.doRequest(t=>this.api.ontologyTreeModel(t),void 0,{},t=>t)}getCellTypeTreeModel(){return this.doRequest(t=>this.api.cellTypeTreeModel(t),void 0,{},t=>t)}getReferenceOrgans(){return this.doRequest(t=>this.api.referenceOrgans(t),void 0,{},t=>t)}getTissueBlockResults(t){return this.doRequest(t=>this.api.tissueBlocks(t),t,{},t=>t)}getAggregateResults(t){return this.doRequest(t=>this.api.aggregateResults(t),t)}getOntologyTermOccurences(t){return this.doRequest(t=>this.api.ontologyTermOccurences(t),t)}getCellTypeTermOccurences(t){return this.doRequest(t=>this.api.cellTypeTermOccurences(t),t)}getScene(t){return this.doRequest(t=>this.api.scene(t),t,{},wq)}getReferenceOrganScene(t,e){return this.doRequest(t=>this.api.referenceOrganScene(t),e,{organIri:t},wq)}doRequest(t,e,n,i){const{api:r,globalConfig:s}=this,o=Object.assign(Object.assign({},function(t){var e,n;return{age:_q(null==t?void 0:t.ageRange,1,110),bmi:_q(null==t?void 0:t.bmiRange,13,83),sex:null===(n=null===(e=null==t?void 0:t.sex)||void 0===e?void 0:e.toLowerCase)||void 0===n?void 0:n.call(e),ontologyTerms:null==t?void 0:t.ontologyTerms,cellTypeTerms:null==t?void 0:t.cellTypeTerms,providers:null==t?void 0:t.tmc,technologies:null==t?void 0:t.technologies}}(e)),n);return s.getOption("remoteApiEndpoint").pipe(Gp(1),$f(t=>r.configuration.basePath=t),Qd(()=>t(o)),D(t=>i?i(t):t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(uG),Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),sw([oG(yq)],t.prototype,"getProviderNames",null),sw([oG(yq)],t.prototype,"getDatasetTechnologyNames",null),sw([oG(yq)],t.prototype,"getOntologyTreeModel",null),sw([oG(yq)],t.prototype,"getCellTypeTreeModel",null),sw([oG(yq)],t.prototype,"getReferenceOrgans",null),sw([oG(vq)],t.prototype,"getTissueBlockResults",null),sw([oG(vq)],t.prototype,"getAggregateResults",null),sw([oG(vq)],t.prototype,"getOntologyTermOccurences",null),sw([oG(vq)],t.prototype,"getCellTypeTermOccurences",null),sw([oG(vq)],t.prototype,"getScene",null),sw([oG(vq)],t.prototype,"getReferenceOrganScene",null),t})(),Sq=(()=>{class t extends gq{constructor(t){super(),this.impl$=this.database$=t.config$.pipe(t=>t,Hd(t=>Object.keys(t).length>0),Qd(t=>function(t,e){return new C(n=>{let i,r;try{i=t()}catch(o){return void n.error(o)}try{r=e(i)}catch(o){return void n.error(o)}const s=(r?U(r):ep).subscribe(n);return()=>{s.unsubscribe(),i&&i.unsubscribe()}})}(()=>this.createDatabase(t),e=>this.connectDatabase(e,t))),D(t=>t.database),up(1))}connectDatabase(t,e){return lw(this,void 0,void 0,function*(){const n=!Nu();return yield t.database.connect(e,n),t})}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Eq=(()=>{class t extends Sq{createDatabase(t){return{database:new wW(t),unsubscribe:()=>{}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Cq=(()=>{class t extends Sq{createDatabase(t){const e=this.createWorker(t),n=PW(e);return{database:n,unsubscribe:()=>{n[EW](),e.terminate()}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Oq=(()=>{class t extends gq{constructor(t,e){super(),this.impl$=t.config$.pipe(t=>t,D(t=>this.selectToken(t)),Rd(),D(t=>e.get(t)),up(1))}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Tq=new oi("Default theme class");let kq=(()=>{class t{constructor(t){this.defaultTheme=this.theme=null!=t?t:""}static initialize(e){const{injector:n,location:i}=e;n.get(t).initialize(i,n)}getTheme(){return this.theme}setTheme(t){t!==this.theme&&(this.applyThemeClass(this.theme,"remove"),this.applyThemeClass(t),this.theme=t)}resetTheme(){this.setTheme(this.defaultTheme)}initialize(t,e){this.element=t,this.injector=e,this.applyThemeClass(this.getTheme())}applyThemeClass(t,e="add"){var n;const{element:i,injector:r}=this;if(!t||!i||!r)return;const s=r.get(Ml,null);if(!s)return;const o=i.nativeElement,a=null===(n=r.get(gf,null))||void 0===n?void 0:n.getContainerElement(),l="add"===e?"addClass":"removeClass";s[l](o,t),a&&s[l](a,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Tq,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();var Aq;const Pq={production:!0,disableDbWorker:!0,acceptableViewerDomains:["https://portal.hubmapconsortium.org","https://portal.test.hubmapconsortium.org"],dbOptions:{ccfOwlUrl:"assets/ccf.owl.n3store.json",ccfContextUrl:"https://hubmapconsortium.github.io/hubmap-ontology/ccf-context.jsonld",dataSources:["assets/kpmp/data/rui_locations.jsonld","assets/sparc/data/rui_locations.jsonld","assets/gtex/data/rui_locations.jsonld"],hubmapDataService:"search-api",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"https://search.api.hubmapconsortium.org/entities/search",hubmapAssetsUrl:"https://assets.hubmapconsortium.org",hubmapToken:null!==(Aq=localStorage.getItem("HUBMAP_TOKEN"))&&void 0!==Aq?Aq:"",useRemoteApi:!1,remoteApiEndpoint:"https://ccf-api--staging.herokuapp.com/v1"},customization:{theme:"hubmap",header:!0,homeUrl:"https://portal.hubmapconsortium.org/",logoTooltip:"Human BioMolecular Atlas Project"},googleAnalyticsToken:"portal.hubmapconsortium.org"===window.location.hostname?"G-1WRJHN9FM6":"G-J9HWV9QPJ4"},Mq=["*",[["mat-toolbar-row"]]],Iq=["*","mat-toolbar-row"],Dq=jy(class{constructor(t){this._elementRef=t}});let Rq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),t})(),Nq=(()=>{class t extends Dq{constructor(t,e,n){super(t),this._platform=e,this._document=n}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu))},t.\u0275cmp=Jt({type:t,selectors:[["mat-toolbar"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,Rq,5),2&t){let t;Wc(t=Yc())&&(e._toolbarRows=t)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(t,e){2&t&&ja("mat-toolbar-multiple-rows",e._toolbarRows.length>0)("mat-toolbar-single-row",0===e._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[jo],ngContentSelectors:Iq,decls:2,vars:0,template:function(t,e){1&t&&(wa(Mq),xa(0),xa(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),t})(),Lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})(),jq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,Lq,rw]]}),t})(),Fq=(()=>{class t extends Cq{constructor(t,e){super(t),this.locator=e}createWorker(t){const e=this.getWorkerUrl(!0);return new Worker(e,{type:"module"})}getWorkerUrl(t){if(t)return new URL(n(88509),n.b);const e=this.locator.prepareExternalUrl("0-es2015.worker.js"),i=new Blob([`importScripts('${e}')`],{type:"application/javascript"});return URL.createObjectURL(i)}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(rh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Bq=(()=>{class t extends Oq{selectToken(t){const{useRemoteApi:e,remoteApiEndpoint:n}=t;return e&&n?xq:"undefined"==typeof Worker||Pq.disableDbWorker?Eq:Fq}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Vq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:au,useValue:kq.initialize,multi:!0},kq]}),t})(),zq=(()=>{class t{constructor(t,e){this.accessor=t,this.injector=e}static forRoot(e=[]){return{ngModule:t,providers:[w$,_$,y$,...e]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(w$,2),Ci(_$,2))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Uq=(t,e)=>((t,e)=>new Array(e+1).join("0"))(0,e-t.toString().length)+t;class Hq{constructor(t,e,n){this.action=t,this.store=e,this.logWriter=n}dispatched(t){const e=VB(this.action),n=function(t){return Uq(t.getHours(),2)+":"+Uq(t.getMinutes(),2)+":"+Uq(t.getSeconds(),2)+"."+Uq(t.getMilliseconds(),3)}(new Date);this.logWriter.startGroup(`action ${e} @ ${n}`),this._hasPayload(this.action)&&this.logWriter.logGrey("payload",Object.assign({},this.action)),this.logWriter.logGrey("prev state",t)}completed(t){this.logWriter.logGreen("next state",t),this.logWriter.endGroup()}errored(t){this.logWriter.logRedish("next state after error",this.store.snapshot()),this.logWriter.logRedish("error",t),this.logWriter.endGroup()}_hasPayload(t){return this._getNonEmptyProperties(t).length>0}_getNonEmptyProperties(t){return Object.keys(t).map(e=>t[e]).filter(t=>void 0!==t)}}class $q{constructor(t){this.options=t,this.options=this.options||{},this.logger=t.logger||console}startGroup(t){const e=this.options.collapsed?this.logger.groupCollapsed:this.logger.group;try{e.call(this.logger,t)}catch(n){console.log(t)}}endGroup(){try{this.logger.groupEnd()}catch(t){this.logger.log("\u2014\u2014 log end \u2014\u2014")}}logGrey(t,e){this.log(t,"color: #9E9E9E; font-weight: bold",e)}logGreen(t,e){this.log(t,"color: #4CAF50; font-weight: bold",e)}logRedish(t,e){this.log(t,"color: #FD8182; font-weight: bold",e)}log(t,e,n){this.isIE()?this.logger.log(t,n):this.logger.log("%c "+t,e,n)}isIE(){const t="undefined"!=typeof window&&window.navigator.userAgent?window.navigator.userAgent:"";let e=!1;const n=t.indexOf("MSIE "),i=t.indexOf("Trident/");return(n>-1||i>-1)&&(e=!0),e}}const Gq=new oi("NGXS_LOGGER_PLUGIN_OPTIONS");let Wq=(()=>{class t{constructor(t,e){this._options=t,this._injector=e}handle(t,e,n){if(this._options.disabled||!this._options.filter(e,t))return n(t,e);this._logWriter=this._logWriter||new $q(this._options),this._store=this._store||this._injector.get(pV);const i=new Hq(e,this._store,this._logWriter);return i.dispatched(t),n(t,e).pipe($f(t=>{i.completed(t)}),pv(t=>{throw i.errored(t),t}))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Gq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const qq=new oi("LOGGER_USER_OPTIONS");function Xq(t){return Object.assign({},{logger:console,collapsed:!1,disabled:!1,filter:()=>!0},t)}let Yq=(()=>{class t{static forRoot(e){return{ngModule:t,providers:[{provide:IB,useClass:Wq,multi:!0},{provide:qq,useValue:e},{provide:Gq,useFactory:Xq,deps:[qq]}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Kq=new RegExp("[^#a-f\\d]","gi"),Qq=new RegExp("^#?[a-f\\d]{3}[a-f\\d]?$|^#?[a-f\\d]{6}([a-f\\d]{2})?$","i"),Zq=["#FF8800","#2979ff","#ffd740","#b92dff","#da326f","#7323e2","#acf32b","#82B1FF","#E040FB","#00E5FF"].map((t,e)=>{const n=function(t,e={}){if("string"!=typeof t||Kq.test(t)||!Qq.test(t))throw new TypeError("Expected a valid hex string");let n=1;8===(t=t.replace(/^#/,"")).length&&(n=Number.parseInt(t.slice(6,8),16)/255,t=t.slice(0,6)),4===t.length&&(n=Number.parseInt(t.slice(3,4).repeat(2),16)/255,t=t.slice(0,3)),3===t.length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]);const i=Number.parseInt(t,16),r=i>>16,s=i>>8&255,o=255&i,a="number"==typeof e.alpha?e.alpha:n;return"array"===e.format?[r,s,o,a]:"css"===e.format?`rgb(${r} ${s} ${o}${1===a?"":` / ${Number((100*a).toFixed(2))}%`})`:{red:r,green:s,blue:o,alpha:a}}(t,{format:"array"});return n[3]=255,{color:t,rgba:n,rank:e}});let Jq=class extends z${constructor(){super(...arguments),this.forcedUnassignment=new P,this.forcedUnassignment$=this.forcedUnassignment.asObservable(),this.colorAssignments$=this.state$.pipe(FU("colorAssignments"),Rd()),this.colorAssignmentsList$=this.state$.pipe(FU("colorAssignmentsList"),Rd())}getColor(t){const{colorAssignments:e}=this.snapshot;return e[t]}assignColor(t,e=!1){let{colorAssignments:n,colorAssignmentsList:i,colorsAvailable:r}=this.snapshot;e&&(r=this.snapshot.colorPalette.concat(),i=[],n={});let s=n[t];return s||(r.length>0?s=r[0]:(s=i[i.length-1].color,i=i.slice(0,-1),this.forcedUnassignment.next()),r=r.filter(t=>t.color!==s.color),i=[{color:s,key:t}].concat(i),n=i.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:r,colorAssignments:n,colorAssignmentsList:i})),s}unassignColor(t){let{colorAssignments:e,colorAssignmentsList:n,colorsAvailable:i}=this.snapshot;const r=e[t];r&&(i=[r].concat(i),n=n.filter(t=>t.color.color!==r.color),e=n.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:i,colorAssignments:e,colorAssignmentsList:n}))}};function tX(t,e){return n=>n.lift(new eX(t,e))}Jq.\u0275fac=function(){let t;return function(e){return(t||(t=ti(Jq)))(e||Jq)}}(),Jq.\u0275prov=xt({token:Jq,factory:Jq.\u0275fac}),sw([L$(),ow(0,j$("key")),ow(1,j$("doReset"))],Jq.prototype,"assignColor",null),sw([L$(),ow(0,j$("key"))],Jq.prototype,"unassignColor",null),Jq=sw([F$(),wV({name:"colors",defaults:{colorPalette:Zq.concat(),colorsAvailable:Zq.concat(),colorAssignments:{},colorAssignmentsList:[]}})],Jq);class eX{constructor(t,e){this.keySelector=t,this.flushes=e}call(t,e){return e.subscribe(new nX(t,this.keySelector,this.flushes))}}class nX extends ${constructor(t,e,n){super(t),this.keySelector=e,this.values=new Set,n&&this.add(G(n,new H(this)))}notifyNext(){this.values.clear()}notifyError(t){this._error(t)}_next(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)}_useKeySelector(t){let e;const{destination:n}=this;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)}_finalizeNext(t,e){const{values:n}=this;n.has(t)||(n.add(t),this.destination.next(e))}}const iX={sex:"Both",ageRange:[1,110],bmiRange:[13,83],tmc:[],technologies:[],ontologyTerms:["http://purl.obolibrary.org/obo/UBERON_0013702"],cellTypeTerms:["http://purl.obolibrary.org/obo/CL_0000000"]};var rX=(()=>(function(t){t.Running="running",t.Completed="completed"}(rX||(rX={})),rX))();function sX(t){return()=>t.next(rX.Completed)}function oX(t,e){return n=>n.pipe(Qd(t),$f(e),eG(1),Z())}let aX=class extends V${constructor(t){super(),this.source=t,this._tissueBlockDataQueryStatus$=new lp(1),this._aggregateDataQueryStatus$=new lp(1),this._ontologyTermOccurencesDataQueryStatus$=new lp(1),this._cellTypeTermOccurencesDataQueryStatus$=new lp(1),this._sceneDataQueryStatus$=new lp(1),this._technologyFilterQueryStatus$=new lp(1),this._providerFilterQueryStatus$=new lp(1),this.ontologyTermsFullData$=new lp(1),this.cellTypeTermsFullData$=new lp(1),this.filter$=this.state$.pipe(FU("filter")),this.tissueBlockData$=this.filter$.pipe(oX(this.tissueBlockData,sX(this._tissueBlockDataQueryStatus$))),this.aggregateData$=this.filter$.pipe(oX(this.aggregateData,sX(this._aggregateDataQueryStatus$))),this.ontologyTermOccurencesData$=this.filter$.pipe(oX(this.ontologyTermOccurencesData,sX(this._ontologyTermOccurencesDataQueryStatus$))),this.cellTypeTermOccurencesData$=this.filter$.pipe(oX(this.cellTypeTermOccurencesData,sX(this._cellTypeTermOccurencesDataQueryStatus$))),this.sceneData$=this.filter$.pipe(oX(this.sceneData,sX(this._sceneDataQueryStatus$))),this.technologyFilterData$=this.filter$.pipe(oX(this.technologyFilterData,sX(this._technologyFilterQueryStatus$))),this.providerFilterData$=this.filter$.pipe(oX(this.providerFilterData,sX(this._providerFilterQueryStatus$))),this.tissueBlockDataQueryStatus$=this._tissueBlockDataQueryStatus$.pipe(tX()),this.aggregateDataQueryStatus$=this._aggregateDataQueryStatus$.pipe(tX()),this.ontologyTermOccurencesDataQueryStatus$=this._ontologyTermOccurencesDataQueryStatus$.pipe(tX()),this.cellTypeTermOccurencesDataQueryStatus$=this._cellTypeTermOccurencesDataQueryStatus$.pipe(tX()),this.sceneDataQueryStatus$=this._sceneDataQueryStatus$.pipe(tX()),this.technologyFilterQueryStatus$=this._technologyFilterQueryStatus$.pipe(tX()),this.providerFilterQueryStatus$=this._providerFilterQueryStatus$.pipe(tX()),this.queryStatus$=T_([this.tissueBlockDataQueryStatus$,this.aggregateDataQueryStatus$,this.ontologyTermOccurencesDataQueryStatus$,this.cellTypeTermOccurencesDataQueryStatus$,this.sceneDataQueryStatus$,this.technologyFilterQueryStatus$,this.providerFilterQueryStatus$]).pipe(D(t=>function(t){return t.every(t=>t===rX.Completed)}(t)?rX.Completed:rX.Running),tX()),this._tissueBlockDataQueryStatus$.next(rX.Completed),this._aggregateDataQueryStatus$.next(rX.Completed),this._ontologyTermOccurencesDataQueryStatus$.next(rX.Completed),this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Completed),this._sceneDataQueryStatus$.next(rX.Completed),this._technologyFilterQueryStatus$.next(rX.Completed),this._providerFilterQueryStatus$.next(rX.Completed)}ngxsOnInit(){const{ontologyTermsFullData$:t,ontologyTermOccurencesData$:e,cellTypeTermsFullData$:n,cellTypeTermOccurencesData$:i,source:r,snapshot:{filter:s}}=this;s===iX?(e.pipe(Gp(1)).subscribe(t),i.pipe(Gp(1)).subscribe(n)):(r.getOntologyTermOccurences().pipe(Gp(1)).subscribe(t),r.getCellTypeTermOccurences().pipe(Gp(1)).subscribe(n))}updateFilter(t){this.patchState({filter:Object.assign(Object.assign({},this.getState().filter),t)})}tissueBlockData(t){return this._tissueBlockDataQueryStatus$.next(rX.Running),this.source.getTissueBlockResults(t)}aggregateData(t){return this._aggregateDataQueryStatus$.next(rX.Running),this.source.getAggregateResults(t)}ontologyTermOccurencesData(t){return this._ontologyTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getOntologyTermOccurences(t)}cellTypeTermOccurencesData(t){return this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getCellTypeTermOccurences(t)}sceneData(t){return this._sceneDataQueryStatus$.next(rX.Running),this.source.getScene(t)}technologyFilterData(){return this._technologyFilterQueryStatus$.next(rX.Running),this.source.getDatasetTechnologyNames()}providerFilterData(){return this._providerFilterQueryStatus$.next(rX.Running),this.source.getProviderNames()}};aX.\u0275fac=function(t){return new(t||aX)(Ci(mq))},aX.\u0275prov=xt({token:aX,factory:aX.\u0275fac}),sw([L$(),ow(0,j$("filter"))],aX.prototype,"updateFilter",null),sw([iB.ak],aX.prototype,"tissueBlockData",null),sw([iB.ak],aX.prototype,"aggregateData",null),sw([iB.ak],aX.prototype,"ontologyTermOccurencesData",null),sw([iB.ak],aX.prototype,"cellTypeTermOccurencesData",null),sw([iB.ak],aX.prototype,"sceneData",null),sw([iB.ak],aX.prototype,"technologyFilterData",null),sw([iB.ak],aX.prototype,"providerFilterData",null),aX=sw([F$(),wV({name:"data",defaults:{filter:iX}})],aX);const lX=[{name:"bladder",namespace:"app",url:"assets/icons/organs/ico-organs-bladder.svg"},{name:"blood",namespace:"app",url:"assets/icons/organs/ico-organs-blood.svg"},{name:"bone-marrow",namespace:"app",url:"assets/icons/organs/ico-organs-bone-marrow.svg"},{name:"brain",namespace:"app",url:"assets/icons/organs/ico-organs-brain.svg"},{name:"eye",namespace:"app",url:"assets/icons/organs/ico-organs-eye.svg"},{name:"fallopian-tube-left",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-left.svg"},{name:"fallopian-tube-right",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-right.svg"},{name:"heart",namespace:"app",url:"assets/icons/organs/ico-organs-heart.svg"},{name:"kidney-left",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-left.svg"},{name:"kidney-right",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-right.svg"},{name:"kidney",namespace:"app",url:"assets/icons/organs/ico-organs-kidney.svg"},{name:"knee",namespace:"app",url:"assets/icons/organs/ico-organs-knee.svg"},{name:"large-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-large-intestine.svg"},{name:"liver",namespace:"app",url:"assets/icons/organs/ico-organs-liver.svg"},{name:"lung-left",namespace:"app",url:"assets/icons/organs/ico-organs-lung-left.svg"},{name:"lung-right",namespace:"app",url:"assets/icons/organs/ico-organs-lung-right.svg"},{name:"lung",namespace:"app",url:"assets/icons/organs/ico-organs-lung.svg"},{name:"lymph-nodes",namespace:"app",url:"assets/icons/organs/ico-organs-lymph-nodes.svg"},{name:"neuron",namespace:"app",url:"assets/icons/organs/ico-organs-neuron.svg"},{name:"ovaries",namespace:"app",url:"assets/icons/organs/ico-organs-ovaries.svg"},{name:"ovary-left",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-left.svg"},{name:"ovary-right",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-right.svg"},{name:"pancreas",namespace:"app",url:"assets/icons/organs/ico-organs-pancreas.svg"},{name:"pelvis-f",namespace:"app",url:"assets/icons/organs/ico-organs-pelvis-f.svg"},{name:"prostate",namespace:"app",url:"assets/icons/organs/ico-organs-prostate.svg"},{name:"skin",namespace:"app",url:"assets/icons/organs/ico-organs-skin.svg"},{name:"small-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-small intestine.svg"},{name:"spleen",namespace:"app",url:"assets/icons/organs/ico-organs-spleen.svg"},{name:"stomach",namespace:"app",url:"assets/icons/organs/ico-organs-stomach.svg"},{name:"thymus",namespace:"app",url:"assets/icons/organs/ico-organs-thymus.svg"},{name:"ureter-left",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-left.svg"},{name:"ureter-right",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-right.svg"},{name:"uterus",namespace:"app",url:"assets/icons/organs/ico-organs-uterus.svg"},{name:"vasculature-thick",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thick.svg"},{name:"vasculature-thin",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thin.svg"},{name:"opacity",namespace:"app",url:"assets/icons/opacity-24px.svg"},{name:"visibility_on",namespace:"app",url:"assets/icons/visibility-on-24px.svg"},{name:"visibility_off",namespace:"app",url:"assets/icons/visibility-off-24px.svg"},{name:"expand_more",namespace:"app",url:"assets/icons/expand_more-24px.svg"},{name:"expand_less",namespace:"app",url:"assets/icons/expand_less-24px.svg"},{name:"filter",url:"assets/icons/filter.svg"}];let cX=class extends V${constructor(t,e){super(),this.registry=t;for(const{name:n,namespace:i,url:r,html:s}of lX){const t={name:n,namespace:i,url:r&&e.bypassSecurityTrustResourceUrl(r),html:s&&e.bypassSecurityTrustHtml(s)};this.registerIconImpl(t)}}registerIcon(t){return this.registerIconImpl(t)}registerIconImpl(t){if(!this.registry||!t.url&&!t.html)return!1;const e=this.registry,n=e[this.getMethodName(t)],i=this.getArguments(t);if(!n)return!1;try{return n.apply(e,i),!0}catch(r){return!1}}getMethodName({name:t,namespace:e,url:n}){const i=["addSvgIcon"];return t||i.push("Set"),n||i.push("Literal"),e&&i.push("InNamespace"),i.join("")}getArguments({name:t,namespace:e,url:n,html:i}){return[e,t,null!=n?n:i].filter(t=>!!t)}};cX.\u0275fac=function(t){return new(t||cX)(Ci(r_,8),Ci(hd))},cX.\u0275prov=xt({token:cX,factory:cX.\u0275fac}),sw([L$()],cX.prototype,"registerIcon",null),cX=sw([F$(),wV({name:"iconRegistry"})],cX);let uX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.listResults$=this.state$.pipe(FU("listResults"),Rd()),this.highlightedNodeId$=this.state$.pipe(FU("highlightedNodeId"),Rd())}setListResults(t){this.ctx.patchState({listResults:t})}selectListResult(t){this.colorAssignments.assignColor(t.tissueBlock.spatialEntityId)}deselectListResult(t){this.colorAssignments.unassignColor(t.tissueBlock.spatialEntityId)}highlightNode(t){this.ctx.patchState({highlightedNodeId:t})}unHighlightNode(){this.ctx.patchState({highlightedNodeId:void 0})}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),T_([this.dataState.tissueBlockData$,this.colorAssignments.colorAssignments$]).pipe(D(([t,e])=>{const n=[],i=[];for(const r of t){const t=e[r.spatialEntityId];t?n.push({selected:!0,color:t.color,tissueBlock:r,rank:t.rank}):i.push({selected:!1,tissueBlock:r})}return(0,_G.sortBy)(n,["rank"]).concat(i)}),$f(t=>this.setListResults(t))).subscribe()}};uX.\u0275fac=function(t){return new(t||uX)(Ci(mq),Ci(No))},uX.\u0275prov=xt({token:uX,factory:uX.\u0275fac}),sw([L$(),ow(0,j$("listResults"))],uX.prototype,"setListResults",null),uX=sw([F$(),wV({name:"listResults",defaults:{listResults:[]}})],uX);const hX=new Set(["Skin","Heart","Kidney","Spleen"]);let dX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.referenceOrgans$=this.state$.pipe(FU("referenceOrgans"),Rd()),this.selectedReferenceOrgans$=this.state$.pipe(FU("selectedReferenceOrgans"),Rd()),this.scene$=this.state$.pipe(FU("scene"),Rd()),this.highlightedId$=this.state$.pipe(FU("highlightedId"),Rd())}setSelectedReferenceOrgans(t){this.ctx.patchState({selectedReferenceOrgans:t})}setReferenceOrgans(t){this.ctx.patchState({referenceOrgans:t})}setScene(t){this.ctx.patchState({scene:t})}sceneNodeClicked({node:t,ctrlClick:e}){t.representation_of&&"http://purl.org/ccf/latest/ccf.owl#VHFSkin"!==t["@id"]&&t.entityId?this.dataState.updateFilter({ontologyTerms:[t.representation_of]}):t.entityId&&this.colorAssignments.assignColor(t["@id"],!e)}sceneNodeHovered(t){this.listResults.highlightNode(t["@id"])}sceneNodeUnhover(){this.listResults.unHighlightNode()}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),this.listResults=this.injector.get(uX),this.dataService.getReferenceOrgans().pipe(D(t=>{const e=new Set(t.map(t=>t.representation_of));return YW.filter(t=>e.has(t.id)).map(t=>Object.assign(Object.assign({},t),{disabled:!1,numResults:0}))}),Gp(1),$f(t=>{this.setReferenceOrgans(t),this.setSelectedReferenceOrgans(t.filter(t=>hX.has(t.organ)))})).subscribe(),T_([this.dataState.sceneData$,this.selectedReferenceOrgans$,this.colorAssignments.colorAssignments$,this.dataService.getReferenceOrgans(),this.listResults.highlightedNodeId$]).pipe(D(([t,e,n,i,r])=>{const s=new Set(e.map(t=>t.id)),o=new Set(i.filter(t=>s.has(t.representation_of)).map(t=>t["@id"]));return t.filter(t=>{var e,n;return(null===(n=null===(e=t.ccf_annotations)||void 0===e?void 0:e.some)||void 0===n?void 0:n.call(e,t=>s.has(t)))||t.reference_organ&&o.has(t.reference_organ)}).map(t=>t.entityId&&(Object.prototype.hasOwnProperty.call(n,t["@id"])||r===t["@id"])?Object.assign(Object.assign({},t),{color:r===t["@id"]?[30,136,229,255]:n[t["@id"]].rgba}):t)}),$f(t=>this.setScene(t))).subscribe()}};dX.\u0275fac=function(t){return new(t||dX)(Ci(mq),Ci(No))},dX.\u0275prov=xt({token:dX,factory:dX.\u0275fac}),sw([L$(),ow(0,j$("selectedReferenceOrgans"))],dX.prototype,"setSelectedReferenceOrgans",null),sw([L$(),ow(0,j$("referenceOrgans"))],dX.prototype,"setReferenceOrgans",null),sw([L$(),ow(0,j$("scene"))],dX.prototype,"setScene",null),dX=sw([F$(),wV({name:"scene",defaults:{scene:[],referenceOrgans:[],selectedReferenceOrgans:[],selectedAnatomicalStructures:[],anatomicalStructureSettings:{}}})],dX);const pX=[cq,Jq,cX,uX,aX,dX];let fX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[zq.forRoot(),_V.forRoot(pX,{developmentMode:!Pq.production}),Yq.forRoot({disabled:Pq.production})]]}),t})(),gX=(()=>{class t{constructor(t){if(t)throw new Error("The core module should only be imported once in the root module")}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:mq,useExisting:Bq}],imports:[[Zv,tG.forRoot({gaToken:Pq.googleAnalyticsToken,appName:"eui"}),uq,hG.forRoot(()=>new cG({basePath:Pq.dbOptions.remoteApiEndpoint})),jq,fX,Vq],jq]}),t})();const mX=["input"],bX=function(t){return{enterDuration:t}},yX=["*"],vX=new oi("mat-checkbox-default-options",{providedIn:"root",factory:_X});function _X(){return{color:"accent",clickAction:"check-indeterminate"}}let wX=0;const xX=_X(),SX={provide:EV,useExisting:pt(()=>OX),multi:!0};class EX{}const CX=By(jy(Fy(Ly(class{constructor(t){this._elementRef=t}}))));let OX=(()=>{class t extends CX{constructor(t,e,n,i,r,s,o){super(t),this._changeDetectorRef=e,this._focusMonitor=n,this._ngZone=i,this._animationMode=s,this._options=o,this.ariaLabel="",this.ariaLabelledby=null,this._uniqueId="mat-checkbox-"+ ++wX,this.id=this._uniqueId,this.labelPosition="after",this.name=null,this.change=new Rc,this.indeterminateChange=new Rc,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||xX,this.color=this.defaultColor=this._options.color||xX.color,this.tabIndex=parseInt(r)||0}get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(t){this._required=md(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{t||Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}ngAfterViewChecked(){}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}get checked(){return this._checked}set checked(t){t!=this.checked&&(this._checked=t,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){const e=md(t);e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(t){const e=t!=this._indeterminate;this._indeterminate=md(t),e&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(t){this.checked=!!t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t}_getAriaChecked(){return this.checked?"true":this.indeterminate?"mixed":"false"}_transitionCheckState(t){let e=this._currentCheckState,n=this._elementRef.nativeElement;if(e!==t&&(this._currentAnimationClass.length>0&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(e,t),this._currentCheckState=t,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);const t=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(t)},1e3)})}}_emitChangeEvent(){const t=new EX;t.source=this,t.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(t),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked}_onInputClick(t){var e;const n=null===(e=this._options)||void 0===e?void 0:e.clickAction;t.stopPropagation(),this.disabled||"noop"===n?!this.disabled&&"noop"===n&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==n&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}focus(t,e){t?this._focusMonitor.focusVia(this._inputElement,t,e):this._inputElement.nativeElement.focus(e)}_onInteractionEvent(t){t.stopPropagation()}_getAnimationClassForCheckStateTransition(t,e){if("NoopAnimations"===this._animationMode)return"";let n="";switch(t){case 0:if(1===e)n="unchecked-checked";else{if(3!=e)return"";n="unchecked-indeterminate"}break;case 2:n=1===e?"unchecked-checked":"unchecked-indeterminate";break;case 1:n=2===e?"checked-unchecked":"checked-indeterminate";break;case 3:n=1===e?"indeterminate-checked":"indeterminate-unchecked"}return`mat-checkbox-anim-${n}`}_syncIndeterminate(t){const e=this._inputElement;e&&(e.nativeElement.indeterminate=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Mg),ea(xu),ni("tabindex"),ea(Ey,8),ea(vX,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-checkbox"]],viewQuery:function(t,e){if(1&t&&(qc(mX,5),qc(Yy,5)),2&t){let t;Wc(t=Yc())&&(e._inputElement=t.first),Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(t,e){2&t&&(il("id",e.id),Ko("tabindex",null),ja("mat-checkbox-indeterminate",e.indeterminate)("mat-checkbox-checked",e.checked)("mat-checkbox-disabled",e.disabled)("mat-checkbox-label-before","before"==e.labelPosition)("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",labelPosition:"labelPosition",name:"name",required:"required",checked:"checked",disabled:"disabled",indeterminate:"indeterminate",ariaDescribedby:["aria-describedby","ariaDescribedby"],value:"value"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[_l([SX]),jo],ngContentSelectors:yX,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(t,e){if(1&t&&(wa(),ra(0,"label",0,1),ra(2,"span",2),ra(3,"input",3,4),fa("change",function(t){return e._onInteractionEvent(t)})("click",function(t){return e._onInputClick(t)}),sa(),ra(5,"span",5),oa(6,"span",6),sa(),oa(7,"span",7),ra(8,"span",8),vn(),ra(9,"svg",9),oa(10,"path",10),sa(),Ve.lFrame.currentNamespace=null,oa(11,"span",11),sa(),sa(),ra(12,"span",12,13),fa("cdkObserveContent",function(){return e._onLabelTextChange()}),ra(14,"span",14),Za(15,"\xa0"),sa(),xa(16),sa(),sa()),2&t){const t=ta(1),n=ta(13);Ko("for",e.inputId),ws(2),ja("mat-checkbox-inner-container-no-side-margin",!n.textContent||!n.textContent.trim()),ws(1),na("id",e.inputId)("required",e.required)("checked",e.checked)("disabled",e.disabled)("tabIndex",e.tabIndex),Ko("value",e.value)("name",e.name)("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby)("aria-checked",e._getAriaChecked())("aria-describedby",e.ariaDescribedby),ws(2),na("matRippleTrigger",t)("matRippleDisabled",e._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Tc(19,bX,"NoopAnimations"===e._animationMode?0:150))}},directives:[Yy,ng],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),t})(),TX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),kX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny,ig,TX],Ny,TX]}),t})(),AX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX]]}),t})();const PX=["trigger"],MX=["panel"];function IX(t,e){if(1&t&&(ra(0,"span",8),Za(1),sa()),2&t){const t=va();ws(1),Ja(t.placeholder)}}function DX(t,e){if(1&t&&(ra(0,"span",12),Za(1),sa()),2&t){const t=va(2);ws(1),Ja(t.triggerValue)}}function RX(t,e){1&t&&xa(0,0,["*ngSwitchCase","true"])}function NX(t,e){1&t&&(ra(0,"span",9),Jo(1,DX,2,1,"span",10),Jo(2,RX,1,0,"ng-content",11),sa()),2&t&&(na("ngSwitch",!!va().customTrigger),ws(2),na("ngSwitchCase",!0))}function LX(t,e){if(1&t){const t=ua();ra(0,"div",13),ra(1,"div",14,15),fa("@transformPanel.done",function(e){return $e(t),va()._panelDoneAnimatingStream.next(e.toState)})("keydown",function(e){return $e(t),va()._handleKeydown(e)}),xa(3,1),sa(),sa()}if(2&t){const t=va();na("@transformPanelWrap",void 0),ws(1),nl("mat-select-panel ",t._getPanelTheme(),""),La("transform-origin",t._transformOrigin)("font-size",t._triggerFontSize,"px"),na("ngClass",t.panelClass)("@transformPanel",t.multiple?"showing-multiple":"showing"),Ko("id",t.id+"-panel")("aria-multiselectable",t.multiple)("aria-label",t.ariaLabel||null)("aria-labelledby",t._getPanelAriaLabelledby())}}const jX=[[["mat-select-trigger"]],"*"],FX=["mat-select-trigger","*"],BX={transformPanelWrap:Vg("transformPanelWrap",[Wg("* => void",Xg("@transformPanel",[qg()],{optional:!0}))]),transformPanel:Vg("transformPanel",[$g("void",Hg({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),$g("showing",Hg({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),$g("showing-multiple",Hg({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),Wg("void => *",zg("120ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void",zg("100ms 25ms linear",Hg({opacity:0})))])};let VX=0;const zX=new oi("mat-select-scroll-strategy"),UX=new oi("MAT_SELECT_CONFIG"),HX={provide:zX,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};class $X{constructor(t,e){this.source=t,this.value=e}}const GX=Fy(By(Ly(Vy(class{constructor(t,e,n,i,r){this._elementRef=t,this._defaultErrorStateMatcher=e,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}})))),WX=new oi("MatSelectTrigger");let qX=(()=>{class t extends GX{constructor(t,e,n,i,r,s,o,a,l,c,u,h,d,p){var f,g,m;super(r,i,o,a,c),this._viewportRuler=t,this._changeDetectorRef=e,this._ngZone=n,this._dir=s,this._parentFormField=l,this._liveAnnouncer=d,this._defaultOptions=p,this._panelOpen=!1,this._compareWith=(t,e)=>t===e,this._uid="mat-select-"+VX++,this._triggerAriaLabelledBy=null,this._destroy=new P,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+VX++,this._panelDoneAnimatingStream=new P,this._overlayPanelClass=(null===(f=this._defaultOptions)||void 0===f?void 0:f.overlayPanelClass)||"",this._focused=!1,this.controlType="mat-select",this._required=!1,this._multiple=!1,this._disableOptionCentering=null!==(m=null===(g=this._defaultOptions)||void 0===g?void 0:g.disableOptionCentering)&&void 0!==m&&m,this.ariaLabel="",this.optionSelectionChanges=Mz(()=>{const t=this.options;return t?t.changes.pipe(Kd(t),Qd(()=>Q(...t.map(t=>t.onSelectionChange)))):this._ngZone.onStable.pipe(Gp(1),Qd(()=>this.optionSelectionChanges))}),this.openedChange=new Rc,this._openedStream=this.openedChange.pipe(Hd(t=>t),D(()=>{})),this._closedStream=this.openedChange.pipe(Hd(t=>!t),D(()=>{})),this.selectionChange=new Rc,this.valueChange=new Rc,this.ngControl&&(this.ngControl.valueAccessor=this),null!=(null==p?void 0:p.typeaheadDebounceInterval)&&(this._typeaheadDebounceInterval=p.typeaheadDebounceInterval),this._scrollStrategyFactory=h,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(u)||0,this.id=this.id}get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(t){this._placeholder=t,this.stateChanges.next()}get required(){return this._required}set required(t){this._required=md(t),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(t){this._multiple=md(t)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(t){this._disableOptionCentering=md(t)}get compareWith(){return this._compareWith}set compareWith(t){this._compareWith=t,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(t){(t!==this._value||this._multiple&&Array.isArray(t))&&(this.options&&this._setSelectionByValue(t),this._value=t)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(t){this._typeaheadDebounceInterval=bd(t)}get id(){return this._id}set id(t){this._id=t||this._uid,this.stateChanges.next()}ngOnInit(){this._selectionModel=new kp(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(Rd(),Wd(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe(Wd(this._destroy)).subscribe(t=>{t.added.forEach(t=>t.select()),t.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Kd(null),Wd(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const t=this._getTriggerAriaLabelledby();if(t!==this._triggerAriaLabelledBy){const e=this._elementRef.nativeElement;this._triggerAriaLabelledBy=t,t?e.setAttribute("aria-labelledby",t):e.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}ngOnChanges(t){t.disabled&&this.stateChanges.next(),t.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(t){this.value=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const t=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&t.reverse(),t.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(t){this.disabled||(this.panelOpen?this._handleOpenKeydown(t):this._handleClosedKeydown(t))}_handleClosedKeydown(t){const e=t.keyCode,n=40===e||38===e||37===e||39===e,i=13===e||32===e,r=this._keyManager;if(!r.isTyping()&&i&&!Qp(t)||(this.multiple||t.altKey)&&n)t.preventDefault(),this.open();else if(!this.multiple){const e=this.selected;r.onKeydown(t);const n=this.selected;n&&e!==n&&this._liveAnnouncer.announce(n.viewValue,1e4)}}_handleOpenKeydown(t){const e=this._keyManager,n=t.keyCode,i=40===n||38===n,r=e.isTyping();if(i&&t.altKey)t.preventDefault(),this.close();else if(r||13!==n&&32!==n||!e.activeItem||Qp(t))if(!r&&this._multiple&&65===n&&t.ctrlKey){t.preventDefault();const e=this.options.some(t=>!t.disabled&&!t.selected);this.options.forEach(t=>{t.disabled||(e?t.select():t.deselect())})}else{const n=e.activeItemIndex;e.onKeydown(t),this._multiple&&i&&t.shiftKey&&e.activeItem&&e.activeItemIndex!==n&&e.activeItem._selectViaInteraction()}else t.preventDefault(),e.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Gp(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this._setSelectionByValue(this.ngControl?this.ngControl.value:this._value),this.stateChanges.next()})}_setSelectionByValue(t){if(this._selectionModel.selected.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&t)Array.isArray(t),t.forEach(t=>this._selectValue(t)),this._sortValues();else{const e=this._selectValue(t);e?this._keyManager.updateActiveItem(e):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectValue(t){const e=this.options.find(e=>{if(this._selectionModel.isSelected(e))return!1;try{return null!=e.value&&this._compareWith(e.value,t)}catch(n){return!1}});return e&&this._selectionModel.select(e),e}_initKeyManager(){this._keyManager=new fg(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.pipe(Wd(this._destroy)).subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const t=Q(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(Wd(t)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Q(...this.options.map(t=>t._stateChanges)).pipe(Wd(t)).subscribe(()=>{this._changeDetectorRef.markForCheck(),this.stateChanges.next()})}_onSelect(t,e){const n=this._selectionModel.isSelected(t);null!=t.value||this._multiple?(n!==t.selected&&(t.selected?this._selectionModel.select(t):this._selectionModel.deselect(t)),e&&this._keyManager.setActiveItem(t),this.multiple&&(this._sortValues(),e&&this.focus())):(t.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(t.value)),n!==this._selectionModel.isSelected(t)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const t=this.options.toArray();this._selectionModel.sort((e,n)=>this.sortComparator?this.sortComparator(e,n,t):t.indexOf(e)-t.indexOf(n)),this.stateChanges.next()}}_propagateChanges(t){let e=null;e=this.multiple?this.selected.map(t=>t.value):this.selected?this.selected.value:t,this._value=e,this.valueChange.emit(e),this._onChange(e),this.selectionChange.emit(this._getChangeEvent(e)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}_canOpen(){var t;return!this._panelOpen&&!this.disabled&&(null===(t=this.options)||void 0===t?void 0:t.length)>0}focus(t){this._elementRef.nativeElement.focus(t)}_getPanelAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();return this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();let n=(e?e+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}_panelDoneAnimating(t){this.openedChange.emit(t)}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return t.\u0275fac=function(e){return new(e||t)(ea(Mp),ea(tc),ea(xu),ea(zy),ea(kl),ea(Op,8),ea(_z,8),ea(Tz,8),ea(aU,8),ea(WV,10),ni("tabindex"),ea(zX),ea(kg),ea(UX,8))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(PX,5),qc(MX,5),qc(If,5)),2&t){let t;Wc(t=Yc())&&(e.trigger=t.first),Wc(t=Yc())&&(e.panel=t.first),Wc(t=Yc())&&(e._overlayDir=t.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[jo,ye]}),t})(),XX=(()=>{class t extends qX{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(t,e,n){const i=this._getItemHeight();return Math.min(Math.max(0,i*t-e+i/2),n)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(t){const e=lv(t,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===t&&1===e?0:cv((t+e)*n,n,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(t){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(t)}_getChangeEvent(t){return new $X(this,t)}_calculateOverlayOffsetX(){const t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),e=this._viewportRuler.getViewportSize(),n=this._isRtl(),i=this.multiple?56:32;let r;if(this.multiple)r=40;else if(this.disableOptionCentering)r=16;else{let t=this._selectionModel.selected[0]||this.options.first;r=t&&t.group?32:16}n||(r*=-1);const s=0-(t.left+r-(n?i:0)),o=t.right+r-e.width+(n?0:i);s>0?r+=s+8:o>0&&(r-=o+8),this._overlayDir.offsetX=Math.round(r),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(t,e,n){const i=this._getItemHeight(),r=(i-this._triggerRect.height)/2,s=Math.floor(256/i);let o;return this.disableOptionCentering?0:(o=0===this._scrollTop?t*i:this._scrollTop===n?(t-(this._getItemCount()-s))*i+(i-(this._getItemCount()*i-256)%i):e-i/2,Math.round(-1*o-r))}_checkOverlayWithinViewport(t){const e=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,s=Math.abs(this._offsetY),o=Math.min(this._getItemCount()*e,256)-s-this._triggerRect.height;o>r?this._adjustPanelUp(o,r):s>i?this._adjustPanelDown(s,i,t):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(t,e){const n=Math.round(t-e);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(t,e,n){const i=Math.round(t-e);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const t=this._getItemHeight(),e=this._getItemCount(),n=Math.min(e*t,256),i=e*t-n;let r;r=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),r+=lv(r,this.options,this.optionGroups);const s=n/2;this._scrollTop=this._calculateOverlayScroll(r,s,i),this._offsetY=this._calculateOverlayOffsetY(r,s,i),this._checkOverlayWithinViewport(i)}_getOriginBasedOnOption(){const t=this._getItemHeight(),e=(t-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-e+t/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-select"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,WX,5),Xc(n,av,5),Xc(n,iv,5)),2&t){let t;Wc(t=Yc())&&(e.customTrigger=t.first),Wc(t=Yc())&&(e.options=t),Wc(t=Yc())&&(e.optionGroups=t)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(t,e){1&t&&fa("keydown",function(t){return e._handleKeydown(t)})("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()}),2&t&&(Ko("id",e.id)("tabindex",e.tabIndex)("aria-controls",e.panelOpen?e.id+"-panel":null)("aria-expanded",e.panelOpen)("aria-label",e.ariaLabel||null)("aria-required",e.required.toString())("aria-disabled",e.disabled.toString())("aria-invalid",e.errorState)("aria-describedby",e._ariaDescribedby||null)("aria-activedescendant",e._getAriaActiveDescendant()),ja("mat-select-disabled",e.disabled)("mat-select-invalid",e.errorState)("mat-select-required",e.required)("mat-select-empty",e.empty)("mat-select-multiple",e.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[_l([{provide:Qz,useExisting:t},{provide:Jy,useExisting:t}]),jo],ngContentSelectors:FX,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(t,e){if(1&t&&(wa(jX),ra(0,"div",0,1),fa("click",function(){return e.toggle()}),ra(3,"div",2),Jo(4,IX,2,1,"span",3),Jo(5,NX,3,2,"span",4),sa(),ra(6,"div",5),oa(7,"div",6),sa(),sa(),Jo(8,LX,4,14,"ng-template",7),fa("backdropClick",function(){return e.close()})("attach",function(){return e._onAttached()})("detach",function(){return e.close()})),2&t){const t=ta(1);Ko("aria-owns",e.panelOpen?e.id+"-panel":null),ws(3),na("ngSwitch",e.empty),Ko("id",e._valueId),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1),ws(3),na("cdkConnectedOverlayPanelClass",e._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",e._scrollStrategy)("cdkConnectedOverlayOrigin",t)("cdkConnectedOverlayOpen",e.panelOpen)("cdkConnectedOverlayPositions",e._positions)("cdkConnectedOverlayMinWidth",null==e._triggerRect?null:e._triggerRect.width)("cdkConnectedOverlayOffsetY",e._offsetY)}},directives:[Mf,Eh,Ch,If,Oh,mh],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[BX.transformPanelWrap,BX.transformPanel]},changeDetection:0}),t})(),YX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[HX],imports:[[Rh,Rf,uv,Ny],Ip,cU,uv,Ny]}),t})(),KX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,cU,YX]]}),t})();var QX=n(25430),ZX=n(39053),JX=n(26202);const tY=["tooltipTemplate"],eY=["leftOuterSelectionBar"],nY=["rightOuterSelectionBar"],iY=["fullBar"],rY=["selectionBar"],sY=["minHandle"],oY=["maxHandle"],aY=["floorLabel"],lY=["ceilLabel"],cY=["minHandleLabel"],uY=["maxHandleLabel"],hY=["combinedLabel"],dY=["ticksElement"];function pY(t,e){if(1&t&&oa(0,"ng5-slider-tooltip-wrapper",31),2&t){const t=va().$implicit;na("template",va().tooltipTemplate)("tooltip",t.valueTooltip)("placement",t.valueTooltipPlacement)("content",t.value)}}function fY(t,e){1&t&&oa(0,"span",32),2&t&&na("innerHTML",va().$implicit.legend,vr)}const gY=function(t){return{"ng5-slider-selected":t}};function mY(t,e){if(1&t&&(ra(0,"span",27),oa(1,"ng5-slider-tooltip-wrapper",28),Jo(2,pY,1,4,"ng5-slider-tooltip-wrapper",29),Jo(3,fY,1,1,"span",30),sa()),2&t){const t=e.$implicit,n=va();na("ngClass",Tc(7,gY,t.selected))("ngStyle",t.style),ws(1),na("template",n.tooltipTemplate)("tooltip",t.tooltip)("placement",t.tooltipPlacement),ws(1),na("ngIf",null!=t.value),ws(1),na("ngIf",null!=t.legend)}}function bY(t,e){}function yY(t,e){1&t&&Jo(0,bY,0,0,"ng-template")}const vY=function(t,e,n){return{tooltip:t,placement:e,content:n}};function _Y(t,e){if(1&t&&(aa(0),Jo(1,yY,1,0,void 0,1),la()),2&t){const t=va();ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",kc(2,vY,t.tooltip,t.placement,t.content))}}function wY(t,e){if(1&t&&(aa(0),ra(1,"div",2),Za(2),sa(),la()),2&t){const t=va();ws(1),Ko("title",t.tooltip)("data-tooltip-placement",t.placement),ws(1),tl(" ",t.content," ")}}const xY={Min:0,Max:1};xY[xY.Min]="Min",xY[xY.Max]="Max";const SY={Low:0,High:1,Floor:2,Ceil:3,TickValue:4};SY[SY.Low]="Low",SY[SY.High]="High",SY[SY.Floor]="Floor",SY[SY.Ceil]="Ceil",SY[SY.TickValue]="TickValue";class EY{constructor(){this.floor=0,this.ceil=null,this.step=1,this.minRange=null,this.maxRange=null,this.pushRange=!1,this.minLimit=null,this.maxLimit=null,this.translate=null,this.combineLabels=null,this.getLegend=null,this.stepsArray=null,this.bindIndexForStepsArray=!1,this.draggableRange=!1,this.draggableRangeOnly=!1,this.showSelectionBar=!1,this.showSelectionBarEnd=!1,this.showSelectionBarFromValue=null,this.showOuterSelectionBars=!1,this.hidePointerLabels=!1,this.hideLimitLabels=!1,this.autoHideLimitLabels=!0,this.readOnly=!1,this.disabled=!1,this.mouseEventsInterval=50,this.touchEventsInterval=50,this.inputEventsInterval=100,this.outputEventsInterval=100,this.showTicks=!1,this.showTicksValues=!1,this.tickStep=null,this.tickValueStep=1,this.ticksArray=null,this.ticksTooltip=null,this.ticksValuesTooltip=null,this.vertical=!1,this.getSelectionBarColor=null,this.getTickColor=null,this.getPointerColor=null,this.keyboardSupport=!0,this.scale=1,this.enforceStep=!0,this.enforceRange=!0,this.noSwitching=!1,this.onlyBindHandles=!1,this.rightToLeft=!1,this.reversedControls=!1,this.boundPointerLabels=!0,this.logScale=!1,this.customValueToPosition=null,this.customPositionToValue=null,this.precisionLimit=12,this.selectionBarGradient=null,this.ariaLabel=null,this.ariaLabelledBy=null,this.ariaLabelHigh=null,this.ariaLabelledByHigh=null,this.handleDimension=null,this.barDimension=null,this.animate=!0}}class CY{}class OY{static isNullOrUndefined(t){return null==t}static linearValueToPosition(t,e,n){return(t-e)/(n-e)}static logValueToPosition(t,e,n){return((t=Math.log(t))-(e=Math.log(e)))/((n=Math.log(n))-e)}static linearPositionToValue(t,e,n){return t*(n-e)+e}static logPositionToValue(t,e,n){return e=Math.log(e),n=Math.log(n),Math.exp(t*(n-e)+e)}static findStepIndex(t,e){const n=e.map(e=>Math.abs(t-e.value));let i=0;for(let r=0;r{r.events.next(t)};return t.addEventListener(e,s,{passive:!0,capture:!1}),r.teardownCallback=()=>{t.removeEventListener(e,s,{passive:!0,capture:!1})},r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}detachEventListener(t){OY.isNullOrUndefined(t.eventsSubscription)||(t.eventsSubscription.unsubscribe(),t.eventsSubscription=null),OY.isNullOrUndefined(t.events)||(t.events.complete(),t.events=null),OY.isNullOrUndefined(t.teardownCallback)||(t.teardownCallback(),t.teardownCallback=null)}attachEventListener(t,e,n,i){const r=new AY;return r.eventName=e,r.events=new QX.xQ,r.teardownCallback=this.renderer.listen(t,e,t=>{r.events.next(t)}),r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}}let MY=(()=>{class t{constructor(t,e,n){this.elemRef=t,this.renderer=e,this.changeDetectionRef=n,this._position=0,this._dimension=0,this._alwaysHide=!1,this._vertical=!1,this._scale=1,this.opacity=1,this.visibility="visible",this.left="",this.bottom="",this.height="",this.width="",this.eventListeners=[],this.eventListenerHelper=new PY(this.renderer)}get position(){return this._position}get dimension(){return this._dimension}get alwaysHide(){return this._alwaysHide}get vertical(){return this._vertical}get scale(){return this._scale}setAlwaysHide(t){this._alwaysHide=t,this.visibility=t?"hidden":"visible"}hide(){this.opacity=0}show(){this.alwaysHide||(this.opacity=1)}isVisible(){return!this.alwaysHide&&0!==this.opacity}setVertical(t){this._vertical=t,this._vertical?(this.left="",this.width=""):(this.bottom="",this.height="")}setScale(t){this._scale=t}setPosition(t){this._position!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._position=t,this._vertical?this.bottom=Math.round(t)+"px":this.left=Math.round(t)+"px"}calculateDimension(){const t=this.getBoundingClientRect();this._dimension=this.vertical?(t.bottom-t.top)*this.scale:(t.right-t.left)*this.scale}setDimension(t){this._dimension!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._dimension=t,this._vertical?this.height=Math.round(t)+"px":this.width=Math.round(t)+"px"}getBoundingClientRect(){return this.elemRef.nativeElement.getBoundingClientRect()}on(t,e,n){const i=this.eventListenerHelper.attachEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}onPassive(t,e,n){const i=this.eventListenerHelper.attachPassiveEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}off(t){let e,n;OY.isNullOrUndefined(t)?(e=[],n=this.eventListeners):(e=this.eventListeners.filter(e=>e.eventName!==t),n=this.eventListeners.filter(e=>e.eventName===t));for(const i of n)this.eventListenerHelper.detachEventListener(i);this.eventListeners=e}isRefDestroyed(){return OY.isNullOrUndefined(this.changeDetectionRef)||this.changeDetectionRef.destroyed}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderElement",""]],hostVars:12,hostBindings:function(t,e){2&t&&La("opacity",e.opacity)("visibility",e.visibility)("left",e.left)("bottom",e.bottom)("height",e.height)("width",e.width)}}),t})(),IY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this.active=!1,this.role="",this.tabindex="",this.ariaOrientation="",this.ariaLabel="",this.ariaLabelledBy="",this.ariaValueNow="",this.ariaValueText="",this.ariaValueMin="",this.ariaValueMax=""}focus(){this.elemRef.nativeElement.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderHandle",""]],hostVars:11,hostBindings:function(t,e){2&t&&(Ko("role",e.role)("tabindex",e.tabindex)("aria-orientation",e.ariaOrientation)("aria-label",e.ariaLabel)("aria-labelledby",e.ariaLabelledBy)("aria-valuenow",e.ariaValueNow)("aria-valuetext",e.ariaValueText)("aria-valuemin",e.ariaValueMin)("aria-valuemax",e.ariaValueMax),ja("ng5-slider-active",e.active))},features:[jo]}),t})(),DY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this._value=null}get value(){return this._value}setValue(t){let e=!1;!this.alwaysHide&&(OY.isNullOrUndefined(this.value)||this.value.length!==t.length||this.value.length>0&&0===this.dimension)&&(e=!0),this._value=t,this.elemRef.nativeElement.innerHTML=t,e&&this.calculateDimension()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderLabel",""]],features:[jo]}),t})();class RY{constructor(){this.selected=!1,this.style={},this.tooltip=null,this.tooltipPlacement=null,this.value=null,this.valueTooltip=null,this.valueTooltipPlacement=null,this.legend=null}}class NY{constructor(){this.active=!1,this.value=0,this.difference=0,this.position=0,this.lowLimit=0,this.highLimit=0}}class LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue}}class jY extends LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue&&t.forceChange===e.forceChange}}const FY={provide:EV,useExisting:pt(()=>BY),multi:!0};let BY=(()=>{class t{constructor(t,e,n,i){this.renderer=t,this.elementRef=e,this.changeDetectionRef=n,this.zone=i,this.value=null,this.valueChange=new Rc,this.highValue=null,this.highValueChange=new Rc,this.options=new EY,this.userChangeStart=new Rc,this.userChange=new Rc,this.userChangeEnd=new Rc,this.initHasRun=!1,this.inputModelChangeSubject=new QX.xQ,this.inputModelChangeSubscription=null,this.outputModelChangeSubject=new QX.xQ,this.outputModelChangeSubscription=null,this.viewLowValue=null,this.viewHighValue=null,this.viewOptions=new EY,this.handleHalfDimension=0,this.maxHandlePosition=0,this.currentTrackingPointer=null,this.currentFocusPointer=null,this.firstKeyDown=!1,this.touchId=null,this.dragging=new NY,this.sliderElementVerticalClass=!1,this.sliderElementAnimateClass=!1,this.sliderElementDisabledAttr=null,this.barStyle={},this.minPointerStyle={},this.maxPointerStyle={},this.fullBarTransparentClass=!1,this.selectionBarDraggableClass=!1,this.ticksUnderValuesClass=!1,this.intermediateTicks=!1,this.ticks=[],this.eventListenerHelper=null,this.onMoveEventListener=null,this.onEndEventListener=null,this.resizeObserver=null,this.onTouchedCallback=null,this.onChangeCallback=null,this.eventListenerHelper=new PY(this.renderer)}set manualRefresh(t){this.unsubscribeManualRefresh(),this.manualRefreshSubscription=t.subscribe(()=>{setTimeout(()=>this.calculateViewDimensionsAndDetectChanges())})}set triggerFocus(t){this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=t.subscribe(t=>{this.focusPointer(t)})}get range(){return!OY.isNullOrUndefined(this.value)&&!OY.isNullOrUndefined(this.highValue)}get showTicks(){return this.viewOptions.showTicks}ngOnInit(){this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState()}ngAfterViewInit(){this.applyOptions(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval),this.subscribeOutputModelChangeSubject(this.viewOptions.outputEventsInterval),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}ngOnChanges(t){OY.isNullOrUndefined(t.options)||this.onChangeOptions(),(!OY.isNullOrUndefined(t.value)||!OY.isNullOrUndefined(t.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}ngOnDestroy(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}writeValue(t){t instanceof Array?(this.value=t[0],this.highValue=t[1]):this.value=t,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}registerOnChange(t){this.onChangeCallback=t}registerOnTouched(t){this.onTouchedCallback=t}setDisabledState(t){this.viewOptions.disabled=t,this.updateDisabledState()}onResize(t){this.calculateViewDimensionsAndDetectChanges()}subscribeInputModelChangeSubject(t){this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),(0,ZX.filter)(t=>!t.forceChange&&!t.internalChange),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.applyInputModelChange(t))}subscribeOutputModelChangeSubject(t){this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.publishOutputModelChange(t))}subscribeResizeObserver(){TY.isResizeObserverAvailable()&&(this.resizeObserver=new ResizeObserver(()=>this.calculateViewDimensionsAndDetectChanges()),this.resizeObserver.observe(this.elementRef.nativeElement))}unsubscribeResizeObserver(){TY.isResizeObserverAvailable()&&null!==this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}unsubscribeOnMove(){OY.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}unsubscribeOnEnd(){OY.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null)}unsubscribeInputModelChangeSubject(){OY.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}unsubscribeOutputModelChangeSubject(){OY.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}unsubscribeManualRefresh(){OY.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}unsubscribeTriggerFocus(){OY.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}getPointerElement(t){return t===xY.Min?this.minHandleElement:t===xY.Max?this.maxHandleElement:null}getCurrentTrackingValue(){return this.currentTrackingPointer===xY.Min?this.viewLowValue:this.currentTrackingPointer===xY.Max?this.viewHighValue:null}modelValueToViewValue(t){return OY.isNullOrUndefined(t)?NaN:OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+t:OY.findStepIndex(+t,this.viewOptions.stepsArray)}viewValueToModelValue(t){return OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?t:this.getStepValue(t)}getStepValue(t){const e=this.viewOptions.stepsArray[t];return OY.isNullOrUndefined(e)?NaN:e.value}applyViewChange(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!0})}applyInputModelChange(t){const e=this.normaliseModelValues(t),n=!LY.compare(t,e);n&&(this.value=e.value,this.highValue=e.highValue),this.viewLowValue=this.modelValueToViewValue(e.value),this.viewHighValue=this.range?this.modelValueToViewValue(e.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:e.value,highValue:e.highValue,forceChange:n,userEventInitiated:!1})}publishOutputModelChange(t){const e=()=>{this.valueChange.emit(t.value),this.range&&this.highValueChange.emit(t.highValue),OY.isNullOrUndefined(this.onChangeCallback)||this.onChangeCallback(this.range?[t.value,t.highValue]:t.value),OY.isNullOrUndefined(this.onTouchedCallback)||this.onTouchedCallback(this.range?[t.value,t.highValue]:t.value)};t.userEventInitiated?(e(),this.userChange.emit(this.getChangeContext())):setTimeout(()=>{e()})}normaliseModelValues(t){const e=new LY;if(e.value=t.value,e.highValue=t.highValue,this.viewOptions.enforceStep&&(e.value=this.roundStep(e.value),this.range&&(e.highValue=this.roundStep(e.highValue))),!OY.isNullOrUndefined(this.viewOptions.stepsArray)||!this.viewOptions.enforceRange)return e;if(e.value=kY.clampToRange(e.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(e.highValue=kY.clampToRange(e.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&t.value>t.highValue)if(this.viewOptions.noSwitching)e.value=e.highValue;else{const n=t.value;e.value=t.highValue,e.highValue=n}return e}renormaliseModelValues(){const t={value:this.value,highValue:this.highValue},e=this.normaliseModelValues(t);LY.compare(e,t)||(this.value=e.value,this.highValue=e.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!0,userEventInitiated:!1}))}onChangeOptions(){if(!this.initHasRun)return;const t=this.viewOptions.inputEventsInterval,e=this.viewOptions.outputEventsInterval;this.applyOptions(),t!==this.viewOptions.inputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval)),e!==this.viewOptions.outputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.outputEventsInterval)),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider()}applyOptions(){if(this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!OY.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!OY.isNullOrUndefined(this.viewOptions.tickStep)||!OY.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),OY.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),OY.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=(t,e)=>t+" - "+e),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}applyStepsArrayOptions(){this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(this.viewOptions.bindIndexForStepsArray?this.getStepValue(t):t)),this.viewOptions.getLegend=t=>this.viewOptions.stepsArray[t].legend}applyFloorCeilOptions(){if(OY.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),OY.isNullOrUndefined(this.viewOptions.ceil)||OY.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(t))}resetSlider(){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.unbindEvents(),this.manageEventsBindings(),this.updateDisabledState(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}focusPointer(t){t!==xY.Min&&t!==xY.Max&&(t=xY.Min),t===xY.Min?this.minHandleElement.focus():this.range&&t===xY.Max&&this.maxHandleElement.focus()}refocusPointerIfNeeded(){OY.isNullOrUndefined(this.currentFocusPointer)||(this.onPointerFocus(this.currentFocusPointer),this.getPointerElement(this.currentFocusPointer).focus())}manageElementsStyle(){this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);const t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(()=>{this.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(()=>{this.sliderElementAnimateClass=this.viewOptions.animate})}manageEventsBindings(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}updateDisabledState(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}updateVerticalState(){this.sliderElementVerticalClass=this.viewOptions.vertical;for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.setVertical(this.viewOptions.vertical)}updateScale(){for(const t of this.getAllSliderElements())t.setScale(this.viewOptions.scale)}getAllSliderElements(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}initHandles(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}addAccessibility(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.viewOptions.vertical&&(this.minHandleElement.ariaOrientation="vertical"),OY.isNullOrUndefined(this.viewOptions.ariaLabel)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical?"vertical":"horizontal",OY.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}updateAriaAttributes(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,SY.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,SY.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}calculateViewDimensions(){OY.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);const t=this.minHandleElement.dimension;this.handleHalfDimension=t/2,OY.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-t,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}calculateViewDimensionsAndDetectChanges(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}isRefDestroyed(){return this.changeDetectionRef.destroyed}updateTicksScale(){if(!this.viewOptions.showTicks)return;const t=OY.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,e=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();const n=t.map(t=>{let n=this.valueToPosition(t);this.viewOptions.vertical&&(n=this.maxHandlePosition-n);const i=e+"("+Math.round(n)+"px)",r=new RY;if(r.selected=this.isTickSelected(t),r.style={"-webkit-transform":i,"-moz-transform":i,"-o-transform":i,"-ms-transform":i,transform:i},r.selected&&!OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)&&(r.style["background-color"]=this.getSelectionBarColor()),!r.selected&&!OY.isNullOrUndefined(this.viewOptions.getTickColor)&&(r.style["background-color"]=this.getTickColor(t)),OY.isNullOrUndefined(this.viewOptions.ticksTooltip)||(r.tooltip=this.viewOptions.ticksTooltip(t),r.tooltipPlacement=this.viewOptions.vertical?"right":"top"),this.viewOptions.showTicksValues&&t%this.viewOptions.tickValueStep==0&&(r.value=this.getDisplayValue(t,SY.TickValue),OY.isNullOrUndefined(this.viewOptions.ticksValuesTooltip)||(r.valueTooltip=this.viewOptions.ticksValuesTooltip(t),r.valueTooltipPlacement=this.viewOptions.vertical?"right":"top")),!OY.isNullOrUndefined(this.viewOptions.getLegend)){const e=this.viewOptions.getLegend(t);OY.isNullOrUndefined(e)||(r.legend=e)}return r});if(OY.isNullOrUndefined(this.ticks)||this.ticks.length!==n.length)this.ticks=n;else for(let i=0;i=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&t<=this.viewLowValue)return!0}else{const e=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>e&&t>=e&&t<=this.viewLowValue)return!0;if(this.viewLowValue=this.viewLowValue)return!0}return!!(this.range&&t>=this.viewLowValue&&t<=this.viewHighValue)}updateFloorLabel(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,SY.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}updateCeilLabel(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,SY.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}updateHandles(t,e){t===xY.Min?this.updateLowHandle(e):t===xY.Max&&this.updateHighHandle(e),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}getHandleLabelPos(t,e){const n=t===xY.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,i=e-n/2+this.handleHalfDimension,r=this.fullBarElement.dimension-n;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&t===xY.Min||!this.viewOptions.rightToLeft&&t===xY.Max?Math.min(i,r):Math.min(Math.max(i,0),r):i}updateLowHandle(t){this.minHandleElement.setPosition(t),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,SY.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Min,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(xY.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateHighHandle(t){this.maxHandleElement.setPosition(t),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,SY.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Max,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(xY.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateFloorAndCeilLabelsVisibility(){if(this.viewOptions.hidePointerLabels)return;let t=!1,e=!1;const n=this.isLabelBelowFloorLabel(this.minHandleLabelElement),i=this.isLabelAboveCeilLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),s=this.isLabelBelowFloorLabel(this.combinedLabelElement),o=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(n?(t=!0,this.floorLabelElement.hide()):(t=!1,this.floorLabelElement.show()),i?(e=!0,this.ceilLabelElement.hide()):(e=!1,this.ceilLabelElement.show()),this.range){const i=this.combinedLabelElement.isVisible()?o:r,a=this.combinedLabelElement.isVisible()?s:n;i?this.ceilLabelElement.hide():e||this.ceilLabelElement.show(),a?this.floorLabelElement.hide():t||this.floorLabelElement.show()}}isLabelBelowFloorLabel(t){const e=t.position,n=this.floorLabelElement.position;return this.viewOptions.rightToLeft?e+t.dimension>=n-2:e<=n+this.floorLabelElement.dimension+2}isLabelAboveCeilLabel(t){const e=t.position,n=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?e<=n+this.ceilLabelElement.dimension+2:e+t.dimension>=n-2}updateSelectionBar(){let t=0,e=0;const n=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,i=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)e=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),t=i;else if(OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))n?(e=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),t=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(e=this.minHandleElement.position+this.handleHalfDimension,t=0);else{const n=this.viewOptions.showSelectionBarFromValue,i=this.valueToPosition(n);(this.viewOptions.rightToLeft?this.viewLowValue<=n:this.viewLowValue>n)?(e=this.minHandleElement.position-i,t=i+this.handleHalfDimension):(e=i-this.minHandleElement.position,t=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(e),this.selectionBarElement.setPosition(t),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(t),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.leftOuterSelectionBarElement.setPosition(t+e)):(this.leftOuterSelectionBarElement.setDimension(t),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.rightOuterSelectionBarElement.setPosition(t+e))),OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!OY.isNullOrUndefined(this.viewOptions.selectionBarGradient)){const i=OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),r=i-t>0&&!n||i-t<=0&&n;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?r?"bottom":"top":r?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(i+e+t+(r?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=i-t+(r?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{const t=this.getSelectionBarColor();this.barStyle={backgroundColor:t}}}getSelectionBarColor(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}getPointerColor(t){return this.viewOptions.getPointerColor(t===xY.Max?this.highValue:this.value,t)}getTickColor(t){return this.viewOptions.getTickColor(t)}updateCombinedLabel(){let t=null;if(t=this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position,t){const t=this.getDisplayValue(this.viewLowValue,SY.Low),e=this.getDisplayValue(this.viewHighValue,SY.High),n=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(e,t):this.viewOptions.combineLabels(t,e);this.combinedLabelElement.setValue(n);const i=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(i),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}getDisplayValue(t,e){return!OY.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(t=this.getStepValue(t)),this.viewOptions.translate(t,e)}roundStep(t,e){const n=OY.isNullOrUndefined(e)?this.viewOptions.step:e;let i=kY.roundToPrecisionLimit((t-this.viewOptions.floor)/n,this.viewOptions.precisionLimit);return i=Math.round(i)*n,kY.roundToPrecisionLimit(this.viewOptions.floor+i,this.viewOptions.precisionLimit)}valueToPosition(t){let e=OY.linearValueToPosition;OY.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(e=OY.logValueToPosition):e=this.viewOptions.customValueToPosition;let n=e(t=kY.clampToRange(t,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(n)&&(n=0),this.viewOptions.rightToLeft&&(n=1-n),n*this.maxHandlePosition}positionToValue(t){let e=t/this.maxHandlePosition;this.viewOptions.rightToLeft&&(e=1-e);let n=OY.linearPositionToValue;OY.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(n=OY.logPositionToValue):n=this.viewOptions.customPositionToValue;const i=n(e,this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(i)?0:i}getEventXY(t,e){if(t instanceof MouseEvent)return this.viewOptions.vertical?t.clientY:t.clientX;let n=0;const i=t.touches;if(!OY.isNullOrUndefined(e))for(let r=0;ri?xY.Max:this.viewOptions.rightToLeft?e>this.minHandleElement.position?xY.Min:xY.Max:ethis.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.on("mousedown",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.on("mousedown",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.on("mousedown",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.on("mousedown",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0,!0)))),this.viewOptions.onlyBindHandles||this.selectionBarElement.onPassive("touchstart",e=>this.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.onPassive("touchstart",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.onPassive("touchstart",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.onPassive("touchstart",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.onPassive("touchstart",t=>this.onStart(null,t,!1,!1,!0,!0)))),this.viewOptions.keyboardSupport&&(this.minHandleElement.on("focus",()=>this.onPointerFocus(xY.Min)),this.range&&this.maxHandleElement.on("focus",()=>this.onPointerFocus(xY.Max)))}unbindEvents(){this.unsubscribeOnMove(),this.unsubscribeOnEnd();for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.off()}onBarStart(t,e,n,i,r,s,o){e?this.onDragStart(t,n,i,r):this.onStart(t,n,i,r,s,o)}onStart(t,e,n,i,r,s){e.stopPropagation(),(!TY.isTouchEvent(e)||!JX.Z.hasSupport)&&e.preventDefault(),this.calculateViewDimensions(),OY.isNullOrUndefined(t)&&(t=this.getNearestHandle(e)),this.currentTrackingPointer=t;const o=this.getPointerElement(t);if(o.active=!0,this.viewOptions.keyboardSupport&&o.focus(),n){this.unsubscribeOnMove();const t=t=>this.dragging.active?this.onDragMove(t):this.onMove(t);this.onMoveEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchmove",t,this.viewOptions.touchEventsInterval):this.eventListenerHelper.attachEventListener(document,"mousemove",t,this.viewOptions.mouseEventsInterval)}if(i){this.unsubscribeOnEnd();const t=t=>this.onEnd(t);this.onEndEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchend",t):this.eventListenerHelper.attachEventListener(document,"mouseup",t)}this.userChangeStart.emit(this.getChangeContext()),TY.isTouchEvent(e)&&!OY.isNullOrUndefined(e.changedTouches)&&OY.isNullOrUndefined(this.touchId)&&(this.touchId=e.changedTouches[0].identifier),r&&this.onMove(e,!0),s&&this.onEnd(e)}onMove(t,e){let n=null;if(TY.isTouchEvent(t)){const e=t.changedTouches;for(let t=0;t=this.maxHandlePosition?r=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(r=this.positionToValue(i),r=e&&!OY.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(r,this.viewOptions.tickStep):this.roundStep(r)),this.positionTrackingHandle(r)}onEnd(t){TY.isTouchEvent(t)&&t.changedTouches[0].identifier!==this.touchId||(this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext()))}onPointerFocus(t){const e=this.getPointerElement(t);e.on("blur",()=>this.onPointerBlur(e)),e.on("keydown",t=>this.onKeyboardEvent(t)),e.on("keyup",()=>this.onKeyUp()),e.active=!0,this.currentTrackingPointer=t,this.currentFocusPointer=t,this.firstKeyDown=!0}onKeyUp(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}onPointerBlur(t){t.off("blur"),t.off("keydown"),t.off("keyup"),t.active=!1,OY.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}getKeyActions(t){const e=this.viewOptions.ceil-this.viewOptions.floor;let n=t+this.viewOptions.step,i=t-this.viewOptions.step,r=t+e/10,s=t-e/10;this.viewOptions.reversedControls&&(n=t-this.viewOptions.step,i=t+this.viewOptions.step,r=t-e/10,s=t+e/10);const o={UP:n,DOWN:i,LEFT:i,RIGHT:n,PAGEUP:r,PAGEDOWN:s,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(o.LEFT=n,o.RIGHT=i,this.viewOptions.vertical&&(o.UP=i,o.DOWN=n)),o}onKeyboardEvent(t){const e=this.getCurrentTrackingValue(),n=OY.isNullOrUndefined(t.keyCode)?t.which:t.keyCode,i=this.getKeyActions(e)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[n]];if(OY.isNullOrUndefined(i)||OY.isNullOrUndefined(this.currentTrackingPointer))return;t.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));const r=kY.clampToRange(i,this.viewOptions.floor,this.viewOptions.ceil),s=this.roundStep(r);if(this.viewOptions.draggableRangeOnly){const t=this.viewHighValue-this.viewLowValue;let e,n;this.currentTrackingPointer===xY.Min?(e=s,n=s+t,n>this.viewOptions.ceil&&(n=this.viewOptions.ceil,e=n-t)):this.currentTrackingPointer===xY.Max&&(n=s,e=s-t,e=this.maxHandlePosition-n;let a,l;if(e<=i){if(0===r.position)return;a=this.getMinValue(e,!0,!1),l=this.getMaxValue(e,!0,!1)}else if(o){if(s.position===this.maxHandlePosition)return;l=this.getMaxValue(e,!0,!0),a=this.getMinValue(e,!0,!0)}else a=this.getMinValue(e,!1,!1),l=this.getMaxValue(e,!1,!1);this.positionTrackingBar(a,l)}positionTrackingBar(t,e){!OY.isNullOrUndefined(this.viewOptions.minLimit)&&tthis.viewOptions.maxLimit&&(t=kY.roundToPrecisionLimit((e=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=t,this.viewHighValue=e,this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(t)),this.updateHandles(xY.Max,this.valueToPosition(e))}positionTrackingHandle(t){t=this.applyMinMaxLimit(t),this.range&&(this.viewOptions.pushRange?t=this.applyPushRange(t):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===xY.Min&&t>this.viewHighValue?t=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===xY.Max&&tthis.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(xY.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=xY.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===xY.Max&&tthis.viewOptions.maxLimit?this.viewOptions.maxLimit:t}applyMinMaxRange(t){const e=Math.abs(t-(this.currentTrackingPointer===xY.Min?this.viewHighValue:this.viewLowValue));if(!OY.isNullOrUndefined(this.viewOptions.minRange)&&ethis.viewOptions.maxRange){if(this.currentTrackingPointer===xY.Min)return kY.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===xY.Max)return kY.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return t}applyPushRange(t){const e=this.currentTrackingPointer===xY.Min?this.viewHighValue-t:t-this.viewLowValue,n=OY.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,i=this.viewOptions.maxRange;return ei&&(this.currentTrackingPointer===xY.Min?(this.viewHighValue=kY.roundToPrecisionLimit(t+i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===xY.Max&&(this.viewLowValue=kY.roundToPrecisionLimit(t-i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),t}getChangeContext(){const t=new CY;return t.pointerType=this.currentTrackingPointer,t.value=+this.value,this.range&&(t.highValue=+this.highValue),t}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl),ea(tc),ea(xu))},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,tY,5),2&t){let t;Wc(t=Yc())&&(e.tooltipTemplate=t.first)}},viewQuery:function(t,e){if(1&t&&(qc(eY,5,MY),qc(nY,5,MY),qc(iY,5,MY),qc(rY,5,MY),qc(sY,5,IY),qc(oY,5,IY),qc(aY,5,DY),qc(lY,5,DY),qc(cY,5,DY),qc(uY,5,DY),qc(hY,5,DY),qc(dY,5,MY)),2&t){let t;Wc(t=Yc())&&(e.leftOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.rightOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.fullBarElement=t.first),Wc(t=Yc())&&(e.selectionBarElement=t.first),Wc(t=Yc())&&(e.minHandleElement=t.first),Wc(t=Yc())&&(e.maxHandleElement=t.first),Wc(t=Yc())&&(e.floorLabelElement=t.first),Wc(t=Yc())&&(e.ceilLabelElement=t.first),Wc(t=Yc())&&(e.minHandleLabelElement=t.first),Wc(t=Yc())&&(e.maxHandleLabelElement=t.first),Wc(t=Yc())&&(e.combinedLabelElement=t.first),Wc(t=Yc())&&(e.ticksElement=t.first)}},hostAttrs:[1,"ng5-slider"],hostVars:5,hostBindings:function(t,e){1&t&&fa("resize",function(t){return e.onResize(t)},!1,Mr),2&t&&(Ko("disabled",e.sliderElementDisabledAttr),ja("vertical",e.sliderElementVerticalClass)("animate",e.sliderElementAnimateClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},features:[_l([FY]),ye],decls:29,vars:13,consts:[["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-left-out-selection"],["leftOuterSelectionBar",""],[1,"ng5-slider-span","ng5-slider-bar"],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-right-out-selection"],["rightOuterSelectionBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-full-bar"],["fullBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-selection-bar"],["selectionBar",""],[1,"ng5-slider-span","ng5-slider-bar","ng5-slider-selection",3,"ngStyle"],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-min",3,"ngStyle"],["minHandle",""],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-max",3,"ngStyle"],["maxHandle",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-floor"],["floorLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-ceil"],["ceilLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-value"],["minHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-high"],["maxHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-combined"],["combinedLabel",""],["ng5SliderElement","",1,"ng5-slider-ticks",3,"hidden"],["ticksElement",""],["class","ng5-slider-tick",3,"ngClass","ngStyle",4,"ngFor","ngForOf"],[1,"ng5-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],["class","ng5-slider-span ng5-slider-tick-value",3,"template","tooltip","placement","content",4,"ngIf"],["class","ng5-slider-span ng5-slider-tick-legend",3,"innerHTML",4,"ngIf"],[1,"ng5-slider-span","ng5-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ng5-slider-span","ng5-slider-tick-legend",3,"innerHTML"]],template:function(t,e){1&t&&(ra(0,"span",0,1),oa(2,"span",2),sa(),ra(3,"span",3,4),oa(5,"span",2),sa(),ra(6,"span",5,6),oa(8,"span",2),sa(),ra(9,"span",7,8),oa(11,"span",9),sa(),oa(12,"span",10,11),oa(14,"span",12,13),oa(16,"span",14,15),oa(18,"span",16,17),oa(20,"span",18,19),oa(22,"span",20,21),oa(24,"span",22,23),ra(26,"span",24,25),Jo(28,mY,4,9,"span",26),sa()),2&t&&(ws(6),ja("ng5-slider-transparent",e.fullBarTransparentClass),ws(3),ja("ng5-slider-draggable",e.selectionBarDraggableClass),ws(2),na("ngStyle",e.barStyle),ws(1),na("ngStyle",e.minPointerStyle),ws(2),La("display",e.range?"inherit":"none"),na("ngStyle",e.maxPointerStyle),ws(12),ja("ng5-slider-ticks-values-under",e.ticksUnderValuesClass),na("hidden",!e.showTicks),ws(2),na("ngForOf",e.ticks))},directives:function(){return[MY,Th,IY,DY,yh,mh,VY,_h]},styles:[".ng5-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y} .ng5-slider.with-legend{margin-bottom:40px} .ng5-slider[disabled]{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ng5-slider[disabled] .ng5-slider-draggable{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-selection{background:#8b91a2} .ng5-slider[disabled] .ng5-slider-tick{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-tick.ng5-slider-selected{background:#8b91a2} .ng5-slider .ng5-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ng5-slider .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider .ng5-slider-bar-wrapper{left:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ng5-slider .ng5-slider-draggable{cursor:move} .ng5-slider .ng5-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;border-radius:2px} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-transparent .ng5-slider-bar{background:0 0} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar{background:#df002d} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar{background:#03a688} .ng5-slider .ng5-slider-selection{z-index:2;background:#0db9f0;border-radius:2px} .ng5-slider .ng5-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;border-radius:16px} .ng5-slider .ng5-slider-pointer:after{content:'';width:8px;height:8px;position:absolute;top:12px;left:12px;border-radius:4px;background:#fff} .ng5-slider .ng5-slider-pointer:hover:after{background-color:#fff} .ng5-slider .ng5-slider-pointer.ng5-slider-active{z-index:4} .ng5-slider .ng5-slider-pointer.ng5-slider-active:after{background-color:#451aff} .ng5-slider .ng5-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ng5-slider .ng5-slider-bubble.ng5-slider-limit{color:#55637d} .ng5-slider .ng5-slider-ticks{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ng5-slider .ng5-slider-ticks-values-under .ng5-slider-tick-value{top:auto;bottom:-36px} .ng5-slider .ng5-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ng5-slider .ng5-slider-tick.ng5-slider-selected{background:#0db9f0} .ng5-slider .ng5-slider-tick-value{position:absolute;top:-34px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)} .ng5-slider .ng5-slider-tick-legend{position:absolute;top:24px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);max-width:50px;white-space:normal} .ng5-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;-ms-touch-action:pan-x;touch-action:pan-x} .ng5-slider.vertical .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider.vertical .ng5-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ng5-slider.vertical .ng5-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ng5-slider.vertical .ng5-slider-pointer{left:-14px!important;top:auto;bottom:0} .ng5-slider.vertical .ng5-slider-bubble{left:16px!important;bottom:0} .ng5-slider.vertical .ng5-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ng5-slider.vertical .ng5-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ng5-slider.vertical .ng5-slider-tick-value{left:24px;top:auto;-webkit-transform:translate(0,-28%);transform:translate(0,-28%)} .ng5-slider.vertical .ng5-slider-tick-legend{top:auto;right:24px;-webkit-transform:translate(0,-28%);transform:translate(0,-28%);max-width:none;white-space:nowrap} .ng5-slider.vertical .ng5-slider-ticks-values-under .ng5-slider-tick-value{bottom:auto;left:auto;right:24px} .ng5-slider *{-webkit-transition:none;transition:none} .ng5-slider.animate .ng5-slider-bar-wrapper{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-selection{-webkit-transition:background-color linear .3s;transition:background-color linear .3s} .ng5-slider.animate .ng5-slider-pointer{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-limit{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-combined{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-tick{-webkit-transition:background-color linear .3s;transition:background-color linear .3s}"]}),t})(),VY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},decls:2,vars:2,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ng5-slider-inner-tooltip"]],template:function(t,e){1&t&&(Jo(0,_Y,2,6,"ng-container",0),Jo(1,wY,3,3,"ng-container",0)),2&t&&(na("ngIf",e.template),ws(1),na("ngIf",!e.template))},directives:[_h,kh],styles:[".ng5-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]}),t})(),zY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),UY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Rf,Hp,cU,YX,zY]]}),t})(),HY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,AX,KX,UY,x_,f_]]}),t})(),$Y=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,HY]]}),t})(),GY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Az,Pz,kU,cU,jU,f_]]}),t})();class WY extends class{constructor(){this.expansionModel=new kp(!0)}toggle(t){this.expansionModel.toggle(this._trackByValue(t))}expand(t){this.expansionModel.select(this._trackByValue(t))}collapse(t){this.expansionModel.deselect(this._trackByValue(t))}isExpanded(t){return this.expansionModel.isSelected(this._trackByValue(t))}toggleDescendants(t){this.expansionModel.isSelected(this._trackByValue(t))?this.collapseDescendants(t):this.expandDescendants(t)}collapseAll(){this.expansionModel.clear()}expandDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.select(...e.map(t=>this._trackByValue(t)))}collapseDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.deselect(...e.map(t=>this._trackByValue(t)))}_trackByValue(t){return this.trackBy?this.trackBy(t):t}}{constructor(t,e,n){super(),this.getLevel=t,this.isExpandable=e,this.options=n,this.options&&(this.trackBy=this.options.trackBy)}getDescendants(t){const e=[];for(let n=this.dataNodes.indexOf(t)+1;nthis._trackByValue(t)))}}const qY=new oi("CDK_TREE_NODE_OUTLET_NODE");let XY=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeOutlet",""]]}),t})();class YY{constructor(t){this.$implicit=t}}let KY=(()=>{class t{constructor(t){this.template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeDef",""]],inputs:{when:["cdkTreeNodeDefWhen","when"]}}),t})(),QY=(()=>{class t{constructor(t,e){this._differs=t,this._changeDetectorRef=e,this._onDestroy=new P,this._levels=new Map,this.viewChange=new Uf({start:0,end:Number.MAX_VALUE})}get dataSource(){return this._dataSource}set dataSource(t){this._dataSource!==t&&this._switchDataSource(t)}ngOnInit(){this._dataDiffer=this._differs.find([]).create(this.trackBy)}ngOnDestroy(){this._nodeOutlet.viewContainer.clear(),this.viewChange.complete(),this._onDestroy.next(),this._onDestroy.complete(),this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null)}ngAfterContentChecked(){const t=this._nodeDefs.filter(t=>!t.when);this._defaultNodeDef=t[0],this.dataSource&&this._nodeDefs&&!this._dataSubscription&&this._observeRenderChanges()}_switchDataSource(t){this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null),t||this._nodeOutlet.viewContainer.clear(),this._dataSource=t,this._nodeDefs&&this._observeRenderChanges()}_observeRenderChanges(){let t;!function(t){return t&&"function"==typeof t.connect}(this._dataSource)?Dd(this._dataSource)?t=this._dataSource:Array.isArray(this._dataSource)&&(t=wd(this._dataSource)):t=this._dataSource.connect(this),t&&(this._dataSubscription=t.pipe(Wd(this._onDestroy)).subscribe(t=>this.renderNodeChanges(t)))}renderNodeChanges(t,e=this._dataDiffer,n=this._nodeOutlet.viewContainer,i){const r=e.diff(t);!r||(r.forEachOperation((e,r,s)=>{if(null==e.previousIndex)this.insertNode(t[s],s,n,i);else if(null==s)n.remove(r),this._levels.delete(e.item);else{const t=n.get(r);n.move(t,s)}}),this._changeDetectorRef.detectChanges())}_getNodeDef(t,e){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(n=>n.when&&n.when(e,t))||this._defaultNodeDef}insertNode(t,e,n,i){const r=this._getNodeDef(t,e),s=new YY(t);s.level=this.treeControl.getLevel?this.treeControl.getLevel(t):void 0!==i&&this._levels.has(i)?this._levels.get(i)+1:0,this._levels.set(t,s.level),(n||this._nodeOutlet.viewContainer).createEmbeddedView(r.template,s,e),ZY.mostRecentTreeNode&&(ZY.mostRecentTreeNode.data=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["cdk-tree"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,KY,5),2&t){let t;Wc(t=Yc())&&(e._nodeDefs=t)}},viewQuery:function(t,e){if(1&t&&qc(XY,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[XY],encapsulation:2}),t})(),ZY=(()=>{class t{constructor(e,n){this._elementRef=e,this._tree=n,this._destroyed=new P,this._dataChanges=new P,t.mostRecentTreeNode=this,this._elementRef.nativeElement.classList.add("cdk-tree-node"),this.role="treeitem"}get role(){return"treeitem"}set role(t){this._elementRef.nativeElement.setAttribute("role",t)}get data(){return this._data}set data(t){t!==this._data&&(this._data=t,this._setRoleFromData(),this._dataChanges.next())}get isExpanded(){return this._tree.treeControl.isExpanded(this._data)}_setExpanded(t){this._isAriaExpanded=t,this._elementRef.nativeElement.setAttribute("aria-expanded",`${t}`)}get level(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}ngOnInit(){this._parentNodeAriaLevel=function(t){let e=t.parentElement;for(;e&&!JY(e);)e=e.parentElement;return e?e.classList.contains("cdk-nested-tree-node")?bd(e.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level",`${this.level+1}`)}ngDoCheck(){this.isExpanded!=this._isAriaExpanded&&this._setExpanded(this.isExpanded)}ngOnDestroy(){t.mostRecentTreeNode===this&&(t.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}focus(){this._elementRef.nativeElement.focus()}_setRoleFromData(){this.role="treeitem"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY))},t.\u0275dir=se({type:t,selectors:[["cdk-tree-node"]],inputs:{role:"role"},exportAs:["cdkTreeNode"]}),t.mostRecentTreeNode=null,t})();function JY(t){const e=t.classList;return!(!(null==e?void 0:e.contains("cdk-nested-tree-node"))&&!(null==e?void 0:e.contains("cdk-tree")))}const tK=/([A-Za-z%]+)$/;let eK=(()=>{class t{constructor(t,e,n,i){this._treeNode=t,this._tree=e,this._element=n,this._dir=i,this._destroyed=new P,this.indentUnits="px",this._indent=40,this._setPadding(),i&&i.change.pipe(Wd(this._destroyed)).subscribe(()=>this._setPadding(!0)),t._dataChanges.subscribe(()=>this._setPadding())}get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_paddingIndent(){const t=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,e=null==this._level?t:this._level;return"number"==typeof e?`${e*this._indent}${this.indentUnits}`:null}_setPadding(t=!1){const e=this._paddingIndent();if(e!==this._currentPadding||t){const t=this._element.nativeElement,n=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",i="paddingLeft"===n?"paddingRight":"paddingLeft";t.style[n]=e||"",t.style[i]="",this._currentPadding=e}}_setLevelInput(t){this._level=bd(t,null),this._setPadding()}_setIndentInput(t){let e=t,n="px";if("string"==typeof t){const i=t.split(tK);e=i[0],n=i[1]||n}this.indentUnits=n,this._indent=bd(e),this._setPadding()}}return t.\u0275fac=function(e){return new(e||t)(ea(ZY),ea(QY),ea(kl),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),t})(),nK=(()=>{class t{constructor(t,e){this._tree=t,this._treeNode=e,this._recursive=!1}get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}_toggle(t){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),t.stopPropagation()}}return t.\u0275fac=function(e){return new(e||t)(ea(QY),ea(ZY))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(t,e){1&t&&fa("click",function(t){return e._toggle(t)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),t})(),iK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const rK=By(Ly(ZY));let sK=(()=>{class t extends rK{constructor(t,e,n){super(t,e),this.tabIndex=Number(n)||0,t.nativeElement.classList.add("mat-tree-node")}ngOnInit(){super.ngOnInit()}ngDoCheck(){super.ngDoCheck()}ngOnDestroy(){super.ngOnDestroy()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY),ni("tabindex"))},t.\u0275dir=se({type:t,selectors:[["mat-tree-node"]],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[_l([{provide:ZY,useExisting:t}]),jo]}),t})(),oK=(()=>{class t extends KY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[_l([{provide:KY,useExisting:t}]),jo]}),t})(),aK=(()=>{class t extends eK{get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[_l([{provide:eK,useExisting:t}]),jo]}),t})(),lK=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","matTreeNodeOutlet",""]],features:[_l([{provide:XY,useExisting:t}])]}),t})(),cK=(()=>{class t extends QY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-tree"]],viewQuery:function(t,e){if(1&t&&qc(lK,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"mat-tree","cdk-tree"],exportAs:["matTree"],features:[_l([{provide:QY,useExisting:t}]),jo],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[lK],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),t})(),uK=(()=>{class t extends nK{get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[_l([{provide:nK,useExisting:t}]),jo]}),t})(),hK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[iK,Ny],Ny]}),t})();class dK{constructor(t,e,n,i){this.transformFunction=t,this.getLevel=e,this.isExpandable=n,this.getChildren=i}_flattenNode(t,e,n,i){const r=this.transformFunction(t,e);if(n.push(r),this.isExpandable(r)){const r=this.getChildren(t);r&&(Array.isArray(r)?this._flattenChildren(r,e,n,i):r.pipe(Gp(1)).subscribe(t=>{this._flattenChildren(t,e,n,i)}))}return n}_flattenChildren(t,e,n,i){t.forEach((r,s)=>{let o=i.slice();o.push(s!=t.length-1),this._flattenNode(r,e+1,n,o)})}flattenNodes(t){let e=[];return t.forEach(t=>this._flattenNode(t,0,e,[])),e}expandFlattenedNodes(t,e){let n=[],i=[];return i[0]=!0,t.forEach(t=>{let r=!0;for(let e=0;e<=this.getLevel(t);e++)r=r&&i[e];r&&n.push(t),this.isExpandable(t)&&(i[this.getLevel(t)+1]=e.isExpanded(t))}),n}}class pK extends class{}{constructor(t,e,n){super(),this._treeControl=t,this._treeFlattener=e,this._flattenedData=new Uf([]),this._expandedData=new Uf([]),this._data=new Uf([]),n&&(this.data=n)}get data(){return this._data.value}set data(t){this._data.next(t),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}connect(t){return Q(t.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(D(()=>(this._expandedData.next(this._treeFlattener.expandFlattenedNodes(this._flattenedData.value,this._treeControl)),this._expandedData.value)))}disconnect(){}}let fK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,rw,hK,tq]]}),t})(),gK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK]]}),t})(),mK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK,gK],GY,fK,gK]}),t})();function bK(t){return null!==t&&"object"==typeof t&&"constructor"in t&&t.constructor===Object}function yK(t,e){void 0===t&&(t={}),void 0===e&&(e={}),Object.keys(e).forEach(function(n){void 0===t[n]?t[n]=e[n]:bK(e[n])&&bK(t[n])&&Object.keys(e[n]).length>0&&yK(t[n],e[n])})}var vK={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function _K(){var t="undefined"!=typeof document?document:{};return yK(t,vK),t}var wK={document:vK,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(t){return"undefined"==typeof setTimeout?(t(),null):setTimeout(t,0)},cancelAnimationFrame:function(t){"undefined"!=typeof setTimeout&&clearTimeout(t)}};function xK(){var t="undefined"!=typeof window?window:{};return yK(t,wK),t}function SK(t){return(SK=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function EK(t,e){return(EK=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function CK(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(m){return!1}}function OK(t,e,n){return(OK=CK()?Reflect.construct:function(t,e,n){var i=[null];i.push.apply(i,e);var r=new(Function.bind.apply(t,i));return n&&EK(r,n.prototype),r}).apply(null,arguments)}function TK(t){var e="function"==typeof Map?new Map:void 0;return(TK=function(t){if(null===t||!function(t){return-1!==Function.toString.call(t).indexOf("[native code]")}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return OK(t,arguments,SK(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),EK(n,t)})(t)}var kK=function(t){function e(e){var n;return function(t){var e=t.__proto__;Object.defineProperty(t,"__proto__",{get:function(){return e},set:function(t){e.__proto__=t}})}(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(n=t.call.apply(t,[this].concat(e))||this)),n}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(e,t),e}(TK(Array));function AK(t){void 0===t&&(t=[]);var e=[];return t.forEach(function(t){Array.isArray(t)?e.push.apply(e,AK(t)):e.push(t)}),e}function PK(t,e){return Array.prototype.filter.call(t,e)}function MK(t,e){var n=xK(),i=_K(),r=[];if(!e&&t instanceof kK)return t;if(!t)return new kK(r);if("string"==typeof t){var s=t.trim();if(s.indexOf("<")>=0&&s.indexOf(">")>=0){var o="div";0===s.indexOf("0}).length>0},toggleClass:function(){for(var t=arguments.length,e=new Array(t),n=0;n=0;p-=1){var f=d[p];s&&f.listener===s||s&&f.listener&&f.listener.dom7proxy&&f.listener.dom7proxy===s?(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1)):s||(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1))}}return this},trigger:function(){for(var t=xK(),e=arguments.length,n=new Array(e),i=0;i0}),c.dispatchEvent(u),c.dom7EventData=[],delete c.dom7EventData}}return this},transitionEnd:function(t){var e=this;return t&&e.on("transitionend",function n(i){i.target===this&&(t.call(this,i),e.off("transitionend",n))}),this},outerWidth:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetWidth+parseFloat(e.getPropertyValue("margin-right"))+parseFloat(e.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetHeight+parseFloat(e.getPropertyValue("margin-top"))+parseFloat(e.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){var t=xK();return this[0]?t.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var t=xK(),e=_K(),n=this[0],i=n.getBoundingClientRect(),r=e.body;return{top:i.top+(n===t?t.scrollY:n.scrollTop)-(n.clientTop||r.clientTop||0),left:i.left+(n===t?t.scrollX:n.scrollLeft)-(n.clientLeft||r.clientLeft||0)}}return null},css:function(t,e){var n,i=xK();if(1===arguments.length){if("string"!=typeof t){for(n=0;ne-1)return MK([]);if(t<0){var n=e+t;return MK(n<0?[]:[this[n]])}return MK([this[t]])},append:function(){for(var t,e=_K(),n=0;n=0;n-=1)this[e].insertBefore(r.childNodes[n],this[e].childNodes[0])}else if(t instanceof kK)for(n=0;n0?t?this[0].nextElementSibling&&MK(this[0].nextElementSibling).is(t)?MK([this[0].nextElementSibling]):MK([]):MK(this[0].nextElementSibling?[this[0].nextElementSibling]:[]):MK([])},nextAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.nextElementSibling;){var i=n.nextElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},prev:function(t){if(this.length>0){var e=this[0];return t?e.previousElementSibling&&MK(e.previousElementSibling).is(t)?MK([e.previousElementSibling]):MK([]):MK(e.previousElementSibling?[e.previousElementSibling]:[])}return MK([])},prevAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.previousElementSibling;){var i=n.previousElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},parent:function(t){for(var e=[],n=0;n=0,observer:"MutationObserver"in t||"WebkitMutationObserver"in t,passiveListener:function(){var e=!1;try{var n=Object.defineProperty({},"passive",{get:function(){e=!0}});t.addEventListener("testPassiveListener",null,n)}catch(i){}return e}(),gestures:"ongesturestart"in t}}()),NK}function WK(t){return void 0===t&&(t={}),LK||(LK=function(t){var e=(void 0===t?{}:t).userAgent,n=GK(),i=xK(),r=i.navigator.platform,s=e||i.navigator.userAgent,o={ios:!1,android:!1},a=i.screen.width,l=i.screen.height,c=s.match(/(Android);?[\s\/]+([\d.]+)?/),u=s.match(/(iPad).*OS\s([\d_]+)/),h=s.match(/(iPod)(.*OS\s([\d_]+))?/),d=!u&&s.match(/(iPhone\sOS|iOS)\s([\d_]+)/),p="Win32"===r,f="MacIntel"===r;return!u&&f&&n.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(a+"x"+l)>=0&&((u=s.match(/(Version)\/([\d.]+)/))||(u=[0,1,"13_0_0"]),f=!1),c&&!p&&(o.os="android",o.android=!0),(u||d||h)&&(o.os="ios",o.ios=!0),o}(t)),LK}function qK(){return jK||(jK=function(){var t,e=xK();return{isEdge:!!e.navigator.userAgent.match(/Edge/g),isSafari:(t=e.navigator.userAgent.toLowerCase(),t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent)}}()),jK}var XK={name:"resize",create:function(){var t=this;HK(t,{resize:{observer:null,createObserver:function(){!t||t.destroyed||!t.initialized||(t.resize.observer=new ResizeObserver(function(e){var n=t.width,i=t.height,r=n,s=i;e.forEach(function(e){var n=e.contentBoxSize,i=e.contentRect,o=e.target;o&&o!==t.el||(r=i?i.width:(n[0]||n).inlineSize,s=i?i.height:(n[0]||n).blockSize)}),(r!==n||s!==i)&&t.resize.resizeHandler()}),t.resize.observer.observe(t.el))},removeObserver:function(){t.resize.observer&&t.resize.observer.unobserve&&t.el&&(t.resize.observer.unobserve(t.el),t.resize.observer=null)},resizeHandler:function(){!t||t.destroyed||!t.initialized||(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler:function(){!t||t.destroyed||!t.initialized||t.emit("orientationchange")}}})},on:{init:function(t){var e=xK();t.params.resizeObserver&&void 0!==xK().ResizeObserver?t.resize.createObserver():(e.addEventListener("resize",t.resize.resizeHandler),e.addEventListener("orientationchange",t.resize.orientationChangeHandler))},destroy:function(t){var e=xK();t.resize.removeObserver(),e.removeEventListener("resize",t.resize.resizeHandler),e.removeEventListener("orientationchange",t.resize.orientationChangeHandler)}}};function YK(){return(YK=Object.assign||function(t){for(var e=1;e0)&&(!r.isTouched||!r.isMoved))){s.noSwipingClass&&""!==s.noSwipingClass&&a.target&&a.target.shadowRoot&&t.path&&t.path[0]&&(l=FK(t.path[0]));var c=s.noSwipingSelector?s.noSwipingSelector:"."+s.noSwipingClass;if(s.noSwiping&&(a.target&&a.target.shadowRoot?function(t,e){return void 0===e&&(e=this),function e(n){return n&&n!==_K()&&n!==xK()?(n.assignedSlot&&(n=n.assignedSlot),n.closest(t)||e(n.getRootNode().host)):null}(e)}(c,a.target):l.closest(c)[0]))return void(e.allowClick=!0);if(!s.swipeHandler||l.closest(s.swipeHandler)[0]){o.currentX="touchstart"===a.type?a.targetTouches[0].pageX:a.pageX,o.currentY="touchstart"===a.type?a.targetTouches[0].pageY:a.pageY;var u=o.currentX,h=o.currentY,d=s.edgeSwipeDetection||s.iOSEdgeSwipeDetection,p=s.edgeSwipeThreshold||s.iOSEdgeSwipeThreshold;if(d&&(u<=p||u>=i.innerWidth-p)){if("prevent"!==d)return;t.preventDefault()}if(HK(r,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=u,o.startY=h,r.touchStartTime=VK(),e.allowClick=!0,e.updateSize(),e.swipeDirection=void 0,s.threshold>0&&(r.allowThresholdMove=!1),"touchstart"!==a.type){var f=!0;l.is(r.focusableElements)&&(f=!1),n.activeElement&&FK(n.activeElement).is(r.focusableElements)&&n.activeElement!==l[0]&&n.activeElement.blur(),(s.touchStartForcePreventDefault||f&&e.allowTouchMove&&s.touchStartPreventDefault)&&!l[0].isContentEditable&&a.preventDefault()}e.emit("touchStart",a)}}}}function JK(t){var e=_K(),n=this,i=n.touchEventsData,r=n.params,s=n.touches,o=n.rtlTranslate;if(n.enabled){var a=t;if(a.originalEvent&&(a=a.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&n.emit("touchMoveOpposite",a));if(!i.isTouchEvent||"touchmove"===a.type){var l="touchmove"===a.type&&a.targetTouches&&(a.targetTouches[0]||a.changedTouches[0]),c="touchmove"===a.type?l.pageX:a.pageX,u="touchmove"===a.type?l.pageY:a.pageY;if(a.preventedByNestedSwiper)return s.startX=c,void(s.startY=u);if(!n.allowTouchMove)return n.allowClick=!1,void(i.isTouched&&(HK(s,{startX:c,startY:u,currentX:c,currentY:u}),i.touchStartTime=VK()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(n.isVertical()){if(us.startY&&n.translate>=n.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(cs.startX&&n.translate>=n.minTranslate())return;if(i.isTouchEvent&&e.activeElement&&a.target===e.activeElement&&FK(a.target).is(i.focusableElements))return i.isMoved=!0,void(n.allowClick=!1);if(i.allowTouchCallbacks&&n.emit("touchMove",a),!(a.targetTouches&&a.targetTouches.length>1)){s.currentX=c,s.currentY=u;var h=s.currentX-s.startX,d=s.currentY-s.startY;if(!(n.params.threshold&&Math.sqrt(Math.pow(h,2)+Math.pow(d,2))=25&&(p=180*Math.atan2(Math.abs(d),Math.abs(h))/Math.PI,i.isScrolling=n.isHorizontal()?p>r.touchAngle:90-p>r.touchAngle)),i.isScrolling&&n.emit("touchMoveOpposite",a),void 0===i.startMoving&&(s.currentX!==s.startX||s.currentY!==s.startY)&&(i.startMoving=!0),i.isScrolling)return void(i.isTouched=!1);if(i.startMoving){n.allowClick=!1,!r.cssMode&&a.cancelable&&a.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&a.stopPropagation(),i.isMoved||(r.loop&&n.loopFix(),i.startTranslate=n.getTranslate(),n.setTransition(0),n.animating&&n.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,r.grabCursor&&(!0===n.allowSlideNext||!0===n.allowSlidePrev)&&n.setGrabCursor(!0),n.emit("sliderFirstMove",a)),n.emit("sliderMove",a),i.isMoved=!0;var f=n.isHorizontal()?h:d;s.diff=f,f*=r.touchRatio,o&&(f=-f),n.swipeDirection=f>0?"prev":"next",i.currentTranslate=f+i.startTranslate;var g=!0,m=r.resistanceRatio;if(r.touchReleaseOnEdges&&(m=0),f>0&&i.currentTranslate>n.minTranslate()?(g=!1,r.resistance&&(i.currentTranslate=n.minTranslate()-1+Math.pow(-n.minTranslate()+i.startTranslate+f,m))):f<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),!n.allowSlidePrev&&!n.allowSlideNext&&(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(f)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,s.startX=s.currentX,s.startY=s.currentY,i.currentTranslate=i.startTranslate,void(s.diff=n.isHorizontal()?s.currentX-s.startX:s.currentY-s.startY)}!r.followFinger||r.cssMode||((r.freeMode||r.watchSlidesProgress||r.watchSlidesVisibility)&&(n.updateActiveIndex(),n.updateSlidesClasses()),r.freeMode&&(0===i.velocities.length&&i.velocities.push({position:s[n.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:s[n.isHorizontal()?"currentX":"currentY"],time:VK()})),n.updateProgress(i.currentTranslate),n.setTranslate(i.currentTranslate))}}}}}}function tQ(t){var e=this,n=e.touchEventsData,i=e.params,r=e.touches,s=e.rtlTranslate,o=e.$wrapperEl,a=e.slidesGrid,l=e.snapGrid;if(e.enabled){var c=t;if(c.originalEvent&&(c=c.originalEvent),n.allowTouchCallbacks&&e.emit("touchEnd",c),n.allowTouchCallbacks=!1,!n.isTouched)return n.isMoved&&i.grabCursor&&e.setGrabCursor(!1),n.isMoved=!1,void(n.startMoving=!1);i.grabCursor&&n.isMoved&&n.isTouched&&(!0===e.allowSlideNext||!0===e.allowSlidePrev)&&e.setGrabCursor(!1);var u,h=VK(),d=h-n.touchStartTime;if(e.allowClick&&(e.updateClickedSlide(c),e.emit("tap click",c),d<300&&h-n.lastClickTime<300&&e.emit("doubleTap doubleClick",c)),n.lastClickTime=VK(),BK(function(){e.destroyed||(e.allowClick=!0)}),!n.isTouched||!n.isMoved||!e.swipeDirection||0===r.diff||n.currentTranslate===n.startTranslate)return n.isTouched=!1,n.isMoved=!1,void(n.startMoving=!1);if(n.isTouched=!1,n.isMoved=!1,n.startMoving=!1,u=i.followFinger?s?e.translate:-e.translate:-n.currentTranslate,!i.cssMode){if(i.freeMode){if(u<-e.minTranslate())return void e.slideTo(e.activeIndex);if(u>-e.maxTranslate())return void e.slideTo(e.slides.length1){var p=n.velocities.pop(),f=n.velocities.pop(),g=p.time-f.time;e.velocity=(p.position-f.position)/g,e.velocity/=2,Math.abs(e.velocity)150||VK()-p.time>300)&&(e.velocity=0)}else e.velocity=0;e.velocity*=i.freeModeMomentumVelocityRatio,n.velocities.length=0;var m=1e3*i.freeModeMomentumRatio,b=e.translate+e.velocity*m;s&&(b=-b);var y,v,_=!1,w=20*Math.abs(e.velocity)*i.freeModeMomentumBounceRatio;if(be.minTranslate())i.freeModeMomentumBounce?(b-e.minTranslate()>w&&(b=e.minTranslate()+w),y=e.minTranslate(),_=!0,n.allowMomentumBounce=!0):b=e.minTranslate(),i.loop&&i.centeredSlides&&(v=!0);else if(i.freeModeSticky){for(var x,S=0;S-b){x=S;break}b=-(b=Math.abs(l[x]-b)=i.longSwipesMs)&&(e.updateProgress(),e.updateActiveIndex(),e.updateSlidesClasses()))}for(var O=0,T=e.slidesSizesGrid[0],k=0;k=a[k]&&u=a[k]&&(O=k,T=a[a.length-1]-a[a.length-2])}var P=(u-a[O])/T,M=Oi.longSwipesMs){if(!i.longSwipes)return void e.slideTo(e.activeIndex);"next"===e.swipeDirection&&e.slideTo(P>=i.longSwipesRatio?O+M:O),"prev"===e.swipeDirection&&e.slideTo(P>1-i.longSwipesRatio?O+M:O)}else{if(!i.shortSwipes)return void e.slideTo(e.activeIndex);!e.navigation||c.target!==e.navigation.nextEl&&c.target!==e.navigation.prevEl?("next"===e.swipeDirection&&e.slideTo(O+M),"prev"===e.swipeDirection&&e.slideTo(O)):e.slideTo(c.target===e.navigation.nextEl?O+M:O)}}}}function eQ(){var t=this,e=t.params,n=t.el;if(!n||0!==n.offsetWidth){e.breakpoints&&t.setBreakpoint();var i=t.allowSlideNext,r=t.allowSlidePrev,s=t.snapGrid;t.allowSlideNext=!0,t.allowSlidePrev=!0,t.updateSize(),t.updateSlides(),t.updateSlidesClasses(),t.slideTo(("auto"===e.slidesPerView||e.slidesPerView>1)&&t.isEnd&&!t.isBeginning&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0),t.autoplay&&t.autoplay.running&&t.autoplay.paused&&t.autoplay.run(),t.allowSlidePrev=r,t.allowSlideNext=i,t.params.watchOverflow&&s!==t.snapGrid&&t.checkOverflow()}}function nQ(t){var e=this;!e.enabled||e.allowClick||(e.params.preventClicks&&t.preventDefault(),e.params.preventClicksPropagation&&e.animating&&(t.stopPropagation(),t.stopImmediatePropagation()))}function iQ(){var t=this,e=t.wrapperEl,n=t.rtlTranslate;if(t.enabled){t.previousTranslate=t.translate,t.translate=t.isHorizontal()?n?e.scrollWidth-e.offsetWidth-e.scrollLeft:-e.scrollLeft:-e.scrollTop,-0===t.translate&&(t.translate=0),t.updateActiveIndex(),t.updateSlidesClasses();var i=t.maxTranslate()-t.minTranslate();(0===i?0:(t.translate-t.minTranslate())/i)!==t.progress&&t.updateProgress(n?-t.translate:t.translate),t.emit("setTranslate",t.translate,!1)}}var rQ=!1;function sQ(){}var oQ={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!1,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};function aQ(t,e){for(var n=0;n=0&&e.eventsAnyListeners.splice(n,1),e},off:function(t,e){var n=this;return n.eventsListeners&&t.split(" ").forEach(function(t){void 0===e?n.eventsListeners[t]=[]:n.eventsListeners[t]&&n.eventsListeners[t].forEach(function(i,r){(i===e||i.__emitterProxy&&i.__emitterProxy===e)&&n.eventsListeners[t].splice(r,1)})}),n},emit:function(){var t=this;if(!t.eventsListeners)return t;for(var e,n,i,r=arguments.length,s=new Array(r),o=0;o=0&&(v=parseFloat(v.replace("%",""))/100*s),t.virtualSize=-v,u.css(o?{marginLeft:"",marginBottom:"",marginTop:""}:{marginRight:"",marginBottom:"",marginTop:""}),i.slidesPerColumn>1&&(S=Math.floor(h/i.slidesPerColumn)===h/t.params.slidesPerColumn?h:Math.ceil(h/i.slidesPerColumn)*i.slidesPerColumn,"auto"!==i.slidesPerView&&"row"===i.slidesPerColumnFill&&(S=Math.max(S,i.slidesPerView*i.slidesPerColumn)));for(var T,k=i.slidesPerColumn,A=S/k,P=Math.floor(h/i.slidesPerColumn),M=0;M1){var D=void 0,R=void 0,N=void 0;if("row"===i.slidesPerColumnFill&&i.slidesPerGroup>1){var L=Math.floor(M/(i.slidesPerGroup*i.slidesPerColumn)),j=M-i.slidesPerColumn*i.slidesPerGroup*L,F=0===L?i.slidesPerGroup:Math.min(Math.ceil((h-L*k*i.slidesPerGroup)/k),i.slidesPerGroup);N=Math.floor(j/F),I.css({"-webkit-box-ordinal-group":D=(R=j-N*F+L*i.slidesPerGroup)+N*S/k,"-moz-box-ordinal-group":D,"-ms-flex-order":D,"-webkit-order":D,order:D})}else"column"===i.slidesPerColumnFill?(N=M-(R=Math.floor(M/k))*k,(R>P||R===P&&N===k-1)&&(N+=1)>=k&&(N=0,R+=1)):R=M-(N=Math.floor(M/A))*A;I.css(e("margin-top"),0!==N?i.spaceBetween&&i.spaceBetween+"px":"")}if("none"!==I.css("display")){if("auto"===i.slidesPerView){var B=getComputedStyle(I[0]),V=I[0].style.transform,z=I[0].style.webkitTransform;if(V&&(I[0].style.transform="none"),z&&(I[0].style.webkitTransform="none"),i.roundLengths)T=t.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else{var U=n(B,"width"),H=n(B,"padding-left"),$=n(B,"padding-right"),G=n(B,"margin-left"),W=n(B,"margin-right"),q=B.getPropertyValue("box-sizing");if(q&&"border-box"===q)T=U+G+W;else{var X=I[0];T=U+H+$+G+W+(X.offsetWidth-X.clientWidth)}}V&&(I[0].style.transform=V),z&&(I[0].style.webkitTransform=z),i.roundLengths&&(T=Math.floor(T))}else T=(s-(i.slidesPerView-1)*v)/i.slidesPerView,i.roundLengths&&(T=Math.floor(T)),u[M]&&(u[M].style[e("width")]=T+"px");u[M]&&(u[M].swiperSlideSize=T),f.push(T),i.centeredSlides?(_=_+T/2+w/2+v,0===w&&0!==M&&(_=_-s/2-v),0===M&&(_=_-s/2-v),Math.abs(_)<.001&&(_=0),i.roundLengths&&(_=Math.floor(_)),x%i.slidesPerGroup==0&&d.push(_),p.push(_)):(i.roundLengths&&(_=Math.floor(_)),(x-Math.min(t.params.slidesPerGroupSkip,x))%t.params.slidesPerGroup==0&&d.push(_),p.push(_),_=_+T+v),t.virtualSize+=T+v,w=T,x+=1}}if(t.virtualSize=Math.max(t.virtualSize,s)+m,o&&a&&("slide"===i.effect||"coverflow"===i.effect)&&r.css({width:t.virtualSize+i.spaceBetween+"px"}),i.setWrapperSize&&r.css(((C={})[e("width")]=t.virtualSize+i.spaceBetween+"px",C)),i.slidesPerColumn>1&&(t.virtualSize=(T+i.spaceBetween)*S,t.virtualSize=Math.ceil(t.virtualSize/i.slidesPerColumn)-i.spaceBetween,r.css(((O={})[e("width")]=t.virtualSize+i.spaceBetween+"px",O)),i.centeredSlides)){E=[];for(var Y=0;Y1&&d.push(t.virtualSize-s)}if(0===d.length&&(d=[0]),0!==i.spaceBetween){var J,tt=t.isHorizontal()&&o?"marginLeft":e("marginRight");u.filter(function(t,e){return!i.cssMode||e!==u.length-1}).css(((J={})[tt]=v+"px",J))}if(i.centeredSlides&&i.centeredSlidesBounds){var et=0;f.forEach(function(t){et+=t+(i.spaceBetween?i.spaceBetween:0)});var nt=(et-=i.spaceBetween)-s;d=d.map(function(t){return t<0?-g:t>nt?nt+m:t})}if(i.centerInsufficientSlides){var it=0;if(f.forEach(function(t){it+=t+(i.spaceBetween?i.spaceBetween:0)}),(it-=i.spaceBetween)1)if(n.params.centeredSlides)n.visibleSlides.each(function(t){i.push(t)});else for(e=0;en.slides.length&&!r)break;i.push(o(a))}else i.push(o(n.activeIndex));for(e=0;es?l:s}s&&n.$wrapperEl.css("height",s+"px")},updateSlidesOffset:function(){for(var t=this.slides,e=0;e=0&&c1&&u<=e.size||c<=0&&u>=e.size)&&(e.visibleSlides.push(a),e.visibleSlidesIndexes.push(o),i.eq(o).addClass(n.slideVisibleClass))}a.progress=r?-l:l}e.visibleSlides=FK(e.visibleSlides)}},updateProgress:function(t){var e=this;void 0===t&&(t=e&&e.translate&&e.translate*(e.rtlTranslate?-1:1)||0);var n=e.params,i=e.maxTranslate()-e.minTranslate(),r=e.progress,s=e.isBeginning,o=e.isEnd,a=s,l=o;0===i?(r=0,s=!0,o=!0):(s=(r=(t-e.minTranslate())/i)<=0,o=r>=1),HK(e,{progress:r,isBeginning:s,isEnd:o}),(n.watchSlidesProgress||n.watchSlidesVisibility||n.centeredSlides&&n.autoHeight)&&e.updateSlidesProgress(t),s&&!a&&e.emit("reachBeginning toEdge"),o&&!l&&e.emit("reachEnd toEdge"),(a&&!s||l&&!o)&&e.emit("fromEdge"),e.emit("progress",r)},updateSlidesClasses:function(){var t,e=this,n=e.slides,i=e.params,r=e.$wrapperEl,s=e.activeIndex,o=e.realIndex,a=e.virtual&&i.virtual.enabled;n.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(t=a?e.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+s+'"]'):n.eq(s)).addClass(i.slideActiveClass),i.loop&&(t.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass));var l=t.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===l.length&&(l=n.eq(0)).addClass(i.slideNextClass);var c=t.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=n.eq(-1)).addClass(i.slidePrevClass),i.loop&&(l.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),e.emitSlidesClasses()},updateActiveIndex:function(t){var e,n=this,i=n.rtlTranslate?n.translate:-n.translate,r=n.slidesGrid,s=n.snapGrid,o=n.params,a=n.activeIndex,l=n.realIndex,c=n.snapIndex,u=t;if(void 0===u){for(var h=0;h=r[h]&&i=r[h]&&i=r[h]&&(u=h);o.normalizeSlideIndex&&(u<0||void 0===u)&&(u=0)}if(s.indexOf(i)>=0)e=s.indexOf(i);else{var d=Math.min(o.slidesPerGroupSkip,u);e=d+Math.floor((u-d)/o.slidesPerGroup)}if(e>=s.length&&(e=s.length-1),u!==a){var p=parseInt(n.slides.eq(u).attr("data-swiper-slide-index")||u,10);HK(n,{snapIndex:e,realIndex:p,previousIndex:a,activeIndex:u}),n.emit("activeIndexChange"),n.emit("snapIndexChange"),l!==p&&n.emit("realIndexChange"),(n.initialized||n.params.runCallbacksOnInit)&&n.emit("slideChange")}else e!==c&&(n.snapIndex=e,n.emit("snapIndexChange"))},updateClickedSlide:function(t){var e,n=this,i=n.params,r=FK(t.target).closest("."+i.slideClass)[0],s=!1;if(r)for(var o=0;o6&&(i=i.split(", ").map(function(t){return t.replace(",",".")}).join(", ")),r=new s.WebKitCSSMatrix("none"===i?"":i)):n=(r=o.MozTransform||o.OTransform||o.MsTransform||o.msTransform||o.transform||o.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===e&&(i=s.WebKitCSSMatrix?r.m41:16===n.length?parseFloat(n[12]):parseFloat(n[4])),"y"===e&&(i=s.WebKitCSSMatrix?r.m42:16===n.length?parseFloat(n[13]):parseFloat(n[5])),i||0}(e.$wrapperEl[0],t);return i&&(s=-s),s||0},setTranslate:function(t,e){var n=this,i=n.rtlTranslate,r=n.params,s=n.$wrapperEl,o=n.wrapperEl,a=n.progress,l=0,c=0;n.isHorizontal()?l=i?-t:t:c=t,r.roundLengths&&(l=Math.floor(l),c=Math.floor(c)),r.cssMode?o[n.isHorizontal()?"scrollLeft":"scrollTop"]=n.isHorizontal()?-l:-c:r.virtualTranslate||s.transform("translate3d("+l+"px, "+c+"px, 0px)"),n.previousTranslate=n.translate,n.translate=n.isHorizontal()?l:c;var u=n.maxTranslate()-n.minTranslate();(0===u?0:(t-n.minTranslate())/u)!==a&&n.updateProgress(t),n.emit("setTranslate",n.translate,e)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(t,e,n,i,r){void 0===t&&(t=0),void 0===e&&(e=this.params.speed),void 0===n&&(n=!0),void 0===i&&(i=!0);var s=this,o=s.params,a=s.wrapperEl;if(s.animating&&o.preventInteractionOnTransition)return!1;var l,c=s.minTranslate(),u=s.maxTranslate();if(s.updateProgress(l=i&&t>c?c:i&&ts?"next":ir?"next":i=c.length&&(m=c.length-1),(d||l.initialSlide||0)===(h||0)&&n&&o.emit("beforeSlideChangeStart");var b,y=-c[m];if(o.updateProgress(y),l.normalizeSlideIndex)for(var v=0;v=w&&_=w&&_=w&&(a=v)}if(o.initialized&&a!==d&&(!o.allowSlideNext&&yo.translate&&y>o.maxTranslate()&&(d||0)!==a))return!1;if(b=a>d?"next":a=t&&(d=t)}),void 0!==d&&(c=o.indexOf(d))<0&&(c=i.activeIndex-1),i.slideTo(c,t,e,n)},slideReset:function(t,e,n){return void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),this.slideTo(this.activeIndex,t,e,n)},slideToClosest:function(t,e,n,i){void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),void 0===i&&(i=.5);var r=this,s=r.activeIndex,o=Math.min(r.params.slidesPerGroupSkip,s),a=o+Math.floor((s-o)/r.params.slidesPerGroup),l=r.rtlTranslate?r.translate:-r.translate;if(l>=r.snapGrid[a]){var c=r.snapGrid[a];l-c>(r.snapGrid[a+1]-c)*i&&(s+=r.params.slidesPerGroup)}else{var u=r.snapGrid[a-1];l-u<=(r.snapGrid[a]-u)*i&&(s-=r.params.slidesPerGroup)}return s=Math.max(s,0),s=Math.min(s,r.slidesGrid.length-1),r.slideTo(s,t,e,n)},slideToClickedSlide:function(){var t,e=this,n=e.params,i=e.$wrapperEl,r="auto"===n.slidesPerView?e.slidesPerViewDynamic():n.slidesPerView,s=e.clickedIndex;if(n.loop){if(e.animating)return;t=parseInt(FK(e.clickedSlide).attr("data-swiper-slide-index"),10),n.centeredSlides?se.slides.length-e.loopedSlides+r/2?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s):s>e.slides.length-r?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s)}else e.slideTo(s)}},loop:{loopCreate:function(){var t=this,e=_K(),n=t.params,i=t.$wrapperEl;i.children("."+n.slideClass+"."+n.slideDuplicateClass).remove();var r=i.children("."+n.slideClass);if(n.loopFillGroupWithBlank){var s=n.slidesPerGroup-r.length%n.slidesPerGroup;if(s!==n.slidesPerGroup){for(var o=0;or.length&&(t.loopedSlides=r.length);var l=[],c=[];r.each(function(e,n){var i=FK(e);n=r.length-t.loopedSlides&&l.push(e),i.attr("data-swiper-slide-index",n)});for(var u=0;u=0;h-=1)i.prepend(FK(l[h].cloneNode(!0)).addClass(n.slideDuplicateClass))},loopFix:function(){var t=this;t.emit("beforeLoopFix");var e,n=t.activeIndex,i=t.slides,r=t.loopedSlides,s=t.allowSlidePrev,o=t.allowSlideNext,a=t.snapGrid,l=t.rtlTranslate;t.allowSlidePrev=!0,t.allowSlideNext=!0;var c=-a[n]-t.getTranslate();n=i.length-r&&(e=-i.length+n+r,t.slideTo(e+=r,0,!1,!0)&&0!==c&&t.setTranslate((l?-t.translate:t.translate)-c)),t.allowSlidePrev=s,t.allowSlideNext=o,t.emit("loopFix")},loopDestroy:function(){var t=this,e=t.params,n=t.slides;t.$wrapperEl.children("."+e.slideClass+"."+e.slideDuplicateClass+",."+e.slideClass+"."+e.slideBlankClass).remove(),n.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(t){var e=this;if(!(e.support.touch||!e.params.simulateTouch||e.params.watchOverflow&&e.isLocked||e.params.cssMode)){var n=e.el;n.style.cursor="move",n.style.cursor=t?"-webkit-grabbing":"-webkit-grab",n.style.cursor=t?"-moz-grabbin":"-moz-grab",n.style.cursor=t?"grabbing":"grab"}},unsetGrabCursor:function(){var t=this;t.support.touch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(t.el.style.cursor="")}},manipulation:{appendSlide:function(t){var e=this,n=e.$wrapperEl,i=e.params;if(i.loop&&e.loopDestroy(),"object"==typeof t&&"length"in t)for(var r=0;r=o)n.appendSlide(e);else{for(var a=s>t?s+1:s,l=[],c=o-1;c>=t;c-=1){var u=n.slides.eq(c);u.remove(),l.unshift(u)}if("object"==typeof e&&"length"in e){for(var h=0;ht?s+e.length:s}else i.append(e);for(var d=0;d1,d=u.slidesPerColumn>1,p=s.enabled;h&&!d?(o.removeClass(s.containerModifierClass+"multirow "+s.containerModifierClass+"multirow-column"),t.emitContainerClasses()):!h&&d&&(o.addClass(s.containerModifierClass+"multirow"),(u.slidesPerColumnFill&&"column"===u.slidesPerColumnFill||!u.slidesPerColumnFill&&"column"===s.slidesPerColumnFill)&&o.addClass(s.containerModifierClass+"multirow-column"),t.emitContainerClasses());var f=u.direction&&u.direction!==s.direction,g=s.loop&&(u.slidesPerView!==s.slidesPerView||f);f&&n&&t.changeDirection(),HK(t.params,u);var m=t.params.enabled;HK(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev}),p&&!m?t.disable():!p&&m&&t.enable(),t.currentBreakpoint=l,t.emit("_beforeBreakpoint",u),g&&n&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(e-r+t.loopedSlides,0,!1)),t.emit("breakpoint",u)}}},getBreakpoint:function(t,e,n){if(void 0===e&&(e="window"),t&&("container"!==e||n)){var i=!1,r=xK(),s="window"===e?r.innerHeight:n.clientHeight,o=Object.keys(t).map(function(t){if("string"==typeof t&&0===t.indexOf("@")){var e=parseFloat(t.substr(1));return{value:s*e,point:t}}return{value:t,point:t}});o.sort(function(t,e){return parseInt(t.value,10)-parseInt(e.value,10)});for(var a=0;a0&&e.slidesOffsetBefore+e.spaceBetween*(t.slides.length-1)+t.slides[0].offsetWidth*t.slides.length;t.isLocked=e.slidesOffsetBefore&&e.slidesOffsetAfter&&i?i<=t.size:1===t.snapGrid.length,t.allowSlideNext=!t.isLocked,t.allowSlidePrev=!t.isLocked,n!==t.isLocked&&t.emit(t.isLocked?"lock":"unlock"),n&&n!==t.isLocked&&(t.isEnd=!1,t.navigation&&t.navigation.update())}},classes:{addClasses:function(){var t=this,e=t.classNames,n=t.params,i=t.$el,r=t.device,s=t.support,o=function(t,e){var n=[];return t.forEach(function(t){"object"==typeof t?Object.keys(t).forEach(function(i){t[i]&&n.push(e+i)}):"string"==typeof t&&n.push(e+t)}),n}(["initialized",n.direction,{"pointer-events":s.pointerEvents&&!s.touch},{"free-mode":n.freeMode},{autoheight:n.autoHeight},{rtl:t.rtl},{multirow:n.slidesPerColumn>1},{"multirow-column":n.slidesPerColumn>1&&"column"===n.slidesPerColumnFill},{android:r.android},{ios:r.ios},{"css-mode":n.cssMode}],n.containerModifierClass);e.push.apply(e,o),i.addClass([].concat(e).join(" ")),t.emitContainerClasses()},removeClasses:function(){var t=this;t.$el.removeClass(t.classNames.join(" ")),t.emitContainerClasses()}},images:{loadImage:function(t,e,n,i,r,s){var o,a=xK();function l(){s&&s()}FK(t).parent("picture")[0]||t.complete&&r||!e?l():((o=new a.Image).onload=l,o.onerror=l,i&&(o.sizes=i),n&&(o.srcset=n),e&&(o.src=e))},preloadImages:function(){var t=this;function e(){null==t||!t||t.destroyed||(void 0!==t.imagesLoaded&&(t.imagesLoaded+=1),t.imagesLoaded===t.imagesToLoad.length&&(t.params.updateOnImagesReady&&t.update(),t.emit("imagesReady")))}t.imagesToLoad=t.$el.find("img");for(var n=0;n1){var o=[];return FK(n.el).each(function(e){var i=HK({},n,{el:e});o.push(new t(i))}),o}var a=this;a.__swiper__=!0,a.support=GK(),a.device=WK({userAgent:n.userAgent}),a.browser=qK(),a.eventsListeners={},a.eventsAnyListeners=[],void 0===a.modules&&(a.modules={}),Object.keys(a.modules).forEach(function(t){var e=a.modules[t];if(e.params){var i=Object.keys(e.params)[0],r=e.params[i];if("object"!=typeof r||null===r||(["navigation","pagination","scrollbar"].indexOf(i)>=0&&!0===n[i]&&(n[i]={auto:!0}),!(i in n)||!("enabled"in r)))return;!0===n[i]&&(n[i]={enabled:!0}),"object"==typeof n[i]&&!("enabled"in n[i])&&(n[i].enabled=!0),n[i]||(n[i]={enabled:!1})}});var l,c,u=HK({},oQ);return a.useParams(u),a.params=HK({},u,cQ,n),a.originalParams=HK({},a.params),a.passedParams=HK({},n),a.params&&a.params.on&&Object.keys(a.params.on).forEach(function(t){a.on(t,a.params.on[t])}),a.params&&a.params.onAny&&a.onAny(a.params.onAny),a.$=FK,HK(a,{enabled:a.params.enabled,el:e,classNames:[],slides:FK(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===a.params.direction},isVertical:function(){return"vertical"===a.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:a.params.allowSlideNext,allowSlidePrev:a.params.allowSlidePrev,touchEvents:(l=["touchstart","touchmove","touchend","touchcancel"],c=["mousedown","mousemove","mouseup"],a.support.pointerEvents&&(c=["pointerdown","pointermove","pointerup"]),a.touchEventsTouch={start:l[0],move:l[1],end:l[2],cancel:l[3]},a.touchEventsDesktop={start:c[0],move:c[1],end:c[2]},a.support.touch||!a.params.simulateTouch?a.touchEventsTouch:a.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:a.params.focusableElements,lastClickTime:VK(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:a.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),a.useModules(),a.emit("_swiper"),a.params.init&&a.init(),a}var e=t.prototype;return e.enable=function(){var t=this;t.enabled||(t.enabled=!0,t.params.grabCursor&&t.setGrabCursor(),t.emit("enable"))},e.disable=function(){var t=this;!t.enabled||(t.enabled=!1,t.params.grabCursor&&t.unsetGrabCursor(),t.emit("disable"))},e.setProgress=function(t,e){var n=this;t=Math.min(Math.max(t,0),1);var i=n.minTranslate(),r=n.maxTranslate();n.translateTo((r-i)*t+i,void 0===e?0:e),n.updateActiveIndex(),n.updateSlidesClasses()},e.emitContainerClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=t.el.className.split(" ").filter(function(e){return 0===e.indexOf("swiper-container")||0===e.indexOf(t.params.containerModifierClass)});t.emit("_containerClasses",e.join(" "))}},e.getSlideClasses=function(t){var e=this;return t.className.split(" ").filter(function(t){return 0===t.indexOf("swiper-slide")||0===t.indexOf(e.params.slideClass)}).join(" ")},e.emitSlidesClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=[];t.slides.each(function(n){var i=t.getSlideClasses(n);e.push({slideEl:n,classNames:i}),t.emit("_slideClass",n,i)}),t.emit("_slideClasses",e)}},e.slidesPerViewDynamic=function(){var t=this,e=t.slides,n=t.slidesGrid,i=t.size,r=t.activeIndex,s=1;if(t.params.centeredSlides){for(var o,a=e[r].swiperSlideSize,l=r+1;li&&(o=!0));for(var c=r-1;c>=0;c-=1)e[c]&&!o&&(s+=1,(a+=e[c].swiperSlideSize)>i&&(o=!0))}else for(var u=r+1;u1)&&t.isEnd&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0)||i(),n.watchOverflow&&e!==t.snapGrid&&t.checkOverflow(),t.emit("update")}function i(){var e=Math.min(Math.max(t.rtlTranslate?-1*t.translate:t.translate,t.maxTranslate()),t.minTranslate());t.setTranslate(e),t.updateActiveIndex(),t.updateSlidesClasses()}},e.changeDirection=function(t,e){void 0===e&&(e=!0);var n=this,i=n.params.direction;return t||(t="horizontal"===i?"vertical":"horizontal"),t===i||"horizontal"!==t&&"vertical"!==t||(n.$el.removeClass(""+n.params.containerModifierClass+i).addClass(""+n.params.containerModifierClass+t),n.emitContainerClasses(),n.params.direction=t,n.slides.each(function(e){"vertical"===t?e.style.width="":e.style.height=""}),n.emit("changeDirection"),e&&n.update()),n},e.mount=function(t){var e=this;if(e.mounted)return!0;var n=FK(t||e.params.el);if(!(t=n[0]))return!1;t.swiper=e;var i=function(){return"."+(e.params.wrapperClass||"").trim().split(" ").join(".")},r=function(){if(t&&t.shadowRoot&&t.shadowRoot.querySelector){var e=FK(t.shadowRoot.querySelector(i()));return e.children=function(t){return n.children(t)},e}return n.children(i())}();if(0===r.length&&e.params.createElements){var s=_K().createElement("div");r=FK(s),s.className=e.params.wrapperClass,n.append(s),n.children("."+e.params.slideClass).each(function(t){r.append(t)})}return HK(e,{$el:n,el:t,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction"),rtlTranslate:"horizontal"===e.params.direction&&("rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0},e.init=function(t){var e=this;return e.initialized||!1===e.mount(t)||(e.emit("beforeInit"),e.params.breakpoints&&e.setBreakpoint(),e.addClasses(),e.params.loop&&e.loopCreate(),e.updateSize(),e.updateSlides(),e.params.watchOverflow&&e.checkOverflow(),e.params.grabCursor&&e.enabled&&e.setGrabCursor(),e.params.preloadImages&&e.preloadImages(),e.slideTo(e.params.loop?e.params.initialSlide+e.loopedSlides:e.params.initialSlide,0,e.params.runCallbacksOnInit,!1,!0),e.attachEvents(),e.initialized=!0,e.emit("init"),e.emit("afterInit")),e},e.destroy=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!0);var n=this,i=n.params,r=n.$el,s=n.$wrapperEl,o=n.slides;return void 0===n.params||n.destroyed||(n.emit("beforeDestroy"),n.initialized=!1,n.detachEvents(),i.loop&&n.loopDestroy(),e&&(n.removeClasses(),r.removeAttr("style"),s.removeAttr("style"),o&&o.length&&o.removeClass([i.slideVisibleClass,i.slideActiveClass,i.slideNextClass,i.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),n.emit("destroy"),Object.keys(n.eventsListeners).forEach(function(t){n.off(t)}),!1!==t&&(n.$el[0].swiper=null,function(e){var n=e;Object.keys(n).forEach(function(e){try{n[e]=null}catch(t){}try{delete n[e]}catch(t){}})}(n)),n.destroyed=!0),null},t.extendDefaults=function(t){HK(cQ,t)},t.installModule=function(e){t.prototype.modules||(t.prototype.modules={});var n=e.name||Object.keys(t.prototype.modules).length+"_"+VK();t.prototype.modules[n]=e},t.use=function(e){return Array.isArray(e)?(e.forEach(function(e){return t.installModule(e)}),t):(t.installModule(e),t)},function(t,e,n){n&&aQ(t,n)}(t,0,[{key:"extendedDefaults",get:function(){return cQ}},{key:"defaults",get:function(){return oQ}}]),t}();Object.keys(lQ).forEach(function(t){Object.keys(lQ[t]).forEach(function(e){uQ.prototype[e]=lQ[t][e]})}),uQ.use([XK,QK]);var hQ=uQ;const dQ=["prevElRef"],pQ=["nextElRef"],fQ=["scrollbarElRef"],gQ=["paginationElRef"];function mQ(t,e){1&t&&(aa(0),oa(1,"div",6,7),oa(3,"div",8,9),la())}function bQ(t,e){1&t&&oa(0,"div",10,11)}function yQ(t,e){1&t&&oa(0,"div",12,13)}function vQ(t,e){}function _Q(t,e){1&t&&Jo(0,vQ,0,0,"ng-template")}function wQ(t,e){}function xQ(t,e){1&t&&Jo(0,wQ,0,0,"ng-template")}function SQ(t,e){}function EQ(t,e){1&t&&Jo(0,SQ,0,0,"ng-template")}function CQ(t,e){}const OQ=function(t){return{$implicit:t}};function TQ(t,e){if(1&t&&(ra(0,"div",3),Jo(1,CQ,0,0,"ng-template",18),sa()),2&t){const t=va().$implicit;na("ngClass",va(2).zoomContainerClass),ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(3,OQ,t.slideData))}}function kQ(t,e){}function AQ(t,e){if(1&t&&(aa(0),Jo(1,kQ,0,0,"ng-template",18),la()),2&t){const t=va().$implicit;ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(2,OQ,t.slideData))}}function PQ(t,e){if(1&t&&(ra(0,"div",15),Jo(1,TQ,2,5,"div",16),Jo(2,AQ,2,4,"ng-container",17),sa()),2&t){const t=e.$implicit,n=va().key,i=va();(function(t){Ua(qa,Fa,t,!1)})(i.style),na("ngClass",(t.class?t.class+" ":"")+i.slideClass+(""!==n?" "+i.slideDuplicateClass:""))("ngSwitch",t.zoom),Ko("data-swiper-slide-index",t.virtualIndex?t.virtualIndex:t.slideIndex),ws(1),na("ngSwitchCase",!0)}}function MQ(t,e){1&t&&(Jo(0,PQ,3,6,"div",14),Mc(1,"async")),2&t&&na("ngForOf",Ic(1,1,e.loopSlides))}const IQ=[[["","slot","container-start"]],[["","slot","wrapper-start"]],[["","slot","wrapper-end"]],[["","slot","container-end"]]],DQ=function(t){return{loopSlides:t,key:"prepend"}},RQ=function(t){return{loopSlides:t,key:""}},NQ=function(t){return{loopSlides:t,key:"append"}},LQ=["[slot=container-start]","[slot=wrapper-start]","[slot=wrapper-end]","[slot=container-end]"];function jQ(t){return"object"==typeof t&&null!==t&&t.constructor&&"Object"===Object.prototype.toString.call(t).slice(8,-1)}function FQ(t,e,n){return!0===VQ(t)&&e&&!e.el||!("boolean"!=typeof e&&e.el!==(null==n?void 0:n.nativeElement)&&("string"==typeof e.el||"object"==typeof e.el))}function BQ(t,e){const n=["__proto__","constructor","prototype"];Object.keys(e).filter(t=>n.indexOf(t)<0).forEach(n=>{void 0!==t[n]?t[n]&&!e[n]||(jQ(e[n])&&jQ(t[n])&&Object.keys(e[n]).length>0?e[n].__swiper__?t[n]=e[n]:BQ(t[n],e[n]):t[n]=e[n]):t[n]=e[n]})}function VQ(t){return null!=t&&"false"!=`${t}`}const zQ=["pagination","navigation","scrollbar","virtual"];function UQ(t,e={}){return jQ(t)?t:!0===VQ(t)&&e}const HQ=["init","_direction","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_freeModeMomentum","_freeModeMomentumRatio","_freeModeMomentumBounce","_freeModeMomentumBounceRatio","_freeModeMomentumVelocityRatio","_freeModeSticky","_freeModeMinimumVelocity","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","_spaceBetween","_slidesPerView","_slidesPerColumn","_slidesPerColumnFill","_slidesPerGroup","_slidesPerGroupSkip","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_watchSlidesVisibility","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_preloadImages","updateOnImagesReady","_loop","_loopAdditionalSlides","_loopedSlides","_loopFillGroupWithBlank","loopPreventsSlide","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","hashNavigation","history","keyboard","lazy","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom"].map(t=>t.replace(/_/,""));function $Q(t={}){const e={on:{}},n={};BQ(e,hQ.defaults),BQ(e,hQ.extendedDefaults),e._emitClasses=!0;const i={};return Object.keys(t).forEach(r=>{const s=r.replace(/^_/,"");void 0!==t[s]&&(HQ.indexOf(s)>=0?jQ(t[s])?(e[s]={},n[s]={},BQ(e[s],t[s]),BQ(n[s],t[s])):(e[s]=t[s],n[s]=t[s]):i[s]=t[s])}),{params:e,passedParams:n,rest:i}}let GQ=(()=>{class t{constructor(t){this.template=t,this.class="",this.slideData={isActive:!1,isPrev:!1,isNext:!1,isVisible:!1,isDuplicate:!1}}set zoom(t){this._zoom=VQ(t)}get zoom(){return this._zoom}get classNames(){return this._classNames}set classNames(t){this._classNames!==t&&(this._classNames=t,this.slideData={isActive:this._hasClass(["swiper-slide-active","swiper-slide-duplicate-active"]),isVisible:this._hasClass(["swiper-slide-visible"]),isDuplicate:this._hasClass(["swiper-slide-duplicate"]),isPrev:this._hasClass(["swiper-slide-prev","swiper-slide-duplicate-prev"]),isNext:this._hasClass(["swiper-slide-next","swiper-slide-duplicate-next"])})}_hasClass(t){return t.some(t=>this._classNames.indexOf(t)>=0)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","swiperSlide",""]],inputs:{class:"class",zoom:"zoom",virtualIndex:"virtualIndex"}}),t})(),WQ=(()=>{class t{constructor(t,e,n,i){this._ngZone=t,this.elementRef=e,this._changeDetectorRef=n,this._platformId=i,this.slideClass="swiper-slide",this.wrapperClass="swiper-wrapper",this.showNavigation=!0,this.showPagination=!0,this.showScrollbar=!0,this.s__beforeBreakpoint=new Rc,this.s__containerClasses=new Rc,this.s__slideClass=new Rc,this.s__swiper=new Rc,this.s_activeIndexChange=new Rc,this.s_afterInit=new Rc,this.s_autoplay=new Rc,this.s_autoplayStart=new Rc,this.s_autoplayStop=new Rc,this.s_beforeDestroy=new Rc,this.s_beforeInit=new Rc,this.s_beforeLoopFix=new Rc,this.s_beforeResize=new Rc,this.s_beforeSlideChangeStart=new Rc,this.s_beforeTransitionStart=new Rc,this.s_breakpoint=new Rc,this.s_changeDirection=new Rc,this.s_click=new Rc,this.s_doubleTap=new Rc,this.s_doubleClick=new Rc,this.s_destroy=new Rc,this.s_fromEdge=new Rc,this.s_hashChange=new Rc,this.s_hashSet=new Rc,this.s_imagesReady=new Rc,this.s_init=new Rc,this.s_keyPress=new Rc,this.s_lazyImageLoad=new Rc,this.s_lazyImageReady=new Rc,this.s_loopFix=new Rc,this.s_momentumBounce=new Rc,this.s_navigationHide=new Rc,this.s_navigationShow=new Rc,this.s_observerUpdate=new Rc,this.s_orientationchange=new Rc,this.s_paginationHide=new Rc,this.s_paginationRender=new Rc,this.s_paginationShow=new Rc,this.s_paginationUpdate=new Rc,this.s_progress=new Rc,this.s_reachBeginning=new Rc,this.s_reachEnd=new Rc,this.s_realIndexChange=new Rc,this.s_resize=new Rc,this.s_scroll=new Rc,this.s_scrollbarDragEnd=new Rc,this.s_scrollbarDragMove=new Rc,this.s_scrollbarDragStart=new Rc,this.s_setTransition=new Rc,this.s_setTranslate=new Rc,this.s_slideChange=new Rc,this.s_slideChangeTransitionEnd=new Rc,this.s_slideChangeTransitionStart=new Rc,this.s_slideNextTransitionEnd=new Rc,this.s_slideNextTransitionStart=new Rc,this.s_slidePrevTransitionEnd=new Rc,this.s_slidePrevTransitionStart=new Rc,this.s_slideResetTransitionStart=new Rc,this.s_slideResetTransitionEnd=new Rc,this.s_sliderMove=new Rc,this.s_sliderFirstMove=new Rc,this.s_slidesLengthChange=new Rc,this.s_slidesGridLengthChange=new Rc,this.s_snapGridLengthChange=new Rc,this.s_snapIndexChange=new Rc,this.s_tap=new Rc,this.s_toEdge=new Rc,this.s_touchEnd=new Rc,this.s_touchMove=new Rc,this.s_touchMoveOpposite=new Rc,this.s_touchStart=new Rc,this.s_transitionEnd=new Rc,this.s_transitionStart=new Rc,this.s_update=new Rc,this.s_zoomChange=new Rc,this.s_swiper=new Rc,this.indexChange=new Rc,this._activeSlides=new P,this.containerClasses="swiper-container",this.slidesChanges=t=>{this.slides=t.map((t,e)=>(t.slideIndex=e,t.classNames=this.slideClass,t)),this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.virtual?this.swiperRef&&this.swiperRef.virtual&&this._ngZone.runOutsideAngular(()=>{this.swiperRef.virtual.slides=this.slides,this.swiperRef.virtual.update(!0)}):(this.prependSlides=wd(this.slides.slice(this.slides.length-this.loopedSlides)),this.appendSlides=wd(this.slides.slice(0,this.loopedSlides))),this._changeDetectorRef.detectChanges()},this.style=null,this.updateVirtualSlides=t=>{!this.swiperRef||this.currentVirtualData&&this.currentVirtualData.from===t.from&&this.currentVirtualData.to===t.to&&this.currentVirtualData.offset===t.offset||(this.style=this.swiperRef.isHorizontal()?{[this.swiperRef.rtlTranslate?"right":"left"]:`${t.offset}px`}:{top:`${t.offset}px`},this.currentVirtualData=t,this._activeSlides.next(t.slides),this._ngZone.run(()=>{this._changeDetectorRef.detectChanges()}),this._ngZone.runOutsideAngular(()=>{this.swiperRef.updateSlides(),this.swiperRef.updateProgress(),this.swiperRef.updateSlidesClasses(),this.swiperRef.lazy&&this.swiperRef.params.lazy.enabled&&this.swiperRef.lazy.load(),this.swiperRef.virtual.update(!0)}))}}set navigation(t){var e,n,i;const r="boolean"!=typeof this._navigation?null===(e=this._navigation)||void 0===e?void 0:e.nextEl:null,s="boolean"!=typeof this._navigation?null===(n=this._navigation)||void 0===n?void 0:n.prevEl:null;this._navigation=UQ(t,{nextEl:r||null,prevEl:s||null}),this.showNavigation=!(!0!==VQ(t)||this._navigation&&"boolean"!=typeof this._navigation&&this._navigation.prevEl!==(null===(i=this._prevElRef)||void 0===i?void 0:i.nativeElement)&&(null!==this._navigation.prevEl||null!==this._navigation.nextEl)&&("string"==typeof this._navigation.nextEl||"string"==typeof this._navigation.prevEl||"object"==typeof this._navigation.nextEl||"object"==typeof this._navigation.prevEl))}get navigation(){return this._navigation}set pagination(t){var e;const n="boolean"!=typeof this._pagination?null===(e=this._pagination)||void 0===e?void 0:e.el:null;this._pagination=UQ(t,{el:n||null}),this.showPagination=FQ(t,this._pagination,this._paginationElRef)}get pagination(){return this._pagination}set scrollbar(t){var e;const n="boolean"!=typeof this._scrollbar?null===(e=this._scrollbar)||void 0===e?void 0:e.el:null;this._scrollbar=UQ(t,{el:n||null}),this.showScrollbar=FQ(t,this._scrollbar,this._scrollbarElRef)}get scrollbar(){return this._scrollbar}set virtual(t){this._virtual=UQ(t)}get virtual(){return this._virtual}set index(t){this.setIndex(t)}set config(t){this.updateSwiper(t);const{params:e}=$Q(t);Object.assign(this,e)}set prevElRef(t){this._prevElRef=t,this._setElement(t,this.navigation,"navigation","prevEl")}set nextElRef(t){this._nextElRef=t,this._setElement(t,this.navigation,"navigation","nextEl")}set scrollbarElRef(t){this._scrollbarElRef=t,this._setElement(t,this.scrollbar,"scrollbar")}set paginationElRef(t){this._paginationElRef=t,this._setElement(t,this.pagination,"pagination")}get activeSlides(){return this.virtual?this._activeSlides:wd(this.slides)}get zoomContainerClass(){return"boolean"!=typeof this.zoom?this.zoom.containerClass:"swiper-zoom-container"}_setElement(t,e,n,i="el"){if(!t||!e)return;if(e&&t.nativeElement){if(e[i]===t.nativeElement)return;e[i]=t.nativeElement}const r={};r[n]=!0,this.updateInitSwiper(r)}ngOnInit(){const{params:t}=$Q(this);Object.assign(this,t)}ngAfterViewInit(){this.childrenSlidesInit(),this.initSwiper(),this._changeDetectorRef.detectChanges(),setTimeout(()=>{this.s_swiper.emit(this.swiperRef)})}childrenSlidesInit(){this.slidesChanges(this.slidesEl),this.slidesEl.changes.subscribe(this.slidesChanges)}get isSwiperActive(){return this.swiperRef&&!this.swiperRef.destroyed}initSwiper(){const{params:t}=$Q(this);Object.assign(this,t),this._ngZone.runOutsideAngular(()=>{t.init=!1,t.virtual||(t.observer=!0),t.onAny=(t,...e)=>{const n=this[`s_${t}`];n&&n.emit(...e)},Object.assign(t.on,{_containerClasses(t,e){this.containerClasses=e},_slideClasses:(t,e)=>{e.forEach(({slideEl:t,classNames:e},n)=>{const i=parseInt(t.getAttribute("data-swiper-slide-index"))||n;if(this.virtual){const t=this.slides.find(t=>t.virtualIndex&&t.virtualIndex===i);if(t)return void(t.classNames=e)}this.slides[i]&&(this.slides[i].classNames=e)}),this._changeDetectorRef.detectChanges()}});const e=new hQ(t);if(e.loopCreate=()=>{},e.loopDestroy=()=>{},t.loop&&(e.loopedSlides=this.loopedSlides),e.virtual&&e.params.virtual.enabled){e.virtual.slides=this.slides;const t={cache:!1,renderExternal:this.updateVirtualSlides,renderExternalUpdate:!1};BQ(e.params.virtual,t),BQ(e.originalParams.virtual,t)}Lh(this._platformId)&&(this.swiperRef=e.init(this.elementRef.nativeElement),this.swiperRef.virtual&&this.swiperRef.params.virtual.enabled&&this.swiperRef.virtual.update(!0),this._changeDetectorRef.detectChanges(),e.on("slideChange",()=>{this.indexChange.emit(this.swiperRef.realIndex)}))})}ngOnChanges(t){this.updateSwiper(t),this._changeDetectorRef.detectChanges()}updateInitSwiper(t){!t||!this.swiperRef||this.swiperRef.destroyed||this._ngZone.runOutsideAngular(()=>{const{pagination:e,navigation:n,scrollbar:i,thumbs:r}=this.swiperRef;t.pagination&&(this.pagination&&"boolean"!=typeof this.pagination&&this.pagination.el&&e&&!e.el?(this.updateParameter("pagination",this.pagination),e.init(),e.render(),e.update()):(e.destroy(),e.el=null)),t.scrollbar&&(this.scrollbar&&"boolean"!=typeof this.scrollbar&&this.scrollbar.el&&i&&!i.el?(this.updateParameter("scrollbar",this.scrollbar),i.init(),i.updateSize(),i.setTranslate()):(i.destroy(),i.el=null)),t.navigation&&(this.navigation&&"boolean"!=typeof this.navigation&&this.navigation.prevEl&&this.navigation.nextEl&&n&&!n.prevEl&&!n.nextEl?(this.updateParameter("navigation",this.navigation),n.init(),n.update()):n.prevEl&&n.nextEl&&(n.destroy(),n.nextEl=null,n.prevEl=null)),t.thumbs&&this.thumbs&&this.thumbs.swiper&&(this.updateParameter("thumbs",this.thumbs),r.init()&&r.update(!0)),t.controller&&this.controller&&this.controller.control&&(this.swiperRef.controller.control=this.controller.control),this.swiperRef.update()})}updateSwiper(t){this._ngZone.runOutsideAngular(()=>{var e,n;if(!t.config&&t&&this.swiperRef&&!this.swiperRef.destroyed){for(const i in t){if(zQ.indexOf(i)>=0)continue;const r=null!==(n=null===(e=t[i])||void 0===e?void 0:e.currentValue)&&void 0!==n?n:t[i];this.updateParameter(i,r)}t.allowSlideNext&&(this.swiperRef.allowSlideNext=this.allowSlideNext),t.allowSlidePrev&&(this.swiperRef.allowSlidePrev=this.allowSlidePrev),t.direction&&this.swiperRef.changeDirection(this.direction,!1),t.breakpoints&&(this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.swiperRef.currentBreakpoint=null,this.swiperRef.setBreakpoint()),(t.thumbs||t.controller)&&this.updateInitSwiper(t),this.swiperRef.update()}})}calcLoopedSlides(){if(!this.loop)return;let t=this.slidesPerView;if(this.breakpoints){const e=hQ.prototype.getBreakpoint(this.breakpoints),n=e in this.breakpoints?this.breakpoints[e]:void 0;n&&n.slidesPerView&&(t=n.slidesPerView)}if("auto"===t)return this.loopedSlides=this.slides.length,this.slides.length;let e=this.loopedSlides||t;return e+=this.loopAdditionalSlides,e>this.slides.length&&(e=this.slides.length),this.loopedSlides=e,e}updateParameter(t,e){if(!this.swiperRef||this.swiperRef.destroyed)return;const n=t.replace(/^_/,""),i=jQ(this.swiperRef.params[n]);if(Object.keys(this.swiperRef.modules).indexOf(n)>=0){const t=this.swiperRef.modules[n].params[n];i?BQ(this.swiperRef.params[n],t):this.swiperRef.params[n]=t}i&&jQ(e)?BQ(this.swiperRef.params[n],e):this.swiperRef.params[n]=e}setIndex(t,e,n){this.isSwiperActive?t!==this.swiperRef.activeIndex&&this._ngZone.runOutsideAngular(()=>{this.loop?this.swiperRef.slideToLoop(t,e,!n):this.swiperRef.slideTo(t,e,!n)}):this.initialSlide=t}ngOnDestroy(){this._ngZone.runOutsideAngular(()=>{var t;null===(t=this.swiperRef)||void 0===t||t.destroy(!0,!1)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["swiper"],["","swiper",""]],contentQueries:function(t,e,n){if(1&t&&Xc(n,GQ,4),2&t){let t;Wc(t=Yc())&&(e.slidesEl=t)}},viewQuery:function(t,e){if(1&t&&(qc(dQ,5),qc(pQ,5),qc(fQ,5),qc(gQ,5)),2&t){let t;Wc(t=Yc())&&(e.prevElRef=t.first),Wc(t=Yc())&&(e.nextElRef=t.first),Wc(t=Yc())&&(e.scrollbarElRef=t.first),Wc(t=Yc())&&(e.paginationElRef=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.containerClasses)},inputs:{slideClass:"slideClass",wrapperClass:"wrapperClass",navigation:"navigation",pagination:"pagination",scrollbar:"scrollbar",virtual:"virtual",index:"index",config:"config",loopedSlides:"loopedSlides",initialSlide:"initialSlide",direction:"direction",touchEventsTarget:"touchEventsTarget",speed:"speed",cssMode:"cssMode",updateOnWindowResize:"updateOnWindowResize",resizeObserver:"resizeObserver",nested:"nested",focusableElements:"focusableElements",width:"width",height:"height",preventInteractionOnTransition:"preventInteractionOnTransition",userAgent:"userAgent",url:"url",edgeSwipeDetection:"edgeSwipeDetection",edgeSwipeThreshold:"edgeSwipeThreshold",freeMode:"freeMode",freeModeMomentum:"freeModeMomentum",freeModeMomentumRatio:"freeModeMomentumRatio",freeModeMomentumBounce:"freeModeMomentumBounce",freeModeMomentumBounceRatio:"freeModeMomentumBounceRatio",freeModeMomentumVelocityRatio:"freeModeMomentumVelocityRatio",freeModeSticky:"freeModeSticky",freeModeMinimumVelocity:"freeModeMinimumVelocity",autoHeight:"autoHeight",setWrapperSize:"setWrapperSize",virtualTranslate:"virtualTranslate",effect:"effect",breakpoints:"breakpoints",spaceBetween:"spaceBetween",slidesPerView:"slidesPerView",slidesPerColumn:"slidesPerColumn",slidesPerColumnFill:"slidesPerColumnFill",slidesPerGroup:"slidesPerGroup",slidesPerGroupSkip:"slidesPerGroupSkip",centeredSlides:"centeredSlides",centeredSlidesBounds:"centeredSlidesBounds",slidesOffsetBefore:"slidesOffsetBefore",slidesOffsetAfter:"slidesOffsetAfter",normalizeSlideIndex:"normalizeSlideIndex",centerInsufficientSlides:"centerInsufficientSlides",watchOverflow:"watchOverflow",roundLengths:"roundLengths",touchRatio:"touchRatio",touchAngle:"touchAngle",simulateTouch:"simulateTouch",shortSwipes:"shortSwipes",longSwipes:"longSwipes",longSwipesRatio:"longSwipesRatio",longSwipesMs:"longSwipesMs",followFinger:"followFinger",allowTouchMove:"allowTouchMove",threshold:"threshold",touchMoveStopPropagation:"touchMoveStopPropagation",touchStartPreventDefault:"touchStartPreventDefault",touchStartForcePreventDefault:"touchStartForcePreventDefault",touchReleaseOnEdges:"touchReleaseOnEdges",uniqueNavElements:"uniqueNavElements",resistance:"resistance",resistanceRatio:"resistanceRatio",watchSlidesProgress:"watchSlidesProgress",watchSlidesVisibility:"watchSlidesVisibility",grabCursor:"grabCursor",preventClicks:"preventClicks",preventClicksPropagation:"preventClicksPropagation",slideToClickedSlide:"slideToClickedSlide",preloadImages:"preloadImages",updateOnImagesReady:"updateOnImagesReady",loop:"loop",loopAdditionalSlides:"loopAdditionalSlides",loopFillGroupWithBlank:"loopFillGroupWithBlank",loopPreventsSlide:"loopPreventsSlide",allowSlidePrev:"allowSlidePrev",allowSlideNext:"allowSlideNext",swipeHandler:"swipeHandler",noSwiping:"noSwiping",noSwipingClass:"noSwipingClass",noSwipingSelector:"noSwipingSelector",passiveListeners:"passiveListeners",containerModifierClass:"containerModifierClass",slideBlankClass:"slideBlankClass",slideActiveClass:"slideActiveClass",slideDuplicateActiveClass:"slideDuplicateActiveClass",slideVisibleClass:"slideVisibleClass",slideDuplicateClass:"slideDuplicateClass",slideNextClass:"slideNextClass",slideDuplicateNextClass:"slideDuplicateNextClass",slidePrevClass:"slidePrevClass",slideDuplicatePrevClass:"slideDuplicatePrevClass",runCallbacksOnInit:"runCallbacksOnInit",observeParents:"observeParents",observeSlideChildren:"observeSlideChildren",a11y:"a11y",autoplay:"autoplay",controller:"controller",coverflowEffect:"coverflowEffect",cubeEffect:"cubeEffect",fadeEffect:"fadeEffect",flipEffect:"flipEffect",hashNavigation:"hashNavigation",history:"history",keyboard:"keyboard",lazy:"lazy",mousewheel:"mousewheel",parallax:"parallax",thumbs:"thumbs",zoom:"zoom",class:"class",id:"id"},outputs:{s__beforeBreakpoint:"_beforeBreakpoint",s__containerClasses:"_containerClasses",s__slideClass:"_slideClass",s__swiper:"_swiper",s_activeIndexChange:"activeIndexChange",s_afterInit:"afterInit",s_autoplay:"autoplay",s_autoplayStart:"autoplayStart",s_autoplayStop:"autoplayStop",s_beforeDestroy:"beforeDestroy",s_beforeInit:"beforeInit",s_beforeLoopFix:"beforeLoopFix",s_beforeResize:"beforeResize",s_beforeSlideChangeStart:"beforeSlideChangeStart",s_beforeTransitionStart:"beforeTransitionStart",s_breakpoint:"breakpoint",s_changeDirection:"changeDirection",s_click:"click",s_doubleTap:"doubleTap",s_doubleClick:"doubleClick",s_destroy:"destroy",s_fromEdge:"fromEdge",s_hashChange:"hashChange",s_hashSet:"hashSet",s_imagesReady:"imagesReady",s_init:"init",s_keyPress:"keyPress",s_lazyImageLoad:"lazyImageLoad",s_lazyImageReady:"lazyImageReady",s_loopFix:"loopFix",s_momentumBounce:"momentumBounce",s_navigationHide:"navigationHide",s_navigationShow:"navigationShow",s_observerUpdate:"observerUpdate",s_orientationchange:"orientationchange",s_paginationHide:"paginationHide",s_paginationRender:"paginationRender",s_paginationShow:"paginationShow",s_paginationUpdate:"paginationUpdate",s_progress:"progress",s_reachBeginning:"reachBeginning",s_reachEnd:"reachEnd",s_realIndexChange:"realIndexChange",s_resize:"resize",s_scroll:"scroll",s_scrollbarDragEnd:"scrollbarDragEnd",s_scrollbarDragMove:"scrollbarDragMove",s_scrollbarDragStart:"scrollbarDragStart",s_setTransition:"setTransition",s_setTranslate:"setTranslate",s_slideChange:"slideChange",s_slideChangeTransitionEnd:"slideChangeTransitionEnd",s_slideChangeTransitionStart:"slideChangeTransitionStart",s_slideNextTransitionEnd:"slideNextTransitionEnd",s_slideNextTransitionStart:"slideNextTransitionStart",s_slidePrevTransitionEnd:"slidePrevTransitionEnd",s_slidePrevTransitionStart:"slidePrevTransitionStart",s_slideResetTransitionStart:"slideResetTransitionStart",s_slideResetTransitionEnd:"slideResetTransitionEnd",s_sliderMove:"sliderMove",s_sliderFirstMove:"sliderFirstMove",s_slidesLengthChange:"slidesLengthChange",s_slidesGridLengthChange:"slidesGridLengthChange",s_snapGridLengthChange:"snapGridLengthChange",s_snapIndexChange:"snapIndexChange",s_tap:"tap",s_toEdge:"toEdge",s_touchEnd:"touchEnd",s_touchMove:"touchMove",s_touchMoveOpposite:"touchMoveOpposite",s_touchStart:"touchStart",s_transitionEnd:"transitionEnd",s_transitionStart:"transitionStart",s_update:"update",s_zoomChange:"zoomChange",s_swiper:"swiper",indexChange:"indexChange"},features:[ye],ngContentSelectors:LQ,decls:13,vars:17,consts:[[4,"ngIf"],["class","swiper-scrollbar",4,"ngIf"],["class","swiper-pagination",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["slidesTemplate",""],[1,"swiper-button-prev"],["prevElRef",""],[1,"swiper-button-next"],["nextElRef",""],[1,"swiper-scrollbar"],["scrollbarElRef",""],[1,"swiper-pagination"],["paginationElRef",""],[3,"ngClass","style","ngSwitch",4,"ngFor","ngForOf"],[3,"ngClass","ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,e){if(1&t&&(wa(IQ),xa(0),Jo(1,mQ,5,0,"ng-container",0),Jo(2,bQ,2,0,"div",1),Jo(3,yQ,2,0,"div",2),ra(4,"div",3),xa(5,1),Jo(6,_Q,1,0,void 0,4),Jo(7,xQ,1,0,void 0,4),Jo(8,EQ,1,0,void 0,4),xa(9,2),sa(),xa(10,3),Jo(11,MQ,2,3,"ng-template",null,5,Jc)),2&t){const t=ta(12);ws(1),na("ngIf",e.navigation&&e.showNavigation),ws(1),na("ngIf",e.scrollbar&&e.showScrollbar),ws(1),na("ngIf",e.pagination&&e.showPagination),ws(1),na("ngClass",e.wrapperClass),Ko("id",e.id),ws(2),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(11,DQ,e.prependSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(13,RQ,e.activeSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(15,NQ,e.appendSlides))}},directives:[_h,mh,kh,yh,Eh,Ch,Oh],pipes:[Dh],styles:["\n swiper {\n display: block;\n }\n "],encapsulation:2,changeDetection:0}),t})(),qQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();function XQ(){return(XQ=Object.assign||function(t){for(var e=1;e0&&(n(s,!!t.isBeginning),t.params.watchOverflow&&t.enabled&&s[t.isLocked?"addClass":"removeClass"](e.lockClass)),r&&r.length>0&&(n(r,!!t.isEnd),t.params.watchOverflow&&t.enabled&&r[t.isLocked?"addClass":"removeClass"](e.lockClass))}},onPrevClick:function(t){var e=this;t.preventDefault(),(!e.isBeginning||e.params.loop)&&e.slidePrev()},onNextClick:function(t){var e=this;t.preventDefault(),(!e.isEnd||e.params.loop)&&e.slideNext()},init:function(){var t,e,n=this,i=n.params.navigation;n.params.navigation=function(t,e,n,i){var r=_K();return n&&Object.keys(i).forEach(function(n){if(!e[n]&&!0===e.auto){var s=r.createElement("div");s.className=i[n],t.append(s),e[n]=s}}),e}(n.$el,n.params.navigation,n.params.createElements,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),(i.nextEl||i.prevEl)&&(i.nextEl&&(t=FK(i.nextEl),n.params.uniqueNavElements&&"string"==typeof i.nextEl&&t.length>1&&1===n.$el.find(i.nextEl).length&&(t=n.$el.find(i.nextEl))),i.prevEl&&(e=FK(i.prevEl),n.params.uniqueNavElements&&"string"==typeof i.prevEl&&e.length>1&&1===n.$el.find(i.prevEl).length&&(e=n.$el.find(i.prevEl))),t&&t.length>0&&t.on("click",n.navigation.onNextClick),e&&e.length>0&&e.on("click",n.navigation.onPrevClick),HK(n.navigation,{$nextEl:t,nextEl:t&&t[0],$prevEl:e,prevEl:e&&e[0]}),n.enabled||(t&&t.addClass(i.lockClass),e&&e.addClass(i.lockClass)))},destroy:function(){var t=this,e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n.length&&(n.off("click",t.navigation.onNextClick),n.removeClass(t.params.navigation.disabledClass)),i&&i.length&&(i.off("click",t.navigation.onPrevClick),i.removeClass(t.params.navigation.disabledClass))}},KQ={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){$K(this,{navigation:XQ({},YQ)})},on:{init:function(t){t.navigation.init(),t.navigation.update()},toEdge:function(t){t.navigation.update()},fromEdge:function(t){t.navigation.update()},destroy:function(t){t.navigation.destroy()},"enable disable":function(t){var e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass),i&&i[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass)},click:function(t,e){var n=t.navigation,i=n.$nextEl,r=n.$prevEl,s=e.target;if(t.params.navigation.hideOnClick&&!FK(s).is(r)&&!FK(s).is(i)){if(t.pagination&&t.params.pagination&&t.params.pagination.clickable&&(t.pagination.el===s||t.pagination.el.contains(s)))return;var o;i?o=i.hasClass(t.params.navigation.hiddenClass):r&&(o=r.hasClass(t.params.navigation.hiddenClass)),t.emit(!0===o?"navigationShow":"navigationHide"),i&&i.toggleClass(t.params.navigation.hiddenClass),r&&r.toggleClass(t.params.navigation.hiddenClass)}}}};let QQ=(()=>{class t{constructor(){hQ.use([KQ])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,qQ]]}),t})(),ZQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),JQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX,f_,QQ,ZQ]]}),t})(),tZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Dp,JQ]]}),t})();const eZ={isolated:!0},nZ=new oi("Message service configuration",{providedIn:"root",factory:()=>eZ});let iZ=(()=>{class t{constructor(t,e,n){this.source=t,this.channel=e,this.messages=n}sendMessage(t){this.channel.next({id:this.nextMessageId(),source:this.source,payload:t})}getMessages(){return this.messages.pipe(Hd(t=>t.source!==this.source))}getMessagesFromSource(t){return this.getMessages().pipe(Hd(e=>e.source===t))}getMessagesFromSources(t){return this.getMessages().pipe(Hd(e=>t.includes(e.source)))}nextMessageId(){return t.counter++}}return t.counter=0,t})(),rZ=(()=>{class t{constructor(t,e){this.config=t,this.parent=e,this.channel=new P,this.messages=t.isolated||!e?this.channel.asObservable():U([this.channel,e.messages.pipe(Xp(()=>!this.channel.closed))]).pipe(Y())}ngOnDestroy(){this.channel.complete()}connect(t){return new iZ(t,this.channel,this.messages)}}return t.\u0275fac=function(e){return new(e||t)(Ci(nZ),Ci(t,12))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),sZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:nZ,useValue:eZ}],imports:[[gd,ky,f_]]}),t})();function oZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function aZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function lZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function cZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}const uZ=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",hZ=jy(class{constructor(t){this._elementRef=t}},"primary"),dZ=new oi("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}});class pZ extends hZ{constructor(t,e,n,i,r){super(t),this._document=n,this._diameter=100,this._value=0,this._fallbackAnimation=!1,this.mode="determinate";const s=pZ._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),s.has(n.head)||s.set(n.head,new Set([100])),this._fallbackAnimation=e.EDGE||e.TRIDENT,this._noopAnimations="NoopAnimations"===i&&!!r&&!r._forceAnimations,r&&(r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth))}get diameter(){return this._diameter}set diameter(t){this._diameter=bd(t),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(t){this._strokeWidth=bd(t)}get value(){return"determinate"===this.mode?this._value:0}set value(t){this._value=Math.max(0,Math.min(100,bd(t)))}ngOnInit(){const t=this._elementRef.nativeElement;this._styleRoot=xp(t)||this._document.head,this._attachStyleNode(),t.classList.add(`mat-progress-spinner-indeterminate${this._fallbackAnimation?"-fallback":""}-animation`)}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const t=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${t} ${t}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_attachStyleNode(){const t=this._styleRoot,e=this._diameter,n=pZ._diameters;let i=n.get(t);if(!i||!i.has(e)){const r=this._document.createElement("style");r.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),r.textContent=this._getAnimationText(),t.appendChild(r),i||(i=new Set,n.set(t,i)),i.add(e)}}_getAnimationText(){const t=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*t).replace(/END_VALUE/g,""+.2*t).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}pZ.\u0275fac=function(t){return new(t||pZ)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},pZ.\u0275cmp=Jt({type:pZ,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(t,e){2&t&&(Ko("aria-valuemin","determinate"===e.mode?0:null)("aria-valuemax","determinate"===e.mode?100:null)("aria-valuenow","determinate"===e.mode?e.value:null)("mode",e.mode),La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,oZ,1,9,"circle",1),Jo(2,aZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),pZ._diameters=new WeakMap;let fZ=(()=>{class t extends pZ{constructor(t,e,n,i,r){super(t,e,n,i,r),this.mode="indeterminate"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},t.\u0275cmp=Jt({type:t,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(t,e){2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color"},features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,lZ,1,9,"circle",1),Jo(2,cZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),t})(),gZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,Rh],Ny]}),t})(),mZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,gZ]]}),t})(),bZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,gZ]]}),t})();const yZ={initialConfig:{},parse:{},rename:{}};class vZ{constructor(t,e){this.configState=t,this.storedChanges={},this.options=Object.assign(Object.assign({},yZ),e)}addChanges(t){this.storedChanges=Object.assign(Object.assign({},this.storedChanges),t)}applyChanges(t,e={}){void 0===t&&(t=this.storedChanges,this.storedChanges={});const{configState:n,options:{initialConfig:i}}=this,r=n.snapshot,s=Object.assign(Object.assign(Object.assign({},i),r),e);for(const[o,a]of Object.entries(t))this.processChange(o,a,s);n.setConfig(s)}processChange(t,e,n){var i,r;const{options:{parse:s,rename:o}}=this,a=null!==(i=o[t])&&void 0!==i?i:t,l=e.currentValue,c=null!==(r=s[t])&&void 0!==r?r:s[a];if(null==l)delete n[a];else if(c)try{n[a]=c(l)}catch(u){console.warn(`Failed to parse ${t} = ${l}`,u.message)}else n[a]=l}}let _Z=(()=>{class t{constructor(t,e,n={}){this.configState=t,this.cdr=e,this.options=n,this.initialized=!1,this.configManager=new vZ(this.configState,this.options)}ngOnInit(){var t;this._init=setTimeout(()=>this.initialize(),null!==(t=this.options.initialDelay)&&void 0!==t?t:0)}ngOnDestroy(){this._init&&clearTimeout(this._init)}ngOnChanges(t){this.configManager.addChanges(t),this.initialized&&this.configManager.applyChanges()}initialize(){this._init=void 0,!this.initialized&&(this.configManager.applyChanges(),this.initialized=!0,this.cdr.markForCheck())}}return t.\u0275fac=function(t){!function(){throw new Error("invalid")}()},t.\u0275dir=se({type:t,features:[ye]}),t})();const wZ={boolean:t=>"false"!=`${t}`,json:t=>"string"==typeof t?JSON.parse(t):t,function:t=>{if("function"!=typeof t)throw new Error("Expected a javascript function");return t}};let xZ=(()=>{class t{constructor(){this.className="ccf-spinner-overlay",this.active=!1}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-spinner-overlay"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("active",e.active))},inputs:{active:"active",text:"text"},decls:3,vars:1,consts:[[1,"content"]],template:function(t,e){1&t&&(oa(0,"mat-spinner"),ra(1,"div",0),Za(2),sa()),2&t&&(ws(2),Ja(e.text))},directives:[fZ],styles:["[_nghost-%COMP%]{display:flex;position:absolute;width:100%;height:100%;z-index:99;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;visibility:hidden;opacity:0;transition:visibility .6s,opacity .4s ease-in-out}[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{margin-bottom:1rem;opacity:0;transition:opacity .3s ease-in-out .3s}.active[_nghost-%COMP%]{pointer-events:auto;visibility:visible;opacity:1}.active[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{opacity:1}"],changeDetection:0}),t})();const SZ=rZ,EZ=["*"];let CZ=(()=>{class t{constructor(t,e){this.className="ccf-drawer-content",this.animationsEnabled=!1,this.leftMargin=0,this.rightMargin=0,this.faded=!1,this.drawers=[],this.subscriptions=new g;const n=t.connect(this).getMessages();this.subscriptions.add(n.subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){switch(t.payload.type){case"drawer-containers-changed":return this.drawers=t.payload.drawers,this.updateFaded(),!0;case"drawer-initialized":return this.animationsEnabled=!0,!0;case"drawer-toggled":{const e=t.source.position,{opened:n,width:i,margin:r}=t.payload;return this.updateMargin(e,n,i,r),this.updateFaded(),!0}default:return!1}}updateMargin(t,e,n,i){const r=e?n+i:i;"start"===t?this.leftMargin=r:this.rightMargin=r}updateFaded(){const[t,e]=this.drawers;this.faded=(null==t?void 0:t.opened)&&(null==t?void 0:t.expanded)||(null==e?void 0:e.opened)&&(null==e?void 0:e.expanded)}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-content"]],hostVars:9,hostBindings:function(t,e){2&t&&(rl("@fadeInOut",e.faded),Ba(e.className),La("margin-left",e.leftMargin,"px")("margin-right",e.rightMargin,"px"),ja("cff-drawer-content-animations",e.animationsEnabled))},ngContentSelectors:EZ,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:["[_nghost-%COMP%]{display:block;height:calc(100% - 5.5rem);z-index:2;overflow:auto}.cff-drawer-content-animations[_nghost-%COMP%]{transition-duration:.5s;transition-timing-function:ease-in-out;transition-property:margin-left,margin-right}"],data:{animation:[Vg("fadeInOut",[$g("false",Hg({opacity:1})),$g("true",Hg({opacity:0})),Wg("false <=> true",zg("1s"))])]},changeDetection:0}),t})();const OZ=["*"],TZ={params:{width:0,margin:0,margin2:0}};class kZ{constructor(){this.initialized=!1,this.deferred=new Promise(t=>{this.resolve=t})}set(){this.initialized=!0,this.resolve()}wait(){return lw(this,void 0,void 0,function*(){return this.deferred})}valueOf(){return this.initialized}}let AZ=(()=>{class t{constructor(t,e,n){this.element=n,this.className="ccf-drawer",this._position="start",this._opened=!1,this._expanded=!1,this.openedChange=new Rc(!0),this.expandedChange=new Rc(!0),this.stateChange=new Rc(!0),this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._measuredWidth=0,this.width=0,this._measuredMargin=0,this.margin2=0,this.initialized=new kZ,this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get classEnd(){return"end"===this.position}get position(){return this._position}set position(t){this._position=t||"start"}get opened(){return this._opened}set opened(t){this.toggle(md(t))}get expanded(){return this._expanded}set expanded(t){this.toggleExpanded(md(t))}get expandedStateObj(){return{value:this.expandedState2,params:{width:this.width,margin:this.measuredMargin,margin2:this.margin2}}}get measuredWidth(){if(this._measuredWidth>0)return this._measuredWidth;const t=this.element.nativeElement;if(!t)return 0;const e=t.getBoundingClientRect(),n=e.right-e.left;return 0===n?0:(this._measuredWidth=n,n)}get measuredMargin(){if(this._measuredMargin>0)return this._measuredMargin;const t=this.element.nativeElement;if(!t)return 0;const e=globalThis.getComputedStyle(t).getPropertyValue("start"===this.position?"margin-right":"margin-left"),n=Number(e.slice(0,-2));return this._measuredMargin=n,n}ngAfterViewInit(){this.initialized.set(),setTimeout(()=>this.channel.sendMessage({type:"drawer-initialized"}))}ngOnDestroy(){this.subscriptions.unsubscribe()}open(){this.toggle(!0)}close(){this.toggle(!1)}toggle(t=!this.opened){this.opened!==t&&(t?this.openedState=this.initialized.valueOf()?"open":"open-instant":(this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._expanded=!1),this._opened=t,this.sendToggle())}openExpanded(){this.toggleExpanded(!0)}closeExpanded(){this.toggleExpanded(!1)}toggleExpanded(t=!this.expanded){this.expanded!==t&&(t?this.expandedState=this.initialized.valueOf()?"open":"open-instant":(this.expandedState="closed",this.expandedState2="collapsed"),this._expanded=t,this.sendToggle())}closeOpenDone(){this.openedChange.emit(this.opened)}expandCollapseDone(){this.expandedChange.emit(this.expanded)}sendToggle(){return lw(this,void 0,void 0,function*(){yield this.initialized.wait(),this.channel.sendMessage({type:"drawer-toggled",opened:this.opened,expanded:this.expanded,width:this.measuredWidth,margin:this.measuredMargin}),this.stateChange.emit()})}handleMessage(t){switch(t.payload.type){case"drawer-toggled":return this.syncExpanded(t.source),!0;default:return!1}}syncExpanded(t){(this.expanded||t.expanded)&&(this.expanded&&t.expanded?this.expandedState2=t.expandedState2="half":this.expanded?t.opened?(this.expandedState2="extended",this.width=t.measuredWidth+t.measuredMargin):(this.expandedState2="full",this.margin2=t.measuredMargin):this.opened?(t.expandedState2="extended",t.width=this.measuredWidth+this.measuredMargin):(t.expandedState2="full",t.margin2=this.measuredMargin))}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc),ea(kl))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer"]],hostVars:10,hostBindings:function(t,e){1&t&&ga("@openClose.done",function(){return e.closeOpenDone()})("@expandCollapse.done",function(){return e.expandCollapseDone()}),2&t&&(rl("@openClose",e.openedState)("@expandCollapse",e.expandedStateObj),Ba(e.className),ja("ccf-drawer-end",e.classEnd)("ccf-drawer-opened",e.opened)("ccf-drawer-expanded",e.expanded))},inputs:{position:"position",opened:"opened",expanded:"expanded"},outputs:{openedChange:"openedChange",expandedChange:"expandedChange",stateChange:"stateChange"},exportAs:["ccfDrawer"],ngContentSelectors:OZ,decls:2,vars:0,consts:[[1,"cff-drawer-inner-container"]],template:function(t,e){1&t&&(wa(),ra(0,"div",0),xa(1),sa())},styles:["[_nghost-%COMP%]{display:block;position:absolute;top:0;bottom:0;z-index:2;outline:0;transform:translate(-100%);background-color:#fff}.ccf-drawer-end[_nghost-%COMP%]{right:0;transform:translate(100%)}[_nghost-%COMP%] .cff-drawer-inner-container[_ngcontent-%COMP%]{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}"],data:{animation:[Vg("openClose",[$g("open, open-instant",Hg({transform:"none"})),$g("closed",Hg({})),Wg("closed => open-instant",zg(0)),Wg("closed <=> open, open-instant => closed",zg(".5s ease-in-out"))]),Vg("expandCollapse",[$g("collapsed",Hg({})),$g("half",Hg({width:"calc(50% - {{ margin }}px)"}),TZ),$g("extended",Hg({width:"calc(100% - {{ width }}px - {{ margin }}px)"}),TZ),$g("full",Hg({width:"calc(100% - {{ margin }}px - {{ margin2 }}px)"}),TZ),Wg("* <=> *",zg(".5s ease-in-out"))])]},changeDetection:0}),t})();function PZ(t,e){1&t&&(ra(0,"ccf-drawer-content"),xa(1,2),sa())}const MZ=[[["ccf-drawer"]],[["ccf-drawer-content"]],"*"],IZ=["ccf-drawer","ccf-drawer-content","*"];function DZ(t){throw new Error(`Multiple drawers in position ${t}`)}let RZ=(()=>{class t{constructor(t,e){this.cdr=e,this.className="ccf-drawer-container",this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get content(){var t;return null!==(t=this.content1.first)&&void 0!==t?t:this.content2.first}get hasWrappedContent(){return 0!==this.content1.length}ngAfterViewInit(){this.drawers.changes.pipe(Kd(null)).subscribe(()=>{const t=this.validateDrawers();this.channel.sendMessage({type:"drawer-containers-changed",drawers:t}),this.cdr.markForCheck()}),this.content1.changes.pipe(Kd(null)).subscribe(()=>{this.channel.sendMessage({type:"content-container-changed",content:this.content}),this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return!0}validateDrawers(){const t=this.drawers.toArray(),e=t.filter(t=>"start"===t.position),n=t.filter(t=>"end"===t.position);return e.length>1&&DZ("start"),n.length>1&&DZ("end"),[e[0],n[0]]}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-container"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,AZ,5),Xc(n,CZ,5)),2&t){let t;Wc(t=Yc())&&(e.drawers=t),Wc(t=Yc())&&(e.content1=t)}},viewQuery:function(t,e){if(1&t&&qc(CZ,5),2&t){let t;Wc(t=Yc())&&(e.content2=t)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},exportAs:["ccfDrawerContainer"],features:[_l([SZ])],ngContentSelectors:IZ,decls:3,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&(wa(MZ),xa(0),xa(1,1),Jo(2,PZ,2,0,"ccf-drawer-content",0)),2&t&&(ws(2),na("ngIf",!e.hasWrappedContent))},directives:[_h,CZ],styles:["[_nghost-%COMP%]{display:block;position:relative;z-index:1;overflow:hidden;-webkit-overflow-scrolling:touch}"],changeDetection:0}),t})();function NZ(t,e){if(1&t&&(ra(0,"mat-option",6),ra(1,"div"),Za(2),sa(),sa()),2&t){const t=e.$implicit,n=va();na("value",t),ws(1),Ba(n.optionsVisible),ws(1),tl(" ",t," ")}}let LZ=(()=>{class t{constructor(t){this.ga=t,this.selectionChange=new Rc,this.optionsVisible="invisible"}toggleOptions(){this.optionsVisible="visible"===this.optionsVisible?"invisible":"visible"}selectionChanged(t){this.selection=t,this.ga.event("selection_change","dropdown",`${this.label}:${t}`),this.selectionChange.emit(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dropdown"]],inputs:{label:"label",options:"options",selection:"selection"},outputs:{selectionChange:"selectionChange"},decls:7,vars:3,consts:[[1,"ccf-dropdown","wrapper"],[1,"container"],[1,"dropdown-form-field"],[1,"label"],["disableOptionCentering","true","panelClass","option-panel","disableRipple","true",1,"selected-value",3,"value","selectionChange","openedChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-form-field",2),ra(3,"div",3),Za(4),sa(),ra(5,"mat-select",4),fa("selectionChange",function(t){return e.selectionChanged(t.value)})("openedChange",function(){return e.toggleOptions()}),Jo(6,NZ,3,5,"mat-option",5),sa(),sa(),sa(),sa()),2&t&&(ws(4),tl(" ",e.label," "),ws(1),na("value",e.selection),ws(1),na("ngForOf",e.options))},directives:[lU,XX,yh,av],styles:["@-webkit-keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dropdown-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:1em;padding-right:1em;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{font-size:.875rem;border:none}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix mat-select{font-size:1rem;font-weight:bold}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .option-panel{-webkit-animation:slideInHorizontalDropdown .3s;animation:slideInHorizontalDropdown .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;position:absolute!important;top:1.55rem;max-width:9.5rem} .option-panel .mat-option{border-bottom-width:1px;border-bottom-style:solid;padding-left:1em} .option-panel :last-child{border-bottom:none} .cdk-overlay-pane{min-width:0rem!important}.dropdown-form-field[_ngcontent-%COMP%]{height:3rem;width:100%}.dropdown-form-field[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{padding-bottom:.063rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem} .ccf-dropdown .mat-select-arrow-wrapper{transform:translatey(-.5em)}"],changeDetection:0}),t})();const jZ=["popover"];function FZ(t,e){if(1&t){const t=ua();ra(0,"div",7,8),ra(2,"div"),ra(3,"div",9),Za(4),sa(),ra(5,"input",10),fa("keyup",function(e){return $e(t),va().onKeyLow(e)}),sa(),sa(),ra(6,"ng5-slider",11),fa("valueChange",function(e){return $e(t),va().lowValue=e})("highValueChange",function(e){return $e(t),va().highValue=e})("userChangeEnd",function(){return $e(t),va().sliderValueChanged()}),sa(),ra(7,"div"),ra(8,"div",12),Za(9),sa(),ra(10,"input",13),fa("keyup",function(e){return $e(t),va().onKeyHigh(e)}),sa(),sa(),sa()}if(2&t){const t=va();ws(2),nl("label min fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.floor,"> "),ws(1),Sa("value",t.lowValue),ws(1),nl("slider fade-in ",t.contentsVisible,""),na("options",t.options)("value",t.lowValue)("highValue",t.highValue),ws(1),nl("label max fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.ceil," "),ws(1),Sa("value",t.highValue)}}let BZ=(()=>{class t{constructor(t,e,n){this.element=e,this.ga=n,this.selectionChange=new Rc,this.isSliderOpen=!1,this.contentsVisible="invisible",this.isSliderInitialized=!1;const i=t.position().flexibleConnectedTo(e).withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayRef=t.create({panelClass:"slider-pane",positionStrategy:i})}get rangeLabel(){const{lowValue:t,highValue:e}=this;return t===e?`${t}`:`${t}-${e}`}ngOnChanges(t){t.valueRange&&this.optionsChanged(),t.selection&&(this.lowValue=Math.min(...this.selection),this.highValue=Math.max(...this.selection))}optionsChanged(){var t,e;this.options={floor:this.valueRange?this.valueRange[0]:0,ceil:this.valueRange?this.valueRange[1]:0,step:1,hideLimitLabels:!0,hidePointerLabels:!0},this.lowValue=null!==(t=this.options.floor)&&void 0!==t?t:0,this.highValue=null!==(e=this.options.ceil)&&void 0!==e?e:0}ngOnDestroy(){this.overlayRef.dispose()}closeSliderPopover(t){var e,n;const{element:i,isSliderOpen:r,popoverElement:s}=this;r&&(i.nativeElement.contains(t)||(null===(n=null===(e=null==s?void 0:s.nativeElement)||void 0===e?void 0:e.contains)||void 0===n?void 0:n.call(e,t))||(this.overlayRef.detach(),this.isSliderInitialized=!1,this.isSliderOpen=!1,this.contentsVisible="invisible"))}toggleSliderPopover(){const{isSliderOpen:t,isSliderInitialized:e}=this;e?(this.overlayRef.detach(),this.isSliderInitialized=!1):!e&&!t&&this.initializeSliderPopover(),this.contentsVisible="visible"===this.contentsVisible?"invisible":"visible",this.isSliderOpen=!t}sliderValueChanged(){const{lowValue:t,highValue:e}=this;this.selection=[t,e],this.ga.event("slider_range_change","dual_slider",`${this.label}:${t}:${e}`),this.selectionChange.emit(this.selection)}initializeSliderPopover(){const{overlayRef:t,popoverPortal:e}=this;t.attach(e),t.updatePosition(),this.isSliderInitialized=!0}onKeyLow(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.lowValue=e),t.target.value=String(this.lowValue),t.target.blur(),this.sliderValueChanged())}onKeyHigh(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.highValue=e),t.target.value=String(this.highValue),t.target.blur(),this.sliderValueChanged())}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dual-slider"]],viewQuery:function(t,e){if(1&t&&(qc(Vp,7),qc(jZ,5,kl)),2&t){let t;Wc(t=Yc())&&(e.popoverPortal=t.first),Wc(t=Yc())&&(e.popoverElement=t.first)}},hostBindings:function(t,e){1&t&&fa("click",function(t){return e.closeSliderPopover(t.target)},!1,Ir)("touchstart",function(t){return e.closeSliderPopover(t.target)},!1,Ir)},inputs:{label:"label",valueRange:"valueRange",selection:"selection"},outputs:{selectionChange:"selectionChange"},features:[ye],decls:10,vars:4,consts:[[1,"ccf-slider","wrapper"],[1,"container"],["class","ccf-slider detached",4,"cdk-portal"],[1,"slider-form-field",3,"click"],[1,"slider-labels"],[1,"name-label"],[1,"range-label"],[1,"ccf-slider","detached"],["popover",""],[1,"label","floor"],["type","text",1,"input-low",3,"value","keyup"],[3,"options","value","highValue","valueChange","highValueChange","userChangeEnd"],[1,"label","ceil"],["type","text",1,"input-high",3,"value","keyup"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Jo(2,FZ,11,16,"div",2),ra(3,"mat-form-field",3),fa("click",function(){return e.toggleSliderPopover()}),ra(4,"div",4),ra(5,"span",5),Za(6),sa(),ra(7,"span",6),Za(8),sa(),sa(),oa(9,"mat-select"),sa(),sa(),sa()),2&t&&(ws(3),ja("highlight",e.isSliderOpen),ws(3),Ja(e.label),ws(2),Ja(e.rangeLabel))},directives:[zp,lU,XX,BY],styles:[".slider-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;font-size:.875rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.slider-labels[_ngcontent-%COMP%]{display:flex;flex-direction:column}.slider-labels[_ngcontent-%COMP%] .name-label[_ngcontent-%COMP%]{padding-bottom:.25rem}.slider-labels[_ngcontent-%COMP%] .range-label[_ngcontent-%COMP%]{font-weight:bold} .ccf-slider.wrapper .mat-select-arrow-wrapper{transform:translatey(-1.5em)}@-webkit-keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .slider-pane{position:absolute!important;top:-1px}.ccf-slider.detached[_ngcontent-%COMP%]{-webkit-animation:slideInHorizontalSlider .3s;animation:slideInHorizontalSlider .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;display:flex;justify-content:center;align-items:center;width:0rem;height:4.375rem;padding:.75rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] {visibility:hidden;margin-top:.9375rem;margin-bottom:.9375rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-bar{opacity:.2;height:.15rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-selection{opacity:1}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer{width:1rem;height:1rem;top:-.405rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer:after{display:none}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:2rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.min[_ngcontent-%COMP%]{margin-right:1rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%]{margin-left:1rem;align-items:flex-end}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{text-align:right}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .floor[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%]{font-size:.875rem}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:none;width:1.75rem;font-size:1rem;font-weight:bold;padding:0}"]}),t})();function VZ(t,e){if(1&t){const t=ua();ra(0,"div",4),ra(1,"mat-checkbox",5),fa("change",function(e){const n=$e(t).$implicit;return va().filterOnChange(e,n)}),Za(2),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("checked",null==n.selection?null:n.selection.includes(t)),ws(1),tl(" ",t," ")}}let zZ=(()=>{class t{constructor(t){this.ga=t,this.selection=[],this.columns=3,this.selectionChange=new Rc}filterOnChange(t,e){t.checked?(this.selection=[...this.selection,e],this.ga.event("filter_added","filter_checkbox",e)):(this.selection=this.selection.filter(t=>t!==e),this.ga.event("filter_removed","filter_checkbox",e)),this.selectionChange.emit(this.selection)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-checkbox"]],inputs:{label:"label",options:"options",selection:"selection",columns:"columns"},outputs:{selectionChange:"selectionChange"},decls:5,vars:6,consts:[[1,"filter-container"],[1,"filter-label"],[1,"options-container"],["class","option",4,"ngFor","ngForOf"],[1,"option"],[3,"checked","change"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Za(2),sa(),ra(3,"div",2),Jo(4,VZ,3,2,"div",3),sa(),sa()),2&t&&(ws(2),Ja(e.label),ws(1),ja("three",3===e.columns)("four",4===e.columns),ws(1),na("ngForOf",e.options))},directives:[yh,OX],styles:[".mat-checkbox.mat-accent .mat-checkbox-checkmark-path{stroke:#fff!important} .mat-checkbox.mat-accent .mat-checkbox-inner-container{margin-right:1rem}.filter-label[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:bold}.options-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap}.options-container.three[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:33%}.options-container.four[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:25%}.option[_ngcontent-%COMP%]{color:#fafafa}"],changeDetection:0}),t})();const UZ=function(){return["Both","Male","Female"]},HZ=function(){return[1,110]},$Z=function(){return[13,83]};let GZ=(()=>{class t{constructor(t){this.ga=t,this.filtersChange=new Rc,this.applyFilters=new Rc}updateFilter(t,e){this.filters=Object.assign(Object.assign({},this.filters),{[e]:t}),this.ga.event("filter_update","filter_content",`${e}:${t}`),this.filtersChange.emit(this.filters)}applyButtonClick(){this.ga.event("filters_applied","filter_content"),this.applyFilters.emit(this.filters)}refreshFilters(){this.filters=JSON.parse(JSON.stringify(iX)),this.ga.event("filters_reset","filter_content"),this.filtersChange.emit(this.filters)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-content"]],inputs:{hidden:"hidden",filters:"filters",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange",applyFilters:"applyFilters"},decls:14,vars:23,consts:[[1,"patient-filters"],["label","Sex",3,"options","selection","selectionChange"],["label","Age",3,"valueRange","selection","selectionChange"],["label","BMI",3,"valueRange","selection","selectionChange"],[1,"filter","assays"],["label","Assay Types",3,"columns","options","selection","selectionChange"],[1,"filter","providers"],["label","Tissue Providers",3,"columns","options","selection","selectionChange"],[1,"button-container"],["mat-button","",1,"outline-button",3,"click"],[1,"refresh-icon"],[1,"icon","refresh",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"ccf-dropdown",1),fa("selectionChange",function(t){return e.updateFilter(t,"sex")}),sa(),ra(2,"ccf-dual-slider",2),fa("selectionChange",function(t){return e.updateFilter(t,"ageRange")}),sa(),ra(3,"ccf-dual-slider",3),fa("selectionChange",function(t){return e.updateFilter(t,"bmiRange")}),sa(),sa(),ra(4,"div",4),ra(5,"ccf-checkbox",5),fa("selectionChange",function(t){return e.updateFilter(t,"technologies")}),sa(),sa(),ra(6,"div",6),ra(7,"ccf-checkbox",7),fa("selectionChange",function(t){return e.updateFilter(t,"tmc")}),sa(),sa(),ra(8,"div",8),ra(9,"button",9),fa("click",function(){return e.applyButtonClick()}),Za(10,"APPLY FILTERS"),sa(),ra(11,"div",10),ra(12,"mat-icon",11),fa("click",function(){return e.refreshFilters()}),Za(13,"refresh"),sa(),sa(),sa()),2&t&&(ja("hidden",e.hidden),ws(1),na("options",Oc(20,UZ))("selection",null==e.filters?null:e.filters.sex),ws(1),na("valueRange",Oc(21,HZ))("selection",null==e.filters?null:e.filters.ageRange),ws(1),na("valueRange",Oc(22,$Z))("selection",null==e.filters?null:e.filters.bmiRange),ws(1),ja("hidden",e.hidden),ws(1),na("columns",4)("options",e.technologyFilters)("selection",null==e.filters?null:e.filters.technologies),ws(1),ja("hidden",e.hidden),ws(1),na("columns",3)("options",e.providerFilters)("selection",null==e.filters?null:e.filters.tmc),ws(1),ja("hidden",e.hidden))},directives:[LZ,BZ,zZ,__,p_],styles:[".filter[_ngcontent-%COMP%]{margin-top:2rem}.filter.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.filter.assays[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{margin-right:0 rem;width:25%}.button-container[_ngcontent-%COMP%]{margin-top:2rem;display:flex;flex-direction:row-reverse;align-items:center}.button-container.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.outline-button[_ngcontent-%COMP%]{box-shadow:.1rem .1rem .2rem #0000001d}.refresh-icon[_ngcontent-%COMP%]{padding:.25rem;border-radius:.25rem;margin-right:1rem;display:flex;justify-content:center;align-items:center;transition:.6s}.refresh-icon[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{cursor:pointer;transition:.6s;transition-property:background}.patient-filters[_ngcontent-%COMP%]{display:flex;width:90%;padding-top:1rem}.patient-filters.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.patient-filters[_ngcontent-%COMP%] ccf-dual-slider[_ngcontent-%COMP%]{margin-left:.5rem;width:33%}.patient-filters[_ngcontent-%COMP%] ccf-dropdown[_ngcontent-%COMP%]{width:33%}"],changeDetection:0}),t})();function WZ(t,e){1&t&&(ra(0,"div"),ra(1,"mat-icon",7),Za(2,"close"),sa(),sa())}function qZ(t,e){1&t&&oa(0,"mat-icon",8)}let XZ=(()=>{class t{constructor(){this.filtersChange=new Rc,this.filtersVisible=!1}toggleFilterVisible(){this.filtersVisible=!this.filtersVisible}removeBox(){this.filtersVisible=!1}applyFilters(t){this.filters=t,this.filtersChange.emit(t),this.removeBox()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-popover"]],inputs:{filters:"filters",drawerExpanded:"drawerExpanded",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange"},decls:8,vars:12,consts:[[1,"filters-popover"],[1,"show-hide",3,"click"],[4,"ngIf","ngIfElse"],["notShow",""],[1,"popup-container"],[1,"popup-body"],[3,"technologyFilters","providerFilters","hidden","filters","applyFilters"],[1,"icon"],["svgIcon","filter",1,"icon","funnel"]],template:function(t,e){if(1&t&&(ra(0,"div",0),ra(1,"button",1),fa("click",function(){return e.toggleFilterVisible()}),Jo(2,WZ,3,0,"div",2),Jo(3,qZ,1,0,"ng-template",null,3,Jc),sa(),ra(5,"div",4),ra(6,"div",5),ra(7,"ccf-filters-content",6),fa("applyFilters",function(t){return e.applyFilters(t)}),sa(),sa(),sa(),sa()),2&t){const t=ta(4);ja("expanded",e.drawerExpanded),ws(2),na("ngIf",e.filtersVisible)("ngIfElse",t),ws(3),ja("visible",e.filtersVisible)("hidden",!e.filtersVisible),ws(2),na("technologyFilters",e.technologyFilters)("providerFilters",e.providerFilters)("hidden",!e.filtersVisible)("filters",e.filters)}},directives:[_h,GZ,p_],styles:[".filters-popover[_ngcontent-%COMP%]{position:inherit}.filters-popover.expanded[_ngcontent-%COMP%]{position:relative}.filters-popover.expanded[_ngcontent-%COMP%] .popup-container[_ngcontent-%COMP%]{right:inherit}.filters-popover.expanded[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding-left:4em!important}.popup-container[_ngcontent-%COMP%]{position:absolute;z-index:5;top:1.2rem;left:1.48rem;box-shadow:.2rem .2rem 1rem #00000058}.popup-container[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding:1.5rem;position:relative;height:26.5rem}.popup-container.visible[_ngcontent-%COMP%]{width:35rem;height:26.5rem;transition:width .2s ease-in-out;border-width:1px}.popup-container.visible[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:1;transition-delay:.3s;transition-duration:.2s}.popup-container.hidden[_ngcontent-%COMP%]{width:0;height:0;transition:all .2s ease-out;transition-delay:.3s;pointer-events:none}.popup-container.hidden[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.show-hide[_ngcontent-%COMP%]{background:none;border:none;z-index:10;position:relative;cursor:pointer;outline:none;padding:.5rem;border-radius:.25rem;transition:.6s}"],changeDetection:0}),t})();class YZ{constructor(){this.treeModel$=new lp(1),this.nodes$=this.treeModel$.pipe(D(t=>Object.values(t.nodes))),this.rootNode$=this.treeModel$.pipe(D(t=>t.nodes[t.root]))}setTreeModel(t){this.treeModel$.next(t),this.treeModel=t}filter(t){return this.nodes$.pipe(D(e=>this.lookup(e,t.toLowerCase())))}lookup(t,e){const n=new Map;return t&&t.forEach(t=>{if(t.label.toLowerCase().includes(e)&&!n.get(t.id))n.set(t.id,{index:this.getIndexOfMatch(t.label,e),displayLabel:this.formatLabel(t.label,e),node:t});else{const i=t.synonymLabels.find(t=>t.toLowerCase().includes(e));i&&!n.get(t.id)&&n.set(t.id,{index:this.getIndexOfMatch(t.label+" ("+i+")",e),displayLabel:this.formatLabel(t.label+" ("+i+")",e),node:t})}}),Array.from(n.values())}getIndexOfMatch(t,e){return t.toLowerCase().indexOf(e)}formatLabel(t,e){const n=this.getIndexOfMatch(t,e);return[t.slice(0,n),t.slice(n,n+e.length),t.slice(n+e.length)]}getChildren(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};return(0,_G.at)(i,t.children)}}YZ.\u0275fac=function(t){return new(t||YZ)},YZ.\u0275prov=xt({token:YZ,factory:YZ.\u0275fac}),sw([iB.ak],YZ.prototype,"getChildren",null);class KZ{constructor(t,e){this.original=t,this.level=e,this.visible=!0,this.opacity=20}get label(){return this.original.label}get expandable(){return this.original.children.length>0}static create(t,e){return new KZ(t,e)}}function QZ(t,e){if(1&t){const t=ua();ra(0,"div",4),fa("click",function(e){const n=$e(t).node,i=va();return i.select(e.ctrlKey,n,!0,!i.isSelected(n))}),Za(1),sa()}if(2&t){const t=e.node,n=va();ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label))("filtered-out",!n.occurenceData[t.original.id]&&!!n.termData[t.original.id])("unavailable",!n.termData[t.original.id])("selected",n.isSelected(t)),ws(1),Ja("colon"===t.label?"large intestine":t.label)}}function ZZ(t,e){1&t&&ca(0)}const JZ=function(t){return{node:t}};function tJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",5),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,9),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),oa(6,"div",10),Jo(7,ZZ,1,0,"ng-container",11),ra(8,"div",12),Za(9),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(3),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(18,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}function eJ(t,e){1&t&&ca(0)}function nJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",13),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,14),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),ra(6,"button",15),ra(7,"mat-icon",16),Za(8),sa(),sa(),Jo(9,eJ,1,0,"ng-container",11),ra(10,"div",12),Za(11),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(2),ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label)),Zo("aria-label","Toggle ",t.label,""),ws(2),tl(" ",n.control.isExpanded(t)?"expand_less":"expand_more"," "),ws(1),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(22,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}const iJ=(0,_G.property)("level"),rJ=(0,_G.property)("expandable");let sJ=(()=>{class t{constructor(t,e){this.cdr=t,this.ga=e,this.atScrollBottom=!1,this.nodeSelected=new Rc,this.nodeChanged=new Rc,this.indent="1.5rem",this.control=new WY(iJ,rJ),this.flattener=new dK(KZ.create,iJ,rJ,_G.invoke.bind(void 0,this,"getChildren")),this.dataSource=new pK(this.control,this.flattener),this._nodes=void 0,this.anySelectionsMade=!1,this.selectedNodes=[]}set nodes(t){var e;this._nodes=t,this.control&&(this.dataSource.data=null!==(e=this._nodes)&&void 0!==e?e:[])}get nodes(){return this._nodes}set getChildren(t){var e;this._getChildren=t,this.dataSource.data=null!==(e=this.nodes)&&void 0!==e?e:[]}get getChildren(){return this._getChildren}set occurenceData(t){this._occurenceData=t||{}}get occurenceData(){return this._occurenceData}set termData(t){this._termData=t||{}}get termData(){return this._termData}ngOnInit(){this.control.dataNodes&&this.control.expand(this.control.dataNodes[0])}ngOnChanges(t){if(t.ontologyFilter){const e=t.ontologyFilter.currentValue;(null==e?void 0:e.length)>=0&&this.selectByIDs(e)}t.rootNode&&this.selectByIDs([t.rootNode.currentValue])}selectByIDs(t){const e=this.control.dataNodes,n=e.filter(e=>t.indexOf(e.original.id)>-1);(null==n?void 0:n.length)>0&&(this.selectedNodes=n,this.ga.event("nodes_selected_by_ids","ontology_tree",n.map(t=>t.label).join(",")),this.control.collapseAll(),this.selectedNodes.forEach(t=>{this.expandAndSelect(t.original,t=>{var n;return null===(n=e.find(e=>e.original.id===t.parent))||void 0===n?void 0:n.original},!0)}))}expandAndSelect(t,e,n=!1){var i;const{cdr:r,control:s}=this,o=new Set;let a=e(t);for(;a;)o.add(a),a=e(a);const l=(0,_G.filter)(s.dataNodes,t=>o.has(t.original)),c=s.dataNodes.find(e=>e.original===t);n||(this.selectedNodes=[],s.collapseAll());for(const u of l)s.expand(u);"body"===t.label&&(null===(i=s.dataNodes)||void 0===i?void 0:i.length)>0&&s.expand(s.dataNodes[0]),this.select(n,c,!1,!0),r.detectChanges()}isInnerNode(t,e){return e.expandable}isSelected(t){return(null==t?void 0:t.original.id)===this.rootNode||this.selectedNodes.filter(e=>(null==t?void 0:t.original.label)===(null==e?void 0:e.original.label)).length>0}select(t,e,n,i){if(this.anySelectionsMade||(this.selectedNodes=[],this.anySelectionsMade=!0),void 0===e)return this.selectedNodes=[],void this.ga.event("nodes_unselected","ontology_tree");t?i?this.selectedNodes.indexOf(e)<0&&this.selectedNodes.push(e):this.selectedNodes.splice(this.selectedNodes.indexOf(e),1):(this.selectedNodes=[],i&&this.selectedNodes.push(e)),this.ga.event("nodes_selected","ontology_tree",this.selectedNodes.map(t=>t.label).join(",")),n&&this.nodeSelected.emit(this.selectedNodes.map(t=>null==t?void 0:t.original))}mouseOver(t){this.highlightedNode=t}mouseOut(){this.highlightedNode=void 0}updateOpacity(t,e){t.opacity=e,this.ga.event("opacity_update","ontology_tree",t.label,e),this.nodeChanged.emit(t)}resetNode(t){t.opacity=20,t.visible=!0,this.ga.event("node_reset","ontology_tree",t.label),this.nodeChanged.emit(t)}toggleVisibility(t){t.visible=!0!==t.visible,this.ga.event("visibility_update","ontology_tree",t.label,+t.visible),this.nodeChanged.emit(t)}getLeftIndent(t){return-1.5*t+"rem"}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<20}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-tree"]],inputs:{ontologyFilter:"ontologyFilter",rootNode:"rootNode",nodes:"nodes",getChildren:"getChildren",occurenceData:"occurenceData",termData:"termData",header:"header"},outputs:{nodeSelected:"nodeSelected",nodeChanged:"nodeChanged"},features:[ye],decls:5,vars:5,consts:[[1,"ccf-ontology-tree",3,"dataSource","treeControl","scroll"],["selectableRegion",""],["class","node leaf-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef"],["class","node inner-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef","matTreeNodeDefWhen"],[1,"text",3,"click"],["matTreeNodePadding","",1,"node","leaf-node",3,"matTreeNodePaddingIndent","mouseleave"],["svgIcon","app:opacity",1,"icon","opacity",3,"mouseenter"],[1,"slider"],[3,"visible","opacity","opacityChange","opacityReset","visibilityToggle"],["slider1",""],[1,"non-expandable"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"num-results"],["matTreeNodePadding","",1,"node","inner-node",3,"matTreeNodePaddingIndent","mouseleave"],["slider2",""],["mat-icon-button","","matTreeNodeToggle","",1,"toggle"],[1,"icon","font-icon"]],template:function(t,e){1&t&&(ra(0,"mat-tree",0),fa("scroll",function(t){return e.onScroll(t)}),Jo(1,QZ,2,9,"ng-template",null,1,Jc),Jo(3,tJ,10,20,"mat-tree-node",2),Jo(4,nJ,12,24,"mat-tree-node",3),sa()),2&t&&(ja("header-hidden",!e.header),na("dataSource",e.dataSource)("treeControl",e.control),ws(4),na("matTreeNodeDefWhen",e.isInnerNode))},directives:[cK,oK,sK,aK,p_,JW,kh,__,uK],styles:[".ccf-ontology-tree[_ngcontent-%COMP%]{background:none;scrollbar-width:thin;max-height:calc(50vh - 10rem);overflow:auto;overflow-x:hidden}.ccf-ontology-tree.header-hidden[_ngcontent-%COMP%]{max-height:40vh}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .toggle[_ngcontent-%COMP%]{z-index:-1;opacity:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .text[_ngcontent-%COMP%]{margin-left:.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]{min-height:0;font-size:1rem;margin-bottom:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:width;position:relative;z-index:1}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%]{width:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%] ccf-opacity-slider[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider{height:1.5rem;margin-left:1rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box .slider-and-label{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider{height:1.5rem;width:15rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider .mat-slider-wrapper{top:12px}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .opacity-value{width:3rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-right:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node.inner-node[_ngcontent-%COMP%] button.hidden[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .opacity[_ngcontent-%COMP%]{position:relative;min-width:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:normal}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .autocomplete-open[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{border-bottom:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .non-expandable[_ngcontent-%COMP%]{margin-left:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:nowrap;cursor:pointer;margin-left:1rem;opacity:1;width:50%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:opacity,width}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.hidden[_ngcontent-%COMP%]{opacity:0;width:0%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.unavailable[_ngcontent-%COMP%]{pointer-events:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-left:auto}.scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:90%;bottom:0;pointer-events:none}.scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function oJ(t,e){if(1&t&&(ra(0,"mat-option",8),ra(1,"span",9),Za(2),sa(),ra(3,"span",10),Za(4),sa(),ra(5,"span",11),Za(6),sa(),sa()),2&t){const t=e.$implicit;na("value",t),ws(2),Ja(t.displayLabel[0]),ws(2),Ja(t.displayLabel[1]),ws(2),Ja(t.displayLabel[2])}}let aJ=(()=>{class t{constructor(t,e){this.ontologyService=t,this.ga=e,this.selected=new Rc,this.formControl=new gz(""),this.autoCompleteOpen=!1}ngOnInit(){this.filteredResults$=this.formControl.valueChanges.pipe(Hd(t=>"string"==typeof t),Kd(""),Qd(t=>this.ontologyService.filter(t)),D(t=>(0,_G.sortBy)(t,[this.sortBySynonymResult,"index",this.sortLexically])))}displayFormatter(t){var e;return(null!==(e=null==t?void 0:t.displayLabel)&&void 0!==e?e:[]).join("")}sortBySynonymResult(t){return t.displayLabel.join().includes("(")?1:-1}sortLexically(t){return t.node.label.toLowerCase()}onSelect(t){const e=(0,_G.get)(t,["option","value","node"]);e&&(this.ga.event("search","ontology_search",e.id),this.selected.emit(e),this.formControl.reset())}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-search"]],inputs:{placeholderText:"placeholderText"},outputs:{selected:"selected"},decls:10,vars:9,consts:[[1,"ccf-ontology-search"],["appearance","outline",1,"field"],["matPrefix","","color","primary",1,"search"],["type","text","matInput","",1,"input",3,"placeholder","formControl","matAutocomplete"],[1,"ccf-ontology-search","detached","autocomplete",3,"displayWith","optionSelected","opened","closed"],["autocomplete",""],[1,"results-container"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"prefix"],[1,"search-term"],[1,"suffix"]],template:function(t,e){if(1&t&&(ra(0,"form",0),ra(1,"mat-form-field",1),ra(2,"mat-icon",2),Za(3,"search"),sa(),oa(4,"input",3),ra(5,"mat-autocomplete",4,5),fa("optionSelected",function(t){return e.onSelect(t)})("opened",function(){return e.autoCompleteOpen=!0})("closed",function(){return e.autoCompleteOpen=!1}),ra(7,"div",6),Jo(8,oJ,7,4,"mat-option",7),Mc(9,"async"),sa(),sa(),sa(),sa()),2&t){const t=ta(6);ja("autocomplete-open",e.autoCompleteOpen),ws(4),na("placeholder",e.placeholderText)("formControl",e.formControl)("matAutocomplete",t),ws(1),na("displayWith",e.displayFormatter),ws(3),na("ngForOf",Ic(9,7,e.filteredResults$))}},directives:[wz,YV,_z,lU,p_,nU,LU,TV,TU,XV,Cz,xU,yh,av],pipes:[Dh],styles:[".ccf-ontology-search[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem .25rem 0;margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;height:3rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix input{margin-left:.4rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-prefix{top:.5rem;border:none}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0 .25rem;min-width:2.5rem} .ccf-ontology-search.detached{border:.125rem solid;border-top:none;border-radius:0 0 .25rem .25rem;max-height:18rem} .ccf-ontology-search.detached .results-container{width:23.75rem;margin-bottom:1rem;overflow:auto;max-height:15rem;scrollbar-width:thin} .ccf-ontology-search.detached .results-container mat-option{height:1.5rem;width:23.75rem} .ccf-ontology-search.detached .results-container mat-option .search-term{text-decoration:underline}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0;border-bottom:none}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem 0 0;border-bottom:none}"],changeDetection:0}),t})();const lJ=function(t){return[t]};function cJ(t,e){if(1&t){const t=ua();ra(0,"ccf-ontology-tree",2),fa("nodeSelected",function(e){return $e(t),va().ontologySelection.emit(e)}),sa()}if(2&t){const t=e.ngIf,n=va();na("nodes",Tc(7,lJ,t))("rootNode",t.id)("getChildren",n.ontologySearchService.getChildren)("occurenceData",n.occurenceData)("termData",n.termData)("ontologyFilter",n.ontologyFilter)("header",n.header)}}let uJ=(()=>{class t{constructor(t){this.ontologySearchService=t,this.ontologySelection=new Rc}ngOnChanges(t){"treeModel"in t&&this.treeModel&&this.ontologySearchService.setTreeModel(this.treeModel)}selected(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};this.tree.expandAndSelect(t,t=>i[t.parent])}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-selection"]],viewQuery:function(t,e){if(1&t&&qc(sJ,5),2&t){let t;Wc(t=Yc())&&(e.tree=t.first)}},inputs:{occurenceData:"occurenceData",termData:"termData",treeModel:"treeModel",ontologyFilter:"ontologyFilter",header:"header",placeholderText:"placeholderText"},outputs:{ontologySelection:"ontologySelection"},features:[_l([YZ]),ye],decls:3,vars:4,consts:[[3,"placeholderText","selected"],["class","tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected",4,"ngIf"],[1,"tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected"]],template:function(t,e){1&t&&(ra(0,"ccf-ontology-search",0),fa("selected",function(t){return e.selected(t)}),sa(),Jo(1,cJ,1,9,"ccf-ontology-tree",1),Mc(2,"async")),2&t&&(na("placeholderText",e.placeholderText),ws(1),na("ngIf",Ic(2,2,e.ontologySearchService.rootNode$)))},directives:[aJ,_h,sJ],pipes:[Dh],styles:[""],changeDetection:0}),t})(),hJ=(()=>{class t{constructor(t,e,n){this.drawer=t,this.cdr=n,this.className="ccf-drawer-toggle-button",this.position="start",this.opened=!1,this.subscriptions=new g;const i=e.connect(this);this.subscriptions.add(i.getMessagesFromSource(t).subscribe(t=>{this.handleMessage(t)&&n.markForCheck()}))}get classEnd(){return"end"===this.position}get icon(){let t="arrow_right",e="arrow_left";return"end"===this.position&&([t,e]=[e,t]),this.opened?e:t}ngAfterViewInit(){setTimeout(()=>{this.position=this.drawer.position,this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return"drawer-toggled"===t.payload.type&&(this.opened=t.payload.opened,!0)}toggle(){const t=this.drawer,{opened:e,expanded:n}=t;e?n?t.closeExpanded():t.close():t.open()}}return t.\u0275fac=function(e){return new(e||t)(ea(AZ),ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-toggle-button"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("ccf-drawer-toggle-button-end",e.classEnd))},decls:2,vars:1,consts:[["aria-hidden","false","aria-label","Close side drawer",1,"expand-collapse-icon",3,"click"]],template:function(t,e){1&t&&(ra(0,"mat-icon",0),fa("click",function(){return e.toggle()}),Za(1),sa()),2&t&&(ws(1),tl(" ",e.icon,"\n"))},directives:[p_],styles:["[_nghost-%COMP%]{position:absolute;top:calc(50% - 2.0625rem);right:-1.0625rem;width:1.0625rem;height:3rem;border-radius:0 .25rem .25rem 0;cursor:pointer;display:flex;align-items:center;transition:.6s}.ccf-drawer-toggle-button-end[_nghost-%COMP%]{right:unset;left:calc(-1rem - 1px);border-radius:.25rem 0 0 .25rem}[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{position:relative;right:.25rem;transition:all .5s}.ccf-drawer-toggle-button-end[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{right:unset;left:-.25rem}"],changeDetection:0}),t})();function dJ(t,e){1&t&&(ra(0,"div",7),oa(1,"mat-spinner",8),ra(2,"span",3),Za(3,"Loading External Site"),sa(),sa())}function pJ(t,e){if(1&t){const t=ua();ra(0,"iframe",9),fa("load",function(){return $e(t),va().loading=!1}),sa()}2&t&&Ko("src",va().safeUrl,wr)}let fJ=(()=>{class t{constructor(t){this.sanitizer=t,this.className="ccf-viewer",this.url="",this.closed=new Rc,this.loading=!0,this.safeUrl=null}ngOnChanges(t){"url"in t&&this.updateUrl()}updateUrl(){const{sanitizer:t,url:e}=this;this.safeUrl=null,e&&(this.safeUrl=t.bypassSecurityTrustResourceUrl(e),this.loading=!0)}}return t.\u0275fac=function(e){return new(e||t)(ea(hd))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-viewer"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{url:"url"},outputs:{closed:"closed"},features:[ye],decls:11,vars:4,consts:[[1,"toolbar"],["mat-flat-button","","target","_blank","rel","noopener noreferrer",1,"launch",3,"href","disabled"],[1,"icon"],[1,"text"],["mat-flat-button","",1,"close",3,"click"],["class","overlay",4,"ngIf"],["class","frame","title","Portal Data Viewer","referrerpolicy","no-referrer",3,"load",4,"ngIf"],[1,"overlay"],[1,"spinner"],["title","Portal Data Viewer","referrerpolicy","no-referrer",1,"frame",3,"load"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"a",1),ra(2,"mat-icon",2),Za(3,"launch"),sa(),ra(4,"span",3),Za(5,"Open in Portal"),sa(),sa(),ra(6,"button",4),fa("click",function(){return e.closed.emit()}),ra(7,"mat-icon",2),Za(8,"clear"),sa(),sa(),sa(),Jo(9,dJ,4,0,"div",5),Jo(10,pJ,1,1,"iframe",6)),2&t&&(ws(1),na("href",e.safeUrl,_r)("disabled",!e.safeUrl),ws(8),na("ngIf",e.loading),ws(1),na("ngIf",e.safeUrl))},directives:[w_,p_,__,_h,fZ],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;width:100%;height:1.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%]{margin-right:3.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch.mat-button-disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:.25rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .close[_ngcontent-%COMP%]{min-width:0;padding:0;line-height:1.5rem;border-radius:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:1.5rem;bottom:0;left:0;right:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{margin-bottom:.5rem}[_nghost-%COMP%] .frame[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0}),t})();function gJ(t,e){if(1&t&&oa(0,"div",3),2&t){const t=e.index;ja("line-tick-visible",va().tissueSectionExists(t+1))}}const mJ=function(){return[]};let bJ=(()=>{class t{constructor(){this.clsName="ccf-tissue-section-vis"}tissueSectionExists(t){return this.tissueSections.filter(e=>e.sectionNumber===t).length>0}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tissue-section-vis"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{totalTissueSections:"totalTissueSections",tissueSections:"tissueSections"},decls:7,vars:3,consts:[[1,"container"],["class","line-tick",3,"line-tick-visible",4,"ngFor","ngForOf"],[1,"x-axis"],[1,"line-tick"]],template:function(t,e){1&t&&(ra(0,"div"),Za(1,"0"),sa(),ra(2,"div",0),Jo(3,gJ,1,2,"div",1),oa(4,"div",2),sa(),ra(5,"div"),Za(6),sa()),2&t&&(ws(3),na("ngForOf",Oc(2,mJ).constructor(e.totalTissueSections)),ws(3),Ja(e.totalTissueSections))},directives:[yh],styles:["[_nghost-%COMP%]{width:100%;height:2.5rem;padding:.5rem 1rem;display:flex}[_nghost-%COMP%] .container[_ngcontent-%COMP%]{margin-right:.5rem;margin-left:.5rem;flex-grow:1;display:flex;position:relative;justify-content:space-evenly}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .line-tick[_ngcontent-%COMP%]{height:100%;width:1px;z-index:2}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .x-axis[_ngcontent-%COMP%]{width:100%;height:2px;position:absolute;top:calc(50% - 1px);right:0;z-index:1}"],changeDetection:0}),t})();function yJ(t,e){if(1&t){const t=ua();ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"a",9),fa("click",function(){$e(t);const e=va().$implicit;return va().linkClicked.emit(e)}),Za(4," DATA "),ra(5,"mat-icon"),Za(6,"open_in_new"),sa(),sa(),sa()}if(2&t){const t=va().$implicit;ws(1),La("background-image","url("+t.thumbnail+")"),ws(1),tl(" ",t.technology," ")}}function vJ(t,e){1&t&&(aa(0),Jo(1,yJ,7,3,"ng-template",6),la())}const _J=(()=>{let t=-1;return()=>(t+=1,t)})();let wJ=(()=>{class t{constructor(){this.className="ccf-thumbnail-carousel",this.linkClicked=new Rc,this.uid=_J(),this.config={allowTouchMove:!1,slidesOffsetBefore:4,slidesOffsetAfter:4,slidesPerView:"auto",spaceBetween:4,watchOverflow:!0},this.navigation={prevEl:"#"+this.prevButtonId,nextEl:"#"+this.nextButtonId}}get prevButtonId(){return`ccf-thumbnail-carousel-prev-button-${this.uid}`}get nextButtonId(){return`ccf-thumbnail-carousel-next-button-${this.uid}`}itemId(t,e){return e.thumbnail}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-thumbnail-carousel"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{data:"data"},outputs:{linkClicked:"linkClicked"},decls:11,vars:6,consts:[[1,"prev"],["mat-icon-button","","disableRipple",""],[1,"swiper",3,"config","navigation"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"next"],[1,"fade"],["swiperSlide",""],[1,"slide"],[1,"thumbnail"],[1,"link",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"button",1),ra(2,"mat-icon"),Za(3,"navigate_before"),sa(),sa(),sa(),ra(4,"swiper",2),Jo(5,vJ,2,0,"ng-container",3),sa(),ra(6,"div",4),ra(7,"button",1),oa(8,"div",5),ra(9,"mat-icon"),Za(10,"navigate_next"),sa(),sa(),sa()),2&t&&(ws(1),Ko("id",e.prevButtonId),ws(3),na("config",e.config)("navigation",e.navigation),ws(1),na("ngForOf",e.data)("ngForTrackBy",e.itemId),ws(2),Ko("id",e.nextButtonId))},directives:[__,p_,WQ,yh,GQ],styles:['[_nghost-%COMP%]{display:flex}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%]{flex-grow:1;padding-bottom:.3125rem}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%] .swiper-slide{width:3.75rem;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%]{display:flex;align-items:center;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] button[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:1.5rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{position:absolute;top:-.625rem;left:-2rem;z-index:10;width:2rem;height:3.125rem;opacity:1;transition:opacity ease-in-out .3s;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%]{cursor:default;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]{position:relative;width:100%;height:100%}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background-size:cover;position:relative;width:calc(100% - 2 * .125rem);height:calc(100% - 2 * .125rem);border-style:solid;border-width:.125rem;border-radius:.25rem;background-origin:padding-box;background-clip:padding-box;font-size:.875rem;font-weight:bold}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]:after{content:"";position:absolute;bottom:-.125rem;left:-.125rem;width:.125rem;height:.125rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;right:0;left:0;opacity:0;transition:opacity ease-in-out .3s;box-shadow:0 2px 4px #0009;font-size:.75rem;line-height:.75rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%], [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:focus, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:active{cursor:pointer;text-decoration:none}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]:hover .link[_ngcontent-%COMP%]{opacity:1}'],changeDetection:0}),t})();function xJ(t,e){if(1&t){const t=ua();ra(0,"mat-icon",14),fa("click",function(){return $e(t),va().toggleExpansion()}),Za(1),sa()}if(2&t){const t=va();ws(1),Ja(t.expanded?"expand_less":"expand_more")}}function SJ(t,e){if(1&t&&oa(0,"ccf-tissue-section-vis",20),2&t){const t=va(2);na("totalTissueSections",t.tissueBlock.sectionCount)("tissueSections",t.tissueBlock.sections)}}function EJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(2).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va(2);ws(1),na("data",t.tissueBlock.datasets)}}function CJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(3).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va().$implicit;ws(1),na("data",t.datasets)}}function OJ(t,e){if(1&t){const t=ua();ra(0,"div",22),ra(1,"div",23),ra(2,"mat-icon",24),Za(3,"bubble_chart"),sa(),ra(4,"div",17),ra(5,"div",8),Za(6),sa(),ra(7,"div",8),Za(8),sa(),sa(),ra(9,"div",9),fa("click",function(){const e=$e(t).$implicit;return va(2).linkHandler(e.link)}),ra(10,"div",10),Za(11,"TISSUE SECTION"),sa(),ra(12,"mat-icon",11),Za(13,"open_in_new"),sa(),sa(),sa(),Jo(14,CJ,2,1,"ng-container",13),sa()}if(2&t){const t=e.$implicit;ws(6),Ja(t.label),ws(2),Ja(t.description),ws(6),na("ngIf",t.datasets.length>0)}}function TJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"div",15),ra(2,"div",16),ra(3,"mat-icon",5),Za(4,"bubble_chart"),sa(),ra(5,"div",17),ra(6,"div",8),Za(7),sa(),ra(8,"div",8),Za(9),sa(),sa(),ra(10,"div",9),fa("click",function(){$e(t);const e=va();return e.linkHandler(e.tissueBlock.link)}),ra(11,"div",10),Za(12,"TISSUE BLOCK"),sa(),ra(13,"mat-icon",11),Za(14,"open_in_new"),sa(),sa(),sa(),Jo(15,SJ,1,2,"ccf-tissue-section-vis",18),Jo(16,EJ,2,1,"ng-container",13),sa(),Jo(17,OJ,15,3,"div",19),la()}if(2&t){const t=va();ws(7),Ja(t.tissueBlock.label),ws(2),Ja(t.tissueBlock.description),ws(6),na("ngIf",t.tissueBlock.sections.length>1),ws(1),na("ngIf",t.tissueBlock.datasets.length>0),ws(1),na("ngForOf",t.tissueBlock.sections)}}const kJ=function(t){return{"background-color":t}};let AJ=(()=>{class t{constructor(t){this.ga=t,this.clsName="ccf-donor-card",this.selected=!1,this.expanded=!1,this.highlighted=!1,this.checked=new Rc,this.linkClick=new Rc,this.hoverState=""}handleCheckbox(){this.selected=!this.selected,this.ga.event("selected_toggled","donor_card",this.tissueBlock.label,+this.selected),this.checked.emit(this.selected),this.expanded=!1}toggleExpansion(){this.selected&&(this.expanded=!this.expanded,this.ga.event("expanded_toggled","donor_card",this.tissueBlock.label,+this.expanded))}linkHandler(t){this.ga.event("link_clicked","donor_card",this.tissueBlock.label),this.selected?this.linkClick.emit(t):(this.selected=!0,this.checked.emit(this.selected))}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-donor-card"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{tissueBlock:"tissueBlock",selected:"selected",color:"color",expanded:"expanded",highlighted:"highlighted"},outputs:{checked:"checked",linkClick:"linkClick"},decls:19,vars:20,consts:[[1,"main-container"],[1,"checkbox-background",3,"ngStyle","click"],[1,"checkbox",3,"checked"],[1,"hoverable","default-padding","donor","mat-elevation-z2"],[1,"d-flex"],[1,"icon-size","icon-dark","mr-5"],[1,"donor-info"],[1,"title","description"],[1,"description"],[1,"hover-state","mat-elevation-z4",3,"click"],[1,"hover-title"],[1,"icon-size","hover-icon"],["class","icon-size ml-5 selectable",3,"click",4,"ngIf"],[4,"ngIf"],[1,"icon-size","ml-5","selectable",3,"click"],[1,"expanded-view","mat-elevation-z2","align-end"],[1,"info-block","hover-enabled","default-padding"],[1,"text-content"],[3,"totalTissueSections","tissueSections",4,"ngIf"],["class","expanded-view w-80 mat-elevation-z2 align-end",4,"ngFor","ngForOf"],[3,"totalTissueSections","tissueSections"],[1,"mt-05",3,"data","linkClicked"],[1,"expanded-view","w-80","mat-elevation-z2","align-end"],[1,"default-padding","info-block","hover-enabled"],[1,"icon-size","mr-5","icon-light"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),fa("click",function(){return e.handleCheckbox()}),oa(2,"mat-checkbox",2),sa(),ra(3,"div",3),ra(4,"div",4),ra(5,"mat-icon",5),Za(6,"person"),sa(),ra(7,"div",6),ra(8,"div",7),Za(9),sa(),ra(10,"div",8),Za(11),sa(),sa(),sa(),ra(12,"div",9),fa("click",function(){return e.linkHandler(e.tissueBlock.donor.link)}),ra(13,"div",10),Za(14,"DONOR"),sa(),ra(15,"mat-icon",11),Za(16,"open_in_new"),sa(),sa(),Jo(17,xJ,2,1,"mat-icon",12),sa(),sa(),Jo(18,TJ,18,5,"ng-container",13)),2&t&&(ws(1),ja("selected",e.selected)("highlighted",e.highlighted),na("ngStyle",Tc(18,kJ,e.selected?e.color:"transparent")),ws(1),ja("checkselected",e.selected),na("checked",e.selected),ws(1),ja("hover-enabled",e.selected)("expanded",e.expanded)("highlighted",e.highlighted),ws(6),Ja(e.tissueBlock.donor.label),ws(2),Ja(e.tissueBlock.donor.description),ws(6),na("ngIf",e.selected),ws(1),na("ngIf",e.expanded))},directives:[Th,OX,p_,_h,yh,bJ,wJ],styles:["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] .main-container[_ngcontent-%COMP%]{display:flex;min-height:3rem;width:100%;align-items:center;padding-left:.5rem}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%]{height:2rem;width:2rem;border-radius:50%;margin-right:.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-checked.mat-accent .mat-checkbox-background, [_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-indeterminate.mat-accent[_ngcontent-%COMP%] .mat-checkbox-background[_ngcontent-%COMP%]{background-color:transparent}[_nghost-%COMP%] .checkbox-background.highlighted[_ngcontent-%COMP%] .mat-ripple-element{opacity:.04}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkselected[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#fff!important}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:1.12rem;margin-bottom:.12rem}[_nghost-%COMP%] .align-end[_ngcontent-%COMP%]{margin-left:auto}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;width:100%;align-items:center}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]:not(:first-child){margin-top:.5rem}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;align-items:center;flex-grow:1;height:2.5rem}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .donor.highlighted[_ngcontent-%COMP%]{box-shadow:0 6px 2px -2px #0003,0 4px 4px #00000024,0 2px 10px #0000001f}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .hover-state[_ngcontent-%COMP%]{width:19.5rem!important}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .donor-info[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .hoverable[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]:hover .hover-state[_ngcontent-%COMP%]{opacity:1}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%]{transition:opacity .15s ease-in-out;opacity:0;cursor:pointer;position:absolute;height:100%;width:100%;top:0;margin-left:-.5rem;align-items:center;display:flex;justify-content:flex-end;padding-right:1rem;font-size:.75rem}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-title[_ngcontent-%COMP%]{font-weight:lighter}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-icon[_ngcontent-%COMP%]{margin-left:1rem}[_nghost-%COMP%] .default-padding[_ngcontent-%COMP%]{padding:.25rem .5rem}[_nghost-%COMP%] .expanded-view[_ngcontent-%COMP%]{margin-top:.25rem;width:85%;margin-bottom:.25rem}[_nghost-%COMP%] .d-flex[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] .icon-size[_ngcontent-%COMP%]{height:1.5rem;width:1.5rem;font-size:1.5rem}[_nghost-%COMP%] .selectable[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%]{width:80%!important}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{width:16rem!important}[_nghost-%COMP%] .ml-5[_ngcontent-%COMP%]{margin-left:.5rem}[_nghost-%COMP%] .mr-5[_ngcontent-%COMP%]{margin-right:.5rem}[_nghost-%COMP%] .mt-05[_ngcontent-%COMP%]{margin-top:.5rem}[_nghost-%COMP%] .description[_ngcontent-%COMP%]{width:17rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"],changeDetection:0}),t})();function PJ(t,e){if(1&t&&(ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"div",9),Za(4),sa(),sa()),2&t){const t=e.$implicit;ws(2),Ja(t.count),ws(2),Ja(t.label)}}function MJ(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("mouseenter",function(){const e=$e(t).$implicit;return va().handleHover(e.tissueBlock.spatialEntityId)})("mouseleave",function(){return $e(t),va().handleUnhover()}),ra(1,"ccf-donor-card",11),fa("checked",function(e){const n=$e(t).$implicit;return va().handleSelection(n,e)})("linkClick",function(e){return $e(t),va().handleLinkClick(e)}),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("tissueBlock",t.tissueBlock)("selected",t.selected)("color",t.color)("highlighted",t.tissueBlock.spatialEntityId===n.highlighted)}}let IJ=(()=>{class t{constructor(t){this.ga=t,this.linkClicked=new Rc,this.listResultSelected=new Rc,this.listResultDeselected=new Rc,this.itemHovered=new Rc,this.itemUnhovered=new Rc,this.atScrollBottom=!1}handleSelection(t,e){this.ga.event("list_result_selected","results_browser",this.resultLabel,+e),e?this.listResultSelected.next(t):this.listResultDeselected.next(t)}handleLinkClick(t){this.linkClicked.emit(t)}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<64}handleHover(t){this.itemHovered.emit(t)}handleUnhover(){this.itemUnhovered.emit()}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-results-browser"]],inputs:{listResults:"listResults",aggregateData:"aggregateData",resultLabel:"resultLabel",highlighted:"highlighted",header:"header"},outputs:{linkClicked:"linkClicked",listResultSelected:"listResultSelected",listResultDeselected:"listResultDeselected",itemHovered:"itemHovered",itemUnhovered:"itemUnhovered"},decls:8,vars:7,consts:[[1,"results-browser-container"],[1,"stat-box"],["id","title"],["class","stat-row",4,"ngFor","ngForOf"],[1,"results-browser-list",3,"scroll"],["class","browser-item-container",3,"mouseenter","mouseleave",4,"ngFor","ngForOf"],[1,"scroll-gradient"],[1,"stat-row"],[1,"stat-value"],[1,"stat-label"],[1,"browser-item-container",3,"mouseenter","mouseleave"],[3,"tissueBlock","selected","color","highlighted","checked","linkClick"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),Za(3),sa(),Jo(4,PJ,5,2,"div",3),sa(),ra(5,"div",4),fa("scroll",function(t){return e.onScroll(t)}),Jo(6,MJ,2,4,"div",5),sa(),oa(7,"div",6),sa()),2&t&&(ws(3),Ja(e.resultLabel),ws(1),na("ngForOf",e.aggregateData),ws(1),ja("header-hidden",!e.header),ws(1),na("ngForOf",e.listResults),ws(1),ja("hidden",!!e.atScrollBottom))},directives:[yh,AJ],styles:[".results-browser-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:calc(100% - 3rem);padding:0 1.5rem 1.5rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%]{margin-bottom:1.5rem;line-height:1.25;min-height:7.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] #title[_ngcontent-%COMP%]{font-size:1.25rem;margin-bottom:.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%]{display:flex;flex-direction:row}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin-right:1rem;width:5.5rem;text-align:right;font-weight:600}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-weight:300}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;padding-right:.5rem;height:calc(100vh - 20rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 16rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%] .browser-item-container[_ngcontent-%COMP%]{width:100%}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:95%;bottom:0;pointer-events:none}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function DJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGIN"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"login",_r)}}function RJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGOUT"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"logout",_r)}}let NJ=(()=>{class t{constructor(){this.refreshClicked=new Rc,this.downloadClicked=new Rc}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-header"]],inputs:{homeUrl:"homeUrl",loginDisabled:"loginDisabled",logoTooltip:"logoTooltip",loggedIn:"loggedIn",filters:"filters"},outputs:{refreshClicked:"refreshClicked",downloadClicked:"downloadClicked"},decls:6,vars:4,consts:[[1,"ccf-header"],[1,"home",3,"href"],["aria-hidden","false","aria-label","Reset tool","matTooltipPosition","right",1,"logo",3,"matTooltip"],[1,"filler"],["mat-button","","class","authentication","rel","noreferrer noopener","target","_blank",3,"disabled","href",4,"ngIf"],["mat-button","","rel","noreferrer noopener","target","_blank",1,"authentication",3,"href"]],template:function(t,e){1&t&&(ra(0,"mat-toolbar",0),ra(1,"a",1),oa(2,"div",2),sa(),oa(3,"div",3),Jo(4,DJ,2,3,"a",4),Jo(5,RJ,2,3,"a",4),sa()),2&t&&(ws(1),na("href",e.homeUrl,_r),ws(1),na("matTooltip",e.logoTooltip),ws(2),na("ngIf",!e.loggedIn),ws(1),na("ngIf",e.loggedIn))},directives:[Nq,ew,_h,w_],styles:[".ccf-header[_ngcontent-%COMP%]{height:4rem;padding:0 1.5rem;border-bottom-width:1px;border-bottom-style:solid;display:flex}.ccf-header[_ngcontent-%COMP%] .home[_ngcontent-%COMP%]{height:100%;width:25rem;align-items:center;display:flex}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{width:100%;height:50%;background-repeat:no-repeat;background-size:contain}.ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%]{height:1.5rem}.ccf-header[_ngcontent-%COMP%] .authentication[_ngcontent-%COMP%]{width:8.25rem;border-radius:.125rem;font-weight:500}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{display:flex;align-items:center;transition:color 1s;cursor:pointer;text-decoration:none}.ccf-header[_ngcontent-%COMP%] [_ngcontent-%COMP%]:not(:last-child){margin-right:1.5rem}.ccf-header[_ngcontent-%COMP%] .filler[_ngcontent-%COMP%]{flex-grow:1;margin:0}.ccf-header[_ngcontent-%COMP%] .filter-labels[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;font:400 1rem/1.25rem Inter,sans-serif}.ccf-header[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();const LJ=["bodyUI"];function jJ(t,e){if(1&t&&(oa(0,"ccf-header",34),Mc(1,"async"),Mc(2,"async"),Mc(3,"async"),Mc(4,"async")),2&t){const t=va();ja("hide",!1===Ic(1,6,t.header$)),na("logoTooltip",Ic(2,8,t.logoTooltip$))("homeUrl",Ic(3,10,t.homeUrl$))("loggedIn",t.loggedIn)("loginDisabled",Ic(4,12,t.loginDisabled$))}}function FJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t),va();const e=ta(70);return e.expanded=!e.expanded}),ra(1,"mat-icon",36),Za(2),sa(),sa()}if(2&t){va();const t=ta(70);ws(2),tl(" ",t.expanded?"arrow_drop_up":"arrow_drop_down"," ")}}function BJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t);const e=va();return e.organListVisible=!e.organListVisible}),ra(1,"mat-icon",37),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),tl(" ",t.organListVisible?"arrow_drop_up":"arrow_drop_down"," ")}}const VJ=function(){return{}},zJ=function(){return{x:2.2,y:2,z:.4}};let UJ=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this.data=n,this.theming=i,this.scene=r,this.listResultsState=s,this.consentService=o,this.snackbar=a,this.dataSource=c,this.globalConfig=u,this.ontologySelectionLabel="body",this.cellTypeSelectionLabel="cell",this.selectionLabel="body | cell",this.organListVisible=!0,this.url="",this.acceptableViewerDomains=Pq.acceptableViewerDomains||[],this.viewerOpen=!1,this.spinnerActive$=this.data.queryStatus$.pipe(D(t=>t===rX.Running)),this.theme$=this.globalConfig.getOption("theme"),this.themeMode$=new lp(1),this.header$=this.globalConfig.getOption("header"),this.homeUrl$=this.globalConfig.getOption("homeUrl"),this.logoTooltip$=this.globalConfig.getOption("logoTooltip"),this.loginDisabled$=this.globalConfig.getOption("loginDisabled"),i.initialize(t,e),l.setRootElement(t),n.tissueBlockData$.subscribe(),n.aggregateData$.subscribe(),n.ontologyTermOccurencesData$.subscribe(),n.cellTypeTermOccurencesData$.subscribe(),n.sceneData$.subscribe(),n.filter$.subscribe(),n.technologyFilterData$.subscribe(),n.providerFilterData$.subscribe(),this.ontologyTerms$=n.filter$.pipe(FU("ontologyTerms")),T_([this.theme$,this.themeMode$]).subscribe(([t,e])=>{this.theming.setTheme(`${t}-theme-${e}`),h.markForCheck()}),this.ontologyTreeModel$=this.dataSource.getOntologyTreeModel().pipe(up(1)),this.cellTypeTerms$=n.filter$.pipe(FU("cellTypeTerms")),this.cellTypeTreeModel$=this.dataSource.getCellTypeTreeModel().pipe(up(1))}get isLightTheme(){return this.theming.getTheme().endsWith("light")}ngOnInit(){const t=this.snackbar.openFromComponent(pq,{data:{preClose:()=>{t.dismiss()}},duration:"not-set"===this.consentService.consent?1/0:3e3});window.matchMedia?(window.matchMedia("(prefers-color-scheme: dark)").matches?this.themeMode$.next("dark"):this.themeMode$.next("light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t=>{this.themeMode$.next(t.matches?"dark":"light")})):this.themeMode$.next("light")}reset(t,e,n){t.open(),t.closeExpanded(),e.open(),e.closeExpanded(),n.removeBox(),this.resetView()}resetView(){this.bodyUI.target=[0,0,0],this.bodyUI.rotation=0,this.bodyUI.rotationX=0,this.bodyUI.bounds={x:2.2,y:2,z:.4}}toggleScheme(){this.themeMode$.next(this.isLightTheme?"dark":"light")}ontologySelected(t,e){if(t)return"anatomical-structures"===e?(this.data.updateFilter({ontologyTerms:t.map(t=>t.id)}),this.ontologySelectionLabel=this.createSelectionLabel(t)):(this.data.updateFilter({cellTypeTerms:t.map(t=>t.id)}),this.cellTypeSelectionLabel=this.createSelectionLabel(t)),this.selectionLabel=this.ontologySelectionLabel&&this.cellTypeSelectionLabel?`${this.ontologySelectionLabel} | ${this.cellTypeSelectionLabel}`:this.ontologySelectionLabel?`${this.ontologySelectionLabel}`:this.cellTypeSelectionLabel?`${this.cellTypeSelectionLabel}`:"",void(t[0]&&"body"===t[0].label&&this.resetView());this.data.updateFilter({ontologyTerms:[],cellTypeTerms:[]}),this.ontologySelectionLabel="",this.cellTypeSelectionLabel=""}createSelectionLabel(t){if(0===t.length)return"";if(1===t.length)return t[0].label;let e="";return t.forEach((n,i)=>{e+=n.label,inull==t?void 0:t.startsWith(e))?(this.url=t,this.viewerOpen=!!t):(window.open(t,"_blank"),this.closeiFrameViewer())}closeiFrameViewer(){this.viewerOpen=!1}get loggedIn(){var t;return(null!==(t=this.globalConfig.snapshot.hubmapToken)&&void 0!==t?t:"").length>0}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(No),ea(aX),ea(kq),ea(dX),ea(uX),ea(Y$),ea(q_),ea(Nf),ea(mq),ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root"]],viewQuery:function(t,e){if(1&t&&qc(LJ,5),2&t){let t;Wc(t=Yc())&&(e.bodyUI=t.first)}},decls:80,vars:111,consts:[[1,"ccf-app","mat-app-background"],["text","Loading CCF Exploration User Interface (EUI)",3,"active"],[3,"hide","logoTooltip","homeUrl","loggedIn","loginDisabled",4,"ngIf"],[1,"main-drawers"],["opened","",1,"left-drawer",3,"stateChange"],["left",""],[1,"filter-data"],[3,"filters","drawerExpanded","technologyFilters","providerFilters","filtersChange"],["filterbox",""],[1,"filter-text"],[1,"sex","filter-tag"],[1,"age","filter-tag"],[1,"bmi","filter-tag"],["placeholderText","Search anatomical structures...",1,"ontology-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["placeholderText","Search cell types...",1,"cell-type-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["position","end","opened","",1,"right-drawer",3,"stateChange"],["right",""],[1,"portal-view",3,"url","closed"],[1,"drawer-icons"],[1,"drawer-icons-left"],[1,"button",3,"matTooltip","click"],[1,"icon"],[1,"scheme-toggle","button",3,"matTooltip","click"],[1,"button"],["matTooltip","Reset View",1,"refresh","icon",3,"click"],["videoID","YAHJqvD3Q_8","infoTitle","CCF Exploration User Interface","matTooltip","Open Info"],[3,"listResults","aggregateData","resultLabel","highlighted","header","listResultSelected","listResultDeselected","linkClicked","itemHovered","itemUnhovered"],[1,"selector-drawer"],[1,"organ-selector",3,"multiselect","occurenceData","organList","selectedOrgans","organsChanged"],["selector",""],[1,"close-button-wrapper"],["class","close-button",3,"click",4,"ngIf"],[1,"stage-content",3,"scene","bounds","nodeClick","nodeHoverStart","nodeHoverStop"],["bodyUI",""],[3,"logoTooltip","homeUrl","loggedIn","loginDisabled"],[1,"close-button",3,"click"],["aria-hidden","false","aria-label","Expand carousel drawer",1,"expand-collapse-icon"],["aria-hidden","false","aria-label","Close carousel drawer",1,"expand-collapse-icon"]],template:function(t,e){if(1&t){const t=ua();ra(0,"div",0),oa(1,"ccf-spinner-overlay",1),Mc(2,"async"),Jo(3,jJ,5,14,"ccf-header",2),Mc(4,"async"),ra(5,"ccf-drawer-container",3),Mc(6,"async"),ra(7,"ccf-drawer",4,5),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(9,"div"),ra(10,"div",6),ra(11,"ccf-filters-popover",7,8),fa("filtersChange",function(t){return e.data.updateFilter(t)}),Mc(13,"async"),Mc(14,"async"),Mc(15,"async"),sa(),ra(16,"div",9),ra(17,"div",10),Za(18,"Sex: "),ra(19,"strong"),Za(20),Mc(21,"async"),sa(),sa(),ra(22,"div",11),Za(23,"Age: "),ra(24,"strong"),Za(25),Mc(26,"async"),Mc(27,"async"),sa(),sa(),ra(28,"div",12),Za(29,"BMI: "),ra(30,"strong"),Za(31),Mc(32,"async"),Mc(33,"async"),sa(),sa(),sa(),sa(),ra(34,"ccf-ontology-selection",13),fa("ontologySelection",function(t){return e.ontologySelected(t,"anatomical-structures")}),Mc(35,"async"),Mc(36,"async"),Mc(37,"async"),Mc(38,"async"),sa(),ra(39,"ccf-ontology-selection",14),fa("ontologySelection",function(t){return e.ontologySelected(t,"cell-type")}),Mc(40,"async"),Mc(41,"async"),Mc(42,"async"),Mc(43,"async"),sa(),oa(44,"ccf-drawer-toggle-button"),sa(),sa(),ra(45,"ccf-drawer",15,16),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(47,"ccf-viewer",17),fa("closed",function(){return e.viewerOpen=!1}),sa(),ra(48,"div",18),ra(49,"div",19),ra(50,"button",20),fa("click",function(){$e(t);const e=ta(12),n=ta(46);return e.removeBox(),n.toggleExpanded()}),ra(51,"mat-icon",21),Za(52),sa(),sa(),ra(53,"button",22),fa("click",function(){return e.toggleScheme()}),ra(54,"mat-icon",21),Za(55),sa(),sa(),ra(56,"button",23),ra(57,"mat-icon",24),fa("click",function(){$e(t);const n=ta(8),i=ta(46),r=ta(12);return e.reset(n,i,r)}),Za(58,"refresh "),sa(),sa(),sa(),oa(59,"ccf-info-button",25),sa(),ra(60,"ccf-results-browser",26),fa("listResultSelected",function(t){return e.listResultsState.selectListResult(t)})("listResultDeselected",function(t){return e.listResultsState.deselectListResult(t)})("linkClicked",function(t){return e.openiFrameViewer(t)})("itemHovered",function(t){return e.listResultsState.highlightNode(t)})("itemUnhovered",function(){return e.listResultsState.unHighlightNode()}),Mc(61,"async"),Mc(62,"async"),Mc(63,"async"),Mc(64,"async"),sa(),oa(65,"ccf-drawer-toggle-button"),sa(),ra(66,"ccf-drawer-content"),Mc(67,"async"),ra(68,"div",27),ra(69,"ccf-organ-selector",28,29),fa("organsChanged",function(t){return e.scene.setSelectedReferenceOrgans(t)}),Mc(71,"async"),Mc(72,"async"),Mc(73,"async"),sa(),sa(),ra(74,"div",30),Jo(75,FJ,3,1,"div",31),Jo(76,BJ,3,1,"div",31),sa(),ra(77,"ccf-body-ui",32,33),fa("nodeClick",function(t){return e.scene.sceneNodeClicked(t)})("nodeHoverStart",function(t){return e.scene.sceneNodeHovered(t)})("nodeHoverStop",function(){return e.scene.sceneNodeUnhover()}),Mc(79,"async"),sa(),sa(),sa(),sa()}if(2&t){const t=ta(46),n=ta(70);let i,r,s,o;ws(1),na("active",Ic(2,53,e.spinnerActive$)),ws(2),na("ngIf",!1===Ic(4,55,e.spinnerActive$)),ws(2),ja("header-hidden",!1===Ic(6,57,e.header$)),ws(6),na("filters",Ic(13,59,e.data.filter$))("drawerExpanded",t.expanded)("technologyFilters",Ic(14,61,e.data.technologyFilterData$))("providerFilters",Ic(15,63,e.data.providerFilterData$)),ws(9),Ja(null==(i=Ic(21,65,e.data.filter$))?null:i.sex),ws(5),el("",null==(r=Ic(26,67,e.data.filter$))?null:r.ageRange[0],"-",null==(r=Ic(27,69,e.data.filter$))?null:r.ageRange[1],""),ws(6),el("",null==(s=Ic(32,71,e.data.filter$))?null:s.bmiRange[0],"-",null==(s=Ic(33,73,e.data.filter$))?null:s.bmiRange[1],""),ws(3),na("treeModel",Ic(35,75,e.ontologyTreeModel$))("termData",Ic(36,77,e.data.ontologyTermsFullData$))("occurenceData",Ic(37,79,e.data.ontologyTermOccurencesData$))("header",Ic(38,81,e.header$)),ws(5),na("treeModel",Ic(40,83,e.cellTypeTreeModel$))("termData",Ic(41,85,e.data.cellTypeTermsFullData$))("occurenceData",Ic(42,87,e.data.cellTypeTermOccurencesData$))("header",Ic(43,89,e.header$)),ws(8),ja("opened",e.viewerOpen),na("url",e.url),ws(3),na("matTooltip",t.expanded?"Exit Fullscreen":"Enter Fullscreen"),ws(2),Ja(t.expanded?"fullscreen_exit":"fullscreen"),ws(1),na("matTooltip",e.isLightTheme?"Enter Dark Mode":"Enter Light Mode"),ws(2),tl("",e.isLightTheme?"brightness_2":"brightness_5"," "),ws(5),na("listResults",Ic(61,91,e.listResultsState.listResults$))("aggregateData",Ic(62,93,e.data.aggregateData$))("resultLabel",e.selectionLabel)("highlighted",Ic(63,95,e.listResultsState.highlightedNodeId$))("header",Ic(64,97,e.header$)),ws(6),ja("header-hidden",!1===Ic(67,99,e.header$)),ws(2),ja("closed",!e.organListVisible)("expanded",n.expanded),ws(1),na("multiselect",!0)("occurenceData",null!==(o=Ic(71,101,e.data.ontologyTermOccurencesData$))&&void 0!==o?o:Oc(109,VJ))("organList",Ic(72,103,e.scene.referenceOrgans$))("selectedOrgans",Ic(73,105,e.scene.selectedReferenceOrgans$)),ws(5),ja("closed",!e.organListVisible),ws(1),na("ngIf",e.organListVisible),ws(1),na("ngIf",!n.expanded),ws(1),ja("expanded-stage",!e.organListVisible)("selector-expanded",n.expanded),na("scene",Ic(79,107,e.scene.scene$))("bounds",Oc(110,zJ))}},directives:[xZ,_h,RZ,AZ,XZ,uJ,hJ,fJ,ew,p_,aq,IJ,CZ,QW,VW,NJ],pipes:[Dh],styles:[".cdk-overlay-container{position:absolute;font-size:1.2rem}[_nghost-%COMP%]{display:block;position:relative}.ccf-app[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:1rem;position:relative;text-align:left}.ccf-app[_ngcontent-%COMP%] ccf-header[_ngcontent-%COMP%]{z-index:99}.ccf-app[_ngcontent-%COMP%] ccf-header.hide[_ngcontent-%COMP%]{display:none}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%]{height:calc(100% - 5rem);width:100%;opacity:1;overflow:hidden;transform:scale(1)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container.header-hidden[_ngcontent-%COMP%]{height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%]{width:28.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%]{display:flex;padding-left:1.5rem;height:5rem;padding-right:1.5rem;align-items:center;justify-content:space-between}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%] .button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;outline:none;border-radius:.25rem;padding:.65rem;transition:.6s}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%]{overflow:hidden;border-radius:.5rem;height:calc(100vh - 4rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer[_ngcontent-%COMP%]{top:0rem;display:flex;flex-direction:column;position:relative;transition:all .5s ease-in-out;height:5rem;justify-content:start}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.expanded[_ngcontent-%COMP%]{height:15rem;overflow-y:auto}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.closed[_ngcontent-%COMP%]{height:1.5rem;top:-5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .stage-content[_ngcontent-%COMP%]{transition:all .5s ease-in-out;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .expanded-stage[_ngcontent-%COMP%]{height:calc(100% - 3rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-expanded[_ngcontent-%COMP%]{height:calc(100% - 16.5rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 1rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:center;border-top-right-radius:.5rem;border-top-left-radius:.5rem;height:0}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:flex;justify-content:center;height:1.0625rem;width:3rem;align-self:center;border-radius:0 0 .25rem .25rem;cursor:pointer;transition:.6s;position:relative;top:.5rem;z-index:1}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{position:relative;bottom:.2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem;height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cell-type-selection[_ngcontent-%COMP%] .ccf-ontology-search{margin-top:2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%]{height:5rem;display:flex;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:75%;margin-left:1.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%]{font-weight:300}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600!important}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view[_ngcontent-%COMP%]{position:fixed;left:0;top:0;bottom:0;right:425%;height:100%;transform:translate(-425%);width:calc(100% - 28.5rem);transition:transform .5s cubic-bezier(.82,.085,.395,.895)}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view.opened[_ngcontent-%COMP%]{transform:translate(0);transition:width 0s .5s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view[_ngcontent-%COMP%]{width:100vw}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view.opened[_ngcontent-%COMP%]{transition:width 0s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .shaded-toggle[_ngcontent-%COMP%]{box-shadow:-1px 0 4px #212121}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5rem}"],changeDetection:0}),t})();function HJ(t,e){1&t&&oa(0,"ccf-root")}function $J(t){const e=t=>"string"==typeof t,n=t=>Array.isArray(t)&&t.every(e);if("string"==typeof t){const e=wZ.json(t);if(n(e))return e}else if(n(t))return t;throw new Error("Invalid data sources")}let GJ=(()=>{class t extends _Z{constructor(t,e){super(t,e,{initialDelay:10,initialConfig:Object.assign(Object.assign(Object.assign({},Pq.dbOptions),globalThis.dbOptions),Pq.customization),parse:{dataSources:$J,useRemoteApi:wZ.boolean,header:wZ.boolean}})}}return t.\u0275fac=function(e){return new(e||t)(ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root-wc"]],inputs:{dataSources:"dataSources",hubmapDataService:"hubmapDataService",hubmapDataUrl:"hubmapDataUrl",hubmapAssetUrl:"hubmapAssetUrl",hubmapToken:"hubmapToken",hubmapPortalUrl:"hubmapPortalUrl",useRemoteApi:"useRemoteApi",remoteApiEndpoint:"remoteApiEndpoint",theme:"theme",header:"header",homeUrl:"homeUrl",logoTooltip:"logoTooltip",loginDisabled:"loginDisabled"},features:[jo],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&Jo(0,HJ,1,0,"ccf-root",0),2&t&&na("ngIf",e.initialized)},directives:[_h,UJ],encapsulation:2,changeDetection:0}),t})(),WJ=(()=>{class t{constructor(t){this.injector=t}ngDoBootstrap(){const t=function(t,e){const n=function(t,e){return e.get(El).resolveComponentFactory(t).inputs}(t,e.injector),i=e.strategyFactory||new Bf(t,e.injector),r=function(t){const e={};return t.forEach(({propName:t,templateName:n})=>{e[function(t){return t.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}(n)]=t}),e}(n);class s extends zf{constructor(t){super(),this.injector=t}get ngElementStrategy(){if(!this._ngElementStrategy){const t=this._ngElementStrategy=i.create(this.injector||e.injector);n.forEach(({propName:e})=>{if(!this.hasOwnProperty(e))return;const n=this[e];delete this[e],t.setInputValue(e,n)})}return this._ngElementStrategy}attributeChangedCallback(t,e,n,i){this.ngElementStrategy.setInputValue(r[t],n)}connectedCallback(){let t=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),t=!0),this.ngElementStrategy.connect(this),t||this.subscribeToEvents()}disconnectedCallback(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}subscribeToEvents(){this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(t=>{const e=function(t,e,n){if("function"!=typeof CustomEvent){const i=t.createEvent("CustomEvent");return i.initCustomEvent(e,!1,!1,n),i}return new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:n})}(this.ownerDocument,t.name,t.value);this.dispatchEvent(e)})}}return s.observedAttributes=Object.keys(r),n.forEach(({propName:t})=>{Object.defineProperty(s.prototype,t,{get(){return this.ngElementStrategy.getInputValue(t)},set(e){this.ngElementStrategy.setInputValue(t,e)},configurable:!0,enumerable:!0})}),s}(GJ,{injector:this.injector});customElements.define("ccf-eui",t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(No))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:Tq,useValue:"hubmap-theme-light"},{provide:gf,useExisting:Nf}],imports:[[ky,gd,gX,sZ,$Y,mK,f_,UY,tZ,mZ,zW,ZW,lq,rw,bZ,fq,G_]]}),t})();Pq.production&&function(){if(Ru)throw new Error("Cannot enable prod mode after platform setup.");Du=!1}(),pd().bootstrapModule(WJ).catch(t=>console.error(t))},91052:function(t){function e(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}t.exports=function(t){return function(){var n=this,i=arguments;return new Promise(function(r,s){var o=t.apply(n,i);function a(t){e(o,r,s,a,l,"next",t)}function l(t){e(o,r,s,a,l,"throw",t)}a(void 0)})}},t.exports.default=t.exports,t.exports.__esModule=!0},61948:function(t){t.exports=function(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},34321:function(t){function e(n){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=e=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=e=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),e(n)}t.exports=e,t.exports.default=t.exports,t.exports.__esModule=!0},91741:function(t){function e(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}e.keys=function(){return[]},e.resolve=e,e.id=91741,t.exports=e},88509:function(t,e,n){"use strict";t.exports=n.p+"7693192ac33f7744a3ca.ts"},9521:function(){},49125:function(){},75307:function(){}},function(t){t(t.s=93640)}]); \ No newline at end of file +var LBe=Object.defineProperty,BBe=Object.defineProperties,VBe=Object.getOwnPropertyDescriptors,mT=Object.getOwnPropertySymbols,pX=Object.prototype.hasOwnProperty,gX=Object.prototype.propertyIsEnumerable,kr=Math.pow,mX=(t,e,n)=>e in t?LBe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,wt=(t,e)=>{for(var n in e||(e={}))pX.call(e,n)&&mX(t,n,e[n]);if(mT)for(var n of mT(e))gX.call(e,n)&&mX(t,n,e[n]);return t},ii=(t,e)=>BBe(t,VBe(e)),_X=(t,e)=>{var n={};for(var i in t)pX.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&mT)for(var i of mT(t))e.indexOf(i)<0&&gX.call(t,i)&&(n[i]=t[i]);return n};(self.webpackChunkccf_ui=self.webpackChunkccf_ui||[]).push([[179],{71440:function(t,e,n){var i=n(91052).default;t.exports=function t(e,n,i){function r(o,a){if(!n[o]){if(!e[o]){if(s)return s(o,!0);var l=new Error("Cannot find module '"+o+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[o]={exports:{}};e[o][0].call(c.exports,function(t){return r(e[o][1][t]||t)},c,c.exports,t,e,n,i)}return n[o].exports}for(var s=void 0,o=0;o0&&r[r.length-1])&&(6===s[0]||2===s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]0?o-4:o;for(n=0;n>16&255,l[u++]=e>>8&255,l[u++]=255&e;return 2===a&&(e=r[t.charCodeAt(n)]<<2|r[t.charCodeAt(n+1)]>>4,l[u++]=255&e),1===a&&(e=r[t.charCodeAt(n)]<<10|r[t.charCodeAt(n+1)]<<4|r[t.charCodeAt(n+2)]>>2,l[u++]=e>>8&255,l[u++]=255&e),l},n.fromByteArray=function(t){for(var e,n=t.length,r=n%3,s=[],o=16383,a=0,l=n-r;al?l:a+o));return 1===r?s.push(i[(e=t[n-1])>>2]+i[e<<4&63]+"=="):2===r&&s.push(i[(e=(t[n-2]<<8)+t[n-1])>>10]+i[e>>4&63]+i[e<<2&63]+"="),s.join("")};for(var i=[],r=[],s="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0,l=o.length;a0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function u(t){return i[t>>18&63]+i[t>>12&63]+i[t>>6&63]+i[63&t]}function h(t,e,n){for(var i=[],r=e;r>5==6?2:t>>4==14?3:t>>3==30?4:t>>6==2?-1:-2}function a(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!=(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!=(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!=(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function l(t,e){if((t.length-e)%2==0){var n=t.toString("utf16le",e);if(n){var i=n.charCodeAt(n.length-1);if(i>=55296&&i<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("utf16le",0,this.lastTotal-this.lastNeed):e}function u(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function h(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function d(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}n.StringDecoder=s,s.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0?(r>0&&(t.lastNeed=r-1),r):--i=0?(r>0&&(t.lastNeed=r-2),r):--i=0?(r>0&&(2===r?r=0:t.lastNeed=r-3),r):0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var i=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,i),t.toString("utf8",e,i)},s.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},{"safe-buffer":4}],6:[function(t,e,n){(function(e){(function(){"use strict";var e=t("base64-js"),i=t("ieee754");n.Buffer=o,n.SlowBuffer=function(t){return+t!=t&&(t=0),o.alloc(+t)},n.INSPECT_MAX_BYTES=50;var r=2147483647;function s(t){if(t>r)throw new RangeError('The value "'+t+'" is invalid for option "size"');var e=new Uint8Array(t);return e.__proto__=o.prototype,e}function o(t,e,n){if("number"==typeof t){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return c(t)}return a(t,e,n)}function a(t,e,n){if("string"==typeof t)return function(t,e){if(("string"!=typeof e||""===e)&&(e="utf8"),!o.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var n=0|d(t,e),i=s(n),r=i.write(t,e);return r!==n&&(i=i.slice(0,r)),i}(t,e);if(ArrayBuffer.isView(t))return u(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(B(t,ArrayBuffer)||t&&B(t.buffer,ArrayBuffer))return function(t,e,n){if(e<0||t.byteLength=r)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+r.toString(16)+" bytes");return 0|t}function d(t,e){if(o.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||B(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var n=t.length,i=arguments.length>2&&!0===arguments[2];if(!i&&0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return j(t).length;default:if(r)return i?-1:L(t).length;e=(""+e).toLowerCase(),r=!0}}function p(t,e,n){var i=!1;if((void 0===e||e<0)&&(e=0),e>this.length||((void 0===n||n>this.length)&&(n=this.length),n<=0)||(n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,n);case"utf8":case"utf-8":return E(this,e,n);case"ascii":return C(this,e,n);case"latin1":case"binary":return O(this,e,n);case"base64":return S(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return k(this,e,n);default:if(i)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),i=!0}}function f(t,e,n){var i=t[e];t[e]=t[n],t[n]=i}function g(t,e,n,i,r){if(0===t.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),V(n=+n)&&(n=r?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(r)return-1;n=t.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof e&&(e=o.from(e,i)),o.isBuffer(e))return 0===e.length?-1:m(t,e,n,i,r);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):m(t,[e],n,i,r);throw new TypeError("val must be string, number or Buffer")}function m(t,e,n,i,r){var s,o=1,a=t.length,l=e.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(t.length<2||e.length<2)return-1;o=2,a/=2,l/=2,n/=2}function c(t,e){return 1===o?t[e]:t.readUInt16BE(e*o)}if(r){var u=-1;for(s=n;sa&&(n=a-l),s=n;s>=0;s--){for(var h=!0,d=0;dr&&(i=r):i=r;var s=e.length;i>s/2&&(i=s/2);for(var o=0;o>8,r.push(n%256),r.push(i);return r}(e,t.length-n),t,n,i)}function S(t,n,i){return e.fromByteArray(0===n&&i===t.length?t:t.slice(n,i))}function E(t,e,n){n=Math.min(t.length,n);for(var i=[],r=e;r239?4:c>223?3:c>191?2:1;if(r+h<=n)switch(h){case 1:c<128&&(u=c);break;case 2:128==(192&(s=t[r+1]))&&(l=(31&c)<<6|63&s)>127&&(u=l);break;case 3:o=t[r+2],128==(192&(s=t[r+1]))&&128==(192&o)&&(l=(15&c)<<12|(63&s)<<6|63&o)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:o=t[r+2],a=t[r+3],128==(192&(s=t[r+1]))&&128==(192&o)&&128==(192&a)&&(l=(15&c)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&l<1114112&&(u=l)}null===u?(u=65533,h=1):u>65535&&(i.push((u-=65536)>>>10&1023|55296),u=56320|1023&u),i.push(u),r+=h}return function(t){var e=t.length;if(e<=4096)return String.fromCharCode.apply(String,t);for(var n="",i=0;ie&&(t+=" ... "),""},o.prototype.compare=function(t,e,n,i,r){if(B(t,Uint8Array)&&(t=o.from(t,t.offset,t.byteLength)),!o.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),e<0||n>t.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&e>=n)return 0;if(i>=r)return-1;if(e>=n)return 1;if(this===t)return 0;for(var s=(r>>>=0)-(i>>>=0),a=(n>>>=0)-(e>>>=0),l=Math.min(s,a),c=this.slice(i,r),u=t.slice(e,n),h=0;h>>=0,isFinite(n)?(n>>>=0,void 0===i&&(i="utf8")):(i=n,n=void 0)}var r=this.length-e;if((void 0===n||n>r)&&(n=r),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return b(this,t,e,n);case"utf8":case"utf-8":return y(this,t,e,n);case"ascii":return v(this,t,e,n);case"latin1":case"binary":return _(this,t,e,n);case"base64":return w(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return x(this,t,e,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}},o.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function C(t,e,n){var i="";n=Math.min(t.length,n);for(var r=e;ri)&&(n=i);for(var r="",s=e;sn)throw new RangeError("Trying to access beyond buffer length")}function P(t,e,n,i,r,s){if(!o.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>r||et.length)throw new RangeError("Index out of range")}function M(t,e,n,i,r,s){if(n+i>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function I(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function D(t,e,n,r,s){return e=+e,n>>>=0,s||M(t,0,n,8),i.write(t,e,n,r,52,8),n+8}o.prototype.slice=function(t,e){var n=this.length;(t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t+--e],r=1;e>0&&(r*=256);)i+=this[t+--e]*r;return i},o.prototype.readUInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),this[t]},o.prototype.readUInt16LE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]|this[t+1]<<8},o.prototype.readUInt16BE=function(t,e){return t>>>=0,e||A(t,2,this.length),this[t]<<8|this[t+1]},o.prototype.readUInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},o.prototype.readUInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},o.prototype.readIntLE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=this[t],r=1,s=0;++s=(r*=128)&&(i-=Math.pow(2,8*e)),i},o.prototype.readIntBE=function(t,e,n){t>>>=0,e>>>=0,n||A(t,e,this.length);for(var i=e,r=1,s=this[t+--i];i>0&&(r*=256);)s+=this[t+--i]*r;return s>=(r*=128)&&(s-=Math.pow(2,8*e)),s},o.prototype.readInt8=function(t,e){return t>>>=0,e||A(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},o.prototype.readInt16LE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt16BE=function(t,e){t>>>=0,e||A(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},o.prototype.readInt32LE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},o.prototype.readInt32BE=function(t,e){return t>>>=0,e||A(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},o.prototype.readFloatLE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!0,23,4)},o.prototype.readFloatBE=function(t,e){return t>>>=0,e||A(t,4,this.length),i.read(this,t,!1,23,4)},o.prototype.readDoubleLE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!0,52,8)},o.prototype.readDoubleBE=function(t,e){return t>>>=0,e||A(t,8,this.length),i.read(this,t,!1,52,8)},o.prototype.writeUIntLE=function(t,e,n,i){t=+t,e>>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=1,s=0;for(this[e]=255&t;++s>>=0,n>>>=0,i||P(this,t,e,n,Math.pow(2,8*n)-1,0);var r=n-1,s=1;for(this[e+r]=255&t;--r>=0&&(s*=256);)this[e+r]=t/s&255;return e+n},o.prototype.writeUInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,255,0),this[e]=255&t,e+1},o.prototype.writeUInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeUInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeUInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},o.prototype.writeUInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeIntLE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=0,o=1,a=0;for(this[e]=255&t;++s>0)-a&255;return e+n},o.prototype.writeIntBE=function(t,e,n,i){if(t=+t,e>>>=0,!i){var r=Math.pow(2,8*n-1);P(this,t,e,n,r-1,-r)}var s=n-1,o=1,a=0;for(this[e+s]=255&t;--s>=0&&(o*=256);)t<0&&0===a&&0!==this[e+s+1]&&(a=1),this[e+s]=(t/o>>0)-a&255;return e+n},o.prototype.writeInt8=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},o.prototype.writeInt16LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},o.prototype.writeInt16BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},o.prototype.writeInt32LE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},o.prototype.writeInt32BE=function(t,e,n){return t=+t,e>>>=0,n||P(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},o.prototype.writeFloatLE=function(t,e,n){return I(this,t,e,!0,n)},o.prototype.writeFloatBE=function(t,e,n){return I(this,t,e,!1,n)},o.prototype.writeDoubleLE=function(t,e,n){return D(this,t,e,!0,n)},o.prototype.writeDoubleBE=function(t,e,n){return D(this,t,e,!1,n)},o.prototype.copy=function(t,e,n,i){if(!o.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&0!==i&&(i=this.length),e>=t.length&&(e=t.length),e||(e=0),i>0&&i=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-e=0;--s)t[s+e]=this[s+n];else Uint8Array.prototype.set.call(t,this.subarray(n,i),e);return r},o.prototype.fill=function(t,e,n,i){if("string"==typeof t){if("string"==typeof e?(i=e,e=0,n=this.length):"string"==typeof n&&(i=n,n=this.length),void 0!==i&&"string"!=typeof i)throw new TypeError("encoding must be a string");if("string"==typeof i&&!o.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(1===t.length){var r=t.charCodeAt(0);("utf8"===i&&r<128||"latin1"===i)&&(t=r)}}else"number"==typeof t&&(t&=255);if(e<0||this.length>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(s=e;s55295&&n<57344){if(!r){if(n>56319){(e-=3)>-1&&s.push(239,191,189);continue}if(o+1===i){(e-=3)>-1&&s.push(239,191,189);continue}r=n;continue}if(n<56320){(e-=3)>-1&&s.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(e-=3)>-1&&s.push(239,191,189);if(r=null,n<128){if((e-=1)<0)break;s.push(n)}else if(n<2048){if((e-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function j(t){return e.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(R,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function F(t,e,n,i){for(var r=0;r=e.length||r>=t.length);++r)e[r+n]=t[r];return r}function B(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function V(t){return t!=t}}).call(this)}).call(this,t("buffer").Buffer)},{"base64-js":2,buffer:6,ieee754:9}],7:[function(t,e,n){"use strict";e.exports=function t(e){return null===e||"object"!=typeof e||null!=e.toJSON?JSON.stringify(e):Array.isArray(e)?"["+e.reduce((e,n,i)=>e+(0===i?"":",")+t(void 0===n||"symbol"==typeof n?null:n),"")+"]":"{"+Object.keys(e).sort().reduce((n,i,r)=>void 0===e[i]||"symbol"==typeof e[i]?n:n+(0===n.length?"":",")+t(i)+":"+t(e[i]),"")+"}"}},{}],8:[function(t,e,n){"use strict";var i,r="object"==typeof Reflect?Reflect:null,s=r&&"function"==typeof r.apply?r.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};i=r&&"function"==typeof r.ownKeys?r.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var o=Number.isNaN||function(t){return t!=t};function a(){a.init.call(this)}e.exports=a,e.exports.once=function(t,e){return new Promise(function(n,i){function r(n){t.removeListener(e,s),i(n)}function s(){"function"==typeof t.removeListener&&t.removeListener("error",r),n([].slice.call(arguments))}b(t,e,s,{once:!0}),"error"!==e&&function(t,e,n){"function"==typeof t.on&&b(t,"error",e,n)}(t,r,{once:!0})})},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var l=10;function c(t){if("function"!=typeof t)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof t)}function u(t){return void 0===t._maxListeners?a.defaultMaxListeners:t._maxListeners}function h(t,e,n,i){var r,s,o;if(c(n),void 0===(s=t._events)?(s=t._events=Object.create(null),t._eventsCount=0):(void 0!==s.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),s=t._events),o=s[e]),void 0===o)o=s[e]=n,++t._eventsCount;else if("function"==typeof o?o=s[e]=i?[n,o]:[o,n]:i?o.unshift(n):o.push(n),(r=u(t))>0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,function(t){console&&console.warn&&console.warn(t)}(a)}return t}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function p(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=d.bind(i);return r.listener=n,i.wrapFn=r,r}function f(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(o=e[0]),o instanceof Error)throw o;var a=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var l=r[t];if(void 0===l)return!1;if("function"==typeof l)s(l,this,e);else{var c=l.length,u=m(l,c);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},a.prototype.listeners=function(t){return f(this,t,!0)},a.prototype.rawListeners=function(t){return f(this,t,!1)},a.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):g.call(t,e)},a.prototype.listenerCount=g,a.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},{}],9:[function(t,e,n){n.read=function(t,e,n,i,r){var s,o,a=8*r-i-1,l=(1<>1,u=-7,h=n?r-1:0,d=n?-1:1,p=t[e+h];for(h+=d,s=p&(1<<-u)-1,p>>=-u,u+=a;u>0;s=256*s+t[e+h],h+=d,u-=8);for(o=s&(1<<-u)-1,s>>=-u,u+=i;u>0;o=256*o+t[e+h],h+=d,u-=8);if(0===s)s=1-c;else{if(s===l)return o?NaN:1/0*(p?-1:1);o+=Math.pow(2,i),s-=c}return(p?-1:1)*o*Math.pow(2,s-i)},n.write=function(t,e,n,i,r,s){var o,a,l,c=8*s-r-1,u=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,p=i?0:s-1,f=i?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=u):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+h>=1?d/l:d*Math.pow(2,1-h))*l>=2&&(o++,l/=2),o+h>=u?(a=0,o=u):o+h>=1?(a=(e*l-1)*Math.pow(2,r),o+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,r),o=0));r>=8;t[n+p]=255&a,p+=f,a/=256,r-=8);for(o=o<0;t[n+p]=255&o,p+=f,o/=256,c-=8);t[n+p-f]|=128*g}},{}],10:[function(t,e,n){e.exports="function"==typeof Object.create?function(t,e){e&&(t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:function(t,e){if(e){t.super_=e;var n=function(){};n.prototype=e.prototype,t.prototype=new n,t.prototype.constructor=t}}},{}],11:[function(t,e,n){"use strict";const{isArray:r,isObject:s,isString:o}=t("./types"),{asArray:a}=t("./util"),{prependBase:l}=t("./url"),c=t("./JsonLdError"),u=t("./ResolvedContext");function h(t){throw new c("Invalid JSON-LD syntax; @context must be an object.","jsonld.SyntaxError",{code:"invalid local context",context:t})}function d({context:t,base:e}){if(!t)return;const n=t["@context"];if(o(n))t["@context"]=l(e,n);else if(r(n))for(let i=0;i10)throw new c("Maximum number of @context URLs exceeded.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"loading remote context failed":"context overflow",max:10});if(a.has(e))throw new c("Cyclical @context URLs detected.","jsonld.ContextUrlError",{code:"json-ld-1.0"===t.processingMode?"recursive context inclusion":"context overflow",url:e});let i,l;a.add(e);try{l=yield n(e),i=l.document||null,o(i)&&(i=JSON.parse(i))}catch(u){throw new c("Dereferencing a URL did not result in a valid JSON-LD object. Possible causes are an inaccessible URL perhaps due to a same-origin policy (ensure the server uses CORS if you are using client-side JavaScript), too many redirects, a non-JSON response, or more than one HTTP Link Header was provided for a remote context.","jsonld.InvalidUrl",{code:"loading remote context failed",url:e,cause:u})}if(!s(i))throw new c("Dereferencing a URL did not result in a JSON object. The response was valid JSON, but it was not a JSON object.","jsonld.InvalidUrl",{code:"invalid remote context",url:e});return i="@context"in i?{"@context":i["@context"]}:{"@context":{}},l.contextUrl&&(r(i["@context"])||(i["@context"]=[i["@context"]]),i["@context"].push(l.contextUrl)),{context:i,remoteDoc:l}})()}}},{"./JsonLdError":12,"./ResolvedContext":16,"./types":30,"./url":31,"./util":32}],12:[function(t,e,n){"use strict";e.exports=class extends Error{constructor(t="An unspecified JSON-LD error occurred.",e="jsonld.Error",n={}){super(t),this.name=e,this.message=t,this.details=n}}},{}],13:[function(t,e,n){"use strict";e.exports=t=>{class e{toString(){return"[object JsonLdProcessor]"}}return Object.defineProperty(e,"prototype",{writable:!1,enumerable:!1}),Object.defineProperty(e.prototype,"constructor",{writable:!0,enumerable:!1,configurable:!0,value:e}),e.compact=function(e,n){return arguments.length<2?Promise.reject(new TypeError("Could not compact, too few arguments.")):t.compact(e,n)},e.expand=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not expand, too few arguments.")):t.expand(e)},e.flatten=function(e){return arguments.length<1?Promise.reject(new TypeError("Could not flatten, too few arguments.")):t.flatten(e)},e}},{}],14:[function(t,e,n){"use strict";e.exports=t("rdf-canonize").NQuads},{"rdf-canonize":46}],15:[function(t,e,n){"use strict";e.exports=class{constructor(){this._requests={}}wrapLoader(t){const e=this;return e._loader=t,function(){return e.add.apply(e,arguments)}}add(t){var e=this;return i(function*(){let n=e._requests[t];if(n)return Promise.resolve(n);n=e._requests[t]=e._loader(t);try{return yield n}finally{delete e._requests[t]}})()}}},{}],16:[function(t,e,n){"use strict";const i=t("lru-cache");e.exports=class{constructor({document:t}){this.document=t,this.cache=new i({max:10})}getProcessed(t){return this.cache.get(t)}setProcessed(t,e){this.cache.set(t,e)}}},{"lru-cache":33}],17:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isString:a,isUndefined:l}=t("./types"),{isList:c,isValue:u,isGraph:h,isSimpleGraph:d,isSubjectReference:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{removeBase:v,prependBase:_}=t("./url"),{addValue:w,asArray:x,compareShortestLeast:S}=t("./util"),E={};function C(t,e,n){if("@nest"!==f(t,e,{vocab:!0},n))throw new r("JSON-LD compact error; nested property must have an @nest value resolving to @nest.","jsonld.SyntaxError",{code:"invalid @nest value"})}e.exports=E,E.compact=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},compactionMap:f=(()=>{})}){if(s(n)){let r=[];for(let s=0;s1&&(T=Array.from(T).sort());const k=t;for(const e of T){const n=E.compactIri({activeCtx:k,iri:e,relativeTo:{vocab:!0}}),r=g(S,n,"@context");l(r)||(t=yield b({activeCtx:t,localCtx:r,options:i,propagate:!1}))}const A=Object.keys(n).sort();for(const l of A){const p=n[l];if("@id"!==l)if("@type"!==l)if("@reverse"!==l)if("@preserve"!==l)if("@index"!==l)if("@graph"!==l&&"@list"!==l&&"@included"!==l&&m(l)){const e=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,e,p)}else{if(!s(p))throw new r("JSON-LD expansion error; expanded value must be an array.","jsonld.SyntaxError");if(0===p.length){const e=E.compactIri({activeCtx:t,iri:l,value:p,relativeTo:{vocab:!0},reverse:v}),n=t.mappings.has(e)?t.mappings.get(e)["@nest"]:null;let r=_;n&&(C(t,n,i),o(_[n])||(_[n]={}),r=_[n]),w(r,e,p,{propertyIsArray:!0})}for(const e of p){const n=E.compactIri({activeCtx:t,iri:l,value:e,relativeTo:{vocab:!0},reverse:v}),r=t.mappings.has(n)?t.mappings.get(n)["@nest"]:null;let p=_;r&&(C(t,r,i),o(_[r])||(_[r]={}),p=_[r]);const m=g(t,n,"@container")||[],b=h(e),y=c(e);let S;y?S=e["@list"]:b&&(S=e["@graph"]);let O=yield E.compact({activeCtx:t,activeProperty:n,element:y||b?S:e,options:i,compactionMap:f});if(y){if(s(O)||(O=[O]),m.includes("@list")){w(p,n,O,{valueIsArray:!0,allowDuplicate:!0});continue}O={[E.compactIri({activeCtx:t,iri:"@list",relativeTo:{vocab:!0}})]:O},"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"])}if(b)if(m.includes("@graph")&&(m.includes("@id")||m.includes("@index")&&d(e))){let r;p.hasOwnProperty(n)?r=p[n]:p[n]=r={};const s=(m.includes("@id")?e["@id"]:e["@index"])||E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}});w(r,s,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})}else m.includes("@graph")&&d(e)?(s(O)&&O.length>1&&(O={"@included":O}),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")})):(s(O)&&1===O.length&&i.compactArrays&&(O=O[0]),O={[E.compactIri({activeCtx:t,iri:"@graph",relativeTo:{vocab:!0}})]:O},"@id"in e&&(O[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e["@id"]),"@index"in e&&(O[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=e["@index"]),w(p,n,O,{propertyIsArray:!i.compactArrays||m.includes("@set")}));else if(m.includes("@language")||m.includes("@index")||m.includes("@id")||m.includes("@type")){let r,s;if(p.hasOwnProperty(n)?r=p[n]:p[n]=r={},m.includes("@language"))u(O)&&(O=O["@value"]),s=e["@language"];else if(m.includes("@index")){const i=g(t,n,"@index")||"@index",r=E.compactIri({activeCtx:t,iri:i,relativeTo:{vocab:!0}});if("@index"===i)s=e["@index"],delete O[r];else{let t;if([s,...t]=x(O[i]||[]),a(s))switch(t.length){case 0:delete O[i];break;case 1:O[i]=t[0];break;default:O[i]=t}else s=null}}else if(m.includes("@id")){const e=E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}});s=O[e],delete O[e]}else if(m.includes("@type")){const r=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}});let o;switch([s,...o]=x(O[r]||[]),o.length){case 0:delete O[r];break;case 1:O[r]=o[0];break;default:O[r]=o}1===Object.keys(O).length&&"@id"in e&&(O=yield E.compact({activeCtx:t,activeProperty:n,element:{"@id":e["@id"]},options:i,compactionMap:f}))}s||(s=E.compactIri({activeCtx:t,iri:"@none",relativeTo:{vocab:!0}})),w(r,s,O,{propertyIsArray:m.includes("@set")})}else{const t=!i.compactArrays||m.includes("@set")||m.includes("@list")||s(O)&&0===O.length||"@list"===l||"@graph"===l;w(p,n,O,{propertyIsArray:t})}}}else{if((g(t,e,"@container")||[]).includes("@index"))continue;const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,p)}else{const n=yield E.compact({activeCtx:t,activeProperty:e,element:p,options:i,compactionMap:f});s(n)&&0===n.length||w(_,l,n)}else{const e=yield E.compact({activeCtx:t,activeProperty:"@reverse",element:p,options:i,compactionMap:f});for(const n in e)if(t.mappings.has(n)&&t.mappings.get(n).reverse){const r=e[n],s=(g(t,n,"@container")||[]).includes("@set")||!i.compactArrays;w(_,n,r,{propertyIsArray:s}),delete e[n]}if(Object.keys(e).length>0){const n=E.compactIri({activeCtx:t,iri:l,relativeTo:{vocab:!0}});w(_,n,e)}}else{let e=x(p).map(t=>E.compactIri({activeCtx:S,iri:t,relativeTo:{vocab:!0}}));1===e.length&&(e=e[0]);const n=E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}}),i=(g(t,n,"@container")||[]).includes("@set")&&y(t,1.1)||s(e)&&0===p.length;w(_,n,e,{propertyIsArray:i})}else{let e=x(p).map(e=>E.compactIri({activeCtx:t,iri:e,relativeTo:{vocab:!1},base:i.base}));1===e.length&&(e=e[0]),_[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]=e}}return _}return n});return function(e){return t.apply(this,arguments)}}(),E.compactIri=({activeCtx:t,iri:e,value:n=null,relativeTo:i={vocab:!1},reverse:s=!1,base:a=null})=>{if(null===e)return e;t.isPropertyTermScoped&&t.previousContext&&(t=t.previousContext);const l=t.getInverse();if(m(e)&&e in l&&"@none"in l[e]&&"@type"in l[e]["@none"]&&"@none"in l[e]["@none"]["@type"])return l[e]["@none"]["@type"]["@none"];if(i.vocab&&e in l){const i=t["@language"]||"@none",r=[];o(n)&&"@index"in n&&!("@graph"in n)&&r.push("@index","@index@set"),o(n)&&"@preserve"in n&&(n=n["@preserve"][0]),h(n)?("@index"in n&&r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n&&r.push("@graph@id","@graph@id@set"),r.push("@graph","@graph@set","@set"),"@index"in n||r.push("@graph@index","@graph@index@set","@index","@index@set"),"@id"in n||r.push("@graph@id","@graph@id@set")):o(n)&&!u(n)&&r.push("@id","@id@set","@type","@set@type");let a="@language",l="@null";if(s)a="@type",l="@reverse",r.push("@set");else if(c(n)){"@index"in n||r.push("@list");const t=n["@list"];if(0===t.length)a="@any",l="@none";else{let e=0===t.length?i:null,n=null;for(let i=0;it.includes("_"));t&&a.push(t.replace(/^[^_]+_/,"_"))}a.push("@none");const l=t.inverse[e];for(const o of i){if(!(o in l))continue;const t=l[o][r];for(const e of a)if(e in t)return t[e]}return null}(t,e,n,r,a,l);if(null!==d)return d}if(i.vocab&&"@vocab"in t){const n=t["@vocab"];if(0===e.indexOf(n)&&e!==n){const i=e.substr(n.length);if(!t.mappings.has(i))return i}}let d=null;const p=[];let f=t.fastCurieMap;const g=e.length-1;for(let r=0;r=0;--r){const i=p[r],s=i.terms;for(const r of s){const s=r+":"+e.substr(i.iri.length);t.mappings.get(r)._prefix&&(!t.mappings.has(s)||null===n&&t.mappings.get(s)["@id"]===e)&&(null===d||S(s,d)<0)&&(d=s)}}if(null!==d)return d;for(const[o,c]of t.mappings)if(c&&c._prefix&&e.startsWith(o+":"))throw new r(`Absolute IRI "${e}" confused with prefix "${o}".`,"jsonld.SyntaxError",{code:"IRI confused with prefix",context:t});return i.vocab?e:"@base"in t?t["@base"]?v(_(a,t["@base"]),e):e:v(a,e)},E.compactValue=({activeCtx:t,activeProperty:e,value:n,options:i})=>{if(u(n)){const i=g(t,e,"@type"),r=g(t,e,"@language"),s=g(t,e,"@direction"),o=g(t,e,"@container")||[],l="@index"in n&&!o.includes("@index");if(!l&&"@none"!==i&&(n["@type"]===i||"@language"in n&&n["@language"]===r&&"@direction"in n&&n["@direction"]===s||"@language"in n&&n["@language"]===r||"@direction"in n&&n["@direction"]===s))return n["@value"];const c=Object.keys(n).length,u=1===c||2===c&&"@index"in n&&!l,h="@language"in t,d=a(n["@value"]),p=t.mappings.has(e)&&null===t.mappings.get(e)["@language"];if(u&&"@none"!==i&&(!h||!d||p))return n["@value"];const f={};return l&&(f[E.compactIri({activeCtx:t,iri:"@index",relativeTo:{vocab:!0}})]=n["@index"]),"@type"in n?f[E.compactIri({activeCtx:t,iri:"@type",relativeTo:{vocab:!0}})]=E.compactIri({activeCtx:t,iri:n["@type"],relativeTo:{vocab:!0}}):"@language"in n&&(f[E.compactIri({activeCtx:t,iri:"@language",relativeTo:{vocab:!0}})]=n["@language"]),"@direction"in n&&(f[E.compactIri({activeCtx:t,iri:"@direction",relativeTo:{vocab:!0}})]=n["@direction"]),f[E.compactIri({activeCtx:t,iri:"@value",relativeTo:{vocab:!0}})]=n["@value"],f}const r=f(t,e,{vocab:!0},i),s=g(t,e,"@type"),o=E.compactIri({activeCtx:t,iri:n["@id"],relativeTo:{vocab:"@vocab"===s},base:i.base});return"@id"===s||"@vocab"===s||"@graph"===r?o:{[E.compactIri({activeCtx:t,iri:"@id",relativeTo:{vocab:!0}})]:o}}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],18:[function(t,e,n){"use strict";const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#";e.exports={LINK_HEADER_REL:"http://www.w3.org/ns/json-ld#context",LINK_HEADER_CONTEXT:"http://www.w3.org/ns/json-ld#context",RDF:i,RDF_LIST:i+"List",RDF_FIRST:i+"first",RDF_REST:i+"rest",RDF_NIL:i+"nil",RDF_TYPE:i+"type",RDF_PLAIN_LITERAL:i+"PlainLiteral",RDF_XML_LITERAL:i+"XMLLiteral",RDF_JSON_LITERAL:i+"JSON",RDF_OBJECT:i+"object",RDF_LANGSTRING:i+"langString",XSD:r,XSD_BOOLEAN:r+"boolean",XSD_DOUBLE:r+"double",XSD_INTEGER:r+"integer",XSD_STRING:r+"string"}},{}],19:[function(t,e,n){"use strict";const r=t("./util"),s=t("./JsonLdError"),{isArray:o,isObject:a,isString:l,isUndefined:c}=t("./types"),{isAbsolute:u,isRelative:h,prependBase:d}=t("./url"),{asArray:p,compareShortestLeast:f}=t("./util"),g=new Map,m=/^@[a-zA-Z]+$/,b={};function y(t,e,n,i,r,s){if(null===e||!l(e)||b.isKeyword(e))return e;if(e.match(m))return null;if(i&&i.hasOwnProperty(e)&&!0!==r.get(e)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:e,defined:r,options:s}),(n=n||{}).vocab){const n=t.mappings.get(e);if(null===n)return null;if(a(n)&&"@id"in n)return n["@id"]}const o=e.indexOf(":");if(o>0){const n=e.substr(0,o),a=e.substr(o+1);if("_"===n||0===a.indexOf("//"))return e;i&&i.hasOwnProperty(n)&&b.createTermDefinition({activeCtx:t,localCtx:i,term:n,defined:r,options:s});const l=t.mappings.get(n);if(l&&l._prefix)return l["@id"]+a;if(u(e))return e}if(n.vocab&&"@vocab"in t)return t["@vocab"]+e;if(n.base&&"@base"in t){if(t["@base"])return d(d(s.base,t["@base"]),e)}else if(n.base)return d(s.base,e);return e}function v(t,e){if(!t||"object"!=typeof t||!e||"object"!=typeof e)return t===e;const n=Array.isArray(t);if(n!==Array.isArray(e))return!1;if(n){if(t.length!==e.length)return!1;for(let n=0;n{if(i.has(n)){if(i.get(n))return;throw new s("Cyclical context definition detected.","jsonld.CyclicalContext",{code:"cyclic IRI mapping",context:e,term:n})}let h;if(i.set(n,!1),e.hasOwnProperty(n)&&(h=e[n]),"@type"===n&&a(h)&&"@set"===(h["@container"]||"@set")&&b.processingMode(t,1.1)){const t=["@container","@id","@protected"],i=Object.keys(h);if(0===i.length||i.some(e=>!t.includes(e)))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n})}else{if(b.isKeyword(n))throw new s("Invalid JSON-LD syntax; keywords cannot be overridden.","jsonld.SyntaxError",{code:"keyword redefinition",context:e,term:n});if(n.match(m))return void console.warn('WARNING: terms beginning with "@" are reserved for future use and ignored',{term:n});if(""===n)throw new s("Invalid JSON-LD syntax; a term cannot be an empty string.","jsonld.SyntaxError",{code:"invalid term definition",context:e})}const d=t.mappings.get(n);t.mappings.has(n)&&t.mappings.delete(n);let p=!1;if((l(h)||null===h)&&(p=!0,h={"@id":h}),!a(h))throw new s("Invalid JSON-LD syntax; @context term values must be strings or objects.","jsonld.SyntaxError",{code:"invalid term definition",context:e});const f={};t.mappings.set(n,f),f.reverse=!1;const g=["@container","@id","@language","@reverse","@type"];b.processingMode(t,1.1)&&g.push("@context","@direction","@index","@nest","@prefix","@protected");for(const o in h)if(!g.includes(o))throw new s("Invalid JSON-LD syntax; a term definition must not contain "+o,"jsonld.SyntaxError",{code:"invalid term definition",context:e});const _=n.indexOf(":");if(f._termHasColon=_>0,"@reverse"in h){if("@id"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @id.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});if("@nest"in h)throw new s("Invalid JSON-LD syntax; a @reverse term definition must not contain @nest.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});const o=h["@reverse"];if(!l(o))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{reverse:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));const a=y(t,o,{vocab:!0,base:!1},e,i,r);if(!u(a))throw new s("Invalid JSON-LD syntax; a @context @reverse value must be an absolute IRI or a blank node identifier.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=a,f.reverse=!0}else if("@id"in h){let o=h["@id"];if(o&&!l(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an array of strings or a string.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(null===o)f["@id"]=null;else{if(!b.isKeyword(o)&&o.match(m))return console.warn('WARNING: values beginning with "@" are reserved for future use and ignored',{id:o}),void(d?t.mappings.set(n,d):t.mappings.delete(n));if(o!==n){if(o=y(t,o,{vocab:!0,base:!1},e,i,r),!u(o)&&!b.isKeyword(o))throw new s("Invalid JSON-LD syntax; a @context @id value must be an absolute IRI, a blank node identifier, or a keyword.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});if(n.match(/(?::[^:])|\//)&&y(t,n,{vocab:!0,base:!1},e,new Map(i).set(n,!0),r)!==o)throw new s("Invalid JSON-LD syntax; term in form of IRI must expand to definition.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e});f["@id"]=o,f._prefix=p&&!f._termHasColon&&o.match(/[:\/\?#\[\]@]$/)}}}if(!("@id"in f))if(f._termHasColon){const s=n.substr(0,_);if(e.hasOwnProperty(s)&&b.createTermDefinition({activeCtx:t,localCtx:e,term:s,defined:i,options:r}),t.mappings.has(s)){const e=n.substr(_+1);f["@id"]=t.mappings.get(s)["@id"]+e}else f["@id"]=n}else if("@type"===n)f["@id"]=n;else{if(!("@vocab"in t))throw new s("Invalid JSON-LD syntax; @context terms must define an @id.","jsonld.SyntaxError",{code:"invalid IRI mapping",context:e,term:n});f["@id"]=t["@vocab"]+n}if((!0===h["@protected"]||!0===i.get("@protected")&&!1!==h["@protected"])&&(t.protected[n]=!0,f.protected=!0),i.set(n,!0),"@type"in h){let n=h["@type"];if(!l(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be a string.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if("@json"===n||"@none"===n){if(b.processingMode(t,1))throw new s(`Invalid JSON-LD syntax; an @context @type value must not be "${n}" in JSON-LD 1.0 mode.`,"jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else if("@id"!==n&&"@vocab"!==n){if(n=y(t,n,{vocab:!0,base:!1},e,i,r),!u(n))throw new s("Invalid JSON-LD syntax; an @context @type value must be an absolute IRI.","jsonld.SyntaxError",{code:"invalid type mapping",context:e});if(0===n.indexOf("_:"))throw new s("Invalid JSON-LD syntax; an @context @type value must be an IRI, not a blank node identifier.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}f["@type"]=n}if("@container"in h){const n=l(h["@container"])?[h["@container"]]:h["@container"]||[],i=["@list","@set","@index","@language"];let r=!0;const a=n.includes("@set");if(b.processingMode(t,1.1)){if(i.push("@graph","@id","@type"),n.includes("@list")){if(1!==n.length)throw new s("Invalid JSON-LD syntax; @context @container with @list must have no other values","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else if(n.includes("@graph")){if(n.some(t=>"@graph"!==t&&"@id"!==t&&"@index"!==t&&"@set"!==t))throw new s("Invalid JSON-LD syntax; @context @container with @graph must have no other values other than @id, @index, and @set","jsonld.SyntaxError",{code:"invalid container mapping",context:e})}else r&=n.length<=(a?2:1);if(n.includes("@type")&&(f["@type"]=f["@type"]||"@id",!["@id","@vocab"].includes(f["@type"])))throw new s("Invalid JSON-LD syntax; container: @type requires @type to be @id or @vocab.","jsonld.SyntaxError",{code:"invalid type mapping",context:e})}else r&=!o(h["@container"]),r&=n.length<=1;if(r&=n.every(t=>i.includes(t)),r&=!(a&&n.includes("@list")),!r)throw new s("Invalid JSON-LD syntax; @context @container value must be one of the following: "+i.join(", "),"jsonld.SyntaxError",{code:"invalid container mapping",context:e});if(f.reverse&&!n.every(t=>["@index","@set"].includes(t)))throw new s("Invalid JSON-LD syntax; @context @container value for a @reverse type definition must be @index or @set.","jsonld.SyntaxError",{code:"invalid reverse property",context:e});f["@container"]=n}if("@index"in h){if(!("@container"in h)||!f["@container"].includes("@index"))throw new s(`Invalid JSON-LD syntax; @index without @index in @container: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});if(!l(h["@index"])||0===h["@index"].indexOf("@"))throw new s(`Invalid JSON-LD syntax; @index must expand to an IRI: "${h["@index"]}" on term "${n}".`,"jsonld.SyntaxError",{code:"invalid term definition",context:e});f["@index"]=h["@index"]}if("@context"in h&&(f["@context"]=h["@context"]),"@language"in h&&!("@type"in h)){let t=h["@language"];if(null!==t&&!l(t))throw new s("Invalid JSON-LD syntax; @context @language value must be a string or null.","jsonld.SyntaxError",{code:"invalid language mapping",context:e});null!==t&&(t=t.toLowerCase()),f["@language"]=t}if("@prefix"in h){if(n.match(/:|\//))throw new s("Invalid JSON-LD syntax; @context @prefix used on a compact IRI term","jsonld.SyntaxError",{code:"invalid term definition",context:e});if(b.isKeyword(f["@id"]))throw new s("Invalid JSON-LD syntax; keywords may not be used as prefixes","jsonld.SyntaxError",{code:"invalid term definition",context:e});if("boolean"!=typeof h["@prefix"])throw new s("Invalid JSON-LD syntax; @context value for @prefix must be boolean","jsonld.SyntaxError",{code:"invalid @prefix value",context:e});f._prefix=!0===h["@prefix"]}if("@direction"in h){const t=h["@direction"];if(null!==t&&"ltr"!==t&&"rtl"!==t)throw new s('Invalid JSON-LD syntax; @direction value must be null, "ltr", or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",context:e});f["@direction"]=t}if("@nest"in h){const t=h["@nest"];if(!l(t)||"@nest"!==t&&0===t.indexOf("@"))throw new s("Invalid JSON-LD syntax; @context @nest value must be a string which is not a keyword other than @nest.","jsonld.SyntaxError",{code:"invalid @nest value",context:e});f["@nest"]=t}const w=f["@id"];if("@context"===w||"@preserve"===w)throw new s("Invalid JSON-LD syntax; @context and @preserve cannot be aliased.","jsonld.SyntaxError",{code:"invalid keyword alias",context:e});if(d&&d.protected&&!c&&(t.protected[n]=!0,f.protected=!0,!v(d,f))){const t=r&&r.protectedMode||"error";if("error"===t)throw new s(`Invalid JSON-LD syntax; tried to redefine "${n}" which is a protected term.`,"jsonld.SyntaxError",{code:"protected term redefinition",context:e,term:n});if("warn"===t)return void console.warn("WARNING: protected term redefinition",{term:n});throw new s("Invalid protectedMode.","jsonld.SyntaxError",{code:"invalid protected mode",context:e,term:n,protectedMode:t})}},b.expandIri=(t,e,n,i)=>y(t,e,n,void 0,void 0,i),b.getInitialContext=t=>{const e=JSON.stringify({processingMode:t.processingMode}),n=g.get(e);if(n)return n;const i={processingMode:t.processingMode,mappings:new Map,inverse:null,getInverse:function(){const t=this;if(t.inverse)return t.inverse;const e=t.inverse={},n=t.fastCurieMap={},i={},r=(t["@language"]||"@none").toLowerCase(),a=t["@direction"],l=t.mappings,c=[...l.keys()].sort(f);for(const s of c){const t=l.get(s);if(null===t)continue;let c=t["@container"]||"@none";if(c=[].concat(c).sort().join(""),null===t["@id"])continue;const u=p(t["@id"]);for(const l of u){let u=e[l];const h=b.isKeyword(l);if(u)!h&&!t._termHasColon&&i[l].push(s);else if(e[l]=u={},!h&&!t._termHasColon){i[l]=[s];const t={iri:l,terms:i[l]};l[0]in n?n[l[0]].push(t):n[l[0]]=[t]}if(u[c]||(u[c]={"@language":{},"@type":{},"@any":{}}),u=u[c],o(s,u["@any"],"@none"),t.reverse)o(s,u["@type"],"@reverse");else if("@none"===t["@type"])o(s,u["@any"],"@none"),o(s,u["@language"],"@none"),o(s,u["@type"],"@none");else if("@type"in t)o(s,u["@type"],t["@type"]);else if("@language"in t&&"@direction"in t){const e=t["@language"],n=t["@direction"];o(s,u["@language"],e&&n?`${e}_${n}`.toLowerCase():e?e.toLowerCase():n?`_${n}`:"@null")}else"@language"in t?o(s,u["@language"],(t["@language"]||"@null").toLowerCase()):"@direction"in t?o(s,u["@language"],t["@direction"]?`_${t["@direction"]}`:"@none"):a?(o(s,u["@language"],`_${a}`),o(s,u["@language"],"@none"),o(s,u["@type"],"@none")):(o(s,u["@language"],r),o(s,u["@language"],"@none"),o(s,u["@type"],"@none"))}}for(const o in n)s(n,o,1);return e},clone:function(){const t={};return t.mappings=r.clone(this.mappings),t.clone=this.clone,t.inverse=null,t.getInverse=this.getInverse,t.protected=r.clone(this.protected),this.previousContext&&(t.previousContext=this.previousContext.clone()),t.revertToPreviousContext=this.revertToPreviousContext,"@base"in this&&(t["@base"]=this["@base"]),"@language"in this&&(t["@language"]=this["@language"]),"@vocab"in this&&(t["@vocab"]=this["@vocab"]),t},revertToPreviousContext:function(){return this.previousContext?this.previousContext.clone():this},protected:{}};return 1e4===g.size&&g.clear(),g.set(e,i),i;function s(t,e,n){const i=t[e],r=t[e]={};let o,a;for(const s of i)o=s.iri,a=n>=o.length?"":o[n],a in r?r[a].push(s):r[a]=[s];for(const l in r)""!==l&&s(r,l,n+1)}function o(t,e,n){e.hasOwnProperty(n)||(e[n]=t)}},b.getContextValue=(t,e,n)=>{if(null===e)return"@context"===n?void 0:null;if(t.mappings.has(e)){const i=t.mappings.get(e);if(c(n))return i;if(i.hasOwnProperty(n))return i[n]}return"@language"===n&&n in t||"@direction"===n&&n in t?t[n]:"@context"!==n?null:void 0},b.processingMode=(t,e)=>e.toString()>="1.1"?!t.processingMode||t.processingMode>="json-ld-"+e.toString():"json-ld-1.0"===t.processingMode,b.isKeyword=t=>{if(!l(t)||"@"!==t[0])return!1;switch(t){case"@base":case"@container":case"@context":case"@default":case"@direction":case"@embed":case"@explicit":case"@graph":case"@id":case"@included":case"@index":case"@json":case"@language":case"@list":case"@nest":case"@none":case"@omitDefault":case"@prefix":case"@preserve":case"@protected":case"@requireAll":case"@reverse":case"@set":case"@type":case"@value":case"@version":case"@vocab":return!0}return!1}},{"./JsonLdError":12,"./types":30,"./url":31,"./util":32}],20:[function(t,e,n){"use strict";const{parseLinkHeader:r,buildHeaders:s}=t("../util"),{LINK_HEADER_CONTEXT:o}=t("../constants"),a=t("../JsonLdError"),l=t("../RequestQueue"),{prependBase:c}=t("../url"),u=/(^|(\r\n))link:/i;function h(t,e,n){const i=new(t=t||XMLHttpRequest);return new Promise((t,r)=>{i.onload=()=>t(i),i.onerror=t=>r(t),i.open("GET",e,!0);for(const e in n)i.setRequestHeader(e,n[e]);i.send()})}e.exports=({secure:t,headers:e={},xhr:n}={headers:{}})=>{return e=s(e),(new l).wrapLoader(d);function d(t){return p.apply(this,arguments)}function p(){return(p=i(function*(i){if(0!==i.indexOf("http:")&&0!==i.indexOf("https:"))throw new a('URL could not be dereferenced; only "http" and "https" URLs are supported.',"jsonld.InvalidUrl",{code:"loading document failed",url:i});if(t&&0!==i.indexOf("https"))throw new a('URL could not be dereferenced; secure mode is enabled and the URL\'s scheme is not "https".',"jsonld.InvalidUrl",{code:"loading document failed",url:i});let s;try{s=yield h(n,i,e)}catch(m){throw new a("URL could not be dereferenced, an error occurred.","jsonld.LoadDocumentError",{code:"loading document failed",url:i,cause:m})}if(s.status>=400)throw new a("URL could not be dereferenced: "+s.statusText,"jsonld.LoadDocumentError",{code:"loading document failed",url:i,httpStatusCode:s.status});let l={contextUrl:null,documentUrl:i,document:s.response},p=null;const f=s.getResponseHeader("Content-Type");let g;if(u.test(s.getAllResponseHeaders())&&(g=s.getResponseHeader("Link")),g&&"application/ld+json"!==f){const t=r(g),e=t[o];if(Array.isArray(e))throw new a("URL could not be dereferenced, it has more than one associated HTTP Link Header.","jsonld.InvalidUrl",{code:"multiple context link headers",url:i});e&&(l.contextUrl=e.target),p=t.alternate,p&&"application/ld+json"==p.type&&!(f||"").match(/^application\/(\w*\+)?json$/)&&(l=yield d(c(i,p.target)))}return l})).apply(this,arguments)}}},{"../JsonLdError":12,"../RequestQueue":15,"../constants":18,"../url":31,"../util":32}],21:[function(t,e,n){"use strict";const r=t("./JsonLdError"),{isArray:s,isObject:o,isEmptyObject:a,isString:l,isUndefined:c}=t("./types"),{isList:u,isValue:h,isGraph:d,isSubject:p}=t("./graphTypes"),{expandIri:f,getContextValue:g,isKeyword:m,process:b,processingMode:y}=t("./context"),{isAbsolute:v}=t("./url"),{addValue:_,asArray:w,getValues:x,validateTypeValue:S}=t("./util"),E={};e.exports=E;const C=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/;function O(t){return T.apply(this,arguments)}function T(){return(T=i(function*({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x={},insideList:T,typeKey:k,typeScopedContext:M,expansionMap:I}){const D=Object.keys(i).sort(),R=[];let N;const L=i[k]&&"@json"===f(t,s(i[k])?i[k][0]:i[k],{vocab:!0},x);for(const O of D){let k,D=i[O];if("@context"===O)continue;let j=f(t,O,{vocab:!0},x);if((null===j||!v(j)&&!m(j))&&(j=I({unmappedProperty:O,activeCtx:t,activeProperty:e,parent:i,options:x,insideList:T,value:D,expandedParent:d}),void 0===j))continue;if(m(j)){if("@reverse"===n)throw new r("Invalid JSON-LD syntax; a keyword cannot be used as a @reverse property.","jsonld.SyntaxError",{code:"invalid reverse property map",value:D});if(j in d&&"@included"!==j&&"@type"!==j)throw new r("Invalid JSON-LD syntax; colliding keywords detected.","jsonld.SyntaxError",{code:"colliding keywords",keyword:j})}if("@id"===j){if(!l(D)){if(!x.isFrame)throw new r('Invalid JSON-LD syntax; "@id" value must a string.',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(o(D)){if(!a(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}else{if(!s(D))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D});if(!D.every(t=>l(t)))throw new r('Invalid JSON-LD syntax; "@id" value an empty object or array of strings, if framing',"jsonld.SyntaxError",{code:"invalid @id value",value:D})}}_(d,"@id",w(D).map(e=>l(e)?f(t,e,{base:!0},x):e),{propertyIsArray:x.isFrame});continue}if("@type"===j){o(D)&&(D=Object.fromEntries(Object.entries(D).map(([t,e])=>[f(M,t,{vocab:!0}),w(e).map(t=>f(M,t,{base:!0,vocab:!0}))]))),S(D,x.isFrame),_(d,"@type",w(D).map(t=>l(t)?f(M,t,{base:!0,vocab:!0},x):t),{propertyIsArray:x.isFrame});continue}if("@included"===j&&y(t,1.1)){const n=w(yield E.expand({activeCtx:t,activeProperty:e,element:D,options:x,expansionMap:I}));if(!n.every(t=>p(t)))throw new r("Invalid JSON-LD syntax; values of @included must expand to node objects.","jsonld.SyntaxError",{code:"invalid @included value",value:D});_(d,"@included",n,{propertyIsArray:!0});continue}if("@graph"===j&&!o(D)&&!s(D))throw new r('Invalid JSON-LD syntax; "@graph" value must not be an object or an array.',"jsonld.SyntaxError",{code:"invalid @graph value",value:D});if("@value"===j){N=D,L&&y(t,1.1)?d["@value"]=D:_(d,"@value",D,{propertyIsArray:x.isFrame});continue}if("@language"===j){if(null===D)continue;if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@language" value must be a string.',"jsonld.SyntaxError",{code:"invalid language-tagged string",value:D});D=w(D).map(t=>l(t)?t.toLowerCase():t);for(const t of D)l(t)&&!t.match(C)&&console.warn(`@language must be valid BCP47: ${t}`);_(d,"@language",D,{propertyIsArray:x.isFrame});continue}if("@direction"===j){if(!l(D)&&!x.isFrame)throw new r('Invalid JSON-LD syntax; "@direction" value must be a string.',"jsonld.SyntaxError",{code:"invalid base direction",value:D});D=w(D);for(const t of D)if(l(t)&&"ltr"!==t&&"rtl"!==t)throw new r('Invalid JSON-LD syntax; "@direction" must be "ltr" or "rtl".',"jsonld.SyntaxError",{code:"invalid base direction",value:D});_(d,"@direction",D,{propertyIsArray:x.isFrame});continue}if("@index"===j){if(!l(D))throw new r('Invalid JSON-LD syntax; "@index" value must be a string.',"jsonld.SyntaxError",{code:"invalid @index value",value:D});_(d,"@index",D);continue}if("@reverse"===j){if(!o(D))throw new r('Invalid JSON-LD syntax; "@reverse" value must be an object.',"jsonld.SyntaxError",{code:"invalid @reverse value",value:D});if(k=yield E.expand({activeCtx:t,activeProperty:"@reverse",element:D,options:x,expansionMap:I}),"@reverse"in k)for(const t in k["@reverse"])_(d,t,k["@reverse"][t],{propertyIsArray:!0});let e=d["@reverse"]||null;for(const t in k){if("@reverse"===t)continue;null===e&&(e=d["@reverse"]={}),_(e,t,[],{propertyIsArray:!0});const n=k[t];for(let i=0;i"@id"===t||"@index"===t)&&(k=w(k).map(t=>({"@graph":w(t)}))),F.mappings.has(O)&&F.mappings.get(O).reverse){const t=d["@reverse"]=d["@reverse"]||{};k=w(k);for(let e=0;e"@value"===f(t,e,{vocab:!0},x)))throw new r("Invalid JSON-LD syntax; nested value must be a node object.","jsonld.SyntaxError",{code:"invalid @nest value",value:i});yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:n,element:i,expandedParent:d,options:x,insideList:T,typeScopedContext:M,typeKey:k,expansionMap:I})}}})).apply(this,arguments)}function k({activeCtx:t,activeProperty:e,value:n,options:i}){if(null==n)return null;const r=f(t,e,{vocab:!0},i);if("@id"===r)return f(t,n,{base:!0},i);if("@type"===r)return f(t,n,{vocab:!0,base:!0},i);const s=g(t,e,"@type");if(("@id"===s||"@graph"===r)&&l(n))return{"@id":f(t,n,{base:!0},i)};if("@vocab"===s&&l(n))return{"@id":f(t,n,{vocab:!0,base:!0},i)};if(m(r))return n;const o={};if(s&&!["@id","@vocab","@none"].includes(s))o["@type"]=s;else if(l(n)){const n=g(t,e,"@language");null!==n&&(o["@language"]=n);const i=g(t,e,"@direction");null!==i&&(o["@direction"]=i)}return["boolean","number","string"].includes(typeof n)||(n=n.toString()),o["@value"]=n,o}function A(t,e,n,i){const o=[],a=Object.keys(e).sort();for(const c of a){const a=f(t,c,{vocab:!0},i);let u=e[c];s(u)||(u=[u]);for(const t of u){if(null===t)continue;if(!l(t))throw new r("Invalid JSON-LD syntax; language map values must be strings.","jsonld.SyntaxError",{code:"invalid language map value",languageMap:e});const i={"@value":t};"@none"!==a&&(i["@language"]=c.toLowerCase()),n&&(i["@direction"]=n),o.push(i)}}return o}function P(t){return M.apply(this,arguments)}function M(){return(M=i(function*({activeCtx:t,options:e,activeProperty:n,value:i,expansionMap:o,asGraph:a,indexKey:l,propertyIndex:u}){const p=[],m=Object.keys(i).sort(),y="@type"===l;for(let v of m){if(y){const n=g(t,v,"@context");c(n)||(t=yield b({activeCtx:t,localCtx:n,propagate:!1,options:e}))}let m,w=i[v];s(w)||(w=[w]),w=yield E.expand({activeCtx:t,activeProperty:n,element:w,options:e,insideList:!1,insideIndex:!0,expansionMap:o}),m=u?"@none"===v?"@none":k({activeCtx:t,activeProperty:l,value:v,options:e}):f(t,v,{vocab:!0},e),"@id"===l?v=f(t,v,{base:!0},e):y&&(v=m);for(let t of w){if(a&&!d(t)&&(t={"@graph":[t]}),"@type"===l)"@none"===m||(t["@type"]=t["@type"]?[v].concat(t["@type"]):[v]);else{if(h(t)&&!["@language","@type","@index"].includes(l))throw new r(`Invalid JSON-LD syntax; Attempt to add illegal key to value object: "${l}".`,"jsonld.SyntaxError",{code:"invalid value object",value:t});u?"@none"!==m&&_(t,u,m,{propertyIsArray:!0,prependValue:!0}):"@none"!==m&&!(l in t)&&(t[l]=v)}p.push(t)}}return p})).apply(this,arguments)}E.expand=function(){var t=i(function*({activeCtx:t,activeProperty:e=null,element:n,options:i={},insideList:u=!1,insideIndex:h=!1,typeScopedContext:d=null,expansionMap:p=(()=>{})}){if(null==n)return null;if("@default"===e&&(i=Object.assign({},i,{isFrame:!1})),!s(n)&&!o(n)){if(!u&&(null===e||"@graph"===f(t,e,{vocab:!0},i))){const r=yield p({unmappedValue:n,activeCtx:t,activeProperty:e,options:i,insideList:u});return void 0===r?null:r}return k({activeCtx:t,activeProperty:e,value:n,options:i})}if(s(n)){let r=[];const o=g(t,e,"@container")||[];u=u||o.includes("@list");for(let a=0;a1?e.slice().sort():e:[e];for(const n of s){const e=g(d,n,"@context");c(e)||(t=yield b({activeCtx:t,localCtx:e,options:i,propagate:!1}))}}let A={};yield O({activeCtx:t,activeProperty:e,expandedActiveProperty:m,element:n,expandedParent:A,options:i,insideList:u,typeKey:T,typeScopedContext:d,expansionMap:p}),S=Object.keys(A);let P=S.length;if("@value"in A){if("@type"in A&&("@language"in A||"@direction"in A))throw new r('Invalid JSON-LD syntax; an element containing "@value" may not contain both "@type" and either "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});let s=P-1;if("@type"in A&&(s-=1),"@index"in A&&(s-=1),"@language"in A&&(s-=1),"@direction"in A&&(s-=1),0!==s)throw new r('Invalid JSON-LD syntax; an element containing "@value" may only have an "@index" property and either "@type" or either or both "@language" or "@direction".',"jsonld.SyntaxError",{code:"invalid value object",element:A});const o=null===A["@value"]?[]:w(A["@value"]),c=x(A,"@type");if(!y(t,1.1)||!c.includes("@json")||1!==c.length)if(0===o.length){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}else{if(!o.every(t=>l(t)||a(t))&&"@language"in A)throw new r("Invalid JSON-LD syntax; only strings may be language-tagged.","jsonld.SyntaxError",{code:"invalid language-tagged value",element:A});if(!c.every(t=>v(t)&&!(l(t)&&0===t.indexOf("_:"))||a(t)))throw new r('Invalid JSON-LD syntax; an element containing "@value" and "@type" must have an absolute IRI for the value of "@type".',"jsonld.SyntaxError",{code:"invalid typed value",element:A})}}else if("@type"in A&&!s(A["@type"]))A["@type"]=[A["@type"]];else if("@set"in A||"@list"in A){if(P>1&&(2!==P||!("@index"in A)))throw new r('Invalid JSON-LD syntax; if an element has the property "@set" or "@list", then it can have at most one other property that is "@index".',"jsonld.SyntaxError",{code:"invalid set or list object",element:A});"@set"in A&&(A=A["@set"],S=Object.keys(A),P=S.length)}else if(1===P&&"@language"in A){const r=yield p(A,{unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}if(o(A)&&!i.keepFreeFloatingNodes&&!u&&(null===e||"@graph"===m)&&(0===P||"@value"in A||"@list"in A||1===P&&"@id"in A)){const r=yield p({unmappedValue:A,activeCtx:t,activeProperty:e,element:n,options:i,insideList:u});A=void 0!==r?r:null}return A});return function(e){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./url":31,"./util":32}],22:[function(t,e,n){"use strict";const{isSubjectReference:i}=t("./graphTypes"),{createMergedNodeMap:r}=t("./nodeMap"),s={};e.exports=s,s.flatten=t=>{const e=r(t),n=[],s=Object.keys(e).sort();for(let r=0;r=0;--i){const r=n[i];if(r.graph===e&&r.subject["@id"]===t["@id"])return!0}return!1}function f(t,e,n){const i="@"+n;let r=i in t?t[i][0]:e[n];if("embed"===n)if(!0===r)r="@once";else if(!1===r)r="@never";else if("@always"!==r&&"@never"!==r&&"@link"!==r&&"@first"!==r&&"@last"!==r&&"@once"!==r)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:t});return r}function g(t){if(!s.isArray(t)||1!==t.length||!s.isObject(t[0]))throw new l("Invalid JSON-LD syntax; a JSON-LD frame must be a single object.","jsonld.SyntaxError",{frame:t});if("@id"in t[0])for(const e of o.asArray(t[0]["@id"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @id in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t});if("@type"in t[0])for(const e of o.asArray(t[0]["@type"]))if(!s.isObject(e)&&!a.isAbsolute(e)||s.isString(e)&&0===e.indexOf("_:"))throw new l("Invalid JSON-LD syntax; invalid @type in frame.","jsonld.SyntaxError",{code:"invalid frame",frame:t})}function m(t,e,n,a){let l=!0,c=!1;for(const u in n){let h=!1;const d=o.getValues(e,u),p=0===o.getValues(n,u).length;if("@id"===u){if(s.isEmptyObject(n["@id"][0]||{})?h=!0:n["@id"].length>=0&&(h=n["@id"].includes(d[0])),!a.requireAll)return h}else if("@type"===u){if(l=!1,p){if(d.length>0)return!1;h=!0}else if(1===n["@type"].length&&s.isEmptyObject(n["@type"][0]))h=d.length>0;else for(const t of n["@type"])h=!(!s.isObject(t)||!("@default"in t))||h||d.some(e=>e===t);if(!a.requireAll)return h}else{if(i(u))continue;{const e=o.getValues(n,u)[0];let i=!1;if(e&&(g([e]),i="@default"in e),l=!1,0===d.length&&i)continue;if(d.length>0&&p)return!1;if(void 0===e){if(d.length>0)return!1;h=!0}else if(r.isList(e)){const n=e["@list"][0];if(r.isList(d[0])){const e=d[0]["@list"];r.isValue(n)?h=e.some(t=>w(n,t)):(r.isSubject(n)||r.isSubjectReference(n))&&(h=e.some(e=>_(t,n,e,a)))}}else h=r.isValue(e)?d.some(t=>w(e,t)):r.isSubjectReference(e)?d.some(n=>_(t,e,n,a)):!!s.isObject(e)&&d.length>0}}if(!h&&a.requireAll)return!1;c=c||h}return l||c}function b(t,e){const n=t.uniqueEmbeds[t.graph],i=n[e],r=i.parent,a=i.property,l={"@id":e};if(s.isArray(r)){for(let t=0;t{const e=Object.keys(n);for(const i of e)i in n&&s.isObject(n[i].parent)&&n[i].parent["@id"]===t&&(delete n[i],c(i))};c(e)}function y(t,e){if(s.isArray(t))return t.map(t=>y(t,e));if(s.isObject(t)){if("@preserve"in t)return t["@preserve"][0];if(r.isValue(t))return t;if(r.isList(t))return t["@list"]=y(t["@list"],e),t;if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)"@id"===n&&e.bnodesToClear.includes(t[n])?delete t["@id"]:t[n]=y(t[n],e)}return t}function v(t,e,n){s.isObject(t)?o.addValue(t,e,n,{propertyIsArray:!0}):t.push(n)}function _(t,e,n,i){if(!("@id"in n))return!1;const r=t.subjects[n["@id"]];return r&&m(t,r,e,i)}function w(t,e){const n=e["@value"],i=e["@type"],r=e["@language"],o=t["@value"]?s.isArray(t["@value"])?t["@value"]:[t["@value"]]:[],a=t["@type"]?s.isArray(t["@type"])?t["@type"]:[t["@type"]]:[],l=t["@language"]?s.isArray(t["@language"])?t["@language"]:[t["@language"]]:[];return 0===o.length&&0===a.length&&0===l.length||!(!o.includes(n)&&!s.isEmptyObject(o[0])||!(!i&&0===a.length||a.includes(i)||i&&s.isEmptyObject(a[0]))||!(!r&&0===l.length||l.includes(r)||r&&s.isEmptyObject(l[0])))}e.exports=h,h.frameMergedOrDefault=(t,e,n)=>{const i={options:n,embedded:!1,graph:"@default",graphMap:{"@default":{}},subjectStack:[],link:{},bnodeMap:{}},r=new o.IdentifierIssuer("_:b");c(t,i.graphMap,"@default",r),n.merged&&(i.graphMap["@merged"]=u(i.graphMap),i.graph="@merged"),i.subjects=i.graphMap[i.graph];const s=[];return h.frame(i,Object.keys(i.subjects).sort(),e,s),n.pruneBlankNodeIdentifiers&&(n.bnodesToClear=Object.keys(i.bnodeMap).filter(t=>1===i.bnodeMap[t].length)),n.link={},y(s,n)},h.frame=(t,e,n,a,c=null)=>{g(n);const u=t.options,y={embed:f(n=n[0],u,"embed"),explicit:f(n,u,"explicit"),requireAll:f(n,u,"requireAll")};t.link.hasOwnProperty(t.graph)||(t.link[t.graph]={});const _=t.link[t.graph],x=function(t,e,n,i){const r={};for(const s of e){const e=t.graphMap[t.graph][s];m(t,e,n,i)&&(r[s]=e)}return r}(t,e,n,y),S=Object.keys(x).sort();for(const g of S){const m=x[g];if(null===c?t.uniqueEmbeds={[t.graph]:{}}:t.uniqueEmbeds[t.graph]=t.uniqueEmbeds[t.graph]||{},"@link"===y.embed&&g in _){v(a,c,_[g]);continue}const S={"@id":g};if(0===g.indexOf("_:")&&o.addValue(t.bnodeMap,g,S,{propertyIsArray:!0}),_[g]=S,("@first"===y.embed||"@last"===y.embed)&&t.is11)throw new l("Invalid JSON-LD syntax; invalid value of @embed.","jsonld.SyntaxError",{code:"invalid @embed value",frame:n});if(t.embedded||!t.uniqueEmbeds[t.graph].hasOwnProperty(g)){if(t.embedded&&("@never"===y.embed||p(m,t.graph,t.subjectStack))){v(a,c,S);continue}if(t.embedded&&("@first"==y.embed||"@once"==y.embed)&&t.uniqueEmbeds[t.graph].hasOwnProperty(g)){v(a,c,S);continue}if("@last"===y.embed&&g in t.uniqueEmbeds[t.graph]&&b(t,g),t.uniqueEmbeds[t.graph][g]={parent:a,property:c},t.subjectStack.push({subject:m,graph:t.graph}),g in t.graphMap){let e=!1,i=null;"@graph"in n?(i=n["@graph"][0],e=!("@merged"===g||"@default"===g),s.isObject(i)||(i={})):(e="@merged"!==t.graph,i={}),e&&h.frame(ii(wt({},t),{graph:g,embedded:!1}),Object.keys(t.graphMap[g]).sort(),[i],S,"@graph")}"@included"in n&&h.frame(ii(wt({},t),{embedded:!1}),e,n["@included"],S,"@included");for(const e of Object.keys(m).sort())if(i(e)){if(S[e]=o.clone(m[e]),"@type"===e)for(const e of m["@type"])0===e.indexOf("_:")&&o.addValue(t.bnodeMap,e,S,{propertyIsArray:!0})}else if(!y.explicit||e in n)for(const i of m[e]){const s=e in n?n[e]:d(y);if(r.isList(i)){const s=n[e]&&n[e][0]&&n[e][0]["@list"]?n[e][0]["@list"]:d(y),a={"@list":[]};v(S,e,a);const l=i["@list"];for(const e of l)r.isSubjectReference(e)?h.frame(ii(wt({},t),{embedded:!0}),[e["@id"]],s,a,"@list"):v(a,"@list",o.clone(e))}else r.isSubjectReference(i)?h.frame(ii(wt({},t),{embedded:!0}),[i["@id"]],s,S,e):w(s[0],i)&&v(S,e,o.clone(i))}for(const t of Object.keys(n).sort()){if("@type"===t){if(!s.isObject(n[t][0])||!("@default"in n[t][0]))continue}else if(i(t))continue;const e=n[t][0]||{};if(!f(e,u,"omitDefault")&&!(t in S)){let n="@null";"@default"in e&&(n=o.clone(e["@default"])),s.isArray(n)||(n=[n]),S[t]=[{"@preserve":n}]}}for(const e of Object.keys(n["@reverse"]||{}).sort()){const i=n["@reverse"][e];for(const n of Object.keys(t.subjects))o.getValues(t.subjects[n],e).some(t=>t["@id"]===g)&&(S["@reverse"]=S["@reverse"]||{},o.addValue(S["@reverse"],e,[],{propertyIsArray:!0}),h.frame(ii(wt({},t),{embedded:!0}),[n],i,S["@reverse"][e],c))}v(a,c,S),t.subjectStack.pop()}}},h.cleanupNull=(t,e)=>{if(s.isArray(t))return t.map(t=>h.cleanupNull(t,e)).filter(t=>t);if("@null"===t)return null;if(s.isObject(t)){if("@id"in t){const n=t["@id"];if(e.link.hasOwnProperty(n)){const i=e.link[n].indexOf(t);if(-1!==i)return e.link[n][i];e.link[n].push(t)}else e.link[n]=[t]}for(const n in t)t[n]=h.cleanupNull(t[n],e)}return t}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32}],24:[function(t,e,n){"use strict";const r=t("./JsonLdError"),s=t("./graphTypes"),o=t("./types"),a=t("./util"),{RDF_LIST:l,RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,XSD_BOOLEAN:f,XSD_DOUBLE:g,XSD_INTEGER:m,XSD_STRING:b}=t("./constants"),y=/^[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*$/,v={};function _(t,e,n){if(t.termType.endsWith("Node"))return{"@id":t.value};const i={"@value":t.value};if(t.language)i["@language"]=t.language;else{let a=t.datatype.value;if(a||(a=b),a===p){a="@json";try{i["@value"]=JSON.parse(i["@value"])}catch(s){throw new r("JSON literal could not be parsed.","jsonld.InvalidJsonLiteral",{code:"invalid JSON literal",value:i["@value"],cause:s})}}if(e){if(a===f)"true"===i["@value"]?i["@value"]=!0:"false"===i["@value"]&&(i["@value"]=!1);else if(o.isNumeric(i["@value"]))if(a===m){const t=parseInt(i["@value"],10);t.toFixed(0)===i["@value"]&&(i["@value"]=t)}else a===g&&(i["@value"]=parseFloat(i["@value"]));[f,m,g,b].includes(a)||(i["@type"]=a)}else if("i18n-datatype"===n&&a.startsWith("https://www.w3.org/ns/i18n#")){const[,t,e]=a.split(/[#_]/);t.length>0&&(i["@language"]=t,t.match(y)||console.warn(`@language must be valid BCP47: ${t}`)),i["@direction"]=e}else a!==b&&(i["@type"]=a)}return i}e.exports=v,v.fromRDF=function(){var t=i(function*(t,{useRdfType:e=!1,useNativeTypes:n=!1,rdfDirection:i=null}){const r={},p={"@default":r},f={};for(const s of t){const t="DefaultGraph"===s.graph.termType?"@default":s.graph.value;t in p||(p[t]={}),"@default"!==t&&!(t in r)&&(r[t]={"@id":t});const o=p[t],l=s.subject.value,c=s.predicate.value,u=s.object;l in o||(o[l]={"@id":l});const g=o[l],m=u.termType.endsWith("Node");if(m&&!(u.value in o)&&(o[u.value]={"@id":u.value}),c===d&&!e&&m){a.addValue(g,"@type",u.value,{propertyIsArray:!0});continue}const b=_(u,n,i);if(a.addValue(g,c,b,{propertyIsArray:!0}),m)if(u.value===h){const t=o[u.value];"usages"in t||(t.usages=[]),t.usages.push({node:g,property:c,value:b})}else f[u.value]=!(u.value in f)&&{node:g,property:c,value:b}}for(const a in p){const t=p[a];if(!(h in t))continue;const e=t[h];if(e.usages){for(let n of e.usages){let e=n.node,i=n.property,r=n.value;const a=[],h=[];let d=Object.keys(e).length;for(;i===u&&o.isObject(f[e["@id"]])&&o.isArray(e[c])&&1===e[c].length&&o.isArray(e[u])&&1===e[u].length&&(3===d||4===d&&o.isArray(e["@type"])&&1===e["@type"].length&&e["@type"][0]===l)&&(a.push(e[c][0]),h.push(e["@id"]),n=f[e["@id"]],e=n.node,i=n.property,r=n.value,d=Object.keys(e).length,s.isBlankNode(e)););delete r["@id"],r["@list"]=a.reverse();for(const n of h)delete t[n]}delete e.usages}}const g=[],m=Object.keys(r).sort();for(const o of m){const t=r[o];if(o in p){const e=t["@graph"]=[],n=p[o],i=Object.keys(n).sort();for(const t of i){const i=n[t];s.isSubjectReference(i)||e.push(i)}}s.isSubjectReference(t)||g.push(t)}return g});return function(e,n){return t.apply(this,arguments)}}()},{"./JsonLdError":12,"./constants":18,"./graphTypes":25,"./types":30,"./util":32}],25:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.isSubject=t=>!(!i.isObject(t)||"@value"in t||"@set"in t||"@list"in t)&&(Object.keys(t).length>1||!("@id"in t)),r.isSubjectReference=t=>i.isObject(t)&&1===Object.keys(t).length&&"@id"in t,r.isValue=t=>i.isObject(t)&&"@value"in t,r.isList=t=>i.isObject(t)&&"@list"in t,r.isGraph=t=>i.isObject(t)&&"@graph"in t&&1===Object.keys(t).filter(t=>"@id"!==t&&"@index"!==t).length,r.isSimpleGraph=t=>r.isGraph(t)&&!("@id"in t),r.isBlankNode=t=>!!i.isObject(t)&&("@id"in t?0===t["@id"].indexOf("_:"):0===Object.keys(t).length||!("@value"in t||"@set"in t||"@list"in t))},{"./types":30}],26:[function(t,e,n){const r=t("rdf-canonize"),s=t("./platform"),o=t("./util"),a=t("./ContextResolver"),l=o.IdentifierIssuer,c=t("./JsonLdError"),u=t("lru-cache"),h=t("./NQuads"),{expand:d}=t("./expand"),{flatten:p}=t("./flatten"),{fromRDF:f}=t("./fromRdf"),{toRDF:g}=t("./toRdf"),{frameMergedOrDefault:m,cleanupNull:b}=t("./frame"),{isArray:y,isObject:v,isString:_}=t("./types"),{isSubjectReference:w}=t("./graphTypes"),{expandIri:x,getInitialContext:S,process:E,processingMode:C}=t("./context"),{compact:O,compactIri:T}=t("./compact"),{createNodeMap:k,createMergedNodeMap:A,mergeNodeMaps:P}=t("./nodeMap"),M=function(e){const n={},M=new u({max:100});function I(t,n){var i=n,{documentLoader:r=e.documentLoader}=i,s=_X(i,["documentLoader"]);return Object.assign({},{documentLoader:r},s,t)}return e.compact=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not compact, too few arguments.");if(null===n)throw new c("The compaction context must not be null.","jsonld.CompactError",{code:"invalid local context"});if(null===t)return null;let r;(i=I(i,{base:_(t)?t:"",compactArrays:!0,compactToRelative:!0,graph:!1,skipExpansion:!1,link:!1,issuer:new l("_:b"),contextResolver:new a({sharedCache:M})})).link&&(i.skipExpansion=!0),i.compactToRelative||delete i.base,r=i.skipExpansion?t:yield e.expand(t,i);const s=yield e.processContext(S(i),n,i);let u=yield O({activeCtx:s,element:r,options:i,compactionMap:i.compactionMap});i.compactArrays&&!i.graph&&y(u)?1===u.length?u=u[0]:0===u.length&&(u={}):i.graph&&v(u)&&(u=[u]),v(n)&&"@context"in n&&(n=n["@context"]),n=o.clone(n),y(n)||(n=[n]);const h=n;n=[];for(let e=0;e0)&&n.push(h[e]);const d=n.length>0;if(1===n.length&&(n=n[0]),y(u)){const t=T({activeCtx:s,iri:"@graph",relativeTo:{vocab:!0}}),e=u;u={},d&&(u["@context"]=n),u[t]=e}else if(v(u)&&d){const t=u;u={"@context":n};for(const e in t)u[e]=t[e]}return u});return function(e,n,i){return t.apply(this,arguments)}}(),e.expand=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not expand, too few arguments.");!1===(n=I(n,{keepFreeFloatingNodes:!1,contextResolver:new a({sharedCache:M})})).expansionMap&&(n.expansionMap=void 0);const i={},r=[];if("expandContext"in n){const t=o.clone(n.expandContext);i.expandContext=v(t)&&"@context"in t?t:{"@context":t},r.push(i.expandContext)}let s;if(_(t)){const o=yield e.get(t,n);s=o.documentUrl,i.input=o.document,o.contextUrl&&(i.remoteContext={"@context":o.contextUrl},r.push(i.remoteContext))}else i.input=o.clone(t);"base"in n||(n.base=s||"");let l=S(n);for(const e of r)l=yield E({activeCtx:l,localCtx:e,options:n});let c=yield d({activeCtx:l,element:i.input,options:n,expansionMap:n.expansionMap});return v(c)&&"@graph"in c&&1===Object.keys(c).length?c=c["@graph"]:null===c&&(c=[]),y(c)||(c=[c]),c});return function(e,n){return t.apply(this,arguments)}}(),e.flatten=function(){var t=i(function*(t,n,i){if(arguments.length<1)return new TypeError("Could not flatten, too few arguments.");n="function"==typeof n?null:n||null,i=I(i,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const r=yield e.expand(t,i),s=p(r);return null===n?s:(i.graph=!0,i.skipExpansion=!0,yield e.compact(s,n,i))});return function(e,n,i){return t.apply(this,arguments)}}(),e.frame=function(){var t=i(function*(t,n,i){if(arguments.length<2)throw new TypeError("Could not frame, too few arguments.");if(i=I(i,{base:_(t)?t:"",embed:"@once",explicit:!1,requireAll:!1,omitDefault:!1,bnodesToClear:[],contextResolver:new a({sharedCache:M})}),_(n)){const t=yield e.get(n,i);if(n=t.document,t.contextUrl){let e=n["@context"];e?y(e)?e.push(t.contextUrl):e=[e,t.contextUrl]:e=t.contextUrl,n["@context"]=e}}const r=n&&n["@context"]||{},s=yield e.processContext(S(i),r,i);i.hasOwnProperty("omitGraph")||(i.omitGraph=C(s,1.1)),i.hasOwnProperty("pruneBlankNodeIdentifiers")||(i.pruneBlankNodeIdentifiers=C(s,1.1));const o=yield e.expand(t,i),l=wt({},i);l.isFrame=!0,l.keepFreeFloatingNodes=!0;const c=yield e.expand(n,l),u=Object.keys(n).map(t=>x(s,t,{vocab:!0}));l.merged=!u.includes("@graph"),l.is11=C(s,1.1);const h=m(o,c,l);l.graph=!i.omitGraph,l.skipExpansion=!0,l.link={},l.framing=!0;let d=yield e.compact(h,r,l);return l.link={},d=b(d,l),d});return function(e,n,i){return t.apply(this,arguments)}}(),e.link=function(){var t=i(function*(t,n,i){const r={};return n&&(r["@context"]=n),r["@embed"]="@link",e.frame(t,r,i)});return function(e,n,i){return t.apply(this,arguments)}}(),e.normalize=e.canonize=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not canonize, too few arguments.");if("inputFormat"in(n=I(n,{base:_(t)?t:"",algorithm:"URDNA2015",skipExpansion:!1,contextResolver:new a({sharedCache:M})}))){if("application/n-quads"!==n.inputFormat&&"application/nquads"!==n.inputFormat)throw new c("Unknown canonicalization input format.","jsonld.CanonizeError");const e=h.parse(t);return r.canonize(e,n)}const i=wt({},n);delete i.format,i.produceGeneralizedRdf=!1;const s=yield e.toRDF(t,i);return r.canonize(s,n)});return function(e,n){return t.apply(this,arguments)}}(),e.fromRDF=function(){var t=i(function*(t,e){if(arguments.length<1)throw new TypeError("Could not convert from RDF, too few arguments.");e=I(e,{format:_(t)?"application/n-quads":void 0});const{format:i}=e;let{rdfParser:r}=e;if(i){if(r=r||n[i],!r)throw new c("Unknown input format.","jsonld.UnknownFormat",{format:i})}else r=()=>t;const s=yield r(t);return f(s,e)});return function(e,n){return t.apply(this,arguments)}}(),e.toRDF=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not convert to RDF, too few arguments.");let i;i=(n=I(n,{base:_(t)?t:"",skipExpansion:!1,contextResolver:new a({sharedCache:M})})).skipExpansion?t:yield e.expand(t,n);const r=g(i,n);if(n.format){if("application/n-quads"===n.format||"application/nquads"===n.format)return h.serialize(r);throw new c("Unknown output format.","jsonld.UnknownFormat",{format:n.format})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.createNodeMap=function(){var t=i(function*(t,n){if(arguments.length<1)throw new TypeError("Could not create node map, too few arguments.");n=I(n,{base:_(t)?t:"",contextResolver:new a({sharedCache:M})});const i=yield e.expand(t,n);return A(i,n)});return function(e,n){return t.apply(this,arguments)}}(),e.merge=function(){var t=i(function*(t,n,i){if(arguments.length<1)throw new TypeError("Could not merge, too few arguments.");if(!y(t))throw new TypeError('Could not merge, "docs" must be an array.');n="function"==typeof n?null:n||null,i=I(i,{contextResolver:new a({sharedCache:M})});const r=yield Promise.all(t.map(t=>{const n=wt({},i);return e.expand(t,n)}));let s=!0;"mergeNodes"in i&&(s=i.mergeNodes);const c=i.issuer||new l("_:b"),u={"@default":{}};for(let e=0;ee._documentLoader,set:t=>e._documentLoader=t}),e.documentLoader=function(){var t=i(function*(t){throw new c("Could not retrieve a JSON-LD document from the URL. URL dereferencing not implemented.","jsonld.LoadDocumentError",{code:"loading document failed",url:t})});return function(e){return t.apply(this,arguments)}}(),e.get=function(){var t=i(function*(t,n){let i;i="function"==typeof n.documentLoader?n.documentLoader:e.documentLoader;const r=yield i(t);try{if(!r.document)throw new c("No remote document found at the given URL.","jsonld.NullRemoteDocument");_(r.document)&&(r.document=JSON.parse(r.document))}catch(s){throw new c("Could not retrieve a JSON-LD document from the URL.","jsonld.LoadDocumentError",{code:"loading document failed",cause:s,remoteDoc:r})}return r});return function(e,n){return t.apply(this,arguments)}}(),e.processContext=function(){var t=i(function*(t,e,n){return n=I(n,{base:"",contextResolver:new a({sharedCache:M})}),null===e?S(n):(e=o.clone(e),v(e)&&"@context"in e||(e={"@context":e}),E({activeCtx:t,localCtx:e,options:n}))});return function(e,n,i){return t.apply(this,arguments)}}(),e.getContextValue=t("./context").getContextValue,e.documentLoaders={},e.useDocumentLoader=function(t){if(!(t in e.documentLoaders))throw new c('Unknown document loader type: "'+t+'"',"jsonld.UnknownDocumentLoader",{type:t});e.documentLoader=e.documentLoaders[t].apply(e,Array.prototype.slice.call(arguments,1))},e.registerRDFParser=function(t,e){n[t]=e},e.unregisterRDFParser=function(t){delete n[t]},e.registerRDFParser("application/n-quads",h.parse),e.registerRDFParser("application/nquads",h.parse),e.url=t("./url"),e.util=o,Object.assign(e,o),e.promises=e,e.RequestQueue=t("./RequestQueue"),e.JsonLdProcessor=t("./JsonLdProcessor")(e),s.setupGlobals(e),s.setupDocumentLoaders(e),e},I=function(){return M(function(){return I()})};M(I),e.exports=I},{"./ContextResolver":11,"./JsonLdError":12,"./JsonLdProcessor":13,"./NQuads":14,"./RequestQueue":15,"./compact":17,"./context":19,"./expand":21,"./flatten":22,"./frame":23,"./fromRdf":24,"./graphTypes":25,"./nodeMap":27,"./platform":28,"./toRdf":29,"./types":30,"./url":31,"./util":32,"lru-cache":33,"rdf-canonize":46}],27:[function(t,e,n){"use strict";const{isKeyword:i}=t("./context"),r=t("./graphTypes"),s=t("./types"),o=t("./util"),a=t("./JsonLdError"),l={};e.exports=l,l.createMergedNodeMap=(t,e)=>{const n=(e=e||{}).issuer||new o.IdentifierIssuer("_:b"),i={"@default":{}};return l.createNodeMap(t,i,"@default",n),l.mergeNodeMaps(i)},l.createNodeMap=(t,e,n,c,u,h)=>{if(s.isArray(t)){for(const i of t)l.createNodeMap(i,e,n,c,void 0,h);return}if(!s.isObject(t))return void(h&&h.push(t));if(r.isValue(t)){if("@type"in t){let e=t["@type"];0===e.indexOf("_:")&&(t["@type"]=e=c.getId(e))}return void(h&&h.push(t))}if(h&&r.isList(t)){const i=[];return l.createNodeMap(t["@list"],e,n,c,u,i),void h.push({"@list":i})}if("@type"in t){const e=t["@type"];for(const t of e)0===t.indexOf("_:")&&c.getId(t)}s.isUndefined(u)&&(u=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"]),h&&h.push({"@id":u});const d=e[n],p=d[u]=d[u]||{};p["@id"]=u;const f=Object.keys(t).sort();for(let s of f){if("@id"===s)continue;if("@reverse"===s){const i={"@id":u},s=t["@reverse"];for(const t in s){const a=s[t];for(const s of a){let a=s["@id"];r.isBlankNode(s)&&(a=c.getId(a)),l.createNodeMap(s,e,n,c,a),o.addValue(d[a],t,i,{propertyIsArray:!0,allowDuplicate:!1})}}continue}if("@graph"===s){u in e||(e[u]={}),l.createNodeMap(t[s],e,u,c);continue}if("@included"===s){l.createNodeMap(t[s],e,n,c);continue}if("@type"!==s&&i(s)){if("@index"===s&&s in p&&(t[s]!==p[s]||t[s]["@id"]!==p[s]["@id"]))throw new a("Invalid JSON-LD syntax; conflicting @index property detected.","jsonld.SyntaxError",{code:"conflicting indexes",subject:p});p[s]=t[s];continue}const h=t[s];if(0===s.indexOf("_:")&&(s=c.getId(s)),0!==h.length)for(let t of h)if("@type"===s&&(t=0===t.indexOf("_:")?c.getId(t):t),r.isSubject(t)||r.isSubjectReference(t)){if("@id"in t&&!t["@id"])continue;const i=r.isBlankNode(t)?c.getId(t["@id"]):t["@id"];o.addValue(p,s,{"@id":i},{propertyIsArray:!0,allowDuplicate:!1}),l.createNodeMap(t,e,n,c,i)}else if(r.isValue(t))o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else if(r.isList(t)){const i=[];l.createNodeMap(t["@list"],e,n,c,u,i),t={"@list":i},o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1})}else l.createNodeMap(t,e,n,c,u),o.addValue(p,s,t,{propertyIsArray:!0,allowDuplicate:!1});else o.addValue(p,s,[],{propertyIsArray:!0})}},l.mergeNodeMapGraphs=t=>{const e={};for(const n of Object.keys(t).sort())for(const r of Object.keys(t[n]).sort()){const s=t[n][r];r in e||(e[r]={"@id":r});const a=e[r];for(const t of Object.keys(s).sort())if(i(t)&&"@type"!==t)a[t]=o.clone(s[t]);else for(const e of s[t])o.addValue(a,t,o.clone(e),{propertyIsArray:!0,allowDuplicate:!1})}return e},l.mergeNodeMaps=t=>{const e=t["@default"],n=Object.keys(t).sort();for(const i of n){if("@default"===i)continue;const n=t[i];let s=e[i];s?"@graph"in s||(s["@graph"]=[]):e[i]=s={"@id":i,"@graph":[]};const o=s["@graph"];for(const t of Object.keys(n).sort()){const e=n[t];r.isSubjectReference(e)||o.push(e)}}return e}},{"./JsonLdError":12,"./context":19,"./graphTypes":25,"./types":30,"./util":32}],28:[function(t,e,n){"use strict";const i=t("./documentLoaders/xhr"),r={};e.exports=r,r.setupDocumentLoaders=function(t){"undefined"!=typeof XMLHttpRequest&&(t.documentLoaders.xhr=i,t.useDocumentLoader("xhr"))},r.setupGlobals=function(t){void 0===globalThis.JsonLdProcessor&&Object.defineProperty(globalThis,"JsonLdProcessor",{writable:!0,enumerable:!1,configurable:!0,value:t.JsonLdProcessor})}},{"./documentLoaders/xhr":20}],29:[function(t,e,n){"use strict";const{createNodeMap:i}=t("./nodeMap"),{isKeyword:r}=t("./context"),s=t("./graphTypes"),o=t("canonicalize"),a=t("./types"),l=t("./util"),{RDF_FIRST:c,RDF_REST:u,RDF_NIL:h,RDF_TYPE:d,RDF_JSON_LITERAL:p,RDF_LANGSTRING:f,XSD_BOOLEAN:g,XSD_DOUBLE:m,XSD_INTEGER:b,XSD_STRING:y}=t("./constants"),{isAbsolute:v}=t("./url"),_={};function w(t,e,n,i,s){const o=Object.keys(e).sort();for(const a of o){const o=e[a],l=Object.keys(o).sort();for(let e of l){const l=o[e];if("@type"===e)e=d;else if(r(e))continue;for(const r of l){const o={termType:a.startsWith("_:")?"BlankNode":"NamedNode",value:a};if(!v(a))continue;const l={termType:e.startsWith("_:")?"BlankNode":"NamedNode",value:e};if(!v(e)||"BlankNode"===l.termType&&!s.produceGeneralizedRdf)continue;const c=x(r,i,t,n,s.rdfDirection);c&&t.push({subject:o,predicate:l,object:c,graph:n})}}}}function x(t,e,n,i,r){const l={};if(s.isValue(t)){l.termType="Literal",l.value=void 0,l.datatype={termType:"NamedNode"};let e=t["@value"];const n=t["@type"]||null;"@json"===n?(l.value=o(e),l.datatype.value=p):a.isBoolean(e)?(l.value=e.toString(),l.datatype.value=n||g):a.isDouble(e)||n===m?(a.isDouble(e)||(e=parseFloat(e)),l.value=e.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),l.datatype.value=n||m):a.isNumber(e)?(l.value=e.toFixed(0),l.datatype.value=n||b):"i18n-datatype"===r&&"@direction"in t?(l.datatype.value="https://www.w3.org/ns/i18n#"+(t["@language"]||"")+`_${t["@direction"]}`,l.value=e):"@language"in t?(l.value=e,l.datatype.value=n||f,l.language=t["@language"]):(l.value=e,l.datatype.value=n||y)}else if(s.isList(t)){const s=function(t,e,n,i,r){const s={termType:"NamedNode",value:c},o={termType:"NamedNode",value:u},a={termType:"NamedNode",value:h},l=t.pop(),d=l?{termType:"BlankNode",value:e.getId()}:a;let p=d;for(const c of t){const t=x(c,e,n,i,r),a={termType:"BlankNode",value:e.getId()};n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i}),p=a}if(l){const t=x(l,e,n,i,r);n.push({subject:p,predicate:s,object:t,graph:i}),n.push({subject:p,predicate:o,object:a,graph:i})}return d}(t["@list"],e,n,i,r);l.termType=s.termType,l.value=s.value}else{const e=a.isObject(t)?t["@id"]:t;l.termType=e.startsWith("_:")?"BlankNode":"NamedNode",l.value=e}return"NamedNode"!==l.termType||v(l.value)?l:null}e.exports=_,_.toRDF=(t,e)=>{const n=new l.IdentifierIssuer("_:b"),r={"@default":{}};i(t,r,"@default",n);const s=[],o=Object.keys(r).sort();for(const i of o){let t;if("@default"===i)t={termType:"DefaultGraph",value:""};else{if(!v(i))continue;t=i.startsWith("_:")?{termType:"BlankNode"}:{termType:"NamedNode"},t.value=i}w(s,r[i],t,n,e)}return s}},{"./constants":18,"./context":19,"./graphTypes":25,"./nodeMap":27,"./types":30,"./url":31,"./util":32,canonicalize:7}],30:[function(t,e,n){"use strict";const i={};e.exports=i,i.isArray=Array.isArray,i.isBoolean=t=>"boolean"==typeof t||"[object Boolean]"===Object.prototype.toString.call(t),i.isDouble=t=>i.isNumber(t)&&(-1!==String(t).indexOf(".")||Math.abs(t)>=1e21),i.isEmptyObject=t=>i.isObject(t)&&0===Object.keys(t).length,i.isNumber=t=>"number"==typeof t||"[object Number]"===Object.prototype.toString.call(t),i.isNumeric=t=>!isNaN(parseFloat(t))&&isFinite(t),i.isObject=t=>"[object Object]"===Object.prototype.toString.call(t),i.isString=t=>"string"==typeof t||"[object String]"===Object.prototype.toString.call(t),i.isUndefined=t=>void 0===t},{}],31:[function(t,e,n){"use strict";const i=t("./types"),r={};e.exports=r,r.parsers={simple:{keys:["href","scheme","authority","path","query","fragment"],regex:/^(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?([^#]*))?(?:#(.*))?/},full:{keys:["href","protocol","scheme","authority","auth","user","password","hostname","port","path","directory","file","query","fragment"],regex:/^(([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?(?:(((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/}},r.parse=(t,e)=>{const n={},i=r.parsers[e||"full"],s=i.regex.exec(t);let o=i.keys.length;for(;o--;)n[i.keys[o]]=void 0===s[o]?null:s[o];return("https"===n.scheme&&"443"===n.port||"http"===n.scheme&&"80"===n.port)&&(n.href=n.href.replace(":"+n.port,""),n.authority=n.authority.replace(":"+n.port,""),n.port=null),n.normalizedPath=r.removeDotSegments(n.path),n},r.prependBase=(t,e)=>{if(null===t||r.isAbsolute(e))return e;(!t||i.isString(t))&&(t=r.parse(t||""));const n=r.parse(e),s={protocol:t.protocol||""};if(null!==n.authority)s.authority=n.authority,s.path=n.path,s.query=n.query;else if(s.authority=t.authority,""===n.path)s.path=t.path,s.query=null!==n.query?n.query:t.query;else{if(0===n.path.indexOf("/"))s.path=n.path;else{let e=t.path;e=e.substr(0,e.lastIndexOf("/")+1),(e.length>0||t.authority)&&"/"!==e.substr(-1)&&(e+="/"),e+=n.path,s.path=e}s.query=n.query}""!==n.path&&(s.path=r.removeDotSegments(s.path));let o=s.protocol;return null!==s.authority&&(o+="//"+s.authority),o+=s.path,null!==s.query&&(o+="?"+s.query),null!==n.fragment&&(o+="#"+n.fragment),""===o&&(o="./"),o},r.removeBase=(t,e)=>{if(null===t)return e;(!t||i.isString(t))&&(t=r.parse(t||""));let n="";if(""!==t.href?n+=(t.protocol||"")+"//"+(t.authority||""):e.indexOf("//")&&(n+="//"),0!==e.indexOf(n))return e;const s=r.parse(e.substr(n.length)),o=t.normalizedPath.split("/"),a=s.normalizedPath.split("/"),l=s.fragment||s.query?0:1;for(;o.length>0&&a.length>l&&o[0]===a[0];)o.shift(),a.shift();let c="";if(o.length>0){o.pop();for(let t=0;t{if(0===t.length)return"";const e=t.split("/"),n=[];for(;e.length>0;){const t=e.shift(),i=0===e.length;"."!==t?".."!==t?n.push(t):(n.pop(),i&&n.push("")):i&&n.push("")}return"/"===t[0]&&n.length>0&&""!==n[0]&&n.unshift(""),1===n.length&&""===n[0]?"/":n.join("/")};const s=/^([A-Za-z][A-Za-z0-9+-.]*|_):[^\s]*$/;r.isAbsolute=t=>i.isString(t)&&s.test(t),r.isRelative=t=>i.isString(t)},{"./types":30}],32:[function(t,e,n){"use strict";const i=t("./graphTypes"),r=t("./types"),s=t("rdf-canonize").IdentifierIssuer,o=t("./JsonLdError"),a=/(?:<[^>]*?>|"[^"]*?"|[^,])+/g,l=/\s*<([^>]*?)>\s*(?:;\s*(.*))?/,c=/(.*?)=(?:(?:"([^"]*?)")|([^"]*?))\s*(?:(?:;\s*)|$)/g,u={accept:"application/ld+json, application/json"},h={};function d(t,e){if(r.isArray(e))for(let n=0;n{if(Object.keys(t).some(t=>"accept"===t.toLowerCase()))throw new RangeError('Accept header may not be specified; only "'+u.accept+'" is supported.');return Object.assign({Accept:u.accept},t)},h.parseLinkHeader=t=>{const e={},n=t.match(a);for(let i=0;i{if(!(r.isString(t)||r.isArray(t)&&t.every(t=>r.isString(t)))){if(e&&r.isObject(t))switch(Object.keys(t).length){case 0:return;case 1:if("@default"in t&&h.asArray(t["@default"]).every(t=>r.isString(t)))return}throw new o('Invalid JSON-LD syntax; "@type" value must a string, an array of strings, an empty object, or a default object.',"jsonld.SyntaxError",{code:"invalid type value",value:t})}},h.hasProperty=(t,e)=>{if(t.hasOwnProperty(e)){const n=t[e];return!r.isArray(n)||n.length>0}return!1},h.hasValue=(t,e,n)=>{if(h.hasProperty(t,e)){let s=t[e];const o=i.isList(s);if(r.isArray(s)||o){o&&(s=s["@list"]);for(let t=0;t{if("propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1),"valueIsArray"in i||(i.valueIsArray=!1),"allowDuplicate"in i||(i.allowDuplicate=!0),"prependValue"in i||(i.prependValue=!1),i.valueIsArray)t[e]=n;else if(r.isArray(n)){0===n.length&&i.propertyIsArray&&!t.hasOwnProperty(e)&&(t[e]=[]),i.prependValue&&(n=n.concat(t[e]),t[e]=[]);for(let r=0;r[].concat(t[e]||[]),h.removeProperty=(t,e)=>{delete t[e]},h.removeValue=(t,e,n,i)=>{"propertyIsArray"in(i=i||{})||(i.propertyIsArray=!1);const r=h.getValues(t,e).filter(t=>!h.compareValues(t,n));0===r.length?h.removeProperty(t,e):t[e]=1!==r.length||i.propertyIsArray?r:r[0]},h.relabelBlankNodes=(t,e)=>d((e=e||{}).issuer||new s("_:b"),t),h.compareValues=(t,e)=>!!(t===e||i.isValue(t)&&i.isValue(e)&&t["@value"]===e["@value"]&&t["@type"]===e["@type"]&&t["@language"]===e["@language"]&&t["@index"]===e["@index"])||!!(r.isObject(t)&&"@id"in t&&r.isObject(e)&&"@id"in e)&&t["@id"]===e["@id"],h.compareShortestLeast=(t,e)=>t.length1;const g=(t,e,n)=>{const i=t[d].get(e);if(i){const e=i.value;if(m(t,e)){if(y(t,i),!t[a])return}else n&&(t[p]&&(i.value.now=Date.now()),t[h].unshiftNode(i));return e.value}},m=(t,e)=>{if(!e||!e.maxAge&&!t[l])return!1;const n=Date.now()-e.now;return e.maxAge?n>e.maxAge:t[l]&&n>t[l]},b=t=>{if(t[s]>t[r])for(let e=t[h].tail;t[s]>t[r]&&null!==e;){const n=e.prev;y(t,e),e=n}},y=(t,e)=>{if(e){const n=e.value;t[c]&&t[c](n.key,n.value),t[s]-=n.length,t[d].delete(n.key),t[h].removeNode(e)}};class v{constructor(t,e,n,i,r){this.key=t,this.value=e,this.length=n,this.now=i,this.maxAge=r||0}}const _=(t,e,n,i)=>{let r=n.value;m(t,r)&&(y(t,n),t[a]||(r=void 0)),r&&e.call(i,r.value,r.key,t)};e.exports=class{constructor(t){if("number"==typeof t&&(t={max:t}),t||(t={}),t.max&&("number"!=typeof t.max||t.max<0))throw new TypeError("max must be a non-negative number");this[r]=t.max||1/0;const e=t.length||f;if(this[o]="function"!=typeof e?f:e,this[a]=t.stale||!1,t.maxAge&&"number"!=typeof t.maxAge)throw new TypeError("maxAge must be a number");this[l]=t.maxAge||0,this[c]=t.dispose,this[u]=t.noDisposeOnSet||!1,this[p]=t.updateAgeOnGet||!1,this.reset()}set max(t){if("number"!=typeof t||t<0)throw new TypeError("max must be a non-negative number");this[r]=t||1/0,b(this)}get max(){return this[r]}set allowStale(t){this[a]=!!t}get allowStale(){return this[a]}set maxAge(t){if("number"!=typeof t)throw new TypeError("maxAge must be a non-negative number");this[l]=t,b(this)}get maxAge(){return this[l]}set lengthCalculator(t){"function"!=typeof t&&(t=f),t!==this[o]&&(this[o]=t,this[s]=0,this[h].forEach(t=>{t.length=this[o](t.value,t.key),this[s]+=t.length})),b(this)}get lengthCalculator(){return this[o]}get length(){return this[s]}get itemCount(){return this[h].length}rforEach(t,e){e=e||this;for(let n=this[h].tail;null!==n;){const i=n.prev;_(this,t,n,e),n=i}}forEach(t,e){e=e||this;for(let n=this[h].head;null!==n;){const i=n.next;_(this,t,n,e),n=i}}keys(){return this[h].toArray().map(t=>t.key)}values(){return this[h].toArray().map(t=>t.value)}reset(){this[c]&&this[h]&&this[h].length&&this[h].forEach(t=>this[c](t.key,t.value)),this[d]=new Map,this[h]=new i,this[s]=0}dump(){return this[h].map(t=>!m(this,t)&&{k:t.key,v:t.value,e:t.now+(t.maxAge||0)}).toArray().filter(t=>t)}dumpLru(){return this[h]}set(t,e,n){if((n=n||this[l])&&"number"!=typeof n)throw new TypeError("maxAge must be a number");const i=n?Date.now():0,a=this[o](e,t);if(this[d].has(t)){if(a>this[r])return y(this,this[d].get(t)),!1;const o=this[d].get(t).value;return this[c]&&(this[u]||this[c](t,o.value)),o.now=i,o.maxAge=n,o.value=e,this[s]+=a-o.length,o.length=a,this.get(t),b(this),!0}const p=new v(t,e,a,i,n);return p.length>this[r]?(this[c]&&this[c](t,e),!1):(this[s]+=p.length,this[h].unshift(p),this[d].set(t,this[h].head),b(this),!0)}has(t){if(!this[d].has(t))return!1;const e=this[d].get(t).value;return!m(this,e)}get(t){return g(this,t,!0)}peek(t){return g(this,t,!1)}pop(){const t=this[h].tail;return t?(y(this,t),t.value):null}del(t){y(this,this[d].get(t))}load(t){this.reset();const e=Date.now();for(let n=t.length-1;n>=0;n--){const i=t[n],r=i.e||0;if(0===r)this.set(i.k,i.v);else{const t=r-e;t>0&&this.set(i.k,i.v,t)}}}prune(){this[d].forEach((t,e)=>g(this,e,!1))}}},{yallist:92}],34:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;const i="http://www.w3.org/1999/02/22-rdf-syntax-ns#",r="http://www.w3.org/2001/XMLSchema#",s="http://www.w3.org/2000/10/swap/";n.default={xsd:{decimal:`${r}decimal`,boolean:`${r}boolean`,double:`${r}double`,integer:`${r}integer`,string:`${r}string`},rdf:{type:`${i}type`,nil:`${i}nil`,first:`${i}first`,rest:`${i}rest`,langString:`${i}langString`},owl:{sameAs:"http://www.w3.org/2002/07/owl#sameAs"},r:{forSome:`${s}reify#forSome`,forAll:`${s}reify#forAll`},log:{implies:`${s}log#implies`}}},{}],35:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.termFromId=function t(e,n){if(n=n||d,!e)return n.defaultGraph();switch(e[0]){case"?":return n.variable(e.substr(1));case"_":return n.blankNode(e.substr(2));case'"':if(n===d)return new g(e);if('"'===e[e.length-1])return n.literal(e.substr(1,e.length-2));const i=e.lastIndexOf('"',e.length-1);return n.literal(e.substr(1,i-1),"@"===e[i+1]?e.substr(i+2):n.namedNode(e.substr(i+3)));case"<":const r=h.exec(e);return n.quad(t(w(r[1]),n),t(w(r[2]),n),t(w(r[3]),n),r[4]&&t(w(r[4]),n));default:return n.namedNode(e)}},n.termToId=function t(e){if("string"==typeof e)return e;if(e instanceof p&&"Quad"!==e.termType)return e.id;if(!e)return l.id;switch(e.termType){case"NamedNode":return e.value;case"BlankNode":return`_:${e.value}`;case"Variable":return`?${e.value}`;case"DefaultGraph":return"";case"Literal":return`"${e.value}"${e.language?`@${e.language}`:e.datatype&&e.datatype.value!==a.string?`^^${e.datatype.value}`:""}`;case"Quad":return`<<${_(t(e.subject))} ${_(t(e.predicate))} ${_(t(e.object))}${(0,s.isDefaultGraph)(e.graph)?"":` ${t(e.graph)}`}>>`;default:throw new Error(`Unexpected termType: ${e.termType}`)}},n.escapeQuotes=_,n.unescapeQuotes=w,n.Triple=n.Quad=n.DefaultGraph=n.Variable=n.BlankNode=n.Literal=n.NamedNode=n.Term=n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=t("./N3Util");const{rdf:o,xsd:a}=r.default;let l,c=0;const u=/^"(.*".*)(?="[^"]*$)/,h=/^<<("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ("(?:""|[^"])*"[^ ]*|[^ ]+) ?("(?:""|[^"])*"[^ ]*|[^ ]+)?>>$/,d={namedNode:function(t){return new f(t)},blankNode:function(t){return new m(t||"n3-"+c++)},variable:function(t){return new b(t)},literal:function(t,e){if("string"==typeof e)return new g(`"${t}"@${e.toLowerCase()}`);let n=e?e.value:"";return""===n&&("boolean"==typeof t?n=a.boolean:"number"==typeof t&&(Number.isFinite(t)?n=Number.isInteger(t)?a.integer:a.double:(n=a.double,Number.isNaN(t)||(t=t>0?"INF":"-INF")))),new g(""===n||n===a.string?`"${t}"`:`"${t}"^^${n}`)},defaultGraph:function(){return l},quad:x,triple:x};n.default=d;class p{constructor(t){this.id=t}get value(){return this.id}equals(t){return t instanceof p?this.id===t.id:!!t&&this.termType===t.termType&&this.value===t.value}toJSON(){return{termType:this.termType,value:this.value}}}n.Term=p;class f extends p{get termType(){return"NamedNode"}}n.NamedNode=f;class g extends p{get termType(){return"Literal"}get value(){return this.id.substring(1,this.id.lastIndexOf('"'))}get language(){const t=this.id;let e=t.lastIndexOf('"')+1;return e`"${e.replace(/"/g,'""')}`)}function w(t){return t.replace(u,(t,e)=>`"${e.replace(/""/g,'"')}`)}function x(t,e,n,i){return new v(t,e,n,i)}n.Triple=n.Quad=v},{"./IRIs":34,"./N3Util":41}],36:[function(t,e,n){(function(e){(function(){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=s(t("./IRIs")),r=s(t("queue-microtask"));function s(t){return t&&t.__esModule?t:{default:t}}const{xsd:o}=i.default,a=/\\u([a-fA-F0-9]{4})|\\U([a-fA-F0-9]{8})|\\([^])/g,l={"\\":"\\","'":"'",'"':'"',n:"\n",r:"\r",t:"\t",f:"\f",b:"\b",_:"_","~":"~",".":".","-":"-","!":"!",$:"$","&":"&","(":"(",")":")","*":"*","+":"+",",":",",";":";","=":"=","/":"/","?":"?","#":"#","@":"@","%":"%"},c=/[\x00-\x20<>\\"\{\}\|\^\`]/,u={_iri:!0,_unescapedIri:!0,_simpleQuotedString:!0,_langcode:!0,_blank:!0,_newline:!0,_comment:!0,_whitespace:!0,_endOfFile:!0},h=/$0^/;n.default=class{constructor(t){if(this._iri=/^<((?:[^ <>{}\\]|\\[uU])+)>[ \t]*/,this._unescapedIri=/^<([^\x00-\x20<>\\"\{\}\|\^\`]*)>[ \t]*/,this._simpleQuotedString=/^"([^"\\\r\n]*)"(?=[^"])/,this._simpleApostropheString=/^'([^'\\\r\n]*)'(?=[^'])/,this._langcode=/^@([a-z]+(?:-[a-z0-9]+)*)(?=[^a-z0-9\-])/i,this._prefix=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:(?=[#\s<])/,this._prefixed=/^((?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)?:((?:(?:[0-:A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])(?:(?:[\.\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~])*(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff]|%[0-9a-fA-F]{2}|\\[!#-\/;=?\-@_~]))?)?)(?:[ \t]+|(?=\.?[,;!\^\s#()\[\]\{\}"'<>]))/,this._variable=/^\?(?:(?:[A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:[\-0-:A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?=[.,;!\^\s#()\[\]\{\}"'<>])/,this._blank=/^_:((?:[0-9A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])(?:\.?[\-0-9A-Z_a-z\xb7\xc0-\xd6\xd8-\xf6\xf8-\u037d\u037f-\u1fff\u200c\u200d\u203f\u2040\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd]|[\ud800-\udb7f][\udc00-\udfff])*)(?:[ \t]+|(?=\.?[,;:\s#()\[\]\{\}"'<>]))/,this._number=/^[\-+]?(?:(\d+\.\d*|\.?\d+)[eE][\-+]?|\d*(\.)?)\d+(?=\.?[,;:\s#()\[\]\{\}"'<>])/,this._boolean=/^(?:true|false)(?=[.,;\s#()\[\]\{\}"'<>])/,this._keyword=/^@[a-z]+(?=[\s#<:])/i,this._sparqlKeyword=/^(?:PREFIX|BASE|GRAPH)(?=[\s#<])/i,this._shortPredicates=/^a(?=[\s#()\[\]\{\}"'<>])/,this._newline=/^[ \t]*(?:#[^\n\r]*)?(?:\r\n|\n|\r)[ \t]*/,this._comment=/#([^\n\r]*)/,this._whitespace=/^[ \t]+/,this._endOfFile=/^(?:#[^\n\r]*)?$/,this._lineMode=!!(t=t||{}).lineMode){this._n3Mode=!1;for(const t in this)!(t in u)&&this[t]instanceof RegExp&&(this[t]=h)}else this._n3Mode=!1!==t.n3;this._comments=!!t.comments,this._literalClosingPos=0}_tokenizeToEnd(t,e){let n=this._input;const i=this._comments;for(;;){let s,a;for(;s=this._newline.exec(n);)i&&(a=this._comment.exec(s[0]))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),n=n.substr(s[0].length,n.length),this._line++;if(!s&&(s=this._whitespace.exec(n))&&(n=n.substr(s[0].length,n.length)),this._endOfFile.test(n))return e&&(i&&(a=this._comment.exec(n))&&t(null,{line:this._line,type:"comment",value:a[1],prefix:""}),t(n=null,{line:this._line,type:"eof",value:"",prefix:""})),this._input=n;const l=this._line,u=n[0];let h="",d="",p="",f=null,g=0,m=!1;switch(u){case"^":if(n.length<3)break;if("^"!==n[1]){this._n3Mode&&(g=1,h="^");break}if(this._previousMarker="^^",n=n.substr(2),"<"!==n[0]){m=!0;break}case"<":if(f=this._unescapedIri.exec(n))h="IRI",d=f[1];else if(f=this._iri.exec(n)){if(d=this._unescape(f[1]),null===d||c.test(d))return r(this);h="IRI"}else n.length>1&&"<"===n[1]?(h="<<",g=2):this._n3Mode&&n.length>1&&"="===n[1]&&(h="inverse",g=2,d=">");break;case">":n.length>1&&">"===n[1]&&(h=">>",g=2);break;case"_":((f=this._blank.exec(n))||e&&(f=this._blank.exec(`${n} `)))&&(h="blank",p="_",d=f[1]);break;case'"':if(f=this._simpleQuotedString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0);break;case"'":if(!this._lineMode){if(f=this._simpleApostropheString.exec(n))d=f[1];else if(({value:d,matchLength:g}=this._parseLiteral(n)),null===d)return r(this);(null!==f||0!==g)&&(h="literal",this._literalClosingPos=0)}break;case"?":this._n3Mode&&(f=this._variable.exec(n))&&(h="var",d=f[0]);break;case"@":"literal"===this._previousMarker&&(f=this._langcode.exec(n))?(h="langcode",d=f[1]):(f=this._keyword.exec(n))&&(h=f[0]);break;case".":if(1===n.length?e:n[1]<"0"||n[1]>"9"){h=".",g=1;break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":case"+":case"-":(f=this._number.exec(n)||e&&(f=this._number.exec(`${n} `)))&&(h="literal",d=f[0],p="string"==typeof f[1]?o.double:"string"==typeof f[2]?o.decimal:o.integer);break;case"B":case"b":case"p":case"P":case"G":case"g":(f=this._sparqlKeyword.exec(n))?h=f[0].toUpperCase():m=!0;break;case"f":case"t":(f=this._boolean.exec(n))?(h="literal",d=f[0],p=o.boolean):m=!0;break;case"a":(f=this._shortPredicates.exec(n))?(h="abbreviation",d="a"):m=!0;break;case"=":this._n3Mode&&n.length>1&&(h="abbreviation",">"!==n[1]?(g=1,d="="):(g=2,d=">"));break;case"!":if(!this._n3Mode)break;case",":case";":case"[":case"]":case"(":case")":case"{":case"}":this._lineMode||(g=1,h=u);break;default:m=!0}if(m&&("@prefix"!==this._previousMarker&&"PREFIX"!==this._previousMarker||!(f=this._prefix.exec(n))?((f=this._prefixed.exec(n))||e&&(f=this._prefixed.exec(`${n} `)))&&(h="prefixed",p=f[1]||"",d=this._unescape(f[2])):(h="prefix",d=f[1]||"")),"^^"===this._previousMarker)switch(h){case"prefixed":h="type";break;case"IRI":h="typeIRI";break;default:h=""}if(!h)return e||!/^'''|^"""/.test(n)&&/\n|\r/.test(n)?r(this):this._input=n;const b={line:l,type:h,value:d,prefix:p};t(null,b),this.previousToken=b,this._previousMarker=h,n=n.substr(g||f[0].length,n.length)}function r(e){t(e._syntaxError(/^\S*/.exec(n)[0]))}}_unescape(t){let e=!1;const n=t.replace(a,(t,n,i,r)=>{if("string"==typeof n)return String.fromCharCode(Number.parseInt(n,16));if("string"==typeof i){let t=Number.parseInt(i,16);return t<=65535?String.fromCharCode(Number.parseInt(i,16)):String.fromCharCode(55296+((t-=65536)>>10),56320+(1023&t))}return r in l?l[r]:(e=!0,"")});return e?null:n}_parseLiteral(t){if(t.length>=3){const e=t.match(/^(?:"""|"|'''|'|)/)[0],n=e.length;let i=Math.max(this._literalClosingPos,n);for(;(i=t.indexOf(e,i))>0;){let e=0;for(;"\\"===t[i-e-1];)e++;if(e%2==0){const e=t.substring(n,i),r=e.split(/\r\n|\r|\n/).length-1,s=i+n;if(1===n&&0!==r||3===n&&this._lineMode)break;return this._line+=r,{value:this._unescape(e),matchLength:s}}i++}this._literalClosingPos=t.length-n+1}return{value:"",matchLength:0}}_syntaxError(t){this._input=null;const e=new Error(`Unexpected "${t}" on line ${this._line}.`);return e.context={token:void 0,line:this._line,previousToken:this.previousToken},e}_readStartingBom(t){return t.startsWith("\ufeff")?t.substr(1):t}tokenize(t,n){if(this._line=1,"string"==typeof t){if(this._input=this._readStartingBom(t),"function"!=typeof n){const t=[];let e;if(this._tokenizeToEnd((n,i)=>n?e=n:t.push(i),!0),e)throw e;return t}(0,r.default)(()=>this._tokenizeToEnd(n,!0))}else this._pendingBuffer=null,"function"==typeof t.setEncoding&&t.setEncoding("utf8"),t.on("data",t=>{null!==this._input&&0!==t.length&&(this._pendingBuffer&&(t=e.concat([this._pendingBuffer,t]),this._pendingBuffer=null),128&t[t.length-1]?this._pendingBuffer=t:(void 0===this._input?this._input=this._readStartingBom("string"==typeof t?t:t.toString()):this._input+=t,this._tokenizeToEnd(n,!1)))}),t.on("end",()=>{"string"==typeof this._input&&this._tokenizeToEnd(n,!0)}),t.on("error",n)}}}).call(this)}).call(this,t("buffer").Buffer)},{"./IRIs":34,buffer:6,"queue-microtask":45}],37:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=o(t("./N3Lexer")),r=o(t("./N3DataFactory")),s=o(t("./IRIs"));function o(t){return t&&t.__esModule?t:{default:t}}let a=0;class l{constructor(t){this._contextStack=[],this._graph=null,this._setBase((t=t||{}).baseIRI),t.factory&&u(this,t.factory);const e="string"==typeof t.format?t.format.match(/\w*$/)[0].toLowerCase():"",n=/turtle/.test(e),r=/trig/.test(e),s=/triple/.test(e),o=/quad/.test(e),a=this._n3Mode=/n3/.test(e),l=s||o;(this._supportsNamedGraphs=!(n||a))||(this._readPredicateOrNamedGraph=this._readPredicate),this._supportsQuads=!(n||r||s||a),this._supportsRDFStar=""===e||/star|\*$/.test(e),l&&(this._resolveRelativeIRI=t=>null),this._blankNodePrefix="string"!=typeof t.blankNodePrefix?"":t.blankNodePrefix.replace(/^(?!_:)/,"_:"),this._lexer=t.lexer||new i.default({lineMode:l,n3:a}),this._explicitQuantifiers=!!t.explicitQuantifiers}static _resetBlankNodePrefix(){a=0}_setBase(t){if(t){const e=t.indexOf("#");e>=0&&(t=t.substr(0,e)),this._base=t,this._basePath=t.indexOf("/")<0?t:t.replace(/[^\/?]*(?:\?.*)?$/,""),t=t.match(/^(?:([a-z][a-z0-9+.-]*:))?(?:\/\/[^\/]*)?/i),this._baseRoot=t[0],this._baseScheme=t[1]}else this._base="",this._basePath=""}_saveContext(t,e,n,i,r){const s=this._n3Mode;this._contextStack.push({subject:n,predicate:i,object:r,graph:e,type:t,inverse:!!s&&this._inversePredicate,blankPrefix:s?this._prefixes._:"",quantified:s?this._quantified:null}),s&&(this._inversePredicate=!1,this._prefixes._=this._graph?`${this._graph.id.substr(2)}.`:".",this._quantified=Object.create(this._quantified))}_restoreContext(){const t=this._contextStack.pop(),e=this._n3Mode;this._subject=t.subject,this._predicate=t.predicate,this._object=t.object,this._graph=t.graph,e&&(this._inversePredicate=t.inverse,this._prefixes._=t.blankPrefix,this._quantified=t.quantified)}_readInTopContext(t){switch(t.type){case"eof":return null!==this._graph?this._error("Unclosed graph",t):(delete this._prefixes._,this._callback(null,null,this._prefixes));case"PREFIX":this._sparqlStyle=!0;case"@prefix":return this._readPrefix;case"BASE":this._sparqlStyle=!0;case"@base":return this._readBaseIRI;case"{":if(this._supportsNamedGraphs)return this._graph="",this._subject=null,this._readSubject;case"GRAPH":if(this._supportsNamedGraphs)return this._readNamedGraphLabel;default:return this._readSubject(t)}}_readEntity(t,e){let n;switch(t.type){case"IRI":case"typeIRI":const e=this._resolveIRI(t.value);if(null===e)return this._error("Invalid IRI",t);n=this._namedNode(e);break;case"type":case"prefixed":const i=this._prefixes[t.prefix];if(void 0===i)return this._error(`Undefined prefix "${t.prefix}:"`,t);n=this._namedNode(i+t.value);break;case"blank":n=this._blankNode(this._prefixes[t.prefix]+t.value);break;case"var":n=this._variable(t.value.substr(1));break;default:return this._error(`Expected entity but got ${t.type}`,t)}return!e&&this._n3Mode&&n.id in this._quantified&&(n=this._quantified[n.id]),n}_readSubject(t){switch(this._predicate=null,t.type){case"[":return this._saveContext("blank",this._graph,this._subject=this._blankNode(),null,null),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this.RDF_NIL,null,null),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._graph=this._blankNode(),null,null),this._readSubject):this._error("Unexpected graph",t);case"}":return this._readPunctuation(t);case"@forSome":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORSOME,this._quantifier=this._blankNode,this._readQuantifierList):this._error('Unexpected "@forSome"',t);case"@forAll":return this._n3Mode?(this._subject=null,this._predicate=this.N3_FORALL,this._quantifier=this._variable,this._readQuantifierList):this._error('Unexpected "@forAll"',t);case"literal":if(!this._n3Mode)return this._error("Unexpected literal",t);if(0===t.prefix.length)return this._literalValue=t.value,this._completeSubjectLiteral;this._subject=this._literal(t.value,this._namedNode(t.prefix));break;case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,null,null,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._subject=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._readPredicateOrNamedGraph)}return this._readPredicateOrNamedGraph}_readPredicate(t){const e=t.type;switch(e){case"inverse":this._inversePredicate=!0;case"abbreviation":this._predicate=this.ABBREVIATIONS[t.value];break;case".":case"]":case"}":return null===this._predicate?this._error(`Unexpected ${e}`,t):(this._subject=null,"]"===e?this._readBlankNodeTail(t):this._readPunctuation(t));case";":return null!==this._predicate?this._readPredicate:this._error("Expected predicate but got ;",t);case"blank":if(!this._n3Mode)return this._error("Disallowed blank node as predicate",t);default:if(void 0===(this._predicate=this._readEntity(t)))return}return this._readObject}_readObject(t){switch(t.type){case"literal":if(0===t.prefix.length)return this._literalValue=t.value,this._readDataTypeOrLang;this._object=this._literal(t.value,this._namedNode(t.prefix));break;case"[":return this._saveContext("blank",this._graph,this._subject,this._predicate,this._subject=this._blankNode()),this._readBlankNodeHead;case"(":return this._saveContext("list",this._graph,this._subject,this._predicate,this.RDF_NIL),this._subject=null,this._readListItem;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);case"<<":return this._supportsRDFStar?(this._saveContext("<<",this._graph,this._subject,this._predicate,null),this._graph=null,this._readSubject):this._error("Unexpected RDF* syntax",t);default:if(void 0===(this._object=this._readEntity(t)))return;if(this._n3Mode)return this._getPathReader(this._getContextEndReader())}return this._getContextEndReader()}_readPredicateOrNamedGraph(t){return"{"===t.type?this._readGraph(t):this._readPredicate(t)}_readGraph(t){return"{"!==t.type?this._error(`Expected graph but got ${t.type}`,t):(this._graph=this._subject,this._subject=null,this._readSubject)}_readBlankNodeHead(t){return"]"===t.type?(this._subject=null,this._readBlankNodeTail(t)):(this._predicate=null,this._readPredicate(t))}_readBlankNodeTail(t){if("]"!==t.type)return this._readBlankNodePunctuation(t);null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph);const e=null===this._predicate;return this._restoreContext(),null===this._object?e?this._readPredicateOrNamedGraph:this._readPredicateAfterBlank:this._getContextEndReader()}_readPredicateAfterBlank(t){switch(t.type){case".":case"}":return this._subject=null,this._readPunctuation(t);default:return this._readPredicate(t)}}_readListItem(t){let e=null,n=null,i=this._readListItem;const r=this._subject,s=this._contextStack,o=s[s.length-1];switch(t.type){case"[":this._saveContext("blank",this._graph,n=this._blankNode(),this.RDF_FIRST,this._subject=e=this._blankNode()),i=this._readBlankNodeHead;break;case"(":this._saveContext("list",this._graph,n=this._blankNode(),this.RDF_FIRST,this.RDF_NIL),this._subject=null;break;case")":if(this._restoreContext(),0!==s.length&&"list"===s[s.length-1].type&&this._emit(this._subject,this._predicate,this._object,this._graph),null===this._predicate){if(i=this._readPredicate,this._subject===this.RDF_NIL)return i}else if(i=this._getContextEndReader(),this._object===this.RDF_NIL)return i;n=this.RDF_NIL;break;case"literal":0===t.prefix.length?(this._literalValue=t.value,i=this._readListItemDataTypeOrLang):(e=this._literal(t.value,this._namedNode(t.prefix)),i=this._getContextEndReader());break;case"{":return this._n3Mode?(this._saveContext("formula",this._graph,this._subject,this._predicate,this._graph=this._blankNode()),this._readSubject):this._error("Unexpected graph",t);default:if(void 0===(e=this._readEntity(t)))return}if(null===n&&(this._subject=n=this._blankNode()),null===r?null===o.predicate?o.subject=n:o.object=n:this._emit(r,this.RDF_REST,n,this._graph),null!==e){if(this._n3Mode&&("IRI"===t.type||"prefixed"===t.type))return this._saveContext("item",this._graph,n,this.RDF_FIRST,e),this._subject=e,this._predicate=null,this._getPathReader(this._readListItem);this._emit(n,this.RDF_FIRST,e,this._graph)}return i}_readDataTypeOrLang(t){return this._completeObjectLiteral(t,!1)}_readListItemDataTypeOrLang(t){return this._completeObjectLiteral(t,!0)}_completeLiteral(t){let e=this._literal(this._literalValue);switch(t.type){case"type":case"typeIRI":const n=this._readEntity(t);if(void 0===n)return;e=this._literal(this._literalValue,n),t=null;break;case"langcode":e=this._literal(this._literalValue,t.value),t=null}return{token:t,literal:e}}_completeSubjectLiteral(t){return this._subject=this._completeLiteral(t).literal,this._readPredicateOrNamedGraph}_completeObjectLiteral(t,e){const n=this._completeLiteral(t);if(n)return this._object=n.literal,e&&this._emit(this._subject,this.RDF_FIRST,this._object,this._graph),null===n.token?this._getContextEndReader():(this._readCallback=this._getContextEndReader(),this._readCallback(n.token))}_readFormulaTail(t){return"}"!==t.type?this._readPunctuation(t):(null!==this._subject&&this._emit(this._subject,this._predicate,this._object,this._graph),this._restoreContext(),null===this._object?this._readPredicate:this._getContextEndReader())}_readPunctuation(t){let e,n=this._graph;const i=this._subject,r=this._inversePredicate;switch(t.type){case"}":if(null===this._graph)return this._error("Unexpected graph closing",t);if(this._n3Mode)return this._readFormulaTail(t);this._graph=null;case".":this._subject=null,e=this._contextStack.length?this._readSubject:this._readInTopContext,r&&(this._inversePredicate=!1);break;case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:if(this._supportsQuads&&null===this._graph&&void 0!==(n=this._readEntity(t))){e=this._readQuadPunctuation;break}return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}if(null!==i){const t=this._predicate,e=this._object;r?this._emit(e,t,i,n):this._emit(i,t,e,n)}return e}_readBlankNodePunctuation(t){let e;switch(t.type){case";":e=this._readPredicate;break;case",":e=this._readObject;break;default:return this._error(`Expected punctuation to follow "${this._object.id}"`,t)}return this._emit(this._subject,this._predicate,this._object,this._graph),e}_readQuadPunctuation(t){return"."!==t.type?this._error("Expected dot to follow quad",t):this._readInTopContext}_readPrefix(t){return"prefix"!==t.type?this._error("Expected prefix to follow @prefix",t):(this._prefix=t.value,this._readPrefixIRI)}_readPrefixIRI(t){if("IRI"!==t.type)return this._error(`Expected IRI to follow prefix "${this._prefix}:"`,t);const e=this._readEntity(t);return this._prefixes[this._prefix]=e.value,this._prefixCallback(this._prefix,e),this._readDeclarationPunctuation}_readBaseIRI(t){const e="IRI"===t.type&&this._resolveIRI(t.value);return e?(this._setBase(e),this._readDeclarationPunctuation):this._error("Expected valid IRI to follow base declaration",t)}_readNamedGraphLabel(t){switch(t.type){case"IRI":case"blank":case"prefixed":return this._readSubject(t),this._readGraph;case"[":return this._readNamedGraphBlankLabel;default:return this._error("Invalid graph label",t)}}_readNamedGraphBlankLabel(t){return"]"!==t.type?this._error("Invalid graph label",t):(this._subject=this._blankNode(),this._readGraph)}_readDeclarationPunctuation(t){return this._sparqlStyle?(this._sparqlStyle=!1,this._readInTopContext(t)):"."!==t.type?this._error("Expected declaration to end with a dot",t):this._readInTopContext}_readQuantifierList(t){let e;switch(t.type){case"IRI":case"prefixed":if(void 0!==(e=this._readEntity(t,!0)))break;default:return this._error(`Unexpected ${t.type}`,t)}return this._explicitQuantifiers?(null===this._subject?this._emit(this._graph||this.DEFAULTGRAPH,this._predicate,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH):this._emit(this._subject,this.RDF_REST,this._subject=this._blankNode(),this.QUANTIFIERS_GRAPH),this._emit(this._subject,this.RDF_FIRST,e,this.QUANTIFIERS_GRAPH)):this._quantified[e.id]=this._quantifier(this._blankNode().value),this._readQuantifierPunctuation}_readQuantifierPunctuation(t){return","===t.type?this._readQuantifierList:(this._explicitQuantifiers&&(this._emit(this._subject,this.RDF_REST,this.RDF_NIL,this.QUANTIFIERS_GRAPH),this._subject=null),this._readCallback=this._getContextEndReader(),this._readCallback(t))}_getPathReader(t){return this._afterPath=t,this._readPath}_readPath(t){switch(t.type){case"!":return this._readForwardPath;case"^":return this._readBackwardPath;default:const e=this._contextStack,n=e.length&&e[e.length-1];if(n&&"item"===n.type){const t=this._subject;this._restoreContext(),this._emit(this._subject,this.RDF_FIRST,t,this._graph)}return this._afterPath(t)}}_readForwardPath(t){let e,n;const i=this._blankNode();if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(e=this._subject,this._subject=i):(e=this._object,this._object=i),this._emit(e,n,i,this._graph),this._readPath}_readBackwardPath(t){const e=this._blankNode();let n,i;if(void 0!==(n=this._readEntity(t)))return null===this._predicate?(i=this._subject,this._subject=e):(i=this._object,this._object=e),this._emit(e,n,i,this._graph),this._readPath}_readRDFStarTailOrGraph(t){return">>"!==t.type?this._supportsQuads&&null===this._graph&&void 0!==(this._graph=this._readEntity(t))?this._readRDFStarTail:this._error(`Expected >> to follow "${this._object.id}"`,t):this._readRDFStarTail(t)}_readRDFStarTail(t){if(">>"!==t.type)return this._error(`Expected >> but got ${t.type}`,t);const e=this._quad(this._subject,this._predicate,this._object,this._graph||this.DEFAULTGRAPH);return this._restoreContext(),null===this._subject?(this._subject=e,this._readPredicate):(this._object=e,this._getContextEndReader())}_getContextEndReader(){const t=this._contextStack;if(!t.length)return this._readPunctuation;switch(t[t.length-1].type){case"blank":return this._readBlankNodeTail;case"list":return this._readListItem;case"formula":return this._readFormulaTail;case"<<":return this._readRDFStarTailOrGraph}}_emit(t,e,n,i){this._callback(null,this._quad(t,e,n,i||this.DEFAULTGRAPH))}_error(t,e){const n=new Error(`${t} on line ${e.line}.`);n.context={token:e,line:e.line,previousToken:this._lexer.previousToken},this._callback(n),this._callback=c}_resolveIRI(t){return/^[a-z][a-z0-9+.-]*:/i.test(t)?t:this._resolveRelativeIRI(t)}_resolveRelativeIRI(t){if(!t.length)return this._base;switch(t[0]){case"#":return this._base+t;case"?":return this._base.replace(/(?:\?.*)?$/,t);case"/":return("/"===t[1]?this._baseScheme:this._baseRoot)+this._removeDotSegments(t);default:return/^[^/:]*:/.test(t)?null:this._removeDotSegments(this._basePath+t)}}_removeDotSegments(t){if(!/(^|\/)\.\.?($|[/#?])/.test(t))return t;const e=t.length;let n="",i=-1,r=-1,s=0,o="/";for(;i=r&&(n=n.substr(0,s)),"/"!==o)return`${n}/${t.substr(i+1)}`;s=i+1}}}o=t[++i]}return n+t.substring(s)}parse(t,e,n){if(this._readCallback=this._readInTopContext,this._sparqlStyle=!1,this._prefixes=Object.create(null),this._prefixes._=this._blankNodePrefix?this._blankNodePrefix.substr(2):`b${a++}_`,this._prefixCallback=n||c,this._inversePredicate=!1,this._quantified=Object.create(null),!e){const e=[];let n;if(this._callback=(t,i)=>{t?n=t:i&&e.push(i)},this._lexer.tokenize(t).every(t=>this._readCallback=this._readCallback(t)),n)throw n;return e}this._callback=e,this._lexer.tokenize(t,(t,e)=>{null!==t?(this._callback(t),this._callback=c):this._readCallback&&(this._readCallback=this._readCallback(e))})}}function c(){}function u(t,e){const n=e.namedNode;t._namedNode=n,t._blankNode=e.blankNode,t._literal=e.literal,t._variable=e.variable,t._quad=e.quad,t.DEFAULTGRAPH=e.defaultGraph(),t.RDF_FIRST=n(s.default.rdf.first),t.RDF_REST=n(s.default.rdf.rest),t.RDF_NIL=n(s.default.rdf.nil),t.N3_FORALL=n(s.default.r.forAll),t.N3_FORSOME=n(s.default.r.forSome),t.ABBREVIATIONS={a:n(s.default.rdf.type),"=":n(s.default.owl.sameAs),">":n(s.default.log.implies)},t.QUANTIFIERS_GRAPH=n("urn:n3:quantifiers")}n.default=l,u(l.prototype,r.default)},{"./IRIs":34,"./N3DataFactory":35,"./N3Lexer":36}],38:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),s=t("readable-stream"),o=(i=t("./IRIs"))&&i.__esModule?i:{default:i};function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}class l{constructor(t,e){this._size=0,this._graphs=Object.create(null),this._id=0,this._ids=Object.create(null),this._ids["><"]=0,this._entities=Object.create(null),this._blankNodeIndex=0,!e&&t&&!t[0]&&(e=t,t=null),this._factory=(e=e||{}).factory||r.default,t&&this.addQuads(t)}get size(){let t=this._size;if(null!==t)return t;t=0;const e=this._graphs;let n,i;for(const r in e)for(const s in n=e[r].subjects)for(const e in i=n[s])t+=Object.keys(i[e]).length;return this._size=t}_addToIndex(t,e,n,i){const r=t[e]||(t[e]={}),s=r[n]||(r[n]={}),o=i in s;return o||(s[i]=null),!o}_removeFromIndex(t,e,n,i){const r=t[e],s=r[n];delete s[i];for(const o in s)return;delete r[n];for(const o in r)return;delete t[e]}_findInIndex(t,e,n,i,s,o,a,l,c,u){let h,d,p;const f=!e+!n+!i>1?Object.keys(this._ids):this._entities;e&&((h=t,t={})[e]=h[e]);for(const g in t){const e=f[g];if(d=t[g]){n&&((h=d,d={})[n]=h[n]);for(const t in d){const n=f[t];if(p=d[t]){const t=i?i in p?[i]:[]:Object.keys(p);for(let i=0;i{n in e||(e[n]=!0,t((0,r.termFromId)(this._entities[n],this._factory)))}}add(t){return this.addQuad(t),this}addQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);let s=this._graphs[i];s||(s=this._graphs[i]={subjects:{},predicates:{},objects:{}},Object.freeze(s));const o=this._ids,a=this._entities;t=o[t]||(o[a[++this._id]=t]=this._id),e=o[e]||(o[a[++this._id]=e]=this._id),n=o[n]||(o[a[++this._id]=n]=this._id);const l=this._addToIndex(s.subjects,t,e,n);return this._addToIndex(s.predicates,e,n,t),this._addToIndex(s.objects,n,t,e),this._size=null,l}addQuads(t){for(let e=0;e{this.addQuad(t)}),t}removeQuad(t,e,n,i){e||(i=t.graph,n=t.object,e=t.predicate,t=t.subject),t=(0,r.termToId)(t),e=(0,r.termToId)(e),n=(0,r.termToId)(n),i=(0,r.termToId)(i);const s=this._ids,o=this._graphs;let a,l,c;if(!((t=s[t])&&(e=s[e])&&(n=s[n])&&(a=o[i])&&(l=a.subjects[t])&&(c=l[e])&&n in c))return!1;for(t in this._removeFromIndex(a.subjects,t,e,n),this._removeFromIndex(a.predicates,e,n,t),this._removeFromIndex(a.objects,n,t,e),null!==this._size&&this._size--,a.subjects)return!0;return delete o[i],!0}removeQuads(t){for(let e=0;e{this.removeQuad(t)}),t}removeMatches(t,e,n,i){const r=new s.Readable({objectMode:!0});return r._read=()=>{for(const s of this.getQuads(t,e,n,i))r.push(s);r.push(null)},this.remove(r)}deleteGraph(t){return this.removeMatches(null,null,null,t)}getQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=[],o=this._getGraphs(i),a=this._ids;let l,u,h,d;if(c(t)&&!(u=a[t])||c(e)&&!(h=a[e])||c(n)&&!(d=a[n]))return s;for(const r in o)(l=o[r])&&(u?d?this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,null,s):h?this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,null,s):d?this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,null,s):this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,null,s));return s}match(t,e,n,i){return new u(this,t,e,n,i)}countQuads(t,e,n,i){t=t&&(0,r.termToId)(t),e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._getGraphs(i),o=this._ids;let a,l,u,h,d=0;if(c(t)&&!(l=o[t])||c(e)&&!(u=o[e])||c(n)&&!(h=o[n]))return 0;for(const r in s)(a=s[r])&&(d+=t?n?this._countInIndex(a.objects,h,l,u):this._countInIndex(a.subjects,l,u,h):e?this._countInIndex(a.predicates,u,h,l):this._countInIndex(a.objects,h,l,u));return d}forEach(t,e,n,i,r){this.some(e=>(t(e),!1),e,n,i,r)}every(t,e,n,i,r){let s=!1;const o=!this.some(e=>(s=!0,!t(e)),e,n,i,r);return s&&o}some(t,e,n,i,s){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i),s=s&&(0,r.termToId)(s);const o=this._getGraphs(s),a=this._ids;let l,u,h,d;if(c(e)&&!(u=a[e])||c(n)&&!(h=a[n])||c(i)&&!(d=a[i]))return!1;for(const r in o)if(l=o[r])if(u){if(d){if(this._findInIndex(l.objects,d,u,h,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,u,h,null,"subject","predicate","object",r,t,null))return!0}else if(h){if(this._findInIndex(l.predicates,h,d,null,"predicate","object","subject",r,t,null))return!0}else if(d){if(this._findInIndex(l.objects,d,null,null,"object","subject","predicate",r,t,null))return!0}else if(this._findInIndex(l.subjects,null,null,null,"subject","predicate","object",r,t,null))return!0;return!1}getSubjects(t,e,n){const i=[];return this.forSubjects(t=>{i.push(t)},t,e,n),i}forSubjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.predicates,l,u,t):this._loopByKey1(a.subjects,l,t):u?this._loopByKey0(a.objects,u,t):this._loop(a.subjects,t))}getPredicates(t,e,n){const i=[];return this.forPredicates(t=>{i.push(t)},t,e,n),i}forPredicates(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.objects,u,l,t):this._loopByKey0(a.subjects,l,t):u?this._loopByKey1(a.predicates,u,t):this._loop(a.predicates,t))}getObjects(t,e,n){const i=[];return this.forObjects(t=>{i.push(t)},t,e,n),i}forObjects(t,e,n,i){e=e&&(0,r.termToId)(e),n=n&&(0,r.termToId)(n),i=i&&(0,r.termToId)(i);const s=this._ids,o=this._getGraphs(i);let a,l,u;if(t=this._uniqueEntities(t),!(c(e)&&!(l=s[e])||c(n)&&!(u=s[n])))for(i in o)(a=o[i])&&(l?u?this._loopBy2Keys(a.subjects,l,u,t):this._loopByKey1(a.objects,l,t):u?this._loopByKey0(a.predicates,u,t):this._loop(a.objects,t))}getGraphs(t,e,n){const i=[];return this.forGraphs(t=>{i.push(t)},t,e,n),i}forGraphs(t,e,n,i){for(const r in this._graphs)this.some(e=>(t(e.graph),!0),e,n,i,r)}createBlankNode(t){let e,n;if(t)for(e=t=`_:${t}`,n=1;this._ids[e];)e=t+n++;else do{e="_:b"+this._blankNodeIndex++}while(this._ids[e]);return this._ids[e]=++this._id,this._entities[this._id]=e,this._factory.blankNode(e.substr(2))}extractLists({remove:t=!1,ignoreErrors:e=!1}={}){const n={},i=e?()=>!0:(t,e)=>{throw new Error(`${t.value} ${e}`)},r=this.getQuads(null,o.default.rdf.rest,o.default.rdf.nil,null),s=t?[...r]:[];return r.forEach(e=>{const r=[];let a,l,c=!1;const u=e.graph;let h=e.subject;for(;h&&!c;){const t=this.getQuads(null,null,h,null),e=this.getQuads(h,null,null,null);let n,d=null,p=null,f=null;for(let r=0;r{switch(t){case"data":e=i;break;case"end":n=i}}},(t,e)=>{t&&this.emit("error",t)||e&&this.push(e)},(t,e)=>{this.emit("prefix",t,e)}),this._transform=(t,n,i)=>{e(t),i()},this._flush=t=>{n(),t()}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),this}}},{"./N3Parser":37,"readable-stream":81}],40:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=t("readable-stream"),s=(i=t("./N3Writer"))&&i.__esModule?i:{default:i};n.default=class extends r.Transform{constructor(t){super({encoding:"utf8",writableObjectMode:!0});const e=this._writer=new s.default({write:(t,e,n)=>{this.push(t),n&&n()},end:t=>{this.push(null),t&&t()}},t);this._transform=(t,n,i)=>{e.addQuad(t,i)},this._flush=t=>{e.end(t)}}import(t){return t.on("data",t=>{this.write(t)}),t.on("end",()=>{this.end()}),t.on("error",t=>{this.emit("error",t)}),t.on("prefix",(t,e)=>{this._writer.addPrefix(t,e)}),this}}},{"./N3Writer":42,"readable-stream":81}],41:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.isNamedNode=function(t){return!!t&&"NamedNode"===t.termType},n.isBlankNode=function(t){return!!t&&"BlankNode"===t.termType},n.isLiteral=function(t){return!!t&&"Literal"===t.termType},n.isVariable=function(t){return!!t&&"Variable"===t.termType},n.isDefaultGraph=s,n.inDefaultGraph=function(t){return s(t.graph)},n.prefix=function(t,e){return o({"":t},e)("")},n.prefixes=o;var i,r=(i=t("./N3DataFactory"))&&i.__esModule?i:{default:i};function s(t){return!!t&&"DefaultGraph"===t.termType}function o(t,e){const n=Object.create(null);for(const r in t)i(r,t[r]);function i(t,i){if("string"==typeof i){const r=Object.create(null);n[t]=t=>r[t]||(r[t]=e.namedNode(i+t))}else if(!(t in n))throw new Error(`Unknown prefix: ${t}`);return n[t]}return e=e||r.default,i}},{"./N3DataFactory":35}],42:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,r=(i=t("./IRIs"))&&i.__esModule?i:{default:i},s=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=a(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}(t("./N3DataFactory")),o=t("./N3Util");function a(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(a=function(t){return t?n:e})(t)}const l=s.default.defaultGraph(),{rdf:c,xsd:u}=r.default,h=/["\\\t\n\r\b\f\u0000-\u0019\ud800-\udbff]/,d=/["\\\t\n\r\b\f\u0000-\u0019]|[\ud800-\udbff][\udc00-\udfff]/g,p={"\\":"\\\\",'"':'\\"',"\t":"\\t","\n":"\\n","\r":"\\r","\b":"\\b","\f":"\\f"};class f extends s.Term{equals(){return!1}}function g(t){let e=p[t];return void 0===e&&(1===t.length?(e=t.charCodeAt(0).toString(16),e="\\u0000".substr(0,6-e.length)+e):(e=(1024*(t.charCodeAt(0)-55296)+t.charCodeAt(1)+9216).toString(16),e="\\U00000000".substr(0,10-e.length)+e)),e}n.default=class{constructor(t,e){if(this._prefixRegex=/$0^/,t&&"function"!=typeof t.write&&(e=t,t=null),this._lists=(e=e||{}).lists,t)this._outputStream=t,this._endStream=void 0===e.end||!!e.end;else{let t="";this._outputStream={write(e,n,i){t+=e,i&&i()},end:e=>{e&&e(null,t)}},this._endStream=!0}this._subject=null,/triple|quad/i.test(e.format)?(this._lineMode=!0,this._writeQuad=this._writeQuadLine):(this._lineMode=!1,this._graph=l,this._baseIRI=e.baseIRI,this._prefixIRIs=Object.create(null),e.prefixes&&this.addPrefixes(e.prefixes))}get _inDefaultGraph(){return l.equals(this._graph)}_write(t,e){this._outputStream.write(t,"utf8",e)}_writeQuad(t,e,n,i,r){try{i.equals(this._graph)||(this._write((null===this._subject?"":this._inDefaultGraph?".\n":"\n}\n")+(l.equals(i)?"":`${this._encodeIriOrBlank(i)} {\n`)),this._graph=i,this._subject=null),t.equals(this._subject)?e.equals(this._predicate)?this._write(`, ${this._encodeObject(n)}`,r):this._write(`;\n ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r):this._write(`${(null===this._subject?"":".\n")+this._encodeSubject(this._subject=t)} ${this._encodePredicate(this._predicate=e)} ${this._encodeObject(n)}`,r)}catch(s){r&&r(s)}}_writeQuadLine(t,e,n,i,r){delete this._prefixMatch,this._write(this.quadToString(t,e,n,i),r)}quadToString(t,e,n,i){return`${this._encodeSubject(t)} ${this._encodeIriOrBlank(e)} ${this._encodeObject(n)}${i&&i.value?` ${this._encodeIriOrBlank(i)} .\n`:" .\n"}`}quadsToString(t){return t.map(t=>this.quadToString(t.subject,t.predicate,t.object,t.graph)).join("")}_encodeSubject(t){return"Quad"===t.termType?this._encodeQuad(t):this._encodeIriOrBlank(t)}_encodeIriOrBlank(t){if("NamedNode"!==t.termType)return this._lists&&t.value in this._lists&&(t=this.list(this._lists[t.value])),"id"in t?t.id:`_:${t.value}`;let e=t.value;this._baseIRI&&e.startsWith(this._baseIRI)&&(e=e.substr(this._baseIRI.length)),h.test(e)&&(e=e.replace(d,g));const n=this._prefixRegex.exec(e);return n?n[1]?this._prefixIRIs[n[1]]+n[2]:e:`<${e}>`}_encodeLiteral(t){let e=t.value;if(h.test(e)&&(e=e.replace(d,g)),t.language)return`"${e}"@${t.language}`;if(this._lineMode){if(t.datatype.value===u.string)return`"${e}"`}else switch(t.datatype.value){case u.string:return`"${e}"`;case u.boolean:if("true"===e||"false"===e)return e;break;case u.integer:if(/^[+-]?\d+$/.test(e))return e;break;case u.decimal:if(/^[+-]?\d*\.\d+$/.test(e))return e;break;case u.double:if(/^[+-]?(?:\d+\.\d*|\.?\d+)[eE][+-]?\d+$/.test(e))return e}return`"${e}"^^${this._encodeIriOrBlank(t.datatype)}`}_encodePredicate(t){return t.value===c.type?"a":this._encodeIriOrBlank(t)}_encodeObject(t){switch(t.termType){case"Quad":return this._encodeQuad(t);case"Literal":return this._encodeLiteral(t);default:return this._encodeIriOrBlank(t)}}_encodeQuad({subject:t,predicate:e,object:n,graph:i}){return`<<${this._encodeSubject(t)} ${this._encodePredicate(e)} ${this._encodeObject(n)}${(0,o.isDefaultGraph)(i)?"":` ${this._encodeIriOrBlank(i)}`}>>`}_blockedWrite(){throw new Error("Cannot write because the writer has been closed.")}addQuad(t,e,n,i,r){void 0===n?this._writeQuad(t.subject,t.predicate,t.object,t.graph,e):"function"==typeof i?this._writeQuad(t,e,n,l,i):this._writeQuad(t,e,n,i||l,r)}addQuads(t){for(let e=0;e.\n`)}if(n){let t="",e="";for(const n in this._prefixIRIs)t+=t?`|${n}`:n,e+=(e?"|":"")+this._prefixIRIs[n];t=t.replace(/[\]\/\(\)\*\+\?\.\\\$]/g,"\\$&"),this._prefixRegex=new RegExp(`^(?:${e})[^/]*$|^(${t})([a-zA-Z][\\-_a-zA-Z0-9]*)$`)}this._write(n?"\n":"",e)}blank(t,e){let n,i,r=t;switch(void 0===t?r=[]:t.termType?r=[{predicate:t,object:e}]:"length"in t||(r=[t]),i=r.length){case 0:return new f("[]");case 1:if(n=r[0],!(n.object instanceof f))return new f(`[ ${this._encodePredicate(n.predicate)} ${this._encodeObject(n.object)} ]`);default:let e="[";for(let s=0;s{e=null,t(n,i)});if(this._endStream)try{return this._outputStream.end(e)}catch(n){}e&&e()}}},{"./IRIs":34,"./N3DataFactory":35,"./N3Util":41}],43:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"Lexer",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(n,"Parser",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(n,"Writer",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(n,"Store",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(n,"StreamParser",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(n,"StreamWriter",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(n,"DataFactory",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(n,"Term",{enumerable:!0,get:function(){return u.Term}}),Object.defineProperty(n,"NamedNode",{enumerable:!0,get:function(){return u.NamedNode}}),Object.defineProperty(n,"Literal",{enumerable:!0,get:function(){return u.Literal}}),Object.defineProperty(n,"BlankNode",{enumerable:!0,get:function(){return u.BlankNode}}),Object.defineProperty(n,"Variable",{enumerable:!0,get:function(){return u.Variable}}),Object.defineProperty(n,"DefaultGraph",{enumerable:!0,get:function(){return u.DefaultGraph}}),Object.defineProperty(n,"Quad",{enumerable:!0,get:function(){return u.Quad}}),Object.defineProperty(n,"Triple",{enumerable:!0,get:function(){return u.Triple}}),Object.defineProperty(n,"termFromId",{enumerable:!0,get:function(){return u.termFromId}}),Object.defineProperty(n,"termToId",{enumerable:!0,get:function(){return u.termToId}}),n.Util=void 0;var i=p(t("./N3Lexer")),r=p(t("./N3Parser")),s=p(t("./N3Writer")),o=p(t("./N3Store")),a=p(t("./N3StreamParser")),l=p(t("./N3StreamWriter")),c=d(t("./N3Util"));n.Util=c;var u=d(t("./N3DataFactory"));function h(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(h=function(t){return t?n:e})(t)}function d(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{default:t};var n=h(e);if(n&&n.has(t))return n.get(t);var i={},r=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var s in t)if("default"!==s&&Object.prototype.hasOwnProperty.call(t,s)){var o=r?Object.getOwnPropertyDescriptor(t,s):null;o&&(o.get||o.set)?Object.defineProperty(i,s,o):i[s]=t[s]}return i.default=t,n&&n.set(t,i),i}function p(t){return t&&t.__esModule?t:{default:t}}},{"./N3DataFactory":35,"./N3Lexer":36,"./N3Parser":37,"./N3Store":38,"./N3StreamParser":39,"./N3StreamWriter":40,"./N3Util":41,"./N3Writer":42}],44:[function(t,e,n){var i,r,s=e.exports={};function o(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function l(t){if(i===setTimeout)return setTimeout(t,0);if((i===o||!i)&&setTimeout)return i=setTimeout,setTimeout(t,0);try{return i(t,0)}catch(e){try{return i.call(null,t,0)}catch(n){return i.call(this,t,0)}}}!function(){try{i="function"==typeof setTimeout?setTimeout:o}catch(t){i=o}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(t){r=a}}();var c,u=[],h=!1,d=-1;function p(){!h||!c||(h=!1,c.length?u=c.concat(u):d=-1,u.length&&f())}function f(){if(!h){var t=l(p);h=!0;for(var e=u.length;e;){for(c=u,u=[];++d1)for(var n=1;n(n||(n=Promise.resolve())).then(t).catch(t=>setTimeout(()=>{throw t},0))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],46:[function(t,e,n){e.exports=t("./lib")},{"./lib":55}],47:[function(t,e,n){"use strict";e.exports=class t{constructor(t,e=new Map,n=0){this.prefix=t,this._existing=e,this.counter=n}clone(){const{prefix:e,_existing:n,counter:i}=this;return new t(e,new Map(n),i)}getId(t){const e=t&&this._existing.get(t);if(e)return e;const n=this.prefix+this.counter;return this.counter++,t&&this._existing.set(t,n),n}hasId(t){return this._existing.has(t)}getOldIds(){return[...this._existing.keys()]}}},{}],48:[function(t,e,n){"use strict";t("setimmediate");const r=self.crypto||self.msCrypto;e.exports=class{constructor(t){if(!r||!r.subtle)throw new Error("crypto.subtle not found.");if("sha256"===t)this.algorithm={name:"SHA-256"};else{if("sha1"!==t)throw new Error(`Unsupport algorithm "${t}".`);this.algorithm={name:"SHA-1"}}this._content=""}update(t){this._content+=t}digest(){var t=this;return i(function*(){const e=(new TextEncoder).encode(t._content),n=new Uint8Array(yield r.subtle.digest(t.algorithm,e));let i="";for(let t=0;t]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]+(?:<([^:]+:[^>]*)>)[ \\t]+(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?)|(?:"([^"\\\\]*(?:\\\\.[^"\\\\]*)*)"(?:(?:\\^\\^(?:<([^:]+:[^>]*)>))|(?:@([a-zA-Z]+(?:-[a-zA-Z0-9]+)*)))?))[ \\t]*(?:\\.|(?:(?:(?:<([^:]+:[^>]*)>)|(_:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9])(?:(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040.])*(?:[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd_0-9-\xb7\u0300-\u036f\u203f-\u2040]))?))[ \\t]*\\.))[ \\t]*$'),e.exports=class t{static parse(t){const e=[],n={},h=t.split(c.eoln);let p=0;for(const f of h){if(p++,c.empty.test(f))continue;const t=f.match(c.quad);if(null===t)throw new Error("N-Quads parse error on line "+p+".");const h={subject:null,predicate:null,object:null,graph:null};if(h.subject=void 0!==t[1]?{termType:s,value:t[1]}:{termType:o,value:t[2]},h.predicate={termType:s,value:t[3]},void 0!==t[4]?h.object={termType:s,value:t[4]}:void 0!==t[5]?h.object={termType:o,value:t[5]}:(h.object={termType:a,value:void 0,datatype:{termType:s}},void 0!==t[7]?h.object.datatype.value=t[7]:void 0!==t[8]?(h.object.datatype.value=i,h.object.language=t[8]):h.object.datatype.value=r,h.object.value=t[6].replace(d,function(t,e,n,i){if(e)switch(e){case"t":return"\t";case"b":return"\b";case"n":return"\n";case"r":return"\r";case"f":return"\f";case'"':return'"';case"'":return"'";case"\\":return"\\"}if(n)return String.fromCharCode(parseInt(n,16));if(i)throw new Error("Unsupported U escape")})),h.graph=void 0!==t[9]?{termType:s,value:t[9]}:void 0!==t[10]?{termType:o,value:t[10]}:{termType:l,value:""},h.graph.value in n){let t=!0;const i=n[h.graph.value];for(const e of i)if(u(e,h)){t=!1;break}t&&(i.push(h),e.push(h))}else n[h.graph.value]=[h],e.push(h)}return e}static serialize(e){Array.isArray(e)||(e=t.legacyDatasetToQuads(e));const n=[];for(const i of e)n.push(t.serializeQuad(i));return n.sort().join("")}static serializeQuad(t){const e=t.subject,n=t.object,a=t.graph;let l="";return l+=e.termType===s?`<${e.value}>`:`${e.value}`,l+=` <${t.predicate.value}> `,n.termType===s?l+=`<${n.value}>`:n.termType===o?l+=n.value:(l+=`"${c=n.value,c.replace(h,function(t){switch(t){case'"':return'\\"';case"\\":return"\\\\";case"\n":return"\\n";case"\r":return"\\r"}})}"`,n.datatype.value===i?n.language&&(l+=`@${n.language}`):n.datatype.value!==r&&(l+=`^^<${n.datatype.value}>`)),a.termType===s?l+=` <${a.value}>`:a.termType===o&&(l+=` ${a.value}`),l+=" .\n",l;var c}static legacyDatasetToQuads(t){const e=[],n={"blank node":o,IRI:s,literal:a};for(const c in t)t[c].forEach(t=>{const u={};for(const e in t){const o=t[e],l={termType:n[o.type],value:o.value};l.termType===a&&(l.datatype={termType:s},"datatype"in o&&(l.datatype.value=o.datatype),"language"in o?("datatype"in o||(l.datatype.value=i),l.language=o.language):"datatype"in o||(l.datatype.value=r)),u[e]=l}u.graph="@default"===c?{termType:l,value:""}:{termType:c.startsWith("_:")?o:s,value:c},e.push(u)});return e}};const h=/["\\\n\r]/g;const d=/(?:\\([tbnrf"'\\]))|(?:\\u([0-9A-Fa-f]{4}))|(?:\\U([0-9A-Fa-f]{8}))/g},{}],50:[function(t,e,n){"use strict";e.exports=class{constructor(t){this.current=t.sort(),this.done=!1,this.dir=new Map;for(let e=0;ei)&&(a&&o>0&&n>t[o-1]||!a&&ot[o+1])&&(i=n,r=o)}if(null===i)this.done=!0;else{const n=e.get(i)?r-1:r+1;t[r]=t[n],t[n]=i;for(const r of t)r>i&&e.set(r,!e.get(r))}return n}}},{}],51:[function(t,e,n){(function(n){(function(){"use strict";const r=t("./IdentifierIssuer"),s=t("./MessageDigest"),o=t("./Permuter"),a=t("./NQuads");function l(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new r("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){var e=this;return i(function*(){e.quads=t;for(const r of t)e._addBlankNodeQuadInfo({quad:r,component:r.subject}),e._addBlankNodeQuadInfo({quad:r,component:r.object}),e._addBlankNodeQuadInfo({quad:r,component:r.graph});const n=new Map,i=[...e.blankNodeInfo.keys()];let s=0;for(const t of i)++s%100==0&&(yield e._yield()),yield e._hashAndTrackBlankNode({id:t,hashToBlankNodes:n});const o=[...n.keys()].sort(),c=[];for(const t of o){const i=n.get(t);i.length>1?c.push(i):e.canonicalIssuer.getId(i[0])}for(const t of c){const n=[];for(const i of t){if(e.canonicalIssuer.hasId(i))continue;const t=new r("_:b");t.getId(i);const s=yield e.hashNDegreeQuads(i,t);n.push(s)}n.sort(l);for(const t of n){const n=t.issuer.getOldIds();for(const t of n)e.canonicalIssuer.getId(t)}}const u=[];for(const t of e.quads){const n=wt({},t);n.subject=e._useCanonicalId({component:n.subject}),n.object=e._useCanonicalId({component:n.object}),n.graph=e._useCanonicalId({component:n.graph}),u.push(a.serializeQuad(n))}return u.sort(),u.join("")})()}hashFirstDegreeQuads(t){var e=this;return i(function*(){const n=[],i=e.blankNodeInfo.get(t),r=i.quads;for(const s of r){const i={subject:null,predicate:s.predicate,object:null,graph:null};i.subject=e.modifyFirstDegreeComponent(t,s.subject,"subject"),i.object=e.modifyFirstDegreeComponent(t,s.object,"object"),i.graph=e.modifyFirstDegreeComponent(t,s.graph,"graph"),n.push(a.serializeQuad(i))}n.sort();const o=new s(e.hashAlgorithm);for(const t of n)o.update(t);return i.hash=yield o.digest(),i.hash})()}hashRelatedBlankNode(t,e,n,r){var o=this;return i(function*(){let i;i=o.canonicalIssuer.hasId(t)?o.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):o.blankNodeInfo.get(t).hash;const a=new s(o.hashAlgorithm);return a.update(r),"g"!==r&&a.update(o.getRelatedPredicate(e)),a.update(i),a.digest()})()}hashNDegreeQuads(t,e){var n=this;return i(function*(){const i=new s(n.hashAlgorithm),r=yield n.createHashToRelated(t,e),a=[...r.keys()].sort();for(const t of a){i.update(t);let s,a="";const l=new o(r.get(t));let c=0;for(;l.hasNext();){const t=l.next();++c%3==0&&(yield n._yield());let i=e.clone(),r="";const o=[];let u=!1;for(const e of t)if(n.canonicalIssuer.hasId(e)?r+=n.canonicalIssuer.getId(e):(i.hasId(e)||o.push(e),r+=i.getId(e)),0!==a.length&&r>a){u=!0;break}if(!u){for(const t of o){const e=yield n.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==a.length&&r>a){u=!0;break}}u||(0===a.length||r`}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r)++s%100==0&&(yield n._yield()),yield Promise.all([n._addRelatedBlankNodeHash({quad:o,component:o.subject,position:"s",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.object,position:"o",id:t,issuer:e,hashToRelated:i}),n._addRelatedBlankNodeHash({quad:o,component:o.graph,position:"g",id:t,issuer:e,hashToRelated:i})]);return i})()}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){var n=this;return i(function*(){const i=yield n.hashFirstDegreeQuads(t),r=e.get(i);r?r.push(t):e.set(i,[t])})()}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:r,issuer:s,hashToRelated:o}){var a=this;return i(function*(){if("BlankNode"!==e.termType||e.value===r)return;const i=e.value,l=yield a.hashRelatedBlankNode(i,t,s,n),c=o.get(l);c?c.push(i):o.set(l,[i])})()}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}_yield(){return i(function*(){return new Promise(t=>n(t))})()}}}).call(this)}).call(this,t("timers").setImmediate)},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50,timers:89}],52:[function(t,e,n){"use strict";const i=t("./IdentifierIssuer"),r=t("./MessageDigest"),s=t("./Permuter"),o=t("./NQuads");function a(t,e){return t.hashe.hash?1:0}e.exports=class{constructor(){this.name="URDNA2015",this.blankNodeInfo=new Map,this.canonicalIssuer=new i("_:c14n"),this.hashAlgorithm="sha256",this.quads=null}main(t){this.quads=t;for(const i of t)this._addBlankNodeQuadInfo({quad:i,component:i.subject}),this._addBlankNodeQuadInfo({quad:i,component:i.object}),this._addBlankNodeQuadInfo({quad:i,component:i.graph});const e=new Map,n=[...this.blankNodeInfo.keys()];for(const i of n)this._hashAndTrackBlankNode({id:i,hashToBlankNodes:e});const r=[...e.keys()].sort(),s=[];for(const i of r){const t=e.get(i);t.length>1?s.push(t):this.canonicalIssuer.getId(t[0])}for(const o of s){const t=[];for(const e of o){if(this.canonicalIssuer.hasId(e))continue;const n=new i("_:b");n.getId(e);const r=this.hashNDegreeQuads(e,n);t.push(r)}t.sort(a);for(const e of t){const t=e.issuer.getOldIds();for(const e of t)this.canonicalIssuer.getId(e)}}const l=[];for(const i of this.quads){const t=wt({},i);t.subject=this._useCanonicalId({component:t.subject}),t.object=this._useCanonicalId({component:t.object}),t.graph=this._useCanonicalId({component:t.graph}),l.push(o.serializeQuad(t))}return l.sort(),l.join("")}hashFirstDegreeQuads(t){const e=[],n=this.blankNodeInfo.get(t),i=n.quads;for(const r of i){const n={subject:null,predicate:r.predicate,object:null,graph:null};n.subject=this.modifyFirstDegreeComponent(t,r.subject,"subject"),n.object=this.modifyFirstDegreeComponent(t,r.object,"object"),n.graph=this.modifyFirstDegreeComponent(t,r.graph,"graph"),e.push(o.serializeQuad(n))}e.sort();const s=new r(this.hashAlgorithm);for(const r of e)s.update(r);return n.hash=s.digest(),n.hash}hashRelatedBlankNode(t,e,n,i){let s;s=this.canonicalIssuer.hasId(t)?this.canonicalIssuer.getId(t):n.hasId(t)?n.getId(t):this.blankNodeInfo.get(t).hash;const o=new r(this.hashAlgorithm);return o.update(i),"g"!==i&&o.update(this.getRelatedPredicate(e)),o.update(s),o.digest()}hashNDegreeQuads(t,e){const n=new r(this.hashAlgorithm),i=this.createHashToRelated(t,e),o=[...i.keys()].sort();for(const r of o){n.update(r);let t,o="";const a=new s(i.get(r));for(;a.hasNext();){const n=a.next();let i=e.clone(),r="";const s=[];let l=!1;for(const t of n)if(this.canonicalIssuer.hasId(t)?r+=this.canonicalIssuer.getId(t):(i.hasId(t)||s.push(t),r+=i.getId(t)),0!==o.length&&r>o){l=!0;break}if(!l){for(const t of s){const e=this.hashNDegreeQuads(t,i);if(r+=i.getId(t),r+=`<${e.hash}>`,i=e.issuer,0!==o.length&&r>o){l=!0;break}}l||(0===o.length||r`}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i)this._addRelatedBlankNodeHash({quad:r,component:r.subject,position:"s",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.object,position:"o",id:t,issuer:e,hashToRelated:n}),this._addRelatedBlankNodeHash({quad:r,component:r.graph,position:"g",id:t,issuer:e,hashToRelated:n});return n}_hashAndTrackBlankNode({id:t,hashToBlankNodes:e}){const n=this.hashFirstDegreeQuads(t),i=e.get(n);i?i.push(t):e.set(n,[t])}_addBlankNodeQuadInfo({quad:t,component:e}){if("BlankNode"!==e.termType)return;const n=e.value,i=this.blankNodeInfo.get(n);i?i.quads.add(t):this.blankNodeInfo.set(n,{quads:new Set([t]),hash:null})}_addRelatedBlankNodeHash({quad:t,component:e,position:n,id:i,issuer:r,hashToRelated:s}){if("BlankNode"!==e.termType||e.value===i)return;const o=e.value,a=this.hashRelatedBlankNode(o,t,r,n),l=s.get(a);l?l.push(o):s.set(a,[o])}_useCanonicalId({component:t}){return"BlankNode"!==t.termType||t.value.startsWith(this.canonicalIssuer.prefix)?t:{termType:"BlankNode",value:this.canonicalIssuer.getId(t.value)}}}},{"./IdentifierIssuer":47,"./MessageDigest":48,"./NQuads":49,"./Permuter":50}],53:[function(t,e,n){"use strict";const r=t("./URDNA2015");e.exports=class extends r{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){var n=this;return i(function*(){const i=new Map,r=n.blankNodeInfo.get(t).quads;let s=0;for(const o of r){let r,a;if("BlankNode"===o.subject.termType&&o.subject.value!==t)a=o.subject.value,r="p";else{if("BlankNode"!==o.object.termType||o.object.value===t)continue;a=o.object.value,r="r"}++s%100==0&&(yield n._yield());const l=yield n.hashRelatedBlankNode(a,o,e,r),c=i.get(l);c?c.push(a):i.set(l,[a])}return i})()}}},{"./URDNA2015":51}],54:[function(t,e,n){"use strict";const i=t("./URDNA2015Sync");e.exports=class extends i{constructor(){super(),this.name="URGNA2012",this.hashAlgorithm="sha1"}modifyFirstDegreeComponent(t,e,n){return"BlankNode"!==e.termType?e:"graph"===n?{termType:"BlankNode",value:"_:g"}:{termType:"BlankNode",value:e.value===t?"_:a":"_:z"}}getRelatedPredicate(t){return t.predicate.value}createHashToRelated(t,e){const n=new Map,i=this.blankNodeInfo.get(t).quads;for(const r of i){let i,s;if("BlankNode"===r.subject.termType&&r.subject.value!==t)s=r.subject.value,i="p";else{if("BlankNode"!==r.object.termType||r.object.value===t)continue;s=r.object.value,i="r"}const o=this.hashRelatedBlankNode(s,r,e,i),a=n.get(o);a?a.push(s):n.set(o,[s])}return n}}},{"./URDNA2015Sync":52}],55:[function(t,e,n){"use strict";const r=t("./URDNA2015"),s=t("./URGNA2012"),o=t("./URDNA2015Sync"),a=t("./URGNA2012Sync");let l;try{l=t("rdf-canonize-native")}catch(u){}const c={};e.exports=c,c.NQuads=t("./NQuads"),c.IdentifierIssuer=t("./IdentifierIssuer"),c._rdfCanonizeNative=function(t){return t&&(l=t),l},c.canonize=function(){var t=i(function*(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(!l)throw new Error("rdf-canonize-native not available");return new Promise((n,i)=>l.canonize(t,e,(t,e)=>t?i(t):n(e)))}if("URDNA2015"===e.algorithm)return new r(e).main(t);if("URGNA2012"===e.algorithm)return new s(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")});return function(e,n){return t.apply(this,arguments)}}(),c._canonizeSync=function(t,e){if(Array.isArray(t)||(t=c.NQuads.legacyDatasetToQuads(t)),e.useNative){if(l)return l.canonizeSync(t,e);throw new Error("rdf-canonize-native not available")}if("URDNA2015"===e.algorithm)return new o(e).main(t);if("URGNA2012"===e.algorithm)return new a(e).main(t);throw"algorithm"in e?new Error("Invalid RDF Dataset Canonicalization algorithm: "+e.algorithm):new Error("No RDF Dataset Canonicalization algorithm specified.")}},{"./IdentifierIssuer":47,"./NQuads":49,"./URDNA2015":51,"./URDNA2015Sync":52,"./URGNA2012":53,"./URGNA2012Sync":54,"rdf-canonize-native":3}],56:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/BlankNode"),n),r(t("./lib/DataFactory"),n),r(t("./lib/DefaultGraph"),n),r(t("./lib/Literal"),n),r(t("./lib/NamedNode"),n),r(t("./lib/Quad"),n),r(t("./lib/Variable"),n)},{"./lib/BlankNode":57,"./lib/DataFactory":58,"./lib/DefaultGraph":59,"./lib/Literal":60,"./lib/NamedNode":61,"./lib/Quad":62,"./lib/Variable":63}],57:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.BlankNode=void 0;n.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},{}],58:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DataFactory=void 0;const i=t("./BlankNode"),r=t("./DefaultGraph"),s=t("./Literal"),o=t("./NamedNode"),a=t("./Quad"),l=t("./Variable");let c=0;n.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},{"./BlankNode":57,"./DefaultGraph":59,"./Literal":60,"./NamedNode":61,"./Quad":62,"./Variable":63}],59:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.DefaultGraph=void 0;class i{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}n.DefaultGraph=i,i.INSTANCE=new i},{}],60:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Literal=void 0;const i=t("./NamedNode");class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}n.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},{"./NamedNode":61}],61:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.NamedNode=void 0;n.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},{}],62:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Quad=void 0;n.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},{}],63:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.Variable=void 0;n.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},{}],64:[function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(n,"__esModule",{value:!0}),r(t("./lib/RdfXmlParser"),n)},{"./lib/RdfXmlParser":66}],65:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseError=void 0;class i extends Error{constructor(t,e){const n=t.saxStream._parser;super(t.trackPosition?`Line ${n.line+1} column ${n.column+1}: ${e}`:e)}}n.ParseError=i},{}],66:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.ParseType=n.RdfXmlParser=void 0;const i=t("relative-to-absolute-iri"),r=t("sax"),s=t("stream"),o=t("./ParseError"),a=t("rdf-data-factory");class l extends s.Transform{constructor(t){super({readableObjectMode:!0}),this.activeTagStack=[],this.nodeIds={},t&&(Object.assign(this,t),this.options=t),this.dataFactory||(this.dataFactory=new a.DataFactory),this.baseIRI||(this.baseIRI=""),this.defaultGraph||(this.defaultGraph=this.dataFactory.defaultGraph()),this.saxStream=r.createStream(this.strict,{xmlns:!1,position:this.trackPosition}),this.strict||(this.saxStream._parser.looseCase="toString"),this.attachSaxListeners()}static parseNamespace(t,e){const n={};let i=!1;for(const s in t.attributes)s.startsWith("xmlns")&&(5===s.length?(i=!0,n[""]=t.attributes[s]):":"===s.charAt(5)&&(i=!0,n[s.substr(6)]=t.attributes[s]));const r=e&&e.ns?e.ns:[l.DEFAULT_NS];return i?r.concat([n]):r}static expandPrefixedTerm(t,e,n){const i=t.indexOf(":");let r,s;i>=0?(r=t.substr(0,i),s=t.substr(i+1)):(r="",s=t);let a=null,l=null;for(let o=e.length-1;o>=0;o--){const t=e[o][r];if(t){a=t;break}l||(l=e[o][""])}if(!a){if(r&&"xmlns"!==r)throw new o.ParseError(n,`The prefix '${r}' in term '${t}' was not bound.`);a=l||""}return{prefix:r,local:s,uri:a}}static isValidIri(t){return l.IRI_REGEX.test(t)}import(t){const e=new s.PassThrough({readableObjectMode:!0});t.on("error",t=>n.emit("error",t)),t.on("data",t=>e.push(t)),t.on("end",()=>e.push(null));const n=e.pipe(new l(this.options));return n}_transform(t,e,n){try{this.saxStream.write(t,e)}catch(i){return n(i)}n()}newParseError(t){return new o.ParseError(this,t)}valueToUri(t,e){return this.uriToNamedNode(i.resolve(t,e.baseIRI))}uriToNamedNode(t){if(!l.isValidIri(t))throw this.newParseError(`Invalid URI: ${t}`);return this.dataFactory.namedNode(t)}validateNcname(t){if(!l.NCNAME_MATCHER.test(t))throw this.newParseError(`Not a valid NCName: ${t}`)}attachSaxListeners(){this.saxStream.on("error",t=>this.emit("error",t)),this.saxStream.on("opentag",this.onTag.bind(this)),this.saxStream.on("text",this.onText.bind(this)),this.saxStream.on("closetag",this.onCloseTag.bind(this)),this.saxStream.on("doctype",this.onDoctype.bind(this))}onTag(t){const e=this.activeTagStack.length?this.activeTagStack[this.activeTagStack.length-1]:null;let n=c.RESOURCE;if(e&&(e.hadChildren=!0,n=e.childrenParseType),e&&e.childrenStringTags){const n=t.name;let i="";for(const e in t.attributes)i+=` ${e}="${t.attributes[e]}"`;e.childrenStringTags.push(`<${n}${i}>`);const r={childrenStringTags:e.childrenStringTags};return r.childrenStringEmitClosingTag=``,void this.activeTagStack.push(r)}const i={};e?(i.language=e.language,i.baseIRI=e.baseIRI):i.baseIRI=this.baseIRI,this.activeTagStack.push(i),i.ns=l.parseNamespace(t,e),n===c.RESOURCE?this.onTagResource(t,i,e,!e):this.onTagProperty(t,i,e)}onTagResource(t,e,n,r){const s=l.expandPrefixedTerm(t.name,e.ns,this);e.childrenParseType=c.PROPERTY;let o=!0;if(s.uri===l.RDF){if(!r&&l.FORBIDDEN_NODE_ELEMENTS.indexOf(s.local)>=0)throw this.newParseError(`Illegal node element name: ${s.local}`);switch(s.local){case"RDF":e.childrenParseType=c.RESOURCE;case"Description":o=!1}}const a=[],u=[];let h=null,d=!1,p=!1,f=null;for(const c in t.attributes){const r=t.attributes[c],s=l.expandPrefixedTerm(c,e.ns,this);if(n&&s.uri===l.RDF)switch(s.local){case"about":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);h=r;continue;case"ID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h="#"+r,d=!0;continue;case"nodeID":if(h)throw this.newParseError(`Only one of rdf:about, rdf:nodeID and rdf:ID can be present, while ${r} and ${h} where found.`);this.validateNcname(r),h=r,p=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"type":f=r;continue;case"aboutEach":throw this.newParseError("rdf:aboutEach is not supported.");case"aboutEachPrefix":throw this.newParseError("rdf:aboutEachPrefix is not supported.");case"li":throw this.newParseError("rdf:li on node elements are not supported.")}else if(s.uri===l.XML){if("lang"===s.local){e.language=""===r?null:r.toLowerCase();continue}if("base"===s.local){e.baseIRI=i.resolve(r,e.baseIRI);continue}}"xml"!==s.prefix&&s.uri&&(a.push(this.uriToNamedNode(s.uri+s.local)),u.push(r))}if(null!==h&&(e.subject=p?this.dataFactory.blankNode(h):this.valueToUri(h,e),d&&this.claimNodeId(e.subject)),e.subject||(e.subject=this.dataFactory.blankNode()),o){const t=this.uriToNamedNode(s.uri+s.local);this.emitTriple(e.subject,this.dataFactory.namedNode(l.RDF+"type"),t,n?n.reifiedStatementId:null)}if(n){if(n.predicate)if(n.childrenCollectionSubject){const t=this.dataFactory.blankNode();this.emitTriple(n.childrenCollectionSubject,n.childrenCollectionPredicate,t,n.reifiedStatementId),this.emitTriple(t,this.dataFactory.namedNode(l.RDF+"first"),e.subject,e.reifiedStatementId),n.childrenCollectionSubject=t,n.childrenCollectionPredicate=this.dataFactory.namedNode(l.RDF+"rest")}else{this.emitTriple(n.subject,n.predicate,e.subject,n.reifiedStatementId);for(let t=0;t=0)throw this.newParseError(`Illegal property element name: ${i.local}`);e.predicateSubPredicates=[],e.predicateSubObjects=[];let r=!1,s=!1,o=null,a=!0;const u=[],h=[];for(const d in t.attributes){const n=t.attributes[d],i=l.expandPrefixedTerm(d,e.ns,this);if(i.uri===l.RDF)switch(i.local){case"resource":if(o)throw this.newParseError(`Found both rdf:resource (${n}) and rdf:nodeID (${o}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:resource (${n})`);e.hadChildren=!0,o=n,a=!1;continue;case"datatype":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:datatype (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${n})`);e.datatype=this.valueToUri(n,e);continue;case"nodeID":if(s)throw this.newParseError(`Found both non-rdf:* property attributes and rdf:nodeID (${n}).`);if(e.hadChildren)throw this.newParseError(`Found both rdf:resource and rdf:nodeID (${n}).`);if(r)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID (${n})`);this.validateNcname(n),e.hadChildren=!0,o=n,a=!0;continue;case"bagID":throw this.newParseError("rdf:bagID is not supported.");case"parseType":if(s)throw this.newParseError("rdf:parseType is not allowed when non-rdf:* property attributes are present");if(e.datatype)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:datatype (${e.datatype.value})`);if(o)throw this.newParseError(`rdf:parseType is not allowed on property elements with rdf:nodeID or rdf:resource (${o})`);if("Resource"===n){r=!0,e.childrenParseType=c.PROPERTY;const t=this.dataFactory.blankNode();this.emitTriple(e.subject,e.predicate,t,e.reifiedStatementId),e.subject=t,e.predicate=null}else"Collection"===n?(r=!0,e.hadChildren=!0,e.childrenCollectionSubject=e.subject,e.childrenCollectionPredicate=e.predicate,a=!1):"Literal"===n&&(r=!0,e.childrenTagsToString=!0,e.childrenStringTags=[]);continue;case"ID":this.validateNcname(n),e.reifiedStatementId=this.valueToUri("#"+n,e),this.claimNodeId(e.reifiedStatementId);continue}else if(i.uri===l.XML&&"lang"===i.local){e.language=""===n?null:n.toLowerCase();continue}if("xml"!==i.prefix&&"xmlns"!==i.prefix&&i.uri){if(r||e.datatype)throw this.newParseError(`Found illegal rdf:* properties on property element with attribute: ${n}`);e.hadChildren=!0,s=!0,u.push(this.uriToNamedNode(i.uri+i.local)),h.push(this.dataFactory.literal(n,e.datatype||e.language))}}if(null!==o){const t=e.subject;e.subject=a?this.dataFactory.blankNode(o):this.valueToUri(o,e),this.emitTriple(t,e.predicate,e.subject,e.reifiedStatementId);for(let n=0;n/g,(t,e,n)=>(this.saxStream._parser.ENTITIES[e]=n,""))}}var c,u;n.RdfXmlParser=l,l.IRI_REGEX=/^([A-Za-z][A-Za-z0-9+-.]*):[^ "<>{}|\\\[\]`]*$/,l.MIME_TYPE="application/rdf+xml",l.RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#",l.XML="http://www.w3.org/XML/1998/namespace",l.XMLNS="http://www.w3.org/2000/xmlns/",l.DEFAULT_NS={xml:l.XML},l.FORBIDDEN_NODE_ELEMENTS=["RDF","ID","about","bagID","parseType","resource","nodeID","li","aboutEach","aboutEachPrefix"],l.FORBIDDEN_PROPERTY_ELEMENTS=["Description","RDF","ID","about","bagID","parseType","resource","nodeID","aboutEach","aboutEachPrefix"],l.NCNAME_MATCHER=/^([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_])([A-Za-z\xC0-\xD6\xD8-\xF6\u{F8}-\u{2FF}\u{370}-\u{37D}\u{37F}-\u{1FFF}\u{200C}-\u{200D}\u{2070}-\u{218F}\u{2C00}-\u{2FEF}\u{3001}-\u{D7FF}\u{F900}-\u{FDCF}\u{FDF0}-\u{FFFD}\u{10000}-\u{EFFFF}_\-.0-9#xB7\u{0300}-\u{036F}\u{203F}-\u{2040}])*$/u,(u=c=n.ParseType||(n.ParseType={}))[u.RESOURCE=0]="RESOURCE",u[u.PROPERTY=1]="PROPERTY"},{"./ParseError":65,"rdf-data-factory":56,"relative-to-absolute-iri":82,sax:85,stream:87}],67:[function(t,e,n){"use strict";var i={};function r(t,e,n){n||(n=Error);var r=function(t){function n(n,i,r){return t.call(this,function(t,n,i){return"string"==typeof e?e:e(t,n,i)}(n,i,r))||this}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(n,t),n}(n);r.prototype.name=n.name,r.prototype.code=t,i[t]=r}function s(t,e){if(Array.isArray(t)){var n=t.length;return t=t.map(function(t){return String(t)}),n>2?"one of ".concat(e," ").concat(t.slice(0,n-1).join(", "),", or ")+t[n-1]:2===n?"one of ".concat(e," ").concat(t[0]," or ").concat(t[1]):"of ".concat(e," ").concat(t[0])}return"of ".concat(e," ").concat(String(t))}r("ERR_INVALID_OPT_VALUE",function(t,e){return'The value "'+e+'" is invalid for option "'+t+'"'},TypeError),r("ERR_INVALID_ARG_TYPE",function(t,e,n){var i,r;if("string"==typeof e&&function(t,e,n){return t.substr(!n||n<0?0:+n,e.length)===e}(e,"not ")?(i="must not be",e=e.replace(/^not /,"")):i="must be",function(t,e,n){return(void 0===n||n>t.length)&&(n=t.length),t.substring(n-e.length,n)===e}(t," argument"))r="The ".concat(t," ").concat(i," ").concat(s(e,"type"));else{var o=function(t,e,n){return"number"!=typeof n&&(n=0),!(n+e.length>t.length)&&-1!==t.indexOf(e,n)}(t,".")?"property":"argument";r='The "'.concat(t,'" ').concat(o," ").concat(i," ").concat(s(e,"type"))}return r+". Received type ".concat(typeof n)},TypeError),r("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),r("ERR_METHOD_NOT_IMPLEMENTED",function(t){return"The "+t+" method is not implemented"}),r("ERR_STREAM_PREMATURE_CLOSE","Premature close"),r("ERR_STREAM_DESTROYED",function(t){return"Cannot call "+t+" after a stream was destroyed"}),r("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),r("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),r("ERR_STREAM_WRITE_AFTER_END","write after end"),r("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),r("ERR_UNKNOWN_ENCODING",function(t){return"Unknown encoding: "+t},TypeError),r("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),e.exports.codes=i},{}],68:[function(t,e,n){(function(n){(function(){"use strict";var i=Object.keys||function(t){var e=[];for(var n in t)e.push(n);return e};e.exports=c;var r=t("./_stream_readable"),s=t("./_stream_writable");t("inherits")(c,r);for(var o=i(s.prototype),a=0;a0)if("string"!=typeof e&&!o.objectMode&&Object.getPrototypeOf(e)!==a.prototype&&(e=function(t){return a.from(t)}(e)),i)o.endEmitted?x(t,new w):T(t,o,e,!0);else if(o.ended)x(t,new v);else{if(o.destroyed)return!1;o.reading=!1,o.decoder&&!n?(e=o.decoder.write(e),o.objectMode||0!==e.length?T(t,o,e,!1):I(t,o)):T(t,o,e,!1)}else i||(o.reading=!1,I(t,o));return!o.ended&&(o.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=k?t=k:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function P(t){var e=t._readableState;c("emitReadable",e.needReadable,e.emittedReadable),e.needReadable=!1,e.emittedReadable||(c("emitReadable",e.flowing),e.emittedReadable=!0,n.nextTick(M,t))}function M(t){var e=t._readableState;c("emitReadable_",e.destroyed,e.length,e.ended),!e.destroyed&&(e.length||e.ended)&&(t.emit("readable"),e.emittedReadable=!1),e.needReadable=!e.flowing&&!e.ended&&e.length<=e.highWaterMark,j(t)}function I(t,e){e.readingMore||(e.readingMore=!0,n.nextTick(D,t,e))}function D(t,e){for(;!e.reading&&!e.ended&&(e.length0,e.resumeScheduled&&!e.paused?e.flowing=!0:t.listenerCount("data")>0&&t.resume()}function N(t){c("readable nexttick read 0"),t.read(0)}function L(t,e){c("resume",e.reading),e.reading||t.read(0),e.resumeScheduled=!1,t.emit("resume"),j(t),e.flowing&&!e.reading&&t.read(0)}function j(t){var e=t._readableState;for(c("flow",e.flowing);e.flowing&&null!==t.read(););}function F(t,e){return 0===e.length?null:(e.objectMode?n=e.buffer.shift():!t||t>=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.first():e.buffer.concat(e.length),e.buffer.clear()):n=e.buffer.consume(t,e.decoder),n);var n}function B(t){var e=t._readableState;c("endReadable",e.endEmitted),e.endEmitted||(e.ended=!0,n.nextTick(V,e,t))}function V(t,e){if(c("endReadableNT",t.endEmitted,t.length),!t.endEmitted&&0===t.length&&(t.endEmitted=!0,e.readable=!1,e.emit("end"),t.autoDestroy)){var n=e._writableState;(!n||n.autoDestroy&&n.finished)&&e.destroy()}}function z(t,e){for(var n=0,i=t.length;n=e.highWaterMark:e.length>0)||e.ended))return c("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?B(this):P(this),null;if(0===(t=A(t,e))&&e.ended)return 0===e.length&&B(this),null;var i,r=e.needReadable;return c("need readable",r),(0===e.length||e.length-t0?F(t,e):null)?(e.needReadable=e.length<=e.highWaterMark,t=0):(e.length-=t,e.awaitDrain=0),0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&B(this)),null!==i&&this.emit("data",i),i},C.prototype._read=function(t){x(this,new _("_read()"))},C.prototype.pipe=function(t,e){var i=this,r=this._readableState;switch(r.pipesCount){case 0:r.pipes=t;break;case 1:r.pipes=[r.pipes,t];break;default:r.pipes.push(t)}r.pipesCount+=1,c("pipe count=%d opts=%j",r.pipesCount,e);var o=e&&!1===e.end||t===n.stdout||t===n.stderr?m:l;function a(e,n){c("onunpipe"),e===i&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,c("cleanup"),t.removeListener("close",f),t.removeListener("finish",g),t.removeListener("drain",u),t.removeListener("error",p),t.removeListener("unpipe",a),i.removeListener("end",l),i.removeListener("end",m),i.removeListener("data",d),h=!0,r.awaitDrain&&(!t._writableState||t._writableState.needDrain)&&u())}function l(){c("onend"),t.end()}r.endEmitted?n.nextTick(o):i.once("end",o),t.on("unpipe",a);var u=function(t){return function(){var e=t._readableState;c("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,j(t))}}(i);t.on("drain",u);var h=!1;function d(e){c("ondata");var n=t.write(e);c("dest.write",n),!1===n&&((1===r.pipesCount&&r.pipes===t||r.pipesCount>1&&-1!==z(r.pipes,t))&&!h&&(c("false write response, pause",r.awaitDrain),r.awaitDrain++),i.pause())}function p(e){c("onerror",e),m(),t.removeListener("error",p),0===s(t,"error")&&x(t,e)}function f(){t.removeListener("finish",g),m()}function g(){c("onfinish"),t.removeListener("close",f),m()}function m(){c("unpipe"),i.unpipe(t)}return i.on("data",d),function(t,e,n){if("function"==typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?Array.isArray(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",p),t.once("close",f),t.once("finish",g),t.emit("pipe",i),r.flowing||(c("pipe resume"),i.resume()),t},C.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes||(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n)),this;if(!t){var i=e.pipes,r=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var s=0;s0,!1!==r.flowing&&this.resume()):"readable"===t&&!r.endEmitted&&!r.readableListening&&(r.readableListening=r.needReadable=!0,r.flowing=!1,r.emittedReadable=!1,c("on readable",r.length,r.reading),r.length?P(this):r.reading||n.nextTick(N,this)),i},C.prototype.removeListener=function(t,e){var i=o.prototype.removeListener.call(this,t,e);return"readable"===t&&n.nextTick(R,this),i},C.prototype.removeAllListeners=function(t){var e=o.prototype.removeAllListeners.apply(this,arguments);return("readable"===t||void 0===t)&&n.nextTick(R,this),e},C.prototype.resume=function(){var t=this._readableState;return t.flowing||(c("resume"),t.flowing=!t.readableListening,function(t,e){e.resumeScheduled||(e.resumeScheduled=!0,n.nextTick(L,t,e))}(this,t)),t.paused=!1,this},C.prototype.pause=function(){return c("call pause flowing=%j",this._readableState.flowing),!1!==this._readableState.flowing&&(c("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},C.prototype.wrap=function(t){var e=this,n=this._readableState,i=!1;for(var r in t.on("end",function(){if(c("wrapped end"),n.decoder&&!n.ended){var t=n.decoder.end();t&&t.length&&e.push(t)}e.push(null)}),t.on("data",function(r){c("wrapped data"),n.decoder&&(r=n.decoder.write(r)),n.objectMode&&null==r||!(n.objectMode||r&&r.length)||e.push(r)||(i=!0,t.pause())}),t)void 0===this[r]&&"function"==typeof t[r]&&(this[r]=function(e){return function(){return t[e].apply(t,arguments)}}(r));for(var s=0;s-1))throw new w(t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(C.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(C.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),C.prototype._write=function(t,e,n){n(new g("_write()"))},C.prototype._writev=null,C.prototype.end=function(t,e,i){var r=this._writableState;return"function"==typeof t?(i=t,t=null,e=null):"function"==typeof e&&(i=e,e=null),null!=t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||function(t,e,i){e.ending=!0,I(t,e),i&&(e.finished?n.nextTick(i):t.once("finish",i)),e.ended=!0,t.writable=!1}(this,r,i),this},Object.defineProperty(C.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(C.prototype,"destroyed",{enumerable:!1,get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){!this._writableState||(this._writableState.destroyed=t)}}),C.prototype.destroy=h.destroy,C.prototype._undestroy=h.undestroy,C.prototype._destroy=function(t,e){e(t)}}).call(this)}).call(this,t("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../errors":67,"./_stream_duplex":68,"./internal/streams/destroy":75,"./internal/streams/state":79,"./internal/streams/stream":80,_process:44,buffer:6,inherits:10,"util-deprecate":90}],73:[function(t,e,n){(function(n){(function(){"use strict";var i;function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}var s=t("./end-of-stream"),o=Symbol("lastResolve"),a=Symbol("lastReject"),l=Symbol("error"),c=Symbol("ended"),u=Symbol("lastPromise"),h=Symbol("handlePromise"),d=Symbol("stream");function p(t,e){return{value:t,done:e}}function f(t){var e=t[o];if(null!==e){var n=t[d].read();null!==n&&(t[u]=null,t[o]=null,t[a]=null,e(p(n,!1)))}}function g(t){n.nextTick(f,t)}var m=Object.getPrototypeOf(function(){}),b=Object.setPrototypeOf((r(i={get stream(){return this[d]},next:function(){var t=this,e=this[l];if(null!==e)return Promise.reject(e);if(this[c])return Promise.resolve(p(void 0,!0));if(this[d].destroyed)return new Promise(function(e,i){n.nextTick(function(){t[l]?i(t[l]):e(p(void 0,!0))})});var i,r=this[u];if(r)i=new Promise(function(t,e){return function(n,i){t.then(function(){e[c]?n(p(void 0,!0)):e[h](n,i)},i)}}(r,this));else{var s=this[d].read();if(null!==s)return Promise.resolve(p(s,!1));i=new Promise(this[h])}return this[u]=i,i}},Symbol.asyncIterator,function(){return this}),r(i,"return",function(){var t=this;return new Promise(function(e,n){t[d].destroy(null,function(t){t?n(t):e(p(void 0,!0))})})}),i),m);e.exports=function(t){var e,n=Object.create(b,(r(e={},d,{value:t,writable:!0}),r(e,o,{value:null,writable:!0}),r(e,a,{value:null,writable:!0}),r(e,l,{value:null,writable:!0}),r(e,c,{value:t._readableState.endEmitted,writable:!0}),r(e,h,{value:function(t,e){var i=n[d].read();i?(n[u]=null,n[o]=null,n[a]=null,t(p(i,!1))):(n[o]=t,n[a]=e)},writable:!0}),e));return n[u]=null,s(t,function(t){if(t&&"ERR_STREAM_PREMATURE_CLOSE"!==t.code){var e=n[a];return null!==e&&(n[u]=null,n[o]=null,n[a]=null,e(t)),void(n[l]=t)}var i=n[o];null!==i&&(n[u]=null,n[o]=null,n[a]=null,i(p(void 0,!0))),n[c]=!0}),t.on("readable",g.bind(null,n)),n}}).call(this)}).call(this,t("_process"))},{"./end-of-stream":76,_process:44}],74:[function(t,e,n){"use strict";function i(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,i)}return n}function r(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function s(t,e){for(var n=0;n0?this.tail.next=e:this.head=e,this.tail=e,++this.length}},{key:"unshift",value:function(t){var e={data:t,next:this.head};0===this.length&&(this.tail=e),this.head=e,++this.length}},{key:"shift",value:function(){if(0!==this.length){var t=this.head.data;return this.head=1===this.length?this.tail=null:this.head.next,--this.length,t}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(t){if(0===this.length)return"";for(var e=this.head,n=""+e.data;e=e.next;)n+=t+e.data;return n}},{key:"concat",value:function(t){if(0===this.length)return o.alloc(0);for(var e=o.allocUnsafe(t>>>0),n=this.head,i=0;n;)c(n.data,e,i),i+=n.data.length,n=n.next;return e}},{key:"consume",value:function(t,e){var n;return tr.length?r.length:t;if(i+=s===r.length?r:r.slice(0,t),0==(t-=s)){s===r.length?(++n,this.head=e.next?e.next:this.tail=null):(this.head=e,e.data=r.slice(s));break}++n}return this.length-=n,i}},{key:"_getBuffer",value:function(t){var e=o.allocUnsafe(t),n=this.head,i=1;for(n.data.copy(e),t-=n.data.length;n=n.next;){var r=n.data,s=t>r.length?r.length:t;if(r.copy(e,e.length-t,0,s),0==(t-=s)){s===r.length?(++i,this.head=n.next?n.next:this.tail=null):(this.head=n,n.data=r.slice(s));break}++i}return this.length-=i,e}},{key:l,value:function(t,e){return a(this,function(t){for(var e=1;e0,function(t){r||(r=t),t&&o.forEach(c),!s&&(o.forEach(c),i(r))})});return e.reduce(u)}},{"../../../errors":67,"./end-of-stream":76}],79:[function(t,e,n){"use strict";var i=t("../../../errors").codes.ERR_INVALID_OPT_VALUE;e.exports={getHighWaterMark:function(t,e,n,r){var s=function(t,e,n){return null!=t.highWaterMark?t.highWaterMark:e?t[n]:null}(e,r,n);if(null!=s){if(!isFinite(s)||Math.floor(s)!==s||s<0)throw new i(r?n:"highWaterMark",s);return Math.floor(s)}return t.objectMode?16:16384}}},{"../../../errors":67}],80:[function(t,e,n){e.exports=t("events").EventEmitter},{events:8}],81:[function(t,e,n){(n=e.exports=t("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=t("./lib/_stream_writable.js"),n.Duplex=t("./lib/_stream_duplex.js"),n.Transform=t("./lib/_stream_transform.js"),n.PassThrough=t("./lib/_stream_passthrough.js"),n.finished=t("./lib/internal/streams/end-of-stream.js"),n.pipeline=t("./lib/internal/streams/pipeline.js")},{"./lib/_stream_duplex.js":68,"./lib/_stream_passthrough.js":69,"./lib/_stream_readable.js":70,"./lib/_stream_transform.js":71,"./lib/_stream_writable.js":72,"./lib/internal/streams/end-of-stream.js":76,"./lib/internal/streams/pipeline.js":78}],82:[function(t,e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),function(t){for(var e in t)n.hasOwnProperty(e)||(n[e]=t[e])}(t("./lib/Resolve"))},{"./lib/Resolve":83}],83:[function(t,e,n){"use strict";function i(t){const e=[];let n=0;for(;nt.join("")).join("/")}function r(t,e){let n=e+1;e>=0?"/"===t[e+1]&&"/"===t[e+2]&&(n=e+3):"/"===t[0]&&"/"===t[1]&&(n=2);const r=t.indexOf("/",n);return r<0?t:t.substr(0,r)+i(t.substr(r))}function s(t){return!t||"#"===t||"?"===t||"/"===t}Object.defineProperty(n,"__esModule",{value:!0}),n.resolve=function(t,e){const n=(e=e||"").indexOf("#");if(n>0&&(e=e.substr(0,n)),!t.length){if(e.indexOf(":")<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);return e}if(t.startsWith("?")){const n=e.indexOf("?");return n>0&&(e=e.substr(0,n)),e+t}if(t.startsWith("#"))return e+t;if(!e.length){const e=t.indexOf(":");if(e<0)throw new Error(`Found invalid relative IRI '${t}' for a missing baseIRI`);return r(t,e)}const s=t.indexOf(":");if(s>=0)return r(t,s);const o=e.indexOf(":");if(o<0)throw new Error(`Found invalid baseIRI '${e}' for value '${t}'`);const a=e.substr(0,o+1);if(0===t.indexOf("//"))return a+r(t,s);let l;if(e.indexOf("//",o)===o+1){if(l=e.indexOf("/",o+3),l<0)return e.length>o+3?e+"/"+r(t,s):a+r(t,s)}else if(l=e.indexOf("/",o+1),l<0)return a+r(t,s);if(0===t.indexOf("/"))return e.substr(0,l)+i(t);let c=e.substr(l);const u=c.lastIndexOf("/");return u>=0&&u"===s?(O(e,"onsgmldeclaration",e.sgmlDecl),e.sgmlDecl="",e.state=S.TEXT):(m(s)&&(e.state=S.SGML_DECL_QUOTED),e.sgmlDecl+=s);continue;case S.SGML_DECL_QUOTED:s===e.q&&(e.state=S.SGML_DECL,e.q=""),e.sgmlDecl+=s;continue;case S.DOCTYPE:">"===s?(e.state=S.TEXT,O(e,"ondoctype",e.doctype),e.doctype=!0):(e.doctype+=s,"["===s?e.state=S.DOCTYPE_DTD:m(s)&&(e.state=S.DOCTYPE_QUOTED,e.q=s));continue;case S.DOCTYPE_QUOTED:e.doctype+=s,s===e.q&&(e.q="",e.state=S.DOCTYPE);continue;case S.DOCTYPE_DTD:e.doctype+=s,"]"===s?e.state=S.DOCTYPE:m(s)&&(e.state=S.DOCTYPE_DTD_QUOTED,e.q=s);continue;case S.DOCTYPE_DTD_QUOTED:e.doctype+=s,s===e.q&&(e.state=S.DOCTYPE_DTD,e.q="");continue;case S.COMMENT:"-"===s?e.state=S.COMMENT_ENDING:e.comment+=s;continue;case S.COMMENT_ENDING:"-"===s?(e.state=S.COMMENT_ENDED,e.comment=k(e.opt,e.comment),e.comment&&O(e,"oncomment",e.comment),e.comment=""):(e.comment+="-"+s,e.state=S.COMMENT);continue;case S.COMMENT_ENDED:">"!==s?(M(e,"Malformed comment"),e.comment+="--"+s,e.state=S.COMMENT):e.state=S.TEXT;continue;case S.CDATA:"]"===s?e.state=S.CDATA_ENDING:e.cdata+=s;continue;case S.CDATA_ENDING:"]"===s?e.state=S.CDATA_ENDING_2:(e.cdata+="]"+s,e.state=S.CDATA);continue;case S.CDATA_ENDING_2:">"===s?(e.cdata&&O(e,"oncdata",e.cdata),O(e,"onclosecdata"),e.cdata="",e.state=S.TEXT):"]"===s?e.cdata+="]":(e.cdata+="]]"+s,e.state=S.CDATA);continue;case S.PROC_INST:"?"===s?e.state=S.PROC_INST_ENDING:g(s)?e.state=S.PROC_INST_BODY:e.procInstName+=s;continue;case S.PROC_INST_BODY:if(!e.procInstBody&&g(s))continue;"?"===s?e.state=S.PROC_INST_ENDING:e.procInstBody+=s;continue;case S.PROC_INST_ENDING:">"===s?(O(e,"onprocessinginstruction",{name:e.procInstName,body:e.procInstBody}),e.procInstName=e.procInstBody="",e.state=S.TEXT):(e.procInstBody+="?"+s,e.state=S.PROC_INST_BODY);continue;case S.OPEN_TAG:y(d,s)?e.tagName+=s:(I(e),">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:(g(s)||M(e,"Invalid character in tag name"),e.state=S.ATTRIB));continue;case S.OPEN_TAG_SLASH:">"===s?(N(e,!0),L(e)):(M(e,"Forward-slash in opening tag not followed by >"),e.state=S.ATTRIB);continue;case S.ATTRIB:if(g(s))continue;">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME:"="===s?e.state=S.ATTRIB_VALUE:">"===s?(M(e,"Attribute without value"),e.attribValue=e.attribName,R(e),N(e)):g(s)?e.state=S.ATTRIB_NAME_SAW_WHITE:y(d,s)?e.attribName+=s:M(e,"Invalid attribute name");continue;case S.ATTRIB_NAME_SAW_WHITE:if("="===s)e.state=S.ATTRIB_VALUE;else{if(g(s))continue;M(e,"Attribute without value"),e.tag.attributes[e.attribName]="",e.attribValue="",O(e,"onattribute",{name:e.attribName,value:""}),e.attribName="",">"===s?N(e):y(h,s)?(e.attribName=s,e.state=S.ATTRIB_NAME):(M(e,"Invalid attribute name"),e.state=S.ATTRIB)}continue;case S.ATTRIB_VALUE:if(g(s))continue;m(s)?(e.q=s,e.state=S.ATTRIB_VALUE_QUOTED):(M(e,"Unquoted attribute value"),e.state=S.ATTRIB_VALUE_UNQUOTED,e.attribValue=s);continue;case S.ATTRIB_VALUE_QUOTED:if(s!==e.q){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_Q:e.attribValue+=s;continue}R(e),e.q="",e.state=S.ATTRIB_VALUE_CLOSED;continue;case S.ATTRIB_VALUE_CLOSED:g(s)?e.state=S.ATTRIB:">"===s?N(e):"/"===s?e.state=S.OPEN_TAG_SLASH:y(h,s)?(M(e,"No whitespace between attributes"),e.attribName=s,e.attribValue="",e.state=S.ATTRIB_NAME):M(e,"Invalid attribute name");continue;case S.ATTRIB_VALUE_UNQUOTED:if(!b(s)){"&"===s?e.state=S.ATTRIB_VALUE_ENTITY_U:e.attribValue+=s;continue}R(e),">"===s?N(e):e.state=S.ATTRIB;continue;case S.CLOSE_TAG:if(e.tagName)">"===s?L(e):y(d,s)?e.tagName+=s:e.script?(e.script+=""===s?L(e):M(e,"Invalid characters in closing tag");continue;case S.TEXT_ENTITY:case S.ATTRIB_VALUE_ENTITY_Q:case S.ATTRIB_VALUE_ENTITY_U:var a,l;switch(e.state){case S.TEXT_ENTITY:a=S.TEXT,l="textNode";break;case S.ATTRIB_VALUE_ENTITY_Q:a=S.ATTRIB_VALUE_QUOTED,l="attribValue";break;case S.ATTRIB_VALUE_ENTITY_U:a=S.ATTRIB_VALUE_UNQUOTED,l="attribValue"}";"===s?(e[l]+=j(e),e.entity="",e.state=a):y(e.entity.length?f:p,s)?e.entity+=s:(M(e,"Invalid character in entity name"),e[l]+="&"+e.entity+s,e.entity="",e.state=a);continue;default:throw new Error(e,"Unknown state: "+e.state)}return e.position>=e.bufferCheckPosition&&function(t){for(var e=Math.max(n.MAX_BUFFER_LENGTH,10),i=0,s=0,o=r.length;se)switch(r[s]){case"textNode":T(t);break;case"cdata":O(t,"oncdata",t.cdata),t.cdata="";break;case"script":O(t,"onscript",t.script),t.script="";break;default:A(t,"Max buffer length exceeded: "+r[s])}i=Math.max(i,a)}t.bufferCheckPosition=n.MAX_BUFFER_LENGTH-i+t.position}(e),e},resume:function(){return this.error=null,this},close:function(){return this.write(null)},flush:function(){!function(t){T(t),""!==t.cdata&&(O(t,"oncdata",t.cdata),t.cdata=""),""!==t.script&&(O(t,"onscript",t.script),t.script="")}(this)}};try{i=t("stream").Stream}catch(_){i=function(){}}var o=n.EVENTS.filter(function(t){return"error"!==t&&"end"!==t});function a(t,e){if(!(this instanceof a))return new a(t,e);i.apply(this),this._parser=new s(t,e),this.writable=!0,this.readable=!0;var n=this;this._parser.onend=function(){n.emit("end")},this._parser.onerror=function(t){n.emit("error",t),n._parser.error=null},this._decoder=null,o.forEach(function(t){Object.defineProperty(n,"on"+t,{get:function(){return n._parser["on"+t]},set:function(e){if(!e)return n.removeAllListeners(t),n._parser["on"+t]=e,e;n.on(t,e)},enumerable:!0,configurable:!1})})}(a.prototype=Object.create(i.prototype,{constructor:{value:a}})).write=function(n){if("function"==typeof e&&"function"==typeof e.isBuffer&&e.isBuffer(n)){if(!this._decoder){var i=t("string_decoder").StringDecoder;this._decoder=new i("utf8")}n=this._decoder.write(n)}return this._parser.write(n.toString()),this.emit("data",n),!0},a.prototype.end=function(t){return t&&t.length&&this.write(t),this._parser.end(),!0},a.prototype.on=function(t,e){var n=this;return!n._parser["on"+t]&&-1!==o.indexOf(t)&&(n._parser["on"+t]=function(){var e=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);e.splice(0,0,t),n.emit.apply(n,e)}),i.prototype.on.call(n,t,e)};var l="http://www.w3.org/XML/1998/namespace",c="http://www.w3.org/2000/xmlns/",u={xml:l,xmlns:c},h=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,d=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,p=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function g(t){return" "===t||"\n"===t||"\r"===t||"\t"===t}function m(t){return'"'===t||"'"===t}function b(t){return">"===t||g(t)}function y(t,e){return t.test(e)}function v(t,e){return!y(t,e)}var _,w,x,S=0;for(var E in n.STATE={BEGIN:S++,BEGIN_WHITESPACE:S++,TEXT:S++,TEXT_ENTITY:S++,OPEN_WAKA:S++,SGML_DECL:S++,SGML_DECL_QUOTED:S++,DOCTYPE:S++,DOCTYPE_QUOTED:S++,DOCTYPE_DTD:S++,DOCTYPE_DTD_QUOTED:S++,COMMENT_STARTING:S++,COMMENT:S++,COMMENT_ENDING:S++,COMMENT_ENDED:S++,CDATA:S++,CDATA_ENDING:S++,CDATA_ENDING_2:S++,PROC_INST:S++,PROC_INST_BODY:S++,PROC_INST_ENDING:S++,OPEN_TAG:S++,OPEN_TAG_SLASH:S++,ATTRIB:S++,ATTRIB_NAME:S++,ATTRIB_NAME_SAW_WHITE:S++,ATTRIB_VALUE:S++,ATTRIB_VALUE_QUOTED:S++,ATTRIB_VALUE_CLOSED:S++,ATTRIB_VALUE_UNQUOTED:S++,ATTRIB_VALUE_ENTITY_Q:S++,ATTRIB_VALUE_ENTITY_U:S++,CLOSE_TAG:S++,CLOSE_TAG_SAW_WHITE:S++,SCRIPT:S++,SCRIPT_ENDING:S++},n.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},n.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(n.ENTITIES).forEach(function(t){var e=n.ENTITIES[t],i="number"==typeof e?String.fromCharCode(e):e;n.ENTITIES[t]=i}),n.STATE)n.STATE[n.STATE[E]]=E;function C(t,e,n){t[e]&&t[e](n)}function O(t,e,n){t.textNode&&T(t),C(t,e,n)}function T(t){t.textNode=k(t.opt,t.textNode),t.textNode&&C(t,"ontext",t.textNode),t.textNode=""}function k(t,e){return t.trim&&(e=e.trim()),t.normalize&&(e=e.replace(/\s+/g," ")),e}function A(t,e){return T(t),t.trackPosition&&(e+="\nLine: "+t.line+"\nColumn: "+t.column+"\nChar: "+t.c),e=new Error(e),t.error=e,C(t,"onerror",e),t}function P(t){return t.sawRoot&&!t.closedRoot&&M(t,"Unclosed root tag"),t.state!==S.BEGIN&&t.state!==S.BEGIN_WHITESPACE&&t.state!==S.TEXT&&A(t,"Unexpected end"),T(t),t.c="",t.closed=!0,C(t,"onend"),s.call(t,t.strict,t.opt),t}function M(t,e){if("object"!=typeof t||!(t instanceof s))throw new Error("bad call to strictFail");t.strict&&A(t,e)}function I(t){t.strict||(t.tagName=t.tagName[t.looseCase]());var e=t.tags[t.tags.length-1]||t,n=t.tag={name:t.tagName,attributes:{}};t.opt.xmlns&&(n.ns=e.ns),t.attribList.length=0,O(t,"onopentagstart",n)}function D(t,e){var n=t.indexOf(":")<0?["",t]:t.split(":"),i=n[0],r=n[1];return e&&"xmlns"===t&&(i="xmlns",r=""),{prefix:i,local:r}}function R(t){if(t.strict||(t.attribName=t.attribName[t.looseCase]()),-1!==t.attribList.indexOf(t.attribName)||t.tag.attributes.hasOwnProperty(t.attribName))t.attribName=t.attribValue="";else{if(t.opt.xmlns){var e=D(t.attribName,!0),n=e.local;if("xmlns"===e.prefix)if("xml"===n&&t.attribValue!==l)M(t,"xml: prefix must be bound to "+l+"\nActual: "+t.attribValue);else if("xmlns"===n&&t.attribValue!==c)M(t,"xmlns: prefix must be bound to "+c+"\nActual: "+t.attribValue);else{var i=t.tag,r=t.tags[t.tags.length-1]||t;i.ns===r.ns&&(i.ns=Object.create(r.ns)),i.ns[n]=t.attribValue}t.attribList.push([t.attribName,t.attribValue])}else t.tag.attributes[t.attribName]=t.attribValue,O(t,"onattribute",{name:t.attribName,value:t.attribValue});t.attribName=t.attribValue=""}}function N(t,e){if(t.opt.xmlns){var n=t.tag,i=D(t.tagName);n.prefix=i.prefix,n.local=i.local,n.uri=n.ns[i.prefix]||"",n.prefix&&!n.uri&&(M(t,"Unbound namespace prefix: "+JSON.stringify(t.tagName)),n.uri=i.prefix),n.ns&&(t.tags[t.tags.length-1]||t).ns!==n.ns&&Object.keys(n.ns).forEach(function(e){O(t,"onopennamespace",{prefix:e,uri:n.ns[e]})});for(var r=0,s=t.attribList.length;r",t.tagName="",void(t.state=S.SCRIPT);O(t,"onscript",t.script),t.script=""}var e=t.tags.length,n=t.tagName;t.strict||(n=n[t.looseCase]());for(var i=n;e--&&t.tags[e].name!==i;)M(t,"Unexpected close tag");if(e<0)return M(t,"Unmatched closing tag: "+t.tagName),t.textNode+="",void(t.state=S.TEXT);t.tagName=n;for(var r=t.tags.length;r-- >e;){var s=t.tag=t.tags.pop();t.tagName=t.tag.name,O(t,"onclosetag",t.tagName);var o={};for(var a in s.ns)o[a]=s.ns[a];t.opt.xmlns&&s.ns!==(t.tags[t.tags.length-1]||t).ns&&Object.keys(s.ns).forEach(function(e){O(t,"onclosenamespace",{prefix:e,uri:s.ns[e]})})}0===e&&(t.closedRoot=!0),t.tagName=t.attribValue=t.attribName="",t.attribList.length=0,t.state=S.TEXT}function j(t){var e,n=t.entity,i=n.toLowerCase(),r="";return t.ENTITIES[n]?t.ENTITIES[n]:t.ENTITIES[i]?t.ENTITIES[i]:("#"===(n=i).charAt(0)&&("x"===n.charAt(1)?(n=n.slice(2),r=(e=parseInt(n,16)).toString(16)):(n=n.slice(1),r=(e=parseInt(n,10)).toString(10))),n=n.replace(/^0+/,""),isNaN(e)||r.toLowerCase()!==n?(M(t,"Invalid character entity"),"&"+t.entity+";"):String.fromCodePoint(e))}function F(t,e){"<"===e?(t.state=S.OPEN_WAKA,t.startTagPosition=t.position):g(e)||(M(t,"Non-whitespace before first tag."),t.textNode=e,t.state=S.TEXT)}function B(t,e){var n="";return e1114111||w(s)!==s)throw RangeError("Invalid code point: "+s);s<=65535?e.push(s):e.push(55296+((s-=65536)>>10),s%1024+56320),(n+1===i||e.length>t)&&(r+=_.apply(null,e),e.length=0)}return r},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:x,configurable:!0,writable:!0}):String.fromCodePoint=x)}(void 0===n?this.sax={}:n)}).call(this)}).call(this,t("buffer").Buffer)},{buffer:6,stream:87,string_decoder:5}],86:[function(t,e,n){(function(t,e){(function(){!function(e,n){"use strict";if(!e.setImmediate){var i,r=1,s={},o=!1,a=e.document,l=Object.getPrototypeOf&&Object.getPrototypeOf(e);l=l&&l.setTimeout?l:e,"[object process]"==={}.toString.call(e.process)?i=function(e){t.nextTick(function(){d(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage("","*"),e.onmessage=n,t}}()?(c="setImmediate$"+Math.random()+"$",u=function(t){t.source===e&&"string"==typeof t.data&&0===t.data.indexOf(c)&&d(+t.data.slice(c.length))},e.addEventListener?e.addEventListener("message",u,!1):e.attachEvent("onmessage",u),i=function(t){e.postMessage(c+t,"*")}):e.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){d(t.data)},i=function(e){t.port2.postMessage(e)}}():a&&"onreadystatechange"in a.createElement("script")?function(){var t=a.documentElement;i=function(e){var n=a.createElement("script");n.onreadystatechange=function(){d(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():i=function(t){setTimeout(d,0,t)},l.setImmediate=function(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n.setImmediate="function"==typeof e?e:function(t){var e=l++,i=!(arguments.length<2)&&o.call(arguments,1);return a[e]=!0,r(function(){a[e]&&(i?t.apply(null,i):t.call(null),n.clearImmediate(e))}),e},n.clearImmediate="function"==typeof i?i:function(t){delete a[t]}}).call(this)}).call(this,t("timers").setImmediate,t("timers").clearImmediate)},{"process/browser.js":44,timers:89}],90:[function(t,e,n){(function(t){(function(){function n(e){try{if(!t.localStorage)return!1}catch(i){return!1}var n=t.localStorage[e];return null!=n&&"true"===String(n).toLowerCase()}e.exports=function(t,e){if(n("noDeprecation"))return t;var i=!1;return function(){if(!i){if(n("throwDeprecation"))throw new Error(e);n("traceDeprecation")?console.trace(e):console.warn(e),i=!0}return t.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],91:[function(t,e,n){"use strict";e.exports=function(t){t.prototype[Symbol.iterator]=function*(){for(let t=this.head;t;t=t.next)yield t.value}}},{}],92:[function(t,e,n){"use strict";function i(t){var e=this;if(e instanceof i||(e=new i),e.tail=null,e.head=null,e.length=0,t&&"function"==typeof t.forEach)t.forEach(function(t){e.push(t)});else if(arguments.length>0)for(var n=0,r=arguments.length;n1)n=e;else{if(!this.head)throw new TypeError("Reduce of empty list with no initial value");i=this.head.next,n=this.head.value}for(var r=0;null!==i;r++)n=t(n,i.value,r),i=i.next;return n},i.prototype.reduceReverse=function(t,e){var n,i=this.tail;if(arguments.length>1)n=e;else{if(!this.tail)throw new TypeError("Reduce of empty list with no initial value");i=this.tail.prev,n=this.tail.value}for(var r=this.length-1;null!==i;r--)n=t(n,i.value,r),i=i.prev;return n},i.prototype.toArray=function(){for(var t=new Array(this.length),e=0,n=this.head;null!==n;e++)t[e]=n.value,n=n.next;return t},i.prototype.toArrayReverse=function(){for(var t=new Array(this.length),e=0,n=this.tail;null!==n;e++)t[e]=n.value,n=n.prev;return t},i.prototype.slice=function(t,e){(e=e||this.length)<0&&(e+=this.length),(t=t||0)<0&&(t+=this.length);var n=new i;if(ethis.length&&(e=this.length);for(var r=0,s=this.head;null!==s&&rthis.length&&(e=this.length);for(var r=this.length,s=this.tail;null!==s&&r>e;r--)s=s.prev;for(;null!==s&&r>t;r--,s=s.prev)n.push(s.value);return n},i.prototype.splice=function(t,e,...n){t>this.length&&(t=this.length-1),t<0&&(t=this.length+t);for(var i=0,s=this.head;null!==s&&i{return(t=n||(n={})).typeOfFunction="function",t.boolTrue=!0,n;var t})();function i(t,e,i){if(!i||typeof i.value!==n.typeOfFunction)throw new TypeError("Only methods can be decorated with @bind. <"+e+"> is not a method!");return{configurable:n.boolTrue,get:function(){var t=i.value.bind(this);return Object.defineProperty(this,e,{value:t,configurable:n.boolTrue,writable:n.boolTrue}),t}}}e.ak=i,e.ZP=i},97266:function(t,e,n){t.exports={ResizeSensor:n(69835),ElementQueries:n(54845)}},54845:function(t,e,n){"use strict";var i,r,s;"undefined"!=typeof window&&window,r=[n(69835)],void 0!==(s="function"==typeof(i=function(t){var e=function(){var e,n={},i=[];function r(t){t||(t=document.documentElement);var e=window.getComputedStyle(t,null).fontSize;return parseFloat(e)||16}function s(t,e){var n=e.split(/\d/),i=n[n.length-1];switch(e=parseFloat(e),i){case"px":return e;case"em":return e*r(t);case"rem":return e*r();case"vw":return e*document.documentElement.clientWidth/100;case"vh":return e*document.documentElement.clientHeight/100;case"vmin":case"vmax":var s=document.documentElement.clientWidth/100,o=document.documentElement.clientHeight/100;return e*(0,Math["vmin"===i?"min":"max"])(s,o);default:return e}}function o(t,e){this.element=t;var i,r,o,a,l,c,u,h,d=["min-width","min-height","max-width","max-height"];this.call=function(){for(i in o=function(t){if(!t.getBoundingClientRect)return{width:t.offsetWidth,height:t.offsetHeight};var e=t.getBoundingClientRect();return{width:Math.round(e.width),height:Math.round(e.height)}}(this.element),c={},n[e])!n[e].hasOwnProperty(i)||(a=s(this.element,(r=n[e][i]).value),l="width"===r.property?o.width:o.height,u="","min"===r.mode&&l>=a&&(u+=r.value),"max"===r.mode&&l<=a&&(u+=r.value),c[h=r.mode+"-"+r.property]||(c[h]=""),u&&-1===(" "+c[h]+" ").indexOf(" "+u+" ")&&(c[h]+=" "+u));for(var t in d)!d.hasOwnProperty(t)||(c[d[t]]?this.element.setAttribute(d[t],c[d[t]].substr(1)):this.element.removeAttribute(d[t]))}}function a(e,n){e.elementQueriesSetupInformation||(e.elementQueriesSetupInformation=new o(e,n)),e.elementQueriesSensor||(e.elementQueriesSensor=new t(e,function(){e.elementQueriesSetupInformation.call()}))}function l(t,r,s,o){if(void 0===n[t]){n[t]=[];var a=i.length;e.innerHTML+="\n"+t+" {animation: 0.1s element-queries;}",e.innerHTML+="\n"+t+" > .resize-sensor {min-width: "+a+"px;}",i.push(t)}n[t].push({mode:r,property:s,value:o})}function c(t){var e;if(document.querySelectorAll&&(e=t?t.querySelectorAll.bind(t):document.querySelectorAll.bind(document)),!e&&"undefined"!=typeof $$&&(e=$$),!e&&"undefined"!=typeof jQuery&&(e=jQuery),!e)throw"No document.querySelectorAll, jQuery or Mootools's $$ found.";return e}function u(e){var n=[],i=[],r=[],s=0,o=-1,a=[];for(var l in e.children)if(e.children.hasOwnProperty(l)&&e.children[l].tagName&&"img"===e.children[l].tagName.toLowerCase()){n.push(e.children[l]);var c=e.children[l].getAttribute("min-width")||e.children[l].getAttribute("data-min-width"),u=e.children[l].getAttribute("data-src")||e.children[l].getAttribute("url");r.push(u),i.push({minWidth:c}),c?e.children[l].style.display="none":(s=n.length-1,e.children[l].style.display="block")}function h(){var t,l=!1;for(t in n)!n.hasOwnProperty(t)||i[t].minWidth&&e.offsetWidth>i[t].minWidth&&(l=t);if(l||(l=s),o!==l)if(a[l])n[o].style.display="none",n[l].style.display="block",o=l;else{var c=new Image;c.onload=function(){n[l].src=r[l],n[o].style.display="none",n[l].style.display="block",a[l]=!0,o=l},c.src=r[l]}else n[l].src=r[l]}o=s,e.resizeSensorInstance=new t(e,h),h()}var h=/,?[\s\t]*([^,\n]*?)((?:\[[\s\t]*?(?:min|max)-(?:width|height)[\s\t]*?[~$\^]?=[\s\t]*?"[^"]*?"[\s\t]*?])+)([^,\n\s\{]*)/gim,d=/\[[\s\t]*?(min|max)-(width|height)[\s\t]*?[~$\^]?=[\s\t]*?"([^"]*?)"[\s\t]*?]/gim;function p(t){var e,n,i,r;for(t=t.replace(/'/g,'"');null!==(e=h.exec(t));)for(n=e[1]+e[3],i=e[2];null!==(r=d.exec(i));)l(n,r[1],r[2],r[3])}function f(t){var e="";if(t)if("string"==typeof t)(-1!==(t=t.toLowerCase()).indexOf("min-width")||-1!==t.indexOf("max-width"))&&p(t);else for(var n=0,i=t.length;n img, [data-responsive-image] {overflow: hidden; padding: 0; } [responsive-image] > img, [data-responsive-image] > img {width: 100%;}",e.innerHTML+="\n@keyframes element-queries { 0% { visibility: inherit; } }",document.getElementsByTagName("head")[0].appendChild(e),g=!0);for(var r=0,s=document.styleSheets.length;r0&&o.length>r&&!o.warned){o.warned=!0;var a=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=t,a.type=e,a.count=o.length,console&&console.warn&&console.warn(a)}return t}function O(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function T(t,e,n){var i={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},r=O.bind(i);return r.listener=n,i.wrapFn=r,r}function k(t,e,n){var i=t._events;if(void 0===i)return[];var r=i[e];return void 0===r?[]:"function"==typeof r?n?[r.listener||r]:[r]:n?function(t){for(var e=new Array(t.length),n=0;n0&&(s=e[0]),s instanceof Error)throw s;var o=new Error("Unhandled error."+(s?" ("+s.message+")":""));throw o.context=s,o}var a=r[t];if(void 0===a)return!1;if("function"==typeof a)v(a,this,e);else{var l=a.length,c=P(a,l);for(n=0;n=0;s--)if(n[s]===e||n[s].listener===e){o=n[s].listener,r=s;break}if(r<0)return this;0===r?n.shift():function(t,e){for(;e+1=0;i--)this.removeListener(t,e[i]);return this},w.prototype.listeners=function(t){return k(this,t,!0)},w.prototype.rawListeners=function(t){return k(this,t,!1)},w.listenerCount=function(t,e){return"function"==typeof t.listenerCount?t.listenerCount(e):A.call(t,e)},w.prototype.listenerCount=A,w.prototype.eventNames=function(){return this._eventsCount>0?m(this._events):[]},I.prototype.next=function(){if(this.done)return{done:!0};var t=this._next();return t.done&&(this.done=!0),t},"undefined"!=typeof Symbol&&(I.prototype[Symbol.iterator]=function(){return this}),I.of=function(){var t=arguments,e=t.length,n=0;return new I(function(){return n>=e?{done:!0}:{done:!1,value:t[n++]}})},I.empty=function(){var t=new I(null);return t.done=!0,t},I.is=function(t){return t instanceof I||"object"==typeof t&&null!==t&&"function"==typeof t.next};var D=I,R=function(t,e){for(var n,i=arguments.length>1?e:1/0,r=i!==1/0?new Array(i):[],s=0;;){if(s===i)return r;if((n=t.next()).done)return s!==e?r.slice(0,s):r;r[s++]=n.value}},N=function(t){function n(e,n){var i;return(i=t.call(this)||this).name="GraphError",i.message=e||"",i.data=n||{},i}return e(n,t),n}(o(Error)),L=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="InvalidArgumentsGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),j=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="NotFoundGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N),F=function(t){function n(e,i){var r;return(r=t.call(this,e,i)||this).name="UsageGraphError","function"==typeof Error.captureStackTrace&&Error.captureStackTrace(a(r),n.prototype.constructor),r}return e(n,t),n}(N);function B(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.undirectedDegree=0,this.directedSelfLoops=0,this.undirectedSelfLoops=0,this.in={},this.out={},this.undirected={}}function V(t,e){this.key=t,this.attributes=e,this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}}function z(t,e){this.key=t,this.attributes=e,this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}}function U(t,e,n,i,r,s){this.key=e,this.attributes=s,this.undirected=t,this.source=i,this.target=r,this.generatedKey=n}function H(t,e,n,i,r,s,o){var a,l,c="out",u="in";if(e&&(c=u="undirected"),t.multi){if(void 0===(l=(a=s[c])[r])&&(l=new Set,a[r]=l),l.add(n),i===r&&e)return;void 0===(a=o[u])[i]&&(a[i]=l)}else{if(s[c][r]=n,i===r&&e)return;o[u][i]=n}}function $(t,e,n){var i=t.multi,r=n.source,s=n.target,o=r.key,a=s.key,l=r[e?"undirected":"out"],c=e?"undirected":"in";if(a in l)if(i){var u=l[a];1===u.size?(delete l[a],delete s[c][o]):u.delete(n)}else delete l[a];i||delete s[c][o]}V.prototype.upgradeToMixed=function(){this.undirectedDegree=0,this.undirectedSelfLoops=0,this.undirected={}},z.prototype.upgradeToMixed=function(){this.inDegree=0,this.outDegree=0,this.directedSelfLoops=0,this.in={},this.out={}};var G=[{name:function(t){return"get".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes[i]}}},{name:function(t){return"get".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t){var i;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>1){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var r=""+t,s=""+arguments[1];if(!(i=c(this,r,s,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(r,'" - "').concat(s,'").'))}else if(!(i=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&i.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return i.attributes}}},{name:function(t){return"has".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes.hasOwnProperty(i)}}},{name:function(t){return"set".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r,this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"update".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i,r){var s;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>3){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var o=""+t,a=""+i;if(i=arguments[2],r=arguments[3],!(s=c(this,o,a,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(o,'" - "').concat(a,'").'))}else if(!(s=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("function"!=typeof r)throw new L("Graph.".concat(e,": updater should be a function."));if("mixed"!==n&&s.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return s.attributes[i]=r(s.attributes[i]),this.emit("edgeAttributesUpdated",{key:s.key,type:"set",attributes:s.attributes,name:i}),this}}},{name:function(t){return"remove".concat(t,"Attribute")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return delete r.attributes[i],this.emit("edgeAttributesUpdated",{key:r.key,type:"remove",attributes:r.attributes,name:i}),this}}},{name:function(t){return"replace".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return r.attributes=i,this.emit("edgeAttributesUpdated",{key:r.key,type:"replace",attributes:r.attributes}),this}}},{name:function(t){return"merge".concat(t,"Attributes")},attacher:function(t,e,n){t.prototype[e]=function(t,i){var r;if("mixed"!==this.type&&"mixed"!==n&&n!==this.type)throw new F("Graph.".concat(e,": cannot find this type of edges in your ").concat(this.type," graph."));if(arguments.length>2){if(this.multi)throw new F("Graph.".concat(e,": cannot use a {source,target} combo when asking about an edge's attributes in a MultiGraph since we cannot infer the one you want information about."));var s=""+t,o=""+i;if(i=arguments[2],!(r=c(this,s,o,n)))throw new j("Graph.".concat(e,': could not find an edge for the given path ("').concat(s,'" - "').concat(o,'").'))}else if(!(r=this._edges.get(t=""+t)))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" edge in the graph.'));if(!h(i))throw new L("Graph.".concat(e,": provided attributes are not a plain object."));if("mixed"!==n&&r.undirected!==("undirected"===n))throw new j("Graph.".concat(e,': could not find the "').concat(t,'" ').concat(n," edge in the graph."));return l(r.attributes,i),this.emit("edgeAttributesUpdated",{key:r.key,type:"merge",attributes:r.attributes,data:i}),this}}}],W=D,q=function(){var t,e=arguments,n=-1;return new W(function i(){if(!t){if(++n>=e.length)return{done:!0};t=e[n]}var r=t.next();return r.done?(t=null,i()):r})},X=[{name:"edges",type:"mixed"},{name:"inEdges",type:"directed",direction:"in"},{name:"outEdges",type:"directed",direction:"out"},{name:"inboundEdges",type:"mixed",direction:"in"},{name:"outboundEdges",type:"mixed",direction:"out"},{name:"directedEdges",type:"directed"},{name:"undirectedEdges",type:"undirected"}];function Y(t,e){for(var n in e)t.push(e[n].key)}function K(t,e){for(var n in e)e[n].forEach(function(e){return t.push(e.key)})}function Q(t,e,n){for(var i in t)if(i!==n){var r=t[i];e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey)}}function Z(t,e,n){for(var i in t)i!==n&&t[i].forEach(function(t){return e(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function J(t,e,n){for(var i in t)if(i!==n){var r=t[i];if(e(r.key,r.attributes,r.source.key,r.target.key,r.source.attributes,r.target.attributes,r.undirected,r.generatedKey))return!0}return!1}function tt(t,e,n){var i,r,s,o,a;for(var l in t)if(l!==n)for(i=t[l].values();!0!==(r=i.next()).done;)if(o=(s=r.value).source,e(s.key,s.attributes,o.key,(a=s.target).key,o.attributes,a.attributes,s.undirected,s.generatedKey))return!0;return!1}function et(t,e){var n=Object.keys(t),i=n.length,r=null,s=0;return new D(function o(){var a;if(r){var l=r.next();if(l.done)return r=null,s++,o();a=l.value}else{if(s>=i)return{done:!0};var c=n[s];if(c===e)return s++,o();if((a=t[c])instanceof Set)return r=a.values(),o();s++}return{done:!1,value:[a.key,a.attributes,a.source.key,a.target.key,a.source.attributes,a.target.attributes]}})}function nt(t,e,n){var i=e[n];i&&t.push(i.key)}function it(t,e,n){var i=e[n];i&&i.forEach(function(e){return t.push(e.key)})}function rt(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function st(t,e,n){var i=t[e];i&&i.forEach(function(t){return n(t.key,t.attributes,t.source.key,t.target.key,t.source.attributes,t.target.attributes,t.undirected,t.generatedKey)})}function ot(t,e,n){var i=t[e];if(i){var r=i.source,s=i.target;return n(i.key,i.attributes,r.key,s.key,r.attributes,s.attributes,i.undirected,i.generatedKey)}}function at(t,e,n){var i=t[e];if(i){for(var r,s,o=i.values();!0!==(r=o.next()).done;)if(n((s=r.value).key,s.attributes,s.source.key,s.target.key,s.source.attributes,s.target.attributes,s.undirected,s.generatedKey))return!0;return!1}}function lt(t,e){var n=t[e];if(n instanceof Set){var i=n.values();return new D(function(){var t=i.next();if(t.done)return t;var e=t.value;return{done:!1,value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes]}})}return D.of([n.key,n.attributes,n.source.key,n.target.key,n.source.attributes,n.target.attributes])}function ct(t,e){if(0===t.size)return[];if("mixed"===e||e===t.type)return"function"==typeof Array.from?Array.from(t._edges.keys()):R(t._edges.keys(),t._edges.size);for(var n,i,r=new Array("undirected"===e?t.undirectedSize:t.directedSize),s="undirected"===e,o=t._edges.values(),a=0;!0!==(n=o.next()).done;)(i=n.value).undirected===s&&(r[a++]=i.key);return r}function ut(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey)}}function ht(t,e,n){if(0!==t.size)for(var i,r,s="mixed"!==e&&e!==t.type,o="undirected"===e,a=t._edges.values();!0!==(i=a.next()).done;)if(r=i.value,!s||r.undirected===o){var l=r.source,c=r.target;if(n(r.key,r.attributes,l.key,c.key,l.attributes,c.attributes,r.undirected,r.generatedKey))break}}function dt(t,e){if(0===t.size)return D.empty();var n="mixed"!==e&&e!==t.type,i="undirected"===e,r=t._edges.values();return new D(function(){for(var t,e;;){if((t=r.next()).done)return t;if(e=t.value,!n||e.undirected===i)break}return{value:[e.key,e.attributes,e.source.key,e.target.key,e.source.attributes,e.target.attributes],done:!1}})}function pt(t,e,n,i){var r=[],s=t?K:Y;return"undirected"!==e&&("out"!==n&&s(r,i.in),"in"!==n&&s(r,i.out),!n&&i.directedSelfLoops>0&&r.splice(r.lastIndexOf(i.key),1)),"directed"!==e&&s(r,i.undirected),r}function ft(t,e,n,i,r){var s=t?Z:Q;"undirected"!==e&&("out"!==n&&s(i.in,r),"in"!==n&&s(i.out,r,n?null:i.key)),"directed"!==e&&s(i.undirected,r)}function gt(t,e,n,i,r){var s=t?tt:J;"undirected"!==e&&("out"!==n&&s(i.in,r)||"in"!==n&&s(i.out,r,n?null:i.key))||"directed"===e||s(i.undirected,r)}function mt(t,e,n){var i=D.empty();return"undirected"!==t&&("out"!==e&&void 0!==n.in&&(i=q(i,et(n.in))),"in"!==e&&void 0!==n.out&&(i=q(i,et(n.out,e?null:n.key)))),"directed"!==t&&void 0!==n.undirected&&(i=q(i,et(n.undirected))),i}function bt(t,e,n,i,r){var s=e?it:nt,o=[];return"undirected"!==t&&(void 0!==i.in&&"out"!==n&&s(o,i.in,r),void 0!==i.out&&"in"!==n&&s(o,i.out,r),!n&&i.directedSelfLoops>0&&o.splice(o.lastIndexOf(i.key),1)),"directed"!==t&&void 0!==i.undirected&&s(o,i.undirected,r),o}function yt(t,e,n,i,r,s){var o=e?st:rt;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s),i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s)),"directed"!==t&&void 0!==i.undirected&&o(i.undirected,r,s)}function vt(t,e,n,i,r,s){var o=e?at:ot;"undirected"!==t&&(void 0!==i.in&&"out"!==n&&o(i.in,r,s)||i.key!==r&&void 0!==i.out&&"in"!==n&&o(i.out,r,s,n?null:i.key))||"directed"===t||void 0===i.undirected||o(i.undirected,r,s)}function _t(t,e,n,i){var r=D.empty();return"undirected"!==t&&(void 0!==n.in&&"out"!==e&&i in n.in&&(r=q(r,lt(n.in,i))),void 0!==n.out&&"in"!==e&&i in n.out&&(r=q(r,lt(n.out,i)))),"directed"!==t&&void 0!==n.undirected&&i in n.undirected&&(r=q(r,lt(n.undirected,i))),r}var wt=[{name:"neighbors",type:"mixed"},{name:"inNeighbors",type:"directed",direction:"in"},{name:"outNeighbors",type:"directed",direction:"out"},{name:"inboundNeighbors",type:"mixed",direction:"in"},{name:"outboundNeighbors",type:"mixed",direction:"out"},{name:"directedNeighbors",type:"directed"},{name:"undirectedNeighbors",type:"undirected"}];function xt(t,e){if(void 0!==e)for(var n in e)t.add(n)}function St(t,e,n){if("mixed"!==t){if("undirected"===t)return Object.keys(n.undirected);if("string"==typeof e)return Object.keys(n[e])}var i=new Set;return"undirected"!==t&&("out"!==e&&xt(i,n.in),"in"!==e&&xt(i,n.out)),"directed"!==t&&xt(i,n.undirected),R(i.values(),i.size)}function Et(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;n(o.key,o.attributes)}}function Ct(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;t.has(a.key)||(t.add(a.key),i(a.key,a.attributes))}}function Ot(t,e,n){for(var i in e){var r=e[i];r instanceof Set&&(r=r.values().next().value);var s=r.source,o=s===t?r.target:s;if(n(o.key,o.attributes))return!0}return!1}function Tt(t,e,n,i){for(var r in n){var s=n[r];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===e?s.target:o;if(!t.has(a.key)&&(t.add(a.key),i(a.key,a.attributes)))return!0}return!1}function kt(t,e){var n=Object.keys(e),i=n.length,r=0;return new D(function(){if(r>=i)return{done:!0};var s=e[n[r++]];s instanceof Set&&(s=s.values().next().value);var o=s.source,a=o===t?s.target:o;return{done:!1,value:[a.key,a.attributes]}})}function At(t,e,n){var i=Object.keys(n),r=i.length,s=0;return new D(function o(){if(s>=r)return{done:!0};var a=n[i[s++]];a instanceof Set&&(a=a.values().next().value);var l=a.source,c=l===e?a.target:l;return t.has(c.key)?o():(t.add(c.key),{done:!1,value:[c.key,c.attributes]})})}function Pt(t,e,n,i,r){var s=t._nodes.get(i);if("undirected"!==e){if("out"!==n&&void 0!==s.in)for(var o in s.in)if(o===r)return!0;if("in"!==n&&void 0!==s.out)for(var a in s.out)if(a===r)return!0}if("directed"!==e&&void 0!==s.undirected)for(var l in s.undirected)if(l===r)return!0;return!1}function Mt(t,e,n){for(var i,r,s,o,a,l,c,u=e._nodes.values(),h=e.type;!0!==(i=u.next()).done;){if(r=i.value,"undirected"!==h)for(s in o=r.out)if(l=(a=o[s]).target,c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return;if("directed"!==h)for(s in o=r.undirected)if((l=(a=o[s]).target).key!==s&&(l=a.source),c=n(r.key,l.key,r.attributes,l.attributes,a.key,a.attributes,a.undirected,a.generatedKey),t&&c)return}}function It(t,e,n){for(var i,r,s,o,a,l,c,u,h,d=e._nodes.values(),p=e.type;!0!==(i=d.next()).done;){if(r=i.value,"undirected"!==p)for(s in l=r.out)for(o=l[s].values();!0!==(a=o.next()).done;)if(u=(c=a.value).target,h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return;if("directed"!==p)for(s in l=r.undirected)for(o=l[s].values();!0!==(a=o.next()).done;)if((u=(c=a.value).target).key!==s&&(u=c.source),h=n(r.key,u.key,r.attributes,u.attributes,c.key,c.attributes,c.undirected,c.generatedKey),t&&h)return}}function Dt(t,e){var n={key:t};return d(e.attributes)||(n.attributes=l({},e.attributes)),n}function Rt(t,e){var n={source:e.source.key,target:e.target.key};return e.generatedKey||(n.key=t),d(e.attributes)||(n.attributes=l({},e.attributes)),e.undirected&&(n.undirected=!0),n}function Nt(t){return h(t)?"key"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?null:"invalid-attributes":"no-key":"not-object"}function Lt(t){return h(t)?"source"in t?"target"in t?!("attributes"in t)||h(t.attributes)&&null!==t.attributes?"undirected"in t&&"boolean"!=typeof t.undirected?"invalid-undirected":null:"invalid-attributes":"no-target":"no-source":"not-object"}var jt=new Set(["directed","undirected","mixed"]),Ft=new Set(["domain","_events","_eventsCount","_maxListeners"]),Bt={allowSelfLoops:!0,edgeKeyGenerator:null,multi:!1,type:"mixed"};function Vt(t,e,n){var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}function zt(t,e,n,i,r,s,o,a){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a&&!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));if(s=""+s,o=""+o,a=a||{},!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var l=t._nodes.get(s),c=t._nodes.get(o);if(!l)throw new j("Graph.".concat(e,': source node "').concat(s,'" not found.'));if(!c)throw new j("Graph.".concat(e,': target node "').concat(o,'" not found.'));var u={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(u)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));if(!t.multi&&(i?void 0!==l.undirected[o]:void 0!==l.out[o]))throw new F("Graph.".concat(e,': an edge linking "').concat(s,'" to "').concat(o,"\" already exists. If you really want to add multiple edges linking those nodes, you should create a multi graph by using the 'multi' option."));var d=new U(i,r,n,l,c,a);return t._edges.set(r,d),s===o?i?(l.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(l.directedSelfLoops++,t._directedSelfLoopCount++):i?(l.undirectedDegree++,c.undirectedDegree++):(l.outDegree++,c.inDegree++),H(t,i,d,s,o,l,c),i?t._undirectedSize++:t._directedSize++,u.key=r,t.emit("edgeAdded",u),r}function Ut(t,e,n,i,r,s,o,a,c){if(!i&&"undirected"===t.type)throw new F("Graph.".concat(e,": you cannot add a directed edge to an undirected graph. Use the #.addEdge or #.addUndirectedEdge instead."));if(i&&"directed"===t.type)throw new F("Graph.".concat(e,": you cannot add an undirected edge to a directed graph. Use the #.addEdge or #.addDirectedEdge instead."));if(a)if(c){if("function"!=typeof a)throw new L("Graph.".concat(e,': invalid updater function. Expecting a function but got "').concat(a,'"'))}else if(!h(a))throw new L("Graph.".concat(e,': invalid attributes. Expecting an object but got "').concat(a,'"'));var u;if(s=""+s,o=""+o,c&&(u=a,a=void 0),!t.allowSelfLoops&&s===o)throw new F("Graph.".concat(e,': source & target are the same ("').concat(s,"\"), thus creating a loop explicitly forbidden by this graph 'allowSelfLoops' option set to false."));var d,p,f=t._nodes.get(s),g=t._nodes.get(o);if(!n&&(d=t._edges.get(r))){if(d.source.key!==s||d.target.key!==o||i&&(d.source.key!==o||d.target.key!==s))throw new F("Graph.".concat(e,': inconsistency detected when attempting to merge the "').concat(r,'" edge with "').concat(s,'" source & "').concat(o,'" target vs. ("').concat(d.source.key,'", "').concat(d.target.key,'").'));p=d}if(p||t.multi||!f||(p=i?f.undirected[o]:f.out[o]),p)return(c?u:a)?(c?(p.attributes=u(p.attributes),t.emit("edgeAttributesUpdated",{type:"replace",key:p.key,attributes:p.attributes})):(l(p.attributes,a),t.emit("edgeAttributesUpdated",{type:"merge",key:p.key,attributes:p.attributes,data:a})),p.key):p.key;a=a||{},c&&u&&(a=u(a));var m={key:null,undirected:i,source:s,target:o,attributes:a};if(n&&(r=t._edgeKeyGenerator(m)),t._edges.has(r=""+r))throw new F("Graph.".concat(e,': the "').concat(r,'" edge already exists in the graph.'));return f||(f=Vt(t,s,{}),s===o&&(g=f)),g||(g=Vt(t,o,{})),d=new U(i,r,n,f,g,a),t._edges.set(r,d),s===o?i?(f.undirectedSelfLoops++,t._undirectedSelfLoopCount++):(f.directedSelfLoops++,t._directedSelfLoopCount++):i?(f.undirectedDegree++,g.undirectedDegree++):(f.outDegree++,g.inDegree++),H(t,i,d,s,o,f,g),i?t._undirectedSize++:t._directedSize++,m.key=r,t.emit("edgeAdded",m),r}var Ht,$t=function(t){function n(e){var n;if(n=t.call(this)||this,(e=l({},Bt,e)).edgeKeyGenerator&&"function"!=typeof e.edgeKeyGenerator)throw new L("Graph.constructor: invalid 'edgeKeyGenerator' option. Expecting a function but got \"".concat(e.edgeKeyGenerator,'".'));if("boolean"!=typeof e.multi)throw new L("Graph.constructor: invalid 'multi' option. Expecting a boolean but got \"".concat(e.multi,'".'));if(!jt.has(e.type))throw new L('Graph.constructor: invalid \'type\' option. Should be one of "mixed", "directed" or "undirected" but got "'.concat(e.type,'".'));if("boolean"!=typeof e.allowSelfLoops)throw new L("Graph.constructor: invalid 'allowSelfLoops' option. Expecting a boolean but got \"".concat(e.allowSelfLoops,'".'));var i,r="mixed"===e.type?B:"directed"===e.type?V:z;return p(a(n),"NodeDataClass",r),p(a(n),"_attributes",{}),p(a(n),"_nodes",new Map),p(a(n),"_edges",new Map),p(a(n),"_directedSize",0),p(a(n),"_undirectedSize",0),p(a(n),"_directedSelfLoopCount",0),p(a(n),"_undirectedSelfLoopCount",0),p(a(n),"_edgeKeyGenerator",e.edgeKeyGenerator||(i=0,function(){return i++})),p(a(n),"_options",e),Ft.forEach(function(t){return p(a(n),t,n[t])}),f(a(n),"order",function(){return n._nodes.size}),f(a(n),"size",function(){return n._edges.size}),f(a(n),"directedSize",function(){return n._directedSize}),f(a(n),"undirectedSize",function(){return n._undirectedSize}),f(a(n),"selfLoopCount",function(){return n._directedSelfLoopCount+n._undirectedSelfLoopCount}),f(a(n),"directedSelfLoopCount",function(){return n._directedSelfLoopCount}),f(a(n),"undirectedSelfLoopCount",function(){return n._undirectedSelfLoopCount}),f(a(n),"multi",n._options.multi),f(a(n),"type",n._options.type),f(a(n),"allowSelfLoops",n._options.allowSelfLoops),f(a(n),"implementation",function(){return"graphology"}),n}e(n,t);var i=n.prototype;return i.hasNode=function(t){return this._nodes.has(""+t)},i.hasDirectedEdge=function(t,e){if("undirected"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&!n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.out[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasUndirectedEdge=function(t,e){if("directed"===this.type)return!1;if(1===arguments.length){var n=this._edges.get(""+t);return!!n&&n.undirected}if(2===arguments.length){e=""+e;var i=this._nodes.get(t=""+t);if(!i)return!1;var r=i.undirected[e];return!(!r||this.multi&&!r.size)}throw new L("Graph.hasDirectedEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.hasEdge=function(t,e){if(1===arguments.length)return this._edges.has(""+t);if(2===arguments.length){e=""+e;var n=this._nodes.get(t=""+t);if(!n)return!1;var i=void 0!==n.out&&n.out[e];return i||(i=void 0!==n.undirected&&n.undirected[e]),!(!i||this.multi&&!i.size)}throw new L("Graph.hasEdge: invalid arity (".concat(arguments.length,", instead of 1 or 2). You can either ask for an edge id or for the existence of an edge between a source & a target."))},i.directedEdge=function(t,e){if("undirected"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.directedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.directedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.directedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.directedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||void 0;return i?i.key:void 0}},i.undirectedEdge=function(t,e){if("directed"!==this.type){if(t=""+t,e=""+e,this.multi)throw new F("Graph.undirectedEdge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.undirectedEdges instead.");var n=this._nodes.get(t);if(!n)throw new j('Graph.undirectedEdge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.undirectedEdge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.undirected&&n.undirected[e]||void 0;return i?i.key:void 0}},i.edge=function(t,e){if(this.multi)throw new F("Graph.edge: this method is irrelevant with multigraphs since there might be multiple edges between source & target. See #.edges instead.");e=""+e;var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.edge: could not find the "'.concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j('Graph.edge: could not find the "'.concat(e,'" target node in the graph.'));var i=n.out&&n.out[e]||n.undirected&&n.undirected[e]||void 0;if(i)return i.key},i.inDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.inDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.inDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.inDegree+(e?n.directedSelfLoops:0)},i.outDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.outDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.outDegree: could not find the "'.concat(t,'" node in the graph.'));return"undirected"===this.type?0:n.outDegree+(e?n.directedSelfLoops:0)},i.directedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.directedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.directedDegree: could not find the "'.concat(t,'" node in the graph.'));if("undirected"===this.type)return 0;var i=e?n.directedSelfLoops:0;return n.inDegree+i+(n.outDegree+i)},i.undirectedDegree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.undirectedDegree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.undirectedDegree: could not find the "'.concat(t,'" node in the graph.'));return"directed"===this.type?0:n.undirectedDegree+2*(e?n.undirectedSelfLoops:0)},i.degree=function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];if("boolean"!=typeof e)throw new L('Graph.degree: Expecting a boolean but got "'.concat(e,'" for the second parameter (allowing self-loops to be counted).'));var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.degree: could not find the "'.concat(t,'" node in the graph.'));var i=0,r=0;return"directed"!==this.type&&(e&&(r=n.undirectedSelfLoops),i+=n.undirectedDegree+2*r),"undirected"!==this.type&&(e&&(r=n.directedSelfLoops),i+=n.inDegree+n.outDegree+2*r),i},i.source=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.source: could not find the "'.concat(t,'" edge in the graph.'));return e.source.key},i.target=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.target: could not find the "'.concat(t,'" edge in the graph.'));return e.target.key},i.extremities=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.extremities: could not find the "'.concat(t,'" edge in the graph.'));return[e.source.key,e.target.key]},i.opposite=function(t,e){t=""+t;var n=this._edges.get(e=""+e);if(!n)throw new j('Graph.opposite: could not find the "'.concat(e,'" edge in the graph.'));var i=n.source.key,r=n.target.key;if(t!==i&&t!==r)throw new j('Graph.opposite: the "'.concat(t,'" node is not attached to the "').concat(e,'" edge (').concat(i,", ").concat(r,")."));return t===i?r:i},i.hasExtremity=function(t,e){e=""+e;var n=this._edges.get(t=""+t);if(!n)throw new j('Graph.hasExtremity: could not find the "'.concat(t,'" edge in the graph.'));return n.source.key===e||n.target.key===e},i.isUndirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isUndirected: could not find the "'.concat(t,'" edge in the graph.'));return e.undirected},i.isDirected=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isDirected: could not find the "'.concat(t,'" edge in the graph.'));return!e.undirected},i.isSelfLoop=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.isSelfLoop: could not find the "'.concat(t,'" edge in the graph.'));return e.source===e.target},i.hasGeneratedKey=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.hasGeneratedKey: could not find the "'.concat(t,'" edge in the graph.'));return e.generatedKey},i.addNode=function(t,e){return function(t,e,n){if(n&&!h(n))throw new L('Graph.addNode: invalid attributes. Expecting an object but got "'.concat(n,'"'));if(n=n||{},t._nodes.has(e=""+e))throw new F('Graph.addNode: the "'.concat(e,'" node already exist in the graph.'));var i=new t.NodeDataClass(e,n);return t._nodes.set(e,i),t.emit("nodeAdded",{key:e,attributes:n}),i}(this,t,e).key},i.mergeNode=function(t,e){if(e&&!h(e))throw new L('Graph.mergeNode: invalid attributes. Expecting an object but got "'.concat(e,'"'));e=e||{};var n=this._nodes.get(t=""+t);return n?(e&&(l(n.attributes,e),this.emit("nodeAttributesUpdated",{type:"merge",key:t,attributes:n.attributes,data:e})),t):(n=new this.NodeDataClass(t,e),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:e}),t)},i.updateNode=function(t,e){if(e&&"function"!=typeof e)throw new L('Graph.updateNode: invalid updater function. Expecting a function but got "'.concat(e,'"'));var n=this._nodes.get(t=""+t);if(n)return e&&(n.attributes=e(n.attributes),this.emit("nodeAttributesUpdated",{type:"replace",key:t,attributes:n.attributes})),t;var i=e?e({}):{};return n=new this.NodeDataClass(t,i),this._nodes.set(t,n),this.emit("nodeAdded",{key:t,attributes:i}),t},i.dropNode=function(t){var e=this,n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.dropNode: could not find the "'.concat(t,'" node in the graph.'));this.forEachEdge(t,function(t){e.dropEdge(t)}),this._nodes.delete(t),this.emit("nodeDropped",{key:t,attributes:n.attributes})},i.dropEdge=function(t){var e;if(arguments.length>1){var n=""+arguments[0],i=""+arguments[1];if(!(e=c(this,n,i,this.type)))throw new j('Graph.dropEdge: could not find the "'.concat(n,'" -> "').concat(i,'" edge in the graph.'))}else if(!(e=this._edges.get(t=""+t)))throw new j('Graph.dropEdge: could not find the "'.concat(t,'" edge in the graph.'));this._edges.delete(e.key);var r=e.source,s=e.target,o=e.attributes,a=e.undirected;return r===s?a?(r.undirectedSelfLoops--,this._undirectedSelfLoopCount--):(r.directedSelfLoops--,this._directedSelfLoopCount--):a?(r.undirectedDegree--,s.undirectedDegree--):(r.outDegree--,s.inDegree--),$(this,a,e),a?this._undirectedSize--:this._directedSize--,this.emit("edgeDropped",{key:t,attributes:o,source:r.key,target:s.key,undirected:a}),this},i.clear=function(){this._edges.clear(),this._nodes.clear(),this.emit("cleared")},i.clearEdges=function(){this._edges.clear(),this.clearIndex(),this.emit("edgesCleared")},i.getAttribute=function(t){return this._attributes[t]},i.getAttributes=function(){return this._attributes},i.hasAttribute=function(t){return this._attributes.hasOwnProperty(t)},i.setAttribute=function(t,e){return this._attributes[t]=e,this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.updateAttribute=function(t,e){if("function"!=typeof e)throw new L("Graph.updateAttribute: updater should be a function.");return this._attributes[t]=e(this._attributes[t]),this.emit("attributesUpdated",{type:"set",attributes:this._attributes,name:t}),this},i.removeAttribute=function(t){return delete this._attributes[t],this.emit("attributesUpdated",{type:"remove",attributes:this._attributes,name:t}),this},i.replaceAttributes=function(t){if(!h(t))throw new L("Graph.replaceAttributes: provided attributes are not a plain object.");return this._attributes=t,this.emit("attributesUpdated",{type:"replace",attributes:this._attributes}),this},i.mergeAttributes=function(t){if(!h(t))throw new L("Graph.mergeAttributes: provided attributes are not a plain object.");return l(this._attributes,t),this.emit("attributesUpdated",{type:"merge",attributes:this._attributes,data:t}),this},i.getNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.getNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes[e]},i.getNodeAttributes=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.getNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));return e.attributes},i.hasNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return n.attributes.hasOwnProperty(e)},i.setNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.setNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.setNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or value, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");return i.attributes[e]=n,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.updateNodeAttribute=function(t,e,n){var i=this._nodes.get(t=""+t);if(!i)throw new j('Graph.updateNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));if(arguments.length<3)throw new L("Graph.updateNodeAttribute: not enough arguments. Either you forgot to pass the attribute's name or updater, or you meant to use #.replaceNodeAttributes / #.mergeNodeAttributes instead.");if("function"!=typeof n)throw new L("Graph.updateAttribute: updater should be a function.");var r=i.attributes,s=n(r[e]);return r[e]=s,this.emit("nodeAttributesUpdated",{key:t,type:"set",attributes:i.attributes,name:e}),this},i.removeNodeAttribute=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.hasNodeAttribute: could not find the "'.concat(t,'" node in the graph.'));return delete n.attributes[e],this.emit("nodeAttributesUpdated",{key:t,type:"remove",attributes:n.attributes,name:e}),this},i.replaceNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.replaceNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.replaceNodeAttributes: provided attributes are not a plain object.");return n.attributes=e,this.emit("nodeAttributesUpdated",{key:t,type:"replace",attributes:n.attributes}),this},i.mergeNodeAttributes=function(t,e){var n=this._nodes.get(t=""+t);if(!n)throw new j('Graph.mergeNodeAttributes: could not find the "'.concat(t,'" node in the graph.'));if(!h(e))throw new L("Graph.mergeNodeAttributes: provided attributes are not a plain object.");return l(n.attributes,e),this.emit("nodeAttributesUpdated",{key:t,type:"merge",attributes:n.attributes,data:e}),this},i.updateEachNodeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachNodeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachNodeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._nodes.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachNodeAttributesUpdated",{hints:e||null})},i.updateEachEdgeAttributes=function(t,e){if("function"!=typeof t)throw new L("Graph.updateEachEdgeAttributes: expecting an updater function.");if(e&&!g(e))throw new L("Graph.updateEachEdgeAttributes: invalid hints. Expecting an object having the following shape: {attributes?: [string]}");for(var n,i,r=this._edges.values();!0!==(n=r.next()).done;)(i=n.value).attributes=t(i.key,i.attributes);this.emit("eachEdgeAttributesUpdated",{hints:e||null})},i.forEach=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!1,this,t):Mt(!1,this,t)},i.forEachUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEach: expecting a callback.");this.multi?It(!0,this,t):Mt(!0,this,t)},i.adjacency=function(){return this.multi?(p=(l=this)._nodes.values(),f=l.type,g="outer",m=null,new D(function t(){var e;if("outer"===g)return!0===(e=p.next()).done?e:(c=e.value,g="directed",t());if("directed"===g)return"undirected"===f?(g="undirected",t()):(h=c.out,u=Object.keys(c.out),d=0,g="inner-directed",t());if("undirected"===g){if("directed"===f)return g="outer",t();h=c.undirected,u=Object.keys(c.undirected),d=0,g="inner-undirected"}if(!m&&d>=u.length)return g="inner-undirected"===g?"outer":"undirected",t();if(!m){var n=u[d++];return m=h[n].values(),t()}if((e=m.next()).done)return m=null,t();var i=e.value,r=i.target;return"inner-undirected"===g&&r.key===c.key&&(r=i.source),{done:!1,value:[c.key,r.key,c.attributes,r.attributes,i.key,i.attributes]}})):(s=(t=this)._nodes.values(),o=t.type,a="outer",new D(function t(){var l;if("outer"===a)return!0===(l=s.next()).done?l:(e=l.value,a="directed",t());if("directed"===a)return"undirected"===o?(a="undirected",t()):(i=e.out,n=Object.keys(e.out),r=0,a="inner-directed",t());if("undirected"===a){if("directed"===o)return a="outer",t();i=e.undirected,n=Object.keys(e.undirected),r=0,a="inner-undirected"}if(r>=n.length)return a="inner-undirected"===a?"outer":"undirected",t();var c=n[r++],u=i[c],h=u.target;return"inner-undirected"===a&&h.key===e.key&&(h=u.source),{done:!1,value:[e.key,h.key,e.attributes,h.attributes,u.key,u.attributes]}}));var t,e,n,i,r,s,o,a,l,c,u,h,d,p,f,g,m},i.nodes=function(){return"function"==typeof Array.from?Array.from(this._nodes.keys()):R(this._nodes.keys(),this._nodes.size)},i.forEachNode=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");this._nodes.forEach(function(e,n){t(n,e.attributes)})},i.forEachNodeUntil=function(t){if("function"!=typeof t)throw new L("Graph.forEachNode: expecting a callback.");for(var e,n,i=this._nodes.values();!0!==(e=i.next())&&!t((n=e.value).key,n.attributes););},i.nodeEntries=function(){var t=this._nodes.values();return new D(function(){var e=t.next();if(e.done)return e;var n=e.value;return{value:[n.key,n.attributes],done:!1}})},i.exportNode=function(t){var e=this._nodes.get(t=""+t);if(!e)throw new j('Graph.exportNode: could not find the "'.concat(t,'" node in the graph.'));return Dt(t,e)},i.exportEdge=function(t){var e=this._edges.get(t=""+t);if(!e)throw new j('Graph.exportEdge: could not find the "'.concat(t,'" edge in the graph.'));return Rt(t,e)},i.export=function(){var t=new Array(this._nodes.size),e=0;this._nodes.forEach(function(n,i){t[e++]=Dt(i,n)});var n=new Array(this._edges.size);return e=0,this._edges.forEach(function(t,i){n[e++]=Rt(i,t)}),{attributes:this.getAttributes(),nodes:t,edges:n,options:{type:this.type,multi:this.multi,allowSelfLoops:this.allowSelfLoops}}},i.importNode=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Nt(t);if(n){if("not-object"===n)throw new L('Graph.importNode: invalid serialized node. A serialized node should be a plain object with at least a "key" property.');if("no-key"===n)throw new L("Graph.importNode: no key provided.");if("invalid-attributes"===n)throw new L("Graph.importNode: invalid attributes. Attributes should be a plain object, null or omitted.")}var i=t.key,r=t.attributes,s=void 0===r?{}:r;return e?this.mergeNode(i,s):this.addNode(i,s),this},i.importEdge=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Lt(t);if(n){if("not-object"===n)throw new L('Graph.importEdge: invalid serialized edge. A serialized edge should be a plain object with at least a "source" & "target" property.');if("no-source"===n)throw new L("Graph.importEdge: missing souce.");if("no-target"===n)throw new L("Graph.importEdge: missing target.");if("invalid-attributes"===n)throw new L("Graph.importEdge: invalid attributes. Attributes should be a plain object, null or omitted.");if("invalid-undirected"===n)throw new L("Graph.importEdge: invalid undirected. Undirected should be boolean or omitted.")}var i=t.source,r=t.target,s=t.attributes,o=void 0===s?{}:s,a=t.undirected,l=void 0!==a&&a;return"key"in t?(e?l?this.mergeUndirectedEdgeWithKey:this.mergeDirectedEdgeWithKey:l?this.addUndirectedEdgeWithKey:this.addDirectedEdgeWithKey).call(this,t.key,i,r,o):(e?l?this.mergeUndirectedEdge:this.mergeDirectedEdge:l?this.addUndirectedEdge:this.addDirectedEdge).call(this,i,r,o),this},i.import=function(t){var e,n,i,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(u(t))return this.import(t.export(),r),this;if(!h(t))throw new L("Graph.import: invalid argument. Expecting a serialized graph or, alternatively, a Graph instance.");if(t.attributes){if(!h(t.attributes))throw new L("Graph.import: invalid attributes. Expecting a plain object.");r?this.mergeAttributes(t.attributes):this.replaceAttributes(t.attributes)}if(t.nodes){if(i=t.nodes,!Array.isArray(i))throw new L("Graph.import: invalid nodes. Expecting an array.");for(e=0,n=i.length;en)){var o=new Set;o.add(e.undirected[s]),e.undirected[s]=o,t._nodes.get(s).undirected[n]=o}})),this;var t},i.clearIndex=function(){return this._nodes.forEach(function(t){void 0!==t.in&&(t.in={},t.out={}),void 0!==t.undirected&&(t.undirected={})}),this},i.toJSON=function(){return this.export()},i.toString=function(){return"[object Graph]"},i.inspect=function(){var t=this,e={};this._nodes.forEach(function(t,n){e[n]=t.attributes});var n={},i={};this._edges.forEach(function(e,r){var s=e.undirected?"--":"->",o="",a="(".concat(e.source.key,")").concat(s,"(").concat(e.target.key,")");e.generatedKey?t.multi&&(void 0===i[a]?i[a]=0:i[a]++,o+="".concat(i[a],". ")):o+="[".concat(r,"]: "),n[o+=a]=e.attributes});var r={};for(var s in this)this.hasOwnProperty(s)&&!Ft.has(s)&&"function"!=typeof this[s]&&(r[s]=this[s]);return r.attributes=this._attributes,r.nodes=e,r.edges=n,p(r,"constructor",this.constructor),r},n}(b.exports.EventEmitter);"undefined"!=typeof Symbol&&($t.prototype[Symbol.for("nodejs.util.inspect.custom")]=$t.prototype.inspect),[{name:function(t){return"".concat(t,"Edge")},generateKey:!0},{name:function(t){return"".concat(t,"DirectedEdge")},generateKey:!0,type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdge")},generateKey:!0,type:"undirected"},{name:function(t){return"".concat(t,"EdgeWithKey")}},{name:function(t){return"".concat(t,"DirectedEdgeWithKey")},type:"directed"},{name:function(t){return"".concat(t,"UndirectedEdgeWithKey")},type:"undirected"}].forEach(function(t){["add","merge","update"].forEach(function(e){var n=t.name(e),i="add"===e?zt:Ut;$t.prototype[n]=t.generateKey?function(r,s,o){return i(this,n,!0,"undirected"===(t.type||this.type),null,r,s,o,"update"===e)}:function(r,s,o,a){return i(this,n,!1,"undirected"===(t.type||this.type),r,s,o,a,"update"===e)}})}),"undefined"!=typeof Symbol&&($t.prototype[Symbol.iterator]=$t.prototype.adjacency),Ht=$t,G.forEach(function(t){var e=t.name,n=t.attacher;n(Ht,e("Edge"),"mixed"),n(Ht,e("DirectedEdge"),"directed"),n(Ht,e("UndirectedEdge"),"undirected")}),function(t){X.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t,e){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(!arguments.length)return ct(this,r);if(1===arguments.length){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return pt(this.multi,"mixed"===r?this.type:r,s,n)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" target node in the graph.'));return bt(r,this.multi,s,o,e)}throw new L("Graph.".concat(i,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ut(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return ft(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return yt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e,n){if("mixed"===i||"mixed"===this.type||i===this.type){if(1===arguments.length)return ht(this,i,n=t);if(2===arguments.length){n=e;var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));return gt(this.multi,"mixed"===i?this.type:i,r,o,n)}if(3===arguments.length){e=""+e;var a=this._nodes.get(t=""+t);if(!a)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(s,': could not find the "').concat(e,'" target node in the graph.'));return vt(i,this.multi,r,a,e,n)}throw new L("Graph.".concat(s,": too many arguments (expecting 1, 2 or 3 and got ").concat(arguments.length,")."))}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t,e){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();if(!arguments.length)return dt(this,n);if(1===arguments.length){var s=this._nodes.get(t=""+t);if(!s)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return mt(n,i,s)}if(2===arguments.length){e=""+e;var o=this._nodes.get(t=""+t);if(!o)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" source node in the graph.'));if(!this._nodes.has(e))throw new j("Graph.".concat(r,': could not find the "').concat(e,'" target node in the graph.'));return _t(n,i,o,e)}throw new L("Graph.".concat(r,": too many arguments (expecting 0, 1 or 2 and got ").concat(arguments.length,")."))}}(t,e)})}($t),function(t){wt.forEach(function(e){var n,i,r,s;r=(n=e).type,s=n.direction,t.prototype[i=n.name]=function(t){if("mixed"!==r&&"mixed"!==this.type&&r!==this.type)return[];if(2===arguments.length){var e=""+arguments[0],n=""+arguments[1];if(!this._nodes.has(e))throw new j("Graph.".concat(i,': could not find the "').concat(e,'" node in the graph.'));if(!this._nodes.has(n))throw new j("Graph.".concat(i,': could not find the "').concat(n,'" node in the graph.'));return Pt(this,r,s,e,n)}if(1===arguments.length){var o=this._nodes.get(t=""+t);if(void 0===o)throw new j("Graph.".concat(i,': could not find the "').concat(t,'" node in the graph.'));return St("mixed"===r?this.type:r,s,o)}throw new L("Graph.".concat(i,": invalid number of arguments (expecting 1 or 2 and got ").concat(arguments.length,")."))},function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1);t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Et(n,n.undirected,i);if("string"==typeof e)return Et(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Ct(r,n,n.in,i),"in"!==e&&Ct(r,n,n.out,i)),"directed"!==t&&Ct(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.name,i=e.type,r=e.direction,s="forEach"+n[0].toUpperCase()+n.slice(1,-1)+"Until";t.prototype[s]=function(t,e){if("mixed"===i||"mixed"===this.type||i===this.type){var n=this._nodes.get(t=""+t);if(void 0===n)throw new j("Graph.".concat(s,': could not find the "').concat(t,'" node in the graph.'));!function(t,e,n,i){if("mixed"!==t){if("undirected"===t)return Ot(n,n.undirected,i);if("string"==typeof e)return Ot(n,n[e],i)}var r=new Set;"undirected"!==t&&("out"!==e&&Tt(r,n,n.in,i)||"in"!==e&&Tt(r,n,n.out,i))||"directed"===t||Tt(r,n,n.undirected,i)}("mixed"===i?this.type:i,r,n,e)}}}(t,e),function(t,e){var n=e.type,i=e.direction,r=e.name.slice(0,-1)+"Entries";t.prototype[r]=function(t){if("mixed"!==n&&"mixed"!==this.type&&n!==this.type)return D.empty();var e=this._nodes.get(t=""+t);if(void 0===e)throw new j("Graph.".concat(r,': could not find the "').concat(t,'" node in the graph.'));return function(t,e,n){if("mixed"!==t){if("undirected"===t)return kt(n,n.undirected);if("string"==typeof e)return kt(n,n[e])}var i=D.empty(),r=new Set;return"undirected"!==t&&("out"!==e&&(i=q(i,At(r,n,n.in))),"in"!==e&&(i=q(i,At(r,n,n.out)))),"directed"!==t&&(i=q(i,At(r,n,n.undirected))),i}("mixed"===n?this.type:n,i,e)}}(t,e)})}($t);var Gt=function(t){function n(e){var n=l({type:"directed"},e);if("multi"in n&&!1!==n.multi)throw new L("DirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("directed"!==n.type)throw new L('DirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Wt=function(t){function n(e){var n=l({type:"undirected"},e);if("multi"in n&&!1!==n.multi)throw new L("UndirectedGraph.from: inconsistent indication that the graph should be multi in given options!");if("undirected"!==n.type)throw new L('UndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),qt=function(t){function n(e){var n=l({multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiGraph.from: inconsistent indication that the graph should be simple in given options!");return t.call(this,n)||this}return e(n,t),n}($t),Xt=function(t){function n(e){var n=l({type:"directed",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiDirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("directed"!==n.type)throw new L('MultiDirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t),Yt=function(t){function n(e){var n=l({type:"undirected",multi:!0},e);if("multi"in n&&!0!==n.multi)throw new L("MultiUndirectedGraph.from: inconsistent indication that the graph should be simple in given options!");if("undirected"!==n.type)throw new L('MultiUndirectedGraph.from: inconsistent "'+n.type+'" type in given options!');return t.call(this,n)||this}return e(n,t),n}($t);function Kt(t){t.from=function(e,n){var i=l({},e.options,n),r=new t(i);return r.import(e),r}}return Kt($t),Kt(Gt),Kt(Wt),Kt(qt),Kt(Xt),Kt(Yt),$t.Graph=$t,$t.DirectedGraph=Gt,$t.UndirectedGraph=Wt,$t.MultiGraph=qt,$t.MultiDirectedGraph=Xt,$t.MultiUndirectedGraph=Yt,$t.InvalidArgumentsGraphError=L,$t.NotFoundGraphError=j,$t.UsageGraphError=F,$t}()},11524:function(t,e,n){var i;!function(r,s,o,a){"use strict";var l,c=["","webkit","Moz","MS","ms","o"],u=s.createElement("div"),h=Math.round,d=Math.abs,p=Date.now;function f(t,e,n){return setTimeout(w(t,n),e)}function g(t,e,n){return!!Array.isArray(t)&&(m(t,n[e],n),!0)}function m(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==a)for(i=0;i\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=r.console&&(r.console.warn||r.console.log);return s&&s.call(r.console,i,n),t.apply(this,arguments)}}l="function"!=typeof Object.assign?function(t){if(t===a||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n-1}function k(t){return t.trim().split(/\s+/g)}function A(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;in[e]}):i.sort()),i}function I(t,e){for(var n,i,r=e[0].toUpperCase()+e.slice(1),s=0;s1&&!n.firstMultiple?n.firstMultiple=$(e):1===r&&(n.firstMultiple=!1);var s=n.firstInput,o=n.firstMultiple,l=o?o.center:s.center,c=e.center=G(i);e.timeStamp=p(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=Y(l,c),e.distance=X(l,c),function(t,e){var n=e.center,i=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};(1===e.eventType||4===s.eventType)&&(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y}),e.deltaX=r.x+(n.x-i.x),e.deltaY=r.y+(n.y-i.y)}(n,e),e.offsetDirection=q(e.deltaX,e.deltaY);var u=W(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=u.x,e.overallVelocityY=u.y,e.overallVelocity=d(u.x)>d(u.y)?u.x:u.y,e.scale=o?function(t,e){return X(e[0],e[1],z)/X(t[0],t[1],z)}(o.pointers,i):1,e.rotation=o?function(t,e){return Y(e[1],e[0],z)+Y(t[1],t[0],z)}(o.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,r,s,o=t.lastInterval||e,l=e.timeStamp-o.timeStamp;if(8!=e.eventType&&(l>25||o.velocity===a)){var c=e.deltaX-o.deltaX,u=e.deltaY-o.deltaY,h=W(l,c,u);i=h.x,r=h.y,n=d(h.x)>d(h.y)?h.x:h.y,s=q(c,u),t.lastInterval=e}else n=o.velocity,i=o.velocityX,r=o.velocityY,s=o.direction;e.velocity=n,e.velocityX=i,e.velocityY=r,e.direction=s}(n,e);var h=t.element;O(e.srcEvent.target,h)&&(h=e.srcEvent.target),e.target=h}(t,n),t.emit("hammer.input",n),t.recognize(n),t.session.prevInput=n}function $(t){for(var e=[],n=0;n=d(e)?t<0?2:4:e<0?8:16}function X(t,e,n){n||(n=V);var i=e[n[0]]-t[n[0]],r=e[n[1]]-t[n[1]];return Math.sqrt(i*i+r*r)}function Y(t,e,n){return n||(n=V),180*Math.atan2(e[n[1]]-t[n[1]],e[n[0]]-t[n[0]])/Math.PI}U.prototype={handler:function(){},init:function(){this.evEl&&E(this.element,this.evEl,this.domHandler),this.evTarget&&E(this.target,this.evTarget,this.domHandler),this.evWin&&E(R(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&C(this.element,this.evEl,this.domHandler),this.evTarget&&C(this.target,this.evTarget,this.domHandler),this.evWin&&C(R(this.element),this.evWin,this.domHandler)}};var K={mousedown:1,mousemove:2,mouseup:4},Q="mousedown",Z="mousemove mouseup";function J(){this.evEl=Q,this.evWin=Z,this.pressed=!1,U.apply(this,arguments)}_(J,U,{handler:function(t){var e=K[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:B,srcEvent:t}))}});var tt={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},et={2:F,3:"pen",4:B,5:"kinect"},nt="pointerdown",it="pointermove pointerup pointercancel";function rt(){this.evEl=nt,this.evWin=it,U.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}r.MSPointerEvent&&!r.PointerEvent&&(nt="MSPointerDown",it="MSPointerMove MSPointerUp MSPointerCancel"),_(rt,U,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace("ms",""),r=tt[i],s=et[t.pointerType]||t.pointerType,o=s==F,a=A(e,t.pointerId,"pointerId");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(n=!0),!(a<0)&&(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),n&&e.splice(a,1))}});var st={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ot="touchstart",at="touchstart touchmove touchend touchcancel";function lt(){this.evTarget=ot,this.evWin=at,this.started=!1,U.apply(this,arguments)}function ct(t,e){var n=P(t.touches),i=P(t.changedTouches);return 12&e&&(n=M(n.concat(i),"identifier",!0)),[n,i]}_(lt,U,{handler:function(t){var e=st[t.type];if(1===e&&(this.started=!0),this.started){var n=ct.call(this,t,e);12&e&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:F,srcEvent:t})}}});var ut={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ht="touchstart touchmove touchend touchcancel";function dt(){this.evTarget=ht,this.targetIds={},U.apply(this,arguments)}function pt(t,e){var n=P(t.touches),i=this.targetIds;if(3&e&&1===n.length)return i[n[0].identifier]=!0,[n,n];var r,s,o=P(t.changedTouches),a=[],l=this.target;if(s=n.filter(function(t){return O(t.target,l)}),1===e)for(r=0;r-1&&i.splice(t,1)},2500)}}function bt(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<8&&i(e.options.event+kt(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=8&&i(e.options.event+kt(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;te.threshold&&r&e.direction},attrTest:function(t){return Mt.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=At(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),_(Dt,Mt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){1!==t.scale&&(t.additionalEvent=this.options.event+(t.scale<1?"in":"out")),this._super.emit.call(this,t)}}),_(Rt,Tt,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return["auto"]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distancee.time;if(this._input=t,!i||!n||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=f(function(){this.state=8,this.tryEmit()},e.time,this);else if(4&t.eventType)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=p(),this.manager.emit(this.options.event,this._input)))}}),_(Nt,Mt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[xt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),_(Lt,Mt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return It.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return 30&n?e=t.overallVelocity:6&n?e=t.overallVelocityX:24&n&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&d(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=At(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),_(jt,Tt,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[wt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance"']/g,W=RegExp($.source),q=RegExp(G.source),X=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,J=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,tt=/[\\^$.*+?()[\]{}|]/g,et=RegExp(tt.source),nt=/^\s+/,it=/\s/,rt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,st=/\{\n\/\* \[wrapped with (.+)\] \*/,ot=/,? & /,at=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,lt=/[()=,{}\[\]\/\s]/,ct=/\\(\\)?/g,ut=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,dt=/^[-+]0x[0-9a-f]+$/i,pt=/^0b[01]+$/i,ft=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,mt=/^(?:0|[1-9]\d*)$/,bt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,yt=/($^)/,vt=/['\n\r\u2028\u2029\\]/g,_t="\\ud800-\\udfff",wt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",xt="\\u2700-\\u27bf",St="a-z\\xdf-\\xf6\\xf8-\\xff",Et="A-Z\\xc0-\\xd6\\xd8-\\xde",Ct="\\ufe0e\\ufe0f",Ot="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Tt="["+_t+"]",kt="["+Ot+"]",At="["+wt+"]",Pt="\\d+",Mt="["+xt+"]",It="["+St+"]",Dt="[^"+_t+Ot+Pt+xt+St+Et+"]",Rt="\\ud83c[\\udffb-\\udfff]",Nt="[^"+_t+"]",Lt="(?:\\ud83c[\\udde6-\\uddff]){2}",jt="[\\ud800-\\udbff][\\udc00-\\udfff]",Ft="["+Et+"]",Bt="(?:"+It+"|"+Dt+")",Vt="(?:"+Ft+"|"+Dt+")",zt="(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Ut="(?:['\u2019](?:D|LL|M|RE|S|T|VE))?",Ht="(?:"+At+"|"+Rt+")?",$t="["+Ct+"]?",Gt=$t+Ht+"(?:\\u200d(?:"+[Nt,Lt,jt].join("|")+")"+$t+Ht+")*",Wt="(?:"+[Mt,Lt,jt].join("|")+")"+Gt,qt="(?:"+[Nt+At+"?",At,Lt,jt,Tt].join("|")+")",Xt=RegExp("['\u2019]","g"),Yt=RegExp(At,"g"),Kt=RegExp(Rt+"(?="+Rt+")|"+qt+Gt,"g"),Qt=RegExp([Ft+"?"+It+"+"+zt+"(?="+[kt,Ft,"$"].join("|")+")",Vt+"+"+Ut+"(?="+[kt,Ft+Bt,"$"].join("|")+")",Ft+"?"+Bt+"+"+zt,Ft+"+"+Ut,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pt,Wt].join("|"),"g"),Zt=RegExp("[\\u200d"+_t+wt+Ct+"]"),Jt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,te=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ee=-1,ne={};ne[I]=ne[D]=ne[R]=ne[N]=ne[L]=ne[j]=ne[F]=ne[B]=ne[V]=!0,ne[f]=ne[g]=ne[P]=ne[m]=ne[M]=ne[b]=ne[y]=ne[v]=ne[w]=ne[x]=ne[S]=ne[C]=ne[O]=ne[T]=ne[A]=!1;var ie={};ie[f]=ie[g]=ie[P]=ie[M]=ie[m]=ie[b]=ie[I]=ie[D]=ie[R]=ie[N]=ie[L]=ie[w]=ie[x]=ie[S]=ie[C]=ie[O]=ie[T]=ie[k]=ie[j]=ie[F]=ie[B]=ie[V]=!0,ie[y]=ie[v]=ie[A]=!1;var re={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},se=parseFloat,oe=parseInt,ae="object"==typeof global&&global&&global.Object===Object&&global,le="object"==typeof self&&self&&self.Object===Object&&self,ce=ae||le||Function("return this")(),ue=e&&!e.nodeType&&e,he=ue&&t&&!t.nodeType&&t,de=he&&he.exports===ue,pe=de&&ae.process,fe=function(){try{return he&&he.require&&he.require("util").types||pe&&pe.binding&&pe.binding("util")}catch(t){}}(),ge=fe&&fe.isArrayBuffer,me=fe&&fe.isDate,be=fe&&fe.isMap,ye=fe&&fe.isRegExp,ve=fe&&fe.isSet,_e=fe&&fe.isTypedArray;function we(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function xe(t,e,n,i){for(var r=-1,s=null==t?0:t.length;++r-1}function ke(t,e,n){for(var i=-1,r=null==t?0:t.length;++i-1;);return n}function Qe(t,e){for(var n=t.length;n--&&je(e,t[n],0)>-1;);return n}function Ze(t,e){for(var n=t.length,i=0;n--;)t[n]===e&&++i;return i}var Je=Ue({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),tn=Ue({"&":"&","<":"<",">":">",'"':""","'":"'"});function en(t){return"\\"+re[t]}function nn(t){return Zt.test(t)}function rn(t){var e=-1,n=Array(t.size);return t.forEach(function(t,i){n[++e]=[i,t]}),n}function sn(t,e){return function(n){return t(e(n))}}function on(t,e){for(var n=-1,i=t.length,r=0,s=[];++n",""":'"',"'":"'"}),dn=function t(e){var n,i=(e=null==e?ce:dn.defaults(ce.Object(),e,dn.pick(ce,te))).Array,it=e.Date,_t=e.Error,wt=e.Function,xt=e.Math,St=e.Object,Et=e.RegExp,Ct=e.String,Ot=e.TypeError,Tt=i.prototype,kt=St.prototype,At=e["__core-js_shared__"],Pt=wt.prototype.toString,Mt=kt.hasOwnProperty,It=0,Dt=(n=/[^.]+$/.exec(At&&At.keys&&At.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Rt=kt.toString,Nt=Pt.call(St),Lt=ce._,jt=Et("^"+Pt.call(Mt).replace(tt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Ft=de?e.Buffer:r,Bt=e.Symbol,Vt=e.Uint8Array,zt=Ft?Ft.allocUnsafe:r,Ut=sn(St.getPrototypeOf,St),Ht=St.create,$t=kt.propertyIsEnumerable,Gt=Tt.splice,Wt=Bt?Bt.isConcatSpreadable:r,qt=Bt?Bt.iterator:r,Kt=Bt?Bt.toStringTag:r,Zt=function(){try{var t=os(St,"defineProperty");return t({},"",{}),t}catch(Ms){}}(),re=e.clearTimeout!==ce.clearTimeout&&e.clearTimeout,ae=it&&it.now!==ce.Date.now&&it.now,le=e.setTimeout!==ce.setTimeout&&e.setTimeout,ue=xt.ceil,he=xt.floor,pe=St.getOwnPropertySymbols,fe=Ft?Ft.isBuffer:r,Re=e.isFinite,Ue=Tt.join,pn=sn(St.keys,St),fn=xt.max,gn=xt.min,mn=it.now,bn=e.parseInt,yn=xt.random,vn=Tt.reverse,_n=os(e,"DataView"),wn=os(e,"Map"),xn=os(e,"Promise"),Sn=os(e,"Set"),En=os(e,"WeakMap"),Cn=os(St,"create"),On=En&&new En,Tn={},kn=Ns(_n),An=Ns(wn),Pn=Ns(xn),Mn=Ns(Sn),In=Ns(En),Dn=Bt?Bt.prototype:r,Rn=Dn?Dn.valueOf:r,Nn=Dn?Dn.toString:r;function Ln(t){if(Jo(t)&&!Uo(t)&&!(t instanceof Vn)){if(t instanceof Bn)return t;if(Mt.call(t,"__wrapped__"))return Ls(t)}return new Bn(t)}var jn=function(){function t(){}return function(e){if(!Zo(e))return{};if(Ht)return Ht(e);t.prototype=e;var n=new t;return t.prototype=r,n}}();function Fn(){}function Bn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=r}function Vn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function zn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function ri(t,e,n,i,s,o){var a,l=1&e,c=2&e,u=4&e;if(n&&(a=s?n(t,i,s,o):n(t)),a!==r)return a;if(!Zo(t))return t;var h=Uo(t);if(h){if(a=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Mt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!l)return Er(t,a)}else{var d=cs(t),p=d==v||d==_;if(Wo(t))return yr(t,l);if(d==S||d==f||p&&!s){if(a=c||p?{}:hs(t),!l)return c?function(t,e){return Cr(t,ls(t),e)}(t,function(t,e){return t&&Cr(e,Pa(e),t)}(a,t)):function(t,e){return Cr(t,as(t),e)}(t,ti(a,t))}else{if(!ie[d])return s?t:{};a=function(t,e,n){var i=t.constructor;switch(e){case P:return vr(t);case m:case b:return new i(+t);case M:return function(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case I:case D:case R:case N:case L:case j:case F:case B:case V:return _r(t,n);case w:return new i;case x:case T:return new i(t);case C:return function(t){var e=new t.constructor(t.source,ht.exec(t));return e.lastIndex=t.lastIndex,e}(t);case O:return new i;case k:return function(t){return Rn?St(Rn.call(t)):{}}(t)}}(t,d,l)}}o||(o=new Gn);var g=o.get(t);if(g)return g;o.set(t,a),ra(t)?t.forEach(function(i){a.add(ri(i,e,n,i,t,o))}):ta(t)&&t.forEach(function(i,r){a.set(r,ri(i,e,n,r,t,o))});var y=h?r:(u?c?Jr:Zr:c?Pa:Aa)(t);return Se(y||t,function(i,r){y&&(i=t[r=i]),Qn(a,r,ri(i,e,n,r,t,o))}),a}function si(t,e,n){var i=n.length;if(null==t)return!i;for(t=St(t);i--;){var s=n[i],o=t[s];if(o===r&&!(s in t)||!(0,e[s])(o))return!1}return!0}function oi(t,e,n){if("function"!=typeof t)throw new Ot(s);return Os(function(){t.apply(r,n)},e)}function ai(t,e,n,i){var r=-1,s=Te,o=!0,a=t.length,l=[],c=e.length;if(!a)return l;n&&(e=Ae(e,qe(n))),i?(s=ke,o=!1):e.length>=200&&(s=Ye,o=!1,e=new $n(e));t:for(;++r-1},Un.prototype.set=function(t,e){var n=this.__data__,i=Zn(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this},Hn.prototype.clear=function(){this.size=0,this.__data__={hash:new zn,map:new(wn||Un),string:new zn}},Hn.prototype.delete=function(t){var e=rs(this,t).delete(t);return this.size-=e?1:0,e},Hn.prototype.get=function(t){return rs(this,t).get(t)},Hn.prototype.has=function(t){return rs(this,t).has(t)},Hn.prototype.set=function(t,e){var n=rs(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this},$n.prototype.add=$n.prototype.push=function(t){return this.__data__.set(t,o),this},$n.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.clear=function(){this.__data__=new Un,this.size=0},Gn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Gn.prototype.get=function(t){return this.__data__.get(t)},Gn.prototype.has=function(t){return this.__data__.has(t)},Gn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Un){var i=n.__data__;if(!wn||i.length<199)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new Hn(i)}return n.set(t,e),this.size=n.size,this};var li=kr(mi),ci=kr(bi,!0);function ui(t,e){var n=!0;return li(t,function(t,i,r){return n=!!e(t,i,r)}),n}function hi(t,e,n){for(var i=-1,s=t.length;++i0&&n(a)?e>1?pi(a,e-1,n,i,r):Pe(r,a):i||(r[r.length]=a)}return r}var fi=Ar(),gi=Ar(!0);function mi(t,e){return t&&fi(t,e,Aa)}function bi(t,e){return t&&gi(t,e,Aa)}function yi(t,e){return Oe(e,function(e){return Yo(t[e])})}function vi(t,e){for(var n=0,i=(e=fr(e,t)).length;null!=t&&ne}function Si(t,e){return null!=t&&Mt.call(t,e)}function Ei(t,e){return null!=t&&e in St(t)}function Ci(t,e,n){for(var s=n?ke:Te,o=t[0].length,a=t.length,l=a,c=i(a),u=1/0,h=[];l--;){var d=t[l];l&&e&&(d=Ae(d,qe(e))),u=gn(d.length,u),c[l]=!n&&(e||o>=120&&d.length>=120)?new $n(l&&d):r}d=t[0];var p=-1,f=c[0];t:for(;++p=a?l:l*("desc"==n[i]?-1:1)}return t.index-e.index}(t,e,n)});i--;)t[i]=t[i].value;return t}(Ri(t,function(t,n,r){return{criteria:Ae(e,function(e){return e(t)}),index:++i,value:t}}))}function Vi(t,e,n){for(var i=-1,r=e.length,s={};++i-1;)a!==t&&Gt.call(a,l,1),Gt.call(t,l,1);return t}function Ui(t,e){for(var n=t?e.length:0,i=n-1;n--;){var r=e[n];if(n==i||r!==s){var s=r;ps(r)?Gt.call(t,r,1):or(t,r)}}return t}function Hi(t,e){return t+he(yn()*(e-t+1))}function $i(t,e){var n="";if(!t||e<1||e>h)return n;do{e%2&&(n+=t),(e=he(e/2))&&(t+=t)}while(e);return n}function Gi(t,e){return Ts(ws(t,e,el),t+"")}function Wi(t){return qn(Fa(t))}function qi(t,e){var n=Fa(t);return Ps(n,ii(e,0,n.length))}function Xi(t,e,n,i){if(!Zo(t))return t;for(var s=-1,o=(e=fr(e,t)).length,a=o-1,l=t;null!=l&&++ss?0:s+e),(n=n>s?s:n)<0&&(n+=s),s=e>n?0:n-e>>>0,e>>>=0;for(var o=i(s);++r>>1,o=t[s];null!==o&&!oa(o)&&(n?o<=e:o=200){var c=e?null:$r(t);if(c)return an(c);o=!1,r=Ye,l=new $n}else l=e?[]:a;t:for(;++i=i?t:Zi(t,e,n)}var br=re||function(t){return ce.clearTimeout(t)};function yr(t,e){if(e)return t.slice();var n=t.length,i=zt?zt(n):new t.constructor(n);return t.copy(i),i}function vr(t){var e=new t.constructor(t.byteLength);return new Vt(e).set(new Vt(t)),e}function _r(t,e){var n=e?vr(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function wr(t,e){if(t!==e){var n=t!==r,i=null===t,s=t==t,o=oa(t),a=e!==r,l=null===e,c=e==e,u=oa(e);if(!l&&!u&&!o&&t>e||o&&a&&c&&!l&&!u||i&&a&&c||!n&&c||!s)return 1;if(!i&&!o&&!u&&t1?n[s-1]:r,a=s>2?n[2]:r;for(o=t.length>3&&"function"==typeof o?(s--,o):r,a&&fs(n[0],n[1],a)&&(o=s<3?r:o,s=1),e=St(e);++i-1?s[o?e[a]:a]:r}}function Rr(t){return Qr(function(e){var n=e.length,i=n,o=Bn.prototype.thru;for(t&&e.reverse();i--;){var a=e[i];if("function"!=typeof a)throw new Ot(s);if(o&&!l&&"wrapper"==es(a))var l=new Bn([],!0)}for(i=l?i:n;++i1&&v.reverse(),p&&hl))return!1;var u=o.get(t),h=o.get(e);if(u&&h)return u==e&&h==t;var d=-1,p=!0,f=2&n?new $n:r;for(o.set(t,e),o.set(e,t);++d-1&&t%1==0&&t1?"& ":"")+e[i],e=e.join(n>2?", ":" "),t.replace(rt,"{\n/* [wrapped with "+e+"] */\n")}(i,function(t,e){return Se(p,function(n){var i="_."+n[0];e&n[1]&&!Te(t,i)&&t.push(i)}),t.sort()}(function(t){var e=t.match(st);return e?e[1].split(ot):[]}(i),n)))}function As(t){var e=0,n=0;return function(){var i=mn(),s=16-(i-n);if(n=i,s>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(r,arguments)}}function Ps(t,e){var n=-1,i=t.length,s=i-1;for(e=e===r?i:e;++n1?t[e-1]:r;return n="function"==typeof n?(t.pop(),n):r,no(t,n)});function co(t){var e=Ln(t);return e.__chain__=!0,e}function uo(t,e){return e(t)}var ho=Qr(function(t){var e=t.length,n=e?t[0]:0,i=this.__wrapped__,s=function(e){return ni(e,t)};return!(e>1||this.__actions__.length)&&i instanceof Vn&&ps(n)?((i=i.slice(n,+n+(e?1:0))).__actions__.push({func:uo,args:[s],thisArg:r}),new Bn(i,this.__chain__).thru(function(t){return e&&!t.length&&t.push(r),t})):this.thru(s)}),po=Or(function(t,e,n){Mt.call(t,n)?++t[n]:ei(t,n,1)}),fo=Dr(Vs),go=Dr(zs);function mo(t,e){return(Uo(t)?Se:li)(t,is(e,3))}function bo(t,e){return(Uo(t)?Ee:ci)(t,is(e,3))}var yo=Or(function(t,e,n){Mt.call(t,n)?t[n].push(e):ei(t,n,[e])}),vo=Gi(function(t,e,n){var r=-1,s="function"==typeof e,o=$o(t)?i(t.length):[];return li(t,function(t){o[++r]=s?we(e,t,n):Oi(t,e,n)}),o}),_o=Or(function(t,e,n){ei(t,n,e)});function wo(t,e){return(Uo(t)?Ae:Ri)(t,is(e,3))}var xo=Or(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]}),So=Gi(function(t,e){if(null==t)return[];var n=e.length;return n>1&&fs(t,e[0],e[1])?e=[]:n>2&&fs(e[0],e[1],e[2])&&(e=[e[0]]),Bi(t,pi(e,1),[])}),Eo=ae||function(){return ce.Date.now()};function Co(t,e,n){return e=n?r:e,Wr(t,c,r,r,r,r,e=t&&null==e?t.length:e)}function Oo(t,e){var n;if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=r),n}}var To=Gi(function(t,e,n){var i=1;if(n.length){var r=on(n,ns(To));i|=l}return Wr(t,i,e,n,r)}),ko=Gi(function(t,e,n){var i=3;if(n.length){var r=on(n,ns(ko));i|=l}return Wr(e,i,t,n,r)});function Ao(t,e,n){var i,o,a,l,c,u,h=0,d=!1,p=!1,f=!0;if("function"!=typeof t)throw new Ot(s);function g(e){var n=i,s=o;return i=o=r,h=e,l=t.apply(s,n)}function m(t){return h=t,c=Os(y,e),d?g(t):l}function b(t){var n=t-u;return u===r||n>=e||n<0||p&&t-h>=a}function y(){var t=Eo();if(b(t))return v(t);c=Os(y,function(t){var n=e-(t-u);return p?gn(n,a-(t-h)):n}(t))}function v(t){return c=r,f&&i?g(t):(i=o=r,l)}function _(){var t=Eo(),n=b(t);if(i=arguments,o=this,u=t,n){if(c===r)return m(u);if(p)return br(c),c=Os(y,e),g(u)}return c===r&&(c=Os(y,e)),l}return e=fa(e)||0,Zo(n)&&(d=!!n.leading,a=(p="maxWait"in n)?fn(fa(n.maxWait)||0,e):a,f="trailing"in n?!!n.trailing:f),_.cancel=function(){c!==r&&br(c),h=0,i=u=o=c=r},_.flush=function(){return c===r?l:v(Eo())},_}var Po=Gi(function(t,e){return oi(t,1,e)}),Mo=Gi(function(t,e,n){return oi(t,fa(e)||0,n)});function Io(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new Ot(s);var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],s=n.cache;if(s.has(r))return s.get(r);var o=t.apply(this,i);return n.cache=s.set(r,o)||s,o};return n.cache=new(Io.Cache||Hn),n}function Do(t){if("function"!=typeof t)throw new Ot(s);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}Io.Cache=Hn;var Ro=gr(function(t,e){var n=(e=1==e.length&&Uo(e[0])?Ae(e[0],qe(is())):Ae(pi(e,1),qe(is()))).length;return Gi(function(i){for(var r=-1,s=gn(i.length,n);++r=e}),zo=Ti(function(){return arguments}())?Ti:function(t){return Jo(t)&&Mt.call(t,"callee")&&!$t.call(t,"callee")},Uo=i.isArray,Ho=ge?qe(ge):function(t){return Jo(t)&&wi(t)==P};function $o(t){return null!=t&&Qo(t.length)&&!Yo(t)}function Go(t){return Jo(t)&&$o(t)}var Wo=fe||fl,qo=me?qe(me):function(t){return Jo(t)&&wi(t)==b};function Xo(t){if(!Jo(t))return!1;var e=wi(t);return e==y||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!na(t)}function Yo(t){if(!Zo(t))return!1;var e=wi(t);return e==v||e==_||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Ko(t){return"number"==typeof t&&t==da(t)}function Qo(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=h}function Zo(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Jo(t){return null!=t&&"object"==typeof t}var ta=be?qe(be):function(t){return Jo(t)&&cs(t)==w};function ea(t){return"number"==typeof t||Jo(t)&&wi(t)==x}function na(t){if(!Jo(t)||wi(t)!=S)return!1;var e=Ut(t);if(null===e)return!0;var n=Mt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&Pt.call(n)==Nt}var ia=ye?qe(ye):function(t){return Jo(t)&&wi(t)==C},ra=ve?qe(ve):function(t){return Jo(t)&&cs(t)==O};function sa(t){return"string"==typeof t||!Uo(t)&&Jo(t)&&wi(t)==T}function oa(t){return"symbol"==typeof t||Jo(t)&&wi(t)==k}var aa=_e?qe(_e):function(t){return Jo(t)&&Qo(t.length)&&!!ne[wi(t)]},la=zr(Di),ca=zr(function(t,e){return t<=e});function ua(t){if(!t)return[];if($o(t))return sa(t)?cn(t):Er(t);if(qt&&t[qt])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[qt]());var e=cs(t);return(e==w?rn:e==O?an:Fa)(t)}function ha(t){return t?(t=fa(t))===u||t===-u?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function da(t){var e=ha(t),n=e%1;return e==e?n?e-n:e:0}function pa(t){return t?ii(da(t),0,d):0}function fa(t){if("number"==typeof t)return t;if(oa(t))return NaN;if(Zo(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Zo(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=We(t);var n=pt.test(t);return n||gt.test(t)?oe(t.slice(2),n?2:8):dt.test(t)?NaN:+t}function ga(t){return Cr(t,Pa(t))}function ma(t){return null==t?"":rr(t)}var ba=Tr(function(t,e){if(ys(e)||$o(e))Cr(e,Aa(e),t);else for(var n in e)Mt.call(e,n)&&Qn(t,n,e[n])}),ya=Tr(function(t,e){Cr(e,Pa(e),t)}),va=Tr(function(t,e,n,i){Cr(e,Pa(e),t,i)}),_a=Tr(function(t,e,n,i){Cr(e,Aa(e),t,i)}),wa=Qr(ni),xa=Gi(function(t,e){t=St(t);var n=-1,i=e.length,s=i>2?e[2]:r;for(s&&fs(e[0],e[1],s)&&(i=1);++n1),e}),Cr(t,Jr(t),n),i&&(n=ri(n,7,Yr));for(var r=e.length;r--;)or(n,e[r]);return n}),Ra=Qr(function(t,e){return null==t?{}:function(t,e){return Vi(t,e,function(e,n){return Ca(t,n)})}(t,e)});function Na(t,e){if(null==t)return{};var n=Ae(Jr(t),function(t){return[t]});return e=is(e),Vi(t,n,function(t,n){return e(t,n[0])})}var La=Gr(Aa),ja=Gr(Pa);function Fa(t){return null==t?[]:Xe(t,Aa(t))}var Ba=Mr(function(t,e,n){return e=e.toLowerCase(),t+(n?Va(e):e)});function Va(t){return Xa(ma(t).toLowerCase())}function za(t){return(t=ma(t))&&t.replace(bt,Je).replace(Yt,"")}var Ua=Mr(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),Ha=Mr(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),$a=Pr("toLowerCase"),Ga=Mr(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()}),Wa=Mr(function(t,e,n){return t+(n?" ":"")+Xa(e)}),qa=Mr(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Xa=Pr("toUpperCase");function Ya(t,e,n){return t=ma(t),(e=n?r:e)===r?function(t){return Jt.test(t)}(t)?function(t){return t.match(Qt)||[]}(t):function(t){return t.match(at)||[]}(t):t.match(e)||[]}var Ka=Gi(function(t,e){try{return we(t,r,e)}catch(Is){return Xo(Is)?Is:new _t(Is)}}),Qa=Qr(function(t,e){return Se(e,function(e){e=Rs(e),ei(t,e,To(t[e],t))}),t});function Za(t){return function(){return t}}var Ja=Rr(),tl=Rr(!0);function el(t){return t}function nl(t){return Mi("function"==typeof t?t:ri(t,1))}var il=Gi(function(t,e){return function(n){return Oi(n,t,e)}}),rl=Gi(function(t,e){return function(n){return Oi(t,n,e)}});function sl(t,e,n){var i=Aa(e),r=yi(e,i);null==n&&(!Zo(e)||!r.length&&i.length)&&(n=e,e=t,t=this,r=yi(e,Aa(e)));var s=!(Zo(n)&&"chain"in n&&!n.chain),o=Yo(t);return Se(r,function(n){var i=e[n];t[n]=i,o&&(t.prototype[n]=function(){var e=this.__chain__;if(s||e){var n=t(this.__wrapped__),r=n.__actions__=Er(this.__actions__);return r.push({func:i,args:arguments,thisArg:t}),n.__chain__=e,n}return i.apply(t,Pe([this.value()],arguments))})}),t}function ol(){}var al=Fr(Ae),ll=Fr(Ce),cl=Fr(De);function ul(t){return gs(t)?ze(Rs(t)):function(t){return function(e){return vi(e,t)}}(t)}var hl=Vr(),dl=Vr(!0);function pl(){return[]}function fl(){return!1}var gl=jr(function(t,e){return t+e},0),ml=Hr("ceil"),bl=jr(function(t,e){return t/e},1),yl=Hr("floor"),vl=jr(function(t,e){return t*e},1),_l=Hr("round"),wl=jr(function(t,e){return t-e},0);return Ln.after=function(t,e){if("function"!=typeof e)throw new Ot(s);return t=da(t),function(){if(--t<1)return e.apply(this,arguments)}},Ln.ary=Co,Ln.assign=ba,Ln.assignIn=ya,Ln.assignInWith=va,Ln.assignWith=_a,Ln.at=wa,Ln.before=Oo,Ln.bind=To,Ln.bindAll=Qa,Ln.bindKey=ko,Ln.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Uo(t)?t:[t]},Ln.chain=co,Ln.chunk=function(t,e,n){e=(n?fs(t,e,n):e===r)?1:fn(da(e),0);var s=null==t?0:t.length;if(!s||e<1)return[];for(var o=0,a=0,l=i(ue(s/e));os?0:s+n),(i=i===r||i>s?s:da(i))<0&&(i+=s),i=n>i?0:pa(i);n>>0)?(t=ma(t))&&("string"==typeof e||null!=e&&!ia(e))&&!(e=rr(e))&&nn(t)?mr(cn(t),0,n):t.split(e,n):[]},Ln.spread=function(t,e){if("function"!=typeof t)throw new Ot(s);return e=null==e?0:fn(da(e),0),Gi(function(n){var i=n[e],r=mr(n,0,e);return i&&Pe(r,i),we(t,this,r)})},Ln.tail=function(t){var e=null==t?0:t.length;return e?Zi(t,1,e):[]},Ln.take=function(t,e,n){return t&&t.length?Zi(t,0,(e=n||e===r?1:da(e))<0?0:e):[]},Ln.takeRight=function(t,e,n){var i=null==t?0:t.length;return i?Zi(t,(e=i-(e=n||e===r?1:da(e)))<0?0:e,i):[]},Ln.takeRightWhile=function(t,e){return t&&t.length?lr(t,is(e,3),!1,!0):[]},Ln.takeWhile=function(t,e){return t&&t.length?lr(t,is(e,3)):[]},Ln.tap=function(t,e){return e(t),t},Ln.throttle=function(t,e,n){var i=!0,r=!0;if("function"!=typeof t)throw new Ot(s);return Zo(n)&&(i="leading"in n?!!n.leading:i,r="trailing"in n?!!n.trailing:r),Ao(t,e,{leading:i,maxWait:e,trailing:r})},Ln.thru=uo,Ln.toArray=ua,Ln.toPairs=La,Ln.toPairsIn=ja,Ln.toPath=function(t){return Uo(t)?Ae(t,Rs):oa(t)?[t]:Er(Ds(ma(t)))},Ln.toPlainObject=ga,Ln.transform=function(t,e,n){var i=Uo(t),r=i||Wo(t)||aa(t);if(e=is(e,4),null==n){var s=t&&t.constructor;n=r?i?new s:[]:Zo(t)&&Yo(s)?jn(Ut(t)):{}}return(r?Se:mi)(t,function(t,i,r){return e(n,t,i,r)}),n},Ln.unary=function(t){return Co(t,1)},Ln.union=Zs,Ln.unionBy=Js,Ln.unionWith=to,Ln.uniq=function(t){return t&&t.length?sr(t):[]},Ln.uniqBy=function(t,e){return t&&t.length?sr(t,is(e,2)):[]},Ln.uniqWith=function(t,e){return e="function"==typeof e?e:r,t&&t.length?sr(t,r,e):[]},Ln.unset=function(t,e){return null==t||or(t,e)},Ln.unzip=eo,Ln.unzipWith=no,Ln.update=function(t,e,n){return null==t?t:ar(t,e,pr(n))},Ln.updateWith=function(t,e,n,i){return i="function"==typeof i?i:r,null==t?t:ar(t,e,pr(n),i)},Ln.values=Fa,Ln.valuesIn=function(t){return null==t?[]:Xe(t,Pa(t))},Ln.without=io,Ln.words=Ya,Ln.wrap=function(t,e){return No(pr(e),t)},Ln.xor=ro,Ln.xorBy=so,Ln.xorWith=oo,Ln.zip=ao,Ln.zipObject=function(t,e){return hr(t||[],e||[],Qn)},Ln.zipObjectDeep=function(t,e){return hr(t||[],e||[],Xi)},Ln.zipWith=lo,Ln.entries=La,Ln.entriesIn=ja,Ln.extend=ya,Ln.extendWith=va,sl(Ln,Ln),Ln.add=gl,Ln.attempt=Ka,Ln.camelCase=Ba,Ln.capitalize=Va,Ln.ceil=ml,Ln.clamp=function(t,e,n){return n===r&&(n=e,e=r),n!==r&&(n=(n=fa(n))==n?n:0),e!==r&&(e=(e=fa(e))==e?e:0),ii(fa(t),e,n)},Ln.clone=function(t){return ri(t,4)},Ln.cloneDeep=function(t){return ri(t,5)},Ln.cloneDeepWith=function(t,e){return ri(t,5,e="function"==typeof e?e:r)},Ln.cloneWith=function(t,e){return ri(t,4,e="function"==typeof e?e:r)},Ln.conformsTo=function(t,e){return null==e||si(t,e,Aa(e))},Ln.deburr=za,Ln.defaultTo=function(t,e){return null==t||t!=t?e:t},Ln.divide=bl,Ln.endsWith=function(t,e,n){t=ma(t),e=rr(e);var i=t.length,s=n=n===r?i:ii(da(n),0,i);return(n-=e.length)>=0&&t.slice(n,s)==e},Ln.eq=Fo,Ln.escape=function(t){return(t=ma(t))&&q.test(t)?t.replace(G,tn):t},Ln.escapeRegExp=function(t){return(t=ma(t))&&et.test(t)?t.replace(tt,"\\$&"):t},Ln.every=function(t,e,n){var i=Uo(t)?Ce:ui;return n&&fs(t,e,n)&&(e=r),i(t,is(e,3))},Ln.find=fo,Ln.findIndex=Vs,Ln.findKey=function(t,e){return Ne(t,is(e,3),mi)},Ln.findLast=go,Ln.findLastIndex=zs,Ln.findLastKey=function(t,e){return Ne(t,is(e,3),bi)},Ln.floor=yl,Ln.forEach=mo,Ln.forEachRight=bo,Ln.forIn=function(t,e){return null==t?t:fi(t,is(e,3),Pa)},Ln.forInRight=function(t,e){return null==t?t:gi(t,is(e,3),Pa)},Ln.forOwn=function(t,e){return t&&mi(t,is(e,3))},Ln.forOwnRight=function(t,e){return t&&bi(t,is(e,3))},Ln.get=Ea,Ln.gt=Bo,Ln.gte=Vo,Ln.has=function(t,e){return null!=t&&us(t,e,Si)},Ln.hasIn=Ca,Ln.head=Hs,Ln.identity=el,Ln.includes=function(t,e,n,i){t=$o(t)?t:Fa(t),n=n&&!i?da(n):0;var r=t.length;return n<0&&(n=fn(r+n,0)),sa(t)?n<=r&&t.indexOf(e,n)>-1:!!r&&je(t,e,n)>-1},Ln.indexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var r=null==n?0:da(n);return r<0&&(r=fn(i+r,0)),je(t,e,r)},Ln.inRange=function(t,e,n){return e=ha(e),n===r?(n=e,e=0):n=ha(n),function(t,e,n){return t>=gn(e,n)&&t=-h&&t<=h},Ln.isSet=ra,Ln.isString=sa,Ln.isSymbol=oa,Ln.isTypedArray=aa,Ln.isUndefined=function(t){return t===r},Ln.isWeakMap=function(t){return Jo(t)&&cs(t)==A},Ln.isWeakSet=function(t){return Jo(t)&&"[object WeakSet]"==wi(t)},Ln.join=function(t,e){return null==t?"":Ue.call(t,e)},Ln.kebabCase=Ua,Ln.last=qs,Ln.lastIndexOf=function(t,e,n){var i=null==t?0:t.length;if(!i)return-1;var s=i;return n!==r&&(s=(s=da(n))<0?fn(i+s,0):gn(s,i-1)),e==e?function(t,e,n){for(var i=n+1;i--;)if(t[i]===e)return i;return i}(t,e,s):Le(t,Be,s,!0)},Ln.lowerCase=Ha,Ln.lowerFirst=$a,Ln.lt=la,Ln.lte=ca,Ln.max=function(t){return t&&t.length?hi(t,el,xi):r},Ln.maxBy=function(t,e){return t&&t.length?hi(t,is(e,2),xi):r},Ln.mean=function(t){return Ve(t,el)},Ln.meanBy=function(t,e){return Ve(t,is(e,2))},Ln.min=function(t){return t&&t.length?hi(t,el,Di):r},Ln.minBy=function(t,e){return t&&t.length?hi(t,is(e,2),Di):r},Ln.stubArray=pl,Ln.stubFalse=fl,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=vl,Ln.nth=function(t,e){return t&&t.length?Fi(t,da(e)):r},Ln.noConflict=function(){return ce._===this&&(ce._=Lt),this},Ln.noop=ol,Ln.now=Eo,Ln.pad=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;if(!e||i>=e)return t;var r=(e-i)/2;return Br(he(r),n)+t+Br(ue(r),n)},Ln.padEnd=function(t,e,n){t=ma(t);var i=(e=da(e))?ln(t):0;return e&&ie){var i=t;t=e,e=i}if(n||t%1||e%1){var s=yn();return gn(t+s*(e-t+se("1e-"+((s+"").length-1))),e)}return Hi(t,e)},Ln.reduce=function(t,e,n){var i=Uo(t)?Me:He,r=arguments.length<3;return i(t,is(e,4),n,r,li)},Ln.reduceRight=function(t,e,n){var i=Uo(t)?Ie:He,r=arguments.length<3;return i(t,is(e,4),n,r,ci)},Ln.repeat=function(t,e,n){return e=(n?fs(t,e,n):e===r)?1:da(e),$i(ma(t),e)},Ln.replace=function(){var t=arguments,e=ma(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Ln.result=function(t,e,n){var i=-1,s=(e=fr(e,t)).length;for(s||(s=1,t=r);++ih)return[];var n=d,i=gn(t,d);e=is(e),t-=d;for(var r=Ge(i,e);++n=o)return t;var l=n-ln(i);if(l<1)return i;var c=a?mr(a,0,l).join(""):t.slice(0,l);if(s===r)return c+i;if(a&&(l+=c.length-l),ia(s)){if(t.slice(l).search(s)){var u,h=c;for(s.global||(s=Et(s.source,ma(ht.exec(s))+"g")),s.lastIndex=0;u=s.exec(h);)var d=u.index;c=c.slice(0,d===r?l:d)}}else if(t.indexOf(rr(s),l)!=l){var p=c.lastIndexOf(s);p>-1&&(c=c.slice(0,p))}return c+i},Ln.unescape=function(t){return(t=ma(t))&&W.test(t)?t.replace($,hn):t},Ln.uniqueId=function(t){var e=++It;return ma(t)+e},Ln.upperCase=qa,Ln.upperFirst=Xa,Ln.each=mo,Ln.eachRight=bo,Ln.first=Hs,sl(Ln,function(){var t={};return mi(Ln,function(e,n){Mt.call(Ln.prototype,n)||(t[n]=e)}),t}(),{chain:!1}),Ln.VERSION="4.17.21",Se(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){Ln[t].placeholder=Ln}),Se(["drop","take"],function(t,e){Vn.prototype[t]=function(n){n=n===r?1:fn(da(n),0);var i=this.__filtered__&&!e?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=gn(n,i.__takeCount__):i.__views__.push({size:gn(n,d),type:t+(i.__dir__<0?"Right":"")}),i},Vn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Se(["filter","map","takeWhile"],function(t,e){var n=e+1,i=1==n||3==n;Vn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:is(t,3),type:n}),e.__filtered__=e.__filtered__||i,e}}),Se(["head","last"],function(t,e){var n="take"+(e?"Right":"");Vn.prototype[t]=function(){return this[n](1).value()[0]}}),Se(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");Vn.prototype[t]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(el)},Vn.prototype.find=function(t){return this.filter(t).head()},Vn.prototype.findLast=function(t){return this.reverse().find(t)},Vn.prototype.invokeMap=Gi(function(t,e){return"function"==typeof t?new Vn(this):this.map(function(n){return Oi(n,t,e)})}),Vn.prototype.reject=function(t){return this.filter(Do(is(t)))},Vn.prototype.slice=function(t,e){t=da(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Vn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==r&&(n=(e=da(e))<0?n.dropRight(-e):n.take(e-t)),n)},Vn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Vn.prototype.toArray=function(){return this.take(d)},mi(Vn.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),i=/^(?:head|last)$/.test(e),s=Ln[i?"take"+("last"==e?"Right":""):e],o=i||/^find/.test(e);!s||(Ln.prototype[e]=function(){var e=this.__wrapped__,a=i?[1]:arguments,l=e instanceof Vn,c=a[0],u=l||Uo(e),h=function(t){var e=s.apply(Ln,Pe([t],a));return i&&d?e[0]:e};u&&n&&"function"==typeof c&&1!=c.length&&(l=u=!1);var d=this.__chain__,p=!!this.__actions__.length,f=o&&!d,g=l&&!p;if(!o&&u){e=g?e:new Vn(this);var m=t.apply(e,a);return m.__actions__.push({func:uo,args:[h],thisArg:r}),new Bn(m,d)}return f&&g?t.apply(this,a):(m=this.thru(h),f?i?m.value()[0]:m.value():m)})}),Se(["pop","push","shift","sort","splice","unshift"],function(t){var e=Tt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",i=/^(?:pop|shift)$/.test(t);Ln.prototype[t]=function(){var t=arguments;if(i&&!this.__chain__){var r=this.value();return e.apply(Uo(r)?r:[],t)}return this[n](function(n){return e.apply(Uo(n)?n:[],t)})}}),mi(Vn.prototype,function(t,e){var n=Ln[e];if(n){var i=n.name+"";Mt.call(Tn,i)||(Tn[i]=[]),Tn[i].push({name:e,func:n})}}),Tn[Nr(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var t=new Vn(this.__wrapped__);return t.__actions__=Er(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Er(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Er(this.__views__),t},Vn.prototype.reverse=function(){if(this.__filtered__){var t=new Vn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Vn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Uo(t),i=e<0,r=n?t.length:0,s=function(t,e,n){for(var i=-1,r=n.length;++i=this.__values__.length;return{done:t,value:t?r:this.__values__[this.__index__++]}},Ln.prototype.plant=function(t){for(var e,n=this;n instanceof Fn;){var i=Ls(n);i.__index__=0,i.__values__=r,e?s.__wrapped__=i:e=i;var s=i;n=n.__wrapped__}return s.__wrapped__=t,e},Ln.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Vn){var e=t;return this.__actions__.length&&(e=new Vn(this)),(e=e.reverse()).__actions__.push({func:uo,args:[Qs],thisArg:r}),new Bn(e,this.__chain__)}return this.thru(Qs)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return cr(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,qt&&(Ln.prototype[qt]=function(){return this}),Ln}();ce._=dn,(i=(function(){return dn}).call(e,n,e,t))!==r&&(t.exports=i)}).call(this)},5478:function(t){t.exports=function(){"use strict";function t(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,i=new Array(e);n=t.length?{done:!0}:{done:!1,value:t[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i={exports:{}};function r(){return{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}i.exports={defaults:{baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1},getDefaults:r,changeDefaults:function(t){i.exports.defaults=t}};var s=/[&<>"']/,o=/[&<>"']/g,a=/[<>"']|&(?!#?\w+;)/,l=/[<>"']|&(?!#?\w+;)/g,c={"&":"&","<":"<",">":">",'"':""","'":"'"},u=function(t){return c[t]};var h=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi;function d(t){return t.replace(h,function(t,e){return"colon"===(e=e.toLowerCase())?":":"#"===e.charAt(0)?"x"===e.charAt(1)?String.fromCharCode(parseInt(e.substring(2),16)):String.fromCharCode(+e.substring(1)):""})}var p=/(^|[^\[])\^/g;var f=/[^\w:]/g,g=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;var m={},b=/^[^:]+:\/*[^/]*$/,y=/^([^:]+:)[\s\S]*$/,v=/^([^:]+:\/*[^/]*)[\s\S]*$/;function _(t,e){m[" "+t]||(m[" "+t]=b.test(t)?t+"/":w(t,"/",!0));var n=-1===(t=m[" "+t]).indexOf(":");return"//"===e.substring(0,2)?n?e:t.replace(y,"$1")+e:"/"===e.charAt(0)?n?e:t.replace(v,"$1")+e:t+e}function w(t,e,n){var i=t.length;if(0===i)return"";for(var r=0;r1;)1&e&&(n+=t),e>>=1,t+=t;return n+t},P=i.exports.defaults,M=w,I=function(t,e){var n=t.replace(/\|/g,function(t,e,n){for(var i=!1,r=e;--r>=0&&"\\"===n[r];)i=!i;return i?"|":" |"}).split(/ \|/),i=0;if(n.length>e)n.splice(e);else for(;n.length1?{type:"space",raw:e[0]}:{raw:"\n"}},e.code=function(t){var e=this.rules.block.code.exec(t);if(e){var n=e[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?n:M(n,"\n")}}},e.fences=function(t){var e=this.rules.block.fences.exec(t);if(e){var n=e[0],i=function(t,e){var n=t.match(/^(\s+)(?:```)/);if(null===n)return e;var i=n[1];return e.split("\n").map(function(t){var e=t.match(/^\s+/);return null===e?t:e[0].length>=i.length?t.slice(i.length):t}).join("\n")}(n,e[3]||"");return{type:"code",raw:n,lang:e[2]?e[2].trim():e[2],text:i}}},e.heading=function(t){var e=this.rules.block.heading.exec(t);if(e){var n=e[2].trim();if(/#$/.test(n)){var i=M(n,"#");(this.options.pedantic||!i||/ $/.test(i))&&(n=i.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:n}}},e.nptable=function(t){var e=this.rules.block.nptable.exec(t);if(e){var n={type:"table",header:I(e[1].replace(/^ *| *\| *$/g,"")),align:e[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:e[3]?e[3].replace(/\n$/,"").split("\n"):[],raw:e[0]};if(n.header.length===n.align.length){var i,r=n.align.length;for(i=0;i ?/gm,"");return{type:"blockquote",raw:e[0],text:n}}},e.list=function(t){var e=this.rules.block.list.exec(t);if(e){var n,i,r,s,o,a,l,c,u,h=e[0],d=e[2],p=d.length>1,f={type:"list",raw:h,ordered:p,start:p?+d.slice(0,-1):"",loose:!1,items:[]},g=e[0].match(this.rules.block.item),m=!1,b=g.length;r=this.rules.block.listItemStart.exec(g[0]);for(var y=0;yr[1].length:s[1].length>=r[0].length||s[1].length>3){g.splice(y,2,g[y]+(!this.options.pedantic&&s[1].length/i.test(i[0])&&(e=!1),!n&&/^<(pre|code|kbd|script)(\s|>)/i.test(i[0])?n=!0:n&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(i[0])&&(n=!1),{type:this.options.sanitize?"text":"html",raw:i[0],inLink:e,inRawBlock:n,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(i[0]):D(i[0]):i[0]}},e.link=function(t){var e=this.rules.inline.link.exec(t);if(e){var n=e[2].trim();if(!this.options.pedantic&&/^$/.test(n))return;var i=M(n.slice(0,-1),"\\");if((n.length-i.length)%2==0)return}else{var r=R(e[2],"()");if(r>-1){var s=(0===e[0].indexOf("!")?5:4)+e[1].length+r;e[2]=e[2].substring(0,r),e[0]=e[0].substring(0,s).trim(),e[3]=""}}var o=e[2],a="";if(this.options.pedantic){var l=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(o);l&&(o=l[1],a=l[3])}else a=e[3]?e[3].slice(1,-1):"";return o=o.trim(),/^$/.test(n)?o.slice(1):o.slice(1,-1)),N(e,{href:o&&o.replace(this.rules.inline._escapes,"$1"),title:a&&a.replace(this.rules.inline._escapes,"$1")},e[0])}},e.reflink=function(t,e){var n;if((n=this.rules.inline.reflink.exec(t))||(n=this.rules.inline.nolink.exec(t))){var i=(n[2]||n[1]).replace(/\s+/g," ");if(!(i=e[i.toLowerCase()])||!i.href){var r=n[0].charAt(0);return{type:"text",raw:r,text:r}}return N(n,i,n[0])}},e.emStrong=function(t,e,n){void 0===n&&(n="");var i=this.rules.inline.emStrong.lDelim.exec(t);if(i&&(!i[3]||!n.match(/(?:[0-9A-Za-z\xAA\xB2\xB3\xB5\xB9\xBA\xBC-\xBE\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u0660-\u0669\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09E6-\u09F1\u09F4-\u09F9\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AE6-\u0AEF\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71-\u0B77\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BF2\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C66-\u0C6F\u0C78-\u0C7E\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CE6-\u0CEF\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D58-\u0D61\u0D66-\u0D78\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DE6-\u0DEF\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F33\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1369-\u137C\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2070\u2071\u2074-\u2079\u207F-\u2089\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2150-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2CFD\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u3192-\u3195\u31A0-\u31BF\u31F0-\u31FF\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA830-\uA835\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uA9E0-\uA9E4\uA9E6-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDE80-\uDE9C\uDEA0-\uDED0\uDEE1-\uDEFB\uDF00-\uDF23\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC58-\uDC76\uDC79-\uDC9E\uDCA7-\uDCAF\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDD1B\uDD20-\uDD39\uDD80-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE40-\uDE48\uDE60-\uDE7E\uDE80-\uDE9F\uDEC0-\uDEC7\uDEC9-\uDEE4\uDEEB-\uDEEF\uDF00-\uDF35\uDF40-\uDF55\uDF58-\uDF72\uDF78-\uDF91\uDFA9-\uDFAF]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDD23\uDD30-\uDD39\uDE60-\uDE7E\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF27\uDF30-\uDF45\uDF51-\uDF54\uDFB0-\uDFCB\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC52-\uDC6F\uDC83-\uDCAF\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD03-\uDD26\uDD36-\uDD3F\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDD0-\uDDDA\uDDDC\uDDE1-\uDDF4\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDEF0-\uDEF9\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC50-\uDC59\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE50-\uDE59\uDE80-\uDEAA\uDEB8\uDEC0-\uDEC9\uDF00-\uDF1A\uDF30-\uDF3B]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCF2\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDD50-\uDD59\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC50-\uDC6C\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD50-\uDD59\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDDA0-\uDDA9\uDEE0-\uDEF2\uDFB0\uDFC0-\uDFD4]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE96\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD40-\uDD49\uDD4E\uDEC0-\uDEEB\uDEF0-\uDEF9]|\uD83A[\uDC00-\uDCC4\uDCC7-\uDCCF\uDD00-\uDD43\uDD4B\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A])/))){var r=i[1]||i[2]||"";if(!r||r&&(""===n||this.rules.inline.punctuation.exec(n))){var s,o,a=i[0].length-1,l=a,c=0,u="*"===i[0][0]?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(u.lastIndex=0,e=e.slice(-1*t.length+a);null!=(i=u.exec(e));)if(s=i[1]||i[2]||i[3]||i[4]||i[5]||i[6]){if(o=s.length,i[3]||i[4]){l+=o;continue}if((i[5]||i[6])&&a%3&&!((a+o)%3)){c+=o;continue}if(!((l-=o)>0))return o=Math.min(o,o+l+c),Math.min(a,o)%2?{type:"em",raw:t.slice(0,a+i.index+o+1),text:t.slice(1,a+i.index+o)}:{type:"strong",raw:t.slice(0,a+i.index+o+1),text:t.slice(2,a+i.index+o-1)}}}}},e.codespan=function(t){var e=this.rules.inline.code.exec(t);if(e){var n=e[2].replace(/\n/g," "),i=/[^ ]/.test(n),r=/^ /.test(n)&&/ $/.test(n);return i&&r&&(n=n.substring(1,n.length-1)),n=D(n,!0),{type:"codespan",raw:e[0],text:n}}},e.br=function(t){var e=this.rules.inline.br.exec(t);if(e)return{type:"br",raw:e[0]}},e.del=function(t){var e=this.rules.inline.del.exec(t);if(e)return{type:"del",raw:e[0],text:e[2]}},e.autolink=function(t,e){var n,i,r=this.rules.inline.autolink.exec(t);if(r)return i="@"===r[2]?"mailto:"+(n=D(this.options.mangle?e(r[1]):r[1])):n=D(r[1]),{type:"link",raw:r[0],text:n,href:i,tokens:[{type:"text",raw:n,text:n}]}},e.url=function(t,e){var n;if(n=this.rules.inline.url.exec(t)){var i,r;if("@"===n[2])r="mailto:"+(i=D(this.options.mangle?e(n[0]):n[0]));else{var s;do{s=n[0],n[0]=this.rules.inline._backpedal.exec(n[0])[0]}while(s!==n[0]);i=D(n[0]),r="www."===n[1]?"http://"+i:i}return{type:"link",raw:n[0],text:i,href:r,tokens:[{type:"text",raw:i,text:i}]}}},e.inlineText=function(t,e,n){var i,r=this.rules.inline.text.exec(t);if(r)return i=e?this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):D(r[0]):r[0]:D(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:i}},t}(),j=O,F=E,B=T,V={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?! {0,3}bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:j,table:j,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html| +\n)[^\n]+)*)/,text:/^[^\n]+/,_label:/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,_title:/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/};V.def=F(V.def).replace("label",V._label).replace("title",V._title).getRegex(),V.bullet=/(?:[*+-]|\d{1,9}[.)])/,V.item=/^( *)(bull) ?[^\n]*(?:\n(?! *bull ?)[^\n]*)*/,V.item=F(V.item,"gm").replace(/bull/g,V.bullet).getRegex(),V.listItemStart=F(/^( *)(bull) */).replace("bull",V.bullet).getRegex(),V.list=F(V.list).replace(/bull/g,V.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+V.def.source+")").getRegex(),V._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",V._comment=/|$)/,V.html=F(V.html,"i").replace("comment",V._comment).replace("tag",V._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),V.paragraph=F(V._paragraph).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.blockquote=F(V.blockquote).replace("paragraph",V.paragraph).getRegex(),V.normal=B({},V),V.gfm=B({},V.normal,{nptable:"^ *([^|\\n ].*\\|.*)\\n {0,3}([-:]+ *\\|[-| :]*)(?:\\n((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)",table:"^ *\\|(.+)\\n {0,3}\\|?( *[-:]+[-| :]*)(?:\\n *((?:(?!\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"}),V.gfm.nptable=F(V.gfm.nptable).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.gfm.table=F(V.gfm.table).replace("hr",V.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",V._tag).getRegex(),V.pedantic=B({},V.normal,{html:F("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",V._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:j,paragraph:F(V.normal._paragraph).replace("hr",V.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",V.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()});var z={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:j,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/\_\_[^_*]*?\*[^_*]*?\_\_|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,rDelimUnd:/\*\*[^_*]*?\_[^_*]*?\*\*|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:j,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\?@\\[\\]`^{|}~"};z.punctuation=F(z.punctuation).replace(/punctuation/g,z._punctuation).getRegex(),z.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g,z.escapedEmSt=/\\\*|\\_/g,z._comment=F(V._comment).replace("(?:--\x3e|$)","--\x3e").getRegex(),z.emStrong.lDelim=F(z.emStrong.lDelim).replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimAst=F(z.emStrong.rDelimAst,"g").replace(/punct/g,z._punctuation).getRegex(),z.emStrong.rDelimUnd=F(z.emStrong.rDelimUnd,"g").replace(/punct/g,z._punctuation).getRegex(),z._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g,z._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,z._email=/[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])?)+(?![-_])/,z.autolink=F(z.autolink).replace("scheme",z._scheme).replace("email",z._email).getRegex(),z._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,z.tag=F(z.tag).replace("comment",z._comment).replace("attribute",z._attribute).getRegex(),z._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,z._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/,z._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,z.link=F(z.link).replace("label",z._label).replace("href",z._href).replace("title",z._title).getRegex(),z.reflink=F(z.reflink).replace("label",z._label).getRegex(),z.reflinkSearch=F(z.reflinkSearch,"g").replace("reflink",z.reflink).replace("nolink",z.nolink).getRegex(),z.normal=B({},z),z.pedantic=B({},z.normal,{strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:F(/^!?\[(label)\]\((.*?)\)/).replace("label",z._label).getRegex(),reflink:F(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",z._label).getRegex()}),z.gfm=B({},z.normal,{escape:F(z.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\.5&&(n="x"+n.toString(16)),i+="&#"+n+";";return i}var K=function(){function e(t){this.tokens=[],this.tokens.links=Object.create(null),this.options=t||$,this.options.tokenizer=this.options.tokenizer||new H,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options;var e={block:G.normal,inline:W.normal};this.options.pedantic?(e.block=G.pedantic,e.inline=W.pedantic):this.options.gfm&&(e.block=G.gfm,e.inline=this.options.breaks?W.breaks:W.gfm),this.tokenizer.rules=e}e.lex=function(t,n){return new e(n).lex(t)},e.lexInline=function(t,n){return new e(n).inlineTokens(t)};var n=e.prototype;return n.lex=function(t){return t=t.replace(/\r\n|\r/g,"\n").replace(/\t/g," "),this.blockTokens(t,this.tokens,!0),this.inline(this.tokens),this.tokens},n.blockTokens=function(t,e,n){var i,r,s,o,a,l,c=this;for(void 0===e&&(e=[]),void 0===n&&(n=!0),this.options.pedantic&&(t=t.replace(/^ +$/gm,""));t;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(function(n){return!!(i=n.call(c,t,e))&&(t=t.substring(i.raw.length),e.push(i),!0)}))){if(i=this.tokenizer.space(t)){t=t.substring(i.raw.length),i.type&&e.push(i);continue}if(i=this.tokenizer.code(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(i=this.tokenizer.fences(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.heading(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.nptable(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.hr(t)){t=t.substring(i.raw.length),e.push(i);continue}if(i=this.tokenizer.blockquote(t)){t=t.substring(i.raw.length),i.tokens=this.blockTokens(i.text,[],n),e.push(i);continue}if(i=this.tokenizer.list(t)){for(t=t.substring(i.raw.length),s=i.items.length,r=0;r=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),n&&(i=this.tokenizer.paragraph(a))){o=e[e.length-1],l&&"paragraph"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i),l=a.length!==t.length,t=t.substring(i.raw.length);continue}if(i=this.tokenizer.text(t)){t=t.substring(i.raw.length),(o=e[e.length-1])&&"text"===o.type?(o.raw+="\n"+i.raw,o.text+="\n"+i.text):e.push(i);continue}if(t){var u="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(u);break}throw new Error(u)}}return e},n.inline=function(t){var e,n,i,r,s,o,a=t.length;for(e=0;e0)for(;null!=(l=this.tokenizer.rules.inline.reflinkSearch.exec(h));)d.includes(l[0].slice(l[0].lastIndexOf("[")+1,-1))&&(h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(l=this.tokenizer.rules.inline.blockSkip.exec(h));)h=h.slice(0,l.index)+"["+q("a",l[0].length-2)+"]"+h.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;null!=(l=this.tokenizer.rules.inline.escapedEmSt.exec(h));)h=h.slice(0,l.index)+"++"+h.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);for(;t;)if(c||(u=""),c=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(function(n){return!!(s=n.call(r,t,e))&&(t=t.substring(s.raw.length),e.push(s),!0)}))){if(s=this.tokenizer.escape(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.tag(t,n,i)){t=t.substring(s.raw.length),n=s.inLink,i=s.inRawBlock,(o=e[e.length-1])&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.link(t)){t=t.substring(s.raw.length),"link"===s.type&&(s.tokens=this.inlineTokens(s.text,[],!0,i)),e.push(s);continue}if(s=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(s.raw.length),o=e[e.length-1],"link"===s.type?(s.tokens=this.inlineTokens(s.text,[],!0,i),e.push(s)):o&&"text"===s.type&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(s=this.tokenizer.emStrong(t,h,u)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.codespan(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.br(t)){t=t.substring(s.raw.length),e.push(s);continue}if(s=this.tokenizer.del(t)){t=t.substring(s.raw.length),s.tokens=this.inlineTokens(s.text,[],n,i),e.push(s);continue}if(s=this.tokenizer.autolink(t,Y)){t=t.substring(s.raw.length),e.push(s);continue}if(!n&&(s=this.tokenizer.url(t,Y))){t=t.substring(s.raw.length),e.push(s);continue}if(a=t,this.options.extensions&&this.options.extensions.startInline&&function(){var e=1/0,n=t.slice(1),i=void 0;r.options.extensions.startInline.forEach(function(t){"number"==typeof(i=t.call(this,n))&&i>=0&&(e=Math.min(e,i))}),e<1/0&&e>=0&&(a=t.substring(0,e+1))}(),s=this.tokenizer.inlineText(a,i,X)){t=t.substring(s.raw.length),"_"!==s.raw.slice(-1)&&(u=s.raw.slice(-1)),c=!0,(o=e[e.length-1])&&"text"===o.type?(o.raw+=s.raw,o.text+=s.text):e.push(s);continue}if(t){var p="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(p);break}throw new Error(p)}}return e},function(e,n,i){n&&t(e.prototype,n),i&&t(e,i)}(e,null,[{key:"rules",get:function(){return{block:G,inline:W}}}]),e}(),Q=i.exports.defaults,Z=C,J=x,tt=function(){function t(t){this.options=t||Q}var e=t.prototype;return e.code=function(t,e,n){var i=(e||"").match(/\S*/)[0];if(this.options.highlight){var r=this.options.highlight(t,i);null!=r&&r!==t&&(n=!0,t=r)}return t=t.replace(/\n$/,"")+"\n",i?'
    '+(n?t:J(t,!0))+"
    \n":"
    "+(n?t:J(t,!0))+"
    \n"},e.blockquote=function(t){return"
    \n"+t+"
    \n"},e.html=function(t){return t},e.heading=function(t,e,n,i){return this.options.headerIds?"'+t+"\n":""+t+"\n"},e.hr=function(){return this.options.xhtml?"
    \n":"
    \n"},e.list=function(t,e,n){var i=e?"ol":"ul";return"<"+i+(e&&1!==n?' start="'+n+'"':"")+">\n"+t+"\n"},e.listitem=function(t){return"
  • "+t+"
  • \n"},e.checkbox=function(t){return" "},e.paragraph=function(t){return"

    "+t+"

    \n"},e.table=function(t,e){return e&&(e=""+e+""),"\n\n"+t+"\n"+e+"
    \n"},e.tablerow=function(t){return"\n"+t+"\n"},e.tablecell=function(t,e){var n=e.header?"th":"td";return(e.align?"<"+n+' align="'+e.align+'">':"<"+n+">")+t+"\n"},e.strong=function(t){return""+t+""},e.em=function(t){return""+t+""},e.codespan=function(t){return""+t+""},e.br=function(){return this.options.xhtml?"
    ":"
    "},e.del=function(t){return""+t+""},e.link=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i='"+n+""},e.image=function(t,e,n){if(null===(t=Z(this.options.sanitize,this.options.baseUrl,t)))return n;var i=''+n+'":">")},e.text=function(t){return t},t}(),et=function(){function t(){}var e=t.prototype;return e.strong=function(t){return t},e.em=function(t){return t},e.codespan=function(t){return t},e.del=function(t){return t},e.html=function(t){return t},e.text=function(t){return t},e.link=function(t,e,n){return""+n},e.image=function(t,e,n){return""+n},e.br=function(){return""},t}(),nt=function(){function t(){this.seen={}}var e=t.prototype;return e.serialize=function(t){return t.toLowerCase().trim().replace(/<[!\/a-z].*?>/gi,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")},e.getNextSafeSlug=function(t,e){var n=t,i=0;if(this.seen.hasOwnProperty(n)){i=this.seen[t];do{n=t+"-"+ ++i}while(this.seen.hasOwnProperty(n))}return e||(this.seen[t]=i,this.seen[n]=0),n},e.slug=function(t,e){void 0===e&&(e={});var n=this.serialize(t);return this.getNextSafeSlug(n,e.dryrun)},t}(),it=tt,rt=et,st=nt,ot=i.exports.defaults,at=S,lt=K,ct=function(){function t(t){this.options=t||ot,this.options.renderer=this.options.renderer||new it,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new rt,this.slugger=new st}t.parse=function(e,n){return new t(n).parse(e)},t.parseInline=function(e,n){return new t(n).parseInline(e)};var e=t.prototype;return e.parse=function(t,e){void 0===e&&(e=!0);var n,i,r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w="",x=t.length;for(n=0;n0&&"text"===m.tokens[0].type?(m.tokens[0].text=v+" "+m.tokens[0].text,m.tokens[0].tokens&&m.tokens[0].tokens.length>0&&"text"===m.tokens[0].tokens[0].type&&(m.tokens[0].tokens[0].text=v+" "+m.tokens[0].tokens[0].text)):m.tokens.unshift({type:"text",text:v}):g+=v),g+=this.parse(m.tokens,f),u+=this.renderer.listitem(g,y,b);w+=this.renderer.list(u,d,p);continue;case"html":w+=this.renderer.html(h.text);continue;case"paragraph":w+=this.renderer.paragraph(this.parseInline(h.tokens));continue;case"text":for(u=h.tokens?this.parseInline(h.tokens):h.text;n+1An error occurred:

    "+mt(l.message+"",!0)+"
    ";throw l}}return _t.options=_t.setOptions=function(t){return ft(_t.defaults,t),yt(_t.defaults),_t},_t.getDefaults=bt,_t.defaults=vt,_t.use=function(){for(var t=this,e=arguments.length,n=new Array(e),i=0;iAn error occurred:

    "+mt(i.message+"",!0)+"
    ";throw i}},_t.Parser=ct,_t.parser=ct.parse,_t.Renderer=ht,_t.TextRenderer=dt,_t.Lexer=lt,_t.lexer=lt.lex,_t.Tokenizer=ut,_t.Slugger=pt,_t.parse=_t,_t}()},29369:function(t,e,n){var i=n(56284),r=n(67830);function s(){this.clear()}s.prototype.clear=function(){this.items=[],this.offset=0,this.size=0},s.prototype.enqueue=function(t){return this.items.push(t),++this.size},s.prototype.dequeue=function(){if(this.size){var t=this.items[this.offset];return 2*++this.offset>=this.items.length&&(this.items=this.items.slice(this.offset),this.offset=0),this.size--,t}},s.prototype.peek=function(){if(this.size)return this.items[this.offset]},s.prototype.forEach=function(t,e){e=arguments.length>1?e:this;for(var n=this.offset,i=0,r=this.items.length;n=t.length)return{done:!0};var n=t[e];return e++,{value:n,done:!1}})},s.prototype.entries=function(){var t=this.items,e=this.offset,n=0;return new i(function(){if(e>=t.length)return{done:!0};var i=t[e];return e++,{value:[n++,i],done:!1}})},"undefined"!=typeof Symbol&&(s.prototype[Symbol.iterator]=s.prototype.values),s.prototype.toString=function(){return this.toArray().join(",")},s.prototype.toJSON=function(){return this.toArray()},s.prototype.inspect=function(){var t=this.toArray();return Object.defineProperty(t,"constructor",{value:s,enumerable:!1}),t},"undefined"!=typeof Symbol&&(s.prototype[Symbol.for("nodejs.util.inspect.custom")]=s.prototype.inspect),s.from=function(t){var e=new s;return r(t,function(t){e.enqueue(t)}),e},s.of=function(){return s.from(arguments)},t.exports=s},65593:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=function(t){function e(){t.apply(this,arguments),this.value=null,this.hasNext=!1,this.hasCompleted=!1}return i(e,t),e.prototype._subscribe=function(e){return this.hasError?(e.error(this.thrownError),s.Subscription.EMPTY):this.hasCompleted&&this.hasNext?(e.next(this.value),e.complete(),s.Subscription.EMPTY):t.prototype._subscribe.call(this,e)},e.prototype.next=function(t){this.hasCompleted||(this.value=t,this.hasNext=!0)},e.prototype.error=function(e){this.hasCompleted||t.prototype.error.call(this,e)},e.prototype.complete=function(){this.hasCompleted=!0,this.hasNext&&t.prototype.next.call(this,this.value),t.prototype.complete.call(this)},e}(r.Subject);e.AsyncSubject=o},73907:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(6594),o=function(t){function e(e){t.call(this),this._value=e}return i(e,t),Object.defineProperty(e.prototype,"value",{get:function(){return this.getValue()},enumerable:!0,configurable:!0}),e.prototype._subscribe=function(e){var n=t.prototype._subscribe.call(this,e);return n&&!n.closed&&e.next(this._value),n},e.prototype.getValue=function(){if(this.hasError)throw this.thrownError;if(this.closed)throw new s.ObjectUnsubscribedError;return this._value},e.prototype.next=function(e){t.prototype.next.call(this,this._value=e)},e}(r.Subject);e.BehaviorSubject=o},36888:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n,i){t.call(this),this.parent=e,this.outerValue=n,this.outerIndex=i,this.index=0}return i(e,t),e.prototype._next=function(t){this.parent.notifyNext(this.outerValue,t,this.outerIndex,this.index++,this)},e.prototype._error=function(t){this.parent.notifyError(t,this),this.unsubscribe()},e.prototype._complete=function(){this.parent.notifyComplete(this),this.unsubscribe()},e}(n(42109).Subscriber);e.InnerSubscriber=r},94429:function(t,e,n){"use strict";var i=n(18705),r=function(){function t(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}return t.prototype.observe=function(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}},t.prototype.do=function(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}},t.prototype.accept=function(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)},t.prototype.toObservable=function(){switch(this.kind){case"N":return i.Observable.of(this.value);case"E":return i.Observable.throw(this.error);case"C":return i.Observable.empty()}throw new Error("unexpected notification kind value")},t.createNext=function(e){return void 0!==e?new t("N",e):t.undefinedValueNotification},t.createError=function(e){return new t("E",void 0,e)},t.createComplete=function(){return t.completeNotification},t.completeNotification=new t("C"),t.undefinedValueNotification=new t("N",void 0),t}();e.Notification=r},18705:function(t,e,n){"use strict";var i=n(80019),r=n(18154),s=n(45783),o=n(10142),a=function(){function t(t){this._isScalar=!1,t&&(this._subscribe=t)}return t.prototype.lift=function(e){var n=new t;return n.source=this,n.operator=e,n},t.prototype.subscribe=function(t,e,n){var i=this.operator,s=r.toSubscriber(t,e,n);if(i?i.call(s,this.source):s.add(this.source||!s.syncErrorThrowable?this._subscribe(s):this._trySubscribe(s)),s.syncErrorThrowable&&(s.syncErrorThrowable=!1,s.syncErrorThrown))throw s.syncErrorValue;return s},t.prototype._trySubscribe=function(t){try{return this._subscribe(t)}catch(e){t.syncErrorThrown=!0,t.syncErrorValue=e,t.error(e)}},t.prototype.forEach=function(t,e){var n=this;if(e||(i.root.Rx&&i.root.Rx.config&&i.root.Rx.config.Promise?e=i.root.Rx.config.Promise:i.root.Promise&&(e=i.root.Promise)),!e)throw new Error("no Promise impl found");return new e(function(e,i){var r;r=n.subscribe(function(e){if(r)try{t(e)}catch(n){i(n),r.unsubscribe()}else t(e)},i,e)})},t.prototype._subscribe=function(t){return this.source.subscribe(t)},t.prototype[s.observable]=function(){return this},t.prototype.pipe=function(){for(var t=[],e=0;ee&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i},e}(r.Subject);e.ReplaySubject=u;var h=function(t,e){this.time=t,this.value=e}},25430:function(t,e,n){"use strict";var i=n(2369);e.xQ=i.Subject,n(18705),n(24769),n(95914),n(88007),n(3194),n(61898),n(16301),n(23276),n(66593),n(13745),n(57362),n(24518),n(68789),n(30520),n(67370),n(86866),n(11505),n(5031),n(36780),n(17038),n(15718),n(27915),n(90763),n(6846),n(65662),n(6799),n(81854),n(612),n(10838),n(6725),n(8827),n(43511),n(38922),n(25178),n(56937),n(22947),n(82894),n(11206),n(94183),n(16653),n(17930),n(81118),n(50317),n(90674),n(66460),n(79232),n(3945),n(44674),n(73505),n(38749),n(16479),n(22744),n(44475),n(97384),n(8237),n(24937),n(99013),n(84042),n(44436),n(7099),n(6217),n(57476),n(72646),n(91573),n(27387),n(27366),n(88859),n(65425),n(16733),n(23381),n(80404),n(63770),n(53626),n(98851),n(84878),n(26544),n(53582),n(61749),n(34838),n(49681),n(46227),n(56455),n(40881),n(94315),n(92910),n(52442),n(84664),n(61250),n(28310),n(43027),n(18252),n(49571),n(31782),n(9800),n(41854),n(74839),n(1305),n(99144),n(89952),n(85863),n(2865),n(92667),n(22185),n(72919),n(88630),n(75458),n(40780),n(35099),n(57502),n(81676),n(20579),n(71323),n(84950),n(57113),n(95073),n(75654),n(59889),n(96611),n(81845),n(7828),n(4881),n(74568),n(32352),n(50169),n(93543),n(61690),n(15914),n(68583),n(44808),n(49088),n(72293),n(42109),n(65593),n(81959),n(73907),n(51493),n(94429),n(44640),n(11758),n(6594),n(13815),n(84536),n(73390),n(62688),n(24482),n(18353);n(55298);n(10142);n(85522),n(90680),n(97088),n(12948),n(28592),n(72121),n(45783);n(39053)},11965:function(t,e){"use strict";var n=function(){function t(e,n){void 0===n&&(n=t.now),this.SchedulerAction=e,this.now=n}return t.prototype.schedule=function(t,e,n){return void 0===e&&(e=0),new this.SchedulerAction(this,t).schedule(n,e)},t.now=Date.now?Date.now:function(){return+new Date},t}();e.Scheduler=n},2369:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(42109),o=n(72293),a=n(6594),l=n(9060),c=n(28592),u=function(t){function e(e){t.call(this,e),this.destination=e}return i(e,t),e}(s.Subscriber);e.SubjectSubscriber=u;var h=function(t){function e(){t.call(this),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}return i(e,t),e.prototype[c.rxSubscriber]=function(){return new u(this)},e.prototype.lift=function(t){var e=new d(this,this);return e.operator=t,e},e.prototype.next=function(t){if(this.closed)throw new a.ObjectUnsubscribedError;if(!this.isStopped)for(var e=this.observers,n=e.length,i=e.slice(),r=0;r=t.length)return void i.complete();i.next(e[n]),t.index=n+1,this.schedule(t)}},e.prototype._subscribe=function(t){var n=this.arrayLike,i=this.scheduler,r=n.length;if(i)return i.schedule(e.dispatch,0,{arrayLike:n,index:0,length:r,subscriber:t});for(var s=0;s1?new e(t,i):1===r?new s.ScalarObservable(t[0],i):new o.EmptyObservable(i)},e.dispatch=function(t){var e=t.array,n=t.index,i=t.subscriber;n>=t.count?i.complete():(i.next(e[n]),!i.closed&&(t.index=n+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.array,i=n.length,r=this.scheduler;if(r)return r.schedule(e.dispatch,0,{array:n,index:0,count:i,subscriber:t});for(var s=0;s1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null}}(o.Subscriber)},34078:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e){t.call(this),this.observableFactory=e}return i(e,t),e.create=function(t){return new e(t)},e.prototype._subscribe=function(t){return new l(t,this.observableFactory)},e}(r.Observable);e.DeferObservable=a;var l=function(t){function e(e,n){t.call(this,e),this.factory=n,this.tryDefer()}return i(e,t),e.prototype.tryDefer=function(){try{this._callFactory()}catch(t){this._error(t)}},e.prototype._callFactory=function(){var t=this.factory();t&&this.add(s.subscribeToResult(this,t))},e}(o.OuterSubscriber)},70481:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e){t.call(this),this.scheduler=e}return i(e,t),e.create=function(t){return new e(t)},e.dispatch=function(t){t.subscriber.complete()},e.prototype._subscribe=function(t){var n=this.scheduler;if(n)return n.schedule(e.dispatch,0,{subscriber:t});t.complete()},e}(n(18705).Observable);e.EmptyObservable=r},72210:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.error=e,this.scheduler=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){t.subscriber.error(t.error)},e.prototype._subscribe=function(t){var n=this.error,i=this.scheduler;if(t.syncErrorThrowable=!0,i)return i.schedule(e.dispatch,0,{error:n,subscriber:t});t.error(n)},e}(n(18705).Observable);e.ErrorObservable=r},56064:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(70481),o=n(48242),a=n(93658),l=n(84308),c=function(t){function e(e,n){t.call(this),this.sources=e,this.resultSelector=n}return i(e,t),e.create=function(){for(var t=[],n=0;nu?u:e:e}(t)),this.arr=t,this.idx=e,this.len=n}return t.prototype[o.iterator]=function(){return this},t.prototype.next=function(){return this.idx=t.count?i.complete():(i.next(e),!i.closed&&(t.index=n+1,t.start=e+1,this.schedule(t)))},e.prototype._subscribe=function(t){var n=0,i=this.start,r=this._count,s=this.scheduler;if(s)return s.schedule(e.dispatch,0,{index:n,count:r,start:i,subscriber:t});for(;;){if(n++>=r){t.complete();break}if(t.next(i++),t.closed)break}},e}(n(18705).Observable);e.RangeObservable=r},80478:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this),this.value=e,this.scheduler=n,this._isScalar=!0,n&&(this._isScalar=!1)}return i(e,t),e.create=function(t,n){return new e(t,n)},e.dispatch=function(t){var e=t.value,n=t.subscriber;t.done?n.complete():(n.next(e),!n.closed&&(t.done=!0,this.schedule(t)))},e.prototype._subscribe=function(t){var n=this.value,i=this.scheduler;if(i)return i.schedule(e.dispatch,0,{done:!1,value:n,subscriber:t});t.next(n),t.closed||t.complete()},e}(n(18705).Observable);e.ScalarObservable=r},82966:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(85522),o=n(39479),a=function(t){function e(e,n,i){void 0===n&&(n=0),void 0===i&&(i=s.asap),t.call(this),this.source=e,this.delayTime=n,this.scheduler=i,(!o.isNumeric(n)||n<0)&&(this.delayTime=0),(!i||"function"!=typeof i.schedule)&&(this.scheduler=s.asap)}return i(e,t),e.create=function(t,n,i){return void 0===n&&(n=0),void 0===i&&(i=s.asap),new e(t,n,i)},e.dispatch=function(t){return this.add(t.source.subscribe(t.subscriber))},e.prototype._subscribe=function(t){return this.scheduler.schedule(e.dispatch,this.delayTime,{source:this.source,subscriber:t})},e}(r.Observable);e.SubscribeOnObservable=a},92870:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(39479),s=n(18705),o=n(90680),a=n(41503),l=n(783),c=function(t){function e(e,n,i){void 0===e&&(e=0),t.call(this),this.period=-1,this.dueTime=0,r.isNumeric(n)?this.period=Number(n)<1?1:Number(n):a.isScheduler(n)&&(i=n),a.isScheduler(i)||(i=o.async),this.scheduler=i,this.dueTime=l.isDate(e)?+e-this.scheduler.now():e}return i(e,t),e.create=function(t,n,i){return void 0===t&&(t=0),new e(t,n,i)},e.dispatch=function(t){var e=t.index,n=t.period,i=t.subscriber;if(i.next(e),!i.closed){if(-1===n)return i.complete();t.index=e+1,this.schedule(t,n)}},e.prototype._subscribe=function(t){var n=this;return n.scheduler.schedule(e.dispatch,n.dueTime,{index:0,period:n.period,subscriber:t})},e}(s.Observable);e.TimerObservable=c},16196:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(18705),s=n(93658),o=n(84308),a=function(t){function e(e,n){t.call(this),this.resourceFactory=e,this.observableFactory=n}return i(e,t),e.create=function(t,n){return new e(t,n)},e.prototype._subscribe=function(t){var e,n=this.resourceFactory,i=this.observableFactory;try{return e=n(),new l(t,e,i)}catch(r){t.error(r)}},e}(r.Observable);e.UsingObservable=a;var l=function(t){function e(e,n,i){t.call(this,e),this.resource=n,this.observableFactory=i,e.add(n),this.tryUse()}return i(e,t),e.prototype.tryUse=function(){try{var t=this.observableFactory.call(this,this.resource);t&&this.add(s.subscribeToResult(this,t))}catch(e){this._error(e)}},e}(o.OuterSubscriber)},59246:function(t,e,n){"use strict";var i=n(19183);e.bindCallback=i.BoundCallbackObservable.create},65571:function(t,e,n){"use strict";var i=n(78655);e.bindNodeCallback=i.BoundNodeCallbackObservable.create},24669:function(t,e,n){"use strict";var i=n(41503),r=n(48242),s=n(96177),o=n(49134);e.combineLatest=function(){for(var t=[],e=0;e1&&"number"==typeof t[t.length-1]&&(n=t.pop())):"number"==typeof l&&(n=t.pop()),null===a&&1===t.length&&t[0]instanceof i.Observable?t[0]:o.mergeAll(n)(new r.ArrayObservable(t,a))}},94503:function(t,e,n){"use strict";var i=n(20143);e.never=i.NeverObservable.create},69657:function(t,e,n){"use strict";var i=n(96177);e.of=i.ArrayObservable.of},61395:function(t,e,n){"use strict";var i=n(46243);e.onErrorResumeNext=i.onErrorResumeNextStatic},95425:function(t,e,n){"use strict";var i=n(19770);e.pairs=i.PairsObservable.create},24330:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(48242),s=n(96177),o=n(84308),a=n(93658);e.race=function(){for(var t=[],e=0;e=2&&(o=arguments[1]);var a=Number.POSITIVE_INFINITY;return e>=3&&(a=arguments[2]),s.bufferTime(t,o,a,n)(this)}},92523:function(t,e,n){"use strict";var i=n(15440);e.bufferToggle=function(t,e){return i.bufferToggle(t,e)(this)}},49436:function(t,e,n){"use strict";var i=n(51786);e.bufferWhen=function(t){return i.bufferWhen(t)(this)}},64731:function(t,e,n){"use strict";var i=n(93017);e._catch=function(t){return i.catchError(t)(this)}},92273:function(t,e,n){"use strict";var i=n(17054);e.combineAll=function(t){return i.combineAll(t)(this)}},8709:function(t,e,n){"use strict";var i=n(49134);e.combineLatest=function(){for(var t=[],e=0;e=2?i.reduce(t,e)(this):i.reduce(t)(this)}},12931:function(t,e,n){"use strict";var i=n(15329);e.repeat=function(t){return void 0===t&&(t=-1),i.repeat(t)(this)}},68816:function(t,e,n){"use strict";var i=n(63964);e.repeatWhen=function(t){return i.repeatWhen(t)(this)}},17144:function(t,e,n){"use strict";var i=n(40241);e.retry=function(t){return void 0===t&&(t=-1),i.retry(t)(this)}},82766:function(t,e,n){"use strict";var i=n(23896);e.retryWhen=function(t){return i.retryWhen(t)(this)}},62068:function(t,e,n){"use strict";var i=n(92043);e.sample=function(t){return i.sample(t)(this)}},97013:function(t,e,n){"use strict";var i=n(90680),r=n(71239);e.sampleTime=function(t,e){return void 0===e&&(e=i.async),r.sampleTime(t,e)(this)}},98996:function(t,e,n){"use strict";var i=n(64949);e.scan=function(t,e){return arguments.length>=2?i.scan(t,e)(this):i.scan(t)(this)}},77033:function(t,e,n){"use strict";var i=n(88948);e.sequenceEqual=function(t,e){return i.sequenceEqual(t,e)(this)}},10377:function(t,e,n){"use strict";var i=n(35473);e.share=function(){return i.share()(this)}},71623:function(t,e,n){"use strict";var i=n(62704);e.shareReplay=function(t,e,n){return i.shareReplay(t,e,n)(this)}},91956:function(t,e,n){"use strict";var i=n(92223);e.single=function(t){return i.single(t)(this)}},72355:function(t,e,n){"use strict";var i=n(11189);e.skip=function(t){return i.skip(t)(this)}},69329:function(t,e,n){"use strict";var i=n(73346);e.skipLast=function(t){return i.skipLast(t)(this)}},68481:function(t,e,n){"use strict";var i=n(12928);e.skipUntil=function(t){return i.skipUntil(t)(this)}},587:function(t,e,n){"use strict";var i=n(69415);e.skipWhile=function(t){return i.skipWhile(t)(this)}},49292:function(t,e,n){"use strict";var i=n(30673);e.startWith=function(){for(var t=[],e=0;e0&&this.destination.next(e),t.prototype._complete.call(this)},e}(r.Subscriber),a=function(t){function e(e,n,i){t.call(this,e),this.bufferSize=n,this.startBufferEvery=i,this.buffers=[],this.count=0}return i(e,t),e.prototype._next=function(t){var e=this,n=e.bufferSize,i=e.startBufferEvery,r=e.buffers,s=e.count;this.count++,s%i==0&&r.push([]);for(var o=r.length;o--;){var a=r[o];a.push(t),a.length===n&&(r.splice(o,1),this.destination.next(a))}},e.prototype._complete=function(){for(var e=this.buffers,n=this.destination;e.length>0;){var i=e.shift();i.length>0&&n.next(i)}t.prototype._complete.call(this)},e}(r.Subscriber)},6489:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(90680),s=n(42109),o=n(41503);e.bufferTime=function(t){var e=arguments.length,n=r.async;o.isScheduler(arguments[arguments.length-1])&&(n=arguments[arguments.length-1],e--);var i=null;e>=2&&(i=arguments[1]);var s=Number.POSITIVE_INFINITY;return e>=3&&(s=arguments[2]),function(e){return e.lift(new a(t,i,s,n))}};var a=function(){function t(t,e,n,i){this.bufferTimeSpan=t,this.bufferCreationInterval=e,this.maxBufferSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.bufferTimeSpan,this.bufferCreationInterval,this.maxBufferSize,this.scheduler))},t}(),l=function(){this.buffer=[]},c=function(t){function e(e,n,i,r,s){t.call(this,e),this.bufferTimeSpan=n,this.bufferCreationInterval=i,this.maxBufferSize=r,this.scheduler=s,this.contexts=[];var o=this.openContext();if(this.timespanOnly=null==i||i<0,this.timespanOnly)this.add(o.closeAction=s.schedule(u,n,{subscriber:this,context:o,bufferTimeSpan:n}));else{var a={bufferTimeSpan:n,bufferCreationInterval:i,subscriber:this,scheduler:s};this.add(o.closeAction=s.schedule(d,n,{subscriber:this,context:o})),this.add(s.schedule(h,i,a))}}return i(e,t),e.prototype._next=function(t){for(var e,n=this.contexts,i=n.length,r=0;r0;){var i=e.shift();n.next(i.buffer)}t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.contexts=null},e.prototype.onBufferFull=function(t){this.closeContext(t);var e=t.closeAction;if(e.unsubscribe(),this.remove(e),!this.closed&&this.timespanOnly){t=this.openContext();var n=this.bufferTimeSpan;this.add(t.closeAction=this.scheduler.schedule(u,n,{subscriber:this,context:t,bufferTimeSpan:n}))}},e.prototype.openContext=function(){var t=new l;return this.contexts.push(t),t},e.prototype.closeContext=function(t){this.destination.next(t.buffer);var e=this.contexts;(e?e.indexOf(t):-1)>=0&&e.splice(e.indexOf(t),1)},e}(s.Subscriber);function u(t){var e=t.subscriber,n=t.context;n&&e.closeContext(n),e.closed||(t.context=e.openContext(),t.context.closeAction=this.schedule(t,t.bufferTimeSpan))}function h(t){var e=t.bufferCreationInterval,n=t.bufferTimeSpan,i=t.subscriber,r=t.scheduler,s=i.openContext();i.closed||(i.add(s.closeAction=r.schedule(d,n,{subscriber:i,context:s})),this.schedule(t,e))}function d(t){t.subscriber.closeContext(t.context)}},15440:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(93658),o=n(84308);e.bufferToggle=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.openings,this.closingSelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(s.subscribeToResult(this,n))}return i(e,t),e.prototype._next=function(t){for(var e=this.contexts,n=e.length,i=0;i0;){var i=n.shift();i.subscription.unsubscribe(),i.buffer=null,i.subscription=null}this.contexts=null,t.prototype._error.call(this,e)},e.prototype._complete=function(){for(var e=this.contexts;e.length>0;){var n=e.shift();this.destination.next(n.buffer),n.subscription.unsubscribe(),n.buffer=null,n.subscription=null}this.contexts=null,t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){t?this.closeBuffer(t):this.openBuffer(e)},e.prototype.notifyComplete=function(t){this.closeBuffer(t.context)},e.prototype.openBuffer=function(t){try{var e=this.closingSelector.call(this,t);e&&this.trySubscribe(e)}catch(n){this._error(n)}},e.prototype.closeBuffer=function(t){var e=this.contexts;if(e&&t){var n=t.subscription;this.destination.next(t.buffer),e.splice(e.indexOf(t),1),this.remove(n),n.unsubscribe()}},e.prototype.trySubscribe=function(t){var e=this.contexts,n=new r.Subscription,i={buffer:[],subscription:n};e.push(i);var o=s.subscribeToResult(this,t,i);!o||o.closed?this.closeBuffer(i):(o.context=i,this.add(o),n.add(o))},e}(o.OuterSubscriber)},51786:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(72293),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.bufferWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.closingSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.closingSelector))},t}(),u=function(t){function e(e,n){t.call(this,e),this.closingSelector=n,this.subscribing=!1,this.openBuffer()}return i(e,t),e.prototype._next=function(t){this.buffer.push(t)},e.prototype._complete=function(){var e=this.buffer;e&&this.destination.next(e),t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.buffer=null,this.subscribing=!1},e.prototype.notifyNext=function(t,e,n,i,r){this.openBuffer()},e.prototype.notifyComplete=function(){this.subscribing?this.complete():this.openBuffer()},e.prototype.openBuffer=function(){var t=this.closingSubscription;t&&(this.remove(t),t.unsubscribe()),this.buffer&&this.destination.next(this.buffer),this.buffer=[];var e=s.tryCatch(this.closingSelector)();e===o.errorObject?this.error(o.errorObject.e):(t=new r.Subscription,this.closingSubscription=t,this.add(t),this.subscribing=!0,t.add(l.subscribeToResult(this,e)),this.subscribing=!1)},e}(a.OuterSubscriber)},93017:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.catchError=function(t){return function(e){var n=new o(t),i=e.lift(n);return n.caught=i}};var o=function(){function t(t){this.selector=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.selector,this.caught))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.selector=n,this.caught=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=void 0;try{n=this.selector(e,this.caught)}catch(i){return void t.prototype.error.call(this,i)}this._unsubscribeAndRecycle(),this.add(s.subscribeToResult(this,n))}},e}(r.OuterSubscriber)},17054:function(t,e,n){"use strict";var i=n(49134);e.combineAll=function(t){return function(e){return e.lift(new i.CombineLatestOperator(t))}}},49134:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(84308),a=n(93658),l={};e.combineLatest=function(){for(var t=[],e=0;e0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){var s=Math.max(0,n[0].time-i.now());this.schedule(t,s)}else this.unsubscribe(),e.active=!1},e.prototype._schedule=function(t){this.active=!0,this.add(t.schedule(e.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))},e.prototype.scheduleNotification=function(t){if(!0!==this.errored){var e=this.scheduler,n=new u(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}},e.prototype._next=function(t){this.scheduleNotification(a.Notification.createNext(t))},e.prototype._error=function(t){this.errored=!0,this.queue=[],this.destination.error(t)},e.prototype._complete=function(){this.scheduleNotification(a.Notification.createComplete())},e}(o.Subscriber),u=function(t,e){this.time=t,this.notification=e}},22944:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(18705),o=n(84308),a=n(93658);e.delayWhen=function(t,e){return e?function(n){return new u(n,e).lift(new l(t))}:function(e){return e.lift(new l(t))}};var l=function(){function t(t){this.delayDurationSelector=t}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.delayDurationSelector))},t}(),c=function(t){function e(e,n){t.call(this,e),this.delayDurationSelector=n,this.completed=!1,this.delayNotifierSubscriptions=[],this.values=[]}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.destination.next(t),this.removeSubscription(r),this.tryComplete()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype.notifyComplete=function(t){var e=this.removeSubscription(t);e&&this.destination.next(e),this.tryComplete()},e.prototype._next=function(t){try{var e=this.delayDurationSelector(t);e&&this.tryDelay(e,t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){this.completed=!0,this.tryComplete()},e.prototype.removeSubscription=function(t){t.unsubscribe();var e=this.delayNotifierSubscriptions.indexOf(t),n=null;return-1!==e&&(n=this.values[e],this.delayNotifierSubscriptions.splice(e,1),this.values.splice(e,1)),n},e.prototype.tryDelay=function(t,e){var n=a.subscribeToResult(this,t,e);n&&!n.closed&&(this.add(n),this.delayNotifierSubscriptions.push(n)),this.values.push(e)},e.prototype.tryComplete=function(){this.completed&&0===this.delayNotifierSubscriptions.length&&this.destination.complete()},e}(o.OuterSubscriber),u=function(t){function e(e,n){t.call(this),this.source=e,this.subscriptionDelay=n}return i(e,t),e.prototype._subscribe=function(t){this.subscriptionDelay.subscribe(new h(t,this.source))},e}(s.Observable),h=function(t){function e(e,n){t.call(this),this.parent=e,this.source=n,this.sourceSubscribed=!1}return i(e,t),e.prototype._next=function(t){this.subscribeToSource()},e.prototype._error=function(t){this.unsubscribe(),this.parent.error(t)},e.prototype._complete=function(){this.subscribeToSource()},e.prototype.subscribeToSource=function(){this.sourceSubscribed||(this.sourceSubscribed=!0,this.unsubscribe(),this.source.subscribe(this.parent))},e}(r.Subscriber)},95591:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.dematerialize=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){t.observe(this.destination)},e}(r.Subscriber)},25753:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658),o=n(40317);e.distinct=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.keySelector=t,this.flushes=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.keySelector,this.flushes))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=n,this.values=new o.Set,i&&this.add(s.subscribeToResult(this,i))}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.values.clear()},e.prototype.notifyError=function(t,e){this._error(t)},e.prototype._next=function(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)},e.prototype._useKeySelector=function(t){var e,n=this.destination;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)},e.prototype._finalizeNext=function(t,e){var n=this.values;n.has(t)||(n.add(t),this.destination.next(e))},e}(r.OuterSubscriber);e.DistinctSubscriber=l},65608:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.distinctUntilChanged=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compare=t,this.keySelector=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compare,this.keySelector))},t}(),l=function(t){function e(e,n,i){t.call(this,e),this.keySelector=i,this.hasKey=!1,"function"==typeof n&&(this.compare=n)}return i(e,t),e.prototype.compare=function(t,e){return t===e},e.prototype._next=function(t){var e=t;if(this.keySelector&&(e=s.tryCatch(this.keySelector)(t))===o.errorObject)return this.destination.error(o.errorObject.e);var n=!1;if(this.hasKey){if((n=s.tryCatch(this.compare)(this.key,e))===o.errorObject)return this.destination.error(o.errorObject.e)}else this.hasKey=!0;!1===Boolean(n)&&(this.key=e,this.destination.next(t))},e}(r.Subscriber)},8330:function(t,e,n){"use strict";var i=n(65608);e.distinctUntilKeyChanged=function(t,e){return i.distinctUntilChanged(function(n,i){return e?e(n[t],i[t]):n[t]===i[t]})}},29264:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.elementAt=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){if(this.index=t,this.defaultValue=e,t<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.index,this.defaultValue))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.index=n,this.defaultValue=i}return i(e,t),e.prototype._next=function(t){0==this.index--&&(this.destination.next(t),this.destination.complete())},e.prototype._complete=function(){var t=this.destination;this.index>=0&&(void 0!==this.defaultValue?t.next(this.defaultValue):t.error(new s.ArgumentOutOfRangeError)),t.complete()},e}(r.Subscriber)},26285:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.every=function(t,e){return function(n){return n.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){this.predicate=t,this.thisArg=e,this.source=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg,this.source))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.predicate=n,this.thisArg=i,this.source=r,this.index=0,this.thisArg=i||this}return i(e,t),e.prototype.notifyComplete=function(t){this.destination.next(t),this.destination.complete()},e.prototype._next=function(t){var e=!1;try{e=this.predicate.call(this.thisArg,t,this.index++,this.source)}catch(n){return void this.destination.error(n)}e||this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},93229:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaust=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e),this.hasCompleted=!1,this.hasSubscription=!1}return i(e,t),e.prototype._next=function(t){this.hasSubscription||(this.hasSubscription=!0,this.add(s.subscribeToResult(this,t)))},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},15758:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.exhaustMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}return i(e,t),e.prototype._next=function(t){this.hasSubscription||this.tryNext(t)},e.prototype.tryNext=function(t){var e=this.index++,n=this.destination;try{var i=this.project(t,e);this.hasSubscription=!0,this.add(s.subscribeToResult(this,i,t,e))}catch(r){n.error(r)}},e.prototype._complete=function(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.trySelectResult(t,e,n,i):s.next(e)},e.prototype.trySelectResult=function(t,e,n,i){var r=this.resultSelector,s=this.destination;try{var o=r(t,e,n,i);s.next(o)}catch(a){s.error(a)}},e.prototype.notifyError=function(t){this.destination.error(t)},e.prototype.notifyComplete=function(t){this.remove(t),this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber)},55364:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(84308),a=n(93658);e.expand=function(t,e,n){return void 0===e&&(e=Number.POSITIVE_INFINITY),void 0===n&&(n=void 0),e=(e||0)<1?Number.POSITIVE_INFINITY:e,function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.project=t,this.concurrent=e,this.scheduler=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.project,this.concurrent,this.scheduler))},t}();e.ExpandOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.project=n,this.concurrent=i,this.scheduler=r,this.index=0,this.active=0,this.hasCompleted=!1,i0&&this._next(e.shift()),this.hasCompleted&&0===this.active&&this.destination.complete()},e}(o.OuterSubscriber);e.ExpandSubscriber=c},27015:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.filter=function(t,e){return function(n){return n.lift(new s(t,e))}};var s=function(){function t(t,e){this.predicate=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.thisArg))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.thisArg=i,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.predicate.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}e&&this.destination.next(t)},e}(r.Subscriber)},94367:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293);e.finalize=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.callback=t}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.callback))},t}(),a=function(t){function e(e,n){t.call(this,e),this.add(new s.Subscription(n))}return i(e,t),e}(r.Subscriber)},16700:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.find=function(t,e){if("function"!=typeof t)throw new TypeError("predicate is not a function");return function(n){return n.lift(new s(t,n,!1,e))}};var s=function(){function t(t,e,n,i){this.predicate=t,this.source=e,this.yieldIndex=n,this.thisArg=i}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.predicate,this.source,this.yieldIndex,this.thisArg))},t}();e.FindValueOperator=s;var o=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.source=i,this.yieldIndex=r,this.thisArg=s,this.index=0}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){var e=this.predicate,n=this.thisArg,i=this.index++;try{e.call(n||this,t,i,this.source)&&this.notifyComplete(this.yieldIndex?i:t)}catch(r){this.destination.error(r)}},e.prototype._complete=function(){this.notifyComplete(this.yieldIndex?-1:void 0)},e}(r.Subscriber);e.FindValueSubscriber=o},86452:function(t,e,n){"use strict";var i=n(16700);e.findIndex=function(t,e){return function(n){return n.lift(new i.FindValueOperator(t,n,!0,e))}}},12309:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.first=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.index=0,this.hasCompleted=!1,this._emitted=!1}return i(e,t),e.prototype._next=function(t){var e=this.index++;this.predicate?this._tryPredicate(t,e):this._emit(t,e)},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}n&&this._emit(t,e)},e.prototype._emit=function(t,e){this.resultSelector?this._tryResultSelector(t,e):this._emitFinal(t)},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this._emitFinal(n)},e.prototype._emitFinal=function(t){var e=this.destination;this._emitted||(this._emitted=!0,e.next(t),e.complete(),this.hasCompleted=!0)},e.prototype._complete=function(){var t=this.destination;this.hasCompleted||void 0===this.defaultValue?this.hasCompleted||t.error(new s.EmptyError):(t.next(this.defaultValue),t.complete())},e}(r.Subscriber)},92577:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(72293),o=n(18705),a=n(2369),l=n(49754),c=n(30764);e.groupBy=function(t,e,n,i){return function(r){return r.lift(new u(t,e,n,i))}};var u=function(){function t(t,e,n,i){this.keySelector=t,this.elementSelector=e,this.durationSelector=n,this.subjectSelector=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.keySelector,this.elementSelector,this.durationSelector,this.subjectSelector))},t}(),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.keySelector=n,this.elementSelector=i,this.durationSelector=r,this.subjectSelector=s,this.groups=null,this.attemptedToUnsubscribe=!1,this.count=0}return i(e,t),e.prototype._next=function(t){var e;try{e=this.keySelector(t)}catch(n){return void this.error(n)}this._group(t,e)},e.prototype._group=function(t,e){var n=this.groups;n||(n=this.groups="string"==typeof e?new c.FastMap:new l.Map);var i,r=n.get(e);if(this.elementSelector)try{i=this.elementSelector(t)}catch(u){this.error(u)}else i=t;if(!r){r=this.subjectSelector?this.subjectSelector():new a.Subject,n.set(e,r);var s=new p(e,r,this);if(this.destination.next(s),this.durationSelector){var o=void 0;try{o=this.durationSelector(new p(e,r))}catch(u){return void this.error(u)}this.add(o.subscribe(new d(e,r,this)))}}r.closed||r.next(i)},e.prototype._error=function(t){var e=this.groups;e&&(e.forEach(function(e,n){e.error(t)}),e.clear()),this.destination.error(t)},e.prototype._complete=function(){var t=this.groups;t&&(t.forEach(function(t,e){t.complete()}),t.clear()),this.destination.complete()},e.prototype.removeGroup=function(t){this.groups.delete(t)},e.prototype.unsubscribe=function(){this.closed||(this.attemptedToUnsubscribe=!0,0===this.count&&t.prototype.unsubscribe.call(this))},e}(r.Subscriber),d=function(t){function e(e,n,i){t.call(this,n),this.key=e,this.group=n,this.parent=i}return i(e,t),e.prototype._next=function(t){this.complete()},e.prototype._unsubscribe=function(){var t=this.parent,e=this.key;this.key=this.parent=null,t&&t.removeGroup(e)},e}(r.Subscriber),p=function(t){function e(e,n,i){t.call(this),this.key=e,this.groupSubject=n,this.refCountSubscription=i}return i(e,t),e.prototype._subscribe=function(t){var e=new s.Subscription,n=this.refCountSubscription,i=this.groupSubject;return n&&!n.closed&&e.add(new f(n)),e.add(i.subscribe(t)),e},e}(o.Observable);e.GroupedObservable=p;var f=function(t){function e(e){t.call(this),this.parent=e,e.count++}return i(e,t),e.prototype.unsubscribe=function(){var e=this.parent;!e.closed&&!this.closed&&(t.prototype.unsubscribe.call(this),e.count-=1,0===e.count&&e.attemptedToUnsubscribe&&e.unsubscribe())},e}(s.Subscription)},86898:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(68668);e.ignoreElements=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype._next=function(t){s.noop()},e}(r.Subscriber)},89121:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.isEmpty=function(){return function(t){return t.lift(new s)}};var s=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new o(t))},t}(),o=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype.notifyComplete=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype._next=function(t){this.notifyComplete(!1)},e.prototype._complete=function(){this.notifyComplete(!0)},e}(r.Subscriber)},4636:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.last=function(t,e,n){return function(i){return i.lift(new o(t,e,n,i))}};var o=function(){function t(t,e,n,i){this.predicate=t,this.resultSelector=e,this.defaultValue=n,this.source=i}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.resultSelector,this.defaultValue,this.source))},t}(),a=function(t){function e(e,n,i,r,s){t.call(this,e),this.predicate=n,this.resultSelector=i,this.defaultValue=r,this.source=s,this.hasValue=!1,this.index=0,void 0!==r&&(this.lastValue=r,this.hasValue=!0)}return i(e,t),e.prototype._next=function(t){var e=this.index++;if(this.predicate)this._tryPredicate(t,e);else{if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryPredicate=function(t,e){var n;try{n=this.predicate(t,e,this.source)}catch(i){return void this.destination.error(i)}if(n){if(this.resultSelector)return void this._tryResultSelector(t,e);this.lastValue=t,this.hasValue=!0}},e.prototype._tryResultSelector=function(t,e){var n;try{n=this.resultSelector(t,e)}catch(i){return void this.destination.error(i)}this.lastValue=n,this.hasValue=!0},e.prototype._complete=function(){var t=this.destination;this.hasValue?(t.next(this.lastValue),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},40119:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.map=function(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 s(t,e))}};var s=function(){function t(t,e){this.project=t,this.thisArg=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.project,this.thisArg))},t}();e.MapOperator=s;var o=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.count=0,this.thisArg=i||this}return i(e,t),e.prototype._next=function(t){var e;try{e=this.project.call(this.thisArg,t,this.count++)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.Subscriber)},23491:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.mapTo=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.value=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.value))},t}(),o=function(t){function e(e,n){t.call(this,e),this.value=n}return i(e,t),e.prototype._next=function(t){this.destination.next(this.value)},e}(r.Subscriber)},71177:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(94429);e.materialize=function(){return function(t){return t.lift(new o)}};var o=function(){function t(){}return t.prototype.call=function(t,e){return e.subscribe(new a(t))},t}(),a=function(t){function e(e){t.call(this,e)}return i(e,t),e.prototype._next=function(t){this.destination.next(s.Notification.createNext(t))},e.prototype._error=function(t){var e=this.destination;e.next(s.Notification.createError(t)),e.complete()},e.prototype._complete=function(){var t=this.destination;t.next(s.Notification.createComplete()),t.complete()},e}(r.Subscriber)},33499:function(t,e,n){"use strict";var i=n(97369);e.max=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)>0?e:n}:function(t,e){return t>e?t:e})}},56098:function(t,e,n){"use strict";var i=n(38781),r=n(38781);e.mergeStatic=r.merge,e.merge=function(){for(var t=[],e=0;e0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(s.OuterSubscriber);e.MergeMapSubscriber=a},6693:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.mergeMapTo=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),"number"==typeof e&&(n=e,e=null),function(i){return i.lift(new o(t,e,n))}};var o=function(){function t(t,e,n){void 0===n&&(n=Number.POSITIVE_INFINITY),this.ish=t,this.resultSelector=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.ish,this.resultSelector,this.concurrent))},t}();e.MergeMapToOperator=o;var a=function(t){function e(e,n,i,r){void 0===r&&(r=Number.POSITIVE_INFINITY),t.call(this,e),this.ish=n,this.resultSelector=i,this.concurrent=r,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()},e}(r.OuterSubscriber);e.MergeMapToSubscriber=a},7550:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(33463),s=n(85814),o=n(93658),a=n(84308);e.mergeScan=function(t,e,n){return void 0===n&&(n=Number.POSITIVE_INFINITY),function(i){return i.lift(new l(t,e,n))}};var l=function(){function t(t,e,n){this.accumulator=t,this.seed=e,this.concurrent=n}return t.prototype.call=function(t,e){return e.subscribe(new c(t,this.accumulator,this.seed,this.concurrent))},t}();e.MergeScanOperator=l;var c=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this.acc=i,this.concurrent=r,this.hasValue=!1,this.hasCompleted=!1,this.buffer=[],this.active=0,this.index=0}return i(e,t),e.prototype._next=function(t){if(this.active0?this._next(e.shift()):0===this.active&&this.hasCompleted&&(!1===this.hasValue&&this.destination.next(this.acc),this.destination.complete())},e}(a.OuterSubscriber);e.MergeScanSubscriber=c},51213:function(t,e,n){"use strict";var i=n(97369);e.min=function(t){return i.reduce("function"==typeof t?function(e,n){return t(e,n)<0?e:n}:function(t,e){return t=2?function(n){return o.pipe(i.scan(t,e),r.takeLast(1),s.defaultIfEmpty(e))(n)}:function(e){return o.pipe(i.scan(function(e,n,i){return t(e,n,i+1)}),r.takeLast(1))(e)}}},1694:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.refCount=function(){return function(t){return t.lift(new s(t))}};var s=function(){function t(t){this.connectable=t}return t.prototype.call=function(t,e){var n=this.connectable;n._refCount++;var i=new o(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r},t}(),o=function(t){function e(e,n){t.call(this,e),this.connectable=n}return i(e,t),e.prototype._unsubscribe=function(){var t=this.connectable;if(t){this.connectable=null;var e=t._refCount;if(e<=0)this.connection=null;else if(t._refCount=e-1,e>1)this.connection=null;else{var n=this.connection,i=t._connection;this.connection=null,i&&(!n||i===n)&&i.unsubscribe()}}else this.connection=null},e}(r.Subscriber)},15329:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(70481);e.repeat=function(t){return void 0===t&&(t=-1),function(e){return 0===t?new s.EmptyObservable:e.lift(new o(t<0?-1:t-1,e))}};var o=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.count,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.complete=function(){if(!this.isStopped){var e=this.source,n=this.count;if(0===n)return t.prototype.complete.call(this);n>-1&&(this.count=n-1),e.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},63964:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.repeatWhen=function(t){return function(e){return e.lift(new c(t))}};var c=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,e))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i,this.sourceIsBeingSubscribedTo=!0}return i(e,t),e.prototype.notifyNext=function(t,e,n,i,r){this.sourceIsBeingSubscribedTo=!0,this.source.subscribe(this)},e.prototype.notifyComplete=function(e){if(!1===this.sourceIsBeingSubscribedTo)return t.prototype.complete.call(this)},e.prototype.complete=function(){if(this.sourceIsBeingSubscribedTo=!1,!this.isStopped){if(this.retries||this.subscribeToRetries(),!this.retriesSubscription||this.retriesSubscription.closed)return t.prototype.complete.call(this);this._unsubscribeAndRecycle(),this.notifications.next()}},e.prototype._unsubscribe=function(){var t=this.notifications,e=this.retriesSubscription;t&&(t.unsubscribe(),this.notifications=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype._unsubscribeAndRecycle=function(){var e=this,n=e.notifications,i=e.retries,r=e.retriesSubscription;return this.notifications=null,this.retries=null,this.retriesSubscription=null,t.prototype._unsubscribeAndRecycle.call(this),this.notifications=n,this.retries=i,this.retriesSubscription=r,this},e.prototype.subscribeToRetries=function(){this.notifications=new r.Subject;var e=s.tryCatch(this.notifier)(this.notifications);if(e===o.errorObject)return t.prototype.complete.call(this);this.retries=e,this.retriesSubscription=l.subscribeToResult(this,e)},e}(a.OuterSubscriber)},40241:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.retry=function(t){return void 0===t&&(t=-1),function(e){return e.lift(new s(t,e))}};var s=function(){function t(t,e){this.count=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.count,this.source))},t}(),o=function(t){function e(e,n,i){t.call(this,e),this.count=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.source,i=this.count;if(0===i)return t.prototype.error.call(this,e);i>-1&&(this.count=i-1),n.subscribe(this._unsubscribeAndRecycle())}},e}(r.Subscriber)},23896:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(33463),o=n(85814),a=n(84308),l=n(93658);e.retryWhen=function(t){return function(e){return e.lift(new c(t,e))}};var c=function(){function t(t,e){this.notifier=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new u(t,this.notifier,this.source))},t}(),u=function(t){function e(e,n,i){t.call(this,e),this.notifier=n,this.source=i}return i(e,t),e.prototype.error=function(e){if(!this.isStopped){var n=this.errors,i=this.retries,a=this.retriesSubscription;if(i)this.errors=null,this.retriesSubscription=null;else{if(n=new r.Subject,(i=s.tryCatch(this.notifier)(n))===o.errorObject)return t.prototype.error.call(this,o.errorObject.e);a=l.subscribeToResult(this,i)}this._unsubscribeAndRecycle(),this.errors=n,this.retries=i,this.retriesSubscription=a,n.next(e)}},e.prototype._unsubscribe=function(){var t=this.errors,e=this.retriesSubscription;t&&(t.unsubscribe(),this.errors=null),e&&(e.unsubscribe(),this.retriesSubscription=null),this.retries=null},e.prototype.notifyNext=function(t,e,n,i,r){var s=this,o=s.errors,a=s.retries,l=s.retriesSubscription;this.errors=null,this.retries=null,this.retriesSubscription=null,this._unsubscribeAndRecycle(),this.errors=o,this.retries=a,this.retriesSubscription=l,this.source.subscribe(this)},e}(a.OuterSubscriber)},92043:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.sample=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){this.notifier=t}return t.prototype.call=function(t,e){var n=new a(t),i=e.subscribe(n);return i.add(s.subscribeToResult(n,this.notifier)),i},t}(),a=function(t){function e(){t.apply(this,arguments),this.hasValue=!1}return i(e,t),e.prototype._next=function(t){this.value=t,this.hasValue=!0},e.prototype.notifyNext=function(t,e,n,i,r){this.emitValue()},e.prototype.notifyComplete=function(){this.emitValue()},e.prototype.emitValue=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.value))},e}(r.OuterSubscriber)},71239:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(90680);e.sampleTime=function(t,e){return void 0===e&&(e=s.async),function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.period=t,this.scheduler=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.period,this.scheduler))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.period=n,this.scheduler=i,this.hasValue=!1,this.add(i.schedule(l,n,{subscriber:this,period:n}))}return i(e,t),e.prototype._next=function(t){this.lastValue=t,this.hasValue=!0},e.prototype.notifyNext=function(){this.hasValue&&(this.hasValue=!1,this.destination.next(this.lastValue))},e}(r.Subscriber);function l(t){var e=t.period;t.subscriber.notifyNext(),this.schedule(t,e)}},64949:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.scan=function(t,e){var n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new s(t,e,n))}};var s=function(){function t(t,e,n){void 0===n&&(n=!1),this.accumulator=t,this.seed=e,this.hasSeed=n}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.accumulator,this.seed,this.hasSeed))},t}(),o=function(t){function e(e,n,i,r){t.call(this,e),this.accumulator=n,this._seed=i,this.hasSeed=r,this.index=0}return i(e,t),Object.defineProperty(e.prototype,"seed",{get:function(){return this._seed},set:function(t){this.hasSeed=!0,this._seed=t},enumerable:!0,configurable:!0}),e.prototype._next=function(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)},e.prototype._tryNext=function(t){var e,n=this.index++;try{e=this.accumulator(this.seed,t,n)}catch(i){this.destination.error(i)}this.seed=e,this.destination.next(e)},e}(r.Subscriber)},88948:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(33463),o=n(85814);e.sequenceEqual=function(t,e){return function(n){return n.lift(new a(t,e))}};var a=function(){function t(t,e){this.compareTo=t,this.comparor=e}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.compareTo,this.comparor))},t}();e.SequenceEqualOperator=a;var l=function(t){function e(e,n,i){t.call(this,e),this.compareTo=n,this.comparor=i,this._a=[],this._b=[],this._oneComplete=!1,this.add(n.subscribe(new c(e,this)))}return i(e,t),e.prototype._next=function(t){this._oneComplete&&0===this._b.length?this.emit(!1):(this._a.push(t),this.checkValues())},e.prototype._complete=function(){this._oneComplete?this.emit(0===this._a.length&&0===this._b.length):this._oneComplete=!0},e.prototype.checkValues=function(){for(var t=this,e=t._a,n=t._b,i=t.comparor;e.length>0&&n.length>0;){var r=e.shift(),a=n.shift(),l=!1;i?(l=s.tryCatch(i)(r,a))===o.errorObject&&this.destination.error(o.errorObject.e):l=r===a,l||this.emit(!1)}},e.prototype.emit=function(t){var e=this.destination;e.next(t),e.complete()},e.prototype.nextB=function(t){this._oneComplete&&0===this._a.length?this.emit(!1):(this._b.push(t),this.checkValues())},e}(r.Subscriber);e.SequenceEqualSubscriber=l;var c=function(t){function e(e,n){t.call(this,e),this.parent=n}return i(e,t),e.prototype._next=function(t){this.parent.nextB(t)},e.prototype._error=function(t){this.parent.error(t)},e.prototype._complete=function(){this.parent._complete()},e}(r.Subscriber)},35473:function(t,e,n){"use strict";var i=n(27372),r=n(1694),s=n(2369);function o(){return new s.Subject}e.share=function(){return function(t){return r.refCount()(i.multicast(o)(t))}}},62704:function(t,e,n){"use strict";var i=n(81959);e.shareReplay=function(t,e,n){return function(r){return r.lift(function(t,e,n){var r,s,o=0,a=!1,l=!1;return function(c){o++,(!r||a)&&(a=!1,r=new i.ReplaySubject(t,e,n),s=c.subscribe({next:function(t){r.next(t)},error:function(t){a=!0,r.error(t)},complete:function(){l=!0,r.complete()}}));var u=r.subscribe(this);return function(){o--,u.unsubscribe(),s&&0===o&&l&&s.unsubscribe()}}}(t,e,n))}}},92223:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(44640);e.single=function(t){return function(e){return e.lift(new o(t,e))}};var o=function(){function t(t,e){this.predicate=t,this.source=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.predicate,this.source))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.predicate=n,this.source=i,this.seenValue=!1,this.index=0}return i(e,t),e.prototype.applySingleValue=function(t){this.seenValue?this.destination.error("Sequence contains more than one element"):(this.seenValue=!0,this.singleValue=t)},e.prototype._next=function(t){var e=this.index++;this.predicate?this.tryNext(t,e):this.applySingleValue(t)},e.prototype.tryNext=function(t,e){try{this.predicate(t,e,this.source)&&this.applySingleValue(t)}catch(n){this.destination.error(n)}},e.prototype._complete=function(){var t=this.destination;this.index>0?(t.next(this.seenValue?this.singleValue:void 0),t.complete()):t.error(new s.EmptyError)},e}(r.Subscriber)},11189:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109);e.skip=function(t){return function(e){return e.lift(new s(t))}};var s=function(){function t(t){this.total=t}return t.prototype.call=function(t,e){return e.subscribe(new o(t,this.total))},t}(),o=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){++this.count>this.total&&this.destination.next(t)},e}(r.Subscriber)},73346:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758);e.skipLast=function(t){return function(e){return e.lift(new o(t))}};var o=function(){function t(t){if(this._skipCount=t,this._skipCount<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(0===this._skipCount?new r.Subscriber(t):new a(t,this._skipCount))},t}(),a=function(t){function e(e,n){t.call(this,e),this._skipCount=n,this._count=0,this._ring=new Array(n)}return i(e,t),e.prototype._next=function(t){var e=this._skipCount,n=this._count++;if(n1?new i.ArrayObservable(t,n):new s.EmptyObservable(n),e)}}},10118:function(t,e,n){"use strict";var i=n(82966);e.subscribeOn=function(t,e){return void 0===e&&(e=0),function(n){return n.lift(new r(t,e))}};var r=function(){function t(t,e){this.scheduler=t,this.delay=e}return t.prototype.call=function(t,e){return new i.SubscribeOnObservable(e,this.delay,this.scheduler).subscribe(t)},t}()},77243:function(t,e,n){"use strict";var i=n(18483),r=n(5027);e.switchAll=function(){return i.switchMap(r.identity)}},18483:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMap=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.project=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.project,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.project=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e,n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this._innerSub(e,t,n)},e.prototype._innerSub=function(t,e,n){var i=this.innerSubscription;i&&i.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,t,e,n))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){this.resultSelector?this._tryNotifyNext(t,e,n,i):this.destination.next(e)},e.prototype._tryNotifyNext=function(t,e,n,i){var r;try{r=this.resultSelector(t,e,n,i)}catch(s){return void this.destination.error(s)}this.destination.next(r)},e}(r.OuterSubscriber)},10684:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(84308),s=n(93658);e.switchMapTo=function(t,e){return function(n){return n.lift(new o(t,e))}};var o=function(){function t(t,e){this.observable=t,this.resultSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new a(t,this.observable,this.resultSelector))},t}(),a=function(t){function e(e,n,i){t.call(this,e),this.inner=n,this.resultSelector=i,this.index=0}return i(e,t),e.prototype._next=function(t){var e=this.innerSubscription;e&&e.unsubscribe(),this.add(this.innerSubscription=s.subscribeToResult(this,this.inner,t,this.index++))},e.prototype._complete=function(){var e=this.innerSubscription;(!e||e.closed)&&t.prototype._complete.call(this)},e.prototype._unsubscribe=function(){this.innerSubscription=null},e.prototype.notifyComplete=function(e){this.remove(e),this.innerSubscription=null,this.isStopped&&t.prototype._complete.call(this)},e.prototype.notifyNext=function(t,e,n,i,r){var s=this.destination;this.resultSelector?this.tryResultSelector(t,e,n,i):s.next(e)},e.prototype.tryResultSelector=function(t,e,n,i){var r,s=this.resultSelector,o=this.destination;try{r=s(t,e,n,i)}catch(a){return void o.error(a)}o.next(r)},e}(r.OuterSubscriber)},44396:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.take=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.total,n=++this.count;n<=e&&(this.destination.next(t),n===e&&(this.destination.complete(),this.unsubscribe()))},e}(r.Subscriber)},73935:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(42109),s=n(11758),o=n(70481);e.takeLast=function(t){return function(e){return 0===t?new o.EmptyObservable:e.lift(new a(t))}};var a=function(){function t(t){if(this.total=t,this.total<0)throw new s.ArgumentOutOfRangeError}return t.prototype.call=function(t,e){return e.subscribe(new l(t,this.total))},t}(),l=function(t){function e(e,n){t.call(this,e),this.total=n,this.ring=new Array,this.count=0}return i(e,t),e.prototype._next=function(t){var e=this.ring,n=this.total,i=this.count++;e.length0)for(var n=this.count>=this.total?this.total:this.count,i=this.ring,r=0;r0?this.startWindowEvery:this.windowSize,n=this.destination,i=this.windowSize,r=this.windows,o=r.length,a=0;a=0&&l%e==0&&!this.closed&&r.shift().complete(),++this.count%e==0&&!this.closed){var c=new s.Subject;r.push(c),n.next(c)}},e.prototype._error=function(t){var e=this.windows;if(e)for(;e.length>0&&!this.closed;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){var t=this.windows;if(t)for(;t.length>0&&!this.closed;)t.shift().complete();this.destination.complete()},e.prototype._unsubscribe=function(){this.count=0,this.windows=null},e}(r.Subscriber)},42603:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(90680),o=n(42109),a=n(39479),l=n(41503);e.windowTime=function(t){var e=s.async,n=null,i=Number.POSITIVE_INFINITY;return l.isScheduler(arguments[3])&&(e=arguments[3]),l.isScheduler(arguments[2])?e=arguments[2]:a.isNumeric(arguments[2])&&(i=arguments[2]),l.isScheduler(arguments[1])?e=arguments[1]:a.isNumeric(arguments[1])&&(n=arguments[1]),function(r){return r.lift(new c(t,n,i,e))}};var c=function(){function t(t,e,n,i){this.windowTimeSpan=t,this.windowCreationInterval=e,this.maxWindowSize=n,this.scheduler=i}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.windowTimeSpan,this.windowCreationInterval,this.maxWindowSize,this.scheduler))},t}(),u=function(t){function e(){t.apply(this,arguments),this._numberOfNextedValues=0}return i(e,t),e.prototype.next=function(e){this._numberOfNextedValues++,t.prototype.next.call(this,e)},Object.defineProperty(e.prototype,"numberOfNextedValues",{get:function(){return this._numberOfNextedValues},enumerable:!0,configurable:!0}),e}(r.Subject),h=function(t){function e(e,n,i,r,s){t.call(this,e),this.destination=e,this.windowTimeSpan=n,this.windowCreationInterval=i,this.maxWindowSize=r,this.scheduler=s,this.windows=[];var o=this.openWindow();if(null!==i&&i>=0){var a={windowTimeSpan:n,windowCreationInterval:i,subscriber:this,scheduler:s};this.add(s.schedule(f,n,{subscriber:this,window:o,context:null})),this.add(s.schedule(p,i,a))}else this.add(s.schedule(d,n,{subscriber:this,window:o,windowTimeSpan:n}))}return i(e,t),e.prototype._next=function(t){for(var e=this.windows,n=e.length,i=0;i=this.maxWindowSize&&this.closeWindow(r))}},e.prototype._error=function(t){for(var e=this.windows;e.length>0;)e.shift().error(t);this.destination.error(t)},e.prototype._complete=function(){for(var t=this.windows;t.length>0;){var e=t.shift();e.closed||e.complete()}this.destination.complete()},e.prototype.openWindow=function(){var t=new u;return this.windows.push(t),this.destination.next(t),t},e.prototype.closeWindow=function(t){t.complete();var e=this.windows;e.splice(e.indexOf(t),1)},e}(o.Subscriber);function d(t){var e=t.subscriber,n=t.windowTimeSpan,i=t.window;i&&e.closeWindow(i),t.window=e.openWindow(),this.schedule(t,n)}function p(t){var e=t.windowTimeSpan,n=t.subscriber,i=t.scheduler,r=t.windowCreationInterval,s=n.openWindow(),o=this,a={action:o,subscription:null};a.subscription=i.schedule(f,e,{subscriber:n,window:s,context:a}),o.add(a.subscription),o.schedule(t,r)}function f(t){var e=t.subscriber,n=t.window,i=t.context;i&&i.action&&i.subscription&&i.action.remove(i.subscription),e.closeWindow(n)}},59048:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(2369),s=n(72293),o=n(33463),a=n(85814),l=n(84308),c=n(93658);e.windowToggle=function(t,e){return function(n){return n.lift(new u(t,e))}};var u=function(){function t(t,e){this.openings=t,this.closingSelector=e}return t.prototype.call=function(t,e){return e.subscribe(new h(t,this.openings,this.closingSelector))},t}(),h=function(t){function e(e,n,i){t.call(this,e),this.openings=n,this.closingSelector=i,this.contexts=[],this.add(this.openSubscription=c.subscribeToResult(this,n,n))}return i(e,t),e.prototype._next=function(t){var e=this.contexts;if(e)for(var n=e.length,i=0;i0){var o=s.indexOf(n);-1!==o&&s.splice(o,1)}},e.prototype.notifyComplete=function(){},e.prototype._next=function(t){if(0===this.toRespond.length){var e=[t].concat(this.values);this.project?this._tryProject(e):this.destination.next(e)}},e.prototype._tryProject=function(t){var e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)},e}(r.OuterSubscriber)},9477:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(96177),s=n(48242),o=n(42109),a=n(84308),l=n(93658),c=n(72121);function u(){for(var t=[],e=0;ethis.index},t.prototype.hasCompleted=function(){return this.array.length===this.index},t}(),g=function(t){function e(e,n,i){t.call(this,e),this.parent=n,this.observable=i,this.stillUnsubscribed=!0,this.buffer=[],this.isComplete=!1}return i(e,t),e.prototype[c.iterator]=function(){return this},e.prototype.next=function(){var t=this.buffer;return 0===t.length&&this.isComplete?{value:null,done:!0}:{value:t.shift(),done:!1}},e.prototype.hasValue=function(){return this.buffer.length>0},e.prototype.hasCompleted=function(){return 0===this.buffer.length&&this.isComplete},e.prototype.notifyComplete=function(){this.buffer.length>0?(this.isComplete=!0,this.parent.notifyInactive()):this.destination.complete()},e.prototype.notifyNext=function(t,e,n,i,r){this.buffer.push(e),this.parent.checkIterators()},e.prototype.subscribe=function(t,e){return l.subscribeToResult(this,this.observable,this,e)},e}(a.OuterSubscriber)},33310:function(t,e,n){"use strict";var i=n(9477);e.zipAll=function(t){return function(e){return e.lift(new i.ZipOperator(t))}}},28101:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(e,n){t.call(this)}return i(e,t),e.prototype.schedule=function(t,e){return void 0===e&&(e=0),this},e}(n(72293).Subscription);e.Action=r},67529:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=n(95018),o=function(t){function e(e,n){t.call(this,e,n),this.scheduler=e,this.work=n}return i(e,t),e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=s.AnimationFrame.requestAnimationFrame(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(s.AnimationFrame.cancelAnimationFrame(n),e.scheduled=void 0)},e}(r.AsyncAction);e.AnimationFrameAction=o},68909:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.requestAsyncId.call(this,e,n,i):(e.actions.push(this),e.scheduled||(e.scheduled=r.Immediate.setImmediate(e.flush.bind(e,null))))},e.prototype.recycleAsyncId=function(e,n,i){if(void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0)return t.prototype.recycleAsyncId.call(this,e,n,i);0===e.actions.length&&(r.Immediate.clearImmediate(n),e.scheduled=void 0)},e}(n(12624).AsyncAction);e.AsapAction=s},25766:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e.prototype.flush=function(t){this.active=!0,this.scheduled=void 0;var e,n=this.actions,i=-1,r=n.length;t=t||n.shift();do{if(e=t.execute(t.state,t.delay))break}while(++i0?t.prototype.schedule.call(this,e,n):(this.delay=n,this.state=e,this.scheduler.flush(this),this)},e.prototype.execute=function(e,n){return n>0||this.closed?t.prototype.execute.call(this,e,n):this._execute(e,n)},e.prototype.requestAsyncId=function(e,n,i){return void 0===i&&(i=0),null!==i&&i>0||null===i&&this.delay>0?t.prototype.requestAsyncId.call(this,e,n,i):e.flush(this)},e}(n(12624).AsyncAction);e.QueueAction=r},77373:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=function(t){function e(){t.apply(this,arguments)}return i(e,t),e}(n(42704).AsyncScheduler);e.QueueScheduler=r},18353:function(t,e,n){"use strict";var i=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=n(12624),s=function(t){function e(e,n){var i=this;void 0===e&&(e=o),void 0===n&&(n=Number.POSITIVE_INFINITY),t.call(this,e,function(){return i.frame}),this.maxFrames=n,this.frame=0,this.index=-1}return i(e,t),e.prototype.flush=function(){for(var t,e,n=this.actions,i=this.maxFrames;(e=n.shift())&&(this.frame=e.delay)<=i&&!(t=e.execute(e.state,e.delay)););if(t){for(;e=n.shift();)e.unsubscribe();throw t}},e.frameTimeFactor=10,e}(n(42704).AsyncScheduler);e.VirtualTimeScheduler=s;var o=function(t){function e(e,n,i){void 0===i&&(i=e.index+=1),t.call(this,e,n),this.scheduler=e,this.work=n,this.index=i,this.active=!0,this.index=e.index=i}return i(e,t),e.prototype.schedule=function(n,i){if(void 0===i&&(i=0),!this.id)return t.prototype.schedule.call(this,n,i);this.active=!1;var r=new e(this.scheduler,this.work);return this.add(r),r.schedule(n,i)},e.prototype.requestAsyncId=function(t,n,i){void 0===i&&(i=0),this.delay=t.frame+i;var r=t.actions;return r.push(this),r.sort(e.sortActions),!0},e.prototype.recycleAsyncId=function(t,e,n){void 0===n&&(n=0)},e.prototype._execute=function(e,n){if(!0===this.active)return t.prototype._execute.call(this,e,n)},e.sortActions=function(t,e){return t.delay===e.delay?t.index===e.index?0:t.index>e.index?1:-1:t.delay>e.delay?1:-1},e}(r.AsyncAction);e.VirtualAction=o},12948:function(t,e,n){"use strict";var i=n(67529),r=n(68909);e.animationFrame=new r.AnimationFrameScheduler(i.AnimationFrameAction)},85522:function(t,e,n){"use strict";var i=n(3496),r=n(25766);e.asap=new r.AsapScheduler(i.AsapAction)},90680:function(t,e,n){"use strict";var i=n(12624),r=n(42704);e.async=new r.AsyncScheduler(i.AsyncAction)},97088:function(t,e,n){"use strict";var i=n(7100),r=n(77373);e.queue=new r.QueueScheduler(i.QueueAction)},72121:function(t,e,n){"use strict";var i=n(80019);function r(t){var e=t.Symbol;if("function"==typeof e)return e.iterator||(e.iterator=e("iterator polyfill")),e.iterator;var n=t.Set;if(n&&"function"==typeof(new n)["@@iterator"])return"@@iterator";var i=t.Map;if(i)for(var r=Object.getOwnPropertyNames(i.prototype),s=0;s0;)e.shift().setup();t.prototype.flush.call(this);for(var n=this.flushTests.filter(function(t){return t.ready});n.length>0;){var i=n.shift();this.assertDeepEqual(i.actual,i.expected)}},e.parseMarblesAsSubscriptions=function(t){if("string"!=typeof t)return new l.SubscriptionLog(Number.POSITIVE_INFINITY);for(var e=t.length,n=-1,i=Number.POSITIVE_INFINITY,r=Number.POSITIVE_INFINITY,s=0;s-1?n:o;break;case"!":if(r!==Number.POSITIVE_INFINITY)throw new Error("found a second subscription point '^' in a subscription marble diagram. There can only be one.");r=n>-1?n:o;break;default:throw new Error("there can only be '^' and '!' markers in a subscription marble diagram. Found instead '"+a+"'.")}}return r<0?new l.SubscriptionLog(i):new l.SubscriptionLog(i,r)},e.parseMarbles=function(t,e,n,i){if(void 0===i&&(i=!1),-1!==t.indexOf("!"))throw new Error('conventional marble diagrams cannot have the unsubscription marker "!"');for(var r=t.length,a=[],l=t.indexOf("^"),c=-1===l?0:l*-this.frameTimeFactor,u="object"!=typeof e?function(t){return t}:function(t){return i&&e[t]instanceof o.ColdObservable?e[t].messages:e[t]},h=-1,d=0;d-1?h:p,notification:f})}return a},e}(c.VirtualTimeScheduler);e.TestScheduler=u},95018:function(t,e,n){"use strict";var i=n(80019),r=function(t){t.requestAnimationFrame?(this.cancelAnimationFrame=t.cancelAnimationFrame.bind(t),this.requestAnimationFrame=t.requestAnimationFrame.bind(t)):t.mozRequestAnimationFrame?(this.cancelAnimationFrame=t.mozCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.mozRequestAnimationFrame.bind(t)):t.webkitRequestAnimationFrame?(this.cancelAnimationFrame=t.webkitCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.webkitRequestAnimationFrame.bind(t)):t.msRequestAnimationFrame?(this.cancelAnimationFrame=t.msCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.msRequestAnimationFrame.bind(t)):t.oRequestAnimationFrame?(this.cancelAnimationFrame=t.oCancelAnimationFrame.bind(t),this.requestAnimationFrame=t.oRequestAnimationFrame.bind(t)):(this.cancelAnimationFrame=t.clearTimeout.bind(t),this.requestAnimationFrame=function(e){return t.setTimeout(e,1e3/60)})};e.RequestAnimationFrameDefinition=r,e.AnimationFrame=new r(i.root)},11758:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"argument out of range");this.name=e.name="ArgumentOutOfRangeError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.ArgumentOutOfRangeError=i},44640:function(t,e){"use strict";var n=this&&this.__extends||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);function i(){this.constructor=t}t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},i=function(t){function e(){var e=t.call(this,"no elements in sequence");this.name=e.name="EmptyError",this.stack=e.stack,this.message=e.message}return n(e,t),e}(Error);e.EmptyError=i},30764:function(t,e){"use strict";var n=function(){function t(){this.values={}}return t.prototype.delete=function(t){return this.values[t]=null,!0},t.prototype.set=function(t,e){return this.values[t]=e,this},t.prototype.get=function(t){return this.values[t]},t.prototype.forEach=function(t,e){var n=this.values;for(var i in n)n.hasOwnProperty(i)&&null!==n[i]&&t.call(e,n[i],i)},t.prototype.clear=function(){this.values={}},t}();e.FastMap=n},42982:function(t,e,n){"use strict";var i=n(80019),r=function(){function t(t){if(this.root=t,t.setImmediate&&"function"==typeof t.setImmediate)this.setImmediate=t.setImmediate.bind(t),this.clearImmediate=t.clearImmediate.bind(t);else{this.nextHandle=1,this.tasksByHandle={},this.currentlyRunningATask=!1,this.setImmediate=this.canUseProcessNextTick()?this.createProcessNextTickSetImmediate():this.canUsePostMessage()?this.createPostMessageSetImmediate():this.canUseMessageChannel()?this.createMessageChannelSetImmediate():this.canUseReadyStateChange()?this.createReadyStateChangeSetImmediate():this.createSetTimeoutSetImmediate();var e=function t(e){delete t.instance.tasksByHandle[e]};e.instance=this,this.clearImmediate=e}}return t.prototype.identify=function(t){return this.root.Object.prototype.toString.call(t)},t.prototype.canUseProcessNextTick=function(){return"[object process]"===this.identify(this.root.process)},t.prototype.canUseMessageChannel=function(){return Boolean(this.root.MessageChannel)},t.prototype.canUseReadyStateChange=function(){var t=this.root.document;return Boolean(t&&"onreadystatechange"in t.createElement("script"))},t.prototype.canUsePostMessage=function(){var t=this.root;if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}return!1},t.prototype.partiallyApplied=function(t){for(var e=[],n=1;n=0}},1856:function(t,e){"use strict";e.isObject=function(t){return null!=t&&"object"==typeof t}},35130:function(t,e){"use strict";e.isPromise=function(t){return t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}},41503:function(t,e){"use strict";e.isScheduler=function(t){return t&&"function"==typeof t.schedule}},68668:function(t,e){"use strict";e.noop=function(){}},67239:function(t,e){"use strict";e.not=function(t,e){function n(){return!n.pred.apply(n.thisArg,arguments)}return n.pred=t,n.thisArg=e,n}},10142:function(t,e,n){"use strict";var i=n(68668);function r(t){return t?1===t.length?t[0]:function(e){return t.reduce(function(t,e){return e(t)},e)}:i.noop}e.pipe=function(){for(var t=[],e=0;e=n?{done:!0}:{done:!1,value:t[i++]}})},e.empty=function(){var t=new e(null);return t.done=!0,t},e.is=function(t){return t instanceof e||"object"==typeof t&&null!==t&&"function"==typeof t.next},t.exports=e},97310:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.isMobile=function(){return void 0!==r.window.orientation},e.default=function(t){if(!t&&!(0,s.default)())return"Node";if((0,o.default)(t))return"Electron";var e="undefined"!=typeof navigator?navigator:{},n=t||e.userAgent||"";if(n.indexOf("Edge")>-1)return"Edge";var i=-1!==n.indexOf("MSIE "),a=-1!==n.indexOf("Trident/");return i||a?"IE":r.window.chrome?"Chrome":r.window.safari?"Safari":r.window.mozInnerScreenX?"Firefox":"Unknown"};var r=n(41151),s=i(n(61602)),o=i(n(22344))},41151:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.console=e.process=e.document=e.global=e.window=e.self=void 0;var r=i(n(34321)),s={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&process};e.self=s.self||s.window||s.global,e.window=s.window||s.self||s.global,e.global=s.global||s.self||s.window,e.document=s.document||{},e.process=s.process||{};var o=console;e.console=o},84761:function(t,e,n){"use strict";var i=n(61948),r=n(34321);Object.defineProperty(e,"CO",{enumerable:!0,get:function(){return s.global}}),Object.defineProperty(e,"jU",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"qs",{enumerable:!0,get:function(){return a.default}});var s=n(41151),o=c(n(61602)),a=c(n(97310));i(n(22344));function l(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,n=new WeakMap;return(l=function(t){return t?n:e})(t)}function c(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var n=l(e);if(n&&n.has(t))return n.get(t);var i={},s=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var o in t)if("default"!==o&&Object.prototype.hasOwnProperty.call(t,o)){var a=s?Object.getOwnPropertyDescriptor(t,o):null;a&&(a.get||a.set)?Object.defineProperty(i,o,a):i[o]=t[o]}return i.default=t,n&&n.set(t,i),i}},61602:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=o,e.isBrowserMainThread=function(){return o()&&"undefined"!=typeof document};var r=i(n(34321)),s=i(n(22344));function o(){return!("object"===("undefined"==typeof process?"undefined":(0,r.default)(process))&&"[object process]"===String(process)&&!process.browser)||(0,s.default)()}},22344:function(t,e,n){"use strict";var i=n(61948);Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(t){if("undefined"!=typeof window&&"object"===(0,r.default)(window.process)&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"===(0,r.default)(process.versions)&&Boolean(process.versions.electron))return!0;var e="object"===("undefined"==typeof navigator?"undefined":(0,r.default)(navigator))&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)};var r=i(n(34321))},86991:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(14180),e),r(n(75103),e),r(n(48965),e),r(n(32595),e),r(n(82417),e),r(n(92451),e),r(n(17735),e)},14180:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.BlankNode=void 0,e.BlankNode=class{constructor(t){this.termType="BlankNode",this.value=t}equals(t){return!!t&&"BlankNode"===t.termType&&t.value===this.value}}},75103:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DataFactory=void 0;const i=n(14180),r=n(48965),s=n(32595),o=n(82417),a=n(92451),l=n(17735);let c=0;e.DataFactory=class{constructor(t){this.blankNodeCounter=0,this.blankNodePrefix=(t=t||{}).blankNodePrefix||`df_${c++}_`}namedNode(t){return new o.NamedNode(t)}blankNode(t){return new i.BlankNode(t||`${this.blankNodePrefix}${this.blankNodeCounter++}`)}literal(t,e){return new s.Literal(t,e)}variable(t){return new l.Variable(t)}defaultGraph(){return r.DefaultGraph.INSTANCE}quad(t,e,n,i){return new a.Quad(t,e,n,i||this.defaultGraph())}fromTerm(t){switch(t.termType){case"NamedNode":return this.namedNode(t.value);case"BlankNode":return this.blankNode(t.value);case"Literal":return t.language?this.literal(t.value,t.language):t.datatype.equals(s.Literal.XSD_STRING)?this.literal(t.value):this.literal(t.value,this.fromTerm(t.datatype));case"Variable":return this.variable(t.value);case"DefaultGraph":return this.defaultGraph();case"Quad":return this.quad(this.fromTerm(t.subject),this.fromTerm(t.predicate),this.fromTerm(t.object),this.fromTerm(t.graph))}}fromQuad(t){return this.fromTerm(t)}resetBlankNodeCounter(){this.blankNodeCounter=0}}},48965:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.DefaultGraph=void 0;class n{constructor(){this.termType="DefaultGraph",this.value=""}equals(t){return!!t&&"DefaultGraph"===t.termType}}e.DefaultGraph=n,n.INSTANCE=new n},32595:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Literal=void 0;const i=n(82417);class r{constructor(t,e){this.termType="Literal",this.value=t,"string"==typeof e?(this.language=e,this.datatype=r.RDF_LANGUAGE_STRING):e?(this.language="",this.datatype=e):(this.language="",this.datatype=r.XSD_STRING)}equals(t){return!!t&&"Literal"===t.termType&&t.value===this.value&&t.language===this.language&&t.datatype.equals(this.datatype)}}e.Literal=r,r.RDF_LANGUAGE_STRING=new i.NamedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#langString"),r.XSD_STRING=new i.NamedNode("http://www.w3.org/2001/XMLSchema#string")},82417:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.NamedNode=void 0,e.NamedNode=class{constructor(t){this.termType="NamedNode",this.value=t}equals(t){return!!t&&"NamedNode"===t.termType&&t.value===this.value}}},92451:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Quad=void 0,e.Quad=class{constructor(t,e,n,i){this.termType="Quad",this.value="",this.subject=t,this.predicate=e,this.object=n,this.graph=i}equals(t){return!!t&&("Quad"===t.termType||!t.termType)&&this.subject.equals(t.subject)&&this.predicate.equals(t.predicate)&&this.object.equals(t.object)&&this.graph.equals(t.graph)}}},17735:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Variable=void 0,e.Variable=class{constructor(t){this.termType="Variable",this.value=t}equals(t){return!!t&&"Variable"===t.termType&&t.value===this.value}}},31609:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),e.getSupportedJavaScriptPrimitives=e.getSupportedRdfDatatypes=e.getTermRaw=e.toRdf=e.fromRdf=void 0;const s=n(86991),o=n(9938),a=n(66060);r(n(9938),e),r(n(88871),e),r(n(66060),e);const l=new s.DataFactory,c=new a.Translator;function u(t,e){return c.fromRdf(t,e)}c.registerHandler(new o.TypeHandlerString,o.TypeHandlerString.TYPES.map(t=>l.namedNode(t)),["string"]),c.registerHandler(new o.TypeHandlerBoolean,[o.TypeHandlerBoolean.TYPE].map(t=>l.namedNode(t)),["boolean"]),c.registerHandler(new o.TypeHandlerNumberDouble,o.TypeHandlerNumberDouble.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerNumberInteger,o.TypeHandlerNumberInteger.TYPES.map(t=>l.namedNode(t)),["number"]),c.registerHandler(new o.TypeHandlerDate,o.TypeHandlerDate.TYPES.map(t=>l.namedNode(t)),["object"]),e.fromRdf=u,e.toRdf=function(t,e){return e&&"namedNode"in e&&(e={dataFactory:e}),(e=e||{})&&!e.dataFactory&&(e.dataFactory=l),c.toRdf(t,e)},e.getTermRaw=function(t,e){return"Literal"===t.termType?u(t,e):t.value},e.getSupportedRdfDatatypes=function(){return c.getSupportedRdfDatatypes()},e.getSupportedJavaScriptPrimitives=function(){return c.getSupportedJavaScriptPrimitives()}},88871:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0})},66060:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Translator=void 0,e.Translator=class{constructor(){this.supportedRdfDatatypes=[],this.fromRdfHandlers={},this.toRdfHandlers={}}static incorrectRdfDataType(t){throw new Error(`Invalid RDF ${t.datatype.value} value: '${t.value}'`)}registerHandler(t,e,n){for(const i of e)this.supportedRdfDatatypes.push(i),this.fromRdfHandlers[i.value]=t;for(const i of n){let e=this.toRdfHandlers[i];e||(this.toRdfHandlers[i]=e=[]),e.push(t)}}fromRdf(t,e){const n=this.fromRdfHandlers[t.datatype.value];return n?n.fromRdf(t,e):t.value}toRdf(t,e){const n=this.toRdfHandlers[typeof t];if(n)for(const i of n){const n=i.toRdf(t,e);if(n)return n}throw new Error(`Invalid JavaScript value: '${t}'`)}getSupportedRdfDatatypes(){return this.supportedRdfDatatypes}getSupportedJavaScriptPrimitives(){return Object.keys(this.toRdfHandlers)}}},80727:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerBoolean=void 0;const i=n(66060);class r{fromRdf(t,e){switch(t.value){case"true":return!0;case"false":return!1;case"1":return!0;case"0":return!1}return e&&i.Translator.incorrectRdfDataType(t),!1}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t?"true":"false",e||n.namedNode(r.TYPE))}}e.TypeHandlerBoolean=r,r.TYPE="http://www.w3.org/2001/XMLSchema#boolean"},52525:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerDate=void 0;const i=n(66060);class r{fromRdf(t,e){switch(e&&!t.value.match(r.VALIDATORS[t.datatype.value.substr(33,t.datatype.value.length)])&&i.Translator.incorrectRdfDataType(t),t.datatype.value){case"http://www.w3.org/2001/XMLSchema#gDay":return new Date(0,0,parseInt(t.value,10));case"http://www.w3.org/2001/XMLSchema#gMonthDay":const e=t.value.split("-");return new Date(0,parseInt(e[0],10)-1,parseInt(e[1],10));case"http://www.w3.org/2001/XMLSchema#gYear":return new Date(t.value+"-01-01");case"http://www.w3.org/2001/XMLSchema#gYearMonth":return new Date(t.value+"-01");default:return new Date(t.value)}}toRdf(t,{datatype:e,dataFactory:n}){if(e=e||n.namedNode(r.TYPES[0]),!(t instanceof Date))return null;const i=t;let s;switch(e.value){case"http://www.w3.org/2001/XMLSchema#gDay":s=String(i.getUTCDate());break;case"http://www.w3.org/2001/XMLSchema#gMonthDay":s=i.getUTCMonth()+1+"-"+i.getUTCDate();break;case"http://www.w3.org/2001/XMLSchema#gYear":s=String(i.getUTCFullYear());break;case"http://www.w3.org/2001/XMLSchema#gYearMonth":s=i.getUTCFullYear()+"-"+(i.getUTCMonth()+1);break;case"http://www.w3.org/2001/XMLSchema#date":s=i.toISOString().replace(/T.*$/,"");break;default:s=i.toISOString()}return n.literal(s,e)}}e.TypeHandlerDate=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#dateTime","http://www.w3.org/2001/XMLSchema#date","http://www.w3.org/2001/XMLSchema#gDay","http://www.w3.org/2001/XMLSchema#gMonthDay","http://www.w3.org/2001/XMLSchema#gYear","http://www.w3.org/2001/XMLSchema#gYearMonth"],r.VALIDATORS={date:/^[0-9]+-[0-9][0-9]-[0-9][0-9]Z?$/,dateTime:/^[0-9]+-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9](\.[0-9][0-9][0-9])?((Z?)|([\+-][0-9][0-9]:[0-9][0-9]))$/,gDay:/^[0-9]+$/,gMonthDay:/^[0-9]+-[0-9][0-9]$/,gYear:/^[0-9]+$/,gYearMonth:/^[0-9]+-[0-9][0-9]$/}},38554:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberDouble=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseFloat(t.value);return e&&isNaN(n)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return e=e||n.namedNode(r.TYPES[0]),isNaN(t)?n.literal("NaN",e):isFinite(t)?t%1==0?null:n.literal(t.toExponential(15).replace(/(\d)0*e\+?/,"$1E"),e):n.literal(t>0?"INF":"-INF",e)}}e.TypeHandlerNumberDouble=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#double","http://www.w3.org/2001/XMLSchema#decimal","http://www.w3.org/2001/XMLSchema#float"]},37750:function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerNumberInteger=void 0;const i=n(66060);class r{fromRdf(t,e){const n=parseInt(t.value,10);return e&&(isNaN(n)||t.value.indexOf(".")>=0)&&i.Translator.incorrectRdfDataType(t),n}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(String(t),e||n.namedNode(t<=r.MAX_INT&&t>=r.MIN_INT?r.TYPES[0]:r.TYPES[1]))}}e.TypeHandlerNumberInteger=r,r.TYPES=["http://www.w3.org/2001/XMLSchema#integer","http://www.w3.org/2001/XMLSchema#long","http://www.w3.org/2001/XMLSchema#int","http://www.w3.org/2001/XMLSchema#byte","http://www.w3.org/2001/XMLSchema#short","http://www.w3.org/2001/XMLSchema#negativeInteger","http://www.w3.org/2001/XMLSchema#nonNegativeInteger","http://www.w3.org/2001/XMLSchema#nonPositiveInteger","http://www.w3.org/2001/XMLSchema#positiveInteger","http://www.w3.org/2001/XMLSchema#unsignedByte","http://www.w3.org/2001/XMLSchema#unsignedInt","http://www.w3.org/2001/XMLSchema#unsignedLong","http://www.w3.org/2001/XMLSchema#unsignedShort"],r.MAX_INT=2147483647,r.MIN_INT=-2147483648},14608:function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.TypeHandlerString=void 0;class n{fromRdf(t){return t.value}toRdf(t,{datatype:e,dataFactory:n}){return n.literal(t,e)}}e.TypeHandlerString=n,n.TYPES=["http://www.w3.org/2001/XMLSchema#string","http://www.w3.org/2001/XMLSchema#normalizedString","http://www.w3.org/2001/XMLSchema#anyURI","http://www.w3.org/2001/XMLSchema#base64Binary","http://www.w3.org/2001/XMLSchema#language","http://www.w3.org/2001/XMLSchema#Name","http://www.w3.org/2001/XMLSchema#NCName","http://www.w3.org/2001/XMLSchema#NMTOKEN","http://www.w3.org/2001/XMLSchema#token","http://www.w3.org/2001/XMLSchema#hexBinary","http://www.w3.org/1999/02/22-rdf-syntax-ns#langString","http://www.w3.org/2001/XMLSchema#time","http://www.w3.org/2001/XMLSchema#duration"]},9938:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),r=this&&this.__exportStar||function(t,e){for(var n in t)"default"!==n&&!Object.prototype.hasOwnProperty.call(e,n)&&i(e,t,n)};Object.defineProperty(e,"__esModule",{value:!0}),r(n(80727),e),r(n(52525),e),r(n(38554),e),r(n(37750),e),r(n(14608),e)},93640:function(t,e,n){"use strict";var i={};n.r(i),n.d(i,{decode:function(){return eL},encode:function(){return iL}});var r={};n.r(r),n.d(r,{decode:function(){return cL},encode:function(){return hL}});var s={};n.r(s),n.d(s,{decode:function(){return dL},encode:function(){return fL}});var o={};function a(t){return"function"==typeof t}n.r(o),n.d(o,{decode:function(){return mL},encode:function(){return yL}});let l=!1;const c={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 l&&console.log("RxJS: Back to a better error behavior. Thank you. <3");l=t},get useDeprecatedSynchronousErrorHandling(){return l}};function u(t){setTimeout(()=>{throw t},0)}const h={closed:!0,next(t){},error(t){if(c.useDeprecatedSynchronousErrorHandling)throw t;u(t)},complete(){}},d=Array.isArray||(t=>t&&"number"==typeof t.length);function p(t){return null!==t&&"object"==typeof t}const f=(()=>{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})();class g{constructor(t){this.closed=!1,this._parentOrParents=null,this._subscriptions=null,t&&(this._ctorUnsubscribe=!0,this._unsubscribe=t)}unsubscribe(){let t;if(this.closed)return;let{_parentOrParents:e,_ctorUnsubscribe:n,_unsubscribe:i,_subscriptions:r}=this;if(this.closed=!0,this._parentOrParents=null,this._subscriptions=null,e instanceof g)e.remove(this);else if(null!==e)for(let a=0;at.concat(e instanceof f?e.errors:e),[])}g.EMPTY=((m=new g).closed=!0,m);const y="function"==typeof Symbol?Symbol("rxSubscriber"):"@@rxSubscriber_"+Math.random();class v extends g{constructor(t,e,n){switch(super(),this.syncErrorValue=null,this.syncErrorThrown=!1,this.syncErrorThrowable=!1,this.isStopped=!1,arguments.length){case 0:this.destination=h;break;case 1:if(!t){this.destination=h;break}if("object"==typeof t){t instanceof v?(this.syncErrorThrowable=t.syncErrorThrowable,this.destination=t,t.add(this)):(this.syncErrorThrowable=!0,this.destination=new _(this,t));break}default:this.syncErrorThrowable=!0,this.destination=new _(this,t,e,n)}}[y](){return this}static create(t,e,n){const i=new v(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 _ extends v{constructor(t,e,n,i){super(),this._parentSubscriber=t;let r,s=this;a(e)?r=e:e&&(r=e.next,n=e.error,i=e.complete,e!==h&&(s=Object.create(e),a(s.unsubscribe)&&this.add(s.unsubscribe.bind(s)),s.unsubscribe=this.unsubscribe.bind(this))),this._context=s,this._next=r,this._error=n,this._complete=i}next(t){if(!this.isStopped&&this._next){const{_parentSubscriber:e}=this;c.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}=c;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):u(t),this.unsubscribe();else{if(this.unsubscribe(),n)throw t;u(t)}}}complete(){if(!this.isStopped){const{_parentSubscriber:t}=this;if(this._complete){const e=()=>this._complete.call(this._context);c.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(),c.useDeprecatedSynchronousErrorHandling)throw n;u(n)}}__tryOrSetError(t,e,n){if(!c.useDeprecatedSynchronousErrorHandling)throw new Error("bad call");try{e.call(this._context,n)}catch(i){return c.useDeprecatedSynchronousErrorHandling?(t.syncErrorValue=i,t.syncErrorThrown=!0,!0):(u(i),!0)}return!1}_unsubscribe(){const{_parentSubscriber:t}=this;this._context=null,this._parentSubscriber=null,t.unsubscribe()}}const w="function"==typeof Symbol&&Symbol.observable||"@@observable";function x(t){return t}function S(...t){return E(t)}function E(t){return 0===t.length?x:1===t.length?t[0]:function(e){return t.reduce((t,e)=>e(t),e)}}let C=(()=>{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,r=function(t,e,n){if(t){if(t instanceof v)return t;if(t[y])return t[y]()}return t||e||n?new v(t,e,n):new v(h)}(t,e,n);if(r.add(i?i.call(r,this.source):this.source||c.useDeprecatedSynchronousErrorHandling&&!r.syncErrorThrowable?this._subscribe(r):this._trySubscribe(r)),c.useDeprecatedSynchronousErrorHandling&&r.syncErrorThrowable&&(r.syncErrorThrowable=!1,r.syncErrorThrown))throw r.syncErrorValue;return r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){c.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 v?n:null}return!0}(t)?t.error(e):console.warn(e)}}forEach(t,e){return new(e=O(e))((e,n)=>{let i;i=this.subscribe(e=>{try{t(e)}catch(r){n(r),i&&i.unsubscribe()}},n,e)})}_subscribe(t){const{source:e}=this;return e&&e.subscribe(t)}[w](){return this}pipe(...t){return 0===t.length?this:E(t)(this)}toPromise(t){return new(t=O(t))((t,e)=>{let n;this.subscribe(t=>n=t,t=>e(t),()=>t(n))})}}return t.create=e=>new t(e),t})();function O(t){if(t||(t=c.Promise||Promise),!t)throw new Error("no Promise impl found");return t}const T=(()=>{function t(){return Error.call(this),this.message="object unsubscribed",this.name="ObjectUnsubscribedError",this}return t.prototype=Object.create(Error.prototype),t})();class k extends g{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 A extends v{constructor(t){super(t),this.destination=t}}let P=(()=>{class t extends C{constructor(){super(),this.observers=[],this.closed=!1,this.isStopped=!1,this.hasError=!1,this.thrownError=null}[y](){return new A(this)}lift(t){const e=new M(this,this);return e.operator=t,e}next(t){if(this.closed)throw new T;if(!this.isStopped){const{observers:e}=this,n=e.length,i=e.slice();for(let r=0;rnew M(t,e),t})();class M extends P{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):g.EMPTY}}function I(t){return t&&"function"==typeof t.schedule}function D(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 R(t,e))}}class R{constructor(t,e){this.project=t,this.thisArg=e}call(t,e){return e.subscribe(new N(t,this.project,this.thisArg))}}class N extends v{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)}}const L=t=>e=>{for(let n=0,i=t.length;nt&&"number"==typeof t.length&&"function"!=typeof t;function B(t){return!!t&&"function"!=typeof t.subscribe&&"function"==typeof t.then}const V=t=>{if(t&&"function"==typeof t[w])return(t=>e=>{const n=t[w]();if("function"!=typeof n.subscribe)throw new TypeError("Provided object does not correctly implement Symbol.observable");return n.subscribe(e)})(t);if(F(t))return L(t);if(B(t))return(t=>e=>(t.then(t=>{e.closed||(e.next(t),e.complete())},t=>e.error(t)).then(null,u),e))(t);if(t&&"function"==typeof t[j])return(t=>e=>{const n=t[j]();for(;;){let t;try{t=n.next()}catch(i){return e.error(i),e}if(t.done){e.complete();break}if(e.next(t.value),e.closed)break}return"function"==typeof n.return&&e.add(()=>{n.return&&n.return()}),e})(t);{const e=`You provided ${p(t)?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.`;throw new TypeError(e)}};function z(t,e){return new C(n=>{const i=new g;let r=0;return i.add(e.schedule(function(){r!==t.length?(n.next(t[r++]),n.closed||i.add(this.schedule())):n.complete()})),i})}function U(t,e){return e?function(t,e){if(null!=t){if(function(t){return t&&"function"==typeof t[w]}(t))return function(t,e){return new C(n=>{const i=new g;return i.add(e.schedule(()=>{const r=t[w]();i.add(r.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(B(t))return function(t,e){return new C(n=>{const i=new g;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(F(t))return z(t,e);if(function(t){return t&&"function"==typeof t[j]}(t)||"string"==typeof t)return function(t,e){if(!t)throw new Error("Iterable cannot be null");return new C(n=>{const i=new g;let r;return i.add(()=>{r&&"function"==typeof r.return&&r.return()}),i.add(e.schedule(()=>{r=t[j](),i.add(e.schedule(function(){if(n.closed)return;let t,e;try{const n=r.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 C?t:new C(V(t))}class H extends v{constructor(t){super(),this.parent=t}_next(t){this.parent.notifyNext(t)}_error(t){this.parent.notifyError(t),this.unsubscribe()}_complete(){this.parent.notifyComplete(),this.unsubscribe()}}class $ extends v{notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.destination.complete()}}function G(t,e){if(e.closed)return;if(t instanceof C)return t.subscribe(e);let n;try{n=V(t)(e)}catch(i){e.error(i)}return n}function W(t,e,n=Number.POSITIVE_INFINITY){return"function"==typeof e?i=>i.pipe(W((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))),n)):("number"==typeof e&&(n=e),e=>e.lift(new q(t,n)))}class q{constructor(t,e=Number.POSITIVE_INFINITY){this.project=t,this.concurrent=e}call(t,e){return e.subscribe(new X(t,this.project,this.concurrent))}}class X extends ${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(t.shift()):0===this.active&&this.hasCompleted&&this.destination.complete()}}function Y(t=Number.POSITIVE_INFINITY){return W(x,t)}function K(t,e){return e?z(t,e):new C(L(t))}function Q(...t){let e=Number.POSITIVE_INFINITY,n=null,i=t[t.length-1];return I(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 C?t[0]:Y(e)(K(t,n))}function Z(){return function(t){return t.lift(new J(t))}}class J{constructor(t){this.connectable=t}call(t,e){const{connectable:n}=this;n._refCount++;const i=new tt(t,n),r=e.subscribe(i);return i.closed||(i.connection=n.connect()),r}}class tt extends v{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 et extends C{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 g,t.add(this.source.subscribe(new it(this.getSubject(),this))),t.closed&&(this._connection=null,t=g.EMPTY)),t}refCount(){return Z()(this)}}const nt=(()=>{const t=et.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 it extends A{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 rt(t,e){return function(n){let i;if(i="function"==typeof t?t:function(){return t},"function"==typeof e)return n.lift(new st(i,e));const r=Object.create(n,nt);return r.source=n,r.subjectFactory=i,r}}class st{constructor(t,e){this.subjectFactory=t,this.selector=e}call(t,e){const{selector:n}=this,i=this.subjectFactory(),r=n(i).subscribe(t);return r.add(e.subscribe(i)),r}}function ot(){return new P}function at(){return t=>Z()(rt(ot)(t))}function lt(t){for(let e in t)if(t[e]===lt)return e;throw Error("Could not find renamed property on target object.")}function ct(t,e){for(const n in e)e.hasOwnProperty(n)&&!t.hasOwnProperty(n)&&(t[n]=e[n])}function ut(t){if("string"==typeof t)return t;if(Array.isArray(t))return"["+t.map(ut).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 ht(t,e){return null==t||""===t?null===e?"":e:null==e||""===e?t:t+" "+e}const dt=lt({__forward_ref__:lt});function pt(t){return t.__forward_ref__=pt,t.toString=function(){return ut(this())},t}function ft(t){return gt(t)?t():t}function gt(t){return"function"==typeof t&&t.hasOwnProperty(dt)&&t.__forward_ref__===pt}class mt extends Error{constructor(t,e){super(function(t,e){return`${t?`NG0${t}: `:""}${e}`}(t,e)),this.code=t}}function bt(t){return"string"==typeof t?t:null==t?"":String(t)}function yt(t){return"function"==typeof t?t.name||t.toString():"object"==typeof t&&null!=t&&"function"==typeof t.type?t.type.name||t.type.toString():bt(t)}function vt(t,e){const n=e?` in ${e}`:"";throw new mt("201",`No provider for ${yt(t)} found${n}`)}function _t(t,e){null==t&&function(t,e,n,i){throw new Error(`ASSERTION ERROR: ${t}`+(null==i?"":` [Expected=> ${n} ${i} ${e} <=Actual]`))}(e,t,null,"!=")}function xt(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function St(t){return{providers:t.providers||[],imports:t.imports||[]}}function Et(t){return Ct(t,Tt)||Ct(t,At)}function Ct(t,e){return t.hasOwnProperty(e)?t[e]:null}function Ot(t){return t&&(t.hasOwnProperty(kt)||t.hasOwnProperty(Pt))?t[kt]:null}const Tt=lt({"\u0275prov":lt}),kt=lt({"\u0275inj":lt}),At=lt({ngInjectableDef:lt}),Pt=lt({ngInjectorDef:lt});var Mt=(()=>((Mt=Mt||{})[Mt.Default=0]="Default",Mt[Mt.Host=1]="Host",Mt[Mt.Self=2]="Self",Mt[Mt.SkipSelf=4]="SkipSelf",Mt[Mt.Optional=8]="Optional",Mt))();let It;function Dt(t){const e=It;return It=t,e}function Rt(t,e,n){const i=Et(t);return i&&"root"==i.providedIn?void 0===i.value?i.value=i.factory():i.value:n&Mt.Optional?null:void 0!==e?e:void vt(ut(t),"Injector")}function Nt(t){return{toString:t}.toString()}var Lt=(()=>((Lt=Lt||{})[Lt.OnPush=0]="OnPush",Lt[Lt.Default=1]="Default",Lt))(),jt=(()=>((jt=jt||{})[jt.Emulated=0]="Emulated",jt[jt.None=2]="None",jt[jt.ShadowDom=3]="ShadowDom",jt))();const Ft="undefined"!=typeof globalThis&&globalThis,Bt="undefined"!=typeof window&&window,Vt="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&self,zt="undefined"!=typeof global&&global,Ut=Ft||zt||Bt||Vt,Ht={},$t=[],Gt=lt({"\u0275cmp":lt}),Wt=lt({"\u0275dir":lt}),qt=lt({"\u0275pipe":lt}),Xt=lt({"\u0275mod":lt}),Yt=lt({"\u0275loc":lt}),Kt=lt({"\u0275fac":lt}),Qt=lt({__NG_ELEMENT_ID__:lt});let Zt=0;function Jt(t){return Nt(()=>{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===Lt.OnPush,directiveDefs:null,pipeDefs:null,selectors:t.selectors||$t,viewQuery:t.viewQuery||null,features:t.features||null,data:t.data||{},encapsulation:t.encapsulation||jt.Emulated,id:"c",styles:t.styles||$t,_:null,setInput:null,schemas:t.schemas||null,tView:null},i=t.directives,r=t.features,s=t.pipes;return n.id+=Zt++,n.inputs=re(t.inputs,e),n.outputs=re(t.outputs),r&&r.forEach(t=>t(n)),n.directiveDefs=i?()=>("function"==typeof i?i():i).map(te):null,n.pipeDefs=s?()=>("function"==typeof s?s():s).map(ee):null,n})}function te(t){return ae(t)||function(t){return t[Wt]||null}(t)}function ee(t){return function(t){return t[qt]||null}(t)}const ne={};function ie(t){return Nt(()=>{const e={type:t.type,bootstrap:t.bootstrap||$t,declarations:t.declarations||$t,imports:t.imports||$t,exports:t.exports||$t,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null};return null!=t.id&&(ne[t.id]=t.type),e})}function re(t,e){if(null==t)return Ht;const n={};for(const i in t)if(t.hasOwnProperty(i)){let r=t[i],s=r;Array.isArray(r)&&(s=r[1],r=r[0]),n[r]=i,e&&(e[r]=s)}return n}const se=Jt;function oe(t){return{type:t.type,name:t.name,factory:null,pure:!1!==t.pure,onDestroy:t.type.prototype.ngOnDestroy||null}}function ae(t){return t[Gt]||null}function le(t,e){const n=t[Xt]||null;if(!n&&!0===e)throw new Error(`Type ${ut(t)} does not have '\u0275mod' property.`);return n}function ce(t){return Array.isArray(t)&&"object"==typeof t[1]}function ue(t){return Array.isArray(t)&&!0===t[1]}function he(t){return 0!=(8&t.flags)}function de(t){return 2==(2&t.flags)}function pe(t){return 1==(1&t.flags)}function fe(t){return null!==t.template}function ge(t){return 0!=(512&t[2])}function me(t,e){return t.hasOwnProperty(Kt)?t[Kt]:null}class be{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}isFirstChange(){return this.firstChange}}function ye(){return ve}function ve(t){return t.type.prototype.ngOnChanges&&(t.setInput=we),_e}function _e(){const t=Se(this),e=null==t?void 0:t.current;if(e){const n=t.previous;if(n===Ht)t.previous=e;else for(let t in e)n[t]=e[t];t.current=null,this.ngOnChanges(e)}}function we(t,e,n,i){const r=Se(t)||function(t,e){return t[xe]=e}(t,{previous:Ht,current:null}),s=r.current||(r.current={}),o=r.previous,a=this.declaredInputs[n],l=o[a];s[a]=new be(l&&l.currentValue,e,o===Ht),t[i]=e}ye.ngInherit=!0;const xe="__ngSimpleChanges__";function Se(t){return t[xe]||null}const Ee="http://www.w3.org/2000/svg";let Ce;function Oe(){return void 0!==Ce?Ce:"undefined"!=typeof document?document:void 0}function Te(t){return!!t.listen}const ke={createRenderer:(t,e)=>Oe()};function Ae(t){for(;Array.isArray(t);)t=t[0];return t}function Pe(t,e){return Ae(e[t])}function Me(t,e){return Ae(e[t.index])}function Ie(t,e){return t.data[e]}function De(t,e){return t[e]}function Re(t,e){const n=e[t];return ce(n)?n:n[0]}function Ne(t){return 4==(4&t[2])}function Le(t){return 128==(128&t[2])}function je(t,e){return null==e?null:t[e]}function Fe(t){t[18]=0}function Be(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 Ve={lFrame:dn(null),bindingsEnabled:!0,isInCheckNoChangesMode:!1};function ze(){return Ve.bindingsEnabled}function Ue(){return Ve.lFrame.lView}function He(){return Ve.lFrame.tView}function $e(t){return Ve.lFrame.contextLView=t,t[8]}function Ge(){let t=We();for(;null!==t&&64===t.type;)t=t.parent;return t}function We(){return Ve.lFrame.currentTNode}function qe(t,e){const n=Ve.lFrame;n.currentTNode=t,n.isParent=e}function Xe(){return Ve.lFrame.isParent}function Ye(){Ve.lFrame.isParent=!1}function Ke(){return Ve.isInCheckNoChangesMode}function Qe(t){Ve.isInCheckNoChangesMode=t}function Ze(){const t=Ve.lFrame;let e=t.bindingRootIndex;return-1===e&&(e=t.bindingRootIndex=t.tView.bindingStartIndex),e}function Je(){return Ve.lFrame.bindingIndex}function tn(){return Ve.lFrame.bindingIndex++}function en(t){const e=Ve.lFrame,n=e.bindingIndex;return e.bindingIndex=e.bindingIndex+t,n}function nn(t,e){const n=Ve.lFrame;n.bindingIndex=n.bindingRootIndex=t,rn(e)}function rn(t){Ve.lFrame.currentDirectiveIndex=t}function sn(t){const e=Ve.lFrame.currentDirectiveIndex;return-1===e?null:t[e]}function on(){return Ve.lFrame.currentQueryIndex}function an(t){Ve.lFrame.currentQueryIndex=t}function ln(t){const e=t[1];return 2===e.type?e.declTNode:1===e.type?t[6]:null}function cn(t,e,n){if(n&Mt.SkipSelf){let i=e,r=t;for(;!(i=i.parent,null!==i||n&Mt.Host||(i=ln(r),null===i||(r=r[15],10&i.type))););if(null===i)return!1;e=i,t=r}const i=Ve.lFrame=hn();return i.currentTNode=e,i.lView=t,!0}function un(t){const e=hn(),n=t[1];Ve.lFrame=e,e.currentTNode=n.firstChild,e.lView=t,e.tView=n,e.contextLView=t,e.bindingIndex=n.bindingStartIndex,e.inI18n=!1}function hn(){const t=Ve.lFrame,e=null===t?null:t.child;return null===e?dn(t):e}function dn(t){const e={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:t,child:null,inI18n:!1};return null!==t&&(t.child=e),e}function pn(){const t=Ve.lFrame;return Ve.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}const fn=pn;function gn(){const t=pn();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function mn(){return Ve.lFrame.selectedIndex}function bn(t){Ve.lFrame.selectedIndex=t}function yn(){const t=Ve.lFrame;return Ie(t.tView,t.selectedIndex)}function vn(){Ve.lFrame.currentNamespace=Ee}function _n(t,e){for(let n=e.directiveStart,i=e.directiveEnd;n=i)break}else e[a]<0&&(t[18]+=65536),(o>11>16&&(3&t[2])===e){t[2]+=2048;try{s.call(o)}finally{}}}else try{s.call(o)}finally{}}class On{constructor(t,e,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=e,this.injectImpl=n}}function Tn(t,e,n){const i=Te(t);let r=0;for(;re){o=s-1;break}}}for(;s>16}(t),i=e;for(;n>0;)i=i[15],n--;return i}let Nn=!0;function Ln(t){const e=Nn;return Nn=t,e}let jn=0;function Fn(t,e){const n=Vn(t,e);if(-1!==n)return n;const i=e[1];i.firstCreatePass&&(t.injectorIndex=e.length,Bn(i.data,t),Bn(e,null),Bn(i.blueprint,null));const r=zn(t,e),s=t.injectorIndex;if(In(r)){const t=Dn(r),n=Rn(r,e),i=n[1].data;for(let r=0;r<8;r++)e[s+r]=n[t+r]|i[t+r]}return e[s+8]=r,s}function Bn(t,e){t.push(0,0,0,0,0,0,0,0,e)}function Vn(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=0,i=null,r=e;for(;null!==r;){const t=r[1],e=t.type;if(i=2===e?t.declTNode:1===e?r[6]:null,null===i)return-1;if(n++,r=r[15],-1!==i.injectorIndex)return i.injectorIndex|n<<16}return-1}function Un(t,e,n){!function(t,e,n){let i;"string"==typeof n?i=n.charCodeAt(0)||0:n.hasOwnProperty(Qt)&&(i=n[Qt]),null==i&&(i=n[Qt]=jn++);const r=255&i;e.data[t+(r>>5)]|=1<=0?255&e:qn:e}(n);if("function"==typeof s){if(!cn(e,t,i))return i&Mt.Host?Hn(r,n,i):$n(e,n,i,r);try{const t=s(i);if(null!=t||i&Mt.Optional)return t;vt(n)}finally{fn()}}else if("number"==typeof s){let r=null,o=Vn(t,e),a=-1,l=i&Mt.Host?e[16][6]:null;for((-1===o||i&Mt.SkipSelf)&&(a=-1===o?zn(t,e):e[o+8],-1!==a&&Zn(i,!1)?(r=e[1],o=Dn(a),e=Rn(a,e)):o=-1);-1!==o;){const t=e[1];if(Qn(s,o,t.data)){const t=Xn(o,e,n,r,i,l);if(t!==Wn)return t}a=e[o+8],-1!==a&&Zn(i,e[1].data[o+8]===l)&&Qn(s,o,e)?(r=t,o=Dn(a),e=Rn(a,e)):o=-1}}}return $n(e,n,i,r)}const Wn={};function qn(){return new Jn(Ge(),Ue())}function Xn(t,e,n,i,r,s){const o=e[1],a=o.data[t+8],l=Yn(a,o,n,null==i?de(a)&&Nn:i!=o&&0!=(3&a.type),r&Mt.Host&&s===a);return null!==l?Kn(e,o,l,a):Wn}function Yn(t,e,n,i,r){const s=t.providerIndexes,o=e.data,a=1048575&s,l=t.directiveStart,c=s>>20,u=r?a+c:t.directiveEnd;for(let h=i?a:a+c;h=l&&t.type===n)return h}if(r){const t=o[l];if(t&&fe(t)&&t.type===n)return l}return null}function Kn(t,e,n,i){let r=t[n];const s=e.data;if(function(t){return t instanceof On}(r)){const o=r;o.resolving&&function(t,e){throw new mt("200",`Circular dependency in DI detected for ${t}`)}(yt(s[n]));const a=Ln(o.canSeeViewProviders);o.resolving=!0;const l=o.injectImpl?Dt(o.injectImpl):null;cn(t,i,Mt.Default);try{r=t[n]=o.factory(void 0,s,t,i),e.firstCreatePass&&n>=i.directiveStart&&function(t,e,n){const{ngOnChanges:i,ngOnInit:r,ngDoCheck:s}=e.type.prototype;if(i){const i=ve(e);(n.preOrderHooks||(n.preOrderHooks=[])).push(t,i),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,i)}r&&(n.preOrderHooks||(n.preOrderHooks=[])).push(0-t,r),s&&((n.preOrderHooks||(n.preOrderHooks=[])).push(t,s),(n.preOrderCheckHooks||(n.preOrderCheckHooks=[])).push(t,s))}(n,s[n],e)}finally{null!==l&&Dt(l),Ln(a),o.resolving=!1,fn()}}return r}function Qn(t,e,n){return!!(n[e+(t>>5)]&1<{const e=t.prototype.constructor,n=e[Kt]||ei(e),i=Object.prototype;let r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){const t=r[Kt]||ei(r);if(t&&t!==n)return t;r=Object.getPrototypeOf(r)}return t=>new t})}function ei(t){return gt(t)?()=>{const e=ei(ft(t));return e&&e()}:me(t)}function ni(t){return function(t,e){if("class"===e)return t.classes;if("style"===e)return t.styles;const n=t.attrs;if(n){const t=n.length;let i=0;for(;i{const i=function(t){return function(...e){if(t){const n=t(...e);for(const t in n)this[t]=n[t]}}}(e);function r(...t){if(this instanceof r)return i.apply(this,t),this;const e=new r(...t);return n.annotation=e,n;function n(t,n,i){const r=t.hasOwnProperty(ri)?t[ri]:Object.defineProperty(t,ri,{value:[]})[ri];for(;r.length<=i;)r.push(null);return(r[i]=r[i]||[]).push(e),t}}return n&&(r.prototype=Object.create(n.prototype)),r.prototype.ngMetadataName=t,r.annotationCls=r,r})}class oi{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=xt({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}toString(){return`InjectionToken ${this._desc}`}}const ai=Function;function li(t,e){void 0===e&&(e=t);for(let n=0;nArray.isArray(t)?ci(t,e):e(t))}function ui(t,e,n){e>=t.length?t.push(n):t.splice(e,0,n)}function hi(t,e){return e>=t.length-1?t.pop():t.splice(e,1)[0]}function di(t,e){const n=[];for(let i=0;i=0?t[1|i]=n:(i=~i,function(t,e,n,i){let r=t.length;if(r==e)t.push(n,i);else if(1===r)t.push(i,t[0]),t[0]=n;else{for(r--,t.push(t[r-1],t[r]);r>e;)t[r]=t[r-2],r--;t[e]=n,t[e+1]=i}}(t,i,e,n)),i}function fi(t,e){const n=gi(t,e);if(n>=0)return t[1|n]}function gi(t,e){return function(t,e,n){let i=0,r=t.length>>n;for(;r!==i;){const s=i+(r-i>>1),o=t[s<e?r=s:i=s+1}return~(r< ");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):ut(i)))}r=`{${t.join(", ")}}`}return`${n}${i?"("+i+")":""}[${r}]: ${t.replace(vi,"\n ")}`}("\n"+t.message,r,n,i),t.ngTokenPath=r,t[yi]=null,t}const Mi=ki(si("Inject",t=>({token:t})),-1),Ii=ki(si("Optional"),8),Di=ki(si("SkipSelf"),4);let Ri,Ni;function Li(t){var e;return(null===(e=function(){if(void 0===Ri&&(Ri=null,Ut.trustedTypes))try{Ri=Ut.trustedTypes.createPolicy("angular",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(t){}return Ri}())||void 0===e?void 0:e.createHTML(t))||t}function ji(){if(void 0===Ni&&(Ni=null,Ut.trustedTypes))try{Ni=Ut.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch(m){}return Ni}function Fi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createHTML(t))||t}function Bi(t){var e;return(null===(e=ji())||void 0===e?void 0:e.createScriptURL(t))||t}class Vi{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see https://g.co/ng/security#xss)`}}class zi extends Vi{getTypeName(){return"HTML"}}class Ui extends Vi{getTypeName(){return"Style"}}class Hi extends Vi{getTypeName(){return"Script"}}class $i extends Vi{getTypeName(){return"URL"}}class Gi extends Vi{getTypeName(){return"ResourceURL"}}function Wi(t){return t instanceof Vi?t.changingThisBreaksApplicationSecurity:t}function qi(t,e){const n=Xi(t);if(null!=n&&n!==e){if("ResourceURL"===n&&"URL"===e)return!0;throw new Error(`Required a safe ${e}, got a ${n} (see https://g.co/ng/security#xss)`)}return n===e}function Xi(t){return t instanceof Vi&&t.getTypeName()||null}class Yi{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{const e=(new window.DOMParser).parseFromString(Li(t),"text/html").body;return null===e?this.inertDocumentHelper.getInertBodyElement(t):(e.removeChild(e.firstChild),e)}catch(e){return null}}}class Ki{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=Li(t),e;const n=this.inertDocument.createElement("body");return n.innerHTML=Li(t),this.defaultDoc.documentMode&&this.stripCustomNsAttrs(n),n}stripCustomNsAttrs(t){const e=t.attributes;for(let i=e.length-1;0Ji(t.trim())).join(", ")}function er(t){const e={};for(const n of t.split(","))e[n]=!0;return e}function nr(...t){const e={};for(const n of t)for(const t in n)n.hasOwnProperty(t)&&(e[t]=!0);return e}const ir=er("area,br,col,hr,img,wbr"),rr=er("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),sr=er("rp,rt"),or=nr(ir,nr(rr,er("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),nr(sr,er("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),nr(sr,rr)),ar=er("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),lr=er("srcset"),cr=nr(ar,lr,er("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),er("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext")),ur=er("script,style,template");class hr{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let e=t.firstChild,n=!0;for(;e;)if(e.nodeType===Node.ELEMENT_NODE?n=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,n&&e.firstChild)e=e.firstChild;else for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let t=this.checkClobberedElement(e,e.nextSibling);if(t){e=t;break}e=this.checkClobberedElement(e,e.parentNode)}return this.buf.join("")}startElement(t){const e=t.nodeName.toLowerCase();if(!or.hasOwnProperty(e))return this.sanitizedSomething=!0,!ur.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);const n=t.attributes;for(let i=0;i"),!0}endElement(t){const e=t.nodeName.toLowerCase();or.hasOwnProperty(e)&&!ir.hasOwnProperty(e)&&(this.buf.push(""))}chars(t){this.buf.push(fr(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 dr=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,pr=/([^\#-~ |!])/g;function fr(t){return t.replace(/&/g,"&").replace(dr,function(t){return"&#"+(1024*(t.charCodeAt(0)-55296)+(t.charCodeAt(1)-56320)+65536)+";"}).replace(pr,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}let gr;function mr(t,e){let n=null;try{gr=gr||function(t){const e=new Ki(t);return function(){try{return!!(new window.DOMParser).parseFromString(Li(""),"text/html")}catch(t){return!1}}()?new Yi(e):e}(t);let i=e?String(e):"";n=gr.getInertBodyElement(i);let r=5,s=i;do{if(0===r)throw new Error("Failed to sanitize html because the input is unstable");r--,i=s,s=n.innerHTML,n=gr.getInertBodyElement(i)}while(i!==s);return Li((new hr).sanitizeChildren(br(n)||n))}finally{if(n){const t=br(n)||n;for(;t.firstChild;)t.removeChild(t.firstChild)}}}function br(t){return"content"in t&&function(t){return t.nodeType===Node.ELEMENT_NODE&&"TEMPLATE"===t.nodeName}(t)?t.content:null}var yr=(()=>((yr=yr||{})[yr.NONE=0]="NONE",yr[yr.HTML=1]="HTML",yr[yr.STYLE=2]="STYLE",yr[yr.SCRIPT=3]="SCRIPT",yr[yr.URL=4]="URL",yr[yr.RESOURCE_URL=5]="RESOURCE_URL",yr))();function vr(t){const e=xr();return e?Fi(e.sanitize(yr.HTML,t)||""):qi(t,"HTML")?Fi(Wi(t)):mr(Oe(),bt(t))}function _r(t){const e=xr();return e?e.sanitize(yr.URL,t)||"":qi(t,"URL")?Wi(t):Ji(bt(t))}function wr(t){const e=xr();if(e)return Bi(e.sanitize(yr.RESOURCE_URL,t)||"");if(qi(t,"ResourceURL"))return Bi(Wi(t));throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)")}function xr(){const t=Ue();return t&&t[12]}const Sr="__ngContext__";function Er(t,e){t[Sr]=e}function Cr(t){const e=function(t){return t[Sr]||null}(t);return e?Array.isArray(e)?e:e.lView:null}function Or(t){return t.ngOriginalError}function Tr(t,...e){t.error(...e)}class Ar{constructor(){this._console=console}handleError(t){const e=this._findOriginalError(t),n=this._findContext(t),i=function(t){return t&&t.ngErrorLogger||Tr}(t);i(this._console,"ERROR",t),e&&i(this._console,"ORIGINAL ERROR",e),n&&i(this._console,"ERROR CONTEXT",n)}_findContext(t){return t?function(t){return t.ngDebugContext}(t)||this._findContext(Or(t)):null}_findOriginalError(t){let e=t&&Or(t);for(;e&&Or(e);)e=Or(e);return e||null}}const Pr=(()=>("undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||setTimeout).bind(Ut))();function Mr(t){return t.ownerDocument.defaultView}function Ir(t){return t.ownerDocument}function Dr(t){return t instanceof Function?t():t}var Rr=(()=>((Rr=Rr||{})[Rr.Important=1]="Important",Rr[Rr.DashCase=2]="DashCase",Rr))();function Nr(t,e){return undefined(t,e)}function Lr(t){const e=t[3];return ue(e)?e[3]:e}function jr(t){return Br(t[13])}function Fr(t){return Br(t[4])}function Br(t){for(;null!==t&&!ue(t);)t=t[4];return t}function Vr(t,e,n,i,r){if(null!=i){let s,o=!1;ue(i)?s=i:ce(i)&&(o=!0,i=i[0]);const a=Ae(i);0===t&&null!==n?null==r?Xr(e,n,a):qr(e,n,a,r||null,!0):1===t&&null!==n?qr(e,n,a,r||null,!0):2===t?function(t,e,n){const i=Kr(t,e);i&&function(t,e,n,i){Te(t)?t.removeChild(e,n,i):e.removeChild(n)}(t,i,e,n)}(e,a,o):3===t&&e.destroyNode(a),null!=s&&function(t,e,n,i,r){const s=n[7];s!==Ae(n)&&Vr(e,t,i,s,r);for(let o=10;o0&&(t[n-1][4]=i[4]);const s=hi(t,10+e);!function(t,e){rs(t,e,e[11],2,null,null),e[0]=null,e[6]=null}(i[1],i);const o=s[19];null!==o&&o.detachView(s[1]),i[3]=null,i[4]=null,i[2]&=-129}return i}function $r(t,e){if(!(256&e[2])){const n=e[11];Te(n)&&n.destroyNode&&rs(t,e,n,3,null,null),function(t){let e=t[13];if(!e)return Gr(t[1],t);for(;e;){let n=null;if(ce(e))n=e[13];else{const t=e[10];t&&(n=t)}if(!n){for(;e&&!e[4]&&e!==t;)ce(e)&&Gr(e[1],e),e=e[3];null===e&&(e=t),ce(e)&&Gr(e[1],e),n=e&&e[4]}e=n}}(e)}}function Gr(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?i[r=l]():i[r=-l].unsubscribe(),s+=2}else{const t=i[r=n[s+1]];n[s].call(t)}if(null!==i){for(let t=r+1;ts?"":r[u+1].toLowerCase();const e=8&i?t:null;if(e&&-1!==ls(e,c,0)||2&i&&c!==t){if(fs(i))return!1;o=!0}}}}else{if(!o&&!fs(i)&&!fs(l))return!1;if(o&&fs(l))continue;o=!1,i=l|1&i}}return fs(i)||o}function fs(t){return 0==(1&t)}function gs(t,e,n,i){if(null===e)return-1;let r=0;if(i||!n){let n=!1;for(;r-1)for(n++;n0?'="'+e+'"':"")+"]"}else 8&i?r+="."+o:4&i&&(r+=" "+o);else""!==r&&!fs(o)&&(e+=ys(s,r),r=""),i=o,s=s||!fs(i);n++}return""!==r&&(e+=ys(s,r)),e}const _s={};function ws(t){xs(He(),Ue(),mn()+t,Ke())}function xs(t,e,n,i){if(!i)if(3==(3&e[2])){const i=t.preOrderCheckHooks;null!==i&&wn(e,i,n)}else{const i=t.preOrderHooks;null!==i&&xn(e,i,0,n)}bn(n)}function Ss(t,e){return t<<17|e<<2}function Es(t){return t>>17&32767}function Cs(t){return 2|t}function Os(t){return(131068&t)>>2}function Ts(t,e){return-131069&t|e<<2}function ks(t){return 1|t}function As(t,e){const n=t.contentQueries;if(null!==n)for(let i=0;i20&&xs(t,e,20,Ke()),n(i,r)}finally{bn(s)}}function js(t,e,n){if(he(e)){const i=e.directiveEnd;for(let r=e.directiveStart;r0;){const n=t[--e];if("number"==typeof n&&n<0)return n}return 0})(n)!=s&&n.push(s),n.push(i,r,o)}}function qs(t,e){null!==t.hostBindings&&t.hostBindings(1,e)}function Xs(t,e){e.flags|=2,(t.components||(t.components=[])).push(e.index)}function Ys(t,e,n){if(n){if(e.exportAs)for(let i=0;i0&&ro(n)}}function ro(t){for(let n=jr(t);null!==n;n=Fr(n))for(let t=10;t0&&ro(e)}const e=t[1].components;if(null!==e)for(let n=0;n0&&ro(i)}}function so(t,e){const n=Re(e,t),i=n[1];(function(t,e){for(let n=e.length;nPromise.resolve(null))();function po(t){return t[7]||(t[7]=[])}function fo(t){return t.cleanup||(t.cleanup=[])}function go(t,e,n){return(null===t||fe(t))&&(n=function(t){for(;Array.isArray(t);){if("object"==typeof t[1])return t;t=t[0]}return null}(n[e.index])),n[11]}function mo(t,e){const n=t[9],i=n?n.get(Ar,null):null;i&&i.handleError(e)}function bo(t,e,n,i,r){for(let s=0;sthis.processProvider(n,t,e)),ci([t],t=>this.processInjectorType(t,[],r)),this.records.set(_o,Mo(void 0,this));const s=this.records.get(xo);this.scope=null!=s?s.value:null,this.source=i||("object"==typeof t?null:ut(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=mi,n=Mt.Default){this.assertNotDestroyed();const i=Si(this),r=Dt(void 0);try{if(!(n&Mt.SkipSelf)){let e=this.records.get(t);if(void 0===e){const n=function(t){return"function"==typeof t||"object"==typeof t&&t instanceof oi}(t)&&Et(t);e=n&&this.injectableDefInScope(n)?Mo(Ao(t),So):null,this.records.set(t,e)}if(null!=e)return this.hydrate(t,e)}return(n&Mt.Self?Oo():this.parent).get(t,e=n&Mt.Optional&&e===mi?null:e)}catch(s){if("NullInjectorError"===s.name){if((s[yi]=s[yi]||[]).unshift(ut(t)),i)throw s;return Pi(s,t,"R3InjectorError",this.source)}throw s}finally{Dt(r),Si(i)}}_resolveInjectorDefTypes(){this.injectorDefTypes.forEach(t=>this.get(t))}toString(){const t=[];return this.records.forEach((e,n)=>t.push(ut(n))),`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new Error("Injector has already been destroyed.")}processInjectorType(t,e,n){if(!(t=ft(t)))return!1;let i=Ot(t);const r=null==i&&t.ngModule||void 0,s=void 0===r?t:r,o=-1!==n.indexOf(s);if(void 0!==r&&(i=Ot(r)),null==i)return!1;if(null!=i.imports&&!o){let t;n.push(s);try{ci(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||$t))}}this.injectorDefTypes.add(s);const a=me(s)||(()=>new s);this.records.set(s,Mo(a,So));const l=i.providers;if(null!=l&&!o){const e=t;ci(l,t=>this.processProvider(t,e,l))}return void 0!==r&&void 0!==t.providers}processProvider(t,e,n){let i=Do(t=ft(t))?t:ft(t&&t.provide);const r=function(t,e,n){return Io(t)?Mo(void 0,t.useValue):Mo(Po(t),So)}(t);if(Do(t)||!0!==t.multi)this.records.get(i);else{let e=this.records.get(i);e||(e=Mo(void 0,So,!0),e.factory=()=>Ti(e.multi),this.records.set(i,e)),i=t,e.multi.push(t)}this.records.set(i,r)}hydrate(t,e){return e.value===So&&(e.value=Eo,e.value=e.factory()),"object"==typeof e.value&&e.value&&function(t){return null!==t&&"object"==typeof t&&"function"==typeof t.ngOnDestroy}(e.value)&&this.onDestroy.add(e.value),e.value}injectableDefInScope(t){if(!t.providedIn)return!1;const e=ft(t.providedIn);return"string"==typeof e?"any"===e||e===this.scope:this.injectorDefTypes.has(e)}}function Ao(t){const e=Et(t),n=null!==e?e.factory:me(t);if(null!==n)return n;if(t instanceof oi)throw new Error(`Token ${ut(t)} is missing a \u0275prov definition.`);if(t instanceof Function)return function(t){const e=t.length;if(e>0){const n=di(e,"?");throw new Error(`Can't resolve all parameters for ${ut(t)}: (${n.join(", ")}).`)}const n=function(t){const e=t&&(t[Tt]||t[At]);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 Po(t,e,n){let i;if(Do(t)){const e=ft(t);return me(e)||Ao(e)}if(Io(t))i=()=>ft(t.useValue);else if(function(t){return!(!t||!t.useFactory)}(t))i=()=>t.useFactory(...Ti(t.deps||[]));else if(function(t){return!(!t||!t.useExisting)}(t))i=()=>Ci(ft(t.useExisting));else{const e=ft(t&&(t.useClass||t.provide));if(!function(t){return!!t.deps}(t))return me(e)||Ao(e);i=()=>new e(...Ti(t.deps))}return i}function Mo(t,e,n=!1){return{factory:t,value:e,multi:n?[]:void 0}}function Io(t){return null!==t&&"object"==typeof t&&wi in t}function Do(t){return"function"==typeof t}const Ro=function(t,e,n){return function(t,e=null,n=null,i){const r=To(t,e,n,i);return r._resolveInjectorDefTypes(),r}({name:n},e,t,n)};class No{static create(t,e){return Array.isArray(t)?Ro(t,e,""):Ro(t.providers,t.parent,t.name||"")}}function Lo(t,e){_n(Cr(t)[1],Ge())}function jo(t){let e=function(t){return Object.getPrototypeOf(t.prototype).constructor}(t.type),n=!0;const i=[t];for(;e;){let r;if(fe(t))r=e.\u0275cmp||e.\u0275dir;else{if(e.\u0275cmp)throw new Error("Directives cannot inherit Components");r=e.\u0275dir}if(r){if(n){i.push(r);const e=t;e.inputs=Fo(t.inputs),e.declaredInputs=Fo(t.declaredInputs),e.outputs=Fo(t.outputs);const n=r.hostBindings;n&&zo(t,n);const s=r.viewQuery,o=r.contentQueries;if(s&&Bo(t,s),o&&Vo(t,o),ct(t.inputs,r.inputs),ct(t.declaredInputs,r.declaredInputs),ct(t.outputs,r.outputs),fe(r)&&r.data.animation){const e=t.data;e.animation=(e.animation||[]).concat(r.data.animation)}}const e=r.features;if(e)for(let i=0;i=0;i--){const r=t[i];r.hostVars=e+=r.hostVars,r.hostAttrs=Pn(r.hostAttrs,n=Pn(n,r.hostAttrs))}}(i)}function Fo(t){return t===Ht?{}:t===$t?[]:t}function Bo(t,e){const n=t.viewQuery;t.viewQuery=n?(t,i)=>{e(t,i),n(t,i)}:e}function Vo(t,e){const n=t.contentQueries;t.contentQueries=n?(t,i,r)=>{e(t,i,r),n(t,i,r)}:e}function zo(t,e){const n=t.hostBindings;t.hostBindings=n?(t,i)=>{e(t,i),n(t,i)}:e}No.THROW_IF_NOT_FOUND=mi,No.NULL=new wo,No.\u0275prov=xt({token:No,providedIn:"any",factory:()=>Ci(_o)}),No.__NG_ELEMENT_ID__=-1;let Uo=null;function Ho(){if(!Uo){const t=Ut.Symbol;if(t&&t.iterator)Uo=t.iterator;else{const t=Object.getOwnPropertyNames(Map.prototype);for(let e=0;ea(Ae(t[i.index])):i.index;if(Te(n)){let o=null;if(!a&&l&&(o=function(t,e,n,i){const r=t.cleanup;if(null!=r)for(let s=0;sn?t[n]:null}"string"==typeof t&&(s+=2)}return null}(t,e,r,i.index)),null!==o)(o.__ngLastListenerFn__||o).__ngNextListenerFn__=s,o.__ngLastListenerFn__=s,d=!1;else{s=ya(i,e,u,s,!1);const t=n.listen(f,r,s);h.push(s,t),c&&c.push(r,m,g,g+1)}}else s=ya(i,e,u,s,!0),f.addEventListener(r,s,o),h.push(s),c&&c.push(r,m,g,o)}else s=ya(i,e,u,s,!1);const p=i.outputs;let f;if(d&&null!==p&&(f=p[r])){const t=f.length;if(t)for(let n=0;n0;)e=e[15],t--;return e}(t,Ve.lFrame.contextLView))[8]}(t)}function _a(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 r=0;r=0}const Ta={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function ka(t){return t.substring(Ta.key,Ta.keyEnd)}function Aa(t){return t.substring(Ta.value,Ta.valueEnd)}function Pa(t,e){const n=Ta.textEnd;return n===e?-1:(e=Ta.keyEnd=function(t,e,n){for(;e32;)e++;return e}(t,Ta.key=e,n),Da(t,e,n))}function Ma(t,e){const n=Ta.textEnd;let i=Ta.key=Da(t,e,n);return n===i?-1:(i=Ta.keyEnd=function(t,e,n){let i;for(;e=65&&(-33&i)<=90||i>=48&&i<=57);)e++;return e}(t,i,n),i=Ra(t,i,n),i=Ta.value=Da(t,i,n),i=Ta.valueEnd=function(t,e,n){let i=-1,r=-1,s=-1,o=e,a=o;for(;o32&&(a=o),s=r,r=i,i=-33&l}return a}(t,i,n),Ra(t,i,n))}function Ia(t){Ta.key=0,Ta.keyEnd=0,Ta.value=0,Ta.valueEnd=0,Ta.textEnd=t.length}function Da(t,e,n){for(;e=0;n=Ma(e,n))qa(t,ka(e),Aa(e))}function Ba(t){Ua(pi,Va,t,!0)}function Va(t,e){for(let n=function(t){return Ia(t),Pa(t,Da(t,0,Ta.textEnd))}(e);n>=0;n=Pa(e,n))pi(t,ka(e),!0)}function za(t,e,n,i){const r=Ue(),s=He(),o=en(2);s.firstUpdatePass&&$a(s,t,o,i),e!==_s&&Xo(r,o,e)&&Xa(s,s.data[mn()],r,r[11],t,r[o+1]=function(t,e){return null==t||("string"==typeof e?t+=e:"object"==typeof t&&(t=ut(Wi(t)))),t}(e,n),i,o)}function Ua(t,e,n,i){const r=He(),s=en(2);r.firstUpdatePass&&$a(r,null,s,i);const o=Ue();if(n!==_s&&Xo(o,s,n)){const a=r.data[mn()];if(Qa(a,i)&&!Ha(r,s)){let t=i?a.classesWithoutHost:a.stylesWithoutHost;null!==t&&(n=ht(t,n||"")),ia(r,a,o,n,i)}else!function(t,e,n,i,r,s,o,a){r===_s&&(r=$t);let l=0,c=0,u=0=t.expandoStartIndex}function $a(t,e,n,i){const r=t.data;if(null===r[n+1]){const s=r[mn()],o=Ha(t,n);Qa(s,i)&&null===e&&!o&&(e=!1),e=function(t,e,n,i){const r=sn(t);let s=i?e.residualClasses:e.residualStyles;if(null===r)0===(i?e.classBindings:e.styleBindings)&&(n=Wa(n=Ga(null,t,e,n,i),e.attrs,i),s=null);else{const o=e.directiveStylingLast;if(-1===o||t[o]!==r)if(n=Ga(r,t,e,n,i),null===s){let n=function(t,e,n){const i=n?e.classBindings:e.styleBindings;if(0!==Os(i))return t[Es(i)]}(t,e,i);void 0!==n&&Array.isArray(n)&&(n=Ga(null,t,e,n[1],i),n=Wa(n,e.attrs,i),function(t,e,n,i){t[Es(n?e.classBindings:e.styleBindings)]=i}(t,e,i,n))}else s=function(t,e,n){let i;const r=e.directiveEnd;for(let s=1+e.directiveStylingLast;s0)&&(u=!0)}else c=n;if(r)if(0!==l){const e=Es(t[a+1]);t[i+1]=Ss(e,a),0!==e&&(t[e+1]=Ts(t[e+1],i)),t[a+1]=function(t,e){return 131071&t|e<<17}(t[a+1],i)}else t[i+1]=Ss(a,0),0!==a&&(t[a+1]=Ts(t[a+1],i)),a=i;else t[i+1]=Ss(l,0),0===a?a=i:t[l+1]=Ts(t[l+1],i),l=i;u&&(t[i+1]=Cs(t[i+1])),Ca(t,c,i,!0),Ca(t,c,i,!1),function(t,e,n,i,r){const s=r?t.residualClasses:t.residualStyles;null!=s&&"string"==typeof e&&gi(s,e)>=0&&(n[i+1]=ks(n[i+1]))}(e,c,t,i,s),o=Ss(a,l),s?e.classBindings=o:e.styleBindings=o}(r,s,e,n,o,i)}}function Ga(t,e,n,i,r){let s=null;const o=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const e=t[r],s=Array.isArray(e),l=s?e[1]:e,c=null===l;let u=n[r+1];u===_s&&(u=c?$t:void 0);let h=c?fi(u,i):l===i?u:void 0;if(s&&!Ka(h)&&(h=fi(e,i)),Ka(h)&&(a=h,o))return a;const d=t[r+1];r=o?Es(d):Os(d)}if(null!==e){let t=s?e.residualClasses:e.residualStyles;null!=t&&(a=fi(t,i))}return a}function Ka(t){return void 0!==t}function Qa(t,e){return 0!=(t.flags&(e?16:32))}function Za(t,e=""){const n=Ue(),i=He(),r=t+20,s=i.firstCreatePass?Ms(i,r,1,e,null):i.data[r],o=n[r]=function(t,e){return Te(t)?t.createText(e):t.createTextNode(e)}(n[11],e);Jr(i,n,o,s),qe(s,!1)}function Ja(t){return tl("",t,""),Ja}function tl(t,e,n){const i=Ue(),r=Qo(i,t,e,n);return r!==_s&&yo(i,mn(),r),tl}function el(t,e,n,i,r){const s=Ue(),o=function(t,e,n,i,r,s){const o=Yo(t,Je(),n,r);return en(2),o?e+bt(n)+i+bt(r)+s:_s}(s,t,e,n,i,r);return o!==_s&&yo(s,mn(),o),el}function nl(t,e,n){Ua(pi,Va,Qo(Ue(),t,e,n),!0)}function il(t,e,n){const i=Ue();return Xo(i,tn(),e)&&$s(He(),yn(),i,t,e,i[11],n,!0),il}function rl(t,e,n){const i=Ue();if(Xo(i,tn(),e)){const r=He(),s=yn();$s(r,s,i,t,e,go(sn(r.data),s,i),n,!0)}return rl}const sl=void 0;var ol=["en",[["a","p"],["AM","PM"],sl],[["AM","PM"],sl,sl],[["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"]],sl,[["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"]],sl,[["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}",sl,"{1} 'at' {0}",sl],[".",",",";","%","+","-","E","\xd7","\u2030","\u221e","NaN",":"],["#,##0.###","#,##0%","\xa4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",function(t){const e=Math.floor(Math.abs(t)),n=t.toString().replace(/^[^.]*\.?/,"").length;return 1===e&&0===n?1:5}];let al={};function ll(t){return t in al||(al[t]=Ut.ng&&Ut.ng.common&&Ut.ng.common.locales&&Ut.ng.common.locales[t]),al[t]}var cl=(()=>((cl=cl||{})[cl.LocaleId=0]="LocaleId",cl[cl.DayPeriodsFormat=1]="DayPeriodsFormat",cl[cl.DayPeriodsStandalone=2]="DayPeriodsStandalone",cl[cl.DaysFormat=3]="DaysFormat",cl[cl.DaysStandalone=4]="DaysStandalone",cl[cl.MonthsFormat=5]="MonthsFormat",cl[cl.MonthsStandalone=6]="MonthsStandalone",cl[cl.Eras=7]="Eras",cl[cl.FirstDayOfWeek=8]="FirstDayOfWeek",cl[cl.WeekendRange=9]="WeekendRange",cl[cl.DateFormat=10]="DateFormat",cl[cl.TimeFormat=11]="TimeFormat",cl[cl.DateTimeFormat=12]="DateTimeFormat",cl[cl.NumberSymbols=13]="NumberSymbols",cl[cl.NumberFormats=14]="NumberFormats",cl[cl.CurrencyCode=15]="CurrencyCode",cl[cl.CurrencySymbol=16]="CurrencySymbol",cl[cl.CurrencyName=17]="CurrencyName",cl[cl.Currencies=18]="Currencies",cl[cl.Directionality=19]="Directionality",cl[cl.PluralCase=20]="PluralCase",cl[cl.ExtraData=21]="ExtraData",cl))();const ul="en-US";let hl=ul;function dl(t){_t(t,"Expected localeId to be defined"),"string"==typeof t&&(hl=t.toLowerCase().replace(/_/g,"-"))}function pl(t,e,n,i,r){if(t=ft(t),Array.isArray(t))for(let s=0;s>20;if(Do(t)||!t.multi){const i=new On(l,r,ea),p=ml(a,e,r?u:u+d,h);-1===p?(Un(Fn(c,o),s,a),fl(s,t,e.length),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(i),o.push(i)):(n[p]=i,o[p]=i)}else{const p=ml(a,e,u+d,h),f=ml(a,e,u,u+d),g=p>=0&&n[p],m=f>=0&&n[f];if(r&&!m||!r&&!g){Un(Fn(c,o),s,a);const u=function(t,e,n,i,r){const s=new On(t,n,ea);return s.multi=[],s.index=e,s.componentProviders=0,gl(s,r,i&&!n),s}(r?yl:bl,n.length,r,i,l);!r&&m&&(n[f].providerFactory=u),fl(s,t,e.length,0),e.push(a),c.directiveStart++,c.directiveEnd++,r&&(c.providerIndexes+=1048576),n.push(u),o.push(u)}else fl(s,t,p>-1?p:f,gl(n[r?f:p],l,!r&&i));!r&&i&&m&&n[f].componentProviders++}}}function fl(t,e,n,i){const r=Do(e);if(r||function(t){return!!t.useClass}(e)){const s=(e.useClass||e).prototype.ngOnDestroy;if(s){const o=t.destroyHooks||(t.destroyHooks=[]);if(!r&&e.multi){const t=o.indexOf(n);-1===t?o.push(n,[i,s]):o[t+1].push(i,s)}else o.push(n,s)}}}function gl(t,e,n){return n&&t.componentProviders++,t.multi.push(e)-1}function ml(t,e,n,i){for(let r=n;r{n.providersResolver=(n,i)=>function(t,e,n){const i=He();if(i.firstCreatePass){const r=fe(t);pl(n,i.data,i.blueprint,r,!0),pl(e,i.data,i.blueprint,r,!1)}}(n,i?i(t):t,e)}}class wl{}const xl="ngComponent";class Sl{resolveComponentFactory(t){throw function(t){const e=Error(`No component factory found for ${ut(t)}. Did you add it to @NgModule.entryComponents?`);return e[xl]=t,e}(t)}}class El{}function Cl(...t){}function Ol(t,e){return new kl(Me(t,e))}El.NULL=new Sl;const Tl=function(){return Ol(Ge(),Ue())};let kl=(()=>{class t{constructor(t){this.nativeElement=t}}return t.__NG_ELEMENT_ID__=Tl,t})();function Al(t){return t instanceof kl?t.nativeElement:t}class Pl{}let Ml=(()=>{class t{}return t.__NG_ELEMENT_ID__=()=>Il(),t})();const Il=function(){const t=Ue(),e=Re(Ge().index,t);return function(t){return t[11]}(ce(e)?e:t)};let Dl=(()=>{class t{}return t.\u0275prov=xt({token:t,providedIn:"root",factory:()=>null}),t})();class Rl{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const Nl=new Rl("12.2.5");class Ll{constructor(){}supports(t){return Go(t)}create(t){return new Fl(t)}}const jl=(t,e)=>e;class Fl{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||jl}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,r=null;for(;e||n;){const s=!n||e&&e.currentIndex{i=this._trackByFn(e,t),null!==r&&Object.is(r.trackById,i)?(s&&(r=this._verifyReinsertion(r,t,i,e)),Object.is(r.item,t)||this._addIdentityChange(r,t)):(r=this._mismatch(r,t,i,e),s=!0),r=r._next,e++}),this.length=e;return this._truncate(r),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;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=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,e,n,i){let r;return null===t?r=this._itTail:(r=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._reinsertAfter(t,r,i)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,i))?(Object.is(t.item,e)||this._addIdentityChange(t,e),this._moveAfter(t,r,i)):t=this._addAfter(new Bl(e,n),r,i),t}_verifyReinsertion(t,e,n,i){let r=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==r?t=this._reinsertAfter(r,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,r=t._nextRemoved;return null===i?this._removalsHead=r:i._nextRemoved=r,null===r?this._removalsTail=i:r._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 zl),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 zl),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 Bl{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 Vl{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 zl{constructor(){this.map=new Map}put(t){const e=t.trackById;let n=this.map.get(e);n||(n=new Vl,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 Ul(t,e,n){const i=t.previousIndex;if(null===i)return i;let r=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,r=n._next;return i&&(i._next=r),r&&(r._prev=i),n._next=null,n._prev=null,n}const n=new Gl(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 Gl{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}}function Wl(){return new ql([new Ll])}let ql=(()=>{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=>t.create(e,n||Wl()),deps:[[t,new Di,new Ii]]}}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 '${function(t){return t.name||typeof t}(t)}'`)}}return t.\u0275prov=xt({token:t,providedIn:"root",factory:Wl}),t})();function Xl(){return new Yl([new Hl])}let Yl=(()=>{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=>t.create(e,n||Xl()),deps:[[t,new Di,new Ii]]}}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=xt({token:t,providedIn:"root",factory:Xl}),t})();function Kl(t,e,n,i,r=!1){for(;null!==n;){const s=e[n.index];if(null!==s&&i.push(Ae(s)),ue(s))for(let t=10;t-1&&(Hr(t,n),hi(e,n))}this._attachedToViewContainer=!1}$r(this._lView[1],this._lView)}onDestroy(t){Us(this._lView[1],this._lView,null,t)}markForCheck(){ao(this._cdRefInjectingView||this._lView)}detach(){this._lView[2]&=-129}reattach(){this._lView[2]|=128}detectChanges(){lo(this._lView[1],this._lView,this.context)}checkNoChanges(){!function(t,e,n){Qe(!0);try{lo(t,e,n)}finally{Qe(!1)}}(this._lView[1],this._lView,this.context)}attachToViewContainerRef(){if(this._appRef)throw new Error("This view is already attached directly to the ApplicationRef!");this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function(t,e){rs(t,e,e[11],2,null,null)}(this._lView[1],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new Error("This view is already attached to a ViewContainer!");this._appRef=t}}class Zl extends Ql{constructor(t){super(t),this._view=t}detectChanges(){co(this._view)}checkNoChanges(){!function(t){Qe(!0);try{co(t)}finally{Qe(!1)}}(this._view)}get context(){return null}}const Jl=function(t){return function(t,e,n){if(de(t)&&!n){const n=Re(t.index,e);return new Ql(n,n)}return 47&t.type?new Ql(e[16],e):null}(Ge(),Ue(),16==(16&t))};let tc=(()=>{class t{}return t.__NG_ELEMENT_ID__=Jl,t})();const ec=[new Hl],nc=new ql([new Ll]),ic=new Yl(ec),rc=function(){return lc(Ge(),Ue())};let sc=(()=>{class t{}return t.__NG_ELEMENT_ID__=rc,t})();const oc=sc,ac=class extends oc{constructor(t,e,n){super(),this._declarationLView=t,this._declarationTContainer=e,this.elementRef=n}createEmbeddedView(t){const e=this._declarationTContainer.tViews,n=Ps(this._declarationLView,e,t,16,null,e.declTNode,null,null,null,null);n[17]=this._declarationLView[this._declarationTContainer.index];const i=this._declarationLView[19];return null!==i&&(n[19]=i.createEmbeddedView(e)),Ds(e,n,t),new Ql(n)}};function lc(t,e){return 4&t.type?new ac(e,t,Ol(t,e)):null}class cc{}const uc=function(){return mc(Ge(),Ue())};let hc=(()=>{class t{}return t.__NG_ELEMENT_ID__=uc,t})();const dc=hc,pc=class extends dc{constructor(t,e,n){super(),this._lContainer=t,this._hostTNode=e,this._hostLView=n}get element(){return Ol(this._hostTNode,this._hostLView)}get injector(){return new Jn(this._hostTNode,this._hostLView)}get parentInjector(){const t=zn(this._hostTNode,this._hostLView);if(In(t)){const e=Rn(t,this._hostLView),n=Dn(t);return new Jn(e[1].data[n+8],e)}return new Jn(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const e=fc(this._lContainer);return null!==e&&e[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,r){const s=n||this.parentInjector;if(!r&&null==t.ngModule&&s){const t=s.get(cc,null);t&&(r=t)}const o=t.create(s,i,void 0,r);return this.insert(o.hostView,e),o}insert(t,e){const n=t._lView,i=n[1];if(function(t){return ue(t[3])}(n)){const e=this.indexOf(t);if(-1!==e)this.detach(e);else{const e=n[3],i=new pc(e,e[6],e[3]);i.detach(i.indexOf(t))}}const r=this._adjustIndex(e),s=this._lContainer;!function(t,e,n,i){const r=10+i,s=n.length;i>0&&(n[r-1][4]=e),iPr});class wc extends wl{constructor(t,e){super(),this.componentDef=t,this.ngModule=e,this.componentType=t.type,this.selector=function(t){return t.map(vs).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!e}get inputs(){return vc(this.componentDef.inputs)}get outputs(){return vc(this.componentDef.outputs)}create(t,e,n,i){const r=(i=i||this.ngModule)?function(t,e){return{get:(n,i,r)=>{const s=t.get(n,bc,r);return s!==bc||i===bc?s:e.get(n,i,r)}}}(t,i.injector):t,s=r.get(Pl,ke),o=r.get(Dl,null),a=s.createRenderer(null,this.componentDef),l=this.componentDef.selectors[0][0]||"div",c=n?function(t,e,n){if(Te(t))return t.selectRootElement(e,n===jt.ShadowDom);let i="string"==typeof e?t.querySelector(e):e;return i.textContent="",i}(a,n,this.componentDef.encapsulation):zr(s.createRenderer(null,this.componentDef),l,function(t){const e=t.toLowerCase();return"svg"===e?Ee:"math"===e?"http://www.w3.org/1998/MathML/":null}(l)),u=this.componentDef.onPush?576:528,h=function(t,e){return{components:[],scheduler:t||Pr,clean:ho,playerHandler:e||null,flags:0}}(),d=zs(0,null,null,1,0,null,null,null,null,null),p=Ps(null,d,h,u,null,null,s,a,o,r);let f,g;un(p);try{const t=function(t,e,n,i,r,s){const o=n[1];n[20]=t;const a=Ms(o,20,2,"#host",null),l=a.mergedAttrs=e.hostAttrs;null!==l&&(vo(a,l,!0),null!==t&&(Tn(r,t,l),null!==a.classes&&as(r,t,a.classes),null!==a.styles&&os(r,t,a.styles)));const c=i.createRenderer(t,e),u=Ps(n,Vs(e),null,e.onPush?64:16,n[20],a,i,c,s||null,null);return o.firstCreatePass&&(Un(Fn(a,n),o,e.type),Xs(o,a),Ks(a,n.length,1)),oo(n,u),n[20]=u}(c,this.componentDef,p,s,a);if(c)if(n)Tn(a,c,["ng-version",Nl.full]);else{const{attrs:t,classes:e}=function(t){const e=[],n=[];let i=1,r=2;for(;i0&&as(a,c,e.join(" "))}if(g=Ie(d,20),void 0!==e){const t=g.projection=[];for(let n=0;nt(o,e)),e.contentQueries){const t=Ge();e.contentQueries(1,o,t.directiveStart)}const a=Ge();return!s.firstCreatePass||null===e.hostBindings&&null===e.hostAttrs||(bn(a.index),Ws(n[1],a,0,a.directiveStart,a.directiveEnd,e),qs(e,o)),o}(t,this.componentDef,p,h,[Lo]),Ds(d,p,null)}finally{gn()}return new xc(this.componentType,f,Ol(g,p),p,g)}}class xc extends class{}{constructor(t,e,n,i,r){super(),this.location=n,this._rootLView=i,this._tNode=r,this.instance=e,this.hostView=this.changeDetectorRef=new Zl(i),this.componentType=t}get injector(){return new Jn(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(t){this.hostView.onDestroy(t)}}const Sc=new Map;class Ec extends cc{constructor(t,e){super(),this._parent=e,this._bootstrapComponents=[],this.injector=this,this.destroyCbs=[],this.componentFactoryResolver=new yc(this);const n=le(t),i=function(t){return t[Yt]||null}(t);i&&dl(i),this._bootstrapComponents=Dr(n.bootstrap),this._r3Injector=To(t,e,[{provide:cc,useValue:this},{provide:El,useValue:this.componentFactoryResolver}],ut(t)),this._r3Injector._resolveInjectorDefTypes(),this.instance=this.get(t)}get(t,e=No.THROW_IF_NOT_FOUND,n=Mt.Default){return t===No||t===cc||t===_o?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 Cc extends class{}{constructor(t){super(),this.moduleType=t,null!==le(t)&&function(t){const e=new Set;!function t(n){const i=le(n,!0),r=i.id;null!==r&&(function(t,e,n){if(e&&e!==n)throw new Error(`Duplicate module registered for ${t} - ${ut(e)} vs ${ut(e.name)}`)}(r,Sc.get(r),n),Sc.set(r,n));const s=Dr(i.imports);for(const o of s)e.has(o)||(e.add(o),t(o))}(t)}(t)}create(t){return new Ec(this.moduleType,t)}}function Oc(t,e,n){const i=Ze()+t,r=Ue();return r[i]===_s?qo(r,i,n?e.call(n):e()):function(t,e){return t[e]}(r,i)}function Tc(t,e,n,i){return Pc(Ue(),Ze(),t,e,n,i)}function kc(t,e,n,i,r,s){return function(t,e,n,i,r,s,o,a){const l=e+n;return function(t,e,n,i,r){const s=Yo(t,e,n,i);return Xo(t,e+2,r)||s}(t,l,r,s,o)?qo(t,l+3,a?i.call(a,r,s,o):i(r,s,o)):Ac(t,l+3)}(Ue(),Ze(),t,e,n,i,r,s)}function Ac(t,e){const n=t[e];return n===_s?void 0:n}function Pc(t,e,n,i,r,s){const o=e+n;return Xo(t,o,r)?qo(t,o+1,s?i.call(s,r):i(r)):Ac(t,o+1)}function Mc(t,e){const n=He();let i;const r=t+20;n.firstCreatePass?(i=function(t,e){if(e)for(let n=e.length-1;n>=0;n--){const i=e[n];if(t===i.name)return i}throw new mt("302",`The pipe '${t}' could not be found!`)}(e,n.pipeRegistry),n.data[r]=i,i.onDestroy&&(n.destroyHooks||(n.destroyHooks=[])).push(r,i.onDestroy)):i=n.data[r];const s=i.factory||(i.factory=me(i.type)),o=Dt(ea);try{const t=Ln(!1),e=s();return Ln(t),function(t,e,n,i){n>=t.data.length&&(t.data[n]=null,t.blueprint[n]=null),e[n]=i}(n,Ue(),r,e),e}finally{Dt(o)}}function Ic(t,e,n){const i=t+20,r=Ue(),s=De(r,i);return function(t,e){$o.isWrapped(e)&&(e=$o.unwrap(e),t[Je()]=_s);return e}(r,function(t,e){return t[1].data[e].pure}(r,i)?Pc(r,Ze(),e,s.transform,n,s):s.transform(n))}function Dc(t){return e=>{setTimeout(t,void 0,e)}}const Rc=class extends P{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,e,n){var i,r,s;let o=t,a=e||(()=>null),l=n;if(t&&"object"==typeof t){const e=t;o=null===(i=e.next)||void 0===i?void 0:i.bind(e),a=null===(r=e.error)||void 0===r?void 0:r.bind(e),l=null===(s=e.complete)||void 0===s?void 0:s.bind(e)}this.__isAsync&&(a=Dc(a),o&&(o=Dc(o)),l&&(l=Dc(l)));const c=super.subscribe({next:o,error:a,complete:l});return t instanceof g&&t.add(c),c}};function Nc(){return this._results[Ho()]()}class Lc{constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const e=Ho(),n=Lc.prototype;n[e]||(n[e]=Nc)}get changes(){return this._changes||(this._changes=new Rc)}get(t){return this._results[t]}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,e){const n=this;n.dirty=!1;const i=li(t);(this._changesDetected=!function(t,e,n){if(t.length!==e.length)return!1;for(let i=0;i0)i.push(o[t/2]);else{const r=s[t+1],o=e[-n];for(let t=10;t{class t{constructor(t){this.appInits=t,this.resolve=Cl,this.reject=Cl,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.subscribe({complete:t,error:n})});t.push(n)}}Promise.all(t).then(()=>{e()}).catch(t=>{this.reject(t)}),0===t.length&&e(),this.initialized=!0}}return t.\u0275fac=function(e){return new(e||t)(Ci(tu,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const nu=new oi("AppId"),iu={provide:nu,useFactory:function(){return`${ru()}${ru()}${ru()}`},deps:[]};function ru(){return String.fromCharCode(97+Math.floor(25*Math.random()))}const su=new oi("Platform Initializer"),ou=new oi("Platform ID"),au=new oi("appBootstrapListener");let lu=(()=>{class t{log(t){console.log(t)}warn(t){console.warn(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const cu=new oi("LocaleId"),uu=new oi("DefaultCurrencyCode");class hu{constructor(t,e){this.ngModuleFactory=t,this.componentFactories=e}}const du=function(t){return new Cc(t)},pu=du,fu=function(t){return Promise.resolve(du(t))},gu=function(t){const e=du(t),n=Dr(le(t).declarations).reduce((t,e)=>{const n=ae(e);return n&&t.push(new wc(n)),t},[]);return new hu(e,n)},mu=gu,bu=function(t){return Promise.resolve(gu(t))};let yu=(()=>{class t{constructor(){this.compileModuleSync=pu,this.compileModuleAsync=fu,this.compileModuleAndAllComponentsSync=mu,this.compileModuleAndAllComponentsAsync=bu}clearCache(){}clearCacheFor(t){}getModuleId(t){}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const vu=new oi("compilerOptions"),_u=(()=>Promise.resolve(0))();function wu(t){"undefined"==typeof Zone?_u.then(()=>{t&&t.apply(null,null)}):Zone.current.scheduleMicroTask("scheduleMicrotask",t)}class xu{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:e=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Rc(!1),this.onMicrotaskEmpty=new Rc(!1),this.onStable=new Rc(!1),this.onError=new Rc(!1),"undefined"==typeof Zone)throw new Error("In this configuration Angular requires Zone.js");Zone.assertZonePatched();const i=this;i._nesting=0,i._outer=i._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(i._inner=i._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(i._inner=i._inner.fork(Zone.longStackTraceZoneSpec)),i.shouldCoalesceEventChangeDetection=!n&&e,i.shouldCoalesceRunChangeDetection=n,i.lastRequestAnimationFrameId=-1,i.nativeRequestAnimationFrame=function(){let t=Ut.requestAnimationFrame,e=Ut.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=()=>{!function(t){t.isCheckStableRunning||-1!==t.lastRequestAnimationFrameId||(t.lastRequestAnimationFrameId=t.nativeRequestAnimationFrame.call(Ut,()=>{t.fakeTopEventTask||(t.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{t.lastRequestAnimationFrameId=-1,Cu(t),t.isCheckStableRunning=!0,Eu(t),t.isCheckStableRunning=!1},void 0,()=>{},()=>{})),t.fakeTopEventTask.invoke()}),Cu(t))}(t)};t._inner=t._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(n,i,r,s,o,a)=>{try{return Ou(t),n.invokeTask(r,s,o,a)}finally{(t.shouldCoalesceEventChangeDetection&&"eventTask"===s.type||t.shouldCoalesceRunChangeDetection)&&e(),Tu(t)}},onInvoke:(n,i,r,s,o,a,l)=>{try{return Ou(t),n.invoke(r,s,o,a,l)}finally{t.shouldCoalesceRunChangeDetection&&e(),Tu(t)}},onHasTask:(e,n,i,r)=>{e.hasTask(i,r),n===i&&("microTask"==r.change?(t._hasPendingMicrotasks=r.microTask,Cu(t),Eu(t)):"macroTask"==r.change&&(t.hasPendingMacrotasks=r.macroTask))},onHandleError:(e,n,i,r)=>(e.handleError(i,r),t.runOutsideAngular(()=>t.onError.emit(r)),!1)})}(i)}static isInAngularZone(){return!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!xu.isInAngularZone())throw new Error("Expected to be in Angular Zone, but it is not!")}static assertNotInAngularZone(){if(xu.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 r=this._inner,s=r.scheduleEventTask("NgZoneEvent: "+i,t,Su,Cl,Cl);try{return r.runTask(s,e,n)}finally{r.cancelTask(s)}}runGuarded(t,e,n){return this._inner.runGuarded(t,e,n)}runOutsideAngular(t){return this._outer.run(t)}}const Su={};function Eu(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 Cu(t){t.hasPendingMicrotasks=!!(t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&-1!==t.lastRequestAnimationFrameId)}function Ou(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function Tu(t){t._nesting--,Eu(t)}class ku{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Rc,this.onMicrotaskEmpty=new Rc,this.onStable=new Rc,this.onError=new Rc}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 Au=(()=>{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:()=>{xu.assertNotInAngularZone(),wu(()=>{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())wu(()=>{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/plugins/task-tracking" 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)(Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Pu=(()=>{class t{constructor(){this._applications=new Map,Iu.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 Iu.findTestabilityInTree(this,t,e)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Mu{addToWindow(t){}findTestabilityInTree(t,e,n){return null}}let Iu=new Mu,Du=!0,Ru=!1;function Nu(){return Ru=!0,Du}let Lu;const ju=new oi("AllowMultipleToken");function Fu(t,e,n=[]){const i=`Platform: ${e}`,r=new oi(i);return(e=[])=>{let s=Bu();if(!s||s.injector.get(ju,!1))if(t)t(n.concat(e).concat({provide:r,useValue:!0}));else{const t=n.concat(e).concat({provide:r,useValue:!0},{provide:xo,useValue:"platform"});!function(t){if(Lu&&!Lu.destroyed&&!Lu.injector.get(ju,!1))throw new Error("There can be only one platform. Destroy the previous one to create a new one.");Lu=t.get(Vu);const e=t.get(su,null);e&&e.forEach(t=>t())}(No.create({providers:t,name:i}))}return function(t){const e=Bu();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}(r)}}function Bu(){return Lu&&!Lu.destroyed?Lu:null}let Vu=(()=>{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 ku:("zone.js"===t?void 0:t)||new xu({enableLongStackTrace:Nu(),shouldCoalesceEventChangeDetection:!!(null==e?void 0:e.ngZoneEventCoalescing),shouldCoalesceRunChangeDetection:!!(null==e?void 0:e.ngZoneRunCoalescing)}),n}(e?e.ngZone:void 0,{ngZoneEventCoalescing:e&&e.ngZoneEventCoalescing||!1,ngZoneRunCoalescing:e&&e.ngZoneRunCoalescing||!1}),i=[{provide:xu,useValue:n}];return n.run(()=>{const r=No.create({providers:i,parent:this.injector,name:t.moduleType.name}),s=t.create(r),o=s.injector.get(Ar,null);if(!o)throw new Error("No ErrorHandler. Is platform module (BrowserModule) included?");return n.runOutsideAngular(()=>{const t=n.onError.subscribe({next:t=>{o.handleError(t)}});s.onDestroy(()=>{Hu(this._modules,s),t.unsubscribe()})}),function(t,n,i){try{const e=i();return ha(e)?e.catch(e=>{throw n.runOutsideAngular(()=>t.handleError(e)),e}):e}catch(e){throw n.runOutsideAngular(()=>t.handleError(e)),e}}(o,n,()=>{const t=s.injector.get(eu);return t.runInitializers(),t.donePromise.then(()=>(dl(s.injector.get(cu,ul)||ul),this._moduleDoBootstrap(s),s))})})}bootstrapModule(t,e=[]){const n=zu({},e);return function(t,e,n){const i=new Cc(n);return Promise.resolve(i)}(0,0,t).then(t=>this.bootstrapModuleFactory(t,n))}_moduleDoBootstrap(t){const e=t.injector.get(Uu);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(t=>e.bootstrap(t));else{if(!t.instance.ngDoBootstrap)throw new Error(`The module ${ut(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)(Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function zu(t,e){return Array.isArray(e)?e.reduce(zu,t):Object.assign(Object.assign({},t),e)}let Uu=(()=>{class t{constructor(t,e,n,i,r){this._zone=t,this._injector=e,this._exceptionHandler=n,this._componentFactoryResolver=i,this._initStatus=r,this._bootstrapListeners=[],this._views=[],this._runningTick=!1,this._stable=!0,this.componentTypes=[],this.components=[],this._onMicrotaskEmptySubscription=this._zone.onMicrotaskEmpty.subscribe({next:()=>{this._zone.run(()=>{this.tick()})}});const s=new C(t=>{this._stable=this._zone.isStable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks,this._zone.runOutsideAngular(()=>{t.next(this._stable),t.complete()})}),o=new C(t=>{let e;this._zone.runOutsideAngular(()=>{e=this._zone.onStable.subscribe(()=>{xu.assertNotInAngularZone(),wu(()=>{!this._stable&&!this._zone.hasPendingMacrotasks&&!this._zone.hasPendingMicrotasks&&(this._stable=!0,t.next(!0))})})});const n=this._zone.onUnstable.subscribe(()=>{xu.assertInAngularZone(),this._stable&&(this._stable=!1,this._zone.runOutsideAngular(()=>{t.next(!1)}))});return()=>{e.unsubscribe(),n.unsubscribe()}});this.isStable=Q(s,o.pipe(at()))}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 wl?t:this._componentFactoryResolver.resolveComponentFactory(t),this.componentTypes.push(n.componentType);const i=function(t){return t.isBoundToModule}(n)?void 0:this._injector.get(cc),r=n.create(No.NULL,[],e||n.selector,i),s=r.location.nativeElement,o=r.injector.get(Au,null),a=o&&r.injector.get(Pu);return o&&a&&a.registerApplication(s,o),r.onDestroy(()=>{this.detachView(r.hostView),Hu(this.components,r),a&&a.unregisterApplication(s)}),this._loadComponent(r),r}tick(){if(this._runningTick)throw new Error("ApplicationRef.tick is called recursively");try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}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;Hu(this._views,e),e.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t),this._injector.get(au,[]).concat(this._bootstrapListeners).forEach(e=>e(t))}ngOnDestroy(){this._views.slice().forEach(t=>t.destroy()),this._onMicrotaskEmptySubscription.unsubscribe()}get viewCount(){return this._views.length}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(No),Ci(Ar),Ci(El),Ci(eu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Hu(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const $u=Fu(null,"core",[{provide:ou,useValue:"unknown"},{provide:Vu,deps:[No]},{provide:Pu,deps:[]},{provide:lu,deps:[]}]),Gu=[{provide:Uu,useClass:Uu,deps:[xu,No,Ar,El,eu]},{provide:_c,deps:[xu],useFactory:function(t){let e=[];return t.onStable.subscribe(()=>{for(;e.length;)e.pop()()}),function(t){e.push(t)}}},{provide:eu,useClass:eu,deps:[[new Ii,tu]]},{provide:yu,useClass:yu,deps:[]},iu,{provide:ql,useFactory:function(){return nc},deps:[]},{provide:Yl,useFactory:function(){return ic},deps:[]},{provide:cu,useFactory:function(t){return dl(t=t||"undefined"!=typeof $localize&&$localize.locale||ul),t},deps:[[new Mi(cu),new Ii,new Di]]},{provide:uu,useValue:"USD"}];let Wu=(()=>{class t{constructor(t){}}return t.\u0275fac=function(e){return new(e||t)(Ci(Uu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Gu}),t})(),qu=null;function Xu(){return qu}const Yu=new oi("DocumentToken");let Ku=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:Qu,token:t,providedIn:"platform"}),t})();function Qu(){return Ci(Zu)}let Zu=(()=>{class t extends Ku{constructor(t){super(),this._doc=t,this._init()}_init(){this.location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xu().getBaseHref(this._doc)}onPopState(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("popstate",t,!1),()=>e.removeEventListener("popstate",t)}onHashChange(t){const e=Xu().getGlobalEventTarget(this._doc,"window");return e.addEventListener("hashchange",t,!1),()=>e.removeEventListener("hashchange",t)}get href(){return this.location.href}get protocol(){return this.location.protocol}get hostname(){return this.location.hostname}get port(){return this.location.port}get pathname(){return this.location.pathname}get search(){return this.location.search}get hash(){return this.location.hash}set pathname(t){this.location.pathname=t}pushState(t,e,n){Ju()?this._history.pushState(t,e,n):this.location.hash=n}replaceState(t,e,n){Ju()?this._history.replaceState(t,e,n):this.location.hash=n}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:th,token:t,providedIn:"platform"}),t})();function Ju(){return!!window.history.pushState}function th(){return new Zu(Ci(Yu))}function eh(t,e){if(0==t.length)return e;if(0==e.length)return t;let n=0;return t.endsWith("/")&&n++,e.startsWith("/")&&n++,2==n?t+e.substring(1):1==n?t+e:t+"/"+e}function nh(t){const e=t.match(/#|\?|$/),n=e&&e.index||t.length;return t.slice(0,n-("/"===t[n-1]?1:0))+t.slice(n)}function ih(t){return t&&"?"!==t[0]?"?"+t:t}let rh=(()=>{class t{historyGo(t){throw new Error("Not implemented")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:sh,token:t,providedIn:"root"}),t})();function sh(t){const e=Ci(Yu).location;return new ah(Ci(Ku),e&&e.origin||"")}const oh=new oi("appBaseHref");let ah=(()=>{class t extends rh{constructor(t,e){if(super(),this._platformLocation=t,this._removeListenerFns=[],null==e&&(e=this._platformLocation.getBaseHrefFromDOM()),null==e)throw new Error("No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document.");this._baseHref=e}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return eh(this._baseHref,t)}path(t=!1){const e=this._platformLocation.pathname+ih(this._platformLocation.search),n=this._platformLocation.hash;return n&&t?`${e}${n}`:e}pushState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.pushState(t,e,r)}replaceState(t,e,n,i){const r=this.prepareExternalUrl(n+ih(i));this._platformLocation.replaceState(t,e,r)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformLocation).historyGo)||void 0===n||n.call(e,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ku),Ci(oh,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lh=(()=>{class t{constructor(t,e){this._subject=new Rc,this._urlChangeListeners=[],this._platformStrategy=t;const n=this._platformStrategy.getBaseHref();this._platformLocation=e,this._baseHref=nh(uh(n)),this._platformStrategy.onPopState(t=>{this._subject.emit({url:this.path(!0),pop:!0,state:t.state,type:t.type})})}path(t=!1){return this.normalize(this._platformStrategy.path(t))}getState(){return this._platformLocation.getState()}isCurrentPathEqualTo(t,e=""){return this.path()==this.normalize(t+ih(e))}normalize(e){return t.stripTrailingSlash(function(t,e){return t&&e.startsWith(t)?e.substring(t.length):e}(this._baseHref,uh(e)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._platformStrategy.prepareExternalUrl(t)}go(t,e="",n=null){this._platformStrategy.pushState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}replaceState(t,e="",n=null){this._platformStrategy.replaceState(n,"",t,e),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+ih(e)),n)}forward(){this._platformStrategy.forward()}back(){this._platformStrategy.back()}historyGo(t=0){var e,n;null===(n=(e=this._platformStrategy).historyGo)||void 0===n||n.call(e,t)}onUrlChange(t){this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(t=>{this._notifyUrlChangeListeners(t.url,t.state)}))}_notifyUrlChangeListeners(t="",e){this._urlChangeListeners.forEach(n=>n(t,e))}subscribe(t,e,n){return this._subject.subscribe({next:t,error:e,complete:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(rh),Ci(Ku))},t.normalizeQueryParams=ih,t.joinWithSlash=eh,t.stripTrailingSlash=nh,t.\u0275prov=xt({factory:ch,token:t,providedIn:"root"}),t})();function ch(){return new lh(Ci(rh),Ci(Ku))}function uh(t){return t.replace(/\/index.html$/,"")}var hh=(()=>((hh=hh||{})[hh.Zero=0]="Zero",hh[hh.One=1]="One",hh[hh.Two=2]="Two",hh[hh.Few=3]="Few",hh[hh.Many=4]="Many",hh[hh.Other=5]="Other",hh))();const dh=function(t){return function(t){const e=function(t){return t.toLowerCase().replace(/_/g,"-")}(t);let n=ll(e);if(n)return n;const i=e.split("-")[0];if(n=ll(i),n)return n;if("en"===i)return ol;throw new Error(`Missing locale data for the locale "${t}".`)}(t)[cl.PluralCase]};class ph{}let fh=(()=>{class t extends ph{constructor(t){super(),this.locale=t}getPluralCategory(t,e){switch(dh(e||this.locale)(t)){case hh.Zero:return"zero";case hh.One:return"one";case hh.Two:return"two";case hh.Few:return"few";case hh.Many:return"many";default:return"other"}}}return t.\u0275fac=function(e){return new(e||t)(Ci(cu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function gh(t,e){e=encodeURIComponent(e);for(const n of t.split(";")){const t=n.indexOf("="),[i,r]=-1==t?[n,""]:[n.slice(0,t),n.slice(t+1)];if(i.trim()===e)return decodeURIComponent(r)}return null}let mh=(()=>{class t{constructor(t,e,n,i){this._iterableDiffers=t,this._keyValueDiffers=e,this._ngEl=n,this._renderer=i,this._iterableDiffer=null,this._keyValueDiffer=null,this._initialClasses=[],this._rawClass=null}set klass(t){this._removeClasses(this._initialClasses),this._initialClasses="string"==typeof t?t.split(/\s+/):[],this._applyClasses(this._initialClasses),this._applyClasses(this._rawClass)}set ngClass(t){this._removeClasses(this._rawClass),this._applyClasses(this._initialClasses),this._iterableDiffer=null,this._keyValueDiffer=null,this._rawClass="string"==typeof t?t.split(/\s+/):t,this._rawClass&&(Go(this._rawClass)?this._iterableDiffer=this._iterableDiffers.find(this._rawClass).create():this._keyValueDiffer=this._keyValueDiffers.find(this._rawClass).create())}ngDoCheck(){if(this._iterableDiffer){const t=this._iterableDiffer.diff(this._rawClass);t&&this._applyIterableChanges(t)}else if(this._keyValueDiffer){const t=this._keyValueDiffer.diff(this._rawClass);t&&this._applyKeyValueChanges(t)}}_applyKeyValueChanges(t){t.forEachAddedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachChangedItem(t=>this._toggleClass(t.key,t.currentValue)),t.forEachRemovedItem(t=>{t.previousValue&&this._toggleClass(t.key,!1)})}_applyIterableChanges(t){t.forEachAddedItem(t=>{if("string"!=typeof t.item)throw new Error(`NgClass can only toggle CSS classes expressed as strings, got ${ut(t.item)}`);this._toggleClass(t.item,!0)}),t.forEachRemovedItem(t=>this._toggleClass(t.item,!1))}_applyClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!0)):Object.keys(t).forEach(e=>this._toggleClass(e,!!t[e])))}_removeClasses(t){t&&(Array.isArray(t)||t instanceof Set?t.forEach(t=>this._toggleClass(t,!1)):Object.keys(t).forEach(t=>this._toggleClass(t,!1)))}_toggleClass(t,e){(t=t.trim())&&t.split(/\s+/g).forEach(t=>{e?this._renderer.addClass(this._ngEl.nativeElement,t):this._renderer.removeClass(this._ngEl.nativeElement,t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(Yl),ea(kl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"}}),t})();class bh{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 yh=(()=>{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){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const e=this._ngForOf;if(!this._differ&&e)try{this._differ=this._differs.find(e).create(this.ngForTrackBy)}catch(t){throw new Error(`Cannot find a differ supporting object '${e}' of type '${function(t){return t.name||typeof t}(e)}'. NgFor only supports binding to Iterables such as Arrays.`)}}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 bh(null,this._ngForOf,-1,-1),null===i?void 0:i),r=new vh(t,n);e.push(r)}else if(null==i)this._viewContainer.remove(null===n?void 0:n);else if(null!==n){const r=this._viewContainer.get(n);this._viewContainer.move(r,i);const s=new vh(t,r);e.push(s)}});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)(ea(hc),ea(sc),ea(ql))},t.\u0275dir=se({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}}),t})();class vh{constructor(t,e){this.record=t,this.view=e}}let _h=(()=>{class t{constructor(t,e){this._viewContainer=t,this._context=new wh,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){xh("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){xh("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)(ea(hc),ea(sc))},t.\u0275dir=se({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}}),t})();class wh{constructor(){this.$implicit=null,this.ngIf=null}}function xh(t,e){if(e&&!e.createEmbeddedView)throw new Error(`${t} must be a TemplateRef, but received '${ut(e)}'.`)}class Sh{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 Eh=(()=>{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 Sh(t,e)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}}),t})(),Oh=(()=>{class t{constructor(t,e,n){n._addDefault(new Sh(t,e))}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(sc),ea(Eh,9))},t.\u0275dir=se({type:t,selectors:[["","ngSwitchDefault",""]]}),t})(),Th=(()=>{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)(ea(kl),ea(Yl),ea(Ml))},t.\u0275dir=se({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}}),t})(),kh=(()=>{class t{constructor(t){this._viewContainerRef=t,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null}ngOnChanges(t){if(t.ngTemplateOutlet){const t=this._viewContainerRef;this._viewRef&&t.remove(t.indexOf(this._viewRef)),this._viewRef=this.ngTemplateOutlet?t.createEmbeddedView(this.ngTemplateOutlet,this.ngTemplateOutletContext):null}else this._viewRef&&t.ngTemplateOutletContext&&this.ngTemplateOutletContext&&(this._viewRef.context=this.ngTemplateOutletContext)}}return t.\u0275fac=function(e){return new(e||t)(ea(hc))},t.\u0275dir=se({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet"},features:[ye]}),t})();class Ah{createSubscription(t,e){return t.subscribe({next:e,error:t=>{throw t}})}dispose(t){t.unsubscribe()}onDestroy(t){t.unsubscribe()}}class Ph{createSubscription(t,e){return t.then(e,t=>{throw t})}dispose(t){}onDestroy(t){}}const Mh=new Ph,Ih=new Ah;let Dh=(()=>{class t{constructor(t){this._ref=t,this._latestValue=null,this._subscription=null,this._obj=null,this._strategy=null}ngOnDestroy(){this._subscription&&this._dispose()}transform(t){return this._obj?t!==this._obj?(this._dispose(),this.transform(t)):this._latestValue:(t&&this._subscribe(t),this._latestValue)}_subscribe(t){this._obj=t,this._strategy=this._selectStrategy(t),this._subscription=this._strategy.createSubscription(t,e=>this._updateLatestValue(t,e))}_selectStrategy(e){if(ha(e))return Mh;if(da(e))return Ih;throw function(t,e){return Error(`InvalidPipeArgument: '${e}' for pipe '${ut(t)}'`)}(t,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(t,e){t===this._obj&&(this._latestValue=e,this._ref.markForCheck())}}return t.\u0275fac=function(e){return new(e||t)(ea(tc,16))},t.\u0275pipe=oe({name:"async",type:t,pure:!1}),t})(),Rh=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:ph,useClass:fh}]}),t})();const Nh="browser";function Lh(t){return t===Nh}class jh{}class Fh extends class extends class{}{constructor(){super(...arguments),this.supportsDOMEvents=!0}}{static makeCurrent(){!function(t){qu||(qu=t)}(new Fh)}onAndCancel(t,e,n){return t.addEventListener(e,n,!1),()=>{t.removeEventListener(e,n,!1)}}dispatchEvent(t,e){t.dispatchEvent(e)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}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}getBaseHref(t){const e=(Vh=Vh||document.querySelector("base"),Vh?Vh.getAttribute("href"):null);return null==e?null:function(t){Bh=Bh||document.createElement("a"),Bh.setAttribute("href",t);const e=Bh.pathname;return"/"===e.charAt(0)?e:`/${e}`}(e)}resetBaseElement(){Vh=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return gh(document.cookie,t)}}let Bh,Vh=null;const zh=new oi("TRANSITION_ID"),Uh=[{provide:tu,useFactory:function(t,e,n){return()=>{n.get(eu).donePromise.then(()=>{const n=Xu(),i=e.querySelectorAll(`style[ng-transition="${t}"]`);for(let t=0;t{const i=t.findTestabilityInTree(e,n);if(null==i)throw new Error("Could not find testability for element.");return i},Ut.getAllAngularTestabilities=()=>t.getAllTestabilities(),Ut.getAllAngularRootElements=()=>t.getAllRootElements(),Ut.frameworkStabilizers||(Ut.frameworkStabilizers=[]),Ut.frameworkStabilizers.push(t=>{const e=Ut.getAllAngularTestabilities();let n=e.length,i=!1;const r=function(e){i=i||e,n--,0==n&&t(i)};e.forEach(function(t){t.whenStable(r)})})}findTestabilityInTree(t,e,n){if(null==e)return null;const i=t.getTestability(e);return null!=i?i:n?Xu().isShadowRoot(e)?this.findTestabilityInTree(t,e.host,!0):this.findTestabilityInTree(t,e.parentElement,!0):null}}let $h=(()=>{class t{build(){return new XMLHttpRequest}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gh=new oi("EventManagerPlugins");let Wh=(()=>{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=xt({token:t,factory:t.\u0275fac}),t})(),Yh=(()=>{class t extends Xh{constructor(t){super(),this._doc=t,this._hostNodes=new Map,this._hostNodes.set(t.head,[])}_addStylesToHost(t,e,n){t.forEach(t=>{const i=this._doc.createElement("style");i.textContent=t,n.push(e.appendChild(i))})}addHost(t){const e=[];this._addStylesToHost(this._stylesSet,t,e),this._hostNodes.set(t,e)}removeHost(t){const e=this._hostNodes.get(t);e&&e.forEach(Kh),this._hostNodes.delete(t)}onStylesAdded(t){this._hostNodes.forEach((e,n)=>{this._addStylesToHost(t,n,e)})}ngOnDestroy(){this._hostNodes.forEach(t=>t.forEach(Kh))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function Kh(t){Xu().remove(t)}const Qh={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/"},Zh=/%COMP%/g;function Jh(t,e,n){for(let i=0;i{if("__ngUnwrap__"===e)return t;!1===t(e)&&(e.preventDefault(),e.returnValue=!1)}}let ed=(()=>{class t{constructor(t,e,n){this.eventManager=t,this.sharedStylesHost=e,this.appId=n,this.rendererByCompId=new Map,this.defaultRenderer=new nd(t)}createRenderer(t,e){if(!t||!e)return this.defaultRenderer;switch(e.encapsulation){case jt.Emulated:{let n=this.rendererByCompId.get(e.id);return n||(n=new id(this.eventManager,this.sharedStylesHost,e,this.appId),this.rendererByCompId.set(e.id,n)),n.applyToHost(t),n}case 1:case jt.ShadowDom:return new rd(this.eventManager,this.sharedStylesHost,t,e);default:if(!this.rendererByCompId.has(e.id)){const t=Jh(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)(Ci(Wh),Ci(Yh),Ci(nu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class nd{constructor(t){this.eventManager=t,this.data=Object.create(null)}destroy(){}createElement(t,e){return e?document.createElementNS(Qh[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 r=Qh[i];r?t.setAttributeNS(r,e,n):t.setAttribute(e,n)}else t.setAttribute(e,n)}removeAttribute(t,e,n){if(n){const i=Qh[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&(Rr.DashCase|Rr.Important)?t.style.setProperty(e,n,i&Rr.Important?"important":""):t.style[e]=n}removeStyle(t,e,n){n&Rr.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,td(n)):this.eventManager.addEventListener(t,e,td(n))}}class id extends nd{constructor(t,e,n,i){super(t),this.component=n;const r=Jh(i+"-"+n.id,n.styles,[]);e.addStyles(r),this.contentAttr=function(t){return"_ngcontent-%COMP%".replace(Zh,t)}(i+"-"+n.id),this.hostAttr=function(t){return"_nghost-%COMP%".replace(Zh,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 rd extends nd{constructor(t,e,n,i){super(t),this.sharedStylesHost=e,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const r=Jh(i.id,i.styles,[]);for(let s=0;s{class t extends qh{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)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const od=["alt","control","meta","shift"],ad={"\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"},ld={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"},cd={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey};let ud=(()=>{class t extends qh{constructor(t){super(t)}supports(e){return null!=t.parseEventName(e)}addEventListener(e,n,i){const r=t.parseEventName(n),s=t.eventCallback(r.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xu().onAndCancel(e,r.domEventName,s))}static parseEventName(e){const n=e.toLowerCase().split("."),i=n.shift();if(0===n.length||"keydown"!==i&&"keyup"!==i)return null;const r=t._normalizeKey(n.pop());let s="";if(od.forEach(t=>{const e=n.indexOf(t);e>-1&&(n.splice(e,1),s+=t+".")}),s+=r,0!=n.length||0===r.length)return null;const o={};return o.domEventName=i,o.fullKey=s,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&&ld.hasOwnProperty(e)&&(e=ld[e]))}return ad[e]||e}(t);return n=n.toLowerCase()," "===n?n="space":"."===n&&(n="dot"),od.forEach(i=>{i!=n&&cd[i](t)&&(e+=i+".")}),e+=n,e}static eventCallback(e,n,i){return r=>{t.getEventFullKey(r)===e&&i.runGuarded(()=>n(r))}}static _normalizeKey(t){switch(t){case"esc":return"escape";default:return t}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),hd=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return Ci(dd)},token:t,providedIn:"root"}),t})(),dd=(()=>{class t extends hd{constructor(t){super(),this._doc=t}sanitize(t,e){if(null==e)return null;switch(t){case yr.NONE:return e;case yr.HTML:return qi(e,"HTML")?Wi(e):mr(this._doc,String(e)).toString();case yr.STYLE:return qi(e,"Style")?Wi(e):e;case yr.SCRIPT:if(qi(e,"Script"))return Wi(e);throw new Error("unsafe value used in a script context");case yr.URL:return Xi(e),qi(e,"URL")?Wi(e):Ji(String(e));case yr.RESOURCE_URL:if(qi(e,"ResourceURL"))return Wi(e);throw new Error("unsafe value used in a resource URL context (see https://g.co/ng/security#xss)");default:throw new Error(`Unexpected SecurityContext ${t} (see https://g.co/ng/security#xss)`)}}bypassSecurityTrustHtml(t){return function(t){return new zi(t)}(t)}bypassSecurityTrustStyle(t){return function(t){return new Ui(t)}(t)}bypassSecurityTrustScript(t){return function(t){return new Hi(t)}(t)}bypassSecurityTrustUrl(t){return function(t){return new $i(t)}(t)}bypassSecurityTrustResourceUrl(t){return function(t){return new Gi(t)}(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return function(t){return new dd(t.get(Yu))}(Ci(_o))},token:t,providedIn:"root"}),t})();const pd=Fu($u,"browser",[{provide:ou,useValue:Nh},{provide:su,useValue:function(){Fh.makeCurrent(),Hh.init()},multi:!0},{provide:Yu,useFactory:function(){return function(t){Ce=t}(document),document},deps:[]}]),fd=[[],{provide:xo,useValue:"root"},{provide:Ar,useFactory:function(){return new Ar},deps:[]},{provide:Gh,useClass:sd,multi:!0,deps:[Yu,xu,ou]},{provide:Gh,useClass:ud,multi:!0,deps:[Yu]},[],{provide:ed,useClass:ed,deps:[Wh,Yh,nu]},{provide:Pl,useExisting:ed},{provide:Xh,useExisting:Yh},{provide:Yh,useClass:Yh,deps:[Yu]},{provide:Au,useClass:Au,deps:[xu]},{provide:Wh,useClass:Wh,deps:[Gh,xu]},{provide:jh,useClass:$h,deps:[]},[]];let gd=(()=>{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:nu,useValue:e.appId},{provide:zh,useExisting:nu},Uh]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:fd,imports:[Rh,Wu]}),t})();function md(t){return null!=t&&"false"!=`${t}`}function bd(t,e=0){return function(t){return!isNaN(parseFloat(t))&&!isNaN(Number(t))}(t)?Number(t):e}function yd(t){return Array.isArray(t)?t:[t]}function vd(t){return null==t?"":"string"==typeof t?t:`${t}px`}function _d(t){return t instanceof kl?t.nativeElement:t}function wd(...t){let e=t[t.length-1];return I(e)?(t.pop(),z(t,e)):K(t)}function xd(t,e,n,i){return a(n)&&(i=n,n=void 0),i?xd(t,e,n).pipe(D(t=>d(t)?i(...t):i(t))):new C(i=>{Sd(t,e,function(t){i.next(arguments.length>1?Array.prototype.slice.call(arguments):t)},i,n)})}function Sd(t,e,n,i,r){let s;if(function(t){return t&&"function"==typeof t.addEventListener&&"function"==typeof t.removeEventListener}(t)){const i=t;t.addEventListener(e,n,r),s=()=>i.removeEventListener(e,n,r)}else if(function(t){return t&&"function"==typeof t.on&&"function"==typeof t.off}(t)){const i=t;t.on(e,n),s=()=>i.off(e,n)}else if(function(t){return t&&"function"==typeof t.addListener&&"function"==typeof t.removeListener}(t)){const i=t;t.addListener(e,n),s=()=>i.removeListener(e,n)}else{if(!t||!t.length)throw new TypeError("Invalid event target");for(let s=0,o=t.length;s{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 Td extends Od{constructor(t,e=Od.now){super(t,()=>Td.delegate&&Td.delegate!==this?Td.delegate.now():e()),this.actions=[],this.active=!1,this.scheduled=void 0}schedule(t,e=0,n){return Td.delegate&&Td.delegate!==this?Td.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}}}new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?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 kd=1;const Ad=Promise.resolve(),Pd={};function Md(t){return t in Pd&&(delete Pd[t],!0)}const Id={setImmediate(t){const e=kd++;return Pd[e]=!0,Ad.then(()=>Md(e)&&t()),e},clearImmediate(t){Md(t)}};new class extends Td{flush(t){this.active=!0,this.scheduled=void 0;const{actions:e}=this;let n,i=-1,r=e.length;t=t||e.shift();do{if(n=t.execute(t.state,t.delay))break}while(++i0?super.requestAsyncId(t,e,n):(t.actions.push(this),t.scheduled||(t.scheduled=Id.setImmediate(t.flush.bind(t,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&&(Id.clearImmediate(e),t.scheduled=void 0)}});function Dd(t){return!!t&&(t instanceof C||"function"==typeof t.lift&&"function"==typeof t.subscribe)}function Rd(t,e){return n=>n.lift(new Nd(t,e))}class Nd{constructor(t,e){this.compare=t,this.keySelector=e}call(t,e){return e.subscribe(new Ld(t,this.compare,this.keySelector))}}class Ld extends v{constructor(t,e,n){super(t),this.keySelector=n,this.hasKey=!1,"function"==typeof e&&(this.compare=e)}compare(t,e){return t===e}_next(t){let e;try{const{keySelector:n}=this;e=n?n(t):t}catch(i){return this.destination.error(i)}let n=!1;if(this.hasKey)try{const{compare:t}=this;n=t(this.key,e)}catch(i){return this.destination.error(i)}else this.hasKey=!0;n||(this.key=e,this.destination.next(t))}}const jd=new Td(Cd);class Fd{constructor(t){this.durationSelector=t}call(t,e){return e.subscribe(new Bd(t,this.durationSelector))}}class Bd extends ${constructor(t,e){super(t),this.durationSelector=e,this.hasValue=!1}_next(t){if(this.value=t,this.hasValue=!0,!this.throttled){let n;try{const{durationSelector:e}=this;n=e(t)}catch(e){return this.destination.error(e)}const i=G(n,new H(this));!i||i.closed?this.clearThrottle():this.add(this.throttled=i)}}clearThrottle(){const{value:t,hasValue:e,throttled:n}=this;n&&(this.remove(n),this.throttled=void 0,n.unsubscribe()),e&&(this.value=void 0,this.hasValue=!1,this.destination.next(t))}notifyNext(){this.clearThrottle()}notifyComplete(){this.clearThrottle()}}function Vd(t){return!d(t)&&t-parseFloat(t)+1>=0}function zd(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 Ud(t,e=jd){return function(t){return function(e){return e.lift(new Fd(t))}}(()=>function(t=0,e,n){let i=-1;return Vd(e)?i=Number(e)<1?1:Number(e):I(e)&&(n=e),I(n)||(n=jd),new C(e=>{const r=Vd(t)?t:+t-n.now();return n.schedule(zd,r,{index:0,period:i,subscriber:e})})}(t,e))}function Hd(t,e){return function(n){return n.lift(new $d(t,e))}}class $d{constructor(t,e){this.predicate=t,this.thisArg=e}call(t,e){return e.subscribe(new Gd(t,this.predicate,this.thisArg))}}class Gd extends v{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 Wd(t){return e=>e.lift(new qd(t))}class qd{constructor(t){this.notifier=t}call(t,e){const n=new Xd(t),i=G(this.notifier,new H(n));return i&&!n.seenValue?(n.add(i),e.subscribe(n)):n}}class Xd extends ${constructor(t){super(t),this.seenValue=!1}notifyNext(){this.seenValue=!0,this.complete()}notifyComplete(){}}function Yd(...t){return Y(1)(wd(...t))}function Kd(...t){const e=t[t.length-1];return I(e)?(t.pop(),n=>Yd(t,n,e)):e=>Yd(t,e)}function Qd(t,e){return"function"==typeof e?n=>n.pipe(Qd((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new Zd(t))}class Zd{constructor(t){this.project=t}call(t,e){return e.subscribe(new Jd(t,this.project))}}class Jd extends ${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)}_innerSub(t){const e=this.innerSubscription;e&&e.unsubscribe();const n=new H(this),i=this.destination;i.add(n),this.innerSubscription=G(t,n),this.innerSubscription!==n&&i.add(this.innerSubscription)}_complete(){const{innerSubscription:t}=this;(!t||t.closed)&&super._complete(),this.unsubscribe()}_unsubscribe(){this.innerSubscription=void 0}notifyComplete(){this.innerSubscription=void 0,this.isStopped&&super._complete()}notifyNext(t){this.destination.next(t)}}const tp=new class extends Td{}(class extends Cd{constructor(t,e){super(t,e),this.scheduler=t,this.work=e}schedule(t,e=0){return e>0?super.schedule(t,e):(this.delay=e,this.state=t,this.scheduler.flush(this),this)}execute(t,e){return e>0||this.closed?super.execute(t,e):this._execute(t,e)}requestAsyncId(t,e,n=0){return null!==n&&n>0||null===n&&this.delay>0?super.requestAsyncId(t,e,n):t.flush(this)}}),ep=new C(t=>t.complete());function np(t){return t?function(t){return new C(e=>t.schedule(()=>e.complete()))}(t):ep}function ip(t,e){return new C(e?n=>e.schedule(rp,0,{error:t,subscriber:n}):e=>e.error(t))}function rp({error:t,subscriber:e}){e.error(t)}class sp{constructor(t,e,n){this.kind=t,this.value=e,this.error=n,this.hasValue="N"===t}observe(t){switch(this.kind){case"N":return t.next&&t.next(this.value);case"E":return t.error&&t.error(this.error);case"C":return t.complete&&t.complete()}}do(t,e,n){switch(this.kind){case"N":return t&&t(this.value);case"E":return e&&e(this.error);case"C":return n&&n()}}accept(t,e,n){return t&&"function"==typeof t.next?this.observe(t):this.do(t,e,n)}toObservable(){switch(this.kind){case"N":return wd(this.value);case"E":return ip(this.error);case"C":return np()}throw new Error("unexpected notification kind value")}static createNext(t){return void 0!==t?new sp("N",t):sp.undefinedValueNotification}static createError(t){return new sp("E",void 0,t)}static createComplete(){return sp.completeNotification}}sp.completeNotification=new sp("C"),sp.undefinedValueNotification=new sp("N",void 0);class op extends v{constructor(t,e,n=0){super(t),this.scheduler=e,this.delay=n}static dispatch(t){const{notification:e,destination:n}=t;e.observe(n),this.unsubscribe()}scheduleMessage(t){this.destination.add(this.scheduler.schedule(op.dispatch,this.delay,new ap(t,this.destination)))}_next(t){this.scheduleMessage(sp.createNext(t))}_error(t){this.scheduleMessage(sp.createError(t)),this.unsubscribe()}_complete(){this.scheduleMessage(sp.createComplete()),this.unsubscribe()}}class ap{constructor(t,e){this.notification=t,this.destination=e}}class lp extends P{constructor(t=Number.POSITIVE_INFINITY,e=Number.POSITIVE_INFINITY,n){super(),this.scheduler=n,this._events=[],this._infiniteTimeWindow=!1,this._bufferSize=t<1?1:t,this._windowTime=e<1?1:e,e===Number.POSITIVE_INFINITY?(this._infiniteTimeWindow=!0,this.next=this.nextInfiniteTimeWindow):this.next=this.nextTimeWindow}nextInfiniteTimeWindow(t){if(!this.isStopped){const e=this._events;e.push(t),e.length>this._bufferSize&&e.shift()}super.next(t)}nextTimeWindow(t){this.isStopped||(this._events.push(new cp(this._getNow(),t)),this._trimBufferThenGetEvents()),super.next(t)}_subscribe(t){const e=this._infiniteTimeWindow,n=e?this._events:this._trimBufferThenGetEvents(),i=this.scheduler,r=n.length;let s;if(this.closed)throw new T;if(this.isStopped||this.hasError?s=g.EMPTY:(this.observers.push(t),s=new k(this,t)),i&&t.add(t=new op(t,i)),e)for(let o=0;oe&&(s=Math.max(s,r-e)),s>0&&i.splice(0,s),i}}class cp{constructor(t,e){this.time=t,this.value=e}}function up(t,e,n){let i;return i=t&&"object"==typeof t?t:{bufferSize:t,windowTime:e,refCount:!1,scheduler:n},t=>t.lift(function({bufferSize:t=Number.POSITIVE_INFINITY,windowTime:e=Number.POSITIVE_INFINITY,refCount:n,scheduler:i}){let r,s,o=0,a=!1,l=!1;return function(c){let u;o++,!r||a?(a=!1,r=new lp(t,e,i),u=r.subscribe(this),s=c.subscribe({next(t){r.next(t)},error(t){a=!0,r.error(t)},complete(){l=!0,s=void 0,r.complete()}}),l&&(s=void 0)):u=r.subscribe(this),this.add(()=>{o--,u.unsubscribe(),u=void 0,s&&!l&&n&&0===o&&(s.unsubscribe(),s=void 0,r=void 0)})}}(i))}let hp;try{hp="undefined"!=typeof Intl&&Intl.v8BreakIterator}catch(m){hp=!1}let dp,pp=(()=>{class t{constructor(t){this._platformId=t,this.isBrowser=this._platformId?Lh(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&&!hp)&&"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)(Ci(ou))},t.\u0275prov=xt({factory:function(){return new t(Ci(ou))},token:t,providedIn:"root"}),t})(),fp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const gp=["color","button","checkbox","date","datetime-local","email","file","hidden","image","month","number","password","radio","range","reset","search","submit","tel","text","time","url","week"];function mp(){if(dp)return dp;if("object"!=typeof document||!document)return dp=new Set(gp),dp;let t=document.createElement("input");return dp=new Set(gp.filter(e=>(t.setAttribute("type",e),t.type===e))),dp}let bp,yp,vp;function _p(t){return function(){if(null==bp&&"undefined"!=typeof window)try{window.addEventListener("test",null,Object.defineProperty({},"passive",{get:()=>bp=!0}))}finally{bp=bp||!1}return bp}()?t:!!t.capture}function wp(){if(null==yp){if("object"!=typeof document||!document||"function"!=typeof Element||!Element)return yp=!1,yp;if("scrollBehavior"in document.documentElement.style)yp=!0;else{const t=Element.prototype.scrollTo;yp=!!t&&!/\{\s*\[native code\]\s*\}/.test(t.toString())}}return yp}function xp(t){if(function(){if(null==vp){const t="undefined"!=typeof document?document.head:null;vp=!(!t||!t.createShadowRoot&&!t.attachShadow)}return vp}()){const e=t.getRootNode?t.getRootNode():null;if("undefined"!=typeof ShadowRoot&&ShadowRoot&&e instanceof ShadowRoot)return e}return null}function Sp(){let t="undefined"!=typeof document&&document?document.activeElement:null;for(;t&&t.shadowRoot;){const e=t.shadowRoot.activeElement;if(e===t)break;t=e}return t}function Ep(t){return t.composedPath?t.composedPath()[0]:t.target}const Cp=new oi("cdk-dir-doc",{providedIn:"root",factory:function(){return Oi(Yu)}});let Op=(()=>{class t{constructor(t){if(this.value="ltr",this.change=new Rc,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)(Ci(Cp,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Cp,8))},token:t,providedIn:"root"}),t})(),Tp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class kp{constructor(t=!1,e,n=!0){this._multiple=t,this._emitChanges=n,this._selection=new Set,this._deselectedToEmit=[],this._selectedToEmit=[],this.changed=new P,e&&e.length&&(t?e.forEach(t=>this._markSelected(t)):this._markSelected(e[0]),this._selectedToEmit.length=0)}get selected(){return this._selected||(this._selected=Array.from(this._selection.values())),this._selected}select(...t){this._verifyValueAssignment(t),t.forEach(t=>this._markSelected(t)),this._emitChangeEvent()}deselect(...t){this._verifyValueAssignment(t),t.forEach(t=>this._unmarkSelected(t)),this._emitChangeEvent()}toggle(t){this.isSelected(t)?this.deselect(t):this.select(t)}clear(){this._unmarkAll(),this._emitChangeEvent()}isSelected(t){return this._selection.has(t)}isEmpty(){return 0===this._selection.size}hasValue(){return!this.isEmpty()}sort(t){this._multiple&&this.selected&&this._selected.sort(t)}isMultipleSelection(){return this._multiple}_emitChangeEvent(){this._selected=null,(this._selectedToEmit.length||this._deselectedToEmit.length)&&(this.changed.next({source:this,added:this._selectedToEmit,removed:this._deselectedToEmit}),this._deselectedToEmit=[],this._selectedToEmit=[])}_markSelected(t){this.isSelected(t)||(this._multiple||this._unmarkAll(),this._selection.add(t),this._emitChanges&&this._selectedToEmit.push(t))}_unmarkSelected(t){this.isSelected(t)&&(this._selection.delete(t),this._emitChanges&&this._deselectedToEmit.push(t))}_unmarkAll(){this.isEmpty()||this._selection.forEach(t=>this._unmarkSelected(t))}_verifyValueAssignment(t){}}let Ap=(()=>{class t{constructor(){this._listeners=[]}notify(t,e){for(let n of this._listeners)n(t,e)}listen(t){return this._listeners.push(t),()=>{this._listeners=this._listeners.filter(e=>t!==e)}}ngOnDestroy(){this._listeners=[]}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),Pp=(()=>{class t{constructor(t,e,n){this._ngZone=t,this._platform=e,this._scrolled=new P,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 C(e=>{this._globalSubscription||this._addGlobalListener();const n=t>0?this._scrolled.pipe(Ud(t)).subscribe(e):this._scrolled.subscribe(e);return this._scrolledCount++,()=>{n.unsubscribe(),this._scrolledCount--,this._scrolledCount||this._removeGlobalListener()}}):wd()}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(Hd(t=>!t||n.indexOf(t)>-1))}getAncestorScrollContainers(t){const e=[];return this.scrollContainers.forEach((n,i)=>{this._scrollableContainsElement(i,t)&&e.push(i)}),e}_getWindow(){return this._document.defaultView||window}_scrollableContainsElement(t,e){let n=_d(e),i=t.getElementRef().nativeElement;do{if(n==i)return!0}while(n=n.parentElement);return!1}_addGlobalListener(){this._globalSubscription=this._ngZone.runOutsideAngular(()=>xd(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)(Ci(xu),Ci(pp),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Mp=(()=>{class t{constructor(t,e,n){this._platform=t,this._change=new P,this._changeListener=t=>{this._change.next(t)},this._document=n,e.runOutsideAngular(()=>{if(t.isBrowser){const t=this._getWindow();t.addEventListener("resize",this._changeListener),t.addEventListener("orientationchange",this._changeListener)}this.change().subscribe(()=>this._viewportSize=null)})}ngOnDestroy(){if(this._platform.isBrowser){const t=this._getWindow();t.removeEventListener("resize",this._changeListener),t.removeEventListener("orientationchange",this._changeListener)}this._change.complete()}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._document,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(Ud(t)):this._change}_getWindow(){return this._document.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)(Ci(pp),Ci(xu),Ci(Yu,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu,8))},token:t,providedIn:"root"}),t})(),Ip=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),Dp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp,fp,Ip],Tp,Ip]}),t})();class Rp{attach(t){return this._attachedHost=t,t.attach(this)}detach(){let t=this._attachedHost;null!=t&&(this._attachedHost=null,t.detach())}get isAttached(){return null!=this._attachedHost}setAttachedHost(t){this._attachedHost=t}}class Np extends Rp{constructor(t,e,n,i){super(),this.component=t,this.viewContainerRef=e,this.injector=n,this.componentFactoryResolver=i}}class Lp extends Rp{constructor(t,e,n){super(),this.templateRef=t,this.viewContainerRef=e,this.context=n}get origin(){return this.templateRef.elementRef}attach(t,e=this.context){return this.context=e,super.attach(t)}detach(){return this.context=void 0,super.detach()}}class jp extends Rp{constructor(t){super(),this.element=t instanceof kl?t.nativeElement:t}}class Fp{constructor(){this._isDisposed=!1,this.attachDomPortal=null}hasAttached(){return!!this._attachedPortal}attach(t){return t instanceof Np?(this._attachedPortal=t,this.attachComponentPortal(t)):t instanceof Lp?(this._attachedPortal=t,this.attachTemplatePortal(t)):this.attachDomPortal&&t instanceof jp?(this._attachedPortal=t,this.attachDomPortal(t)):void 0}detach(){this._attachedPortal&&(this._attachedPortal.setAttachedHost(null),this._attachedPortal=null),this._invokeDisposeFn()}dispose(){this.hasAttached()&&this.detach(),this._invokeDisposeFn(),this._isDisposed=!0}setDisposeFn(t){this._disposeFn=t}_invokeDisposeFn(){this._disposeFn&&(this._disposeFn(),this._disposeFn=null)}}class Bp extends Fp{constructor(t,e,n,i,r){super(),this.outletElement=t,this._componentFactoryResolver=e,this._appRef=n,this._defaultInjector=i,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");e.parentNode.insertBefore(n,e),this.outletElement.appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=r}attachComponentPortal(t){const e=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component);let n;return t.viewContainerRef?(n=t.viewContainerRef.createComponent(e,t.viewContainerRef.length,t.injector||t.viewContainerRef.injector),this.setDisposeFn(()=>n.destroy())):(n=e.create(t.injector||this._defaultInjector),this._appRef.attachView(n.hostView),this.setDisposeFn(()=>{this._appRef.detachView(n.hostView),n.destroy()})),this.outletElement.appendChild(this._getComponentRootNode(n)),this._attachedPortal=t,n}attachTemplatePortal(t){let e=t.viewContainerRef,n=e.createEmbeddedView(t.templateRef,t.context);return n.rootNodes.forEach(t=>this.outletElement.appendChild(t)),n.detectChanges(),this.setDisposeFn(()=>{let t=e.indexOf(n);-1!==t&&e.remove(t)}),this._attachedPortal=t,n}dispose(){super.dispose(),null!=this.outletElement.parentNode&&this.outletElement.parentNode.removeChild(this.outletElement)}_getComponentRootNode(t){return t.hostView.rootNodes[0]}}let Vp=(()=>{class t extends Lp{constructor(t,e){super(t,e)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc),ea(hc))},t.\u0275dir=se({type:t,selectors:[["","cdkPortal",""]],exportAs:["cdkPortal"],features:[jo]}),t})(),zp=(()=>{class t extends Vp{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","cdk-portal",""],["","portal",""]],exportAs:["cdkPortal"],features:[_l([{provide:Vp,useExisting:t}]),jo]}),t})(),Up=(()=>{class t extends Fp{constructor(t,e,n){super(),this._componentFactoryResolver=t,this._viewContainerRef=e,this._isInitialized=!1,this.attached=new Rc,this.attachDomPortal=t=>{const e=t.element,n=this._document.createComment("dom-portal");t.setAttachedHost(this),e.parentNode.insertBefore(n,e),this._getRootNode().appendChild(e),this._attachedPortal=t,super.setDisposeFn(()=>{n.parentNode&&n.parentNode.replaceChild(e,n)})},this._document=n}get portal(){return this._attachedPortal}set portal(t){this.hasAttached()&&!t&&!this._isInitialized||(this.hasAttached()&&super.detach(),t&&super.attach(t),this._attachedPortal=t)}get attachedRef(){return this._attachedRef}ngOnInit(){this._isInitialized=!0}ngOnDestroy(){super.dispose(),this._attachedPortal=null,this._attachedRef=null}attachComponentPortal(t){t.setAttachedHost(this);const e=null!=t.viewContainerRef?t.viewContainerRef:this._viewContainerRef,n=(t.componentFactoryResolver||this._componentFactoryResolver).resolveComponentFactory(t.component),i=e.createComponent(n,e.length,t.injector||e.injector);return e!==this._viewContainerRef&&this._getRootNode().appendChild(i.hostView.rootNodes[0]),super.setDisposeFn(()=>i.destroy()),this._attachedPortal=t,this._attachedRef=i,this.attached.emit(i),i}attachTemplatePortal(t){t.setAttachedHost(this);const e=this._viewContainerRef.createEmbeddedView(t.templateRef,t.context);return super.setDisposeFn(()=>this._viewContainerRef.clear()),this._attachedPortal=t,this._attachedRef=e,this.attached.emit(e),e}_getRootNode(){const t=this._viewContainerRef.element.nativeElement;return t.nodeType===t.ELEMENT_NODE?t:t.parentNode}}return t.\u0275fac=function(e){return new(e||t)(ea(El),ea(hc),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","cdkPortalOutlet",""]],inputs:{portal:["cdkPortalOutlet","portal"]},outputs:{attached:"attached"},exportAs:["cdkPortalOutlet"],features:[jo]}),t})(),Hp=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const $p=(()=>{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 Gp(t){return e=>0===t?np():e.lift(new Wp(t))}class Wp{constructor(t){if(this.total=t,this.total<0)throw new $p}call(t,e){return e.subscribe(new qp(t,this.total))}}class qp extends v{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 Xp(t,e=!1){return n=>n.lift(new Yp(t,e))}class Yp{constructor(t,e){this.predicate=t,this.inclusive=e}call(t,e){return e.subscribe(new Kp(t,this.predicate,this.inclusive))}}class Kp extends v{constructor(t,e,n){super(t),this.predicate=e,this.inclusive=n,this.index=0}_next(t){const e=this.destination;let n;try{n=this.predicate(t,this.index++)}catch(i){return void e.error(i)}this.nextOrComplete(t,n)}nextOrComplete(t,e){const n=this.destination;Boolean(e)?n.next(t):(this.inclusive&&n.next(t),n.complete())}}function Qp(t,...e){return e.length?e.some(e=>t[e]):t.altKey||t.shiftKey||t.ctrlKey||t.metaKey}const Zp=wp();class Jp{constructor(t,e){this._viewportRuler=t,this._previousHTMLStyles={top:"",left:""},this._isEnabled=!1,this._document=e}attach(){}enable(){if(this._canBeEnabled()){const t=this._document.documentElement;this._previousScrollPosition=this._viewportRuler.getViewportScrollPosition(),this._previousHTMLStyles.left=t.style.left||"",this._previousHTMLStyles.top=t.style.top||"",t.style.left=vd(-this._previousScrollPosition.left),t.style.top=vd(-this._previousScrollPosition.top),t.classList.add("cdk-global-scrollblock"),this._isEnabled=!0}}disable(){if(this._isEnabled){const t=this._document.documentElement,e=t.style,n=this._document.body.style,i=e.scrollBehavior||"",r=n.scrollBehavior||"";this._isEnabled=!1,e.left=this._previousHTMLStyles.left,e.top=this._previousHTMLStyles.top,t.classList.remove("cdk-global-scrollblock"),Zp&&(e.scrollBehavior=n.scrollBehavior="auto"),window.scroll(this._previousScrollPosition.left,this._previousScrollPosition.top),Zp&&(e.scrollBehavior=i,n.scrollBehavior=r)}}_canBeEnabled(){if(this._document.documentElement.classList.contains("cdk-global-scrollblock")||this._isEnabled)return!1;const t=this._document.body,e=this._viewportRuler.getViewportSize();return t.scrollHeight>e.height||t.scrollWidth>e.width}}class tf{constructor(t,e,n,i){this._scrollDispatcher=t,this._ngZone=e,this._viewportRuler=n,this._config=i,this._scrollSubscription=null,this._detach=()=>{this.disable(),this._overlayRef.hasAttached()&&this._ngZone.run(()=>this._overlayRef.detach())}}attach(t){this._overlayRef=t}enable(){if(this._scrollSubscription)return;const t=this._scrollDispatcher.scrolled(0);this._config&&this._config.threshold&&this._config.threshold>1?(this._initialScrollPosition=this._viewportRuler.getViewportScrollPosition().top,this._scrollSubscription=t.subscribe(()=>{const t=this._viewportRuler.getViewportScrollPosition().top;Math.abs(t-this._initialScrollPosition)>this._config.threshold?this._detach():this._overlayRef.updatePosition()})):this._scrollSubscription=t.subscribe(this._detach)}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}class ef{enable(){}disable(){}attach(){}}function nf(t,e){return e.some(e=>t.bottome.bottom||t.righte.right)}function rf(t,e){return e.some(e=>t.tope.bottom||t.lefte.right)}class sf{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this._config=i,this._scrollSubscription=null}attach(t){this._overlayRef=t}enable(){this._scrollSubscription||(this._scrollSubscription=this._scrollDispatcher.scrolled(this._config?this._config.scrollThrottle:0).subscribe(()=>{if(this._overlayRef.updatePosition(),this._config&&this._config.autoClose){const t=this._overlayRef.overlayElement.getBoundingClientRect(),{width:e,height:n}=this._viewportRuler.getViewportSize();nf(t,[{width:e,height:n,bottom:n,right:e,top:0,left:0}])&&(this.disable(),this._ngZone.run(()=>this._overlayRef.detach()))}}))}disable(){this._scrollSubscription&&(this._scrollSubscription.unsubscribe(),this._scrollSubscription=null)}detach(){this.disable(),this._overlayRef=null}}let of=(()=>{class t{constructor(t,e,n,i){this._scrollDispatcher=t,this._viewportRuler=e,this._ngZone=n,this.noop=()=>new ef,this.close=t=>new tf(this._scrollDispatcher,this._ngZone,this._viewportRuler,t),this.block=()=>new Jp(this._viewportRuler,this._document),this.reposition=t=>new sf(this._scrollDispatcher,this._viewportRuler,this._ngZone,t),this._document=i}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Pp),Ci(Mp),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();class af{constructor(t){if(this.scrollStrategy=new ef,this.panelClass="",this.hasBackdrop=!1,this.backdropClass="cdk-overlay-dark-backdrop",this.disposeOnNavigation=!1,t){const e=Object.keys(t);for(const n of e)void 0!==t[n]&&(this[n]=t[n])}}}class lf{constructor(t,e,n,i,r){this.offsetX=n,this.offsetY=i,this.panelClass=r,this.originX=t.originX,this.originY=t.originY,this.overlayX=e.overlayX,this.overlayY=e.overlayY}}class cf{constructor(t,e){this.connectionPair=t,this.scrollableViewProperties=e}}let uf=(()=>{class t{constructor(t){this._attachedOverlays=[],this._document=t}ngOnDestroy(){this.detach()}add(t){this.remove(t),this._attachedOverlays.push(t)}remove(t){const e=this._attachedOverlays.indexOf(t);e>-1&&this._attachedOverlays.splice(e,1),0===this._attachedOverlays.length&&this.detach()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),hf=(()=>{class t extends uf{constructor(t){super(t),this._keydownListener=t=>{const e=this._attachedOverlays;for(let n=e.length-1;n>-1;n--)if(e[n]._keydownEvents.observers.length>0){e[n]._keydownEvents.next(t);break}}}add(t){super.add(t),this._isAttached||(this._document.body.addEventListener("keydown",this._keydownListener),this._isAttached=!0)}detach(){this._isAttached&&(this._document.body.removeEventListener("keydown",this._keydownListener),this._isAttached=!1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})(),df=(()=>{class t extends uf{constructor(t,e){super(t),this._platform=e,this._cursorStyleIsSet=!1,this._clickListener=t=>{const e=Ep(t),n=this._attachedOverlays.slice();for(let i=n.length-1;i>-1;i--){const r=n[i];if(!(r._outsidePointerEvents.observers.length<1)&&r.hasAttached()){if(r.overlayElement.contains(e))break;r._outsidePointerEvents.next(t)}}}}add(t){if(super.add(t),!this._isAttached){const t=this._document.body;t.addEventListener("click",this._clickListener,!0),t.addEventListener("auxclick",this._clickListener,!0),t.addEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&!this._cursorStyleIsSet&&(this._cursorOriginalValue=t.style.cursor,t.style.cursor="pointer",this._cursorStyleIsSet=!0),this._isAttached=!0}}detach(){if(this._isAttached){const t=this._document.body;t.removeEventListener("click",this._clickListener,!0),t.removeEventListener("auxclick",this._clickListener,!0),t.removeEventListener("contextmenu",this._clickListener,!0),this._platform.IOS&&this._cursorStyleIsSet&&(t.style.cursor=this._cursorOriginalValue,this._cursorStyleIsSet=!1),this._isAttached=!1}}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu),Ci(pp))},token:t,providedIn:"root"}),t})();const pf="undefined"!=typeof window?window:{},ff=void 0!==pf.__karma__&&!!pf.__karma__||void 0!==pf.jasmine&&!!pf.jasmine||void 0!==pf.jest&&!!pf.jest||void 0!==pf.Mocha&&!!pf.Mocha;let gf=(()=>{class t{constructor(t,e){this._platform=e,this._document=t}ngOnDestroy(){const t=this._containerElement;t&&t.parentNode&&t.parentNode.removeChild(t)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){const t="cdk-overlay-container";if(this._platform.isBrowser||ff){const e=this._document.querySelectorAll(`.${t}[platform="server"], .${t}[platform="test"]`);for(let t=0;tthis._backdropClick.next(t),this._keydownEvents=new P,this._outsidePointerEvents=new P,i.scrollStrategy&&(this._scrollStrategy=i.scrollStrategy,this._scrollStrategy.attach(this)),this._positionStrategy=i.positionStrategy}get overlayElement(){return this._pane}get backdropElement(){return this._backdropElement}get hostElement(){return this._host}attach(t){let e=this._portalOutlet.attach(t);return!this._host.parentElement&&this._previousHostParent&&this._previousHostParent.appendChild(this._host),this._positionStrategy&&this._positionStrategy.attach(this),this._updateStackingOrder(),this._updateElementSize(),this._updateElementDirection(),this._scrollStrategy&&this._scrollStrategy.enable(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this.hasAttached()&&this.updatePosition()}),this._togglePointerEvents(!0),this._config.hasBackdrop&&this._attachBackdrop(),this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!0),this._attachments.next(),this._keyboardDispatcher.add(this),this._config.disposeOnNavigation&&(this._locationChanges=this._location.subscribe(()=>this.dispose())),this._outsideClickDispatcher.add(this),e}detach(){if(!this.hasAttached())return;this.detachBackdrop(),this._togglePointerEvents(!1),this._positionStrategy&&this._positionStrategy.detach&&this._positionStrategy.detach(),this._scrollStrategy&&this._scrollStrategy.disable();const t=this._portalOutlet.detach();return this._detachments.next(),this._keyboardDispatcher.remove(this),this._detachContentWhenStable(),this._locationChanges.unsubscribe(),this._outsideClickDispatcher.remove(this),t}dispose(){const t=this.hasAttached();this._positionStrategy&&this._positionStrategy.dispose(),this._disposeScrollStrategy(),this.detachBackdrop(),this._locationChanges.unsubscribe(),this._keyboardDispatcher.remove(this),this._portalOutlet.dispose(),this._attachments.complete(),this._backdropClick.complete(),this._keydownEvents.complete(),this._outsidePointerEvents.complete(),this._outsideClickDispatcher.remove(this),this._host&&this._host.parentNode&&(this._host.parentNode.removeChild(this._host),this._host=null),this._previousHostParent=this._pane=null,t&&this._detachments.next(),this._detachments.complete()}hasAttached(){return this._portalOutlet.hasAttached()}backdropClick(){return this._backdropClick}attachments(){return this._attachments}detachments(){return this._detachments}keydownEvents(){return this._keydownEvents}outsidePointerEvents(){return this._outsidePointerEvents}getConfig(){return this._config}updatePosition(){this._positionStrategy&&this._positionStrategy.apply()}updatePositionStrategy(t){t!==this._positionStrategy&&(this._positionStrategy&&this._positionStrategy.dispose(),this._positionStrategy=t,this.hasAttached()&&(t.attach(this),this.updatePosition()))}updateSize(t){this._config=Object.assign(Object.assign({},this._config),t),this._updateElementSize()}setDirection(t){this._config=Object.assign(Object.assign({},this._config),{direction:t}),this._updateElementDirection()}addPanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!0)}removePanelClass(t){this._pane&&this._toggleClasses(this._pane,t,!1)}getDirection(){const t=this._config.direction;return t?"string"==typeof t?t:t.value:"ltr"}updateScrollStrategy(t){t!==this._scrollStrategy&&(this._disposeScrollStrategy(),this._scrollStrategy=t,this.hasAttached()&&(t.attach(this),t.enable()))}_updateElementDirection(){this._host.setAttribute("dir",this.getDirection())}_updateElementSize(){if(!this._pane)return;const t=this._pane.style;t.width=vd(this._config.width),t.height=vd(this._config.height),t.minWidth=vd(this._config.minWidth),t.minHeight=vd(this._config.minHeight),t.maxWidth=vd(this._config.maxWidth),t.maxHeight=vd(this._config.maxHeight)}_togglePointerEvents(t){this._pane.style.pointerEvents=t?"":"none"}_attachBackdrop(){const t="cdk-overlay-backdrop-showing";this._backdropElement=this._document.createElement("div"),this._backdropElement.classList.add("cdk-overlay-backdrop"),this._config.backdropClass&&this._toggleClasses(this._backdropElement,this._config.backdropClass,!0),this._host.parentElement.insertBefore(this._backdropElement,this._host),this._backdropElement.addEventListener("click",this._backdropClickHandler),"undefined"!=typeof requestAnimationFrame?this._ngZone.runOutsideAngular(()=>{requestAnimationFrame(()=>{this._backdropElement&&this._backdropElement.classList.add(t)})}):this._backdropElement.classList.add(t)}_updateStackingOrder(){this._host.nextSibling&&this._host.parentNode.appendChild(this._host)}detachBackdrop(){let t=this._backdropElement;if(!t)return;let e,n=()=>{t&&(t.removeEventListener("click",this._backdropClickHandler),t.removeEventListener("transitionend",n),t.parentNode&&t.parentNode.removeChild(t)),this._backdropElement==t&&(this._backdropElement=null),this._config.backdropClass&&this._toggleClasses(t,this._config.backdropClass,!1),clearTimeout(e)};t.classList.remove("cdk-overlay-backdrop-showing"),this._ngZone.runOutsideAngular(()=>{t.addEventListener("transitionend",n)}),t.style.pointerEvents="none",e=this._ngZone.runOutsideAngular(()=>setTimeout(n,500))}_toggleClasses(t,e,n){const i=t.classList;yd(e).forEach(t=>{t&&(n?i.add(t):i.remove(t))})}_detachContentWhenStable(){this._ngZone.runOutsideAngular(()=>{const t=this._ngZone.onStable.pipe(Wd(Q(this._attachments,this._detachments))).subscribe(()=>{(!this._pane||!this._host||0===this._pane.children.length)&&(this._pane&&this._config.panelClass&&this._toggleClasses(this._pane,this._config.panelClass,!1),this._host&&this._host.parentElement&&(this._previousHostParent=this._host.parentElement,this._previousHostParent.removeChild(this._host)),t.unsubscribe())})})}_disposeScrollStrategy(){const t=this._scrollStrategy;t&&(t.disable(),t.detach&&t.detach())}}const bf="cdk-overlay-connected-position-bounding-box",yf=/([A-Za-z%]+)$/;class vf{constructor(t,e,n,i,r){this._viewportRuler=e,this._document=n,this._platform=i,this._overlayContainer=r,this._lastBoundingBoxSize={width:0,height:0},this._isPushed=!1,this._canPush=!0,this._growAfterOpen=!1,this._hasFlexibleDimensions=!0,this._positionLocked=!1,this._viewportMargin=0,this._scrollables=[],this._preferredPositions=[],this._positionChanges=new P,this._resizeSubscription=g.EMPTY,this._offsetX=0,this._offsetY=0,this._appliedPanelClasses=[],this.positionChanges=this._positionChanges,this.setOrigin(t)}get positions(){return this._preferredPositions}attach(t){this._validatePositions(),t.hostElement.classList.add(bf),this._overlayRef=t,this._boundingBox=t.hostElement,this._pane=t.overlayElement,this._isDisposed=!1,this._isInitialRender=!0,this._lastPosition=null,this._resizeSubscription.unsubscribe(),this._resizeSubscription=this._viewportRuler.change().subscribe(()=>{this._isInitialRender=!0,this.apply()})}apply(){if(this._isDisposed||!this._platform.isBrowser)return;if(!this._isInitialRender&&this._positionLocked&&this._lastPosition)return void this.reapplyLastPosition();this._clearPanelClasses(),this._resetOverlayElementStyles(),this._resetBoundingBoxStyles(),this._viewportRect=this._getNarrowedViewportRect(),this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect();const t=this._originRect,e=this._overlayRect,n=this._viewportRect,i=[];let r;for(let s of this._preferredPositions){let o=this._getOriginPoint(t,s),a=this._getOverlayPoint(o,e,s),l=this._getOverlayFit(a,e,n,s);if(l.isCompletelyWithinViewport)return this._isPushed=!1,void this._applyPosition(s,o);this._canFitWithFlexibleDimensions(l,a,n)?i.push({position:s,origin:o,overlayRect:e,boundingBoxRect:this._calculateBoundingBoxRect(o,s)}):(!r||r.overlayFit.visibleAreae&&(e=i,t=n)}return this._isPushed=!1,void this._applyPosition(t.position,t.origin)}if(this._canPush)return this._isPushed=!0,void this._applyPosition(r.position,r.originPoint);this._applyPosition(r.position,r.originPoint)}detach(){this._clearPanelClasses(),this._lastPosition=null,this._previousPushAmount=null,this._resizeSubscription.unsubscribe()}dispose(){this._isDisposed||(this._boundingBox&&_f(this._boundingBox.style,{top:"",left:"",right:"",bottom:"",height:"",width:"",alignItems:"",justifyContent:""}),this._pane&&this._resetOverlayElementStyles(),this._overlayRef&&this._overlayRef.hostElement.classList.remove(bf),this.detach(),this._positionChanges.complete(),this._overlayRef=this._boundingBox=null,this._isDisposed=!0)}reapplyLastPosition(){if(!this._isDisposed&&(!this._platform||this._platform.isBrowser)){this._originRect=this._getOriginRect(),this._overlayRect=this._pane.getBoundingClientRect(),this._viewportRect=this._getNarrowedViewportRect();const t=this._lastPosition||this._preferredPositions[0],e=this._getOriginPoint(this._originRect,t);this._applyPosition(t,e)}}withScrollableContainers(t){return this._scrollables=t,this}withPositions(t){return this._preferredPositions=t,-1===t.indexOf(this._lastPosition)&&(this._lastPosition=null),this._validatePositions(),this}withViewportMargin(t){return this._viewportMargin=t,this}withFlexibleDimensions(t=!0){return this._hasFlexibleDimensions=t,this}withGrowAfterOpen(t=!0){return this._growAfterOpen=t,this}withPush(t=!0){return this._canPush=t,this}withLockedPosition(t=!0){return this._positionLocked=t,this}setOrigin(t){return this._origin=t,this}withDefaultOffsetX(t){return this._offsetX=t,this}withDefaultOffsetY(t){return this._offsetY=t,this}withTransformOriginOn(t){return this._transformOriginSelector=t,this}_getOriginPoint(t,e){let n,i;if("center"==e.originX)n=t.left+t.width/2;else{const i=this._isRtl()?t.right:t.left,r=this._isRtl()?t.left:t.right;n="start"==e.originX?i:r}return i="center"==e.originY?t.top+t.height/2:"top"==e.originY?t.top:t.bottom,{x:n,y:i}}_getOverlayPoint(t,e,n){let i,r;return i="center"==n.overlayX?-e.width/2:"start"===n.overlayX?this._isRtl()?-e.width:0:this._isRtl()?0:-e.width,r="center"==n.overlayY?-e.height/2:"top"==n.overlayY?0:-e.height,{x:t.x+i,y:t.y+r}}_getOverlayFit(t,e,n,i){const r=xf(e);let{x:s,y:o}=t,a=this._getOffset(i,"x"),l=this._getOffset(i,"y");a&&(s+=a),l&&(o+=l);let c=0-o,u=o+r.height-n.height,h=this._subtractOverflows(r.width,0-s,s+r.width-n.width),d=this._subtractOverflows(r.height,c,u),p=h*d;return{visibleArea:p,isCompletelyWithinViewport:r.width*r.height===p,fitsInViewportVertically:d===r.height,fitsInViewportHorizontally:h==r.width}}_canFitWithFlexibleDimensions(t,e,n){if(this._hasFlexibleDimensions){const i=n.bottom-e.y,r=n.right-e.x,s=wf(this._overlayRef.getConfig().minHeight),o=wf(this._overlayRef.getConfig().minWidth),a=t.fitsInViewportHorizontally||null!=o&&o<=r;return(t.fitsInViewportVertically||null!=s&&s<=i)&&a}return!1}_pushOverlayOnScreen(t,e,n){if(this._previousPushAmount&&this._positionLocked)return{x:t.x+this._previousPushAmount.x,y:t.y+this._previousPushAmount.y};const i=xf(e),r=this._viewportRect,s=Math.max(t.x+i.width-r.width,0),o=Math.max(t.y+i.height-r.height,0),a=Math.max(r.top-n.top-t.y,0),l=Math.max(r.left-n.left-t.x,0);let c=0,u=0;return c=i.width<=r.width?l||-s:t.xi&&!this._isInitialRender&&!this._growAfterOpen&&(s=t.y-i/2)}if("end"===e.overlayX&&!i||"start"===e.overlayX&&i)c=n.width-t.x+this._viewportMargin,a=t.x-this._viewportMargin;else if("start"===e.overlayX&&!i||"end"===e.overlayX&&i)l=t.x,a=n.right-t.x;else{const e=Math.min(n.right-t.x+n.left,t.x),i=this._lastBoundingBoxSize.width;a=2*e,l=t.x-e,a>i&&!this._isInitialRender&&!this._growAfterOpen&&(l=t.x-i/2)}return{top:s,left:l,bottom:o,right:c,width:a,height:r}}_setBoundingBoxStyles(t,e){const n=this._calculateBoundingBoxRect(t,e);!this._isInitialRender&&!this._growAfterOpen&&(n.height=Math.min(n.height,this._lastBoundingBoxSize.height),n.width=Math.min(n.width,this._lastBoundingBoxSize.width));const i={};if(this._hasExactPosition())i.top=i.left="0",i.bottom=i.right=i.maxHeight=i.maxWidth="",i.width=i.height="100%";else{const t=this._overlayRef.getConfig().maxHeight,r=this._overlayRef.getConfig().maxWidth;i.height=vd(n.height),i.top=vd(n.top),i.bottom=vd(n.bottom),i.width=vd(n.width),i.left=vd(n.left),i.right=vd(n.right),i.alignItems="center"===e.overlayX?"center":"end"===e.overlayX?"flex-end":"flex-start",i.justifyContent="center"===e.overlayY?"center":"bottom"===e.overlayY?"flex-end":"flex-start",t&&(i.maxHeight=vd(t)),r&&(i.maxWidth=vd(r))}this._lastBoundingBoxSize=n,_f(this._boundingBox.style,i)}_resetBoundingBoxStyles(){_f(this._boundingBox.style,{top:"0",left:"0",right:"0",bottom:"0",height:"",width:"",alignItems:"",justifyContent:""})}_resetOverlayElementStyles(){_f(this._pane.style,{top:"",left:"",bottom:"",right:"",position:"",transform:""})}_setOverlayElementStyles(t,e){const n={},i=this._hasExactPosition(),r=this._hasFlexibleDimensions,s=this._overlayRef.getConfig();if(i){const i=this._viewportRuler.getViewportScrollPosition();_f(n,this._getExactOverlayY(e,t,i)),_f(n,this._getExactOverlayX(e,t,i))}else n.position="static";let o="",a=this._getOffset(e,"x"),l=this._getOffset(e,"y");a&&(o+=`translateX(${a}px) `),l&&(o+=`translateY(${l}px)`),n.transform=o.trim(),s.maxHeight&&(i?n.maxHeight=vd(s.maxHeight):r&&(n.maxHeight="")),s.maxWidth&&(i?n.maxWidth=vd(s.maxWidth):r&&(n.maxWidth="")),_f(this._pane.style,n)}_getExactOverlayY(t,e,n){let i={top:"",bottom:""},r=this._getOverlayPoint(e,this._overlayRect,t);this._isPushed&&(r=this._pushOverlayOnScreen(r,this._overlayRect,n));let s=this._overlayContainer.getContainerElement().getBoundingClientRect().top;return r.y-=s,"bottom"===t.overlayY?i.bottom=this._document.documentElement.clientHeight-(r.y+this._overlayRect.height)+"px":i.top=vd(r.y),i}_getExactOverlayX(t,e,n){let i,r={left:"",right:""},s=this._getOverlayPoint(e,this._overlayRect,t);return this._isPushed&&(s=this._pushOverlayOnScreen(s,this._overlayRect,n)),i=this._isRtl()?"end"===t.overlayX?"left":"right":"end"===t.overlayX?"right":"left","right"===i?r.right=this._document.documentElement.clientWidth-(s.x+this._overlayRect.width)+"px":r.left=vd(s.x),r}_getScrollVisibility(){const t=this._getOriginRect(),e=this._pane.getBoundingClientRect(),n=this._scrollables.map(t=>t.getElementRef().nativeElement.getBoundingClientRect());return{isOriginClipped:rf(t,n),isOriginOutsideView:nf(t,n),isOverlayClipped:rf(e,n),isOverlayOutsideView:nf(e,n)}}_subtractOverflows(t,...e){return e.reduce((t,e)=>t-Math.max(e,0),t)}_getNarrowedViewportRect(){const t=this._document.documentElement.clientWidth,e=this._document.documentElement.clientHeight,n=this._viewportRuler.getViewportScrollPosition();return{top:n.top+this._viewportMargin,left:n.left+this._viewportMargin,right:n.left+t-this._viewportMargin,bottom:n.top+e-this._viewportMargin,width:t-2*this._viewportMargin,height:e-2*this._viewportMargin}}_isRtl(){return"rtl"===this._overlayRef.getDirection()}_hasExactPosition(){return!this._hasFlexibleDimensions||this._isPushed}_getOffset(t,e){return"x"===e?null==t.offsetX?this._offsetX:t.offsetX:null==t.offsetY?this._offsetY:t.offsetY}_validatePositions(){}_addPanelClasses(t){this._pane&&yd(t).forEach(t=>{""!==t&&-1===this._appliedPanelClasses.indexOf(t)&&(this._appliedPanelClasses.push(t),this._pane.classList.add(t))})}_clearPanelClasses(){this._pane&&(this._appliedPanelClasses.forEach(t=>{this._pane.classList.remove(t)}),this._appliedPanelClasses=[])}_getOriginRect(){const t=this._origin;if(t instanceof kl)return t.nativeElement.getBoundingClientRect();if(t instanceof Element)return t.getBoundingClientRect();const e=t.width||0,n=t.height||0;return{top:t.y,bottom:t.y+n,left:t.x,right:t.x+e,height:n,width:e}}}function _f(t,e){for(let n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}function wf(t){if("number"!=typeof t&&null!=t){const[e,n]=t.split(yf);return n&&"px"!==n?null:parseFloat(e)}return t||null}function xf(t){return{top:Math.floor(t.top),right:Math.floor(t.right),bottom:Math.floor(t.bottom),left:Math.floor(t.left),width:Math.floor(t.width),height:Math.floor(t.height)}}class Sf{constructor(t,e,n,i,r,s,o){this._preferredPositions=[],this._positionStrategy=new vf(n,i,r,s,o).withFlexibleDimensions(!1).withPush(!1).withViewportMargin(0),this.withFallbackPosition(t,e),this.onPositionChange=this._positionStrategy.positionChanges}get positions(){return this._preferredPositions}attach(t){this._overlayRef=t,this._positionStrategy.attach(t),this._direction&&(t.setDirection(this._direction),this._direction=null)}dispose(){this._positionStrategy.dispose()}detach(){this._positionStrategy.detach()}apply(){this._positionStrategy.apply()}recalculateLastPosition(){this._positionStrategy.reapplyLastPosition()}withScrollableContainers(t){this._positionStrategy.withScrollableContainers(t)}withFallbackPosition(t,e,n,i){const r=new lf(t,e,n,i);return this._preferredPositions.push(r),this._positionStrategy.withPositions(this._preferredPositions),this}withDirection(t){return this._overlayRef?this._overlayRef.setDirection(t):this._direction=t,this}withOffsetX(t){return this._positionStrategy.withDefaultOffsetX(t),this}withOffsetY(t){return this._positionStrategy.withDefaultOffsetY(t),this}withLockedPosition(t){return this._positionStrategy.withLockedPosition(t),this}withPositions(t){return this._preferredPositions=t.slice(),this._positionStrategy.withPositions(this._preferredPositions),this}setOrigin(t){return this._positionStrategy.setOrigin(t),this}}const Ef="cdk-global-overlay-wrapper";class Cf{constructor(){this._cssPosition="static",this._topOffset="",this._bottomOffset="",this._leftOffset="",this._rightOffset="",this._alignItems="",this._justifyContent="",this._width="",this._height=""}attach(t){const e=t.getConfig();this._overlayRef=t,this._width&&!e.width&&t.updateSize({width:this._width}),this._height&&!e.height&&t.updateSize({height:this._height}),t.hostElement.classList.add(Ef),this._isDisposed=!1}top(t=""){return this._bottomOffset="",this._topOffset=t,this._alignItems="flex-start",this}left(t=""){return this._rightOffset="",this._leftOffset=t,this._justifyContent="flex-start",this}bottom(t=""){return this._topOffset="",this._bottomOffset=t,this._alignItems="flex-end",this}right(t=""){return this._leftOffset="",this._rightOffset=t,this._justifyContent="flex-end",this}width(t=""){return this._overlayRef?this._overlayRef.updateSize({width:t}):this._width=t,this}height(t=""){return this._overlayRef?this._overlayRef.updateSize({height:t}):this._height=t,this}centerHorizontally(t=""){return this.left(t),this._justifyContent="center",this}centerVertically(t=""){return this.top(t),this._alignItems="center",this}apply(){if(!this._overlayRef||!this._overlayRef.hasAttached())return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement.style,n=this._overlayRef.getConfig(),{width:i,height:r,maxWidth:s,maxHeight:o}=n,a=!("100%"!==i&&"100vw"!==i||s&&"100%"!==s&&"100vw"!==s),l=!("100%"!==r&&"100vh"!==r||o&&"100%"!==o&&"100vh"!==o);t.position=this._cssPosition,t.marginLeft=a?"0":this._leftOffset,t.marginTop=l?"0":this._topOffset,t.marginBottom=this._bottomOffset,t.marginRight=this._rightOffset,a?e.justifyContent="flex-start":"center"===this._justifyContent?e.justifyContent="center":"rtl"===this._overlayRef.getConfig().direction?"flex-start"===this._justifyContent?e.justifyContent="flex-end":"flex-end"===this._justifyContent&&(e.justifyContent="flex-start"):e.justifyContent=this._justifyContent,e.alignItems=l?"flex-start":this._alignItems}dispose(){if(this._isDisposed||!this._overlayRef)return;const t=this._overlayRef.overlayElement.style,e=this._overlayRef.hostElement,n=e.style;e.classList.remove(Ef),n.justifyContent=n.alignItems=t.marginTop=t.marginBottom=t.marginLeft=t.marginRight=t.position="",this._overlayRef=null,this._isDisposed=!0}}let Of=(()=>{class t{constructor(t,e,n,i){this._viewportRuler=t,this._document=e,this._platform=n,this._overlayContainer=i}global(){return new Cf}connectedTo(t,e,n){return new Sf(e,n,t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}flexibleConnectedTo(t){return new vf(t,this._viewportRuler,this._document,this._platform,this._overlayContainer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},t.\u0275prov=xt({factory:function(){return new t(Ci(Mp),Ci(Yu),Ci(pp),Ci(gf))},token:t,providedIn:"root"}),t})(),Tf=0,kf=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this.scrollStrategies=t,this._overlayContainer=e,this._componentFactoryResolver=n,this._positionBuilder=i,this._keyboardDispatcher=r,this._injector=s,this._ngZone=o,this._document=a,this._directionality=l,this._location=c,this._outsideClickDispatcher=u}create(t){const e=this._createHostElement(),n=this._createPaneElement(e),i=this._createPortalOutlet(n),r=new af(t);return r.direction=r.direction||this._directionality.value,new mf(i,e,n,r,this._ngZone,this._keyboardDispatcher,this._document,this._location,this._outsideClickDispatcher)}position(){return this._positionBuilder}_createPaneElement(t){const e=this._document.createElement("div");return e.id="cdk-overlay-"+Tf++,e.classList.add("cdk-overlay-pane"),t.appendChild(e),e}_createHostElement(){const t=this._document.createElement("div");return this._overlayContainer.getContainerElement().appendChild(t),t}_createPortalOutlet(t){return this._appRef||(this._appRef=this._injector.get(Uu)),new Bp(t,this._componentFactoryResolver,this._appRef,this._injector,this._document)}}return t.\u0275fac=function(e){return new(e||t)(Ci(of),Ci(gf),Ci(El),Ci(Of),Ci(hf),Ci(No),Ci(xu),Ci(Yu),Ci(Op),Ci(lh),Ci(df))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Af=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom"},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],Pf=new oi("cdk-connected-overlay-scroll-strategy");let Mf=(()=>{class t{constructor(t){this.elementRef=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl))},t.\u0275dir=se({type:t,selectors:[["","cdk-overlay-origin",""],["","overlay-origin",""],["","cdkOverlayOrigin",""]],exportAs:["cdkOverlayOrigin"]}),t})(),If=(()=>{class t{constructor(t,e,n,i,r){this._overlay=t,this._dir=r,this._hasBackdrop=!1,this._lockPosition=!1,this._growAfterOpen=!1,this._flexibleDimensions=!1,this._push=!1,this._backdropSubscription=g.EMPTY,this._attachSubscription=g.EMPTY,this._detachSubscription=g.EMPTY,this._positionSubscription=g.EMPTY,this.viewportMargin=0,this.open=!1,this.disableClose=!1,this.backdropClick=new Rc,this.positionChange=new Rc,this.attach=new Rc,this.detach=new Rc,this.overlayKeydown=new Rc,this.overlayOutsideClick=new Rc,this._templatePortal=new Lp(e,n),this._scrollStrategyFactory=i,this.scrollStrategy=this._scrollStrategyFactory()}get offsetX(){return this._offsetX}set offsetX(t){this._offsetX=t,this._position&&this._updatePositionStrategy(this._position)}get offsetY(){return this._offsetY}set offsetY(t){this._offsetY=t,this._position&&this._updatePositionStrategy(this._position)}get hasBackdrop(){return this._hasBackdrop}set hasBackdrop(t){this._hasBackdrop=md(t)}get lockPosition(){return this._lockPosition}set lockPosition(t){this._lockPosition=md(t)}get flexibleDimensions(){return this._flexibleDimensions}set flexibleDimensions(t){this._flexibleDimensions=md(t)}get growAfterOpen(){return this._growAfterOpen}set growAfterOpen(t){this._growAfterOpen=md(t)}get push(){return this._push}set push(t){this._push=md(t)}get overlayRef(){return this._overlayRef}get dir(){return this._dir?this._dir.value:"ltr"}ngOnDestroy(){this._attachSubscription.unsubscribe(),this._detachSubscription.unsubscribe(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this._overlayRef&&this._overlayRef.dispose()}ngOnChanges(t){this._position&&(this._updatePositionStrategy(this._position),this._overlayRef.updateSize({width:this.width,minWidth:this.minWidth,height:this.height,minHeight:this.minHeight}),t.origin&&this.open&&this._position.apply()),t.open&&(this.open?this._attachOverlay():this._detachOverlay())}_createOverlay(){(!this.positions||!this.positions.length)&&(this.positions=Af);const t=this._overlayRef=this._overlay.create(this._buildConfig());this._attachSubscription=t.attachments().subscribe(()=>this.attach.emit()),this._detachSubscription=t.detachments().subscribe(()=>this.detach.emit()),t.keydownEvents().subscribe(t=>{this.overlayKeydown.next(t),27===t.keyCode&&!this.disableClose&&!Qp(t)&&(t.preventDefault(),this._detachOverlay())}),this._overlayRef.outsidePointerEvents().subscribe(t=>{this.overlayOutsideClick.next(t)})}_buildConfig(){const t=this._position=this.positionStrategy||this._createPositionStrategy(),e=new af({direction:this._dir,positionStrategy:t,scrollStrategy:this.scrollStrategy,hasBackdrop:this.hasBackdrop});return(this.width||0===this.width)&&(e.width=this.width),(this.height||0===this.height)&&(e.height=this.height),(this.minWidth||0===this.minWidth)&&(e.minWidth=this.minWidth),(this.minHeight||0===this.minHeight)&&(e.minHeight=this.minHeight),this.backdropClass&&(e.backdropClass=this.backdropClass),this.panelClass&&(e.panelClass=this.panelClass),e}_updatePositionStrategy(t){const e=this.positions.map(t=>({originX:t.originX,originY:t.originY,overlayX:t.overlayX,overlayY:t.overlayY,offsetX:t.offsetX||this.offsetX,offsetY:t.offsetY||this.offsetY,panelClass:t.panelClass||void 0}));return t.setOrigin(this.origin.elementRef).withPositions(e).withFlexibleDimensions(this.flexibleDimensions).withPush(this.push).withGrowAfterOpen(this.growAfterOpen).withViewportMargin(this.viewportMargin).withLockedPosition(this.lockPosition).withTransformOriginOn(this.transformOriginSelector)}_createPositionStrategy(){const t=this._overlay.position().flexibleConnectedTo(this.origin.elementRef);return this._updatePositionStrategy(t),t}_attachOverlay(){this._overlayRef?this._overlayRef.getConfig().hasBackdrop=this.hasBackdrop:this._createOverlay(),this._overlayRef.hasAttached()||this._overlayRef.attach(this._templatePortal),this.hasBackdrop?this._backdropSubscription=this._overlayRef.backdropClick().subscribe(t=>{this.backdropClick.emit(t)}):this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe(),this.positionChange.observers.length>0&&(this._positionSubscription=this._position.positionChanges.pipe(Xp(()=>this.positionChange.observers.length>0)).subscribe(t=>{this.positionChange.emit(t),0===this.positionChange.observers.length&&this._positionSubscription.unsubscribe()}))}_detachOverlay(){this._overlayRef&&this._overlayRef.detach(),this._backdropSubscription.unsubscribe(),this._positionSubscription.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(sc),ea(hc),ea(Pf),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdk-connected-overlay",""],["","connected-overlay",""],["","cdkConnectedOverlay",""]],inputs:{viewportMargin:["cdkConnectedOverlayViewportMargin","viewportMargin"],open:["cdkConnectedOverlayOpen","open"],disableClose:["cdkConnectedOverlayDisableClose","disableClose"],scrollStrategy:["cdkConnectedOverlayScrollStrategy","scrollStrategy"],offsetX:["cdkConnectedOverlayOffsetX","offsetX"],offsetY:["cdkConnectedOverlayOffsetY","offsetY"],hasBackdrop:["cdkConnectedOverlayHasBackdrop","hasBackdrop"],lockPosition:["cdkConnectedOverlayLockPosition","lockPosition"],flexibleDimensions:["cdkConnectedOverlayFlexibleDimensions","flexibleDimensions"],growAfterOpen:["cdkConnectedOverlayGrowAfterOpen","growAfterOpen"],push:["cdkConnectedOverlayPush","push"],positions:["cdkConnectedOverlayPositions","positions"],origin:["cdkConnectedOverlayOrigin","origin"],positionStrategy:["cdkConnectedOverlayPositionStrategy","positionStrategy"],width:["cdkConnectedOverlayWidth","width"],height:["cdkConnectedOverlayHeight","height"],minWidth:["cdkConnectedOverlayMinWidth","minWidth"],minHeight:["cdkConnectedOverlayMinHeight","minHeight"],backdropClass:["cdkConnectedOverlayBackdropClass","backdropClass"],panelClass:["cdkConnectedOverlayPanelClass","panelClass"],transformOriginSelector:["cdkConnectedOverlayTransformOriginOn","transformOriginSelector"]},outputs:{backdropClick:"backdropClick",positionChange:"positionChange",attach:"attach",detach:"detach",overlayKeydown:"overlayKeydown",overlayOutsideClick:"overlayOutsideClick"},exportAs:["cdkConnectedOverlay"],features:[ye]}),t})();const Df={provide:Pf,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};let Rf=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[kf,Df],imports:[[Tp,Hp,Dp],Dp]}),t})(),Nf=(()=>{class t extends gf{constructor(){super(...arguments),this.attached=!1}setRootElement(t){this.attached&&(this.rootElement.nativeElement.removeChild(this._containerElement),this.attached=!1),this.rootElement=t,this.rootElement.nativeElement.style.display="block",this.rootElement.nativeElement.style.position="contents",this.rootElement.nativeElement.style.height="100%",this.appendToRoot()}_createContainer(){super._createContainer(),this.appendToRoot()}appendToRoot(){!this._containerElement||!this.rootElement||(this.rootElement.nativeElement.appendChild(this._containerElement),this.attached=!0)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})();const Lf={schedule(t,e){const n=setTimeout(t,e);return()=>clearTimeout(n)},scheduleBeforeRender(t){if("undefined"==typeof window)return Lf.schedule(t,0);if(void 0===window.requestAnimationFrame)return Lf.schedule(t,16);const e=window.requestAnimationFrame(t);return()=>window.cancelAnimationFrame(e)}};let jf;function Ff(t,e,n){let i=n;return function(t){return!!t&&t.nodeType===Node.ELEMENT_NODE}(t)&&e.some((e,n)=>!("*"===e||!function(t,e){if(!jf){const t=Element.prototype;jf=t.matches||t.matchesSelector||t.mozMatchesSelector||t.msMatchesSelector||t.oMatchesSelector||t.webkitMatchesSelector}return t.nodeType===Node.ELEMENT_NODE&&jf.call(t,e)}(t,e)||(i=n,0))),i}class Bf{constructor(t,e){this.componentFactory=e.get(El).resolveComponentFactory(t)}create(t){return new Vf(this.componentFactory,t)}}class Vf{constructor(t,e){this.componentFactory=t,this.injector=e,this.eventEmitters=new lp(1),this.events=this.eventEmitters.pipe(Qd(t=>Q(...t))),this.componentRef=null,this.viewChangeDetectorRef=null,this.inputChanges=null,this.hasInputChanges=!1,this.implementsOnChanges=!1,this.scheduledChangeDetectionFn=null,this.scheduledDestroyFn=null,this.initialInputValues=new Map,this.unchangedInputs=new Set(this.componentFactory.inputs.map(({propName:t})=>t)),this.ngZone=this.injector.get(xu),this.elementZone="undefined"==typeof Zone?null:this.ngZone.run(()=>Zone.current)}connect(t){this.runInZone(()=>{if(null!==this.scheduledDestroyFn)return this.scheduledDestroyFn(),void(this.scheduledDestroyFn=null);null===this.componentRef&&this.initializeComponent(t)})}disconnect(){this.runInZone(()=>{null===this.componentRef||null!==this.scheduledDestroyFn||(this.scheduledDestroyFn=Lf.schedule(()=>{null!==this.componentRef&&(this.componentRef.destroy(),this.componentRef=null,this.viewChangeDetectorRef=null)},10))})}getInputValue(t){return this.runInZone(()=>null===this.componentRef?this.initialInputValues.get(t):this.componentRef.instance[t])}setInputValue(t,e){this.runInZone(()=>{null!==this.componentRef?function(t,e){return t===e||t!=t&&e!=e}(e,this.getInputValue(t))&&(void 0!==e||!this.unchangedInputs.has(t))||(this.recordInputChange(t,e),this.unchangedInputs.delete(t),this.hasInputChanges=!0,this.componentRef.instance[t]=e,this.scheduleDetectChanges()):this.initialInputValues.set(t,e)})}initializeComponent(t){const e=No.create({providers:[],parent:this.injector}),n=function(t,e){const n=t.childNodes,i=e.map(()=>[]);let r=-1;e.some((t,e)=>"*"===t&&(r=e,!0));for(let s=0,o=n.length;s{this.initialInputValues.has(t)&&this.setInputValue(t,this.initialInputValues.get(t))}),this.initialInputValues.clear()}initializeOutputs(t){const e=this.componentFactory.outputs.map(({propName:e,templateName:n})=>t.instance[e].pipe(D(t=>({name:n,value:t}))));this.eventEmitters.next(e)}callNgOnChanges(t){if(!this.implementsOnChanges||null===this.inputChanges)return;const e=this.inputChanges;this.inputChanges=null,t.instance.ngOnChanges(e)}markViewForCheck(t){this.hasInputChanges&&(this.hasInputChanges=!1,t.markForCheck())}scheduleDetectChanges(){this.scheduledChangeDetectionFn||(this.scheduledChangeDetectionFn=Lf.scheduleBeforeRender(()=>{this.scheduledChangeDetectionFn=null,this.detectChanges()}))}recordInputChange(t,e){if(!this.implementsOnChanges)return;null===this.inputChanges&&(this.inputChanges={});const n=this.inputChanges[t];if(n)return void(n.currentValue=e);const i=this.unchangedInputs.has(t),r=i?void 0:this.getInputValue(t);this.inputChanges[t]=new be(r,e,i)}detectChanges(){null!==this.componentRef&&(this.callNgOnChanges(this.componentRef),this.markViewForCheck(this.viewChangeDetectorRef),this.componentRef.changeDetectorRef.detectChanges())}runInZone(t){return this.elementZone&&Zone.current!==this.elementZone?this.ngZone.run(t):t()}}class zf extends HTMLElement{constructor(){super(...arguments),this.ngElementEventsSubscription=null}}class Uf extends P{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const e=super._subscribe(t);return e&&!e.closed&&t.next(this._value),e}getValue(){if(this.hasError)throw this.thrownError;if(this.closed)throw new T;return this._value}next(t){super.next(this._value=t)}}function Hf(){}function $f(t,e,n){return function(i){return i.lift(new Gf(t,e,n))}}class Gf{constructor(t,e,n){this.nextOrObserver=t,this.error=e,this.complete=n}call(t,e){return e.subscribe(new Wf(t,this.nextOrObserver,this.error,this.complete))}}class Wf extends v{constructor(t,e,n,i){super(t),this._tapNext=Hf,this._tapError=Hf,this._tapComplete=Hf,this._tapError=n||Hf,this._tapComplete=i||Hf,a(e)?(this._context=this,this._tapNext=e):e&&(this._context=e,this._tapNext=e.next||Hf,this._tapError=e.error||Hf,this._tapComplete=e.complete||Hf)}_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(e){return void this.destination.error(e)}this.destination.error(t)}_complete(){try{this._tapComplete.call(this._context)}catch(t){return void this.destination.error(t)}return this.destination.complete()}}function qf(t,e=jd){return n=>n.lift(new Xf(t,e))}class Xf{constructor(t,e){this.dueTime=t,this.scheduler=e}call(t,e){return e.subscribe(new Yf(t,this.dueTime,this.scheduler))}}class Yf extends v{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(Kf,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 Kf(t){t.debouncedNext()}function Qf(t){return e=>e.lift(new Zf(t))}class Zf{constructor(t){this.total=t}call(t,e){return e.subscribe(new Jf(t,this.total))}}class Jf extends v{constructor(t,e){super(t),this.total=e,this.count=0}_next(t){++this.count>this.total&&this.destination.next(t)}}let tg=(()=>{class t{create(t){return"undefined"==typeof MutationObserver?null:new MutationObserver(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})(),eg=(()=>{class t{constructor(t){this._mutationObserverFactory=t,this._observedElements=new Map}ngOnDestroy(){this._observedElements.forEach((t,e)=>this._cleanupObserver(e))}observe(t){const e=_d(t);return new C(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 P,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)(Ci(tg))},t.\u0275prov=xt({factory:function(){return new t(Ci(tg))},token:t,providedIn:"root"}),t})(),ng=(()=>{class t{constructor(t,e,n){this._contentObserver=t,this._elementRef=e,this._ngZone=n,this.event=new Rc,this._disabled=!1,this._currentSubscription=null}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this._unsubscribe():this._subscribe()}get debounce(){return this._debounce}set debounce(t){this._debounce=bd(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(qf(this.debounce)):t).subscribe(this.event)})}_unsubscribe(){var t;null===(t=this._currentSubscription)||void 0===t||t.unsubscribe()}}return t.\u0275fac=function(e){return new(e||t)(ea(eg),ea(kl),ea(xu))},t.\u0275dir=se({type:t,selectors:[["","cdkObserveContent",""]],inputs:{disabled:["cdkObserveContentDisabled","disabled"],debounce:"debounce"},outputs:{event:"cdkObserveContent"},exportAs:["cdkObserveContent"]}),t})(),ig=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[tg]}),t})();function rg(t,e){return(t.getAttribute(e)||"").match(/\S+/g)||[]}const sg="cdk-describedby-message-container",og="cdk-describedby-message",ag="cdk-describedby-host";let lg=0;const cg=new Map;let ug=null,hg=(()=>{class t{constructor(t){this._document=t}describe(t,e,n){if(!this._canBeDescribed(t,e))return;const i=dg(e,n);"string"!=typeof e?(pg(e),cg.set(i,{messageElement:e,referenceCount:0})):cg.has(i)||this._createMessageElement(e,n),this._isElementDescribedByMessage(t,i)||this._addMessageReference(t,i)}removeDescription(t,e,n){if(!e||!this._isElementNode(t))return;const i=dg(e,n);if(this._isElementDescribedByMessage(t,i)&&this._removeMessageReference(t,i),"string"==typeof e){const t=cg.get(i);t&&0===t.referenceCount&&this._deleteMessageElement(i)}ug&&0===ug.childNodes.length&&this._deleteMessagesContainer()}ngOnDestroy(){const t=this._document.querySelectorAll(`[${ag}]`);for(let e=0;e0!=t.indexOf(og));t.setAttribute("aria-describedby",e.join(" "))}_addMessageReference(t,e){const n=cg.get(e);(function(t,e,n){const i=rg(t,e);i.some(t=>t.trim()==n.trim())||(i.push(n.trim()),t.setAttribute(e,i.join(" ")))})(t,"aria-describedby",n.messageElement.id),t.setAttribute(ag,""),n.referenceCount++}_removeMessageReference(t,e){const n=cg.get(e);n.referenceCount--,function(t,e,n){const i=rg(t,e).filter(t=>t!=n.trim());i.length?t.setAttribute(e,i.join(" ")):t.removeAttribute(e)}(t,"aria-describedby",n.messageElement.id),t.removeAttribute(ag)}_isElementDescribedByMessage(t,e){const n=rg(t,"aria-describedby"),i=cg.get(e),r=i&&i.messageElement.id;return!!r&&-1!=n.indexOf(r)}_canBeDescribed(t,e){if(!this._isElementNode(t))return!1;if(e&&"object"==typeof e)return!0;const n=null==e?"":`${e}`.trim(),i=t.getAttribute("aria-label");return!(!n||i&&i.trim()===n)}_isElementNode(t){return t.nodeType===this._document.ELEMENT_NODE}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(Yu))},token:t,providedIn:"root"}),t})();function dg(t,e){return"string"==typeof t?`${e||""}/${t}`:t}function pg(t){t.id||(t.id=`${og}-${lg++}`)}class fg extends class{constructor(t){this._items=t,this._activeItemIndex=-1,this._activeItem=null,this._wrap=!1,this._letterKeyStream=new P,this._typeaheadSubscription=g.EMPTY,this._vertical=!0,this._allowedModifierKeys=[],this._homeAndEnd=!1,this._skipPredicateFn=t=>t.disabled,this._pressedLetters=[],this.tabOut=new P,this.change=new P,t instanceof Lc&&t.changes.subscribe(t=>{if(this._activeItem){const e=t.toArray().indexOf(this._activeItem);e>-1&&e!==this._activeItemIndex&&(this._activeItemIndex=e)}})}skipPredicate(t){return this._skipPredicateFn=t,this}withWrap(t=!0){return this._wrap=t,this}withVerticalOrientation(t=!0){return this._vertical=t,this}withHorizontalOrientation(t){return this._horizontal=t,this}withAllowedModifierKeys(t){return this._allowedModifierKeys=t,this}withTypeAhead(t=200){return this._typeaheadSubscription.unsubscribe(),this._typeaheadSubscription=this._letterKeyStream.pipe($f(t=>this._pressedLetters.push(t)),qf(t),Hd(()=>this._pressedLetters.length>0),D(()=>this._pressedLetters.join(""))).subscribe(t=>{const e=this._getItemsArray();for(let n=1;n!t[e]||this._allowedModifierKeys.indexOf(e)>-1);switch(e){case 9:return void this.tabOut.next();case 40:if(this._vertical&&n){this.setNextItemActive();break}return;case 38:if(this._vertical&&n){this.setPreviousItemActive();break}return;case 39:if(this._horizontal&&n){"rtl"===this._horizontal?this.setPreviousItemActive():this.setNextItemActive();break}return;case 37:if(this._horizontal&&n){"rtl"===this._horizontal?this.setNextItemActive():this.setPreviousItemActive();break}return;case 36:if(this._homeAndEnd&&n){this.setFirstItemActive();break}return;case 35:if(this._homeAndEnd&&n){this.setLastItemActive();break}return;default:return void((n||Qp(t,"shiftKey"))&&(t.key&&1===t.key.length?this._letterKeyStream.next(t.key.toLocaleUpperCase()):(e>=65&&e<=90||e>=48&&e<=57)&&this._letterKeyStream.next(String.fromCharCode(e))))}this._pressedLetters=[],t.preventDefault()}get activeItemIndex(){return this._activeItemIndex}get activeItem(){return this._activeItem}isTyping(){return this._pressedLetters.length>0}setFirstItemActive(){this._setActiveItemByIndex(0,1)}setLastItemActive(){this._setActiveItemByIndex(this._items.length-1,-1)}setNextItemActive(){this._activeItemIndex<0?this.setFirstItemActive():this._setActiveItemByDelta(1)}setPreviousItemActive(){this._activeItemIndex<0&&this._wrap?this.setLastItemActive():this._setActiveItemByDelta(-1)}updateActiveItem(t){const e=this._getItemsArray(),n="number"==typeof t?t:e.indexOf(t),i=e[n];this._activeItem=null==i?null:i,this._activeItemIndex=n}_setActiveItemByDelta(t){this._wrap?this._setActiveInWrapMode(t):this._setActiveInDefaultMode(t)}_setActiveInWrapMode(t){const e=this._getItemsArray();for(let n=1;n<=e.length;n++){const i=(this._activeItemIndex+t*n+e.length)%e.length;if(!this._skipPredicateFn(e[i]))return void this.setActiveItem(i)}}_setActiveInDefaultMode(t){this._setActiveItemByIndex(this._activeItemIndex+t,t)}_setActiveItemByIndex(t,e){const n=this._getItemsArray();if(n[t]){for(;this._skipPredicateFn(n[t]);)if(!n[t+=e])return;this.setActiveItem(t)}}_getItemsArray(){return this._items instanceof Lc?this._items.toArray():this._items}}{setActiveItem(t){this.activeItem&&this.activeItem.setInactiveStyles(),super.setActiveItem(t),this.activeItem&&this.activeItem.setActiveStyles()}}let gg=(()=>{class t{constructor(t){this._platform=t}isDisabled(t){return t.hasAttribute("disabled")}isVisible(t){return function(t){return!!(t.offsetWidth||t.offsetHeight||"function"==typeof t.getClientRects&&t.getClientRects().length)}(t)&&"visible"===getComputedStyle(t).visibility}isTabbable(t){if(!this._platform.isBrowser)return!1;const e=function(t){try{return t.frameElement}catch(e){return null}}(function(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}(t));if(e&&(-1===bg(e)||!this.isVisible(e)))return!1;let n=t.nodeName.toLowerCase(),i=bg(t);return t.hasAttribute("contenteditable")?-1!==i:!("iframe"===n||"object"===n||this._platform.WEBKIT&&this._platform.IOS&&!function(t){let e=t.nodeName.toLowerCase(),n="input"===e&&t.type;return"text"===n||"password"===n||"select"===e||"textarea"===e}(t))&&("audio"===n?!!t.hasAttribute("controls")&&-1!==i:"video"===n?-1!==i&&(null!==i||this._platform.FIREFOX||t.hasAttribute("controls")):t.tabIndex>=0)}isFocusable(t,e){return function(t){return!function(t){return function(t){return"input"==t.nodeName.toLowerCase()}(t)&&"hidden"==t.type}(t)&&(function(t){let e=t.nodeName.toLowerCase();return"input"===e||"select"===e||"button"===e||"textarea"===e}(t)||function(t){return function(t){return"a"==t.nodeName.toLowerCase()}(t)&&t.hasAttribute("href")}(t)||t.hasAttribute("contenteditable")||mg(t))}(t)&&!this.isDisabled(t)&&((null==e?void 0:e.ignoreVisibility)||this.isVisible(t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function mg(t){if(!t.hasAttribute("tabindex")||void 0===t.tabIndex)return!1;let e=t.getAttribute("tabindex");return"-32768"!=e&&!(!e||isNaN(parseInt(e,10)))}function bg(t){if(!mg(t))return null;const e=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(e)?-1:e}class yg{constructor(t,e,n,i,r=!1){this._element=t,this._checker=e,this._ngZone=n,this._document=i,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,r||this.attachAnchors()}get enabled(){return this._enabled}set enabled(t){this._enabled=t,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}destroy(){const t=this._startAnchor,e=this._endAnchor;t&&(t.removeEventListener("focus",this.startAnchorListener),t.parentNode&&t.parentNode.removeChild(t)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return!!this._hasAttached||(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusInitialElement(t)))})}focusFirstTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusFirstTabbableElement(t)))})}focusLastTabbableElementWhenReady(t){return new Promise(e=>{this._executeOnStable(()=>e(this.focusLastTabbableElement(t)))})}_getRegionBoundary(t){let e=this._element.querySelectorAll(`[cdk-focus-region-${t}], [cdkFocusRegion${t}], [cdk-focus-${t}]`);for(let n=0;n=0;n--){let t=e[n].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[n]):null;if(t)return t}return null}_createAnchor(){const t=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,t),t.classList.add("cdk-visually-hidden"),t.classList.add("cdk-focus-trap-anchor"),t.setAttribute("aria-hidden","true"),t}_toggleAnchorTabIndex(t,e){t?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(t){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(t,this._startAnchor),this._toggleAnchorTabIndex(t,this._endAnchor))}_executeOnStable(t){this._ngZone.isStable?t():this._ngZone.onStable.pipe(Gp(1)).subscribe(t)}}let vg=(()=>{class t{constructor(t,e,n){this._checker=t,this._ngZone=e,this._document=n}create(t,e=!1){return new yg(t,this._checker,this._ngZone,this._document,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(gg),Ci(xu),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(gg),Ci(xu),Ci(Yu))},token:t,providedIn:"root"}),t})();function _g(t){return 0===t.offsetX&&0===t.offsetY}function wg(t){const e=t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0];return!(!e||-1!==e.identifier||null!=e.radiusX&&1!==e.radiusX||null!=e.radiusY&&1!==e.radiusY)}"undefined"!=typeof Element&∈const xg=new oi("cdk-input-modality-detector-options"),Sg={ignoreKeys:[18,17,224,91,16]},Eg=_p({passive:!0,capture:!0});let Cg=(()=>{class t{constructor(t,e,n,i){this._platform=t,this._mostRecentTarget=null,this._modality=new Uf(null),this._lastTouchMs=0,this._onKeydown=t=>{var e,n;(null===(n=null===(e=this._options)||void 0===e?void 0:e.ignoreKeys)||void 0===n?void 0:n.some(e=>e===t.keyCode))||(this._modality.next("keyboard"),this._mostRecentTarget=Ep(t))},this._onMousedown=t=>{Date.now()-this._lastTouchMs<650||(this._modality.next(_g(t)?"keyboard":"mouse"),this._mostRecentTarget=Ep(t))},this._onTouchstart=t=>{wg(t)?this._modality.next("keyboard"):(this._lastTouchMs=Date.now(),this._modality.next("touch"),this._mostRecentTarget=Ep(t))},this._options=Object.assign(Object.assign({},Sg),i),this.modalityDetected=this._modality.pipe(Qf(1)),this.modalityChanged=this.modalityDetected.pipe(Rd()),t.isBrowser&&e.runOutsideAngular(()=>{n.addEventListener("keydown",this._onKeydown,Eg),n.addEventListener("mousedown",this._onMousedown,Eg),n.addEventListener("touchstart",this._onTouchstart,Eg)})}get mostRecentModality(){return this._modality.value}ngOnDestroy(){!this._platform.isBrowser||(document.removeEventListener("keydown",this._onKeydown,Eg),document.removeEventListener("mousedown",this._onMousedown,Eg),document.removeEventListener("touchstart",this._onTouchstart,Eg))}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu),Ci(Yu),Ci(xg,8))},token:t,providedIn:"root"}),t})();const Og=new oi("liveAnnouncerElement",{providedIn:"root",factory:function(){return null}}),Tg=new oi("LIVE_ANNOUNCER_DEFAULT_OPTIONS");let kg=(()=>{class t{constructor(t,e,n,i){this._ngZone=e,this._defaultOptions=i,this._document=n,this._liveElement=t||this._createLiveElement()}announce(t,...e){const n=this._defaultOptions;let i,r;return 1===e.length&&"number"==typeof e[0]?r=e[0]:[i,r]=e,this.clear(),clearTimeout(this._previousTimeout),i||(i=n&&n.politeness?n.politeness:"polite"),null==r&&n&&(r=n.duration),this._liveElement.setAttribute("aria-live",i),this._ngZone.runOutsideAngular(()=>new Promise(e=>{clearTimeout(this._previousTimeout),this._previousTimeout=setTimeout(()=>{this._liveElement.textContent=t,e(),"number"==typeof r&&(this._previousTimeout=setTimeout(()=>this.clear(),r))},100)}))}clear(){this._liveElement&&(this._liveElement.textContent="")}ngOnDestroy(){clearTimeout(this._previousTimeout),this._liveElement&&this._liveElement.parentNode&&(this._liveElement.parentNode.removeChild(this._liveElement),this._liveElement=null)}_createLiveElement(){const t="cdk-live-announcer-element",e=this._document.getElementsByClassName(t),n=this._document.createElement("div");for(let i=0;i{class t{constructor(t,e,n,i,r){this._ngZone=t,this._platform=e,this._inputModalityDetector=n,this._origin=null,this._windowFocused=!1,this._originFromTouchInteraction=!1,this._elementInfo=new Map,this._monitoredElementCount=0,this._rootNodeFocusListenerCount=new Map,this._windowFocusListener=()=>{this._windowFocused=!0,this._windowFocusTimeoutId=setTimeout(()=>this._windowFocused=!1)},this._stopInputModalityDetector=new P,this._rootNodeFocusAndBlurListener=t=>{const e=Ep(t),n="focus"===t.type?this._onFocus:this._onBlur;for(let i=e;i;i=i.parentElement)n.call(this,t,i)},this._document=i,this._detectionMode=(null==r?void 0:r.detectionMode)||0}monitor(t,e=!1){const n=_d(t);if(!this._platform.isBrowser||1!==n.nodeType)return wd(null);const i=xp(n)||this._getDocument(),r=this._elementInfo.get(n);if(r)return e&&(r.checkChildren=!0),r.subject;const s={checkChildren:e,subject:new P,rootNode:i};return this._elementInfo.set(n,s),this._registerGlobalListeners(s),s.subject}stopMonitoring(t){const e=_d(t),n=this._elementInfo.get(e);n&&(n.subject.complete(),this._setClasses(e),this._elementInfo.delete(e),this._removeGlobalListeners(n))}focusVia(t,e,n){const i=_d(t);i===this._getDocument().activeElement?this._getClosestElementsInfo(i).forEach(([t,n])=>this._originChanged(t,e,n)):(this._setOrigin(e),"function"==typeof i.focus&&i.focus(n))}ngOnDestroy(){this._elementInfo.forEach((t,e)=>this.stopMonitoring(e))}_getDocument(){return this._document||document}_getWindow(){return this._getDocument().defaultView||window}_toggleClass(t,e,n){n?t.classList.add(e):t.classList.remove(e)}_getFocusOrigin(t){return this._origin?this._originFromTouchInteraction?this._shouldBeAttributedToTouch(t)?"touch":"program":this._origin:this._windowFocused&&this._lastFocusOrigin?this._lastFocusOrigin:"program"}_shouldBeAttributedToTouch(t){return 1===this._detectionMode||!!(null==t?void 0:t.contains(this._inputModalityDetector._mostRecentTarget))}_setClasses(t,e){this._toggleClass(t,"cdk-focused",!!e),this._toggleClass(t,"cdk-touch-focused","touch"===e),this._toggleClass(t,"cdk-keyboard-focused","keyboard"===e),this._toggleClass(t,"cdk-mouse-focused","mouse"===e),this._toggleClass(t,"cdk-program-focused","program"===e)}_setOrigin(t,e=!1){this._ngZone.runOutsideAngular(()=>{this._origin=t,this._originFromTouchInteraction="touch"===t&&e,0===this._detectionMode&&(clearTimeout(this._originTimeoutId),this._originTimeoutId=setTimeout(()=>this._origin=null,this._originFromTouchInteraction?650:1))})}_onFocus(t,e){const n=this._elementInfo.get(e),i=Ep(t);!n||!n.checkChildren&&e!==i||this._originChanged(e,this._getFocusOrigin(i),n)}_onBlur(t,e){const n=this._elementInfo.get(e);!n||n.checkChildren&&t.relatedTarget instanceof Node&&e.contains(t.relatedTarget)||(this._setClasses(e),this._emitOrigin(n.subject,null))}_emitOrigin(t,e){this._ngZone.run(()=>t.next(e))}_registerGlobalListeners(t){if(!this._platform.isBrowser)return;const e=t.rootNode,n=this._rootNodeFocusListenerCount.get(e)||0;n||this._ngZone.runOutsideAngular(()=>{e.addEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.addEventListener("blur",this._rootNodeFocusAndBlurListener,Pg)}),this._rootNodeFocusListenerCount.set(e,n+1),1==++this._monitoredElementCount&&(this._ngZone.runOutsideAngular(()=>{this._getWindow().addEventListener("focus",this._windowFocusListener)}),this._inputModalityDetector.modalityDetected.pipe(Wd(this._stopInputModalityDetector)).subscribe(t=>{this._setOrigin(t,!0)}))}_removeGlobalListeners(t){const e=t.rootNode;if(this._rootNodeFocusListenerCount.has(e)){const t=this._rootNodeFocusListenerCount.get(e);t>1?this._rootNodeFocusListenerCount.set(e,t-1):(e.removeEventListener("focus",this._rootNodeFocusAndBlurListener,Pg),e.removeEventListener("blur",this._rootNodeFocusAndBlurListener,Pg),this._rootNodeFocusListenerCount.delete(e))}--this._monitoredElementCount||(this._getWindow().removeEventListener("focus",this._windowFocusListener),this._stopInputModalityDetector.next(),clearTimeout(this._windowFocusTimeoutId),clearTimeout(this._originTimeoutId))}_originChanged(t,e,n){this._setClasses(t,e),this._emitOrigin(n.subject,e),this._lastFocusOrigin=e}_getClosestElementsInfo(t){const e=[];return this._elementInfo.forEach((n,i)=>{(i===t||n.checkChildren&&i.contains(t))&&e.push([i,n])}),e}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(xu),Ci(pp),Ci(Cg),Ci(Yu,8),Ci(Ag,8))},token:t,providedIn:"root"}),t})();const Ig="cdk-high-contrast-black-on-white",Dg="cdk-high-contrast-white-on-black",Rg="cdk-high-contrast-active";let Ng=(()=>{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._hasCheckedHighContrastMode&&this._platform.isBrowser&&this._document.body){const t=this._document.body.classList;t.remove(Rg),t.remove(Ig),t.remove(Dg),this._hasCheckedHighContrastMode=!0;const e=this.getHighContrastMode();1===e?(t.add(Rg),t.add(Ig)):2===e&&(t.add(Rg),t.add(Dg))}}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp),Ci(Yu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(Yu))},token:t,providedIn:"root"}),t})(),Lg=(()=>{class t{constructor(t){t._applyBodyHighContrastModeCssClasses()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp,ig]]}),t})();const jg=new Rl("12.2.5");class Fg{}const Bg="*";function Vg(t,e){return{type:7,name:t,definitions:e,options:{}}}function zg(t,e=null){return{type:4,styles:e,timings:t}}function Ug(t,e=null){return{type:2,steps:t,options:e}}function Hg(t){return{type:6,styles:t,offset:null}}function $g(t,e,n){return{type:0,name:t,styles:e,options:n}}function Gg(t){return{type:5,steps:t}}function Wg(t,e,n=null){return{type:1,expr:t,animation:e,options:n}}function qg(t=null){return{type:9,options:t}}function Xg(t,e,n=null){return{type:11,selector:t,animation:e,options:n}}function Yg(t){Promise.resolve(null).then(t)}class Kg{constructor(t=0,e=0){this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this._started=!1,this._destroyed=!1,this._finished=!1,this._position=0,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(){Yg(()=>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(){this._started=!1}setPosition(t){this._position=this.totalTime?t*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class Qg{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 r=this.players.length;0==r?Yg(()=>this._onFinish()):this.players.forEach(t=>{t.onDone(()=>{++e==r&&this._onFinish()}),t.onDestroy(()=>{++n==r&&this._onDestroy()}),t.onStart(()=>{++i==r&&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(){const t=this.players.reduce((t,e)=>null===t||e.totalTime>t.totalTime?e:t,null);return null!=t?t.getPosition():0}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 Zg(){return"undefined"!=typeof window&&void 0!==window.document}function Jg(){return"undefined"!=typeof process&&"[object process]"==={}.toString.call(process)}function tm(t){switch(t.length){case 0:return new Kg;case 1:return t[0];default:return new Qg(t)}}function em(t,e,n,i,r={},s={}){const o=[],a=[];let l=-1,c=null;if(i.forEach(t=>{const n=t.offset,i=n==l,u=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=r[n];break;case Bg:a=s[n];break;default:a=e.normalizeStyleValue(n,i,a,o)}u[i]=a}),i||a.push(u),c=u,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 nm(t,e,n,i){switch(e){case"start":t.onStart(()=>i(n&&im(n,"start",t)));break;case"done":t.onDone(()=>i(n&&im(n,"done",t)));break;case"destroy":t.onDestroy(()=>i(n&&im(n,"destroy",t)))}}function im(t,e,n){const i=n.totalTime,r=rm(t.element,t.triggerName,t.fromState,t.toState,e||t.phaseName,null==i?t.totalTime:i,!!n.disabled),s=t._data;return null!=s&&(r._data=s),r}function rm(t,e,n,i,r="",s=0,o){return{element:t,triggerName:e,fromState:n,toState:i,phaseName:r,totalTime:s,disabled:!!o}}function sm(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 om(t){const e=t.indexOf(":");return[t.substring(1,e),t.substr(e+1)]}let am=(t,e)=>!1,lm=(t,e)=>!1,cm=(t,e,n)=>[];const um=Jg();(um||"undefined"!=typeof Element)&&(am=Zg()?(t,e)=>{for(;e&&e!==document.documentElement;){if(e===t)return!0;e=e.parentNode||e.host}return!1}:(t,e)=>t.contains(e),lm=(()=>{if(um||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]):lm}})(),cm=(t,e,n)=>{let i=[];if(n){const n=t.querySelectorAll(e);for(let t=0;t{const i=n.replace(/([a-z])([A-Z])/g,"$1-$2");e[i]=t[n]}),e}let ym=(()=>{class t{validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return n||""}animate(t,e,n,i,r,s=[],o){return new Kg(n,i)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class vm{}vm.NOOP=new ym;const _m="ng-enter",wm="ng-leave",xm="ng-trigger",Sm=".ng-trigger",Em="ng-animating",Cm=".ng-animating";function Om(t){if("number"==typeof t)return t;const e=t.match(/^(-?[\.\d]+)(m?s)/);return!e||e.length<2?0:Tm(parseFloat(e[1]),e[2])}function Tm(t,e){switch(e){case"s":return 1e3*t;default:return t}}function km(t,e,n){return t.hasOwnProperty("duration")?t:function(t,e,n){let i,r=0,s="";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=Tm(parseFloat(n[1]),n[2]);const o=n[3];null!=o&&(r=Tm(parseFloat(o),n[4]));const a=n[5];a&&(s=a)}else i=t;if(!n){let n=!1,s=e.length;i<0&&(e.push("Duration values below 0 are not allowed for this animation step."),n=!0),r<0&&(e.push("Delay values below 0 are not allowed for this animation step."),n=!0),n&&e.splice(s,0,`The provided timing value "${t}" is invalid.`)}return{duration:i,delay:r,easing:s}}(t,e,n)}function Am(t,e={}){return Object.keys(t).forEach(n=>{e[n]=t[n]}),e}function Pm(t,e,n={}){if(e)for(let i in t)n[i]=t[i];else Am(t,n);return n}function Mm(t,e,n){return n?e+":"+n+";":""}function Im(t){let e="";for(let n=0;n{const r=zm(i);n&&!n.hasOwnProperty(i)&&(n[i]=t.style[r]),t.style[r]=e[i]}),Jg()&&Im(t))}function Rm(t,e){t.style&&(Object.keys(e).forEach(e=>{const n=zm(e);t.style[n]=""}),Jg()&&Im(t))}function Nm(t){return Array.isArray(t)?1==t.length?t[0]:Ug(t):t}const Lm=new RegExp("{{\\s*(.+?)\\s*}}","g");function jm(t){let e=[];if("string"==typeof t){let n;for(;n=Lm.exec(t);)e.push(n[1]);Lm.lastIndex=0}return e}function Fm(t,e,n){const i=t.toString(),r=i.replace(Lm,(t,i)=>{let r=e[i];return e.hasOwnProperty(i)||(n.push(`Please provide a value for the animation param ${i}`),r=""),r.toString()});return r==i?t:r}function Bm(t){const e=[];let n=t.next();for(;!n.done;)e.push(n.value),n=t.next();return e}const Vm=/-+([a-z0-9])/g;function zm(t){return t.replace(Vm,(...t)=>t[1].toUpperCase())}function Um(t){return t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function Hm(t,e){return 0===t||0===e}function $m(t,e,n){const i=Object.keys(n);if(i.length&&e.length){let s=e[0],o=[];if(i.forEach(t=>{s.hasOwnProperty(t)||o.push(t),s[t]=n[t]}),o.length)for(var r=1;rfunction(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 r=i[1],s=i[2],o=i[3];e.push(Km(r,o));"<"==s[0]&&!("*"==r&&"*"==o)&&e.push(Km(o,r))}(t,n,e)):n.push(t),n}const Xm=new Set(["true","1"]),Ym=new Set(["false","0"]);function Km(t,e){const n=Xm.has(t)||Ym.has(t),i=Xm.has(e)||Ym.has(e);return(r,s)=>{let o="*"==t||t==r,a="*"==e||e==s;return!o&&n&&"boolean"==typeof r&&(o=r?Xm.has(t):Ym.has(t)),!a&&i&&"boolean"==typeof s&&(a=s?Xm.has(e):Ym.has(e)),o&&a}}const Qm=new RegExp("s*:selfs*,?","g");function Zm(t,e,n){return new Jm(t).build(e,n)}class Jm{constructor(t){this._driver=t}build(t,e){const n=new tb(e);return this._resetContextStyleTimingState(n),Gm(this,Nm(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 r=[],s=[];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,r.push(this.visitState(n,e))}),n.name=i}else if(1==t.type){const r=this.visitTransition(t,e);n+=r.queryCount,i+=r.depCount,s.push(r)}else e.errors.push("only state() and transition() definitions can sit inside of a trigger()")}),{type:7,name:t.name,states:r,transitions:s,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 r=new Set,s=i||{};if(n.styles.forEach(t=>{if(eb(t)){const e=t;Object.keys(e).forEach(t=>{jm(e[t]).forEach(t=>{s.hasOwnProperty(t)||r.add(t)})})}}),r.size){const n=Bm(r.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=Gm(this,Nm(t.animation),e);return{type:1,matchers:qm(t.expr,e.errors),animation:n,queryCount:e.queryCount,depCount:e.depCount,options:nb(t.options)}}visitSequence(t,e){return{type:2,steps:t.steps.map(t=>Gm(this,t,e)),options:nb(t.options)}}visitGroup(t,e){const n=e.currentTime;let i=0;const r=t.steps.map(t=>{e.currentTime=n;const r=Gm(this,t,e);return i=Math.max(i,e.currentTime),r});return e.currentTime=i,{type:3,steps:r,options:nb(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 ib(km(t,e).duration,0,"");const i=t;if(i.split(/\s+/).some(t=>"{"==t.charAt(0)&&"{"==t.charAt(1))){const t=ib(0,0,"");return t.dynamic=!0,t.strValue=i,t}return n=n||km(i,e),ib(n.duration,n.delay,n.easing)}(t.timings,e.errors);e.currentAnimateTimings=n;let i,r=t.styles?t.styles:Hg({});if(5==r.type)i=this.visitKeyframes(r,e);else{let r=t.styles,s=!1;if(!r){s=!0;const t={};n.easing&&(t.easing=n.easing),r=Hg(t)}e.currentTime+=n.duration+n.delay;const o=this.visitStyle(r,e);o.isEmptyStep=s,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==Bg?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,r=null;return n.forEach(t=>{if(eb(t)){const e=t,n=e.easing;if(n&&(r=n,delete e.easing),!i)for(let t in e)if(e[t].toString().indexOf("{{")>=0){i=!0;break}}}),{type:6,styles:n,easing:r,offset:t.offset,containsDynamicStyles:i,options:null}}_validateStyleAst(t,e){const n=e.currentAnimateTimings;let i=e.currentTime,r=e.currentTime;n&&r>0&&(r-=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 s=e.collectedStyles[e.currentQuerySelector],o=s[n];let a=!0;o&&(r!=i&&r>=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 "${r}ms" and "${i}ms"`),a=!1),r=o.startTime),a&&(s[n]={startTime:r,endTime:i}),e.options&&function(t,e,n){const i=e.params||{},r=jm(t);r.length&&r.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 r=[];let s=!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(eb(t)&&t.hasOwnProperty("offset")){const n=t;e=parseFloat(n.offset),delete n.offset}});else if(eb(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,s=s||c0&&i{const s=u>0?i==h?1:u*i:r[i],o=s*f;e.currentTime=d+p.delay+o,p.duration=o,this._validateStyleAst(t,e),t.offset=s,n.styles.push(t)}),n}visitReference(t,e){return{type:8,animation:Gm(this,Nm(t.animation),e),options:nb(t.options)}}visitAnimateChild(t,e){return e.depCount++,{type:9,options:nb(t.options)}}visitAnimateRef(t,e){return{type:10,animation:this.visitReference(t.animation,e),options:nb(t.options)}}visitQuery(t,e){const n=e.currentQuerySelector,i=t.options||{};e.queryCount++,e.currentQuery=t;const[r,s]=function(t){const e=!!t.split(/\s*,\s*/).find(t=>":self"==t);return e&&(t=t.replace(Qm,"")),[t=t.replace(/@\*/g,Sm).replace(/@\w+/g,t=>Sm+"-"+t.substr(1)).replace(/:animating/g,Cm),e]}(t.selector);e.currentQuerySelector=n.length?n+" "+r:r,sm(e.collectedStyles,e.currentQuerySelector,{});const o=Gm(this,Nm(t.animation),e);return e.currentQuery=null,e.currentQuerySelector=n,{type:11,selector:r,limit:i.limit||0,optional:!!i.optional,includeSelf:s,animation:o,originalSelector:t.selector,options:nb(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"}:km(t.timings,e.errors,!0);return{type:12,animation:Gm(this,Nm(t.animation),e),timings:n,options:null}}}class tb{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 eb(t){return!Array.isArray(t)&&"object"==typeof t}function nb(t){return t?(t=Am(t)).params&&(t.params=function(t){return t?Am(t):null}(t.params)):t={},t}function ib(t,e,n){return{duration:t,delay:e,easing:n}}function rb(t,e,n,i,r,s,o=null,a=!1){return{type:1,element:t,keyframes:e,preStyleProps:n,postStyleProps:i,duration:r,delay:s,totalTime:r+s,easing:o,subTimeline:a}}class sb{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 ob=new RegExp(":enter","g"),ab=new RegExp(":leave","g");function lb(t,e,n,i,r,s={},o={},a,l,c=[]){return(new cb).buildKeyframes(t,e,n,i,r,s,o,a,l,c)}class cb{buildKeyframes(t,e,n,i,r,s,o,a,l,c=[]){l=l||new sb;const u=new hb(t,e,l,i,r,c,[]);u.options=a,u.currentTimeline.setStyles([s],null,u.errors,a),Gm(this,n,u);const h=u.timelines.filter(t=>t.containsAnimation());if(h.length&&Object.keys(o).length){const t=h[h.length-1];t.allowOnlyTimelineStyles()||t.setStyles([o],null,u.errors,a)}return h.length?h.map(t=>t.buildKeyframes()):[rb(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),r=e.currentTimeline.currentTime,s=this._visitSubInstructions(n,i,i.options);r!=s&&e.transformIntoNewTimeline(s)}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 r=null!=n.duration?Om(n.duration):null,s=null!=n.delay?Om(n.delay):null;return 0!==r&&t.forEach(t=>{const n=e.appendInstructionToTimeline(t,r,s);i=Math.max(i,n.duration+n.delay)}),i}visitReference(t,e){e.updateOptions(t.options,!0),Gm(this,t.animation,e),e.previousNode=t}visitSequence(t,e){const n=e.subContextCount;let i=e;const r=t.options;if(r&&(r.params||r.delay)&&(i=e.createSubContext(r),i.transformIntoNewTimeline(),null!=r.delay)){6==i.previousNode.type&&(i.currentTimeline.snapshotCurrentStyles(),i.previousNode=ub);const t=Om(r.delay);i.delayNextStep(t)}t.steps.length&&(t.steps.forEach(t=>Gm(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 r=t.options&&t.options.delay?Om(t.options.delay):0;t.steps.forEach(s=>{const o=e.createSubContext(t.options);r&&o.delayNextStep(r),Gm(this,s,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 km(e.params?Fm(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 r=t.style;5==r.type?this.visitKeyframes(r,e):(e.incrementTime(n.duration),this.visitStyle(r,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 r=i&&i.easing||t.easing;t.isEmptyStep?n.applyEmptyStep(r):n.setStyles(t.styles,r,e.errors,e.options),e.previousNode=t}visitKeyframes(t,e){const n=e.currentAnimateTimings,i=e.currentTimeline.duration,r=n.duration,s=e.createSubContext().currentTimeline;s.easing=n.easing,t.styles.forEach(t=>{s.forwardTime((t.offset||0)*r),s.setStyles(t.styles,t.easing,e.errors,e.options),s.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(s),e.transformIntoNewTimeline(i+r),e.previousNode=t}visitQuery(t,e){const n=e.currentTimeline.currentTime,i=t.options||{},r=i.delay?Om(i.delay):0;r&&(6===e.previousNode.type||0==n&&e.currentTimeline.getCurrentStyleProperties().length)&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=ub);let s=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);r&&o.delayNextStep(r),n===e.element&&(a=o.currentTimeline),Gm(this,t.animation,o),o.currentTimeline.applyStylesToKeyframe(),s=Math.max(s,o.currentTimeline.currentTime)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),a&&(e.currentTimeline.mergeTimelineCollectedStyles(a),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=t}visitStagger(t,e){const n=e.parentContext,i=e.currentTimeline,r=t.timings,s=Math.abs(r.duration),o=s*(e.currentQueryTotal-1);let a=s*e.currentQueryIndex;switch(r.duration<0?"reverse":r.easing){case"reverse":a=o-a;break;case"full":a=n.currentStaggerTime}const l=e.currentTimeline;a&&l.delayNextStep(a);const c=l.currentTime;Gm(this,t.animation,e),e.previousNode=t,n.currentStaggerTime=i.currentTime-c+(i.startTime-n.currentTimeline.startTime)}}const ub={};class hb{constructor(t,e,n,i,r,s,o,a){this._driver=t,this.element=e,this.subInstructions=n,this._enterClassName=i,this._leaveClassName=r,this.errors=s,this.timelines=o,this.parentContext=null,this.currentAnimateTimings=null,this.previousNode=ub,this.subContextCount=0,this.options={},this.currentQueryIndex=0,this.currentQueryTotal=0,this.currentStaggerTime=0,this.currentTimeline=a||new db(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=Om(n.duration)),null!=n.delay&&(i.delay=Om(n.delay));const r=n.params;if(r){let t=i.params;t||(t=this.options.params={}),Object.keys(r).forEach(n=>{(!e||!t.hasOwnProperty(n))&&(t[n]=Fm(r[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,r=new hb(this._driver,i,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(i,n||0));return r.previousNode=this.previousNode,r.currentAnimateTimings=this.currentAnimateTimings,r.options=this._copyOptions(),r.updateOptions(t),r.currentQueryIndex=this.currentQueryIndex,r.currentQueryTotal=this.currentQueryTotal,r.parentContext=this,this.subContextCount++,r}transformIntoNewTimeline(t){return this.previousNode=ub,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:""},r=new pb(this._driver,t.element,t.keyframes,t.preStyleProps,t.postStyleProps,i,t.stretchStartingKeyframe);return this.timelines.push(r),i}incrementTime(t){this.currentTimeline.forwardTime(this.currentTimeline.duration+t)}delayNextStep(t){t>0&&this.currentTimeline.delayNextStep(t)}invokeQuery(t,e,n,i,r,s){let o=[];if(i&&o.push(this.element),t.length>0){t=(t=t.replace(ob,"."+this._enterClassName)).replace(ab,"."+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!r&&0==o.length&&s.push(`\`query("${e}")\` returned zero elements. (Use \`query("${e}", { optional: true })\` if you wish to allow this.)`),o}}class db{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 db(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]||Bg,this._currentKeyframe[t]=Bg}),this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(t,e,n,i){e&&(this._previousKeyframe.easing=e);const r=i&&i.params||{},s=function(t,e){const n={};let i;return t.forEach(t=>{"*"===t?(i=i||Object.keys(e),i.forEach(t=>{n[t]=Bg})):Pm(t,!1,n)}),n}(t,this._globalTimelineStyles);Object.keys(s).forEach(t=>{const e=Fm(s[t],r,n);this._pendingStyles[t]=e,this._localTimelineStyles.hasOwnProperty(t)||(this._backFill[t]=this._globalTimelineStyles.hasOwnProperty(t)?this._globalTimelineStyles[t]:Bg),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((r,s)=>{const o=Pm(r,!0);Object.keys(o).forEach(n=>{const i=o[n];"!"==i?t.add(n):i==Bg&&e.add(n)}),n||(o.offset=s/this.duration),i.push(o)});const r=t.size?Bm(t.values()):[],s=e.size?Bm(e.values()):[];if(n){const t=i[0],e=Am(t);t.offset=0,e.offset=1,i=[t,e]}return rb(this.element,i,r,s,this.duration,this.startTime,this.easing,!1)}}class pb extends db{constructor(t,e,n,i,r,s,o=!1){super(t,e,s.delay),this.keyframes=n,this.preStyleProps=i,this.postStyleProps=r,this._stretchStartingKeyframe=o,this.timings={duration:s.duration,delay:s.delay,easing:s.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 r=[],s=n+e,o=e/s,a=Pm(t[0],!1);a.offset=0,r.push(a);const l=Pm(t[0],!1);l.offset=fb(o),r.push(l);const c=t.length-1;for(let i=1;i<=c;i++){let o=Pm(t[i],!1);o.offset=fb((e+o.offset*n)/s),r.push(o)}n=s,e=0,i="",t=r}return rb(this.element,t,this.preStyleProps,this.postStyleProps,n,e,i,!0)}}function fb(t,e=3){const n=Math.pow(10,e-1);return Math.round(t*n)/n}class gb{}class mb extends gb{normalizePropertyName(t,e){return zm(t)}normalizeStyleValue(t,e,n,i){let r="";const s=n.toString().trim();if(bb[e]&&0!==n&&"0"!==n)if("number"==typeof n)r="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 s+r}}const bb=(()=>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 yb(t,e,n,i,r,s,o,a,l,c,u,h,d){return{type:0,element:t,triggerName:e,isRemovalTransition:r,fromState:n,fromStyles:s,toState:i,toStyles:o,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:h,errors:d}}const vb={};class _b{constructor(t,e,n){this._triggerName=t,this.ast=e,this._stateStyles=n}match(t,e,n,i){return function(t,e,n,i,r){return t.some(t=>t(e,n,i,r))}(this.ast.matchers,t,e,n,i)}buildStyles(t,e,n){const i=this._stateStyles["*"],r=this._stateStyles[t],s=i?i.buildStyles(e,n):{};return r?r.buildStyles(e,n):s}build(t,e,n,i,r,s,o,a,l,c){const u=[],h=this.ast.options&&this.ast.options.params||vb,d=this.buildStyles(n,o&&o.params||vb,u),p=a&&a.params||vb,f=this.buildStyles(i,p,u),g=new Set,m=new Map,b=new Map,y="void"===i,v={params:Object.assign(Object.assign({},h),p)},_=c?[]:lb(t,e,this.ast.animation,r,s,d,f,v,l,u);let w=0;if(_.forEach(t=>{w=Math.max(t.duration+t.delay,w)}),u.length)return yb(e,this._triggerName,n,i,y,d,f,[],[],m,b,w,u);_.forEach(t=>{const n=t.element,i=sm(m,n,{});t.preStyleProps.forEach(t=>i[t]=!0);const r=sm(b,n,{});t.postStyleProps.forEach(t=>r[t]=!0),n!==e&&g.add(n)});const x=Bm(g.values());return yb(e,this._triggerName,n,i,y,d,f,_,x,m,b,w)}}class wb{constructor(t,e,n){this.styles=t,this.defaultParams=e,this.normalizer=n}buildStyles(t,e){const n={},i=Am(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 r=t;Object.keys(r).forEach(t=>{let s=r[t];s.length>1&&(s=Fm(s,i,e));const o=this.normalizer.normalizePropertyName(t,e);s=this.normalizer.normalizeStyleValue(t,o,s,e),n[o]=s})}}),n}}class xb{constructor(t,e,n){this.name=t,this.ast=e,this._normalizer=n,this.transitionFactories=[],this.states={},e.states.forEach(t=>{this.states[t.name]=new wb(t.style,t.options&&t.options.params||{},n)}),Sb(this.states,"true","1"),Sb(this.states,"false","0"),e.transitions.forEach(e=>{this.transitionFactories.push(new _b(t,e,this.states))}),this.fallbackTransition=function(t,e,n){return new _b(t,{type:1,animation:{type:2,steps:[],options:null},matchers:[(t,e)=>!0],options:null,queryCount:0,depCount:0},e)}(t,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(t,e,n,i){return this.transitionFactories.find(r=>r.match(t,e,n,i))||null}matchStyles(t,e,n){return this.fallbackTransition.buildStyles(t,e,n)}}function Sb(t,e,n){t.hasOwnProperty(e)?t.hasOwnProperty(n)||(t[n]=t[e]):t.hasOwnProperty(n)&&(t[e]=t[n])}const Eb=new sb;class Cb{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=Zm(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,r=em(0,this._normalizer,0,t.keyframes,e,n);return this._driver.animate(i,r,t.duration,t.delay,t.easing,[],!0)}create(t,e,n={}){const i=[],r=this._animations[t];let s;const o=new Map;if(r?(s=lb(this._driver,e,r,_m,wm,{},{},n,Eb,i),s.forEach(t=>{const e=sm(o,t.element,{});t.postStyleProps.forEach(t=>e[t]=null)})):(i.push("The requested animation doesn't exist or has already been destroyed"),s=[]),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,Bg)})});const a=tm(s.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 r=rm(e,"","","");return nm(this._getPlayer(t),n,r,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 r=this._getPlayer(t);switch(n){case"play":r.play();break;case"pause":r.pause();break;case"reset":r.reset();break;case"restart":r.restart();break;case"finish":r.finish();break;case"init":r.init();break;case"setPosition":r.setPosition(parseFloat(i[0]));break;case"destroy":this.destroy(t)}}}const Ob="ng-animate-queued",Tb="ng-animate-disabled",kb=".ng-animate-disabled",Ab=[],Pb={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Mb={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},Ib="__ng_removed";class Db{constructor(t,e=""){this.namespaceId=e;const n=t&&t.hasOwnProperty("value");if(this.value=function(t){return null!=t?t:null}(n?t.value:t),n){const e=Am(t);delete e.value,this.options=e}else this.options={};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 Rb="void",Nb=new Db(Rb);class Lb{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,$b(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(!function(t){return"start"==t||"done"==t}(n))throw new Error(`The provided animation trigger event "${n}" for the animation trigger "${e}" is not supported!`);const r=sm(this._elementListeners,t,[]),s={name:e,phase:n,callback:i};r.push(s);const o=sm(this._engine.statesByElement,t,{});return o.hasOwnProperty(e)||($b(t,xm),$b(t,xm+"-"+e),o[e]=Nb),()=>{this._engine.afterFlush(()=>{const t=r.indexOf(s);t>=0&&r.splice(t,1),this._triggers[e]||delete o[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 r=this._getTrigger(e),s=new Fb(this.id,e,t);let o=this._engine.statesByElement.get(t);o||($b(t,xm),$b(t,xm+"-"+e),this._engine.statesByElement.set(t,o={}));let a=o[e];const l=new Db(n,this.id);if(!(n&&n.hasOwnProperty("value"))&&a&&l.absorbOptions(a.options),o[e]=l,a||(a=Nb),l.value!==Rb&&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 r=0;r{Rm(t,n),Dm(t,i)})}return}const c=sm(this._engine.playersByElement,t,[]);c.forEach(t=>{t.namespaceId==this.id&&t.triggerName==e&&t.queued&&t.destroy()});let u=r.matchTransition(a.value,l.value,t,l.params),h=!1;if(!u){if(!i)return;u=r.fallbackTransition,h=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:e,transition:u,fromState:a,toState:l,player:s,isFallbackTransition:h}),h||($b(t,Ob),s.onStart(()=>{Gb(t,Ob)})),s.onDone(()=>{let e=this.players.indexOf(s);e>=0&&this.players.splice(e,1);const n=this._engine.playersByElement.get(t);if(n){let t=n.indexOf(s);t>=0&&n.splice(t,1)}}),this.players.push(s),c.push(s),s}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,Sm,!0);n.forEach(t=>{if(t[Ib])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 r=this._engine.statesByElement.get(t);if(r){const s=[];if(Object.keys(r).forEach(e=>{if(this._triggers[e]){const n=this.trigger(t,e,Rb,i);n&&s.push(n)}}),s.length)return this._engine.markElementAsRemoved(this.id,t,!0,e),n&&tm(s).onDone(()=>this._engine.processLeaveNode(t)),!0}return!1}prepareLeaveAnimationListeners(t){const e=this._elementListeners.get(t),n=this._engine.statesByElement.get(t);if(e&&n){const i=new Set;e.forEach(e=>{const r=e.name;if(i.has(r))return;i.add(r);const s=this._triggers[r].fallbackTransition,o=n[r]||Nb,a=new Db(Rb),l=new Fb(this.id,r,t);this._engine.totalQueuedPlayers++,this._queue.push({element:t,triggerName:r,transition:s,fromState:o,toState:a,player:l,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[Ib];(!i||i===Pb)&&(n.afterFlush(()=>this.clearElementCache(t)),n.destroyInnerAnimations(t),n._onRemovalComplete(t,e))}}insertNode(t,e){$b(t,this._hostClassName)}drainQueuedTransitions(t){const e=[];return this._queue.forEach(n=>{const i=n.player;if(i.destroyed)return;const r=n.element,s=this._elementListeners.get(r);s&&s.forEach(e=>{if(e.name==n.triggerName){const i=rm(r,n.triggerName,n.fromState.value,n.toState.value);i._data=t,nm(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 jb{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 Lb(t,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?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 r=n;r>=0;r--)if(this.driver.containsElement(this._namespaceList[r].hostElement,e)){this._namespaceList.splice(r+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),$b(t,Tb)):this.disabledNodes.has(t)&&(this.disabledNodes.delete(t),Gb(t,Tb))}removeNode(t,e,n,i){if(Bb(e)){const r=t?this._fetchNamespace(t):null;if(r?r.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[Ib]={namespaceId:t,setForRemoval:i,hasAnimation:n,removedBeforeQueried:!1}}listen(t,e,n,i,r){return Bb(e)?this._fetchNamespace(t).listen(e,n,i,r):()=>{}}_buildInstruction(t,e,n,i,r){return t.transition.build(this.driver,t.element,t.fromState.value,t.toState.value,n,i,t.fromState.options,t.toState.options,e,r)}destroyInnerAnimations(t){let e=this.driver.query(t,Sm,!0);e.forEach(t=>this.destroyActiveAnimationsForElement(t)),0!=this.playersByQueriedElement.size&&(e=this.driver.query(t,Cm,!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 tm(this.players).onDone(()=>t());t()})}processLeaveNode(t){const e=t[Ib];if(e&&e.setForRemoval){if(t[Ib]=Pb,e.namespaceId){this.destroyInnerAnimations(t);const n=this._fetchNamespace(e.namespaceId);n&&n.clearElementCache(t)}this._onRemovalComplete(t,e.setForRemoval)}this.driver.matchesElement(t,kb)&&this.markElementAsDisabled(t,!1),this.driver.query(t,kb,!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?tm(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 sb,i=[],r=new Map,s=[],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=_m+f++;p.set(e,n),t.forEach(t=>$b(t,n))});const g=[],m=new Set,b=new Set;for(let P=0;Pm.add(t)):b.add(t))}const y=new Map,v=Ub(h,Array.from(m));v.forEach((t,e)=>{const n=wm+f++;y.set(e,n),t.forEach(t=>$b(t,n))}),t.push(()=>{d.forEach((t,e)=>{const n=p.get(e);t.forEach(t=>Gb(t,n))}),v.forEach((t,e)=>{const n=y.get(e);t.forEach(t=>Gb(t,n))}),g.forEach(t=>{this.processLeaveNode(t)})});const _=[],w=[];for(let P=this._namespaceList.length-1;P>=0;P--)this._namespaceList[P].drainQueuedTransitions(e).forEach(t=>{const e=t.player,r=t.element;if(_.push(e),this.collectedEnterElements.length){const t=r[Ib];if(t&&t.setForMove)return void e.destroy()}const c=!u||!this.driver.containsElement(u,r),h=y.get(r),d=p.get(r),f=this._buildInstruction(t,n,d,h,c);if(f.errors&&f.errors.length)w.push(f);else{if(c)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);if(t.isFallbackTransition)return e.onStart(()=>Rm(r,f.fromStyles)),e.onDestroy(()=>Dm(r,f.toStyles)),void i.push(e);f.timelines.forEach(t=>t.stretchStartingKeyframe=!0),n.append(r,f.timelines),s.push({instruction:f,player:e,element:r}),f.queriedElements.forEach(t=>sm(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`))}),_.forEach(t=>t.destroy()),this.reportError(t)}const x=new Map,S=new Map;s.forEach(t=>{const e=t.element;n.has(e)&&(S.set(e,e),this._beforeAnimationBuild(t.player.namespaceId,t.instruction,x))}),i.forEach(t=>{const e=t.element;this._getPreviousPlayers(e,!1,t.namespaceId,t.triggerName,null).forEach(t=>{sm(x,e,[]).push(t),t.destroy()})});const E=g.filter(t=>Xb(t,a,l)),C=new Map;zb(C,this.driver,b,l,Bg).forEach(t=>{Xb(t,a,l)&&E.push(t)});const O=new Map;d.forEach((t,e)=>{zb(O,this.driver,new Set(t),a,"!")}),E.forEach(t=>{const e=C.get(t),n=O.get(t);C.set(t,Object.assign(Object.assign({},e),n))});const T=[],k=[],A={};s.forEach(t=>{const{element:e,player:s,instruction:o}=t;if(n.has(e)){if(c.has(e))return s.onDestroy(()=>Dm(e,o.toStyles)),s.disabled=!0,s.overrideTotalTime(o.totalTime),void i.push(s);let t=A;if(S.size>1){let n=e;const i=[];for(;n=n.parentNode;){const e=S.get(n);if(e){t=e;break}i.push(n)}i.forEach(e=>S.set(e,t))}const n=this._buildAnimation(s.namespaceId,o,x,r,O,C);if(s.setRealPlayer(n),t===A)T.push(s);else{const e=this.playersByElement.get(t);e&&e.length&&(s.parentPlayer=tm(e)),i.push(s)}}else Rm(e,o.fromStyles),s.onDestroy(()=>Dm(e,o.toStyles)),k.push(s),c.has(e)&&i.push(s)}),k.forEach(t=>{const e=r.get(t.element);if(e&&e.length){const n=tm(e);t.setRealPlayer(n)}}),i.forEach(t=>{t.parentPlayer?t.syncPlayerEvents(t.parentPlayer):t.destroy()});for(let P=0;P!t.destroyed);i.length?Wb(this,t,i):this.processLeaveNode(t)}return g.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[Ib];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,r){let s=[];if(e){const e=this.playersByQueriedElement.get(t);e&&(s=e)}else{const e=this.playersByElement.get(t);if(e){const t=!r||r==Rb;e.forEach(e=>{e.queued||!t&&e.triggerName!=i||s.push(e)})}}return(n||i)&&(s=s.filter(t=>!(n&&n!=t.namespaceId||i&&i!=t.triggerName))),s}_beforeAnimationBuild(t,e,n){const i=e.element,r=e.isRemovalTransition?void 0:t,s=e.isRemovalTransition?void 0:e.triggerName;for(const o of e.timelines){const t=o.element,a=t!==i,l=sm(n,t,[]);this._getPreviousPlayers(t,a,r,s,e.toState).forEach(t=>{const e=t.getRealPlayer();e.beforeDestroy&&e.beforeDestroy(),t.destroy(),l.push(t)})}Rm(i,e.fromStyles)}_buildAnimation(t,e,n,i,r,s){const o=e.triggerName,a=e.element,l=[],c=new Set,u=new Set,h=e.timelines.map(e=>{const h=e.element;c.add(h);const d=h[Ib];if(d&&d.removedBeforeQueried)return new Kg(e.duration,e.delay);const p=h!==a,f=function(t){const e=[];return qb(t,e),e}((n.get(h)||Ab).map(t=>t.getRealPlayer())).filter(t=>!!t.element&&t.element===h),g=r.get(h),m=s.get(h),b=em(0,this._normalizer,0,e.keyframes,g,m),y=this._buildPlayer(e,b,f);if(e.subTimeline&&i&&u.add(h),p){const e=new Fb(t,o,h);e.setRealPlayer(y),l.push(e)}return y});l.forEach(t=>{sm(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=>$b(t,Em));const d=tm(h);return d.onDestroy(()=>{c.forEach(t=>Gb(t,Em)),Dm(a,e.toStyles)}),u.forEach(t=>{sm(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 Kg(t.duration,t.delay)}}class Fb{constructor(t,e,n){this.namespaceId=t,this.triggerName=e,this.element=n,this._player=new Kg,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=>nm(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){sm(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 Bb(t){return t&&1===t.nodeType}function Vb(t,e){const n=t.style.display;return t.style.display=null!=e?e:"none",n}function zb(t,e,n,i,r){const s=[];n.forEach(t=>s.push(Vb(t)));const o=[];i.forEach((n,i)=>{const s={};n.forEach(t=>{const n=s[t]=e.computeStyle(i,t,r);(!n||0==n.length)&&(i[Ib]=Mb,o.push(i))}),t.set(i,s)});let a=0;return n.forEach(t=>Vb(t,s[a++])),o}function Ub(t,e){const n=new Map;if(t.forEach(t=>n.set(t,[])),0==e.length)return n;const i=new Set(e),r=new Map;function s(t){if(!t)return 1;let e=r.get(t);if(e)return e;const o=t.parentNode;return e=n.has(o)?o:i.has(o)?1:s(o),r.set(t,e),e}return e.forEach(t=>{const e=s(t);1!==e&&n.get(e).push(t)}),n}const Hb="$$classes";function $b(t,e){if(t.classList)t.classList.add(e);else{let n=t[Hb];n||(n=t[Hb]={}),n[e]=!0}}function Gb(t,e){if(t.classList)t.classList.remove(e);else{let n=t[Hb];n&&delete n[e]}}function Wb(t,e,n){tm(n).onDone(()=>t.processLeaveNode(e))}function qb(t,e){for(let n=0;nr.add(t)):e.set(t,i),n.delete(t),!0}class Yb{constructor(t,e,n){this.bodyNode=t,this._driver=e,this._normalizer=n,this._triggerCache={},this.onRemovalComplete=(t,e)=>{},this._transitionEngine=new jb(t,e,n),this._timelineEngine=new Cb(t,e,n),this._transitionEngine.onRemovalComplete=(t,e)=>this.onRemovalComplete(t,e)}registerTrigger(t,e,n,i,r){const s=t+"-"+i;let o=this._triggerCache[s];if(!o){const t=[],e=Zm(this._driver,r,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,n){return new xb(t,e,n)}(i,e,this._normalizer),this._triggerCache[s]=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,r]=om(n);this._timelineEngine.command(t,e,r,i)}else this._transitionEngine.trigger(t,e,n,i)}listen(t,e,n,i,r){if("@"==n.charAt(0)){const[t,i]=om(n);return this._timelineEngine.listen(t,e,i,r)}return this._transitionEngine.listen(t,e,n,i,r)}flush(t=-1){this._transitionEngine.flush(t)}get players(){return this._transitionEngine.players.concat(this._timelineEngine.players)}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}}function Kb(t,e){let n=null,i=null;return Array.isArray(e)&&e.length?(n=Zb(e[0]),e.length>1&&(i=Zb(e[e.length-1]))):e&&(n=Zb(e)),n||i?new Qb(t,n,i):null}class Qb{constructor(t,e,n){this._element=t,this._startStyles=e,this._endStyles=n,this._state=0;let i=Qb.initialStylesByElement.get(t);i||Qb.initialStylesByElement.set(t,i={}),this._initialStyles=i}start(){this._state<1&&(this._startStyles&&Dm(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(Dm(this._element,this._initialStyles),this._endStyles&&(Dm(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(Qb.initialStylesByElement.delete(this._element),this._startStyles&&(Rm(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(Rm(this._element,this._endStyles),this._endStyles=null),Dm(this._element,this._initialStyles),this._state=3)}}function Zb(t){let e=null;const n=Object.keys(t);for(let i=0;ithis._handleCallback(t)}apply(){(function(t,e){const n=ly(t,"").trim();let i=0;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(),oy(this._element,this._eventFn,!0))}destroy(){this._destroyed||(this._destroyed=!0,this.finish(),function(t,e){const n=ly(t,"").split(","),i=sy(n,e);i>=0&&(n.splice(i,1),ay(t,"",n.join(",")))}(this._element,this._name))}}function iy(t,e,n){ay(t,"PlayState",n,ry(t,e))}function ry(t,e){const n=ly(t,"");return n.indexOf(",")>0?sy(n.split(","),e):sy([n],e)}function sy(t,e){for(let n=0;n=0)return n;return-1}function oy(t,e,n){n?t.removeEventListener(ey,e):t.addEventListener(ey,e)}function ay(t,e,n,i){const r=ty+e;if(null!=i){const e=t.style[r];if(e.length){const t=e.split(",");t[i]=n,n=t.join(",")}}t.style[r]=n}function ly(t,e){return t.style[ty+e]||""}class cy{constructor(t,e,n,i,r,s,o,a){this.element=t,this.keyframes=e,this.animationName=n,this._duration=i,this._delay=r,this._finalStyles=o,this._specialStyles=a,this._onDoneFns=[],this._onStartFns=[],this._onDestroyFns=[],this.currentSnapshot={},this._state=0,this.easing=s||"linear",this.totalTime=i+r,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._state=0,this._styler.destroy(),this._buildStyler(),this._styler.apply()}_buildStyler(){this._styler=new ny(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]:Wm(this.element,n))})}this.currentSnapshot=t}}class uy extends Kg{constructor(t,e){super(),this.element=t,this._startingStyles={},this.__initialized=!1,this._styles=bm(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 hy{constructor(){this._count=0}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}buildKeyframeElement(t,e,n){n=n.map(t=>bm(t));let i=`@keyframes ${e} {\n`,r="";n.forEach(t=>{r=" ";const e=parseFloat(t.offset);i+=`${r}${100*e}% {\n`,r+=" ",Object.keys(t).forEach(e=>{const n=t[e];switch(e){case"offset":return;case"easing":return void(n&&(i+=`${r}animation-timing-function: ${n};\n`));default:return void(i+=`${r}${e}: ${n};\n`)}}),i+=`${r}}\n`}),i+="}\n";const s=document.createElement("style");return s.textContent=i,s}animate(t,e,n,i,r,s=[],o){const a=s.filter(t=>t instanceof cy),l={};Hm(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=$m(t,e,l));if(0==n)return new uy(t,c);const u="gen_css_kf_"+this._count++,h=this.buildKeyframeElement(t,u,e);(function(t){var e;const n=null===(e=t.getRootNode)||void 0===e?void 0:e.call(t);return"undefined"!=typeof ShadowRoot&&n instanceof ShadowRoot?n:document.head})(t).appendChild(h);const d=Kb(t,e),p=new cy(t,e,u,n,i,r,c,d);return p.onDestroy(()=>function(t){t.parentNode.removeChild(t)}(h)),p}}class dy{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){void 0===this.domPlayer&&this.init(),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]:Wm(this.element,e))}),this.currentSnapshot=t}triggerCallback(t){const e="start"==t?this._onStartFns:this._onDoneFns;e.forEach(t=>t()),e.length=0}}class py{constructor(){this._isNativeImpl=/\{\s*\[native\s+code\]\s*\}/.test(fy().toString()),this._cssKeyframesDriver=new hy}validateStyleProperty(t){return pm(t)}matchesElement(t,e){return fm(t,e)}containsElement(t,e){return gm(t,e)}query(t,e,n){return mm(t,e,n)}computeStyle(t,e,n){return window.getComputedStyle(t)[e]}overrideWebAnimationsSupport(t){this._isNativeImpl=t}animate(t,e,n,i,r,s=[],o){if(!o&&!this._isNativeImpl)return this._cssKeyframesDriver.animate(t,e,n,i,r,s);const a={duration:n,delay:i,fill:0==i?"both":"forwards"};r&&(a.easing=r);const l={},c=s.filter(t=>t instanceof dy);Hm(n,i)&&c.forEach(t=>{let e=t.currentSnapshot;Object.keys(e).forEach(t=>l[t]=e[t])});const u=Kb(t,e=$m(t,e=e.map(t=>Pm(t,!1)),l));return new dy(t,e,a,u)}}function fy(){return Zg()&&Element.prototype.animate||{}}let gy=(()=>{class t extends Fg{constructor(t,e){super(),this._nextAnimationId=0,this._renderer=t.createRenderer(e.body,{id:"0",encapsulation:jt.None,styles:[],data:{animation:[]}})}build(t){const e=this._nextAnimationId.toString();this._nextAnimationId++;const n=Array.isArray(t)?Ug(t):t;return yy(this._renderer,null,e,"register",[n]),new my(e,this._renderer)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Pl),Ci(Yu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class my extends class{}{constructor(t,e){super(),this._id=t,this._renderer=e}create(t,e){return new by(this._id,t,e||{},this._renderer)}}class by{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 yy(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"),this._started=!1}setPosition(t){this._command("setPosition",t)}getPosition(){var t,e;return null!==(e=null===(t=this._renderer.engine.players[+this.id])||void 0===t?void 0:t.getPosition())&&void 0!==e?e:0}}function yy(t,e,n,i,r){return t.setProperty(e,`@@${n}:${i}`,r)}const vy="@.disabled";let _y=(()=>{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 wy("",n,this.engine),this._rendererCache.set(n,t)),t}const i=e.id,r=e.id+"-"+this._currentId;this._currentId++,this.engine.register(r,t);const s=e=>{Array.isArray(e)?e.forEach(s):this.engine.registerTrigger(i,r,t,e.name,e)};return e.data.animation.forEach(s),new xy(this,r,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)(Ci(Pl),Ci(Yb),Ci(xu))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class wy{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,i=!0){this.delegate.insertBefore(t,e,n),this.engine.onInsert(this.namespaceId,e,t,i)}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)&&e==vy?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 xy extends wy{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)&&e==vy?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 r=e.substr(1),s="";return"@"!=r.charAt(0)&&([r,s]=function(t){const e=t.indexOf(".");return[t.substring(0,e),t.substr(e+1)]}(r)),this.engine.listen(this.namespaceId,i,r,s,t=>{this.factory.scheduleListenerCallback(t._data||-1,n,t)})}return this.delegate.listen(t,e,n)}}let Sy=(()=>{class t extends Yb{constructor(t,e,n){super(t.body,e,n)}ngOnDestroy(){this.flush()}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(vm),Ci(gb))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Ey=new oi("AnimationModuleType"),Cy=[{provide:Fg,useClass:gy},{provide:gb,useFactory:function(){return new mb}},{provide:Yb,useClass:Sy},{provide:Pl,useFactory:function(t,e,n){return new _y(t,e,n)},deps:[ed,Yb,xu]}],Oy=[{provide:vm,useFactory:function(){return"function"==typeof fy()?new py:new hy}},{provide:Ey,useValue:"BrowserAnimations"},...Cy],Ty=[{provide:vm,useClass:ym},{provide:Ey,useValue:"NoopAnimations"},...Cy];let ky=(()=>{class t{static withConfig(e){return{ngModule:t,providers:e.disableAnimations?Ty:Oy}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:Oy,imports:[gd]}),t})();function Ay(t,e){if(1&t&&oa(0,"mat-pseudo-checkbox",4),2&t){const t=va();na("state",t.selected?"checked":"unchecked")("disabled",t.disabled)}}function Py(t,e){if(1&t&&(ra(0,"span",5),Za(1),sa()),2&t){const t=va();ws(1),tl("(",t.group.label,")")}}const My=["*"],Iy=new Rl("12.2.5"),Dy=new oi("mat-sanity-checks",{providedIn:"root",factory:function(){return!0}});let Ry,Ny=(()=>{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)}_getWindow(){const t=this._document.defaultView||window;return"object"==typeof t&&t?t:null}_checkIsEnabled(t){return!(!Nu()||this._isTestEnv())&&("boolean"==typeof this._sanityChecks?this._sanityChecks:!!this._sanityChecks[t])}_isTestEnv(){const t=this._getWindow();return t&&(t.__karma__||t.jasmine)}_checkDoctypeIsDefined(){this._checkIsEnabled("doctype")&&!this._document.doctype&&console.warn("Current document does not have a doctype. This may cause some Angular Material components not to behave as expected.")}_checkThemeIsPresent(){if(!this._checkIsEnabled("theme")||!this._document.body||"function"!=typeof getComputedStyle)return;const t=this._document.createElement("div");t.classList.add("mat-theme-loaded-marker"),this._document.body.appendChild(t);const e=getComputedStyle(t);e&&"none"!==e.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"),this._document.body.removeChild(t)}_checkCdkVersionMatch(){this._checkIsEnabled("version")&&Iy.full!==jg.full&&console.warn("The Angular Material version ("+Iy.full+") does not match the Angular CDK version ("+jg.full+").\nPlease ensure the versions of these two packages exactly match.")}}return t.\u0275fac=function(e){return new(e||t)(Ci(Ng),Ci(Dy,8),Ci(Yu))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Tp],Tp]}),t})();function Ly(t){return class extends t{constructor(...t){super(...t),this._disabled=!1}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}}}function jy(t,e){return class extends t{constructor(...t){super(...t),this.defaultColor=e,this.color=e}get color(){return this._color}set color(t){const e=t||this.defaultColor;e!==this._color&&(this._color&&this._elementRef.nativeElement.classList.remove(`mat-${this._color}`),e&&this._elementRef.nativeElement.classList.add(`mat-${e}`),this._color=e)}}}function Fy(t){return class extends t{constructor(...t){super(...t),this._disableRipple=!1}get disableRipple(){return this._disableRipple}set disableRipple(t){this._disableRipple=md(t)}}}function By(t,e=0){return class extends t{constructor(...t){super(...t),this._tabIndex=e,this.defaultTabIndex=e}get tabIndex(){return this.disabled?-1:this._tabIndex}set tabIndex(t){this._tabIndex=null!=t?bd(t):this.defaultTabIndex}}}function Vy(t){return class extends t{constructor(...t){super(...t),this.stateChanges=new P,this.errorState=!1}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{Ry="undefined"!=typeof Intl}catch(m){Ry=!1}let zy=(()=>{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=xt({factory:function(){return new t},token:t,providedIn:"root"}),t})();class Uy{constructor(t,e,n){this._renderer=t,this.element=e,this.config=n,this.state=3}fadeOut(){this._renderer.fadeOutRipple(this)}}const Hy={enterDuration:225,exitDuration:150},$y=_p({passive:!0}),Gy=["mousedown","touchstart"],Wy=["mouseup","mouseleave","touchend","touchcancel"];class qy{constructor(t,e,n,i){this._target=t,this._ngZone=e,this._isPointerDown=!1,this._activeRipples=new Set,this._pointerUpEventsRegistered=!1,i.isBrowser&&(this._containerElement=_d(n))}fadeInRipple(t,e,n={}){const i=this._containerRect=this._containerRect||this._containerElement.getBoundingClientRect(),r=Object.assign(Object.assign({},Hy),n.animation);n.centered&&(t=i.left+i.width/2,e=i.top+i.height/2);const s=n.radius||function(t,e,n){const i=Math.max(Math.abs(t-n.left),Math.abs(t-n.right)),r=Math.max(Math.abs(e-n.top),Math.abs(e-n.bottom));return Math.sqrt(i*i+r*r)}(t,e,i),o=t-i.left,a=e-i.top,l=r.enterDuration,c=document.createElement("div");c.classList.add("mat-ripple-element"),c.style.left=o-s+"px",c.style.top=a-s+"px",c.style.height=2*s+"px",c.style.width=2*s+"px",null!=n.color&&(c.style.backgroundColor=n.color),c.style.transitionDuration=`${l}ms`,this._containerElement.appendChild(c),function(t){window.getComputedStyle(t).getPropertyValue("opacity")}(c),c.style.transform="scale(1)";const u=new Uy(this,c,n);return u.state=0,this._activeRipples.add(u),n.persistent||(this._mostRecentTransientRipple=u),this._runTimeoutOutsideZone(()=>{const t=u===this._mostRecentTransientRipple;u.state=1,!n.persistent&&(!t||!this._isPointerDown)&&u.fadeOut()},l),u}fadeOutRipple(t){const e=this._activeRipples.delete(t);if(t===this._mostRecentTransientRipple&&(this._mostRecentTransientRipple=null),this._activeRipples.size||(this._containerRect=null),!e)return;const n=t.element,i=Object.assign(Object.assign({},Hy),t.config.animation);n.style.transitionDuration=`${i.exitDuration}ms`,n.style.opacity="0",t.state=2,this._runTimeoutOutsideZone(()=>{t.state=3,n.parentNode.removeChild(n)},i.exitDuration)}fadeOutAll(){this._activeRipples.forEach(t=>t.fadeOut())}fadeOutAllNonPersistent(){this._activeRipples.forEach(t=>{t.config.persistent||t.fadeOut()})}setupTriggerEvents(t){const e=_d(t);!e||e===this._triggerElement||(this._removeTriggerEvents(),this._triggerElement=e,this._registerEvents(Gy))}handleEvent(t){"mousedown"===t.type?this._onMousedown(t):"touchstart"===t.type?this._onTouchStart(t):this._onPointerUp(),this._pointerUpEventsRegistered||(this._registerEvents(Wy),this._pointerUpEventsRegistered=!0)}_onMousedown(t){const e=_g(t),n=this._lastTouchStartEvent&&Date.now(){!t.config.persistent&&(1===t.state||t.config.terminateOnPointerUp&&0===t.state)&&t.fadeOut()}))}_runTimeoutOutsideZone(t,e=0){this._ngZone.runOutsideAngular(()=>setTimeout(t,e))}_registerEvents(t){this._ngZone.runOutsideAngular(()=>{t.forEach(t=>{this._triggerElement.addEventListener(t,this,$y)})})}_removeTriggerEvents(){this._triggerElement&&(Gy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}),this._pointerUpEventsRegistered&&Wy.forEach(t=>{this._triggerElement.removeEventListener(t,this,$y)}))}}const Xy=new oi("mat-ripple-global-options");let Yy=(()=>{class t{constructor(t,e,n,i,r){this._elementRef=t,this._animationMode=r,this.radius=0,this._disabled=!1,this._isInitialized=!1,this._globalOptions=i||{},this._rippleRenderer=new qy(this,e,t,n)}get disabled(){return this._disabled}set disabled(t){t&&this.fadeOutAllNonPersistent(),this._disabled=t,this._setupTriggerEventsIfEnabled()}get trigger(){return this._trigger||this._elementRef.nativeElement}set trigger(t){this._trigger=t,this._setupTriggerEventsIfEnabled()}ngOnInit(){this._isInitialized=!0,this._setupTriggerEventsIfEnabled()}ngOnDestroy(){this._rippleRenderer._removeTriggerEvents()}fadeOutAll(){this._rippleRenderer.fadeOutAll()}fadeOutAllNonPersistent(){this._rippleRenderer.fadeOutAllNonPersistent()}get rippleConfig(){return{centered:this.centered,radius:this.radius,color:this.color,animation:Object.assign(Object.assign(Object.assign({},this._globalOptions.animation),"NoopAnimations"===this._animationMode?{enterDuration:0,exitDuration:0}:{}),this.animation),terminateOnPointerUp:this._globalOptions.terminateOnPointerUp}}get rippleDisabled(){return this.disabled||!!this._globalOptions.disabled}_setupTriggerEventsIfEnabled(){!this.disabled&&this._isInitialized&&this._rippleRenderer.setupTriggerEvents(this.trigger)}launch(t,e=0,n){return"number"==typeof t?this._rippleRenderer.fadeInRipple(t,e,Object.assign(Object.assign({},this.rippleConfig),n)):this._rippleRenderer.fadeInRipple(0,0,Object.assign(Object.assign({},this.rippleConfig),t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(xu),ea(pp),ea(Xy,8),ea(Ey,8))},t.\u0275dir=se({type:t,selectors:[["","mat-ripple",""],["","matRipple",""]],hostAttrs:[1,"mat-ripple"],hostVars:2,hostBindings:function(t,e){2&t&&ja("mat-ripple-unbounded",e.unbounded)},inputs:{radius:["matRippleRadius","radius"],disabled:["matRippleDisabled","disabled"],trigger:["matRippleTrigger","trigger"],color:["matRippleColor","color"],unbounded:["matRippleUnbounded","unbounded"],centered:["matRippleCentered","centered"],animation:["matRippleAnimation","animation"]},exportAs:["matRipple"]}),t})(),Ky=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,fp],Ny]}),t})(),Qy=(()=>{class t{constructor(t){this._animationMode=t,this.state="unchecked",this.disabled=!1}}return t.\u0275fac=function(e){return new(e||t)(ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-pseudo-checkbox"]],hostAttrs:[1,"mat-pseudo-checkbox"],hostVars:8,hostBindings:function(t,e){2&t&&ja("mat-pseudo-checkbox-indeterminate","indeterminate"===e.state)("mat-pseudo-checkbox-checked","checked"===e.state)("mat-pseudo-checkbox-disabled",e.disabled)("_mat-animation-noopable","NoopAnimations"===e._animationMode)},inputs:{state:"state",disabled:"disabled"},decls:0,vars:0,template:function(t,e){},styles:['.mat-pseudo-checkbox{width:16px;height:16px;border:2px solid;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1),background-color 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox::after{position:absolute;opacity:0;content:"";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0, 0, 0.2, 0.1)}.mat-pseudo-checkbox.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox.mat-pseudo-checkbox-indeterminate{border-color:transparent}._mat-animation-noopable.mat-pseudo-checkbox{transition:none;animation:none}._mat-animation-noopable.mat-pseudo-checkbox::after{transition:none}.mat-pseudo-checkbox-disabled{cursor:default}.mat-pseudo-checkbox-indeterminate::after{top:5px;left:1px;width:10px;opacity:1;border-radius:2px}.mat-pseudo-checkbox-checked::after{top:2.4px;left:1px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}\n'],encapsulation:2,changeDetection:0}),t})(),Zy=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny]]}),t})();const Jy=new oi("MAT_OPTION_PARENT_COMPONENT"),tv=Ly(class{});let ev=0,nv=(()=>{class t extends tv{constructor(t){var e;super(),this._labelId="mat-optgroup-label-"+ev++,this._inert=null!==(e=null==t?void 0:t.inertGroups)&&void 0!==e&&e}}return t.\u0275fac=function(e){return new(e||t)(ea(Jy,8))},t.\u0275dir=se({type:t,inputs:{label:"label"},features:[jo]}),t})();const iv=new oi("MatOptgroup");let rv=0;class sv{constructor(t,e=!1){this.source=t,this.isUserInput=e}}let ov=(()=>{class t{constructor(t,e,n,i){this._element=t,this._changeDetectorRef=e,this._parent=n,this.group=i,this._selected=!1,this._active=!1,this._disabled=!1,this._mostRecentViewValue="",this.id="mat-option-"+rv++,this.onSelectionChange=new Rc,this._stateChanges=new P}get multiple(){return this._parent&&this._parent.multiple}get selected(){return this._selected}get disabled(){return this.group&&this.group.disabled||this._disabled}set disabled(t){this._disabled=md(t)}get disableRipple(){return this._parent&&this._parent.disableRipple}get active(){return this._active}get viewValue(){return(this._getHostElement().textContent||"").trim()}select(){this._selected||(this._selected=!0,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}deselect(){this._selected&&(this._selected=!1,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent())}focus(t,e){const n=this._getHostElement();"function"==typeof n.focus&&n.focus(e)}setActiveStyles(){this._active||(this._active=!0,this._changeDetectorRef.markForCheck())}setInactiveStyles(){this._active&&(this._active=!1,this._changeDetectorRef.markForCheck())}getLabel(){return this.viewValue}_handleKeydown(t){(13===t.keyCode||32===t.keyCode)&&!Qp(t)&&(this._selectViaInteraction(),t.preventDefault())}_selectViaInteraction(){this.disabled||(this._selected=!this.multiple||!this._selected,this._changeDetectorRef.markForCheck(),this._emitSelectionChangeEvent(!0))}_getAriaSelected(){return this.selected||!this.multiple&&null}_getTabIndex(){return this.disabled?"-1":"0"}_getHostElement(){return this._element.nativeElement}ngAfterViewChecked(){if(this._selected){const t=this.viewValue;t!==this._mostRecentViewValue&&(this._mostRecentViewValue=t,this._stateChanges.next())}}ngOnDestroy(){this._stateChanges.complete()}_emitSelectionChangeEvent(t=!1){this.onSelectionChange.emit(new sv(this,t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(void 0),ea(nv))},t.\u0275dir=se({type:t,inputs:{id:"id",disabled:"disabled",value:"value"},outputs:{onSelectionChange:"onSelectionChange"}}),t})(),av=(()=>{class t extends ov{constructor(t,e,n,i){super(t,e,n,i)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Jy,8),ea(iv,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-option"]],hostAttrs:["role","option",1,"mat-option","mat-focus-indicator"],hostVars:12,hostBindings:function(t,e){1&t&&fa("click",function(){return e._selectViaInteraction()})("keydown",function(t){return e._handleKeydown(t)}),2&t&&(il("id",e.id),Ko("tabindex",e._getTabIndex())("aria-selected",e._getAriaSelected())("aria-disabled",e.disabled.toString()),ja("mat-selected",e.selected)("mat-option-multiple",e.multiple)("mat-active",e.active)("mat-option-disabled",e.disabled))},exportAs:["matOption"],features:[jo],ngContentSelectors:My,decls:5,vars:4,consts:[["class","mat-option-pseudo-checkbox",3,"state","disabled",4,"ngIf"],[1,"mat-option-text"],["class","cdk-visually-hidden",4,"ngIf"],["mat-ripple","",1,"mat-option-ripple",3,"matRippleTrigger","matRippleDisabled"],[1,"mat-option-pseudo-checkbox",3,"state","disabled"],[1,"cdk-visually-hidden"]],template:function(t,e){1&t&&(wa(),Jo(0,Ay,1,2,"mat-pseudo-checkbox",0),ra(1,"span",1),xa(2),sa(),Jo(3,Py,2,1,"span",2),oa(4,"div",3)),2&t&&(na("ngIf",e.multiple),ws(3),na("ngIf",e.group&&e.group._inert),ws(1),na("matRippleTrigger",e._getHostElement())("matRippleDisabled",e.disabled||e.disableRipple))},directives:[_h,Yy,Qy],styles:[".mat-option{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;line-height:48px;height:48px;padding:0 16px;text-align:left;text-decoration:none;max-width:100%;position:relative;cursor:pointer;outline:none;display:flex;flex-direction:row;max-width:100%;box-sizing:border-box;align-items:center;-webkit-tap-highlight-color:transparent}.mat-option[disabled]{cursor:default}[dir=rtl] .mat-option{text-align:right}.mat-option .mat-icon{margin-right:16px;vertical-align:middle}.mat-option .mat-icon svg{vertical-align:top}[dir=rtl] .mat-option .mat-icon{margin-left:16px;margin-right:0}.mat-option[aria-disabled=true]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:32px}[dir=rtl] .mat-optgroup .mat-option:not(.mat-option-multiple){padding-left:16px;padding-right:32px}.cdk-high-contrast-active .mat-option{margin:0 1px}.cdk-high-contrast-active .mat-option.mat-active{border:solid 1px currentColor;margin:0}.cdk-high-contrast-active .mat-option[aria-disabled=true]{opacity:.5}.mat-option-text{display:inline-block;flex-grow:1;overflow:hidden;text-overflow:ellipsis}.mat-option .mat-option-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-option-pseudo-checkbox{margin-right:8px}[dir=rtl] .mat-option-pseudo-checkbox{margin-left:8px;margin-right:0}\n"],encapsulation:2,changeDetection:0}),t})();function lv(t,e,n){if(n.length){let i=e.toArray(),r=n.toArray(),s=0;for(let e=0;en+i?Math.max(0,t-i+e):n}let uv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Rh,Ny,Zy]]}),t})();function hv(...t){if(1===t.length){const e=t[0];if(d(e))return dv(e,null);if(p(e)&&Object.getPrototypeOf(e)===Object.prototype){const t=Object.keys(e);return dv(t.map(t=>e[t]),t)}}if("function"==typeof t[t.length-1]){const e=t.pop();return dv(t=1===t.length&&d(t[0])?t[0]:t,null).pipe(D(t=>e(...t)))}return dv(t,null)}function dv(t,e){return new C(n=>{const i=t.length;if(0===i)return void n.complete();const r=new Array(i);let s=0,o=0;for(let a=0;a{c||(c=!0,o++),r[a]=t},error:t=>n.error(t),complete:()=>{s++,(s===i||!c)&&(o===i&&n.next(e?e.reduce((t,e,n)=>(t[e]=r[n],t),{}):r),n.complete())}}))}})}function pv(t){return function(e){const n=new fv(t),i=e.lift(n);return n.caught=i}}class fv{constructor(t){this.selector=t}call(t,e){return e.subscribe(new gv(t,this.selector,this.caught))}}class gv extends ${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 H(this);this.add(i);const r=G(n,i);r!==i&&this.add(r)}}}function mv(t){return e=>e.lift(new bv(t))}class bv{constructor(t){this.callback=t}call(t,e){return e.subscribe(new yv(t,this.callback))}}class yv extends v{constructor(t,e){super(t),this.add(new g(e))}}class vv{}class _v{}class wv{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(),r=t.slice(e+1).trim();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(r):this.headers.set(i,[r])}})}:()=>{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 wv?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 wv;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof wv?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 r=t.value;if(r){let t=this.headers.get(e);if(!t)return;t=t.filter(t=>-1===r.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 xv{encodeKey(t){return Cv(t)}encodeValue(t){return Cv(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const Sv=/%(\d[a-f0-9])/gi,Ev={40:"@","3A":":",24:"$","2C":",","3B":";","2B":"+","3D":"=","3F":"?","2F":"/"};function Cv(t){return encodeURIComponent(t).replace(Sv,(t,e)=>{var n;return null!==(n=Ev[e])&&void 0!==n?n:t})}function Ov(t){return`${t}`}class Tv{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new xv,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.replace(/^\?/,"").split("&").forEach(t=>{const i=t.indexOf("="),[r,s]=-1==i?[e.decodeKey(t),""]:[e.decodeKey(t.slice(0,i)),e.decodeValue(t.slice(i+1))],o=n.get(r)||[];o.push(s),n.set(r,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"})}appendAll(t){const e=[];return Object.keys(t).forEach(n=>{const i=t[n];Array.isArray(i)?i.forEach(t=>{e.push({param:n,value:t,op:"a"})}):e.push({param:n,value:i,op:"a"})}),this.clone(e)}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 Tv({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(Ov(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(Ov(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)}}class kv{constructor(){this.map=new Map}set(t,e){return this.map.set(t,e),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}keys(){return this.map.keys()}}function Av(t){return"undefined"!=typeof ArrayBuffer&&t instanceof ArrayBuffer}function Pv(t){return"undefined"!=typeof Blob&&t instanceof Blob}function Mv(t){return"undefined"!=typeof FormData&&t instanceof FormData}class Iv{constructor(t,e,n,i){let r;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,r=i):r=n,r&&(this.reportProgress=!!r.reportProgress,this.withCredentials=!!r.withCredentials,r.responseType&&(this.responseType=r.responseType),r.headers&&(this.headers=r.headers),r.context&&(this.context=r.context),r.params&&(this.params=r.params)),this.headers||(this.headers=new wv),this.context||(this.context=new kv),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]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((e,n)=>e.set(n,t.setParams[n]),c)),new Iv(n,i,s,{params:c,headers:l,context:u,reportProgress:a,responseType:r,withCredentials:o})}}var Dv=(()=>((Dv=Dv||{})[Dv.Sent=0]="Sent",Dv[Dv.UploadProgress=1]="UploadProgress",Dv[Dv.ResponseHeader=2]="ResponseHeader",Dv[Dv.DownloadProgress=3]="DownloadProgress",Dv[Dv.Response=4]="Response",Dv[Dv.User=5]="User",Dv))();class Rv{constructor(t,e=200,n="OK"){this.headers=t.headers||new wv,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}}class Nv extends Rv{constructor(t={}){super(t),this.type=Dv.ResponseHeader}clone(t={}){return new Nv({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})}}class Lv extends Rv{constructor(t={}){super(t),this.type=Dv.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new Lv({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})}}class jv extends Rv{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Fv(t,e){return{body:e,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials}}let Bv=(()=>{class t{constructor(t){this.handler=t}request(t,e,n={}){let i;if(t instanceof Iv)i=t;else{let r,s;r=n.headers instanceof wv?n.headers:new wv(n.headers),n.params&&(s=n.params instanceof Tv?n.params:new Tv({fromObject:n.params})),i=new Iv(t,e,void 0!==n.body?n.body:null,{headers:r,context:n.context,params:s,reportProgress:n.reportProgress,responseType:n.responseType||"json",withCredentials:n.withCredentials})}const r=wd(i).pipe(function(t,e){return W(t,e,1)}(t=>this.handler.handle(t)));if(t instanceof Iv||"events"===n.observe)return r;const s=r.pipe(Hd(t=>t instanceof Lv));switch(n.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return t.body}));case"blob":return s.pipe(D(t=>{if(null!==t.body&&!(t.body instanceof Blob))throw new Error("Response is not a Blob.");return t.body}));case"text":return s.pipe(D(t=>{if(null!==t.body&&"string"!=typeof t.body)throw new Error("Response is not a string.");return t.body}));case"json":default:return s.pipe(D(t=>t.body))}case"response":return s;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 Tv).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,Fv(n,e))}post(t,e,n={}){return this.request("POST",t,Fv(n,e))}put(t,e,n={}){return this.request("PUT",t,Fv(n,e))}}return t.\u0275fac=function(e){return new(e||t)(Ci(vv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class Vv{constructor(t,e){this.next=t,this.interceptor=e}handle(t){return this.interceptor.intercept(t,this.next)}}const zv=new oi("HTTP_INTERCEPTORS");let Uv=(()=>{class t{intercept(t,e){return e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Hv=/^\)\]\}',?\n/;let $v=(()=>{class t{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new Error("Attempted to construct Jsonp request without HttpClientJsonpModule installed.");return new C(e=>{const n=this.xhrFactory.build();if(n.open(t.method,t.urlWithParams),t.withCredentials&&(n.withCredentials=!0),t.headers.forEach((t,e)=>n.setRequestHeader(t,e.join(","))),t.headers.has("Accept")||n.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const e=t.detectContentTypeHeader();null!==e&&n.setRequestHeader("Content-Type",e)}if(t.responseType){const e=t.responseType.toLowerCase();n.responseType="json"!==e?e:"text"}const i=t.serializeBody();let r=null;const s=()=>{if(null!==r)return r;const e=1223===n.status?204:n.status,i=n.statusText||"OK",s=new wv(n.getAllResponseHeaders()),o=function(t){return"responseURL"in t&&t.responseURL?t.responseURL:/^X-Request-URL:/m.test(t.getAllResponseHeaders())?t.getResponseHeader("X-Request-URL"):null}(n)||t.url;return r=new Nv({headers:s,status:e,statusText:i,url:o}),r},o=()=>{let{headers:i,status:r,statusText:o,url:a}=s(),l=null;204!==r&&(l=void 0===n.response?n.responseText:n.response),0===r&&(r=l?200:0);let c=r>=200&&r<300;if("json"===t.responseType&&"string"==typeof l){const t=l;l=l.replace(Hv,"");try{l=""!==l?JSON.parse(l):null}catch(u){l=t,c&&(c=!1,l={error:u,text:l})}}c?(e.next(new Lv({body:l,headers:i,status:r,statusText:o,url:a||void 0})),e.complete()):e.error(new jv({error:l,headers:i,status:r,statusText:o,url:a||void 0}))},a=t=>{const{url:i}=s(),r=new jv({error:t,status:n.status||0,statusText:n.statusText||"Unknown Error",url:i||void 0});e.error(r)};let l=!1;const c=i=>{l||(e.next(s()),l=!0);let r={type:Dv.DownloadProgress,loaded:i.loaded};i.lengthComputable&&(r.total=i.total),"text"===t.responseType&&!!n.responseText&&(r.partialText=n.responseText),e.next(r)},u=t=>{let n={type:Dv.UploadProgress,loaded:t.loaded};t.lengthComputable&&(n.total=t.total),e.next(n)};return n.addEventListener("load",o),n.addEventListener("error",a),n.addEventListener("timeout",a),n.addEventListener("abort",a),t.reportProgress&&(n.addEventListener("progress",c),null!==i&&n.upload&&n.upload.addEventListener("progress",u)),n.send(i),e.next({type:Dv.Sent}),()=>{n.removeEventListener("error",a),n.removeEventListener("abort",a),n.removeEventListener("load",o),n.removeEventListener("timeout",a),t.reportProgress&&(n.removeEventListener("progress",c),null!==i&&n.upload&&n.upload.removeEventListener("progress",u)),n.readyState!==n.DONE&&n.abort()}})}}return t.\u0275fac=function(e){return new(e||t)(Ci(jh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Gv=new oi("XSRF_COOKIE_NAME"),Wv=new oi("XSRF_HEADER_NAME");class qv{}let Xv=(()=>{class t{constructor(t,e,n){this.doc=t,this.platform=e,this.cookieName=n,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=gh(t,this.cookieName),this.lastCookieString=t),this.lastToken}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(ou),Ci(Gv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Yv=(()=>{class t{constructor(t,e){this.tokenService=t,this.headerName=e}intercept(t,e){const n=t.url.toLowerCase();if("GET"===t.method||"HEAD"===t.method||n.startsWith("http://")||n.startsWith("https://"))return e.handle(t);const i=this.tokenService.getToken();return null!==i&&!t.headers.has(this.headerName)&&(t=t.clone({headers:t.headers.set(this.headerName,i)})),e.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(qv),Ci(Wv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Kv=(()=>{class t{constructor(t,e){this.backend=t,this.injector=e,this.chain=null}handle(t){if(null===this.chain){const t=this.injector.get(zv,[]);this.chain=t.reduceRight((t,e)=>new Vv(t,e),this.backend)}return this.chain.handle(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(_v),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Qv=(()=>{class t{static disable(){return{ngModule:t,providers:[{provide:Yv,useClass:Uv}]}}static withOptions(e={}){return{ngModule:t,providers:[e.cookieName?{provide:Gv,useValue:e.cookieName}:[],e.headerName?{provide:Wv,useValue:e.headerName}:[]]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Yv,{provide:zv,useExisting:Yv,multi:!0},{provide:qv,useClass:Xv},{provide:Gv,useValue:"XSRF-TOKEN"},{provide:Wv,useValue:"X-XSRF-TOKEN"}]}),t})(),Zv=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Bv,{provide:vv,useClass:Kv},$v,{provide:_v,useExisting:$v}],imports:[[Qv.withOptions({cookieName:"XSRF-TOKEN",headerName:"X-XSRF-TOKEN"})]]}),t})();const Jv=["*"];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,n){this.url=t,this.svgText=e,this.options=n}}let r_=(()=>{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._resolvers=[],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,null,i))}addSvgIconResolver(t){return this._resolvers.push(t),this}addSvgIconLiteralInNamespace(t,e,n,i){const r=this._sanitizer.sanitize(yr.HTML,n);if(!r)throw n_(n);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,null,n))}addSvgIconSetLiteralInNamespace(t,e,n){const i=this._sanitizer.sanitize(yr.HTML,e);if(!i)throw n_(e);return this._addSvgIconSetConfig(t,new i_("",i,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(yr.RESOURCE_URL,t);if(!e)throw e_(t);const n=this._cachedIconsByUrl.get(e);return n?wd(s_(n)):this._loadSvgIconFromConfig(new i_(t,null)).pipe($f(t=>this._cachedIconsByUrl.set(e,t)),D(t=>s_(t)))}getNamedSvgIcon(t,e=""){const n=o_(e,t);let i=this._svgIconConfigs.get(n);if(i)return this._getSvgFromConfig(i);if(i=this._getIconConfigFromResolvers(e,t),i)return this._svgIconConfigs.set(n,i),this._getSvgFromConfig(i);const r=this._iconSetConfigs.get(e);return r?this._getSvgFromIconSetConfigs(t,r):ip(t_(n))}ngOnDestroy(){this._resolvers=[],this._svgIconConfigs.clear(),this._iconSetConfigs.clear(),this._cachedIconsByUrl.clear()}_getSvgFromConfig(t){return t.svgText?wd(s_(this._svgElementFromConfig(t))):this._loadSvgIconFromConfig(t).pipe(D(t=>s_(t)))}_getSvgFromIconSetConfigs(t,e){const n=this._extractIconWithNameFromAnySet(t,e);return n?wd(n):hv(e.filter(t=>!t.svgText).map(t=>this._loadSvgIconSetFromConfig(t).pipe(pv(e=>{const n=`Loading icon set URL: ${this._sanitizer.sanitize(yr.RESOURCE_URL,t.url)} failed: ${e.message}`;return this._errorHandler.handleError(new Error(n)),wd(null)})))).pipe(D(()=>{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.svgText&&i.svgText.indexOf(t)>-1){const e=this._svgElementFromConfig(i),n=this._extractSvgIconFromSet(e,t,i.options);if(n)return n}}return null}_loadSvgIconFromConfig(t){return this._fetchIcon(t).pipe($f(e=>t.svgText=e),D(()=>this._svgElementFromConfig(t)))}_loadSvgIconSetFromConfig(t){return t.svgText?wd(null):this._fetchIcon(t).pipe($f(e=>t.svgText=e))}_extractSvgIconFromSet(t,e,n){const i=t.querySelector(`[id="${e}"]`);if(!i)return null;const r=i.cloneNode(!0);if(r.removeAttribute("id"),"svg"===r.nodeName.toLowerCase())return this._setSvgAttributes(r,n);if("symbol"===r.nodeName.toLowerCase())return this._setSvgAttributes(this._toSvgElement(r),n);const s=this._svgElementFromString("");return s.appendChild(r),this._setSvgAttributes(s,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(s)),at());return this._inProgressUrlFetches.set(s,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}_svgElementFromConfig(t){if(!t.svgElement){const e=this._svgElementFromString(t.svgText);this._setSvgAttributes(e,t.options),t.svgElement=e}return t.svgElement}_getIconConfigFromResolvers(t,e){for(let n=0;ne?e.pathname+e.search:""}}}),u_=["clip-path","color-profile","src","cursor","fill","filter","marker","marker-start","marker-mid","marker-end","mask","stroke"],h_=u_.map(t=>`[${t}]`).join(", "),d_=/^url\(['"]?#(.*?)['"]?\)$/;let p_=(()=>{class t extends l_{constructor(t,e,n,i,r){super(t),this._iconRegistry=e,this._location=i,this._errorHandler=r,this._inline=!1,this._currentIconFetch=g.EMPTY,n||t.nativeElement.setAttribute("aria-hidden","true")}get inline(){return this._inline}set inline(t){this._inline=md(t)}get svgIcon(){return this._svgIcon}set svgIcon(t){t!==this._svgIcon&&(t?this._updateSvgIcon(t):this._svgIcon&&this._clearSvgElement(),this._svgIcon=t)}get fontSet(){return this._fontSet}set fontSet(t){const e=this._cleanupFontValue(t);e!==this._fontSet&&(this._fontSet=e,this._updateFontIconClasses())}get fontIcon(){return this._fontIcon}set fontIcon(t){const e=this._cleanupFontValue(t);e!==this._fontIcon&&(this._fontIcon=e,this._updateFontIconClasses())}_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}"`)}}ngOnInit(){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(h_),n=this._elementsWithExternalReferences=this._elementsWithExternalReferences||new Map;for(let i=0;i{const r=e[i],s=r.getAttribute(t),o=s?s.match(d_):null;if(o){let e=n.get(r);e||(e=[],n.set(r,e)),e.push({name:t,value:o[1]})}})}_updateSvgIcon(t){if(this._svgNamespace=null,this._svgName=null,this._currentIconFetch.unsubscribe(),t){const[e,n]=this._splitIconName(t);e&&(this._svgNamespace=e),n&&(this._svgName=n),this._currentIconFetch=this._iconRegistry.getNamedSvgIcon(n,e).pipe(Gp(1)).subscribe(t=>this._setSvgElement(t),t=>{this._errorHandler.handleError(new Error(`Error retrieving icon ${e}:${n}! ${t.message}`))})}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(r_),ni("aria-hidden"),ea(c_),ea(Ar))},t.\u0275cmp=Jt({type:t,selectors:[["mat-icon"]],hostAttrs:["role","img",1,"mat-icon","notranslate"],hostVars:7,hostBindings:function(t,e){2&t&&(Ko("data-mat-icon-type",e._usingFontIcon()?"font":"svg")("data-mat-icon-name",e._svgName||e.fontIcon)("data-mat-icon-namespace",e._svgNamespace||e.fontSet),ja("mat-icon-inline",e.inline)("mat-icon-no-color","primary"!==e.color&&"accent"!==e.color&&"warn"!==e.color))},inputs:{color:"color",inline:"inline",svgIcon:"svgIcon",fontSet:"fontSet",fontIcon:"fontIcon"},exportAs:["matIcon"],features:[jo],ngContentSelectors:Jv,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:[".mat-icon{background-repeat:no-repeat;display:inline-block;fill:currentColor;height:24px;width:24px}.mat-icon.mat-icon-inline{font-size:inherit;height:inherit;line-height:inherit;width:inherit}[dir=rtl] .mat-icon-rtl-mirror{transform:scale(-1, 1)}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon{display:block}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button .mat-icon{margin:auto}\n"],encapsulation:2,changeDetection:0}),t})(),f_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})();const g_=["mat-button",""],m_=["*"],b_=".mat-button .mat-button-focus-overlay,.mat-icon-button .mat-button-focus-overlay{opacity:0}.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:.04}@media(hover: none){.mat-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay,.mat-stroked-button:hover:not(.mat-button-disabled) .mat-button-focus-overlay{opacity:0}}.mat-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-button.mat-button-disabled,.mat-icon-button.mat-button-disabled,.mat-stroked-button.mat-button-disabled,.mat-flat-button.mat-button-disabled{cursor:default}.mat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-button.cdk-program-focused .mat-button-focus-overlay,.mat-icon-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-icon-button.cdk-program-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-stroked-button.cdk-program-focused .mat-button-focus-overlay,.mat-flat-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-flat-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-button::-moz-focus-inner,.mat-icon-button::-moz-focus-inner,.mat-stroked-button::-moz-focus-inner,.mat-flat-button::-moz-focus-inner{border:0}.mat-raised-button{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-raised-button::-moz-focus-inner{border:0}.mat-raised-button.mat-button-disabled{cursor:default}.mat-raised-button.cdk-keyboard-focused .mat-button-focus-overlay,.mat-raised-button.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-raised-button::-moz-focus-inner{border:0}._mat-animation-noopable.mat-raised-button{transition:none;animation:none}.mat-stroked-button{border:1px solid currentColor;padding:0 15px;line-height:34px}.mat-stroked-button .mat-button-ripple.mat-ripple,.mat-stroked-button .mat-button-focus-overlay{top:-1px;left:-1px;right:-1px;bottom:-1px}.mat-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:56px;height:56px;padding:0;flex-shrink:0}.mat-fab::-moz-focus-inner{border:0}.mat-fab.mat-button-disabled{cursor:default}.mat-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-fab{transition:none;animation:none}.mat-fab .mat-button-wrapper{padding:16px 0;display:inline-block;line-height:24px}.mat-mini-fab{box-sizing:border-box;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:transparent;display:inline-block;white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;padding:0 16px;border-radius:4px;overflow:visible;transform:translate3d(0, 0, 0);transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);min-width:0;border-radius:50%;width:40px;height:40px;padding:0;flex-shrink:0}.mat-mini-fab::-moz-focus-inner{border:0}.mat-mini-fab.mat-button-disabled{cursor:default}.mat-mini-fab.cdk-keyboard-focused .mat-button-focus-overlay,.mat-mini-fab.cdk-program-focused .mat-button-focus-overlay{opacity:.12}.mat-mini-fab::-moz-focus-inner{border:0}._mat-animation-noopable.mat-mini-fab{transition:none;animation:none}.mat-mini-fab .mat-button-wrapper{padding:8px 0;display:inline-block;line-height:24px}.mat-icon-button{padding:0;min-width:0;width:40px;height:40px;flex-shrink:0;line-height:40px;border-radius:50%}.mat-icon-button i,.mat-icon-button .mat-icon{line-height:24px}.mat-button-ripple.mat-ripple,.mat-button-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-button-ripple.mat-ripple:not(:empty){transform:translateZ(0)}.mat-button-focus-overlay{opacity:0;transition:opacity 200ms cubic-bezier(0.35, 0, 0.25, 1),background-color 200ms cubic-bezier(0.35, 0, 0.25, 1)}._mat-animation-noopable .mat-button-focus-overlay{transition:none}.mat-button-ripple-round{border-radius:50%;z-index:1}.mat-button .mat-button-wrapper>*,.mat-flat-button .mat-button-wrapper>*,.mat-stroked-button .mat-button-wrapper>*,.mat-raised-button .mat-button-wrapper>*,.mat-icon-button .mat-button-wrapper>*,.mat-fab .mat-button-wrapper>*,.mat-mini-fab .mat-button-wrapper>*{vertical-align:middle}.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-prefix .mat-icon-button,.mat-form-field:not(.mat-form-field-appearance-legacy) .mat-form-field-suffix .mat-icon-button{display:inline-flex;justify-content:center;align-items:center;font-size:inherit;width:2.5em;height:2.5em}.cdk-high-contrast-active .mat-button,.cdk-high-contrast-active .mat-flat-button,.cdk-high-contrast-active .mat-raised-button,.cdk-high-contrast-active .mat-icon-button,.cdk-high-contrast-active .mat-fab,.cdk-high-contrast-active .mat-mini-fab{outline:solid 1px}.cdk-high-contrast-active .mat-button-base.cdk-keyboard-focused,.cdk-high-contrast-active .mat-button-base.cdk-program-focused{outline:solid 3px}\n",y_=["mat-button","mat-flat-button","mat-icon-button","mat-raised-button","mat-stroked-button","mat-mini-fab","mat-fab"],v_=jy(Ly(Fy(class{constructor(t){this._elementRef=t}})));let __=(()=>{class t extends v_{constructor(t,e,n){super(t),this._focusMonitor=e,this._animationMode=n,this.isRoundButton=this._hasHostAttributes("mat-fab","mat-mini-fab"),this.isIconButton=this._hasHostAttributes("mat-icon-button");for(const i of y_)this._hasHostAttributes(i)&&this._getHostElement().classList.add(i);t.nativeElement.classList.add("mat-button-base"),this.isRoundButton&&(this.color="accent")}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0)}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}focus(t,e){t?this._focusMonitor.focusVia(this._getHostElement(),t,e):this._getHostElement().focus(e)}_getHostElement(){return this._elementRef.nativeElement}_isRippleDisabled(){return this.disableRipple||this.disabled}_hasHostAttributes(...t){return t.some(t=>this._getHostElement().hasAttribute(t))}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["button","mat-button",""],["button","mat-raised-button",""],["button","mat-icon-button",""],["button","mat-fab",""],["button","mat-mini-fab",""],["button","mat-stroked-button",""],["button","mat-flat-button",""]],viewQuery:function(t,e){if(1&t&&qc(Yy,5),2&t){let t;Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-focus-indicator"],hostVars:5,hostBindings:function(t,e){2&t&&(Ko("disabled",e.disabled||null),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color"},exportAs:["matButton"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),w_=(()=>{class t extends __{constructor(t,e,n){super(e,t,n)}_haltDisabledEvents(t){this.disabled&&(t.preventDefault(),t.stopImmediatePropagation())}}return t.\u0275fac=function(e){return new(e||t)(ea(Mg),ea(kl),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["a","mat-button",""],["a","mat-raised-button",""],["a","mat-icon-button",""],["a","mat-fab",""],["a","mat-mini-fab",""],["a","mat-stroked-button",""],["a","mat-flat-button",""]],hostAttrs:[1,"mat-focus-indicator"],hostVars:7,hostBindings:function(t,e){1&t&&fa("click",function(t){return e._haltDisabledEvents(t)}),2&t&&(Ko("tabindex",e.disabled?-1:e.tabIndex||0)("disabled",e.disabled||null)("aria-disabled",e.disabled.toString()),ja("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-button-disabled",e.disabled))},inputs:{disabled:"disabled",disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex"},exportAs:["matButton","matAnchor"],features:[jo],attrs:g_,ngContentSelectors:m_,decls:4,vars:5,consts:[[1,"mat-button-wrapper"],["matRipple","",1,"mat-button-ripple",3,"matRippleDisabled","matRippleCentered","matRippleTrigger"],[1,"mat-button-focus-overlay"]],template:function(t,e){1&t&&(wa(),ra(0,"span",0),xa(1),sa(),oa(2,"span",1),oa(3,"span",2)),2&t&&(ws(2),ja("mat-button-ripple-round",e.isRoundButton||e.isIconButton),na("matRippleDisabled",e._isRippleDisabled())("matRippleCentered",e.isIconButton)("matRippleTrigger",e._getHostElement()))},directives:[Yy],styles:[b_],encapsulation:2,changeDetection:0}),t})(),x_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny],Ny]}),t})();class S_ extends v{notifyNext(t,e,n,i,r){this.destination.next(e)}notifyError(t,e){this.destination.error(t)}notifyComplete(t){this.destination.complete()}}class E_ extends v{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()}}function C_(t,e,n,i,r=new E_(t,n,i)){if(!r.closed)return e instanceof C?e.subscribe(r):V(e)(r)}const O_={};function T_(...t){let e,n;return I(t[t.length-1])&&(n=t.pop()),"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0]),K(t,n).lift(new k_(e))}class k_{constructor(t){this.resultSelector=t}call(t,e){return e.subscribe(new A_(t,this.resultSelector))}}class A_ extends S_{constructor(t,e){super(t),this.resultSelector=e,this.active=0,this.values=[],this.observables=[]}_next(t){this.values.push(O_),this.observables.push(t)}_complete(){const t=this.observables,e=t.length;if(0===e)this.destination.complete();else{this.active=e,this.toRespond=e;for(let n=0;n{class t{constructor(t){this._platform=t,this._matchMedia=this._platform.isBrowser&&window.matchMedia?window.matchMedia.bind(window):D_}matchMedia(t){return this._platform.WEBKIT&&function(t){if(!P_.has(t))try{M_||(M_=document.createElement("style"),M_.setAttribute("type","text/css"),document.head.appendChild(M_)),M_.sheet&&(M_.sheet.insertRule(`@media ${t} {.fx-query-test{ }}`,0),P_.add(t))}catch(e){console.error(e)}}(t),this._matchMedia(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pp))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp))},token:t,providedIn:"root"}),t})();function D_(t){return{matches:"all"===t||""===t,media:t,addListener:()=>{},removeListener:()=>{}}}let R_=(()=>{class t{constructor(t,e){this._mediaMatcher=t,this._zone=e,this._queries=new Map,this._destroySubject=new P}ngOnDestroy(){this._destroySubject.next(),this._destroySubject.complete()}isMatched(t){return N_(yd(t)).some(t=>this._registerQuery(t).mql.matches)}observe(t){let e=T_(N_(yd(t)).map(t=>this._registerQuery(t).observable));return e=Yd(e.pipe(Gp(1)),e.pipe(Qf(1),qf(0))),e.pipe(D(t=>{const e={matches:!1,breakpoints:{}};return t.forEach(({matches:t,query:n})=>{e.matches=e.matches||t,e.breakpoints[n]=t}),e}))}_registerQuery(t){if(this._queries.has(t))return this._queries.get(t);const e=this._mediaMatcher.matchMedia(t),n={observable:new C(t=>{const n=e=>this._zone.run(()=>t.next(e));return e.addListener(n),()=>{e.removeListener(n)}}).pipe(Kd(e),D(({matches:e})=>({query:t,matches:e})),Wd(this._destroySubject)),mql:e};return this._queries.set(t,n),n}}return t.\u0275fac=function(e){return new(e||t)(Ci(I_),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(I_),Ci(xu))},token:t,providedIn:"root"}),t})();function N_(t){return t.map(t=>t.split(",")).reduce((t,e)=>t.concat(e)).map(t=>t.trim())}function L_(t,e){if(1&t){const t=ua();ra(0,"div",1),ra(1,"button",2),fa("click",function(){return $e(t),va().action()}),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),Ja(t.data.action)}}function j_(t,e){}const F_=new oi("MatSnackBarData");class B_{constructor(){this.politeness="assertive",this.announcementMessage="",this.duration=0,this.data=null,this.horizontalPosition="center",this.verticalPosition="bottom"}}const V_=Math.pow(2,31)-1;class z_{constructor(t,e){this._overlayRef=e,this._afterDismissed=new P,this._afterOpened=new P,this._onAction=new P,this._dismissedByAction=!1,this.containerInstance=t,this.onAction().subscribe(()=>this.dismiss()),t._onExit.subscribe(()=>this._finishDismiss())}dismiss(){this._afterDismissed.closed||this.containerInstance.exit(),clearTimeout(this._durationTimeoutId)}dismissWithAction(){this._onAction.closed||(this._dismissedByAction=!0,this._onAction.next(),this._onAction.complete()),clearTimeout(this._durationTimeoutId)}closeWithAction(){this.dismissWithAction()}_dismissAfter(t){this._durationTimeoutId=setTimeout(()=>this.dismiss(),Math.min(t,V_))}_open(){this._afterOpened.closed||(this._afterOpened.next(),this._afterOpened.complete())}_finishDismiss(){this._overlayRef.dispose(),this._onAction.closed||this._onAction.complete(),this._afterDismissed.next({dismissedByAction:this._dismissedByAction}),this._afterDismissed.complete(),this._dismissedByAction=!1}afterDismissed(){return this._afterDismissed}afterOpened(){return this.containerInstance._onEnter}onAction(){return this._onAction}}let U_=(()=>{class t{constructor(t,e){this.snackBarRef=t,this.data=e}action(){this.snackBarRef.dismissWithAction()}get hasAction(){return!!this.data.action}}return t.\u0275fac=function(e){return new(e||t)(ea(z_),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["simple-snack-bar"]],hostAttrs:[1,"mat-simple-snackbar"],decls:3,vars:2,consts:[["class","mat-simple-snackbar-action",4,"ngIf"],[1,"mat-simple-snackbar-action"],["mat-button","",3,"click"]],template:function(t,e){1&t&&(ra(0,"span"),Za(1),sa(),Jo(2,L_,3,1,"div",0)),2&t&&(ws(1),Ja(e.data.message),ws(1),na("ngIf",e.hasAction))},directives:[_h,__],styles:[".mat-simple-snackbar{display:flex;justify-content:space-between;align-items:center;line-height:20px;opacity:1}.mat-simple-snackbar-action{flex-shrink:0;margin:-8px -8px -8px 8px}.mat-simple-snackbar-action button{max-height:36px;min-width:0}[dir=rtl] .mat-simple-snackbar-action{margin-left:-8px;margin-right:8px}\n"],encapsulation:2,changeDetection:0}),t})();const H_={snackBarState:Vg("state",[$g("void, hidden",Hg({transform:"scale(0.8)",opacity:0})),$g("visible",Hg({transform:"scale(1)",opacity:1})),Wg("* => visible",zg("150ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void, * => hidden",zg("75ms cubic-bezier(0.4, 0.0, 1, 1)",Hg({opacity:0})))])};let $_=(()=>{class t extends Fp{constructor(t,e,n,i,r){super(),this._ngZone=t,this._elementRef=e,this._changeDetectorRef=n,this._platform=i,this.snackBarConfig=r,this._announceDelay=150,this._destroyed=!1,this._onAnnounce=new P,this._onExit=new P,this._onEnter=new P,this._animationState="void",this.attachDomPortal=t=>(this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachDomPortal(t)),this._live="assertive"!==r.politeness||r.announcementMessage?"off"===r.politeness?"off":"polite":"assertive",this._platform.FIREFOX&&("polite"===this._live&&(this._role="status"),"assertive"===this._live&&(this._role="alert"))}attachComponentPortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._assertNotAttached(),this._applySnackBarClasses(),this._portalOutlet.attachTemplatePortal(t)}onAnimationEnd(t){const{fromState:e,toState:n}=t;if(("void"===n&&"void"!==e||"hidden"===n)&&this._completeExit(),"visible"===n){const t=this._onEnter;this._ngZone.run(()=>{t.next(),t.complete()})}}enter(){this._destroyed||(this._animationState="visible",this._changeDetectorRef.detectChanges(),this._screenReaderAnnounce())}exit(){return this._animationState="hidden",this._elementRef.nativeElement.setAttribute("mat-exit",""),clearTimeout(this._announceTimeoutId),this._onExit}ngOnDestroy(){this._destroyed=!0,this._completeExit()}_completeExit(){this._ngZone.onMicrotaskEmpty.pipe(Gp(1)).subscribe(()=>{this._onExit.next(),this._onExit.complete()})}_applySnackBarClasses(){const t=this._elementRef.nativeElement,e=this.snackBarConfig.panelClass;e&&(Array.isArray(e)?e.forEach(e=>t.classList.add(e)):t.classList.add(e)),"center"===this.snackBarConfig.horizontalPosition&&t.classList.add("mat-snack-bar-center"),"top"===this.snackBarConfig.verticalPosition&&t.classList.add("mat-snack-bar-top")}_assertNotAttached(){this._portalOutlet.hasAttached()}_screenReaderAnnounce(){this._announceTimeoutId||this._ngZone.runOutsideAngular(()=>{this._announceTimeoutId=setTimeout(()=>{const t=this._elementRef.nativeElement.querySelector("[aria-hidden]"),e=this._elementRef.nativeElement.querySelector("[aria-live]");if(t&&e){let n=null;this._platform.isBrowser&&document.activeElement instanceof HTMLElement&&t.contains(document.activeElement)&&(n=document.activeElement),t.removeAttribute("aria-hidden"),e.appendChild(t),null==n||n.focus(),this._onAnnounce.next(),this._onAnnounce.complete()}},this._announceDelay)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(pp),ea(B_))},t.\u0275cmp=Jt({type:t,selectors:[["snack-bar-container"]],viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},hostAttrs:[1,"mat-snack-bar-container"],hostVars:1,hostBindings:function(t,e){1&t&&ga("@state.done",function(t){return e.onAnimationEnd(t)}),2&t&&rl("@state",e._animationState)},features:[jo],decls:3,vars:2,consts:[["aria-hidden","true"],["cdkPortalOutlet",""]],template:function(t,e){1&t&&(ra(0,"div",0),Jo(1,j_,0,0,"ng-template",1),sa(),oa(2,"div")),2&t&&(ws(2),Ko("aria-live",e._live)("role",e._role))},directives:[Up],styles:[".mat-snack-bar-container{border-radius:4px;box-sizing:border-box;display:block;margin:24px;max-width:33vw;min-width:344px;padding:14px 16px;min-height:48px;transform-origin:center}.cdk-high-contrast-active .mat-snack-bar-container{border:solid 1px}.mat-snack-bar-handset{width:100%}.mat-snack-bar-handset .mat-snack-bar-container{margin:8px;max-width:100%;min-width:0;width:100%}\n"],encapsulation:2,data:{animation:[H_.snackBarState]}}),t})(),G_=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rf,Hp,Rh,x_,Ny],Ny]}),t})();const W_=new oi("mat-snack-bar-default-options",{providedIn:"root",factory:function(){return new B_}});let q_=(()=>{class t{constructor(t,e,n,i,r,s){this._overlay=t,this._live=e,this._injector=n,this._breakpointObserver=i,this._parentSnackBar=r,this._defaultConfig=s,this._snackBarRefAtThisLevel=null,this.simpleSnackBarComponent=U_,this.snackBarContainerComponent=$_,this.handsetCssClass="mat-snack-bar-handset"}get _openedSnackBarRef(){const t=this._parentSnackBar;return t?t._openedSnackBarRef:this._snackBarRefAtThisLevel}set _openedSnackBarRef(t){this._parentSnackBar?this._parentSnackBar._openedSnackBarRef=t:this._snackBarRefAtThisLevel=t}openFromComponent(t,e){return this._attach(t,e)}openFromTemplate(t,e){return this._attach(t,e)}open(t,e="",n){const i=Object.assign(Object.assign({},this._defaultConfig),n);return i.data={message:t,action:e},i.announcementMessage===t&&(i.announcementMessage=void 0),this.openFromComponent(this.simpleSnackBarComponent,i)}dismiss(){this._openedSnackBarRef&&this._openedSnackBarRef.dismiss()}ngOnDestroy(){this._snackBarRefAtThisLevel&&this._snackBarRefAtThisLevel.dismiss()}_attachSnackBarContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:B_,useValue:e}]}),i=new Np(this.snackBarContainerComponent,e.viewContainerRef,n),r=t.attach(i);return r.instance.snackBarConfig=e,r.instance}_attach(t,e){const n=Object.assign(Object.assign(Object.assign({},new B_),this._defaultConfig),e),i=this._createOverlay(n),r=this._attachSnackBarContainer(i,n),s=new z_(r,i);if(t instanceof sc){const e=new Lp(t,null,{$implicit:n.data,snackBarRef:s});s.instance=r.attachTemplatePortal(e)}else{const e=this._createInjector(n,s),i=new Np(t,void 0,e),o=r.attachComponentPortal(i);s.instance=o.instance}return this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait)").pipe(Wd(i.detachments())).subscribe(t=>{const e=i.overlayElement.classList;t.matches?e.add(this.handsetCssClass):e.remove(this.handsetCssClass)}),n.announcementMessage&&r._onAnnounce.subscribe(()=>{this._live.announce(n.announcementMessage,n.politeness)}),this._animateSnackBar(s,n),this._openedSnackBarRef=s,this._openedSnackBarRef}_animateSnackBar(t,e){t.afterDismissed().subscribe(()=>{this._openedSnackBarRef==t&&(this._openedSnackBarRef=null),e.announcementMessage&&this._live.clear()}),this._openedSnackBarRef?(this._openedSnackBarRef.afterDismissed().subscribe(()=>{t.containerInstance.enter()}),this._openedSnackBarRef.dismiss()):t.containerInstance.enter(),e.duration&&e.duration>0&&t.afterOpened().subscribe(()=>t._dismissAfter(e.duration))}_createOverlay(t){const e=new af;e.direction=t.direction;let n=this._overlay.position().global();const i="rtl"===t.direction,r="left"===t.horizontalPosition||"start"===t.horizontalPosition&&!i||"end"===t.horizontalPosition&&i,s=!r&&"center"!==t.horizontalPosition;return r?n.left("0"):s?n.right("0"):n.centerHorizontally(),"top"===t.verticalPosition?n.top("0"):n.bottom("0"),e.positionStrategy=n,this._overlay.create(e)}_createInjector(t,e){return No.create({parent:t&&t.viewContainerRef&&t.viewContainerRef.injector||this._injector,providers:[{provide:z_,useValue:e},{provide:F_,useValue:t.data}]})}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(kg),Ci(No),Ci(R_),Ci(t,12),Ci(W_))},t.\u0275prov=xt({factory:function(){return new t(Ci(kf),Ci(kg),Ci(_o),Ci(R_),Ci(t,12),Ci(W_))},token:t,providedIn:G_}),t})();const X_={tooltipState:Vg("state",[$g("initial, void, hidden",Hg({opacity:0,transform:"scale(0)"})),$g("visible",Hg({transform:"scale(1)"})),Wg("* => visible",zg("200ms cubic-bezier(0, 0, 0.2, 1)",Gg([Hg({opacity:0,transform:"scale(0)",offset:0}),Hg({opacity:.5,transform:"scale(0.99)",offset:.5}),Hg({opacity:1,transform:"scale(1)",offset:1})]))),Wg("* => hidden",zg("100ms cubic-bezier(0, 0, 0.2, 1)",Hg({opacity:0})))])},Y_="tooltip-panel",K_=_p({passive:!0}),Q_=new oi("mat-tooltip-scroll-strategy"),Z_={provide:Q_,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition({scrollThrottle:20})}},J_=new oi("mat-tooltip-default-options",{providedIn:"root",factory:function(){return{showDelay:0,hideDelay:0,touchendHideDelay:1500}}});let tw=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this._overlay=t,this._elementRef=e,this._scrollDispatcher=n,this._viewContainerRef=i,this._ngZone=r,this._platform=s,this._ariaDescriber=o,this._focusMonitor=a,this._dir=c,this._defaultOptions=u,this._position="below",this._disabled=!1,this._viewInitialized=!1,this._pointerExitEventsInitialized=!1,this._viewportMargin=8,this._cssClassPrefix="mat",this.showDelay=this._defaultOptions.showDelay,this.hideDelay=this._defaultOptions.hideDelay,this.touchGestures="auto",this._message="",this._passiveListeners=[],this._destroyed=new P,this._handleKeydown=t=>{this._isTooltipVisible()&&27===t.keyCode&&!Qp(t)&&(t.preventDefault(),t.stopPropagation(),this._ngZone.run(()=>this.hide(0)))},this._scrollStrategy=l,this._document=h,u&&(u.position&&(this.position=u.position),u.touchGestures&&(this.touchGestures=u.touchGestures)),c.change.pipe(Wd(this._destroyed)).subscribe(()=>{this._overlayRef&&this._updatePosition(this._overlayRef)}),r.runOutsideAngular(()=>{e.nativeElement.addEventListener("keydown",this._handleKeydown)})}get position(){return this._position}set position(t){var e;t!==this._position&&(this._position=t,this._overlayRef&&(this._updatePosition(this._overlayRef),null===(e=this._tooltipInstance)||void 0===e||e.show(0),this._overlayRef.updatePosition()))}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t),this._disabled?this.hide(0):this._setupPointerEnterEventsIfNeeded()}get message(){return this._message}set message(t){this._ariaDescriber.removeDescription(this._elementRef.nativeElement,this._message,"tooltip"),this._message=null!=t?String(t).trim():"",!this._message&&this._isTooltipVisible()?this.hide(0):(this._setupPointerEnterEventsIfNeeded(),this._updateTooltipMessage(),this._ngZone.runOutsideAngular(()=>{Promise.resolve().then(()=>{this._ariaDescriber.describe(this._elementRef.nativeElement,this.message,"tooltip")})}))}get tooltipClass(){return this._tooltipClass}set tooltipClass(t){this._tooltipClass=t,this._tooltipInstance&&this._setTooltipClass(this._tooltipClass)}ngAfterViewInit(){this._viewInitialized=!0,this._setupPointerEnterEventsIfNeeded(),this._focusMonitor.monitor(this._elementRef).pipe(Wd(this._destroyed)).subscribe(t=>{t?"keyboard"===t&&this._ngZone.run(()=>this.show()):this._ngZone.run(()=>this.hide(0))})}ngOnDestroy(){const t=this._elementRef.nativeElement;clearTimeout(this._touchstartTimeout),this._overlayRef&&(this._overlayRef.dispose(),this._tooltipInstance=null),t.removeEventListener("keydown",this._handleKeydown),this._passiveListeners.forEach(([e,n])=>{t.removeEventListener(e,n,K_)}),this._passiveListeners.length=0,this._destroyed.next(),this._destroyed.complete(),this._ariaDescriber.removeDescription(t,this.message,"tooltip"),this._focusMonitor.stopMonitoring(t)}show(t=this.showDelay){if(this.disabled||!this.message||this._isTooltipVisible()&&!this._tooltipInstance._showTimeoutId&&!this._tooltipInstance._hideTimeoutId)return;const e=this._createOverlay();this._detach(),this._portal=this._portal||new Np(this._tooltipComponent,this._viewContainerRef),this._tooltipInstance=e.attach(this._portal).instance,this._tooltipInstance.afterHidden().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._setTooltipClass(this._tooltipClass),this._updateTooltipMessage(),this._tooltipInstance.show(t)}hide(t=this.hideDelay){this._tooltipInstance&&this._tooltipInstance.hide(t)}toggle(){this._isTooltipVisible()?this.hide():this.show()}_isTooltipVisible(){return!!this._tooltipInstance&&this._tooltipInstance.isVisible()}_createOverlay(){if(this._overlayRef)return this._overlayRef;const t=this._scrollDispatcher.getAncestorScrollContainers(this._elementRef),e=this._overlay.position().flexibleConnectedTo(this._elementRef).withTransformOriginOn(`.${this._cssClassPrefix}-tooltip`).withFlexibleDimensions(!1).withViewportMargin(this._viewportMargin).withScrollableContainers(t);return e.positionChanges.pipe(Wd(this._destroyed)).subscribe(t=>{this._updateCurrentPositionClass(t.connectionPair),this._tooltipInstance&&t.scrollableViewProperties.isOverlayClipped&&this._tooltipInstance.isVisible()&&this._ngZone.run(()=>this.hide(0))}),this._overlayRef=this._overlay.create({direction:this._dir,positionStrategy:e,panelClass:`${this._cssClassPrefix}-${Y_}`,scrollStrategy:this._scrollStrategy()}),this._updatePosition(this._overlayRef),this._overlayRef.detachments().pipe(Wd(this._destroyed)).subscribe(()=>this._detach()),this._overlayRef.outsidePointerEvents().pipe(Wd(this._destroyed)).subscribe(()=>{var t;return null===(t=this._tooltipInstance)||void 0===t?void 0:t._handleBodyInteraction()}),this._overlayRef}_detach(){this._overlayRef&&this._overlayRef.hasAttached()&&this._overlayRef.detach(),this._tooltipInstance=null}_updatePosition(t){const e=t.getConfig().positionStrategy,n=this._getOrigin(),i=this._getOverlayPosition();e.withPositions([this._addOffset(Object.assign(Object.assign({},n.main),i.main)),this._addOffset(Object.assign(Object.assign({},n.fallback),i.fallback))])}_addOffset(t){return t}_getOrigin(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e||"below"==e?n={originX:"center",originY:"above"==e?"top":"bottom"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={originX:"start",originY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={originX:"end",originY:"center"});const{x:i,y:r}=this._invertPosition(n.originX,n.originY);return{main:n,fallback:{originX:i,originY:r}}}_getOverlayPosition(){const t=!this._dir||"ltr"==this._dir.value,e=this.position;let n;"above"==e?n={overlayX:"center",overlayY:"bottom"}:"below"==e?n={overlayX:"center",overlayY:"top"}:"before"==e||"left"==e&&t||"right"==e&&!t?n={overlayX:"end",overlayY:"center"}:("after"==e||"right"==e&&t||"left"==e&&!t)&&(n={overlayX:"start",overlayY:"center"});const{x:i,y:r}=this._invertPosition(n.overlayX,n.overlayY);return{main:n,fallback:{overlayX:i,overlayY:r}}}_updateTooltipMessage(){this._tooltipInstance&&(this._tooltipInstance.message=this.message,this._tooltipInstance._markForCheck(),this._ngZone.onMicrotaskEmpty.pipe(Gp(1),Wd(this._destroyed)).subscribe(()=>{this._tooltipInstance&&this._overlayRef.updatePosition()}))}_setTooltipClass(t){this._tooltipInstance&&(this._tooltipInstance.tooltipClass=t,this._tooltipInstance._markForCheck())}_invertPosition(t,e){return"above"===this.position||"below"===this.position?"top"===e?e="bottom":"bottom"===e&&(e="top"):"end"===t?t="start":"start"===t&&(t="end"),{x:t,y:e}}_updateCurrentPositionClass(t){const{overlayY:e,originX:n,originY:i}=t;let r;if(r="center"===e?this._dir&&"rtl"===this._dir.value?"end"===n?"left":"right":"start"===n?"left":"right":"bottom"===e&&"top"===i?"above":"below",r!==this._currentPosition){const t=this._overlayRef;if(t){const e=`${this._cssClassPrefix}-${Y_}-`;t.removePanelClass(e+this._currentPosition),t.addPanelClass(e+r)}this._currentPosition=r}}_setupPointerEnterEventsIfNeeded(){this._disabled||!this.message||!this._viewInitialized||this._passiveListeners.length||(this._platformSupportsMouseEvents()?this._passiveListeners.push(["mouseenter",()=>{this._setupPointerExitEventsIfNeeded(),this.show()}]):"off"!==this.touchGestures&&(this._disableNativeGesturesIfNecessary(),this._passiveListeners.push(["touchstart",()=>{this._setupPointerExitEventsIfNeeded(),clearTimeout(this._touchstartTimeout),this._touchstartTimeout=setTimeout(()=>this.show(),500)}])),this._addListeners(this._passiveListeners))}_setupPointerExitEventsIfNeeded(){if(this._pointerExitEventsInitialized)return;this._pointerExitEventsInitialized=!0;const t=[];if(this._platformSupportsMouseEvents())t.push(["mouseleave",()=>this.hide()],["wheel",t=>this._wheelListener(t)]);else if("off"!==this.touchGestures){this._disableNativeGesturesIfNecessary();const e=()=>{clearTimeout(this._touchstartTimeout),this.hide(this._defaultOptions.touchendHideDelay)};t.push(["touchend",e],["touchcancel",e])}this._addListeners(t),this._passiveListeners.push(...t)}_addListeners(t){t.forEach(([t,e])=>{this._elementRef.nativeElement.addEventListener(t,e,K_)})}_platformSupportsMouseEvents(){return!this._platform.IOS&&!this._platform.ANDROID}_wheelListener(t){if(this._isTooltipVisible()){const e=this._document.elementFromPoint(t.clientX,t.clientY),n=this._elementRef.nativeElement;e!==n&&!n.contains(e)&&this.hide()}}_disableNativeGesturesIfNecessary(){const t=this.touchGestures;if("off"!==t){const e=this._elementRef.nativeElement,n=e.style;("on"===t||"INPUT"!==e.nodeName&&"TEXTAREA"!==e.nodeName)&&(n.userSelect=n.msUserSelect=n.webkitUserSelect=n.MozUserSelect="none"),("on"===t||!e.draggable)&&(n.webkitUserDrag="none"),n.touchAction="none",n.webkitTapHighlightColor="transparent"}}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(void 0),ea(Op),ea(void 0),ea(Yu))},t.\u0275dir=se({type:t,inputs:{showDelay:["matTooltipShowDelay","showDelay"],hideDelay:["matTooltipHideDelay","hideDelay"],touchGestures:["matTooltipTouchGestures","touchGestures"],position:["matTooltipPosition","position"],disabled:["matTooltipDisabled","disabled"],message:["matTooltip","message"],tooltipClass:["matTooltipClass","tooltipClass"]}}),t})(),ew=(()=>{class t extends tw{constructor(t,e,n,i,r,s,o,a,l,c,u,h){super(t,e,n,i,r,s,o,a,l,c,u,h),this._tooltipComponent=iw}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(Pp),ea(hc),ea(xu),ea(pp),ea(hg),ea(Mg),ea(Q_),ea(Op,8),ea(J_,8),ea(Yu))},t.\u0275dir=se({type:t,selectors:[["","matTooltip",""]],hostAttrs:[1,"mat-tooltip-trigger"],exportAs:["matTooltip"],features:[jo]}),t})(),nw=(()=>{class t{constructor(t){this._changeDetectorRef=t,this._visibility="initial",this._closeOnInteraction=!1,this._onHide=new P}show(t){clearTimeout(this._hideTimeoutId),this._closeOnInteraction=!0,this._showTimeoutId=setTimeout(()=>{this._visibility="visible",this._showTimeoutId=void 0,this._onShow(),this._markForCheck()},t)}hide(t){clearTimeout(this._showTimeoutId),this._hideTimeoutId=setTimeout(()=>{this._visibility="hidden",this._hideTimeoutId=void 0,this._markForCheck()},t)}afterHidden(){return this._onHide}isVisible(){return"visible"===this._visibility}ngOnDestroy(){clearTimeout(this._showTimeoutId),clearTimeout(this._hideTimeoutId),this._onHide.complete()}_animationStart(){this._closeOnInteraction=!1}_animationDone(t){const e=t.toState;"hidden"===e&&!this.isVisible()&&this._onHide.next(),("visible"===e||"hidden"===e)&&(this._closeOnInteraction=!0)}_handleBodyInteraction(){this._closeOnInteraction&&this.hide(0)}_markForCheck(){this._changeDetectorRef.markForCheck()}_onShow(){}}return t.\u0275fac=function(e){return new(e||t)(ea(tc))},t.\u0275dir=se({type:t}),t})(),iw=(()=>{class t extends nw{constructor(t,e){super(t),this._breakpointObserver=e,this._isHandset=this._breakpointObserver.observe("(max-width: 599.98px) and (orientation: portrait), (max-width: 959.98px) and (orientation: landscape)")}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(R_))},t.\u0275cmp=Jt({type:t,selectors:[["mat-tooltip-component"]],hostAttrs:["aria-hidden","true"],hostVars:2,hostBindings:function(t,e){2&t&&La("zoom","visible"===e._visibility?1:null)},features:[jo],decls:3,vars:7,consts:[[1,"mat-tooltip",3,"ngClass"]],template:function(t,e){if(1&t&&(ra(0,"div",0),fa("@state.start",function(){return e._animationStart()})("@state.done",function(t){return e._animationDone(t)}),Mc(1,"async"),Za(2),sa()),2&t){let t;ja("mat-tooltip-handset",null==(t=Ic(1,5,e._isHandset))?null:t.matches),na("ngClass",e.tooltipClass)("@state",e._visibility),ws(2),Ja(e.message)}},directives:[mh],pipes:[Dh],styles:[".mat-tooltip-panel{pointer-events:none !important}.mat-tooltip{color:#fff;border-radius:4px;margin:14px;max-width:250px;padding-left:8px;padding-right:8px;overflow:hidden;text-overflow:ellipsis}.cdk-high-contrast-active .mat-tooltip{outline:solid 1px}.mat-tooltip-handset{margin:24px;padding-left:16px;padding-right:16px}\n"],encapsulation:2,data:{animation:[X_.tooltipState]},changeDetection:0}),t})(),rw=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[Z_],imports:[[Lg,Rh,Rf,Ny],Ny,Ip]}),t})();function sw(t,e,n,i){var r,s=arguments.length,o=s<3?e:null===i?i=Object.getOwnPropertyDescriptor(e,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,n,i);else for(var a=t.length-1;a>=0;a--)(r=t[a])&&(o=(s<3?r(o):s>3?r(e,n,o):r(e,n))||o);return s>3&&o&&Object.defineProperty(e,n,o),o}function ow(t,e){return function(n,i){e(n,i,t)}}function aw(t,e){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(t,e)}function lw(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{l(i.next(t))}catch(e){s(e)}}function a(t){try{l(i.throw(t))}catch(e){s(e)}}function l(t){t.done?r(t.value):function(t){return t instanceof n?t:new n(function(e){e(t)})}(t.value).then(o,a)}l((i=i.apply(t,e||[])).next())})}function cw(t){if("undefined"!=typeof window&&"object"==typeof window.process&&"renderer"===window.process.type||"undefined"!=typeof process&&"object"==typeof process.versions&&Boolean(process.versions.electron))return!0;const e="object"==typeof navigator&&"string"==typeof navigator.userAgent&&navigator.userAgent,n=t||e;return!!(n&&n.indexOf("Electron")>=0)}function uw(){return!("object"==typeof process&&"[object process]"===String(process)&&!process.browser)||cw()}const hw="undefined"!=typeof __VERSION__?__VERSION__:"untranspiled source",dw=uw();class pw{constructor(t,e,n="sessionStorage"){this.storage=function(e){try{const t=window[e],n="__storage_test__";return t.setItem(n,n),t.removeItem(n),t}catch(t){return null}}(n),this.id=t,this.config={},Object.assign(this.config,e),this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){return this.config={},this.updateConfiguration(t)}updateConfiguration(t){if(Object.assign(this.config,t),this.storage){const t=JSON.stringify(this.config);this.storage.setItem(this.id,t)}return this}_loadConfiguration(){let t={};if(this.storage){const e=this.storage.getItem(this.id);t=e?JSON.parse(e):{}}return Object.assign(this.config,t),this}}function fw(t,e,n,i=600){const r=t.src.replace(/\(/g,"%28").replace(/\)/g,"%29");t.width>i&&(n=Math.min(n,i/t.width));const s=t.width*n,o=t.height*n,a=["font-size:1px;","padding:".concat(Math.floor(o/2),"px ").concat(Math.floor(s/2),"px;"),"line-height:".concat(o,"px;"),"background:url(".concat(r,");"),"background-size:".concat(s,"px ").concat(o,"px;"),"color:transparent;"].join("");return["".concat(e," %c+"),a]}const gw={BLACK:30,RED:31,GREEN:32,YELLOW:33,BLUE:34,MAGENTA:35,CYAN:36,WHITE:37,BRIGHT_BLACK:90,BRIGHT_RED:91,BRIGHT_GREEN:92,BRIGHT_YELLOW:93,BRIGHT_BLUE:94,BRIGHT_MAGENTA:95,BRIGHT_CYAN:96,BRIGHT_WHITE:97};function mw(t){return"string"==typeof t?gw[t.toUpperCase()]||gw.WHITE:t}function bw(t,e){if(!t)throw new Error(e||"Assertion failed")}const yw={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document,process:"object"==typeof process&&process},vw=yw.window||yw.self||yw.global,_w=yw.process||{};function ww(){let t;if(dw&&vw.performance)t=vw.performance.now();else if(_w.hrtime){const e=_w.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}console;const xw={debug:dw&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},Sw={enabled:!0,level:0};function Ew(){}const Cw={},Ow={once:!0};function Tw(t){for(const e in t)for(const n in t[e])return n||"untitled";return"empty"}let kw=(()=>{class t{constructor({id:t}={id:""}){this.id=t,this.VERSION=hw,this._startTs=ww(),this._deltaTs=ww(),this.LOG_THROTTLE_TIMEOUT=0,this._storage=new pw("__probe-".concat(this.id,"__"),Sw),this.userData={},this.timeStamp("".concat(this.id," started")),function(t,e=["constructor"]){const n=Object.getPrototypeOf(t),i=Object.getOwnPropertyNames(n);for(const r of i)"function"==typeof t[r]&&(e.find(t=>r===t)||(t[r]=t[r].bind(t)))}(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((ww()-this._startTs).toPrecision(10))}getDelta(){return Number((ww()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(t=!0){return this._storage.updateConfiguration({enabled:t}),this}setLevel(t){return this._storage.updateConfiguration({level:t}),this}assert(t,e){bw(t,e)}warn(t){return this._getLogFunction(0,t,xw.warn,arguments,Ow)}error(t){return this._getLogFunction(0,t,xw.error,arguments)}deprecated(t,e){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(e,"` instead"))}removed(t,e){return this.error("`".concat(t,"` has been removed. Use `").concat(e,"` instead"))}probe(t,e){return this._getLogFunction(t,e,xw.log,arguments,{time:!0,once:!0})}log(t,e){return this._getLogFunction(t,e,xw.debug,arguments)}info(t,e){return this._getLogFunction(t,e,console.info,arguments)}once(t,e){return this._getLogFunction(t,e,xw.debug||xw.info,arguments,Ow)}table(t,e,n){return e?this._getLogFunction(t,e,console.table||Ew,n&&[n],{tag:Tw(e)}):Ew}image({logLevel:t,priority:e,image:i,message:r="",scale:s=1}){return this._shouldLog(t||e)?dw?function({image:t,message:e="",scale:n=1}){if("string"==typeof t){const i=new Image;return i.onload=()=>{const t=fw(i,e,n);console.log(...t)},i.src=t,Ew}const i=t.nodeName||"";if("img"===i.toLowerCase())return console.log(...fw(t,e,n)),Ew;if("canvas"===i.toLowerCase()){const i=new Image;return i.onload=()=>console.log(...fw(i,e,n)),i.src=t.toDataURL(),Ew}return Ew}({image:i,message:r,scale:s}):function({image:t,message:e="",scale:r=1}){let s=null;try{s=n(75307)}catch(i){}return s?()=>s(t,{fit:"box",width:"".concat(Math.round(80*r),"%")}).then(t=>console.log(t)):Ew}({image:i,message:r,scale:s}):Ew}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}get(t){return this._storage.config[t]}set(t,e){this._storage.updateConfiguration({[t]:e})}time(t,e){return this._getLogFunction(t,e,console.time?console.time:console.info)}timeEnd(t,e){return this._getLogFunction(t,e,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,e){return this._getLogFunction(t,e,console.timeStamp||Ew)}group(t,e,n={collapsed:!1}){n=Pw({logLevel:t,message:e,opts:n});const{collapsed:i}=n;return n.method=(i?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}groupCollapsed(t,e,n={}){return this.group(t,e,Object.assign({},n,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",console.groupEnd||Ew)}withGroup(t,e,n){this.group(t,e)();try{n()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&this.getLevel()>=Aw(t)}_getLogFunction(t,e,n,i=[],r){if(this._shouldLog(t)){r=Pw({logLevel:t,message:e,args:i,opts:r}),bw(n=n||r.method),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=ww();const s=r.tag||r.message;if(r.once){if(Cw[s])return Ew;Cw[s]=ww()}return e=function(t,e,n){if("string"==typeof e){const i=n.time?function(t,e=8){const n=Math.max(e-t.length,0);return"".concat(" ".repeat(n)).concat(t)}(function(t){let e;return e=t<10?"".concat(t.toFixed(2),"ms"):t<100?"".concat(t.toFixed(1),"ms"):t<1e3?"".concat(t.toFixed(0),"ms"):"".concat((t/1e3).toFixed(2),"s"),e}(n.total)):"";e=function(t,e,n){return!dw&&"string"==typeof t&&(e&&(e=mw(e),t="\x1b[".concat(e,"m").concat(t,"\x1b[39m")),n&&(e=mw(n),t="\x1b[".concat(n+10,"m").concat(t,"\x1b[49m"))),t}(e=n.time?"".concat(t,": ").concat(i," ").concat(e):"".concat(t,": ").concat(e),n.color,n.background)}return e}(this.id,r.message,r),n.bind(console,e,...r.args)}return Ew}}return t.VERSION=hw,t})();function Aw(t){if(!t)return 0;let e;switch(typeof t){case"number":e=t;break;case"object":e=t.logLevel||t.priority||0;break;default:return 0}return bw(Number.isFinite(e)&&e>=0),e}function Pw(t){const{logLevel:e,message:n}=t;t.logLevel=Aw(e);const i=t.args?Array.from(t.args):[];for(;i.length&&i.shift()!==n;);switch(t.args=i,typeof e){case"string":case"function":void 0!==n&&i.unshift(n),t.message=e;break;case"object":Object.assign(t,e)}"function"==typeof t.message&&(t.message=t.message());const r=typeof t.message;return bw("string"===r||"object"===r),Object.assign(t,t.opts)}var Mw=new kw({id:"deck"});const Iw={DEFAULT:-1,LNGLAT:1,METER_OFFSETS:2,LNGLAT_OFFSETS:3,CARTESIAN:0};Object.defineProperty(Iw,"IDENTITY",{get:()=>Mw.deprecated("COORDINATE_SYSTEM.IDENTITY","COORDINATE_SYSTEM.CARTESIAN")()||0});const Dw={WEB_MERCATOR:1,GLOBE:2,WEB_MERCATOR_AUTO_OFFSET:4,IDENTITY:0},Rw={click:{handler:"onClick"},panstart:{handler:"onDragStart"},panmove:{handler:"onDrag"},panend:{handler:"onDragEnd"}},Nw=new kw({id:"luma.gl"});function Lw(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function jw(t){return"undefined"!=typeof WebGLRenderingContext&&t instanceof WebGLRenderingContext||"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&Number.isFinite(t._version))}function Fw(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}function Bw(t){return Lw(jw(t),"Invalid WebGLRenderingContext"),t}function Vw(t){return Lw(Fw(t),"Requires WebGL2"),t}var zw=n(84761);const Uw={};const Hw=function t(e){const n=e.gl;this.ext=e,this.isAlive=!0,this.hasBeenBound=!1,this.elementArrayBuffer=null,this.attribs=new Array(e.maxVertexAttribs);for(let i=0;i{zw.CO.console&&zw.CO.console.log&&zw.CO.console.log("OESVertexArrayObject emulation library context restored"),e.reset_()},!0),this.reset_()};$w.prototype.VERTEX_ARRAY_BINDING_OES=34229,$w.prototype.reset_=function(){if(void 0!==this.vertexArrayObjects)for(let t=0;tFw(t)?void 0:0,Yw={3074:t=>Fw(t)?void 0:36064,35723:t=>Fw(t)?void 0:4352,35977:Xw,32937:Xw,36795:(t,e)=>{const n=Fw(t)?t.getExtension("EXT_disjoint_timer_query_webgl2"):t.getExtension("EXT_disjoint_timer_query");return n&&n.GPU_DISJOINT_EXT?e(n.GPU_DISJOINT_EXT):0},37445:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_VENDOR_WEBGL||7936)},37446:(t,e)=>{const n=t.getExtension(qw);return e(n&&n.UNMASKED_RENDERER_WEBGL||7937)},34047:(t,e)=>{const n=t.luma.extensions.EXT_texture_filter_anisotropic;return n?e(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):1},32883:Xw,35071:Xw,37447:Xw,36063:(t,e)=>{if(!Fw(t)){const n=t.getExtension(Ww);return n?e(n.MAX_COLOR_ATTACHMENTS_WEBGL):0}},35379:Xw,35374:Xw,35377:Xw,34852:t=>{if(!Fw(t)){const e=t.getExtension(Ww);return e?e.MAX_DRAW_BUFFERS_WEBGL:0}},36203:t=>t.getExtension(Gw)?2147483647:65535,33001:t=>t.getExtension(Gw)?16777216:65535,33e3:t=>16777216,37157:Xw,35373:Xw,35657:Xw,36183:Xw,37137:Xw,34045:Xw,35978:Xw,35979:Xw,35968:Xw,35376:Xw,35375:Xw,35659:Xw,37154:Xw,35371:Xw,35658:Xw,35076:Xw,35077:Xw,35380:Xw},Kw="ANGLE_instanced_arrays",Qw={OES_vertex_array_object:{meta:{suffix:"OES"},createVertexArray:()=>{Lw(!1,"VertexArray requires WebGL2 or OES_vertex_array_object extension")},deleteVertexArray:()=>{},bindVertexArray:()=>{},isVertexArray:()=>!1},[Kw]:{meta:{suffix:"ANGLE"},vertexAttribDivisor(t,e){Lw(0===e,"WebGL instanced rendering not supported")},drawElementsInstanced:()=>{},drawArraysInstanced:()=>{}},WEBGL_draw_buffers:{meta:{suffix:"WEBGL"},drawBuffers:()=>{Lw(!1)}},EXT_disjoint_timer_query:{meta:{suffix:"EXT"},createQuery:()=>{Lw(!1)},deleteQuery:()=>{Lw(!1)},beginQuery:()=>{Lw(!1)},endQuery:()=>{},getQuery(t,e){return this.getQueryObject(t,e)},getQueryParameter(t,e){return this.getQueryObject(t,e)},getQueryObject:()=>{}}},Zw={readBuffer:(t,e,n)=>{Fw(t)&&e(n)},getVertexAttrib:(t,e,n,i)=>{const{webgl2:r,ext:s}=function(t,e){return{webgl2:Fw(t),ext:t.getExtension("ANGLE_instanced_arrays")}}(t);let o;switch(i){case 35069:o=!!r&&void 0;break;case 35070:o=r||s?void 0:0}return void 0!==o?o:e(n,i)},getProgramParameter:(t,e,n,i)=>{if(!Fw(t))switch(i){case 35967:return 35981;case 35971:case 35382:return 0}return e(n,i)},getInternalformatParameter:(t,e,n,i,r)=>{if(!Fw(t))switch(r){case 32937:return new Int32Array([0])}return t.getInternalformatParameter(n,i,r)},getTexParameter(t,e,n,i){switch(i){case 34046:const{extensions:e}=t.luma,n=e.EXT_texture_filter_anisotropic;i=n&&n.TEXTURE_MAX_ANISOTROPY_EXT||34046}return e(n,i)},getParameter:function(t,e,n){const i=Yw[n],r="function"==typeof i?i(t,e,n):i;return void 0!==r?r:e(n)},hint:(t,e,n,i)=>e(n,i)};function Jw(t,{extension:e,target:n,target2:i}){const r=Qw[e];Lw(r);const{meta:s={}}=r,{suffix:o=""}=s,a=t.getExtension(e);for(const l of Object.keys(r)){const e=`${l}${o}`;let s=null;"meta"===l||"function"==typeof t[l]||(a&&"function"==typeof a[e]?s=(...t)=>a[e](...t):"function"==typeof r[l]&&(s=r[l].bind(n))),s&&(n[l]=s,i[l]=s)}}("undefined"!=typeof global?global:window).polyfillContext=function(t){t.luma=t.luma||{};const{luma:e}=t;return e.polyfilled||(function(t){if("function"==typeof t.createVertexArray)return;const e=t.getSupportedExtensions;t.getSupportedExtensions=function(){const t=e.call(this)||[];return t.indexOf("OES_vertex_array_object")<0&&t.push("OES_vertex_array_object"),t};const n=t.getExtension;t.getExtension=function(e){return n.call(this,e)||("OES_vertex_array_object"!==e?null:(t.__OESVertexArrayObject||(this.__OESVertexArrayObject=new $w(this)),this.__OESVertexArrayObject))}}(t),function(t){t.luma.extensions={};const e=t.getSupportedExtensions()||[];for(const n of e)t.luma[n]=t.getExtension(n)}(t),function(t,e){for(const n of Object.getOwnPropertyNames(e))"overrides"!==n&&Jw(t,{extension:n,target:t.luma,target2:t})}(t,Qw),function(t,{target:e,target2:n}){Object.keys(Zw).forEach(i=>{if("function"==typeof Zw[i]){const r=t[i]?t[i].bind(t):()=>{},s=Zw[i].bind(null,t,r);e[i]=s,n[i]=s}})}(t,{target:e,target2:t}),e.polyfilled=!0),t};const tx={3042:!1,32773:new Float32Array([0,0,0,0]),32777:32774,34877:32774,32969:1,32968:0,32971:1,32970:0,3106:new Float32Array([0,0,0,0]),3107:[!0,!0,!0,!0],2884:!1,2885:1029,2929:!1,2931:1,2932:513,2928:new Float32Array([0,1]),2930:!0,3024:!0,36006:null,2886:2305,33170:4352,2849:1,32823:!1,32824:0,10752:0,32938:1,32939:!1,3089:!1,3088:new Int32Array([0,0,1024,1024]),2960:!1,2961:0,2968:4294967295,36005:4294967295,2962:519,2967:0,2963:4294967295,34816:519,36003:0,36004:4294967295,2964:7680,2965:7680,2966:7680,34817:7680,34818:7680,34819:7680,2978:[0,0,1024,1024],3333:4,3317:4,37440:!1,37441:!1,37443:37444,35723:4352,36010:null,35977:!1,3330:0,3332:0,3331:0,3314:0,32878:0,3316:0,3315:0,32877:0},ex=(t,e,n)=>e?t.enable(n):t.disable(n),nx=(t,e,n)=>t.hint(n,e),ix=(t,e,n)=>t.pixelStorei(n,e);function rx(t){return Array.isArray(t)||ArrayBuffer.isView(t)}const sx={3042:ex,32773:(t,e)=>t.blendColor(...e),32777:"blendEquation",34877:"blendEquation",32969:"blendFunc",32968:"blendFunc",32971:"blendFunc",32970:"blendFunc",3106:(t,e)=>t.clearColor(...e),3107:(t,e)=>t.colorMask(...e),2884:ex,2885:(t,e)=>t.cullFace(e),2929:ex,2931:(t,e)=>t.clearDepth(e),2932:(t,e)=>t.depthFunc(e),2928:(t,e)=>t.depthRange(...e),2930:(t,e)=>t.depthMask(e),3024:ex,35723:nx,36006:(t,e)=>{const n=Fw(t)?36009:36160;return t.bindFramebuffer(n,e)},2886:(t,e)=>t.frontFace(e),33170:nx,2849:(t,e)=>t.lineWidth(e),32823:ex,32824:"polygonOffset",10752:"polygonOffset",35977:ex,32938:"sampleCoverage",32939:"sampleCoverage",3089:ex,3088:(t,e)=>t.scissor(...e),2960:ex,2961:(t,e)=>t.clearStencil(e),2968:(t,e)=>t.stencilMaskSeparate(1028,e),36005:(t,e)=>t.stencilMaskSeparate(1029,e),2962:"stencilFuncFront",2967:"stencilFuncFront",2963:"stencilFuncFront",34816:"stencilFuncBack",36003:"stencilFuncBack",36004:"stencilFuncBack",2964:"stencilOpFront",2965:"stencilOpFront",2966:"stencilOpFront",34817:"stencilOpBack",34818:"stencilOpBack",34819:"stencilOpBack",2978:(t,e)=>t.viewport(...e),3333:ix,3317:ix,37440:ix,37441:ix,37443:ix,3330:ix,3332:ix,3331:ix,36010:(t,e)=>t.bindFramebuffer(36008,e),3314:ix,32878:ix,3316:ix,3315:ix,32877:ix,framebuffer:(t,e)=>t.bindFramebuffer(36160,e&&"handle"in e?e.handle:e),blend:(t,e)=>e?t.enable(3042):t.disable(3042),blendColor:(t,e)=>t.blendColor(...e),blendEquation:(t,e)=>{e=rx(e)?e:[e,e],t.blendEquationSeparate(...e)},blendFunc:(t,e)=>{e=rx(e)&&2===e.length?[...e,...e]:e,t.blendFuncSeparate(...e)},clearColor:(t,e)=>t.clearColor(...e),clearDepth:(t,e)=>t.clearDepth(e),clearStencil:(t,e)=>t.clearStencil(e),colorMask:(t,e)=>t.colorMask(...e),cull:(t,e)=>e?t.enable(2884):t.disable(2884),cullFace:(t,e)=>t.cullFace(e),depthTest:(t,e)=>e?t.enable(2929):t.disable(2929),depthFunc:(t,e)=>t.depthFunc(e),depthMask:(t,e)=>t.depthMask(e),depthRange:(t,e)=>t.depthRange(...e),dither:(t,e)=>e?t.enable(3024):t.disable(3024),derivativeHint:(t,e)=>{t.hint(35723,e)},frontFace:(t,e)=>t.frontFace(e),mipmapHint:(t,e)=>t.hint(33170,e),lineWidth:(t,e)=>t.lineWidth(e),polygonOffsetFill:(t,e)=>e?t.enable(32823):t.disable(32823),polygonOffset:(t,e)=>t.polygonOffset(...e),sampleCoverage:(t,e)=>t.sampleCoverage(...e),scissorTest:(t,e)=>e?t.enable(3089):t.disable(3089),scissor:(t,e)=>t.scissor(...e),stencilTest:(t,e)=>e?t.enable(2960):t.disable(2960),stencilMask:(t,e)=>{e=rx(e)?e:[e,e];const[n,i]=e;t.stencilMaskSeparate(1028,n),t.stencilMaskSeparate(1029,i)},stencilFunc:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilFuncSeparate(1028,n,i,r),t.stencilFuncSeparate(1029,s,o,a)},stencilOp:(t,e)=>{e=rx(e)&&3===e.length?[...e,...e]:e;const[n,i,r,s,o,a]=e;t.stencilOpSeparate(1028,n,i,r),t.stencilOpSeparate(1029,s,o,a)},viewport:(t,e)=>t.viewport(...e)};function ox(t,e,n){return void 0!==e[t]?e[t]:n[t]}const ax={blendEquation:(t,e,n)=>t.blendEquationSeparate(ox(32777,e,n),ox(34877,e,n)),blendFunc:(t,e,n)=>t.blendFuncSeparate(ox(32969,e,n),ox(32968,e,n),ox(32971,e,n),ox(32970,e,n)),polygonOffset:(t,e,n)=>t.polygonOffset(ox(32824,e,n),ox(10752,e,n)),sampleCoverage:(t,e,n)=>t.sampleCoverage(ox(32938,e,n),ox(32939,e,n)),stencilFuncFront:(t,e,n)=>t.stencilFuncSeparate(1028,ox(2962,e,n),ox(2967,e,n),ox(2963,e,n)),stencilFuncBack:(t,e,n)=>t.stencilFuncSeparate(1029,ox(34816,e,n),ox(36003,e,n),ox(36004,e,n)),stencilOpFront:(t,e,n)=>t.stencilOpSeparate(1028,ox(2964,e,n),ox(2965,e,n),ox(2966,e,n)),stencilOpBack:(t,e,n)=>t.stencilOpSeparate(1029,ox(34817,e,n),ox(34818,e,n),ox(34819,e,n))},lx={enable:(t,e)=>t({[e]:!0}),disable:(t,e)=>t({[e]:!1}),pixelStorei:(t,e,n)=>t({[e]:n}),hint:(t,e,n)=>t({[e]:n}),bindFramebuffer:(t,e,n)=>{switch(e){case 36160:return t({36006:n,36010:n});case 36009:return t({36006:n});case 36008:return t({36010:n});default:return null}},blendColor:(t,e,n,i,r)=>t({32773:new Float32Array([e,n,i,r])}),blendEquation:(t,e)=>t({32777:e,34877:e}),blendEquationSeparate:(t,e,n)=>t({32777:e,34877:n}),blendFunc:(t,e,n)=>t({32969:e,32968:n,32971:e,32970:n}),blendFuncSeparate:(t,e,n,i,r)=>t({32969:e,32968:n,32971:i,32970:r}),clearColor:(t,e,n,i,r)=>t({3106:new Float32Array([e,n,i,r])}),clearDepth:(t,e)=>t({2931:e}),clearStencil:(t,e)=>t({2961:e}),colorMask:(t,e,n,i,r)=>t({3107:[e,n,i,r]}),cullFace:(t,e)=>t({2885:e}),depthFunc:(t,e)=>t({2932:e}),depthRange:(t,e,n)=>t({2928:new Float32Array([e,n])}),depthMask:(t,e)=>t({2930:e}),frontFace:(t,e)=>t({2886:e}),lineWidth:(t,e)=>t({2849:e}),polygonOffset:(t,e,n)=>t({32824:e,10752:n}),sampleCoverage:(t,e,n)=>t({32938:e,32939:n}),scissor:(t,e,n,i,r)=>t({3088:new Int32Array([e,n,i,r])}),stencilMask:(t,e)=>t({2968:e,36005:e}),stencilMaskSeparate:(t,e,n)=>t({[1028===e?2968:36005]:n}),stencilFunc:(t,e,n,i)=>t({2962:e,2967:n,2963:i,34816:e,36003:n,36004:i}),stencilFuncSeparate:(t,e,n,i,r)=>t({[1028===e?2962:34816]:n,[1028===e?2967:36003]:i,[1028===e?2963:36004]:r}),stencilOp:(t,e,n,i)=>t({2964:e,2965:n,2966:i,34817:e,34818:n,34819:i}),stencilOpSeparate:(t,e,n,i,r)=>t({[1028===e?2964:34817]:n,[1028===e?2965:34818]:i,[1028===e?2966:34819]:r}),viewport:(t,e,n,i,r)=>t({2978:[e,n,i,r]})},cx=(t,e)=>t.isEnabled(e),ux={3042:cx,2884:cx,2929:cx,3024:cx,32823:cx,32926:cx,32928:cx,3089:cx,2960:cx,35977:cx};function hx(t){for(const e in t)return!1;return!0}function dx(t,e){if(t===e)return!0;const n=Array.isArray(t)||ArrayBuffer.isView(t),i=Array.isArray(e)||ArrayBuffer.isView(e);if(n&&i&&t.length===e.length){for(let n=0;n{})}={}){this.gl=t,this.program=null,this.stateStack=[],this.enable=!0,this.cache=e?function(t,e){if("number"==typeof(e=e||tx)){const n=e,i=ux[n];return i?i(t,n):t.getParameter(n)}const n=Array.isArray(e)?e:Object.keys(e),i={};for(const r of n){const e=ux[r];i[r]=e?e(t,Number(r)):t.getParameter(Number(r))}return i}(t):Object.assign({},tx),this.log=n,this._updateCache=this._updateCache.bind(this),Object.seal(this)}push(t={}){this.stateStack.push({})}pop(){Lw(this.stateStack.length>0),yx(this.gl,this.stateStack[this.stateStack.length-1]),this.stateStack.pop()}_updateCache(t){let e,n=!1;const i=this.stateStack.length>0&&this.stateStack[this.stateStack.length-1];for(const r in t){Lw(void 0!==r);const s=t[r],o=this.cache[r];dx(s,o)||(n=!0,e=o,i&&!(r in i)&&(i[r]=o),this.cache[r]=s)}return{valueChanged:n,oldValue:e}}}function mx(t,e={}){const{enable:n=!0,copyState:i}=e;if(Lw(void 0!==i),!t.state){const e="undefined"!=typeof global?global:window,{polyfillContext:n}=e;n&&n(t),t.state=new gx(t,{copyState:i}),function(t){const e=t.useProgram.bind(t);t.useProgram=function(n){t.state.program!==n&&(e(n),t.state.program=n)}}(t);for(const i in lx)fx(t,i,lx[i]);px(t,"getParameter"),px(t,"isEnabled")}return t.state.enable=n,t}function bx(t){Lw(t.state),t.state.pop()}function yx(t,e){if(Lw(jw(t),"setParameters requires a WebGL context"),hx(e))return;const n={};for(const r in e){const i=Number(r),s=sx[r];s&&("string"==typeof s?n[s]=!0:s(t,e[r],i))}const i=t.state&&t.state.cache;if(i)for(const r in n)ax[r](t,e,i)}function vx(t,e,n){if(hx(e))return n(t);const{nocatch:i=!0}=e;let r;if(function(t){t.state||mx(t,{copyState:!1}),t.state.push()}(t),yx(t,e),i)r=n(t),bx(t);else try{r=n(t)}finally{bx(t)}return r}function _x(t){const{luma:e}=t;if(t.canvas&&e){const{clientWidth:n}=e.canvasSizeInfo;return n?t.drawingBufferWidth/n:1}return 1}function wx(t,e,n=!0){return function(t,e,n,i,r){const s=xx(t[0],e,n);let o=Sx(t[1],e,i,r),a=xx(t[0]+1,e,n);const l=a===n-1?a:a-1;let c;return a=Sx(t[1]+1,e,i,r),r?(a=0===a?a:a+1,c=o,o=a):c=a===i-1?a:a-1,{x:s,y:o,width:Math.max(l-s+1,1),height:Math.max(c-o+1,1)}}(e,_x(t),t.drawingBufferWidth,t.drawingBufferHeight,n)}function xx(t,e,n){return Math.min(Math.round(t*e),n-1)}function Sx(t,e,n,i){return i?Math.max(0,n-1-Math.round(t*e)):Math.min(Math.round(t*e),n-1)}const Ex=(0,zw.jU)(),Cx=Ex&&"undefined"!=typeof document,Ox={webgl2:!0,webgl1:!0,throwOnError:!0,manageState:!0,canvas:null,debug:!1,width:800,height:600};function Tx(t={}){Lw(Ex,"createGLContext only available in the browser.\nCreate your own headless context or use 'createHeadlessContext' from @luma.gl/test-utils"),t=Object.assign({},Ox,t);const{width:e,height:n}=t;function i(e){if(t.throwOnError)throw new Error(e);return console.error(e),null}let r;t.onError=i;const{canvas:s}=t,o=function({canvas:t,width:e=800,height:n=600,onError:i}){let r;return"string"==typeof t?(Cx&&"complete"===document.readyState||i(`createGLContext called on canvas '${t}' before page was loaded`),r=document.getElementById(t)):t?r=t:(r=document.createElement("canvas"),r.id="lumagl-canvas",r.style.width=Number.isFinite(e)?`${e}px`:"100%",r.style.height=Number.isFinite(n)?`${n}px`:"100%",document.body.insertBefore(r,document.body.firstChild)),r}({canvas:s,width:e,height:n,onError:i});return r=function(t,e){const{onError:n}=e;let i=null;const r=t=>i=t.statusMessage||i;t.addEventListener("webglcontextcreationerror",r,!1);const{webgl1:s=!0,webgl2:o=!0}=e;let a=null;return o&&(a=a||t.getContext("webgl2",e),a=a||t.getContext("experimental-webgl2",e)),s&&(a=a||t.getContext("webgl",e),a=a||t.getContext("experimental-webgl",e)),t.removeEventListener("webglcontextcreationerror",r,!1),a?(e.onContextLost&&t.addEventListener("webglcontextlost",e.onContextLost,!1),e.onContextRestored&&t.addEventListener("webglcontextrestored",e.onContextRestored,!1),a):n(`Failed to create ${o&&!s?"WebGL2":"WebGL"} context: ${i||"Unknown error"}`)}(o,t),r?(r=kx(r,t),function(t){const e=Fw(t)?"WebGL2":"WebGL1",n=function(t){const e=t.getParameter(7936),n=t.getParameter(7937),i=t.getExtension("WEBGL_debug_renderer_info");return{vendor:i&&t.getParameter(i.UNMASKED_VENDOR_WEBGL||7936)||e,renderer:i&&t.getParameter(i.UNMASKED_RENDERER_WEBGL||7937)||n,vendorMasked:e,rendererMasked:n,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t);Nw.info(1,`${e}${t.debug?" debug":""} context ${n?`(${n.vendor},${n.renderer})`:""}`)()}(r),r):null}function kx(t,e={}){if(!t||t._instrumented)return t;t._version=t._version||function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext?2:1}(t),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{},e=Object.assign({},Ox,e);const{manageState:n,debug:i}=e;return n&&mx(t,{copyState:!1,log:(...t)=>Nw.log(1,...t)()}),Ex&&i&&(zw.CO.makeDebugContext?(t=zw.CO.makeDebugContext(t,e),Nw.level=Math.max(Nw.level,1)):Nw.warn('WebGL debug mode not activated. import "@luma.gl/debug" to enable.')()),t._instrumented=!0,t}function Ax(){let t;if("undefined"!=typeof window&&window.performance)t=window.performance.now();else if("undefined"!=typeof process&&process.hrtime){const e=process.hrtime();t=1e3*e[0]+e[1]/1e6}else t=Date.now();return t}class Px{constructor(t,e){this.name=t,this.type=e,this.sampleSize=1,this.reset()}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=Ax(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(Ax()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}}class Mx{constructor({id:t,stats:e}){this.id=t,this.stats={},this._initializeStats(e),Object.seal(this)}get(t,e="count"){return this._getOrCreate({name:t,type:e})}get size(){return Object.keys(this.stats).length}reset(){for(const t in this.stats)this.stats[t].reset();return this}forEach(t){for(const e in this.stats)t(this.stats[e])}getTable(){const t={};return this.forEach(e=>{t[e.name]={time:e.time||0,count:e.count||0,average:e.getAverageTime()||0,hz:e.getHz()||0}}),t}_initializeStats(t=[]){t.forEach(t=>this._getOrCreate(t))}_getOrCreate(t){if(!t||!t.name)return null;const{name:e,type:n}=t;return this.stats[e]||(this.stats[e]=t instanceof Px?t:new Px(e,n)),this.stats[e]}}const Ix="8.5.7",Dx=new class{constructor(){this.stats=new Map}get(t){return this.stats.has(t)||this.stats.set(t,new Mx({id:t})),this.stats.get(t)}};if(zw.CO.luma&&zw.CO.luma.VERSION!==Ix)throw new Error(`luma.gl - multiple VERSIONs detected: ${zw.CO.luma.VERSION} vs 8.5.7`);function Rx(t,e){if(!t)throw new Error(e||"luma.gl: assertion failed.")}function Nx(t,e){if("string"!=typeof e)return e;const n=Number(e);if(!isNaN(n))return n;const i=t[e=e.replace(/^.*\./,"")];return Rx(void 0!==i,`Accessing undefined constant GL.${e}`),i}function Lx(t,e){e=Number(e);for(const n in t)if(t[n]===e)return`GL.${n}`;return String(e)}zw.CO.luma||((0,zw.jU)()&&Nw.log(1,"luma.gl 8.5.7 - set luma.log.level=1 (or higher) to trace rendering")(),zw.CO.luma=zw.CO.luma||{VERSION:Ix,version:Ix,log:Nw,stats:Dx,globals:{modules:{},nodeIO:{}}});const jx={};function Fx(t="id"){return jx[t]=jx[t]||1,`${t}-${jx[t]++}`}function Bx(t){return Rx("number"==typeof t,"Input must be a number"),t&&0==(t&t-1)}function Vx(t){let e=!0;for(const n in t){e=!1;break}return e}function zx(t,e,n,i){const r=`See luma.gl ${n} Upgrade Guide at https://luma.gl/docs/upgrade-guide`,s=Object.getPrototypeOf(t);i.forEach(t=>{s.methodName||(s[t]=()=>{throw Nw.removed(`Calling removed method ${e}.${t}: `,r)(),new Error(t)})})}const Ux="Resource subclass must define virtual methods";class Hx{constructor(t,e={}){Bw(t);const{id:n,userData:i={}}=e;this.gl=t,this.gl2=t,this.id=n||Fx(this.constructor.name),this.userData=i,this._bound=!1,this._handle=e.handle,void 0===this._handle&&(this._handle=this._createHandle()),this.byteLength=0,this._addStats()}toString(){return`${this.constructor.name}(${this.id})`}get handle(){return this._handle}delete({deleteChildren:t=!1}={}){const e=this._handle&&this._deleteHandle(this._handle);return this._handle&&this._removeStats(),this._handle=null,e&&t&&e.filter(Boolean).forEach(t=>t.delete()),this}bind(t=this.handle){if("function"!=typeof t)return this._bindHandle(t),this;let e;return this._bound?e=t():(this._bindHandle(this.handle),this._bound=!0,e=t(),this._bound=!1,this._bindHandle(null)),e}unbind(){this.bind(null)}getParameter(t,e={}){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension)){const e=n.webgl1,i="webgl2"in n?n.webgl2:n.webgl1;return t?i:e}}return this._getParameter(t,e)}getParameters(t={}){const{parameters:e,keys:n}=t,i=this.constructor.PARAMETERS||{},r=Fw(this.gl),s={},o=e||Object.keys(i);for(const a of o){const e=i[a];if(e&&(!("webgl2"in e)||r)&&(!("extension"in e)||this.gl.getExtension(e.extension))){const i=n?Lx(this.gl,a):a;s[i]=this.getParameter(a,t),n&&"GLenum"===e.type&&(s[i]=Lx(this.gl,s[i]))}}return s}setParameter(t,e){Rx(t=Nx(this.gl,t));const n=(this.constructor.PARAMETERS||{})[t];if(n){const t=Fw(this.gl);if("webgl2"in n&&!t||"extension"in n&&!this.gl.getExtension(n.extension))throw new Error("Parameter not available on this platform");"GLenum"===n.type&&(e=Nx(e))}return this._setParameter(t,e),this}setParameters(t){for(const e in t)this.setParameter(e,t[e]);return this}stubRemovedMethods(t,e,n){return zx(this,t,e,n)}initialize(t){}_createHandle(){throw new Error(Ux)}_deleteHandle(){throw new Error(Ux)}_bindHandle(t){throw new Error(Ux)}_getOptsFromHandle(){throw new Error(Ux)}_getParameter(t,e){throw new Error(Ux)}_setParameter(t,e){throw new Error(Ux)}_context(){return this.gl.luma=this.gl.luma||{},this.gl.luma}_addStats(){const t=this.constructor.name,e=Dx.get("Resource Counts");e.get("Resources Created").incrementCount(),e.get(`${t}s Created`).incrementCount(),e.get(`${t}s Active`).incrementCount()}_removeStats(){const t=this.constructor.name;Dx.get("Resource Counts").get(`${t}s Active`).decrementCount()}_trackAllocatedMemory(t,e=this.constructor.name){const n=Dx.get("Memory Usage");n.get("GPU Memory").addCount(t),n.get(`${e} Memory`).addCount(t),this.byteLength=t}_trackDeallocatedMemory(t=this.constructor.name){const e=Dx.get("Memory Usage");e.get("GPU Memory").subtractCount(this.byteLength),e.get(`${t} Memory`).subtractCount(this.byteLength),this.byteLength=0}}function $x(t){switch(ArrayBuffer.isView(t)?t.constructor:t){case Float32Array:return 5126;case Uint16Array:return 5123;case Uint32Array:return 5125;case Uint8Array:case Uint8ClampedArray:return 5121;case Int8Array:return 5120;case Int16Array:return 5122;case Int32Array:return 5124;default:throw new Error("Failed to deduce GL constant from typed array")}}function Gx(t,{clamped:e=!0}={}){switch(t){case 5126:return Float32Array;case 5123:case 33635:case 32819:case 32820:return Uint16Array;case 5125:return Uint32Array;case 5121:return e?Uint8ClampedArray:Uint8Array;case 5120:return Int8Array;case 5122:return Int16Array;case 5124:return Int32Array;default:throw new Error("Failed to deduce typed array type from GL constant")}}function Wx({data:t,width:e,height:n}){const i=Math.round(e/2),r=Math.round(n/2),s=new Uint8Array(i*r*4);for(let o=0;othis._assign(t)),Object.freeze(this)}toString(){return JSON.stringify(this)}get BYTES_PER_ELEMENT(){return Kx.getBytesPerElement(this)}get BYTES_PER_VERTEX(){return Kx.getBytesPerVertex(this)}_assign(t={}){return void 0!==(t=qx("Accessor",t,Yx)).type&&(this.type=t.type,(5124===t.type||5125===t.type)&&(this.integer=!0)),void 0!==t.size&&(this.size=t.size),void 0!==t.offset&&(this.offset=t.offset),void 0!==t.stride&&(this.stride=t.stride),void 0!==t.normalized&&(this.normalized=t.normalized),void 0!==t.integer&&(this.integer=t.integer),void 0!==t.divisor&&(this.divisor=t.divisor),void 0!==t.buffer&&(this.buffer=t.buffer),void 0!==t.index&&(this.index="boolean"==typeof t.index?t.index?1:0:t.index),void 0!==t.instanced&&(this.divisor=t.instanced?1:0),void 0!==t.isInstanced&&(this.divisor=t.isInstanced?1:0),this}}const Qx={offset:"accessor.offset",stride:"accessor.stride",type:"accessor.type",size:"accessor.size",divisor:"accessor.divisor",normalized:"accessor.normalized",integer:"accessor.integer",instanced:"accessor.divisor",isInstanced:"accessor.divisor"},Zx={removedProps:{},replacedProps:{bytes:"byteLength"},deprecatedProps:Qx},Jx={removedProps:Qx};class tS extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Buffer","v6.0",["layout","setLayout","getIndexedParameter"]),this.target=e.target||(this.gl.webgl2?36662:34962),this.initialize(e),Object.seal(this)}getElementCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerElement(t))}getVertexCount(t=this.accessor){return Math.round(this.byteLength/Kx.getBytesPerVertex(t))}initialize(t={}){return ArrayBuffer.isView(t)&&(t={data:t}),Number.isFinite(t)&&(t={byteLength:t}),t=qx("Buffer",t,Zx),this.usage=t.usage||35044,this.debugData=null,this.setAccessor(Object.assign({},t,t.accessor)),t.data?this._setData(t.data,t.offset,t.byteLength):this._setByteLength(t.byteLength||0),this}setProps(t){return"accessor"in(t=qx("Buffer",t,Jx))&&this.setAccessor(t.accessor),this}setAccessor(t){return delete(t=Object.assign({},t)).buffer,this.accessor=new Kx(t),this}reallocate(t){return t>this.byteLength?(this._setByteLength(t),!0):(this.bytesUsed=t,!1)}setData(t){return this.initialize(t)}subData(t){ArrayBuffer.isView(t)&&(t={data:t});const{data:e,offset:n=0,srcOffset:i=0}=t,r=t.byteLength||t.length;Rx(e);const s=this.gl.webgl2?36663:this.target;return this.gl.bindBuffer(s,this.handle),0!==i||void 0!==r?(Vw(this.gl),this.gl.bufferSubData(this.target,n,e,i,r)):this.gl.bufferSubData(s,n,e),this.gl.bindBuffer(s,null),this.debugData=null,this._inferType(e),this}copyData({sourceBuffer:t,readOffset:e=0,writeOffset:n=0,size:i}){const{gl:r}=this;return Vw(r),r.bindBuffer(36662,t.handle),r.bindBuffer(36663,this.handle),r.copyBufferSubData(36662,36663,e,n,i),r.bindBuffer(36662,null),r.bindBuffer(36663,null),this.debugData=null,this}getData({dstData:t=null,srcByteOffset:e=0,dstOffset:n=0,length:i=0}={}){Vw(this.gl);const r=Gx(this.accessor.type||5126,{clamped:!1}),s=this._getAvailableElementCount(e),o=n;let a,l;t?(l=t.length,a=l-o):(a=Math.min(s,i||s),l=o+a);const c=Math.min(s,a);return Rx((i=i||c)<=c),t=t||new r(l),this.gl.bindBuffer(36662,this.handle),this.gl.getBufferSubData(36662,e,t,n,i),this.gl.bindBuffer(36662,null),t}bind({target:t=this.target,index:e=this.accessor&&this.accessor.index,offset:n=0,size:i}={}){return 35345===t||35982===t?void 0!==i?this.gl.bindBufferRange(t,e,this.handle,n,i):(Rx(0===n),this.gl.bindBufferBase(t,e,this.handle)):this.gl.bindBuffer(t,this.handle),this}unbind({target:t=this.target,index:e=this.accessor&&this.accessor.index}={}){return 35345===t||35982===t?this.gl.bindBufferBase(t,e,null):this.gl.bindBuffer(t,null),this}getDebugData(){return this.debugData?{data:this.debugData,changed:!1}:(this.debugData=this.getData({length:Math.min(10,this.byteLength)}),{data:this.debugData,changed:!0})}invalidateDebugData(){this.debugData=null}_setData(t,e=0,n=t.byteLength+e){Rx(ArrayBuffer.isView(t)),this._trackDeallocatedMemory();const i=this._getTarget();this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,this.usage),this.gl.bufferSubData(i,e,t),this.gl.bindBuffer(i,null),this.debugData=t.slice(0,10),this.bytesUsed=n,this._trackAllocatedMemory(n);const r=$x(t);return Rx(r),this.setAccessor(new Kx(this.accessor,{type:r})),this}_setByteLength(t,e=this.usage){Rx(t>=0),this._trackDeallocatedMemory();let n=t;0===t&&(n=new Float32Array(0));const i=this._getTarget();return this.gl.bindBuffer(i,this.handle),this.gl.bufferData(i,n,e),this.gl.bindBuffer(i,null),this.usage=e,this.debugData=null,this.bytesUsed=t,this._trackAllocatedMemory(t),this}_getTarget(){return this.gl.webgl2?36663:this.target}_getAvailableElementCount(t){const e=t/Gx(this.accessor.type||5126,{clamped:!1}).BYTES_PER_ELEMENT;return this.getElementCount()-e}_inferType(t){this.accessor.type||this.setAccessor(new Kx(this.accessor,{type:$x(t)}))}_createHandle(){return this.gl.createBuffer()}_deleteHandle(){this.gl.deleteBuffer(this.handle),this._trackDeallocatedMemory()}_getParameter(t){this.gl.bindBuffer(this.target,this.handle);const e=this.gl.getBufferParameter(this.target,t);return this.gl.bindBuffer(this.target,null),e}get type(){return Nw.deprecated("Buffer.type","Buffer.accessor.type")(),this.accessor.type}get bytes(){return Nw.deprecated("Buffer.bytes","Buffer.byteLength")(),this.byteLength}setByteLength(t){return Nw.deprecated("setByteLength","reallocate")(),this.reallocate(t)}updateAccessor(t){return Nw.deprecated("updateAccessor(...)","setAccessor(new Accessor(buffer.accessor, ...)")(),this.accessor=new Kx(this.accessor,t),this}}const eS={6407:{dataFormat:6407,types:[5121,33635]},6408:{dataFormat:6408,types:[5121,32819,32820]},6406:{dataFormat:6406,types:[5121]},6409:{dataFormat:6409,types:[5121]},6410:{dataFormat:6410,types:[5121]},33326:{dataFormat:6403,types:[5126],gl2:!0},33328:{dataFormat:33319,types:[5126],gl2:!0},34837:{dataFormat:6407,types:[5126],gl2:!0},34836:{dataFormat:6408,types:[5126],gl2:!0}},nS={6403:1,36244:1,33319:2,33320:2,6407:3,36248:3,6408:4,36249:4,6402:1,34041:1,6406:1,6409:1,6410:2},iS={5126:4,5125:4,5124:4,5123:2,5122:2,5131:2,5120:1,5121:1},rS=[9729,9728],sS=zw.CO.WebGLBuffer||function(){};class oS extends Hx{static isSupported(t,e={}){const{format:n,linearFiltering:i}=e;let r=!0;return n&&(r=r&&function(t,e){const n=eS[e];if(!n)return!1;if(void 0===n.gl1&&void 0===n.gl2)return!0;const i=Fw(t)&&n.gl2||n.gl1;return"string"==typeof i?t.getExtension(i):i}(t,n),r=r&&(!i||function(t,e){const n=eS[e];switch(n&&n.types[0]){case 5126:return t.getExtension("OES_texture_float_linear");case 5131:return t.getExtension("OES_texture_half_float_linear");default:return!0}}(t,n))),r}constructor(t,e){const{id:n=Fx("texture"),handle:i,target:r}=e;super(t,{id:n,handle:i}),this.target=r,this.textureUnit=void 0,this.loaded=!1,this.width=void 0,this.height=void 0,this.depth=void 0,this.format=void 0,this.type=void 0,this.dataFormat=void 0,this.border=void 0,this.textureUnit=void 0,this.mipmaps=void 0}toString(){return`Texture(${this.id},${this.width}x${this.height})`}initialize(t={}){let e=t.data;if(e instanceof Promise)return e.then(e=>this.initialize(Object.assign({},t,{pixels:e,data:e}))),this;const n="undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement;if(n&&e.readyStatethis.initialize(t)),this;const{pixels:i=null,format:r=6408,border:s=0,recreate:o=!1,parameters:a={},pixelStore:l={},textureUnit:c}=t;e||(e=i);let{width:u,height:h,dataFormat:d,type:p,compressed:f=!1,mipmaps:g=!0}=t;const{depth:m=0}=t;return({width:u,height:h,compressed:f,dataFormat:d,type:p}=this._deduceParameters({format:r,type:p,dataFormat:d,compressed:f,data:e,width:u,height:h})),this.width=u,this.height=h,this.depth=m,this.format=r,this.type=p,this.dataFormat=d,this.border=s,this.textureUnit=c,Number.isFinite(this.textureUnit)&&(this.gl.activeTexture(33984+this.textureUnit),this.gl.bindTexture(this.target,this.handle)),g&&this._isNPOT()&&(Nw.warn(`texture: ${this} is Non-Power-Of-Two, disabling mipmaping`)(),g=!1,this._updateForNPOT(a)),this.mipmaps=g,this.setImageData({data:e,width:u,height:h,depth:m,format:r,type:p,dataFormat:d,border:s,mipmaps:g,parameters:l,compressed:f}),g&&this.generateMipmap(),this.setParameters(a),o&&(this.data=e),n&&(this._video={video:e,parameters:a,lastTime:e.readyState>=HTMLVideoElement.HAVE_CURRENT_DATA?e.currentTime:-1}),this}update(){if(this._video){const{video:t,parameters:e,lastTime:n}=this._video;if(n===t.currentTime||t.readyState{this.gl.generateMipmap(this.target)}),this.gl.bindTexture(this.target,null),this)}setImageData(t){this._trackDeallocatedMemory("Texture");const{target:e=this.target,pixels:n=null,level:i=0,format:r=this.format,border:s=this.border,offset:o=0,parameters:a={}}=t;let{data:l=null,type:c=this.type,width:u=this.width,height:h=this.height,dataFormat:d=this.dataFormat,compressed:p=!1}=t;l||(l=n),({type:c,dataFormat:d,compressed:p,width:u,height:h}=this._deduceParameters({format:r,type:c,dataFormat:d,compressed:p,data:l,width:u,height:h}));const{gl:f}=this;f.bindTexture(this.target,this.handle);let g,m=null;return({data:l,dataType:m}=this._getDataType({data:l,compressed:p})),vx(this.gl,a,()=>{switch(m){case"null":f.texImage2D(e,i,r,u,h,s,d,c,l);break;case"typed-array":f.texImage2D(e,i,r,u,h,s,d,c,l,o);break;case"buffer":g=Vw(f),g.bindBuffer(35052,l.handle||l),g.texImage2D(e,i,r,u,h,s,d,c,o),g.bindBuffer(35052,null);break;case"browser-object":Fw(f)?f.texImage2D(e,i,r,u,h,s,d,c,l):f.texImage2D(e,i,r,d,c,l);break;case"compressed":for(const[t,n]of l.entries())f.compressedTexImage2D(e,t,n.format,n.width,n.height,s,n.data);break;default:Rx(!1,"Unknown image data type")}}),this._trackAllocatedMemory(l&&l.byteLength?l.byteLength:this.width*this.height*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}setSubImageData({target:t=this.target,pixels:e=null,data:n=null,x:i=0,y:r=0,width:s=this.width,height:o=this.height,level:a=0,format:l=this.format,type:c=this.type,dataFormat:u=this.dataFormat,compressed:h=!1,offset:d=0,border:p=this.border,parameters:f={}}){if(({type:c,dataFormat:u,compressed:h,width:s,height:o}=this._deduceParameters({format:l,type:c,dataFormat:u,compressed:h,data:n,width:s,height:o})),Rx(0===this.depth,"texSubImage not supported for 3D textures"),n||(n=e),n&&n.data){const t=n;n=t.data,s=t.shape[0],o=t.shape[1]}n instanceof tS&&(n=n.handle),this.gl.bindTexture(this.target,this.handle),vx(this.gl,f,()=>{if(h)this.gl.compressedTexSubImage2D(t,a,i,r,s,o,l,n);else if(null===n)this.gl.texSubImage2D(t,a,i,r,s,o,u,c,null);else if(ArrayBuffer.isView(n))this.gl.texSubImage2D(t,a,i,r,s,o,u,c,n,d);else if(n instanceof sS){const e=Vw(this.gl);e.bindBuffer(35052,n),e.texSubImage2D(t,a,i,r,s,o,u,c,d),e.bindBuffer(35052,null)}else Fw(this.gl)?Vw(this.gl).texSubImage2D(t,a,i,r,s,o,u,c,n):this.gl.texSubImage2D(t,a,i,r,u,c,n)}),this.gl.bindTexture(this.target,null)}copyFramebuffer(t={}){return Nw.error("Texture.copyFramebuffer({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}getActiveUnit(){return this.gl.getParameter(34016)-33984}bind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,this.handle),t}unbind(t=this.textureUnit){const{gl:e}=this;return void 0!==t&&(this.textureUnit=t,e.activeTexture(33984+t)),e.bindTexture(this.target,null),t}_getDataType({data:t,compressed:e=!1}){return e?{data:t,dataType:"compressed"}:null===t?{data:t,dataType:"null"}:ArrayBuffer.isView(t)?{data:t,dataType:"typed-array"}:t instanceof tS?{data:t.handle,dataType:"buffer"}:t instanceof sS?{data:t,dataType:"buffer"}:{data:t,dataType:"browser-object"}}_deduceParameters(t){const{format:e,data:n}=t;let{width:i,height:r,dataFormat:s,type:o,compressed:a}=t;const l=eS[e];return s=s||l&&l.dataFormat,o=o||l&&l.types[0],a=a||l&&l.compressed,({width:i,height:r}=this._deduceImageSize(n,i,r)),{dataFormat:s,type:o,compressed:a,width:i,height:r,format:e,data:n}}_deduceImageSize(t,e,n){let i;return i="undefined"!=typeof ImageData&&t instanceof ImageData?{width:t.width,height:t.height}:"undefined"!=typeof HTMLImageElement&&t instanceof HTMLImageElement?{width:t.naturalWidth,height:t.naturalHeight}:"undefined"!=typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?{width:t.width,height:t.height}:"undefined"!=typeof HTMLVideoElement&&t instanceof HTMLVideoElement?{width:t.videoWidth,height:t.videoHeight}:t?{width:e,height:n}:{width:e>=0?e:1,height:n>=0?n:1},Rx(i,"Could not deduced texture size"),Rx(void 0===e||i.width===e,"Deduced texture width does not match supplied width"),Rx(void 0===n||i.height===n,"Deduced texture height does not match supplied height"),i}_createHandle(){return this.gl.createTexture()}_deleteHandle(){this.gl.deleteTexture(this.handle),this._trackDeallocatedMemory("Texture")}_getParameter(t){switch(t){case 4096:return this.width;case 4097:return this.height;default:this.gl.bindTexture(this.target,this.handle);const e=this.gl.getTexParameter(this.target,t);return this.gl.bindTexture(this.target,null),e}}_setParameter(t,e){switch(this.gl.bindTexture(this.target,this.handle),e=this._getNPOTParam(t,e),t){case 33082:case 33083:this.gl.texParameterf(this.handle,t,e);break;case 4096:case 4097:Rx(!1);break;default:this.gl.texParameteri(this.target,t,e)}return this.gl.bindTexture(this.target,null),this}_isNPOT(){return!(Fw(this.gl)||!this.width||!this.height||Bx(this.width)&&Bx(this.height))}_updateForNPOT(t){void 0===t[this.gl.TEXTURE_MIN_FILTER]&&(t[this.gl.TEXTURE_MIN_FILTER]=this.gl.LINEAR),void 0===t[this.gl.TEXTURE_WRAP_S]&&(t[this.gl.TEXTURE_WRAP_S]=this.gl.CLAMP_TO_EDGE),void 0===t[this.gl.TEXTURE_WRAP_T]&&(t[this.gl.TEXTURE_WRAP_T]=this.gl.CLAMP_TO_EDGE)}_getNPOTParam(t,e){if(this._isNPOT())switch(t){case 10241:-1===rS.indexOf(e)&&(e=9729);break;case 10242:case 10243:33071!==e&&(e=33071)}return e}}function aS(t,e){return Rx("string"==typeof t),t=""+t,new Promise((n,i)=>{try{const r=new Image;r.onload=()=>n(r),r.onerror=()=>i(new Error(`Could not load image ${t}.`)),r.crossOrigin=e&&e.crossOrigin||"anonymous",r.src=t}catch(r){i(r)}})}class lS extends oS{static isSupported(t,e){return oS.isSupported(t,e)}constructor(t,e={}){Bw(t),(e instanceof Promise||"string"==typeof e)&&(e={data:e}),"string"==typeof e.data&&(e=Object.assign({},e,{data:aS(e.data)})),super(t,Object.assign({},e,{target:3553})),this.initialize(e),Object.seal(this)}}const cS="EXT_color_buffer_float";var uS={33189:{bpp:2},33190:{gl2:!0,bpp:3},36012:{gl2:!0,bpp:4},36168:{bpp:1},34041:{bpp:4},35056:{gl2:!0,bpp:4},36013:{gl2:!0,bpp:5},32854:{bpp:2},36194:{bpp:2},32855:{bpp:2},33321:{gl2:!0,bpp:1},33330:{gl2:!0,bpp:1},33329:{gl2:!0,bpp:1},33332:{gl2:!0,bpp:2},33331:{gl2:!0,bpp:2},33334:{gl2:!0,bpp:4},33333:{gl2:!0,bpp:4},33323:{gl2:!0,bpp:2},33336:{gl2:!0,bpp:2},33335:{gl2:!0,bpp:2},33338:{gl2:!0,bpp:4},33337:{gl2:!0,bpp:4},33340:{gl2:!0,bpp:8},33339:{gl2:!0,bpp:8},32849:{gl2:!0,bpp:3},32856:{gl2:!0,bpp:4},32857:{gl2:!0,bpp:4},36220:{gl2:!0,bpp:4},36238:{gl2:!0,bpp:4},36975:{gl2:!0,bpp:4},36214:{gl2:!0,bpp:8},36232:{gl2:!0,bpp:8},36226:{gl2:!0,bpp:16},36208:{gl2:!0,bpp:16},33325:{gl2:cS,bpp:2},33327:{gl2:cS,bpp:4},34842:{gl2:cS,bpp:8},33326:{gl2:cS,bpp:4},33328:{gl2:cS,bpp:8},34836:{gl2:cS,bpp:16},35898:{gl2:cS,bpp:4}};class hS extends Hx{static isSupported(t,{format:e}={format:null}){return!e||function(t,e,n){const i=n[e];if(!i)return!1;const r=Fw(t)&&i.gl2||i.gl1;return"string"==typeof r?t.getExtension(r):r}(t,e,uS)}static getSamplesForFormat(t,{format:e}){return t.getInternalformatParameter(36161,e,32937)}constructor(t,e={}){super(t,e),this.initialize(e),Object.seal(this)}initialize({format:t,width:e=1,height:n=1,samples:i=0}){return Rx(t,"Needs format"),this._trackDeallocatedMemory(),this.gl.bindRenderbuffer(36161,this.handle),0!==i&&Fw(this.gl)?this.gl.renderbufferStorageMultisample(36161,i,t,e,n):this.gl.renderbufferStorage(36161,t,e,n),this.format=t,this.width=e,this.height=n,this.samples=i,this._trackAllocatedMemory(this.width*this.height*(this.samples||1)*uS[this.format].bpp),this}resize({width:t,height:e}){return t!==this.width||e!==this.height?this.initialize({width:t,height:e,format:this.format,samples:this.samples}):this}_createHandle(){return this.gl.createRenderbuffer()}_deleteHandle(){this.gl.deleteRenderbuffer(this.handle),this._trackDeallocatedMemory()}_bindHandle(t){this.gl.bindRenderbuffer(36161,t)}_syncHandle(t){this.format=this.getParameter(36164),this.width=this.getParameter(36162),this.height=this.getParameter(36163),this.samples=this.getParameter(36011)}_getParameter(t){return this.gl.bindRenderbuffer(36161,this.handle),this.gl.getRenderbufferParameter(36161,t)}}const dS="clear: bad arguments";function pS(t,{framebuffer:e=null,color:n=null,depth:i=null,stencil:r=null}={}){const s={};e&&(s.framebuffer=e);let o=0;n&&(o|=16384,!0!==n&&(s.clearColor=n)),i&&(o|=256,!0!==i&&(s.clearDepth=i)),r&&(o|=1024,!0!==i&&(s.clearStencil=i)),Rx(0!==o,dS),vx(t,s,()=>{t.clear(o)})}function fS(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}function gS(t){return function(){var e=this,n=arguments;return new Promise(function(i,r){var s=t.apply(e,n);function o(t){fS(s,i,r,o,a,"next",t)}function a(t){fS(s,i,r,o,a,"throw",t)}o(void 0)})}}const mS=[34069,34070,34071,34072,34073,34074];let bS=(()=>{class t extends oS{constructor(t,e={}){Bw(t),super(t,Object.assign({},e,{target:34067})),this.initialize(e),Object.seal(this)}initialize(t={}){const{mipmaps:e=!0,parameters:n={}}=t;return this.opts=t,this.setCubeMapImageData(t).then(()=>{this.loaded=!0,e&&this.generateMipmap(t),this.setParameters(n)}),this}subImage({face:t,data:e,x:n=0,y:i=0,mipmapLevel:r=0}){return this._subImage({target:t,data:e,x:n,y:i,mipmapLevel:r})}setCubeMapImageData({width:t,height:e,pixels:n,data:i,border:r=0,format:s=6408,type:o=5121}){var a=this;return gS(function*(){const{gl:l}=a,c=n||i,u=yield Promise.all(mS.map(t=>{const e=c[t];return Promise.all(Array.isArray(e)?e:[e])}));a.bind(),mS.forEach((n,i)=>{u[i].length>1&&!1!==a.opts.mipmaps&&Nw.warn(`${a.id} has mipmap and multiple LODs.`)(),u[i].forEach((i,a)=>{t&&e?l.texImage2D(n,a,s,t,e,r,s,o,i):l.texImage2D(n,a,s,s,o,i)})}),a.unbind()})()}setImageDataForFace(t){const{face:e,width:n,height:i,pixels:r,data:s,border:o=0,format:a=6408,type:l=5121}=t,{gl:c}=this,u=r||s;return this.bind(),u instanceof Promise?u.then(n=>this.setImageDataForFace(Object.assign({},t,{face:e,data:n,pixels:n}))):this.width||this.height?c.texImage2D(e,0,a,n,i,o,a,l,u):c.texImage2D(e,0,a,a,l,u),this}}return t.FACES=mS,t})();class yS extends oS{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e=Object.assign({depth:1},e,{target:32879,unpackFlipY:!1})),this.initialize(e),Object.seal(this)}setImageData({level:t=0,dataFormat:e=6408,width:n,height:i,depth:r=1,border:s=0,format:o,type:a=5121,offset:l=0,data:c,parameters:u={}}){return this._trackDeallocatedMemory("Texture"),this.gl.bindTexture(this.target,this.handle),vx(this.gl,u,()=>{ArrayBuffer.isView(c)&&this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,c),c instanceof tS&&(this.gl.bindBuffer(35052,c.handle),this.gl.texImage3D(this.target,t,e,n,i,r,s,o,a,l))}),this._trackAllocatedMemory(c&&c.byteLength?c.byteLength:this.width*this.height*this.depth*(nS[this.dataFormat]||4)*(iS[this.type]||1),"Texture"),this.loaded=!0,this}}function vS(t,e){const{gl:n,width:i,height:r,id:s}=t;return new SS(n,Object.assign({},e,{id:`framebuffer-for-${s}`,width:i,height:r,attachments:{36064:t}}))}function _S(t,e={}){const{sourceX:n=0,sourceY:i=0,sourceFormat:r=6408}=e;let{sourceAttachment:s=36064,target:o=null,sourceWidth:a,sourceHeight:l,sourceType:c}=e;const{framebuffer:u,deleteFramebuffer:h}=function(t){return t instanceof SS?{framebuffer:t,deleteFramebuffer:!1}:{framebuffer:vS(t),deleteFramebuffer:!0}}(t);Rx(u);const{gl:d,handle:p,attachments:f}=u;a=a||u.width,l=l||u.height,36064===s&&null===p&&(s=1028),Rx(f[s]),c=c||f[s].type,o=function(t,e,n,i,r){if(t)return t;return new(Gx(e=e||5121,{clamped:!1}))(i*r*function(t){switch(t){case 6406:case 33326:case 6403:return 1;case 33328:case 33319:return 2;case 6407:case 34837:return 3;case 6408:case 34836:return 4;default:return Rx(!1),0}}(n))}(o,c,r,a,l),c=c||$x(o);const g=d.bindFramebuffer(36160,p);return d.readPixels(n,i,a,l,r,c,o),d.bindFramebuffer(36160,g||null),h&&u.delete(),o}function wS(t,{sourceAttachment:e=36064,targetMaxHeight:n=Number.MAX_SAFE_INTEGER}={}){let i=_S(t,{sourceAttachment:e}),{width:r,height:s}=t;for(;s>n;)({data:i,width:r,height:s}=Wx({data:i,width:r,height:s}));!function({data:t,width:e,height:n,bytesPerPixel:i=4,temp:r}){const s=e*i;r=r||new Uint8Array(s);for(let o=0;o=0&&e>=0,"Width and height need to be integers"),this.width=t,this.height=e,n)for(const c in n){const i=n[c];(Array.isArray(i)?i[0]:i).resize({width:t,height:e})}else n=this._createDefaultAttachments(i,r,s,t,e);this.update({clearAttachments:!0,attachments:n,readBuffer:a,drawBuffers:l}),n&&o&&this.checkStatus()}delete(){for(const t of this.ownResources)t.delete();return super.delete(),this}update({attachments:t={},readBuffer:e,drawBuffers:n,clearAttachments:i=!1,resizeAttachments:r=!0}){this.attach(t,{clearAttachments:i,resizeAttachments:r});const{gl:s}=this,o=s.bindFramebuffer(36160,this.handle);return e&&this._setReadBuffer(e),n&&this._setDrawBuffers(n),s.bindFramebuffer(36160,o||null),this}resize(t={}){let{width:e,height:n}=t;if(null===this.handle)return Rx(void 0===e&&void 0===n),this.width=this.gl.drawingBufferWidth,this.height=this.gl.drawingBufferHeight,this;void 0===e&&(e=this.gl.drawingBufferWidth),void 0===n&&(n=this.gl.drawingBufferHeight),e!==this.width&&n!==this.height&&Nw.log(2,`Resizing framebuffer ${this.id} to ${e}x${n}`)();for(const i in this.attachments)this.attachments[i].resize({width:e,height:n});return this.width=e,this.height=n,this}attach(t,{clearAttachments:e=!1,resizeAttachments:n=!0}={}){const i={};e&&Object.keys(this.attachments).forEach(t=>{i[t]=null}),Object.assign(i,t);const r=this.gl.bindFramebuffer(36160,this.handle);for(const s in i){Rx(void 0!==s,"Misspelled framebuffer binding point?");const t=Number(s),e=i[t];let r=e;if(r)if(r instanceof hS)this._attachRenderbuffer({attachment:t,renderbuffer:r});else if(Array.isArray(e)){const[n,i=0,s=0]=e;r=n,this._attachTexture({attachment:t,texture:n,layer:i,level:s})}else this._attachTexture({attachment:t,texture:r,layer:0,level:0});else this._unattach(t);n&&r&&r.resize({width:this.width,height:this.height})}this.gl.bindFramebuffer(36160,r||null),Object.assign(this.attachments,t),Object.keys(this.attachments).filter(t=>!this.attachments[t]).forEach(t=>{delete this.attachments[t]})}checkStatus(){const t=this.getStatus();if(36053!==t)throw new Error(function(t){return(SS.STATUS||{})[t]||`Framebuffer error ${t}`}(t));return this}getStatus(){const{gl:t}=this,e=t.bindFramebuffer(36160,this.handle),n=t.checkFramebufferStatus(36160);return t.bindFramebuffer(36160,e||null),n}clear(t={}){const{color:e,depth:n,stencil:i,drawBuffers:r=[]}=t,s=this.gl.bindFramebuffer(36160,this.handle);return(e||n||i)&&pS(this.gl,{color:e,depth:n,stencil:i}),r.forEach((t,e)=>{!function(t,{framebuffer:e=null,buffer:n=6144,drawBuffer:i=0,value:r=[0,0,0,0]}={}){Vw(t),vx(t,{framebuffer:e},()=>{switch(n){case 6144:switch(r.constructor){case Int32Array:t.clearBufferiv(n,i,r);break;case Uint32Array:t.clearBufferuiv(n,i,r);break;case Float32Array:default:t.clearBufferfv(n,i,r)}break;case 6145:t.clearBufferfv(6145,0,[r]);break;case 6146:t.clearBufferiv(6146,0,[r]);break;case 34041:const[e,s]=r;t.clearBufferfi(34041,0,e,s);break;default:Rx(!1,dS)}})}(this.gl,{drawBuffer:e,value:t})}),this.gl.bindFramebuffer(36160,s||null),this}readPixels(t={}){return Nw.error("Framebuffer.readPixels() is no logner supported, use readPixelsToArray(framebuffer)")(),null}readPixelsToBuffer(t={}){return Nw.error("Framebuffer.readPixelsToBuffer()is no logner supported, use readPixelsToBuffer(framebuffer)")(),null}copyToDataUrl(t={}){return Nw.error("Framebuffer.copyToDataUrl() is no logner supported, use copyToDataUrl(framebuffer)")(),null}copyToImage(t={}){return Nw.error("Framebuffer.copyToImage() is no logner supported, use copyToImage(framebuffer)")(),null}copyToTexture(t={}){return Nw.error("Framebuffer.copyToTexture({...}) is no logner supported, use copyToTexture(source, target, opts})")(),null}blit(t={}){return Nw.error("Framebuffer.blit({...}) is no logner supported, use blit(source, target, opts)")(),null}invalidate({attachments:t=[],x:e=0,y:n=0,width:i,height:r}){const s=Vw(this.gl),o=s.bindFramebuffer(36008,this.handle);return 0===e&&0===n&&void 0===i&&void 0===r?s.invalidateFramebuffer(36008,t):s.invalidateFramebuffer(36008,t,e,n,i,r),s.bindFramebuffer(36008,o),this}getAttachmentParameter(t,e,n){let i=this._getAttachmentParameterFallback(e);return null===i&&(this.gl.bindFramebuffer(36160,this.handle),i=this.gl.getFramebufferAttachmentParameter(36160,t,e),this.gl.bindFramebuffer(36160,null)),n&&i>1e3&&(i=Lx(this.gl,i)),i}getAttachmentParameters(t=36064,e,n=this.constructor.ATTACHMENT_PARAMETERS||[]){const i={};for(const r of n)i[e?Lx(this.gl,r):r]=this.getAttachmentParameter(t,r,e);return i}getParameters(t=!0){const e=Object.keys(this.attachments),n={};for(const i of e){const e=Number(i);n[t?Lx(this.gl,e):e]=this.getAttachmentParameters(e,t)}return n}show(){return"undefined"!=typeof window&&window.open(wS(this),"luma-debug-texture"),this}log(t=0,e=""){if(t>Nw.level||"undefined"==typeof window)return this;e=e||`Framebuffer ${this.id}`;const n=wS(this,{targetMaxHeight:100});return Nw.image({logLevel:t,message:e,image:n},e)(),this}bind({target:t=36160}={}){return this.gl.bindFramebuffer(t,this.handle),this}unbind({target:t=36160}={}){return this.gl.bindFramebuffer(t,null),this}_createDefaultAttachments(t,e,n,i,r){let s=null;return t&&(s=s||{},s[36064]=new lS(this.gl,{id:`${this.id}-color0`,pixels:null,format:6408,type:5121,width:i,height:r,mipmaps:!1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.ownResources.push(s[36064])),e&&n?(s=s||{},s[33306]=new hS(this.gl,{id:`${this.id}-depth-stencil`,format:35056,width:i,height:111}),this.ownResources.push(s[33306])):e?(s=s||{},s[36096]=new hS(this.gl,{id:`${this.id}-depth`,format:33189,width:i,height:r}),this.ownResources.push(s[36096])):n&&Rx(!1),s}_unattach(t){const e=this.attachments[t];!e||(e instanceof hS?this.gl.framebufferRenderbuffer(36160,t,36161,null):this.gl.framebufferTexture2D(36160,t,3553,null,0),delete this.attachments[t])}_attachRenderbuffer({attachment:t=36064,renderbuffer:e}){const{gl:n}=this;n.framebufferRenderbuffer(36160,t,36161,e.handle),this.attachments[t]=e}_attachTexture({attachment:t=36064,texture:e,layer:n,level:i}){const{gl:r}=this;switch(r.bindTexture(e.target,e.handle),e.target){case 35866:case 32879:Vw(r).framebufferTextureLayer(36160,t,e.target,i,n);break;case 34067:const s=function(t){return t<34069?t+34069:t}(n);r.framebufferTexture2D(36160,t,s,e.handle,i);break;case 3553:r.framebufferTexture2D(36160,t,3553,e.handle,i);break;default:Rx(!1,"Illegal texture type")}r.bindTexture(e.target,null),this.attachments[t]=e}_setReadBuffer(t){const e=function(t){return Fw(t)?t:null}(this.gl);e?e.readBuffer(t):Rx(36064===t||1029===t,xS),this.readBuffer=t}_setDrawBuffers(t){const{gl:e}=this,n=Vw(e);if(n)n.drawBuffers(t);else{const n=e.getExtension("WEBGL_draw_buffers");n?n.drawBuffersWEBGL(t):Rx(1===t.length&&(36064===t[0]||1029===t[0]),xS)}this.drawBuffers=t}_getAttachmentParameterFallback(t){const e=function(t){t.luma=t.luma||{},t.luma.caps=t.luma.caps||{};for(const e in ES)void 0===t.luma.caps[e]&&(t.luma.caps[e]=TS(t,e));return t.luma.caps}(this.gl);switch(t){case 36052:return e.WEBGL2?null:0;case 33298:case 33299:case 33300:case 33301:case 33302:case 33303:return e.WEBGL2?null:8;case 33297:return e.WEBGL2?null:5125;case 33296:return e.WEBGL2||e.EXT_sRGB?null:9729;default:return null}}_createHandle(){return this.gl.createFramebuffer()}_deleteHandle(){this.gl.deleteFramebuffer(this.handle)}_bindHandle(t){return this.gl.bindFramebuffer(36160,t)}}SS.ATTACHMENT_PARAMETERS=[36049,36048,33296,33298,33299,33300,33301,33302,33303];var ES={WEBGL2:[!1,!0],VERTEX_ARRAY_OBJECT:["OES_vertex_array_object",!0],TIMER_QUERY:["EXT_disjoint_timer_query","EXT_disjoint_timer_query_webgl2"],INSTANCED_RENDERING:["ANGLE_instanced_arrays",!0],MULTIPLE_RENDER_TARGETS:["WEBGL_draw_buffers",!0],ELEMENT_INDEX_UINT32:["OES_element_index_uint",!0],BLEND_EQUATION_MINMAX:["EXT_blend_minmax",!0],FLOAT_BLEND:["EXT_float_blend"],COLOR_ENCODING_SRGB:["EXT_sRGB",!0],TEXTURE_DEPTH:["WEBGL_depth_texture",!0],TEXTURE_FLOAT:["OES_texture_float",!0],TEXTURE_HALF_FLOAT:["OES_texture_half_float",!0],TEXTURE_FILTER_LINEAR_FLOAT:["OES_texture_float_linear"],TEXTURE_FILTER_LINEAR_HALF_FLOAT:["OES_texture_half_float_linear"],TEXTURE_FILTER_ANISOTROPIC:["EXT_texture_filter_anisotropic"],COLOR_ATTACHMENT_RGBA32F:[function(t){const e=new lS(t,{format:6408,type:5126,dataFormat:6408}),n=new SS(t,{id:"test-framebuffer",check:!1,attachments:{36064:e}}),i=n.getStatus();return e.delete(),n.delete(),36053===i},"EXT_color_buffer_float"],COLOR_ATTACHMENT_FLOAT:[!1,"EXT_color_buffer_float"],COLOR_ATTACHMENT_HALF_FLOAT:["EXT_color_buffer_half_float"],GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]};function CS(t,e){return OS(t,e)}function OS(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>TS(t,e))}function TS(t,e){return t.luma=t.luma||{},t.luma.caps=t.luma.caps||{},void 0===t.luma.caps[e]&&(t.luma.caps[e]=function(t,e){const n=ES[e];let i;Rx(n,e);const r=Fw(t)&&n[1]||n[0];if("function"==typeof r)i=r(t);else if(Array.isArray(r)){i=!0;for(const e of r)i=i&&Boolean(t.getExtension(e))}else"string"==typeof r?i=Boolean(t.getExtension(r)):"boolean"==typeof r?i=r:Rx(!1);return i}(t,e)),t.luma.caps[e]||Nw.log(2,`Feature: ${e} not supported`)(),t.luma.caps[e]}class kS{constructor(t,e){this.opts=e,this.source=t}get value(){return this.source.value}getValue(){const t=this.source.getBuffer(),e=this.getAccessor();if(t)return[t,e];const{value:n}=this.source,{size:i}=e;let r=n;if(n&&n.length!==i){r=new Float32Array(i);const t=e.elementOffset||0;for(let e=0;ei&&(r=i);const s=this._pool,o=t.BYTES_PER_ELEMENT*r,a=s.findIndex(t=>t.byteLength>=o);if(a>=0){const e=new t(s.splice(a,1)[0],0,r);return n&&e.fill(0),e}return new t(r)}_release(t){if(!ArrayBuffer.isView(t))return;const e=this._pool,{buffer:n}=t,{byteLength:i}=n,r=e.findIndex(t=>t.byteLength>=i);r<0?e.push(n):(r>0||e.lengththis.props.poolSize&&e.shift()}};Math;const PS=1/180*Math.PI,MS={};function IS(t,{precision:e=MS.precision||4}={}){return t=function(t){return Math.round(t/MS.EPSILON)*MS.EPSILON}(t),`${parseFloat(t.toPrecision(e))}`}function DS(t){return Array.isArray(t)||ArrayBuffer.isView(t)&&!(t instanceof DataView)}function RS(t,e,n){if(DS(t)){n=n||function(t){return t.clone?t.clone():new Array(t.length)}(t);for(let i=0;it*PS,void 0)}(t)}function LS(t,e,n){return RS(t,t=>Math.max(e,Math.min(n,t)))}function jS(t,e,n){return DS(t)?t.map((t,i)=>jS(t,e[i],n)):n*e+(1-n)*t}function FS(t,e,n){const i=MS.EPSILON;n&&(MS.EPSILON=n);try{if(t===e)return!0;if(DS(t)&&DS(e)){if(t.length!==e.length)return!1;for(let n=0;n0?", ":"")+IS(this[n],t);return`${t.printTypes?this.constructor.name:""}[${e}]`}equals(t){if(!t||this.length!==t.length)return!1;for(let e=0;e=0&&t=0&&t0&&(dE.length=t.length,i=dE):i=hE,(e>0||Number.isFinite(n))&&(i=(Array.isArray(i)?i:Array.from(i)).slice(e,n),r.index=e-1),{iterable:i,objectInfo:r}}function fE(t){return t&&t[Symbol.asyncIterator]}function gE(t,e=(()=>!0)){return Array.isArray(t)?mE(t,e,[]):e(t)?[t]:[]}function mE(t,e,n){let i=-1;for(;++ia)return void e.set(t.subarray(0,a),n);if(e.set(t,n),!s)return;let l=o;for(;lt},spring:{stiffness:.05,damping:.5}};function xE(t,e){return t?(Number.isFinite(t)&&(t={duration:t}),t.type=t.type||"interpolation",wt(wt(wt({},wE[t.type]),e),t)):null}function SE(t,e){return e.getBuffer()?[e.getBuffer(),{divisor:0,size:e.size,normalized:e.settings.normalized}]:e.value}function EE(t){switch(t){case 1:return"float";case 2:return"vec2";case 3:return"vec3";case 4:return"vec4";default:throw new Error('No defined attribute type for size "'.concat(t,'"'))}}function CE(t){t.push(t.shift())}function OE(t,e){const{doublePrecision:n,settings:i,value:r,size:s}=t,o=n&&r instanceof Float64Array?2:1;return(i.noAlloc?r.length:e*s)*o}function TE({buffer:t,numInstances:e,attribute:n,fromLength:i,fromStartIndices:r,getData:s=(t=>t)}){const o=n.doublePrecision&&n.value instanceof Float64Array?2:1,a=n.size*o,l=n.byteOffset,c=n.startIndices,u=r&&c,h=OE(n,e),d=n.state.constant;if(!u&&i>=h)return;const p=d?n.value:n.getBuffer().getData({srcByteOffset:l});if(n.settings.normalized&&!d){const t=s;s=(e,i)=>n._normalizeConstant(t(e,i))}const f=d?(t,e)=>s(p,e):(t,e)=>s(p.subarray(t,t+a),e),g=t.getData({length:i}),m=new Float32Array(h);(function({source:t,target:e,size:n,getData:i,sourceStartIndices:r,targetStartIndices:s}){if(!Array.isArray(s))return _E({source:t,target:e,size:n,getData:i}),e;let o=0,a=0;const l=i&&((t,e)=>i(t+a,e)),c=Math.min(r.length,s.length);for(let u=1;u(t+128)/255*2-1);case 5122:return new Float32Array(t).map(t=>(t+32768)/65535*2-1);case 5121:return new Float32Array(t).map(t=>t/255);case 5123:return new Float32Array(t).map(t=>t/65535);default:return t}}_normalizeValue(t,e,n){const{defaultValue:i,size:r}=this.settings;if(Number.isFinite(t))return e[n]=t,e;if(!t)return e[n]=i[0],e;switch(r){case 4:e[n+3]=Number.isFinite(t[3])?t[3]:i[3];case 3:e[n+2]=Number.isFinite(t[2])?t[2]:i[2];case 2:e[n+1]=Number.isFinite(t[1])?t[1]:i[1];case 1:e[n+0]=Number.isFinite(t[0])?t[0]:i[0];break;default:let s=r;for(;--s>=0;)e[n+s]=Number.isFinite(t[s])?t[s]:i[s]}return e}_areValuesEqual(t,e){if(!t||!e)return!1;const{size:n}=this;for(let i=0;it[e])]:t[e],n)}setNeedsUpdate(t=this.id,e){if(this.state.needsUpdate=this.state.needsUpdate||t,this.setNeedsRedraw(t),e){const{startRow:t=0,endRow:n=1/0}=e;this.state.updateRanges=function(t,e){if(t===vE||(e[0]<0&&(e[0]=0),e[0]>=e[1]))return t;const n=[],i=t.length;let r=0;for(let s=0;se[1]?n.push(i):e=[Math.min(i[0],e[0]),Math.max(i[1],e[1])]}return n.splice(r,0,e),n}(this.state.updateRanges,[t,n])}else this.state.updateRanges=vE}clearNeedsUpdate(){this.state.needsUpdate=!1,this.state.updateRanges=yE}setNeedsRedraw(t=this.id){this.state.needsRedraw=this.state.needsRedraw||t}update(t){this.setData(t)}allocate(t){const{state:e,settings:n}=this;return!n.noAlloc&&!!n.update&&(super.allocate({numInstances:t,copy:e.updateRanges!==vE}),!0)}updateBuffer({numInstances:t,data:e,props:n,context:i}){if(!this.needsUpdate())return!1;const{state:{updateRanges:r},settings:{update:s,noAlloc:o}}=this;let a=!0;if(s){for(const[o,a]of r)s.call(i,this,{data:e,startRow:o,endRow:a,props:n,numInstances:t});if(this.value)if(this.constant||this.buffer.byteLength{if(!r){const n=i*a+l;for(let i=0;ic?l.set(e,f):(t._normalizeValue(e,m.target,0),bE({target:l,source:m.target,start:f,count:n}));f+=n*c}else t._normalizeValue(e,l,f),f+=c}}_validateAttributeUpdaters(){const{settings:t}=this;if(!t.noAlloc&&"function"!=typeof t.update)throw new Error("Attribute ".concat(this.id," missing update or accessor"))}_checkAttributeArray(){const{value:t}=this,e=Math.min(4,this.size);if(t&&t.length>=e){let n=!0;switch(e){case 4:n=n&&Number.isFinite(t[3]);case 3:n=n&&Number.isFinite(t[2]);case 2:n=n&&Number.isFinite(t[1]);case 1:n=n&&Number.isFinite(t[0]);break;default:n=!1}if(!n)throw new Error("Illegal attribute generated for ".concat(this.id))}}}let AE={};function PE(t){Mw.level>0&&AE[t]&&AE[t].call(...arguments)}function ME(t,e){if(!t)throw new Error(e||"shadertools: assertion failed.")}const IE="out vec4 transform_output;\nvoid main() {\n transform_output = vec4(0);\n}",DE=`#version 300 es\n${IE}`;function RE(t,e){e=Array.isArray(e)?e:[e];const n=t.replace(/^\s+/,"").split(/\s+/),[i,r,s]=n;return e.includes(i)&&r&&s?{qualifier:i,type:r,name:s.split(";")[0]}:null}function NE(t={}){const{version:e=100,input:n,inputType:i,output:r}=t;if(!n)return 300===e?DE:e>300?`#version ${e}\n${IE}`:"void main() {gl_FragColor = vec4(0);}";const s=function(t,e){switch(e){case"float":return`vec4(${t}, 0.0, 0.0, 1.0)`;case"vec2":return`vec4(${t}, 0.0, 1.0)`;case"vec3":return`vec4(${t}, 1.0)`;case"vec4":return t;default:return ME(!1),null}}(n,i);return e>=300?`#version ${e} ${300===e?"es":""}\nin ${i} ${n};\nout vec4 ${r};\nvoid main() {\n ${r} = ${s};\n}`:`varying ${i} ${n};\nvoid main() {\n gl_FragColor = ${s};\n}`}class LE extends Hx{static isSupported(t){return Fw(t)}constructor(t,e={}){Vw(t),super(t,e),this.initialize(e),this.stubRemovedMethods("TransformFeedback","v6.0",["pause","resume"]),Object.seal(this)}initialize(t={}){return this.buffers={},this.unused={},this.configuration=null,this.bindOnUse=!0,Vx(this.buffers)||this.bind(()=>this._unbindBuffers()),this.setProps(t),this}setProps(t){"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"bindOnUse"in t&&(t=t.bindOnUse),"buffers"in t&&this.setBuffers(t.buffers)}setBuffers(t={}){return this.bind(()=>{for(const e in t)this.setBuffer(e,t[e])}),this}setBuffer(t,e){const n=this._getVaryingIndex(t),{buffer:i,byteSize:r,byteOffset:s}=this._getBufferParams(e);return n<0?(this.unused[t]=i,Nw.warn(()=>`${this.id} unused varying buffer ${t}`)(),this):(this.buffers[n]=e,this.bindOnUse||this._bindBuffer(n,i,s,r),this)}begin(t=0){return this.gl.bindTransformFeedback(36386,this.handle),this._bindBuffers(),this.gl.beginTransformFeedback(t),this}end(){return this.gl.endTransformFeedback(),this._unbindBuffers(),this.gl.bindTransformFeedback(36386,null),this}_getBufferParams(t){let e,n,i;return t instanceof tS?i=t:(i=t.buffer,n=t.byteSize,e=t.byteOffset),(void 0!==e||void 0!==n)&&(e=e||0,n=n||i.byteLength-e),{buffer:i,byteOffset:e,byteSize:n}}_getVaryingInfo(t){return this.configuration&&this.configuration.getVaryingInfo(t)}_getVaryingIndex(t){if(this.configuration)return this.configuration.getVaryingInfo(t).location;const e=Number(t);return Number.isFinite(e)?e:-1}_bindBuffers(){if(this.bindOnUse)for(const t in this.buffers){const{buffer:e,byteSize:n,byteOffset:i}=this._getBufferParams(this.buffers[t]);this._bindBuffer(t,e,i,n)}}_unbindBuffers(){if(this.bindOnUse)for(const t in this.buffers)this._bindBuffer(t,null)}_bindBuffer(t,e,n=0,i){const r=e&&e.handle;return r&&void 0!==i?this.gl.bindBufferRange(35982,t,r,n,i):this.gl.bindBufferBase(35982,t,r),this}_createHandle(){return this.gl.createTransformFeedback()}_deleteHandle(){this.gl.deleteTransformFeedback(this.handle)}_bindHandle(t){this.gl.bindTransformFeedback(36386,this.handle)}}class jE{constructor(t,e={}){this.gl=t,this.currentIndex=0,this.feedbackMap={},this.varyings=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}setupResources(t){for(const e of this.bindings)this._setupTransformFeedback(e,t)}updateModelProps(t={}){const{varyings:e}=this;return e.length>0&&(t=Object.assign({},t,{varyings:e})),t}getDrawOptions(t={}){const e=this.bindings[this.currentIndex],{sourceBuffers:n,transformFeedback:i}=e;return{attributes:Object.assign({},n,t.attributes),transformFeedback:i}}swap(){return!!this.feedbackMap&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupBuffers(t)}getBuffer(t){const{feedbackBuffers:e}=this.bindings[this.currentIndex],n=t?e[t]:null;return n?n instanceof tS?n:n.buffer:null}getData(t={}){const{varyingName:e}=t,n=this.getBuffer(e);return n?n.getData():null}delete(){for(const t in this.resources)this.resources[t].delete()}_initialize(t={}){this._setupBuffers(t),this.varyings=t.varyings||Object.keys(this.bindings[this.currentIndex].feedbackBuffers),this.varyings.length>0&&Rx(Fw(this.gl))}_getFeedbackBuffers(t){const{sourceBuffers:e={}}=t,n={};if(this.bindings[this.currentIndex]&&Object.assign(n,this.bindings[this.currentIndex].feedbackBuffers),this.feedbackMap)for(const i in this.feedbackMap){const t=this.feedbackMap[i];i in e&&(n[t]=i)}Object.assign(n,t.feedbackBuffers);for(const i in n){const t=n[i];if("string"==typeof t){const r=e[t],{byteLength:s,usage:o,accessor:a}=r;n[i]=this._createNewBuffer(i,{byteLength:s,usage:o,accessor:a})}}return n}_setupBuffers(t={}){const{sourceBuffers:e=null}=t;Object.assign(this.feedbackMap,t.feedbackMap);const n=this._getFeedbackBuffers(t);this._updateBindings({sourceBuffers:e,feedbackBuffers:n})}_setupTransformFeedback(t,{model:e}){const{program:n}=e;t.transformFeedback=new LE(this.gl,{program:n,buffers:t.feedbackBuffers})}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this.feedbackMap){const{sourceBuffers:t,feedbackBuffers:e}=this._swapBuffers(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceBuffers:t,feedbackBuffers:e})}}_updateBinding(t,e){return t?(Object.assign(t.sourceBuffers,e.sourceBuffers),Object.assign(t.feedbackBuffers,e.feedbackBuffers),t.transformFeedback&&t.transformFeedback.setBuffers(t.feedbackBuffers),t):{sourceBuffers:Object.assign({},e.sourceBuffers),feedbackBuffers:Object.assign({},e.feedbackBuffers)}}_swapBuffers(t){if(!this.feedbackMap)return null;const e=Object.assign({},t.sourceBuffers),n=Object.assign({},t.feedbackBuffers);for(const i in this.feedbackMap){const r=this.feedbackMap[i];e[i]=t.feedbackBuffers[r],n[r]=t.sourceBuffers[i],Rx(n[r]instanceof tS)}return{sourceBuffers:e,feedbackBuffers:n}}_createNewBuffer(t,e){const n=new tS(this.gl,e);return this.resources[t]&&this.resources[t].delete(),this.resources[t]=n,n}_getNextIndex(){return(this.currentIndex+1)%2}}function FE(t){let e=100;const n=t.match(/[^\s]+/g);if(n.length>=2&&"#version"===n[0]){const t=parseInt(n[1],10);Number.isFinite(t)&&(e=t)}return e}const BE="vs",VE={[BE]:"#ifdef MODULE_LOGDEPTH\n logdepth_adjustPosition(gl_Position);\n#endif\n",fs:"#ifdef MODULE_MATERIAL\n gl_FragColor = material_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LIGHTING\n gl_FragColor = lighting_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_FOG\n gl_FragColor = fog_filterColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_PICKING\n gl_FragColor = picking_filterHighlightColor(gl_FragColor);\n gl_FragColor = picking_filterPickingColor(gl_FragColor);\n#endif\n\n#ifdef MODULE_LOGDEPTH\n logdepth_setFragDepth();\n#endif\n"},zE="__LUMA_INJECT_DECLARATIONS__",UE=/void\s+main\s*\([^)]*\)\s*\{\n?/,HE=/}\n?[^{}]*$/,$E=[];function GE(t,e,n,i=!1){const r=e===BE;for(const s in n){const e=n[s];e.sort((t,e)=>t.order-e.order),$E.length=e.length;for(let t=0,n=e.length;tt+i));break;case"vs:#main-end":r&&(t=t.replace(HE,t=>i+t));break;case"fs:#decl":r||(t=t.replace(zE,i));break;case"fs:#main-start":r||(t=t.replace(UE,t=>t+i));break;case"fs:#main-end":r||(t=t.replace(HE,t=>i+t));break;default:t=t.replace(s,t=>t+i)}}return t=t.replace(zE,""),i&&(t=t.replace(/\}\s*$/,t=>t+VE[e])),t}function WE(t){const e={};return ME(Array.isArray(t)&&t.length>1),t.forEach(t=>{for(const n in t)e[n]=e[n]?`${e[n]}\n${t[n]}`:t[n]}),e}const qE={name:"transform",vs:"attribute float transform_elementID;\nvec2 transform_getPixelSizeHalf(vec2 size) {\n return vec2(1.) / (2. * size);\n}\n\nvec2 transform_getPixelIndices(vec2 texSize, vec2 pixelSizeHalf) {\n float yIndex = floor((transform_elementID / texSize[0]) + pixelSizeHalf[1]);\n float xIndex = transform_elementID - (yIndex * texSize[0]);\n return vec2(xIndex, yIndex);\n}\nvec2 transform_getTexCoord(vec2 size) {\n vec2 pixelSizeHalf = transform_getPixelSizeHalf(size);\n vec2 indices = transform_getPixelIndices(size, pixelSizeHalf);\n vec2 coord = indices / size + pixelSizeHalf;\n return coord;\n}\nvec2 transform_getPos(vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec2 pos = (texCoord * (2.0, 2.0)) - (1., 1.);\n return pos;\n}\nvec4 transform_getInput(sampler2D texSampler, vec2 size) {\n vec2 texCoord = transform_getTexCoord(size);\n vec4 textureColor = texture2D(texSampler, texCoord);\n return textureColor;\n}\n",fs:null},XE="transform_uSize_",YE="transform_position";const KE={10241:9728,10240:9728,10242:33071,10243:33071};class QE{constructor(t,e={}){this.gl=t,this.id=this.currentIndex=0,this._swapTexture=null,this.targetTextureVarying=null,this.targetTextureType=null,this.samplerTextureMap=null,this.bindings=[],this.resources={},this._initialize(e),Object.seal(this)}updateModelProps(t={}){const e=this._processVertexShader(t);return Object.assign({},t,e)}getDrawOptions(t={}){const{sourceBuffers:e,sourceTextures:n,framebuffer:i,targetTexture:r}=this.bindings[this.currentIndex],s=Object.assign({},e,t.attributes),o=Object.assign({},t.uniforms),a=Object.assign({},t.parameters);let l=t.discard;if(this.hasSourceTextures||this.hasTargetTexture){s.transform_elementID=this.elementIDBuffer;for(const e in this.samplerTextureMap)o[e]=n[this.samplerTextureMap[e]];this._setSourceTextureParameters();const t=function({sourceTextureMap:t,targetTextureVarying:e,targetTexture:n}){const i={};let r,s;e&&(({width:r,height:s}=n),i[`${XE}${e}`]=[r,s]);for(const o in t)({width:r,height:s}=t[o]),i[`${XE}${o}`]=[r,s];return i}({sourceTextureMap:n,targetTextureVarying:this.targetTextureVarying,targetTexture:r});Object.assign(o,t)}return this.hasTargetTexture&&(l=!1,a.viewport=[0,0,i.width,i.height]),{attributes:s,framebuffer:i,uniforms:o,discard:l,parameters:a}}swap(){return!!this._swapTexture&&(this.currentIndex=this._getNextIndex(),!0)}update(t={}){this._setupTextures(t)}getTargetTexture(){const{targetTexture:t}=this.bindings[this.currentIndex];return t}getData({packed:t=!1}={}){const{framebuffer:e}=this.bindings[this.currentIndex],n=_S(e);if(!t)return n;const i=n.constructor,r=function(t){switch(t){case"float":return 1;case"vec2":return 2;case"vec3":return 3;case"vec4":return 4;default:return ME(!1),null}}(this.targetTextureType),s=new i(n.length*r/4);let o=0;for(let a=0;a0,this._updateBindings({sourceBuffers:e,sourceTextures:n,targetTexture:r}),"elementCount"in t&&this._updateElementIDBuffer(t.elementCount)}_updateElementIDBuffer(t){if("number"!=typeof t||this.elementCount>=t)return;const e=new Float32Array(t);e.forEach((t,e,n)=>{n[e]=e}),this.elementIDBuffer?this.elementIDBuffer.setData({data:e}):this.elementIDBuffer=new tS(this.gl,{data:e,accessor:{size:1}}),this.elementCount=t}_updateBindings(t){if(this.bindings[this.currentIndex]=this._updateBinding(this.bindings[this.currentIndex],t),this._swapTexture){const{sourceTextures:t,targetTexture:e}=this._swapTextures(this.bindings[this.currentIndex]),n=this._getNextIndex();this.bindings[n]=this._updateBinding(this.bindings[n],{sourceTextures:t,targetTexture:e})}}_updateBinding(t,e){const{sourceBuffers:n,sourceTextures:i,targetTexture:r}=e;if(t||(t={sourceBuffers:{},sourceTextures:{},targetTexture:null}),Object.assign(t.sourceTextures,i),Object.assign(t.sourceBuffers,n),r){t.targetTexture=r;const{width:e,height:n}=r,{framebuffer:i}=t;i?(i.update({attachments:{36064:r},resizeAttachments:!1}),i.resize({width:e,height:n})):t.framebuffer=new SS(this.gl,{id:"transform-framebuffer",width:e,height:n,attachments:{36064:r}})}return t}_setSourceTextureParameters(){const t=this.currentIndex,{sourceTextures:e}=this.bindings[t];for(const n in e)e[n].setParameters(KE)}_swapTextures(t){if(!this._swapTexture)return null;const e=Object.assign({},t.sourceTextures);return e[this._swapTexture]=t.targetTexture,{sourceTextures:e,targetTexture:t.sourceTextures[this._swapTexture]}}_createNewTexture(t){const e=function(t,e){Rx(t instanceof lS||t instanceof bS||t instanceof yS);const n=t.constructor,{gl:i,width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u}=t;return new n(i,Object.assign({width:r,height:s,format:o,type:a,dataFormat:l,border:c,mipmaps:u},{parameters:{10241:9728,10240:9728,10242:33071,10243:33071},pixelStore:{37440:!1}}))}(t);return this.ownTexture&&this.ownTexture.delete(),this.ownTexture=e,e}_getNextIndex(){return(this.currentIndex+1)%2}_processVertexShader(t={}){const{sourceTextures:e,targetTexture:n}=this.bindings[this.currentIndex],{vs:i,uniforms:r,targetTextureType:s,inject:o,samplerTextureMap:a}=function({vs:t,sourceTextureMap:e,targetTextureVarying:n,targetTexture:i}){let r=Object.keys(e).length,s=null;const o={};let a=t,l={};if(r>0||n){const t=a.split("\n"),c=t.slice();if(t.forEach((t,i,a)=>{if(r>0){const n=function(t,e){const n={},i=function(t){return RE(t,["attribute","in"])}(t);if(!i)return null;const{type:r,name:s}=i;if(s&&e[s]){const e=`// ${t} => Replaced by Transform with a sampler`,{samplerName:i,sizeName:o,uniformDeclerations:a}=function(t){const e=`transform_uSampler_${t}`,n=`${XE}${t}`;return{samplerName:e,sizeName:n,uniformDeclerations:` uniform sampler2D ${e};\n uniform vec2 ${n};`}}(s),l=` ${r} ${s} = transform_getInput(${i}, ${o}).${function(t){switch(t){case"float":return"x";case"vec2":return"xy";case"vec3":return"xyz";case"vec4":return"xyzw";default:return ME(!1),null}}(r)};\n`;return n[i]=s,{updatedLine:e,inject:{"vs:#decl":a,"vs:#main-start":l},samplerTextureMap:n}}return null}(t,e);if(n){const{updatedLine:t,inject:e}=n;c[i]=t,l=WE([l,e]),Object.assign(o,n.samplerTextureMap),r--}}n&&!s&&(s=function(t,e){const n=RE(t,["varying","out"]);return n&&n.name===e?n.type:null}(t,n))}),n){Rx(i);const t=`${XE}${n}`;l=WE([l,{"vs:#decl":`uniform vec2 ${t};\n`,"vs:#main-start":` vec2 ${YE} = transform_getPos(${t});\n gl_Position = vec4(${YE}, 0, 1.);\n`}])}a=c.join("\n")}return{vs:a,targetTextureType:s,inject:l,samplerTextureMap:o}}({vs:t.vs,sourceTextureMap:e,targetTextureVarying:this.targetTextureVarying,targetTexture:n}),l=WE([t.inject||{},o]);return this.targetTextureType=s,this.samplerTextureMap=a,{vs:i,fs:t._fs||NE({version:FE(i),input:this.targetTextureVarying,inputType:s,output:"transform_output"}),modules:this.hasSourceTextures||this.targetTextureVarying?[qE].concat(t.modules||[]):t.modules,uniforms:r,inject:l}}}const ZE={number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},array:{validate:(t,e)=>Array.isArray(t)||ArrayBuffer.isView(t)}};function JE(t){let e=tC(t);return"object"===e?t?"type"in t?Object.assign({},t,ZE[t.type]):"value"in t?(e=tC(t.value),Object.assign({type:e},t,ZE[e])):{type:"object",value:t}:{type:"object",value:null}:Object.assign({type:e,value:t},ZE[e])}function tC(t){return Array.isArray(t)||ArrayBuffer.isView(t)?"array":typeof t}class eC{constructor({name:t,vs:e,fs:n,dependencies:i=[],uniforms:r,getUniforms:s,deprecations:o=[],defines:a={},inject:l={},vertexShader:c,fragmentShader:u}){ME("string"==typeof t),this.name=t,this.vs=e||c,this.fs=n||u,this.getModuleUniforms=s,this.dependencies=i,this.deprecations=this._parseDeprecationDefinitions(o),this.defines=a,this.injections=function(t){const e={vs:{},fs:{}};for(const n in t){let i=t[n];const r=n.slice(0,2);"string"==typeof i&&(i={order:0,injection:i}),e[r][n]=i}return e}(l),r&&(this.uniforms=function(t){const e={};for(const n in t){const i=JE(t[n]);e[n]=i}return e}(r))}getModuleSource(t){let e;switch(t){case"vs":e=this.vs||"";break;case"fs":e=this.fs||"";break;default:ME(!1)}return`#define MODULE_${this.name.toUpperCase().replace(/[^0-9a-z]/gi,"_")}\n${e}// END MODULE_${this.name}\n\n`}getUniforms(t,e){return this.getModuleUniforms?this.getModuleUniforms(t,e):this.uniforms?this._defaultGetUniforms(t):{}}getDefines(){return this.defines}checkDeprecations(t,e){this.deprecations.forEach(n=>{n.regex.test(t)&&(n.deprecated?e.deprecated(n.old,n.new)():e.removed(n.old,n.new)())})}_parseDeprecationDefinitions(t){return t.forEach(t=>{switch(t.type){case"function":t.regex=new RegExp(`\\b${t.old}\\(`);break;default:t.regex=new RegExp(`${t.type} ${t.old};`)}}),t}_defaultGetUniforms(t={}){const e={},n=this.uniforms;for(const i in n){const r=n[i];i in t&&!r.private?(r.validate&&ME(r.validate(t[i],r),`${this.name}: invalid ${i}`),e[i]=t[i]):e[i]=r.value}return e}}function nC(t){return function(t){const e={},n={};return iC({modules:t,level:0,moduleMap:e,moduleDepth:n}),Object.keys(n).sort((t,e)=>n[e]-n[t]).map(t=>e[t])}(rC(t))}function iC({modules:t,level:e,moduleMap:n,moduleDepth:i}){if(e>=5)throw new Error("Possible loop in shader dependency graph");for(const r of t)n[r.name]=r,(void 0===i[r.name]||i[r.name](t instanceof eC||(ME("string"!=typeof t,`Shader module use by name is deprecated. Import shader module '${t}' and use it directly.`),ME(t.name,"shader module has no name"),(t=new eC(t)).dependencies=rC(t.dependencies)),t))}const sC={GLSL_FRAG_DATA:["WEBGL_draw_buffers",!0],GLSL_FRAG_DEPTH:["EXT_frag_depth",!0],GLSL_DERIVATIVES:["OES_standard_derivatives",!0],GLSL_TEXTURE_LOD:["EXT_shader_texture_lod",!0]},oC={};function aC(t,e){return t.match(/NVIDIA/i)||e.match(/NVIDIA/i)?"NVIDIA":t.match(/INTEL/i)||e.match(/INTEL/i)?"INTEL":t.match(/Apple/i)||e.match(/Apple/i)?"APPLE":t.match(/AMD/i)||e.match(/AMD/i)||t.match(/ATI/i)||e.match(/ATI/i)?"AMD":"UNKNOWN"}Object.keys(sC).forEach(t=>{oC[t]=t});const lC={};function cC(t,e,n={}){const i=sC[e];if(ME(i,e),!function(t={}){const e="undefined"!=typeof window&&window.navigator||{},n=t.userAgent||e.userAgent||"",i=-1!==n.indexOf("MSIE "),r=-1!==n.indexOf("Trident/");return i||r}(n))return!0;if(e in lC)return lC[e];const r=`#extension GL_${i[0]} : ${n.behavior||"enable"}\nvoid main(void) {}`,s=t.createShader(35633);t.shaderSource(s,r),t.compileShader(s);const o=t.getShaderParameter(s,35713);return t.deleteShader(s),lC[e]=o,o}function uC(t,e){return(e=Array.isArray(e)?e:[e]).every(e=>function(t,e){const n=sC[e];ME(n,e);const i=function(t){return"undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext||Boolean(t&&2===t._version)}(t)&&n[1]||n[0],r="string"==typeof i?Boolean(t.getExtension(i)):i;return ME(!1===r||!0===r),r}(t,e))}function hC(t){return new RegExp(`\\b${t}[ \\t]+(\\w+[ \\t]+\\w+(\\[\\w+\\])?;)`,"g")}const dC=[[/^(#version[ \t]+(100|300[ \t]+es))?[ \t]*\n/,"#version 300 es\n"],[/\btexture(2D|2DProj|Cube)Lod(EXT)?\(/g,"textureLod("],[/\btexture(2D|2DProj|Cube)(EXT)?\(/g,"texture("]],pC=[...dC,[hC("attribute"),"in $1"],[hC("varying"),"out $1"]],fC=[...dC,[hC("varying"),"in $1"]],gC=[[/^#version[ \t]+300[ \t]+es/,"#version 100"],[/\btexture(2D|2DProj|Cube)Lod\(/g,"texture$1LodEXT("],[/\btexture\(/g,"texture2D("],[/\btextureLod\(/g,"texture2DLodEXT("]],mC=[...gC,[hC("in"),"attribute $1"],[hC("out"),"varying $1"]],bC=[...gC,[hC("in"),"varying $1"]],yC="gl_FragColor",vC=/\bout[ \t]+vec4[ \t]+(\w+)[ \t]*;\n?/,_C=/void\s+main\s*\([^)]*\)\s*\{\n?/;function wC(t,e){for(const[n,i]of e)t=t.replace(n,i);return t}const xC=`\n\n${zE}\n\n`,SC={[BE]:"vertex",fs:"fragment"};function EC(t,{id:e,source:n,type:i,modules:r,defines:s={},hookFunctions:o=[],inject:a={},transpileToGLSL100:l=!1,prologue:c=!0,log:u}){ME("string"==typeof n,"shader source must be a string");const h=i===BE,d=n.split("\n");let p=100,f="",g=n;0===d[0].indexOf("#version ")?(p=300,f=d[0],g=d.slice(1).join("\n")):f=`#version ${p}`;const m={};r.forEach(t=>{Object.assign(m,t.getDefines())}),Object.assign(m,s);let b=c?`${f}\n${function({id:t,source:e,type:n}){return t&&"string"==typeof t&&-1===e.indexOf("SHADER_NAME")?`\n#define SHADER_NAME ${t}_${SC[n]}\n\n`:""}({id:e,source:n,type:i})}\n${function({type:t}){return`\n#define SHADER_TYPE_${SC[t].toUpperCase()}\n`}({type:i})}\n${function(t){switch(function(t){const e=t.getExtension("WEBGL_debug_renderer_info"),n=t.getParameter(e&&e.UNMASKED_VENDOR_WEBGL||7936),i=t.getParameter(e&&e.UNMASKED_RENDERER_WEBGL||7937);return{gpuVendor:aC(n,i),vendor:n,renderer:i,version:t.getParameter(7938),shadingLanguageVersion:t.getParameter(35724)}}(t).gpuVendor.toLowerCase()){case"nvidia":return"#define NVIDIA_GPU\n// Nvidia optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n";case"intel":return"#define INTEL_GPU\n// Intel optimizes away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n// Intel's built-in 'tan' function doesn't have acceptable precision\n#define LUMA_FP32_TAN_PRECISION_WORKAROUND 1\n// Intel GPU doesn't have full 32 bits precision in same cases, causes overflow\n#define LUMA_FP64_HIGH_BITS_OVERFLOW_WORKAROUND 1\n";case"amd":return"#define AMD_GPU\n";default:return"#define DEFAULT_GPU\n// Prevent driver from optimizing away the calculation necessary for emulated fp64\n#define LUMA_FP64_CODE_ELIMINATION_WORKAROUND 1\n"}}(t)}\n${function(t,e,n){let i="#if (__VERSION__ > 120)\n\n# define FEATURE_GLSL_DERIVATIVES\n# define FEATURE_GLSL_DRAW_BUFFERS\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FEATURE_GLSL_TEXTURE_LOD\n\n// DEPRECATED FLAGS, remove in v9\n# define FRAG_DEPTH\n# define DERIVATIVES\n# define DRAW_BUFFERS\n# define TEXTURE_LOD\n\n#endif // __VERSION\n";return uC(t,oC.GLSL_FRAG_DEPTH)&&(i+="\n// FRAG_DEPTH => gl_FragDepth is available\n#ifdef GL_EXT_frag_depth\n#extension GL_EXT_frag_depth : enable\n# define FEATURE_GLSL_FRAG_DEPTH\n# define FRAG_DEPTH\n# define gl_FragDepth gl_FragDepthEXT\n#endif\n"),uC(t,oC.GLSL_DERIVATIVES)&&cC(t,oC.GLSL_DERIVATIVES)&&(i+="\n// DERIVATIVES => dxdF, dxdY and fwidth are available\n#ifdef GL_OES_standard_derivatives\n#extension GL_OES_standard_derivatives : enable\n# define FEATURE_GLSL_DERIVATIVES\n# define DERIVATIVES\n#endif\n"),uC(t,oC.GLSL_FRAG_DATA)&&cC(t,oC.GLSL_FRAG_DATA,{behavior:"require"})&&(i+="\n// DRAW_BUFFERS => gl_FragData[] is available\n#ifdef GL_EXT_draw_buffers\n#extension GL_EXT_draw_buffers : require\n#define FEATURE_GLSL_DRAW_BUFFERS\n#define DRAW_BUFFERS\n#endif\n"),uC(t,oC.GLSL_TEXTURE_LOD)&&(i+="// TEXTURE_LOD => texture2DLod etc are available\n#ifdef GL_EXT_shader_texture_lod\n#extension GL_EXT_shader_texture_lod : enable\n\n# define FEATURE_GLSL_TEXTURE_LOD\n# define TEXTURE_LOD\n\n#endif\n"),i}(t)}\n${function(t={}){let e=0,n="";for(const i in t){0===e&&(n+="\n// APPLICATION DEFINES\n"),e++;const r=t[i];(r||Number.isFinite(r))&&(n+=`#define ${i.toUpperCase()} ${t[i]}\n`)}return 0===e&&(n+="\n"),n}(m)}\n${h?"":"precision highp float;\n\n"}\n`:`${f}\n`;const y=function(t){const e={vs:{},fs:{}};return t.forEach(t=>{let n;"string"!=typeof t?(n=t,t=n.hook):n={},t=t.trim();const[i,r]=t.split(":"),s=t.replace(/\(.+/,"");e[i][s]=Object.assign(n,{signature:r})}),e}(o),v={},_={},w={};for(const x in a){const t="string"==typeof a[x]?{injection:a[x],order:0}:a[x],e=x.match(/^(v|f)s:(#)?([\w-]+)$/);if(e){const n=e[3];e[2]?"decl"===n?_[x]=[t]:w[x]=[t]:v[x]=[t]}else w[x]=[t]}for(const x of r){u&&x.checkDeprecations(g,u),b+=x.getModuleSource(i,p);const t=x.injections[i];for(const e in t){const n=e.match(/^(v|f)s:#([\w-]+)$/);if(n){const i="decl"===n[2]?_:w;i[e]=i[e]||[],i[e].push(t[e])}else v[e]=v[e]||[],v[e].push(t[e])}}return b+=xC,b=GE(b,i,_),b+=function(t,e){let n="";for(const i in t){const r=t[i];if(n+=`void ${r.signature} {\n`,r.header&&(n+=` ${r.header}`),e[i]){const t=e[i];t.sort((t,e)=>t.order-e.order);for(const e of t)n+=` ${e.injection}\n`}r.footer&&(n+=` ${r.footer}`),n+="}\n"}return n}(y[i],v),b+=g,b=GE(b,i,w),b=function(t,e,n){switch(e){case 300:return n?wC(t,pC):function(t){const e=(t=wC(t,fC)).match(vC);if(e){const n=e[1];t=t.replace(new RegExp(`\\b${yC}\\b`,"g"),n)}else{const e="fragmentColor";t=t.replace(_C,t=>`out vec4 ${e};\n${t}`).replace(new RegExp(`\\b${yC}\\b`,"g"),e)}return t}(t);case 100:return n?wC(t,mC):function(t){const e=(t=wC(t,bC)).match(vC);if(e){const n=e[1];t=t.replace(vC,"").replace(new RegExp(`\\b${n}\\b`,"g"),yC)}return t}(t);default:throw new Error(`unknown GLSL version ${e}`)}}(b,l?100:p,h),b}function CC(t){return function(e){const n={};for(const i of t){const t=i.getUniforms(e,n);Object.assign(n,t)}return n}}const OC={5126:VC.bind(null,"uniform1fv",IC,1,zC),35664:VC.bind(null,"uniform2fv",IC,2,zC),35665:VC.bind(null,"uniform3fv",IC,3,zC),35666:VC.bind(null,"uniform4fv",IC,4,zC),5124:VC.bind(null,"uniform1iv",DC,1,zC),35667:VC.bind(null,"uniform2iv",DC,2,zC),35668:VC.bind(null,"uniform3iv",DC,3,zC),35669:VC.bind(null,"uniform4iv",DC,4,zC),35670:VC.bind(null,"uniform1iv",DC,1,zC),35671:VC.bind(null,"uniform2iv",DC,2,zC),35672:VC.bind(null,"uniform3iv",DC,3,zC),35673:VC.bind(null,"uniform4iv",DC,4,zC),35674:VC.bind(null,"uniformMatrix2fv",IC,4,UC),35675:VC.bind(null,"uniformMatrix3fv",IC,9,UC),35676:VC.bind(null,"uniformMatrix4fv",IC,16,UC),35678:BC,35680:BC,5125:VC.bind(null,"uniform1uiv",RC,1,zC),36294:VC.bind(null,"uniform2uiv",RC,2,zC),36295:VC.bind(null,"uniform3uiv",RC,3,zC),36296:VC.bind(null,"uniform4uiv",RC,4,zC),35685:VC.bind(null,"uniformMatrix2x3fv",IC,6,UC),35686:VC.bind(null,"uniformMatrix2x4fv",IC,8,UC),35687:VC.bind(null,"uniformMatrix3x2fv",IC,6,UC),35688:VC.bind(null,"uniformMatrix3x4fv",IC,12,UC),35689:VC.bind(null,"uniformMatrix4x2fv",IC,8,UC),35690:VC.bind(null,"uniformMatrix4x3fv",IC,12,UC),35678:BC,35680:BC,35679:BC,35682:BC,36289:BC,36292:BC,36293:BC,36298:BC,36299:BC,36300:BC,36303:BC,36306:BC,36307:BC,36308:BC,36311:BC},TC={},kC={},AC={},PC=[0];function MC(t,e,n,i){1===e&&"boolean"==typeof t&&(t=t?1:0),Number.isFinite(t)&&(PC[0]=t,t=PC);const r=t.length;if(r%e&&Nw.warn(`Uniform size should be multiples of ${e}`,t)(),t instanceof n)return t;let s=i[r];s||(s=new n(r),i[r]=s);for(let o=0;o{const r=t!==i;return r&&(e.uniform1i(n,i),t=i),r}}function VC(t,e,n,i){let r=null,s=null;return(o,a,l)=>{const c=e(l,n),u=c.length;let h=!1;if(null===r)r=new Float32Array(u),s=u,h=!0;else{Rx(s===u,"Uniform length cannot change.");for(let t=0;t{const s=String(i+e);return GC(s,r-s.length)+n+t})}(e);return{shaderName:l,errors:$C(s,c),warnings:$C(o,c)}}(t,this.source,this.shaderType,this.id);throw Nw.error(`GLSL compilation errors in ${e}\n${n}`)(),Nw.warn(`GLSL compilation warnings in ${e}\n${i}`)(),new Error(`GLSL compilation errors in ${e}`)}}_deleteHandle(){this.gl.deleteShader(this.handle)}_getOptsFromHandle(){return{type:this.getParameter(35663),source:this.getSource()}}}class qC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35633}))}_createHandle(){return this.gl.createShader(35633)}}class XC extends WC{constructor(t,e){"string"==typeof e&&(e={source:e}),super(t,Object.assign({},e,{shaderType:35632}))}_createHandle(){return this.gl.createShader(35632)}}const YC=5126,KC=5124,QC=5125,ZC={[YC]:[YC,1,"float"],35664:[YC,2,"vec2"],35665:[YC,3,"vec3"],35666:[YC,4,"vec4"],[KC]:[KC,1,"int"],35667:[KC,2,"ivec2"],35668:[KC,3,"ivec3"],35669:[KC,4,"ivec4"],[QC]:[QC,1,"uint"],36294:[QC,2,"uvec2"],36295:[QC,3,"uvec3"],36296:[QC,4,"uvec4"],35670:[YC,1,"bool"],35671:[YC,2,"bvec2"],35672:[YC,3,"bvec3"],35673:[YC,4,"bvec4"],35674:[YC,8,"mat2"],35685:[YC,8,"mat2x3"],35686:[YC,8,"mat2x4"],35675:[YC,12,"mat3"],35687:[YC,12,"mat3x2"],35688:[YC,12,"mat3x4"],35676:[YC,16,"mat4"],35689:[YC,16,"mat4x2"],35690:[YC,16,"mat4x3"]};function JC(t){const e=ZC[t];if(!e)return null;const[n,i]=e;return{type:n,components:i}}function tO(t,e){switch(t){case 5120:case 5121:case 5122:case 5123:t=YC}for(const n in ZC){const[i,r,s]=ZC[n];if(i===t&&r===e)return{glType:n,name:s}}return null}class eO{constructor(t){this.id=t.id,this.attributeInfos=[],this.attributeInfosByName={},this.attributeInfosByLocation=[],this.varyingInfos=[],this.varyingInfosByName={},Object.seal(this),this._readAttributesFromProgram(t),this._readVaryingsFromProgram(t)}getAttributeInfo(t){const e=Number(t);return Number.isFinite(e)?this.attributeInfosByLocation[e]:this.attributeInfosByName[t]||null}getAttributeLocation(t){const e=this.getAttributeInfo(t);return e?e.location:-1}getAttributeAccessor(t){const e=this.getAttributeInfo(t);return e?e.accessor:null}getVaryingInfo(t){const e=Number(t);return Number.isFinite(e)?this.varyingInfos[e]:this.varyingInfosByName[t]||null}getVaryingIndex(t){const e=this.getVaryingInfo();return e?e.location:-1}getVaryingAccessor(t){const e=this.getVaryingInfo();return e?e.accessor:null}_readAttributesFromProgram(t){const{gl:e}=t,n=e.getProgramParameter(t.handle,35721);for(let i=0;i=0&&this._addAttribute(o,n,r,s)}this.attributeInfos.sort((t,e)=>t.location-e.location)}_readVaryingsFromProgram(t){const{gl:e}=t;if(!Fw(e))return;const n=e.getProgramParameter(t.handle,35971);for(let i=0;it.location-e.location)}_addAttribute(t,e,n,i){const{type:r,components:s}=JC(n),o={type:r,size:i*s};this._inferProperties(t,e,o);const a={location:t,name:e,accessor:new Kx(o)};this.attributeInfos.push(a),this.attributeInfosByLocation[t]=a,this.attributeInfosByName[a.name]=a}_inferProperties(t,e,n){/instance/i.test(e)&&(n.divisor=1)}_addVarying(t,e,n,i){const{type:r,components:s}=JC(n),o={location:t,name:e,accessor:new Kx({type:r,size:i*s})};this.varyingInfos.push(o),this.varyingInfosByName[o.name]=o}}const nO=35981,iO=["setVertexArray","setAttributes","setBuffers","unsetBuffers","use","getUniformCount","getUniformInfo","getUniformLocation","getUniformValue","getVarying","getFragDataLocation","getAttachedShaders","getAttributeCount","getAttributeLocation","getAttributeInfo"];class rO extends Hx{constructor(t,e={}){super(t,e),this.stubRemovedMethods("Program","v6.0",iO),this._isCached=!1,this.initialize(e),Object.seal(this),this._setId(e.id)}initialize(t={}){const{hash:e,vs:n,fs:i,varyings:r,bufferMode:s=nO}=t;return this.hash=e||"",this.vs="string"==typeof n?new qC(this.gl,{id:`${t.id}-vs`,source:n}):n,this.fs="string"==typeof i?new XC(this.gl,{id:`${t.id}-fs`,source:i}):i,Rx(this.vs instanceof qC),Rx(this.fs instanceof XC),this.uniforms={},this._textureUniforms={},r&&r.length>0&&(Vw(this.gl),this.varyings=r,this.gl2.transformFeedbackVaryings(this.handle,r,s)),this._compileAndLink(),this._readUniformLocationsFromLinkedProgram(),this.configuration=new eO(this),this.setProps(t)}delete(t={}){return this._isCached?this:super.delete(t)}setProps(t){return"uniforms"in t&&this.setUniforms(t.uniforms),this}draw({logPriority:t,drawMode:e=4,vertexCount:n,offset:i=0,start:r,end:s,isIndexed:o=!1,indexType:a=5123,instanceCount:l=0,isInstanced:c=l>0,vertexArray:u=null,transformFeedback:h,framebuffer:d,parameters:p={},uniforms:f,samplers:g}){if((f||g)&&(Nw.deprecated("Program.draw({uniforms})","Program.setUniforms(uniforms)")(),this.setUniforms(f||{})),Nw.priority>=t){const i=d?d.id:"default",r=`mode=${Lx(this.gl,e)} verts=${n} instances=${l} indexType=${Lx(this.gl,a)} isInstanced=${c} isIndexed=${o} Framebuffer=${i}`;Nw.log(t,r)()}return Rx(u),this.gl.useProgram(this.handle),!(!this._areTexturesRenderable()||0===n||c&&0===l||(u.bindForDraw(n,l,()=>{if(void 0!==d&&(p=Object.assign({},p,{framebuffer:d})),h){const t=function(t){switch(t){case 0:return 0;case 1:case 3:case 2:return 1;case 4:case 5:case 6:return 4;default:return Rx(!1),0}}(e);h.begin(t)}this._bindTextures(),vx(this.gl,p,()=>{o&&c?this.gl2.drawElementsInstanced(e,n,a,i,l):o&&Fw(this.gl)&&!isNaN(r)&&!isNaN(s)?this.gl2.drawRangeElements(e,r,s,n,a,i):o?this.gl.drawElements(e,n,a,i):c?this.gl2.drawArraysInstanced(e,i,n,l):this.gl.drawArrays(e,i,n)}),h&&h.end()}),0))}setUniforms(t={}){Nw.priority>=2&&function(t,e,n){for(const i in t){const r=t[i];if((!n||Boolean(n[i]))&&!jC(r))throw e=e?`${e} `:"",console.error(`${e} Bad uniform ${i}`,r),new Error(`${e} Bad uniform ${i}`)}}(t,this.id,this._uniformSetters),this.gl.useProgram(this.handle);for(const e in t){const n=t[e],i=this._uniformSetters[e];if(i){let t=n,r=!1;if(t instanceof SS&&(t=t.texture),t instanceof oS)if(r=this.uniforms[e]!==n,r){void 0===i.textureIndex&&(i.textureIndex=this._textureIndexCounter++);const n=t,{textureIndex:r}=i;n.bind(r),t=r,this._textureUniforms[e]=n}else t=i.textureIndex;else this._textureUniforms[e]&&delete this._textureUniforms[e];(i(t)||r)&&FC(this.uniforms,e,n)}}return this}_areTexturesRenderable(){let t=!0;for(const e in this._textureUniforms){const n=this._textureUniforms[e];n.update(),t=t&&n.loaded}return t}_bindTextures(){for(const t in this._textureUniforms)this._textureUniforms[t].bind(this._uniformSetters[t].textureIndex)}_createHandle(){return this.gl.createProgram()}_deleteHandle(){this.gl.deleteProgram(this.handle)}_getOptionsFromHandle(t){const e=this.gl.getAttachedShaders(t),n={};for(const i of e)switch(this.gl.getShaderParameter(this.handle,35663)){case 35633:n.vs=new qC({handle:i});break;case 35632:n.fs=new XC({handle:i})}return n}_getParameter(t){return this.gl.getProgramParameter(this.handle,t)}_setId(t){if(!t){const t=this._getName();this.id=Fx(t)}}_getName(){let t=this.vs.getName()||this.fs.getName();return t=t.replace(/shader/i,""),t=t?`${t}-program`:"program",t}_compileAndLink(){const{gl:t}=this;if(t.attachShader(this.handle,this.vs.handle),t.attachShader(this.handle,this.fs.handle),Nw.time(4,`linkProgram for ${this._getName()}`)(),t.linkProgram(this.handle),Nw.timeEnd(4,`linkProgram for ${this._getName()}`)(),t.debug||Nw.level>0){if(!t.getProgramParameter(this.handle,35714))throw new Error(`Error linking: ${t.getProgramInfoLog(this.handle)}`);if(t.validateProgram(this.handle),!t.getProgramParameter(this.handle,35715))throw new Error(`Error validating: ${t.getProgramInfoLog(this.handle)}`)}}_readUniformLocationsFromLinkedProgram(){const{gl:t}=this;this._uniformSetters={},this._uniformCount=this._getParameter(35718);for(let e=0;e1)for(let e=0;ee.name===t.name)||this._defaultModules.push(t),this.stateHash++}removeDefaultModule(t){const e="string"==typeof t?t:t.name;this._defaultModules=this._defaultModules.filter(t=>t.name!==e),this.stateHash++}addShaderHook(t,e){e&&(t=Object.assign(e,{hook:t})),this._hookFunctions.push(t),this.stateHash++}get(t={}){const{vs:e="",fs:n="",defines:i={},inject:r={},varyings:s=[],bufferMode:o=35981,transpileToGLSL100:a=!1}=t,l=this._getModuleList(t.modules),c=this._getHash(e),u=this._getHash(n),h=l.map(t=>this._getHash(t.name)).sort(),d=s.map(t=>this._getHash(t)),p=Object.keys(i).sort(),f=Object.keys(r).sort(),g=[],m=[];for(const y of p)g.push(this._getHash(y)),g.push(this._getHash(i[y]));for(const y of f)m.push(this._getHash(y)),m.push(this._getHash(r[y]));const b=`${c}/${u}D${g.join("/")}M${h.join("/")}I${m.join("/")}V${d.join("/")}H${this.stateHash}B${o}${a?"T":""}`;if(!this._programCache[b]){const t=function(t,e){const{vs:n,fs:i}=e,r=nC(e.modules||[]);return{gl:t,vs:EC(t,Object.assign({},e,{source:n,type:BE,modules:r})),fs:EC(t,Object.assign({},e,{source:i,type:"fs",modules:r})),getUniforms:CC(r)}}(this.gl,{vs:e,fs:n,modules:l,inject:r,defines:i,hookFunctions:this._hookFunctions,transpileToGLSL100:a});this._programCache[b]=new rO(this.gl,{hash:b,vs:t.vs,fs:t.fs,varyings:s,bufferMode:o}),this._getUniforms[b]=t.getUniforms||(t=>{}),this._useCounts[b]=0}return this._useCounts[b]++,this._programCache[b]}getUniforms(t){return this._getUniforms[t.hash]||null}release(t){const e=t.hash;this._useCounts[e]--,0===this._useCounts[e]&&(this._programCache[e].delete(),delete this._programCache[e],delete this._getUniforms[e],delete this._useCounts[e])}_getHash(t){return void 0===this._hashes[t]&&(this._hashes[t]=this._hashCounter++),this._hashes[t]}_getModuleList(t=[]){const e=new Array(this._defaultModules.length+t.length),n={};let i=0;for(let r=0,s=this._defaultModules.length;r-1)return"Edge";const n=-1!==e.indexOf("MSIE "),i=-1!==e.indexOf("Trident/");return n||i?"IE":vw.chrome?"Chrome":vw.safari?"Safari":vw.mozInnerScreenX?"Firefox":"Unknown"}()}static getDefaultArray(t){return t.luma=t.luma||{},t.luma.defaultVertexArray||(t.luma.defaultVertexArray=new aO(t,{handle:null,isDefaultArray:!0})),t.luma.defaultVertexArray}static getMaxAttributes(t){return aO.MAX_ATTRIBUTES=aO.MAX_ATTRIBUTES||t.getParameter(34921),aO.MAX_ATTRIBUTES}static setConstant(t,e,n){switch(n.constructor){case Float32Array:aO._setConstantFloatArray(t,e,n);break;case Int32Array:aO._setConstantIntArray(t,e,n);break;case Uint32Array:aO._setConstantUintArray(t,e,n);break;default:Rx(!1)}}constructor(t,e={}){super(t,Object.assign({},e,{id:e.id||e.program&&e.program.id})),this.buffer=null,this.bufferValue=null,this.isDefaultArray=e.isDefaultArray||!1,this.gl2=t,this.initialize(e),Object.seal(this)}delete(){return super.delete(),this.buffer&&this.buffer.delete(),this}get MAX_ATTRIBUTES(){return aO.getMaxAttributes(this.gl)}initialize(t={}){return this.setProps(t)}setProps(t){return this}setElementBuffer(t=null,e={}){return Rx(!t||34963===t.target,"elements must be GL.ELEMENT_ARRAY_BUFFER"),this.bind(()=>{this.gl.bindBuffer(34963,t?t.handle:null)}),this}setBuffer(t,e,n){if(34963===e.target)return this.setElementBuffer(e,n);const{size:i,type:r,stride:s,offset:o,normalized:a,integer:l,divisor:c}=n,{gl:u,gl2:h}=this;return t=Number(t),this.bind(()=>{u.bindBuffer(34962,e.handle),l?(Rx(Fw(u)),h.vertexAttribIPointer(t,i,r,s,o)):u.vertexAttribPointer(t,i,r,a,s,o),u.enableVertexAttribArray(t),h.vertexAttribDivisor(t,c||0)}),this}enable(t,e=!0){return!e&&0===t&&!aO.isSupported(this.gl,{constantAttributeZero:!0})||(t=Number(t),this.bind(()=>e?this.gl.enableVertexAttribArray(t):this.gl.disableVertexAttribArray(t))),this}getConstantBuffer(t,e){const n=this._normalizeConstantArrayValue(e),i=n.byteLength*t,r=n.length*t;let s=!this.buffer;if(this.buffer=this.buffer||new tS(this.gl,i),s=s||this.buffer.reallocate(i),s=s||!this._compareConstantArrayValues(n,this.bufferValue),s){const t=function(t,e){return new t(function(t){return(!oO||oO.byteLength{switch(t){case 34373:return this.gl.getVertexAttribOffset(e,t);default:return this.gl.getVertexAttrib(e,t)}})}}const lO=/^(.+)__LOCATION_([0-9]+)$/,cO=["setBuffers","setGeneric","clearBindings","setLocations","setGenericValues","setDivisor","enable","disable"];class uO{constructor(t,e={}){this.id=e.id||e.program&&e.program.id,this.gl=t,this.configuration=null,this.elements=null,this.elementsAccessor=null,this.values=null,this.accessors=null,this.unused=null,this.drawParams=null,this.buffer=null,this.attributes={},this.vertexArrayObject=new aO(t),zx(this,"VertexArray","v6.0",cO),this.initialize(e),Object.seal(this)}delete(){this.buffer&&this.buffer.delete(),this.vertexArrayObject.delete()}initialize(t={}){return this.reset(),this.configuration=null,this.bindOnUse=!1,this.setProps(t)}reset(){this.elements=null,this.elementsAccessor=null;const{MAX_ATTRIBUTES:t}=this.vertexArrayObject;return this.values=new Array(t).fill(null),this.accessors=new Array(t).fill(null),this.unused={},this.drawParams=null,this}setProps(t){return"program"in t&&(this.configuration=t.program&&t.program.configuration),"configuration"in t&&(this.configuration=t.configuration),"attributes"in t&&this.setAttributes(t.attributes),"elements"in t&&this.setElementBuffer(t.elements),"bindOnUse"in t&&(t=t.bindOnUse),this}clearDrawParams(){this.drawParams=null}getDrawParams(){return this.drawParams=this.drawParams||this._updateDrawParams(),this.drawParams}setAttributes(t){return Object.assign(this.attributes,t),this.vertexArrayObject.bind(()=>{for(const e in t)this._setAttribute(e,t[e]);this.gl.bindBuffer(34962,null)}),this}setElementBuffer(t=null,e={}){return this.elements=t,this.elementsAccessor=e,this.clearDrawParams(),this.vertexArrayObject.setElementBuffer(t,e),this}setBuffer(t,e,n={}){if(34963===e.target)return this.setElementBuffer(e,n);const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,e.accessor,n);return i>=0&&(this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.setBuffer(i,e,r)),this}setConstant(t,e,n={}){const{location:i,accessor:r}=this._resolveLocationAndAccessor(t,e,Object.assign({size:e.length},n));return i>=0&&(e=this.vertexArrayObject._normalizeConstantArrayValue(e),this.values[i]=e,this.accessors[i]=r,this.clearDrawParams(),this.vertexArrayObject.enable(i,!1)),this}unbindBuffers(){return this.vertexArrayObject.bind(()=>{this.elements&&this.vertexArrayObject.setElementBuffer(null),this.buffer=this.buffer||new tS(this.gl,{accessor:{size:4}});for(let t=0;t{this.elements&&this.setElementBuffer(this.elements);for(let t=0;t{this._setConstantAttributes(t,e),i=n()}),i}_resolveLocationAndAccessor(t,e,n,i){const r={location:-1,accessor:null},{location:s,name:o}=this._getAttributeIndex(t);if(!Number.isFinite(s)||s<0)return this.unused[t]=e,Nw.once(3,()=>`unused value ${t} in ${this.id}`)(),r;const a=this._getAttributeInfo(o||s);if(!a)return r;const l=Kx.resolve(a.accessor,this.accessors[s]||{},n,i),{size:c,type:u}=l;return Rx(Number.isFinite(c)&&Number.isFinite(u)),{location:s,accessor:l}}_getAttributeInfo(t){return this.configuration&&this.configuration.getAttributeInfo(t)}_getAttributeIndex(t){const e=Number(t);if(Number.isFinite(e))return{location:e};const n=lO.exec(t),i=n?n[1]:t,r=n?Number(n[2]):0;return this.configuration?{location:this.configuration.getAttributeLocation(i)+r,name:i}:{location:-1}}_setAttribute(t,e){if(e instanceof tS)this.setBuffer(t,e);else if(Array.isArray(e)&&e.length&&e[0]instanceof tS)this.setBuffer(t,e[0],e[1]);else if(ArrayBuffer.isView(e)||Array.isArray(e))this.setConstant(t,e);else{if(!(e.buffer instanceof tS))throw new Error("VertexArray: attributes must be Buffers or constants (i.e. typed array)");this.setBuffer(t,e.buffer,e)}}_setConstantAttributes(t,e){const n=Math.max(0|t,0|e);let i=this.values[0];ArrayBuffer.isView(i)&&this._setConstantAttributeZero(i,n);for(let r=1;r0;if(t.isInstanced=t.isInstanced||s,n instanceof tS){const e=n;if(s){const n=e.getVertexCount(i);t.instanceCount=Math.min(t.instanceCount,n)}else{const n=e.getVertexCount(i);t.vertexCount=Math.min(t.vertexCount,n)}}}setElements(t=null,e={}){return Nw.deprecated("setElements","setElementBuffer")(),this.setElementBuffer(t,e)}}function hO(t,e={}){const{isInteger:n=!1}=e;if(Array.isArray(t)||ArrayBuffer.isView(t))return function(t,e){const{maxElts:n=16,size:i=1}=e;let r="[";for(let s=0;s0&&(r+=","+(s%i==0?" ":"")),r+=hO(t[s],e);return`${r}${t.length>n?"...":"]"}`}(t,e);if(!Number.isFinite(t))return String(t);if(Math.abs(t)<1e-16)return n?"0":"0.";if(n||Math.abs(t)>100&&Math.abs(t)<1e4)return t.toFixed(0);const i=t.toPrecision(2);return i.indexOf(".0")===i.length-2?i.slice(0,-1):i}function dO(t,e,n,i){const{gl:r}=t;if(!e)return{[i]:"null","Format ":"N/A"};let s,o,a,l="NOT PROVIDED",c=1,u=0,h=0;if(n&&(l=n.type,c=n.size,l=String(l).replace("Array",""),s=-1!==l.indexOf("nt")),e instanceof tS){const t=e,{data:d,changed:p}=t.getDebugData();let f;return o=p?"*":"",a=d,h=t.byteLength,u=h/d.BYTES_PER_ELEMENT/c,n?f=`${n.divisor>0?"I ":"P "} ${u} (x${c}=${h} bytes ${Lx(r,l)})`:(s=!0,f=`${h} bytes`),{[i]:`${o}${hO(a,{size:c,isInteger:s})}`,"Format ":f}}return a=e,c=e.length,l=String(e.constructor.name).replace("Array",""),s=-1!==l.indexOf("nt"),{[i]:`${hO(a,{size:c,isInteger:s})} (constant)`,"Format ":`${c}x${l} (constant)`}}function pO(t,e){const{type:n,size:i}=e,r=tO(n,i);return r?`${t} (${r.name})`:t}function fO({header:t="Uniforms",program:e,uniforms:n,undefinedOnly:i=!1}){Rx(e);const r=".*Matrix",s={},o=Object.keys(e._uniformSetters).sort();let a=0;for(const u of o)!u.match(".*_.*")&&!u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)u.match(r)&&gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;for(const u of o)s[u]||gO({table:s,header:t,uniforms:n,uniformName:u,undefinedOnly:i})&&a++;let l=0;const c={};if(!i)for(const u in n){const e=n[u];s[u]||(l++,c[u]={Type:`NOT USED: ${e}`,[t]:hO(e)})}return{table:s,count:a,unusedTable:c,unusedCount:l}}function gO({table:t,header:e,uniforms:n,uniformName:i,undefinedOnly:r}){const s=n[i],o=function(t){return null!=t}(s);return!(r&&o||(t[i]={[e]:o?hO(s):"N/A","Uniform Type":o?s:"NOT PROVIDED"},0))}function mO(t){const{type:e,size:n}=t.accessor,i=tO(e,n);return i?`${i.name} ${t.name}`:t.name}const bO={POSITION:"positions",NORMAL:"normals",COLOR_0:"colors",TEXCOORD_0:"texCoords",TEXCOORD_1:"texCoords1",TEXCOORD_2:"texCoords2"};function yO(t,e){const{attributeMap:n=bO}=e||{};return n&&n[t]||t}function vO(t,e){let n;switch(t){case"texCoords":case"texCoord1":case"texCoord2":case"texCoord3":n="uvs";break;case"vertices":case"positions":case"normals":case"pickingColors":n="vectors"}switch(n){case"vectors":e.size=e.size||3;break;case"uvs":e.size=e.size||2}Rx(Number.isFinite(e.size),`attribute ${t} needs size`)}const _O=()=>{},wO={};class xO{constructor(t,e={}){const{id:n=Fx("model")}=e;Rx(jw(t)),this.id=n,this.gl=t,this.id=e.id||Fx("Model"),this.lastLogTime=0,this.animated=!1,this.initialize(e)}initialize(t){this.props={},this.programManager=t.programManager||sO.getDefaultProgramManager(this.gl),this._programManagerState=-1,this._managedProgram=!1;const{program:e=null,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this.program=null,this.vertexArray=null,this._programDirty=!0,this.userData={},this.needsRedraw=!0,this._attributes={},this.attributes={},this.uniforms={},this.pickable=!0,this._checkProgram(),this.setUniforms(Object.assign({},this.getModuleUniforms(t.moduleSettings))),this.drawMode=void 0!==t.drawMode?t.drawMode:4,this.vertexCount=t.vertexCount||0,this.geometryBuffers={},this.isInstanced=t.isInstanced||t.instanced||t.instanceCount>0,this._setModelProps(t),this.geometry={},Rx(void 0!==this.drawMode&&Number.isFinite(this.vertexCount),"Model needs drawMode and vertexCount")}setProps(t){this._setModelProps(t)}delete(){for(const t in this._attributes)this._attributes[t]!==this.attributes[t]&&this._attributes[t].delete();this._managedProgram&&(this.programManager.release(this.program),this._managedProgram=!1),this.vertexArray.delete(),this._deleteGeometryBuffers()}getDrawMode(){return this.drawMode}getVertexCount(){return this.vertexCount}getInstanceCount(){return this.instanceCount}getAttributes(){return this.attributes}getProgram(){return this.program}setProgram(t){const{program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c}=t;this.programProps={program:e,vs:n,fs:i,modules:r,defines:s,inject:o,varyings:a,bufferMode:l,transpileToGLSL100:c},this._programDirty=!0}getUniforms(){return this.uniforms}setDrawMode(t){return this.drawMode=t,this}setVertexCount(t){return Rx(Number.isFinite(t)),this.vertexCount=t,this}setInstanceCount(t){return Rx(Number.isFinite(t)),this.instanceCount=t,this}setGeometry(t){return this.drawMode=t.drawMode,this.vertexCount=t.getVertexCount(),this._deleteGeometryBuffers(),this.geometryBuffers=function(t,e,n){const i={};let r=e.indices;for(const s in e.attributes){const n=e.attributes[s],o=yO(s,undefined);if("indices"===s)r=n;else if(n.constant)i[o]=n.value;else{const e=n.value,r=wt({},n);delete r.value,i[o]=[new tS(t,e),r],vO(s,r)}}if(r){const e=r.value||r;Rx(e instanceof Uint16Array||e instanceof Uint32Array,'attribute array for "indices" must be of integer type');const n={size:1,isIndexed:void 0===r.isIndexed||r.isIndexed};i.indices=[new tS(t,{data:e,target:34963}),n]}return i}(this.gl,t),this.vertexArray.setAttributes(this.geometryBuffers),this}setAttributes(t={}){if(Vx(t))return this;const e={};for(const n in t){const i=t[n];e[n]=i.getValue?i.getValue():i}return this.vertexArray.setAttributes(e),this}setUniforms(t={}){return Object.assign(this.uniforms,t),this}getModuleUniforms(t){this._checkProgram();const e=this.programManager.getUniforms(this.program);return e?e(t):{}}updateModuleSettings(t){const e=this.getModuleUniforms(t||{});return this.setUniforms(e)}clear(t){return pS(this.program.gl,t),this}draw(t={}){this._checkProgram();const{moduleSettings:e=null,framebuffer:n,uniforms:i={},attributes:r={},transformFeedback:s=this.transformFeedback,parameters:o={},vertexArray:a=this.vertexArray}=t;let l;this.setAttributes(r),this.updateModuleSettings(e),this.setUniforms(i),Nw.priority>=2&&(l=this._logDrawCallStart(2));const c=this.vertexArray.getDrawParams(),{isIndexed:u=c.isIndexed,indexType:h=c.indexType,indexOffset:d=c.indexOffset,vertexArrayInstanced:p=c.isInstanced}=this.props;p&&!this.isInstanced&&Nw.warn("Found instanced attributes on non-instanced model",this.id)();const{isInstanced:f,instanceCount:g}=this,{onBeforeRender:m=_O,onAfterRender:b=_O}=this.props;m(),this.program.setUniforms(this.uniforms);const y=this.program.draw(Object.assign(wO,t,{logPriority:l,uniforms:null,framebuffer:n,parameters:o,drawMode:this.getDrawMode(),vertexCount:this.getVertexCount(),vertexArray:a,transformFeedback:s,isIndexed:u,indexType:h,isInstanced:f,instanceCount:g,offset:u?d:0}));return b(),Nw.priority>=2&&this._logDrawCallEnd(l,a,n),y}transform(t={}){const{discard:e=!0,feedbackBuffers:n,unbindModels:i=[]}=t;let{parameters:r}=t;n&&this._setFeedbackBuffers(n),e&&(r=Object.assign({},r,{35977:e})),i.forEach(t=>t.vertexArray.unbindBuffers());try{this.draw(Object.assign({},t,{parameters:r}))}finally{i.forEach(t=>t.vertexArray.bindBuffers())}return this}render(t={}){return Nw.warn("Model.render() is deprecated. Use Model.setUniforms() and Model.draw()")(),this.setUniforms(t).draw()}_setModelProps(t){Object.assign(this.props,t),"uniforms"in t&&this.setUniforms(t.uniforms),"pickable"in t&&(this.pickable=t.pickable),"instanceCount"in t&&(this.instanceCount=t.instanceCount),"geometry"in t&&this.setGeometry(t.geometry),"attributes"in t&&this.setAttributes(t.attributes),"_feedbackBuffers"in t&&this._setFeedbackBuffers(t._feedbackBuffers)}_checkProgram(){if(!this._programDirty&&this.programManager.stateHash===this._programManagerState)return;let{program:t}=this.programProps;if(t)this._managedProgram=!1;else{const{vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}=this.programProps;t=this.programManager.get({vs:e,fs:n,modules:i,inject:r,defines:s,varyings:o,bufferMode:a,transpileToGLSL100:l}),this.program&&this._managedProgram&&this.programManager.release(this.program),this._programManagerState=this.programManager.stateHash,this._managedProgram=!0}Rx(t instanceof rO,"Model needs a program"),this._programDirty=!1,t!==this.program&&(this.program=t,this.vertexArray?this.vertexArray.setProps({program:this.program,attributes:this.vertexArray.attributes}):this.vertexArray=new uO(this.gl,{program:this.program}),this.setUniforms(Object.assign({},this.getModuleUniforms())))}_deleteGeometryBuffers(){for(const t in this.geometryBuffers){const e=this.geometryBuffers[t][0]||this.geometryBuffers[t];e instanceof tS&&e.delete()}}_setAnimationProps(t){this.animated&&Rx(t,"Model.draw(): animated uniforms but no animationProps")}_setFeedbackBuffers(t={}){if(Vx(t))return this;const{gl:e}=this.program;return this.transformFeedback=this.transformFeedback||new LE(e,{program:this.program}),this.transformFeedback.setBuffers(t),this}_logDrawCallStart(t){const e=t>3?0:1e4;if(!(Date.now()-this.lastLogTime>> DRAWING MODEL ${this.id}`,{collapsed:Nw.level<=2})(),t}_logDrawCallEnd(t,e,n,i){if(void 0===t)return;const r=function({vertexArray:t,header:e="Attributes"}){if(!t.configuration)return{};const n={};t.elements&&(n.ELEMENT_ARRAY_BUFFER=dO(t,t.elements,null,e));const i=t.values;for(const r in i){const s=t._getAttributeInfo(r);if(s){let o=`${r}: ${s.name}`;const a=t.accessors[s.location];a&&(o=`${r}: ${pO(s.name,a)}`),n[o]=dO(t,i[r],a,e)}}return n}({vertexArray:e,header:`${this.id} attributes`,attributes:this._attributes}),{table:s,unusedTable:o,unusedCount:a}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n)}),{table:l,count:c}=fO({header:`${this.id} uniforms`,program:this.program,uniforms:Object.assign({},this.program.uniforms,n),undefinedOnly:!0});c>0&&Nw.log("MISSING UNIFORMS",Object.keys(l))(),a>0&&Nw.log("UNUSED UNIFORMS",Object.keys(o))();const u=function(t){const e={},n=`Accessors for ${t.id}`;for(const i of t.attributeInfos)i&&(e[`in ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});for(const i of t.varyingInfos)i&&(e[`out ${mO(i)}`]={[n]:JSON.stringify(i.accessor)});return e}(this.vertexArray.configuration);Nw.table(t,r)(),Nw.table(t,s)(),Nw.table(t+1,u)(),i&&i.log({logLevel:2,message:`Rendered to ${i.id}`}),Nw.groupEnd(2,`>>> DRAWING MODEL ${this.id}`)()}}class SO{static isSupported(t){return Fw(t)}constructor(t,e={}){this.gl=t,this.model=null,this.elementCount=0,this.bufferTransform=null,this.textureTransform=null,this.elementIDBuffer=null,this._initialize(e),Object.seal(this)}delete(){const{model:t,bufferTransform:e,textureTransform:n}=this;t&&t.delete(),e&&e.delete(),n&&n.delete()}run(t={}){const{clearRenderTarget:e=!0}=t,n=this._updateDrawOptions(t);e&&n.framebuffer&&n.framebuffer.clear({color:!0}),this.model.transform(n)}swap(){let t=!1;const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)t=t||n.swap();Rx(t,"Nothing to swap")}getBuffer(t=null){return this.bufferTransform&&this.bufferTransform.getBuffer(t)}getData(t={}){const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e){const e=n.getData(t);if(e)return e}return null}getFramebuffer(){return this.textureTransform&&this.textureTransform.getFramebuffer()}update(t={}){"elementCount"in t&&this.model.setVertexCount(t.elementCount);const e=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const n of e)n.update(t)}_initialize(t={}){const{gl:e}=this;this._buildResourceTransforms(e,t),t=this._updateModelProps(t),this.model=new xO(e,Object.assign({},t,{fs:t.fs||NE({version:FE(t.vs)}),id:t.id||"transform-model",drawMode:t.drawMode||0,vertexCount:t.elementCount})),this.bufferTransform&&this.bufferTransform.setupResources({model:this.model})}_updateModelProps(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=i.updateModelProps(e);return e}_buildResourceTransforms(t,e){(function(t){return!(Vx(t.feedbackBuffers)&&Vx(t.feedbackMap)&&!(t.varyings&&t.varyings.length>0))})(e)&&(this.bufferTransform=new jE(t,e)),function(t){return!(Vx(t._sourceTextures)&&!t._targetTexture&&!t._targetTextureVarying)}(e)&&(this.textureTransform=new QE(t,e)),Rx(this.bufferTransform||this.textureTransform,"must provide source/feedback buffers or source/target textures")}_updateDrawOptions(t){let e=Object.assign({},t);const n=[this.bufferTransform,this.textureTransform].filter(Boolean);for(const i of n)e=Object.assign(e,i.getDrawOptions(e));return e}}function EO(){}const CO={onStart:EO,onUpdate:EO,onInterrupt:EO,onEnd:EO};class OO{constructor(t){this._inProgress=!1,this._handle=null,this.timeline=t,this.settings={}}get inProgress(){return this._inProgress}start(t){this.cancel(),this.settings=wt(wt({},CO),t),this._inProgress=!0,this.settings.onStart(this)}end(){this._inProgress&&(this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1,this.settings.onEnd(this))}cancel(){this._inProgress&&(this.settings.onInterrupt(this),this.timeline.removeChannel(this._handle),this._handle=null,this._inProgress=!1)}update(){if(!this._inProgress)return!1;if(null===this._handle){const{timeline:t,settings:e}=this;this._handle=t.addChannel({delay:t.getTime(),duration:e.duration})}return this.time=this.timeline.getTime(this._handle),this._onUpdate(),this.settings.onUpdate(this),this.timeline.isFinished(this._handle)&&this.end(),!0}_onUpdate(){}}const TO={interpolation:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="interpolation",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,e.settings),this.currentStartIndices=e.startIndices,this.currentLength=0,this.transform=function(t,e){const n=EE(e.size);return new SO(t,{vs:"\n#define SHADER_NAME interpolation-transition-vertex-shader\n\nuniform float time;\nattribute ATTRIBUTE_TYPE aFrom;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vCurrent;\n\nvoid main(void) {\n vCurrent = mix(aFrom, aTo, time);\n gl_Position = vec4(0.0);\n}\n",defines:{ATTRIBUTE_TYPE:n},varyings:["vCurrent"]})}(t,e);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){if(t.duration<=0)return void this.transition.cancel();const{buffers:n,attribute:i}=this;CE(n);const r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aFrom:n[0],aTo:SE(0,i)},feedbackBuffers:{vCurrent:n[1]}})}update(){const t=this.transition.update();if(t){const{time:t,settings:{duration:e,easing:n}}=this.transition,i=n(t/e);this.transform.run({uniforms:{time:i}})}return t}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete()}},spring:class{constructor({gl:t,attribute:e,timeline:n}){this.gl=t,this.type="spring",this.transition=new OO(n),this.attribute=e,this.attributeInTransition=new kE(t,ii(wt({},e.settings),{normalized:!1})),this.currentStartIndices=e.startIndices,this.currentLength=0,this.texture=function(t){return new lS(t,{data:new Uint8Array(4),format:6408,type:5121,border:0,mipmaps:!1,dataFormat:6408,width:1,height:1})}(t),this.framebuffer=function(t,e){return new SS(t,{id:"spring-transition-is-transitioning-framebuffer",width:1,height:1,attachments:{36064:e}})}(t,this.texture),this.transform=function(t,e,n){const i=EE(e.size);return new SO(t,{framebuffer:n,vs:"\n#define SHADER_NAME spring-transition-vertex-shader\n\n#define EPSILON 0.00001\n\nuniform float stiffness;\nuniform float damping;\nattribute ATTRIBUTE_TYPE aPrev;\nattribute ATTRIBUTE_TYPE aCur;\nattribute ATTRIBUTE_TYPE aTo;\nvarying ATTRIBUTE_TYPE vNext;\nvarying float vIsTransitioningFlag;\n\nATTRIBUTE_TYPE getNextValue(ATTRIBUTE_TYPE cur, ATTRIBUTE_TYPE prev, ATTRIBUTE_TYPE dest) {\n ATTRIBUTE_TYPE velocity = cur - prev;\n ATTRIBUTE_TYPE delta = dest - cur;\n ATTRIBUTE_TYPE spring = delta * stiffness;\n ATTRIBUTE_TYPE damper = velocity * -1.0 * damping;\n return spring + damper + velocity + cur;\n}\n\nvoid main(void) {\n bool isTransitioning = length(aCur - aPrev) > EPSILON || length(aTo - aCur) > EPSILON;\n vIsTransitioningFlag = isTransitioning ? 1.0 : 0.0;\n\n vNext = getNextValue(aCur, aPrev, aTo);\n gl_Position = vec4(0, 0, 0, 1);\n gl_PointSize = 100.0;\n}\n",fs:"\n#define SHADER_NAME spring-transition-is-transitioning-fragment-shader\n\nvarying float vIsTransitioningFlag;\n\nvoid main(void) {\n if (vIsTransitioningFlag == 0.0) {\n discard;\n }\n gl_FragColor = vec4(1.0);\n}",defines:{ATTRIBUTE_TYPE:i},varyings:["vNext"]})}(t,e,this.framebuffer);const i={byteLength:0,usage:35050};this.buffers=[new tS(t,i),new tS(t,i),new tS(t,i)]}get inProgress(){return this.transition.inProgress}start(t,e){const{buffers:n,attribute:i}=this,r={numInstances:e,attribute:i,fromLength:this.currentLength,fromStartIndices:this.currentStartIndices,getData:t.enter};for(const s of n)TE(wt({buffer:s},r));this.currentStartIndices=i.startIndices,this.currentLength=OE(i,e),this.attributeInTransition.update({buffer:n[1],value:i.value}),this.transition.start(t),this.transform.update({elementCount:Math.floor(this.currentLength/i.size),sourceBuffers:{aTo:SE(0,i)}})}update(){const{buffers:t,transform:e,framebuffer:n,transition:i}=this;return!!i.update()&&(e.update({sourceBuffers:{aPrev:t[0],aCur:t[1]},feedbackBuffers:{vNext:t[2]}}),e.run({framebuffer:n,discard:!1,clearRenderTarget:!0,uniforms:{stiffness:i.settings.stiffness,damping:i.settings.damping},parameters:{depthTest:!1,blend:!0,viewport:[0,0,1,1],blendFunc:[1,1],blendEquation:[32776,32776]}}),CE(t),this.attributeInTransition.update({buffer:t[1],value:this.attribute.value}),_S(n)[0]>0||i.end(),!0)}cancel(){for(this.transition.cancel(),this.transform.delete();this.buffers.length;)this.buffers.pop().delete();this.texture.delete(),this.texture=null,this.framebuffer.delete(),this.framebuffer=null}}};class kO{constructor(t,{id:e,timeline:n}){this.id=e,this.gl=t,this.timeline=n,this.transitions={},this.needsRedraw=!1,this.numInstances=1,this.isSupported=SO.isSupported(t)}finalize(){for(const t in this.transitions)this._removeTransition(t)}update({attributes:t,transitions:e,numInstances:n}){this.numInstances=n||1;for(const i in t){const n=t[i],r=n.getTransitionSetting(e);!r||this._updateAttribute(i,n,r)}for(const i in this.transitions){const n=t[i];(!n||!n.getTransitionSetting(e))&&this._removeTransition(i)}}hasAttribute(t){const e=this.transitions[t];return e&&e.inProgress}getAttributes(){const t={};for(const e in this.transitions){const n=this.transitions[e];n.inProgress&&(t[e]=n.attributeInTransition)}return t}run(){if(!this.isSupported||0===this.numInstances)return!1;for(const e in this.transitions)this.transitions[e].update()&&(this.needsRedraw=!0);const t=this.needsRedraw;return this.needsRedraw=!1,t}_removeTransition(t){this.transitions[t].cancel(),delete this.transitions[t]}_updateAttribute(t,e,n){const i=this.transitions[t];let r=!i||i.type!==n.type;if(r){if(!this.isSupported)return void Mw.warn("WebGL2 not supported by this browser. Transition for ".concat(t," is disabled."))();i&&this._removeTransition(t);const s=TO[n.type];s?this.transitions[t]=new s({attribute:e,timeline:this.timeline,gl:this.gl}):(Mw.error("unsupported transition type '".concat(n.type,"'"))(),r=!1)}(r||e.needsRedraw())&&(this.needsRedraw=!0,this.transitions[t].start(n,this.numInstances))}}const AO="attributeManager.invalidate";class PO{constructor(t,{id:e="attribute-manager",stats:n,timeline:i}={}){this.id=e,this.gl=t,this.attributes={},this.updateTriggers={},this.accessors={},this.needsRedraw=!0,this.userData={},this.stats=n,this.attributeTransitionManager=new kO(t,{id:"".concat(e,"-transitions"),timeline:i}),Object.seal(this)}finalize(){for(const t in this.attributes)this.attributes[t].delete();this.attributeTransitionManager.finalize()}getNeedsRedraw(t={clearRedrawFlags:!1}){const e=this.needsRedraw;return this.needsRedraw=this.needsRedraw&&!t.clearRedrawFlags,e&&this.id}setNeedsRedraw(t=!0){return this.needsRedraw=!0,this}add(t,e){this._add(t,e)}addInstanced(t,e){this._add(t,e,{instanced:1})}remove(t){for(let e=0;e{t[n]||(t[n]=[]),t[n].push(e)});this.updateTriggers=t}_invalidateTrigger(t,e){const{attributes:n,updateTriggers:i}=this,r=i[t];return r&&r.forEach(t=>{const i=n[t];i&&i.setNeedsUpdate(i.id,e)}),r}_updateAttribute(t){const{attribute:e,numInstances:n}=t;PE("attribute.updateStart",e),e.allocate(n)&&PE("attribute.allocate",e,n),e.updateBuffer(t)&&(this.needsRedraw=!0,PE("attribute.updateEnd",e,n))}}function MO(t,e,n,i,r){const s=e-t;return(n-e)*r+-s*i+s+e}function IO(t,e){if(Array.isArray(t)){let n=0;for(let i=0;i0}add(t,e,n,i){const{transitions:r}=this;if(r.has(t)){const n=r.get(t),{value:i=n.settings.fromValue}=n;e=i,this.remove(t)}if(!(i=xE(i)))return;const s=DO[i.type];if(!s)return void Mw.error("unsupported transition type '".concat(i.type,"'"))();const o=new s(this.timeline);o.start(ii(wt({},i),{fromValue:e,toValue:n})),r.set(t,o)}remove(t){const{transitions:e}=this;e.has(t)&&(e.get(t).cancel(),e.delete(t))}update(){const t={};for(const[e,n]of this.transitions)n.update(),t[e]=n.value,n.inProgress||this.remove(e);return t}clear(){for(const t of this.transitions.keys())this.remove(t)}}const NO={COMPONENT:Symbol.for("component"),ASYNC_DEFAULTS:Symbol.for("asyncPropDefaults"),ASYNC_ORIGINAL:Symbol.for("asyncPropOriginal"),ASYNC_RESOLVED:Symbol.for("asyncPropResolved")},{COMPONENT:LO}=NO;function jO(t,e){if(!t.transitions)return null;const n={},i=UO(t);for(const r in t.transitions){const s=i[r],o=s&&s.type;("number"===o||"color"===o||"array"===o)&&BO(t[r],e[r],s)&&(n[r]=!0)}return n}function FO({newProps:t,oldProps:e,ignoreProps:n={},propTypes:i={},triggerName:r="props"}={}){if(e===t)return null;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return"".concat(r," changed shallowly");for(const s of Object.keys(t))if(!(s in n)){if(!(s in e))return"".concat(r,".").concat(s," added");const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}for(const s of Object.keys(e))if(!(s in n)){if(!(s in t))return"".concat(r,".").concat(s," dropped");if(!Object.hasOwnProperty.call(t,s)){const n=BO(t[s],e[s],i[s]);if(n)return"".concat(r,".").concat(s," ").concat(n)}}return null}function BO(t,e,n){let i=n&&n.equal;return i&&!i(t,e,n)||!i&&(i=t&&e&&t.equals,i&&!i.call(t,e))?"changed deeply":i||e===t?null:"changed shallowly"}function VO(t,e){if(null===e)return"oldProps is null, initial diff";const n=e.extensions,{extensions:i}=t;if(i===n)return!1;if(i.length!==n.length)return!0;for(let r=0;r{for(const r in i)if(!HO(i[r],n[r])){e=t(i),n=i;break}return e}}function GO(t,e){if(!e)return t;const n=wt(wt({},t),e);if("defines"in e&&(n.defines=wt(wt({},t.defines),e.defines)),"modules"in e&&(n.modules=(t.modules||[]).concat(e.modules),e.modules.some(t=>"project64"===t.name))){const t=n.modules.findIndex(t=>"project32"===t.name);t>=0&&n.modules.splice(t,1)}if("inject"in e)if(t.inject){const i=wt({},t.inject);for(const t in e.inject)i[t]=(i[t]||"")+e.inject[t];n.inject=i}else n.inject=e.inject;return n}function WO(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=e[4],a=e[5],l=e[6],c=e[7],u=e[8],h=e[9],d=e[10],p=e[11],f=e[12],g=e[13],m=e[14],b=e[15],y=n*a-i*o,v=n*l-r*o,_=n*c-s*o,w=i*l-r*a,x=i*c-s*a,S=r*c-s*l,E=u*g-h*f,C=u*m-d*f,O=u*b-p*f,T=h*m-d*g,k=h*b-p*g,A=d*b-p*m,P=y*A-v*k+_*T+w*O-x*C+S*E;return P?(t[0]=(a*A-l*k+c*T)*(P=1/P),t[1]=(r*k-i*A-s*T)*P,t[2]=(g*S-m*x+b*w)*P,t[3]=(d*x-h*S-p*w)*P,t[4]=(l*O-o*A-c*C)*P,t[5]=(n*A-r*O+s*C)*P,t[6]=(m*_-f*S-b*v)*P,t[7]=(u*S-d*_+p*v)*P,t[8]=(o*k-a*O+c*E)*P,t[9]=(i*O-n*k-s*E)*P,t[10]=(f*x-g*_+b*y)*P,t[11]=(h*_-u*x-p*y)*P,t[12]=(a*C-o*T-l*E)*P,t[13]=(n*T-i*C+r*E)*P,t[14]=(g*v-f*w-m*y)*P,t[15]=(u*w-h*v+d*y)*P,t):null}function qO(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],g=e[12],m=e[13],b=e[14],y=e[15],v=n[0],_=n[1],w=n[2],x=n[3];return t[0]=v*i+_*a+w*h+x*g,t[1]=v*r+_*l+w*d+x*m,t[2]=v*s+_*c+w*p+x*b,t[3]=v*o+_*u+w*f+x*y,t[4]=(v=n[4])*i+(_=n[5])*a+(w=n[6])*h+(x=n[7])*g,t[5]=v*r+_*l+w*d+x*m,t[6]=v*s+_*c+w*p+x*b,t[7]=v*o+_*u+w*f+x*y,t[8]=(v=n[8])*i+(_=n[9])*a+(w=n[10])*h+(x=n[11])*g,t[9]=v*r+_*l+w*d+x*m,t[10]=v*s+_*c+w*p+x*b,t[11]=v*o+_*u+w*f+x*y,t[12]=(v=n[12])*i+(_=n[13])*a+(w=n[14])*h+(x=n[15])*g,t[13]=v*r+_*l+w*d+x*m,t[14]=v*s+_*c+w*p+x*b,t[15]=v*o+_*u+w*f+x*y,t}function XO(t,e,n){var i,r,s,o,a,l,c,u,h,d,p,f,g=n[0],m=n[1],b=n[2];return e===t?(t[12]=e[0]*g+e[4]*m+e[8]*b+e[12],t[13]=e[1]*g+e[5]*m+e[9]*b+e[13],t[14]=e[2]*g+e[6]*m+e[10]*b+e[14],t[15]=e[3]*g+e[7]*m+e[11]*b+e[15]):(r=e[1],s=e[2],o=e[3],a=e[4],l=e[5],c=e[6],u=e[7],h=e[8],d=e[9],p=e[10],f=e[11],t[0]=i=e[0],t[1]=r,t[2]=s,t[3]=o,t[4]=a,t[5]=l,t[6]=c,t[7]=u,t[8]=h,t[9]=d,t[10]=p,t[11]=f,t[12]=i*g+a*m+h*b+e[12],t[13]=r*g+l*m+d*b+e[13],t[14]=s*g+c*m+p*b+e[14],t[15]=o*g+u*m+f*b+e[15]),t}function YO(t,e,n){var i=n[0],r=n[1],s=n[2];return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t[3]=e[3]*i,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function KO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[4],o=e[5],a=e[6],l=e[7],c=e[8],u=e[9],h=e[10],d=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=s*r+c*i,t[5]=o*r+u*i,t[6]=a*r+h*i,t[7]=l*r+d*i,t[8]=c*r-s*i,t[9]=u*r-o*i,t[10]=h*r-a*i,t[11]=d*r-l*i,t}function QO(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[4],u=e[5],h=e[6],d=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r+c*i,t[1]=o*r+u*i,t[2]=a*r+h*i,t[3]=l*r+d*i,t[4]=c*r-s*i,t[5]=u*r-o*i,t[6]=h*r-a*i,t[7]=d*r-l*i,t}function ZO(t,e,n,i,r){var s,o=1/Math.tan(e/2);return t[0]=o/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=r&&r!==1/0?(t[10]=(r+i)*(s=1/(i-r)),t[14]=2*r*i*s):(t[10]=-1,t[14]=-2*i),t}function JO(t,e){var n=t[0],i=t[1],r=t[2],s=t[3],o=t[4],a=t[5],l=t[6],c=t[7],u=t[8],h=t[9],d=t[10],p=t[11],f=t[12],g=t[13],m=t[14],b=t[15],y=e[0],v=e[1],_=e[2],w=e[3],x=e[4],S=e[5],E=e[6],C=e[7],O=e[8],T=e[9],k=e[10],A=e[11],P=e[12],M=e[13],I=e[14],D=e[15];return Math.abs(n-y)<=WS*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-v)<=WS*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(r-_)<=WS*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(s-w)<=WS*Math.max(1,Math.abs(s),Math.abs(w))&&Math.abs(o-x)<=WS*Math.max(1,Math.abs(o),Math.abs(x))&&Math.abs(a-S)<=WS*Math.max(1,Math.abs(a),Math.abs(S))&&Math.abs(l-E)<=WS*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-C)<=WS*Math.max(1,Math.abs(c),Math.abs(C))&&Math.abs(u-O)<=WS*Math.max(1,Math.abs(u),Math.abs(O))&&Math.abs(h-T)<=WS*Math.max(1,Math.abs(h),Math.abs(T))&&Math.abs(d-k)<=WS*Math.max(1,Math.abs(d),Math.abs(k))&&Math.abs(p-A)<=WS*Math.max(1,Math.abs(p),Math.abs(A))&&Math.abs(f-P)<=WS*Math.max(1,Math.abs(f),Math.abs(P))&&Math.abs(g-M)<=WS*Math.max(1,Math.abs(g),Math.abs(M))&&Math.abs(m-I)<=WS*Math.max(1,Math.abs(m),Math.abs(I))&&Math.abs(b-D)<=WS*Math.max(1,Math.abs(b),Math.abs(D))}function tT(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t}function eT(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3];return t[0]=n[0]*i+n[4]*r+n[8]*s+n[12]*o,t[1]=n[1]*i+n[5]*r+n[9]*s+n[13]*o,t[2]=n[2]*i+n[6]*r+n[10]*s+n[14]*o,t[3]=n[3]*i+n[7]*r+n[11]*s+n[15]*o,t}!function(){var t=new qS(4);qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0)}();const nT=[0,0,0,0],iT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0],rT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],sT=[0,0,0],oT=[0,0,0],aT=$O(function({viewport:t,devicePixelRatio:e,coordinateSystem:n,coordinateOrigin:i}){const{projectionCenter:r,viewProjectionMatrix:s,originCommon:o,cameraPosCommon:a,shaderCoordinateOrigin:l,geospatialOrigin:c}=function(t,e,n){const{viewMatrixUncentered:i,projectionMatrix:r}=t;let{viewMatrix:s,viewProjectionMatrix:o}=t,a=nT,l=nT,c=t.cameraPosition;const{geospatialOrigin:u,shaderCoordinateOrigin:h,offsetMode:d}=lT(t,e,n);return d&&(l=t.projectPosition(u||h),c=[c[0]-l[0],c[1]-l[1],c[2]-l[2]],l[3]=1,a=eT([],l,o),s=i||s,o=qO([],r,s),o=qO([],o,iT)),{viewMatrix:s,viewProjectionMatrix:o,projectionCenter:a,originCommon:l,cameraPosCommon:c,shaderCoordinateOrigin:h,geospatialOrigin:u}}(t,n,i),u=t.getDistanceScales(),h=[t.width*e,t.height*e],d=t.projectionMatrix.transform([0,0,-t.focalDistance,1])[3]||1,p={project_uCoordinateSystem:n,project_uProjectionMode:t.projectionMode,project_uCoordinateOrigin:l,project_uCommonOrigin:o.slice(0,3),project_uCenter:r,project_uViewportSize:h,project_uDevicePixelRatio:e,project_uFocalDistance:d,project_uCommonUnitsPerMeter:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit:u.unitsPerMeter,project_uCommonUnitsPerWorldUnit2:sT,project_uScale:t.scale,project_uViewProjectionMatrix:s,project_uCameraPosition:a};if(c){const e=t.getDistanceScales(c);switch(n){case Iw.METER_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerMeter,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerMeter2;break;case Iw.LNGLAT:case Iw.LNGLAT_OFFSETS:p.project_uCommonUnitsPerWorldUnit=e.unitsPerDegree,p.project_uCommonUnitsPerWorldUnit2=e.unitsPerDegree2;break;case Iw.CARTESIAN:p.project_uCommonUnitsPerWorldUnit=[1,1,e.unitsPerMeter[2]],p.project_uCommonUnitsPerWorldUnit2=[0,0,e.unitsPerMeter2[2]]}}return p});function lT(t,e,n=oT){let i,r=n,s=!0;switch(i=e===Iw.LNGLAT_OFFSETS||e===Iw.METER_OFFSETS?n:t.isGeospatial?[Math.fround(t.longitude),Math.fround(t.latitude),0]:null,t.projectionMode){case Dw.WEB_MERCATOR:(e===Iw.LNGLAT||e===Iw.CARTESIAN)&&(s=!1);break;case Dw.WEB_MERCATOR_AUTO_OFFSET:e===Iw.LNGLAT?r=i:e===Iw.CARTESIAN&&(r=[Math.fround(t.center[0]),Math.fround(t.center[1]),0],i=t.unprojectPosition(r),r[0]-=n[0],r[1]-=n[1],r[2]-=n[2]);break;case Dw.IDENTITY:r=t.position.map(Math.fround);break;case Dw.GLOBE:s=!1,i=null;break;default:s=!1}return r[2]=r[2]||0,{geospatialOrigin:i,shaderCoordinateOrigin:r,offsetMode:s}}class cT extends VS{get ELEMENTS(){return BS(!1),0}get RANK(){return BS(!1),0}toString(){let t="[";if(MS.printRowMajor){t+="row-major:";for(let e=0;e2*Math.PI)throw Error("radians");const s=n*Math.tan(t/2),o=s*e;return(new bT).ortho({left:-o,right:o,bottom:-s,top:s,near:i,far:r})}perspective({fovy:t,fov:e=45*Math.PI/180,aspect:n=1,near:i=.1,far:r=500}={}){if((t=t||e)>2*Math.PI)throw Error("radians");return ZO(this,t,n,i,r),this.check()}determinant(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3],s=t[4],o=t[5],a=t[6],l=t[7],c=t[8],u=t[9],h=t[10],d=t[11],p=t[12],f=t[13],g=t[14],m=t[15];return(e*o-n*s)*(h*m-d*g)-(e*a-i*s)*(u*m-d*f)+(e*l-r*s)*(u*g-h*f)+(n*a-i*o)*(c*m-d*p)-(n*l-r*o)*(c*g-h*p)+(i*l-r*a)*(c*f-u*p)}(this)}getScale(t=[-0,-0,-0]){return t[0]=Math.sqrt(this[0]*this[0]+this[1]*this[1]+this[2]*this[2]),t[1]=Math.sqrt(this[4]*this[4]+this[5]*this[5]+this[6]*this[6]),t[2]=Math.sqrt(this[8]*this[8]+this[9]*this[9]+this[10]*this[10]),t}getTranslation(t=[-0,-0,-0]){return t[0]=this[12],t[1]=this[13],t[2]=this[14],t}getRotation(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=0,t[4]=this[4]*i,t[5]=this[5]*r,t[6]=this[6]*s,t[7]=0,t[8]=this[8]*i,t[9]=this[9]*r,t[10]=this[10]*s,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}getRotationMatrix3(t=[-0,-0,-0,-0,-0,-0,-0,-0,-0],e=null){const n=this.getScale(e||[-0,-0,-0]),i=1/n[0],r=1/n[1],s=1/n[2];return t[0]=this[0]*i,t[1]=this[1]*r,t[2]=this[2]*s,t[3]=this[4]*i,t[4]=this[5]*r,t[5]=this[6]*s,t[6]=this[8]*i,t[7]=this[9]*r,t[8]=this[10]*s,t}transpose(){return function(t,e){if(t===e){var n=e[1],i=e[2],r=e[3],s=e[6],o=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=n,t[6]=e[9],t[7]=e[13],t[8]=i,t[9]=s,t[11]=e[14],t[12]=r,t[13]=o,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15]}(this,this),this.check()}invert(){return WO(this,this),this.check()}multiplyLeft(t){return qO(this,t,this),this.check()}multiplyRight(t){return qO(this,this,t),this.check()}rotateX(t){return KO(this,this,t),this.check()}rotateY(t){return function(t,e,n){var i=Math.sin(n),r=Math.cos(n),s=e[0],o=e[1],a=e[2],l=e[3],c=e[8],u=e[9],h=e[10],d=e[11];e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=s*r-c*i,t[1]=o*r-u*i,t[2]=a*r-h*i,t[3]=l*r-d*i,t[8]=s*i+c*r,t[9]=o*i+u*r,t[10]=a*i+h*r,t[11]=l*i+d*r}(this,this,t),this.check()}rotateZ(t){return QO(this,this,t),this.check()}rotateXYZ([t,e,n]){return this.rotateX(t).rotateY(e).rotateZ(n)}rotateAxis(t,e){return function(t,e,n,i){var r,s,o,a,l,c,u,h,d,p,f,g,m,b,y,v,_,w,x,S,E,C,O,T,k=i[0],A=i[1],P=i[2],M=Math.hypot(k,A,P);M=-90&&e<=90,"invalid latitude"),[512*(t*ET+xT)/(2*xT),512*(xT+Math.log(Math.tan(ST+e*ET*.5)))/(2*xT)]}function kT([t,e]){const n=t/512*(2*xT)-xT,i=2*(Math.atan(Math.exp(e/512*(2*xT)-xT))-ST);return[n*CT,i*CT]}function AT({latitude:t,longitude:e,highPrecision:n=!1}){wT(Number.isFinite(t)&&Number.isFinite(e));const i={},r=Math.cos(t*ET),s=512/360,o=s/r,a=512/OT/r;if(i.unitsPerMeter=[a,a,a],i.metersPerUnit=[1/a,1/a,1/a],i.unitsPerDegree=[s,o,a],i.degreesPerUnit=[1/s,1/o,1/a],n){const e=ET*Math.tan(t*ET)/r,n=512/OT*e,l=n/o*a;i.unitsPerDegree2=[0,s*e/2,n],i.unitsPerMeter2=[l,0,l]}return i}function PT(t,e){const[n,i,r]=t,[s,o,a]=e,{unitsPerMeter:l,unitsPerMeter2:c}=AT({longitude:n,latitude:i,highPrecision:!0}),u=TT(t);u[0]+=s*(l[0]+c[0]*o),u[1]+=o*(l[1]+c[1]*o);const h=kT(u),d=(r||0)+(a||0);return Number.isFinite(r)||Number.isFinite(a)?[h[0],h[1],d]:h}function MT({height:t,pitch:e,bearing:n,altitude:i,scale:r,center:s=null}){const o=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return XO(o,o,[0,0,-i]),KO(o,o,-e*ET),QO(o,o,n*ET),YO(o,o,[r/=t,r,r]),s&&XO(o,o,function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}([],s)),o}function IT({width:t,height:e,fovy:n=DT(1.5),altitude:i,pitch:r=0,nearZMultiplier:s=1,farZMultiplier:o=1}){void 0!==i&&(n=DT(i));const a=.5*n*ET,l=RT(n),c=r*ET,u=Math.sin(a)*l/Math.sin(Math.min(Math.max(Math.PI/2-c-a,.01),Math.PI-.01));return{fov:2*a,aspect:t/e,focalDistance:l,near:s,far:(Math.sin(c)*u+l)*o}}function DT(t){return 2*Math.atan(.5/t)*CT}function RT(t){return.5/Math.tan(.5*t*ET)}function NT(t,e){const[n,i,r=0]=t;return wT(Number.isFinite(n)&&Number.isFinite(i)&&Number.isFinite(r)),yT(e,[n,i,r,1])}function LT(t,e,n=0){const[i,r,s]=t;if(wT(Number.isFinite(i)&&Number.isFinite(r),"invalid pixel coordinate"),Number.isFinite(s))return yT(e,[i,r,s,1]);const o=yT(e,[i,r,0,1]),a=yT(e,[i,r,1,1]),l=o[2],c=a[2];return dT([],o,a,l===c?0:((n||0)-l)/(c-l))}function jT({width:t,height:e,bounds:n,minExtent:i=0,maxZoom:r=24,padding:s=0,offset:o=[0,0]}){const[[a,l],[c,u]]=n;Number.isFinite(s)?s={top:s,bottom:s,left:s,right:s}:wT(Number.isFinite(s.top)&&Number.isFinite(s.bottom)&&Number.isFinite(s.left)&&Number.isFinite(s.right));const h=new zT({width:t,height:e,longitude:0,latitude:0,zoom:0}),d=h.project([a,u]),p=h.project([c,l]),f=[Math.max(Math.abs(p[0]-d[0]),i),Math.max(Math.abs(p[1]-d[1]),i)],g=[t-s.left-s.right-2*Math.abs(o[0]),e-s.top-s.bottom-2*Math.abs(o[1])];wT(g[0]>0&&g[1]>0);const m=g[0]/f[0],b=g[1]/f[1],y=h.unproject([(p[0]+d[0])/2+(s.right-s.left)/2/m,(p[1]+d[1])/2+(s.bottom-s.top)/2/b]),v=Math.min(r,h.zoom+_T(Math.abs(Math.min(m,b))));return wT(Number.isFinite(v)),{longitude:y[0],latitude:y[1],zoom:v}}const FT=Math.PI/180;function BT(t,e=0){const{width:n,height:i,unproject:r}=t,s={targetZ:e},o=r([0,i],s),a=r([n,i],s);let l,c;return(t.fovy?.5*t.fovy*FT:Math.atan(.5/t.altitude))>(90-t.pitch)*FT-.01?(l=VT(t,0,e),c=VT(t,n,e)):(l=r([0,0],s),c=r([n,0],s)),[o,a,c,l]}function VT(t,e,n){const{pixelUnprojectionMatrix:i}=t,r=yT(i,[e,0,1,1]),s=yT(i,[e,t.height,1,1]),o=kT(dT([],r,s,(n*t.distanceScales.unitsPerMeter[2]-r[2])/(s[2]-r[2])));return o[2]=n,o}class zT{constructor({width:t,height:e,latitude:n=0,longitude:i=0,zoom:r=0,pitch:s=0,bearing:o=0,altitude:a=null,fovy:l=null,position:c=null,nearZMultiplier:u=.02,farZMultiplier:h=1.01}={width:1,height:1}){t=t||1,e=e||1,null===l&&null===a?l=DT(a=1.5):null===l?l=DT(a):null===a&&(a=RT(l));const d=function(t){return Math.pow(2,t)}(r);a=Math.max(.75,a);const p=AT({longitude:i,latitude:n}),f=TT([i,n]);f[2]=0,c&&function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2]}(f,f,function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t}([],c,p.unitsPerMeter)),this.projectionMatrix=function({width:t,height:e,pitch:n,altitude:i,fovy:r,nearZMultiplier:s,farZMultiplier:o}){const{fov:a,aspect:l,near:c,far:u}=IT({width:t,height:e,altitude:i,fovy:r,pitch:n,nearZMultiplier:s,farZMultiplier:o});return ZO([],a,l,c,u)}({width:t,height:e,pitch:s,fovy:l,nearZMultiplier:u,farZMultiplier:h}),this.viewMatrix=MT({height:e,scale:d,center:f,pitch:s,bearing:o,altitude:a}),this.width=t,this.height=e,this.scale=d,this.latitude=n,this.longitude=i,this.zoom=r,this.pitch=s,this.bearing=o,this.altitude=a,this.fovy=l,this.center=f,this.meterOffset=c||[0,0,0],this.distanceScales=p,this._initMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),Object.freeze(this)}_initMatrices(){const{width:t,height:e,projectionMatrix:n,viewMatrix:i}=this,r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];qO(r,r,n),qO(r,r,i),this.viewProjectionMatrix=r;const s=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];YO(s,s,[t/2,-e/2,1]),XO(s,s,[1,-1,0]),qO(s,s,r);const o=WO([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],s);if(!o)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=s,this.pixelUnprojectionMatrix=o}equals(t){return t instanceof zT&&t.width===this.width&&t.height===this.height&&JO(t.projectionMatrix,this.projectionMatrix)&&JO(t.viewMatrix,this.viewMatrix)}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=TT(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=kT(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return TT(t)}unprojectFlat(t){return kT(t)}getMapCenterByLngLatPosition({lngLat:t,pos:e}){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],TT(t),hT([],n));return kT(uT([],this.center,i))}getLocationAtPoint({lngLat:t,pos:e}){return this.getMapCenterByLngLatPosition({lngLat:t,pos:e})}fitBounds(t,e={}){const{width:n,height:i}=this,{longitude:r,latitude:s,zoom:o}=jT(Object.assign({width:n,height:i,bounds:t},e));return new zT({width:n,height:i,longitude:r,latitude:s,zoom:o})}getBounds(t){const e=this.getBoundingRegion(t),n=Math.min(...e.map(t=>t[0])),i=Math.max(...e.map(t=>t[0]));return[[n,Math.min(...e.map(t=>t[1]))],[i,Math.max(...e.map(t=>t[1]))]]}getBoundingRegion(t={}){return BT(this,t.z||0)}}const UT=Math.PI/180,HT=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],$T=[0,0,0],GT={unitsPerMeter:[1,1,1],metersPerUnit:[1,1,1]};let WT=(()=>{class t{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r=1,height:s=1}=t;this.id=e||this.constructor.displayName||"viewport",this.x=n,this.y=i,this.width=r||1,this.height=s||1,this._frustumPlanes={},this._initViewMatrix(t),this._initProjectionMatrix(t),this._initPixelMatrices(),this.equals=this.equals.bind(this),this.project=this.project.bind(this),this.unproject=this.unproject.bind(this),this.projectPosition=this.projectPosition.bind(this),this.unprojectPosition=this.unprojectPosition.bind(this),this.projectFlat=this.projectFlat.bind(this),this.unprojectFlat=this.unprojectFlat.bind(this)}get metersPerPixel(){return this.distanceScales.metersPerUnit[2]/this.scale}get projectionMode(){return this.isGeospatial?this.zoom<12?Dw.WEB_MERCATOR:Dw.WEB_MERCATOR_AUTO_OFFSET:Dw.IDENTITY}equals(e){return e instanceof t&&(this===e||e.width===this.width&&e.height===this.height&&e.scale===this.scale&&FS(e.projectionMatrix,this.projectionMatrix)&&FS(e.viewMatrix,this.viewMatrix))}project(t,{topLeft:e=!0}={}){const n=NT(this.projectPosition(t),this.pixelProjectionMatrix),[i,r]=n,s=e?r:this.height-r;return 2===t.length?[i,s]:[i,s,n[2]]}unproject(t,{topLeft:e=!0,targetZ:n}={}){const[i,r,s]=t,o=LT([i,e?r:this.height-r,s],this.pixelUnprojectionMatrix,n&&n*this.distanceScales.unitsPerMeter[2]),[a,l,c]=this.unprojectPosition(o);return Number.isFinite(s)?[a,l,c]:Number.isFinite(n)?[a,l,n]:[a,l]}projectPosition(t){const[e,n]=this.projectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.unitsPerMeter[2]]}unprojectPosition(t){const[e,n]=this.unprojectFlat(t);return[e,n,(t[2]||0)*this.distanceScales.metersPerUnit[2]]}projectFlat(t){return this.isGeospatial?TT(t):t}unprojectFlat(t){return this.isGeospatial?kT(t):t}getBounds(t={}){const e={targetZ:t.z||0},n=this.unproject([0,0],e),i=this.unproject([this.width,0],e),r=this.unproject([0,this.height],e),s=this.unproject([this.width,this.height],e);return[Math.min(n[0],i[0],r[0],s[0]),Math.min(n[1],i[1],r[1],s[1]),Math.max(n[0],i[0],r[0],s[0]),Math.max(n[1],i[1],r[1],s[1])]}getDistanceScales(t=null){return t?AT({longitude:t[0],latitude:t[1],highPrecision:!0}):this.distanceScales}containsPixel({x:t,y:e,width:n=1,height:i=1}){return t{class t extends WT{constructor(t={}){const{latitude:e=0,longitude:n=0,zoom:i=11,pitch:r=0,bearing:s=0,nearZMultiplier:o=.1,farZMultiplier:a=1.01,orthographic:l=!1,repeat:c=!1,worldOffset:u=0}=t;let{width:h,height:d,altitude:p=1.5}=t;const f=Math.pow(2,i);h=h||1,d=d||1,p=Math.max(.75,p);const{fov:g,aspect:m,focalDistance:b,near:y,far:v}=IT({width:h,height:d,pitch:r,altitude:p,nearZMultiplier:o,farZMultiplier:a});let _=MT({height:d,pitch:r,bearing:s,scale:f,altitude:p});u&&(_=(new bT).translate([512*u,0,0]).multiplyLeft(_)),super(ii(wt({},t),{width:h,height:d,viewMatrix:_,longitude:n,latitude:e,zoom:i,orthographic:l,fovyRadians:g,aspect:m,focalDistance:b,near:y,far:v})),this.latitude=e,this.longitude=n,this.zoom=i,this.pitch=r,this.bearing=s,this.altitude=p,this.orthographic=l,this._subViewports=c?[]:null,Object.freeze(this)}get subViewports(){if(this._subViewports&&!this._subViewports.length){const e=this.getBounds(),n=Math.floor((e[0]+180)/360),i=Math.ceil((e[2]-180)/360);for(let r=n;r<=i;r++){const e=r?new t(ii(wt({},this),{worldOffset:r})):this;this._subViewports.push(e)}}return this._subViewports}addMetersToLngLat(t,e){return PT(t,e)}panByPosition(t,e){const n=LT(e,this.pixelUnprojectionMatrix),i=uT([],this.projectFlat(t),hT([],n)),r=uT([],this.center,i),[s,o]=this.unprojectFlat(r);return{longitude:s,latitude:o}}getBounds(t={}){const e=BT(this,t.z||0);return[Math.min(e[0][0],e[1][0],e[2][0],e[3][0]),Math.min(e[0][1],e[1][1],e[2][1],e[3][1]),Math.max(e[0][0],e[1][0],e[2][0],e[3][0]),Math.max(e[0][1],e[1][1],e[2][1],e[3][1])]}fitBounds(e,n={}){const{width:i,height:r}=this,{longitude:s,latitude:o,zoom:a}=jT(wt({width:i,height:r,bounds:e},n));return new t({width:i,height:r,longitude:s,latitude:o,zoom:a})}}return t.displayName="WebMercatorViewport",t})();function XT(t,e,n=!1){const i=e.projectPosition(t);if(n&&e instanceof qT){const[n,r,s=0]=t,o=e.getDistanceScales([n,r]);i[2]=s*o.unitsPerMeter[2]}return i}function KT(t,{viewport:e,modelMatrix:n,coordinateSystem:i,coordinateOrigin:r,offsetMode:s}){let[o,a,l=0]=t;switch(n&&([o,a,l]=eT([],[o,a,l,1],n)),i){case Iw.LNGLAT:return XT([o,a,l],e,s);case Iw.LNGLAT_OFFSETS:return XT([o+r[0],a+r[1],l+(r[2]||0)],e,s);case Iw.METER_OFFSETS:return XT(PT(r,[o,a,l]),e,s);case Iw.CARTESIAN:default:return e.isGeospatial?[o+r[0],a+r[1],l+r[2]]:e.projectPosition([o,a,l])}}const QT={10241:9987,10240:9729,10242:33071,10243:33071},ZT={},JT={boolean:{validate:(t,e)=>!0,equal:(t,e,n)=>Boolean(t)===Boolean(e)},number:{validate:(t,e)=>Number.isFinite(t)&&(!("max"in e)||t<=e.max)&&(!("min"in e)||t>=e.min)},color:{validate:(t,e)=>e.optional&&!t||ik(t)&&(3===t.length||4===t.length),equal:(t,e,n)=>tk(t,e)},accessor:{validate(t,e){const n=rk(t);return"function"===n||n===rk(e.value)},equal:(t,e,n)=>"function"==typeof e||tk(t,e)},array:{validate:(t,e)=>e.optional&&!t||ik(t),equal:(t,e,n)=>n.compare?tk(t,e):t===e},function:{validate:(t,e)=>e.optional&&!t||"function"==typeof t,equal:(t,e,n)=>!n.compare||t===e},data:{transform:(t,e,n)=>{const{dataTransform:i}=n?n.props:{};return i&&t?i(t):t}},image:{transform:(t,e,n)=>function(t,e){const n=t.context&&t.context.gl;if(!n||!e)return null;if(e instanceof lS)return e;e.constructor&&"Object"!==e.constructor.name&&(e={data:e});let i=null;e.compressed&&(i={10241:e.data.length>1?9985:9729});const r=new lS(n,ii(wt({},e),{parameters:wt(wt(wt({},QT),i),t.props.textureParameters)}));return ZT[r.id]=!0,r}(n,t),release:t=>{!function(t){!t||!(t instanceof lS)||ZT[t.id]&&(t.delete(),delete ZT[t.id])}(t)}}};function tk(t,e){if(t===e)return!0;if(!ik(t)||!ik(e))return!1;const n=t.length;if(n!==e.length)return!1;for(let i=0;i{},this.oldProps=yk,this.oldAsyncProps=null}finalize(){for(const t in this.asyncProps){const e=this.asyncProps[t];e.type&&e.type.release&&e.type.release(e.resolvedValue,e.type,this.component)}}getOldProps(){return this.oldAsyncProps||this.oldProps}resetOldProps(){this.oldAsyncProps=null,this.oldProps=this.component.props}freezeAsyncOldProps(){if(!this.oldAsyncProps){this.oldProps=this.oldProps||this.component.props,this.oldAsyncProps=Object.create(this.oldProps);for(const t in this.asyncProps)Object.defineProperty(this.oldAsyncProps,t,{enumerable:!0,value:this.oldProps[t]})}}hasAsyncProp(t){return t in this.asyncProps}getAsyncProp(t){const e=this.asyncProps[t];return e&&e.resolvedValue}isAsyncPropLoading(t){if(t){const e=this.asyncProps[t];return Boolean(e&&e.pendingLoadCount>0&&e.pendingLoadCount!==e.resolvedLoadCount)}for(const e in this.asyncProps)if(this.isAsyncPropLoading(e))return!0;return!1}reloadAsyncProp(t,e){this._watchPromise(t,Promise.resolve(e))}setAsyncProps(t){const e=t[mk]||{},n=t[gk]||t,i=t[bk]||{};for(const r in e){const t=e[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t),e[r]=this.getAsyncProp(r)}for(const r in n){const t=n[r];this._createAsyncPropData(r,i[r]),this._updateAsyncProp(r,t)}}_updateAsyncProp(t,e){if(this._didAsyncInputValueChange(t,e)){if("string"==typeof e){var n;const i=null===(n=this.layer)||void 0===n?void 0:n.props.fetch;i&&(e=i(e,{propName:t,layer:this.layer}))}if(e instanceof Promise)return void this._watchPromise(t,e);if(fE(e))return void this._resolveAsyncIterable(t,e);this._setPropValue(t,e)}}_didAsyncInputValueChange(t,e){const n=this.asyncProps[t];return e!==n.resolvedValue&&e!==n.lastValue&&(n.lastValue=e,!0)}_setPropValue(t,e){const n=this.asyncProps[t];e=this._postProcessValue(n,e),n.resolvedValue=e,n.pendingLoadCount++,n.resolvedLoadCount=n.pendingLoadCount}_setAsyncPropValue(t,e,n){const i=this.asyncProps[t];i&&n>=i.resolvedLoadCount&&void 0!==e&&(this.freezeAsyncOldProps(),i.resolvedValue=e,i.resolvedLoadCount=n,this.onAsyncPropUpdated(t,e))}_watchPromise(t,e){const n=this.asyncProps[t];n.pendingLoadCount++;const i=n.pendingLoadCount;e.then(e=>{var r;e=this._postProcessValue(n,e),this._setAsyncPropValue(t,e,i);const s=null===(r=this.layer)||void 0===r?void 0:r.props.onDataLoad;"data"===t&&s&&s(e,{propName:t,layer:this.layer})}).catch(e=>{var n;null===(n=this.layer)||void 0===n||n.raiseError(e,"loading ".concat(t," of ").concat(this.layer))})}_resolveAsyncIterable(t,e){var n=this;return gS(function*(){var i;"data"!==t&&n._setPropValue(t,e);const r=n.asyncProps[t];r.pendingLoadCount++;const s=r.pendingLoadCount;let o=[],a=0;var l,c=!0,u=!1;try{for(var h,d,p=fk(e);c=(h=yield p.next()).done,d=yield h.value,!c;c=!0){const e=d,{dataTransform:i}=n.component?n.component.props:{};o=i?i(e,o):o.concat(e),Object.defineProperty(o,"__diff",{enumerable:!1,value:[{startRow:a,endRow:o.length}]}),a=o.length,n._setAsyncPropValue(t,o,s)}}catch(g){u=!0,l=g}finally{try{!c&&null!=p.return&&(yield p.return())}finally{if(u)throw l}}const f=null===(i=n.layer)||void 0===i?void 0:i.props.onDataLoad;f&&f(o,{propName:t,layer:n.layer})})()}_postProcessValue(t,e){const n=t.type;return n&&(n.release&&n.release(t.resolvedValue,n,this.component),n.transform)?n.transform(e,n,this.component):e}_createAsyncPropData(t,e){if(!this.asyncProps[t]){const n=this.component&&this.component.constructor._propTypes;this.asyncProps[t]={type:n&&n[t],lastValue:null,resolvedValue:e,pendingLoadCount:0,resolvedLoadCount:0}}}}const{ASYNC_ORIGINAL:_k,ASYNC_RESOLVED:wk,ASYNC_DEFAULTS:xk}=NO,Sk={};let Ek=0,Ck=(()=>{class t{constructor(){this.props=ck.apply(this,arguments),this.id=this.props.id,this.count=Ek++,this.lifecycle="Awaiting state",this.parent=null,this.context=null,this.state=null,this.internalState=null,Object.seal(this)}clone(t){const{props:e}=this,n={};for(const i in e[xk])i in e[wk]?n[i]=e[wk][i]:i in e[_k]&&(n[i]=e[_k][i]);return new this.constructor(wt(wt(wt({},e),n),t))}get stats(){return this.internalState.stats}_initState(){this.internalState=new vk({})}}return t.componentName="Component",t.defaultProps=Sk,t})();class Ok extends vk{constructor({attributeManager:t,layer:e}){super(e),this.attributeManager=t,this.model=null,this.needsRedraw=!0,this.subLayers=null,this.usesPickingColorCache=!1}get layer(){return this.component}set layer(t){this.component=t}}const Tk=t=>"function"==typeof t,kk=t=>null!==t&&"object"==typeof t,Ak=t=>kk(t)&&t.constructor==={}.constructor,Pk=t=>t&&"function"==typeof t[Symbol.iterator],Mk=t=>t&&"function"==typeof t[Symbol.asyncIterator],Ik=t=>"undefined"!=typeof Response&&t instanceof Response||t&&t.arrayBuffer&&t.text&&t.json,Dk=t=>"undefined"!=typeof Blob&&t instanceof Blob,Rk=t=>(t=>"undefined"!=typeof ReadableStream&&t instanceof ReadableStream||kk(t)&&Tk(t.tee)&&Tk(t.cancel)&&Tk(t.getReader))(t)||(t=>kk(t)&&Tk(t.read)&&Tk(t.pipe)&&(t=>"boolean"==typeof t)(t.readable))(t);function Nk(t,e){if(!t)throw new Error(e||"loader assertion failed.")}function Lk(t){var e;return!!t&&(Array.isArray(t)&&(t=t[0]),Array.isArray(null===(e=t)||void 0===e?void 0:e.extensions))}function jk(t){var e,n;let i;return Nk(t,"null loader"),Nk(Lk(t),"invalid loader"),Array.isArray(t)&&(i=t[1],t=ii(wt({},t=t[0]),{options:wt(wt({},t.options),i)})),(null!==(e=t)&&void 0!==e&&e.parseTextSync||null!==(n=t)&&void 0!==n&&n.parseText)&&(t.text=!0),t.text||(t.binary=!0),t}const Fk={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},Bk=Fk.global||Fk.self||Fk.window||{},Vk="object"!=typeof process||"[object process]"!==String(process)||process.browser,zk="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version);zk&&parseFloat(zk[1]);const Uk={};function Hk(t){for(const e in Uk)t.startsWith(e)&&(t=t.replace(e,Uk[e]));return!t.startsWith("http://")&&!t.startsWith("https://")&&(t=`${t}`),t}const $k=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,Gk=/^([-\w.]+\/[-\w.+]+)/;function Wk(t){const e=Gk.exec(t);return e?e[1]:t}function qk(t){const e=$k.exec(t);return e?e[1]:""}const Xk=/\?.*/;function Yk(t){if(Ik(t)){const e=Qk(t.url||"");return{url:e,type:Wk(t.headers.get("content-type")||"")||qk(e)}}return Dk(t)?{url:Qk(t.name||""),type:t.type||""}:"string"==typeof t?{url:Qk(t),type:qk(t)}:{url:"",type:""}}function Kk(t){return Ik(t)?t.headers["content-length"]||-1:Dk(t)?t.size:"string"==typeof t?t.length:t instanceof ArrayBuffer||ArrayBuffer.isView(t)?t.byteLength:-1}function Qk(t){return t.replace(Xk,"")}function Zk(t){return Jk.apply(this,arguments)}function Jk(){return(Jk=gS(function*(t){if(Ik(t))return t;const e={},n=Kk(t);n>=0&&(e["content-length"]=String(n));const{url:i,type:r}=Yk(t);r&&(e["content-type"]=r);const s=yield rA(t);s&&(e["x-first-bytes"]=s),"string"==typeof t&&(t=(new TextEncoder).encode(t));const o=new Response(t,{headers:e});return Object.defineProperty(o,"url",{value:i}),o})).apply(this,arguments)}function tA(t){return eA.apply(this,arguments)}function eA(){return(eA=gS(function*(t){if(!t.ok){const e=yield nA(t);throw new Error(e)}})).apply(this,arguments)}function nA(t){return iA.apply(this,arguments)}function iA(){return(iA=gS(function*(t){let e=`Failed to fetch resource ${t.url} (${t.status}): `;try{const n=t.headers.get("Content-Type");let i=t.statusText;n.includes("application/json")&&(i+=` ${yield t.text()}`),e+=i,e=e.length>60?`${e.slice(60)}...`:e}catch(n){}return e})).apply(this,arguments)}function rA(t){return sA.apply(this,arguments)}function sA(){return(sA=gS(function*(t){if("string"==typeof t)return`data:,${t.slice(0,5)}`;if(t instanceof Blob){const e=t.slice(0,5);return yield new Promise(t=>{const n=new FileReader;n.onload=e=>{var n;return t(null==e||null===(n=e.target)||void 0===n?void 0:n.result)},n.readAsDataURL(e)})}return t instanceof ArrayBuffer?`data:base64,${oA(t.slice(0,5))}`:null})).apply(this,arguments)}function oA(t){let e="";const n=new Uint8Array(t);for(let i=0;i{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}}const dA={fetch:null,mimeType:void 0,nothrow:!1,log:new class{constructor(){cA(this,"console",void 0),this.console=console}log(...t){return this.console.log.bind(this.console,...t)}info(...t){return this.console.info.bind(this.console,...t)}warn(...t){return this.console.warn.bind(this.console,...t)}error(...t){return this.console.error.bind(this.console,...t)}},CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},pA={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function fA(){Bk.loaders=Bk.loaders||{};const{loaders:t}=Bk;return t._state=t._state||{},t._state}const gA=()=>{const t=fA();return t.globalOptions=t.globalOptions||wt({},dA),t.globalOptions};function mA(t,e,n,i){return n=n||[],function(t,e){yA(t,null,dA,pA,e);for(const n of e)yA(t&&t[n.id]||{},n.id,n.options&&n.options[n.id]||{},n.deprecatedOptions&&n.deprecatedOptions[n.id]||{},e)}(t,n=Array.isArray(n)?n:[n]),function(t,e,n){const i=wt({},t.options||{});return function(t,e){e&&!("baseUri"in t)&&(t.baseUri=e)}(i,n),null===i.log&&(i.log=new hA),_A(i,gA()),_A(i,e),i}(e,t,i)}function bA(t,e){const n=gA(),i=t||n;return"function"==typeof i.fetch?i.fetch:kk(i.fetch)?t=>aA(t,i):null!=e&&e.fetch?null==e?void 0:e.fetch:aA}function yA(t,e,n,i,r){const s=e||"Top level",o=e?`${e}.`:"";for(const a in t){const l=!e&&kk(t[a]),c="baseUri"===a&&!e,u="workerUrl"===a&&e;if(!(a in n)&&!c&&!u)if(a in i)uA.warn(`${s} loader option '${o}${a}' no longer supported, use '${i[a]}'`)();else if(!l){const t=vA(a,r);uA.warn(`${s} loader option '${o}${a}' not recognized. ${t}`)()}}}function vA(t,e){const n=t.toLowerCase();let i="";for(const r of e)for(const e in r.options){if(t===e)return`Did you mean '${r.id}.${e}'?`;const s=e.toLowerCase();(n.startsWith(s)||s.startsWith(n))&&(i=i||`Did you mean '${r.id}.${e}'?`)}return i}function _A(t,e){for(const n in e)n in e&&(t[n]=Ak(e[n])&&Ak(t[n])?wt(wt({},t[n]),e[n]):e[n])}function wA(t,e){if(!t)throw new Error(e||"loaders.gl assertion failed.")}function xA(t,e="3.0.12"){return wA(t,"no worker provided"),!(!e||!t.version)}const SA={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},EA=SA.global||SA.self||SA.window||{},CA="object"!=typeof process||"[object process]"!==String(process)||process.browser,OA="function"==typeof importScripts,TA="undefined"!=typeof window&&void 0!==window.orientation,kA="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),AA=(kA&&parseFloat(kA[1]),new Map);function PA(t){const e=new Blob([t],{type:"application/javascript"});return URL.createObjectURL(e)}function MA(t,e=!0,n){const i=n||new Set;if(t)if(IA(t))i.add(t);else if(IA(t.buffer))i.add(t.buffer);else if(!ArrayBuffer.isView(t)&&e&&"object"==typeof t)for(const r in t)MA(t[r],e,i);return void 0===n?Array.from(i):[]}function IA(t){return!!t&&(t instanceof ArrayBuffer||"undefined"!=typeof MessagePort&&t instanceof MessagePort||"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&t instanceof OffscreenCanvas)}const DA=()=>{};class RA{static isSupported(){return"undefined"!=typeof Worker}constructor(t){cA(this,"name",void 0),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"terminated",!1),cA(this,"worker",void 0),cA(this,"onMessage",void 0),cA(this,"onError",void 0),cA(this,"_loadableURL","");const{name:e,source:n,url:i}=t;wA(n||i),this.name=e,this.source=n,this.url=i,this.onMessage=DA,this.onError=t=>console.log(t),this.worker=this._createBrowserWorker()}destroy(){this.onMessage=DA,this.onError=DA,this.worker.terminate(),this.terminated=!0}get isRunning(){return Boolean(this.onMessage)}postMessage(t,e){e=e||MA(t),this.worker.postMessage(t,e)}_getErrorFromErrorEvent(t){let e="Failed to load ";return e+=`worker ${this.name}. `,t.message&&(e+=`${t.message} in `),t.lineno&&(e+=`:${t.lineno}:${t.colno}`),new Error(e)}_createBrowserWorker(){this._loadableURL=function(t){wA(t.source&&!t.url||!t.source&&t.url);let e=AA.get(t.source||t.url);return e||(t.url&&(e=function(t){return t.startsWith("http")?PA(function(t){return`try {\n importScripts('${t}');\n} catch (error) {\n console.error(error);\n throw error;\n}`}(t)):t}(t.url),AA.set(t.url,e)),t.source&&(e=PA(t.source),AA.set(t.source,e))),wA(e),e}({source:this.source,url:this.url});const t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=t=>{t.data?this.onMessage(t.data):this.onError(new Error("No data received"))},t.onerror=t=>{this.onError(this._getErrorFromErrorEvent(t)),this.terminated=!0},t.onmessageerror=t=>console.error(t),t}}class NA{constructor(t,e){cA(this,"name",void 0),cA(this,"workerThread",void 0),cA(this,"isRunning",void 0),cA(this,"result",void 0),cA(this,"_resolve",void 0),cA(this,"_reject",void 0),this.name=t,this.workerThread=e,this.isRunning=!0,this._resolve=()=>{},this._reject=()=>{},this.result=new Promise((t,e)=>{this._resolve=t,this._reject=e})}postMessage(t,e){this.workerThread.postMessage({source:"loaders.gl",type:t,payload:e})}done(t){wA(this.isRunning),this.isRunning=!1,this._resolve(t)}error(t){wA(this.isRunning),this.isRunning=!1,this._reject(t)}}class LA{constructor(t){cA(this,"name","unnamed"),cA(this,"source",void 0),cA(this,"url",void 0),cA(this,"maxConcurrency",1),cA(this,"maxMobileConcurrency",1),cA(this,"onDebug",()=>{}),cA(this,"reuseWorkers",!0),cA(this,"props",{}),cA(this,"jobQueue",[]),cA(this,"idleQueue",[]),cA(this,"count",0),cA(this,"isDestroyed",!1),this.source=t.source,this.url=t.url,this.setProps(t)}destroy(){this.idleQueue.forEach(t=>t.destroy()),this.isDestroyed=!0}setProps(t){this.props=wt(wt({},this.props),t),void 0!==t.name&&(this.name=t.name),void 0!==t.maxConcurrency&&(this.maxConcurrency=t.maxConcurrency),void 0!==t.maxMobileConcurrency&&(this.maxMobileConcurrency=t.maxMobileConcurrency),void 0!==t.reuseWorkers&&(this.reuseWorkers=t.reuseWorkers),void 0!==t.onDebug&&(this.onDebug=t.onDebug)}startJob(t,e=((t,e,n)=>t.done(n)),n=((t,e)=>t.error(e))){var i=this;return gS(function*(){const r=new Promise(r=>(i.jobQueue.push({name:t,onMessage:e,onError:n,onStart:r}),i));return i._startQueuedJob(),yield r})()}_startQueuedJob(){var t=this;return gS(function*(){if(!t.jobQueue.length)return;const e=t._getAvailableWorker();if(!e)return;const n=t.jobQueue.shift();if(n){t.onDebug({message:"Starting job",name:n.name,workerThread:e,backlog:t.jobQueue.length});const i=new NA(n.name,e);e.onMessage=t=>n.onMessage(i,t.type,t.payload),e.onError=t=>n.onError(i,t),n.onStart(i);try{yield i.result}finally{t.returnWorkerToQueue(e)}}})()}returnWorkerToQueue(t){this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(t.destroy(),this.count--):this.idleQueue.push(t),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count{},reuseWorkers:!0};class FA{static isSupported(){return RA.isSupported()}static getWorkerFarm(t={}){return FA._workerFarm=FA._workerFarm||new FA({}),FA._workerFarm.setProps(t),FA._workerFarm}constructor(t){cA(this,"props",void 0),cA(this,"workerPools",new Map),this.props=wt({},jA),this.setProps(t),this.workerPools=new Map}destroy(){for(const t of this.workerPools.values())t.destroy()}setProps(t){this.props=wt(wt({},this.props),t);for(const e of this.workerPools.values())e.setProps(this._getWorkerPoolProps())}getWorkerPool(t){const{name:e,source:n,url:i}=t;let r=this.workerPools.get(e);return r||(r=new LA({name:e,source:n,url:i}),r.setProps(this._getWorkerPoolProps()),this.workerPools.set(e,r)),r}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}}function BA(t,e={}){const n=`${t.id}-worker.js`;let i=(e[t.id]||{}).workerUrl;if("test"===e._workerType&&(i=`modules/${t.module}/dist/${n}`),!i){let e=t.version;"latest"===e&&(e="latest"),i=`https://unpkg.com/@loaders.gl/${t.module}${e?`@${e}`:""}/dist/${n}`}return wA(i),i}function VA(t,e){return!!FA.isSupported()&&t.worker&&(null==e?void 0:e.worker)}function zA(t,e,n,i,r){return UA.apply(this,arguments)}function UA(){return(UA=gS(function*(t,e,n,i,r){const s=t.id,o=BA(t,n),a=FA.getWorkerFarm(n).getWorkerPool({name:s,url:o});n=JSON.parse(JSON.stringify(n));const l=yield a.startJob("process-on-worker",HA.bind(null,r));return l.postMessage("process",{input:e,options:n}),yield(yield l.result).result})).apply(this,arguments)}function HA(t,e,n,i){return $A.apply(this,arguments)}function $A(){return($A=gS(function*(t,e,n,i){switch(n){case"done":e.done(i);break;case"error":e.error(i.error);break;case"process":const{id:s,input:o,options:a}=i;try{const n=yield t(o,a);e.postMessage("done",{id:s,result:n})}catch(r){const t=r instanceof Error?r.message:"unknown error";e.postMessage("error",{id:s,error:t})}break;default:console.warn(`parse-with-worker unknown message ${n}`)}})).apply(this,arguments)}cA(FA,"_workerFarm",void 0);var GA=n(9521);function WA(t){if(function(t){return t&&"object"==typeof t&&t.isBuffer}(t)&&(t=function(t){return GA.toArrayBuffer?GA.toArrayBuffer(t):t}(t)),t instanceof ArrayBuffer)return t;if(ArrayBuffer.isView(t))return 0===t.byteOffset&&t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength);if("string"==typeof t){const e=t;return(new TextEncoder).encode(e).buffer}if(t&&"object"==typeof t&&t._toArrayBuffer)return t._toArrayBuffer();throw new Error("toArrayBuffer")}function qA(...t){const e=t.map(t=>t instanceof ArrayBuffer?new Uint8Array(t):t),n=e.reduce((t,e)=>t+e.byteLength,0),i=new Uint8Array(n);let r=0;for(const s of e)i.set(s,r),r+=s.byteLength;return i.buffer}function XA(t,e,n){const i=void 0!==n?new Uint8Array(t).subarray(e,e+n):new Uint8Array(t).subarray(e);return new Uint8Array(i).buffer}function YA(t){return KA.apply(this,arguments)}function KA(){return(KA=gS(function*(t){const e=[];var n,i=!0,r=!1;try{for(var s,o,a=fk(t);i=(s=yield a.next()).done,o=yield s.value,!i;i=!0)e.push(o)}catch(l){r=!0,n=l}finally{try{!i&&null!=a.return&&(yield a.return())}finally{if(r)throw n}}return qA(...e)})).apply(this,arguments)}const QA=262144;function ZA(t){this.wrapped=t}function JA(t){return new ZA(t)}function tP(t){var e,n;function i(e,n){try{var s=t[e](n),o=s.value,a=o instanceof ZA;Promise.resolve(a?o.wrapped:o).then(function(t){a?i("return"===e?"return":"next",t):r(s.done?"return":"normal",t)},function(t){i("throw",t)})}catch(l){r("throw",l)}}function r(t,r){switch(t){case"return":e.resolve({value:r,done:!0});break;case"throw":e.reject(r);break;default:e.resolve({value:r,done:!1})}(e=e.next)?i(e.key,e.arg):n=null}this._invoke=function(t,r){return new Promise(function(s,o){var a={key:t,arg:r,resolve:s,reject:o,next:null};n?n=n.next=a:(e=n=a,i(t,r))})},"function"!=typeof t.return&&(this.return=void 0)}function eP(t){return function(){return new tP(t.apply(this,arguments))}}function nP(){return(nP=eP(function*(t,e){const n=(null==e?void 0:e.chunkSize)||1048576;let i=0;for(;it&&"object"==typeof t&&t.isBuffer)(t)&&(t=t.buffer),t instanceof ArrayBuffer){const n=t;return e.text&&!e.binary?new TextDecoder("utf8").decode(n):n}if(ArrayBuffer.isView(t)){if(e.text&&!e.binary)return new TextDecoder("utf8").decode(t);let n=t.buffer;const i=t.byteLength||t.length;return(0!==t.byteOffset||i!==n.byteLength)&&(n=n.slice(t.byteOffset,t.byteOffset+i)),n}throw new Error(aP)}function cP(t,e,n){return uP.apply(this,arguments)}function uP(){return(uP=gS(function*(t,e,n){const i=t instanceof ArrayBuffer||ArrayBuffer.isView(t);if("string"==typeof t||i)return lP(t,e);if(Dk(t)&&(t=yield Zk(t)),Ik(t)){const n=t;return yield tA(n),e.binary?yield n.arrayBuffer():yield n.text()}if(Rk(t)&&(t=oP(t,n)),Pk(t)||Mk(t))return YA(t);throw new Error(aP)})).apply(this,arguments)}function hP(t,e,n=null){if(n)return n;const i=wt({fetch:bA(e,t)},t);return Array.isArray(i.loaders)||(i.loaders=null),i}function dP(t,e){if(!e&&t&&!Array.isArray(t))return t;let n;if(t&&(n=Array.isArray(t)?t:[t]),e&&e.loaders){const t=Array.isArray(e.loaders)?e.loaders:[e.loaders];n=n?[...n,...t]:t}return n&&n.length?n:null}const pP=()=>{const t=fA();return t.loaderRegistry=t.loaderRegistry||[],t.loaderRegistry};function fP(t){const e=pP();t=Array.isArray(t)?t:[t];for(const n of t){const t=jk(n);e.find(e=>t===e)||e.unshift(t)}}const gP=/\.([^.]+)$/;function mP(t){return bP.apply(this,arguments)}function bP(){return(bP=gS(function*(t,e=[],n,i){if(!vP(t))return null;let r=yP(t,e,ii(wt({},n),{nothrow:!0}),i);if(r)return r;if(Dk(t)&&(r=yP(t=yield t.slice(0,10).arrayBuffer(),e,n,i)),!(r||null!=n&&n.nothrow))throw new Error(_P(t));return r})).apply(this,arguments)}function yP(t,e=[],n,i){if(!vP(t))return null;if(e&&!Array.isArray(e))return jk(e);let r=[];e&&(r=r.concat(e)),null!=n&&n.ignoreRegisteredLoaders||r.push(...pP()),function(t){for(const e of t)jk(e)}(r);const s=function(t,e,n,i){const{url:r,type:s}=Yk(t),o=r||(null==i?void 0:i.url);let a=null;return null!=n&&n.mimeType&&(a=wP(e,null==n?void 0:n.mimeType)),a=a||function(t,e){const n=e&&gP.exec(e),i=n&&n[1];return i?function(t,e){e=e.toLowerCase();for(const n of t)for(const t of n.extensions)if(t.toLowerCase()===e)return n;return null}(t,i):null}(e,o),a=a||wP(e,s),a=a||function(t,e){if(!e)return null;for(const n of t)if("string"==typeof e){if(xP(e,n))return n}else if(ArrayBuffer.isView(e)){if(SP(e.buffer,e.byteOffset,n))return n}else if(e instanceof ArrayBuffer&&SP(e,0,n))return n;return null}(e,t),a=a||wP(e,null==n?void 0:n.fallbackMimeType),a}(t,r,n,i);if(!(s||null!=n&&n.nothrow))throw new Error(_P(t));return s}function vP(t){return!(t instanceof Response&&204===t.status)}function _P(t){const{url:e,type:n}=Yk(t);let i="No valid loader found";return t&&(i+=` data: "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?EP(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?EP(t,0,e):""}(t)}", contentType: "${n}"`),e&&(i+=` url: ${e}`),i}function wP(t,e){for(const n of t)if(n.mimeTypes&&n.mimeTypes.includes(e)||e===`application/x.${n.id}`)return n;return null}function xP(t,e){return e.testText?e.testText(t):(Array.isArray(e.tests)?e.tests:[e.tests]).some(e=>t.startsWith(e))}function SP(t,e,n){return(Array.isArray(n.tests)?n.tests:[n.tests]).some(i=>function(t,e,n,i){if(i instanceof ArrayBuffer)return function(t,e,n){if(t.byteLength<(n=n||t.byteLength)||e.byteLengtht.equals(e));let RP=new Uint8ClampedArray(0);const NP={data:{type:"data",value:IP,async:!0},dataComparator:null,_dataDiff:{type:"function",value:t=>t&&t.__diff,compare:!1,optional:!0},dataTransform:{type:"function",value:null,compare:!1,optional:!0},onDataLoad:{type:"function",value:null,compare:!1,optional:!0},onError:{type:"function",value:null,compare:!1,optional:!0},fetch:{type:"function",value:(t,{propName:e,layer:n,loaders:i,loadOptions:r,signal:s})=>{const{resourceManager:o}=n.context;var a;r=r||n.getLoadOptions(),i=i||n.props.loaders,s&&(r=ii(wt({},r),{fetch:ii(wt({},null===(a=r)||void 0===a?void 0:a.fetch),{signal:s})}));let l=o.contains(t);return!l&&!r&&(o.add({resourceId:t,data:AP(t,i),persistent:!1}),l=!0),l?o.subscribe({resourceId:t,onChange:t=>n.internalState.reloadAsyncProp(e,t),consumerId:n.id,requestId:e}):AP(t,i,r)},compare:!1},updateTriggers:{},visible:!0,pickable:!1,opacity:{type:"number",min:0,max:1,value:1},onHover:{type:"function",value:null,compare:!1,optional:!0},onClick:{type:"function",value:null,compare:!1,optional:!0},onDragStart:{type:"function",value:null,compare:!1,optional:!0},onDrag:{type:"function",value:null,compare:!1,optional:!0},onDragEnd:{type:"function",value:null,compare:!1,optional:!0},coordinateSystem:Iw.DEFAULT,coordinateOrigin:{type:"array",value:[0,0,0],compare:!0},modelMatrix:{type:"array",value:null,compare:!0,optional:!0},wrapLongitude:!1,positionFormat:"XYZ",colorFormat:"RGBA",parameters:{},transitions:null,extensions:[],loaders:{type:"array",value:[],optional:!0,compare:!0},getPolygonOffset:{type:"function",value:({layerIndex:t})=>[0,100*-t],compare:!1},highlightedObjectIndex:-1,autoHighlight:!1,highlightColor:{type:"accessor",value:[0,0,128,128]}};let LP=(()=>{class t extends Ck{toString(){return"".concat(this.constructor.layerName||this.constructor.name,"({id: '").concat(this.props.id,"'})")}raiseError(t,e){var n,i,r,s;e&&(t.message="".concat(e,": ").concat(t.message)),(null===(n=(i=this.props).onError)||void 0===n?void 0:n.call(i,t))||null===(r=this.context)||void 0===r||null===(s=r.onError)||void 0===s||s.call(r,t,this)}setState(t){this.setChangeFlags({stateChanged:!0}),Object.assign(this.state,t),this.setNeedsRedraw()}setNeedsRedraw(t=!0){this.internalState&&(this.internalState.needsRedraw=t)}setNeedsUpdate(){this.context.layerManager.setNeedsUpdate(String(this)),this.internalState.needsUpdate=!0}getNeedsRedraw(t={clearRedrawFlags:!1}){return this._getNeedsRedraw(t)}needsUpdate(){return this.internalState.needsUpdate||this.hasUniformTransition()||this.shouldUpdateState(this._getUpdateParams())}hasUniformTransition(){return this.internalState.uniformTransitions.active}get isLoaded(){return this.internalState&&!this.internalState.isAsyncPropLoading()}get wrapLongitude(){return this.props.wrapLongitude}isPickable(){return this.props.pickable&&this.props.visible}getModels(){return this.state&&(this.state.models||(this.state.model?[this.state.model]:[]))}getAttributeManager(){return this.internalState&&this.internalState.attributeManager}getCurrentLayer(){return this.internalState&&this.internalState.layer}getLoadOptions(){return this.props.loadOptions}project(t){const{viewport:e}=this.context,n=KT(t,{viewport:e,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem}),[i,r,s]=NT(n,e.pixelProjectionMatrix);return 2===t.length?[i,r]:[i,r,s]}unproject(t){const{viewport:e}=this.context;return e.unproject(t)}projectPosition(t){return function(t,e){const{viewport:n,coordinateSystem:i,coordinateOrigin:r,modelMatrix:s,fromCoordinateSystem:o,fromCoordinateOrigin:a}=function(t){const e=wt({},t);let{coordinateSystem:n}=t;const{viewport:i,coordinateOrigin:r,fromCoordinateSystem:s,fromCoordinateOrigin:o}=t;return n===Iw.DEFAULT&&(n=i.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN),void 0===s&&(e.fromCoordinateSystem=n),void 0===o&&(e.fromCoordinateOrigin=r),e.coordinateSystem=n,e}(e),{geospatialOrigin:l,shaderCoordinateOrigin:c,offsetMode:u}=lT(n,i,r),h=KT(t,{viewport:n,modelMatrix:s,coordinateSystem:o,coordinateOrigin:a,offsetMode:u});u&&function(t,e,n){t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2]}(h,h,n.projectPosition(l||c));return h}(t,{viewport:this.context.viewport,modelMatrix:this.props.modelMatrix,coordinateOrigin:this.props.coordinateOrigin,coordinateSystem:this.props.coordinateSystem})}use64bitPositions(){const{coordinateSystem:t}=this.props;return t===Iw.DEFAULT||t===Iw.LNGLAT||t===Iw.CARTESIAN}onHover(t,e){return!!this.props.onHover&&this.props.onHover(t,e)}onClick(t,e){return!!this.props.onClick&&this.props.onClick(t,e)}nullPickingColor(){return[0,0,0]}encodePickingColor(t,e=[]){return e[0]=t+1&255,e[1]=t+1>>8&255,e[2]=t+1>>8>>8&255,e}decodePickingColor(t){uE(t instanceof Uint8Array);const[e,n,i]=t;return e+256*n+65536*i-1}initializeState(){throw new Error("Layer ".concat(this," has not defined initializeState"))}getShaders(t){for(const e of this.props.extensions)t=GO(t,e.getShaders.call(this,e));return t}shouldUpdateState({changeFlags:t}){return t.propsOrDataChanged}updateState({oldProps:t,props:e,changeFlags:n}){const i=this.getAttributeManager();if(n.dataChanged&&i){const{dataChanged:t}=n;if(Array.isArray(t))for(const e of t)i.invalidateAll(e);else i.invalidateAll()}const r=e.highlightedObjectIndex>=0||e.pickable;if((t.highlightedObjectIndex>=0||t.pickable)!==r&&i){const{pickingColors:t,instancePickingColors:e}=i.attributes,n=t||e;n&&(r&&n.constant&&(n.constant=!1,i.invalidate(n.id)),!n.value&&!r&&(n.constant=!0,n.value=[0,0,0]))}}finalizeState(){for(const e of this.getModels())e.delete();const t=this.getAttributeManager();t&&t.finalize(),this.context.resourceManager.unsubscribe({consumerId:this.id}),this.internalState.uniformTransitions.clear(),this.internalState.finalize()}draw(t){for(const e of this.getModels())e.draw(t)}getPickingInfo({info:t}){const{index:e}=t;return e>=0&&Array.isArray(this.props.data)&&(t.object=this.props.data[e]),t}activateViewport(t){const e=this.internalState.viewport;this.internalState.viewport=t,(!e||!DP({oldViewport:e,viewport:t}))&&(this.setChangeFlags({viewportChanged:!0}),this.isComposite?this.needsUpdate()&&this.setNeedsUpdate():this._update())}invalidateAttribute(t="all",e=""){const n=this.getAttributeManager();!n||("all"===t?n.invalidateAll():n.invalidate(t))}updateAttributes(t){for(const e of this.getModels())this._setModelAttributes(e,t)}_updateAttributes(t){const e=this.getAttributeManager();if(!e)return;const n=this.getNumInstances(t),i=this.getStartIndices(t);e.update({data:t.data,numInstances:n,startIndices:i,props:t,transitions:t.transitions,buffers:t.data.attributes,context:this,ignoreUnknownAttributes:!0});const r=e.getChangedAttributes({clearChangedFlags:!0});this.updateAttributes(r)}_updateAttributeTransition(){const t=this.getAttributeManager();t&&t.updateTransition()}_updateUniformTransition(){const{uniformTransitions:t}=this.internalState;if(t.active){const e=t.update(),n=Object.create(this.props);for(const t in e)Object.defineProperty(n,t,{value:e[t]});return n}return this.props}calculateInstancePickingColors(t,{numInstances:e}){if(t.constant)return;const n=Math.floor(RP.length/3);if(this.internalState.usesPickingColorCache=!0,nMP&&Mw.warn("Layer has too many data objects. Picking might not be able to distinguish all objects.")(),RP=AS.allocate(RP,e,{size:3,copy:!0,maxCount:Math.max(e,MP)});const t=Math.floor(RP.length/3),i=[];for(let e=n;e{const i={moduleParameters:t,uniforms:e,parameters:n,context:this.context};for(const t of this.props.extensions)t.draw.call(this,i,t);this.draw(i)})}finally{this.props=i}}getChangeFlags(){return this.internalState.changeFlags}setChangeFlags(t){const{changeFlags:e}=this.internalState;for(const i in t)if(t[i]){let n=!1;switch(i){case"dataChanged":Array.isArray(e[i])&&(e[i]=Array.isArray(t[i])?e[i].concat(t[i]):t[i],n=!0);default:e[i]||(e[i]=t[i],n=!0)}n&&PE("layer.changeFlag",this,i,t)}const n=e.dataChanged||e.updateTriggersChanged||e.propsChanged||e.extensionsChanged;e.propsOrDataChanged=n,e.somethingChanged=n||t.viewportChanged||t.stateChanged}clearChangeFlags(){this.internalState.changeFlags={dataChanged:!1,propsChanged:!1,updateTriggersChanged:!1,viewportChanged:!1,stateChanged:!1,extensionsChanged:!1,propsOrDataChanged:!1,somethingChanged:!1}}diffProps(t,e){const n=function(t,e){const n=FO({newProps:t,oldProps:e,propTypes:UO(t),ignoreProps:{data:null,updateTriggers:null,extensions:null,transitions:null}}),i=function(t,e){if(null===e)return"oldProps is null, initial diff";let n=null;const{dataComparator:i,_dataDiff:r}=t;return i?i(t.data,e.data)||(n="Data comparator detected a change"):t.data!==e.data&&(n="A new data container was supplied"),n&&r&&(n=r(t.data,e.data)||n),n}(t,e);let r=!1;return i||(r=function(t,e){if(null===e)return"oldProps is null, initial diff";if("all"in t.updateTriggers&&zO(t,e,"all"))return{all:!0};const n={};let i=!1;for(const r in t.updateTriggers)"all"!==r&&zO(t,e,r)&&(n[r]=!0,i=n);return i}(t,e)),{dataChanged:i,propsChanged:n,updateTriggersChanged:r,extensionsChanged:VO(t,e),transitionsChanged:jO(t,e)}}(t,e);if(n.updateTriggersChanged)for(const i in n.updateTriggersChanged)n.updateTriggersChanged[i]&&this.invalidateAttribute(i);if(n.transitionsChanged)for(const i in n.transitionsChanged)this.internalState.uniformTransitions.add(i,e[i],t[i],t.transitions[i]);return this.setChangeFlags(n)}validateProps(){!function(t){const e=UO(t);for(const n in e){const i=e[n],{validate:r}=i;if(r&&!r(t[n],i))throw new Error("Invalid prop ".concat(n,": ").concat(t[n]))}}(this.props)}setModuleParameters(t){for(const e of this.getModels())e.updateModuleSettings(t)}updateAutoHighlight(t){this.props.autoHighlight&&this._updateAutoHighlight(t)}_updateAutoHighlight(t){const e={pickingSelectedColor:t.picked?t.color:null},{highlightColor:n}=this.props;t.picked&&"function"==typeof n&&(e.pickingHighlightColor=n(t)),this.setModuleParameters(e),this.setNeedsRedraw()}_updateModules({props:t,oldProps:e},n){const{autoHighlight:i,highlightedObjectIndex:r,highlightColor:s}=t;if(n||e.autoHighlight!==i||e.highlightedObjectIndex!==r||e.highlightColor!==s){const t={};i||(t.pickingSelectedColor=null),Array.isArray(s)&&(t.pickingHighlightColor=s),Number.isInteger(r)&&(t.pickingSelectedColor=r>=0?this.encodePickingColor(r):null),this.setModuleParameters(t)}}_getUpdateParams(){return{props:this.props,oldProps:this.internalState.getOldProps(),context:this.context,changeFlags:this.internalState.changeFlags}}_getNeedsRedraw(t){if(!this.internalState)return!1;let e=!1;e=e||this.internalState.needsRedraw&&this.id,this.internalState.needsRedraw=this.internalState.needsRedraw&&!t.clearRedrawFlags;const n=this.getAttributeManager(),i=n&&n.getNeedsRedraw(t);return e=e||i,e}_getAttributeManager(){return new PO(this.context.gl,{id:this.props.id,stats:this.context.stats,timeline:this.context.timeline})}_initState(){uE(!this.internalState&&!this.state),uE(isFinite(this.props.coordinateSystem));const t=this._getAttributeManager();t&&t.addInstanced({instancePickingColors:{type:5121,size:3,noAlloc:!0,update:this.calculateInstancePickingColors}}),this.internalState=new Ok({attributeManager:t,layer:this}),this.clearChangeFlags(),this.state={},Object.defineProperty(this.state,"attributeManager",{get:()=>(Mw.deprecated("layer.state.attributeManager","layer.getAttributeManager()"),t)}),this.internalState.layer=this,this.internalState.uniformTransitions=new RO(this.context.timeline),this.internalState.onAsyncPropUpdated=this._onAsyncPropUpdated.bind(this),this.internalState.setAsyncProps(this.props)}_transferState(t){PE("layer.matched",this,this===t);const{state:e,internalState:n}=t;this!==t&&(this.internalState=n,this.internalState.layer=this,this.state=e,this.internalState.setAsyncProps(this.props),this.diffProps(this.props,this.internalState.getOldProps()))}_onAsyncPropUpdated(){this.diffProps(this.props,this.internalState.getOldProps()),this.setNeedsUpdate()}}return t.layerName="Layer",t.defaultProps=NP,t})(),jP=(()=>{class t extends LP{get isComposite(){return!0}get isLoaded(){return super.isLoaded&&this.getSubLayers().every(t=>t.isLoaded)}getSubLayers(){return this.internalState&&this.internalState.subLayers||[]}initializeState(){}setState(t){super.setState(t),this.setNeedsUpdate()}getPickingInfo({info:t}){const{object:e}=t;return e&&e.__source&&e.__source.parent&&e.__source.parent.id===this.id&&(t.object=e.__source.object,t.index=e.__source.index),t}renderLayers(){return null}filterSubLayer(t){return!0}shouldRenderSubLayer(t,e){return e&&e.length}getSubLayerClass(t,e){const{_subLayerProps:n}=this.props;return n&&n[t]&&n[t].type||e}getSubLayerRow(t,e,n){return t.__source={parent:this,object:e,index:n},t}getSubLayerAccessor(t){if("function"==typeof t){const e={data:this.props.data,target:[]};return(n,i)=>n&&n.__source?(e.index=n.__source.index,t(n.__source.object,e)):t(n,i)}return t}getSubLayerProps(t={}){const{opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g,_subLayerProps:m}=this.props,b={opacity:e,pickable:n,visible:i,parameters:r,getPolygonOffset:s,highlightedObjectIndex:o,autoHighlight:a,highlightColor:l,coordinateSystem:c,coordinateOrigin:u,wrapLongitude:h,positionFormat:d,modelMatrix:p,extensions:f,fetch:g},y=m&&m[t.id],v=y&&y.updateTriggers,_=t.id||"sublayer";if(y){const e=this.constructor._propTypes,n=t.type?t.type._propTypes:{};for(const t in y){const i=n[t]||e[t];i&&"accessor"===i.type&&(y[t]=this.getSubLayerAccessor(y[t]))}}Object.assign(b,t,y),b.id="".concat(this.props.id,"-").concat(_),b.updateTriggers=wt(wt({all:this.props.updateTriggers.all},t.updateTriggers),v);for(const w of f){const t=w.getSubLayerProps.call(this,w);t&&Object.assign(b,t,{updateTriggers:Object.assign(b.updateTriggers,t.updateTriggers)})}return b}_updateAutoHighlight(t){for(const e of this.getSubLayers())e.updateAutoHighlight(t)}_getAttributeManager(){return null}_renderLayers(){let{subLayers:t}=this.internalState;const e=!t||this.needsUpdate();e&&(t=this.renderLayers(),t=gE(t,Boolean),this.internalState.subLayers=t),PE("compositeLayer.renderLayers",this,e,t);for(const n of t)n.parent=this}}return t.layerName="CompositeLayer",t})();const FP=/([0-9]+\.?[0-9]*)(%|px)/;function BP(t){switch(typeof t){case"number":return{position:t,relative:!1};case"string":const e=t.match(FP);if(e&&e.length>=3){const t="%"===e[2],n=parseFloat(e[1]);return{position:t?n/100:n,relative:t}}default:throw new Error("Could not parse position string ".concat(t))}}function VP(t,e){return t.relative?Math.round(t.position*e):t.position}function zP(t,e){if(t===e)return!0;if(!t||!e)return!1;for(const n in t){const i=t[n],r=e[n];if(!(i===r||Array.isArray(i)&&Array.isArray(r)&&zP(i,r)))return!1}return!0}class UP{constructor(t={}){const{id:e=null,x:n=0,y:i=0,width:r="100%",height:s="100%",projectionMatrix:o=null,fovy:a=50,near:l=.1,far:c=1e3,modelMatrix:u=null,viewportInstance:h=null,type:d=WT}=t;uE(!h||h instanceof WT),this.viewportInstance=h,this.id=e||this.constructor.displayName||"view",this.type=d,this.props=ii(wt({},t),{id:this.id,projectionMatrix:o,fovy:a,near:l,far:c,modelMatrix:u}),this._parseDimensions({x:n,y:i,width:r,height:s}),this.equals=this.equals.bind(this),Object.seal(this)}equals(t){return this===t||(this.viewportInstance?t.viewportInstance&&this.viewportInstance.equals(t.viewportInstance):zP(this.props,t.props))}makeViewport({width:t,height:e,viewState:n}){if(this.viewportInstance)return this.viewportInstance;n=this.filterViewState(n);const i=this.getDimensions({width:t,height:e});return this._getViewport(n,i)}getViewStateId(){switch(typeof this.props.viewState){case"string":return this.props.viewState;case"object":return this.props.viewState&&this.props.viewState.id;default:return this.id}}filterViewState(t){if(this.props.viewState&&"object"==typeof this.props.viewState){if(!this.props.viewState.id)return this.props.viewState;const e=wt({},t);for(const t in this.props.viewState)"id"!==t&&(e[t]=this.props.viewState[t]);return e}return t}getDimensions({width:t,height:e}){return{x:VP(this._x,t),y:VP(this._y,e),width:VP(this._width,t),height:VP(this._height,e)}}_getControllerProps(t){let e=this.props.controller;return e?!0===e?t:("function"==typeof e&&(e={type:e}),wt(wt({},t),e)):null}_getViewport(t,e){const{type:n}=this;return new n(wt(wt(wt({},t),this.props),e))}_parseDimensions({x:t,y:e,width:n,height:i}){this._x=BP(t),this._y=BP(e),this._width=BP(n),this._height=BP(i)}}const HP=()=>{},$P={transitionEasing:t=>t,transitionInterruption:1,onTransitionStart:HP,onTransitionInterrupt:HP,onTransitionEnd:HP};class GP{constructor(t,e={}){this.ControllerState=t,this.props=wt(wt({},$P),e),this.propsInTransition=null,this.transition=new OO(e.timeline),this.onViewStateChange=e.onViewStateChange||HP,this.onStateChange=e.onStateChange||HP,this._onTransitionUpdate=this._onTransitionUpdate.bind(this)}finalize(){this.transition.cancel()}getViewportInTransition(){return this.propsInTransition}processViewStateChange(t){let e=!1;const n=this.props;if(t=wt(wt({},$P),t),this.props=t,this._shouldIgnoreViewportChange(n,t))return e;if(this._isTransitionEnabled(t)){const{interruption:i,endProps:r}=this.transition.settings,s=wt(wt({},n),2===i?r:this.propsInTransition||n);this._triggerTransition(s,t),e=!0}else this.transition.cancel();return e}updateTransition(){this.transition.update()}_isTransitionEnabled(t){const{transitionDuration:e,transitionInterpolator:n}=t;return(e>0||"auto"===e)&&Boolean(n)}_isUpdateDueToCurrentTransition(t){return!!this.transition.inProgress&&this.transition.settings.interpolator.arePropsEqual(t,this.propsInTransition)}_shouldIgnoreViewportChange(t,e){return this.transition.inProgress?3===this.transition.settings.interruption||this._isUpdateDueToCurrentTransition(e):!this._isTransitionEnabled(e)||e.transitionInterpolator.arePropsEqual(t,e)}_triggerTransition(t,e){const n=new this.ControllerState(t),i=new this.ControllerState(e).shortestPathFrom(n),{transitionInterpolator:r}=e,s=r.getDuration?r.getDuration(t,e):e.transitionDuration;if(0===s)return;const o=e.transitionInterpolator.initializeProps(t,i);this.propsInTransition={},this.duration=s,this.transition.start({duration:s,easing:e.transitionEasing,interpolator:e.transitionInterpolator,interruption:e.transitionInterruption,startProps:o.start,endProps:o.end,onStart:e.onTransitionStart,onUpdate:this._onTransitionUpdate,onInterrupt:this._onTransitionEnd(e.onTransitionInterrupt),onEnd:this._onTransitionEnd(e.onTransitionEnd)}),this.onStateChange({inTransition:!0}),this.updateTransition()}_onTransitionEnd(t){return e=>{this.propsInTransition=null,this.onStateChange({inTransition:!1,isZooming:!1,isPanning:!1,isRotating:!1}),t(e)}}_onTransitionUpdate(t){const{time:e,settings:{interpolator:n,startProps:i,endProps:r,duration:s,easing:o}}=t,a=o(e/s),l=n.interpolateProps(i,r,a);this.propsInTransition=new this.ControllerState(wt(wt({},this.props),l)).getViewportProps(),this.onViewStateChange({viewState:this.propsInTransition,oldViewState:this.props})}}const WP=["longitude","latitude","zoom","bearing","pitch"],qP=["longitude","latitude","zoom"];class XP extends class{constructor(t={}){Array.isArray(t)&&(t={compare:t,extract:t,required:t});const{compare:e,extract:n,required:i}=t;this._propsToCompare=e,this._propsToExtract=n,this._requiredProps=i}arePropsEqual(t,e){for(const n of this._propsToCompare||Object.keys(e))if(!(n in t)||!(n in e)||!FS(t[n],e[n]))return!1;return!0}initializeProps(t,e){let n;if(this._propsToExtract){const i={},r={};for(const n of this._propsToExtract)i[n]=t[n],r[n]=e[n];n={start:i,end:r}}else n={start:t,end:e};return this._checkRequiredProps(n.start),this._checkRequiredProps(n.end),n}interpolateProps(t,e,n){return e}getDuration(t,e){return e.transitionDuration}_checkRequiredProps(t){!this._requiredProps||this._requiredProps.forEach(e=>{const n=t[e];uE(Number.isFinite(n)||Array.isArray(n),"".concat(e," is required for transition"))})}}{constructor(t={}){super((Array.isArray(t)?t:t.transitionProps)||{compare:WP,extract:WP,required:qP}),this.opts=t}initializeProps(t,e){const n=super.initializeProps(t,e),{makeViewport:i,around:r}=this.opts;if(i&&r){const s=i(t),o=i(e),a=s.unproject(r);n.start.around=r,Object.assign(n.end,{around:o.project(a),aroundPosition:a,width:e.width,height:e.height})}return n}interpolateProps(t,e,n){const i={};for(const r of this._propsToExtract)i[r]=jS(t[r]||0,e[r]||0,n);if(e.aroundPosition){const r=this.opts.makeViewport(wt(wt({},e),i));Object.assign(i,r.panByPosition(e.aroundPosition,jS(t.around,e.around,n)))}return i}}const YP={transitionDuration:0},KP={transitionDuration:300,transitionEasing:t=>t,transitionInterruption:1},QP=t=>1-(1-t)*(1-t),ZP=["wheel"],JP=["panstart","panmove","panend"],tM=["pinchstart","pinchmove","pinchend"],eM=["tripanstart","tripanmove","tripanend"],nM=["doubletap"],iM=["keydown"];class rM{constructor(t,e={}){this.ControllerState=t,this.controllerState=null,this.controllerStateProps=null,this.eventManager=null,this.transitionManager=new GP(t,ii(wt({},e),{onViewStateChange:this._onTransition.bind(this),onStateChange:this._setInteractionState.bind(this)}));const n=this.linearTransitionProps;this._transition=n&&ii(wt({},KP),{transitionInterpolator:new XP({transitionProps:n})}),this._events=null,this._interactionState={isDragging:!1},this._customEvents=[],this.onViewStateChange=null,this.onStateChange=null,this.handleEvent=this.handleEvent.bind(this),this.setProps(e)}get linearTransitionProps(){return null}set events(t){this.toggleEvents(this._customEvents,!1),this.toggleEvents(t,!0),this._customEvents=t,this.setProps(this.controllerStateProps)}finalize(){for(const t in this._events)this._events[t]&&this.eventManager.off(t,this.handleEvent);this.transitionManager.finalize()}handleEvent(t){const{ControllerState:e}=this;this.controllerState=new e(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state));const n=this._eventStartBlocked;switch(t.type){case"panstart":return!n&&this._onPanStart(t);case"panmove":return this._onPan(t);case"panend":return this._onPanEnd(t);case"pinchstart":return!n&&this._onPinchStart(t);case"pinchmove":return this._onPinch(t);case"pinchend":return this._onPinchEnd(t);case"tripanstart":return!n&&this._onTriplePanStart(t);case"tripanmove":return this._onTriplePan(t);case"tripanend":return this._onTriplePanEnd(t);case"doubletap":return this._onDoubleTap(t);case"wheel":return this._onWheel(t);case"keydown":return this._onKeyDown(t);default:return!1}}getCenter(t){const{x:e,y:n}=this.controllerStateProps,{offsetCenter:i}=t;return[i.x-e,i.y-n]}isPointInBounds(t,e){const{width:n,height:i}=this.controllerStateProps;if(e&&e.handled)return!1;const r=t[0]>=0&&t[0]<=n&&t[1]>=0&&t[1]<=i;return r&&e&&e.stopPropagation(),r}isFunctionKeyPressed(t){const{srcEvent:e}=t;return Boolean(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}isDragging(){return this._interactionState.isDragging}blockEvents(t){const e=setTimeout(()=>{this._eventStartBlocked===e&&(this._eventStartBlocked=null)},t);this._eventStartBlocked=e}setProps(t){"onViewStateChange"in t&&(this.onViewStateChange=t.onViewStateChange),"onStateChange"in t&&(this.onStateChange=t.onStateChange),"makeViewport"in t&&(this.makeViewport=t.makeViewport),"dragMode"in t&&(this.dragMode=t.dragMode),this.controllerStateProps=t,"eventManager"in t&&this.eventManager!==t.eventManager&&(this.eventManager=t.eventManager,this._events={},this.toggleEvents(this._customEvents,!0)),"transitionInterpolator"in t||(t.transitionInterpolator=this._getTransitionProps().transitionInterpolator),this.transitionManager.processViewStateChange(t);let{inertia:e}=t;!0===e&&(e=300),this.inertia=e;const{scrollZoom:n=!0,dragPan:i=!0,dragRotate:r=!0,doubleClickZoom:s=!0,touchZoom:o=!0,touchRotate:a=!1,keyboard:l=!0}=t,c=Boolean(this.onViewStateChange);this.toggleEvents(ZP,c&&n),this.toggleEvents(JP,c&&(i||r)),this.toggleEvents(tM,c&&(o||a)),this.toggleEvents(eM,c&&a),this.toggleEvents(nM,c&&s),this.toggleEvents(iM,c&&l),this.scrollZoom=n,this.dragPan=i,this.dragRotate=r,this.doubleClickZoom=s,this.touchZoom=o,this.touchRotate=a,this.keyboard=l}updateTransition(){this.transitionManager.updateTransition()}toggleEvents(t,e){this.eventManager&&t.forEach(t=>{this._events[t]!==e&&(this._events[t]=e,e?this.eventManager.on(t,this.handleEvent):this.eventManager.off(t,this.handleEvent))})}updateViewport(t,e={},n={}){const i=wt(wt({},t.getViewportProps()),e),r=this.controllerState!==t;if(this._state=t.getState(),this._setInteractionState(n),r){const t=this.controllerState?this.controllerState.getViewportProps():null;this.onViewStateChange&&this.onViewStateChange({viewState:i,interactionState:this._interactionState,oldViewState:t})}}_onTransition(t){this.onViewStateChange&&(t.interactionState=this._interactionState,this.onViewStateChange(t))}_setInteractionState(t){Object.assign(this._interactionState,t),this.onStateChange&&this.onStateChange(this._interactionState)}_onPanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;let n=this.isFunctionKeyPressed(t)||t.rightButton;(this.invertPan||"pan"===this.dragMode)&&(n=!n);const i=this.controllerState[n?"panStart":"rotateStart"]({pos:e});return this._panMove=n,this.updateViewport(i,YP,{isDragging:!0}),!0}_onPan(t){return!!this.isDragging()&&(this._panMove?this._onPanMove(t):this._onPanRotate(t))}_onPanEnd(t){return!!this.isDragging()&&(this._panMove?this._onPanMoveEnd(t):this._onPanRotateEnd(t))}_onPanMove(t){if(!this.dragPan)return!1;const e=this.getCenter(t),n=this.controllerState.pan({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isPanning:!0}),!0}_onPanMoveEnd(t){const{inertia:e}=this;if(this.dragPan&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.pan({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).panEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:!0})}else{const t=this.controllerState.panEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1})}return!0}_onPanRotate(t){if(!this.dragRotate)return!1;const e=this.getCenter(t),n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onPanRotateEnd(t){const{inertia:e}=this;if(this.dragRotate&&e&&t.velocity){const n=this.getCenter(t),i=this.controllerState.rotate({pos:[n[0]+t.velocityX*e/2,n[1]+t.velocityY*e/2]}).rotateEnd();this.updateViewport(i,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0})}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onWheel(t){if(!this.scrollZoom)return!1;t.preventDefault();const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const{speed:n=.01,smooth:i=!1}=this.scrollZoom,{delta:r}=t;let s=2/(1+Math.exp(-Math.abs(r*n)));r<0&&0!==s&&(s=1/s);const o=this.controllerState.zoom({pos:e,scale:s});return this.updateViewport(o,ii(wt({},this._getTransitionProps({around:e})),{transitionDuration:i?250:1}),{isZooming:!0,isPanning:!0}),!0}_onTriplePanStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.rotateStart({pos:e});return this.updateViewport(n,YP,{isDragging:!0}),!0}_onTriplePan(t){if(!this.touchRotate||!this.isDragging())return!1;const e=this.getCenter(t);e[0]-=t.deltaX;const n=this.controllerState.rotate({pos:e});return this.updateViewport(n,YP,{isDragging:!0,isRotating:!0}),!0}_onTriplePanEnd(t){if(!this.isDragging())return!1;const{inertia:e}=this;if(this.touchRotate&&e&&t.velocityY){const n=this.getCenter(t),i=[n[0],n[1]+=t.velocityY*e/2],r=this.controllerState.rotate({pos:i});this.updateViewport(r,ii(wt({},this._getTransitionProps()),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isRotating:!0}),this.blockEvents(e)}else{const t=this.controllerState.rotateEnd();this.updateViewport(t,null,{isDragging:!1,isRotating:!1})}return!0}_onPinchStart(t){const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.controllerState.zoomStart({pos:e}).rotateStart({pos:e});return this._startPinchRotation=t.rotation,this._lastPinchEvent=t,this.updateViewport(n,YP,{isDragging:!0}),!0}_onPinch(t){if(!this.touchZoom&&!this.touchRotate||!this.isDragging())return!1;let e=this.controllerState;if(this.touchZoom){const{scale:n}=t,i=this.getCenter(t);e=e.zoom({pos:i,scale:n})}if(this.touchRotate){const{rotation:n}=t;e=e.rotate({deltaAngleX:this._startPinchRotation-n})}return this.updateViewport(e,YP,{isDragging:!0,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:this.touchRotate}),this._lastPinchEvent=t,!0}_onPinchEnd(t){if(!this.isDragging())return!1;const{inertia:e,_lastPinchEvent:n}=this;if(this.touchZoom&&e&&n&&t.scale!==n.scale){const i=this.getCenter(t);let r=this.controllerState.rotateEnd();const s=Math.log2(t.scale),o=(s-Math.log2(n.scale))/(t.deltaTime-n.deltaTime),a=Math.pow(2,s+o*e/2);r=r.zoom({pos:i,scale:a}).zoomEnd(),this.updateViewport(r,ii(wt({},this._getTransitionProps({around:i})),{transitionDuration:e,transitionEasing:QP}),{isDragging:!1,isPanning:this.touchZoom,isZooming:this.touchZoom,isRotating:!1}),this.blockEvents(e)}else{const t=this.controllerState.zoomEnd().rotateEnd();this.updateViewport(t,null,{isDragging:!1,isPanning:!1,isZooming:!1,isRotating:!1})}return this._startPinchRotation=null,this._lastPinchEvent=null,!0}_onDoubleTap(t){if(!this.doubleClickZoom)return!1;const e=this.getCenter(t);if(!this.isPointInBounds(e,t))return!1;const n=this.isFunctionKeyPressed(t),i=this.controllerState.zoom({pos:e,scale:n?.5:2});return this.updateViewport(i,this._getTransitionProps({around:e}),{isZooming:!0,isPanning:!0}),this.blockEvents(100),!0}_onKeyDown(t){if(!this.keyboard)return!1;const e=this.isFunctionKeyPressed(t),{zoomSpeed:n,moveSpeed:i,rotateSpeedX:r,rotateSpeedY:s}=this.keyboard,{controllerState:o}=this;let a;const l={};switch(t.srcEvent.code){case"Minus":a=e?o.zoomOut(n).zoomOut(n):o.zoomOut(n),l.isZooming=!0;break;case"Equal":a=e?o.zoomIn(n).zoomIn(n):o.zoomIn(n),l.isZooming=!0;break;case"ArrowLeft":e?(a=o.rotateLeft(r),l.isRotating=!0):(a=o.moveLeft(i),l.isPanning=!0);break;case"ArrowRight":e?(a=o.rotateRight(r),l.isRotating=!0):(a=o.moveRight(i),l.isPanning=!0);break;case"ArrowUp":e?(a=o.rotateUp(s),l.isRotating=!0):(a=o.moveUp(i),l.isPanning=!0);break;case"ArrowDown":e?(a=o.rotateDown(s),l.isRotating=!0):(a=o.moveDown(i),l.isPanning=!0);break;default:return!1}return this.updateViewport(a,this._getTransitionProps(),l),!0}_getTransitionProps(t){const{_transition:e}=this;return e?t?ii(wt({},e),{transitionInterpolator:new XP(ii(wt({},t),{transitionProps:this.linearTransitionProps,makeViewport:this.controllerState.makeViewport}))}):e:YP}}class sM{constructor(t){this._viewportProps=this._applyConstraints(t)}getViewportProps(){return this._viewportProps}getState(){return this._state}shortestPathFrom(t){return this._viewportProps}_applyConstraints(t){return t}}const oM=[0,0,0];class aM extends sM{constructor({makeViewport:t,width:e,height:n,rotationX:i=0,rotationOrbit:r=0,target:s=oM,zoom:o=0,minRotationX:a=-90,maxRotationX:l=90,minZoom:c=-(1/0),maxZoom:u=Infinity,startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m}){super({width:e,height:n,rotationX:i,rotationOrbit:r,target:s,zoom:o,minRotationX:a,maxRotationX:l,minZoom:c,maxZoom:u}),this._state={startPanPosition:h,startRotatePos:d,startRotationX:p,startRotationOrbit:f,startZoomPosition:g,startZoom:m},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanPosition:this._unproject(t)})}pan({pos:t,startPosition:e}){const n=this._state.startPanPosition||e;if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanPosition:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startRotationX:this._viewportProps.rotationX,startRotationOrbit:this._viewportProps.rotationOrbit})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startRotationX:r,startRotationOrbit:s}=this._state,{width:o,height:a}=this._viewportProps;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let l;if(t){let e=(t[0]-i[0])/o;(r<-90||r>90)&&(e*=-1),l={rotationX:r+(t[1]-i[1])/a*180,rotationOrbit:s+180*e}}else l={rotationX:r+n,rotationOrbit:s+e};return this._getUpdatedState(l)}rotateEnd(){return this._getUpdatedState({startRotationX:null,startRotationOrbit:null})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{rotationOrbit:i}=n;return Math.abs(i-e.rotationOrbit)>180&&(n.rotationOrbit=i<0?i+360:i-360),n}zoomStart({pos:t}){return this._getUpdatedState({startZoomPosition:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){const{zoom:i}=this._viewportProps;let{startZoom:r,startZoomPosition:s}=this._state;Number.isFinite(r)||(r=i,s=this._unproject(e)||this._unproject(t));const o=this._calculateNewZoom({scale:n,startZoom:r}),a=this.makeViewport(ii(wt({},this._viewportProps),{zoom:o}));return this._getUpdatedState(wt({zoom:o},a.panByPosition(s,t)))}zoomEnd(){return this._getUpdatedState({startZoomPosition:null,startZoom:null})}zoomIn(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:t})})}zoomOut(t=2){return this._getUpdatedState({zoom:this._calculateNewZoom({scale:1/t})})}moveLeft(t=50){return this._panFromCenter([-t,0])}moveRight(t=50){return this._panFromCenter([t,0])}moveUp(t=50){return this._panFromCenter([0,-t])}moveDown(t=50){return this._panFromCenter([0,t])}rotateLeft(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit-t})}rotateRight(t=15){return this._getUpdatedState({rotationOrbit:this._viewportProps.rotationOrbit+t})}rotateUp(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX-t})}rotateDown(t=10){return this._getUpdatedState({rotationX:this._viewportProps.rotationX+t})}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return Number.isFinite(e)||(e=this._viewportProps.zoom),LS(e+Math.log2(t),i,n)}_panFromCenter(t){const{width:e,height:n,target:i}=this._viewportProps;return this.pan({startPosition:i,pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new aM(wt(wt(wt({},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i,maxRotationX:r,minRotationX:s,rotationOrbit:o}=t;return t.zoom=LS(i,n,e),t.rotationX=LS(t.rotationX,s,r),(o<-180||o>180)&&(t.rotationOrbit=function(t,e){const n=t%360;return n<0?360+n:n}(o+180)-180),t}}class lM extends rM{constructor(t){super(aM,t)}get linearTransitionProps(){return["target","zoom","rotationX","rotationOrbit"]}}class cM extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(aM,t)}_onPanRotate(t){return!1}get linearTransitionProps(){return["target","zoom"]}}const uM=(new bT).lookAt({eye:[0,0,1]});function hM({width:t,height:e,near:n,far:i}){return t=t||1,e=e||1,(new bT).ortho({left:-t/2,right:t/2,bottom:-e/2,top:e/2,near:n,far:i})}class dM extends WT{constructor(t){const{width:e,height:n,near:i=.1,far:r=1e3,zoom:s=0,target:o=[0,0,0],flipY:a=!0}=t,l=Math.pow(2,s);super(ii(wt({},t),{longitude:null,position:o,viewMatrix:uM.clone().scale([l,l*(a?-1:1),l]),projectionMatrix:hM({width:e,height:n,near:i,far:r}),zoom:s}))}panByPosition(t,e){const n=uT([],t,hT([],LT(e,this.pixelUnprojectionMatrix)));return{target:uT([],this.center,n)}}}let pM=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:dM}))}get controller(){return this._getControllerProps({type:cM})}}return t.displayName="OrthographicView",t})();const fM=Math.PI/180;function gM({height:t,fovy:e,orbitAxis:n,rotationX:i,rotationOrbit:r,zoom:s}){const o=.5/Math.tan(e*fM/2),a="Z"===n?[0,0,1]:[0,1,0],l="Z"===n?[0,-o,0]:[0,0,o],c=(new bT).lookAt({eye:l,up:a});c.rotateX(i*fM),"Z"===n?c.rotateZ(r*fM):c.rotateY(r*fM);const u=Math.pow(2,s)/(t||1);return c.scale(u),c}class mM extends WT{constructor(t){const{height:e,fovy:n,orbitAxis:i,target:r=[0,0,0],rotationX:s=0,rotationOrbit:o=0,zoom:a=0}=t;super(ii(wt({},t),{longitude:null,viewMatrix:gM({height:e,fovy:n,orbitAxis:i,rotationX:s,rotationOrbit:o,zoom:a}),fovy:n,position:r,zoom:a})),this.projectedCenter=this.project(this.center)}unproject(t,{topLeft:e=!0}={}){const[n,i,r=this.projectedCenter[2]]=t,s=e?i:this.height-i,[o,a,l]=LT([n,s,r],this.pixelUnprojectionMatrix);return[o,a,l]}panByPosition(t,e){const n=this.project(t);return{target:this.unproject([this.width/2+n[0]-e[0],this.height/2+n[1]-e[1],this.projectedCenter[2]])}}}let bM=(()=>{class t extends UP{constructor(t={}){const{orbitAxis:e="Z"}=t;super(ii(wt({},t),{orbitAxis:e,type:mM}))}get controller(){return this._getControllerProps({type:lM})}}return t.displayName="OrbitView",t})();const yM=[255,255,255],vM=1;let _M=0;class wM{constructor(t={}){const{color:e=yM}=t,{intensity:n=vM}=t;this.id=t.id||"ambient-".concat(_M++),this.color=e,this.intensity=n,this.type="ambient"}}const xM=[255,255,255],SM=1,EM=[0,0,-1];let CM=0;class OM{constructor(t={}){const{color:e=xM}=t,{intensity:n=SM}=t,{direction:i=EM}=t,{_shadow:r=!1}=t;this.id=t.id||"directional-".concat(CM++),this.color=e,this.intensity=n,this.type="directional",this.direction=new nE(i).normalize().toArray(),this.shadow=r}getProjectedLight(){return this}}class TM{constructor(t={}){const{id:e="effect"}=t;this.id=e,this.props=wt({},t)}preRender(){}getModuleParameters(){}cleanup(){}}class kM extends class{constructor(t,e={}){const{id:n="pass"}=e;this.id=n,this.gl=t,this.props=wt({},e)}setProps(t){Object.assign(this.props,t)}render(){}cleanup(){}}{render(t){return yx(this.gl,{framebuffer:t.target}),this._drawLayers(t)}_drawLayers(t){const{viewports:e,views:n,onViewportActive:i,clearCanvas:r=!0}=t;t.pass=t.pass||"unknown";const s=this.gl;r&&function(t){yx(t,{viewport:[0,0,t.drawingBufferWidth,t.drawingBufferHeight]}),t.clear(16640)}(s);const o=[];for(const a of e){const e=a.viewport||a,r=n&&n[e.id];i(e);const l=this._getDrawLayerParams(e,t);t.view=r;const c=e.subViewports||[e];for(const n of c){t.viewport=n;const e=this._drawLayersInViewport(s,t,l);o.push(e)}}return o}_getDrawLayerParams(t,{layers:e,pass:n,layerFilter:i,effects:r,moduleParameters:s}){const o=[],a=AM(),l={viewport:t,isPicking:n.startsWith("picking"),renderPass:n};for(let c=0;cpS(t,e))}const a={totalCount:e.length,visibleCount:0,compositeCount:0,pickableCount:0};yx(t,{viewport:o});for(let c=0;c{const o=r.props._offset,a=r.id,l=r.parent&&r.parent.id;let c;if(l&&!(l in e)&&i(r.parent,!1),l in n){const t=n[l]=n[l]||AM(e[l],e);c=t(r,s),n[a]=t}else Number.isFinite(o)?(c=o+(e[l]||0),n[a]=null):c=t;return s&&c>=t&&(t=c+1),e[a]=c,c};return i}class PM extends kM{constructor(t,e){super(t,e),this.shadowMap=new lS(t,{width:1,height:1,parameters:{10241:9729,10240:9729,10242:33071,10243:33071}}),this.depthBuffer=new hS(t,{format:33189,width:1,height:1}),this.fbo=new SS(t,{id:"shadowmap",width:1,height:1,attachments:{36064:this.shadowMap,36096:this.depthBuffer}})}render(t){const e=this.fbo;vx(this.gl,{depthRange:[0,1],depthTest:!0,blend:!1,clearColor:[1,1,1,1]},()=>{const n=t.viewports[0],i=_x(this.gl),r=n.width*i,s=n.height*i;(r!==e.width||s!==e.height)&&e.resize({width:r,height:s}),super.render(ii(wt({},t),{target:e,pass:"shadow"}))})}shouldDrawLayer(t){return!1!==t.props.shadowEnabled}getModuleParameters(){return{drawToShadowMap:!0}}delete(){this.fbo&&(this.fbo.delete(),this.fbo=null),this.shadowMap&&(this.shadowMap.delete(),this.shadowMap=null),this.depthBuffer&&(this.depthBuffer.delete(),this.depthBuffer=null)}}const MM=Object.keys(Iw).map(t=>"const int COORDINATE_SYSTEM_".concat(t," = ").concat(Iw[t],";")).join(""),IM=Object.keys(Dw).map(t=>"const int PROJECTION_MODE_".concat(t," = ").concat(Dw[t],";")).join("");var DM="".concat(MM,"\n").concat(IM,"\n\nuniform int project_uCoordinateSystem;\nuniform int project_uProjectionMode;\nuniform float project_uScale;\nuniform bool project_uWrapLongitude;\nuniform vec3 project_uCommonUnitsPerMeter;\nuniform vec3 project_uCommonUnitsPerWorldUnit;\nuniform vec3 project_uCommonUnitsPerWorldUnit2;\nuniform vec4 project_uCenter;\nuniform mat4 project_uModelMatrix;\nuniform mat4 project_uViewProjectionMatrix;\nuniform vec2 project_uViewportSize;\nuniform float project_uDevicePixelRatio;\nuniform float project_uFocalDistance;\nuniform vec3 project_uCameraPosition;\nuniform vec3 project_uCoordinateOrigin;\nuniform vec3 project_uCommonOrigin;\n\nconst float TILE_SIZE = 512.0;\nconst float PI = 3.1415926536;\nconst float WORLD_SCALE = TILE_SIZE / (PI * 2.0);\nconst vec3 ZERO_64_LOW = vec3(0.0);\nconst float EARTH_RADIUS = 6370972.0;\nconst float GLOBE_RADIUS = 256.0;\nfloat project_size(float meters) {\n return meters * project_uCommonUnitsPerMeter.z;\n}\n\nvec2 project_size(vec2 meters) {\n return meters * project_uCommonUnitsPerMeter.xy;\n}\n\nvec3 project_size(vec3 meters) {\n return meters * project_uCommonUnitsPerMeter;\n}\n\nvec4 project_size(vec4 meters) {\n return vec4(meters.xyz * project_uCommonUnitsPerMeter, meters.w);\n}\nvec3 project_normal(vec3 vector) {\n vec4 normal_modelspace = project_uModelMatrix * vec4(vector, 0.0);\n return normalize(normal_modelspace.xyz * project_uCommonUnitsPerMeter);\n}\n\nvec4 project_offset_(vec4 offset) {\n float dy = offset.y;\n vec3 commonUnitsPerWorldUnit = project_uCommonUnitsPerWorldUnit + project_uCommonUnitsPerWorldUnit2 * dy;\n return vec4(offset.xyz * commonUnitsPerWorldUnit, offset.w);\n}\nvec2 project_mercator_(vec2 lnglat) {\n float x = lnglat.x;\n if (project_uWrapLongitude) {\n x = mod(x + 180., 360.0) - 180.;\n }\n float y = clamp(lnglat.y, -89.9, 89.9);\n return vec2(\n radians(x) + PI,\n PI + log(tan_fp32(PI * 0.25 + radians(y) * 0.5))\n ) * WORLD_SCALE;\n}\n\nvec3 project_globe_(vec3 lnglatz) {\n float lambda = radians(lnglatz.x);\n float phi = radians(lnglatz.y);\n float cosPhi = cos(phi);\n float D = (lnglatz.z / EARTH_RADIUS + 1.0) * GLOBE_RADIUS;\n\n return vec3(\n sin(lambda) * cosPhi,\n -cos(lambda) * cosPhi,\n sin(phi)\n ) * D;\n}\nvec4 project_position(vec4 position, vec3 position64Low) {\n vec4 position_world = project_uModelMatrix * position;\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_mercator_(position_world.xy),\n project_size(position_world.z),\n position_world.w\n );\n }\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN) {\n position_world.xyz += project_uCoordinateOrigin;\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n return vec4(\n project_globe_(position_world.xyz),\n position_world.w\n );\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET) {\n if (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT) {\n if (abs(position_world.y - project_uCoordinateOrigin.y) > 0.25) {\n return vec4(\n project_mercator_(position_world.xy) - project_uCommonOrigin.xy,\n project_size(position_world.z),\n position_world.w\n );\n }\n }\n }\n if (project_uProjectionMode == PROJECTION_MODE_IDENTITY ||\n (project_uProjectionMode == PROJECTION_MODE_WEB_MERCATOR_AUTO_OFFSET &&\n (project_uCoordinateSystem == COORDINATE_SYSTEM_LNGLAT ||\n project_uCoordinateSystem == COORDINATE_SYSTEM_CARTESIAN))) {\n position_world.xyz -= project_uCoordinateOrigin;\n }\n return project_offset_(position_world + project_uModelMatrix * vec4(position64Low, 0.0));\n}\n\nvec4 project_position(vec4 position) {\n return project_position(position, ZERO_64_LOW);\n}\n\nvec3 project_position(vec3 position, vec3 position64Low) {\n vec4 projected_position = project_position(vec4(position, 1.0), position64Low);\n return projected_position.xyz;\n}\n\nvec3 project_position(vec3 position) {\n vec4 projected_position = project_position(vec4(position, 1.0), ZERO_64_LOW);\n return projected_position.xyz;\n}\n\nvec2 project_position(vec2 position) {\n vec4 projected_position = project_position(vec4(position, 0.0, 1.0), ZERO_64_LOW);\n return projected_position.xy;\n}\n\nvec4 project_common_position_to_clipspace(vec4 position, mat4 viewProjectionMatrix, vec4 center) {\n return viewProjectionMatrix * position + center;\n}\nvec4 project_common_position_to_clipspace(vec4 position) {\n return project_common_position_to_clipspace(position, project_uViewProjectionMatrix, project_uCenter);\n}\nvec2 project_pixel_size_to_clipspace(vec2 pixels) {\n vec2 offset = pixels / project_uViewportSize * project_uDevicePixelRatio * 2.0;\n return offset * project_uFocalDistance;\n}\n\nfloat project_size_to_pixel(float meters) {\n return project_size(meters) * project_uScale;\n}\nfloat project_pixel_size(float pixels) {\n return pixels / project_uScale;\n}\nvec2 project_pixel_size(vec2 pixels) {\n return pixels / project_uScale;\n}\nmat3 project_get_orientation_matrix(vec3 up) {\n vec3 uz = normalize(up);\n vec3 ux = abs(uz.z) == 1.0 ? vec3(1.0, 0.0, 0.0) : normalize(vec3(uz.y, -uz.x, 0));\n vec3 uy = cross(uz, ux);\n return mat3(ux, uy, uz);\n}\n\nbool project_needs_rotation(vec3 commonPosition, out mat3 transform) {\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n transform = project_get_orientation_matrix(commonPosition);\n return true;\n }\n return false;\n}\n");const RM={};var NM={name:"project",dependencies:[{name:"fp32",vs:"#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\nconst float TWO_PI = 6.2831854820251465;\nconst float PI_2 = 1.5707963705062866;\nconst float PI_16 = 0.1963495463132858;\n\nconst float SIN_TABLE_0 = 0.19509032368659973;\nconst float SIN_TABLE_1 = 0.3826834261417389;\nconst float SIN_TABLE_2 = 0.5555702447891235;\nconst float SIN_TABLE_3 = 0.7071067690849304;\n\nconst float COS_TABLE_0 = 0.9807852506637573;\nconst float COS_TABLE_1 = 0.9238795042037964;\nconst float COS_TABLE_2 = 0.8314695954322815;\nconst float COS_TABLE_3 = 0.7071067690849304;\n\nconst float INVERSE_FACTORIAL_3 = 1.666666716337204e-01;\nconst float INVERSE_FACTORIAL_5 = 8.333333767950535e-03;\nconst float INVERSE_FACTORIAL_7 = 1.9841270113829523e-04;\nconst float INVERSE_FACTORIAL_9 = 2.75573188446287533e-06;\n\nfloat sin_taylor_fp32(float a) {\n float r, s, t, x;\n\n if (a == 0.0) {\n return 0.0;\n }\n\n x = -a * a;\n s = a;\n r = a;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_3;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_5;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_7;\n s = s + t;\n\n r = r * x;\n t = r * INVERSE_FACTORIAL_9;\n s = s + t;\n\n return s;\n}\n\nvoid sincos_taylor_fp32(float a, out float sin_t, out float cos_t) {\n if (a == 0.0) {\n sin_t = 0.0;\n cos_t = 1.0;\n }\n sin_t = sin_taylor_fp32(a);\n cos_t = sqrt(1.0 - sin_t * sin_t);\n}\n\nfloat tan_taylor_fp32(float a) {\n float sin_a;\n float cos_a;\n\n if (a == 0.0) {\n return 0.0;\n }\n float z = floor(a / TWO_PI);\n float r = a - TWO_PI * z;\n\n float t;\n float q = floor(r / PI_2 + 0.5);\n int j = int(q);\n\n if (j < -2 || j > 2) {\n return 1.0 / 0.0;\n }\n\n t = r - PI_2 * q;\n\n q = floor(t / PI_16 + 0.5);\n int k = int(q);\n int abs_k = int(abs(float(k)));\n\n if (abs_k > 4) {\n return 1.0 / 0.0;\n } else {\n t = t - PI_16 * q;\n }\n\n float u = 0.0;\n float v = 0.0;\n\n float sin_t, cos_t;\n float s, c;\n sincos_taylor_fp32(t, sin_t, cos_t);\n\n if (k == 0) {\n s = sin_t;\n c = cos_t;\n } else {\n if (abs(float(abs_k) - 1.0) < 0.5) {\n u = COS_TABLE_0;\n v = SIN_TABLE_0;\n } else if (abs(float(abs_k) - 2.0) < 0.5) {\n u = COS_TABLE_1;\n v = SIN_TABLE_1;\n } else if (abs(float(abs_k) - 3.0) < 0.5) {\n u = COS_TABLE_2;\n v = SIN_TABLE_2;\n } else if (abs(float(abs_k) - 4.0) < 0.5) {\n u = COS_TABLE_3;\n v = SIN_TABLE_3;\n }\n if (k > 0) {\n s = u * sin_t + v * cos_t;\n c = u * cos_t - v * sin_t;\n } else {\n s = u * sin_t - v * cos_t;\n c = u * cos_t + v * sin_t;\n }\n }\n\n if (j == 0) {\n sin_a = s;\n cos_a = c;\n } else if (j == 1) {\n sin_a = c;\n cos_a = -s;\n } else if (j == -1) {\n sin_a = -c;\n cos_a = s;\n } else {\n sin_a = -s;\n cos_a = -c;\n }\n return sin_a / cos_a;\n}\n#endif\n\nfloat tan_fp32(float a) {\n#ifdef LUMA_FP32_TAN_PRECISION_WORKAROUND\n return tan_taylor_fp32(a);\n#else\n return tan(a);\n#endif\n}\n",fs:null}],vs:DM,getUniforms:function(t=RM){return t.viewport?function({viewport:t,devicePixelRatio:e=1,modelMatrix:n=null,coordinateSystem:i=Iw.DEFAULT,coordinateOrigin:r,autoWrapLongitude:s=!1}={}){i===Iw.DEFAULT&&(i=t.isGeospatial?Iw.LNGLAT:Iw.CARTESIAN);const o=aT({viewport:t,devicePixelRatio:e,coordinateSystem:i,coordinateOrigin:r});return o.project_uWrapLongitude=s,o.project_uModelMatrix=n||rT,o}(t):{}}};const LM=$O(function({viewport:t,center:e}){return new bT(t.viewProjectionMatrix).invert().transform(e)}),jM=$O(function({viewport:t,shadowMatrices:e}){const n=[],i=t.pixelUnprojectionMatrix,r=t.isGeospatial?void 0:1,s=[[0,0,r],[t.width,0,r],[0,t.height,r],[t.width,t.height,r],[0,0,-1],[t.width,0,-1],[0,t.height,-1],[t.width,t.height,-1]].map(t=>function(t,e){const[n,i,r]=t,s=LT([n,i,r],e);return Number.isFinite(r)?s:[s[0],s[1],0]}(t,i));for(const o of e){const e=o.clone().translate(new nE(t.center).negate()),i=s.map(t=>e.transform(t)),r=(new bT).ortho({left:Math.min(...i.map(t=>t[0])),right:Math.max(...i.map(t=>t[0])),bottom:Math.min(...i.map(t=>t[1])),top:Math.max(...i.map(t=>t[1])),near:Math.min(...i.map(t=>-t[2])),far:Math.max(...i.map(t=>-t[2]))});n.push(r.multiplyRight(o))}return n}),FM=[0,0,0,1],BM=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0];var VM={name:"shadow",dependencies:[NM],vs:"\nconst int max_lights = 2;\nuniform mat4 shadow_uViewProjectionMatrices[max_lights];\nuniform vec4 shadow_uProjectCenters[max_lights];\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform int shadow_uLightId;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nvec4 shadow_setVertexPosition(vec4 position_commonspace) {\n if (shadow_uDrawShadowMap) {\n return project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[shadow_uLightId], shadow_uProjectCenters[shadow_uLightId]);\n }\n if (shadow_uUseShadowMap) {\n for (int i = 0; i < max_lights; i++) {\n if(i < int(shadow_uLightCount)) {\n vec4 shadowMap_position = project_common_position_to_clipspace(position_commonspace, shadow_uViewProjectionMatrices[i], shadow_uProjectCenters[i]);\n shadow_vPosition[i] = (shadowMap_position.xyz / shadowMap_position.w + 1.0) / 2.0;\n }\n }\n }\n return gl_Position;\n}\n",fs:"\nconst int max_lights = 2;\nuniform bool shadow_uDrawShadowMap;\nuniform bool shadow_uUseShadowMap;\nuniform sampler2D shadow_uShadowMap0;\nuniform sampler2D shadow_uShadowMap1;\nuniform vec4 shadow_uColor;\nuniform float shadow_uLightCount;\n\nvarying vec3 shadow_vPosition[max_lights];\n\nconst vec4 bitPackShift = vec4(1.0, 255.0, 65025.0, 16581375.0);\nconst vec4 bitUnpackShift = 1.0 / bitPackShift;\nconst vec4 bitMask = vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n\nfloat shadow_getShadowWeight(vec3 position, sampler2D shadowMap) {\n vec4 rgbaDepth = texture2D(shadowMap, position.xy);\n\n float z = dot(rgbaDepth, bitUnpackShift);\n return smoothstep(0.001, 0.01, position.z - z);\n}\n\nvec4 shadow_filterShadowColor(vec4 color) {\n if (shadow_uDrawShadowMap) {\n vec4 rgbaDepth = fract(gl_FragCoord.z * bitPackShift);\n rgbaDepth -= rgbaDepth.gbaa * bitMask;\n return rgbaDepth;\n }\n if (shadow_uUseShadowMap) {\n float shadowAlpha = 0.0;\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[0], shadow_uShadowMap0);\n if(shadow_uLightCount > 1.0) {\n shadowAlpha += shadow_getShadowWeight(shadow_vPosition[1], shadow_uShadowMap1);\n }\n shadowAlpha *= shadow_uColor.a / shadow_uLightCount;\n float blendedAlpha = shadowAlpha + color.a * (1.0 - shadowAlpha);\n\n return vec4(\n mix(color.rgb, shadow_uColor.rgb, shadowAlpha / blendedAlpha),\n blendedAlpha\n );\n }\n return color;\n}\n",inject:{"vs:DECKGL_FILTER_GL_POSITION":"\n position = shadow_setVertexPosition(geometry.position);\n ","fs:DECKGL_FILTER_COLOR":"\n color = shadow_filterShadowColor(color);\n "},getUniforms:(t={},e={})=>{if(t.drawToShadowMap||t.shadowMaps&&t.shadowMaps.length>0){const{shadowEnabled:n=!0}=t;return n&&t.shadowMatrices&&t.shadowMatrices.length>0?function(t={},e={}){const n={shadow_uDrawShadowMap:Boolean(t.drawToShadowMap),shadow_uUseShadowMap:!!t.shadowMaps&&t.shadowMaps.length>0,shadow_uColor:t.shadowColor||FM,shadow_uLightId:t.shadowLightId||0,shadow_uLightCount:t.shadowMatrices.length},i=LM({viewport:t.viewport,center:e.project_uCenter}),r=[],s=jM({shadowMatrices:t.shadowMatrices,viewport:t.viewport}).slice();for(let o=0;o0?t.shadowMaps[o]:t.dummyShadowMap;return n}(t,e):{shadow_uDrawShadowMap:!1,shadow_uUseShadowMap:!1}}return{}}};const zM={color:[255,255,255],intensity:1},UM=[{color:[255,255,255],intensity:1,direction:[-1,3,-1]},{color:[255,255,255],intensity:.9,direction:[1,-8,-2.5]}],HM=[0,0,0,200/255];class $M extends TM{constructor(t){super(t),this.ambientLight=null,this.directionalLights=[],this.pointLights=[],this.shadowColor=HM,this.shadowPasses=[],this.shadowMaps=[],this.dummyShadowMap=null,this.shadow=!1,this.programManager=null;for(const e in t){const n=t[e];switch(n.type){case"ambient":this.ambientLight=n;break;case"directional":this.directionalLights.push(n);break;case"point":this.pointLights.push(n)}}this._applyDefaultLights(),this.shadow=this.directionalLights.some(t=>t.shadow)}preRender(t,{layers:e,layerFilter:n,viewports:i,onViewportActive:r,views:s}){if(this.shadow){this.shadowMatrices=this._createLightMatrix(),0===this.shadowPasses.length&&this._createShadowPasses(t),this.programManager||(this.programManager=sO.getDefaultProgramManager(t),VM&&this.programManager.addDefaultModule(VM)),this.dummyShadowMap||(this.dummyShadowMap=new lS(t,{width:1,height:1}));for(let t=0;te.getProjectedLight({layer:t})),pointLights:this.pointLights.map(e=>e.getProjectedLight({layer:t}))},e}cleanup(){for(const t of this.shadowPasses)t.delete();this.shadowPasses.length=0,this.shadowMaps.length=0,this.dummyShadowMap&&(this.dummyShadowMap.delete(),this.dummyShadowMap=null),this.shadow&&this.programManager&&(this.programManager.removeDefaultModule(VM),this.programManager=null)}_createLightMatrix(){const t=[];for(const e of this.directionalLights){const n=(new bT).lookAt({eye:new nE(e.direction).negate()});t.push(n)}return t}_createShadowPasses(t){for(let e=0;e=e.delay+e.duration*e.repeat}getTime(t){if(void 0===t)return this.time;const e=this.channels.get(t);return void 0===e?-1:e.time}setTime(t){this.time=Math.max(0,t);const e=this.channels.values();for(const i of e)this._setChannelTime(i,this.time);const n=this.animations.values();for(const i of n){const{animation:t,channel:e}=i;t.setTime(this.getTime(e))}}play(){this.playing=!0}pause(){this.playing=!1,this.lastEngineTime=-1}reset(){this.setTime(0)}attachAnimation(t,e){const n=WM++;return this.animations.set(n,{animation:t,channel:e}),t.setTime(this.getTime(e)),n}detachAnimation(t){this.animations.delete(t)}update(t){this.playing&&(-1===this.lastEngineTime&&(this.lastEngineTime=t),this.setTime(this.time+(t-this.lastEngineTime)),this.lastEngineTime=t)}_setChannelTime(t,e){const n=e-t.delay;n>=t.duration*t.repeat?t.time=t.duration*t.rate:(t.time=Math.max(0,n)%t.duration,t.time*=t.rate)}}class XM{constructor(t,e,n){this.id=t,this.context=n,this._loadCount=0,this._subscribers=new Set,this.setData(e)}subscribe(t){this._subscribers.add(t)}unsubscribe(t){this._subscribers.delete(t)}inUse(){return this._subscribers.size>0}delete(){}getData(){return this.isLoaded?this._error?Promise.reject(this._error):this._content:this._loader.then(()=>this.getData())}setData(t,e){if(t===this._data&&!e)return;this._data=t;const n=++this._loadCount;let i=t;"string"==typeof t&&(i=AP(t)),i instanceof Promise?(this.isLoaded=!1,this._loader=i.then(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=null,this._content=t)}).catch(t=>{this._loadCount===n&&(this.isLoaded=!0,this._error=t||!0)})):(this.isLoaded=!0,this._error=null,this._content=t);for(const r of this._subscribers)r.onChange(this.getData())}}class YM{constructor({gl:t,protocol:e}){this.protocol=e||"resource://",this._context={gl:t,resourceManager:this},this._resources={},this._consumers={},this._pruneRequest=null}contains(t){return!!t.startsWith(this.protocol)||t in this._resources}add({resourceId:t,data:e,forceUpdate:n=!1,persistent:i=!0}){let r=this._resources[t];r?r.setData(e,n):(r=new XM(t,e,this._context),this._resources[t]=r),r.persistent=i}remove(t){const e=this._resources[t];e&&(e.delete(),delete this._resources[t])}unsubscribe({consumerId:t}){const e=this._consumers[t];if(e){for(const t in e){const n=e[t];n.resource&&n.resource.unsubscribe(n)}delete this._consumers[t],this.prune()}}subscribe({resourceId:t,onChange:e,consumerId:n,requestId:i="default"}){const{_resources:r,protocol:s}=this;t.startsWith(s)&&(r[t=t.replace(s,"")]||this.add({resourceId:t,data:null,persistent:!1}));const o=r[t];if(this._track(n,i,o,e),o)return o.getData()}prune(){this._pruneRequest||(this._pruneRequest=setTimeout(()=>this._prune(),0))}finalize(){for(const t in this._resources)this._resources[t].delete()}_track(t,e,n,i){const r=this._consumers,s=r[t]=r[t]||{},o=s[e]||{};o.resource&&(o.resource.unsubscribe(o),o.resource=null,this.prune()),n&&(s[e]=o,o.onChange=i,o.resource=n,n.subscribe(o))}_prune(){this._pruneRequest=null;for(const t of Object.keys(this._resources)){const e=this._resources[t];!e.persistent&&!e.inUse()&&(e.delete(),delete this._resources[t])}}}const KM=[{name:"geometry",vs:"\nstruct VertexGeometry {\n vec4 position;\n vec3 worldPosition;\n vec3 worldPositionAlt;\n vec3 normal;\n vec2 uv;\n vec3 pickingColor;\n} geometry;\n",fs:"\n#define SMOOTH_EDGE_RADIUS 0.5\n\nstruct FragmentGeometry {\n vec2 uv;\n} geometry;\n\nfloat smoothedge(float edge, float x) {\n return smoothstep(edge - SMOOTH_EDGE_RADIUS, edge + SMOOTH_EDGE_RADIUS, x);\n}\n"},NM],QM=["vs:DECKGL_FILTER_SIZE(inout vec3 size, VertexGeometry geometry)","vs:DECKGL_FILTER_GL_POSITION(inout vec4 position, VertexGeometry geometry)","vs:DECKGL_FILTER_COLOR(inout vec4 color, VertexGeometry geometry)","fs:DECKGL_FILTER_COLOR(inout vec4 color, FragmentGeometry geometry)"];function ZM(t){const e=sO.getDefaultProgramManager(t);for(const n of KM)e.addDefaultModule(n);for(const n of QM)e.addShaderHook(n);return e}const JM=Object.seal({layerManager:null,resourceManager:null,deck:null,gl:null,stats:null,shaderCache:null,pickingFBO:null,mousePosition:null,userData:{}});class tI{constructor(t,{deck:e,stats:n,viewport:i,timeline:r}={}){this.lastRenderedLayers=[],this.layers=[],this.resourceManager=new YM({gl:t,protocol:"deck://"}),this.context=ii(wt({},JM),{layerManager:this,gl:t,deck:e,programManager:t&&ZM(t),stats:n||new Mx({id:"deck.gl"}),viewport:i||new WT({id:"DEFAULT-INITIAL-VIEWPORT"}),timeline:r||new qM,resourceManager:this.resourceManager}),this._nextLayers=null,this._needsRedraw="Initial render",this._needsUpdate=!1,this._debug=!1,this.activateViewport=this.activateViewport.bind(this),Object.seal(this)}finalize(){this.resourceManager.finalize();for(const t of this.layers)this._finalizeLayer(t)}needsRedraw(t={clearRedrawFlags:!1}){let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);for(const n of this.layers){const i=n.getNeedsRedraw(t);e=e||i}return e}needsUpdate(){return this._nextLayers&&this._nextLayers!==this.lastRenderedLayers?"layers changed":this._needsUpdate}setNeedsRedraw(t){this._needsRedraw=this._needsRedraw||t}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t}getLayers({layerIds:t=null}={}){return t?this.layers.filter(e=>t.find(t=>0===e.id.indexOf(t))):this.layers}setProps(t){"debug"in t&&(this._debug=t.debug),"userData"in t&&(this.context.userData=t.userData),"layers"in t&&(this._nextLayers=t.layers),"onError"in t&&(this.context.onError=t.onError)}setLayers(t,e){PE("layerManager.setLayers",this,e,t),this.lastRenderedLayers=t,t=gE(t,Boolean);for(const n of t)n.context=this.context;return this._updateLayers(this.layers,t),this}updateLayers(){const t=this.needsUpdate();t&&(this.setNeedsRedraw("updating layers: ".concat(t)),this.setLayers(this._nextLayers||this.lastRenderedLayers,t)),this._nextLayers=null}activateViewport(t){return PE("layerManager.activateViewport",this,t),t&&(this.context.viewport=t),this}_handleError(t,e,n){n.raiseError(e,"".concat(t," of ").concat(n))}_updateLayers(t,e){const n={};for(const s of t)n[s.id]?Mw.warn("Multiple old layers with same id ".concat(s.id))():n[s.id]=s;const i=[];this._updateSublayersRecursively(e,n,i),this._finalizeOldLayers(n);let r=!1;for(const s of i)if(s.hasUniformTransition()){r=!0;break}this._needsUpdate=r,this.layers=i}_updateSublayersRecursively(t,e,n){for(const r of t){r.context=this.context;const t=e[r.id];null===t&&Mw.warn("Multiple new layers with same id ".concat(r.id))(),e[r.id]=null;let s=null;try{this._debug&&t!==r&&r.validateProps(),t?(this._transferLayerState(t,r),this._updateLayer(r)):this._initializeLayer(r),n.push(r),s=r.isComposite&&r.getSubLayers()}catch(i){this._handleError("matching",i,r)}s&&this._updateSublayersRecursively(s,e,n)}}_finalizeOldLayers(t){for(const e in t){const n=t[e];n&&this._finalizeLayer(n)}}_initializeLayer(t){try{t._initialize(),t.lifecycle="Initialized"}catch(e){this._handleError("initialization",e,t)}}_transferLayerState(t,e){e._transferState(t),e.lifecycle="Matched. State transferred from previous layer",e!==t&&(t.lifecycle="Discarded. Awaiting garbage collection")}_updateLayer(t){try{t._update()}catch(e){this._handleError("update",e,t)}}_finalizeLayer(t){this._needsRedraw=this._needsRedraw||"finalized ".concat(t),t.lifecycle="No longer matched. Awaiting garbage collection";try{t._finalize(),t.lifecycle="Finalized! Awaiting garbage collection"}catch(e){this._handleError("finalization",e,t)}}}class eI{constructor(t={}){this.views=[],this.width=100,this.height=100,this.viewState={},this.controllers={},this.timeline=t.timeline,this._viewports=[],this._viewportMap={},this._isUpdating=!1,this._needsRedraw="Initial render",this._needsUpdate=!0,this._eventManager=t.eventManager,this._eventCallbacks={onViewStateChange:t.onViewStateChange,onInteractionStateChange:t.onInteractionStateChange},Object.seal(this),this.setProps(t)}finalize(){for(const t in this.controllers)this.controllers[t]&&this.controllers[t].finalize();this.controllers={}}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}setNeedsUpdate(t){this._needsUpdate=this._needsUpdate||t,this._needsRedraw=this._needsRedraw||t}updateViewStates(){for(const t in this.controllers){const e=this.controllers[t];e&&e.updateTransition()}}getViewports(t){return t?this._viewports.filter(e=>e.containsPixel(t)):this._viewports}getViews(){const t={};return this.views.forEach(e=>{t[e.id]=e}),t}getView(t){return"string"==typeof t?this.views.find(e=>e.id===t):t}getViewState(t){const e=this.getView(t),n=e&&this.viewState[e.getViewStateId()]||this.viewState;return e?e.filterViewState(n):n}getViewport(t){return this._viewportMap[t]}unproject(t,e){const n=this.getViewports(),i={x:t[0],y:t[1]};for(let r=n.length-1;r>=0;--r){const s=n[r];if(s.containsPixel(i)){const n=t.slice();return n[0]-=s.x,n[1]-=s.y,s.unproject(n,e)}}return null}setProps(t){"views"in t&&this._setViews(t.views),"viewState"in t&&this._setViewState(t.viewState),("width"in t||"height"in t)&&this._setSize(t.width,t.height),this._isUpdating||this._update()}_update(){this._isUpdating=!0,this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._needsUpdate&&(this._needsUpdate=!1,this._rebuildViewports()),this._isUpdating=!1}_setSize(t,e){(t!==this.width||e!==this.height)&&(this.width=t,this.height=e,this.setNeedsUpdate("Size changed"))}_setViews(t){t=gE(t,Boolean),this._diffViews(t,this.views)&&this.setNeedsUpdate("views changed"),this.views=t}_setViewState(t){t?(!zP(t,this.viewState)&&this.setNeedsUpdate("viewState changed"),this.viewState=t):Mw.warn("missing `viewState` or `initialViewState`")()}_onViewStateChange(t,e){e.viewId=t,this._eventCallbacks.onViewStateChange&&this._eventCallbacks.onViewStateChange(e)}_createController(t,e){return new(0,e.type)(wt({timeline:this.timeline,eventManager:this._eventManager,onViewStateChange:this._onViewStateChange.bind(this,e.id),onStateChange:this._eventCallbacks.onInteractionStateChange,makeViewport:e=>t._getViewport(e,{width:e.width,height:e.height})},e))}_updateController(t,e,n,i){let r=t.controller;return r?(r=ii(wt(wt(wt({},e),t.props),r),{id:t.id,x:n.x,y:n.y,width:n.width,height:n.height}),i?i.setProps(r):i=this._createController(t,r),i):null}_rebuildViewports(){const{width:t,height:e,views:n}=this,i=this.controllers;this._viewports=[],this.controllers={};let r=!1;for(let s=n.length;s--;){const o=n[s],a=this.getViewState(o),l=o.makeViewport({width:t,height:e,viewState:a});let c=i[o.id];o.controller&&!c&&(r=!0),(r||!o.controller)&&c&&(c.finalize(),c=null),this.controllers[o.id]=this._updateController(o,a,l,c),this._viewports.unshift(l)}for(const s in i)i[s]&&!this.controllers[s]&&i[s].finalize();this._buildViewportMap()}_buildViewportMap(){this._viewportMap={},this._viewports.forEach(t=>{t.id&&(this._viewportMap[t.id]=this._viewportMap[t.id]||t)})}_diffViews(t,e){return t.length!==e.length||t.some((n,i)=>!t[i].equals(e[i]))}}class nI extends sM{constructor({makeViewport:t,width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o=0,pitch:a=0,altitude:l=1.5,maxZoom:c=20,minZoom:u=0,maxPitch:h=60,minPitch:d=0,startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y,normalize:v}={}){uE(Number.isFinite(r)),uE(Number.isFinite(i)),uE(Number.isFinite(s)),super({width:e,height:n,latitude:i,longitude:r,zoom:s,bearing:o,pitch:a,altitude:l,maxZoom:c,minZoom:u,maxPitch:h,minPitch:d,normalize:v}),this._state={startPanLngLat:p,startZoomLngLat:f,startRotatePos:g,startBearing:m,startPitch:b,startZoom:y},this.makeViewport=t}panStart({pos:t}){return this._getUpdatedState({startPanLngLat:this._unproject(t)})}pan({pos:t,startPos:e}){const n=this._state.startPanLngLat||this._unproject(e);if(!n)return this;const i=this.makeViewport(this._viewportProps).panByPosition(n,t);return this._getUpdatedState(i)}panEnd(){return this._getUpdatedState({startPanLngLat:null})}rotateStart({pos:t}){return this._getUpdatedState({startRotatePos:t,startBearing:this._viewportProps.bearing,startPitch:this._viewportProps.pitch})}rotate({pos:t,deltaAngleX:e=0,deltaAngleY:n=0}){const{startRotatePos:i,startBearing:r,startPitch:s}=this._state;if(!i||!Number.isFinite(r)||!Number.isFinite(s))return this;let o;return o=t?this._calculateNewPitchAndBearing(ii(wt({},this._getRotationParams(t,i)),{startBearing:r,startPitch:s})):{bearing:r+e,pitch:s+n},this._getUpdatedState(o)}rotateEnd(){return this._getUpdatedState({startBearing:null,startPitch:null})}zoomStart({pos:t}){return this._getUpdatedState({startZoomLngLat:this._unproject(t),startZoom:this._viewportProps.zoom})}zoom({pos:t,startPos:e,scale:n}){let{startZoom:i,startZoomLngLat:r}=this._state;Number.isFinite(i)||(i=this._viewportProps.zoom,r=this._unproject(e)||this._unproject(t));const s=this._calculateNewZoom({scale:n,startZoom:i}),o=this.makeViewport(ii(wt({},this._viewportProps),{zoom:s}));return this._getUpdatedState(wt({zoom:s},o.panByPosition(r,t)))}zoomEnd(){return this._getUpdatedState({startZoomLngLat:null,startZoom:null})}zoomIn(t=2){return this._zoomFromCenter(t)}zoomOut(t=2){return this._zoomFromCenter(1/t)}moveLeft(t=100){return this._panFromCenter([t,0])}moveRight(t=100){return this._panFromCenter([-t,0])}moveUp(t=100){return this._panFromCenter([0,t])}moveDown(t=100){return this._panFromCenter([0,-t])}rotateLeft(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing-t})}rotateRight(t=15){return this._getUpdatedState({bearing:this._viewportProps.bearing+t})}rotateUp(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch+t})}rotateDown(t=10){return this._getUpdatedState({pitch:this._viewportProps.pitch-t})}shortestPathFrom(t){const e=t.getViewportProps(),n=wt({},this._viewportProps),{bearing:i,longitude:r}=n;return Math.abs(i-e.bearing)>180&&(n.bearing=i<0?i+360:i-360),Math.abs(r-e.longitude)>180&&(n.longitude=r<0?r+360:r-360),n}_zoomFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.zoom({pos:[e/2,n/2],scale:t})}_panFromCenter(t){const{width:e,height:n}=this._viewportProps;return this.pan({startPos:[e/2,n/2],pos:[e/2+t[0],n/2+t[1]]})}_getUpdatedState(t){return new this.constructor(wt(wt(wt({makeViewport:this.makeViewport},this._viewportProps),this._state),t))}_applyConstraints(t){const{maxZoom:e,minZoom:n,zoom:i}=t;t.zoom=LS(i,n,e);const{maxPitch:r,minPitch:s,pitch:o}=t;t.pitch=LS(o,s,r);const{normalize:a=!0}=t;return a&&Object.assign(t,function({width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s=0,bearing:o=0}){(n<-180||n>180)&&(n=vT(n+180,360)-180),(o<-180||o>180)&&(o=vT(o+180,360)-180);const a=_T(e/512);if(r<=a)r=a,i=0;else{const t=e/2/Math.pow(2,r),n=kT([0,t])[1];if(ie&&(i=e)}}return{width:t,height:e,longitude:n,latitude:i,zoom:r,pitch:s,bearing:o}}(t)),t}_unproject(t){const e=this.makeViewport(this._viewportProps);return t&&e.unproject(t)}_calculateNewZoom({scale:t,startZoom:e}){const{maxZoom:n,minZoom:i}=this._viewportProps;return LS(e+Math.log2(t),i,n)}_calculateNewPitchAndBearing({deltaScaleX:t,deltaScaleY:e,startBearing:n,startPitch:i}){e=LS(e,-1,1);const{minPitch:r,maxPitch:s}=this._viewportProps;let o=i;return e>0?o=i+e*(s-i):e<0&&(o=i-e*(r-i)),{pitch:o,bearing:n+180*t}}_getRotationParams(t,e){const n=t[0]-e[0],i=t[1]-e[1],r=t[1],s=e[1],{width:o,height:a}=this._viewportProps,l=n/o;let c=0;return i>0?Math.abs(a-s)>5&&(c=i/(s-a)*1.2):i<0&&s>5&&(c=1-r/s),c=Math.min(1,Math.max(-1,c)),{deltaScaleX:l,deltaScaleY:c}}}class iI extends rM{constructor(t){t.dragMode=t.dragMode||"pan",super(nI,t)}setProps(t){const e=this.controllerStateProps;super.setProps(t),(!e||e.height!==t.height)&&this.updateViewport(new this.ControllerState(wt(wt({makeViewport:this.makeViewport},this.controllerStateProps),this._state)))}get linearTransitionProps(){return["longitude","latitude","zoom","bearing","pitch"]}}let rI=(()=>{class t extends UP{constructor(t){super(ii(wt({},t),{type:qT}))}get controller(){return this._getControllerProps({type:iI})}}return t.displayName="MapView",t})();const sI=new $M;class oI{constructor(){this.effects=[],this._internalEffects=[],this._needsRedraw="Initial render",this.setEffects()}setProps(t){"effects"in t&&(t.effects.length!==this.effects.length||!zP(t.effects,this.effects))&&(this.setEffects(t.effects),this._needsRedraw="effects changed")}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}getEffects(){return this._internalEffects}finalize(){this.cleanup()}setEffects(t=[]){this.cleanup(),this.effects=t,this._createInternalEffects()}cleanup(){for(const t of this.effects)t.cleanup();for(const t of this._internalEffects)t.cleanup();this.effects.length=0,this._internalEffects.length=0}_createInternalEffects(){this._internalEffects=this.effects.slice(),this.effects.some(t=>t instanceof $M)||this._internalEffects.push(sI)}}class aI extends kM{}const lI={blendFunc:[1,0,32771,0],blendEquation:32774};class cI extends kM{render(t){t.pickingFBO?(this.useAlpha=!0,this._drawPickingBuffer(t)):(this.useAlpha=!1,super.render(t))}_drawPickingBuffer({layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pickingFBO:s,deviceRect:{x:o,y:a,width:l,height:c},pass:u="picking",redrawReason:h,pickZ:d}){const p=this.gl;return this.pickZ=d,vx(p,ii(wt({scissorTest:!0,scissor:[o,a,l,c],clearColor:[0,0,0,0],depthMask:!0,depthTest:!0,depthRange:[0,1],colorMask:[!0,!0,!0,!0]},lI),{blend:!d}),()=>{super.render({target:s,layers:t,layerFilter:e,views:n,viewports:i,onViewportActive:r,pass:u,redrawReason:h})})}shouldDrawLayer(t){return t.props.pickable}getModuleParameters(){return{pickingActive:1,pickingAttribute:this.pickZ,lightSources:{}}}getLayerParameters(t,e){const n=this.pickZ?{blend:!1}:ii(wt({},lI),{blend:!0,blendColor:[0,0,0,this.useAlpha?(e+1)/255:1]});return wt(wt({},t.props.parameters),n)}}class uI{constructor(t){this.gl=t,this.layerFilter=null,this.drawPickingColors=!1,this.drawLayersPass=new aI(t),this.pickLayersPass=new cI(t),this.renderCount=0,this._needsRedraw="Initial render",this.renderBuffers=[],this.lastPostProcessEffect=null}setProps(t){"layerFilter"in t&&this.layerFilter!==t.layerFilter&&(this.layerFilter=t.layerFilter,this._needsRedraw="layerFilter changed"),"drawPickingColors"in t&&this.drawPickingColors!==t.drawPickingColors&&(this.drawPickingColors=t.drawPickingColors,this._needsRedraw="drawPickingColors changed")}renderLayers(t){const e=this.drawPickingColors?this.pickLayersPass:this.drawLayersPass;t.layerFilter=this.layerFilter,t.effects=t.effects||[],t.target=t.target||SS.getDefaultFramebuffer(this.gl),this._preRender(t.effects,t);const n=this.lastPostProcessEffect?this.renderBuffers[0]:t.target,i=e.render(ii(wt({},t),{target:n}));this._postRender(t.effects,t),this.renderCount++,PE("deckRenderer.renderLayers",this,i,t)}needsRedraw(t={clearRedrawFlags:!1}){const e=this._needsRedraw;return t.clearRedrawFlags&&(this._needsRedraw=!1),e}finalize(){const{renderBuffers:t}=this;for(const e of t)e.delete();t.length=0}_preRender(t,e){let n=null;for(const i of t)i.preRender(this.gl,e),i.postRender&&(n=i);n&&this._resizeRenderBuffers(),this.lastPostProcessEffect=n}_resizeRenderBuffers(){const{renderBuffers:t}=this;0===t.length&&t.push(new SS(this.gl),new SS(this.gl));for(const e of t)e.resize()}_postRender(t,e){const{renderBuffers:n}=this,i={inputBuffer:n[0],swapBuffer:n[1],target:null};for(const r of t)if(r.postRender){if(r===this.lastPostProcessEffect){i.target=e.target,r.postRender(this.gl,i);break}const t=r.postRender(this.gl,i);i.inputBuffer=t,i.swapBuffer=t===n[0]?n[1]:n[0]}}}const hI={pickedColor:null,pickedLayer:null,pickedObjectIndex:-1};function dI({pickedColors:t,layers:e,deviceX:n,deviceY:i,deviceRadius:r,deviceRect:s}){if(t){const{x:o,y:a,width:l,height:c}=s;let u=r*r,h=-1,d=0;for(let e=0;eu)d+=4*l;else for(let e=0;e=0){const t=e+o-n,i=t*t+s;i<=u&&(u=i,h=d)}d+=4}}if(h>=0){const n=t[h+3]-1,i=t.slice(h,h+4),r=e[n];if(r){const t=r.decodePickingColor(i),e=Math.floor(h/4/l);return{pickedColor:i,pickedLayer:r,pickedObjectIndex:t,pickedX:o+(h/4-e*l),pickedY:a+e}}Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}return hI}function pI({pickInfo:t,mode:e,viewports:n,layerFilter:i,pixelRatio:r,x:s,y:o,z:a}){const l=t&&t.pickedLayer,c=function(t,e,n){for(let i=t.length-1;i>=0;i--){const r=t[i];if(r.containsPixel(e)&&(!n||n(r)))return r}return t[0]}(n,{x:s,y:o},i&&l&&(t=>i({layer:l,viewport:t,isPicking:!0,renderPass:"picking:".concat(e)}))),u=c&&c.unproject([s-c.x,o-c.y],{targetZ:a});return{color:null,layer:null,viewport:c,index:-1,picked:!1,x:s,y:o,pixel:[s,o],coordinate:u,devicePixel:t&&[t.pickedX,t.pickedY],pixelRatio:r}}function fI(t){const{pickInfo:e,lastPickedInfo:n,mode:i,layers:r}=t,{pickedColor:s,pickedLayer:o,pickedObjectIndex:a}=e,l=o?[o]:[];if("hover"===i){const t=n.index,e=n.layerId,i=o&&o.props.id;if(i!==e||a!==t){if(i!==e){const t=r.find(t=>t.props.id===e);t&&l.unshift(t)}n.layerId=i,n.index=a,n.info=null}}const c=pI(t),u=new Map;return u.set(null,c),l.forEach(t=>{let e=wt({},c);t===o&&(e.color=s,e.index=a,e.picked=!0),e=gI({layer:t,info:e,mode:i}),t===o&&"hover"===i&&(n.info=e),u.set(e.layer.id,e),"hover"===i&&e.layer.updateAutoHighlight(e)}),u}function gI({layer:t,info:e,mode:n}){for(;t&&e;){const i=e.layer||null;e.sourceLayer=i,e.layer=t,e=t.getPickingInfo({info:e,mode:n,sourceLayer:i}),t=t.parent}return e}class mI{constructor(t){this.gl=t,this.pickingFBO=null,this.pickLayersPass=new cI(t),this.layerFilter=null,this.lastPickedInfo={index:-1,layerId:null,info:null}}setProps(t){"layerFilter"in t&&(this.layerFilter=t.layerFilter),"_pickable"in t&&(this._pickable=t._pickable)}finalize(){this.pickingFBO&&this.pickingFBO.delete(),this.depthFBO&&(this.depthFBO.color.delete(),this.depthFBO.delete())}pickObject(t){return this._pickClosestObject(t)}pickObjects(t){return this._pickVisibleObjects(t)}getLastPickedObject({x:t,y:e,layers:n,viewports:i},r=this.lastPickedInfo.info){const s=r&&r.layer&&r.layer.id,o=r&&r.viewport&&r.viewport.id,a=s?n.find(t=>t.id===s):null,l=o&&i.find(t=>t.id===o)||i[0],c=l&&l.unproject([t-l.x,e-l.y]),u={x:t,y:e,viewport:l,coordinate:c,layer:a};return a?wt(wt({},r),u):Object.assign(u,{color:null,object:null,index:-1})}_resizeBuffer(){const{gl:t}=this;return this.pickingFBO||(this.pickingFBO=new SS(t),SS.isSupported(t,{colorBufferFloat:!0})&&(this.depthFBO=new SS(t),this.depthFBO.attach({36064:new lS(t,{format:Fw(t)?34836:6408,type:5126})}))),this.pickingFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.depthFBO&&this.depthFBO.resize({width:t.canvas.width,height:t.canvas.height}),this.pickingFBO}_getPickable(t){if(!1===this._pickable)return null;const e=t.filter(t=>t.isPickable()&&!t.isComposite);return e.length>255?(Mw.warn("Too many pickable layers, only picking the first 255")(),e.slice(0,255)):e.length?e:null}_pickClosestObject({layers:t,views:e,viewports:n,x:i,y:r,radius:s=0,depth:o=1,mode:a="query",unproject3D:l,onViewportActive:c}){if(!(t=this._getPickable(t)))return{result:[],emptyInfo:pI({viewports:n,x:i,y:r})};this._resizeBuffer();const u=_x(this.gl),h=wx(this.gl,[i,r],!0),d=[h.x+Math.floor(h.width/2),h.y+Math.floor(h.height/2)],p=Math.round(s*u),{width:f,height:g}=this.pickingFBO,m=this._getPickingRect({deviceX:d[0],deviceY:d[1],deviceRadius:p,deviceWidth:f,deviceHeight:g});let b;const y=[],v={};for(let _=0;_=0){const s=t.slice(i,i+4),o=s.join(",");if(!n.has(o)){const t=e[r];t?n.set(o,{pickedColor:s,pickedLayer:t,pickedObjectIndex:t.decodePickingColor(s)}):Mw.error("Picked non-existent layer. Is picking buffer corrupt?")()}}}return Array.from(n.values())}({pickedColors:this._drawAndSample({layers:t,views:e,viewports:n,onViewportActive:c,deviceRect:{x:d,y:g,width:f.x+f.width-d,height:p-g},pass:"picking:".concat(a),redrawReason:a}),layers:t}),b=new Map,y=Number.isFinite(l);for(let v=0;v=l);v++){const t=m[v];let e={color:t.pickedColor,layer:null,index:t.pickedObjectIndex,picked:!0,x:i,y:r,width:s,height:o,pixelRatio:u};e=gI({layer:t.pickedLayer,info:e,mode:a}),b.has(e.object)||b.set(e.object,e)}return Array.from(b.values())}_drawAndSample({layers:t,views:e,viewports:n,onViewportActive:i,deviceRect:r,pass:s,redrawReason:o,pickZ:a}){if(t.length<1)return null;const l=a?this.depthFBO:this.pickingFBO;this.pickLayersPass.render({layers:t,layerFilter:this.layerFilter,views:e,viewports:n,onViewportActive:i,pickingFBO:l,deviceRect:r,pass:s,redrawReason:o,pickZ:a});const{x:c,y:u,width:h,height:d}=r,p=new(a?Float32Array:Uint8Array)(h*d*4);return _S(l,{sourceX:c,sourceY:u,sourceWidth:h,sourceHeight:d,target:p}),p}_getPickingRect({deviceX:t,deviceY:e,deviceRadius:n,deviceWidth:i,deviceHeight:r}){const s=Math.max(0,t-n),o=Math.max(0,e-n),a=Math.min(i,t+n+1)-s,l=Math.min(r,e+n+1)-o;return a<=0||l<=0?null:{x:s,y:o,width:a,height:l}}}const bI={zIndex:1,position:"absolute",pointerEvents:"none",color:"#a0a7b4",backgroundColor:"#29323c",padding:"10px",top:0,left:0,display:"none"};class yI{constructor(t){const e=t.parentElement;e&&(this.el=document.createElement("div"),this.el.className="deck-tooltip",Object.assign(this.el.style,bI),e.appendChild(this.el)),this.isVisible=!1}setTooltip(t,e,n){const i=this.el;if("string"==typeof t)i.innerText=t;else{if(!t)return this.isVisible=!1,void(i.style.display="none");"text"in t&&(i.innerText=t.text),"html"in t&&(i.innerHTML=t.html),"className"in t&&(i.className=t.className),Object.assign(i.style,t.style)}this.isVisible=!0,i.style.display="block",i.style.transform="translate(".concat(e,"px, ").concat(n,"px)")}remove(){this.el&&this.el.remove()}}function vI(t,e){if(!t)throw new Error(e)}const _I={self:"undefined"!=typeof self&&self,window:"undefined"!=typeof window&&window,global:"undefined"!=typeof global&&global,document:"undefined"!=typeof document&&document},wI=_I.global||_I.self||_I.window,xI="object"!=typeof process||"[object process]"!==String(process)||process.browser,SI="undefined"!=typeof process&&process.version&&/v([0-9]*)/.exec(process.version),{_parseImageNode:EI}=(SI&&parseFloat(SI[1]),wI),CI="undefined"!=typeof Image,OI="undefined"!=typeof ImageBitmap,TI=Boolean(EI),kI=!!xI||TI;function AI(t){const e=function(t){return"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap?"imagebitmap":"undefined"!=typeof Image&&t instanceof Image?"image":t&&"object"==typeof t&&t.data&&t.width&&t.height?"data":null}(t);if(!e)throw new Error("Not an image");return e}function PI(t){switch(AI(t)){case"data":return t;case"image":case"imagebitmap":const e=document.createElement("canvas"),n=e.getContext("2d");if(!n)throw new Error("getImageData");return e.width=t.width,e.height=t.height,n.drawImage(t,0,0),n.getImageData(0,0,t.width,t.height);default:throw new Error("getImageData")}}const MI=/^data:image\/svg\+xml/,II=/\.svg((\?|#).*)?$/;function DI(t){return t&&(MI.test(t)||II.test(t))}function RI(t,e){if(DI(e)){let e=(new TextDecoder).decode(t);try{"function"==typeof unescape&&"function"==typeof encodeURIComponent&&(e=unescape(encodeURIComponent(e)))}catch(n){throw new Error(n.message)}return`data:image/svg+xml;base64,${btoa(e)}`}return NI(t,e)}function NI(t,e){if(DI(e))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(t)])}function LI(t,e,n){return jI.apply(this,arguments)}function jI(){return(jI=gS(function*(t,e,n){const i=RI(t,n),r=self.URL||self.webkitURL,s="string"!=typeof i&&r.createObjectURL(i);try{return yield FI(s||i,e)}finally{s&&r.revokeObjectURL(s)}})).apply(this,arguments)}function FI(t,e){return BI.apply(this,arguments)}function BI(){return(BI=gS(function*(t,e){const n=new Image;return n.src=t,e.image&&e.image.decode&&n.decode?(yield n.decode(),n):yield new Promise((e,i)=>{try{n.onload=()=>e(n),n.onerror=e=>i(new Error(`Could not load image ${t}: ${e}`))}catch(r){i(r)}})})).apply(this,arguments)}const VI={};let zI=!0;function UI(t,e,n){return HI.apply(this,arguments)}function HI(){return(HI=gS(function*(t,e,n){let i;i=DI(n)?yield LI(t,e,n):NI(t,n);const r=e&&e.imagebitmap;return yield $I(i,r)})).apply(this,arguments)}function $I(t){return GI.apply(this,arguments)}function GI(){return(GI=gS(function*(t,e=null){if((WI(e)||!zI)&&(e=null),e)try{return yield createImageBitmap(t,e)}catch(n){console.warn(n),zI=!1}return yield createImageBitmap(t)})).apply(this,arguments)}function WI(t){for(const e in t||VI)return!1;return!0}const qI=!1,XI=!0;function YI(t){const e=KI(t);return function(t){const e=KI(t);return e.byteLength>=24&&2303741511===e.getUint32(0,qI)?{mimeType:"image/png",width:e.getUint32(16,qI),height:e.getUint32(20,qI)}:null}(e)||function(t){const e=KI(t);if(!(e.byteLength>=3&&65496===e.getUint16(0,qI)&&255===e.getUint8(2)))return null;const{tableMarkers:n,sofMarkers:i}=function(){const t=new Set([65499,65476,65484,65501,65534]);for(let e=65504;e<65520;++e)t.add(e);return{tableMarkers:t,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}();let r=2;for(;r+9=10&&1195984440===e.getUint32(0,qI)?{mimeType:"image/gif",width:e.getUint16(6,XI),height:e.getUint16(8,XI)}:null}(e)||function(t){const e=KI(t);return e.byteLength>=14&&16973===e.getUint16(0,qI)&&e.getUint32(2,XI)===e.byteLength?{mimeType:"image/bmp",width:e.getUint32(18,XI),height:e.getUint32(22,XI)}:null}(e)}function KI(t){if(t instanceof DataView)return t;if(ArrayBuffer.isView(t))return new DataView(t.buffer);if(t instanceof ArrayBuffer)return new DataView(t);throw new Error("toDataView")}function QI(t,e){const{mimeType:n}=YI(t)||{},{_parseImageNode:i}=wI;return vI(i),i(t,n,e)}function ZI(){return(ZI=gS(function*(t,e,n){const i=((e=e||{}).image||{}).type||"auto",{url:r}=n||{};let s;switch(JI(i)){case"imagebitmap":s=yield UI(t,e,r);break;case"image":s=yield LI(t,e,r);break;case"data":s=yield QI(t,e);break;default:vI(!1)}return"data"===i&&(s=PI(s)),s})).apply(this,arguments)}function JI(t){switch(t){case"auto":case"data":return function(){if(OI)return"imagebitmap";if(CI)return"image";if(kI)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}();default:return function(t){switch(t){case"auto":return OI||CI||kI;case"imagebitmap":return OI;case"image":return CI;case"data":return kI;default:throw new Error(`@loaders.gl/images: image ${t} not supported in this environment`)}}(t),t}}const tD={id:"image",module:"images",name:"Images",version:"3.0.12",mimeTypes:["image/png","image/jpeg","image/gif","image/webp","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],extensions:["png","jpg","jpeg","gif","webp","bmp","ico","svg"],parse:function(t,e,n){return ZI.apply(this,arguments)},tests:[t=>Boolean(YI(new DataView(t)))],options:{image:{type:"auto",decode:!0}}};var eD={name:"JSON",extensions:["json","geojson"],mimeTypes:["application/json","application/geo+json"],testText:function(t){const e=t[0],n=t[t.length-1];return"{"===e&&"}"===n||"["===e&&"]"===n},parseTextSync:JSON.parse};const nD="8.5.8",iD=zw.CO.deck&&zw.CO.deck.VERSION;if(iD&&iD!==nD)throw new Error("deck.gl - multiple versions detected: ".concat(iD," vs ").concat(nD));iD||(Mw.log(1,"deck.gl ".concat(nD))(),zw.CO.deck=Object.assign(zw.CO.deck||{},{VERSION:nD,version:nD,log:Mw,_registerLoggers:function(t){AE=t}}),fP([eD,[tD,{imagebitmap:{premultiplyAlpha:"none"}}]]));var rD=zw.CO.deck;class sD extends Hx{static isSupported(t,e=[]){const n=Fw(t),i=OS(t,"TIMER_QUERY");let r=n||i;for(const s of e)switch(s){case"queries":r=r&&n;break;case"timers":r=r&&i;break;default:Rx(!1)}return r}constructor(t,e={}){super(t,e),this.target=null,this._queryPending=!1,this._pollingPromise=null,Object.seal(this)}beginTimeElapsedQuery(){return this.begin(35007)}beginOcclusionQuery({conservative:t=!1}={}){return this.begin(t?36202:35887)}beginTransformFeedbackQuery(){return this.begin(35976)}begin(t){return this._queryPending||(this.target=t,this.gl2.beginQuery(this.target,this.handle)),this}end(){return this._queryPending||this.target&&(this.gl2.endQuery(this.target),this.target=null,this._queryPending=!0),this}isResultAvailable(){if(!this._queryPending)return!1;const t=this.gl2.getQueryParameter(this.handle,34919);return t&&(this._queryPending=!1),t}isTimerDisjoint(){return this.gl2.getParameter(36795)}getResult(){return this.gl2.getQueryParameter(this.handle,34918)}getTimerMilliseconds(){return this.getResult()/1e6}createPoll(t=Number.POSITIVE_INFINITY){if(this._pollingPromise)return this._pollingPromise;let e=0;return this._pollingPromise=new Promise((n,i)=>{const r=()=>{this.isResultAvailable()?(n(this.getResult()),this._pollingPromise=null):e++>t?(i("Timed out"),this._pollingPromise=null):requestAnimationFrame(r)};requestAnimationFrame(r)}),this._pollingPromise}_createHandle(){return sD.isSupported(this.gl)?this.gl2.createQuery():null}_deleteHandle(){this.gl2.deleteQuery(this.handle)}}const oD=(0,zw.jU)()&&"undefined"!=typeof document;let aD=0;class lD{constructor(t={}){const{onCreateContext:e=(t=>Tx(t)),onAddHTML:n=null,onInitialize:i=(()=>{}),onRender:r=(()=>{}),onFinalize:s=(()=>{}),onError:o,gl:a=null,glOptions:l={},debug:c=!1,createFramebuffer:u=!1,autoResizeViewport:h=!0,autoResizeDrawingBuffer:d=!0,stats:p=Dx.get("animation-loop-"+aD++)}=t;let{useDevicePixels:f=!0}=t;"useDevicePixelRatio"in t&&(Nw.deprecated("useDevicePixelRatio","useDevicePixels")(),f=t.useDevicePixelRatio),this.props={onCreateContext:e,onAddHTML:n,onInitialize:i,onRender:r,onFinalize:s,onError:o,gl:a,glOptions:l,debug:c,createFramebuffer:u},this.gl=a,this.needsRedraw=null,this.timeline=null,this.stats=p,this.cpuTime=this.stats.get("CPU Time"),this.gpuTime=this.stats.get("GPU Time"),this.frameRate=this.stats.get("Frame Rate"),this._initialized=!1,this._running=!1,this._animationFrameId=null,this._nextFramePromise=null,this._resolveNextFrame=null,this._cpuStartTime=0,this.setProps({autoResizeViewport:h,autoResizeDrawingBuffer:d,useDevicePixels:f}),this.start=this.start.bind(this),this.stop=this.stop.bind(this),this._pageLoadPromise=null,this._onMousemove=this._onMousemove.bind(this),this._onMouseleave=this._onMouseleave.bind(this)}delete(){this.stop(),this._setDisplay(null)}setNeedsRedraw(t){return Rx("string"==typeof t),this.needsRedraw=this.needsRedraw||t,this}setProps(t){return"autoResizeViewport"in t&&(this.autoResizeViewport=t.autoResizeViewport),"autoResizeDrawingBuffer"in t&&(this.autoResizeDrawingBuffer=t.autoResizeDrawingBuffer),"useDevicePixels"in t&&(this.useDevicePixels=t.useDevicePixels),this}start(t={}){if(this._running)return this;this._running=!0;const e=this._getPageLoadPromise().then(()=>!this._running||this._initialized?null:(this._createWebGLContext(t),this._createFramebuffer(),this._startEventHandling(),this._initializeCallbackData(),this._updateCallbackData(),this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._gpuTimeQuery=sD.isSupported(this.gl,["timers"])?new sD(this.gl):null,this._initialized=!0,this.onInitialize(this.animationProps))).then(t=>{this._running&&(this._addCallbackData(t||{}),!1!==t&&this._startLoop())});return this.props.onError&&e.catch(this.props.onError),this}redraw(){return this.isContextLost()||(this._beginTimers(),this._setupFrame(),this._updateCallbackData(),this._renderFrame(this.animationProps),this._clearNeedsRedraw(),this.offScreen&&this.gl.commit&&this.gl.commit(),this._resolveNextFrame&&(this._resolveNextFrame(this),this._nextFramePromise=null,this._resolveNextFrame=null),this._endTimers()),this}stop(){return this._running&&(this._finalizeCallbackData(),this._cancelAnimationFrame(this._animationFrameId),this._nextFramePromise=null,this._resolveNextFrame=null,this._animationFrameId=null,this._running=!1),this}attachTimeline(t){return this.timeline=t,this.timeline}detachTimeline(){this.timeline=null}waitForRender(){return this.setNeedsRedraw("waitForRender"),this._nextFramePromise||(this._nextFramePromise=new Promise(t=>{this._resolveNextFrame=t})),this._nextFramePromise}toDataURL(){var t=this;return gS(function*(){return t.setNeedsRedraw("toDataURL"),yield t.waitForRender(),t.gl.canvas.toDataURL()})()}isContextLost(){return this.gl.isContextLost()}onCreateContext(...t){return this.props.onCreateContext(...t)}onInitialize(...t){return this.props.onInitialize(...t)}onRender(...t){return this.props.onRender(...t)}onFinalize(...t){return this.props.onFinalize(...t)}getHTMLControlValue(t,e=1){const n=document.getElementById(t);return n?Number(n.value):e}setViewParameters(){return Nw.removed("AnimationLoop.setViewParameters","AnimationLoop.setProps")(),this}_startLoop(){const t=()=>{!this._running||(this.redraw(),this._animationFrameId=this._requestAnimationFrame(t))};this._cancelAnimationFrame(this._animationFrameId),this._animationFrameId=this._requestAnimationFrame(t)}_getPageLoadPromise(){return this._pageLoadPromise||(this._pageLoadPromise=oD?new Promise((t,e)=>{oD&&"complete"===document.readyState?t(document):window.addEventListener("load",()=>{t(document)})}):Promise.resolve({})),this._pageLoadPromise}_setDisplay(t){this.display&&(this.display.delete(),this.display.animationLoop=null),t&&(t.animationLoop=this),this.display=t}_cancelAnimationFrame(t){return this.display&&this.display.cancelAnimationFrame?this.display.cancelAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.cancelAnimationFrame?window.cancelAnimationFrame(t):clearTimeout(t)}(t)}_requestAnimationFrame(t){if(this._running)return this.display&&this.display.requestAnimationFrame?this.display.requestAnimationFrame(t):function(t){return"undefined"!=typeof window&&window.requestAnimationFrame?window.requestAnimationFrame(t):setTimeout(t,1e3/60)}(t)}_renderFrame(...t){this.display?this.display._renderFrame(...t):this.onRender(...t)}_clearNeedsRedraw(){this.needsRedraw=null}_setupFrame(){this._resizeCanvasDrawingBuffer(),this._resizeViewport(),this._resizeFramebuffer()}_initializeCallbackData(){this.animationProps={gl:this.gl,stop:this.stop,canvas:this.gl.canvas,framebuffer:this.framebuffer,useDevicePixels:this.useDevicePixels,needsRedraw:null,startTime:Date.now(),engineTime:0,tick:0,tock:0,time:0,_timeline:this.timeline,_loop:this,_animationLoop:this,_mousePosition:null}}_updateCallbackData(){const{width:t,height:e,aspect:n}=this._getSizeAndAspect();(t!==this.animationProps.width||e!==this.animationProps.height)&&this.setNeedsRedraw("drawing buffer resized"),n!==this.animationProps.aspect&&this.setNeedsRedraw("drawing buffer aspect changed"),this.animationProps.width=t,this.animationProps.height=e,this.animationProps.aspect=n,this.animationProps.needsRedraw=this.needsRedraw,this.animationProps.engineTime=Date.now()-this.animationProps.startTime,this.timeline&&this.timeline.update(this.animationProps.engineTime),this.animationProps.tick=Math.floor(this.animationProps.time/1e3*60),this.animationProps.tock++,this.animationProps.time=this.timeline?this.timeline.getTime():this.animationProps.engineTime,this.animationProps._offScreen=this.offScreen}_finalizeCallbackData(){this.onFinalize(this.animationProps)}_addCallbackData(t){"object"==typeof t&&null!==t&&(this.animationProps=Object.assign({},this.animationProps,t))}_createWebGLContext(t){if(this.offScreen=t.canvas&&"undefined"!=typeof OffscreenCanvas&&t.canvas instanceof OffscreenCanvas,t=Object.assign({},t,this.props.glOptions),this.gl=this.props.gl?kx(this.props.gl,t):this.onCreateContext(t),!jw(this.gl))throw new Error("AnimationLoop.onCreateContext - illegal context returned");(function(t){yx(t,tx)})(this.gl),this._createInfoDiv()}_createInfoDiv(){if(this.gl.canvas&&this.props.onAddHTML){const t=document.createElement("div");document.body.appendChild(t),t.style.position="relative";const e=document.createElement("div");e.style.position="absolute",e.style.left="10px",e.style.bottom="10px",e.style.width="300px",e.style.background="white",t.appendChild(this.gl.canvas),t.appendChild(e);const n=this.props.onAddHTML(e);n&&(e.innerHTML=n)}}_getSizeAndAspect(){const t=this.gl.drawingBufferWidth,e=this.gl.drawingBufferHeight;let n=1;const{canvas:i}=this.gl;return i&&i.clientHeight?n=i.clientWidth/i.clientHeight:t>0&&e>0&&(n=t/e),{width:t,height:e,aspect:n}}_resizeViewport(){this.autoResizeViewport&&this.gl.viewport(0,0,this.gl.drawingBufferWidth,this.gl.drawingBufferHeight)}_resizeCanvasDrawingBuffer(){this.autoResizeDrawingBuffer&&function(t,e={}){if(t.canvas)return void function(t,e,n){let i="width"in n?n.width:t.canvas.clientWidth,r="height"in n?n.height:t.canvas.clientHeight;(!i||!r)&&(Nw.log(1,"Canvas clientWidth/clientHeight is 0")(),e=1,i=t.canvas.width||1,r=t.canvas.height||1),t.luma=t.luma||{},t.luma.canvasSizeInfo=t.luma.canvasSizeInfo||{};const s=t.luma.canvasSizeInfo;if(s.clientWidth!==i||s.clientHeight!==r||s.devicePixelRatio!==e){let n=e;const s=Math.floor(i*n),o=Math.floor(r*n);t.canvas.width=s,t.canvas.height=o,(t.drawingBufferWidth!==s||t.drawingBufferHeight!==o)&&(Nw.warn("Device pixel ratio clamped")(),n=Math.min(t.drawingBufferWidth/i,t.drawingBufferHeight/r),t.canvas.width=Math.floor(i*n),t.canvas.height=Math.floor(r*n)),Object.assign(t.luma.canvasSizeInfo,{clientWidth:i,clientHeight:r,devicePixelRatio:e})}}(t,function(t){const e="undefined"==typeof window?1:window.devicePixelRatio||1;return Number.isFinite(t)?t<=0?1:t:t?e:1}(e.useDevicePixels),e);const n=t.getExtension("STACKGL_resize_drawingbuffer");n&&"width"in e&&"height"in e&&n.resize(e.width,e.height)}(this.gl,{useDevicePixels:this.useDevicePixels})}_createFramebuffer(){this.props.createFramebuffer&&(this.framebuffer=new SS(this.gl))}_resizeFramebuffer(){this.framebuffer&&this.framebuffer.resize({width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight})}_beginTimers(){this.frameRate.timeEnd(),this.frameRate.timeStart(),this._gpuTimeQuery&&this._gpuTimeQuery.isResultAvailable()&&!this._gpuTimeQuery.isTimerDisjoint()&&this.stats.get("GPU Time").addTime(this._gpuTimeQuery.getTimerMilliseconds()),this._gpuTimeQuery&&this._gpuTimeQuery.beginTimeElapsedQuery(),this.cpuTime.timeStart()}_endTimers(){this.cpuTime.timeEnd(),this._gpuTimeQuery&&this._gpuTimeQuery.end()}_startEventHandling(){const{canvas:t}=this.gl;t&&(t.addEventListener("mousemove",this._onMousemove),t.addEventListener("mouseleave",this._onMouseleave))}_onMousemove(t){this.animationProps._mousePosition=[t.offsetX,t.offsetY]}_onMouseleave(t){this.animationProps._mousePosition=null}}var cD=n(11524),uD=n.n(cD);const hD={mousedown:1,mousemove:2,mouseup:4};(function(t){const e=t.prototype.handler;t.prototype.handler=function(t){const n=this.store;t.button>0&&"pointerdown"===t.type&&(function(e,n){for(let i=0;i=0&&(this.pressed=!0),2&e&&0===t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:"mouse",srcEvent:t}))}}(uD().MouseInput);const dD=uD().Manager;var pD=uD();const fD=pD?[[pD.Pan,{event:"tripan",pointers:3,threshold:0,enable:!1}],[pD.Rotate,{enable:!1}],[pD.Pinch,{enable:!1}],[pD.Swipe,{enable:!1}],[pD.Pan,{threshold:0,enable:!1}],[pD.Press,{enable:!1}],[pD.Tap,{event:"doubletap",taps:2,enable:!1}],[pD.Tap,{event:"anytap",enable:!1}],[pD.Tap,{enable:!1}]]:null,gD={tripan:["rotate","pinch","pan"],rotate:["pinch"],pinch:["pan"],pan:["press","doubletap","anytap","tap"],doubletap:["anytap"],anytap:["tap"]},mD={doubletap:["tap"]},bD={pointerdown:"pointerdown",pointermove:"pointermove",pointerup:"pointerup",touchstart:"pointerdown",touchmove:"pointermove",touchend:"pointerup",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup"},yD={KEY_EVENTS:["keydown","keyup"],MOUSE_EVENTS:["mousedown","mousemove","mouseup","mouseover","mouseout","mouseleave"],WHEEL_EVENTS:["wheel","mousewheel"]},vD={tap:"tap",anytap:"anytap",doubletap:"doubletap",press:"press",pinch:"pinch",pinchin:"pinch",pinchout:"pinch",pinchstart:"pinch",pinchmove:"pinch",pinchend:"pinch",pinchcancel:"pinch",rotate:"rotate",rotatestart:"rotate",rotatemove:"rotate",rotateend:"rotate",rotatecancel:"rotate",tripan:"tripan",tripanstart:"tripan",tripanmove:"tripan",tripanup:"tripan",tripandown:"tripan",tripanleft:"tripan",tripanright:"tripan",tripanend:"tripan",tripancancel:"tripan",pan:"pan",panstart:"pan",panmove:"pan",panup:"pan",pandown:"pan",panleft:"pan",panright:"pan",panend:"pan",pancancel:"pan",swipe:"swipe",swipeleft:"swipe",swiperight:"swipe",swipeup:"swipe",swipedown:"swipe"},_D={click:"tap",anyclick:"anytap",dblclick:"doubletap",mousedown:"pointerdown",mousemove:"pointermove",mouseup:"pointerup",mouseover:"pointerover",mouseout:"pointerout",mouseleave:"pointerleave"},wD="undefined"!=typeof navigator&&navigator.userAgent?navigator.userAgent.toLowerCase():"",xD="undefined"!=typeof window?window:global;"undefined"!=typeof global?global:window,"undefined"!=typeof document&&document;let SD=!1;try{const t={get passive(){return SD=!0,!0}};xD.addEventListener("test",t,t),xD.removeEventListener("test",t,t)}catch(m){}const ED=-1!==wD.indexOf("firefox"),{WHEEL_EVENTS:CD}=yD,OD=4.000244140625;class TD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.events=CD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent,!!SD&&{passive:!1}))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){"wheel"===t&&(this.options.enable=e)}handleEvent(t){if(!this.options.enable)return;let e=t.deltaY;xD.WheelEvent&&(ED&&t.deltaMode===xD.WheelEvent.DOM_DELTA_PIXEL&&(e/=xD.devicePixelRatio),t.deltaMode===xD.WheelEvent.DOM_DELTA_LINE&&(e*=40));const n={x:t.clientX,y:t.clientY};0!==e&&e%OD==0&&(e=Math.floor(e/OD)),t.shiftKey&&e&&(e*=.25),this._onWheel(t,-e,n)}_onWheel(t,e,n){this.callback({type:"wheel",center:n,delta:e,srcEvent:t,pointerType:"mouse",target:t.target})}}const{MOUSE_EVENTS:kD}=yD,AD="pointermove",PD="pointerover",MD="pointerout",ID="pointerleave";class DD{constructor(t,e,n={}){this.element=t,this.callback=e,this.pressed=!1,this.options=Object.assign({enable:!0},n),this.enableMoveEvent=this.options.enable,this.enableLeaveEvent=this.options.enable,this.enableOutEvent=this.options.enable,this.enableOverEvent=this.options.enable,this.events=kD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===AD&&(this.enableMoveEvent=e),t===PD&&(this.enableOverEvent=e),t===MD&&(this.enableOutEvent=e),t===ID&&(this.enableLeaveEvent=e)}handleEvent(t){this.handleOverEvent(t),this.handleOutEvent(t),this.handleLeaveEvent(t),this.handleMoveEvent(t)}handleOverEvent(t){this.enableOverEvent&&"mouseover"===t.type&&this.callback({type:PD,srcEvent:t,pointerType:"mouse",target:t.target})}handleOutEvent(t){this.enableOutEvent&&"mouseout"===t.type&&this.callback({type:MD,srcEvent:t,pointerType:"mouse",target:t.target})}handleLeaveEvent(t){this.enableLeaveEvent&&"mouseleave"===t.type&&this.callback({type:ID,srcEvent:t,pointerType:"mouse",target:t.target})}handleMoveEvent(t){if(this.enableMoveEvent)switch(t.type){case"mousedown":t.button>=0&&(this.pressed=!0);break;case"mousemove":0===t.which&&(this.pressed=!1),this.pressed||this.callback({type:AD,srcEvent:t,pointerType:"mouse",target:t.target});break;case"mouseup":this.pressed=!1}}}const{KEY_EVENTS:RD}=yD,ND="keydown";class LD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.enableDownEvent=this.options.enable,this.enableUpEvent=this.options.enable,this.events=RD.concat(n.events||[]),this.handleEvent=this.handleEvent.bind(this),t.tabIndex=n.tabIndex||0,t.style.outline="none",this.events.forEach(e=>t.addEventListener(e,this.handleEvent))}destroy(){this.events.forEach(t=>this.element.removeEventListener(t,this.handleEvent))}enableEventType(t,e){t===ND&&(this.enableDownEvent=e),"keyup"===t&&(this.enableUpEvent=e)}handleEvent(t){const e=t.target||t.srcElement;"INPUT"===e.tagName&&"text"===e.type||"TEXTAREA"===e.tagName||(this.enableDownEvent&&"keydown"===t.type&&this.callback({type:ND,srcEvent:t,key:t.key,target:t.target}),this.enableUpEvent&&"keyup"===t.type&&this.callback({type:"keyup",srcEvent:t,key:t.key,target:t.target}))}}const jD="contextmenu";class FD{constructor(t,e,n={}){this.element=t,this.callback=e,this.options=Object.assign({enable:!0},n),this.handleEvent=this.handleEvent.bind(this),t.addEventListener("contextmenu",this.handleEvent)}destroy(){this.element.removeEventListener("contextmenu",this.handleEvent)}enableEventType(t,e){t===jD&&(this.options.enable=e)}handleEvent(t){!this.options.enable||this.callback({type:jD,center:{x:t.clientX,y:t.clientY},srcEvent:t,pointerType:"mouse",target:t.target})}}const BD={pointerdown:1,pointermove:2,pointerup:4,mousedown:1,mousemove:2,mouseup:4},VD={srcElement:"root",priority:0};class zD{constructor(t){this.eventManager=t,this.handlers=[],this.handlersByElement=new Map,this.handleEvent=this.handleEvent.bind(this),this._active=!1}isEmpty(){return!this._active}add(t,e,n,i=!1,r=!1){const{handlers:s,handlersByElement:o}=this;n&&("object"!=typeof n||n.addEventListener)&&(n={srcElement:n}),n=n?Object.assign({},VD,n):VD;let a=o.get(n.srcElement);a||(a=[],o.set(n.srcElement,a));const l={type:t,handler:e,srcElement:n.srcElement,priority:n.priority};i&&(l.once=!0),r&&(l.passive=!0),s.push(l),this._active=this._active||!l.passive;let c=a.length-1;for(;c>=0&&!(a[c].priority>=l.priority);)c--;a.splice(c+1,0,l)}remove(t,e){const{handlers:n,handlersByElement:i}=this;for(let r=n.length-1;r>=0;r--){const s=n[r];if(s.type===t&&s.handler===e){n.splice(r,1);const t=i.get(s.srcElement);t.splice(t.indexOf(s),1),0===t.length&&i.delete(s.srcElement)}}this._active=n.some(t=>!t.passive)}handleEvent(t){if(this.isEmpty())return;const e=this._normalizeEvent(t);let n=t.srcEvent.target;for(;n&&n!==e.rootElement;){if(this._emit(e,n),e.handled)return;n=n.parentNode}this._emit(e,"root")}_emit(t,e){const n=this.handlersByElement.get(e);if(n){let e=!1;const i=()=>{t.handled=!0},r=()=>{t.handled=!0,e=!0},s=[];for(let o=0;o{const e=this.manager.get(t);e&&gD[t].forEach(t=>{e.recognizeWith(t)})});for(const n in e.recognizerOptions){const t=this.manager.get(n);if(t){const i=e.recognizerOptions[n];delete i.enable,t.set(i)}}this.wheelInput=new TD(t,this._onOtherEvent,{enable:!1}),this.moveInput=new DD(t,this._onOtherEvent,{enable:!1}),this.keyInput=new LD(t,this._onOtherEvent,{enable:!1,tabIndex:e.tabIndex}),this.contextmenuInput=new FD(t,this._onOtherEvent,{enable:!1});for(const[n,i]of this.events)i.isEmpty()||(this._toggleRecognizer(i.recognizerName,!0),this.manager.on(n,i.handleEvent))}destroy(){this.element&&(this.wheelInput.destroy(),this.moveInput.destroy(),this.keyInput.destroy(),this.contextmenuInput.destroy(),this.manager.destroy(),this.wheelInput=null,this.moveInput=null,this.keyInput=null,this.contextmenuInput=null,this.manager=null,this.element=null)}on(t,e,n){this._addEventHandler(t,e,n,!1)}once(t,e,n){this._addEventHandler(t,e,n,!0)}watch(t,e,n){this._addEventHandler(t,e,n,!1,!0)}off(t,e){this._removeEventHandler(t,e)}_toggleRecognizer(t,e){const{manager:n}=this;if(!n)return;const i=n.get(t);if(i&&i.options.enable!==e){i.set({enable:e});const r=mD[t];r&&!this.options.recognizers&&r.forEach(r=>{const s=n.get(r);e?(s.requireFailure(t),i.dropRequireFailure(r)):s.dropRequireFailure(t)})}this.wheelInput.enableEventType(t,e),this.moveInput.enableEventType(t,e),this.keyInput.enableEventType(t,e),this.contextmenuInput.enableEventType(t,e)}_addEventHandler(t,e,n,i,r){if("string"!=typeof t){n=e;for(const e in t)this._addEventHandler(e,t[e],n,i,r);return}const{manager:s,events:o}=this,a=_D[t]||t;let l=o.get(a);l||(l=new zD(this),o.set(a,l),l.recognizerName=vD[a]||a,s&&s.on(a,l.handleEvent)),l.add(t,e,n,i,r),l.isEmpty()||this._toggleRecognizer(l.recognizerName,!0)}_removeEventHandler(t,e){if("string"!=typeof t){for(const e in t)this._removeEventHandler(e,t[e]);return}const{events:n}=this,i=n.get(_D[t]||t);if(i&&(i.remove(t,e),i.isEmpty())){const{recognizerName:t}=i;let e=!1;for(const i of n.values())if(i.recognizerName===t&&!i.isEmpty()){e=!0;break}e||this._toggleRecognizer(t,!1)}}_onBasicInput(t){const{srcEvent:e}=t,n=bD[e.type];n&&this.manager.emit(n,t)}_onOtherEvent(t){this.manager.emit(t.type,t)}}function $D(){}const GD={id:"",width:"100%",height:"100%",pickingRadius:0,layerFilter:null,glOptions:{},gl:null,layers:[],effects:[],views:null,controller:null,useDevicePixels:!0,touchAction:"none",eventRecognizerOptions:{},_framebuffer:null,_animate:!1,_pickable:!0,_typedArrayManagerProps:{},onWebGLInitialized:$D,onResize:$D,onViewStateChange:$D,onInteractionStateChange:$D,onBeforeRender:$D,onAfterRender:$D,onLoad:$D,onError:(t,e)=>Mw.error(t)(),_onMetrics:null,getCursor:({isDragging:t})=>t?"grabbing":"grab",debug:!1,drawPickingColors:!1};class WD{constructor(t){t=wt(wt({},GD),t),this.props={},this.width=0,this.height=0,this.viewManager=null,this.layerManager=null,this.effectManager=null,this.deckRenderer=null,this.deckPicker=null,this._needsRedraw=!0,this._pickRequest={},this._lastPointerDownInfo=null,this.viewState=null,this.interactiveState={isHovering:!1,isDragging:!1},this._onEvent=this._onEvent.bind(this),this._onPointerDown=this._onPointerDown.bind(this),this._onPointerMove=this._onPointerMove.bind(this),t.viewState&&t.initialViewState&&Mw.warn("View state tracking is disabled. Use either `initialViewState` for auto update or `viewState` for manual update.")(),"IE"===(0,zw.qs)()&&Mw.warn("IE 11 support will be deprecated in v8.0")(),t.gl||"undefined"!=typeof document&&(this.canvas=this._createCanvas(t)),this.animationLoop=this._createAnimationLoop(t),this.stats=new Mx({id:"deck.gl"}),this.metrics={fps:0,setPropsTime:0,updateAttributesTime:0,framesRedrawn:0,pickTime:0,pickCount:0,gpuTime:0,gpuTimePerFrame:0,cpuTime:0,cpuTimePerFrame:0,bufferMemory:0,textureMemory:0,renderbufferMemory:0,gpuMemory:0},this._metricsCounter=0,this.setProps(t),t._typedArrayManagerProps&&AS.setProps(t._typedArrayManagerProps),this.animationLoop.start()}finalize(){this.animationLoop.stop(),this.animationLoop=null,this._lastPointerDownInfo=null,this.layerManager&&(this.layerManager.finalize(),this.layerManager=null,this.viewManager.finalize(),this.viewManager=null,this.effectManager.finalize(),this.effectManager=null,this.deckRenderer.finalize(),this.deckRenderer=null,this.deckPicker.finalize(),this.deckPicker=null,this.eventManager.destroy(),this.eventManager=null,this.tooltip.remove(),this.tooltip=null),!this.props.canvas&&!this.props.gl&&this.canvas&&(this.canvas.parentElement.removeChild(this.canvas),this.canvas=null)}setProps(t){this.stats.get("setProps Time").timeStart(),"onLayerHover"in t&&Mw.removed("onLayerHover","onHover")(),"onLayerClick"in t&&Mw.removed("onLayerClick","onClick")(),t.initialViewState&&!zP(this.props.initialViewState,t.initialViewState)&&(this.viewState=t.initialViewState),Object.assign(this.props,t),this._setCanvasSize(this.props);const e=Object.create(this.props);Object.assign(e,{views:this._getViews(),width:this.width,height:this.height,viewState:this._getViewState()}),this.animationLoop.setProps(e),this.layerManager&&(this.viewManager.setProps(e),this.layerManager.activateViewport(this.getViewports()[0]),this.layerManager.setProps(e),this.effectManager.setProps(e),this.deckRenderer.setProps(e),this.deckPicker.setProps(e)),this.stats.get("setProps Time").timeEnd()}needsRedraw(t={clearRedrawFlags:!1}){if(this.props._animate)return"Deck._animate";let e=this._needsRedraw;t.clearRedrawFlags&&(this._needsRedraw=!1);const n=this.viewManager.needsRedraw(t),i=this.layerManager.needsRedraw(t),r=this.effectManager.needsRedraw(t),s=this.deckRenderer.needsRedraw(t);return e=e||n||i||r||s,e}redraw(t){if(!this.layerManager)return;const e=t||this.needsRedraw({clearRedrawFlags:!0});!e||(this.stats.get("Redraw Count").incrementCount(),this.props._customRender?this.props._customRender(e):this._drawLayers(e))}getViews(){return this.viewManager.views}getViewports(t){return this.viewManager.getViewports(t)}pickObject(t){const e=this._pick("pickObject","pickObject Time",t).result;return e.length?e[0]:null}pickMultipleObjects(t){return t.depth=t.depth||10,this._pick("pickObject","pickMultipleObjects Time",t).result}pickObjects(t){return this._pick("pickObjects","pickObjects Time",t)}_addResources(t,e=!1){for(const n in t)this.layerManager.resourceManager.add({resourceId:n,data:t[n],forceUpdate:e})}_removeResources(t){for(const e of t)this.layerManager.resourceManager.remove(e)}_pick(t,e,n){const{stats:i}=this;i.get("Pick Count").incrementCount(),i.get(e).timeStart();const r=this.deckPicker[t](wt({layers:this.layerManager.getLayers(n),views:this.viewManager.getViews(),viewports:this.getViewports(n),onViewportActive:this.layerManager.activateViewport},n));return i.get(e).timeEnd(),r}_createCanvas(t){let e=t.canvas;return"string"==typeof e&&(e=document.getElementById(e),uE(e)),e||(e=document.createElement("canvas"),e.id=t.id||"deckgl-overlay",(t.parent||document.body).appendChild(e)),Object.assign(e.style,t.style),e}_setCanvasSize(t){if(!this.canvas)return;let{width:e,height:n}=t;(e||0===e)&&(e=Number.isFinite(e)?"".concat(e,"px"):e,this.canvas.style.width=e),(n||0===n)&&(n=Number.isFinite(n)?"".concat(n,"px"):n,this.canvas.style.position="absolute",this.canvas.style.height=n)}_updateCanvasSize(){if(this._checkForCanvasSizeChange()){const{width:t,height:e}=this;this.viewManager.setProps({width:t,height:e}),this.props.onResize({width:this.width,height:this.height})}}_checkForCanvasSizeChange(){const{canvas:t}=this;if(!t)return!1;const e=t.clientWidth||t.width,n=t.clientHeight||t.height;return(e!==this.width||n!==this.height)&&(this.width=e,this.height=n,!0)}_createAnimationLoop(t){const{width:e,height:n,gl:i,glOptions:r,debug:s,onError:o,onBeforeRender:a,onAfterRender:l,useDevicePixels:c,autoResizeDrawingBuffer:u}=t;return new lD({width:e,height:n,useDevicePixels:c,autoResizeDrawingBuffer:u,autoResizeViewport:!1,gl:i,onCreateContext:t=>Tx(ii(wt(wt({},r),t),{canvas:this.canvas,debug:s,onContextLost:()=>this._onContextLost()})),onInitialize:t=>this._setGLContext(t.gl),onRender:this._onRenderFrame.bind(this),onBeforeRender:a,onAfterRender:l,onError:o})}_getViewState(){return this.props.viewState||this.viewState}_getViews(){let t=this.props.views||[new rI({id:"default-view"})];return t=Array.isArray(t)?t:[t],t.length&&this.props.controller&&(t[0].props.controller=this.props.controller),t}_onContextLost(){const{onError:t}=this.props;this.animationLoop&&t&&t(new Error("WebGL context is lost"))}_onPointerMove(t){const{_pickRequest:e}=this;if("pointerleave"===t.type)e.x=-1,e.y=-1,e.radius=0;else{if(t.leftButton||t.rightButton)return;{const n=t.offsetCenter;if(!n)return;e.x=n.x,e.y=n.y,e.radius=this.props.pickingRadius}}this.layerManager&&(this.layerManager.context.mousePosition={x:e.x,y:e.y}),e.event=t,e.mode="hover"}_pickAndCallback(){const{_pickRequest:t}=this;if(t.event){const{result:e,emptyInfo:n}=this._pick("pickObject","pickObject Time",t);this.interactiveState.isHovering=e.length>0;let i=n,r=!1;for(const s of e)i=s,r=s.layer.onHover(s,t.event);if(!r&&this.props.onHover&&this.props.onHover(i,t.event),this.props.getTooltip){const t=this.props.getTooltip(i);this.tooltip.setTooltip(t,i.x,i.y)}t.event=null}}_updateCursor(){const t=this.props.parent||this.canvas;t&&(t.style.cursor=this.props.getCursor(this.interactiveState))}_setGLContext(t){if(this.layerManager)return;this.canvas||(this.canvas=t.canvas,kx(t,{enable:!0,copyState:!0})),this.tooltip=new yI(this.canvas),yx(t,{blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthTest:!0,depthFunc:515}),this.props.onWebGLInitialized(t);const e=new qM;e.play(),this.animationLoop.attachTimeline(e),this.eventManager=new HD(this.props.parent||t.canvas,{touchAction:this.props.touchAction,recognizerOptions:this.props.eventRecognizerOptions,events:{pointerdown:this._onPointerDown,pointermove:this._onPointerMove,pointerleave:this._onPointerMove}});for(const i in Rw)this.eventManager.on(i,this._onEvent);this.viewManager=new eI({timeline:e,eventManager:this.eventManager,onViewStateChange:this._onViewStateChange.bind(this),onInteractionStateChange:this._onInteractionStateChange.bind(this),views:this._getViews(),viewState:this._getViewState(),width:this.width,height:this.height});const n=this.viewManager.getViewports()[0];this.layerManager=new tI(t,{deck:this,stats:this.stats,viewport:n,timeline:e}),this.effectManager=new oI,this.deckRenderer=new uI(t),this.deckPicker=new mI(t),this.setProps(this.props),this._updateCanvasSize(),this.props.onLoad()}_drawLayers(t,e){const{gl:n}=this.layerManager.context;yx(n,this.props.parameters),this.props.onBeforeRender({gl:n}),this.deckRenderer.renderLayers(wt({target:this.props._framebuffer,layers:this.layerManager.getLayers(),viewports:this.viewManager.getViewports(),onViewportActive:this.layerManager.activateViewport,views:this.viewManager.getViews(),pass:"screen",redrawReason:t,effects:this.effectManager.getEffects()},e)),this.props.onAfterRender({gl:n})}_onRenderFrame(t){this._getFrameStats(),this._metricsCounter++%60==0&&(this._getMetrics(),this.stats.reset(),Mw.table(4,this.metrics)(),this.props._onMetrics&&this.props._onMetrics(this.metrics)),this._updateCanvasSize(),this._updateCursor(),this.tooltip.isVisible&&this.viewManager.needsRedraw()&&this.tooltip.setTooltip(null),this.layerManager.updateLayers(),this._pickAndCallback(),this.redraw(!1),this.viewManager&&this.viewManager.updateViewStates()}_onViewStateChange(t){const e=this.props.onViewStateChange(t)||t.viewState;this.viewState&&(this.viewState=ii(wt({},this.viewState),{[t.viewId]:e}),this.props.viewState||this.viewManager&&this.viewManager.setProps({viewState:this.viewState}))}_onInteractionStateChange(t){this.interactiveState.isDragging=t.isDragging,this.props.onInteractionStateChange(t)}_onEvent(t){const e=Rw[t.type],n=t.offsetCenter;if(!e||!n)return;const i=this.layerManager.getLayers(),r=this.deckPicker.getLastPickedObject({x:n.x,y:n.y,layers:i,viewports:this.getViewports(n)},this._lastPointerDownInfo),{layer:s}=r,o=s&&(s[e.handler]||s.props[e.handler]),a=this.props[e.handler];let l=!1;o&&(l=o.call(s,r,t)),!l&&a&&a(r,t)}_onPointerDown(t){const e=t.offsetCenter;this._lastPointerDownInfo=this.pickObject({x:e.x,y:e.y,radius:this.props.pickingRadius})}_getFrameStats(){const{stats:t}=this;t.get("frameRate").timeEnd(),t.get("frameRate").timeStart();const e=this.animationLoop.stats;t.get("GPU Time").addTime(e.get("GPU Time").lastTiming),t.get("CPU Time").addTime(e.get("CPU Time").lastTiming)}_getMetrics(){const{metrics:t,stats:e}=this;t.fps=e.get("frameRate").getHz(),t.setPropsTime=e.get("setProps Time").time,t.updateAttributesTime=e.get("Update Attributes").time,t.framesRedrawn=e.get("Redraw Count").count,t.pickTime=e.get("pickObject Time").time+e.get("pickMultipleObjects Time").time+e.get("pickObjects Time").time,t.pickCount=e.get("Pick Count").count,t.gpuTime=e.get("GPU Time").time,t.cpuTime=e.get("CPU Time").time,t.gpuTimePerFrame=e.get("GPU Time").getAverageTime(),t.cpuTimePerFrame=e.get("CPU Time").getAverageTime();const n=Dx.get("Memory Usage");t.bufferMemory=n.get("Buffer Memory").count,t.textureMemory=n.get("Texture Memory").count,t.renderbufferMemory=n.get("Renderbuffer Memory").count,t.gpuMemory=n.get("GPU Memory").count}}WD.getPropTypes=function(t){return{id:t.string,width:t.oneOfType([t.number,t.string]),height:t.oneOfType([t.number,t.string]),layers:t.oneOfType([t.object,t.array]),layerFilter:t.func,views:t.oneOfType([t.object,t.array]),viewState:t.object,effects:t.arrayOf(t.instanceOf(TM)),controller:t.oneOfType([t.func,t.bool,t.object]),gl:t.object,glOptions:t.object,parameters:t.object,pickingRadius:t.number,useDevicePixels:t.oneOfType([t.bool,t.number]),touchAction:t.string,eventRecognizerOptions:t.object,onWebGLInitialized:t.func,onResize:t.func,onViewStateChange:t.func,onInteractionStateChange:t.func,onBeforeRender:t.func,onAfterRender:t.func,onLoad:t.func,onError:t.func,debug:t.bool,drawPickingColors:t.bool,_framebuffer:t.object,_animate:t.bool,_pickable:t.bool,_typedArrayManagerProps:t.object}},WD.defaultProps=GD,WD.VERSION=rD.VERSION;var qD={name:"project32",dependencies:[NM],vs:"\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset, out vec4 commonPosition\n) {\n vec3 projectedPosition = project_position(position, position64Low);\n if (project_uProjectionMode == PROJECTION_MODE_GLOBE) {\n // offset is specified as ENU\n // when in globe projection, rotate offset so that the ground alighs with the surface of the globe\n mat3 rotation = project_get_orientation_matrix(projectedPosition);\n offset = rotation * offset;\n }\n commonPosition = vec4(projectedPosition + offset, 1.0);\n return project_common_position_to_clipspace(commonPosition);\n}\n\nvec4 project_position_to_clipspace(\n vec3 position, vec3 position64Low, vec3 offset\n) {\n vec4 commonPosition;\n return project_position_to_clipspace(position, position64Low, offset, commonPosition);\n}\n"},XD="#if (defined(SHADER_TYPE_FRAGMENT) && defined(LIGHTING_FRAGMENT)) || (defined(SHADER_TYPE_VERTEX) && defined(LIGHTING_VERTEX))\n\nstruct AmbientLight {\n vec3 color;\n};\n\nstruct PointLight {\n vec3 color;\n vec3 position;\n vec3 attenuation;\n};\n\nstruct DirectionalLight {\n vec3 color;\n vec3 direction;\n};\n\nuniform AmbientLight lighting_uAmbientLight;\nuniform PointLight lighting_uPointLight[MAX_LIGHTS];\nuniform DirectionalLight lighting_uDirectionalLight[MAX_LIGHTS];\nuniform int lighting_uPointLightCount;\nuniform int lighting_uDirectionalLightCount;\n\nuniform bool lighting_uEnabled;\n\nfloat getPointLightAttenuation(PointLight pointLight, float distance) {\n return pointLight.attenuation.x\n + pointLight.attenuation.y * distance\n + pointLight.attenuation.z * distance * distance;\n}\n\n#endif\n";const YD={lightSources:{}};function KD({color:t=[0,0,0],intensity:e=1}={}){return t.map(t=>t*e/255)}const QD={name:"lights",vs:XD,fs:XD,getUniforms:function t(e=YD){if("lightSources"in e){const{ambientLight:t,pointLights:n,directionalLights:i}=e.lightSources||{};return t||n&&n.length>0||i&&i.length>0?Object.assign({},function({ambientLight:t,pointLights:e=[],directionalLights:n=[]}){const i={};return i["lighting_uAmbientLight.color"]=t?KD(t):[0,0,0],e.forEach((t,e)=>{i[`lighting_uPointLight[${e}].color`]=KD(t),i[`lighting_uPointLight[${e}].position`]=t.position,i[`lighting_uPointLight[${e}].attenuation`]=t.attenuation||[1,0,0]}),i.lighting_uPointLightCount=e.length,n.forEach((t,e)=>{i[`lighting_uDirectionalLight[${e}].color`]=KD(t),i[`lighting_uDirectionalLight[${e}].direction`]=t.direction}),i.lighting_uDirectionalLightCount=n.length,i}({ambientLight:t,pointLights:n,directionalLights:i}),{lighting_uEnabled:!0}):{lighting_uEnabled:!1}}if("lights"in e){const n={pointLights:[],directionalLights:[]};for(const t of e.lights||[])switch(t.type){case"ambient":n.ambientLight=t;break;case"directional":n.directionalLights.push(t);break;case"point":n.pointLights.push(t)}return t({lightSources:n})}return{}},defines:{MAX_LIGHTS:3}};const ZD={};const JD={name:"phong-lighting",dependencies:[QD],fs:"\nuniform float lighting_uAmbient;\nuniform float lighting_uDiffuse;\nuniform float lighting_uShininess;\nuniform vec3 lighting_uSpecularColor;\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 light_direction, vec3 view_direction, vec3 normal_worldspace, vec3 color) {\n vec3 halfway_direction = normalize(light_direction + view_direction);\n float lambertian = dot(light_direction, normal_worldspace);\n float specular = 0.0;\n if (lambertian > 0.0) {\n float specular_angle = max(dot(normal_worldspace, halfway_direction), 0.0);\n specular = pow(specular_angle, lighting_uShininess);\n }\n lambertian = max(lambertian, 0.0);\n return (lambertian * lighting_uDiffuse * surfaceColor + specular * lighting_uSpecularColor) * color;\n}\n\nvec3 lighting_getLightColor(vec3 surfaceColor, vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = surfaceColor;\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n lightColor = lighting_uAmbient * surfaceColor * lighting_uAmbientLight.color;\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n\nvec3 lighting_getSpecularLightColor(vec3 cameraPosition, vec3 position_worldspace, vec3 normal_worldspace) {\n vec3 lightColor = vec3(0, 0, 0);\n vec3 surfaceColor = vec3(0, 0, 0);\n\n if (lighting_uEnabled) {\n vec3 view_direction = normalize(cameraPosition - position_worldspace);\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uPointLightCount) {\n break;\n }\n PointLight pointLight = lighting_uPointLight[i];\n vec3 light_position_worldspace = pointLight.position;\n vec3 light_direction = normalize(light_position_worldspace - position_worldspace);\n lightColor += lighting_getLightColor(surfaceColor, light_direction, view_direction, normal_worldspace, pointLight.color);\n }\n\n for (int i = 0; i < MAX_LIGHTS; i++) {\n if (i >= lighting_uDirectionalLightCount) {\n break;\n }\n DirectionalLight directionalLight = lighting_uDirectionalLight[i];\n lightColor += lighting_getLightColor(surfaceColor, -directionalLight.direction, view_direction, normal_worldspace, directionalLight.color);\n }\n }\n return lightColor;\n}\n",defines:{LIGHTING_FRAGMENT:1},getUniforms:function(t=ZD){if(!("material"in t))return{};const{material:e}=t;return e?function(t){const{ambient:e=.35,diffuse:n=.6,shininess:i=32,specularColor:r=[30,30,30]}=t;return{lighting_uAmbient:e,lighting_uDiffuse:n,lighting_uShininess:i,lighting_uSpecularColor:r.map(t=>t/255)}}(e):{lighting_uEnabled:!1}}},tR={pickingSelectedColor:null,pickingHighlightColor:new Uint8Array([0,255,255,255]),pickingActive:!1,pickingAttribute:!1};var eR=wt({inject:{"vs:DECKGL_FILTER_COLOR":"\n picking_setPickingColor(geometry.pickingColor);\n // for picking depth values\n picking_setPickingAttribute(geometry.position.z);\n ","fs:DECKGL_FILTER_COLOR":{order:99,injection:"\n // use highlight color if this fragment belongs to the selected object.\n color = picking_filterHighlightColor(color);\n\n // use picking color if rendering to picking FBO.\n color = picking_filterPickingColor(color);\n "}}},{name:"picking",vs:"uniform bool picking_uActive;\nuniform bool picking_uAttribute;\nuniform vec3 picking_uSelectedColor;\nuniform bool picking_uSelectedColorValid;\n\nout vec4 picking_vRGBcolor_Avalid;\n\nconst float COLOR_SCALE = 1. / 255.;\n\nbool picking_isColorValid(vec3 color) {\n return dot(color, vec3(1.0)) > 0.001;\n}\n\nbool isVertexPicked(vec3 vertexColor) {\n return\n picking_uSelectedColorValid &&\n !picking_isColorValid(abs(vertexColor - picking_uSelectedColor));\n}\n\nvoid picking_setPickingColor(vec3 pickingColor) {\n if (picking_uActive) {\n picking_vRGBcolor_Avalid.a = float(picking_isColorValid(pickingColor));\n\n if (!picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = pickingColor * COLOR_SCALE;\n }\n } else {\n picking_vRGBcolor_Avalid.a = float(isVertexPicked(pickingColor));\n }\n}\n\nvoid picking_setPickingAttribute(float value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.r = value;\n }\n}\nvoid picking_setPickingAttribute(vec2 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rg = value;\n }\n}\nvoid picking_setPickingAttribute(vec3 value) {\n if (picking_uAttribute) {\n picking_vRGBcolor_Avalid.rgb = value;\n }\n}\n",fs:"uniform bool picking_uActive;\nuniform vec3 picking_uSelectedColor;\nuniform vec4 picking_uHighlightColor;\n\nin vec4 picking_vRGBcolor_Avalid;\nvec4 picking_filterHighlightColor(vec4 color) {\n if (picking_uActive) {\n return color;\n }\n bool selected = bool(picking_vRGBcolor_Avalid.a);\n\n if (selected) {\n float highLightAlpha = picking_uHighlightColor.a;\n float blendedAlpha = highLightAlpha + color.a * (1.0 - highLightAlpha);\n float highLightRatio = highLightAlpha / blendedAlpha;\n\n vec3 blendedRGB = mix(color.rgb, picking_uHighlightColor.rgb, highLightRatio);\n return vec4(blendedRGB, blendedAlpha);\n } else {\n return color;\n }\n}\nvec4 picking_filterPickingColor(vec4 color) {\n if (picking_uActive) {\n if (picking_vRGBcolor_Avalid.a == 0.0) {\n discard;\n }\n return picking_vRGBcolor_Avalid;\n }\n return color;\n}\nvec4 picking_filterColor(vec4 color) {\n vec4 highightColor = picking_filterHighlightColor(color);\n return picking_filterPickingColor(highightColor);\n}\n\n",getUniforms:function(t=tR){const e={};if(void 0!==t.pickingSelectedColor)if(t.pickingSelectedColor){const n=t.pickingSelectedColor.slice(0,3);e.picking_uSelectedColorValid=1,e.picking_uSelectedColor=n}else e.picking_uSelectedColorValid=0;if(t.pickingHighlightColor){const n=Array.from(t.pickingHighlightColor,t=>t/255);Number.isFinite(n[3])||(n[3]=1),e.picking_uHighlightColor=n}return void 0!==t.pickingActive&&(e.picking_uActive=Boolean(t.pickingActive),e.picking_uAttribute=Boolean(t.pickingAttribute)),e}});const nR={POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6};class iR{static get DRAW_MODE(){return nR}constructor(t={}){const{id:e=Fx("geometry"),drawMode:n=nR.TRIANGLES,attributes:i={},indices:r=null,vertexCount:s=null}=t;this.id=e,this.drawMode=0|n,this.attributes={},this.userData={},this._setAttributes(i,r),this.vertexCount=s||this._calculateVertexCount(this.attributes,this.indices)}get mode(){return this.drawMode}getVertexCount(){return this.vertexCount}getAttributes(){return this.indices?wt({indices:this.indices},this.attributes):this.attributes}_print(t){return`Geometry ${this.id} attribute ${t}`}_setAttributes(t,e){e&&(this.indices=ArrayBuffer.isView(e)?{value:e,size:1}:e);for(const n in t){let e=t[n];e=ArrayBuffer.isView(e)?{value:e}:e,Rx(ArrayBuffer.isView(e.value),`${this._print(n)}: must be typed array or object with value as typed array`),("POSITION"===n||"positions"===n)&&!e.size&&(e.size=3),"indices"===n?(Rx(!this.indices),this.indices=e):this.attributes[n]=e}return this.indices&&void 0!==this.indices.isIndexed&&(this.indices=Object.assign({},this.indices),delete this.indices.isIndexed),this}_calculateVertexCount(t,e){if(e)return e.value.length;let n=1/0;for(const i in t){const e=t[i],{value:r,size:s,constant:o}=e;!o&&r&&s>=1&&(n=Math.min(n,r.length/s))}return Rx(Number.isFinite(n)),n}}const rR=Math.PI/180,sR=new Float32Array(16),oR=new Float32Array(12);function aR(t,e,n){const i=e[0]*rR,r=e[1]*rR,s=e[2]*rR,o=Math.sin(s),a=Math.sin(i),l=Math.sin(r),c=Math.cos(s),u=Math.cos(i),h=Math.cos(r),d=n[0],p=n[1],f=n[2];t[0]=d*h*u,t[1]=d*l*u,t[2]=d*-a,t[3]=p*(-l*c+h*a*o),t[4]=p*(h*c+l*a*o),t[5]=p*u*o,t[6]=f*(l*o+h*a*c),t[7]=f*(-h*o+l*a*c),t[8]=f*u*c}function lR(t){return t[0]=t[0],t[1]=t[1],t[2]=t[2],t[3]=t[4],t[4]=t[5],t[5]=t[6],t[6]=t[8],t[7]=t[9],t[8]=t[10],t[9]=t[12],t[10]=t[13],t[11]=t[14],t.subarray(0,12)}const cR={size:12,accessor:["getOrientation","getScale","getTranslation","getTransformMatrix"],shaderAttributes:{instanceModelMatrix__LOCATION_0:{size:3,elementOffset:0},instanceModelMatrix__LOCATION_1:{size:3,elementOffset:3},instanceModelMatrix__LOCATION_2:{size:3,elementOffset:6},instanceTranslation:{size:3,elementOffset:9}},update(t,{startRow:e,endRow:n}){const{data:i,getOrientation:r,getScale:s,getTranslation:o,getTransformMatrix:a}=this.props,l=Array.isArray(a),c=l&&16===a.length,u=Array.isArray(s),h=Array.isArray(r),d=Array.isArray(o),p=c||!l&&Boolean(a(i[0]));t.constant=p?c:h&&u&&d;const f=t.value;if(t.constant){let e;p?(sR.set(a),e=lR(sR)):(e=oR,aR(e,r,s),e.set(o,9)),t.value=new Float32Array(e)}else{let l=e*t.size;const{iterable:g,objectInfo:m}=pE(i,e,n);for(const t of g){let e;m.index++,p?(sR.set(c?a:a(t,m)),e=lR(sR)):(e=oR,aR(e,h?r:r(t,m),u?s:s(t,m)),e.set(d?o:o(t,m),9)),f[l++]=e[0],f[l++]=e[1],f[l++]=e[2],f[l++]=e[3],f[l++]=e[4],f[l++]=e[5],f[l++]=e[6],f[l++]=e[7],f[l++]=e[8],f[l++]=e[9],f[l++]=e[10],f[l++]=e[11]}}}};function uR(t,e){return e===Iw.CARTESIAN||e===Iw.METER_OFFSETS||e===Iw.DEFAULT&&!t.isGeospatial}function hR(t,e){(t.COLOR_0||t.colors)&&e||(t.colors={constant:!0,value:new Float32Array([1,1,1])}),Mw.assert(t.positions||t.POSITION,'no "postions" or "POSITION" attribute in mesh')}function dR(t,e){if(t.attributes)return hR(t.attributes,e),t instanceof iR?t:new iR(t);if(t.positions||t.POSITION)return hR(t,e),new iR({attributes:t});throw Error("Invalid mesh")}const pR={mesh:{value:null,type:"object",async:!0},texture:{type:"image",value:null,async:!0},sizeScale:{type:"number",value:1,min:0},_useMeshColors:{type:"boolean",value:!1},_instanced:!0,wireframe:!1,material:!0,getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:[0,0,0,255]},getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]}};let fR=(()=>{class t extends LP{getShaders(){const t=!Fw(this.context.gl),e={};return CS(this.context.gl,"GLSL_DERIVATIVES")&&(e.DERIVATIVES_AVAILABLE=1),super.getShaders({vs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-vs\nuniform float sizeScale;\nuniform bool composeModelMatrix;\nin vec3 positions;\nin vec3 normals;\nin vec3 colors;\nin vec2 texCoords;\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nout vec2 vTexCoord;\nout vec3 cameraPosition;\nout vec3 normals_commonspace;\nout vec4 position_commonspace;\nout vec4 vColor;\n\nvoid main(void) {\n geometry.worldPosition = instancePositions;\n geometry.uv = texCoords;\n geometry.pickingColor = instancePickingColors;\n\n vTexCoord = texCoords;\n cameraPosition = project_uCameraPosition;\n normals_commonspace = project_normal(instanceModelMatrix * normals);\n vColor = vec4(colors * instanceColors.rgb, instanceColors.a);\n geometry.normal = normals_commonspace;\n\n vec3 pos = (instanceModelMatrix * positions) * sizeScale + instanceTranslation;\n\n if (composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), position_commonspace);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, position_commonspace);\n }\n\n geometry.position = position_commonspace;\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\n#define SHADER_NAME simple-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\nuniform sampler2D sampler;\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n\n vec3 normal;\n if (flatShading) {\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec4 color = hasTexture ? texture(sampler, vTexCoord) : vColor;\n vec3 lightColor = lighting_getLightColor(color.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, color.a * opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n",modules:[qD,JD,eR],transpileToGLSL100:t,defines:e})}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{transition:!0,type:5130,fp64:this.use64bitPositions(),size:3,accessor:"getPosition"},instanceColors:{type:5121,transition:!0,size:this.props.colorFormat.length,normalized:!0,accessor:"getColor",defaultValue:[0,0,0,255]},instanceModelMatrix:cR}),this.setState({emptyTexture:new lS(this.context.gl,{data:new Uint8Array(4),width:1,height:1})})}updateState({props:t,oldProps:e,changeFlags:n}){if(super.updateState({props:t,oldProps:e,changeFlags:n}),t.mesh!==e.mesh||n.extensionsChanged){var i;if(null===(i=this.state.model)||void 0===i||i.delete(),t.mesh){this.state.model=this.getModel(t.mesh);const e=t.mesh.attributes||t.mesh;this.setState({hasNormals:Boolean(e.NORMAL||e.normals)})}this.getAttributeManager().invalidateAll()}t.texture!==e.texture&&this.setTexture(t.texture),this.state.model&&this.state.model.setDrawMode(this.props.wireframe?3:4)}finalizeState(){super.finalizeState(),this.state.emptyTexture.delete()}draw({uniforms:t}){if(!this.state.model)return;const{viewport:e}=this.context,{sizeScale:n,coordinateSystem:i,_instanced:r}=this.props;this.state.model.setUniforms(t).setUniforms({sizeScale:n,composeModelMatrix:!r||uR(e,i),flatShading:!this.state.hasNormals}).draw()}getModel(t){const e=new xO(this.context.gl,ii(wt({},this.getShaders()),{id:this.props.id,geometry:dR(t,this.props._useMeshColors),isInstanced:!0})),{texture:n}=this.props,{emptyTexture:i}=this.state;return e.setUniforms({sampler:n||i,hasTexture:Boolean(n)}),e}setTexture(t){const{emptyTexture:e,model:n}=this.state;null==n||n.setUniforms({sampler:t||e,hasTexture:Boolean(t)})}}return t.layerName="SimpleMeshLayer",t.defaultProps=pR,t})();const gR={name:"pbr",vs:"uniform mat4 u_MVPMatrix;\nuniform mat4 u_ModelMatrix;\nuniform mat4 u_NormalMatrix;\n\nvarying vec3 pbr_vPosition;\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n# ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n# else\nvarying vec3 pbr_vNormal;\n# endif\n#endif\n\nvoid pbr_setPositionNormalTangentUV(vec4 position, vec4 normal, vec4 tangent, vec2 uv)\n{\n vec4 pos = u_ModelMatrix * position;\n pbr_vPosition = vec3(pos.xyz) / pos.w;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\n vec3 normalW = normalize(vec3(u_NormalMatrix * vec4(normal.xyz, 0.0)));\n vec3 tangentW = normalize(vec3(u_ModelMatrix * vec4(tangent.xyz, 0.0)));\n vec3 bitangentW = cross(normalW, tangentW) * tangent.w;\n pbr_vTBN = mat3(tangentW, bitangentW, normalW);\n#else\n pbr_vNormal = normalize(vec3(u_ModelMatrix * vec4(normal.xyz, 0.0)));\n#endif\n#endif\n\n#ifdef HAS_UV\n pbr_vUV = uv;\n#else\n pbr_vUV = vec2(0.,0.);\n#endif\n}\n",fs:"#if defined(USE_TEX_LOD) && !defined(FEATURE_GLSL_TEXTURE_LOD)\n# error PBR fragment shader: Texture LOD is not available\n#endif\n\n#if !defined(HAS_TANGENTS) && !defined(FEATURE_GLSL_DERIVATIVES)\n# error PBR fragment shader: Derivatives are not available\n#endif\n\n\n#if (__VERSION__ < 300)\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL1COND; INCR)\n#else\n #define SMART_FOR(INIT, WEBGL1COND, WEBGL2COND, INCR) for (INIT; WEBGL2COND; INCR)\n#endif\n\nprecision highp float;\n\nuniform bool pbr_uUnlit;\n\n#ifdef USE_IBL\nuniform samplerCube u_DiffuseEnvSampler;\nuniform samplerCube u_SpecularEnvSampler;\nuniform sampler2D u_brdfLUT;\nuniform vec2 u_ScaleIBLAmbient;\n#endif\n\n#ifdef HAS_BASECOLORMAP\nuniform sampler2D u_BaseColorSampler;\n#endif\n#ifdef HAS_NORMALMAP\nuniform sampler2D u_NormalSampler;\nuniform float u_NormalScale;\n#endif\n#ifdef HAS_EMISSIVEMAP\nuniform sampler2D u_EmissiveSampler;\nuniform vec3 u_EmissiveFactor;\n#endif\n#ifdef HAS_METALROUGHNESSMAP\nuniform sampler2D u_MetallicRoughnessSampler;\n#endif\n#ifdef HAS_OCCLUSIONMAP\nuniform sampler2D u_OcclusionSampler;\nuniform float u_OcclusionStrength;\n#endif\n\n#ifdef ALPHA_CUTOFF\nuniform float u_AlphaCutoff;\n#endif\n\nuniform vec2 u_MetallicRoughnessValues;\nuniform vec4 u_BaseColorFactor;\n\nuniform vec3 u_Camera;\n#ifdef PBR_DEBUG\nuniform vec4 u_ScaleDiffBaseMR;\nuniform vec4 u_ScaleFGDSpec;\n#endif\n\nvarying vec3 pbr_vPosition;\n\nvarying vec2 pbr_vUV;\n\n#ifdef HAS_NORMALS\n#ifdef HAS_TANGENTS\nvarying mat3 pbr_vTBN;\n#else\nvarying vec3 pbr_vNormal;\n#endif\n#endif\n\n\nstruct PBRInfo\n{\n float NdotL;\n float NdotV;\n float NdotH;\n float LdotH;\n float VdotH;\n float perceptualRoughness;\n float metalness;\n vec3 reflectance0;\n vec3 reflectance90;\n float alphaRoughness;\n vec3 diffuseColor;\n vec3 specularColor;\n vec3 n;\n vec3 v;\n};\n\nconst float M_PI = 3.141592653589793;\nconst float c_MinRoughness = 0.04;\n\nvec4 SRGBtoLINEAR(vec4 srgbIn)\n{\n#ifdef MANUAL_SRGB\n#ifdef SRGB_FAST_APPROXIMATION\n vec3 linOut = pow(srgbIn.xyz,vec3(2.2));\n#else\n vec3 bLess = step(vec3(0.04045),srgbIn.xyz);\n vec3 linOut = mix( srgbIn.xyz/vec3(12.92), pow((srgbIn.xyz+vec3(0.055))/vec3(1.055),vec3(2.4)), bLess );\n#endif\n return vec4(linOut,srgbIn.w);;\n#else\n return srgbIn;\n#endif\n}\n\nvec3 getNormal()\n{\n#ifndef HAS_TANGENTS\n vec3 pos_dx = dFdx(pbr_vPosition);\n vec3 pos_dy = dFdy(pbr_vPosition);\n vec3 tex_dx = dFdx(vec3(pbr_vUV, 0.0));\n vec3 tex_dy = dFdy(vec3(pbr_vUV, 0.0));\n vec3 t = (tex_dy.t * pos_dx - tex_dx.t * pos_dy) / (tex_dx.s * tex_dy.t - tex_dy.s * tex_dx.t);\n\n#ifdef HAS_NORMALS\n vec3 ng = normalize(pbr_vNormal);\n#else\n vec3 ng = cross(pos_dx, pos_dy);\n#endif\n\n t = normalize(t - ng * dot(ng, t));\n vec3 b = normalize(cross(ng, t));\n mat3 tbn = mat3(t, b, ng);\n#else\n mat3 tbn = pbr_vTBN;\n#endif\n\n#ifdef HAS_NORMALMAP\n vec3 n = texture2D(u_NormalSampler, pbr_vUV).rgb;\n n = normalize(tbn * ((2.0 * n - 1.0) * vec3(u_NormalScale, u_NormalScale, 1.0)));\n#else\n vec3 n = normalize(tbn[2].xyz);\n#endif\n\n return n;\n}\n\n\n#ifdef USE_IBL\nvec3 getIBLContribution(PBRInfo pbrInputs, vec3 n, vec3 reflection)\n{\n float mipCount = 9.0;\n float lod = (pbrInputs.perceptualRoughness * mipCount);\n vec3 brdf = SRGBtoLINEAR(texture2D(u_brdfLUT,\n vec2(pbrInputs.NdotV, 1.0 - pbrInputs.perceptualRoughness))).rgb;\n vec3 diffuseLight = SRGBtoLINEAR(textureCube(u_DiffuseEnvSampler, n)).rgb;\n\n#ifdef USE_TEX_LOD\n vec3 specularLight = SRGBtoLINEAR(textureCubeLod(u_SpecularEnvSampler, reflection, lod)).rgb;\n#else\n vec3 specularLight = SRGBtoLINEAR(textureCube(u_SpecularEnvSampler, reflection)).rgb;\n#endif\n\n vec3 diffuse = diffuseLight * pbrInputs.diffuseColor;\n vec3 specular = specularLight * (pbrInputs.specularColor * brdf.x + brdf.y);\n diffuse *= u_ScaleIBLAmbient.x;\n specular *= u_ScaleIBLAmbient.y;\n\n return diffuse + specular;\n}\n#endif\n\n\nvec3 diffuse(PBRInfo pbrInputs)\n{\n return pbrInputs.diffuseColor / M_PI;\n}\n\nvec3 specularReflection(PBRInfo pbrInputs)\n{\n return pbrInputs.reflectance0 +\n (pbrInputs.reflectance90 - pbrInputs.reflectance0) *\n pow(clamp(1.0 - pbrInputs.VdotH, 0.0, 1.0), 5.0);\n}\n\n\n\nfloat geometricOcclusion(PBRInfo pbrInputs)\n{\n float NdotL = pbrInputs.NdotL;\n float NdotV = pbrInputs.NdotV;\n float r = pbrInputs.alphaRoughness;\n\n float attenuationL = 2.0 * NdotL / (NdotL + sqrt(r * r + (1.0 - r * r) * (NdotL * NdotL)));\n float attenuationV = 2.0 * NdotV / (NdotV + sqrt(r * r + (1.0 - r * r) * (NdotV * NdotV)));\n return attenuationL * attenuationV;\n}\n\n\n\n\n\nfloat microfacetDistribution(PBRInfo pbrInputs)\n{\n float roughnessSq = pbrInputs.alphaRoughness * pbrInputs.alphaRoughness;\n float f = (pbrInputs.NdotH * roughnessSq - pbrInputs.NdotH) * pbrInputs.NdotH + 1.0;\n return roughnessSq / (M_PI * f * f);\n}\n\nvoid PBRInfo_setAmbientLight(inout PBRInfo pbrInputs) {\n pbrInputs.NdotL = 1.0;\n pbrInputs.NdotH = 0.0;\n pbrInputs.LdotH = 0.0;\n pbrInputs.VdotH = 1.0;\n}\n\nvoid PBRInfo_setDirectionalLight(inout PBRInfo pbrInputs, vec3 lightDirection) {\n vec3 n = pbrInputs.n;\n vec3 v = pbrInputs.v;\n vec3 l = normalize(lightDirection);\n vec3 h = normalize(l+v);\n\n pbrInputs.NdotL = clamp(dot(n, l), 0.001, 1.0);\n pbrInputs.NdotH = clamp(dot(n, h), 0.0, 1.0);\n pbrInputs.LdotH = clamp(dot(l, h), 0.0, 1.0);\n pbrInputs.VdotH = clamp(dot(v, h), 0.0, 1.0);\n}\n\nvoid PBRInfo_setPointLight(inout PBRInfo pbrInputs, PointLight pointLight) {\n vec3 light_direction = normalize(pointLight.position - pbr_vPosition);\n PBRInfo_setDirectionalLight(pbrInputs, light_direction);\n}\n\nvec3 calculateFinalColor(PBRInfo pbrInputs, vec3 lightColor) {\n vec3 F = specularReflection(pbrInputs);\n float G = geometricOcclusion(pbrInputs);\n float D = microfacetDistribution(pbrInputs);\n vec3 diffuseContrib = (1.0 - F) * diffuse(pbrInputs);\n vec3 specContrib = F * G * D / (4.0 * pbrInputs.NdotL * pbrInputs.NdotV);\n return pbrInputs.NdotL * lightColor * (diffuseContrib + specContrib);\n}\n\nvec4 pbr_filterColor(vec4 colorUnused)\n{\n#ifdef HAS_BASECOLORMAP\n vec4 baseColor = SRGBtoLINEAR(texture2D(u_BaseColorSampler, pbr_vUV)) * u_BaseColorFactor;\n#else\n vec4 baseColor = u_BaseColorFactor;\n#endif\n\n#ifdef ALPHA_CUTOFF\n if (baseColor.a < u_AlphaCutoff) {\n discard;\n }\n#endif\n\n vec3 color = vec3(0, 0, 0);\n\n if(pbr_uUnlit){\n color.rgb = baseColor.rgb;\n }\n else{\n\n\n float perceptualRoughness = u_MetallicRoughnessValues.y;\n float metallic = u_MetallicRoughnessValues.x;\n#ifdef HAS_METALROUGHNESSMAP\n\n vec4 mrSample = texture2D(u_MetallicRoughnessSampler, pbr_vUV);\n perceptualRoughness = mrSample.g * perceptualRoughness;\n metallic = mrSample.b * metallic;\n#endif\n perceptualRoughness = clamp(perceptualRoughness, c_MinRoughness, 1.0);\n metallic = clamp(metallic, 0.0, 1.0);\n\n float alphaRoughness = perceptualRoughness * perceptualRoughness;\n\n vec3 f0 = vec3(0.04);\n vec3 diffuseColor = baseColor.rgb * (vec3(1.0) - f0);\n diffuseColor *= 1.0 - metallic;\n vec3 specularColor = mix(f0, baseColor.rgb, metallic);\n float reflectance = max(max(specularColor.r, specularColor.g), specularColor.b);\n\n\n\n float reflectance90 = clamp(reflectance * 25.0, 0.0, 1.0);\n vec3 specularEnvironmentR0 = specularColor.rgb;\n vec3 specularEnvironmentR90 = vec3(1.0, 1.0, 1.0) * reflectance90;\n\n vec3 n = getNormal();\n vec3 v = normalize(u_Camera - pbr_vPosition);\n\n float NdotV = clamp(abs(dot(n, v)), 0.001, 1.0);\n vec3 reflection = -normalize(reflect(v, n));\n\n PBRInfo pbrInputs = PBRInfo(\n 0.0,\n NdotV,\n 0.0,\n 0.0,\n 0.0,\n perceptualRoughness,\n metallic,\n specularEnvironmentR0,\n specularEnvironmentR90,\n alphaRoughness,\n diffuseColor,\n specularColor,\n n,\n v\n );\n\n#ifdef USE_LIGHTS\n PBRInfo_setAmbientLight(pbrInputs);\n color += calculateFinalColor(pbrInputs, lighting_uAmbientLight.color);\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uDirectionalLightCount, i++) {\n if (i < lighting_uDirectionalLightCount) {\n PBRInfo_setDirectionalLight(pbrInputs, lighting_uDirectionalLight[i].direction);\n color += calculateFinalColor(pbrInputs, lighting_uDirectionalLight[i].color);\n }\n }\n SMART_FOR(int i = 0, i < MAX_LIGHTS, i < lighting_uPointLightCount, i++) {\n if (i < lighting_uPointLightCount) {\n PBRInfo_setPointLight(pbrInputs, lighting_uPointLight[i]);\n float attenuation = getPointLightAttenuation(lighting_uPointLight[i], distance(lighting_uPointLight[i].position, pbr_vPosition));\n color += calculateFinalColor(pbrInputs, lighting_uPointLight[i].color / attenuation);\n }\n }\n#endif\n#ifdef USE_IBL\n color += getIBLContribution(pbrInputs, n, reflection);\n#endif\n#ifdef HAS_OCCLUSIONMAP\n float ao = texture2D(u_OcclusionSampler, pbr_vUV).r;\n color = mix(color, color * ao, u_OcclusionStrength);\n#endif\n\n#ifdef HAS_EMISSIVEMAP\n vec3 emissive = SRGBtoLINEAR(texture2D(u_EmissiveSampler, pbr_vUV)).rgb * u_EmissiveFactor;\n color += emissive;\n#endif\n\n#ifdef PBR_DEBUG\n\n\n\n\n\n color = mix(color, baseColor.rgb, u_ScaleDiffBaseMR.y);\n color = mix(color, vec3(metallic), u_ScaleDiffBaseMR.z);\n color = mix(color, vec3(perceptualRoughness), u_ScaleDiffBaseMR.w);\n#endif\n\n }\n\n return vec4(pow(color,vec3(1.0/2.2)), baseColor.a);\n}\n",defines:{LIGHTING_FRAGMENT:1},dependencies:[QD]};class mR{constructor(t={}){const{id:e}=t;this.id=e||Fx(this.constructor.name),this.display=!0,this.position=new nE,this.rotation=new nE,this.scale=new nE(1,1,1),this.matrix=new bT,this.userData={},this.props={},this._setScenegraphNodeProps(t)}delete(){}setProps(t){return this._setScenegraphNodeProps(t),this}toString(){return`{type: ScenegraphNode, id: ${this.id})}`}setPosition(t){return Rx(3===t.length,"setPosition requires vector argument"),this.position=t,this}setRotation(t){return Rx(3===t.length,"setRotation requires vector argument"),this.rotation=t,this}setScale(t){return Rx(3===t.length,"setScale requires vector argument"),this.scale=t,this}setMatrix(t,e=!0){e?this.matrix.copy(t):this.matrix=t}setMatrixComponents({position:t,rotation:e,scale:n,update:i=!0}){return t&&this.setPosition(t),e&&this.setRotation(e),n&&this.setScale(n),i&&this.updateMatrix(),this}updateMatrix(){const t=this.position,e=this.rotation,n=this.scale;return this.matrix.identity(),this.matrix.translate(t),this.matrix.rotateXYZ(e),this.matrix.scale(n),this}update(t={}){const{position:e,rotation:n,scale:i}=t;return e&&this.setPosition(e),n&&this.setRotation(n),i&&this.setScale(i),this.updateMatrix(),this}getCoordinateUniforms(t,e){Rx(t),e=e||this.matrix;const n=new bT(t).multiplyRight(e),i=n.invert(),r=i.transpose();return{viewMatrix:t,modelMatrix:e,objectMatrix:e,worldMatrix:n,worldInverseMatrix:i,worldInverseTransposeMatrix:r}}_setScenegraphNodeProps(t){"display"in t&&(this.display=t.display),"position"in t&&this.setPosition(t.position),"rotation"in t&&this.setRotation(t.rotation),"scale"in t&&this.setScale(t.scale),"matrix"in t&&this.setMatrix(t.matrix),Object.assign(this.props,t)}}class bR extends mR{constructor(t={}){t=Array.isArray(t)?{children:t}:t;const{children:e=[]}=t;Nw.assert(e.every(t=>t instanceof mR),"every child must an instance of ScenegraphNode"),super(t),this.children=e}add(...t){for(const e of t)Array.isArray(e)?this.add(...e):this.children.push(e);return this}remove(t){const e=this.children,n=e.indexOf(t);return n>-1&&e.splice(n,1),this}removeAll(){return this.children=[],this}delete(){this.children.forEach(t=>t.delete()),this.removeAll(),super.delete()}traverse(t,{worldMatrix:e=new bT}={}){const n=new bT(e).multiplyRight(this.matrix);for(const i of this.children)i instanceof bR?i.traverse(t,{worldMatrix:n}):t(i,{worldMatrix:n})}}function yR(){var t=new qS(4);return qS!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function vR(t,e,n){n*=.5;var i=Math.sin(n);return t[0]=i*e[0],t[1]=i*e[1],t[2]=i*e[2],t[3]=Math.cos(n),t}function _R(t,e,n){var i=e[0],r=e[1],s=e[2],o=e[3],a=n[0],l=n[1],c=n[2],u=n[3];return t[0]=i*u+o*a+r*c-s*l,t[1]=r*u+o*l+s*a-i*c,t[2]=s*u+o*c+i*l-r*a,t[3]=o*u-i*a-r*l-s*c,t}var wR=tT,xR=function(){var t=XS(),e=YS(1,0,0),n=YS(0,1,0);return function(i,r,s){var o=KS(r,s);return o<-.999999?(QS(t,e,r),function(t){return Math.hypot(t[0],t[1],t[2])}(t)<1e-6&&QS(t,n,r),function(t,e){var n=e[0],i=e[1],r=e[2],s=n*n+i*i+r*r;s>0&&(s=1/Math.sqrt(s)),t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s}(t,t),vR(i,t,Math.PI),i):o>.999999?(i[0]=0,i[1]=0,i[2]=0,i[3]=1,i):(QS(t,r,s),i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=1+o,function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s;return o>0&&(o=1/Math.sqrt(o)),t[0]=n*o,t[1]=i*o,t[2]=r*o,t[3]=s*o,t}(i,i))}}();yR(),yR(),function(){var t=new qS(9);qS!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1}();const SR=[0,0,0,1],ER={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},CR={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function OR(t){if(!t._animation){const e=CR[t.componentType],n=ER[t.type],i=n*t.count,{buffer:r,byteOffset:s}=t.bufferView.data,o=new e(r,s+(t.byteOffset||0),i);if(1===n)t._animation=Array.from(o);else{const e=[];for(let t=0;t0)n=Math.sqrt(i+1),t[3]=.5*n,t[0]=(e[5]-e[7])*(n=.5/n),t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{var r=0;e[4]>e[0]&&(r=1),e[8]>e[3*r+r]&&(r=2);var s=(r+1)%3,o=(r+2)%3;n=Math.sqrt(e[3*r+r]-e[3*s+s]-e[3*o+o]+1),t[r]=.5*n,t[3]=(e[3*s+o]-e[3*o+s])*(n=.5/n),t[s]=(e[3*s+r]+e[3*r+s])*n,t[o]=(e[3*o+r]+e[3*r+o])*n}}(this,t),this.check()}identity(){return function(t){t[0]=0,t[1]=0,t[2]=0,t[3]=1}(this),this.check()}fromAxisRotation(t,e){return vR(this,t,e),this.check()}setAxisAngle(t,e){return this.fromAxisRotation(t,e)}get ELEMENTS(){return 4}get x(){return this[0]}set x(t){this[0]=zS(t)}get y(){return this[1]}set y(t){this[1]=zS(t)}get z(){return this[2]}set z(t){this[2]=zS(t)}get w(){return this[3]}set w(t){this[3]=zS(t)}len(){return function(t){return Math.hypot(t[0],t[1],t[2],t[3])}(this)}lengthSquared(){return function(t){var e=t[0],n=t[1],i=t[2],r=t[3];return e*e+n*n+i*i+r*r}(this)}dot(t,e){if(void 0!==e)throw new Error("Quaternion.dot only takes one argument");return function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]}(this,t)}rotationTo(t,e){return xR(this,t,e),this.check()}add(t,e){if(void 0!==e)throw new Error("Quaternion.add only takes one argument");return function(t,e,n){t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3]}(this,this,t),this.check()}calculateW(){return function(t,e){var n=e[0],i=e[1],r=e[2];t[0]=n,t[1]=i,t[2]=r,t[3]=Math.sqrt(Math.abs(1-n*n-i*i-r*r))}(this,this),this.check()}conjugate(){return function(t,e){t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3]}(this,this),this.check()}invert(){return function(t,e){var n=e[0],i=e[1],r=e[2],s=e[3],o=n*n+i*i+r*r+s*s,a=o?1/o:0;t[0]=-n*a,t[1]=-i*a,t[2]=-r*a,t[3]=s*a}(this,this),this.check()}lerp(t,e,n){return function(t,e,n,i){var r=e[0],s=e[1],o=e[2],a=e[3];t[0]=r+i*(n[0]-r),t[1]=s+i*(n[1]-s),t[2]=o+i*(n[2]-o),t[3]=a+i*(n[3]-a)}(this,t,e,n),this.check()}multiplyRight(t,e){return BS(!e),_R(this,this,t),this.check()}multiplyLeft(t,e){return BS(!e),_R(this,t,this),this.check()}normalize(){const t=this.len(),e=t>0?1/t:0;return this[0]=this[0]*e,this[1]=this[1]*e,this[2]=this[2]*e,this[3]=this[3]*e,0===t&&(this[3]=1),this.check()}rotateX(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+o*a,t[1]=r*l+s*a,t[2]=s*l-r*a,t[3]=o*l-i*a}(this,this,t),this.check()}rotateY(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l-s*a,t[1]=r*l+o*a,t[2]=s*l+i*a,t[3]=o*l-r*a}(this,this,t),this.check()}rotateZ(t){return function(t,e,n){n*=.5;var i=e[0],r=e[1],s=e[2],o=e[3],a=Math.sin(n),l=Math.cos(n);t[0]=i*l+r*a,t[1]=r*l-i*a,t[2]=s*l+o*a,t[3]=o*l-s*a}(this,this,t),this.check()}scale(t){return wR(this,this,t),this.check()}slerp(t,e,n){switch(arguments.length){case 1:({start:t=SR,target:e,ratio:n}=arguments[0]);break;case 2:[e,n]=arguments,t=this}return function(t,e,n,i){var r,s,o,a,l,c=e[0],u=e[1],h=e[2],d=e[3],p=n[0],f=n[1],g=n[2],m=n[3];(s=c*p+u*f+h*g+d*m)<0&&(s=-s,p=-p,f=-f,g=-g,m=-m),1-s>WS?(r=Math.acos(s),o=Math.sin(r),a=Math.sin((1-i)*r)/o,l=Math.sin(i*r)/o):(a=1-i,l=i),t[0]=a*c+l*p,t[1]=a*u+l*f,t[2]=a*h+l*g,t[3]=a*d+l*m}(this,t,e,n),this.check()}transformVector4(t,e=t){return function(t,e,n){var i=e[0],r=e[1],s=e[2],o=n[0],a=n[1],l=n[2],c=n[3],u=c*i+a*s-l*r,h=c*r+l*i-o*s,d=c*s+o*r-a*i,p=-o*i-a*r-l*s;t[0]=u*c+p*-o+h*-l-d*-a,t[1]=h*c+p*-a+d*-o-u*-l,t[2]=d*c+p*-l+u*-a-h*-o,t[3]=e[3]}(e,t,this),US(e,4)}lengthSq(){return this.lengthSquared()}setFromAxisAngle(t,e){return this.setAxisAngle(t,e)}premultiply(t,e){return this.multiplyLeft(t,e)}multiply(t,e){return this.multiplyRight(t,e)}};class AR{constructor(t){this.startTime=0,this.playing=!0,this.speed=1,this.channels=[],Object.assign(this,t)}animate(t){if(!this.playing)return;const e=(t/1e3-this.startTime)*this.speed;this.channels.forEach(({sampler:t,target:n,path:i})=>{(function(t,{input:e,interpolation:n,output:i},r,s){const o=t%e[e.length-1],a=e.findIndex(t=>t>=o),l=Math.max(0,a-1);if(!Array.isArray(r[s]))switch(s){case"translation":r[s]=[0,0,0];break;case"rotation":r[s]=[0,0,0,1];break;case"scale":r[s]=[1,1,1];break;default:Nw.warn(`Bad animation path ${s}`)()}Rx(r[s].length===i[l].length);const c=e[l],u=e[a];switch(n){case"STEP":!function(t,e,n){for(let i=0;ic&&function(t,e,n,i,r){if("rotation"===e){kR.slerp({start:n,target:i,ratio:r});for(let n=0;nc&&function(t,e,{p0:n,outTangent0:i,inTangent1:r,p1:s,tDiff:o,ratio:a}){for(let l=0;l{const i=e.name||`Animation-${n}`,r=e.samplers.map(({input:e,interpolation:n="LINEAR",output:i})=>({input:OR(t.accessors[e]),interpolation:n,output:OR(t.accessors[i])})),s=e.channels.map(({sampler:e,target:n})=>({sampler:r[e],target:t.nodes[n.node],path:n.path}));return new AR({name:i,channels:s})})}animate(t){this.setTime(t)}setTime(t){this.animations.forEach(e=>e.animate(t))}getAnimations(){return this.animations}}class MR extends mR{constructor(t,e={}){super(e),this.onBeforeRender=null,this.AfterRender=null,t instanceof xO?(this.model=t,this._setModelNodeProps(e)):this.model=new xO(t,e),this.managedResources=e.managedResources||[]}setProps(t){return super.setProps(t),this._setModelNodeProps(t),this}delete(){this.model&&(this.model.delete(),this.model=null),this.managedResources.forEach(t=>t.delete()),this.managedResources=[]}draw(...t){return this.model.draw(...t)}setUniforms(...t){return this.model.setUniforms(...t),this}setAttributes(...t){return this.model.setAttributes(...t),this}updateModuleSettings(...t){return this.model.updateModuleSettings(...t),this}_setModelNodeProps(t){this.model.setProps(t)}}class IR{constructor(t,{attributes:e,material:n,pbrDebug:i,imageBasedLightingEnvironment:r,lights:s,useTangents:o}){this.gl=t,this.defines={MANUAL_SRGB:1,SRGB_FAST_APPROXIMATION:1},CS(t,"GLSL_TEXTURE_LOD")&&(this.defines.USE_TEX_LOD=1),this.uniforms={u_Camera:[0,0,0],u_MetallicRoughnessValues:[1,1]},this.parameters={},this.generatedTextures=[],r&&(this.uniforms.u_DiffuseEnvSampler=r.getDiffuseEnvSampler(),this.uniforms.u_SpecularEnvSampler=r.getSpecularEnvSampler(),this.uniforms.u_brdfLUT=r.getBrdfTexture(),this.uniforms.u_ScaleIBLAmbient=[1,1]),i&&(this.uniforms.u_ScaleDiffBaseMR=[0,0,0,0],this.uniforms.u_ScaleFGDSpec=[0,0,0,0]),this.defineIfPresent(e.NORMAL,"HAS_NORMALS"),this.defineIfPresent(e.TANGENT&&o,"HAS_TANGENTS"),this.defineIfPresent(e.TEXCOORD_0,"HAS_UV"),this.defineIfPresent(r,"USE_IBL"),this.defineIfPresent(s,"USE_LIGHTS"),this.defineIfPresent(i,"PBR_DEBUG"),n&&this.parseMaterial(n)}defineIfPresent(t,e){t&&(this.defines[e]=1)}parseTexture(t,e,n=null){const i=t.texture.source.image;let r,s={};i.compressed?(r=i,s={[this.gl.TEXTURE_MIN_FILTER]:i.data.length>1?this.gl.LINEAR_MIPMAP_NEAREST:this.gl.LINEAR}):r={data:i};const o=new lS(this.gl,wt({id:t.name||t.id,parameters:wt(wt({},t.texture&&t.texture.sampler&&t.texture.sampler.parameters||{}),s),pixelStore:{[this.gl.UNPACK_FLIP_Y_WEBGL]:!1}},r));this.uniforms[e]=o,this.defineIfPresent(n,n),this.generatedTextures.push(o)}parsePbrMetallicRoughness(t){t.baseColorTexture&&this.parseTexture(t.baseColorTexture,"u_BaseColorSampler","HAS_BASECOLORMAP"),this.uniforms.u_BaseColorFactor=t.baseColorFactor||[1,1,1,1],t.metallicRoughnessTexture&&this.parseTexture(t.metallicRoughnessTexture,"u_MetallicRoughnessSampler","HAS_METALROUGHNESSMAP");const{metallicFactor:e=1,roughnessFactor:n=1}=t;this.uniforms.u_MetallicRoughnessValues=[e,n]}parseMaterial(t){if(this.uniforms.pbr_uUnlit=Boolean(t.unlit),t.pbrMetallicRoughness&&this.parsePbrMetallicRoughness(t.pbrMetallicRoughness),t.normalTexture){this.parseTexture(t.normalTexture,"u_NormalSampler","HAS_NORMALMAP");const{scale:e=1}=t.normalTexture;this.uniforms.u_NormalScale=e}if(t.occlusionTexture){this.parseTexture(t.occlusionTexture,"u_OcclusionSampler","HAS_OCCLUSIONMAP");const{strength:e=1}=t.occlusionTexture;this.uniforms.u_OcclusionStrength=e}if(t.emissiveTexture&&(this.parseTexture(t.emissiveTexture,"u_EmissiveSampler","HAS_EMISSIVEMAP"),this.uniforms.u_EmissiveFactor=t.emissiveFactor||[0,0,0]),"MASK"===t.alphaMode){const{alphaCutoff:e=.5}=t;this.defines.ALPHA_CUTOFF=1,this.uniforms.u_AlphaCutoff=e}else"BLEND"===t.alphaMode&&(Nw.warn("BLEND alphaMode might not work well because it requires mesh sorting")(),Object.assign(this.parameters,{blend:!0,blendEquation:this.gl.FUNC_ADD,blendFunc:[this.gl.SRC_ALPHA,this.gl.ONE_MINUS_SRC_ALPHA,this.gl.ONE,this.gl.ONE_MINUS_SRC_ALPHA]}))}}function DR(t,e){return Fw(t)?`#version 300 es\n${e}`:e}const RR={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},NR={modelOptions:{},pbrDebug:!1,imageBasedLightingEnvironment:null,lights:!0,useTangents:!1};class LR{constructor(t,e={}){this.gl=t,this.options=Object.assign({},NR,e)}instantiate(t){return this.gltf=t,(t.scenes||[]).map(t=>this.createScene(t))}createAnimator(){return Array.isArray(this.gltf.animations)?new PR(this.gltf):null}createScene(t){const e=(t.nodes||[]).map(t=>this.createNode(t));return new bR({id:t.name||t.id,children:e})}createNode(t){if(!t._node){const e=(t.children||[]).map(t=>this.createNode(t));t.mesh&&e.push(this.createMesh(t.mesh));const n=new bR({id:t.name||t.id,children:e});if(t.matrix)n.setMatrix(t.matrix);else{if(n.matrix.identity(),t.translation&&n.matrix.translate(t.translation),t.rotation){const e=(new bT).fromQuaternion(t.rotation);n.matrix.multiplyRight(e)}t.scale&&n.matrix.scale(t.scale)}t._node=n}return t._node}createMesh(t){if(!t._mesh){const e=(t.primitives||[]).map((e,n)=>this.createPrimitive(e,n,t)),n=new bR({id:t.name||t.id,children:e});t._mesh=n}return t._mesh}getVertexCount(t){Nw.warn("getVertexCount() not found")()}createPrimitive(t,e,n){return function(t,e){const{id:n,drawMode:i,vertexCount:r,attributes:s,modelOptions:o}=e,a=new IR(t,e);Nw.info(4,"createGLTFModel defines: ",a.defines)();const l=[];l.push(...a.generatedTextures),l.push(...Object.values(s).map(t=>t.buffer));const c=new MR(t,Object.assign({id:n,drawMode:i,vertexCount:r,modules:[gR],defines:a.defines,parameters:a.parameters,vs:DR(t,"\n#if (__VERSION__ < 300)\n #define _attr attribute\n#else\n #define _attr in\n#endif\n\n _attr vec4 POSITION;\n\n #ifdef HAS_NORMALS\n _attr vec4 NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _attr vec4 TANGENT;\n #endif\n\n #ifdef HAS_UV\n _attr vec2 TEXCOORD_0;\n #endif\n\n void main(void) {\n vec4 _NORMAL = vec4(0.);\n vec4 _TANGENT = vec4(0.);\n vec2 _TEXCOORD_0 = vec2(0.);\n\n #ifdef HAS_NORMALS\n _NORMAL = NORMAL;\n #endif\n\n #ifdef HAS_TANGENTS\n _TANGENT = TANGENT;\n #endif\n\n #ifdef HAS_UV\n _TEXCOORD_0 = TEXCOORD_0;\n #endif\n\n pbr_setPositionNormalTangentUV(POSITION, _NORMAL, _TANGENT, _TEXCOORD_0);\n gl_Position = u_MVPMatrix * POSITION;\n }\n"),fs:DR(t,"\n#if (__VERSION__ < 300)\n #define fragmentColor gl_FragColor\n#else\n out vec4 fragmentColor;\n#endif\n\n void main(void) {\n fragmentColor = pbr_filterColor(vec4(0));\n }\n"),managedResources:l},o));return c.setProps({attributes:s}),c.setUniforms(a.uniforms),c}(this.gl,Object.assign({id:t.name||`${n.name||n.id}-primitive-${e}`,drawMode:t.mode||4,vertexCount:t.indices?t.indices.count:this.getVertexCount(t.attributes),attributes:this.createAttributes(t.attributes,t.indices),material:t.material},this.options))}createAttributes(t,e){const n={};return Object.keys(t).forEach(e=>{n[e]=this.createAccessor(t[e],this.createBuffer(t[e],this.gl.ARRAY_BUFFER))}),e&&(n.indices=this.createAccessor(e,this.createBuffer(e,this.gl.ELEMENT_ARRAY_BUFFER))),Nw.info(4,"glTF Attributes",{attributes:t,indices:e,generated:n})(),n}createBuffer(t,e){t.bufferView||(t.bufferView={});const{bufferView:n}=t;return n.lumaBuffers||(n.lumaBuffers={}),n.lumaBuffers[e]||(n.lumaBuffers[e]=new tS(this.gl,{id:`from-${n.id}`,data:n.data||t.value,target:e})),n.lumaBuffers[e]}createAccessor(t,e){return new Kx({buffer:e,offset:t.byteOffset||0,stride:t.bufferView.byteStride||0,type:t.componentType,size:RR[t.type]})}createSampler(t){return t}needsPOT(){return!1}}function jR(t,e,n){if(t.byteLength<=e+n)return"";const i=new DataView(t);let r="";for(let s=0;se[t.name]);return new UR(n,this.metadata)}selectAt(...t){const e=t.map(t=>this.fields[t]).filter(Boolean);return new UR(e,this.metadata)}assign(t){let e,n=this.metadata;if(t instanceof UR){const i=t;e=i.fields,n=HR(HR(new Map,this.metadata),i.metadata)}else e=t;const i=Object.create(null);for(const s of this.fields)i[s.name]=s;for(const s of e)i[s.name]=s;const r=Object.values(i);return new UR(r,n)}}function HR(t,e){return new Map([...t||new Map,...e||new Map])}let $R,GR,WR,qR,XR,YR,KR,QR;!function(t){t[t.NONE=0]="NONE",t[t.Null=1]="Null",t[t.Int=2]="Int",t[t.Float=3]="Float",t[t.Binary=4]="Binary",t[t.Utf8=5]="Utf8",t[t.Bool=6]="Bool",t[t.Decimal=7]="Decimal",t[t.Date=8]="Date",t[t.Time=9]="Time",t[t.Timestamp=10]="Timestamp",t[t.Interval=11]="Interval",t[t.List=12]="List",t[t.Struct=13]="Struct",t[t.Union=14]="Union",t[t.FixedSizeBinary=15]="FixedSizeBinary",t[t.FixedSizeList=16]="FixedSizeList",t[t.Map=17]="Map",t[t.Dictionary=-1]="Dictionary",t[t.Int8=-2]="Int8",t[t.Int16=-3]="Int16",t[t.Int32=-4]="Int32",t[t.Int64=-5]="Int64",t[t.Uint8=-6]="Uint8",t[t.Uint16=-7]="Uint16",t[t.Uint32=-8]="Uint32",t[t.Uint64=-9]="Uint64",t[t.Float16=-10]="Float16",t[t.Float32=-11]="Float32",t[t.Float64=-12]="Float64",t[t.DateDay=-13]="DateDay",t[t.DateMillisecond=-14]="DateMillisecond",t[t.TimestampSecond=-15]="TimestampSecond",t[t.TimestampMillisecond=-16]="TimestampMillisecond",t[t.TimestampMicrosecond=-17]="TimestampMicrosecond",t[t.TimestampNanosecond=-18]="TimestampNanosecond",t[t.TimeSecond=-19]="TimeSecond",t[t.TimeMillisecond=-20]="TimeMillisecond",t[t.TimeMicrosecond=-21]="TimeMicrosecond",t[t.TimeNanosecond=-22]="TimeNanosecond",t[t.DenseUnion=-23]="DenseUnion",t[t.SparseUnion=-24]="SparseUnion",t[t.IntervalDayTime=-25]="IntervalDayTime",t[t.IntervalYearMonth=-26]="IntervalYearMonth"}($R||($R={}));class ZR{static isNull(t){return t&&t.typeId===$R.Null}static isInt(t){return t&&t.typeId===$R.Int}static isFloat(t){return t&&t.typeId===$R.Float}static isBinary(t){return t&&t.typeId===$R.Binary}static isUtf8(t){return t&&t.typeId===$R.Utf8}static isBool(t){return t&&t.typeId===$R.Bool}static isDecimal(t){return t&&t.typeId===$R.Decimal}static isDate(t){return t&&t.typeId===$R.Date}static isTime(t){return t&&t.typeId===$R.Time}static isTimestamp(t){return t&&t.typeId===$R.Timestamp}static isInterval(t){return t&&t.typeId===$R.Interval}static isList(t){return t&&t.typeId===$R.List}static isStruct(t){return t&&t.typeId===$R.Struct}static isUnion(t){return t&&t.typeId===$R.Union}static isFixedSizeBinary(t){return t&&t.typeId===$R.FixedSizeBinary}static isFixedSizeList(t){return t&&t.typeId===$R.FixedSizeList}static isMap(t){return t&&t.typeId===$R.Map}static isDictionary(t){return t&&t.typeId===$R.Dictionary}get typeId(){return $R.NONE}compareTo(t){return this===t}}Symbol,Symbol,GR=Symbol.toStringTag;class JR extends ZR{constructor(t,e){super(),cA(this,"isSigned",void 0),cA(this,"bitWidth",void 0),this.isSigned=t,this.bitWidth=e}get typeId(){return $R.Int}get[GR](){return"Int"}toString(){return`${this.isSigned?"I":"Ui"}nt${this.bitWidth}`}}class tN extends JR{constructor(){super(!0,8)}}class eN extends JR{constructor(){super(!0,16)}}class nN extends JR{constructor(){super(!0,32)}}class iN extends JR{constructor(){super(!1,8)}}class rN extends JR{constructor(){super(!1,16)}}class sN extends JR{constructor(){super(!1,32)}}WR=Symbol.toStringTag;class oN extends ZR{constructor(t){super(),cA(this,"precision",void 0),this.precision=t}get typeId(){return $R.Float}get[WR](){return"Float"}toString(){return`Float${this.precision}`}}class aN extends oN{constructor(){super(32)}}class lN extends oN{constructor(){super(64)}}Symbol,Symbol,qR=Symbol.toStringTag,XR=Symbol.toStringTag,YR=Symbol.toStringTag,KR=Symbol.toStringTag,QR=Symbol.toStringTag;class cN extends ZR{constructor(t,e){super(),cA(this,"listSize",void 0),cA(this,"children",void 0),this.listSize=t,this.children=[e]}get typeId(){return $R.FixedSizeList}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get[QR](){return"FixedSizeList"}toString(){return`FixedSizeList[${this.listSize}]<${this.valueType}>`}}class uN{constructor(t,e,n=!1,i=new Map){cA(this,"name",void 0),cA(this,"type",void 0),cA(this,"nullable",void 0),cA(this,"metadata",void 0),this.name=t,this.type=e,this.nullable=n,this.metadata=i}get typeId(){return this.type&&this.type.typeId}clone(){return new uN(this.name,this.type,this.nullable,this.metadata)}compareTo(t){return this.name===t.name&&this.type===t.type&&this.nullable===t.nullable&&this.metadata===t.metadata}toString(){return`${this.type}${this.nullable?", nullable":""}${this.metadata?`, metadata: ${this.metadata}`:""}`}}function hN(t,e,n){const i=n?dN(n.metadata):void 0,r=function(t){switch(t.constructor){case Int8Array:return new tN;case Uint8Array:return new iN;case Int16Array:return new eN;case Uint16Array:return new rN;case Int32Array:return new nN;case Uint32Array:return new sN;case Float32Array:return new aN;case Float64Array:return new lN;default:throw new Error("array type not supported")}}(e.value);return new uN(t,new cN(e.size,new uN("value",r)),!1,i)}function dN(t){const e=new Map;for(const n in t)e.set(`${n}.string`,JSON.stringify(t[n]));return e}const pN={POSITION:"POSITION",NORMAL:"NORMAL",COLOR:"COLOR_0",TEX_COORD:"TEXCOORD_0"},fN={1:Int8Array,2:Uint8Array,3:Int16Array,4:Uint16Array,5:Int32Array,6:Uint32Array,9:Float32Array};class gN{constructor(t){cA(this,"draco",void 0),cA(this,"decoder",void 0),cA(this,"metadataQuerier",void 0),this.draco=t,this.decoder=new this.draco.Decoder,this.metadataQuerier=new this.draco.MetadataQuerier}destroy(){this.draco.destroy(this.decoder),this.draco.destroy(this.metadataQuerier)}parseSync(t,e={}){const n=new this.draco.DecoderBuffer;n.Init(new Int8Array(t),t.byteLength),this._disableAttributeTransforms(e);const i=this.decoder.GetEncodedGeometryType(n),r=i===this.draco.TRIANGULAR_MESH?new this.draco.Mesh:new this.draco.PointCloud;try{let t;switch(i){case this.draco.TRIANGULAR_MESH:t=this.decoder.DecodeBufferToMesh(n,r);break;case this.draco.POINT_CLOUD:t=this.decoder.DecodeBufferToPointCloud(n,r);break;default:throw new Error("DRACO: Unknown geometry type.")}if(!t.ok()||!r.ptr){const e=`DRACO decompression failed: ${t.error_msg()}`;throw new Error(e)}const s=this._getDracoLoaderData(r,i,e),o=this._getMeshData(r,s,e),a=function(t){let e=1/0,n=1/0,i=1/0,r=-1/0,s=-1/0,o=-1/0;const a=t.POSITION?t.POSITION.value:[],l=a&&a.length;for(let c=0;cr?t:r,s=l>s?l:s,o=u>o?u:o}return[[e,n,i],[r,s,o]]}(o.attributes),l=function(t,e,n){const i=dN(e.metadata),r=[],s=function(t){const e={};for(const n in t){const i=t[n];e[i.name||"undefined"]=i}return e}(e.attributes);for(const o in t){const e=hN(o,t[o],s[o]);r.push(e)}if(n){const t=hN("indices",n);r.push(t)}return new UR(r,i)}(o.attributes,s,o.indices);return ii(wt({loader:"draco",loaderData:s,header:{vertexCount:r.num_points(),boundingBox:a}},o),{schema:l})}finally{this.draco.destroy(n),r&&this.draco.destroy(r)}}_getDracoLoaderData(t,e,n){const i=this._getTopLevelMetadata(t),r=this._getDracoAttributes(t,n);return{geometry_type:e,num_attributes:t.num_attributes(),num_points:t.num_points(),num_faces:t instanceof this.draco.Mesh?t.num_faces():0,metadata:i,attributes:r}}_getDracoAttributes(t,e){const n={};for(let i=0;ithis.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits(),range:e.range(),min_values:new Float32Array([1,2,3]).map(t=>e.min_value(t))}}finally{this.draco.destroy(e)}}return null}_getOctahedronTransform(t,e){const{octahedronAttributes:n=[]}=e,i=t.attribute_type();if(n.map(t=>this.decoder[t]).includes(i)){const e=new this.draco.AttributeQuantizationTransform;try{if(e.InitFromAttribute(t))return{quantization_bits:e.quantization_bits()}}finally{this.draco.destroy(e)}}return null}}var mN=n(49125);const bN={};function yN(t){return vN.apply(this,arguments)}function vN(){return(vN=gS(function*(t,e=null,n={}){return e&&(t=_N(t,e,n)),bN[t]=bN[t]||wN(t),yield bN[t]})).apply(this,arguments)}function _N(t,e,n){if(t.startsWith("http"))return t;const i=n.modules||{};return i[t]?i[t]:CA?n.CDN?(wA(n.CDN.startsWith("http")),`${n.CDN}/${e}@3.0.12/dist/libs/${t}`):OA?`../src/libs/${t}`:`modules/${e}/src/libs/${t}`:`modules/${e}/dist/libs/${t}`}function wN(t){return xN.apply(this,arguments)}function xN(){return(xN=gS(function*(t){return t.endsWith("wasm")?yield(yield fetch(t)).arrayBuffer():CA?OA?importScripts(t):SN(yield(yield fetch(t)).text(),t):mN.requireFromFile&&(yield mN.requireFromFile(t))})).apply(this,arguments)}function SN(t,e){if(!CA)return mN.requireFromString&&mN.requireFromString(t,e);if(OA)return eval.call(EA,t),null;const n=document.createElement("script");n.id=e;try{n.appendChild(document.createTextNode(t))}catch(i){n.text=t}return document.body.appendChild(n),null}const EN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.js",CN="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_wasm_wrapper.js",ON="https://www.gstatic.com/draco/versioned/decoders/1.4.1/draco_decoder.wasm";let TN;function kN(t){return AN.apply(this,arguments)}function AN(){return(AN=gS(function*(t){const e=t.modules||{};return TN=e.draco3d?TN||e.draco3d.createDecoderModule({}).then(t=>({draco:t})):TN||PN(t),yield TN})).apply(this,arguments)}function PN(t){return MN.apply(this,arguments)}function MN(){return(MN=gS(function*(t){let e,n;switch(t.draco&&t.draco.decoderType){case"js":e=yield yN(EN,"draco",t);break;case"wasm":default:[e,n]=yield Promise.all([yield yN(CN,"draco",t),yield yN(ON,"draco",t)])}return e=e||globalThis.DracoDecoderModule,yield IN(e,n)})).apply(this,arguments)}function IN(t,e){const n={};return e&&(n.wasmBinary=e),new Promise(e=>{t(ii(wt({},n),{onModuleLoaded:t=>e({draco:t})}))})}const DN=ii(wt({},zR),{parse:function(t,e){return RN.apply(this,arguments)}});function RN(){return(RN=gS(function*(t,e){const{draco:n}=yield kN(e),i=new gN(n);try{return i.parseSync(t,null==e?void 0:e.draco)}finally{i.destroy()}})).apply(this,arguments)}function NN(t,e){return Nk(t>=0),Nk(e>0),t+(e-1)&~(e-1)}function LN(t,e,n){let i;return i=t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer||t.arrayBuffer,t.byteOffset,t.byteLength),e.set(i,n),n+NN(i.byteLength,4)}const jN=["SCALAR","VEC2","VEC3","VEC4"],FN=[[Int8Array,5120],[Uint8Array,5121],[Int16Array,5122],[Uint16Array,5123],[Uint32Array,5125],[Float32Array,5126],[Float64Array,5130]],BN=new Map(FN),VN={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},zN={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},UN={5120:Int8Array,5121:Uint8Array,5122:Int16Array,5123:Uint16Array,5125:Uint32Array,5126:Float32Array};function HN(t){return jN[t-1]||jN[0]}function $N(t){const e=BN.get(t.constructor);if(!e)throw new Error("Illegal typed array");return e}function GN(t,e){const n=UN[t.componentType],i=VN[t.type],r=t.count*i,s=t.count*i*zN[t.componentType];return FR(s>=0&&s<=e.byteLength),{ArrayType:n,length:r,byteLength:s}}const WN={asset:{version:"2.0",generator:"loaders.gl"},buffers:[]};class qN{constructor(t){cA(this,"gltf",void 0),cA(this,"sourceBuffers",void 0),cA(this,"byteLength",void 0),this.gltf=t||{json:wt({},WN),buffers:[]},this.sourceBuffers=[],this.byteLength=0,this.gltf.buffers&&this.gltf.buffers[0]&&(this.byteLength=this.gltf.buffers[0].byteLength,this.sourceBuffers=[this.gltf.buffers[0]])}get json(){return this.gltf.json}getApplicationData(t){return this.json[t]}getExtraData(t){return(this.json.extras||{})[t]}getExtension(t){return this.getUsedExtensions().find(e=>e===t)?(this.json.extensions||{})[t]||!0:null}getRequiredExtension(t){return this.getRequiredExtensions().find(e=>e===t)?this.getExtension(t):null}getRequiredExtensions(){return this.json.extensionsRequired||[]}getUsedExtensions(){return this.json.extensionsUsed||[]}getObjectExtension(t,e){return(t.extensions||{})[e]}getScene(t){return this.getObject("scenes",t)}getNode(t){return this.getObject("nodes",t)}getSkin(t){return this.getObject("skins",t)}getMesh(t){return this.getObject("meshes",t)}getMaterial(t){return this.getObject("materials",t)}getAccessor(t){return this.getObject("accessors",t)}getTexture(t){return this.getObject("textures",t)}getSampler(t){return this.getObject("samplers",t)}getImage(t){return this.getObject("images",t)}getBufferView(t){return this.getObject("bufferViews",t)}getBuffer(t){return this.getObject("buffers",t)}getObject(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];if(!n)throw new Error(`glTF file error: Could not find ${t}[${e}]`);return n}getTypedArrayForBufferView(t){t=this.getBufferView(t);const e=this.gltf.buffers[t.buffer];return FR(e),new Uint8Array(e.arrayBuffer,(t.byteOffset||0)+e.byteOffset,t.byteLength)}getTypedArrayForAccessor(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data,{ArrayType:i,length:r}=GN(t,e);return new i(n,e.byteOffset+t.byteOffset,r)}getTypedArrayForImageData(t){t=this.getAccessor(t);const e=this.getBufferView(t.bufferView),n=this.getBuffer(e.buffer).data;return new Uint8Array(n,e.byteOffset||0,e.byteLength)}addApplicationData(t,e){return this.json[t]=e,this}addExtraData(t,e){return this.json.extras=this.json.extras||{},this.json.extras[t]=e,this}addObjectExtension(t,e,n){return t.extensions=t.extensions||{},t.extensions[e]=n,this.registerUsedExtension(e),this}setObjectExtension(t,e,n){(t.extensions||{})[e]=n}removeObjectExtension(t,e){const n=t.extensions||{},i=n[e];return delete n[e],i}addExtension(t,e={}){return FR(e),this.json.extensions=this.json.extensions||{},this.json.extensions[t]=e,this.registerUsedExtension(t),e}addRequiredExtension(t,e={}){return FR(e),this.addExtension(t,e),this.registerRequiredExtension(t),e}registerUsedExtension(t){this.json.extensionsUsed=this.json.extensionsUsed||[],this.json.extensionsUsed.find(e=>e===t)||this.json.extensionsUsed.push(t)}registerRequiredExtension(t){this.registerUsedExtension(t),this.json.extensionsRequired=this.json.extensionsRequired||[],this.json.extensionsRequired.find(e=>e===t)||this.json.extensionsRequired.push(t)}removeExtension(t){this.json.extensionsRequired&&this._removeStringFromArray(this.json.extensionsRequired,t),this.json.extensionsUsed&&this._removeStringFromArray(this.json.extensionsUsed,t),this.json.extensions&&delete this.json.extensions[t]}setDefaultScene(t){this.json.scene=t}addScene(t){const{nodeIndices:e}=t;return this.json.scenes=this.json.scenes||[],this.json.scenes.push({nodes:e}),this.json.scenes.length-1}addNode(t){const{meshIndex:e,matrix:n}=t;this.json.nodes=this.json.nodes||[];const i={mesh:e};return n&&(i.matrix=n),this.json.nodes.push(i),this.json.nodes.length-1}addMesh(t){const{attributes:e,indices:n,material:i,mode:r=4}=t,s={primitives:[{attributes:this._addAttributes(e),mode:r}]};if(n){const t=this._addIndices(n);s.primitives[0].indices=t}return Number.isFinite(i)&&(s.primitives[0].material=i),this.json.meshes=this.json.meshes||[],this.json.meshes.push(s),this.json.meshes.length-1}addPointCloud(t){const e={primitives:[{attributes:this._addAttributes(t),mode:0}]};return this.json.meshes=this.json.meshes||[],this.json.meshes.push(e),this.json.meshes.length-1}addImage(t,e){const n=YI(t),i=e||(null==n?void 0:n.mimeType),r={bufferView:this.addBufferView(t),mimeType:i};return this.json.images=this.json.images||[],this.json.images.push(r),this.json.images.length-1}addBufferView(t){const e=t.byteLength;FR(Number.isFinite(e)),this.sourceBuffers=this.sourceBuffers||[],this.sourceBuffers.push(t);const n={buffer:0,byteOffset:this.byteLength,byteLength:e};return this.byteLength+=NN(e,4),this.json.bufferViews=this.json.bufferViews||[],this.json.bufferViews.push(n),this.json.bufferViews.length-1}addAccessor(t,e){const n={bufferView:t,type:HN(e.size),componentType:e.componentType,count:e.count,max:e.max,min:e.min};return this.json.accessors=this.json.accessors||[],this.json.accessors.push(n),this.json.accessors.length-1}addBinaryBuffer(t,e={size:3}){const n=this.addBufferView(t);let i={min:e.min,max:e.max};(!i.min||!i.max)&&(i=this._getAccessorMinMax(t,e.size));const r={size:e.size,componentType:$N(t),count:Math.round(t.length/e.size),min:i.min,max:i.max};return this.addAccessor(n,Object.assign(r,e))}addTexture(t){const{imageIndex:e}=t,n={source:e};return this.json.textures=this.json.textures||[],this.json.textures.push(n),this.json.textures.length-1}addMaterial(t){return this.json.materials=this.json.materials||[],this.json.materials.push(t),this.json.materials.length-1}createBinaryChunk(){var t,e;this.gltf.buffers=[];const n=this.byteLength,i=new ArrayBuffer(n),r=new Uint8Array(i);let s=0;for(const o of this.sourceBuffers||[])s=LN(o,r,s);null!==(t=this.json)&&void 0!==t&&null!==(e=t.buffers)&&void 0!==e&&e[0]?this.json.buffers[0].byteLength=n:this.json.buffers=[{byteLength:n}],this.gltf.binary=i,this.sourceBuffers=[i]}_removeStringFromArray(t,e){let n=!0;for(;n;){const i=t.indexOf(e);i>-1?t.splice(i,1):n=!1}}_addAttributes(t={}){const e={};for(const n in t){const i=t[n],r=this._getGltfAttributeName(n),s=this.addBinaryBuffer(i.value,i);e[r]=s}return e}_addIndices(t){return this.addBinaryBuffer(t,{size:1})}_getGltfAttributeName(t){switch(t.toLowerCase()){case"position":case"positions":case"vertices":return"POSITION";case"normal":case"normals":return"NORMAL";case"color":case"colors":return"COLOR_0";case"texcoord":case"texcoords":return"TEXCOORD_0";default:return t}}_getAccessorMinMax(t,e){const n={min:null,max:null};if(t.length0)throw new Error("glTF: Empty primitive detected: Draco decompression failure?")}function*lL(t){for(const e of t.json.meshes||[])for(const t of e.primitives)yield t}function cL(t){return uL.apply(this,arguments)}function uL(){return(uL=gS(function*(t){const e=new qN(t),{json:n}=e;e.removeExtension(QN);for(const i of n.materials||[])i.extensions&&i.extensions.KHR_materials_unlit&&(i.unlit=!0),e.removeObjectExtension(i,QN)})).apply(this,arguments)}function hL(t){const e=new qN(t),{json:n}=e;if(e.materials)for(const i of n.materials||[])i.unlit&&(delete i.unlit,e.addObjectExtension(i,QN,{}),e.addExtension(QN))}function dL(t){return pL.apply(this,arguments)}function pL(){return(pL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(KN);i&&(e.json.lights=i.lights,e.removeExtension(KN));for(const r of n.nodes||[]){const t=e.getObjectExtension(r,KN);t&&(r.light=t.light),e.removeObjectExtension(r,KN)}})).apply(this,arguments)}function fL(t){return gL.apply(this,arguments)}function gL(){return(gL=gS(function*(t){const e=new qN(t),{json:n}=e;if(n.lights){const t=e.addExtension(KN);FR(!t.lights),t.lights=n.lights,delete n.lights}if(e.json.lights){for(const t of e.json.lights)e.addObjectExtension(t.node,KN,t);delete e.json.lights}})).apply(this,arguments)}function mL(t){return bL.apply(this,arguments)}function bL(){return(bL=gS(function*(t){const e=new qN(t),{json:n}=e,i=e.getExtension(ZN);if(i){const t=_L(i,e);for(const i of n.materials||[]){const n=e.getObjectExtension(i,ZN);n&&(i.technique=Object.assign({},n,t[n.technique]),i.technique.values=wL(i.technique,e)),e.removeObjectExtension(i,ZN)}e.removeExtension(ZN)}})).apply(this,arguments)}function yL(t,e){return vL.apply(this,arguments)}function vL(){return(vL=gS(function*(t,e){})).apply(this,arguments)}function _L(t,e){const{programs:n=[],shaders:i=[],techniques:r=[]}=t,s=new TextDecoder;return i.forEach(t=>{if(!Number.isFinite(t.bufferView))throw new Error("KHR_techniques_webgl: no shader code");t.code=s.decode(e.getTypedArrayForBufferView(t.bufferView))}),n.forEach(t=>{t.fragmentShader=i[t.fragmentShader],t.vertexShader=i[t.vertexShader]}),r.forEach(t=>{t.program=n[t.program]}),r}function wL(t,e){const n=Object.assign({},t.values);return Object.keys(t.uniforms||{}).forEach(e=>{t.uniforms[e].value&&!(e in n)&&(n[e]=t.uniforms[e].value)}),Object.keys(n).forEach(t=>{"object"==typeof n[t]&&void 0!==n[t].index&&(n[t].texture=e.getTexture(n[t].index))}),n}const xL={KHR_draco_mesh_compression:i,KHR_materials_unlit:r,KHR_lights_punctual:s,KHR_techniques_webgl:o};function SL(t){return EL.apply(this,arguments)}function EL(){return(EL=gS(function*(t,e={},n){for(const r in xL){var i;const s=(null==e||null===(i=e.gltf)||void 0===i?void 0:i.excludeExtensions)||{};r in s&&!s[r]||(yield xL[r].decode(t,e,n))}})).apply(this,arguments)}const CL={accessors:"accessor",animations:"animation",buffers:"buffer",bufferViews:"bufferView",images:"image",materials:"material",meshes:"mesh",nodes:"node",samplers:"sampler",scenes:"scene",skins:"skin",textures:"texture"},OL={accessor:"accessors",animations:"animation",buffer:"buffers",bufferView:"bufferViews",image:"images",material:"materials",mesh:"meshes",node:"nodes",sampler:"samplers",scene:"scenes",skin:"skins",texture:"textures"};class TL{constructor(t){this.idToIndexMap={animations:{},accessors:{},buffers:{},bufferViews:{},images:{},materials:{},meshes:{},nodes:{},samplers:{},scenes:{},skins:{},textures:{}}}normalize(t,e){this.json=t.json;const n=t.json;switch(n.asset&&n.asset.version){case"2.0":return;case void 0:case"1.0":break;default:return void console.warn(`glTF: Unknown version ${n.asset.version}`)}if(!e.normalize)throw new Error("glTF v1 is not supported.");console.warn("Converting glTF v1 to glTF v2 format. This is experimental and may fail."),this._addAsset(n),this._convertTopLevelObjectsToArrays(n),function(t){const e=new qN(t),{json:n}=e;for(const i of n.images||[]){const t=e.removeObjectExtension(i,XN);t&&Object.assign(i,t)}n.buffers&&n.buffers[0]&&delete n.buffers[0].uri,e.removeExtension(XN)}(t),this._convertObjectIdsToArrayIndices(n),this._updateObjects(n),this._updateMaterial(n)}_addAsset(t){t.asset=t.asset||{},t.asset.version="2.0",t.asset.generator=t.asset.generator||"Normalized to glTF 2.0 by loaders.gl"}_convertTopLevelObjectsToArrays(t){for(const e in CL)this._convertTopLevelObjectToArray(t,e)}_convertTopLevelObjectToArray(t,e){const n=t[e];if(n&&!Array.isArray(n)){t[e]=[];for(const i in n){const r=n[i];r.id=r.id||i;const s=t[e].length;t[e].push(r),this.idToIndexMap[e][i]=s}}}_convertObjectIdsToArrayIndices(t){for(const e in CL)this._convertIdsToIndices(t,e);"scene"in t&&(t.scene=this._convertIdToIndex(t.scene,"scene"));for(const e of t.textures)this._convertTextureIds(e);for(const e of t.meshes)this._convertMeshIds(e);for(const e of t.nodes)this._convertNodeIds(e);for(const e of t.scenes)this._convertSceneIds(e)}_convertTextureIds(t){t.source&&(t.source=this._convertIdToIndex(t.source,"image"))}_convertMeshIds(t){for(const e of t.primitives){const{attributes:t,indices:n,material:i}=e;for(const e in t)t[e]=this._convertIdToIndex(t[e],"accessor");n&&(e.indices=this._convertIdToIndex(n,"accessor")),i&&(e.material=this._convertIdToIndex(i,"material"))}}_convertNodeIds(t){t.children&&(t.children=t.children.map(t=>this._convertIdToIndex(t,"node"))),t.meshes&&(t.meshes=t.meshes.map(t=>this._convertIdToIndex(t,"mesh")))}_convertSceneIds(t){t.nodes&&(t.nodes=t.nodes.map(t=>this._convertIdToIndex(t,"node")))}_convertIdsToIndices(t,e){t[e]||(console.warn(`gltf v1: json doesn't contain attribute ${e}`),t[e]=[]);for(const n of t[e])for(const t in n){const e=this._convertIdToIndex(n[t],t);n[t]=e}}_convertIdToIndex(t,e){const n=OL[e];if(n in this.idToIndexMap){const i=this.idToIndexMap[n][t];if(!Number.isFinite(i))throw new Error(`gltf v1: failed to resolve ${e} with id ${t}`);return i}return t}_updateObjects(t){for(const e of this.json.buffers)delete e.type}_updateMaterial(t){for(const e of t.materials){e.pbrMetallicRoughness={baseColorFactor:[1,1,1,1],metallicFactor:1,roughnessFactor:1};const n=e.values&&e.values.tex,i=t.textures.findIndex(t=>t.id===n);-1!==i&&(e.pbrMetallicRoughness.baseColorTexture={index:i})}}}function kL(t,e={}){return(new TL).normalize(t,e)}const AL={SCALAR:1,VEC2:2,VEC3:3,VEC4:4,MAT2:4,MAT3:9,MAT4:16},PL={5120:1,5121:1,5122:2,5123:2,5125:4,5126:4},ML={TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,REPEAT:10497,LINEAR:9729,NEAREST_MIPMAP_LINEAR:9986},IL={magFilter:ML.TEXTURE_MAG_FILTER,minFilter:ML.TEXTURE_MIN_FILTER,wrapS:ML.TEXTURE_WRAP_S,wrapT:ML.TEXTURE_WRAP_T},DL={[ML.TEXTURE_MAG_FILTER]:ML.LINEAR,[ML.TEXTURE_MIN_FILTER]:ML.NEAREST_MIPMAP_LINEAR,[ML.TEXTURE_WRAP_S]:ML.REPEAT,[ML.TEXTURE_WRAP_]:ML.REPEAT};class RL{postProcess(t,e={}){const{json:n,buffers:i=[],images:r=[],baseUri:s=""}=t;return FR(n),this.baseUri=s,this.json=n,this.buffers=i,this.images=r,this._resolveTree(this.json,e),this.json}_resolveTree(t,e={}){t.bufferViews&&(t.bufferViews=t.bufferViews.map((t,e)=>this._resolveBufferView(t,e))),t.images&&(t.images=t.images.map((t,e)=>this._resolveImage(t,e))),t.samplers&&(t.samplers=t.samplers.map((t,e)=>this._resolveSampler(t,e))),t.textures&&(t.textures=t.textures.map((t,e)=>this._resolveTexture(t,e))),t.accessors&&(t.accessors=t.accessors.map((t,e)=>this._resolveAccessor(t,e))),t.materials&&(t.materials=t.materials.map((t,e)=>this._resolveMaterial(t,e))),t.meshes&&(t.meshes=t.meshes.map((t,e)=>this._resolveMesh(t,e))),t.nodes&&(t.nodes=t.nodes.map((t,e)=>this._resolveNode(t,e))),t.skins&&(t.skins=t.skins.map((t,e)=>this._resolveSkin(t,e))),t.scenes&&(t.scenes=t.scenes.map((t,e)=>this._resolveScene(t,e))),void 0!==t.scene&&(t.scene=t.scenes[this.json.scene])}getScene(t){return this._get("scenes",t)}getNode(t){return this._get("nodes",t)}getSkin(t){return this._get("skins",t)}getMesh(t){return this._get("meshes",t)}getMaterial(t){return this._get("materials",t)}getAccessor(t){return this._get("accessors",t)}getCamera(t){return null}getTexture(t){return this._get("textures",t)}getSampler(t){return this._get("samplers",t)}getImage(t){return this._get("images",t)}getBufferView(t){return this._get("bufferViews",t)}getBuffer(t){return this._get("buffers",t)}_get(t,e){if("object"==typeof e)return e;const n=this.json[t]&&this.json[t][e];return n||console.warn(`glTF file error: Could not find ${t}[${e}]`),n}_resolveScene(t,e){return t.id=t.id||`scene-${e}`,t.nodes=(t.nodes||[]).map(t=>this.getNode(t)),t}_resolveNode(t,e){return t.id=t.id||`node-${e}`,t.children&&(t.children=t.children.map(t=>this.getNode(t))),void 0!==t.mesh?t.mesh=this.getMesh(t.mesh):void 0!==t.meshes&&t.meshes.length&&(t.mesh=t.meshes.reduce((t,e)=>{const n=this.getMesh(e);return t.id=n.id,t.primitives=t.primitives.concat(n.primitives),t},{primitives:[]})),void 0!==t.camera&&(t.camera=this.getCamera(t.camera)),void 0!==t.skin&&(t.skin=this.getSkin(t.skin)),t}_resolveSkin(t,e){return t.id=t.id||`skin-${e}`,t.inverseBindMatrices=this.getAccessor(t.inverseBindMatrices),t}_resolveMesh(t,e){return t.id=t.id||`mesh-${e}`,t.primitives&&(t.primitives=t.primitives.map(t=>{const e=(t=wt({},t)).attributes;t.attributes={};for(const n in e)t.attributes[n]=this.getAccessor(e[n]);return void 0!==t.indices&&(t.indices=this.getAccessor(t.indices)),void 0!==t.material&&(t.material=this.getMaterial(t.material)),t})),t}_resolveMaterial(t,e){if(t.id=t.id||`material-${e}`,t.normalTexture&&(t.normalTexture=wt({},t.normalTexture),t.normalTexture.texture=this.getTexture(t.normalTexture.index)),t.occlusionTexture&&(t.occlustionTexture=wt({},t.occlustionTexture),t.occlusionTexture.texture=this.getTexture(t.occlusionTexture.index)),t.emissiveTexture&&(t.emmisiveTexture=wt({},t.emmisiveTexture),t.emissiveTexture.texture=this.getTexture(t.emissiveTexture.index)),t.emissiveFactor||(t.emissiveFactor=t.emmisiveTexture?[1,1,1]:[0,0,0]),t.pbrMetallicRoughness){t.pbrMetallicRoughness=wt({},t.pbrMetallicRoughness);const e=t.pbrMetallicRoughness;e.baseColorTexture&&(e.baseColorTexture=wt({},e.baseColorTexture),e.baseColorTexture.texture=this.getTexture(e.baseColorTexture.index)),e.metallicRoughnessTexture&&(e.metallicRoughnessTexture=wt({},e.metallicRoughnessTexture),e.metallicRoughnessTexture.texture=this.getTexture(e.metallicRoughnessTexture.index))}return t}_resolveAccessor(t,e){if(t.id=t.id||`accessor-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView)),t.bytesPerComponent=function(t){return PL[t]}(t.componentType),t.components=function(t){return AL[t]}(t.type),t.bytesPerElement=t.bytesPerComponent*t.components,t.bufferView){const e=t.bufferView.buffer,{ArrayType:n,byteLength:i}=GN(t,t.bufferView),r=(t.bufferView.byteOffset||0)+(t.byteOffset||0)+e.byteOffset,s=e.arrayBuffer.slice(r,r+i);t.value=new n(s)}return t}_resolveTexture(t,e){return t.id=t.id||`texture-${e}`,t.sampler="sampler"in t?this.getSampler(t.sampler):DL,t.source=this.getImage(t.source),t}_resolveSampler(t,e){t.id=t.id||`sampler-${e}`,t.parameters={};for(const n in t){const e=this._enumSamplerParameter(n);void 0!==e&&(t.parameters[e]=t[n])}return t}_enumSamplerParameter(t){return IL[t]}_resolveImage(t,e){t.id=t.id||`image-${e}`,void 0!==t.bufferView&&(t.bufferView=this.getBufferView(t.bufferView));const n=this.images[e];return n&&(t.image=n),t}_resolveBufferView(t,e){t.id=t.id||`bufferView-${e}`;const n=t.buffer;t.buffer=this.buffers[n];let i=this.buffers[n].byteOffset||0;return"byteOffset"in t&&(i+=t.byteOffset),t.data=new Uint8Array(this.buffers[n].arrayBuffer,i,t.byteLength),t}_resolveCamera(t,e){return t.id=t.id||`camera-${e}`,t}}function NL(t,e){return(new RL).postProcess(t,e)}const LL=1735152710,jL=!0;function FL(t,e,n,i){const r=new Uint8Array(e.buffer,n,i),s=new TextDecoder("utf8").decode(r);return t.json=JSON.parse(s),NN(i,4)}function BL(t,e,n,i){return t.header.hasBinChunk=!0,t.binChunks.push({byteOffset:n,byteLength:i,arrayBuffer:e.buffer}),NN(i,4)}function VL(t,e){return zL.apply(this,arguments)}function zL(){return(zL=gS(function*(t,e,n=0,i,r){var s,o,a,l;UL(t,e,n,i),kL(t,{normalize:null==i||null===(s=i.gltf)||void 0===s?void 0:s.normalize});const c=[];if(null!=i&&null!==(o=i.gltf)&&void 0!==o&&o.loadBuffers&&t.json.buffers&&(yield HL(t,i,r)),null!=i&&null!==(a=i.gltf)&&void 0!==a&&a.loadImages){const e=GL(t,i,r);c.push(e)}const u=SL(t,i,r);return c.push(u),yield Promise.all(c),null!=i&&null!==(l=i.gltf)&&void 0!==l&&l.postProcess?NL(t,i):t})).apply(this,arguments)}function UL(t,e,n,i){if(i.uri&&(t.baseUri=i.uri),e instanceof ArrayBuffer&&!function(t,e=0,n={}){const i=new DataView(t),{magic:r=LL}=n,s=i.getUint32(e,!1);return s===r||s===LL}(e,n,i)&&(e=(new TextDecoder).decode(e)),"string"==typeof e)t.json=function(t){try{return JSON.parse(t)}catch(e){throw new Error(`Failed to parse JSON from data starting with "${function(t,e=5){return"string"==typeof t?t.slice(0,e):ArrayBuffer.isView(t)?jR(t.buffer,t.byteOffset,e):t instanceof ArrayBuffer?jR(t,0,e):""}(t)}"`)}}(e);else if(e instanceof ArrayBuffer){const r={};n=function(t,e,n=0,i={}){const r=new DataView(e),s=function(t,e=0){return`${String.fromCharCode(t.getUint8(e+0))}${String.fromCharCode(t.getUint8(e+1))}${String.fromCharCode(t.getUint8(e+2))}${String.fromCharCode(t.getUint8(e+3))}`}(r,n+0),o=r.getUint32(n+4,jL),a=r.getUint32(n+8,jL);switch(Object.assign(t,{header:{byteOffset:n,byteLength:a,hasBinChunk:!1},type:s,version:o,json:{},binChunks:[]}),n+=12,t.version){case 1:return function(t,e,n){Nk(t.header.byteLength>20);const i=e.getUint32(n+0,jL),r=e.getUint32(n+4,jL);return n+=8,Nk(0===r),FL(t,e,n,i),(n+=i)+BL(t,e,n,t.header.byteLength)}(t,r,n);case 2:return function(t,e,n,i){return Nk(t.header.byteLength>20),function(t,e,n,i){for(;n+8<=t.header.byteLength;){const r=e.getUint32(n+0,jL),s=e.getUint32(n+4,jL);switch(n+=8,s){case 1313821514:FL(t,e,n,r);break;case 5130562:BL(t,e,n,r);break;case 0:i.strict||FL(t,e,n,r);break;case 1:i.strict||BL(t,e,n,r)}n+=NN(r,4)}}(t,e,n,{}),n+t.header.byteLength}(t,r,n);default:throw new Error(`Invalid GLB version ${t.version}. Only supports v1 and v2.`)}}(r,e,n,i.glb),FR("glTF"===r.type,`Invalid GLB magic string ${r.type}`),t._glb=r,t.json=r.json}else FR(!1,"GLTF: must be ArrayBuffer or string");if(t.buffers=new Array((t.json.buffers||[]).length).fill(null),t._glb&&t._glb.header.hasBinChunk){const{binChunks:e}=t._glb;t.buffers[0]={arrayBuffer:e[0].arrayBuffer,byteOffset:e[0].byteOffset,byteLength:e[0].byteLength}}t.images=new Array((t.json.images||[]).length).fill({})}function HL(t,e,n){return $L.apply(this,arguments)}function $L(){return($L=gS(function*(t,e,n){for(let s=0;s{t.traverse(t=>{Object.values(t.model.getUniforms()).forEach(t=>{!1===t.loaded&&e.push(t)})})}),yield ZL(()=>e.some(t=>!t.loaded))})).apply(this,arguments)}function ZL(t){return JL.apply(this,arguments)}function JL(){return(JL=gS(function*(t){for(;t();)yield new Promise(t=>requestAnimationFrame(t))})).apply(this,arguments)}const tj=[255,255,255,255],ej={scenegraph:{type:"object",value:null,async:!0},getScene:t=>t&&t.scenes?"object"==typeof t.scene?t.scene:t.scenes[t.scene||0]:t,getAnimator:t=>t&&t.animator,_animations:null,sizeScale:{type:"number",value:1,min:0},sizeMinPixels:{type:"number",min:0,value:0},sizeMaxPixels:{type:"number",min:0,value:Number.MAX_SAFE_INTEGER},getPosition:{type:"accessor",value:t=>t.position},getColor:{type:"accessor",value:tj},_lighting:"flat",_imageBasedLightingEnvironment:null,getOrientation:{type:"accessor",value:[0,0,0]},getScale:{type:"accessor",value:[1,1,1]},getTranslation:{type:"accessor",value:[0,0,0]},getTransformMatrix:{type:"accessor",value:[]},loaders:[YL]};let nj=(()=>{class t extends LP{getShaders(){const t=[qD,eR];return"pbr"===this.props._lighting&&t.push(gR),{vs:"#version 300 es\nin vec3 instancePositions;\nin vec3 instancePositions64Low;\nin vec4 instanceColors;\nin vec3 instancePickingColors;\nin mat3 instanceModelMatrix;\nin vec3 instanceTranslation;\nuniform float sizeScale;\nuniform float sizeMinPixels;\nuniform float sizeMaxPixels;\nuniform mat4 sceneModelMatrix;\nuniform bool composeModelMatrix;\nin vec4 POSITION;\n\n#ifdef HAS_UV\n in vec2 TEXCOORD_0;\n#endif\n\n#ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n in vec4 NORMAL;\n #endif\n#endif\nout vec4 vColor;\n#ifndef MODULE_PBR\n #ifdef HAS_UV\n out vec2 vTEXCOORD_0;\n #endif\n#endif\nvoid main(void) {\n #if defined(HAS_UV) && !defined(MODULE_PBR)\n vTEXCOORD_0 = TEXCOORD_0;\n geometry.uv = vTEXCOORD_0;\n #endif\n\n geometry.worldPosition = instancePositions;\n geometry.pickingColor = instancePickingColors;\n\n #ifdef MODULE_PBR\n #ifdef HAS_NORMALS\n pbr_vNormal = project_normal(instanceModelMatrix * (sceneModelMatrix * vec4(NORMAL.xyz, 0.0)).xyz);\n geometry.normal = pbr_vNormal;\n #endif\n\n #ifdef HAS_UV\n pbr_vUV = TEXCOORD_0;\n #else\n pbr_vUV = vec2(0., 0.);\n #endif\n geometry.uv = pbr_vUV;\n #endif\n\n float originalSize = project_size_to_pixel(sizeScale);\n float clampedSize = clamp(originalSize, sizeMinPixels, sizeMaxPixels);\n\n vec3 pos = (instanceModelMatrix * (sceneModelMatrix * POSITION).xyz) * sizeScale * (clampedSize / originalSize) + instanceTranslation;\n if(composeModelMatrix) {\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(pos + instancePositions, instancePositions64Low, vec3(0.0), geometry.position);\n }\n else {\n pos = project_size(pos);\n DECKGL_FILTER_SIZE(pos, geometry);\n gl_Position = project_position_to_clipspace(instancePositions, instancePositions64Low, pos, geometry.position);\n }\n DECKGL_FILTER_GL_POSITION(gl_Position, geometry);\n\n #ifdef MODULE_PBR\n pbr_vPosition = geometry.position.xyz;\n #endif\n\n vColor = instanceColors;\n DECKGL_FILTER_COLOR(vColor, geometry);\n}\n",fs:"#version 300 es\nuniform float opacity;\nin vec4 vColor;\n\nout vec4 fragmentColor;\n#ifndef MODULE_PBR\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n in vec2 vTEXCOORD_0;\n uniform sampler2D u_BaseColorSampler;\n #endif\n#endif\n\nvoid main(void) {\n #ifdef MODULE_PBR\n fragmentColor = vColor * pbr_filterColor(vec4(0));\n geometry.uv = pbr_vUV;\n #else\n #if defined(HAS_UV) && defined(HAS_BASECOLORMAP)\n fragmentColor = vColor * texture2D(u_BaseColorSampler, vTEXCOORD_0);\n geometry.uv = vTEXCOORD_0;\n #else\n fragmentColor = vColor;\n #endif\n #endif\n\n fragmentColor.a *= opacity;\n DECKGL_FILTER_COLOR(fragmentColor, geometry);\n}\n",modules:t}}initializeState(){this.getAttributeManager().addInstanced({instancePositions:{size:3,type:5130,fp64:this.use64bitPositions(),accessor:"getPosition",transition:!0},instanceColors:{type:5121,size:this.props.colorFormat.length,accessor:"getColor",normalized:!0,defaultValue:tj,transition:!0},instanceModelMatrix:cR})}updateState(t){super.updateState(t);const{props:e,oldProps:n}=t;e.scenegraph!==n.scenegraph?this._updateScenegraph(e):e._animations!==n._animations&&this._applyAnimationsProp(this.state.scenegraph,this.state.animator,e._animations)}finalizeState(){super.finalizeState(),this._deleteScenegraph()}_updateScenegraph(t){const{gl:e}=this.context;let n=null;if(t.scenegraph instanceof mR)n={scenes:[t.scenegraph]};else if(t.scenegraph&&!t.scenegraph.gltf){const i=t.scenegraph,r=function(t,e,n){const i=new LR(t,n);return{scenes:i.instantiate(e),animator:i.createAnimator()}}(e,i,this._getModelOptions());n=wt({gltf:i},r),function(t){return QL.apply(this,arguments)}(r).then(()=>this.setNeedsRedraw())}else t.scenegraph&&(Mw.deprecated("ScenegraphLayer.props.scenegraph","Use GLTFLoader instead of GLTFScenegraphLoader")(),n=t.scenegraph);const i={layer:this,gl:e},r=t.getScene(n,i),s=t.getAnimator(n,i);r instanceof mR?(this._deleteScenegraph(),this._applyAllAttributes(r),this._applyAnimationsProp(r,s,t._animations),this.setState({scenegraph:r,animator:s})):null!==r&&Mw.warn("invalid scenegraph:",r)()}_applyAllAttributes(t){if(this.state.attributesAvailable){const e=this.getAttributeManager().getAttributes();t.traverse(t=>{this._setModelAttributes(t.model,e)})}}_applyAnimationsProp(t,e,n){if(!t||!e||!n)return;const i=e.getAnimations();Object.keys(n).sort().forEach(t=>{const e=n[t];if("*"===t)i.forEach(t=>{Object.assign(t,e)});else if(Number.isFinite(Number(t))){const n=Number(t);n>=0&&ne===t);n?Object.assign(n,e):Mw.warn("animation ".concat(t," not found"))()}})}_deleteScenegraph(){const{scenegraph:t}=this.state;t instanceof mR&&t.delete()}_getModelOptions(){const{_imageBasedLightingEnvironment:t}=this.props;let e=null;return t&&(e="function"==typeof t?t({gl:this.context.gl,layer:this}):t),{gl:this.context.gl,waitForFullLoad:!0,imageBasedLightingEnvironment:e,modelOptions:wt({isInstanced:!0,transpileToGLSL100:!Fw(this.context.gl)},this.getShaders()),useTangents:!1}}updateAttributes(t){this.setState({attributesAvailable:!0}),this.state.scenegraph&&this.state.scenegraph.traverse(e=>{this._setModelAttributes(e.model,t)})}draw({moduleParameters:t=null,parameters:e={},context:n}){if(!this.state.scenegraph)return;this.props._animations&&this.state.animator&&(this.state.animator.animate(n.timeline.getTime()),this.setNeedsRedraw());const{viewport:i}=this.context,{sizeScale:r,sizeMinPixels:s,sizeMaxPixels:o,opacity:a,coordinateSystem:l}=this.props,c=this.getNumInstances();this.state.scenegraph.traverse((n,{worldMatrix:u})=>{n.model.setInstanceCount(c),n.updateModuleSettings(t),n.draw({parameters:e,uniforms:{sizeScale:r,opacity:a,sizeMinPixels:s,sizeMaxPixels:o,composeModelMatrix:uR(i,l),sceneModelMatrix:u,u_Camera:n.model.getUniforms().project_uCameraPosition}})})}}return t.layerName="ScenegraphLayer",t.defaultProps=ej,t})();const ij=new Uint16Array([0,1,2,0,2,3,4,5,6,4,6,7,8,9,10,8,10,11,12,13,14,12,14,15,16,17,18,16,18,19,20,21,22,20,22,23]),rj=new Float32Array([-1,-1,1,1,-1,1,1,1,1,-1,1,1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,1,-1,-1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,-1,-1,1,-1,1,-1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,-1,1,-1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1]),sj=new Float32Array([0,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,1,0,0,1,0,0,1,0,0,1,0,0,-1,0,0,-1,0,0,-1,0,0,-1,0,0]),oj=new Float32Array([0,0,1,0,1,1,0,1,1,0,1,1,0,1,0,0,0,1,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1,0,1,1,0,1,0,0,0,0,1,0,1,1,0,1]),aj={POSITION:{size:3,value:new Float32Array(rj)},NORMAL:{size:3,value:new Float32Array(sj)},TEXCOORD_0:{size:2,value:new Float32Array(oj)}};class lj extends iR{constructor(t={}){const{id:e=Fx("cube-geometry")}=t;super(ii(wt({},t),{id:e,indices:{size:1,value:new Uint16Array(ij)},attributes:wt(wt({},aj),t.attributes)}))}}class cj{constructor(t=[0,0,0,0,0,0,0,0,0]){this.elements=void 0,this.elements=t}identity(){const t=this.elements;t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1}setZero(){const t=this.elements;t[0]=0,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t[8]=0}setTrace(t){const e=this.elements;e[0]=t.x,e[4]=t.y,e[8]=t.z}getTrace(t=new hj){const e=this.elements;return t.x=e[0],t.y=e[4],t.z=e[8],t}vmult(t,e=new hj){const n=this.elements,i=t.x,r=t.y,s=t.z;return e.x=n[0]*i+n[1]*r+n[2]*s,e.y=n[3]*i+n[4]*r+n[5]*s,e.z=n[6]*i+n[7]*r+n[8]*s,e}smult(t){for(let e=0;e0){const t=1/i;this.x*=t,this.y*=t,this.z*=t}else this.x=0,this.y=0,this.z=0;return i}unit(t=new hj){const e=this.x,n=this.y,i=this.z;let r=Math.sqrt(e*e+n*n+i*i);return r>0?(r=1/r,t.x=e*r,t.y=n*r,t.z=i*r):(t.x=1,t.y=0,t.z=0),t}length(){const t=this.x,e=this.y,n=this.z;return Math.sqrt(t*t+e*e+n*n)}lengthSquared(){return this.dot(this)}distanceTo(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return Math.sqrt((r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i))}distanceSquared(t){const e=this.x,n=this.y,i=this.z,r=t.x,s=t.y,o=t.z;return(r-e)*(r-e)+(s-n)*(s-n)+(o-i)*(o-i)}scale(t,e=new hj){const n=this.y,i=this.z;return e.x=t*this.x,e.y=t*n,e.z=t*i,e}vmul(t,e=new hj){return e.x=t.x*this.x,e.y=t.y*this.y,e.z=t.z*this.z,e}addScaledVector(t,e,n=new hj){return n.x=this.x+t*e.x,n.y=this.y+t*e.y,n.z=this.z+t*e.z,n}dot(t){return this.x*t.x+this.y*t.y+this.z*t.z}isZero(){return 0===this.x&&0===this.y&&0===this.z}negate(t=new hj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t}tangents(t,e){const n=this.length();if(n>0){const i=dj,r=1/n;i.set(this.x*r,this.y*r,this.z*r);const s=pj;Math.abs(i.x)<.9?(s.set(1,0,0),i.cross(s,t)):(s.set(0,1,0),i.cross(s,t)),i.cross(t,e)}else t.set(1,0,0),e.set(0,1,0)}toString(){return this.x+","+this.y+","+this.z}toArray(){return[this.x,this.y,this.z]}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this}lerp(t,e,n){const i=this.x,r=this.y,s=this.z;n.x=i+(t.x-i)*e,n.y=r+(t.y-r)*e,n.z=s+(t.z-s)*e}almostEquals(t,e=1e-6){return!(Math.abs(this.x-t.x)>e||Math.abs(this.y-t.y)>e||Math.abs(this.z-t.z)>e)}almostZero(t=1e-6){return!(Math.abs(this.x)>t||Math.abs(this.y)>t||Math.abs(this.z)>t)}isAntiparallelTo(t,e){return this.negate(fj),fj.almostEquals(t,e)}clone(){return new hj(this.x,this.y,this.z)}}hj.ZERO=void 0,hj.UNIT_X=void 0,hj.UNIT_Y=void 0,hj.UNIT_Z=void 0,hj.ZERO=new hj(0,0,0),hj.UNIT_X=new hj(1,0,0),hj.UNIT_Y=new hj(0,1,0),hj.UNIT_Z=new hj(0,0,1);const dj=new hj,pj=new hj,fj=new hj;class gj{constructor(t={}){this.lowerBound=void 0,this.upperBound=void 0,this.lowerBound=new hj,this.upperBound=new hj,t.lowerBound&&this.lowerBound.copy(t.lowerBound),t.upperBound&&this.upperBound.copy(t.upperBound)}setFromPoints(t,e,n,i){const r=this.lowerBound,s=this.upperBound,o=n;r.copy(t[0]),o&&o.vmult(r,r),s.copy(r);for(let a=1;as.x&&(s.x=e.x),e.xs.y&&(s.y=e.y),e.ys.z&&(s.z=e.z),e.z=r.x&&e.y<=i.y&&n.y>=r.y&&e.z<=i.z&&n.z>=r.z}getCorners(t,e,n,i,r,s,o,a){const l=this.lowerBound,c=this.upperBound;t.copy(l),e.set(c.x,l.y,l.z),n.set(c.x,c.y,l.z),i.set(l.x,c.y,c.z),r.set(c.x,l.y,c.z),s.set(l.x,c.y,l.z),o.set(l.x,l.y,c.z),a.copy(c)}toLocalFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToLocal(e,e)}return e.setFromPoints(n)}toWorldFrame(t,e){const n=bj;this.getCorners(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7]);for(let i=0;8!==i;i++){const e=n[i];t.pointToWorld(e,e)}return e.setFromPoints(n)}overlapsRay(t){const{direction:e,from:n}=t,i=1/e.x,r=1/e.y,s=1/e.z,o=(this.lowerBound.x-n.x)*i,a=(this.upperBound.x-n.x)*i,l=(this.lowerBound.y-n.y)*r,c=(this.upperBound.y-n.y)*r,u=(this.lowerBound.z-n.z)*s,h=(this.upperBound.z-n.z)*s,d=Math.max(Math.max(Math.min(o,a),Math.min(l,c)),Math.min(u,h)),p=Math.min(Math.min(Math.max(o,a),Math.max(l,c)),Math.max(u,h));return!(p<0||d>p)}}const mj=new hj,bj=[new hj,new hj,new hj,new hj,new hj,new hj,new hj,new hj];class yj{constructor(t=0,e=0,n=0,i=1){this.x=void 0,this.y=void 0,this.z=void 0,this.w=void 0,this.x=t,this.y=e,this.z=n,this.w=i}set(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this}toString(){return this.x+","+this.y+","+this.z+","+this.w}toArray(){return[this.x,this.y,this.z,this.w]}setFromAxisAngle(t,e){const n=Math.sin(.5*e);return this.x=t.x*n,this.y=t.y*n,this.z=t.z*n,this.w=Math.cos(.5*e),this}toAxisAngle(t=new hj){this.normalize();const e=2*Math.acos(this.w),n=Math.sqrt(1-this.w*this.w);return n<.001?(t.x=this.x,t.y=this.y,t.z=this.z):(t.x=this.x/n,t.y=this.y/n,t.z=this.z/n),[t,e]}setFromVectors(t,e){if(t.isAntiparallelTo(e)){const e=vj;t.tangents(e,_j),this.setFromAxisAngle(e,Math.PI)}else{const n=t.cross(e);this.x=n.x,this.y=n.y,this.z=n.z,this.w=Math.sqrt(kr(t.length(),2)*kr(e.length(),2))+t.dot(e),this.normalize()}return this}mult(t,e=new yj){const n=this.x,i=this.y,r=this.z,s=this.w,o=t.x,a=t.y,l=t.z,c=t.w;return e.x=n*c+s*o+i*l-r*a,e.y=i*c+s*a+r*o-n*l,e.z=r*c+s*l+n*a-i*o,e.w=s*c-n*o-i*a-r*l,e}inverse(t=new yj){const e=this.x,n=this.y,i=this.z,r=this.w;this.conjugate(t);const s=1/(e*e+n*n+i*i+r*r);return t.x*=s,t.y*=s,t.z*=s,t.w*=s,t}conjugate(t=new yj){return t.x=-this.x,t.y=-this.y,t.z=-this.z,t.w=this.w,t}normalize(){let t=Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(t=1/t,this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}normalizeFast(){const t=(3-(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w))/2;return 0===t?(this.x=0,this.y=0,this.z=0,this.w=0):(this.x*=t,this.y*=t,this.z*=t,this.w*=t),this}vmult(t,e=new hj){const n=t.x,i=t.y,r=t.z,s=this.x,o=this.y,a=this.z,l=this.w,c=l*n+o*r-a*i,u=l*i+a*n-s*r,h=l*r+s*i-o*n,d=-s*n-o*i-a*r;return e.x=c*l+d*-s+u*-a-h*-o,e.y=u*l+d*-o+h*-s-c*-a,e.z=h*l+d*-a+c*-o-u*-s,e}copy(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this}toEuler(t,e="YZX"){let n,i,r;const s=this.x,o=this.y,a=this.z,l=this.w;switch(e){case"YZX":const t=s*o+a*l;if(t>.499&&(n=2*Math.atan2(s,l),i=Math.PI/2,r=0),t<-.499&&(n=-2*Math.atan2(s,l),i=-Math.PI/2,r=0),void 0===n){const e=s*s,c=a*a;n=Math.atan2(2*o*l-2*s*a,1-o*o*2-2*c),i=Math.asin(2*t),r=Math.atan2(2*s*l-2*o*a,1-2*e-2*c)}break;default:throw new Error("Euler order "+e+" not supported yet.")}t.y=n,t.z=i,t.x=r}setFromEuler(t,e,n,i="XYZ"){const r=Math.cos(t/2),s=Math.cos(e/2),o=Math.cos(n/2),a=Math.sin(t/2),l=Math.sin(e/2),c=Math.sin(n/2);return"XYZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"YXZ"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"ZXY"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o-a*l*c):"ZYX"===i?(this.x=a*s*o-r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o+a*l*c):"YZX"===i?(this.x=a*s*o+r*l*c,this.y=r*l*o+a*s*c,this.z=r*s*c-a*l*o,this.w=r*s*o-a*l*c):"XZY"===i&&(this.x=a*s*o-r*l*c,this.y=r*l*o-a*s*c,this.z=r*s*c+a*l*o,this.w=r*s*o+a*l*c),this}clone(){return new yj(this.x,this.y,this.z,this.w)}slerp(t,e,n=new yj){const i=this.x,r=this.y,s=this.z,o=this.w;let a,l,c,u,h,d=t.x,p=t.y,f=t.z,g=t.w;return l=i*d+r*p+s*f+o*g,l<0&&(l=-l,d=-d,p=-p,f=-f,g=-g),1-l>1e-6?(a=Math.acos(l),c=Math.sin(a),u=Math.sin((1-e)*a)/c,h=Math.sin(e*a)/c):(u=1-e,h=e),n.x=u*i+h*d,n.y=u*r+h*p,n.z=u*s+h*f,n.w=u*o+h*g,n}integrate(t,e,n,i=new yj){const r=t.x*n.x,s=t.y*n.y,o=t.z*n.z,a=this.x,l=this.y,c=this.z,u=this.w,h=.5*e;return i.x+=h*(r*u+s*c-o*l),i.y+=h*(s*u+o*a-r*c),i.z+=h*(o*u+r*l-s*a),i.w+=h*(-r*a-s*l-o*c),i}}const vj=new hj,_j=new hj,wj={SPHERE:1,PLANE:2,BOX:4,COMPOUND:8,CONVEXPOLYHEDRON:16,HEIGHTFIELD:32,PARTICLE:64,CYLINDER:128,TRIMESH:256};let xj=(()=>{class t{constructor(e={}){this.id=void 0,this.type=void 0,this.boundingSphereRadius=void 0,this.collisionResponse=void 0,this.collisionFilterGroup=void 0,this.collisionFilterMask=void 0,this.material=void 0,this.body=void 0,this.id=t.idCounter++,this.type=e.type||0,this.boundingSphereRadius=0,this.collisionResponse=!e.collisionResponse||e.collisionResponse,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:1,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.material=e.material?e.material:null,this.body=null}updateBoundingSphereRadius(){throw"computeBoundingSphereRadius() not implemented for shape type "+this.type}volume(){throw"volume() not implemented for shape type "+this.type}calculateLocalInertia(t,e){throw"calculateLocalInertia() not implemented for shape type "+this.type}calculateWorldAABB(t,e,n,i){throw"calculateWorldAABB() not implemented for shape type "+this.type}}return t.idCounter=0,t.types=wj,t})();class Sj{constructor(t={}){this.position=void 0,this.quaternion=void 0,this.position=new hj,this.quaternion=new yj,t.position&&this.position.copy(t.position),t.quaternion&&this.quaternion.copy(t.quaternion)}pointToLocal(t,e){return Sj.pointToLocalFrame(this.position,this.quaternion,t,e)}pointToWorld(t,e){return Sj.pointToWorldFrame(this.position,this.quaternion,t,e)}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}static pointToLocalFrame(t,e,n,i=new hj){return n.vsub(t,i),e.conjugate(Ej),Ej.vmult(i,i),i}static pointToWorldFrame(t,e,n,i=new hj){return e.vmult(n,i),i.vadd(t,i),i}static vectorToWorldFrame(t,e,n=new hj){return t.vmult(e,n),n}static vectorToLocalFrame(t,e,n,i=new hj){return e.w*=-1,e.vmult(n,i),e.w*=-1,i}}const Ej=new yj;class Cj extends xj{constructor(t={}){const{vertices:e=[],faces:n=[],normals:i=[],axes:r,boundingSphereRadius:s}=t;super({type:xj.types.CONVEXPOLYHEDRON}),this.vertices=void 0,this.faces=void 0,this.faceNormals=void 0,this.worldVertices=void 0,this.worldVerticesNeedsUpdate=void 0,this.worldFaceNormals=void 0,this.worldFaceNormalsNeedsUpdate=void 0,this.uniqueAxes=void 0,this.uniqueEdges=void 0,this.vertices=e,this.faces=n,this.faceNormals=i,0===this.faceNormals.length&&this.computeNormals(),s?this.boundingSphereRadius=s:this.updateBoundingSphereRadius(),this.worldVertices=[],this.worldVerticesNeedsUpdate=!0,this.worldFaceNormals=[],this.worldFaceNormalsNeedsUpdate=!0,this.uniqueAxes=r?r.slice():null,this.uniqueEdges=[],this.computeEdges()}computeEdges(){const t=this.faces,e=this.vertices,n=this.uniqueEdges;n.length=0;const i=new hj;for(let r=0;r!==t.length;r++){const s=t[r],o=s.length;for(let t=0;t!==o;t++){e[s[t]].vsub(e[s[(t+1)%o]],i),i.normalize();let r=!1;for(let t=0;t!==n.length;t++)if(n[t].almostEquals(i)||n[t].almostEquals(i)){r=!0;break}r||n.push(i.clone())}}}computeNormals(){this.faceNormals.length=this.faces.length;for(let t=0;th&&(h=t,u=p)}const d=[];for(let p=0;p=0&&this.clipFaceAgainstHull(s,t,e,d,o,a,l)}findSeparatingAxis(t,e,n,i,r,s,o,a){const l=new hj,c=new hj,u=new hj,h=new hj,d=new hj,p=new hj;let f=Number.MAX_VALUE;const g=this;if(g.uniqueAxes)for(let m=0;m!==g.uniqueAxes.length;m++){n.vmult(g.uniqueAxes[m],l);const o=g.testSepAxis(l,t,e,n,i,r);if(!1===o)return!1;o0&&s.negate(s),!0}testSepAxis(t,e,n,i,r,s){Cj.project(this,t,n,i,Oj),Cj.project(e,t,r,s,Tj);const o=Oj[0],a=Oj[1],l=Tj[0],c=Tj[1];if(o0?1/e:0,this.material=t.material||null,this.linearDamping="number"==typeof t.linearDamping?t.linearDamping:.01,this.type=e<=0?Dj.STATIC:Dj.DYNAMIC,typeof t.type==typeof Dj.STATIC&&(this.type=t.type),this.allowSleep=void 0===t.allowSleep||t.allowSleep,this.sleepState=Dj.AWAKE,this.sleepSpeedLimit=void 0!==t.sleepSpeedLimit?t.sleepSpeedLimit:.1,this.sleepTimeLimit=void 0!==t.sleepTimeLimit?t.sleepTimeLimit:1,this.timeLastSleepy=0,this.wakeUpAfterNarrowphase=!1,this.torque=new hj,this.quaternion=new yj,this.initQuaternion=new yj,this.previousQuaternion=new yj,this.interpolatedQuaternion=new yj,t.quaternion&&(this.quaternion.copy(t.quaternion),this.initQuaternion.copy(t.quaternion),this.previousQuaternion.copy(t.quaternion),this.interpolatedQuaternion.copy(t.quaternion)),this.angularVelocity=new hj,t.angularVelocity&&this.angularVelocity.copy(t.angularVelocity),this.initAngularVelocity=new hj,this.shapes=[],this.shapeOffsets=[],this.shapeOrientations=[],this.inertia=new hj,this.invInertia=new hj,this.invInertiaWorld=new cj,this.invMassSolve=0,this.invInertiaSolve=new hj,this.invInertiaWorldSolve=new cj,this.fixedRotation=void 0!==t.fixedRotation&&t.fixedRotation,this.angularDamping=void 0!==t.angularDamping?t.angularDamping:.01,this.linearFactor=new hj(1,1,1),t.linearFactor&&this.linearFactor.copy(t.linearFactor),this.angularFactor=new hj(1,1,1),t.angularFactor&&this.angularFactor.copy(t.angularFactor),this.aabb=new gj,this.aabbNeedsUpdate=!0,this.boundingRadius=0,this.wlambda=new hj,this.isTrigger=Boolean(t.isTrigger),t.shape&&this.addShape(t.shape),this.updateMassProperties()}wakeUp(){const t=this.sleepState;this.sleepState=Dj.AWAKE,this.wakeUpAfterNarrowphase=!1,t===Dj.SLEEPING&&this.dispatchEvent(Dj.wakeupEvent)}sleep(){this.sleepState=Dj.SLEEPING,this.velocity.set(0,0,0),this.angularVelocity.set(0,0,0),this.wakeUpAfterNarrowphase=!1}sleepTick(t){if(this.allowSleep){const e=this.sleepState,n=this.velocity.lengthSquared()+this.angularVelocity.lengthSquared(),i=kr(this.sleepSpeedLimit,2);e===Dj.AWAKE&&ni?this.wakeUp():e===Dj.SLEEPY&&t-this.timeLastSleepy>this.sleepTimeLimit&&(this.sleep(),this.dispatchEvent(Dj.sleepEvent))}}updateSolveMassProperties(){this.sleepState===Dj.SLEEPING||this.type===Dj.KINEMATIC?(this.invMassSolve=0,this.invInertiaSolve.setZero(),this.invInertiaWorldSolve.setZero()):(this.invMassSolve=this.invMass,this.invInertiaSolve.copy(this.invInertia),this.invInertiaWorldSolve.copy(this.invInertiaWorld))}pointToLocalFrame(t,e=new hj){return t.vsub(this.position,e),this.quaternion.conjugate().vmult(e,e),e}vectorToLocalFrame(t,e=new hj){return this.quaternion.conjugate().vmult(t,e),e}pointToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e.vadd(this.position,e),e}vectorToWorldFrame(t,e=new hj){return this.quaternion.vmult(t,e),e}addShape(t,e,n){const i=new hj,r=new yj;return e&&i.copy(e),n&&r.copy(n),this.shapes.push(t),this.shapeOffsets.push(i),this.shapeOrientations.push(r),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=this,this}removeShape(t){const e=this.shapes.indexOf(t);return-1===e?(console.warn("Shape does not belong to the body"),this):(this.shapes.splice(e,1),this.shapeOffsets.splice(e,1),this.shapeOrientations.splice(e,1),this.updateMassProperties(),this.updateBoundingRadius(),this.aabbNeedsUpdate=!0,t.body=null,this)}updateBoundingRadius(){const t=this.shapes,e=this.shapeOffsets,n=t.length;let i=0;for(let r=0;r!==n;r++){const n=t[r];n.updateBoundingSphereRadius();const s=e[r].length(),o=n.boundingSphereRadius;s+o>i&&(i=s+o)}this.boundingRadius=i}updateAABB(){const t=this.shapes,e=this.shapeOffsets,n=this.shapeOrientations,i=t.length,r=Rj,s=Nj,o=this.quaternion,a=this.aabb,l=Lj;for(let c=0;c!==i;c++){const i=t[c];o.vmult(e[c],r),r.vadd(this.position,r),o.mult(n[c],s),i.calculateWorldAABB(r,s,l.lowerBound,l.upperBound),0===c?a.copy(l):a.extend(l)}this.aabbNeedsUpdate=!1}updateInertiaWorld(t){const e=this.invInertia;if(e.x!==e.y||e.y!==e.z||t){const t=jj,n=Fj;t.setRotationFromQuaternion(this.quaternion),t.transpose(n),t.scale(e,t),t.mmult(n,this.invInertiaWorld)}}applyForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=Bj;e.cross(t,n),this.force.vadd(t,this.force),this.torque.vadd(n,this.torque)}applyLocalForce(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=Vj,i=zj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyForce(n,i)}applyTorque(t){this.type===Dj.DYNAMIC&&(this.sleepState===Dj.SLEEPING&&this.wakeUp(),this.torque.vadd(t,this.torque))}applyImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;this.sleepState===Dj.SLEEPING&&this.wakeUp();const n=e,i=Uj;i.copy(t),i.scale(this.invMass,i),this.velocity.vadd(i,this.velocity);const r=Hj;n.cross(t,r),this.invInertiaWorld.vmult(r,r),this.angularVelocity.vadd(r,this.angularVelocity)}applyLocalImpulse(t,e=new hj){if(this.type!==Dj.DYNAMIC)return;const n=$j,i=Gj;this.vectorToWorldFrame(t,n),this.vectorToWorldFrame(e,i),this.applyImpulse(n,i)}updateMassProperties(){const t=Wj;this.invMass=this.mass>0?1/this.mass:0;const e=this.inertia,n=this.fixedRotation;this.updateAABB(),t.set((this.aabb.upperBound.x-this.aabb.lowerBound.x)/2,(this.aabb.upperBound.y-this.aabb.lowerBound.y)/2,(this.aabb.upperBound.z-this.aabb.lowerBound.z)/2),Pj.calculateInertia(t,this.mass,e),this.invInertia.set(e.x>0&&!n?1/e.x:0,e.y>0&&!n?1/e.y:0,e.z>0&&!n?1/e.z:0),this.updateInertiaWorld(!0)}getVelocityAtWorldPoint(t,e){const n=new hj;return t.vsub(this.position,n),this.angularVelocity.cross(n,e),this.velocity.vadd(e,e),e}integrate(t,e,n){if(this.previousPosition.copy(this.position),this.previousQuaternion.copy(this.quaternion),this.type!==Dj.DYNAMIC&&this.type!==Dj.KINEMATIC||this.sleepState===Dj.SLEEPING)return;const i=this.velocity,r=this.angularVelocity,s=this.position,o=this.force,a=this.torque,l=this.quaternion,c=this.invInertiaWorld,u=this.linearFactor,h=this.invMass*t;i.x+=o.x*h*u.x,i.y+=o.y*h*u.y,i.z+=o.z*h*u.z;const d=c.elements,p=this.angularFactor,f=a.x*p.x,g=a.y*p.y,m=a.z*p.z;r.x+=t*(d[0]*f+d[1]*g+d[2]*m),r.y+=t*(d[3]*f+d[4]*g+d[5]*m),r.z+=t*(d[6]*f+d[7]*g+d[8]*m),s.x+=i.x*t,s.y+=i.y*t,s.z+=i.z*t,l.integrate(this.angularVelocity,t,this.angularFactor,l),e&&(n?l.normalizeFast():l.normalize()),this.aabbNeedsUpdate=!0,this.updateInertiaWorld()}}Dj.idCounter=0,Dj.COLLIDE_EVENT_NAME="collide",Dj.DYNAMIC=1,Dj.STATIC=2,Dj.KINEMATIC=4,Dj.AWAKE=0,Dj.SLEEPY=1,Dj.SLEEPING=2,Dj.wakeupEvent={type:"wakeup"},Dj.sleepyEvent={type:"sleepy"},Dj.sleepEvent={type:"sleep"};const Rj=new hj,Nj=new yj,Lj=new gj,jj=new cj,Fj=new cj,Bj=new hj,Vj=new hj,zj=new hj,Uj=new hj,Hj=new hj,$j=new hj,Gj=new hj,Wj=new hj;new hj,new hj;class qj{constructor(){this.rayFromWorld=void 0,this.rayToWorld=void 0,this.hitNormalWorld=void 0,this.hitPointWorld=void 0,this.hasHit=void 0,this.shape=void 0,this.body=void 0,this.hitFaceIndex=void 0,this.distance=void 0,this.shouldStop=void 0,this.rayFromWorld=new hj,this.rayToWorld=new hj,this.hitNormalWorld=new hj,this.hitPointWorld=new hj,this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}reset(){this.rayFromWorld.setZero(),this.rayToWorld.setZero(),this.hitNormalWorld.setZero(),this.hitPointWorld.setZero(),this.hasHit=!1,this.shape=null,this.body=null,this.hitFaceIndex=-1,this.distance=-1,this.shouldStop=!1}abort(){this.shouldStop=!0}set(t,e,n,i,r,s,o){this.rayFromWorld.copy(t),this.rayToWorld.copy(e),this.hitNormalWorld.copy(n),this.hitPointWorld.copy(i),this.shape=r,this.body=s,this.distance=o}}let Xj,Yj,Kj,Qj,Zj,Jj,tF;Xj=xj.types.SPHERE,Yj=xj.types.PLANE,Kj=xj.types.BOX,Qj=xj.types.CYLINDER,Zj=xj.types.CONVEXPOLYHEDRON,Jj=xj.types.HEIGHTFIELD,tF=xj.types.TRIMESH;class eF{get[Xj](){return this._intersectSphere}get[Yj](){return this._intersectPlane}get[Kj](){return this._intersectBox}get[Qj](){return this._intersectConvex}get[Zj](){return this._intersectConvex}get[Jj](){return this._intersectHeightfield}get[tF](){return this._intersectTrimesh}constructor(t=new hj,e=new hj){this.from=void 0,this.to=void 0,this.direction=void 0,this.precision=void 0,this.checkCollisionResponse=void 0,this.skipBackfaces=void 0,this.collisionFilterMask=void 0,this.collisionFilterGroup=void 0,this.mode=void 0,this.result=void 0,this.hasHit=void 0,this.callback=void 0,this.from=t.clone(),this.to=e.clone(),this.direction=new hj,this.precision=1e-4,this.checkCollisionResponse=!0,this.skipBackfaces=!1,this.collisionFilterMask=-1,this.collisionFilterGroup=-1,this.mode=eF.ANY,this.result=new qj,this.hasHit=!1,this.callback=t=>{}}intersectWorld(t,e){return this.mode=e.mode||eF.ANY,this.result=e.result||new qj,this.skipBackfaces=!!e.skipBackfaces,this.collisionFilterMask=void 0!==e.collisionFilterMask?e.collisionFilterMask:-1,this.collisionFilterGroup=void 0!==e.collisionFilterGroup?e.collisionFilterGroup:-1,this.checkCollisionResponse=void 0===e.checkCollisionResponse||e.checkCollisionResponse,e.from&&this.from.copy(e.from),e.to&&this.to.copy(e.to),this.callback=e.callback||(()=>{}),this.hasHit=!1,this.result.reset(),this.updateDirection(),this.getAABB(nF),iF.length=0,t.broadphase.aabbQuery(t,nF,iF),this.intersectBodies(iF),this.hasHit}intersectBody(t,e){e&&(this.result=e,this.updateDirection());const n=this.checkCollisionResponse;if(n&&!t.collisionResponse||0==(this.collisionFilterGroup&t.collisionFilterMask)||0==(t.collisionFilterGroup&this.collisionFilterMask))return;const i=oF,r=aF;for(let s=0,o=t.shapes.length;st.boundingSphereRadius)return;const r=this[t.type];r&&r.call(this,t,e,n,i,t)}_intersectBox(t,e,n,i,r){return this._intersectConvex(t.convexPolyhedronRepresentation,e,n,i,r)}_intersectPlane(t,e,n,i,r){const s=this.from,o=this.to,a=this.direction,l=new hj(0,0,1);e.vmult(l,l);const c=new hj;s.vsub(n,c);const u=c.dot(l);if(o.vsub(n,c),u*c.dot(l)>0||s.distanceTo(o)=0&&t<=1&&(s.lerp(o,t,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1)),this.result.shouldStop)return;e>=0&&e<=1&&(s.lerp(o,e,d),d.vsub(n,p),p.normalize(),this.reportIntersection(p,d,r,i,-1))}}_intersectConvex(t,e,n,i,r,s){const o=yF,a=vF,l=s&&s.faceList||null,c=t.faces,u=t.vertices,h=t.faceNormals,d=this.direction,p=this.from,f=p.distanceTo(this.to),g=l?l.length:c.length,m=this.result;for(let b=0;!m.shouldStop&&bf||this.reportIntersection(o,lF,r,i,t)}}}}_intersectTrimesh(t,e,n,i,r,s){const o=_F,a=OF,l=TF,c=vF,u=wF,h=xF,d=SF,p=CF,f=EF,g=t.indices,m=this.from,b=this.to,y=this.direction;l.position.copy(n),l.quaternion.copy(e),Sj.vectorToLocalFrame(n,e,y,u),Sj.pointToLocalFrame(n,e,m,h),Sj.pointToLocalFrame(n,e,b,d),d.x*=t.scale.x,d.y*=t.scale.y,d.z*=t.scale.z,h.x*=t.scale.x,h.y*=t.scale.y,h.z*=t.scale.z,d.vsub(h,u),u.normalize();const v=h.distanceSquared(d);t.tree.rayQuery(this,l,a);for(let _=0,w=a.length;!this.result.shouldStop&&_!==w;_++){const s=a[_];t.getNormal(s,o),t.getVertex(g[3*s],cF),cF.vsub(h,c);const l=u.dot(o),d=o.dot(c)/l;if(d<0)continue;u.scale(d,lF),lF.vadd(h,lF),t.getVertex(g[3*s+1],uF),t.getVertex(g[3*s+2],hF);const m=lF.distanceSquared(h);!eF.pointInTriangle(lF,uF,cF,hF)&&!eF.pointInTriangle(lF,cF,uF,hF)||m>v||(Sj.vectorToWorldFrame(e,o,f),Sj.pointToWorldFrame(n,e,lF,p),this.reportIntersection(f,p,r,i,s))}a.length=0}reportIntersection(t,e,n,i,r){const s=this.from,o=this.to,a=s.distanceTo(e),l=this.result;if(!(this.skipBackfaces&&t.dot(this.direction)>0))switch(l.hitFaceIndex=void 0!==r?r:-1,this.mode){case eF.ALL:this.hasHit=!0,l.set(s,o,t,e,n,i,a),l.hasHit=!0,this.callback(l);break;case eF.CLOSEST:(a=0&&(u=r*l-s*o)>=0&&c+uDate.now()-t}var iB=n(24517);function rB(t,e,n){e||(e=new bT(bT.IDENTITY));const i=new bT(bT.IDENTITY);if(!t)return!0;if(t.matrix)i.copy(t.matrix);else{if(i.identity(),t.translation&&i.translate(t.translation),t.rotation){const e=new bT(bT.IDENTITY).fromQuaternion(t.rotation);i.multiplyRight(e)}t.scale&&i.scale(t.scale)}const r=new bT(e).multiplyRight(i);if(!1===n(t,r,e))return!1;for(const s of t.nodes||t.children||[])if(!1===rB(s,r,n))return!1;return!0}function sB(){fP([zR,YL])}function oB(t,e){const n=e.nodes.find(e=>e.name===t);if(n){let i=!1;for(const t of e.scenes)i||rB(t,new bT(bT.IDENTITY),(t,e)=>t!==n||(t.matrix=e,t.translation=void 0,t.rotation=void 0,t.scale=void 0,i=!0,!1));return e.scene={id:t,name:t,nodes:[n]},e.scenes=[e.scene],{scene:e.scene,scenes:e.scenes}}return e}function aB(t,e){return lw(this,void 0,void 0,function*(){const n=t.scenegraph;let i;i=e?e[n]||(e[n]=fetch(n).then(t=>t.blob())):fetch(n);const r=yield CP(i,YL,{DracoLoader:DN,gltf:{decompressMeshes:!0,postProcess:!0}});return oB(t.scenegraphNode,r)})}function lB(t,e){return lw(this,void 0,void 0,function*(){return oB(t,yield e)})}function cB(t,e,n){if(e&&0!==e.length)return new fR(Object.assign({id:t,pickable:!0,autoHighlight:!1,highlightColor:[30,136,229,255],coordinateSystem:Iw.CARTESIAN,data:e,mesh:new lj,wireframe:!1,getTransformMatrix:t=>t.transformMatrix,getColor:t=>t.color||[255,255,255,229.5]},n))}let uB=(()=>{class t extends jP{initializeState(){const{data:t}=this.props;this.setState({data:null!=t?t:[],zoomOpacity:.8,doCollisions:!1}),sB()}renderLayers(){const e=this.state,n=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&t.unpickable),i=e.data.filter(t=>!t.scenegraph&&!t.wireframe&&!t.unpickable),r=e.data.filter(t=>!t.scenegraph&&t.wireframe),s=e.data.filter(t=>!!t.scenegraph);e.doCollisions&&function(t){lw(this,void 0,void 0,function*(){console.log("Starting Collisioning");const e=t.filter(t=>!t.scenegraph&&!t.wireframe).map(t=>{const e=new bT(t.transformMatrix),n=e.transformAsPoint([-1,-1,-1],[]),i=e.transformAsPoint([1,1,1],[]);return{"@id":t["@id"],name:t.tooltip,entityId:t.entityId,bbox:new gj({lowerBound:new hj(...n.map((t,e)=>Math.min(t,i[e]))),upperBound:new hj(...i.map((t,e)=>Math.max(t,n[e])))})}}),n=[];for(const o of t.filter(t=>!!t.scenegraph)){const t=yield AP(o.scenegraph,YL,{DracoLoader:DN,decompress:!0,postProcess:!0});for(const e of t.scenes)rB(e,new bT(o.transformMatrix),(e,i)=>{if(e.mesh&&e.mesh.primitives&&e.mesh.primitives.length>0)for(const r of e.mesh.primitives)if(r.attributes.POSITION&&r.attributes.POSITION.min){const s=i.transformAsPoint(r.attributes.POSITION.min,[]),a=i.transformAsPoint(r.attributes.POSITION.max,[]);n.push({"@id":o["@id"],name:e.name,entityId:o.entityId,bbox:new gj({lowerBound:new hj(...s.map((t,e)=>Math.min(t,a[e]))),upperBound:new hj(...a.map((t,e)=>Math.max(t,s[e])))}),gltf:t})}return!0})}const i=[],r=[];for(const t of e){const e=[];for(const i of n)t.bbox.overlaps(i.bbox)&&e.push({"@id":i["@id"],name:i.name});e.length>0?i.push({"@id":t.entityId,name:t.name,hits:e}):r.push(t)}console.log({sourceBoxes:e,targetBoxes:n,report:i,sad:r,maxHits:Math.max(...i.map(t=>t.hits.length))});const s=[];for(const t of i){s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":"","Hit Name":""});for(const e of t.hits)s.push({"Tissue ID":t["@id"],"Tissue Name":t.name,"Hit ID":e["@id"],"Hit Name":e.name})}return console.log(s),i})}(e.data);const o={};for(const a of s)a.scenegraph&&a.scenegraphNode&&!Object.prototype.hasOwnProperty.call(o,a.scenegraph)&&(o[a.scenegraph]=aB({scenegraph:a.scenegraph},t.gltfCache));return[cB("cubes",n,{wireframe:!1,pickable:!1}),cB("pickableCubes",i,{wireframe:!1,pickable:!0}),cB("wireframes",r,{wireframe:!0,pickable:!1}),...s.map(t=>{var n;return new nj({id:"models-"+t["@id"],opacity:t.zoomBasedOpacity?e.zoomOpacity:void 0!==t.opacity?t.opacity:1,pickable:!t.unpickable,coordinateSystem:Iw.CARTESIAN,data:[t],scenegraph:t.scenegraphNode?lB(t.scenegraphNode,o[t.scenegraph]):t.scenegraph,_lighting:t._lighting,getTransformMatrix:t.transformMatrix,getColor:null!==(n=t.color)&&void 0!==n?n:[0,255,0,127.5],parameters:{depthMask:!t.zoomBasedOpacity&&(void 0===t.opacity||1===t.opacity)}})})].filter(t=>!!t)}getPickingInfo(t){return t.info}}return t.layerName="BodyUILayer",t.gltfCache={},t})();function hB(t,e=[]){for(const n of t.nodes||t.children||[])e.push(n.name),hB(n,e);return e}let dB=(()=>{class t{constructor(t){var e,n,i,r,s;this.deckProps=t,this.bodyUILayer=new uB({}),this.nodeClickSubject=new P,this.nodeHoverStartSubject=new P,this.nodeHoverStopSubject=new P,this.sceneRotationSubject=new Uf([0,0]),this.nodeDragStartSubject=new P,this.nodeDragSubject=new P,this.nodeDragEndSubject=new P,this.nodeClick$=this.nodeClickSubject.pipe(at()),this.nodeHoverStart$=this.nodeHoverStartSubject.pipe(at()),this.nodeHoverStop$=this.nodeHoverStopSubject.pipe(at()),this.sceneRotation$=this.sceneRotationSubject.pipe(at()),this.nodeDragStart$=this.nodeDragStartSubject.pipe(at()),this.nodeDrag$=this.nodeDragSubject.pipe(at()),this.nodeDragEnd$=this.nodeDragEndSubject.pipe(at());const o=Object.assign(Object.assign({},t),{views:["orthographic"===t.camera?new pM({flipY:!1,near:-1e3}):new bM({orbitAxis:"Y"})],controller:void 0===t.interactive||t.interactive,layers:[this.bodyUILayer],onHover:this._onHover,onClick:this._onClick,onViewStateChange:this._onViewStateChange,onDragStart:this._onDragStart,onDrag:this._onDrag,onDragEnd:this._onDragEnd,getCursor:t=>{var e;return null!==(e=this.cursor)&&void 0!==e?e:t.isDragging?"grabbing":"grab"}});t.legacyLighting&&(o.effects=[new $M({ambientLight:new wM({color:[255,255,255],intensity:10})})]),this.deck=new WD(o),this.deck.setProps({viewState:{orbitAxis:"Y",minRotationX:null!==(e=t.minRotationX)&&void 0!==e?e:-15,maxRotationX:null!==(n=t.maxRotationX)&&void 0!==n?n:15,target:null!==(i=t.target)&&void 0!==i?i:[.5,.5,0],rotationX:0,rotationOrbit:null!==(r=t.rotation)&&void 0!==r?r:0,zoom:null!==(s=t.zoom)&&void 0!==s?s:9.5,camera:t.camera}}),t.rotation&&this.sceneRotationSubject.next([t.rotation,0])}initialize(){return lw(this,void 0,void 0,function*(){for(;!this.bodyUILayer.state;)yield new Promise(t=>{setTimeout(t,200)})})}finalize(){this.deck.finalize()}setScene(t){if((null==t?void 0:t.length)>0){let e=this.bodyUILayer.state.zoomOpacity,n=!1;for(const i of t)i.zoomToOnLoad&&(this.zoomTo(i),n=!0);e=n?.05:e,this.deckProps.debugSceneNodeProcessing?this.debugSceneNodeProcessing(t,e):this.bodyUILayer.setState({data:t,zoomOpacity:e})}}debugSceneNodeProcessing(t,e){const n="https://hubmapconsortium.github.io/ccf-3d-reference-object-library/VH_Female/United/VHF_United_Color.glb",i=new bT([.076,0,0,0,0,.076,16875389974302382e-33,0,0,-16875389974302382e-33,.076,0,.49,.034,.11,1]);(function(t,e,n){return lw(this,void 0,void 0,function*(){sB();const n=yield aB({scenegraph:t,scenegraphNode:"VHF_Kidney_L_Low1"}),i={},r=[];for(const s of n.scenes)rB(s,e=new bT(e||bT.IDENTITY),(n,s)=>{const o={"@id":n.name||n.id,"@type":"ProcessedNode",transformMatrix:new bT(s),wireframe:!0,node:n};if(r.push({"@id":`GLTF:${o["@id"]}`,"@type":"GLTFNode",scenegraph:t,scenegraphNode:o["@id"],transformMatrix:new bT(e||bT.IDENTITY),tooltip:n.name||n.id,color:[255,255,255,255],_lighting:"pbr",zoomBasedOpacity:!0,node:n}),n.mesh&&n.mesh.primitives&&n.mesh.primitives.length>0)for(const t of n.mesh.primitives)if(t.attributes.POSITION&&t.attributes.POSITION.min){const e=s.transformAsPoint(t.attributes.POSITION.min,[]),n=s.transformAsPoint(t.attributes.POSITION.max,[]);o.bbox=new gj({lowerBound:new hj(...e.map((t,e)=>Math.min(t,n[e]))),upperBound:new hj(...n.map((t,n)=>Math.max(t,e[n])))})}return i[o["@id"]]=o,!0});for(const t of Object.values(i).filter(t=>!t.bbox)){for(const e of hB(t.node).map(t=>i[t]).filter(t=>t.bbox))t.bbox?t.bbox.extend(e.bbox):t.bbox=e.bbox.clone();t.bbox||delete i[t["@id"]]}for(const t of Object.values(i)){const e=t.bbox.lowerBound,n=(t.size=t.bbox.upperBound.clone().vsub(e)).clone().vmul(new hj(.5,.5,.5)),i=t.center=e.clone().vadd(n);t.transformMatrix=new bT(bT.IDENTITY).translate(i.toArray()).scale(n.toArray())}for(const t of r)i[t["@id"]]=t;return i})})(n,i).then(r=>{console.log("results",r),console.log("data",t),(t=t.concat(Object.values(r))).push({"@id":"TEST","@type":"TEST",scenegraph:n,scenegraphNode:"VHF_Kidney_R_Low",transformMatrix:i,color:[255,255,255,200],_lighting:"pbr",zoomBasedOpacity:!1}),this.bodyUILayer.setState({data:t,zoomOpacity:e})})}zoomTo(t){const e=new bT(t.transformMatrix);this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:e.getTranslation(),rotationX:0,rotationOrbit:0,zoom:11.5})})}setRotation(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationOrbit:t})})}setRotationX(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{rotationX:t})})}setZoom(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{zoom:t})})}setTarget(t){this.deck.setProps({viewState:Object.assign(Object.assign({},this.deck.props.viewState),{target:t})})}setInteractive(t){this.deck.setProps({controller:t})}_onHover(t){const{lastHovered:e}=this;this.cursor=t.picked?"pointer":void 0,t.picked&&t.object&&t.object["@id"]?e!==t.object&&(e&&this.nodeHoverStopSubject.next(e),this.lastHovered=t.object,this.nodeHoverStartSubject.next(t.object)):e&&(this.nodeHoverStopSubject.next(e),this.lastHovered=void 0)}_onClick(t,e){var n,i;t.picked&&t.object&&t.object["@id"]&&this.nodeClickSubject.next({node:t.object,ctrlClick:null!==(i=null===(n=null==e?void 0:e.srcEvent)||void 0===n?void 0:n.ctrlKey)&&void 0!==i?i:void 0})}_onViewStateChange(t){var e;if(null===(e=t.interactionState)||void 0===e?void 0:e.isZooming){const e=this.bodyUILayer.state,n=Math.min(Math.max(1-(t.viewState.zoom-8.9)/2,.05),1);e.zoomOpacity!==n&&this.bodyUILayer.setState({data:e.data,zoomOpacity:n})}this.deck.setProps({viewState:Object.assign({},t.viewState)}),this.sceneRotationSubject.next([t.viewState.rotationOrbit,t.viewState.rotationX])}_onDragStart(t,e){this._dragEvent(t,e,this.nodeDragStartSubject)}_onDrag(t,e){this._dragEvent(t,e,this.nodeDragSubject)}_onDragEnd(t,e){this._dragEvent(t,e,this.nodeDragEndSubject)}_dragEvent(t,e,n){var i;(null===(i=null==t?void 0:t.object)||void 0===i?void 0:i["@id"])&&n.next({node:t.object,info:t,e})}}return sw([iB.ZP],t.prototype,"_onHover",null),sw([iB.ZP],t.prototype,"_onClick",null),sw([iB.ZP],t.prototype,"_onViewStateChange",null),sw([iB.ZP],t.prototype,"_onDragStart",null),sw([iB.ZP],t.prototype,"_onDrag",null),sw([iB.ZP],t.prototype,"_onDragEnd",null),t})();function pB(t,e){return t===e}function fB(t,e,n){if(null===e||null===n||e.length!==n.length)return!1;const i=e.length;for(let r=0;r(t&&t.providers||[]).some(t=>t&&t.provide&&"MockNgModuleResolver"===t.provide.name||!1))});let bB=(()=>{class t{constructor(){this.bootstrap$=new lp(1)}get appBootstrapped$(){return this.bootstrap$.asObservable()}bootstrap(){this.bootstrap$.next(!0),this.bootstrap$.complete()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const yB=new oi("INITIAL_STATE_TOKEN");let vB=(()=>{class t{static set(t){this.value=t}static pop(){const t=this.value;return this.value={},t}}return t.value={},t})();const _B=new oi("Internals.StateContextFactory"),wB=new oi("Internals.StateFactory");function xB(t,e){return e?n=>n.pipe(xB((n,i)=>U(t(n,i)).pipe(D((t,r)=>e(n,t,i,r))))):e=>e.lift(new SB(t))}class SB{constructor(t){this.project=t}call(t,e){return e.subscribe(new EB(t,this.project))}}class EB extends ${constructor(t,e){super(t),this.project=e,this.hasSubscription=!1,this.hasCompleted=!1,this.index=0}_next(t){this.hasSubscription||this.tryNext(t)}tryNext(t){let e;const n=this.index++;try{e=this.project(t,n)}catch(i){return void this.destination.error(i)}this.hasSubscription=!0,this._innerSub(e)}_innerSub(t){const e=new H(this),n=this.destination;n.add(e);const i=G(t,e);i!==e&&n.add(i)}_complete(){this.hasCompleted=!0,this.hasSubscription||this.destination.complete(),this.unsubscribe()}notifyNext(t){this.destination.next(t)}notifyError(t){this.destination.error(t)}notifyComplete(){this.hasSubscription=!1,this.hasCompleted&&this.destination.complete()}}function CB(t=null){return e=>e.lift(new OB(t))}class OB{constructor(t){this.defaultValue=t}call(t,e){return e.subscribe(new TB(t,this.defaultValue))}}class TB extends v{constructor(t,e){super(t),this.defaultValue=e,this.isEmpty=!0}_next(t){this.isEmpty=!1,this.destination.next(t)}_complete(){this.isEmpty&&this.destination.next(this.defaultValue),this.destination.complete()}}const kB={STATE_NAME:t=>`${t} is not a valid state name. It needs to be a valid object property name.`,STATE_NAME_PROPERTY:()=>"States must register a 'name' property",STATE_UNIQUE:(t,e,n)=>`State name '${t}' from ${e} already exists in ${n}`,STATE_DECORATOR:()=>"States must be decorated with @State() decorator",INCORRECT_PRODUCTION:()=>"Angular is running in production mode but NGXS is still running in the development mode!\nPlease set developmentMode to false on the NgxsModule options when in production mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",INCORRECT_DEVELOPMENT:()=>"RECOMMENDATION: Set developmentMode to true on the NgxsModule when Angular is running in development mode.\nNgxsModule.forRoot(states, { developmentMode: !environment.production })",SELECT_FACTORY_NOT_CONNECTED:()=>"You have forgotten to import the NGXS module!",ACTION_DECORATOR:()=>"@Action() decorator cannot be used with static methods",SELECTOR_DECORATOR:()=>"Selectors only work on methods",ZONE_WARNING:()=>"Your application was bootstrapped with nooped zone and your execution strategy requires an actual NgZone!\nPlease set the value of the executionStrategy property to NoopNgxsExecutionStrategy.\nNgxsModule.forRoot(states, { executionStrategy: NoopNgxsExecutionStrategy })",PATCHING_ARRAY:()=>"Patching arrays is not supported.",PATCHING_PRIMITIVE:()=>"Patching primitives is not supported.",UNDECORATED_STATE_IN_IVY:t=>`'${t}' class should be decorated with @Injectable() right after the @State() decorator`};let AB=(()=>{class t{constructor(t,e){this._ngZone=t,this._platformId=e,this.verifyZoneIsNotNooped(this._ngZone)}enter(t){return function(t){return"server"===t}(this._platformId)?this.runInsideAngular(t):this.runOutsideAngular(t)}leave(t){return this.runInsideAngular(t)}runInsideAngular(t){return xu.isInAngularZone()?t():this._ngZone.run(t)}runOutsideAngular(t){return xu.isInAngularZone()?this._ngZone.runOutsideAngular(t):t()}verifyZoneIsNotNooped(t){t instanceof xu||console.warn(kB.ZONE_WARNING())}}return t.\u0275fac=function(e){return new(e||t)(Ci(xu),Ci(ou))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const PB=new oi("ROOT_STATE_TOKEN"),MB=new oi("FEATURE_STATE_TOKEN"),IB=new oi("NGXS_PLUGINS"),DB=new oi("NG_TEST_MODE"),RB=new oi("NG_DEV_MODE"),NB="NGXS_META",LB="NGXS_OPTIONS_META";let jB=(()=>{class t{constructor(){this.defaultsState={},this.selectorOptions={injectContainerState:!0,suppressErrors:!0},this.compatibility={strictContentSecurityPolicy:!1},this.executionStrategy=AB}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class FB{constructor(t,e,n){this.previousValue=t,this.currentValue=e,this.firstChange=n}}const BB=new oi("NGXS_EXECUTION_STRATEGY");function VB(t){return t.constructor&&t.constructor.type?t.constructor.type:t.type}const zB=(t,e,n)=>{t=Object.assign({},t);const i=e.split("."),r=i.length-1;return i.reduce((t,e,i)=>(t[e]=i===r?n:Array.isArray(t[e])?t[e].slice():Object.assign({},t[e]),t&&t[e]),t),t},UB=(t,e)=>e.split(".").reduce((t,e)=>t&&t[e],t),HB=t=>t&&"object"==typeof t&&!Array.isArray(t),$B=(t,...e)=>{if(!e.length)return t;const n=e.shift();if(HB(t)&&HB(n))for(const i in n)HB(n[i])?(t[i]||Object.assign(t,{[i]:{}}),$B(t[i],n[i])):Object.assign(t,{[i]:n[i]});return $B(t,...e)};function GB(t){return t[NB]}function WB(t,e){const n=UB(e.currentAppState,t.path),i=UB(e.newAppState,t.path);return new FB(n,i,!t.isInitialised)}function qB(...t){return function(t,e,n=XB){const i=function(t){return t.reduce((t,e)=>(t[VB(e)]=!0,t),{})}(t),r=e&&function(t){return t.reduce((t,e)=>(t[e]=!0,t),{})}(e);return function(t){return t.pipe(function(t,e){return Hd(n=>{const i=VB(n.action);return t[i]&&(!e||e[n.status])})}(i,r),n())}}(t,["DISPATCHED"])}function XB(){return D(t=>t.action)}function YB(t){return e=>new C(n=>e.subscribe({next(e){t.leave(()=>n.next(e))},error(e){t.leave(()=>n.error(e))},complete(){t.leave(()=>n.complete())}}))}let KB=(()=>{class t{constructor(t){this._executionStrategy=t}enter(t){return this._executionStrategy.enter(t)}leave(t){return this._executionStrategy.leave(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(BB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class QB extends P{constructor(){super(...arguments),this._itemQueue=[],this._busyPushingNext=!1}next(t){if(this._busyPushingNext)this._itemQueue.unshift(t);else{for(this._busyPushingNext=!0,super.next(t);this._itemQueue.length>0;){const t=this._itemQueue.pop();super.next(t)}this._busyPushingNext=!1}}}let ZB=(()=>{class t extends QB{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),JB=(()=>{class t extends C{constructor(t,e){super(n=>{const i=t.pipe(YB(e)).subscribe({next:t=>n.next(t),error:t=>n.error(t),complete:()=>n.complete()});n.add(i)})}}return t.\u0275fac=function(e){return new(e||t)(Ci(ZB),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const tV=t=>(...e)=>t.shift()(...e,(...e)=>tV(t)(...e));let eV=(()=>{class t extends Uf{constructor(){super({})}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),nV=(()=>{class t{constructor(t,e){this._parentManager=t,this._pluginHandlers=e,this.plugins=[],this.registerHandlers()}get rootPlugins(){return this._parentManager&&this._parentManager.plugins||this.plugins}registerHandlers(){const t=this.getPluginHandlers();this.rootPlugins.push(...t)}getPluginHandlers(){return(this._pluginHandlers||[]).map(t=>t.handle?t.handle.bind(t):t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(IB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),iV=(()=>{class t extends P{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),rV=(()=>{class t{constructor(t,e,n,i,r,s){this._injector=t,this._actions=e,this._actionResults=n,this._pluginManager=i,this._stateStream=r,this._ngxsExecutionStrategy=s}dispatch(t){const e=this._ngxsExecutionStrategy.enter(()=>this.dispatchByEvents(t));return e.subscribe({error:t=>this._ngxsExecutionStrategy.leave(()=>{try{this._errorHandler=this._errorHandler||this._injector.get(Ar),this._errorHandler.handleError(t)}catch(e){}})}),e.pipe(YB(this._ngxsExecutionStrategy))}dispatchByEvents(t){return Array.isArray(t)?0===t.length?wd(this._stateStream.getValue()):hv(t.map(t=>this.dispatchSingle(t))):this.dispatchSingle(t)}dispatchSingle(t){if(!VB(t))return ip(new Error(`This action doesn't have a type property: ${t.constructor.name}`));const e=this._stateStream.getValue();return tV([...this._pluginManager.plugins,(t,n)=>{t!==e&&this._stateStream.next(t);const i=this.getActionResultStream(n);return i.subscribe(t=>this._actions.next(t)),this._actions.next({action:n,status:"DISPATCHED"}),this.createDispatchObservable(i)}])(e,t).pipe(up())}getActionResultStream(t){return this._actionResults.pipe(Hd(e=>e.action===t&&"DISPATCHED"!==e.status),Gp(1),up())}createDispatchObservable(t){return t.pipe(xB(t=>{switch(t.status){case"SUCCESSFUL":return wd(this._stateStream.getValue());case"ERRORED":return ip(t.error);default:return ep}})).pipe(up())}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(ZB),Ci(iV),Ci(nV),Ci(eV),Ci(KB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const sV=t=>{Object.freeze(t);const e="function"==typeof t,n=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(function(i){n.call(t,i)&&(!e||"caller"!==i&&"callee"!==i&&"arguments"!==i)&&null!==t[i]&&("object"==typeof t[i]||"function"==typeof t[i])&&!Object.isFrozen(t[i])&&sV(t[i])}),t};let oV=(()=>{class t{constructor(t,e){this.isDevMode=t,this.isTestMode=e}}return t.\u0275fac=function(e){return new(e||t)(Ci(RB),Ci(DB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),aV=(()=>{class t{constructor(t,e){this._host=t,this._config=e}get isIncorrectProduction(){return!this._host.isDevMode()&&this._config.developmentMode}get isIncorrectDevelopment(){return this._host.isDevMode()&&!this._config.developmentMode}verifyDevMode(){this._host.isTestMode()||(this.isIncorrectProduction?console.warn(kB.INCORRECT_PRODUCTION()):this.isIncorrectDevelopment&&console.warn(kB.INCORRECT_DEVELOPMENT()))}}return t.\u0275fac=function(e){return new(e||t)(Ci(oV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),lV=(()=>{class t{constructor(t,e,n,i){this._stateStream=t,this._dispatcher=e,this._config=n,i.verifyDevMode()}getRootStateOperations(){const t={getState:()=>this._stateStream.getValue(),setState:t=>this._stateStream.next(t),dispatch:t=>this._dispatcher.dispatch(t)};return this._config.developmentMode?this.ensureStateAndActionsAreImmutable(t):t}ensureStateAndActionsAreImmutable(t){return{getState:()=>t.getState(),setState:e=>{const n=sV(e);return t.setState(n)},dispatch:e=>t.dispatch(e)}}setStateToTheCurrentWithNew(t){const e=this.getRootStateOperations(),n=e.getState();e.setState(Object.assign({},n,t.defaults))}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(rV),Ci(jB),Ci(aV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),cV=(()=>{class t{constructor(t){this._internalStateOperations=t}createStateContext(t){const e=this._internalStateOperations.getRootStateOperations();function n(e){return UB(e,t.path)}function i(n,i){const r=zB(n,t.path,i),s=t.instance;if(s.ngxsOnChanges){const e=WB(t,{currentAppState:n,newAppState:r});s.ngxsOnChanges(e)}return e.setState(r),r}function r(t,e){return i(t,e(n(t)))}return{getState:()=>n(e.getState()),patchState:t=>r(e.getState(),function(t){return e=>{if(Array.isArray(t))throw new Error(kB.PATCHING_ARRAY());if("object"!=typeof t)throw new Error(kB.PATCHING_PRIMITIVE());const n=Object.assign({},e);for(const i in t)n[i]=t[i];return n}}(t)),setState(t){const n=e.getState();return function(t){return"function"==typeof t}(t)?r(n,t):i(n,t)},dispatch:t=>e.dispatch(t)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class uV{static stateNameErrorMessage(t){return kB.STATE_NAME(t)}static checkCorrectStateName(t){if(!t)throw new Error(kB.STATE_NAME_PROPERTY());if(!this.stateNameRegex.test(t))throw new Error(this.stateNameErrorMessage(t))}static checkStateNameIsUnique(t,e){const n=this.getValidStateMeta(t).name,i=e[n];if(i&&i!==t)throw new Error(kB.STATE_UNIQUE(n,t.name,i.name));return n}static getValidStateMeta(t){const e=GB(t);if(!e)throw new Error(kB.STATE_DECORATOR());return e}}uV.stateNameRegex=new RegExp("^[a-zA-Z0-9_]+$");let hV=(()=>{class t{constructor(t,e,n,i,r,s,o){this._injector=t,this._config=e,this._parentFactory=n,this._actions=i,this._actionResults=r,this._stateContextFactory=s,this._initialState=o,this._actionsSubscription=null,this._states=[],this._statesByName={},this._statePaths={},this.getRuntimeSelectorContext=gB(()=>{const t=this;function e(e){const n=t.statePaths[e];return n?function(t,e){return e&&e.compatibility&&e.compatibility.strictContentSecurityPolicy?function(t){const e=t.slice();return t=>e.reduce((t,e)=>t&&t[e],t)}(t):function(t){const e=t;let n="store."+e[0],i=0;const r=e.length;let s=n;for(;++i(n||(n=e(t)),n?n(...i):void 0))},getSelectorOptions:e=>Object.assign({},t._config.selectorOptions,e||{})}})}get states(){return this._parentFactory?this._parentFactory.states:this._states}get statesByName(){return this._parentFactory?this._parentFactory.statesByName:this._statesByName}get statePaths(){return this._parentFactory?this._parentFactory.statePaths:this._statePaths}static cloneDefaults(t){let e={};return e=Array.isArray(t)?t.slice():function(t){return"object"==typeof t&&null!==t||"function"==typeof t}(t)?Object.assign({},t):void 0===t?{}:t,e}static checkStatesAreValid(t){t.forEach(uV.getValidStateMeta)}ngOnDestroy(){this._actionsSubscription.unsubscribe()}add(e){t.checkStatesAreValid(e);const{newStates:n}=this.addToStatesMap(e);if(!n.length)return[];const i=function(t){const e=e=>{const n=t.find(t=>t===e);if(!n)throw new Error(`Child state not found: ${e}. \r\nYou may have forgotten to add states to module`);return n[NB].name};return t.reduce((t,n)=>{const{name:i,children:r}=n[NB];return t[i]=(r||[]).map(e),t},{})}(n),r=function(t){const e=[],n={},i=(r,s=[])=>{Array.isArray(s)||(s=[]),s.push(r),n[r]=!0,t[r].forEach(t=>{if(s.indexOf(t)>=0)throw new Error(`Circular dependency '${t}' is required by '${r}': ${s.join(" -> ")}`);n[t]||i(t,s.slice(0))}),e.indexOf(r)<0&&e.push(r)};return Object.keys(t).forEach(t=>i(t)),e.reverse()}(i),s=function(t,e={}){const n=(t,e)=>{for(const i in t)if(t.hasOwnProperty(i)&&t[i].indexOf(e)>=0){const e=n(t,i);return null!==e?`${e}.${i}`:i}return null};for(const i in t)if(t.hasOwnProperty(i)){const r=n(t,i);e[i]=r?`${r}.${i}`:i}return e}(i),o=function(t){return t.reduce((t,e)=>(t[e[NB].name]=e,t),{})}(n),a=[];for(const l of r){const e=o[l],n=s[l],i=e[NB];this.addRuntimeInfoToMeta(i,n);const r={name:l,path:n,isInitialised:!1,actions:i.actions,instance:this._injector.get(e),defaults:t.cloneDefaults(i.defaults)};this.hasBeenMountedAndBootstrapped(l,n)||a.push(r),this.states.push(r)}return a}addAndReturnDefaults(t){const e=this.add(t||[]);return{defaults:e.reduce((t,e)=>zB(t,e.path,e.defaults),{}),states:e}}connectActionHandlers(){null===this._actionsSubscription&&(this._actionsSubscription=this._actions.pipe(Hd(t=>"DISPATCHED"===t.status),W(({action:t})=>this.invokeActions(this._actions,t).pipe(D(()=>({action:t,status:"SUCCESSFUL"})),CB({action:t,status:"CANCELED"}),pv(e=>wd({action:t,status:"ERRORED",error:e}))))).subscribe(t=>this._actionResults.next(t)))}invokeActions(t,e){const n=VB(e),i=[];for(const s of this.states){const o=s.actions[n];if(o)for(const n of o){const o=this._stateContextFactory.createStateContext(s);try{let r=s.instance[n.fn](o,e);r instanceof Promise&&(r=U(r)),r instanceof C?(r=r.pipe(CB({})),n.options.cancelUncompleted&&(r=r.pipe(Wd(t.pipe(qB(e)))))):r=wd({}).pipe(up()),i.push(r)}catch(r){i.push(ip(r))}}}return i.length||i.push(wd({})),hv(i)}addToStatesMap(t){const e=[],n=this.statesByName;for(const i of t){const t=uV.checkStateNameIsUnique(i,n);!n[t]&&(e.push(i),n[t]=i)}return{newStates:e}}addRuntimeInfoToMeta(t,e){this.statePaths[t.name]=e,t.path=e}hasBeenMountedAndBootstrapped(t,e){const n=void 0!==UB(this._initialState,e);return this.statesByName[t]&&n}}return t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(jB),Ci(t,12),Ci(ZB),Ci(iV),Ci(cV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),dV=(()=>{class t{constructor(t,e,n){this.internalStateOperations=t,this.stateContextFactory=e,this.bootstrapper=n}ngxsBootstrap(t,e){this.internalStateOperations.getRootStateOperations().dispatch(t).pipe(Hd(()=>!!e),$f(()=>this.invokeInit(e.states)),W(()=>this.bootstrapper.appBootstrapped$),Hd(t=>!!t)).subscribe(()=>this.invokeBootstrap(e.states))}invokeInit(t){for(const e of t){const t=e.instance;if(t.ngxsOnChanges){const n=WB(e,{currentAppState:{},newAppState:this.internalStateOperations.getRootStateOperations().getState()});t.ngxsOnChanges(n)}t.ngxsOnInit&&t.ngxsOnInit(this.getStateContext(e)),e.isInitialised=!0}}invokeBootstrap(t){for(const e of t){const t=e.instance;t.ngxsAfterBootstrap&&t.ngxsAfterBootstrap(this.getStateContext(e))}}getStateContext(t){return this.stateContextFactory.createStateContext(t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(lV),Ci(cV),Ci(bB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();let pV=(()=>{class t{constructor(t,e,n,i,r,s){this._stateStream=t,this._internalStateOperations=e,this._config=n,this._internalExecutionStrategy=i,this._stateFactory=r,this.initStateStream(s)}dispatch(t){return this._internalStateOperations.getRootStateOperations().dispatch(t)}select(t){const e=this.getStoreBoundSelectorFn(t);return this._stateStream.pipe(D(e),pv(t=>{const{suppressErrors:e}=this._config.selectorOptions;return t instanceof TypeError&&e?wd(void 0):ip(t)}),Rd(),YB(this._internalExecutionStrategy))}selectOnce(t){return this.select(t).pipe(Gp(1))}selectSnapshot(t){return this.getStoreBoundSelectorFn(t)(this._stateStream.getValue())}subscribe(t){return this._stateStream.pipe(YB(this._internalExecutionStrategy)).subscribe(t)}snapshot(){return this._internalStateOperations.getRootStateOperations().getState()}reset(t){return this._internalStateOperations.getRootStateOperations().setState(t)}getStoreBoundSelectorFn(t){return function(t){const e=function(t){return t.NGXS_SELECTOR_META}(t)||GB(t);return e&&e.makeRootSelector||(()=>t)}(t)(this._stateFactory.getRuntimeSelectorContext())}initStateStream(t){const e=this._stateStream.value;if(!e||0===Object.keys(e).length){const e=Object.keys(this._config.defaultsState).length>0?Object.assign({},this._config.defaultsState,t):t;this._stateStream.next(e)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(eV),Ci(lV),Ci(jB),Ci(KB),Ci(hV),Ci(yB,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fV=(()=>{class t{constructor(e,n){t.store=e,t.config=n}ngOnDestroy(){t.store=null,t.config=null}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(jB))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t.store=null,t.config=null,t})();class gV{static get type(){return"@@INIT"}}class mV{constructor(t){this.addedStates=t}static get type(){return"@@UPDATE_STATE"}}const bV=new lp(1);let yV=(()=>{class t{constructor(e,n,i,r,s=[],o){!function(){try{const t=window.ng,e=!(t.probe&&t.coreTokens)&&Nu();bV.next(e)}catch(t){bV.next(!1)}finally{bV.complete()}}();const a=e.addAndReturnDefaults(s);n.setStateToTheCurrentWithNew(a),e.connectActionHandlers(),o.ngxsBootstrap(new gV,a)}}return t.\u0275fac=function(e){return new(e||t)(Ci(hV),Ci(lV),Ci(pV),Ci(fV),Ci(PB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),vV=(()=>{class t{constructor(e,n,i,r=[],s){const o=t.flattenStates(r),a=i.addAndReturnDefaults(o);a.states.length&&(n.setStateToTheCurrentWithNew(a),s.ngxsBootstrap(new mV(a.defaults),a))}static flattenStates(t=[]){return t.reduce((t,e)=>t.concat(e),[])}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV),Ci(lV),Ci(hV),Ci(MB,8),Ci(dV))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();class _V{static forRoot(t=[],e={}){return{ngModule:yV,providers:[hV,cV,JB,ZB,bB,aV,oV,dV,rV,iV,lV,KB,pV,eV,fV,nV,...t,..._V.ngxsTokenProviders(t,e)]}}static forFeature(t=[]){return{ngModule:vV,providers:[hV,nV,...t,{provide:MB,multi:!0,useValue:t}]}}static ngxsTokenProviders(t,e){return[{provide:DB,useValue:mB},{provide:RB,useValue:Nu},{provide:BB,useClass:e.executionStrategy||AB},{provide:PB,useValue:t},{provide:_V.ROOT_OPTIONS,useValue:e},{provide:jB,useFactory:_V.ngxsConfigFactory,deps:[_V.ROOT_OPTIONS]},{provide:au,useFactory:_V.appBootstrapListenerFactory,multi:!0,deps:[bB]},{provide:yB,useFactory:_V.getInitialState},{provide:_B,useExisting:cV},{provide:wB,useExisting:hV}]}static ngxsConfigFactory(t){return $B(new jB,t)}static appBootstrapListenerFactory(t){return()=>t.bootstrap()}static getInitialState(){return vB.pop()}}function wV(t){return e=>{!function(t){bV.subscribe(e=>{e&&(t.\u0275prov||console.warn(kB.UNDECORATED_STATE_IN_IVY(t.name)))})}(e);const n=e,i=function(t){if(!t.hasOwnProperty(NB)){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,NB,{value:e})}return GB(t)}(n),r=Object.getPrototypeOf(n),s=function(e){return Object.assign({},e[LB]||{},t)}(r);(function(t){const{meta:e,inheritedStateClass:n,optionsWithInheritance:i}=t,{children:r,defaults:s,name:o}=i,a="string"==typeof o?o:o&&o.getName()||null;uV.checkCorrectStateName(a),n.hasOwnProperty(NB)&&(e.actions=Object.assign({},e.actions,(n[NB]||{}).actions)),e.children=r,e.defaults=s,e.name=a})({meta:i,inheritedStateClass:r,optionsWithInheritance:s}),n[LB]=s}}_V.\u0275fac=function(t){return new(t||_V)},_V.\u0275mod=ie({type:_V}),_V.\u0275inj=St({}),_V.ROOT_OPTIONS=new oi("ROOT_OPTIONS");let xV=(()=>{class t{constructor(t,e){this._renderer=t,this._elementRef=e,this.onChange=t=>{},this.onTouched=()=>{}}setProperty(t,e){this._renderer.setProperty(this._elementRef.nativeElement,t,e)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl))},t.\u0275dir=se({type:t}),t})(),SV=(()=>{class t extends xV{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();const EV=new oi("NgValueAccessor"),CV={provide:EV,useExisting:pt(()=>TV),multi:!0},OV=new oi("CompositionEventMode");let TV=(()=>{class t extends xV{constructor(t,e,n){super(t,e),this._compositionMode=n,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function(){const t=Xu()?Xu().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}())}writeValue(t){this.setProperty("value",null==t?"":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)(ea(Ml),ea(kl),ea(OV,8))},t.\u0275dir=se({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&&fa("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:[_l([CV]),jo]}),t})();const kV=new oi("NgValidators"),AV=new oi("NgAsyncValidators");function PV(t){return null!=t}function MV(t){const e=ha(t)?U(t):t;return pa(e),e}function IV(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 DV(t,e){return e.map(e=>e(t))}function RV(t){return t.map(t=>function(t){return!t.validate}(t)?t:e=>t.validate(e))}function NV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return IV(DV(t,e))}}(RV(t)):null}function LV(t){return null!=t?function(t){if(!t)return null;const e=t.filter(PV);return 0==e.length?null:function(t){return hv(DV(t,e).map(MV)).pipe(D(IV))}}(RV(t)):null}function jV(t,e){return null===t?[e]:Array.isArray(t)?[...t,e]:[t,e]}function FV(t){return t._rawValidators}function BV(t){return t._rawAsyncValidators}function VV(t){return t?Array.isArray(t)?t:[t]:[]}function zV(t,e){return Array.isArray(t)?t.includes(e):t===e}function UV(t,e){const n=VV(e);return VV(t).forEach(t=>{zV(n,t)||n.push(t)}),n}function HV(t,e){return VV(e).filter(e=>!zV(t,e))}let $V=(()=>{class t{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}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}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=NV(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=LV(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}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=se({type:t}),t})(),GV=(()=>{class t extends $V{get formDirective(){return null}get path(){return null}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,features:[jo]}),t})();class WV extends $V{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class qV{constructor(t){this._cd=t}is(t){var e,n,i;return"submitted"===t?!!(null===(e=this._cd)||void 0===e?void 0:e.submitted):!!(null===(i=null===(n=this._cd)||void 0===n?void 0:n.control)||void 0===i?void 0:i[t])}}let XV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(WV,2))},t.\u0275dir=se({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))},features:[jo]}),t})(),YV=(()=>{class t extends qV{constructor(t){super(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(GV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(t,e){2&t&&ja("ng-untouched",e.is("untouched"))("ng-touched",e.is("touched"))("ng-pristine",e.is("pristine"))("ng-dirty",e.is("dirty"))("ng-valid",e.is("valid"))("ng-invalid",e.is("invalid"))("ng-pending",e.is("pending"))("ng-submitted",e.is("submitted"))},features:[jo]}),t})();function KV(t,e){JV(t,e),e.valueAccessor.writeValue(t.value),function(t,e){e.valueAccessor.registerOnChange(n=>{t._pendingValue=n,t._pendingChange=!0,t._pendingDirty=!0,"change"===t.updateOn&&ez(t,e)})}(t,e),function(t,e){const n=(t,n)=>{e.valueAccessor.writeValue(t),n&&e.viewToModelUpdate(t)};t.registerOnChange(n),e._registerOnDestroy(()=>{t._unregisterOnChange(n)})}(t,e),function(t,e){e.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,"blur"===t.updateOn&&t._pendingChange&&ez(t,e),"submit"!==t.updateOn&&t.markAsTouched()})}(t,e),function(t,e){if(e.valueAccessor.setDisabledState){const n=t=>{e.valueAccessor.setDisabledState(t)};t.registerOnDisabledChange(n),e._registerOnDestroy(()=>{t._unregisterOnDisabledChange(n)})}}(t,e)}function QV(t,e,n=!0){const i=()=>{};e.valueAccessor&&(e.valueAccessor.registerOnChange(i),e.valueAccessor.registerOnTouched(i)),tz(t,e),t&&(e._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function ZV(t,e){t.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(e)})}function JV(t,e){const n=FV(t);null!==e.validator?t.setValidators(jV(n,e.validator)):"function"==typeof n&&t.setValidators([n]);const i=BV(t);null!==e.asyncValidator?t.setAsyncValidators(jV(i,e.asyncValidator)):"function"==typeof i&&t.setAsyncValidators([i]);const r=()=>t.updateValueAndValidity();ZV(e._rawValidators,r),ZV(e._rawAsyncValidators,r)}function tz(t,e){let n=!1;if(null!==t){if(null!==e.validator){const i=FV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.validator);r.length!==i.length&&(n=!0,t.setValidators(r))}}if(null!==e.asyncValidator){const i=BV(t);if(Array.isArray(i)&&i.length>0){const r=i.filter(t=>t!==e.asyncValidator);r.length!==i.length&&(n=!0,t.setAsyncValidators(r))}}}const i=()=>{};return ZV(e._rawValidators,i),ZV(e._rawAsyncValidators,i),n}function ez(t,e){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),e.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function nz(t,e){JV(t,e)}function iz(t,e){t._syncPendingControls(),e.forEach(t=>{const e=t.control;"submit"===e.updateOn&&e._pendingChange&&(t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1)})}function rz(t,e){const n=t.indexOf(e);n>-1&&t.splice(n,1)}const sz="VALID",oz="INVALID",az="PENDING",lz="DISABLED";function cz(t){return(pz(t)?t.validators:t)||null}function uz(t){return Array.isArray(t)?NV(t):t||null}function hz(t,e){return(pz(e)?e.asyncValidators:t)||null}function dz(t){return Array.isArray(t)?LV(t):t||null}function pz(t){return null!=t&&!Array.isArray(t)&&"object"==typeof t}class fz{constructor(t,e){this._hasOwnPendingAsyncValidator=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._rawValidators=t,this._rawAsyncValidators=e,this._composedValidatorFn=uz(this._rawValidators),this._composedAsyncValidatorFn=dz(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===sz}get invalid(){return this.status===oz}get pending(){return this.status==az}get disabled(){return this.status===lz}get enabled(){return this.status!==lz}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._rawValidators=t,this._composedValidatorFn=uz(t)}setAsyncValidators(t){this._rawAsyncValidators=t,this._composedAsyncValidatorFn=dz(t)}addValidators(t){this.setValidators(UV(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(UV(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(HV(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(HV(t,this._rawAsyncValidators))}hasValidator(t){return zV(this._rawValidators,t)}hasAsyncValidator(t){return zV(this._rawAsyncValidators,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=az,!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=lz,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=sz,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(),(this.status===sz||this.status===az)&&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()?lz:sz}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=az,this._hasOwnPendingAsyncValidator=!0;const e=MV(this.asyncValidator(this));this._asyncValidationSubscription=e.subscribe(e=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(e,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(!1!==e.emitEvent)}get(t){return function(t,e,n){if(null==e||(Array.isArray(e)||(e=e.split(".")),Array.isArray(e)&&0===e.length))return null;let i=t;return e.forEach(t=>{i=i instanceof mz?i.controls.hasOwnProperty(t)?i.controls[t]:null:i instanceof bz&&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 Rc,this.statusChanges=new Rc}_calculateStatus(){return this._allControlsDisabled()?lz:this.errors?oz:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(az)?az:this._anyControlsHaveStatus(oz)?oz:sz}_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){pz(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}}class gz extends fz{constructor(t=null,e,n){super(cz(e),hz(n,e)),this._onChange=[],this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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)}_unregisterOnChange(t){rz(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){rz(this._onDisabledChange,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 mz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}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,n={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?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=>{const n=this.controls[e];n&&t(n,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 bz extends fz{constructor(t,e,n){super(cz(e),hz(n,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}at(t){return this.controls[t]}push(t,e={}){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(t,e,n={}){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:n.emitEvent})}removeAt(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(t,e,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),this.controls.splice(t,1),e&&(this.controls.splice(t,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:n.emitEvent}),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={}){null!=t&&(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 gz?t.value:t.getRawValue())}clear(t={}){this.controls.length<1||(this._forEachChild(t=>t._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:t.emitEvent}))}_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 yz={provide:GV,useExisting:pt(()=>_z)},vz=(()=>Promise.resolve(null))();let _z=(()=>{class t extends GV{constructor(t,e){super(),this.submitted=!1,this._directives=[],this.ngSubmit=new Rc,this.form=new mz({},NV(t),LV(e))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){vz.then(()=>{const e=this._findContainer(t.path);t.control=e.registerControl(t.name,t.control),KV(t.control,t),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.push(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name),rz(this._directives,t)})}addFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path),n=new mz({});nz(n,t),e.registerControl(t.name,n),n.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){vz.then(()=>{const e=this._findContainer(t.path);e&&e.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,e){vz.then(()=>{this.form.get(t.path).setValue(e)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,iz(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)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([yz]),jo]}),t})(),wz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})(),xz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Sz=new oi("NgModelWithFormControlWarning"),Ez={provide:WV,useExisting:pt(()=>Cz)};let Cz=(()=>{class t extends WV{constructor(t,e,n,i){super(),this._ngModelWarningConfig=i,this.update=new Rc,this._ngModelWarningSent=!1,this._setValidators(t),this._setAsyncValidators(e),this.valueAccessor=function(t,e){if(!e)return null;let n,i,r;return Array.isArray(e),e.forEach(t=>{t.constructor===TV?n=t:function(t){return Object.getPrototypeOf(t.constructor)===SV}(t)?i=t:r=t}),r||i||n||null}(0,n)}set isDisabled(t){}ngOnChanges(t){if(this._isControlChanged(t)){const e=t.form.previousValue;e&&QV(e,this,!1),KV(this.form,this),this.control.disabled&&this.valueAccessor.setDisabledState&&this.valueAccessor.setDisabledState(!0),this.form.updateValueAndValidity({emitEvent:!1})}(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.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&QV(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_isControlChanged(t){return t.hasOwnProperty("form")}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10),ea(EV,10),ea(Sz,8))},t.\u0275dir=se({type:t,selectors:[["","formControl",""]],inputs:{isDisabled:["disabled","isDisabled"],form:["formControl","form"],model:["ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],features:[_l([Ez]),jo,ye]}),t._ngModelWarningSentOnce=!1,t})();const Oz={provide:GV,useExisting:pt(()=>Tz)};let Tz=(()=>{class t extends GV{constructor(t,e){super(),this.validators=t,this.asyncValidators=e,this.submitted=!1,this._onCollectionChange=()=>this._updateDomValue(),this.directives=[],this.form=null,this.ngSubmit=new Rc,this._setValidators(t),this._setAsyncValidators(e)}ngOnChanges(t){this._checkFormPresent(),t.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(tz(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(t){const e=this.form.get(t.path);return KV(e,t),e.updateValueAndValidity({emitEvent:!1}),this.directives.push(t),e}getControl(t){return this.form.get(t.path)}removeControl(t){QV(t.control||null,t,!1),rz(this.directives,t)}addFormGroup(t){this._setUpFormContainer(t)}removeFormGroup(t){this._cleanUpFormContainer(t)}getFormGroup(t){return this.form.get(t.path)}addFormArray(t){this._setUpFormContainer(t)}removeFormArray(t){this._cleanUpFormContainer(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,iz(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=t.control,n=this.form.get(t.path);e!==n&&(QV(e||null,t),n instanceof gz&&(KV(n,t),t.control=n))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(t){const e=this.form.get(t.path);nz(e,t),e.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(t){if(this.form){const e=this.form.get(t.path);e&&function(t,e){return tz(t,e)}(e,t)&&e.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){JV(this.form,this),this._oldForm&&tz(this._oldForm,this)}_checkFormPresent(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kV,10),ea(AV,10))},t.\u0275dir=se({type:t,selectors:[["","formGroup",""]],hostBindings:function(t,e){1&t&&fa("submit",function(t){return e.onSubmit(t)})("reset",function(){return e.onReset()})},inputs:{form:["formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[_l([Oz]),jo,ye]}),t})(),kz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[xz]]}),t})(),Az=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})(),Pz=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Sz,useValue:e.warnOnNgModelWithFormControl}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[kz]}),t})();function Mz(t){return new C(e=>{let n;try{n=t()}catch(i){return void e.error(i)}return(n?U(n):np()).subscribe(e)})}const Iz=["underline"],Dz=["connectionContainer"],Rz=["inputContainer"],Nz=["label"];function Lz(t,e){1&t&&(aa(0),ra(1,"div",14),oa(2,"div",15),oa(3,"div",16),oa(4,"div",17),sa(),ra(5,"div",18),oa(6,"div",15),oa(7,"div",16),oa(8,"div",17),sa(),la())}function jz(t,e){1&t&&(ra(0,"div",19),xa(1,1),sa())}function Fz(t,e){if(1&t&&(aa(0),xa(1,2),ra(2,"span"),Za(3),sa(),la()),2&t){const t=va(2);ws(3),Ja(t._control.placeholder)}}function Bz(t,e){1&t&&xa(0,3,["*ngSwitchCase","true"])}function Vz(t,e){1&t&&(ra(0,"span",23),Za(1," *"),sa())}function zz(t,e){if(1&t){const t=ua();ra(0,"label",20,21),fa("cdkObserveContent",function(){return $e(t),va().updateOutlineGap()}),Jo(2,Fz,4,1,"ng-container",12),Jo(3,Bz,1,0,"ng-content",12),Jo(4,Vz,2,0,"span",22),sa()}if(2&t){const t=va();ja("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),na("cdkObserveContentDisabled","outline"!=t.appearance)("id",t._labelId)("ngSwitch",t._hasLabel()),Ko("for",t._control.id)("aria-owns",t._control.id),ws(2),na("ngSwitchCase",!1),ws(1),na("ngSwitchCase",!0),ws(1),na("ngIf",!t.hideRequiredMarker&&t._control.required&&!t._control.disabled)}}function Uz(t,e){1&t&&(ra(0,"div",24),xa(1,4),sa())}function Hz(t,e){if(1&t&&(ra(0,"div",25,26),oa(2,"span",27),sa()),2&t){const t=va();ws(2),ja("mat-accent","accent"==t.color)("mat-warn","warn"==t.color)}}function $z(t,e){1&t&&(ra(0,"div"),xa(1,5),sa()),2&t&&na("@transitionMessages",va()._subscriptAnimationState)}function Gz(t,e){if(1&t&&(ra(0,"div",31),Za(1),sa()),2&t){const t=va(2);na("id",t._hintLabelId),ws(1),Ja(t.hintLabel)}}function Wz(t,e){if(1&t&&(ra(0,"div",28),Jo(1,Gz,2,2,"div",29),xa(2,6),oa(3,"div",30),xa(4,7),sa()),2&t){const t=va();na("@transitionMessages",t._subscriptAnimationState),ws(1),na("ngIf",t.hintLabel)}}const qz=["*",[["","matPrefix",""]],[["mat-placeholder"]],[["mat-label"]],[["","matSuffix",""]],[["mat-error"]],[["mat-hint",3,"align","end"]],[["mat-hint","align","end"]]],Xz=["*","[matPrefix]","mat-placeholder","mat-label","[matSuffix]","mat-error","mat-hint:not([align='end'])","mat-hint[align='end']"],Yz=new oi("MatError"),Kz={transitionMessages:Vg("transitionMessages",[$g("enter",Hg({opacity:1,transform:"translateY(0%)"})),Wg("void => enter",[Hg({opacity:0,transform:"translateY(-5px)"}),zg("300ms cubic-bezier(0.55, 0, 0.55, 0.2)")])])};let Qz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t}),t})();const Zz=new oi("MatHint");let Jz=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-label"]]}),t})(),tU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-placeholder"]]}),t})();const eU=new oi("MatPrefix");let nU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","matPrefix",""]],features:[_l([{provide:eU,useExisting:t}])]}),t})();const iU=new oi("MatSuffix");let rU=0;const sU=jy(class{constructor(t){this._elementRef=t}},"primary"),oU=new oi("MAT_FORM_FIELD_DEFAULT_OPTIONS"),aU=new oi("MatFormField");let lU=(()=>{class t extends sU{constructor(t,e,n,i,r,s,o,a){super(t),this._changeDetectorRef=e,this._dir=i,this._defaults=r,this._platform=s,this._ngZone=o,this._outlineGapCalculationNeededImmediately=!1,this._outlineGapCalculationNeededOnStable=!1,this._destroyed=new P,this._showAlwaysAnimate=!1,this._subscriptAnimationState="",this._hintLabel="",this._hintLabelId="mat-hint-"+rU++,this._labelId="mat-form-field-label-"+rU++,this.floatLabel=this._getDefaultFloatLabelState(),this._animationsEnabled="NoopAnimations"!==a,this.appearance=r&&r.appearance?r.appearance:"legacy",this._hideRequiredMarker=!(!r||null==r.hideRequiredMarker)&&r.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=md(t)}_shouldAlwaysFloat(){return"always"===this.floatLabel&&!this._showAlwaysAnimate}_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}getLabelId(){return this._hasFloatingLabel()?this._labelId:null}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(Kd(null)).subscribe(()=>{this._validatePlaceholders(),this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),t.ngControl&&t.ngControl.valueChanges&&t.ngControl.valueChanges.pipe(Wd(this._destroyed)).subscribe(()=>this._changeDetectorRef.markForCheck()),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.pipe(Wd(this._destroyed)).subscribe(()=>{this._outlineGapCalculationNeededOnStable&&this.updateOutlineGap()})}),Q(this._prefixChildren.changes,this._suffixChildren.changes).subscribe(()=>{this._outlineGapCalculationNeededOnStable=!0,this._changeDetectorRef.markForCheck()}),this._hintChildren.changes.pipe(Kd(null)).subscribe(()=>{this._processHints(),this._changeDetectorRef.markForCheck()}),this._errorChildren.changes.pipe(Kd(null)).subscribe(()=>{this._syncDescribedByIds(),this._changeDetectorRef.markForCheck()}),this._dir&&this._dir.change.pipe(Wd(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._labelChildNonStatic&&!this._labelChildStatic)}_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,xd(this._label.nativeElement,"transitionend").pipe(Gp(1)).subscribe(()=>{this._showAlwaysAnimate=!1})),this.floatLabel="always",this._changeDetectorRef.markForCheck())}_validatePlaceholders(){}_processHints(){this._validateHints(),this._syncDescribedByIds()}_validateHints(){}_getDefaultFloatLabelState(){return this._defaults&&this._defaults.floatLabel||"auto"}_syncDescribedByIds(){if(this._control){let t=[];if(this._control.userAriaDescribedBy&&"string"==typeof this._control.userAriaDescribedBy&&t.push(...this._control.userAriaDescribedBy.split(" ")),"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.push(...this._errorChildren.map(t=>t.id));this._control.setDescribedByIds(t)}}_validateControlChild(){}updateOutlineGap(){const t=this._label?this._label.nativeElement:null;if(!("outline"===this.appearance&&t&&t.children.length&&t.textContent.trim()&&this._platform.isBrowser))return;if(!this._isAttachedToDOM())return void(this._outlineGapCalculationNeededImmediately=!0);let e=0,n=0;const i=this._connectionContainerRef.nativeElement,r=i.querySelectorAll(".mat-form-field-outline-start"),s=i.querySelectorAll(".mat-form-field-outline-gap");if(this._label&&this._label.nativeElement.children.length){const r=i.getBoundingClientRect();if(0===r.width&&0===r.height)return this._outlineGapCalculationNeededOnStable=!0,void(this._outlineGapCalculationNeededImmediately=!1);const s=this._getStartEnd(r),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.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,ig],Ny]}),t})();function uU(t,e=jd){const n=function(t){return t instanceof Date&&!isNaN(+t)}(t)?+t-e.now():Math.abs(t);return t=>t.lift(new hU(n,e))}class hU{constructor(t,e){this.delay=t,this.scheduler=e}call(t,e){return e.subscribe(new dU(t,this.delay,this.scheduler))}}class dU extends v{constructor(t,e,n){super(t),this.delay=e,this.scheduler=n,this.queue=[],this.active=!1,this.errored=!1}static dispatch(t){const e=t.source,n=e.queue,i=t.scheduler,r=t.destination;for(;n.length>0&&n[0].time-i.now()<=0;)n.shift().notification.observe(r);if(n.length>0){const e=Math.max(0,n[0].time-i.now());this.schedule(t,e)}else this.unsubscribe(),e.active=!1}_schedule(t){this.active=!0,this.destination.add(t.schedule(dU.dispatch,this.delay,{source:this,destination:this.destination,scheduler:t}))}scheduleNotification(t){if(!0===this.errored)return;const e=this.scheduler,n=new pU(e.now()+this.delay,t);this.queue.push(n),!1===this.active&&this._schedule(e)}_next(t){this.scheduleNotification(sp.createNext(t))}_error(t){this.errored=!0,this.queue=[],this.destination.error(t),this.unsubscribe()}_complete(){this.scheduleNotification(sp.createComplete()),this.unsubscribe()}}class pU{constructor(t,e){this.time=t,this.notification=e}}const fU=["panel"];function gU(t,e){if(1&t&&(ra(0,"div",0,1),xa(2),sa()),2&t){const t=e.id,n=va();na("id",n.id)("ngClass",n._classList),Ko("aria-label",n.ariaLabel||null)("aria-labelledby",n._getPanelAriaLabelledby(t))}}const mU=["*"];let bU=0;class yU{constructor(t,e){this.source=t,this.option=e}}const vU=Fy(class{}),_U=new oi("mat-autocomplete-default-options",{providedIn:"root",factory:function(){return{autoActiveFirstOption:!1}}});let wU=(()=>{class t extends vU{constructor(t,e,n,i){super(),this._changeDetectorRef=t,this._elementRef=e,this._activeOptionChanges=g.EMPTY,this.showPanel=!1,this._isOpen=!1,this.displayWith=null,this.optionSelected=new Rc,this.opened=new Rc,this.closed=new Rc,this.optionActivated=new Rc,this._classList={},this.id="mat-autocomplete-"+bU++,this.inertGroups=(null==i?void 0:i.SAFARI)||!1,this._autoActiveFirstOption=!!n.autoActiveFirstOption}get isOpen(){return this._isOpen&&this.showPanel}get autoActiveFirstOption(){return this._autoActiveFirstOption}set autoActiveFirstOption(t){this._autoActiveFirstOption=md(t)}set classList(t){this._classList=t&&t.length?function(t,e=/\s+/){const n=[];if(null!=t){const i=Array.isArray(t)?t:`${t}`.split(e);for(const t of i){const e=`${t}`.trim();e&&n.push(e)}}return n}(t).reduce((t,e)=>(t[e]=!0,t),{}):{},this._setVisibilityClasses(this._classList),this._elementRef.nativeElement.className=""}ngAfterContentInit(){this._keyManager=new fg(this.options).withWrap(),this._activeOptionChanges=this._keyManager.change.subscribe(t=>{this.isOpen&&this.optionActivated.emit({source:this,option:this.options.toArray()[t]||null})}),this._setVisibility()}ngOnDestroy(){this._activeOptionChanges.unsubscribe()}_setScrollTop(t){this.panel&&(this.panel.nativeElement.scrollTop=t)}_getScrollTop(){return this.panel?this.panel.nativeElement.scrollTop:0}_setVisibility(){this.showPanel=!!this.options.length,this._setVisibilityClasses(this._classList),this._changeDetectorRef.markForCheck()}_emitSelectEvent(t){const e=new yU(this,t);this.optionSelected.emit(e)}_getPanelAriaLabelledby(t){return this.ariaLabel?null:this.ariaLabelledby?(t?t+" ":"")+this.ariaLabelledby:t}_setVisibilityClasses(t){t[this._visibleClass]=this.showPanel,t[this._hiddenClass]=!this.showPanel}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(kl),ea(_U),ea(pp))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(sc,7),qc(fU,5)),2&t){let t;Wc(t=Yc())&&(e.template=t.first),Wc(t=Yc())&&(e.panel=t.first)}},inputs:{displayWith:"displayWith",autoActiveFirstOption:"autoActiveFirstOption",classList:["class","classList"],ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],panelWidth:"panelWidth"},outputs:{optionSelected:"optionSelected",opened:"opened",closed:"closed",optionActivated:"optionActivated"},features:[jo]}),t})(),xU=(()=>{class t extends wU{constructor(){super(...arguments),this._visibleClass="mat-autocomplete-visible",this._hiddenClass="mat-autocomplete-hidden"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-autocomplete"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,iv,5),Xc(n,av,5)),2&t){let t;Wc(t=Yc())&&(e.optionGroups=t),Wc(t=Yc())&&(e.options=t)}},hostAttrs:[1,"mat-autocomplete"],inputs:{disableRipple:"disableRipple"},exportAs:["matAutocomplete"],features:[_l([{provide:Jy,useExisting:t}]),jo],ngContentSelectors:mU,decls:1,vars:0,consts:[["role","listbox",1,"mat-autocomplete-panel",3,"id","ngClass"],["panel",""]],template:function(t,e){1&t&&(wa(),Jo(0,gU,3,4,"ng-template"))},directives:[mh],styles:[".mat-autocomplete-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;visibility:hidden;max-width:none;max-height:256px;position:relative;width:100%;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.mat-autocomplete-panel.mat-autocomplete-visible{visibility:visible}.mat-autocomplete-panel.mat-autocomplete-hidden{visibility:hidden}.mat-autocomplete-panel-above .mat-autocomplete-panel{border-radius:0;border-top-left-radius:4px;border-top-right-radius:4px}.mat-autocomplete-panel .mat-divider-horizontal{margin-top:-1px}.cdk-high-contrast-active .mat-autocomplete-panel{outline:solid 1px}mat-autocomplete{display:none}\n"],encapsulation:2,changeDetection:0}),t})();const SU=new oi("mat-autocomplete-scroll-strategy"),EU={provide:SU,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}},CU={provide:EV,useExisting:pt(()=>TU),multi:!0};let OU=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u){this._element=t,this._overlay=e,this._viewContainerRef=n,this._zone=i,this._changeDetectorRef=r,this._dir=o,this._formField=a,this._document=l,this._viewportRuler=c,this._defaults=u,this._componentDestroyed=!1,this._autocompleteDisabled=!1,this._manuallyFloatingLabel=!1,this._viewportSubscription=g.EMPTY,this._canOpenOnNextFocus=!0,this._closeKeyEventStream=new P,this._windowBlurHandler=()=>{this._canOpenOnNextFocus=this._document.activeElement!==this._element.nativeElement||this.panelOpen},this._onChange=()=>{},this._onTouched=()=>{},this.position="auto",this.autocompleteAttribute="off",this._overlayAttached=!1,this.optionSelections=Mz(()=>this.autocomplete&&this.autocomplete.options?Q(...this.autocomplete.options.map(t=>t.onSelectionChange)):this._zone.onStable.pipe(Gp(1),Qd(()=>this.optionSelections))),this._scrollStrategy=s}get autocompleteDisabled(){return this._autocompleteDisabled}set autocompleteDisabled(t){this._autocompleteDisabled=md(t)}ngAfterViewInit(){const t=this._getWindow();void 0!==t&&this._zone.runOutsideAngular(()=>t.addEventListener("blur",this._windowBlurHandler))}ngOnChanges(t){t.position&&this._positionStrategy&&(this._setStrategyPositions(this._positionStrategy),this.panelOpen&&this._overlayRef.updatePosition())}ngOnDestroy(){const t=this._getWindow();void 0!==t&&t.removeEventListener("blur",this._windowBlurHandler),this._viewportSubscription.unsubscribe(),this._componentDestroyed=!0,this._destroyPanel(),this._closeKeyEventStream.complete()}get panelOpen(){return this._overlayAttached&&this.autocomplete.showPanel}openPanel(){this._attachOverlay(),this._floatLabel()}closePanel(){this._resetLabel(),this._overlayAttached&&(this.panelOpen&&this.autocomplete.closed.emit(),this.autocomplete._isOpen=this._overlayAttached=!1,this._overlayRef&&this._overlayRef.hasAttached()&&(this._overlayRef.detach(),this._closingActionsSubscription.unsubscribe()),this._componentDestroyed||this._changeDetectorRef.detectChanges())}updatePosition(){this._overlayAttached&&this._overlayRef.updatePosition()}get panelClosingActions(){return Q(this.optionSelections,this.autocomplete._keyManager.tabOut.pipe(Hd(()=>this._overlayAttached)),this._closeKeyEventStream,this._getOutsideClickStream(),this._overlayRef?this._overlayRef.detachments().pipe(Hd(()=>this._overlayAttached)):wd()).pipe(D(t=>t instanceof sv?t:null))}get activeOption(){return this.autocomplete&&this.autocomplete._keyManager?this.autocomplete._keyManager.activeItem:null}_getOutsideClickStream(){return Q(xd(this._document,"click"),xd(this._document,"auxclick"),xd(this._document,"touchend")).pipe(Hd(t=>{const e=Ep(t),n=this._formField?this._formField._elementRef.nativeElement:null,i=this.connectedTo?this.connectedTo.elementRef.nativeElement:null;return this._overlayAttached&&e!==this._element.nativeElement&&(!n||!n.contains(e))&&(!i||!i.contains(e))&&!!this._overlayRef&&!this._overlayRef.overlayElement.contains(e)}))}writeValue(t){Promise.resolve(null).then(()=>this._setTriggerValue(t))}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this._element.nativeElement.disabled=t}_handleKeydown(t){const e=t.keyCode;if(27===e&&!Qp(t)&&t.preventDefault(),this.activeOption&&13===e&&this.panelOpen)this.activeOption._selectViaInteraction(),this._resetActiveItem(),t.preventDefault();else if(this.autocomplete){const n=this.autocomplete._keyManager.activeItem,i=38===e||40===e;this.panelOpen||9===e?this.autocomplete._keyManager.onKeydown(t):i&&this._canOpen()&&this.openPanel(),(i||this.autocomplete._keyManager.activeItem!==n)&&this._scrollToOption(this.autocomplete._keyManager.activeItemIndex||0)}}_handleInput(t){let e=t.target,n=e.value;"number"===e.type&&(n=""==n?null:parseFloat(n)),this._previousValue!==n&&(this._previousValue=n,this._onChange(n),this._canOpen()&&this._document.activeElement===t.target&&this.openPanel())}_handleFocus(){this._canOpenOnNextFocus?this._canOpen()&&(this._previousValue=this._element.nativeElement.value,this._attachOverlay(),this._floatLabel(!0)):this._canOpenOnNextFocus=!0}_floatLabel(t=!1){this._formField&&"auto"===this._formField.floatLabel&&(t?this._formField._animateAndLockLabel():this._formField.floatLabel="always",this._manuallyFloatingLabel=!0)}_resetLabel(){this._manuallyFloatingLabel&&(this._formField.floatLabel="auto",this._manuallyFloatingLabel=!1)}_subscribeToClosingActions(){return Q(this._zone.onStable.pipe(Gp(1)),this.autocomplete.options.changes.pipe($f(()=>this._positionStrategy.reapplyLastPosition()),uU(0))).pipe(Qd(()=>{const t=this.panelOpen;return this._resetActiveItem(),this.autocomplete._setVisibility(),this.panelOpen&&(this._overlayRef.updatePosition(),t!==this.panelOpen&&this.autocomplete.opened.emit()),this.panelClosingActions}),Gp(1)).subscribe(t=>this._setValueAndClose(t))}_destroyPanel(){this._overlayRef&&(this.closePanel(),this._overlayRef.dispose(),this._overlayRef=null)}_setTriggerValue(t){const e=this.autocomplete&&this.autocomplete.displayWith?this.autocomplete.displayWith(t):t,n=null!=e?e:"";this._formField?this._formField._control.value=n:this._element.nativeElement.value=n,this._previousValue=n}_setValueAndClose(t){t&&t.source&&(this._clearPreviousSelectedOption(t.source),this._setTriggerValue(t.source.value),this._onChange(t.source.value),this._element.nativeElement.focus(),this.autocomplete._emitSelectEvent(t.source)),this.closePanel()}_clearPreviousSelectedOption(t){this.autocomplete.options.forEach(e=>{e!==t&&e.selected&&e.deselect()})}_attachOverlay(){var t;let e=this._overlayRef;e?(this._positionStrategy.setOrigin(this._getConnectedElement()),e.updateSize({width:this._getPanelWidth()})):(this._portal=new Lp(this.autocomplete.template,this._viewContainerRef,{id:null===(t=this._formField)||void 0===t?void 0:t.getLabelId()}),e=this._overlay.create(this._getOverlayConfig()),this._overlayRef=e,e.keydownEvents().subscribe(t=>{(27===t.keyCode&&!Qp(t)||38===t.keyCode&&Qp(t,"altKey"))&&(this._closeKeyEventStream.next(),this._resetActiveItem(),t.stopPropagation(),t.preventDefault())}),this._viewportSubscription=this._viewportRuler.change().subscribe(()=>{this.panelOpen&&e&&e.updateSize({width:this._getPanelWidth()})})),e&&!e.hasAttached()&&(e.attach(this._portal),this._closingActionsSubscription=this._subscribeToClosingActions());const n=this.panelOpen;this.autocomplete._setVisibility(),this.autocomplete._isOpen=this._overlayAttached=!0,this.panelOpen&&n!==this.panelOpen&&this.autocomplete.opened.emit()}_getOverlayConfig(){var t;return new af({positionStrategy:this._getOverlayPosition(),scrollStrategy:this._scrollStrategy(),width:this._getPanelWidth(),direction:this._dir,panelClass:null===(t=this._defaults)||void 0===t?void 0:t.overlayPanelClass})}_getOverlayPosition(){const t=this._overlay.position().flexibleConnectedTo(this._getConnectedElement()).withFlexibleDimensions(!1).withPush(!1);return this._setStrategyPositions(t),this._positionStrategy=t,t}_setStrategyPositions(t){const e=[{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"},{originX:"end",originY:"bottom",overlayX:"end",overlayY:"top"}],n=this._aboveClass,i=[{originX:"start",originY:"top",overlayX:"start",overlayY:"bottom",panelClass:n},{originX:"end",originY:"top",overlayX:"end",overlayY:"bottom",panelClass:n}];let r;r="above"===this.position?i:"below"===this.position?e:[...e,...i],t.withPositions(r)}_getConnectedElement(){return this.connectedTo?this.connectedTo.elementRef:this._formField?this._formField.getConnectedOverlayOrigin():this._element}_getPanelWidth(){return this.autocomplete.panelWidth||this._getHostWidth()}_getHostWidth(){return this._getConnectedElement().nativeElement.getBoundingClientRect().width}_resetActiveItem(){const t=this.autocomplete;t.autoActiveFirstOption?t._keyManager.setFirstItemActive():t._keyManager.setActiveItem(-1)}_canOpen(){const t=this._element.nativeElement;return!t.readOnly&&!t.disabled&&!this._autocompleteDisabled}_getWindow(){var t;return(null===(t=this._document)||void 0===t?void 0:t.defaultView)||window}_scrollToOption(t){const e=this.autocomplete,n=lv(t,e.options,e.optionGroups);if(0===t&&1===n)e._setScrollTop(0);else if(e.panel){const n=e.options.toArray()[t];if(n){const t=n._getHostElement(),i=cv(t.offsetTop,t.offsetHeight,e._getScrollTop(),e.panel.nativeElement.offsetHeight);e._setScrollTop(i)}}}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(kf),ea(hc),ea(xu),ea(tc),ea(SU),ea(Op,8),ea(aU,9),ea(Yu,8),ea(Mp),ea(_U,8))},t.\u0275dir=se({type:t,inputs:{position:["matAutocompletePosition","position"],autocompleteAttribute:["autocomplete","autocompleteAttribute"],autocompleteDisabled:["matAutocompleteDisabled","autocompleteDisabled"],autocomplete:["matAutocomplete","autocomplete"],connectedTo:["matAutocompleteConnectedTo","connectedTo"]},features:[ye]}),t})(),TU=(()=>{class t extends OU{constructor(){super(...arguments),this._aboveClass="mat-autocomplete-panel-above"}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["input","matAutocomplete",""],["textarea","matAutocomplete",""]],hostAttrs:[1,"mat-autocomplete-trigger"],hostVars:7,hostBindings:function(t,e){1&t&&fa("focusin",function(){return e._handleFocus()})("blur",function(){return e._onTouched()})("input",function(t){return e._handleInput(t)})("keydown",function(t){return e._handleKeydown(t)}),2&t&&Ko("autocomplete",e.autocompleteAttribute)("role",e.autocompleteDisabled?null:"combobox")("aria-autocomplete",e.autocompleteDisabled?null:"list")("aria-activedescendant",e.panelOpen&&e.activeOption?e.activeOption.id:null)("aria-expanded",e.autocompleteDisabled?null:e.panelOpen.toString())("aria-owns",e.autocompleteDisabled||!e.panelOpen||null==e.autocomplete?null:e.autocomplete.id)("aria-haspopup",!e.autocompleteDisabled)},exportAs:["matAutocompleteTrigger"],features:[_l([CU]),jo]}),t})(),kU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[EU],imports:[[Rf,uv,Ny,Rh],Ip,uv,Ny]}),t})();const AU=_p({passive:!0});let PU=(()=>{class t{constructor(t,e){this._platform=t,this._ngZone=e,this._monitoredElements=new Map}monitor(t){if(!this._platform.isBrowser)return ep;const e=_d(t),n=this._monitoredElements.get(e);if(n)return n.subject;const i=new P,r="cdk-text-field-autofilled",s=t=>{"cdk-text-field-autofill-start"!==t.animationName||e.classList.contains(r)?"cdk-text-field-autofill-end"===t.animationName&&e.classList.contains(r)&&(e.classList.remove(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!1}))):(e.classList.add(r),this._ngZone.run(()=>i.next({target:t.target,isAutofilled:!0})))};return this._ngZone.runOutsideAngular(()=>{e.addEventListener("animationstart",s,AU),e.classList.add("cdk-text-field-autofill-monitored")}),this._monitoredElements.set(e,{subject:i,unlisten:()=>{e.removeEventListener("animationstart",s,AU)}}),i}stopMonitoring(t){const e=_d(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)(Ci(pp),Ci(xu))},t.\u0275prov=xt({factory:function(){return new t(Ci(pp),Ci(xu))},token:t,providedIn:"root"}),t})(),MU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[fp]]}),t})();const IU=new oi("MAT_INPUT_VALUE_ACCESSOR"),DU=["button","checkbox","file","hidden","image","radio","range","reset","submit"];let RU=0;const NU=Vy(class{constructor(t,e,n,i){this._defaultErrorStateMatcher=t,this._parentForm=e,this._parentFormGroup=n,this.ngControl=i}});let LU=(()=>{class t extends NU{constructor(t,e,n,i,r,s,o,a,l,c){super(s,i,r,n),this._elementRef=t,this._platform=e,this._autofillMonitor=a,this._formField=c,this._uid="mat-input-"+RU++,this.focused=!1,this.stateChanges=new P,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=>mp().has(t));const u=this._elementRef.nativeElement,h=u.nodeName.toLowerCase();this._inputValueAccessor=o||u,this._previousNativeValue=this.value,this.id=this.id,e.IOS&&l.runOutsideAngular(()=>{t.nativeElement.addEventListener("keyup",t=>{const e=t.target;!e.value&&0===e.selectionStart&&0===e.selectionEnd&&(e.setSelectionRange(1,1),e.setSelectionRange(0,0))})}),this._isServer=!this._platform.isBrowser,this._isNativeSelect="select"===h,this._isTextarea="textarea"===h,this._isInFormField=!!c,this._isNativeSelect&&(this.controlType=u.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=md(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=md(t)}get type(){return this._type}set type(t){this._type=t||"text",this._validateType(),!this._isTextarea&&mp().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=md(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.focused=t,this.stateChanges.next())}_onInput(){}_dirtyCheckPlaceholder(){var t,e;const n=(null===(e=null===(t=this._formField)||void 0===t?void 0:t._hideControlPlaceholder)||void 0===e?void 0:e.call(t))?null:this.placeholder;if(n!==this._previousPlaceholder){const t=this._elementRef.nativeElement;this._previousPlaceholder=n,n?t.setAttribute("placeholder",n):t.removeAttribute("placeholder")}}_dirtyCheckNativeValue(){const t=this._elementRef.nativeElement.value;this._previousNativeValue!==t&&(this._previousNativeValue=t,this.stateChanges.next())}_validateType(){DU.indexOf(this._type)}_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){t.length?this._elementRef.nativeElement.setAttribute("aria-describedby",t.join(" ")):this._elementRef.nativeElement.removeAttribute("aria-describedby")}onContainerClick(){this.focused||this.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(WV,10),ea(_z,8),ea(Tz,8),ea(zy),ea(IU,10),ea(PU),ea(xu),ea(aU,8))},t.\u0275dir=se({type:t,selectors:[["input","matInput",""],["textarea","matInput",""],["select","matNativeControl",""],["input","matNativeControl",""],["textarea","matNativeControl",""]],hostAttrs:[1,"mat-input-element","mat-form-field-autofill-control"],hostVars:9,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._focusChanged(!0)})("blur",function(){return e._focusChanged(!1)})("input",function(){return e._onInput()}),2&t&&(il("disabled",e.disabled)("required",e.required),Ko("id",e.id)("data-placeholder",e.placeholder)("readonly",e.readonly&&!e._isNativeSelect||null)("aria-invalid",e.empty&&e.required?null:e.errorState)("aria-required",e.required),ja("mat-input-server",e._isServer))},inputs:{id:"id",disabled:"disabled",required:"required",type:"type",value:"value",readonly:"readonly",placeholder:"placeholder",errorStateMatcher:"errorStateMatcher",userAriaDescribedBy:["aria-describedby","userAriaDescribedBy"]},exportAs:["matInput"],features:[_l([{provide:Qz,useExisting:t}]),jo,ye]}),t})(),jU=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[zy],imports:[[MU,cU,Ny],MU,cU]}),t})();function FU(...t){const e=t.length;if(0===e)throw new Error("list of properties cannot be empty.");return n=>D(function(t,e){return n=>{let i=n;for(let r=0;rYU),multi:!0};class qU{}const XU=By(jy(Ly(class{constructor(t){this._elementRef=t}}),"accent"));let YU=(()=>{class t extends XU{constructor(t,e,n,i,r,s,o,a){super(t),this._focusMonitor=e,this._changeDetectorRef=n,this._dir=i,this._ngZone=s,this._animationMode=a,this._invert=!1,this._max=100,this._min=0,this._step=1,this._thumbLabel=!1,this._tickInterval=0,this._value=null,this._vertical=!1,this.change=new Rc,this.input=new Rc,this.valueChange=new Rc,this.onTouched=()=>{},this._percent=0,this._isSliding=null,this._isActive=!1,this._tickIntervalPercent=0,this._sliderDimensions=null,this._controlValueAccessorChangeFn=()=>{},this._dirChangeSubscription=g.EMPTY,this._pointerDown=t=>{this.disabled||this._isSliding||!KU(t)&&0!==t.button||this._ngZone.run(()=>{this._touchId=KU(t)?function(t,e){for(let n=0;n{if("pointer"===this._isSliding){const e=QU(t,this._touchId);if(e){t.preventDefault();const n=this.value;this._lastPointerEvent=t,this._updateValueFromPosition(e),n!=this.value&&this._emitInputEvent()}}},this._pointerUp=t=>{"pointer"===this._isSliding&&(!KU(t)||"number"!=typeof this._touchId||ZU(t.changedTouches,this._touchId))&&(t.preventDefault(),this._removeGlobalEvents(),this._isSliding=null,this._touchId=void 0,this._valueOnSlideStart!=this.value&&!this.disabled&&this._emitChangeEvent(),this._valueOnSlideStart=this._lastPointerEvent=null)},this._windowBlur=()=>{this._lastPointerEvent&&this._pointerUp(this._lastPointerEvent)},this._document=o,this.tabIndex=parseInt(r)||0,s.runOutsideAngular(()=>{const e=t.nativeElement;e.addEventListener("mousedown",this._pointerDown,GU),e.addEventListener("touchstart",this._pointerDown,GU)})}get invert(){return this._invert}set invert(t){this._invert=md(t)}get max(){return this._max}set max(t){this._max=bd(t,this._max),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get min(){return this._min}set min(t){this._min=bd(t,this._min),this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}get step(){return this._step}set step(t){this._step=bd(t,this._step),this._step%1!=0&&(this._roundToDecimal=this._step.toString().split(".").pop().length),this._changeDetectorRef.markForCheck()}get thumbLabel(){return this._thumbLabel}set thumbLabel(t){this._thumbLabel=md(t)}get tickInterval(){return this._tickInterval}set tickInterval(t){this._tickInterval="auto"===t?"auto":"number"==typeof t||"string"==typeof t?bd(t,this._tickInterval):0}get value(){return null===this._value&&(this.value=this._min),this._value}set value(t){if(t!==this._value){let e=bd(t,0);this._roundToDecimal&&e!==this.min&&e!==this.max&&(e=parseFloat(e.toFixed(this._roundToDecimal))),this._value=e,this._percent=this._calculatePercentage(this._value),this._changeDetectorRef.markForCheck()}}get vertical(){return this._vertical}set vertical(t){this._vertical=md(t)}get displayValue(){return this.displayWith?this.displayWith(this.value):this._roundToDecimal&&this.value&&this.value%1!=0?this.value.toFixed(this._roundToDecimal):this.value||0}focus(t){this._focusHostElement(t)}blur(){this._blurHostElement()}get percent(){return this._clamp(this._percent)}_shouldInvertAxis(){return this.vertical?!this.invert:this.invert}_isMinValue(){return 0===this.percent}_getThumbGap(){return this.disabled?7:this._isMinValue()&&!this.thumbLabel?this._isActive?10:7:0}_getTrackBackgroundStyles(){const t=this.vertical?`1, ${1-this.percent}, 1`:1-this.percent+", 1, 1";return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"-":""}${this._getThumbGap()}px) scale3d(${t})`}}_getTrackFillStyles(){const t=this.percent,e=this.vertical?`1, ${t}, 1`:`${t}, 1, 1`;return{transform:`translate${this.vertical?"Y":"X"}(${this._shouldInvertMouseCoords()?"":"-"}${this._getThumbGap()}px) scale3d(${e})`,display:0===t?"none":""}}_getTicksContainerStyles(){return{transform:`translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"-":""}${this._tickIntervalPercent/2*100}%)`}}_getTicksStyles(){let t=100*this._tickIntervalPercent,e={backgroundSize:this.vertical?`2px ${t}%`:`${t}% 2px`,transform:`translateZ(0) translate${this.vertical?"Y":"X"}(${this.vertical||"rtl"!=this._getDirection()?"":"-"}${t/2}%)${this.vertical||"rtl"!=this._getDirection()?"":" rotate(180deg)"}`};if(this._isMinValue()&&this._getThumbGap()){const t=this._shouldInvertAxis();let n;n=this.vertical?t?"Bottom":"Top":t?"Right":"Left",e[`padding${n}`]=`${this._getThumbGap()}px`}return e}_getThumbContainerStyles(){const t=this._shouldInvertAxis();return{transform:`translate${this.vertical?"Y":"X"}(-${100*(("rtl"!=this._getDirection()||this.vertical?t:!t)?this.percent:1-this.percent)}%)`}}_shouldInvertMouseCoords(){const t=this._shouldInvertAxis();return"rtl"!=this._getDirection()||this.vertical?t:!t}_getDirection(){return this._dir&&"rtl"==this._dir.value?"rtl":"ltr"}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{this._isActive=!!t&&"keyboard"!==t,this._changeDetectorRef.detectChanges()}),this._dir&&(this._dirChangeSubscription=this._dir.change.subscribe(()=>{this._changeDetectorRef.markForCheck()}))}ngOnDestroy(){const t=this._elementRef.nativeElement;t.removeEventListener("mousedown",this._pointerDown,GU),t.removeEventListener("touchstart",this._pointerDown,GU),this._lastPointerEvent=null,this._removeGlobalEvents(),this._focusMonitor.stopMonitoring(this._elementRef),this._dirChangeSubscription.unsubscribe()}_onMouseenter(){this.disabled||(this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent())}_onFocus(){this._sliderDimensions=this._getSliderDimensions(),this._updateTickIntervalPercent()}_onBlur(){this.onTouched()}_onKeydown(t){if(this.disabled||Qp(t)||this._isSliding&&"keyboard"!==this._isSliding)return;const e=this.value;switch(t.keyCode){case 33:this._increment(10);break;case 34:this._increment(-10);break;case 35:this.value=this.max;break;case 36:this.value=this.min;break;case 37:this._increment("rtl"==this._getDirection()?1:-1);break;case 38:this._increment(1);break;case 39:this._increment("rtl"==this._getDirection()?-1:1);break;case 40:this._increment(-1);break;default:return}e!=this.value&&(this._emitInputEvent(),this._emitChangeEvent()),this._isSliding="keyboard",t.preventDefault()}_onKeyup(){"keyboard"===this._isSliding&&(this._isSliding=null)}_getWindow(){return this._document.defaultView||window}_bindGlobalEvents(t){const e=this._document,n=KU(t),i=n?"touchend":"mouseup";e.addEventListener(n?"touchmove":"mousemove",this._pointerMove,GU),e.addEventListener(i,this._pointerUp,GU),n&&e.addEventListener("touchcancel",this._pointerUp,GU);const r=this._getWindow();void 0!==r&&r&&r.addEventListener("blur",this._windowBlur)}_removeGlobalEvents(){const t=this._document;t.removeEventListener("mousemove",this._pointerMove,GU),t.removeEventListener("mouseup",this._pointerUp,GU),t.removeEventListener("touchmove",this._pointerMove,GU),t.removeEventListener("touchend",this._pointerUp,GU),t.removeEventListener("touchcancel",this._pointerUp,GU);const e=this._getWindow();void 0!==e&&e&&e.removeEventListener("blur",this._windowBlur)}_increment(t){this.value=this._clamp((this.value||0)+this.step*t,this.min,this.max)}_updateValueFromPosition(t){if(!this._sliderDimensions)return;let e=this._clamp(((this.vertical?t.y:t.x)-(this.vertical?this._sliderDimensions.top:this._sliderDimensions.left))/(this.vertical?this._sliderDimensions.height:this._sliderDimensions.width));if(this._shouldInvertMouseCoords()&&(e=1-e),0===e)this.value=this.min;else if(1===e)this.value=this.max;else{const t=this._calculateValue(e),n=Math.round((t-this.min)/this.step)*this.step+this.min;this.value=this._clamp(n,this.min,this.max)}}_emitChangeEvent(){this._controlValueAccessorChangeFn(this.value),this.valueChange.emit(this.value),this.change.emit(this._createChangeEvent())}_emitInputEvent(){this.input.emit(this._createChangeEvent())}_updateTickIntervalPercent(){if(this.tickInterval&&this._sliderDimensions)if("auto"==this.tickInterval){let t=this.vertical?this._sliderDimensions.height:this._sliderDimensions.width,e=Math.ceil(30/(t*this.step/(this.max-this.min)))*this.step;this._tickIntervalPercent=e/t}else this._tickIntervalPercent=this.tickInterval*this.step/(this.max-this.min)}_createChangeEvent(t=this.value){let e=new qU;return e.source=this,e.value=t,e}_calculatePercentage(t){return((t||0)-this.min)/(this.max-this.min)}_calculateValue(t){return this.min+t*(this.max-this.min)}_clamp(t,e=0,n=1){return Math.max(e,Math.min(t,n))}_getSliderDimensions(){return this._sliderWrapper?this._sliderWrapper.nativeElement.getBoundingClientRect():null}_focusHostElement(t){this._elementRef.nativeElement.focus(t)}_blurHostElement(){this._elementRef.nativeElement.blur()}writeValue(t){this.value=t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.disabled=t}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Mg),ea(tc),ea(Op,8),ni("tabindex"),ea(xu),ea(Yu),ea(Ey,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-slider"]],viewQuery:function(t,e){if(1&t&&qc($U,5),2&t){let t;Wc(t=Yc())&&(e._sliderWrapper=t.first)}},hostAttrs:["role","slider",1,"mat-slider","mat-focus-indicator"],hostVars:29,hostBindings:function(t,e){1&t&&fa("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()})("keydown",function(t){return e._onKeydown(t)})("keyup",function(){return e._onKeyup()})("mouseenter",function(){return e._onMouseenter()})("selectstart",function(t){return t.preventDefault()}),2&t&&(il("tabIndex",e.tabIndex),Ko("aria-disabled",e.disabled)("aria-valuemax",e.max)("aria-valuemin",e.min)("aria-valuenow",e.value)("aria-valuetext",null==e.valueText?e.displayValue:e.valueText)("aria-orientation",e.vertical?"vertical":"horizontal"),ja("mat-slider-disabled",e.disabled)("mat-slider-has-ticks",e.tickInterval)("mat-slider-horizontal",!e.vertical)("mat-slider-axis-inverted",e._shouldInvertAxis())("mat-slider-invert-mouse-coords",e._shouldInvertMouseCoords())("mat-slider-sliding",e._isSliding)("mat-slider-thumb-label-showing",e.thumbLabel)("mat-slider-vertical",e.vertical)("mat-slider-min-value",e._isMinValue())("mat-slider-hide-last-tick",e.disabled||e._isMinValue()&&e._getThumbGap()&&e._shouldInvertAxis())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disabled:"disabled",color:"color",tabIndex:"tabIndex",invert:"invert",max:"max",min:"min",step:"step",thumbLabel:"thumbLabel",tickInterval:"tickInterval",value:"value",vertical:"vertical",displayWith:"displayWith",valueText:"valueText"},outputs:{change:"change",input:"input",valueChange:"valueChange"},exportAs:["matSlider"],features:[_l([WU]),jo],decls:13,vars:6,consts:[[1,"mat-slider-wrapper"],["sliderWrapper",""],[1,"mat-slider-track-wrapper"],[1,"mat-slider-track-background",3,"ngStyle"],[1,"mat-slider-track-fill",3,"ngStyle"],[1,"mat-slider-ticks-container",3,"ngStyle"],[1,"mat-slider-ticks",3,"ngStyle"],[1,"mat-slider-thumb-container",3,"ngStyle"],[1,"mat-slider-focus-ring"],[1,"mat-slider-thumb"],[1,"mat-slider-thumb-label"],[1,"mat-slider-thumb-label-text"]],template:function(t,e){1&t&&(ra(0,"div",0,1),ra(2,"div",2),oa(3,"div",3),oa(4,"div",4),sa(),ra(5,"div",5),oa(6,"div",6),sa(),ra(7,"div",7),oa(8,"div",8),oa(9,"div",9),ra(10,"div",10),ra(11,"span",11),Za(12),sa(),sa(),sa(),sa()),2&t&&(ws(3),na("ngStyle",e._getTrackBackgroundStyles()),ws(1),na("ngStyle",e._getTrackFillStyles()),ws(1),na("ngStyle",e._getTicksContainerStyles()),ws(1),na("ngStyle",e._getTicksStyles()),ws(1),na("ngStyle",e._getThumbContainerStyles()),ws(5),Ja(e.displayValue))},directives:[Th],styles:['.mat-slider{display:inline-block;position:relative;box-sizing:border-box;padding:8px;outline:none;vertical-align:middle}.mat-slider:not(.mat-slider-disabled):active,.mat-slider.mat-slider-sliding:not(.mat-slider-disabled){cursor:-webkit-grabbing;cursor:grabbing}.mat-slider-wrapper{-webkit-print-color-adjust:exact;color-adjust:exact;position:absolute}.mat-slider-track-wrapper{position:absolute;top:0;left:0;overflow:hidden}.mat-slider-track-fill{position:absolute;transform-origin:0 0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-track-background{position:absolute;transform-origin:100% 100%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-ticks-container{position:absolute;left:0;top:0;overflow:hidden}.mat-slider-ticks{-webkit-background-clip:content-box;background-clip:content-box;background-repeat:repeat;box-sizing:border-box;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-container{position:absolute;z-index:1;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-focus-ring{position:absolute;width:30px;height:30px;border-radius:50%;transform:scale(0);opacity:0;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider.cdk-keyboard-focused .mat-slider-focus-ring,.mat-slider.cdk-program-focused .mat-slider-focus-ring{transform:scale(1);opacity:1}.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb-label,.mat-slider:not(.mat-slider-disabled):not(.mat-slider-sliding) .mat-slider-thumb{cursor:-webkit-grab;cursor:grab}.mat-slider-thumb{position:absolute;right:-10px;bottom:-10px;box-sizing:border-box;width:20px;height:20px;border:3px solid transparent;border-radius:50%;transform:scale(0.7);transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-thumb-label{display:none;align-items:center;justify-content:center;position:absolute;width:28px;height:28px;border-radius:50%;transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1),border-radius 400ms cubic-bezier(0.25, 0.8, 0.25, 1),background-color 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.cdk-high-contrast-active .mat-slider-thumb-label{outline:solid 1px}.mat-slider-thumb-label-text{z-index:1;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-sliding .mat-slider-track-fill,.mat-slider-sliding .mat-slider-track-background,.mat-slider-sliding .mat-slider-thumb-container{transition-duration:0ms}.mat-slider-has-ticks .mat-slider-wrapper::after{content:"";position:absolute;border-width:0;border-style:solid;opacity:0;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after,.mat-slider-has-ticks:hover:not(.mat-slider-hide-last-tick) .mat-slider-wrapper::after{opacity:1}.mat-slider-has-ticks.cdk-focused:not(.mat-slider-disabled) .mat-slider-ticks,.mat-slider-has-ticks:hover:not(.mat-slider-disabled) .mat-slider-ticks{opacity:1}.mat-slider-thumb-label-showing .mat-slider-focus-ring{display:none}.mat-slider-thumb-label-showing .mat-slider-thumb-label{display:flex}.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:100% 100%}.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:0 0}.mat-slider:not(.mat-slider-disabled).cdk-focused.mat-slider-thumb-label-showing .mat-slider-thumb{transform:scale(0)}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label{border-radius:50% 50% 0}.mat-slider:not(.mat-slider-disabled).cdk-focused .mat-slider-thumb-label-text{opacity:1}.mat-slider:not(.mat-slider-disabled).cdk-mouse-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-touch-focused .mat-slider-thumb,.mat-slider:not(.mat-slider-disabled).cdk-program-focused .mat-slider-thumb{border-width:2px;transform:scale(1)}.mat-slider-disabled .mat-slider-focus-ring{transform:scale(0);opacity:0}.mat-slider-disabled .mat-slider-thumb{border-width:4px;transform:scale(0.5)}.mat-slider-disabled .mat-slider-thumb-label{display:none}.mat-slider-horizontal{height:48px;min-width:128px}.mat-slider-horizontal .mat-slider-wrapper{height:2px;top:23px;left:8px;right:8px}.mat-slider-horizontal .mat-slider-wrapper::after{height:2px;border-left-width:2px;right:0;top:0}.mat-slider-horizontal .mat-slider-track-wrapper{height:2px;width:100%}.mat-slider-horizontal .mat-slider-track-fill{height:2px;width:100%;transform:scaleX(0)}.mat-slider-horizontal .mat-slider-track-background{height:2px;width:100%;transform:scaleX(1)}.mat-slider-horizontal .mat-slider-ticks-container{height:2px;width:100%}.cdk-high-contrast-active .mat-slider-horizontal .mat-slider-ticks-container{height:0;outline:solid 2px;top:1px}.mat-slider-horizontal .mat-slider-ticks{height:2px;width:100%}.mat-slider-horizontal .mat-slider-thumb-container{width:100%;height:0;top:50%}.mat-slider-horizontal .mat-slider-focus-ring{top:-15px;right:-15px}.mat-slider-horizontal .mat-slider-thumb-label{right:-14px;top:-40px;transform:translateY(26px) scale(0.01) rotate(45deg)}.mat-slider-horizontal .mat-slider-thumb-label-text{transform:rotate(-45deg)}.mat-slider-horizontal.cdk-focused .mat-slider-thumb-label{transform:rotate(45deg)}.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label,.cdk-high-contrast-active .mat-slider-horizontal.cdk-focused .mat-slider-thumb-label-text{transform:none}.mat-slider-vertical{width:48px;min-height:128px}.mat-slider-vertical .mat-slider-wrapper{width:2px;top:8px;bottom:8px;left:23px}.mat-slider-vertical .mat-slider-wrapper::after{width:2px;border-top-width:2px;bottom:0;left:0}.mat-slider-vertical .mat-slider-track-wrapper{height:100%;width:2px}.mat-slider-vertical .mat-slider-track-fill{height:100%;width:2px;transform:scaleY(0)}.mat-slider-vertical .mat-slider-track-background{height:100%;width:2px;transform:scaleY(1)}.mat-slider-vertical .mat-slider-ticks-container{width:2px;height:100%}.cdk-high-contrast-active .mat-slider-vertical .mat-slider-ticks-container{width:0;outline:solid 2px;left:1px}.mat-slider-vertical .mat-slider-focus-ring{bottom:-15px;left:-15px}.mat-slider-vertical .mat-slider-ticks{width:2px;height:100%}.mat-slider-vertical .mat-slider-thumb-container{height:100%;width:0;left:50%}.mat-slider-vertical .mat-slider-thumb{-webkit-backface-visibility:hidden;backface-visibility:hidden}.mat-slider-vertical .mat-slider-thumb-label{bottom:-14px;left:-40px;transform:translateX(26px) scale(0.01) rotate(-45deg)}.mat-slider-vertical .mat-slider-thumb-label-text{transform:rotate(45deg)}.mat-slider-vertical.cdk-focused .mat-slider-thumb-label{transform:rotate(-45deg)}[dir=rtl] .mat-slider-wrapper::after{left:0;right:auto}[dir=rtl] .mat-slider-horizontal .mat-slider-track-fill{transform-origin:100% 100%}[dir=rtl] .mat-slider-horizontal .mat-slider-track-background{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-fill{transform-origin:0 0}[dir=rtl] .mat-slider-horizontal.mat-slider-axis-inverted .mat-slider-track-background{transform-origin:100% 100%}.mat-slider._mat-animation-noopable .mat-slider-track-fill,.mat-slider._mat-animation-noopable .mat-slider-track-background,.mat-slider._mat-animation-noopable .mat-slider-ticks,.mat-slider._mat-animation-noopable .mat-slider-thumb-container,.mat-slider._mat-animation-noopable .mat-slider-focus-ring,.mat-slider._mat-animation-noopable .mat-slider-thumb,.mat-slider._mat-animation-noopable .mat-slider-thumb-label,.mat-slider._mat-animation-noopable .mat-slider-thumb-label-text,.mat-slider._mat-animation-noopable .mat-slider-has-ticks .mat-slider-wrapper::after{transition:none}\n'],encapsulation:2,changeDetection:0}),t})();function KU(t){return"t"===t.type[0]}function QU(t,e){let n;return n=KU(t)?"number"==typeof e?ZU(t.touches,e)||ZU(t.changedTouches,e):t.touches[0]||t.changedTouches[0]:t,n?{x:n.clientX,y:n.clientY}:void 0}function ZU(t,e){for(let n=0;n{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny],Ny]}),t})();function tH(t,e){}class eH{constructor(){this.role="dialog",this.panelClass="",this.hasBackdrop=!0,this.backdropClass="",this.disableClose=!1,this.width="",this.height="",this.maxWidth="80vw",this.data=null,this.ariaDescribedBy=null,this.ariaLabelledBy=null,this.ariaLabel=null,this.autoFocus=!0,this.restoreFocus=!0,this.closeOnNavigation=!0}}const nH={dialogContainer:Vg("dialogContainer",[$g("void, exit",Hg({opacity:0,transform:"scale(0.7)"})),$g("enter",Hg({transform:"none"})),Wg("* => enter",zg("150ms cubic-bezier(0, 0, 0.2, 1)",Hg({transform:"none",opacity:1}))),Wg("* => void, * => exit",zg("75ms cubic-bezier(0.4, 0.0, 0.2, 1)",Hg({opacity:0})))])};let iH=(()=>{class t extends Fp{constructor(t,e,n,i,r,s){super(),this._elementRef=t,this._focusTrapFactory=e,this._changeDetectorRef=n,this._config=r,this._focusMonitor=s,this._animationStateChanged=new Rc,this._elementFocusedBeforeDialogWasOpened=null,this._closeInteractionType=null,this.attachDomPortal=t=>(this._portalOutlet.hasAttached(),this._portalOutlet.attachDomPortal(t)),this._ariaLabelledBy=r.ariaLabelledBy||null,this._document=i}_initializeWithAttachedContent(){this._setupFocusTrap(),this._capturePreviouslyFocusedElement(),this._focusDialogContainer()}attachComponentPortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachComponentPortal(t)}attachTemplatePortal(t){return this._portalOutlet.hasAttached(),this._portalOutlet.attachTemplatePortal(t)}_recaptureFocus(){this._containsFocus()||(!this._config.autoFocus||!this._focusTrap.focusInitialElement())&&this._elementRef.nativeElement.focus()}_trapFocus(){this._config.autoFocus?this._focusTrap.focusInitialElementWhenReady():this._containsFocus()||this._elementRef.nativeElement.focus()}_restoreFocus(){const t=this._elementFocusedBeforeDialogWasOpened;if(this._config.restoreFocus&&t&&"function"==typeof t.focus){const e=Sp(),n=this._elementRef.nativeElement;(!e||e===this._document.body||e===n||n.contains(e))&&(this._focusMonitor?(this._focusMonitor.focusVia(t,this._closeInteractionType),this._closeInteractionType=null):t.focus())}this._focusTrap&&this._focusTrap.destroy()}_setupFocusTrap(){this._focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement)}_capturePreviouslyFocusedElement(){this._document&&(this._elementFocusedBeforeDialogWasOpened=Sp())}_focusDialogContainer(){this._elementRef.nativeElement.focus&&this._elementRef.nativeElement.focus()}_containsFocus(){const t=this._elementRef.nativeElement,e=Sp();return t===e||t.contains(e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(vg),ea(tc),ea(Yu,8),ea(eH),ea(Mg))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&qc(Up,7),2&t){let t;Wc(t=Yc())&&(e._portalOutlet=t.first)}},features:[jo]}),t})(),rH=(()=>{class t extends iH{constructor(){super(...arguments),this._state="enter"}_onAnimationDone({toState:t,totalTime:e}){"enter"===t?(this._trapFocus(),this._animationStateChanged.next({state:"opened",totalTime:e})):"exit"===t&&(this._restoreFocus(),this._animationStateChanged.next({state:"closed",totalTime:e}))}_onAnimationStart({toState:t,totalTime:e}){"enter"===t?this._animationStateChanged.next({state:"opening",totalTime:e}):("exit"===t||"void"===t)&&this._animationStateChanged.next({state:"closing",totalTime:e})}_startExitAnimation(){this._state="exit",this._changeDetectorRef.markForCheck()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-dialog-container"]],hostAttrs:["tabindex","-1","aria-modal","true",1,"mat-dialog-container"],hostVars:6,hostBindings:function(t,e){1&t&&ga("@dialogContainer.start",function(t){return e._onAnimationStart(t)})("@dialogContainer.done",function(t){return e._onAnimationDone(t)}),2&t&&(il("id",e._id),Ko("role",e._config.role)("aria-labelledby",e._config.ariaLabel?null:e._ariaLabelledBy)("aria-label",e._config.ariaLabel)("aria-describedby",e._config.ariaDescribedBy||null),rl("@dialogContainer",e._state))},features:[jo],decls:1,vars:0,consts:[["cdkPortalOutlet",""]],template:function(t,e){1&t&&Jo(0,tH,0,0,"ng-template",0)},directives:[Up],styles:[".mat-dialog-container{display:block;padding:24px;border-radius:4px;box-sizing:border-box;overflow:auto;outline:0;width:100%;height:100%;min-height:inherit;max-height:inherit}.cdk-high-contrast-active .mat-dialog-container{outline:solid 1px}.mat-dialog-content{display:block;margin:0 -24px;padding:0 24px;max-height:65vh;overflow:auto;-webkit-overflow-scrolling:touch}.mat-dialog-title{margin:0 0 20px;display:block}.mat-dialog-actions{padding:8px 0;display:flex;flex-wrap:wrap;min-height:52px;align-items:center;box-sizing:content-box;margin-bottom:-24px}.mat-dialog-actions[align=end]{justify-content:flex-end}.mat-dialog-actions[align=center]{justify-content:center}.mat-dialog-actions .mat-button-base+.mat-button-base,.mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-dialog-actions .mat-button-base+.mat-button-base,[dir=rtl] .mat-dialog-actions .mat-mdc-button-base+.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[nH.dialogContainer]}}),t})(),sH=0;class oH{constructor(t,e,n="mat-dialog-"+sH++){this._overlayRef=t,this._containerInstance=e,this.id=n,this.disableClose=this._containerInstance._config.disableClose,this._afterOpened=new P,this._afterClosed=new P,this._beforeClosed=new P,this._state=0,e._id=n,e._animationStateChanged.pipe(Hd(t=>"opened"===t.state),Gp(1)).subscribe(()=>{this._afterOpened.next(),this._afterOpened.complete()}),e._animationStateChanged.pipe(Hd(t=>"closed"===t.state),Gp(1)).subscribe(()=>{clearTimeout(this._closeFallbackTimeout),this._finishDialogClose()}),t.detachments().subscribe(()=>{this._beforeClosed.next(this._result),this._beforeClosed.complete(),this._afterClosed.next(this._result),this._afterClosed.complete(),this.componentInstance=null,this._overlayRef.dispose()}),t.keydownEvents().pipe(Hd(t=>27===t.keyCode&&!this.disableClose&&!Qp(t))).subscribe(t=>{t.preventDefault(),aH(this,"keyboard")}),t.backdropClick().subscribe(()=>{this.disableClose?this._containerInstance._recaptureFocus():aH(this,"mouse")})}close(t){this._result=t,this._containerInstance._animationStateChanged.pipe(Hd(t=>"closing"===t.state),Gp(1)).subscribe(e=>{this._beforeClosed.next(t),this._beforeClosed.complete(),this._overlayRef.detachBackdrop(),this._closeFallbackTimeout=setTimeout(()=>this._finishDialogClose(),e.totalTime+100)}),this._state=1,this._containerInstance._startExitAnimation()}afterOpened(){return this._afterOpened}afterClosed(){return this._afterClosed}beforeClosed(){return this._beforeClosed}backdropClick(){return this._overlayRef.backdropClick()}keydownEvents(){return this._overlayRef.keydownEvents()}updatePosition(t){let e=this._getPositionStrategy();return t&&(t.left||t.right)?t.left?e.left(t.left):e.right(t.right):e.centerHorizontally(),t&&(t.top||t.bottom)?t.top?e.top(t.top):e.bottom(t.bottom):e.centerVertically(),this._overlayRef.updatePosition(),this}updateSize(t="",e=""){return this._overlayRef.updateSize({width:t,height:e}),this._overlayRef.updatePosition(),this}addPanelClass(t){return this._overlayRef.addPanelClass(t),this}removePanelClass(t){return this._overlayRef.removePanelClass(t),this}getState(){return this._state}_finishDialogClose(){this._state=2,this._overlayRef.dispose()}_getPositionStrategy(){return this._overlayRef.getConfig().positionStrategy}}function aH(t,e,n){return void 0!==t._containerInstance&&(t._containerInstance._closeInteractionType=e),t.close(n)}const lH=new oi("MatDialogData"),cH=new oi("mat-dialog-default-options"),uH=new oi("mat-dialog-scroll-strategy"),hH={provide:uH,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.block()}};let dH=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l){this._overlay=t,this._injector=e,this._defaultOptions=n,this._parentDialog=i,this._overlayContainer=r,this._dialogRefConstructor=o,this._dialogContainerType=a,this._dialogDataToken=l,this._openDialogsAtThisLevel=[],this._afterAllClosedAtThisLevel=new P,this._afterOpenedAtThisLevel=new P,this._ariaHiddenElements=new Map,this.afterAllClosed=Mz(()=>this.openDialogs.length?this._getAfterAllClosed():this._getAfterAllClosed().pipe(Kd(void 0))),this._scrollStrategy=s}get openDialogs(){return this._parentDialog?this._parentDialog.openDialogs:this._openDialogsAtThisLevel}get afterOpened(){return this._parentDialog?this._parentDialog.afterOpened:this._afterOpenedAtThisLevel}_getAfterAllClosed(){const t=this._parentDialog;return t?t._getAfterAllClosed():this._afterAllClosedAtThisLevel}open(t,e){(e=function(t,e){return Object.assign(Object.assign({},e),t)}(e,this._defaultOptions||new eH)).id&&this.getDialogById(e.id);const n=this._createOverlay(e),i=this._attachDialogContainer(n,e),r=this._attachDialogContent(t,i,n,e);return this.openDialogs.length||this._hideNonDialogContentFromAssistiveTechnology(),this.openDialogs.push(r),r.afterClosed().subscribe(()=>this._removeOpenDialog(r)),this.afterOpened.next(r),i._initializeWithAttachedContent(),r}closeAll(){this._closeDialogs(this.openDialogs)}getDialogById(t){return this.openDialogs.find(e=>e.id===t)}ngOnDestroy(){this._closeDialogs(this._openDialogsAtThisLevel),this._afterAllClosedAtThisLevel.complete(),this._afterOpenedAtThisLevel.complete()}_createOverlay(t){const e=this._getOverlayConfig(t);return this._overlay.create(e)}_getOverlayConfig(t){const e=new af({positionStrategy:this._overlay.position().global(),scrollStrategy:t.scrollStrategy||this._scrollStrategy(),panelClass:t.panelClass,hasBackdrop:t.hasBackdrop,direction:t.direction,minWidth:t.minWidth,minHeight:t.minHeight,maxWidth:t.maxWidth,maxHeight:t.maxHeight,disposeOnNavigation:t.closeOnNavigation});return t.backdropClass&&(e.backdropClass=t.backdropClass),e}_attachDialogContainer(t,e){const n=No.create({parent:e&&e.viewContainerRef&&e.viewContainerRef.injector||this._injector,providers:[{provide:eH,useValue:e}]}),i=new Np(this._dialogContainerType,e.viewContainerRef,n,e.componentFactoryResolver);return t.attach(i).instance}_attachDialogContent(t,e,n,i){const r=new this._dialogRefConstructor(n,e,i.id);if(t instanceof sc)e.attachTemplatePortal(new Lp(t,null,{$implicit:i.data,dialogRef:r}));else{const n=this._createInjector(i,r,e),s=e.attachComponentPortal(new Np(t,i.viewContainerRef,n));r.componentInstance=s.instance}return r.updateSize(i.width,i.height).updatePosition(i.position),r}_createInjector(t,e,n){const i=t&&t.viewContainerRef&&t.viewContainerRef.injector,r=[{provide:this._dialogContainerType,useValue:n},{provide:this._dialogDataToken,useValue:t.data},{provide:this._dialogRefConstructor,useValue:e}];return t.direction&&(!i||!i.get(Op,null,Mt.Optional))&&r.push({provide:Op,useValue:{value:t.direction,change:wd()}}),No.create({parent:i||this._injector,providers:r})}_removeOpenDialog(t){const e=this.openDialogs.indexOf(t);e>-1&&(this.openDialogs.splice(e,1),this.openDialogs.length||(this._ariaHiddenElements.forEach((t,e)=>{t?e.setAttribute("aria-hidden",t):e.removeAttribute("aria-hidden")}),this._ariaHiddenElements.clear(),this._getAfterAllClosed().next()))}_hideNonDialogContentFromAssistiveTechnology(){const t=this._overlayContainer.getContainerElement();if(t.parentElement){const e=t.parentElement.children;for(let n=e.length-1;n>-1;n--){let i=e[n];i!==t&&"SCRIPT"!==i.nodeName&&"STYLE"!==i.nodeName&&!i.hasAttribute("aria-live")&&(this._ariaHiddenElements.set(i,i.getAttribute("aria-hidden")),i.setAttribute("aria-hidden","true"))}}}_closeDialogs(t){let e=t.length;for(;e--;)t[e].close()}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(No),ea(void 0),ea(void 0),ea(gf),ea(void 0),ea(ai),ea(ai),ea(oi))},t.\u0275dir=se({type:t}),t})(),pH=(()=>{class t extends dH{constructor(t,e,n,i,r,s,o){super(t,e,i,s,o,r,oH,rH,lH)}}return t.\u0275fac=function(e){return new(e||t)(Ci(kf),Ci(No),Ci(lh,8),Ci(cH,8),Ci(uH),Ci(t,12),Ci(gf))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),fH=0,gH=(()=>{class t{constructor(t,e,n){this._dialogRef=t,this._elementRef=e,this._dialog=n,this.id="mat-dialog-title-"+fH++}ngOnInit(){this._dialogRef||(this._dialogRef=function(t,e){let n=t.nativeElement.parentElement;for(;n&&!n.classList.contains("mat-dialog-container");)n=n.parentElement;return n?e.find(t=>t.id===n.id):null}(this._elementRef,this._dialog.openDialogs)),this._dialogRef&&Promise.resolve().then(()=>{const t=this._dialogRef._containerInstance;t&&!t._ariaLabelledBy&&(t._ariaLabelledBy=this.id)})}}return t.\u0275fac=function(e){return new(e||t)(ea(oH,8),ea(kl),ea(pH))},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-title",""],["","matDialogTitle",""]],hostAttrs:[1,"mat-dialog-title"],hostVars:1,hostBindings:function(t,e){2&t&&il("id",e.id)},inputs:{id:"id"},exportAs:["matDialogTitle"]}),t})(),mH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["","mat-dialog-content",""],["mat-dialog-content"],["","matDialogContent",""]],hostAttrs:[1,"mat-dialog-content"]}),t})();let bH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[pH,hH],imports:[[Rf,Hp,Ny],Ny]}),t})();const yH=new oi("CdkAccordion");let vH=0,_H=(()=>{class t{constructor(t,e,n){this.accordion=t,this._changeDetectorRef=e,this._expansionDispatcher=n,this._openCloseAllSubscription=g.EMPTY,this.closed=new Rc,this.opened=new Rc,this.destroyed=new Rc,this.expandedChange=new Rc,this.id="cdk-accordion-child-"+vH++,this._expanded=!1,this._disabled=!1,this._removeUniqueSelectionListener=()=>{},this._removeUniqueSelectionListener=n.listen((t,e)=>{this.accordion&&!this.accordion.multi&&this.accordion.id===e&&this.id!==t&&(this.expanded=!1)}),this.accordion&&(this._openCloseAllSubscription=this._subscribeToOpenCloseAllActions())}get expanded(){return this._expanded}set expanded(t){t=md(t),this._expanded!==t&&(this._expanded=t,this.expandedChange.emit(t),t?(this.opened.emit(),this._expansionDispatcher.notify(this.id,this.accordion?this.accordion.id:this.id)):this.closed.emit(),this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){this._disabled=md(t)}ngOnDestroy(){this.opened.complete(),this.closed.complete(),this.destroyed.emit(),this.destroyed.complete(),this._removeUniqueSelectionListener(),this._openCloseAllSubscription.unsubscribe()}toggle(){this.disabled||(this.expanded=!this.expanded)}close(){this.disabled||(this.expanded=!1)}open(){this.disabled||(this.expanded=!0)}_subscribeToOpenCloseAllActions(){return this.accordion._openCloseAllActions.subscribe(t=>{this.disabled||(this.expanded=t)})}}return t.\u0275fac=function(e){return new(e||t)(ea(yH,12),ea(tc),ea(Ap))},t.\u0275dir=se({type:t,selectors:[["cdk-accordion-item"],["","cdkAccordionItem",""]],inputs:{expanded:"expanded",disabled:"disabled"},outputs:{closed:"closed",opened:"opened",destroyed:"destroyed",expandedChange:"expandedChange"},exportAs:["cdkAccordionItem"],features:[_l([{provide:yH,useValue:void 0}])]}),t})(),wH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const xH=["body"];function SH(t,e){}const EH=[[["mat-expansion-panel-header"]],"*",[["mat-action-row"]]],CH=["mat-expansion-panel-header","*","mat-action-row"];function OH(t,e){1&t&&oa(0,"span",2),2&t&&na("@indicatorRotate",va()._getExpandedState())}const TH=[[["mat-panel-title"]],[["mat-panel-description"]],"*"],kH=["mat-panel-title","mat-panel-description","*"],AH=new oi("MAT_ACCORDION"),PH="225ms cubic-bezier(0.4,0.0,0.2,1)",MH={indicatorRotate:Vg("indicatorRotate",[$g("collapsed, void",Hg({transform:"rotate(0deg)"})),$g("expanded",Hg({transform:"rotate(180deg)"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))]),bodyExpansion:Vg("bodyExpansion",[$g("collapsed, void",Hg({height:"0px",visibility:"hidden"})),$g("expanded",Hg({height:"*",visibility:"visible"})),Wg("expanded <=> collapsed, void => collapsed",zg(PH))])};let IH=(()=>{class t{constructor(t){this._template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","matExpansionPanelContent",""]]}),t})(),DH=0;const RH=new oi("MAT_EXPANSION_PANEL_DEFAULT_OPTIONS");let NH=(()=>{class t extends _H{constructor(t,e,n,i,r,s,o){super(t,e,n),this._viewContainerRef=i,this._animationMode=s,this._hideToggle=!1,this.afterExpand=new Rc,this.afterCollapse=new Rc,this._inputChanges=new P,this._headerId="mat-expansion-panel-header-"+DH++,this._bodyAnimationDone=new P,this.accordion=t,this._document=r,this._bodyAnimationDone.pipe(Rd((t,e)=>t.fromState===e.fromState&&t.toState===e.toState)).subscribe(t=>{"void"!==t.fromState&&("expanded"===t.toState?this.afterExpand.emit():"collapsed"===t.toState&&this.afterCollapse.emit())}),o&&(this.hideToggle=o.hideToggle)}get hideToggle(){return this._hideToggle||this.accordion&&this.accordion.hideToggle}set hideToggle(t){this._hideToggle=md(t)}get togglePosition(){return this._togglePosition||this.accordion&&this.accordion.togglePosition}set togglePosition(t){this._togglePosition=t}_hasSpacing(){return!!this.accordion&&this.expanded&&"default"===this.accordion.displayMode}_getExpandedState(){return this.expanded?"expanded":"collapsed"}toggle(){this.expanded=!this.expanded}close(){this.expanded=!1}open(){this.expanded=!0}ngAfterContentInit(){this._lazyContent&&this.opened.pipe(Kd(null),Hd(()=>this.expanded&&!this._portal),Gp(1)).subscribe(()=>{this._portal=new Lp(this._lazyContent._template,this._viewContainerRef)})}ngOnChanges(t){this._inputChanges.next(t)}ngOnDestroy(){super.ngOnDestroy(),this._bodyAnimationDone.complete(),this._inputChanges.complete()}_containsFocus(){if(this._body){const t=this._document.activeElement,e=this._body.nativeElement;return t===e||e.contains(t)}return!1}}return t.\u0275fac=function(e){return new(e||t)(ea(AH,12),ea(tc),ea(Ap),ea(hc),ea(Yu),ea(Ey,8),ea(RH,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,IH,5),2&t){let t;Wc(t=Yc())&&(e._lazyContent=t.first)}},viewQuery:function(t,e){if(1&t&&qc(xH,5),2&t){let t;Wc(t=Yc())&&(e._body=t.first)}},hostAttrs:[1,"mat-expansion-panel"],hostVars:6,hostBindings:function(t,e){2&t&&ja("mat-expanded",e.expanded)("_mat-animation-noopable","NoopAnimations"===e._animationMode)("mat-expansion-panel-spacing",e._hasSpacing())},inputs:{disabled:"disabled",expanded:"expanded",hideToggle:"hideToggle",togglePosition:"togglePosition"},outputs:{opened:"opened",closed:"closed",expandedChange:"expandedChange",afterExpand:"afterExpand",afterCollapse:"afterCollapse"},exportAs:["matExpansionPanel"],features:[_l([{provide:AH,useValue:void 0}]),jo,ye],ngContentSelectors:CH,decls:7,vars:4,consts:[["role","region",1,"mat-expansion-panel-content",3,"id"],["body",""],[1,"mat-expansion-panel-body"],[3,"cdkPortalOutlet"]],template:function(t,e){1&t&&(wa(EH),xa(0),ra(1,"div",0,1),fa("@bodyExpansion.done",function(t){return e._bodyAnimationDone.next(t)}),ra(3,"div",2),xa(4,1),Jo(5,SH,0,0,"ng-template",3),sa(),xa(6,2),sa()),2&t&&(ws(1),na("@bodyExpansion",e._getExpandedState())("id",e.id),Ko("aria-labelledby",e._headerId),ws(4),na("cdkPortalOutlet",e._portal))},directives:[Up],styles:[".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;border-radius:4px;overflow:hidden;transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);position:relative}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:4px;border-top-left-radius:4px}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.cdk-high-contrast-active .mat-expansion-panel{outline:solid 1px}.mat-expansion-panel.ng-animate-disabled,.ng-animate-disabled .mat-expansion-panel,.mat-expansion-panel._mat-animation-noopable{transition:none}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px}.mat-action-row button.mat-button-base,.mat-action-row button.mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row button.mat-button-base,[dir=rtl] .mat-action-row button.mat-mdc-button-base{margin-left:0;margin-right:8px}\n"],encapsulation:2,data:{animation:[MH.bodyExpansion]},changeDetection:0}),t})();class LH{}const jH=By(LH);let FH=(()=>{class t extends jH{constructor(t,e,n,i,r,s,o){super(),this.panel=t,this._element=e,this._focusMonitor=n,this._changeDetectorRef=i,this._animationMode=s,this._parentChangeSubscription=g.EMPTY;const a=t.accordion?t.accordion._stateChanges.pipe(Hd(t=>!(!t.hideToggle&&!t.togglePosition))):ep;this.tabIndex=parseInt(o||"")||0,this._parentChangeSubscription=Q(t.opened,t.closed,a,t._inputChanges.pipe(Hd(t=>!!(t.hideToggle||t.disabled||t.togglePosition)))).subscribe(()=>this._changeDetectorRef.markForCheck()),t.closed.pipe(Hd(()=>t._containsFocus())).subscribe(()=>n.focusVia(e,"program")),r&&(this.expandedHeight=r.expandedHeight,this.collapsedHeight=r.collapsedHeight)}get disabled(){return this.panel.disabled}_toggle(){this.disabled||this.panel.toggle()}_isExpanded(){return this.panel.expanded}_getExpandedState(){return this.panel._getExpandedState()}_getPanelId(){return this.panel.id}_getTogglePosition(){return this.panel.togglePosition}_showToggle(){return!this.panel.hideToggle&&!this.panel.disabled}_getHeaderHeight(){const t=this._isExpanded();return t&&this.expandedHeight?this.expandedHeight:!t&&this.collapsedHeight?this.collapsedHeight:null}_keydown(t){switch(t.keyCode){case 32:case 13:Qp(t)||(t.preventDefault(),this._toggle());break;default:return void(this.panel.accordion&&this.panel.accordion._handleHeaderKeydown(t))}}focus(t,e){t?this._focusMonitor.focusVia(this._element,t,e):this._element.nativeElement.focus(e)}ngAfterViewInit(){this._focusMonitor.monitor(this._element).subscribe(t=>{t&&this.panel.accordion&&this.panel.accordion._handleHeaderFocus(this)})}ngOnDestroy(){this._parentChangeSubscription.unsubscribe(),this._focusMonitor.stopMonitoring(this._element)}}return t.\u0275fac=function(e){return new(e||t)(ea(NH,1),ea(kl),ea(Mg),ea(tc),ea(RH,8),ea(Ey,8),ni("tabindex"))},t.\u0275cmp=Jt({type:t,selectors:[["mat-expansion-panel-header"]],hostAttrs:["role","button",1,"mat-expansion-panel-header","mat-focus-indicator"],hostVars:15,hostBindings:function(t,e){1&t&&fa("click",function(){return e._toggle()})("keydown",function(t){return e._keydown(t)}),2&t&&(Ko("id",e.panel._headerId)("tabindex",e.tabIndex)("aria-controls",e._getPanelId())("aria-expanded",e._isExpanded())("aria-disabled",e.panel.disabled),La("height",e._getHeaderHeight()),ja("mat-expanded",e._isExpanded())("mat-expansion-toggle-indicator-after","after"===e._getTogglePosition())("mat-expansion-toggle-indicator-before","before"===e._getTogglePosition())("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{tabIndex:"tabIndex",expandedHeight:"expandedHeight",collapsedHeight:"collapsedHeight"},features:[jo],ngContentSelectors:kH,decls:5,vars:1,consts:[[1,"mat-content"],["class","mat-expansion-indicator",4,"ngIf"],[1,"mat-expansion-indicator"]],template:function(t,e){1&t&&(wa(TH),ra(0,"span",0),xa(1),xa(2,1),xa(3,2),sa(),Jo(4,OH,1,1,"span",1)),2&t&&(ws(4),na("ngIf",e._showToggle()))},directives:[_h],styles:['.mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;margin-right:16px}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header-description{flex-grow:2}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:"";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle}.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-keyboard-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel .mat-expansion-panel-header.cdk-program-focused:not([aria-disabled=true])::before,.cdk-high-contrast-active .mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:hover:not([aria-disabled=true])::before{top:0;left:0;right:0;bottom:0;position:absolute;box-sizing:border-box;pointer-events:none;border:3px solid;border-radius:4px;content:""}\n'],encapsulation:2,data:{animation:[MH.indicatorRotate]},changeDetection:0}),t})(),BH=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Ny,wH,Hp]]}),t})();var VH=n(5478);Object.create(Error.prototype);const zH=["*"];var UH=(()=>(function(t){t.LineHighlight="line-highlight",t.LineNumbers="line-numbers"}(UH||(UH={})),UH))();class HH{}const $H=new oi("SECURITY_CONTEXT");let GH=(()=>{class t{constructor(t,e,n,i,r){this.platform=t,this.securityContext=e,this.http=n,this.sanitizer=r,this.initialMarkedOptions={renderer:new VH.Renderer},this.options=i}get options(){return this._options}set options(t){this._options=Object.assign(Object.assign({},this.initialMarkedOptions),t)}get renderer(){return this.options.renderer}set renderer(t){this.options.renderer=t}compile(t,e=!1,n=!1,i=this.options){const r=this.trimIndentation(t),s=e?this.decodeHtml(r):r,o=n?this.renderEmoji(s):s,a=VH.parse(o,i);return this.sanitizer.sanitize(this.securityContext,a)||""}getSource(t){if(!this.http)throw new Error("[ngx-markdown] When using the `src` attribute you *have to* pass the `HttpClient` as a parameter of the `forRoot` method. See README for more information");return this.http.get(t,{responseType:"text"}).pipe(D(e=>this.handleExtension(t,e)))}highlight(t){if(Lh(this.platform)&&"undefined"!=typeof Prism){t||(t=document);const e=t.querySelectorAll('pre code:not([class*="language-"])');Array.prototype.forEach.call(e,t=>t.classList.add("language-none")),Prism.highlightAllUnder(t)}}renderKatex(t,e){if(!Lh(this.platform))return t;if("undefined"==typeof katex||void 0===katex.renderToString)throw new Error("[ngx-markdown] When using the `katex` attribute you *have to* include KaTeX files to `angular.json` or use imports. See README for more information");return t.replace(/\$([^\s][^$]*?[^\s])\$/gm,(t,n)=>katex.renderToString(n,e))}decodeHtml(t){if(!Lh(this.platform))return t;const e=document.createElement("textarea");return e.innerHTML=t,e.value}handleExtension(t,e){const n=t?t.split("?")[0].split(".").splice(-1).join():"";return"md"!==n?"```"+n+"\n"+e+"\n```":e}renderEmoji(t){if(!Lh(this.platform))return t;if("undefined"==typeof joypixels||void 0===joypixels.shortnameToUnicode)throw new Error("[ngx-markdown] When using the `emoji` attribute you *have to* include Emoji-Toolkit files to `angular.json` or use imports. See README for more information");return joypixels.shortnameToUnicode(t)}trimIndentation(t){if(!t)return"";let e;return t.split("\n").map(t=>{let n=e;return t.length>0&&(n=isNaN(n)?t.search(/\S|$/):Math.min(t.search(/\S|$/),n)),isNaN(e)&&(e=n),n?t.substring(n):t}).join("\n")}}return t.\u0275fac=function(e){return new(e||t)(Ci(ou),Ci($H),Ci(Bv,8),Ci(HH,8),Ci(hd))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),WH=(()=>{class t{constructor(t,e){this.element=t,this.markdownService=e,this.error=new Rc,this.load=new Rc,this.ready=new Rc,this._emoji=!1,this._katex=!1,this._lineHighlight=!1,this._lineNumbers=!1}get emoji(){return this._emoji}set emoji(t){this._emoji=this.coerceBooleanProperty(t)}get katex(){return this._katex}set katex(t){this._katex=this.coerceBooleanProperty(t)}get lineHighlight(){return this._lineHighlight}set lineHighlight(t){this._lineHighlight=this.coerceBooleanProperty(t)}get lineNumbers(){return this._lineNumbers}set lineNumbers(t){this._lineNumbers=this.coerceBooleanProperty(t)}ngOnChanges(){null==this.data?null==this.src||this.handleSrc():this.handleData()}ngAfterViewInit(){!this.data&&!this.src&&this.handleTransclusion()}render(t,e=!1){let n=this.markdownService.compile(t,e,this.emoji);n=this.katex?this.markdownService.renderKatex(n,this.katexOptions):n,this.element.nativeElement.innerHTML=n,this.handlePlugins(),this.markdownService.highlight(this.element.nativeElement),this.ready.emit()}coerceBooleanProperty(t){return null!=t&&"false"!=`${String(t)}`}handleData(){this.render(this.data)}handleSrc(){this.markdownService.getSource(this.src).subscribe(t=>{this.render(t),this.load.emit(t)},t=>this.error.emit(t))}handleTransclusion(){this.render(this.element.nativeElement.innerHTML,!0)}handlePlugins(){this.lineHighlight&&this.setPluginOptions(this.element.nativeElement,{dataLine:this.line,dataLineOffset:this.lineOffset}),this.lineNumbers&&(this.setPluginClass(this.element.nativeElement,UH.LineNumbers),this.setPluginOptions(this.element.nativeElement,{dataStart:this.start}))}setPluginClass(t,e){const n=t.querySelectorAll("pre");for(let i=0;i{const r=e[t];if(r){const e=this.toLispCase(t);n.item(i).setAttribute(e,r.toString())}})}toLispCase(t){const e=t.match(/([A-Z])/g);if(!e)return t;let n=t.toString();for(let i=0,r=e.length;i{class t{static forRoot(e){return{ngModule:t,providers:[GH,e&&e.loader||[],e&&e.markedOptions||[],{provide:$H,useValue:e&&null!=e.sanitize?e.sanitize:yr.HTML}]}}static forChild(){return{ngModule:t}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function XH(t,e,n){return n?XH(t,e).pipe(D(t=>d(t)?n(...t):n(t))):new C(n=>{const i=(...t)=>n.next(1===t.length?t[0]:t);let r;try{r=t(i)}catch(s){return void n.error(s)}if(a(e))return()=>e(i,r)})}function YH(...t){return e=>{let n;return"function"==typeof t[t.length-1]&&(n=t.pop()),e.lift(new KH(t,n))}}class KH{constructor(t,e){this.observables=t,this.project=e}call(t,e){return e.subscribe(new QH(t,this.observables,this.project))}}class QH extends S_{constructor(t,e,n){super(t),this.observables=e,this.project=n,this.toRespond=[];const i=e.length;this.values=new Array(i);for(let r=0;r0){const t=i.indexOf(n);-1!==t&&i.splice(t,1)}}notifyComplete(){}_next(t){if(0===this.toRespond.length){const e=[t,...this.values];this.project?this._tryProject(e):this.destination.next(e)}}_tryProject(t){let e;try{e=this.project.apply(this,t)}catch(n){return void this.destination.error(n)}this.destination.next(e)}}class ZH{constructor(t,e,n=!1){this.accumulator=t,this.seed=e,this.hasSeed=n}call(t,e){return e.subscribe(new JH(t,this.accumulator,this.seed,this.hasSeed))}}class JH extends v{constructor(t,e,n,i){super(t),this.accumulator=e,this._seed=n,this.hasSeed=i,this.index=0}get seed(){return this._seed}set seed(t){this.hasSeed=!0,this._seed=t}_next(t){if(this.hasSeed)return this._tryNext(t);this.seed=t,this.destination.next(t)}_tryNext(t){const e=this.index++;let n;try{n=this.accumulator(this.seed,t,e)}catch(i){this.destination.error(i)}this.seed=n,this.destination.next(n)}}class t${constructor(t){this.predicate=t}call(t,e){return e.subscribe(new e$(t,this.predicate))}}class e$ extends v{constructor(t,e){super(t),this.predicate=e,this.skipping=!0,this.index=0}_next(t){const e=this.destination;this.skipping&&this.tryCallPredicate(t),this.skipping||e.next(t)}tryCallPredicate(t){try{const e=this.predicate(t,this.index++);this.skipping=Boolean(e)}catch(e){this.destination.error(e)}}}const n$=["youtubeContainer"];let i$=(()=>{class t{constructor(t,e){this._ngZone=t,this._youtubeContainer=new P,this._destroyed=new P,this._playerChanges=new Uf(void 0),this._videoId=new Uf(void 0),this._height=new Uf(390),this._width=new Uf(640),this._startSeconds=new Uf(void 0),this._endSeconds=new Uf(void 0),this._suggestedQuality=new Uf(void 0),this._playerVars=new Uf(void 0),this.ready=this._getLazyEmitter("onReady"),this.stateChange=this._getLazyEmitter("onStateChange"),this.error=this._getLazyEmitter("onError"),this.apiChange=this._getLazyEmitter("onApiChange"),this.playbackQualityChange=this._getLazyEmitter("onPlaybackQualityChange"),this.playbackRateChange=this._getLazyEmitter("onPlaybackRateChange"),this._isBrowser=Lh(e)}get videoId(){return this._videoId.value}set videoId(t){this._videoId.next(t)}get height(){return this._height.value}set height(t){this._height.next(t||390)}get width(){return this._width.value}set width(t){this._width.next(t||640)}set startSeconds(t){this._startSeconds.next(t)}set endSeconds(t){this._endSeconds.next(t)}set suggestedQuality(t){this._suggestedQuality.next(t)}get playerVars(){return this._playerVars.value}set playerVars(t){this._playerVars.next(t)}ngOnInit(){if(!this._isBrowser)return;let t=wd(!0);if(!window.YT||!window.YT.Player){const e=new P;this._existingApiReadyCallback=window.onYouTubeIframeAPIReady,window.onYouTubeIframeAPIReady=()=>{this._existingApiReadyCallback&&this._existingApiReadyCallback(),this._ngZone.run(()=>e.next(!0))},t=e.pipe(Gp(1),Kd(!1))}const e=function(t,e,n,i,r,s,o){const a=T_([e,s]).pipe(YH(T_([i,r])),D(([t,e])=>{const[n,i]=t,[r,s]=e;return n?{videoId:n,playerVars:i,width:r,height:s}:void 0}));return T_([t,a,wd(o)]).pipe(function(t){return S(function(...t){let e=null;return"function"==typeof t[t.length-1]&&(e=t.pop()),1===t.length&&d(t[0])&&(t=t[0].slice()),n=>n.lift.call(U([n,...t]),new k_(e))}(t),function(t){return e=>e.lift(new t$(t))}(([t,e])=>!e),D(([t])=>t))}(n),function(t,e){let n=!1;return arguments.length>=2&&(n=!0),function(i){return i.lift(new ZH(t,e,n))}}(r$,void 0),Rd())}(this._youtubeContainer,this._videoId,t,this._width,this._height,this._playerVars,this._ngZone).pipe($f(t=>{this._playerChanges.next(t)}),W(t=>t?s$(t)?wd(t):new C(e=>{let n=!1,i=!1;const r=t=>{i=!0,n||(t.target.removeEventListener("onReady",r),e.next(t.target))};return t.addEventListener("onReady",r),()=>{n=!0,i||(t=>{s$(t)||t.destroy()})(t)}}).pipe(Gp(1),Kd(void 0)):wd(void 0)),Wd(this._destroyed),rt(new P));e.subscribe(t=>{this._player=t,t&&this._pendingPlayerState&&this._initializePlayer(t,this._pendingPlayerState),this._pendingPlayerState=void 0}),function(t,e,n){T_([t,e,n]).subscribe(([t,e,n])=>t&&t.setSize(e,n))}(e,this._width,this._height),function(t,e){T_([t,e]).subscribe(([t,e])=>t&&e&&t.setPlaybackQuality(e))}(e,this._suggestedQuality),function(t,e,n,i,r,s){const o=T_([n,i]).pipe(D(([t,e])=>({startSeconds:t,endSeconds:e}))),a=o.pipe(o$(t,t=>!!t&&!function(t){const e=t.getPlayerState();return e!==YT.PlayerState.UNSTARTED&&e!==YT.PlayerState.CUED}(t))),l=e.pipe(o$(t,(t,e)=>!!t&&t.videoId!==e));Q(t.pipe(o$(T_([e,o]),([t,e],n)=>!(!n||t==n.videoId&&!e.startSeconds&&!e.endSeconds))),l,a).pipe(YH(T_([t,e,o,r])),D(([t,e])=>e),Wd(s)).subscribe(([t,e,n,i])=>{!e||!t||(t.videoId=e,t.cueVideoById(Object.assign({videoId:e,suggestedQuality:i},n)))})}(e,this._videoId,this._startSeconds,this._endSeconds,this._suggestedQuality,this._destroyed),e.connect()}createEventsBoundInZone(){return{}}ngAfterViewInit(){this._youtubeContainer.next(this.youtubeContainer.nativeElement)}ngOnDestroy(){this._player&&(this._player.destroy(),window.onYouTubeIframeAPIReady=this._existingApiReadyCallback),this._playerChanges.complete(),this._videoId.complete(),this._height.complete(),this._width.complete(),this._startSeconds.complete(),this._endSeconds.complete(),this._suggestedQuality.complete(),this._youtubeContainer.complete(),this._playerVars.complete(),this._destroyed.next(),this._destroyed.complete()}playVideo(){this._player?this._player.playVideo():this._getPendingState().playbackState=YT.PlayerState.PLAYING}pauseVideo(){this._player?this._player.pauseVideo():this._getPendingState().playbackState=YT.PlayerState.PAUSED}stopVideo(){this._player?this._player.stopVideo():this._getPendingState().playbackState=YT.PlayerState.CUED}seekTo(t,e){this._player?this._player.seekTo(t,e):this._getPendingState().seek={seconds:t,allowSeekAhead:e}}mute(){this._player?this._player.mute():this._getPendingState().muted=!0}unMute(){this._player?this._player.unMute():this._getPendingState().muted=!1}isMuted(){return this._player?this._player.isMuted():!!this._pendingPlayerState&&!!this._pendingPlayerState.muted}setVolume(t){this._player?this._player.setVolume(t):this._getPendingState().volume=t}getVolume(){return this._player?this._player.getVolume():this._pendingPlayerState&&null!=this._pendingPlayerState.volume?this._pendingPlayerState.volume:0}setPlaybackRate(t){if(this._player)return this._player.setPlaybackRate(t);this._getPendingState().playbackRate=t}getPlaybackRate(){return this._player?this._player.getPlaybackRate():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackRate?this._pendingPlayerState.playbackRate:0}getAvailablePlaybackRates(){return this._player?this._player.getAvailablePlaybackRates():[]}getVideoLoadedFraction(){return this._player?this._player.getVideoLoadedFraction():0}getPlayerState(){if(this._isBrowser&&window.YT)return this._player?this._player.getPlayerState():this._pendingPlayerState&&null!=this._pendingPlayerState.playbackState?this._pendingPlayerState.playbackState:YT.PlayerState.UNSTARTED}getCurrentTime(){return this._player?this._player.getCurrentTime():this._pendingPlayerState&&this._pendingPlayerState.seek?this._pendingPlayerState.seek.seconds:0}getPlaybackQuality(){return this._player?this._player.getPlaybackQuality():"default"}getAvailableQualityLevels(){return this._player?this._player.getAvailableQualityLevels():[]}getDuration(){return this._player?this._player.getDuration():0}getVideoUrl(){return this._player?this._player.getVideoUrl():""}getVideoEmbedCode(){return this._player?this._player.getVideoEmbedCode():""}_getPendingState(){return this._pendingPlayerState||(this._pendingPlayerState={}),this._pendingPlayerState}_initializePlayer(t,e){const{playbackState:n,playbackRate:i,volume:r,muted:s,seek:o}=e;switch(n){case YT.PlayerState.PLAYING:t.playVideo();break;case YT.PlayerState.PAUSED:t.pauseVideo();break;case YT.PlayerState.CUED:t.stopVideo()}null!=i&&t.setPlaybackRate(i),null!=r&&t.setVolume(r),null!=s&&(s?t.mute():t.unMute()),null!=o&&t.seekTo(o.seconds,o.allowSeekAhead)}_getLazyEmitter(t){return this._playerChanges.pipe(Qd(e=>e?XH(n=>{e.addEventListener(t,n)},n=>{try{e.removeEventListener&&e.removeEventListener(t,n)}catch(i){}}):wd()),t=>new C(e=>t.subscribe({next:t=>this._ngZone.run(()=>e.next(t)),error:t=>e.error(t),complete:()=>e.complete()})),Wd(this._destroyed))}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["youtube-player"]],viewQuery:function(t,e){if(1&t&&qc(n$,5),2&t){let t;Wc(t=Yc())&&(e.youtubeContainer=t.first)}},inputs:{videoId:"videoId",height:"height",width:"width",startSeconds:"startSeconds",endSeconds:"endSeconds",suggestedQuality:"suggestedQuality",playerVars:"playerVars",showBeforeIframeApiLoads:"showBeforeIframeApiLoads"},outputs:{ready:"ready",stateChange:"stateChange",error:"error",apiChange:"apiChange",playbackQualityChange:"playbackQualityChange",playbackRateChange:"playbackRateChange"},decls:2,vars:0,consts:[["youtubeContainer",""]],template:function(t,e){1&t&&oa(0,"div",null,0)},encapsulation:2,changeDetection:0}),t})();function r$(t,[e,n,i]){if(t&&n&&t.playerVars!==n.playerVars)t.destroy();else{if(!n)return void(t&&t.destroy());if(t)return t}const r=i.runOutsideAngular(()=>new YT.Player(e,n));return r.videoId=n.videoId,r.playerVars=n.playerVars,r}function s$(t){return"getPlayerStatus"in t}function o$(t,e){return S(YH(t),Hd(([t,n])=>e(n,t)),D(([t])=>t))}let a$=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function l$(t){return!0===t}function c$(t){return null==t}function u$(t){return!c$(t)}function h$(t){return Boolean(t)}function d$(t){return c$(t)?t:JSON.parse(JSON.stringify(t))}const p$=t=>{const e=t instanceof Date;if("object"!=typeof t||null===t||e)return t;Object.freeze(t);const n="function"==typeof t,i=Object.prototype.hasOwnProperty;return Object.getOwnPropertyNames(t).forEach(e=>{i.call(t,e)&&(!n||"caller"!==e&&"callee"!==e&&"arguments"!==e)&&null!==t[e]&&("object"==typeof t[e]||"function"==typeof t[e])&&!Object.isFrozen(t[e])&&p$(t[e])}),t};function f$(t){return u$(t)&&"object"==typeof t&&function(t){return"[object Object]"===Object.prototype.toString.call(t)}(t)}const g$="NGXS_DATA_META",m$="NGXS_META",b$="NGXS_ARGUMENT_REGISTRY_META";let y$=(()=>{class t{constructor(t){this.sequence$=new Uf(0),this.subscription=null,t&&(this.subscription=t.subscribe(()=>this.updateSequence()))}get sequenceValue(){return this.sequence$.getValue()}ngOnDestroy(){var t;this.sequence$.next(0),null===(t=this.subscription)||void 0===t||t.unsubscribe()}updateSequence(){this.sequence$.next(this.sequenceValue+1)}}return t.\u0275fac=function(e){return new(e||t)(Ci(pV,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();function v$(t){return t[g$]}let _$=(()=>{class t{constructor(e,n,i){t.store=e.get(pV),t.ngZone=e.get(xu),t.factory=n,t.context=i,t.computed=e.get(y$)}}return t.store=null,t.computed=null,t.context=null,t.factory=null,t.ngZone=null,t.\u0275fac=function(e){return new(e||t)(Ci(No),Ci(wB),Ci(_B))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();class w${constructor(){w$.statesCachedMeta.clear()}static createStateContext(t){return _$.context.createStateContext(t)}static ensureMappedState(t){if(c$(_$.factory)||c$(t))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return(u$(t.name)?w$.statesCachedMeta.get(t.name):null)||w$.ensureMeta(t)}static getRepositoryByInstance(t){var e;const n=null!==(e=v$(w$.getStateClassByInstance(t)))&&void 0!==e?e:null;if(c$(n))throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return n}static getStateClassByInstance(t){return(null!=t?t:{}).constructor}static clearMetaByInstance(t){const e=w$.getRepositoryByInstance(t);e.stateMeta.actions={},e.operations={}}static createPayload(t,e){const n={},i=Array.from(t);for(let r=0;r0?n:null}static createAction(t,e,n){const i=w$.createPayload(e,n);return new(function(t){return class{constructor(t){t&&Object.keys(t).forEach(e=>{this[e]=t[e]})}static get type(){return t}}}(t.type))(i)}static ensureMeta(t){var e;const n=u$(t.name)?null===(e=_$.factory.states)||void 0===e?void 0:e.find(e=>e.name===t.name):null;return u$(n)&&u$(t.name)&&w$.statesCachedMeta.set(t.name,n),n}}w$.statesCachedMeta=new Map,w$.\u0275fac=function(t){return new(t||w$)},w$.\u0275prov=xt({token:w$,factory:w$.\u0275fac}),new lp(1);class x$ extends Error{constructor(t){super(`Child states can only be added to an object. Cannot convert ${u$(null==t?void 0:t.constructor)?t.constructor.name:t} to PlainObject`)}}function S$(t){var e;return null!==(e=t.NGXS_OPTIONS_META)&&void 0!==e?e:{name:""}}function E$(t){var e;const n=S$(t),i=null!==(e=n.children)&&void 0!==e?e:[],r=d$(void 0===n.defaults?{}:n.defaults);if(i.length){if(f$(r))return function(t,e){return e.reduce((t,e)=>{const n=S$(e);if(function(t){const e="string"==typeof t?t.trim():t;return[void 0,null,NaN,"",1/0].includes(e)}(n.name))throw new Error("State name not provided in class");return t[n.name.toString()]=E$(e),t},null!=t?t:{})}(r,i);throw new x$(r)}return r}function C$(t){var e;return null!==(e=t.__NGXS_COMPUTED_OPTION__)&&void 0!==e?e:null}function O$(){var t,e;return null!==(e=null===(t=null==_$?void 0:_$.computed)||void 0===t?void 0:t.sequenceValue)&&void 0!==e?e:0}function T$(t){let e=!1;return Dd(t)&&(e=!0),e}function k$(t){return t[b$]}class A$ extends Error{constructor(t,e){super(`An argument with the name '${t}' already exists in the method '${e}'`)}}class P${constructor(){this.payloadMap=new Map,this.argumentMap=new Map}getPayloadTypeByIndex(t){var e;return null!==(e=this.payloadMap.get(t))&&void 0!==e?e:null}getArgumentNameByIndex(t){var e;return null!==(e=this.argumentMap.get(t))&&void 0!==e?e:null}createPayloadType(t,e,n){this.checkDuplicateName(t,e),this.payloadMap.set(n,t),this.payloadMap.set(t,t)}createArgumentName(t,e,n){this.checkDuplicateName(t,e),this.argumentMap.set(n,t),this.argumentMap.set(t,t)}checkDuplicateName(t,e){if(h$(this.argumentMap.has(t))||h$(this.payloadMap.has(t)))throw new A$(t,e)}}function M$(t){return Nu()?p$(t):t}function I$(t){return{enumerable:!0,configurable:!0,get(){const e=v$(t),n=w$.ensureMappedState(e.stateMeta);return w$.createStateContext(n)}}}function D$(t){if(!t)throw new Error("You forgot add decorator @StateRepository or initialize state!\nExample: NgxsModule.forRoot([ .. ]), or NgxsModule.forFeature([ .. ])");return Object.assign(Object.assign({},t),{getState:()=>Nu()?p$(t.getState()):t.getState(),setState(e){t.setState(e)},patchState(e){t.patchState(e)}})}function R$(){return(t,e,n)=>{!function(t,e){if(!function(t,e){var n;let i=t,r=!1;if(f$(i))for(;null!==i;){if(l$(null==i?void 0:i.hasOwnProperty(e))){r=!!(null===(n=Object.getOwnPropertyDescriptor(i,e))||void 0===n?void 0:n.get);break}i=Object.getPrototypeOf(i)}return r}(t,null==e?void 0:e.toString()))throw new Error(`The method must be a getter for the computed decorator to work properly.\nExample: \n@Computed() get ${e.toString()}() { \n\t .. \n}`)}(t,e);const i=n.get;return n.get=function(...t){const e=function(t){return c$(C$(t))&&Object.defineProperties(t,{__NGXS_COMPUTED_OPTION__:{enumerable:!0,configurable:!0,value:new WeakMap}}),C$(t)}(this),n=null==e?void 0:e.get(i);if(l$(null==n?void 0:n.isObservable))return null==n?void 0:n.value;if(c$(n)||n.sequenceId!==O$()){e.delete(i);const n=i.apply(this,t);return e.set(i,{value:n,sequenceId:O$(),isObservable:T$(n)}),n}return n.value},n}}const N$={cancelUncompleted:!0,insideZone:!1};function L$(t=N$){return(e,n,i)=>{!function(t,e){if(t.hasOwnProperty("prototype"))throw new Error("Cannot support static methods with @DataAction()");if(void 0===e)throw new Error("@DataAction() can only decorate a method implementation")}(e,i);const r=i.value,s=n.toString();return i.value=function(...e){const n=this;let i=null;const o=w$.getRepositoryByInstance(n),a=o.operations;let l=a[s];const c=o.stateMeta,u=k$(r);if(c$(l)){const e=function(t){var e,n,i;return null!==(i=null===(n=null===(e=(t+"").replace(/[/][/].*$/gm,"").replace(/\s+/g,"").replace(/[/][*][^/*]*[*][/]/g,"").split("){",1))||void 0===e?void 0:e[0])||void 0===n?void 0:n.replace(/^[^(]*[(]/,"").replace(/=[^,]+/g,"").split(",").filter(Boolean))&&void 0!==i?i:[]}(r),n=function(t){const{statePath:e,argumentsNames:n,methodName:i,argumentRegistry:r}=t;let s="";for(let o=0;o{var s;return l$(t.insideZone)?null===(s=_$.ngZone)||void 0===s||s.run(()=>{i=r.apply(n,e)}):i=r.apply(n,e),Dd(i)?wd(null).pipe(D(()=>i)):i};const h=w$.createAction(l,e,u),d=_$.store.dispatch(h);return Dd(i)?function(t,e){return hv([t,e]).pipe(D(t=>t.pop()))}(d,i):i},i}}function j$(t){return(e,n,i)=>{const r=t.trim();if(!r)throw new Error("Payload name should be initialized");(function(t,e){const n=t[e];return c$(k$(n))&&Object.defineProperties(n,{[b$]:{enumerable:!0,configurable:!0,value:new P$}}),k$(n)})(e,n).createPayloadType(r,n,i)}}function F$(){return t=>{const e=function(t){if(function(t){return!h$(t)}(t.hasOwnProperty(m$))){const e={name:null,actions:{},defaults:{},path:null,makeRootSelector:t=>t.getStateGetter(e.name),children:[]};Object.defineProperty(t,m$,{value:e})}return function(t){var e;return null===(e=t)||void 0===e?void 0:e[m$]}(t)}(t);if(c$(e.name))throw new Error("@StateRepository should be add before decorator @State");!function(t,e){(function(t){var e;const n=null!==(e=v$(t))&&void 0!==e?e:null;return(c$(n)||(null==n?void 0:n.stateClass)!==t)&&function(t){Object.defineProperty(t,g$,{writable:!0,configurable:!0,enumerable:!0,value:{stateMeta:null,operations:{},stateClass:t}})}(t),v$(t)}(t)).stateMeta=e}(t,e),function(t,e,n){Object.defineProperties(t.prototype,{name:{enumerable:!0,configurable:!0,value:e.name},initialState:{enumerable:!0,configurable:!0,get:()=>d$(n)},context:I$(t)})}(t,e,E$(t)),function(t){var e,n;const i=v$(t),r=null!==(n=null===(e=null==i?void 0:i.stateMeta)||void 0===e?void 0:e.name)&&void 0!==n?n:null;if(u$(r)){const e=`__${r}__selector`;Object.defineProperties(t.prototype,{[e]:{writable:!0,enumerable:!1,configurable:!0},state$:{enumerable:!0,configurable:!0,get(){if(u$(this[e]))return this[e];if(c$(_$.store))throw new Error("Metadata not created \n Maybe you forgot to import the NgxsDataPluginModule\n Also, you cannot use this.ctx.* until the application is fully rendered \n (use by default ngxsOnInit(ctx: StateContext), or ngxsAfterBootstrap(ctx: StateContext) !!!");return this[e]=_$.store.select(t).pipe(D(t=>Nu()?p$(t):t),up({refCount:!0,bufferSize:1})),this[e]}}})}}(t)}}let B$=(()=>{class t{constructor(){this.browserStorageEvents$=new P,this.isInitialised=!1,this.isBootstrapped=!1,this._dirty=!0}get dirty(){return this._dirty}set dirty(t){this._dirty=t}ngxsOnChanges(t){var e;this.dirty&&this.isBootstrapped&&(this.dirty=!1,null===(e=this.ngxsDataDoCheck)||void 0===e||e.call(this))}ngxsOnInit(){this.isInitialised=!0}ngxsAfterBootstrap(){var t;this.isBootstrapped=!0,this.dirty&&(this.dirty=!1,null===(t=this.ngxsDataDoCheck)||void 0===t||t.call(this))}markAsDirtyAfterReset(){var t;this.dirty=!0,null===(t=this.ngxsDataAfterReset)||void 0===t||t.call(this)}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),V$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})(),z$=(()=>{class t extends B${get snapshot(){return M$(this.getState())}get ctx(){return D$(this.context)}getState(){return this.ctx.getState()}dispatch(t){return this.ctx.dispatch(t)}patchState(t){this.ctx.patchState(t)}setState(t){this.ctx.setState(t)}reset(){this.ctx.setState(this.initialState),this.markAsDirtyAfterReset()}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$(),aw("design:type",Object),aw("design:paramtypes",[])],t.prototype,"snapshot",null),sw([L$(),ow(0,j$("patchValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"patchState",null),sw([L$(),ow(0,j$("stateValue")),aw("design:type",Function),aw("design:paramtypes",[Object]),aw("design:returntype",void 0)],t.prototype,"setState",null),sw([L$(),aw("design:type",Function),aw("design:paramtypes",[]),aw("design:returntype",void 0)],t.prototype,"reset",null),t})();const U$=new oi("ngx-google-analytics-settings",{factory:()=>({trackingCode:"",enableTracing:!1})}),H$=new oi("ngx-window",{providedIn:"root",factory:()=>function(t){return Lh(t)?window:null}(Oi(ou))}),$$=new oi("ngx-data-layer",{providedIn:"root",factory:()=>function(t){return t?t.dataLayer=t.dataLayer||[]:null}(Oi(H$))}),G$=new oi("ngx-gtag-fn",{providedIn:"root",factory:()=>function(t,e){return t?t.gtag=t.gtag||function(){e.push(arguments)}:null}(Oi(H$),Oi($$))});let W$=(()=>{class t{constructor(t,e,n){this.settings=t,this._document=e,this._gtag=n}get document(){return this._document}throw(t){(this.settings.enableTracing||Nu())&&console&&console.error&&console.error(t)}toKeyValue(t){return t.size>0?Array.from(t).reduce((t,[e,n])=>Object.defineProperty(t,e,{value:n,enumerable:!0}),{}):void 0}gtag(...t){try{this._gtag(...t.filter(t=>void 0!==t))}catch(e){this.throw(e)}}event(t,e,n,i,r){try{const s=new Map;e&&s.set("event_category",e),n&&s.set("event_label",n),i&&s.set("value",i),void 0!==r&&s.set("interaction",r);const o=this.toKeyValue(s);o?this.gtag("event",t,o):this.gtag("event",t)}catch(s){this.throw(s)}}pageView(t,e,n,i){try{const r=new Map([["page_path",t]]);e&&r.set("page_title",e),(n||this.document)&&r.set("page_location",n||this.document.location.href),i&&Object.entries(i).map(([t,e])=>r.set(t,e)),this.gtag("config",this.settings.trackingCode,this.toKeyValue(r))}catch(r){this.throw(r)}}appView(t,e,n,i,r){try{const s=new Map([["screen_name",t],["app_name",e]]);n&&s.set("app_id",n),i&&s.set("app_version",i),r&&s.set("app_installer_id",r),this.gtag("event","screen_view",this.toKeyValue(s))}catch(s){this.throw(s)}}set(...t){try{this._gtag("set",...t)}catch(e){this.throw(e)}}exception(t,e){try{const n=new Map;t&&n.set("description",t),e&&n.set("fatal",e),this.toKeyValue(n)?this.gtag("event","exception",this.toKeyValue(n)):this.gtag("event","exception")}catch(n){this.throw(n)}}}return t.\u0275fac=function(e){return new(e||t)(Ci(U$),Ci(Yu),Ci(G$))},t.\u0275prov=xt({factory:function(){return new t(Ci(U$),Ci(Yu),Ci(G$))},token:t,providedIn:"root"}),t})();const q$={provide:tu,multi:!0,useFactory:function(t,e,n){return()=>lw(this,void 0,void 0,function*(){var i;if(!t.trackingCode)return void(Nu()||console.error("Empty tracking code for Google Analytics. Make sure to provide one when initializing NgxGoogleAnalyticsModule."));if(!e)return void(Nu()||console.error("Was not possible create or read gtag() fn. Make sure this module is running on a Browser w/ access to Window interface."));n||Nu()||console.error("Was not possible to access Document interface. Make sure this module is running on a Browser w/ access do Document interface."),t.uri=t.uri||`https://www.googletagmanager.com/gtag/js?id=${t.trackingCode}`,t.initCommands=null!==(i=null==t?void 0:t.initCommands)&&void 0!==i?i:[],t.initCommands.find(t=>"config"===t.command)||t.initCommands.unshift({command:"config",values:[t.trackingCode]}),t.initCommands.find(t=>"js"===t.command)||t.initCommands.unshift({command:"js",values:[new Date]});for(const n of t.initCommands)e(n.command,...n.values);const r=n.createElement("script");r.async=!0,r.src=t.uri,t.nonce&&r.setAttribute("nonce",t.nonce),n.getElementsByTagName("head")[0].appendChild(r)})},deps:[U$,G$,Yu]};new oi("ngx-google-analytics-routing-settings",{factory:()=>({})});let X$=(()=>{class t{static forRoot(e,n=[],i,r,s){return{ngModule:t,providers:[{provide:U$,useValue:{trackingCode:e,initCommands:n,uri:i,enableTracing:r,nonce:s}},q$]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[]]}),t})(),Y$=(()=>{class t{constructor(){this.consent="not-set",this.consentChange=new lp(1),this.consentChange.next(this.consent)}ngOnDestroy(){this.consentChange.complete()}setConsent(t){this.consent!==t&&(this.consent=t,this.consentChange.next(t))}unsetConsent(){this.setConsent("not-set")}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),K$=(()=>{class t{constructor(t,e,{trackingCode:n}){this.window=e,this.subscriptions=new g,this.token=n,this.subscriptions.add(t.consentChange.subscribe(t=>this.toggleGoogleAnalytics("rescinded"===t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}toggleGoogleAnalytics(t){this.window&&(this.window[`ga-disable-${this.token}`]=t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(H$),Ci(U$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Q$=new oi("Key under which consent is stored",{providedIn:"root",factory:()=>"ALLOW_TELEMETRY"}),Z$=[Y$,K$,(()=>{class t{constructor(t,e){this.key=e,this.subscriptions=new g;try{this.storage=localStorage}catch(n){}t.setConsent(this.loadConsent()),this.subscriptions.add(t.consentChange.subscribe(t=>this.saveConsent(t)))}ngOnDestroy(){this.subscriptions.unsubscribe()}loadConsent(){var t,e;const n=null===(e=null===(t=this.storage)||void 0===t?void 0:t.getItem)||void 0===e?void 0:e.call(t,this.key);if(null==n)return"not-set";const i=n.trim().toLowerCase();switch(i){case"given":case"rescinded":return i;default:return"not-set"}}saveConsent(t){var e,n;null===(n=null===(e=this.storage)||void 0===e?void 0:e.setItem)||void 0===n||n.call(e,this.key,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Y$),Ci(Q$))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})()];function J$(t){return Object.entries(t).reduce((t,[e,n])=>(null!=n&&(t[e]=`${n}`),t),{})}let tG=(()=>{class t{static forRoot(e){const{providers:n=[]}=X$.forRoot(e.gaToken,function(t){const{appName:e,projectName:n,developmentMode:i}=t;return[{command:"set",values:[J$({appName:e,projectName:n,developmentMode:i})]}]}(e));return{ngModule:t,providers:n}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[...Z$,{provide:tu,multi:!0,useFactory:()=>()=>{},deps:Z$}],imports:[[X$]]}),t})();function eG(t,e,n,i){n&&"function"!=typeof n&&(i=n);const r="function"==typeof n?n:void 0,s=new lp(t,e,i);return t=>rt(()=>s,r)(t)}const nG=(t,e)=>JSON.stringify(t)===JSON.stringify(e),iG=t=>t.map(t=>void 0!==t?JSON.parse(JSON.stringify(t)):t),rG={storageStrategy:class extends class{}{constructor(){super(...arguments),this.cachePairs=[]}add(t,e,n){this.cachePairs.push(t)}addMany(t){this.cachePairs=t}updateAtIndex(t,e){Object.assign(this.cachePairs[t],e)}update(t,e){Object.assign(this.cachePairs[t],e)}getAll(){return this.cachePairs}removeAtIndex(t){this.cachePairs.splice(t,1)}remove(t){this.cachePairs.splice(t,1)}removeAll(){this.cachePairs.length=0}},globalCacheKey:"CACHE_STORAGE",promiseImplementation:Promise},sG=new P;function oG(t={}){return function(e,n,i){const r=t.cacheKey||e.constructor.name+"#"+n,s=i.value;if(i&&i.value){let e=t.storageStrategy?new t.storageStrategy:new rG.storageStrategy;const n=[];t.cacheModifier&&t.cacheModifier.subscribe(t=>e.addMany(t(e.getAll(r,this)),r,this)),Q(sG.asObservable(),t.cacheBusterObserver?t.cacheBusterObserver:np()).subscribe(t=>{e.removeAll(r,this),n.length=0}),t.cacheResolver=t.cacheResolver||rG.cacheResolver||nG,t.cacheHasher=t.cacheHasher||rG.cacheHasher||iG,i.value=function(...i){const o=e.getAll(r,this);let a=t.cacheHasher(i),l=o.find(e=>t.cacheResolver(e.parameters,a));const c=n.find(e=>t.cacheResolver(e.parameters,a));if((t.maxAge||rG.maxAge)&&l&&l.created&&((new Date).getTime()-new Date(l.created).getTime()>(t.maxAge||rG.maxAge)?(e.remove?e.remove(o.indexOf(l),l,r,this):e.removeAtIndex(o.indexOf(l),r,this),l=null):(t.slidingExpiration||rG.slidingExpiration)&&(l.created=new Date,e.update?e.update(o.indexOf(l),l,r,this):e.updateAtIndex(o.indexOf(l),l,r,this))),l){const e=wd(l.response);return t.async?e.pipe(uU(0)):e}if(c)return c.response;{const l=s.call(this,...i).pipe(mv(()=>{const e=n.find(e=>t.cacheResolver(e.parameters,a));n.splice(n.indexOf(e),1)}),$f(n=>{(!t.shouldCacheDecider||t.shouldCacheDecider(n))&&((!(t.maxCacheCount||rG.maxCacheCount)||1===(t.maxCacheCount||rG.maxCacheCount)||(t.maxCacheCount||rG.maxCacheCount)&&(t.maxCacheCount||rG.maxCacheCount)this.isJsonMime(t));return void 0===e?t[0]:e}selectHeaderAccept(t){if(0===t.length)return;const e=t.find(t=>this.isJsonMime(t));return void 0===e?t[0]:e}isJsonMime(t){const e=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==t&&(e.test(t)||"application/json-patch+json"===t.toLowerCase())}lookupCredential(t){const e=this.credentials[t];return"function"==typeof e?e():e}}let uG=(()=>{class t{constructor(t,e,n){this.httpClient=t,this.basePath="/v1",this.defaultHeaders=new wv,this.configuration=new cG,n&&(this.configuration=n),"string"!=typeof this.configuration.basePath&&("string"!=typeof e&&(e=this.basePath),this.configuration.basePath=e),this.encoder=this.configuration.encoder||new aG}addToHttpParams(t,e,n){return this.addToHttpParamsRecursive(t,e,n)}addToHttpParamsRecursive(t,e,n){if(null==e)return t;if("object"==typeof e)if(Array.isArray(e))e.forEach(e=>t=this.addToHttpParamsRecursive(t,e,n));else if(e instanceof Date){if(null==n)throw Error("key may not be null if value is Date");t=t.append(n,e.toISOString().substr(0,10))}else Object.keys(e).forEach(i=>t=this.addToHttpParamsRecursive(t,e[i],null!=n?`${n}.${i}`:i));else{if(null==n)throw Error("key may not be null if value is not object or array");t=t.append(n,e)}return t}aggregateResults(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/aggregate-results`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}cellTypeTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/cell-type-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}gtexRuiLocations(t,e="body",n=!1,i){const r=t.cache;let s=new Tv({encoder:this.encoder});null!=r&&(s=this.addToHttpParams(s,r,"cache"));let o=this.defaultHeaders,a=i&&i.httpHeaderAccept;void 0===a&&(a=this.configuration.selectHeaderAccept(["application/json"])),void 0!==a&&(o=o.set("Accept",a));let l=i&&i.context;void 0===l&&(l=new kv);let c="json";return a&&(c=a.startsWith("text")?"text":this.configuration.isJsonMime(a)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/gtex/rui_locations.jsonld`,{context:l,params:s,responseType:c,withCredentials:this.configuration.withCredentials,headers:o,observe:e,reportProgress:n})}hubmapRuiLocations(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/hubmap/rui_locations.jsonld`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}ontologyTermOccurences(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-term-occurences`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}ontologyTreeModel(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/ontology-tree-model`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}providerNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/provider-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}referenceOrganScene(t,e="body",n=!1,i){const r=t.organIri;if(null==r)throw new Error("Required parameter organIri was null or undefined when calling referenceOrganScene.");const s=t.age,o=t.ageRange,a=t.bmi,l=t.bmiRange,c=t.cache,u=t.ontologyTerms,h=t.cellTypeTerms,d=t.providers,p=t.sex,f=t.technologies,g=t.token;let m=new Tv({encoder:this.encoder});null!=s&&(m=this.addToHttpParams(m,s,"age")),null!=o&&(m=this.addToHttpParams(m,o,"age-range")),null!=a&&(m=this.addToHttpParams(m,a,"bmi")),null!=l&&(m=this.addToHttpParams(m,l,"bmi-range")),null!=c&&(m=this.addToHttpParams(m,c,"cache")),u&&u.forEach(t=>{m=this.addToHttpParams(m,t,"ontology-terms")}),h&&h.forEach(t=>{m=this.addToHttpParams(m,t,"cell-type-terms")}),null!=r&&(m=this.addToHttpParams(m,r,"organ-iri")),d&&d.forEach(t=>{m=this.addToHttpParams(m,t,"providers")}),null!=p&&(m=this.addToHttpParams(m,p,"sex")),f&&f.forEach(t=>{m=this.addToHttpParams(m,t,"technologies")}),null!=g&&(m=this.addToHttpParams(m,g,"token"));let b=this.defaultHeaders,y=i&&i.httpHeaderAccept;void 0===y&&(y=this.configuration.selectHeaderAccept(["application/json"])),void 0!==y&&(b=b.set("Accept",y));let v=i&&i.context;void 0===v&&(v=new kv);let _="json";return y&&(_=y.startsWith("text")?"text":this.configuration.isJsonMime(y)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organ-scene`,{context:v,params:m,responseType:_,withCredentials:this.configuration.withCredentials,headers:b,observe:e,reportProgress:n})}referenceOrgans(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/reference-organs`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}scene(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/scene`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}technologyNames(t,e="body",n=!1,i){const r=t.cache,s=t.token;let o=new Tv({encoder:this.encoder});null!=r&&(o=this.addToHttpParams(o,r,"cache")),null!=s&&(o=this.addToHttpParams(o,s,"token"));let a=this.defaultHeaders,l=i&&i.httpHeaderAccept;void 0===l&&(l=this.configuration.selectHeaderAccept(["application/json"])),void 0!==l&&(a=a.set("Accept",l));let c=i&&i.context;void 0===c&&(c=new kv);let u="json";return l&&(u=l.startsWith("text")?"text":this.configuration.isJsonMime(l)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/technology-names`,{context:c,params:o,responseType:u,withCredentials:this.configuration.withCredentials,headers:a,observe:e,reportProgress:n})}tissueBlocks(t,e="body",n=!1,i){const r=t.age,s=t.ageRange,o=t.bmi,a=t.bmiRange,l=t.cache,c=t.ontologyTerms,u=t.cellTypeTerms,h=t.providers,d=t.sex,p=t.technologies,f=t.token;let g=new Tv({encoder:this.encoder});null!=r&&(g=this.addToHttpParams(g,r,"age")),null!=s&&(g=this.addToHttpParams(g,s,"age-range")),null!=o&&(g=this.addToHttpParams(g,o,"bmi")),null!=a&&(g=this.addToHttpParams(g,a,"bmi-range")),null!=l&&(g=this.addToHttpParams(g,l,"cache")),c&&c.forEach(t=>{g=this.addToHttpParams(g,t,"ontology-terms")}),u&&u.forEach(t=>{g=this.addToHttpParams(g,t,"cell-type-terms")}),h&&h.forEach(t=>{g=this.addToHttpParams(g,t,"providers")}),null!=d&&(g=this.addToHttpParams(g,d,"sex")),p&&p.forEach(t=>{g=this.addToHttpParams(g,t,"technologies")}),null!=f&&(g=this.addToHttpParams(g,f,"token"));let m=this.defaultHeaders,b=i&&i.httpHeaderAccept;void 0===b&&(b=this.configuration.selectHeaderAccept(["application/json"])),void 0!==b&&(m=m.set("Accept",b));let y=i&&i.context;void 0===y&&(y=new kv);let v="json";return b&&(v=b.startsWith("text")?"text":this.configuration.isJsonMime(b)?"json":"blob"),this.httpClient.get(`${this.configuration.basePath}/tissue-blocks`,{context:y,params:g,responseType:v,withCredentials:this.configuration.withCredentials,headers:m,observe:e,reportProgress:n})}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv),Ci(lG,8),Ci(cG,8))},t.\u0275prov=xt({factory:function(){return new t(Ci(Bv),Ci(lG,8),Ci(cG,8))},token:t,providedIn:"root"}),t})(),hG=(()=>{class t{constructor(t,e){if(t)throw new Error("CcfApiModule is already loaded. Import in your base AppModule only.");if(!e)throw new Error("You need to import the HttpClientModule in your AppModule! \nSee also https://github.com/angular/angular/issues/20575")}static forRoot(e){return{ngModule:t,providers:[{provide:cG,useFactory:e}]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12),Ci(Bv,8))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[],imports:[[]]}),t})();function dG(t){return new Promise((e,n)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>n(t.error)})}let pG;function fG(){return pG||(pG=function(t,e){const n=function(){if(navigator.userAgentData||!/Safari\//.test(navigator.userAgent)||/Chrom(e|ium)\//.test(navigator.userAgent)||!indexedDB.databases)return Promise.resolve();let t;return new Promise(e=>{const n=()=>indexedDB.databases().finally(e);t=setInterval(n,100),n()}).finally(()=>clearInterval(t))}().then(()=>{const t=indexedDB.open("keyval-store");return t.onupgradeneeded=()=>t.result.createObjectStore(e),dG(t)});return(t,i)=>n.then(n=>i(n.transaction(e,t).objectStore(e)))}(0,"keyval")),pG}function gG(t,e=fG()){return e("readonly",e=>dG(e.get(t)))}var mG=n(71440),bG=n(70698),yG=n(7445),vG=n.n(yG),_G=n(23815),wG=n(31609);const xG=mG.Util.prefixes({ccf:"http://purl.org/ccf/latest/ccf.owl#",entity:"http://purl.org/ccf/latest/ccf-entity.owl#",fma:"http://purl.obolibrary.org/obo/FMA_",obo:"http://purl.obolibrary.org/obo/",uberon:"http://purl.obolibrary.org/obo/UBERON_",cl:"http://purl.obolibrary.org/obo/CL_",lmha:"http://purl.obolibrary.org/obo/LMHA_",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",dc:"http://purl.org/dc/elements/1.1/"},mG.DataFactory),SG={x:xG("rdf"),type:xG("rdf")("type")},EG={x:xG("rdfs"),label:xG("rdfs")("label"),comment:xG("rdfs")("comment"),isDefinedBy:xG("rdfs")("isDefinedBy"),seeAlso:xG("rdfs")("seeAlso")},CG={x:xG("entity"),id:xG("entity")("id"),label:EG.label,description:EG.comment,link:EG.seeAlso,sex:xG("entity")("sex"),age:xG("entity")("age"),bmi:xG("entity")("bmi"),Male:mG.DataFactory.literal("Male"),Female:mG.DataFactory.literal("Female"),consortiumName:xG("entity")("consortium_name"),providerName:xG("entity")("provider_name"),providerUUID:xG("entity")("provider_uuid"),donor:xG("entity")("has_donor"),sections:xG("entity")("has_tissue_section"),datasets:xG("entity")("has_dataset"),sampleType:xG("entity")("sample_type"),TissueBlock:mG.DataFactory.literal("Tissue Block"),TissueSection:mG.DataFactory.literal("Tissue Section"),NonStandard:mG.DataFactory.literal("Non-standard"),sectionCount:xG("entity")("section_count"),sectionSize:xG("entity")("section_size"),sectionUnits:xG("entity")("section_units"),sectionNumber:xG("entity")("section_number"),spatialEntity:xG("entity")("has_spatial_entity"),ontologyTerms:xG("entity")("has_ontology_term"),cellTypeTerms:xG("entity")("has_cell_type_term"),technology:xG("entity")("technology"),thumbnail:xG("entity")("has_thumbnail")},OG=xG("ccf"),TG={x:OG,ontologyNode:{label:OG("ccf_preferred_label"),parent:OG("ccf_part_of"),children:OG("ccf_part_of"),rui_rank:OG("ccf_rui_rank"),synonymLabels:mG.DataFactory.namedNode("http://www.geneontology.org/formats/oboInOwl#hasExactSynonym")},asctb:{part_of:OG("ccf_part_of"),ct_is_a:OG("ct_is_a"),located_in:OG("located_in"),characterizes:OG("characterizes")},spatial:{Female:OG("VHFemale"),Male:OG("VHMale"),BothSexes:OG("VHBothSexes"),FemaleOrgans:OG("VHFemaleOrgans"),MaleOrgans:OG("VHMaleOrgans")},SpatialObjectReference:OG("SpatialObjectReference"),SpatialEntity:OG("SpatialEntity"),SpatialPlacement:OG("SpatialPlacement"),spatialObjectReference:{file:OG("has_object_file"),file_format:OG("has_object_file_format"),file_subpath:OG("has_object_file_subpath")},extractionSet:{label:EG.label,rui_rank:OG("ccf_rui_rank")},spatialEntity:{label:EG.label,comment:EG.comment,creator:xG("dc")("creator"),creator_first_name:OG("creator_first_name"),creator_last_name:OG("creator_last_name"),creator_orcid:OG("creator_orcid"),creation_date:OG("creation_date"),updated_date:OG("updated_date"),ccf_annotations:OG("ccf_annotation"),representation_of:OG("ccf_representation_of"),reference_organ:OG("anatomical_structure_of"),extraction_set_for:OG("extraction_set_for"),extraction_set:OG("extraction_site_for"),sex:OG("has_sex"),side:OG("has_side"),rui_rank:OG("ccf_rui_rank"),slice_thickness:OG("ccf_slice_thickness"),slice_count:OG("ccf_slice_count"),x_dimension:OG("has_x_dimension"),y_dimension:OG("has_y_dimension"),z_dimension:OG("has_z_dimension"),dimension_units:OG("has_dimension_units"),object:OG("has_object_reference")},spatialPlacement:{source:OG("has_placement_source"),target:OG("has_placement_target"),placement_date:OG("has_placement_date"),x_scaling:OG("has_x_scaling"),y_scaling:OG("has_y_scaling"),z_scaling:OG("has_z_scaling"),scaling_units:OG("has_scaling_units"),x_rotation:OG("has_x_rotation"),y_rotation:OG("has_y_rotation"),z_rotation:OG("has_z_rotation"),w_rotation:OG("has_theta_rotation"),rotation_order:OG("has_rotation_order"),rotation_units:OG("has_rotation_units"),x_translation:OG("has_x_translation"),y_translation:OG("has_y_translation"),z_translation:OG("has_z_translation"),translation_units:OG("has_translation_units")}},kG={x:xG("uberon"),body:xG("uberon")("0013702")},AG={x:xG("cl"),cell:xG("cl")("0000000")},PG={x:xG("fma")},MG=(xG("lmha"),{body:kG.body,cell:AG.cell,respiratory_system:kG.x("0001004"),colon:kG.x("0001155"),left_lung:kG.x("0002168"),right_lung:kG.x("0002167"),left_bronchus:kG.x("0002178"),right_bronchus:kG.x("0002177"),kidney:kG.x("0002113"),ureter:kG.x("0000056"),eye:kG.x("0000970"),fallopian_tube:kG.x("0003889"),knee:kG.x("0001465"),ovary:kG.x("0000992"),trachea:kG.x("0003126"),aorta:kG.x("0000947"),blood:kG.x("0000178"),bone_marrow:kG.x("0002371"),male_reproductive_system:kG.x("0000079"),lymph_node:kG.x("0000029"),blood_vasculature:kG.x("0004537"),brain:kG.x("0000955"),eye_left:kG.x("0004548"),eye_right:PG.x("54449"),fallopian_tube_left:kG.x("0001303"),fallopian_tube_right:kG.x("0001302"),heart:kG.x("0000948"),kidney_left:kG.x("0004538"),kidney_right:kG.x("0004539"),knee_left:PG.x("24978"),knee_right:PG.x("24977"),large_intestine:kG.x("0000059"),liver:kG.x("0002107"),lungs:kG.x("0002048"),mesenteric_lymph_node:kG.x("0002509"),ovary_left:PG.x("7214"),ovary_right:PG.x("7213"),pancreas:kG.x("0001264"),pelvis:kG.x("0001270"),prostate_gland:kG.x("0002367"),skin:kG.x("0002097"),small_intestine:kG.x("0002108"),spleen:kG.x("0002106"),thymus:kG.x("0002370"),ureter_left:kG.x("0001223"),ureter_right:kG.x("0001222"),urinary_bladder:kG.x("0001255"),uterus:kG.x("0000995")});function IG(t){const e={};return Object.entries(t).forEach(([t,n])=>{e[n.id]=t}),e}const DG={spatialObjectReference:IG(TG.spatialObjectReference),spatialEntity:IG(TG.spatialEntity),spatialPlacement:IG(TG.spatialPlacement)};function RG(t,e,n,i){const r={"@id":e,"@type":n};return t.some(t=>{const e=i[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(r,e,n)}return!1},mG.DataFactory.namedNode(e),null,null,null),r}const NG=(0,_G.memoize)(function(t,e){return RG(t,e,"SpatialObjectReference",DG.spatialObjectReference)},(t,e)=>e),LG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"ExtractionSet",DG.spatialEntity);return n.extractionSites=(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set,e,null).map(e=>VG(t,e.id)),["rui_rank"]),n},(t,e)=>e),jG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.extraction_set_for,e,null).map(e=>LG(t,e.id)),["rui_rank"])},(t,e)=>e),FG=(0,_G.memoize)(function(t,e){return(0,_G.sortBy)(t.getSubjects(TG.spatialEntity.reference_organ,e,null).map(e=>VG(t,e.id)).filter(t=>t["@id"]!==e),["rui_rank"])},(t,e)=>e),BG=(0,_G.memoize)(function(t){const e=[];return t.forEach(n=>{n.subject.id===n.object.id&&e.push(VG(t,n.subject.id))},null,TG.spatialEntity.reference_organ,null,null),(0,_G.sortBy)(e,["rui_rank"])}),VG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialEntity",DG.spatialEntity);return n.object&&(n.object=NG(t,n.object)),n.ccf_annotations&&(n.ccf_annotations=t.getObjects(e,TG.spatialEntity.ccf_annotations,null).map(t=>t.id)),t.forSubjects(t=>n.entityId=t.id,CG.spatialEntity,e,null),n},(t,e)=>e),zG=(0,_G.memoize)(function(t,e){const n=RG(t,e,"SpatialPlacement",DG.spatialPlacement);return n.source&&(n.source=VG(t,n.source)),n.target&&(n.target=VG(t,n.target)),n},(t,e)=>e),UG=(0,_G.memoize)(function(t,e){const n=t.getObjects(mG.DataFactory.namedNode(e),CG.spatialEntity,null);if(n.length>0)return VG(t,n[0].id)},(t,e)=>e);function HG(t,e){const n=e;let i;switch(n.translation_units){case"centimeter":i=.01;break;case"millimeter":i=.001;break;case"meter":default:i=1}const r=[n.x_translation,n.y_translation,n.z_translation].map(t=>t*i),s=[n.x_rotation,n.y_rotation,n.z_rotation].map(NS),o=[n.x_scaling,n.y_scaling,n.z_scaling];return t.translate(r).rotateXYZ(s).scale(o)}class $G{constructor(t){this.db=t,this.createGraph()}createGraph(){this.graph=new bG.DirectedGraph;const t=this.db.store;t.forSubjects(t=>{this.addNode(t.id,"SpatialObjectReference")},SG.type,TG.SpatialObjectReference,null),t.forSubjects(t=>{this.addNode(t.id,"SpatialEntity")},SG.type,TG.SpatialEntity,null);const e={};t.some(t=>(e[t.subject.id]=t.object.id,!1),null,TG.spatialPlacement.source,null,null),t.some(t=>{const n=e[t.subject.id];return n&&this.addEdge(t.subject.id,n,t.object.id,"SpatialPlacement"),!1},null,TG.spatialPlacement.target,null,null)}addNode(t,e){this.graph.mergeNode(t,{type:e})}addEdge(t,e,n,i){this.graph.mergeDirectedEdge(e,n,{type:i,id:t})}getTransformationMatrix(t,e){if(t===e)return new bT(bT.IDENTITY);if(!this.graph.hasNode(t)||!this.graph.hasNode(e))return;const n=this.db.store,i=new bT(bT.IDENTITY),r=vG()(this.graph,t,e);if(r&&r.length>0){r.reverse();let t="";for(const e of r){if(t){const r=this.graph.getEdgeAttribute(e,t,"id");HG(i,zG(n,r))}t=e}return i}}}class GG{constructor(t){this.db=t}getSpatialEntity(t){return VG(this.db.store,t)}getExtractionSets(t){return jG(this.db.store,t)}getExtractionSet(t){return LG(this.db.store,t)}getAnatomicalStructures(t){return FG(this.db.store,t)}getReferenceOrgans(){return BG(this.db.store)}getReferenceBody(t){let e;switch(null==t?void 0:t.sex){case"Male":e=TG.spatial.Male.id;break;case"Female":e=TG.spatial.Female.id;break;case"Both":default:e=TG.spatial.BothSexes.id}return this.getSpatialEntity(e)}getReferenceOrganSets(t){let e=this.getReferenceOrgans();switch(null==t?void 0:t.sex){case"Male":e=e.filter(t=>"Male"===t.sex);break;case"Female":e=e.filter(t=>"Female"===t.sex)}return(null==t?void 0:t.debug)&&(e=e.map(t=>[[t],this.getAnatomicalStructures(t["@id"])]).reduce((t,[e,n])=>t.concat(n.length>0?n:e),[])),e}getReferenceSceneNodes(t){const e=this.getReferenceBody(t),n=[];let i=[...this.getReferenceOrganSets(t).map(t=>{const i="http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of,r=this.getSceneNode(t,e,{color:[255,255,255,255],opacity:i?.5:.2,unpickable:!0,_lighting:"pbr",zoomBasedOpacity:!i});return i&&r?void n.push(r):r})];return n.length>0&&(i=[...n,...i]),(null==t?void 0:t.debug)&&(i=i.concat([this.getSceneNode(this.getSpatialEntity(TG.x("VHRightKidney").id),e,{color:[0,0,255,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHLeftKidney").id),e,{color:[255,0,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC1").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC2").id),e,{color:[0,255,0,127.5],wireframe:!0}),this.getSceneNode(this.getSpatialEntity(TG.x("VHSpleenCC3").id),e,{color:[0,255,0,127.5],wireframe:!0})])),i.filter(t=>void 0!==t)}getReferenceOrganScene(t,e){var n,i;const r=null!==(n=void 0!==(null==e?void 0:e.sex))&&void 0!==n&&n,s=this.getReferenceOrgans().filter(n=>n.representation_of===t&&(!r||n.sex===(null==e?void 0:e.sex)));if(s.length>0){const t=s[0],n=this.getSceneNode(t,t,{color:[255,255,255,255],opacity:"http://purl.obolibrary.org/obo/UBERON_0002097"===t.representation_of?.5:.2,unpickable:!0,_lighting:"pbr"}),r=(null!==(i=this.db.getSpatialEntities(e))&&void 0!==i?i:[]).map(e=>this.getSceneNode(e,t,{color:[255,255,255,229.5]}));return[n].concat(r).filter(t=>void 0!==t)}return[]}getEntitySceneNodes(t){const e=this.getReferenceBody(t);return this.db.getSpatialEntities(t).map(t=>this.getSceneNode(t,e,{color:[255,255,255,229.5]})).filter(t=>void 0!==t)}getSceneNode(t,e,n={}){var i,r,s,o;const a=null===(r=null===(i=null==t?void 0:t.object)||void 0===i?void 0:i.file_format)||void 0===r?void 0:r.startsWith("model/gltf");let l=this.db.graph.getTransformationMatrix(a&&t.object?t.object["@id"]:t["@id"],e["@id"]);if(l){if(a)l=new bT(bT.IDENTITY).rotateX(NS(90)).multiplyLeft(l);else{let e;switch(t.dimension_units){case"centimeter":e=.01;break;case"millimeter":e=.001;break;case"meter":default:e=1}const n=[t.x_dimension,t.y_dimension,t.z_dimension].map(t=>t*e/2);l.scale(n)}return Object.assign({"@id":t["@id"],"@type":"SpatialSceneNode",entityId:t.entityId,ccf_annotations:t.ccf_annotations,representation_of:t.representation_of,reference_organ:t.reference_organ,scenegraph:a?null===(s=t.object)||void 0===s?void 0:s.file:void 0,scenegraphNode:a?null===(o=t.object)||void 0===o?void 0:o.file_subpath:void 0,transformMatrix:l,tooltip:t.label},n)}}getScene(t){return[...this.getReferenceSceneNodes(t),...this.getEntitySceneNodes(t)]}}const WG="https://entity.api.hubmapconsortium.org/entities/",qG=new Set(["VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0009-LK-102-7-AF_preIMS_registered_thumbnail.jpg","VAN0009-LK-102-7-IMS_NegMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-IMS_PosMode_multilayer_thumbnail.jpg","VAN0009-LK-102-7-PAS_registered_thumbnail.jpg","VAN0010-LK-155-40-AF_preIMS_registered_thumbnail.jpg","VAN0010-LK-155-40-IMS_NegMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-IMS_PosMode_multilayer_thumbnail.jpg","VAN0010-LK-155-40-PAS_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg","VAN0013-LK-202-96-AF_preIMS_registered_thumbnail.jpg","VAN0013-LK-202-96-IMS_NegMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-IMS_PosMode_multilayer_thumbnail.jpg","VAN0013-LK-202-96-PAS_registered_thumbnail.jpg","VAN0013-LK-202-97-AF_preMxIF_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc1_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc2_registered_thumbnail.jpg","VAN0013-LK-202-97-MxIF_cyc3_registered_thumbnail.jpg","VAN0014-LK-203-108-AF_preIMS_registered_thumbnail.jpg","VAN0014-LK-203-108-IMS_NegMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-IMS_PosMode_multilayer_thumbnail.jpg","VAN0014-LK-203-108-PAS_registered_thumbnail.jpg","VAN0016-LK-202-89-AF_preIMS_registered_thumbnail.jpg","VAN0016-LK-202-89-IMS_NegMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-IMS_PosMode_multilayer_thumbnail.jpg","VAN0016-LK-202-89-PAS_registered_thumbnail.jpg","VAN0003-LK-32-21-AF_preIMS_registered_thumbnail.jpg","VAN0003-LK-32-21-IMS_NegMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-IMS_PosMode_multilayer_thumbnail.jpg","VAN0003-LK-32-21-PAS_registered_thumbnail.jpg","VAN0003-LK-32-22-AF_preMxIF_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc1_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc2_registered_thumbnail.jpg","VAN0003-LK-32-22-MxIF_cyc3_registered_thumbnail.jpg","VAN0005-RK-1-1-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-1-1-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-1-1-PAS_registered_thumbnail.jpg","VAN0005-RK-4-172-AF_preIMS_registered_thumbnail.jpg","VAN0005-RK-4-172-IMS_NegMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-IMS_PosMode_multilayer_thumbnail.jpg","VAN0005-RK-4-172-PAS_registered_thumbnail.jpg","VAN0006-LK-2-85-AF_preIMS_registered_thumbnail.jpg","VAN0006-LK-2-85-IMS_NegMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-IMS_PosMode_multilayer_thumbnail.jpg","VAN0006-LK-2-85-PAS_registered_thumbnail.jpg","VAN0006-LK-2-86-AF_preMxIF_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc1_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc2_registered_thumbnail.jpg","VAN0006-LK-2-86-MxIF_cyc3_registered_thumbnail.jpg","VAN0007-LK-203-103-AF_preIMS_registered_thumbnail.jpg","VAN0007-LK-203-103-IMS_NegMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-IMS_PosMode_multilayer_thumbnail.jpg","VAN0007-LK-203-103-PAS_registered_thumbnail.jpg","VAN0008-RK-403-100-AF_preIMS_registered_thumbnail.jpg","VAN0008-RK-403-100-IMS_NegMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-IMS_PosMode_multilayer_thumbnail.jpg","VAN0008-RK-403-100-PAS_registered_thumbnail.jpg","VAN0008-RK-403-101-AF_preMxIF_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc1_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc2_registered_thumbnail.jpg","VAN0008-RK-403-101-MxIF_cyc3_registered_thumbnail.jpg","VAN0011-RK-3-10-AF_preIMS_registered_thumbnail.jpg","VAN0011-RK-3-10-IMS_NegMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-IMS_PosMode_multilayer_thumbnail.jpg","VAN0011-RK-3-10-PAS_registered_thumbnail.jpg","VAN0011-RK-3-11-AF_preMxIF_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc1_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc2_registered_thumbnail.jpg","VAN0011-RK-3-11-MxIF_cyc3_registered_thumbnail.jpg","VAN0012-RK-103-75-AF_preIMS_registered_thumbnail.jpg","VAN0012-RK-103-75-IMS_NegMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-IMS_PosMode_multilayer_thumbnail.jpg","VAN0012-RK-103-75-PAS_registered_thumbnail.jpg","VAN0012-RK-103-76-AF_preMxIF_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc1_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc2_registered_thumbnail.jpg","VAN0012-RK-103-76-MxIF_cyc3_registered_thumbnail.jpg"]),XG={"HBM558.SRZG.629":"HBM558.SRZG.629_UFL0002-SP-3-4-1.jpg","HBM562.NTMH.548":"HBM562.NTMH.548_UFL0006-SP-1-2-1.jpg","HBM685.KHRQ.684":"HBM685.KHRQ.684_UFL0008-LY07-1-1.jpg","HBM278.SFQW.627":"HBM278.SFQW.627_UFL0008-LY09-1-1.jpg","HBM427.SMGB.866":"HBM427.SMGB.866_UFL0004-SP-1-4-1.jpg","HBM432.LLCF.677":"HBM432.LLCF.677_UFL0001-SP-2-5-1.jpg","HBM586.ZSVS.996":"HBM586.ZSVS.996_UFL0008-SP-1-1-1.jpg","HBM285.XMBT.542":"HBM285.XMBT.542_UFL0006-TH-1-3-1.jpg","HBM289.BWJW.663":"HBM289.BWJW.663_UFL0006-TH-1-2-1.jpg","HBM255.SRPR.985":"HBM255.SRPR.985_UFL0005-TH-2-2-1.jpg","HBM799.WXHD.535":"HBM799.WXHD.535_UFL0009-LY02-1-1.jpg","HBM294.RZFN.624":"HBM294.RZFN.624_UFL0005-TH-1-1-1.jpg","HBM383.TRQG.424":"HBM383.TRQG.424_UFL0006-SP-1-3-1.jpg","HBM647.MFQB.496":"HBM647.MFQB.496_UFL0001-SP-1-2-1.jpg","HBM237.GGPR.739":"HBM237.GGPR.739_UFL0006-LY01-1-1.jpg","HBM288.TPBD.654":"HBM288.TPBD.654_UFL0003-SP-2-2-1.jpg","HBM974.NDXT.675":"HBM974.NDXT.675_UFL0008-TH-2-2-1.jpg","HBM589.SLVV.423":"HBM589.SLVV.423_UFL0008-LY10-1-1.jpg","HBM794.RLFN.358":"HBM794.RLFN.358_UFL0006-LY03-1-1.jpg","HBM372.BQSR.778":"HBM372.BQSR.778_UFL0007-SP-1-1-1.jpg","HBM499.TKDW.458":"HBM499.TKDW.458_UFL0009-LY03-1-1.jpg","HBM342.PRQB.739":"HBM342.PRQB.739_UFL0003-LY06-1-1.jpg","HBM633.CLVN.674":"HBM633.CLVN.674_UFL0003-SP-3-6-1.jpg","HBM343.JQKM.578":"HBM343.JQKM.578_UFL0009-LY01-1-1.jpg","HBM987.XGTH.368":"HBM987.XGTH.368_UFL0002-SP-2-4-1.jpg","HBM964.CWCP.788":"HBM964.CWCP.788_UFL0006-LY02-2-1.jpg","HBM244.TJLK.223":"HBM244.TJLK.223_UFL0003-SP-1-4-1.jpg","HBM646.FSBQ.966":"HBM646.FSBQ.966_UFL0007-SP-2-2-1.jpg","HBM572.GXSB.234":"HBM572.GXSB.234_UFL0003-SP-3-2-1.jpg","HBM772.TKGJ.794":"HBM772.TKGJ.794_UFL0008-SP-2-1-1.jpg","HBM239.CBWR.263":"HBM239.CBWR.263_UFL0008-SP-1-2-1.jpg","HBM992.NRTT.383":"HBM992.NRTT.383_UFL0006-SP-1-1-1.jpg","HBM283.DQXD.546":"HBM283.DQXD.546_UFL0003-SP-1-2-1.jpg","HBM795.JHND.856":"HBM795.JHND.856_UFL0007-SP-1-2-1.jpg","HBM267.BZKT.867":"HBM267.BZKT.867_UFL0003-SP-2-6-1.jpg","HBM838.DLMJ.782":"HBM838.DLMJ.782_UFL0008-TH-1-1-1.jpg","HBM337.FSXL.564":"HBM337.FSXL.564_UFL0001-SP-3-8-2.jpg","HBM355.JDLK.244":"HBM355.JDLK.244_UFL0004-SP-2-4-1.jpg","HBM599.PSZG.737":"HBM599.PSZG.737_UFL0006-LY02-1-1.jpg"},YG={"03b3d854-ed44-11e8-8bce-0e368f3075e8":"TMC-UCSD","07a29e4c-ed43-11e8-b56a-0e8017bdda58":"TMC-Florida","308f5ffc-ed43-11e8-b56a-0e8017bdda58":"TMC-CalTech","5bd084c8-edc2-11e8-802f-0e368f3075e8":"HBM-TestingGroup","73bb26e4-ed43-11e8-8f19-0a7c1eab007a":"TMC-Vanderbilt","def5fd76-ed43-11e8-b56a-0e8017bdda58":"TMC-Stanford","5c106f29-ea2d-11e9-85e8-0efb3ba9a670":"RTI-General Electric"},KG=function(){const t={};return Object.entries(MG).forEach(([e,n])=>t[e]=n.id),t}(),QG={AO:[KG.body,KG.heart,KG.aorta],BL:[KG.body,KG.urinary_bladder],BD:[KG.body,KG.pelvis,KG.blood],BM:[KG.body,KG.pelvis,KG.bone_marrow],BR:[KG.body,KG.brain],LB:[KG.body,KG.respiratory_system,KG.lungs,KG.left_bronchus],RB:[KG.body,KG.respiratory_system,KG.lungs,KG.right_bronchus],LE:[KG.body,KG.eye,KG.eye_left],RE:[KG.body,KG.eye,KG.eye_right],LF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_left],RF:[KG.body,KG.fallopian_tube,KG.fallopian_tube_right],HT:[KG.body,KG.heart],LK:[KG.body,KG.kidney,KG.kidney_left],RK:[KG.body,KG.kidney,KG.kidney_right],LI:[KG.body,KG.large_intestine,KG.colon],LV:[KG.body,KG.liver],LL:[KG.body,KG.respiratory_system,KG.lungs,KG.left_lung],LN:[KG.body,KG.knee,KG.knee_left],RL:[KG.body,KG.respiratory_system,KG.lungs,KG.right_lung],RN:[KG.body,KG.knee,KG.knee_right],LY:[KG.body,KG.lymph_node,KG.mesenteric_lymph_node],LO:[KG.body,KG.ovary,KG.ovary_left],RO:[KG.body,KG.ovary,KG.ovary_right],PA:[KG.body,KG.pancreas],PL:[KG.body],SI:[KG.body,KG.small_intestine],SK:[KG.body,KG.skin],SP:[KG.body,KG.spleen],ST:[KG.body],TH:[KG.body,KG.thymus],TR:[KG.body,KG.respiratory_system,KG.lungs,KG.trachea],UR:[KG.body,KG.ureter],UT:[KG.body,KG.uterus],OT:[KG.body]},ZG={"@base":"http://purl.org/ccf/latest/ccf-entity.owl#","@vocab":"http://purl.org/ccf/latest/ccf-entity.owl#",ccf:"http://purl.org/ccf/latest/ccf.owl#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",label:"rdfs:label",description:"rdfs:comment",link:{"@id":"rdfs:seeAlso","@type":"@id"},samples:{"@reverse":"has_donor"},sections:{"@id":"has_tissue_section","@type":"@id"},datasets:{"@id":"has_dataset","@type":"@id"},rui_location:{"@id":"has_spatial_entity","@type":"@id"},ontologyTerms:{"@id":"has_ontology_term","@type":"@id"},cellTypeTerms:{"@id":"has_cell_type_term","@type":"@id"},thumbnail:{"@id":"has_thumbnail"}};class JG{constructor(t,e="",n="",i){var r,s;if(this.data=t,this.bad=!1,this["@type"]="Sample",this.sample_type="Tissue Block","Sample"!==this.data.entity_type)return void(this.bad=!0);const o=this.data.descendants||[],a=(this.data.ancestors||[]).find(t=>"Donor"===t.entity_type);this.donor=this.getDonor(a,n);const l=this.getRuiLocation(t,this.donor);l?this.rui_location=l:this.bad=!0,YG[t.group_uuid]||(YG[t.group_uuid]=t.group_name);const c=new Date(t.last_modified_timestamp).toLocaleDateString(),u=YG[t.group_uuid]||t.group_name,h=t.created_by_user_displayname;this["@id"]=WG+t.uuid,this.label=`Registered ${c}, ${h}, ${u}`,this.link=`${n}browse/sample/${t.uuid}`;const d={},p=[];this.sections=p;const f=[];this.datasets=f;for(const v of o.filter(t=>"Sample"===t.entity_type)){const e=this.getSection(v,t,n);d[v.submission_id]=e,p.push(e),e.section_number=null!==(r=e.section_number)&&void 0!==r?r:p.length}for(const v of o)if("Dataset"===v.entity_type){const t=this.getDataset(v,e,n,i),r=(0,_G.get)(v,["ingest_metadata","metadata","tissue_id"]);d[r]?null===(s=d[r].datasets)||void 0===s||s.push(t):f.push(t)}const g=null!=l?l:{},m=`${g.x_dimension} x ${g.y_dimension} x ${g.z_dimension} ${g.dimension_units}`;this.section_count=g.slice_count||p.length;const b=parseFloat((g.slice_thickness||(g.z_dimension||0)/Math.max(this.section_count,1)).toFixed(1));this.section_size=b;const y=g.dimension_units||"millimeter";this.section_units=y,this.description=`${m}, ${b} ${y}, ${t.specimen_type}, ${this.section_count} Sections`,p.forEach((t,e)=>{t.description=`${g.x_dimension} x ${g.y_dimension} x ${b} ${y}, ${b} ${y}, ${t.description}`,t.section_number=e+1})}getSection(t,e,n){const i=new Date(t.last_modified_timestamp).toLocaleDateString();return{"@id":WG+t.uuid,"@type":"Sample",label:`Registered ${i}, ${t.created_by_user_displayname}, ${YG[t.group_uuid]||t.group_name}`,description:`${e.specimen_type}`,link:`${n}browse/sample/${t.uuid}`,sample_type:"Tissue Section",section_number:1,samples:[],datasets:[]}}getDataset(t,e="",n="",i){var r;const s=new Date(t.last_modified_timestamp).toLocaleDateString(),o=YG[t.group_uuid]||t.group_name,a=t.created_by_user_displayname,l=[...t.data_types,(0,_G.get)(t,["ingest_metadata","metadata","assay_type"],"")],c=l.join("|").toLowerCase();let u,h="assets/icons/ico-unknown.svg";return-1!==c.indexOf("10x")?(u="10x",h="assets/icons/ico-bulk-10x.svg"):-1!==c.indexOf("af")?(u="AF",h="assets/icons/ico-spatial-af.svg"):-1!==c.indexOf("codex")?(u="CODEX",h="assets/icons/ico-spatial-codex.svg"):-1!==c.indexOf("imc")?(u="IMC",h="assets/icons/ico-spatial-imc.svg"):-1!==c.indexOf("lc")&&-1===c.indexOf("af")?(u="LC",h="assets/icons/ico-bulk-lc.svg"):u=-1!==c.indexOf("maldi")?"MALDI":-1!==c.indexOf("pas")?"PAS":"OTHER",h=null!==(r=this.getDatasetThumbnail(t,e,i))&&void 0!==r?r:h,{"@id":WG+t.uuid,"@type":"Dataset",label:`Registered ${s}, ${a}, ${o}`,description:`Data/Assay Types: ${l.join(", ")}`,link:`${n}browse/dataset/${t.uuid}`,technology:u,thumbnail:h}}getDatasetThumbnail(t,e,n){if(t.thumbnail_file){const i=t.thumbnail_file;return`${e}/${i.file_uuid}/${i.filename}`+(n?`?token=${n}`:"")}if("73bb26e4-ed43-11e8-8f19-0a7c1eab007a"===t.group_uuid){const i=(0,_G.get)(t,"metadata.files",[]).filter(t=>/\.(ome\.tif|ome\.tiff)$/.test(t.rel_path)).filter(t=>!/(multilayer\.ome\.tif|_ac\.ome\.tif)/.test(t.rel_path)).filter(t=>qG.has(t.rel_path.split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg"))).map(i=>`${e}/${t.uuid}/${i.rel_path}`+(n?`?token=${n}`:""));if(i.length>0){const t=i[0].split("/").slice(-1)[0].split("?")[0].replace(".ome.tif","_thumbnail.jpg");if(qG.has(t))return`assets/thumbnails/TMC-Vanderbilt/DR1/${t}`}}else if("07a29e4c-ed43-11e8-b56a-0e8017bdda58"===t.group_uuid){const e=XG[t.hubmap_id];if(e)return`assets/thumbnails/TMC-Florida/${e}`}}getDonor(t,e){const n=(t.description||"").toLowerCase();let i;n.includes("female")?i="Female":n.includes("male")&&(i="Male");const r=n.match(/age ([0-9]+)/);let s,o;r&&(s=(0,_G.toNumber)(r[1]));for(const u of(0,_G.get)(t,"metadata.organ_donor_data",[]))"Feminine gender"===u.preferred_term||"Female"===u.preferred_term?i="Female":"Masculine gender"===u.preferred_term||"Male"===u.preferred_term?i="Male":"Current chronological age"===u.preferred_term||"Age"===u.preferred_term?s=(0,_G.toNumber)(u.data_value):"Body mass index"===u.preferred_term&&(o=(0,_G.toNumber)(u.data_value));let a="";i&&s&&(a+=`${i}, Age ${s}`,o&&(a+=`, BMI ${o.toFixed(1)}`));const l=new Date(t.last_modified_timestamp).toLocaleDateString(),c=YG[t.group_uuid]||t.group_name;return{"@id":WG+t.uuid,"@type":"Donor",label:a,description:`Entered ${l}, ${t.created_by_user_displayname}, ${c}`,link:`${e}browse/donor/${t.uuid}`,age:s,sex:i,bmi:o,consortium_name:"HuBMAP",provider_name:c,provider_uuid:t.group_uuid,samples:[]}}getRuiLocation(t,e){var n;const i=(t.ancestors||[]).find(t=>"Sample"===t.entity_type&&"organ"===t.specimen_type),r=QG[null==i?void 0:i.organ]||[KG.body];let s,o=t.rui_location;if(o&&("string"==typeof o&&(o=JSON.parse(o)),o.alignment_id?console.log("Detected a deprecated rui_location",t.uuid):o["@id"]&&(s=o)),s){s.ccf_annotations=r.concat(s.ccf_annotations||[]);const t=null!==(n=(0,_G.get)(s,["placement","target"]))&&void 0!==n?n:"";t.startsWith("http://purl.org/ccf/latest/ccf.owl#VHSpleenCC")&&(0,_G.set)(s,["placement","target"],t.replace("#VHSpleenCC","Male"===e.sex?"#VHMSpleenCC":"#VHFSpleenCC")),("http://purl.org/ccf/latest/ccf.owl#VHLeftKidney"===t||"http://purl.org/ccf/latest/ccf.owl#VHRightKidney"===t)&&(0,_G.set)(s,["placement","target"],"Male"===e.sex?t.replace("#VH","#VHM")+"_Patch":t.replace("#VH","#VHF")+"_Patch")}return s}getTissueBlock(){return(0,_G.omit)(Object.assign({},this),["data","bad","donor"])}toJsonLd(){return Object.assign(Object.assign({},this.donor),{samples:[this.getTissueBlock()]})}}const tW=["uuid","entity_type","group_uuid","group_name","last_modified_timestamp","created_by_user_displayname","ancestors","descendants","rui_location","specimen_type"],eW={exists:{field:"rui_location"}};function nW(t,e,n){return JSON.stringify({version:!0,from:t,size:e,stored_fields:["*"],script_fields:{},docvalue_fields:[],query:null!=n?n:eW,_source:{includes:tW}})}function iW(t,e){return lw(this,void 0,void 0,function*(){try{const n=yield fetch(t,e);return n.ok?yield n.json():void 0}catch(n){return}})}function rW(t,e,n,i,r="",s=""){return lw(this,void 0,void 0,function*(){let o;if("static"===e?o=yield iW(t):"search-api"===e&&(o=yield function(t,e,n){return lw(this,void 0,void 0,function*(){const i=function(t){const e=new Headers;return e.append("Content-type","application/json"),t&&e.append("Authorization",`Bearer ${t}`),e}(e),r=nW(0,50,n),s=yield iW(t,{method:"POST",headers:i,body:r});if(!s)return;const o=s.hits.total.value;if(o<=50)return s;const a=[];for(let e=50;e!t))return;const c=l.map(t=>t.hits.hits);return Object.assign(Object.assign({},s),{hits:Object.assign(Object.assign({},s.hits),{hits:s.hits.hits.concat(...c)})})})}(t,i,n)),o)return function(t,e="",n="",i,r=!1){const s={},o=(0,_G.get)(t,"hits.hits",[]).map(t=>(0,_G.get)(t,"_source",{})).map(t=>new JG(t,e,n,i).toJsonLd());for(const l of o){const t=l["@id"];s[t]?s[t].samples.push(l.samples[0]):s[t]=l}const a=Object.values(s);return r&&(function(t){let e=[],n=0;for(const i of t.filter(t=>t.samples.length>1)){const t=i.samples;for(let i=0;it["@id"]===r)&&(t[i].deleteMe=!0,n++)}i.samples=t.filter(t=>!0!==t.deleteMe)}n>0&&console.log(`\u26a0 ${n} sections identified as blocks`)}(a),console.log(a.map(t=>Object.assign({"@context":ZG},t)))),{"@context":ZG,"@graph":a}}(o,r,s,i);console.warn(`Unable to load ${t} as HuBMAP Data`)})}function sW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.donor,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function oW(t,e,n){var i;const r=new Map,s=new Set;t.some(t=>{var n;return e.has(t.subject.id)&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.spatialEntity,null,null);const o=n(s),a=new Set;for(const l of o)for(const t of null!==(i=r.get(l))&&void 0!==i?i:[])a.add(t);return a}function aW(t,e){return n=>t.has(n.id)?e.add(n.id):void 0}function lW(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.namedNode(r);t.forSubjects(aW(e,i),TG.spatialEntity.ccf_annotations,n,null)}return i}function cW(t,e){const n=function(t,e){const n=new Map;return e.some(e=>(t.has(e.subject.id)&&(n.has(e.object.id)?n.get(e.object.id).add(e.subject.id):n.set(e.object.id,new Set([e.subject.id]))),!1),null,CG.spatialEntity,null,null),n}(t,e),i=new Map;return e.some(t=>{if(n.has(t.subject.id)){const e=n.get(t.subject.id);if(i.has(t.object.id)){const n=i.get(t.object.id);e.forEach(t=>n.add(t))}else i.set(t.object.id,new Set(e))}return!1},null,TG.spatialEntity.ccf_annotations,null,null),i}function uW(t,e,n){const i=mG.DataFactory.namedNode(e),r={"@id":e,"@type":"OntologyTreeNode",id:e,parent:"",children:[],synonymLabels:[],label:""},s={[TG.ontologyNode.label.id]:"label",[n]:"parent",[TG.ontologyNode.synonymLabels.id]:"synonymLabels"};return t.some(t=>{const e=s[t.predicate.id];if(e){const n="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;"synonymLabels"===e?r.synonymLabels.push(n):(0,_G.set)(r,e,n)}return!1},i,null,null,null),r.children=t.getSubjects(n,i,null).map(t=>t.id),r}const hW=(0,_G.memoize)(function(t,e,n,i){const r={root:e,nodes:{}},s=new Set;t.some(t=>(s.add(t.subject.id),s.add(t.predicate.id),!1),null,i,null,null);for(const o of s)r.nodes[o]=uW(t,o,i);if(!r.nodes[e]){const s=t.getSubjects(i,e,null).map(t=>t.id).sort((t,e)=>r.nodes[t].label.localeCompare(r.nodes[e].label));r.nodes[e]={"@id":e,"@type":"OntologyTreeNode",id:e,label:n,children:s,synonymLabels:[]}}return r},(t,e,n)=>e+n),dW={[CG.label.id]:"label",[CG.description.id]:"description",[CG.link.id]:"link"},pW=Object.assign(Object.assign({},dW),{[CG.providerName.id]:"providerName"}),fW=Object.assign(Object.assign({},dW),{[CG.technology.id]:"technology",[CG.thumbnail.id]:"thumbnail"}),gW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionNumber.id]:"sectionNumber",[CG.datasets.id]:"datasets"}),mW=Object.assign(Object.assign({},dW),{[CG.sampleType.id]:"sampleType",[CG.sectionCount.id]:"sectionCount",[CG.sectionSize.id]:"sectionSize",[CG.sectionUnits.id]:"sectionUnits",[CG.donor.id]:"donor",[CG.spatialEntity.id]:"spatialEntityId",[CG.sections.id]:"sections",[CG.datasets.id]:"datasets"}),bW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Donor"};return t.some(t=>{const e=pW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e);function yW(t,e){const n={"@id":e,"@type":"Dataset"};return t.some(t=>{const e=fW[t.predicate.id];if(e){const i="Literal"===t.object.termType?(0,wG.fromRdf)(t.object):t.object.id;(0,_G.set)(n,e,i)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}const vW=(0,_G.memoize)(function(t,e){const n={"@id":e,"@type":"Sample",sections:[],datasets:[]};return t.some(e=>{const i=mW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("sections"===i){const e=function(t,e){const n={"@id":e,"@type":"Sample",datasets:[]};return t.some(e=>{const i=gW[e.predicate.id];if(i){const r="Literal"===e.object.termType?(0,wG.fromRdf)(e.object):e.object.id;if("datasets"===i){const e=yW(t,r);n[i].push(e)}else(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n}(t,r);n[i].push(e)}else if("datasets"===i){const e=yW(t,r);n[i].push(e)}else"donor"===i?n[i]=bW(t,r):(0,_G.set)(n,i,r)}return!1},mG.DataFactory.namedNode(e),null,null,null),n},(t,e)=>e),_W={ccfOwlUrl:"https://purl.org/ccf/latest/ccf.owl",ccfContextUrl:"https://purl.org/ccf/latest/ccf-context.jsonld",dataSources:[],hubmapDataService:"static",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"",hubmapAssetsUrl:"https://assets.hubmapconsortium.org"};class wW{constructor(t=_W){this.options=t,this.store=new mG.Store(void 0,{factory:mG.DataFactory}),this.graph=new $G(this),this.scene=new GG(this)}connect(t,e=!1){return lw(this,void 0,void 0,function*(){return t&&(this.options=t),this.initializing||(this.initializing=e?this.cachedConnect():this.doConnect()),yield this.initializing,this.store.size>0})}cachedConnect(){return lw(this,void 0,void 0,function*(){const t=(new Date).getTime(),e="ccf-database.last_modified",n="ccf-database",i=yield gG(e).catch(()=>{});let r;i&&t-new Date(+i).getTime()>36e5?yield function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.delete(t)),dG(e.transaction)))}([n,e]).catch(()=>{}):r=yield gG(n).catch(()=>{}),r?yield this.deserialize(r):(yield this.doConnect(),function(t,e=fG()){return e("readwrite",e=>(t.forEach(t=>e.put(t[1],t[0])),dG(e.transaction)))}([[n,this.serialize()],[e,""+t]]).catch(()=>{}))})}doConnect(){var t,e;return lw(this,void 0,void 0,function*(){const n=[],i=null!==(e=null===(t=this.options.dataSources)||void 0===t?void 0:t.concat())&&void 0!==e?e:[],r=this.options.ccfOwlUrl;if(r.startsWith("{"))this.store=(0,mG.deserializeN3Store)(r,mG.DataFactory);else if(r.endsWith(".n3store.json")){const t=yield fetch(r).then(t=>t.text()).catch(()=>console.log("Couldn't locate serialized store."));t&&(this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory))}else(null==r?void 0:r.length)>0&&i.push(r);this.options.hubmapDataUrl&&(this.options.hubmapDataUrl.endsWith("jsonld")?i.push(this.options.hubmapDataUrl):n.push(rW(this.options.hubmapDataUrl,this.options.hubmapDataService,this.options.hubmapQuery,this.options.hubmapToken,this.options.hubmapAssetsUrl,this.options.hubmapPortalUrl).then(t=>{if(t)return this.addDataSources([t])}))),n.push(this.addDataSources(i)),yield Promise.all(n),yield this.synchronize()})}addDataSources(t,e){return lw(this,void 0,void 0,function*(){const n=null!=e?e:this.store;return yield Promise.all(t.map(t=>lw(this,void 0,void 0,function*(){"string"==typeof t?t.endsWith("jsonld")?yield(0,mG.addJsonLdToStore)(t,n):t.endsWith("n3")?yield(0,mG.addN3ToStore)(t,n):t.endsWith("rdf")||t.endsWith("owl")||t.endsWith("xml")?yield(0,mG.addRdfXmlToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n):yield(0,mG.addJsonLdToStore)(t,n)}))),this})}synchronize(){return lw(this,void 0,void 0,function*(){return yield new Promise(t=>{setTimeout(t,500)}),this.graph.createGraph(),this})}serialize(){return(0,mG.serializeN3Store)(this.store)}deserialize(t){return lw(this,void 0,void 0,function*(){this.store=(0,mG.deserializeN3Store)(t,mG.DataFactory),this.graph=new $G(this),this.scene=new GG(this),yield new Promise(t=>{setTimeout(t,10)})})}getIds(t={}){return function(t,e){var n,i,r,s,o,a;let l=function(t){const e=new Set;return t.forSubjects(t=>e.add(t.id),CG.spatialEntity,null,null),e}(t);if(l.size>0&&(l=function(t,e,n=!0){const i=new Set;if(t.forSubjects(aW(e,i),CG.spatialEntity,null,null),!n){const t=new Set;return e.forEach(e=>i.has(e)?void 0:t.add(e)),t}return i}(t,l)),l.size>0&&("Male"===e.sex||"Female"===e.sex)){const n=e.sex;l=sW(t,l,e=>function(t,e,n){const i=new Set;return t.forSubjects(aW(e,i),CG.sex,CG[n],null),i}(t,e,n))}if(l.size>0&&(null===(n=e.tmc)||void 0===n?void 0:n.length)>0&&(l=sW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.providerName,n,null)}return i}(t,n,e.tmc))),l.size>0&&(null===(i=e.technologies)||void 0===i?void 0:i.length)>0&&(l=function(t,e,n){var i;const r=new Map,s=new Set,o=new Set;t.some(t=>(e.has(t.subject.id)&&o.add(t.object.id),!1),null,CG.sections,null,null),t.some(t=>{var n;return(e.has(t.subject.id)||o.has(t.subject.id))&&(s.add(t.object.id),r.has(t.object.id)?null===(n=r.get(t.object.id))||void 0===n||n.push(t.subject.id):r.set(t.object.id,[t.subject.id])),!1},null,CG.datasets,null,null);const a=n(s),l=new Set;for(const c of a)for(const t of null!==(i=r.get(c))&&void 0!==i?i:[])l.add(t);return l}(t,l,n=>function(t,e,n){const i=new Set;for(const r of n){const n=mG.DataFactory.literal(r);t.forSubjects(aW(e,i),CG.technology,n,null)}return i}(t,n,e.technologies))),l.size>0&&(null===(r=e.ontologyTerms)||void 0===r?void 0:r.length)>0&&(l=oW(t,l,n=>lW(t,n,e.ontologyTerms))),l.size>0&&(null===(s=e.cellTypeTerms)||void 0===s?void 0:s.length)>0&&(l=oW(t,l,n=>function(t,e,n){const i=new Set;for(const r of n)t.forObjects(t=>{i.add(t.id)},r,TG.asctb.located_in,null),r===MG.cell.id&&i.add(MG.body.id);return lW(t,e,[...i])}(t,n,e.cellTypeTerms))),l.size>0&&2===(null===(o=e.ageRange)||void 0===o?void 0:o.length)&&(0,_G.isFinite)(e.ageRange[0])&&(0,_G.isFinite)(e.ageRange[1])){const n=Math.max(...e.ageRange),i=Math.min(...e.ageRange);1===i&&110===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.age,null,null),r}(t,e,i,n)))}if(l.size>0&&2===(null===(a=e.bmiRange)||void 0===a?void 0:a.length)&&(0,_G.isFinite)(e.bmiRange[0])&&(0,_G.isFinite)(e.bmiRange[1])){const n=Math.max(...e.bmiRange),i=Math.min(...e.bmiRange);13===i&&83===n||(l=sW(t,l,e=>function(t,e,n,i){const r=new Set;return t.some(t=>{if(e.has(t.subject.id)){const e=(0,wG.fromRdf)(t.object);e>=n&&e<=i&&r.add(t.subject.id)}return!1},null,CG.bmi,null,null),r}(t,e,i,n)))}return l}(this.store,t)}get(t){return this.store.getQuads(mG.DataFactory.namedNode(t),null,null,null)}search(t={}){return[...this.getIds(t)].map(t=>this.get(t))}getSpatialEntities(t){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>UG(this.store,t))}getDatasetTechnologyNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.technology,null,null),Array.from(e).sort()}(this.store)})}getProviderNames(){return lw(this,void 0,void 0,function*(){return function(t){const e=new Set;return t.some(t=>(e.add(t.object.value),!1),null,CG.providerName,null,null),Array.from(e).sort()}(this.store)})}getTissueBlockResults(t){return lw(this,void 0,void 0,function*(){return t=Object.assign(Object.assign({},t),{hasSpatialEntity:!0}),[...this.getIds(t)].map(t=>vW(this.store,t))})}getAggregateResults(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n=new Set;e.some(e=>(t.has(e.subject.id)&&n.add(e.object.id),!1),null,CG.donor,null,null);const i=new Set;e.some(t=>(n.has(t.subject.id)&&i.add(t.object.id),!1),null,CG.providerUUID,null,null);const r=new Set;e.forSubjects(e=>{t.has(e.id)&&r.add(e.id)},CG.spatialEntity,null,null);const s=new Set;e.some(t=>(r.has(t.subject.id)&&s.add(t.object.id),!1),null,CG.sections,null,null);const o=new Set;return e.some(t=>{const e=t.subject;return(r.has(e.id)||s.has(e.id))&&o.add(t.object.id),!1},null,CG.datasets,null,null),Object.entries({"Tissue Data Providers":i.size,Donors:n.size,"Tissue Blocks":r.size,"Tissue Sections":s.size,"Tissue Datasets":o.size}).map(([t,e])=>({label:t,count:e}))}(this.getIds(t),this.store)})}getOntologyTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){const n={};return cW(t,e).forEach((t,e)=>{n[e]=t.size}),n}(this.getIds(t),this.store)})}getCellTypeTermOccurences(t){return lw(this,void 0,void 0,function*(){return function(t,e){var n,i;const r=cW(t,e),s=new Map;e.some(t=>{const e=t.object.id;if(r.has(e)){const n=t.subject.id,i=r.get(e);if(s.has(n)){const t=s.get(n);i.forEach(e=>t.add(e))}else s.set(n,new Set(i))}return!1},null,TG.asctb.located_in,null,null);const o={};return s.forEach((t,e)=>{o[e]=t.size}),o[MG.cell.id]=null!==(i=null===(n=r.get(MG.body.id))||void 0===n?void 0:n.size)&&void 0!==i?i:0,o}(this.getIds(t),this.store)})}getOntologyTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){const e=hW(t,MG.body.id,"body",TG.asctb.part_of.id);return e.nodes[MG.body.id].children=["http://purl.obolibrary.org/obo/UBERON_0000955","http://purl.obolibrary.org/obo/UBERON_0000029","http://purl.obolibrary.org/obo/UBERON_0000970","http://purl.obolibrary.org/obo/UBERON_0003889","http://purl.obolibrary.org/obo/UBERON_0000948","http://purl.obolibrary.org/obo/UBERON_0002113","http://purl.obolibrary.org/obo/UBERON_0001465","http://purl.obolibrary.org/obo/UBERON_0002107","http://purl.obolibrary.org/obo/UBERON_0002048","http://purl.obolibrary.org/obo/UBERON_0000992","http://purl.obolibrary.org/obo/UBERON_0001264","http://purl.obolibrary.org/obo/UBERON_0001270","http://purl.obolibrary.org/obo/UBERON_0002367","http://purl.obolibrary.org/obo/UBERON_0002097","http://purl.obolibrary.org/obo/UBERON_0002108","http://purl.obolibrary.org/obo/UBERON_0000059","http://purl.obolibrary.org/obo/UBERON_0002106","http://purl.obolibrary.org/obo/UBERON_0002370","http://purl.obolibrary.org/obo/UBERON_0000056","http://purl.obolibrary.org/obo/UBERON_0001255","http://purl.obolibrary.org/obo/UBERON_0000995","http://purl.obolibrary.org/obo/UBERON_0004537"].filter(t=>t in e.nodes),e}(this.store)})}getCellTypeTreeModel(){return lw(this,void 0,void 0,function*(){return function(t){return hW(t,MG.cell.id,"cell",TG.asctb.ct_is_a.id)}(this.store)})}getReferenceOrgans(){return lw(this,void 0,void 0,function*(){return this.scene.getReferenceOrgans()})}getScene(t){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getScene(t)})}getReferenceOrganScene(t,e){return lw(this,void 0,void 0,function*(){return this.graph.createGraph(),this.scene.getReferenceOrganScene(t,e)})}}const xW=Symbol("Comlink.proxy"),SW=Symbol("Comlink.endpoint"),EW=Symbol("Comlink.releaseProxy"),CW=Symbol("Comlink.thrown"),OW=t=>"object"==typeof t&&null!==t||"function"==typeof t,TW=new Map([["proxy",{canHandle:t=>OW(t)&&t[xW],serialize(t){const{port1:e,port2:n}=new MessageChannel;return kW(t,e),[n,[n]]},deserialize:t=>(t.start(),PW(t))}],["throw",{canHandle:t=>OW(t)&&CW in t,serialize({value:t}){let e;return e=t instanceof Error?{isError:!0,value:{message:t.message,name:t.name,stack:t.stack}}:{isError:!1,value:t},[e,[]]},deserialize(t){throw t.isError?Object.assign(new Error(t.value.message),t.value):t.value}}]]);function kW(t,e=self){e.addEventListener("message",function n(i){if(!i||!i.data)return;const{id:r,type:s,path:o}=Object.assign({path:[]},i.data),a=(i.data.argumentList||[]).map(jW);let l;try{const e=o.slice(0,-1).reduce((t,e)=>t[e],t),n=o.reduce((t,e)=>t[e],t);switch(s){case"GET":l=n;break;case"SET":e[o.slice(-1)[0]]=jW(i.data.value),l=!0;break;case"APPLY":l=n.apply(e,a);break;case"CONSTRUCT":l=function(t){return Object.assign(t,{[xW]:!0})}(new n(...a));break;case"ENDPOINT":{const{port1:e,port2:n}=new MessageChannel;kW(t,n),l=function(t,e){return NW.set(t,e),t}(e,[e])}break;case"RELEASE":l=void 0;break;default:return}}catch(c){l={value:c,[CW]:0}}Promise.resolve(l).catch(t=>({value:t,[CW]:0})).then(t=>{const[i,o]=LW(t);e.postMessage(Object.assign(Object.assign({},i),{id:r}),o),"RELEASE"===s&&(e.removeEventListener("message",n),AW(e))})}),e.start&&e.start()}function AW(t){(function(t){return"MessagePort"===t.constructor.name})(t)&&t.close()}function PW(t,e){return IW(t,[],e)}function MW(t){if(t)throw new Error("Proxy has been released and is not useable")}function IW(t,e=[],n=function(){}){let i=!1;const r=new Proxy(n,{get(n,s){if(MW(i),s===EW)return()=>FW(t,{type:"RELEASE",path:e.map(t=>t.toString())}).then(()=>{AW(t),i=!0});if("then"===s){if(0===e.length)return{then:()=>r};const n=FW(t,{type:"GET",path:e.map(t=>t.toString())}).then(jW);return n.then.bind(n)}return IW(t,[...e,s])},set(n,r,s){MW(i);const[o,a]=LW(s);return FW(t,{type:"SET",path:[...e,r].map(t=>t.toString()),value:o},a).then(jW)},apply(n,r,s){MW(i);const o=e[e.length-1];if(o===SW)return FW(t,{type:"ENDPOINT"}).then(jW);if("bind"===o)return IW(t,e.slice(0,-1));const[a,l]=RW(s);return FW(t,{type:"APPLY",path:e.map(t=>t.toString()),argumentList:a},l).then(jW)},construct(n,r){MW(i);const[s,o]=RW(r);return FW(t,{type:"CONSTRUCT",path:e.map(t=>t.toString()),argumentList:s},o).then(jW)}});return r}function DW(t){return Array.prototype.concat.apply([],t)}function RW(t){const e=t.map(LW);return[e.map(t=>t[0]),DW(e.map(t=>t[1]))]}const NW=new WeakMap;function LW(t){for(const[e,n]of TW)if(n.canHandle(t)){const[i,r]=n.serialize(t);return[{type:"HANDLER",name:e,value:i},r]}return[{type:"RAW",value:t},NW.get(t)||[]]}function jW(t){switch(t.type){case"HANDLER":return TW.get(t.name).deserialize(t.value);case"RAW":return t.value}}function FW(t,e,n){return new Promise(i=>{const r=new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-");t.addEventListener("message",function e(n){!n.data||!n.data.id||n.data.id!==r||(t.removeEventListener("message",e),i(n.data))}),t.start&&t.start(),t.postMessage(Object.assign({id:r},e),n)})}const BW=["bodyCanvas"];let VW=(()=>{class t{constructor(){this.clsName="ccf-body-ui",this.rotationChange=new Rc,this.nodeDrag=new Rc,this.nodeClick=new Rc,this.nodeHoverStart=new Rc,this.nodeHoverStop=new Rc,this.initialized=new Rc,this._interactive=!0,this._rotation=0,this._rotationX=0,this._zoom=9.5,this._target=[0,0,0],this._scene=[],this.subscriptions=[]}get scene(){return this._scene}set scene(t){var e;this._scene=t,null===(e=this.bodyUI)||void 0===e||e.setScene(t)}get rotation(){return this._rotation}set rotation(t){var e;this._rotation=t,null===(e=this.bodyUI)||void 0===e||e.setRotation(t)}get rotationX(){return this._rotationX}set rotationX(t){var e;this._rotationX=t,null===(e=this.bodyUI)||void 0===e||e.setRotationX(t)}get zoom(){return this._zoom}set zoom(t){var e;this._zoom=t,null===(e=this.bodyUI)||void 0===e||e.setZoom(t)}get target(){return this._target}set target(t){var e;this._target=t,null===(e=this.bodyUI)||void 0===e||e.setTarget(t)}get bounds(){return this._bounds}set bounds(t){this._bounds=t,this.zoomToBounds(t)}get camera(){return this._camera}set camera(t){this._camera=t}get interactive(){return this._interactive}set interactive(t){this._interactive=t,this.bodyUI&&this.recreateBodyUI()}ngAfterViewInit(){this.setupBodyUI()}zoomToBounds(t,e={x:48,y:48}){if(this.bodyCanvas){const{width:n,height:i}=this.bodyCanvas.nativeElement,r=window.devicePixelRatio,s=Math.min(Math.log2((n-e.x)/r/t.x),Math.log2((i-e.y)/r/t.y));this.zoom=s}}setupBodyUI(){var t;return lw(this,void 0,void 0,function*(){const e=this.bodyCanvas.nativeElement,n=new dB({id:"body-ui",canvas:e,zoom:this.zoom,target:[0,0,0],rotation:0,minRotationX:-75,maxRotationX:75,interactive:this.interactive,camera:this.camera});e.addEventListener("contextmenu",t=>t.preventDefault()),yield n.initialize(),this.bodyUI=n,window.bodyUI=n,(null===(t=this.scene)||void 0===t?void 0:t.length)>0&&this.bodyUI.setScene(this.scene),this.bounds&&this.zoomToBounds(this.bounds),this.subscriptions=[this.bodyUI.sceneRotation$.subscribe(t=>this.rotationChange.next(t)),this.bodyUI.nodeDrag$.subscribe(t=>this.nodeDrag.emit(t)),this.bodyUI.nodeClick$.subscribe(t=>this.nodeClick.emit(t)),this.bodyUI.nodeHoverStart$.subscribe(t=>this.nodeHoverStart.emit(t)),this.bodyUI.nodeHoverStop$.subscribe(t=>this.nodeHoverStop.emit(t))],this.initialized.emit()})}recreateBodyUI(){this.clearSubscriptions(),this.bodyUI.finalize(),this.setupBodyUI()}clearSubscriptions(){this.subscriptions.forEach(t=>t.unsubscribe()),this.subscriptions=[]}ngOnDestroy(){this.clearSubscriptions()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-body-ui"]],viewQuery:function(t,e){if(1&t&&qc(BW,5,kl),2&t){let t;Wc(t=Yc())&&(e.bodyCanvas=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{scene:"scene",rotation:"rotation",rotationX:"rotationX",zoom:"zoom",target:"target",bounds:"bounds",camera:"camera",interactive:"interactive"},outputs:{rotationChange:"rotationChange",nodeDrag:"nodeDrag",nodeClick:"nodeClick",nodeHoverStart:"nodeHoverStart",nodeHoverStop:"nodeHoverStop",initialized:"initialized"},decls:2,vars:0,consts:[[1,"body-ui"],["bodyCanvas",""]],template:function(t,e){1&t&&oa(0,"canvas",0,1)},styles:["[_nghost-%COMP%]{height:100%;display:block}[_nghost-%COMP%] .body-ui[_ngcontent-%COMP%]{position:relative!important;background-color:#000;border-radius:.5rem}"]}),t})(),zW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();new oi("Maximum number of autocomplete options displayed",{providedIn:"root",factory:()=>10});const UW=["carouselContainer"],HW=["itemlist"],$W=["itemcontainer"];function GW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",9),fa("touchstart",function(){return $e(t),va().scroll("left")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("left")})("mousedown",function(){return $e(t),va().scroll("left")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_left"),sa()}2&t&&ja("disabled",va().onLeft)}function WW(t,e){if(1&t&&(ra(0,"div",15),Za(1),sa()),2&t){const t=va().$implicit,e=va();ws(1),Ja(e.occurenceData[t.id]||0)}}function qW(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("click",function(){const e=$e(t).$implicit;return va().selectOrgan(e)}),oa(1,"mat-icon",11),ra(2,"div",12),ra(3,"div",13),Za(4),sa(),Jo(5,WW,2,1,"div",14),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ja("disabled",t.disabled)("selected",n.isSelected(t)),ws(1),Sa("svgIcon",t.src),ws(3),Ja(t.name),ws(1),na("ngIf",void 0!==t.numResults)}}function XW(t,e){if(1&t){const t=ua();ra(0,"mat-icon",16),fa("touchstart",function(){return $e(t),va().scroll("right")})("touchend",function(){return $e(t),va().stopScroll()})("click",function(){return $e(t),va().shift("right")})("mousedown",function(){return $e(t),va().scroll("right")})("mouseup",function(){return $e(t),va().stopScroll()}),Za(1,"chevron_right"),sa()}2&t&&ja("disabled",va().onRight)}const YW=[{src:"app:skin",organ:"Skin",name:"Skin",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002097"},{src:"app:brain",organ:"Brain",name:"Brain",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000955"},{disabled:!0,src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000029"},{src:"app:lymph-nodes",organ:"Lymph Node",name:"Lymph Node",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002509"},{disabled:!0,src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000970"},{src:"app:eye",organ:"Eye",name:"Eye, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004548"},{src:"app:eye",organ:"Eye",name:"Eye, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_54449"},{disabled:!0,src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0003889"},{src:"app:fallopian-tube-left",organ:"Fallopian Tube",name:"Fallopian Tube, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001303"},{src:"app:fallopian-tube-right",organ:"Fallopian Tube",name:"Fallopian Tube, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0001302"},{src:"app:heart",organ:"Heart",name:"Heart",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000948"},{disabled:!0,src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002113"},{src:"app:kidney-left",organ:"Kidney",name:"Kidney, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004538"},{src:"app:kidney-right",organ:"Kidney",name:"Kidney, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004539"},{disabled:!0,src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001465"},{src:"app:knee",organ:"Knee",name:"Knee, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24978"},{src:"app:knee",organ:"Knee",name:"Knee, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/FMA_24977"},{src:"app:liver",organ:"Liver",name:"Liver",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002107"},{disabled:!0,src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002048"},{src:"app:lung",organ:"Lung",name:"Lungs",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001004"},{disabled:!0,src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000992"},{src:"app:ovary-left",organ:"Ovary",name:"Ovary, L",side:"left",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7214"},{src:"app:ovary-right",organ:"Ovary",name:"Ovary, R",side:"right",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/FMA_7213"},{src:"app:pancreas",organ:"Pancreas",name:"Pancreas",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001264"},{src:"app:pelvis-f",organ:"Pelvis",name:"Pelvis",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001270"},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0002367",disabled:!0},{src:"app:prostate",organ:"Prostate",name:"Prostate",hasSex:!1,sex:"male",id:"http://purl.obolibrary.org/obo/UBERON_0000079"},{src:"app:small-intestine",organ:"Small Intestine",name:"Small Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002108"},{src:"app:large-intestine",organ:"Large Intestine",name:"Large Intestine",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000059"},{src:"app:spleen",organ:"Spleen",name:"Spleen",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002106"},{src:"app:thymus",organ:"Thymus",name:"Thymus",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002370"},{disabled:!0,src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0000056"},{src:"app:ureter-left",organ:"Ureter",name:"Ureter, L",side:"left",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001223"},{src:"app:ureter-right",organ:"Ureter",name:"Ureter, R",side:"right",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001222"},{src:"app:bladder",organ:"Urinary Bladder",name:"Urinary Bladder",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0001255"},{src:"app:uterus",organ:"Uterus",name:"Uterus",hasSex:!1,sex:"female",id:"http://purl.obolibrary.org/obo/UBERON_0000995"},{src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0004537"},{disabled:!0,src:"app:vasculature-thick",organ:"Blood Vasculature",name:"Blood Vasculature",hasSex:!0,id:"http://purl.obolibrary.org/obo/UBERON_0002049"}].sort((t,e)=>t.name.localeCompare(e.name)),KW=YW.filter(t=>!0!==t.disabled);let QW=(()=>{class t{constructor(){this.clsName="ccf-organ-selector",this.multiselect=!1,this.displayErrors=!1,this.organList=KW,this.selectedOrgans=[],this.expanded=!1,this.organsChanged=new Rc,this.onLeft=!0,this.onRight=!1,this.step=72}set occurenceData(t){this._occurenceData=t}get occurenceData(){return this._occurenceData}ngAfterViewInit(){const{carouselContainer:t}=this;this.sensor=new HU.ResizeSensor(t.nativeElement,()=>{this.set()})}ngOnChanges(t){"organList"in t&&this.set()}ngOnDestroy(){this.sensor.detach()}get error(){return!(!this.displayErrors||0===this.selectedOrgans.length)}shift(t){const{itemList:e}=this;let n=parseInt(e.nativeElement.style.left,10)||0;this.onLeft&&"left"===t||this.onRight&&"right"===t||(n="right"===t?n-this.step:n+this.step,e.nativeElement.style.left=n+"px",this.setLeftRight(n))}scroll(t){this.timeoutHandler=setInterval(()=>{this.shift(t)},200)}stopScroll(){this.timeoutHandler&&(clearInterval(this.timeoutHandler),this.timeoutHandler=void 0)}selectOrgan(t){this.selectedOrgans=this.multiselect?this.selectedOrgans.includes(t)?this.selectedOrgans.filter(e=>t!==e):this.selectedOrgans.concat([t]):[t],this.organsChanged.emit(this.selectedOrgans)}isSelected(t){return!!this.selectedOrgans.includes(t)}set(){const{itemList:t,itemContainer:e,carouselContainer:n}=this,i=parseInt(t.nativeElement.style.left,10)||0;if(t.nativeElement.offsetWidth>=this.organList.length*this.step)t.nativeElement.style.left="0px",this.onLeft=!0,this.onRight=!0;else{this.setLeftRight(i);const t=this.step*Math.floor(n.nativeElement.offsetWidth/this.step)-64;e.nativeElement.style.width=`${t}px`}}setWidth(){const{itemContainer:t,carouselContainer:e}=this,n=this.step*Math.floor(e.nativeElement.offsetWidth/this.step)-64;t.nativeElement.style.width=`${n}px`}setLeftRight(t){const{itemContainer:e}=this;this.onLeft=0===t,this.onRight=t<=e.nativeElement.offsetWidth-this.organList.length*this.step}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-organ-selector"]],viewQuery:function(t,e){if(1&t&&(qc(UW,7),qc(HW,7),qc($W,7)),2&t){let t;Wc(t=Yc())&&(e.carouselContainer=t.first),Wc(t=Yc())&&(e.itemList=t.first),Wc(t=Yc())&&(e.itemContainer=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{multiselect:"multiselect",displayErrors:"displayErrors",organList:"organList",selectedOrgans:"selectedOrgans",expanded:"expanded",occurenceData:"occurenceData"},outputs:{organsChanged:"organsChanged"},features:[ye],decls:9,vars:8,consts:[["matTooltip","Select the organ your tissue block is from.",1,"container",3,"matTooltipDisabled"],["carouselContainer",""],["class","carousel-left-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-item-container"],["itemcontainer",""],[1,"carousel-item-list"],["itemlist",""],["class","carousel-item",3,"disabled","selected","click",4,"ngFor","ngForOf"],["class","carousel-right-icon",3,"disabled","touchstart","touchend","click","mousedown","mouseup",4,"ngIf"],[1,"carousel-left-icon",3,"touchstart","touchend","click","mousedown","mouseup"],[1,"carousel-item",3,"click"],[1,"carousel-icon",3,"svgIcon"],[1,"carousel-text-container"],[1,"carousel-text"],["class","num-results",4,"ngIf"],[1,"num-results"],[1,"carousel-right-icon",3,"touchstart","touchend","click","mousedown","mouseup"]],template:function(t,e){1&t&&(ra(0,"div",0,1),Jo(2,GW,2,2,"mat-icon",2),ra(3,"div",3,4),ra(5,"div",5,6),Jo(7,qW,6,7,"div",7),sa(),sa(),Jo(8,XW,2,2,"mat-icon",8),sa()),2&t&&(ja("expanded",e.expanded)("error",e.error),na("matTooltipDisabled",e.multiselect),ws(2),na("ngIf",!e.expanded),ws(5),na("ngForOf",e.organList),ws(1),na("ngIf",!e.expanded))},directives:[ew,_h,yh,p_],styles:["[_nghost-%COMP%] .container[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;justify-content:space-between}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{font-size:2rem;transform:scaleY(1.2);height:2rem;width:2rem;cursor:pointer}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon.disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon.disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-left-icon[_ngcontent-%COMP%]{text-align:right}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-right-icon[_ngcontent-%COMP%]{text-align:left}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{overflow:hidden;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{position:relative;left:0rem;display:flex;transition:all .2s linear;height:100%}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer;padding:.25rem .5rem;height:5rem;transition:.6s}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-icon[_ngcontent-%COMP%]{text-align:center;width:3.5rem;height:2rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:4rem;justify-content:center;text-align:center}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .carousel-text[_ngcontent-%COMP%]{display:flex;justify-content:center;font-size:.625rem;max-width:3.5rem;line-height:.8rem;min-height:1.6rem}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%] .carousel-text-container[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{font-size:.6875rem;line-height:1.5}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item.disabled[_ngcontent-%COMP%]{pointer-events:none}[_nghost-%COMP%] .error-message[_ngcontent-%COMP%]{color:red;height:1rem}[_nghost-%COMP%] .error-message.hidden[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%]{width:100%!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%]{flex-wrap:wrap;overflow:auto;left:0rem!important}[_nghost-%COMP%] .expanded[_ngcontent-%COMP%] .carousel-item-container[_ngcontent-%COMP%] .carousel-item-list[_ngcontent-%COMP%] .carousel-item[_ngcontent-%COMP%]{height:5rem}"]}),t})(),ZW=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,rw]]}),t})(),JW=(()=>{class t{constructor(){this.clsName="ccf-opacity-slider",this.opacity=20,this.visible=!0,this.opacityChange=new Rc,this.visibilityToggle=new Rc,this.opacityReset=new Rc}ngOnInit(){this.prevOpacity=this.visible?0:20}reset(){this.prevOpacity=20}changeOpacity(t){this.opacity=parseInt(t,10),this.opacityChange.emit(this.opacity)}toggleVisibility(){const t=this.opacity;this.opacity=this.prevOpacity,this.prevOpacity=t,this.visibilityToggle.emit(),this.opacityChange.emit(this.opacity)}resetOpacity(){this.prevOpacity=0,this.opacityReset.emit()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-opacity-slider"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{opacity:"opacity",visible:"visible"},outputs:{opacityChange:"opacityChange",visibilityToggle:"visibilityToggle",opacityReset:"opacityReset"},decls:10,vars:17,consts:[[1,"slider-box"],[1,"slider-and-label"],[1,"slider",3,"step","min","max","value","input"],[1,"opacity-value"],[1,"icons"],["matRipple","","svgIcon","app:visibility_off",1,"visibility","icon","invisible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","","svgIcon","app:visibility_on",1,"visibility","icon","visible",3,"matRippleCentered","matRippleUnbounded","click"],["matRipple","",1,"icon","reset",3,"matRippleCentered","matRippleUnbounded","click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-slider",2),fa("input",function(t){return e.changeOpacity(t.value)}),sa(),ra(3,"span",3),Za(4),sa(),sa(),ra(5,"div",4),ra(6,"mat-icon",5),fa("click",function(){return e.toggleVisibility()}),sa(),ra(7,"mat-icon",6),fa("click",function(){return e.toggleVisibility()}),sa(),ra(8,"mat-icon",7),fa("click",function(){return e.resetOpacity()}),Za(9,"refresh"),sa(),sa(),sa()),2&t&&(ws(2),ja("disabled",!e.visible),na("step",1)("min",0)("max",100)("value",e.opacity),ws(2),tl("",e.opacity,"%"),ws(2),ja("hidden",e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),ja("hidden",!e.visible),na("matRippleCentered",!0)("matRippleUnbounded",!0),ws(1),na("matRippleCentered",!0)("matRippleUnbounded",!0))},directives:[YU,p_,Yy],styles:["[_nghost-%COMP%]{height:2.25rem;display:flex;align-items:center;justify-content:space-between;border-radius:.1875rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%]{display:flex;width:100%;align-items:center;justify-content:space-between;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%]{width:60%;display:flex;align-items:center;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;height:100%}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .mat-slider-wrapper{top:1.125rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .slider.disabled[_ngcontent-%COMP%]{pointer-events:none;cursor:not-allowed}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .slider-and-label[_ngcontent-%COMP%] .opacity-value[_ngcontent-%COMP%]{width:1.5rem;margin-left:.5rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%]{display:flex;cursor:pointer!important}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .reset[_ngcontent-%COMP%]{margin-right:1rem;padding:.25rem;cursor:pointer;transition:.6s;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility[_ngcontent-%COMP%]{transition:.6s;cursor:pointer;padding:.25rem;border-radius:.25rem}[_nghost-%COMP%] .slider-box[_ngcontent-%COMP%] .icons[_ngcontent-%COMP%] .visibility.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})(),tq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,JU,Ky]]}),t})();function eq(t,e){if(1&t&&(ra(0,"div",15),oa(1,"youtube-player",16),sa()),2&t){const t=va(3);ws(1),Sa("videoId",t.videoID)}}function nq(t,e){if(1&t&&(ra(0,"mat-expansion-panel",10),ra(1,"mat-expansion-panel-header"),ra(2,"h2",11),Za(3),sa(),sa(),ra(4,"div",12),oa(5,"markdown",13),Jo(6,eq,2,1,"div",14),sa(),sa()),2&t){const t=va(),e=t.index,n=t.$implicit;na("expanded",0===e),ws(3),Ja(n.title),ws(2),ja("first",0===e),na("data",n.content),ws(1),na("ngIf",0===e)}}function iq(t,e){if(1&t&&(ra(0,"div",8),Jo(1,nq,7,6,"mat-expansion-panel",9),sa()),2&t){const t=e.$implicit;ws(1),na("ngIf",t)}}let rq=(()=>{class t{constructor(t,e){this.dialogRef=t,this.data=e,this.documentationContents=e.content||[],this.infoTitle=e.title||"",this.videoID=e.videoID}ngOnInit(){const t=document.createElement("script");t.src="https://www.youtube.com/iframe_api",document.body.appendChild(t)}close(){var t;null===(t=document.getElementsByClassName("modal-animated")[0])||void 0===t||t.classList.add("modal-animate-fade-out"),setTimeout(()=>{this.dialogRef.close()},250)}}return t.\u0275fac=function(e){return new(e||t)(ea(oH),ea(lH))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-dialog"]],decls:10,vars:2,consts:[[1,"rui-about","wrapper"],[1,"container"],[1,"close"],[1,"material-icons","close-icon",3,"click"],[1,"content"],["mat-dialog-title","",1,"title"],[1,"mat-typography","dialog-content"],["class","panel",4,"ngFor","ngForOf"],[1,"panel"],[3,"expanded",4,"ngIf"],[3,"expanded"],[1,"no-header-margin"],[1,"top-padding"],[1,"variable-binding",3,"data"],["class","video-player",4,"ngIf"],[1,"video-player"],[3,"videoId"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),ra(3,"mat-icon",3),fa("click",function(){return e.close()}),Za(4,"clear"),sa(),sa(),ra(5,"div",4),ra(6,"h2",5),Za(7),sa(),ra(8,"mat-dialog-content",6),Jo(9,iq,2,1,"div",7),sa(),sa(),sa(),sa()),2&t&&(ws(7),Ja(e.infoTitle),ws(2),na("ngForOf",e.documentationContents))},directives:[p_,gH,mH,yh,_h,NH,FH,WH,i$],styles:[".mat-dialog-container{padding:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:3rem;text-align:left}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{font-size:.875rem;line-height:1.5rem;margin-bottom:1rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .close[_ngcontent-%COMP%] .close-icon[_ngcontent-%COMP%]{float:right;cursor:pointer}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-size:1.5rem;margin-bottom:2.25rem;text-align:center}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:1rem;margin-top:0;margin-bottom:.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%]{margin-bottom:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .no-header-margin[_ngcontent-%COMP%]{font-weight:300;margin-bottom:0}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%]{display:flex}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .panel[_ngcontent-%COMP%] .top-padding[_ngcontent-%COMP%] markdown[_ngcontent-%COMP%] ul{margin-top:0;padding-left:1.5rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%]{height:50rem;min-height:10rem}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding[_ngcontent-%COMP%]{font-weight:300}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .variable-binding.first[_ngcontent-%COMP%]{padding-right:3rem;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%]{position:relative;width:50%}.rui-about.wrapper[_ngcontent-%COMP%] .container[_ngcontent-%COMP%] .dialog-content[_ngcontent-%COMP%] .video-player[_ngcontent-%COMP%] iframe{width:100%;height:100%;max-height:17.5rem}"]}),t})(),sq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,bH,f_,BH,a$,qH.forRoot({})]]}),t})(),oq=(()=>{class t{constructor(t){this.http=t,this.markdownContent=new Uf([])}readMarkdown(){this.http.get("assets/docs/README.md",{responseType:"text"}).subscribe(t=>{const e=this.parseMarkdown(t);this.markdownContent.next(e)})}parseMarkdown(t){const e=[],n=t.split("# ");for(const i of n)if(i.length){const t=i.split("\n\n");e.push({title:t[0],content:t.splice(1).join("\n\n")})}return e}}return t.\u0275fac=function(e){return new(e||t)(Ci(Bv))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),aq=(()=>{class t{constructor(t,e){this.dialog=t,this.infoButtonService=e,this.infoTitle="",this.subscriptions=new g,this.subscriptions.add(e.markdownContent.subscribe(t=>{t.length&&this.launchInfoDialog(t)}))}ngOnDestroy(){this.subscriptions.unsubscribe()}launchInfoDialog(t){this.dialog.open(rq,{autoFocus:!1,panelClass:"modal-animated",width:"60rem",data:{title:this.infoTitle,content:t,videoID:this.videoID}})}onDialogButtonClick(){this.infoButtonService.readMarkdown()}}return t.\u0275fac=function(e){return new(e||t)(ea(pH),ea(oq))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-info-button"]],inputs:{infoTitle:"infoTitle",videoID:"videoID"},decls:3,vars:0,consts:[[1,"info-button-wrapper"],["aria-hidden","false","aria-label","Page information",1,"ccf-info-button",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"mat-icon",1),fa("click",function(){return e.onDialogButtonClick()}),Za(2," info "),sa(),sa())},directives:[p_],styles:[".info-button-wrapper[_ngcontent-%COMP%]{border-radius:.25rem;padding:.65rem;transition:.6s}.info-button-wrapper[_ngcontent-%COMP%] .ccf-info-button[_ngcontent-%COMP%]{cursor:pointer;transition:color .6s;font-size:1.5rem;vertical-align:sub}"]}),t})(),lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,sq,f_,Zv]]}),t})(),cq=(()=>{let t=class extends z${constructor(){super(...arguments),this.optionCache=new Map}get config$(){return this.state$.pipe(Hd(t=>null!=t),up(1))}setConfig(t){this.setState(t)}patchConfig(t){this.patchState(t)}getProperty(t){return this.config$.pipe(FU(...t),Rd(),up(1))}getOption(...t){const e=this.getPathKey(t);if(this.optionCache.has(e))return this.optionCache.get(e);const n=this.config$.pipe(FU(...t),Rd(),up(1));return this.optionCache.set(e,n),n}getPathKey(t){return`${t.length}:${t.join(".")}`}};return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),sw([R$()],t.prototype,"config$",null),t=sw([F$(),wV({name:"globalConfig",defaults:null})],t),t})();!function(){const t=localStorage.getItem("ALLOW_TELEMETRY");null===t||t.toLowerCase()}();let uq=(()=>{class t{constructor(t,e){t&&function(t,e){xd(t,"mousemove").pipe(function(t,e=jd,n=BU){return i=>i.lift(new VU(t,e,n.leading,n.trailing))}(1e3),D(e=>{const{clientWidth:n,clientHeight:i}=t,{clientX:r,clientY:s}=e;return[r,s,n,i].join("_")})).subscribe(t=>e.event("webpage","mousemove",t))}(t.body,e)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Yu),Ci(W$))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();function hq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!0)}),Za(1),sa()}if(2&t){const t=va();ws(1),tl(" ","not-set"===t.allowTelemetry?"I understand":"Opt in","\n")}}function dq(t,e){if(1&t){const t=ua();ra(0,"button",1),fa("click",function(){return $e(t),va().submit(!1)}),Za(1,"Opt out"),sa()}}let pq=(()=>{class t{constructor(t,e,n){this.consentService=e,this.data=n,this.clsName="ccf-tracking-popup",this.container=t.nativeElement}get allowTelemetry(){return this.consentService.consent}dismiss(){this.data.preClose()}submit(t){this.consentService.setConsent(t?"given":"rescinded"),this.dismiss()}showButton(t){const{allowTelemetry:e}=this;return"not-set"===e||("opt-in"===t?"rescinded"===e:"given"===e)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Y$),ea(F_))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tracking-popup"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},decls:4,vars:2,consts:[["mat-button","","color","basic",3,"click",4,"ngIf"],["mat-button","","color","basic",3,"click"]],template:function(t,e){1&t&&(ra(0,"p"),Za(1,"We log usage to improve this service."),sa(),Jo(2,hq,2,1,"button",0),Jo(3,dq,2,0,"button",0)),2&t&&(ws(2),na("ngIf",e.showButton("opt-in")),ws(1),na("ngIf",e.showButton("opt-out")))},directives:[_h,__],styles:["[_nghost-%COMP%]{display:flex;align-items:center;min-width:400px;color:#ffffffb3;background:#323232;box-shadow:0 3px 5px -1px #0003,0 6px 10px #00000024,0 1px 18px #0000001f;z-index:9999}[_nghost-%COMP%] p[_ngcontent-%COMP%]{margin:24px}[_nghost-%COMP%] button[_ngcontent-%COMP%]{margin:1rem;min-width:6rem;background-color:#007cbe;display:flex;justify-content:center}"],changeDetection:0}),t})(),fq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_]]}),t})();class gq extends class{getProviderNames(){return this.forwardCall("getProviderNames")}getDatasetTechnologyNames(){return this.forwardCall("getDatasetTechnologyNames")}getOntologyTreeModel(){return this.forwardCall("getOntologyTreeModel")}getCellTypeTreeModel(){return this.forwardCall("getCellTypeTreeModel")}getReferenceOrgans(){return this.forwardCall("getReferenceOrgans")}getTissueBlockResults(t){return this.forwardCall("getTissueBlockResults",t)}getAggregateResults(t){return this.forwardCall("getAggregateResults",t)}getOntologyTermOccurences(t){return this.forwardCall("getOntologyTermOccurences",t)}getCellTypeTermOccurences(t){return this.forwardCall("getCellTypeTermOccurences",t)}getScene(t){return this.forwardCall("getScene",t)}getReferenceOrganScene(t,e){return this.forwardCall("getReferenceOrganScene",t,e)}}{forwardCall(t,...e){return this.impl$.pipe(Qd(n=>n[t](...e)))}}let mq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const bq=new P,yq={cacheBusterObserver:bq},vq={cacheBusterObserver:bq,maxCacheCount:4};function _q(t,e,n){return t?{min:t[0]>e?t[0]:void 0,max:t[1]{var e;return Object.assign(Object.assign({},t),{transformMatrix:new bT(null!==(e=t.transformMatrix)&&void 0!==e?e:[])})})}let xq=(()=>{class t{constructor(t,e){this.api=t,this.globalConfig=e,e.getOption("hubmapToken").subscribe(bq)}getProviderNames(){return this.doRequest(t=>this.api.providerNames(t))}getDatasetTechnologyNames(){return this.doRequest(t=>this.api.technologyNames(t))}getOntologyTreeModel(){return this.doRequest(t=>this.api.ontologyTreeModel(t),void 0,{},t=>t)}getCellTypeTreeModel(){return this.doRequest(t=>this.api.cellTypeTreeModel(t),void 0,{},t=>t)}getReferenceOrgans(){return this.doRequest(t=>this.api.referenceOrgans(t),void 0,{},t=>t)}getTissueBlockResults(t){return this.doRequest(t=>this.api.tissueBlocks(t),t,{},t=>t)}getAggregateResults(t){return this.doRequest(t=>this.api.aggregateResults(t),t)}getOntologyTermOccurences(t){return this.doRequest(t=>this.api.ontologyTermOccurences(t),t)}getCellTypeTermOccurences(t){return this.doRequest(t=>this.api.cellTypeTermOccurences(t),t)}getScene(t){return this.doRequest(t=>this.api.scene(t),t,{},wq)}getReferenceOrganScene(t,e){return this.doRequest(t=>this.api.referenceOrganScene(t),e,{organIri:t},wq)}doRequest(t,e,n,i){const{api:r,globalConfig:s}=this,o=Object.assign(Object.assign({},function(t){var e,n;return{age:_q(null==t?void 0:t.ageRange,1,110),bmi:_q(null==t?void 0:t.bmiRange,13,83),sex:null===(n=null===(e=null==t?void 0:t.sex)||void 0===e?void 0:e.toLowerCase)||void 0===n?void 0:n.call(e),ontologyTerms:null==t?void 0:t.ontologyTerms,cellTypeTerms:null==t?void 0:t.cellTypeTerms,providers:null==t?void 0:t.tmc,technologies:null==t?void 0:t.technologies}}(e)),n);return s.getOption("remoteApiEndpoint").pipe(Gp(1),$f(t=>r.configuration.basePath=t),Qd(()=>t(o)),D(t=>i?i(t):t))}}return t.\u0275fac=function(e){return new(e||t)(Ci(uG),Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),sw([oG(yq)],t.prototype,"getProviderNames",null),sw([oG(yq)],t.prototype,"getDatasetTechnologyNames",null),sw([oG(yq)],t.prototype,"getOntologyTreeModel",null),sw([oG(yq)],t.prototype,"getCellTypeTreeModel",null),sw([oG(yq)],t.prototype,"getReferenceOrgans",null),sw([oG(vq)],t.prototype,"getTissueBlockResults",null),sw([oG(vq)],t.prototype,"getAggregateResults",null),sw([oG(vq)],t.prototype,"getOntologyTermOccurences",null),sw([oG(vq)],t.prototype,"getCellTypeTermOccurences",null),sw([oG(vq)],t.prototype,"getScene",null),sw([oG(vq)],t.prototype,"getReferenceOrganScene",null),t})(),Sq=(()=>{class t extends gq{constructor(t){super(),this.impl$=this.database$=t.config$.pipe(t=>t,Hd(t=>Object.keys(t).length>0),Qd(t=>function(t,e){return new C(n=>{let i,r;try{i=t()}catch(o){return void n.error(o)}try{r=e(i)}catch(o){return void n.error(o)}const s=(r?U(r):ep).subscribe(n);return()=>{s.unsubscribe(),i&&i.unsubscribe()}})}(()=>this.createDatabase(t),e=>this.connectDatabase(e,t))),D(t=>t.database),up(1))}connectDatabase(t,e){return lw(this,void 0,void 0,function*(){const n=!Nu();return yield t.database.connect(e,n),t})}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Eq=(()=>{class t extends Sq{createDatabase(t){return{database:new wW(t),unsubscribe:()=>{}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Cq=(()=>{class t extends Sq{createDatabase(t){const e=this.createWorker(t),n=PW(e);return{database:n,unsubscribe:()=>{n[EW](),e.terminate()}}}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})(),Oq=(()=>{class t extends gq{constructor(t,e){super(),this.impl$=t.config$.pipe(t=>t,D(t=>this.selectToken(t)),Rd(),D(t=>e.get(t)),up(1))}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const Tq=new oi("Default theme class");let kq=(()=>{class t{constructor(t){this.defaultTheme=this.theme=null!=t?t:""}static initialize(e){const{injector:n,location:i}=e;n.get(t).initialize(i,n)}getTheme(){return this.theme}setTheme(t){t!==this.theme&&(this.applyThemeClass(this.theme,"remove"),this.applyThemeClass(t),this.theme=t)}resetTheme(){this.setTheme(this.defaultTheme)}initialize(t,e){this.element=t,this.injector=e,this.applyThemeClass(this.getTheme())}applyThemeClass(t,e="add"){var n;const{element:i,injector:r}=this;if(!t||!i||!r)return;const s=r.get(Ml,null);if(!s)return;const o=i.nativeElement,a=null===(n=r.get(gf,null))||void 0===n?void 0:n.getContainerElement(),l="add"===e?"addClass":"removeClass";s[l](o,t),a&&s[l](a,t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(Tq,8))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();var Aq;const Pq={production:!0,disableDbWorker:!0,acceptableViewerDomains:["https://portal.hubmapconsortium.org","https://portal.test.hubmapconsortium.org"],dbOptions:{ccfOwlUrl:"assets/ccf.owl.n3store.json",ccfContextUrl:"https://hubmapconsortium.github.io/hubmap-ontology/ccf-context.jsonld",dataSources:["assets/kpmp/data/rui_locations.jsonld","assets/sparc/data/rui_locations.jsonld","assets/gtex/data/rui_locations.jsonld"],hubmapDataService:"search-api",hubmapPortalUrl:"https://portal.hubmapconsortium.org/",hubmapDataUrl:"https://search.api.hubmapconsortium.org/entities/search",hubmapAssetsUrl:"https://assets.hubmapconsortium.org",hubmapToken:null!==(Aq=localStorage.getItem("HUBMAP_TOKEN"))&&void 0!==Aq?Aq:"",useRemoteApi:!1,remoteApiEndpoint:"https://ccf-api--staging.herokuapp.com/v1"},customization:{theme:"hubmap",header:!0,homeUrl:"https://portal.hubmapconsortium.org/",logoTooltip:"Human BioMolecular Atlas Project"},googleAnalyticsToken:"portal.hubmapconsortium.org"===window.location.hostname?"G-1WRJHN9FM6":"G-J9HWV9QPJ4"},Mq=["*",[["mat-toolbar-row"]]],Iq=["*","mat-toolbar-row"],Dq=jy(class{constructor(t){this._elementRef=t}});let Rq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275dir=se({type:t,selectors:[["mat-toolbar-row"]],hostAttrs:[1,"mat-toolbar-row"],exportAs:["matToolbarRow"]}),t})(),Nq=(()=>{class t extends Dq{constructor(t,e,n){super(t),this._platform=e,this._document=n}ngAfterViewInit(){this._platform.isBrowser&&(this._checkToolbarMixedModes(),this._toolbarRows.changes.subscribe(()=>this._checkToolbarMixedModes()))}_checkToolbarMixedModes(){}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu))},t.\u0275cmp=Jt({type:t,selectors:[["mat-toolbar"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,Rq,5),2&t){let t;Wc(t=Yc())&&(e._toolbarRows=t)}},hostAttrs:[1,"mat-toolbar"],hostVars:4,hostBindings:function(t,e){2&t&&ja("mat-toolbar-multiple-rows",e._toolbarRows.length>0)("mat-toolbar-single-row",0===e._toolbarRows.length)},inputs:{color:"color"},exportAs:["matToolbar"],features:[jo],ngContentSelectors:Iq,decls:2,vars:0,template:function(t,e){1&t&&(wa(Mq),xa(0),xa(1,1))},styles:[".cdk-high-contrast-active .mat-toolbar{outline:solid 1px}.mat-toolbar-row,.mat-toolbar-single-row{display:flex;box-sizing:border-box;padding:0 16px;width:100%;flex-direction:row;align-items:center;white-space:nowrap}.mat-toolbar-multiple-rows{display:flex;box-sizing:border-box;flex-direction:column;width:100%}\n"],encapsulation:2,changeDetection:0}),t})(),Lq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny],Ny]}),t})(),jq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,Lq,rw]]}),t})(),Fq=(()=>{class t extends Cq{constructor(t,e){super(t),this.locator=e}createWorker(t){const e=this.getWorkerUrl(!0);return new Worker(e,{type:"module"})}getWorkerUrl(t){if(t)return new URL(n(88509),n.b);const e=this.locator.prepareExternalUrl("0-es2015.worker.js"),i=new Blob([`importScripts('${e}')`],{type:"application/javascript"});return URL.createObjectURL(i)}}return t.\u0275fac=function(e){return new(e||t)(Ci(cq),Ci(rh))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Bq=(()=>{class t extends Oq{selectToken(t){const{useRemoteApi:e,remoteApiEndpoint:n}=t;return e&&n?xq:"undefined"==typeof Worker||Pq.disableDbWorker?Eq:Fq}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),Vq=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:au,useValue:kq.initialize,multi:!0},kq]}),t})(),zq=(()=>{class t{constructor(t,e){this.accessor=t,this.injector=e}static forRoot(e=[]){return{ngModule:t,providers:[w$,_$,y$,...e]}}}return t.\u0275fac=function(e){return new(e||t)(Ci(w$,2),Ci(_$,2))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Uq=(t,e)=>((t,e)=>new Array(e+1).join("0"))(0,e-t.toString().length)+t;class Hq{constructor(t,e,n){this.action=t,this.store=e,this.logWriter=n}dispatched(t){const e=VB(this.action),n=function(t){return Uq(t.getHours(),2)+":"+Uq(t.getMinutes(),2)+":"+Uq(t.getSeconds(),2)+"."+Uq(t.getMilliseconds(),3)}(new Date);this.logWriter.startGroup(`action ${e} @ ${n}`),this._hasPayload(this.action)&&this.logWriter.logGrey("payload",Object.assign({},this.action)),this.logWriter.logGrey("prev state",t)}completed(t){this.logWriter.logGreen("next state",t),this.logWriter.endGroup()}errored(t){this.logWriter.logRedish("next state after error",this.store.snapshot()),this.logWriter.logRedish("error",t),this.logWriter.endGroup()}_hasPayload(t){return this._getNonEmptyProperties(t).length>0}_getNonEmptyProperties(t){return Object.keys(t).map(e=>t[e]).filter(t=>void 0!==t)}}class $q{constructor(t){this.options=t,this.options=this.options||{},this.logger=t.logger||console}startGroup(t){const e=this.options.collapsed?this.logger.groupCollapsed:this.logger.group;try{e.call(this.logger,t)}catch(n){console.log(t)}}endGroup(){try{this.logger.groupEnd()}catch(t){this.logger.log("\u2014\u2014 log end \u2014\u2014")}}logGrey(t,e){this.log(t,"color: #9E9E9E; font-weight: bold",e)}logGreen(t,e){this.log(t,"color: #4CAF50; font-weight: bold",e)}logRedish(t,e){this.log(t,"color: #FD8182; font-weight: bold",e)}log(t,e,n){this.isIE()?this.logger.log(t,n):this.logger.log("%c "+t,e,n)}isIE(){const t="undefined"!=typeof window&&window.navigator.userAgent?window.navigator.userAgent:"";let e=!1;const n=t.indexOf("MSIE "),i=t.indexOf("Trident/");return(n>-1||i>-1)&&(e=!0),e}}const Gq=new oi("NGXS_LOGGER_PLUGIN_OPTIONS");let Wq=(()=>{class t{constructor(t,e){this._options=t,this._injector=e}handle(t,e,n){if(this._options.disabled||!this._options.filter(e,t))return n(t,e);this._logWriter=this._logWriter||new $q(this._options),this._store=this._store||this._injector.get(pV);const i=new Hq(e,this._store,this._logWriter);return i.dispatched(t),n(t,e).pipe($f(t=>{i.completed(t)}),pv(t=>{throw i.errored(t),t}))}}return t.\u0275fac=function(e){return new(e||t)(Ci(Gq),Ci(No))},t.\u0275prov=xt({token:t,factory:t.\u0275fac}),t})();const qq=new oi("LOGGER_USER_OPTIONS");function Xq(t){return Object.assign({},{logger:console,collapsed:!1,disabled:!1,filter:()=>!0},t)}let Yq=(()=>{class t{static forRoot(e){return{ngModule:t,providers:[{provide:IB,useClass:Wq,multi:!0},{provide:qq,useValue:e},{provide:Gq,useFactory:Xq,deps:[qq]}]}}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const Kq=new RegExp("[^#a-f\\d]","gi"),Qq=new RegExp("^#?[a-f\\d]{3}[a-f\\d]?$|^#?[a-f\\d]{6}([a-f\\d]{2})?$","i"),Zq=["#FF8800","#2979ff","#ffd740","#b92dff","#da326f","#7323e2","#acf32b","#82B1FF","#E040FB","#00E5FF"].map((t,e)=>{const n=function(t,e={}){if("string"!=typeof t||Kq.test(t)||!Qq.test(t))throw new TypeError("Expected a valid hex string");let n=1;8===(t=t.replace(/^#/,"")).length&&(n=Number.parseInt(t.slice(6,8),16)/255,t=t.slice(0,6)),4===t.length&&(n=Number.parseInt(t.slice(3,4).repeat(2),16)/255,t=t.slice(0,3)),3===t.length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]);const i=Number.parseInt(t,16),r=i>>16,s=i>>8&255,o=255&i,a="number"==typeof e.alpha?e.alpha:n;return"array"===e.format?[r,s,o,a]:"css"===e.format?`rgb(${r} ${s} ${o}${1===a?"":` / ${Number((100*a).toFixed(2))}%`})`:{red:r,green:s,blue:o,alpha:a}}(t,{format:"array"});return n[3]=255,{color:t,rgba:n,rank:e}});let Jq=class extends z${constructor(){super(...arguments),this.forcedUnassignment=new P,this.forcedUnassignment$=this.forcedUnassignment.asObservable(),this.colorAssignments$=this.state$.pipe(FU("colorAssignments"),Rd()),this.colorAssignmentsList$=this.state$.pipe(FU("colorAssignmentsList"),Rd())}getColor(t){const{colorAssignments:e}=this.snapshot;return e[t]}assignColor(t,e=!1){let{colorAssignments:n,colorAssignmentsList:i,colorsAvailable:r}=this.snapshot;e&&(r=this.snapshot.colorPalette.concat(),i=[],n={});let s=n[t];return s||(r.length>0?s=r[0]:(s=i[i.length-1].color,i=i.slice(0,-1),this.forcedUnassignment.next()),r=r.filter(t=>t.color!==s.color),i=[{color:s,key:t}].concat(i),n=i.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:r,colorAssignments:n,colorAssignmentsList:i})),s}unassignColor(t){let{colorAssignments:e,colorAssignmentsList:n,colorsAvailable:i}=this.snapshot;const r=e[t];r&&(i=[r].concat(i),n=n.filter(t=>t.color.color!==r.color),e=n.reduce((t,e,n)=>(t[e.key]=Object.assign(Object.assign({},e.color),{rank:n}),t),{}),this.ctx.patchState({colorsAvailable:i,colorAssignments:e,colorAssignmentsList:n}))}};function tX(t,e){return n=>n.lift(new eX(t,e))}Jq.\u0275fac=function(){let t;return function(e){return(t||(t=ti(Jq)))(e||Jq)}}(),Jq.\u0275prov=xt({token:Jq,factory:Jq.\u0275fac}),sw([L$(),ow(0,j$("key")),ow(1,j$("doReset"))],Jq.prototype,"assignColor",null),sw([L$(),ow(0,j$("key"))],Jq.prototype,"unassignColor",null),Jq=sw([F$(),wV({name:"colors",defaults:{colorPalette:Zq.concat(),colorsAvailable:Zq.concat(),colorAssignments:{},colorAssignmentsList:[]}})],Jq);class eX{constructor(t,e){this.keySelector=t,this.flushes=e}call(t,e){return e.subscribe(new nX(t,this.keySelector,this.flushes))}}class nX extends ${constructor(t,e,n){super(t),this.keySelector=e,this.values=new Set,n&&this.add(G(n,new H(this)))}notifyNext(){this.values.clear()}notifyError(t){this._error(t)}_next(t){this.keySelector?this._useKeySelector(t):this._finalizeNext(t,t)}_useKeySelector(t){let e;const{destination:n}=this;try{e=this.keySelector(t)}catch(i){return void n.error(i)}this._finalizeNext(e,t)}_finalizeNext(t,e){const{values:n}=this;n.has(t)||(n.add(t),this.destination.next(e))}}const iX={sex:"Both",ageRange:[1,110],bmiRange:[13,83],tmc:[],technologies:[],ontologyTerms:["http://purl.obolibrary.org/obo/UBERON_0013702"],cellTypeTerms:["http://purl.obolibrary.org/obo/CL_0000000"]};var rX=(()=>(function(t){t.Running="running",t.Completed="completed"}(rX||(rX={})),rX))();function sX(t){return()=>t.next(rX.Completed)}function oX(t,e){return n=>n.pipe(Qd(t),$f(e),eG(1),Z())}let aX=class extends V${constructor(t){super(),this.source=t,this._tissueBlockDataQueryStatus$=new lp(1),this._aggregateDataQueryStatus$=new lp(1),this._ontologyTermOccurencesDataQueryStatus$=new lp(1),this._cellTypeTermOccurencesDataQueryStatus$=new lp(1),this._sceneDataQueryStatus$=new lp(1),this._technologyFilterQueryStatus$=new lp(1),this._providerFilterQueryStatus$=new lp(1),this.ontologyTermsFullData$=new lp(1),this.cellTypeTermsFullData$=new lp(1),this.filter$=this.state$.pipe(FU("filter")),this.tissueBlockData$=this.filter$.pipe(oX(this.tissueBlockData,sX(this._tissueBlockDataQueryStatus$))),this.aggregateData$=this.filter$.pipe(oX(this.aggregateData,sX(this._aggregateDataQueryStatus$))),this.ontologyTermOccurencesData$=this.filter$.pipe(oX(this.ontologyTermOccurencesData,sX(this._ontologyTermOccurencesDataQueryStatus$))),this.cellTypeTermOccurencesData$=this.filter$.pipe(oX(this.cellTypeTermOccurencesData,sX(this._cellTypeTermOccurencesDataQueryStatus$))),this.sceneData$=this.filter$.pipe(oX(this.sceneData,sX(this._sceneDataQueryStatus$))),this.technologyFilterData$=this.filter$.pipe(oX(this.technologyFilterData,sX(this._technologyFilterQueryStatus$))),this.providerFilterData$=this.filter$.pipe(oX(this.providerFilterData,sX(this._providerFilterQueryStatus$))),this.tissueBlockDataQueryStatus$=this._tissueBlockDataQueryStatus$.pipe(tX()),this.aggregateDataQueryStatus$=this._aggregateDataQueryStatus$.pipe(tX()),this.ontologyTermOccurencesDataQueryStatus$=this._ontologyTermOccurencesDataQueryStatus$.pipe(tX()),this.cellTypeTermOccurencesDataQueryStatus$=this._cellTypeTermOccurencesDataQueryStatus$.pipe(tX()),this.sceneDataQueryStatus$=this._sceneDataQueryStatus$.pipe(tX()),this.technologyFilterQueryStatus$=this._technologyFilterQueryStatus$.pipe(tX()),this.providerFilterQueryStatus$=this._providerFilterQueryStatus$.pipe(tX()),this.queryStatus$=T_([this.tissueBlockDataQueryStatus$,this.aggregateDataQueryStatus$,this.ontologyTermOccurencesDataQueryStatus$,this.cellTypeTermOccurencesDataQueryStatus$,this.sceneDataQueryStatus$,this.technologyFilterQueryStatus$,this.providerFilterQueryStatus$]).pipe(D(t=>function(t){return t.every(t=>t===rX.Completed)}(t)?rX.Completed:rX.Running),tX()),this._tissueBlockDataQueryStatus$.next(rX.Completed),this._aggregateDataQueryStatus$.next(rX.Completed),this._ontologyTermOccurencesDataQueryStatus$.next(rX.Completed),this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Completed),this._sceneDataQueryStatus$.next(rX.Completed),this._technologyFilterQueryStatus$.next(rX.Completed),this._providerFilterQueryStatus$.next(rX.Completed)}ngxsOnInit(){const{ontologyTermsFullData$:t,ontologyTermOccurencesData$:e,cellTypeTermsFullData$:n,cellTypeTermOccurencesData$:i,source:r,snapshot:{filter:s}}=this;s===iX?(e.pipe(Gp(1)).subscribe(t),i.pipe(Gp(1)).subscribe(n)):(r.getOntologyTermOccurences().pipe(Gp(1)).subscribe(t),r.getCellTypeTermOccurences().pipe(Gp(1)).subscribe(n))}updateFilter(t){this.patchState({filter:Object.assign(Object.assign({},this.getState().filter),t)})}tissueBlockData(t){return this._tissueBlockDataQueryStatus$.next(rX.Running),this.source.getTissueBlockResults(t)}aggregateData(t){return this._aggregateDataQueryStatus$.next(rX.Running),this.source.getAggregateResults(t)}ontologyTermOccurencesData(t){return this._ontologyTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getOntologyTermOccurences(t)}cellTypeTermOccurencesData(t){return this._cellTypeTermOccurencesDataQueryStatus$.next(rX.Running),this.source.getCellTypeTermOccurences(t)}sceneData(t){return this._sceneDataQueryStatus$.next(rX.Running),this.source.getScene(t)}technologyFilterData(){return this._technologyFilterQueryStatus$.next(rX.Running),this.source.getDatasetTechnologyNames()}providerFilterData(){return this._providerFilterQueryStatus$.next(rX.Running),this.source.getProviderNames()}};aX.\u0275fac=function(t){return new(t||aX)(Ci(mq))},aX.\u0275prov=xt({token:aX,factory:aX.\u0275fac}),sw([L$(),ow(0,j$("filter"))],aX.prototype,"updateFilter",null),sw([iB.ak],aX.prototype,"tissueBlockData",null),sw([iB.ak],aX.prototype,"aggregateData",null),sw([iB.ak],aX.prototype,"ontologyTermOccurencesData",null),sw([iB.ak],aX.prototype,"cellTypeTermOccurencesData",null),sw([iB.ak],aX.prototype,"sceneData",null),sw([iB.ak],aX.prototype,"technologyFilterData",null),sw([iB.ak],aX.prototype,"providerFilterData",null),aX=sw([F$(),wV({name:"data",defaults:{filter:iX}})],aX);const lX=[{name:"bladder",namespace:"app",url:"assets/icons/organs/ico-organs-bladder.svg"},{name:"blood",namespace:"app",url:"assets/icons/organs/ico-organs-blood.svg"},{name:"bone-marrow",namespace:"app",url:"assets/icons/organs/ico-organs-bone-marrow.svg"},{name:"brain",namespace:"app",url:"assets/icons/organs/ico-organs-brain.svg"},{name:"eye",namespace:"app",url:"assets/icons/organs/ico-organs-eye.svg"},{name:"fallopian-tube-left",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-left.svg"},{name:"fallopian-tube-right",namespace:"app",url:"assets/icons/organs/ico-organs-fallopian-tube-right.svg"},{name:"heart",namespace:"app",url:"assets/icons/organs/ico-organs-heart.svg"},{name:"kidney-left",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-left.svg"},{name:"kidney-right",namespace:"app",url:"assets/icons/organs/ico-organs-kidney-right.svg"},{name:"kidney",namespace:"app",url:"assets/icons/organs/ico-organs-kidney.svg"},{name:"knee",namespace:"app",url:"assets/icons/organs/ico-organs-knee.svg"},{name:"large-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-large-intestine.svg"},{name:"liver",namespace:"app",url:"assets/icons/organs/ico-organs-liver.svg"},{name:"lung-left",namespace:"app",url:"assets/icons/organs/ico-organs-lung-left.svg"},{name:"lung-right",namespace:"app",url:"assets/icons/organs/ico-organs-lung-right.svg"},{name:"lung",namespace:"app",url:"assets/icons/organs/ico-organs-lung.svg"},{name:"lymph-nodes",namespace:"app",url:"assets/icons/organs/ico-organs-lymph-nodes.svg"},{name:"neuron",namespace:"app",url:"assets/icons/organs/ico-organs-neuron.svg"},{name:"ovaries",namespace:"app",url:"assets/icons/organs/ico-organs-ovaries.svg"},{name:"ovary-left",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-left.svg"},{name:"ovary-right",namespace:"app",url:"assets/icons/organs/ico-organs-ovary-right.svg"},{name:"pancreas",namespace:"app",url:"assets/icons/organs/ico-organs-pancreas.svg"},{name:"pelvis-f",namespace:"app",url:"assets/icons/organs/ico-organs-pelvis-f.svg"},{name:"prostate",namespace:"app",url:"assets/icons/organs/ico-organs-prostate.svg"},{name:"skin",namespace:"app",url:"assets/icons/organs/ico-organs-skin.svg"},{name:"small-intestine",namespace:"app",url:"assets/icons/organs/ico-organs-small intestine.svg"},{name:"spleen",namespace:"app",url:"assets/icons/organs/ico-organs-spleen.svg"},{name:"stomach",namespace:"app",url:"assets/icons/organs/ico-organs-stomach.svg"},{name:"thymus",namespace:"app",url:"assets/icons/organs/ico-organs-thymus.svg"},{name:"ureter-left",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-left.svg"},{name:"ureter-right",namespace:"app",url:"assets/icons/organs/ico-organs-ureter-right.svg"},{name:"uterus",namespace:"app",url:"assets/icons/organs/ico-organs-uterus.svg"},{name:"vasculature-thick",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thick.svg"},{name:"vasculature-thin",namespace:"app",url:"assets/icons/organs/ico-organs-vasculature-thin.svg"},{name:"opacity",namespace:"app",url:"assets/icons/opacity-24px.svg"},{name:"visibility_on",namespace:"app",url:"assets/icons/visibility-on-24px.svg"},{name:"visibility_off",namespace:"app",url:"assets/icons/visibility-off-24px.svg"},{name:"expand_more",namespace:"app",url:"assets/icons/expand_more-24px.svg"},{name:"expand_less",namespace:"app",url:"assets/icons/expand_less-24px.svg"},{name:"filter",url:"assets/icons/filter.svg"}];let cX=class extends V${constructor(t,e){super(),this.registry=t;for(const{name:n,namespace:i,url:r,html:s}of lX){const t={name:n,namespace:i,url:r&&e.bypassSecurityTrustResourceUrl(r),html:s&&e.bypassSecurityTrustHtml(s)};this.registerIconImpl(t)}}registerIcon(t){return this.registerIconImpl(t)}registerIconImpl(t){if(!this.registry||!t.url&&!t.html)return!1;const e=this.registry,n=e[this.getMethodName(t)],i=this.getArguments(t);if(!n)return!1;try{return n.apply(e,i),!0}catch(r){return!1}}getMethodName({name:t,namespace:e,url:n}){const i=["addSvgIcon"];return t||i.push("Set"),n||i.push("Literal"),e&&i.push("InNamespace"),i.join("")}getArguments({name:t,namespace:e,url:n,html:i}){return[e,t,null!=n?n:i].filter(t=>!!t)}};cX.\u0275fac=function(t){return new(t||cX)(Ci(r_,8),Ci(hd))},cX.\u0275prov=xt({token:cX,factory:cX.\u0275fac}),sw([L$()],cX.prototype,"registerIcon",null),cX=sw([F$(),wV({name:"iconRegistry"})],cX);let uX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.listResults$=this.state$.pipe(FU("listResults"),Rd()),this.highlightedNodeId$=this.state$.pipe(FU("highlightedNodeId"),Rd())}setListResults(t){this.ctx.patchState({listResults:t})}selectListResult(t){this.colorAssignments.assignColor(t.tissueBlock.spatialEntityId)}deselectListResult(t){this.colorAssignments.unassignColor(t.tissueBlock.spatialEntityId)}highlightNode(t){this.ctx.patchState({highlightedNodeId:t})}unHighlightNode(){this.ctx.patchState({highlightedNodeId:void 0})}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),T_([this.dataState.tissueBlockData$,this.colorAssignments.colorAssignments$]).pipe(D(([t,e])=>{const n=[],i=[];for(const r of t){const t=e[r.spatialEntityId];t?n.push({selected:!0,color:t.color,tissueBlock:r,rank:t.rank}):i.push({selected:!1,tissueBlock:r})}return(0,_G.sortBy)(n,["rank"]).concat(i)}),$f(t=>this.setListResults(t))).subscribe()}};uX.\u0275fac=function(t){return new(t||uX)(Ci(mq),Ci(No))},uX.\u0275prov=xt({token:uX,factory:uX.\u0275fac}),sw([L$(),ow(0,j$("listResults"))],uX.prototype,"setListResults",null),uX=sw([F$(),wV({name:"listResults",defaults:{listResults:[]}})],uX);const hX=new Set(["Skin","Heart","Kidney","Spleen"]);let dX=class extends z${constructor(t,e){super(),this.dataService=t,this.injector=e,this.referenceOrgans$=this.state$.pipe(FU("referenceOrgans"),Rd()),this.selectedReferenceOrgans$=this.state$.pipe(FU("selectedReferenceOrgans"),Rd()),this.scene$=this.state$.pipe(FU("scene"),Rd()),this.highlightedId$=this.state$.pipe(FU("highlightedId"),Rd())}setSelectedReferenceOrgans(t){this.ctx.patchState({selectedReferenceOrgans:t})}setReferenceOrgans(t){this.ctx.patchState({referenceOrgans:t})}setScene(t){this.ctx.patchState({scene:t})}sceneNodeClicked({node:t,ctrlClick:e}){t.representation_of&&"http://purl.org/ccf/latest/ccf.owl#VHFSkin"!==t["@id"]&&t.entityId?this.dataState.updateFilter({ontologyTerms:[t.representation_of]}):t.entityId&&this.colorAssignments.assignColor(t["@id"],!e)}sceneNodeHovered(t){this.listResults.highlightNode(t["@id"])}sceneNodeUnhover(){this.listResults.unHighlightNode()}ngxsOnInit(){super.ngxsOnInit(),this.dataState=this.injector.get(aX),this.colorAssignments=this.injector.get(Jq),this.listResults=this.injector.get(uX),this.dataService.getReferenceOrgans().pipe(D(t=>{const e=new Set(t.map(t=>t.representation_of));return YW.filter(t=>e.has(t.id)).map(t=>Object.assign(Object.assign({},t),{disabled:!1,numResults:0}))}),Gp(1),$f(t=>{this.setReferenceOrgans(t),this.setSelectedReferenceOrgans(t.filter(t=>hX.has(t.organ)))})).subscribe(),T_([this.dataState.sceneData$,this.selectedReferenceOrgans$,this.colorAssignments.colorAssignments$,this.dataService.getReferenceOrgans(),this.listResults.highlightedNodeId$]).pipe(D(([t,e,n,i,r])=>{const s=new Set(e.map(t=>t.id)),o=new Set(i.filter(t=>s.has(t.representation_of)).map(t=>t["@id"]));return t.filter(t=>{var e,n;return(null===(n=null===(e=t.ccf_annotations)||void 0===e?void 0:e.some)||void 0===n?void 0:n.call(e,t=>s.has(t)))||t.reference_organ&&o.has(t.reference_organ)}).map(t=>t.entityId&&(Object.prototype.hasOwnProperty.call(n,t["@id"])||r===t["@id"])?Object.assign(Object.assign({},t),{color:r===t["@id"]?[30,136,229,255]:n[t["@id"]].rgba}):t)}),$f(t=>this.setScene(t))).subscribe()}};dX.\u0275fac=function(t){return new(t||dX)(Ci(mq),Ci(No))},dX.\u0275prov=xt({token:dX,factory:dX.\u0275fac}),sw([L$(),ow(0,j$("selectedReferenceOrgans"))],dX.prototype,"setSelectedReferenceOrgans",null),sw([L$(),ow(0,j$("referenceOrgans"))],dX.prototype,"setReferenceOrgans",null),sw([L$(),ow(0,j$("scene"))],dX.prototype,"setScene",null),dX=sw([F$(),wV({name:"scene",defaults:{scene:[],referenceOrgans:[],selectedReferenceOrgans:[],selectedAnatomicalStructures:[],anatomicalStructureSettings:{}}})],dX);const pX=[cq,Jq,cX,uX,aX,dX];let fX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[zq.forRoot(),_V.forRoot(pX,{developmentMode:!Pq.production}),Yq.forRoot({disabled:Pq.production})]]}),t})(),gX=(()=>{class t{constructor(t){if(t)throw new Error("The core module should only be imported once in the root module")}}return t.\u0275fac=function(e){return new(e||t)(Ci(t,12))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:mq,useExisting:Bq}],imports:[[Zv,tG.forRoot({gaToken:Pq.googleAnalyticsToken,appName:"eui"}),uq,hG.forRoot(()=>new cG({basePath:Pq.dbOptions.remoteApiEndpoint})),jq,fX,Vq],jq]}),t})();const mX=["input"],bX=function(t){return{enterDuration:t}},yX=["*"],vX=new oi("mat-checkbox-default-options",{providedIn:"root",factory:_X});function _X(){return{color:"accent",clickAction:"check-indeterminate"}}let wX=0;const xX=_X(),SX={provide:EV,useExisting:pt(()=>OX),multi:!0};class EX{}const CX=By(jy(Fy(Ly(class{constructor(t){this._elementRef=t}}))));let OX=(()=>{class t extends CX{constructor(t,e,n,i,r,s,o){super(t),this._changeDetectorRef=e,this._focusMonitor=n,this._ngZone=i,this._animationMode=s,this._options=o,this.ariaLabel="",this.ariaLabelledby=null,this._uniqueId="mat-checkbox-"+ ++wX,this.id=this._uniqueId,this.labelPosition="after",this.name=null,this.change=new Rc,this.indeterminateChange=new Rc,this._onTouched=()=>{},this._currentAnimationClass="",this._currentCheckState=0,this._controlValueAccessorChangeFn=()=>{},this._checked=!1,this._disabled=!1,this._indeterminate=!1,this._options=this._options||xX,this.color=this.defaultColor=this._options.color||xX.color,this.tabIndex=parseInt(r)||0}get inputId(){return`${this.id||this._uniqueId}-input`}get required(){return this._required}set required(t){this._required=md(t)}ngAfterViewInit(){this._focusMonitor.monitor(this._elementRef,!0).subscribe(t=>{t||Promise.resolve().then(()=>{this._onTouched(),this._changeDetectorRef.markForCheck()})}),this._syncIndeterminate(this._indeterminate)}ngAfterViewChecked(){}ngOnDestroy(){this._focusMonitor.stopMonitoring(this._elementRef)}get checked(){return this._checked}set checked(t){t!=this.checked&&(this._checked=t,this._changeDetectorRef.markForCheck())}get disabled(){return this._disabled}set disabled(t){const e=md(t);e!==this.disabled&&(this._disabled=e,this._changeDetectorRef.markForCheck())}get indeterminate(){return this._indeterminate}set indeterminate(t){const e=t!=this._indeterminate;this._indeterminate=md(t),e&&(this._transitionCheckState(this._indeterminate?3:this.checked?1:2),this.indeterminateChange.emit(this._indeterminate)),this._syncIndeterminate(this._indeterminate)}_isRippleDisabled(){return this.disableRipple||this.disabled}_onLabelTextChange(){this._changeDetectorRef.detectChanges()}writeValue(t){this.checked=!!t}registerOnChange(t){this._controlValueAccessorChangeFn=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t}_getAriaChecked(){return this.checked?"true":this.indeterminate?"mixed":"false"}_transitionCheckState(t){let e=this._currentCheckState,n=this._elementRef.nativeElement;if(e!==t&&(this._currentAnimationClass.length>0&&n.classList.remove(this._currentAnimationClass),this._currentAnimationClass=this._getAnimationClassForCheckStateTransition(e,t),this._currentCheckState=t,this._currentAnimationClass.length>0)){n.classList.add(this._currentAnimationClass);const t=this._currentAnimationClass;this._ngZone.runOutsideAngular(()=>{setTimeout(()=>{n.classList.remove(t)},1e3)})}}_emitChangeEvent(){const t=new EX;t.source=this,t.checked=this.checked,this._controlValueAccessorChangeFn(this.checked),this.change.emit(t),this._inputElement&&(this._inputElement.nativeElement.checked=this.checked)}toggle(){this.checked=!this.checked}_onInputClick(t){var e;const n=null===(e=this._options)||void 0===e?void 0:e.clickAction;t.stopPropagation(),this.disabled||"noop"===n?!this.disabled&&"noop"===n&&(this._inputElement.nativeElement.checked=this.checked,this._inputElement.nativeElement.indeterminate=this.indeterminate):(this.indeterminate&&"check"!==n&&Promise.resolve().then(()=>{this._indeterminate=!1,this.indeterminateChange.emit(this._indeterminate)}),this.toggle(),this._transitionCheckState(this._checked?1:2),this._emitChangeEvent())}focus(t,e){t?this._focusMonitor.focusVia(this._inputElement,t,e):this._inputElement.nativeElement.focus(e)}_onInteractionEvent(t){t.stopPropagation()}_getAnimationClassForCheckStateTransition(t,e){if("NoopAnimations"===this._animationMode)return"";let n="";switch(t){case 0:if(1===e)n="unchecked-checked";else{if(3!=e)return"";n="unchecked-indeterminate"}break;case 2:n=1===e?"unchecked-checked":"unchecked-indeterminate";break;case 1:n=2===e?"checked-unchecked":"checked-indeterminate";break;case 3:n=1===e?"indeterminate-checked":"indeterminate-unchecked"}return`mat-checkbox-anim-${n}`}_syncIndeterminate(t){const e=this._inputElement;e&&(e.nativeElement.indeterminate=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(tc),ea(Mg),ea(xu),ni("tabindex"),ea(Ey,8),ea(vX,8))},t.\u0275cmp=Jt({type:t,selectors:[["mat-checkbox"]],viewQuery:function(t,e){if(1&t&&(qc(mX,5),qc(Yy,5)),2&t){let t;Wc(t=Yc())&&(e._inputElement=t.first),Wc(t=Yc())&&(e.ripple=t.first)}},hostAttrs:[1,"mat-checkbox"],hostVars:12,hostBindings:function(t,e){2&t&&(il("id",e.id),Ko("tabindex",null),ja("mat-checkbox-indeterminate",e.indeterminate)("mat-checkbox-checked",e.checked)("mat-checkbox-disabled",e.disabled)("mat-checkbox-label-before","before"==e.labelPosition)("_mat-animation-noopable","NoopAnimations"===e._animationMode))},inputs:{disableRipple:"disableRipple",color:"color",tabIndex:"tabIndex",ariaLabel:["aria-label","ariaLabel"],ariaLabelledby:["aria-labelledby","ariaLabelledby"],id:"id",labelPosition:"labelPosition",name:"name",required:"required",checked:"checked",disabled:"disabled",indeterminate:"indeterminate",ariaDescribedby:["aria-describedby","ariaDescribedby"],value:"value"},outputs:{change:"change",indeterminateChange:"indeterminateChange"},exportAs:["matCheckbox"],features:[_l([SX]),jo],ngContentSelectors:yX,decls:17,vars:21,consts:[[1,"mat-checkbox-layout"],["label",""],[1,"mat-checkbox-inner-container"],["type","checkbox",1,"mat-checkbox-input","cdk-visually-hidden",3,"id","required","checked","disabled","tabIndex","change","click"],["input",""],["matRipple","",1,"mat-checkbox-ripple","mat-focus-indicator",3,"matRippleTrigger","matRippleDisabled","matRippleRadius","matRippleCentered","matRippleAnimation"],[1,"mat-ripple-element","mat-checkbox-persistent-ripple"],[1,"mat-checkbox-frame"],[1,"mat-checkbox-background"],["version","1.1","focusable","false","viewBox","0 0 24 24",0,"xml","space","preserve","aria-hidden","true",1,"mat-checkbox-checkmark"],["fill","none","stroke","white","d","M4.1,12.7 9,17.6 20.3,6.3",1,"mat-checkbox-checkmark-path"],[1,"mat-checkbox-mixedmark"],[1,"mat-checkbox-label",3,"cdkObserveContent"],["checkboxLabel",""],[2,"display","none"]],template:function(t,e){if(1&t&&(wa(),ra(0,"label",0,1),ra(2,"span",2),ra(3,"input",3,4),fa("change",function(t){return e._onInteractionEvent(t)})("click",function(t){return e._onInputClick(t)}),sa(),ra(5,"span",5),oa(6,"span",6),sa(),oa(7,"span",7),ra(8,"span",8),vn(),ra(9,"svg",9),oa(10,"path",10),sa(),Ve.lFrame.currentNamespace=null,oa(11,"span",11),sa(),sa(),ra(12,"span",12,13),fa("cdkObserveContent",function(){return e._onLabelTextChange()}),ra(14,"span",14),Za(15,"\xa0"),sa(),xa(16),sa(),sa()),2&t){const t=ta(1),n=ta(13);Ko("for",e.inputId),ws(2),ja("mat-checkbox-inner-container-no-side-margin",!n.textContent||!n.textContent.trim()),ws(1),na("id",e.inputId)("required",e.required)("checked",e.checked)("disabled",e.disabled)("tabIndex",e.tabIndex),Ko("value",e.value)("name",e.name)("aria-label",e.ariaLabel||null)("aria-labelledby",e.ariaLabelledby)("aria-checked",e._getAriaChecked())("aria-describedby",e.ariaDescribedby),ws(2),na("matRippleTrigger",t)("matRippleDisabled",e._isRippleDisabled())("matRippleRadius",20)("matRippleCentered",!0)("matRippleAnimation",Tc(19,bX,"NoopAnimations"===e._animationMode?0:150))}},directives:[Yy,ng],styles:["@keyframes mat-checkbox-fade-in-background{0%{opacity:0}50%{opacity:1}}@keyframes mat-checkbox-fade-out-background{0%,50%{opacity:1}100%{opacity:0}}@keyframes mat-checkbox-unchecked-checked-checkmark-path{0%,50%{stroke-dashoffset:22.910259}50%{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1)}100%{stroke-dashoffset:0}}@keyframes mat-checkbox-unchecked-indeterminate-mixedmark{0%,68.2%{transform:scaleX(0)}68.2%{animation-timing-function:cubic-bezier(0, 0, 0, 1)}100%{transform:scaleX(1)}}@keyframes mat-checkbox-checked-unchecked-checkmark-path{from{animation-timing-function:cubic-bezier(0.4, 0, 1, 1);stroke-dashoffset:0}to{stroke-dashoffset:-22.910259}}@keyframes mat-checkbox-checked-indeterminate-checkmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(45deg)}}@keyframes mat-checkbox-indeterminate-checked-checkmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:0;transform:rotate(45deg)}to{opacity:1;transform:rotate(360deg)}}@keyframes mat-checkbox-checked-indeterminate-mixedmark{from{animation-timing-function:cubic-bezier(0, 0, 0.2, 0.1);opacity:0;transform:rotate(-45deg)}to{opacity:1;transform:rotate(0deg)}}@keyframes mat-checkbox-indeterminate-checked-mixedmark{from{animation-timing-function:cubic-bezier(0.14, 0, 0, 1);opacity:1;transform:rotate(0deg)}to{opacity:0;transform:rotate(315deg)}}@keyframes mat-checkbox-indeterminate-unchecked-mixedmark{0%{animation-timing-function:linear;opacity:1;transform:scaleX(1)}32.8%,100%{opacity:0;transform:scaleX(0)}}.mat-checkbox-background,.mat-checkbox-frame{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:2px;box-sizing:border-box;pointer-events:none}.mat-checkbox{display:inline-block;transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);cursor:pointer;-webkit-tap-highlight-color:transparent}._mat-animation-noopable.mat-checkbox{transition:none;animation:none}.mat-checkbox .mat-ripple-element:not(.mat-checkbox-persistent-ripple){opacity:.16}.mat-checkbox .mat-checkbox-ripple{position:absolute;left:calc(50% - 20px);top:calc(50% - 20px);height:40px;width:40px;z-index:1;pointer-events:none}.cdk-high-contrast-active .mat-checkbox.cdk-keyboard-focused .mat-checkbox-ripple{outline:solid 3px}.mat-checkbox-layout{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:inherit;align-items:baseline;vertical-align:middle;display:inline-flex;white-space:nowrap}.mat-checkbox-label{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.mat-checkbox-inner-container{display:inline-block;height:16px;line-height:0;margin:auto;margin-right:8px;order:0;position:relative;vertical-align:middle;white-space:nowrap;width:16px;flex-shrink:0}[dir=rtl] .mat-checkbox-inner-container{margin-left:8px;margin-right:auto}.mat-checkbox-inner-container-no-side-margin{margin-left:0;margin-right:0}.mat-checkbox-frame{background-color:transparent;transition:border-color 90ms cubic-bezier(0, 0, 0.2, 0.1);border-width:2px;border-style:solid}._mat-animation-noopable .mat-checkbox-frame{transition:none}.mat-checkbox-background{align-items:center;display:inline-flex;justify-content:center;transition:background-color 90ms cubic-bezier(0, 0, 0.2, 0.1),opacity 90ms cubic-bezier(0, 0, 0.2, 0.1);-webkit-print-color-adjust:exact;color-adjust:exact}._mat-animation-noopable .mat-checkbox-background{transition:none}.cdk-high-contrast-active .mat-checkbox .mat-checkbox-background{background:none}.mat-checkbox-persistent-ripple{display:block;width:100%;height:100%;transform:none}.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:.04}.mat-checkbox.cdk-keyboard-focused .mat-checkbox-persistent-ripple{opacity:.12}.mat-checkbox-persistent-ripple,.mat-checkbox.mat-checkbox-disabled .mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{opacity:0}@media(hover: none){.mat-checkbox-inner-container:hover .mat-checkbox-persistent-ripple{display:none}}.mat-checkbox-checkmark{top:0;left:0;right:0;bottom:0;position:absolute;width:100%}.mat-checkbox-checkmark-path{stroke-dashoffset:22.910259;stroke-dasharray:22.910259;stroke-width:2.1333333333px}.cdk-high-contrast-black-on-white .mat-checkbox-checkmark-path{stroke:#000 !important}.mat-checkbox-mixedmark{width:calc(100% - 6px);height:2px;opacity:0;transform:scaleX(0) rotate(0deg);border-radius:2px}.cdk-high-contrast-active .mat-checkbox-mixedmark{height:0;border-top:solid 2px;margin-top:2px}.mat-checkbox-label-before .mat-checkbox-inner-container{order:1;margin-left:8px;margin-right:auto}[dir=rtl] .mat-checkbox-label-before .mat-checkbox-inner-container{margin-left:auto;margin-right:8px}.mat-checkbox-checked .mat-checkbox-checkmark{opacity:1}.mat-checkbox-checked .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-checked .mat-checkbox-mixedmark{transform:scaleX(1) rotate(-45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark{opacity:0;transform:rotate(45deg)}.mat-checkbox-indeterminate .mat-checkbox-checkmark-path{stroke-dashoffset:0}.mat-checkbox-indeterminate .mat-checkbox-mixedmark{opacity:1;transform:scaleX(1) rotate(0deg)}.mat-checkbox-unchecked .mat-checkbox-background{background-color:transparent}.mat-checkbox-disabled{cursor:default}.cdk-high-contrast-active .mat-checkbox-disabled{opacity:.5}.mat-checkbox-anim-unchecked-checked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-checked .mat-checkbox-checkmark-path{animation:180ms linear 0ms mat-checkbox-unchecked-checked-checkmark-path}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-in-background}.mat-checkbox-anim-unchecked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-unchecked-indeterminate-mixedmark}.mat-checkbox-anim-checked-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-checked-unchecked .mat-checkbox-checkmark-path{animation:90ms linear 0ms mat-checkbox-checked-unchecked-checkmark-path}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-checkmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-checkmark}.mat-checkbox-anim-checked-indeterminate .mat-checkbox-mixedmark{animation:90ms linear 0ms mat-checkbox-checked-indeterminate-mixedmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-checkmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-checkmark}.mat-checkbox-anim-indeterminate-checked .mat-checkbox-mixedmark{animation:500ms linear 0ms mat-checkbox-indeterminate-checked-mixedmark}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-background{animation:180ms linear 0ms mat-checkbox-fade-out-background}.mat-checkbox-anim-indeterminate-unchecked .mat-checkbox-mixedmark{animation:300ms linear 0ms mat-checkbox-indeterminate-unchecked-mixedmark}.mat-checkbox-input{bottom:0;left:50%}\n"],encapsulation:2,changeDetection:0}),t})(),TX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})(),kX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ky,Ny,ig,TX],Ny,TX]}),t})(),AX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX]]}),t})();const PX=["trigger"],MX=["panel"];function IX(t,e){if(1&t&&(ra(0,"span",8),Za(1),sa()),2&t){const t=va();ws(1),Ja(t.placeholder)}}function DX(t,e){if(1&t&&(ra(0,"span",12),Za(1),sa()),2&t){const t=va(2);ws(1),Ja(t.triggerValue)}}function RX(t,e){1&t&&xa(0,0,["*ngSwitchCase","true"])}function NX(t,e){1&t&&(ra(0,"span",9),Jo(1,DX,2,1,"span",10),Jo(2,RX,1,0,"ng-content",11),sa()),2&t&&(na("ngSwitch",!!va().customTrigger),ws(2),na("ngSwitchCase",!0))}function LX(t,e){if(1&t){const t=ua();ra(0,"div",13),ra(1,"div",14,15),fa("@transformPanel.done",function(e){return $e(t),va()._panelDoneAnimatingStream.next(e.toState)})("keydown",function(e){return $e(t),va()._handleKeydown(e)}),xa(3,1),sa(),sa()}if(2&t){const t=va();na("@transformPanelWrap",void 0),ws(1),nl("mat-select-panel ",t._getPanelTheme(),""),La("transform-origin",t._transformOrigin)("font-size",t._triggerFontSize,"px"),na("ngClass",t.panelClass)("@transformPanel",t.multiple?"showing-multiple":"showing"),Ko("id",t.id+"-panel")("aria-multiselectable",t.multiple)("aria-label",t.ariaLabel||null)("aria-labelledby",t._getPanelAriaLabelledby())}}const jX=[[["mat-select-trigger"]],"*"],FX=["mat-select-trigger","*"],BX={transformPanelWrap:Vg("transformPanelWrap",[Wg("* => void",Xg("@transformPanel",[qg()],{optional:!0}))]),transformPanel:Vg("transformPanel",[$g("void",Hg({transform:"scaleY(0.8)",minWidth:"100%",opacity:0})),$g("showing",Hg({opacity:1,minWidth:"calc(100% + 32px)",transform:"scaleY(1)"})),$g("showing-multiple",Hg({opacity:1,minWidth:"calc(100% + 64px)",transform:"scaleY(1)"})),Wg("void => *",zg("120ms cubic-bezier(0, 0, 0.2, 1)")),Wg("* => void",zg("100ms 25ms linear",Hg({opacity:0})))])};let VX=0;const zX=new oi("mat-select-scroll-strategy"),UX=new oi("MAT_SELECT_CONFIG"),HX={provide:zX,deps:[kf],useFactory:function(t){return()=>t.scrollStrategies.reposition()}};class $X{constructor(t,e){this.source=t,this.value=e}}const GX=Fy(By(Ly(Vy(class{constructor(t,e,n,i,r){this._elementRef=t,this._defaultErrorStateMatcher=e,this._parentForm=n,this._parentFormGroup=i,this.ngControl=r}})))),WX=new oi("MatSelectTrigger");let qX=(()=>{class t extends GX{constructor(t,e,n,i,r,s,o,a,l,c,u,h,d,p){var f,g,m;super(r,i,o,a,c),this._viewportRuler=t,this._changeDetectorRef=e,this._ngZone=n,this._dir=s,this._parentFormField=l,this._liveAnnouncer=d,this._defaultOptions=p,this._panelOpen=!1,this._compareWith=(t,e)=>t===e,this._uid="mat-select-"+VX++,this._triggerAriaLabelledBy=null,this._destroy=new P,this._onChange=()=>{},this._onTouched=()=>{},this._valueId="mat-select-value-"+VX++,this._panelDoneAnimatingStream=new P,this._overlayPanelClass=(null===(f=this._defaultOptions)||void 0===f?void 0:f.overlayPanelClass)||"",this._focused=!1,this.controlType="mat-select",this._required=!1,this._multiple=!1,this._disableOptionCentering=null!==(m=null===(g=this._defaultOptions)||void 0===g?void 0:g.disableOptionCentering)&&void 0!==m&&m,this.ariaLabel="",this.optionSelectionChanges=Mz(()=>{const t=this.options;return t?t.changes.pipe(Kd(t),Qd(()=>Q(...t.map(t=>t.onSelectionChange)))):this._ngZone.onStable.pipe(Gp(1),Qd(()=>this.optionSelectionChanges))}),this.openedChange=new Rc,this._openedStream=this.openedChange.pipe(Hd(t=>t),D(()=>{})),this._closedStream=this.openedChange.pipe(Hd(t=>!t),D(()=>{})),this.selectionChange=new Rc,this.valueChange=new Rc,this.ngControl&&(this.ngControl.valueAccessor=this),null!=(null==p?void 0:p.typeaheadDebounceInterval)&&(this._typeaheadDebounceInterval=p.typeaheadDebounceInterval),this._scrollStrategyFactory=h,this._scrollStrategy=this._scrollStrategyFactory(),this.tabIndex=parseInt(u)||0,this.id=this.id}get focused(){return this._focused||this._panelOpen}get placeholder(){return this._placeholder}set placeholder(t){this._placeholder=t,this.stateChanges.next()}get required(){return this._required}set required(t){this._required=md(t),this.stateChanges.next()}get multiple(){return this._multiple}set multiple(t){this._multiple=md(t)}get disableOptionCentering(){return this._disableOptionCentering}set disableOptionCentering(t){this._disableOptionCentering=md(t)}get compareWith(){return this._compareWith}set compareWith(t){this._compareWith=t,this._selectionModel&&this._initializeSelection()}get value(){return this._value}set value(t){(t!==this._value||this._multiple&&Array.isArray(t))&&(this.options&&this._setSelectionByValue(t),this._value=t)}get typeaheadDebounceInterval(){return this._typeaheadDebounceInterval}set typeaheadDebounceInterval(t){this._typeaheadDebounceInterval=bd(t)}get id(){return this._id}set id(t){this._id=t||this._uid,this.stateChanges.next()}ngOnInit(){this._selectionModel=new kp(this.multiple),this.stateChanges.next(),this._panelDoneAnimatingStream.pipe(Rd(),Wd(this._destroy)).subscribe(()=>this._panelDoneAnimating(this.panelOpen))}ngAfterContentInit(){this._initKeyManager(),this._selectionModel.changed.pipe(Wd(this._destroy)).subscribe(t=>{t.added.forEach(t=>t.select()),t.removed.forEach(t=>t.deselect())}),this.options.changes.pipe(Kd(null),Wd(this._destroy)).subscribe(()=>{this._resetOptions(),this._initializeSelection()})}ngDoCheck(){const t=this._getTriggerAriaLabelledby();if(t!==this._triggerAriaLabelledBy){const e=this._elementRef.nativeElement;this._triggerAriaLabelledBy=t,t?e.setAttribute("aria-labelledby",t):e.removeAttribute("aria-labelledby")}this.ngControl&&this.updateErrorState()}ngOnChanges(t){t.disabled&&this.stateChanges.next(),t.typeaheadDebounceInterval&&this._keyManager&&this._keyManager.withTypeAhead(this._typeaheadDebounceInterval)}ngOnDestroy(){this._destroy.next(),this._destroy.complete(),this.stateChanges.complete()}toggle(){this.panelOpen?this.close():this.open()}open(){this._canOpen()&&(this._panelOpen=!0,this._keyManager.withHorizontalOrientation(null),this._highlightCorrectOption(),this._changeDetectorRef.markForCheck())}close(){this._panelOpen&&(this._panelOpen=!1,this._keyManager.withHorizontalOrientation(this._isRtl()?"rtl":"ltr"),this._changeDetectorRef.markForCheck(),this._onTouched())}writeValue(t){this.value=t}registerOnChange(t){this._onChange=t}registerOnTouched(t){this._onTouched=t}setDisabledState(t){this.disabled=t,this._changeDetectorRef.markForCheck(),this.stateChanges.next()}get panelOpen(){return this._panelOpen}get selected(){return this.multiple?this._selectionModel.selected:this._selectionModel.selected[0]}get triggerValue(){if(this.empty)return"";if(this._multiple){const t=this._selectionModel.selected.map(t=>t.viewValue);return this._isRtl()&&t.reverse(),t.join(", ")}return this._selectionModel.selected[0].viewValue}_isRtl(){return!!this._dir&&"rtl"===this._dir.value}_handleKeydown(t){this.disabled||(this.panelOpen?this._handleOpenKeydown(t):this._handleClosedKeydown(t))}_handleClosedKeydown(t){const e=t.keyCode,n=40===e||38===e||37===e||39===e,i=13===e||32===e,r=this._keyManager;if(!r.isTyping()&&i&&!Qp(t)||(this.multiple||t.altKey)&&n)t.preventDefault(),this.open();else if(!this.multiple){const e=this.selected;r.onKeydown(t);const n=this.selected;n&&e!==n&&this._liveAnnouncer.announce(n.viewValue,1e4)}}_handleOpenKeydown(t){const e=this._keyManager,n=t.keyCode,i=40===n||38===n,r=e.isTyping();if(i&&t.altKey)t.preventDefault(),this.close();else if(r||13!==n&&32!==n||!e.activeItem||Qp(t))if(!r&&this._multiple&&65===n&&t.ctrlKey){t.preventDefault();const e=this.options.some(t=>!t.disabled&&!t.selected);this.options.forEach(t=>{t.disabled||(e?t.select():t.deselect())})}else{const n=e.activeItemIndex;e.onKeydown(t),this._multiple&&i&&t.shiftKey&&e.activeItem&&e.activeItemIndex!==n&&e.activeItem._selectViaInteraction()}else t.preventDefault(),e.activeItem._selectViaInteraction()}_onFocus(){this.disabled||(this._focused=!0,this.stateChanges.next())}_onBlur(){this._focused=!1,!this.disabled&&!this.panelOpen&&(this._onTouched(),this._changeDetectorRef.markForCheck(),this.stateChanges.next())}_onAttached(){this._overlayDir.positionChange.pipe(Gp(1)).subscribe(()=>{this._changeDetectorRef.detectChanges(),this._positioningSettled()})}_getPanelTheme(){return this._parentFormField?`mat-${this._parentFormField.color}`:""}get empty(){return!this._selectionModel||this._selectionModel.isEmpty()}_initializeSelection(){Promise.resolve().then(()=>{this._setSelectionByValue(this.ngControl?this.ngControl.value:this._value),this.stateChanges.next()})}_setSelectionByValue(t){if(this._selectionModel.selected.forEach(t=>t.setInactiveStyles()),this._selectionModel.clear(),this.multiple&&t)Array.isArray(t),t.forEach(t=>this._selectValue(t)),this._sortValues();else{const e=this._selectValue(t);e?this._keyManager.updateActiveItem(e):this.panelOpen||this._keyManager.updateActiveItem(-1)}this._changeDetectorRef.markForCheck()}_selectValue(t){const e=this.options.find(e=>{if(this._selectionModel.isSelected(e))return!1;try{return null!=e.value&&this._compareWith(e.value,t)}catch(n){return!1}});return e&&this._selectionModel.select(e),e}_initKeyManager(){this._keyManager=new fg(this.options).withTypeAhead(this._typeaheadDebounceInterval).withVerticalOrientation().withHorizontalOrientation(this._isRtl()?"rtl":"ltr").withHomeAndEnd().withAllowedModifierKeys(["shiftKey"]),this._keyManager.tabOut.pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction(),this.focus(),this.close())}),this._keyManager.change.pipe(Wd(this._destroy)).subscribe(()=>{this._panelOpen&&this.panel?this._scrollOptionIntoView(this._keyManager.activeItemIndex||0):!this._panelOpen&&!this.multiple&&this._keyManager.activeItem&&this._keyManager.activeItem._selectViaInteraction()})}_resetOptions(){const t=Q(this.options.changes,this._destroy);this.optionSelectionChanges.pipe(Wd(t)).subscribe(t=>{this._onSelect(t.source,t.isUserInput),t.isUserInput&&!this.multiple&&this._panelOpen&&(this.close(),this.focus())}),Q(...this.options.map(t=>t._stateChanges)).pipe(Wd(t)).subscribe(()=>{this._changeDetectorRef.markForCheck(),this.stateChanges.next()})}_onSelect(t,e){const n=this._selectionModel.isSelected(t);null!=t.value||this._multiple?(n!==t.selected&&(t.selected?this._selectionModel.select(t):this._selectionModel.deselect(t)),e&&this._keyManager.setActiveItem(t),this.multiple&&(this._sortValues(),e&&this.focus())):(t.deselect(),this._selectionModel.clear(),null!=this.value&&this._propagateChanges(t.value)),n!==this._selectionModel.isSelected(t)&&this._propagateChanges(),this.stateChanges.next()}_sortValues(){if(this.multiple){const t=this.options.toArray();this._selectionModel.sort((e,n)=>this.sortComparator?this.sortComparator(e,n,t):t.indexOf(e)-t.indexOf(n)),this.stateChanges.next()}}_propagateChanges(t){let e=null;e=this.multiple?this.selected.map(t=>t.value):this.selected?this.selected.value:t,this._value=e,this.valueChange.emit(e),this._onChange(e),this.selectionChange.emit(this._getChangeEvent(e)),this._changeDetectorRef.markForCheck()}_highlightCorrectOption(){this._keyManager&&(this.empty?this._keyManager.setFirstItemActive():this._keyManager.setActiveItem(this._selectionModel.selected[0]))}_canOpen(){var t;return!this._panelOpen&&!this.disabled&&(null===(t=this.options)||void 0===t?void 0:t.length)>0}focus(t){this._elementRef.nativeElement.focus(t)}_getPanelAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();return this.ariaLabelledby?(e?e+" ":"")+this.ariaLabelledby:e}_getAriaActiveDescendant(){return this.panelOpen&&this._keyManager&&this._keyManager.activeItem?this._keyManager.activeItem.id:null}_getTriggerAriaLabelledby(){var t;if(this.ariaLabel)return null;const e=null===(t=this._parentFormField)||void 0===t?void 0:t.getLabelId();let n=(e?e+" ":"")+this._valueId;return this.ariaLabelledby&&(n+=" "+this.ariaLabelledby),n}_panelDoneAnimating(t){this.openedChange.emit(t)}setDescribedByIds(t){this._ariaDescribedby=t.join(" ")}onContainerClick(){this.focus(),this.open()}get shouldLabelFloat(){return this._panelOpen||!this.empty||this._focused&&!!this._placeholder}}return t.\u0275fac=function(e){return new(e||t)(ea(Mp),ea(tc),ea(xu),ea(zy),ea(kl),ea(Op,8),ea(_z,8),ea(Tz,8),ea(aU,8),ea(WV,10),ni("tabindex"),ea(zX),ea(kg),ea(UX,8))},t.\u0275dir=se({type:t,viewQuery:function(t,e){if(1&t&&(qc(PX,5),qc(MX,5),qc(If,5)),2&t){let t;Wc(t=Yc())&&(e.trigger=t.first),Wc(t=Yc())&&(e.panel=t.first),Wc(t=Yc())&&(e._overlayDir=t.first)}},inputs:{ariaLabel:["aria-label","ariaLabel"],id:"id",placeholder:"placeholder",required:"required",multiple:"multiple",disableOptionCentering:"disableOptionCentering",compareWith:"compareWith",value:"value",typeaheadDebounceInterval:"typeaheadDebounceInterval",panelClass:"panelClass",ariaLabelledby:["aria-labelledby","ariaLabelledby"],errorStateMatcher:"errorStateMatcher",sortComparator:"sortComparator"},outputs:{openedChange:"openedChange",_openedStream:"opened",_closedStream:"closed",selectionChange:"selectionChange",valueChange:"valueChange"},features:[jo,ye]}),t})(),XX=(()=>{class t extends qX{constructor(){super(...arguments),this._scrollTop=0,this._triggerFontSize=0,this._transformOrigin="top",this._offsetY=0,this._positions=[{originX:"start",originY:"top",overlayX:"start",overlayY:"top"},{originX:"start",originY:"bottom",overlayX:"start",overlayY:"bottom"}]}_calculateOverlayScroll(t,e,n){const i=this._getItemHeight();return Math.min(Math.max(0,i*t-e+i/2),n)}ngOnInit(){super.ngOnInit(),this._viewportRuler.change().pipe(Wd(this._destroy)).subscribe(()=>{this.panelOpen&&(this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._changeDetectorRef.markForCheck())})}open(){super._canOpen()&&(super.open(),this._triggerRect=this.trigger.nativeElement.getBoundingClientRect(),this._triggerFontSize=parseInt(getComputedStyle(this.trigger.nativeElement).fontSize||"0"),this._calculateOverlayPosition(),this._ngZone.onStable.pipe(Gp(1)).subscribe(()=>{this._triggerFontSize&&this._overlayDir.overlayRef&&this._overlayDir.overlayRef.overlayElement&&(this._overlayDir.overlayRef.overlayElement.style.fontSize=`${this._triggerFontSize}px`)}))}_scrollOptionIntoView(t){const e=lv(t,this.options,this.optionGroups),n=this._getItemHeight();this.panel.nativeElement.scrollTop=0===t&&1===e?0:cv((t+e)*n,n,this.panel.nativeElement.scrollTop,256)}_positioningSettled(){this._calculateOverlayOffsetX(),this.panel.nativeElement.scrollTop=this._scrollTop}_panelDoneAnimating(t){this.panelOpen?this._scrollTop=0:(this._overlayDir.offsetX=0,this._changeDetectorRef.markForCheck()),super._panelDoneAnimating(t)}_getChangeEvent(t){return new $X(this,t)}_calculateOverlayOffsetX(){const t=this._overlayDir.overlayRef.overlayElement.getBoundingClientRect(),e=this._viewportRuler.getViewportSize(),n=this._isRtl(),i=this.multiple?56:32;let r;if(this.multiple)r=40;else if(this.disableOptionCentering)r=16;else{let t=this._selectionModel.selected[0]||this.options.first;r=t&&t.group?32:16}n||(r*=-1);const s=0-(t.left+r-(n?i:0)),o=t.right+r-e.width+(n?0:i);s>0?r+=s+8:o>0&&(r-=o+8),this._overlayDir.offsetX=Math.round(r),this._overlayDir.overlayRef.updatePosition()}_calculateOverlayOffsetY(t,e,n){const i=this._getItemHeight(),r=(i-this._triggerRect.height)/2,s=Math.floor(256/i);let o;return this.disableOptionCentering?0:(o=0===this._scrollTop?t*i:this._scrollTop===n?(t-(this._getItemCount()-s))*i+(i-(this._getItemCount()*i-256)%i):e-i/2,Math.round(-1*o-r))}_checkOverlayWithinViewport(t){const e=this._getItemHeight(),n=this._viewportRuler.getViewportSize(),i=this._triggerRect.top-8,r=n.height-this._triggerRect.bottom-8,s=Math.abs(this._offsetY),o=Math.min(this._getItemCount()*e,256)-s-this._triggerRect.height;o>r?this._adjustPanelUp(o,r):s>i?this._adjustPanelDown(s,i,t):this._transformOrigin=this._getOriginBasedOnOption()}_adjustPanelUp(t,e){const n=Math.round(t-e);this._scrollTop-=n,this._offsetY-=n,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop<=0&&(this._scrollTop=0,this._offsetY=0,this._transformOrigin="50% bottom 0px")}_adjustPanelDown(t,e,n){const i=Math.round(t-e);if(this._scrollTop+=i,this._offsetY+=i,this._transformOrigin=this._getOriginBasedOnOption(),this._scrollTop>=n)return this._scrollTop=n,this._offsetY=0,void(this._transformOrigin="50% top 0px")}_calculateOverlayPosition(){const t=this._getItemHeight(),e=this._getItemCount(),n=Math.min(e*t,256),i=e*t-n;let r;r=this.empty?0:Math.max(this.options.toArray().indexOf(this._selectionModel.selected[0]),0),r+=lv(r,this.options,this.optionGroups);const s=n/2;this._scrollTop=this._calculateOverlayScroll(r,s,i),this._offsetY=this._calculateOverlayOffsetY(r,s,i),this._checkOverlayWithinViewport(i)}_getOriginBasedOnOption(){const t=this._getItemHeight(),e=(t-this._triggerRect.height)/2;return`50% ${Math.abs(this._offsetY)-e+t/2}px 0px`}_getItemHeight(){return 3*this._triggerFontSize}_getItemCount(){return this.options.length+this.optionGroups.length}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-select"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,WX,5),Xc(n,av,5),Xc(n,iv,5)),2&t){let t;Wc(t=Yc())&&(e.customTrigger=t.first),Wc(t=Yc())&&(e.options=t),Wc(t=Yc())&&(e.optionGroups=t)}},hostAttrs:["role","combobox","aria-autocomplete","none","aria-haspopup","true",1,"mat-select"],hostVars:20,hostBindings:function(t,e){1&t&&fa("keydown",function(t){return e._handleKeydown(t)})("focus",function(){return e._onFocus()})("blur",function(){return e._onBlur()}),2&t&&(Ko("id",e.id)("tabindex",e.tabIndex)("aria-controls",e.panelOpen?e.id+"-panel":null)("aria-expanded",e.panelOpen)("aria-label",e.ariaLabel||null)("aria-required",e.required.toString())("aria-disabled",e.disabled.toString())("aria-invalid",e.errorState)("aria-describedby",e._ariaDescribedby||null)("aria-activedescendant",e._getAriaActiveDescendant()),ja("mat-select-disabled",e.disabled)("mat-select-invalid",e.errorState)("mat-select-required",e.required)("mat-select-empty",e.empty)("mat-select-multiple",e.multiple))},inputs:{disabled:"disabled",disableRipple:"disableRipple",tabIndex:"tabIndex"},exportAs:["matSelect"],features:[_l([{provide:Qz,useExisting:t},{provide:Jy,useExisting:t}]),jo],ngContentSelectors:FX,decls:9,vars:12,consts:[["cdk-overlay-origin","",1,"mat-select-trigger",3,"click"],["origin","cdkOverlayOrigin","trigger",""],[1,"mat-select-value",3,"ngSwitch"],["class","mat-select-placeholder mat-select-min-line",4,"ngSwitchCase"],["class","mat-select-value-text",3,"ngSwitch",4,"ngSwitchCase"],[1,"mat-select-arrow-wrapper"],[1,"mat-select-arrow"],["cdk-connected-overlay","","cdkConnectedOverlayLockPosition","","cdkConnectedOverlayHasBackdrop","","cdkConnectedOverlayBackdropClass","cdk-overlay-transparent-backdrop",3,"cdkConnectedOverlayPanelClass","cdkConnectedOverlayScrollStrategy","cdkConnectedOverlayOrigin","cdkConnectedOverlayOpen","cdkConnectedOverlayPositions","cdkConnectedOverlayMinWidth","cdkConnectedOverlayOffsetY","backdropClick","attach","detach"],[1,"mat-select-placeholder","mat-select-min-line"],[1,"mat-select-value-text",3,"ngSwitch"],["class","mat-select-min-line",4,"ngSwitchDefault"],[4,"ngSwitchCase"],[1,"mat-select-min-line"],[1,"mat-select-panel-wrap"],["role","listbox","tabindex","-1",3,"ngClass","keydown"],["panel",""]],template:function(t,e){if(1&t&&(wa(jX),ra(0,"div",0,1),fa("click",function(){return e.toggle()}),ra(3,"div",2),Jo(4,IX,2,1,"span",3),Jo(5,NX,3,2,"span",4),sa(),ra(6,"div",5),oa(7,"div",6),sa(),sa(),Jo(8,LX,4,14,"ng-template",7),fa("backdropClick",function(){return e.close()})("attach",function(){return e._onAttached()})("detach",function(){return e.close()})),2&t){const t=ta(1);Ko("aria-owns",e.panelOpen?e.id+"-panel":null),ws(3),na("ngSwitch",e.empty),Ko("id",e._valueId),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1),ws(3),na("cdkConnectedOverlayPanelClass",e._overlayPanelClass)("cdkConnectedOverlayScrollStrategy",e._scrollStrategy)("cdkConnectedOverlayOrigin",t)("cdkConnectedOverlayOpen",e.panelOpen)("cdkConnectedOverlayPositions",e._positions)("cdkConnectedOverlayMinWidth",null==e._triggerRect?null:e._triggerRect.width)("cdkConnectedOverlayOffsetY",e._offsetY)}},directives:[Mf,Eh,Ch,If,Oh,mh],styles:['.mat-select{display:inline-block;width:100%;outline:none}.mat-select-trigger{display:inline-table;cursor:pointer;position:relative;box-sizing:border-box}.mat-select-disabled .mat-select-trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mat-select-value{display:table-cell;max-width:0;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mat-select-value-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mat-select-arrow-wrapper{display:table-cell;vertical-align:middle}.mat-form-field-appearance-fill .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:translateY(-25%)}.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(-50%)}.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:transform 400ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable.mat-form-field-appearance-standard .mat-select.mat-select-empty .mat-select-arrow-wrapper{transition:none}.mat-select-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid;margin:0 4px}.mat-select-panel-wrap{flex-basis:100%}.mat-select-panel{min-width:112px;max-width:280px;overflow:auto;-webkit-overflow-scrolling:touch;padding-top:0;padding-bottom:0;max-height:256px;min-width:100%;border-radius:4px;outline:0}.cdk-high-contrast-active .mat-select-panel{outline:solid 1px}.mat-select-panel .mat-optgroup-label,.mat-select-panel .mat-option{font-size:inherit;line-height:3em;height:3em}.mat-form-field-type-mat-select:not(.mat-form-field-disabled) .mat-form-field-flex{cursor:pointer}.mat-form-field-type-mat-select .mat-form-field-label{width:calc(100% - 18px)}.mat-select-placeholder{transition:color 400ms 133.3333333333ms cubic-bezier(0.25, 0.8, 0.25, 1)}._mat-animation-noopable .mat-select-placeholder{transition:none}.mat-form-field-hide-placeholder .mat-select-placeholder{color:transparent;-webkit-text-fill-color:transparent;transition:none;display:block}.mat-select-min-line:empty::before{content:" ";white-space:pre;width:1px;display:inline-block;opacity:0}\n'],encapsulation:2,data:{animation:[BX.transformPanelWrap,BX.transformPanel]},changeDetection:0}),t})(),YX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[HX],imports:[[Rh,Rf,uv,Ny],Ip,cU,uv,Ny]}),t})(),KX=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,cU,YX]]}),t})();var QX=n(25430),ZX=n(39053),JX=n(26202);const tY=["tooltipTemplate"],eY=["leftOuterSelectionBar"],nY=["rightOuterSelectionBar"],iY=["fullBar"],rY=["selectionBar"],sY=["minHandle"],oY=["maxHandle"],aY=["floorLabel"],lY=["ceilLabel"],cY=["minHandleLabel"],uY=["maxHandleLabel"],hY=["combinedLabel"],dY=["ticksElement"];function pY(t,e){if(1&t&&oa(0,"ng5-slider-tooltip-wrapper",31),2&t){const t=va().$implicit;na("template",va().tooltipTemplate)("tooltip",t.valueTooltip)("placement",t.valueTooltipPlacement)("content",t.value)}}function fY(t,e){1&t&&oa(0,"span",32),2&t&&na("innerHTML",va().$implicit.legend,vr)}const gY=function(t){return{"ng5-slider-selected":t}};function mY(t,e){if(1&t&&(ra(0,"span",27),oa(1,"ng5-slider-tooltip-wrapper",28),Jo(2,pY,1,4,"ng5-slider-tooltip-wrapper",29),Jo(3,fY,1,1,"span",30),sa()),2&t){const t=e.$implicit,n=va();na("ngClass",Tc(7,gY,t.selected))("ngStyle",t.style),ws(1),na("template",n.tooltipTemplate)("tooltip",t.tooltip)("placement",t.tooltipPlacement),ws(1),na("ngIf",null!=t.value),ws(1),na("ngIf",null!=t.legend)}}function bY(t,e){}function yY(t,e){1&t&&Jo(0,bY,0,0,"ng-template")}const vY=function(t,e,n){return{tooltip:t,placement:e,content:n}};function _Y(t,e){if(1&t&&(aa(0),Jo(1,yY,1,0,void 0,1),la()),2&t){const t=va();ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",kc(2,vY,t.tooltip,t.placement,t.content))}}function wY(t,e){if(1&t&&(aa(0),ra(1,"div",2),Za(2),sa(),la()),2&t){const t=va();ws(1),Ko("title",t.tooltip)("data-tooltip-placement",t.placement),ws(1),tl(" ",t.content," ")}}const xY={Min:0,Max:1};xY[xY.Min]="Min",xY[xY.Max]="Max";const SY={Low:0,High:1,Floor:2,Ceil:3,TickValue:4};SY[SY.Low]="Low",SY[SY.High]="High",SY[SY.Floor]="Floor",SY[SY.Ceil]="Ceil",SY[SY.TickValue]="TickValue";class EY{constructor(){this.floor=0,this.ceil=null,this.step=1,this.minRange=null,this.maxRange=null,this.pushRange=!1,this.minLimit=null,this.maxLimit=null,this.translate=null,this.combineLabels=null,this.getLegend=null,this.stepsArray=null,this.bindIndexForStepsArray=!1,this.draggableRange=!1,this.draggableRangeOnly=!1,this.showSelectionBar=!1,this.showSelectionBarEnd=!1,this.showSelectionBarFromValue=null,this.showOuterSelectionBars=!1,this.hidePointerLabels=!1,this.hideLimitLabels=!1,this.autoHideLimitLabels=!0,this.readOnly=!1,this.disabled=!1,this.mouseEventsInterval=50,this.touchEventsInterval=50,this.inputEventsInterval=100,this.outputEventsInterval=100,this.showTicks=!1,this.showTicksValues=!1,this.tickStep=null,this.tickValueStep=1,this.ticksArray=null,this.ticksTooltip=null,this.ticksValuesTooltip=null,this.vertical=!1,this.getSelectionBarColor=null,this.getTickColor=null,this.getPointerColor=null,this.keyboardSupport=!0,this.scale=1,this.enforceStep=!0,this.enforceRange=!0,this.noSwitching=!1,this.onlyBindHandles=!1,this.rightToLeft=!1,this.reversedControls=!1,this.boundPointerLabels=!0,this.logScale=!1,this.customValueToPosition=null,this.customPositionToValue=null,this.precisionLimit=12,this.selectionBarGradient=null,this.ariaLabel=null,this.ariaLabelledBy=null,this.ariaLabelHigh=null,this.ariaLabelledByHigh=null,this.handleDimension=null,this.barDimension=null,this.animate=!0}}class CY{}class OY{static isNullOrUndefined(t){return null==t}static linearValueToPosition(t,e,n){return(t-e)/(n-e)}static logValueToPosition(t,e,n){return((t=Math.log(t))-(e=Math.log(e)))/((n=Math.log(n))-e)}static linearPositionToValue(t,e,n){return t*(n-e)+e}static logPositionToValue(t,e,n){return e=Math.log(e),n=Math.log(n),Math.exp(t*(n-e)+e)}static findStepIndex(t,e){const n=e.map(e=>Math.abs(t-e.value));let i=0;for(let r=0;r{r.events.next(t)};return t.addEventListener(e,s,{passive:!0,capture:!1}),r.teardownCallback=()=>{t.removeEventListener(e,s,{passive:!0,capture:!1})},r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}detachEventListener(t){OY.isNullOrUndefined(t.eventsSubscription)||(t.eventsSubscription.unsubscribe(),t.eventsSubscription=null),OY.isNullOrUndefined(t.events)||(t.events.complete(),t.events=null),OY.isNullOrUndefined(t.teardownCallback)||(t.teardownCallback(),t.teardownCallback=null)}attachEventListener(t,e,n,i){const r=new AY;return r.eventName=e,r.events=new QX.xQ,r.teardownCallback=this.renderer.listen(t,e,t=>{r.events.next(t)}),r.eventsSubscription=r.events.pipe(OY.isNullOrUndefined(i)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(i,void 0,{leading:!0,trailing:!0})).subscribe(t=>{n(t)}),r}}let MY=(()=>{class t{constructor(t,e,n){this.elemRef=t,this.renderer=e,this.changeDetectionRef=n,this._position=0,this._dimension=0,this._alwaysHide=!1,this._vertical=!1,this._scale=1,this.opacity=1,this.visibility="visible",this.left="",this.bottom="",this.height="",this.width="",this.eventListeners=[],this.eventListenerHelper=new PY(this.renderer)}get position(){return this._position}get dimension(){return this._dimension}get alwaysHide(){return this._alwaysHide}get vertical(){return this._vertical}get scale(){return this._scale}setAlwaysHide(t){this._alwaysHide=t,this.visibility=t?"hidden":"visible"}hide(){this.opacity=0}show(){this.alwaysHide||(this.opacity=1)}isVisible(){return!this.alwaysHide&&0!==this.opacity}setVertical(t){this._vertical=t,this._vertical?(this.left="",this.width=""):(this.bottom="",this.height="")}setScale(t){this._scale=t}setPosition(t){this._position!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._position=t,this._vertical?this.bottom=Math.round(t)+"px":this.left=Math.round(t)+"px"}calculateDimension(){const t=this.getBoundingClientRect();this._dimension=this.vertical?(t.bottom-t.top)*this.scale:(t.right-t.left)*this.scale}setDimension(t){this._dimension!==t&&!this.isRefDestroyed()&&this.changeDetectionRef.markForCheck(),this._dimension=t,this._vertical?this.height=Math.round(t)+"px":this.width=Math.round(t)+"px"}getBoundingClientRect(){return this.elemRef.nativeElement.getBoundingClientRect()}on(t,e,n){const i=this.eventListenerHelper.attachEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}onPassive(t,e,n){const i=this.eventListenerHelper.attachPassiveEventListener(this.elemRef.nativeElement,t,e,n);this.eventListeners.push(i)}off(t){let e,n;OY.isNullOrUndefined(t)?(e=[],n=this.eventListeners):(e=this.eventListeners.filter(e=>e.eventName!==t),n=this.eventListeners.filter(e=>e.eventName===t));for(const i of n)this.eventListenerHelper.detachEventListener(i);this.eventListeners=e}isRefDestroyed(){return OY.isNullOrUndefined(this.changeDetectionRef)||this.changeDetectionRef.destroyed}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderElement",""]],hostVars:12,hostBindings:function(t,e){2&t&&La("opacity",e.opacity)("visibility",e.visibility)("left",e.left)("bottom",e.bottom)("height",e.height)("width",e.width)}}),t})(),IY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this.active=!1,this.role="",this.tabindex="",this.ariaOrientation="",this.ariaLabel="",this.ariaLabelledBy="",this.ariaValueNow="",this.ariaValueText="",this.ariaValueMin="",this.ariaValueMax=""}focus(){this.elemRef.nativeElement.focus()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderHandle",""]],hostVars:11,hostBindings:function(t,e){2&t&&(Ko("role",e.role)("tabindex",e.tabindex)("aria-orientation",e.ariaOrientation)("aria-label",e.ariaLabel)("aria-labelledby",e.ariaLabelledBy)("aria-valuenow",e.ariaValueNow)("aria-valuetext",e.ariaValueText)("aria-valuemin",e.ariaValueMin)("aria-valuemax",e.ariaValueMax),ja("ng5-slider-active",e.active))},features:[jo]}),t})(),DY=(()=>{class t extends MY{constructor(t,e,n){super(t,e,n),this._value=null}get value(){return this._value}setValue(t){let e=!1;!this.alwaysHide&&(OY.isNullOrUndefined(this.value)||this.value.length!==t.length||this.value.length>0&&0===this.dimension)&&(e=!0),this._value=t,this.elemRef.nativeElement.innerHTML=t,e&&this.calculateDimension()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(Ml),ea(tc))},t.\u0275dir=se({type:t,selectors:[["","ng5SliderLabel",""]],features:[jo]}),t})();class RY{constructor(){this.selected=!1,this.style={},this.tooltip=null,this.tooltipPlacement=null,this.value=null,this.valueTooltip=null,this.valueTooltipPlacement=null,this.legend=null}}class NY{constructor(){this.active=!1,this.value=0,this.difference=0,this.position=0,this.lowLimit=0,this.highLimit=0}}class LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue}}class jY extends LY{static compare(t,e){return!(OY.isNullOrUndefined(t)&&OY.isNullOrUndefined(e)||OY.isNullOrUndefined(t)!==OY.isNullOrUndefined(e))&&t.value===e.value&&t.highValue===e.highValue&&t.forceChange===e.forceChange}}const FY={provide:EV,useExisting:pt(()=>BY),multi:!0};let BY=(()=>{class t{constructor(t,e,n,i){this.renderer=t,this.elementRef=e,this.changeDetectionRef=n,this.zone=i,this.value=null,this.valueChange=new Rc,this.highValue=null,this.highValueChange=new Rc,this.options=new EY,this.userChangeStart=new Rc,this.userChange=new Rc,this.userChangeEnd=new Rc,this.initHasRun=!1,this.inputModelChangeSubject=new QX.xQ,this.inputModelChangeSubscription=null,this.outputModelChangeSubject=new QX.xQ,this.outputModelChangeSubscription=null,this.viewLowValue=null,this.viewHighValue=null,this.viewOptions=new EY,this.handleHalfDimension=0,this.maxHandlePosition=0,this.currentTrackingPointer=null,this.currentFocusPointer=null,this.firstKeyDown=!1,this.touchId=null,this.dragging=new NY,this.sliderElementVerticalClass=!1,this.sliderElementAnimateClass=!1,this.sliderElementDisabledAttr=null,this.barStyle={},this.minPointerStyle={},this.maxPointerStyle={},this.fullBarTransparentClass=!1,this.selectionBarDraggableClass=!1,this.ticksUnderValuesClass=!1,this.intermediateTicks=!1,this.ticks=[],this.eventListenerHelper=null,this.onMoveEventListener=null,this.onEndEventListener=null,this.resizeObserver=null,this.onTouchedCallback=null,this.onChangeCallback=null,this.eventListenerHelper=new PY(this.renderer)}set manualRefresh(t){this.unsubscribeManualRefresh(),this.manualRefreshSubscription=t.subscribe(()=>{setTimeout(()=>this.calculateViewDimensionsAndDetectChanges())})}set triggerFocus(t){this.unsubscribeTriggerFocus(),this.triggerFocusSubscription=t.subscribe(t=>{this.focusPointer(t)})}get range(){return!OY.isNullOrUndefined(this.value)&&!OY.isNullOrUndefined(this.highValue)}get showTicks(){return this.viewOptions.showTicks}ngOnInit(){this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.updateDisabledState(),this.updateVerticalState()}ngAfterViewInit(){this.applyOptions(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval),this.subscribeOutputModelChangeSubject(this.viewOptions.outputEventsInterval),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.updateVerticalState(),this.manageElementsStyle(),this.updateDisabledState(),this.calculateViewDimensions(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.initHandles(),this.manageEventsBindings(),this.subscribeResizeObserver(),this.initHasRun=!0,this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}ngOnChanges(t){OY.isNullOrUndefined(t.options)||this.onChangeOptions(),(!OY.isNullOrUndefined(t.value)||!OY.isNullOrUndefined(t.highValue))&&this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}ngOnDestroy(){this.unbindEvents(),this.unsubscribeResizeObserver(),this.unsubscribeInputModelChangeSubject(),this.unsubscribeOutputModelChangeSubject(),this.unsubscribeManualRefresh(),this.unsubscribeTriggerFocus()}writeValue(t){t instanceof Array?(this.value=t[0],this.highValue=t[1]):this.value=t,this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!1})}registerOnChange(t){this.onChangeCallback=t}registerOnTouched(t){this.onTouchedCallback=t}setDisabledState(t){this.viewOptions.disabled=t,this.updateDisabledState()}onResize(t){this.calculateViewDimensionsAndDetectChanges()}subscribeInputModelChangeSubject(t){this.inputModelChangeSubscription=this.inputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),(0,ZX.filter)(t=>!t.forceChange&&!t.internalChange),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.applyInputModelChange(t))}subscribeOutputModelChangeSubject(t){this.outputModelChangeSubscription=this.outputModelChangeSubject.pipe((0,ZX.distinctUntilChanged)(jY.compare),OY.isNullOrUndefined(t)?(0,ZX.tap)(()=>{}):(0,ZX.throttleTime)(t,void 0,{leading:!0,trailing:!0})).subscribe(t=>this.publishOutputModelChange(t))}subscribeResizeObserver(){TY.isResizeObserverAvailable()&&(this.resizeObserver=new ResizeObserver(()=>this.calculateViewDimensionsAndDetectChanges()),this.resizeObserver.observe(this.elementRef.nativeElement))}unsubscribeResizeObserver(){TY.isResizeObserverAvailable()&&null!==this.resizeObserver&&(this.resizeObserver.disconnect(),this.resizeObserver=null)}unsubscribeOnMove(){OY.isNullOrUndefined(this.onMoveEventListener)||(this.eventListenerHelper.detachEventListener(this.onMoveEventListener),this.onMoveEventListener=null)}unsubscribeOnEnd(){OY.isNullOrUndefined(this.onEndEventListener)||(this.eventListenerHelper.detachEventListener(this.onEndEventListener),this.onEndEventListener=null)}unsubscribeInputModelChangeSubject(){OY.isNullOrUndefined(this.inputModelChangeSubscription)||(this.inputModelChangeSubscription.unsubscribe(),this.inputModelChangeSubscription=null)}unsubscribeOutputModelChangeSubject(){OY.isNullOrUndefined(this.outputModelChangeSubscription)||(this.outputModelChangeSubscription.unsubscribe(),this.outputModelChangeSubscription=null)}unsubscribeManualRefresh(){OY.isNullOrUndefined(this.manualRefreshSubscription)||(this.manualRefreshSubscription.unsubscribe(),this.manualRefreshSubscription=null)}unsubscribeTriggerFocus(){OY.isNullOrUndefined(this.triggerFocusSubscription)||(this.triggerFocusSubscription.unsubscribe(),this.triggerFocusSubscription=null)}getPointerElement(t){return t===xY.Min?this.minHandleElement:t===xY.Max?this.maxHandleElement:null}getCurrentTrackingValue(){return this.currentTrackingPointer===xY.Min?this.viewLowValue:this.currentTrackingPointer===xY.Max?this.viewHighValue:null}modelValueToViewValue(t){return OY.isNullOrUndefined(t)?NaN:OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?+t:OY.findStepIndex(+t,this.viewOptions.stepsArray)}viewValueToModelValue(t){return OY.isNullOrUndefined(this.viewOptions.stepsArray)||this.viewOptions.bindIndexForStepsArray?t:this.getStepValue(t)}getStepValue(t){const e=this.viewOptions.stepsArray[t];return OY.isNullOrUndefined(e)?NaN:e.value}applyViewChange(){this.value=this.viewValueToModelValue(this.viewLowValue),this.range&&(this.highValue=this.viewValueToModelValue(this.viewHighValue)),this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,userEventInitiated:!0,forceChange:!1}),this.inputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!1,internalChange:!0})}applyInputModelChange(t){const e=this.normaliseModelValues(t),n=!LY.compare(t,e);n&&(this.value=e.value,this.highValue=e.highValue),this.viewLowValue=this.modelValueToViewValue(e.value),this.viewHighValue=this.range?this.modelValueToViewValue(e.highValue):null,this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.updateTicksScale(),this.updateAriaAttributes(),this.range&&this.updateCombinedLabel(),this.outputModelChangeSubject.next({value:e.value,highValue:e.highValue,forceChange:n,userEventInitiated:!1})}publishOutputModelChange(t){const e=()=>{this.valueChange.emit(t.value),this.range&&this.highValueChange.emit(t.highValue),OY.isNullOrUndefined(this.onChangeCallback)||this.onChangeCallback(this.range?[t.value,t.highValue]:t.value),OY.isNullOrUndefined(this.onTouchedCallback)||this.onTouchedCallback(this.range?[t.value,t.highValue]:t.value)};t.userEventInitiated?(e(),this.userChange.emit(this.getChangeContext())):setTimeout(()=>{e()})}normaliseModelValues(t){const e=new LY;if(e.value=t.value,e.highValue=t.highValue,this.viewOptions.enforceStep&&(e.value=this.roundStep(e.value),this.range&&(e.highValue=this.roundStep(e.highValue))),!OY.isNullOrUndefined(this.viewOptions.stepsArray)||!this.viewOptions.enforceRange)return e;if(e.value=kY.clampToRange(e.value,this.viewOptions.floor,this.viewOptions.ceil),this.range&&(e.highValue=kY.clampToRange(e.highValue,this.viewOptions.floor,this.viewOptions.ceil)),this.range&&t.value>t.highValue)if(this.viewOptions.noSwitching)e.value=e.highValue;else{const n=t.value;e.value=t.highValue,e.highValue=n}return e}renormaliseModelValues(){const t={value:this.value,highValue:this.highValue},e=this.normaliseModelValues(t);LY.compare(e,t)||(this.value=e.value,this.highValue=e.highValue,this.outputModelChangeSubject.next({value:this.value,highValue:this.highValue,forceChange:!0,userEventInitiated:!1}))}onChangeOptions(){if(!this.initHasRun)return;const t=this.viewOptions.inputEventsInterval,e=this.viewOptions.outputEventsInterval;this.applyOptions(),t!==this.viewOptions.inputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.inputEventsInterval)),e!==this.viewOptions.outputEventsInterval&&(this.unsubscribeInputModelChangeSubject(),this.subscribeInputModelChangeSubject(this.viewOptions.outputEventsInterval)),this.renormaliseModelValues(),this.viewLowValue=this.modelValueToViewValue(this.value),this.viewHighValue=this.range?this.modelValueToViewValue(this.highValue):null,this.resetSlider()}applyOptions(){if(this.viewOptions=new EY,Object.assign(this.viewOptions,this.options),this.viewOptions.draggableRange=this.range&&this.viewOptions.draggableRange,this.viewOptions.draggableRangeOnly=this.range&&this.viewOptions.draggableRangeOnly,this.viewOptions.draggableRangeOnly&&(this.viewOptions.draggableRange=!0),this.viewOptions.showTicks=this.viewOptions.showTicks||this.viewOptions.showTicksValues||!OY.isNullOrUndefined(this.viewOptions.ticksArray),this.viewOptions.showTicks&&(!OY.isNullOrUndefined(this.viewOptions.tickStep)||!OY.isNullOrUndefined(this.viewOptions.ticksArray))&&(this.intermediateTicks=!0),this.viewOptions.showSelectionBar=this.viewOptions.showSelectionBar||this.viewOptions.showSelectionBarEnd||!OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue),OY.isNullOrUndefined(this.viewOptions.stepsArray)?this.applyFloorCeilOptions():this.applyStepsArrayOptions(),OY.isNullOrUndefined(this.viewOptions.combineLabels)&&(this.viewOptions.combineLabels=(t,e)=>t+" - "+e),this.viewOptions.logScale&&0===this.viewOptions.floor)throw Error("Can't use floor=0 with logarithmic scale")}applyStepsArrayOptions(){this.viewOptions.floor=0,this.viewOptions.ceil=this.viewOptions.stepsArray.length-1,this.viewOptions.step=1,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(this.viewOptions.bindIndexForStepsArray?this.getStepValue(t):t)),this.viewOptions.getLegend=t=>this.viewOptions.stepsArray[t].legend}applyFloorCeilOptions(){if(OY.isNullOrUndefined(this.viewOptions.step)?this.viewOptions.step=1:(this.viewOptions.step=+this.viewOptions.step,this.viewOptions.step<=0&&(this.viewOptions.step=1)),OY.isNullOrUndefined(this.viewOptions.ceil)||OY.isNullOrUndefined(this.viewOptions.floor))throw Error("floor and ceil options must be supplied");this.viewOptions.ceil=+this.viewOptions.ceil,this.viewOptions.floor=+this.viewOptions.floor,OY.isNullOrUndefined(this.viewOptions.translate)&&(this.viewOptions.translate=t=>String(t))}resetSlider(){this.manageElementsStyle(),this.addAccessibility(),this.updateCeilLabel(),this.updateFloorLabel(),this.unbindEvents(),this.manageEventsBindings(),this.updateDisabledState(),this.calculateViewDimensions(),this.refocusPointerIfNeeded()}focusPointer(t){t!==xY.Min&&t!==xY.Max&&(t=xY.Min),t===xY.Min?this.minHandleElement.focus():this.range&&t===xY.Max&&this.maxHandleElement.focus()}refocusPointerIfNeeded(){OY.isNullOrUndefined(this.currentFocusPointer)||(this.onPointerFocus(this.currentFocusPointer),this.getPointerElement(this.currentFocusPointer).focus())}manageElementsStyle(){this.updateScale(),this.floorLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels),this.ceilLabelElement.setAlwaysHide(this.viewOptions.showTicksValues||this.viewOptions.hideLimitLabels);const t=this.viewOptions.showTicksValues&&!this.intermediateTicks;this.minHandleLabelElement.setAlwaysHide(t||this.viewOptions.hidePointerLabels),this.maxHandleLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.combinedLabelElement.setAlwaysHide(t||!this.range||this.viewOptions.hidePointerLabels),this.selectionBarElement.setAlwaysHide(!this.range&&!this.viewOptions.showSelectionBar),this.leftOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.rightOuterSelectionBarElement.setAlwaysHide(!this.range||!this.viewOptions.showOuterSelectionBars),this.fullBarTransparentClass=this.range&&this.viewOptions.showOuterSelectionBars,this.selectionBarDraggableClass=this.viewOptions.draggableRange&&!this.viewOptions.onlyBindHandles,this.ticksUnderValuesClass=this.intermediateTicks&&this.options.showTicksValues,this.sliderElementVerticalClass!==this.viewOptions.vertical&&(this.updateVerticalState(),setTimeout(()=>{this.resetSlider()})),this.sliderElementAnimateClass!==this.viewOptions.animate&&setTimeout(()=>{this.sliderElementAnimateClass=this.viewOptions.animate})}manageEventsBindings(){this.viewOptions.disabled||this.viewOptions.readOnly?this.unbindEvents():this.bindEvents()}updateDisabledState(){this.sliderElementDisabledAttr=this.viewOptions.disabled?"disabled":null}updateVerticalState(){this.sliderElementVerticalClass=this.viewOptions.vertical;for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.setVertical(this.viewOptions.vertical)}updateScale(){for(const t of this.getAllSliderElements())t.setScale(this.viewOptions.scale)}getAllSliderElements(){return[this.leftOuterSelectionBarElement,this.rightOuterSelectionBarElement,this.fullBarElement,this.selectionBarElement,this.minHandleElement,this.maxHandleElement,this.floorLabelElement,this.ceilLabelElement,this.minHandleLabelElement,this.maxHandleLabelElement,this.combinedLabelElement,this.ticksElement]}initHandles(){this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.range&&this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateSelectionBar(),this.range&&this.updateCombinedLabel(),this.updateTicksScale()}addAccessibility(){this.updateAriaAttributes(),this.minHandleElement.role="slider",this.minHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.viewOptions.vertical&&(this.minHandleElement.ariaOrientation="vertical"),OY.isNullOrUndefined(this.viewOptions.ariaLabel)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledBy)||(this.minHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledBy):this.minHandleElement.ariaLabel=this.viewOptions.ariaLabel,this.range&&(this.maxHandleElement.role="slider",this.maxHandleElement.tabindex=!this.viewOptions.keyboardSupport||this.viewOptions.readOnly||this.viewOptions.disabled?"":"0",this.maxHandleElement.ariaOrientation=this.viewOptions.vertical?"vertical":"horizontal",OY.isNullOrUndefined(this.viewOptions.ariaLabelHigh)?OY.isNullOrUndefined(this.viewOptions.ariaLabelledByHigh)||(this.maxHandleElement.ariaLabelledBy=this.viewOptions.ariaLabelledByHigh):this.maxHandleElement.ariaLabel=this.viewOptions.ariaLabelHigh)}updateAriaAttributes(){this.minHandleElement.ariaValueNow=(+this.value).toString(),this.minHandleElement.ariaValueText=this.viewOptions.translate(+this.value,SY.Low),this.minHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.minHandleElement.ariaValueMax=this.viewOptions.ceil.toString(),this.range&&(this.maxHandleElement.ariaValueNow=(+this.highValue).toString(),this.maxHandleElement.ariaValueText=this.viewOptions.translate(+this.highValue,SY.High),this.maxHandleElement.ariaValueMin=this.viewOptions.floor.toString(),this.maxHandleElement.ariaValueMax=this.viewOptions.ceil.toString())}calculateViewDimensions(){OY.isNullOrUndefined(this.viewOptions.handleDimension)?this.minHandleElement.calculateDimension():this.minHandleElement.setDimension(this.viewOptions.handleDimension);const t=this.minHandleElement.dimension;this.handleHalfDimension=t/2,OY.isNullOrUndefined(this.viewOptions.barDimension)?this.fullBarElement.calculateDimension():this.fullBarElement.setDimension(this.viewOptions.barDimension),this.maxHandlePosition=this.fullBarElement.dimension-t,this.initHasRun&&(this.updateFloorLabel(),this.updateCeilLabel(),this.initHandles())}calculateViewDimensionsAndDetectChanges(){this.calculateViewDimensions(),this.isRefDestroyed()||this.changeDetectionRef.detectChanges()}isRefDestroyed(){return this.changeDetectionRef.destroyed}updateTicksScale(){if(!this.viewOptions.showTicks)return;const t=OY.isNullOrUndefined(this.viewOptions.ticksArray)?this.getTicksArray():this.viewOptions.ticksArray,e=this.viewOptions.vertical?"translateY":"translateX";this.viewOptions.rightToLeft&&t.reverse();const n=t.map(t=>{let n=this.valueToPosition(t);this.viewOptions.vertical&&(n=this.maxHandlePosition-n);const i=e+"("+Math.round(n)+"px)",r=new RY;if(r.selected=this.isTickSelected(t),r.style={"-webkit-transform":i,"-moz-transform":i,"-o-transform":i,"-ms-transform":i,transform:i},r.selected&&!OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)&&(r.style["background-color"]=this.getSelectionBarColor()),!r.selected&&!OY.isNullOrUndefined(this.viewOptions.getTickColor)&&(r.style["background-color"]=this.getTickColor(t)),OY.isNullOrUndefined(this.viewOptions.ticksTooltip)||(r.tooltip=this.viewOptions.ticksTooltip(t),r.tooltipPlacement=this.viewOptions.vertical?"right":"top"),this.viewOptions.showTicksValues&&t%this.viewOptions.tickValueStep==0&&(r.value=this.getDisplayValue(t,SY.TickValue),OY.isNullOrUndefined(this.viewOptions.ticksValuesTooltip)||(r.valueTooltip=this.viewOptions.ticksValuesTooltip(t),r.valueTooltipPlacement=this.viewOptions.vertical?"right":"top")),!OY.isNullOrUndefined(this.viewOptions.getLegend)){const e=this.viewOptions.getLegend(t);OY.isNullOrUndefined(e)||(r.legend=e)}return r});if(OY.isNullOrUndefined(this.ticks)||this.ticks.length!==n.length)this.ticks=n;else for(let i=0;i=this.viewLowValue)return!0}else if(this.viewOptions.showSelectionBar&&t<=this.viewLowValue)return!0}else{const e=this.viewOptions.showSelectionBarFromValue;if(this.viewLowValue>e&&t>=e&&t<=this.viewLowValue)return!0;if(this.viewLowValue=this.viewLowValue)return!0}return!!(this.range&&t>=this.viewLowValue&&t<=this.viewHighValue)}updateFloorLabel(){this.floorLabelElement.alwaysHide||(this.floorLabelElement.setValue(this.getDisplayValue(this.viewOptions.floor,SY.Floor)),this.floorLabelElement.calculateDimension(),this.floorLabelElement.setPosition(this.viewOptions.rightToLeft?this.fullBarElement.dimension-this.floorLabelElement.dimension:0))}updateCeilLabel(){this.ceilLabelElement.alwaysHide||(this.ceilLabelElement.setValue(this.getDisplayValue(this.viewOptions.ceil,SY.Ceil)),this.ceilLabelElement.calculateDimension(),this.ceilLabelElement.setPosition(this.viewOptions.rightToLeft?0:this.fullBarElement.dimension-this.ceilLabelElement.dimension))}updateHandles(t,e){t===xY.Min?this.updateLowHandle(e):t===xY.Max&&this.updateHighHandle(e),this.updateSelectionBar(),this.updateTicksScale(),this.range&&this.updateCombinedLabel()}getHandleLabelPos(t,e){const n=t===xY.Min?this.minHandleLabelElement.dimension:this.maxHandleLabelElement.dimension,i=e-n/2+this.handleHalfDimension,r=this.fullBarElement.dimension-n;return this.viewOptions.boundPointerLabels?this.viewOptions.rightToLeft&&t===xY.Min||!this.viewOptions.rightToLeft&&t===xY.Max?Math.min(i,r):Math.min(Math.max(i,0),r):i}updateLowHandle(t){this.minHandleElement.setPosition(t),this.minHandleLabelElement.setValue(this.getDisplayValue(this.viewLowValue,SY.Low)),this.minHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Min,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.minPointerStyle={backgroundColor:this.getPointerColor(xY.Min)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateHighHandle(t){this.maxHandleElement.setPosition(t),this.maxHandleLabelElement.setValue(this.getDisplayValue(this.viewHighValue,SY.High)),this.maxHandleLabelElement.setPosition(this.getHandleLabelPos(xY.Max,t)),OY.isNullOrUndefined(this.viewOptions.getPointerColor)||(this.maxPointerStyle={backgroundColor:this.getPointerColor(xY.Max)}),this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}updateFloorAndCeilLabelsVisibility(){if(this.viewOptions.hidePointerLabels)return;let t=!1,e=!1;const n=this.isLabelBelowFloorLabel(this.minHandleLabelElement),i=this.isLabelAboveCeilLabel(this.minHandleLabelElement),r=this.isLabelAboveCeilLabel(this.maxHandleLabelElement),s=this.isLabelBelowFloorLabel(this.combinedLabelElement),o=this.isLabelAboveCeilLabel(this.combinedLabelElement);if(n?(t=!0,this.floorLabelElement.hide()):(t=!1,this.floorLabelElement.show()),i?(e=!0,this.ceilLabelElement.hide()):(e=!1,this.ceilLabelElement.show()),this.range){const i=this.combinedLabelElement.isVisible()?o:r,a=this.combinedLabelElement.isVisible()?s:n;i?this.ceilLabelElement.hide():e||this.ceilLabelElement.show(),a?this.floorLabelElement.hide():t||this.floorLabelElement.show()}}isLabelBelowFloorLabel(t){const e=t.position,n=this.floorLabelElement.position;return this.viewOptions.rightToLeft?e+t.dimension>=n-2:e<=n+this.floorLabelElement.dimension+2}isLabelAboveCeilLabel(t){const e=t.position,n=this.ceilLabelElement.position;return this.viewOptions.rightToLeft?e<=n+this.ceilLabelElement.dimension+2:e+t.dimension>=n-2}updateSelectionBar(){let t=0,e=0;const n=this.viewOptions.rightToLeft?!this.viewOptions.showSelectionBarEnd:this.viewOptions.showSelectionBarEnd,i=this.viewOptions.rightToLeft?this.maxHandleElement.position+this.handleHalfDimension:this.minHandleElement.position+this.handleHalfDimension;if(this.range)e=Math.abs(this.maxHandleElement.position-this.minHandleElement.position),t=i;else if(OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue))n?(e=Math.ceil(Math.abs(this.maxHandlePosition-this.minHandleElement.position)+this.handleHalfDimension),t=Math.floor(this.minHandleElement.position+this.handleHalfDimension)):(e=this.minHandleElement.position+this.handleHalfDimension,t=0);else{const n=this.viewOptions.showSelectionBarFromValue,i=this.valueToPosition(n);(this.viewOptions.rightToLeft?this.viewLowValue<=n:this.viewLowValue>n)?(e=this.minHandleElement.position-i,t=i+this.handleHalfDimension):(e=i-this.minHandleElement.position,t=this.minHandleElement.position+this.handleHalfDimension)}if(this.selectionBarElement.setDimension(e),this.selectionBarElement.setPosition(t),this.range&&this.viewOptions.showOuterSelectionBars&&(this.viewOptions.rightToLeft?(this.rightOuterSelectionBarElement.setDimension(t),this.rightOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.leftOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.leftOuterSelectionBarElement.setPosition(t+e)):(this.leftOuterSelectionBarElement.setDimension(t),this.leftOuterSelectionBarElement.setPosition(0),this.fullBarElement.calculateDimension(),this.rightOuterSelectionBarElement.setDimension(this.fullBarElement.dimension-(t+e)),this.rightOuterSelectionBarElement.setPosition(t+e))),OY.isNullOrUndefined(this.viewOptions.getSelectionBarColor)){if(!OY.isNullOrUndefined(this.viewOptions.selectionBarGradient)){const i=OY.isNullOrUndefined(this.viewOptions.showSelectionBarFromValue)?0:this.valueToPosition(this.viewOptions.showSelectionBarFromValue),r=i-t>0&&!n||i-t<=0&&n;this.barStyle={backgroundImage:"linear-gradient(to "+(this.viewOptions.vertical?r?"bottom":"top":r?"left":"right")+", "+this.viewOptions.selectionBarGradient.from+" 0%,"+this.viewOptions.selectionBarGradient.to+" 100%)"},this.viewOptions.vertical?(this.barStyle.backgroundPosition="center "+(i+e+t+(r?-this.handleHalfDimension:0))+"px",this.barStyle.backgroundSize="100% "+(this.fullBarElement.dimension-this.handleHalfDimension)+"px"):(this.barStyle.backgroundPosition=i-t+(r?this.handleHalfDimension:0)+"px center",this.barStyle.backgroundSize=this.fullBarElement.dimension-this.handleHalfDimension+"px 100%")}}else{const t=this.getSelectionBarColor();this.barStyle={backgroundColor:t}}}getSelectionBarColor(){return this.range?this.viewOptions.getSelectionBarColor(this.value,this.highValue):this.viewOptions.getSelectionBarColor(this.value)}getPointerColor(t){return this.viewOptions.getPointerColor(t===xY.Max?this.highValue:this.value,t)}getTickColor(t){return this.viewOptions.getTickColor(t)}updateCombinedLabel(){let t=null;if(t=this.viewOptions.rightToLeft?this.minHandleLabelElement.position-this.minHandleLabelElement.dimension-10<=this.maxHandleLabelElement.position:this.minHandleLabelElement.position+this.minHandleLabelElement.dimension+10>=this.maxHandleLabelElement.position,t){const t=this.getDisplayValue(this.viewLowValue,SY.Low),e=this.getDisplayValue(this.viewHighValue,SY.High),n=this.viewOptions.rightToLeft?this.viewOptions.combineLabels(e,t):this.viewOptions.combineLabels(t,e);this.combinedLabelElement.setValue(n);const i=this.viewOptions.boundPointerLabels?Math.min(Math.max(this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2,0),this.fullBarElement.dimension-this.combinedLabelElement.dimension):this.selectionBarElement.position+this.selectionBarElement.dimension/2-this.combinedLabelElement.dimension/2;this.combinedLabelElement.setPosition(i),this.minHandleLabelElement.hide(),this.maxHandleLabelElement.hide(),this.combinedLabelElement.show()}else this.updateHighHandle(this.valueToPosition(this.viewHighValue)),this.updateLowHandle(this.valueToPosition(this.viewLowValue)),this.maxHandleLabelElement.show(),this.minHandleLabelElement.show(),this.combinedLabelElement.hide();this.viewOptions.autoHideLimitLabels&&this.updateFloorAndCeilLabelsVisibility()}getDisplayValue(t,e){return!OY.isNullOrUndefined(this.viewOptions.stepsArray)&&!this.viewOptions.bindIndexForStepsArray&&(t=this.getStepValue(t)),this.viewOptions.translate(t,e)}roundStep(t,e){const n=OY.isNullOrUndefined(e)?this.viewOptions.step:e;let i=kY.roundToPrecisionLimit((t-this.viewOptions.floor)/n,this.viewOptions.precisionLimit);return i=Math.round(i)*n,kY.roundToPrecisionLimit(this.viewOptions.floor+i,this.viewOptions.precisionLimit)}valueToPosition(t){let e=OY.linearValueToPosition;OY.isNullOrUndefined(this.viewOptions.customValueToPosition)?this.viewOptions.logScale&&(e=OY.logValueToPosition):e=this.viewOptions.customValueToPosition;let n=e(t=kY.clampToRange(t,this.viewOptions.floor,this.viewOptions.ceil),this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(n)&&(n=0),this.viewOptions.rightToLeft&&(n=1-n),n*this.maxHandlePosition}positionToValue(t){let e=t/this.maxHandlePosition;this.viewOptions.rightToLeft&&(e=1-e);let n=OY.linearPositionToValue;OY.isNullOrUndefined(this.viewOptions.customPositionToValue)?this.viewOptions.logScale&&(n=OY.logPositionToValue):n=this.viewOptions.customPositionToValue;const i=n(e,this.viewOptions.floor,this.viewOptions.ceil);return OY.isNullOrUndefined(i)?0:i}getEventXY(t,e){if(t instanceof MouseEvent)return this.viewOptions.vertical?t.clientY:t.clientX;let n=0;const i=t.touches;if(!OY.isNullOrUndefined(e))for(let r=0;ri?xY.Max:this.viewOptions.rightToLeft?e>this.minHandleElement.position?xY.Min:xY.Max:ethis.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.on("mousedown",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.on("mousedown",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.on("mousedown",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.on("mousedown",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.on("mousedown",t=>this.onStart(null,t,!0,!0,!0,!0)))),this.viewOptions.onlyBindHandles||this.selectionBarElement.onPassive("touchstart",e=>this.onBarStart(null,t,e,!0,!0,!0)),this.viewOptions.draggableRangeOnly?(this.minHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Min,t,e,!0,!0)),this.maxHandleElement.onPassive("touchstart",e=>this.onBarStart(xY.Max,t,e,!0,!0))):(this.minHandleElement.onPassive("touchstart",t=>this.onStart(xY.Min,t,!0,!0)),this.range&&this.maxHandleElement.onPassive("touchstart",t=>this.onStart(xY.Max,t,!0,!0)),this.viewOptions.onlyBindHandles||(this.fullBarElement.onPassive("touchstart",t=>this.onStart(null,t,!0,!0,!0)),this.ticksElement.onPassive("touchstart",t=>this.onStart(null,t,!1,!1,!0,!0)))),this.viewOptions.keyboardSupport&&(this.minHandleElement.on("focus",()=>this.onPointerFocus(xY.Min)),this.range&&this.maxHandleElement.on("focus",()=>this.onPointerFocus(xY.Max)))}unbindEvents(){this.unsubscribeOnMove(),this.unsubscribeOnEnd();for(const t of this.getAllSliderElements())OY.isNullOrUndefined(t)||t.off()}onBarStart(t,e,n,i,r,s,o){e?this.onDragStart(t,n,i,r):this.onStart(t,n,i,r,s,o)}onStart(t,e,n,i,r,s){e.stopPropagation(),(!TY.isTouchEvent(e)||!JX.Z.hasSupport)&&e.preventDefault(),this.calculateViewDimensions(),OY.isNullOrUndefined(t)&&(t=this.getNearestHandle(e)),this.currentTrackingPointer=t;const o=this.getPointerElement(t);if(o.active=!0,this.viewOptions.keyboardSupport&&o.focus(),n){this.unsubscribeOnMove();const t=t=>this.dragging.active?this.onDragMove(t):this.onMove(t);this.onMoveEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchmove",t,this.viewOptions.touchEventsInterval):this.eventListenerHelper.attachEventListener(document,"mousemove",t,this.viewOptions.mouseEventsInterval)}if(i){this.unsubscribeOnEnd();const t=t=>this.onEnd(t);this.onEndEventListener=TY.isTouchEvent(e)?this.eventListenerHelper.attachPassiveEventListener(document,"touchend",t):this.eventListenerHelper.attachEventListener(document,"mouseup",t)}this.userChangeStart.emit(this.getChangeContext()),TY.isTouchEvent(e)&&!OY.isNullOrUndefined(e.changedTouches)&&OY.isNullOrUndefined(this.touchId)&&(this.touchId=e.changedTouches[0].identifier),r&&this.onMove(e,!0),s&&this.onEnd(e)}onMove(t,e){let n=null;if(TY.isTouchEvent(t)){const e=t.changedTouches;for(let t=0;t=this.maxHandlePosition?r=this.viewOptions.rightToLeft?this.viewOptions.floor:this.viewOptions.ceil:(r=this.positionToValue(i),r=e&&!OY.isNullOrUndefined(this.viewOptions.tickStep)?this.roundStep(r,this.viewOptions.tickStep):this.roundStep(r)),this.positionTrackingHandle(r)}onEnd(t){TY.isTouchEvent(t)&&t.changedTouches[0].identifier!==this.touchId||(this.touchId=null,this.viewOptions.keyboardSupport||(this.minHandleElement.active=!1,this.maxHandleElement.active=!1,this.currentTrackingPointer=null),this.dragging.active=!1,this.unsubscribeOnMove(),this.unsubscribeOnEnd(),this.userChangeEnd.emit(this.getChangeContext()))}onPointerFocus(t){const e=this.getPointerElement(t);e.on("blur",()=>this.onPointerBlur(e)),e.on("keydown",t=>this.onKeyboardEvent(t)),e.on("keyup",()=>this.onKeyUp()),e.active=!0,this.currentTrackingPointer=t,this.currentFocusPointer=t,this.firstKeyDown=!0}onKeyUp(){this.firstKeyDown=!0,this.userChangeEnd.emit(this.getChangeContext())}onPointerBlur(t){t.off("blur"),t.off("keydown"),t.off("keyup"),t.active=!1,OY.isNullOrUndefined(this.touchId)&&(this.currentTrackingPointer=null,this.currentFocusPointer=null)}getKeyActions(t){const e=this.viewOptions.ceil-this.viewOptions.floor;let n=t+this.viewOptions.step,i=t-this.viewOptions.step,r=t+e/10,s=t-e/10;this.viewOptions.reversedControls&&(n=t-this.viewOptions.step,i=t+this.viewOptions.step,r=t-e/10,s=t+e/10);const o={UP:n,DOWN:i,LEFT:i,RIGHT:n,PAGEUP:r,PAGEDOWN:s,HOME:this.viewOptions.reversedControls?this.viewOptions.ceil:this.viewOptions.floor,END:this.viewOptions.reversedControls?this.viewOptions.floor:this.viewOptions.ceil};return this.viewOptions.rightToLeft&&(o.LEFT=n,o.RIGHT=i,this.viewOptions.vertical&&(o.UP=i,o.DOWN=n)),o}onKeyboardEvent(t){const e=this.getCurrentTrackingValue(),n=OY.isNullOrUndefined(t.keyCode)?t.which:t.keyCode,i=this.getKeyActions(e)[{38:"UP",40:"DOWN",37:"LEFT",39:"RIGHT",33:"PAGEUP",34:"PAGEDOWN",36:"HOME",35:"END"}[n]];if(OY.isNullOrUndefined(i)||OY.isNullOrUndefined(this.currentTrackingPointer))return;t.preventDefault(),this.firstKeyDown&&(this.firstKeyDown=!1,this.userChangeStart.emit(this.getChangeContext()));const r=kY.clampToRange(i,this.viewOptions.floor,this.viewOptions.ceil),s=this.roundStep(r);if(this.viewOptions.draggableRangeOnly){const t=this.viewHighValue-this.viewLowValue;let e,n;this.currentTrackingPointer===xY.Min?(e=s,n=s+t,n>this.viewOptions.ceil&&(n=this.viewOptions.ceil,e=n-t)):this.currentTrackingPointer===xY.Max&&(n=s,e=s-t,e=this.maxHandlePosition-n;let a,l;if(e<=i){if(0===r.position)return;a=this.getMinValue(e,!0,!1),l=this.getMaxValue(e,!0,!1)}else if(o){if(s.position===this.maxHandlePosition)return;l=this.getMaxValue(e,!0,!0),a=this.getMinValue(e,!0,!0)}else a=this.getMinValue(e,!1,!1),l=this.getMaxValue(e,!1,!1);this.positionTrackingBar(a,l)}positionTrackingBar(t,e){!OY.isNullOrUndefined(this.viewOptions.minLimit)&&tthis.viewOptions.maxLimit&&(t=kY.roundToPrecisionLimit((e=this.viewOptions.maxLimit)-this.dragging.difference,this.viewOptions.precisionLimit)),this.viewLowValue=t,this.viewHighValue=e,this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(t)),this.updateHandles(xY.Max,this.valueToPosition(e))}positionTrackingHandle(t){t=this.applyMinMaxLimit(t),this.range&&(this.viewOptions.pushRange?t=this.applyPushRange(t):(this.viewOptions.noSwitching&&(this.currentTrackingPointer===xY.Min&&t>this.viewHighValue?t=this.applyMinMaxRange(this.viewHighValue):this.currentTrackingPointer===xY.Max&&tthis.viewHighValue?(this.viewLowValue=this.viewHighValue,this.applyViewChange(),this.updateHandles(xY.Min,this.maxHandleElement.position),this.updateAriaAttributes(),this.currentTrackingPointer=xY.Max,this.minHandleElement.active=!1,this.maxHandleElement.active=!0,this.viewOptions.keyboardSupport&&this.maxHandleElement.focus()):this.currentTrackingPointer===xY.Max&&tthis.viewOptions.maxLimit?this.viewOptions.maxLimit:t}applyMinMaxRange(t){const e=Math.abs(t-(this.currentTrackingPointer===xY.Min?this.viewHighValue:this.viewLowValue));if(!OY.isNullOrUndefined(this.viewOptions.minRange)&&ethis.viewOptions.maxRange){if(this.currentTrackingPointer===xY.Min)return kY.roundToPrecisionLimit(this.viewHighValue-this.viewOptions.maxRange,this.viewOptions.precisionLimit);if(this.currentTrackingPointer===xY.Max)return kY.roundToPrecisionLimit(this.viewLowValue+this.viewOptions.maxRange,this.viewOptions.precisionLimit)}return t}applyPushRange(t){const e=this.currentTrackingPointer===xY.Min?this.viewHighValue-t:t-this.viewLowValue,n=OY.isNullOrUndefined(this.viewOptions.minRange)?this.viewOptions.step:this.viewOptions.minRange,i=this.viewOptions.maxRange;return ei&&(this.currentTrackingPointer===xY.Min?(this.viewHighValue=kY.roundToPrecisionLimit(t+i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Max,this.valueToPosition(this.viewHighValue))):this.currentTrackingPointer===xY.Max&&(this.viewLowValue=kY.roundToPrecisionLimit(t-i,this.viewOptions.precisionLimit),this.applyViewChange(),this.updateHandles(xY.Min,this.valueToPosition(this.viewLowValue))),this.updateAriaAttributes()),t}getChangeContext(){const t=new CY;return t.pointerType=this.currentTrackingPointer,t.value=+this.value,this.range&&(t.highValue=+this.highValue),t}}return t.\u0275fac=function(e){return new(e||t)(ea(Ml),ea(kl),ea(tc),ea(xu))},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,tY,5),2&t){let t;Wc(t=Yc())&&(e.tooltipTemplate=t.first)}},viewQuery:function(t,e){if(1&t&&(qc(eY,5,MY),qc(nY,5,MY),qc(iY,5,MY),qc(rY,5,MY),qc(sY,5,IY),qc(oY,5,IY),qc(aY,5,DY),qc(lY,5,DY),qc(cY,5,DY),qc(uY,5,DY),qc(hY,5,DY),qc(dY,5,MY)),2&t){let t;Wc(t=Yc())&&(e.leftOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.rightOuterSelectionBarElement=t.first),Wc(t=Yc())&&(e.fullBarElement=t.first),Wc(t=Yc())&&(e.selectionBarElement=t.first),Wc(t=Yc())&&(e.minHandleElement=t.first),Wc(t=Yc())&&(e.maxHandleElement=t.first),Wc(t=Yc())&&(e.floorLabelElement=t.first),Wc(t=Yc())&&(e.ceilLabelElement=t.first),Wc(t=Yc())&&(e.minHandleLabelElement=t.first),Wc(t=Yc())&&(e.maxHandleLabelElement=t.first),Wc(t=Yc())&&(e.combinedLabelElement=t.first),Wc(t=Yc())&&(e.ticksElement=t.first)}},hostAttrs:[1,"ng5-slider"],hostVars:5,hostBindings:function(t,e){1&t&&fa("resize",function(t){return e.onResize(t)},!1,Mr),2&t&&(Ko("disabled",e.sliderElementDisabledAttr),ja("vertical",e.sliderElementVerticalClass)("animate",e.sliderElementAnimateClass))},inputs:{value:"value",highValue:"highValue",options:"options",manualRefresh:"manualRefresh",triggerFocus:"triggerFocus"},outputs:{valueChange:"valueChange",highValueChange:"highValueChange",userChangeStart:"userChangeStart",userChange:"userChange",userChangeEnd:"userChangeEnd"},features:[_l([FY]),ye],decls:29,vars:13,consts:[["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-left-out-selection"],["leftOuterSelectionBar",""],[1,"ng5-slider-span","ng5-slider-bar"],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-right-out-selection"],["rightOuterSelectionBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-full-bar"],["fullBar",""],["ng5SliderElement","",1,"ng5-slider-span","ng5-slider-bar-wrapper","ng5-slider-selection-bar"],["selectionBar",""],[1,"ng5-slider-span","ng5-slider-bar","ng5-slider-selection",3,"ngStyle"],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-min",3,"ngStyle"],["minHandle",""],["ng5SliderHandle","",1,"ng5-slider-span","ng5-slider-pointer","ng5-slider-pointer-max",3,"ngStyle"],["maxHandle",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-floor"],["floorLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-limit","ng5-slider-ceil"],["ceilLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-value"],["minHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-model-high"],["maxHandleLabel",""],["ng5SliderLabel","",1,"ng5-slider-span","ng5-slider-bubble","ng5-slider-combined"],["combinedLabel",""],["ng5SliderElement","",1,"ng5-slider-ticks",3,"hidden"],["ticksElement",""],["class","ng5-slider-tick",3,"ngClass","ngStyle",4,"ngFor","ngForOf"],[1,"ng5-slider-tick",3,"ngClass","ngStyle"],[3,"template","tooltip","placement"],["class","ng5-slider-span ng5-slider-tick-value",3,"template","tooltip","placement","content",4,"ngIf"],["class","ng5-slider-span ng5-slider-tick-legend",3,"innerHTML",4,"ngIf"],[1,"ng5-slider-span","ng5-slider-tick-value",3,"template","tooltip","placement","content"],[1,"ng5-slider-span","ng5-slider-tick-legend",3,"innerHTML"]],template:function(t,e){1&t&&(ra(0,"span",0,1),oa(2,"span",2),sa(),ra(3,"span",3,4),oa(5,"span",2),sa(),ra(6,"span",5,6),oa(8,"span",2),sa(),ra(9,"span",7,8),oa(11,"span",9),sa(),oa(12,"span",10,11),oa(14,"span",12,13),oa(16,"span",14,15),oa(18,"span",16,17),oa(20,"span",18,19),oa(22,"span",20,21),oa(24,"span",22,23),ra(26,"span",24,25),Jo(28,mY,4,9,"span",26),sa()),2&t&&(ws(6),ja("ng5-slider-transparent",e.fullBarTransparentClass),ws(3),ja("ng5-slider-draggable",e.selectionBarDraggableClass),ws(2),na("ngStyle",e.barStyle),ws(1),na("ngStyle",e.minPointerStyle),ws(2),La("display",e.range?"inherit":"none"),na("ngStyle",e.maxPointerStyle),ws(12),ja("ng5-slider-ticks-values-under",e.ticksUnderValuesClass),na("hidden",!e.showTicks),ws(2),na("ngForOf",e.ticks))},directives:function(){return[MY,Th,IY,DY,yh,mh,VY,_h]},styles:[".ng5-slider{display:inline-block;position:relative;height:4px;width:100%;margin:35px 0 15px;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y} .ng5-slider.with-legend{margin-bottom:40px} .ng5-slider[disabled]{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-pointer{cursor:not-allowed;background-color:#d8e0f3} .ng5-slider[disabled] .ng5-slider-draggable{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-selection{background:#8b91a2} .ng5-slider[disabled] .ng5-slider-tick{cursor:not-allowed} .ng5-slider[disabled] .ng5-slider-tick.ng5-slider-selected{background:#8b91a2} .ng5-slider .ng5-slider-span{white-space:nowrap;position:absolute;display:inline-block} .ng5-slider .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider .ng5-slider-bar-wrapper{left:0;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:-16px;padding-top:16px;width:100%;height:32px;z-index:1} .ng5-slider .ng5-slider-draggable{cursor:move} .ng5-slider .ng5-slider-bar{left:0;width:100%;height:4px;z-index:1;background:#d8e0f3;border-radius:2px} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-transparent .ng5-slider-bar{background:0 0} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-left-out-selection .ng5-slider-bar{background:#df002d} .ng5-slider .ng5-slider-bar-wrapper.ng5-slider-right-out-selection .ng5-slider-bar{background:#03a688} .ng5-slider .ng5-slider-selection{z-index:2;background:#0db9f0;border-radius:2px} .ng5-slider .ng5-slider-pointer{cursor:pointer;width:32px;height:32px;top:-14px;background-color:#0db9f0;z-index:3;border-radius:16px} .ng5-slider .ng5-slider-pointer:after{content:'';width:8px;height:8px;position:absolute;top:12px;left:12px;border-radius:4px;background:#fff} .ng5-slider .ng5-slider-pointer:hover:after{background-color:#fff} .ng5-slider .ng5-slider-pointer.ng5-slider-active{z-index:4} .ng5-slider .ng5-slider-pointer.ng5-slider-active:after{background-color:#451aff} .ng5-slider .ng5-slider-bubble{cursor:default;bottom:16px;padding:1px 3px;color:#55637d;font-size:16px} .ng5-slider .ng5-slider-bubble.ng5-slider-limit{color:#55637d} .ng5-slider .ng5-slider-ticks{-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;height:0;position:absolute;left:0;top:-3px;margin:0;z-index:1;list-style:none} .ng5-slider .ng5-slider-ticks-values-under .ng5-slider-tick-value{top:auto;bottom:-36px} .ng5-slider .ng5-slider-tick{text-align:center;cursor:pointer;width:10px;height:10px;background:#d8e0f3;border-radius:50%;position:absolute;top:0;left:0;margin-left:11px} .ng5-slider .ng5-slider-tick.ng5-slider-selected{background:#0db9f0} .ng5-slider .ng5-slider-tick-value{position:absolute;top:-34px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0)} .ng5-slider .ng5-slider-tick-legend{position:absolute;top:24px;-webkit-transform:translate(-50%,0);transform:translate(-50%,0);max-width:50px;white-space:normal} .ng5-slider.vertical{position:relative;width:4px;height:100%;margin:0 20px;padding:0;vertical-align:baseline;-ms-touch-action:pan-x;touch-action:pan-x} .ng5-slider.vertical .ng5-slider-base{width:100%;height:100%;padding:0} .ng5-slider.vertical .ng5-slider-bar-wrapper{top:auto;left:0;margin:0 0 0 -16px;padding:0 0 0 16px;height:100%;width:32px} .ng5-slider.vertical .ng5-slider-bar{bottom:0;left:auto;width:4px;height:100%} .ng5-slider.vertical .ng5-slider-pointer{left:-14px!important;top:auto;bottom:0} .ng5-slider.vertical .ng5-slider-bubble{left:16px!important;bottom:0} .ng5-slider.vertical .ng5-slider-ticks{height:100%;width:0;left:-3px;top:0;z-index:1} .ng5-slider.vertical .ng5-slider-tick{vertical-align:middle;margin-left:auto;margin-top:11px} .ng5-slider.vertical .ng5-slider-tick-value{left:24px;top:auto;-webkit-transform:translate(0,-28%);transform:translate(0,-28%)} .ng5-slider.vertical .ng5-slider-tick-legend{top:auto;right:24px;-webkit-transform:translate(0,-28%);transform:translate(0,-28%);max-width:none;white-space:nowrap} .ng5-slider.vertical .ng5-slider-ticks-values-under .ng5-slider-tick-value{bottom:auto;left:auto;right:24px} .ng5-slider *{-webkit-transition:none;transition:none} .ng5-slider.animate .ng5-slider-bar-wrapper{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-selection{-webkit-transition:background-color linear .3s;transition:background-color linear .3s} .ng5-slider.animate .ng5-slider-pointer{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble{-webkit-transition:all linear .3s;transition:all linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-limit{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-bubble.ng5-slider-combined{-webkit-transition:opacity linear .3s;transition:opacity linear .3s} .ng5-slider.animate .ng5-slider-tick{-webkit-transition:background-color linear .3s;transition:background-color linear .3s}"]}),t})(),VY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ng5-slider-tooltip-wrapper"]],inputs:{template:"template",tooltip:"tooltip",placement:"placement",content:"content"},decls:2,vars:2,consts:[[4,"ngIf"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"ng5-slider-inner-tooltip"]],template:function(t,e){1&t&&(Jo(0,_Y,2,6,"ng-container",0),Jo(1,wY,3,3,"ng-container",0)),2&t&&(na("ngIf",e.template),ws(1),na("ngIf",!e.template))},directives:[_h,kh],styles:[".ng5-slider-inner-tooltip[_ngcontent-%COMP%]{height:100%}"]}),t})(),zY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),UY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Rf,Hp,cU,YX,zY]]}),t})(),HY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,AX,KX,UY,x_,f_]]}),t})(),$Y=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,f_,HY]]}),t})(),GY=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Az,Pz,kU,cU,jU,f_]]}),t})();class WY extends class{constructor(){this.expansionModel=new kp(!0)}toggle(t){this.expansionModel.toggle(this._trackByValue(t))}expand(t){this.expansionModel.select(this._trackByValue(t))}collapse(t){this.expansionModel.deselect(this._trackByValue(t))}isExpanded(t){return this.expansionModel.isSelected(this._trackByValue(t))}toggleDescendants(t){this.expansionModel.isSelected(this._trackByValue(t))?this.collapseDescendants(t):this.expandDescendants(t)}collapseAll(){this.expansionModel.clear()}expandDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.select(...e.map(t=>this._trackByValue(t)))}collapseDescendants(t){let e=[t];e.push(...this.getDescendants(t)),this.expansionModel.deselect(...e.map(t=>this._trackByValue(t)))}_trackByValue(t){return this.trackBy?this.trackBy(t):t}}{constructor(t,e,n){super(),this.getLevel=t,this.isExpandable=e,this.options=n,this.options&&(this.trackBy=this.options.trackBy)}getDescendants(t){const e=[];for(let n=this.dataNodes.indexOf(t)+1;nthis._trackByValue(t)))}}const qY=new oi("CDK_TREE_NODE_OUTLET_NODE");let XY=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeOutlet",""]]}),t})();class YY{constructor(t){this.$implicit=t}}let KY=(()=>{class t{constructor(t){this.template=t}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeDef",""]],inputs:{when:["cdkTreeNodeDefWhen","when"]}}),t})(),QY=(()=>{class t{constructor(t,e){this._differs=t,this._changeDetectorRef=e,this._onDestroy=new P,this._levels=new Map,this.viewChange=new Uf({start:0,end:Number.MAX_VALUE})}get dataSource(){return this._dataSource}set dataSource(t){this._dataSource!==t&&this._switchDataSource(t)}ngOnInit(){this._dataDiffer=this._differs.find([]).create(this.trackBy)}ngOnDestroy(){this._nodeOutlet.viewContainer.clear(),this.viewChange.complete(),this._onDestroy.next(),this._onDestroy.complete(),this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null)}ngAfterContentChecked(){const t=this._nodeDefs.filter(t=>!t.when);this._defaultNodeDef=t[0],this.dataSource&&this._nodeDefs&&!this._dataSubscription&&this._observeRenderChanges()}_switchDataSource(t){this._dataSource&&"function"==typeof this._dataSource.disconnect&&this.dataSource.disconnect(this),this._dataSubscription&&(this._dataSubscription.unsubscribe(),this._dataSubscription=null),t||this._nodeOutlet.viewContainer.clear(),this._dataSource=t,this._nodeDefs&&this._observeRenderChanges()}_observeRenderChanges(){let t;!function(t){return t&&"function"==typeof t.connect}(this._dataSource)?Dd(this._dataSource)?t=this._dataSource:Array.isArray(this._dataSource)&&(t=wd(this._dataSource)):t=this._dataSource.connect(this),t&&(this._dataSubscription=t.pipe(Wd(this._onDestroy)).subscribe(t=>this.renderNodeChanges(t)))}renderNodeChanges(t,e=this._dataDiffer,n=this._nodeOutlet.viewContainer,i){const r=e.diff(t);!r||(r.forEachOperation((e,r,s)=>{if(null==e.previousIndex)this.insertNode(t[s],s,n,i);else if(null==s)n.remove(r),this._levels.delete(e.item);else{const t=n.get(r);n.move(t,s)}}),this._changeDetectorRef.detectChanges())}_getNodeDef(t,e){return 1===this._nodeDefs.length?this._nodeDefs.first:this._nodeDefs.find(n=>n.when&&n.when(e,t))||this._defaultNodeDef}insertNode(t,e,n,i){const r=this._getNodeDef(t,e),s=new YY(t);s.level=this.treeControl.getLevel?this.treeControl.getLevel(t):void 0!==i&&this._levels.has(i)?this._levels.get(i)+1:0,this._levels.set(t,s.level),(n||this._nodeOutlet.viewContainer).createEmbeddedView(r.template,s,e),ZY.mostRecentTreeNode&&(ZY.mostRecentTreeNode.data=t)}}return t.\u0275fac=function(e){return new(e||t)(ea(ql),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["cdk-tree"]],contentQueries:function(t,e,n){if(1&t&&Xc(n,KY,5),2&t){let t;Wc(t=Yc())&&(e._nodeDefs=t)}},viewQuery:function(t,e){if(1&t&&qc(XY,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"cdk-tree"],inputs:{dataSource:"dataSource",treeControl:"treeControl",trackBy:"trackBy"},exportAs:["cdkTree"],decls:1,vars:0,consts:[["cdkTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[XY],encapsulation:2}),t})(),ZY=(()=>{class t{constructor(e,n){this._elementRef=e,this._tree=n,this._destroyed=new P,this._dataChanges=new P,t.mostRecentTreeNode=this,this._elementRef.nativeElement.classList.add("cdk-tree-node"),this.role="treeitem"}get role(){return"treeitem"}set role(t){this._elementRef.nativeElement.setAttribute("role",t)}get data(){return this._data}set data(t){t!==this._data&&(this._data=t,this._setRoleFromData(),this._dataChanges.next())}get isExpanded(){return this._tree.treeControl.isExpanded(this._data)}_setExpanded(t){this._isAriaExpanded=t,this._elementRef.nativeElement.setAttribute("aria-expanded",`${t}`)}get level(){return this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._data):this._parentNodeAriaLevel}ngOnInit(){this._parentNodeAriaLevel=function(t){let e=t.parentElement;for(;e&&!JY(e);)e=e.parentElement;return e?e.classList.contains("cdk-nested-tree-node")?bd(e.getAttribute("aria-level")):0:-1}(this._elementRef.nativeElement),this._elementRef.nativeElement.setAttribute("aria-level",`${this.level+1}`)}ngDoCheck(){this.isExpanded!=this._isAriaExpanded&&this._setExpanded(this.isExpanded)}ngOnDestroy(){t.mostRecentTreeNode===this&&(t.mostRecentTreeNode=null),this._dataChanges.complete(),this._destroyed.next(),this._destroyed.complete()}focus(){this._elementRef.nativeElement.focus()}_setRoleFromData(){this.role="treeitem"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY))},t.\u0275dir=se({type:t,selectors:[["cdk-tree-node"]],inputs:{role:"role"},exportAs:["cdkTreeNode"]}),t.mostRecentTreeNode=null,t})();function JY(t){const e=t.classList;return!(!(null==e?void 0:e.contains("cdk-nested-tree-node"))&&!(null==e?void 0:e.contains("cdk-tree")))}const tK=/([A-Za-z%]+)$/;let eK=(()=>{class t{constructor(t,e,n,i){this._treeNode=t,this._tree=e,this._element=n,this._dir=i,this._destroyed=new P,this.indentUnits="px",this._indent=40,this._setPadding(),i&&i.change.pipe(Wd(this._destroyed)).subscribe(()=>this._setPadding(!0)),t._dataChanges.subscribe(()=>this._setPadding())}get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}ngOnDestroy(){this._destroyed.next(),this._destroyed.complete()}_paddingIndent(){const t=this._treeNode.data&&this._tree.treeControl.getLevel?this._tree.treeControl.getLevel(this._treeNode.data):null,e=null==this._level?t:this._level;return"number"==typeof e?`${e*this._indent}${this.indentUnits}`:null}_setPadding(t=!1){const e=this._paddingIndent();if(e!==this._currentPadding||t){const t=this._element.nativeElement,n=this._dir&&"rtl"===this._dir.value?"paddingRight":"paddingLeft",i="paddingLeft"===n?"paddingRight":"paddingLeft";t.style[n]=e||"",t.style[i]="",this._currentPadding=e}}_setLevelInput(t){this._level=bd(t,null),this._setPadding()}_setIndentInput(t){let e=t,n="px";if("string"==typeof t){const i=t.split(tK);e=i[0],n=i[1]||n}this.indentUnits=n,this._indent=bd(e),this._setPadding()}}return t.\u0275fac=function(e){return new(e||t)(ea(ZY),ea(QY),ea(kl),ea(Op,8))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodePadding",""]],inputs:{level:["cdkTreeNodePadding","level"],indent:["cdkTreeNodePaddingIndent","indent"]}}),t})(),nK=(()=>{class t{constructor(t,e){this._tree=t,this._treeNode=e,this._recursive=!1}get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}_toggle(t){this.recursive?this._tree.treeControl.toggleDescendants(this._treeNode.data):this._tree.treeControl.toggle(this._treeNode.data),t.stopPropagation()}}return t.\u0275fac=function(e){return new(e||t)(ea(QY),ea(ZY))},t.\u0275dir=se({type:t,selectors:[["","cdkTreeNodeToggle",""]],hostBindings:function(t,e){1&t&&fa("click",function(t){return e._toggle(t)})},inputs:{recursive:["cdkTreeNodeToggleRecursive","recursive"]}}),t})(),iK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({}),t})();const rK=By(Ly(ZY));let sK=(()=>{class t extends rK{constructor(t,e,n){super(t,e),this.tabIndex=Number(n)||0,t.nativeElement.classList.add("mat-tree-node")}ngOnInit(){super.ngOnInit()}ngDoCheck(){super.ngDoCheck()}ngOnDestroy(){super.ngOnDestroy()}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(QY),ni("tabindex"))},t.\u0275dir=se({type:t,selectors:[["mat-tree-node"]],inputs:{role:"role",disabled:"disabled",tabIndex:"tabIndex"},exportAs:["matTreeNode"],features:[_l([{provide:ZY,useExisting:t}]),jo]}),t})(),oK=(()=>{class t extends KY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeDef",""]],inputs:{when:["matTreeNodeDefWhen","when"],data:["matTreeNode","data"]},features:[_l([{provide:KY,useExisting:t}]),jo]}),t})(),aK=(()=>{class t extends eK{get level(){return this._level}set level(t){this._setLevelInput(t)}get indent(){return this._indent}set indent(t){this._setIndentInput(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodePadding",""]],inputs:{level:["matTreeNodePadding","level"],indent:["matTreeNodePaddingIndent","indent"]},features:[_l([{provide:eK,useExisting:t}]),jo]}),t})(),lK=(()=>{class t{constructor(t,e){this.viewContainer=t,this._node=e}}return t.\u0275fac=function(e){return new(e||t)(ea(hc),ea(qY,8))},t.\u0275dir=se({type:t,selectors:[["","matTreeNodeOutlet",""]],features:[_l([{provide:XY,useExisting:t}])]}),t})(),cK=(()=>{class t extends QY{}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275cmp=Jt({type:t,selectors:[["mat-tree"]],viewQuery:function(t,e){if(1&t&&qc(lK,7),2&t){let t;Wc(t=Yc())&&(e._nodeOutlet=t.first)}},hostAttrs:["role","tree",1,"mat-tree","cdk-tree"],exportAs:["matTree"],features:[_l([{provide:QY,useExisting:t}]),jo],decls:1,vars:0,consts:[["matTreeNodeOutlet",""]],template:function(t,e){1&t&&ca(0,0)},directives:[lK],styles:[".mat-tree{display:block}.mat-tree-node{display:flex;align-items:center;flex:1;word-wrap:break-word}.mat-nested-tree-node{border-bottom-width:0}\n"],encapsulation:2}),t})(),uK=(()=>{class t extends nK{get recursive(){return this._recursive}set recursive(t){this._recursive=md(t)}}return t.\u0275fac=function(){let e;return function(n){return(e||(e=ti(t)))(n||t)}}(),t.\u0275dir=se({type:t,selectors:[["","matTreeNodeToggle",""]],inputs:{recursive:["matTreeNodeToggleRecursive","recursive"]},features:[_l([{provide:nK,useExisting:t}]),jo]}),t})(),hK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[iK,Ny],Ny]}),t})();class dK{constructor(t,e,n,i){this.transformFunction=t,this.getLevel=e,this.isExpandable=n,this.getChildren=i}_flattenNode(t,e,n,i){const r=this.transformFunction(t,e);if(n.push(r),this.isExpandable(r)){const r=this.getChildren(t);r&&(Array.isArray(r)?this._flattenChildren(r,e,n,i):r.pipe(Gp(1)).subscribe(t=>{this._flattenChildren(t,e,n,i)}))}return n}_flattenChildren(t,e,n,i){t.forEach((r,s)=>{let o=i.slice();o.push(s!=t.length-1),this._flattenNode(r,e+1,n,o)})}flattenNodes(t){let e=[];return t.forEach(t=>this._flattenNode(t,0,e,[])),e}expandFlattenedNodes(t,e){let n=[],i=[];return i[0]=!0,t.forEach(t=>{let r=!0;for(let e=0;e<=this.getLevel(t);e++)r=r&&i[e];r&&n.push(t),this.isExpandable(t)&&(i[this.getLevel(t)+1]=e.isExpanded(t))}),n}}class pK extends class{}{constructor(t,e,n){super(),this._treeControl=t,this._treeFlattener=e,this._flattenedData=new Uf([]),this._expandedData=new Uf([]),this._data=new Uf([]),n&&(this.data=n)}get data(){return this._data.value}set data(t){this._data.next(t),this._flattenedData.next(this._treeFlattener.flattenNodes(this.data)),this._treeControl.dataNodes=this._flattenedData.value}connect(t){return Q(t.viewChange,this._treeControl.expansionModel.changed,this._flattenedData).pipe(D(()=>(this._expandedData.next(this._treeFlattener.expandFlattenedNodes(this._flattenedData.value,this._treeControl)),this._expandedData.value)))}disconnect(){}}let fK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,rw,hK,tq]]}),t})(),gK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK]]}),t})(),mK=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,GY,fK,gK],GY,fK,gK]}),t})();function bK(t){return null!==t&&"object"==typeof t&&"constructor"in t&&t.constructor===Object}function yK(t,e){void 0===t&&(t={}),void 0===e&&(e={}),Object.keys(e).forEach(function(n){void 0===t[n]?t[n]=e[n]:bK(e[n])&&bK(t[n])&&Object.keys(e[n]).length>0&&yK(t[n],e[n])})}var vK={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};function _K(){var t="undefined"!=typeof document?document:{};return yK(t,vK),t}var wK={document:vK,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}},requestAnimationFrame:function(t){return"undefined"==typeof setTimeout?(t(),null):setTimeout(t,0)},cancelAnimationFrame:function(t){"undefined"!=typeof setTimeout&&clearTimeout(t)}};function xK(){var t="undefined"!=typeof window?window:{};return yK(t,wK),t}function SK(t){return(SK=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function EK(t,e){return(EK=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function CK(){if("undefined"==typeof Reflect||!Reflect.construct||Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(m){return!1}}function OK(t,e,n){return(OK=CK()?Reflect.construct:function(t,e,n){var i=[null];i.push.apply(i,e);var r=new(Function.bind.apply(t,i));return n&&EK(r,n.prototype),r}).apply(null,arguments)}function TK(t){var e="function"==typeof Map?new Map:void 0;return(TK=function(t){if(null===t||!function(t){return-1!==Function.toString.call(t).indexOf("[native code]")}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return OK(t,arguments,SK(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),EK(n,t)})(t)}var kK=function(t){function e(e){var n;return function(t){var e=t.__proto__;Object.defineProperty(t,"__proto__",{get:function(){return e},set:function(t){e.__proto__=t}})}(function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(n=t.call.apply(t,[this].concat(e))||this)),n}return function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}(e,t),e}(TK(Array));function AK(t){void 0===t&&(t=[]);var e=[];return t.forEach(function(t){Array.isArray(t)?e.push.apply(e,AK(t)):e.push(t)}),e}function PK(t,e){return Array.prototype.filter.call(t,e)}function MK(t,e){var n=xK(),i=_K(),r=[];if(!e&&t instanceof kK)return t;if(!t)return new kK(r);if("string"==typeof t){var s=t.trim();if(s.indexOf("<")>=0&&s.indexOf(">")>=0){var o="div";0===s.indexOf("0}).length>0},toggleClass:function(){for(var t=arguments.length,e=new Array(t),n=0;n=0;p-=1){var f=d[p];s&&f.listener===s||s&&f.listener&&f.listener.dom7proxy&&f.listener.dom7proxy===s?(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1)):s||(h.removeEventListener(c,f.proxyListener,o),d.splice(p,1))}}return this},trigger:function(){for(var t=xK(),e=arguments.length,n=new Array(e),i=0;i0}),c.dispatchEvent(u),c.dom7EventData=[],delete c.dom7EventData}}return this},transitionEnd:function(t){var e=this;return t&&e.on("transitionend",function n(i){i.target===this&&(t.call(this,i),e.off("transitionend",n))}),this},outerWidth:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetWidth+parseFloat(e.getPropertyValue("margin-right"))+parseFloat(e.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(t){if(this.length>0){if(t){var e=this.styles();return this[0].offsetHeight+parseFloat(e.getPropertyValue("margin-top"))+parseFloat(e.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},styles:function(){var t=xK();return this[0]?t.getComputedStyle(this[0],null):{}},offset:function(){if(this.length>0){var t=xK(),e=_K(),n=this[0],i=n.getBoundingClientRect(),r=e.body;return{top:i.top+(n===t?t.scrollY:n.scrollTop)-(n.clientTop||r.clientTop||0),left:i.left+(n===t?t.scrollX:n.scrollLeft)-(n.clientLeft||r.clientLeft||0)}}return null},css:function(t,e){var n,i=xK();if(1===arguments.length){if("string"!=typeof t){for(n=0;ne-1)return MK([]);if(t<0){var n=e+t;return MK(n<0?[]:[this[n]])}return MK([this[t]])},append:function(){for(var t,e=_K(),n=0;n=0;n-=1)this[e].insertBefore(r.childNodes[n],this[e].childNodes[0])}else if(t instanceof kK)for(n=0;n0?t?this[0].nextElementSibling&&MK(this[0].nextElementSibling).is(t)?MK([this[0].nextElementSibling]):MK([]):MK(this[0].nextElementSibling?[this[0].nextElementSibling]:[]):MK([])},nextAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.nextElementSibling;){var i=n.nextElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},prev:function(t){if(this.length>0){var e=this[0];return t?e.previousElementSibling&&MK(e.previousElementSibling).is(t)?MK([e.previousElementSibling]):MK([]):MK(e.previousElementSibling?[e.previousElementSibling]:[])}return MK([])},prevAll:function(t){var e=[],n=this[0];if(!n)return MK([]);for(;n.previousElementSibling;){var i=n.previousElementSibling;t?MK(i).is(t)&&e.push(i):e.push(i),n=i}return MK(e)},parent:function(t){for(var e=[],n=0;n=0,observer:"MutationObserver"in t||"WebkitMutationObserver"in t,passiveListener:function(){var e=!1;try{var n=Object.defineProperty({},"passive",{get:function(){e=!0}});t.addEventListener("testPassiveListener",null,n)}catch(i){}return e}(),gestures:"ongesturestart"in t}}()),NK}function WK(t){return void 0===t&&(t={}),LK||(LK=function(t){var e=(void 0===t?{}:t).userAgent,n=GK(),i=xK(),r=i.navigator.platform,s=e||i.navigator.userAgent,o={ios:!1,android:!1},a=i.screen.width,l=i.screen.height,c=s.match(/(Android);?[\s\/]+([\d.]+)?/),u=s.match(/(iPad).*OS\s([\d_]+)/),h=s.match(/(iPod)(.*OS\s([\d_]+))?/),d=!u&&s.match(/(iPhone\sOS|iOS)\s([\d_]+)/),p="Win32"===r,f="MacIntel"===r;return!u&&f&&n.touch&&["1024x1366","1366x1024","834x1194","1194x834","834x1112","1112x834","768x1024","1024x768","820x1180","1180x820","810x1080","1080x810"].indexOf(a+"x"+l)>=0&&((u=s.match(/(Version)\/([\d.]+)/))||(u=[0,1,"13_0_0"]),f=!1),c&&!p&&(o.os="android",o.android=!0),(u||d||h)&&(o.os="ios",o.ios=!0),o}(t)),LK}function qK(){return jK||(jK=function(){var t,e=xK();return{isEdge:!!e.navigator.userAgent.match(/Edge/g),isSafari:(t=e.navigator.userAgent.toLowerCase(),t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent)}}()),jK}var XK={name:"resize",create:function(){var t=this;HK(t,{resize:{observer:null,createObserver:function(){!t||t.destroyed||!t.initialized||(t.resize.observer=new ResizeObserver(function(e){var n=t.width,i=t.height,r=n,s=i;e.forEach(function(e){var n=e.contentBoxSize,i=e.contentRect,o=e.target;o&&o!==t.el||(r=i?i.width:(n[0]||n).inlineSize,s=i?i.height:(n[0]||n).blockSize)}),(r!==n||s!==i)&&t.resize.resizeHandler()}),t.resize.observer.observe(t.el))},removeObserver:function(){t.resize.observer&&t.resize.observer.unobserve&&t.el&&(t.resize.observer.unobserve(t.el),t.resize.observer=null)},resizeHandler:function(){!t||t.destroyed||!t.initialized||(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler:function(){!t||t.destroyed||!t.initialized||t.emit("orientationchange")}}})},on:{init:function(t){var e=xK();t.params.resizeObserver&&void 0!==xK().ResizeObserver?t.resize.createObserver():(e.addEventListener("resize",t.resize.resizeHandler),e.addEventListener("orientationchange",t.resize.orientationChangeHandler))},destroy:function(t){var e=xK();t.resize.removeObserver(),e.removeEventListener("resize",t.resize.resizeHandler),e.removeEventListener("orientationchange",t.resize.orientationChangeHandler)}}};function YK(){return(YK=Object.assign||function(t){for(var e=1;e0)&&(!r.isTouched||!r.isMoved))){s.noSwipingClass&&""!==s.noSwipingClass&&a.target&&a.target.shadowRoot&&t.path&&t.path[0]&&(l=FK(t.path[0]));var c=s.noSwipingSelector?s.noSwipingSelector:"."+s.noSwipingClass;if(s.noSwiping&&(a.target&&a.target.shadowRoot?function(t,e){return void 0===e&&(e=this),function e(n){return n&&n!==_K()&&n!==xK()?(n.assignedSlot&&(n=n.assignedSlot),n.closest(t)||e(n.getRootNode().host)):null}(e)}(c,a.target):l.closest(c)[0]))return void(e.allowClick=!0);if(!s.swipeHandler||l.closest(s.swipeHandler)[0]){o.currentX="touchstart"===a.type?a.targetTouches[0].pageX:a.pageX,o.currentY="touchstart"===a.type?a.targetTouches[0].pageY:a.pageY;var u=o.currentX,h=o.currentY,d=s.edgeSwipeDetection||s.iOSEdgeSwipeDetection,p=s.edgeSwipeThreshold||s.iOSEdgeSwipeThreshold;if(d&&(u<=p||u>=i.innerWidth-p)){if("prevent"!==d)return;t.preventDefault()}if(HK(r,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),o.startX=u,o.startY=h,r.touchStartTime=VK(),e.allowClick=!0,e.updateSize(),e.swipeDirection=void 0,s.threshold>0&&(r.allowThresholdMove=!1),"touchstart"!==a.type){var f=!0;l.is(r.focusableElements)&&(f=!1),n.activeElement&&FK(n.activeElement).is(r.focusableElements)&&n.activeElement!==l[0]&&n.activeElement.blur(),(s.touchStartForcePreventDefault||f&&e.allowTouchMove&&s.touchStartPreventDefault)&&!l[0].isContentEditable&&a.preventDefault()}e.emit("touchStart",a)}}}}function JK(t){var e=_K(),n=this,i=n.touchEventsData,r=n.params,s=n.touches,o=n.rtlTranslate;if(n.enabled){var a=t;if(a.originalEvent&&(a=a.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&n.emit("touchMoveOpposite",a));if(!i.isTouchEvent||"touchmove"===a.type){var l="touchmove"===a.type&&a.targetTouches&&(a.targetTouches[0]||a.changedTouches[0]),c="touchmove"===a.type?l.pageX:a.pageX,u="touchmove"===a.type?l.pageY:a.pageY;if(a.preventedByNestedSwiper)return s.startX=c,void(s.startY=u);if(!n.allowTouchMove)return n.allowClick=!1,void(i.isTouched&&(HK(s,{startX:c,startY:u,currentX:c,currentY:u}),i.touchStartTime=VK()));if(i.isTouchEvent&&r.touchReleaseOnEdges&&!r.loop)if(n.isVertical()){if(us.startY&&n.translate>=n.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(cs.startX&&n.translate>=n.minTranslate())return;if(i.isTouchEvent&&e.activeElement&&a.target===e.activeElement&&FK(a.target).is(i.focusableElements))return i.isMoved=!0,void(n.allowClick=!1);if(i.allowTouchCallbacks&&n.emit("touchMove",a),!(a.targetTouches&&a.targetTouches.length>1)){s.currentX=c,s.currentY=u;var h=s.currentX-s.startX,d=s.currentY-s.startY;if(!(n.params.threshold&&Math.sqrt(Math.pow(h,2)+Math.pow(d,2))=25&&(p=180*Math.atan2(Math.abs(d),Math.abs(h))/Math.PI,i.isScrolling=n.isHorizontal()?p>r.touchAngle:90-p>r.touchAngle)),i.isScrolling&&n.emit("touchMoveOpposite",a),void 0===i.startMoving&&(s.currentX!==s.startX||s.currentY!==s.startY)&&(i.startMoving=!0),i.isScrolling)return void(i.isTouched=!1);if(i.startMoving){n.allowClick=!1,!r.cssMode&&a.cancelable&&a.preventDefault(),r.touchMoveStopPropagation&&!r.nested&&a.stopPropagation(),i.isMoved||(r.loop&&n.loopFix(),i.startTranslate=n.getTranslate(),n.setTransition(0),n.animating&&n.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,r.grabCursor&&(!0===n.allowSlideNext||!0===n.allowSlidePrev)&&n.setGrabCursor(!0),n.emit("sliderFirstMove",a)),n.emit("sliderMove",a),i.isMoved=!0;var f=n.isHorizontal()?h:d;s.diff=f,f*=r.touchRatio,o&&(f=-f),n.swipeDirection=f>0?"prev":"next",i.currentTranslate=f+i.startTranslate;var g=!0,m=r.resistanceRatio;if(r.touchReleaseOnEdges&&(m=0),f>0&&i.currentTranslate>n.minTranslate()?(g=!1,r.resistance&&(i.currentTranslate=n.minTranslate()-1+Math.pow(-n.minTranslate()+i.startTranslate+f,m))):f<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),!n.allowSlidePrev&&!n.allowSlideNext&&(i.currentTranslate=i.startTranslate),r.threshold>0){if(!(Math.abs(f)>r.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,s.startX=s.currentX,s.startY=s.currentY,i.currentTranslate=i.startTranslate,void(s.diff=n.isHorizontal()?s.currentX-s.startX:s.currentY-s.startY)}!r.followFinger||r.cssMode||((r.freeMode||r.watchSlidesProgress||r.watchSlidesVisibility)&&(n.updateActiveIndex(),n.updateSlidesClasses()),r.freeMode&&(0===i.velocities.length&&i.velocities.push({position:s[n.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:s[n.isHorizontal()?"currentX":"currentY"],time:VK()})),n.updateProgress(i.currentTranslate),n.setTranslate(i.currentTranslate))}}}}}}function tQ(t){var e=this,n=e.touchEventsData,i=e.params,r=e.touches,s=e.rtlTranslate,o=e.$wrapperEl,a=e.slidesGrid,l=e.snapGrid;if(e.enabled){var c=t;if(c.originalEvent&&(c=c.originalEvent),n.allowTouchCallbacks&&e.emit("touchEnd",c),n.allowTouchCallbacks=!1,!n.isTouched)return n.isMoved&&i.grabCursor&&e.setGrabCursor(!1),n.isMoved=!1,void(n.startMoving=!1);i.grabCursor&&n.isMoved&&n.isTouched&&(!0===e.allowSlideNext||!0===e.allowSlidePrev)&&e.setGrabCursor(!1);var u,h=VK(),d=h-n.touchStartTime;if(e.allowClick&&(e.updateClickedSlide(c),e.emit("tap click",c),d<300&&h-n.lastClickTime<300&&e.emit("doubleTap doubleClick",c)),n.lastClickTime=VK(),BK(function(){e.destroyed||(e.allowClick=!0)}),!n.isTouched||!n.isMoved||!e.swipeDirection||0===r.diff||n.currentTranslate===n.startTranslate)return n.isTouched=!1,n.isMoved=!1,void(n.startMoving=!1);if(n.isTouched=!1,n.isMoved=!1,n.startMoving=!1,u=i.followFinger?s?e.translate:-e.translate:-n.currentTranslate,!i.cssMode){if(i.freeMode){if(u<-e.minTranslate())return void e.slideTo(e.activeIndex);if(u>-e.maxTranslate())return void e.slideTo(e.slides.length1){var p=n.velocities.pop(),f=n.velocities.pop(),g=p.time-f.time;e.velocity=(p.position-f.position)/g,e.velocity/=2,Math.abs(e.velocity)150||VK()-p.time>300)&&(e.velocity=0)}else e.velocity=0;e.velocity*=i.freeModeMomentumVelocityRatio,n.velocities.length=0;var m=1e3*i.freeModeMomentumRatio,b=e.translate+e.velocity*m;s&&(b=-b);var y,v,_=!1,w=20*Math.abs(e.velocity)*i.freeModeMomentumBounceRatio;if(be.minTranslate())i.freeModeMomentumBounce?(b-e.minTranslate()>w&&(b=e.minTranslate()+w),y=e.minTranslate(),_=!0,n.allowMomentumBounce=!0):b=e.minTranslate(),i.loop&&i.centeredSlides&&(v=!0);else if(i.freeModeSticky){for(var x,S=0;S-b){x=S;break}b=-(b=Math.abs(l[x]-b)=i.longSwipesMs)&&(e.updateProgress(),e.updateActiveIndex(),e.updateSlidesClasses()))}for(var O=0,T=e.slidesSizesGrid[0],k=0;k=a[k]&&u=a[k]&&(O=k,T=a[a.length-1]-a[a.length-2])}var P=(u-a[O])/T,M=Oi.longSwipesMs){if(!i.longSwipes)return void e.slideTo(e.activeIndex);"next"===e.swipeDirection&&e.slideTo(P>=i.longSwipesRatio?O+M:O),"prev"===e.swipeDirection&&e.slideTo(P>1-i.longSwipesRatio?O+M:O)}else{if(!i.shortSwipes)return void e.slideTo(e.activeIndex);!e.navigation||c.target!==e.navigation.nextEl&&c.target!==e.navigation.prevEl?("next"===e.swipeDirection&&e.slideTo(O+M),"prev"===e.swipeDirection&&e.slideTo(O)):e.slideTo(c.target===e.navigation.nextEl?O+M:O)}}}}function eQ(){var t=this,e=t.params,n=t.el;if(!n||0!==n.offsetWidth){e.breakpoints&&t.setBreakpoint();var i=t.allowSlideNext,r=t.allowSlidePrev,s=t.snapGrid;t.allowSlideNext=!0,t.allowSlidePrev=!0,t.updateSize(),t.updateSlides(),t.updateSlidesClasses(),t.slideTo(("auto"===e.slidesPerView||e.slidesPerView>1)&&t.isEnd&&!t.isBeginning&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0),t.autoplay&&t.autoplay.running&&t.autoplay.paused&&t.autoplay.run(),t.allowSlidePrev=r,t.allowSlideNext=i,t.params.watchOverflow&&s!==t.snapGrid&&t.checkOverflow()}}function nQ(t){var e=this;!e.enabled||e.allowClick||(e.params.preventClicks&&t.preventDefault(),e.params.preventClicksPropagation&&e.animating&&(t.stopPropagation(),t.stopImmediatePropagation()))}function iQ(){var t=this,e=t.wrapperEl,n=t.rtlTranslate;if(t.enabled){t.previousTranslate=t.translate,t.translate=t.isHorizontal()?n?e.scrollWidth-e.offsetWidth-e.scrollLeft:-e.scrollLeft:-e.scrollTop,-0===t.translate&&(t.translate=0),t.updateActiveIndex(),t.updateSlidesClasses();var i=t.maxTranslate()-t.minTranslate();(0===i?0:(t.translate-t.minTranslate())/i)!==t.progress&&t.updateProgress(n?-t.translate:t.translate),t.emit("setTranslate",t.translate,!1)}}var rQ=!1;function sQ(){}var oQ={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,resizeObserver:!1,nested:!1,createElements:!1,enabled:!0,focusableElements:"input, select, option, textarea, button, video, label",width:null,height:null,preventInteractionOnTransition:!1,userAgent:null,url:null,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,breakpointsBase:"window",spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,loopPreventsSlide:!0,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0,_emitClasses:!1};function aQ(t,e){for(var n=0;n=0&&e.eventsAnyListeners.splice(n,1),e},off:function(t,e){var n=this;return n.eventsListeners&&t.split(" ").forEach(function(t){void 0===e?n.eventsListeners[t]=[]:n.eventsListeners[t]&&n.eventsListeners[t].forEach(function(i,r){(i===e||i.__emitterProxy&&i.__emitterProxy===e)&&n.eventsListeners[t].splice(r,1)})}),n},emit:function(){var t=this;if(!t.eventsListeners)return t;for(var e,n,i,r=arguments.length,s=new Array(r),o=0;o=0&&(v=parseFloat(v.replace("%",""))/100*s),t.virtualSize=-v,u.css(o?{marginLeft:"",marginBottom:"",marginTop:""}:{marginRight:"",marginBottom:"",marginTop:""}),i.slidesPerColumn>1&&(S=Math.floor(h/i.slidesPerColumn)===h/t.params.slidesPerColumn?h:Math.ceil(h/i.slidesPerColumn)*i.slidesPerColumn,"auto"!==i.slidesPerView&&"row"===i.slidesPerColumnFill&&(S=Math.max(S,i.slidesPerView*i.slidesPerColumn)));for(var T,k=i.slidesPerColumn,A=S/k,P=Math.floor(h/i.slidesPerColumn),M=0;M1){var D=void 0,R=void 0,N=void 0;if("row"===i.slidesPerColumnFill&&i.slidesPerGroup>1){var L=Math.floor(M/(i.slidesPerGroup*i.slidesPerColumn)),j=M-i.slidesPerColumn*i.slidesPerGroup*L,F=0===L?i.slidesPerGroup:Math.min(Math.ceil((h-L*k*i.slidesPerGroup)/k),i.slidesPerGroup);N=Math.floor(j/F),I.css({"-webkit-box-ordinal-group":D=(R=j-N*F+L*i.slidesPerGroup)+N*S/k,"-moz-box-ordinal-group":D,"-ms-flex-order":D,"-webkit-order":D,order:D})}else"column"===i.slidesPerColumnFill?(N=M-(R=Math.floor(M/k))*k,(R>P||R===P&&N===k-1)&&(N+=1)>=k&&(N=0,R+=1)):R=M-(N=Math.floor(M/A))*A;I.css(e("margin-top"),0!==N?i.spaceBetween&&i.spaceBetween+"px":"")}if("none"!==I.css("display")){if("auto"===i.slidesPerView){var B=getComputedStyle(I[0]),V=I[0].style.transform,z=I[0].style.webkitTransform;if(V&&(I[0].style.transform="none"),z&&(I[0].style.webkitTransform="none"),i.roundLengths)T=t.isHorizontal()?I.outerWidth(!0):I.outerHeight(!0);else{var U=n(B,"width"),H=n(B,"padding-left"),$=n(B,"padding-right"),G=n(B,"margin-left"),W=n(B,"margin-right"),q=B.getPropertyValue("box-sizing");if(q&&"border-box"===q)T=U+G+W;else{var X=I[0];T=U+H+$+G+W+(X.offsetWidth-X.clientWidth)}}V&&(I[0].style.transform=V),z&&(I[0].style.webkitTransform=z),i.roundLengths&&(T=Math.floor(T))}else T=(s-(i.slidesPerView-1)*v)/i.slidesPerView,i.roundLengths&&(T=Math.floor(T)),u[M]&&(u[M].style[e("width")]=T+"px");u[M]&&(u[M].swiperSlideSize=T),f.push(T),i.centeredSlides?(_=_+T/2+w/2+v,0===w&&0!==M&&(_=_-s/2-v),0===M&&(_=_-s/2-v),Math.abs(_)<.001&&(_=0),i.roundLengths&&(_=Math.floor(_)),x%i.slidesPerGroup==0&&d.push(_),p.push(_)):(i.roundLengths&&(_=Math.floor(_)),(x-Math.min(t.params.slidesPerGroupSkip,x))%t.params.slidesPerGroup==0&&d.push(_),p.push(_),_=_+T+v),t.virtualSize+=T+v,w=T,x+=1}}if(t.virtualSize=Math.max(t.virtualSize,s)+m,o&&a&&("slide"===i.effect||"coverflow"===i.effect)&&r.css({width:t.virtualSize+i.spaceBetween+"px"}),i.setWrapperSize&&r.css(((C={})[e("width")]=t.virtualSize+i.spaceBetween+"px",C)),i.slidesPerColumn>1&&(t.virtualSize=(T+i.spaceBetween)*S,t.virtualSize=Math.ceil(t.virtualSize/i.slidesPerColumn)-i.spaceBetween,r.css(((O={})[e("width")]=t.virtualSize+i.spaceBetween+"px",O)),i.centeredSlides)){E=[];for(var Y=0;Y1&&d.push(t.virtualSize-s)}if(0===d.length&&(d=[0]),0!==i.spaceBetween){var J,tt=t.isHorizontal()&&o?"marginLeft":e("marginRight");u.filter(function(t,e){return!i.cssMode||e!==u.length-1}).css(((J={})[tt]=v+"px",J))}if(i.centeredSlides&&i.centeredSlidesBounds){var et=0;f.forEach(function(t){et+=t+(i.spaceBetween?i.spaceBetween:0)});var nt=(et-=i.spaceBetween)-s;d=d.map(function(t){return t<0?-g:t>nt?nt+m:t})}if(i.centerInsufficientSlides){var it=0;if(f.forEach(function(t){it+=t+(i.spaceBetween?i.spaceBetween:0)}),(it-=i.spaceBetween)1)if(n.params.centeredSlides)n.visibleSlides.each(function(t){i.push(t)});else for(e=0;en.slides.length&&!r)break;i.push(o(a))}else i.push(o(n.activeIndex));for(e=0;es?l:s}s&&n.$wrapperEl.css("height",s+"px")},updateSlidesOffset:function(){for(var t=this.slides,e=0;e=0&&c1&&u<=e.size||c<=0&&u>=e.size)&&(e.visibleSlides.push(a),e.visibleSlidesIndexes.push(o),i.eq(o).addClass(n.slideVisibleClass))}a.progress=r?-l:l}e.visibleSlides=FK(e.visibleSlides)}},updateProgress:function(t){var e=this;void 0===t&&(t=e&&e.translate&&e.translate*(e.rtlTranslate?-1:1)||0);var n=e.params,i=e.maxTranslate()-e.minTranslate(),r=e.progress,s=e.isBeginning,o=e.isEnd,a=s,l=o;0===i?(r=0,s=!0,o=!0):(s=(r=(t-e.minTranslate())/i)<=0,o=r>=1),HK(e,{progress:r,isBeginning:s,isEnd:o}),(n.watchSlidesProgress||n.watchSlidesVisibility||n.centeredSlides&&n.autoHeight)&&e.updateSlidesProgress(t),s&&!a&&e.emit("reachBeginning toEdge"),o&&!l&&e.emit("reachEnd toEdge"),(a&&!s||l&&!o)&&e.emit("fromEdge"),e.emit("progress",r)},updateSlidesClasses:function(){var t,e=this,n=e.slides,i=e.params,r=e.$wrapperEl,s=e.activeIndex,o=e.realIndex,a=e.virtual&&i.virtual.enabled;n.removeClass(i.slideActiveClass+" "+i.slideNextClass+" "+i.slidePrevClass+" "+i.slideDuplicateActiveClass+" "+i.slideDuplicateNextClass+" "+i.slideDuplicatePrevClass),(t=a?e.$wrapperEl.find("."+i.slideClass+'[data-swiper-slide-index="'+s+'"]'):n.eq(s)).addClass(i.slideActiveClass),i.loop&&(t.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+o+'"]').addClass(i.slideDuplicateActiveClass));var l=t.nextAll("."+i.slideClass).eq(0).addClass(i.slideNextClass);i.loop&&0===l.length&&(l=n.eq(0)).addClass(i.slideNextClass);var c=t.prevAll("."+i.slideClass).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=n.eq(-1)).addClass(i.slidePrevClass),i.loop&&(l.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+l.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?r.children("."+i.slideClass+":not(."+i.slideDuplicateClass+')[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass):r.children("."+i.slideClass+"."+i.slideDuplicateClass+'[data-swiper-slide-index="'+c.attr("data-swiper-slide-index")+'"]').addClass(i.slideDuplicatePrevClass)),e.emitSlidesClasses()},updateActiveIndex:function(t){var e,n=this,i=n.rtlTranslate?n.translate:-n.translate,r=n.slidesGrid,s=n.snapGrid,o=n.params,a=n.activeIndex,l=n.realIndex,c=n.snapIndex,u=t;if(void 0===u){for(var h=0;h=r[h]&&i=r[h]&&i=r[h]&&(u=h);o.normalizeSlideIndex&&(u<0||void 0===u)&&(u=0)}if(s.indexOf(i)>=0)e=s.indexOf(i);else{var d=Math.min(o.slidesPerGroupSkip,u);e=d+Math.floor((u-d)/o.slidesPerGroup)}if(e>=s.length&&(e=s.length-1),u!==a){var p=parseInt(n.slides.eq(u).attr("data-swiper-slide-index")||u,10);HK(n,{snapIndex:e,realIndex:p,previousIndex:a,activeIndex:u}),n.emit("activeIndexChange"),n.emit("snapIndexChange"),l!==p&&n.emit("realIndexChange"),(n.initialized||n.params.runCallbacksOnInit)&&n.emit("slideChange")}else e!==c&&(n.snapIndex=e,n.emit("snapIndexChange"))},updateClickedSlide:function(t){var e,n=this,i=n.params,r=FK(t.target).closest("."+i.slideClass)[0],s=!1;if(r)for(var o=0;o6&&(i=i.split(", ").map(function(t){return t.replace(",",".")}).join(", ")),r=new s.WebKitCSSMatrix("none"===i?"":i)):n=(r=o.MozTransform||o.OTransform||o.MsTransform||o.msTransform||o.transform||o.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,")).toString().split(","),"x"===e&&(i=s.WebKitCSSMatrix?r.m41:16===n.length?parseFloat(n[12]):parseFloat(n[4])),"y"===e&&(i=s.WebKitCSSMatrix?r.m42:16===n.length?parseFloat(n[13]):parseFloat(n[5])),i||0}(e.$wrapperEl[0],t);return i&&(s=-s),s||0},setTranslate:function(t,e){var n=this,i=n.rtlTranslate,r=n.params,s=n.$wrapperEl,o=n.wrapperEl,a=n.progress,l=0,c=0;n.isHorizontal()?l=i?-t:t:c=t,r.roundLengths&&(l=Math.floor(l),c=Math.floor(c)),r.cssMode?o[n.isHorizontal()?"scrollLeft":"scrollTop"]=n.isHorizontal()?-l:-c:r.virtualTranslate||s.transform("translate3d("+l+"px, "+c+"px, 0px)"),n.previousTranslate=n.translate,n.translate=n.isHorizontal()?l:c;var u=n.maxTranslate()-n.minTranslate();(0===u?0:(t-n.minTranslate())/u)!==a&&n.updateProgress(t),n.emit("setTranslate",n.translate,e)},minTranslate:function(){return-this.snapGrid[0]},maxTranslate:function(){return-this.snapGrid[this.snapGrid.length-1]},translateTo:function(t,e,n,i,r){void 0===t&&(t=0),void 0===e&&(e=this.params.speed),void 0===n&&(n=!0),void 0===i&&(i=!0);var s=this,o=s.params,a=s.wrapperEl;if(s.animating&&o.preventInteractionOnTransition)return!1;var l,c=s.minTranslate(),u=s.maxTranslate();if(s.updateProgress(l=i&&t>c?c:i&&ts?"next":ir?"next":i=c.length&&(m=c.length-1),(d||l.initialSlide||0)===(h||0)&&n&&o.emit("beforeSlideChangeStart");var b,y=-c[m];if(o.updateProgress(y),l.normalizeSlideIndex)for(var v=0;v=w&&_=w&&_=w&&(a=v)}if(o.initialized&&a!==d&&(!o.allowSlideNext&&yo.translate&&y>o.maxTranslate()&&(d||0)!==a))return!1;if(b=a>d?"next":a=t&&(d=t)}),void 0!==d&&(c=o.indexOf(d))<0&&(c=i.activeIndex-1),i.slideTo(c,t,e,n)},slideReset:function(t,e,n){return void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),this.slideTo(this.activeIndex,t,e,n)},slideToClosest:function(t,e,n,i){void 0===t&&(t=this.params.speed),void 0===e&&(e=!0),void 0===i&&(i=.5);var r=this,s=r.activeIndex,o=Math.min(r.params.slidesPerGroupSkip,s),a=o+Math.floor((s-o)/r.params.slidesPerGroup),l=r.rtlTranslate?r.translate:-r.translate;if(l>=r.snapGrid[a]){var c=r.snapGrid[a];l-c>(r.snapGrid[a+1]-c)*i&&(s+=r.params.slidesPerGroup)}else{var u=r.snapGrid[a-1];l-u<=(r.snapGrid[a]-u)*i&&(s-=r.params.slidesPerGroup)}return s=Math.max(s,0),s=Math.min(s,r.slidesGrid.length-1),r.slideTo(s,t,e,n)},slideToClickedSlide:function(){var t,e=this,n=e.params,i=e.$wrapperEl,r="auto"===n.slidesPerView?e.slidesPerViewDynamic():n.slidesPerView,s=e.clickedIndex;if(n.loop){if(e.animating)return;t=parseInt(FK(e.clickedSlide).attr("data-swiper-slide-index"),10),n.centeredSlides?se.slides.length-e.loopedSlides+r/2?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s):s>e.slides.length-r?(e.loopFix(),s=i.children("."+n.slideClass+'[data-swiper-slide-index="'+t+'"]:not(.'+n.slideDuplicateClass+")").eq(0).index(),BK(function(){e.slideTo(s)})):e.slideTo(s)}else e.slideTo(s)}},loop:{loopCreate:function(){var t=this,e=_K(),n=t.params,i=t.$wrapperEl;i.children("."+n.slideClass+"."+n.slideDuplicateClass).remove();var r=i.children("."+n.slideClass);if(n.loopFillGroupWithBlank){var s=n.slidesPerGroup-r.length%n.slidesPerGroup;if(s!==n.slidesPerGroup){for(var o=0;or.length&&(t.loopedSlides=r.length);var l=[],c=[];r.each(function(e,n){var i=FK(e);n=r.length-t.loopedSlides&&l.push(e),i.attr("data-swiper-slide-index",n)});for(var u=0;u=0;h-=1)i.prepend(FK(l[h].cloneNode(!0)).addClass(n.slideDuplicateClass))},loopFix:function(){var t=this;t.emit("beforeLoopFix");var e,n=t.activeIndex,i=t.slides,r=t.loopedSlides,s=t.allowSlidePrev,o=t.allowSlideNext,a=t.snapGrid,l=t.rtlTranslate;t.allowSlidePrev=!0,t.allowSlideNext=!0;var c=-a[n]-t.getTranslate();n=i.length-r&&(e=-i.length+n+r,t.slideTo(e+=r,0,!1,!0)&&0!==c&&t.setTranslate((l?-t.translate:t.translate)-c)),t.allowSlidePrev=s,t.allowSlideNext=o,t.emit("loopFix")},loopDestroy:function(){var t=this,e=t.params,n=t.slides;t.$wrapperEl.children("."+e.slideClass+"."+e.slideDuplicateClass+",."+e.slideClass+"."+e.slideBlankClass).remove(),n.removeAttr("data-swiper-slide-index")}},grabCursor:{setGrabCursor:function(t){var e=this;if(!(e.support.touch||!e.params.simulateTouch||e.params.watchOverflow&&e.isLocked||e.params.cssMode)){var n=e.el;n.style.cursor="move",n.style.cursor=t?"-webkit-grabbing":"-webkit-grab",n.style.cursor=t?"-moz-grabbin":"-moz-grab",n.style.cursor=t?"grabbing":"grab"}},unsetGrabCursor:function(){var t=this;t.support.touch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(t.el.style.cursor="")}},manipulation:{appendSlide:function(t){var e=this,n=e.$wrapperEl,i=e.params;if(i.loop&&e.loopDestroy(),"object"==typeof t&&"length"in t)for(var r=0;r=o)n.appendSlide(e);else{for(var a=s>t?s+1:s,l=[],c=o-1;c>=t;c-=1){var u=n.slides.eq(c);u.remove(),l.unshift(u)}if("object"==typeof e&&"length"in e){for(var h=0;ht?s+e.length:s}else i.append(e);for(var d=0;d1,d=u.slidesPerColumn>1,p=s.enabled;h&&!d?(o.removeClass(s.containerModifierClass+"multirow "+s.containerModifierClass+"multirow-column"),t.emitContainerClasses()):!h&&d&&(o.addClass(s.containerModifierClass+"multirow"),(u.slidesPerColumnFill&&"column"===u.slidesPerColumnFill||!u.slidesPerColumnFill&&"column"===s.slidesPerColumnFill)&&o.addClass(s.containerModifierClass+"multirow-column"),t.emitContainerClasses());var f=u.direction&&u.direction!==s.direction,g=s.loop&&(u.slidesPerView!==s.slidesPerView||f);f&&n&&t.changeDirection(),HK(t.params,u);var m=t.params.enabled;HK(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev}),p&&!m?t.disable():!p&&m&&t.enable(),t.currentBreakpoint=l,t.emit("_beforeBreakpoint",u),g&&n&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(e-r+t.loopedSlides,0,!1)),t.emit("breakpoint",u)}}},getBreakpoint:function(t,e,n){if(void 0===e&&(e="window"),t&&("container"!==e||n)){var i=!1,r=xK(),s="window"===e?r.innerHeight:n.clientHeight,o=Object.keys(t).map(function(t){if("string"==typeof t&&0===t.indexOf("@")){var e=parseFloat(t.substr(1));return{value:s*e,point:t}}return{value:t,point:t}});o.sort(function(t,e){return parseInt(t.value,10)-parseInt(e.value,10)});for(var a=0;a0&&e.slidesOffsetBefore+e.spaceBetween*(t.slides.length-1)+t.slides[0].offsetWidth*t.slides.length;t.isLocked=e.slidesOffsetBefore&&e.slidesOffsetAfter&&i?i<=t.size:1===t.snapGrid.length,t.allowSlideNext=!t.isLocked,t.allowSlidePrev=!t.isLocked,n!==t.isLocked&&t.emit(t.isLocked?"lock":"unlock"),n&&n!==t.isLocked&&(t.isEnd=!1,t.navigation&&t.navigation.update())}},classes:{addClasses:function(){var t=this,e=t.classNames,n=t.params,i=t.$el,r=t.device,s=t.support,o=function(t,e){var n=[];return t.forEach(function(t){"object"==typeof t?Object.keys(t).forEach(function(i){t[i]&&n.push(e+i)}):"string"==typeof t&&n.push(e+t)}),n}(["initialized",n.direction,{"pointer-events":s.pointerEvents&&!s.touch},{"free-mode":n.freeMode},{autoheight:n.autoHeight},{rtl:t.rtl},{multirow:n.slidesPerColumn>1},{"multirow-column":n.slidesPerColumn>1&&"column"===n.slidesPerColumnFill},{android:r.android},{ios:r.ios},{"css-mode":n.cssMode}],n.containerModifierClass);e.push.apply(e,o),i.addClass([].concat(e).join(" ")),t.emitContainerClasses()},removeClasses:function(){var t=this;t.$el.removeClass(t.classNames.join(" ")),t.emitContainerClasses()}},images:{loadImage:function(t,e,n,i,r,s){var o,a=xK();function l(){s&&s()}FK(t).parent("picture")[0]||t.complete&&r||!e?l():((o=new a.Image).onload=l,o.onerror=l,i&&(o.sizes=i),n&&(o.srcset=n),e&&(o.src=e))},preloadImages:function(){var t=this;function e(){null==t||!t||t.destroyed||(void 0!==t.imagesLoaded&&(t.imagesLoaded+=1),t.imagesLoaded===t.imagesToLoad.length&&(t.params.updateOnImagesReady&&t.update(),t.emit("imagesReady")))}t.imagesToLoad=t.$el.find("img");for(var n=0;n1){var o=[];return FK(n.el).each(function(e){var i=HK({},n,{el:e});o.push(new t(i))}),o}var a=this;a.__swiper__=!0,a.support=GK(),a.device=WK({userAgent:n.userAgent}),a.browser=qK(),a.eventsListeners={},a.eventsAnyListeners=[],void 0===a.modules&&(a.modules={}),Object.keys(a.modules).forEach(function(t){var e=a.modules[t];if(e.params){var i=Object.keys(e.params)[0],r=e.params[i];if("object"!=typeof r||null===r||(["navigation","pagination","scrollbar"].indexOf(i)>=0&&!0===n[i]&&(n[i]={auto:!0}),!(i in n)||!("enabled"in r)))return;!0===n[i]&&(n[i]={enabled:!0}),"object"==typeof n[i]&&!("enabled"in n[i])&&(n[i].enabled=!0),n[i]||(n[i]={enabled:!1})}});var l,c,u=HK({},oQ);return a.useParams(u),a.params=HK({},u,cQ,n),a.originalParams=HK({},a.params),a.passedParams=HK({},n),a.params&&a.params.on&&Object.keys(a.params.on).forEach(function(t){a.on(t,a.params.on[t])}),a.params&&a.params.onAny&&a.onAny(a.params.onAny),a.$=FK,HK(a,{enabled:a.params.enabled,el:e,classNames:[],slides:FK(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal:function(){return"horizontal"===a.params.direction},isVertical:function(){return"vertical"===a.params.direction},activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:a.params.allowSlideNext,allowSlidePrev:a.params.allowSlidePrev,touchEvents:(l=["touchstart","touchmove","touchend","touchcancel"],c=["mousedown","mousemove","mouseup"],a.support.pointerEvents&&(c=["pointerdown","pointermove","pointerup"]),a.touchEventsTouch={start:l[0],move:l[1],end:l[2],cancel:l[3]},a.touchEventsDesktop={start:c[0],move:c[1],end:c[2]},a.support.touch||!a.params.simulateTouch?a.touchEventsTouch:a.touchEventsDesktop),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,focusableElements:a.params.focusableElements,lastClickTime:VK(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:a.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),a.useModules(),a.emit("_swiper"),a.params.init&&a.init(),a}var e=t.prototype;return e.enable=function(){var t=this;t.enabled||(t.enabled=!0,t.params.grabCursor&&t.setGrabCursor(),t.emit("enable"))},e.disable=function(){var t=this;!t.enabled||(t.enabled=!1,t.params.grabCursor&&t.unsetGrabCursor(),t.emit("disable"))},e.setProgress=function(t,e){var n=this;t=Math.min(Math.max(t,0),1);var i=n.minTranslate(),r=n.maxTranslate();n.translateTo((r-i)*t+i,void 0===e?0:e),n.updateActiveIndex(),n.updateSlidesClasses()},e.emitContainerClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=t.el.className.split(" ").filter(function(e){return 0===e.indexOf("swiper-container")||0===e.indexOf(t.params.containerModifierClass)});t.emit("_containerClasses",e.join(" "))}},e.getSlideClasses=function(t){var e=this;return t.className.split(" ").filter(function(t){return 0===t.indexOf("swiper-slide")||0===t.indexOf(e.params.slideClass)}).join(" ")},e.emitSlidesClasses=function(){var t=this;if(t.params._emitClasses&&t.el){var e=[];t.slides.each(function(n){var i=t.getSlideClasses(n);e.push({slideEl:n,classNames:i}),t.emit("_slideClass",n,i)}),t.emit("_slideClasses",e)}},e.slidesPerViewDynamic=function(){var t=this,e=t.slides,n=t.slidesGrid,i=t.size,r=t.activeIndex,s=1;if(t.params.centeredSlides){for(var o,a=e[r].swiperSlideSize,l=r+1;li&&(o=!0));for(var c=r-1;c>=0;c-=1)e[c]&&!o&&(s+=1,(a+=e[c].swiperSlideSize)>i&&(o=!0))}else for(var u=r+1;u1)&&t.isEnd&&!t.params.centeredSlides?t.slides.length-1:t.activeIndex,0,!1,!0)||i(),n.watchOverflow&&e!==t.snapGrid&&t.checkOverflow(),t.emit("update")}function i(){var e=Math.min(Math.max(t.rtlTranslate?-1*t.translate:t.translate,t.maxTranslate()),t.minTranslate());t.setTranslate(e),t.updateActiveIndex(),t.updateSlidesClasses()}},e.changeDirection=function(t,e){void 0===e&&(e=!0);var n=this,i=n.params.direction;return t||(t="horizontal"===i?"vertical":"horizontal"),t===i||"horizontal"!==t&&"vertical"!==t||(n.$el.removeClass(""+n.params.containerModifierClass+i).addClass(""+n.params.containerModifierClass+t),n.emitContainerClasses(),n.params.direction=t,n.slides.each(function(e){"vertical"===t?e.style.width="":e.style.height=""}),n.emit("changeDirection"),e&&n.update()),n},e.mount=function(t){var e=this;if(e.mounted)return!0;var n=FK(t||e.params.el);if(!(t=n[0]))return!1;t.swiper=e;var i=function(){return"."+(e.params.wrapperClass||"").trim().split(" ").join(".")},r=function(){if(t&&t.shadowRoot&&t.shadowRoot.querySelector){var e=FK(t.shadowRoot.querySelector(i()));return e.children=function(t){return n.children(t)},e}return n.children(i())}();if(0===r.length&&e.params.createElements){var s=_K().createElement("div");r=FK(s),s.className=e.params.wrapperClass,n.append(s),n.children("."+e.params.slideClass).each(function(t){r.append(t)})}return HK(e,{$el:n,el:t,$wrapperEl:r,wrapperEl:r[0],mounted:!0,rtl:"rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction"),rtlTranslate:"horizontal"===e.params.direction&&("rtl"===t.dir.toLowerCase()||"rtl"===n.css("direction")),wrongRTL:"-webkit-box"===r.css("display")}),!0},e.init=function(t){var e=this;return e.initialized||!1===e.mount(t)||(e.emit("beforeInit"),e.params.breakpoints&&e.setBreakpoint(),e.addClasses(),e.params.loop&&e.loopCreate(),e.updateSize(),e.updateSlides(),e.params.watchOverflow&&e.checkOverflow(),e.params.grabCursor&&e.enabled&&e.setGrabCursor(),e.params.preloadImages&&e.preloadImages(),e.slideTo(e.params.loop?e.params.initialSlide+e.loopedSlides:e.params.initialSlide,0,e.params.runCallbacksOnInit,!1,!0),e.attachEvents(),e.initialized=!0,e.emit("init"),e.emit("afterInit")),e},e.destroy=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!0);var n=this,i=n.params,r=n.$el,s=n.$wrapperEl,o=n.slides;return void 0===n.params||n.destroyed||(n.emit("beforeDestroy"),n.initialized=!1,n.detachEvents(),i.loop&&n.loopDestroy(),e&&(n.removeClasses(),r.removeAttr("style"),s.removeAttr("style"),o&&o.length&&o.removeClass([i.slideVisibleClass,i.slideActiveClass,i.slideNextClass,i.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),n.emit("destroy"),Object.keys(n.eventsListeners).forEach(function(t){n.off(t)}),!1!==t&&(n.$el[0].swiper=null,function(e){var n=e;Object.keys(n).forEach(function(e){try{n[e]=null}catch(t){}try{delete n[e]}catch(t){}})}(n)),n.destroyed=!0),null},t.extendDefaults=function(t){HK(cQ,t)},t.installModule=function(e){t.prototype.modules||(t.prototype.modules={});var n=e.name||Object.keys(t.prototype.modules).length+"_"+VK();t.prototype.modules[n]=e},t.use=function(e){return Array.isArray(e)?(e.forEach(function(e){return t.installModule(e)}),t):(t.installModule(e),t)},function(t,e,n){n&&aQ(t,n)}(t,0,[{key:"extendedDefaults",get:function(){return cQ}},{key:"defaults",get:function(){return oQ}}]),t}();Object.keys(lQ).forEach(function(t){Object.keys(lQ[t]).forEach(function(e){uQ.prototype[e]=lQ[t][e]})}),uQ.use([XK,QK]);var hQ=uQ;const dQ=["prevElRef"],pQ=["nextElRef"],fQ=["scrollbarElRef"],gQ=["paginationElRef"];function mQ(t,e){1&t&&(aa(0),oa(1,"div",6,7),oa(3,"div",8,9),la())}function bQ(t,e){1&t&&oa(0,"div",10,11)}function yQ(t,e){1&t&&oa(0,"div",12,13)}function vQ(t,e){}function _Q(t,e){1&t&&Jo(0,vQ,0,0,"ng-template")}function wQ(t,e){}function xQ(t,e){1&t&&Jo(0,wQ,0,0,"ng-template")}function SQ(t,e){}function EQ(t,e){1&t&&Jo(0,SQ,0,0,"ng-template")}function CQ(t,e){}const OQ=function(t){return{$implicit:t}};function TQ(t,e){if(1&t&&(ra(0,"div",3),Jo(1,CQ,0,0,"ng-template",18),sa()),2&t){const t=va().$implicit;na("ngClass",va(2).zoomContainerClass),ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(3,OQ,t.slideData))}}function kQ(t,e){}function AQ(t,e){if(1&t&&(aa(0),Jo(1,kQ,0,0,"ng-template",18),la()),2&t){const t=va().$implicit;ws(1),na("ngTemplateOutlet",t.template)("ngTemplateOutletContext",Tc(2,OQ,t.slideData))}}function PQ(t,e){if(1&t&&(ra(0,"div",15),Jo(1,TQ,2,5,"div",16),Jo(2,AQ,2,4,"ng-container",17),sa()),2&t){const t=e.$implicit,n=va().key,i=va();(function(t){Ua(qa,Fa,t,!1)})(i.style),na("ngClass",(t.class?t.class+" ":"")+i.slideClass+(""!==n?" "+i.slideDuplicateClass:""))("ngSwitch",t.zoom),Ko("data-swiper-slide-index",t.virtualIndex?t.virtualIndex:t.slideIndex),ws(1),na("ngSwitchCase",!0)}}function MQ(t,e){1&t&&(Jo(0,PQ,3,6,"div",14),Mc(1,"async")),2&t&&na("ngForOf",Ic(1,1,e.loopSlides))}const IQ=[[["","slot","container-start"]],[["","slot","wrapper-start"]],[["","slot","wrapper-end"]],[["","slot","container-end"]]],DQ=function(t){return{loopSlides:t,key:"prepend"}},RQ=function(t){return{loopSlides:t,key:""}},NQ=function(t){return{loopSlides:t,key:"append"}},LQ=["[slot=container-start]","[slot=wrapper-start]","[slot=wrapper-end]","[slot=container-end]"];function jQ(t){return"object"==typeof t&&null!==t&&t.constructor&&"Object"===Object.prototype.toString.call(t).slice(8,-1)}function FQ(t,e,n){return!0===VQ(t)&&e&&!e.el||!("boolean"!=typeof e&&e.el!==(null==n?void 0:n.nativeElement)&&("string"==typeof e.el||"object"==typeof e.el))}function BQ(t,e){const n=["__proto__","constructor","prototype"];Object.keys(e).filter(t=>n.indexOf(t)<0).forEach(n=>{void 0!==t[n]?t[n]&&!e[n]||(jQ(e[n])&&jQ(t[n])&&Object.keys(e[n]).length>0?e[n].__swiper__?t[n]=e[n]:BQ(t[n],e[n]):t[n]=e[n]):t[n]=e[n]})}function VQ(t){return null!=t&&"false"!=`${t}`}const zQ=["pagination","navigation","scrollbar","virtual"];function UQ(t,e={}){return jQ(t)?t:!0===VQ(t)&&e}const HQ=["init","_direction","touchEventsTarget","initialSlide","_speed","cssMode","updateOnWindowResize","resizeObserver","nested","focusableElements","_width","_height","preventInteractionOnTransition","userAgent","url","_edgeSwipeDetection","_edgeSwipeThreshold","_freeMode","_freeModeMomentum","_freeModeMomentumRatio","_freeModeMomentumBounce","_freeModeMomentumBounceRatio","_freeModeMomentumVelocityRatio","_freeModeSticky","_freeModeMinimumVelocity","_autoHeight","setWrapperSize","virtualTranslate","_effect","breakpoints","_spaceBetween","_slidesPerView","_slidesPerColumn","_slidesPerColumnFill","_slidesPerGroup","_slidesPerGroupSkip","_centeredSlides","_centeredSlidesBounds","_slidesOffsetBefore","_slidesOffsetAfter","normalizeSlideIndex","_centerInsufficientSlides","_watchOverflow","roundLengths","touchRatio","touchAngle","simulateTouch","_shortSwipes","_longSwipes","longSwipesRatio","longSwipesMs","_followFinger","allowTouchMove","_threshold","touchMoveStopPropagation","touchStartPreventDefault","touchStartForcePreventDefault","touchReleaseOnEdges","uniqueNavElements","_resistance","_resistanceRatio","_watchSlidesProgress","_watchSlidesVisibility","_grabCursor","preventClicks","preventClicksPropagation","_slideToClickedSlide","_preloadImages","updateOnImagesReady","_loop","_loopAdditionalSlides","_loopedSlides","_loopFillGroupWithBlank","loopPreventsSlide","_allowSlidePrev","_allowSlideNext","_swipeHandler","_noSwiping","noSwipingClass","noSwipingSelector","passiveListeners","containerModifierClass","slideClass","slideBlankClass","slideActiveClass","slideDuplicateActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slideDuplicateNextClass","slidePrevClass","slideDuplicatePrevClass","wrapperClass","runCallbacksOnInit","observer","observeParents","observeSlideChildren","a11y","autoplay","_controller","coverflowEffect","cubeEffect","fadeEffect","flipEffect","hashNavigation","history","keyboard","lazy","mousewheel","_navigation","_pagination","parallax","_scrollbar","_thumbs","virtual","zoom"].map(t=>t.replace(/_/,""));function $Q(t={}){const e={on:{}},n={};BQ(e,hQ.defaults),BQ(e,hQ.extendedDefaults),e._emitClasses=!0;const i={};return Object.keys(t).forEach(r=>{const s=r.replace(/^_/,"");void 0!==t[s]&&(HQ.indexOf(s)>=0?jQ(t[s])?(e[s]={},n[s]={},BQ(e[s],t[s]),BQ(n[s],t[s])):(e[s]=t[s],n[s]=t[s]):i[s]=t[s])}),{params:e,passedParams:n,rest:i}}let GQ=(()=>{class t{constructor(t){this.template=t,this.class="",this.slideData={isActive:!1,isPrev:!1,isNext:!1,isVisible:!1,isDuplicate:!1}}set zoom(t){this._zoom=VQ(t)}get zoom(){return this._zoom}get classNames(){return this._classNames}set classNames(t){this._classNames!==t&&(this._classNames=t,this.slideData={isActive:this._hasClass(["swiper-slide-active","swiper-slide-duplicate-active"]),isVisible:this._hasClass(["swiper-slide-visible"]),isDuplicate:this._hasClass(["swiper-slide-duplicate"]),isPrev:this._hasClass(["swiper-slide-prev","swiper-slide-duplicate-prev"]),isNext:this._hasClass(["swiper-slide-next","swiper-slide-duplicate-next"])})}_hasClass(t){return t.some(t=>this._classNames.indexOf(t)>=0)}}return t.\u0275fac=function(e){return new(e||t)(ea(sc))},t.\u0275dir=se({type:t,selectors:[["ng-template","swiperSlide",""]],inputs:{class:"class",zoom:"zoom",virtualIndex:"virtualIndex"}}),t})(),WQ=(()=>{class t{constructor(t,e,n,i){this._ngZone=t,this.elementRef=e,this._changeDetectorRef=n,this._platformId=i,this.slideClass="swiper-slide",this.wrapperClass="swiper-wrapper",this.showNavigation=!0,this.showPagination=!0,this.showScrollbar=!0,this.s__beforeBreakpoint=new Rc,this.s__containerClasses=new Rc,this.s__slideClass=new Rc,this.s__swiper=new Rc,this.s_activeIndexChange=new Rc,this.s_afterInit=new Rc,this.s_autoplay=new Rc,this.s_autoplayStart=new Rc,this.s_autoplayStop=new Rc,this.s_beforeDestroy=new Rc,this.s_beforeInit=new Rc,this.s_beforeLoopFix=new Rc,this.s_beforeResize=new Rc,this.s_beforeSlideChangeStart=new Rc,this.s_beforeTransitionStart=new Rc,this.s_breakpoint=new Rc,this.s_changeDirection=new Rc,this.s_click=new Rc,this.s_doubleTap=new Rc,this.s_doubleClick=new Rc,this.s_destroy=new Rc,this.s_fromEdge=new Rc,this.s_hashChange=new Rc,this.s_hashSet=new Rc,this.s_imagesReady=new Rc,this.s_init=new Rc,this.s_keyPress=new Rc,this.s_lazyImageLoad=new Rc,this.s_lazyImageReady=new Rc,this.s_loopFix=new Rc,this.s_momentumBounce=new Rc,this.s_navigationHide=new Rc,this.s_navigationShow=new Rc,this.s_observerUpdate=new Rc,this.s_orientationchange=new Rc,this.s_paginationHide=new Rc,this.s_paginationRender=new Rc,this.s_paginationShow=new Rc,this.s_paginationUpdate=new Rc,this.s_progress=new Rc,this.s_reachBeginning=new Rc,this.s_reachEnd=new Rc,this.s_realIndexChange=new Rc,this.s_resize=new Rc,this.s_scroll=new Rc,this.s_scrollbarDragEnd=new Rc,this.s_scrollbarDragMove=new Rc,this.s_scrollbarDragStart=new Rc,this.s_setTransition=new Rc,this.s_setTranslate=new Rc,this.s_slideChange=new Rc,this.s_slideChangeTransitionEnd=new Rc,this.s_slideChangeTransitionStart=new Rc,this.s_slideNextTransitionEnd=new Rc,this.s_slideNextTransitionStart=new Rc,this.s_slidePrevTransitionEnd=new Rc,this.s_slidePrevTransitionStart=new Rc,this.s_slideResetTransitionStart=new Rc,this.s_slideResetTransitionEnd=new Rc,this.s_sliderMove=new Rc,this.s_sliderFirstMove=new Rc,this.s_slidesLengthChange=new Rc,this.s_slidesGridLengthChange=new Rc,this.s_snapGridLengthChange=new Rc,this.s_snapIndexChange=new Rc,this.s_tap=new Rc,this.s_toEdge=new Rc,this.s_touchEnd=new Rc,this.s_touchMove=new Rc,this.s_touchMoveOpposite=new Rc,this.s_touchStart=new Rc,this.s_transitionEnd=new Rc,this.s_transitionStart=new Rc,this.s_update=new Rc,this.s_zoomChange=new Rc,this.s_swiper=new Rc,this.indexChange=new Rc,this._activeSlides=new P,this.containerClasses="swiper-container",this.slidesChanges=t=>{this.slides=t.map((t,e)=>(t.slideIndex=e,t.classNames=this.slideClass,t)),this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.virtual?this.swiperRef&&this.swiperRef.virtual&&this._ngZone.runOutsideAngular(()=>{this.swiperRef.virtual.slides=this.slides,this.swiperRef.virtual.update(!0)}):(this.prependSlides=wd(this.slides.slice(this.slides.length-this.loopedSlides)),this.appendSlides=wd(this.slides.slice(0,this.loopedSlides))),this._changeDetectorRef.detectChanges()},this.style=null,this.updateVirtualSlides=t=>{!this.swiperRef||this.currentVirtualData&&this.currentVirtualData.from===t.from&&this.currentVirtualData.to===t.to&&this.currentVirtualData.offset===t.offset||(this.style=this.swiperRef.isHorizontal()?{[this.swiperRef.rtlTranslate?"right":"left"]:`${t.offset}px`}:{top:`${t.offset}px`},this.currentVirtualData=t,this._activeSlides.next(t.slides),this._ngZone.run(()=>{this._changeDetectorRef.detectChanges()}),this._ngZone.runOutsideAngular(()=>{this.swiperRef.updateSlides(),this.swiperRef.updateProgress(),this.swiperRef.updateSlidesClasses(),this.swiperRef.lazy&&this.swiperRef.params.lazy.enabled&&this.swiperRef.lazy.load(),this.swiperRef.virtual.update(!0)}))}}set navigation(t){var e,n,i;const r="boolean"!=typeof this._navigation?null===(e=this._navigation)||void 0===e?void 0:e.nextEl:null,s="boolean"!=typeof this._navigation?null===(n=this._navigation)||void 0===n?void 0:n.prevEl:null;this._navigation=UQ(t,{nextEl:r||null,prevEl:s||null}),this.showNavigation=!(!0!==VQ(t)||this._navigation&&"boolean"!=typeof this._navigation&&this._navigation.prevEl!==(null===(i=this._prevElRef)||void 0===i?void 0:i.nativeElement)&&(null!==this._navigation.prevEl||null!==this._navigation.nextEl)&&("string"==typeof this._navigation.nextEl||"string"==typeof this._navigation.prevEl||"object"==typeof this._navigation.nextEl||"object"==typeof this._navigation.prevEl))}get navigation(){return this._navigation}set pagination(t){var e;const n="boolean"!=typeof this._pagination?null===(e=this._pagination)||void 0===e?void 0:e.el:null;this._pagination=UQ(t,{el:n||null}),this.showPagination=FQ(t,this._pagination,this._paginationElRef)}get pagination(){return this._pagination}set scrollbar(t){var e;const n="boolean"!=typeof this._scrollbar?null===(e=this._scrollbar)||void 0===e?void 0:e.el:null;this._scrollbar=UQ(t,{el:n||null}),this.showScrollbar=FQ(t,this._scrollbar,this._scrollbarElRef)}get scrollbar(){return this._scrollbar}set virtual(t){this._virtual=UQ(t)}get virtual(){return this._virtual}set index(t){this.setIndex(t)}set config(t){this.updateSwiper(t);const{params:e}=$Q(t);Object.assign(this,e)}set prevElRef(t){this._prevElRef=t,this._setElement(t,this.navigation,"navigation","prevEl")}set nextElRef(t){this._nextElRef=t,this._setElement(t,this.navigation,"navigation","nextEl")}set scrollbarElRef(t){this._scrollbarElRef=t,this._setElement(t,this.scrollbar,"scrollbar")}set paginationElRef(t){this._paginationElRef=t,this._setElement(t,this.pagination,"pagination")}get activeSlides(){return this.virtual?this._activeSlides:wd(this.slides)}get zoomContainerClass(){return"boolean"!=typeof this.zoom?this.zoom.containerClass:"swiper-zoom-container"}_setElement(t,e,n,i="el"){if(!t||!e)return;if(e&&t.nativeElement){if(e[i]===t.nativeElement)return;e[i]=t.nativeElement}const r={};r[n]=!0,this.updateInitSwiper(r)}ngOnInit(){const{params:t}=$Q(this);Object.assign(this,t)}ngAfterViewInit(){this.childrenSlidesInit(),this.initSwiper(),this._changeDetectorRef.detectChanges(),setTimeout(()=>{this.s_swiper.emit(this.swiperRef)})}childrenSlidesInit(){this.slidesChanges(this.slidesEl),this.slidesEl.changes.subscribe(this.slidesChanges)}get isSwiperActive(){return this.swiperRef&&!this.swiperRef.destroyed}initSwiper(){const{params:t}=$Q(this);Object.assign(this,t),this._ngZone.runOutsideAngular(()=>{t.init=!1,t.virtual||(t.observer=!0),t.onAny=(t,...e)=>{const n=this[`s_${t}`];n&&n.emit(...e)},Object.assign(t.on,{_containerClasses(t,e){this.containerClasses=e},_slideClasses:(t,e)=>{e.forEach(({slideEl:t,classNames:e},n)=>{const i=parseInt(t.getAttribute("data-swiper-slide-index"))||n;if(this.virtual){const t=this.slides.find(t=>t.virtualIndex&&t.virtualIndex===i);if(t)return void(t.classNames=e)}this.slides[i]&&(this.slides[i].classNames=e)}),this._changeDetectorRef.detectChanges()}});const e=new hQ(t);if(e.loopCreate=()=>{},e.loopDestroy=()=>{},t.loop&&(e.loopedSlides=this.loopedSlides),e.virtual&&e.params.virtual.enabled){e.virtual.slides=this.slides;const t={cache:!1,renderExternal:this.updateVirtualSlides,renderExternalUpdate:!1};BQ(e.params.virtual,t),BQ(e.originalParams.virtual,t)}Lh(this._platformId)&&(this.swiperRef=e.init(this.elementRef.nativeElement),this.swiperRef.virtual&&this.swiperRef.params.virtual.enabled&&this.swiperRef.virtual.update(!0),this._changeDetectorRef.detectChanges(),e.on("slideChange",()=>{this.indexChange.emit(this.swiperRef.realIndex)}))})}ngOnChanges(t){this.updateSwiper(t),this._changeDetectorRef.detectChanges()}updateInitSwiper(t){!t||!this.swiperRef||this.swiperRef.destroyed||this._ngZone.runOutsideAngular(()=>{const{pagination:e,navigation:n,scrollbar:i,thumbs:r}=this.swiperRef;t.pagination&&(this.pagination&&"boolean"!=typeof this.pagination&&this.pagination.el&&e&&!e.el?(this.updateParameter("pagination",this.pagination),e.init(),e.render(),e.update()):(e.destroy(),e.el=null)),t.scrollbar&&(this.scrollbar&&"boolean"!=typeof this.scrollbar&&this.scrollbar.el&&i&&!i.el?(this.updateParameter("scrollbar",this.scrollbar),i.init(),i.updateSize(),i.setTranslate()):(i.destroy(),i.el=null)),t.navigation&&(this.navigation&&"boolean"!=typeof this.navigation&&this.navigation.prevEl&&this.navigation.nextEl&&n&&!n.prevEl&&!n.nextEl?(this.updateParameter("navigation",this.navigation),n.init(),n.update()):n.prevEl&&n.nextEl&&(n.destroy(),n.nextEl=null,n.prevEl=null)),t.thumbs&&this.thumbs&&this.thumbs.swiper&&(this.updateParameter("thumbs",this.thumbs),r.init()&&r.update(!0)),t.controller&&this.controller&&this.controller.control&&(this.swiperRef.controller.control=this.controller.control),this.swiperRef.update()})}updateSwiper(t){this._ngZone.runOutsideAngular(()=>{var e,n;if(!t.config&&t&&this.swiperRef&&!this.swiperRef.destroyed){for(const i in t){if(zQ.indexOf(i)>=0)continue;const r=null!==(n=null===(e=t[i])||void 0===e?void 0:e.currentValue)&&void 0!==n?n:t[i];this.updateParameter(i,r)}t.allowSlideNext&&(this.swiperRef.allowSlideNext=this.allowSlideNext),t.allowSlidePrev&&(this.swiperRef.allowSlidePrev=this.allowSlidePrev),t.direction&&this.swiperRef.changeDirection(this.direction,!1),t.breakpoints&&(this.loop&&!this.loopedSlides&&this.calcLoopedSlides(),this.swiperRef.currentBreakpoint=null,this.swiperRef.setBreakpoint()),(t.thumbs||t.controller)&&this.updateInitSwiper(t),this.swiperRef.update()}})}calcLoopedSlides(){if(!this.loop)return;let t=this.slidesPerView;if(this.breakpoints){const e=hQ.prototype.getBreakpoint(this.breakpoints),n=e in this.breakpoints?this.breakpoints[e]:void 0;n&&n.slidesPerView&&(t=n.slidesPerView)}if("auto"===t)return this.loopedSlides=this.slides.length,this.slides.length;let e=this.loopedSlides||t;return e+=this.loopAdditionalSlides,e>this.slides.length&&(e=this.slides.length),this.loopedSlides=e,e}updateParameter(t,e){if(!this.swiperRef||this.swiperRef.destroyed)return;const n=t.replace(/^_/,""),i=jQ(this.swiperRef.params[n]);if(Object.keys(this.swiperRef.modules).indexOf(n)>=0){const t=this.swiperRef.modules[n].params[n];i?BQ(this.swiperRef.params[n],t):this.swiperRef.params[n]=t}i&&jQ(e)?BQ(this.swiperRef.params[n],e):this.swiperRef.params[n]=e}setIndex(t,e,n){this.isSwiperActive?t!==this.swiperRef.activeIndex&&this._ngZone.runOutsideAngular(()=>{this.loop?this.swiperRef.slideToLoop(t,e,!n):this.swiperRef.slideTo(t,e,!n)}):this.initialSlide=t}ngOnDestroy(){this._ngZone.runOutsideAngular(()=>{var t;null===(t=this.swiperRef)||void 0===t||t.destroy(!0,!1)})}}return t.\u0275fac=function(e){return new(e||t)(ea(xu),ea(kl),ea(tc),ea(ou))},t.\u0275cmp=Jt({type:t,selectors:[["swiper"],["","swiper",""]],contentQueries:function(t,e,n){if(1&t&&Xc(n,GQ,4),2&t){let t;Wc(t=Yc())&&(e.slidesEl=t)}},viewQuery:function(t,e){if(1&t&&(qc(dQ,5),qc(pQ,5),qc(fQ,5),qc(gQ,5)),2&t){let t;Wc(t=Yc())&&(e.prevElRef=t.first),Wc(t=Yc())&&(e.nextElRef=t.first),Wc(t=Yc())&&(e.scrollbarElRef=t.first),Wc(t=Yc())&&(e.paginationElRef=t.first)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.containerClasses)},inputs:{slideClass:"slideClass",wrapperClass:"wrapperClass",navigation:"navigation",pagination:"pagination",scrollbar:"scrollbar",virtual:"virtual",index:"index",config:"config",loopedSlides:"loopedSlides",initialSlide:"initialSlide",direction:"direction",touchEventsTarget:"touchEventsTarget",speed:"speed",cssMode:"cssMode",updateOnWindowResize:"updateOnWindowResize",resizeObserver:"resizeObserver",nested:"nested",focusableElements:"focusableElements",width:"width",height:"height",preventInteractionOnTransition:"preventInteractionOnTransition",userAgent:"userAgent",url:"url",edgeSwipeDetection:"edgeSwipeDetection",edgeSwipeThreshold:"edgeSwipeThreshold",freeMode:"freeMode",freeModeMomentum:"freeModeMomentum",freeModeMomentumRatio:"freeModeMomentumRatio",freeModeMomentumBounce:"freeModeMomentumBounce",freeModeMomentumBounceRatio:"freeModeMomentumBounceRatio",freeModeMomentumVelocityRatio:"freeModeMomentumVelocityRatio",freeModeSticky:"freeModeSticky",freeModeMinimumVelocity:"freeModeMinimumVelocity",autoHeight:"autoHeight",setWrapperSize:"setWrapperSize",virtualTranslate:"virtualTranslate",effect:"effect",breakpoints:"breakpoints",spaceBetween:"spaceBetween",slidesPerView:"slidesPerView",slidesPerColumn:"slidesPerColumn",slidesPerColumnFill:"slidesPerColumnFill",slidesPerGroup:"slidesPerGroup",slidesPerGroupSkip:"slidesPerGroupSkip",centeredSlides:"centeredSlides",centeredSlidesBounds:"centeredSlidesBounds",slidesOffsetBefore:"slidesOffsetBefore",slidesOffsetAfter:"slidesOffsetAfter",normalizeSlideIndex:"normalizeSlideIndex",centerInsufficientSlides:"centerInsufficientSlides",watchOverflow:"watchOverflow",roundLengths:"roundLengths",touchRatio:"touchRatio",touchAngle:"touchAngle",simulateTouch:"simulateTouch",shortSwipes:"shortSwipes",longSwipes:"longSwipes",longSwipesRatio:"longSwipesRatio",longSwipesMs:"longSwipesMs",followFinger:"followFinger",allowTouchMove:"allowTouchMove",threshold:"threshold",touchMoveStopPropagation:"touchMoveStopPropagation",touchStartPreventDefault:"touchStartPreventDefault",touchStartForcePreventDefault:"touchStartForcePreventDefault",touchReleaseOnEdges:"touchReleaseOnEdges",uniqueNavElements:"uniqueNavElements",resistance:"resistance",resistanceRatio:"resistanceRatio",watchSlidesProgress:"watchSlidesProgress",watchSlidesVisibility:"watchSlidesVisibility",grabCursor:"grabCursor",preventClicks:"preventClicks",preventClicksPropagation:"preventClicksPropagation",slideToClickedSlide:"slideToClickedSlide",preloadImages:"preloadImages",updateOnImagesReady:"updateOnImagesReady",loop:"loop",loopAdditionalSlides:"loopAdditionalSlides",loopFillGroupWithBlank:"loopFillGroupWithBlank",loopPreventsSlide:"loopPreventsSlide",allowSlidePrev:"allowSlidePrev",allowSlideNext:"allowSlideNext",swipeHandler:"swipeHandler",noSwiping:"noSwiping",noSwipingClass:"noSwipingClass",noSwipingSelector:"noSwipingSelector",passiveListeners:"passiveListeners",containerModifierClass:"containerModifierClass",slideBlankClass:"slideBlankClass",slideActiveClass:"slideActiveClass",slideDuplicateActiveClass:"slideDuplicateActiveClass",slideVisibleClass:"slideVisibleClass",slideDuplicateClass:"slideDuplicateClass",slideNextClass:"slideNextClass",slideDuplicateNextClass:"slideDuplicateNextClass",slidePrevClass:"slidePrevClass",slideDuplicatePrevClass:"slideDuplicatePrevClass",runCallbacksOnInit:"runCallbacksOnInit",observeParents:"observeParents",observeSlideChildren:"observeSlideChildren",a11y:"a11y",autoplay:"autoplay",controller:"controller",coverflowEffect:"coverflowEffect",cubeEffect:"cubeEffect",fadeEffect:"fadeEffect",flipEffect:"flipEffect",hashNavigation:"hashNavigation",history:"history",keyboard:"keyboard",lazy:"lazy",mousewheel:"mousewheel",parallax:"parallax",thumbs:"thumbs",zoom:"zoom",class:"class",id:"id"},outputs:{s__beforeBreakpoint:"_beforeBreakpoint",s__containerClasses:"_containerClasses",s__slideClass:"_slideClass",s__swiper:"_swiper",s_activeIndexChange:"activeIndexChange",s_afterInit:"afterInit",s_autoplay:"autoplay",s_autoplayStart:"autoplayStart",s_autoplayStop:"autoplayStop",s_beforeDestroy:"beforeDestroy",s_beforeInit:"beforeInit",s_beforeLoopFix:"beforeLoopFix",s_beforeResize:"beforeResize",s_beforeSlideChangeStart:"beforeSlideChangeStart",s_beforeTransitionStart:"beforeTransitionStart",s_breakpoint:"breakpoint",s_changeDirection:"changeDirection",s_click:"click",s_doubleTap:"doubleTap",s_doubleClick:"doubleClick",s_destroy:"destroy",s_fromEdge:"fromEdge",s_hashChange:"hashChange",s_hashSet:"hashSet",s_imagesReady:"imagesReady",s_init:"init",s_keyPress:"keyPress",s_lazyImageLoad:"lazyImageLoad",s_lazyImageReady:"lazyImageReady",s_loopFix:"loopFix",s_momentumBounce:"momentumBounce",s_navigationHide:"navigationHide",s_navigationShow:"navigationShow",s_observerUpdate:"observerUpdate",s_orientationchange:"orientationchange",s_paginationHide:"paginationHide",s_paginationRender:"paginationRender",s_paginationShow:"paginationShow",s_paginationUpdate:"paginationUpdate",s_progress:"progress",s_reachBeginning:"reachBeginning",s_reachEnd:"reachEnd",s_realIndexChange:"realIndexChange",s_resize:"resize",s_scroll:"scroll",s_scrollbarDragEnd:"scrollbarDragEnd",s_scrollbarDragMove:"scrollbarDragMove",s_scrollbarDragStart:"scrollbarDragStart",s_setTransition:"setTransition",s_setTranslate:"setTranslate",s_slideChange:"slideChange",s_slideChangeTransitionEnd:"slideChangeTransitionEnd",s_slideChangeTransitionStart:"slideChangeTransitionStart",s_slideNextTransitionEnd:"slideNextTransitionEnd",s_slideNextTransitionStart:"slideNextTransitionStart",s_slidePrevTransitionEnd:"slidePrevTransitionEnd",s_slidePrevTransitionStart:"slidePrevTransitionStart",s_slideResetTransitionStart:"slideResetTransitionStart",s_slideResetTransitionEnd:"slideResetTransitionEnd",s_sliderMove:"sliderMove",s_sliderFirstMove:"sliderFirstMove",s_slidesLengthChange:"slidesLengthChange",s_slidesGridLengthChange:"slidesGridLengthChange",s_snapGridLengthChange:"snapGridLengthChange",s_snapIndexChange:"snapIndexChange",s_tap:"tap",s_toEdge:"toEdge",s_touchEnd:"touchEnd",s_touchMove:"touchMove",s_touchMoveOpposite:"touchMoveOpposite",s_touchStart:"touchStart",s_transitionEnd:"transitionEnd",s_transitionStart:"transitionStart",s_update:"update",s_zoomChange:"zoomChange",s_swiper:"swiper",indexChange:"indexChange"},features:[ye],ngContentSelectors:LQ,decls:13,vars:17,consts:[[4,"ngIf"],["class","swiper-scrollbar",4,"ngIf"],["class","swiper-pagination",4,"ngIf"],[3,"ngClass"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["slidesTemplate",""],[1,"swiper-button-prev"],["prevElRef",""],[1,"swiper-button-next"],["nextElRef",""],[1,"swiper-scrollbar"],["scrollbarElRef",""],[1,"swiper-pagination"],["paginationElRef",""],[3,"ngClass","style","ngSwitch",4,"ngFor","ngForOf"],[3,"ngClass","ngSwitch"],[3,"ngClass",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(t,e){if(1&t&&(wa(IQ),xa(0),Jo(1,mQ,5,0,"ng-container",0),Jo(2,bQ,2,0,"div",1),Jo(3,yQ,2,0,"div",2),ra(4,"div",3),xa(5,1),Jo(6,_Q,1,0,void 0,4),Jo(7,xQ,1,0,void 0,4),Jo(8,EQ,1,0,void 0,4),xa(9,2),sa(),xa(10,3),Jo(11,MQ,2,3,"ng-template",null,5,Jc)),2&t){const t=ta(12);ws(1),na("ngIf",e.navigation&&e.showNavigation),ws(1),na("ngIf",e.scrollbar&&e.showScrollbar),ws(1),na("ngIf",e.pagination&&e.showPagination),ws(1),na("ngClass",e.wrapperClass),Ko("id",e.id),ws(2),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(11,DQ,e.prependSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(13,RQ,e.activeSlides)),ws(1),na("ngTemplateOutlet",t)("ngTemplateOutletContext",Tc(15,NQ,e.appendSlides))}},directives:[_h,mh,kh,yh,Eh,Ch,Oh],pipes:[Dh],styles:["\n swiper {\n display: block;\n }\n "],encapsulation:2,changeDetection:0}),t})(),qQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})();function XQ(){return(XQ=Object.assign||function(t){for(var e=1;e0&&(n(s,!!t.isBeginning),t.params.watchOverflow&&t.enabled&&s[t.isLocked?"addClass":"removeClass"](e.lockClass)),r&&r.length>0&&(n(r,!!t.isEnd),t.params.watchOverflow&&t.enabled&&r[t.isLocked?"addClass":"removeClass"](e.lockClass))}},onPrevClick:function(t){var e=this;t.preventDefault(),(!e.isBeginning||e.params.loop)&&e.slidePrev()},onNextClick:function(t){var e=this;t.preventDefault(),(!e.isEnd||e.params.loop)&&e.slideNext()},init:function(){var t,e,n=this,i=n.params.navigation;n.params.navigation=function(t,e,n,i){var r=_K();return n&&Object.keys(i).forEach(function(n){if(!e[n]&&!0===e.auto){var s=r.createElement("div");s.className=i[n],t.append(s),e[n]=s}}),e}(n.$el,n.params.navigation,n.params.createElements,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),(i.nextEl||i.prevEl)&&(i.nextEl&&(t=FK(i.nextEl),n.params.uniqueNavElements&&"string"==typeof i.nextEl&&t.length>1&&1===n.$el.find(i.nextEl).length&&(t=n.$el.find(i.nextEl))),i.prevEl&&(e=FK(i.prevEl),n.params.uniqueNavElements&&"string"==typeof i.prevEl&&e.length>1&&1===n.$el.find(i.prevEl).length&&(e=n.$el.find(i.prevEl))),t&&t.length>0&&t.on("click",n.navigation.onNextClick),e&&e.length>0&&e.on("click",n.navigation.onPrevClick),HK(n.navigation,{$nextEl:t,nextEl:t&&t[0],$prevEl:e,prevEl:e&&e[0]}),n.enabled||(t&&t.addClass(i.lockClass),e&&e.addClass(i.lockClass)))},destroy:function(){var t=this,e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n.length&&(n.off("click",t.navigation.onNextClick),n.removeClass(t.params.navigation.disabledClass)),i&&i.length&&(i.off("click",t.navigation.onPrevClick),i.removeClass(t.params.navigation.disabledClass))}},KQ={name:"navigation",params:{navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock"}},create:function(){$K(this,{navigation:XQ({},YQ)})},on:{init:function(t){t.navigation.init(),t.navigation.update()},toEdge:function(t){t.navigation.update()},fromEdge:function(t){t.navigation.update()},destroy:function(t){t.navigation.destroy()},"enable disable":function(t){var e=t.navigation,n=e.$nextEl,i=e.$prevEl;n&&n[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass),i&&i[t.enabled?"removeClass":"addClass"](t.params.navigation.lockClass)},click:function(t,e){var n=t.navigation,i=n.$nextEl,r=n.$prevEl,s=e.target;if(t.params.navigation.hideOnClick&&!FK(s).is(r)&&!FK(s).is(i)){if(t.pagination&&t.params.pagination&&t.params.pagination.clickable&&(t.pagination.el===s||t.pagination.el.contains(s)))return;var o;i?o=i.hasClass(t.params.navigation.hiddenClass):r&&(o=r.hasClass(t.params.navigation.hiddenClass)),t.emit(!0===o?"navigationShow":"navigationHide"),i&&i.toggleClass(t.params.navigation.hiddenClass),r&&r.toggleClass(t.params.navigation.hiddenClass)}}}};let QQ=(()=>{class t{constructor(){hQ.use([KQ])}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,qQ]]}),t})(),ZQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh]]}),t})(),JQ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,kX,f_,QQ,ZQ]]}),t})(),tZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,Dp,JQ]]}),t})();const eZ={isolated:!0},nZ=new oi("Message service configuration",{providedIn:"root",factory:()=>eZ});let iZ=(()=>{class t{constructor(t,e,n){this.source=t,this.channel=e,this.messages=n}sendMessage(t){this.channel.next({id:this.nextMessageId(),source:this.source,payload:t})}getMessages(){return this.messages.pipe(Hd(t=>t.source!==this.source))}getMessagesFromSource(t){return this.getMessages().pipe(Hd(e=>e.source===t))}getMessagesFromSources(t){return this.getMessages().pipe(Hd(e=>t.includes(e.source)))}nextMessageId(){return t.counter++}}return t.counter=0,t})(),rZ=(()=>{class t{constructor(t,e){this.config=t,this.parent=e,this.channel=new P,this.messages=t.isolated||!e?this.channel.asObservable():U([this.channel,e.messages.pipe(Xp(()=>!this.channel.closed))]).pipe(Y())}ngOnDestroy(){this.channel.complete()}connect(t){return new iZ(t,this.channel,this.messages)}}return t.\u0275fac=function(e){return new(e||t)(Ci(nZ),Ci(t,12))},t.\u0275prov=xt({token:t,factory:t.\u0275fac,providedIn:"root"}),t})(),sZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:nZ,useValue:eZ}],imports:[[gd,ky,f_]]}),t})();function oZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function aZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function lZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("animation-name","mat-progress-spinner-stroke-rotate-"+t._spinnerAnimationLabel)("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}function cZ(t,e){if(1&t&&(vn(),oa(0,"circle",3)),2&t){const t=va();La("stroke-dashoffset",t._getStrokeDashOffset(),"px")("stroke-dasharray",t._getStrokeCircumference(),"px")("stroke-width",t._getCircleStrokeWidth(),"%"),Ko("r",t._getCircleRadius())}}const uZ=".mat-progress-spinner{display:block;position:relative;overflow:hidden}.mat-progress-spinner svg{position:absolute;transform:rotate(-90deg);top:0;left:0;transform-origin:center;overflow:visible}.mat-progress-spinner circle{fill:transparent;transform-origin:center;transition:stroke-dashoffset 225ms linear}._mat-animation-noopable.mat-progress-spinner circle{transition:none;animation:none}.cdk-high-contrast-active .mat-progress-spinner circle{stroke:currentColor;stroke:CanvasText}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{animation:mat-progress-spinner-linear-rotate 2000ms linear infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition-property:stroke;animation-duration:4000ms;animation-timing-function:cubic-bezier(0.35, 0, 0.25, 1);animation-iteration-count:infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-animation[mode=indeterminate] circle{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{animation:mat-progress-spinner-stroke-rotate-fallback 10000ms cubic-bezier(0.87, 0.03, 0.33, 1) infinite}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] svg{transition:none;animation:none}.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition-property:stroke}._mat-animation-noopable.mat-progress-spinner.mat-progress-spinner-indeterminate-fallback-animation[mode=indeterminate] circle{transition:none;animation:none}@keyframes mat-progress-spinner-linear-rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes mat-progress-spinner-stroke-rotate-100{0%{stroke-dashoffset:268.606171575px;transform:rotate(0)}12.5%{stroke-dashoffset:56.5486677px;transform:rotate(0)}12.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(72.5deg)}25%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(72.5deg)}25.0001%{stroke-dashoffset:268.606171575px;transform:rotate(270deg)}37.5%{stroke-dashoffset:56.5486677px;transform:rotate(270deg)}37.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(161.5deg)}50%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(161.5deg)}50.0001%{stroke-dashoffset:268.606171575px;transform:rotate(180deg)}62.5%{stroke-dashoffset:56.5486677px;transform:rotate(180deg)}62.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(251.5deg)}75%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(251.5deg)}75.0001%{stroke-dashoffset:268.606171575px;transform:rotate(90deg)}87.5%{stroke-dashoffset:56.5486677px;transform:rotate(90deg)}87.5001%{stroke-dashoffset:56.5486677px;transform:rotateX(180deg) rotate(341.5deg)}100%{stroke-dashoffset:268.606171575px;transform:rotateX(180deg) rotate(341.5deg)}}@keyframes mat-progress-spinner-stroke-rotate-fallback{0%{transform:rotate(0deg)}25%{transform:rotate(1170deg)}50%{transform:rotate(2340deg)}75%{transform:rotate(3510deg)}100%{transform:rotate(4680deg)}}\n",hZ=jy(class{constructor(t){this._elementRef=t}},"primary"),dZ=new oi("mat-progress-spinner-default-options",{providedIn:"root",factory:function(){return{diameter:100}}});class pZ extends hZ{constructor(t,e,n,i,r){super(t),this._document=n,this._diameter=100,this._value=0,this._fallbackAnimation=!1,this.mode="determinate";const s=pZ._diameters;this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),s.has(n.head)||s.set(n.head,new Set([100])),this._fallbackAnimation=e.EDGE||e.TRIDENT,this._noopAnimations="NoopAnimations"===i&&!!r&&!r._forceAnimations,r&&(r.diameter&&(this.diameter=r.diameter),r.strokeWidth&&(this.strokeWidth=r.strokeWidth))}get diameter(){return this._diameter}set diameter(t){this._diameter=bd(t),this._spinnerAnimationLabel=this._getSpinnerAnimationLabel(),!this._fallbackAnimation&&this._styleRoot&&this._attachStyleNode()}get strokeWidth(){return this._strokeWidth||this.diameter/10}set strokeWidth(t){this._strokeWidth=bd(t)}get value(){return"determinate"===this.mode?this._value:0}set value(t){this._value=Math.max(0,Math.min(100,bd(t)))}ngOnInit(){const t=this._elementRef.nativeElement;this._styleRoot=xp(t)||this._document.head,this._attachStyleNode(),t.classList.add(`mat-progress-spinner-indeterminate${this._fallbackAnimation?"-fallback":""}-animation`)}_getCircleRadius(){return(this.diameter-10)/2}_getViewBox(){const t=2*this._getCircleRadius()+this.strokeWidth;return`0 0 ${t} ${t}`}_getStrokeCircumference(){return 2*Math.PI*this._getCircleRadius()}_getStrokeDashOffset(){return"determinate"===this.mode?this._getStrokeCircumference()*(100-this._value)/100:this._fallbackAnimation&&"indeterminate"===this.mode?.2*this._getStrokeCircumference():null}_getCircleStrokeWidth(){return this.strokeWidth/this.diameter*100}_attachStyleNode(){const t=this._styleRoot,e=this._diameter,n=pZ._diameters;let i=n.get(t);if(!i||!i.has(e)){const r=this._document.createElement("style");r.setAttribute("mat-spinner-animation",this._spinnerAnimationLabel),r.textContent=this._getAnimationText(),t.appendChild(r),i||(i=new Set,n.set(t,i)),i.add(e)}}_getAnimationText(){const t=this._getStrokeCircumference();return"\n @keyframes mat-progress-spinner-stroke-rotate-DIAMETER {\n 0% { stroke-dashoffset: START_VALUE; transform: rotate(0); }\n 12.5% { stroke-dashoffset: END_VALUE; transform: rotate(0); }\n 12.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n 25% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(72.5deg); }\n\n 25.0001% { stroke-dashoffset: START_VALUE; transform: rotate(270deg); }\n 37.5% { stroke-dashoffset: END_VALUE; transform: rotate(270deg); }\n 37.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n 50% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(161.5deg); }\n\n 50.0001% { stroke-dashoffset: START_VALUE; transform: rotate(180deg); }\n 62.5% { stroke-dashoffset: END_VALUE; transform: rotate(180deg); }\n 62.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n 75% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(251.5deg); }\n\n 75.0001% { stroke-dashoffset: START_VALUE; transform: rotate(90deg); }\n 87.5% { stroke-dashoffset: END_VALUE; transform: rotate(90deg); }\n 87.5001% { stroke-dashoffset: END_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n 100% { stroke-dashoffset: START_VALUE; transform: rotateX(180deg) rotate(341.5deg); }\n }\n".replace(/START_VALUE/g,""+.95*t).replace(/END_VALUE/g,""+.2*t).replace(/DIAMETER/g,`${this._spinnerAnimationLabel}`)}_getSpinnerAnimationLabel(){return this.diameter.toString().replace(".","_")}}pZ.\u0275fac=function(t){return new(t||pZ)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},pZ.\u0275cmp=Jt({type:pZ,selectors:[["mat-progress-spinner"]],hostAttrs:["role","progressbar","tabindex","-1",1,"mat-progress-spinner"],hostVars:10,hostBindings:function(t,e){2&t&&(Ko("aria-valuemin","determinate"===e.mode?0:null)("aria-valuemax","determinate"===e.mode?100:null)("aria-valuenow","determinate"===e.mode?e.value:null)("mode",e.mode),La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color",mode:"mode",diameter:"diameter",strokeWidth:"strokeWidth",value:"value"},exportAs:["matProgressSpinner"],features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,oZ,1,9,"circle",1),Jo(2,aZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),pZ._diameters=new WeakMap;let fZ=(()=>{class t extends pZ{constructor(t,e,n,i,r){super(t,e,n,i,r),this.mode="indeterminate"}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(pp),ea(Yu,8),ea(Ey,8),ea(dZ))},t.\u0275cmp=Jt({type:t,selectors:[["mat-spinner"]],hostAttrs:["role","progressbar","mode","indeterminate",1,"mat-spinner","mat-progress-spinner"],hostVars:6,hostBindings:function(t,e){2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),ja("_mat-animation-noopable",e._noopAnimations))},inputs:{color:"color"},features:[jo],decls:3,vars:8,consts:[["preserveAspectRatio","xMidYMid meet","focusable","false","aria-hidden","true",3,"ngSwitch"],["cx","50%","cy","50%",3,"animation-name","stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%",3,"stroke-dashoffset","stroke-dasharray","stroke-width",4,"ngSwitchCase"],["cx","50%","cy","50%"]],template:function(t,e){1&t&&(vn(),ra(0,"svg",0),Jo(1,lZ,1,9,"circle",1),Jo(2,cZ,1,7,"circle",2),sa()),2&t&&(La("width",e.diameter,"px")("height",e.diameter,"px"),na("ngSwitch","indeterminate"===e.mode),Ko("viewBox",e._getViewBox()),ws(1),na("ngSwitchCase",!0),ws(1),na("ngSwitchCase",!1))},directives:[Eh,Ch],styles:[uZ],encapsulation:2,changeDetection:0}),t})(),gZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Ny,Rh],Ny]}),t})(),mZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,gZ]]}),t})(),bZ=(()=>{class t{}return t.\u0275fac=function(e){return new(e||t)},t.\u0275mod=ie({type:t}),t.\u0275inj=St({imports:[[Rh,x_,f_,gZ]]}),t})();const yZ={initialConfig:{},parse:{},rename:{}};class vZ{constructor(t,e){this.configState=t,this.storedChanges={},this.options=Object.assign(Object.assign({},yZ),e)}addChanges(t){this.storedChanges=Object.assign(Object.assign({},this.storedChanges),t)}applyChanges(t,e={}){void 0===t&&(t=this.storedChanges,this.storedChanges={});const{configState:n,options:{initialConfig:i}}=this,r=n.snapshot,s=Object.assign(Object.assign(Object.assign({},i),r),e);for(const[o,a]of Object.entries(t))this.processChange(o,a,s);n.setConfig(s)}processChange(t,e,n){var i,r;const{options:{parse:s,rename:o}}=this,a=null!==(i=o[t])&&void 0!==i?i:t,l=e.currentValue,c=null!==(r=s[t])&&void 0!==r?r:s[a];if(null==l)delete n[a];else if(c)try{n[a]=c(l)}catch(u){console.warn(`Failed to parse ${t} = ${l}`,u.message)}else n[a]=l}}let _Z=(()=>{class t{constructor(t,e,n={}){this.configState=t,this.cdr=e,this.options=n,this.initialized=!1,this.configManager=new vZ(this.configState,this.options)}ngOnInit(){var t;this._init=setTimeout(()=>this.initialize(),null!==(t=this.options.initialDelay)&&void 0!==t?t:0)}ngOnDestroy(){this._init&&clearTimeout(this._init)}ngOnChanges(t){this.configManager.addChanges(t),this.initialized&&this.configManager.applyChanges()}initialize(){this._init=void 0,!this.initialized&&(this.configManager.applyChanges(),this.initialized=!0,this.cdr.markForCheck())}}return t.\u0275fac=function(t){!function(){throw new Error("invalid")}()},t.\u0275dir=se({type:t,features:[ye]}),t})();const wZ={boolean:t=>"false"!=`${t}`,json:t=>"string"==typeof t?JSON.parse(t):t,function:t=>{if("function"!=typeof t)throw new Error("Expected a javascript function");return t}};let xZ=(()=>{class t{constructor(){this.className="ccf-spinner-overlay",this.active=!1}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-spinner-overlay"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("active",e.active))},inputs:{active:"active",text:"text"},decls:3,vars:1,consts:[[1,"content"]],template:function(t,e){1&t&&(oa(0,"mat-spinner"),ra(1,"div",0),Za(2),sa()),2&t&&(ws(2),Ja(e.text))},directives:[fZ],styles:["[_nghost-%COMP%]{display:flex;position:absolute;width:100%;height:100%;z-index:99;flex-direction:column;justify-content:center;align-items:center;pointer-events:none;visibility:hidden;opacity:0;transition:visibility .6s,opacity .4s ease-in-out}[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{margin-bottom:1rem;opacity:0;transition:opacity .3s ease-in-out .3s}.active[_nghost-%COMP%]{pointer-events:auto;visibility:visible;opacity:1}.active[_nghost-%COMP%] mat-spinner[_ngcontent-%COMP%]{opacity:1}"],changeDetection:0}),t})();const SZ=rZ,EZ=["*"];let CZ=(()=>{class t{constructor(t,e){this.className="ccf-drawer-content",this.animationsEnabled=!1,this.leftMargin=0,this.rightMargin=0,this.faded=!1,this.drawers=[],this.subscriptions=new g;const n=t.connect(this).getMessages();this.subscriptions.add(n.subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){switch(t.payload.type){case"drawer-containers-changed":return this.drawers=t.payload.drawers,this.updateFaded(),!0;case"drawer-initialized":return this.animationsEnabled=!0,!0;case"drawer-toggled":{const e=t.source.position,{opened:n,width:i,margin:r}=t.payload;return this.updateMargin(e,n,i,r),this.updateFaded(),!0}default:return!1}}updateMargin(t,e,n,i){const r=e?n+i:i;"start"===t?this.leftMargin=r:this.rightMargin=r}updateFaded(){const[t,e]=this.drawers;this.faded=(null==t?void 0:t.opened)&&(null==t?void 0:t.expanded)||(null==e?void 0:e.opened)&&(null==e?void 0:e.expanded)}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-content"]],hostVars:9,hostBindings:function(t,e){2&t&&(rl("@fadeInOut",e.faded),Ba(e.className),La("margin-left",e.leftMargin,"px")("margin-right",e.rightMargin,"px"),ja("cff-drawer-content-animations",e.animationsEnabled))},ngContentSelectors:EZ,decls:1,vars:0,template:function(t,e){1&t&&(wa(),xa(0))},styles:["[_nghost-%COMP%]{display:block;height:calc(100% - 5.5rem);z-index:2;overflow:auto}.cff-drawer-content-animations[_nghost-%COMP%]{transition-duration:.5s;transition-timing-function:ease-in-out;transition-property:margin-left,margin-right}"],data:{animation:[Vg("fadeInOut",[$g("false",Hg({opacity:1})),$g("true",Hg({opacity:0})),Wg("false <=> true",zg("1s"))])]},changeDetection:0}),t})();const OZ=["*"],TZ={params:{width:0,margin:0,margin2:0}};class kZ{constructor(){this.initialized=!1,this.deferred=new Promise(t=>{this.resolve=t})}set(){this.initialized=!0,this.resolve()}wait(){return lw(this,void 0,void 0,function*(){return this.deferred})}valueOf(){return this.initialized}}let AZ=(()=>{class t{constructor(t,e,n){this.element=n,this.className="ccf-drawer",this._position="start",this._opened=!1,this._expanded=!1,this.openedChange=new Rc(!0),this.expandedChange=new Rc(!0),this.stateChange=new Rc(!0),this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._measuredWidth=0,this.width=0,this._measuredMargin=0,this.margin2=0,this.initialized=new kZ,this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get classEnd(){return"end"===this.position}get position(){return this._position}set position(t){this._position=t||"start"}get opened(){return this._opened}set opened(t){this.toggle(md(t))}get expanded(){return this._expanded}set expanded(t){this.toggleExpanded(md(t))}get expandedStateObj(){return{value:this.expandedState2,params:{width:this.width,margin:this.measuredMargin,margin2:this.margin2}}}get measuredWidth(){if(this._measuredWidth>0)return this._measuredWidth;const t=this.element.nativeElement;if(!t)return 0;const e=t.getBoundingClientRect(),n=e.right-e.left;return 0===n?0:(this._measuredWidth=n,n)}get measuredMargin(){if(this._measuredMargin>0)return this._measuredMargin;const t=this.element.nativeElement;if(!t)return 0;const e=globalThis.getComputedStyle(t).getPropertyValue("start"===this.position?"margin-right":"margin-left"),n=Number(e.slice(0,-2));return this._measuredMargin=n,n}ngAfterViewInit(){this.initialized.set(),setTimeout(()=>this.channel.sendMessage({type:"drawer-initialized"}))}ngOnDestroy(){this.subscriptions.unsubscribe()}open(){this.toggle(!0)}close(){this.toggle(!1)}toggle(t=!this.opened){this.opened!==t&&(t?this.openedState=this.initialized.valueOf()?"open":"open-instant":(this.openedState="closed",this.expandedState="closed",this.expandedState2="collapsed",this._expanded=!1),this._opened=t,this.sendToggle())}openExpanded(){this.toggleExpanded(!0)}closeExpanded(){this.toggleExpanded(!1)}toggleExpanded(t=!this.expanded){this.expanded!==t&&(t?this.expandedState=this.initialized.valueOf()?"open":"open-instant":(this.expandedState="closed",this.expandedState2="collapsed"),this._expanded=t,this.sendToggle())}closeOpenDone(){this.openedChange.emit(this.opened)}expandCollapseDone(){this.expandedChange.emit(this.expanded)}sendToggle(){return lw(this,void 0,void 0,function*(){yield this.initialized.wait(),this.channel.sendMessage({type:"drawer-toggled",opened:this.opened,expanded:this.expanded,width:this.measuredWidth,margin:this.measuredMargin}),this.stateChange.emit()})}handleMessage(t){switch(t.payload.type){case"drawer-toggled":return this.syncExpanded(t.source),!0;default:return!1}}syncExpanded(t){(this.expanded||t.expanded)&&(this.expanded&&t.expanded?this.expandedState2=t.expandedState2="half":this.expanded?t.opened?(this.expandedState2="extended",this.width=t.measuredWidth+t.measuredMargin):(this.expandedState2="full",this.margin2=t.measuredMargin):this.opened?(t.expandedState2="extended",t.width=this.measuredWidth+this.measuredMargin):(t.expandedState2="full",t.margin2=this.measuredMargin))}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc),ea(kl))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer"]],hostVars:10,hostBindings:function(t,e){1&t&&ga("@openClose.done",function(){return e.closeOpenDone()})("@expandCollapse.done",function(){return e.expandCollapseDone()}),2&t&&(rl("@openClose",e.openedState)("@expandCollapse",e.expandedStateObj),Ba(e.className),ja("ccf-drawer-end",e.classEnd)("ccf-drawer-opened",e.opened)("ccf-drawer-expanded",e.expanded))},inputs:{position:"position",opened:"opened",expanded:"expanded"},outputs:{openedChange:"openedChange",expandedChange:"expandedChange",stateChange:"stateChange"},exportAs:["ccfDrawer"],ngContentSelectors:OZ,decls:2,vars:0,consts:[[1,"cff-drawer-inner-container"]],template:function(t,e){1&t&&(wa(),ra(0,"div",0),xa(1),sa())},styles:["[_nghost-%COMP%]{display:block;position:absolute;top:0;bottom:0;z-index:2;outline:0;transform:translate(-100%);background-color:#fff}.ccf-drawer-end[_nghost-%COMP%]{right:0;transform:translate(100%)}[_nghost-%COMP%] .cff-drawer-inner-container[_ngcontent-%COMP%]{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}"],data:{animation:[Vg("openClose",[$g("open, open-instant",Hg({transform:"none"})),$g("closed",Hg({})),Wg("closed => open-instant",zg(0)),Wg("closed <=> open, open-instant => closed",zg(".5s ease-in-out"))]),Vg("expandCollapse",[$g("collapsed",Hg({})),$g("half",Hg({width:"calc(50% - {{ margin }}px)"}),TZ),$g("extended",Hg({width:"calc(100% - {{ width }}px - {{ margin }}px)"}),TZ),$g("full",Hg({width:"calc(100% - {{ margin }}px - {{ margin2 }}px)"}),TZ),Wg("* <=> *",zg(".5s ease-in-out"))])]},changeDetection:0}),t})();function PZ(t,e){1&t&&(ra(0,"ccf-drawer-content"),xa(1,2),sa())}const MZ=[[["ccf-drawer"]],[["ccf-drawer-content"]],"*"],IZ=["ccf-drawer","ccf-drawer-content","*"];function DZ(t){throw new Error(`Multiple drawers in position ${t}`)}let RZ=(()=>{class t{constructor(t,e){this.cdr=e,this.className="ccf-drawer-container",this.subscriptions=new g,this.channel=t.connect(this),this.subscriptions.add(this.channel.getMessages().subscribe(t=>{this.handleMessage(t)&&e.markForCheck()}))}get content(){var t;return null!==(t=this.content1.first)&&void 0!==t?t:this.content2.first}get hasWrappedContent(){return 0!==this.content1.length}ngAfterViewInit(){this.drawers.changes.pipe(Kd(null)).subscribe(()=>{const t=this.validateDrawers();this.channel.sendMessage({type:"drawer-containers-changed",drawers:t}),this.cdr.markForCheck()}),this.content1.changes.pipe(Kd(null)).subscribe(()=>{this.channel.sendMessage({type:"content-container-changed",content:this.content}),this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return!0}validateDrawers(){const t=this.drawers.toArray(),e=t.filter(t=>"start"===t.position),n=t.filter(t=>"end"===t.position);return e.length>1&&DZ("start"),n.length>1&&DZ("end"),[e[0],n[0]]}}return t.\u0275fac=function(e){return new(e||t)(ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-container"]],contentQueries:function(t,e,n){if(1&t&&(Xc(n,AZ,5),Xc(n,CZ,5)),2&t){let t;Wc(t=Yc())&&(e.drawers=t),Wc(t=Yc())&&(e.content1=t)}},viewQuery:function(t,e){if(1&t&&qc(CZ,5),2&t){let t;Wc(t=Yc())&&(e.content2=t)}},hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},exportAs:["ccfDrawerContainer"],features:[_l([SZ])],ngContentSelectors:IZ,decls:3,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&(wa(MZ),xa(0),xa(1,1),Jo(2,PZ,2,0,"ccf-drawer-content",0)),2&t&&(ws(2),na("ngIf",!e.hasWrappedContent))},directives:[_h,CZ],styles:["[_nghost-%COMP%]{display:block;position:relative;z-index:1;overflow:hidden;-webkit-overflow-scrolling:touch}"],changeDetection:0}),t})();function NZ(t,e){if(1&t&&(ra(0,"mat-option",6),ra(1,"div"),Za(2),sa(),sa()),2&t){const t=e.$implicit,n=va();na("value",t),ws(1),Ba(n.optionsVisible),ws(1),tl(" ",t," ")}}let LZ=(()=>{class t{constructor(t){this.ga=t,this.selectionChange=new Rc,this.optionsVisible="invisible"}toggleOptions(){this.optionsVisible="visible"===this.optionsVisible?"invisible":"visible"}selectionChanged(t){this.selection=t,this.ga.event("selection_change","dropdown",`${this.label}:${t}`),this.selectionChange.emit(t)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dropdown"]],inputs:{label:"label",options:"options",selection:"selection"},outputs:{selectionChange:"selectionChange"},decls:7,vars:3,consts:[[1,"ccf-dropdown","wrapper"],[1,"container"],[1,"dropdown-form-field"],[1,"label"],["disableOptionCentering","true","panelClass","option-panel","disableRipple","true",1,"selected-value",3,"value","selectionChange","openedChange"],[3,"value",4,"ngFor","ngForOf"],[3,"value"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"mat-form-field",2),ra(3,"div",3),Za(4),sa(),ra(5,"mat-select",4),fa("selectionChange",function(t){return e.selectionChanged(t.value)})("openedChange",function(){return e.toggleOptions()}),Jo(6,NZ,3,5,"mat-option",5),sa(),sa(),sa(),sa()),2&t&&(ws(4),tl(" ",e.label," "),ws(1),na("value",e.selection),ws(1),na("ngForOf",e.options))},directives:[lU,XX,yh,av],styles:["@-webkit-keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@keyframes slideInHorizontalDropdown{0%{width:0}to{width:9.85rem}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dropdown-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:1em;padding-right:1em;height:3rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{font-size:.875rem;border:none}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix mat-select{font-size:1rem;font-weight:bold}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .option-panel{-webkit-animation:slideInHorizontalDropdown .3s;animation:slideInHorizontalDropdown .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;position:absolute!important;top:1.55rem;max-width:9.5rem} .option-panel .mat-option{border-bottom-width:1px;border-bottom-style:solid;padding-left:1em} .option-panel :last-child{border-bottom:none} .cdk-overlay-pane{min-width:0rem!important}.dropdown-form-field[_ngcontent-%COMP%]{height:3rem;width:100%}.dropdown-form-field[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{padding-bottom:.063rem}.dropdown-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem} .ccf-dropdown .mat-select-arrow-wrapper{transform:translatey(-.5em)}"],changeDetection:0}),t})();const jZ=["popover"];function FZ(t,e){if(1&t){const t=ua();ra(0,"div",7,8),ra(2,"div"),ra(3,"div",9),Za(4),sa(),ra(5,"input",10),fa("keyup",function(e){return $e(t),va().onKeyLow(e)}),sa(),sa(),ra(6,"ng5-slider",11),fa("valueChange",function(e){return $e(t),va().lowValue=e})("highValueChange",function(e){return $e(t),va().highValue=e})("userChangeEnd",function(){return $e(t),va().sliderValueChanged()}),sa(),ra(7,"div"),ra(8,"div",12),Za(9),sa(),ra(10,"input",13),fa("keyup",function(e){return $e(t),va().onKeyHigh(e)}),sa(),sa(),sa()}if(2&t){const t=va();ws(2),nl("label min fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.floor,"> "),ws(1),Sa("value",t.lowValue),ws(1),nl("slider fade-in ",t.contentsVisible,""),na("options",t.options)("value",t.lowValue)("highValue",t.highValue),ws(1),nl("label max fade-in ",t.contentsVisible,""),ws(2),tl(" ",t.options.ceil," "),ws(1),Sa("value",t.highValue)}}let BZ=(()=>{class t{constructor(t,e,n){this.element=e,this.ga=n,this.selectionChange=new Rc,this.isSliderOpen=!1,this.contentsVisible="invisible",this.isSliderInitialized=!1;const i=t.position().flexibleConnectedTo(e).withPositions([{originX:"start",originY:"bottom",overlayX:"start",overlayY:"top"}]);this.overlayRef=t.create({panelClass:"slider-pane",positionStrategy:i})}get rangeLabel(){const{lowValue:t,highValue:e}=this;return t===e?`${t}`:`${t}-${e}`}ngOnChanges(t){t.valueRange&&this.optionsChanged(),t.selection&&(this.lowValue=Math.min(...this.selection),this.highValue=Math.max(...this.selection))}optionsChanged(){var t,e;this.options={floor:this.valueRange?this.valueRange[0]:0,ceil:this.valueRange?this.valueRange[1]:0,step:1,hideLimitLabels:!0,hidePointerLabels:!0},this.lowValue=null!==(t=this.options.floor)&&void 0!==t?t:0,this.highValue=null!==(e=this.options.ceil)&&void 0!==e?e:0}ngOnDestroy(){this.overlayRef.dispose()}closeSliderPopover(t){var e,n;const{element:i,isSliderOpen:r,popoverElement:s}=this;r&&(i.nativeElement.contains(t)||(null===(n=null===(e=null==s?void 0:s.nativeElement)||void 0===e?void 0:e.contains)||void 0===n?void 0:n.call(e,t))||(this.overlayRef.detach(),this.isSliderInitialized=!1,this.isSliderOpen=!1,this.contentsVisible="invisible"))}toggleSliderPopover(){const{isSliderOpen:t,isSliderInitialized:e}=this;e?(this.overlayRef.detach(),this.isSliderInitialized=!1):!e&&!t&&this.initializeSliderPopover(),this.contentsVisible="visible"===this.contentsVisible?"invisible":"visible",this.isSliderOpen=!t}sliderValueChanged(){const{lowValue:t,highValue:e}=this;this.selection=[t,e],this.ga.event("slider_range_change","dual_slider",`${this.label}:${t}:${e}`),this.selectionChange.emit(this.selection)}initializeSliderPopover(){const{overlayRef:t,popoverPortal:e}=this;t.attach(e),t.updatePosition(),this.isSliderInitialized=!0}onKeyLow(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.lowValue=e),t.target.value=String(this.lowValue),t.target.blur(),this.sliderValueChanged())}onKeyHigh(t){const e=Number(t.target.value);"Enter"===t.key&&(e>=Number(this.options.floor)&&e<=Number(this.options.ceil)&&(this.highValue=e),t.target.value=String(this.highValue),t.target.blur(),this.sliderValueChanged())}}return t.\u0275fac=function(e){return new(e||t)(ea(kf),ea(kl),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-dual-slider"]],viewQuery:function(t,e){if(1&t&&(qc(Vp,7),qc(jZ,5,kl)),2&t){let t;Wc(t=Yc())&&(e.popoverPortal=t.first),Wc(t=Yc())&&(e.popoverElement=t.first)}},hostBindings:function(t,e){1&t&&fa("click",function(t){return e.closeSliderPopover(t.target)},!1,Ir)("touchstart",function(t){return e.closeSliderPopover(t.target)},!1,Ir)},inputs:{label:"label",valueRange:"valueRange",selection:"selection"},outputs:{selectionChange:"selectionChange"},features:[ye],decls:10,vars:4,consts:[[1,"ccf-slider","wrapper"],[1,"container"],["class","ccf-slider detached",4,"cdk-portal"],[1,"slider-form-field",3,"click"],[1,"slider-labels"],[1,"name-label"],[1,"range-label"],[1,"ccf-slider","detached"],["popover",""],[1,"label","floor"],["type","text",1,"input-low",3,"value","keyup"],[3,"options","value","highValue","valueChange","highValueChange","userChangeEnd"],[1,"label","ceil"],["type","text",1,"input-high",3,"value","keyup"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Jo(2,FZ,11,16,"div",2),ra(3,"mat-form-field",3),fa("click",function(){return e.toggleSliderPopover()}),ra(4,"div",4),ra(5,"span",5),Za(6),sa(),ra(7,"span",6),Za(8),sa(),sa(),oa(9,"mat-select"),sa(),sa(),sa()),2&t&&(ws(3),ja("highlight",e.isSliderOpen),ws(3),Ja(e.label),ws(2),Ja(e.rangeLabel))},directives:[zp,lU,XX,BY],styles:[".slider-form-field[_ngcontent-%COMP%]{width:100%;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper{padding-left:.25rem;padding-right:.25rem;height:3rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;font-size:.875rem}.slider-form-field[_ngcontent-%COMP%] .mat-form-field-wrapper .mat-form-field-underline{left:0rem;bottom:0rem;transform:none;height:.125rem}.slider-labels[_ngcontent-%COMP%]{display:flex;flex-direction:column}.slider-labels[_ngcontent-%COMP%] .name-label[_ngcontent-%COMP%]{padding-bottom:.25rem}.slider-labels[_ngcontent-%COMP%] .range-label[_ngcontent-%COMP%]{font-weight:bold} .ccf-slider.wrapper .mat-select-arrow-wrapper{transform:translatey(-1.5em)}@-webkit-keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@keyframes slideInHorizontalSlider{0%{width:0}to{width:20em}}@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.visible[_ngcontent-%COMP%]{-webkit-animation:fadeIn .3s;animation:fadeIn .3s;transition-delay:.275s;-webkit-animation-delay:.275s;animation-delay:.275s}.invisible[_ngcontent-%COMP%]{opacity:0} .slider-pane{position:absolute!important;top:-1px}.ccf-slider.detached[_ngcontent-%COMP%]{-webkit-animation:slideInHorizontalSlider .3s;animation:slideInHorizontalSlider .3s;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;box-shadow:.2rem .2rem 1rem #0000003e;display:flex;justify-content:center;align-items:center;width:0rem;height:4.375rem;padding:.75rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] {visibility:hidden;margin-top:.9375rem;margin-bottom:.9375rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-bar{opacity:.2;height:.15rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-selection{opacity:1}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer{width:1rem;height:1rem;top:-.405rem}.ccf-slider.detached[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] .ng5-slider-pointer:after{display:none}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:2rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.min[_ngcontent-%COMP%]{margin-right:1rem}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%]{margin-left:1rem;align-items:flex-end}.ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label.max[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{text-align:right}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .floor[_ngcontent-%COMP%], .ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .ceil[_ngcontent-%COMP%]{font-size:.875rem}.ccf-slider.detached[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] input[_ngcontent-%COMP%]{border:none;width:1.75rem;font-size:1rem;font-weight:bold;padding:0}"]}),t})();function VZ(t,e){if(1&t){const t=ua();ra(0,"div",4),ra(1,"mat-checkbox",5),fa("change",function(e){const n=$e(t).$implicit;return va().filterOnChange(e,n)}),Za(2),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("checked",null==n.selection?null:n.selection.includes(t)),ws(1),tl(" ",t," ")}}let zZ=(()=>{class t{constructor(t){this.ga=t,this.selection=[],this.columns=3,this.selectionChange=new Rc}filterOnChange(t,e){t.checked?(this.selection=[...this.selection,e],this.ga.event("filter_added","filter_checkbox",e)):(this.selection=this.selection.filter(t=>t!==e),this.ga.event("filter_removed","filter_checkbox",e)),this.selectionChange.emit(this.selection)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-checkbox"]],inputs:{label:"label",options:"options",selection:"selection",columns:"columns"},outputs:{selectionChange:"selectionChange"},decls:5,vars:6,consts:[[1,"filter-container"],[1,"filter-label"],[1,"options-container"],["class","option",4,"ngFor","ngForOf"],[1,"option"],[3,"checked","change"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),Za(2),sa(),ra(3,"div",2),Jo(4,VZ,3,2,"div",3),sa(),sa()),2&t&&(ws(2),Ja(e.label),ws(1),ja("three",3===e.columns)("four",4===e.columns),ws(1),na("ngForOf",e.options))},directives:[yh,OX],styles:[".mat-checkbox.mat-accent .mat-checkbox-checkmark-path{stroke:#fff!important} .mat-checkbox.mat-accent .mat-checkbox-inner-container{margin-right:1rem}.filter-label[_ngcontent-%COMP%]{margin-bottom:.5rem;font-weight:bold}.options-container[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap}.options-container.three[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:33%}.options-container.four[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{width:25%}.option[_ngcontent-%COMP%]{color:#fafafa}"],changeDetection:0}),t})();const UZ=function(){return["Both","Male","Female"]},HZ=function(){return[1,110]},$Z=function(){return[13,83]};let GZ=(()=>{class t{constructor(t){this.ga=t,this.filtersChange=new Rc,this.applyFilters=new Rc}updateFilter(t,e){this.filters=Object.assign(Object.assign({},this.filters),{[e]:t}),this.ga.event("filter_update","filter_content",`${e}:${t}`),this.filtersChange.emit(this.filters)}applyButtonClick(){this.ga.event("filters_applied","filter_content"),this.applyFilters.emit(this.filters)}refreshFilters(){this.filters=JSON.parse(JSON.stringify(iX)),this.ga.event("filters_reset","filter_content"),this.filtersChange.emit(this.filters)}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-content"]],inputs:{hidden:"hidden",filters:"filters",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange",applyFilters:"applyFilters"},decls:14,vars:23,consts:[[1,"patient-filters"],["label","Sex",3,"options","selection","selectionChange"],["label","Age",3,"valueRange","selection","selectionChange"],["label","BMI",3,"valueRange","selection","selectionChange"],[1,"filter","assays"],["label","Assay Types",3,"columns","options","selection","selectionChange"],[1,"filter","providers"],["label","Tissue Providers",3,"columns","options","selection","selectionChange"],[1,"button-container"],["mat-button","",1,"outline-button",3,"click"],[1,"refresh-icon"],[1,"icon","refresh",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"ccf-dropdown",1),fa("selectionChange",function(t){return e.updateFilter(t,"sex")}),sa(),ra(2,"ccf-dual-slider",2),fa("selectionChange",function(t){return e.updateFilter(t,"ageRange")}),sa(),ra(3,"ccf-dual-slider",3),fa("selectionChange",function(t){return e.updateFilter(t,"bmiRange")}),sa(),sa(),ra(4,"div",4),ra(5,"ccf-checkbox",5),fa("selectionChange",function(t){return e.updateFilter(t,"technologies")}),sa(),sa(),ra(6,"div",6),ra(7,"ccf-checkbox",7),fa("selectionChange",function(t){return e.updateFilter(t,"tmc")}),sa(),sa(),ra(8,"div",8),ra(9,"button",9),fa("click",function(){return e.applyButtonClick()}),Za(10,"APPLY FILTERS"),sa(),ra(11,"div",10),ra(12,"mat-icon",11),fa("click",function(){return e.refreshFilters()}),Za(13,"refresh"),sa(),sa(),sa()),2&t&&(ja("hidden",e.hidden),ws(1),na("options",Oc(20,UZ))("selection",null==e.filters?null:e.filters.sex),ws(1),na("valueRange",Oc(21,HZ))("selection",null==e.filters?null:e.filters.ageRange),ws(1),na("valueRange",Oc(22,$Z))("selection",null==e.filters?null:e.filters.bmiRange),ws(1),ja("hidden",e.hidden),ws(1),na("columns",4)("options",e.technologyFilters)("selection",null==e.filters?null:e.filters.technologies),ws(1),ja("hidden",e.hidden),ws(1),na("columns",3)("options",e.providerFilters)("selection",null==e.filters?null:e.filters.tmc),ws(1),ja("hidden",e.hidden))},directives:[LZ,BZ,zZ,__,p_],styles:[".filter[_ngcontent-%COMP%]{margin-top:2rem}.filter.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.filter.assays[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{margin-right:0 rem;width:25%}.button-container[_ngcontent-%COMP%]{margin-top:2rem;display:flex;flex-direction:row-reverse;align-items:center}.button-container.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.outline-button[_ngcontent-%COMP%]{box-shadow:.1rem .1rem .2rem #0000001d}.refresh-icon[_ngcontent-%COMP%]{padding:.25rem;border-radius:.25rem;margin-right:1rem;display:flex;justify-content:center;align-items:center;transition:.6s}.refresh-icon[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{cursor:pointer;transition:.6s;transition-property:background}.patient-filters[_ngcontent-%COMP%]{display:flex;width:90%;padding-top:1rem}.patient-filters.hidden[_ngcontent-%COMP%]{opacity:0;transition-duration:.2s}.patient-filters[_ngcontent-%COMP%] ccf-dual-slider[_ngcontent-%COMP%]{margin-left:.5rem;width:33%}.patient-filters[_ngcontent-%COMP%] ccf-dropdown[_ngcontent-%COMP%]{width:33%}"],changeDetection:0}),t})();function WZ(t,e){1&t&&(ra(0,"div"),ra(1,"mat-icon",7),Za(2,"close"),sa(),sa())}function qZ(t,e){1&t&&oa(0,"mat-icon",8)}let XZ=(()=>{class t{constructor(){this.filtersChange=new Rc,this.filtersVisible=!1}toggleFilterVisible(){this.filtersVisible=!this.filtersVisible}removeBox(){this.filtersVisible=!1}applyFilters(t){this.filters=t,this.filtersChange.emit(t),this.removeBox()}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-filters-popover"]],inputs:{filters:"filters",drawerExpanded:"drawerExpanded",technologyFilters:"technologyFilters",providerFilters:"providerFilters"},outputs:{filtersChange:"filtersChange"},decls:8,vars:12,consts:[[1,"filters-popover"],[1,"show-hide",3,"click"],[4,"ngIf","ngIfElse"],["notShow",""],[1,"popup-container"],[1,"popup-body"],[3,"technologyFilters","providerFilters","hidden","filters","applyFilters"],[1,"icon"],["svgIcon","filter",1,"icon","funnel"]],template:function(t,e){if(1&t&&(ra(0,"div",0),ra(1,"button",1),fa("click",function(){return e.toggleFilterVisible()}),Jo(2,WZ,3,0,"div",2),Jo(3,qZ,1,0,"ng-template",null,3,Jc),sa(),ra(5,"div",4),ra(6,"div",5),ra(7,"ccf-filters-content",6),fa("applyFilters",function(t){return e.applyFilters(t)}),sa(),sa(),sa(),sa()),2&t){const t=ta(4);ja("expanded",e.drawerExpanded),ws(2),na("ngIf",e.filtersVisible)("ngIfElse",t),ws(3),ja("visible",e.filtersVisible)("hidden",!e.filtersVisible),ws(2),na("technologyFilters",e.technologyFilters)("providerFilters",e.providerFilters)("hidden",!e.filtersVisible)("filters",e.filters)}},directives:[_h,GZ,p_],styles:[".filters-popover[_ngcontent-%COMP%]{position:inherit}.filters-popover.expanded[_ngcontent-%COMP%]{position:relative}.filters-popover.expanded[_ngcontent-%COMP%] .popup-container[_ngcontent-%COMP%]{right:inherit}.filters-popover.expanded[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding-left:4em!important}.popup-container[_ngcontent-%COMP%]{position:absolute;z-index:5;top:1.2rem;left:1.48rem;box-shadow:.2rem .2rem 1rem #00000058}.popup-container[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{padding:1.5rem;position:relative;height:26.5rem}.popup-container.visible[_ngcontent-%COMP%]{width:35rem;height:26.5rem;transition:width .2s ease-in-out;border-width:1px}.popup-container.visible[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:1;transition-delay:.3s;transition-duration:.2s}.popup-container.hidden[_ngcontent-%COMP%]{width:0;height:0;transition:all .2s ease-out;transition-delay:.3s;pointer-events:none}.popup-container.hidden[_ngcontent-%COMP%] .popup-body[_ngcontent-%COMP%]{opacity:0;transition:opacity .2s ease-in-out}.show-hide[_ngcontent-%COMP%]{background:none;border:none;z-index:10;position:relative;cursor:pointer;outline:none;padding:.5rem;border-radius:.25rem;transition:.6s}"],changeDetection:0}),t})();class YZ{constructor(){this.treeModel$=new lp(1),this.nodes$=this.treeModel$.pipe(D(t=>Object.values(t.nodes))),this.rootNode$=this.treeModel$.pipe(D(t=>t.nodes[t.root]))}setTreeModel(t){this.treeModel$.next(t),this.treeModel=t}filter(t){return this.nodes$.pipe(D(e=>this.lookup(e,t.toLowerCase())))}lookup(t,e){const n=new Map;return t&&t.forEach(t=>{if(t.label.toLowerCase().includes(e)&&!n.get(t.id))n.set(t.id,{index:this.getIndexOfMatch(t.label,e),displayLabel:this.formatLabel(t.label,e),node:t});else{const i=t.synonymLabels.find(t=>t.toLowerCase().includes(e));i&&!n.get(t.id)&&n.set(t.id,{index:this.getIndexOfMatch(t.label+" ("+i+")",e),displayLabel:this.formatLabel(t.label+" ("+i+")",e),node:t})}}),Array.from(n.values())}getIndexOfMatch(t,e){return t.toLowerCase().indexOf(e)}formatLabel(t,e){const n=this.getIndexOfMatch(t,e);return[t.slice(0,n),t.slice(n,n+e.length),t.slice(n+e.length)]}getChildren(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};return(0,_G.at)(i,t.children)}}YZ.\u0275fac=function(t){return new(t||YZ)},YZ.\u0275prov=xt({token:YZ,factory:YZ.\u0275fac}),sw([iB.ak],YZ.prototype,"getChildren",null);class KZ{constructor(t,e){this.original=t,this.level=e,this.visible=!0,this.opacity=20}get label(){return this.original.label}get expandable(){return this.original.children.length>0}static create(t,e){return new KZ(t,e)}}function QZ(t,e){if(1&t){const t=ua();ra(0,"div",4),fa("click",function(e){const n=$e(t).node,i=va();return i.select(e.ctrlKey,n,!0,!i.isSelected(n))}),Za(1),sa()}if(2&t){const t=e.node,n=va();ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label))("filtered-out",!n.occurenceData[t.original.id]&&!!n.termData[t.original.id])("unavailable",!n.termData[t.original.id])("selected",n.isSelected(t)),ws(1),Ja("colon"===t.label?"large intestine":t.label)}}function ZZ(t,e){1&t&&ca(0)}const JZ=function(t){return{node:t}};function tJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",5),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,9),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),oa(6,"div",10),Jo(7,ZZ,1,0,"ng-container",11),ra(8,"div",12),Za(9),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(3),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(18,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}function eJ(t,e){1&t&&ca(0)}function nJ(t,e){if(1&t){const t=ua();ra(0,"mat-tree-node",13),fa("mouseleave",function(){$e(t);const e=ta(5);return va().mouseOut(),e.reset()}),ra(1,"div"),ra(2,"mat-icon",6),fa("mouseenter",function(){const e=$e(t).$implicit;return va().mouseOver(e)}),sa(),ra(3,"div",7),ra(4,"ccf-opacity-slider",8,14),fa("opacityChange",function(e){const n=$e(t).$implicit;return va().updateOpacity(n,e)})("opacityReset",function(){const e=$e(t).$implicit;return va().resetNode(e)})("visibilityToggle",function(){const e=$e(t).$implicit;return va().toggleVisibility(e)}),sa(),sa(),sa(),ra(6,"button",15),ra(7,"mat-icon",16),Za(8),sa(),sa(),Jo(9,eJ,1,0,"ng-container",11),ra(10,"div",12),Za(11),sa(),sa()}if(2&t){const t=e.$implicit,n=va(),i=ta(2);na("matTreeNodePaddingIndent",n.indent),ws(1),La("display",-1!==t.opacity?"none":"block"),ws(1),La("left",n.getLeftIndent(t.level)),ja("fade",!0!==t.visible),ws(1),La("left",n.getLeftIndent(t.level)),ja("hidden",t.label!==(null==n.highlightedNode?null:n.highlightedNode.label)),ws(1),na("visible",t.visible)("opacity",t.opacity),ws(2),ja("hidden",t.label===(null==n.highlightedNode?null:n.highlightedNode.label)),Zo("aria-label","Toggle ",t.label,""),ws(2),tl(" ",n.control.isExpanded(t)?"expand_less":"expand_more"," "),ws(1),na("ngTemplateOutlet",i)("ngTemplateOutletContext",Tc(22,JZ,t)),ws(1),ja("suborgan",t.level>1),ws(1),Ja(n.occurenceData[t.original.id]||0)}}const iJ=(0,_G.property)("level"),rJ=(0,_G.property)("expandable");let sJ=(()=>{class t{constructor(t,e){this.cdr=t,this.ga=e,this.atScrollBottom=!1,this.nodeSelected=new Rc,this.nodeChanged=new Rc,this.indent="1.5rem",this.control=new WY(iJ,rJ),this.flattener=new dK(KZ.create,iJ,rJ,_G.invoke.bind(void 0,this,"getChildren")),this.dataSource=new pK(this.control,this.flattener),this._nodes=void 0,this.anySelectionsMade=!1,this.selectedNodes=[]}set nodes(t){var e;this._nodes=t,this.control&&(this.dataSource.data=null!==(e=this._nodes)&&void 0!==e?e:[])}get nodes(){return this._nodes}set getChildren(t){var e;this._getChildren=t,this.dataSource.data=null!==(e=this.nodes)&&void 0!==e?e:[]}get getChildren(){return this._getChildren}set occurenceData(t){this._occurenceData=t||{}}get occurenceData(){return this._occurenceData}set termData(t){this._termData=t||{}}get termData(){return this._termData}ngOnInit(){this.control.dataNodes&&this.control.expand(this.control.dataNodes[0])}ngOnChanges(t){if(t.ontologyFilter){const e=t.ontologyFilter.currentValue;(null==e?void 0:e.length)>=0&&this.selectByIDs(e)}t.rootNode&&this.selectByIDs([t.rootNode.currentValue])}selectByIDs(t){const e=this.control.dataNodes,n=e.filter(e=>t.indexOf(e.original.id)>-1);(null==n?void 0:n.length)>0&&(this.selectedNodes=n,this.ga.event("nodes_selected_by_ids","ontology_tree",n.map(t=>t.label).join(",")),this.control.collapseAll(),this.selectedNodes.forEach(t=>{this.expandAndSelect(t.original,t=>{var n;return null===(n=e.find(e=>e.original.id===t.parent))||void 0===n?void 0:n.original},!0)}))}expandAndSelect(t,e,n=!1){var i;const{cdr:r,control:s}=this,o=new Set;let a=e(t);for(;a;)o.add(a),a=e(a);const l=(0,_G.filter)(s.dataNodes,t=>o.has(t.original)),c=s.dataNodes.find(e=>e.original===t);n||(this.selectedNodes=[],s.collapseAll());for(const u of l)s.expand(u);"body"===t.label&&(null===(i=s.dataNodes)||void 0===i?void 0:i.length)>0&&s.expand(s.dataNodes[0]),this.select(n,c,!1,!0),r.detectChanges()}isInnerNode(t,e){return e.expandable}isSelected(t){return(null==t?void 0:t.original.id)===this.rootNode||this.selectedNodes.filter(e=>(null==t?void 0:t.original.label)===(null==e?void 0:e.original.label)).length>0}select(t,e,n,i){if(this.anySelectionsMade||(this.selectedNodes=[],this.anySelectionsMade=!0),void 0===e)return this.selectedNodes=[],void this.ga.event("nodes_unselected","ontology_tree");t?i?this.selectedNodes.indexOf(e)<0&&this.selectedNodes.push(e):this.selectedNodes.splice(this.selectedNodes.indexOf(e),1):(this.selectedNodes=[],i&&this.selectedNodes.push(e)),this.ga.event("nodes_selected","ontology_tree",this.selectedNodes.map(t=>t.label).join(",")),n&&this.nodeSelected.emit(this.selectedNodes.map(t=>null==t?void 0:t.original))}mouseOver(t){this.highlightedNode=t}mouseOut(){this.highlightedNode=void 0}updateOpacity(t,e){t.opacity=e,this.ga.event("opacity_update","ontology_tree",t.label,e),this.nodeChanged.emit(t)}resetNode(t){t.opacity=20,t.visible=!0,this.ga.event("node_reset","ontology_tree",t.label),this.nodeChanged.emit(t)}toggleVisibility(t){t.visible=!0!==t.visible,this.ga.event("visibility_update","ontology_tree",t.label,+t.visible),this.nodeChanged.emit(t)}getLeftIndent(t){return-1.5*t+"rem"}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<20}}return t.\u0275fac=function(e){return new(e||t)(ea(tc),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-tree"]],inputs:{ontologyFilter:"ontologyFilter",rootNode:"rootNode",nodes:"nodes",getChildren:"getChildren",occurenceData:"occurenceData",termData:"termData",header:"header"},outputs:{nodeSelected:"nodeSelected",nodeChanged:"nodeChanged"},features:[ye],decls:5,vars:5,consts:[[1,"ccf-ontology-tree",3,"dataSource","treeControl","scroll"],["selectableRegion",""],["class","node leaf-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef"],["class","node inner-node","matTreeNodePadding","",3,"matTreeNodePaddingIndent","mouseleave",4,"matTreeNodeDef","matTreeNodeDefWhen"],[1,"text",3,"click"],["matTreeNodePadding","",1,"node","leaf-node",3,"matTreeNodePaddingIndent","mouseleave"],["svgIcon","app:opacity",1,"icon","opacity",3,"mouseenter"],[1,"slider"],[3,"visible","opacity","opacityChange","opacityReset","visibilityToggle"],["slider1",""],[1,"non-expandable"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"num-results"],["matTreeNodePadding","",1,"node","inner-node",3,"matTreeNodePaddingIndent","mouseleave"],["slider2",""],["mat-icon-button","","matTreeNodeToggle","",1,"toggle"],[1,"icon","font-icon"]],template:function(t,e){1&t&&(ra(0,"mat-tree",0),fa("scroll",function(t){return e.onScroll(t)}),Jo(1,QZ,2,9,"ng-template",null,1,Jc),Jo(3,tJ,10,20,"mat-tree-node",2),Jo(4,nJ,12,24,"mat-tree-node",3),sa()),2&t&&(ja("header-hidden",!e.header),na("dataSource",e.dataSource)("treeControl",e.control),ws(4),na("matTreeNodeDefWhen",e.isInnerNode))},directives:[cK,oK,sK,aK,p_,JW,kh,__,uK],styles:[".ccf-ontology-tree[_ngcontent-%COMP%]{background:none;scrollbar-width:thin;max-height:calc(50vh - 10rem);overflow:auto;overflow-x:hidden}.ccf-ontology-tree.header-hidden[_ngcontent-%COMP%]{max-height:40vh}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .toggle[_ngcontent-%COMP%]{z-index:-1;opacity:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]:first-of-type .text[_ngcontent-%COMP%]{margin-left:.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%]{min-height:0;font-size:1rem;margin-bottom:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%]{width:100%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:width;position:relative;z-index:1}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%]{width:0}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider.hidden[_ngcontent-%COMP%] ccf-opacity-slider[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider{height:1.5rem;margin-left:1rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .slider-box .slider-and-label{width:100%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider{height:1.5rem;width:15rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .mat-slider .mat-slider-wrapper{top:12px}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .slider[_ngcontent-%COMP%] ccf-opacity-slider .opacity-value{width:3rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-right:.25rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node.inner-node[_ngcontent-%COMP%] button.hidden[_ngcontent-%COMP%]{display:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .opacity[_ngcontent-%COMP%]{position:relative;min-width:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:normal}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .autocomplete-open[_ngcontent-%COMP%] .toggle[_ngcontent-%COMP%]{border-bottom:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .non-expandable[_ngcontent-%COMP%]{margin-left:1.5rem}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{white-space:nowrap;cursor:pointer;margin-left:1rem;opacity:1;width:50%;transition-duration:.25s;transition-timing-function:ease-in-out;transition-property:opacity,width}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.hidden[_ngcontent-%COMP%]{opacity:0;width:0%}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .text.unavailable[_ngcontent-%COMP%]{pointer-events:none}.ccf-ontology-tree[_ngcontent-%COMP%] .node[_ngcontent-%COMP%] .num-results[_ngcontent-%COMP%]{margin-left:auto}.scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:90%;bottom:0;pointer-events:none}.scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function oJ(t,e){if(1&t&&(ra(0,"mat-option",8),ra(1,"span",9),Za(2),sa(),ra(3,"span",10),Za(4),sa(),ra(5,"span",11),Za(6),sa(),sa()),2&t){const t=e.$implicit;na("value",t),ws(2),Ja(t.displayLabel[0]),ws(2),Ja(t.displayLabel[1]),ws(2),Ja(t.displayLabel[2])}}let aJ=(()=>{class t{constructor(t,e){this.ontologyService=t,this.ga=e,this.selected=new Rc,this.formControl=new gz(""),this.autoCompleteOpen=!1}ngOnInit(){this.filteredResults$=this.formControl.valueChanges.pipe(Hd(t=>"string"==typeof t),Kd(""),Qd(t=>this.ontologyService.filter(t)),D(t=>(0,_G.sortBy)(t,[this.sortBySynonymResult,"index",this.sortLexically])))}displayFormatter(t){var e;return(null!==(e=null==t?void 0:t.displayLabel)&&void 0!==e?e:[]).join("")}sortBySynonymResult(t){return t.displayLabel.join().includes("(")?1:-1}sortLexically(t){return t.node.label.toLowerCase()}onSelect(t){const e=(0,_G.get)(t,["option","value","node"]);e&&(this.ga.event("search","ontology_search",e.id),this.selected.emit(e),this.formControl.reset())}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ),ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-search"]],inputs:{placeholderText:"placeholderText"},outputs:{selected:"selected"},decls:10,vars:9,consts:[[1,"ccf-ontology-search"],["appearance","outline",1,"field"],["matPrefix","","color","primary",1,"search"],["type","text","matInput","",1,"input",3,"placeholder","formControl","matAutocomplete"],[1,"ccf-ontology-search","detached","autocomplete",3,"displayWith","optionSelected","opened","closed"],["autocomplete",""],[1,"results-container"],[3,"value",4,"ngFor","ngForOf"],[3,"value"],[1,"prefix"],[1,"search-term"],[1,"suffix"]],template:function(t,e){if(1&t&&(ra(0,"form",0),ra(1,"mat-form-field",1),ra(2,"mat-icon",2),Za(3,"search"),sa(),oa(4,"input",3),ra(5,"mat-autocomplete",4,5),fa("optionSelected",function(t){return e.onSelect(t)})("opened",function(){return e.autoCompleteOpen=!0})("closed",function(){return e.autoCompleteOpen=!1}),ra(7,"div",6),Jo(8,oJ,7,4,"mat-option",7),Mc(9,"async"),sa(),sa(),sa(),sa()),2&t){const t=ta(6);ja("autocomplete-open",e.autoCompleteOpen),ws(4),na("placeholder",e.placeholderText)("formControl",e.formControl)("matAutocomplete",t),ws(1),na("displayWith",e.displayFormatter),ws(3),na("ngForOf",Ic(9,7,e.filteredResults$))}},directives:[wz,YV,_z,lU,p_,nU,LU,TV,TU,XV,Cz,xU,yh,av],pipes:[Dh],styles:[".ccf-ontology-search[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .field[_ngcontent-%COMP%]{width:100%}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem .25rem 0;margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper{margin:0}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix{border:none;height:3rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-infix input{margin-left:.4rem}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-flex .mat-form-field-prefix{top:.5rem;border:none}.ccf-ontology-search[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0 .25rem;min-width:2.5rem} .ccf-ontology-search.detached{border:.125rem solid;border-top:none;border-radius:0 0 .25rem .25rem;max-height:18rem} .ccf-ontology-search.detached .results-container{width:23.75rem;margin-bottom:1rem;overflow:auto;max-height:15rem;scrollbar-width:thin} .ccf-ontology-search.detached .results-container mat-option{height:1.5rem;width:23.75rem} .ccf-ontology-search.detached .results-container mat-option .search-term{text-decoration:underline}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-start{border-radius:.25rem 0 0;border-bottom:none}.autocomplete-open[_ngcontent-%COMP%] .mat-form-field-appearance-outline .mat-form-field-outline-end{border-radius:0 .25rem 0 0;border-bottom:none}"],changeDetection:0}),t})();const lJ=function(t){return[t]};function cJ(t,e){if(1&t){const t=ua();ra(0,"ccf-ontology-tree",2),fa("nodeSelected",function(e){return $e(t),va().ontologySelection.emit(e)}),sa()}if(2&t){const t=e.ngIf,n=va();na("nodes",Tc(7,lJ,t))("rootNode",t.id)("getChildren",n.ontologySearchService.getChildren)("occurenceData",n.occurenceData)("termData",n.termData)("ontologyFilter",n.ontologyFilter)("header",n.header)}}let uJ=(()=>{class t{constructor(t){this.ontologySearchService=t,this.ontologySelection=new Rc}ngOnChanges(t){"treeModel"in t&&this.treeModel&&this.ontologySearchService.setTreeModel(this.treeModel)}selected(t){var e,n;const i=null!==(n=null===(e=this.treeModel)||void 0===e?void 0:e.nodes)&&void 0!==n?n:{};this.tree.expandAndSelect(t,t=>i[t.parent])}}return t.\u0275fac=function(e){return new(e||t)(ea(YZ))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-ontology-selection"]],viewQuery:function(t,e){if(1&t&&qc(sJ,5),2&t){let t;Wc(t=Yc())&&(e.tree=t.first)}},inputs:{occurenceData:"occurenceData",termData:"termData",treeModel:"treeModel",ontologyFilter:"ontologyFilter",header:"header",placeholderText:"placeholderText"},outputs:{ontologySelection:"ontologySelection"},features:[_l([YZ]),ye],decls:3,vars:4,consts:[[3,"placeholderText","selected"],["class","tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected",4,"ngIf"],[1,"tree",3,"nodes","rootNode","getChildren","occurenceData","termData","ontologyFilter","header","nodeSelected"]],template:function(t,e){1&t&&(ra(0,"ccf-ontology-search",0),fa("selected",function(t){return e.selected(t)}),sa(),Jo(1,cJ,1,9,"ccf-ontology-tree",1),Mc(2,"async")),2&t&&(na("placeholderText",e.placeholderText),ws(1),na("ngIf",Ic(2,2,e.ontologySearchService.rootNode$)))},directives:[aJ,_h,sJ],pipes:[Dh],styles:[""],changeDetection:0}),t})(),hJ=(()=>{class t{constructor(t,e,n){this.drawer=t,this.cdr=n,this.className="ccf-drawer-toggle-button",this.position="start",this.opened=!1,this.subscriptions=new g;const i=e.connect(this);this.subscriptions.add(i.getMessagesFromSource(t).subscribe(t=>{this.handleMessage(t)&&n.markForCheck()}))}get classEnd(){return"end"===this.position}get icon(){let t="arrow_right",e="arrow_left";return"end"===this.position&&([t,e]=[e,t]),this.opened?e:t}ngAfterViewInit(){setTimeout(()=>{this.position=this.drawer.position,this.cdr.markForCheck()})}ngOnDestroy(){this.subscriptions.unsubscribe()}handleMessage(t){return"drawer-toggled"===t.payload.type&&(this.opened=t.payload.opened,!0)}toggle(){const t=this.drawer,{opened:e,expanded:n}=t;e?n?t.closeExpanded():t.close():t.open()}}return t.\u0275fac=function(e){return new(e||t)(ea(AZ),ea(SZ),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-drawer-toggle-button"]],hostVars:4,hostBindings:function(t,e){2&t&&(Ba(e.className),ja("ccf-drawer-toggle-button-end",e.classEnd))},decls:2,vars:1,consts:[["aria-hidden","false","aria-label","Close side drawer",1,"expand-collapse-icon",3,"click"]],template:function(t,e){1&t&&(ra(0,"mat-icon",0),fa("click",function(){return e.toggle()}),Za(1),sa()),2&t&&(ws(1),tl(" ",e.icon,"\n"))},directives:[p_],styles:["[_nghost-%COMP%]{position:absolute;top:calc(50% - 2.0625rem);right:-1.0625rem;width:1.0625rem;height:3rem;border-radius:0 .25rem .25rem 0;cursor:pointer;display:flex;align-items:center;transition:.6s}.ccf-drawer-toggle-button-end[_nghost-%COMP%]{right:unset;left:calc(-1rem - 1px);border-radius:.25rem 0 0 .25rem}[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{position:relative;right:.25rem;transition:all .5s}.ccf-drawer-toggle-button-end[_nghost-%COMP%] .expand-collapse-icon[_ngcontent-%COMP%]{right:unset;left:-.25rem}"],changeDetection:0}),t})();function dJ(t,e){1&t&&(ra(0,"div",7),oa(1,"mat-spinner",8),ra(2,"span",3),Za(3,"Loading External Site"),sa(),sa())}function pJ(t,e){if(1&t){const t=ua();ra(0,"iframe",9),fa("load",function(){return $e(t),va().loading=!1}),sa()}2&t&&Ko("src",va().safeUrl,wr)}let fJ=(()=>{class t{constructor(t){this.sanitizer=t,this.className="ccf-viewer",this.url="",this.closed=new Rc,this.loading=!0,this.safeUrl=null}ngOnChanges(t){"url"in t&&this.updateUrl()}updateUrl(){const{sanitizer:t,url:e}=this;this.safeUrl=null,e&&(this.safeUrl=t.bypassSecurityTrustResourceUrl(e),this.loading=!0)}}return t.\u0275fac=function(e){return new(e||t)(ea(hd))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-viewer"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{url:"url"},outputs:{closed:"closed"},features:[ye],decls:11,vars:4,consts:[[1,"toolbar"],["mat-flat-button","","target","_blank","rel","noopener noreferrer",1,"launch",3,"href","disabled"],[1,"icon"],[1,"text"],["mat-flat-button","",1,"close",3,"click"],["class","overlay",4,"ngIf"],["class","frame","title","Portal Data Viewer","referrerpolicy","no-referrer",3,"load",4,"ngIf"],[1,"overlay"],[1,"spinner"],["title","Portal Data Viewer","referrerpolicy","no-referrer",1,"frame",3,"load"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"a",1),ra(2,"mat-icon",2),Za(3,"launch"),sa(),ra(4,"span",3),Za(5,"Open in Portal"),sa(),sa(),ra(6,"button",4),fa("click",function(){return e.closed.emit()}),ra(7,"mat-icon",2),Za(8,"clear"),sa(),sa(),sa(),Jo(9,dJ,4,0,"div",5),Jo(10,pJ,1,1,"iframe",6)),2&t&&(ws(1),na("href",e.safeUrl,_r)("disabled",!e.safeUrl),ws(8),na("ngIf",e.loading),ws(1),na("ngIf",e.safeUrl))},directives:[w_,p_,__,_h,fZ],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;align-items:center;width:100%;height:1.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%]{margin-right:3.5rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch.mat-button-disabled[_ngcontent-%COMP%]{cursor:not-allowed}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .launch[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{margin-right:.25rem}[_nghost-%COMP%] .toolbar[_ngcontent-%COMP%] .close[_ngcontent-%COMP%]{min-width:0;padding:0;line-height:1.5rem;border-radius:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:1.5rem;bottom:0;left:0;right:0}[_nghost-%COMP%] .overlay[_ngcontent-%COMP%] .spinner[_ngcontent-%COMP%]{margin-bottom:.5rem}[_nghost-%COMP%] .frame[_ngcontent-%COMP%]{width:100%;height:100%}"],changeDetection:0}),t})();function gJ(t,e){if(1&t&&oa(0,"div",3),2&t){const t=e.index;ja("line-tick-visible",va().tissueSectionExists(t+1))}}const mJ=function(){return[]};let bJ=(()=>{class t{constructor(){this.clsName="ccf-tissue-section-vis"}tissueSectionExists(t){return this.tissueSections.filter(e=>e.sectionNumber===t).length>0}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-tissue-section-vis"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{totalTissueSections:"totalTissueSections",tissueSections:"tissueSections"},decls:7,vars:3,consts:[[1,"container"],["class","line-tick",3,"line-tick-visible",4,"ngFor","ngForOf"],[1,"x-axis"],[1,"line-tick"]],template:function(t,e){1&t&&(ra(0,"div"),Za(1,"0"),sa(),ra(2,"div",0),Jo(3,gJ,1,2,"div",1),oa(4,"div",2),sa(),ra(5,"div"),Za(6),sa()),2&t&&(ws(3),na("ngForOf",Oc(2,mJ).constructor(e.totalTissueSections)),ws(3),Ja(e.totalTissueSections))},directives:[yh],styles:["[_nghost-%COMP%]{width:100%;height:2.5rem;padding:.5rem 1rem;display:flex}[_nghost-%COMP%] .container[_ngcontent-%COMP%]{margin-right:.5rem;margin-left:.5rem;flex-grow:1;display:flex;position:relative;justify-content:space-evenly}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .line-tick[_ngcontent-%COMP%]{height:100%;width:1px;z-index:2}[_nghost-%COMP%] .container[_ngcontent-%COMP%] .x-axis[_ngcontent-%COMP%]{width:100%;height:2px;position:absolute;top:calc(50% - 1px);right:0;z-index:1}"],changeDetection:0}),t})();function yJ(t,e){if(1&t){const t=ua();ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"a",9),fa("click",function(){$e(t);const e=va().$implicit;return va().linkClicked.emit(e)}),Za(4," DATA "),ra(5,"mat-icon"),Za(6,"open_in_new"),sa(),sa(),sa()}if(2&t){const t=va().$implicit;ws(1),La("background-image","url("+t.thumbnail+")"),ws(1),tl(" ",t.technology," ")}}function vJ(t,e){1&t&&(aa(0),Jo(1,yJ,7,3,"ng-template",6),la())}const _J=(()=>{let t=-1;return()=>(t+=1,t)})();let wJ=(()=>{class t{constructor(){this.className="ccf-thumbnail-carousel",this.linkClicked=new Rc,this.uid=_J(),this.config={allowTouchMove:!1,slidesOffsetBefore:4,slidesOffsetAfter:4,slidesPerView:"auto",spaceBetween:4,watchOverflow:!0},this.navigation={prevEl:"#"+this.prevButtonId,nextEl:"#"+this.nextButtonId}}get prevButtonId(){return`ccf-thumbnail-carousel-prev-button-${this.uid}`}get nextButtonId(){return`ccf-thumbnail-carousel-next-button-${this.uid}`}itemId(t,e){return e.thumbnail}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-thumbnail-carousel"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.className)},inputs:{data:"data"},outputs:{linkClicked:"linkClicked"},decls:11,vars:6,consts:[[1,"prev"],["mat-icon-button","","disableRipple",""],[1,"swiper",3,"config","navigation"],[4,"ngFor","ngForOf","ngForTrackBy"],[1,"next"],[1,"fade"],["swiperSlide",""],[1,"slide"],[1,"thumbnail"],[1,"link",3,"click"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"button",1),ra(2,"mat-icon"),Za(3,"navigate_before"),sa(),sa(),sa(),ra(4,"swiper",2),Jo(5,vJ,2,0,"ng-container",3),sa(),ra(6,"div",4),ra(7,"button",1),oa(8,"div",5),ra(9,"mat-icon"),Za(10,"navigate_next"),sa(),sa(),sa()),2&t&&(ws(1),Ko("id",e.prevButtonId),ws(3),na("config",e.config)("navigation",e.navigation),ws(1),na("ngForOf",e.data)("ngForTrackBy",e.itemId),ws(2),Ko("id",e.nextButtonId))},directives:[__,p_,WQ,yh,GQ],styles:['[_nghost-%COMP%]{display:flex}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%]{flex-grow:1;padding-bottom:.3125rem}[_nghost-%COMP%] .swiper[_ngcontent-%COMP%] .swiper-slide{width:3.75rem;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%]{display:flex;align-items:center;height:2.8125rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] button[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:1.5rem;height:1.5rem;line-height:1.5rem}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{position:absolute;top:-.625rem;left:-2rem;z-index:10;width:2rem;height:3.125rem;opacity:1;transition:opacity ease-in-out .3s;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%]{cursor:default;pointer-events:none}[_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .prev[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-disabled[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%], [_nghost-%COMP%] .next[_ngcontent-%COMP%] .swiper-button-lock[_ngcontent-%COMP%] .fade[_ngcontent-%COMP%]{opacity:0}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]{position:relative;width:100%;height:100%}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;background-size:cover;position:relative;width:calc(100% - 2 * .125rem);height:calc(100% - 2 * .125rem);border-style:solid;border-width:.125rem;border-radius:.25rem;background-origin:padding-box;background-clip:padding-box;font-size:.875rem;font-weight:bold}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .thumbnail[_ngcontent-%COMP%]:after{content:"";position:absolute;bottom:-.125rem;left:-.125rem;width:.125rem;height:.125rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;position:absolute;top:0;bottom:0;right:0;left:0;opacity:0;transition:opacity ease-in-out .3s;box-shadow:0 2px 4px #0009;font-size:.75rem;line-height:.75rem}[_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%], [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:link, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:visited, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:focus, [_nghost-%COMP%] .slide[_ngcontent-%COMP%] .link[_ngcontent-%COMP%]:active{cursor:pointer;text-decoration:none}[_nghost-%COMP%] .slide[_ngcontent-%COMP%]:hover .link[_ngcontent-%COMP%]{opacity:1}'],changeDetection:0}),t})();function xJ(t,e){if(1&t){const t=ua();ra(0,"mat-icon",14),fa("click",function(){return $e(t),va().toggleExpansion()}),Za(1),sa()}if(2&t){const t=va();ws(1),Ja(t.expanded?"expand_less":"expand_more")}}function SJ(t,e){if(1&t&&oa(0,"ccf-tissue-section-vis",20),2&t){const t=va(2);na("totalTissueSections",t.tissueBlock.sectionCount)("tissueSections",t.tissueBlock.sections)}}function EJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(2).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va(2);ws(1),na("data",t.tissueBlock.datasets)}}function CJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"ccf-thumbnail-carousel",21),fa("linkClicked",function(e){return $e(t),va(3).linkHandler(e.link)}),sa(),la()}if(2&t){const t=va().$implicit;ws(1),na("data",t.datasets)}}function OJ(t,e){if(1&t){const t=ua();ra(0,"div",22),ra(1,"div",23),ra(2,"mat-icon",24),Za(3,"bubble_chart"),sa(),ra(4,"div",17),ra(5,"div",8),Za(6),sa(),ra(7,"div",8),Za(8),sa(),sa(),ra(9,"div",9),fa("click",function(){const e=$e(t).$implicit;return va(2).linkHandler(e.link)}),ra(10,"div",10),Za(11,"TISSUE SECTION"),sa(),ra(12,"mat-icon",11),Za(13,"open_in_new"),sa(),sa(),sa(),Jo(14,CJ,2,1,"ng-container",13),sa()}if(2&t){const t=e.$implicit;ws(6),Ja(t.label),ws(2),Ja(t.description),ws(6),na("ngIf",t.datasets.length>0)}}function TJ(t,e){if(1&t){const t=ua();aa(0),ra(1,"div",15),ra(2,"div",16),ra(3,"mat-icon",5),Za(4,"bubble_chart"),sa(),ra(5,"div",17),ra(6,"div",8),Za(7),sa(),ra(8,"div",8),Za(9),sa(),sa(),ra(10,"div",9),fa("click",function(){$e(t);const e=va();return e.linkHandler(e.tissueBlock.link)}),ra(11,"div",10),Za(12,"TISSUE BLOCK"),sa(),ra(13,"mat-icon",11),Za(14,"open_in_new"),sa(),sa(),sa(),Jo(15,SJ,1,2,"ccf-tissue-section-vis",18),Jo(16,EJ,2,1,"ng-container",13),sa(),Jo(17,OJ,15,3,"div",19),la()}if(2&t){const t=va();ws(7),Ja(t.tissueBlock.label),ws(2),Ja(t.tissueBlock.description),ws(6),na("ngIf",t.tissueBlock.sections.length>1),ws(1),na("ngIf",t.tissueBlock.datasets.length>0),ws(1),na("ngForOf",t.tissueBlock.sections)}}const kJ=function(t){return{"background-color":t}};let AJ=(()=>{class t{constructor(t){this.ga=t,this.clsName="ccf-donor-card",this.selected=!1,this.expanded=!1,this.highlighted=!1,this.checked=new Rc,this.linkClick=new Rc,this.hoverState=""}handleCheckbox(){this.selected=!this.selected,this.ga.event("selected_toggled","donor_card",this.tissueBlock.label,+this.selected),this.checked.emit(this.selected),this.expanded=!1}toggleExpansion(){this.selected&&(this.expanded=!this.expanded,this.ga.event("expanded_toggled","donor_card",this.tissueBlock.label,+this.expanded))}linkHandler(t){this.ga.event("link_clicked","donor_card",this.tissueBlock.label),this.selected?this.linkClick.emit(t):(this.selected=!0,this.checked.emit(this.selected))}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-donor-card"]],hostVars:2,hostBindings:function(t,e){2&t&&Ba(e.clsName)},inputs:{tissueBlock:"tissueBlock",selected:"selected",color:"color",expanded:"expanded",highlighted:"highlighted"},outputs:{checked:"checked",linkClick:"linkClick"},decls:19,vars:20,consts:[[1,"main-container"],[1,"checkbox-background",3,"ngStyle","click"],[1,"checkbox",3,"checked"],[1,"hoverable","default-padding","donor","mat-elevation-z2"],[1,"d-flex"],[1,"icon-size","icon-dark","mr-5"],[1,"donor-info"],[1,"title","description"],[1,"description"],[1,"hover-state","mat-elevation-z4",3,"click"],[1,"hover-title"],[1,"icon-size","hover-icon"],["class","icon-size ml-5 selectable",3,"click",4,"ngIf"],[4,"ngIf"],[1,"icon-size","ml-5","selectable",3,"click"],[1,"expanded-view","mat-elevation-z2","align-end"],[1,"info-block","hover-enabled","default-padding"],[1,"text-content"],[3,"totalTissueSections","tissueSections",4,"ngIf"],["class","expanded-view w-80 mat-elevation-z2 align-end",4,"ngFor","ngForOf"],[3,"totalTissueSections","tissueSections"],[1,"mt-05",3,"data","linkClicked"],[1,"expanded-view","w-80","mat-elevation-z2","align-end"],[1,"default-padding","info-block","hover-enabled"],[1,"icon-size","mr-5","icon-light"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),fa("click",function(){return e.handleCheckbox()}),oa(2,"mat-checkbox",2),sa(),ra(3,"div",3),ra(4,"div",4),ra(5,"mat-icon",5),Za(6,"person"),sa(),ra(7,"div",6),ra(8,"div",7),Za(9),sa(),ra(10,"div",8),Za(11),sa(),sa(),sa(),ra(12,"div",9),fa("click",function(){return e.linkHandler(e.tissueBlock.donor.link)}),ra(13,"div",10),Za(14,"DONOR"),sa(),ra(15,"mat-icon",11),Za(16,"open_in_new"),sa(),sa(),Jo(17,xJ,2,1,"mat-icon",12),sa(),sa(),Jo(18,TJ,18,5,"ng-container",13)),2&t&&(ws(1),ja("selected",e.selected)("highlighted",e.highlighted),na("ngStyle",Tc(18,kJ,e.selected?e.color:"transparent")),ws(1),ja("checkselected",e.selected),na("checked",e.selected),ws(1),ja("hover-enabled",e.selected)("expanded",e.expanded)("highlighted",e.highlighted),ws(6),Ja(e.tissueBlock.donor.label),ws(2),Ja(e.tissueBlock.donor.description),ws(6),na("ngIf",e.selected),ws(1),na("ngIf",e.expanded))},directives:[Th,OX,p_,_h,yh,bJ,wJ],styles:["[_nghost-%COMP%]{width:100%}[_nghost-%COMP%] .main-container[_ngcontent-%COMP%]{display:flex;min-height:3rem;width:100%;align-items:center;padding-left:.5rem}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%]{height:2rem;width:2rem;border-radius:50%;margin-right:.5rem;display:flex;justify-content:center;align-items:center;cursor:pointer}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-checked.mat-accent .mat-checkbox-background, [_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .mat-checkbox-indeterminate.mat-accent[_ngcontent-%COMP%] .mat-checkbox-background[_ngcontent-%COMP%]{background-color:transparent}[_nghost-%COMP%] .checkbox-background.highlighted[_ngcontent-%COMP%] .mat-ripple-element{opacity:.04}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkselected[_ngcontent-%COMP%] .mat-checkbox-frame{border-color:#fff!important}[_nghost-%COMP%] .checkbox-background[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{margin-left:1.12rem;margin-bottom:.12rem}[_nghost-%COMP%] .align-end[_ngcontent-%COMP%]{margin-left:auto}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;width:100%;align-items:center}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%]:not(:first-child){margin-top:.5rem}[_nghost-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]{display:flex;font-size:.75rem;line-height:1rem;align-items:center;flex-grow:1;height:2.5rem}[_nghost-%COMP%] .donor[_ngcontent-%COMP%]:hover, [_nghost-%COMP%] .donor.highlighted[_ngcontent-%COMP%]{box-shadow:0 6px 2px -2px #0003,0 4px 4px #00000024,0 2px 10px #0000001f}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .hover-state[_ngcontent-%COMP%]{width:19.5rem!important}[_nghost-%COMP%] .donor[_ngcontent-%COMP%] .donor-info[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{font-weight:600}[_nghost-%COMP%] .hoverable[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]{position:relative}[_nghost-%COMP%] .hover-enabled[_ngcontent-%COMP%]:hover .hover-state[_ngcontent-%COMP%]{opacity:1}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%]{transition:opacity .15s ease-in-out;opacity:0;cursor:pointer;position:absolute;height:100%;width:100%;top:0;margin-left:-.5rem;align-items:center;display:flex;justify-content:flex-end;padding-right:1rem;font-size:.75rem}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-title[_ngcontent-%COMP%]{font-weight:lighter}[_nghost-%COMP%] .hover-state[_ngcontent-%COMP%] .hover-icon[_ngcontent-%COMP%]{margin-left:1rem}[_nghost-%COMP%] .default-padding[_ngcontent-%COMP%]{padding:.25rem .5rem}[_nghost-%COMP%] .expanded-view[_ngcontent-%COMP%]{margin-top:.25rem;width:85%;margin-bottom:.25rem}[_nghost-%COMP%] .d-flex[_ngcontent-%COMP%]{display:flex}[_nghost-%COMP%] .icon-size[_ngcontent-%COMP%]{height:1.5rem;width:1.5rem;font-size:1.5rem}[_nghost-%COMP%] .selectable[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%]{width:80%!important}[_nghost-%COMP%] .w-80[_ngcontent-%COMP%] .info-block[_ngcontent-%COMP%] .text-content[_ngcontent-%COMP%] .description[_ngcontent-%COMP%]{width:16rem!important}[_nghost-%COMP%] .ml-5[_ngcontent-%COMP%]{margin-left:.5rem}[_nghost-%COMP%] .mr-5[_ngcontent-%COMP%]{margin-right:.5rem}[_nghost-%COMP%] .mt-05[_ngcontent-%COMP%]{margin-top:.5rem}[_nghost-%COMP%] .description[_ngcontent-%COMP%]{width:17rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"],changeDetection:0}),t})();function PJ(t,e){if(1&t&&(ra(0,"div",7),ra(1,"div",8),Za(2),sa(),ra(3,"div",9),Za(4),sa(),sa()),2&t){const t=e.$implicit;ws(2),Ja(t.count),ws(2),Ja(t.label)}}function MJ(t,e){if(1&t){const t=ua();ra(0,"div",10),fa("mouseenter",function(){const e=$e(t).$implicit;return va().handleHover(e.tissueBlock.spatialEntityId)})("mouseleave",function(){return $e(t),va().handleUnhover()}),ra(1,"ccf-donor-card",11),fa("checked",function(e){const n=$e(t).$implicit;return va().handleSelection(n,e)})("linkClick",function(e){return $e(t),va().handleLinkClick(e)}),sa(),sa()}if(2&t){const t=e.$implicit,n=va();ws(1),na("tissueBlock",t.tissueBlock)("selected",t.selected)("color",t.color)("highlighted",t.tissueBlock.spatialEntityId===n.highlighted)}}let IJ=(()=>{class t{constructor(t){this.ga=t,this.linkClicked=new Rc,this.listResultSelected=new Rc,this.listResultDeselected=new Rc,this.itemHovered=new Rc,this.itemUnhovered=new Rc,this.atScrollBottom=!1}handleSelection(t,e){this.ga.event("list_result_selected","results_browser",this.resultLabel,+e),e?this.listResultSelected.next(t):this.listResultDeselected.next(t)}handleLinkClick(t){this.linkClicked.emit(t)}onScroll(t){if(!t.target)return;const{clientHeight:e,scrollHeight:n,scrollTop:i}=t.target;this.atScrollBottom=n-i-e<64}handleHover(t){this.itemHovered.emit(t)}handleUnhover(){this.itemUnhovered.emit()}}return t.\u0275fac=function(e){return new(e||t)(ea(W$))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-results-browser"]],inputs:{listResults:"listResults",aggregateData:"aggregateData",resultLabel:"resultLabel",highlighted:"highlighted",header:"header"},outputs:{linkClicked:"linkClicked",listResultSelected:"listResultSelected",listResultDeselected:"listResultDeselected",itemHovered:"itemHovered",itemUnhovered:"itemUnhovered"},decls:8,vars:7,consts:[[1,"results-browser-container"],[1,"stat-box"],["id","title"],["class","stat-row",4,"ngFor","ngForOf"],[1,"results-browser-list",3,"scroll"],["class","browser-item-container",3,"mouseenter","mouseleave",4,"ngFor","ngForOf"],[1,"scroll-gradient"],[1,"stat-row"],[1,"stat-value"],[1,"stat-label"],[1,"browser-item-container",3,"mouseenter","mouseleave"],[3,"tissueBlock","selected","color","highlighted","checked","linkClick"]],template:function(t,e){1&t&&(ra(0,"div",0),ra(1,"div",1),ra(2,"div",2),Za(3),sa(),Jo(4,PJ,5,2,"div",3),sa(),ra(5,"div",4),fa("scroll",function(t){return e.onScroll(t)}),Jo(6,MJ,2,4,"div",5),sa(),oa(7,"div",6),sa()),2&t&&(ws(3),Ja(e.resultLabel),ws(1),na("ngForOf",e.aggregateData),ws(1),ja("header-hidden",!e.header),ws(1),na("ngForOf",e.listResults),ws(1),ja("hidden",!!e.atScrollBottom))},directives:[yh,AJ],styles:[".results-browser-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:calc(100% - 3rem);padding:0 1.5rem 1.5rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%]{margin-bottom:1.5rem;line-height:1.25;min-height:7.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] #title[_ngcontent-%COMP%]{font-size:1.25rem;margin-bottom:.75rem}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%]{display:flex;flex-direction:row}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin-right:1rem;width:5.5rem;text-align:right;font-weight:600}.results-browser-container[_ngcontent-%COMP%] .stat-box[_ngcontent-%COMP%] .stat-row[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-weight:300}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:thin;padding-right:.5rem;height:calc(100vh - 20rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 16rem)}.results-browser-container[_ngcontent-%COMP%] .results-browser-list[_ngcontent-%COMP%] .browser-item-container[_ngcontent-%COMP%]{width:100%}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient[_ngcontent-%COMP%]{position:absolute;height:3rem;width:95%;bottom:0;pointer-events:none}.results-browser-container[_ngcontent-%COMP%] .scroll-gradient.hidden[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();function DJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGIN"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"login",_r)}}function RJ(t,e){if(1&t&&(ra(0,"a",5),Za(1,"LOGOUT"),sa()),2&t){const t=va();ja("disabled",t.loginDisabled||!t.homeUrl),na("href",t.homeUrl+"logout",_r)}}let NJ=(()=>{class t{constructor(){this.refreshClicked=new Rc,this.downloadClicked=new Rc}}return t.\u0275fac=function(e){return new(e||t)},t.\u0275cmp=Jt({type:t,selectors:[["ccf-header"]],inputs:{homeUrl:"homeUrl",loginDisabled:"loginDisabled",logoTooltip:"logoTooltip",loggedIn:"loggedIn",filters:"filters"},outputs:{refreshClicked:"refreshClicked",downloadClicked:"downloadClicked"},decls:6,vars:4,consts:[[1,"ccf-header"],[1,"home",3,"href"],["aria-hidden","false","aria-label","Reset tool","matTooltipPosition","right",1,"logo",3,"matTooltip"],[1,"filler"],["mat-button","","class","authentication","rel","noreferrer noopener","target","_blank",3,"disabled","href",4,"ngIf"],["mat-button","","rel","noreferrer noopener","target","_blank",1,"authentication",3,"href"]],template:function(t,e){1&t&&(ra(0,"mat-toolbar",0),ra(1,"a",1),oa(2,"div",2),sa(),oa(3,"div",3),Jo(4,DJ,2,3,"a",4),Jo(5,RJ,2,3,"a",4),sa()),2&t&&(ws(1),na("href",e.homeUrl,_r),ws(1),na("matTooltip",e.logoTooltip),ws(2),na("ngIf",!e.loggedIn),ws(1),na("ngIf",e.loggedIn))},directives:[Nq,ew,_h,w_],styles:[".ccf-header[_ngcontent-%COMP%]{height:4rem;padding:0 1.5rem;border-bottom-width:1px;border-bottom-style:solid;display:flex}.ccf-header[_ngcontent-%COMP%] .home[_ngcontent-%COMP%]{height:100%;width:25rem;align-items:center;display:flex}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%]{width:100%;height:50%;background-repeat:no-repeat;background-size:contain}.ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%]{height:1.5rem}.ccf-header[_ngcontent-%COMP%] .authentication[_ngcontent-%COMP%]{width:8.25rem;border-radius:.125rem;font-weight:500}.ccf-header[_ngcontent-%COMP%] .logo[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .download[_ngcontent-%COMP%], .ccf-header[_ngcontent-%COMP%] .refresh[_ngcontent-%COMP%]{display:flex;align-items:center;transition:color 1s;cursor:pointer;text-decoration:none}.ccf-header[_ngcontent-%COMP%] [_ngcontent-%COMP%]:not(:last-child){margin-right:1.5rem}.ccf-header[_ngcontent-%COMP%] .filler[_ngcontent-%COMP%]{flex-grow:1;margin:0}.ccf-header[_ngcontent-%COMP%] .filter-labels[_ngcontent-%COMP%]{display:flex;align-items:center;height:100%;font:400 1rem/1.25rem Inter,sans-serif}.ccf-header[_ngcontent-%COMP%] .disabled[_ngcontent-%COMP%]{display:none}"],changeDetection:0}),t})();const LJ=["bodyUI"];function jJ(t,e){if(1&t&&(oa(0,"ccf-header",34),Mc(1,"async"),Mc(2,"async"),Mc(3,"async"),Mc(4,"async")),2&t){const t=va();ja("hide",!1===Ic(1,6,t.header$)),na("logoTooltip",Ic(2,8,t.logoTooltip$))("homeUrl",Ic(3,10,t.homeUrl$))("loggedIn",t.loggedIn)("loginDisabled",Ic(4,12,t.loginDisabled$))}}function FJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t),va();const e=ta(70);return e.expanded=!e.expanded}),ra(1,"mat-icon",36),Za(2),sa(),sa()}if(2&t){va();const t=ta(70);ws(2),tl(" ",t.expanded?"arrow_drop_up":"arrow_drop_down"," ")}}function BJ(t,e){if(1&t){const t=ua();ra(0,"div",35),fa("click",function(){$e(t);const e=va();return e.organListVisible=!e.organListVisible}),ra(1,"mat-icon",37),Za(2),sa(),sa()}if(2&t){const t=va();ws(2),tl(" ",t.organListVisible?"arrow_drop_up":"arrow_drop_down"," ")}}const VJ=function(){return{}},zJ=function(){return{x:2.2,y:2,z:.4}};let UJ=(()=>{class t{constructor(t,e,n,i,r,s,o,a,l,c,u,h){this.data=n,this.theming=i,this.scene=r,this.listResultsState=s,this.consentService=o,this.snackbar=a,this.dataSource=c,this.globalConfig=u,this.ontologySelectionLabel="body",this.cellTypeSelectionLabel="cell",this.selectionLabel="body | cell",this.organListVisible=!0,this.url="",this.acceptableViewerDomains=Pq.acceptableViewerDomains||[],this.viewerOpen=!1,this.spinnerActive$=this.data.queryStatus$.pipe(D(t=>t===rX.Running)),this.theme$=this.globalConfig.getOption("theme"),this.themeMode$=new lp(1),this.header$=this.globalConfig.getOption("header"),this.homeUrl$=this.globalConfig.getOption("homeUrl"),this.logoTooltip$=this.globalConfig.getOption("logoTooltip"),this.loginDisabled$=this.globalConfig.getOption("loginDisabled"),i.initialize(t,e),l.setRootElement(t),n.tissueBlockData$.subscribe(),n.aggregateData$.subscribe(),n.ontologyTermOccurencesData$.subscribe(),n.cellTypeTermOccurencesData$.subscribe(),n.sceneData$.subscribe(),n.filter$.subscribe(),n.technologyFilterData$.subscribe(),n.providerFilterData$.subscribe(),this.ontologyTerms$=n.filter$.pipe(FU("ontologyTerms")),T_([this.theme$,this.themeMode$]).subscribe(([t,e])=>{this.theming.setTheme(`${t}-theme-${e}`),h.markForCheck()}),this.ontologyTreeModel$=this.dataSource.getOntologyTreeModel().pipe(up(1)),this.cellTypeTerms$=n.filter$.pipe(FU("cellTypeTerms")),this.cellTypeTreeModel$=this.dataSource.getCellTypeTreeModel().pipe(up(1))}get isLightTheme(){return this.theming.getTheme().endsWith("light")}ngOnInit(){const t=this.snackbar.openFromComponent(pq,{data:{preClose:()=>{t.dismiss()}},duration:"not-set"===this.consentService.consent?1/0:3e3});window.matchMedia?(window.matchMedia("(prefers-color-scheme: dark)").matches?this.themeMode$.next("dark"):this.themeMode$.next("light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",t=>{this.themeMode$.next(t.matches?"dark":"light")})):this.themeMode$.next("light")}reset(t,e,n){t.open(),t.closeExpanded(),e.open(),e.closeExpanded(),n.removeBox(),this.resetView()}resetView(){this.bodyUI.target=[0,0,0],this.bodyUI.rotation=0,this.bodyUI.rotationX=0,this.bodyUI.bounds={x:2.2,y:2,z:.4}}toggleScheme(){this.themeMode$.next(this.isLightTheme?"dark":"light")}ontologySelected(t,e){if(t)return"anatomical-structures"===e?(this.data.updateFilter({ontologyTerms:t.map(t=>t.id)}),this.ontologySelectionLabel=this.createSelectionLabel(t)):(this.data.updateFilter({cellTypeTerms:t.map(t=>t.id)}),this.cellTypeSelectionLabel=this.createSelectionLabel(t)),this.selectionLabel=this.ontologySelectionLabel&&this.cellTypeSelectionLabel?`${this.ontologySelectionLabel} | ${this.cellTypeSelectionLabel}`:this.ontologySelectionLabel?`${this.ontologySelectionLabel}`:this.cellTypeSelectionLabel?`${this.cellTypeSelectionLabel}`:"",void(t[0]&&"body"===t[0].label&&this.resetView());this.data.updateFilter({ontologyTerms:[],cellTypeTerms:[]}),this.ontologySelectionLabel="",this.cellTypeSelectionLabel=""}createSelectionLabel(t){if(0===t.length)return"";if(1===t.length)return t[0].label;let e="";return t.forEach((n,i)=>{e+=n.label,inull==t?void 0:t.startsWith(e))?(this.url=t,this.viewerOpen=!!t):(window.open(t,"_blank"),this.closeiFrameViewer())}closeiFrameViewer(){this.viewerOpen=!1}get loggedIn(){var t;return(null!==(t=this.globalConfig.snapshot.hubmapToken)&&void 0!==t?t:"").length>0}}return t.\u0275fac=function(e){return new(e||t)(ea(kl),ea(No),ea(aX),ea(kq),ea(dX),ea(uX),ea(Y$),ea(q_),ea(Nf),ea(mq),ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root"]],viewQuery:function(t,e){if(1&t&&qc(LJ,5),2&t){let t;Wc(t=Yc())&&(e.bodyUI=t.first)}},decls:80,vars:111,consts:[[1,"ccf-app","mat-app-background"],["text","Loading CCF Exploration User Interface (EUI)",3,"active"],[3,"hide","logoTooltip","homeUrl","loggedIn","loginDisabled",4,"ngIf"],[1,"main-drawers"],["opened","",1,"left-drawer",3,"stateChange"],["left",""],[1,"filter-data"],[3,"filters","drawerExpanded","technologyFilters","providerFilters","filtersChange"],["filterbox",""],[1,"filter-text"],[1,"sex","filter-tag"],[1,"age","filter-tag"],[1,"bmi","filter-tag"],["placeholderText","Search anatomical structures...",1,"ontology-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["placeholderText","Search cell types...",1,"cell-type-selection",3,"treeModel","termData","occurenceData","header","ontologySelection"],["position","end","opened","",1,"right-drawer",3,"stateChange"],["right",""],[1,"portal-view",3,"url","closed"],[1,"drawer-icons"],[1,"drawer-icons-left"],[1,"button",3,"matTooltip","click"],[1,"icon"],[1,"scheme-toggle","button",3,"matTooltip","click"],[1,"button"],["matTooltip","Reset View",1,"refresh","icon",3,"click"],["videoID","YAHJqvD3Q_8","infoTitle","CCF Exploration User Interface","matTooltip","Open Info"],[3,"listResults","aggregateData","resultLabel","highlighted","header","listResultSelected","listResultDeselected","linkClicked","itemHovered","itemUnhovered"],[1,"selector-drawer"],[1,"organ-selector",3,"multiselect","occurenceData","organList","selectedOrgans","organsChanged"],["selector",""],[1,"close-button-wrapper"],["class","close-button",3,"click",4,"ngIf"],[1,"stage-content",3,"scene","bounds","nodeClick","nodeHoverStart","nodeHoverStop"],["bodyUI",""],[3,"logoTooltip","homeUrl","loggedIn","loginDisabled"],[1,"close-button",3,"click"],["aria-hidden","false","aria-label","Expand carousel drawer",1,"expand-collapse-icon"],["aria-hidden","false","aria-label","Close carousel drawer",1,"expand-collapse-icon"]],template:function(t,e){if(1&t){const t=ua();ra(0,"div",0),oa(1,"ccf-spinner-overlay",1),Mc(2,"async"),Jo(3,jJ,5,14,"ccf-header",2),Mc(4,"async"),ra(5,"ccf-drawer-container",3),Mc(6,"async"),ra(7,"ccf-drawer",4,5),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(9,"div"),ra(10,"div",6),ra(11,"ccf-filters-popover",7,8),fa("filtersChange",function(t){return e.data.updateFilter(t)}),Mc(13,"async"),Mc(14,"async"),Mc(15,"async"),sa(),ra(16,"div",9),ra(17,"div",10),Za(18,"Sex: "),ra(19,"strong"),Za(20),Mc(21,"async"),sa(),sa(),ra(22,"div",11),Za(23,"Age: "),ra(24,"strong"),Za(25),Mc(26,"async"),Mc(27,"async"),sa(),sa(),ra(28,"div",12),Za(29,"BMI: "),ra(30,"strong"),Za(31),Mc(32,"async"),Mc(33,"async"),sa(),sa(),sa(),sa(),ra(34,"ccf-ontology-selection",13),fa("ontologySelection",function(t){return e.ontologySelected(t,"anatomical-structures")}),Mc(35,"async"),Mc(36,"async"),Mc(37,"async"),Mc(38,"async"),sa(),ra(39,"ccf-ontology-selection",14),fa("ontologySelection",function(t){return e.ontologySelected(t,"cell-type")}),Mc(40,"async"),Mc(41,"async"),Mc(42,"async"),Mc(43,"async"),sa(),oa(44,"ccf-drawer-toggle-button"),sa(),sa(),ra(45,"ccf-drawer",15,16),fa("stateChange",function(){return $e(t),ta(12).removeBox()}),ra(47,"ccf-viewer",17),fa("closed",function(){return e.viewerOpen=!1}),sa(),ra(48,"div",18),ra(49,"div",19),ra(50,"button",20),fa("click",function(){$e(t);const e=ta(12),n=ta(46);return e.removeBox(),n.toggleExpanded()}),ra(51,"mat-icon",21),Za(52),sa(),sa(),ra(53,"button",22),fa("click",function(){return e.toggleScheme()}),ra(54,"mat-icon",21),Za(55),sa(),sa(),ra(56,"button",23),ra(57,"mat-icon",24),fa("click",function(){$e(t);const n=ta(8),i=ta(46),r=ta(12);return e.reset(n,i,r)}),Za(58,"refresh "),sa(),sa(),sa(),oa(59,"ccf-info-button",25),sa(),ra(60,"ccf-results-browser",26),fa("listResultSelected",function(t){return e.listResultsState.selectListResult(t)})("listResultDeselected",function(t){return e.listResultsState.deselectListResult(t)})("linkClicked",function(t){return e.openiFrameViewer(t)})("itemHovered",function(t){return e.listResultsState.highlightNode(t)})("itemUnhovered",function(){return e.listResultsState.unHighlightNode()}),Mc(61,"async"),Mc(62,"async"),Mc(63,"async"),Mc(64,"async"),sa(),oa(65,"ccf-drawer-toggle-button"),sa(),ra(66,"ccf-drawer-content"),Mc(67,"async"),ra(68,"div",27),ra(69,"ccf-organ-selector",28,29),fa("organsChanged",function(t){return e.scene.setSelectedReferenceOrgans(t)}),Mc(71,"async"),Mc(72,"async"),Mc(73,"async"),sa(),sa(),ra(74,"div",30),Jo(75,FJ,3,1,"div",31),Jo(76,BJ,3,1,"div",31),sa(),ra(77,"ccf-body-ui",32,33),fa("nodeClick",function(t){return e.scene.sceneNodeClicked(t)})("nodeHoverStart",function(t){return e.scene.sceneNodeHovered(t)})("nodeHoverStop",function(){return e.scene.sceneNodeUnhover()}),Mc(79,"async"),sa(),sa(),sa(),sa()}if(2&t){const t=ta(46),n=ta(70);let i,r,s,o;ws(1),na("active",Ic(2,53,e.spinnerActive$)),ws(2),na("ngIf",!1===Ic(4,55,e.spinnerActive$)),ws(2),ja("header-hidden",!1===Ic(6,57,e.header$)),ws(6),na("filters",Ic(13,59,e.data.filter$))("drawerExpanded",t.expanded)("technologyFilters",Ic(14,61,e.data.technologyFilterData$))("providerFilters",Ic(15,63,e.data.providerFilterData$)),ws(9),Ja(null==(i=Ic(21,65,e.data.filter$))?null:i.sex),ws(5),el("",null==(r=Ic(26,67,e.data.filter$))?null:r.ageRange[0],"-",null==(r=Ic(27,69,e.data.filter$))?null:r.ageRange[1],""),ws(6),el("",null==(s=Ic(32,71,e.data.filter$))?null:s.bmiRange[0],"-",null==(s=Ic(33,73,e.data.filter$))?null:s.bmiRange[1],""),ws(3),na("treeModel",Ic(35,75,e.ontologyTreeModel$))("termData",Ic(36,77,e.data.ontologyTermsFullData$))("occurenceData",Ic(37,79,e.data.ontologyTermOccurencesData$))("header",Ic(38,81,e.header$)),ws(5),na("treeModel",Ic(40,83,e.cellTypeTreeModel$))("termData",Ic(41,85,e.data.cellTypeTermsFullData$))("occurenceData",Ic(42,87,e.data.cellTypeTermOccurencesData$))("header",Ic(43,89,e.header$)),ws(8),ja("opened",e.viewerOpen),na("url",e.url),ws(3),na("matTooltip",t.expanded?"Exit Fullscreen":"Enter Fullscreen"),ws(2),Ja(t.expanded?"fullscreen_exit":"fullscreen"),ws(1),na("matTooltip",e.isLightTheme?"Enter Dark Mode":"Enter Light Mode"),ws(2),tl("",e.isLightTheme?"brightness_2":"brightness_5"," "),ws(5),na("listResults",Ic(61,91,e.listResultsState.listResults$))("aggregateData",Ic(62,93,e.data.aggregateData$))("resultLabel",e.selectionLabel)("highlighted",Ic(63,95,e.listResultsState.highlightedNodeId$))("header",Ic(64,97,e.header$)),ws(6),ja("header-hidden",!1===Ic(67,99,e.header$)),ws(2),ja("closed",!e.organListVisible)("expanded",n.expanded),ws(1),na("multiselect",!0)("occurenceData",null!==(o=Ic(71,101,e.data.ontologyTermOccurencesData$))&&void 0!==o?o:Oc(109,VJ))("organList",Ic(72,103,e.scene.referenceOrgans$))("selectedOrgans",Ic(73,105,e.scene.selectedReferenceOrgans$)),ws(5),ja("closed",!e.organListVisible),ws(1),na("ngIf",e.organListVisible),ws(1),na("ngIf",!n.expanded),ws(1),ja("expanded-stage",!e.organListVisible)("selector-expanded",n.expanded),na("scene",Ic(79,107,e.scene.scene$))("bounds",Oc(110,zJ))}},directives:[xZ,_h,RZ,AZ,XZ,uJ,hJ,fJ,ew,p_,aq,IJ,CZ,QW,VW,NJ],pipes:[Dh],styles:[".cdk-overlay-container{position:absolute;font-size:1.2rem}[_nghost-%COMP%]{display:block;position:relative}.ccf-app[_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100%;overflow:hidden;font-size:1rem;position:relative;text-align:left}.ccf-app[_ngcontent-%COMP%] ccf-header[_ngcontent-%COMP%]{z-index:99}.ccf-app[_ngcontent-%COMP%] ccf-header.hide[_ngcontent-%COMP%]{display:none}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%]{height:calc(100% - 5rem);width:100%;opacity:1;overflow:hidden;transform:scale(1)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container.header-hidden[_ngcontent-%COMP%]{height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%]{width:28.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%]{display:flex;padding-left:1.5rem;height:5rem;padding-right:1.5rem;align-items:center;justify-content:space-between}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%]{display:flex;justify-content:flex-start;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer[_ngcontent-%COMP%] .drawer-icons[_ngcontent-%COMP%] .drawer-icons-left[_ngcontent-%COMP%] .button[_ngcontent-%COMP%]{background:none;border:none;cursor:pointer;outline:none;border-radius:.25rem;padding:.65rem;transition:.6s}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%]{overflow:hidden;border-radius:.5rem;height:calc(100vh - 4rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer[_ngcontent-%COMP%]{top:0rem;display:flex;flex-direction:column;position:relative;transition:all .5s ease-in-out;height:5rem;justify-content:start}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.expanded[_ngcontent-%COMP%]{height:15rem;overflow-y:auto}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-drawer.closed[_ngcontent-%COMP%]{height:1.5rem;top:-5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .stage-content[_ngcontent-%COMP%]{transition:all .5s ease-in-out;border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .expanded-stage[_ngcontent-%COMP%]{height:calc(100% - 3rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content[_ngcontent-%COMP%] .selector-expanded[_ngcontent-%COMP%]{height:calc(100% - 16.5rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] ccf-drawer-content.header-hidden[_ngcontent-%COMP%]{height:calc(100vh - 1rem)}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%]{display:flex;justify-content:center;border-top-right-radius:.5rem;border-top-left-radius:.5rem;height:0}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%]{display:flex;justify-content:center;height:1.0625rem;width:3rem;align-self:center;border-radius:0 0 .25rem .25rem;cursor:pointer;transition:.6s;position:relative;top:.5rem;z-index:1}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .close-button-wrapper[_ngcontent-%COMP%] .close-button[_ngcontent-%COMP%] .mat-icon[_ngcontent-%COMP%]{position:relative;bottom:.2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem;height:100%}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .cell-type-selection[_ngcontent-%COMP%] .ccf-ontology-search{margin-top:2rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%]{height:5rem;display:flex;align-items:center}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%]{display:flex;justify-content:space-between;width:75%;margin-left:1.5rem}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%]{font-weight:300}.ccf-app[_ngcontent-%COMP%] ccf-drawer-container[_ngcontent-%COMP%] .left-drawer[_ngcontent-%COMP%] .filter-data[_ngcontent-%COMP%] .filter-text[_ngcontent-%COMP%] .filter-tag[_ngcontent-%COMP%] strong[_ngcontent-%COMP%]{font-weight:600!important}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view[_ngcontent-%COMP%]{position:fixed;left:0;top:0;bottom:0;right:425%;height:100%;transform:translate(-425%);width:calc(100% - 28.5rem);transition:transform .5s cubic-bezier(.82,.085,.395,.895)}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .portal-view.opened[_ngcontent-%COMP%]{transform:translate(0);transition:width 0s .5s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view[_ngcontent-%COMP%]{width:100vw}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%]:not(.ccf-drawer-opened) .portal-view.opened[_ngcontent-%COMP%]{transition:width 0s}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .shaded-toggle[_ngcontent-%COMP%]{box-shadow:-1px 0 4px #212121}.ccf-app[_ngcontent-%COMP%] .right-drawer[_ngcontent-%COMP%] .cff-drawer-inner-container{overflow:hidden}[_ngcontent-%COMP%]::-webkit-scrollbar{width:.5rem}"],changeDetection:0}),t})();function HJ(t,e){1&t&&oa(0,"ccf-root")}function $J(t){const e=t=>"string"==typeof t,n=t=>Array.isArray(t)&&t.every(e);if("string"==typeof t){const e=wZ.json(t);if(n(e))return e}else if(n(t))return t;throw new Error("Invalid data sources")}let GJ=(()=>{class t extends _Z{constructor(t,e){super(t,e,{initialDelay:10,initialConfig:Object.assign(Object.assign(Object.assign({},Pq.dbOptions),globalThis.dbOptions),Pq.customization),parse:{dataSources:$J,useRemoteApi:wZ.boolean,header:wZ.boolean,loginDisabled:wZ.boolean}})}}return t.\u0275fac=function(e){return new(e||t)(ea(cq),ea(tc))},t.\u0275cmp=Jt({type:t,selectors:[["ccf-root-wc"]],inputs:{dataSources:"dataSources",hubmapDataService:"hubmapDataService",hubmapDataUrl:"hubmapDataUrl",hubmapAssetUrl:"hubmapAssetUrl",hubmapToken:"hubmapToken",hubmapPortalUrl:"hubmapPortalUrl",useRemoteApi:"useRemoteApi",remoteApiEndpoint:"remoteApiEndpoint",theme:"theme",header:"header",homeUrl:"homeUrl",logoTooltip:"logoTooltip",loginDisabled:"loginDisabled"},features:[jo],decls:1,vars:1,consts:[[4,"ngIf"]],template:function(t,e){1&t&&Jo(0,HJ,1,0,"ccf-root",0),2&t&&na("ngIf",e.initialized)},directives:[_h,UJ],encapsulation:2,changeDetection:0}),t})(),WJ=(()=>{class t{constructor(t){this.injector=t}ngDoBootstrap(){const t=function(t,e){const n=function(t,e){return e.get(El).resolveComponentFactory(t).inputs}(t,e.injector),i=e.strategyFactory||new Bf(t,e.injector),r=function(t){const e={};return t.forEach(({propName:t,templateName:n})=>{e[function(t){return t.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}(n)]=t}),e}(n);class s extends zf{constructor(t){super(),this.injector=t}get ngElementStrategy(){if(!this._ngElementStrategy){const t=this._ngElementStrategy=i.create(this.injector||e.injector);n.forEach(({propName:e})=>{if(!this.hasOwnProperty(e))return;const n=this[e];delete this[e],t.setInputValue(e,n)})}return this._ngElementStrategy}attributeChangedCallback(t,e,n,i){this.ngElementStrategy.setInputValue(r[t],n)}connectedCallback(){let t=!1;this.ngElementStrategy.events&&(this.subscribeToEvents(),t=!0),this.ngElementStrategy.connect(this),t||this.subscribeToEvents()}disconnectedCallback(){this._ngElementStrategy&&this._ngElementStrategy.disconnect(),this.ngElementEventsSubscription&&(this.ngElementEventsSubscription.unsubscribe(),this.ngElementEventsSubscription=null)}subscribeToEvents(){this.ngElementEventsSubscription=this.ngElementStrategy.events.subscribe(t=>{const e=function(t,e,n){if("function"!=typeof CustomEvent){const i=t.createEvent("CustomEvent");return i.initCustomEvent(e,!1,!1,n),i}return new CustomEvent(e,{bubbles:!1,cancelable:!1,detail:n})}(this.ownerDocument,t.name,t.value);this.dispatchEvent(e)})}}return s.observedAttributes=Object.keys(r),n.forEach(({propName:t})=>{Object.defineProperty(s.prototype,t,{get(){return this.ngElementStrategy.getInputValue(t)},set(e){this.ngElementStrategy.setInputValue(t,e)},configurable:!0,enumerable:!0})}),s}(GJ,{injector:this.injector});customElements.define("ccf-eui",t)}}return t.\u0275fac=function(e){return new(e||t)(Ci(No))},t.\u0275mod=ie({type:t}),t.\u0275inj=St({providers:[{provide:Tq,useValue:"hubmap-theme-light"},{provide:gf,useExisting:Nf}],imports:[[ky,gd,gX,sZ,$Y,mK,f_,UY,tZ,mZ,zW,ZW,lq,rw,bZ,fq,G_]]}),t})();Pq.production&&function(){if(Ru)throw new Error("Cannot enable prod mode after platform setup.");Du=!1}(),pd().bootstrapModule(WJ).catch(t=>console.error(t))},91052:function(t){function e(t,e,n,i,r,s,o){try{var a=t[s](o),l=a.value}catch(c){return void n(c)}a.done?e(l):Promise.resolve(l).then(i,r)}t.exports=function(t){return function(){var n=this,i=arguments;return new Promise(function(r,s){var o=t.apply(n,i);function a(t){e(o,r,s,a,l,"next",t)}function l(t){e(o,r,s,a,l,"throw",t)}a(void 0)})}},t.exports.default=t.exports,t.exports.__esModule=!0},61948:function(t){t.exports=function(t){return t&&t.__esModule?t:{default:t}},t.exports.default=t.exports,t.exports.__esModule=!0},34321:function(t){function e(n){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?(t.exports=e=function(t){return typeof t},t.exports.default=t.exports,t.exports.__esModule=!0):(t.exports=e=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t.exports.default=t.exports,t.exports.__esModule=!0),e(n)}t.exports=e,t.exports.default=t.exports,t.exports.__esModule=!0},91741:function(t){function e(t){return Promise.resolve().then(function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e})}e.keys=function(){return[]},e.resolve=e,e.id=91741,t.exports=e},88509:function(t,e,n){"use strict";t.exports=n.p+"7693192ac33f7744a3ca.ts"},9521:function(){},49125:function(){},75307:function(){}},function(t){t(t.s=93640)}]); \ No newline at end of file